Index: YDN_1066_139D_NEW/output/bt_program23.icode
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/bt_program23.icode	(revision 2105)
+++ /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/bt_program23.icode	(working copy)
@@ -1,27161 +1,27201 @@
  00000000  0x00000042 branch  0x00000040 
- 00000001  0x00000049 call  0x000003fc 
+ 00000001  0x00000049 call  0x000003a6 
  00000002  0x0000004a fetch  0x00000001 , 0x000041de 
  00000003  0x0000004b store  0x00000001 , 0x00004ca9 
- 00000004  0x0000004c call  0x0000076d 
+ 00000004  0x0000004c call  0x0000070d 
  00000005  0x0000004d fetch  0x00000001 , 0x00004685 
  00000006  0x0000004e store  0x00000001 , 0x000046da 
  00000007  0x0000004f fetch  0x00000001 , 0x00004b31 
  00000008  0x00000050 store  0x00000001 , 0x00004b32 
  00000009  0x00000051 call  0x000043ca 
- 00000010  0x00000052 call  0x0000031b 
- 00000011  0x00000053 call  0x0000000e 
- 00000012  0x00000054 call  0x00000021 
- 00000013  0x00000055 branch  0x00000365 
- 00000014  0x00000058 setarg  0x000003d2 
- 00000015  0x00000059 store  0x00000002 , 0x00004d23 
- 00000016  0x0000005a setarg  0x000003ec 
- 00000017  0x0000005b store  0x00000002 , 0x000041ef 
- 00000018  0x0000005c setarg  0x000006ae 
- 00000019  0x0000005d store  0x00000002 , 0x000041f9 
- 00000020  0x0000005e setarg  0x00000417 
- 00000021  0x0000005f store  0x00000002 , 0x000041f1 
- 00000022  0x00000060 setarg  0x000002db 
- 00000023  0x00000061 store  0x00000002 , 0x000041ed 
- 00000024  0x00000062 setarg  0x00000458 
- 00000025  0x00000063 store  0x00000002 , 0x000041f5 
- 00000026  0x00000064 setarg  0x0000043d 
- 00000027  0x00000065 store  0x00000002 , 0x000041f3 
- 00000028  0x00000066 setarg  0x00000495 
- 00000029  0x00000067 store  0x00000002 , 0x000041eb 
- 00000030  0x00000068 setarg  0x0000049c 
- 00000031  0x00000069 store  0x00000002 , 0x000041fd 
- 00000032  0x0000006a rtn 
- 00000033  0x0000006d setarg  0x00000019 
- 00000034  0x0000006e store  0x00000002 , 0x00004d35 
- 00000035  0x0000006f ncall  0x00000029 , 0x0000002b 
- 00000036  0x00000070 call  0x0000031d 
- 00000037  0x00000071 call  0x0000035e 
- 00000038  0x00000073 fetch  0x00000001 , 0x0000471f 
- 00000039  0x00000074 store  0x00000001 , 0x0000471e 
- 00000040  0x00000075 rtn 
- 00000041  0x00000077 setarg  0x00000177 
- 00000042  0x00000078 store  0x00000002 , 0x00004d35 
- 00000043  0x00000079 rtn 
- 00000044  0x0000007b nop  0x00000001 
- 00000045  0x0000007c nop  0x00000001 
- 00000046  0x0000007d nop  0x00000001 
- 00000047  0x0000007e nop  0x00000001 
- 00000048  0x0000007f nop  0x00000001 
- 00000049  0x00000080 nop  0x00000001 
- 00000050  0x00000081 nop  0x00000001 
- 00000051  0x00000082 nop  0x00000001 
- 00000052  0x00000083 nop  0x00000001 
- 00000053  0x00000084 nop  0x00000001 
- 00000054  0x00000085 nop  0x00000001 
- 00000055  0x00000086 nop  0x00000001 
- 00000056  0x00000087 nop  0x00000001 
- 00000057  0x00000088 nop  0x00000001 
- 00000058  0x00000089 nop  0x00000001 
- 00000059  0x0000008a nop  0x00000001 
- 00000060  0x0000008b nop  0x00000001 
- 00000061  0x0000008c nop  0x00000001 
- 00000062  0x0000008d nop  0x00000001 
- 00000063  0x0000008e nop  0x00000001 
- 00000064  0x00000092 bbit1  0x00000008 , 0x00000059 
- 00000065  0x00000094 beq  0x00000001 , 0x00000075 
- 00000066  0x00000095 beq  0x00000002 , 0x0000007e 
- 00000067  0x00000096 beq  0x00000085 , 0x000007d9 
- 00000068  0x00000097 beq  0x00000089 , 0x000007aa 
- 00000069  0x00000098 beq  0x0000001b , 0x000006c7 
- 00000070  0x00000099 beq  0x00000026 , 0x000006c9 
- 00000071  0x0000009a beq  0x00000048 , 0x000006e5 
- 00000072  0x0000009b beq  0x0000004a , 0x000006ec 
- 00000073  0x0000009c beq  0x00000051 , 0x000006f5 
- 00000074  0x0000009d beq  0x00000059 , 0x000006e3 
- 00000075  0x0000009e beq  0x000000a7 , 0x000006fa 
- 00000076  0x0000009f beq  0x000000ad , 0x00000710 
- 00000077  0x000000a0 beq  0x000000cb , 0x000033e4 
- 00000078  0x000000a1 beq  0x000000e9 , 0x00000721 
- 00000079  0x000000a2 beq  0x000000a1 , 0x00000087 
- 00000080  0x000000a3 beq  0x000000b1 , 0x0000008c 
- 00000081  0x000000a4 beq  0x000000b2 , 0x0000009a 
- 00000082  0x000000a5 beq  0x000000c4 , 0x000002e8 
- 00000083  0x000000a6 beq  0x000000e3 , 0x0000058b 
- 00000084  0x000000a7 beq  0x000000e6 , 0x000005b6 
- 00000085  0x000000a8 beq  0x000000ea , 0x000005ec 
- 00000086  0x000000a9 beq  0x000000eb , 0x000005f2 
- 00000087  0x000000aa beq  0x000000ec , 0x000005ff 
- 00000088  0x000000ab branch  0x00002a8e 
- 00000089  0x000000ad beq  0x00000039 , 0x00000606 
- 00000090  0x000000ae beq  0x00000043 , 0x0000060e 
- 00000091  0x000000af beq  0x0000004a , 0x00000614 
- 00000092  0x000000b0 beq  0x00000057 , 0x00000617 
- 00000093  0x000000b1 beq  0x00000059 , 0x00000619 
- 00000094  0x000000b2 beq  0x00000063 , 0x0000061b 
- 00000095  0x000000b3 beq  0x00000066 , 0x00000645 
- 00000096  0x000000b4 beq  0x00000067 , 0x00000660 
- 00000097  0x000000b5 beq  0x0000006a , 0x00000699 
- 00000098  0x000000b6 beq  0x00000077 , 0x000006a4 
- 00000099  0x000000b7 beq  0x00000005 , 0x00000723 
- 00000100  0x000000b8 beq  0x00000080 , 0x00000725 
- 00000101  0x000000b9 beq  0x00000082 , 0x0000072f 
- 00000102  0x000000ba beq  0x00000088 , 0x00000731 
- 00000103  0x000000bb beq  0x0000008c , 0x000006b4 
- 00000104  0x000000bc beq  0x0000008d , 0x000006c0 
- 00000105  0x000000bd beq  0x000000fa , 0x00000755 
- 00000106  0x000000be branch  0x00002a8e 
- 00000107  0x000000c2 copy  0x0000003f , 0x00000011 
- 00000108  0x000000c3 fetcht  0x00000001 , 0x00004cad 
- 00000109  0x000000c4 setarg  0x00004cb4 
- 00000110  0x000000c5 iadd  0x00000002 , 0x00000005 
- 00000111  0x000000c6 copy  0x00000011 , 0x0000003f 
- 00000112  0x000000c7 istore  0x00000001 , 0x00000005 
- 00000113  0x000000c8 increase  0x00000001 , 0x00000002 
- 00000114  0x000000c9 and_into  0x00000007 , 0x00000002 
- 00000115  0x000000ca storet  0x00000001 , 0x00004cad 
- 00000116  0x000000cb rtn 
- 00000117  0x000000ce arg  0x000009ae , 0x00000005 
- 00000118  0x000000cf arg  0x0000000c , 0x00000039 
- 00000119  0x000000d0 call  0x00007ed4 
- 00000120  0x000000d1 call  0x000003e3 
- 00000121  0x000000d2 call  0x00006a03 
- 00000122  0x000000d3 call  0x00005cf6 
- 00000123  0x000000d4 ncall  0x00002c65 , 0x0000002b 
- 00000124  0x000000d5 call  0x00007ccd 
- 00000125  0x000000d6 branch  0x0000200c 
- 00000126  0x000000d9 call  0x000032e3 , 0x0000002b 
- 00000127  0x000000da call  0x0000756a 
- 00000128  0x000000db call  0x00002b41 , 0x0000002b 
- 00000129  0x000000dd call  0x000076dc 
- 00000130  0x000000de fetch  0x00000001 , 0x0000465a 
- 00000131  0x000000df branch  0x00002012 , 0x00000034 
- 00000132  0x000000e0 fetch  0x00000001 , 0x000045b1 
- 00000133  0x000000e1 branch  0x00000081 , 0x00000034 
- 00000134  0x000000e2 branch  0x00002012 
- 00000135  0x000000e5 setarg  0x00000a06 
- 00000136  0x000000e6 store  0x00000003 , 0x00004510 
- 00000137  0x000000e7 setarg  0x00001d87 
- 00000138  0x000000e8 store  0x00000002 , 0x00004513 
- 00000139  0x000000e9 branch  0x00002aa2 
- 00000140  0x000000ec rtnmark1  0x00000026 
- 00000141  0x000000ed fetch  0x00000001 , 0x00004b26 
- 00000142  0x000000ee nbranch  0x00007fef , 0x00000034 
- 00000143  0x000000ef fetch  0x00000001 , 0x00004b2b 
- 00000144  0x000000f0 nbranch  0x00007fef , 0x00000034 
- 00000145  0x000000f1 fetch  0x00000001 , 0x0000479c 
- 00000146  0x000000f2 branch  0x00007fef , 0x00000034 
- 00000147  0x000000f3 fetch  0x00000001 , 0x000047c4 
- 00000148  0x000000f4 beq  0x00000001 , 0x00007fef 
- 00000149  0x000000f5 fetch  0x00000002 , 0x00004248 
- 00000150  0x000000f6 nbranch  0x00007fef , 0x00000034 
- 00000151  0x000000f7 fetch  0x00000001 , 0x00004806 
- 00000152  0x000000f8 nbranch  0x00007fef , 0x00000034 
- 00000153  0x000000f9 branch  0x00007ff1 
- 00000154  0x000000fd rtnmark0  0x00000026 
- 00000155  0x000000fe fetch  0x00000001 , 0x00004d32 
- 00000156  0x000000ff beq  0x00000001 , 0x000000ad 
- 00000157  0x00000101 call  0x00000176 
- 00000158  0x00000102 nbranch  0x000000c8 , 0x00000028 
- 00000159  0x00000103 call  0x0000015d 
- 00000160  0x00000105 call  0x00000199 
- 00000161  0x00000106 fetch  0x00000001 , 0x00004c02 
- 00000162  0x00000107 rtnne  0x000000ff 
- 00000163  0x00000108 call  0x0000077e 
- 00000164  0x00000109 fetch  0x00000001 , 0x00004b26 
- 00000165  0x0000010a beq  0x00000001 , 0x000003d5 
- 00000166  0x0000010c call  0x000000d6 
- 00000167  0x0000010d nrtn  0x00000028 
- 00000168  0x0000010e call  0x000002e2 
- 00000169  0x0000010f setarg  0x0000ec54 
- 00000170  0x00000110 branch  0x00002b93 
- 00000171  0x00000113 jam  0x00000001 , 0x00004b6b 
- 00000172  0x00000114 rtn 
- 00000173  0x00000117 call  0x000002ad 
- 00000174  0x00000118 nrtn  0x00000028 
- 00000175  0x00000119 call  0x000000c2 
- 00000176  0x0000011a fetch  0x00000002 , 0x00004d33 
- 00000177  0x0000011b increase  0x00000001 , 0x0000003f 
- 00000178  0x0000011c store  0x00000002 , 0x00004d33 
- 00000179  0x0000011d fetcht  0x00000002 , 0x00004d35 
- 00000180  0x0000011e isub  0x00000002 , 0x0000003e 
- 00000181  0x0000011f call  0x000000b7 , 0x00000005 
- 00000182  0x00000120 branch  0x0000009d 
- 00000183  0x00000122 jam  0x00000000 , 0x00004d32 
- 00000184  0x00000123 setarg  0x00000000 
- 00000185  0x00000124 store  0x00000002 , 0x00004d33 
- 00000186  0x00000125 setarg  0x00000019 
- 00000187  0x00000126 store  0x00000002 , 0x00004d35 
- 00000188  0x00000128 jam  0x00000000 , 0x00004c2d 
- 00000189  0x00000129 fetch  0x00000001 , 0x00004c18 
- 00000190  0x0000012b store  0x00000001 , 0x00004c17 
- 00000191  0x0000012c rtn 
- 00000192  0x0000012e fetch  0x00000001 , 0x00004c19 
- 00000193  0x0000012f branch  0x000000be 
- 00000194  0x00000131 fetch  0x00000001 , 0x00004c2d 
- 00000195  0x00000132 increase  0x00000001 , 0x0000003f 
- 00000196  0x00000133 store  0x00000001 , 0x00004c2d 
- 00000197  0x00000134 beq  0x00000004 , 0x000000c0 
- 00000198  0x00000135 beq  0x00000005 , 0x000000bc 
- 00000199  0x00000136 rtn 
- 00000200  0x00000139 fetch  0x00000001 , 0x00004c1e 
- 00000201  0x0000013a call  0x00000112 , 0x00000034 
- 00000202  0x0000013b fetch  0x00000001 , 0x00004b2b 
- 00000203  0x0000013c nrtn  0x00000034 
- 00000204  0x0000013d fetch  0x00000001 , 0x00004b6b 
- 00000205  0x0000013e nrtn  0x00000034 
- 00000206  0x0000013f fetch  0x00000001 , 0x00004b26 
- 00000207  0x00000140 rtneq  0x00000001 
- 00000208  0x00000142 call  0x000000d6 
- 00000209  0x00000143 nrtn  0x00000028 
- 00000210  0x00000144 fetch  0x00000003 , 0x00004c21 
- 00000211  0x00000145 call  0x00007f49 
- 00000212  0x00000146 storet  0x00000004 , 0x0000415b 
- 00000213  0x00000147 branch  0x00002b2a 
- 00000214  0x0000014a enable  0x00000028 
- 00000215  0x0000014b call  0x00002afa 
- 00000216  0x0000014c fetch  0x00000003 , 0x0000416f 
- 00000217  0x0000014d branch  0x00007fe9 , 0x00000034 
- 00000218  0x0000014e fetch  0x00000001 , 0x00004091 
- 00000219  0x0000014f branch  0x00007fe9 , 0x00000034 
- 00000220  0x00000150 fetch  0x00000001 , 0x00004d32 
- 00000221  0x00000151 beq  0x00000001 , 0x00007fe9 
- 00000222  0x00000153 call  0x000002e5 
- 00000223  0x00000154 call  0x000002e2 
- 00000224  0x00000156 call  0x000000f0 
- 00000225  0x00000157 call  0x00000367 
- 00000226  0x00000158 hfetch  0x00000004 , 0x00008070 
- 00000227  0x00000159 hfetcht  0x00000004 , 0x00008078 
- 00000228  0x0000015a ior  0x00000002 , 0x00000002 
- 00000229  0x0000015b invert  0x00000002 , 0x00000002 
- 00000230  0x0000015c hstoret  0x00000004 , 0x0000807c 
- 00000231  0x0000015e hfetch  0x00000001 , 0x0000807d 
- 00000232  0x0000015f set0  0x00000002 , 0x0000003f 
- 00000233  0x00000160 hstore  0x00000001 , 0x0000807d 
- 00000234  0x00000161 hfetch  0x00000001 , 0x0000807e 
- 00000235  0x00000162 set0  0x00000006 , 0x0000003f 
- 00000236  0x00000163 hstore  0x00000001 , 0x0000807e 
- 00000237  0x00000172 fetcht  0x00000001 , 0x00004b25 
- 00000238  0x00000173 set0  0x00000007 , 0x00000002 
- 00000239  0x00000174 branch  0x00006806 
- 00000240  0x00000178 call  0x00003ee0 
- 00000241  0x00000179 arg  0x00000019 , 0x00000002 
- 00000242  0x0000017a fetch  0x00000004 , 0x000046d3 
- 00000243  0x0000017b isolate1  0x00000012 , 0x0000003f 
- 00000244  0x0000017c call  0x00003ede , 0x00000001 
- 00000245  0x0000017d call  0x0000680e 
- 00000246  0x0000017e call  0x000063ee 
- 00000247  0x00000182 fetcht  0x00000001 , 0x000046e2 
- 00000248  0x00000183 call  0x000067dd 
- 00000249  0x00000184 fetcht  0x00000001 , 0x000046e3 
- 00000250  0x00000185 call  0x000067dd 
- 00000251  0x00000186 fetcht  0x00000001 , 0x000046e4 
- 00000252  0x00000187 call  0x000067dd 
- 00000253  0x00000189 fetcht  0x00000001 , 0x000046e5 
- 00000254  0x0000018a call  0x000067dd 
- 00000255  0x0000018b fetcht  0x00000001 , 0x000046e6 
- 00000256  0x0000018c call  0x000067dd 
- 00000257  0x0000018d fetcht  0x00000001 , 0x000046e7 
- 00000258  0x0000018e call  0x000067dd 
- 00000259  0x0000018f fetcht  0x00000001 , 0x000046ed 
- 00000260  0x00000190 call  0x000067dd 
- 00000261  0x00000191 call  0x000067dd 
- 00000262  0x00000192 fetcht  0x00000001 , 0x000046ec 
- 00000263  0x00000193 call  0x000067dd 
- 00000264  0x00000195 fetcht  0x00000001 , 0x000046e8 
- 00000265  0x00000196 call  0x000067dd 
- 00000266  0x00000197 fetcht  0x00000001 , 0x000046e9 
- 00000267  0x00000198 call  0x000067dd 
- 00000268  0x00000199 fetcht  0x00000001 , 0x000046ea 
- 00000269  0x0000019a call  0x000067dd 
- 00000270  0x0000019b fetcht  0x00000001 , 0x000046eb 
- 00000271  0x0000019c call  0x000067dd 
- 00000272  0x0000019d fetcht  0x00000001 , 0x000046f3 
- 00000273  0x0000019e branch  0x000067e1 
- 00000274  0x000001a0 jam  0x00000001 , 0x00004c1e 
- 00000275  0x000001a1 jam  0x00000000 , 0x00004d27 
- 00000276  0x000001a2 call  0x00000125 
- 00000277  0x000001a3 store  0x00000001 , 0x00004b8e 
- 00000278  0x000001a4 setarg  0x00000000 
- 00000279  0x000001a5 store  0x00000007 , 0x00004b8f 
- 00000280  0x000001a6 fetch  0x00000004 , 0x00004c29 
- 00000281  0x000001a7 store  0x00000004 , 0x00004b96 
- 00000282  0x000001a8 jam  0x0000000c , 0x00004bf2 
- 00000283  0x000001a9 fetch  0x00000001 , 0x00004bf3 
- 00000284  0x000001aa set1  0x00000003 , 0x0000003f 
- 00000285  0x000001ab store  0x00000001 , 0x00004bf3 
- 00000286  0x000001ac call  0x00000179 
- 00000287  0x000001ad branch  0x000000a0 
- 00000288  0x000001b0 fetch  0x00000004 , 0x000040a0 
- 00000289  0x000001b1 store  0x00000004 , 0x00004c29 
- 00000290  0x000001b2 rtn 
- 00000291  0x000001b5 jam  0x00000001 , 0x00004d28 
- 00000292  0x000001b6 jam  0x00000000 , 0x00004d2a 
- 00000293  0x000001b8 fetch  0x00000001 , 0x00004bf3 
- 00000294  0x000001b9 and_into  0x00000007 , 0x0000003f 
- 00000295  0x000001ba store  0x00000001 , 0x00004bf3 
- 00000296  0x000001bb rtn 
- 00000297  0x000001be fetch  0x00000001 , 0x00004bf3 
- 00000298  0x000001bf set1  0x00000004 , 0x0000003f 
- 00000299  0x000001c0 store  0x00000001 , 0x00004bf3 
- 00000300  0x000001c2 store  0x00000001 , 0x00004bae 
- 00000301  0x000001c3 rtn 
- 00000302  0x000001c5 fetch  0x00000001 , 0x00004bf3 
- 00000303  0x000001c6 set0  0x00000004 , 0x0000003f 
- 00000304  0x000001c7 store  0x00000001 , 0x00004bf3 
- 00000305  0x000001c8 rtn 
- 00000306  0x000001cb call  0x00000774 
- 00000307  0x000001cc fetch  0x00000001 , 0x00004d29 
- 00000308  0x000001cd beq  0x00000001 , 0x00000137 
- 00000309  0x000001ce beq  0x00000002 , 0x0000013b 
- 00000310  0x000001cf rtn 
- 00000311  0x000001d1 jam  0x00000002 , 0x00004d2a 
- 00000312  0x000001d3 jam  0x00000000 , 0x00004d26 
- 00000313  0x000001d4 jam  0x00000000 , 0x00004d28 
- 00000314  0x000001d5 branch  0x00000125 
- 00000315  0x000001d8 jam  0x00000000 , 0x00004d27 
- 00000316  0x000001d9 branch  0x00000138 
- 00000317  0x000001dd fetch  0x00000002 , 0x00004bf8 
- 00000318  0x000001de increase  0x00000001 , 0x0000003f 
- 00000319  0x000001df store  0x00000002 , 0x00004bf8 
- 00000320  0x000001e0 bbit1  0x0000000a , 0x000001dc 
+ 00000010  0x00000052 call  0x000002c5 
+ 00000011  0x00000053 call  0x0000079a 
+ 00000012  0x00000054 call  0x0000000f 
+ 00000013  0x00000055 call  0x00000022 
+ 00000014  0x00000057 branch  0x0000030f 
+ 00000015  0x0000005a setarg  0x0000037c 
+ 00000016  0x0000005b store  0x00000002 , 0x00004d23 
+ 00000017  0x0000005c setarg  0x00000396 
+ 00000018  0x0000005d store  0x00000002 , 0x000041ef 
+ 00000019  0x0000005e setarg  0x0000064e 
+ 00000020  0x0000005f store  0x00000002 , 0x000041f9 
+ 00000021  0x00000060 setarg  0x000003c1 
+ 00000022  0x00000061 store  0x00000002 , 0x000041f1 
+ 00000023  0x00000062 setarg  0x00000298 
+ 00000024  0x00000063 store  0x00000002 , 0x000041ed 
+ 00000025  0x00000064 setarg  0x00000402 
+ 00000026  0x00000065 store  0x00000002 , 0x000041f5 
+ 00000027  0x00000066 setarg  0x000003e7 
+ 00000028  0x00000067 store  0x00000002 , 0x000041f3 
+ 00000029  0x00000068 setarg  0x0000043f 
+ 00000030  0x00000069 store  0x00000002 , 0x000041eb 
+ 00000031  0x0000006a setarg  0x00000446 
+ 00000032  0x0000006b store  0x00000002 , 0x000041fd 
+ 00000033  0x0000006c rtn 
+ 00000034  0x0000006f setarg  0x00000019 
+ 00000035  0x00000070 store  0x00000002 , 0x00004d35 
+ 00000036  0x00000071 ncall  0x0000002a , 0x0000002b 
+ 00000037  0x00000072 call  0x000002c7 
+ 00000038  0x00000073 call  0x00000308 
+ 00000039  0x00000075 fetch  0x00000001 , 0x0000471f 
+ 00000040  0x00000076 store  0x00000001 , 0x0000471e 
+ 00000041  0x00000077 rtn 
+ 00000042  0x00000079 setarg  0x00000177 
+ 00000043  0x0000007a store  0x00000002 , 0x00004d35 
+ 00000044  0x0000007b rtn 
+ 00000045  0x0000007d nop  0x00000001 
+ 00000046  0x0000007e nop  0x00000001 
+ 00000047  0x0000007f nop  0x00000001 
+ 00000048  0x00000080 nop  0x00000001 
+ 00000049  0x00000081 nop  0x00000001 
+ 00000050  0x00000082 nop  0x00000001 
+ 00000051  0x00000083 nop  0x00000001 
+ 00000052  0x00000084 nop  0x00000001 
+ 00000053  0x00000085 nop  0x00000001 
+ 00000054  0x00000086 nop  0x00000001 
+ 00000055  0x00000087 nop  0x00000001 
+ 00000056  0x00000088 nop  0x00000001 
+ 00000057  0x00000089 nop  0x00000001 
+ 00000058  0x0000008a nop  0x00000001 
+ 00000059  0x0000008b nop  0x00000001 
+ 00000060  0x0000008c nop  0x00000001 
+ 00000061  0x0000008d nop  0x00000001 
+ 00000062  0x0000008e nop  0x00000001 
+ 00000063  0x0000008f nop  0x00000001 
+ 00000064  0x00000094 bbit1  0x00000008 , 0x00000059 
+ 00000065  0x00000096 beq  0x00000001 , 0x00000075 
+ 00000066  0x00000097 beq  0x00000002 , 0x0000007e 
+ 00000067  0x00000098 beq  0x00000085 , 0x00000779 
+ 00000068  0x00000099 beq  0x00000089 , 0x0000074a 
+ 00000069  0x0000009a beq  0x0000001b , 0x00000667 
+ 00000070  0x0000009b beq  0x00000026 , 0x00000669 
+ 00000071  0x0000009c beq  0x00000048 , 0x00000685 
+ 00000072  0x0000009d beq  0x0000004a , 0x0000068c 
+ 00000073  0x0000009e beq  0x00000051 , 0x00000695 
+ 00000074  0x0000009f beq  0x00000059 , 0x00000683 
+ 00000075  0x000000a0 beq  0x000000a7 , 0x0000069a 
+ 00000076  0x000000a1 beq  0x000000ad , 0x000006b0 
+ 00000077  0x000000a2 beq  0x000000cb , 0x000033e4 
+ 00000078  0x000000a3 beq  0x000000e9 , 0x000006c1 
+ 00000079  0x000000a4 beq  0x000000a1 , 0x00000087 
+ 00000080  0x000000a5 beq  0x000000b1 , 0x0000008c 
+ 00000081  0x000000a6 beq  0x000000b2 , 0x0000009a 
+ 00000082  0x000000a7 beq  0x000000c4 , 0x000002a5 
+ 00000083  0x000000a8 beq  0x000000e3 , 0x00000529 
+ 00000084  0x000000a9 beq  0x000000e6 , 0x00000554 
+ 00000085  0x000000aa beq  0x000000ea , 0x0000058c 
+ 00000086  0x000000ab beq  0x000000eb , 0x00000592 
+ 00000087  0x000000ac beq  0x000000ec , 0x0000059f 
+ 00000088  0x000000ad branch  0x00002a8e 
+ 00000089  0x000000af beq  0x00000039 , 0x000005a6 
+ 00000090  0x000000b0 beq  0x00000043 , 0x000005ae 
+ 00000091  0x000000b1 beq  0x0000004a , 0x000005b4 
+ 00000092  0x000000b2 beq  0x00000057 , 0x000005b7 
+ 00000093  0x000000b3 beq  0x00000059 , 0x000005b9 
+ 00000094  0x000000b4 beq  0x00000063 , 0x000005bb 
+ 00000095  0x000000b5 beq  0x00000066 , 0x000005e5 
+ 00000096  0x000000b6 beq  0x00000067 , 0x00000600 
+ 00000097  0x000000b7 beq  0x0000006a , 0x00000639 
+ 00000098  0x000000b8 beq  0x00000077 , 0x00000644 
+ 00000099  0x000000b9 beq  0x00000005 , 0x000006c3 
+ 00000100  0x000000ba beq  0x00000080 , 0x000006c5 
+ 00000101  0x000000bb beq  0x00000082 , 0x000006cf 
+ 00000102  0x000000bc beq  0x00000088 , 0x000006d1 
+ 00000103  0x000000bd beq  0x0000008c , 0x00000654 
+ 00000104  0x000000be beq  0x0000008d , 0x00000660 
+ 00000105  0x000000bf beq  0x000000fa , 0x000006f5 
+ 00000106  0x000000c0 branch  0x00002a8e 
+ 00000107  0x000000c4 copy  0x0000003f , 0x00000011 
+ 00000108  0x000000c5 fetcht  0x00000001 , 0x00004cad 
+ 00000109  0x000000c6 setarg  0x00004cb4 
+ 00000110  0x000000c7 iadd  0x00000002 , 0x00000005 
+ 00000111  0x000000c8 copy  0x00000011 , 0x0000003f 
+ 00000112  0x000000c9 istore  0x00000001 , 0x00000005 
+ 00000113  0x000000ca increase  0x00000001 , 0x00000002 
+ 00000114  0x000000cb and_into  0x00000007 , 0x00000002 
+ 00000115  0x000000cc storet  0x00000001 , 0x00004cad 
+ 00000116  0x000000cd rtn 
+ 00000117  0x000000d0 arg  0x000009ae , 0x00000005 
+ 00000118  0x000000d1 arg  0x0000000c , 0x00000039 
+ 00000119  0x000000d2 call  0x00007ed4 
+ 00000120  0x000000d3 call  0x0000038d 
+ 00000121  0x000000d4 call  0x00006a03 
+ 00000122  0x000000d5 call  0x00005cf6 
+ 00000123  0x000000d6 ncall  0x00002c65 , 0x0000002b 
+ 00000124  0x000000d7 call  0x00007ccd 
+ 00000125  0x000000d8 branch  0x0000200c 
+ 00000126  0x000000db call  0x000032e3 , 0x0000002b 
+ 00000127  0x000000dc call  0x0000756a 
+ 00000128  0x000000dd call  0x00002b41 , 0x0000002b 
+ 00000129  0x000000df call  0x000076dc 
+ 00000130  0x000000e0 fetch  0x00000001 , 0x0000465a 
+ 00000131  0x000000e1 branch  0x00002012 , 0x00000034 
+ 00000132  0x000000e2 fetch  0x00000001 , 0x000045b1 
+ 00000133  0x000000e3 branch  0x00000081 , 0x00000034 
+ 00000134  0x000000e4 branch  0x00002012 
+ 00000135  0x000000e7 setarg  0x00000a06 
+ 00000136  0x000000e8 store  0x00000003 , 0x00004510 
+ 00000137  0x000000e9 setarg  0x00001d87 
+ 00000138  0x000000ea store  0x00000002 , 0x00004513 
+ 00000139  0x000000eb branch  0x00002aa2 
+ 00000140  0x000000ee rtnmark1  0x00000026 
+ 00000141  0x000000ef fetch  0x00000001 , 0x00004b26 
+ 00000142  0x000000f0 nbranch  0x00007fef , 0x00000034 
+ 00000143  0x000000f1 fetch  0x00000001 , 0x00004b2b 
+ 00000144  0x000000f2 nbranch  0x00007fef , 0x00000034 
+ 00000145  0x000000f3 fetch  0x00000001 , 0x0000479c 
+ 00000146  0x000000f4 branch  0x00007fef , 0x00000034 
+ 00000147  0x000000f5 fetch  0x00000001 , 0x000047c4 
+ 00000148  0x000000f6 beq  0x00000001 , 0x00007fef 
+ 00000149  0x000000f7 fetch  0x00000002 , 0x00004248 
+ 00000150  0x000000f8 nbranch  0x00007fef , 0x00000034 
+ 00000151  0x000000f9 fetch  0x00000001 , 0x00004806 
+ 00000152  0x000000fa nbranch  0x00007fef , 0x00000034 
+ 00000153  0x000000fb branch  0x00007ff1 
+ 00000154  0x000000ff rtnmark0  0x00000026 
+ 00000155  0x00000100 fetch  0x00000001 , 0x00004d32 
+ 00000156  0x00000101 beq  0x00000001 , 0x000000ad 
+ 00000157  0x00000103 call  0x00000151 
+ 00000158  0x00000104 nbranch  0x000000af , 0x00000028 
+ 00000159  0x00000105 call  0x0000012c 
+ 00000160  0x00000107 call  0x00000174 
+ 00000161  0x00000108 fetch  0x00000001 , 0x00004c02 
+ 00000162  0x00000109 rtnne  0x000000ff 
+ 00000163  0x0000010a call  0x0000071e 
+ 00000164  0x0000010b fetch  0x00000001 , 0x00004b26 
+ 00000165  0x0000010c beq  0x00000001 , 0x0000037f 
+ 00000166  0x0000010e call  0x000000bd 
+ 00000167  0x0000010f nrtn  0x00000028 
+ 00000168  0x00000110 call  0x0000029f 
+ 00000169  0x00000111 setarg  0x0000ec54 
+ 00000170  0x00000112 branch  0x00002b93 
+ 00000171  0x00000115 jam  0x00000001 , 0x00004b6b 
+ 00000172  0x00000116 rtn 
+ 00000173  0x00000119 jam  0x00000001 , 0x000011c7 
+ 00000174  0x0000011a branch  0x0000077b 
+ 00000175  0x0000011d fetch  0x00000001 , 0x00004c1e 
+ 00000176  0x0000011e call  0x000000e1 , 0x00000034 
+ 00000177  0x0000011f fetch  0x00000001 , 0x00004b2b 
+ 00000178  0x00000120 nrtn  0x00000034 
+ 00000179  0x00000121 fetch  0x00000001 , 0x00004b6b 
+ 00000180  0x00000122 nrtn  0x00000034 
+ 00000181  0x00000123 fetch  0x00000001 , 0x00004b26 
+ 00000182  0x00000124 rtneq  0x00000001 
+ 00000183  0x00000126 call  0x000000bd 
+ 00000184  0x00000127 nrtn  0x00000028 
+ 00000185  0x00000128 fetch  0x00000003 , 0x00004c21 
+ 00000186  0x00000129 call  0x00007f49 
+ 00000187  0x0000012a storet  0x00000004 , 0x0000415b 
+ 00000188  0x0000012b branch  0x00002b2a 
+ 00000189  0x0000012e enable  0x00000028 
+ 00000190  0x0000012f call  0x00002afa 
+ 00000191  0x00000130 fetch  0x00000003 , 0x0000416f 
+ 00000192  0x00000131 branch  0x00007fe9 , 0x00000034 
+ 00000193  0x00000132 fetch  0x00000001 , 0x00004091 
+ 00000194  0x00000133 branch  0x00007fe9 , 0x00000034 
+ 00000195  0x00000134 fetch  0x00000001 , 0x00004d32 
+ 00000196  0x00000135 beq  0x00000001 , 0x00007fe9 
+ 00000197  0x00000137 call  0x000002a2 
+ 00000198  0x00000138 call  0x0000029f 
+ 00000199  0x0000013a call  0x000000d7 
+ 00000200  0x0000013b call  0x00000311 
+ 00000201  0x0000013c hfetch  0x00000004 , 0x00008070 
+ 00000202  0x0000013d hfetcht  0x00000004 , 0x00008078 
+ 00000203  0x0000013e ior  0x00000002 , 0x00000002 
+ 00000204  0x0000013f invert  0x00000002 , 0x00000002 
+ 00000205  0x00000140 hstoret  0x00000004 , 0x0000807c 
+ 00000206  0x00000142 hfetch  0x00000001 , 0x0000807d 
+ 00000207  0x00000143 set0  0x00000002 , 0x0000003f 
+ 00000208  0x00000144 hstore  0x00000001 , 0x0000807d 
+ 00000209  0x00000145 hfetch  0x00000001 , 0x0000807e 
+ 00000210  0x00000146 set0  0x00000006 , 0x0000003f 
+ 00000211  0x00000147 hstore  0x00000001 , 0x0000807e 
+ 00000212  0x0000014c fetcht  0x00000001 , 0x00004b25 
+ 00000213  0x0000014d set0  0x00000007 , 0x00000002 
+ 00000214  0x0000014e branch  0x00006806 
+ 00000215  0x00000152 call  0x00003ee0 
+ 00000216  0x00000153 arg  0x00000019 , 0x00000002 
+ 00000217  0x00000154 fetch  0x00000004 , 0x000046d3 
+ 00000218  0x00000155 isolate1  0x00000012 , 0x0000003f 
+ 00000219  0x00000156 call  0x00003ede , 0x00000001 
+ 00000220  0x00000157 call  0x0000680e 
+ 00000221  0x00000158 call  0x000063ee 
+ 00000222  0x0000015a fetcht  0x00000001 , 0x000046ec 
+ 00000223  0x0000015b call  0x000067dd 
+ 00000224  0x0000015c branch  0x00003ec6 
+ 00000225  0x0000015e jam  0x00000001 , 0x00004c1e 
+ 00000226  0x0000015f jam  0x00000000 , 0x00004d27 
+ 00000227  0x00000160 call  0x000000f4 
+ 00000228  0x00000161 store  0x00000001 , 0x00004b8e 
+ 00000229  0x00000162 setarg  0x00000000 
+ 00000230  0x00000163 store  0x00000007 , 0x00004b8f 
+ 00000231  0x00000164 fetch  0x00000004 , 0x00004c29 
+ 00000232  0x00000165 store  0x00000004 , 0x00004b96 
+ 00000233  0x00000166 jam  0x0000000c , 0x00004bf2 
+ 00000234  0x00000167 fetch  0x00000001 , 0x00004bf3 
+ 00000235  0x00000168 set1  0x00000003 , 0x0000003f 
+ 00000236  0x00000169 store  0x00000001 , 0x00004bf3 
+ 00000237  0x0000016a call  0x00000154 
+ 00000238  0x0000016b branch  0x000000a0 
+ 00000239  0x0000016e fetch  0x00000004 , 0x000040a0 
+ 00000240  0x0000016f store  0x00000004 , 0x00004c29 
+ 00000241  0x00000170 rtn 
+ 00000242  0x00000173 jam  0x00000001 , 0x00004d28 
+ 00000243  0x00000174 jam  0x00000000 , 0x00004d2a 
+ 00000244  0x00000176 fetch  0x00000001 , 0x00004bf3 
+ 00000245  0x00000177 and_into  0x00000007 , 0x0000003f 
+ 00000246  0x00000178 store  0x00000001 , 0x00004bf3 
+ 00000247  0x00000179 rtn 
+ 00000248  0x0000017c fetch  0x00000001 , 0x00004bf3 
+ 00000249  0x0000017d set1  0x00000004 , 0x0000003f 
+ 00000250  0x0000017e store  0x00000001 , 0x00004bf3 
+ 00000251  0x00000180 store  0x00000001 , 0x00004bae 
+ 00000252  0x00000181 rtn 
+ 00000253  0x00000183 fetch  0x00000001 , 0x00004bf3 
+ 00000254  0x00000184 set0  0x00000004 , 0x0000003f 
+ 00000255  0x00000185 store  0x00000001 , 0x00004bf3 
+ 00000256  0x00000186 rtn 
+ 00000257  0x00000189 call  0x00000714 
+ 00000258  0x0000018a fetch  0x00000001 , 0x00004d29 
+ 00000259  0x0000018b beq  0x00000001 , 0x00000106 
+ 00000260  0x0000018c beq  0x00000002 , 0x0000010a 
+ 00000261  0x0000018d rtn 
+ 00000262  0x0000018f jam  0x00000002 , 0x00004d2a 
+ 00000263  0x00000191 jam  0x00000000 , 0x00004d26 
+ 00000264  0x00000192 jam  0x00000000 , 0x00004d28 
+ 00000265  0x00000193 branch  0x000000f4 
+ 00000266  0x00000196 jam  0x00000000 , 0x00004d27 
+ 00000267  0x00000197 branch  0x00000107 
+ 00000268  0x0000019b fetch  0x00000002 , 0x00004bf8 
+ 00000269  0x0000019c increase  0x00000001 , 0x0000003f 
+ 00000270  0x0000019d store  0x00000002 , 0x00004bf8 
+ 00000271  0x0000019e bbit1  0x0000000a , 0x000001b3 
+ 00000272  0x0000019f fetch  0x00000001 , 0x00004d27 
+ 00000273  0x000001a0 beq  0x00000001 , 0x00000115 
+ 00000274  0x000001a1 jam  0x00000001 , 0x00004d27 
+ 00000275  0x000001a3 fetch  0x00000001 , 0x00004d27 
+ 00000276  0x000001a4 bne  0x00000001 , 0x000000f4 
+ 00000277  0x000001a6 fetch  0x00000001 , 0x00004d25 
+ 00000278  0x000001a7 increase  0x00000001 , 0x0000003f 
+ 00000279  0x000001a8 store  0x00000001 , 0x00004d25 
+ 00000280  0x000001a9 beq  0x00000004 , 0x0000011c 
+ 00000281  0x000001aa call  0x00000144 
+ 00000282  0x000001ab jam  0x00000002 , 0x00004c37 
+ 00000283  0x000001ac branch  0x00000174 
+ 00000284  0x000001af call  0x00000714 
+ 00000285  0x000001b0 jam  0x00000000 , 0x00004d25 
+ 00000286  0x000001b1 branch  0x000000f4 
+ 00000287  0x000001b4 jam  0x00000002 , 0x00004d2a 
+ 00000288  0x000001b6 jam  0x00000001 , 0x00004d28 
+ 00000289  0x000001b7 jam  0x00000000 , 0x00004d27 
+ 00000290  0x000001b8 branch  0x000000f4 
+ 00000291  0x000001bb fetch  0x00000001 , 0x00004d29 
+ 00000292  0x000001bc beq  0x00000003 , 0x00000120 
+ 00000293  0x000001bd fetch  0x00000001 , 0x00004bf3 
+ 00000294  0x000001be isolate0  0x00000004 , 0x0000003f 
+ 00000295  0x000001bf branch  0x000000f2 , 0x00000001 
+ 00000296  0x000001c0 fetch  0x00000001 , 0x00004d29 
+ 00000297  0x000001c1 beq  0x00000001 , 0x0000011f 
+ 00000298  0x000001c2 beq  0x00000002 , 0x00000120 
+ 00000299  0x000001c3 rtn 
+ 00000300  0x000001c6 fetch  0x00000001 , 0x00004c02 
+ 00000301  0x000001c7 rtnne  0x000000ff 
+ 00000302  0x000001c8 call  0x00000131 
+ 00000303  0x000001c9 ncall  0x00000139 , 0x0000002c 
+ 00000304  0x000001ca rtn 
+ 00000305  0x000001cd disable  0x0000002c 
+ 00000306  0x000001ce fetch  0x00000001 , 0x00004d28 
+ 00000307  0x000001cf rtnne  0x00000001 
+ 00000308  0x000001d0 fetch  0x00000001 , 0x00004d2a 
+ 00000309  0x000001d1 rtnne  0x00000000 
+ 00000310  0x000001d2 jam  0x00000001 , 0x00004d29 
+ 00000311  0x000001d3 jam  0x00000004 , 0x00004c37 
+ 00000312  0x000001d4 branch  0x00007feb 
+ 00000313  0x000001d7 fetch  0x00000001 , 0x00004d2a 
+ 00000314  0x000001d8 branch  0x00000140 , 0x00000034 
+ 00000315  0x000001d9 increase  0xffffffff , 0x0000003f 
+ 00000316  0x000001da store  0x00000001 , 0x00004d2a 
+ 00000317  0x000001db jam  0x00000002 , 0x00004d29 
+ 00000318  0x000001dc jam  0x00000004 , 0x00004c37 
+ 00000319  0x000001dd branch  0x00000144 
+ 00000320  0x000001e0 jam  0x00000003 , 0x00004d29 
  00000321  0x000001e1 fetch  0x00000001 , 0x00004d27 
- 00000322  0x000001e2 beq  0x00000001 , 0x00000146 
- 00000323  0x000001e3 jam  0x00000001 , 0x00004d27 
- 00000324  0x000001e5 fetch  0x00000001 , 0x00004d27 
- 00000325  0x000001e6 bne  0x00000001 , 0x00000125 
- 00000326  0x000001e8 fetch  0x00000001 , 0x00004d25 
- 00000327  0x000001e9 increase  0x00000001 , 0x0000003f 
- 00000328  0x000001ea store  0x00000001 , 0x00004d25 
- 00000329  0x000001eb beq  0x00000004 , 0x0000014d 
- 00000330  0x000001ec call  0x00000225 
- 00000331  0x000001ed jam  0x00000002 , 0x00004c37 
- 00000332  0x000001ee branch  0x00000199 
- 00000333  0x000001f1 call  0x00000774 
- 00000334  0x000001f2 jam  0x00000000 , 0x00004d25 
- 00000335  0x000001f3 branch  0x00000125 
- 00000336  0x000001f6 jam  0x00000002 , 0x00004d2a 
- 00000337  0x000001f8 jam  0x00000001 , 0x00004d28 
- 00000338  0x000001f9 jam  0x00000000 , 0x00004d27 
- 00000339  0x000001fa branch  0x00000125 
- 00000340  0x000001fd fetch  0x00000001 , 0x00004d29 
- 00000341  0x000001fe beq  0x00000003 , 0x00000151 
- 00000342  0x000001ff fetch  0x00000001 , 0x00004bf3 
- 00000343  0x00000200 isolate0  0x00000004 , 0x0000003f 
- 00000344  0x00000201 branch  0x00000123 , 0x00000001 
- 00000345  0x00000202 fetch  0x00000001 , 0x00004d29 
- 00000346  0x00000203 beq  0x00000001 , 0x00000150 
- 00000347  0x00000204 beq  0x00000002 , 0x00000151 
- 00000348  0x00000205 rtn 
- 00000349  0x00000208 fetch  0x00000001 , 0x00004c02 
- 00000350  0x00000209 rtnne  0x000000ff 
- 00000351  0x0000020a call  0x00000162 
- 00000352  0x0000020b ncall  0x0000016a , 0x0000002c 
- 00000353  0x0000020c rtn 
- 00000354  0x0000020f disable  0x0000002c 
- 00000355  0x00000210 fetch  0x00000001 , 0x00004d28 
- 00000356  0x00000211 rtnne  0x00000001 
- 00000357  0x00000212 fetch  0x00000001 , 0x00004d2a 
- 00000358  0x00000213 rtnne  0x00000000 
- 00000359  0x00000214 jam  0x00000001 , 0x00004d29 
- 00000360  0x00000215 jam  0x00000004 , 0x00004c37 
- 00000361  0x00000216 branch  0x00007feb 
- 00000362  0x00000219 fetch  0x00000001 , 0x00004d2a 
- 00000363  0x0000021a branch  0x00000171 , 0x00000034 
- 00000364  0x0000021b increase  0xffffffff , 0x0000003f 
- 00000365  0x0000021c store  0x00000001 , 0x00004d2a 
- 00000366  0x0000021d jam  0x00000002 , 0x00004d29 
- 00000367  0x0000021e jam  0x00000004 , 0x00004c37 
- 00000368  0x0000021f branch  0x00000225 
- 00000369  0x00000222 jam  0x00000003 , 0x00004d29 
- 00000370  0x00000223 fetch  0x00000001 , 0x00004d27 
- 00000371  0x00000224 nbranch  0x00000144 , 0x00000034 
- 00000372  0x00000225 jam  0x00000002 , 0x00004c37 
- 00000373  0x00000226 branch  0x00000225 
- 00000374  0x00000229 fetch  0x00000001 , 0x00004c02 
- 00000375  0x0000022a bne  0x000000ff , 0x000001e7 
- 00000376  0x0000022c call  0x0000017c 
- 00000377  0x0000022e call  0x00000213 
- 00000378  0x0000022f jam  0x00000001 , 0x00004bf7 
- 00000379  0x00000230 rtn 
- 00000380  0x00000233 fetch  0x00000002 , 0x00004d23 
- 00000381  0x00000234 call  0x00007f9c 
- 00000382  0x00000235 branch  0x00000182 , 0x00000028 
- 00000383  0x00000236 fetch  0x00000007 , 0x00004b8f 
- 00000384  0x00000237 rtn  0x00000034 
- 00000385  0x00000238 branch  0x00007fe7 
- 00000386  0x0000023a call  0x00000492 
- 00000387  0x0000023c jam  0x00000000 , 0x00004c1e 
- 00000388  0x0000023d add  0x00000011 , 0x00000001 , 0x0000003f 
- 00000389  0x0000023e store  0x00000001 , 0x00004bf2 
- 00000390  0x0000023f call  0x00000125 
- 00000391  0x00000240 store  0x00000001 , 0x00004b8e 
- 00000392  0x00000241 ifetcht  0x00000001 , 0x00000005 
- 00000393  0x00000242 ifetch  0x00000001 , 0x00000012 
- 00000394  0x00000243 ior  0x00000002 , 0x0000003f 
- 00000395  0x00000244 istore  0x00000001 , 0x00000005 
- 00000396  0x00000245 increase  0x00000001 , 0x00000012 
- 00000397  0x00000246 ifetch  0x00000004 , 0x00000012 
- 00000398  0x00000247 istore  0x00000004 , 0x00000005 
- 00000399  0x00000248 increase  0x00000004 , 0x00000012 
- 00000400  0x00000249 arg  0x00004b94 , 0x00000005 
- 00000401  0x0000024a arg  0x00000002 , 0x00000039 
- 00000402  0x0000024c ifetch  0x00000001 , 0x00000012 
- 00000403  0x0000024d ifetcht  0x00000001 , 0x00000005 
- 00000404  0x0000024e iadd  0x00000002 , 0x0000003f 
- 00000405  0x0000024f istore  0x00000001 , 0x00000005 
- 00000406  0x00000250 increase  0x00000001 , 0x00000012 
- 00000407  0x00000251 loop  0x00000192 
- 00000408  0x00000252 rtn 
- 00000409  0x00000255 jam  0x00000000 , 0x00004bfb 
- 00000410  0x00000257 arg  0x00000d00 , 0x0000000b 
- 00000411  0x00000258 until  0x00000023 , 0x00000026 
- 00000412  0x00000259 call  0x000001b5 
- 00000413  0x0000025a fetch  0x00000001 , 0x00004c2e 
- 00000414  0x0000025b rtneq  0x00000001 
- 00000415  0x0000025c nbranch  0x000001c4 , 0x00000018 
- 00000416  0x0000025d nbranch  0x000001c4 , 0x0000002f 
- 00000417  0x0000025e call  0x000001b0 
- 00000418  0x0000025f call  0x000001e0 
- 00000419  0x00000260 call  0x00000770 
- 00000420  0x00000262 fetch  0x00000001 , 0x00004bf1 
- 00000421  0x00000263 increase  0x00000001 , 0x0000003f 
- 00000422  0x00000264 store  0x00000001 , 0x00004bf1 
- 00000423  0x00000265 fetch  0x00000001 , 0x00004c02 
- 00000424  0x00000266 bne  0x000000ff , 0x000001b3 
- 00000425  0x00000267 call  0x00000154 
- 00000426  0x00000269 setarg  0x00000000 
- 00000427  0x0000026a store  0x00000002 , 0x00004bf8 
- 00000428  0x0000026b store  0x00000001 , 0x00004bfa 
- 00000429  0x0000026c store  0x00000001 , 0x00004d26 
- 00000430  0x0000026d jam  0x00000000 , 0x00004bf7 
- 00000431  0x0000026e rtn 
- 00000432  0x00000271 arg  0x00000004 , 0x00000039 
- 00000433  0x00000272 arg  0x00004b8e , 0x00000005 
- 00000434  0x00000273 branch  0x00007ec6 
- 00000435  0x00000276 call  0x0000076d 
- 00000436  0x00000277 branch  0x000001e9 
- 00000437  0x0000027a disable  0x0000002f 
- 00000438  0x0000027b call  0x0000028c 
- 00000439  0x0000027e fetch  0x00000001 , 0x00004c2e 
- 00000440  0x0000027f beq  0x00000001 , 0x000001c2 
- 00000441  0x00000280 force  0x00000000 , 0x00000015 
- 00000442  0x00000281 fetch  0x00000004 , 0x00004c1a 
- 00000443  0x00000282 iforce  0x00000009 
- 00000444  0x00000283 fetcht  0x00000001 , 0x00000017 
- 00000445  0x00000284 call  0x0000291f 
- 00000446  0x00000285 call  0x00002924 
- 00000447  0x00000286 call  0x00000248 
- 00000448  0x00000287 call  0x00000284 , 0x0000002f 
- 00000449  0x00000288 rtn 
- 00000450  0x0000028a call  0x00000284 
- 00000451  0x0000028b branch  0x000001a4 
- 00000452  0x0000028e fetch  0x00000001 , 0x00004bfa 
- 00000453  0x0000028f increase  0x00000001 , 0x0000003f 
- 00000454  0x00000290 store  0x00000001 , 0x00004bfa 
- 00000455  0x00000291 fetch  0x00000001 , 0x00004c02 
- 00000456  0x00000292 bne  0x000000ff , 0x000001d8 
- 00000457  0x00000293 fetcht  0x00000001 , 0x00004bfb 
- 00000458  0x00000294 increase  0x00000001 , 0x00000002 
- 00000459  0x00000295 storet  0x00000001 , 0x00004bfb 
- 00000460  0x00000296 fetch  0x00000001 , 0x00004c37 
- 00000461  0x00000297 isub  0x00000002 , 0x0000003f 
- 00000462  0x00000298 nbranch  0x0000019a , 0x00000034 
- 00000463  0x00000299 fetch  0x00000001 , 0x00004d29 
- 00000464  0x0000029a beq  0x00000003 , 0x0000013d 
- 00000465  0x0000029b fetch  0x00000001 , 0x00004d26 
- 00000466  0x0000029c increase  0x00000001 , 0x0000003f 
- 00000467  0x0000029d store  0x00000001 , 0x00004d26 
- 00000468  0x0000029e beq  0x00000002 , 0x00000132 
- 00000469  0x0000029f call  0x00000129 
- 00000470  0x000002a0 jam  0x00000001 , 0x00004c37 
- 00000471  0x000002a1 branch  0x00000199 
- 00000472  0x000002a4 fetch  0x00000001 , 0x00004bfa 
- 00000473  0x000002a5 rtnne  0x000000ff 
- 00000474  0x000002a6 jam  0x00000000 , 0x00004bfa 
- 00000475  0x000002a7 branch  0x000001de 
- 00000476  0x000002aa setarg  0x00000000 
- 00000477  0x000002ab store  0x00000002 , 0x00004bf8 
- 00000478  0x000002ad jam  0x0000003a , 0x00000a99 
- 00000479  0x000002ae branch  0x00007d86 
- 00000480  0x000002b1 call  0x000001f8 
- 00000481  0x000002b2 fetch  0x00000001 , 0x00004bf0 
- 00000482  0x000002b3 rtn  0x00000034 
- 00000483  0x000002b4 iforce  0x00000039 
- 00000484  0x000002b5 arg  0x00004b6e , 0x00000006 
- 00000485  0x000002b6 arg  0x00004bd0 , 0x00000005 
- 00000486  0x000002b7 branch  0x00007f01 
- 00000487  0x000002ba jam  0x00000090 , 0x000011c7 
- 00000488  0x000002bb branch  0x000007db 
- 00000489  0x000002be jam  0x00000091 , 0x000011c7 
- 00000490  0x000002bf branch  0x000007db 
- 00000491  0x000002c2 jam  0x00000060 , 0x000011c7 
- 00000492  0x000002c3 branch  0x000007db 
- 00000493  0x000002c6 jam  0x00000070 , 0x000011c7 
- 00000494  0x000002c7 branch  0x000007db 
- 00000495  0x000002ca set0  0x00000026 , 0x00000000 
- 00000496  0x000002cb call  0x000053ce 
- 00000497  0x000002cd arg  0x00000003 , 0x00000007 
- 00000498  0x000002ce branch  0x000043d2 
- 00000499  0x000002d1 storet  0x00000001 , 0x00004bf2 
- 00000500  0x000002d2 copy  0x00000002 , 0x00000039 
- 00000501  0x000002d3 arg  0x00004b8e , 0x00000005 
- 00000502  0x000002d4 copy  0x00000011 , 0x00000006 
- 00000503  0x000002d5 branch  0x00007f01 
- 00000504  0x000002d9 fetch  0x00000001 , 0x00004b6d 
- 00000505  0x000002da rshift3  0x0000003f , 0x0000003f 
- 00000506  0x000002db store  0x00000001 , 0x00004bf0 
- 00000507  0x000002dd increase  0x00000001 , 0x0000003f 
- 00000508  0x000002de arg  0x00004b6d , 0x00000006 
- 00000509  0x000002df iadd  0x00000006 , 0x00000006 
- 00000510  0x000002e0 ifetch  0x00000003 , 0x00000006 
- 00000511  0x000002e1 store  0x00000003 , 0x00004c2f 
- 00000512  0x000002e3 fetch  0x00000001 , 0x00004b6d 
- 00000513  0x000002e4 rshift  0x0000003f , 0x0000003f 
- 00000514  0x000002e5 and  0x0000003f , 0x00000003 , 0x0000003f 
- 00000515  0x000002e6 store  0x00000001 , 0x00004c35 
- 00000516  0x000002e7 rtn 
- 00000517  0x000002ea store  0x00000004 , 0x00004c1a 
- 00000518  0x000002ed arg  0x00000000 , 0x00000011 
- 00000519  0x000002ee arg  0x00000004 , 0x00000039 
- 00000520  0x000002ef arg  0x00004c1a , 0x00000006 
- 00000521  0x000002f1 ifetch  0x00000001 , 0x00000006 
- 00000522  0x000002f2 iadd  0x00000011 , 0x00000011 
- 00000523  0x000002f3 loop  0x00000209 
- 00000524  0x000002f4 copy  0x00000011 , 0x0000003f 
- 00000525  0x000002f5 store  0x00000002 , 0x00004ca3 
- 00000526  0x000002f6 fetch  0x00000001 , 0x00004ca3 
- 00000527  0x000002f7 fetcht  0x00000001 , 0x00004ca4 
- 00000528  0x000002f8 iadd  0x00000002 , 0x0000003f 
- 00000529  0x000002f9 store  0x00000001 , 0x00004ca5 
- 00000530  0x000002fa rtn 
- 00000531  0x000002ff fetch  0x00000001 , 0x00004bf2 
- 00000532  0x00000300 increase  0x00000002 , 0x0000003f 
- 00000533  0x00000301 store  0x00000001 , 0x00004bf4 
- 00000534  0x00000303 fetch  0x00000001 , 0x00004bf3 
- 00000535  0x00000304 store  0x00000001 , 0x00004bae 
- 00000536  0x00000306 fetch  0x00000001 , 0x00004bf2 
- 00000537  0x00000307 lshift3  0x0000003f , 0x0000003f 
- 00000538  0x00000308 fetcht  0x00000001 , 0x00004bf1 
- 00000539  0x00000309 and  0x00000002 , 0x00000003 , 0x00000002 
- 00000540  0x0000030a lshift  0x00000002 , 0x00000002 
- 00000541  0x0000030b ior  0x00000002 , 0x0000003f 
- 00000542  0x0000030c fetcht  0x00000001 , 0x00004c2e 
- 00000543  0x0000030d iadd  0x00000002 , 0x0000003f 
- 00000544  0x0000030e istore  0x00000001 , 0x00000005 
- 00000545  0x00000310 fetch  0x00000001 , 0x00004bf2 
- 00000546  0x00000311 iforce  0x00000039 
- 00000547  0x00000312 arg  0x00004b8e , 0x00000006 
- 00000548  0x00000313 branch  0x00007f01 
- 00000549  0x00000316 fetcht  0x00000001 , 0x00004bfd 
- 00000550  0x00000317 call  0x00000229 
- 00000551  0x00000318 storet  0x00000001 , 0x00004bfd 
- 00000552  0x00000319 rtn 
- 00000553  0x0000031c call  0x0000022d 
- 00000554  0x0000031d increase  0x00000001 , 0x00000002 
- 00000555  0x0000031e and_into  0x00000003 , 0x00000002 
- 00000556  0x0000031f rtn 
- 00000557  0x00000322 fetch  0x00000001 , 0x00004c1a 
- 00000558  0x00000323 and_into  0x00000003 , 0x0000003f 
- 00000559  0x00000324 mul32  0x0000003f , 0x00000004 , 0x00000011 
- 00000560  0x00000325 setarg  0x00004c03 
- 00000561  0x00000326 iadd  0x00000011 , 0x0000003f 
- 00000562  0x00000327 iadd  0x00000002 , 0x00000006 
- 00000563  0x00000328 ifetch  0x00000001 , 0x00000006 
- 00000564  0x00000329 store  0x00000001 , 0x00004bfc 
- 00000565  0x0000032a rtn 
- 00000566  0x0000032d disable  0x00000009 
- 00000567  0x0000032e disable  0x00000007 
- 00000568  0x0000032f setarg  0x00555555 
- 00000569  0x00000330 iforce  0x0000000f 
- 00000570  0x00000331 fetch  0x00000001 , 0x00004bfc 
- 00000571  0x00000332 reverse  0x0000003f , 0x00000002 
- 00000572  0x00000333 set1  0x00000001 , 0x00000002 
- 00000573  0x00000334 rshift  0x00000002 , 0x0000000e 
- 00000574  0x00000335 rtn 
- 00000575  0x00000338 call  0x000053c4 
- 00000576  0x00000339 fetch  0x00000004 , 0x00004c1a 
- 00000577  0x0000033a iforce  0x00000009 
- 00000578  0x0000033b call  0x00002918 
- 00000579  0x0000033c fetcht  0x00000001 , 0x00004bfc 
- 00000580  0x0000033d call  0x0000291f 
- 00000581  0x0000033e setarg  0x00000500 
- 00000582  0x0000033f call  0x00002a8f 
- 00000583  0x00000340 call  0x00002924 
- 00000584  0x00000344 call  0x00000236 
- 00000585  0x00000345 disable  0x0000002f 
- 00000586  0x00000346 enable  0x0000000d 
- 00000587  0x00000347 enable  0x00000021 
- 00000588  0x00000348 disable  0x00000020 
- 00000589  0x00000349 enable  0x00000010 
- 00000590  0x0000034a fetch  0x00000002 , 0x00004bf5 
- 00000591  0x0000034b iforce  0x0000001b 
- 00000592  0x0000034c correlate  0x0000003e , 0x00000003 
- 00000593  0x0000034d nbranch  0x00000288 , 0x00000018 
- 00000594  0x00000350 disable  0x0000000d 
- 00000595  0x00000351 enable  0x0000000b 
- 00000596  0x00000352 enable  0x00000007 
- 00000597  0x00000353 enable  0x00000009 
- 00000598  0x00000354 call  0x00000281 
- 00000599  0x00000355 store  0x00000001 , 0x00004ca6 
- 00000600  0x00000356 fetcht  0x00000001 , 0x00004ca5 
- 00000601  0x00000357 isub  0x00000002 , 0x0000003e 
- 00000602  0x00000358 nbranch  0x00000284 , 0x00000005 
- 00000603  0x00000359 call  0x00000281 
- 00000604  0x0000035a store  0x00000001 , 0x00004b6c 
- 00000605  0x0000035b fetch  0x00000001 , 0x00004c38 
- 00000606  0x0000035c sub  0x0000003f , 0x00000002 , 0x0000003e 
- 00000607  0x0000035d branch  0x00000264 , 0x00000005 
- 00000608  0x0000035e fetch  0x00000001 , 0x00004b6c 
- 00000609  0x0000035f fetcht  0x00000001 , 0x00004bf3 
- 00000610  0x00000360 icompare  0x00000007 , 0x00000002 
- 00000611  0x00000361 nbranch  0x00000284 , 0x00000001 
- 00000612  0x00000363 call  0x00000281 
- 00000613  0x00000364 istore  0x00000001 , 0x00000005 
- 00000614  0x00000365 rshift3  0x0000003f , 0x0000003f 
- 00000615  0x00000366 and  0x0000003f , 0x0000001f , 0x00000039 
- 00000616  0x00000367 branch  0x0000026c , 0x00000005 
- 00000617  0x00000369 call  0x00000281 
- 00000618  0x0000036a istore  0x00000001 , 0x00000005 
- 00000619  0x0000036b loop  0x00000269 
- 00000620  0x0000036e copy  0x00000005 , 0x00000011 
- 00000621  0x0000036f call  0x00000281 
- 00000622  0x00000370 store  0x00000001 , 0x00004d2d 
- 00000623  0x00000371 copy  0x00000011 , 0x00000005 
- 00000624  0x00000372 parse  0x00000003 , 0x00000000 , 0x00000018 
- 00000625  0x00000373 enable  0x00000010 
- 00000626  0x00000374 arg  0x00000664 , 0x0000001b 
- 00000627  0x00000375 rshift32  0x0000003f , 0x0000003f 
- 00000628  0x00000376 rshift16  0x0000003f , 0x0000003f 
- 00000629  0x00000377 istore  0x00000003 , 0x00000005 
- 00000630  0x00000378 disable  0x0000000b 
- 00000631  0x00000379 branch  0x00000284 , 0x00000006 
- 00000632  0x0000037c enable  0x0000002f 
- 00000633  0x0000037d fetch  0x00000001 , 0x00000017 
- 00000634  0x0000037e add  0x0000003f , 0x00000000 , 0x00000011 
- 00000635  0x0000037f call  0x00002981 
- 00000636  0x00000380 disable  0x0000000d 
- 00000637  0x00000381 call  0x00002918 
- 00000638  0x00000382 fetch  0x00000001 , 0x00004d2d 
- 00000639  0x00000383 call  0x0000006b 
- 00000640  0x00000384 rtn 
- 00000641  0x00000387 parse  0x00000003 , 0x00000000 , 0x00000008 
- 00000642  0x00000388 rshift3  0x0000000c , 0x0000003f 
- 00000643  0x00000389 rtn 
- 00000644  0x0000038c disable  0x0000001b 
- 00000645  0x0000038d disable  0x0000000b 
- 00000646  0x0000038e call  0x0000264d 
- 00000647  0x0000038f rtn 
- 00000648  0x00000392 branch  0x00000284 
- 00000649  0x00000395 call  0x00002918 
- 00000650  0x00000396 fetcht  0x00000001 , 0x00004bfc 
- 00000651  0x00000397 branch  0x00002933 
- 00000652  0x0000039a call  0x000053c4 
- 00000653  0x0000039b fetch  0x00000004 , 0x00004c1a 
- 00000654  0x0000039c iforce  0x00000009 
- 00000655  0x0000039d call  0x00000236 
- 00000656  0x0000039e call  0x00000289 
- 00000657  0x0000039f set1  0x00000000 , 0x00000015 
- 00000658  0x000003a0 enable  0x0000001d 
- 00000659  0x000003a1 enable  0x00000020 
- 00000660  0x000003a2 disable  0x00000021 
- 00000661  0x000003a5 rshift16  0x00000009 , 0x0000003f 
- 00000662  0x000003a6 rshift8  0x0000003f , 0x0000003f 
- 00000663  0x000003a7 rshift4  0x0000003f , 0x0000003f 
- 00000664  0x000003a8 inject  0x00000003 , 0x00000028 
- 00000665  0x000003a9 disable  0x0000001d 
- 00000666  0x000003aa enable  0x0000001b 
- 00000667  0x000003ab enable  0x00000007 
- 00000668  0x000003ac enable  0x00000009 
- 00000669  0x000003ad fetch  0x00000001 , 0x00004ca5 
- 00000670  0x000003ae inject  0x00000003 , 0x00000008 
- 00000671  0x000003af fetch  0x00000001 , 0x00004bf4 
- 00000672  0x000003b0 iforce  0x00000039 
- 00000673  0x000003b1 arg  0x00004bae , 0x00000006 
- 00000674  0x000003b3 ifetch  0x00000001 , 0x00000006 
- 00000675  0x000003b4 inject  0x00000003 , 0x00000008 
- 00000676  0x000003b5 loop  0x000002a2 
- 00000677  0x000003b8 enable  0x00000008 
- 00000678  0x000003b9 inject  0x00000003 , 0x00000018 
- 00000679  0x000003ba disable  0x00000008 
- 00000680  0x000003bb until  0x0000003e , 0x00000027 
- 00000681  0x000003bc nop  0x00000064 
- 00000682  0x000003bd disable  0x0000001d 
- 00000683  0x000003be disable  0x0000001b 
- 00000684  0x000003bf rtn 
- 00000685  0x000003c2 call  0x00007fe9 
- 00000686  0x000003c3 fetcht  0x00000004 , 0x00004c13 
- 00000687  0x000003c4 copy  0x00000022 , 0x0000003f 
- 00000688  0x000003c5 isub  0x00000002 , 0x0000003e 
- 00000689  0x000003c6 ncall  0x00002d18 , 0x00000002 
- 00000690  0x000003c7 copy  0x0000003f , 0x00000012 
- 00000691  0x000003c8 fetch  0x00000004 , 0x00004c13 
- 00000692  0x000003c9 fetcht  0x00000001 , 0x00004c17 
- 00000693  0x000003ca iadd  0x00000002 , 0x00000002 
- 00000694  0x000003cb copy  0x00000012 , 0x0000003f 
- 00000695  0x000003cc isub  0x00000002 , 0x0000003e 
- 00000696  0x000003cd nrtn  0x00000002 
- 00000697  0x000003ce set0  0x0000001c , 0x0000003f 
- 00000698  0x000003cf store  0x00000004 , 0x00004c13 
- 00000699  0x000003d0 branch  0x00007fe7 
- 00000700  0x000003d3 call  0x000029bb 
- 00000701  0x000003d4 rtn  0x00000034 
- 00000702  0x000003d5 fetcht  0x00000001 , 0x00004cac 
- 00000703  0x000003d6 arg  0x00000d9e , 0x00000011 
- 00000704  0x000003d7 call  0x000002c3 
- 00000705  0x000003d8 storet  0x00000001 , 0x00004cac 
- 00000706  0x000003d9 rtn 
- 00000707  0x000003dc copy  0x00000011 , 0x0000003f 
- 00000708  0x000003dd iadd  0x00000002 , 0x00000005 
- 00000709  0x000003de fetch  0x00000001 , 0x00000018 
- 00000710  0x000003df istore  0x00000001 , 0x00000005 
- 00000711  0x000003e0 increase  0x00000001 , 0x00000002 
- 00000712  0x000003e1 and_into  0x00000007 , 0x00000002 
- 00000713  0x000003e2 rtn 
- 00000714  0x000003e4 arg  0x00000000 , 0x00000002 
- 00000715  0x000003e5 arg  0x00000008 , 0x00000039 
- 00000716  0x000003e6 copy  0x00000011 , 0x00000006 
- 00000717  0x000003e8 ifetch  0x00000001 , 0x00000006 
- 00000718  0x000003e9 iadd  0x00000002 , 0x00000002 
- 00000719  0x000003ea loop  0x000002cd 
- 00000720  0x000003eb rshift3  0x00000002 , 0x0000003f 
- 00000721  0x000003ec copy  0x0000003f , 0x00000002 
- 00000722  0x000003ed rtnmark0  0x00000026 
- 00000723  0x000003ef div  0x0000003f , 0x0000000a 
- 00000724  0x000003f0 call  0x00007f86 
- 00000725  0x000003f1 quotient  0x0000003f 
- 00000726  0x000003f2 lshift4  0x0000003f , 0x0000003f 
- 00000727  0x000003f3 remainder  0x00000002 
- 00000728  0x000003f4 ior  0x00000002 , 0x00000002 
- 00000729  0x000003f5 rtn 
- 00000730  0x000003f6 rtn 
- 00000731  0x000003fa rtnmark1  0x00000026 
- 00000732  0x000003fb call  0x000003d9 
- 00000733  0x000003fc call  0x000000de 
- 00000734  0x000003fd fetch  0x00000001 , 0x00004040 
- 00000735  0x000003fe bbit0  0x00000000 , 0x000002e2 
- 00000736  0x000003ff fetch  0x00000001 , 0x000000a0 
- 00000737  0x00000400 nrtn  0x00000034 
- 00000738  0x00000402 setarg  0x00000000 
- 00000739  0x00000403 store  0x00000008 , 0x000000a1 
- 00000740  0x00000404 rtn 
- 00000741  0x00000407 fetch  0x00000001 , 0x00004afe 
- 00000742  0x00000408 rtn  0x00000034 
- 00000743  0x00000409 branch  0x0000058b 
- 00000744  0x0000040c call  0x00003416 
- 00000745  0x0000040d call  0x000074b9 
- 00000746  0x0000040e branch  0x0000031b , 0x0000002b 
- 00000747  0x00000410 call  0x00000001 
- 00000748  0x00000411 fetch  0x00000001 , 0x00004241 
- 00000749  0x00000412 bbit1  0x00000002 , 0x000002f0 
- 00000750  0x00000413 call  0x000005c4 
- 00000751  0x00000414 beq  0x00000005 , 0x00000319 
- 00000752  0x00000416 call  0x000002fc 
- 00000753  0x00000417 fetch  0x00000001 , 0x00004720 
- 00000754  0x00000418 fetcht  0x00000001 , 0x00004703 
- 00000755  0x00000419 isub  0x00000002 , 0x0000003e 
- 00000756  0x0000041a branch  0x00000301 , 0x00000005 
- 00000757  0x0000041b call  0x0000052b 
- 00000758  0x0000041c fetch  0x00000001 , 0x00004210 
- 00000759  0x0000041d beq  0x00000033 , 0x00000304 
- 00000760  0x0000041e beq  0x00000034 , 0x00000307 
- 00000761  0x00000420 jam  0x00000001 , 0x0000479d 
- 00000762  0x00000421 jam  0x00000028 , 0x0000479e 
- 00000763  0x00000422 rtn 
- 00000764  0x00000424 fetch  0x00000001 , 0x00004ca9 
- 00000765  0x00000425 store  0x00000001 , 0x000041de 
- 00000766  0x00000426 rtn 
- 00000767  0x00000429 fetch  0x00000001 , 0x000046f5 
- 00000768  0x0000042a branch  0x00004360 
- 00000769  0x0000042d jam  0x00000002 , 0x00004720 
- 00000770  0x0000042e call  0x0000052b 
- 00000771  0x0000042f branch  0x000003c6 
- 00000772  0x00000433 fetch  0x00000006 , 0x000041d0 
- 00000773  0x00000434 branch  0x000033eb , 0x00000034 
- 00000774  0x00000435 branch  0x00004274 
- 00000775  0x00000438 jam  0x00000001 , 0x00004b67 
- 00000776  0x00000439 jam  0x00000001 , 0x0000479f 
- 00000777  0x0000043a fetch  0x00000002 , 0x000046a8 
- 00000778  0x0000043b store  0x00000002 , 0x000046ae 
- 00000779  0x0000043c call  0x00003418 
- 00000780  0x0000043d call  0x00000312 
- 00000781  0x0000043e setarg  0x00000004 
- 00000782  0x0000043f istore  0x00000001 , 0x00000006 
- 00000783  0x00000441 arg  0x00004390 , 0x00000006 
- 00000784  0x00000442 call  0x000005fb 
- 00000785  0x00000444 branch  0x00007df4 
- 00000786  0x00000447 arg  0x00004370 , 0x00000011 
- 00000787  0x00000449 ifetch  0x00000001 , 0x00000011 
- 00000788  0x0000044a rtn  0x00000034 
- 00000789  0x0000044b iadd  0x00000006 , 0x00000011 
- 00000790  0x0000044c ifetch  0x00000001 , 0x00000006 
- 00000791  0x0000044d rtneq  0x00000001 
- 00000792  0x0000044e branch  0x00000313 
- 00000793  0x00000451 jam  0x00000061 , 0x000011c7 
- 00000794  0x00000452 branch  0x000007db 
- 00000795  0x0000045c jam  0x00000076 , 0x00004212 
- 00000796  0x0000045d branch  0x00003d36 
- 00000797  0x00000460 call  0x0000031b 
- 00000798  0x00000461 call  0x000040c0 
- 00000799  0x00000465 call  0x000040d9 
- 00000800  0x00000466 beq  0x00000030 , 0x00000329 
- 00000801  0x00000467 beq  0x00000031 , 0x0000034f 
- 00000802  0x00000468 call  0x000040d1 
- 00000803  0x00000469 nop  0x000003e8 
- 00000804  0x0000046a branch  0x0000031f 
- 00000805  0x0000046d jam  0x00000001 , 0x00004afe 
- 00000806  0x0000046e call  0x0000640f 
- 00000807  0x0000046f call  0x0000031d 
- 00000808  0x00000470 branch  0x00006411 
- 00000809  0x00000473 call  0x00000354 
- 00000810  0x00000474 fetch  0x00000001 , 0x000046de 
- 00000811  0x00000475 beq  0x0000005a , 0x0000032e 
- 00000812  0x00000476 beq  0x000000d8 , 0x00000336 
- 00000813  0x00000477 branch  0x000040e1 
- 00000814  0x0000047a setarg  0x00008006 
- 00000815  0x0000047b call  0x00006413 
- 00000816  0x0000047c call  0x00007ec1 
- 00000817  0x0000047d jam  0x00000007 , 0x000046e0 
- 00000818  0x0000047e call  0x000040f6 
- 00000819  0x0000047f setarg  0x0000220a 
- 00000820  0x00000480 call  0x00006413 
- 00000821  0x00000481 branch  0x000040f4 
- 00000822  0x00000484 setarg  0x00000016 
- 00000823  0x00000485 call  0x00006414 
- 00000824  0x00000486 sub  0x0000003f , 0x000000bd , 0x0000003e 
- 00000825  0x00000487 nbranch  0x0000031f , 0x00000005 
- 00000826  0x00000488 setarg  0x00000019 
- 00000827  0x00000489 call  0x00006414 
- 00000828  0x0000048a sub  0x0000003f , 0x00000055 , 0x0000003e 
- 00000829  0x0000048b nbranch  0x0000031f , 0x00000005 
- 00000830  0x0000048c setarg  0x0000001b 
- 00000831  0x0000048d call  0x00006414 
- 00000832  0x0000048e sub  0x0000003f , 0x0000001d , 0x0000003e 
- 00000833  0x0000048f nbranch  0x0000031f , 0x00000005 
- 00000834  0x00000490 jam  0x00000008 , 0x000046e0 
- 00000835  0x00000491 call  0x000040f6 
- 00000836  0x00000492 setarg  0x00000206 
- 00000837  0x00000493 call  0x00006413 
- 00000838  0x00000494 setarg  0x00006909 
- 00000839  0x00000495 call  0x00006413 
- 00000840  0x00000496 setarg  0x0000280d 
- 00000841  0x00000497 call  0x00006413 
- 00000842  0x00000498 setarg  0x00009f0e 
- 00000843  0x00000499 call  0x00006413 
- 00000844  0x0000049a setarg  0x0000ba0f 
- 00000845  0x0000049b call  0x00006413 
- 00000846  0x0000049c branch  0x000040f4 
- 00000847  0x0000049e call  0x00000354 
- 00000848  0x0000049f fetch  0x00000001 , 0x000046de 
- 00000849  0x000004a0 beq  0x00000070 , 0x000040e8 
- 00000850  0x000004a1 jam  0x00000001 , 0x000046e0 
- 00000851  0x000004a2 rtn 
- 00000852  0x000004a5 call  0x0000031b 
- 00000853  0x000004a6 setarg  0x00008006 
- 00000854  0x000004a7 call  0x00006413 
- 00000855  0x000004a8 nop  0x00002ee0 
- 00000856  0x000004ac fetch  0x00000001 , 0x0000477a 
- 00000857  0x000004ad beq  0x000000ff , 0x0000035b 
- 00000858  0x000004ae branch  0x0000058b 
- 00000859  0x000004b0 fetch  0x00000001 , 0x000046e1 
- 00000860  0x000004b1 store  0x00000001 , 0x0000477a 
- 00000861  0x000004b2 branch  0x0000058b 
- 00000862  0x000004b5 call  0x0000031b 
- 00000863  0x000004b6 setarg  0x00000006 
- 00000864  0x000004b7 call  0x00006414 
- 00000865  0x000004b8 or  0x0000003f , 0x00000008 , 0x0000003f 
- 00000866  0x000004b9 lshift8  0x0000003f , 0x0000003f 
- 00000867  0x000004ba add  0x0000003f , 0x00000006 , 0x0000003f 
- 00000868  0x000004bb branch  0x00006413 
- 00000869  0x000004be jam  0x00000080 , 0x000011c7 
- 00000870  0x000004bf branch  0x000007db 
- 00000871  0x000004c3 fetcht  0x00000001 , 0x00004b45 
- 00000872  0x000004c4 branch  0x00006825 
- 00000873  0x000004c7 jam  0x00000040 , 0x00008086 
- 00000874  0x000004c8 jam  0x00000000 , 0x00008087 
- 00000875  0x000004c9 hfetch  0x00000001 , 0x00008081 
- 00000876  0x000004ca set0  0x00000000 , 0x0000003f 
- 00000877  0x000004cb set0  0x00000001 , 0x0000003f 
- 00000878  0x000004cc set1  0x00000003 , 0x0000003f 
- 00000879  0x000004cd set0  0x00000004 , 0x0000003f 
- 00000880  0x000004ce hstore  0x00000001 , 0x00008081 
- 00000881  0x000004cf setarg  0x00000000 
- 00000882  0x000004d0 store  0x00000004 , 0x000001f5 
- 00000883  0x000004d2 hfetch  0x00000001 , 0x0000807f 
- 00000884  0x000004d3 set0  0x00000000 , 0x0000003f 
- 00000885  0x000004d4 hstore  0x00000001 , 0x0000807f 
- 00000886  0x000004d6 rtn 
- 00000887  0x000004d9 call  0x000003c4 
- 00000888  0x000004da call  0x00004423 
- 00000889  0x000004db fetch  0x00000002 , 0x00004778 
- 00000890  0x000004dc arg  0x0000aa55 , 0x00000002 
- 00000891  0x000004dd isub  0x00000002 , 0x0000003e 
- 00000892  0x000004de branch  0x000003b4 , 0x00000005 
- 00000893  0x000004df storet  0x00000002 , 0x00004778 
- 00000894  0x000004e0 call  0x0000441c 
- 00000895  0x000004e1 fetch  0x00000001 , 0x000046e1 
- 00000896  0x000004e2 store  0x00000001 , 0x0000477a 
- 00000897  0x000004e7 call  0x000003c4 
- 00000898  0x000004e8 call  0x00000393 
- 00000899  0x000004e9 call  0x000003ab 
- 00000900  0x000004ea call  0x00000397 
- 00000901  0x000004eb call  0x000003a2 
- 00000902  0x000004ed arg  0x00000002 , 0x00000002 
- 00000903  0x000004ee arg  0x000047c2 , 0x00000011 
- 00000904  0x000004ef arg  0x0000005f , 0x00000012 
- 00000905  0x000004f0 fetch  0x00000003 , 0x00004700 
- 00000906  0x000004f1 iadd  0x00000012 , 0x0000003f 
- 00000907  0x000004f2 call  0x00000397 
- 00000908  0x000004f3 call  0x000003a2 
- 00000909  0x000004f4 call  0x000003bb 
- 00000910  0x000004f5 branch  0x0000031b 
- 00000911  0x000004f8 arg  0x00000004 , 0x00000002 
- 00000912  0x000004f9 arg  0x00004c1a , 0x00000011 
- 00000913  0x000004fa arg  0x0000005b , 0x00000012 
- 00000914  0x000004fb rtn 
- 00000915  0x000004fe fetch  0x00000003 , 0x00004700 
- 00000916  0x000004ff store  0x00000003 , 0x00004232 
- 00000917  0x00000500 call  0x0000652a 
- 00000918  0x00000501 branch  0x000003a2 
- 00000919  0x00000504 copy  0x0000003f , 0x00000013 
- 00000920  0x00000505 copy  0x00000011 , 0x0000003f 
- 00000921  0x00000506 increase  0xfffffffc , 0x0000003f 
- 00000922  0x00000507 copy  0x0000003f , 0x00000012 
- 00000923  0x00000508 ifetch  0x00000004 , 0x00000012 
- 00000924  0x00000509 store  0x00000004 , 0x00004b47 
- 00000925  0x0000050a copy  0x00000013 , 0x0000003f 
- 00000926  0x0000050b call  0x00006552 
- 00000927  0x0000050c fetch  0x00000004 , 0x00004b47 
- 00000928  0x0000050d istore  0x00000004 , 0x00000012 
- 00000929  0x0000050e rtn 
- 00000930  0x00000511 setarg  0x000186a0 
- 00000931  0x00000512 call  0x00002a8f 
- 00000932  0x00000513 call  0x0000650b 
- 00000933  0x00000514 setarg  0x000001fa 
- 00000934  0x00000515 hstore  0x00000002 , 0x0000808c 
- 00000935  0x00000516 setarg  0x00000005 
- 00000936  0x00000517 call  0x000064f3 
- 00000937  0x00000518 bbit1  0x00000000 , 0x000003a2 
- 00000938  0x00000519 rtn 
- 00000939  0x0000051c setarg  0x0000477f 
- 00000940  0x0000051d arg  0x00004720 , 0x00000002 
- 00000941  0x0000051e isub  0x00000002 , 0x00000002 
- 00000942  0x0000051f fetch  0x00000003 , 0x00004700 
- 00000943  0x00000520 arg  0x00004720 , 0x00000011 
- 00000944  0x00000521 rtn 
- 00000945  0x00000524 call  0x000003c4 
- 00000946  0x00000525 call  0x000003ab 
- 00000947  0x00000526 branch  0x00006562 
- 00000948  0x00000529 call  0x000003b1 
- 00000949  0x0000052a call  0x000005f4 
- 00000950  0x0000052b call  0x000002ff 
- 00000951  0x0000052c call  0x0000431a 
- 00000952  0x0000052d fetch  0x00000004 , 0x0000477b 
- 00000953  0x0000052e store  0x00000004 , 0x00004c1a 
- 00000954  0x0000052f rtn 
- 00000955  0x00000532 jam  0x000000b9 , 0x00000aa2 
- 00000956  0x00000534 call  0x00000369 
- 00000957  0x00000535 nop  0x00000064 
- 00000958  0x00000536 call  0x0000650b 
- 00000959  0x00000537 arg  0x00004b47 , 0x00000011 
- 00000960  0x00000538 fetcht  0x00000001 , 0x00000aa2 
- 00000961  0x00000539 call  0x00006556 
- 00000962  0x0000053a nop  0x00000064 
- 00000963  0x0000053b rtn 
- 00000964  0x0000053e jam  0x000000ab , 0x00000aa2 
- 00000965  0x0000053f branch  0x000003bc 
- 00000966  0x00000544 call  0x000003c9 
- 00000967  0x00000545 branch  0x000001ed , 0x00000028 
- 00000968  0x00000546 branch  0x000001eb 
- 00000969  0x00000549 arg  0x00000002 , 0x00000039 
- 00000970  0x0000054a arg  0x00004c1a , 0x00000006 
- 00000971  0x0000054c call  0x00007fe7 
- 00000972  0x0000054d setarg  0x0000ffff 
- 00000973  0x0000054f ifetcht  0x00000002 , 0x00000006 
- 00000974  0x00000550 isub  0x00000002 , 0x0000003e 
- 00000975  0x00000551 ncall  0x00007fe9 , 0x00000005 
- 00000976  0x00000552 loop  0x000003cd 
- 00000977  0x00000553 rtn 
- 00000978  0x00000556 call  0x00004401 
- 00000979  0x00000557 fetch  0x00000002 , 0x0000469f 
- 00000980  0x00000558 rtn  0x00000034 
- 00000981  0x0000055a jam  0x00000001 , 0x00004d32 
- 00000982  0x0000055b setarg  0x00000000 
- 00000983  0x0000055c store  0x00000002 , 0x00004d33 
- 00000984  0x0000055d rtn 
- 00000985  0x00000560 arg  0x00001800 , 0x00000006 
- 00000986  0x00000561 arg  0x0000480a , 0x00000005 
- 00000987  0x00000562 call  0x000003e1 
- 00000988  0x00000563 arg  0x00001900 , 0x00000006 
- 00000989  0x00000564 call  0x000003e1 
- 00000990  0x00000565 arg  0x00001a00 , 0x00000006 
- 00000991  0x00000566 call  0x000003e1 
- 00000992  0x00000567 arg  0x00001b00 , 0x00000006 
- 00000993  0x00000569 arg  0x0000001b , 0x00000039 
- 00000994  0x0000056a branch  0x00007f01 
- 00000995  0x0000056d arg  0x0000480a , 0x00000006 
- 00000996  0x0000056e arg  0x00001800 , 0x00000005 
- 00000997  0x0000056f call  0x000003e1 
- 00000998  0x00000570 arg  0x00001900 , 0x00000005 
- 00000999  0x00000571 call  0x000003e1 
- 00001000  0x00000572 arg  0x00001a00 , 0x00000005 
- 00001001  0x00000573 call  0x000003e1 
- 00001002  0x00000574 arg  0x00001b00 , 0x00000005 
- 00001003  0x00000575 branch  0x000003e1 
- 00001004  0x00000578 call  0x00005892 
- 00001005  0x00000579 nrtn  0x00000034 
- 00001006  0x0000057a fetch  0x00000001 , 0x000046c5 
- 00001007  0x0000057b and  0x0000003f , 0x00000003 , 0x0000003f 
- 00001008  0x0000057c rtnne  0x00000003 
- 00001009  0x0000057d fetch  0x00000001 , 0x0000479c 
- 00001010  0x0000057e call  0x0000043a , 0x00000034 
- 00001011  0x0000057f fetch  0x00000004 , 0x000046d3 
- 00001012  0x00000580 bbit1  0x00000005 , 0x00004179 
- 00001013  0x00000581 call  0x00003f97 
- 00001014  0x00000582 nrtn  0x00000028 
- 00001015  0x00000583 call  0x00000412 
- 00001016  0x00000585 arg  0x0000469a , 0x00000011 
- 00001017  0x00000586 call  0x00007e3d 
- 00001018  0x00000587 call  0x00000401 , 0x00000028 
- 00001019  0x00000589 rtn 
- 00001020  0x0000058c jam  0x00000007 , 0x000047a0 
- 00001021  0x0000058d jam  0x00000004 , 0x000047a1 
- 00001022  0x0000058e setarg  0x000047a0 
- 00001023  0x0000058f store  0x00000002 , 0x00004218 
- 00001024  0x00000590 branch  0x00007e38 
- 00001025  0x00000593 fetch  0x00000001 , 0x000047c1 
- 00001026  0x00000594 increase  0x00000001 , 0x0000003f 
- 00001027  0x00000595 store  0x00000001 , 0x000047c1 
- 00001028  0x00000596 rtn 
- 00001029  0x00000599 arg  0x0000469a , 0x00000011 
- 00001030  0x0000059a call  0x00007e54 
- 00001031  0x0000059b branch  0x00000409 , 0x00000028 
- 00001032  0x0000059c rtn 
- 00001033  0x0000059f call  0x00005652 
- 00001034  0x000005a0 fetch  0x00000001 , 0x000047c1 
- 00001035  0x000005a1 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00001036  0x000005a2 ncall  0x00005650 , 0x00000002 
- 00001037  0x000005a3 fetch  0x00000001 , 0x000047c1 
- 00001038  0x000005a4 rtn  0x00000034 
- 00001039  0x000005a5 increase  0xffffffff , 0x0000003f 
- 00001040  0x000005a6 store  0x00000001 , 0x000047c1 
- 00001041  0x000005a7 branch  0x00003f90 
- 00001042  0x000005ab fetch  0x00000002 , 0x0000469f 
- 00001043  0x000005ac rtn  0x00000034 
- 00001044  0x000005ad jam  0x00000001 , 0x00004806 
- 00001045  0x000005ae jam  0x00000002 , 0x00004807 
- 00001046  0x000005af rtn 
- 00001047  0x000005b2 rtn  0x0000002e 
- 00001048  0x000005b3 fetch  0x00000001 , 0x000041e2 
- 00001049  0x000005b4 rtn  0x00000034 
- 00001050  0x000005b5 call  0x00005271 
- 00001051  0x000005b6 nrtn  0x00000034 
- 00001052  0x000005b7 fetch  0x00000001 , 0x0000479c 
- 00001053  0x000005b8 call  0x0000043a , 0x00000034 
- 00001054  0x000005b9 fetch  0x00000004 , 0x000046d3 
- 00001055  0x000005ba bbit1  0x00000005 , 0x00003f8a 
- 00001056  0x000005bb bbit1  0x00000009 , 0x00003f8a 
- 00001057  0x000005bc call  0x00003f97 
- 00001058  0x000005bd nrtn  0x00000028 
- 00001059  0x000005be call  0x00000412 
- 00001060  0x000005bf fetch  0x00000001 , 0x00004b03 
- 00001061  0x000005c0 beq  0x00000001 , 0x00000429 
- 00001062  0x000005c1 fetch  0x00000001 , 0x00004b0a 
- 00001063  0x000005c2 rtn  0x00000034 
- 00001064  0x000005c3 branch  0x00003f81 
- 00001065  0x000005c6 fetch  0x00000001 , 0x0000469a 
- 00001066  0x000005c7 store  0x00000001 , 0x00004b04 
- 00001067  0x000005c8 fetch  0x00000001 , 0x0000469b 
- 00001068  0x000005c9 istore  0x00000001 , 0x00000005 
- 00001069  0x000005ca fetch  0x00000001 , 0x0000469d 
- 00001070  0x000005cb istore  0x00000001 , 0x00000005 
- 00001071  0x000005cc fetch  0x00000002 , 0x0000469f 
- 00001072  0x000005cd istore  0x00000002 , 0x00000005 
- 00001073  0x000005cf arg  0x00000007 , 0x00000011 
- 00001074  0x000005d0 call  0x00004d63 
- 00001075  0x000005d1 fetch  0x00000002 , 0x0000424e 
- 00001076  0x000005d2 istore  0x00000002 , 0x00000005 
- 00001077  0x000005d3 setarg  0x000002a1 
- 00001078  0x000005d4 istore  0x00000002 , 0x00000005 
- 00001079  0x000005d5 fetch  0x00000005 , 0x00004b04 
- 00001080  0x000005d6 istore  0x00000005 , 0x00000005 
- 00001081  0x000005d7 rtn 
- 00001082  0x000005df call  0x00005814 
- 00001083  0x000005e0 jam  0x00000001 , 0x0000479c 
- 00001084  0x000005e1 branch  0x00000354 
- 00001085  0x000005e4 call  0x00007e34 
- 00001086  0x000005e5 call  0x00000440 
- 00001087  0x000005e6 branch  0x00003ee0 
- 00001088  0x000005e9 fetcht  0x00000001 , 0x00004b23 
- 00001089  0x000005ea call  0x0000680e 
- 00001090  0x000005eb fetcht  0x00000001 , 0x000046e7 
- 00001091  0x000005ec call  0x000005db 
- 00001092  0x000005ed fetcht  0x00000001 , 0x000046e7 
- 00001093  0x000005ee call  0x0000681d 
- 00001094  0x000005ef branch  0x00000456 , 0x00000001 
- 00001095  0x000005f0 call  0x000005e4 
- 00001096  0x000005f2 fetch  0x00000001 , 0x000046b6 
- 00001097  0x000005f3 rtneq  0x00000000 
- 00001098  0x000005f4 jam  0x00000000 , 0x000046b6 
- 00001099  0x000005f5 jam  0x00000001 , 0x00004b6b 
- 00001100  0x000005f6 fetch  0x00000001 , 0x0000477a 
- 00001101  0x000005f7 increase  0x00000001 , 0x0000003f 
- 00001102  0x000005f8 and  0x0000003f , 0x00000003 , 0x0000003f 
- 00001103  0x000005f9 store  0x00000001 , 0x0000477a 
- 00001104  0x000005fa mul32  0x0000003f , 0x00000002 , 0x0000003f 
- 00001105  0x000005fb increase  0x00000002 , 0x0000003f 
- 00001106  0x000005fc store  0x00000002 , 0x00004b2b 
- 00001107  0x000005fd call  0x00000540 
- 00001108  0x000005fe call  0x00003d7e 
- 00001109  0x000005ff branch  0x00000381 
- 00001110  0x00000602 call  0x000005e4 
- 00001111  0x00000603 branch  0x00003d62 
- 00001112  0x00000606 copy  0x00000013 , 0x0000003f 
- 00001113  0x00000607 beq  0x00000014 , 0x0000046a 
- 00001114  0x00000608 beq  0x00000015 , 0x0000046d 
- 00001115  0x00000609 beq  0x00000029 , 0x00000470 
- 00001116  0x0000060a beq  0x00000032 , 0x00000472 
- 00001117  0x0000060b beq  0x00000040 , 0x00000474 
- 00001118  0x0000060c beq  0x00000004 , 0x00000476 
- 00001119  0x0000060d beq  0x00000013 , 0x00000476 
- 00001120  0x0000060e beq  0x00000027 , 0x00000478 
- 00001121  0x0000060f beq  0x00000019 , 0x000033df 
- 00001122  0x00000610 beq  0x00000021 , 0x0000047a 
- 00001123  0x00000611 beq  0x00000001 , 0x0000047c 
- 00001124  0x00000612 beq  0x00000002 , 0x00000482 
- 00001125  0x00000613 beq  0x0000002b , 0x00000485 
- 00001126  0x00000614 beq  0x00000039 , 0x00000487 
- 00001127  0x00000615 beq  0x0000003a , 0x0000048a 
- 00001128  0x00000616 beq  0x0000003c , 0x0000048d 
- 00001129  0x00000617 branch  0x0000417d 
- 00001130  0x0000061a call  0x00000325 
- 00001131  0x0000061b jam  0x000000b0 , 0x000011c7 
- 00001132  0x0000061c branch  0x000007db 
- 00001133  0x0000061f call  0x00000498 
- 00001134  0x00000620 jam  0x000000a2 , 0x000011c7 
- 00001135  0x00000621 branch  0x000007db 
- 00001136  0x00000625 jam  0x00000012 , 0x00000a99 
- 00001137  0x00000626 branch  0x00007d8f 
- 00001138  0x00000629 jam  0x000000b3 , 0x000011c7 
- 00001139  0x0000062a branch  0x000007db 
- 00001140  0x0000062d jam  0x000000a1 , 0x000011c7 
- 00001141  0x0000062e branch  0x000007db 
- 00001142  0x00000633 jam  0x000000a3 , 0x000011c7 
- 00001143  0x00000634 branch  0x000007db 
- 00001144  0x00000637 call  0x0000438e 
- 00001145  0x00000638 branch  0x000033a7 
- 00001146  0x0000063b jam  0x000000b1 , 0x000011c7 
- 00001147  0x0000063c branch  0x000007db 
- 00001148  0x0000063f call  0x00000581 
- 00001149  0x00000640 call  0x00000325 
- 00001150  0x00000641 call  0x000004f3 
- 00001151  0x00000642 call  0x0000053a 
- 00001152  0x00000643 jam  0x00000000 , 0x00004809 
- 00001153  0x00000644 branch  0x000042ca 
- 00001154  0x00000647 call  0x00000498 
- 00001155  0x00000648 jam  0x000000b4 , 0x000011c7 
- 00001156  0x00000649 branch  0x000007db 
- 00001157  0x0000064c jam  0x000000b2 , 0x000011c7 
- 00001158  0x0000064d branch  0x000007db 
- 00001159  0x00000650 call  0x00000325 
- 00001160  0x00000651 jam  0x00000092 , 0x000011c7 
- 00001161  0x00000652 branch  0x000007db 
- 00001162  0x00000655 call  0x00000498 
- 00001163  0x00000656 jam  0x000000a0 , 0x000011c7 
- 00001164  0x00000657 branch  0x000007db 
- 00001165  0x0000065a call  0x00000581 
- 00001166  0x0000065b jam  0x00000001 , 0x00004b60 
- 00001167  0x0000065c call  0x000004f3 
- 00001168  0x0000065d call  0x00000325 
- 00001169  0x0000065e call  0x00003f8d 
- 00001170  0x00000660 setarg  0x00002ee0 
- 00001171  0x00000661 store  0x00000002 , 0x000046b0 
- 00001172  0x00000662 rtn 
- 00001173  0x00000665 call  0x00000498 
- 00001174  0x00000666 jam  0x000000a4 , 0x000011c7 
- 00001175  0x00000667 branch  0x000007db 
- 00001176  0x0000066a fetch  0x00000001 , 0x00004afe 
- 00001177  0x0000066b rtn  0x00000034 
- 00001178  0x0000066c jam  0x00000000 , 0x00004afe 
- 00001179  0x0000066d branch  0x0000035e 
- 00001180  0x00000671 call  0x00000543 
- 00001181  0x00000672 call  0x00000568 
- 00001182  0x00000673 call  0x00000584 
- 00001183  0x00000675 call  0x000004f6 
- 00001184  0x00000676 call  0x000004df 
- 00001185  0x00000677 call  0x000004e8 
- 00001186  0x00000678 call  0x000004e4 
- 00001187  0x00000679 call  0x00004234 
- 00001188  0x0000067a call  0x000004ae 
- 00001189  0x0000067b call  0x000004d8 
- 00001190  0x0000067c call  0x000004c4 
- 00001191  0x0000067d call  0x000004c1 
- 00001192  0x0000067e call  0x000004ca 
- 00001193  0x0000067f call  0x000004d0 
- 00001194  0x00000680 call  0x000004b9 
- 00001195  0x00000681 call  0x00004231 
- 00001196  0x00000682 call  0x000004bc 
- 00001197  0x00000683 branch  0x0000423a 
- 00001198  0x00000687 fetch  0x00000001 , 0x000046f5 
- 00001199  0x00000688 rtnbit0  0x00000006 
- 00001200  0x00000689 fetcht  0x00000001 , 0x000046ed 
- 00001201  0x0000068a call  0x0000681d 
- 00001202  0x0000068b branch  0x000004b6 , 0x00000001 
- 00001203  0x0000068d fetch  0x00000001 , 0x00004720 
- 00001204  0x0000068e bne  0x00000001 , 0x0000659a 
- 00001205  0x0000068f rtn 
- 00001206  0x00000691 fetch  0x00000001 , 0x00004720 
- 00001207  0x00000692 bne  0x00000002 , 0x0000659a 
- 00001208  0x00000693 rtn 
- 00001209  0x00000697 arg  0x00004809 , 0x00000013 
- 00001210  0x00000698 arg  0x0000637a , 0x00000012 
- 00001211  0x00000699 branch  0x0000336d 
- 00001212  0x0000069c arg  0x00004b09 , 0x00000013 
- 00001213  0x0000069d arg  0x000004bf , 0x00000012 
- 00001214  0x0000069e branch  0x0000336d 
- 00001215  0x000006a0 jam  0x00000001 , 0x00004b0a 
- 00001216  0x000006a1 rtn 
- 00001217  0x000006a5 arg  0x000046c6 , 0x00000013 
- 00001218  0x000006a6 arg  0x00003d60 , 0x00000012 
- 00001219  0x000006a7 branch  0x0000336d 
- 00001220  0x000006a9 arg  0x000046ae , 0x00000013 
- 00001221  0x000006aa arg  0x000004c7 , 0x00000012 
- 00001222  0x000006ab branch  0x00003374 
- 00001223  0x000006ae fetch  0x00000001 , 0x00004b2f 
- 00001224  0x000006af nrtn  0x00000034 
- 00001225  0x000006b0 branch  0x00004266 
- 00001226  0x000006b3 arg  0x00004b5b , 0x00000013 
- 00001227  0x000006b4 arg  0x000004cd , 0x00000012 
- 00001228  0x000006b5 branch  0x0000336d 
- 00001229  0x000006b7 fetch  0x00000001 , 0x000047c5 
- 00001230  0x000006b8 store  0x00000001 , 0x00004172 
- 00001231  0x000006b9 branch  0x000004dd 
- 00001232  0x000006bc fetch  0x00000001 , 0x00004b61 
- 00001233  0x000006bd rtn  0x00000034 
- 00001234  0x000006be arg  0x00004b66 , 0x00000013 
- 00001235  0x000006bf arg  0x000004d5 , 0x00000012 
- 00001236  0x000006c0 branch  0x0000336d 
- 00001237  0x000006c2 fetch  0x00000001 , 0x00004b67 
- 00001238  0x000006c3 nrtn  0x00000034 
- 00001239  0x000006c4 branch  0x00005bf5 
- 00001240  0x000006c8 arg  0x00004b5c , 0x00000013 
- 00001241  0x000006c9 arg  0x000004db , 0x00000012 
- 00001242  0x000006ca branch  0x0000336d 
- 00001243  0x000006cc setarg  0x00249f00 
- 00001244  0x000006cd store  0x00000003 , 0x00004c21 
- 00001245  0x000006cf jam  0x00000001 , 0x00004b5a 
- 00001246  0x000006d0 rtn 
- 00001247  0x000006d3 arg  0x00004807 , 0x00000013 
- 00001248  0x000006d4 arg  0x000004e2 , 0x00000012 
- 00001249  0x000006d5 branch  0x0000336d 
- 00001250  0x000006d7 jam  0x00000000 , 0x00004806 
- 00001251  0x000006d8 rtn 
- 00001252  0x000006db fetch  0x00000001 , 0x00004720 
- 00001253  0x000006dc rtneq  0x00000002 
- 00001254  0x000006dd fetch  0x00000001 , 0x000046f5 
- 00001255  0x000006de bbit1  0x00000004 , 0x00004394 
- 00001256  0x0000071f fetch  0x00000001 , 0x00004b2f 
- 00001257  0x00000720 nrtn  0x00000034 
- 00001258  0x00000721 fetch  0x00000001 , 0x0000479d 
- 00001259  0x00000722 rtn  0x00000034 
- 00001260  0x00000723 fetch  0x00000001 , 0x0000479e 
- 00001261  0x00000724 branch  0x000004f1 , 0x00000034 
- 00001262  0x00000725 increase  0xffffffff , 0x0000003f 
- 00001263  0x00000726 store  0x00000001 , 0x0000479e 
- 00001264  0x00000727 rtn 
- 00001265  0x00000729 jam  0x00000000 , 0x0000479d 
- 00001266  0x0000072a branch  0x0000340a 
- 00001267  0x0000072d jam  0x00000000 , 0x0000479d 
- 00001268  0x0000072e jam  0x00000000 , 0x0000479e 
- 00001269  0x0000072f rtn 
- 00001270  0x00000732 fetch  0x00000001 , 0x00004b24 
- 00001271  0x00000733 rtn  0x00000034 
- 00001272  0x00000734 fetch  0x00000001 , 0x00004b27 
- 00001273  0x00000735 beq  0x00000000 , 0x000004fc 
- 00001274  0x00000736 beq  0x00000001 , 0x00000506 
- 00001275  0x00000737 rtn 
- 00001276  0x0000073a call  0x00000516 
- 00001277  0x0000073b fetch  0x00000001 , 0x00004b2d 
- 00001278  0x0000073c increase  0x00000001 , 0x0000003f 
- 00001279  0x0000073d store  0x00000001 , 0x00004b2d 
- 00001280  0x0000073e fetcht  0x00000001 , 0x00004b28 
- 00001281  0x0000073f isub  0x00000002 , 0x0000003e 
- 00001282  0x00000740 call  0x00000504 , 0x00000005 
- 00001283  0x00000741 rtn 
- 00001284  0x00000743 jam  0x00000000 , 0x00004b2f 
- 00001285  0x00000744 branch  0x00000524 
- 00001286  0x00000747 fetch  0x00000001 , 0x00004b2a 
- 00001287  0x00000748 increase  0xffffffff , 0x0000003f 
- 00001288  0x00000749 store  0x00000001 , 0x00004b2a 
- 00001289  0x0000074a nrtn  0x00000034 
- 00001290  0x0000074b fetch  0x00000001 , 0x00004b29 
- 00001291  0x0000074c store  0x00000001 , 0x00004b2a 
- 00001292  0x0000074d fetch  0x00000001 , 0x00004b2e 
- 00001293  0x0000074e branch  0x00000512 , 0x00000034 
- 00001294  0x0000074f fetch  0x00000001 , 0x00004b2b 
- 00001295  0x00000750 branch  0x00000522 , 0x00000034 
- 00001296  0x00000751 increase  0xffffffff , 0x0000003f 
- 00001297  0x00000752 store  0x00000001 , 0x00004b2b 
- 00001298  0x00000754 fetch  0x00000001 , 0x00004b26 
- 00001299  0x00000755 beq  0x00000001 , 0x00000524 
- 00001300  0x00000756 beq  0x00000000 , 0x00000516 
- 00001301  0x00000757 rtn 
- 00001302  0x0000075a jam  0x00000001 , 0x00004b26 
- 00001303  0x0000075b fetch  0x00000001 , 0x00004720 
- 00001304  0x0000075c beq  0x00000002 , 0x0000051e 
- 00001305  0x0000075e fetcht  0x00000001 , 0x00004b25 
- 00001306  0x0000075f set1  0x00000007 , 0x00000002 
- 00001307  0x00000760 call  0x0000680e 
- 00001308  0x00000761 fetcht  0x00000001 , 0x00004b25 
- 00001309  0x00000762 branch  0x00006829 
- 00001310  0x00000764 fetcht  0x00000001 , 0x00004b25 
- 00001311  0x00000765 call  0x0000680e 
- 00001312  0x00000766 fetcht  0x00000001 , 0x00004b25 
- 00001313  0x00000767 branch  0x00006825 
- 00001314  0x0000076a setarg  0x00000000 
- 00001315  0x0000076b store  0x00000003 , 0x00004b2a 
- 00001316  0x0000076d fetch  0x00000001 , 0x00004b2b 
- 00001317  0x0000076e nbranch  0x00000528 , 0x00000034 
- 00001318  0x0000076f jam  0x00000000 , 0x00004b24 
- 00001319  0x00000770 jam  0x00000000 , 0x00004b27 
- 00001320  0x00000772 jam  0x00000000 , 0x00004b2d 
- 00001321  0x00000773 jam  0x00000000 , 0x00004b26 
- 00001322  0x00000774 branch  0x000000ed 
- 00001323  0x00000779 jam  0x00000001 , 0x00004b2f 
- 00001324  0x0000077a jam  0x00000001 , 0x00004b24 
- 00001325  0x0000077b jam  0x00000000 , 0x00004b27 
- 00001326  0x0000077c jam  0x00000000 , 0x00004b2d 
- 00001327  0x0000077d rtn 
- 00001328  0x00000782 jam  0x0000001e , 0x00004b2b 
- 00001329  0x00000783 branch  0x00000540 
- 00001330  0x00000785 jam  0x00000005 , 0x00004b29 
- 00001331  0x00000786 branch  0x00000535 
- 00001332  0x0000078a jam  0x00000003 , 0x00004b29 
- 00001333  0x0000078d jam  0x00000001 , 0x00004b2b 
- 00001334  0x0000078f jam  0x00000001 , 0x00004b2a 
- 00001335  0x00000790 jam  0x00000001 , 0x00004b24 
- 00001336  0x00000791 jam  0x00000001 , 0x00004b27 
- 00001337  0x00000792 rtn 
- 00001338  0x00000795 jam  0x00000000 , 0x00004b2b 
- 00001339  0x00000796 fetch  0x00000001 , 0x00004b2d 
- 00001340  0x00000797 nrtn  0x00000034 
- 00001341  0x00000798 fetch  0x00000001 , 0x00004b2f 
- 00001342  0x00000799 nrtn  0x00000034 
- 00001343  0x0000079a branch  0x00000522 
- 00001344  0x0000079d jam  0x00000005 , 0x00004b29 
- 00001345  0x0000079e jam  0x00000001 , 0x00004b2e 
- 00001346  0x0000079f branch  0x00000536 
- 00001347  0x000007a5 fetch  0x00000001 , 0x000046ce 
- 00001348  0x000007a6 increase  0x00000001 , 0x0000003f 
- 00001349  0x000007a7 store  0x00000001 , 0x000046ce 
- 00001350  0x000007a8 sub  0x0000003f , 0x0000000a , 0x0000003e 
- 00001351  0x000007a9 rtn  0x00000002 
- 00001352  0x000007ab call  0x000068a8 
- 00001353  0x000007ad jam  0x00000000 , 0x000046ce 
- 00001354  0x000007ae call  0x000068eb 
- 00001355  0x000007af call  0x00006908 
- 00001356  0x000007b0 store  0x00000002 , 0x0000470f 
- 00001357  0x000007b1 arg  0x00004709 , 0x00000011 
- 00001358  0x000007b2 call  0x0000055b 
- 00001359  0x000007b3 fetch  0x00000001 , 0x00004231 
- 00001360  0x000007b4 bbit1  0x00000001 , 0x0000340a 
- 00001361  0x000007b5 bbit0  0x00000000 , 0x00000554 
- 00001362  0x000007b6 jam  0x00000001 , 0x00004afd 
- 00001363  0x000007b7 branch  0x000043e7 
- 00001364  0x000007ba call  0x000043e9 
- 00001365  0x000007bb fetch  0x00000001 , 0x00004afd 
- 00001366  0x000007bc rtn  0x00000034 
- 00001367  0x000007bd jam  0x00000000 , 0x00004afd 
- 00001368  0x000007bf fetch  0x00000001 , 0x000046ef 
- 00001369  0x000007c0 store  0x00000001 , 0x00004715 
- 00001370  0x000007c2 branch  0x00000522 
- 00001371  0x000007d3 ifetch  0x00000008 , 0x00000011 
- 00001372  0x000007d4 store  0x00000008 , 0x00000a9a 
- 00001373  0x000007d5 fetcht  0x00000002 , 0x00000a9c 
- 00001374  0x000007d6 fetch  0x00000002 , 0x00000aa0 
- 00001375  0x000007d7 isub  0x00000002 , 0x0000003e 
- 00001376  0x000007d8 nbranch  0x00006944 , 0x00000002 
- 00001377  0x000007d9 fetcht  0x00000002 , 0x00000a9e 
- 00001378  0x000007da isub  0x00000002 , 0x0000003e 
- 00001379  0x000007db nbranch  0x00006940 , 0x00000002 
- 00001380  0x000007dd fetch  0x00000001 , 0x00004231 
- 00001381  0x000007de set0  0x00000000 , 0x0000003f 
- 00001382  0x000007df store  0x00000001 , 0x00004231 
- 00001383  0x000007e0 rtn 
- 00001384  0x000007e3 fetch  0x00000001 , 0x00004b38 
- 00001385  0x000007e4 nrtn  0x00000034 
- 00001386  0x000007e5 fetch  0x00000004 , 0x000046d3 
- 00001387  0x000007e6 rtnbit0  0x00000004 
- 00001388  0x000007e7 fetch  0x00000002 , 0x00004682 
- 00001389  0x000007e8 rtnbit1  0x0000000b 
- 00001390  0x000007e9 rtnbit1  0x00000006 
- 00001391  0x000007ea fetch  0x00000001 , 0x000046ef 
- 00001392  0x000007eb store  0x00000001 , 0x00004715 
- 00001393  0x000007ed setarg  0x00249f00 
- 00001394  0x000007ee store  0x00000003 , 0x00004c21 
- 00001395  0x000007f0 fetch  0x00000001 , 0x000046cf 
- 00001396  0x000007f1 pincrease  0x00000001 
- 00001397  0x000007f2 store  0x00000001 , 0x000046cf 
- 00001398  0x000007f4 beq  0x00000005 , 0x00000522 
- 00001399  0x000007f5 sub  0x0000003f , 0x0000000a , 0x0000003e 
- 00001400  0x000007f6 nbranch  0x0000057a , 0x00000002 
- 00001401  0x000007f7 rtn 
- 00001402  0x000007f9 jam  0x00000001 , 0x000046cf 
- 00001403  0x000007fb branch  0x00000516 
- 00001404  0x000007fe fetch  0x00000001 , 0x00004b37 
- 00001405  0x000007ff increase  0x00000001 , 0x0000003f 
- 00001406  0x00000800 store  0x00000001 , 0x00004b37 
- 00001407  0x00000801 sub  0x0000003f , 0x00000008 , 0x0000003e 
- 00001408  0x00000802 rtn  0x00000002 
- 00001409  0x00000804 jam  0x00000000 , 0x00004b38 
- 00001410  0x00000805 jam  0x00000096 , 0x00004b36 
- 00001411  0x00000806 rtn 
- 00001412  0x00000808 arg  0x00004b36 , 0x00000013 
- 00001413  0x00000809 arg  0x00000587 , 0x00000012 
- 00001414  0x0000080a branch  0x0000336d 
- 00001415  0x0000080c setarg  0x00604800 
- 00001416  0x0000080d store  0x00000003 , 0x00004c21 
- 00001417  0x0000080e jam  0x00000001 , 0x00004b38 
- 00001418  0x0000080f branch  0x00000558 
- 00001419  0x00000813 fetch  0x00000001 , 0x000046e0 
- 00001420  0x00000814 beq  0x00000008 , 0x000005a1 
- 00001421  0x00000815 beq  0x00000004 , 0x000005a8 
- 00001422  0x00000816 beq  0x00000002 , 0x000005ad 
- 00001423  0x00000825 fetch  0x00000001 , 0x0000477a 
- 00001424  0x00000826 beq  0x00000000 , 0x00000597 
- 00001425  0x00000827 beq  0x00000001 , 0x00000599 
- 00001426  0x00000828 beq  0x00000002 , 0x0000059b 
- 00001427  0x00000829 beq  0x00000003 , 0x0000059d 
- 00001428  0x0000082a rtn 
- 00001429  0x0000082e store  0x00000001 , 0x000046b5 
- 00001430  0x0000082f branch  0x00003dc1 
- 00001431  0x00000831 fetch  0x00000001 , 0x0000477f 
- 00001432  0x00000832 branch  0x00000595 
- 00001433  0x00000834 fetch  0x00000001 , 0x0000477f 
- 00001434  0x00000835 branch  0x00000595 
- 00001435  0x00000837 fetch  0x00000001 , 0x0000477f 
- 00001436  0x00000838 branch  0x00000595 
- 00001437  0x0000083a fetch  0x00000001 , 0x00004782 
- 00001438  0x0000083b branch  0x00000595 
- 00001439  0x0000083e jam  0x00000002 , 0x0000477a 
- 00001440  0x0000083f rtn 
- 00001441  0x00000843 fetch  0x00000001 , 0x0000477a 
- 00001442  0x00000844 beq  0x00000001 , 0x000005a6 
- 00001443  0x00000845 beq  0x00000003 , 0x00003d88 
- 00001444  0x00000846 beq  0x00000002 , 0x00003d8c 
- 00001445  0x00000847 branch  0x00003d8a 
- 00001446  0x00000849 jam  0x00000000 , 0x000046b5 
- 00001447  0x0000084a branch  0x00003dc1 
- 00001448  0x00000850 fetch  0x00000001 , 0x0000477a 
- 00001449  0x00000851 beq  0x00000000 , 0x00003d9d 
- 00001450  0x00000852 beq  0x00000001 , 0x00003d9b 
- 00001451  0x00000853 beq  0x00000003 , 0x00003da1 
- 00001452  0x00000854 branch  0x00003d9f 
- 00001453  0x00000859 fetch  0x00000001 , 0x0000477a 
- 00001454  0x0000085a beq  0x00000001 , 0x00003d88 
- 00001455  0x0000085b beq  0x00000000 , 0x00003d8a 
- 00001456  0x0000085c beq  0x00000003 , 0x000005b2 
- 00001457  0x0000085d branch  0x00003d8e 
- 00001458  0x0000085f setarg  0x00000005 
- 00001459  0x00000860 branch  0x00003dbe 
- 00001460  0x00000863 jam  0x00000002 , 0x0000477a 
- 00001461  0x00000864 rtn 
- 00001462  0x00000867 disable  0x00000028 
- 00001463  0x00000868 setarg  0x00000000 
- 00001464  0x00000869 store  0x00000006 , 0x0000469b 
- 00001465  0x0000086a call  0x00003fb5 
- 00001466  0x0000086b call  0x00004079 
- 00001467  0x0000086c call  0x0000407e 
- 00001468  0x0000086d call  0x000005c2 
- 00001469  0x0000086e nbranch  0x000005c0 , 0x00000028 
- 00001470  0x0000086f call  0x0000057c 
- 00001471  0x00000870 branch  0x00003fa0 
- 00001472  0x00000873 jam  0x00000000 , 0x00004b37 
- 00001473  0x00000874 rtn 
- 00001474  0x00000877 call  0x000005c4 
- 00001475  0x00000878 branch  0x0000409a 
- 00001476  0x0000087b arg  0x00000000 , 0x00000011 
- 00001477  0x0000087c call  0x000005c9 
- 00001478  0x0000087d call  0x000005cf 
- 00001479  0x0000087e call  0x000005d5 
- 00001480  0x00000880 branch  0x0000408e 
- 00001481  0x00000888 fetcht  0x00000001 , 0x000046e2 
- 00001482  0x00000889 call  0x000005e4 
- 00001483  0x0000088a fetcht  0x00000001 , 0x000046e2 
- 00001484  0x0000088b call  0x0000681d 
- 00001485  0x0000088c setflag  0x00000001 , 0x00000000 , 0x00000011 
- 00001486  0x0000088d rtn 
- 00001487  0x0000088f fetcht  0x00000001 , 0x000046e3 
- 00001488  0x00000890 call  0x000005e4 
- 00001489  0x00000891 fetcht  0x00000001 , 0x000046e3 
- 00001490  0x00000892 call  0x0000681d 
- 00001491  0x00000893 setflag  0x00000001 , 0x00000001 , 0x00000011 
- 00001492  0x00000894 rtn 
- 00001493  0x00000896 fetcht  0x00000001 , 0x000046e4 
- 00001494  0x00000897 call  0x000005e4 
- 00001495  0x00000898 fetcht  0x00000001 , 0x000046e4 
- 00001496  0x00000899 call  0x0000681d 
- 00001497  0x0000089a setflag  0x00000001 , 0x00000002 , 0x00000011 
- 00001498  0x0000089b rtn 
- 00001499  0x000008ac set0  0x00000007 , 0x00000002 
- 00001500  0x000008ad arg  0x00008078 , 0x00000005 
- 00001501  0x000008ae call  0x00006830 
- 00001502  0x000008af set1  0x00000007 , 0x00000002 
- 00001503  0x000008b1 arg  0x0000807c , 0x00000005 
- 00001504  0x000008b2 call  0x00006830 
- 00001505  0x000008b3 set0  0x00000007 , 0x00000002 
- 00001506  0x000008b4 arg  0x00008070 , 0x00000005 
- 00001507  0x000008b5 branch  0x00006830 
- 00001508  0x000008b8 set1  0x00000007 , 0x00000002 
- 00001509  0x000008ba arg  0x00008078 , 0x00000005 
- 00001510  0x000008bb call  0x00006830 
- 00001511  0x000008bc set0  0x00000007 , 0x00000002 
- 00001512  0x000008bd branch  0x000005df 
- 00001513  0x000008c0 fetcht  0x00000001 , 0x000046ed 
- 00001514  0x000008c2 set0  0x00000007 , 0x00000002 
- 00001515  0x000008c3 branch  0x000005e5 
- 00001516  0x000008c6 call  0x000004f3 
- 00001517  0x000008c7 isolate1  0x00000026 , 0x00000000 
- 00001518  0x000008c8 call  0x000001ef , 0x00000001 
- 00001519  0x000008c9 branch  0x0000426d 
- 00001520  0x000008cc jam  0x00000081 , 0x000011c7 
- 00001521  0x000008cd branch  0x000007db 
- 00001522  0x000008d0 jam  0x00000050 , 0x000011c7 
- 00001523  0x000008d1 branch  0x000007db 
- 00001524  0x000008d4 call  0x000003c4 
- 00001525  0x000008d5 arg  0x00000002 , 0x00000002 
- 00001526  0x000008d6 arg  0x000047c2 , 0x00000011 
- 00001527  0x000008d7 arg  0x0000005f , 0x00000012 
- 00001528  0x000008d8 fetch  0x00000003 , 0x00004700 
- 00001529  0x000008d9 iadd  0x00000012 , 0x0000003f 
- 00001530  0x000008da branch  0x00006562 
- 00001531  0x000008dd arg  0x0000437b , 0x00000005 
- 00001532  0x000008de arg  0x00000013 , 0x00000039 
- 00001533  0x000008df call  0x00007f01 
- 00001534  0x000008e0 branch  0x000057b8 
- 00001535  0x000008e3 setarg  0x00000000 
- 00001536  0x000008e4 store  0x00000002 , 0x000046ac 
- 00001537  0x000008e5 call  0x00000354 
- 00001538  0x000008e9 fetch  0x00000001 , 0x00004092 
- 00001539  0x000008ea isolate1  0x00000000 , 0x0000003f 
- 00001540  0x000008eb call  0x000042d7 , 0x00000001 
- 00001541  0x000008ee branch  0x0000053a 
- 00001542  0x000008f2 fetch  0x00000001 , 0x0000450f 
- 00001543  0x000008f3 pincrease  0x00000001 
- 00001544  0x000008f4 store  0x00000001 , 0x0000450f 
- 00001545  0x000008f5 beq  0x0000000c , 0x00005395 
- 00001546  0x000008f6 call  0x000055aa 
- 00001547  0x000008f7 call  0x0000561e 
- 00001548  0x000008f8 call  0x0000077e 
- 00001549  0x000008f9 branch  0x0000538f 
- 00001550  0x000008fc fetch  0x00000001 , 0x00000016 
- 00001551  0x000008fd increase  0x00000001 , 0x0000003f 
- 00001552  0x000008fe store  0x00000001 , 0x00000016 
- 00001553  0x000008ff rtnne  0x00000028 
- 00001554  0x00000900 jam  0x00000025 , 0x00000016 
- 00001555  0x00000901 rtn 
- 00001556  0x00000904 call  0x000029bb 
- 00001557  0x00000905 call  0x0000006b 
- 00001558  0x00000906 branch  0x000054a3 
- 00001559  0x00000909 jam  0x00000040 , 0x000011c7 
- 00001560  0x0000090a branch  0x000007db 
- 00001561  0x0000090d jam  0x00000041 , 0x000011c7 
- 00001562  0x0000090e branch  0x000007db 
- 00001563  0x00000911 fetch  0x00000001 , 0x00000456 
- 00001564  0x00000912 bbit1  0x00000005 , 0x0000062f 
- 00001565  0x00000913 call  0x00000770 
- 00001566  0x00000914 fetch  0x00000001 , 0x0000478e 
- 00001567  0x00000915 nbranch  0x00000625 , 0x00000034 
- 00001568  0x00000916 fetch  0x00000001 , 0x0000043f 
- 00001569  0x00000917 bbit0  0x00000004 , 0x00000629 
- 00001570  0x00000918 fetch  0x00000001 , 0x000002da 
- 00001571  0x00000919 branch  0x00000629 , 0x00000034 
- 00001572  0x0000091a branch  0x00005664 
- 00001573  0x0000091c fetch  0x00000001 , 0x0000478e 
- 00001574  0x0000091d increase  0xffffffff , 0x0000003f 
- 00001575  0x0000091e store  0x00000001 , 0x0000478e 
- 00001576  0x0000091f branch  0x00005664 
- 00001577  0x00000921 fetch  0x00000001 , 0x000044c4 
- 00001578  0x00000922 bne  0x00000005 , 0x0000062c 
- 00001579  0x00000923 jam  0x00000003 , 0x0000478e 
- 00001580  0x00000925 call  0x00005892 
- 00001581  0x00000926 call  0x00000405 , 0x00000034 
- 00001582  0x00000927 branch  0x00005622 
- 00001583  0x0000092a call  0x00000631 
- 00001584  0x0000092b branch  0x0000063d 
- 00001585  0x0000092e fetch  0x00000001 , 0x000046c5 
- 00001586  0x0000092f and  0x0000003f , 0x00000003 , 0x0000003f 
- 00001587  0x00000930 rtnne  0x00000003 
- 00001588  0x00000931 fetch  0x00000001 , 0x000047c1 
- 00001589  0x00000932 rtn  0x00000034 
- 00001590  0x00000933 fetch  0x00000001 , 0x000043dd 
- 00001591  0x00000934 rtn  0x00000034 
- 00001592  0x00000935 fetch  0x00000001 , 0x000043dc 
- 00001593  0x00000936 set1  0x00000004 , 0x0000003f 
- 00001594  0x00000937 store  0x00000001 , 0x000043dc 
- 00001595  0x00000938 call  0x00005650 
- 00001596  0x00000939 rtn 
- 00001597  0x0000093e branch  0x00000774 
- 00001598  0x00000941 fetch  0x00000001 , 0x0000479f 
- 00001599  0x00000942 rtn  0x00000034 
- 00001600  0x00000943 fetch  0x00000001 , 0x000046c5 
- 00001601  0x00000944 and  0x0000003f , 0x00000003 , 0x0000003f 
- 00001602  0x00000945 rtneq  0x00000003 
- 00001603  0x00000946 jam  0x00000001 , 0x000046c6 
- 00001604  0x00000947 rtn 
- 00001605  0x0000094a rtnmark1  0x0000000f 
- 00001606  0x0000094b call  0x00005890 
- 00001607  0x0000094c nrtn  0x00000034 
- 00001608  0x0000094d fetch  0x00000001 , 0x000002d9 
- 00001609  0x0000094e and  0x0000003f , 0x00000003 , 0x0000003f 
- 00001610  0x0000094f store  0x00000001 , 0x0000450c 
- 00001611  0x00000950 ifetch  0x00000001 , 0x00000006 
- 00001612  0x00000951 and  0x0000003f , 0x0000001f , 0x0000003f 
- 00001613  0x00000952 store  0x00000001 , 0x0000450b 
- 00001614  0x00000953 rtn  0x00000034 
- 00001615  0x00000954 copy  0x00000006 , 0x0000003f 
- 00001616  0x00000955 store  0x00000002 , 0x0000450d 
- 00001617  0x00000956 fetch  0x00000001 , 0x0000450c 
- 00001618  0x00000957 beq  0x00000003 , 0x00000654 
- 00001619  0x00000958 branch  0x0000568d 
- 00001620  0x0000095a fetch  0x00000001 , 0x000002db 
- 00001621  0x0000095b beq  0x00000001 , 0x00000657 
- 00001622  0x0000095c branch  0x00005c65 
- 00001623  0x0000095e ifetch  0x00000005 , 0x00000006 
- 00001624  0x0000095f store  0x00000005 , 0x000043ce 
- 00001625  0x00000960 ifetch  0x00000002 , 0x00000006 
- 00001626  0x00000961 store  0x00000002 , 0x0000045f 
- 00001627  0x00000962 branch  0x00005c8a 
- 00001628  0x00000966 fetch  0x00000001 , 0x000043d8 
- 00001629  0x00000967 store  0x00000001 , 0x00004172 
- 00001630  0x00000968 store  0x00000001 , 0x000047c5 
- 00001631  0x00000969 rtn 
- 00001632  0x0000096b ifetch  0x00000002 , 0x00000006 
- 00001633  0x0000096c beq  0x00000004 , 0x00000664 
- 00001634  0x0000096d beq  0x00000006 , 0x00000691 
- 00001635  0x0000096e branch  0x00005698 
- 00001636  0x00000970 call  0x00007ea5 
- 00001637  0x00000971 call  0x0000063e 
- 00001638  0x00000972 call  0x00007e9f 
- 00001639  0x00000973 ifetch  0x00000003 , 0x00000006 
- 00001640  0x00000974 store  0x00000003 , 0x00000477 
- 00001641  0x00000975 beq  0x00000010 , 0x00000673 
- 00001642  0x00000976 rshift8  0x0000003f , 0x00000002 
- 00001643  0x00000977 sub  0x00000002 , 0x00000024 , 0x0000003e 
- 00001644  0x00000978 branch  0x00000681 , 0x00000002 
- 00001645  0x00000979 arg  0x000047c6 , 0x00000002 
- 00001646  0x0000097a storet  0x00000002 , 0x000044bc 
- 00001647  0x0000097b call  0x000058ad 
- 00001648  0x0000097c setarg  0x00008e7a 
- 00001649  0x0000097d store  0x00000002 , 0x000044bc 
- 00001650  0x0000097e rtn 
- 00001651  0x00000981 call  0x000059fa 
- 00001652  0x00000982 call  0x00005879 
- 00001653  0x00000983 increase  0x00000007 , 0x00000006 
- 00001654  0x00000984 ifetch  0x00000001 , 0x00000006 
- 00001655  0x00000985 rtnne  0x00000011 
- 00001656  0x00000986 increase  0x00000005 , 0x00000006 
- 00001657  0x00000987 ifetch  0x00000002 , 0x00000006 
- 00001658  0x00000988 arg  0x00001812 , 0x00000002 
- 00001659  0x00000989 isub  0x00000002 , 0x0000003e 
- 00001660  0x0000098a nrtn  0x00000005 
- 00001661  0x0000098b increase  0xfffffffc , 0x00000006 
- 00001662  0x0000098c setarg  0x0000002b 
- 00001663  0x0000098d istore  0x00000002 , 0x00000006 
- 00001664  0x0000098e rtn 
- 00001665  0x00000991 beq  0x0000000a , 0x00000683 
- 00001666  0x00000992 branch  0x000058ad 
- 00001667  0x00000994 fetcht  0x00000002 , 0x00000478 
- 00001668  0x00000995 fetch  0x00000001 , 0x000044e9 
- 00001669  0x00000996 bbit1  0x00000003 , 0x0000068a 
- 00001670  0x000009a0 fetch  0x00000002 , 0x00000478 
- 00001671  0x000009a1 beq  0x00000013 , 0x00005a76 
- 00001672  0x000009a3 fetcht  0x00000002 , 0x00000478 
- 00001673  0x000009a4 branch  0x000059bf 
- 00001674  0x000009b3 fetch  0x00000002 , 0x000044fa 
- 00001675  0x000009b4 isub  0x00000002 , 0x0000003e 
- 00001676  0x000009b5 nbranch  0x00000686 , 0x00000005 
- 00001677  0x000009b6 call  0x00005a42 
- 00001678  0x000009b7 nbranch  0x00000686 , 0x00000028 
- 00001679  0x000009b8 jam  0x00000005 , 0x0000047a 
- 00001680  0x000009b9 branch  0x00005a77 
- 00001681  0x000009bd ifetch  0x00000001 , 0x00000006 
- 00001682  0x000009be beq  0x00000001 , 0x00000695 
- 00001683  0x000009bf beq  0x00000005 , 0x00000697 
- 00001684  0x000009c0 branch  0x00005af6 
- 00001685  0x000009c3 jam  0x00000001 , 0x00004b67 
- 00001686  0x000009c4 branch  0x00005b09 
- 00001687  0x000009c7 jam  0x00000082 , 0x000011c7 
- 00001688  0x000009c8 branch  0x000007db 
- 00001689  0x000009cb fetch  0x00000001 , 0x00000016 
- 00001690  0x000009cc bne  0x00000027 , 0x000056f2 
- 00001691  0x000009cd call  0x0000069f 
- 00001692  0x000009ce arg  0x00000000 , 0x00000007 
- 00001693  0x000009cf fetch  0x00000002 , 0x00004482 
- 00001694  0x000009d0 branch  0x00007f08 
- 00001695  0x000009d2 random  0x0000003f 
- 00001696  0x000009d3 arg  0x000001ff , 0x00000002 
- 00001697  0x000009d4 iand  0x00000002 , 0x0000003f 
- 00001698  0x000009d5 add  0x0000003f , 0x000000fa , 0x0000003f 
- 00001699  0x000009d6 branch  0x00003cbe 
- 00001700  0x000009d9 disable  0x0000002b 
- 00001701  0x000009da branch  0x000006a7 , 0x0000002e 
- 00001702  0x000009db nbranch  0x00005806 , 0x0000002d 
- 00001703  0x000009dd call  0x00002bcb 
- 00001704  0x000009de fetch  0x00000002 , 0x000040c1 
- 00001705  0x000009df store  0x00000002 , 0x0000044d 
- 00001706  0x000009e0 fetch  0x00000001 , 0x000046c5 
- 00001707  0x000009e1 compare  0x00000003 , 0x0000003f , 0x00000003 
- 00001708  0x000009e2 nbranch  0x00002bde , 0x00000001 
- 00001709  0x000009e3 branch  0x000057fb 
- 00001710  0x000009e6 fetch  0x00000001 , 0x0000479f 
- 00001711  0x000009e7 nrtn  0x00000034 
- 00001712  0x000009e8 fetch  0x00000001 , 0x00000478 
- 00001713  0x000009e9 sub  0x0000003f , 0x0000001a , 0x0000003f 
- 00001714  0x000009ea nrtn  0x00000005 
- 00001715  0x000009eb branch  0x00003d60 
- 00001716  0x000009ee hfetch  0x00000001 , 0x00008077 
- 00001717  0x000009ef and_into  0x000000fd , 0x0000003f 
- 00001718  0x000009f0 hstore  0x00000001 , 0x00008077 
- 00001719  0x000009f1 hfetcht  0x00000001 , 0x00008073 
- 00001720  0x000009f2 or_into  0x00000002 , 0x00000002 
- 00001721  0x000009f3 hstoret  0x00000001 , 0x00008073 
- 00001722  0x000009f4 call  0x000063ee 
- 00001723  0x000009f5 and_into  0x000000fd , 0x00000002 
- 00001724  0x000009f6 nop  0x0000000d 
- 00001725  0x000009f7 call  0x000006c1 
- 00001726  0x000009f8 hstoret  0x00000001 , 0x00008073 
- 00001727  0x000009f9 rtn 
- 00001728  0x000009fc call  0x000064dd 
- 00001729  0x000009fe hfetch  0x00000001 , 0x00008081 
- 00001730  0x000009ff set1  0x00000000 , 0x0000003f 
- 00001731  0x00000a00 set0  0x00000001 , 0x0000003f 
- 00001732  0x00000a01 set0  0x00000003 , 0x0000003f 
- 00001733  0x00000a02 hstore  0x00000001 , 0x00008081 
- 00001734  0x00000a03 rtn 
- 00001735  0x00000a07 jam  0x00000000 , 0x000011c7 
- 00001736  0x00000a08 branch  0x000007db 
- 00001737  0x00000a0b call  0x000021c9 
- 00001738  0x00000a0c nrtn  0x00000028 
- 00001739  0x00000a0e disable  0x00000028 
- 00001740  0x00000a0f jam  0x00000020 , 0x00000011 
- 00001741  0x00000a10 set0  0x0000000b , 0x00000000 
- 00001742  0x00000a11 set0  0x0000002d , 0x00000000 
- 00001743  0x00000a13 call  0x00002a4f 
- 00001744  0x00000a14 call  0x000022e6 
- 00001745  0x00000a15 bmark1  0x0000000b , 0x000006d6 
- 00001746  0x00000a16 call  0x00002455 
- 00001747  0x00000a17 nbranch  0x000006cf , 0x00000034 
- 00001748  0x00000a18 bmark1  0x0000002d , 0x000006df 
- 00001749  0x00000a19 branch  0x000021ec 
- 00001750  0x00000a1c call  0x00002a4d 
- 00001751  0x00000a1d arg  0x00000010 , 0x00000001 
- 00001752  0x00000a1e call  0x000022dc 
- 00001753  0x00000a1f set1  0x0000002d , 0x00000000 
- 00001754  0x00000a20 set0  0x0000000b , 0x00000000 
- 00001755  0x00000a21 fetch  0x00000001 , 0x00000077 
- 00001756  0x00000a22 iforce  0x00000004 
- 00001757  0x00000a23 jam  0x00000002 , 0x00000011 
- 00001758  0x00000a24 branch  0x000006cf 
- 00001759  0x00000a27 fetch  0x00000004 , 0x00000165 
- 00001760  0x00000a28 pincrease  0x00000008 
- 00001761  0x00000a29 store  0x00000004 , 0x00000165 
- 00001762  0x00000a2a branch  0x000021f8 
- 00001763  0x00000a2d bmark1  0x0000002c , 0x0000264d 
- 00001764  0x00000a2e branch  0x0000258f 
- 00001765  0x00000a31 call  0x000033af 
- 00001766  0x00000a32 call  0x000026e9 
- 00001767  0x00000a33 jam  0x00000002 , 0x00000a99 
- 00001768  0x00000a34 call  0x00007d86 
- 00001769  0x00000a35 call  0x00005cf7 
- 00001770  0x00000a36 call  0x00004d6b 
- 00001771  0x00000a37 branch  0x0000246e 
- 00001772  0x00000a3a fetch  0x00000001 , 0x00000030 
- 00001773  0x00000a3b isolate1  0x00000000 , 0x0000003f 
- 00001774  0x00000a3c call  0x000006f0 , 0x00000001 
- 00001775  0x00000a3d branch  0x0000248a 
- 00001776  0x00000a3f fetch  0x00000001 , 0x00000047 
- 00001777  0x00000a40 isolate1  0x00000003 , 0x0000003f 
- 00001778  0x00000a41 call  0x00000774 , 0x00000001 
- 00001779  0x00000a42 ncall  0x00000770 , 0x00000001 
- 00001780  0x00000a43 branch  0x0000077e 
- 00001781  0x00000a46 call  0x000024f0 
- 00001782  0x00000a47 nbranch  0x000028f9 , 0x00000018 
- 00001783  0x00000a48 call  0x000029bb 
- 00001784  0x00000a49 call  0x0000006b 
- 00001785  0x00000a4a branch  0x00002518 
- 00001786  0x00000a4d rtnmark1  0x00000026 
- 00001787  0x00000a4e call  0x00002afa 
- 00001788  0x00000a4f fetch  0x00000003 , 0x0000416f 
- 00001789  0x00000a50 rtn  0x00000034 
- 00001790  0x00000a51 fetch  0x00000001 , 0x00004091 
- 00001791  0x00000a52 rtn  0x00000034 
- 00001792  0x00000a53 fetch  0x00000001 , 0x0000465a 
- 00001793  0x00000a54 branch  0x00000704 , 0x00000034 
- 00001794  0x00000a55 fetch  0x00000001 , 0x000045b1 
- 00001795  0x00000a56 rtn  0x00000034 
- 00001796  0x00000a58 fetch  0x00000001 , 0x000044c0 
- 00001797  0x00000a59 nrtn  0x00000034 
- 00001798  0x00000a5a call  0x00002c3a 
- 00001799  0x00000a5b nrtn  0x00000034 
- 00001800  0x00000a5c fetch  0x00000001 , 0x00004040 
- 00001801  0x00000a5d compare  0x00000003 , 0x0000003f , 0x00000007 
- 00001802  0x00000a5e nbranch  0x00002b9d , 0x00000001 
- 00001803  0x00000a5f fetch  0x00000002 , 0x00004042 
- 00001804  0x00000a60 arg  0x0000ffff , 0x00000002 
- 00001805  0x00000a61 isub  0x00000002 , 0x0000003e 
- 00001806  0x00000a62 rtn  0x00000005 
- 00001807  0x00000a63 branch  0x00002b7d 
- 00001808  0x00000a66 disable  0x0000002b 
- 00001809  0x00000a67 fetch  0x00000001 , 0x00000030 
- 00001810  0x00000a68 rtnbit0  0x00000001 
- 00001811  0x00000a69 nbranch  0x00002bd0 , 0x0000002d 
- 00001812  0x00000a6a call  0x00002bcb 
- 00001813  0x00000a6b fetch  0x00000002 , 0x000040c1 
- 00001814  0x00000a6c store  0x00000002 , 0x0000003e 
- 00001815  0x00000a6d fetch  0x00000001 , 0x00000047 
- 00001816  0x00000a6e bbit1  0x00000003 , 0x00002bde 
- 00001817  0x00000a6f bmark0  0x0000000d , 0x00002bde 
- 00001818  0x00000a70 call  0x00005274 
- 00001819  0x00000a71 nbranch  0x00002bde , 0x00000034 
- 00001820  0x00000a72 call  0x0000071e , 0x00000034 
- 00001821  0x00000a73 branch  0x00002bbe 
- 00001822  0x00000a75 jam  0x00000001 , 0x0000008a 
- 00001823  0x00000a76 jam  0x00000000 , 0x0000008b 
- 00001824  0x00000a77 rtn 
- 00001825  0x00000a7a jam  0x00000010 , 0x000011c7 
- 00001826  0x00000a7b branch  0x000007db 
- 00001827  0x00000a7e jam  0x00000011 , 0x000011c7 
- 00001828  0x00000a7f branch  0x000007db 
- 00001829  0x00000a82 fetch  0x00000001 , 0x00000552 
- 00001830  0x00000a83 store  0x00000001 , 0x000004c9 
- 00001831  0x00000a84 beq  0x00000013 , 0x00000729 
- 00001832  0x00000a85 branch  0x00005db4 
- 00001833  0x00000a87 call  0x00005dcf 
- 00001834  0x00000a88 jam  0x00000001 , 0x00004aff 
- 00001835  0x00000a89 fetch  0x00000001 , 0x00004b01 
- 00001836  0x00000a8a rtn  0x00000034 
- 00001837  0x00000a8b jam  0x00000002 , 0x00004b01 
- 00001838  0x00000a8c rtn 
- 00001839  0x00000a8f jam  0x00000020 , 0x000011c7 
- 00001840  0x00000a90 branch  0x000007db 
- 00001841  0x00000a93 call  0x000062bc 
- 00001842  0x00000a94 nrtn  0x00000034 
- 00001843  0x00000a96 fetch  0x00000001 , 0x00000055 
- 00001844  0x00000a97 rtn  0x00000034 
- 00001845  0x00000a98 beq  0x00000004 , 0x00000753 
- 00001846  0x00000a99 beq  0x00000010 , 0x00000738 
- 00001847  0x00000a9a branch  0x00006320 
- 00001848  0x00000a9d fetch  0x00000001 , 0x0000455b 
- 00001849  0x00000a9e rtneq  0x00000000 
- 00001850  0x00000a9f beq  0x00000001 , 0x0000073c 
- 00001851  0x00000aa0 branch  0x0000635f 
- 00001852  0x00000aa2 rtn  0x00000029 
- 00001853  0x00000aa5 fetch  0x00000001 , 0x0000016d 
- 00001854  0x00000aa6 bbit1  0x00000000 , 0x00000740 
- 00001855  0x00000aa7 branch  0x00006399 
- 00001856  0x00000aa9 fetch  0x00000001 , 0x00004b01 
- 00001857  0x00000aaa beq  0x00000001 , 0x0000639d 
- 00001858  0x00000aac fetch  0x00000001 , 0x000041bd 
- 00001859  0x00000aad branch  0x000063a9 , 0x00000034 
- 00001860  0x00000aae fetch  0x00000001 , 0x000004d1 
- 00001861  0x00000aaf rtnbit0  0x00000003 
- 00001862  0x00000ab0 rtnbit0  0x00000002 
- 00001863  0x00000ab1 fetch  0x00000001 , 0x00004b00 
- 00001864  0x00000ab2 rtn  0x00000034 
- 00001865  0x00000ab3 jam  0x00000000 , 0x00004b00 
- 00001866  0x00000ab4 fetch  0x00000004 , 0x000004e9 
- 00001867  0x00000ab5 arg  0x00000014 , 0x00000002 
- 00001868  0x00000ab6 iadd  0x00000002 , 0x00000002 
- 00001869  0x00000ab7 copy  0x00000022 , 0x0000003f 
- 00001870  0x00000ab8 isub  0x00000002 , 0x0000003e 
- 00001871  0x00000ab9 nbranch  0x00000751 , 0x00000002 
- 00001872  0x00000aba branch  0x00006349 
- 00001873  0x00000abd jam  0x00000001 , 0x00004b00 
- 00001874  0x00000abe rtn 
- 00001875  0x00000ac1 jam  0x00000014 , 0x00004809 
- 00001876  0x00000ac2 branch  0x0000636f 
- 00001877  0x00000ac9 call  0x000062bc 
- 00001878  0x00000aca nbranch  0x00007ddb , 0x00000034 
- 00001879  0x00000acb fetch  0x00000001 , 0x00000a99 
- 00001880  0x00000acc bmark0  0x00000009 , 0x00007dd6 
- 00001881  0x00000acd beq  0x0000001f , 0x0000075d 
- 00001882  0x00000ace beq  0x00000020 , 0x00000760 
- 00001883  0x00000acf beq  0x00000012 , 0x0000076a 
- 00001884  0x00000ad0 branch  0x00007dca 
- 00001885  0x00000ad3 jam  0x00000034 , 0x00000185 
- 00001886  0x00000ad4 fetch  0x00000006 , 0x0000044f 
- 00001887  0x00000ad5 branch  0x00000762 
- 00001888  0x00000ad7 jam  0x00000033 , 0x00000185 
- 00001889  0x00000ad8 fetch  0x00000006 , 0x00000040 
- 00001890  0x00000ada store  0x00000006 , 0x00000186 
- 00001891  0x00000adc fetch  0x00000004 , 0x000046d3 
- 00001892  0x00000add rtnbit0  0x00000007 
- 00001893  0x00000ade arg  0x00000007 , 0x00000007 
- 00001894  0x00000adf call  0x000043d2 
- 00001895  0x00000ae0 call  0x000042e8 
- 00001896  0x00000ae2 call  0x000042fb 
- 00001897  0x00000ae3 branch  0x00000381 
- 00001898  0x00000ae6 call  0x00005890 
- 00001899  0x00000ae7 nrtn  0x00000034 
- 00001900  0x00000ae8 branch  0x00005abf 
- 00001901  0x00000aeb jam  0x00000001 , 0x00004d2e 
- 00001902  0x00000aec jam  0x00000000 , 0x00004d2b 
- 00001903  0x00000aed rtn 
- 00001904  0x00000aef fetch  0x00000001 , 0x00004d2b 
- 00001905  0x00000af0 increase  0x00000001 , 0x0000003f 
- 00001906  0x00000af1 store  0x00000001 , 0x00004d2b 
- 00001907  0x00000af2 rtn 
- 00001908  0x00000af4 fetch  0x00000001 , 0x00004d2b 
- 00001909  0x00000af5 sub  0x0000003f , 0x00000002 , 0x0000003e 
- 00001910  0x00000af6 ncall  0x0000077c , 0x00000002 
- 00001911  0x00000af7 fetch  0x00000001 , 0x00004d2b 
- 00001912  0x00000af8 rtneq  0x00000000 
- 00001913  0x00000af9 increase  0xffffffff , 0x0000003f 
- 00001914  0x00000afa store  0x00000001 , 0x00004d2b 
- 00001915  0x00000afb rtn 
- 00001916  0x00000afd jam  0x00000003 , 0x00004d2b 
- 00001917  0x00000afe rtn 
- 00001918  0x00000b01 fetch  0x00000002 , 0x00004682 
- 00001919  0x00000b02 rtnbit1  0x0000000b 
- 00001920  0x00000b03 rtnbit1  0x00000007 
- 00001921  0x00000b04 rtnbit1  0x00000006 
- 00001922  0x00000b06 arg  0x00004cb4 , 0x00000011 
- 00001923  0x00000b07 call  0x000002ca 
- 00001924  0x00000b08 storet  0x00000001 , 0x00004d2c 
- 00001925  0x00000b0a setarg  0x00000082 
- 00001926  0x00000b0b bmark1  0x00000026 , 0x00000788 
- 00001927  0x00000b0c setarg  0x00000080 
- 00001928  0x00000b0e isub  0x00000002 , 0x0000003e 
- 00001929  0x00000b0f nbranch  0x000007a0 , 0x00000002 
- 00001930  0x00000b11 fetch  0x00000001 , 0x00004d2b 
- 00001931  0x00000b12 sub  0x0000003f , 0x00000002 , 0x0000003e 
- 00001932  0x00000b13 nbranch  0x00000790 , 0x00000002 
- 00001933  0x00000b14 fetch  0x00000001 , 0x00004d2b 
- 00001934  0x00000b15 beq  0x00000000 , 0x000007a1 
- 00001935  0x00000b16 rtn 
- 00001936  0x00000b19 fetch  0x00000001 , 0x00004d2b 
- 00001937  0x00000b1a rtnne  0x00000020 
- 00001938  0x00000b1b jam  0x00000000 , 0x00004d2b 
- 00001939  0x00000b1d fetcht  0x00000001 , 0x00004d2c 
- 00001940  0x00000b1e setarg  0x00000077 
- 00001941  0x00000b1f bmark1  0x00000026 , 0x00000797 
- 00001942  0x00000b20 setarg  0x00000075 
- 00001943  0x00000b22 isub  0x00000002 , 0x0000003e 
- 00001944  0x00000b23 nrtn  0x00000002 
- 00001945  0x00000b24 fetch  0x00000001 , 0x00004d2e 
- 00001946  0x00000b25 beq  0x00000000 , 0x000007a8 
- 00001947  0x00000b26 increase  0xffffffff , 0x0000003f 
- 00001948  0x00000b27 store  0x00000001 , 0x00004d2e 
- 00001949  0x00000b28 beq  0x00000000 , 0x000007a8 
- 00001950  0x00000b2b jam  0x00000000 , 0x000041de 
- 00001951  0x00000b2c rtn 
- 00001952  0x00000b2f jam  0x00000000 , 0x00004d2b 
- 00001953  0x00000b31 fetch  0x00000001 , 0x00004d2e 
- 00001954  0x00000b32 beq  0x00000002 , 0x000007a6 
- 00001955  0x00000b33 increase  0x00000001 , 0x0000003f 
- 00001956  0x00000b34 store  0x00000001 , 0x00004d2e 
- 00001957  0x00000b35 beq  0x00000001 , 0x0000079e 
- 00001958  0x00000b37 jam  0x00000002 , 0x000041de 
- 00001959  0x00000b38 rtn 
- 00001960  0x00000b3b jam  0x00000004 , 0x000041de 
- 00001961  0x00000b3c rtn 
- 00001962  0x00000b40 storet  0x00000001 , 0x00000017 
- 00001963  0x00000b41 add  0x00000002 , 0x00000000 , 0x00000011 
- 00001964  0x00000b42 call  0x00002981 
- 00001965  0x00000b43 setarg  0x00000500 
- 00001966  0x00000b44 call  0x00002a8f 
- 00001967  0x00000b46 jam  0x00000001 , 0x00008906 
- 00001968  0x00000b47 jam  0x0000003c , 0x00008900 
- 00001969  0x00000b48 jam  0x000000e0 , 0x00008901 
- 00001970  0x00000b49 nop  0x0000000a 
- 00001971  0x00000b4a jam  0x00000001 , 0x00008902 
- 00001972  0x00000b4b jam  0x0000003d , 0x00008902 
- 00001973  0x00000b4c nop  0x0000000a 
- 00001974  0x00000b4d jam  0x000000b7 , 0x00008903 
- 00001975  0x00000b4e nop  0x0000000a 
- 00001976  0x00000b4f jam  0x0000007d , 0x00008902 
- 00001977  0x00000b50 fetch  0x00000001 , 0x000041de 
- 00001978  0x00000b53 beq  0x00000002 , 0x000007c2 
- 00001979  0x00000b55 beq  0x00000004 , 0x000007c7 
- 00001980  0x00000b56 beq  0x00000020 , 0x000007d6 
- 00001981  0x00000b59 call  0x000007cc 
- 00001982  0x00000b5b jam  0x000000d0 , 0x00008955 
- 00001983  0x00000b5c jam  0x000000e0 , 0x00008956 
- 00001984  0x00000b5e jam  0x0000006c , 0x00008958 
- 00001985  0x00000b60 branch  0x0000294b 
- 00001986  0x00000b6d call  0x000007d1 
- 00001987  0x00000b6f jam  0x000000d0 , 0x00008955 
- 00001988  0x00000b70 jam  0x000000e0 , 0x00008956 
- 00001989  0x00000b72 jam  0x0000003c , 0x00008958 
- 00001990  0x00000b74 branch  0x00002953 
- 00001991  0x00000b81 call  0x000007cc 
- 00001992  0x00000b83 jam  0x000000d0 , 0x00008955 
- 00001993  0x00000b84 jam  0x000000c0 , 0x00008956 
- 00001994  0x00000b86 jam  0x0000006c , 0x00008958 
- 00001995  0x00000b88 branch  0x0000295b 
- 00001996  0x00000b8b jam  0x0000005b , 0x0000894c 
- 00001997  0x00000b8c jam  0x00000096 , 0x0000894d 
- 00001998  0x00000b8d jam  0x0000002c , 0x0000894e 
- 00001999  0x00000b8e jam  0x00000046 , 0x0000894f 
- 00002000  0x00000b8f rtn 
- 00002001  0x00000b92 jam  0x000000fb , 0x0000894c 
- 00002002  0x00000b93 jam  0x000000ef , 0x0000894d 
- 00002003  0x00000b94 jam  0x000000ec , 0x0000894e 
- 00002004  0x00000b95 jam  0x0000005e , 0x0000894f 
- 00002005  0x00000b96 rtn 
- 00002006  0x00000b9a jam  0x000000c2 , 0x00008956 
- 00002007  0x00000b9b jam  0x000000d0 , 0x00008955 
- 00002008  0x00000b9c rtn 
- 00002009  0x00000b9f force  0x00000008 , 0x00000015 
- 00002010  0x00000ba0 branch  0x000028fa 
- 00002011  0x00000ba5 fetcht  0x00000001 , 0x000011c7 
- 00002012  0x00000ba6 rshift4  0x00000002 , 0x00000002 
- 00002013  0x00000ba7 fetch  0x00000001 , 0x00004b50 
- 00002014  0x00000ba8 isub  0x00000002 , 0x0000003e 
- 00002015  0x00000ba9 branch  0x000007f8 , 0x00000005 
- 00002016  0x00000baa storet  0x00000001 , 0x00004b50 
- 00002017  0x00000bab increase  0x00000001 , 0x00000002 
- 00002018  0x00000bac setarg  0x00000100 
- 00002019  0x00000bad imul32  0x00000002 , 0x00000002 
- 00002020  0x00000bae fetch  0x00000003 , 0x00004b51 
- 00002021  0x00000baf isub  0x00000002 , 0x0000003f 
- 00002022  0x00000bb1 fetcht  0x00000003 , 0x00004b54 
- 00002023  0x00000bb2 iadd  0x00000002 , 0x0000003f 
- 00002024  0x00000bb3 increase  0xfffffffb , 0x0000003f 
- 00002025  0x00000bb4 store  0x00000003 , 0x00004b57 
- 00002026  0x00000bb6 call  0x000003c4 
- 00002027  0x00000bb8 fetch  0x00000003 , 0x00004b57 
- 00002028  0x00000bb9 arg  0x00000100 , 0x00000002 
- 00002029  0x00000bba arg  0x00001f00 , 0x00000011 
- 00002030  0x00000bbb call  0x00006562 
- 00002031  0x00000bbc fetch  0x00000004 , 0x00001f00 
- 00002032  0x00000bbd branch  0x000007eb , 0x00000034 
- 00002033  0x00000bbe call  0x0000031b 
- 00002034  0x00000bc0 setarg  0x00001f00 
- 00002035  0x00000bc1 store  0x00000002 , 0x00004199 
- 00002036  0x00000bc2 jam  0x00000040 , 0x0000419b 
- 00002037  0x00000bc3 call  0x000064ca 
- 00002038  0x00000bc4 setarg  0x00000000 
- 00002039  0x00000bc5 store  0x00000004 , 0x00004199 
- 00002040  0x00000bc7 fetch  0x00000001 , 0x000011c7 
- 00002041  0x00000bc8 branch  0x00000001 
- 00008192  0x00000bd9 call  0x00002abc 
- 00008193  0x00000bdc bpatch  0x00000000 , 0x00004000 
- 00008194  0x00000bdd clear_stack 
- 00008195  0x00000bde call  0x0000640d 
- 00008196  0x00000bdf call  0x0000296c 
- 00008197  0x00000be0 call  0x000065a3 
- 00008198  0x00000be1 call  0x00002a96 
- 00008199  0x00000be2 call  0x00004d6a 
- 00008200  0x00000be3 bpatch  0x00000001 , 0x00004000 
- 00008201  0x00000be4 call  0x00006a03 
- 00008202  0x00000be5 call  0x00005cf6 
- 00008203  0x00000be6 call  0x00007ccc 
- 00008204  0x00000be7 call  0x000032d8 
- 00008205  0x00000be8 ncall  0x0000689c , 0x0000002b 
- 00008206  0x00000be9 bpatch  0x00000002 , 0x00004000 
- 00008207  0x00000bea call  0x000032e3 , 0x0000002b 
- 00008208  0x00000beb call  0x0000756a 
- 00008209  0x00000bec call  0x00002b41 , 0x0000002b 
- 00008210  0x00000bee bpatch  0x00000003 , 0x00004000 
- 00008211  0x00000bef call  0x000076dc 
- 00008212  0x00000bf0 call  0x00007aaf 
- 00008213  0x00000bf1 call  0x0000756d 
- 00008214  0x00000bf2 call  0x0000535c 
- 00008215  0x00000bf3 bpatch  0x00000004 , 0x00004000 
- 00008216  0x00000bf4 call  0x00002038 
- 00008217  0x00000bf5 call  0x000032ed 
- 00008218  0x00000bf6 call  0x0000208f 
- 00008219  0x00000bf7 call  0x000022f8 
- 00008220  0x00000bf8 call  0x0000236a 
- 00008221  0x00000bf9 call  0x00002021 
- 00008222  0x00000bfa call  0x00002b6a 
- 00008223  0x00000bfb call  0x00002c72 
- 00008224  0x00000bfc branch  0x00002012 
- 00008225  0x00000bff call  0x00002026 
- 00008226  0x00000c00 rtnmark0  0x00000009 
- 00008227  0x00000c01 set0  0x00000009 , 0x00000000 
- 00008228  0x00000c02 call  0x00002223 
- 00008229  0x00000c03 branch  0x000053ce 
- 00008230  0x00000c06 bpatch  0x00000005 , 0x00004000 
- 00008231  0x00000c07 call  0x0000225e 
- 00008232  0x00000c08 nbranch  0x0000202f , 0x00000005 
- 00008233  0x00000c09 call  0x0000220a 
- 00008234  0x00000c0a add  0x00000011 , 0x00000001 , 0x00000006 
- 00008235  0x00000c0b ifetch  0x00000001 , 0x00000006 
- 00008236  0x00000c0c bbit1  0x00000000 , 0x00005360 
- 00008237  0x00000c0d bbit1  0x00000001 , 0x00002166 
- 00008238  0x00000c0e branch  0x000023cf 
- 00008239  0x00000c10 call  0x0000222b 
- 00008240  0x00000c11 copy  0x00000039 , 0x0000003e 
- 00008241  0x00000c12 rtn  0x00000005 
- 00008242  0x00000c13 call  0x0000220a 
- 00008243  0x00000c14 fetch  0x00000001 , 0x00000030 
- 00008244  0x00000c15 bbit1  0x00000003 , 0x000020d3 
- 00008245  0x00000c16 fetch  0x00000001 , 0x00000031 
- 00008246  0x00000c17 bbit1  0x00000001 , 0x00002166 
- 00008247  0x00000c18 branch  0x000023cf 
- 00008248  0x00000c21 fetch  0x00000001 , 0x000041ce 
- 00008249  0x00000c22 rtn  0x00000034 
- 00008250  0x00000c23 beq  0x00000001 , 0x00002048 
- 00008251  0x00000c24 beq  0x00000002 , 0x0000204d 
- 00008252  0x00000c25 beq  0x00000003 , 0x00002050 
- 00008253  0x00000c26 beq  0x00000005 , 0x00002055 
- 00008254  0x00000c27 beq  0x0000001b , 0x00002045 
- 00008255  0x00000c28 call  0x00002257 
- 00008256  0x00000c29 rtn  0x00000005 
- 00008257  0x00000c2a call  0x0000225a 
- 00008258  0x00000c2b rtn  0x00000005 
- 00008259  0x00000c2d jam  0x00000000 , 0x000041ce 
- 00008260  0x00000c2e rtn 
- 00008261  0x00000c31 jam  0x0000001b , 0x0000049b 
- 00008262  0x00000c32 jam  0x00000000 , 0x000041ce 
- 00008263  0x00000c33 rtn 
- 00008264  0x00000c36 set1  0x0000001c , 0x00000000 
- 00008265  0x00000c37 set0  0x0000001e , 0x00000000 
- 00008266  0x00000c38 jam  0x000000ff , 0x0000008f 
- 00008267  0x00000c39 jam  0x0000001f , 0x0000008d 
- 00008268  0x00000c3a branch  0x00002043 
- 00008269  0x00000c3d set0  0x0000001c , 0x00000000 
- 00008270  0x00000c3e force  0x00000000 , 0x0000001b 
- 00008271  0x00000c3f branch  0x00002043 
- 00008272  0x00000c42 call  0x0000225a 
- 00008273  0x00000c43 rtn  0x00000005 
- 00008274  0x00000c44 force  0x00000001 , 0x00000002 
- 00008275  0x00000c45 jam  0x00000005 , 0x0000016e 
- 00008276  0x00000c46 branch  0x0000205c 
- 00008277  0x00000c49 bpatch  0x00000006 , 0x00004000 
- 00008278  0x00000c4b fetch  0x00000006 , 0x000041d0 
- 00008279  0x00000c4c branch  0x00002043 , 0x00000034 
- 00008280  0x00000c4d jam  0x00000001 , 0x00004681 
- 00008281  0x00000c4f jam  0x00000003 , 0x00000055 
- 00008282  0x00000c50 branch  0x0000205b 
- 00008283  0x00000c53 force  0x00000025 , 0x00000002 
- 00008284  0x00000c55 bpatch  0x00000007 , 0x00004000 
- 00008285  0x00000c56 fetch  0x00000001 , 0x000000f1 
- 00008286  0x00000c57 branch  0x00002062 , 0x00000034 
- 00008287  0x00000c58 lshift3  0x0000003f , 0x0000003f 
- 00008288  0x00000c59 lshift4  0x0000003f , 0x0000003f 
- 00008289  0x00000c5a increase  0xffffffff , 0x0000003f 
- 00008290  0x00000c5c store  0x00000001 , 0x000040a6 
- 00008291  0x00000c5d store  0x00000001 , 0x000000f0 
- 00008292  0x00000c5e jam  0x0000001f , 0x0000008e 
- 00008293  0x00000c5f set0  0x0000000c , 0x00000000 
- 00008294  0x00000c60 call  0x0000223b 
- 00008295  0x00000c61 nbranch  0x00002083 , 0x00000005 
- 00008296  0x00000c62 call  0x00002a6f 
- 00008297  0x00000c63 store  0x00000001 , 0x00000077 
- 00008298  0x00000c64 storet  0x00000001 , 0x0000007c 
- 00008299  0x00000c65 fetch  0x00000006 , 0x000041d0 
- 00008300  0x00000c66 store  0x00000006 , 0x00000040 
- 00008301  0x00000c67 bpatch  0x00000008 , 0x00004001 
- 00008302  0x00000c68 call  0x00007f15 
- 00008303  0x00000c69 force  0x00000000 , 0x0000003f 
- 00008304  0x00000c6a compare  0x00000001 , 0x00000002 , 0x000000ff 
- 00008305  0x00000c6b nsetflag  0x00000001 , 0x00000005 , 0x0000003f 
- 00008306  0x00000c6c set1  0x00000003 , 0x0000003f 
- 00008307  0x00000c6d store  0x00000001 , 0x00000030 
- 00008308  0x00000c6e jam  0x00000003 , 0x00000a99 
- 00008309  0x00000c6f call  0x00007d86 
- 00008310  0x00000c70 force  0x00000000 , 0x0000003f 
- 00008311  0x00000c71 setflag  0x00000001 , 0x00000004 , 0x0000003f 
- 00008312  0x00000c72 store  0x00000001 , 0x0000004c 
- 00008313  0x00000c73 setarg  0x00000000 
- 00008314  0x00000c74 set1  0x00000001 , 0x0000003f 
- 00008315  0x00000c75 store  0x00000001 , 0x00000031 
- 00008316  0x00000c76 enable  0x00000029 
- 00008317  0x00000c77 call  0x00002223 
- 00008318  0x00000c78 disable  0x00000029 
- 00008319  0x00000c79 force  0x00000003 , 0x00000007 
- 00008320  0x00000c7a fetch  0x00000002 , 0x000040b9 
- 00008321  0x00000c7b call  0x00007f08 
- 00008322  0x00000c7c branch  0x00002043 
- 00008323  0x00000c7e bpatch  0x00000009 , 0x00004001 
- 00008324  0x00000c7f fetch  0x00000006 , 0x000041d0 
- 00008325  0x00000c80 store  0x00000006 , 0x00000040 
- 00008326  0x00000c81 compare  0x00000001 , 0x00000002 , 0x000000ff 
- 00008327  0x00000c82 branch  0x00002089 , 0x00000001 
- 00008328  0x00000c83 branch  0x00002043 
- 00008329  0x00000c85 arg  0x00000101 , 0x00000005 
- 00008330  0x00000c86 arg  0x00000008 , 0x00000039 
- 00008331  0x00000c87 call  0x00007ec6 
- 00008332  0x00000c88 jam  0x00000004 , 0x00000a99 
- 00008333  0x00000c89 call  0x00007d86 
- 00008334  0x00000c8a branch  0x00002043 
- 00008335  0x00000c92 rtnmark0  0x0000001c 
- 00008336  0x00000c93 force  0x00000001 , 0x00000007 
- 00008337  0x00000c94 call  0x00007f16 
- 00008338  0x00000c95 nsetflag  0x00000034 , 0x0000001c , 0x00000000 
- 00008339  0x00000c96 nbranch  0x00002095 , 0x00000034 
- 00008340  0x00000c97 rtn 
- 00008341  0x00000c9c bpatch  0x0000000a , 0x00004001 
- 00008342  0x00000c9d fetcht  0x00000002 , 0x000040bb 
- 00008343  0x00000c9e force  0x00000004 , 0x00000007 
- 00008344  0x00000c9f call  0x0000271c 
- 00008345  0x00000ca0 rtn  0x00000028 
- 00008346  0x00000ca1 call  0x000028a4 
- 00008347  0x00000ca2 force  0x00000000 , 0x00000024 
- 00008348  0x00000ca4 rtn  0x00000003 
- 00008349  0x00000ca5 set0  0x0000000b , 0x00000000 
- 00008350  0x00000ca6 set0  0x00000000 , 0x00000000 
- 00008351  0x00000ca8 add  0x00000022 , 0x00000001 , 0x00000021 
- 00008352  0x00000ca9 isolate1  0x0000001e , 0x00000000 
- 00008353  0x00000caa setflag  0x00000001 , 0x00000002 , 0x00000024 
- 00008354  0x00000cab compare  0x00000000 , 0x00000021 , 0x00000002 
- 00008355  0x00000cac nbranch  0x000020be , 0x00000001 
- 00008356  0x00000caf bpatch  0x0000000b , 0x00004001 
- 00008357  0x00000cb0 fetch  0x00000001 , 0x00000012 
- 00008358  0x00000cb1 increase  0x00000001 , 0x0000003f 
- 00008359  0x00000cb2 store  0x00000001 , 0x00000012 
- 00008360  0x00000cb3 call  0x000028d8 
- 00008361  0x00000cb4 call  0x000028d2 
- 00008362  0x00000cb5 call  0x000028f2 
- 00008363  0x00000cb6 call  0x00002a51 
- 00008364  0x00000cb7 call  0x00002a56 
- 00008365  0x00000cb8 call  0x00002a64 
- 00008366  0x00000cb9 call  0x0000264d 
- 00008367  0x00000cba call  0x000020b1 
- 00008368  0x00000cbb branch  0x0000209c 
- 00008369  0x00000cbe bpatch  0x0000000c , 0x00004001 
- 00008370  0x00000cbf fetch  0x00000001 , 0x0000008d 
- 00008371  0x00000cc0 increase  0xffffffff , 0x0000003f 
- 00008372  0x00000cc1 store  0x00000001 , 0x0000008d 
- 00008373  0x00000cc2 rtn  0x00000002 
- 00008374  0x00000cc3 jam  0x0000001f , 0x0000008d 
- 00008375  0x00000cc4 fetch  0x00000001 , 0x0000008f 
- 00008376  0x00000cc5 increase  0xffffffff , 0x0000003f 
- 00008377  0x00000cc6 store  0x00000001 , 0x0000008f 
- 00008378  0x00000cc7 rtn  0x00000002 
- 00008379  0x00000cc8 setflip  0x0000001e , 0x00000000 
- 00008380  0x00000cc9 jam  0x000000ff , 0x0000008f 
- 00008381  0x00000cca rtn 
- 00008382  0x00000ccd bpatch  0x0000000d , 0x00004001 
- 00008383  0x00000cce call  0x000028d8 
- 00008384  0x00000ccf call  0x000028cc 
- 00008385  0x00000cd0 call  0x000028f2 
- 00008386  0x00000cd1 call  0x00002a5b 
- 00008387  0x00000cd2 call  0x000029eb 
- 00008388  0x00000cd3 call  0x00002a0d 
- 00008389  0x00000cd4 branch  0x000020c8 , 0x00000018 
- 00008390  0x00000cd5 call  0x000020b1 
- 00008391  0x00000cd6 branch  0x0000209f 
- 00008392  0x00000cd8 bpatch  0x0000000e , 0x00004001 
- 00008393  0x00000cd9 call  0x000029bb 
- 00008394  0x00000cda call  0x00002a6b 
- 00008395  0x00000cdb call  0x0000251e 
- 00008396  0x00000cdc set0  0x00000001 , 0x00000000 
- 00008397  0x00000cdd rtnmark0  0x0000000b 
- 00008398  0x00000cdf bpatch  0x0000000f , 0x00004001 
- 00008399  0x00000ce1 fetch  0x00000001 , 0x00000013 
- 00008400  0x00000ce2 increase  0x00000001 , 0x0000003f 
- 00008401  0x00000ce3 store  0x00000001 , 0x00000013 
- 00008402  0x00000ce4 rtn 
- 00008403  0x00000ced bpatch  0x00000010 , 0x00004002 
- 00008404  0x00000cee enable  0x00000029 
- 00008405  0x00000cef enable  0x00000030 
- 00008406  0x00000cf0 fetch  0x00000002 , 0x000040b5 
- 00008407  0x00000cf1 branch  0x000020db , 0x00000034 
- 00008408  0x00000cf2 force  0x00000008 , 0x00000007 
- 00008409  0x00000cf3 call  0x00007f16 
- 00008410  0x00000cf4 nrtn  0x00000034 
- 00008411  0x00000cf6 bpatch  0x00000011 , 0x00004002 
- 00008412  0x00000cf7 fetcht  0x00000002 , 0x000040b7 
- 00008413  0x00000cf8 force  0x00000028 , 0x00000007 
- 00008414  0x00000cf9 call  0x0000271c 
- 00008415  0x00000cfa branch  0x00002114 , 0x00000028 
- 00008416  0x00000cfb force  0x00000003 , 0x00000007 
- 00008417  0x00000cfc call  0x00007f16 
- 00008418  0x00000cfd nbranch  0x000020f0 , 0x00000034 
- 00008419  0x00000cfe fetch  0x00000001 , 0x0000004c 
- 00008420  0x00000cff bbit1  0x00000004 , 0x000020e6 
- 00008421  0x00000d00 branch  0x000020e9 
- 00008422  0x00000d02 arg  0x00000101 , 0x00000005 
- 00008423  0x00000d03 arg  0x00000008 , 0x00000039 
- 00008424  0x00000d04 call  0x00007ec6 
- 00008425  0x00000d06 bpatch  0x00000012 , 0x00004002 
- 00008426  0x00000d07 jam  0x00000000 , 0x00000030 
- 00008427  0x00000d08 call  0x00005cf7 
- 00008428  0x00000d09 jam  0x00000000 , 0x00004681 
- 00008429  0x00000d0a jam  0x00000013 , 0x00000a99 
- 00008430  0x00000d0b call  0x00007d86 
- 00008431  0x00000d0c branch  0x00002114 
- 00008432  0x00000d0f bpatch  0x00000013 , 0x00004002 
- 00008433  0x00000d10 force  0x00000000 , 0x0000000b 
- 00008434  0x00000d11 until  0x00000023 , 0x00000026 
- 00008435  0x00000d12 fetch  0x00000001 , 0x000000f2 
- 00008436  0x00000d13 increase  0xffffffff , 0x0000003f 
- 00008437  0x00000d14 ixor  0x00000022 , 0x0000003f 
- 00008438  0x00000d15 compare  0x00000000 , 0x0000003f , 0x00000003 
- 00008439  0x00000d16 nbranch  0x000020f0 , 0x00000001 
- 00008440  0x00000d17 deposit  0x00000004 
- 00008441  0x00000d18 store  0x00000001 , 0x00000181 
- 00008442  0x00000d19 force  0x00000000 , 0x00000026 
- 00008443  0x00000d1a force  0x00000000 , 0x00000024 
- 00008444  0x00000d1d bpatch  0x00000014 , 0x00004002 
- 00008445  0x00000d1e branch  0x00002114 , 0x00000003 
- 00008446  0x00000d1f call  0x000028dc 
- 00008447  0x00000d20 arg  0x00000600 , 0x0000000b 
- 00008448  0x00000d21 until  0x00000023 , 0x00000026 
- 00008449  0x00000d23 bpatch  0x00000015 , 0x00004002 
- 00008450  0x00000d24 fetch  0x00000004 , 0x000000f2 
- 00008451  0x00000d25 iforce  0x00000021 
- 00008452  0x00000d26 increase  0x00000001 , 0x0000003f 
- 00008453  0x00000d27 store  0x00000004 , 0x000000f2 
- 00008454  0x00000d28 isolate1  0x0000000c , 0x00000000 
- 00008455  0x00000d29 setflag  0x00000001 , 0x00000002 , 0x00000024 
- 00008456  0x00000d2a compare  0x00000000 , 0x00000021 , 0x00000002 
- 00008457  0x00000d2b nbranch  0x00002128 , 0x00000001 
- 00008458  0x00000d2c fetch  0x00000001 , 0x0000000c 
- 00008459  0x00000d2d increase  0x00000001 , 0x0000003f 
- 00008460  0x00000d2e store  0x00000001 , 0x0000000c 
- 00008461  0x00000d2f call  0x000028d2 
- 00008462  0x00000d30 call  0x00002a51 
- 00008463  0x00000d31 call  0x00002a56 
- 00008464  0x00000d32 call  0x00002a64 
- 00008465  0x00000d33 call  0x0000264d 
- 00008466  0x00000d34 call  0x0000211a 
- 00008467  0x00000d35 branch  0x000020fc 
- 00008468  0x00000d37 bpatch  0x00000016 , 0x00004002 
- 00008469  0x00000d38 disable  0x00000029 
- 00008470  0x00000d39 fetch  0x00000002 , 0x000040b5 
- 00008471  0x00000d3a rtn  0x00000034 
- 00008472  0x00000d3b force  0x00000008 , 0x00000007 
- 00008473  0x00000d3c branch  0x00007f08 
- 00008474  0x00000d3f bpatch  0x00000017 , 0x00004002 
- 00008475  0x00000d40 fetch  0x00000001 , 0x0000008e 
- 00008476  0x00000d41 increase  0xffffffff , 0x0000003f 
- 00008477  0x00000d42 store  0x00000001 , 0x0000008e 
- 00008478  0x00000d43 rtn  0x00000002 
- 00008479  0x00000d44 jam  0x0000001f , 0x0000008e 
- 00008480  0x00000d45 fetch  0x00000001 , 0x000000f0 
- 00008481  0x00000d46 increase  0xffffffff , 0x0000003f 
- 00008482  0x00000d47 store  0x00000001 , 0x000000f0 
- 00008483  0x00000d48 rtn  0x00000002 
- 00008484  0x00000d49 setflip  0x0000000c , 0x00000000 
- 00008485  0x00000d4a fetch  0x00000001 , 0x000040a6 
- 00008486  0x00000d4b store  0x00000001 , 0x000000f0 
- 00008487  0x00000d4c rtn 
- 00008488  0x00000d4f bpatch  0x00000018 , 0x00004003 
- 00008489  0x00000d50 call  0x000028cc 
- 00008490  0x00000d51 call  0x00002a5b 
- 00008491  0x00000d52 call  0x000029eb 
- 00008492  0x00000d53 call  0x00002a0d 
- 00008493  0x00000d54 branch  0x00002130 , 0x00000018 
- 00008494  0x00000d55 call  0x0000211a 
- 00008495  0x00000d56 branch  0x00002101 
- 00008496  0x00000d58 call  0x0000264d 
- 00008497  0x00000d59 fetch  0x00000001 , 0x0000000d 
- 00008498  0x00000d5a increase  0x00000001 , 0x0000003f 
- 00008499  0x00000d5b store  0x00000001 , 0x0000000d 
- 00008500  0x00000d5c force  0x00000000 , 0x0000001b 
- 00008501  0x00000d5d fetch  0x00000004 , 0x000000f2 
- 00008502  0x00000d5f bpatch  0x00000019 , 0x00004003 
- 00008503  0x00000d60 call  0x00002a4f 
- 00008504  0x00000d61 call  0x000028dc 
- 00008505  0x00000d62 increase  0x00000001 , 0x00000026 
- 00008506  0x00000d64 and_into  0x000001fd , 0x00000021 
- 00008507  0x00000d65 and_into  0x000001fc , 0x00000024 
- 00008508  0x00000d66 call  0x000028d2 
- 00008509  0x00000d67 call  0x00002a51 
- 00008510  0x00000d68 call  0x00002a56 
- 00008511  0x00000d69 call  0x00002a64 
- 00008512  0x00000d6a deposit  0x00000022 
- 00008513  0x00000d6b store  0x00000004 , 0x00000161 
- 00008514  0x00000d6c force  0x00000000 , 0x00000004 
- 00008515  0x00000d6d force  0x00000002 , 0x00000001 
- 00008516  0x00000d6e call  0x00002a6b 
- 00008517  0x00000d6f call  0x00002766 
- 00008518  0x00000d71 bpatch  0x0000001a , 0x00004003 
- 00008519  0x00000d72 call  0x00002a4d 
- 00008520  0x00000d73 or_into  0x00000002 , 0x00000021 
- 00008521  0x00000d74 and_into  0x000001fc , 0x00000024 
- 00008522  0x00000d75 call  0x000028cc 
- 00008523  0x00000d76 call  0x00002a5b 
- 00008524  0x00000d77 call  0x000029eb 
- 00008525  0x00000d78 call  0x00002a0d 
- 00008526  0x00000d79 call  0x0000264d , 0x00000018 
- 00008527  0x00000d7a branch  0x00002155 , 0x00000018 
- 00008528  0x00000d7b fetch  0x00000001 , 0x00000010 
- 00008529  0x00000d7c branch  0x000020fc , 0x00000034 
- 00008530  0x00000d7d increase  0xffffffff , 0x0000003f 
- 00008531  0x00000d7e store  0x00000001 , 0x00000010 
- 00008532  0x00000d7f branch  0x00002136 
- 00008533  0x00000d82 bpatch  0x0000001b , 0x00004003 
- 00008534  0x00000d83 fetch  0x00000001 , 0x0000000e 
- 00008535  0x00000d84 increase  0x00000001 , 0x0000003f 
- 00008536  0x00000d85 store  0x00000001 , 0x0000000e 
- 00008537  0x00000d86 call  0x00002435 
- 00008538  0x00000d88 call  0x000022f2 
- 00008539  0x00000d89 branch  0x0000215f , 0x00000018 
- 00008540  0x00000d8a call  0x00002455 
- 00008541  0x00000d8b nbranch  0x0000215a , 0x00000034 
- 00008542  0x00000d8c branch  0x000020fc 
- 00008543  0x00000d8f bpatch  0x0000001c , 0x00004003 
- 00008544  0x00000d90 fetch  0x00000001 , 0x00000030 
- 00008545  0x00000d91 set0  0x00000003 , 0x0000003f 
- 00008546  0x00000d92 store  0x00000001 , 0x00000030 
- 00008547  0x00000d93 call  0x00002440 
- 00008548  0x00000d94 disable  0x00000029 
- 00008549  0x00000d95 rtn 
- 00008550  0x00000d99 bpatch  0x0000001d , 0x00004003 
- 00008551  0x00000d9a enable  0x00000029 
- 00008552  0x00000d9b enable  0x00000030 
- 00008553  0x00000d9c call  0x000021e1 
- 00008554  0x00000d9d rtn  0x00000028 
- 00008555  0x00000d9e call  0x00002c69 
- 00008556  0x00000d9f call  0x00002a4f 
- 00008557  0x00000da0 add  0x00000022 , 0x00000001 , 0x00000021 
- 00008558  0x00000da1 call  0x000028e2 
- 00008559  0x00000da2 force  0x00000003 , 0x00000024 
- 00008560  0x00000da3 call  0x00006cc2 
- 00008561  0x00000da4 call  0x00002489 
- 00008562  0x00000da5 call  0x000028d2 
- 00008563  0x00000da6 call  0x00002a51 
- 00008564  0x00000da7 call  0x00002a56 
- 00008565  0x00000da8 call  0x00002a64 
- 00008566  0x00000da9 call  0x00002762 
- 00008567  0x00000dab bpatch  0x0000001e , 0x00004003 
- 00008568  0x00000dac call  0x00005d08 
- 00008569  0x00000dad call  0x000022e4 
- 00008570  0x00000dae nbranch  0x00002180 , 0x0000002d 
- 00008571  0x00000daf call  0x00002a88 
- 00008572  0x00000db0 call  0x00002728 
- 00008573  0x00000db1 fetch  0x00000001 , 0x0000000f 
- 00008574  0x00000db2 increase  0x00000001 , 0x0000003f 
- 00008575  0x00000db3 store  0x00000001 , 0x0000000f 
- 00008576  0x00000db5 bpatch  0x0000001f , 0x00004003 
- 00008577  0x00000db6 call  0x00006caa 
- 00008578  0x00000db7 call  0x0000218b 
- 00008579  0x00000db8 nrtn  0x00000029 
- 00008580  0x00000db9 call  0x000026f3 
- 00008581  0x00000dba nbranch  0x00002188 , 0x00000034 
- 00008582  0x00000dbc disable  0x00000029 
- 00008583  0x00000dbd rtn 
- 00008584  0x00000dc0 call  0x00002489 
- 00008585  0x00000dc1 call  0x000022da 
- 00008586  0x00000dc2 branch  0x00002177 
- 00008587  0x00000dc6 branch  0x0000218e , 0x0000002d 
- 00008588  0x00000dc7 call  0x00002a7f 
- 00008589  0x00000dc8 branch  0x0000219c , 0x00000002 
- 00008590  0x00000dca call  0x000021a7 
- 00008591  0x00000dcb nbranch  0x0000219c , 0x00000028 
- 00008592  0x00000dcc fetch  0x00000001 , 0x0000004c 
- 00008593  0x00000dcd rtnbit0  0x00000004 
- 00008594  0x00000dce rtnbit1  0x00000003 
- 00008595  0x00000dcf fetch  0x00000001 , 0x0000004b 
- 00008596  0x00000dd0 rtnbit1  0x00000003 
- 00008597  0x00000dd1 call  0x000021ae 
- 00008598  0x00000dd2 nrtn  0x00000034 
- 00008599  0x00000dd3 fetch  0x00000001 , 0x0000016e 
- 00008600  0x00000dd4 increase  0xffffffff , 0x0000003f 
- 00008601  0x00000dd5 store  0x00000001 , 0x0000016e 
- 00008602  0x00000dd6 nrtn  0x00000034 
- 00008603  0x00000dd7 branch  0x00006006 
- 00008604  0x00000dda bpatch  0x00000020 , 0x00004004 
- 00008605  0x00000ddb call  0x0000245d 
- 00008606  0x00000ddc disable  0x00000029 
- 00008607  0x00000ddd fetch  0x00000001 , 0x0000004c 
- 00008608  0x00000dde bbit1  0x00000004 , 0x000021a2 
- 00008609  0x00000ddf rtn 
- 00008610  0x00000de2 fetch  0x00000001 , 0x0000004c 
- 00008611  0x00000de3 rtnbit1  0x00000003 
- 00008612  0x00000de5 arg  0x00000101 , 0x00000005 
- 00008613  0x00000de6 arg  0x00000008 , 0x00000039 
- 00008614  0x00000de7 branch  0x00007ec6 
- 00008615  0x00000dea bpatch  0x00000021 , 0x00004004 
- 00008616  0x00000deb enable  0x00000028 
- 00008617  0x00000dec fetch  0x00000001 , 0x0000004b 
- 00008618  0x00000ded rtnbit0  0x00000003 
- 00008619  0x00000dee call  0x000021ae 
- 00008620  0x00000def nrtn  0x00000034 
- 00008621  0x00000df0 branch  0x00007fe9 
- 00008622  0x00000df3 fetch  0x00000001 , 0x00000072 
- 00008623  0x00000df4 increase  0xffffffff , 0x0000003f 
- 00008624  0x00000df5 store  0x00000001 , 0x00000072 
- 00008625  0x00000df6 rtn 
- 00008626  0x00000df9 bpatch  0x00000022 , 0x00004004 
- 00008627  0x00000dfa fetch  0x00000001 , 0x00000030 
- 00008628  0x00000dfb bbit1  0x00000007 , 0x000021bb 
- 00008629  0x00000dfc fetch  0x00000001 , 0x000009b5 
- 00008630  0x00000dfd branch  0x000021bb , 0x00000034 
- 00008631  0x00000dfe jam  0x00000000 , 0x000009b5 
- 00008632  0x00000dff jam  0x00000018 , 0x00000a99 
- 00008633  0x00000e00 call  0x00007d86 
- 00008634  0x00000e01 branch  0x000021bb 
- 00008635  0x00000e03 bpatch  0x00000023 , 0x00004004 
- 00008636  0x00000e04 call  0x00002254 
- 00008637  0x00000e05 fetch  0x00000001 , 0x00000030 
- 00008638  0x00000e06 set1  0x00000007 , 0x0000003f 
- 00008639  0x00000e07 store  0x00000001 , 0x00000030 
- 00008640  0x00000e08 jam  0x00000001 , 0x000041bd 
- 00008641  0x00000e09 fetch  0x00000001 , 0x00000055 
- 00008642  0x00000e0a bne  0x00000016 , 0x000021c3 
- 00008643  0x00000e0c rtn 
- 00008644  0x00000e0f jam  0x00000001 , 0x000009b5 
- 00008645  0x00000e11 fetch  0x00000001 , 0x00000030 
- 00008646  0x00000e12 set0  0x00000007 , 0x0000003f 
- 00008647  0x00000e13 store  0x00000001 , 0x00000030 
- 00008648  0x00000e14 rtn 
- 00008649  0x00000e19 bpatch  0x00000024 , 0x00004004 
- 00008650  0x00000e1a disable  0x00000028 
- 00008651  0x00000e1b fetch  0x00000002 , 0x00000032 
- 00008652  0x00000e1c arg  0x0000ffff , 0x00000002 
- 00008653  0x00000e1d isub  0x00000002 , 0x0000003e 
- 00008654  0x00000e1e nrtn  0x00000005 
- 00008655  0x00000e1f fetch  0x00000004 , 0x00000034 
- 00008656  0x00000e20 branch  0x000021d3 , 0x00000030 
- 00008657  0x00000e21 isub  0x00000028 , 0x0000003f 
- 00008658  0x00000e22 branch  0x000021d4 
- 00008659  0x00000e24 isub  0x00000022 , 0x0000003f 
- 00008660  0x00000e26 sub  0x0000003f , 0x00000004 , 0x0000003e 
- 00008661  0x00000e27 nrtn  0x00000002 
- 00008662  0x00000e28 force  0x00000000 , 0x0000003f 
- 00008663  0x00000e29 store  0x00000002 , 0x00000032 
- 00008664  0x00000e2a branch  0x00007fe7 
- 00008665  0x00000e2f copy  0x0000003f , 0x00000002 
- 00008666  0x00000e30 bpatch  0x00000025 , 0x00004004 
- 00008667  0x00000e31 storet  0x00000004 , 0x00000034 
- 00008668  0x00000e33 jam  0x00000001 , 0x0000455b 
- 00008669  0x00000e34 setarg  0x0000ffff 
- 00008670  0x00000e35 store  0x00000002 , 0x00000032 
- 00008671  0x00000e36 jam  0x00000001 , 0x00000073 
- 00008672  0x00000e37 rtn 
- 00008673  0x00000e3b bpatch  0x00000026 , 0x00004004 
- 00008674  0x00000e3c call  0x000021c9 
- 00008675  0x00000e3d nrtn  0x00000028 
- 00008676  0x00000e3e disable  0x00000028 
- 00008677  0x00000e3f jam  0x00000020 , 0x00000011 
- 00008678  0x00000e40 set0  0x0000000b , 0x00000000 
- 00008679  0x00000e42 call  0x00002a4f 
- 00008680  0x00000e43 call  0x000022e6 
- 00008681  0x00000e44 bmark1  0x0000000b , 0x000021f4 
- 00008682  0x00000e45 call  0x00002455 
- 00008683  0x00000e46 nbranch  0x000021e7 , 0x00000034 
- 00008684  0x00000e48 bpatch  0x00000027 , 0x00004004 
- 00008685  0x00000e49 disable  0x00000028 
- 00008686  0x00000e4a deposit  0x00000022 
- 00008687  0x00000e4b store  0x00000004 , 0x000040ca 
- 00008688  0x00000e4c enable  0x00000030 
- 00008689  0x00000e4d enable  0x00000029 
- 00008690  0x00000e4e jam  0x0000002a , 0x00000a99 
- 00008691  0x00000e4f branch  0x00007d86 
- 00008692  0x00000e52 bpatch  0x00000028 , 0x00004005 
- 00008693  0x00000e53 call  0x00002a4d 
- 00008694  0x00000e54 arg  0x00000010 , 0x00000001 
- 00008695  0x00000e55 call  0x000022dc 
- 00008696  0x00000e56 disable  0x00000030 
- 00008697  0x00000e57 disable  0x00000029 
- 00008698  0x00000e58 call  0x00002818 
- 00008699  0x00000e59 call  0x00002435 
- 00008700  0x00000e5b bpatch  0x00000029 , 0x00004005 
- 00008701  0x00000e5c call  0x0000247c 
- 00008702  0x00000e5d branch  0x00002202 , 0x0000002d 
- 00008703  0x00000e5e call  0x00002455 
- 00008704  0x00000e5f nbranch  0x000021fc , 0x00000034 
- 00008705  0x00000e60 branch  0x000021ec 
- 00008706  0x00000e62 fetch  0x00000001 , 0x00000031 
- 00008707  0x00000e63 set0  0x00000001 , 0x0000003f 
- 00008708  0x00000e64 store  0x00000001 , 0x00000031 
- 00008709  0x00000e65 call  0x00002a88 
- 00008710  0x00000e66 call  0x00002841 
- 00008711  0x00000e67 enable  0x00000028 
- 00008712  0x00000e68 jam  0x0000002b , 0x00000a99 
- 00008713  0x00000e69 branch  0x00007d86 
- 00008714  0x00000e6f bpatch  0x0000002a , 0x00004005 
- 00008715  0x00000e70 set1  0x00000009 , 0x00000000 
- 00008716  0x00000e71 deposit  0x00000011 
- 00008717  0x00000e72 store  0x00000002 , 0x0000001e 
- 00008718  0x00000e73 force  0x00000050 , 0x00000039 
- 00008719  0x00000e74 arg  0x0000043f , 0x00000005 
- 00008720  0x00000e75 add  0x00000011 , 0x00000001 , 0x00000006 
- 00008721  0x00000e76 ifetch  0x00000001 , 0x00000006 
- 00008722  0x00000e77 copy  0x00000011 , 0x00000006 
- 00008723  0x00000e78 bbit1  0x00000000 , 0x00007f01 
- 00008724  0x00000e79 arg  0x00000030 , 0x00000005 
- 00008725  0x00000e7a call  0x00007f01 
- 00008726  0x00000e7b disable  0x0000002e 
- 00008727  0x00000e7c fetch  0x00000001 , 0x00000077 
- 00008728  0x00000e7d iforce  0x00000004 
- 00008729  0x00000e7e jam  0x00000001 , 0x0000008a 
- 00008730  0x00000e7f branch  0x0000221c , 0x00000029 
- 00008731  0x00000e80 jam  0x00000001 , 0x0000008a 
- 00008732  0x00000e82 fetch  0x00000001 , 0x00000030 
- 00008733  0x00000e83 rtnbit0  0x00000001 
- 00008734  0x00000e84 fetch  0x00000001 , 0x00000073 
- 00008735  0x00000e85 store  0x00000001 , 0x0000008a 
- 00008736  0x00000e86 fetch  0x00000001 , 0x00000074 
- 00008737  0x00000e87 store  0x00000001 , 0x0000008b 
- 00008738  0x00000e88 rtn 
- 00008739  0x00000e8b bpatch  0x0000002b , 0x00004005 
- 00008740  0x00000e8c fetch  0x00000002 , 0x0000001e 
- 00008741  0x00000e8d iforce  0x00000005 
- 00008742  0x00000e8e force  0x00000050 , 0x00000039 
- 00008743  0x00000e8f arg  0x0000043f , 0x00000006 
- 00008744  0x00000e90 branch  0x00007f01 , 0x00000036 
- 00008745  0x00000e91 arg  0x00000030 , 0x00000006 
- 00008746  0x00000e92 branch  0x00007f01 
- 00008747  0x00000e97 arg  0x00000001 , 0x00000039 
- 00008748  0x00000e98 fetcht  0x00000001 , 0x00000015 
- 00008749  0x00000e9a increase  0x00000001 , 0x00000002 
- 00008750  0x00000e9b compare  0x00000001 , 0x00000002 , 0x000000ff 
- 00008751  0x00000e9c nbranch  0x00002231 , 0x00000001 
- 00008752  0x00000e9d arg  0x00000000 , 0x00000002 
- 00008753  0x00000e9f storet  0x00000001 , 0x00000015 
- 00008754  0x00000ea0 mul32  0x00000002 , 0x00000050 , 0x0000003f 
- 00008755  0x00000ea1 arg  0x00004040 , 0x00000011 
- 00008756  0x00000ea2 iadd  0x00000011 , 0x00000011 
- 00008757  0x00000ea3 ifetch  0x00000001 , 0x00000011 
- 00008758  0x00000ea4 bbit1  0x00000001 , 0x00002239 
- 00008759  0x00000ea5 rtnbit1  0x00000000 
- 00008760  0x00000ea6 rtnbit1  0x00000003 
- 00008761  0x00000ea8 loop  0x0000222d 
- 00008762  0x00000ea9 rtn 
- 00008763  0x00000eac bpatch  0x0000002c , 0x00004005 
- 00008764  0x00000ead arg  0x0000226a , 0x00000013 
- 00008765  0x00000eae call  0x00002261 
- 00008766  0x00000eaf nrtn  0x00000005 
- 00008767  0x00000eb0 deposit  0x00000011 
- 00008768  0x00000eb1 store  0x00000002 , 0x0000001e 
- 00008769  0x00000eb2 force  0x00000000 , 0x0000003e 
- 00008770  0x00000eb3 rtn 
- 00008771  0x00000eb8 call  0x00002725 
- 00008772  0x00000eb9 branch  0x0000224b , 0x00000001 
- 00008773  0x00000eba fetch  0x00000002 , 0x0000001e 
- 00008774  0x00000ebb add  0x0000003f , 0x00000017 , 0x00000005 
- 00008775  0x00000ebc fetch  0x00000001 , 0x00000047 
- 00008776  0x00000ebd istore  0x00000001 , 0x00000005 
- 00008777  0x00000ebe arg  0x000022aa , 0x00000013 
- 00008778  0x00000ebf branch  0x00002261 
- 00008779  0x00000ec2 fetch  0x00000001 , 0x00000047 
- 00008780  0x00000ec3 isolate1  0x00000003 , 0x0000003f 
- 00008781  0x00000ec4 branch  0x00002250 , 0x00000001 
- 00008782  0x00000ec5 force  0x00000001 , 0x0000003e 
- 00008783  0x00000ec6 rtn 
- 00008784  0x00000ec8 force  0x00000000 , 0x0000003e 
- 00008785  0x00000ec9 rtn 
- 00008786  0x00000ecd arg  0x000022a7 , 0x00000013 
- 00008787  0x00000ece branch  0x00002261 
- 00008788  0x00000ed1 fetcht  0x00000002 , 0x0000001e 
- 00008789  0x00000ed2 arg  0x000022cf , 0x00000013 
- 00008790  0x00000ed3 branch  0x00002261 
- 00008791  0x00000ed8 fetcht  0x00000001 , 0x000041cf 
- 00008792  0x00000eda arg  0x00002275 , 0x00000013 
- 00008793  0x00000edb branch  0x00002261 
- 00008794  0x00000ede bpatch  0x0000002d , 0x00004005 
- 00008795  0x00000edf fetcht  0x00000006 , 0x000041d0 
- 00008796  0x00000ee1 arg  0x0000226e , 0x00000013 
- 00008797  0x00000ee2 branch  0x00002261 
- 00008798  0x00000ee5 arg  0x0000227b , 0x00000013 
- 00008799  0x00000ee6 branch  0x00002261 
- 00008800  0x00000ee9 arg  0x000022c6 , 0x00000013 
- 00008801  0x00000eeb bpatch  0x0000002e , 0x00004005 
- 00008802  0x00000eec arg  0x00004040 , 0x00000011 
- 00008803  0x00000eed arg  0x00000001 , 0x00000039 
- 00008804  0x00000eef ifetch  0x00000001 , 0x00000011 
- 00008805  0x00000ef0 copy  0x00000013 , 0x0000003d 
- 00008806  0x00000ef2 increase  0x00000050 , 0x00000011 
- 00008807  0x00000ef3 loop  0x00002264 
- 00008808  0x00000ef4 force  0x00000001 , 0x0000003e 
- 00008809  0x00000ef5 rtn 
- 00008810  0x00000ef8 bbit1  0x00000000 , 0x00002266 
- 00008811  0x00000ef9 bbit1  0x00000003 , 0x00002266 
- 00008812  0x00000efa force  0x00000000 , 0x0000003e 
- 00008813  0x00000efb rtn 
- 00008814  0x00000efe bbit1  0x00000003 , 0x00002270 
- 00008815  0x00000eff bbit0  0x00000000 , 0x00002266 
- 00008816  0x00000f01 add  0x00000011 , 0x00000010 , 0x00000006 
- 00008817  0x00000f02 ifetch  0x00000006 , 0x00000006 
- 00008818  0x00000f03 isub  0x00000002 , 0x0000003e 
- 00008819  0x00000f04 rtn  0x00000005 
- 00008820  0x00000f05 branch  0x00002266 
- 00008821  0x00000f08 bbit0  0x00000000 , 0x00002266 
- 00008822  0x00000f09 add  0x00000011 , 0x00000016 , 0x00000006 
- 00008823  0x00000f0a ifetch  0x00000001 , 0x00000006 
- 00008824  0x00000f0b isub  0x00000002 , 0x0000003e 
- 00008825  0x00000f0c rtn  0x00000005 
- 00008826  0x00000f0d branch  0x00002266 
- 00008827  0x00000f10 bbit0  0x00000001 , 0x00002266 
- 00008828  0x00000f12 call  0x000022b3 
- 00008829  0x00000f13 call  0x00002297 
- 00008830  0x00000f14 isub  0x00000002 , 0x0000003f 
- 00008831  0x00000f15 increase  0x00000001 , 0x0000003f 
- 00008832  0x00000f16 branch  0x00002291 , 0x00000002 
- 00008833  0x00000f17 copy  0x00000006 , 0x00000012 
- 00008834  0x00000f18 store  0x00000009 , 0x00000aa2 
- 00008835  0x00000f19 fetch  0x00000001 , 0x000044c0 
- 00008836  0x00000f1a nbranch  0x00002289 , 0x00000034 
- 00008837  0x00000f1b fetch  0x00000009 , 0x00000aa2 
- 00008838  0x00000f1c copy  0x00000012 , 0x00000006 
- 00008839  0x00000f1d increase  0x00000005 , 0x0000003f 
- 00008840  0x00000f1e branch  0x0000228c 
- 00008841  0x00000f20 fetch  0x00000009 , 0x00000aa2 
- 00008842  0x00000f21 copy  0x00000012 , 0x00000006 
- 00008843  0x00000f22 increase  0x00000014 , 0x0000003f 
- 00008844  0x00000f24 nbranch  0x00002266 , 0x00000002 
- 00008845  0x00000f26 copy  0x00000002 , 0x00000021 
- 00008846  0x00000f27 call  0x000022bf 
- 00008847  0x00000f28 force  0x00000000 , 0x0000003e 
- 00008848  0x00000f29 rtn 
- 00008849  0x00000f2d iforce  0x00000012 
- 00008850  0x00000f2e add  0x00000011 , 0x00000002 , 0x00000006 
- 00008851  0x00000f2f ifetch  0x00000002 , 0x00000006 
- 00008852  0x00000f30 branch  0x0000228d , 0x00000034 
- 00008853  0x00000f31 call  0x000022bf 
- 00008854  0x00000f32 branch  0x0000227c 
- 00008855  0x00000f35 rshift16  0x0000003f , 0x0000000b 
- 00008856  0x00000f36 rshift8  0x0000000b , 0x0000000b 
- 00008857  0x00000f37 branch  0x000022a1 , 0x00000005 
- 00008858  0x00000f38 compare  0x0000000f , 0x0000000b , 0x0000000f 
- 00008859  0x00000f39 nrtn  0x00000001 
- 00008860  0x00000f3a rshift16  0x00000002 , 0x0000000b 
- 00008861  0x00000f3b rshift8  0x0000000b , 0x0000000b 
- 00008862  0x00000f3c nrtn  0x00000005 
- 00008863  0x00000f3d set1  0x0000001c , 0x00000002 
- 00008864  0x00000f3e rtn 
- 00008865  0x00000f40 rshift16  0x00000002 , 0x0000000b 
- 00008866  0x00000f41 rshift8  0x0000000b , 0x0000000b 
- 00008867  0x00000f42 compare  0x0000000f , 0x0000000b , 0x0000000f 
- 00008868  0x00000f43 nrtn  0x00000001 
- 00008869  0x00000f44 set1  0x0000001c , 0x0000003f 
- 00008870  0x00000f45 rtn 
- 00008871  0x00000f48 bbit0  0x00000000 , 0x00002266 
- 00008872  0x00000f49 force  0x00000000 , 0x0000003e 
- 00008873  0x00000f4a rtn 
- 00008874  0x00000f4d bbit0  0x00000000 , 0x00002266 
- 00008875  0x00000f4e add  0x00000011 , 0x00000001 , 0x00000006 
- 00008876  0x00000f4f ifetch  0x00000001 , 0x00000006 
- 00008877  0x00000f50 bbit1  0x00000000 , 0x00002266 
- 00008878  0x00000f51 add  0x00000011 , 0x00000017 , 0x00000006 
- 00008879  0x00000f52 ifetch  0x00000001 , 0x00000006 
- 00008880  0x00000f53 bbit0  0x00000003 , 0x00002266 
- 00008881  0x00000f54 force  0x00000000 , 0x0000003e 
- 00008882  0x00000f55 rtn 
- 00008883  0x00000f58 add  0x00000011 , 0x00000001 , 0x00000006 
- 00008884  0x00000f59 ifetcht  0x00000001 , 0x00000006 
- 00008885  0x00000f5a deposit  0x00000022 
- 00008886  0x00000f5b isolate1  0x00000001 , 0x00000002 
- 00008887  0x00000f5c add  0x00000011 , 0x00000004 , 0x00000006 
- 00008888  0x00000f5d ifetcht  0x00000004 , 0x00000006 
- 00008889  0x00000f5e rtn  0x00000001 
- 00008890  0x00000f5f add  0x00000011 , 0x00000008 , 0x00000006 
- 00008891  0x00000f60 ifetch  0x00000006 , 0x00000006 
- 00008892  0x00000f61 call  0x00002854 
- 00008893  0x00000f62 deposit  0x00000028 
- 00008894  0x00000f63 rtn 
- 00008895  0x00000f66 add  0x00000011 , 0x00000002 , 0x00000006 
- 00008896  0x00000f67 add  0x00000011 , 0x00000004 , 0x00000005 
- 00008897  0x00000f68 ifetch  0x00000002 , 0x00000006 
- 00008898  0x00000f69 iadd  0x00000002 , 0x0000000b 
- 00008899  0x00000f6a deposit  0x0000000b 
- 00008900  0x00000f6b istore  0x00000004 , 0x00000005 
- 00008901  0x00000f6c branch  0x00005449 
- 00008902  0x00000f70 bbit0  0x00000001 , 0x00002266 
- 00008903  0x00000f71 call  0x000022b3 
- 00008904  0x00000f72 iadd  0x0000001b , 0x0000003f 
- 00008905  0x00000f73 iadd  0x0000001b , 0x0000003f 
- 00008906  0x00000f74 iadd  0x00000007 , 0x0000003f 
- 00008907  0x00000f75 isub  0x00000002 , 0x0000003e 
- 00008908  0x00000f76 nbranch  0x00002266 , 0x00000002 
- 00008909  0x00000f77 force  0x00000000 , 0x0000003e 
- 00008910  0x00000f78 rtn 
- 00008911  0x00000f7b bbit0  0x00000000 , 0x00002266 
- 00008912  0x00000f7c deposit  0x00000002 
- 00008913  0x00000f7d isub  0x00000011 , 0x0000003e 
- 00008914  0x00000f7e branch  0x00002266 , 0x0000003e 
- 00008915  0x00000f7f add  0x00000011 , 0x00000001 , 0x00000006 
- 00008916  0x00000f80 ifetch  0x00000001 , 0x00000006 
- 00008917  0x00000f81 bbit1  0x00000000 , 0x00002266 
- 00008918  0x00000f82 ifetch  0x00000001 , 0x00000011 
- 00008919  0x00000f83 set0  0x00000007 , 0x0000003f 
- 00008920  0x00000f84 istore  0x00000001 , 0x00000011 
- 00008921  0x00000f85 branch  0x00002266 
- 00008922  0x00000f89 bpatch  0x0000002f , 0x00004005 
- 00008923  0x00000f8a call  0x00002a4f 
- 00008924  0x00000f8c add  0x00000022 , 0x00000001 , 0x00000021 
- 00008925  0x00000f8d call  0x000028e2 
- 00008926  0x00000f8e force  0x00000003 , 0x00000024 
- 00008927  0x00000f8f call  0x000028d2 
- 00008928  0x00000f90 call  0x00002a51 
- 00008929  0x00000f91 call  0x00002a56 
- 00008930  0x00000f92 call  0x00002a64 
- 00008931  0x00000f93 branch  0x00002762 
- 00008932  0x00000f96 bpatch  0x00000030 , 0x00004006 
- 00008933  0x00000f97 call  0x00002a4d 
- 00008934  0x00000f99 add  0x00000022 , 0x00000001 , 0x00000021 
- 00008935  0x00000f9a call  0x000028e2 
- 00008936  0x00000f9b force  0x00000003 , 0x00000024 
- 00008937  0x00000f9c call  0x000028cc 
- 00008938  0x00000f9d call  0x0000242a 
- 00008939  0x00000f9e call  0x000029f1 
- 00008940  0x00000f9f call  0x00002a5b 
- 00008941  0x00000fa0 call  0x000029eb 
- 00008942  0x00000fa2 call  0x00002a0d 
- 00008943  0x00000fa3 nrtn  0x00000018 
- 00008944  0x00000fa4 call  0x000029bb 
- 00008945  0x00000fa5 branch  0x0000251c 
- 00008946  0x00000faa bpatch  0x00000031 , 0x00004006 
- 00008947  0x00000fab fetch  0x00000001 , 0x00000181 
- 00008948  0x00000fac iforce  0x00000004 
- 00008949  0x00000fad force  0x00000001 , 0x00000001 
- 00008950  0x00000fae call  0x000022da 
- 00008951  0x00000faf branch  0x000022e4 
- 00008952  0x00000fbb fetch  0x00000001 , 0x00004093 
- 00008953  0x00000fbc rtnbit0  0x00000000 
- 00008954  0x00000fbd force  0x00000004 , 0x00000007 
- 00008955  0x00000fbe call  0x00007f16 
- 00008956  0x00000fbf nrtn  0x00000034 
- 00008957  0x00000fc0 fetcht  0x00000002 , 0x000040ad 
- 00008958  0x00000fc1 force  0x00000004 , 0x00000007 
- 00008959  0x00000fc2 call  0x0000271c 
- 00008960  0x00000fc3 rtn  0x00000028 
- 00008961  0x00000fc4 call  0x00002308 
- 00008962  0x00000fc5 force  0x00000004 , 0x00000007 
- 00008963  0x00000fc6 fetch  0x00000002 , 0x000040af 
- 00008964  0x00000fc7 nbranch  0x00007f08 , 0x00000018 
- 00008965  0x00000fc8 random  0x0000003f 
- 00008966  0x00000fc9 iand  0x00000035 , 0x0000003f 
- 00008967  0x00000fca branch  0x00007f08 
- 00008968  0x00000fce bpatch  0x00000032 , 0x00004006 
- 00008969  0x00000fcf jam  0x00000000 , 0x00000181 
- 00008970  0x00000fd0 disable  0x00000030 
- 00008971  0x00000fd1 disable  0x0000002e 
- 00008972  0x00000fd2 call  0x000028a4 
- 00008973  0x00000fd3 and  0x00000022 , 0x000001fc , 0x00000021 
- 00008974  0x00000fd4 force  0x00000001 , 0x00000024 
- 00008975  0x00000fd5 call  0x000028d8 
- 00008976  0x00000fd6 call  0x000028cc 
- 00008977  0x00000fd7 setflip  0x0000001d , 0x00000000 
- 00008978  0x00000fd8 fetch  0x00000001 , 0x00000006 
- 00008979  0x00000fd9 increase  0x00000001 , 0x0000003f 
- 00008980  0x00000fda store  0x00000001 , 0x00000006 
- 00008981  0x00000fdb call  0x000028f2 
- 00008982  0x00000fdc call  0x000029eb 
- 00008983  0x00000fdd call  0x00002a14 
- 00008984  0x00000fde nrtn  0x00000018 
- 00008985  0x00000fdf bpatch  0x00000033 , 0x00004006 
- 00008986  0x00000fe0 force  0x00000000 , 0x0000001b 
- 00008987  0x00000fe1 call  0x000028f9 
- 00008988  0x00000fe2 fetch  0x00000001 , 0x00000007 
- 00008989  0x00000fe3 increase  0x00000001 , 0x0000003f 
- 00008990  0x00000fe4 store  0x00000001 , 0x00000007 
- 00008991  0x00000fe5 call  0x000028d8 
- 00008992  0x00000fe6 call  0x00002a4d 
- 00008993  0x00000fe7 or_into  0x00000002 , 0x00000021 
- 00008994  0x00000fe8 force  0x00000001 , 0x00000024 
- 00008995  0x00000fe9 call  0x000028d2 
- 00008996  0x00000fea call  0x000028f2 
- 00008997  0x00000feb call  0x00002a51 
- 00008998  0x00000fec call  0x00002a5f 
- 00008999  0x00000fed deposit  0x00000022 
- 00009000  0x00000fee store  0x00000004 , 0x00000161 
- 00009001  0x00000fef call  0x00002a64 
- 00009002  0x00000ff0 force  0x00000002 , 0x00000001 
- 00009003  0x00000ff1 force  0x00000000 , 0x00000004 
- 00009004  0x00000ff2 call  0x00002a6b 
- 00009005  0x00000ff3 call  0x00002766 
- 00009006  0x00000ff4 call  0x00002332 
- 00009007  0x00000ff5 and_into  0x000001fd , 0x00000021 
- 00009008  0x00000ff6 increase  0x00000001 , 0x00000026 
- 00009009  0x00000ff7 rtn 
- 00009010  0x00000ffa bpatch  0x00000034 , 0x00004006 
- 00009011  0x00000ffb fetch  0x00000001 , 0x000040d1 
- 00009012  0x00000ffc rtn  0x00000034 
- 00009013  0x00000ffd arg  0x0000018e , 0x00000005 
- 00009014  0x00000ffe fetch  0x00000001 , 0x00004515 
- 00009015  0x00000fff copy  0x0000003f , 0x00000039 
- 00009016  0x00001000 increase  0x00000001 , 0x0000003f 
- 00009017  0x00001001 istore  0x00000001 , 0x00000005 
- 00009018  0x00001002 copy  0x00000005 , 0x00000002 
- 00009019  0x00001003 increase  0x00000001 , 0x0000003f 
- 00009020  0x00001004 store  0x00000002 , 0x000041dc 
- 00009021  0x00001005 copy  0x00000002 , 0x00000005 
- 00009022  0x00001006 setarg  0x00000009 
- 00009023  0x00001007 istore  0x00000001 , 0x00000005 
- 00009024  0x00001008 arg  0x00004516 , 0x00000006 
- 00009025  0x00001009 call  0x00007f01 
- 00009026  0x0000100b arg  0x0000458d , 0x00000013 
- 00009027  0x0000100c arg  0x00000004 , 0x00000039 
- 00009028  0x0000100d call  0x00002354 
- 00009029  0x0000100e arg  0x00004577 , 0x00000013 
- 00009030  0x0000100f arg  0x00000001 , 0x00000039 
- 00009031  0x00001010 call  0x00002354 
- 00009032  0x00001012 force  0x0000000a , 0x00000001 
- 00009033  0x00001013 jam  0x00000002 , 0x000041db 
- 00009034  0x00001014 setarg  0x0000018e 
- 00009035  0x00001015 store  0x00000002 , 0x0000016f 
- 00009036  0x00001016 call  0x00002a4d 
- 00009037  0x00001017 call  0x000028d2 
- 00009038  0x00001018 call  0x00002a51 
- 00009039  0x00001019 call  0x00002a5f 
- 00009040  0x0000101a call  0x00002a64 
- 00009041  0x0000101b call  0x00002a6b 
- 00009042  0x0000101c call  0x00002766 
- 00009043  0x0000101d rtn 
- 00009044  0x00001021 copy  0x00000005 , 0x00000002 
- 00009045  0x00001022 copy  0x00000013 , 0x00000006 
- 00009046  0x00001023 ifetch  0x00000001 , 0x00000006 
- 00009047  0x00001024 rtn  0x00000034 
- 00009048  0x00001026 lshift  0x0000003f , 0x0000003f 
- 00009049  0x00001027 loop  0x00002358 
- 00009050  0x00001028 copy  0x0000003f , 0x00000011 
- 00009051  0x00001029 increase  0x00000002 , 0x0000003f 
- 00009052  0x0000102a copy  0x0000003f , 0x00000007 
- 00009053  0x0000102b fetch  0x00000002 , 0x000041dc 
- 00009054  0x0000102c iadd  0x00000007 , 0x0000003f 
- 00009055  0x0000102d store  0x00000002 , 0x000041dc 
- 00009056  0x0000102e copy  0x00000002 , 0x00000005 
- 00009057  0x0000102f copy  0x00000011 , 0x0000003f 
- 00009058  0x00001030 increase  0x00000001 , 0x0000003f 
- 00009059  0x00001031 istore  0x00000001 , 0x00000005 
- 00009060  0x00001032 copy  0x00000013 , 0x00000006 
- 00009061  0x00001033 ifetch  0x00000001 , 0x00000006 
- 00009062  0x00001034 ifetch  0x00000001 , 0x00000006 
- 00009063  0x00001035 istore  0x00000001 , 0x00000005 
- 00009064  0x00001036 copy  0x00000011 , 0x00000039 
- 00009065  0x00001037 branch  0x00007f01 
- 00009066  0x0000103e fetch  0x00000001 , 0x00004093 
- 00009067  0x0000103f rtnbit0  0x00000001 
- 00009068  0x00001040 force  0x00000005 , 0x00000007 
- 00009069  0x00001041 call  0x00007f16 
- 00009070  0x00001042 nrtn  0x00000034 
- 00009071  0x00001043 fetcht  0x00000002 , 0x000040b1 
- 00009072  0x00001044 force  0x00000028 , 0x00000007 
- 00009073  0x00001045 call  0x0000271c 
- 00009074  0x00001046 rtn  0x00000028 
- 00009075  0x00001047 force  0x00000000 , 0x00000004 
- 00009076  0x00001048 jam  0x00000008 , 0x00000010 
- 00009077  0x00001049 set0  0x0000000b , 0x00000000 
- 00009078  0x0000104a call  0x0000237a 
- 00009079  0x0000104b force  0x00000005 , 0x00000007 
- 00009080  0x0000104c fetch  0x00000002 , 0x000040b3 
- 00009081  0x0000104d branch  0x00007f08 
- 00009082  0x00001051 bpatch  0x00000035 , 0x00004006 
- 00009083  0x00001052 disable  0x00000030 
- 00009084  0x00001053 call  0x000028a4 
- 00009085  0x00001054 fetch  0x00000001 , 0x00000008 
- 00009086  0x00001055 increase  0x00000001 , 0x0000003f 
- 00009087  0x00001056 store  0x00000001 , 0x00000008 
- 00009088  0x00001057 force  0x00000000 , 0x00000026 
- 00009089  0x00001058 call  0x000028e2 
- 00009090  0x00001059 add  0x00000022 , 0x00000001 , 0x00000021 
- 00009091  0x0000105a force  0x00000002 , 0x00000024 
- 00009092  0x0000105b bpatch  0x00000036 , 0x00004006 
- 00009093  0x0000105c call  0x000028cc 
- 00009094  0x0000105d call  0x000029eb 
- 00009095  0x0000105e call  0x00002a14 
- 00009096  0x0000105f nrtn  0x00000018 
- 00009097  0x00001060 call  0x000028f9 
- 00009098  0x00001061 fetch  0x00000001 , 0x00000009 
- 00009099  0x00001062 increase  0x00000001 , 0x0000003f 
- 00009100  0x00001063 store  0x00000001 , 0x00000009 
- 00009101  0x00001064 force  0x00000000 , 0x0000001b 
- 00009102  0x00001065 call  0x00002a4d 
- 00009103  0x00001066 or_into  0x00000002 , 0x00000021 
- 00009104  0x00001067 force  0x00000001 , 0x00000024 
- 00009105  0x00001068 call  0x000028d2 
- 00009106  0x00001069 call  0x00002a51 
- 00009107  0x0000106a call  0x00002a5f 
- 00009108  0x0000106b call  0x00002a64 
- 00009109  0x0000106c call  0x0000264d 
- 00009110  0x0000106d force  0x00000000 , 0x00000004 
- 00009111  0x0000106e arg  0x00000600 , 0x0000000b 
- 00009112  0x0000106f until  0x00000029 , 0x00000026 
- 00009113  0x00001070 or_into  0x00000003 , 0x00000028 
- 00009114  0x00001071 and_into  0x000001fd , 0x00000021 
- 00009115  0x00001073 bpatch  0x00000037 , 0x00004006 
- 00009116  0x00001074 increase  0x00000001 , 0x00000026 
- 00009117  0x00001075 call  0x000028cc 
- 00009118  0x00001076 call  0x000029eb 
- 00009119  0x00001077 call  0x00002a07 
- 00009120  0x00001078 nbranch  0x000023a4 , 0x00000018 
- 00009121  0x00001079 call  0x00002a6b 
- 00009122  0x0000107a call  0x0000251e 
- 00009123  0x0000107b bmark1  0x0000000b , 0x000023ab 
- 00009124  0x0000107d bpatch  0x00000038 , 0x00004007 
- 00009125  0x0000107e fetch  0x00000001 , 0x00000010 
- 00009126  0x0000107f rtn  0x00000034 
- 00009127  0x00001080 increase  0xffffffff , 0x0000003f 
- 00009128  0x00001081 store  0x00000001 , 0x00000010 
- 00009129  0x00001082 call  0x00002a4f 
- 00009130  0x00001083 branch  0x0000239b 
- 00009131  0x00001087 bpatch  0x00000039 , 0x00004007 
- 00009132  0x00001088 set0  0x00000001 , 0x00000028 
- 00009133  0x00001089 set1  0x00000000 , 0x00000028 
- 00009134  0x0000108a fetch  0x00000001 , 0x0000000a 
- 00009135  0x0000108b increase  0x00000001 , 0x0000003f 
- 00009136  0x0000108c store  0x00000001 , 0x0000000a 
- 00009137  0x0000108d call  0x00002a4d 
- 00009138  0x0000108e or_into  0x00000002 , 0x00000021 
- 00009139  0x0000108f call  0x000028d2 
- 00009140  0x00001090 call  0x00002a51 
- 00009141  0x00001091 call  0x00002a5f 
- 00009142  0x00001092 call  0x00002a64 
- 00009143  0x00001093 call  0x0000264d 
- 00009144  0x00001095 compare  0x00000003 , 0x00000028 , 0x00000003 
- 00009145  0x00001096 branch  0x000023bc , 0x00000001 
- 00009146  0x00001097 until  0x0000003e , 0x00000017 
- 00009147  0x00001098 branch  0x000023b8 
- 00009148  0x0000109a fetch  0x00000004 , 0x00000165 
- 00009149  0x0000109b or_into  0x00000003 , 0x0000003f 
- 00009150  0x0000109c icopy  0x00000028 
- 00009151  0x0000109f bpatch  0x0000003a , 0x00004007 
- 00009152  0x000010a0 fetch  0x00000006 , 0x00000178 
- 00009153  0x000010a1 store  0x00000006 , 0x00000040 
- 00009154  0x000010a2 call  0x00002435 
- 00009155  0x000010a4 call  0x0000247c 
- 00009156  0x000010a5 branch  0x000023c8 , 0x0000002d 
- 00009157  0x000010a6 call  0x00002455 
- 00009158  0x000010a7 nbranch  0x000023c3 , 0x00000034 
- 00009159  0x000010a8 rtn 
- 00009160  0x000010ac bpatch  0x0000003b , 0x00004007 
- 00009161  0x000010ad call  0x00002440 
- 00009162  0x000010ae call  0x0000223b 
- 00009163  0x000010af nrtn  0x00000005 
- 00009164  0x000010b0 jam  0x00000000 , 0x00000031 
- 00009165  0x000010b1 call  0x00002841 
- 00009166  0x000010b2 branch  0x00002223 
- 00009167  0x000010b8 bpatch  0x0000003c , 0x00004007 
- 00009168  0x000010b9 call  0x00002850 
- 00009169  0x000010ba call  0x000023f3 
- 00009170  0x000010bb rtn  0x00000028 
- 00009171  0x000010bd bpatch  0x0000003d , 0x00004007 
- 00009172  0x000010be call  0x00002c69 
- 00009173  0x000010bf call  0x00006caa 
- 00009174  0x000010c0 call  0x00002514 
- 00009175  0x000010c1 nbranch  0x000023e2 , 0x0000002d 
- 00009176  0x000010c2 call  0x00002a88 
- 00009177  0x000010c3 call  0x00006cc2 
- 00009178  0x000010c4 call  0x00002489 
- 00009179  0x000010c5 call  0x00002757 
- 00009180  0x000010c6 call  0x00002728 
- 00009181  0x000010c7 call  0x00005d08 
- 00009182  0x000010c8 fetch  0x00000001 , 0x0000000b 
- 00009183  0x000010c9 increase  0x00000001 , 0x0000003f 
- 00009184  0x000010ca store  0x00000001 , 0x0000000b 
- 00009185  0x000010cb call  0x00002841 
- 00009186  0x000010cd bpatch  0x0000003e , 0x00004007 
- 00009187  0x000010ce call  0x00002bb1 
- 00009188  0x000010cf call  0x00002a7f 
- 00009189  0x000010d0 branch  0x000023eb , 0x00000002 
- 00009190  0x000010d1 call  0x000021a7 
- 00009191  0x000010d2 nbranch  0x000023eb , 0x00000028 
- 00009192  0x000010d3 call  0x000026f3 
- 00009193  0x000010d4 nbranch  0x000023d3 , 0x00000034 
- 00009194  0x000010d5 rtn 
- 00009195  0x000010d8 bpatch  0x0000003f , 0x00004007 
- 00009196  0x000010d9 jam  0x00000000 , 0x00000151 
- 00009197  0x000010da jam  0x00000000 , 0x0000017f 
- 00009198  0x000010db call  0x0000245d 
- 00009199  0x000010dc set0  0x00000011 , 0x00000000 
- 00009200  0x000010dd call  0x00007fb0 
- 00009201  0x000010de fetch  0x00000001 , 0x00000030 
- 00009202  0x000010df rtn 
- 00009203  0x000010e3 bpatch  0x00000040 , 0x00004008 
- 00009204  0x000010e4 call  0x000021c9 
- 00009205  0x000010e5 nrtn  0x00000028 
- 00009206  0x000010e6 copy  0x00000004 , 0x00000002 
- 00009207  0x000010e7 call  0x00002a6f 
- 00009208  0x000010e8 store  0x00000001 , 0x00000181 
- 00009209  0x000010e9 copy  0x00000002 , 0x00000004 
- 00009210  0x000010ea jam  0x00000020 , 0x00000011 
- 00009211  0x000010ec bpatch  0x00000041 , 0x00004008 
- 00009212  0x000010ed call  0x00002a4f 
- 00009213  0x000010ee force  0x00000002 , 0x00000001 
- 00009214  0x000010ef call  0x0000274f 
- 00009215  0x000010f0 deposit  0x00000022 
- 00009216  0x000010f1 store  0x00000004 , 0x00000161 
- 00009217  0x000010f2 call  0x00002762 
- 00009218  0x000010f3 call  0x00002a4d 
- 00009219  0x000010f4 enable  0x0000002f 
- 00009220  0x000010f5 call  0x000024f6 
- 00009221  0x000010f6 branch  0x0000240d , 0x00000018 
- 00009222  0x000010f7 call  0x000028f9 
- 00009223  0x000010f8 call  0x00002455 
- 00009224  0x000010f9 nbranch  0x000023fb , 0x00000034 
- 00009225  0x000010fa rtnmark0  0x00000004 
- 00009226  0x000010fb jam  0x00000034 , 0x0000007c 
- 00009227  0x000010fc set1  0x00000003 , 0x00000000 
- 00009228  0x000010fd rtn 
- 00009229  0x000010ff enable  0x00000030 
- 00009230  0x00001100 call  0x00002435 
- 00009231  0x00001101 call  0x000028a4 
- 00009232  0x00001103 bpatch  0x00000042 , 0x00004008 
- 00009233  0x00001104 call  0x000022f2 
- 00009234  0x00001105 branch  0x00002419 , 0x00000018 
- 00009235  0x00001106 call  0x00002455 
- 00009236  0x00001107 nbranch  0x00002410 , 0x00000034 
- 00009237  0x00001108 disable  0x00000030 
- 00009238  0x00001109 deposit  0x00000028 
- 00009239  0x0000110a store  0x00000004 , 0x000040ca 
- 00009240  0x0000110b rtn 
- 00009241  0x0000110d enable  0x00000029 
- 00009242  0x0000110e bmark0  0x00000004 , 0x0000241f 
- 00009243  0x0000110f set0  0x00000004 , 0x00000000 
- 00009244  0x00001110 jam  0x00000003 , 0x0000007c 
- 00009245  0x00001111 jam  0x00000033 , 0x0000007d 
- 00009246  0x00001112 call  0x000062f8 
- 00009247  0x00001114 deposit  0x00000004 
- 00009248  0x00001115 store  0x00000001 , 0x00000077 
- 00009249  0x00001116 force  0x00000000 , 0x0000003f 
- 00009250  0x00001117 store  0x00000006 , 0x00000038 
- 00009251  0x00001118 fetch  0x00000001 , 0x00000031 
- 00009252  0x00001119 set1  0x00000001 , 0x0000003f 
- 00009253  0x0000111a store  0x00000001 , 0x00000031 
- 00009254  0x0000111b call  0x00002a88 
- 00009255  0x0000111c disable  0x00000029 
- 00009256  0x0000111d enable  0x00000028 
- 00009257  0x0000111e rtn 
- 00009258  0x00001123 bpatch  0x00000043 , 0x00004008 
- 00009259  0x00001124 disable  0x0000002d 
- 00009260  0x00001125 set0  0x00000005 , 0x00000000 
- 00009261  0x00001126 set0  0x0000000a , 0x00000000 
- 00009262  0x00001127 set0  0x00000010 , 0x00000000 
- 00009263  0x00001128 set0  0x0000000f , 0x00000000 
- 00009264  0x00001129 fetch  0x00000001 , 0x00000047 
- 00009265  0x0000112a set0  0x00000005 , 0x0000003f 
- 00009266  0x0000112b set1  0x00000004 , 0x0000003f 
- 00009267  0x0000112c store  0x00000001 , 0x00000047 
- 00009268  0x0000112d rtn 
- 00009269  0x00001130 bpatch  0x00000044 , 0x00004008 
- 00009270  0x00001131 jam  0x00000020 , 0x00000011 
- 00009271  0x00001132 jam  0x00000050 , 0x00000047 
- 00009272  0x00001133 fetch  0x00000002 , 0x000040bf 
- 00009273  0x00001134 store  0x00000002 , 0x0000003e 
- 00009274  0x00001135 deposit  0x00000022 
- 00009275  0x00001136 store  0x00000004 , 0x000040ca 
- 00009276  0x00001137 rtn  0x00000030 
- 00009277  0x00001138 deposit  0x00000028 
- 00009278  0x00001139 store  0x00000004 , 0x000040ca 
- 00009279  0x0000113a rtn 
- 00009280  0x0000113d bpatch  0x00000045 , 0x00004008 
- 00009281  0x0000113e call  0x00005d04 
- 00009282  0x0000113f call  0x00002459 
- 00009283  0x00001140 store  0x00000001 , 0x00000046 
- 00009284  0x00001141 setarg  0x00000000 
- 00009285  0x00001142 store  0x00000002 , 0x0000025d 
- 00009286  0x00001143 setarg  0x00001c80 
- 00009287  0x00001144 store  0x00000002 , 0x00000051 
- 00009288  0x00001145 fetch  0x00000001 , 0x00000030 
- 00009289  0x00001146 set1  0x00000000 , 0x0000003f 
- 00009290  0x00001147 store  0x00000001 , 0x00000030 
- 00009291  0x00001148 jam  0x00000000 , 0x0000004b 
- 00009292  0x00001149 jam  0x00000000 , 0x0000004c 
- 00009293  0x0000114a jam  0x00000000 , 0x000000a0 
- 00009294  0x0000114b branch  0x00002a88 
- 00009295  0x0000114f bpatch  0x00000046 , 0x00004008 
- 00009296  0x00001150 force  0x00000000 , 0x0000003f 
- 00009297  0x00001151 store  0x00000008 , 0x000041be 
- 00009298  0x00001152 istore  0x00000008 , 0x00000005 
- 00009299  0x00001153 call  0x000021c5 
- 00009300  0x00001154 branch  0x00002254 
- 00009301  0x00001157 fetch  0x00000001 , 0x00000011 
- 00009302  0x00001158 increase  0xffffffff , 0x0000003f 
- 00009303  0x00001159 store  0x00000001 , 0x00000011 
- 00009304  0x0000115a rtn 
- 00009305  0x0000115d fetch  0x00000001 , 0x000040cf 
- 00009306  0x0000115e increase  0x00000001 , 0x0000003f 
- 00009307  0x0000115f store  0x00000001 , 0x000040cf 
- 00009308  0x00001160 rtn 
- 00009309  0x00001164 bpatch  0x00000047 , 0x00004008 
- 00009310  0x00001165 fetch  0x00000001 , 0x000041ce 
- 00009311  0x00001166 beq  0x00000003 , 0x00002462 
- 00009312  0x00001167 fetch  0x00000001 , 0x00000048 
- 00009313  0x00001168 bne  0x00000001 , 0x00002466 
- 00009314  0x0000116a call  0x00004d06 
- 00009315  0x0000116b nbranch  0x00002466 , 0x00000005 
- 00009316  0x0000116c call  0x000021a4 
- 00009317  0x0000116d jam  0x00000000 , 0x000041ce 
- 00009318  0x0000116f bpatch  0x00000048 , 0x00004009 
- 00009319  0x00001170 call  0x000033af 
- 00009320  0x00001171 call  0x000026e9 
- 00009321  0x00001172 jam  0x00000002 , 0x00000a99 
- 00009322  0x00001173 call  0x00007d86 
- 00009323  0x00001174 call  0x00005cf7 
- 00009324  0x00001175 call  0x00004d6b 
- 00009325  0x00001176 call  0x0000757d 
- 00009326  0x00001177 fetch  0x00000001 , 0x00000030 
- 00009327  0x00001178 set0  0x00000000 
- 00009328  0x00001179 store  0x00000001 , 0x00000030 
- 00009329  0x0000117a jam  0x00000000 , 0x00004681 
- 00009330  0x0000117c fetch  0x00000001 , 0x0000004c 
- 00009331  0x0000117d compare  0x00000000 , 0x0000003f , 0x000000c0 
- 00009332  0x0000117e branch  0x00002476 , 0x00000001 
- 00009333  0x0000117f set0  0x00000001 , 0x00000000 
- 00009334  0x00001181 fetch  0x00000001 , 0x00000047 
- 00009335  0x00001182 bbit0  0x00000003 , 0x00002478 
- 00009336  0x00001184 fetch  0x00000001 , 0x0000004b 
- 00009337  0x00001185 rtnbit0  0x00000006 
- 00009338  0x00001186 set0  0x00000002 , 0x00000000 
- 00009339  0x00001187 rtn 
- 00009340  0x0000118a bpatch  0x00000049 , 0x00004009 
- 00009341  0x0000118b fetch  0x00000001 , 0x00000174 
- 00009342  0x0000118c rtn  0x00000034 
- 00009343  0x0000118d icopy  0x00000004 
- 00009344  0x0000118e call  0x00002514 
- 00009345  0x0000118f nrtn  0x0000002d 
- 00009346  0x00001190 force  0x00000000 , 0x00000001 
- 00009347  0x00001191 call  0x00002757 
- 00009348  0x00001192 deposit  0x00000004 
- 00009349  0x00001193 store  0x00000001 , 0x00000077 
- 00009350  0x00001194 force  0x00000000 , 0x0000003f 
- 00009351  0x00001195 store  0x00000001 , 0x00000174 
- 00009352  0x00001196 rtn 
- 00009353  0x0000119d bpatch  0x0000004a , 0x00004009 
- 00009354  0x0000119e fetch  0x00000001 , 0x00000030 
- 00009355  0x0000119f bbit0  0x00000002 , 0x00002496 
- 00009356  0x000011a0 force  0x00000007 , 0x00000001 
- 00009357  0x000011a1 bmark0  0x00000007 , 0x00002495 
- 00009358  0x000011a2 call  0x00002725 
- 00009359  0x000011a3 nbranch  0x00002496 , 0x00000001 
- 00009360  0x000011a4 branch  0x00002496 , 0x0000002e 
- 00009361  0x000011a5 call  0x000024c1 
- 00009362  0x000011a6 setarg  0x00000002 
- 00009363  0x000011a7 store  0x00000002 , 0x000040c8 
- 00009364  0x000011a8 rtn 
- 00009365  0x000011aa nrtn  0x0000002e 
- 00009366  0x000011ac bpatch  0x0000004b , 0x00004009 
- 00009367  0x000011ad call  0x00002243 
- 00009368  0x000011ae nbranch  0x000024a7 , 0x00000005 
- 00009369  0x000011af fetch  0x00000001 , 0x00000047 
- 00009370  0x000011b0 bbit0  0x00000003 , 0x000024b0 
- 00009371  0x000011b2 bmark1  0x00000005 , 0x000024b4 
- 00009372  0x000011b3 fetch  0x00000001 , 0x0000017f 
- 00009373  0x000011b4 bbit1  0x00000006 , 0x000024ba 
- 00009374  0x000011b5 fetch  0x00000002 , 0x000040c8 
- 00009375  0x000011b6 increase  0xffffffff , 0x0000003f 
- 00009376  0x000011b7 store  0x00000002 , 0x000040c8 
- 00009377  0x000011b8 branch  0x000024a5 , 0x00000034 
- 00009378  0x000011b9 fetch  0x00000001 , 0x000040c5 
- 00009379  0x000011ba iforce  0x00000001 
- 00009380  0x000011bb rtn 
- 00009381  0x000011be bpatch  0x0000004c , 0x00004009 
- 00009382  0x000011bf call  0x00002687 
- 00009383  0x000011c1 call  0x00002725 
- 00009384  0x000011c2 branch  0x000024b0 , 0x00000001 
- 00009385  0x000011c3 call  0x0000600a 
- 00009386  0x000011c4 branch  0x000024be , 0x00000028 
- 00009387  0x000011c5 fetch  0x00000001 , 0x0000004b 
- 00009388  0x000011c6 bbit1  0x00000006 , 0x000024c0 
- 00009389  0x000011c7 bmark1  0x00000005 , 0x000024b4 
- 00009390  0x000011c8 fetch  0x00000001 , 0x0000017f 
- 00009391  0x000011c9 bbit1  0x00000006 , 0x000024ba 
- 00009392  0x000011cb force  0x00000001 , 0x00000001 
- 00009393  0x000011cc rtn  0x00000029 
- 00009394  0x000011cd force  0x00000000 , 0x00000001 
- 00009395  0x000011ce rtn 
- 00009396  0x000011d0 bpatch  0x0000004d , 0x00004009 
- 00009397  0x000011d1 fetch  0x00000001 , 0x00000019 
- 00009398  0x000011d2 iforce  0x00000001 
- 00009399  0x000011d3 rtnne  0x00000001 
- 00009400  0x000011d4 force  0x00000000 , 0x00000001 
- 00009401  0x000011d5 rtn 
- 00009402  0x000011d7 fetch  0x00000001 , 0x00000158 
- 00009403  0x000011d8 and  0x0000003f , 0x0000000f , 0x00000001 
- 00009404  0x000011d9 set1  0x00000005 , 0x00000000 
- 00009405  0x000011da rtn 
- 00009406  0x000011dc force  0x00000013 , 0x00000001 
- 00009407  0x000011dd branch  0x000024c1 
- 00009408  0x000011df call  0x000024ca 
- 00009409  0x000011e2 bpatch  0x0000004e , 0x00004009 
- 00009410  0x000011e3 fetcht  0x00000001 , 0x00000047 
- 00009411  0x000011e4 set1  0x00000003 , 0x00000002 
- 00009412  0x000011e5 storet  0x00000001 , 0x00000047 
- 00009413  0x000011e6 deposit  0x00000001 
- 00009414  0x000011e7 store  0x00000001 , 0x000040c5 
- 00009415  0x000011e8 setarg  0x0000ffff 
- 00009416  0x000011e9 store  0x00000002 , 0x000040c8 
- 00009417  0x000011ea rtn 
- 00009418  0x000011ed bpatch  0x0000004f , 0x00004009 
- 00009419  0x000011ee fetch  0x00000001 , 0x0000004c 
- 00009420  0x000011ef isolate1  0x00000005 , 0x0000003f 
- 00009421  0x000011f0 fetch  0x00000002 , 0x000041dc 
- 00009422  0x000011f1 branch  0x000024e0 , 0x00000001 
- 00009423  0x000011f2 force  0x00000003 , 0x00000001 
- 00009424  0x000011f3 sub  0x0000003f , 0x00000011 , 0x0000003e 
- 00009425  0x000011f4 rtn  0x00000002 
- 00009426  0x000011f5 force  0x00000004 , 0x00000001 
- 00009427  0x000011f6 sub  0x0000003f , 0x0000001b , 0x0000003e 
- 00009428  0x000011f7 rtn  0x00000002 
- 00009429  0x000011f8 force  0x0000000a , 0x00000001 
- 00009430  0x000011f9 sub  0x0000003f , 0x00000079 , 0x0000003e 
- 00009431  0x000011fa rtn  0x00000002 
- 00009432  0x000011fb force  0x0000000b , 0x00000001 
- 00009433  0x000011fc sub  0x0000003f , 0x000000b7 , 0x0000003e 
- 00009434  0x000011fd rtn  0x00000002 
- 00009435  0x000011fe force  0x0000000e , 0x00000001 
- 00009436  0x000011ff sub  0x0000003f , 0x000000e0 , 0x0000003e 
- 00009437  0x00001200 rtn  0x00000002 
- 00009438  0x00001201 force  0x0000000f , 0x00000001 
- 00009439  0x00001202 rtn 
- 00009440  0x00001204 force  0x00000003 , 0x00000001 
- 00009441  0x00001205 sub  0x0000003f , 0x00000011 , 0x0000003e 
- 00009442  0x00001206 rtn  0x00000002 
- 00009443  0x00001207 force  0x00000004 , 0x00000001 
- 00009444  0x00001208 sub  0x0000003f , 0x00000036 , 0x0000003e 
- 00009445  0x00001209 rtn  0x00000002 
- 00009446  0x0000120a force  0x0000000a , 0x00000001 
- 00009447  0x0000120b arg  0x0000016f , 0x00000002 
- 00009448  0x0000120c isub  0x00000002 , 0x0000003e 
- 00009449  0x0000120d nrtn  0x00000002 
- 00009450  0x0000120e force  0x0000000e , 0x00000001 
- 00009451  0x0000120f arg  0x000002a7 , 0x00000002 
- 00009452  0x00001210 isub  0x00000002 , 0x0000003e 
- 00009453  0x00001211 nrtn  0x00000002 
- 00009454  0x00001212 force  0x0000000f , 0x00000001 
- 00009455  0x00001213 rtn 
- 00009456  0x0000121d fetch  0x00000001 , 0x00000030 
- 00009457  0x0000121e bbit0  0x00000001 , 0x000024f5 
- 00009458  0x0000121f fetch  0x00000002 , 0x00000032 
- 00009459  0x00001220 branch  0x000024f5 , 0x00000034 
- 00009460  0x00001221 nbranch  0x000024f7 , 0x0000002e 
- 00009461  0x00001223 call  0x00002a4f 
- 00009462  0x00001225 add  0x00000028 , 0x00000001 , 0x00000021 
- 00009463  0x00001227 enable  0x00000010 
- 00009464  0x00001228 fetch  0x00000002 , 0x0000003e 
- 00009465  0x00001229 rshift  0x0000003f , 0x0000003f 
- 00009466  0x0000122a arg  0x00000500 , 0x00000002 
- 00009467  0x0000122b iadd  0x00000002 , 0x0000003f 
- 00009468  0x0000122c call  0x00002a24 
- 00009469  0x0000122d call  0x000028ea 
- 00009470  0x0000122e force  0x00000003 , 0x00000024 
- 00009471  0x0000122f call  0x000028cc 
- 00009472  0x00001230 call  0x0000242a 
- 00009473  0x00001231 call  0x000029f1 
- 00009474  0x00001232 bpatch  0x00000050 , 0x0000400a 
- 00009475  0x00001233 fetch  0x00000002 , 0x0000003e 
- 00009476  0x00001234 rshift  0x0000003f , 0x0000003f 
- 00009477  0x00001235 call  0x00002a24 
- 00009478  0x00001236 call  0x000029eb 
- 00009479  0x00001237 enable  0x0000000d 
- 00009480  0x00001238 fetch  0x00000002 , 0x0000003e 
- 00009481  0x00001239 arg  0x000003bb , 0x00000002 
- 00009482  0x0000123a iadd  0x00000002 , 0x0000001b 
- 00009483  0x0000123b correlate  0x0000003e , 0x00000003 
- 00009484  0x0000123c copy  0x0000001a , 0x00000002 
- 00009485  0x0000123d storet  0x00000006 , 0x0000009a 
- 00009486  0x0000123e disable  0x0000000d 
- 00009487  0x0000123f nrtn  0x00000018 
- 00009488  0x00001240 arg  0x000003bb , 0x00000029 
- 00009489  0x00001241 copy  0x00000021 , 0x00000028 
- 00009490  0x00001242 branch  0x00002b05 , 0x0000002b 
- 00009491  0x00001243 rtn 
- 00009492  0x00001247 bpatch  0x00000051 , 0x0000400a 
- 00009493  0x00001248 call  0x000024f0 
- 00009494  0x00001249 nbranch  0x000028f9 , 0x00000018 
- 00009495  0x0000124a call  0x000029bb 
- 00009496  0x0000124b bmark0  0x00000011 , 0x0000251c 
- 00009497  0x0000124c fetch  0x00000002 , 0x000000f6 
- 00009498  0x0000124d increase  0x00000001 , 0x0000003f 
- 00009499  0x0000124e store  0x00000002 , 0x000000f6 
- 00009500  0x00001250 rshift  0x00000021 , 0x00000002 
- 00009501  0x00001251 or  0x00000002 , 0x00000040 , 0x0000000e 
- 00009502  0x00001253 bpatch  0x00000052 , 0x0000400a 
- 00009503  0x00001254 enable  0x00000007 
- 00009504  0x00001255 enable  0x0000000a 
- 00009505  0x00001256 enable  0x0000000b 
- 00009506  0x00001257 parse  0x00000003 , 0x00000000 , 0x00000003 
- 00009507  0x00001258 rshift8  0x0000000c , 0x0000003f 
- 00009508  0x00001259 store  0x00000001 , 0x0000015d 
- 00009509  0x0000125a parse  0x00000003 , 0x00000000 , 0x00000004 
- 00009510  0x0000125b inject  0x00000000 , 0x00000007 
- 00009511  0x0000125c copy  0x0000000c , 0x0000003f 
- 00009512  0x0000125d store  0x00000001 , 0x00000019 
- 00009513  0x0000125e parse  0x00000003 , 0x00000000 , 0x00000003 
- 00009514  0x0000125f rshift8  0x0000000c , 0x0000003f 
- 00009515  0x00001260 store  0x00000001 , 0x0000015e 
- 00009516  0x00001261 fetch  0x00000001 , 0x00000019 
- 00009517  0x00001262 sub  0x0000003f , 0x00000003 , 0x0000003e 
- 00009518  0x00001263 branch  0x00002533 , 0x00000002 
- 00009519  0x00001264 beq  0x00000007 , 0x00002533 
- 00009520  0x00001265 fetch  0x00000001 , 0x0000004c 
- 00009521  0x00001266 isolate1  0x00000005 , 0x0000003f 
- 00009522  0x00001267 setflag  0x00000001 , 0x00000001 , 0x00000015 
- 00009523  0x00001269 bpatch  0x00000053 , 0x0000400a 
- 00009524  0x0000126a parse  0x00000003 , 0x00000000 , 0x00000008 
- 00009525  0x0000126b disable  0x0000000b 
- 00009526  0x0000126c disable  0x0000000a 
- 00009527  0x0000126d branch  0x00002631 , 0x00000006 
- 00009528  0x0000126e bmark0  0x00000011 , 0x0000253c 
- 00009529  0x0000126f fetch  0x00000002 , 0x000000f8 
- 00009530  0x00001270 increase  0x00000001 , 0x0000003f 
- 00009531  0x00001271 store  0x00000002 , 0x000000f8 
- 00009532  0x00001273 bpatch  0x00000054 , 0x0000400a 
- 00009533  0x00001274 fetch  0x00000001 , 0x0000015d 
- 00009534  0x00001275 compare  0x00000000 , 0x0000003f , 0x00000007 
- 00009535  0x00001276 setflag  0x00000001 , 0x0000000a , 0x00000000 
- 00009536  0x00001277 branch  0x0000254c , 0x00000001 
- 00009537  0x00001278 icompare  0x00000007 , 0x00000004 
- 00009538  0x00001279 branch  0x0000254b , 0x00000001 
- 00009539  0x0000127a bmark0  0x00000007 , 0x0000264d 
- 00009540  0x0000127b fetcht  0x00000001 , 0x000000b0 
- 00009541  0x0000127c icompare  0x00000007 , 0x00000002 
- 00009542  0x0000127d nbranch  0x0000264d , 0x00000001 
- 00009543  0x0000127e fetch  0x00000001 , 0x00000047 
- 00009544  0x0000127f set0  0x00000005 , 0x0000003f 
- 00009545  0x00001280 set1  0x00000004 , 0x0000003f 
- 00009546  0x00001281 store  0x00000001 , 0x00000047 
- 00009547  0x00001283 enable  0x0000002d 
- 00009548  0x00001285 bpatch  0x00000055 , 0x0000400a 
- 00009549  0x00001286 fetch  0x00000001 , 0x00000019 
- 00009550  0x00001287 icopy  0x00000001 
- 00009551  0x00001288 bmark1  0x0000000a , 0x0000255b 
- 00009552  0x00001289 fetcht  0x00000001 , 0x0000015e 
- 00009553  0x0000128a fetch  0x00000001 , 0x00000047 
- 00009554  0x0000128b set0  0x00000000 , 0x0000003f 
- 00009555  0x0000128c isolate1  0x00000000 , 0x00000002 
- 00009556  0x0000128d setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00009557  0x0000128e isolate1  0x00000001 , 0x00000002 
- 00009558  0x0000128f setflag  0x00000001 , 0x00000001 , 0x0000003f 
- 00009559  0x00001290 store  0x00000001 , 0x00000047 
- 00009560  0x00001291 isolate0  0x00000001 , 0x00000002 
- 00009561  0x00001292 branch  0x0000255b , 0x00000001 
- 00009562  0x00001293 call  0x00002687 
- 00009563  0x00001295 bpatch  0x00000056 , 0x0000400a 
- 00009564  0x00001296 arg  0x00000000 , 0x00000002 
- 00009565  0x00001297 call  0x00002a1c 
- 00009566  0x00001298 and  0x00000001 , 0x0000000f , 0x0000003f 
- 00009567  0x00001299 beq  0x00000001 , 0x00002587 
- 00009568  0x0000129a beq  0x00000000 , 0x0000264d 
- 00009569  0x0000129b beq  0x00000002 , 0x00002659 
- 00009570  0x0000129c fetcht  0x00000001 , 0x0000015e 
- 00009571  0x0000129d fetch  0x00000001 , 0x00000047 
- 00009572  0x0000129e icompare  0x00000004 , 0x00000002 
- 00009573  0x0000129f nbranch  0x00002569 , 0x00000001 
- 00009574  0x000012a0 bmark0  0x0000000a , 0x00002568 
- 00009575  0x000012a1 bbit0  0x00000007 , 0x00002569 
- 00009576  0x000012a3 set1  0x0000000f , 0x00000000 
- 00009577  0x000012a5 bpatch  0x00000057 , 0x0000400a 
- 00009578  0x000012a6 deposit  0x00000001 
- 00009579  0x000012a7 beq  0x00000003 , 0x00002589 
- 00009580  0x000012a8 beq  0x00000004 , 0x0000258d 
- 00009581  0x000012a9 beq  0x00000007 , 0x00002578 
- 00009582  0x000012aa beq  0x00000008 , 0x0000258c 
- 00009583  0x000012ab arg  0x00000004 , 0x00000002 
- 00009584  0x000012ac call  0x00002a1c 
- 00009585  0x000012ad beq  0x0000000a , 0x00002588 
- 00009586  0x000012ae beq  0x0000000b , 0x0000258b 
- 00009587  0x000012af arg  0x00000008 , 0x00000002 
- 00009588  0x000012b0 call  0x00002a1c 
- 00009589  0x000012b1 beq  0x0000000e , 0x00002588 
- 00009590  0x000012b2 beq  0x0000000f , 0x0000258b 
- 00009591  0x000012b3 rtn 
- 00009592  0x000012b7 bpatch  0x00000058 , 0x0000400b 
- 00009593  0x000012b8 enable  0x0000000d 
- 00009594  0x000012b9 enable  0x00000009 
- 00009595  0x000012ba enable  0x0000000e 
- 00009596  0x000012bb arg  0x000000d1 , 0x00000005 
- 00009597  0x000012bc force  0x0000001e , 0x00000039 
- 00009598  0x000012be parse  0x00000003 , 0x00000000 , 0x00000008 
- 00009599  0x000012bf rshift3  0x0000000c , 0x0000003f 
- 00009600  0x000012c0 istore  0x00000001 , 0x00000005 
- 00009601  0x000012c1 loop  0x0000257e 
- 00009602  0x000012c2 bmark0  0x00000007 , 0x0000264d 
- 00009603  0x000012c3 parse  0x00000003 , 0x00000000 , 0x00000010 
- 00009604  0x000012c4 nsetflag  0x00000006 , 0x00000008 , 0x00000000 
- 00009605  0x000012c5 branch  0x0000263d , 0x00000006 
- 00009606  0x000012c6 branch  0x00002620 
- 00009607  0x000012ca branch  0x0000264d 
- 00009608  0x000012ce set1  0x00000010 , 0x00000000 
- 00009609  0x000012d0 enable  0x0000000c 
- 00009610  0x000012d1 branch  0x0000258e 
- 00009611  0x000012d5 set1  0x00000010 , 0x00000000 
- 00009612  0x000012d7 set1  0x00000002 , 0x00000015 
- 00009613  0x000012d9 enable  0x0000000d 
- 00009614  0x000012db bpatch  0x00000059 , 0x0000400b 
- 00009615  0x000012dc bmark1  0x00000001 , 0x0000264d 
- 00009616  0x000012dd isolate0  0x00000001 , 0x00000015 
- 00009617  0x000012de branch  0x0000259a , 0x00000001 
- 00009618  0x000012df disable  0x00000007 
- 00009619  0x000012e0 enable  0x0000000d 
- 00009620  0x000012e1 disable  0x0000000c 
- 00009621  0x000012e2 add  0x00000022 , 0x00000002 , 0x0000000b 
- 00009622  0x000012e3 correlate  0x00000022 , 0x00000026 
- 00009623  0x000012e4 nbranch  0x0000263d , 0x00000018 
- 00009624  0x000012e5 set1  0x00000010 , 0x00000000 
- 00009625  0x000012e6 enable  0x00000007 
- 00009626  0x000012e8 bpatch  0x0000005a , 0x0000400b 
- 00009627  0x000012e9 enable  0x0000000e 
- 00009628  0x000012ea enable  0x00000009 
- 00009629  0x000012eb parse  0x00000003 , 0x00000000 , 0x00000003 
- 00009630  0x000012ec rshift8  0x0000000c , 0x0000003f 
- 00009631  0x000012ed store  0x00000001 , 0x00000180 
- 00009632  0x000012ee parse  0x00000003 , 0x00000000 , 0x00000005 
- 00009633  0x000012ef bmark1  0x00000010 , 0x000025a5 
- 00009634  0x000012f0 rshift3  0x0000000c , 0x00000039 
- 00009635  0x000012f1 rshift3  0x00000039 , 0x00000039 
- 00009636  0x000012f2 branch  0x000025a8 
- 00009637  0x000012f4 parse  0x00000003 , 0x00000000 , 0x00000005 
- 00009638  0x000012f5 rshift  0x0000000c , 0x00000039 
- 00009639  0x000012f6 parse  0x00000003 , 0x00000000 , 0x00000003 
- 00009640  0x000012f8 bpatch  0x0000005b , 0x0000400b 
- 00009641  0x000012f9 deposit  0x00000039 
- 00009642  0x000012fa store  0x00000002 , 0x0000015f 
- 00009643  0x000012fb branch  0x000025e8 , 0x00000034 
- 00009644  0x000012fc isub  0x00000035 , 0x0000003e 
- 00009645  0x000012fd branch  0x0000263d , 0x00000002 
- 00009646  0x000012fe bpatch  0x0000005c , 0x0000400b 
- 00009647  0x000012ff set0  0x00000000 , 0x00000000 
- 00009648  0x00001300 fetch  0x00000001 , 0x00000180 
- 00009649  0x00001301 and_into  0x00000003 , 0x0000003f 
- 00009650  0x00001302 arg  0x00000551 , 0x00000005 
- 00009651  0x00001303 beq  0x00000003 , 0x000025ba 
- 00009652  0x00001304 bmark1  0x00000011 , 0x000025e4 
- 00009653  0x00001306 fetch  0x00000001 , 0x00000180 
- 00009654  0x00001307 and_into  0x00000003 , 0x0000003f 
- 00009655  0x00001308 beq  0x00000002 , 0x000025bf 
- 00009656  0x00001309 beq  0x00000001 , 0x000025d3 
- 00009657  0x0000130a branch  0x0000263d 
- 00009658  0x0000130d fetch  0x00000002 , 0x0000015f 
- 00009659  0x0000130e sub  0x0000003f , 0x00000070 , 0x0000003e 
- 00009660  0x0000130f nbranch  0x0000263d , 0x00000002 
- 00009661  0x00001310 bmark1  0x0000000f , 0x00002620 
- 00009662  0x00001311 branch  0x000025e4 
- 00009663  0x00001315 bpatch  0x0000005d , 0x0000400b 
- 00009664  0x00001316 bmark1  0x0000000f , 0x00002620 
- 00009665  0x00001317 fetch  0x00000002 , 0x0000015f 
- 00009666  0x00001318 arg  0x000002e0 , 0x00000002 
- 00009667  0x00001319 isub  0x00000002 , 0x0000003e 
- 00009668  0x0000131a branch  0x0000263d , 0x00000002 
- 00009669  0x0000131b fetch  0x00000001 , 0x00000263 
- 00009670  0x0000131c bbit0  0x00000000 , 0x000025c9 
- 00009671  0x0000131d bbit0  0x00000001 , 0x000025ce 
- 00009672  0x0000131e branch  0x0000264d 
- 00009673  0x00001320 jam  0x00000001 , 0x00000261 
- 00009674  0x00001321 fetch  0x00000002 , 0x0000025d 
- 00009675  0x00001322 bne  0x00000000 , 0x0000264d 
- 00009676  0x00001323 arg  0x00001000 , 0x00000005 
- 00009677  0x00001324 branch  0x000025e4 
- 00009678  0x00001326 jam  0x00000002 , 0x00000261 
- 00009679  0x00001327 fetch  0x00000002 , 0x0000025f 
- 00009680  0x00001328 bne  0x00000000 , 0x0000264d 
- 00009681  0x00001329 arg  0x00001400 , 0x00000005 
- 00009682  0x0000132a branch  0x000025e4 
- 00009683  0x0000132d bpatch  0x0000005e , 0x0000400b 
- 00009684  0x0000132e bmark1  0x0000000f , 0x00002620 
- 00009685  0x0000132f fetch  0x00000002 , 0x0000015f 
- 00009686  0x00001330 arg  0x000002e0 , 0x00000002 
- 00009687  0x00001331 isub  0x00000002 , 0x0000003e 
- 00009688  0x00001332 branch  0x0000263d , 0x00000002 
- 00009689  0x00001333 fetch  0x00000001 , 0x00000261 
- 00009690  0x00001334 beq  0x00000001 , 0x000025dd 
- 00009691  0x00001335 beq  0x00000002 , 0x000025e1 
- 00009692  0x00001336 branch  0x0000264d 
- 00009693  0x00001338 arg  0x00001000 , 0x00000005 
- 00009694  0x00001339 fetch  0x00000002 , 0x0000025d 
- 00009695  0x0000133a iadd  0x00000005 , 0x00000005 
- 00009696  0x0000133b branch  0x000025e4 
- 00009697  0x0000133d arg  0x00001400 , 0x00000005 
- 00009698  0x0000133e fetch  0x00000002 , 0x0000025f 
- 00009699  0x0000133f iadd  0x00000005 , 0x00000005 
- 00009700  0x00001341 parse  0x00000003 , 0x00000000 , 0x00000008 
- 00009701  0x00001342 rshift3  0x0000000c , 0x0000003f 
- 00009702  0x00001343 istore  0x00000001 , 0x00000005 
- 00009703  0x00001344 loop  0x000025e4 
- 00009704  0x00001346 bpatch  0x0000005f , 0x0000400b 
- 00009705  0x00001347 parse  0x00000003 , 0x00000000 , 0x00000010 
- 00009706  0x00001348 branch  0x00002637 , 0x00000006 
- 00009707  0x00001349 fetch  0x00000001 , 0x00004363 
- 00009708  0x0000134a beq  0x00000001 , 0x0000264d 
- 00009709  0x0000134b bmark1  0x00000011 , 0x0000260d 
- 00009710  0x0000134c bmark1  0x0000000f , 0x0000264a 
- 00009711  0x0000134d fetch  0x00000001 , 0x00000180 
- 00009712  0x0000134e compare  0x00000003 , 0x0000003f , 0x00000003 
- 00009713  0x0000134f branch  0x0000260d , 0x00000001 
- 00009714  0x00001350 fetch  0x00000002 , 0x0000015f 
- 00009715  0x00001351 branch  0x0000260d , 0x00000034 
- 00009716  0x00001352 bpatch  0x00000060 , 0x0000400c 
- 00009717  0x00001353 fetch  0x00000001 , 0x00000261 
- 00009718  0x00001354 beq  0x00000001 , 0x000025f9 
- 00009719  0x00001355 beq  0x00000002 , 0x00002603 
- 00009720  0x00001356 branch  0x00002a8c 
- 00009721  0x00001358 fetch  0x00000002 , 0x0000025d 
- 00009722  0x00001359 fetcht  0x00000002 , 0x0000015f 
- 00009723  0x0000135a iadd  0x00000002 , 0x0000003f 
- 00009724  0x0000135b store  0x00000002 , 0x0000025d 
- 00009725  0x0000135c beq  0x00000000 , 0x00002a8c 
- 00009726  0x0000135d fetcht  0x00000002 , 0x00001000 
- 00009727  0x0000135e increase  0x00000004 , 0x00000002 
- 00009728  0x0000135f isub  0x00000002 , 0x0000003e 
- 00009729  0x00001360 call  0x00002747 , 0x00000005 
- 00009730  0x00001361 branch  0x0000260d 
- 00009731  0x00001363 fetch  0x00000002 , 0x0000025f 
- 00009732  0x00001364 fetcht  0x00000002 , 0x0000015f 
- 00009733  0x00001365 iadd  0x00000002 , 0x0000003f 
- 00009734  0x00001366 store  0x00000002 , 0x0000025f 
- 00009735  0x00001367 beq  0x00000000 , 0x00002a8c 
- 00009736  0x00001368 fetcht  0x00000002 , 0x00001400 
- 00009737  0x00001369 add  0x00000002 , 0x00000004 , 0x00000002 
- 00009738  0x0000136a isub  0x00000002 , 0x0000003e 
- 00009739  0x0000136b call  0x0000274b , 0x00000005 
- 00009740  0x0000136c branch  0x0000260d 
- 00009741  0x0000136e bpatch  0x00000061 , 0x0000400c 
- 00009742  0x0000136f fetcht  0x00000001 , 0x0000004c 
- 00009743  0x00001370 fetch  0x00000001 , 0x00000180 
- 00009744  0x00001371 compare  0x00000003 , 0x0000003f , 0x00000003 
- 00009745  0x00001372 setflag  0x00000001 , 0x00000006 , 0x00000002 
- 00009746  0x00001373 nsetflag  0x00000001 , 0x00000007 , 0x00000002 
- 00009747  0x00001374 storet  0x00000001 , 0x0000004c 
- 00009748  0x00001375 nbranch  0x00002616 , 0x00000001 
- 00009749  0x00001376 set1  0x00000001 , 0x00000000 
- 00009750  0x00001378 bmark0  0x00000011 , 0x00002620 
- 00009751  0x00001379 isolate1  0x00000006 , 0x00000002 
- 00009752  0x0000137a branch  0x00002620 , 0x00000001 
- 00009753  0x0000137b fetch  0x00000002 , 0x000000fa 
- 00009754  0x0000137c increase  0x00000001 , 0x0000003f 
- 00009755  0x0000137d store  0x00000002 , 0x000000fa 
- 00009756  0x0000137e set1  0x00000005 , 0x00000000 
- 00009757  0x0000137f set0  0x00000007 , 0x00000002 
- 00009758  0x00001380 set0  0x00000001 , 0x00000000 
- 00009759  0x00001381 storet  0x00000001 , 0x0000004c 
- 00009760  0x00001383 bpatch  0x00000062 , 0x0000400c 
- 00009761  0x00001384 fetcht  0x00000001 , 0x0000015e 
- 00009762  0x00001385 fetch  0x00000001 , 0x00000047 
- 00009763  0x00001386 set1  0x00000005 , 0x0000003f 
- 00009764  0x00001387 isolate1  0x00000002 , 0x00000002 
- 00009765  0x00001388 setflag  0x00000001 , 0x00000002 , 0x0000003f 
- 00009766  0x00001389 isolate1  0x0000000a , 0x00000000 
- 00009767  0x0000138a setflag  0x00000001 , 0x00000007 , 0x0000003f 
- 00009768  0x0000138b store  0x00000001 , 0x00000047 
- 00009769  0x0000138c fetch  0x00000002 , 0x0000015f 
- 00009770  0x0000138d nbranch  0x0000264d , 0x00000034 
- 00009771  0x0000138e fetch  0x00000001 , 0x0000004c 
- 00009772  0x0000138f set0  0x00000007 , 0x0000003f 
- 00009773  0x00001390 store  0x00000001 , 0x0000004c 
- 00009774  0x00001391 fetch  0x00000001 , 0x00000180 
- 00009775  0x00001392 compare  0x00000001 , 0x0000003f , 0x00000007 
- 00009776  0x00001394 branch  0x0000264d 
- 00009777  0x00001397 bpatch  0x00000063 , 0x0000400c 
- 00009778  0x00001398 disable  0x0000002d 
- 00009779  0x00001399 fetch  0x00000002 , 0x0000001a 
- 00009780  0x0000139a increase  0x00000001 , 0x0000003f 
- 00009781  0x0000139b store  0x00000002 , 0x0000001a 
- 00009782  0x0000139c branch  0x0000264d 
- 00009783  0x0000139e fetch  0x00000002 , 0x0000001c 
- 00009784  0x0000139f increase  0x00000001 , 0x0000003f 
- 00009785  0x000013a0 store  0x00000002 , 0x0000001c 
- 00009786  0x000013a1 call  0x0000263e 
- 00009787  0x000013a2 bmark0  0x00000011 , 0x0000263d 
- 00009788  0x000013a3 set1  0x00000005 , 0x00000000 
- 00009789  0x000013a5 branch  0x0000264d 
- 00009790  0x000013a8 bpatch  0x00000064 , 0x0000400c 
- 00009791  0x000013a9 fetch  0x00000001 , 0x00000180 
- 00009792  0x000013aa compare  0x00000003 , 0x0000003f , 0x00000003 
- 00009793  0x000013ab nbranch  0x00002646 , 0x00000001 
- 00009794  0x000013ad fetcht  0x00000001 , 0x0000004c 
- 00009795  0x000013ae set0  0x00000006 , 0x00000002 
- 00009796  0x000013af storet  0x00000001 , 0x0000004c 
- 00009797  0x000013b0 rtn 
- 00009798  0x000013b4 fetcht  0x00000001 , 0x0000004c 
- 00009799  0x000013b5 set0  0x00000007 , 0x00000002 
- 00009800  0x000013b6 storet  0x00000001 , 0x0000004c 
- 00009801  0x000013b7 branch  0x00004c0b 
- 00009802  0x000013ba fetch  0x00000001 , 0x00000047 
- 00009803  0x000013bb set1  0x00000005 , 0x0000003f 
- 00009804  0x000013bc store  0x00000001 , 0x00000047 
- 00009805  0x000013be bpatch  0x00000065 , 0x0000400c 
- 00009806  0x000013bf disable  0x0000001d 
- 00009807  0x000013c0 disable  0x0000001c 
- 00009808  0x000013c1 disable  0x0000000d 
- 00009809  0x000013c2 disable  0x0000000c 
- 00009810  0x000013c3 disable  0x00000009 
- 00009811  0x000013c4 disable  0x0000000e 
- 00009812  0x000013c5 disable  0x00000007 
- 00009813  0x000013c6 branch  0x000028f9 , 0x00000021 
- 00009814  0x000013c7 until  0x0000003e , 0x00000027 
- 00009815  0x000013c8 nop  0x00000064 
- 00009816  0x000013c9 branch  0x000028f9 
- 00009817  0x000013cc bpatch  0x00000066 , 0x0000400c 
- 00009818  0x000013cd enable  0x00000009 
- 00009819  0x000013ce enable  0x0000000c 
- 00009820  0x000013cf parse  0x00000003 , 0x00000000 , 0x00000048 
- 00009821  0x000013d0 isolate1  0x0000003a , 0x0000003f 
- 00009822  0x000013d1 setflag  0x00000001 , 0x00000000 , 0x00000000 
- 00009823  0x000013d2 copy  0x00000020 , 0x00000002 
- 00009824  0x000013d3 ialigned  0x00000020 
- 00009825  0x000013d4 ialigned  0x0000001e 
- 00009826  0x000013d5 pulse  0x00000015 
- 00009827  0x000013d6 setsect  0x00000002 , 0x000fffff 
- 00009828  0x000013d7 setsect  0x00000003 , 0x0000ffff 
- 00009829  0x000013d8 nop  0x00000020 
- 00009830  0x000013d9 iverify  0x0000000d 
- 00009831  0x000013da deposit  0x0000002c 
- 00009832  0x000013db store  0x00000003 , 0x00000178 
- 00009833  0x000013dc deposit  0x0000002d 
- 00009834  0x000013dd store  0x00000001 , 0x0000017b 
- 00009835  0x000013de copy  0x00000002 , 0x00000020 
- 00009836  0x000013df branch  0x0000266e , 0x00000001 
- 00009837  0x000013e0 branch  0x0000263d 
- 00009838  0x000013e2 bpatch  0x00000067 , 0x0000400c 
- 00009839  0x000013e3 parse  0x00000003 , 0x00000000 , 0x00000048 
- 00009840  0x000013e4 ialigned  0x0000001f 
- 00009841  0x000013e5 ialigned  0x00000004 
- 00009842  0x000013e6 ialigned  0x0000002e 
- 00009843  0x000013e7 ialigned  0x00000012 
- 00009844  0x000013e8 force  0x00000000 , 0x0000003f 
- 00009845  0x000013e9 parse  0x00000003 , 0x00000000 , 0x00000010 
- 00009846  0x000013ea branch  0x0000263d , 0x00000006 
- 00009847  0x000013eb setarg  0x0ffffffc 
- 00009848  0x000013ec iand  0x00000012 , 0x0000003f 
- 00009849  0x000013ed store  0x00000004 , 0x00000165 
- 00009850  0x000013ee deposit  0x0000001d 
- 00009851  0x000013ef store  0x00000003 , 0x00000175 
- 00009852  0x000013f0 deposit  0x0000001c 
- 00009853  0x000013f1 store  0x00000001 , 0x00000173 
- 00009854  0x000013f2 deposit  0x00000004 
- 00009855  0x000013f3 store  0x00000001 , 0x00000174 
- 00009856  0x000013f4 deposit  0x0000002e 
- 00009857  0x000013f5 store  0x00000002 , 0x0000017c 
- 00009858  0x000013f6 deposit  0x00000021 
- 00009859  0x000013f7 inject  0x00000001 , 0x00000020 
- 00009860  0x000013f8 compare  0x00000002 , 0x00000001 , 0x0000000f 
- 00009861  0x000013f9 setflag  0x00000001 , 0x0000000b , 0x00000000 
- 00009862  0x000013fa branch  0x0000264d 
- 00009863  0x000013fd bpatch  0x00000068 , 0x0000400d 
- 00009864  0x000013fe fetch  0x00000001 , 0x00000047 
- 00009865  0x000013ff rtnbit0  0x00000003 
- 00009866  0x00001400 set0  0x00000003 , 0x0000003f 
- 00009867  0x00001401 setflip  0x00000006 , 0x0000003f 
- 00009868  0x00001402 store  0x00000001 , 0x00000047 
- 00009869  0x00001403 fetch  0x00000001 , 0x000040c5 
- 00009870  0x00001404 beq  0x00000013 , 0x0000269c 
- 00009871  0x00001405 rtneq  0x00000007 
- 00009872  0x00001406 fetch  0x00000001 , 0x0000004b 
- 00009873  0x00001407 rtnbit0  0x00000006 , 0x0000003f 
- 00009874  0x00001408 set0  0x00000006 , 0x0000003f 
- 00009875  0x00001409 set1  0x00000007 , 0x0000003f 
- 00009876  0x0000140a store  0x00000001 , 0x0000004b 
- 00009877  0x0000140b set0  0x00000002 , 0x00000000 
- 00009878  0x0000140c fetch  0x00000002 , 0x00004246 
- 00009879  0x0000140d nrtn  0x00000034 
- 00009880  0x0000140e fetch  0x00000001 , 0x0000004b 
- 00009881  0x0000140f set0  0x00000007 , 0x0000003f 
- 00009882  0x00001410 store  0x00000001 , 0x0000004b 
- 00009883  0x00001411 branch  0x0000525d 
- 00009884  0x00001414 bpatch  0x00000069 , 0x0000400d 
- 00009885  0x00001415 fetch  0x00000001 , 0x000004b7 
- 00009886  0x00001416 rshift  0x0000003f , 0x0000003f 
- 00009887  0x00001417 beq  0x00000011 , 0x000026b8 
- 00009888  0x00001418 beq  0x00000012 , 0x000026c0 
- 00009889  0x00001419 beq  0x00000018 , 0x000026e9 
- 00009890  0x0000141a beq  0x0000007f , 0x000026a8 
- 00009891  0x0000141b rtnne  0x00000003 
- 00009892  0x0000141c fetch  0x00000001 , 0x000004b8 
- 00009893  0x0000141d beq  0x0000002b , 0x000026b0 
- 00009894  0x0000141e beq  0x00000011 , 0x000026ab 
- 00009895  0x0000141f rtn 
- 00009896  0x00001422 fetch  0x00000001 , 0x000004b8 
- 00009897  0x00001423 set1  0x00000007 , 0x0000003f 
- 00009898  0x00001424 rtn 
- 00009899  0x00001426 rtn  0x00000029 
- 00009900  0x00001427 fetch  0x00000001 , 0x00000030 
- 00009901  0x00001428 rtnbit1  0x00000004 
- 00009902  0x00001429 jam  0x00000031 , 0x0000007c 
- 00009903  0x0000142a rtn 
- 00009904  0x0000142e rtn  0x00000029 
- 00009905  0x0000142f fetch  0x00000001 , 0x00000031 
- 00009906  0x00001430 isolate1  0x00000004 , 0x0000003f 
- 00009907  0x00001431 branch  0x000026b5 , 0x00000001 
- 00009908  0x00001433 rtn 
- 00009909  0x00001435 set0  0x00000004 , 0x0000003f 
- 00009910  0x00001436 store  0x00000001 , 0x00000031 
- 00009911  0x00001437 rtn 
- 00009912  0x0000143a bpatch  0x0000006a , 0x0000400d 
- 00009913  0x0000143b fetch  0x00000001 , 0x0000004c 
- 00009914  0x0000143c set1  0x00000002 , 0x0000003f 
- 00009915  0x0000143d store  0x00000001 , 0x0000004c 
- 00009916  0x0000143e jam  0x00000001 , 0x00008011 
- 00009917  0x0000143f fetch  0x00000001 , 0x00000030 
- 00009918  0x00001440 isolate1  0x00000004 , 0x0000003f 
- 00009919  0x00001441 rtn 
- 00009920  0x00001444 bpatch  0x0000006b , 0x0000400d 
- 00009921  0x00001445 fetch  0x00000001 , 0x0000004c 
- 00009922  0x00001446 set0  0x00000002 , 0x0000003f 
- 00009923  0x00001447 store  0x00000001 , 0x0000004c 
- 00009924  0x00001448 jam  0x00000000 , 0x00008011 
- 00009925  0x00001449 rtn 
- 00009926  0x0000144d bpatch  0x0000006c , 0x0000400d 
- 00009927  0x0000144e copy  0x00000022 , 0x0000003f 
- 00009928  0x0000144f store  0x00000004 , 0x0000420c 
- 00009929  0x00001450 add  0x00000022 , 0x00000003 , 0x00000011 
- 00009930  0x00001451 branch  0x000026cc , 0x00000029 
- 00009931  0x00001452 add  0x00000028 , 0x00000003 , 0x00000011 
- 00009932  0x00001454 fetcht  0x00000002 , 0x00000032 
- 00009933  0x00001455 deposit  0x00000011 
- 00009934  0x00001456 set0  0x0000001b , 0x0000003f 
- 00009935  0x00001457 idiv  0x00000002 
- 00009936  0x00001458 fetch  0x00000002 , 0x00000075 
- 00009937  0x00001459 call  0x00007f86 
- 00009938  0x0000145a remainder  0x00000013 
- 00009939  0x0000145b isub  0x00000013 , 0x0000003f 
- 00009940  0x0000145c branch  0x000026d6 , 0x00000002 
- 00009941  0x0000145d iadd  0x00000002 , 0x0000003f 
- 00009942  0x0000145f iadd  0x00000011 , 0x0000003f 
- 00009943  0x00001460 store  0x00000004 , 0x00000034 
- 00009944  0x00001461 jam  0x00000000 , 0x0000455b 
- 00009945  0x00001462 fetch  0x00000001 , 0x00000030 
- 00009946  0x00001463 set1  0x00000001 , 0x0000003f 
- 00009947  0x00001464 store  0x00000001 , 0x00000030 
- 00009948  0x00001465 fetch  0x00000001 , 0x00000073 
- 00009949  0x00001466 store  0x00000001 , 0x0000008a 
- 00009950  0x00001467 setarg  0x00000000 
- 00009951  0x00001468 store  0x00000003 , 0x00004169 
- 00009952  0x00001469 store  0x00000003 , 0x0000416c 
- 00009953  0x0000146a store  0x00000001 , 0x00004159 
- 00009954  0x0000146b jam  0x0000000b , 0x00000a99 
- 00009955  0x0000146c call  0x00007d86 
- 00009956  0x0000146d fetch  0x00000002 , 0x000040c1 
- 00009957  0x0000146e store  0x00000002 , 0x0000003e 
- 00009958  0x0000146f nrtn  0x00000029 
- 00009959  0x00001470 add  0x00000004 , 0xffffffff , 0x00000007 
- 00009960  0x00001471 rtn 
- 00009961  0x00001474 bpatch  0x0000006d , 0x0000400d 
- 00009962  0x00001475 fetch  0x00000001 , 0x00000030 
- 00009963  0x00001476 rtnbit0  0x00000001 
- 00009964  0x00001477 set0  0x00000001 , 0x0000003f 
- 00009965  0x00001478 store  0x00000001 , 0x00000030 
- 00009966  0x00001479 fetch  0x00000002 , 0x000040bf 
- 00009967  0x0000147a store  0x00000002 , 0x0000003e 
- 00009968  0x0000147b disable  0x0000002b 
- 00009969  0x0000147c jam  0x0000000c , 0x00000a99 
- 00009970  0x0000147d branch  0x00007d86 
- 00009971  0x00001481 bpatch  0x0000006e , 0x0000400d 
- 00009972  0x00001482 enable  0x0000002e 
- 00009973  0x00001483 fetch  0x00000001 , 0x00000030 
- 00009974  0x00001484 bbit1  0x00000001 , 0x00002700 
- 00009975  0x00001485 rtnmark1  0x00000011 
- 00009976  0x00001486 fetch  0x00000001 , 0x00000047 
- 00009977  0x00001487 rtnbit1  0x00000003 
- 00009978  0x00001488 fetch  0x00000001 , 0x00000048 
- 00009979  0x00001489 nrtn  0x00000034 
- 00009980  0x0000148a fetch  0x00000001 , 0x0000004b 
- 00009981  0x0000148b rtnbit1  0x00000006 
- 00009982  0x0000148d force  0x00000000 , 0x0000003f 
- 00009983  0x0000148e rtn 
- 00009984  0x00001491 bbit0  0x00000002 , 0x0000270f 
- 00009985  0x00001492 fetch  0x00000001 , 0x0000008a 
- 00009986  0x00001493 beq  0x00000002 , 0x00002706 
- 00009987  0x00001494 fetch  0x00000001 , 0x00000047 
- 00009988  0x00001495 bbit1  0x00000003 , 0x00002718 
- 00009989  0x00001496 bmark0  0x00000008 , 0x00002718 
- 00009990  0x00001498 nbranch  0x00002718 , 0x00000029 
- 00009991  0x00001499 fetch  0x00000001 , 0x00000048 
- 00009992  0x0000149a nbranch  0x00002718 , 0x00000034 
- 00009993  0x0000149c fetch  0x00000001 , 0x000000ef 
- 00009994  0x0000149d increase  0xffffffff , 0x0000003f 
- 00009995  0x0000149e store  0x00000001 , 0x000000ef 
- 00009996  0x0000149f nbranch  0x000026fe , 0x00000034 
- 00009997  0x000014a0 jam  0x00000010 , 0x000000ef 
- 00009998  0x000014a1 branch  0x00002718 
- 00009999  0x000014a9 fetch  0x00000001 , 0x0000008a 
- 00010000  0x000014aa bne  0x00000001 , 0x00002718 
- 00010001  0x000014ab fetch  0x00000001 , 0x0000008b 
- 00010002  0x000014ac branch  0x00002718 , 0x00000034 
- 00010003  0x000014ad increase  0xffffffff , 0x0000003f 
- 00010004  0x000014ae store  0x00000001 , 0x0000008b 
- 00010005  0x000014af fetch  0x00000001 , 0x00000047 
- 00010006  0x000014b0 rtnbit1  0x00000003 
- 00010007  0x000014b1 nrtn  0x0000002d 
- 00010008  0x000014b3 fetch  0x00000001 , 0x0000008a 
- 00010009  0x000014b4 increase  0xffffffff , 0x0000003f 
- 00010010  0x000014b5 store  0x00000001 , 0x0000008a 
- 00010011  0x000014b6 rtn 
- 00010012  0x000014c2 bpatch  0x0000006f , 0x0000400d 
- 00010013  0x000014c3 disable  0x00000010 
- 00010014  0x000014c4 copy  0x00000002 , 0x0000001b 
- 00010015  0x000014c5 call  0x00002260 
- 00010016  0x000014c6 disable  0x00000028 
- 00010017  0x000014c7 nrtn  0x00000005 
- 00010018  0x000014c8 force  0x00000000 , 0x0000001b 
- 00010019  0x000014c9 enable  0x00000028 
- 00010020  0x000014ca rtn 
- 00010021  0x000014ce fetch  0x00000001 , 0x00004158 
- 00010022  0x000014cf icompare  0x000000ff , 0x00000004 
- 00010023  0x000014d0 rtn 
- 00010024  0x000014d4 bpatch  0x00000070 , 0x0000400e 
- 00010025  0x000014d5 set0  0x00000001 , 0x00000000 
- 00010026  0x000014d7 jam  0x00000000 , 0x0000026a 
- 00010027  0x000014d8 fetch  0x00000001 , 0x00000263 
- 00010028  0x000014d9 rtn  0x00000034 
- 00010029  0x000014da isolate1  0x00000000 , 0x0000003f 
- 00010030  0x000014db arg  0x00001000 , 0x00000006 
- 00010031  0x000014dc call  0x00004d79 , 0x00000001 
- 00010032  0x000014dd bpatch  0x00000071 , 0x0000400e 
- 00010033  0x000014de fetch  0x00000001 , 0x0000026a 
- 00010034  0x000014df beq  0x00000001 , 0x0000273b 
- 00010035  0x000014e1 jam  0x00000000 , 0x0000026a 
- 00010036  0x000014e2 fetch  0x00000001 , 0x00000263 
- 00010037  0x000014e3 rtnbit0  0x00000001 
- 00010038  0x000014e4 arg  0x00001400 , 0x00000006 
- 00010039  0x000014e5 call  0x00004d79 
- 00010040  0x000014e6 fetch  0x00000001 , 0x0000026a 
- 00010041  0x000014e7 beq  0x00000001 , 0x00002741 
- 00010042  0x000014e8 rtn 
- 00010043  0x000014eb fetch  0x00000001 , 0x00000263 
- 00010044  0x000014ec set0  0x00000000 , 0x0000003f 
- 00010045  0x000014ed store  0x00000001 , 0x00000263 
- 00010046  0x000014ee setarg  0x00000000 
- 00010047  0x000014ef store  0x00000002 , 0x0000025d 
- 00010048  0x000014f0 rtn 
- 00010049  0x000014f2 fetch  0x00000001 , 0x00000263 
- 00010050  0x000014f3 set0  0x00000001 , 0x0000003f 
- 00010051  0x000014f4 store  0x00000001 , 0x00000263 
- 00010052  0x000014f5 setarg  0x00000000 
- 00010053  0x000014f6 store  0x00000002 , 0x0000025f 
- 00010054  0x000014f7 rtn 
- 00010055  0x000014fa fetch  0x00000001 , 0x00000263 
- 00010056  0x000014fb set1  0x00000000 , 0x0000003f 
- 00010057  0x000014fc store  0x00000001 , 0x00000263 
- 00010058  0x000014fd rtn 
- 00010059  0x00001500 fetch  0x00000001 , 0x00000263 
- 00010060  0x00001501 set1  0x00000001 , 0x0000003f 
- 00010061  0x00001502 store  0x00000001 , 0x00000263 
- 00010062  0x00001503 rtn 
- 00010063  0x0000150a bpatch  0x00000072 , 0x0000400e 
- 00010064  0x0000150b add  0x00000028 , 0x00000001 , 0x00000021 
- 00010065  0x0000150c call  0x000028ea 
- 00010066  0x0000150d force  0x00000003 , 0x00000024 
- 00010067  0x0000150e call  0x000028d2 
- 00010068  0x0000150f call  0x00002a51 
- 00010069  0x00001510 call  0x00002a5f 
- 00010070  0x00001511 branch  0x00002a64 
- 00010071  0x00001515 bpatch  0x00000073 , 0x0000400e 
- 00010072  0x00001516 call  0x00002a4d 
- 00010073  0x00001517 deposit  0x00000028 
- 00010074  0x00001518 fetcht  0x00000004 , 0x000040ca 
- 00010075  0x00001519 isub  0x00000002 , 0x0000003f 
- 00010076  0x0000151a rtnne  0x00000001 
- 00010077  0x0000151b compare  0x00000000 , 0x00000001 , 0x0000001f 
- 00010078  0x0000151c nbranch  0x00002761 , 0x00000001 
- 00010079  0x0000151d fetch  0x00000001 , 0x00000019 
- 00010080  0x0000151e rtn  0x00000034 
- 00010081  0x00001520 call  0x0000274f 
- 00010082  0x00001522 compare  0x00000010 , 0x00000001 , 0x0000001f 
- 00010083  0x00001523 branch  0x0000264d , 0x00000001 
- 00010084  0x00001524 rshift  0x00000021 , 0x00000002 
- 00010085  0x00001525 or  0x00000002 , 0x00000040 , 0x0000000e 
- 00010086  0x00001527 bpatch  0x00000074 , 0x0000400e 
- 00010087  0x00001528 enable  0x00000007 
- 00010088  0x00001529 enable  0x0000000a 
- 00010089  0x0000152a enable  0x0000001b 
- 00010090  0x0000152b set0  0x00000010 , 0x00000000 
- 00010091  0x0000152c deposit  0x00000004 
- 00010092  0x0000152d inject  0x00000003 , 0x00000003 
- 00010093  0x0000152e deposit  0x00000001 
- 00010094  0x0000152f inject  0x00000003 , 0x00000004 
- 00010095  0x00001530 fetch  0x00000001 , 0x00000047 
- 00010096  0x00001531 inject  0x00000000 , 0x00000004 
- 00010097  0x00001532 inject  0x00000003 , 0x00000003 
- 00010098  0x00001533 enable  0x00000008 
- 00010099  0x00001534 inject  0x00000003 , 0x00000008 
- 00010100  0x00001535 disable  0x0000001b 
- 00010101  0x00001536 disable  0x00000008 
- 00010102  0x00001537 disable  0x0000000a 
- 00010103  0x00001538 set0  0x00000002 , 0x00000015 
- 00010104  0x00001539 arg  0x00000000 , 0x00000002 
- 00010105  0x0000153a call  0x00002a1c 
- 00010106  0x0000153b bpatch  0x00000075 , 0x0000400e 
- 00010107  0x0000153c and  0x00000001 , 0x0000001f , 0x0000003f 
- 00010108  0x0000153d beq  0x00000013 , 0x000027b4 
- 00010109  0x0000153e beq  0x00000000 , 0x0000264d 
- 00010110  0x0000153f beq  0x00000001 , 0x0000264d 
- 00010111  0x00001540 beq  0x00000002 , 0x00002797 
- 00010112  0x00001541 beq  0x00000003 , 0x000027c5 
- 00010113  0x00001542 beq  0x00000004 , 0x000027cb 
- 00010114  0x00001543 beq  0x00000007 , 0x0000278c 
- 00010115  0x00001544 beq  0x00000008 , 0x000027ca 
- 00010116  0x00001545 arg  0x00000004 , 0x00000002 
- 00010117  0x00001546 call  0x00002a1c 
- 00010118  0x00001547 beq  0x0000000a , 0x000027c7 
- 00010119  0x00001548 beq  0x0000000b , 0x000027cd 
- 00010120  0x00001549 arg  0x00000008 , 0x00000002 
- 00010121  0x0000154a call  0x00002a1c 
- 00010122  0x0000154b beq  0x0000000f , 0x000027cd 
- 00010123  0x0000154c branch  0x000027c7 
- 00010124  0x00001550 bpatch  0x00000076 , 0x0000400e 
- 00010125  0x00001551 enable  0x0000001d 
- 00010126  0x00001552 enable  0x00000009 
- 00010127  0x00001553 enable  0x0000000e 
- 00010128  0x00001554 force  0x0000001e , 0x00000039 
- 00010129  0x00001555 arg  0x000000b3 , 0x00000006 
- 00010130  0x00001557 ifetch  0x00000001 , 0x00000006 
- 00010131  0x00001558 inject  0x00000003 , 0x00000008 
- 00010132  0x00001559 loop  0x00002792 
- 00010133  0x0000155a bmark1  0x00000007 , 0x000027f7 
- 00010134  0x0000155b branch  0x0000264d 
- 00010135  0x0000155e bpatch  0x00000077 , 0x0000400e 
- 00010136  0x0000155f fetch  0x00000001 , 0x00000181 
- 00010137  0x00001560 icopy  0x00000004 
- 00010138  0x00001561 fetch  0x00000001 , 0x00000090 
- 00010139  0x00001562 icopy  0x0000001c 
- 00010140  0x00001563 fetch  0x00000003 , 0x000040aa 
- 00010141  0x00001564 icopy  0x0000001d 
- 00010142  0x00001565 fetch  0x00000002 , 0x000040a4 
- 00010143  0x00001566 icopy  0x0000002e 
- 00010144  0x00001567 enable  0x00000009 
- 00010145  0x00001568 enable  0x0000001c 
- 00010146  0x00001569 copy  0x00000020 , 0x00000011 
- 00010147  0x0000156a call  0x000028e2 
- 00010148  0x0000156b pulse  0x00000015 
- 00010149  0x0000156c nop  0x00000020 
- 00010150  0x0000156d copy  0x00000021 , 0x0000000b 
- 00010151  0x0000156e fetch  0x00000004 , 0x00000161 
- 00010152  0x0000156f icopy  0x00000021 
- 00010153  0x00001570 preload  0x0000001e 
- 00010154  0x00001571 set1  0x0000003a , 0x0000003f 
- 00010155  0x00001572 inject  0x00000003 , 0x00000048 
- 00010156  0x00001573 preload  0x0000001f 
- 00010157  0x00001574 inject  0x00000003 , 0x00000048 
- 00010158  0x00001575 copy  0x0000000b , 0x00000021 
- 00010159  0x00001576 copy  0x00000011 , 0x00000020 
- 00010160  0x00001577 enable  0x00000008 
- 00010161  0x00001578 inject  0x00000003 , 0x00000010 
- 00010162  0x00001579 disable  0x00000008 
- 00010163  0x0000157a branch  0x0000264d 
- 00010164  0x0000157d bpatch  0x00000078 , 0x0000400f 
- 00010165  0x0000157e enable  0x0000000e 
- 00010166  0x0000157f enable  0x00000009 
- 00010167  0x00001580 enable  0x0000001c 
- 00010168  0x00001581 fetch  0x00000001 , 0x000004b6 
- 00010169  0x00001582 and  0x0000003f , 0x000001f8 , 0x00000002 
- 00010170  0x00001583 arg  0x000004b6 , 0x00000006 
- 00010171  0x00001584 increase  0x00000008 , 0x00000002 
- 00010172  0x00001586 add  0x00000002 , 0xffffffb8 , 0x00000013 
- 00010173  0x00001587 nbranch  0x000027c2 , 0x00000002 
- 00010174  0x00001588 ifetch  0x00000009 , 0x00000006 
- 00010175  0x00001589 inject  0x00000003 , 0x00000048 
- 00010176  0x0000158a copy  0x00000013 , 0x00000002 
- 00010177  0x0000158b branch  0x000027bc 
- 00010178  0x0000158d ifetch  0x00000009 , 0x00000006 
- 00010179  0x0000158e iinject  0x00000003 , 0x00000002 
- 00010180  0x0000158f branch  0x000027f7 
- 00010181  0x00001592 enable  0x0000001c 
- 00010182  0x00001593 branch  0x000027d0 
- 00010183  0x00001596 enable  0x0000001c 
- 00010184  0x00001597 set1  0x00000010 , 0x00000000 
- 00010185  0x00001598 branch  0x000027d0 
- 00010186  0x0000159b set1  0x00000002 , 0x00000015 
- 00010187  0x0000159d enable  0x0000001d 
- 00010188  0x0000159e branch  0x000027d0 
- 00010189  0x000015a2 set1  0x00000002 , 0x00000015 
- 00010190  0x000015a3 enable  0x0000001d 
- 00010191  0x000015a4 set1  0x00000010 , 0x00000000 
- 00010192  0x000015a7 bpatch  0x00000079 , 0x0000400f 
- 00010193  0x000015a8 fetch  0x00000001 , 0x0000004c 
- 00010194  0x000015a9 bbit0  0x00000005 , 0x000027e5 
- 00010195  0x000015aa sub  0x00000001 , 0x00000003 , 0x0000003e 
- 00010196  0x000015ab branch  0x000027e5 , 0x00000002 
- 00010197  0x000015ac disable  0x0000000e 
- 00010198  0x000015ad disable  0x0000001c 
- 00010199  0x000015ae enable  0x0000001d 
- 00010200  0x000015af disable  0x00000007 
- 00010201  0x000015b0 set1  0x00000001 , 0x00000015 
- 00010202  0x000015b1 isolate1  0x00000002 , 0x00000015 
- 00010203  0x000015b2 branch  0x000027df , 0x00000001 
- 00010204  0x000015b3 setarg  0x000abeee 
- 00010205  0x000015b4 inject  0x00000003 , 0x00000014 
- 00010206  0x000015b5 branch  0x000027e3 
- 00010207  0x000015b7 setarg  0x005faeba 
- 00010208  0x000015b8 inject  0x00000003 , 0x00000018 
- 00010209  0x000015b9 setarg  0x00000012 
- 00010210  0x000015ba inject  0x00000003 , 0x00000006 
- 00010211  0x000015bc enable  0x00000007 
- 00010212  0x000015bd set1  0x00000010 , 0x00000000 
- 00010213  0x000015bf enable  0x0000000e 
- 00010214  0x000015c0 enable  0x00000009 
- 00010215  0x000015c1 bmark1  0x00000005 , 0x00002800 
- 00010216  0x000015c2 fetch  0x00000001 , 0x000041db 
- 00010217  0x000015c3 inject  0x00000003 , 0x00000003 
- 00010218  0x000015c4 fetch  0x00000002 , 0x000041dc 
- 00010219  0x000015c5 iforce  0x00000039 
- 00010220  0x000015c6 bmark1  0x00000010 , 0x000027ef 
- 00010221  0x000015c7 inject  0x00000003 , 0x00000005 
- 00010222  0x000015c8 branch  0x000027f0 
- 00010223  0x000015ca inject  0x00000003 , 0x0000000d 
- 00010224  0x000015cc deposit  0x00000039 
- 00010225  0x000015cd branch  0x000027f7 , 0x00000034 
- 00010226  0x000015ce fetch  0x00000002 , 0x0000016f 
- 00010227  0x000015cf iforce  0x00000006 
- 00010228  0x000015d1 ifetch  0x00000001 , 0x00000006 
- 00010229  0x000015d2 inject  0x00000003 , 0x00000008 
- 00010230  0x000015d3 loop  0x000027f4 
- 00010231  0x000015d7 enable  0x00000008 
- 00010232  0x000015d8 inject  0x00000003 , 0x00000010 
- 00010233  0x000015d9 disable  0x00000008 
- 00010234  0x000015da call  0x000024c1 
- 00010235  0x000015db fetch  0x00000001 , 0x0000004c 
- 00010236  0x000015dc bbit0  0x00000005 , 0x0000264d 
- 00010237  0x000015dd force  0x00000000 , 0x0000003f 
- 00010238  0x000015de inject  0x00000003 , 0x00000006 
- 00010239  0x000015df branch  0x0000264d 
- 00010240  0x000015e3 bpatch  0x0000007a , 0x0000400f 
- 00010241  0x000015e4 bmark1  0x00000010 , 0x00002808 
- 00010242  0x000015e6 fetch  0x00000001 , 0x00000180 
- 00010243  0x000015e7 inject  0x00000003 , 0x00000003 
- 00010244  0x000015e8 fetch  0x00000001 , 0x0000015f 
- 00010245  0x000015e9 iforce  0x00000013 
- 00010246  0x000015ea inject  0x00000003 , 0x00000005 
- 00010247  0x000015eb branch  0x0000280d 
- 00010248  0x000015ed fetch  0x00000001 , 0x00000180 
- 00010249  0x000015ee inject  0x00000003 , 0x00000003 
- 00010250  0x000015ef fetch  0x00000002 , 0x0000015f 
- 00010251  0x000015f0 iforce  0x00000013 
- 00010252  0x000015f1 inject  0x00000003 , 0x0000000d 
- 00010253  0x000015f3 arg  0x00000551 , 0x00000006 
- 00010254  0x000015f5 copy  0x00000013 , 0x0000003e 
- 00010255  0x000015f6 branch  0x00002814 , 0x00000005 
- 00010256  0x000015f7 ifetch  0x00000001 , 0x00000006 
- 00010257  0x000015f8 inject  0x00000003 , 0x00000008 
- 00010258  0x000015f9 increase  0xffffffff , 0x00000013 
- 00010259  0x000015fa branch  0x0000280e 
- 00010260  0x000015fc fetch  0x00000002 , 0x000000fc 
- 00010261  0x000015fd increase  0x00000001 , 0x0000003f 
- 00010262  0x000015fe store  0x00000002 , 0x000000fc 
- 00010263  0x000015ff branch  0x000027f7 
- 00010264  0x00001603 fetch  0x00000004 , 0x00000165 
- 00010265  0x00001604 add  0x0000003f , 0x00000007 , 0x00000011 
- 00010266  0x00001605 fetch  0x00000002 , 0x00000171 
- 00010267  0x00001606 nbranch  0x0000281e , 0x00000034 
- 00010268  0x00001607 increase  0xfffffffd , 0x00000011 
- 00010269  0x00001608 branch  0x00002826 
- 00010270  0x0000160a mul32  0x0000003f , 0x0000000c , 0x0000003f 
- 00010271  0x0000160b hfetcht  0x00000002 , 0x00008040 
- 00010272  0x0000160c increase  0x00000001 , 0x00000002 
- 00010273  0x0000160e isub  0x00000002 , 0x0000003f 
- 00010274  0x0000160f nbranch  0x00002825 , 0x00000002 
- 00010275  0x00001610 increase  0xffffffff , 0x00000011 
- 00010276  0x00001611 branch  0x00002821 
- 00010277  0x00001613 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00010278  0x00001615 until  0x0000003e , 0x00000023 
- 00010279  0x00001616 compare  0x00000000 , 0x00000022 , 0x00000003 
- 00010280  0x00001617 nbranch  0x00002826 , 0x00000001 
- 00010281  0x00001618 iforce  0x00000029 
- 00010282  0x00001619 copy  0x00000011 , 0x00000028 
- 00010283  0x0000161a iforce  0x00000029 
- 00010284  0x0000161b rtn 
- 00010285  0x0000161f bpatch  0x0000007b , 0x0000400f 
- 00010286  0x00001620 until  0x0000003e , 0x00000022 
- 00010287  0x00001621 deposit  0x0000001a 
- 00010288  0x00001622 iforce  0x00000006 
- 00010289  0x00001623 rshift16 , 0x0000003f , 0x0000003f 
- 00010290  0x00001624 isub  0x00000022 , 0x00000039 
- 00010291  0x00001625 and_into  0x00000003 , 0x00000039 
- 00010292  0x00001626 nbranch  0x00002837 , 0x00000005 
- 00010293  0x00001627 force  0x00000000 , 0x0000003f 
- 00010294  0x00001628 branch  0x0000283b 
- 00010295  0x0000162a arg  0x00000ea6 , 0x00000002 
- 00010296  0x0000162b force  0x00000000 , 0x0000003f 
- 00010297  0x0000162d iadd  0x00000002 , 0x0000003f 
- 00010298  0x0000162e loop  0x00002839 
- 00010299  0x00001630 iadd  0x00000006 , 0x0000003f 
- 00010300  0x00001631 div  0x0000003f , 0x0000000c 
- 00010301  0x00001632 call  0x00007f86 
- 00010302  0x00001633 quotient  0x0000003f 
- 00010303  0x00001634 store  0x00000002 , 0x00000171 
- 00010304  0x00001635 rtn 
- 00010305  0x00001638 bpatch  0x0000007c , 0x0000400f 
- 00010306  0x00001639 deposit  0x0000001a 
- 00010307  0x0000163a copy  0x00000019 , 0x00000002 
- 00010308  0x0000163b isub  0x00000002 , 0x0000003e 
- 00010309  0x0000163c nsetflag  0x00000002 , 0x0000002c , 0x0000003f 
- 00010310  0x0000163d isub  0x00000002 , 0x00000002 
- 00010311  0x0000163e setarg  0x00000ea6 
- 00010312  0x0000163f isolate0  0x0000000f , 0x00000002 
- 00010313  0x00001640 branch  0x0000284c , 0x00000001 
- 00010314  0x00001641 setarg  0xffff0ea6 
- 00010315  0x00001642 iadd  0x00000002 , 0x00000002 
- 00010316  0x00001644 storet  0x00000006 , 0x00000447 
- 00010317  0x00001645 rtn  0x00000036 
- 00010318  0x00001646 storet  0x00000006 , 0x00000038 
- 00010319  0x00001647 rtn 
- 00010320  0x0000164a disable  0x00000030 
- 00010321  0x0000164b fetch  0x00000006 , 0x00000447 
- 00010322  0x0000164c branch  0x00002854 , 0x00000036 
- 00010323  0x0000164d fetch  0x00000006 , 0x00000038 
- 00010324  0x0000164f iadd  0x00000019 , 0x00000030 
- 00010325  0x00001650 increase  0x0000000a , 0x00000030 
- 00010326  0x00001651 setarg  0x00000ea6 
- 00010327  0x00001652 isub  0x00000030 , 0x0000003f 
- 00010328  0x00001653 isolate0  0x0000000f , 0x0000003f 
- 00010329  0x00001654 branch  0x0000285e , 0x00000001 
- 00010330  0x00001655 setarg  0x0000f15a 
- 00010331  0x00001656 iadd  0x00000030 , 0x00000030 
- 00010332  0x00001658 copy  0x00000030 , 0x0000001a 
- 00010333  0x00001659 rtn 
- 00010334  0x0000165b force  0x00000000 , 0x0000003e 
- 00010335  0x0000165c branch  0x0000285c 
- 00010336  0x00001664 bpatch  0x0000007d , 0x0000400f 
- 00010337  0x00001665 call  0x00002918 
- 00010338  0x00001666 copy  0x00000021 , 0x0000003f 
- 00010339  0x00001667 and_into  0x00000180 , 0x0000003f 
- 00010340  0x00001668 compare  0x00000003 , 0x00000024 , 0x00000007 
- 00010341  0x00001669 nbranch  0x00002869 , 0x00000001 
- 00010342  0x0000166a rshift3  0x0000003f , 0x0000003f 
- 00010343  0x0000166b iadd  0x00000017 , 0x0000003f 
- 00010344  0x0000166c branch  0x0000286a 
- 00010345  0x0000166e copy  0x00000017 , 0x0000003f 
- 00010346  0x00001670 div  0x0000003f , 0x0000004f 
- 00010347  0x00001671 pulse  0x00000015 
- 00010348  0x00001672 call  0x00007f86 
- 00010349  0x00001673 remainder  0x00000011 
- 00010350  0x00001674 add  0x00000011 , 0xffffffd8 , 0x00000002 
- 00010351  0x00001675 branch  0x00002872 , 0x00000002 
- 00010352  0x00001676 lshift  0x00000011 , 0x00000002 
- 00010353  0x00001677 branch  0x00002874 
- 00010354  0x00001679 lshift  0x00000002 , 0x00000002 
- 00010355  0x0000167a increase  0x00000001 , 0x00000002 
- 00010356  0x0000167c bpatch  0x0000007e , 0x0000400f 
- 00010357  0x0000167d fetch  0x00000001 , 0x00000031 
- 00010358  0x0000167e bbit0  0x00000003 , 0x00002885 
- 00010359  0x00001680 fetch  0x00000004 , 0x000040d2 
- 00010360  0x00001681 isub  0x00000021 , 0x0000003e 
- 00010361  0x00001682 branch  0x00002885 , 0x00000002 
- 00010362  0x00001683 call  0x000028a4 
- 00010363  0x00001684 fetch  0x00000001 , 0x000040d9 
- 00010364  0x00001685 rtn  0x00000034 
- 00010365  0x00001686 fetch  0x00000001 , 0x00000031 
- 00010366  0x00001687 set1  0x00000002 , 0x0000003f 
- 00010367  0x00001688 store  0x00000001 , 0x00000031 
- 00010368  0x00001689 fetch  0x00000005 , 0x000040e7 
- 00010369  0x0000168a store  0x00000005 , 0x000040da 
- 00010370  0x0000168b ifetch  0x00000005 , 0x00000006 
- 00010371  0x0000168c store  0x00000005 , 0x000040df 
- 00010372  0x0000168d call  0x000028a9 
- 00010373  0x0000168f fetch  0x00000001 , 0x00000031 
- 00010374  0x00001690 rtnbit0  0x00000002 
- 00010375  0x00001691 isolate1  0x00000001 , 0x00000021 
- 00010376  0x00001692 branch  0x000028a1 , 0x00000001 
- 00010377  0x00001693 rshift3  0x00000002 , 0x00000011 
- 00010378  0x00001694 and  0x00000002 , 0x00000007 , 0x00000007 
- 00010379  0x00001695 setarg  0x000040da 
- 00010380  0x00001696 iadd  0x00000011 , 0x00000011 
- 00010381  0x00001697 ifetch  0x00000001 , 0x00000011 
- 00010382  0x00001698 qisolate0  0x0000003f 
- 00010383  0x00001699 branch  0x00002892 , 0x00000001 
- 00010384  0x0000169a deposit  0x00000002 
- 00010385  0x0000169b branch  0x0000289e 
- 00010386  0x0000169d fetch  0x00000001 , 0x000040e4 
- 00010387  0x0000169e iforce  0x00000012 
- 00010388  0x0000169f deposit  0x00000021 
- 00010389  0x000016a0 and_into  0x00000180 , 0x0000003f 
- 00010390  0x000016a1 rshift3  0x0000003f , 0x0000003f 
- 00010391  0x000016a2 iadd  0x00000017 , 0x0000003f 
- 00010392  0x000016a3 idiv  0x00000012 
- 00010393  0x000016a4 setarg  0x000040f2 
- 00010394  0x000016a5 call  0x00007f86 
- 00010395  0x000016a6 remainder  0x00000011 
- 00010396  0x000016a7 iadd  0x00000011 , 0x00000006 
- 00010397  0x000016a8 ifetch  0x00000001 , 0x00000006 
- 00010398  0x000016aa store  0x00000001 , 0x000040e5 
- 00010399  0x000016ab iforce  0x00000002 
- 00010400  0x000016ac rtn 
- 00010401  0x000016af fetch  0x00000001 , 0x000040e5 
- 00010402  0x000016b0 iforce  0x00000002 
- 00010403  0x000016b1 rtn 
- 00010404  0x000016b4 fetch  0x00000001 , 0x00000031 
- 00010405  0x000016b5 set0  0x00000002 , 0x0000003f 
- 00010406  0x000016b6 set0  0x00000003 , 0x0000003f 
- 00010407  0x000016b7 store  0x00000001 , 0x00000031 
- 00010408  0x000016b8 rtn 
- 00010409  0x000016bf bpatch  0x0000007f , 0x0000400f 
- 00010410  0x000016c0 arg  0x000040f2 , 0x00000005 
- 00010411  0x000016c1 force  0x0000000a , 0x00000039 
- 00010412  0x000016c2 call  0x00007ec6 
- 00010413  0x000016c3 arg  0x000040f2 , 0x00000005 
- 00010414  0x000016c4 force  0x00000000 , 0x00000013 
- 00010415  0x000016c5 force  0x00000002 , 0x00000007 
- 00010416  0x000016c7 fetch  0x00000005 , 0x000040da 
- 00010417  0x000016c8 iforce  0x00000002 
- 00010418  0x000016c9 compare  0x00000002 , 0x00000007 , 0x000000ff 
- 00010419  0x000016ca branch  0x000028b5 , 0x00000001 
- 00010420  0x000016cb rshift  0x00000002 , 0x00000002 
- 00010421  0x000016cd isolate0  0x00000000 , 0x00000002 
- 00010422  0x000016ce branch  0x000028b9 , 0x00000001 
- 00010423  0x000016cf deposit  0x00000013 
- 00010424  0x000016d0 istore  0x00000001 , 0x00000005 
- 00010425  0x000016d2 rshift2  0x00000002 , 0x00000002 
- 00010426  0x000016d3 increase  0x00000002 , 0x00000013 
- 00010427  0x000016d4 compare  0x00000028 , 0x00000013 , 0x000000fe 
- 00010428  0x000016d5 nbranch  0x000028c2 , 0x00000001 
- 00010429  0x000016d6 fetch  0x00000005 , 0x000040df 
- 00010430  0x000016d7 iforce  0x00000002 
- 00010431  0x000016d8 compare  0x00000002 , 0x00000007 , 0x000000ff 
- 00010432  0x000016d9 branch  0x000028c2 , 0x00000001 
- 00010433  0x000016da rshift  0x00000002 , 0x00000002 
- 00010434  0x000016dc sub  0x00000013 , 0x0000004e , 0x0000003e 
- 00010435  0x000016dd branch  0x000028b5 , 0x00000002 
- 00010436  0x000016de force  0x00000001 , 0x00000013 
- 00010437  0x000016df increase  0xffffffff , 0x00000007 
- 00010438  0x000016e0 nbranch  0x000028b0 , 0x00000005 
- 00010439  0x000016e1 arg  0x000040f2 , 0x00000011 
- 00010440  0x000016e2 deposit  0x00000005 
- 00010441  0x000016e3 isub  0x00000011 , 0x0000003f 
- 00010442  0x000016e4 store  0x00000001 , 0x000040e4 
- 00010443  0x000016e5 rtn 
- 00010444  0x000016e8 bpatch  0x00000080 , 0x00004010 
- 00010445  0x000016e9 call  0x00002860 
- 00010446  0x000016ea fetch  0x00000001 , 0x0000017f 
- 00010447  0x000016eb bbit0  0x00000005 , 0x000028d1 
- 00010448  0x000016ec fetcht  0x00000001 , 0x000004cc 
- 00010449  0x000016ee branch  0x0000291f 
- 00010450  0x000016f2 bpatch  0x00000081 , 0x00004010 
- 00010451  0x000016f3 call  0x00002860 
- 00010452  0x000016f4 fetch  0x00000001 , 0x0000017f 
- 00010453  0x000016f5 bbit0  0x00000004 , 0x000028d7 
- 00010454  0x000016f6 fetcht  0x00000001 , 0x000004cb 
- 00010455  0x000016f8 branch  0x00002933 
- 00010456  0x000016fc force  0x00000000 , 0x0000002d 
- 00010457  0x000016fd fetch  0x00000003 , 0x000040a7 
- 00010458  0x000016fe iforce  0x0000002c 
- 00010459  0x000016ff rtn 
- 00010460  0x00001702 bpatch  0x00000082 , 0x00004010 
- 00010461  0x00001703 fetch  0x00000001 , 0x000041d3 
- 00010462  0x00001704 icopy  0x0000002d 
- 00010463  0x00001705 fetch  0x00000003 , 0x000041d0 
- 00010464  0x00001706 icopy  0x0000002c 
- 00010465  0x00001707 rtn 
- 00010466  0x0000170a bpatch  0x00000083 , 0x00004010 
- 00010467  0x0000170b fetch  0x00000002 , 0x000040a4 
- 00010468  0x0000170c icopy  0x0000002e 
- 00010469  0x0000170d fetch  0x00000001 , 0x000040a3 
- 00010470  0x0000170e icopy  0x0000002d 
- 00010471  0x0000170f fetch  0x00000003 , 0x000040a0 
- 00010472  0x00001710 icopy  0x0000002c 
- 00010473  0x00001711 rtn 
- 00010474  0x00001714 bpatch  0x00000084 , 0x00004010 
- 00010475  0x00001715 fetch  0x00000002 , 0x00000044 
- 00010476  0x00001716 icopy  0x0000002e 
- 00010477  0x00001717 fetch  0x00000001 , 0x00000043 
- 00010478  0x00001718 icopy  0x0000002d 
- 00010479  0x00001719 fetch  0x00000003 , 0x00000040 
- 00010480  0x0000171a icopy  0x0000002c 
- 00010481  0x0000171b rtn 
- 00010482  0x0000171f bmark1  0x00000020 , 0x000028f5 
- 00010483  0x00001720 rtnmark0  0x0000001d 
- 00010484  0x00001721 rtnmark0  0x0000001f 
- 00010485  0x00001723 and_into  0xffffff00 , 0x0000002c 
- 00010486  0x00001724 pulse  0x00000015 
- 00010487  0x00001725 nop  0x00000020 
- 00010488  0x00001726 rtn 
- 00010489  0x0000172a bpatch  0x00000085 , 0x00004010 
- 00010490  0x0000172b branch  0x0000290a , 0x00000021 
- 00010491  0x0000172c jam  0x000000d4 , 0x00008955 
- 00010492  0x0000172d nop  0x00000004 
- 00010493  0x0000172e jam  0x000000d2 , 0x00008955 
- 00010494  0x0000172f nop  0x00000004 
- 00010495  0x00001730 jam  0x000000d1 , 0x00008955 
- 00010496  0x00001731 nop  0x00000004 
- 00010497  0x00001732 fetch  0x00000001 , 0x000041de 
- 00010498  0x00001733 beq  0x00000000 , 0x00002908 
- 00010499  0x00001734 beq  0x00000001 , 0x00002915 
- 00010500  0x00001735 beq  0x00000002 , 0x00002908 
- 00010501  0x00001736 beq  0x00000003 , 0x00002915 
- 00010502  0x00001737 beq  0x00000004 , 0x00002915 
- 00010503  0x00001738 beq  0x00000020 , 0x00002915 
- 00010504  0x0000173b jam  0x000000d0 , 0x00008955 
- 00010505  0x0000173c jam  0x000000e0 , 0x00008956 
- 00010506  0x0000173e force  0x00000000 , 0x00000015 
- 00010507  0x0000173f disable  0x00000021 
- 00010508  0x00001740 disable  0x00000020 
- 00010509  0x00001741 pulse  0x0000001e 
- 00010510  0x00001742 jam  0x00000000 , 0x00008902 
- 00010511  0x00001743 jam  0x00000000 , 0x00008901 
- 00010512  0x00001744 jam  0x00000000 , 0x00008900 
- 00010513  0x00001745 jam  0x00000000 , 0x00008903 
- 00010514  0x00001746 jam  0x00000070 , 0x00008904 
- 00010515  0x00001747 jam  0x00000000 , 0x00008906 
- 00010516  0x00001748 rtn 
- 00010517  0x0000174e jam  0x000000d0 , 0x00008955 
- 00010518  0x0000174f jam  0x000000c0 , 0x00008956 
- 00010519  0x00001750 branch  0x0000290a 
- 00010520  0x00001753 bpatch  0x00000086 , 0x00004010 
- 00010521  0x00001754 jam  0x00000000 , 0x00008902 
- 00010522  0x00001755 jam  0x00000000 , 0x00008901 
- 00010523  0x00001756 jam  0x00000018 , 0x00008900 
- 00010524  0x00001757 jam  0x000000a7 , 0x00008903 
- 00010525  0x00001758 jam  0x0000007f , 0x00008904 
- 00010526  0x00001759 rtn 
- 00010527  0x0000175c bpatch  0x00000087 , 0x00004010 
- 00010528  0x0000175e storet  0x00000001 , 0x00000017 
- 00010529  0x0000175f add  0x00000002 , 0x00000004 , 0x00000011 
- 00010530  0x00001760 jam  0x00000007 , 0x0000896d 
- 00010531  0x00001761 branch  0x00002981 
- 00010532  0x00001763 bpatch  0x00000088 , 0x00004011 
- 00010533  0x00001764 jam  0x000000cf , 0x00008901 
- 00010534  0x00001765 nop  0x0000000a 
- 00010535  0x00001766 jam  0x000000ff , 0x00008900 
- 00010536  0x00001767 jam  0x000000af , 0x00008903 
- 00010537  0x00001768 jam  0x000000ff , 0x00008904 
- 00010538  0x00001769 nop  0x0000000a 
- 00010539  0x0000176a jam  0x000000a0 , 0x00008902 
- 00010540  0x0000176b rtn 
- 00010541  0x0000176e fetch  0x00000001 , 0x000041e0 
- 00010542  0x0000176f branch  0x00002931 , 0x00000034 
- 00010543  0x00001771 add  0x00000002 , 0x00000002 , 0x00000011 
- 00010544  0x00001772 rtn 
- 00010545  0x00001774 add  0x00000002 , 0x00000000 , 0x00000011 
- 00010546  0x00001775 rtn 
- 00010547  0x00001778 bpatch  0x00000089 , 0x00004011 
- 00010548  0x00001779 storet  0x00000001 , 0x00000017 
- 00010549  0x0000177a call  0x0000292d 
- 00010550  0x0000177b call  0x00002981 
- 00010551  0x0000177c setarg  0x00000500 
- 00010552  0x0000177d call  0x00002a8f 
- 00010553  0x0000177f jam  0x00000001 , 0x00008906 
- 00010554  0x00001780 jam  0x0000003c , 0x00008900 
- 00010555  0x00001781 jam  0x000000e0 , 0x00008901 
- 00010556  0x00001782 jam  0x00000012 , 0x0000896d 
- 00010557  0x00001783 nop  0x0000000a 
- 00010558  0x00001784 jam  0x00000001 , 0x00008902 
- 00010559  0x00001785 jam  0x0000003d , 0x00008902 
- 00010560  0x00001786 nop  0x0000000a 
- 00010561  0x00001787 jam  0x000000b7 , 0x00008903 
- 00010562  0x00001788 nop  0x0000000a 
- 00010563  0x00001789 jam  0x0000007f , 0x00008902 
- 00010564  0x0000178b fetch  0x00000001 , 0x000041de 
- 00010565  0x0000178c beq  0x00000000 , 0x0000294b 
- 00010566  0x0000178d beq  0x00000001 , 0x0000294f 
- 00010567  0x0000178e beq  0x00000002 , 0x00002953 
- 00010568  0x0000178f beq  0x00000003 , 0x00002957 
- 00010569  0x00001790 beq  0x00000004 , 0x0000295b 
- 00010570  0x00001791 beq  0x00000020 , 0x0000295f 
- 00010571  0x00001793 jam  0x000000f0 , 0x00008956 
- 00010572  0x00001794 call  0x00002965 
- 00010573  0x00001795 jam  0x000000d8 , 0x00008955 
- 00010574  0x00001796 rtn 
- 00010575  0x00001799 jam  0x000000df , 0x00008956 
- 00010576  0x0000179a call  0x00002965 
- 00010577  0x0000179b jam  0x000000df , 0x00008955 
- 00010578  0x0000179c rtn 
- 00010579  0x0000179f jam  0x000000ff , 0x00008956 
- 00010580  0x000017a0 call  0x00002965 
- 00010581  0x000017a1 jam  0x000000df , 0x00008955 
- 00010582  0x000017a2 rtn 
- 00010583  0x000017a4 jam  0x000000ce , 0x00008956 
- 00010584  0x000017a5 call  0x00002965 
- 00010585  0x000017a6 jam  0x000000d8 , 0x00008955 
- 00010586  0x000017a7 rtn 
- 00010587  0x000017aa jam  0x000000cb , 0x00008956 
- 00010588  0x000017ab call  0x00002965 
- 00010589  0x000017ac jam  0x000000d8 , 0x00008955 
- 00010590  0x000017ad rtn 
- 00010591  0x000017b0 jam  0x000000d0 , 0x00008955 
- 00010592  0x000017b1 jam  0x000000c0 , 0x00008956 
- 00010593  0x000017b2 jam  0x0000004c , 0x00008957 
- 00010594  0x000017b3 jam  0x0000006c , 0x00008958 
- 00010595  0x000017b4 jam  0x00000050 , 0x00008959 
- 00010596  0x000017b5 rtn 
- 00010597  0x000017b8 nop  0x00000004 
- 00010598  0x000017b9 jam  0x000000d1 , 0x00008955 
- 00010599  0x000017ba nop  0x00000004 
- 00010600  0x000017bb jam  0x000000d2 , 0x00008955 
- 00010601  0x000017bc nop  0x00000004 
- 00010602  0x000017bd jam  0x000000d4 , 0x00008955 
- 00010603  0x000017be rtn 
- 00010604  0x000017c2 jam  0x00000006 , 0x00008042 
- 00010605  0x000017c4 fetch  0x00000002 , 0x000040c3 
- 00010606  0x000017c5 bbit0  0x0000000e , 0x0000296d 
- 00010607  0x000017c6 iforce  0x00000006 
- 00010608  0x000017c7 arg  0x00008900 , 0x00000002 
- 00010609  0x000017c9 ifetch  0x00000001 , 0x00000006 
- 00010610  0x000017ca beq  0x000000ff , 0x00002977 
- 00010611  0x000017cb ior  0x00000002 , 0x00000005 
- 00010612  0x000017cc ifetch  0x00000001 , 0x00000006 
- 00010613  0x000017cd istore  0x00000001 , 0x00000005 
- 00010614  0x000017ce branch  0x00002971 
- 00010615  0x000017d0 bpatch  0x0000008a , 0x00004011 
- 00010616  0x000017d1 call  0x00002be5 
- 00010617  0x000017d2 call  0x000029c9 
- 00010618  0x000017d4 setarg  0x000007d0 
- 00010619  0x000017d5 iadd  0x00000022 , 0x0000003f 
- 00010620  0x000017d6 store  0x00000004 , 0x00000169 
- 00010621  0x000017d7 set1  0x00000003 , 0x00000015 
- 00010622  0x000017d8 force  0x00000000 , 0x00000015 
- 00010623  0x000017d9 ncall  0x00002998 , 0x0000002b 
- 00010624  0x000017da branch  0x000029ab 
- 00010625  0x000017de bpatch  0x0000008b , 0x00004011 
- 00010626  0x000017df setarg  0x00000960 
- 00010627  0x000017e0 iadd  0x00000011 , 0x00000002 
- 00010628  0x000017e1 fetch  0x00000001 , 0x000040bd 
- 00010629  0x000017e2 jam  0x00000004 , 0x0000895f 
- 00010630  0x000017e3 imul32  0x00000002 , 0x0000003f 
- 00010631  0x000017e4 fetcht  0x00000001 , 0x000040be 
- 00010632  0x000017e5 idiv  0x00000002 
- 00010633  0x000017e6 call  0x00007f86 
- 00010634  0x000017e7 quotient  0x00000011 
- 00010635  0x000017e8 remainder  0x0000003f 
- 00010636  0x000017e9 lshift16  0x0000003f , 0x0000003f 
- 00010637  0x000017ea lshift4  0x0000003f , 0x0000003f 
- 00010638  0x000017eb idiv  0x00000002 
- 00010639  0x000017ec call  0x00007f86 
- 00010640  0x000017ed quotient  0x0000003f 
- 00010641  0x000017ee lshift8  0x0000003f , 0x0000003f 
- 00010642  0x000017ef lshift  0x0000003f , 0x0000003f 
- 00010643  0x000017f0 ior  0x00000011 , 0x0000003f 
- 00010644  0x000017f1 hstore  0x00000004 , 0x00008960 
- 00010645  0x000017f2 jam  0x00000044 , 0x0000895f 
- 00010646  0x000017f3 jam  0x000000c4 , 0x0000895f 
- 00010647  0x000017f4 rtn 
- 00010648  0x000017f8 bpatch  0x0000008c , 0x00004011 
- 00010649  0x000017f9 jam  0x00000002 , 0x00008906 
- 00010650  0x000017fa setarg  0x0003d090 
- 00010651  0x000017fb call  0x00002a8f 
- 00010652  0x000017fc jam  0x0000007f , 0x00008900 
- 00010653  0x000017fd nop  0x00000082 
- 00010654  0x000017fe jam  0x00000030 , 0x00008952 
- 00010655  0x000017ff jam  0x000000d0 , 0x00008901 
- 00010656  0x00001800 jam  0x00000070 , 0x00008952 
- 00010657  0x00001801 jam  0x000000f0 , 0x00008952 
- 00010658  0x00001802 force  0x00000032 , 0x00000039 
- 00010659  0x00001804 hfetch  0x00000001 , 0x00008980 
- 00010660  0x00001805 bbit1  0x00000005 , 0x000029a6 
- 00010661  0x00001806 loop  0x000029a3 
- 00010662  0x00001808 store  0x00000001 , 0x000040ce 
- 00010663  0x00001809 jam  0x00000000 , 0x00008901 
- 00010664  0x0000180a jam  0x00000000 , 0x00008900 
- 00010665  0x0000180b jam  0x00000000 , 0x00008906 
- 00010666  0x0000180c rtn 
- 00010667  0x0000180f bpatch  0x0000008d , 0x00004011 
- 00010668  0x00001810 fetch  0x00000001 , 0x000040ce 
- 00010669  0x00001811 set1  0x00000005 , 0x0000003f 
- 00010670  0x00001812 hstore  0x00000001 , 0x00008952 
- 00010671  0x00001813 hfetcht  0x00000001 , 0x00008950 
- 00010672  0x00001814 and_into  0x00000007 , 0x00000002 
- 00010673  0x00001815 lshift3  0x0000003f , 0x0000003f 
- 00010674  0x00001816 ior  0x00000002 , 0x0000003f 
- 00010675  0x00001817 hstore  0x00000001 , 0x00008950 
- 00010676  0x00001818 hfetch  0x00000001 , 0x00008951 
- 00010677  0x00001819 set0  0x00000000 , 0x0000003f 
- 00010678  0x0000181a hstore  0x00000001 , 0x00008951 
- 00010679  0x0000181b hfetch  0x00000001 , 0x00008952 
- 00010680  0x0000181c set0  0x00000005 , 0x0000003f 
- 00010681  0x0000181d hstore  0x00000001 , 0x00008952 
- 00010682  0x0000181e rtn 
- 00010683  0x00001821 bpatch  0x0000008e , 0x00004011 
- 00010684  0x00001822 hfetch  0x00000002 , 0x00008981 
- 00010685  0x00001823 rshift4  0x0000003f , 0x0000003f 
- 00010686  0x00001824 rshift3  0x0000003f , 0x0000003f 
- 00010687  0x00001825 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00010688  0x00001827 and_into  0x000000ff , 0x0000003f 
- 00010689  0x00001828 div  0x0000003f , 0x0000000a 
- 00010690  0x00001829 call  0x00007f86 
- 00010691  0x0000182a quotient  0x0000003f 
- 00010692  0x0000182b lshift4  0x0000003f , 0x0000003f 
- 00010693  0x0000182c remainder  0x00000002 
- 00010694  0x0000182d ior  0x00000002 , 0x0000003f 
- 00010695  0x0000182e store  0x00000001 , 0x00000018 
- 00010696  0x0000182f rtn 
- 00010697  0x00001833 jam  0x00000006 , 0x00008042 
- 00010698  0x00001834 hfetch  0x00000001 , 0x0000896b 
- 00010699  0x00001835 set0  0x00000004 , 0x0000003f 
- 00010700  0x00001836 set0  0x00000005 , 0x0000003f 
- 00010701  0x00001837 hstore  0x00000001 , 0x0000896b 
- 00010702  0x00001838 jam  0x00000000 , 0x00008905 
- 00010703  0x00001839 jam  0x00000000 , 0x00008904 
- 00010704  0x0000183a jam  0x00000070 , 0x00008904 
- 00010705  0x0000183b jam  0x000000ff , 0x00008905 
- 00010706  0x0000183c hfetch  0x00000001 , 0x0000896b 
- 00010707  0x0000183d set1  0x00000004 , 0x0000003f 
- 00010708  0x0000183e set1  0x00000005 , 0x0000003f 
- 00010709  0x0000183f hstore  0x00000001 , 0x0000896b 
- 00010710  0x00001840 call  0x000029e9 
- 00010711  0x00001841 hfetch  0x00000001 , 0x00008968 
- 00010712  0x00001842 set1  0x00000007 , 0x0000003f 
- 00010713  0x00001843 hstore  0x00000001 , 0x00008968 
- 00010714  0x00001844 set0  0x00000007 , 0x0000003f 
- 00010715  0x00001845 hstore  0x00000001 , 0x00008968 
- 00010716  0x00001846 set1  0x00000007 , 0x0000003f 
- 00010717  0x00001847 hstore  0x00000001 , 0x00008968 
- 00010718  0x00001848 jam  0x00000005 , 0x00008042 
- 00010719  0x00001849 nop  0x00000001 
- 00010720  0x0000184a jam  0x00000004 , 0x00008042 
- 00010721  0x0000184b hfetch  0x00000001 , 0x0000896b 
- 00010722  0x0000184c and_into  0x000000cf , 0x0000003f 
- 00010723  0x0000184d hstore  0x00000001 , 0x0000896b 
- 00010724  0x0000184e or_into  0x00000030 , 0x0000003f 
- 00010725  0x0000184f hstore  0x00000001 , 0x0000896b 
- 00010726  0x00001850 rtn 
- 00010727  0x00001854 setarg  0x00000f0f 
- 00010728  0x00001855 branch  0x00002c18 
- 00010729  0x00001858 setarg  0x0000080f 
- 00010730  0x00001859 branch  0x00002c18 
- 00010731  0x0000185e bpatch  0x0000008f , 0x00004011 
- 00010732  0x0000185f call  0x00002924 
- 00010733  0x00001860 disable  0x00000020 
- 00010734  0x00001861 enable  0x00000021 
- 00010735  0x00001862 pulse  0x00000016 
- 00010736  0x00001863 rtn 
- 00010737  0x00001866 bpatch  0x00000090 , 0x00004012 
- 00010738  0x00001867 fetch  0x00000001 , 0x0000004c 
- 00010739  0x00001868 isolate1  0x00000002 , 0x0000003f 
- 00010740  0x00001869 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00010741  0x0000186a hstore  0x00000001 , 0x00008011 
- 00010742  0x0000186b arg  0x00000062 , 0x00000006 
- 00010743  0x0000186c ifetch  0x00000009 , 0x00000006 
- 00010744  0x0000186d iforce  0x00000032 
- 00010745  0x0000186e ifetch  0x00000007 , 0x00000006 
- 00010746  0x0000186f iforce  0x00000033 
- 00010747  0x00001870 fetch  0x00000001 , 0x00000054 
- 00010748  0x00001871 add  0x0000003f , 0xffffffff , 0x00000034 
- 00010749  0x00001872 pulse  0x0000001a 
- 00010750  0x00001873 rtn 
- 00010751  0x00001876 deposit  0x0000001a 
- 00010752  0x00001877 store  0x00000006 , 0x0000009a 
- 00010753  0x00001878 disable  0x0000000d 
- 00010754  0x00001879 nbranch  0x000028f9 , 0x00000018 
- 00010755  0x0000187a arg  0x000003bb , 0x00000029 
- 00010756  0x0000187b increase  0x00000001 , 0x00000028 
- 00010757  0x0000187c and_into  0x000001fc , 0x00000028 
- 00010758  0x0000187d rtn 
- 00010759  0x00001882 enable  0x0000000d 
- 00010760  0x00001884 correlate  0x0000003e , 0x00000017 
- 00010761  0x00001885 branch  0x000029ff , 0x00000018 
- 00010762  0x00001886 compare  0x00000002 , 0x00000028 , 0x00000002 
- 00010763  0x00001887 nbranch  0x00002a08 , 0x00000001 
- 00010764  0x00001888 branch  0x000029ff 
- 00010765  0x0000188b bpatch  0x00000091 , 0x00004012 
- 00010766  0x0000188c arg  0x00000600 , 0x0000000b 
- 00010767  0x0000188d enable  0x0000000d 
- 00010768  0x0000188e correlate  0x00000023 , 0x00000026 
- 00010769  0x0000188f disable  0x0000000d 
- 00010770  0x00001890 nbranch  0x000028f9 , 0x00000018 
- 00010771  0x00001891 rtn 
- 00010772  0x00001894 bpatch  0x00000092 , 0x00004012 
- 00010773  0x00001895 enable  0x0000000d 
- 00010774  0x00001896 correlate  0x0000003e , 0x00000003 
- 00010775  0x00001897 disable  0x0000000d 
- 00010776  0x00001898 nbranch  0x000028f9 , 0x00000018 
- 00010777  0x00001899 arg  0x000003bb , 0x00000029 
- 00010778  0x0000189a and_into  0x000001fc , 0x00000028 
- 00010779  0x0000189b rtn 
- 00010780  0x0000189f bpatch  0x00000093 , 0x00004012 
- 00010781  0x000018a0 iforce  0x00000011 
- 00010782  0x000018a1 deposit  0x00000021 
- 00010783  0x000018a2 iadd  0x00000002 , 0x0000000b 
- 00010784  0x000018a3 copy  0x0000000b , 0x0000003f 
- 00010785  0x000018a4 store  0x00000004 , 0x000040ca 
- 00010786  0x000018a5 deposit  0x00000011 
- 00010787  0x000018a6 rtn 
- 00010788  0x000018aa copy  0x0000003f , 0x00000002 
- 00010789  0x000018ab bpatch  0x00000094 , 0x00004012 
- 00010790  0x000018ac copy  0x00000002 , 0x0000003f 
- 00010791  0x000018ad call  0x00007f50 
- 00010792  0x000018ae lshift16  0x00000021 , 0x0000003f 
- 00010793  0x000018af set1  0x0000002c , 0x0000003f 
- 00010794  0x000018b0 call  0x00007f39 
- 00010795  0x000018b1 set0  0x0000002c , 0x0000003f 
- 00010796  0x000018b2 call  0x00002a77 
- 00010797  0x000018b3 call  0x00007f39 
- 00010798  0x000018b4 rtn  0x00000028 
- 00010799  0x000018b5 call  0x00007f43 
- 00010800  0x000018b6 iforce  0x0000001b 
- 00010801  0x000018b7 until  0x0000003e , 0x00000003 
- 00010802  0x000018b8 rtn 
- 00010803  0x000018bc bpatch  0x00000095 , 0x00004012 
- 00010804  0x000018bd branch  0x00002a38 , 0x00000030 
- 00010805  0x000018be until  0x00000029 , 0x00000026 
- 00010806  0x000018c0 copy  0x00000028 , 0x00000002 
- 00010807  0x000018c1 branch  0x00002a3b 
- 00010808  0x000018c3 branch  0x00002a3a , 0x0000002e 
- 00010809  0x000018c4 until  0x00000023 , 0x00000026 
- 00010810  0x000018c6 copy  0x00000022 , 0x00000002 
- 00010811  0x000018c8 branch  0x00002a47 , 0x00000028 
- 00010812  0x000018c9 compare  0x00000001 , 0x00000002 , 0x00000003 
- 00010813  0x000018ca nbranch  0x00002a33 , 0x00000001 
- 00010814  0x000018cc bpatch  0x00000096 , 0x00004012 
- 00010815  0x000018cd fetch  0x00000001 , 0x00000030 
- 00010816  0x000018ce rtnbit0  0x00000000 
- 00010817  0x000018cf fetch  0x00000004 , 0x000040ca 
- 00010818  0x000018d0 isub  0x00000002 , 0x0000003f 
- 00010819  0x000018d1 nrtn  0x00000002 
- 00010820  0x000018d2 sub  0x0000003f , 0x000000ff , 0x0000003e 
- 00010821  0x000018d3 branch  0x00002a33 , 0x00000002 
- 00010822  0x000018d4 rtn 
- 00010823  0x000018d6 compare  0x00000003 , 0x00000002 , 0x00000003 
- 00010824  0x000018d7 nbranch  0x00002a33 , 0x00000001 
- 00010825  0x000018d8 branch  0x00002a3e 
- 00010826  0x000018db bpatch  0x00000097 , 0x00004012 
- 00010827  0x000018dc arg  0x00000600 , 0x0000000b 
- 00010828  0x000018dd branch  0x00002a33 
- 00010829  0x000018e0 disable  0x00000028 
- 00010830  0x000018e1 branch  0x00002a4a 
- 00010831  0x000018e4 enable  0x00000028 
- 00010832  0x000018e5 branch  0x00002a4a 
- 00010833  0x000018e8 bpatch  0x00000098 , 0x00004013 
- 00010834  0x000018e9 call  0x000029f1 
- 00010835  0x000018ea disable  0x00000021 
- 00010836  0x000018eb enable  0x00000020 
- 00010837  0x000018ec rtn 
- 00010838  0x000018f1 bpatch  0x00000099 , 0x00004013 
- 00010839  0x000018f2 arg  0x00000e43 , 0x0000000b 
- 00010840  0x000018f3 until  0x00000023 , 0x00000026 
- 00010841  0x000018f4 pulse  0x00000016 
- 00010842  0x000018f5 rtn 
- 00010843  0x000018f8 bpatch  0x0000009a , 0x00004013 
- 00010844  0x000018f9 arg  0x00000d00 , 0x0000000b 
- 00010845  0x000018fa until  0x00000023 , 0x00000026 
- 00010846  0x000018fb rtn 
- 00010847  0x000018ff bpatch  0x0000009b , 0x00004013 
- 00010848  0x00001900 arg  0x00000e43 , 0x0000000b 
- 00010849  0x00001901 until  0x00000029 , 0x00000026 
- 00010850  0x00001902 pulse  0x00000016 
- 00010851  0x00001903 rtn 
- 00010852  0x00001906 bpatch  0x0000009c , 0x00004013 
- 00010853  0x00001907 preload  0x00000009 
- 00010854  0x00001908 enable  0x0000001d 
- 00010855  0x00001909 set1  0x00000000 , 0x00000015 
- 00010856  0x0000190a inject  0x00000003 , 0x00000048 
- 00010857  0x0000190b disable  0x0000001d 
- 00010858  0x0000190c rtn 
- 00010859  0x00001910 copy  0x00000025 , 0x00000002 
- 00010860  0x00001911 or_into  0x00000060 , 0x00000002 
- 00010861  0x00001912 copy  0x00000002 , 0x0000000e 
- 00010862  0x00001913 rtn 
- 00010863  0x00001919 bpatch  0x0000009d , 0x00004013 
- 00010864  0x0000191a fetch  0x00000001 , 0x00004090 
- 00010865  0x0000191b increase  0x00000001 , 0x0000003f 
- 00010866  0x0000191c bne  0x00000007 , 0x00002a74 
- 00010867  0x0000191d force  0x00000001 , 0x0000003f 
- 00010868  0x0000191f store  0x00000001 , 0x00004090 
- 00010869  0x00001920 iforce  0x00000004 
- 00010870  0x00001921 rtn 
- 00010871  0x00001924 copy  0x00000019 , 0x00000002 
- 00010872  0x00001925 rtn  0x00000029 
- 00010873  0x00001926 copy  0x0000001a , 0x00000002 
- 00010874  0x00001927 rtn 
- 00010875  0x0000192a deposit  0x00000022 
- 00010876  0x0000192b rtn  0x00000029 
- 00010877  0x0000192c deposit  0x00000028 
- 00010878  0x0000192d rtn 
- 00010879  0x00001931 bpatch  0x0000009e , 0x00004013 
- 00010880  0x00001932 fetcht  0x00000004 , 0x0000004d 
- 00010881  0x00001933 call  0x00002a7b 
- 00010882  0x00001934 isub  0x00000002 , 0x0000000b 
- 00010883  0x00001935 deposit  0x0000000b 
- 00010884  0x00001936 fetcht  0x00000002 , 0x00000051 
- 00010885  0x00001937 lshift  0x00000002 , 0x00000002 
- 00010886  0x00001938 isub  0x00000002 , 0x0000003f 
- 00010887  0x00001939 rtn 
- 00010888  0x0000193c bpatch  0x0000009f , 0x00004013 
- 00010889  0x0000193d call  0x00002a7b 
- 00010890  0x0000193e store  0x00000004 , 0x0000004d 
- 00010891  0x0000193f rtn 
- 00010892  0x00001942 bpatch  0x000000a0 , 0x00004014 
- 00010893  0x00001943 branch  0x00002a8c 
- 00010894  0x00001946 branch  0x00002a8e 
- 00010895  0x00001949 rtn  0x00000034 
- 00010896  0x0000194b rshift  0x0000003f , 0x0000003f 
- 00010897  0x0000194c increase  0xfffffffd , 0x0000003f 
- 00010898  0x0000194e increase  0xffffffff , 0x0000003f 
- 00010899  0x0000194f nbranch  0x00002a92 , 0x00000005 
- 00010900  0x00001950 force  0x00000000 , 0x0000003f 
- 00010901  0x00001951 rtn 
- 00010902  0x00001957 arg  0x00000010 , 0x00000039 
- 00010903  0x00001958 arg  0x00000000 , 0x00000005 
- 00010904  0x00001959 call  0x00007ec6 
- 00010905  0x0000195a arg  0x0000043f , 0x00000005 
- 00010906  0x0000195b arg  0x0000000a , 0x00000039 
- 00010907  0x0000195c call  0x00007ec6 
- 00010908  0x0000195d jam  0x00000000 , 0x000009b2 
- 00010909  0x0000195e jam  0x00000000 , 0x00000a99 
- 00010910  0x0000195f jam  0x00000000 , 0x0000048c 
- 00010911  0x00001960 jam  0x00000000 , 0x0000017f 
- 00010912  0x00001961 jam  0x00000000 , 0x000004d1 
- 00010913  0x00001962 bpatch  0x000000a1 , 0x00004014 
- 00010914  0x00001963 jam  0x00000000 , 0x0000016d 
- 00010915  0x00001964 jam  0x00000000 , 0x00000151 
- 00010916  0x00001965 jam  0x00000000 , 0x0000015c 
- 00010917  0x00001966 setarg  0x009e8b33 
- 00010918  0x00001967 store  0x00000003 , 0x000040a7 
- 00010919  0x00001968 setarg  0x00000153 
- 00010920  0x00001969 store  0x00000002 , 0x00000083 
- 00010921  0x0000196a jam  0x0000001e , 0x00000085 
- 00010922  0x0000196b jam  0x00000001 , 0x00000086 
- 00010923  0x0000196c jam  0x00000007 , 0x00000088 
- 00010924  0x0000196d setarg  0x0012e904 
- 00010925  0x0000196e store  0x00000003 , 0x00000080 
- 00010926  0x00001973 jam  0x00000060 , 0x00000090 
- 00010927  0x00001974 jam  0x00000005 , 0x000040d0 
- 00010928  0x00001975 jam  0x00000002 , 0x00000014 
- 00010929  0x00001976 fetch  0x00000001 , 0x0000465a 
- 00010930  0x00001977 ncall  0x000074c1 , 0x00000034 
- 00010931  0x00001978 fetch  0x00000001 , 0x000044be 
- 00010932  0x00001979 ncall  0x00007518 , 0x00000034 
- 00010933  0x0000197a bpatch  0x000000a2 , 0x00004014 
- 00010934  0x0000197b rtn  0x0000002b 
- 00010935  0x0000197c setarg  0x00000000 
- 00010936  0x0000197d store  0x00000002 , 0x000041dc 
- 00010937  0x0000197e rshift  0x00000022 , 0x0000003f 
- 00010938  0x0000197f store  0x00000004 , 0x00004094 
- 00010939  0x00001980 rtn 
- 00010940  0x00001988 setarg  0x0000ee21 
- 00010941  0x00001989 hstore  0x00000002 , 0x00008050 
- 00010942  0x0000198a hfetch  0x00000004 , 0x0000811c 
- 00010943  0x0000198b store  0x00000004 , 0x00000abe 
- 00010944  0x0000198c hfetch  0x00000001 , 0x0000813e 
- 00010945  0x0000198d store  0x00000001 , 0x00000abd 
- 00010946  0x0000198e bbit0  0x00000003 , 0x0000645b 
- 00010947  0x0000198f enable  0x0000002b 
- 00010948  0x00001990 bbit0  0x00000007 , 0x00002acc 
- 00010949  0x00001991 disable  0x0000002b 
- 00010950  0x00001992 deposit  0x00000027 
- 00010951  0x00001993 nbranch  0x00002acc , 0x00000034 
- 00010952  0x00001994 hfetch  0x00000001 , 0x0000813b 
- 00010953  0x00001995 bbit1  0x00000002 , 0x00002acc 
- 00010954  0x00001996 arg  0xffffffff , 0x00000002 
- 00010955  0x00001997 branch  0x00002b3c 
- 00010956  0x00001999 hfetch  0x00000003 , 0x0000813c 
- 00010957  0x0000199a hstore  0x00000003 , 0x0000804c 
- 00010958  0x0000199b ifetch  0x00000001 , 0x00000006 
- 00010959  0x0000199c or_into  0x000000ef , 0x0000003f 
- 00010960  0x0000199d istore  0x00000001 , 0x00000005 
- 00010961  0x0000199e call  0x00002c23 
- 00010962  0x0000199f hfetch  0x00000001 , 0x0000804f 
- 00010963  0x000019a0 set1  0x00000004 , 0x0000003f 
- 00010964  0x000019a1 hstore  0x00000001 , 0x0000804f 
- 00010965  0x000019a2 call  0x00002c23 
- 00010966  0x000019a3 call  0x00002adf , 0x0000002b 
- 00010967  0x000019a4 hfetch  0x00000001 , 0x0000804e 
- 00010968  0x000019a5 set0  0x00000003 , 0x0000003f 
- 00010969  0x000019a6 hstore  0x00000001 , 0x0000804e 
- 00010970  0x000019a7 call  0x00002c23 
- 00010971  0x000019a8 nbranch  0x0000645b , 0x0000002b 
- 00010972  0x000019a9 rtnmark0  0x0000002b 
- 00010973  0x000019aa jam  0x00000008 , 0x00008006 
- 00010974  0x000019ab rtn 
- 00010975  0x000019ae fetch  0x00000001 , 0x00004198 
- 00010976  0x000019af hstore  0x00000001 , 0x00008086 
- 00010977  0x000019b0 fetch  0x00000003 , 0x0000418d 
- 00010978  0x000019b1 hstore  0x00000003 , 0x00008080 
- 00010979  0x000019b2 fetch  0x00000004 , 0x00004181 
- 00010980  0x000019b3 hstore  0x00000004 , 0x00008074 
- 00010981  0x000019b4 fetch  0x00000004 , 0x0000417d 
- 00010982  0x000019b5 hstore  0x00000004 , 0x00008070 
- 00010983  0x000019b6 fetch  0x00000008 , 0x00004185 
- 00010984  0x000019b7 hstore  0x00000008 , 0x00008078 
- 00010985  0x000019b8 fetch  0x00000008 , 0x00004190 
- 00010986  0x000019b9 iforce  0x00000000 
- 00010987  0x000019ba hfetch  0x00000008 , 0x00008140 
- 00010988  0x000019bb store  0x00000008 , 0x000000a1 
- 00010989  0x000019bc call  0x000064ca 
- 00010990  0x000019bd rtn 
- 00010991  0x000019c0 deposit  0x00000000 
- 00010992  0x000019c1 store  0x00000008 , 0x00004190 
- 00010993  0x000019c2 hfetch  0x00000008 , 0x00008070 
- 00010994  0x000019c3 store  0x00000008 , 0x0000417d 
- 00010995  0x000019c4 ifetch  0x00000008 , 0x00000006 
- 00010996  0x000019c5 istore  0x00000008 , 0x00000005 
- 00010997  0x000019c6 hfetch  0x00000003 , 0x00008080 
- 00010998  0x000019c7 store  0x00000003 , 0x0000418d 
- 00010999  0x000019c8 hfetch  0x00000001 , 0x00008086 
- 00011000  0x000019c9 store  0x00000001 , 0x00004198 
- 00011001  0x000019ca branch  0x00002c29 
- 00011002  0x000019cd hfetch  0x00000001 , 0x00008063 
- 00011003  0x000019ce nbranch  0x00002b00 , 0x00000034 
- 00011004  0x000019cf fetch  0x00000003 , 0x0000416f 
- 00011005  0x000019d0 nrtn  0x00000034 
- 00011006  0x000019d1 jam  0x000000c0 , 0x00008063 
- 00011007  0x000019d2 jam  0x00000080 , 0x00008006 
- 00011008  0x000019d4 hfetch  0x00000001 , 0x0000812d 
- 00011009  0x000019d5 rtnbit0  0x00000001 
- 00011010  0x000019d6 hfetch  0x00000003 , 0x00008149 
- 00011011  0x000019d7 store  0x00000003 , 0x0000416f 
- 00011012  0x000019d8 rtn 
- 00011013  0x000019dd bpatch  0x000000a3 , 0x00004014 
- 00011014  0x000019de deposit  0x0000001a 
- 00011015  0x000019df call  0x00007f37 
- 00011016  0x000019e0 fetcht  0x00000004 , 0x0000415f 
- 00011017  0x000019e1 sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00011018  0x000019e2 rtn  0x00000002 
- 00011019  0x000019e3 lshift8  0x0000003f , 0x0000003f 
- 00011020  0x000019e4 lshift4  0x0000003f , 0x0000003f 
- 00011021  0x000019e5 idiv  0x00000002 
- 00011022  0x000019e6 call  0x00007f86 
- 00011023  0x000019e7 quotient  0x0000003f 
- 00011024  0x000019e8 arg  0x000000c8 , 0x00000002 
- 00011025  0x000019e9 call  0x00007f91 
- 00011026  0x000019ea store  0x00000001 , 0x00000099 
- 00011027  0x000019eb nbranch  0x00002b15 , 0x00000028 
- 00011028  0x000019ec sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00011029  0x000019ee fetcht  0x00000003 , 0x0000416f 
- 00011030  0x000019ef iadd  0x00000002 , 0x0000003f 
- 00011031  0x000019f0 store  0x00000003 , 0x0000416f 
- 00011032  0x000019f2 setarg  0x00000000 
- 00011033  0x000019f3 store  0x00000004 , 0x0000415f 
- 00011034  0x000019f4 rtn 
- 00011035  0x000019f9 fetch  0x00000001 , 0x00004177 
- 00011036  0x000019fa set1  0x00000002 , 0x0000003f 
- 00011037  0x000019fb store  0x00000001 , 0x00004177 
- 00011038  0x000019fc branch  0x00002b23 
- 00011039  0x00001a01 arg  0xffffffff , 0x00000002 
- 00011040  0x00001a02 fetch  0x00000001 , 0x00004176 
- 00011041  0x00001a03 set0  0x00000007 , 0x0000003f 
- 00011042  0x00001a04 store  0x00000001 , 0x00004176 
- 00011043  0x00001a06 bpatch  0x000000a4 , 0x00004014 
- 00011044  0x00001a07 call  0x00002c29 
- 00011045  0x00001a08 fetch  0x00000001 , 0x00004157 
- 00011046  0x00001a09 store  0x00000001 , 0x0000417c 
- 00011047  0x00001a0a fetch  0x00000001 , 0x0000417a 
- 00011048  0x00001a0b set1  0x00000007 , 0x0000003f 
- 00011049  0x00001a0c store  0x00000001 , 0x0000417a 
- 00011050  0x00001a10 bpatch  0x000000a5 , 0x00004014 
- 00011051  0x00001a11 call  0x000029e7 
- 00011052  0x00001a12 fetch  0x00000004 , 0x0000415f 
- 00011053  0x00001a13 iadd  0x00000002 , 0x0000003f 
- 00011054  0x00001a14 store  0x00000004 , 0x0000415f 
- 00011055  0x00001a15 call  0x00002aef 
- 00011056  0x00001a16 fetch  0x00000005 , 0x00004178 
- 00011057  0x00001a17 hstore  0x00000004 , 0x0000804c 
- 00011058  0x00001a18 rshift32  0x0000003f , 0x00000011 
- 00011059  0x00001a19 until  0x0000003e , 0x00000033 
- 00011060  0x00001a1a deposit  0x00000019 
- 00011061  0x00001a1b store  0x00000006 , 0x00004163 
- 00011062  0x00001a1c jam  0x00000002 , 0x00008005 
- 00011063  0x00001a1d until  0x0000003e , 0x00000033 
- 00011064  0x00001a1e until  0x0000003e , 0x00000033 
- 00011065  0x00001a1f deposit  0x00000011 
- 00011066  0x00001a20 hstore  0x00000001 , 0x0000804f 
- 00011067  0x00001a21 jam  0x00000002 , 0x00008005 
- 00011068  0x00001a23 until  0x0000003e , 0x00000033 
- 00011069  0x00001a24 until  0x0000003e , 0x00000033 
- 00011070  0x00001a25 hstoret  0x00000004 , 0x0000804c 
- 00011071  0x00001a26 jam  0x00000010 , 0x00008005 
- 00011072  0x00001a27 until  0x0000003e , 0x0000003f 
- 00011073  0x00001a2d bpatch  0x000000a6 , 0x00004014 
- 00011074  0x00001a2e setarg  0x00000000 
- 00011075  0x00001a2f copy  0x00000027 , 0x0000003e 
- 00011076  0x00001a30 branch  0x00002b4c , 0x00000005 
- 00011077  0x00001a31 hfetch  0x00000001 , 0x0000813c 
- 00011078  0x00001a32 hfetcht  0x00000001 , 0x0000813d 
- 00011079  0x00001a33 isub  0x00000002 , 0x0000003e 
- 00011080  0x00001a34 branch  0x00002b4a , 0x00000002 
- 00011081  0x00001a35 deposit  0x00000002 
- 00011082  0x00001a37 isub  0x00000027 , 0x0000003f 
- 00011083  0x00001a38 increase  0x00000001 , 0x0000003f 
- 00011084  0x00001a3a increase  0x00000008 , 0x0000003f 
- 00011085  0x00001a3b until  0x0000003e , 0x00000033 
- 00011086  0x00001a3c iadd  0x00000031 , 0x0000003f 
- 00011087  0x00001a3d fetcht  0x00000004 , 0x0000415b 
- 00011088  0x00001a3e iadd  0x00000002 , 0x0000003f 
- 00011089  0x00001a3f fetcht  0x00000003 , 0x0000416f 
- 00011090  0x00001a40 imul32  0x00000002 , 0x0000003f 
- 00011091  0x00001a41 rshift8  0x0000003f , 0x0000003f 
- 00011092  0x00001a42 rshift4  0x0000003f , 0x0000003f 
- 00011093  0x00001a43 increase  0x0000006e , 0x0000003f 
- 00011094  0x00001a44 arg  0x00000ea6 , 0x00000002 
- 00011095  0x00001a45 idiv  0x00000002 
- 00011096  0x00001a46 call  0x00007f86 
- 00011097  0x00001a47 quotient  0x0000003f 
- 00011098  0x00001a48 lshift16  0x0000003f , 0x0000003f 
- 00011099  0x00001a49 remainder  0x00000002 
- 00011100  0x00001a4a ior  0x00000002 , 0x0000003f 
- 00011101  0x00001a4b fetcht  0x00000006 , 0x00004163 
- 00011102  0x00001a4c call  0x00007f2c 
- 00011103  0x00001a4d copy  0x00000002 , 0x00000019 
- 00011104  0x00001a4e fetch  0x00000006 , 0x00004048 
- 00011105  0x00001a4f call  0x00002854 
- 00011106  0x00001a50 deposit  0x0000001a 
- 00011107  0x00001a51 store  0x00000006 , 0x00000a9a 
- 00011108  0x00001a52 deposit  0x00000027 
- 00011109  0x00001a53 istore  0x00000001 , 0x00000005 
- 00011110  0x00001a54 hfetch  0x00000001 , 0x0000811d 
- 00011111  0x00001a55 or_into  0x000000f0 , 0x0000003f 
- 00011112  0x00001a56 istore  0x00000001 , 0x00000005 
- 00011113  0x00001a57 rtn 
- 00011114  0x00001a5a bpatch  0x000000a7 , 0x00004014 
- 00011115  0x00001a5b call  0x00002afa 
- 00011116  0x00001a5c fetch  0x00000003 , 0x0000416f 
- 00011117  0x00001a5d rtn  0x00000034 
- 00011118  0x00001a5e fetch  0x00000001 , 0x00004091 
- 00011119  0x00001a5f rtn  0x00000034 
- 00011120  0x00001a60 fetch  0x00000001 , 0x0000465a 
- 00011121  0x00001a61 branch  0x00002b74 , 0x00000034 
- 00011122  0x00001a62 fetch  0x00000001 , 0x000045b1 
- 00011123  0x00001a63 rtn  0x00000034 
- 00011124  0x00001a65 fetch  0x00000001 , 0x000044c0 
- 00011125  0x00001a66 nrtn  0x00000034 
- 00011126  0x00001a67 call  0x00002c3a 
- 00011127  0x00001a68 nrtn  0x00000034 
- 00011128  0x00001a69 fetch  0x00000001 , 0x00004040 
- 00011129  0x00001a6a compare  0x00000003 , 0x0000003f , 0x00000007 
- 00011130  0x00001a6b nbranch  0x00002b9d , 0x00000001 
- 00011131  0x00001a6c fetch  0x00000002 , 0x00004042 
- 00011132  0x00001a6d rtn  0x00000034 
- 00011133  0x00001a6e rtn  0x0000002b 
- 00011134  0x00001a6f bpatch  0x000000a8 , 0x00004015 
- 00011135  0x00001a71 fetcht  0x00000001 , 0x000000a0 
- 00011136  0x00001a72 fetch  0x00000002 , 0x00004042 
- 00011137  0x00001a73 imul32  0x00000002 , 0x0000003f 
- 00011138  0x00001a74 rshift4  0x00000002 , 0x00000002 
- 00011139  0x00001a75 rshift2  0x00000002 , 0x00000002 
- 00011140  0x00001a76 isub  0x00000002 , 0x0000003f 
- 00011141  0x00001a77 fetcht  0x00000004 , 0x00004044 
- 00011142  0x00001a78 iadd  0x00000002 , 0x0000003f 
- 00011143  0x00001a79 fetcht  0x00000001 , 0x00004156 
- 00011144  0x00001a7a isub  0x00000002 , 0x0000003f 
- 00011145  0x00001a7b lshift16  0x0000003f , 0x00000030 
- 00011146  0x00001a7c bpatch  0x000000a9 , 0x00004015 
- 00011147  0x00001a7d fetch  0x00000002 , 0x0000404e 
- 00011148  0x00001a7e rshift  0x0000003f , 0x0000003f 
- 00011149  0x00001a7f call  0x00007f50 
- 00011150  0x00001a80 deposit  0x00000030 
- 00011151  0x00001a81 call  0x00007f39 
- 00011152  0x00001a82 copy  0x0000001a , 0x00000002 
- 00011153  0x00001a83 call  0x00007f37 
- 00011154  0x00001a84 rtn  0x00000028 
- 00011155  0x00001a86 call  0x00007f49 
- 00011156  0x00001a88 bpatch  0x000000aa , 0x00004015 
- 00011157  0x00001a89 fetch  0x00000001 , 0x00004178 
- 00011158  0x00001a8a isub  0x00000002 , 0x0000003e 
- 00011159  0x00001a8b branch  0x00002b18 , 0x00000002 
- 00011160  0x00001a8c storet  0x00000004 , 0x0000415b 
- 00011161  0x00001a8d call  0x00003328 
- 00011162  0x00001a8e call  0x000052fb 
- 00011163  0x00001a8f fetcht  0x00000004 , 0x0000415b 
- 00011164  0x00001a90 branch  0x00002b2a 
- 00011165  0x00001a93 bpatch  0x000000ab , 0x00004015 
- 00011166  0x00001a94 fetch  0x00000001 , 0x00004040 
- 00011167  0x00001a95 rtnbit1  0x00000000 
- 00011168  0x00001a96 rtnbit1  0x00000003 
- 00011169  0x00001a97 fetch  0x00000001 , 0x0000465a 
- 00011170  0x00001a98 branch  0x00002ba5 , 0x00000034 
- 00011171  0x00001a99 fetch  0x00000001 , 0x000045b1 
- 00011172  0x00001a9a rtn  0x00000034 
- 00011173  0x00001a9c bpatch  0x000000ac , 0x00004015 
- 00011174  0x00001a9d fetch  0x00000001 , 0x0000436e 
- 00011175  0x00001a9e nbranch  0x00002baa , 0x00000034 
- 00011176  0x00001a9f fetch  0x00000001 , 0x00004093 
- 00011177  0x00001aa0 rtn  0x00000034 
- 00011178  0x00001aa2 fetch  0x00000002 , 0x00004154 
- 00011179  0x00001aa3 rtn  0x00000034 
- 00011180  0x00001aa5 fetcht  0x00000001 , 0x00004156 
- 00011181  0x00001aa6 isub  0x00000002 , 0x0000003f 
- 00011182  0x00001aa7 arg  0x00001d4c , 0x00000002 
- 00011183  0x00001aa8 imul32  0x00000002 , 0x0000003f 
- 00011184  0x00001aa9 branch  0x00002b93 
- 00011185  0x00001aac bpatch  0x000000ad , 0x00004015 
- 00011186  0x00001aad disable  0x0000002b 
- 00011187  0x00001aae fetch  0x00000001 , 0x00000030 
- 00011188  0x00001aaf rtnbit0  0x00000001 
- 00011189  0x00001ab0 nbranch  0x00002bd0 , 0x0000002d 
- 00011190  0x00001ab1 call  0x00002bcb 
- 00011191  0x00001ab2 fetch  0x00000002 , 0x000040c1 
- 00011192  0x00001ab3 store  0x00000002 , 0x0000003e 
- 00011193  0x00001ab4 fetch  0x00000001 , 0x00000047 
- 00011194  0x00001ab5 bbit1  0x00000003 , 0x00002bde 
- 00011195  0x00001ab6 bmark0  0x0000000d , 0x00002bde 
- 00011196  0x00001ab7 call  0x00005274 
- 00011197  0x00001ab8 nbranch  0x00002bde , 0x00000034 
- 00011198  0x00001ab9 fetch  0x00000001 , 0x0000455c 
- 00011199  0x00001aba bbit1  0x00000001 , 0x00002bde 
- 00011200  0x00001abc jam  0x00000000 , 0x000000a0 
- 00011201  0x00001abd bmark0  0x0000000d , 0x00002bde 
- 00011202  0x00001abe fetch  0x00000001 , 0x00004174 
- 00011203  0x00001abf branch  0x00002be2 , 0x00000034 
- 00011204  0x00001ac0 increase  0xffffffff , 0x0000003f 
- 00011205  0x00001ac1 store  0x00000001 , 0x00004174 
- 00011206  0x00001ac2 rtn 
- 00011207  0x00001ac6 arg  0x00000001 , 0x00000007 
- 00011208  0x00001ac7 branch  0x000060cd 
- 00011209  0x00001aca arg  0x00000001 , 0x00000007 
- 00011210  0x00001acb branch  0x000060d1 
- 00011211  0x00001ad0 jam  0x00000000 , 0x00004159 
- 00011212  0x00001ad1 fetch  0x00000003 , 0x00004169 
- 00011213  0x00001ad2 increase  0x00000001 , 0x0000003f 
- 00011214  0x00001ad3 store  0x00000003 , 0x00004169 
- 00011215  0x00001ad4 rtn 
- 00011216  0x00001ad7 bpatch  0x000000ae , 0x00004015 
- 00011217  0x00001ad8 fetcht  0x00000002 , 0x000040c1 
- 00011218  0x00001ad9 rshift  0x00000002 , 0x00000002 
- 00011219  0x00001ada fetch  0x00000002 , 0x0000003e 
- 00011220  0x00001adb iadd  0x00000002 , 0x0000003f 
- 00011221  0x00001adc store  0x00000002 , 0x0000003e 
- 00011222  0x00001ade jam  0x00000000 , 0x000000a0 
- 00011223  0x00001adf fetch  0x00000003 , 0x0000416c 
- 00011224  0x00001ae0 increase  0x00000001 , 0x0000003f 
- 00011225  0x00001ae1 store  0x00000003 , 0x0000416c 
- 00011226  0x00001ae2 fetch  0x00000001 , 0x00004159 
- 00011227  0x00001ae3 increase  0x00000001 , 0x0000003f 
- 00011228  0x00001ae4 store  0x00000001 , 0x00004159 
- 00011229  0x00001ae5 rtn 
- 00011230  0x00001ae8 jam  0x00000000 , 0x000000a0 
- 00011231  0x00001ae9 fetch  0x00000001 , 0x00004173 
- 00011232  0x00001aea store  0x00000001 , 0x00004174 
- 00011233  0x00001aeb rtn 
- 00011234  0x00001aee fetcht  0x00000001 , 0x00004172 
- 00011235  0x00001aef storet  0x00000001 , 0x000000a0 
- 00011236  0x00001af0 rtn 
- 00011237  0x00001af3 bpatch  0x000000af , 0x00004015 
- 00011238  0x00001af4 fetch  0x00000001 , 0x00004178 
- 00011239  0x00001af5 nrtn  0x00000034 
- 00011240  0x00001af6 jam  0x00000006 , 0x00008042 
- 00011241  0x00001af7 setarg  0x00000f0c 
- 00011242  0x00001af8 call  0x00002c18 
- 00011243  0x00001af9 setarg  0x00030d40 
- 00011244  0x00001afa call  0x00002a8f 
- 00011245  0x00001afb until  0x0000003e , 0x00000033 
- 00011246  0x00001afc copy  0x00000031 , 0x00000030 
- 00011247  0x00001afd call  0x000029e7 
- 00011248  0x00001afe jam  0x00000004 , 0x00008042 
- 00011249  0x00001aff nop  0x0000000a 
- 00011250  0x00001b00 until  0x0000003e , 0x00000033 
- 00011251  0x00001b01 deposit  0x00000031 
- 00011252  0x00001b02 isub  0x00000030 , 0x0000003f 
- 00011253  0x00001b03 increase  0x00000030 , 0x0000003f 
- 00011254  0x00001b04 arg  0x000000ff , 0x00000002 
- 00011255  0x00001b05 call  0x00007f91 
- 00011256  0x00001b06 store  0x00000001 , 0x00004178 
- 00011257  0x00001b07 nop  0x00007530 
- 00011258  0x00001b08 nop  0x00007530 
- 00011259  0x00001b09 nop  0x00007530 
- 00011260  0x00001b0a rtn 
- 00011261  0x00001b0d fetch  0x00000001 , 0x00004178 
- 00011262  0x00001b0e nrtn  0x00000034 
- 00011263  0x00001b0f jam  0x000000ff , 0x00008044 
- 00011264  0x00001b10 jam  0x00000006 , 0x00008042 
- 00011265  0x00001b11 call  0x000029e7 
- 00011266  0x00001b12 setarg  0x000003e8 
- 00011267  0x00001b13 iadd  0x00000031 , 0x00000030 
- 00011268  0x00001b14 snooze 
- 00011269  0x00001b15 deposit  0x00000031 
- 00011270  0x00001b16 nop  0x00002ee0 
- 00011271  0x00001b17 nop  0x00002ee0 
- 00011272  0x00001b18 nop  0x00002ee0 
- 00011273  0x00001b19 nop  0x00002ee0 
- 00011274  0x00001b1a nop  0x00002ee0 
- 00011275  0x00001b1b nop  0x00002ee0 
- 00011276  0x00001b1c nop  0x00002ee0 
- 00011277  0x00001b1d nop  0x00002ee0 
- 00011278  0x00001b1e nop  0x00002ee0 
- 00011279  0x00001b1f isub  0x00000030 , 0x0000003f 
- 00011280  0x00001b20 add  0x0000003f , 0x00000030 , 0x0000003f 
- 00011281  0x00001b21 arg  0x000000ff , 0x00000002 
- 00011282  0x00001b22 call  0x00007f91 
- 00011283  0x00001b23 store  0x00000001 , 0x00004178 
- 00011284  0x00001b24 nop  0x00007530 
- 00011285  0x00001b25 nop  0x00007530 
- 00011286  0x00001b26 nop  0x00007530 
- 00011287  0x00001b27 rtn 
- 00011288  0x00001b2d arg  0x00000fff , 0x00000005 
- 00011289  0x00001b2e iand  0x00000005 , 0x00000005 
- 00011290  0x00001b2f fetch  0x00000001 , 0x00004175 
- 00011291  0x00001b30 and_into  0x000000f0 , 0x0000003f 
- 00011292  0x00001b31 lshift8  0x0000003f , 0x0000003f 
- 00011293  0x00001b32 ior  0x00000005 , 0x0000003f 
- 00011294  0x00001b33 hstore  0x00000002 , 0x0000804c 
- 00011295  0x00001b34 ifetch  0x00000002 , 0x00000006 
- 00011296  0x00001b35 istore  0x00000002 , 0x00000005 
- 00011297  0x00001b38 setarg  0x00000001 
- 00011298  0x00001b39 branch  0x00002c24 
- 00011299  0x00001b3c setarg  0x00000002 
- 00011300  0x00001b3e until  0x0000003e , 0x00000033 
- 00011301  0x00001b3f hstore  0x00000001 , 0x00008005 
- 00011302  0x00001b40 until  0x0000003e , 0x00000033 
- 00011303  0x00001b41 until  0x0000003e , 0x00000033 
- 00011304  0x00001b42 rtn 
- 00011305  0x00001b46 bpatch  0x000000b0 , 0x00004016 
- 00011306  0x00001b47 fetch  0x00000004 , 0x000000a1 
- 00011307  0x00001b48 hstore  0x00000004 , 0x0000804c 
- 00011308  0x00001b49 setarg  0x00000004 
- 00011309  0x00001b4a call  0x00002c24 
- 00011310  0x00001b4b fetch  0x00000004 , 0x000000a5 
- 00011311  0x00001b4c hstore  0x00000004 , 0x0000804c 
- 00011312  0x00001b4d setarg  0x00000008 
- 00011313  0x00001b4e branch  0x00002c24 
- 00011314  0x00001b51 fetch  0x00000002 , 0x00004152 
- 00011315  0x00001b52 qset1  0x0000003f 
- 00011316  0x00001b53 store  0x00000002 , 0x00004152 
- 00011317  0x00001b54 rtn 
- 00011318  0x00001b57 fetch  0x00000002 , 0x00004152 
- 00011319  0x00001b58 qset0  0x0000003f 
- 00011320  0x00001b59 store  0x00000002 , 0x00004152 
- 00011321  0x00001b5a rtn 
- 00011322  0x00001b5f bpatch  0x000000b1 , 0x00004016 
- 00011323  0x00001b60 call  0x00003326 
- 00011324  0x00001b61 fetch  0x00000002 , 0x00004152 
- 00011325  0x00001b62 copy  0x0000003f , 0x00000011 
- 00011326  0x00001b63 fetch  0x00000001 , 0x0000004c 
- 00011327  0x00001b64 isolate1  0x00000006 , 0x0000003f 
- 00011328  0x00001b65 setflag  0x00000001 , 0x0000000b , 0x00000011 
- 00011329  0x00001b66 fetch  0x00000001 , 0x00000078 
- 00011330  0x00001b67 fetcht  0x00000001 , 0x0000007c 
- 00011331  0x00001b68 iadd  0x00000002 , 0x0000003f 
- 00011332  0x00001b69 fetcht  0x00000001 , 0x00000048 
- 00011333  0x00001b6a iadd  0x00000002 , 0x0000003f 
- 00011334  0x00001b6b nsetflag  0x00000034 , 0x0000000a , 0x00000011 
- 00011335  0x00001b6c fetch  0x00000001 , 0x000044ff 
- 00011336  0x00001b6d nsetflag  0x00000034 , 0x00000001 , 0x00000011 
- 00011337  0x00001b6e fetch  0x00000002 , 0x0000025d 
- 00011338  0x00001b6f fetcht  0x00000002 , 0x0000025f 
- 00011339  0x00001b70 iadd  0x00000002 , 0x0000003f 
- 00011340  0x00001b71 nsetflag  0x00000034 , 0x0000000d , 0x00000011 
- 00011341  0x00001b72 fetch  0x00000008 , 0x00004668 
- 00011342  0x00001b73 nsetflag  0x00000034 , 0x0000000f , 0x00000011 
- 00011343  0x00001b74 fetch  0x00000008 , 0x00004670 
- 00011344  0x00001b75 nsetflag  0x00000034 , 0x0000000e , 0x00000011 
- 00011345  0x00001b76 fetch  0x00000001 , 0x000041ce 
- 00011346  0x00001b77 nsetflag  0x00000034 , 0x00000008 , 0x00000011 
- 00011347  0x00001b78 fetch  0x00000001 , 0x00004092 
- 00011348  0x00001b79 compare  0x0000000a , 0x0000003f , 0x000000ff 
- 00011349  0x00001b7a call  0x00002c5b , 0x00000001 
- 00011350  0x00001b7b setarg  0xfffffff8 
- 00011351  0x00001b7c iand  0x00000011 , 0x00000011 
- 00011352  0x00001b7d copy  0x00000011 , 0x0000003f 
- 00011353  0x00001b7e store  0x00000002 , 0x00004152 
- 00011354  0x00001b7f rtn 
- 00011355  0x00001b82 hfetch  0x00000002 , 0x00008112 
- 00011356  0x00001b83 nsetflag  0x00000034 , 0x00000006 , 0x00000011 
- 00011357  0x00001b84 hfetch  0x00000002 , 0x0000810e 
- 00011358  0x00001b85 nsetflag  0x00000034 , 0x00000005 , 0x00000011 
- 00011359  0x00001b86 rtn 
- 00011360  0x00001b89 hfetch  0x00000004 , 0x00008138 
- 00011361  0x00001b8a set0  0x0000001b , 0x0000003f 
- 00011362  0x00001b8b hstore  0x00000004 , 0x0000804c 
- 00011363  0x00001b8c call  0x00002c21 
- 00011364  0x00001b8d branch  0x00002a8c 
- 00011365  0x00001b90 hfetch  0x00000004 , 0x0000813c 
- 00011366  0x00001b91 set0  0x00000014 , 0x0000003f 
- 00011367  0x00001b92 hstore  0x00000004 , 0x0000804c 
- 00011368  0x00001b93 branch  0x00002c23 
- 00011369  0x00001b96 fetch  0x00000002 , 0x00004150 
- 00011370  0x00001b97 bbit1  0x00000000 , 0x00002a8c 
- 00011371  0x00001b98 rtn 
- 00011372  0x00001b9a fetch  0x00000002 , 0x00004150 
- 00011373  0x00001b9b bbit1  0x00000001 , 0x00002a8c 
- 00011374  0x00001b9c rtn 
- 00011375  0x00001b9e fetch  0x00000002 , 0x00004150 
- 00011376  0x00001b9f bbit1  0x00000002 , 0x00002a8c 
- 00011377  0x00001ba0 rtn 
- 00011378  0x00001bde bpatch  0x000000b2 , 0x00004016 
- 00011379  0x00001bdf call  0x00002c7a 
- 00011380  0x00001be0 add  0x00000013 , 0x000000cd , 0x00000012 
- 00011381  0x00001be1 ifetch  0x00000001 , 0x00000012 
- 00011382  0x00001be3 rtneq  0x00000000 
- 00011383  0x00001be4 beq  0x00000001 , 0x00002d06 
- 00011384  0x00001be5 beq  0x00000002 , 0x00002c7f 
- 00011385  0x00001be6 rtn 
- 00011386  0x00001be9 fetcht  0x00000002 , 0x00004241 
- 00011387  0x00001bea copy  0x00000002 , 0x00000013 
- 00011388  0x00001beb rtn 
- 00011389  0x00001bee call  0x00002f3d 
- 00011390  0x00001bef branch  0x0000307d 
- 00011391  0x00001bf2 call  0x00003084 
- 00011392  0x00001bf3 call  0x0000305a 
- 00011393  0x00001bf4 call  0x0000305e 
- 00011394  0x00001bf5 branch  0x000030a2 
- 00011395  0x00001bfb call  0x00003231 
- 00011396  0x00001bfc setarg  0x0000004e 
- 00011397  0x00001bfd call  0x0000322f 
- 00011398  0x00001bfe call  0x000032ba 
- 00011399  0x00001c01 add  0x00000013 , 0x00000092 , 0x00000011 
- 00011400  0x00001c02 ifetch  0x00000004 , 0x00000011 
- 00011401  0x00001c03 branch  0x0000322c 
- 00011402  0x00001c06 call  0x00002c7a 
- 00011403  0x00001c07 add  0x00000013 , 0x00000091 , 0x00000012 
- 00011404  0x00001c08 ifetcht  0x00000001 , 0x00000012 
- 00011405  0x00001c0a call  0x00002c90 
- 00011406  0x00001c0b add  0x00000013 , 0x00000091 , 0x00000005 
- 00011407  0x00001c0d branch  0x00002e56 
- 00011408  0x00001c10 call  0x00002c94 
- 00011409  0x00001c11 increase  0x00000001 , 0x00000002 
- 00011410  0x00001c12 and_into  0x00000003 , 0x00000002 
- 00011411  0x00001c13 rtn 
- 00011412  0x00001c16 add  0x00000013 , 0x000000ae , 0x00000012 
- 00011413  0x00001c17 ifetch  0x00000001 , 0x00000012 
- 00011414  0x00001c19 and_into  0x00000003 , 0x0000003f 
- 00011415  0x00001c1a mul32  0x0000003f , 0x00000004 , 0x00000011 
- 00011416  0x00001c1b add  0x00000013 , 0x00000097 , 0x0000003f 
- 00011417  0x00001c1d iadd  0x00000011 , 0x0000003f 
- 00011418  0x00001c1e iadd  0x00000002 , 0x00000006 
- 00011419  0x00001c1f ifetch  0x00000001 , 0x00000006 
- 00011420  0x00001c21 branch  0x0000322f 
- 00011421  0x00001c24 call  0x0000326c 
- 00011422  0x00001c25 call  0x0000666a 
- 00011423  0x00001c26 setarg  0x000007e2 
- 00011424  0x00001c27 arg  0x00000aa2 , 0x00000011 
- 00011425  0x00001c28 arg  0x00000004 , 0x00000002 
- 00011426  0x00001c29 call  0x000066b3 
- 00011427  0x00001c2a call  0x0000666d 
- 00011428  0x00001c2b fetch  0x00000004 , 0x00000aa2 
- 00011429  0x00001c2c call  0x00003227 
- 00011430  0x00001c2e nrtn  0x00000034 
- 00011431  0x00001c2f fetch  0x00000004 , 0x000040a0 
- 00011432  0x00001c31 branch  0x00003227 
- 00011433  0x00001c34 call  0x00003241 
- 00011434  0x00001c36 setarg  0x00000000 
- 00011435  0x00001c37 call  0x0000323f 
- 00011436  0x00001c3a call  0x0000323a 
- 00011437  0x00001c3c and_into  0x00000007 , 0x0000003f 
- 00011438  0x00001c3e branch  0x0000323c 
- 00011439  0x00001c41 call  0x0000323a 
- 00011440  0x00001c43 set1  0x00000004 , 0x0000003f 
- 00011441  0x00001c44 call  0x0000323c 
- 00011442  0x00001c47 branch  0x00003235 
- 00011443  0x00001c4a call  0x0000325d 
- 00011444  0x00001c4c beq  0x00000001 , 0x00002cb7 
- 00011445  0x00001c4d beq  0x00000002 , 0x00002cbc 
- 00011446  0x00001c4e rtn 
- 00011447  0x00001c51 call  0x0000323e 
- 00011448  0x00001c54 add  0x00000013 , 0x000000d1 , 0x00000005 
- 00011449  0x00001c55 call  0x000032d6 
- 00011450  0x00001c57 call  0x00003242 
- 00011451  0x00001c59 branch  0x00002cac 
- 00011452  0x00001c5c call  0x0000325a 
- 00011453  0x00001c5e branch  0x00002cb8 
- 00011454  0x00001c61 add  0x00000013 , 0x0000008c , 0x00000011 
- 00011455  0x00001c62 ifetch  0x00000001 , 0x00000011 
- 00011456  0x00001c64 increase  0x00000001 , 0x0000003f 
- 00011457  0x00001c65 add  0x00000013 , 0x0000008c , 0x00000005 
- 00011458  0x00001c66 istore  0x00000001 , 0x00000005 
- 00011459  0x00001c68 beq  0x00000020 , 0x00002dd2 
- 00011460  0x00001c69 call  0x00003258 
- 00011461  0x00001c6b beq  0x00000001 , 0x00002cca 
- 00011462  0x00001c6c setarg  0x00000001 
- 00011463  0x00001c6d call  0x0000325b 
- 00011464  0x00001c70 call  0x00003258 
- 00011465  0x00001c72 bne  0x00000001 , 0x00002cac 
- 00011466  0x00001c74 add  0x00000013 , 0x000000d3 , 0x00000011 
- 00011467  0x00001c75 ifetch  0x00000001 , 0x00000011 
- 00011468  0x00001c77 increase  0x00000001 , 0x0000003f 
- 00011469  0x00001c78 call  0x00002cd5 
- 00011470  0x00001c7a beq  0x00000004 , 0x00002cd2 
- 00011471  0x00001c7b call  0x00002c8a 
- 00011472  0x00001c7c call  0x00002d04 
- 00011473  0x00001c7e branch  0x00002d8f 
- 00011474  0x00001c81 call  0x00002cd4 
- 00011475  0x00001c83 branch  0x00002cac 
- 00011476  0x00001c86 setarg  0x00000000 
- 00011477  0x00001c88 add  0x00000013 , 0x000000d3 , 0x00000005 
- 00011478  0x00001c89 branch  0x000032b4 
- 00011479  0x00001c8c call  0x0000323e 
- 00011480  0x00001c8f call  0x0000325a 
- 00011481  0x00001c91 call  0x00003241 
- 00011482  0x00001c93 branch  0x00002cac 
- 00011483  0x00001c96 call  0x0000325d 
- 00011484  0x00001c98 beq  0x00000003 , 0x00002cd8 
- 00011485  0x00001c99 call  0x0000323a 
- 00011486  0x00001c9b isolate0  0x00000004 , 0x0000003f 
- 00011487  0x00001c9c branch  0x00002ca9 , 0x00000001 
- 00011488  0x00001c9d call  0x0000325d 
- 00011489  0x00001c9f beq  0x00000001 , 0x00002cd7 
- 00011490  0x00001ca0 beq  0x00000002 , 0x00002cd8 
- 00011491  0x00001ca1 rtn 
- 00011492  0x00001ca4 call  0x00003253 
- 00011493  0x00001ca6 rtnne  0x000000ff 
- 00011494  0x00001ca7 call  0x00002ce9 
- 00011495  0x00001ca8 ncall  0x00002cf4 , 0x0000002c 
- 00011496  0x00001ca9 rtn 
- 00011497  0x00001cac disable  0x0000002c 
- 00011498  0x00001cad add  0x00000013 , 0x000000ce , 0x00000011 
- 00011499  0x00001cae ifetch  0x00000001 , 0x00000011 
- 00011500  0x00001cb0 rtnne  0x00000001 
- 00011501  0x00001cb1 add  0x00000013 , 0x000000d0 , 0x00000011 
- 00011502  0x00001cb2 ifetch  0x00000001 , 0x00000011 
- 00011503  0x00001cb4 rtnne  0x00000000 
- 00011504  0x00001cb5 setarg  0x00000001 
- 00011505  0x00001cb6 call  0x00002cfd 
- 00011506  0x00001cb8 call  0x00003237 
- 00011507  0x00001cba branch  0x00007feb 
- 00011508  0x00001cbd add  0x00000013 , 0x000000d0 , 0x00000011 
- 00011509  0x00001cbe ifetch  0x00000001 , 0x00000011 
- 00011510  0x00001cc0 branch  0x00002cff , 0x00000034 
- 00011511  0x00001cc1 increase  0xffffffff , 0x0000003f 
- 00011512  0x00001cc2 call  0x0000323f 
- 00011513  0x00001cc4 setarg  0x00000002 
- 00011514  0x00001cc5 call  0x00002cfd 
- 00011515  0x00001cc7 call  0x00002c8a 
- 00011516  0x00001cc9 branch  0x00003237 
- 00011517  0x00001ccc add  0x00000013 , 0x000000d2 , 0x00000005 
- 00011518  0x00001ccd branch  0x000032b4 
- 00011519  0x00001cd1 setarg  0x00000003 
- 00011520  0x00001cd2 call  0x00002cfd 
- 00011521  0x00001cd4 call  0x00003258 
- 00011522  0x00001cd6 nbranch  0x00002cc8 , 0x00000034 
- 00011523  0x00001cd7 call  0x00002c8a 
- 00011524  0x00001cda setarg  0x00000002 
- 00011525  0x00001cdb branch  0x00003238 
- 00011526  0x00001cde rtnmark0  0x00000026 
- 00011527  0x00001cdf set1  0x00000027 , 0x00000000 
- 00011528  0x00001ce0 bpatch  0x000000b3 , 0x00004016 
- 00011529  0x00001ce1 add  0x00000013 , 0x0000008e , 0x00000011 
- 00011530  0x00001ce2 ifetch  0x00000001 , 0x00000011 
- 00011531  0x00001ce4 beq  0x00000001 , 0x00002d0f 
- 00011532  0x00001ce5 call  0x0000306a 
- 00011533  0x00001ce6 nbranch  0x00002d16 , 0x00000028 
- 00011534  0x00001ce7 call  0x00002d1b 
- 00011535  0x00001ce9 add  0x00000013 , 0x0000008e , 0x00000005 
- 00011536  0x00001cea call  0x000032d6 
- 00011537  0x00001cec call  0x00002d2c 
- 00011538  0x00001ced nbranch  0x00002d7d , 0x00000028 
- 00011539  0x00001cee call  0x00002ce4 
- 00011540  0x00001cf0 call  0x00002d8f 
- 00011541  0x00001cf1 call  0x00002e7a 
- 00011542  0x00001cf3 set0  0x00000027 , 0x00000000 
- 00011543  0x00001cf4 rtn 
- 00011544  0x00001cf7 rtn  0x00000005 
- 00011545  0x00001cf8 set1  0x0000001c , 0x0000003f 
- 00011546  0x00001cf9 rtn 
- 00011547  0x00001cfc add  0x00000013 , 0x000000c2 , 0x00000011 
- 00011548  0x00001cfd ifetch  0x00000001 , 0x00000011 
- 00011549  0x00001cff increase  0x00000001 , 0x0000003f 
- 00011550  0x00001d00 add  0x00000013 , 0x000000c2 , 0x00000005 
- 00011551  0x00001d01 istore  0x00000001 , 0x00000005 
- 00011552  0x00001d03 beq  0x00000004 , 0x00002d23 
- 00011553  0x00001d04 beq  0x00000005 , 0x00002d27 
- 00011554  0x00001d05 rtn 
- 00011555  0x00001d07 add  0x00000013 , 0x000000ad , 0x00000011 
- 00011556  0x00001d08 ifetch  0x00000001 , 0x00000011 
- 00011557  0x00001d0c add  0x00000013 , 0x000000ab , 0x00000005 
- 00011558  0x00001d0d branch  0x000032b4 
- 00011559  0x00001d10 add  0x00000013 , 0x000000c2 , 0x00000005 
- 00011560  0x00001d11 call  0x000032d6 
- 00011561  0x00001d13 add  0x00000013 , 0x000000ac , 0x00000011 
- 00011562  0x00001d14 ifetch  0x00000001 , 0x00000011 
- 00011563  0x00001d16 branch  0x00002d25 
- 00011564  0x00001d19 call  0x00003253 
- 00011565  0x00001d1b bne  0x000000ff , 0x00002eb1 
- 00011566  0x00001d1c bpatch  0x000000b4 , 0x00004016 
- 00011567  0x00001d1d call  0x00002d3a 
- 00011568  0x00001d1e nbranch  0x00002d36 , 0x00000028 
- 00011569  0x00001d1f call  0x00002d53 
- 00011570  0x00001d20 call  0x00002e71 
- 00011571  0x00001d23 setarg  0x00000001 
- 00011572  0x00001d25 add  0x00000013 , 0x0000008b , 0x00000005 
- 00011573  0x00001d26 branch  0x000032b4 
- 00011574  0x00001d29 add  0x00000013 , 0x0000008b , 0x00000011 
- 00011575  0x00001d2a ifetch  0x00000001 , 0x00000011 
- 00011576  0x00001d2c beq  0x00000001 , 0x00007fe7 
- 00011577  0x00001d2d rtn 
- 00011578  0x00001d31 add  0x00000013 , 0x000000d8 , 0x00000002 
- 00011579  0x00001d32 ifetch  0x00000002 , 0x00000002 
- 00011580  0x00001d34 call  0x00007f9c 
- 00011581  0x00001d35 nrtn  0x00000028 
- 00011582  0x00001d36 copy  0x00000011 , 0x0000003f 
- 00011583  0x00001d37 store  0x00000001 , 0x00000aae 
- 00011584  0x00001d38 add  0x00000013 , 0x000000b2 , 0x00000005 
- 00011585  0x00001d39 call  0x000032d6 
- 00011586  0x00001d3b call  0x00002cac 
- 00011587  0x00001d3c store  0x00000001 , 0x0000119e 
- 00011588  0x00001d3d fetch  0x00000001 , 0x00000aae 
- 00011589  0x00001d3e copy  0x0000003f , 0x00000011 
- 00011590  0x00001d3f add  0x00000011 , 0x00000001 , 0x00000002 
- 00011591  0x00001d40 arg  0x0000119f , 0x00000005 
- 00011592  0x00001d41 copy  0x00000011 , 0x00000039 
- 00011593  0x00001d42 copy  0x00000012 , 0x00000006 
- 00011594  0x00001d43 call  0x00007f01 
- 00011595  0x00001d44 arg  0x0000119e , 0x00000011 
- 00011596  0x00001d46 rtnmark0  0x00000027 
- 00011597  0x00001d47 add  0x00000013 , 0x00000086 , 0x00000005 
- 00011598  0x00001d48 istoret  0x00000001 , 0x00000005 
- 00011599  0x00001d4a copy  0x00000002 , 0x00000039 
- 00011600  0x00001d4b add  0x00000013 , 0x00000022 , 0x00000005 
- 00011601  0x00001d4d copy  0x00000011 , 0x00000006 
- 00011602  0x00001d4e branch  0x00007f01 
- 00011603  0x00001d52 add  0x00000013 , 0x00000086 , 0x00000011 
- 00011604  0x00001d53 ifetch  0x00000001 , 0x00000011 
- 00011605  0x00001d55 increase  0x00000002 , 0x0000003f 
- 00011606  0x00001d56 add  0x00000013 , 0x00000088 , 0x00000005 
- 00011607  0x00001d57 istore  0x00000001 , 0x00000005 
- 00011608  0x00001d5a call  0x0000323a 
- 00011609  0x00001d5c call  0x00003235 
- 00011610  0x00001d5f add  0x00000013 , 0x00000086 , 0x00000011 
- 00011611  0x00001d60 ifetch  0x00000001 , 0x00000011 
- 00011612  0x00001d62 lshift3  0x0000003f , 0x0000003f 
- 00011613  0x00001d63 add  0x00000013 , 0x00000085 , 0x00000011 
- 00011614  0x00001d64 ifetcht  0x00000001 , 0x00000011 
- 00011615  0x00001d66 and  0x00000002 , 0x00000003 , 0x00000002 
- 00011616  0x00001d67 lshift  0x00000002 , 0x00000002 
- 00011617  0x00001d68 ior  0x00000002 , 0x0000003f 
- 00011618  0x00001d69 add  0x00000013 , 0x000000c3 , 0x00000011 
- 00011619  0x00001d6a ifetcht  0x00000001 , 0x00000011 
- 00011620  0x00001d6c iadd  0x00000002 , 0x0000003f 
- 00011621  0x00001d6d istore  0x00000001 , 0x00000005 
- 00011622  0x00001d6f add  0x00000013 , 0x00000086 , 0x00000011 
- 00011623  0x00001d70 ifetch  0x00000001 , 0x00000011 
- 00011624  0x00001d72 iforce  0x00000039 
- 00011625  0x00001d73 add  0x00000013 , 0x00000022 , 0x00000006 
- 00011626  0x00001d75 branch  0x00007f01 
- 00011627  0x00001d78 call  0x0000324f 
- 00011628  0x00001d7a call  0x0000325a 
- 00011629  0x00001d7c call  0x00002e6d 
- 00011630  0x00001d7d call  0x00002cac 
- 00011631  0x00001d7e store  0x00000001 , 0x0000119e 
- 00011632  0x00001d7f call  0x00002d77 
- 00011633  0x00001d80 call  0x0000323a 
- 00011634  0x00001d82 set1  0x00000003 , 0x0000003f 
- 00011635  0x00001d83 call  0x0000323c 
- 00011636  0x00001d85 call  0x00002d53 
- 00011637  0x00001d86 call  0x00002d33 
- 00011638  0x00001d87 branch  0x00002d14 
- 00011639  0x00001d8a store  0x00000001 , 0x0000119f 
- 00011640  0x00001d8b call  0x00003224 
- 00011641  0x00001d8d store  0x00000004 , 0x000011a0 
- 00011642  0x00001d8e arg  0x00000006 , 0x00000002 
- 00011643  0x00001d8f arg  0x0000119e , 0x00000011 
- 00011644  0x00001d90 branch  0x00002d4c 
- 00011645  0x00001d93 add  0x00000013 , 0x000000b2 , 0x00000011 
- 00011646  0x00001d94 ifetch  0x00000001 , 0x00000011 
- 00011647  0x00001d96 branch  0x00002d6b , 0x00000034 
- 00011648  0x00001d99 add  0x00000013 , 0x000000da , 0x00000011 
- 00011649  0x00001d9a ifetch  0x00000002 , 0x00000011 
- 00011650  0x00001d9c branch  0x00007f9c 
- 00011651  0x00001d9f call  0x00002c7a 
- 00011652  0x00001da1 call  0x00002afa 
- 00011653  0x00001da2 fetch  0x00000003 , 0x0000416f 
- 00011654  0x00001da3 rtn  0x00000034 
- 00011655  0x00001da4 add  0x00000013 , 0x000000dc , 0x00000002 
- 00011656  0x00001da5 ifetch  0x00000002 , 0x00000002 
- 00011657  0x00001da7 call  0x00007f9c 
- 00011658  0x00001da8 add  0x00000013 , 0x000000b6 , 0x00000002 
- 00011659  0x00001da9 ifetch  0x00000008 , 0x00000002 
- 00011660  0x00001daa call  0x00007f49 
- 00011661  0x00001dab storet  0x00000004 , 0x0000415b 
- 00011662  0x00001dac branch  0x00002b2a 
- 00011663  0x00001daf call  0x00002c7a 
- 00011664  0x00001db0 add  0x00000013 , 0x0000008f , 0x00000005 
- 00011665  0x00001db1 call  0x000032d6 
- 00011666  0x00001db4 call  0x00002da4 
- 00011667  0x00001db5 nbranch  0x00002dae , 0x00000018 
- 00011668  0x00001db6 nbranch  0x00002dae , 0x0000002f 
- 00011669  0x00001db7 call  0x00002dd6 
- 00011670  0x00001db8 call  0x00002e75 
- 00011671  0x00001dba call  0x00002c7a 
- 00011672  0x00001dbb add  0x00000013 , 0x00000085 , 0x00000011 
- 00011673  0x00001dbc ifetch  0x00000001 , 0x00000011 
- 00011674  0x00001dbe increase  0x00000001 , 0x0000003f 
- 00011675  0x00001dbf call  0x00003232 
- 00011676  0x00001dc1 call  0x00003253 
- 00011677  0x00001dc3 bne  0x000000ff , 0x00002ed0 
- 00011678  0x00001dc4 call  0x00002cdb 
- 00011679  0x00001dc6 setarg  0x00000000 
- 00011680  0x00001dc7 add  0x00000013 , 0x0000008c , 0x00000005 
- 00011681  0x00001dc8 istore  0x00000002 , 0x00000005 
- 00011682  0x00001dcc setarg  0x00000000 
- 00011683  0x00001dcd branch  0x00002d34 
- 00011684  0x00001dd1 disable  0x0000002f 
- 00011685  0x00001dd2 call  0x00002df7 
- 00011686  0x00001dd3 call  0x00002c7a 
- 00011687  0x00001dd4 add  0x00000013 , 0x000000c3 , 0x00000011 
- 00011688  0x00001dd5 ifetch  0x00000001 , 0x00000011 
- 00011689  0x00001dd7 beq  0x00000001 , 0x00002dac 
- 00011690  0x00001dd8 call  0x00002e11 
- 00011691  0x00001dd9 branch  0x00002e45 
- 00011692  0x00001ddb call  0x00002e45 
- 00011693  0x00001ddc branch  0x00002d97 
- 00011694  0x00001de0 bpatch  0x000000b5 , 0x00004016 
- 00011695  0x00001de1 add  0x00000013 , 0x0000008d , 0x00000011 
- 00011696  0x00001de2 ifetch  0x00000001 , 0x00000011 
- 00011697  0x00001de4 increase  0x00000001 , 0x0000003f 
- 00011698  0x00001de5 add  0x00000013 , 0x0000008d , 0x00000005 
- 00011699  0x00001de6 istore  0x00000001 , 0x00000005 
- 00011700  0x00001de8 call  0x00003253 
- 00011701  0x00001dea bne  0x000000ff , 0x00002dcc 
- 00011702  0x00001deb add  0x00000013 , 0x0000008f , 0x00000011 
- 00011703  0x00001dec ifetcht  0x00000001 , 0x00000011 
- 00011704  0x00001dee increase  0x00000001 , 0x00000002 
- 00011705  0x00001def add  0x00000013 , 0x0000008f , 0x00000005 
- 00011706  0x00001df0 istoret  0x00000001 , 0x00000005 
- 00011707  0x00001df2 add  0x00000013 , 0x000000cc , 0x00000011 
- 00011708  0x00001df3 ifetch  0x00000001 , 0x00000011 
- 00011709  0x00001df5 isub  0x00000002 , 0x0000003f 
- 00011710  0x00001df6 nbranch  0x00002d92 , 0x00000034 
- 00011711  0x00001df7 bpatch  0x000000b6 , 0x00004016 
- 00011712  0x00001df8 call  0x0000325d 
- 00011713  0x00001dfa beq  0x00000003 , 0x00002cbe 
- 00011714  0x00001dfb add  0x00000013 , 0x000000d1 , 0x00000011 
- 00011715  0x00001dfc ifetch  0x00000001 , 0x00000011 
- 00011716  0x00001dfe increase  0x00000001 , 0x0000003f 
- 00011717  0x00001dff add  0x00000013 , 0x000000d1 , 0x00000005 
- 00011718  0x00001e00 istore  0x00000001 , 0x00000005 
- 00011719  0x00001e02 beq  0x00000002 , 0x00002cb3 
- 00011720  0x00001e03 call  0x00002caf 
- 00011721  0x00001e04 setarg  0x00000001 
- 00011722  0x00001e05 call  0x00003238 
- 00011723  0x00001e07 branch  0x00002d8f 
- 00011724  0x00001e0a add  0x00000013 , 0x0000008d , 0x00000011 
- 00011725  0x00001e0b ifetch  0x00000001 , 0x00000011 
- 00011726  0x00001e0d rtnne  0x000000ff 
- 00011727  0x00001e0e add  0x00000013 , 0x0000008d , 0x00000005 
- 00011728  0x00001e0f call  0x000032d6 
- 00011729  0x00001e11 branch  0x00002dd4 
- 00011730  0x00001e14 add  0x00000013 , 0x0000008c , 0x00000005 
- 00011731  0x00001e15 call  0x000032d6 
- 00011732  0x00001e18 jam  0x0000003a , 0x00000a99 
- 00011733  0x00001e19 branch  0x00007d86 
- 00011734  0x00001e1c call  0x00002dde 
- 00011735  0x00001e1d add  0x00000013 , 0x00000084 , 0x00000011 
- 00011736  0x00001e1e ifetch  0x00000001 , 0x00000011 
- 00011737  0x00001e20 rtn  0x00000034 
- 00011738  0x00001e21 iforce  0x00000039 
- 00011739  0x00001e22 add  0x00000013 , 0x00000002 , 0x00000006 
- 00011740  0x00001e24 add  0x00000013 , 0x00000064 , 0x00000005 
- 00011741  0x00001e26 branch  0x00007f01 
- 00011742  0x00001e2b call  0x0000325f 
- 00011743  0x00001e2d rshift3  0x0000003f , 0x0000003f 
- 00011744  0x00001e2e add  0x00000013 , 0x00000084 , 0x00000005 
- 00011745  0x00001e2f istore  0x00000001 , 0x00000005 
- 00011746  0x00001e32 increase  0x00000001 , 0x0000003f 
- 00011747  0x00001e33 add  0x00000013 , 0x00000001 , 0x00000006 
- 00011748  0x00001e35 iadd  0x00000006 , 0x00000006 
- 00011749  0x00001e36 ifetch  0x00000003 , 0x00000006 
- 00011750  0x00001e37 add  0x00000013 , 0x000000c4 , 0x00000005 
- 00011751  0x00001e38 istore  0x00000003 , 0x00000005 
- 00011752  0x00001e3b call  0x0000325f 
- 00011753  0x00001e3d rshift  0x0000003f , 0x0000003f 
- 00011754  0x00001e3e and  0x0000003f , 0x00000003 , 0x0000003f 
- 00011755  0x00001e3f add  0x00000013 , 0x000000ca , 0x00000005 
- 00011756  0x00001e40 istore  0x00000001 , 0x00000005 
- 00011757  0x00001e42 rtn 
- 00011758  0x00001e45 disable  0x00000009 
- 00011759  0x00001e46 disable  0x00000007 
- 00011760  0x00001e47 setarg  0x00555555 
- 00011761  0x00001e48 iforce  0x0000000f 
- 00011762  0x00001e49 rtn 
- 00011763  0x00001e4c call  0x00002918 
- 00011764  0x00001e4d add  0x00000013 , 0x00000090 , 0x00000011 
- 00011765  0x00001e4e ifetcht  0x00000001 , 0x00000011 
- 00011766  0x00001e50 branch  0x00002933 
- 00011767  0x00001e53 call  0x00002dee 
- 00011768  0x00001e54 call  0x00002df3 
- 00011769  0x00001e55 set1  0x00000000 , 0x00000015 
- 00011770  0x00001e56 enable  0x0000001d 
- 00011771  0x00001e57 enable  0x00000020 
- 00011772  0x00001e58 disable  0x00000021 
- 00011773  0x00001e59 call  0x000053c4 
- 00011774  0x00001e5a call  0x0000322a 
- 00011775  0x00001e5c iforce  0x00000009 
- 00011776  0x00001e5d inject  0x00000003 , 0x00000020 
- 00011777  0x00001e5e enable  0x00000009 
- 00011778  0x00001e5f add  0x00000013 , 0x00000088 , 0x00000011 
- 00011779  0x00001e60 ifetch  0x00000001 , 0x00000011 
- 00011780  0x00001e62 iforce  0x00000039 
- 00011781  0x00001e63 add  0x00000013 , 0x00000042 , 0x00000006 
- 00011782  0x00001e66 ifetch  0x00000001 , 0x00000006 
- 00011783  0x00001e67 inject  0x00000003 , 0x00000008 
- 00011784  0x00001e68 loop  0x00002e06 
- 00011785  0x00001e69 enable  0x00000008 
- 00011786  0x00001e6a inject  0x00000003 , 0x00000018 
- 00011787  0x00001e6b disable  0x00000008 
- 00011788  0x00001e6c until  0x0000003e , 0x00000027 
- 00011789  0x00001e6d bpatch  0x000000b7 , 0x00004016 
- 00011790  0x00001e6e nop  0x00000064 
- 00011791  0x00001e6f disable  0x0000001d 
- 00011792  0x00001e70 rtn 
- 00011793  0x00001e73 disable  0x0000002f 
- 00011794  0x00001e74 force  0x00000000 , 0x00000015 
- 00011795  0x00001e75 add  0x00000013 , 0x00000090 , 0x00000011 
- 00011796  0x00001e76 ifetcht  0x00000001 , 0x00000011 
- 00011797  0x00001e78 call  0x0000291f 
- 00011798  0x00001e79 call  0x00002924 
- 00011799  0x00001e7b call  0x00002dee 
- 00011800  0x00001e7c enable  0x0000000d 
- 00011801  0x00001e7d enable  0x00000021 
- 00011802  0x00001e7e disable  0x00000020 
- 00011803  0x00001e7f call  0x000053c4 
- 00011804  0x00001e80 call  0x0000322a 
- 00011805  0x00001e82 iforce  0x00000009 
- 00011806  0x00001e83 enable  0x00000010 
- 00011807  0x00001e84 add  0x00000013 , 0x00000089 , 0x00000011 
- 00011808  0x00001e85 ifetch  0x00000002 , 0x00000011 
- 00011809  0x00001e87 iforce  0x0000001b 
- 00011810  0x00001e88 correlate  0x0000003e , 0x00000003 
- 00011811  0x00001e89 nbranch  0x00002e4d , 0x00000018 
- 00011812  0x00001e8a enable  0x00000009 
- 00011813  0x00001e8b parse  0x00000003 , 0x00000000 , 0x00000008 
- 00011814  0x00001e8c rshift3  0x0000000c , 0x0000003f 
- 00011815  0x00001e8d add  0x00000013 , 0x00000000 , 0x00000005 
- 00011816  0x00001e8e istore  0x00000001 , 0x00000005 
- 00011817  0x00001e90 add  0x00000013 , 0x000000cd , 0x00000011 
- 00011818  0x00001e91 ifetch  0x00000001 , 0x00000011 
- 00011819  0x00001e93 beq  0x00000002 , 0x00002e33 
- 00011820  0x00001e94 bpatch  0x000000b8 , 0x00004017 
- 00011821  0x00001e95 add  0x00000013 , 0x00000000 , 0x00000011 
- 00011822  0x00001e96 ifetch  0x00000001 , 0x00000011 
- 00011823  0x00001e98 add  0x00000013 , 0x00000087 , 0x00000011 
- 00011824  0x00001e99 ifetcht  0x00000001 , 0x00000011 
- 00011825  0x00001e9b icompare  0x00000007 , 0x00000002 
- 00011826  0x00001e9c nbranch  0x00002e45 , 0x00000001 
- 00011827  0x00001e9e parse  0x00000003 , 0x00000000 , 0x00000008 
- 00011828  0x00001e9f rshift3  0x0000000c , 0x0000003f 
- 00011829  0x00001ea0 istore  0x00000001 , 0x00000005 
- 00011830  0x00001ea1 rshift3  0x0000003f , 0x0000003f 
- 00011831  0x00001ea2 and  0x0000003f , 0x0000001f , 0x00000039 
- 00011832  0x00001ea3 branch  0x00002e3d , 0x00000005 
- 00011833  0x00001ea5 parse  0x00000003 , 0x00000000 , 0x00000008 
- 00011834  0x00001ea6 rshift3  0x0000000c , 0x0000003f 
- 00011835  0x00001ea7 istore  0x00000001 , 0x00000005 
- 00011836  0x00001ea8 loop  0x00002e39 
- 00011837  0x00001eaa parse  0x00000003 , 0x00000000 , 0x00000018 
- 00011838  0x00001eab rshift32  0x0000003f , 0x0000003f 
- 00011839  0x00001eac rshift16  0x0000003f , 0x0000003f 
- 00011840  0x00001ead istore  0x00000003 , 0x00000005 
- 00011841  0x00001eae branch  0x00002e45 , 0x00000006 
- 00011842  0x00001eaf enable  0x0000002f 
- 00011843  0x00001eb0 disable  0x0000000d 
- 00011844  0x00001eb1 rtn 
- 00011845  0x00001eb5 disable  0x0000001d 
- 00011846  0x00001eb6 disable  0x0000000d 
- 00011847  0x00001eb7 disable  0x00000009 
- 00011848  0x00001eb8 disable  0x00000007 
- 00011849  0x00001eb9 branch  0x000028f9 , 0x00000021 
- 00011850  0x00001eba until  0x0000003e , 0x00000027 
- 00011851  0x00001ebb nop  0x00000064 
- 00011852  0x00001ebc branch  0x000028f9 
- 00011853  0x00001ebf call  0x00002e4f 
- 00011854  0x00001ec0 branch  0x00002e45 
- 00011855  0x00001ec3 call  0x000029bb 
- 00011856  0x00001ec4 rtn  0x00000034 
- 00011857  0x00001ec5 add  0x00000013 , 0x000000ea , 0x00000011 
- 00011858  0x00001ec6 ifetcht  0x00000001 , 0x00000011 
- 00011859  0x00001ec8 arg  0x00000d9e , 0x00000011 
- 00011860  0x00001eca call  0x00002e58 
- 00011861  0x00001ecb add  0x00000013 , 0x000000ea , 0x00000005 
- 00011862  0x00001ece istoret  0x00000001 , 0x00000005 
- 00011863  0x00001ecf rtn 
- 00011864  0x00001ed2 arg  0x000000ff , 0x00000012 
- 00011865  0x00001ed3 branch  0x00002e5a 
- 00011866  0x00001ee6 copy  0x00000011 , 0x0000003f 
- 00011867  0x00001ee7 iadd  0x00000002 , 0x00000005 
- 00011868  0x00001ee8 fetch  0x00000001 , 0x00000018 
- 00011869  0x00001ee9 istore  0x00000001 , 0x00000005 
- 00011870  0x00001eea increase  0x00000001 , 0x00000002 
- 00011871  0x00001eeb copy  0x00000012 , 0x0000003f 
- 00011872  0x00001eec iand_into  0x00000002 
- 00011873  0x00001eed rtn 
- 00011874  0x00001ef0 arg  0x00000000 , 0x00000002 
- 00011875  0x00001ef1 copy  0x00000011 , 0x00000006 
- 00011876  0x00001ef3 ifetch  0x00000001 , 0x00000006 
- 00011877  0x00001ef4 iadd  0x00000002 , 0x00000002 
- 00011878  0x00001ef5 loop  0x00002e64 
- 00011879  0x00001ef6 rshift8  0x00000002 , 0x00000002 
- 00011880  0x00001ef7 rtn 
- 00011881  0x00001efa call  0x00002c7a 
- 00011882  0x00001efb call  0x00002e9f 
- 00011883  0x00001efc setarg  0x00000001 
- 00011884  0x00001efd call  0x00003272 
- 00011885  0x00001f00 setarg  0x00000000 
- 00011886  0x00001f01 call  0x00002e73 
- 00011887  0x00001f03 istore  0x00000001 , 0x00000005 
- 00011888  0x00001f05 rtn 
- 00011889  0x00001f08 call  0x00003270 
- 00011890  0x00001f0a increase  0x00000001 , 0x0000003f 
- 00011891  0x00001f0d add  0x00000013 , 0x000000fc , 0x00000005 
- 00011892  0x00001f0e branch  0x000032b4 
- 00011893  0x00001f13 add  0x00000013 , 0x000000fd , 0x00000011 
- 00011894  0x00001f14 ifetch  0x00000001 , 0x00000011 
- 00011895  0x00001f15 increase  0x00000001 , 0x0000003f 
- 00011896  0x00001f16 add  0x00000013 , 0x000000fd , 0x00000005 
- 00011897  0x00001f17 branch  0x000032b4 
- 00011898  0x00001f1a bpatch  0x000000b9 , 0x00004017 
- 00011899  0x00001f1b call  0x00003270 
- 00011900  0x00001f1d sub  0x0000003f , 0x0000007c , 0x0000003e 
- 00011901  0x00001f1e rtn  0x00000002 
- 00011902  0x00001f1f add  0x00000013 , 0x000000fd , 0x00000011 
- 00011903  0x00001f20 ifetcht  0x00000001 , 0x00000011 
- 00011904  0x00001f22 isub  0x00000002 , 0x00000002 
- 00011905  0x00001f23 call  0x00002e6d 
- 00011906  0x00001f24 setarg  0x00000102 
- 00011907  0x00001f25 iadd  0x00000013 , 0x00000011 
- 00011908  0x00001f26 ifetch  0x00000001 , 0x00000011 
- 00011909  0x00001f28 isub  0x00000002 , 0x0000003e 
- 00011910  0x00001f29 nbranch  0x00002e8d , 0x00000002 
- 00011911  0x00001f2a setarg  0x00000103 
- 00011912  0x00001f2b iadd  0x00000013 , 0x00000011 
- 00011913  0x00001f2c ifetch  0x00000001 , 0x00000011 
- 00011914  0x00001f2e isub  0x00000002 , 0x0000003e 
- 00011915  0x00001f2f branch  0x00002e99 , 0x00000002 
- 00011916  0x00001f30 rtn 
- 00011917  0x00001f33 add  0x00000013 , 0x000000fe , 0x00000011 
- 00011918  0x00001f34 ifetch  0x00000001 , 0x00000011 
- 00011919  0x00001f36 beq  0x00000002 , 0x00002e93 
- 00011920  0x00001f37 increase  0x00000001 , 0x0000003f 
- 00011921  0x00001f38 call  0x00003272 
- 00011922  0x00001f3a beq  0x00000001 , 0x00002e9f 
- 00011923  0x00001f3c setarg  0x0000000a 
- 00011924  0x00001f3d call  0x000032b0 
- 00011925  0x00001f3f setarg  0x00000000 
- 00011926  0x00001f40 call  0x000032b2 
- 00011927  0x00001f43 add  0x00000013 , 0x000000ff , 0x00000011 
- 00011928  0x00001f45 branch  0x00002ea5 
- 00011929  0x00001f48 add  0x00000013 , 0x000000fe , 0x00000011 
- 00011930  0x00001f49 ifetch  0x00000001 , 0x00000011 
- 00011931  0x00001f4b beq  0x00000000 , 0x00002ea7 
- 00011932  0x00001f4c increase  0xffffffff , 0x0000003f 
- 00011933  0x00001f4d call  0x00003272 
- 00011934  0x00001f4f beq  0x00000000 , 0x00002ea7 
- 00011935  0x00001f54 setarg  0x00000005 
- 00011936  0x00001f55 call  0x000032b0 
- 00011937  0x00001f57 setarg  0x00000000 
- 00011938  0x00001f58 call  0x000032b2 
- 00011939  0x00001f5b setarg  0x00000100 
- 00011940  0x00001f5d iadd  0x00000013 , 0x00000011 
- 00011941  0x00001f5f ifetch  0x00000001 , 0x00000011 
- 00011942  0x00001f61 branch  0x0000326a 
- 00011943  0x00001f66 setarg  0x00000002 
- 00011944  0x00001f67 call  0x000032b0 
- 00011945  0x00001f69 setarg  0x00000000 
- 00011946  0x00001f6a call  0x000032b2 
- 00011947  0x00001f6d setarg  0x00000101 
- 00011948  0x00001f6f branch  0x00002ea4 
- 00011949  0x00001f7e set1  0x00000026 , 0x00000000 
- 00011950  0x00001f7f call  0x00002c83 
- 00011951  0x00001f82 setarg  0x00000001 
- 00011952  0x00001f83 branch  0x00003256 
- 00011953  0x00001f86 add  0x00000013 , 0x0000008b , 0x00000011 
- 00011954  0x00001f87 ifetch  0x00000001 , 0x00000011 
- 00011955  0x00001f89 beq  0x00000001 , 0x00007fe7 
- 00011956  0x00001f8a call  0x00003253 
- 00011957  0x00001f8c beq  0x00000001 , 0x00002eb9 
- 00011958  0x00001f8d beq  0x00000002 , 0x00002ebd 
- 00011959  0x00001f8e beq  0x00000003 , 0x00002ec1 
- 00011960  0x00001f8f branch  0x00002a8c 
- 00011961  0x00001f92 setarg  0x00000011 
- 00011962  0x00001f93 call  0x00003256 
- 00011963  0x00001f95 jam  0x000000aa , 0x0000119e 
- 00011964  0x00001f96 branch  0x00002ec4 
- 00011965  0x00001f98 setarg  0x00000012 
- 00011966  0x00001f99 call  0x00003256 
- 00011967  0x00001f9b jam  0x00000055 , 0x0000119e 
- 00011968  0x00001f9c branch  0x00002ec4 
- 00011969  0x00001f9e setarg  0x00000013 
- 00011970  0x00001f9f call  0x00003256 
- 00011971  0x00001fa1 jam  0x00000022 , 0x0000119e 
- 00011972  0x00001fa3 call  0x0000323a 
- 00011973  0x00001fa5 and_into  0x00000007 , 0x0000003f 
- 00011974  0x00001fa6 store  0x00000001 , 0x0000119f 
- 00011975  0x00001fa7 call  0x00003224 
- 00011976  0x00001fa9 store  0x00000004 , 0x000011a0 
- 00011977  0x00001fab jam  0x00000000 , 0x000011a4 
- 00011978  0x00001fac arg  0x0000119e , 0x00000011 
- 00011979  0x00001fad arg  0x00000007 , 0x00000002 
- 00011980  0x00001fae call  0x00002d4c 
- 00011981  0x00001faf call  0x00002d53 
- 00011982  0x00001fb0 call  0x00002d33 
- 00011983  0x00001fb1 branch  0x00007fe7 
- 00011984  0x00001fb4 call  0x00003253 
- 00011985  0x00001fb6 rtneq  0x000000ff 
- 00011986  0x00001fb7 beq  0x00000011 , 0x00002ed6 
- 00011987  0x00001fb8 beq  0x00000012 , 0x00002ed9 
- 00011988  0x00001fb9 beq  0x00000013 , 0x00002edc 
- 00011989  0x00001fba rtn 
- 00011990  0x00001fbd setarg  0x00000002 
- 00011991  0x00001fbe call  0x00003256 
- 00011992  0x00001fc0 branch  0x00002d9f 
- 00011993  0x00001fc2 setarg  0x00000003 
- 00011994  0x00001fc3 call  0x00003256 
- 00011995  0x00001fc5 branch  0x00002d9f 
- 00011996  0x00001fc7 setarg  0x000000ff 
- 00011997  0x00001fc8 call  0x00003256 
- 00011998  0x00001fca jam  0x00000039 , 0x00000a99 
- 00011999  0x00001fcb call  0x00007d86 
- 00012000  0x00001fcc add  0x00000013 , 0x00000066 , 0x00000011 
- 00012001  0x00001fcd ifetch  0x00000004 , 0x00000011 
- 00012002  0x00001fcf call  0x0000322c 
- 00012003  0x00001fd1 branch  0x00002d9f 
- 00012004  0x00001fd4 set0  0x00000026 , 0x00000000 
- 00012005  0x00001fd5 call  0x00002f08 
- 00012006  0x00001fd6 call  0x00002f22 
- 00012007  0x00001fd8 call  0x00003263 
- 00012008  0x00001fda nop  0x000007d0 
- 00012009  0x00001fdb call  0x00003261 
- 00012010  0x00001fdc beq  0x000000ff , 0x00002dd4 
- 00012011  0x00001fdd call  0x00002da4 
- 00012012  0x00001fde nbranch  0x00002efa , 0x00000018 
- 00012013  0x00001fdf nbranch  0x00002efa , 0x0000002f 
- 00012014  0x00001fe0 call  0x00002dd6 
- 00012015  0x00001fe1 call  0x00002c7a 
- 00012016  0x00001fe2 add  0x00000013 , 0x00000092 , 0x00000011 
- 00012017  0x00001fe3 ifetcht  0x00000004 , 0x00000011 
- 00012018  0x00001fe4 call  0x000030be 
- 00012019  0x00001fe5 branch  0x00002ead , 0x00000005 
- 00012020  0x00001fe6 call  0x00002c7a 
- 00012021  0x00001fe7 add  0x00000013 , 0x00000066 , 0x00000011 
- 00012022  0x00001fe8 ifetch  0x00000004 , 0x00000011 
- 00012023  0x00001fe9 beq  0x00000000 , 0x00002ee7 
- 00012024  0x00001fea call  0x0000322c 
- 00012025  0x00001feb branch  0x00002f1c 
- 00012026  0x00001fee call  0x00003261 
- 00012027  0x00001fef increase  0x00000001 , 0x0000003f 
- 00012028  0x00001ff0 call  0x00003264 
- 00012029  0x00001ff2 call  0x00002f04 
- 00012030  0x00001ff3 increase  0x00000001 , 0x0000003f 
- 00012031  0x00001ff4 and_into  0x00000001 , 0x0000003f 
- 00012032  0x00001ff5 call  0x00002f06 
- 00012033  0x00001ff6 beq  0x00000000 , 0x00002f0c 
- 00012034  0x00001ff7 beq  0x00000001 , 0x00002f0e 
- 00012035  0x00001ff8 rtn 
- 00012036  0x00001ffb setarg  0x0000018b 
- 00012037  0x00001ffc branch  0x000032d0 
- 00012038  0x00001ffe arg  0x0000018b , 0x00000011 
- 00012039  0x00001fff branch  0x000032b3 
- 00012040  0x00002002 call  0x00003267 
- 00012041  0x00002003 call  0x00003224 
- 00012042  0x00002004 call  0x0000322c 
- 00012043  0x00002005 branch  0x00002c8a 
- 00012044  0x00002008 call  0x00002f08 
- 00012045  0x00002009 branch  0x00002ee8 
- 00012046  0x0000200c call  0x00002c83 
- 00012047  0x0000200d branch  0x00002ee8 
- 00012048  0x00002011 set0  0x00000026 , 0x00000000 
- 00012049  0x00002012 call  0x00002c8a 
- 00012050  0x00002013 call  0x00003253 
- 00012051  0x00002015 rtnne  0x000000ff 
- 00012052  0x00002016 call  0x00002f22 
- 00012053  0x00002017 call  0x00003263 
- 00012054  0x0000201a nop  0x000007d0 
- 00012055  0x0000201b call  0x00003261 
- 00012056  0x0000201d beq  0x000000ff , 0x00002dd4 
- 00012057  0x0000201e call  0x00002da4 
- 00012058  0x0000201f nbranch  0x00002f27 , 0x00000018 
- 00012059  0x00002020 nbranch  0x00002f27 , 0x0000002f 
- 00012060  0x00002022 set1  0x00000026 , 0x00000000 
- 00012061  0x00002023 call  0x00003263 
- 00012062  0x00002024 setarg  0x000000ff 
- 00012063  0x00002025 call  0x00003256 
- 00012064  0x00002028 jam  0x0000003c , 0x00000a99 
- 00012065  0x00002029 branch  0x00007d86 
- 00012066  0x0000202c set1  0x00000027 , 0x00000000 
- 00012067  0x0000202d jam  0x000000ff , 0x0000119e 
- 00012068  0x0000202e call  0x0000323a 
- 00012069  0x00002030 call  0x00002d77 
- 00012070  0x00002031 branch  0x00002d53 
- 00012071  0x00002034 call  0x00003261 
- 00012072  0x00002036 increase  0x00000001 , 0x0000003f 
- 00012073  0x00002037 call  0x00003264 
- 00012074  0x00002039 call  0x00002c8a 
- 00012075  0x0000203a branch  0x00002f16 
- 00012076  0x0000203d call  0x00003267 
- 00012077  0x00002040 setarg  0x000000ff 
- 00012078  0x00002041 call  0x00003256 
- 00012079  0x00002043 branch  0x00002f10 
- 00012080  0x0000204d bpatch  0x000000ba , 0x00004017 
- 00012081  0x0000204e call  0x00002c7a 
- 00012082  0x0000204f setarg  0x000031b0 
- 00012083  0x00002050 add  0x00000013 , 0x000000de , 0x00000005 
- 00012084  0x00002051 istore  0x00000002 , 0x00000005 
- 00012085  0x00002053 call  0x00002f3d 
- 00012086  0x00002054 call  0x000048ea 
- 00012087  0x00002055 call  0x000032b6 
- 00012088  0x00002057 bpatch  0x000000bb , 0x00004017 
- 00012089  0x00002058 beq  0x00000000 , 0x00003055 
- 00012090  0x00002059 beq  0x00000001 , 0x00002f45 
- 00012091  0x0000205a beq  0x0000000f , 0x00002f41 
- 00012092  0x0000205b branch  0x00002a8c 
- 00012093  0x0000205e call  0x0000326c 
- 00012094  0x0000205f arg  0x00000080 , 0x00000039 
- 00012095  0x00002060 arg  0x00000d9e , 0x00000005 
- 00012096  0x00002061 branch  0x00007ec6 
- 00012097  0x00002064 call  0x00002f4c 
- 00012098  0x00002066 call  0x00002f4f 
- 00012099  0x00002067 call  0x000048d3 
- 00012100  0x00002068 branch  0x00002f42 
- 00012101  0x0000206b bpatch  0x000000bc , 0x00004017 
- 00012102  0x0000206c call  0x00002f4c 
- 00012103  0x0000206e call  0x00002f4f 
- 00012104  0x0000206f call  0x00002fbd 
- 00012105  0x00002070 call  0x000048d3 
- 00012106  0x00002071 call  0x00003019 
- 00012107  0x00002072 branch  0x00002f47 
- 00012108  0x00002078 call  0x00003291 
- 00012109  0x00002079 call  0x00003296 
- 00012110  0x0000207a branch  0x00003299 
- 00012111  0x0000207d call  0x0000328f 
- 00012112  0x0000207f rtnne  0x00000000 
- 00012113  0x00002081 call  0x00002f55 
- 00012114  0x00002082 call  0x00002f65 
- 00012115  0x00002083 call  0x0000316b 
- 00012116  0x00002084 branch  0x00002f96 
- 00012117  0x00002087 call  0x00003294 
- 00012118  0x00002089 rtnbit1  0x00000000 
- 00012119  0x0000208a set1  0x00000000 , 0x0000003f 
- 00012120  0x0000208b call  0x00003297 
- 00012121  0x0000208d call  0x00003267 
- 00012122  0x00002090 call  0x00003299 
- 00012123  0x00002092 jam  0x00000000 , 0x00000d38 
- 00012124  0x00002093 call  0x0000324f 
- 00012125  0x00002095 call  0x00002f61 
- 00012126  0x00002097 add  0x00000013 , 0x00000000 , 0x00000005 
- 00012127  0x00002099 arg  0x00000042 , 0x00000039 
- 00012128  0x0000209a branch  0x00007ed4 
- 00012129  0x0000209d call  0x00003231 
- 00012130  0x0000209f call  0x0000327d 
- 00012131  0x000020a1 call  0x0000322c 
- 00012132  0x000020a3 branch  0x00002c8a 
- 00012133  0x000020a6 bpatch  0x000000bd , 0x00004017 
- 00012134  0x000020a7 call  0x0000324c 
- 00012135  0x000020a9 beq  0x00000001 , 0x00002f8d 
- 00012136  0x000020aa call  0x00003245 
- 00012137  0x000020ac beq  0x00000001 , 0x00002c8a 
- 00012138  0x000020ad setarg  0x00000136 
- 00012139  0x000020ae iadd  0x00000013 , 0x00000011 
- 00012140  0x000020af ifetcht  0x00000004 , 0x00000011 
- 00012141  0x000020b1 copy  0x00000022 , 0x0000003f 
- 00012142  0x000020b2 isub  0x00000002 , 0x0000003e 
- 00012143  0x000020b3 ncall  0x00002d18 , 0x00000002 
- 00012144  0x000020b4 copy  0x0000003f , 0x00000012 
- 00012145  0x000020b5 setarg  0x00000136 
- 00012146  0x000020b6 iadd  0x00000013 , 0x00000011 
- 00012147  0x000020b7 ifetch  0x00000004 , 0x00000011 
- 00012148  0x000020b8 copy  0x0000003f , 0x00000002 
- 00012149  0x000020ba setarg  0x0000013a 
- 00012150  0x000020bb iadd  0x00000013 , 0x00000011 
- 00012151  0x000020bc copy  0x00000002 , 0x0000003f 
- 00012152  0x000020bd ifetcht  0x00000001 , 0x00000011 
- 00012153  0x000020bf iadd  0x00000002 , 0x00000002 
- 00012154  0x000020c0 copy  0x00000012 , 0x0000003f 
- 00012155  0x000020c1 isub  0x00000002 , 0x0000003e 
- 00012156  0x000020c2 nrtn  0x00000002 
- 00012157  0x000020c3 set0  0x0000001c , 0x0000003f 
- 00012158  0x000020c4 setarg  0x00000136 
- 00012159  0x000020c5 iadd  0x00000013 , 0x00000005 
- 00012160  0x000020c6 istore  0x00000004 , 0x00000005 
- 00012161  0x000020c9 call  0x00002c8a 
- 00012162  0x000020ca call  0x00003278 
- 00012163  0x000020cc increase  0x00000001 , 0x0000003f 
- 00012164  0x000020cd call  0x0000327b 
- 00012165  0x000020cf rtnne  0x00000002 
- 00012166  0x000020d0 call  0x0000327a 
- 00012167  0x000020d4 branch  0x0000324f 
- 00012168  0x000020d7 copy  0x00000022 , 0x0000003f 
- 00012169  0x000020d8 arg  0x00000136 , 0x00000011 
- 00012170  0x000020d9 call  0x000032bf 
- 00012171  0x000020da istore  0x00000004 , 0x00000005 
- 00012172  0x000020de branch  0x0000327a 
- 00012173  0x000020e1 arg  0x00000d9e , 0x00000011 
- 00012174  0x000020e2 call  0x00002f94 
- 00012175  0x000020e3 add  0x00000013 , 0x000000eb , 0x00000005 
- 00012176  0x000020e4 istoret  0x00000001 , 0x00000005 
- 00012177  0x000020e6 sub  0x00000002 , 0x00000050 , 0x0000003e 
- 00012178  0x000020e7 nrtn  0x00000002 
- 00012179  0x000020e8 branch  0x00002c8a 
- 00012180  0x000020eb arg  0x00000100 , 0x00000039 
- 00012181  0x000020ec branch  0x00002e62 
- 00012182  0x000020ef call  0x00002f99 
- 00012183  0x000020f0 call  0x00002fa5 
- 00012184  0x000020f1 branch  0x00002fb1 
- 00012185  0x000020f4 setarg  0x00000180 
- 00012186  0x000020f5 call  0x000032d0 
- 00012187  0x000020f7 rtn  0x00000034 
- 00012188  0x000020f8 arg  0x0000000b , 0x00000007 
- 00012189  0x000020f9 call  0x00007f16 
- 00012190  0x000020fa nrtn  0x00000034 
- 00012191  0x000020fb call  0x000032a7 
- 00012192  0x000020fe setarg  0x00000001 
- 00012193  0x000020ff store  0x00000001 , 0x00000d54 
- 00012194  0x00002100 setarg  0x00000000 
- 00012195  0x00002101 istore  0x00000007 , 0x00000005 
- 00012196  0x00002102 branch  0x000031b8 
- 00012197  0x00002105 setarg  0x0000017e 
- 00012198  0x00002106 call  0x000032d0 
- 00012199  0x00002108 rtn  0x00000034 
- 00012200  0x00002109 arg  0x0000000e , 0x00000007 
- 00012201  0x0000210a call  0x00007f16 
- 00012202  0x0000210b nrtn  0x00000034 
- 00012203  0x0000210c call  0x000032aa 
- 00012204  0x0000210f arg  0x00000d64 , 0x00000005 
- 00012205  0x00002110 arg  0x00000002 , 0x00000039 
- 00012206  0x00002111 call  0x00007ec6 
- 00012207  0x00002112 jam  0x00000000 , 0x00000d64 
- 00012208  0x00002113 branch  0x000031ed 
- 00012209  0x00002116 setarg  0x0000017f 
- 00012210  0x00002117 call  0x000032d0 
- 00012211  0x00002119 rtn  0x00000034 
- 00012212  0x0000211a arg  0x0000000c , 0x00000007 
- 00012213  0x0000211b call  0x00007f16 
- 00012214  0x0000211c nrtn  0x00000034 
- 00012215  0x0000211d call  0x000032ad 
- 00012216  0x00002120 arg  0x00000d74 , 0x00000005 
- 00012217  0x00002121 arg  0x00000002 , 0x00000039 
- 00012218  0x00002122 call  0x00007ec6 
- 00012219  0x00002123 jam  0x00000003 , 0x00000d74 
- 00012220  0x00002124 branch  0x00003207 
- 00012221  0x00002127 call  0x0000328f 
- 00012222  0x00002129 rtnne  0x00000001 
- 00012223  0x0000212a call  0x00002fc1 
- 00012224  0x0000212b branch  0x00002fcb 
- 00012225  0x0000212e call  0x00003294 
- 00012226  0x00002130 rtnbit1  0x00000001 
- 00012227  0x00002131 set1  0x00000001 , 0x0000003f 
- 00012228  0x00002132 call  0x00003297 
- 00012229  0x00002134 call  0x0000329c 
- 00012230  0x00002136 call  0x00002c83 
- 00012231  0x00002137 setarg  0x00000000 
- 00012232  0x00002138 arg  0x00000106 , 0x00000011 
- 00012233  0x00002139 call  0x000032bf 
- 00012234  0x0000213b branch  0x000032c5 
- 00012235  0x0000213e call  0x0000316e 
- 00012236  0x0000213f nbranch  0x00002f5e , 0x0000002f 
- 00012237  0x00002140 add  0x00000013 , 0x00000000 , 0x00000006 
- 00012238  0x00002141 setarg  0x00000109 
- 00012239  0x00002142 iadd  0x00000013 , 0x00000005 
- 00012240  0x00002143 arg  0x00000008 , 0x00000039 
- 00012241  0x00002144 call  0x00007f01 
- 00012242  0x00002145 setarg  0x0000010b 
- 00012243  0x00002146 call  0x000032d0 
- 00012244  0x00002147 beq  0x000000aa , 0x00002fd9 
- 00012245  0x00002148 beq  0x00000055 , 0x00002fed 
- 00012246  0x00002149 beq  0x00000022 , 0x00003001 
- 00012247  0x0000214a beq  0x000000ff , 0x00003212 
- 00012248  0x0000214b branch  0x00002f5e 
- 00012249  0x0000214e call  0x000032bd 
- 00012250  0x0000214f beq  0x00000001 , 0x00002fdd 
- 00012251  0x00002150 beq  0x00000002 , 0x00002fe8 
- 00012252  0x00002151 rtn 
- 00012253  0x00002153 setarg  0x00000001 
- 00012254  0x00002154 call  0x00002ff7 
- 00012255  0x00002157 setarg  0x00000001 
- 00012256  0x00002158 call  0x00003289 
- 00012257  0x0000215b setarg  0x00000080 
- 00012258  0x0000215c arg  0x00000130 , 0x00000011 
- 00012259  0x0000215d call  0x000032b3 
- 00012260  0x0000215f call  0x0000327d 
- 00012261  0x00002161 arg  0x00000131 , 0x00000011 
- 00012262  0x00002162 call  0x000032bf 
- 00012263  0x00002164 branch  0x0000322d 
- 00012264  0x00002167 setarg  0x00000001 
- 00012265  0x00002168 call  0x00002fff 
- 00012266  0x0000216b setarg  0x00000002 
- 00012267  0x0000216c call  0x00003289 
- 00012268  0x0000216e branch  0x00002fe1 
- 00012269  0x00002171 call  0x000032bd 
- 00012270  0x00002172 beq  0x00000001 , 0x00002ff1 
- 00012271  0x00002173 beq  0x00000002 , 0x00002ff9 
- 00012272  0x00002174 rtn 
- 00012273  0x00002176 call  0x00002fdf 
- 00012274  0x00002177 setarg  0x00000106 
- 00012275  0x00002178 call  0x000032d0 
- 00012276  0x0000217a beq  0x00000001 , 0x00002ff6 
- 00012277  0x0000217b rtn 
- 00012278  0x0000217d setarg  0x00000002 
- 00012279  0x00002180 arg  0x00000106 , 0x00000011 
- 00012280  0x00002181 branch  0x000032b3 
- 00012281  0x00002184 call  0x00002fea 
- 00012282  0x00002185 setarg  0x00000107 
- 00012283  0x00002186 call  0x000032d0 
- 00012284  0x00002188 beq  0x00000001 , 0x00002ffe 
- 00012285  0x00002189 rtn 
- 00012286  0x0000218b setarg  0x00000002 
- 00012287  0x0000218e arg  0x00000107 , 0x00000011 
- 00012288  0x0000218f branch  0x000032b3 
- 00012289  0x00002192 call  0x000032bd 
- 00012290  0x00002193 beq  0x00000001 , 0x00003005 
- 00012291  0x00002194 beq  0x00000002 , 0x00003011 
- 00012292  0x00002195 rtn 
- 00012293  0x00002197 setarg  0x00000106 
- 00012294  0x00002198 call  0x000032d0 
- 00012295  0x0000219a beq  0x00000002 , 0x00003009 
- 00012296  0x0000219b rtn 
- 00012297  0x0000219d call  0x0000328b 
- 00012298  0x0000219f or_into  0x00000001 , 0x0000003f 
- 00012299  0x000021a0 call  0x0000328d 
- 00012300  0x000021a3 setarg  0x00000000 
- 00012301  0x000021a4 setarg  0x00000106 
- 00012302  0x000021a5 iadd  0x00000013 , 0x00000005 
- 00012303  0x000021a6 istore  0x00000002 , 0x00000005 
- 00012304  0x000021a7 branch  0x00002f5e 
- 00012305  0x000021aa setarg  0x00000107 
- 00012306  0x000021ab call  0x000032d0 
- 00012307  0x000021ad bne  0x00000000 , 0x00003015 
- 00012308  0x000021ae rtn 
- 00012309  0x000021b0 call  0x0000328b 
- 00012310  0x000021b2 or_into  0x00000002 , 0x0000003f 
- 00012311  0x000021b3 call  0x0000328d 
- 00012312  0x000021b5 branch  0x0000300c 
- 00012313  0x000021b9 fetch  0x00000001 , 0x00000d50 
- 00012314  0x000021ba rtn  0x00000034 
- 00012315  0x000021bb jam  0x00000000 , 0x00000d50 
- 00012316  0x000021bc fetch  0x00000002 , 0x00000d4e 
- 00012317  0x000021bd arg  0x000002ba , 0x00000002 
- 00012318  0x000021be isub  0x00000002 , 0x0000003e 
- 00012319  0x000021bf nrtn  0x00000005 
- 00012320  0x000021c1 fetch  0x00000001 , 0x00000cb6 
- 00012321  0x000021c2 rtnne  0x000000ba 
- 00012322  0x000021c3 fetch  0x00000001 , 0x00000cb7 
- 00012323  0x000021c4 bpatch  0x000000be , 0x00004017 
- 00012324  0x000021c5 beq  0x000000a0 , 0x0000303b 
- 00012325  0x000021c6 beq  0x000000a1 , 0x0000302c 
- 00012326  0x000021c7 beq  0x000000a6 , 0x00003041 
- 00012327  0x000021c8 beq  0x000000a7 , 0x00003043 
- 00012328  0x000021c9 beq  0x000000a9 , 0x00003049 
- 00012329  0x000021ca beq  0x000000b0 , 0x0000304d 
- 00012330  0x000021cc jam  0x00000000 , 0x00000d42 
- 00012331  0x000021cd rtn 
- 00012332  0x000021cf fetch  0x00000001 , 0x00000cb8 
- 00012333  0x000021d0 beq  0x00000001 , 0x00003031 
- 00012334  0x000021d1 beq  0x00000084 , 0x00003034 
- 00012335  0x000021d2 beq  0x000000a7 , 0x00003039 
- 00012336  0x000021d3 branch  0x0000302a 
- 00012337  0x000021d5 call  0x0000328b 
- 00012338  0x000021d7 store  0x00000001 , 0x00000cf7 
- 00012339  0x000021d8 branch  0x0000303f 
- 00012340  0x000021da call  0x00003291 
- 00012341  0x000021dc call  0x00003296 
- 00012342  0x000021de call  0x0000328b 
- 00012343  0x000021e0 store  0x00000001 , 0x00000cf7 
- 00012344  0x000021e1 branch  0x0000303f 
- 00012345  0x000021e5 jam  0x000000a1 , 0x00000cf7 
- 00012346  0x000021e6 branch  0x0000303f 
- 00012347  0x000021e9 fetch  0x00000001 , 0x00000cb8 
- 00012348  0x000021ea beq  0x00000081 , 0x0000303e 
- 00012349  0x000021ec branch  0x0000302a 
- 00012350  0x000021f0 call  0x00003090 
- 00012351  0x000021f2 jam  0x00000001 , 0x00000d42 
- 00012352  0x000021f3 rtn 
- 00012353  0x000021f9 jam  0x00000015 , 0x00000cf7 
- 00012354  0x000021fa branch  0x0000303f 
- 00012355  0x000021fd call  0x0000328f 
- 00012356  0x000021ff beq  0x00000000 , 0x00003047 
- 00012357  0x00002200 beq  0x00000001 , 0x00003039 
- 00012358  0x00002202 rtn 
- 00012359  0x00002204 jam  0x000000a0 , 0x00000cf7 
- 00012360  0x00002205 branch  0x0000303f 
- 00012361  0x0000220b jam  0x00000000 , 0x00000cf7 
- 00012362  0x0000220c jam  0x00000000 , 0x00000cf8 
- 00012363  0x0000220d jam  0x00000001 , 0x00000cf9 
- 00012364  0x0000220e branch  0x0000303f 
- 00012365  0x00002212 call  0x0000329c 
- 00012366  0x00002213 fetch  0x00000001 , 0x00000cb8 
- 00012367  0x00002214 increase  0x00000002 , 0x0000003f 
- 00012368  0x00002215 copy  0x0000003f , 0x00000039 
- 00012369  0x00002216 arg  0x00000cb6 , 0x00000006 
- 00012370  0x00002217 setarg  0x0000013c 
- 00012371  0x00002218 iadd  0x00000013 , 0x00000005 
- 00012372  0x00002219 branch  0x00007f01 
- 00012373  0x0000221d bpatch  0x000000bf , 0x00004017 
- 00012374  0x0000221e call  0x0000307d 
- 00012375  0x00002220 call  0x00002c7f 
- 00012376  0x00002221 call  0x000048d3 
- 00012377  0x00002222 branch  0x00003057 
- 00012378  0x00002225 call  0x0000328f 
- 00012379  0x00002227 rtnne  0x00000000 
- 00012380  0x00002228 call  0x00002f51 
- 00012381  0x00002229 branch  0x00003098 
- 00012382  0x0000222c call  0x0000328f 
- 00012383  0x0000222e rtnne  0x00000001 
- 00012384  0x0000222f call  0x00002fc1 
- 00012385  0x00002230 call  0x00002fcb 
- 00012386  0x00002231 call  0x0000328b 
- 00012387  0x00002233 rtn  0x00000034 
- 00012388  0x00002234 call  0x00003286 
- 00012389  0x00002236 call  0x00002f4c 
- 00012390  0x00002237 call  0x00003093 
- 00012391  0x00002239 setarg  0x00000000 
- 00012392  0x0000223a add  0x00000013 , 0x000000a7 , 0x00000005 
- 00012393  0x0000223c branch  0x0000322d 
- 00012394  0x0000223f call  0x00007fe9 
- 00012395  0x00002240 add  0x00000013 , 0x000000a7 , 0x00000011 
- 00012396  0x00002241 ifetcht  0x00000004 , 0x00000011 
- 00012397  0x00002243 copy  0x00000022 , 0x0000003f 
- 00012398  0x00002244 isub  0x00000002 , 0x0000003e 
- 00012399  0x00002245 ncall  0x00002d18 , 0x00000002 
- 00012400  0x00002246 copy  0x0000003f , 0x00000012 
- 00012401  0x00002247 add  0x00000013 , 0x000000a7 , 0x00000011 
- 00012402  0x00002248 ifetch  0x00000004 , 0x00000011 
- 00012403  0x0000224a add  0x00000013 , 0x000000ab , 0x00000011 
- 00012404  0x0000224b ifetcht  0x00000001 , 0x00000011 
- 00012405  0x0000224d iadd  0x00000002 , 0x00000002 
- 00012406  0x0000224e copy  0x00000012 , 0x0000003f 
- 00012407  0x0000224f isub  0x00000002 , 0x0000003e 
- 00012408  0x00002250 nrtn  0x00000002 
- 00012409  0x00002251 set0  0x0000001c , 0x0000003f 
- 00012410  0x00002252 add  0x00000013 , 0x000000a7 , 0x00000005 
- 00012411  0x00002253 istore  0x00000004 , 0x00000005 
- 00012412  0x00002255 branch  0x00007fe7 
- 00012413  0x00002258 setarg  0x00000001 
- 00012414  0x00002259 call  0x00003287 
- 00012415  0x0000225b call  0x00003283 
- 00012416  0x0000225d setarg  0x000000ff 
- 00012417  0x0000225e add  0x00000013 , 0x000000ab , 0x00000005 
- 00012418  0x0000225f istore  0x00000001 , 0x00000005 
- 00012419  0x00002261 branch  0x00003067 
- 00012420  0x00002264 setarg  0x0000015c 
- 00012421  0x00002265 call  0x000032d0 
- 00012422  0x00002267 rtn  0x00000034 
- 00012423  0x00002268 call  0x0000306a 
- 00012424  0x00002269 nrtn  0x00000028 
- 00012425  0x0000226a call  0x00003281 
- 00012426  0x0000226c increase  0x00000001 , 0x0000003f 
- 00012427  0x0000226d and_into  0x00000001 , 0x0000003f 
- 00012428  0x0000226e call  0x00003284 
- 00012429  0x00002270 beq  0x00000000 , 0x00002f4c 
- 00012430  0x00002271 beq  0x00000001 , 0x00003090 
- 00012431  0x00002272 rtn 
- 00012432  0x00002278 setarg  0x00000001 
- 00012433  0x00002279 call  0x00003292 
- 00012434  0x0000227a branch  0x00003296 
- 00012435  0x0000227d setarg  0x00000001 
- 00012436  0x0000227e call  0x000032a5 
- 00012437  0x00002281 setarg  0x00000280 
- 00012438  0x00002282 arg  0x00000008 , 0x00000007 
- 00012439  0x00002283 branch  0x00007f08 
- 00012440  0x00002286 call  0x000032a2 
- 00012441  0x00002288 rtn  0x00000034 
- 00012442  0x00002289 arg  0x00000008 , 0x00000007 
- 00012443  0x0000228a call  0x00007f16 
- 00012444  0x0000228b nrtn  0x00000034 
- 00012445  0x0000228c call  0x000032a4 
- 00012446  0x0000228f setarg  0x00000007 
- 00012447  0x00002290 call  0x00003292 
- 00012448  0x00002292 call  0x00003296 
- 00012449  0x00002294 branch  0x00002f5e 
- 00012450  0x00002297 bpatch  0x000000c0 , 0x00004018 
- 00012451  0x00002298 call  0x0000328f 
- 00012452  0x0000229a rtnne  0x00000007 
- 00012453  0x0000229b call  0x000030cb 
- 00012454  0x0000229c call  0x000030e0 
- 00012455  0x0000229d call  0x0000316e 
- 00012456  0x0000229e nbranch  0x00002f5e , 0x0000002f 
- 00012457  0x000022a0 call  0x000030bc 
- 00012458  0x000022a1 call  0x00003172 , 0x00000005 
- 00012459  0x000022a5 call  0x00002f4c 
- 00012460  0x000022a6 call  0x00003294 
- 00012461  0x000022a8 set1  0x00000000 , 0x0000003f 
- 00012462  0x000022a9 call  0x00003297 
- 00012463  0x000022ab call  0x00002f5e 
- 00012464  0x000022ac call  0x00003093 
- 00012465  0x000022ad call  0x000030bc 
- 00012466  0x000022ae branch  0x000030c1 , 0x00000005 
- 00012467  0x000022af setarg  0x00000164 
- 00012468  0x000022b0 call  0x000032d3 
- 00012469  0x000022b2 call  0x000030be 
- 00012470  0x000022b3 branch  0x000030c5 , 0x00000005 
- 00012471  0x000022b4 setarg  0x00000160 
- 00012472  0x000022b5 call  0x000032d3 
- 00012473  0x000022b7 call  0x000030be 
- 00012474  0x000022b8 branch  0x000030c8 , 0x00000005 
- 00012475  0x000022b9 rtn 
- 00012476  0x000022bc setarg  0x0000012b 
- 00012477  0x000022bd call  0x000032d3 
- 00012478  0x000022c0 call  0x0000322a 
- 00012479  0x000022c2 isub  0x00000002 , 0x0000003e 
- 00012480  0x000022c3 rtn 
- 00012481  0x000022c6 setarg  0x00000182 
- 00012482  0x000022c7 call  0x000032d0 
- 00012483  0x000022cb add  0x00000013 , 0x00000091 , 0x00000005 
- 00012484  0x000022cc branch  0x000032b4 
- 00012485  0x000022cf setarg  0x00000185 
- 00012486  0x000022d0 call  0x000032d0 
- 00012487  0x000022d2 branch  0x000030c3 
- 00012488  0x000022d4 setarg  0x00000188 
- 00012489  0x000022d5 call  0x000032d0 
- 00012490  0x000022d7 branch  0x000030c3 
- 00012491  0x000022da call  0x00003294 
- 00012492  0x000022dc rtnbit1  0x00000007 
- 00012493  0x000022dd set1  0x00000007 , 0x0000003f 
- 00012494  0x000022de call  0x00003297 
- 00012495  0x000022e0 call  0x00003283 
- 00012496  0x000022e2 call  0x0000329c 
- 00012497  0x000022e4 setarg  0x00000000 
- 00012498  0x000022e5 add  0x00000013 , 0x000000f5 , 0x00000005 
- 00012499  0x000022e6 istore  0x00000003 , 0x00000005 
- 00012500  0x000022e8 arg  0x00000183 , 0x00000011 
- 00012501  0x000022e9 call  0x000032bf 
- 00012502  0x000022ea istore  0x00000007 , 0x00000005 
- 00012503  0x000022ed call  0x000030bc 
- 00012504  0x000022ee nrtn  0x00000005 
- 00012505  0x000022ef add  0x00000013 , 0x00000091 , 0x00000011 
- 00012506  0x000022f0 ifetch  0x00000001 , 0x00000011 
- 00012507  0x000022f2 arg  0x00000182 , 0x00000011 
- 00012508  0x000022f3 call  0x000032b3 
- 00012509  0x000022f5 add  0x00000013 , 0x00000090 , 0x00000011 
- 00012510  0x000022f6 ifetch  0x00000001 , 0x00000011 
- 00012511  0x000022f9 branch  0x0000314a 
- 00012512  0x000022fc bpatch  0x000000c1 , 0x00004018 
- 00012513  0x000022fd call  0x00003281 
- 00012514  0x000022ff increase  0x00000001 , 0x0000003f 
- 00012515  0x00002300 and_into  0x00000003 , 0x0000003f 
- 00012516  0x00002301 call  0x00003284 
- 00012517  0x00002304 beq  0x00000000 , 0x0000310e 
- 00012518  0x00002305 beq  0x00000001 , 0x00003132 
- 00012519  0x00002306 beq  0x00000002 , 0x000030ea 
- 00012520  0x00002307 beq  0x00000003 , 0x00003132 
- 00012521  0x00002308 rtn 
- 00012522  0x0000230b call  0x00002fdf 
- 00012523  0x0000230c setarg  0x00000160 
- 00012524  0x0000230d call  0x0000327e 
- 00012525  0x0000230f branch  0x000030e0 , 0x00000034 
- 00012526  0x00002310 call  0x0000322c 
- 00012527  0x00002312 setarg  0x00000189 
- 00012528  0x00002313 call  0x000032d0 
- 00012529  0x00002315 call  0x00003108 , 0x00000034 
- 00012530  0x00002316 setarg  0x00000187 
- 00012531  0x00002317 call  0x000032d0 
- 00012532  0x00002319 call  0x0000322f 
- 00012533  0x0000231b add  0x00000013 , 0x000000f7 , 0x00000011 
- 00012534  0x0000231c ifetcht  0x00000001 , 0x00000011 
- 00012535  0x0000231e arg  0x00000f9e , 0x00000011 
- 00012536  0x0000231f call  0x00002e58 
- 00012537  0x00002320 add  0x00000013 , 0x000000f7 , 0x00000005 
- 00012538  0x00002321 istoret  0x00000001 , 0x00000005 
- 00012539  0x00002323 call  0x00002f94 
- 00012540  0x00002324 add  0x00000013 , 0x000000fa , 0x00000005 
- 00012541  0x00002325 istoret  0x00000001 , 0x00000005 
- 00012542  0x00002327 sub  0x00000002 , 0x00000050 , 0x0000003e 
- 00012543  0x00002328 nrtn  0x00000002 
- 00012544  0x00002329 setarg  0x00000188 
- 00012545  0x0000232a call  0x00003275 
- 00012546  0x0000232c call  0x00002c90 
- 00012547  0x0000232d arg  0x00000188 , 0x00000011 
- 00012548  0x0000232e call  0x000032c8 
- 00012549  0x0000232f istoret  0x00000001 , 0x00000005 
- 00012550  0x00002333 arg  0x00000187 , 0x00000011 
- 00012551  0x00002334 branch  0x000032b3 
- 00012552  0x00002337 setarg  0x00000001 
- 00012553  0x00002338 arg  0x00000189 , 0x00000011 
- 00012554  0x00002339 call  0x000032b3 
- 00012555  0x0000233b arg  0x00000000 , 0x00000002 
- 00012556  0x0000233c call  0x00002c94 
- 00012557  0x0000233f branch  0x00003106 
- 00012558  0x00002342 call  0x00002fea 
- 00012559  0x00002343 setarg  0x00000164 
- 00012560  0x00002344 call  0x0000327e 
- 00012561  0x00002346 branch  0x000030e0 , 0x00000034 
- 00012562  0x00002347 call  0x0000322c 
- 00012563  0x00002349 setarg  0x00000186 
- 00012564  0x0000234a call  0x000032d0 
- 00012565  0x0000234c call  0x0000312c , 0x00000034 
- 00012566  0x0000234d setarg  0x00000184 
- 00012567  0x0000234e call  0x000032d0 
- 00012568  0x00002350 call  0x0000322f 
- 00012569  0x00002352 add  0x00000013 , 0x000000f6 , 0x00000011 
- 00012570  0x00002353 ifetcht  0x00000001 , 0x00000011 
- 00012571  0x00002355 arg  0x0000109e , 0x00000011 
- 00012572  0x00002356 call  0x00002e58 
- 00012573  0x00002357 add  0x00000013 , 0x000000f6 , 0x00000005 
- 00012574  0x00002358 istoret  0x00000001 , 0x00000005 
- 00012575  0x0000235a call  0x00002f94 
- 00012576  0x0000235b add  0x00000013 , 0x000000f9 , 0x00000005 
- 00012577  0x0000235c istoret  0x00000001 , 0x00000005 
- 00012578  0x0000235e sub  0x00000002 , 0x00000050 , 0x0000003e 
- 00012579  0x0000235f nrtn  0x00000002 
- 00012580  0x00002360 setarg  0x00000185 
- 00012581  0x00002361 call  0x00003275 
- 00012582  0x00002363 call  0x00002c90 
- 00012583  0x00002364 arg  0x00000185 , 0x00000011 
- 00012584  0x00002365 call  0x000032c8 
- 00012585  0x00002366 istoret  0x00000001 , 0x00000005 
- 00012586  0x0000236a arg  0x00000184 , 0x00000011 
- 00012587  0x0000236b branch  0x000032b3 
- 00012588  0x0000236e setarg  0x00000001 
- 00012589  0x0000236f arg  0x00000186 , 0x00000011 
- 00012590  0x00002370 call  0x000032b3 
- 00012591  0x00002372 arg  0x00000000 , 0x00000002 
- 00012592  0x00002373 call  0x00002c94 
- 00012593  0x00002376 branch  0x0000312a 
- 00012594  0x00002379 call  0x00002fdf 
- 00012595  0x0000237a call  0x0000327d 
- 00012596  0x0000237c call  0x0000322c 
- 00012597  0x0000237e setarg  0x00000183 
- 00012598  0x0000237f call  0x000032d0 
- 00012599  0x00002381 call  0x0000314c , 0x00000034 
- 00012600  0x00002382 call  0x0000314f 
- 00012601  0x00002383 add  0x00000013 , 0x000000f5 , 0x00000011 
- 00012602  0x00002384 ifetcht  0x00000001 , 0x00000011 
- 00012603  0x00002386 arg  0x00000e9e , 0x00000011 
- 00012604  0x00002387 call  0x00002e58 
- 00012605  0x00002388 add  0x00000013 , 0x000000f5 , 0x00000005 
- 00012606  0x00002389 istoret  0x00000001 , 0x00000005 
- 00012607  0x0000238b call  0x00002f94 
- 00012608  0x0000238c add  0x00000013 , 0x000000f8 , 0x00000005 
- 00012609  0x0000238d istoret  0x00000001 , 0x00000005 
- 00012610  0x0000238f sub  0x00000002 , 0x00000050 , 0x0000003e 
- 00012611  0x00002390 nrtn  0x00000002 
- 00012612  0x00002391 setarg  0x00000182 
- 00012613  0x00002392 call  0x00003275 
- 00012614  0x00002394 call  0x00002c90 
- 00012615  0x00002395 arg  0x00000182 , 0x00000011 
- 00012616  0x00002396 call  0x000032c8 
- 00012617  0x00002397 istoret  0x00000001 , 0x00000005 
- 00012618  0x0000239c arg  0x00000181 , 0x00000011 
- 00012619  0x0000239d branch  0x000032b3 
- 00012620  0x000023a5 setarg  0x00000001 
- 00012621  0x000023a6 arg  0x00000183 , 0x00000011 
- 00012622  0x000023a7 call  0x000032b3 
- 00012623  0x000023a9 setarg  0x00000181 
- 00012624  0x000023aa call  0x000032d0 
- 00012625  0x000023ab branch  0x0000322f 
- 00012626  0x000023b0 add  0x00000013 , 0x00000000 , 0x00000011 
- 00012627  0x000023b1 ifetch  0x00000001 , 0x00000011 
- 00012628  0x000023b3 call  0x0000323c 
- 00012629  0x000023b6 call  0x00002dde 
- 00012630  0x000023b8 call  0x0000325f 
- 00012631  0x000023ba isolate1  0x00000000 , 0x0000003f 
- 00012632  0x000023bb branch  0x0000315c , 0x00000001 
- 00012633  0x000023bd call  0x0000315d 
- 00012634  0x000023be call  0x00002d53 
- 00012635  0x000023bf call  0x00002df7 
- 00012636  0x000023c1 branch  0x00002e45 
- 00012637  0x000023c4 bpatch  0x000000c2 , 0x00004018 
- 00012638  0x000023c5 add  0x00000013 , 0x00000086 , 0x00000005 
- 00012639  0x000023c6 call  0x000032d6 
- 00012640  0x000023c8 setarg  0x0000013b 
- 00012641  0x000023c9 call  0x000032d0 
- 00012642  0x000023cb rtn  0x00000034 
- 00012643  0x000023cc setarg  0x00000006 
- 00012644  0x000023cd add  0x00000013 , 0x00000086 , 0x00000005 
- 00012645  0x000023ce istore  0x00000001 , 0x00000005 
- 00012646  0x000023d0 arg  0x00000006 , 0x00000039 
- 00012647  0x000023d1 setarg  0x0000012f 
- 00012648  0x000023d2 iadd  0x00000013 , 0x00000006 
- 00012649  0x000023d4 add  0x00000013 , 0x00000022 , 0x00000005 
- 00012650  0x000023d6 branch  0x00007f01 
- 00012651  0x000023da call  0x0000316e 
- 00012652  0x000023db nbranch  0x00002f5e , 0x0000002f 
- 00012653  0x000023dc branch  0x00003172 
- 00012654  0x000023df call  0x00002f5e 
- 00012655  0x000023e0 call  0x00002e11 
- 00012656  0x000023e1 nrtn  0x0000002f 
- 00012657  0x000023e2 branch  0x00003152 
- 00012658  0x000023e5 bpatch  0x000000c3 , 0x00004018 
- 00012659  0x000023e6 call  0x00003188 
- 00012660  0x000023e7 nbranch  0x00002f5e , 0x00000028 
- 00012661  0x000023e8 add  0x00000013 , 0x00000084 , 0x00000011 
- 00012662  0x000023e9 ifetch  0x00000001 , 0x00000011 
- 00012663  0x000023eb branch  0x00002f5e , 0x00000034 
- 00012664  0x000023ec increase  0x00000002 , 0x0000003f 
- 00012665  0x000023ed iforce  0x00000039 
- 00012666  0x000023ee add  0x00000013 , 0x00000000 , 0x00000006 
- 00012667  0x000023f0 setarg  0x00000109 
- 00012668  0x000023f1 iadd  0x00000013 , 0x00000005 
- 00012669  0x000023f3 call  0x00007f01 
- 00012670  0x000023f4 call  0x00003286 
- 00012671  0x000023f6 call  0x000032b6 
- 00012672  0x000023f8 call  0x00003093 , 0x00000034 
- 00012673  0x000023f9 setarg  0x0000010b 
- 00012674  0x000023fa call  0x000032d0 
- 00012675  0x000023fc beq  0x00000001 , 0x0000319e 
- 00012676  0x000023fd beq  0x00000002 , 0x000031c6 
- 00012677  0x000023fe beq  0x00000003 , 0x000031f2 
- 00012678  0x000023ff beq  0x000000ff , 0x00003212 
- 00012679  0x00002400 branch  0x00002f5e 
- 00012680  0x00002403 call  0x00002c7a 
- 00012681  0x00002404 call  0x00007fe9 
- 00012682  0x00002405 add  0x00000013 , 0x000000ca , 0x00000011 
- 00012683  0x00002406 ifetch  0x00000001 , 0x00000011 
- 00012684  0x00002408 add  0x00000013 , 0x000000cb , 0x00000011 
- 00012685  0x00002409 ifetcht  0x00000001 , 0x00000011 
- 00012686  0x0000240b isub  0x00000002 , 0x0000003e 
- 00012687  0x0000240c ncall  0x00007fe7 , 0x00000005 
- 00012688  0x0000240d add  0x00000013 , 0x000000ca , 0x00000011 
- 00012689  0x0000240e ifetch  0x00000001 , 0x00000011 
- 00012690  0x00002410 add  0x00000013 , 0x000000cb , 0x00000005 
- 00012691  0x00002411 istore  0x00000001 , 0x00000005 
- 00012692  0x00002413 add  0x00000013 , 0x000000c4 , 0x00000011 
- 00012693  0x00002414 ifetch  0x00000003 , 0x00000011 
- 00012694  0x00002416 add  0x00000013 , 0x000000c7 , 0x00000011 
- 00012695  0x00002417 ifetcht  0x00000003 , 0x00000011 
- 00012696  0x00002419 isub  0x00000002 , 0x0000003e 
- 00012697  0x0000241a ncall  0x00007fe7 , 0x00000005 
- 00012698  0x0000241b add  0x00000013 , 0x000000c4 , 0x00000011 
- 00012699  0x0000241c ifetch  0x00000003 , 0x00000011 
- 00012700  0x0000241e add  0x00000013 , 0x000000c7 , 0x00000005 
- 00012701  0x00002420 branch  0x000032c5 
- 00012702  0x00002423 call  0x00002f88 
- 00012703  0x00002424 call  0x0000324c 
- 00012704  0x00002425 store  0x00000001 , 0x00000aa2 
- 00012705  0x00002427 call  0x00003274 
- 00012706  0x00002428 fetch  0x00000001 , 0x00000aa2 
- 00012707  0x0000242a isolate1  0x00000003 , 0x00000002 
- 00012708  0x0000242b setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00012709  0x0000242c add  0x00000013 , 0x000000b2 , 0x00000005 
- 00012710  0x0000242d istore  0x00000001 , 0x00000005 
- 00012711  0x0000242f beq  0x00000001 , 0x00003216 
- 00012712  0x00002430 call  0x00003245 
- 00012713  0x00002432 call  0x00003274 
- 00012714  0x00002434 isolate1  0x00000004 , 0x00000002 
- 00012715  0x00002435 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00012716  0x00002436 call  0x00003249 
- 00012717  0x00002438 add  0x00000013 , 0x000000de , 0x00000011 
- 00012718  0x00002439 ifetch  0x00000002 , 0x00000011 
- 00012719  0x0000243b branch  0x00007f9c 
- 00012720  0x0000243e setarg  0x00000001 
- 00012721  0x0000243f store  0x00000001 , 0x00000d54 
- 00012722  0x00002440 call  0x0000329e 
- 00012723  0x00002442 istore  0x00000007 , 0x00000005 
- 00012724  0x00002443 call  0x0000329e 
- 00012725  0x00002445 ncall  0x000031bd , 0x00000034 
- 00012726  0x00002446 call  0x0000329e 
- 00012727  0x00002448 call  0x000031c2 , 0x00000034 
- 00012728  0x0000244a jam  0x00000020 , 0x00000d52 
- 00012729  0x0000244c fetch  0x00000001 , 0x00000d38 
- 00012730  0x0000244d set1  0x00000002 , 0x0000003f 
- 00012731  0x0000244e store  0x00000001 , 0x00000d38 
- 00012732  0x0000244f rtn 
- 00012733  0x00002452 setarg  0x00000001 
- 00012734  0x00002453 call  0x000032a8 
- 00012735  0x00002456 setarg  0x00000140 
- 00012736  0x00002457 arg  0x0000000b , 0x00000007 
- 00012737  0x00002458 branch  0x00007f08 
- 00012738  0x0000245a call  0x000032a7 
- 00012739  0x0000245d setarg  0x00000000 
- 00012740  0x0000245e arg  0x0000000b , 0x00000007 
- 00012741  0x0000245f branch  0x00007f08 
- 00012742  0x00002462 call  0x00003274 
- 00012743  0x00002464 isolate1  0x00000003 , 0x00000002 
- 00012744  0x00002465 branch  0x0000321b , 0x00000001 
- 00012745  0x00002466 arg  0x00000d64 , 0x00000005 
- 00012746  0x00002467 call  0x000031e0 
- 00012747  0x00002468 fetch  0x00000008 , 0x00000d64 
- 00012748  0x00002469 ncall  0x000031e4 , 0x00000034 
- 00012749  0x0000246a fetch  0x00000008 , 0x00000d64 
- 00012750  0x0000246b call  0x000031e9 , 0x00000034 
- 00012751  0x0000246c call  0x00002c7a 
- 00012752  0x0000246d fetch  0x00000008 , 0x00000d64 
- 00012753  0x0000246e arg  0x00000168 , 0x00000011 
- 00012754  0x0000246f call  0x000032bf 
- 00012755  0x00002470 istore  0x00000008 , 0x00000005 
- 00012756  0x00002472 setarg  0x00000170 
- 00012757  0x00002473 iadd  0x00000013 , 0x00000011 
- 00012758  0x00002474 ifetcht  0x00000008 , 0x00000011 
- 00012759  0x00002476 isub  0x00000002 , 0x0000003e 
- 00012760  0x00002477 ncall  0x000031ed , 0x00000005 
- 00012761  0x00002478 setarg  0x00000168 
- 00012762  0x00002479 iadd  0x00000013 , 0x00000011 
- 00012763  0x0000247a ifetch  0x00000008 , 0x00000011 
- 00012764  0x0000247c arg  0x00000170 , 0x00000011 
- 00012765  0x0000247d call  0x000032bf 
- 00012766  0x0000247e istore  0x00000008 , 0x00000005 
- 00012767  0x00002480 branch  0x00002f5e 
- 00012768  0x00002483 setarg  0x0000010b 
- 00012769  0x00002484 iadd  0x00000013 , 0x00000006 
- 00012770  0x00002486 arg  0x00000009 , 0x00000039 
- 00012771  0x00002487 branch  0x00007ff3 
- 00012772  0x0000248a setarg  0x00000001 
- 00012773  0x0000248b call  0x000032ab 
- 00012774  0x0000248e setarg  0x00000140 
- 00012775  0x0000248f arg  0x0000000e , 0x00000007 
- 00012776  0x00002490 branch  0x00007f08 
- 00012777  0x00002493 call  0x000032aa 
- 00012778  0x00002496 setarg  0x00000000 
- 00012779  0x00002497 arg  0x0000000e , 0x00000007 
- 00012780  0x00002498 branch  0x00007f08 
- 00012781  0x0000249c jam  0x00000010 , 0x00000d51 
- 00012782  0x0000249d fetch  0x00000001 , 0x00000d38 
- 00012783  0x0000249e set1  0x00000001 , 0x0000003f 
- 00012784  0x0000249f store  0x00000001 , 0x00000d38 
- 00012785  0x000024a0 rtn 
- 00012786  0x000024a3 arg  0x00000d74 , 0x00000005 
- 00012787  0x000024a4 call  0x000031e0 
- 00012788  0x000024a5 fetch  0x00000002 , 0x00000d75 
- 00012789  0x000024a6 ncall  0x00003209 , 0x00000034 
- 00012790  0x000024a7 fetch  0x00000002 , 0x00000d75 
- 00012791  0x000024a8 call  0x0000320e , 0x00000034 
- 00012792  0x000024a9 call  0x00002c7a 
- 00012793  0x000024aa fetch  0x00000003 , 0x00000d74 
- 00012794  0x000024ab arg  0x00000178 , 0x00000011 
- 00012795  0x000024ac call  0x000032c4 
- 00012796  0x000024ae setarg  0x0000017b 
- 00012797  0x000024af iadd  0x00000013 , 0x00000011 
- 00012798  0x000024b0 ifetcht  0x00000003 , 0x00000011 
- 00012799  0x000024b2 isub  0x00000002 , 0x0000003e 
- 00012800  0x000024b3 ncall  0x00003207 , 0x00000005 
- 00012801  0x000024b4 setarg  0x00000178 
- 00012802  0x000024b5 iadd  0x00000013 , 0x00000011 
- 00012803  0x000024b6 ifetch  0x00000003 , 0x00000011 
- 00012804  0x000024b8 arg  0x0000017b , 0x00000011 
- 00012805  0x000024b9 call  0x000032c4 
- 00012806  0x000024bb branch  0x00002f5e 
- 00012807  0x000024be jam  0x00000021 , 0x00000d52 
- 00012808  0x000024bf branch  0x000031b9 
- 00012809  0x000024c2 setarg  0x00000001 
- 00012810  0x000024c3 call  0x000032ae 
- 00012811  0x000024c6 setarg  0x00000140 
- 00012812  0x000024c7 arg  0x0000000c , 0x00000007 
- 00012813  0x000024c8 branch  0x00007f08 
- 00012814  0x000024cb call  0x000032ad 
- 00012815  0x000024ce setarg  0x00000000 
- 00012816  0x000024cf arg  0x0000000c , 0x00000007 
- 00012817  0x000024d0 branch  0x00007f08 
- 00012818  0x000024d3 call  0x000032bd 
- 00012819  0x000024d5 beq  0x00000001 , 0x00003216 
- 00012820  0x000024d6 beq  0x00000002 , 0x0000321b 
- 00012821  0x000024d7 rtn 
- 00012822  0x000024d9 setarg  0x0000010d 
- 00012823  0x000024da call  0x0000327e 
- 00012824  0x000024db arg  0x00000160 , 0x00000011 
- 00012825  0x000024dc call  0x000032bf 
- 00012826  0x000024df branch  0x0000322d 
- 00012827  0x000024e2 setarg  0x0000010d 
- 00012828  0x000024e3 call  0x0000327e 
- 00012829  0x000024e4 arg  0x00000164 , 0x00000011 
- 00012830  0x000024e5 call  0x000032bf 
- 00012831  0x000024e8 branch  0x0000322d 
- 00012832  0x000024eb call  0x00002c7a 
- 00012833  0x000024ec add  0x00000013 , 0x000000cd , 0x00000005 
- 00012834  0x000024ed istore  0x00000001 , 0x00000005 
- 00012835  0x000024ee rtn 
- 00012836  0x000024f1 call  0x00002c7a 
- 00012837  0x000024f2 add  0x00000013 , 0x000000be , 0x00000011 
- 00012838  0x000024f3 branch  0x0000327f 
- 00012839  0x000024f5 call  0x00002c7a 
- 00012840  0x000024f6 add  0x00000013 , 0x000000be , 0x00000005 
- 00012841  0x000024f7 branch  0x0000322d 
- 00012842  0x000024fa add  0x00000013 , 0x000000ae , 0x00000011 
- 00012843  0x000024fb branch  0x0000327f 
- 00012844  0x000024fd add  0x00000013 , 0x000000ae , 0x00000005 
- 00012845  0x000024ff istore  0x00000004 , 0x00000005 
- 00012846  0x00002500 rtn 
- 00012847  0x00002503 add  0x00000013 , 0x00000090 , 0x00000005 
- 00012848  0x00002504 branch  0x000032b4 
- 00012849  0x00002507 setarg  0x00000000 
- 00012850  0x00002509 call  0x00002c7a 
- 00012851  0x0000250a add  0x00000013 , 0x00000085 , 0x00000005 
- 00012852  0x0000250b branch  0x000032b4 
- 00012853  0x0000250e add  0x00000013 , 0x00000042 , 0x00000005 
- 00012854  0x0000250f branch  0x000032b4 
- 00012855  0x00002512 setarg  0x00000004 
- 00012856  0x00002514 add  0x00000013 , 0x000000cc , 0x00000005 
- 00012857  0x00002515 branch  0x000032b4 
- 00012858  0x00002518 add  0x00000013 , 0x00000087 , 0x00000011 
- 00012859  0x00002519 branch  0x000032d1 
- 00012860  0x0000251b add  0x00000013 , 0x00000087 , 0x00000005 
- 00012861  0x0000251c branch  0x000032b4 
- 00012862  0x0000251f setarg  0x00000002 
- 00012863  0x00002521 add  0x00000013 , 0x000000d0 , 0x00000005 
- 00012864  0x00002522 branch  0x000032b4 
- 00012865  0x00002525 setarg  0x00000001 
- 00012866  0x00002527 call  0x00002c7a 
- 00012867  0x00002528 add  0x00000013 , 0x000000ce , 0x00000005 
- 00012868  0x00002529 branch  0x000032b4 
- 00012869  0x0000252c call  0x00002c7a 
- 00012870  0x0000252d add  0x00000013 , 0x000000b4 , 0x00000011 
- 00012871  0x0000252e branch  0x000032d1 
- 00012872  0x00002530 setarg  0x00000001 
- 00012873  0x00002532 call  0x00002c7a 
- 00012874  0x00002533 add  0x00000013 , 0x000000b4 , 0x00000005 
- 00012875  0x00002534 branch  0x000032b4 
- 00012876  0x00002537 call  0x00002c7a 
- 00012877  0x00002538 add  0x00000013 , 0x000000b2 , 0x00000011 
- 00012878  0x00002539 branch  0x000032d1 
- 00012879  0x0000253b setarg  0x00000001 
- 00012880  0x0000253d call  0x00002c7a 
- 00012881  0x0000253e add  0x00000013 , 0x000000b2 , 0x00000005 
- 00012882  0x0000253f branch  0x000032b4 
- 00012883  0x00002542 call  0x00002c7a 
- 00012884  0x00002543 add  0x00000013 , 0x00000096 , 0x00000011 
- 00012885  0x00002544 branch  0x000032d1 
- 00012886  0x00002546 add  0x00000013 , 0x00000096 , 0x00000005 
- 00012887  0x00002547 branch  0x000032b4 
- 00012888  0x0000254a add  0x00000013 , 0x000000cf , 0x00000011 
- 00012889  0x0000254b branch  0x000032d1 
- 00012890  0x0000254d setarg  0x00000000 
- 00012891  0x0000254f add  0x00000013 , 0x000000cf , 0x00000005 
- 00012892  0x00002550 branch  0x000032b4 
- 00012893  0x00002553 add  0x00000013 , 0x000000d2 , 0x00000011 
- 00012894  0x00002554 branch  0x000032d1 
- 00012895  0x00002557 add  0x00000013 , 0x00000001 , 0x00000011 
- 00012896  0x00002558 branch  0x000032d1 
- 00012897  0x0000255b add  0x00000013 , 0x000000b5 , 0x00000011 
- 00012898  0x0000255c branch  0x000032d1 
- 00012899  0x0000255e setarg  0x00000000 
- 00012900  0x00002560 call  0x00002c7a 
- 00012901  0x00002561 add  0x00000013 , 0x000000b5 , 0x00000005 
- 00012902  0x00002562 branch  0x000032b4 
- 00012903  0x00002565 call  0x00002c7a 
- 00012904  0x00002566 add  0x00000013 , 0x000000fb , 0x00000011 
- 00012905  0x00002567 ifetch  0x00000001 , 0x00000011 
- 00012906  0x00002569 store  0x00000001 , 0x000041de 
- 00012907  0x0000256a rtn 
- 00012908  0x0000256d call  0x00002c7a 
- 00012909  0x0000256e fetch  0x00000001 , 0x000041de 
- 00012910  0x00002570 add  0x00000013 , 0x000000fb , 0x00000005 
- 00012911  0x00002571 branch  0x000032b4 
- 00012912  0x00002574 add  0x00000013 , 0x000000fc , 0x00000011 
- 00012913  0x00002575 branch  0x000032d1 
- 00012914  0x00002578 add  0x00000013 , 0x000000fe , 0x00000005 
- 00012915  0x00002579 branch  0x000032b4 
- 00012916  0x0000257c setarg  0x00000109 
- 00012917  0x0000257e iadd  0x00000013 , 0x00000011 
- 00012918  0x0000257f ifetcht  0x00000001 , 0x00000011 
- 00012919  0x00002580 rtn 
- 00012920  0x00002583 setarg  0x00000135 
- 00012921  0x00002584 branch  0x000032d0 
- 00012922  0x00002586 setarg  0x00000000 
- 00012923  0x00002588 arg  0x00000135 , 0x00000011 
- 00012924  0x00002589 branch  0x000032b3 
- 00012925  0x0000258c setarg  0x0000012b 
- 00012926  0x0000258e call  0x000032cd 
- 00012927  0x00002590 ifetch  0x00000004 , 0x00000011 
- 00012928  0x00002591 rtn 
- 00012929  0x00002594 setarg  0x0000015f 
- 00012930  0x00002595 branch  0x000032d0 
- 00012931  0x00002597 setarg  0x00000000 
- 00012932  0x00002599 arg  0x0000015f , 0x00000011 
- 00012933  0x0000259a branch  0x000032b3 
- 00012934  0x0000259d setarg  0x00000000 
- 00012935  0x0000259f arg  0x0000015c , 0x00000011 
- 00012936  0x000025a0 branch  0x000032b3 
- 00012937  0x000025a3 arg  0x0000012f , 0x00000011 
- 00012938  0x000025a4 branch  0x000032b3 
- 00012939  0x000025a7 setarg  0x00000108 
- 00012940  0x000025a8 branch  0x000032d0 
- 00012941  0x000025aa arg  0x00000108 , 0x00000011 
- 00012942  0x000025ab branch  0x000032b3 
- 00012943  0x000025ae setarg  0x00000105 
- 00012944  0x000025af branch  0x000032d0 
- 00012945  0x000025b1 setarg  0x00000000 
- 00012946  0x000025b3 arg  0x00000105 , 0x00000011 
- 00012947  0x000025b4 branch  0x000032b3 
- 00012948  0x000025b7 setarg  0x00000104 
- 00012949  0x000025b8 branch  0x000032d0 
- 00012950  0x000025ba setarg  0x00000000 
- 00012951  0x000025bc arg  0x00000104 , 0x00000011 
- 00012952  0x000025bd branch  0x000032b3 
- 00012953  0x000025c0 setarg  0x00000000 
- 00012954  0x000025c2 arg  0x0000013b , 0x00000011 
- 00012955  0x000025c3 branch  0x000032b3 
- 00012956  0x000025c5 setarg  0x00000001 
- 00012957  0x000025c6 branch  0x0000329a 
- 00012958  0x000025c9 setarg  0x0000010c 
- 00012959  0x000025ca call  0x000032cd 
- 00012960  0x000025cb ifetch  0x00000007 , 0x00000011 
- 00012961  0x000025cc rtn 
- 00012962  0x000025cf setarg  0x0000015e 
- 00012963  0x000025d0 branch  0x000032d0 
- 00012964  0x000025d2 setarg  0x00000000 
- 00012965  0x000025d4 arg  0x0000015e , 0x00000011 
- 00012966  0x000025d5 branch  0x000032b3 
- 00012967  0x000025d8 setarg  0x00000000 
- 00012968  0x000025da arg  0x00000180 , 0x00000011 
- 00012969  0x000025db branch  0x000032b3 
- 00012970  0x000025de setarg  0x00000000 
- 00012971  0x000025e0 arg  0x0000017e , 0x00000011 
- 00012972  0x000025e1 branch  0x000032b3 
- 00012973  0x000025e4 setarg  0x00000000 
- 00012974  0x000025e6 arg  0x0000017f , 0x00000011 
- 00012975  0x000025e7 branch  0x000032b3 
- 00012976  0x000025ea arg  0x00000102 , 0x00000011 
- 00012977  0x000025eb branch  0x000032b3 
- 00012978  0x000025ee arg  0x00000103 , 0x00000011 
- 00012979  0x000025f0 call  0x000032c7 
- 00012980  0x000025f2 istore  0x00000001 , 0x00000005 
- 00012981  0x000025f3 rtn 
- 00012982  0x000025f6 setarg  0x0000015d 
- 00012983  0x000025f7 branch  0x000032d0 
- 00012984  0x000025fa arg  0x0000015d , 0x00000011 
- 00012985  0x000025fb branch  0x000032b3 
- 00012986  0x000025fe setarg  0x0000018a 
- 00012987  0x000025ff call  0x000032d0 
- 00012988  0x00002600 branch  0x0000326a 
- 00012989  0x00002603 setarg  0x0000010c 
- 00012990  0x00002604 branch  0x000032d0 
- 00012991  0x00002607 copy  0x0000003f , 0x00000002 
- 00012992  0x00002608 copy  0x00000011 , 0x0000003f 
- 00012993  0x00002609 iadd  0x00000013 , 0x00000005 
- 00012994  0x0000260a copy  0x00000002 , 0x0000003f 
- 00012995  0x0000260b rtn 
- 00012996  0x0000260e call  0x000032bf 
- 00012997  0x00002610 istore  0x00000003 , 0x00000005 
- 00012998  0x00002611 rtn 
- 00012999  0x00002614 call  0x00002c7a 
- 00013000  0x00002616 copy  0x0000003f , 0x00000012 
- 00013001  0x00002617 copy  0x00000011 , 0x0000003f 
- 00013002  0x00002618 iadd  0x00000013 , 0x00000005 
- 00013003  0x00002619 copy  0x00000012 , 0x0000003f 
- 00013004  0x0000261a rtn 
- 00013005  0x0000261d call  0x00002c7a 
- 00013006  0x0000261e iadd  0x00000013 , 0x00000011 
- 00013007  0x0000261f rtn 
- 00013008  0x00002622 call  0x000032cd 
- 00013009  0x00002624 ifetch  0x00000001 , 0x00000011 
- 00013010  0x00002625 rtn 
- 00013011  0x00002628 call  0x000032cd 
- 00013012  0x00002629 ifetcht  0x00000004 , 0x00000011 
- 00013013  0x0000262a rtn 
- 00013014  0x0000262d setarg  0x00000000 
- 00013015  0x0000262e branch  0x000032b4 
- 00013016  0x00002633 bpatch  0x000000c4 , 0x00004018 
- 00013017  0x00002634 fetch  0x00000001 , 0x00004092 
- 00013018  0x00002635 branch  0x000032d8 , 0x00000034 
- 00013019  0x00002637 beq  0x00000004 , 0x00002f30 
- 00013020  0x00002638 beq  0x0000000f , 0x00003436 
- 00013021  0x00002639 beq  0x00000009 , 0x000045de 
- 00013022  0x0000263a beq  0x0000000a , 0x0000392a 
- 00013023  0x0000263b beq  0x0000000e , 0x000035bf 
- 00013024  0x0000263c beq  0x00000010 , 0x000044a4 
- 00013025  0x0000263d bbit1  0x00000006 , 0x00003d00 
- 00013026  0x0000263e rtn 
- 00013027  0x00002641 bpatch  0x000000c5 , 0x00004018 
- 00013028  0x00002642 jam  0x00000000 , 0x00000151 
- 00013029  0x00002643 jam  0x00000000 , 0x0000017f 
- 00013030  0x00002644 jam  0x00000000 , 0x00000180 
- 00013031  0x00002645 setarg  0x00000000 
- 00013032  0x00002646 store  0x00000005 , 0x000009ae 
- 00013033  0x00002647 fetch  0x00000001 , 0x00004092 
- 00013034  0x00002648 branch  0x000032e3 , 0x00000034 
- 00013035  0x00002649 beq  0x0000000a , 0x00003962 
- 00013036  0x0000264b rtn 
- 00013037  0x0000264f call  0x00007cd1 
- 00013038  0x00002650 call  0x00007d9c 
- 00013039  0x00002651 call  0x000032f6 
- 00013040  0x00002652 fetch  0x00000002 , 0x000041f3 
- 00013041  0x00002653 branch  0x00007f9c 
- 00013042  0x00002656 fetch  0x00000002 , 0x000041f1 
- 00013043  0x00002657 branch  0x00007f9c 
- 00013044  0x0000265a fetch  0x00000002 , 0x000041ef 
- 00013045  0x0000265b branch  0x00007f9c 
- 00013046  0x0000265e bpatch  0x000000c6 , 0x00004018 
- 00013047  0x00002660 arg  0x00004668 , 0x00000011 
- 00013048  0x00002661 call  0x00007fc4 
- 00013049  0x00002662 rtn  0x00000034 
- 00013050  0x00002664 copy  0x0000003f , 0x00000013 
- 00013051  0x00002665 call  0x000032ff 
- 00013052  0x00002666 branch  0x00003324 
- 00013053  0x00002669 arg  0x00000000 , 0x00000013 
- 00013054  0x0000266a rtn 
- 00013055  0x00002670 beq  0x00000001 , 0x00003311 
- 00013056  0x00002671 beq  0x00000010 , 0x00003357 
- 00013057  0x00002672 beq  0x00000005 , 0x00003335 
- 00013058  0x00002673 beq  0x00000012 , 0x0000333c 
- 00013059  0x00002674 beq  0x00000006 , 0x00003353 
- 00013060  0x00002675 beq  0x00000004 , 0x00003394 
- 00013061  0x00002676 beq  0x00000002 , 0x00003399 
- 00013062  0x00002677 beq  0x00000013 , 0x00003394 
- 00013063  0x00002678 beq  0x00000014 , 0x0000334b 
- 00013064  0x00002679 beq  0x00000015 , 0x0000334f 
- 00013065  0x0000267a beq  0x00000003 , 0x0000332e 
- 00013066  0x0000267b beq  0x0000000b , 0x00003340 
- 00013067  0x0000267c beq  0x0000000c , 0x00003347 
- 00013068  0x0000267e beq  0x00000016 , 0x0000335b 
- 00013069  0x0000267f beq  0x00000018 , 0x0000332a 
- 00013070  0x00002680 beq  0x0000002a , 0x0000331a 
- 00013071  0x00002681 beq  0x0000002b , 0x00003318 
- 00013072  0x00002682 rtn 
- 00013073  0x00002686 fetch  0x00000002 , 0x00004682 
- 00013074  0x00002687 set1  0x00000000 , 0x0000003f 
- 00013075  0x00002688 store  0x00000002 , 0x00004682 
- 00013076  0x00002689 fetch  0x00000002 , 0x0000420a 
- 00013077  0x0000268a set0  0x00000000 , 0x0000003f 
- 00013078  0x0000268b store  0x00000002 , 0x0000420a 
- 00013079  0x0000268c rtn 
- 00013080  0x0000268f jam  0x00000000 , 0x00000229 
- 00013081  0x00002690 rtn 
- 00013082  0x00002693 fetch  0x00000001 , 0x00000229 
- 00013083  0x00002694 increase  0x00000001 , 0x0000003f 
- 00013084  0x00002695 store  0x00000001 , 0x00000229 
- 00013085  0x00002696 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00013086  0x00002697 branch  0x000033df , 0x00000002 
- 00013087  0x00002698 jam  0x00000000 , 0x00000229 
- 00013088  0x00002699 fetch  0x00000002 , 0x0000420a 
- 00013089  0x0000269a set1  0x00000009 , 0x0000003f 
- 00013090  0x0000269b store  0x00000002 , 0x0000420a 
- 00013091  0x0000269c branch  0x000033e9 
- 00013092  0x0000269f fetch  0x00000002 , 0x000041f5 
- 00013093  0x000026a0 branch  0x00007f9c 
- 00013094  0x000026a3 fetch  0x00000002 , 0x000041e9 
- 00013095  0x000026a4 branch  0x00007f9c 
- 00013096  0x000026a7 fetch  0x00000002 , 0x000041ed 
- 00013097  0x000026a8 branch  0x00007f9c 
- 00013098  0x000026ab fetch  0x00000002 , 0x0000420a 
- 00013099  0x000026ac set1  0x00000001 , 0x0000003f 
- 00013100  0x000026ad store  0x00000002 , 0x0000420a 
- 00013101  0x000026ae branch  0x00003412 
- 00013102  0x000026b1 fetch  0x00000002 , 0x00004682 
- 00013103  0x000026b2 set1  0x00000007 , 0x0000003f 
- 00013104  0x000026b3 store  0x00000002 , 0x00004682 
- 00013105  0x000026b4 fetch  0x00000002 , 0x0000420a 
- 00013106  0x000026b5 set1  0x00000002 , 0x0000003f 
- 00013107  0x000026b6 store  0x00000002 , 0x0000420a 
- 00013108  0x000026b7 rtn 
- 00013109  0x000026ba fetch  0x00000002 , 0x00004682 
- 00013110  0x000026bb set1  0x00000001 , 0x0000003f 
- 00013111  0x000026bc store  0x00000002 , 0x00004682 
- 00013112  0x000026bd fetch  0x00000002 , 0x0000420a 
- 00013113  0x000026be set1  0x00000004 , 0x0000003f 
- 00013114  0x000026bf store  0x00000002 , 0x0000420a 
- 00013115  0x000026c0 rtn 
- 00013116  0x000026c3 fetch  0x00000002 , 0x00004682 
- 00013117  0x000026c4 set1  0x00000003 , 0x0000003f 
- 00013118  0x000026c5 store  0x00000002 , 0x00004682 
- 00013119  0x000026c6 rtn 
- 00013120  0x000026c9 fetch  0x00000002 , 0x00004682 
- 00013121  0x000026ca set1  0x00000005 , 0x0000003f 
- 00013122  0x000026cb store  0x00000002 , 0x00004682 
- 00013123  0x000026cc fetch  0x00000002 , 0x0000420a 
- 00013124  0x000026cd set1  0x00000003 , 0x0000003f 
- 00013125  0x000026ce store  0x00000002 , 0x0000420a 
- 00013126  0x000026cf rtn 
- 00013127  0x000026d2 fetch  0x00000002 , 0x00004682 
- 00013128  0x000026d3 set0  0x00000005 , 0x0000003f 
- 00013129  0x000026d4 store  0x00000002 , 0x00004682 
- 00013130  0x000026d5 rtn 
- 00013131  0x000026d8 fetch  0x00000002 , 0x00004682 
- 00013132  0x000026d9 set1  0x00000009 , 0x0000003f 
- 00013133  0x000026da store  0x00000002 , 0x00004682 
- 00013134  0x000026db rtn 
- 00013135  0x000026de fetch  0x00000002 , 0x00004682 
- 00013136  0x000026df set0  0x00000009 , 0x0000003f 
- 00013137  0x000026e0 store  0x00000002 , 0x00004682 
- 00013138  0x000026e1 branch  0x00003418 
- 00013139  0x000026e4 fetch  0x00000002 , 0x00004682 
- 00013140  0x000026e5 set1  0x00000002 , 0x0000003f 
- 00013141  0x000026e6 store  0x00000002 , 0x00004682 
- 00013142  0x000026e7 rtn 
- 00013143  0x000026ea fetch  0x00000002 , 0x0000420a 
- 00013144  0x000026eb set1  0x00000000 , 0x0000003f 
- 00013145  0x000026ec store  0x00000002 , 0x0000420a 
- 00013146  0x000026ed rtn 
- 00013147  0x000026f0 fetch  0x00000002 , 0x0000420a 
- 00013148  0x000026f1 set1  0x00000008 , 0x0000003f 
- 00013149  0x000026f2 store  0x00000002 , 0x0000420a 
- 00013150  0x000026f3 branch  0x000033e9 
- 00013151  0x000026f7 bpatch  0x000000c7 , 0x00004018 
- 00013152  0x000026f8 store  0x00000001 , 0x0000022a 
- 00013153  0x000026fa fetch  0x00000001 , 0x0000022a 
- 00013154  0x000026fb rtn  0x00000034 
- 00013155  0x000026fc increase  0xffffffff , 0x0000003f 
- 00013156  0x000026fd store  0x00000001 , 0x0000022a 
- 00013157  0x000026fe call  0x00007cdd 
- 00013158  0x000026ff call  0x000033d6 
- 00013159  0x00002700 call  0x00003387 
- 00013160  0x00002701 call  0x0000338d 
- 00013161  0x00002702 call  0x0000651b 
- 00013162  0x00002703 fetch  0x00000002 , 0x000041fd 
- 00013163  0x00002704 call  0x00007f9c 
- 00013164  0x00002705 branch  0x00003361 
- 00013165  0x0000270b ifetch  0x00000001 , 0x00000013 
- 00013166  0x0000270c rtn  0x00000034 
- 00013167  0x0000270d pincrease  0xffffffff 
- 00013168  0x0000270e istore  0x00000001 , 0x00000013 
- 00013169  0x0000270f nrtn  0x00000034 
- 00013170  0x00002710 copy  0x00000012 , 0x0000003f 
- 00013171  0x00002711 branch  0x00007f9c 
- 00013172  0x00002716 ifetch  0x00000002 , 0x00000013 
- 00013173  0x00002717 rtn  0x00000034 
- 00013174  0x00002718 pincrease  0xffffffff 
- 00013175  0x00002719 istore  0x00000002 , 0x00000013 
- 00013176  0x0000271a nrtn  0x00000034 
- 00013177  0x0000271b copy  0x00000012 , 0x0000003f 
- 00013178  0x0000271c branch  0x00007f9c 
- 00013179  0x0000271f fetcht  0x00000002 , 0x0000423f 
- 00013180  0x00002720 add  0x00000002 , 0x00000001 , 0x00000013 
- 00013181  0x00002721 arg  0x0000337f , 0x00000012 
- 00013182  0x00002722 branch  0x0000336d 
- 00013183  0x00002725 call  0x0000342d 
- 00013184  0x00002726 beq  0x00000001 , 0x00003382 
- 00013185  0x00002728 branch  0x0000340a 
- 00013186  0x0000272a setarg  0x00000002 
- 00013187  0x0000272b istore  0x00000001 , 0x00000013 
- 00013188  0x0000272c add  0x00000002 , 0x00000008 , 0x00000012 
- 00013189  0x0000272e ifetch  0x00000002 , 0x00000012 
- 00013190  0x0000272f branch  0x00007f9c 
- 00013191  0x00002732 arg  0x00004205 , 0x00000013 
- 00013192  0x00002733 arg  0x0000338a , 0x00000012 
- 00013193  0x00002734 branch  0x0000336d 
- 00013194  0x00002737 call  0x00002252 
- 00013195  0x00002738 branch  0x0000340e , 0x00000005 
- 00013196  0x00002739 rtn 
- 00013197  0x0000273d arg  0x0000467e , 0x00000013 
- 00013198  0x0000273e arg  0x00003390 , 0x00000012 
- 00013199  0x0000273f branch  0x00003374 
- 00013200  0x00002742 call  0x000033f0 
- 00013201  0x00002743 call  0x00003408 
- 00013202  0x00002744 fetch  0x00000002 , 0x000041f7 
- 00013203  0x00002745 branch  0x00007f9c 
- 00013204  0x00002749 call  0x000033ac 
- 00013205  0x0000274b fetch  0x00000002 , 0x00004682 
- 00013206  0x0000274c set0  0x00000007 , 0x0000003f 
- 00013207  0x0000274d store  0x00000002 , 0x00004682 
- 00013208  0x0000274e rtn 
- 00013209  0x00002751 jam  0x00000000 , 0x00004205 
- 00013210  0x00002752 fetch  0x00000002 , 0x00004682 
- 00013211  0x00002753 bbit1  0x00000007 , 0x0000339e 
- 00013212  0x00002754 isolate0  0x00000001 , 0x0000003f 
- 00013213  0x00002755 call  0x000032fd , 0x00000001 
- 00013214  0x00002757 bpatch  0x000000c8 , 0x00004019 
- 00013215  0x00002758 fetch  0x00000002 , 0x00004682 
- 00013216  0x00002759 set0  0x00000000 , 0x0000003f 
- 00013217  0x0000275a set0  0x00000001 , 0x0000003f 
- 00013218  0x0000275b set0  0x00000002 , 0x0000003f 
- 00013219  0x0000275c set0  0x00000003 , 0x0000003f 
- 00013220  0x0000275d set0  0x00000007 , 0x0000003f 
- 00013221  0x0000275e store  0x00000002 , 0x00004682 
- 00013222  0x0000275f branch  0x00003418 
- 00013223  0x00002762 call  0x000033a9 
- 00013224  0x00002763 branch  0x0000340a 
- 00013225  0x00002767 setarg  0x00000000 
- 00013226  0x00002768 store  0x00000002 , 0x00004208 
- 00013227  0x00002769 rtn 
- 00013228  0x0000276b setarg  0x00000000 
- 00013229  0x0000276c store  0x00000002 , 0x0000420a 
- 00013230  0x0000276d rtn 
- 00013231  0x00002770 fetch  0x00000002 , 0x0000420a 
- 00013232  0x00002771 store  0x00000002 , 0x00004208 
- 00013233  0x00002772 setarg  0x00000000 
- 00013234  0x00002773 store  0x00000002 , 0x0000420a 
- 00013235  0x00002774 rtn 
- 00013236  0x00002777 fetch  0x00000002 , 0x0000420a 
- 00013237  0x00002778 set1  0x00000007 , 0x0000003f 
- 00013238  0x00002779 store  0x00000002 , 0x00004208 
- 00013239  0x0000277a setarg  0x00000000 
- 00013240  0x0000277b store  0x00000002 , 0x0000420a 
- 00013241  0x0000277c rtn 
- 00013242  0x00002785 fetch  0x00000001 , 0x00004682 
- 00013243  0x00002786 isolate1  0x00000005 , 0x0000003f 
- 00013244  0x00002787 rtn 
- 00013245  0x00002790 setarg  0x0000aa55 
- 00013246  0x00002792 store  0x00000002 , 0x00000aaa 
- 00013247  0x00002793 bpatch  0x000000c9 , 0x00004019 
- 00013248  0x00002794 arg  0x00000002 , 0x00000002 
- 00013249  0x00002795 arg  0x00000aaa , 0x00000011 
- 00013250  0x00002796 arg  0x000000c3 , 0x00000012 
- 00013251  0x00002797 branch  0x00006606 
- 00013252  0x0000279b bpatch  0x000000ca , 0x00004019 
- 00013253  0x0000279c arg  0x00000002 , 0x00000002 
- 00013254  0x0000279d arg  0x00000a9a , 0x00000011 
- 00013255  0x0000279e arg  0x000000c3 , 0x00000012 
- 00013256  0x0000279f call  0x000065df 
- 00013257  0x000027a0 fetch  0x00000002 , 0x00000a9a 
- 00013258  0x000027a1 arg  0x0000aa55 , 0x00000002 
- 00013259  0x000027a2 isub  0x00000002 , 0x0000003e 
- 00013260  0x000027a3 rtn 
- 00013261  0x000027a7 fetch  0x00000001 , 0x0000455a 
- 00013262  0x000027a8 store  0x00000001 , 0x00004205 
- 00013263  0x000027a9 rtn 
- 00013264  0x000027ac arg  0x00000009 , 0x00000007 
- 00013265  0x000027ad branch  0x00002c32 
- 00013266  0x000027b0 arg  0x00000009 , 0x00000007 
- 00013267  0x000027b1 branch  0x00002c36 
- 00013268  0x000027b4 jam  0x00000005 , 0x00004206 
- 00013269  0x000027b5 branch  0x000033d0 
- 00013270  0x000027b8 arg  0x00004206 , 0x00000013 
- 00013271  0x000027b9 arg  0x000033d2 , 0x00000012 
- 00013272  0x000027ba branch  0x0000336d 
- 00013273  0x000027bd jam  0x00000001 , 0x00004363 
- 00013274  0x000027be rtn 
- 00013275  0x000027c1 jam  0x00000000 , 0x00004363 
- 00013276  0x000027c2 rtn 
- 00013277  0x000027c5 jam  0x0000000a , 0x00000a99 
- 00013278  0x000027c6 branch  0x00007d8f 
- 00013279  0x000027c9 jam  0x0000001d , 0x00000a99 
- 00013280  0x000027ca branch  0x00007d8f 
- 00013281  0x000027cd bpatch  0x000000cb , 0x00004019 
- 00013282  0x000027ce fetch  0x00000001 , 0x00004207 
- 00013283  0x000027cf store  0x00000001 , 0x0000016d 
- 00013284  0x000027d0 jam  0x00000001 , 0x00000228 
- 00013285  0x000027d1 jam  0x00000003 , 0x00000a99 
- 00013286  0x000027d2 branch  0x00007d8f 
- 00013287  0x000027d5 jam  0x0000001e , 0x00000a99 
- 00013288  0x000027d6 branch  0x00007d8f 
- 00013289  0x000027d9 jam  0x00000004 , 0x00000a99 
- 00013290  0x000027da branch  0x00007d8f 
- 00013291  0x000027dd fetch  0x00000002 , 0x00004687 
- 00013292  0x000027de store  0x00000002 , 0x0000467e 
- 00013293  0x000027e0 call  0x00003404 
- 00013294  0x000027e2 jam  0x00000001 , 0x00000a99 
- 00013295  0x000027e3 branch  0x00007d8f 
- 00013296  0x000027e6 setarg  0x00000000 
- 00013297  0x000027e7 store  0x00000002 , 0x0000467e 
- 00013298  0x000027e8 jam  0x00000002 , 0x00000a99 
- 00013299  0x000027e9 branch  0x00007d8f 
- 00013300  0x000027ec jam  0x0000000f , 0x00000a99 
- 00013301  0x000027ed branch  0x00007d8f 
- 00013302  0x000027f0 jam  0x00000010 , 0x00000a99 
- 00013303  0x000027f1 branch  0x00007d8f 
- 00013304  0x000027f4 jam  0x0000000e , 0x00000a99 
- 00013305  0x000027f5 branch  0x00007d8f 
- 00013306  0x000027f8 jam  0x0000000d , 0x00000a99 
- 00013307  0x000027f9 branch  0x00007d8f 
- 00013308  0x000027fc jam  0x00000017 , 0x00000a99 
- 00013309  0x000027fd branch  0x00007d8f 
- 00013310  0x00002800 jam  0x00000018 , 0x00000a99 
- 00013311  0x00002801 branch  0x00007d8f 
- 00013312  0x00002804 jam  0x00000016 , 0x00000a99 
- 00013313  0x00002805 branch  0x00007d8f 
- 00013314  0x00002808 jam  0x00000011 , 0x00000a99 
- 00013315  0x00002809 branch  0x00007d8f 
- 00013316  0x0000280c jam  0x00000015 , 0x00000a99 
- 00013317  0x0000280d branch  0x00007d8f 
- 00013318  0x00002810 jam  0x00000014 , 0x00000a99 
- 00013319  0x00002811 branch  0x00007d8f 
- 00013320  0x00002815 jam  0x00000013 , 0x00000a99 
- 00013321  0x00002816 branch  0x00007d8f 
- 00013322  0x00002819 jam  0x00000019 , 0x00000a99 
- 00013323  0x0000281a branch  0x00007d8f 
- 00013324  0x0000281d jam  0x00000006 , 0x00000a99 
- 00013325  0x0000281e branch  0x00007d8f 
- 00013326  0x00002821 jam  0x00000005 , 0x00000a99 
- 00013327  0x00002822 branch  0x00007d8f 
- 00013328  0x00002825 jam  0x0000001f , 0x00000a99 
- 00013329  0x00002826 branch  0x00007d8f 
- 00013330  0x00002829 jam  0x00000020 , 0x00000a99 
- 00013331  0x0000282a branch  0x00007d8f 
- 00013332  0x0000282d jam  0x00000025 , 0x00000a99 
- 00013333  0x0000282e branch  0x00007d8f 
- 00013334  0x00002831 set1  0x0000000d , 0x00000000 
- 00013335  0x00002832 rtn 
- 00013336  0x00002835 set0  0x0000000d , 0x00000000 
- 00013337  0x00002836 rtn 
- 00013338  0x0000284b call  0x0000342d 
- 00013339  0x0000284c beq  0x00000002 , 0x00003424 
- 00013340  0x0000284e setarg  0x00000001 
- 00013341  0x0000284f istore  0x00000001 , 0x00000013 
- 00013342  0x00002850 add  0x00000002 , 0x00000003 , 0x00000011 
- 00013343  0x00002851 add  0x00000002 , 0x00000006 , 0x00000012 
- 00013344  0x00002853 ifetcht  0x00000001 , 0x00000011 
- 00013345  0x00002854 increase  0x00000001 , 0x00000013 
- 00013346  0x00002855 istoret  0x00000001 , 0x00000013 
- 00013347  0x00002856 branch  0x00003385 
- 00013348  0x00002859 setarg  0x00000000 
- 00013349  0x0000285a istore  0x00000001 , 0x00000013 
- 00013350  0x0000285b fetch  0x00000002 , 0x00004682 
- 00013351  0x0000285c bbit0  0x00000009 , 0x00003429 
- 00013352  0x0000285d call  0x00003402 
- 00013353  0x0000285f fetcht  0x00000002 , 0x0000423f 
- 00013354  0x00002860 add  0x00000002 , 0x00000002 , 0x00000011 
- 00013355  0x00002861 add  0x00000002 , 0x00000004 , 0x00000012 
- 00013356  0x00002862 branch  0x00003420 
- 00013357  0x00002865 fetcht  0x00000002 , 0x0000423f 
- 00013358  0x00002866 add  0x00000002 , 0x00000000 , 0x00000013 
- 00013359  0x00002867 ifetch  0x00000001 , 0x00000013 
- 00013360  0x00002868 rtn 
- 00013361  0x0000286b call  0x0000342d 
- 00013362  0x0000286c bne  0x00000000 , 0x00003434 
- 00013363  0x0000286d branch  0x0000340a 
- 00013364  0x0000286f add  0x00000002 , 0x0000000a , 0x00000012 
- 00013365  0x00002870 branch  0x00003385 
- 00013366  0x00002873 rtn  0x0000002b 
- 00013367  0x00002874 jam  0x00000000 , 0x00008081 
- 00013368  0x00002875 setarg  0x00003463 
- 00013369  0x00002876 store  0x00000002 , 0x000041eb 
- 00013370  0x00002877 setarg  0x0000696c 
- 00013371  0x00002878 store  0x00000002 , 0x000041ed 
- 00013372  0x00002879 setarg  0x000034f5 
- 00013373  0x0000287a store  0x00000002 , 0x000041f3 
- 00013374  0x0000287b setarg  0x000034f4 
- 00013375  0x0000287c store  0x00000002 , 0x000041ef 
- 00013376  0x0000287d setarg  0x0000347e 
- 00013377  0x0000287e store  0x00000002 , 0x000041f5 
- 00013378  0x0000287f setarg  0x000034b2 
- 00013379  0x00002880 store  0x00000002 , 0x000041fd 
- 00013380  0x00002881 setarg  0x00003465 
- 00013381  0x00002882 store  0x00000002 , 0x000041fb 
- 00013382  0x00002883 setarg  0x00003470 
- 00013383  0x00002884 store  0x00000002 , 0x000041e9 
- 00013384  0x00002885 setarg  0x00003501 
- 00013385  0x00002886 store  0x00000002 , 0x000041f9 
- 00013386  0x00002887 bpatch  0x000000cc , 0x00004019 
- 00013387  0x00002888 call  0x0000359b 
- 00013388  0x00002889 call  0x00006948 
- 00013389  0x0000288a call  0x000035ad 
- 00013390  0x0000288b call  0x00007d08 
- 00013391  0x0000288c call  0x00007cd3 
- 00013392  0x0000288d setarg  0x0000350b 
- 00013393  0x0000288e store  0x00000002 , 0x00004766 
- 00013394  0x0000288f setarg  0x000034fc 
- 00013395  0x00002890 store  0x00000002 , 0x0000475d 
- 00013396  0x00002891 setarg  0x000034f8 
- 00013397  0x00002892 store  0x00000002 , 0x0000475f 
- 00013398  0x00002893 setarg  0x0000346c 
- 00013399  0x00002894 store  0x00000002 , 0x00004761 
- 00013400  0x00002895 setarg  0x000035a2 
- 00013401  0x00002896 store  0x00000002 , 0x000046a9 
- 00013402  0x00002897 setarg  0x000035a4 
- 00013403  0x00002898 store  0x00000002 , 0x000046ab 
- 00013404  0x00002899 setarg  0x000035a9 
- 00013405  0x0000289a store  0x00000002 , 0x000046b4 
- 00013406  0x0000289b setarg  0x000035a6 
- 00013407  0x0000289c store  0x00000002 , 0x000046b6 
- 00013408  0x0000289d fetch  0x00000002 , 0x00004682 
- 00013409  0x0000289e rtnbit1  0x0000000c 
- 00013410  0x0000289f branch  0x0000340a 
- 00013411  0x000028a2 call  0x00003586 
- 00013412  0x000028a3 branch  0x0000340a 
- 00013413  0x000028a6 call  0x00005892 
- 00013414  0x000028a7 nrtn  0x00000034 
- 00013415  0x000028a8 arg  0x00000b06 , 0x00000011 
- 00013416  0x000028a9 call  0x00007e54 
- 00013417  0x000028aa nrtn  0x00000028 
- 00013418  0x000028ab arg  0x00000b06 , 0x00000006 
- 00013419  0x000028ac branch  0x00004746 
- 00013420  0x000028af fetch  0x00000002 , 0x00004797 
- 00013421  0x000028b0 store  0x00000002 , 0x00004791 
- 00013422  0x000028b1 jam  0x00000001 , 0x00004753 
- 00013423  0x000028b2 branch  0x0000358f 
- 00013424  0x000028b5 fetch  0x00000001 , 0x0000479d 
- 00013425  0x000028b6 beq  0x00000001 , 0x00003479 
- 00013426  0x000028b7 fetch  0x00000002 , 0x00004682 
- 00013427  0x000028b8 bbit0  0x00000009 , 0x00003479 
- 00013428  0x000028b9 fetch  0x00000001 , 0x0000479e 
- 00013429  0x000028ba beq  0x00000001 , 0x000033d0 
- 00013430  0x000028bb fetch  0x00000001 , 0x00004700 
- 00013431  0x000028bc nbranch  0x000033d0 , 0x00000034 
- 00013432  0x000028bd branch  0x000033d2 
- 00013433  0x000028c0 fetch  0x00000001 , 0x0000479b 
- 00013434  0x000028c1 fetcht  0x00000001 , 0x0000479c 
- 00013435  0x000028c2 ior  0x00000002 , 0x0000003f 
- 00013436  0x000028c3 beq  0x00000001 , 0x000033d0 
- 00013437  0x000028c4 branch  0x000033d2 
- 00013438  0x000028c7 copy  0x00000013 , 0x0000003f 
- 00013439  0x000028c8 beq  0x0000002d , 0x00003431 
- 00013440  0x000028c9 beq  0x00000010 , 0x0000341a 
- 00013441  0x000028ca beq  0x00000014 , 0x000034df 
- 00013442  0x000028cb beq  0x00000015 , 0x000034e8 
- 00013443  0x000028cc beq  0x00000040 , 0x00003485 
- 00013444  0x000028cd rtn 
- 00013445  0x000028cf fetch  0x00000002 , 0x00004509 
- 00013446  0x000028d0 beq  0x00000001 , 0x0000348c 
- 00013447  0x000028d2 fetch  0x00000002 , 0x000043d8 
- 00013448  0x000028d3 branch  0x000034a2 , 0x00000034 
- 00013449  0x000028d5 jam  0x00000002 , 0x0000478a 
- 00013450  0x000028d6 jam  0x0000003c , 0x0000478f 
- 00013451  0x000028d7 rtn 
- 00013452  0x000028da fetch  0x00000002 , 0x0000449a 
- 00013453  0x000028db branch  0x000034a0 , 0x00000034 
- 00013454  0x000028dd jam  0x00000001 , 0x0000478a 
- 00013455  0x000028de fetcht  0x00000002 , 0x000047b4 
- 00013456  0x000028df fetch  0x00000002 , 0x00004496 
- 00013457  0x000028e0 iadd  0x00000002 , 0x0000003f 
- 00013458  0x000028e1 store  0x00000002 , 0x00004496 
- 00013459  0x000028e2 copy  0x0000003f , 0x00000011 
- 00013460  0x000028e3 fetch  0x00000002 , 0x00004498 
- 00013461  0x000028e4 iadd  0x00000002 , 0x0000003f 
- 00013462  0x000028e5 store  0x00000002 , 0x00004498 
- 00013463  0x000028e6 iadd  0x00000011 , 0x0000003f 
- 00013464  0x000028e7 rshift  0x0000003f , 0x00000002 
- 00013465  0x000028e8 fetch  0x00000002 , 0x000047c0 
- 00013466  0x000028e9 idiv  0x00000002 
- 00013467  0x000028ea call  0x00007f86 
- 00013468  0x000028eb quotient  0x0000003f 
- 00013469  0x000028ec store  0x00000002 , 0x0000449a 
- 00013470  0x000028ed jam  0x00000001 , 0x00004790 
- 00013471  0x000028ee rtn 
- 00013472  0x000028f0 jam  0x00000003 , 0x0000478a 
- 00013473  0x000028f1 rtn 
- 00013474  0x000028f4 jam  0x00000000 , 0x00004172 
- 00013475  0x000028f5 jam  0x00000000 , 0x00004790 
- 00013476  0x000028f6 fetch  0x00000002 , 0x000043d6 
- 00013477  0x000028f7 fetcht  0x00000002 , 0x000047be 
- 00013478  0x000028f8 isub  0x00000002 , 0x0000003e 
- 00013479  0x000028f9 setflag  0x00000002 , 0x00000000 , 0x00000011 
- 00013480  0x000028fa fetch  0x00000002 , 0x000047c0 
- 00013481  0x000028fb fetcht  0x00000002 , 0x000043d6 
- 00013482  0x000028fc isub  0x00000002 , 0x0000003f 
- 00013483  0x000028fd setflag  0x00000002 , 0x00000001 , 0x00000011 
- 00013484  0x000028fe compare  0x00000003 , 0x00000011 , 0x00000003 
- 00013485  0x000028ff rtn  0x00000001 
- 00013486  0x00002900 fetch  0x00000008 , 0x000047be 
- 00013487  0x00002901 store  0x00000008 , 0x00004496 
- 00013488  0x00002902 jam  0x00000001 , 0x00004790 
- 00013489  0x00002903 rtn 
- 00013490  0x00002908 call  0x0000337b 
- 00013491  0x00002909 call  0x000034b9 
- 00013492  0x0000290a call  0x000034be 
- 00013493  0x0000290b call  0x000034d5 
- 00013494  0x0000290c call  0x000034ca 
- 00013495  0x0000290d call  0x000034c4 
- 00013496  0x0000290e branch  0x000034d9 
- 00013497  0x00002912 arg  0x00004799 , 0x00000013 
- 00013498  0x00002913 arg  0x000034bc , 0x00000012 
- 00013499  0x00002914 branch  0x0000336d 
- 00013500  0x00002916 jam  0x00000000 , 0x0000479a 
- 00013501  0x00002917 rtn 
- 00013502  0x00002919 arg  0x00004793 , 0x00000013 
- 00013503  0x0000291a arg  0x000034c1 , 0x00000012 
- 00013504  0x0000291b branch  0x00003374 
- 00013505  0x0000291d arg  0x000046bf , 0x00000013 
- 00013506  0x0000291e arg  0x0000469e , 0x00000012 
- 00013507  0x0000291f branch  0x00003591 
- 00013508  0x00002923 arg  0x0000478f , 0x00000013 
- 00013509  0x00002924 arg  0x000034c7 , 0x00000012 
- 00013510  0x00002925 branch  0x0000336d 
- 00013511  0x00002928 fetch  0x00000002 , 0x0000449a 
- 00013512  0x00002929 store  0x00000001 , 0x00004172 
- 00013513  0x0000292a rtn 
- 00013514  0x0000292c arg  0x00004790 , 0x00000013 
- 00013515  0x0000292d arg  0x000034cd , 0x00000012 
- 00013516  0x0000292e branch  0x0000336d 
- 00013517  0x00002930 fetch  0x00000001 , 0x0000043f 
- 00013518  0x00002931 compare  0x00000000 , 0x0000003f , 0x00000060 
- 00013519  0x00002932 nbranch  0x000034d3 , 0x00000001 
- 00013520  0x00002933 jam  0x00000001 , 0x0000478a 
- 00013521  0x00002934 call  0x00003416 
- 00013522  0x00002935 branch  0x00005abf 
- 00013523  0x00002937 jam  0x00000001 , 0x00004790 
- 00013524  0x00002938 rtn 
- 00013525  0x0000293b arg  0x00004791 , 0x00000013 
- 00013526  0x0000293c arg  0x000034d8 , 0x00000012 
- 00013527  0x0000293d branch  0x00003374 
- 00013528  0x00002941 branch  0x0000341a 
- 00013529  0x00002946 arg  0x0000478d , 0x00000013 
- 00013530  0x00002947 arg  0x000034dc , 0x00000012 
- 00013531  0x00002948 branch  0x00003374 
- 00013532  0x0000294a fetch  0x00000002 , 0x000047a7 
- 00013533  0x0000294b store  0x00000002 , 0x0000478d 
- 00013534  0x0000294c branch  0x000035af 
- 00013535  0x00002950 fetch  0x00000002 , 0x000047a7 
- 00013536  0x00002951 store  0x00000002 , 0x0000478d 
- 00013537  0x00002952 setarg  0x00000000 
- 00013538  0x00002953 store  0x00000002 , 0x00004793 
- 00013539  0x00002954 store  0x00000002 , 0x00004791 
- 00013540  0x00002955 call  0x0000355c 
- 00013541  0x00002956 call  0x00003586 
- 00013542  0x00002957 jam  0x00000000 , 0x00004172 
- 00013543  0x00002958 branch  0x000033f8 
- 00013544  0x0000295e setarg  0x00000000 
- 00013545  0x0000295f store  0x00000004 , 0x0000478d 
- 00013546  0x00002960 store  0x00000003 , 0x0000478a 
- 00013547  0x00002961 store  0x00000002 , 0x00004509 
- 00013548  0x00002963 jam  0x00000001 , 0x000047a0 
- 00013549  0x00002964 fetch  0x00000002 , 0x00004797 
- 00013550  0x00002965 store  0x00000002 , 0x00004791 
- 00013551  0x00002966 call  0x00007e38 
- 00013552  0x00002967 fetch  0x00000001 , 0x00004759 
- 00013553  0x00002968 rtneq  0x00000000 
- 00013554  0x00002969 call  0x0000358f 
- 00013555  0x0000296a branch  0x0000356e 
- 00013556  0x0000296f branch  0x00003508 
- 00013557  0x00002973 fetch  0x00000001 , 0x00004759 
- 00013558  0x00002974 rtnne  0x00000002 
- 00013559  0x00002975 branch  0x00003508 
- 00013560  0x0000297b arg  0x000046cd , 0x00000013 
- 00013561  0x0000297c call  0x00003582 
- 00013562  0x0000297d arg  0x000046c6 , 0x00000013 
- 00013563  0x0000297f branch  0x00003584 
- 00013564  0x00002982 jam  0x00000000 , 0x0000436e 
- 00013565  0x00002983 arg  0x000046db , 0x00000013 
- 00013566  0x00002984 call  0x00003582 
- 00013567  0x00002985 arg  0x000046d4 , 0x00000013 
- 00013568  0x00002986 branch  0x000034fb 
- 00013569  0x00002989 fetch  0x00000001 , 0x00000477 
- 00013570  0x0000298a beq  0x00000012 , 0x00003504 
- 00013571  0x0000298b rtn 
- 00013572  0x0000298d fetch  0x00000002 , 0x00000478 
- 00013573  0x0000298f beq  0x0000000d , 0x00003536 
- 00013574  0x00002990 beq  0x0000000b , 0x00003571 
- 00013575  0x00002991 rtn 
- 00013576  0x00002997 fetch  0x00000001 , 0x00004753 
- 00013577  0x00002998 rtn  0x00000034 
- 00013578  0x00002999 branch  0x00006978 
- 00013579  0x0000299e copy  0x00000011 , 0x0000003f 
- 00013580  0x0000299f branch  0x00003510 , 0x00000034 
- 00013581  0x000029a1 copy  0x00000007 , 0x0000003f 
- 00013582  0x000029a2 beq  0x00000000 , 0x00003513 
- 00013583  0x000029a3 rtn 
- 00013584  0x000029a5 copy  0x00000007 , 0x0000003f 
- 00013585  0x000029a6 beq  0x00000000 , 0x0000351b 
- 00013586  0x000029a7 rtn 
- 00013587  0x000029aa jam  0x00000001 , 0x0000479d 
- 00013588  0x000029ab arg  0x000046f7 , 0x00000013 
- 00013589  0x000029ac call  0x00003582 
- 00013590  0x000029ad arg  0x000046f0 , 0x00000013 
- 00013591  0x000029ae call  0x00003584 
- 00013592  0x000029af fetch  0x00000002 , 0x00004682 
- 00013593  0x000029b0 bbit0  0x00000009 , 0x00003532 
- 00013594  0x000029b1 branch  0x00003521 
- 00013595  0x000029b4 jam  0x00000000 , 0x0000479d 
- 00013596  0x000029b5 branch  0x0000351d 
- 00013597  0x000029ba fetch  0x00000001 , 0x0000479a 
- 00013598  0x000029bb rtnne  0x00000001 
- 00013599  0x000029bc jam  0x00000005 , 0x00004799 
- 00013600  0x000029bd rtn 
- 00013601  0x000029c0 fetch  0x00000001 , 0x0000479a 
- 00013602  0x000029c1 pincrease  0x00000001 
- 00013603  0x000029c2 store  0x00000001 , 0x0000479a 
- 00013604  0x000029c3 beq  0x00000001 , 0x00003527 
- 00013605  0x000029c4 beq  0x00000002 , 0x0000352b 
- 00013606  0x000029c5 rtn 
- 00013607  0x000029c7 call  0x0000355c 
- 00013608  0x000029c8 jam  0x00000001 , 0x00004771 
- 00013609  0x000029c9 arg  0x0000476c , 0x00000013 
- 00013610  0x000029ca branch  0x00003544 
- 00013611  0x000029cc jam  0x00000000 , 0x0000479a 
- 00013612  0x000029cd jam  0x00000002 , 0x00004771 
- 00013613  0x000029ce arg  0x0000476c , 0x00000013 
- 00013614  0x000029cf call  0x00003544 
- 00013615  0x000029d0 fetch  0x00000001 , 0x0000479e 
- 00013616  0x000029d1 beq  0x00000001 , 0x00003551 
- 00013617  0x000029d2 rtn 
- 00013618  0x000029d5 fetch  0x00000002 , 0x00004797 
- 00013619  0x000029d6 store  0x00000002 , 0x00004791 
- 00013620  0x000029d7 call  0x0000355c 
- 00013621  0x000029d8 branch  0x0000358f 
- 00013622  0x000029dc bpatch  0x000000cd , 0x00004019 
- 00013623  0x000029dd call  0x000036fc 
- 00013624  0x000029de ifetch  0x00000001 , 0x00000011 
- 00013625  0x000029df beq  0x00000003 , 0x0000353c 
- 00013626  0x000029e0 beq  0x00000007 , 0x00003540 
- 00013627  0x000029e1 rtn 
- 00013628  0x000029e4 fetch  0x00000001 , 0x0000479e 
- 00013629  0x000029e5 beq  0x00000000 , 0x00003551 
- 00013630  0x000029e6 beq  0x00000001 , 0x0000355c 
- 00013631  0x000029e7 rtn 
- 00013632  0x000029ea ifetch  0x00000001 , 0x00000012 
- 00013633  0x000029eb beq  0x00000001 , 0x00003564 
- 00013634  0x000029ec beq  0x00000000 , 0x00003569 
- 00013635  0x000029ed rtn 
- 00013636  0x000029f5 bpatch  0x000000ce , 0x00004019 
- 00013637  0x000029f6 fetch  0x00000001 , 0x0000478b 
- 00013638  0x000029f7 isolate1  0x00000000 , 0x0000003f 
- 00013639  0x000029f8 nrtn  0x00000001 
- 00013640  0x000029f9 add  0x00000013 , 0x00000006 , 0x00000006 
- 00013641  0x000029fa ifetch  0x00000002 , 0x00000006 
- 00013642  0x000029fb byteswap  0x0000003f , 0x0000003f 
- 00013643  0x000029fc add  0x0000003f , 0x00000005 , 0x00000039 
- 00013644  0x000029fd add  0x00000013 , 0x00000003 , 0x00000006 
- 00013645  0x000029fe call  0x000036f0 
- 00013646  0x000029ff istore  0x00000001 , 0x00000006 
- 00013647  0x00002a00 copy  0x00000013 , 0x00000011 
- 00013648  0x00002a01 branch  0x00007e3d 
- 00013649  0x00002a08 fetch  0x00000001 , 0x00004759 
- 00013650  0x00002a09 rtn  0x00000034 
- 00013651  0x00002a0a jam  0x00000001 , 0x0000479e 
- 00013652  0x00002a0b arg  0x000046e9 , 0x00000013 
- 00013653  0x00002a0c call  0x00003582 
- 00013654  0x00002a0d arg  0x000046e2 , 0x00000013 
- 00013655  0x00002a0e call  0x00003584 
- 00013656  0x00002a0f jam  0x00000004 , 0x00004780 
- 00013657  0x00002a10 jam  0x00000001 , 0x00004783 
- 00013658  0x00002a11 arg  0x0000477b , 0x00000013 
- 00013659  0x00002a12 branch  0x00003544 
- 00013660  0x00002a14 fetch  0x00000001 , 0x0000479e 
- 00013661  0x00002a15 rtn  0x00000034 
- 00013662  0x00002a16 jam  0x00000000 , 0x0000479e 
- 00013663  0x00002a17 call  0x00003586 
- 00013664  0x00002a18 jam  0x00000004 , 0x00004780 
- 00013665  0x00002a19 jam  0x00000000 , 0x00004783 
- 00013666  0x00002a1a arg  0x0000477b , 0x00000013 
- 00013667  0x00002a1b branch  0x00003544 
- 00013668  0x00002a1e jam  0x00000001 , 0x0000479f 
- 00013669  0x00002a1f jam  0x00000007 , 0x00004780 
- 00013670  0x00002a20 jam  0x00000001 , 0x00004783 
- 00013671  0x00002a21 arg  0x0000477b , 0x00000013 
- 00013672  0x00002a22 branch  0x00003544 
- 00013673  0x00002a24 jam  0x00000000 , 0x0000479f 
- 00013674  0x00002a25 jam  0x00000007 , 0x00004780 
- 00013675  0x00002a26 jam  0x00000000 , 0x00004783 
- 00013676  0x00002a27 arg  0x0000477b , 0x00000013 
- 00013677  0x00002a28 branch  0x00003544 
- 00013678  0x00002a2a fetch  0x00000001 , 0x0000479f 
- 00013679  0x00002a2b rtn  0x00000034 
- 00013680  0x00002a2c branch  0x00003551 
- 00013681  0x00002a2f ifetch  0x00000002 , 0x00000011 
- 00013682  0x00002a30 store  0x00000002 , 0x0000478b 
- 00013683  0x00002a31 isolate1  0x00000000 , 0x0000003f 
- 00013684  0x00002a32 nrtn  0x00000001 
- 00013685  0x00002a33 fetch  0x00000001 , 0x000047a0 
- 00013686  0x00002a34 rtn  0x00000034 
- 00013687  0x00002a35 jam  0x00000000 , 0x000047a0 
- 00013688  0x00002a36 fetch  0x00000008 , 0x000047b6 
- 00013689  0x00002a37 store  0x00000008 , 0x00004496 
- 00013690  0x00002a38 jam  0x00000002 , 0x00004790 
- 00013691  0x00002a39 call  0x000035af 
- 00013692  0x00002a3a call  0x000035b9 
- 00013693  0x00002a3b jam  0x00000007 , 0x00004780 
- 00013694  0x00002a3c fetch  0x00000001 , 0x0000479f 
- 00013695  0x00002a3d store  0x00000001 , 0x00004783 
- 00013696  0x00002a3e arg  0x0000477b , 0x00000013 
- 00013697  0x00002a3f branch  0x00003544 
- 00013698  0x00002a44 arg  0x00000001 , 0x00000011 
- 00013699  0x00002a45 branch  0x00003585 
- 00013700  0x00002a47 arg  0x00000000 , 0x00000011 
- 00013701  0x00002a49 branch  0x0000358c 
- 00013702  0x00002a4c arg  0x00000000 , 0x00000011 
- 00013703  0x00002a4d call  0x00007d19 
- 00013704  0x00002a4e arg  0x00000001 , 0x00000011 
- 00013705  0x00002a4f call  0x00007d19 
- 00013706  0x00002a50 fetch  0x00000001 , 0x000047a1 
- 00013707  0x00002a51 branch  0x000069d7 
- 00013708  0x00002a54 call  0x00007d04 
- 00013709  0x00002a55 arg  0x00000007 , 0x00000039 
- 00013710  0x00002a56 branch  0x00007d26 
- 00013711  0x00002a5b arg  0x000046b8 , 0x00000013 
- 00013712  0x00002a5c arg  0x0000469a , 0x00000012 
- 00013713  0x00002a5e call  0x00003596 
- 00013714  0x00002a5f call  0x00003584 
- 00013715  0x00002a60 fetch  0x00000002 , 0x00004795 
- 00013716  0x00002a61 store  0x00000002 , 0x00004793 
- 00013717  0x00002a62 branch  0x000033fa 
- 00013718  0x00002a65 ifetch  0x00000002 , 0x00000012 
- 00013719  0x00002a66 store  0x00000002 , 0x00004154 
- 00013720  0x00002a67 ifetch  0x00000002 , 0x00000006 
- 00013721  0x00002a68 store  0x00000002 , 0x00004482 
- 00013722  0x00002a69 rtn 
- 00013723  0x00002a6c arg  0x00000000 , 0x00000011 
- 00013724  0x00002a6d call  0x000069a6 
- 00013725  0x00002a6e fetch  0x00000006 , 0x000047a1 
- 00013726  0x00002a6f store  0x00000006 , 0x00000a9a 
- 00013727  0x00002a70 call  0x000069ae 
- 00013728  0x00002a71 fetch  0x00000001 , 0x000047a1 
- 00013729  0x00002a72 branch  0x000069d7 
- 00013730  0x00002a75 jam  0x00000001 , 0x0000479b 
- 00013731  0x00002a76 rtn 
- 00013732  0x00002a78 jam  0x00000000 , 0x0000479b 
- 00013733  0x00002a79 rtn 
- 00013734  0x00002a7e jam  0x00000000 , 0x0000479c 
- 00013735  0x00002a7f fetch  0x00000001 , 0x000047a1 
- 00013736  0x00002a80 branch  0x000069d7 
- 00013737  0x00002a83 jam  0x00000001 , 0x0000479c 
- 00013738  0x00002a84 fetch  0x00000006 , 0x000047a1 
- 00013739  0x00002a85 store  0x00000006 , 0x00000a9a 
- 00013740  0x00002a86 branch  0x000069ae 
- 00013741  0x00002a8b jam  0x00000000 , 0x0000422d 
- 00013742  0x00002a8c branch  0x000068a8 
- 00013743  0x00002a8f call  0x000068eb 
- 00013744  0x00002a90 call  0x00006908 
- 00013745  0x00002a91 store  0x00000002 , 0x000047b0 
- 00013746  0x00002a92 arg  0x000047aa , 0x00000011 
- 00013747  0x00002a93 call  0x00006930 
- 00013748  0x00002a94 store  0x00000001 , 0x000047a9 
- 00013749  0x00002a95 beq  0x00000000 , 0x000035be 
- 00013750  0x00002a96 sub  0x0000003f , 0x00000064 , 0x0000003e 
- 00013751  0x00002a97 nbranch  0x000035bc , 0x00000002 
- 00013752  0x00002a98 store  0x00000001 , 0x00004783 
- 00013753  0x00002a9a jam  0x00000005 , 0x00004780 
- 00013754  0x00002a9b arg  0x0000477b , 0x00000013 
- 00013755  0x00002a9c branch  0x00003544 
- 00013756  0x00002a9e jam  0x00000064 , 0x00004783 
- 00013757  0x00002a9f branch  0x000035b9 
- 00013758  0x00002aa2 branch  0x0000341a 
- 00013759  0x00002aa7 rtn  0x0000002b 
- 00013760  0x00002aa8 hfetch  0x00000001 , 0x00008081 
- 00013761  0x00002aa9 and_into  0x000000f0 , 0x0000003f 
- 00013762  0x00002aaa hstore  0x00000001 , 0x00008081 
- 00013763  0x00002aab setarg  0x00003631 
- 00013764  0x00002aac store  0x00000002 , 0x000041eb 
- 00013765  0x00002aae setarg  0x00003633 
- 00013766  0x00002aaf store  0x00000002 , 0x000041ed 
- 00013767  0x00002ab1 setarg  0x0000340a 
- 00013768  0x00002ab2 store  0x00000002 , 0x000041f7 
- 00013769  0x00002ab4 setarg  0x00003635 
- 00013770  0x00002ab5 store  0x00000002 , 0x000041f3 
- 00013771  0x00002ab7 setarg  0x0000364b 
- 00013772  0x00002ab8 store  0x00000002 , 0x000041f5 
- 00013773  0x00002aba setarg  0x000033d0 
- 00013774  0x00002abb store  0x00000002 , 0x000041e9 
- 00013775  0x00002abd setarg  0x000036f6 
- 00013776  0x00002abe store  0x00000002 , 0x000041f9 
- 00013777  0x00002ac0 setarg  0x0000367a 
- 00013778  0x00002ac1 store  0x00000002 , 0x000041fd 
- 00013779  0x00002ac3 call  0x00002c7a 
- 00013780  0x00002ac4 setarg  0x00003722 
- 00013781  0x00002ac5 add  0x00000013 , 0x000000de , 0x00000005 
- 00013782  0x00002ac6 istore  0x00000002 , 0x00000005 
- 00013783  0x00002ac8 setarg  0x000035ed 
- 00013784  0x00002ac9 store  0x00000002 , 0x0000475b 
- 00013785  0x00002acb setarg  0x000035ef 
- 00013786  0x00002acc store  0x00000002 , 0x0000475f 
- 00013787  0x00002ace bpatch  0x000000cf , 0x00004019 
- 00013788  0x00002acf call  0x00003628 
- 00013789  0x00002ad0 call  0x00007e38 
- 00013790  0x00002ad1 jam  0x00000002 , 0x00004172 
- 00013791  0x00002ad2 jam  0x00000000 , 0x000049f6 
- 00013792  0x00002ad3 fetch  0x00000001 , 0x000047cb 
- 00013793  0x00002ad4 store  0x00000001 , 0x0000469a 
- 00013794  0x00002ad5 beq  0x00000000 , 0x000035ee 
- 00013795  0x00002ad6 fetch  0x00000001 , 0x000047cc 
- 00013796  0x00002ad7 store  0x00000001 , 0x00004686 
- 00013797  0x00002ad8 jam  0x00000000 , 0x0000436e 
- 00013798  0x00002ada call  0x0000360f 
- 00013799  0x00002adb call  0x00007cd3 
- 00013800  0x00002adc call  0x00007cdd 
- 00013801  0x00002add jam  0x00000001 , 0x000047f3 
- 00013802  0x00002ade fetch  0x00000002 , 0x00004682 
- 00013803  0x00002adf rtnbit1  0x0000000c 
- 00013804  0x00002ae0 branch  0x0000340a 
- 00013805  0x00002ae3 branch  0x0000360f 
- 00013806  0x00002ae6 jam  0x00000002 , 0x000047f3 
- 00013807  0x00002ae8 jam  0x00000001 , 0x0000436e 
- 00013808  0x00002ae9 call  0x0000360f 
- 00013809  0x00002aea arg  0x00000000 , 0x00000011 
- 00013810  0x00002aeb call  0x00007d1e 
- 00013811  0x00002aed setarg  0x00000020 
- 00013812  0x00002aee call  0x000046f0 
- 00013813  0x00002af0 arg  0x000043b7 , 0x00000005 
- 00013814  0x00002af1 fetch  0x00000001 , 0x000044a0 
- 00013815  0x00002af3 and  0x0000003f , 0x000000f0 , 0x00000002 
- 00013816  0x00002af4 rshift4  0x00000002 , 0x00000002 
- 00013817  0x00002af5 call  0x00003609 
- 00013818  0x00002af6 istoret  0x00000001 , 0x00000005 
- 00013819  0x00002af7 and  0x0000003f , 0x0000000f , 0x00000002 
- 00013820  0x00002af8 call  0x00003609 
- 00013821  0x00002af9 istoret  0x00000001 , 0x00000005 
- 00013822  0x00002afa call  0x000057a6 
- 00013823  0x00002afb fetcht  0x00000001 , 0x000043af 
- 00013824  0x00002afc copy  0x00000002 , 0x00000039 
- 00013825  0x00002afd arg  0x00004372 , 0x00000005 
- 00013826  0x00002afe arg  0x000043b0 , 0x00000006 
- 00013827  0x00002aff call  0x00007f01 
- 00013828  0x00002b01 fetcht  0x00000001 , 0x000043af 
- 00013829  0x00002b02 copy  0x00000002 , 0x00000039 
- 00013830  0x00002b03 arg  0x00004392 , 0x00000005 
- 00013831  0x00002b04 arg  0x000043b0 , 0x00000006 
- 00013832  0x00002b05 branch  0x00007f01 
- 00013833  0x00002b07 sub  0x00000002 , 0x00000009 , 0x0000003e 
- 00013834  0x00002b08 branch  0x0000360d , 0x00000002 
- 00013835  0x00002b09 add  0x00000002 , 0x00000037 , 0x00000002 
- 00013836  0x00002b0a rtn 
- 00013837  0x00002b0c add  0x00000002 , 0x00000030 , 0x00000002 
- 00013838  0x00002b0d rtn 
- 00013839  0x00002b10 fetch  0x00000001 , 0x000047c0 
- 00013840  0x00002b11 bne  0x000000ff , 0x00003621 
- 00013841  0x00002b13 fetch  0x00000001 , 0x000047be 
- 00013842  0x00002b14 bne  0x000000ff , 0x00003624 
- 00013843  0x00002b16 fetch  0x00000001 , 0x000047c9 
- 00013844  0x00002b17 bne  0x000000ff , 0x00003626 
- 00013845  0x00002b19 fetch  0x00000001 , 0x0000472c 
- 00013846  0x00002b1a copy  0x0000003f , 0x00000039 
- 00013847  0x00002b1b setarg  0x0000472d 
- 00013848  0x00002b1c copy  0x0000003f , 0x00000011 
- 00013849  0x00002b1e copy  0x00000011 , 0x00000006 
- 00013850  0x00002b1f ifetch  0x00000001 , 0x00000006 
- 00013851  0x00002b20 copy  0x00000006 , 0x00000011 
- 00013852  0x00002b21 beq  0x000000ff , 0x0000361f 
- 00013853  0x00002b22 copy  0x0000003f , 0x00000002 
- 00013854  0x00002b23 call  0x0000680e 
- 00013855  0x00002b25 loop  0x00003619 
- 00013856  0x00002b27 rtn 
- 00013857  0x00002b29 fetch  0x00000008 , 0x000047c0 
- 00013858  0x00002b2a store  0x00000008 , 0x0000472f 
- 00013859  0x00002b2b branch  0x00003611 
- 00013860  0x00002b2d store  0x00000001 , 0x0000472d 
- 00013861  0x00002b2e branch  0x00003613 
- 00013862  0x00002b30 store  0x00000001 , 0x0000472e 
- 00013863  0x00002b31 branch  0x00003615 
- 00013864  0x00002b35 arg  0x00000000 , 0x00000011 
- 00013865  0x00002b36 call  0x000069a6 
- 00013866  0x00002b37 call  0x000037e4 
- 00013867  0x00002b38 call  0x00002c7d 
- 00013868  0x00002b39 branch  0x0000362d 
- 00013869  0x00002b3c jam  0x00000064 , 0x000047cf 
- 00013870  0x00002b3d fetch  0x00000001 , 0x000047c9 
- 00013871  0x00002b3e store  0x00000001 , 0x00004744 
- 00013872  0x00002b3f branch  0x000068a8 
- 00013873  0x00002b42 call  0x00006835 
- 00013874  0x00002b43 branch  0x0000696c 
- 00013875  0x00002b46 branch  0x0000696c 
- 00013876  0x00002b4b branch  0x00006978 
- 00013877  0x00002b4e call  0x00003642 
- 00013878  0x00002b4f call  0x000037ee 
- 00013879  0x00002b50 call  0x00003639 
- 00013880  0x00002b51 branch  0x00003634 
- 00013881  0x00002b54 fetch  0x00000002 , 0x00004682 
- 00013882  0x00002b55 rtnbit1  0x00000009 
- 00013883  0x00002b56 fetch  0x00000001 , 0x000049f6 
- 00013884  0x00002b57 beq  0x00000001 , 0x0000363e 
- 00013885  0x00002b58 rtn 
- 00013886  0x00002b5a fetch  0x00000001 , 0x000047ea 
- 00013887  0x00002b5b rtneq  0x00000001 
- 00013888  0x00002b5c jam  0x00000001 , 0x000047ea 
- 00013889  0x00002b5d branch  0x00003654 
- 00013890  0x00002b60 fetch  0x00000002 , 0x00004682 
- 00013891  0x00002b61 rtnbit0  0x00000009 
- 00013892  0x00002b62 call  0x00005892 
- 00013893  0x00002b63 nrtn  0x00000034 
- 00013894  0x00002b64 arg  0x00004718 , 0x00000011 
- 00013895  0x00002b65 call  0x00007e54 
- 00013896  0x00002b66 nrtn  0x00000028 
- 00013897  0x00002b67 arg  0x00004718 , 0x00000006 
- 00013898  0x00002b68 branch  0x00004746 
- 00013899  0x00002b6b copy  0x00000013 , 0x0000003f 
- 00013900  0x00002b6c beq  0x0000002d , 0x00003431 
- 00013901  0x00002b6d beq  0x00000010 , 0x0000341a 
- 00013902  0x00002b6e beq  0x00000014 , 0x00003651 
- 00013903  0x00002b6f beq  0x00000015 , 0x00003660 
- 00013904  0x00002b70 rtn 
- 00013905  0x00002b73 setarg  0x00000000 
- 00013906  0x00002b74 call  0x00003220 
- 00013907  0x00002b75 branch  0x00003656 
- 00013908  0x00002b77 fetch  0x00000002 , 0x000047eb 
- 00013909  0x00002b78 store  0x00000002 , 0x000047ed 
- 00013910  0x00002b7a jam  0x00000014 , 0x000047ce 
- 00013911  0x00002b7b jam  0x00000000 , 0x00004091 
- 00013912  0x00002b7c call  0x000033f8 
- 00013913  0x00002b7d call  0x00003416 
- 00013914  0x00002b7e fetch  0x00000001 , 0x000047bd 
- 00013915  0x00002b7f beq  0x00000001 , 0x0000365e 
- 00013916  0x00002b81 arg  0x00000000 , 0x00000011 
- 00013917  0x00002b82 branch  0x00007d14 
- 00013918  0x00002b84 arg  0x00000000 , 0x00000011 
- 00013919  0x00002b85 branch  0x00007d19 
- 00013920  0x00002b88 setarg  0x00000002 
- 00013921  0x00002b89 call  0x00003220 
- 00013922  0x00002b8b setarg  0x00000000 
- 00013923  0x00002b8c store  0x00000005 , 0x0000479c 
- 00013924  0x00002b8d setarg  0x00000004 
- 00013925  0x00002b8e call  0x000069d7 
- 00013926  0x00002b8f setarg  0x00000005 
- 00013927  0x00002b90 call  0x000069d7 
- 00013928  0x00002b91 setarg  0x00000014 
- 00013929  0x00002b92 call  0x000069d7 
- 00013930  0x00002b93 setarg  0x00000015 
- 00013931  0x00002b94 call  0x000069d7 
- 00013932  0x00002b95 setarg  0x00000016 
- 00013933  0x00002b96 call  0x000069d7 
- 00013934  0x00002b97 setarg  0x00000007 
- 00013935  0x00002b98 call  0x000069d7 
- 00013936  0x00002b99 call  0x00007e38 
- 00013937  0x00002b9a jam  0x0000000a , 0x0000475e 
- 00013938  0x00002b9b jam  0x0000000a , 0x00004760 
- 00013939  0x00002b9c jam  0x0000000a , 0x00004762 
- 00013940  0x00002b9e jam  0x00000002 , 0x00004172 
- 00013941  0x00002b9f arg  0x00000000 , 0x00000011 
- 00013942  0x00002ba0 call  0x00007d1e 
- 00013943  0x00002ba2 setarg  0x00000020 
- 00013944  0x00002ba3 call  0x000046f0 
- 00013945  0x00002ba4 branch  0x000033fa 
- 00013946  0x00002ba8 call  0x0000373b 
- 00013947  0x00002ba9 call  0x0000373e 
- 00013948  0x00002baa call  0x00003741 
- 00013949  0x00002bab call  0x0000337b 
- 00013950  0x00002bac call  0x000036c8 
- 00013951  0x00002bad call  0x000036a1 
- 00013952  0x00002bae call  0x0000368a 
- 00013953  0x00002baf call  0x00003683 
- 00013954  0x00002bb0 branch  0x0000368f 
- 00013955  0x00002bb3 arg  0x0000479a , 0x00000013 
- 00013956  0x00002bb4 arg  0x00003686 , 0x00000012 
- 00013957  0x00002bb5 branch  0x0000336d 
- 00013958  0x00002bb7 call  0x00003847 
- 00013959  0x00002bb8 nrtn  0x00000001 
- 00013960  0x00002bb9 jam  0x00000001 , 0x0000479b 
- 00013961  0x00002bba rtn 
- 00013962  0x00002bbd arg  0x000047ed , 0x00000013 
- 00013963  0x00002bbe arg  0x0000368d , 0x00000012 
- 00013964  0x00002bbf branch  0x00003374 
- 00013965  0x00002bc1 jam  0x00000002 , 0x000047ea 
- 00013966  0x00002bc2 branch  0x00003662 
- 00013967  0x00002bc5 arg  0x000047f1 , 0x00000013 
- 00013968  0x00002bc6 arg  0x00003692 , 0x00000012 
- 00013969  0x00002bc7 branch  0x0000336d 
- 00013970  0x00002bc9 fetch  0x00000001 , 0x000047f2 
- 00013971  0x00002bca branch  0x0000369e , 0x00000034 
- 00013972  0x00002bcb jam  0x00000002 , 0x000047f1 
- 00013973  0x00002bcc jam  0x00000000 , 0x000047f2 
- 00013974  0x00002bcd setarg  0x00000a02 
- 00013975  0x00002bce store  0x00000002 , 0x00004752 
- 00013976  0x00002bcf fetch  0x00000001 , 0x000047b9 
- 00013977  0x00002bd0 beq  0x00000003 , 0x0000369b 
- 00013978  0x00002bd2 branch  0x00003762 
- 00013979  0x00002bd4 setarg  0x00000a02 
- 00013980  0x00002bd5 store  0x00000002 , 0x00004754 
- 00013981  0x00002bd6 branch  0x00003762 
- 00013982  0x00002bd8 setarg  0x00000000 
- 00013983  0x00002bd9 store  0x00000004 , 0x00004752 
- 00013984  0x00002bda branch  0x00003762 
- 00013985  0x00002bdd fetch  0x00000001 , 0x000047c8 
- 00013986  0x00002bde rtn  0x00000034 
- 00013987  0x00002bdf fetch  0x00000002 , 0x00004682 
- 00013988  0x00002be0 bbit0  0x00000009 , 0x000036c6 
- 00013989  0x00002be1 arg  0x000047ce , 0x00000013 
- 00013990  0x00002be2 arg  0x000036a8 , 0x00000012 
- 00013991  0x00002be3 branch  0x0000336d 
- 00013992  0x00002be5 fetch  0x00000001 , 0x000047cd 
- 00013993  0x00002be6 store  0x00000001 , 0x000047ce 
- 00013994  0x00002be7 fetch  0x00000001 , 0x000047d1 
- 00013995  0x00002be8 nrtn  0x00000034 
- 00013996  0x00002bea call  0x000068eb 
- 00013997  0x00002beb call  0x00006908 
- 00013998  0x00002bec store  0x00000002 , 0x000047e8 
- 00013999  0x00002bed arg  0x000047e2 , 0x00000011 
- 00014000  0x00002bee call  0x00006930 
- 00014001  0x00002bef fetcht  0x00000001 , 0x000047cf 
- 00014002  0x00002bf0 isub  0x00000002 , 0x0000003e 
- 00014003  0x00002bf1 branch  0x000036b6 , 0x00000002 
- 00014004  0x00002bf2 store  0x00000001 , 0x000047cf 
- 00014005  0x00002bf3 copy  0x0000003f , 0x00000002 
- 00014006  0x00002bf5 storet  0x00000001 , 0x000047d0 
- 00014007  0x00002bf6 fetch  0x00000001 , 0x000047ca 
- 00014008  0x00002bf7 isub  0x00000002 , 0x0000003e 
- 00014009  0x00002bf8 call  0x000036c1 , 0x00000002 
- 00014010  0x00002bf9 storet  0x00000001 , 0x000047db 
- 00014011  0x00002bfa arg  0x00000006 , 0x00000039 
- 00014012  0x00002bfb arg  0x000047d6 , 0x00000006 
- 00014013  0x00002bfc call  0x000036f0 
- 00014014  0x00002bfd store  0x00000001 , 0x000047dc 
- 00014015  0x00002bfe arg  0x000047d3 , 0x00000011 
- 00014016  0x00002bff branch  0x00007e3d 
- 00014017  0x00002c01 fetch  0x00000001 , 0x000047d2 
- 00014018  0x00002c02 nrtn  0x00000034 
- 00014019  0x00002c03 jam  0x00000001 , 0x000047d2 
- 00014020  0x00002c04 arg  0x00000001 , 0x00000011 
- 00014021  0x00002c05 branch  0x00007d1e 
- 00014022  0x00002c07 arg  0x00000001 , 0x00000011 
- 00014023  0x00002c08 branch  0x00007d19 
- 00014024  0x00002c0b arg  0x000047a4 , 0x00000013 
- 00014025  0x00002c0c arg  0x000036cb , 0x00000012 
- 00014026  0x00002c0d branch  0x0000336d 
- 00014027  0x00002c0f jam  0x00000005 , 0x000047a4 
- 00014028  0x00002c10 jam  0x00000000 , 0x000047a6 
- 00014029  0x00002c11 fetch  0x00000001 , 0x000047a5 
- 00014030  0x00002c12 beq  0x00000001 , 0x000036ee 
- 00014031  0x00002c13 beq  0x00000000 , 0x000036ec 
- 00014032  0x00002c15 arg  0x0000479c , 0x00000006 
- 00014033  0x00002c16 copy  0x00000006 , 0x00000011 
- 00014034  0x00002c17 arg  0x00000008 , 0x00000039 
- 00014035  0x00002c19 copy  0x00000011 , 0x00000006 
- 00014036  0x00002c1a ifetch  0x00000001 , 0x00000006 
- 00014037  0x00002c1b copy  0x00000006 , 0x00000011 
- 00014038  0x00002c1c beq  0x00000000 , 0x000036e3 
- 00014039  0x00002c1d beq  0x00000001 , 0x000036e6 
- 00014040  0x00002c1e beq  0x00000002 , 0x000036e9 
- 00014041  0x00002c20 fetch  0x00000001 , 0x000047a6 
- 00014042  0x00002c21 increase  0x00000001 , 0x0000003f 
- 00014043  0x00002c22 store  0x00000001 , 0x000047a6 
- 00014044  0x00002c23 loop  0x000036d3 
- 00014045  0x00002c24 rtn 
- 00014046  0x00002c26 fetch  0x00000001 , 0x000047a6 
- 00014047  0x00002c27 arg  0x000047c0 , 0x00000012 
- 00014048  0x00002c28 iadd  0x00000012 , 0x00000012 
- 00014049  0x00002c29 ifetcht  0x00000001 , 0x00000012 
- 00014050  0x00002c2a rtn 
- 00014051  0x00002c2c call  0x000036de 
- 00014052  0x00002c2d call  0x00006825 
- 00014053  0x00002c2e branch  0x000036d9 
- 00014054  0x00002c30 call  0x000036de 
- 00014055  0x00002c31 call  0x00006829 
- 00014056  0x00002c32 branch  0x000036d9 
- 00014057  0x00002c34 fetch  0x00000001 , 0x000047a5 
- 00014058  0x00002c35 beq  0x00000001 , 0x000036e3 
- 00014059  0x00002c36 branch  0x000036e6 
- 00014060  0x00002c38 jam  0x00000001 , 0x000047a5 
- 00014061  0x00002c39 branch  0x000036d0 
- 00014062  0x00002c3b jam  0x00000000 , 0x000047a5 
- 00014063  0x00002c3c branch  0x000036d0 
- 00014064  0x00002c41 arg  0x00000000 , 0x00000011 
- 00014065  0x00002c43 ifetch  0x00000001 , 0x00000006 
- 00014066  0x00002c44 iadd  0x00000011 , 0x00000011 
- 00014067  0x00002c45 loop  0x000036f1 
- 00014068  0x00002c47 and  0x00000011 , 0x000000ff , 0x0000003f 
- 00014069  0x00002c48 rtn 
- 00014070  0x00002c4b fetch  0x00000001 , 0x00000477 
- 00014071  0x00002c4c beq  0x00000012 , 0x000036f9 
- 00014072  0x00002c4d rtn 
- 00014073  0x00002c4f fetch  0x00000002 , 0x00000478 
- 00014074  0x00002c50 beq  0x00000014 , 0x00003710 
- 00014075  0x00002c51 rtn 
- 00014076  0x00002c5e bpatch  0x000000d0 , 0x0000401a 
- 00014077  0x00002c5f ifetch  0x00000005 , 0x00000011 
- 00014078  0x00002c60 store  0x00000005 , 0x00000b12 
- 00014079  0x00002c61 fetch  0x00000002 , 0x00000b12 
- 00014080  0x00002c62 arg  0x00006b5a , 0x00000002 
- 00014081  0x00002c63 isub  0x00000002 , 0x0000003e 
- 00014082  0x00002c64 nrtn  0x00000005 
- 00014083  0x00002c65 fetch  0x00000002 , 0x00000b15 
- 00014084  0x00002c66 byteswap  0x0000003f , 0x0000003f 
- 00014085  0x00002c67 store  0x00000002 , 0x00000b15 
- 00014086  0x00002c68 copy  0x0000003f , 0x00000039 
- 00014087  0x00002c69 increase  0x00000005 , 0x00000011 
- 00014088  0x00002c6a copy  0x00000011 , 0x00000006 
- 00014089  0x00002c6b arg  0x00000b17 , 0x00000005 
- 00014090  0x00002c6c call  0x00007f01 
- 00014091  0x00002c6d ifetch  0x00000001 , 0x00000006 
- 00014092  0x00002c6e store  0x00000001 , 0x00000b21 
- 00014093  0x00002c6f arg  0x00000b14 , 0x00000011 
- 00014094  0x00002c70 arg  0x00000b17 , 0x00000012 
- 00014095  0x00002c71 rtn 
- 00014096  0x00002c74 setarg  0x00000000 
- 00014097  0x00002c75 store  0x00000005 , 0x00004752 
- 00014098  0x00002c76 store  0x00000005 , 0x00004757 
- 00014099  0x00002c77 call  0x000036fc 
- 00014100  0x00002c78 copy  0x00000012 , 0x00000006 
- 00014101  0x00002c79 arg  0x00004752 , 0x00000005 
- 00014102  0x00002c7a arg  0x0000000a , 0x00000039 
- 00014103  0x00002c7b call  0x00007f01 
- 00014104  0x00002c7d bpatch  0x000000d1 , 0x0000401a 
- 00014105  0x00002c7e ifetch  0x00000001 , 0x00000011 
- 00014106  0x00002c7f beq  0x00000002 , 0x0000374a 
- 00014107  0x00002c80 beq  0x00000003 , 0x0000375c 
- 00014108  0x00002c81 beq  0x00000004 , 0x00003762 
- 00014109  0x00002c82 beq  0x00000005 , 0x00003762 
- 00014110  0x00002c83 beq  0x00000006 , 0x000037b1 
- 00014111  0x00002c84 beq  0x00000007 , 0x00003849 
- 00014112  0x00002c85 beq  0x00000008 , 0x0000384c 
- 00014113  0x00002c86 rtn 
- 00014114  0x00002c89 fetch  0x00000002 , 0x00004682 
- 00014115  0x00002c8a rtnbit1  0x00000009 
- 00014116  0x00002c8c fetch  0x00000002 , 0x000047eb 
- 00014117  0x00002c8d store  0x00000002 , 0x000047ed 
- 00014118  0x00002c8f jam  0x00000001 , 0x000049f6 
- 00014119  0x00002c91 setarg  0x0000010c 
- 00014120  0x00002c92 call  0x000032cd 
- 00014121  0x00002c93 call  0x00003710 
- 00014122  0x00002c95 fetch  0x00000001 , 0x00000b14 
- 00014123  0x00002c96 beq  0x00000004 , 0x0000372e 
- 00014124  0x00002c97 beq  0x00000005 , 0x0000372e 
- 00014125  0x00002c98 rtn 
- 00014126  0x00002c9a fetch  0x00000001 , 0x00004752 
- 00014127  0x00002c9b ncall  0x00003735 , 0x00000034 
- 00014128  0x00002c9c fetch  0x00000001 , 0x00004754 
- 00014129  0x00002c9d ncall  0x00003737 , 0x00000034 
- 00014130  0x00002c9e fetch  0x00000001 , 0x00004756 
- 00014131  0x00002c9f ncall  0x00003739 , 0x00000034 
- 00014132  0x00002ca0 rtn 
- 00014133  0x00002ca3 jam  0x00000005 , 0x000049f3 
- 00014134  0x00002ca4 rtn 
- 00014135  0x00002ca6 jam  0x00000005 , 0x000049f4 
- 00014136  0x00002ca7 rtn 
- 00014137  0x00002ca9 jam  0x00000005 , 0x000049f5 
- 00014138  0x00002caa rtn 
- 00014139  0x00002cad arg  0x000049f3 , 0x00000013 
- 00014140  0x00002cae arg  0x00003744 , 0x00000012 
- 00014141  0x00002caf branch  0x0000336d 
- 00014142  0x00002cb1 arg  0x000049f4 , 0x00000013 
- 00014143  0x00002cb2 arg  0x00003746 , 0x00000012 
- 00014144  0x00002cb3 branch  0x0000336d 
- 00014145  0x00002cb5 arg  0x000049f5 , 0x00000013 
- 00014146  0x00002cb6 arg  0x00003748 , 0x00000012 
- 00014147  0x00002cb7 branch  0x0000336d 
- 00014148  0x00002cba jam  0x00000000 , 0x00004752 
- 00014149  0x00002cbb branch  0x00003762 
- 00014150  0x00002cbd jam  0x00000000 , 0x00004754 
- 00014151  0x00002cbe branch  0x00003762 
- 00014152  0x00002cc0 jam  0x00000000 , 0x00004756 
- 00014153  0x00002cc1 branch  0x00003762 
- 00014154  0x00002cc7 call  0x0000374c 
- 00014155  0x00002cc8 branch  0x0000374f 
- 00014156  0x00002cca fetch  0x00000001 , 0x00004752 
- 00014157  0x00002ccb store  0x00000001 , 0x0000475f 
- 00014158  0x00002ccc branch  0x00003773 
- 00014159  0x00002cce fetch  0x00000001 , 0x0000475e 
- 00014160  0x00002ccf call  0x00003754 
- 00014161  0x00002cd0 fetch  0x00000001 , 0x00004753 
- 00014162  0x00002cd1 store  0x00000001 , 0x0000475d 
- 00014163  0x00002cd2 branch  0x00003770 
- 00014164  0x00002cd4 beq  0x00000002 , 0x00003758 
- 00014165  0x00002cd5 beq  0x00000003 , 0x0000375a 
- 00014166  0x00002cd6 store  0x00000001 , 0x0000475e 
- 00014167  0x00002cd7 rtn 
- 00014168  0x00002cd9 jam  0x00000005 , 0x0000475e 
- 00014169  0x00002cda rtn 
- 00014170  0x00002cdc jam  0x0000000a , 0x0000475e 
- 00014171  0x00002cdd rtn 
- 00014172  0x00002cdf fetch  0x00000001 , 0x00004752 
- 00014173  0x00002ce0 call  0x00003754 
- 00014174  0x00002ce1 fetch  0x00000001 , 0x0000475e 
- 00014175  0x00002ce2 call  0x0000379e 
- 00014176  0x00002ce3 call  0x000037a1 
- 00014177  0x00002ce4 branch  0x000069c4 
- 00014178  0x00002ce7 fetch  0x00000001 , 0x000047f0 
- 00014179  0x00002ce8 nrtn  0x00000034 
- 00014180  0x00002ce9 fetch  0x00000006 , 0x00004752 
- 00014181  0x00002cea store  0x00000006 , 0x0000475d 
- 00014182  0x00002ceb fetch  0x00000001 , 0x0000475e 
- 00014183  0x00002cec fetcht  0x00000001 , 0x00004760 
- 00014184  0x00002ced iand  0x00000002 , 0x0000003f 
- 00014185  0x00002cee fetcht  0x00000001 , 0x00004762 
- 00014186  0x00002cef iand  0x00000002 , 0x0000003f 
- 00014187  0x00002cf0 call  0x00003779 , 0x00000034 
- 00014188  0x00002cf1 bpatch  0x000000d2 , 0x0000401a 
- 00014189  0x00002cf2 call  0x00003770 
- 00014190  0x00002cf3 call  0x00003773 
- 00014191  0x00002cf4 branch  0x00003776 
- 00014192  0x00002cf6 arg  0x00004763 , 0x00000012 
- 00014193  0x00002cf7 arg  0x0000475d , 0x00000006 
- 00014194  0x00002cf8 branch  0x0000377b 
- 00014195  0x00002cfa arg  0x0000476b , 0x00000012 
- 00014196  0x00002cfb arg  0x0000475f , 0x00000006 
- 00014197  0x00002cfc branch  0x0000377b 
- 00014198  0x00002cfe arg  0x00004773 , 0x00000012 
- 00014199  0x00002cff arg  0x00004761 , 0x00000006 
- 00014200  0x00002d00 branch  0x0000377b 
- 00014201  0x00002d02 jam  0x00000000 , 0x000047d1 
- 00014202  0x00002d03 rtn 
- 00014203  0x00002d06 ifetch  0x00000001 , 0x00000006 
- 00014204  0x00002d07 beq  0x00000000 , 0x00003787 
- 00014205  0x00002d08 beq  0x00000001 , 0x00003780 
- 00014206  0x00002d09 beq  0x00000002 , 0x00003782 
- 00014207  0x00002d0a rtn 
- 00014208  0x00002d0c jam  0x00000000 , 0x0000477b 
- 00014209  0x00002d0d branch  0x00003783 
- 00014210  0x00002d0f jam  0x00000001 , 0x0000477b 
- 00014211  0x00002d10 ifetch  0x00000001 , 0x00000006 
- 00014212  0x00002d11 store  0x00000001 , 0x0000477d 
- 00014213  0x00002d12 ifetch  0x00000008 , 0x00000012 
- 00014214  0x00002d13 branch  0x0000378c 
- 00014215  0x00002d16 ifetch  0x00000001 , 0x00000012 
- 00014216  0x00002d17 call  0x000069d7 
- 00014217  0x00002d18 increase  0x00000001 , 0x00000012 
- 00014218  0x00002d19 ifetch  0x00000001 , 0x00000012 
- 00014219  0x00002d1a branch  0x000069d7 
- 00014220  0x00002d1c store  0x00000008 , 0x0000477e 
- 00014221  0x00002d1d jam  0x00000001 , 0x000047d1 
- 00014222  0x00002d1e fetch  0x00000001 , 0x0000477b 
- 00014223  0x00002d1f beq  0x00000000 , 0x0000379a 
- 00014224  0x00002d21 fetch  0x00000001 , 0x0000477f 
- 00014225  0x00002d22 store  0x00000001 , 0x00004780 
- 00014226  0x00002d23 fetch  0x00000001 , 0x0000477e 
- 00014227  0x00002d25 call  0x000069d7 
- 00014228  0x00002d26 fetch  0x00000001 , 0x0000477d 
- 00014229  0x00002d27 call  0x0000379e 
- 00014230  0x00002d28 store  0x00000001 , 0x00004785 
- 00014231  0x00002d29 fetch  0x00000006 , 0x00004780 
- 00014232  0x00002d2a store  0x00000006 , 0x00000a9a 
- 00014233  0x00002d2b branch  0x000069ae 
- 00014234  0x00002d2d fetch  0x00000001 , 0x0000477e 
- 00014235  0x00002d2e store  0x00000001 , 0x00004780 
- 00014236  0x00002d2f fetch  0x00000001 , 0x0000477f 
- 00014237  0x00002d30 branch  0x00003793 
- 00014238  0x00002d33 mul32  0x0000003f , 0x00000005 , 0x0000003f 
- 00014239  0x00002d34 add  0x0000003f , 0x00000032 , 0x0000003f 
- 00014240  0x00002d35 rtn 
- 00014241  0x00002d37 arg  0x00002ee0 , 0x00000002 
- 00014242  0x00002d38 imul32  0x00000002 , 0x0000003f 
- 00014243  0x00002d39 div  0x0000003f , 0x00000064 
- 00014244  0x00002d3a call  0x00007f86 
- 00014245  0x00002d3b quotient  0x00000002 
- 00014246  0x00002d3c copy  0x00000002 , 0x00000011 
- 00014247  0x00002d3d setarg  0x00002ee0 
- 00014248  0x00002d3e isub  0x00000002 , 0x00000012 
- 00014249  0x00002d3f rtn 
- 00014250  0x00002d43 hfetch  0x00000001 , 0x00008082 
- 00014251  0x00002d44 set1  0x00000002 , 0x0000003f 
- 00014252  0x00002d45 hstore  0x00000001 , 0x00008082 
- 00014253  0x00002d46 setarg  0x0000009e 
- 00014254  0x00002d47 hstore  0x00000002 , 0x00008068 
- 00014255  0x00002d48 hstore  0x00000002 , 0x0000806a 
- 00014256  0x00002d49 rtn 
- 00014257  0x00002d4c fetch  0x00000001 , 0x000047f0 
- 00014258  0x00002d4d nrtn  0x00000034 
- 00014259  0x00002d4e fetch  0x00000002 , 0x00004752 
- 00014260  0x00002d4f store  0x00000002 , 0x00004787 
- 00014261  0x00002d50 fetch  0x00000001 , 0x000047ea 
- 00014262  0x00002d51 bne  0x00000001 , 0x000037b9 
- 00014263  0x00002d52 fetch  0x00000002 , 0x000044a0 
- 00014264  0x00002d53 store  0x00000002 , 0x00004787 
- 00014265  0x00002d55 bpatch  0x000000d3 , 0x0000401a 
- 00014266  0x00002d56 call  0x000037aa 
- 00014267  0x00002d57 call  0x000037dc 
- 00014268  0x00002d58 setarg  0x0000bb80 
- 00014269  0x00002d59 call  0x00002a8f 
- 00014270  0x00002d5a call  0x000037e0 
- 00014271  0x00002d5b setarg  0x00001c20 
- 00014272  0x00002d5c call  0x00002a8f 
- 00014273  0x00002d5d arg  0x00000010 , 0x00000039 
- 00014274  0x00002d5f call  0x000037dc 
- 00014275  0x00002d60 fetch  0x00000002 , 0x00004787 
- 00014276  0x00002d61 bbit1  0x00000000 , 0x000037c9 
- 00014277  0x00002d62 setarg  0x00001c20 
- 00014278  0x00002d63 call  0x00002a8f 
- 00014279  0x00002d64 call  0x000037e0 
- 00014280  0x00002d65 branch  0x000037cc 
- 00014281  0x00002d68 setarg  0x00003840 
- 00014282  0x00002d69 call  0x00002a8f 
- 00014283  0x00002d6a call  0x000037e0 
- 00014284  0x00002d6c setarg  0x00001c20 
- 00014285  0x00002d6d call  0x00002a8f 
- 00014286  0x00002d6e fetch  0x00000002 , 0x00004787 
- 00014287  0x00002d6f rshift  0x0000003f , 0x0000003f 
- 00014288  0x00002d70 store  0x00000002 , 0x00004787 
- 00014289  0x00002d71 loop  0x000037c2 
- 00014290  0x00002d73 jam  0x00000002 , 0x000047f1 
- 00014291  0x00002d74 jam  0x00000001 , 0x000047f2 
- 00014292  0x00002d75 setarg  0x00000a01 
- 00014293  0x00002d76 store  0x00000002 , 0x00004752 
- 00014294  0x00002d77 fetch  0x00000001 , 0x000047b9 
- 00014295  0x00002d78 beq  0x00000003 , 0x000037d9 
- 00014296  0x00002d7a branch  0x00003762 
- 00014297  0x00002d7c setarg  0x00000a01 
- 00014298  0x00002d7d store  0x00000002 , 0x00004754 
- 00014299  0x00002d7e branch  0x00003762 
- 00014300  0x00002d81 hfetch  0x00000001 , 0x00008085 
- 00014301  0x00002d82 or_into  0x00000040 , 0x0000003f 
- 00014302  0x00002d83 hstore  0x00000001 , 0x00008085 
- 00014303  0x00002d84 rtn 
- 00014304  0x00002d86 hfetch  0x00000001 , 0x00008085 
- 00014305  0x00002d87 and_into  0x000000bf , 0x0000003f 
- 00014306  0x00002d88 hstore  0x00000001 , 0x00008085 
- 00014307  0x00002d89 rtn 
- 00014308  0x00002d8c fetch  0x00000001 , 0x000047bb 
- 00014309  0x00002d8d rtneq  0x00000000 
- 00014310  0x00002d8e call  0x00002c65 
- 00014311  0x00002d8f fetcht  0x00000001 , 0x000047bc 
- 00014312  0x00002d90 storet  0x00000001 , 0x00004786 
- 00014313  0x00002d91 call  0x000067fb 
- 00014314  0x00002d92 call  0x00003847 
- 00014315  0x00002d93 nrtn  0x00000001 
- 00014316  0x00002d94 jam  0x00000001 , 0x0000479a 
- 00014317  0x00002d95 rtn 
- 00014318  0x00002d98 fetch  0x00000001 , 0x000047bb 
- 00014319  0x00002d99 rtneq  0x00000000 
- 00014320  0x00002d9a fetch  0x00000001 , 0x0000479b 
- 00014321  0x00002d9b nrtn  0x00000034 
- 00014322  0x00002d9c fetch  0x00000002 , 0x00004682 
- 00014323  0x00002d9d bbit1  0x00000009 , 0x000037f6 
- 00014324  0x00002d9e fetch  0x00000001 , 0x000047ea 
- 00014325  0x00002d9f rtnne  0x00000001 
- 00014326  0x00002da1 bpatch  0x000000d4 , 0x0000401a 
- 00014327  0x00002da2 call  0x00003847 
- 00014328  0x00002da3 nrtn  0x00000001 
- 00014329  0x00002da4 setarg  0x00008ca0 
- 00014330  0x00002da5 call  0x00002a8f 
- 00014331  0x00002da6 call  0x00003847 
- 00014332  0x00002da7 nrtn  0x00000001 
- 00014333  0x00002da8 call  0x0000383f 
- 00014334  0x00002daa call  0x00003842 
- 00014335  0x00002dab nrtn  0x00000002 
- 00014336  0x00002dac call  0x00003847 
- 00014337  0x00002dad branch  0x000037fe , 0x00000001 
- 00014338  0x00002dae arg  0x00000000 , 0x00000011 
- 00014339  0x00002daf arg  0x00000010 , 0x00000039 
- 00014340  0x00002db0 call  0x0000383f 
- 00014341  0x00002db2 call  0x00003842 
- 00014342  0x00002db3 nrtn  0x00000002 
- 00014343  0x00002db4 call  0x00003847 
- 00014344  0x00002db5 nbranch  0x00003805 , 0x00000001 
- 00014345  0x00002db6 setarg  0x00002a30 
- 00014346  0x00002db7 call  0x00002a8f 
- 00014347  0x00002db8 call  0x00003847 
- 00014348  0x00002db9 branch  0x00003812 , 0x00000001 
- 00014349  0x00002dbb setarg  0x00000000 
- 00014350  0x00002dbc rshift  0x00000011 , 0x00000011 
- 00014351  0x00002dbd ior  0x00000011 , 0x00000011 
- 00014352  0x00002dbe loop  0x00003805 
- 00014353  0x00002dbf branch  0x0000381b 
- 00014354  0x00002dc1 setarg  0x00008000 
- 00014355  0x00002dc2 rshift  0x00000011 , 0x00000011 
- 00014356  0x00002dc3 ior  0x00000011 , 0x00000011 
- 00014357  0x00002dc4 call  0x0000383f 
- 00014358  0x00002dc6 call  0x00003842 
- 00014359  0x00002dc7 nrtn  0x00000002 
- 00014360  0x00002dc8 call  0x00003847 
- 00014361  0x00002dc9 branch  0x00003816 , 0x00000001 
- 00014362  0x00002dca loop  0x00003805 
- 00014363  0x00002dcc bpatch  0x000000d5 , 0x0000401a 
- 00014364  0x00002dcd copy  0x00000011 , 0x0000003f 
- 00014365  0x00002dce store  0x00000002 , 0x00004789 
- 00014366  0x00002dcf store  0x00000002 , 0x00004797 
- 00014367  0x00002dd0 fetch  0x00000001 , 0x000047ea 
- 00014368  0x00002dd1 beq  0x00000001 , 0x00003827 
- 00014369  0x00002dd3 arg  0x00000007 , 0x00000039 
- 00014370  0x00002dd4 arg  0x00004792 , 0x00000006 
- 00014371  0x00002dd5 call  0x000036f0 
- 00014372  0x00002dd6 store  0x00000001 , 0x00004799 
- 00014373  0x00002dd7 arg  0x0000478f , 0x00000011 
- 00014374  0x00002dd8 branch  0x00007e3d 
- 00014375  0x00002ddb fetch  0x00000001 , 0x000047ef 
- 00014376  0x00002ddc increase  0x00000001 , 0x0000003f 
- 00014377  0x00002ddd store  0x00000001 , 0x000047ef 
- 00014378  0x00002dde div  0x0000003f , 0x00000002 
- 00014379  0x00002ddf call  0x00007f86 
- 00014380  0x00002de0 quotient  0x00000002 
- 00014381  0x00002de1 remainder  0x0000003f 
- 00014382  0x00002de2 nbranch  0x00003838 , 0x00000034 
- 00014383  0x00002de4 fetch  0x00000001 , 0x000047bf 
- 00014384  0x00002de5 isub  0x00000002 , 0x0000003e 
- 00014385  0x00002de6 call  0x0000383d , 0x00000005 
- 00014386  0x00002de7 arg  0x0000479c , 0x0000003f 
- 00014387  0x00002de8 increase  0xffffffff , 0x00000002 
- 00014388  0x00002de9 iadd  0x00000002 , 0x00000011 
- 00014389  0x00002dea arg  0x00000000 , 0x0000003f 
- 00014390  0x00002deb istore  0x00000001 , 0x00000011 
- 00014391  0x00002dec rtn 
- 00014392  0x00002dee arg  0x0000479c , 0x0000003f 
- 00014393  0x00002def iadd  0x00000002 , 0x00000011 
- 00014394  0x00002df0 arg  0x00000002 , 0x0000003f 
- 00014395  0x00002df1 istore  0x00000001 , 0x00000011 
- 00014396  0x00002df2 rtn 
- 00014397  0x00002df4 jam  0x00000001 , 0x000047f0 
- 00014398  0x00002df5 rtn 
- 00014399  0x00002df7 copy  0x00000022 , 0x0000003f 
- 00014400  0x00002df8 store  0x00000004 , 0x0000478b 
- 00014401  0x00002df9 rtn 
- 00014402  0x00002dfb copy  0x00000022 , 0x0000003f 
- 00014403  0x00002dfc fetcht  0x00000004 , 0x0000478b 
- 00014404  0x00002dfd isub  0x00000002 , 0x0000003f 
- 00014405  0x00002dfe sub  0x0000003f , 0x000000c8 , 0x0000003e 
- 00014406  0x00002dff rtn 
- 00014407  0x00002e02 fetcht  0x00000001 , 0x00004786 
- 00014408  0x00002e03 branch  0x0000681d 
- 00014409  0x00002e06 fetch  0x00000008 , 0x00004752 
- 00014410  0x00002e07 store  0x00000008 , 0x0000479c 
- 00014411  0x00002e08 rtn 
- 00014412  0x00002e0b fetch  0x00000001 , 0x000047b9 
- 00014413  0x00002e0c store  0x00000001 , 0x000047af 
- 00014414  0x00002e0d fetch  0x00000001 , 0x000047ba 
- 00014415  0x00002e0e store  0x00000001 , 0x000047b0 
- 00014416  0x00002e0f fetch  0x00000001 , 0x000047bb 
- 00014417  0x00002e10 store  0x00000001 , 0x000047b1 
- 00014418  0x00002e11 arg  0x0000000d , 0x00000039 
- 00014419  0x00002e12 arg  0x000047aa , 0x00000006 
- 00014420  0x00002e13 call  0x000036f0 
- 00014421  0x00002e14 store  0x00000001 , 0x000047b7 
- 00014422  0x00002e15 arg  0x000047a7 , 0x00000011 
- 00014423  0x00002e16 branch  0x00007e3d 
- 00014424  0x00002e1d call  0x000065c2 
- 00014425  0x00002e1e jam  0x0000007a , 0x000046f6 
- 00014426  0x00002e1f call  0x0000386d 
- 00014427  0x00002e20 call  0x00003867 
- 00014428  0x00002e21 setarg  0x00003860 
- 00014429  0x00002e22 store  0x00000002 , 0x000041fd 
- 00014430  0x00002e23 arg  0x00000000 , 0x00000011 
- 00014431  0x00002e24 branch  0x000069a6 
- 00014432  0x00002e27 fetch  0x00000002 , 0x000046a1 
- 00014433  0x00002e28 rtn  0x00000034 
- 00014434  0x00002e29 increase  0xffffffff , 0x0000003f 
- 00014435  0x00002e2a store  0x00000002 , 0x000046a1 
- 00014436  0x00002e2b rtnne  0x00000000 
- 00014437  0x00002e2c jam  0x00000000 , 0x000046a0 
- 00014438  0x00002e2d rtn 
- 00014439  0x00002e30 bpatch  0x000000d6 , 0x0000401a 
- 00014440  0x00002e31 fetch  0x00000001 , 0x000046a4 
- 00014441  0x00002e32 sub  0x0000003f , 0x00000028 , 0x0000003e 
- 00014442  0x00002e33 rtn  0x00000002 
- 00014443  0x00002e34 jam  0x00000000 , 0x000046a4 
- 00014444  0x00002e35 rtn 
- 00014445  0x00002e38 arg  0x000046a4 , 0x00000011 
- 00014446  0x00002e39 arg  0x00000000 , 0x00000012 
- 00014447  0x00002e3a arg  0x00000051 , 0x00000002 
- 00014448  0x00002e3b branch  0x000065df 
- 00014449  0x00002e3f disable  0x00000028 
- 00014450  0x00002e40 fetch  0x00000001 , 0x000046a3 
- 00014451  0x00002e41 copy  0x0000003f , 0x00000039 
- 00014452  0x00002e43 arg  0x000046a5 , 0x00000011 
- 00014453  0x00002e44 copy  0x00000013 , 0x00000012 
- 00014454  0x00002e46 bpatch  0x000000d7 , 0x0000401a 
- 00014455  0x00002e47 call  0x0000387c 
- 00014456  0x00002e48 branch  0x00007fe7 , 0x00000005 
- 00014457  0x00002e4a increase  0x00000004 , 0x00000011 
- 00014458  0x00002e4b loop  0x00003876 
- 00014459  0x00002e4c rtn 
- 00014460  0x00002e50 bpatch  0x000000d8 , 0x0000401b 
- 00014461  0x00002e51 ifetch  0x00000003 , 0x00000011 
- 00014462  0x00002e52 ifetcht  0x00000003 , 0x00000012 
- 00014463  0x00002e53 isub  0x00000002 , 0x0000003e 
- 00014464  0x00002e54 rtn 
- 00014465  0x00002e57 bpatch  0x000000d9 , 0x0000401b 
- 00014466  0x00002e58 ifetch  0x00000003 , 0x00000011 
- 00014467  0x00002e59 ifetcht  0x00000003 , 0x00000012 
- 00014468  0x00002e5a isub  0x00000002 , 0x0000003e 
- 00014469  0x00002e5b nrtn  0x00000005 
- 00014470  0x00002e5c ifetch  0x00000001 , 0x00000006 
- 00014471  0x00002e5d sub  0x0000003f , 0x00000000 , 0x0000003e 
- 00014472  0x00002e5e rtn  0x00000005 
- 00014473  0x00002e5f add  0x00000011 , 0x00000003 , 0x00000006 
- 00014474  0x00002e60 ifetcht  0x00000001 , 0x00000006 
- 00014475  0x00002e61 isub  0x00000002 , 0x0000003e 
- 00014476  0x00002e62 rtn 
- 00014477  0x00002e66 bpatch  0x000000da , 0x0000401b 
- 00014478  0x00002e67 disable  0x00000028 
- 00014479  0x00002e68 fetch  0x00000001 , 0x000046a3 
- 00014480  0x00002e69 copy  0x0000003f , 0x00000039 
- 00014481  0x00002e6b arg  0x000046a5 , 0x00000011 
- 00014482  0x00002e6c copy  0x00000013 , 0x00000012 
- 00014483  0x00002e6e call  0x00003881 
- 00014484  0x00002e6f branch  0x00007fe7 , 0x00000005 
- 00014485  0x00002e70 increase  0x00000004 , 0x00000011 
- 00014486  0x00002e71 loop  0x00003893 
- 00014487  0x00002e72 rtn 
- 00014488  0x00002e76 fetch  0x00000001 , 0x00000004 
- 00014489  0x00002e77 increase  0x00000001 , 0x0000003f 
- 00014490  0x00002e78 store  0x00000001 , 0x00000004 
- 00014491  0x00002e79 arg  0x000002e5 , 0x00000013 
- 00014492  0x00002e7c ifetch  0x00000002 , 0x00000013 
- 00014493  0x00002e7d arg  0x000055aa , 0x00000002 
- 00014494  0x00002e7e isub  0x00000002 , 0x0000003e 
- 00014495  0x00002e7f nrtn  0x00000005 
- 00014496  0x00002e80 copy  0x00000006 , 0x00000013 
- 00014497  0x00002e81 ifetcht  0x00000003 , 0x00000013 
- 00014498  0x00002e82 setarg  0x00ffffff 
- 00014499  0x00002e83 isub  0x00000002 , 0x0000003e 
- 00014500  0x00002e84 branch  0x000038a8 , 0x00000005 
- 00014501  0x00002e85 call  0x0000388d 
- 00014502  0x00002e86 branch  0x000038a8 , 0x00000028 
- 00014503  0x00002e87 rtn 
- 00014504  0x00002e8a bpatch  0x000000db , 0x0000401b 
- 00014505  0x00002e8b increase  0x00000004 , 0x00000013 
- 00014506  0x00002e8c ifetch  0x00000001 , 0x00000013 
- 00014507  0x00002e8d fetcht  0x00000001 , 0x000046f6 
- 00014508  0x00002e8e isub  0x00000002 , 0x0000003e 
- 00014509  0x00002e8f rtn  0x00000005 
- 00014510  0x00002e90 store  0x00000001 , 0x000046f6 
- 00014511  0x00002e91 fetch  0x00000001 , 0x00000003 
- 00014512  0x00002e92 increase  0x00000001 , 0x0000003f 
- 00014513  0x00002e93 store  0x00000001 , 0x00000003 
- 00014514  0x00002e95 increase  0x00000001 , 0x00000013 
- 00014515  0x00002e96 ifetch  0x00000001 , 0x00000013 
- 00014516  0x00002e97 store  0x00000001 , 0x000046f5 
- 00014517  0x00002e98 copy  0x0000003f , 0x00000039 
- 00014518  0x00002e99 rtn  0x00000034 
- 00014519  0x00002e9b ifetch  0x00000001 , 0x00000006 
- 00014520  0x00002e9c beq  0x00000000 , 0x000038c2 
- 00014521  0x00002e9d beq  0x00000001 , 0x000038cf 
- 00014522  0x00002e9e beq  0x00000002 , 0x000038d4 
- 00014523  0x00002e9f beq  0x00000003 , 0x000038d9 
- 00014524  0x00002ea0 beq  0x00000004 , 0x000038de 
- 00014525  0x00002ea1 beq  0x00000005 , 0x000038e3 
- 00014526  0x00002ea2 beq  0x00000006 , 0x000038e8 
- 00014527  0x00002ea3 beq  0x000000ff , 0x000038ea 
- 00014528  0x00002ea4 loop  0x000038b7 
- 00014529  0x00002ea5 rtn 
- 00014530  0x00002ea8 copy  0x00000006 , 0x00000013 
- 00014531  0x00002ea9 fetch  0x00000001 , 0x0000469a 
- 00014532  0x00002eaa store  0x00000001 , 0x00000a9a 
- 00014533  0x00002eab arg  0x00000000 , 0x00000002 
- 00014534  0x00002ead storet  0x00000001 , 0x00000a9b 
- 00014535  0x00002eae setarg  0x00002710 
- 00014536  0x00002eaf store  0x00000003 , 0x00000a9c 
- 00014537  0x00002eb0 ifetch  0x00000001 , 0x00000013 
- 00014538  0x00002eb1 store  0x00000001 , 0x00000a9f 
- 00014539  0x00002eb2 call  0x000069ae 
- 00014540  0x00002eb3 and  0x00000013 , 0x00000001 , 0x00000006 
- 00014541  0x00002eb4 loop  0x000038b7 
- 00014542  0x00002eb5 rtn 
- 00014543  0x00002eb7 copy  0x00000013 , 0x00000006 
- 00014544  0x00002eb8 fetch  0x00000001 , 0x0000469b 
- 00014545  0x00002eb9 store  0x00000001 , 0x00000a9a 
- 00014546  0x00002eba arg  0x00000001 , 0x00000002 
- 00014547  0x00002ebb branch  0x000038c6 
- 00014548  0x00002ebd copy  0x00000013 , 0x00000006 
- 00014549  0x00002ebe fetch  0x00000001 , 0x0000469c 
- 00014550  0x00002ebf store  0x00000001 , 0x00000a9a 
- 00014551  0x00002ec0 arg  0x00000002 , 0x00000002 
- 00014552  0x00002ec1 branch  0x000038c6 
- 00014553  0x00002ec3 copy  0x00000013 , 0x00000006 
- 00014554  0x00002ec4 fetch  0x00000001 , 0x0000469d 
- 00014555  0x00002ec5 store  0x00000001 , 0x00000a9a 
- 00014556  0x00002ec6 arg  0x00000003 , 0x00000002 
- 00014557  0x00002ec7 branch  0x000038c6 
- 00014558  0x00002ec9 copy  0x00000013 , 0x00000006 
- 00014559  0x00002eca fetch  0x00000001 , 0x0000469e 
- 00014560  0x00002ecb store  0x00000001 , 0x00000a9a 
- 00014561  0x00002ecc arg  0x00000004 , 0x00000002 
- 00014562  0x00002ecd branch  0x000038c6 
- 00014563  0x00002ecf copy  0x00000013 , 0x00000006 
- 00014564  0x00002ed0 fetch  0x00000001 , 0x0000469f 
- 00014565  0x00002ed1 store  0x00000001 , 0x00000a9a 
- 00014566  0x00002ed2 arg  0x00000005 , 0x00000002 
- 00014567  0x00002ed3 branch  0x000038c6 
- 00014568  0x00002ed6 ifetch  0x00000001 , 0x00000006 
- 00014569  0x00002ed7 rtn 
- 00014570  0x00002eda copy  0x00000006 , 0x00000013 
- 00014571  0x00002edb fetch  0x00000001 , 0x000046a0 
- 00014572  0x00002edc bne  0x00000001 , 0x000038ee 
- 00014573  0x00002edd call  0x000038f0 
- 00014574  0x00002edf and  0x00000013 , 0x00000004 , 0x00000006 
- 00014575  0x00002ee0 rtn 
- 00014576  0x00002ee2 bpatch  0x000000dc , 0x0000401b 
- 00014577  0x00002ee3 call  0x00003871 
- 00014578  0x00002ee4 branch  0x000038fe , 0x00000028 
- 00014579  0x00002ee5 fetch  0x00000001 , 0x000046a4 
- 00014580  0x00002ee6 copy  0x0000003f , 0x00000002 
- 00014581  0x00002ee7 increase  0x00000001 , 0x0000003f 
- 00014582  0x00002ee8 store  0x00000001 , 0x000046a4 
- 00014583  0x00002ee9 call  0x00003867 
- 00014584  0x00002eea lshift2  0x00000002 , 0x00000002 
- 00014585  0x00002eeb setarg  0x000046a5 
- 00014586  0x00002eec iadd  0x00000002 , 0x00000005 
- 00014587  0x00002eed ifetch  0x00000004 , 0x00000013 
- 00014588  0x00002eee istore  0x00000004 , 0x00000005 
- 00014589  0x00002eef branch  0x00003903 
- 00014590  0x00002ef1 add  0x00000013 , 0x00000003 , 0x00000006 
- 00014591  0x00002ef2 ifetch  0x00000001 , 0x00000006 
- 00014592  0x00002ef3 rtn  0x00000034 
- 00014593  0x00002ef4 ifetch  0x00000004 , 0x00000013 
- 00014594  0x00002ef5 istore  0x00000004 , 0x00000011 
- 00014595  0x00002ef7 arg  0x000046a4 , 0x00000011 
- 00014596  0x00002ef8 arg  0x00000000 , 0x00000012 
- 00014597  0x00002ef9 arg  0x00000051 , 0x00000002 
- 00014598  0x00002efa branch  0x00006606 
- 00014599  0x00002f02 fetcht  0x00000001 , 0x0000469a 
- 00014600  0x00002f03 call  0x00006825 
- 00014601  0x00002f04 rtn 
- 00014602  0x00002f0a fetcht  0x00000001 , 0x0000469a 
- 00014603  0x00002f0b call  0x00006829 
- 00014604  0x00002f0e fetcht  0x00000001 , 0x0000469a 
- 00014605  0x00002f0f call  0x00006825 
- 00014606  0x00002f12 call  0x0000391d 
- 00014607  0x00002f14 fetch  0x00000001 , 0x000046a7 
- 00014608  0x00002f15 nrtn  0x00000034 
- 00014609  0x00002f17 call  0x00002c29 
- 00014610  0x00002f18 hfetch  0x00000004 , 0x00008138 
- 00014611  0x00002f19 set0  0x0000000f , 0x0000003f 
- 00014612  0x00002f1a hstore  0x00000004 , 0x0000804c 
- 00014613  0x00002f1b call  0x00002c21 
- 00014614  0x00002f1c arg  0xffffffff , 0x00000002 
- 00014615  0x00002f1d branch  0x00002b2a 
- 00014616  0x00002f20 fetch  0x00000001 , 0x000046a7 
- 00014617  0x00002f21 branch  0x000056f9 , 0x00000034 
- 00014618  0x00002f22 increase  0xffffffff , 0x0000003f 
- 00014619  0x00002f23 store  0x00000001 , 0x000046a7 
- 00014620  0x00002f24 branch  0x000056f9 
- 00014621  0x00002f27 mul32  0x0000003f , 0x00000014 , 0x0000003f 
- 00014622  0x00002f28 arg  0x000046a8 , 0x00000006 
- 00014623  0x00002f29 iadd  0x00000006 , 0x00000006 
- 00014624  0x00002f2a ifetch  0x00000001 , 0x00000006 
- 00014625  0x00002f2b rtn  0x00000034 
- 00014626  0x00002f2c copy  0x0000003f , 0x00000011 
- 00014627  0x00002f2d copy  0x00000011 , 0x00000039 
- 00014628  0x00002f2e arg  0x00004372 , 0x00000005 
- 00014629  0x00002f2f call  0x00007f01 
- 00014630  0x00002f30 copy  0x00000011 , 0x0000003f 
- 00014631  0x00002f31 increase  0x00000002 , 0x0000003f 
- 00014632  0x00002f32 store  0x00000001 , 0x0000436f 
- 00014633  0x00002f33 rtn 
- 00014634  0x00002f3c rtn  0x0000002b 
- 00014635  0x00002f3d call  0x000057a3 
- 00014636  0x00002f3e call  0x000068a8 
- 00014637  0x00002f3f setarg  0x00003982 
- 00014638  0x00002f40 store  0x00000002 , 0x000041f3 
- 00014639  0x00002f41 setarg  0x0000396e 
- 00014640  0x00002f42 store  0x00000002 , 0x000041f1 
- 00014641  0x00002f43 setarg  0x00003986 
- 00014642  0x00002f44 store  0x00000002 , 0x000041f5 
- 00014643  0x00002f45 setarg  0x0000396d 
- 00014644  0x00002f46 store  0x00000002 , 0x000041ef 
- 00014645  0x00002f47 setarg  0x00003969 
- 00014646  0x00002f48 store  0x00000002 , 0x000041e9 
- 00014647  0x00002f49 setarg  0x00003ab7 
- 00014648  0x00002f4a store  0x00000002 , 0x000041fb 
- 00014649  0x00002f4b setarg  0x00003c32 
- 00014650  0x00002f4c store  0x00000002 , 0x0000456f 
- 00014651  0x00002f4d setarg  0x00003cc2 
- 00014652  0x00002f4e store  0x00000002 , 0x000041f9 
- 00014653  0x00002f4f setarg  0x00003cd7 
- 00014654  0x00002f50 store  0x00000002 , 0x000041fd 
- 00014655  0x00002f52 call  0x0000397f 
- 00014656  0x00002f53 bpatch  0x000000dd , 0x0000401b 
- 00014657  0x00002f54 call  0x00003945 
- 00014658  0x00002f55 call  0x00003964 
- 00014659  0x00002f56 call  0x00002c6f 
- 00014660  0x00002f57 branch  0x00003c48 
- 00014661  0x00002f5b fetch  0x00000004 , 0x000046aa 
- 00014662  0x00002f5c hstore  0x00000004 , 0x00008054 
- 00014663  0x00002f5e fetch  0x00000004 , 0x000046ae 
- 00014664  0x00002f5f hstore  0x00000004 , 0x0000805a 
- 00014665  0x00002f61 hfetch  0x00000001 , 0x00008081 
- 00014666  0x00002f62 or_into  0x00000004 , 0x0000003f 
- 00014667  0x00002f63 and_into  0x000000fc , 0x0000003f 
- 00014668  0x00002f64 hstore  0x00000001 , 0x00008081 
- 00014669  0x00002f65 jam  0x00000000 , 0x00008062 
- 00014670  0x00002f67 fetch  0x00000002 , 0x000046aa 
- 00014671  0x00002f68 hstore  0x00000002 , 0x00008058 
- 00014672  0x00002f69 fetch  0x00000002 , 0x000046ae 
- 00014673  0x00002f6a hstore  0x00000002 , 0x0000805e 
- 00014674  0x00002f6b hstore  0x00000002 , 0x00008060 
- 00014675  0x00002f6d hfetch  0x00000004 , 0x00008078 
- 00014676  0x00002f6e set1  0x00000007 , 0x0000003f 
- 00014677  0x00002f6f hstore  0x00000004 , 0x00008078 
- 00014678  0x00002f71 hfetch  0x00000002 , 0x00008050 
- 00014679  0x00002f72 set0  0x0000000f , 0x0000003f 
- 00014680  0x00002f73 hstore  0x00000002 , 0x00008050 
- 00014681  0x00002f74 call  0x000066ce 
- 00014682  0x00002f75 jam  0x00000000 , 0x00008043 
- 00014683  0x00002f76 jam  0x00000081 , 0x00008062 
- 00014684  0x00002f78 fetch  0x00000001 , 0x000046bf 
- 00014685  0x00002f79 isolate1  0x00000000 , 0x0000003f 
- 00014686  0x00002f7a hfetcht  0x00000001 , 0x00008062 
- 00014687  0x00002f7b setflag  0x00000001 , 0x00000004 , 0x00000002 
- 00014688  0x00002f7c hstoret  0x00000001 , 0x00008062 
- 00014689  0x00002f7d rtn 
- 00014690  0x00002f82 call  0x0000397f 
- 00014691  0x00002f83 branch  0x00003945 
- 00014692  0x00002f8b fetcht  0x00000001 , 0x0000469e 
- 00014693  0x00002f8c call  0x0000680e 
- 00014694  0x00002f8d call  0x000039e6 
- 00014695  0x00002f8f fetcht  0x00000001 , 0x0000469c 
- 00014696  0x00002f90 branch  0x000067fb 
- 00014697  0x00002f93 fetcht  0x00000001 , 0x0000469c 
- 00014698  0x00002f94 call  0x0000681d 
- 00014699  0x00002f95 nbranch  0x000033d2 , 0x00000001 
- 00014700  0x00002f96 branch  0x000033d0 
- 00014701  0x00002f9a rtn 
- 00014702  0x00002f9d call  0x00003970 
- 00014703  0x00002f9e branch  0x00003ce9 
- 00014704  0x00002fa1 fetch  0x00000001 , 0x00004682 
- 00014705  0x00002fa2 bbit0  0x00000004 , 0x0000397f 
- 00014706  0x00002fa3 bpatch  0x000000de , 0x0000401b 
- 00014707  0x00002fa4 setarg  0x00003eff 
- 00014708  0x00002fa5 fetcht  0x00000004 , 0x000046c5 
- 00014709  0x00002fa6 iadd  0x00000002 , 0x00000002 
- 00014710  0x00002fa7 copy  0x00000022 , 0x0000003f 
- 00014711  0x00002fa8 isub  0x00000002 , 0x0000003e 
- 00014712  0x00002fa9 nrtn  0x00000002 
- 00014713  0x00002faa fetch  0x00000002 , 0x00004682 
- 00014714  0x00002fab bbit1  0x00000005 , 0x0000397f 
- 00014715  0x00002fac fetch  0x00000001 , 0x000046bf 
- 00014716  0x00002fad rtnbit1  0x00000006 
- 00014717  0x00002fae call  0x00003cec 
- 00014718  0x00002faf call  0x0000340e 
- 00014719  0x00002fb1 copy  0x00000022 , 0x0000003f 
- 00014720  0x00002fb2 store  0x00000004 , 0x000046c5 
- 00014721  0x00002fb3 rtn 
- 00014722  0x00002fb7 call  0x00003ce9 
- 00014723  0x00002fb8 call  0x0000526e 
- 00014724  0x00002fb9 nrtn  0x00000034 
- 00014725  0x00002fba branch  0x000039eb 
- 00014726  0x00002fbe copy  0x00000013 , 0x0000003f 
- 00014727  0x00002fbf beq  0x00000001 , 0x000039d4 
- 00014728  0x00002fc0 beq  0x00000002 , 0x000039a3 
- 00014729  0x00002fc1 beq  0x00000004 , 0x000039d7 
- 00014730  0x00002fc2 beq  0x00000005 , 0x000039c4 
- 00014731  0x00002fc3 beq  0x00000008 , 0x000039aa 
- 00014732  0x00002fc4 beq  0x00000009 , 0x000039b1 
- 00014733  0x00002fc5 beq  0x0000000a , 0x000039c9 
- 00014734  0x00002fc6 beq  0x0000000b , 0x000039b6 
- 00014735  0x00002fc7 beq  0x0000000c , 0x000039c2 
- 00014736  0x00002fc8 beq  0x00000013 , 0x000039d7 
- 00014737  0x00002fc9 beq  0x00000014 , 0x000039cf 
- 00014738  0x00002fca beq  0x00000015 , 0x000039c6 
- 00014739  0x00002fcb beq  0x00000021 , 0x000039ca 
- 00014740  0x00002fcc beq  0x00000023 , 0x000039cb 
- 00014741  0x00002fcd beq  0x00000024 , 0x000039ce 
- 00014742  0x00002fce beq  0x00000030 , 0x00003c8a 
- 00014743  0x00002fcf beq  0x00000031 , 0x00003c8c 
- 00014744  0x00002fd0 beq  0x00000032 , 0x00003c9a 
- 00014745  0x00002fd1 beq  0x00000033 , 0x00003c98 
- 00014746  0x00002fd2 beq  0x00000034 , 0x00003c84 
- 00014747  0x00002fd3 beq  0x00000035 , 0x00003c73 
- 00014748  0x00002fd4 beq  0x00000036 , 0x00003c82 
- 00014749  0x00002fd5 beq  0x00000037 , 0x00003c8e 
- 00014750  0x00002fd6 beq  0x00000038 , 0x00003c90 
- 00014751  0x00002fd7 beq  0x0000003b , 0x00003ca1 
- 00014752  0x00002fd8 beq  0x0000003d , 0x00003c6a 
- 00014753  0x00002fd9 beq  0x00000041 , 0x000039d9 
- 00014754  0x00002fda rtn 
- 00014755  0x00002fde call  0x0000397f 
- 00014756  0x00002fdf fetch  0x00000001 , 0x00004665 
- 00014757  0x00002fe0 ncall  0x00003c8e , 0x00000034 
- 00014758  0x00002fe1 call  0x000039d7 
- 00014759  0x00002fe2 fetch  0x00000002 , 0x00004682 
- 00014760  0x00002fe3 rtnbit0  0x00000004 
- 00014761  0x00002fe4 branch  0x000039b1 
- 00014762  0x00002fe7 fetch  0x00000002 , 0x00004682 
- 00014763  0x00002fe8 set1  0x00000004 , 0x0000003f 
- 00014764  0x00002fe9 store  0x00000002 , 0x00004682 
- 00014765  0x00002fea fetch  0x00000001 , 0x000046a7 
- 00014766  0x00002feb store  0x00000001 , 0x00004172 
- 00014767  0x00002fec call  0x000039e6 
- 00014768  0x00002fed branch  0x00003c1d 
- 00014769  0x00002ff2 fetch  0x00000002 , 0x00004682 
- 00014770  0x00002ff3 rtnbit0  0x00000004 
- 00014771  0x00002ff4 set0  0x00000004 , 0x0000003f 
- 00014772  0x00002ff5 store  0x00000002 , 0x00004682 
- 00014773  0x00002ff6 branch  0x00003c21 
- 00014774  0x00002ffc call  0x0000397f 
- 00014775  0x00002fff fetch  0x00000002 , 0x00004042 
- 00014776  0x00003000 rshift  0x0000003f , 0x0000003f 
- 00014777  0x00003001 fetcht  0x00000002 , 0x000041e3 
- 00014778  0x00003002 isub  0x00000002 , 0x0000003e 
- 00014779  0x00003003 nbranch  0x000039bd , 0x00000005 
- 00014780  0x00003004 branch  0x00003416 
- 00014781  0x00003006 fetch  0x00000001 , 0x000046bf 
- 00014782  0x00003007 rtnbit1  0x00000005 
- 00014783  0x00003008 hfetch  0x00000002 , 0x00008112 
- 00014784  0x00003009 ncall  0x00003cf0 , 0x00000034 
- 00014785  0x0000300a branch  0x0000340c 
- 00014786  0x0000300d call  0x00003cee 
- 00014787  0x0000300e branch  0x00003418 
- 00014788  0x00003011 call  0x0000397f 
- 00014789  0x00003012 branch  0x000039dd 
- 00014790  0x00003015 call  0x00005816 
- 00014791  0x00003016 call  0x000039d7 
- 00014792  0x00003017 branch  0x00003c23 
- 00014793  0x0000301a branch  0x000033dd 
- 00014794  0x0000301e branch  0x00003cee 
- 00014795  0x00003022 fetch  0x00000001 , 0x000046bf 
- 00014796  0x00003023 bbit0  0x00000005 , 0x0000340e 
- 00014797  0x00003024 branch  0x00003cf2 
- 00014798  0x00003028 branch  0x00003cf2 
- 00014799  0x0000302c call  0x000058ba 
- 00014800  0x0000302d call  0x000039dd 
- 00014801  0x0000302e fetch  0x00000001 , 0x000046a8 
- 00014802  0x0000302f store  0x00000001 , 0x00004172 
- 00014803  0x00003030 branch  0x00003c1f 
- 00014804  0x00003034 jam  0x00000000 , 0x00004661 
- 00014805  0x00003035 call  0x00003cee 
- 00014806  0x00003036 branch  0x00003cf2 
- 00014807  0x0000303b call  0x00003a52 
- 00014808  0x0000303c branch  0x000039db 
- 00014809  0x00003040 call  0x00005cc9 
- 00014810  0x00003041 branch  0x00005b02 
- 00014811  0x00003045 fetcht  0x00000001 , 0x0000469e 
- 00014812  0x00003046 branch  0x00006829 
- 00014813  0x00003049 call  0x000039df 
- 00014814  0x0000304a branch  0x000039e6 
- 00014815  0x0000304d fetch  0x00000001 , 0x000046a1 
- 00014816  0x0000304e isolate1  0x00000000 , 0x0000003f 
- 00014817  0x0000304f call  0x000033f0 , 0x00000001 
- 00014818  0x00003050 fetch  0x00000001 , 0x000046a1 
- 00014819  0x00003051 isolate1  0x00000001 , 0x0000003f 
- 00014820  0x00003052 call  0x000033f8 , 0x00000001 
- 00014821  0x00003053 rtn 
- 00014822  0x00003055 fetcht  0x00000001 , 0x0000469e 
- 00014823  0x00003056 branch  0x00006825 
- 00014824  0x00003059 fetch  0x00000001 , 0x0000456b 
- 00014825  0x0000305a rtneq  0x00000000 
- 00014826  0x0000305b branch  0x00006c28 
- 00014827  0x0000305e hfetch  0x00000001 , 0x0000810c 
- 00014828  0x0000305f bbit1  0x00000003 , 0x000039e8 
- 00014829  0x00003060 call  0x000066cb 
- 00014830  0x00003061 ifetch  0x00000001 , 0x00000003 
- 00014831  0x00003062 bne  0x00000001 , 0x00003a01 
- 00014832  0x00003063 hfetch  0x00000002 , 0x00008112 
- 00014833  0x00003064 sub  0x0000003f , 0x00000002 , 0x0000003e 
- 00014834  0x00003065 rtn  0x00000002 
- 00014835  0x00003066 ifetch  0x00000001 , 0x00000003 
- 00014836  0x00003067 store  0x00000001 , 0x00000b03 
- 00014837  0x00003068 ifetcht  0x00000001 , 0x00000003 
- 00014838  0x00003069 copy  0x00000003 , 0x00000011 
- 00014839  0x0000306a storet  0x00000001 , 0x00000b04 
- 00014840  0x0000306b add  0x00000002 , 0x00000003 , 0x00000002 
- 00014841  0x0000306c hfetch  0x00000002 , 0x00008112 
- 00014842  0x0000306d isub  0x00000002 , 0x00000002 
- 00014843  0x0000306e nrtn  0x00000002 
- 00014844  0x0000306f jam  0x00000001 , 0x00000b05 
- 00014845  0x00003070 call  0x00003a17 
- 00014846  0x00003071 fetch  0x00000001 , 0x00000b05 
- 00014847  0x00003072 rtneq  0x00000000 
- 00014848  0x00003073 branch  0x00003a12 
- 00014849  0x00003076 call  0x00007ec1 
- 00014850  0x00003077 call  0x00003c79 
- 00014851  0x00003078 branch  0x00003a04 
- 00014852  0x0000307c bpatch  0x000000df , 0x0000401b 
- 00014853  0x0000307d hfetch  0x00000002 , 0x00008112 
- 00014854  0x0000307e rtn  0x00000034 
- 00014855  0x0000307f call  0x000066cb 
- 00014856  0x00003080 ifetch  0x00000001 , 0x00000003 
- 00014857  0x00003081 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00014858  0x00003082 ncall  0x00003a16 , 0x00000005 
- 00014859  0x00003083 nbranch  0x00003a04 , 0x00000005 
- 00014860  0x00003084 ifetch  0x00000001 , 0x00000003 
- 00014861  0x00003085 rtneq  0x00000005 
- 00014862  0x00003086 rtneq  0x00000029 
- 00014863  0x00003087 increase  0xffffffff , 0x00000003 
- 00014864  0x00003088 call  0x00003a16 
- 00014865  0x00003089 branch  0x00003a04 
- 00014866  0x0000308c call  0x000066cb 
- 00014867  0x0000308d increase  0x00000002 , 0x00000003 
- 00014868  0x0000308e ifetch  0x00000001 , 0x00000003 
- 00014869  0x0000308f iadd  0x00000003 , 0x00000003 
- 00014870  0x00003091 branch  0x000066c8 
- 00014871  0x00003095 bpatch  0x000000e0 , 0x0000401c 
- 00014872  0x00003096 fetch  0x00000001 , 0x00000b03 
- 00014873  0x00003097 beq  0x00000000 , 0x00003a3f 
- 00014874  0x00003098 beq  0x00000001 , 0x00003a44 
- 00014875  0x00003099 beq  0x00000002 , 0x00003a49 
- 00014876  0x0000309a beq  0x00000003 , 0x00003a5f 
- 00014877  0x0000309b beq  0x00000004 , 0x00003a6b 
- 00014878  0x0000309c beq  0x00000005 , 0x00003a75 
- 00014879  0x0000309d beq  0x00000009 , 0x00003a9a 
- 00014880  0x0000309e beq  0x0000000b , 0x00003ad7 
- 00014881  0x0000309f beq  0x0000000c , 0x00003ad8 
- 00014882  0x000030a0 beq  0x0000000d , 0x00003aec 
- 00014883  0x000030a1 beq  0x0000000e , 0x00003af4 
- 00014884  0x000030a2 beq  0x0000000f , 0x00003afa 
- 00014885  0x000030a3 beq  0x00000010 , 0x00003b06 
- 00014886  0x000030a4 beq  0x00000011 , 0x00003b0e 
- 00014887  0x000030a5 beq  0x00000012 , 0x00003b12 
- 00014888  0x000030a6 beq  0x00000026 , 0x00003b16 
- 00014889  0x000030a7 beq  0x00000028 , 0x00003b1d 
- 00014890  0x000030a8 beq  0x00000029 , 0x00003b2d 
- 00014891  0x000030a9 beq  0x0000002a , 0x00003b36 
- 00014892  0x000030aa beq  0x0000002b , 0x00003b69 
- 00014893  0x000030ab beq  0x0000002c , 0x00003b6f 
- 00014894  0x000030ac beq  0x00000030 , 0x00003b76 
- 00014895  0x000030ad beq  0x00000031 , 0x00003b7c 
- 00014896  0x000030ae beq  0x00000032 , 0x00003b90 
- 00014897  0x000030af beq  0x00000033 , 0x00003b98 
- 00014898  0x000030b0 beq  0x00000034 , 0x00003bbb 
- 00014899  0x000030b1 beq  0x00000035 , 0x00003bc4 
- 00014900  0x000030b2 beq  0x00000036 , 0x00003bcd 
- 00014901  0x000030b3 beq  0x00000037 , 0x00003bd7 
- 00014902  0x000030b4 beq  0x00000038 , 0x00003bda 
- 00014903  0x000030b5 beq  0x00000040 , 0x00003be2 
- 00014904  0x000030b6 beq  0x00000042 , 0x00003bec 
- 00014905  0x000030b7 beq  0x00000048 , 0x00003bf1 
- 00014906  0x000030b8 beq  0x00000049 , 0x00003bfc 
- 00014907  0x000030b9 beq  0x00000051 , 0x00003c02 
- 00014908  0x000030ba beq  0x00000061 , 0x00003c06 
- 00014909  0x000030bb beq  0x000000ff , 0x00003c15 
- 00014910  0x000030bc branch  0x00003c17 
- 00014911  0x000030c2 fetch  0x00000001 , 0x00000b04 
- 00014912  0x000030c3 bne  0x00000006 , 0x00003c17 
- 00014913  0x000030c4 ifetch  0x00000006 , 0x00000003 
- 00014914  0x000030c5 store  0x00000006 , 0x000040a0 
- 00014915  0x000030c6 branch  0x00003c1a 
- 00014916  0x000030ca fetch  0x00000001 , 0x00000b04 
- 00014917  0x000030cb bne  0x00000006 , 0x00003c17 
- 00014918  0x000030cc ifetch  0x00000006 , 0x00000003 
- 00014919  0x000030cd store  0x00000006 , 0x000044a0 
- 00014920  0x000030ce branch  0x00003c1a 
- 00014921  0x000030d3 fetch  0x00000001 , 0x00000b04 
- 00014922  0x000030d4 bne  0x00000001 , 0x00003c17 
- 00014923  0x000030d5 copy  0x00000011 , 0x00000003 
- 00014924  0x000030d6 call  0x00003c1a 
- 00014925  0x000030d7 ifetcht  0x00000001 , 0x00000003 
- 00014926  0x000030d8 storet  0x00000001 , 0x000046a9 
- 00014927  0x000030d9 fetch  0x00000002 , 0x00004682 
- 00014928  0x000030da rtnbit1  0x00000009 
- 00014929  0x000030db rtnbit1  0x00000000 
- 00014930  0x000030dd fetch  0x00000001 , 0x000046a1 
- 00014931  0x000030de isolate1  0x00000000 , 0x0000003f 
- 00014932  0x000030df nbranch  0x00003a58 , 0x00000001 
- 00014933  0x000030e0 fetcht  0x00000001 , 0x000046a9 
- 00014934  0x000030e1 and  0x00000002 , 0x00000003 , 0x0000003f 
- 00014935  0x000030e2 store  0x00000001 , 0x00004093 
- 00014936  0x000030e4 fetch  0x00000001 , 0x000046a1 
- 00014937  0x000030e5 isolate1  0x00000001 , 0x0000003f 
- 00014938  0x000030e6 nrtn  0x00000001 
- 00014939  0x000030e7 fetcht  0x00000001 , 0x000046a9 
- 00014940  0x000030e8 isolate1  0x00000002 , 0x00000002 
- 00014941  0x000030e9 branch  0x000033fa , 0x00000001 
- 00014942  0x000030ea branch  0x000033f8 
- 00014943  0x000030ef fetch  0x00000001 , 0x00000b04 
- 00014944  0x000030f0 sub  0x0000003f , 0x00000043 , 0x0000003e 
- 00014945  0x000030f1 nbranch  0x00003c17 , 0x00000002 
- 00014946  0x000030f2 store  0x00000001 , 0x00004515 
- 00014947  0x000030f3 arg  0x00000008 , 0x00000039 
- 00014948  0x000030f4 call  0x00007ec6 
- 00014949  0x000030f5 fetch  0x00000001 , 0x00000b04 
- 00014950  0x000030f6 copy  0x0000003f , 0x00000039 
- 00014951  0x000030f7 copy  0x00000011 , 0x00000003 
- 00014952  0x000030f8 arg  0x00004516 , 0x00000005 
- 00014953  0x000030f9 call  0x000066ea 
- 00014954  0x000030fa branch  0x00003c1a 
- 00014955  0x000030ff fetch  0x00000001 , 0x00000b04 
- 00014956  0x00003100 sub  0x0000003f , 0x0000001d , 0x0000003e 
- 00014957  0x00003101 nbranch  0x00003c17 , 0x00000002 
- 00014958  0x00003102 store  0x00000001 , 0x000043af 
- 00014959  0x00003103 copy  0x0000003f , 0x00000039 
- 00014960  0x00003104 copy  0x00000011 , 0x00000003 
- 00014961  0x00003105 arg  0x000043b0 , 0x00000005 
- 00014962  0x00003106 call  0x000066ea 
- 00014963  0x00003107 call  0x000057a3 
- 00014964  0x00003108 branch  0x00003c1a 
- 00014965  0x0000310d fetch  0x00000001 , 0x00004682 
- 00014966  0x0000310e bbit0  0x00000004 , 0x00003c17 
- 00014967  0x0000310f call  0x000033ba 
- 00014968  0x00003110 branch  0x00003a86 , 0x00000001 
- 00014969  0x00003111 jam  0x00000000 , 0x00000b05 
- 00014970  0x00003113 call  0x0000397f 
- 00014971  0x00003114 fetch  0x00000001 , 0x00004568 
- 00014972  0x00003115 rtn  0x00000034 
- 00014973  0x00003116 fetch  0x00000002 , 0x00004573 
- 00014974  0x00003117 bne  0x00000000 , 0x00003a84 
- 00014975  0x00003118 fetch  0x00000001 , 0x00000b04 
- 00014976  0x00003119 store  0x00000002 , 0x00004573 
- 00014977  0x0000311b copy  0x00000011 , 0x00000003 
- 00014978  0x0000311e copy  0x00000003 , 0x0000003f 
- 00014979  0x0000311f store  0x00000002 , 0x00004571 
- 00014980  0x00003121 call  0x00003a88 
- 00014981  0x00003122 branch  0x00006c4d 
- 00014982  0x00003125 jam  0x00000000 , 0x00000b05 
- 00014983  0x00003126 branch  0x00003cd1 
- 00014984  0x00003129 call  0x00003a8e 
- 00014985  0x0000312a fetch  0x00000002 , 0x00004573 
- 00014986  0x0000312b fetcht  0x00000002 , 0x0000469f 
- 00014987  0x0000312c isub  0x00000002 , 0x0000003f 
- 00014988  0x0000312d store  0x00000002 , 0x00004573 
- 00014989  0x0000312e rtn 
- 00014990  0x00003131 fetch  0x00000002 , 0x00004573 
- 00014991  0x00003132 arg  0x0000006e , 0x00000002 
- 00014992  0x00003133 call  0x00007fdd 
- 00014993  0x00003134 fetcht  0x00000002 , 0x0000456c 
- 00014994  0x00003135 call  0x00007fdd 
- 00014995  0x00003136 fetcht  0x00000002 , 0x0000455e 
- 00014996  0x00003137 call  0x00007fdd 
- 00014997  0x00003138 store  0x00000002 , 0x0000469f 
- 00014998  0x00003139 rtn 
- 00014999  0x0000313c jam  0x00000001 , 0x00000b05 
- 00015000  0x0000313d jam  0x00000005 , 0x00000b03 
- 00015001  0x0000313e branch  0x00003c1a 
- 00015002  0x00003143 fetch  0x00000002 , 0x00004682 
- 00015003  0x00003144 bbit0  0x00000009 , 0x00003c17 
- 00015004  0x00003145 call  0x00003ad4 
- 00015005  0x00003146 branch  0x00003c17 , 0x00000028 
- 00015006  0x00003147 jam  0x00000000 , 0x00000b05 
- 00015007  0x00003148 fetch  0x00000001 , 0x000046bf 
- 00015008  0x00003149 bbit1  0x00000004 , 0x00003ab4 
- 00015009  0x0000314a fetch  0x00000001 , 0x000046c0 
- 00015010  0x0000314b nrtn  0x00000034 
- 00015011  0x0000314c jam  0x00000001 , 0x00000b05 
- 00015012  0x0000314d ifetch  0x00000002 , 0x00000003 
- 00015013  0x0000314e store  0x00000002 , 0x000046c1 
- 00015014  0x0000314f copy  0x00000003 , 0x0000003f 
- 00015015  0x00003150 store  0x00000002 , 0x000046c3 
- 00015016  0x00003151 fetch  0x00000001 , 0x00000b04 
- 00015017  0x00003152 pincrease  0xfffffffe 
- 00015018  0x00003153 nbranch  0x00003c17 , 0x00000002 
- 00015019  0x00003154 branch  0x00003c17 , 0x00000005 
- 00015020  0x00003155 store  0x00000001 , 0x000046c0 
- 00015021  0x00003156 jam  0x00000000 , 0x00000b05 
- 00015022  0x00003157 call  0x00005814 
- 00015023  0x00003158 call  0x00003ab7 
- 00015024  0x00003159 call  0x00003ab7 
- 00015025  0x0000315a call  0x00003ab7 
- 00015026  0x0000315b fetch  0x00000001 , 0x000046bf 
- 00015027  0x0000315c rtnbit0  0x00000004 
- 00015028  0x0000315e jam  0x00000001 , 0x00000b05 
- 00015029  0x0000315f call  0x00003cf6 
- 00015030  0x00003160 branch  0x00003c1a 
- 00015031  0x00003163 fetch  0x00000001 , 0x000046c0 
- 00015032  0x00003164 rtn  0x00000034 
- 00015033  0x00003165 call  0x00005892 
- 00015034  0x00003166 nrtn  0x00000034 
- 00015035  0x00003167 call  0x00003acf 
- 00015036  0x00003168 bpatch  0x000000e1 , 0x0000401c 
- 00015037  0x00003169 add  0x00000002 , 0xfffffffd , 0x0000003f 
- 00015038  0x0000316a fetcht  0x00000001 , 0x000046c0 
- 00015039  0x0000316b call  0x00007fdd 
- 00015040  0x0000316c copy  0x0000003f , 0x00000011 
- 00015041  0x0000316d copy  0x00000002 , 0x0000003f 
- 00015042  0x0000316e isub  0x00000011 , 0x0000003f 
- 00015043  0x0000316f store  0x00000001 , 0x000046c0 
- 00015044  0x00003170 fetcht  0x00000002 , 0x000046c1 
- 00015045  0x00003171 call  0x00005a64 
- 00015046  0x00003172 fetch  0x00000002 , 0x000046c3 
- 00015047  0x00003173 copy  0x0000003f , 0x00000003 
- 00015048  0x00003174 copy  0x00000011 , 0x00000039 
- 00015049  0x00003175 call  0x000066ea 
- 00015050  0x00003176 copy  0x00000003 , 0x0000003f 
- 00015051  0x00003177 store  0x00000002 , 0x000046c3 
- 00015052  0x00003178 fetch  0x00000001 , 0x000046c0 
- 00015053  0x00003179 nrtn  0x00000034 
- 00015054  0x0000317a branch  0x00003cf4 
- 00015055  0x0000317f arg  0x00000017 , 0x00000002 
- 00015056  0x00003180 fetch  0x00000001 , 0x000046bf 
- 00015057  0x00003181 rtnbit1  0x00000001 
- 00015058  0x00003182 fetcht  0x00000002 , 0x000044a8 
- 00015059  0x00003183 rtn 
- 00015060  0x00003186 fetch  0x00000001 , 0x000046bf 
- 00015061  0x00003187 bbit1  0x00000002 , 0x00005a42 
- 00015062  0x00003188 branch  0x00007fe9 
- 00015063  0x0000318d branch  0x00003c4c 
- 00015064  0x00003192 copy  0x00000011 , 0x00000003 
- 00015065  0x00003193 ifetch  0x00000001 , 0x00000003 
- 00015066  0x00003194 beq  0x00000000 , 0x00003adf 
- 00015067  0x00003195 beq  0x00000001 , 0x00003ae2 
- 00015068  0x00003196 beq  0x00000002 , 0x00003ae8 
- 00015069  0x00003197 beq  0x00000003 , 0x00003aea 
- 00015070  0x00003198 branch  0x00003c17 
- 00015071  0x0000319a call  0x0000612b 
- 00015072  0x0000319b jam  0x00000000 , 0x0000465a 
- 00015073  0x0000319c branch  0x00003c1a 
- 00015074  0x0000319e setarg  0x00040003 
- 00015075  0x000031a0 store  0x00000003 , 0x0000465b 
- 00015076  0x000031a1 store  0x00000001 , 0x00004662 
- 00015077  0x000031a2 call  0x00006124 
- 00015078  0x000031a3 jam  0x00000001 , 0x0000465a 
- 00015079  0x000031a4 branch  0x00003c1a 
- 00015080  0x000031a6 setarg  0x00040002 
- 00015081  0x000031a7 branch  0x00003ae3 
- 00015082  0x000031aa setarg  0x00040001 
- 00015083  0x000031ab branch  0x00003ae3 
- 00015084  0x000031af fetch  0x00000001 , 0x00000b04 
- 00015085  0x000031b0 sub  0x0000003f , 0x00000010 , 0x0000003e 
- 00015086  0x000031b1 nbranch  0x00003c17 , 0x00000002 
- 00015087  0x000031b2 store  0x00000001 , 0x00004689 
- 00015088  0x000031b3 copy  0x0000003f , 0x00000039 
- 00015089  0x000031b4 arg  0x0000468a , 0x00000005 
- 00015090  0x000031b5 call  0x000066fd 
- 00015091  0x000031b6 branch  0x00003c1a 
- 00015092  0x000031bb copy  0x00000011 , 0x00000003 
- 00015093  0x000031bc ifetch  0x00000001 , 0x00000003 
- 00015094  0x000031bd hfetcht  0x00000001 , 0x00008062 
- 00015095  0x000031be nsetflag  0x00000034 , 0x00000004 , 0x00000002 
- 00015096  0x000031bf hstoret  0x00000001 , 0x00008062 
- 00015097  0x000031c0 branch  0x00003c1a 
- 00015098  0x000031c5 fetch  0x00000001 , 0x00000b04 
- 00015099  0x000031c6 copy  0x0000003f , 0x00000039 
- 00015100  0x000031c7 copy  0x00000011 , 0x00000003 
- 00015101  0x000031c8 call  0x00007f58 
- 00015102  0x000031c9 setarg  0x016e3600 
- 00015103  0x000031ca idiv  0x00000002 
- 00015104  0x000031cb call  0x00007f86 
- 00015105  0x000031cc quotient  0x0000003f 
- 00015106  0x000031ce store  0x00000002 , 0x00004243 
- 00015107  0x000031cf call  0x00003c1a 
- 00015108  0x000031d0 call  0x00007f9e 
- 00015109  0x000031d1 branch  0x000066ce 
- 00015110  0x000031d6 arg  0x00000002 , 0x00000011 
- 00015111  0x000031d7 arg  0x0000469a , 0x00000012 
- 00015112  0x000031d8 arg  0x00000000 , 0x00000002 
- 00015113  0x000031d9 branch  0x00003c25 
- 00015114  0x000031db store  0x00000002 , 0x00000ac2 
- 00015115  0x000031dc arg  0x00000ac2 , 0x00000012 
- 00015116  0x000031dd arg  0x00000000 , 0x00000002 
- 00015117  0x000031de branch  0x00003c25 
- 00015118  0x000031e3 fetch  0x00000002 , 0x00004682 
- 00015119  0x000031e4 bbit0  0x00000000 , 0x00003c17 
- 00015120  0x000031e6 call  0x00003c1a 
- 00015121  0x000031e7 branch  0x000033e9 
- 00015122  0x000031ec fetch  0x00000002 , 0x00004682 
- 00015123  0x000031ed bbit0  0x00000009 , 0x00003c17 
- 00015124  0x000031ef call  0x00003c1a 
- 00015125  0x000031f0 branch  0x00003402 
- 00015126  0x000031f7 fetch  0x00000001 , 0x00000b04 
- 00015127  0x000031f8 copy  0x0000003f , 0x00000039 
- 00015128  0x000031f9 copy  0x00000011 , 0x00000003 
- 00015129  0x000031fa fetch  0x00000002 , 0x00004215 
- 00015130  0x000031fb icopy  0x00000005 
- 00015131  0x000031fc call  0x000066ea 
- 00015132  0x000031fd branch  0x00003c1a 
- 00015133  0x00003202 fetch  0x00000001 , 0x00004682 
- 00015134  0x00003203 bbit0  0x00000000 , 0x00003c17 
- 00015135  0x00003204 ifetch  0x00000001 , 0x00000003 
- 00015136  0x00003205 fetcht  0x00000001 , 0x00004661 
- 00015137  0x00003206 setflag  0x00000034 , 0x00000000 , 0x00000002 
- 00015138  0x00003207 set1  0x00000007 , 0x00000002 
- 00015139  0x00003208 storet  0x00000001 , 0x00004661 
- 00015140  0x0000320a call  0x00003c1a 
- 00015141  0x0000320c fetch  0x00000001 , 0x00004661 
- 00015142  0x0000320d bbit1  0x00000006 , 0x00003b2b 
- 00015143  0x0000320e rtn 
- 00015144  0x00003211 jam  0x00000000 , 0x00004661 
- 00015145  0x00003212 jam  0x00000021 , 0x00000a99 
- 00015146  0x00003213 branch  0x00007d8f 
- 00015147  0x00003217 bbit1  0x00000000 , 0x00005f95 
- 00015148  0x00003218 branch  0x00003b28 
- 00015149  0x0000321d fetch  0x00000001 , 0x00004682 
- 00015150  0x0000321e rtnbit0  0x00000004 
- 00015151  0x0000321f fetch  0x00000001 , 0x0000456b 
- 00015152  0x00003220 rtneq  0x00000000 
- 00015153  0x00003221 ifetch  0x00000001 , 0x00000003 
- 00015154  0x00003222 fetcht  0x00000001 , 0x00004569 
- 00015155  0x00003223 iadd  0x00000002 , 0x00000002 
- 00015156  0x00003224 storet  0x00000001 , 0x00004569 
- 00015157  0x00003225 rtn 
- 00015158  0x0000322a arg  0x00000040 , 0x00000039 
- 00015159  0x0000322b arg  0x0000436f , 0x00000005 
- 00015160  0x0000322c call  0x00007ed4 
- 00015161  0x0000322d setarg  0x00000000 
- 00015162  0x0000322e store  0x00000001 , 0x00000ab2 
- 00015163  0x0000322f copy  0x00000011 , 0x00000003 
- 00015164  0x00003231 copy  0x00000003 , 0x0000003f 
- 00015165  0x00003232 store  0x00000002 , 0x00000ab6 
- 00015166  0x00003233 call  0x00003b64 
- 00015167  0x00003235 fetch  0x00000001 , 0x00000ab2 
- 00015168  0x00003236 fetcht  0x00000001 , 0x00000aa2 
- 00015169  0x00003237 increase  0x00000001 , 0x00000002 
- 00015170  0x00003238 iadd  0x00000002 , 0x0000003f 
- 00015171  0x00003239 store  0x00000001 , 0x00000ab2 
- 00015172  0x0000323b sub  0x0000003f , 0x0000001f , 0x0000003e 
- 00015173  0x0000323c nbranch  0x00003b50 , 0x00000002 
- 00015174  0x0000323e fetcht  0x00000001 , 0x0000436f 
- 00015175  0x0000323f setarg  0x00004370 
- 00015176  0x00003240 iadd  0x00000002 , 0x0000003f 
- 00015177  0x00003241 store  0x00000002 , 0x00000abb 
- 00015178  0x00003242 fetcht  0x00000001 , 0x00000aa2 
- 00015179  0x00003243 increase  0x00000001 , 0x00000002 
- 00015180  0x00003244 fetch  0x00000001 , 0x0000436f 
- 00015181  0x00003245 iadd  0x00000002 , 0x0000003f 
- 00015182  0x00003246 store  0x00000001 , 0x0000436f 
- 00015183  0x00003247 branch  0x00003b59 
- 00015184  0x00003249 fetcht  0x00000001 , 0x0000438f 
- 00015185  0x0000324a setarg  0x00004390 
- 00015186  0x0000324b iadd  0x00000002 , 0x0000003f 
- 00015187  0x0000324c store  0x00000002 , 0x00000abb 
- 00015188  0x0000324d fetcht  0x00000001 , 0x00000aa2 
- 00015189  0x0000324e increase  0x00000001 , 0x00000002 
- 00015190  0x0000324f fetch  0x00000001 , 0x0000438f 
- 00015191  0x00003250 iadd  0x00000002 , 0x0000003f 
- 00015192  0x00003251 store  0x00000001 , 0x0000438f 
- 00015193  0x00003253 fetch  0x00000002 , 0x00000abb 
- 00015194  0x00003254 copy  0x0000003f , 0x00000005 
- 00015195  0x00003255 fetch  0x00000002 , 0x00000ab6 
- 00015196  0x00003256 copy  0x0000003f , 0x00000003 
- 00015197  0x00003258 copy  0x00000002 , 0x00000039 
- 00015198  0x00003259 call  0x000066ea 
- 00015199  0x0000325b fetch  0x00000001 , 0x00000b04 
- 00015200  0x0000325c fetcht  0x00000001 , 0x00000ab2 
- 00015201  0x0000325d isub  0x00000002 , 0x0000003e 
- 00015202  0x0000325e nbranch  0x00003b3c , 0x00000005 
- 00015203  0x0000325f branch  0x00003c1a 
- 00015204  0x00003263 ifetch  0x00000001 , 0x00000003 
- 00015205  0x00003264 store  0x00000001 , 0x00000aa2 
- 00015206  0x00003265 ifetch  0x00000001 , 0x00000003 
- 00015207  0x00003266 store  0x00000001 , 0x00000aae 
- 00015208  0x00003267 rtn 
- 00015209  0x0000326c arg  0x00000000 , 0x00000002 
- 00015210  0x0000326d arg  0x00000002 , 0x00000011 
- 00015211  0x0000326e fetch  0x00000002 , 0x000046b4 
- 00015212  0x0000326f store  0x00000002 , 0x00000ac2 
- 00015213  0x00003270 arg  0x00000ac2 , 0x00000012 
- 00015214  0x00003271 branch  0x00003c25 
- 00015215  0x00003276 fetch  0x00000001 , 0x00000b04 
- 00015216  0x00003277 bne  0x00000001 , 0x00003c17 
- 00015217  0x00003278 ifetch  0x00000001 , 0x00000003 
- 00015218  0x00003279 store  0x00000001 , 0x000046b2 
- 00015219  0x0000327a setarg  0x00000000 
- 00015220  0x0000327b store  0x00000002 , 0x000046b4 
- 00015221  0x0000327c branch  0x00003c1a 
- 00015222  0x00003281 ifetch  0x00000004 , 0x00000003 
- 00015223  0x00003282 store  0x00000004 , 0x0000468a 
- 00015224  0x00003283 jam  0x00000004 , 0x00004689 
- 00015225  0x00003284 jam  0x00000000 , 0x00004663 
- 00015226  0x00003285 call  0x00003c1a 
- 00015227  0x00003286 branch  0x00005f31 
- 00015228  0x0000328b fetch  0x00000001 , 0x00000b04 
- 00015229  0x0000328c bne  0x00000003 , 0x00003c17 
- 00015230  0x0000328d ifetch  0x00000001 , 0x00000003 
- 00015231  0x0000328e beq  0x00000000 , 0x00003b82 
- 00015232  0x0000328f beq  0x00000001 , 0x00003b8a 
- 00015233  0x00003290 branch  0x00003c17 
- 00015234  0x00003293 ifetcht  0x00000001 , 0x00000003 
- 00015235  0x00003294 ifetch  0x00000001 , 0x00000003 
- 00015236  0x00003295 beq  0x00000002 , 0x00003b88 
- 00015237  0x00003296 nsetflag  0x00000034 , 0x00000007 , 0x00000002 
- 00015238  0x00003297 call  0x000067fb 
- 00015239  0x00003298 branch  0x00003c1a 
- 00015240  0x0000329b call  0x00006806 
- 00015241  0x0000329c branch  0x00003c1a 
- 00015242  0x0000329f ifetcht  0x00000001 , 0x00000003 
- 00015243  0x000032a0 call  0x00006812 
- 00015244  0x000032a1 ifetch  0x00000001 , 0x00000003 
- 00015245  0x000032a2 isolate1  0x00000000 , 0x0000003f 
- 00015246  0x000032a3 call  0x0000682c 
- 00015247  0x000032a4 branch  0x00003c1a 
- 00015248  0x000032a9 fetch  0x00000001 , 0x00000b04 
- 00015249  0x000032aa bne  0x00000001 , 0x00003c17 
- 00015250  0x000032ab ifetcht  0x00000001 , 0x00000003 
- 00015251  0x000032ac call  0x0000681d 
- 00015252  0x000032ad setarg  0x00000000 
- 00015253  0x000032ae nsetflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00015254  0x000032af arg  0x00000001 , 0x00000011 
- 00015255  0x000032b0 branch  0x00003b0a 
- 00015256  0x000032b5 copy  0x00000011 , 0x00000003 
- 00015257  0x000032b6 ifetch  0x00000001 , 0x00000003 
- 00015258  0x000032b7 copy  0x0000003f , 0x00000002 
- 00015259  0x000032b8 beq  0x00000081 , 0x00003ba3 
- 00015260  0x000032b9 beq  0x00000082 , 0x00003ba8 
- 00015261  0x000032ba beq  0x00000083 , 0x00003bae 
- 00015262  0x000032bb store  0x00000001 , 0x000044c6 
- 00015263  0x000032bc beq  0x00000000 , 0x00003bb3 
- 00015264  0x000032bd beq  0x00000001 , 0x00003bb6 
- 00015265  0x000032be beq  0x00000002 , 0x00003bb8 
- 00015266  0x000032bf branch  0x00003c17 
- 00015267  0x000032c2 fetch  0x00000001 , 0x000044be 
- 00015268  0x000032c3 branch  0x00003c17 , 0x00000034 
- 00015269  0x000032c4 storet  0x00000001 , 0x000044c6 
- 00015270  0x000032c5 jam  0x0000000d , 0x00004456 
- 00015271  0x000032c6 branch  0x00003bb4 
- 00015272  0x000032c8 fetch  0x00000001 , 0x000044be 
- 00015273  0x000032c9 branch  0x00003c17 , 0x00000034 
- 00015274  0x000032ca storet  0x00000001 , 0x000044c6 
- 00015275  0x000032cb jam  0x0000000d , 0x00004456 
- 00015276  0x000032cc jam  0x00000001 , 0x00004454 
- 00015277  0x000032cd branch  0x00003c1a 
- 00015278  0x000032cf fetch  0x00000001 , 0x000044be 
- 00015279  0x000032d0 branch  0x00003c17 , 0x00000034 
- 00015280  0x000032d1 storet  0x00000001 , 0x000044c6 
- 00015281  0x000032d2 jam  0x0000000d , 0x00004456 
- 00015282  0x000032d3 branch  0x00003bb9 
- 00015283  0x000032d5 jam  0x00000000 , 0x00004456 
- 00015284  0x000032d7 jam  0x00000003 , 0x00004454 
- 00015285  0x000032d8 branch  0x00003c1a 
- 00015286  0x000032da jam  0x00000005 , 0x00004456 
- 00015287  0x000032db branch  0x00003bb4 
- 00015288  0x000032dd jam  0x00000005 , 0x00004456 
- 00015289  0x000032df jam  0x00000000 , 0x00004454 
- 00015290  0x000032e0 branch  0x00003c1a 
- 00015291  0x000032e5 fetch  0x00000001 , 0x00000b04 
- 00015292  0x000032e6 sub  0x0000003f , 0x0000001f , 0x0000003e 
- 00015293  0x000032e7 nbranch  0x00003c17 , 0x00000002 
- 00015294  0x000032e8 store  0x00000001 , 0x0000436f 
- 00015295  0x000032e9 copy  0x0000003f , 0x00000039 
- 00015296  0x000032ea copy  0x00000011 , 0x00000003 
- 00015297  0x000032eb arg  0x00004370 , 0x00000005 
- 00015298  0x000032ec call  0x000066ea 
- 00015299  0x000032ed branch  0x00003c1a 
- 00015300  0x000032f2 fetch  0x00000001 , 0x00000b04 
- 00015301  0x000032f3 sub  0x0000003f , 0x0000001f , 0x0000003e 
- 00015302  0x000032f4 nbranch  0x00003c17 , 0x00000002 
- 00015303  0x000032f5 store  0x00000001 , 0x0000438f 
- 00015304  0x000032f6 copy  0x0000003f , 0x00000039 
- 00015305  0x000032f7 copy  0x00000011 , 0x00000003 
- 00015306  0x000032f8 arg  0x00004390 , 0x00000005 
- 00015307  0x000032f9 call  0x000066ea 
- 00015308  0x000032fa branch  0x00003c1a 
- 00015309  0x000032ff fetch  0x00000002 , 0x00004682 
- 00015310  0x00003300 bbit0  0x00000009 , 0x00003c17 
- 00015311  0x00003301 fetch  0x00000001 , 0x00000b04 
- 00015312  0x00003302 bne  0x00000008 , 0x00003c17 
- 00015313  0x00003303 copy  0x00000011 , 0x00000003 
- 00015314  0x00003304 ifetch  0x00000008 , 0x00000003 
- 00015315  0x00003305 store  0x00000008 , 0x00004496 
- 00015316  0x00003306 jam  0x00000012 , 0x00000a99 
- 00015317  0x00003307 call  0x00007d8f 
- 00015318  0x00003308 branch  0x00003c1a 
- 00015319  0x0000330d ifetch  0x00000002 , 0x00000003 
- 00015320  0x0000330e store  0x00000002 , 0x00004482 
- 00015321  0x0000330f branch  0x00003c1a 
- 00015322  0x00003314 fetch  0x00000001 , 0x000044c6 
- 00015323  0x00003315 branch  0x00003c17 , 0x00000034 
- 00015324  0x00003316 fetch  0x00000001 , 0x000044c4 
- 00015325  0x00003317 bne  0x00000000 , 0x00003c17 
- 00015326  0x00003318 fetch  0x00000001 , 0x000044c5 
- 00015327  0x00003319 bne  0x00000000 , 0x00003c17 
- 00015328  0x0000331a call  0x00007e25 
- 00015329  0x0000331b branch  0x00003c1a 
- 00015330  0x00003320 fetch  0x00000001 , 0x00000b04 
- 00015331  0x00003321 bne  0x00000005 , 0x00003c17 
- 00015332  0x00003322 ifetch  0x00000001 , 0x00000003 
- 00015333  0x00003323 store  0x00000001 , 0x000046a2 
- 00015334  0x00003324 ifetch  0x00000004 , 0x00000003 
- 00015335  0x00003325 store  0x00000004 , 0x000046a3 
- 00015336  0x00003326 fetcht  0x00000001 , 0x000046a2 
- 00015337  0x00003327 call  0x0000680e 
- 00015338  0x00003328 call  0x00003cbc 
- 00015339  0x00003329 branch  0x00003c1a 
- 00015340  0x0000332e fetch  0x00000001 , 0x00000b04 
- 00015341  0x0000332f bne  0x00000001 , 0x00003c17 
- 00015342  0x00003330 ifetch  0x00000001 , 0x00000003 
- 00015343  0x00003331 store  0x00000001 , 0x000041de 
- 00015344  0x00003332 branch  0x00003c1a 
- 00015345  0x00003337 ifetch  0x00000001 , 0x00000003 
- 00015346  0x00003338 beq  0x00000001 , 0x00003bfa 
- 00015347  0x00003339 fetch  0x00000001 , 0x000044c1 
- 00015348  0x0000333a beq  0x00000003 , 0x00003bf8 
- 00015349  0x0000333b beq  0x00000006 , 0x00003bf8 
- 00015350  0x0000333c beq  0x00000007 , 0x00003bf8 
- 00015351  0x0000333d branch  0x00003c17 
- 00015352  0x0000333f jam  0x00000001 , 0x000044c2 
- 00015353  0x00003340 branch  0x00003c1a 
- 00015354  0x00003343 call  0x00005b53 
- 00015355  0x00003344 branch  0x00003c1a 
- 00015356  0x00003349 fetch  0x00000001 , 0x00000b04 
- 00015357  0x0000334a bne  0x00000001 , 0x00003c17 
- 00015358  0x0000334b call  0x00003c1a 
- 00015359  0x0000334c ifetch  0x00000001 , 0x00000003 
- 00015360  0x0000334d branch  0x000060cb , 0x00000034 
- 00015361  0x0000334e branch  0x000060c9 
- 00015362  0x00003353 call  0x00003c1a 
- 00015363  0x00003354 call  0x00007f9e 
- 00015364  0x00003355 jam  0x00000001 , 0x00008010 
- 00015365  0x00003356 branch  0x00002a8e 
- 00015366  0x0000335b fetch  0x00000001 , 0x00000b04 
- 00015367  0x0000335c beq  0x00000000 , 0x00003c17 
- 00015368  0x0000335d ifetch  0x00000001 , 0x00000003 
- 00015369  0x0000335e branch  0x00003c13 , 0x00000034 
- 00015370  0x0000335f fetch  0x00000001 , 0x00000b04 
- 00015371  0x00003360 bne  0x00000005 , 0x00003c17 
- 00015372  0x00003361 ifetch  0x00000004 , 0x00000003 
- 00015373  0x00003362 arg  0x000f4240 , 0x00000002 
- 00015374  0x00003363 isub  0x00000002 , 0x0000003e 
- 00015375  0x00003364 branch  0x00003c17 , 0x00000002 
- 00015376  0x00003365 store  0x00000004 , 0x000044c7 
- 00015377  0x00003366 call  0x0000580c 
- 00015378  0x00003367 branch  0x00003c1a 
- 00015379  0x0000336a call  0x0000580e 
- 00015380  0x0000336b branch  0x00003c1a 
- 00015381  0x00003370 jam  0x00000000 , 0x00004091 
- 00015382  0x00003371 branch  0x00003c1a 
- 00015383  0x00003377 arg  0x00000001 , 0x00000002 
- 00015384  0x00003378 arg  0x00000000 , 0x00000011 
- 00015385  0x00003379 branch  0x00003c25 
- 00015386  0x0000337d arg  0x00000000 , 0x00000002 
- 00015387  0x0000337e arg  0x00000000 , 0x00000011 
- 00015388  0x0000337f branch  0x00003c25 
- 00015389  0x00003384 jam  0x00000000 , 0x00000b03 
- 00015390  0x00003385 branch  0x00003c49 
- 00015391  0x0000338a jam  0x00000002 , 0x00000b03 
- 00015392  0x0000338b branch  0x00003c49 
- 00015393  0x00003390 jam  0x00000003 , 0x00000b03 
- 00015394  0x00003391 branch  0x00003c49 
- 00015395  0x00003396 jam  0x00000005 , 0x00000b03 
- 00015396  0x00003397 branch  0x00003c49 
- 00015397  0x000033a0 fetch  0x00000001 , 0x00000b03 
- 00015398  0x000033a1 copy  0x0000003f , 0x00000013 
- 00015399  0x000033a2 jam  0x00000006 , 0x00000b03 
- 00015400  0x000033a3 setarg  0x00000002 
- 00015401  0x000033a4 iadd  0x00000011 , 0x0000003f 
- 00015402  0x000033a5 call  0x00003ca7 
- 00015403  0x000033a6 copy  0x00000013 , 0x0000003f 
- 00015404  0x000033a7 istore  0x00000001 , 0x0000000a 
- 00015405  0x000033a8 istoret  0x00000001 , 0x0000000a 
- 00015406  0x000033a9 copy  0x00000011 , 0x00000039 
- 00015407  0x000033aa copy  0x00000012 , 0x00000006 
- 00015408  0x000033ab call  0x000066e4 
- 00015409  0x000033ac branch  0x000066c5 
- 00015410  0x000033b2 call  0x0000397f 
- 00015411  0x000033b3 jam  0x00000007 , 0x00000b03 
- 00015412  0x000033b4 fetch  0x00000001 , 0x000004ff 
- 00015413  0x000033b5 rtn  0x00000034 
- 00015414  0x000033b6 call  0x00003ca7 
- 00015415  0x000033b7 fetch  0x00000001 , 0x000004ff 
- 00015416  0x000033b8 copy  0x0000003f , 0x00000039 
- 00015417  0x000033b9 fetch  0x00000002 , 0x00000501 
- 00015418  0x000033ba copy  0x0000003f , 0x00000006 
- 00015419  0x000033bb call  0x000066d1 
- 00015420  0x000033bc branch  0x000066c5 
- 00015421  0x000033c1 jam  0x00000008 , 0x00000b03 
- 00015422  0x000033c2 fetch  0x00000001 , 0x000046b6 
- 00015423  0x000033c3 icopy  0x00000039 
- 00015424  0x000033c4 increase  0x00000002 , 0x0000003f 
- 00015425  0x000033c5 call  0x00003ca7 
- 00015426  0x000033c6 fetch  0x00000002 , 0x000046b9 
- 00015427  0x000033c7 istore  0x00000002 , 0x0000000a 
- 00015428  0x000033c8 fetch  0x00000002 , 0x000046b7 
- 00015429  0x000033c9 icopy  0x00000006 
- 00015430  0x000033ca call  0x000066d1 
- 00015431  0x000033cb branch  0x000066c5 
- 00015432  0x000033d0 jam  0x00000009 , 0x00000b03 
- 00015433  0x000033d2 setarg  0x00000000 
- 00015434  0x000033d3 call  0x00003ca7 
- 00015435  0x000033d4 branch  0x000066c5 
- 00015436  0x000033d9 jam  0x0000000a , 0x00000b03 
- 00015437  0x000033da setarg  0x00000001 
- 00015438  0x000033db call  0x00003ca7 
- 00015439  0x000033dd call  0x00003c5d 
- 00015440  0x000033df fetch  0x00000002 , 0x00004682 
- 00015441  0x000033e0 arg  0x00000002 , 0x00000007 
- 00015442  0x000033e1 qisolate1  0x0000003f 
- 00015443  0x000033e2 setflag  0x00000001 , 0x00000003 , 0x00000002 
- 00015444  0x000033e4 arg  0x00000009 , 0x00000007 
- 00015445  0x000033e5 qisolate1  0x0000003f 
- 00015446  0x000033e6 setflag  0x00000001 , 0x00000005 , 0x00000002 
- 00015447  0x000033e8 fetch  0x00000001 , 0x00004682 
- 00015448  0x000033e9 arg  0x00000004 , 0x00000007 
- 00015449  0x000033ea qisolate1  0x0000003f 
- 00015450  0x000033eb setflag  0x00000001 , 0x00000004 , 0x00000002 
- 00015451  0x000033ed istoret  0x00000001 , 0x0000000a 
- 00015452  0x000033ee branch  0x000066c5 
- 00015453  0x000033f3 arg  0x00000000 , 0x00000002 
- 00015454  0x000033f4 fetch  0x00000001 , 0x00004093 
- 00015455  0x000033f5 arg  0x00000000 , 0x00000007 
- 00015456  0x000033f6 qisolate1  0x0000003f 
- 00015457  0x000033f7 setflag  0x00000001 , 0x00000000 , 0x00000002 
- 00015458  0x000033f8 arg  0x00000001 , 0x00000007 
- 00015459  0x000033f9 qisolate1  0x0000003f 
- 00015460  0x000033fa setflag  0x00000001 , 0x00000001 , 0x00000002 
- 00015461  0x000033fc fetch  0x00000001 , 0x0000436e 
- 00015462  0x000033fd arg  0x00000000 , 0x00000007 
- 00015463  0x000033fe qisolate1  0x0000003f 
- 00015464  0x000033ff setflag  0x00000001 , 0x00000002 , 0x00000002 
- 00015465  0x00003400 rtn 
- 00015466  0x00003405 jam  0x0000000d , 0x00000b03 
- 00015467  0x00003406 fetch  0x00000001 , 0x00004217 
- 00015468  0x00003407 mul32  0x0000003f , 0x00000022 , 0x0000003f 
- 00015469  0x00003408 icopy  0x00000039 
- 00015470  0x00003409 call  0x00003ca7 
- 00015471  0x0000340a fetch  0x00000002 , 0x00004215 
- 00015472  0x0000340b icopy  0x00000006 
- 00015473  0x0000340c call  0x000066d1 
- 00015474  0x0000340d branch  0x000066c5 
- 00015475  0x00003412 jam  0x0000000e , 0x00000b03 
- 00015476  0x00003413 setarg  0x00000004 
- 00015477  0x00003414 call  0x00003ca7 
- 00015478  0x00003415 fetch  0x00000004 , 0x000009ba 
- 00015479  0x00003416 istore  0x00000004 , 0x0000000a 
- 00015480  0x00003417 branch  0x000066c5 
- 00015481  0x0000341c jam  0x0000000f , 0x00000b03 
- 00015482  0x0000341d hfetch  0x00000002 , 0x00008112 
- 00015483  0x0000341e arg  0x000000ff , 0x00000002 
- 00015484  0x0000341f call  0x00007fdd 
- 00015485  0x00003420 copy  0x0000003f , 0x00000039 
- 00015486  0x00003421 call  0x00003ca7 
- 00015487  0x00003422 call  0x000066cb 
- 00015488  0x00003423 call  0x00006703 
- 00015489  0x00003424 branch  0x000066c5 
- 00015490  0x00003429 jam  0x00000010 , 0x00000b03 
- 00015491  0x0000342a branch  0x00003c49 
- 00015492  0x0000342f jam  0x00000011 , 0x00000b03 
- 00015493  0x00003430 setarg  0x00000004 
- 00015494  0x00003431 call  0x00003ca7 
- 00015495  0x00003432 fetch  0x00000004 , 0x000044c7 
- 00015496  0x00003433 istore  0x00000004 , 0x0000000a 
- 00015497  0x00003434 branch  0x000066c5 
- 00015498  0x00003439 arg  0x00000180 , 0x00000011 
- 00015499  0x0000343a branch  0x00003c91 
- 00015500  0x0000343d arg  0x00000080 , 0x00000011 
- 00015501  0x0000343e branch  0x00003c91 
- 00015502  0x00003441 arg  0x00000101 , 0x00000011 
- 00015503  0x00003442 branch  0x00003c91 
- 00015504  0x00003445 arg  0x00000001 , 0x00000011 
- 00015505  0x00003448 jam  0x00000000 , 0x00004661 
- 00015506  0x00003449 jam  0x00000014 , 0x00000b03 
- 00015507  0x0000344a setarg  0x00000002 
- 00015508  0x0000344b call  0x00003ca7 
- 00015509  0x0000344c copy  0x00000011 , 0x0000003f 
- 00015510  0x0000344d istore  0x00000002 , 0x0000000a 
- 00015511  0x0000344e branch  0x000066c5 
- 00015512  0x00003453 arg  0x00000000 , 0x00000013 
- 00015513  0x00003454 branch  0x00003c9b 
- 00015514  0x00003457 arg  0x00000001 , 0x00000013 
- 00015515  0x0000345a jam  0x00000015 , 0x00000b03 
- 00015516  0x0000345b setarg  0x00000001 
- 00015517  0x0000345c call  0x00003ca7 
- 00015518  0x0000345d copy  0x00000013 , 0x0000003f 
- 00015519  0x0000345e istore  0x00000001 , 0x0000000a 
- 00015520  0x0000345f branch  0x000066c5 
- 00015521  0x00003464 jam  0x0000001d , 0x00000b03 
- 00015522  0x00003465 setarg  0x00000004 
- 00015523  0x00003466 call  0x00003ca7 
- 00015524  0x00003467 fetch  0x00000004 , 0x000009ba 
- 00015525  0x00003468 istore  0x00000004 , 0x0000000a 
- 00015526  0x00003469 branch  0x000066c5 
- 00015527  0x00003475 jam  0x00000002 , 0x00000b02 
- 00015528  0x00003476 store  0x00000001 , 0x00000b04 
- 00015529  0x00003477 storet  0x00000008 , 0x00000aa2 
- 00015530  0x00003478 bpatch  0x000000e2 , 0x0000401c 
- 00015531  0x00003479 call  0x00003cb1 
- 00015532  0x0000347a fetcht  0x00000008 , 0x00000aa2 
- 00015533  0x0000347b call  0x000066c2 
- 00015534  0x0000347c fetch  0x00000003 , 0x00000b02 
- 00015535  0x0000347d istore  0x00000003 , 0x0000000a 
- 00015536  0x0000347e rtn 
- 00015537  0x00003482 call  0x00003cba 
- 00015538  0x00003483 rtn  0x00000001 
- 00015539  0x00003485 call  0x00003cb8 
- 00015540  0x00003486 fetch  0x00000004 , 0x000046a3 
- 00015541  0x00003487 rshift2  0x0000003f , 0x0000003f 
- 00015542  0x00003488 rtn  0x00000034 
- 00015543  0x00003489 branch  0x00003cbe 
- 00015544  0x0000348d fetcht  0x00000001 , 0x000046a2 
- 00015545  0x0000348e branch  0x00006829 
- 00015546  0x00003491 fetcht  0x00000001 , 0x000046a2 
- 00015547  0x00003492 branch  0x0000681b 
- 00015548  0x00003495 fetcht  0x00000001 , 0x000046a2 
- 00015549  0x00003496 branch  0x00006825 
- 00015550  0x0000349a increase  0xffffffff , 0x0000003f 
- 00015551  0x0000349b nop  0x00000026 
- 00015552  0x0000349c nbranch  0x00003cbe , 0x00000034 
- 00015553  0x0000349d rtn 
- 00015554  0x000034a7 call  0x00003ad4 
- 00015555  0x000034a8 rtn  0x00000028 
- 00015556  0x000034a9 copy  0x00000011 , 0x0000003f 
- 00015557  0x000034aa store  0x00000002 , 0x000046b7 
- 00015558  0x000034ab copy  0x00000012 , 0x0000003f 
- 00015559  0x000034ac store  0x00000001 , 0x000046b6 
- 00015560  0x000034ad fetch  0x00000002 , 0x00000478 
- 00015561  0x000034ae fetcht  0x00000002 , 0x000046bb 
- 00015562  0x000034af isub  0x00000002 , 0x0000003e 
- 00015563  0x000034b0 branch  0x00003ccf , 0x00000005 
- 00015564  0x000034b1 fetcht  0x00000002 , 0x000046bd 
- 00015565  0x000034b2 isub  0x00000002 , 0x0000003e 
- 00015566  0x000034b3 nrtn  0x00000005 
- 00015567  0x000034b5 store  0x00000002 , 0x000046b9 
- 00015568  0x000034b6 branch  0x00003c3d 
- 00015569  0x000034bc fetch  0x00000001 , 0x000046bf 
- 00015570  0x000034bd rtnbit1  0x00000005 
- 00015571  0x000034be call  0x00003cf0 
- 00015572  0x000034bf branch  0x0000340c 
- 00015573  0x000034c3 jam  0x00000002 , 0x00004172 
- 00015574  0x000034c4 rtn 
- 00015575  0x000034c9 branch  0x00003cd8 
- 00015576  0x000034cc fetch  0x00000001 , 0x000046b2 
- 00015577  0x000034cd rtn  0x00000034 
- 00015578  0x000034ce fetch  0x00000001 , 0x000046b3 
- 00015579  0x000034cf rtn  0x00000034 
- 00015580  0x000034d0 increase  0xffffffff , 0x0000003f 
- 00015581  0x000034d1 store  0x00000001 , 0x000046b3 
- 00015582  0x000034d2 nrtn  0x00000034 
- 00015583  0x000034d3 jam  0x0000000a , 0x000046b3 
- 00015584  0x000034d4 call  0x000068eb 
- 00015585  0x000034d5 call  0x00006908 
- 00015586  0x000034d6 div  0x0000003f , 0x00000064 
- 00015587  0x000034d7 call  0x00007f86 
- 00015588  0x000034d8 quotient  0x0000003f 
- 00015589  0x000034d9 remainder  0x00000002 
- 00015590  0x000034da store  0x00000001 , 0x000046b4 
- 00015591  0x000034db storet  0x00000001 , 0x000046b5 
- 00015592  0x000034dc rtn 
- 00015593  0x000034e0 call  0x00007fb4 
- 00015594  0x000034e1 branch  0x000033d9 , 0x00000002 
- 00015595  0x000034e2 branch  0x000033db 
- 00015596  0x000034e7 arg  0x00000006 , 0x00000007 
- 00015597  0x000034e8 branch  0x00003cfc 
- 00015598  0x000034eb arg  0x00000006 , 0x00000007 
- 00015599  0x000034ec branch  0x00003cf8 
- 00015600  0x000034ef arg  0x00000005 , 0x00000007 
- 00015601  0x000034f0 branch  0x00003cfc 
- 00015602  0x000034f3 arg  0x00000005 , 0x00000007 
- 00015603  0x000034f4 branch  0x00003cf8 
- 00015604  0x000034f7 arg  0x00000004 , 0x00000007 
- 00015605  0x000034f8 branch  0x00003cfc 
- 00015606  0x000034fb arg  0x00000004 , 0x00000007 
- 00015607  0x000034fc branch  0x00003cf8 
- 00015608  0x000034ff fetch  0x00000001 , 0x000046bf 
- 00015609  0x00003500 qset0  0x0000003f 
- 00015610  0x00003501 store  0x00000001 , 0x000046bf 
- 00015611  0x00003502 rtn 
- 00015612  0x00003505 fetch  0x00000001 , 0x000046bf 
- 00015613  0x00003506 qset1  0x0000003f 
- 00015614  0x00003507 store  0x00000001 , 0x000046bf 
- 00015615  0x00003508 rtn 
- 00015616  0x00003513 call  0x00003d39 
- 00015617  0x00003514 call  0x0000640f 
- 00015618  0x00003515 call  0x000040c6 
- 00015619  0x00003516 call  0x00003d66 
- 00015620  0x00003517 call  0x00006411 
- 00015621  0x00003518 rtn  0x0000002b 
- 00015622  0x00003519 call  0x00003d16 
- 00015623  0x0000351a call  0x00003d19 
- 00015624  0x0000351d fetch  0x00000004 , 0x000046d3 
- 00015625  0x0000351e rtnbit1  0x00000010 
- 00015626  0x0000351f call  0x00003d4e 
- 00015627  0x00003520 rtnmark1  0x00000026 
- 00015628  0x00003521 fetch  0x00000002 , 0x00004682 
- 00015629  0x00003522 bbit1  0x0000000c , 0x000042b0 
- 00015630  0x00003523 branch  0x000042a2 
- 00015631  0x00003527 fetch  0x00000004 , 0x000046d3 
- 00015632  0x00003528 rtnbit0  0x0000001b 
- 00015633  0x00003529 arg  0x00000014 , 0x00000039 
- 00015634  0x0000352b setarg  0x00030d40 
- 00015635  0x0000352c call  0x00002a8f 
- 00015636  0x0000352d loop  0x00007ec1 
- 00015637  0x0000352e rtn 
- 00015638  0x00003532 fetch  0x00000004 , 0x000046d3 
- 00015639  0x00003533 rtnbit0  0x00000010 
- 00015640  0x00003534 branch  0x000048ea 
- 00015641  0x00003538 setarg  0x0000416d 
- 00015642  0x00003539 store  0x00000002 , 0x000041ef 
- 00015643  0x0000353a setarg  0x00003f77 
- 00015644  0x0000353b store  0x00000002 , 0x000041f1 
- 00015645  0x0000353c setarg  0x00003ebb 
- 00015646  0x0000353d store  0x00000002 , 0x000041ed 
- 00015647  0x0000353e setarg  0x0000417c 
- 00015648  0x0000353f store  0x00000002 , 0x000041f5 
- 00015649  0x00003540 setarg  0x00003de3 
- 00015650  0x00003541 store  0x00000002 , 0x000041f3 
- 00015651  0x00003542 setarg  0x00003eb3 
- 00015652  0x00003543 store  0x00000002 , 0x000041eb 
- 00015653  0x00003544 setarg  0x00003d5b 
- 00015654  0x00003545 store  0x00000002 , 0x000041f9 
- 00015655  0x00003547 call  0x00002c7a 
- 00015656  0x00003548 setarg  0x00004401 
- 00015657  0x00003549 add  0x00000013 , 0x000000d8 , 0x00000005 
- 00015658  0x0000354a istore  0x00000002 , 0x00000005 
- 00015659  0x0000354b setarg  0x00004406 
- 00015660  0x0000354c add  0x00000013 , 0x000000da , 0x00000005 
- 00015661  0x0000354d istore  0x00000002 , 0x00000005 
- 00015662  0x0000354e setarg  0x00003ebf 
- 00015663  0x0000354f add  0x00000013 , 0x000000dc , 0x00000005 
- 00015664  0x00003550 istore  0x00000002 , 0x00000005 
- 00015665  0x00003552 setarg  0x000041f9 
- 00015666  0x00003553 store  0x00000002 , 0x000041fd 
- 00015667  0x00003554 setarg  0x00003d36 
- 00015668  0x00003555 store  0x00000002 , 0x00004201 
- 00015669  0x00003556 rtn 
- 00015670  0x00003559 fetch  0x00000004 , 0x000046d3 
- 00015671  0x0000355a bbit0  0x00000012 , 0x000064d7 
- 00015672  0x0000355b branch  0x000064da 
- 00015673  0x0000355e rtn  0x0000002b 
- 00015674  0x0000355f call  0x00002c9d 
- 00015675  0x00003560 call  0x00003e6e 
- 00015676  0x00003561 call  0x00003e1e 
- 00015677  0x00003562 call  0x00003e54 
- 00015678  0x00003563 call  0x00005810 
- 00015679  0x00003564 call  0x00005839 
- 00015680  0x00003565 call  0x0000582c 
- 00015681  0x00003566 call  0x00005818 
- 00015682  0x00003567 fetch  0x00000004 , 0x000046d3 
- 00015683  0x00003568 bbit1  0x00000014 , 0x00003d46 
- 00015684  0x00003569 bbit1  0x00000013 , 0x00004414 
- 00015685  0x0000356a rtn 
- 00015686  0x0000356d call  0x0000659c 
- 00015687  0x0000356e fetch  0x00000004 , 0x000046d3 
- 00015688  0x0000356f isolate1  0x00000019 , 0x0000003f 
- 00015689  0x00003570 ncall  0x000065c2 , 0x00000001 
- 00015690  0x00003571 call  0x0000443f 
- 00015691  0x00003572 call  0x00003dc9 
- 00015692  0x00003573 call  0x000041aa 
- 00015693  0x00003574 branch  0x000065df 
- 00015694  0x00003577 fetch  0x00000004 , 0x000046d3 
- 00015695  0x00003578 bbit0  0x0000001e , 0x00003d53 
- 00015696  0x00003579 fetch  0x00000001 , 0x00000abd 
- 00015697  0x0000357a isolate0  0x00000003 , 0x0000003f 
- 00015698  0x0000357b nrtn  0x00000001 
- 00015699  0x0000357d fetch  0x00000001 , 0x0000471f 
- 00015700  0x0000357e store  0x00000001 , 0x0000471e 
- 00015701  0x0000357f fetch  0x00000001 , 0x000046f5 
- 00015702  0x00003580 rtnbit1  0x00000006 
- 00015703  0x00003582 fetch  0x00000004 , 0x000046d3 
- 00015704  0x00003583 rtnbit0  0x00000011 
- 00015705  0x00003584 bbit1  0x0000001d , 0x00002ee4 
- 00015706  0x00003585 branch  0x00002f2c 
- 00015707  0x00003587 fetch  0x00000001 , 0x00000478 
- 00015708  0x00003588 sub  0x0000003f , 0x0000001a , 0x0000003f 
- 00015709  0x00003589 nrtn  0x00000005 
- 00015710  0x0000358a jam  0x00000012 , 0x00000a99 
- 00015711  0x0000358b call  0x00007d8f 
- 00015712  0x0000358d arg  0x00000000 , 0x00000007 
- 00015713  0x0000358e branch  0x000041b9 
- 00015714  0x00003591 fetch  0x00000001 , 0x000046b6 
- 00015715  0x00003592 rtneq  0x00000001 
- 00015716  0x00003593 jam  0x00000001 , 0x000046b6 
- 00015717  0x00003594 rtn 
- 00015718  0x00003596 fetch  0x00000001 , 0x000046e1 
- 00015719  0x00003597 and  0x0000003f , 0x0000000f , 0x0000003f 
- 00015720  0x00003598 store  0x00000001 , 0x0000477a 
- 00015721  0x00003599 branch  0x00003d80 
- 00015722  0x0000359d fetcht  0x00000001 , 0x000046e7 
- 00015723  0x0000359e call  0x0000681d 
- 00015724  0x0000359f nbranch  0x00003d62 , 0x00000001 
- 00015725  0x000035a1 fetch  0x00000001 , 0x000046b6 
- 00015726  0x000035a2 rtneq  0x00000000 
- 00015727  0x000035a3 jam  0x00000000 , 0x000046b6 
- 00015728  0x000035a4 fetch  0x00000001 , 0x0000477a 
- 00015729  0x000035a5 increase  0x00000001 , 0x0000003f 
- 00015730  0x000035a6 and  0x0000003f , 0x00000003 , 0x0000003f 
- 00015731  0x000035a7 store  0x00000001 , 0x0000477a 
- 00015732  0x000035a8 call  0x00003d7e 
- 00015733  0x000035a9 fetch  0x00000004 , 0x000046d3 
- 00015734  0x000035aa bbit1  0x00000014 , 0x0000443b 
- 00015735  0x000035ab bbit1  0x00000013 , 0x00003d79 
- 00015736  0x000035ac rtn 
- 00015737  0x000035ae arg  0x0000001e , 0x00000002 
- 00015738  0x000035af call  0x0000680e 
- 00015739  0x000035b0 arg  0x0000001f , 0x00000002 
- 00015740  0x000035b1 call  0x0000680e 
- 00015741  0x000035b2 branch  0x00004435 
- 00015742  0x000035b5 bpatch  0x000000e3 , 0x0000401c 
- 00015743  0x000035b6 call  0x0000424a 
- 00015744  0x000035b7 fetch  0x00000001 , 0x000046e0 
- 00015745  0x000035b8 beq  0x00000005 , 0x00003daa 
- 00015746  0x000035b9 beq  0x00000004 , 0x00003d96 
- 00015747  0x000035ba fetch  0x00000001 , 0x0000477a 
- 00015748  0x000035bb beq  0x00000000 , 0x00003d8a 
- 00015749  0x000035bc beq  0x00000001 , 0x00003d88 
- 00015750  0x000035bd beq  0x00000002 , 0x00003d8c 
- 00015751  0x000035be beq  0x00000003 , 0x00003d8e 
- 00015752  0x000035c0 fetch  0x00000001 , 0x00004780 
- 00015753  0x000035c1 branch  0x00003dbe 
- 00015754  0x000035c3 fetch  0x00000001 , 0x0000477f 
- 00015755  0x000035c4 branch  0x00003dbe 
- 00015756  0x000035c6 fetch  0x00000001 , 0x00004781 
- 00015757  0x000035c7 branch  0x00003dbe 
- 00015758  0x000035c9 fetch  0x00000001 , 0x00004782 
- 00015759  0x000035ca branch  0x00003dbe 
- 00015760  0x000035cc fetch  0x00000001 , 0x000046e0 
- 00015761  0x000035cd rtneq  0x00000006 
- 00015762  0x000035ce fetch  0x00000001 , 0x000046b5 
- 00015763  0x000035cf increase  0x00000001 , 0x0000003f 
- 00015764  0x000035d0 store  0x00000001 , 0x000046b5 
- 00015765  0x000035d1 rtn 
- 00015766  0x000035d4 fetch  0x00000001 , 0x0000477a 
- 00015767  0x000035d5 beq  0x00000000 , 0x00003d9d 
- 00015768  0x000035d6 beq  0x00000001 , 0x00003d9b 
- 00015769  0x000035d7 beq  0x00000002 , 0x00003d9f 
- 00015770  0x000035d8 beq  0x00000003 , 0x00003da1 
- 00015771  0x000035da fetch  0x00000001 , 0x00004784 
- 00015772  0x000035db branch  0x00003da2 
- 00015773  0x000035dd fetch  0x00000001 , 0x00004783 
- 00015774  0x000035de branch  0x00003da2 
- 00015775  0x000035e0 fetch  0x00000001 , 0x00004785 
- 00015776  0x000035e1 branch  0x00003da2 
- 00015777  0x000035e3 fetch  0x00000001 , 0x00004786 
- 00015778  0x000035e5 store  0x00000001 , 0x000046b5 
- 00015779  0x000035e6 lshift8  0x0000003f , 0x0000003f 
- 00015780  0x000035e7 copy  0x0000003f , 0x00000011 
- 00015781  0x000035e8 add  0x0000003f , 0x0000000d , 0x0000003f 
- 00015782  0x000035e9 call  0x00006413 
- 00015783  0x000035ea copy  0x00000011 , 0x0000003f 
- 00015784  0x000035eb add  0x0000003f , 0x0000000e , 0x0000003f 
- 00015785  0x000035ec branch  0x00006413 
- 00015786  0x000035ef fetch  0x00000001 , 0x0000477a 
- 00015787  0x000035f0 beq  0x00000000 , 0x00003db1 
- 00015788  0x000035f1 beq  0x00000001 , 0x00003daf 
- 00015789  0x000035f2 beq  0x00000002 , 0x00003db3 
- 00015790  0x000035f3 beq  0x00000003 , 0x00003db5 
- 00015791  0x000035f5 fetch  0x00000001 , 0x00004788 
- 00015792  0x000035f6 branch  0x00003db6 
- 00015793  0x000035f8 fetch  0x00000001 , 0x00004787 
- 00015794  0x000035f9 branch  0x00003db6 
- 00015795  0x000035fb fetch  0x00000001 , 0x00004789 
- 00015796  0x000035fc branch  0x00003db6 
- 00015797  0x000035fe fetch  0x00000001 , 0x0000478a 
- 00015798  0x00003600 store  0x00000001 , 0x000046b5 
- 00015799  0x00003601 call  0x000040c0 
- 00015800  0x00003602 fetch  0x00000001 , 0x000046b5 
- 00015801  0x00003604 add  0x0000003f , 0x00000080 , 0x0000003f 
- 00015802  0x00003605 lshift8  0x0000003f , 0x0000003f 
- 00015803  0x00003606 add  0x0000003f , 0x00000005 , 0x0000003f 
- 00015804  0x00003607 copy  0x0000003f , 0x00000011 
- 00015805  0x00003608 branch  0x0000415a 
- 00015806  0x0000360b store  0x00000001 , 0x000046b5 
- 00015807  0x0000360c call  0x00003d90 
- 00015808  0x0000360d fetch  0x00000001 , 0x000046b5 
- 00015809  0x0000360e setarg  0x00000006 
- 00015810  0x0000360f call  0x00006414 
- 00015811  0x00003610 and  0x0000003f , 0x000000f8 , 0x00000002 
- 00015812  0x00003611 fetch  0x00000001 , 0x000046b5 
- 00015813  0x00003612 iadd  0x00000002 , 0x0000003f 
- 00015814  0x00003613 lshift8  0x0000003f , 0x0000003f 
- 00015815  0x00003614 add  0x0000003f , 0x00000006 , 0x0000003f 
- 00015816  0x00003615 branch  0x00006413 
- 00015817  0x00003619 call  0x000033c4 
- 00015818  0x0000361a branch  0x00004316 , 0x00000005 
- 00015819  0x0000361b call  0x0000441c 
- 00015820  0x0000361c call  0x000042e4 
- 00015821  0x0000361d branch  0x000033bd 
- 00015822  0x00003621 fetch  0x00000002 , 0x00004707 
- 00015823  0x00003622 rtn  0x00000034 
- 00015824  0x00003623 fetch  0x00000004 , 0x000046d3 
- 00015825  0x00003624 rtnbit0  0x00000011 
- 00015826  0x00003625 rtnbit1  0x00000003 
- 00015827  0x00003626 rtnmark1  0x00000026 
- 00015828  0x00003627 call  0x00004083 
- 00015829  0x00003628 rtnne  0x00000007 
- 00015830  0x00003629 call  0x00004482 
- 00015831  0x0000362a arg  0x00000003 , 0x00000007 
- 00015832  0x0000362b call  0x000043ce 
- 00015833  0x0000362c setarg  0x00000000 
- 00015834  0x0000362d store  0x00000002 , 0x000046ae 
- 00015835  0x0000362e store  0x00000001 , 0x000046b4 
- 00015836  0x0000362f call  0x00003263 
- 00015837  0x00003631 fetch  0x00000002 , 0x00004682 
- 00015838  0x00003632 bbit1  0x00000007 , 0x00004392 
- 00015839  0x00003633 bbit1  0x00000009 , 0x00003402 
- 00015840  0x00003634 bbit1  0x00000000 , 0x000033e9 
- 00015841  0x00003635 call  0x000042ca 
- 00015842  0x00003636 branch  0x00002ead 
- 00015843  0x0000363a call  0x00003dce 
- 00015844  0x0000363b call  0x00007e34 
- 00015845  0x0000363c call  0x00003d6a 
- 00015846  0x0000363d call  0x00003de9 
- 00015847  0x0000363e call  0x00003ee0 
- 00015848  0x0000363f branch  0x00003df7 
- 00015849  0x00003641 fetch  0x00000004 , 0x000046d3 
- 00015850  0x00003642 rtnbit0  0x00000010 
- 00015851  0x00003643 call  0x000048d3 
- 00015852  0x00003644 branch  0x000048fd 
- 00015853  0x00003647 hfetch  0x00000001 , 0x00008a04 
- 00015854  0x00003648 bbit0  0x00000007 , 0x00003df1 
- 00015855  0x00003649 bbit1  0x00000007 , 0x00003df4 
- 00015856  0x0000364a rtn 
- 00015857  0x0000364c fetch  0x00000001 , 0x000046ff 
- 00015858  0x0000364d rtnbit0  0x00000007 
- 00015859  0x0000364e branch  0x0000659a 
- 00015860  0x00003650 fetch  0x00000001 , 0x000046ff 
- 00015861  0x00003651 rtnbit1  0x00000007 
- 00015862  0x00003652 branch  0x00004381 
- 00015863  0x00003655 call  0x00003ded 
- 00015864  0x00003656 hfetch  0x00000001 , 0x00008a04 
- 00015865  0x00003657 store  0x00000001 , 0x000046ff 
- 00015866  0x00003658 rtnbit0  0x00000007 
- 00015867  0x00003659 call  0x00003e07 
- 00015868  0x0000365a fetch  0x00000004 , 0x000046f9 
- 00015869  0x0000365b fetcht  0x00000001 , 0x000046fd 
- 00015870  0x0000365c iadd  0x00000002 , 0x00000002 
- 00015871  0x0000365d copy  0x00000022 , 0x0000003f 
- 00015872  0x0000365e isub  0x00000002 , 0x0000003e 
- 00015873  0x0000365f nrtn  0x00000002 
- 00015874  0x00003660 store  0x00000004 , 0x000046f9 
- 00015875  0x00003661 call  0x00003f97 
- 00015876  0x00003662 nrtn  0x00000028 
- 00015877  0x00003663 jam  0x00000004 , 0x00000d38 
- 00015878  0x00003664 branch  0x00003e0f 
- 00015879  0x00003667 fetcht  0x00000004 , 0x000046f9 
- 00015880  0x00003668 copy  0x00000022 , 0x0000003f 
- 00015881  0x00003669 isub  0x00000002 , 0x0000003e 
- 00015882  0x0000366a ncall  0x00003e0c , 0x00000002 
- 00015883  0x0000366b rtn 
- 00015884  0x0000366d setarg  0x00000000 
- 00015885  0x0000366e store  0x00000004 , 0x000046f9 
- 00015886  0x0000366f rtn 
- 00015887  0x00003674 fetch  0x00000001 , 0x00000d38 
- 00015888  0x00003675 rtnbit0  0x00000002 
- 00015889  0x00003676 branch  0x00003e12 
- 00015890  0x00003678 hfetch  0x00000001 , 0x00008a04 
- 00015891  0x00003679 rtnbit0  0x00000007 
- 00015892  0x0000367a jam  0x00000020 , 0x00000d52 
- 00015893  0x0000367b setarg  0x00000001 
- 00015894  0x0000367c store  0x00000001 , 0x00000d54 
- 00015895  0x0000367d fetch  0x00000007 , 0x0000469a 
- 00015896  0x0000367e istore  0x00000007 , 0x00000005 
- 00015897  0x0000367f rtn 
- 00015898  0x00003683 hfetch  0x00000002 , 0x00008050 
- 00015899  0x00003684 set0  0x0000000b , 0x0000003f 
- 00015900  0x00003685 hstore  0x00000002 , 0x00008050 
- 00015901  0x00003686 rtn 
- 00015902  0x00003689 setarg  0x00008c00 
- 00015903  0x0000368a store  0x00000002 , 0x00004575 
- 00015904  0x0000368b setarg  0x00008e7a 
- 00015905  0x0000368c store  0x00000002 , 0x000044bc 
- 00015906  0x0000368d setarg  0x00002402 
- 00015907  0x0000368e store  0x00000002 , 0x000040bd 
- 00015908  0x0000368f setarg  0x00002580 
- 00015909  0x00003690 store  0x00000003 , 0x000040aa 
- 00015910  0x00003691 jam  0x00000003 , 0x00004173 
- 00015911  0x00003692 jam  0x00000008 , 0x00004156 
- 00015912  0x00003693 jam  0x00000001 , 0x000046d9 
- 00015913  0x00003694 setarg  0x00000200 
- 00015914  0x00003695 store  0x00000002 , 0x00004154 
- 00015915  0x00003696 jam  0x00000017 , 0x000044a6 
- 00015916  0x00003697 jam  0x00000017 , 0x000044a8 
- 00015917  0x00003699 setarg  0x00000a77 
- 00015918  0x0000369a store  0x00000002 , 0x00004212 
- 00015919  0x000036aa setsect  0x00000000 , 0x00000306 
- 00015920  0x000036ab setsect  0x00000001 , 0x00004440 
- 00015921  0x000036ac setsect  0x00000002 , 0x00010000 
- 00015922  0x000036ad setsect  0x00000003 , 0x00004408 
- 00015923  0x000036ae store  0x00000009 , 0x00004577 
- 00015924  0x000036af setsect  0x00000000 , 0x00001224 
- 00015925  0x000036b0 setsect  0x00000001 , 0x00004000 
- 00015926  0x000036b1 setsect  0x00000002 , 0x00000000 
- 00015927  0x000036b2 istore  0x00000005 , 0x00000005 
- 00015928  0x000036b4 setsect  0x00000000 , 0x0003ffff 
- 00015929  0x000036b5 setsect  0x00000001 , 0x0002fe23 
- 00015930  0x000036b6 setsect  0x00000002 , 0x000199d9 
- 00015931  0x000036b7 setsect  0x00000003 , 0x0000020d 
- 00015932  0x000036b8 store  0x00000008 , 0x00004098 
- 00015933  0x000036ba setarg  0x0000012c 
- 00015934  0x000036bb store  0x00000002 , 0x00004707 
- 00015935  0x000036bc call  0x000057a3 
- 00015936  0x000036bd fetch  0x00000004 , 0x000046d3 
- 00015937  0x000036be rtnbit0  0x0000001f 
- 00015938  0x000036bf call  0x00003e44 
- 00015939  0x000036c0 branch  0x00003e4c 
- 00015940  0x000036c3 fetcht  0x00000001 , 0x000046f7 
- 00015941  0x000036c4 call  0x000067fb 
- 00015942  0x000036c5 fetcht  0x00000001 , 0x000046f7 
- 00015943  0x000036c6 call  0x0000681d 
- 00015944  0x000036c7 jam  0x00000003 , 0x000046f6 
- 00015945  0x000036c8 rtn  0x00000001 
- 00015946  0x000036c9 jam  0x00000002 , 0x000046f6 
- 00015947  0x000036ca rtn 
- 00015948  0x000036cd fetcht  0x00000001 , 0x000046f8 
- 00015949  0x000036ce call  0x000067fb 
- 00015950  0x000036cf fetcht  0x00000001 , 0x000046f8 
- 00015951  0x000036d0 call  0x0000681d 
- 00015952  0x000036d1 jam  0x00000000 , 0x0000422d 
- 00015953  0x000036d2 rtn  0x00000001 
- 00015954  0x000036d3 jam  0x00000002 , 0x0000422d 
- 00015955  0x000036d4 rtn 
- 00015956  0x000036d8 fetch  0x00000001 , 0x0000422d 
- 00015957  0x000036d9 beq  0x00000000 , 0x00003e59 
- 00015958  0x000036da beq  0x00000001 , 0x00003e62 
- 00015959  0x000036db beq  0x00000002 , 0x00003e6b 
- 00015960  0x000036dc branch  0x00003e59 
- 00015961  0x000036df fetcht  0x00000002 , 0x00004221 
- 00015962  0x000036e0 fetch  0x00000002 , 0x00004227 
- 00015963  0x000036e1 isub  0x00000002 , 0x0000003f 
- 00015964  0x000036e2 mul32  0x0000003f , 0x00000014 , 0x0000003f 
- 00015965  0x000036e3 div  0x0000003f , 0x00000064 
- 00015966  0x000036e4 call  0x00007f86 
- 00015967  0x000036e5 quotient  0x0000003f 
- 00015968  0x000036e6 store  0x00000002 , 0x000046d0 
- 00015969  0x000036e7 rtn 
- 00015970  0x000036e9 fetcht  0x00000002 , 0x0000421f 
- 00015971  0x000036ea fetch  0x00000002 , 0x00004225 
- 00015972  0x000036eb isub  0x00000002 , 0x0000003f 
- 00015973  0x000036ec mul32  0x0000003f , 0x000000e6 , 0x0000003f 
- 00015974  0x000036ed div  0x0000003f , 0x00000190 
- 00015975  0x000036ee call  0x00007f86 
- 00015976  0x000036ef quotient  0x0000003f 
- 00015977  0x000036f0 store  0x00000002 , 0x000046d0 
- 00015978  0x000036f1 rtn 
- 00015979  0x000036f3 fetch  0x00000002 , 0x00004223 
- 00015980  0x000036f4 store  0x00000002 , 0x000046d0 
- 00015981  0x000036f5 rtn 
- 00015982  0x000036f7 fetcht  0x00000001 , 0x0000423a 
- 00015983  0x000036f8 call  0x0000680e 
- 00015984  0x000036f9 call  0x000048fb 
- 00015985  0x000036fa fetcht  0x00000001 , 0x000046e2 
- 00015986  0x000036fb call  0x000067fb 
- 00015987  0x000036fc fetcht  0x00000001 , 0x000046e3 
- 00015988  0x000036fd call  0x000067fb 
- 00015989  0x000036fe fetcht  0x00000001 , 0x000046e4 
- 00015990  0x000036ff call  0x000067fb 
- 00015991  0x00003700 fetcht  0x00000001 , 0x000046f3 
- 00015992  0x00003701 call  0x000067fb 
- 00015993  0x00003703 fetcht  0x00000001 , 0x000046dc 
- 00015994  0x00003704 call  0x0000680e 
- 00015995  0x00003706 fetcht  0x00000001 , 0x000046e8 
- 00015996  0x00003707 call  0x000067fb 
- 00015997  0x00003709 fetcht  0x00000001 , 0x000046e9 
- 00015998  0x0000370a call  0x000067fb 
- 00015999  0x0000370c fetcht  0x00000001 , 0x000046ea 
- 00016000  0x0000370d call  0x000067fb 
- 00016001  0x0000370e fetcht  0x00000001 , 0x000046eb 
- 00016002  0x0000370f call  0x000067fb 
- 00016003  0x00003711 fetcht  0x00000001 , 0x000046e5 
- 00016004  0x00003712 call  0x000067fb 
- 00016005  0x00003713 fetcht  0x00000001 , 0x000046e6 
- 00016006  0x00003714 call  0x000067fb 
- 00016007  0x00003716 fetcht  0x00000001 , 0x000046ef 
- 00016008  0x00003717 call  0x0000680e 
- 00016009  0x00003719 fetcht  0x00000001 , 0x000046f0 
- 00016010  0x0000371a call  0x0000680e 
- 00016011  0x0000371c fetcht  0x00000001 , 0x000046f1 
- 00016012  0x0000371d call  0x0000680e 
- 00016013  0x0000371f fetcht  0x00000001 , 0x000046f2 
- 00016014  0x00003720 call  0x0000680e 
- 00016015  0x00003722 fetcht  0x00000001 , 0x000046f4 
- 00016016  0x00003723 call  0x0000680e 
- 00016017  0x00003725 fetcht  0x00000001 , 0x000046ed 
- 00016018  0x00003726 call  0x000067fb 
- 00016019  0x00003728 fetcht  0x00000001 , 0x000046ec 
- 00016020  0x00003729 call  0x000067fb 
- 00016021  0x0000372b fetcht  0x00000001 , 0x000046e7 
- 00016022  0x0000372c branch  0x000067fb 
- 00016023  0x0000372f fetcht  0x00000001 , 0x000046e8 
- 00016024  0x00003730 call  0x000067dd 
- 00016025  0x00003731 fetcht  0x00000001 , 0x000046e9 
- 00016026  0x00003732 call  0x000067dd 
- 00016027  0x00003733 fetcht  0x00000001 , 0x000046ea 
- 00016028  0x00003734 call  0x000067dd 
- 00016029  0x00003735 fetcht  0x00000001 , 0x000046eb 
- 00016030  0x00003736 branch  0x000067dd 
- 00016031  0x00003739 fetcht  0x00000001 , 0x000046e8 
- 00016032  0x0000373a call  0x00003ea7 
- 00016033  0x0000373b fetcht  0x00000001 , 0x000046e9 
- 00016034  0x0000373c call  0x00003ea7 
- 00016035  0x0000373d fetcht  0x00000001 , 0x000046ea 
- 00016036  0x0000373e call  0x00003ea7 
- 00016037  0x0000373f fetcht  0x00000001 , 0x000046eb 
- 00016038  0x00003740 branch  0x00003ea7 
- 00016039  0x00003743 sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00016040  0x00003744 rtn  0x00000005 
- 00016041  0x00003745 and  0x00000002 , 0x0000007f , 0x00000007 
- 00016042  0x00003746 hfetch  0x00000004 , 0x0000811c 
- 00016043  0x00003747 qisolate1  0x0000003f 
- 00016044  0x00003748 hfetch  0x00000004 , 0x00008078 
- 00016045  0x00003749 qsetflag  0x00000001 , 0x0000003f 
- 00016046  0x0000374a hstore  0x00000004 , 0x00008078 
- 00016047  0x0000374b hfetch  0x00000004 , 0x0000807c 
- 00016048  0x0000374c nqsetflag  0x00000001 , 0x0000003f 
- 00016049  0x0000374d hstore  0x00000004 , 0x0000807c 
- 00016050  0x0000374e rtn 
- 00016051  0x00003751 enable  0x00000028 
- 00016052  0x00003752 hfetch  0x00000004 , 0x00008138 
- 00016053  0x00003753 setflag  0x00000028 , 0x0000001a , 0x0000003f 
- 00016054  0x00003754 hstore  0x00000004 , 0x0000804c 
- 00016055  0x00003755 call  0x00002c21 
- 00016056  0x00003756 call  0x00004482 
- 00016057  0x00003757 call  0x00003e9f 
- 00016058  0x00003759 branch  0x00003ebf 
- 00016059  0x0000375e call  0x00003ebf 
- 00016060  0x0000375f fetch  0x00000001 , 0x000000a0 
- 00016061  0x00003760 nrtn  0x00000034 
- 00016062  0x00003761 branch  0x000067ed 
- 00016063  0x00003764 call  0x00003ee0 
- 00016064  0x00003765 arg  0x00000019 , 0x00000002 
- 00016065  0x00003766 fetch  0x00000004 , 0x000046d3 
- 00016066  0x00003767 isolate1  0x00000012 , 0x0000003f 
- 00016067  0x00003768 call  0x00003ede , 0x00000001 
- 00016068  0x00003769 call  0x0000680e 
- 00016069  0x0000376a call  0x000063ee 
- 00016070  0x0000376e fetcht  0x00000001 , 0x000046e2 
- 00016071  0x0000376f call  0x000067dd 
- 00016072  0x00003770 fetcht  0x00000001 , 0x000046e3 
- 00016073  0x00003771 call  0x000067dd 
- 00016074  0x00003772 fetcht  0x00000001 , 0x000046e4 
- 00016075  0x00003773 call  0x000067dd 
- 00016076  0x00003775 fetcht  0x00000001 , 0x000046e5 
- 00016077  0x00003776 call  0x000067dd 
- 00016078  0x00003777 fetcht  0x00000001 , 0x000046e6 
- 00016079  0x00003778 call  0x000067dd 
- 00016080  0x00003779 fetcht  0x00000001 , 0x000046e7 
- 00016081  0x0000377a call  0x000067dd 
- 00016082  0x0000377b fetcht  0x00000001 , 0x000046ed 
- 00016083  0x0000377c call  0x000067dd 
- 00016084  0x0000377d fetcht  0x00000001 , 0x000046e8 
- 00016085  0x0000377e call  0x000067dd 
- 00016086  0x0000377f fetcht  0x00000001 , 0x000046e9 
- 00016087  0x00003780 call  0x000067dd 
- 00016088  0x00003781 fetcht  0x00000001 , 0x000046ea 
- 00016089  0x00003782 call  0x000067dd 
- 00016090  0x00003783 fetcht  0x00000001 , 0x000046eb 
- 00016091  0x00003784 call  0x000067dd 
- 00016092  0x00003785 fetcht  0x00000001 , 0x000046f3 
- 00016093  0x00003786 branch  0x000067e1 
- 00016094  0x0000378b arg  0x0000001e , 0x00000002 
- 00016095  0x0000378c rtn 
- 00016096  0x0000378f bpatch  0x000000e4 , 0x0000401c 
- 00016097  0x00003790 call  0x00003eee 
- 00016098  0x00003791 call  0x00003f36 
- 00016099  0x00003792 fetch  0x00000001 , 0x000046b8 
- 00016100  0x00003793 fetcht  0x00000001 , 0x000046b7 
- 00016101  0x00003794 store  0x00000001 , 0x000046b7 
- 00016102  0x00003795 isub  0x00000002 , 0x0000003e 
- 00016103  0x00003796 nbranch  0x000033d4 , 0x00000005 
- 00016104  0x00003797 fetch  0x00000001 , 0x000046be 
- 00016105  0x00003798 fetcht  0x00000001 , 0x000046bd 
- 00016106  0x00003799 store  0x00000001 , 0x000046bd 
- 00016107  0x0000379a isub  0x00000002 , 0x0000003e 
- 00016108  0x0000379b nbranch  0x000033d4 , 0x00000005 
- 00016109  0x0000379c rtn 
- 00016110  0x0000379e fetch  0x00000001 , 0x000046ea 
- 00016111  0x0000379f rtneq  0x000000ff 
- 00016112  0x000037a0 arg  0x00000000 , 0x00000011 
- 00016113  0x000037a1 fetcht  0x00000001 , 0x000046ea 
- 00016114  0x000037a2 call  0x0000681d 
- 00016115  0x000037a3 setflag  0x00000001 , 0x00000000 , 0x00000011 
- 00016116  0x000037a4 fetcht  0x00000001 , 0x000046eb 
- 00016117  0x000037a5 call  0x0000681d 
- 00016118  0x000037a6 setflag  0x00000001 , 0x00000001 , 0x00000011 
- 00016119  0x000037a7 copy  0x00000011 , 0x0000003f 
- 00016120  0x000037a8 store  0x00000001 , 0x000046b8 
- 00016121  0x000037a9 beq  0x00000001 , 0x00003efe 
- 00016122  0x000037aa beq  0x00000002 , 0x00003f02 
- 00016123  0x000037ab fetch  0x00000001 , 0x000046b9 
- 00016124  0x000037ac bbit1  0x00000007 , 0x00003f0e 
- 00016125  0x000037ad rtn 
- 00016126  0x000037b0 fetch  0x00000001 , 0x000046b7 
- 00016127  0x000037b1 beq  0x00000000 , 0x00003f06 
- 00016128  0x000037b2 beq  0x00000003 , 0x00003f08 
- 00016129  0x000037b3 rtn 
- 00016130  0x000037b5 fetch  0x00000001 , 0x000046b7 
- 00016131  0x000037b6 beq  0x00000000 , 0x00003f0a 
- 00016132  0x000037b7 beq  0x00000003 , 0x00003f0c 
- 00016133  0x000037b8 rtn 
- 00016134  0x000037ba jam  0x00000082 , 0x000046b9 
- 00016135  0x000037bb rtn 
- 00016136  0x000037bd jam  0x00000081 , 0x000046b9 
- 00016137  0x000037be rtn 
- 00016138  0x000037c0 jam  0x00000080 , 0x000046b9 
- 00016139  0x000037c1 rtn 
- 00016140  0x000037c3 jam  0x00000083 , 0x000046b9 
- 00016141  0x000037c4 rtn 
- 00016142  0x000037c6 fetch  0x00000001 , 0x000046b9 
- 00016143  0x000037c7 set0  0x00000007 , 0x0000003f 
- 00016144  0x000037c8 store  0x00000001 , 0x000046b9 
- 00016145  0x000037c9 beq  0x00000000 , 0x00003f16 
- 00016146  0x000037ca beq  0x00000001 , 0x00003f19 
- 00016147  0x000037cb beq  0x00000002 , 0x00003f1c 
- 00016148  0x000037cc beq  0x00000003 , 0x00003f1f 
- 00016149  0x000037cd rtn 
- 00016150  0x000037cf fetch  0x00000001 , 0x000046b8 
- 00016151  0x000037d0 beq  0x00000003 , 0x00003f22 
- 00016152  0x000037d1 rtn 
- 00016153  0x000037d3 fetch  0x00000001 , 0x000046b8 
- 00016154  0x000037d4 beq  0x00000000 , 0x00003f22 
- 00016155  0x000037d5 rtn 
- 00016156  0x000037d7 fetch  0x00000001 , 0x000046b8 
- 00016157  0x000037d8 beq  0x00000003 , 0x00003f2c 
- 00016158  0x000037d9 rtn 
- 00016159  0x000037db fetch  0x00000001 , 0x000046b8 
- 00016160  0x000037dc beq  0x00000000 , 0x00003f2c 
- 00016161  0x000037dd rtn 
- 00016162  0x000037df fetch  0x00000001 , 0x000046bc 
- 00016163  0x000037e0 increase  0x00000001 , 0x0000003f 
- 00016164  0x000037e1 store  0x00000001 , 0x000046bc 
- 00016165  0x000037e2 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00016166  0x000037e3 rtn  0x00000002 
- 00016167  0x000037e4 jam  0x00000000 , 0x000046bc 
- 00016168  0x000037e5 fetch  0x00000001 , 0x000046ba 
- 00016169  0x000037e6 increase  0x00000001 , 0x0000003f 
- 00016170  0x000037e7 store  0x00000001 , 0x000046ba 
- 00016171  0x000037e8 rtn 
- 00016172  0x000037ea fetch  0x00000001 , 0x000046bb 
- 00016173  0x000037eb increase  0x00000001 , 0x0000003f 
- 00016174  0x000037ec store  0x00000001 , 0x000046bb 
- 00016175  0x000037ed sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00016176  0x000037ee rtn  0x00000002 
- 00016177  0x000037ef jam  0x00000000 , 0x000046bb 
- 00016178  0x000037f0 fetch  0x00000001 , 0x000046ba 
- 00016179  0x000037f1 increase  0xffffffff , 0x0000003f 
- 00016180  0x000037f2 store  0x00000001 , 0x000046ba 
- 00016181  0x000037f3 rtn 
- 00016182  0x000037f7 fetch  0x00000001 , 0x000046e8 
- 00016183  0x000037f8 rtneq  0x000000ff 
- 00016184  0x000037f9 arg  0x00000000 , 0x00000011 
- 00016185  0x000037fa fetcht  0x00000001 , 0x000046e8 
- 00016186  0x000037fb call  0x0000681d 
- 00016187  0x000037fc setflag  0x00000001 , 0x00000000 , 0x00000011 
- 00016188  0x000037fd fetcht  0x00000001 , 0x000046e9 
- 00016189  0x000037fe call  0x0000681d 
- 00016190  0x000037ff setflag  0x00000001 , 0x00000001 , 0x00000011 
- 00016191  0x00003800 copy  0x00000011 , 0x0000003f 
- 00016192  0x00003801 store  0x00000001 , 0x000046be 
- 00016193  0x00003802 beq  0x00000001 , 0x00003f46 
- 00016194  0x00003803 beq  0x00000002 , 0x00003f4a 
- 00016195  0x00003804 fetch  0x00000001 , 0x000046bf 
- 00016196  0x00003805 bbit1  0x00000007 , 0x00003f56 
- 00016197  0x00003806 rtn 
- 00016198  0x00003809 fetch  0x00000001 , 0x000046bd 
- 00016199  0x0000380a beq  0x00000000 , 0x00003f4e 
- 00016200  0x0000380b beq  0x00000003 , 0x00003f50 
- 00016201  0x0000380c rtn 
- 00016202  0x0000380e fetch  0x00000001 , 0x000046bd 
- 00016203  0x0000380f beq  0x00000000 , 0x00003f52 
- 00016204  0x00003810 beq  0x00000003 , 0x00003f54 
- 00016205  0x00003811 rtn 
- 00016206  0x00003813 jam  0x00000082 , 0x000046bf 
- 00016207  0x00003814 rtn 
- 00016208  0x00003816 jam  0x00000081 , 0x000046bf 
- 00016209  0x00003817 rtn 
- 00016210  0x00003819 jam  0x00000080 , 0x000046bf 
- 00016211  0x0000381a rtn 
- 00016212  0x0000381c jam  0x00000083 , 0x000046bf 
- 00016213  0x0000381d rtn 
- 00016214  0x0000381f fetch  0x00000001 , 0x000046bf 
- 00016215  0x00003820 set0  0x00000007 , 0x0000003f 
- 00016216  0x00003821 store  0x00000001 , 0x000046bf 
- 00016217  0x00003822 beq  0x00000000 , 0x00003f5e 
- 00016218  0x00003823 beq  0x00000001 , 0x00003f61 
- 00016219  0x00003824 beq  0x00000002 , 0x00003f64 
- 00016220  0x00003825 beq  0x00000003 , 0x00003f67 
- 00016221  0x00003826 rtn 
- 00016222  0x00003828 fetch  0x00000001 , 0x000046be 
- 00016223  0x00003829 beq  0x00000003 , 0x00003f6a 
- 00016224  0x0000382a rtn 
- 00016225  0x0000382c fetch  0x00000001 , 0x000046be 
- 00016226  0x0000382d beq  0x00000000 , 0x00003f6a 
- 00016227  0x0000382e rtn 
- 00016228  0x00003830 fetch  0x00000001 , 0x000046be 
- 00016229  0x00003831 beq  0x00000003 , 0x00003f6f 
- 00016230  0x00003832 rtn 
- 00016231  0x00003834 fetch  0x00000001 , 0x000046be 
- 00016232  0x00003835 beq  0x00000000 , 0x00003f6f 
- 00016233  0x00003836 rtn 
- 00016234  0x00003838 jam  0x00000000 , 0x000046c2 
- 00016235  0x00003839 fetch  0x00000001 , 0x000046c0 
- 00016236  0x0000383a increase  0x00000001 , 0x0000003f 
- 00016237  0x0000383b store  0x00000001 , 0x000046c0 
- 00016238  0x0000383c rtn 
- 00016239  0x0000383e jam  0x00000000 , 0x000046c1 
- 00016240  0x0000383f fetch  0x00000001 , 0x000046c0 
- 00016241  0x00003840 increase  0xffffffff , 0x0000003f 
- 00016242  0x00003841 store  0x00000001 , 0x000046c0 
- 00016243  0x00003842 rtn 
- 00016244  0x00003846 setarg  0x00000002 
- 00016245  0x00003847 store  0x00000001 , 0x00004680 
- 00016246  0x00003848 rtn 
- 00016247  0x0000384b fetch  0x00000001 , 0x000041e2 
- 00016248  0x0000384c rtn  0x00000034 
- 00016249  0x0000384d call  0x00005271 
- 00016250  0x0000384e nrtn  0x00000034 
- 00016251  0x0000384f fetch  0x00000004 , 0x000046d3 
- 00016252  0x00003850 bbit1  0x00000003 , 0x00003f8a 
- 00016253  0x00003851 bbit1  0x00000000 , 0x00003f8a 
- 00016254  0x00003852 bbit1  0x00000005 , 0x00003f8a 
- 00016255  0x00003853 call  0x00003f97 
- 00016256  0x00003854 nrtn  0x00000028 
- 00016257  0x00003856 arg  0x00000009 , 0x00000011 
- 00016258  0x00003857 call  0x00004d63 
- 00016259  0x00003858 fetch  0x00000002 , 0x0000424e 
- 00016260  0x00003859 istore  0x00000002 , 0x00000005 
- 00016261  0x0000385a setarg  0x000002a1 
- 00016262  0x0000385b istore  0x00000002 , 0x00000005 
- 00016263  0x0000385c fetch  0x00000007 , 0x0000469a 
- 00016264  0x0000385d istore  0x00000007 , 0x00000005 
- 00016265  0x0000385e rtn 
- 00016266  0x00003862 setarg  0x00000000 
- 00016267  0x00003863 store  0x00000007 , 0x0000469a 
- 00016268  0x00003864 branch  0x00003f81 
- 00016269  0x00003868 fetch  0x00000002 , 0x000046aa 
- 00016270  0x00003869 store  0x00000002 , 0x000046b0 
- 00016271  0x0000386a rtn 
- 00016272  0x0000386e bpatch  0x000000e5 , 0x0000401c 
- 00016273  0x0000386f arg  0x00000007 , 0x00000011 
- 00016274  0x00003870 fetcht  0x00000002 , 0x0000446f 
- 00016275  0x00003871 call  0x00005a64 
- 00016276  0x00003872 fetch  0x00000007 , 0x0000469a 
- 00016277  0x00003873 istore  0x00000007 , 0x00000005 
- 00016278  0x00003874 rtn 
- 00016279  0x00003877 bpatch  0x000000e6 , 0x0000401c 
- 00016280  0x00003878 disable  0x00000028 
- 00016281  0x00003879 setarg  0x00000000 
- 00016282  0x0000387a store  0x00000006 , 0x0000469b 
- 00016283  0x0000387b call  0x00003fb5 
- 00016284  0x0000387c call  0x00004079 
- 00016285  0x0000387d call  0x0000407e 
- 00016286  0x0000387e call  0x00004099 
- 00016287  0x0000387f nrtn  0x00000028 
- 00016288  0x00003880 call  0x00003f8d 
- 00016289  0x00003881 arg  0x00000008 , 0x00000007 
- 00016290  0x00003882 branch  0x000043ce 
- 00016291  0x00003885 fetch  0x00000002 , 0x0000469b 
- 00016292  0x00003886 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00016293  0x00003887 store  0x00000002 , 0x0000469b 
- 00016294  0x00003888 branch  0x00007fe7 
- 00016295  0x0000388a fetch  0x00000002 , 0x0000469d 
- 00016296  0x0000388b sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00016297  0x0000388c store  0x00000002 , 0x0000469d 
- 00016298  0x0000388d branch  0x00007fe7 
- 00016299  0x0000388f fetch  0x00000002 , 0x0000469d 
- 00016300  0x00003890 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00016301  0x00003891 store  0x00000002 , 0x0000469d 
- 00016302  0x00003892 fetch  0x00000002 , 0x0000469b 
- 00016303  0x00003893 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00016304  0x00003894 store  0x00000002 , 0x0000469b 
- 00016305  0x00003895 call  0x00004002 
- 00016306  0x00003896 branch  0x00007fe7 
- 00016307  0x00003898 call  0x00004002 
- 00016308  0x00003899 branch  0x00007fe7 
- 00016309  0x0000389b fetch  0x00000001 , 0x00004239 
- 00016310  0x0000389c rtnne  0x00000000 
- 00016311  0x0000389d fetch  0x00000001 , 0x000046e0 
- 00016312  0x0000389e beq  0x00000000 , 0x00003fe2 
- 00016313  0x0000389f beq  0x00000001 , 0x00003fe2 
- 00016314  0x000038a0 beq  0x00000002 , 0x00003fe2 
- 00016315  0x000038a1 beq  0x00000003 , 0x00003fe2 
- 00016316  0x000038a2 beq  0x00000004 , 0x00003fc4 
- 00016317  0x000038a3 beq  0x00000005 , 0x00004010 
- 00016318  0x000038a4 beq  0x00000006 , 0x00003fe2 
- 00016319  0x000038a5 branch  0x00003fe2 
- 00016320  0x000038a8 fetch  0x00000001 , 0x000046a7 
- 00016321  0x000038a9 call  0x0000405d , 0x00000034 
- 00016322  0x000038aa jam  0x00000001 , 0x000046a7 
- 00016323  0x000038ab rtn 
- 00016324  0x000038af call  0x00003fc0 
- 00016325  0x000038b0 fetcht  0x00000001 , 0x000046f3 
- 00016326  0x000038b1 call  0x0000681d 
- 00016327  0x000038b2 nrtn  0x00000001 
- 00016328  0x000038b4 setarg  0x00000000 
- 00016329  0x000038b5 call  0x00006414 
- 00016330  0x000038b6 bne  0x00000030 , 0x000040d1 
- 00016331  0x000038b7 setarg  0x00000002 
- 00016332  0x000038b8 call  0x00006414 
- 00016333  0x000038b9 rtnbit0  0x00000007 
- 00016334  0x000038ba call  0x0000405d 
- 00016335  0x000038bb call  0x00003fde 
- 00016336  0x000038bc store  0x00000001 , 0x000046a1 
- 00016337  0x000038bd rshift4  0x0000003f , 0x0000003f 
- 00016338  0x000038be call  0x00004169 
- 00016339  0x000038bf store  0x00000001 , 0x0000469c 
- 00016340  0x000038c0 fetch  0x00000001 , 0x000046a1 
- 00016341  0x000038c1 and  0x0000003f , 0x0000000f , 0x0000003f 
- 00016342  0x000038c2 call  0x00004169 
- 00016343  0x000038c3 store  0x00000001 , 0x0000469e 
- 00016344  0x000038c4 fetch  0x00000001 , 0x000046f6 
- 00016345  0x000038c5 beq  0x00000000 , 0x00003fa3 
- 00016346  0x000038c6 beq  0x00000001 , 0x00003fab 
- 00016347  0x000038c7 beq  0x00000002 , 0x00003fa7 
- 00016348  0x000038c8 beq  0x00000003 , 0x00003fb3 
- 00016349  0x000038c9 rtn 
- 00016350  0x000038cc setarg  0x00000012 
- 00016351  0x000038cd branch  0x00006414 
- 00016352  0x000038d0 beq  0x00000031 , 0x00003fea 
- 00016353  0x000038d1 branch  0x000040d1 
- 00016354  0x000038d4 call  0x00003fc0 
- 00016355  0x000038d5 disable  0x00000028 
- 00016356  0x000038d6 fetcht  0x00000001 , 0x000046f3 
- 00016357  0x000038d7 call  0x0000681d 
- 00016358  0x000038d8 nrtn  0x00000001 
- 00016359  0x000038da setarg  0x00000000 
- 00016360  0x000038db call  0x00006414 
- 00016361  0x000038dc bne  0x00000030 , 0x00003fe0 
- 00016362  0x000038de setarg  0x00000002 
- 00016363  0x000038df call  0x00006414 
- 00016364  0x000038e0 rtnbit0  0x00000007 
- 00016365  0x000038e1 call  0x0000405d 
- 00016366  0x000038e2 fetch  0x00000001 , 0x0000469b 
- 00016367  0x000038e3 call  0x00004165 
- 00016368  0x000038e4 store  0x00000002 , 0x0000469b 
- 00016369  0x000038e5 fetch  0x00000001 , 0x0000469d 
- 00016370  0x000038e6 call  0x00004165 
- 00016371  0x000038e7 store  0x00000002 , 0x0000469d 
- 00016372  0x000038e8 fetch  0x00000001 , 0x000046f6 
- 00016373  0x000038e9 beq  0x00000000 , 0x00003ffa 
- 00016374  0x000038ea beq  0x00000001 , 0x00003ffc 
- 00016375  0x000038eb beq  0x00000002 , 0x00003ffe 
- 00016376  0x000038ec beq  0x00000003 , 0x00004000 
- 00016377  0x000038ed rtn 
- 00016378  0x000038f0 call  0x00003fa3 
- 00016379  0x000038f1 branch  0x000040b3 
- 00016380  0x000038f3 call  0x00003fab 
- 00016381  0x000038f4 branch  0x000040b3 
- 00016382  0x000038f6 call  0x00003fa7 
- 00016383  0x000038f7 branch  0x000040b3 
- 00016384  0x000038f9 call  0x00003fb3 
- 00016385  0x000038fa branch  0x000040b3 
- 00016386  0x000038fd fetch  0x00000002 , 0x0000469d 
- 00016387  0x000038fe fetcht  0x00000002 , 0x0000469b 
- 00016388  0x000038ff store  0x00000002 , 0x0000469b 
- 00016389  0x00003900 storet  0x00000002 , 0x0000469d 
- 00016390  0x00003901 rtn 
- 00016391  0x00003904 call  0x0000640f 
- 00016392  0x00003905 nop  0x00000064 
- 00016393  0x00003906 copy  0x00000012 , 0x0000003f 
- 00016394  0x00003907 call  0x00006414 
- 00016395  0x00003908 copy  0x0000003f , 0x00000012 
- 00016396  0x00003909 call  0x00006411 
- 00016397  0x0000390a nop  0x00000064 
- 00016398  0x0000390b copy  0x00000012 , 0x0000003f 
- 00016399  0x0000390c rtn 
- 00016400  0x0000390e disable  0x00000028 
- 00016401  0x0000390f fetcht  0x00000001 , 0x000046f3 
- 00016402  0x00003910 call  0x0000681d 
- 00016403  0x00003911 nrtn  0x00000001 
- 00016404  0x00003912 arg  0x00000002 , 0x00000012 
- 00016405  0x00003913 call  0x00004007 
- 00016406  0x00003914 rtnbit0  0x00000007 
- 00016407  0x00003915 arg  0x00000000 , 0x00000012 
- 00016408  0x00003916 call  0x00004007 
- 00016409  0x00003917 store  0x00000001 , 0x000046dd 
- 00016410  0x00003918 bne  0x0000003e , 0x00004145 
- 00016411  0x00003919 fetch  0x00000001 , 0x000046a7 
- 00016412  0x0000391a call  0x00004039 , 0x00000034 
- 00016413  0x0000391b jam  0x00000001 , 0x000046a7 
- 00016414  0x0000391c call  0x00004039 
- 00016415  0x0000391d fetch  0x00000001 , 0x000046a1 
- 00016416  0x0000391e rshift4  0x0000003f , 0x0000003f 
- 00016417  0x0000391f call  0x00004169 
- 00016418  0x00003920 store  0x00000001 , 0x0000469c 
- 00016419  0x00003921 fetch  0x00000001 , 0x000046a1 
- 00016420  0x00003922 and  0x0000003f , 0x0000000f , 0x0000003f 
- 00016421  0x00003923 call  0x00004169 
- 00016422  0x00003924 store  0x00000001 , 0x0000469e 
- 00016423  0x00003925 fetch  0x00000001 , 0x000046f6 
- 00016424  0x00003926 beq  0x00000000 , 0x00004031 
- 00016425  0x00003927 beq  0x00000001 , 0x00004035 
- 00016426  0x00003928 beq  0x00000002 , 0x00004033 
- 00016427  0x00003929 beq  0x00000003 , 0x00004037 
- 00016428  0x0000392a rtn 
- 00016429  0x0000392d fetch  0x00000001 , 0x000046a4 
- 00016430  0x0000392e beq  0x00000000 , 0x00004051 
- 00016431  0x0000392f beq  0x00000001 , 0x00004045 
- 00016432  0x00003930 rtn 
- 00016433  0x00003934 call  0x00003fa3 
- 00016434  0x00003935 branch  0x0000402d 
- 00016435  0x00003938 call  0x00003fa7 
- 00016436  0x00003939 branch  0x0000402d 
- 00016437  0x0000393c call  0x00003fab 
- 00016438  0x0000393d branch  0x0000402d 
- 00016439  0x00003940 call  0x00003fb3 
- 00016440  0x00003941 branch  0x0000402d 
- 00016441  0x00003944 call  0x0000640f 
- 00016442  0x00003945 call  0x0000405d 
- 00016443  0x00003946 arg  0x00000005 , 0x0000003f 
- 00016444  0x00003947 call  0x00006414 
- 00016445  0x00003948 store  0x00000001 , 0x000046a1 
- 00016446  0x00003949 arg  0x00000007 , 0x0000003f 
- 00016447  0x0000394a call  0x00006414 
- 00016448  0x0000394b store  0x00000001 , 0x000046a2 
- 00016449  0x0000394c arg  0x00000008 , 0x0000003f 
- 00016450  0x0000394d call  0x00006414 
- 00016451  0x0000394e store  0x00000001 , 0x000046a3 
- 00016452  0x0000394f branch  0x00006411 
- 00016453  0x00003953 fetch  0x00000001 , 0x000046a2 
- 00016454  0x00003954 rtnne  0x00000000 
- 00016455  0x00003955 fetch  0x00000001 , 0x000046a3 
- 00016456  0x00003956 sub  0x0000003f , 0x0000002d , 0x0000003e 
- 00016457  0x00003957 rtn  0x00000002 
- 00016458  0x00003958 jam  0x00000000 , 0x000046a4 
- 00016459  0x00003959 setarg  0x0000ba41 
- 00016460  0x0000395a call  0x00006405 
- 00016461  0x0000395b setarg  0x00000032 
- 00016462  0x0000395c call  0x00006405 
- 00016463  0x0000395d setarg  0x0000b541 
- 00016464  0x0000395e branch  0x00006405 
- 00016465  0x00003960 fetch  0x00000001 , 0x000046a2 
- 00016466  0x00003961 rtnne  0x00000000 
- 00016467  0x00003962 fetch  0x00000001 , 0x000046a3 
- 00016468  0x00003963 sub  0x0000003f , 0x0000002d , 0x0000003e 
- 00016469  0x00003964 nrtn  0x00000002 
- 00016470  0x00003965 jam  0x00000001 , 0x000046a4 
- 00016471  0x00003966 setarg  0x0000ba41 
- 00016472  0x00003967 call  0x00006405 
- 00016473  0x00003968 setarg  0x00008032 
- 00016474  0x00003969 call  0x00006405 
- 00016475  0x0000396a setarg  0x0000b541 
- 00016476  0x0000396b branch  0x00006405 
- 00016477  0x00003970 arg  0x00000003 , 0x0000003f 
- 00016478  0x00003971 call  0x00006414 
- 00016479  0x00003972 store  0x00000002 , 0x0000469b 
- 00016480  0x00003973 arg  0x00000004 , 0x0000003f 
- 00016481  0x00003974 call  0x00006414 
- 00016482  0x00003975 store  0x00000002 , 0x0000469d 
- 00016483  0x00003976 rtn 
- 00016484  0x00003979 arg  0x0000001b , 0x00000002 
- 00016485  0x0000397a call  0x000067fb 
- 00016486  0x0000397b arg  0x0000001b , 0x00000002 
- 00016487  0x0000397c call  0x0000681d 
- 00016488  0x0000397d rtn  0x00000001 
- 00016489  0x0000397e hfetch  0x00000001 , 0x00008109 
- 00016490  0x0000397f set1  0x00000004 , 0x0000003f 
- 00016491  0x00003980 hstore  0x00000001 , 0x00008109 
- 00016492  0x00003981 rtn 
- 00016493  0x00003984 fetcht  0x00000001 , 0x000046c0 
- 00016494  0x00003985 hfetch  0x00000001 , 0x00008109 
- 00016495  0x00003986 iadd  0x00000002 , 0x0000003f 
- 00016496  0x00003987 rtn  0x00000034 
- 00016497  0x00003988 store  0x00000001 , 0x0000469f 
- 00016498  0x00003989 jam  0x00000000 , 0x000046c0 
- 00016499  0x0000398a branch  0x00007fe7 
- 00016500  0x0000398c fetcht  0x00000001 , 0x000046c0 
- 00016501  0x0000398d hfetch  0x00000001 , 0x00008109 
- 00016502  0x0000398e iadd  0x00000002 , 0x0000003f 
- 00016503  0x0000398f store  0x00000001 , 0x000046c0 
- 00016504  0x00003990 rtn 
- 00016505  0x00003992 fetch  0x00000001 , 0x000046c0 
- 00016506  0x00003993 rtn  0x00000034 
- 00016507  0x00003994 store  0x00000001 , 0x0000469f 
- 00016508  0x00003995 jam  0x00000000 , 0x000046c0 
- 00016509  0x00003996 branch  0x00007fe7 
- 00016510  0x00003999 fetch  0x00000001 , 0x000046ba 
- 00016511  0x0000399a rtn  0x00000034 
- 00016512  0x0000399b store  0x00000001 , 0x000046a0 
- 00016513  0x0000399c jam  0x00000000 , 0x000046ba 
- 00016514  0x0000399d branch  0x00007fe7 
- 00016515  0x000039a0 arg  0x00000000 , 0x00000011 
- 00016516  0x000039a1 fetcht  0x00000001 , 0x000046e2 
- 00016517  0x000039a2 call  0x0000681d 
- 00016518  0x000039a3 setflag  0x00000001 , 0x00000000 , 0x00000011 
- 00016519  0x000039a4 fetcht  0x00000001 , 0x000046e3 
- 00016520  0x000039a5 call  0x0000681d 
- 00016521  0x000039a6 setflag  0x00000001 , 0x00000001 , 0x00000011 
- 00016522  0x000039a7 fetcht  0x00000001 , 0x000046e4 
- 00016523  0x000039a8 call  0x0000681d 
- 00016524  0x000039a9 setflag  0x00000001 , 0x00000002 , 0x00000011 
- 00016525  0x000039aa call  0x00004090 
- 00016526  0x000039ac copy  0x00000011 , 0x0000003f 
- 00016527  0x000039ad rtn 
- 00016528  0x000039af fetch  0x00000001 , 0x000046e5 
- 00016529  0x000039b0 rtneq  0x000000ff 
- 00016530  0x000039b1 fetcht  0x00000001 , 0x000046e5 
- 00016531  0x000039b2 call  0x0000681d 
- 00016532  0x000039b3 setflag  0x00000001 , 0x00000003 , 0x00000011 
- 00016533  0x000039b4 fetcht  0x00000001 , 0x000046e6 
- 00016534  0x000039b5 call  0x0000681d 
- 00016535  0x000039b6 setflag  0x00000001 , 0x00000004 , 0x00000011 
- 00016536  0x000039b7 rtn 
- 00016537  0x000039ba call  0x00004083 
- 00016538  0x000039bb call  0x000040a8 
- 00016539  0x000039bc call  0x000040a3 
- 00016540  0x000039bd copy  0x00000011 , 0x0000003f 
- 00016541  0x000039be fetcht  0x00000001 , 0x0000469a 
- 00016542  0x000039bf store  0x00000001 , 0x0000469a 
- 00016543  0x000039c0 ixor  0x00000002 , 0x0000003f 
- 00016544  0x000039c1 sub  0x0000003f , 0x00000000 , 0x0000003e 
- 00016545  0x000039c2 rtn  0x00000005 
- 00016546  0x000039c3 branch  0x00007fe7 
- 00016547  0x000039c6 rtnmark0  0x00000026 
- 00016548  0x000039c7 copy  0x00000011 , 0x0000003f 
- 00016549  0x000039c8 rtn  0x00000034 
- 00016550  0x000039c9 store  0x00000001 , 0x0000469a 
- 00016551  0x000039ca branch  0x00007fe7 
- 00016552  0x000039ce fetch  0x00000002 , 0x00004682 
- 00016553  0x000039cf bbit1  0x00000009 , 0x000040ad 
- 00016554  0x000039d0 fetch  0x00000002 , 0x00004682 
- 00016555  0x000039d1 bbit1  0x00000000 , 0x000040b0 
- 00016556  0x000039d2 rtn 
- 00016557  0x000039d4 copy  0x00000011 , 0x0000003f 
- 00016558  0x000039d5 nbranch  0x00005820 , 0x00000034 
- 00016559  0x000039d6 branch  0x00005822 
- 00016560  0x000039d8 copy  0x00000011 , 0x0000003f 
- 00016561  0x000039d9 nbranch  0x00002bc7 , 0x00000034 
- 00016562  0x000039da branch  0x00002bc9 
- 00016563  0x000039de bpatch  0x000000e7 , 0x0000401c 
- 00016564  0x000039df arg  0x0000001a , 0x00000002 
- 00016565  0x000039e0 fetch  0x00000004 , 0x000046d3 
- 00016566  0x000039e1 isolate1  0x00000012 , 0x0000003f 
- 00016567  0x000039e2 call  0x000040be , 0x00000001 
- 00016568  0x000039e3 call  0x0000681d 
- 00016569  0x000039e4 rtn  0x00000001 
- 00016570  0x000039e5 setarg  0x0000000a 
- 00016571  0x000039e6 call  0x00006414 
- 00016572  0x000039e7 nop  0x000003e8 
- 00016573  0x000039e8 branch  0x000040b3 
- 00016574  0x000039ea arg  0x0000001f , 0x00000002 
- 00016575  0x000039eb rtn 
- 00016576  0x000039ee fetch  0x00000004 , 0x000046d3 
- 00016577  0x000039ef bbit1  0x00000012 , 0x000040c4 
- 00016578  0x000039f1 arg  0x0000001a , 0x00000002 
- 00016579  0x000039f2 branch  0x000067fe 
- 00016580  0x000039f4 arg  0x0000001f , 0x00000002 
- 00016581  0x000039f5 branch  0x000067fe 
- 00016582  0x000039f9 call  0x00003d36 
- 00016583  0x000039fa rtn  0x0000002b 
- 00016584  0x000039fb call  0x000040c0 
- 00016585  0x000039fc fetch  0x00000001 , 0x000046e0 
- 00016586  0x000039fd beq  0x00000005 , 0x000040d5 
- 00016587  0x000039ff call  0x000040d9 
- 00016588  0x00003a00 beq  0x00000030 , 0x000040e0 
- 00016589  0x00003a01 beq  0x00000031 , 0x000040ea 
- 00016590  0x00003a02 call  0x000040d1 
- 00016591  0x00003a03 nop  0x000003e8 
- 00016592  0x00003a04 branch  0x000040cb 
- 00016593  0x00003a06 bpatch  0x000000e8 , 0x0000401d 
- 00016594  0x00003a07 fetch  0x00000004 , 0x000046d3 
- 00016595  0x00003a08 bbit1  0x00000012 , 0x000063e0 
- 00016596  0x00003a09 branch  0x000063d1 
- 00016597  0x00003a0c call  0x000040d9 
- 00016598  0x00003a0d beq  0x0000003e , 0x0000414b 
- 00016599  0x00003a0e call  0x00004145 
- 00016600  0x00003a0f branch  0x000040d5 
- 00016601  0x00003a12 setarg  0x00000001 
- 00016602  0x00003a13 call  0x00006414 
- 00016603  0x00003a14 store  0x00000001 , 0x000046de 
- 00016604  0x00003a15 setarg  0x00000000 
- 00016605  0x00003a16 call  0x00006414 
- 00016606  0x00003a17 store  0x00000001 , 0x000046dd 
- 00016607  0x00003a18 rtn 
- 00016608  0x00003a1a fetch  0x00000001 , 0x000046de 
- 00016609  0x00003a1b beq  0x000000d1 , 0x00004139 
- 00016610  0x00003a1c beq  0x000000d2 , 0x000040f8 
- 00016611  0x00003a1d beq  0x00000002 , 0x000040ee 
- 00016612  0x00003a1e beq  0x00000054 , 0x000040e6 
- 00016613  0x00003a1f rtn 
- 00016614  0x00003a21 jam  0x00000002 , 0x000046e0 
- 00016615  0x00003a22 rtn 
- 00016616  0x00003a24 jam  0x00000006 , 0x000046e0 
- 00016617  0x00003a25 rtn 
- 00016618  0x00003a27 fetch  0x00000001 , 0x000046de 
- 00016619  0x00003a28 beq  0x00000070 , 0x000040e8 
- 00016620  0x00003a29 jam  0x00000001 , 0x000046e0 
- 00016621  0x00003a2a rtn 
- 00016622  0x00003a2c jam  0x00000004 , 0x000046e0 
- 00016623  0x00003a2d call  0x000040f6 
- 00016624  0x00003a2e setarg  0x00003426 
- 00016625  0x00003a2f call  0x00006413 
- 00016626  0x00003a30 setarg  0x00000419 
- 00016627  0x00003a31 call  0x00006413 
- 00016628  0x00003a33 setarg  0x00000009 
- 00016629  0x00003a34 branch  0x00006413 
- 00016630  0x00003a36 setarg  0x00005a09 
- 00016631  0x00003a37 branch  0x00006413 
- 00016632  0x00003a3a jam  0x00000003 , 0x000046e0 
- 00016633  0x00003a3b call  0x000040f6 
- 00016634  0x00003a3c setarg  0x00000f0d 
- 00016635  0x00003a3d call  0x00006413 
- 00016636  0x00003a3e setarg  0x0000e31d 
- 00016637  0x00003a3f call  0x00006413 
- 00016638  0x00003a40 setarg  0x0000d27d 
- 00016639  0x00003a41 call  0x00006413 
- 00016640  0x00003a42 call  0x00004102 
- 00016641  0x00003a43 branch  0x0000411a 
- 00016642  0x00003a46 setarg  0x0000351b 
- 00016643  0x00003a47 call  0x00006413 
- 00016644  0x00003a48 setarg  0x0000b428 
- 00016645  0x00003a49 call  0x00006413 
- 00016646  0x00003a4a setarg  0x00004629 
- 00016647  0x00003a4b call  0x00006413 
- 00016648  0x00003a4c setarg  0x0000962a 
- 00016649  0x00003a4d call  0x00006413 
- 00016650  0x00003a4e setarg  0x00008c2b 
- 00016651  0x00003a4f call  0x00006413 
- 00016652  0x00003a50 setarg  0x00006e2c 
- 00016653  0x00003a51 call  0x00006413 
- 00016654  0x00003a52 setarg  0x0000642d 
- 00016655  0x00003a53 call  0x00006413 
- 00016656  0x00003a54 setarg  0x00005f38 
- 00016657  0x00003a55 call  0x00006413 
- 00016658  0x00003a56 setarg  0x00000f39 
- 00016659  0x00003a57 call  0x00006413 
- 00016660  0x00003a58 setarg  0x0000323a 
- 00016661  0x00003a59 call  0x00006413 
- 00016662  0x00003a5a setarg  0x0000473b 
- 00016663  0x00003a5b call  0x00006413 
- 00016664  0x00003a5c setarg  0x00001042 
- 00016665  0x00003a5d branch  0x00006413 
- 00016666  0x00003a5f setarg  0x00002e54 
- 00016667  0x00003a60 call  0x00006413 
- 00016668  0x00003a61 setarg  0x0000f255 
- 00016669  0x00003a62 call  0x00006413 
- 00016670  0x00003a63 setarg  0x0000f461 
- 00016671  0x00003a64 call  0x00006413 
- 00016672  0x00003a65 setarg  0x00007063 
- 00016673  0x00003a66 call  0x00006413 
- 00016674  0x00003a67 setarg  0x00005275 
- 00016675  0x00003a68 call  0x00006413 
- 00016676  0x00003a69 setarg  0x00004176 
- 00016677  0x00003a6a call  0x00006413 
- 00016678  0x00003a6b setarg  0x0000ed77 
- 00016679  0x00003a6c call  0x00006413 
- 00016680  0x00003a6d setarg  0x00002378 
- 00016681  0x00003a6e call  0x00006413 
- 00016682  0x00003a6f setarg  0x00004679 
- 00016683  0x00003a70 call  0x00006413 
- 00016684  0x00003a71 setarg  0x0000e57a 
- 00016685  0x00003a72 call  0x00006413 
- 00016686  0x00003a73 setarg  0x0000487c 
- 00016687  0x00003a74 call  0x00006413 
- 00016688  0x00003a75 setarg  0x0000777e 
- 00016689  0x00003a76 call  0x00006413 
- 00016690  0x00003a77 setarg  0x0000017f 
- 00016691  0x00003a78 call  0x00006413 
- 00016692  0x00003a79 setarg  0x0000000b 
- 00016693  0x00003a7a call  0x00006413 
- 00016694  0x00003a7b setarg  0x0000007f 
- 00016695  0x00003a7c call  0x00006413 
- 00016696  0x00003a7d branch  0x000040f4 
- 00016697  0x00003a81 jam  0x00000000 , 0x000046e0 
- 00016698  0x00003a82 call  0x000040f6 
- 00016699  0x00003a83 setarg  0x0000100d 
- 00016700  0x00003a84 call  0x00006413 
- 00016701  0x00003a85 setarg  0x0000ed1d 
- 00016702  0x00003a86 call  0x00006413 
- 00016703  0x00003a87 setarg  0x0000807d 
- 00016704  0x00003a88 call  0x00006413 
- 00016705  0x00003a89 call  0x00004102 
- 00016706  0x00003a8a setarg  0x00000943 
- 00016707  0x00003a8b call  0x00006413 
- 00016708  0x00003a8c branch  0x0000411a 
- 00016709  0x00003a90 fetcht  0x00000001 , 0x000046dc 
- 00016710  0x00003a91 call  0x00006829 
- 00016711  0x00003a92 call  0x00007ec1 
- 00016712  0x00003a93 fetcht  0x00000001 , 0x000046dc 
- 00016713  0x00003a94 call  0x00006825 
- 00016714  0x00003a95 branch  0x00007ec1 
- 00016715  0x00003a98 jam  0x00000005 , 0x000046e0 
- 00016716  0x00003a99 setarg  0x0000ba41 
- 00016717  0x00003a9a call  0x00006405 
- 00016718  0x00003a9b setarg  0x00000d11 
- 00016719  0x00003a9c call  0x00006405 
- 00016720  0x00003a9d setarg  0x0000041b 
- 00016721  0x00003a9e call  0x00006405 
- 00016722  0x00003a9f setarg  0x0000041c 
- 00016723  0x00003aa0 call  0x00006405 
- 00016724  0x00003aa1 setarg  0x00000f1d 
- 00016725  0x00003aa2 call  0x00006405 
- 00016726  0x00003aa3 setarg  0x00000032 
- 00016727  0x00003aa4 call  0x00006405 
- 00016728  0x00003aa5 setarg  0x0000b541 
- 00016729  0x00003aa6 branch  0x00006405 
- 00016730  0x00003aab setarg  0x0000ba41 
- 00016731  0x00003aac call  0x00006405 
- 00016732  0x00003aad nop  0x00000fa0 
- 00016733  0x00003aae setarg  0x0000ff7f 
- 00016734  0x00003aaf call  0x00006405 
- 00016735  0x00003ab0 copy  0x00000011 , 0x0000003f 
- 00016736  0x00003ab1 call  0x00006405 
- 00016737  0x00003ab2 setarg  0x0000007f 
- 00016738  0x00003ab3 call  0x00006405 
- 00016739  0x00003ab4 setarg  0x0000b541 
- 00016740  0x00003ab5 branch  0x00006405 
- 00016741  0x00003ab8 rtnbit0  0x00000007 
- 00016742  0x00003ab9 arg  0x0000ff00 , 0x00000002 
- 00016743  0x00003aba ior  0x00000002 , 0x0000003f 
- 00016744  0x00003abb rtn 
- 00016745  0x00003abe rtnbit0  0x00000003 
- 00016746  0x00003abf arg  0x000000f0 , 0x00000002 
- 00016747  0x00003ac0 ior  0x00000002 , 0x0000003f 
- 00016748  0x00003ac1 rtn 
- 00016749  0x00003ac5 call  0x00005892 
- 00016750  0x00003ac6 nrtn  0x00000034 
- 00016751  0x00003ac7 fetch  0x00000001 , 0x000046c5 
- 00016752  0x00003ac8 and  0x0000003f , 0x00000003 , 0x0000003f 
- 00016753  0x00003ac9 rtnne  0x00000003 
- 00016754  0x00003aca fetch  0x00000004 , 0x000046d3 
- 00016755  0x00003acb bbit1  0x00000003 , 0x00004179 
- 00016756  0x00003acc bbit1  0x00000000 , 0x00004179 
- 00016757  0x00003acd bbit1  0x00000005 , 0x00004179 
- 00016758  0x00003ace call  0x00003f97 
- 00016759  0x00003acf nrtn  0x00000028 
- 00016760  0x00003ad0 branch  0x00003f90 
- 00016761  0x00003ad3 setarg  0x00000000 
- 00016762  0x00003ad4 store  0x00000007 , 0x0000469a 
- 00016763  0x00003ad5 branch  0x00003f90 
- 00016764  0x00003ad8 copy  0x00000013 , 0x0000003f 
- 00016765  0x00003ad9 beq  0x00000014 , 0x000041c3 
- 00016766  0x00003ada beq  0x00000001 , 0x000042ca 
- 00016767  0x00003adb beq  0x00000015 , 0x000041d9 
- 00016768  0x00003adc beq  0x00000002 , 0x000041d9 
- 00016769  0x00003add beq  0x00000005 , 0x000041d6 
- 00016770  0x00003ade beq  0x00000010 , 0x0000426c 
- 00016771  0x00003adf beq  0x00000012 , 0x0000429b 
- 00016772  0x00003ae0 beq  0x00000006 , 0x000041d5 
- 00016773  0x00003ae1 beq  0x00000004 , 0x000041cc 
- 00016774  0x00003ae2 beq  0x00000013 , 0x000041cc 
- 00016775  0x00003ae3 beq  0x0000000a , 0x000041ca 
- 00016776  0x00003ae4 beq  0x0000002e , 0x000033cd 
- 00016777  0x00003ae5 beq  0x00000031 , 0x000041b4 
- 00016778  0x00003ae6 beq  0x00000032 , 0x000041b6 
- 00016779  0x00003ae7 beq  0x0000003e , 0x00004191 
- 00016780  0x00003ae8 beq  0x00000027 , 0x0000438e 
- 00016781  0x00003ae9 beq  0x00000039 , 0x0000419c 
- 00016782  0x00003aea beq  0x0000003a , 0x00004192 
- 00016783  0x00003aeb beq  0x0000003c , 0x0000419a 
- 00016784  0x00003aec rtn 
- 00016785  0x00003af0 branch  0x00003410 
- 00016786  0x00003af3 jam  0x00000001 , 0x0000478b 
- 00016787  0x00003af4 fetch  0x00000001 , 0x0000471e 
- 00016788  0x00003af5 nbranch  0x00004492 , 0x00000034 
- 00016789  0x00003af6 fetch  0x00000001 , 0x00004720 
- 00016790  0x00003af7 fetcht  0x00000001 , 0x00004703 
- 00016791  0x00003af8 isub  0x00000002 , 0x0000003e 
- 00016792  0x00003af9 branch  0x0000340a , 0x00000005 
- 00016793  0x00003afa rtn 
- 00016794  0x00003afc jam  0x00000001 , 0x0000478b 
- 00016795  0x00003afd rtn 
- 00016796  0x00003aff jam  0x00000001 , 0x0000478b 
- 00016797  0x00003b00 arg  0x00000003 , 0x00000007 
- 00016798  0x00003b01 call  0x000043d2 
- 00016799  0x00003b02 setarg  0x00000000 
- 00016800  0x00003b03 store  0x00000002 , 0x00004707 
- 00016801  0x00003b04 jam  0x00000000 , 0x000046a7 
- 00016802  0x00003b06 fetch  0x00000001 , 0x000046e0 
- 00016803  0x00003b07 sub  0x0000003f , 0x00000005 , 0x0000003e 
- 00016804  0x00003b08 call  0x00004039 , 0x00000005 
- 00016805  0x00003b09 ncall  0x0000405d , 0x00000005 
- 00016806  0x00003b0b fetch  0x00000001 , 0x00000004 , 0x000046d3 
- 00016807  0x00003b0c bbit1  0x00000013 , 0x000041af 
- 00016808  0x00003b0d call  0x000041aa 
- 00016809  0x00003b0e branch  0x000065d1 
- 00016810  0x00003b11 call  0x00002c7a 
- 00016811  0x00003b12 add  0x00000013 , 0x000000ae , 0x00000011 
- 00016812  0x00003b13 arg  0x0000005b , 0x00000012 
- 00016813  0x00003b14 arg  0x00000004 , 0x00000002 
- 00016814  0x00003b15 rtn 
- 00016815  0x00003b18 call  0x00002c7a 
- 00016816  0x00003b19 add  0x00000013 , 0x000000ae , 0x00000012 
- 00016817  0x00003b1a ifetch  0x00000001 , 0x00000012 
- 00016818  0x00003b1b store  0x00000001 , 0x0000477b 
- 00016819  0x00003b1c branch  0x00004435 
- 00016820  0x00003b20 arg  0x00000002 , 0x00000007 
- 00016821  0x00003b21 branch  0x000041b9 
- 00016822  0x00003b23 jam  0x00000002 , 0x000046c6 
- 00016823  0x00003b24 arg  0x00000001 , 0x00000007 
- 00016824  0x00003b25 branch  0x000041b9 
- 00016825  0x00003b29 fetch  0x00000001 , 0x000046c5 
- 00016826  0x00003b2a qset1  0x0000003f 
- 00016827  0x00003b2b store  0x00000001 , 0x000046c5 
- 00016828  0x00003b2c rtn 
- 00016829  0x00003b2f fetch  0x00000001 , 0x000046c5 
- 00016830  0x00003b30 qset0  0x0000003f 
- 00016831  0x00003b31 store  0x00000001 , 0x000046c5 
- 00016832  0x00003b32 rtn 
- 00016833  0x00003b34 jam  0x00000000 , 0x000046c5 
- 00016834  0x00003b35 rtn 
- 00016835  0x00003b38 fetch  0x00000002 , 0x0000420a 
- 00016836  0x00003b39 set0  0x00000000 , 0x0000003f 
- 00016837  0x00003b3a store  0x00000002 , 0x0000420a 
- 00016838  0x00003b3b setarg  0x00000000 
- 00016839  0x00003b3c store  0x00000002 , 0x000046ae 
- 00016840  0x00003b3d call  0x00003f8d 
- 00016841  0x00003b3e branch  0x000042ca 
- 00016842  0x00003b41 call  0x000063cb 
- 00016843  0x00003b42 branch  0x000033dd 
- 00016844  0x00003b45 fetch  0x00000001 , 0x0000471e 
- 00016845  0x00003b46 nbranch  0x00004492 , 0x00000034 
- 00016846  0x00003b47 fetch  0x00000002 , 0x00004682 
- 00016847  0x00003b48 bbit1  0x0000000c , 0x000042b0 
- 00016848  0x00003b49 fetch  0x00000004 , 0x000046d3 
- 00016849  0x00003b4a bbit1  0x00000000 , 0x000041d7 
- 00016850  0x00003b4b bbit1  0x00000005 , 0x000042b0 
- 00016851  0x00003b4c bbit1  0x00000003 , 0x00002ead 
- 00016852  0x00003b4d branch  0x000033a7 
- 00016853  0x00003b51 branch  0x00003f74 
- 00016854  0x00003b54 rtn 
- 00016855  0x00003b57 call  0x000043c0 
- 00016856  0x00003b58 branch  0x0000659a 
- 00016857  0x00003b5b bpatch  0x000000e9 , 0x0000401d 
- 00016858  0x00003b5c call  0x000041e7 
- 00016859  0x00003b5d fetch  0x00000004 , 0x000046d3 
- 00016860  0x00003b5e bbit1  0x00000000 , 0x000041d7 
- 00016861  0x00003b5f bbit1  0x00000003 , 0x00002ead 
- 00016862  0x00003b60 fetch  0x00000001 , 0x0000471e 
- 00016863  0x00003b61 nbranch  0x00004492 , 0x00000034 
- 00016864  0x00003b62 fetch  0x00000002 , 0x00004208 
- 00016865  0x00003b63 bbit1  0x00000007 , 0x000041f5 
- 00016866  0x00003b64 bbit1  0x00000000 , 0x000033a9 
- 00016867  0x00003b65 bbit1  0x00000001 , 0x000041ef 
- 00016868  0x00003b66 bbit1  0x00000002 , 0x000041f2 
- 00016869  0x00003b67 bbit1  0x00000003 , 0x000041f2 
- 00016870  0x00003b68 branch  0x000042b0 
- 00016871  0x00003b6a setarg  0x00000000 
- 00016872  0x00003b6b store  0x00000008 , 0x000046b7 
- 00016873  0x00003b6c istore  0x00000004 , 0x00000005 
- 00016874  0x00003b6d jam  0x00000000 , 0x000046b4 
- 00016875  0x00003b6e jam  0x00000000 , 0x000046a7 
- 00016876  0x00003b6f jam  0x00000000 , 0x000041e2 
- 00016877  0x00003b70 jam  0x00000000 , 0x00004429 
- 00016878  0x00003b71 rtn 
- 00016879  0x00003b74 bbit1  0x00000005 , 0x000041f2 
- 00016880  0x00003b75 bbit1  0x00000003 , 0x000041f2 
- 00016881  0x00003b76 branch  0x000042b0 
- 00016882  0x00003b78 fetch  0x00000002 , 0x00004682 
- 00016883  0x00003b79 bbit1  0x0000000c , 0x000042b0 
- 00016884  0x00003b7a branch  0x000033a7 
- 00016885  0x00003b7d call  0x000041c1 
- 00016886  0x00003b7e fetch  0x00000002 , 0x00004208 
- 00016887  0x00003b7f bbit1  0x00000000 , 0x000033a9 
- 00016888  0x00003b80 branch  0x000033a7 
- 00016889  0x00003b83 call  0x000043d6 
- 00016890  0x00003b84 call  0x00004243 
- 00016891  0x00003b85 call  0x00004246 
- 00016892  0x00003b86 call  0x00004250 
- 00016893  0x00003b87 call  0x0000445d 
- 00016894  0x00003b89 call  0x00004443 
- 00016895  0x00003b8a call  0x00004333 
- 00016896  0x00003b8b call  0x000043a5 
- 00016897  0x00003b8c call  0x000043eb 
- 00016898  0x00003b8d call  0x00004209 
- 00016899  0x00003b8e call  0x00004231 
- 00016900  0x00003b8f call  0x00004234 
- 00016901  0x00003b90 call  0x00004237 
- 00016902  0x00003b91 call  0x0000423a 
- 00016903  0x00003b92 call  0x0000423d 
- 00016904  0x00003b93 branch  0x00004240 
- 00016905  0x00003b98 fetch  0x00000001 , 0x00004711 
- 00016906  0x00003b99 rtn  0x00000034 
- 00016907  0x00003b9a increase  0xffffffff , 0x0000003f 
- 00016908  0x00003b9b store  0x00000001 , 0x00004711 
- 00016909  0x00003b9c nrtn  0x00000034 
- 00016910  0x00003b9d branch  0x0000420f 
- 00016911  0x00003b9f fetch  0x00000001 , 0x00004712 
- 00016912  0x00003ba0 rtneq  0x00000000 
- 00016913  0x00003ba1 beq  0x00000005 , 0x00004216 
- 00016914  0x00003ba3 call  0x00004225 
- 00016915  0x00003ba4 jam  0x00000005 , 0x00004712 
- 00016916  0x00003ba5 jam  0x00000005 , 0x00004711 
- 00016917  0x00003ba6 rtn 
- 00016918  0x00003ba8 call  0x0000422c 
- 00016919  0x00003ba9 jam  0x00000004 , 0x00004712 
- 00016920  0x00003baa jam  0x00000005 , 0x00004711 
- 00016921  0x00003bab rtn 
- 00016922  0x00003baf setarg  0x00008006 
- 00016923  0x00003bb0 call  0x00006413 
- 00016924  0x00003bb1 nop  0x000003e8 
- 00016925  0x00003bb2 jam  0x00000000 , 0x00004711 
- 00016926  0x00003bb3 jam  0x00000000 , 0x00004712 
- 00016927  0x00003bb4 branch  0x000040e0 
- 00016928  0x00003bb7 setarg  0x0000a006 
- 00016929  0x00003bb8 call  0x00006413 
- 00016930  0x00003bb9 setarg  0x0000a005 
- 00016931  0x00003bba branch  0x00006413 
- 00016932  0x00003bbc jam  0x00000000 , 0x00004711 
- 00016933  0x00003bbe fetch  0x00000001 , 0x000046e0 
- 00016934  0x00003bbf beq  0x00000004 , 0x00004220 
- 00016935  0x00003bc0 setarg  0x00000106 
- 00016936  0x00003bc1 call  0x00006413 
- 00016937  0x00003bc2 setarg  0x0000a105 
- 00016938  0x00003bc3 branch  0x00006413 
- 00016939  0x00003bc6 jam  0x00000000 , 0x00004711 
- 00016940  0x00003bc8 setarg  0x00000906 
- 00016941  0x00003bc9 branch  0x00006413 
- 00016942  0x00003bcb jam  0x00000005 , 0x00004711 
- 00016943  0x00003bcc jam  0x00000001 , 0x00004712 
- 00016944  0x00003bcd rtn 
- 00016945  0x00003bd0 arg  0x00004680 , 0x00000013 
- 00016946  0x00003bd1 arg  0x0000429b , 0x00000012 
- 00016947  0x00003bd2 branch  0x0000336d 
- 00016948  0x00003bd5 arg  0x000046ac , 0x00000013 
- 00016949  0x00003bd6 arg  0x00004264 , 0x00000012 
- 00016950  0x00003bd7 branch  0x00003374 
- 00016951  0x00003bda arg  0x000046ae , 0x00000013 
- 00016952  0x00003bdb arg  0x00004266 , 0x00000012 
- 00016953  0x00003bdc branch  0x00003374 
- 00016954  0x00003bdf arg  0x000046b0 , 0x00000013 
- 00016955  0x00003be0 arg  0x0000426a , 0x00000012 
- 00016956  0x00003be1 branch  0x00003374 
- 00016957  0x00003be4 arg  0x000046c4 , 0x00000013 
- 00016958  0x00003be5 arg  0x00004478 , 0x00000012 
- 00016959  0x00003be6 branch  0x0000336d 
- 00016960  0x00003beb arg  0x000046c6 , 0x00000013 
- 00016961  0x00003bec arg  0x0000425e , 0x00000012 
- 00016962  0x00003bed branch  0x0000336d 
- 00016963  0x00003bf0 arg  0x00004704 , 0x00000013 
- 00016964  0x00003bf1 arg  0x00004249 , 0x00000012 
- 00016965  0x00003bf2 branch  0x0000336d 
- 00016966  0x00003bf5 arg  0x00004707 , 0x00000013 
- 00016967  0x00003bf6 arg  0x00004249 , 0x00000012 
- 00016968  0x00003bf7 branch  0x00003374 
- 00016969  0x00003bfa rtn 
- 00016970  0x00003bfe fetch  0x00000004 , 0x000046d3 
- 00016971  0x00003bff rtnbit0  0x00000017 
- 00016972  0x00003c00 jam  0x0000000a , 0x000046df 
- 00016973  0x00003c01 fetch  0x00000001 , 0x000046f4 
- 00016974  0x00003c02 store  0x00000001 , 0x00004715 
- 00016975  0x00003c03 rtn 
- 00016976  0x00003c07 arg  0x000046df , 0x00000013 
- 00016977  0x00003c08 arg  0x00004253 , 0x00000012 
- 00016978  0x00003c09 branch  0x0000336d 
- 00016979  0x00003c0b fetch  0x00000001 , 0x000046f4 
- 00016980  0x00003c0c store  0x00000001 , 0x00004715 
- 00016981  0x00003c0d setarg  0x00000190 
- 00016982  0x00003c0e store  0x00000002 , 0x00004716 
- 00016983  0x00003c0f store  0x00000002 , 0x00004718 
- 00016984  0x00003c10 arg  0x00000000 , 0x00000011 
- 00016985  0x00003c11 fetcht  0x00000001 , 0x0000477a 
- 00016986  0x00003c12 increase  0x00000001 , 0x00000002 
- 00016987  0x00003c13 storet  0x00000001 , 0x00004714 
- 00016988  0x00003c14 jam  0x00000001 , 0x00004713 
- 00016989  0x00003c15 rtn 
- 00016990  0x00003c18 fetch  0x00000001 , 0x000046c5 
- 00016991  0x00003c19 rtnbit1  0x00000002 
- 00016992  0x00003c1a jam  0x00000012 , 0x00000a99 
- 00016993  0x00003c1b call  0x00007d8f 
- 00016994  0x00003c1c arg  0x00000000 , 0x00000007 
- 00016995  0x00003c1d branch  0x000041b9 
- 00016996  0x00003c21 call  0x000042ca 
- 00016997  0x00003c22 branch  0x0000340a 
- 00016998  0x00003c25 call  0x000033f6 
- 00016999  0x00003c26 fetch  0x00000001 , 0x0000471e 
- 00017000  0x00003c27 nbranch  0x00004492 , 0x00000034 
- 00017001  0x00003c28 branch  0x0000340a 
- 00017002  0x00003c2b bmark1  0x00000026 , 0x00007e1d 
- 00017003  0x00003c2c branch  0x00004386 
- 00017004  0x00003c31 bpatch  0x000000ea , 0x0000401d 
- 00017005  0x00003c32 jam  0x00000000 , 0x000046b4 
- 00017006  0x00003c33 call  0x00004386 
- 00017007  0x00003c34 call  0x000041c1 
- 00017008  0x00003c35 branch  0x000042b0 
- 00017009  0x00003c3a fetch  0x00000006 , 0x000041d0 
- 00017010  0x00003c3b branch  0x000033eb , 0x00000034 
- 00017011  0x00003c3c call  0x0000427e 
- 00017012  0x00003c3d jam  0x00000017 , 0x0000016d 
- 00017013  0x00003c3e fetch  0x00000001 , 0x0000465a 
- 00017014  0x00003c3f nbranch  0x000033e1 , 0x00000034 
- 00017015  0x00003c40 jam  0x00000004 , 0x0000016d 
- 00017016  0x00003c41 branch  0x000033e1 
- 00017017  0x00003c44 fetch  0x00000002 , 0x000046a8 
- 00017018  0x00003c45 store  0x00000002 , 0x000046ae 
- 00017019  0x00003c46 call  0x0000427e 
- 00017020  0x00003c47 call  0x00003418 
- 00017021  0x00003c48 branch  0x00007df4 
- 00017022  0x00003c4b setarg  0x000000c8 
- 00017023  0x00003c4c store  0x00000002 , 0x00004716 
- 00017024  0x00003c4d store  0x00000002 , 0x00004718 
- 00017025  0x00003c4e branch  0x00004285 
- 00017026  0x00003c51 setarg  0x000003e8 
- 00017027  0x00003c52 store  0x00000002 , 0x00004716 
- 00017028  0x00003c53 store  0x00000002 , 0x00004718 
- 00017029  0x00003c55 fetch  0x00000001 , 0x00004720 
- 00017030  0x00003c56 beq  0x00000001 , 0x0000428a 
- 00017031  0x00003c57 beq  0x00000002 , 0x0000428c 
- 00017032  0x00003c58 beq  0x00000003 , 0x0000428e 
- 00017033  0x00003c59 rtn 
- 00017034  0x00003c5b fetch  0x00000001 , 0x000046f0 
- 00017035  0x00003c5c branch  0x0000428f 
- 00017036  0x00003c5e fetch  0x00000001 , 0x000046f1 
- 00017037  0x00003c5f branch  0x0000428f 
- 00017038  0x00003c61 fetch  0x00000001 , 0x000046f2 
- 00017039  0x00003c63 store  0x00000001 , 0x00000aa2 
- 00017040  0x00003c64 call  0x00004482 
- 00017041  0x00003c65 fetch  0x00000001 , 0x00000aa2 
- 00017042  0x00003c66 store  0x00000001 , 0x00004715 
- 00017043  0x00003c67 arg  0x00000000 , 0x00000011 
- 00017044  0x00003c68 jam  0x00000001 , 0x00004713 
- 00017045  0x00003c69 branch  0x00007d1e 
- 00017046  0x00003c6c arg  0x00000000 , 0x00000011 
- 00017047  0x00003c6d branch  0x00007d19 
- 00017048  0x00003c6f arg  0x00000000 , 0x00000011 
- 00017049  0x00003c70 branch  0x00007d14 
- 00017050  0x00003c73 branch  0x000041c1 
- 00017051  0x00003c76 jam  0x00000001 , 0x000041e2 
- 00017052  0x00003c77 call  0x00003416 
- 00017053  0x00003c78 call  0x00003412 
- 00017054  0x00003c79 setarg  0x00000000 
- 00017055  0x00003c7a store  0x00000002 , 0x0000467e 
- 00017056  0x00003c7b store  0x00000001 , 0x00004680 
- 00017057  0x00003c7c branch  0x0000340e 
- 00017058  0x00003c7f call  0x0000435f 
- 00017059  0x00003c80 fetch  0x00000001 , 0x00004720 
- 00017060  0x00003c81 fetcht  0x00000001 , 0x00004703 
- 00017061  0x00003c82 isub  0x00000002 , 0x0000003e 
- 00017062  0x00003c83 branch  0x000042ab , 0x00000005 
- 00017063  0x00003c84 fetch  0x00000001 , 0x00004210 
- 00017064  0x00003c85 beq  0x00000033 , 0x00004271 
- 00017065  0x00003c86 beq  0x00000034 , 0x00004279 
- 00017066  0x00003c87 branch  0x000042b0 
- 00017067  0x00003c89 call  0x00003d57 
- 00017068  0x00003c8a rtnmark1  0x00000026 
- 00017069  0x00003c8b fetch  0x00000001 , 0x0000471e 
- 00017070  0x00003c8c nbranch  0x00004492 , 0x00000034 
- 00017071  0x00003c8d rtn 
- 00017072  0x00003c90 bpatch  0x000000eb , 0x0000401d 
- 00017073  0x00003c91 fetch  0x00000002 , 0x00004682 
- 00017074  0x00003c92 bbit1  0x0000000b , 0x000042b7 
- 00017075  0x00003c93 fetch  0x00000004 , 0x000046d3 
- 00017076  0x00003c94 bbit0  0x00000018 , 0x000042b7 
- 00017077  0x00003c95 random  0x0000003f 
- 00017078  0x00003c96 store  0x00000001 , 0x000044a1 
- 00017079  0x00003c98 call  0x00003418 
- 00017080  0x00003c99 fetch  0x00000002 , 0x00004687 
- 00017081  0x00003c9a store  0x00000002 , 0x000046ac 
- 00017082  0x00003c9b jam  0x00000006 , 0x0000016d 
- 00017083  0x00003c9c setarg  0x00000000 
- 00017084  0x00003c9d store  0x00000002 , 0x000046b0 
- 00017085  0x00003c9e store  0x00000002 , 0x000046ae 
- 00017086  0x00003c9f arg  0x00000007 , 0x00000007 
- 00017087  0x00003ca0 call  0x000043ce 
- 00017088  0x00003ca1 call  0x000043ca 
- 00017089  0x00003ca2 fetch  0x00000001 , 0x00004092 
- 00017090  0x00003ca3 isolate1  0x00000001 , 0x0000003f 
- 00017091  0x00003ca4 call  0x00007df4 , 0x00000001 
- 00017092  0x00003ca5 fetch  0x00000001 , 0x00004092 
- 00017093  0x00003ca6 isolate1  0x00000000 , 0x0000003f 
- 00017094  0x00003ca7 call  0x00007ddd , 0x00000001 
- 00017095  0x00003ca8 fetch  0x00000004 , 0x000046d3 
- 00017096  0x00003ca9 bbit1  0x0000001c , 0x0000422e 
- 00017097  0x00003caa branch  0x00004282 
- 00017098  0x00003cad bpatch  0x000000ec , 0x0000401d 
- 00017099  0x00003cae fetch  0x00000001 , 0x00004092 
- 00017100  0x00003caf isolate1  0x00000001 , 0x0000003f 
- 00017101  0x00003cb0 call  0x000042d4 , 0x00000001 
- 00017102  0x00003cb1 fetch  0x00000001 , 0x00004092 
- 00017103  0x00003cb2 isolate1  0x00000000 , 0x0000003f 
- 00017104  0x00003cb3 call  0x000042d7 , 0x00000001 
- 00017105  0x00003cb4 fetch  0x00000004 , 0x000046d3 
- 00017106  0x00003cb5 bbit1  0x0000001c , 0x0000421a 
- 00017107  0x00003cb6 branch  0x00004482 
- 00017108  0x00003cb8 setarg  0x00000000 
- 00017109  0x00003cb9 store  0x00000002 , 0x000046ae 
- 00017110  0x00003cba branch  0x00007dfa 
- 00017111  0x00003cbc setarg  0x00000000 
- 00017112  0x00003cbd store  0x00000002 , 0x000046ac 
- 00017113  0x00003cbe branch  0x00007de2 
- 00017114  0x00003cc5 fetch  0x00000004 , 0x000046d3 
- 00017115  0x00003cc6 rtnbit0  0x00000007 
- 00017116  0x00003cc7 arg  0x00000007 , 0x00000007 
- 00017117  0x00003cc8 call  0x000043d2 
- 00017118  0x00003cc9 call  0x000042e8 
- 00017119  0x00003ccb call  0x000042fb 
- 00017120  0x00003ccc fetch  0x00000004 , 0x000046d3 
- 00017121  0x00003ccd bbit1  0x00000013 , 0x00004435 
- 00017122  0x00003cce bbit1  0x00000014 , 0x000042e4 
- 00017123  0x00003ccf rtn 
- 00017124  0x00003cd1 arg  0x00000058 , 0x00000002 
- 00017125  0x00003cd2 arg  0x00004720 , 0x00000011 
- 00017126  0x00003cd3 arg  0x00000000 , 0x00000012 
- 00017127  0x00003cd4 branch  0x000065d1 
- 00017128  0x00003cd7 fetch  0x00000001 , 0x00000185 
- 00017129  0x00003cd8 beq  0x00000034 , 0x000042ec 
- 00017130  0x00003cd9 beq  0x00000033 , 0x000042ef 
- 00017131  0x00003cda rtn 
- 00017132  0x00003cdc store  0x00000001 , 0x000046c7 
- 00017133  0x00003cdd fetch  0x00000006 , 0x0000044f 
- 00017134  0x00003cde branch  0x000042f1 
- 00017135  0x00003ce0 store  0x00000001 , 0x000046c7 
- 00017136  0x00003ce1 fetch  0x00000006 , 0x00000040 
- 00017137  0x00003ce3 store  0x00000006 , 0x000046c8 
- 00017138  0x00003ce4 fetch  0x00000007 , 0x000046c7 
- 00017139  0x00003ce5 arg  0x00004721 , 0x00000006 
- 00017140  0x00003ce6 arg  0x00000003 , 0x00000039 
- 00017141  0x00003ce8 ifetcht  0x00000007 , 0x00000006 
- 00017142  0x00003ce9 isub  0x00000002 , 0x0000003e 
- 00017143  0x00003cea branch  0x00004310 , 0x00000005 
- 00017144  0x00003ceb increase  0x00000016 , 0x00000006 
- 00017145  0x00003cec loop  0x000042f5 
- 00017146  0x00003ced rtn 
- 00017147  0x00003cef arg  0x00004721 , 0x00000011 
- 00017148  0x00003cf0 fetch  0x00000001 , 0x00004720 
- 00017149  0x00003cf1 increase  0xffffffff , 0x0000003f 
- 00017150  0x00003cf2 mul32  0x0000003f , 0x0000001d , 0x0000003f 
- 00017151  0x00003cf3 iadd  0x00000011 , 0x00000011 
- 00017152  0x00003cf4 fetch  0x00000001 , 0x00000185 
- 00017153  0x00003cf5 istore  0x00000001 , 0x00000011 
- 00017154  0x00003cf6 beq  0x00000034 , 0x00004305 
- 00017155  0x00003cf7 beq  0x00000033 , 0x0000430c 
- 00017156  0x00003cf8 rtn 
- 00017157  0x00003cfb fetch  0x00000006 , 0x0000044f 
- 00017158  0x00003cfc istore  0x00000006 , 0x00000005 
- 00017159  0x00003cfd arg  0x00004419 , 0x00000006 
- 00017160  0x00003cfe call  0x00007ebf 
- 00017161  0x00003cff fetch  0x00000006 , 0x000044a0 
- 00017162  0x00003d00 istore  0x00000006 , 0x00000005 
- 00017163  0x00003d01 rtn 
- 00017164  0x00003d03 fetch  0x00000006 , 0x00000040 
- 00017165  0x00003d04 istore  0x00000006 , 0x00000005 
- 00017166  0x00003d05 arg  0x000041be , 0x00000006 
- 00017167  0x00003d06 branch  0x00007ebf 
- 00017168  0x00003d09 increase  0xfffffffa , 0x00000006 
- 00017169  0x00003d0a copy  0x00000006 , 0x00000005 
- 00017170  0x00003d0b fetcht  0x00000006 , 0x000046c8 
- 00017171  0x00003d0c increase  0x00000003 , 0x00000002 
- 00017172  0x00003d0d istoret  0x00000006 , 0x00000005 
- 00017173  0x00003d0e rtn 
- 00017174  0x00003d13 arg  0x00000058 , 0x00000002 
- 00017175  0x00003d14 arg  0x00004720 , 0x00000011 
- 00017176  0x00003d15 arg  0x00000000 , 0x00000012 
- 00017177  0x00003d16 call  0x000065df 
- 00017178  0x00003d18 arg  0x00004721 , 0x00000011 
- 00017179  0x00003d19 fetch  0x00000001 , 0x00004720 
- 00017180  0x00003d1a fetcht  0x00000001 , 0x00004703 
- 00017181  0x00003d1b isub  0x00000002 , 0x0000003e 
- 00017182  0x00003d1c rtn  0x00000005 
- 00017183  0x00003d1d increase  0xffffffff , 0x0000003f 
- 00017184  0x00003d1e mul32  0x0000003f , 0x0000001d , 0x0000003f 
- 00017185  0x00003d1f iadd  0x00000011 , 0x00000011 
- 00017186  0x00003d20 ifetch  0x00000001 , 0x00000011 
- 00017187  0x00003d21 store  0x00000001 , 0x00004210 
- 00017188  0x00003d22 beq  0x00000033 , 0x00004327 
- 00017189  0x00003d23 beq  0x00000034 , 0x0000432c 
- 00017190  0x00003d24 rtn 
- 00017191  0x00003d27 ifetch  0x00000006 , 0x00000006 
- 00017192  0x00003d29 store  0x00000006 , 0x000041d0 
- 00017193  0x00003d2a arg  0x000041be , 0x00000005 
- 00017194  0x00003d2b call  0x00007ebf 
- 00017195  0x00003d2c branch  0x000067d7 
- 00017196  0x00003d2f ifetch  0x00000006 , 0x00000006 
- 00017197  0x00003d31 store  0x00000006 , 0x000041d0 
- 00017198  0x00003d32 arg  0x00004419 , 0x00000005 
- 00017199  0x00003d33 call  0x00007ebf 
- 00017200  0x00003d34 ifetch  0x00000006 , 0x00000006 
- 00017201  0x00003d35 store  0x00000006 , 0x000044a0 
- 00017202  0x00003d36 rtn 
- 00017203  0x00003d3a fetch  0x00000001 , 0x000046f5 
- 00017204  0x00003d3b bbit1  0x00000005 , 0x00004349 
- 00017205  0x00003d3c bbit1  0x00000006 , 0x00004359 
- 00017206  0x00003d3d branch  0x00004337 
- 00017207  0x00003d40 call  0x00004083 
- 00017208  0x00003d41 beq  0x00000006 , 0x0000433e 
- 00017209  0x00003d43 jam  0x0000001e , 0x000046d8 
- 00017210  0x00003d44 fetch  0x00000001 , 0x000046d9 
- 00017211  0x00003d45 rtneq  0x00000001 
- 00017212  0x00003d46 jam  0x00000001 , 0x000046d9 
- 00017213  0x00003d47 rtn 
- 00017214  0x00003d4a call  0x00004343 
- 00017215  0x00003d4b fetch  0x00000001 , 0x000046d9 
- 00017216  0x00003d4c rtneq  0x00000000 
- 00017217  0x00003d4d jam  0x00000000 , 0x000046d9 
- 00017218  0x00003d4e branch  0x000043c0 
- 00017219  0x00003d51 fetch  0x00000001 , 0x000046d8 
- 00017220  0x00003d52 rtn  0x00000034 
- 00017221  0x00003d53 pincrease  0xffffffff 
- 00017222  0x00003d54 store  0x00000001 , 0x000046d8 
- 00017223  0x00003d55 nrtn  0x00000034 
- 00017224  0x00003d56 branch  0x00004370 
- 00017225  0x00003d59 fetch  0x00000001 , 0x000046ed 
- 00017226  0x00003d5a rtneq  0x000000ff 
- 00017227  0x00003d5b fetcht  0x00000001 , 0x000046ed 
- 00017228  0x00003d5c call  0x0000681d 
- 00017229  0x00003d5d branch  0x00004354 , 0x00000001 
- 00017230  0x00003d5f fetch  0x00000001 , 0x000046d9 
- 00017231  0x00003d60 rtneq  0x00000001 
- 00017232  0x00003d61 jam  0x00000001 , 0x000046d9 
- 00017233  0x00003d62 fetch  0x00000004 , 0x000046d3 
- 00017234  0x00003d63 rtnbit1  0x00000006 
- 00017235  0x00003d64 branch  0x00004370 
- 00017236  0x00003d67 fetch  0x00000001 , 0x000046d9 
- 00017237  0x00003d68 rtneq  0x00000000 
- 00017238  0x00003d69 jam  0x00000000 , 0x000046d9 
- 00017239  0x00003d6a arg  0x00000006 , 0x00000007 
- 00017240  0x00003d6b branch  0x000043d2 
- 00017241  0x00003d70 fetch  0x00000001 , 0x00000004 , 0x000046d3 
- 00017242  0x00003d71 rtnbit0  0x00000006 
- 00017243  0x00003d72 fetch  0x00000001 , 0x00004720 
- 00017244  0x00003d73 beq  0x00000001 , 0x00004369 
- 00017245  0x00003d74 beq  0x00000002 , 0x0000436c 
- 00017246  0x00003d75 rtn 
- 00017247  0x00003d77 fetch  0x00000001 , 0x00000004 , 0x000046d3 
- 00017248  0x00003d78 rtnbit0  0x00000006 
- 00017249  0x00003d79 fetcht  0x00000001 , 0x000046ed 
- 00017250  0x00003d7a call  0x0000681d 
- 00017251  0x00003d7b branch  0x00004366 , 0x00000001 
- 00017252  0x00003d7d jam  0x00000001 , 0x00004720 
- 00017253  0x00003d7e rtn 
- 00017254  0x00003d80 fetch  0x00000001 , 0x00004703 
- 00017255  0x00003d81 store  0x00000001 , 0x00004720 
- 00017256  0x00003d82 rtn 
- 00017257  0x00003d84 fetcht  0x00000001 , 0x000046ed 
- 00017258  0x00003d85 nbranch  0x00004370 , 0x00000001 
- 00017259  0x00003d86 rtn 
- 00017260  0x00003d88 fetcht  0x00000001 , 0x000046ed 
- 00017261  0x00003d89 call  0x0000681d 
- 00017262  0x00003d8a branch  0x00004354 , 0x00000001 
- 00017263  0x00003d8b rtn 
- 00017264  0x00003d91 fetcht  0x00000001 , 0x00004720 
- 00017265  0x00003d92 increase  0x00000001 , 0x00000002 
- 00017266  0x00003d93 fetch  0x00000001 , 0x000046d2 
- 00017267  0x00003d94 isub  0x00000002 , 0x0000003e 
- 00017268  0x00003d95 ncall  0x000043cc , 0x00000002 
- 00017269  0x00003d96 storet  0x00000001 , 0x00004720 
- 00017270  0x00003d97 jam  0x00000000 , 0x000041bd 
- 00017271  0x00003d98 call  0x0000437a 
- 00017272  0x00003d99 call  0x000043c0 
- 00017273  0x00003d9b branch  0x0000437e 
- 00017274  0x00003d9e arg  0x00000001 , 0x00000002 
- 00017275  0x00003d9f arg  0x00004720 , 0x00000011 
- 00017276  0x00003da0 arg  0x00000000 , 0x00000012 
- 00017277  0x00003da1 branch  0x00006606 
- 00017278  0x00003da4 call  0x00004381 
- 00017279  0x00003da5 call  0x000043c2 
- 00017280  0x00003da6 branch  0x000041d7 
- 00017281  0x00003da8 fetch  0x00000002 , 0x00004682 
- 00017282  0x00003da9 bbit1  0x00000007 , 0x00004392 
- 00017283  0x00003daa bbit1  0x00000009 , 0x00003402 
- 00017284  0x00003dab bbit1  0x00000000 , 0x000033e9 
- 00017285  0x00003dac branch  0x000042ca 
- 00017286  0x00003daf bpatch  0x000000ed , 0x0000401d 
- 00017287  0x00003db0 setarg  0x00000000 
- 00017288  0x00003db1 store  0x00000002 , 0x000046b0 
- 00017289  0x00003db2 fetch  0x00000002 , 0x00004682 
- 00017290  0x00003db3 bbit1  0x00000009 , 0x00003402 
- 00017291  0x00003db4 fetch  0x00000002 , 0x00004682 
- 00017292  0x00003db5 bbit1  0x00000000 , 0x000033e9 
- 00017293  0x00003db6 rtn 
- 00017294  0x00003db9 setarg  0x00000001 
- 00017295  0x00003dba store  0x00000006 , 0x00000040 
- 00017296  0x00003dbb jam  0x00000033 , 0x00000185 
- 00017297  0x00003dbc branch  0x000042df 
- 00017298  0x00003dc0 call  0x000043c4 
- 00017299  0x00003dc1 branch  0x00007e2f 
- 00017300  0x00003dc4 fetch  0x00000001 , 0x000046ec 
- 00017301  0x00003dc5 rtneq  0x000000ff 
- 00017302  0x00003dc6 fetcht  0x00000001 , 0x000046ec 
- 00017303  0x00003dc7 call  0x0000681d 
- 00017304  0x00003dc8 branch  0x0000439f , 0x00000001 
- 00017305  0x00003dca fetch  0x00000001 , 0x00004685 
- 00017306  0x00003dcb store  0x00000001 , 0x000046da 
- 00017307  0x00003dcc fetch  0x00000001 , 0x000046db 
- 00017308  0x00003dcd rtneq  0x00000001 
- 00017309  0x00003dce jam  0x00000001 , 0x000046db 
- 00017310  0x00003dcf branch  0x000043ca 
- 00017311  0x00003dd1 call  0x000043b5 
- 00017312  0x00003dd2 fetch  0x00000001 , 0x000046db 
- 00017313  0x00003dd3 rtneq  0x00000000 
- 00017314  0x00003dd4 jam  0x00000000 , 0x000046db 
- 00017315  0x00003dd5 call  0x00007e2f 
- 00017316  0x00003dd6 branch  0x000043c8 
- 00017317  0x00003dda fetch  0x00000001 , 0x000046f5 
- 00017318  0x00003ddb bbit1  0x00000004 , 0x00004394 
- 00017319  0x00003ddd call  0x00004083 
- 00017320  0x00003dde beq  0x00000007 , 0x000043af 
- 00017321  0x00003de0 fetch  0x00000001 , 0x00004685 
- 00017322  0x00003de1 store  0x00000001 , 0x000046da 
- 00017323  0x00003de2 fetch  0x00000001 , 0x000046db 
- 00017324  0x00003de3 rtneq  0x00000001 
- 00017325  0x00003de4 jam  0x00000001 , 0x000046db 
- 00017326  0x00003de5 branch  0x000043ca 
- 00017327  0x00003de9 call  0x000043b5 
- 00017328  0x00003dea fetch  0x00000001 , 0x000046db 
- 00017329  0x00003deb rtneq  0x00000000 
- 00017330  0x00003dec jam  0x00000000 , 0x000046db 
- 00017331  0x00003ded call  0x00007e2f 
- 00017332  0x00003dee branch  0x000043c8 
- 00017333  0x00003df1 arg  0x000046da , 0x00000013 
- 00017334  0x00003df2 arg  0x000043b8 , 0x00000012 
- 00017335  0x00003df3 branch  0x0000336d 
- 00017336  0x00003df6 arg  0x00000006 , 0x00000007 
- 00017337  0x00003df7 call  0x000043ce 
- 00017338  0x00003df8 call  0x00003357 
- 00017339  0x00003df9 branch  0x0000426c 
- 00017340  0x00003dfd arg  0x00000001 , 0x00000007 
- 00017341  0x00003dfe branch  0x000043ce 
- 00017342  0x00003e00 arg  0x00000001 , 0x00000007 
- 00017343  0x00003e01 branch  0x000043d2 
- 00017344  0x00003e03 arg  0x00000000 , 0x00000007 
- 00017345  0x00003e04 branch  0x000043ce 
- 00017346  0x00003e06 arg  0x00000000 , 0x00000007 
- 00017347  0x00003e07 branch  0x000043d2 
- 00017348  0x00003e09 arg  0x00000002 , 0x00000007 
- 00017349  0x00003e0a branch  0x000043ce 
- 00017350  0x00003e0c arg  0x00000002 , 0x00000007 
- 00017351  0x00003e0d branch  0x000043d2 
- 00017352  0x00003e0f arg  0x00000005 , 0x00000007 
- 00017353  0x00003e10 branch  0x000043ce 
- 00017354  0x00003e12 arg  0x00000005 , 0x00000007 
- 00017355  0x00003e13 branch  0x000043d2 
- 00017356  0x00003e18 arg  0x00000001 , 0x00000002 
- 00017357  0x00003e19 rtn 
- 00017358  0x00003e1c fetch  0x00000004 , 0x000046d3 
- 00017359  0x00003e1d qset1  0x0000003f 
- 00017360  0x00003e1e store  0x00000004 , 0x000046d3 
- 00017361  0x00003e1f rtn 
- 00017362  0x00003e22 fetch  0x00000004 , 0x000046d3 
- 00017363  0x00003e23 qset0  0x0000003f 
- 00017364  0x00003e24 store  0x00000004 , 0x000046d3 
- 00017365  0x00003e25 rtn 
- 00017366  0x00003e28 fetch  0x00000004 , 0x000046d3 
- 00017367  0x00003e29 rtnbit0  0x0000001a 
- 00017368  0x00003e2a fetch  0x00000001 , 0x000046ce 
- 00017369  0x00003e2b increase  0x00000001 , 0x0000003f 
- 00017370  0x00003e2c store  0x00000001 , 0x000046ce 
- 00017371  0x00003e2d sub  0x0000003f , 0x0000000a , 0x0000003e 
- 00017372  0x00003e2e rtn  0x00000002 
- 00017373  0x00003e2f jam  0x00000000 , 0x000046ce 
- 00017374  0x00003e30 call  0x000068eb 
- 00017375  0x00003e31 call  0x00006908 
- 00017376  0x00003e32 store  0x00000002 , 0x0000470f 
- 00017377  0x00003e33 arg  0x00004709 , 0x00000011 
- 00017378  0x00003e34 call  0x00006930 
- 00017379  0x00003e35 fetch  0x00000001 , 0x00004231 
- 00017380  0x00003e36 bbit1  0x00000001 , 0x000044a0 
- 00017381  0x00003e37 bbit0  0x00000000 , 0x000043e9 
- 00017382  0x00003e38 branch  0x000043e7 
- 00017383  0x00003e3a arg  0x00000004 , 0x00000007 
- 00017384  0x00003e3b branch  0x000043ce 
- 00017385  0x00003e3d arg  0x00000004 , 0x00000007 
- 00017386  0x00003e3e branch  0x000043d2 
- 00017387  0x00003e41 fetch  0x00000004 , 0x000046d3 
- 00017388  0x00003e42 rtnbit0  0x00000004 
- 00017389  0x00003e43 fetch  0x00000001 , 0x000046ef 
- 00017390  0x00003e44 store  0x00000001 , 0x00004715 
- 00017391  0x00003e45 fetch  0x00000001 , 0x000046cf 
- 00017392  0x00003e46 pincrease  0x00000001 
- 00017393  0x00003e47 store  0x00000001 , 0x000046cf 
- 00017394  0x00003e48 sub  0x0000003f , 0x00000014 , 0x0000003e 
- 00017395  0x00003e49 ncall  0x000043f9 , 0x00000002 
- 00017396  0x00003e4a beq  0x00000002 , 0x000043fb 
- 00017397  0x00003e4b beq  0x00000004 , 0x000043fe 
- 00017398  0x00003e4c beq  0x00000006 , 0x000043fb 
- 00017399  0x00003e4d beq  0x00000008 , 0x000043fe 
- 00017400  0x00003e4e rtn 
- 00017401  0x00003e50 jam  0x00000001 , 0x000046cf 
- 00017402  0x00003e51 branch  0x000043fe 
- 00017403  0x00003e53 arg  0x00000000 , 0x00000011 
- 00017404  0x00003e54 jam  0x00000002 , 0x00004713 
- 00017405  0x00003e55 branch  0x00007d14 
- 00017406  0x00003e57 arg  0x00000000 , 0x00000011 
- 00017407  0x00003e58 jam  0x00000002 , 0x00004713 
- 00017408  0x00003e59 branch  0x00007d19 
- 00017409  0x00003e5c call  0x00003f97 
- 00017410  0x00003e5d nrtn  0x00000028 
- 00017411  0x00003e5e arg  0x00000007 , 0x00000011 
- 00017412  0x00003e5f arg  0x0000469a , 0x00000012 
- 00017413  0x00003e60 rtn 
- 00017414  0x00003e63 fetch  0x00000001 , 0x0000478b 
- 00017415  0x00003e64 rtn  0x00000034 
- 00017416  0x00003e66 fetcht  0x00000001 , 0x000046e7 
- 00017417  0x00003e67 call  0x0000681d 
- 00017418  0x00003e68 call  0x00004410 , 0x00000001 
- 00017419  0x00003e69 fetch  0x00000001 , 0x00004704 
- 00017420  0x00003e6a nrtn  0x00000034 
- 00017421  0x00003e6b call  0x00004083 
- 00017422  0x00003e6c nrtn  0x00000034 
- 00017423  0x00003e6d branch  0x00002d83 
- 00017424  0x00003e70 fetch  0x00000001 , 0x000046e7 
- 00017425  0x00003e71 rtneq  0x000000ff 
- 00017426  0x00003e72 jam  0x0000000a , 0x00004704 
- 00017427  0x00003e73 rtn 
- 00017428  0x00003e77 call  0x00004423 
- 00017429  0x00003e78 fetch  0x00000002 , 0x00004778 
- 00017430  0x00003e79 arg  0x0000aa55 , 0x00000002 
- 00017431  0x00003e7a isub  0x00000002 , 0x0000003e 
- 00017432  0x00003e7b branch  0x0000442b , 0x00000005 
- 00017433  0x00003e7c storet  0x00000002 , 0x00004778 
- 00017434  0x00003e7d call  0x0000441c 
- 00017435  0x00003e7e branch  0x00004435 
- 00017436  0x00003e80 fetch  0x00000006 , 0x000044a0 
- 00017437  0x00003e81 store  0x00000006 , 0x00004738 
- 00017438  0x00003e82 add  0x0000003f , 0x00000100 , 0x0000003f 
- 00017439  0x00003e83 store  0x00000006 , 0x00004755 
- 00017440  0x00003e84 add  0x0000003f , 0x00000100 , 0x0000003f 
- 00017441  0x00003e85 store  0x00000006 , 0x00004772 
- 00017442  0x00003e86 rtn 
- 00017443  0x00003e8a setarg  0x00004778 
- 00017444  0x00003e8b arg  0x00004720 , 0x00000002 
- 00017445  0x00003e8c isub  0x00000002 , 0x00000002 
- 00017446  0x00003e8d fetch  0x00000003 , 0x00004700 
- 00017447  0x00003e8e iadd  0x00000002 , 0x0000003f 
- 00017448  0x00003e8f arg  0x00000002 , 0x00000002 
- 00017449  0x00003e90 arg  0x00004778 , 0x00000011 
- 00017450  0x00003e91 branch  0x00006562 
- 00017451  0x00003e95 setarg  0x0000477f 
- 00017452  0x00003e96 arg  0x00004720 , 0x00000002 
- 00017453  0x00003e97 isub  0x00000002 , 0x00000002 
- 00017454  0x00003e98 fetch  0x00000003 , 0x00004700 
- 00017455  0x00003e99 arg  0x00004720 , 0x00000011 
- 00017456  0x00003e9a call  0x00006562 
- 00017457  0x00003e9b call  0x0000431a 
- 00017458  0x00003e9c fetch  0x00000004 , 0x0000477b 
- 00017459  0x00003e9d call  0x00002c7a 
- 00017460  0x00003e9e branch  0x0000322c 
- 00017461  0x00003ea1 setarg  0x0000477f 
- 00017462  0x00003ea2 arg  0x00004720 , 0x00000002 
- 00017463  0x00003ea3 isub  0x00000002 , 0x00000002 
- 00017464  0x00003ea4 arg  0x00004720 , 0x00000011 
- 00017465  0x00003ea5 fetch  0x00000003 , 0x00004700 
- 00017466  0x00003ea6 branch  0x00006514 
- 00017467  0x00003ea9 arg  0x00000001 , 0x00000002 
- 00017468  0x00003eaa arg  0x0000477a , 0x00000011 
- 00017469  0x00003eab arg  0x0000005a , 0x00000012 
- 00017470  0x00003eac branch  0x000065d1 
- 00017471  0x00003eaf arg  0x00000001 , 0x00000002 
- 00017472  0x00003eb0 arg  0x0000477a , 0x00000011 
- 00017473  0x00003eb1 arg  0x0000005a , 0x00000012 
- 00017474  0x00003eb2 branch  0x000065df 
- 00017475  0x00003eb5 rtnmark1  0x00000026 
- 00017476  0x00003eb6 fetch  0x00000004 , 0x000046d3 
- 00017477  0x00003eb7 rtnbit0  0x00000016 
- 00017478  0x00003eb8 fetch  0x00000001 , 0x00004705 
- 00017479  0x00003eb9 pincrease  0x00000001 
- 00017480  0x00003eba and  0x0000003f , 0x00000007 , 0x0000003f 
- 00017481  0x00003ebb store  0x00000001 , 0x00004705 
- 00017482  0x00003ebc rtnne  0x00000007 
- 00017483  0x00003ebd fetch  0x00000002 , 0x00004682 
- 00017484  0x00003ebe bbit1  0x00000000 , 0x0000444f 
- 00017485  0x00003ebf bbit1  0x00000009 , 0x0000444f 
- 00017486  0x00003ec0 rtn 
- 00017487  0x00003ec6 bpatch  0x000000ee , 0x0000401d 
- 00017488  0x00003ec7 fetch  0x00000001 , 0x00004706 
- 00017489  0x00003ec8 nrtn  0x00000034 
- 00017490  0x00003ec9 fetch  0x00000004 , 0x000046d3 
- 00017491  0x00003eca rtnbit0  0x00000008 
- 00017492  0x00003ecb fetch  0x00000001 , 0x000046a5 
- 00017493  0x00003ecc call  0x000063fb 
- 00017494  0x00003ecd store  0x00000001 , 0x000046a6 
- 00017495  0x00003ece sub  0x0000003f , 0x00000010 , 0x0000003e 
- 00017496  0x00003ecf branch  0x0000445b , 0x00000002 
- 00017497  0x00003ed0 jam  0x00000000 , 0x00004706 
- 00017498  0x00003ed1 rtn 
- 00017499  0x00003ed4 jam  0x0000001e , 0x00004706 
- 00017500  0x00003ed5 rtn 
- 00017501  0x00003ed7 arg  0x00004706 , 0x00000013 
- 00017502  0x00003ed8 arg  0x00004460 , 0x00000012 
- 00017503  0x00003ed9 branch  0x0000336d 
- 00017504  0x00003edc fetch  0x00000001 , 0x000046a5 
- 00017505  0x00003edd call  0x00006414 
- 00017506  0x00003ede sub  0x0000003f , 0x00000010 , 0x0000003e 
- 00017507  0x00003edf nrtn  0x00000002 
- 00017508  0x00003ee0 fetch  0x00000004 , 0x000046d3 
- 00017509  0x00003ee1 rtnbit0  0x00000008 
- 00017510  0x00003ee2 arg  0x00000008 , 0x00000007 
- 00017511  0x00003ee3 call  0x000043d2 
- 00017512  0x00003ee4 jam  0x00000000 , 0x00004172 
- 00017513  0x00003ee5 jam  0x0000001e , 0x000046c4 
- 00017514  0x00003ee6 call  0x00004482 
- 00017515  0x00003ee7 fetch  0x00000004 , 0x000046d3 
- 00017516  0x00003ee8 bbit1  0x00000015 , 0x00004471 
- 00017517  0x00003eea fetch  0x00000001 , 0x00004720 
- 00017518  0x00003eeb beq  0x00000001 , 0x00004489 
- 00017519  0x00003eec beq  0x00000002 , 0x00004476 
- 00017520  0x00003eed rtn 
- 00017521  0x00003eef fetch  0x00000001 , 0x00004720 
- 00017522  0x00003ef0 beq  0x00000001 , 0x00004489 
- 00017523  0x00003ef1 beq  0x00000002 , 0x0000448c 
- 00017524  0x00003ef2 beq  0x00000003 , 0x0000448f 
- 00017525  0x00003ef3 rtn 
- 00017526  0x00003ef6 fetch  0x00000001 , 0x000046f0 
- 00017527  0x00003ef7 branch  0x0000428f 
- 00017528  0x00003efc jam  0x00000020 , 0x00004172 
- 00017529  0x00003efd branch  0x00004482 
- 00017530  0x00003f02 fetch  0x00000001 , 0x000046f0 
- 00017531  0x00003f03 rtneq  0x000000ff 
- 00017532  0x00003f04 store  0x00000001 , 0x00004715 
- 00017533  0x00003f05 branch  0x00004296 
- 00017534  0x00003f08 fetch  0x00000001 , 0x000046f1 
- 00017535  0x00003f09 rtneq  0x000000ff 
- 00017536  0x00003f0a store  0x00000001 , 0x00004715 
- 00017537  0x00003f0b branch  0x00004296 
- 00017538  0x00003f0e call  0x00004296 
- 00017539  0x00003f0f call  0x0000447a 
- 00017540  0x00003f10 call  0x0000447e 
- 00017541  0x00003f12 fetch  0x00000001 , 0x000046f2 
- 00017542  0x00003f13 rtneq  0x000000ff 
- 00017543  0x00003f14 store  0x00000001 , 0x00004715 
- 00017544  0x00003f15 branch  0x00004296 
- 00017545  0x00003f18 fetch  0x00000001 , 0x000046f0 
- 00017546  0x00003f19 store  0x00000001 , 0x00004715 
- 00017547  0x00003f1a branch  0x00004298 
- 00017548  0x00003f1c fetch  0x00000001 , 0x000046f1 
- 00017549  0x00003f1d store  0x00000001 , 0x00004715 
- 00017550  0x00003f1e branch  0x00004298 
- 00017551  0x00003f20 fetch  0x00000001 , 0x000046f2 
- 00017552  0x00003f21 store  0x00000001 , 0x00004715 
- 00017553  0x00003f22 branch  0x00004298 
- 00017554  0x00003f27 bpatch  0x000000ef , 0x0000401d 
- 00017555  0x00003f28 fetch  0x00000001 , 0x0000471e 
- 00017556  0x00003f29 increase  0xffffffff , 0x0000003f 
- 00017557  0x00003f2a store  0x00000001 , 0x0000471e 
- 00017558  0x00003f2b fetcht  0x00000001 , 0x00004720 
- 00017559  0x00003f2c increase  0x00000001 , 0x00000002 
- 00017560  0x00003f2d fetch  0x00000001 , 0x000046d2 
- 00017561  0x00003f2e isub  0x00000002 , 0x0000003e 
- 00017562  0x00003f2f ncall  0x000043cc , 0x00000002 
- 00017563  0x00003f30 storet  0x00000001 , 0x00004720 
- 00017564  0x00003f31 jam  0x00000000 , 0x000041bd 
- 00017565  0x00003f32 call  0x0000437a 
- 00017566  0x00003f33 call  0x000042fb 
- 00017567  0x00003f34 branch  0x000042a2 
- 00017568  0x00003f37 call  0x00004482 
- 00017569  0x00003f38 setarg  0x00000000 
- 00017570  0x00003f39 store  0x00000008 , 0x000000a1 
- 00017571  0x00003f3a branch  0x00002b1f 
- 00017572  0x00003f46 rtn  0x0000002b 
- 00017573  0x00003f47 hfetch  0x00000001 , 0x00008081 
- 00017574  0x00003f48 and_into  0x000000f0 , 0x0000003f 
- 00017575  0x00003f49 hstore  0x00000001 , 0x00008081 
- 00017576  0x00003f4a call  0x00006948 
- 00017577  0x00003f4b setarg  0x000044e6 
- 00017578  0x00003f4c store  0x00000002 , 0x000041eb 
- 00017579  0x00003f4e setarg  0x000044e9 
- 00017580  0x00003f4f store  0x00000002 , 0x000041ed 
- 00017581  0x00003f51 setarg  0x000044ef 
- 00017582  0x00003f52 store  0x00000002 , 0x000041f3 
- 00017583  0x00003f54 setarg  0x000044f2 
- 00017584  0x00003f55 store  0x00000002 , 0x000041f5 
- 00017585  0x00003f57 setarg  0x000033d0 
- 00017586  0x00003f58 store  0x00000002 , 0x000041e9 
- 00017587  0x00003f5a call  0x00002c7a 
- 00017588  0x00003f5b setarg  0x000045c2 
- 00017589  0x00003f5c add  0x00000013 , 0x000000d8 , 0x00000005 
- 00017590  0x00003f5d istore  0x00000002 , 0x00000005 
- 00017591  0x00003f5f setarg  0x000044ea 
- 00017592  0x00003f60 add  0x00000013 , 0x000000da , 0x00000005 
- 00017593  0x00003f61 istore  0x00000002 , 0x00000005 
- 00017594  0x00003f63 setarg  0x000044e9 
- 00017595  0x00003f64 add  0x00000013 , 0x000000dc , 0x00000005 
- 00017596  0x00003f65 istore  0x00000002 , 0x00000005 
- 00017597  0x00003f67 setarg  0x0000450e 
- 00017598  0x00003f68 store  0x00000002 , 0x000041fd 
- 00017599  0x00003f6a setarg  0x000044da 
- 00017600  0x00003f6b store  0x00000002 , 0x0000475b 
- 00017601  0x00003f6d setarg  0x000044d6 
- 00017602  0x00003f6e store  0x00000002 , 0x0000475f 
- 00017603  0x00003f70 setarg  0x00004560 
- 00017604  0x00003f71 store  0x00000002 , 0x0000470f 
- 00017605  0x00003f73 bpatch  0x000000f0 , 0x0000401e 
- 00017606  0x00003f74 call  0x000044e2 
- 00017607  0x00003f75 call  0x00007e38 
- 00017608  0x00003f76 jam  0x00000002 , 0x00004172 
- 00017609  0x00003f77 fetch  0x00000001 , 0x0000472b 
- 00017610  0x00003f78 store  0x00000001 , 0x0000469a 
- 00017611  0x00003f79 beq  0x00000000 , 0x000044d5 
- 00017612  0x00003f7a fetch  0x00000001 , 0x0000472c 
- 00017613  0x00003f7b store  0x00000001 , 0x00004686 
- 00017614  0x00003f7d call  0x000044db 
- 00017615  0x00003f7e call  0x00007cd3 
- 00017616  0x00003f7f call  0x00007cdd 
- 00017617  0x00003f80 jam  0x00000001 , 0x00004757 
- 00017618  0x00003f81 fetch  0x00000002 , 0x00004682 
- 00017619  0x00003f82 rtnbit1  0x0000000c 
- 00017620  0x00003f83 branch  0x0000340a 
- 00017621  0x00003f88 jam  0x00000002 , 0x00004757 
- 00017622  0x00003f8a call  0x000044db 
- 00017623  0x00003f8c arg  0x00000000 , 0x00000011 
- 00017624  0x00003f8d call  0x00007d1e 
- 00017625  0x00003f8f branch  0x00002ee4 
- 00017626  0x00003f92 branch  0x000044db 
- 00017627  0x00003f95 bpatch  0x000000f1 , 0x0000401e 
- 00017628  0x00003f96 fetch  0x00000001 , 0x00004729 
- 00017629  0x00003f97 bne  0x000000ff , 0x000044e0 
- 00017630  0x00003f99 fetcht  0x00000001 , 0x00004706 
- 00017631  0x00003f9a branch  0x0000680e 
- 00017632  0x00003f9c store  0x00000001 , 0x00004706 
- 00017633  0x00003f9d branch  0x000044de 
- 00017634  0x00003fa1 call  0x00002c9d 
- 00017635  0x00003fa2 fetch  0x00000002 , 0x00004753 
- 00017636  0x00003fa3 store  0x00000002 , 0x00004755 
- 00017637  0x00003fa4 branch  0x00004515 
- 00017638  0x00003fac call  0x00006835 
- 00017639  0x00003fad call  0x000044e9 
- 00017640  0x00003fae branch  0x0000340a 
- 00017641  0x00003fb1 branch  0x0000696c 
- 00017642  0x00003fb4 fetch  0x00000001 , 0x00004765 
- 00017643  0x00003fb5 rtn  0x00000034 
- 00017644  0x00003fb7 branch  0x00002d83 
- 00017645  0x00003fba rtn 
- 00017646  0x00003fbd branch  0x00006978 
- 00017647  0x00003fc0 call  0x00004544 
- 00017648  0x00003fc1 call  0x00004503 
- 00017649  0x00003fc2 branch  0x000044ee 
- 00017650  0x00003fc5 copy  0x00000013 , 0x0000003f 
- 00017651  0x00003fc6 beq  0x0000002d , 0x00003431 
- 00017652  0x00003fc7 beq  0x00000010 , 0x0000341a 
- 00017653  0x00003fc8 beq  0x00000039 , 0x000044fb 
- 00017654  0x00003fc9 beq  0x0000003c , 0x000044ff 
- 00017655  0x00003fca beq  0x0000003a , 0x000044f9 
- 00017656  0x00003fcb rtn 
- 00017657  0x00003fce jam  0x00000001 , 0x00004765 
- 00017658  0x00003fcf rtn 
- 00017659  0x00003fd2 jam  0x00000001 , 0x00004765 
- 00017660  0x00003fd3 jam  0x00000001 , 0x00004763 
- 00017661  0x00003fd4 jam  0x00000001 , 0x00004764 
- 00017662  0x00003fd5 rtn 
- 00017663  0x00003fd8 jam  0x00000001 , 0x00004765 
- 00017664  0x00003fd9 jam  0x00000001 , 0x00004763 
- 00017665  0x00003fda jam  0x00000001 , 0x00004764 
- 00017666  0x00003fdb rtn 
- 00017667  0x00003fde fetch  0x00000001 , 0x00004763 
- 00017668  0x00003fdf rtneq  0x00000000 
- 00017669  0x00003fe0 fetch  0x00000001 , 0x00004762 
- 00017670  0x00003fe1 rtneq  0x00000001 
- 00017671  0x00003fe2 jam  0x00000001 , 0x00004762 
- 00017672  0x00003fe4 arg  0x00000000 , 0x00000011 
- 00017673  0x00003fe5 branch  0x00007d19 
- 00017674  0x00003fe7 arg  0x00000000 , 0x00000011 
- 00017675  0x00003fe8 call  0x00007d19 
- 00017676  0x00003fe9 call  0x000044db 
- 00017677  0x00003fea branch  0x0000340a 
- 00017678  0x00003fed call  0x0000337b 
- 00017679  0x00003fee branch  0x00004510 
- 00017680  0x00003ff1 fetch  0x00000001 , 0x0000472d 
- 00017681  0x00003ff2 rtn  0x00000034 
- 00017682  0x00003ff3 arg  0x00004755 , 0x00000013 
- 00017683  0x00003ff4 arg  0x0000450a , 0x00000012 
- 00017684  0x00003ff5 branch  0x00003374 
- 00017685  0x00003ff9 call  0x0000451a 
- 00017686  0x00003ffa storet  0x00000002 , 0x0000471a 
- 00017687  0x00003ffb call  0x0000451f 
- 00017688  0x00003ffc storet  0x00000002 , 0x0000471c 
- 00017689  0x00003ffd rtn 
- 00017690  0x00004000 fetch  0x00000002 , 0x0000471a 
- 00017691  0x00004001 store  0x00000002 , 0x0000471e 
- 00017692  0x00004002 call  0x00004540 
- 00017693  0x00004003 call  0x00004525 
- 00017694  0x00004004 store  0x00000001 , 0x00004724 
- 00017695  0x00004006 fetch  0x00000002 , 0x0000471c 
- 00017696  0x00004007 store  0x00000002 , 0x0000471e 
- 00017697  0x00004008 call  0x00004542 
- 00017698  0x00004009 call  0x00004525 
- 00017699  0x0000400a store  0x00000001 , 0x00004725 
- 00017700  0x0000400b rtn 
- 00017701  0x0000400d fetch  0x00000002 , 0x00004720 
- 00017702  0x0000400e copy  0x0000003f , 0x00000011 
- 00017703  0x0000400f fetch  0x00000002 , 0x0000471e 
- 00017704  0x00004010 call  0x0000452e 
- 00017705  0x00004011 fetch  0x00000001 , 0x00004719 
- 00017706  0x00004012 nbranch  0x00004537 , 0x00000034 
- 00017707  0x00004013 nrtn  0x00000002 
- 00017708  0x00004014 fetcht  0x00000002 , 0x0000471e 
- 00017709  0x00004015 rtn 
- 00017710  0x00004017 isub  0x00000002 , 0x0000003f 
- 00017711  0x00004018 branch  0x00004534 , 0x00000002 
- 00017712  0x00004019 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00017713  0x0000401a jam  0x00000001 , 0x00004718 
- 00017714  0x0000401b isub  0x00000011 , 0x0000003e 
- 00017715  0x0000401c rtn 
- 00017716  0x0000401e jam  0x00000000 , 0x00004718 
- 00017717  0x0000401f isub  0x00000011 , 0x0000003e 
- 00017718  0x00004020 rtn 
- 00017719  0x00004022 nbranch  0x0000453e , 0x00000002 
- 00017720  0x00004023 fetch  0x00000001 , 0x00004718 
- 00017721  0x00004024 nbranch  0x0000453c , 0x00000034 
- 00017722  0x00004026 setarg  0x00000001 
- 00017723  0x00004027 rtn 
- 00017724  0x00004029 setarg  0x00000002 
- 00017725  0x0000402a rtn 
- 00017726  0x0000402c setarg  0x00000000 
- 00017727  0x0000402d rtn 
- 00017728  0x0000402f jam  0x00000033 , 0x0000422e 
- 00017729  0x00004030 branch  0x000068eb 
- 00017730  0x00004032 jam  0x00000034 , 0x0000422e 
- 00017731  0x00004033 branch  0x000068eb 
- 00017732  0x00004037 fetch  0x00000001 , 0x0000472a 
- 00017733  0x00004038 rtnne  0x00000001 
- 00017734  0x0000403a bpatch  0x000000f2 , 0x0000401e 
- 00017735  0x0000403b jam  0x00000001 , 0x00004719 
- 00017736  0x0000403c call  0x0000451a 
- 00017737  0x0000403d fetch  0x00000002 , 0x00004724 
- 00017738  0x0000403e fetcht  0x00000002 , 0x00004722 
- 00017739  0x0000403f isub  0x00000002 , 0x0000003e 
- 00017740  0x00004040 rtn  0x00000005 
- 00017741  0x00004041 store  0x00000002 , 0x00004722 
- 00017742  0x00004042 call  0x00004550 
- 00017743  0x00004043 branch  0x00004554 
- 00017744  0x00004046 fetch  0x00000001 , 0x00004724 
- 00017745  0x00004047 branch  0x0000455a , 0x00000034 
- 00017746  0x00004048 increase  0xffffffff , 0x0000003f 
- 00017747  0x00004049 branch  0x00004557 
- 00017748  0x0000404b fetch  0x00000001 , 0x00004725 
- 00017749  0x0000404c branch  0x0000455d , 0x00000034 
- 00017750  0x0000404d increase  0x00000001 , 0x0000003f 
- 00017751  0x0000404f copy  0x0000003f , 0x00000007 
- 00017752  0x00004050 arg  0x00000001 , 0x00000011 
- 00017753  0x00004051 branch  0x00004560 
- 00017754  0x00004054 arg  0x00000000 , 0x00000007 
- 00017755  0x00004055 arg  0x00000000 , 0x00000011 
- 00017756  0x00004056 branch  0x00004560 
- 00017757  0x00004058 arg  0x00000002 , 0x00000007 
- 00017758  0x00004059 arg  0x00000000 , 0x00000011 
- 00017759  0x0000405a branch  0x00004560 
- 00017760  0x0000405d copy  0x00000011 , 0x0000003f 
- 00017761  0x0000405e store  0x00000001 , 0x00004761 
- 00017762  0x0000405f fetch  0x00000001 , 0x00004763 
- 00017763  0x00004060 beq  0x00000000 , 0x00002ee4 
- 00017764  0x00004061 fetch  0x00000002 , 0x00004753 
- 00017765  0x00004062 store  0x00000002 , 0x00004755 
- 00017766  0x00004063 fetch  0x00000001 , 0x00004761 
- 00017767  0x00004064 branch  0x00004580 , 0x00000034 
- 00017768  0x00004066 bpatch  0x000000f3 , 0x0000401e 
- 00017769  0x00004067 arg  0x00000000 , 0x00000011 
- 00017770  0x00004068 call  0x00007d14 
- 00017771  0x0000406a copy  0x00000007 , 0x0000003f 
- 00017772  0x0000406b beq  0x00000004 , 0x000045a3 
- 00017773  0x0000406c beq  0x00000005 , 0x000045a5 
- 00017774  0x0000406d beq  0x00000006 , 0x000045a7 
- 00017775  0x00004071 call  0x0000458b 
- 00017776  0x00004072 beq  0x00000000 , 0x00004574 
- 00017777  0x00004073 beq  0x00000002 , 0x0000457a 
- 00017778  0x00004074 beq  0x00000003 , 0x00004574 
- 00017779  0x00004075 rtn 
- 00017780  0x00004078 copy  0x00000007 , 0x0000003f 
- 00017781  0x00004079 beq  0x00000000 , 0x0000458f 
- 00017782  0x0000407a beq  0x00000001 , 0x00004591 
- 00017783  0x0000407b beq  0x00000002 , 0x00004593 
- 00017784  0x0000407c beq  0x00000003 , 0x00004595 
- 00017785  0x0000407d rtn 
- 00017786  0x00004080 copy  0x00000007 , 0x0000003f 
- 00017787  0x00004081 beq  0x00000000 , 0x00004597 
- 00017788  0x00004082 beq  0x00000001 , 0x0000459a 
- 00017789  0x00004083 beq  0x00000002 , 0x0000459d 
- 00017790  0x00004084 beq  0x00000003 , 0x000045a0 
- 00017791  0x00004085 rtn 
- 00017792  0x00004088 bpatch  0x000000f4 , 0x0000401e 
- 00017793  0x00004089 arg  0x00000000 , 0x00000011 
- 00017794  0x0000408a call  0x00007d19 
- 00017795  0x0000408c copy  0x00000007 , 0x0000003f 
- 00017796  0x0000408d beq  0x00000004 , 0x000045bc 
- 00017797  0x0000408e beq  0x00000005 , 0x000045bc 
- 00017798  0x00004092 call  0x0000458b 
- 00017799  0x00004093 beq  0x00000000 , 0x000045a9 
- 00017800  0x00004094 beq  0x00000002 , 0x000045af 
- 00017801  0x00004095 beq  0x00000003 , 0x000045a9 
- 00017802  0x00004096 rtn 
- 00017803  0x00004099 fetch  0x00000001 , 0x00004728 
- 00017804  0x0000409a fetcht  0x00000001 , 0x00004727 
- 00017805  0x0000409b ior  0x00000002 , 0x0000003f 
- 00017806  0x0000409c rtn 
- 00017807  0x000040a0 jam  0x00000001 , 0x00004734 
- 00017808  0x000040a1 branch  0x000045be 
- 00017809  0x000040a3 jam  0x00000002 , 0x00004734 
- 00017810  0x000040a4 branch  0x000045be 
- 00017811  0x000040a6 jam  0x00000001 , 0x00004736 
- 00017812  0x000040a7 branch  0x000045be 
- 00017813  0x000040a9 jam  0x00000002 , 0x00004736 
- 00017814  0x000040aa branch  0x000045be 
- 00017815  0x000040ae jam  0x00000001 , 0x00004734 
- 00017816  0x000040af jam  0x00000001 , 0x00004736 
- 00017817  0x000040b0 branch  0x000045be 
- 00017818  0x000040b2 jam  0x00000002 , 0x00004734 
- 00017819  0x000040b3 jam  0x00000002 , 0x00004736 
- 00017820  0x000040b4 branch  0x000045be 
- 00017821  0x000040b6 jam  0x00000002 , 0x00004734 
- 00017822  0x000040b7 jam  0x00000001 , 0x00004736 
- 00017823  0x000040b8 branch  0x000045be 
- 00017824  0x000040ba jam  0x00000001 , 0x00004734 
- 00017825  0x000040bb jam  0x00000002 , 0x00004736 
- 00017826  0x000040bc branch  0x000045be 
- 00017827  0x000040c0 jam  0x00000001 , 0x00004738 
- 00017828  0x000040c1 branch  0x000045be 
- 00017829  0x000040c3 jam  0x00000002 , 0x00004738 
- 00017830  0x000040c4 branch  0x000045be 
- 00017831  0x000040c7 jam  0x00000001 , 0x00004741 
- 00017832  0x000040c8 branch  0x000045c0 
- 00017833  0x000040cb copy  0x00000007 , 0x0000003f 
- 00017834  0x000040cc beq  0x00000000 , 0x000045b5 
- 00017835  0x000040cd beq  0x00000001 , 0x000045b5 
- 00017836  0x000040ce beq  0x00000002 , 0x000045b7 
- 00017837  0x000040cf beq  0x00000003 , 0x000045b7 
- 00017838  0x000040d0 rtn 
- 00017839  0x000040d3 copy  0x00000007 , 0x0000003f 
- 00017840  0x000040d4 beq  0x00000000 , 0x000045b9 
- 00017841  0x000040d5 beq  0x00000001 , 0x000045b9 
- 00017842  0x000040d6 beq  0x00000002 , 0x000045b9 
- 00017843  0x000040d7 beq  0x00000003 , 0x000045b9 
- 00017844  0x000040d8 rtn 
- 00017845  0x000040dc jam  0x00000000 , 0x00004734 
- 00017846  0x000040dd branch  0x000045be 
- 00017847  0x000040e0 jam  0x00000000 , 0x00004736 
- 00017848  0x000040e1 branch  0x000045be 
- 00017849  0x000040e7 jam  0x00000000 , 0x00004734 
- 00017850  0x000040e8 jam  0x00000000 , 0x00004736 
- 00017851  0x000040e9 branch  0x000045be 
- 00017852  0x000040ed jam  0x00000000 , 0x00004738 
- 00017853  0x000040ee branch  0x000045be 
- 00017854  0x000040f1 arg  0x0000472e , 0x00000011 
- 00017855  0x000040f2 branch  0x00007e3d 
- 00017856  0x000040f4 arg  0x0000473b , 0x00000011 
- 00017857  0x000040f5 branch  0x00007e3d 
- 00017858  0x000040f8 fetch  0x00000001 , 0x00004764 
- 00017859  0x000040f9 beq  0x00000001 , 0x000045cc 
- 00017860  0x000040fa arg  0x00004744 , 0x00000011 
- 00017861  0x000040fb call  0x00007e54 
- 00017862  0x000040fc nbranch  0x000045d1 , 0x00000028 
- 00017863  0x000040fe arg  0x00004744 , 0x00000006 
- 00017864  0x000040ff ifetch  0x00000001 , 0x00000006 
- 00017865  0x00004100 copy  0x0000003f , 0x00000011 
- 00017866  0x00004101 arg  0x00004745 , 0x00000012 
- 00017867  0x00004104 rtn 
- 00017868  0x00004107 jam  0x00000000 , 0x00004764 
- 00017869  0x00004108 enable  0x00000028 
- 00017870  0x00004109 arg  0x00000001 , 0x00000011 
- 00017871  0x0000410a arg  0x00004766 , 0x00000012 
- 00017872  0x0000410b rtn 
- 00017873  0x0000410e fetch  0x00000001 , 0x00004747 
- 00017874  0x0000410f beq  0x00000004 , 0x000045d5 
- 00017875  0x00004110 beq  0x00000005 , 0x000045d5 
- 00017876  0x00004111 rtn 
- 00017877  0x00004113 fetch  0x00000001 , 0x0000474a 
- 00017878  0x00004114 nbranch  0x000045dc , 0x00000034 
- 00017879  0x00004115 fetch  0x00000001 , 0x0000474c 
- 00017880  0x00004116 nbranch  0x000045dc , 0x00000034 
- 00017881  0x00004117 fetch  0x00000001 , 0x0000474e 
- 00017882  0x00004118 nbranch  0x000045dc , 0x00000034 
- 00017883  0x00004119 rtn 
- 00017884  0x0000411b enable  0x00000028 
- 00017885  0x0000411c branch  0x000045c7 
- 00017886  0x00004125 rtn  0x0000002b 
- 00017887  0x00004126 hfetch  0x00000001 , 0x00008081 
- 00017888  0x00004127 and_into  0x000000fc , 0x0000003f 
- 00017889  0x00004128 hstore  0x00000001 , 0x00008081 
- 00017890  0x00004129 setarg  0x000046b4 
- 00017891  0x0000412a store  0x00000002 , 0x000041eb 
- 00017892  0x0000412c setarg  0x000046b3 
- 00017893  0x0000412d store  0x00000002 , 0x000041ed 
- 00017894  0x0000412f setarg  0x0000340a 
- 00017895  0x00004130 store  0x00000002 , 0x000041f7 
- 00017896  0x00004132 setarg  0x000046b1 
- 00017897  0x00004133 store  0x00000002 , 0x000041f3 
- 00017898  0x00004135 setarg  0x00004612 
- 00017899  0x00004136 store  0x00000002 , 0x000041f5 
- 00017900  0x00004138 setarg  0x0000460c 
- 00017901  0x00004139 store  0x00000002 , 0x000041e9 
- 00017902  0x0000413b setarg  0x0000476a 
- 00017903  0x0000413c store  0x00000002 , 0x000041f9 
- 00017904  0x0000413e setarg  0x00004686 
- 00017905  0x0000413f store  0x00000002 , 0x000041fd 
- 00017906  0x00004141 setarg  0x00004729 
- 00017907  0x00004142 store  0x00000002 , 0x000046e7 
- 00017908  0x00004144 setarg  0x00004806 
- 00017909  0x00004145 store  0x00000002 , 0x000046e2 
- 00017910  0x00004146 setarg  0x00004807 
- 00017911  0x00004147 store  0x00000002 , 0x000046e4 
- 00017912  0x00004149 call  0x000057a3 
- 00017913  0x0000414a call  0x000047da 
- 00017914  0x0000414b call  0x00004788 
- 00017915  0x0000414c call  0x0000476d 
- 00017916  0x0000414d call  0x00006948 
- 00017917  0x0000414e call  0x0000477a 
- 00017918  0x0000414f call  0x00007e38 
- 00017919  0x00004150 call  0x00007d08 
- 00017920  0x00004151 call  0x00004793 
- 00017921  0x00004152 call  0x000047c7 
- 00017922  0x00004154 bpatch  0x000000f5 , 0x0000401e 
- 00017923  0x00004155 call  0x0000464f 
- 00017924  0x00004156 fetch  0x00000001 , 0x000046dd 
- 00017925  0x00004157 beq  0x00000000 , 0x00004609 
- 00017926  0x00004158 fetch  0x00000001 , 0x000046de 
- 00017927  0x00004159 store  0x00000001 , 0x00004686 
- 00017928  0x0000415a branch  0x0000480e 
- 00017929  0x0000415e jam  0x000000ff , 0x00004686 
- 00017930  0x0000415f jam  0x00000001 , 0x000046df 
- 00017931  0x00004160 branch  0x000046d9 
- 00017932  0x00004165 fetch  0x00000001 , 0x000046df 
- 00017933  0x00004166 beq  0x00000002 , 0x000033d0 
- 00017934  0x00004167 call  0x0000527e 
- 00017935  0x00004168 fetch  0x00000001 , 0x00004256 
- 00017936  0x00004169 nbranch  0x000033d0 , 0x00000034 
- 00017937  0x0000416a branch  0x000033d2 
- 00017938  0x0000416f copy  0x00000013 , 0x0000003f 
- 00017939  0x00004171 beq  0x00000001 , 0x00004626 
- 00017940  0x00004172 beq  0x00000002 , 0x00004629 
- 00017941  0x00004173 beq  0x00000004 , 0x00004631 
- 00017942  0x00004174 beq  0x00000005 , 0x00004633 
- 00017943  0x00004175 beq  0x00000006 , 0x00004635 
- 00017944  0x00004176 beq  0x00000007 , 0x00004638 
- 00017945  0x00004177 beq  0x00000012 , 0x0000463c 
- 00017946  0x00004178 beq  0x00000013 , 0x00004644 
- 00017947  0x00004179 beq  0x00000027 , 0x00004645 
- 00017948  0x0000417a beq  0x0000002e , 0x00004648 
- 00017949  0x0000417b beq  0x0000003d , 0x00004649 
- 00017950  0x0000417d beq  0x00000014 , 0x00004658 
- 00017951  0x0000417e beq  0x00000015 , 0x0000465c 
- 00017952  0x0000417f beq  0x0000003f , 0x0000465f 
- 00017953  0x00004180 beq  0x00000040 , 0x00004665 
- 00017954  0x00004182 beq  0x00000010 , 0x0000466b 
- 00017955  0x00004183 beq  0x0000002c , 0x0000466c 
- 00017956  0x00004184 beq  0x0000002d , 0x00004677 
- 00017957  0x00004185 rtn 
- 00017958  0x0000418b jam  0x00000000 , 0x000046ad 
- 00017959  0x0000418c jam  0x00000000 , 0x000046ac 
- 00017960  0x0000418d rtn 
- 00017961  0x00004191 call  0x0000462b 
- 00017962  0x00004192 branch  0x00004631 
- 00017963  0x00004195 jam  0x00000000 , 0x000041e2 
- 00017964  0x00004196 jam  0x00000000 , 0x00004680 
- 00017965  0x00004197 jam  0x00000000 , 0x00004205 
- 00017966  0x00004198 jam  0x00000000 , 0x000046ac 
- 00017967  0x00004199 jam  0x00000000 , 0x000046ad 
- 00017968  0x0000419a branch  0x00007e38 
- 00017969  0x0000419e call  0x000033a9 
- 00017970  0x0000419f branch  0x000046c2 
- 00017971  0x000041a3 call  0x000046b6 
- 00017972  0x000041a4 branch  0x00003408 
- 00017973  0x000041a8 setarg  0x00000002 
- 00017974  0x000041a9 store  0x00000001 , 0x00004680 
- 00017975  0x000041aa rtn 
- 00017976  0x000041ae jam  0x00000000 , 0x000046ac 
- 00017977  0x000041af setarg  0x00000001 
- 00017978  0x000041b0 store  0x00000001 , 0x000046ad 
- 00017979  0x000041b1 rtn 
- 00017980  0x000041b5 fetch  0x00000001 , 0x000041e2 
- 00017981  0x000041b6 rtneq  0x00000001 
- 00017982  0x000041b7 jam  0x00000001 , 0x000041e2 
- 00017983  0x000041b8 call  0x00003416 
- 00017984  0x000041b9 call  0x00003414 
- 00017985  0x000041ba call  0x000046b6 
- 00017986  0x000041bb call  0x00003408 
- 00017987  0x000041bc branch  0x0000340e 
- 00017988  0x000041c0 branch  0x00004631 
- 00017989  0x000041c4 setarg  0x00000005 
- 00017990  0x000041c5 store  0x00000001 , 0x000046ac 
- 00017991  0x000041c6 rtn 
- 00017992  0x000041ca branch  0x000033cd 
- 00017993  0x000041cf arg  0x00000000 , 0x00000012 
- 00017994  0x000041d0 fetch  0x00000001 , 0x00004217 
- 00017995  0x000041d1 mul32  0x0000003f , 0x00000022 , 0x00000002 
- 00017996  0x000041d2 fetch  0x00000002 , 0x00004215 
- 00017997  0x000041d3 copy  0x0000003f , 0x00000011 
- 00017998  0x000041d4 branch  0x00006606 
- 00017999  0x000041d7 arg  0x00000000 , 0x00000012 
- 00018000  0x000041d8 fetch  0x00000001 , 0x0000469a 
- 00018001  0x000041d9 rtnbit0  0x00000001 
- 00018002  0x000041da fetch  0x00000001 , 0x00004217 
- 00018003  0x000041db rtn  0x00000034 
- 00018004  0x000041dc mul32  0x0000003f , 0x00000022 , 0x00000002 
- 00018005  0x000041dd fetch  0x00000002 , 0x00004215 
- 00018006  0x000041de copy  0x0000003f , 0x00000011 
- 00018007  0x000041df branch  0x000065df 
- 00018008  0x000041e4 call  0x000046b6 
- 00018009  0x000041e5 setarg  0x00000000 
- 00018010  0x000041e6 store  0x00000002 , 0x000046b7 
- 00018011  0x000041e7 branch  0x00003408 
- 00018012  0x000041eb call  0x00007e38 
- 00018013  0x000041ec jam  0x00000000 , 0x000046b0 
- 00018014  0x000041ed branch  0x000046d9 
- 00018015  0x000041f1 call  0x00007e38 
- 00018016  0x000041f2 jam  0x00000001 , 0x000046b0 
- 00018017  0x000041f3 fetch  0x00000008 , 0x000046c1 
- 00018018  0x000041f4 store  0x00000008 , 0x00004496 
- 00018019  0x000041f5 call  0x00003416 
- 00018020  0x000041f6 branch  0x00005abf 
- 00018021  0x000041fa fetch  0x00000002 , 0x00004509 
- 00018022  0x000041fb rtneq  0x00000000 
- 00018023  0x000041fc fetch  0x00000008 , 0x000046c9 
- 00018024  0x000041fd rtn  0x00000034 
- 00018025  0x000041fe store  0x00000008 , 0x00004496 
- 00018026  0x000041ff branch  0x00005abf 
- 00018027  0x00004204 branch  0x0000481f 
- 00018028  0x00004207 fetch  0x00000001 , 0x000046dd 
- 00018029  0x00004208 rtneq  0x00000000 
- 00018030  0x00004209 fetch  0x00000001 , 0x000046df 
- 00018031  0x0000420a rtnne  0x00000001 
- 00018032  0x0000420b call  0x00004672 
- 00018033  0x0000420c branch  0x00003406 
- 00018034  0x0000420f jam  0x00000001 , 0x000048df 
- 00018035  0x00004210 arg  0x0000000b , 0x00000039 
- 00018036  0x00004211 arg  0x000048e0 , 0x00000005 
- 00018037  0x00004212 arg  0x000048c9 , 0x00000006 
- 00018038  0x00004213 branch  0x00007f01 
- 00018039  0x00004216 fetch  0x00000001 , 0x000046dd 
- 00018040  0x00004217 rtneq  0x00000000 
- 00018041  0x00004218 fetch  0x00000001 , 0x000046df 
- 00018042  0x00004219 beq  0x00000001 , 0x0000467c 
- 00018043  0x0000421a branch  0x0000481b 
- 00018044  0x0000421d fetch  0x00000001 , 0x000048df 
- 00018045  0x0000421e rtnne  0x00000001 
- 00018046  0x0000421f jam  0x00000000 , 0x000048df 
- 00018047  0x00004220 fetch  0x00000002 , 0x00004682 
- 00018048  0x00004221 bbit1  0x00000000 , 0x00003408 
- 00018049  0x00004222 bbit1  0x00000009 , 0x00003408 
- 00018050  0x00004223 arg  0x0000000b , 0x00000039 
- 00018051  0x00004224 arg  0x000048e0 , 0x00000006 
- 00018052  0x00004225 arg  0x000048c9 , 0x00000005 
- 00018053  0x00004226 branch  0x00007f01 
- 00018054  0x0000422d call  0x0000468c 
- 00018055  0x00004230 call  0x00004693 
- 00018056  0x00004233 call  0x0000469e 
- 00018057  0x00004234 call  0x000046a6 
- 00018058  0x00004235 call  0x000046a9 
- 00018059  0x00004238 branch  0x000046ac 
- 00018060  0x0000423d arg  0x000046db , 0x00000013 
- 00018061  0x0000423e arg  0x0000468f , 0x00000012 
- 00018062  0x0000423f branch  0x00003374 
- 00018063  0x00004241 jam  0x00000002 , 0x000046df 
- 00018064  0x00004242 call  0x00003408 
- 00018065  0x00004243 call  0x000046f4 
- 00018066  0x00004244 branch  0x0000480b 
- 00018067  0x00004248 arg  0x000048ec , 0x00000013 
- 00018068  0x00004249 arg  0x00004696 , 0x00000012 
- 00018069  0x0000424a branch  0x0000336d 
- 00018070  0x0000424d fetch  0x00000002 , 0x00004682 
- 00018071  0x0000424e bbit1  0x00000009 , 0x0000480b 
- 00018072  0x0000424f bbit1  0x00000000 , 0x0000480b 
- 00018073  0x00004250 fetch  0x00000001 , 0x000048c9 
- 00018074  0x00004251 beq  0x00000001 , 0x0000480b 
- 00018075  0x00004252 beq  0x00000004 , 0x0000480b 
- 00018076  0x00004253 beq  0x00000005 , 0x0000480b 
- 00018077  0x00004254 branch  0x0000340a 
- 00018078  0x00004259 arg  0x000046ac , 0x00000013 
- 00018079  0x0000425a arg  0x000046a1 , 0x00000012 
- 00018080  0x0000425b branch  0x0000336d 
- 00018081  0x0000425e fetch  0x00000001 , 0x0000027f 
- 00018082  0x0000425f set1  0x00000000 , 0x0000003f 
- 00018083  0x00004260 set1  0x00000007 , 0x0000003f 
- 00018084  0x00004261 store  0x00000001 , 0x0000027f 
- 00018085  0x00004262 rtn 
- 00018086  0x00004265 arg  0x00004680 , 0x00000013 
- 00018087  0x00004266 arg  0x0000463c , 0x00000012 
- 00018088  0x00004267 branch  0x0000336d 
- 00018089  0x0000426a arg  0x000046ad , 0x00000013 
- 00018090  0x0000426b arg  0x000033e9 , 0x00000012 
- 00018091  0x0000426c branch  0x0000336d 
- 00018092  0x00004272 fetch  0x00000001 , 0x000046df 
- 00018093  0x00004273 rtnne  0x00000001 
- 00018094  0x00004274 arg  0x000046b7 , 0x00000013 
- 00018095  0x00004275 arg  0x000046c2 , 0x00000012 
- 00018096  0x00004276 branch  0x00003374 
- 00018097  0x0000427a call  0x0000473a 
- 00018098  0x0000427b branch  0x00006978 
- 00018099  0x0000427f branch  0x0000696c 
- 00018100  0x00004282 call  0x00006835 
- 00018101  0x00004283 branch  0x000046b3 
- 00018102  0x0000428a fetch  0x00000001 , 0x0000469a 
- 00018103  0x0000428b bbit1  0x00000001 , 0x000046be 
- 00018104  0x0000428c bbit1  0x00000000 , 0x000046ba 
- 00018105  0x0000428d rtn 
- 00018106  0x00004290 fetch  0x00000002 , 0x000046d7 
- 00018107  0x00004291 store  0x00000002 , 0x000046d9 
- 00018108  0x00004292 store  0x00000002 , 0x000046db 
- 00018109  0x00004293 branch  0x000033f8 
- 00018110  0x00004296 fetch  0x00000002 , 0x000046d3 
- 00018111  0x00004297 store  0x00000002 , 0x000046d9 
- 00018112  0x00004298 store  0x00000002 , 0x000046db 
- 00018113  0x00004299 branch  0x000033f0 
- 00018114  0x0000429c fetch  0x00000001 , 0x000046df 
- 00018115  0x0000429d rtnne  0x00000001 
- 00018116  0x0000429e fetch  0x00000001 , 0x0000469a 
- 00018117  0x0000429f bbit1  0x00000001 , 0x000046c8 
- 00018118  0x000042a0 bbit1  0x00000000 , 0x000046cc 
- 00018119  0x000042a1 rtn 
- 00018120  0x000042a4 fetch  0x00000002 , 0x000046d1 ,
- 00018121  0x000042a5 store  0x00000002 , 0x000046d9 
- 00018122  0x000042a6 store  0x00000002 , 0x000046db 
- 00018123  0x000042a7 branch  0x000033eb 
- 00018124  0x000042aa fetch  0x00000002 , 0x00004682 
- 00018125  0x000042ab rtnbit1  0x00000009 
- 00018126  0x000042ac fetch  0x00000002 , 0x000046d5 
- 00018127  0x000042ad store  0x00000002 , 0x000046d9 
- 00018128  0x000042ae store  0x00000002 , 0x000046db 
- 00018129  0x000042af fetch  0x00000002 , 0x000046b3 
- 00018130  0x000042b0 call  0x000046f0 
- 00018131  0x000042b1 call  0x00003404 
- 00018132  0x000042b2 fetch  0x00000004 , 0x000046bd 
- 00018133  0x000042b3 store  0x00000004 , 0x000048cc 
- 00018134  0x000042b4 fetch  0x00000002 , 0x00004682 
- 00018135  0x000042b5 rtnbit1  0x0000000b 
- 00018136  0x000042b6 branch  0x000033fa 
- 00018137  0x000042ba fetch  0x00000001 , 0x000046df 
- 00018138  0x000042bb rtnne  0x00000001 
- 00018139  0x000042bc fetch  0x00000001 , 0x0000469a 
- 00018140  0x000042bd bbit1  0x00000001 , 0x000046df 
- 00018141  0x000042be bbit1  0x00000000 , 0x000046e4 
- 00018142  0x000042bf rtn 
- 00018143  0x000042c2 call  0x000046f8 
- 00018144  0x000042c3 branch  0x000046c2 , 0x00000034 
- 00018145  0x000042c4 call  0x00003406 
- 00018146  0x000042c5 call  0x000033f0 
- 00018147  0x000042c6 branch  0x000033e1 
- 00018148  0x000042c9 fetch  0x00000002 , 0x000046b7 
- 00018149  0x000042ca fetcht  0x00000002 , 0x000046b5 
- 00018150  0x000042cb storet  0x00000002 , 0x000046b7 
- 00018151  0x000042cc nrtn  0x00000034 
- 00018152  0x000042cd fetch  0x00000002 , 0x000046b1 
- 00018153  0x000042ce call  0x000046f0 
- 00018154  0x000042cf call  0x00003404 
- 00018155  0x000042d0 fetch  0x00000004 , 0x000046b9 
- 00018156  0x000042d1 store  0x00000004 , 0x000048cc 
- 00018157  0x000042d2 fetch  0x00000002 , 0x00004682 
- 00018158  0x000042d3 rtnbit1  0x0000000b 
- 00018159  0x000042d4 branch  0x000033fa 
- 00018160  0x000042d8 store  0x00000002 , 0x00004154 
- 00018161  0x000042d9 increase  0xfffffffc , 0x0000003f 
- 00018162  0x000042da store  0x00000002 , 0x00004482 
- 00018163  0x000042db rtn 
- 00018164  0x000042df fetch  0x00000002 , 0x00004682 
- 00018165  0x000042e0 bbit1  0x00000009 , 0x00003402 
- 00018166  0x000042e1 bbit1  0x00000000 , 0x000033e9 
- 00018167  0x000042e2 branch  0x000046b6 
- 00018168  0x000042e7 fetch  0x00000001 , 0x00004217 
- 00018169  0x000042e8 copy  0x0000003f , 0x00000039 
- 00018170  0x000042e9 fetch  0x00000002 , 0x00004215 
- 00018171  0x000042ea copy  0x0000003f , 0x00000011 
- 00018172  0x000042ec ifetch  0x00000002 , 0x00000011 
- 00018173  0x000042ed beq  0x00000000 , 0x00004701 
- 00018174  0x000042ee increase  0x00000022 , 0x00000011 
- 00018175  0x000042ef loop  0x000046fc 
- 00018176  0x000042f0 branch  0x00007ff1 
- 00018177  0x000042f3 ifetch  0x00000006 , 0x00000006 
- 00018178  0x000042f4 store  0x00000006 , 0x000041d0 
- 00018179  0x000042f5 increase  0x0000000a , 0x00000006 
- 00018180  0x000042f6 arg  0x000041be , 0x00000005 
- 00018181  0x000042f7 call  0x00007ebf 
- 00018182  0x000042f8 call  0x000067d7 
- 00018183  0x000042f9 branch  0x00007fef 
- 00018184  0x00004300 call  0x00007fe9 
- 00018185  0x00004301 fetch  0x00000002 , 0x00004682 
- 00018186  0x00004302 bbit1  0x00000000 , 0x0000470d 
- 00018187  0x00004303 bbit1  0x00000009 , 0x00004710 
- 00018188  0x00004304 rtn 
- 00018189  0x00004307 fetch  0x00000001 , 0x00004253 
- 00018190  0x00004308 rtnne  0x0000003f 
- 00018191  0x00004309 branch  0x00007fe7 
- 00018192  0x0000430c fetch  0x00000001 , 0x000046b0 
- 00018193  0x0000430d rtn  0x00000034 
- 00018194  0x0000430e branch  0x00007fe7 
- 00018195  0x00004314 call  0x00007fe9 
- 00018196  0x00004315 fetch  0x00000002 , 0x00004682 
- 00018197  0x00004316 rtnbit1  0x00000000 
- 00018198  0x00004317 rtnbit1  0x00000009 
- 00018199  0x00004318 branch  0x00007fe7 
- 00018200  0x0000431d fetch  0x00000001 , 0x0000469a 
- 00018201  0x0000431e bbit1  0x00000001 , 0x0000471c 
- 00018202  0x0000431f bbit1  0x00000000 , 0x0000471f 
- 00018203  0x00004320 rtn 
- 00018204  0x00004323 fetch  0x00000001 , 0x00004093 
- 00018205  0x00004324 rtnne  0x00000003 
- 00018206  0x00004325 branch  0x000046d9 
- 00018207  0x00004328 branch  0x000046d9 
- 00018208  0x0000432c disable  0x0000002c 
- 00018209  0x0000432d fetch  0x00000002 , 0x000046d9 
- 00018210  0x0000432e store  0x00000002 , 0x000046db 
- 00018211  0x00004330 call  0x00004713 
- 00018212  0x00004331 branch  0x00004718 , 0x00000028 
- 00018213  0x00004333 call  0x00004708 
- 00018214  0x00004334 nrtn  0x00000028 
- 00018215  0x00004335 enable  0x0000002c 
- 00018216  0x00004336 rtn 
- 00018217  0x0000433b call  0x00004720 
- 00018218  0x0000433c nrtn  0x0000002c 
- 00018219  0x0000433d deposit  0x00000011 
- 00018220  0x0000433e branch  0x00004730 , 0x00000034 
- 00018221  0x00004340 call  0x00003406 
- 00018222  0x00004341 arg  0x000046f1 , 0x00000013 
- 00018223  0x00004342 branch  0x00004732 
- 00018224  0x00004345 call  0x00003408 
- 00018225  0x00004346 arg  0x00004719 , 0x00000013 
- 00018226  0x00004349 arg  0x00000005 , 0x0000003f 
- 00018227  0x0000434a imul32  0x00000007 , 0x0000003f 
- 00018228  0x0000434b iadd  0x00000013 , 0x00000013 
- 00018229  0x0000434f ifetch  0x00000001 , 0x00000013 
- 00018230  0x00004350 rtn  0x00000034 
- 00018231  0x00004351 call  0x00004762 
- 00018232  0x00004352 increase  0x00000001 , 0x00000013 
- 00018233  0x00004353 branch  0x00004735 
- 00018234  0x00004357 fetch  0x00000002 , 0x00004682 
- 00018235  0x00004358 bbit1  0x00000009 , 0x0000473e 
- 00018236  0x00004359 bbit1  0x00000000 , 0x0000474e 
- 00018237  0x0000435a rtn 
- 00018238  0x0000435d call  0x00005892 
- 00018239  0x0000435e nrtn  0x00000034 
- 00018240  0x0000435f call  0x00004765 
- 00018241  0x00004360 nrtn  0x00000028 
- 00018242  0x00004361 pincrease  0xffffffff 
- 00018243  0x00004362 mul32  0x0000003f , 0x00000005 , 0x0000003f 
- 00018244  0x00004363 arg  0x00004741 , 0x00000002 
- 00018245  0x00004364 iadd  0x00000002 , 0x00000006 
- 00018246  0x00004366 ifetch  0x00000001 , 0x00000006 
- 00018247  0x00004367 copy  0x0000003f , 0x00000011 
- 00018248  0x00004368 ifetcht  0x00000002 , 0x00000006 
- 00018249  0x00004369 call  0x00007ea5 
- 00018250  0x0000436a call  0x00005a64 
- 00018251  0x0000436b copy  0x00000011 , 0x00000039 
- 00018252  0x0000436c call  0x00007e9f 
- 00018253  0x0000436d branch  0x00007f01 
- 00018254  0x00004371 call  0x00005271 
- 00018255  0x00004372 nrtn  0x00000034 
- 00018256  0x00004373 call  0x00004765 
- 00018257  0x00004374 nrtn  0x00000028 
- 00018258  0x00004375 pincrease  0xffffffff 
- 00018259  0x00004376 mul32  0x0000003f , 0x00000005 , 0x0000003f 
- 00018260  0x00004377 arg  0x000047a0 , 0x00000002 
- 00018261  0x00004378 iadd  0x00000002 , 0x00000006 
- 00018262  0x00004379 ifetch  0x00000005 , 0x00000006 
- 00018263  0x0000437a store  0x00000005 , 0x0000479b 
- 00018264  0x0000437c fetch  0x00000001 , 0x0000479b 
- 00018265  0x0000437d copy  0x0000003f , 0x00000011 
- 00018266  0x0000437e call  0x00004d63 
- 00018267  0x0000437f fetch  0x00000002 , 0x0000424e 
- 00018268  0x00004380 istore  0x00000002 , 0x00000005 
- 00018269  0x00004381 setarg  0x000000a1 
- 00018270  0x00004382 istore  0x00000001 , 0x00000005 
- 00018271  0x00004383 fetch  0x00000004 , 0x0000479c 
- 00018272  0x00004384 istore  0x00000009 , 0x00000005 
- 00018273  0x00004385 rtn 
- 00018274  0x0000438a store  0x00000001 , 0x00000a9a 
- 00018275  0x0000438b arg  0x00000a9a , 0x00000011 
- 00018276  0x0000438c branch  0x00007e3d 
- 00018277  0x0000438f arg  0x00000a9a , 0x00000011 
- 00018278  0x00004390 call  0x00007e54 
- 00018279  0x00004391 nrtn  0x00000028 
- 00018280  0x00004392 fetch  0x00000001 , 0x00000a9a 
- 00018281  0x00004393 rtn 
- 00018282  0x00004397 fetch  0x00000002 , 0x00000478 
- 00018283  0x00004398 beq  0x00000018 , 0x0000465f 
- 00018284  0x00004399 rtn 
- 00018285  0x0000439c setarg  0x00000002 
- 00018286  0x0000439d store  0x00000001 , 0x000048eb 
- 00018287  0x0000439f setarg  0x00200008 
- 00018288  0x000043a0 store  0x00000004 , 0x000046c1 
- 00018289  0x000043a1 setarg  0x012c0005 
- 00018290  0x000043a2 istore  0x00000004 , 0x00000005 
- 00018291  0x000043a5 jam  0x00000017 , 0x000044a6 
- 00018292  0x000043a8 setarg  0x0000001b 
- 00018293  0x000043a9 store  0x00000002 , 0x000044fa 
- 00018294  0x000043aa call  0x00005810 
- 00018295  0x000043ab call  0x0000582c 
- 00018296  0x000043ac call  0x00005839 
- 00018297  0x000043ad branch  0x00005818 
- 00018298  0x000043b2 arg  0x00000028 , 0x00000039 
- 00018299  0x000043b3 arg  0x00004741 , 0x00000005 
- 00018300  0x000043b4 arg  0x0000949f , 0x00000006 
- 00018301  0x000043b5 call  0x00007ef4 
- 00018302  0x000043b6 arg  0x00000028 , 0x00000039 
- 00018303  0x000043b7 arg  0x000047a0 , 0x00000005 
- 00018304  0x000043b8 arg  0x000094c7 , 0x00000006 
- 00018305  0x000043b9 branch  0x00007ef4 
- 00018306  0x000043bd arg  0x0000017e , 0x00000039 
- 00018307  0x000043be arg  0x0000913a , 0x00000006 
- 00018308  0x000043bf branch  0x00007ef4 
- 00018309  0x000043c3 arg  0x000001e7 , 0x00000039 
- 00018310  0x000043c4 arg  0x000092b8 , 0x00000006 
- 00018311  0x000043c5 branch  0x00007ef4 
- 00018312  0x000043ca call  0x000047ae 
- 00018313  0x000043cb nrtn  0x00000028 
- 00018314  0x000043cc fetch  0x00000001 , 0x0000469f 
- 00018315  0x000043cd call  0x00004790 
- 00018316  0x000043ce fetch  0x00000001 , 0x000046a0 
- 00018317  0x000043cf call  0x00004790 
- 00018318  0x000043d0 fetch  0x00000001 , 0x000046a1 
- 00018319  0x000043d1 branch  0x00004790 
- 00018320  0x000043d4 rtn  0x00000034 
- 00018321  0x000043d5 or  0x0000003f , 0x00000080 , 0x00000002 
- 00018322  0x000043d6 branch  0x000067f9 
- 00018323  0x000043da call  0x000047ae 
- 00018324  0x000043db nrtn  0x00000028 
- 00018325  0x000043dc call  0x00004797 
- 00018326  0x000043dd branch  0x000047b4 
- 00018327  0x000043e0 arg  0x00000000 , 0x00000011 
- 00018328  0x000043e1 fetch  0x00000001 , 0x0000469f 
- 00018329  0x000043e2 call  0x000047a9 
- 00018330  0x000043e3 nsetflag  0x00000034 , 0x00000000 , 0x00000011 
- 00018331  0x000043e4 fetch  0x00000001 , 0x000046a0 
- 00018332  0x000043e5 call  0x000047a9 
- 00018333  0x000043e6 nsetflag  0x00000034 , 0x00000001 , 0x00000011 
- 00018334  0x000043e7 fetch  0x00000001 , 0x000046a1 
- 00018335  0x000043e8 call  0x000047a9 
- 00018336  0x000043e9 nsetflag  0x00000034 , 0x00000002 , 0x00000011 
- 00018337  0x000043ea copy  0x00000011 , 0x0000003f 
- 00018338  0x000043eb store  0x00000001 , 0x000046a9 
- 00018339  0x000043ec fetch  0x00000001 , 0x0000469e 
- 00018340  0x000043ed imul32  0x00000011 , 0x0000003f 
- 00018341  0x000043ee fetcht  0x00000002 , 0x0000469c 
- 00018342  0x000043ef iadd  0x00000002 , 0x0000003f 
- 00018343  0x000043f0 store  0x00000002 , 0x000046aa 
- 00018344  0x000043f1 rtn 
- 00018345  0x000043f4 rtn  0x00000034 
- 00018346  0x000043f5 or  0x0000003f , 0x00000080 , 0x00000002 
- 00018347  0x000043f6 call  0x0000681d 
- 00018348  0x000043f7 nbranch  0x00007ff1 , 0x00000001 
- 00018349  0x000043f8 branch  0x00007fef 
- 00018350  0x000043fc call  0x00007fe9 
- 00018351  0x000043fd fetch  0x00000001 , 0x000046a8 
- 00018352  0x000043fe nrtn  0x00000034 
- 00018353  0x000043ff fetch  0x00000001 , 0x0000469b 
- 00018354  0x00004400 rtn  0x00000034 
- 00018355  0x00004401 branch  0x00007fe7 
- 00018356  0x00004405 call  0x0000666a 
- 00018357  0x00004406 fetch  0x00000002 , 0x000046aa 
- 00018358  0x00004407 arg  0x00000ac2 , 0x00000011 
- 00018359  0x00004408 fetcht  0x00000001 , 0x0000469e 
- 00018360  0x00004409 call  0x000066b3 
- 00018361  0x0000440a call  0x0000666d 
- 00018362  0x0000440c fetch  0x00000001 , 0x00000ac2 
- 00018363  0x0000440d copy  0x0000003f , 0x00000039 
- 00018364  0x0000440e store  0x00000001 , 0x000043af 
- 00018365  0x0000440f call  0x00007ef4 
- 00018366  0x00004410 fetch  0x00000001 , 0x00000ac2 
- 00018367  0x00004411 copy  0x0000003f , 0x00000039 
- 00018368  0x00004412 store  0x00000001 , 0x00004515 
- 00018369  0x00004413 call  0x00007ef4 
- 00018370  0x00004414 ifetch  0x00000001 , 0x00000006 
- 00018371  0x00004415 store  0x00000001 , 0x000046e6 
- 00018372  0x00004416 ifetch  0x00000001 , 0x00000006 
- 00018373  0x00004417 store  0x00000001 , 0x000046dd 
- 00018374  0x00004418 rtn 
- 00018375  0x0000441c fetch  0x00000001 , 0x0000469a 
- 00018376  0x0000441d rtnbit0  0x00000001 
- 00018377  0x0000441e arg  0x00000003 , 0x00000002 
- 00018378  0x0000441f fetch  0x00000002 , 0x000046a4 
- 00018379  0x00004420 copy  0x0000003f , 0x00000012 
- 00018380  0x00004421 arg  0x000046a6 , 0x00000011 
- 00018381  0x00004422 call  0x000065df 
- 00018382  0x00004423 fetcht  0x00000002 , 0x000046a6 
- 00018383  0x00004424 setarg  0x00001b3a 
- 00018384  0x00004425 isub  0x00000002 , 0x0000003e 
- 00018385  0x00004426 nrtn  0x00000005 
- 00018386  0x00004427 fetch  0x00000001 , 0x000046a8 
- 00018387  0x00004428 rtn  0x00000034 
- 00018388  0x00004429 copy  0x0000003f , 0x00000002 
- 00018389  0x0000442a fetch  0x00000002 , 0x000046a4 
- 00018390  0x0000442b add  0x0000003f , 0x00000003 , 0x00000012 
- 00018391  0x0000442c arg  0x00000ac2 , 0x00000011 
- 00018392  0x0000442d call  0x000065df 
- 00018393  0x0000442e branch  0x000047e8 
- 00018394  0x00004431 fetch  0x00000002 , 0x000046a2 
- 00018395  0x00004432 rtn  0x00000034 
- 00018396  0x00004433 call  0x0000666a 
- 00018397  0x00004434 arg  0x00000001 , 0x00000002 
- 00018398  0x00004435 arg  0x000046a8 , 0x00000011 
- 00018399  0x00004436 call  0x000066b3 
- 00018400  0x00004438 fetch  0x00000001 , 0x000046a8 
- 00018401  0x00004439 rtn  0x00000034 
- 00018402  0x0000443b fetch  0x00000002 , 0x000046a2 
- 00018403  0x0000443c pincrease  0x00000001 
- 00018404  0x0000443d arg  0x00000ac2 , 0x00000011 
- 00018405  0x0000443e fetcht  0x00000001 , 0x000046a8 
- 00018406  0x0000443f call  0x000066b3 
- 00018407  0x00004440 call  0x0000666d 
- 00018408  0x00004442 call  0x000047ba 
- 00018409  0x00004444 ifetch  0x00000002 , 0x00000006 
- 00018410  0x00004445 rtn  0x00000034 
- 00018411  0x00004446 copy  0x0000003f , 0x00000005 
- 00018412  0x00004447 ifetcht  0x00000001 , 0x00000006 
- 00018413  0x00004448 copy  0x00000002 , 0x00000039 
- 00018414  0x00004449 call  0x00007f01 
- 00018415  0x0000444a branch  0x000047e9 
- 00018416  0x0000444f fetch  0x00000001 , 0x0000469a 
- 00018417  0x00004450 rtnbit0  0x00000001 
- 00018418  0x00004451 fetch  0x00000002 , 0x000046ae 
- 00018419  0x00004452 copy  0x0000003f , 0x00000012 
- 00018420  0x00004453 arg  0x00000004 , 0x00000002 
- 00018421  0x00004454 arg  0x00000ac2 , 0x00000011 
- 00018422  0x00004455 call  0x000065df 
- 00018423  0x00004456 fetch  0x00000001 , 0x00000ac2 
- 00018424  0x00004457 bne  0x00000001 , 0x000047f9 
- 00018425  0x00004459 setarg  0x00000001 
- 00018426  0x0000445a store  0x00000001 , 0x00000ac2 
- 00018427  0x0000445b force  0x00000003 , 0x00000039 
- 00018428  0x0000445c call  0x0000630d 
- 00018429  0x0000445d fetch  0x00000002 , 0x000046ae 
- 00018430  0x0000445e copy  0x0000003f , 0x00000012 
- 00018431  0x0000445f arg  0x00000004 , 0x00000002 
- 00018432  0x00004460 arg  0x00000ac2 , 0x00000011 
- 00018433  0x00004461 call  0x00006606 
- 00018434  0x00004463 fetch  0x00000003 , 0x00000ac3 
- 00018435  0x00004464 store  0x00000003 , 0x000040a0 
- 00018436  0x00004465 store  0x00000003 , 0x000044a0 
- 00018437  0x00004466 rtn 
- 00018438  0x0000446a branch  0x000046d9 
- 00018439  0x0000446e arg  0x00000000 , 0x00000011 
- 00018440  0x0000446f arg  0x000048d4 , 0x00000013 
- 00018441  0x00004470 call  0x00007d24 
- 00018442  0x00004471 call  0x000046f4 
- 00018443  0x00004473 fetch  0x00000001 , 0x000048eb 
- 00018444  0x00004474 store  0x00000001 , 0x000048ec 
- 00018445  0x00004475 rtn 
- 00018446  0x0000447a setarg  0x00000000 
- 00018447  0x0000447b call  0x00004816 
- 00018448  0x0000447c jam  0x00000001 , 0x00004679 
- 00018449  0x0000447d call  0x00007cd3 
- 00018450  0x0000447e call  0x00007cdd 
- 00018451  0x0000447f fetch  0x00000002 , 0x00004682 
- 00018452  0x00004480 rtnbit1  0x0000000c 
- 00018453  0x00004481 branch  0x0000340a 
- 00018454  0x00004484 fetcht  0x00000002 , 0x0000423f 
- 00018455  0x00004485 istore  0x00000001 , 0x00000002 
- 00018456  0x00004486 ifetch  0x00000001 , 0x00000005 
- 00018457  0x00004487 store  0x00000001 , 0x00004685 
- 00018458  0x00004488 rtn 
- 00018459  0x0000448c fetch  0x00000002 , 0x0000423f 
- 00018460  0x0000448d ifetch  0x00000001 , 0x0000003f 
- 00018461  0x0000448e rtnne  0x00000000 
- 00018462  0x0000448f branch  0x0000340a 
- 00018463  0x00004493 fetcht  0x00000002 , 0x0000423f 
- 00018464  0x00004494 ifetch  0x00000001 , 0x00000002 
- 00018465  0x00004495 beq  0x00000001 , 0x0000482a 
- 00018466  0x00004497 setarg  0x00000001 
- 00018467  0x00004498 fetcht  0x00000002 , 0x0000423f 
- 00018468  0x00004499 istore  0x00000001 , 0x00000002 
- 00018469  0x0000449a add  0x00000002 , 0x00000002 , 0x00000006 
- 00018470  0x0000449b ifetch  0x00000001 , 0x00000006 
- 00018471  0x0000449c istore  0x00000001 , 0x00004685 
- 00018472  0x0000449d ifetch  0x00000002 , 0x00000006 
- 00018473  0x0000449e branch  0x00007f9c 
- 00018474  0x000044a1 setarg  0x00000002 
- 00018475  0x000044a2 call  0x00004816 
- 00018476  0x000044a3 add  0x00000002 , 0x00000005 , 0x00000006 
- 00018477  0x000044a4 ifetch  0x00000002 , 0x00000006 
- 00018478  0x000044a5 branch  0x0000340a , 0x00000034 
- 00018479  0x000044a6 branch  0x00007f9c 
- 00018480  0x000044ad store  0x00000006 , 0x00000101 
- 00018481  0x000044ae fetch  0x00000001 , 0x00000101 
- 00018482  0x000044af store  0x00000001 , 0x0000010c 
- 00018483  0x000044b0 ifetch  0x00000001 , 0x00000006 
- 00018484  0x000044b1 store  0x00000001 , 0x0000010b 
- 00018485  0x000044b2 ifetch  0x00000001 , 0x00000006 
- 00018486  0x000044b3 store  0x00000001 , 0x0000010a 
- 00018487  0x000044b4 ifetch  0x00000001 , 0x00000006 
- 00018488  0x000044b5 store  0x00000001 , 0x00000109 
- 00018489  0x000044b6 ifetch  0x00000001 , 0x00000006 
- 00018490  0x000044b7 store  0x00000001 , 0x00000108 
- 00018491  0x000044b8 ifetch  0x00000001 , 0x00000006 
- 00018492  0x000044b9 store  0x00000001 , 0x00000107 
- 00018493  0x000044ba fetch  0x00000006 , 0x00000107 
- 00018494  0x000044bb rtn 
- 00018495  0x000044be call  0x000068a2 
- 00018496  0x000044bf fetch  0x00000001 , 0x00004223 
- 00018497  0x000044c0 store  0x00000001 , 0x000044a0 
- 00018498  0x000044c1 fetch  0x00000001 , 0x00004225 
- 00018499  0x000044c2 istore  0x00000001 , 0x00000005 
- 00018500  0x000044c3 fetch  0x00000001 , 0x00004227 
- 00018501  0x000044c4 istore  0x00000001 , 0x00000005 
- 00018502  0x000044c5 fetch  0x00000003 , 0x000044a0 
- 00018503  0x000044c6 store  0x00000003 , 0x000040a0 
- 00018504  0x000044c7 rtn 
- 00018505  0x000044d4 fetch  0x00000002 , 0x00004203 
- 00018506  0x000044d5 iadd  0x00000012 , 0x0000003f 
- 00018507  0x000044d6 byteswap  0x0000003f , 0x0000003f 
- 00018508  0x000044d7 store  0x00000002 , 0x000001f7 
- 00018509  0x000044d8 copy  0x00000002 , 0x00000012 
- 00018510  0x000044da call  0x0000489b 
- 00018511  0x000044db setarg  0x000000a0 
- 00018512  0x000044dc call  0x0000488d 
- 00018513  0x000044dd fetch  0x00000001 , 0x000001f7 
- 00018514  0x000044de call  0x0000488d 
- 00018515  0x000044df bmark1  0x00000028 , 0x00004856 
- 00018516  0x000044e0 fetch  0x00000001 , 0x000001f8 
- 00018517  0x000044e1 call  0x0000488d 
- 00018518  0x000044e3 call  0x000048a1 
- 00018519  0x000044e5 call  0x0000489b 
- 00018520  0x000044e6 setarg  0x000000a1 
- 00018521  0x000044e7 call  0x0000488d 
- 00018522  0x000044ea call  0x0000487f 
- 00018523  0x000044eb istore  0x00000001 , 0x00000011 
- 00018524  0x000044ec increase  0x00000001 , 0x00000011 
- 00018525  0x000044ed increase  0xffffffff , 0x00000012 
- 00018526  0x000044ee nbranch  0x0000485a , 0x00000005 
- 00018527  0x000044ef branch  0x000048a1 
- 00018528  0x000044fb byteswap  0x00000012 , 0x0000003f 
- 00018529  0x000044fc store  0x00000002 , 0x000001f7 
- 00018530  0x000044fd copy  0x00000002 , 0x00000012 
- 00018531  0x000044ff call  0x0000489b 
- 00018532  0x00004500 setarg  0x000000a0 
- 00018533  0x00004501 call  0x0000488d 
- 00018534  0x00004503 fetch  0x00000001 , 0x000001f7 
- 00018535  0x00004504 call  0x0000488d 
- 00018536  0x00004505 bmark1  0x00000028 , 0x0000486b 
- 00018537  0x00004506 fetch  0x00000001 , 0x000001f8 
- 00018538  0x00004507 call  0x0000488d 
- 00018539  0x00004509 ifetch  0x00000001 , 0x00000011 
- 00018540  0x0000450a call  0x0000488d 
- 00018541  0x0000450b increase  0x00000001 , 0x00000011 
- 00018542  0x0000450c increase  0xffffffff , 0x00000012 
- 00018543  0x0000450d nbranch  0x0000486b , 0x00000005 
- 00018544  0x0000450e branch  0x000048a1 
- 00018545  0x00004513 arg  0x0000000a , 0x00000039 
- 00018546  0x00004514 call  0x000048be 
- 00018547  0x00004515 call  0x000048a6 
- 00018548  0x00004516 call  0x000048d2 
- 00018549  0x00004518 call  0x000048c7 
- 00018550  0x00004519 branch  0x000048a9 , 0x00000034 
- 00018551  0x0000451a loop  0x00004875 
- 00018552  0x0000451b branch  0x000048a9 
- 00018553  0x00004520 call  0x000048a9 
- 00018554  0x00004521 call  0x000048af 
- 00018555  0x00004522 call  0x000048d2 
- 00018556  0x00004523 call  0x000048a6 
- 00018557  0x00004524 call  0x000048d2 
- 00018558  0x00004525 branch  0x000048a9 
- 00018559  0x0000452b arg  0x00000008 , 0x00000039 
- 00018560  0x0000452c arg  0x00000000 , 0x00000013 
- 00018561  0x0000452d call  0x000048be 
- 00018562  0x0000452f call  0x000048a6 
- 00018563  0x00004530 call  0x000048d2 
- 00018564  0x00004531 lshift  0x00000013 , 0x00000013 
- 00018565  0x00004532 call  0x000048c7 
- 00018566  0x00004533 iadd  0x00000013 , 0x00000013 
- 00018567  0x00004534 call  0x000048d2 
- 00018568  0x00004535 call  0x000048a9 
- 00018569  0x00004536 loop  0x00004882 
- 00018570  0x00004537 call  0x00004879 
- 00018571  0x00004538 copy  0x00000013 , 0x0000003f 
- 00018572  0x00004539 rtn 
- 00018573  0x0000453e arg  0x00000008 , 0x00000039 
- 00018574  0x0000453f copy  0x0000003f , 0x00000013 
- 00018575  0x00004540 call  0x000048a9 
- 00018576  0x00004542 isolate1  0x00000007 , 0x00000013 
- 00018577  0x00004543 call  0x000048ac , 0x00000001 
- 00018578  0x00004544 ncall  0x000048af , 0x00000001 
- 00018579  0x00004545 lshift  0x00000013 , 0x00000013 
- 00018580  0x00004546 call  0x000048d2 
- 00018581  0x00004547 call  0x000048a6 
- 00018582  0x00004548 call  0x000048d2 
- 00018583  0x00004549 call  0x000048a9 
- 00018584  0x0000454a call  0x000048d2 
- 00018585  0x0000454b loop  0x00004890 
- 00018586  0x0000454c branch  0x00004871 
- 00018587  0x00004551 call  0x000048ac 
- 00018588  0x00004552 call  0x000048a6 
- 00018589  0x00004553 call  0x000048d2 
- 00018590  0x00004554 call  0x000048af 
- 00018591  0x00004555 call  0x000048d2 
- 00018592  0x00004556 branch  0x000048a9 
- 00018593  0x0000455b call  0x000048af 
- 00018594  0x0000455c call  0x000048a6 
- 00018595  0x0000455d call  0x000048d2 
- 00018596  0x0000455e call  0x000048ac 
- 00018597  0x0000455f branch  0x000048d2 
- 00018598  0x00004564 enable  0x00000028 
- 00018599  0x00004565 fetch  0x00000001 , 0x00004ffe 
- 00018600  0x00004566 branch  0x000048b2 
- 00018601  0x0000456a disable  0x00000028 
- 00018602  0x0000456b fetch  0x00000001 , 0x00004ffe 
- 00018603  0x0000456c branch  0x000048b2 
- 00018604  0x00004570 enable  0x00000028 
- 00018605  0x00004571 fetch  0x00000001 , 0x00004fff 
- 00018606  0x00004572 branch  0x000048b2 
- 00018607  0x00004576 disable  0x00000028 
- 00018608  0x00004577 fetch  0x00000001 , 0x00004fff 
- 00018609  0x00004578 branch  0x000048b2 
- 00018610  0x0000457e and  0x0000003f , 0x00000007 , 0x00000007 
- 00018611  0x0000457f rshift3  0x0000003f , 0x0000003f 
- 00018612  0x00004580 arg  0x00008070 , 0x00000002 
- 00018613  0x00004581 iadd  0x00000002 , 0x00000002 
- 00018614  0x00004582 ifetch  0x00000001 , 0x00000002 
- 00018615  0x00004583 qset1  0x0000003f 
- 00018616  0x00004584 istore  0x00000001 , 0x00000002 
- 00018617  0x00004585 increase  0x00000004 , 0x00000002 
- 00018618  0x00004586 ifetch  0x00000001 , 0x00000002 
- 00018619  0x00004587 qsetflag  0x00000028 , 0x0000003f 
- 00018620  0x00004588 istore  0x00000001 , 0x00000002 
- 00018621  0x00004589 rtn 
- 00018622  0x0000458d fetch  0x00000001 , 0x00004fff 
- 00018623  0x0000458e and  0x0000003f , 0x00000007 , 0x00000007 
- 00018624  0x0000458f rshift3  0x0000003f , 0x0000003f 
- 00018625  0x00004590 arg  0x00008070 , 0x00000002 
- 00018626  0x00004591 iadd  0x00000002 , 0x00000002 
- 00018627  0x00004592 ifetch  0x00000001 , 0x00000002 
- 00018628  0x00004593 qset0  0x0000003f 
- 00018629  0x00004594 istore  0x00000001 , 0x00000002 
- 00018630  0x00004595 rtn 
- 00018631  0x0000459b nop  0x00000004 
- 00018632  0x0000459c fetch  0x00000001 , 0x00004fff 
- 00018633  0x0000459d and  0x0000003f , 0x00000007 , 0x00000007 
- 00018634  0x0000459e rshift3  0x0000003f , 0x0000003f 
- 00018635  0x0000459f arg  0x0000811c , 0x00000002 
- 00018636  0x000045a0 iadd  0x00000002 , 0x00000002 
- 00018637  0x000045a1 setarg  0x00000000 
- 00018638  0x000045a2 ifetcht  0x00000001 , 0x00000002 
- 00018639  0x000045a3 qisolate1  0x00000002 
- 00018640  0x000045a4 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00018641  0x000045a5 rtn 
- 00018642  0x000045aa rtn 
- 00018643  0x000045b1 bpatch  0x000000f6 , 0x0000401e 
- 00018644  0x000045b2 hfetch  0x00000001 , 0x00008a26 
- 00018645  0x000045b3 isolate1  0x00000007 , 0x0000003f 
- 00018646  0x000045b4 call  0x000048ea , 0x00000001 
- 00018647  0x000045b5 call  0x0000492e 
- 00018648  0x000045b6 hfetch  0x00000001 , 0x00008a26 
- 00018649  0x000045b7 store  0x00000001 , 0x00000b22 
- 00018650  0x000045b8 hfetch  0x00000001 , 0x00008a27 
- 00018651  0x000045b9 store  0x00000001 , 0x00000b23 
- 00018652  0x000045ba hstore  0x00000001 , 0x00008a27 
- 00018653  0x000045bb pinvert 
- 00018654  0x000045bc fetcht  0x00000001 , 0x00000d37 
- 00018655  0x000045bd iand  0x00000002 , 0x0000003f 
- 00018656  0x000045be store  0x00000001 , 0x00000d37 
- 00018657  0x000045bf jam  0x000000e0 , 0x00008a26 
- 00018658  0x000045c0 fetch  0x00000001 , 0x00000b23 
- 00018659  0x000045c1 compare  0x00000001 , 0x0000003f , 0x00000001 
- 00018660  0x000045c2 call  0x00004941 , 0x00000001 
- 00018661  0x000045c3 fetch  0x00000001 , 0x00000b22 
- 00018662  0x000045c4 compare  0x00000001 , 0x0000003f , 0x00000001 
- 00018663  0x000045c5 call  0x0000494a , 0x00000001 
- 00018664  0x000045c6 call  0x00004b61 
- 00018665  0x000045c7 branch  0x00004903 
- 00018666  0x000045ca bpatch  0x000000f7 , 0x0000401e 
- 00018667  0x000045cb call  0x00004919 
- 00018668  0x000045cc jam  0x00000000 , 0x00008a00 
- 00018669  0x000045cd nop  0x00002710 
- 00018670  0x000045ce jam  0x000000c0 , 0x00008a10 
- 00018671  0x000045cf hfetch  0x00000002 , 0x00008050 
- 00018672  0x000045d0 set0  0x0000000a , 0x0000003f 
- 00018673  0x000045d1 hstore  0x00000002 , 0x00008050 
- 00018674  0x000045d2 jam  0x0000003c , 0x00008a00 
- 00018675  0x000045d3 jam  0x000000ff , 0x00008a26 
- 00018676  0x000045d4 jam  0x000000ff , 0x00008a27 
- 00018677  0x000045d5 jam  0x00000000 , 0x00008a04 
- 00018678  0x000045d6 jam  0x00000002 , 0x00000c6b 
- 00018679  0x000045d7 setarg  0x00000d9d 
- 00018680  0x000045d8 arg  0x00000c6e , 0x00000005 
- 00018681  0x000045d9 isub  0x00000005 , 0x00000039 
- 00018682  0x000045da branch  0x00007ed4 
- 00018683  0x000045dd fetcht  0x00000001 , 0x00000c6c 
- 00018684  0x000045de branch  0x000067fb 
- 00018685  0x000045e0 fetch  0x00000001 , 0x00000d45 
- 00018686  0x000045e1 rtn  0x00000034 
- 00018687  0x000045e2 fetcht  0x00000001 , 0x00000c6c 
- 00018688  0x000045e3 call  0x0000681d 
- 00018689  0x000045e4 branch  0x000048ea , 0x00000001 
- 00018690  0x000045e5 rtn 
- 00018691  0x000045e9 arg  0x00000000 , 0x00000007 
- 00018692  0x000045ea call  0x00007f16 
- 00018693  0x000045eb nrtn  0x00000034 
- 00018694  0x000045ec fetch  0x00000001 , 0x00000d46 
- 00018695  0x000045ed nrtn  0x00000034 
- 00018696  0x000045ee fetch  0x00000001 , 0x00000d45 
- 00018697  0x000045ef ncall  0x00004bb7 , 0x00000034 
- 00018698  0x000045f0 rtn 
- 00018699  0x000045f3 arg  0x00000b68 , 0x00000005 
- 00018700  0x000045f4 setsect  0x00000000 , 0x00011212 
- 00018701  0x000045f5 setsect  0x00000001 , 0x00008000 
- 00018702  0x000045f6 setsect  0x00000002 , 0x00000000 
- 00018703  0x000045f7 setsect  0x00000003 , 0x00010000 
- 00018704  0x000045f8 istore  0x00000009 , 0x00000005 
- 00018705  0x000045f9 setsect  0x00000000 , 0x00022412 
- 00018706  0x000045fa setsect  0x00000001 , 0x00008604 
- 00018707  0x000045fb setsect  0x00000002 , 0x00001000 
- 00018708  0x000045fc setsect  0x00000003 , 0x00000008 
- 00018709  0x000045fd istore  0x00000009 , 0x00000005 
- 00018710  0x000045fe setsect  0x00000000 , 0x00000001 
- 00018711  0x000045ff istore  0x00000001 , 0x00000005 
- 00018712  0x00004600 rtn 
- 00018713  0x00004603 jam  0x00000002 , 0x00000c6b 
- 00018714  0x00004604 setarg  0x00000000 
- 00018715  0x00004605 store  0x00000001 , 0x00000b67 
- 00018716  0x00004606 store  0x00000002 , 0x00000c65 
- 00018717  0x00004607 pincrease  0x00000001 
- 00018718  0x00004608 store  0x00000002 , 0x00000c67 
- 00018719  0x00004609 pincrease  0x00000001 
- 00018720  0x0000460a store  0x00000002 , 0x00000c69 
- 00018721  0x0000460b setarg  0x00008ffa 
- 00018722  0x0000460c store  0x00000002 , 0x00000b7c 
- 00018723  0x0000460d setarg  0x0000903a 
- 00018724  0x0000460e store  0x00000002 , 0x00000b7e 
- 00018725  0x0000460f arg  0x00000b80 , 0x00000005 
- 00018726  0x00004610 arg  0x000090fe , 0x00000006 
- 00018727  0x00004611 call  0x00007eb3 
- 00018728  0x00004612 fetch  0x00000001 , 0x00000c6d 
- 00018729  0x00004613 ncall  0x0000492b , 0x00000034 
- 00018730  0x00004614 branch  0x0000490b 
- 00018731  0x00004617 store  0x00000001 , 0x00000ba2 
- 00018732  0x00004618 store  0x00000001 , 0x00000bbb 
- 00018733  0x00004619 rtn 
- 00018734  0x0000461b hfetch  0x00000001 , 0x00008a26 
- 00018735  0x0000461c bbit1  0x00000006 , 0x00004931 
- 00018736  0x0000461d rtn 
- 00018737  0x00004620 call  0x00004936 
- 00018738  0x00004621 call  0x00007f15 
- 00018739  0x00004622 setarg  0x00000280 
- 00018740  0x00004623 arg  0x00000000 , 0x00000007 
- 00018741  0x00004624 branch  0x00007f08 
- 00018742  0x00004627 fetch  0x00000001 , 0x00000d36 
- 00018743  0x00004628 bne  0x00000002 , 0x0000493b 
- 00018744  0x00004629 jam  0x00000000 , 0x00000d46 
- 00018745  0x0000462a jam  0x00000000 , 0x00000d47 
- 00018746  0x0000462b rtn 
- 00018747  0x0000462d fetch  0x00000001 , 0x00000d53 
- 00018748  0x0000462e rtn  0x00000034 
- 00018749  0x0000462f jam  0x00000000 , 0x00000d53 
- 00018750  0x00004630 jam  0x00000002 , 0x00000d36 
- 00018751  0x00004631 jam  0x00000001 , 0x00000d45 
- 00018752  0x00004632 rtn 
- 00018753  0x00004635 jam  0x00000001 , 0x00008a27 
- 00018754  0x00004636 branch  0x00004b37 
- 00018755  0x00004639 fetch  0x00000001 , 0x00000b22 
- 00018756  0x0000463a bbit1  0x00000004 , 0x00004955 
- 00018757  0x0000463b rtn 
- 00018758  0x0000463e hfetch  0x00000001 , 0x00008a18 
- 00018759  0x0000463f istore  0x00000001 , 0x00000005 
- 00018760  0x00004640 loop  0x00004946 
- 00018761  0x00004641 rtn 
- 00018762  0x00004644 bpatch  0x000000f8 , 0x0000401f 
- 00018763  0x00004645 jam  0x00000011 , 0x00008a26 
- 00018764  0x00004646 hfetch  0x00000001 , 0x00008a20 
- 00018765  0x00004647 store  0x00000001 , 0x00000b24 
- 00018766  0x00004648 copy  0x0000003f , 0x00000039 
- 00018767  0x00004649 branch  0x00004943 , 0x00000034 
- 00018768  0x0000464a arg  0x00000c6e , 0x00000005 
- 00018769  0x0000464b call  0x00004946 
- 00018770  0x0000464c fetch  0x00000001 , 0x00000b24 
- 00018771  0x0000464d sub  0x0000003f , 0x00000007 , 0x0000003e 
- 00018772  0x0000464e rtn  0x00000002 
- 00018773  0x00004650 fetch  0x00000001 , 0x00000c6e 
- 00018774  0x00004651 and_into  0x00000080 , 0x0000003f 
- 00018775  0x00004652 beq  0x00000080 , 0x0000495a 
- 00018776  0x00004653 beq  0x00000000 , 0x00004962 
- 00018777  0x00004654 branch  0x00002a8c 
- 00018778  0x00004657 fetch  0x00000001 , 0x00000c6e 
- 00018779  0x00004658 rshift4  0x0000003f , 0x0000003f 
- 00018780  0x00004659 rshift  0x0000003f , 0x0000003f 
- 00018781  0x0000465a and_into  0x00000003 , 0x0000003f 
- 00018782  0x0000465b beq  0x00000000 , 0x0000496a 
- 00018783  0x0000465c beq  0x00000001 , 0x00004970 
- 00018784  0x0000465d beq  0x00000002 , 0x00004975 
- 00018785  0x0000465e branch  0x00002a8c 
- 00018786  0x00004661 fetch  0x00000001 , 0x00000c6e 
- 00018787  0x00004662 rshift4  0x0000003f , 0x0000003f 
- 00018788  0x00004663 rshift  0x0000003f , 0x0000003f 
- 00018789  0x00004664 and_into  0x00000003 , 0x0000003f 
- 00018790  0x00004665 beq  0x00000000 , 0x00004976 
- 00018791  0x00004666 beq  0x00000001 , 0x0000497e 
- 00018792  0x00004667 beq  0x00000002 , 0x00004983 
- 00018793  0x00004668 branch  0x00002a8c 
- 00018794  0x0000466b fetch  0x00000001 , 0x00000c6f 
- 00018795  0x0000466c beq  0x00000008 , 0x0000498a 
- 00018796  0x0000466d beq  0x00000006 , 0x000049a0 
- 00018797  0x0000466e beq  0x0000000a , 0x000049ea 
- 00018798  0x0000466f beq  0x00000000 , 0x000049fc 
- 00018799  0x00004670 branch  0x00004984 
- 00018800  0x00004673 fetch  0x00000001 , 0x00000c6f 
- 00018801  0x00004674 beq  0x00000002 , 0x00004a2f 
- 00018802  0x00004675 beq  0x00000001 , 0x00004a33 
- 00018803  0x00004676 beq  0x00000003 , 0x00004a45 
- 00018804  0x00004677 branch  0x00004984 
- 00018805  0x0000467a branch  0x00004984 
- 00018806  0x0000467d fetch  0x00000001 , 0x00000c6f 
- 00018807  0x0000467e beq  0x00000001 , 0x00004a4f 
- 00018808  0x0000467f beq  0x00000003 , 0x00004a79 
- 00018809  0x00004680 beq  0x00000005 , 0x00004aa3 
- 00018810  0x00004681 beq  0x00000009 , 0x00004abc 
- 00018811  0x00004682 beq  0x0000000b , 0x00004ad7 
- 00018812  0x00004683 beq  0x00000007 , 0x00004984 
- 00018813  0x00004684 branch  0x00004984 
- 00018814  0x00004687 fetch  0x00000001 , 0x00000c6f 
- 00018815  0x00004688 beq  0x0000000a , 0x00004ae8 
- 00018816  0x00004689 beq  0x00000009 , 0x00004af9 
- 00018817  0x0000468a beq  0x0000000b , 0x00004b11 
- 00018818  0x0000468b branch  0x00004984 
- 00018819  0x0000468e branch  0x00004984 
- 00018820  0x00004691 hfetch  0x00000001 , 0x00008a11 
- 00018821  0x00004692 set1  0x00000000 , 0x0000003f 
- 00018822  0x00004693 hstore  0x00000001 , 0x00008a11 
- 00018823  0x00004694 branch  0x00004988 
- 00018824  0x00004697 jam  0x00000040 , 0x00008a12 
- 00018825  0x00004698 rtn 
- 00018826  0x0000469b fetch  0x00000001 , 0x00000c6e 
- 00018827  0x0000469c bne  0x00000080 , 0x00004984 
- 00018828  0x0000469d fetch  0x00000001 , 0x00000c72 
- 00018829  0x0000469e bne  0x00000000 , 0x00004984 
- 00018830  0x0000469f fetch  0x00000001 , 0x00000c73 
- 00018831  0x000046a0 bne  0x00000000 , 0x00004984 
- 00018832  0x000046a1 fetch  0x00000001 , 0x00000c74 
- 00018833  0x000046a2 bne  0x00000001 , 0x00004984 
- 00018834  0x000046a3 fetch  0x00000001 , 0x00000c75 
- 00018835  0x000046a4 bne  0x00000000 , 0x00004984 
- 00018836  0x000046a5 fetch  0x00000001 , 0x00000c70 
- 00018837  0x000046a6 bne  0x00000000 , 0x00004984 
- 00018838  0x000046a7 fetch  0x00000001 , 0x00000c71 
- 00018839  0x000046a8 bne  0x00000000 , 0x00004984 
- 00018840  0x000046a9 fetch  0x00000001 , 0x00000c6b 
- 00018841  0x000046aa beq  0x00000004 , 0x0000499c 
- 00018842  0x000046ab beq  0x00000003 , 0x0000499e 
- 00018843  0x000046ac branch  0x00004984 
- 00018844  0x000046af arg  0x00000001 , 0x00000012 
- 00018845  0x000046b0 branch  0x00004a14 
- 00018846  0x000046b3 arg  0x00000001 , 0x00000012 
- 00018847  0x000046b4 branch  0x00004a12 
- 00018848  0x000046b7 bpatch  0x000000f9 , 0x0000401f 
- 00018849  0x000046b8 set0  0x00000023 , 0x00000000 
- 00018850  0x000046b9 fetch  0x00000001 , 0x00000c71 
- 00018851  0x000046ba beq  0x00000001 , 0x000049b6 
- 00018852  0x000046bb beq  0x00000002 , 0x000049cf 
- 00018853  0x000046bc beq  0x00000003 , 0x000049d2 
- 00018854  0x000046bd beq  0x00000021 , 0x000049a9 
- 00018855  0x000046be beq  0x00000022 , 0x000049e0 
- 00018856  0x000046bf branch  0x00004984 
- 00018857  0x000046c2 jam  0x00000000 , 0x00000d4b 
- 00018858  0x000046c3 fetch  0x00000001 , 0x00000c72 
- 00018859  0x000046c4 beq  0x00000000 , 0x000049ae 
- 00018860  0x000046c5 beq  0x00000001 , 0x000049b2 
- 00018861  0x000046c6 branch  0x00004984 
- 00018862  0x000046c9 arg  0x00000b93 , 0x00000011 
- 00018863  0x000046ca ifetch  0x00000001 , 0x00000011 
- 00018864  0x000046cb iforce  0x00000012 
- 00018865  0x000046cc branch  0x00004b21 
- 00018866  0x000046cf arg  0x00000bac , 0x00000011 
- 00018867  0x000046d0 ifetch  0x00000001 , 0x00000011 
- 00018868  0x000046d1 iforce  0x00000012 
- 00018869  0x000046d2 branch  0x00004b21 
- 00018870  0x000046d8 fetch  0x00000001 , 0x00000d48 
- 00018871  0x000046d9 ncall  0x000049c7 , 0x00000034 
- 00018872  0x000046da setarg  0x00000b68 
- 00018873  0x000046db fetcht  0x00000001 , 0x00000b68 
- 00018874  0x000046dd store  0x00000002 , 0x00000d3f 
- 00018875  0x000046de storet  0x00000001 , 0x00000d41 
- 00018876  0x000046df fetch  0x00000001 , 0x00000c74 
- 00018877  0x000046e0 isub  0x00000002 , 0x0000003e 
- 00018878  0x000046e1 nbranch  0x000049c5 , 0x00000002 
- 00018879  0x000046e3 fetch  0x00000001 , 0x00000d41 
- 00018880  0x000046e5 iforce  0x00000012 
- 00018881  0x000046e6 fetch  0x00000002 , 0x00000d3f 
- 00018882  0x000046e7 add  0x0000003f , 0x00000001 , 0x0000003f 
- 00018883  0x000046e8 iforce  0x00000011 
- 00018884  0x000046e9 branch  0x00004b21 
- 00018885  0x000046eb fetch  0x00000001 , 0x00000c74 
- 00018886  0x000046ec branch  0x000049c0 
- 00018887  0x000046ef hfetch  0x00000001 , 0x00008a04 
- 00018888  0x000046f0 ncall  0x000049cb , 0x00000034 
- 00018889  0x000046f1 jam  0x00000000 , 0x00000d48 
- 00018890  0x000046f2 rtn 
- 00018891  0x000046f4 hfetch  0x00000001 , 0x00008a04 
- 00018892  0x000046f5 set1  0x00000007 , 0x0000003f 
- 00018893  0x000046f6 hstore  0x00000001 , 0x00008a04 
- 00018894  0x000046f7 rtn 
- 00018895  0x000046fa setarg  0x00000b80 
- 00018896  0x000046fb fetcht  0x00000001 , 0x00000b80 
- 00018897  0x000046fc branch  0x000049ba 
- 00018898  0x000046ff fetch  0x00000001 , 0x00000c70 
- 00018899  0x00004700 sub  0x0000003f , 0x00000003 , 0x0000003e 
- 00018900  0x00004701 nbranch  0x00004984 , 0x00000002 
- 00018901  0x00004702 fetch  0x00000001 , 0x00000c70 
- 00018902  0x00004703 arg  0x00000be4 , 0x00000011 
- 00018903  0x00004704 beq  0x00000000 , 0x00004b1e 
- 00018904  0x00004705 set1  0x00000023 , 0x00000000 
- 00018905  0x00004706 arg  0x00000be9 , 0x00000011 
- 00018906  0x00004707 beq  0x00000001 , 0x00004b1e 
- 00018907  0x00004708 arg  0x00000c07 , 0x00000011 
- 00018908  0x00004709 beq  0x00000002 , 0x00004b1e 
- 00018909  0x0000470a arg  0x00000c47 , 0x00000011 
- 00018910  0x0000470b beq  0x00000003 , 0x00004b1e 
- 00018911  0x0000470c rtn 
- 00018912  0x0000470f fetch  0x00000002 , 0x00000c72 
- 00018913  0x00004710 beq  0x00000001 , 0x000049e5 
- 00018914  0x00004711 fetch  0x00000002 , 0x00000b7c 
- 00018915  0x00004712 copy  0x0000003f , 0x00000011 
- 00018916  0x00004714 branch  0x00004b1e 
- 00018917  0x00004716 jam  0x00000001 , 0x00000d45 
- 00018918  0x00004717 jam  0x00000001 , 0x00000d36 
- 00018919  0x00004718 fetch  0x00000002 , 0x00000b7e 
- 00018920  0x00004719 copy  0x0000003f , 0x00000011 
- 00018921  0x0000471b branch  0x00004b1e 
- 00018922  0x0000471f fetch  0x00000001 , 0x00000c6b 
- 00018923  0x00004720 bne  0x00000004 , 0x00004984 
- 00018924  0x00004721 fetch  0x00000001 , 0x00000c6e 
- 00018925  0x00004722 bne  0x00000081 , 0x00004984 
- 00018926  0x00004723 fetch  0x00000001 , 0x00000c70 
- 00018927  0x00004724 bne  0x00000000 , 0x00004984 
- 00018928  0x00004725 fetch  0x00000001 , 0x00000c71 
- 00018929  0x00004726 bne  0x00000000 , 0x00004984 
- 00018930  0x00004727 fetch  0x00000001 , 0x00000c74 
- 00018931  0x00004728 bne  0x00000001 , 0x00004984 
- 00018932  0x00004729 fetch  0x00000001 , 0x00000c75 
- 00018933  0x0000472a bne  0x00000000 , 0x00004984 
- 00018934  0x0000472b fetch  0x00000001 , 0x00000c72 
- 00018935  0x0000472c bne  0x00000000 , 0x00004984 
- 00018936  0x0000472d fetch  0x00000001 , 0x00000c73 
- 00018937  0x0000472e bne  0x00000000 , 0x00004984 
- 00018938  0x0000472f arg  0x00000001 , 0x00000012 
- 00018939  0x00004730 branch  0x00004a12 
- 00018940  0x00004734 fetch  0x00000001 , 0x00000c6b 
- 00018941  0x00004735 beq  0x00000002 , 0x00004984 
- 00018942  0x00004736 fetch  0x00000001 , 0x00000c70 
- 00018943  0x00004737 bne  0x00000000 , 0x00004984 
- 00018944  0x00004738 fetch  0x00000001 , 0x00000c71 
- 00018945  0x00004739 bne  0x00000000 , 0x00004984 
- 00018946  0x0000473a fetch  0x00000001 , 0x00000c74 
- 00018947  0x0000473b bne  0x00000002 , 0x00004984 
- 00018948  0x0000473c fetch  0x00000001 , 0x00000c75 
- 00018949  0x0000473d bne  0x00000000 , 0x00004984 
- 00018950  0x0000473e fetch  0x00000001 , 0x00000c73 
- 00018951  0x0000473f bne  0x00000000 , 0x00004984 
- 00018952  0x00004740 fetch  0x00000001 , 0x00000c6e 
- 00018953  0x00004741 beq  0x00000080 , 0x00004a0d 
- 00018954  0x00004742 beq  0x00000081 , 0x00004a18 
- 00018955  0x00004743 beq  0x00000082 , 0x00004a1c 
- 00018956  0x00004744 branch  0x00004984 
- 00018957  0x00004747 fetch  0x00000001 , 0x00000c72 
- 00018958  0x00004748 bne  0x00000000 , 0x00004984 
- 00018959  0x00004749 arg  0x00000002 , 0x00000012 
- 00018960  0x0000474a fetch  0x00000001 , 0x00000d39 
- 00018961  0x0000474b beq  0x00000001 , 0x00004a16 
- 00018962  0x0000474e arg  0x00000c65 , 0x00000011 
- 00018963  0x0000474f branch  0x00004b21 
- 00018964  0x00004751 arg  0x00000c67 , 0x00000011 
- 00018965  0x00004752 branch  0x00004b21 
- 00018966  0x00004754 arg  0x00000c69 , 0x00000011 
- 00018967  0x00004755 branch  0x00004b21 
- 00018968  0x00004758 fetch  0x00000001 , 0x00000c6b 
- 00018969  0x00004759 bne  0x00000004 , 0x00004984 
- 00018970  0x0000475a arg  0x00000002 , 0x00000012 
- 00018971  0x0000475b branch  0x00004a12 
- 00018972  0x0000475e fetch  0x00000001 , 0x00000c6b 
- 00018973  0x0000475f bne  0x00000004 , 0x00004984 
- 00018974  0x00004760 fetch  0x00000001 , 0x00000c72 
- 00018975  0x00004761 beq  0x00000081 , 0x00004a29 
- 00018976  0x00004762 beq  0x00000082 , 0x00004a2b 
- 00018977  0x00004763 beq  0x00000083 , 0x00004a2d 
- 00018978  0x00004764 and_into  0x0000007f , 0x0000003f 
- 00018979  0x00004765 beq  0x00000000 , 0x00004a25 
- 00018980  0x00004766 branch  0x00004984 
- 00018981  0x00004769 fetch  0x00000001 , 0x00000d3b 
- 00018982  0x0000476b arg  0x00000002 , 0x00000012 
- 00018983  0x0000476c beq  0x00000001 , 0x00004a14 
- 00018984  0x0000476d branch  0x00004a12 
- 00018985  0x0000476f fetch  0x00000001 , 0x00000d3c 
- 00018986  0x00004770 branch  0x00004a26 
- 00018987  0x00004772 fetch  0x00000001 , 0x00000d3d 
- 00018988  0x00004773 branch  0x00004a26 
- 00018989  0x00004775 fetch  0x00000001 , 0x00000d3e 
- 00018990  0x00004776 branch  0x00004a26 
- 00018991  0x00004779 jam  0x00000001 , 0x00000d4c 
- 00018992  0x0000477a arg  0x00000d4d , 0x00000011 
- 00018993  0x0000477b arg  0x00000001 , 0x00000012 
- 00018994  0x0000477c branch  0x00004b21 
- 00018995  0x0000477f fetch  0x00000002 , 0x00000c70 
- 00018996  0x00004780 arg  0x000001ba , 0x00000002 
- 00018997  0x00004781 isub  0x00000002 , 0x0000003e 
- 00018998  0x00004782 nbranch  0x00004984 , 0x00000005 
- 00018999  0x00004783 set0  0x00000023 , 0x00000000 
- 00019000  0x00004785 fetch  0x00000001 , 0x00000d42 
- 00019001  0x00004786 nbranch  0x00004a42 , 0x00000034 
- 00019002  0x00004787 jam  0x00000000 , 0x00000cf6 
- 00019003  0x00004789 fetch  0x00000001 , 0x00000c74 
- 00019004  0x0000478a iforce  0x00000012 
- 00019005  0x0000478b arg  0x00000cf6 , 0x00000011 
- 00019006  0x0000478c call  0x00004b21 
- 00019007  0x0000478e arg  0x00000cf6 , 0x00000005 
- 00019008  0x0000478f arg  0x00000008 , 0x00000039 
- 00019009  0x00004790 branch  0x00007ec6 
- 00019010  0x00004792 jam  0x00000000 , 0x00000d42 
- 00019011  0x00004793 jam  0x00000001 , 0x00000cf6 
- 00019012  0x00004794 branch  0x00004a3b 
- 00019013  0x00004797 fetch  0x00000001 , 0x00000c74 
- 00019014  0x00004798 bne  0x00000001 , 0x00004984 
- 00019015  0x00004799 jam  0x00000001 , 0x00000d4b 
- 00019016  0x0000479a arg  0x00000001 , 0x00000012 
- 00019017  0x0000479b fetch  0x00000001 , 0x00000d49 
- 00019018  0x0000479c beq  0x00000000 , 0x00004a4d 
- 00019019  0x0000479d beq  0x00000001 , 0x00004a4e 
- 00019020  0x0000479e branch  0x00004a12 
- 00019021  0x000047a0 branch  0x00004a14 
- 00019022  0x000047a2 branch  0x00004a12 
- 00019023  0x000047a8 fetch  0x00000001 , 0x00000c6b 
- 00019024  0x000047a9 bne  0x00000004 , 0x00004984 
- 00019025  0x000047aa fetch  0x00000001 , 0x00000c74 
- 00019026  0x000047ab bne  0x00000000 , 0x00004984 
- 00019027  0x000047ac fetch  0x00000001 , 0x00000c75 
- 00019028  0x000047ad bne  0x00000000 , 0x00004984 
- 00019029  0x000047ae fetch  0x00000001 , 0x00000c71 
- 00019030  0x000047af bne  0x00000000 , 0x00004984 
- 00019031  0x000047b0 fetch  0x00000001 , 0x00000c73 
- 00019032  0x000047b1 bne  0x00000000 , 0x00004984 
- 00019033  0x000047b2 fetch  0x00000001 , 0x00000c6e 
- 00019034  0x000047b3 beq  0x00000000 , 0x00004a5e 
- 00019035  0x000047b4 beq  0x00000001 , 0x00004a66 
- 00019036  0x000047b5 beq  0x00000002 , 0x00004a67 
- 00019037  0x000047b6 branch  0x00004984 
- 00019038  0x000047b9 fetch  0x00000001 , 0x00000c70 
- 00019039  0x000047ba bne  0x00000001 , 0x00004984 
- 00019040  0x000047bb hfetch  0x00000001 , 0x00008a00 
- 00019041  0x000047bc set0  0x00000007 , 0x0000003f 
- 00019042  0x000047bd hstore  0x00000001 , 0x00008a00 
- 00019043  0x000047be jam  0x00000000 , 0x00000d39 
- 00019044  0x000047bf jam  0x00000001 , 0x00000d3a 
- 00019045  0x000047c0 branch  0x00004988 
- 00019046  0x000047c3 branch  0x00004984 
- 00019047  0x000047c6 fetch  0x00000001 , 0x00000c70 
- 00019048  0x000047c7 bne  0x00000000 , 0x00004984 
- 00019049  0x000047c8 fetch  0x00000001 , 0x00000c72 
- 00019050  0x000047c9 beq  0x00000081 , 0x00004a72 
- 00019051  0x000047ca beq  0x00000082 , 0x00004a75 
- 00019052  0x000047cb beq  0x00000083 , 0x00004a77 
- 00019053  0x000047cc and_into  0x0000007f , 0x0000003f 
- 00019054  0x000047cd beq  0x00000000 , 0x00004a70 
- 00019055  0x000047ce branch  0x00004984 
- 00019056  0x000047d1 jam  0x00000000 , 0x00000d3b 
- 00019057  0x000047d2 branch  0x00004988 
- 00019058  0x000047d4 jam  0x00000000 , 0x00000d3c 
- 00019059  0x000047d6 jam  0x00000001 , 0x00000d53 
- 00019060  0x000047d7 branch  0x00004988 
- 00019061  0x000047d9 jam  0x00000000 , 0x00000d3d 
- 00019062  0x000047da branch  0x00004a73 
- 00019063  0x000047dc jam  0x00000000 , 0x00000d3e 
- 00019064  0x000047dd branch  0x00004a73 
- 00019065  0x000047e1 fetch  0x00000001 , 0x00000c74 
- 00019066  0x000047e2 bne  0x00000000 , 0x00004984 
- 00019067  0x000047e3 fetch  0x00000001 , 0x00000c75 
- 00019068  0x000047e4 bne  0x00000000 , 0x00004984 
- 00019069  0x000047e5 fetch  0x00000001 , 0x00000c6e 
- 00019070  0x000047e6 beq  0x00000000 , 0x00004a82 
- 00019071  0x000047e7 beq  0x00000001 , 0x00004a8f 
- 00019072  0x000047e8 beq  0x00000002 , 0x00004a90 
- 00019073  0x000047e9 branch  0x00004984 
- 00019074  0x000047ec fetch  0x00000001 , 0x00000c70 
- 00019075  0x000047ed bne  0x00000001 , 0x00004984 
- 00019076  0x000047ee hfetch  0x00000001 , 0x00008a00 
- 00019077  0x000047ef set1  0x00000007 , 0x0000003f 
- 00019078  0x000047f0 hstore  0x00000001 , 0x00008a00 
- 00019079  0x000047f1 jam  0x00000001 , 0x00000d39 
- 00019080  0x000047f2 jam  0x00000003 , 0x00000d36 
- 00019081  0x000047f3 jam  0x00000000 , 0x00000d43 
- 00019082  0x000047f4 call  0x00004988 
- 00019083  0x000047f6 call  0x00007f15 
- 00019084  0x000047f7 setarg  0x00001388 
- 00019085  0x000047f8 arg  0x0000000f , 0x00000007 
- 00019086  0x000047f9 branch  0x00007f08 
- 00019087  0x000047fc branch  0x00004984 
- 00019088  0x000047ff fetch  0x00000001 , 0x00000c70 
- 00019089  0x00004800 bne  0x00000000 , 0x00004984 
- 00019090  0x00004801 fetch  0x00000001 , 0x00000c71 
- 00019091  0x00004802 bne  0x00000000 , 0x00004984 
- 00019092  0x00004803 fetch  0x00000001 , 0x00000c72 
- 00019093  0x00004804 beq  0x00000081 , 0x00004a9d 
- 00019094  0x00004805 beq  0x00000082 , 0x00004a9f 
- 00019095  0x00004806 beq  0x00000083 , 0x00004aa1 
- 00019096  0x00004807 and_into  0x0000007f , 0x0000003f 
- 00019097  0x00004808 beq  0x00000000 , 0x00004a9b 
- 00019098  0x00004809 branch  0x00004984 
- 00019099  0x0000480c jam  0x00000001 , 0x00000d3b 
- 00019100  0x0000480d branch  0x00004988 
- 00019101  0x0000480f jam  0x00000001 , 0x00000d3c 
- 00019102  0x00004810 branch  0x00004988 
- 00019103  0x00004812 jam  0x00000001 , 0x00000d3d 
- 00019104  0x00004813 branch  0x00004988 
- 00019105  0x00004815 jam  0x00000001 , 0x00000d3e 
- 00019106  0x00004816 branch  0x00004988 
- 00019107  0x0000481a fetch  0x00000001 , 0x00000c6e 
- 00019108  0x0000481b bne  0x00000000 , 0x00004984 
- 00019109  0x0000481c fetch  0x00000001 , 0x00000c72 
- 00019110  0x0000481d bne  0x00000000 , 0x00004984 
- 00019111  0x0000481e fetch  0x00000001 , 0x00000c73 
- 00019112  0x0000481f bne  0x00000000 , 0x00004984 
- 00019113  0x00004820 fetch  0x00000001 , 0x00000c74 
- 00019114  0x00004821 bne  0x00000000 , 0x00004984 
- 00019115  0x00004822 fetch  0x00000001 , 0x00000c75 
- 00019116  0x00004823 bne  0x00000000 , 0x00004984 
- 00019117  0x00004824 fetch  0x00000001 , 0x00000c71 
- 00019118  0x00004825 bne  0x00000000 , 0x00004984 
- 00019119  0x00004826 fetch  0x00000001 , 0x00000c70 
- 00019120  0x00004827 and_into  0x00000080 , 0x0000003f 
- 00019121  0x00004828 bne  0x00000000 , 0x00004984 
- 00019122  0x00004829 fetch  0x00000001 , 0x00000c70 
- 00019123  0x0000482a bne  0x00000000 , 0x00004aba 
- 00019124  0x0000482c jam  0x00000002 , 0x00000c6b 
- 00019125  0x0000482e fetch  0x00000001 , 0x00000c70 
- 00019126  0x0000482f hstore  0x00000001 , 0x00008a04 
- 00019127  0x00004830 call  0x00004988 
- 00019128  0x00004831 jam  0x00000001 , 0x00000d48 
- 00019129  0x00004832 rtn 
- 00019130  0x00004834 jam  0x00000003 , 0x00000c6b 
- 00019131  0x00004835 branch  0x00004ab5 
- 00019132  0x00004839 fetch  0x00000001 , 0x00000c6b 
- 00019133  0x0000483a beq  0x00000002 , 0x00004984 
- 00019134  0x0000483b fetch  0x00000001 , 0x00000c6e 
- 00019135  0x0000483c bne  0x00000000 , 0x00004984 
- 00019136  0x0000483d fetch  0x00000001 , 0x00000c72 
- 00019137  0x0000483e bne  0x00000000 , 0x00004984 
- 00019138  0x0000483f fetch  0x00000001 , 0x00000c73 
- 00019139  0x00004840 bne  0x00000000 , 0x00004984 
- 00019140  0x00004841 fetch  0x00000001 , 0x00000c74 
- 00019141  0x00004842 bne  0x00000000 , 0x00004984 
- 00019142  0x00004843 fetch  0x00000001 , 0x00000c75 
- 00019143  0x00004844 bne  0x00000000 , 0x00004984 
- 00019144  0x00004845 fetch  0x00000001 , 0x00000c71 
- 00019145  0x00004846 bne  0x00000000 , 0x00004984 
- 00019146  0x00004847 fetch  0x00000001 , 0x00000c70 
- 00019147  0x00004848 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00019148  0x00004849 nbranch  0x00004984 , 0x00000002 
- 00019149  0x0000484a fetch  0x00000001 , 0x00000c6b 
- 00019150  0x0000484b beq  0x00000003 , 0x00004ad1 
- 00019151  0x0000484c beq  0x00000004 , 0x00004ad1 
- 00019152  0x0000484d branch  0x00004984 
- 00019153  0x00004851 fetch  0x00000001 , 0x00000c70 
- 00019154  0x00004852 beq  0x00000000 , 0x00004ad5 
- 00019155  0x00004853 jam  0x00000004 , 0x00000c6b 
- 00019156  0x00004854 branch  0x00004988 
- 00019157  0x00004856 jam  0x00000003 , 0x00000c6b 
- 00019158  0x00004857 branch  0x00004988 
- 00019159  0x0000485b fetch  0x00000001 , 0x00000c6b 
- 00019160  0x0000485c bne  0x00000004 , 0x00004984 
- 00019161  0x0000485d fetch  0x00000001 , 0x00000c6e 
- 00019162  0x0000485e bne  0x00000001 , 0x00004984 
- 00019163  0x0000485f fetch  0x00000001 , 0x00000c70 
- 00019164  0x00004860 bne  0x00000000 , 0x00004984 
- 00019165  0x00004861 fetch  0x00000001 , 0x00000c71 
- 00019166  0x00004862 bne  0x00000000 , 0x00004984 
- 00019167  0x00004863 fetch  0x00000001 , 0x00000c74 
- 00019168  0x00004864 bne  0x00000000 , 0x00004984 
- 00019169  0x00004865 fetch  0x00000001 , 0x00000c75 
- 00019170  0x00004866 bne  0x00000000 , 0x00004984 
- 00019171  0x00004867 fetch  0x00000001 , 0x00000c72 
- 00019172  0x00004868 bne  0x00000000 , 0x00004984 
- 00019173  0x00004869 fetch  0x00000001 , 0x00000c73 
- 00019174  0x0000486a bne  0x00000000 , 0x00004984 
- 00019175  0x0000486b branch  0x00004988 
- 00019176  0x0000486f jam  0x00000001 , 0x00000d4c 
- 00019177  0x00004870 fetch  0x00000001 , 0x00000c71 
- 00019178  0x00004871 store  0x00000001 , 0x00000d4d 
- 00019179  0x00004872 fetch  0x00000001 , 0x00000c72 
- 00019180  0x00004873 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00019181  0x00004874 call  0x00004af5 , 0x00000005 
- 00019182  0x00004875 fetch  0x00000001 , 0x00000d36 
- 00019183  0x00004876 bne  0x00000004 , 0x00004988 
- 00019184  0x00004877 jam  0x00000002 , 0x00000d36 
- 00019185  0x00004878 call  0x00004988 
- 00019186  0x00004879 nop  0x00007530 
- 00019187  0x0000487a nop  0x00007530 
- 00019188  0x0000487b rtn 
- 00019189  0x0000487d jam  0x00000001 , 0x00000d45 
- 00019190  0x0000487e jam  0x00000000 , 0x00000d3a 
- 00019191  0x0000487f jam  0x00000004 , 0x00000d36 
- 00019192  0x00004880 rtn 
- 00019193  0x00004884 jam  0x00000001 , 0x00000d50 
- 00019194  0x00004885 call  0x00004b03 
- 00019195  0x00004886 fetch  0x00000002 , 0x00000c70 
- 00019196  0x00004887 store  0x00000002 , 0x00000d4e 
- 00019197  0x00004888 fetch  0x00000001 , 0x00000c74 
- 00019198  0x00004889 iforce  0x00000039 
- 00019199  0x0000488a arg  0x00000c76 , 0x00000006 
- 00019200  0x0000488b arg  0x00000cb6 , 0x00000005 
- 00019201  0x0000488c call  0x00007f01 
- 00019202  0x0000488d branch  0x00004988 
- 00019203  0x00004890 fetch  0x00000002 , 0x00000c70 
- 00019204  0x00004891 arg  0x00000200 , 0x00000002 
- 00019205  0x00004892 isub  0x00000002 , 0x0000003e 
- 00019206  0x00004893 nrtn  0x00000005 
- 00019207  0x00004894 fetch  0x00000002 , 0x00000c72 
- 00019208  0x00004895 arg  0x00000000 , 0x00000002 
- 00019209  0x00004896 isub  0x00000002 , 0x0000003e 
- 00019210  0x00004897 nrtn  0x00000005 
- 00019211  0x00004898 fetch  0x00000002 , 0x00000c74 
- 00019212  0x00004899 arg  0x00000001 , 0x00000002 
- 00019213  0x0000489a isub  0x00000002 , 0x0000003e 
- 00019214  0x0000489b nrtn  0x00000005 
- 00019215  0x0000489c jam  0x00000001 , 0x00000d43 
- 00019216  0x0000489d rtn 
- 00019217  0x000048a1 fetch  0x00000001 , 0x00000c74 
- 00019218  0x000048a2 bne  0x00000000 , 0x00004984 
- 00019219  0x000048a3 fetch  0x00000001 , 0x00000c70 
- 00019220  0x000048a4 beq  0x00000000 , 0x00004b17 
- 00019221  0x000048a5 beq  0x00000001 , 0x00004b1a 
- 00019222  0x000048a6 branch  0x00004984 
- 00019223  0x000048a8 jam  0x00000000 , 0x00000d4a 
- 00019224  0x000048a9 jam  0x00000001 , 0x00000d49 
- 00019225  0x000048aa branch  0x00004988 
- 00019226  0x000048ac jam  0x00000001 , 0x00000d44 
- 00019227  0x000048ad jam  0x00000001 , 0x00000d4a 
- 00019228  0x000048ae jam  0x00000000 , 0x00000d49 
- 00019229  0x000048af branch  0x00004988 
- 00019230  0x000048b3 ifetch  0x00000001 , 0x00000011 
- 00019231  0x000048b4 iforce  0x00000012 
- 00019232  0x000048b5 increase  0x00000001 , 0x00000011 
- 00019233  0x000048b8 bpatch  0x000000fa , 0x0000401f 
- 00019234  0x000048b9 bmark0  0x00000023 , 0x00004b2c 
- 00019235  0x000048ba add  0x00000012 , 0x00000001 , 0x0000003f 
- 00019236  0x000048bb lshift  0x0000003f , 0x0000003f 
- 00019237  0x000048bc hstore  0x00000001 , 0x00008a18 
- 00019238  0x000048bd jam  0x00000003 , 0x00008a18 
- 00019239  0x000048be fetch  0x00000001 , 0x00000c74 
- 00019240  0x000048bf increase  0xfffffffe , 0x0000003f 
- 00019241  0x000048c0 rshift  0x0000003f , 0x0000003f 
- 00019242  0x000048c1 store  0x00000001 , 0x00000c74 
- 00019243  0x000048c2 beq  0x00000000 , 0x00004b35 
- 00019244  0x000048c4 fetch  0x00000002 , 0x00000c74 
- 00019245  0x000048c5 isub  0x00000012 , 0x0000003e 
- 00019246  0x000048c6 branch  0x00004b30 , 0x00000002 
- 00019247  0x000048c7 copy  0x0000003f , 0x00000012 
- 00019248  0x000048c9 deposit  0x00000011 
- 00019249  0x000048ca store  0x00000002 , 0x00000b65 
- 00019250  0x000048cb deposit  0x00000012 
- 00019251  0x000048cc store  0x00000001 , 0x00000b67 
- 00019252  0x000048cd branch  0x00004b37 
- 00019253  0x000048d0 arg  0x00000000 , 0x00000007 
- 00019254  0x000048d1 branch  0x00004b57 
- 00019255  0x000048d5 bpatch  0x000000fb , 0x0000401f 
- 00019256  0x000048d6 fetch  0x00000001 , 0x00000b67 
- 00019257  0x000048d7 rtn  0x00000034 
- 00019258  0x000048d8 copy  0x0000003f , 0x00000039 
- 00019259  0x000048d9 sub  0x0000003f , 0x00000040 , 0x0000003e 
- 00019260  0x000048da branch  0x00004b3e , 0x00000002 
- 00019261  0x000048db arg  0x00000040 , 0x00000039 
- 00019262  0x000048dd fetch  0x00000001 , 0x00000b67 
- 00019263  0x000048de isub  0x00000039 , 0x0000003f 
- 00019264  0x000048df store  0x00000001 , 0x00000b67 
- 00019265  0x000048e0 fetch  0x00000002 , 0x00000b65 
- 00019266  0x000048e1 copy  0x0000003f , 0x00000006 
- 00019267  0x000048e3 ifetch  0x00000001 , 0x00000006 
- 00019268  0x000048e4 hstore  0x00000001 , 0x00008a18 
- 00019269  0x000048e5 bmark0  0x00000023 , 0x00004b47 
- 00019270  0x000048e6 jam  0x00000000 , 0x00008a18 
- 00019271  0x000048e8 loop  0x00004b43 
- 00019272  0x000048e9 copy  0x00000006 , 0x0000003f 
- 00019273  0x000048ea store  0x00000002 , 0x00000b65 
- 00019274  0x000048eb arg  0x00000000 , 0x00000007 
- 00019275  0x000048ec call  0x00004b57 
- 00019276  0x000048ed fetch  0x00000001 , 0x00000b67 
- 00019277  0x000048ee nrtn  0x00000034 
- 00019278  0x000048ef fetch  0x00000001 , 0x00000d36 
- 00019279  0x000048f0 rtnne  0x00000001 
- 00019280  0x000048f1 jam  0x00000002 , 0x00000d36 
- 00019281  0x000048f2 rtn 
- 00019282  0x000048f6 arg  0x00008a19 , 0x00000011 
- 00019283  0x000048f7 arg  0x00000001 , 0x00000007 
- 00019284  0x000048f9 ifetch  0x00000001 , 0x00000006 
- 00019285  0x000048fa istore  0x00000001 , 0x00000011 
- 00019286  0x000048fb loop  0x00004b54 
- 00019287  0x000048fd setarg  0x00000000 
- 00019288  0x000048fe qset1  0x0000003f 
- 00019289  0x000048ff hstore  0x00000001 , 0x00008a10 
- 00019290  0x00004900 fetcht  0x00000001 , 0x00000d37 
- 00019291  0x00004901 ior  0x00000002 , 0x0000003f 
- 00019292  0x00004902 store  0x00000001 , 0x00000d37 
- 00019293  0x00004903 rtn 
- 00019294  0x00004906 arg  0x00000002 , 0x00000007 
- 00019295  0x00004907 arg  0x00008a1a , 0x00000011 
- 00019296  0x00004908 branch  0x00004b54 
- 00019297  0x0000490b bpatch  0x000000fc , 0x0000401f 
- 00019298  0x0000490c fetch  0x00000001 , 0x00000d38 
- 00019299  0x0000490d rtn  0x00000034 
- 00019300  0x0000490e fetch  0x00000001 , 0x00000d37 
- 00019301  0x0000490f nbranch  0x00004bac , 0x00000034 
- 00019302  0x00004910 fetch  0x00000001 , 0x00000d45 
- 00019303  0x00004911 branch  0x00004b86 , 0x00000034 
- 00019304  0x00004912 fetch  0x00000001 , 0x00000d36 
- 00019305  0x00004913 beq  0x00000003 , 0x00004bbf 
- 00019306  0x00004914 bne  0x00000002 , 0x00004b86 
- 00019307  0x00004915 fetch  0x00000001 , 0x00000d3a 
- 00019308  0x00004916 nbranch  0x00004b86 , 0x00000034 
- 00019309  0x00004917 call  0x00004b6f 
- 00019310  0x00004918 branch  0x00004b7a 
- 00019311  0x0000491b fetch  0x00000001 , 0x00000d38 
- 00019312  0x0000491c rtnbit0  0x00000001 
- 00019313  0x0000491d fetch  0x00000001 , 0x00000d37 
- 00019314  0x0000491e rtnbit1  0x00000001 
- 00019315  0x0000491f fetch  0x00000001 , 0x00000d38 
- 00019316  0x00004920 set0  0x00000001 , 0x0000003f 
- 00019317  0x00004921 store  0x00000001 , 0x00000d38 
- 00019318  0x00004922 fetch  0x00000001 , 0x00000d51 
- 00019319  0x00004923 rtn  0x00000034 
- 00019320  0x00004924 beq  0x00000010 , 0x00004ba8 
- 00019321  0x00004925 branch  0x00002a8c 
- 00019322  0x00004928 fetch  0x00000001 , 0x00000d38 
- 00019323  0x00004929 rtnbit0  0x00000002 
- 00019324  0x0000492a fetch  0x00000001 , 0x00000d37 
- 00019325  0x0000492b rtnbit1  0x00000002 
- 00019326  0x0000492c fetch  0x00000001 , 0x00000d38 
- 00019327  0x0000492d set0  0x00000002 , 0x0000003f 
- 00019328  0x0000492e store  0x00000001 , 0x00000d38 
- 00019329  0x0000492f fetch  0x00000001 , 0x00000d52 
- 00019330  0x00004930 rtn  0x00000034 
- 00019331  0x00004931 beq  0x00000020 , 0x00004b89 
- 00019332  0x00004932 beq  0x00000021 , 0x00004ba4 
- 00019333  0x00004933 branch  0x00002a8c 
- 00019334  0x00004937 arg  0x00000d54 , 0x00000005 
- 00019335  0x00004938 arg  0x00000006 , 0x00000039 
- 00019336  0x00004939 branch  0x00007ec6 
- 00019337  0x0000493c fetch  0x00000001 , 0x00000d4c 
- 00019338  0x0000493d fetcht  0x00000001 , 0x00000d4b 
- 00019339  0x0000493e iand  0x00000002 , 0x0000003f 
- 00019340  0x0000493f branch  0x00004ba0 , 0x00000034 
- 00019341  0x00004940 fetcht  0x00000001 , 0x00000d4a 
- 00019342  0x00004941 iadd  0x00000002 , 0x0000003f 
- 00019343  0x00004942 beq  0x00000001 , 0x00004b91 
- 00019344  0x00004943 branch  0x00004ba0 
- 00019345  0x00004946 jam  0x00000000 , 0x00000d52 
- 00019346  0x00004948 fetch  0x00000001 , 0x00000d55 
- 00019347  0x00004949 beq  0x00000002 , 0x00004ba1 
- 00019348  0x0000494a beq  0x00000003 , 0x00004ba1 
- 00019349  0x0000494b fetch  0x00000001 , 0x00000d55 
- 00019350  0x0000494c store  0x00000001 , 0x00000d54 
- 00019351  0x0000494d fetch  0x00000001 , 0x00000d56 
- 00019352  0x0000494e istore  0x00000001 , 0x00000005 
- 00019353  0x0000494f fetch  0x00000001 , 0x00000d58 
- 00019354  0x00004950 istore  0x00000001 , 0x00000005 
- 00019355  0x00004951 fetch  0x00000001 , 0x00000d5a 
- 00019356  0x00004952 istore  0x00000001 , 0x00000005 
- 00019357  0x00004953 arg  0x00000004 , 0x00000039 
- 00019358  0x00004954 arg  0x00000d54 , 0x00000006 
- 00019359  0x00004955 branch  0x00004b5e 
- 00019360  0x00004958 jam  0x00000000 , 0x00000d52 
- 00019361  0x0000495a arg  0x00000008 , 0x00000039 
- 00019362  0x0000495b arg  0x00000d54 , 0x00000006 
- 00019363  0x0000495c branch  0x00004b5e 
- 00019364  0x0000495f jam  0x00000000 , 0x00000d52 
- 00019365  0x00004960 arg  0x00000003 , 0x00000039 
- 00019366  0x00004961 arg  0x00000d74 , 0x00000006 
- 00019367  0x00004962 branch  0x00004b5e 
- 00019368  0x00004965 jam  0x00000000 , 0x00000d51 
- 00019369  0x00004966 arg  0x00000008 , 0x00000039 
- 00019370  0x00004967 arg  0x00000d64 , 0x00000006 
- 00019371  0x00004968 branch  0x00004b52 
- 00019372  0x0000496b fetch  0x00000001 , 0x00000d36 
- 00019373  0x0000496c beq  0x00000003 , 0x00004bb0 
- 00019374  0x0000496d beq  0x00000002 , 0x00004bb2 
- 00019375  0x0000496e rtn 
- 00019376  0x00004970 jam  0x00000000 , 0x00000d37 
- 00019377  0x00004971 rtn 
- 00019378  0x00004973 hfetch  0x00000001 , 0x00008a00 
- 00019379  0x00004974 set1  0x00000007 , 0x0000003f 
- 00019380  0x00004975 hstore  0x00000001 , 0x00008a00 
- 00019381  0x00004976 jam  0x00000001 , 0x00000d47 
- 00019382  0x00004977 rtn 
- 00019383  0x0000497a fetch  0x00000001 , 0x00000d36 
- 00019384  0x0000497b rtneq  0x00000003 
- 00019385  0x0000497c beq  0x00000002 , 0x00004bbb 
- 00019386  0x0000497d rtn 
- 00019387  0x0000497f fetch  0x00000001 , 0x00000d47 
- 00019388  0x00004980 rtn  0x00000034 
- 00019389  0x00004981 jam  0x00000001 , 0x00000d46 
- 00019390  0x00004982 branch  0x00004bc2 
- 00019391  0x00004985 arg  0x0000000f , 0x00000007 
- 00019392  0x00004986 call  0x00007f16 
- 00019393  0x00004987 nrtn  0x00000034 
- 00019394  0x00004989 hfetch  0x00000001 , 0x00008a00 
- 00019395  0x0000498a rtnbit0  0x00000007 
- 00019396  0x0000498b jam  0x000000fc , 0x00008a00 
- 00019397  0x0000498c nop  0x00007530 
- 00019398  0x0000498d jam  0x0000003c , 0x00008a00 
- 00019399  0x0000498e rtn 
- 00019400  0x00004996 bpatch  0x000000fd , 0x0000401f 
- 00019401  0x00004997 fetch  0x00000001 , 0x000041ce 
- 00019402  0x00004998 nrtn  0x00000034 
- 00019403  0x0000499a call  0x00004bce 
- 00019404  0x0000499b ncall  0x00004be6 , 0x00000028 
- 00019405  0x0000499c rtn 
- 00019406  0x0000499f bpatch  0x000000fe , 0x0000401f 
- 00019407  0x000049a0 copy  0x00000003 , 0x00000011 
- 00019408  0x000049a1 arg  0x00000004 , 0x00000002 
- 00019409  0x000049a2 ifetch  0x00000001 , 0x00000003 
- 00019410  0x000049a3 beq  0x00000001 , 0x00004bd8 
- 00019411  0x000049a4 increase  0x00000001 , 0x00000002 
- 00019412  0x000049a5 beq  0x00000002 , 0x00004bd8 
- 00019413  0x000049a6 copy  0x00000003 , 0x0000003f 
- 00019414  0x000049a7 hstore  0x00000002 , 0x00008058 
- 00019415  0x000049a8 rtn 
- 00019416  0x000049aa hfetch  0x00000002 , 0x00008112 
- 00019417  0x000049ab isub  0x00000002 , 0x0000003e 
- 00019418  0x000049ac nbranch  0x00004bd8 , 0x00000002 
- 00019419  0x000049ae disable  0x00000028 
- 00019420  0x000049af copy  0x00000011 , 0x00000003 
- 00019421  0x000049b0 call  0x00004bee 
- 00019422  0x000049b1 iadd  0x00000002 , 0x00000002 
- 00019423  0x000049b3 hfetch  0x00000002 , 0x00008112 
- 00019424  0x000049b4 isub  0x00000002 , 0x0000003e 
- 00019425  0x000049b5 nbranch  0x00004bdf , 0x00000002 
- 00019426  0x000049b6 copy  0x00000011 , 0x00000003 
- 00019427  0x000049b7 ifetch  0x00000001 , 0x00000003 
- 00019428  0x000049b8 beq  0x00000001 , 0x00004c3f 
- 00019429  0x000049b9 branch  0x00002a8c 
- 00019430  0x000049bc bpatch  0x000000ff , 0x0000401f 
- 00019431  0x000049bd hfetch  0x00000002 , 0x00008058 
- 00019432  0x000049be iforce  0x00000003 
- 00019433  0x000049bf call  0x00004bee 
- 00019434  0x000049c0 iadd  0x00000003 , 0x00000003 
- 00019435  0x000049c1 deposit  0x00000003 
- 00019436  0x000049c2 hstore  0x00000002 , 0x00008058 
- 00019437  0x000049c3 rtn 
- 00019438  0x000049c9 ifetch  0x00000001 , 0x00000003 
- 00019439  0x000049ca increase  0x00000002 , 0x00000003 
- 00019440  0x000049cb beq  0x00000002 , 0x00004bf3 
- 00019441  0x000049cc ifetch  0x00000001 , 0x00000003 
- 00019442  0x000049cd rtn 
- 00019443  0x000049cf ifetch  0x00000002 , 0x00000003 
- 00019444  0x000049d0 rtn 
- 00019445  0x000049d3 hfetch  0x00000002 , 0x0000805e 
- 00019446  0x000049d4 increase  0xfffffffb , 0x0000000a 
- 00019447  0x000049d5 iadd  0x0000000a , 0x0000000a 
- 00019448  0x000049d6 rtn 
- 00019449  0x000049d9 arg  0x00000004 , 0x00000002 
- 00019450  0x000049da branch  0x00004bfc 
- 00019451  0x000049dc arg  0x00000002 , 0x00000002 
- 00019452  0x000049de bpatchx  0x00000000 , 0x00004020 
- 00019453  0x000049df increase  0x00000001 , 0x00000039 
- 00019454  0x000049e0 hfetch  0x00000002 , 0x0000805e 
- 00019455  0x000049e1 copy  0x0000003f , 0x0000000a 
- 00019456  0x000049e2 copy  0x00000039 , 0x0000003f 
- 00019457  0x000049e3 istoret  0x00000001 , 0x0000000a 
- 00019458  0x000049e4 increase  0xffffffff , 0x0000003f 
- 00019459  0x000049e5 iadd  0x0000000a , 0x0000000a 
- 00019460  0x000049e6 copy  0x0000000a , 0x0000003f 
- 00019461  0x000049e7 store  0x00000002 , 0x00000258 
- 00019462  0x000049e8 copy  0x00000002 , 0x0000003f 
- 00019463  0x000049e9 rtneq  0x00000002 
- 00019464  0x000049ea fetch  0x00000002 , 0x00000258 
- 00019465  0x000049eb hstore  0x00000002 , 0x0000805e 
- 00019466  0x000049ec branch  0x00004c0b 
- 00019467  0x000049f0 setarg  0x00000000 
- 00019468  0x000049f1 store  0x00000002 , 0x00000258 
- 00019469  0x000049f2 rtn 
- 00019470  0x000049fa rtn  0x0000002b 
- 00019471  0x000049fb setarg  0x00004d28 
- 00019472  0x000049fc store  0x00000002 , 0x000041f3 
- 00019473  0x000049fe setarg  0x000001a0 
- 00019474  0x000049ff store  0x00000002 , 0x00004243 
- 00019475  0x00004a01 setarg  0x00001800 
- 00019476  0x00004a02 hstore  0x00000002 , 0x00008054 
- 00019477  0x00004a03 setarg  0x00001bff 
- 00019478  0x00004a04 hstore  0x00000002 , 0x00008056 
- 00019479  0x00004a05 setarg  0x00001c00 
- 00019480  0x00004a06 hstore  0x00000002 , 0x0000805a 
- 00019481  0x00004a07 call  0x00004c28 
- 00019482  0x00004a09 jam  0x00000000 , 0x00008062 
- 00019483  0x00004a0a setarg  0x00001c00 
- 00019484  0x00004a0b hstore  0x00000002 , 0x0000805e 
- 00019485  0x00004a0c hstore  0x00000002 , 0x00008060 
- 00019486  0x00004a0d setarg  0x00001800 
- 00019487  0x00004a0e hstore  0x00000002 , 0x00008058 
- 00019488  0x00004a0f store  0x00000002 , 0x00000244 
- 00019489  0x00004a11 hfetch  0x00000002 , 0x00008050 
- 00019490  0x00004a12 set0  0x0000000f , 0x0000003f 
- 00019491  0x00004a13 hstore  0x00000002 , 0x00008050 
- 00019492  0x00004a14 call  0x000066ce 
- 00019493  0x00004a15 jam  0x00000001 , 0x00008043 
- 00019494  0x00004a16 jam  0x00000081 , 0x00008062 
- 00019495  0x00004a17 rtn 
- 00019496  0x00004a1a setarg  0x00001fff 
- 00019497  0x00004a1b hstore  0x00000002 , 0x0000805c 
- 00019498  0x00004a1c hfetch  0x00000001 , 0x00008081 
- 00019499  0x00004a1d or_into  0x00000007 , 0x0000003f 
- 00019500  0x00004a1e hstore  0x00000001 , 0x00008081 
- 00019501  0x00004a1f rtn 
- 00019502  0x00004a23 bpatchx  0x00000001 , 0x00004020 
- 00019503  0x00004a24 hfetch  0x00000001 , 0x0000810c 
- 00019504  0x00004a25 iforce  0x00000012 
- 00019505  0x00004a26 bbit0  0x00000003 , 0x00004c37 
- 00019506  0x00004a27 hfetch  0x00000002 , 0x00008112 
- 00019507  0x00004a28 iforce  0x00000013 
- 00019508  0x00004a29 arg  0x0000044f , 0x00000002 
- 00019509  0x00004a2a isub  0x00000002 , 0x0000003e 
- 00019510  0x00004a2b nrtn  0x00000005 
- 00019511  0x00004a2d hfetch  0x00000002 , 0x00008058 
- 00019512  0x00004a2e iforce  0x00000003 
- 00019513  0x00004a2f branch  0x00004bc8 
- 00019514  0x00004a32 hfetcht  0x00000001 , 0x0000810c 
- 00019515  0x00004a33 isolate1  0x00000006 , 0x00000002 
- 00019516  0x00004a34 branch  0x00004c3a , 0x00000001 
- 00019517  0x00004a35 hstore  0x00000001 , 0x00008015 
- 00019518  0x00004a36 rtn 
- 00019519  0x00004a39 bpatchx  0x00000002 , 0x00004020 
- 00019520  0x00004a3a fetch  0x00000001 , 0x000041ce 
- 00019521  0x00004a3b branch  0x00004c44 , 0x00000034 
- 00019522  0x00004a3c enable  0x00000028 
- 00019523  0x00004a3d rtn 
- 00019524  0x00004a3f ifetch  0x00000002 , 0x00000003 
- 00019525  0x00004a40 iforce  0x00000030 
- 00019526  0x00004a41 iforce  0x00000007 
- 00019527  0x00004a42 ifetch  0x00000001 , 0x00000003 
- 00019528  0x00004a43 iforce  0x00000002 
- 00019529  0x00004a44 rshift2  0x00000030 , 0x0000003f 
- 00019530  0x00004a45 rshift8  0x0000003f , 0x0000003f 
- 00019531  0x00004a46 beq  0x0000003f , 0x00004c4d 
- 00019532  0x00004a47 rtn 
- 00019533  0x00004a4b bpatchx  0x00000003 , 0x00004020 
- 00019534  0x00004a4c deposit  0x00000007 
- 00019535  0x00004a4d beq  0x00000000 , 0x00004cdc 
- 00019536  0x00004a4e beq  0x00000001 , 0x00004c66 
- 00019537  0x00004a4f beq  0x00000002 , 0x00004c6b 
- 00019538  0x00004a50 beq  0x00000003 , 0x00004c7a 
- 00019539  0x00004a51 beq  0x00000004 , 0x00004cb3 
- 00019540  0x00004a52 beq  0x00000005 , 0x00004cdc 
- 00019541  0x00004a53 beq  0x00000006 , 0x00004cc6 
- 00019542  0x00004a54 beq  0x00000007 , 0x00004c5c 
- 00019543  0x00004a56 beq  0x00000010 , 0x00004cc9 
- 00019544  0x00004a57 beq  0x00000011 , 0x00004cd1 
- 00019545  0x00004a58 beq  0x00000012 , 0x00004ca5 
- 00019546  0x00004a59 beq  0x00000013 , 0x00004c85 
- 00019547  0x00004a5a branch  0x00004cdc 
- 00019548  0x00004a5d call  0x00004cdc 
- 00019549  0x00004a5e call  0x00007f9e 
- 00019550  0x00004a5f call  0x0000688c 
- 00019551  0x00004a61 call  0x000033d2 
- 00019552  0x00004a62 call  0x000033d9 
- 00019553  0x00004a63 branch  0x0000688f 
- 00019554  0x00004a66 jam  0x00000000 , 0x00004245 
- 00019555  0x00004a67 call  0x000033d0 
- 00019556  0x00004a68 call  0x00004c13 
- 00019557  0x00004a69 branch  0x000033db 
- 00019558  0x00004a6c call  0x00004cf2 
- 00019559  0x00004a6d hfetch  0x00000002 , 0x00008000 
- 00019560  0x00004a6e istore  0x00000002 , 0x0000000a 
- 00019561  0x00004a6f force  0x00000006 , 0x00000039 
- 00019562  0x00004a70 branch  0x00004cdd 
- 00019563  0x00004a73 ifetch  0x00000002 , 0x00000003 
- 00019564  0x00004a74 store  0x00000002 , 0x00004243 
- 00019565  0x00004a75 hstore  0x00000002 , 0x00008052 
- 00019566  0x00004a76 rtn 
- 00019567  0x00004a7b ifetch  0x00000001 , 0x00000003 
- 00019568  0x00004a7c copy  0x0000003f , 0x00000002 
- 00019569  0x00004a7d hstore  0x00000001 , 0x00008024 
- 00019570  0x00004a7e ifetch  0x00000001 , 0x00000003 
- 00019571  0x00004a7f iadd  0x00000002 , 0x00000002 
- 00019572  0x00004a80 set1  0x00000007 , 0x0000003f 
- 00019573  0x00004a81 hstore  0x00000001 , 0x00008023 
- 00019574  0x00004a82 ifetch  0x00000001 , 0x00000003 
- 00019575  0x00004a83 iadd  0x00000002 , 0x00000002 
- 00019576  0x00004a84 copy  0x0000003f , 0x00000039 
- 00019577  0x00004a85 rtn 
- 00019578  0x00004a88 bmark1  0x0000002b , 0x00004cc4 
- 00019579  0x00004a89 call  0x00004c6f 
- 00019580  0x00004a8b ifetch  0x00000001 , 0x00000003 
- 00019581  0x00004a8c hstore  0x00000001 , 0x00008025 
- 00019582  0x00004a8d iadd  0x00000002 , 0x00000002 
- 00019583  0x00004a8e loop  0x00004c7c 
- 00019584  0x00004a90 and  0x00000002 , 0x000000ff , 0x00000002 
- 00019585  0x00004a91 ifetch  0x00000001 , 0x00000003 
- 00019586  0x00004a92 isub  0x00000002 , 0x0000003e 
- 00019587  0x00004a93 nbranch  0x00004cc4 , 0x00000005 
- 00019588  0x00004a94 branch  0x00004cdc 
- 00019589  0x00004a98 bmark0  0x0000002b , 0x00004cc4 
- 00019590  0x00004a99 call  0x00004c6f 
- 00019591  0x00004a9a store  0x00000008 , 0x00000a9a 
- 00019592  0x00004a9c call  0x00007422 
- 00019593  0x00004a9d arg  0x00000010 , 0x00000039 
- 00019594  0x00004a9e arg  0x00000ac2 , 0x00000005 
- 00019595  0x00004a9f call  0x00004ca0 
- 00019596  0x00004aa0 storet  0x00000008 , 0x00000aa2 
- 00019597  0x00004aa1 arg  0x00000ad2 , 0x00000005 
- 00019598  0x00004aa2 call  0x00007497 
- 00019599  0x00004aa3 arg  0x00000ad2 , 0x00000011 
- 00019600  0x00004aa4 arg  0x00000ac2 , 0x00000012 
- 00019601  0x00004aa5 arg  0x00000ae2 , 0x00000005 
- 00019602  0x00004aa6 call  0x00007352 
- 00019603  0x00004aa7 arg  0x00000010 , 0x00000039 
- 00019604  0x00004aa8 arg  0x00000ae2 , 0x00000006 
- 00019605  0x00004aa9 call  0x00004c9c 
- 00019606  0x00004aaa fetcht  0x00000008 , 0x00000aa2 
- 00019607  0x00004aab fetch  0x00000008 , 0x00000a9a 
- 00019608  0x00004aac increase  0xfffffff0 , 0x0000003f 
- 00019609  0x00004aad store  0x00000008 , 0x00000a9a 
- 00019610  0x00004aae nbranch  0x00004c88 , 0x00000034 
- 00019611  0x00004aaf branch  0x00004c80 
- 00019612  0x00004ab2 ifetch  0x00000001 , 0x00000006 
- 00019613  0x00004ab3 hstore  0x00000001 , 0x00008025 
- 00019614  0x00004ab4 loop  0x00004c9c 
- 00019615  0x00004ab5 rtn 
- 00019616  0x00004ab8 ifetch  0x00000001 , 0x00000003 
- 00019617  0x00004ab9 istore  0x00000001 , 0x00000005 
- 00019618  0x00004aba iadd  0x00000002 , 0x00000002 
- 00019619  0x00004abb loop  0x00004ca0 
- 00019620  0x00004abc rtn 
- 00019621  0x00004abf bmark0  0x0000002b , 0x00004cc4 
- 00019622  0x00004ac0 arg  0x00000000 , 0x00000002 
- 00019623  0x00004ac1 arg  0x00000010 , 0x00000039 
- 00019624  0x00004ac2 arg  0x00000ac2 , 0x00000005 
- 00019625  0x00004ac3 call  0x00004ca0 
- 00019626  0x00004ac4 hfetch  0x00000001 , 0x00008085 
- 00019627  0x00004ac5 and_into  0x000000fd , 0x0000003f 
- 00019628  0x00004ac6 hstore  0x00000001 , 0x00008085 
- 00019629  0x00004ac7 arg  0x00000ac2 , 0x00000006 
- 00019630  0x00004ac8 arg  0x00000010 , 0x00000039 
- 00019631  0x00004ac9 call  0x00007478 
- 00019632  0x00004aca call  0x00007428 
- 00019633  0x00004acb call  0x00007491 
- 00019634  0x00004acc branch  0x00004c80 
- 00019635  0x00004ad0 arg  0x00000020 , 0x00000039 
- 00019636  0x00004ad1 arg  0x00004000 , 0x00000005 
- 00019637  0x00004ad2 arg  0x00000000 , 0x00000002 
- 00019638  0x00004ad4 ifetch  0x00000001 , 0x00000003 
- 00019639  0x00004ad5 istore  0x00000001 , 0x00000005 
- 00019640  0x00004ad6 iadd  0x00000002 , 0x00000002 
- 00019641  0x00004ad7 loop  0x00004cb6 
- 00019642  0x00004ad8 and  0x00000002 , 0x000000ff , 0x00000002 
- 00019643  0x00004ad9 ifetch  0x00000001 , 0x00000003 
- 00019644  0x00004ada isub  0x00000002 , 0x0000003e 
- 00019645  0x00004adb nbranch  0x00004cc4 , 0x00000005 
- 00019646  0x00004adc jam  0x00000000 , 0x00008023 
- 00019647  0x00004add call  0x00004cdc 
- 00019648  0x00004ade call  0x00004be6 
- 00019649  0x00004adf call  0x000064a3 
- 00019650  0x00004ae0 call  0x00007f9e 
- 00019651  0x00004ae1 branch  0x00002001 
- 00019652  0x00004ae4 jam  0x00000000 , 0x00008023 
- 00019653  0x00004ae5 branch  0x00002000 
- 00019654  0x00004ae8 ifetch  0x00000006 , 0x00000003 
- 00019655  0x00004ae9 store  0x00000006 , 0x000040a0 
- 00019656  0x00004aea branch  0x00004cdc 
- 00019657  0x00004aee ifetch  0x00000001 , 0x00000003 
- 00019658  0x00004aef store  0x00000001 , 0x0000025a 
- 00019659  0x00004af0 copy  0x0000003f , 0x00000039 
- 00019660  0x00004af1 ifetch  0x00000002 , 0x00000003 
- 00019661  0x00004af2 store  0x00000002 , 0x0000025b 
- 00019662  0x00004af3 copy  0x0000003f , 0x00000005 
- 00019663  0x00004af4 call  0x000066fd 
- 00019664  0x00004af5 branch  0x00004cdc 
- 00019665  0x00004af9 ifetch  0x00000001 , 0x00000003 
- 00019666  0x00004afa store  0x00000001 , 0x0000025a 
- 00019667  0x00004afb copy  0x0000003f , 0x00000039 
- 00019668  0x00004afc ifetch  0x00000002 , 0x00000003 
- 00019669  0x00004afd store  0x00000002 , 0x0000025b 
- 00019670  0x00004afe arg  0x00001000 , 0x00000005 
- 00019671  0x00004aff call  0x000066fd 
- 00019672  0x00004b00 fetcht  0x00000001 , 0x0000025a 
- 00019673  0x00004b01 arg  0x00001000 , 0x00000011 
- 00019674  0x00004b02 fetch  0x00000002 , 0x0000025b 
- 00019675  0x00004b03 branch  0x00006608 
- 00019676  0x00004b09 force  0x00000004 , 0x00000039 
- 00019677  0x00004b0b call  0x00004cf4 
- 00019678  0x00004b0c force  0x00000001 , 0x0000003f 
- 00019679  0x00004b0d istore  0x00000001 , 0x0000000a 
- 00019680  0x00004b0e deposit  0x00000030 
- 00019681  0x00004b0f istore  0x00000003 , 0x0000000a 
- 00019682  0x00004b10 force  0x0000000e , 0x00000007 
- 00019683  0x00004b12 bpatchx  0x00000004 , 0x00004020 
- 00019684  0x00004b13 call  0x00004cf6 
- 00019685  0x00004b14 deposit  0x00000007 
- 00019686  0x00004b15 istore  0x00000001 , 0x0000000a 
- 00019687  0x00004b16 deposit  0x00000039 
- 00019688  0x00004b17 istore  0x00000001 , 0x0000000a 
- 00019689  0x00004b19 force  0x00000005 , 0x00000007 
- 00019690  0x00004b1a increase  0x00000002 , 0x00000039 
- 00019691  0x00004b1c branch  0x00004bf9 
- 00019692  0x00004b1f force  0x000000ff , 0x00000007 
- 00019693  0x00004b20 call  0x00004cf4 
- 00019694  0x00004b21 setarg  0x00000001 
- 00019695  0x00004b22 istore  0x00000001 , 0x0000000a 
- 00019696  0x00004b23 force  0x00000001 , 0x00000039 
- 00019697  0x00004b24 branch  0x00004ce3 
- 00019698  0x00004b27 force  0x0000000c , 0x0000000a 
- 00019699  0x00004b28 branch  0x00004cf7 
- 00019700  0x00004b2b force  0x00000008 , 0x0000000a 
- 00019701  0x00004b2c branch  0x00004cf7 
- 00019702  0x00004b2f force  0x00000006 , 0x0000000a 
- 00019703  0x00004b31 branch  0x00004bf5 
- 00019704  0x00004b36 pulse  0x0000000f 
- 00019705  0x00004b37 enable  0x00000009 
- 00019706  0x00004b39 ifetch  0x00000001 , 0x0000000a 
- 00019707  0x00004b3a inject  0x00000000 , 0x00000008 
- 00019708  0x00004b3b loop  0x00004cfa 
- 00019709  0x00004b3c enable  0x00000008 
- 00019710  0x00004b3d inject  0x00000000 , 0x00000010 
- 00019711  0x00004b3e disable  0x00000008 
- 00019712  0x00004b3f disable  0x00000009 
- 00019713  0x00004b40 disable  0x0000000f 
- 00019714  0x00004b41 byteswap  0x0000003f , 0x0000003f 
- 00019715  0x00004b42 rtn 
- 00019716  0x00004b47 jam  0x00000000 , 0x000041ce 
- 00019717  0x00004b48 rtn 
- 00019718  0x00004b4a fetch  0x00000006 , 0x000041d0 
- 00019719  0x00004b4b fetcht  0x00000006 , 0x00000040 
- 00019720  0x00004b4c isub  0x00000002 , 0x0000003e 
- 00019721  0x00004b4d rtn 
- 00019722  0x00004b53 fetch  0x00000001 , 0x0000004b 
- 00019723  0x00004b54 bbit1  0x00000002 , 0x00004d0f 
- 00019724  0x00004b55 call  0x000062ef 
- 00019725  0x00004b56 jam  0x00000008 , 0x0000007c 
- 00019726  0x00004b57 branch  0x00004d04 
- 00019727  0x00004b59 set0  0x00000002 , 0x0000003f 
- 00019728  0x00004b5a store  0x00000001 , 0x0000004b 
- 00019729  0x00004b5b call  0x00006001 
- 00019730  0x00004b5c setarg  0x00000000 
- 00019731  0x00004b5d setflag  0x00000029 , 0x00000001 , 0x0000003f 
- 00019732  0x00004b5e store  0x00000001 , 0x0000007f 
- 00019733  0x00004b5f branch  0x00004d04 
- 00019734  0x00004b60 rtn 
- 00019735  0x00004b62 jam  0x00000017 , 0x0000007c 
- 00019736  0x00004b63 arg  0x000004d9 , 0x00000005 
- 00019737  0x00004b64 setarg  0x00000000 
- 00019738  0x00004b65 isolate1  0x0000001b , 0x00000028 
- 00019739  0x00004b66 setflag  0x00000001 , 0x00000001 , 0x0000003f 
- 00019740  0x00004b67 istore  0x00000001 , 0x00000005 
- 00019741  0x00004b68 setarg  0x00000000 
- 00019742  0x00004b69 istore  0x00000002 , 0x00000005 
- 00019743  0x00004b6a fetch  0x00000002 , 0x000041e3 
- 00019744  0x00004b6b istore  0x00000002 , 0x00000005 
- 00019745  0x00004b6c fetch  0x00000001 , 0x000041e5 
- 00019746  0x00004b6d istore  0x00000002 , 0x00000005 
- 00019747  0x00004b6e fetch  0x00000001 , 0x000041e7 
- 00019748  0x00004b6f istore  0x00000002 , 0x00000005 
- 00019749  0x00004b70 branch  0x00004d04 
- 00019750  0x00004b73 jam  0x00000018 , 0x0000007c 
- 00019751  0x00004b74 branch  0x00004d04 
- 00019752  0x00004b77 call  0x00006899 
- 00019753  0x00004b78 rtn  0x00000001 
- 00019754  0x00004b79 arg  0x00000007 , 0x00000002 
- 00019755  0x00004b7a call  0x0000681d 
- 00019756  0x00004b7b nbranch  0x00004d2f , 0x00000001 
- 00019757  0x00004b7c jam  0x00000001 , 0x00004245 
- 00019758  0x00004b7d rtn 
- 00019759  0x00004b7f fetch  0x00000001 , 0x00004245 
- 00019760  0x00004b80 rtnne  0x00000001 
- 00019761  0x00004b81 call  0x00004c62 
- 00019762  0x00004b82 branch  0x00004cec 
- 00019763  0x00004b91 bpatchx  0x00000005 , 0x00004020 
- 00019764  0x00004b92 fetch  0x00000002 , 0x00000264 
- 00019765  0x00004b93 copy  0x0000003f , 0x00000006 
- 00019766  0x00004b94 ifetch  0x00000001 , 0x00000006 
- 00019767  0x00004b95 and  0x0000003f , 0x0000000f , 0x00000002 
- 00019768  0x00004b96 rshift4  0x0000003f , 0x0000003f 
- 00019769  0x00004b97 beq  0x00000009 , 0x00004d53 
- 00019770  0x00004b98 beq  0x00000007 , 0x00004d53 
- 00019771  0x00004b99 beq  0x0000000a , 0x00004d5f 
- 00019772  0x00004b9a beq  0x00000005 , 0x00004d4b 
- 00019773  0x00004b9b beq  0x00000001 , 0x00004d3f 
- 00019774  0x00004b9c rtn 
- 00019775  0x00004b9f copy  0x00000002 , 0x0000003f 
- 00019776  0x00004ba0 beq  0x00000005 , 0x00004d43 
- 00019777  0x00004ba1 beq  0x00000003 , 0x00004d4a 
- 00019778  0x00004ba2 rtn 
- 00019779  0x00004ba5 jam  0x00000027 , 0x00000a99 
- 00019780  0x00004ba6 call  0x00007d86 
- 00019781  0x00004ba7 fetch  0x00000001 , 0x00004092 
- 00019782  0x00004ba8 rtnbit0  0x00000006 
- 00019783  0x00004ba9 copy  0x00000002 , 0x0000003f 
- 00019784  0x00004baa beq  0x00000005 , 0x0000438e 
- 00019785  0x00004bab rtn 
- 00019786  0x00004bad rtn 
- 00019787  0x00004bb0 call  0x00004d5f 
- 00019788  0x00004bb1 arg  0x00000001 , 0x00000011 
- 00019789  0x00004bb2 call  0x00004d63 
- 00019790  0x00004bb3 fetch  0x00000002 , 0x0000424c 
- 00019791  0x00004bb4 istore  0x00000002 , 0x00000005 
- 00019792  0x00004bb5 setarg  0x00000000 
- 00019793  0x00004bb6 istore  0x00000001 , 0x00000005 
- 00019794  0x00004bb7 rtn 
- 00019795  0x00004bba arg  0x00000001 , 0x00000011 
- 00019796  0x00004bbb call  0x00004d63 
- 00019797  0x00004bbc fetch  0x00000002 , 0x0000424c 
- 00019798  0x00004bbd istore  0x00000002 , 0x00000005 
- 00019799  0x00004bbe setarg  0x00000000 
- 00019800  0x00004bbf istore  0x00000001 , 0x00000005 
- 00019801  0x00004bc0 jam  0x00000001 , 0x00000a8e 
- 00019802  0x00004bc1 fetch  0x00000001 , 0x00004252 
- 00019803  0x00004bc2 set1  0x00000006 
- 00019804  0x00004bc3 store  0x00000001 , 0x00004252 
- 00019805  0x00004bc4 jam  0x00000012 , 0x00000a99 
- 00019806  0x00004bc5 branch  0x00007d86 
- 00019807  0x00004bc8 ifetch  0x00000001 , 0x00000006 
- 00019808  0x00004bc9 beq  0x00000001 , 0x00004d62 
- 00019809  0x00004bca rtn 
- 00019810  0x00004bcd rtn 
- 00019811  0x00004bd1 call  0x00005240 
- 00019812  0x00004bd2 copy  0x00000011 , 0x00000002 
- 00019813  0x00004bd3 storet  0x00000001 , 0x00000a8e 
- 00019814  0x00004bd4 copy  0x0000003f , 0x00000005 
- 00019815  0x00004bd5 copy  0x00000011 , 0x0000003f 
- 00019816  0x00004bd6 istore  0x00000002 , 0x00000005 
- 00019817  0x00004bd7 rtn 
- 00019818  0x00004be9 branch  0x00004d6f , 0x0000002b 
- 00019819  0x00004beb setarg  0x00004365 
- 00019820  0x00004bec arg  0x00004246 , 0x00000005 
- 00019821  0x00004bed isub  0x00000005 , 0x00000039 
- 00019822  0x00004bee call  0x00007ed4 
- 00019823  0x00004bf0 bpatchx  0x00000006 , 0x00004020 
- 00019824  0x00004bf1 setarg  0x00000551 
- 00019825  0x00004bf2 arg  0x00000511 , 0x00000005 
- 00019826  0x00004bf3 isub  0x00000005 , 0x00000039 
- 00019827  0x00004bf4 call  0x00007ed4 
- 00019828  0x00004bf5 setarg  0x000002c9 
- 00019829  0x00004bf6 arg  0x0000025d , 0x00000005 
- 00019830  0x00004bf7 isub  0x00000005 , 0x00000039 
- 00019831  0x00004bf8 call  0x00007ed4 
- 00019832  0x00004bf9 branch  0x00005318 
- 00019833  0x00004bfc bpatchx  0x00000007 , 0x00004020 
- 00019834  0x00004bfd copy  0x00000006 , 0x00000002 
- 00019835  0x00004c00 copy  0x00000002 , 0x00000006 
- 00019836  0x00004c01 ifetch  0x00000002 , 0x00000006 
- 00019837  0x00004c02 store  0x00000002 , 0x00000266 
- 00019838  0x00004c03 ifetch  0x00000002 , 0x00000006 
- 00019839  0x00004c04 store  0x00000002 , 0x00000268 
- 00019840  0x00004c05 deposit  0x00000006 
- 00019841  0x00004c06 store  0x00000002 , 0x00000264 
- 00019842  0x00004c07 fetch  0x00000001 , 0x00004681 
- 00019843  0x00004c08 beq  0x00000000 , 0x00004d85 
- 00019844  0x00004c09 branch  0x000050ef 
- 00019845  0x00004c0c fetch  0x00000002 , 0x00000266 
- 00019846  0x00004c0d branch  0x00004dfc , 0x00000034 
- 00019847  0x00004c0e bpatchx  0x00000008 , 0x00004021 
- 00019848  0x00004c0f fetch  0x00000001 , 0x00000268 
- 00019849  0x00004c10 beq  0x00000001 , 0x00004d9d 
- 00019850  0x00004c12 beq  0x00000050 , 0x00004de0 
- 00019851  0x00004c13 beq  0x00000051 , 0x00004df5 
- 00019852  0x00004c14 beq  0x00000052 , 0x00004df3 
- 00019853  0x00004c15 beq  0x00000053 , 0x00004df3 
- 00019854  0x00004c16 branch  0x00004dfc 
- 00019855  0x00004c1b bpatchx  0x00000009 , 0x00004021 
- 00019856  0x00004c1c call  0x0000527e 
- 00019857  0x00004c1d fetch  0x00000001 , 0x00004256 
- 00019858  0x00004c1e beq  0x00000000 , 0x00004d9b 
- 00019859  0x00004c1f beq  0x00000001 , 0x00004d9b 
- 00019860  0x00004c20 beq  0x00000002 , 0x00004d9b 
- 00019861  0x00004c21 beq  0x00000003 , 0x00004d9b 
- 00019862  0x00004c22 beq  0x00000081 , 0x00004d9b 
- 00019863  0x00004c23 beq  0x000000c0 , 0x00004d9b 
- 00019864  0x00004c24 beq  0x00000080 , 0x00004d9b 
- 00019865  0x00004c25 beq  0x00000040 , 0x00004d9b 
- 00019866  0x00004c26 rtn 
- 00019867  0x00004c29 setarg  0x00000000 
- 00019868  0x00004c2a rtn 
- 00019869  0x00004c2e call  0x00004d8f 
- 00019870  0x00004c2f nrtn  0x00000034 
- 00019871  0x00004c31 call  0x000052b8 
- 00019872  0x00004c32 call  0x00004e01 
- 00019873  0x00004c33 fetcht  0x00000002 , 0x0000026f 
- 00019874  0x00004c34 branch  0x00004dfb , 0x00000034 
- 00019875  0x00004c35 call  0x000052c1 
- 00019876  0x00004c36 fetch  0x00000002 , 0x0000026f 
- 00019877  0x00004c37 istore  0x00000002 , 0x00000005 
- 00019878  0x00004c38 force  0x00000001 , 0x0000003f 
- 00019879  0x00004c39 istore  0x00000002 , 0x00000005 
- 00019880  0x00004c3a branch  0x00004dfc 
- 00019881  0x00004c3d fetch  0x00000001 , 0x00004364 
- 00019882  0x00004c3e rtn  0x00000034 
- 00019883  0x00004c3f copy  0x0000003f , 0x00000011 
- 00019884  0x00004c40 bpatchx  0x0000000a , 0x00004021 
- 00019885  0x00004c41 fetch  0x00000004 , 0x000002d5 
- 00019886  0x00004c42 arg  0x00000100 , 0x00000002 
- 00019887  0x00004c43 iadd  0x00000002 , 0x00000002 
- 00019888  0x00004c44 copy  0x00000022 , 0x0000003f 
- 00019889  0x00004c45 isub  0x00000002 , 0x0000003e 
- 00019890  0x00004c46 nrtn  0x00000002 
- 00019891  0x00004c47 jam  0x00000000 , 0x00004364 
- 00019892  0x00004c48 copy  0x00000011 , 0x0000003f 
- 00019893  0x00004c49 beq  0x00000050 , 0x00004db7 
- 00019894  0x00004c4a branch  0x00002a8c 
- 00019895  0x00004c4c arg  0x00000000 , 0x00000008 
- 00019896  0x00004c4d call  0x000052b8 
- 00019897  0x00004c4e call  0x00004e7a 
- 00019898  0x00004c4f call  0x000052c3 
- 00019899  0x00004c50 call  0x00007ea8 
- 00019900  0x00004c51 call  0x00004ead 
- 00019901  0x00004c52 call  0x000052c1 
- 00019902  0x00004c54 setarg  0x0000000c 
- 00019903  0x00004c55 istore  0x00000002 , 0x00000005 
- 00019904  0x00004c56 force  0x00000001 , 0x0000003f 
- 00019905  0x00004c57 istore  0x00000002 , 0x00000005 
- 00019906  0x00004c58 branch  0x00004dfc 
- 00019907  0x00004c5d bpatchx  0x0000000b , 0x00004021 
- 00019908  0x00004c5e fetch  0x00000002 , 0x00000275 
- 00019909  0x00004c5f increase  0x00000004 , 0x0000003f 
- 00019910  0x00004c60 rshift4  0x0000003f , 0x0000003f 
- 00019911  0x00004c61 rshift3  0x0000003f , 0x0000003f 
- 00019912  0x00004c62 add  0x0000003f , 0x00000001 , 0x00000002 
- 00019913  0x00004c63 arg  0x00004260 , 0x00000006 
- 00019914  0x00004c64 ifetch  0x00000003 , 0x00000006 
- 00019915  0x00004c65 rtn  0x00000034 
- 00019916  0x00004c66 store  0x00000003 , 0x00000ac2 
- 00019917  0x00004c67 fetch  0x00000001 , 0x00000ac2 
- 00019918  0x00004c68 copy  0x0000003f , 0x00000011 
- 00019919  0x00004c69 call  0x00004dd3 
- 00019920  0x00004c6a copy  0x00000012 , 0x0000003f 
- 00019921  0x00004c6b store  0x00000001 , 0x00004260 
- 00019922  0x00004c6c rtn 
- 00019923  0x00004c6f arg  0x00000000 , 0x00000007 
- 00019924  0x00004c70 arg  0x00000000 , 0x00000012 
- 00019925  0x00004c73 sub  0x00000007 , 0x00000007 , 0x0000003e 
- 00019926  0x00004c74 nrtn  0x00000002 
- 00019927  0x00004c75 qisolate1  0x00000011 
- 00019928  0x00004c76 branch  0x00004dda , 0x00000001 
- 00019929  0x00004c77 branch  0x00004dde 
- 00019930  0x00004c7a copy  0x00000002 , 0x0000003f 
- 00019931  0x00004c7b branch  0x00004dde , 0x00000034 
- 00019932  0x00004c7c qset1  0x00000012 
- 00019933  0x00004c7d increase  0xffffffff , 0x00000002 
- 00019934  0x00004c80 increase  0x00000001 , 0x00000007 
- 00019935  0x00004c81 branch  0x00004dd5 
- 00019936  0x00004c84 call  0x00005274 
- 00019937  0x00004c85 nrtn  0x00000034 
- 00019938  0x00004c86 call  0x00004d8f 
- 00019939  0x00004c87 nrtn  0x00000034 
- 00019940  0x00004c88 call  0x000052c5 
- 00019941  0x00004c89 call  0x00006e11 
- 00019942  0x00004c8a call  0x00004dc3 
- 00019943  0x00004c8b branch  0x00004dec 
- 00019944  0x00004c8f call  0x00005274 
- 00019945  0x00004c90 nrtn  0x00000034 
- 00019946  0x00004c91 call  0x000052c5 
- 00019947  0x00004c92 call  0x00006e11 
- 00019948  0x00004c94 call  0x000052ce 
- 00019949  0x00004c95 fetch  0x00000002 , 0x00000275 
- 00019950  0x00004c96 branch  0x00004dfb , 0x00000034 
- 00019951  0x00004c97 istore  0x00000002 , 0x00000005 
- 00019952  0x00004c98 fetch  0x00000002 , 0x00004248 
- 00019953  0x00004c99 istore  0x00000002 , 0x00000005 
- 00019954  0x00004c9a branch  0x00004dfc 
- 00019955  0x00004c9d call  0x00004d33 
- 00019956  0x00004c9e branch  0x00004dfc 
- 00019957  0x00004ca1 bpatchx  0x0000000c , 0x00004021 
- 00019958  0x00004ca2 jam  0x00000000 , 0x00000284 
- 00019959  0x00004ca3 call  0x00006a8a 
- 00019960  0x00004ca4 fetch  0x00000001 , 0x00000284 
- 00019961  0x00004ca5 rtneq  0x00000001 
- 00019962  0x00004ca6 branch  0x00004dfc 
- 00019963  0x00004ca8 call  0x00005264 
- 00019964  0x00004cab setarg  0x00000000 
- 00019965  0x00004cac store  0x00000002 , 0x00000266 
- 00019966  0x00004cad store  0x00000002 , 0x00000268 
- 00019967  0x00004cae jam  0x00000001 , 0x0000026a 
- 00019968  0x00004caf rtn 
- 00019969  0x00004cb2 bpatchx  0x0000000d , 0x00004021 
- 00019970  0x00004cb3 call  0x000052c3 
- 00019971  0x00004cb4 force  0x00000000 , 0x00000012 
- 00019972  0x00004cb5 fetch  0x00000002 , 0x00000266 
- 00019973  0x00004cb6 copy  0x0000003f , 0x00000013 
- 00019974  0x00004cb7 fetch  0x00000002 , 0x00000264 
- 00019975  0x00004cb8 iforce  0x00000006 
- 00019976  0x00004cba call  0x00004e10 
- 00019977  0x00004cbb deposit  0x00000013 
- 00019978  0x00004cbc increase  0xfffffffc , 0x00000013 
- 00019979  0x00004cbd increase  0xfffffffc , 0x0000003f 
- 00019980  0x00004cbe nbranch  0x00004e08 , 0x00000034 
- 00019981  0x00004cbf copy  0x00000012 , 0x0000003f 
- 00019982  0x00004cc0 store  0x00000002 , 0x0000026f 
- 00019983  0x00004cc1 rtn 
- 00019984  0x00004cc4 bpatchx  0x0000000e , 0x00004021 
- 00019985  0x00004cc5 ifetch  0x00000001 , 0x00000006 
- 00019986  0x00004cc6 beq  0x00000001 , 0x00004e49 
- 00019987  0x00004cc7 beq  0x00000002 , 0x00004e51 
- 00019988  0x00004cc8 beq  0x00000003 , 0x00004ed5 
- 00019989  0x00004cc9 beq  0x00000004 , 0x00004f05 
- 00019990  0x00004cca beq  0x00000005 , 0x00004fa2 
- 00019991  0x00004ccb beq  0x00000006 , 0x00004fcb 
- 00019992  0x00004ccc beq  0x00000007 , 0x0000501b 
- 00019993  0x00004ccd beq  0x00000008 , 0x00005050 
- 00019994  0x00004cce beq  0x00000009 , 0x00005060 
- 00019995  0x00004ccf beq  0x0000000a , 0x00004e1f 
- 00019996  0x00004cd0 beq  0x0000000b , 0x00005061 
- 00019997  0x00004cd1 call  0x00005062 
- 00019998  0x00004cd3 rtn 
- 00019999  0x00004cd6 ifetch  0x00000001 , 0x00000006 
- 00020000  0x00004cd7 copy  0x0000003f , 0x00000007 
- 00020001  0x00004cd8 ifetch  0x00000002 , 0x00000006 
- 00020002  0x00004cd9 copy  0x0000003f , 0x00000011 
- 00020003  0x00004cda copy  0x00000013 , 0x0000003f 
- 00020004  0x00004cdb isub  0x00000011 , 0x00000013 
- 00020005  0x00004cdc setarg  0x0000000b 
- 00020006  0x00004cdd istore  0x00000001 , 0x00000005 
- 00020007  0x00004cde copy  0x00000007 , 0x0000003f 
- 00020008  0x00004cdf istore  0x00000001 , 0x00000005 
- 00020009  0x00004ce0 ifetch  0x00000002 , 0x00000006 
- 00020010  0x00004ce2 beq  0x00000002 , 0x00004e2d 
- 00020011  0x00004ce3 beq  0x00000003 , 0x00004e33 
- 00020012  0x00004ce4 rtn 
- 00020013  0x00004ce6 setarg  0x00020008 
- 00020014  0x00004ce7 istore  0x00000006 , 0x00000005 
- 00020015  0x00004ce8 setarg  0x00000280 
- 00020016  0x00004ce9 istore  0x00000004 , 0x00000005 
- 00020017  0x00004cea force  0x0000000c , 0x0000003f 
- 00020018  0x00004ceb branch  0x00004e38 
- 00020019  0x00004ced setarg  0x0003000c 
- 00020020  0x00004cee istore  0x00000006 , 0x00000005 
- 00020021  0x00004cef setarg  0x00000006 
- 00020022  0x00004cf0 istore  0x00000008 , 0x00000005 
- 00020023  0x00004cf1 force  0x00000010 , 0x0000003f 
- 00020024  0x00004cf3 iadd  0x00000012 , 0x00000012 
- 00020025  0x00004cf4 branch  0x00004e1e 
- 00020026  0x00004cf7 ifetch  0x00000001 , 0x00000006 
- 00020027  0x00004cf8 copy  0x0000003f , 0x00000007 
- 00020028  0x00004cf9 ifetch  0x00000002 , 0x00000006 
- 00020029  0x00004cfa copy  0x0000003f , 0x00000011 
- 00020030  0x00004cfb ifetch  0x00000002 , 0x00000006 
- 00020031  0x00004cfc store  0x00000002 , 0x00000aa2 
- 00020032  0x00004cfd copy  0x00000013 , 0x0000003f 
- 00020033  0x00004cfe isub  0x00000011 , 0x00000013 
- 00020034  0x00004cff call  0x000052c3 
- 00020035  0x00004d00 setarg  0x0000000b 
- 00020036  0x00004d01 istore  0x00000001 , 0x00000005 
- 00020037  0x00004d02 copy  0x00000007 , 0x0000003f 
- 00020038  0x00004d03 istore  0x00000001 , 0x00000005 
- 00020039  0x00004d04 fetch  0x00000002 , 0x00000aa2 
- 00020040  0x00004d05 branch  0x00004e2a 
- 00020041  0x00004d0a ifetch  0x00000001 , 0x00000006 
- 00020042  0x00004d0b copy  0x0000003f , 0x00000007 
- 00020043  0x00004d0c ifetch  0x00000002 , 0x00000006 
- 00020044  0x00004d0d copy  0x0000003f , 0x00000011 
- 00020045  0x00004d0e iadd  0x00000006 , 0x00000006 
- 00020046  0x00004d0f copy  0x00000013 , 0x0000003f 
- 00020047  0x00004d10 isub  0x00000011 , 0x00000013 
- 00020048  0x00004d12 branch  0x00004e1e 
- 00020049  0x00004d15 call  0x00007ea8 
- 00020050  0x00004d18 call  0x00007ead 
- 00020051  0x00004d19 arg  0x00000000 , 0x00000008 
- 00020052  0x00004d1a ifetch  0x00000001 , 0x00000006 
- 00020053  0x00004d1b copy  0x0000003f , 0x00000007 
- 00020054  0x00004d1c ifetch  0x00000002 , 0x00000006 
- 00020055  0x00004d1d copy  0x0000003f , 0x00000011 
- 00020056  0x00004d1e ifetch  0x00000002 , 0x00000006 
- 00020057  0x00004d1f copy  0x0000003f , 0x00000002 
- 00020058  0x00004d20 ifetch  0x00000002 , 0x00000006 
- 00020059  0x00004d21 copy  0x0000003f , 0x0000000b 
- 00020060  0x00004d22 bpatchx  0x0000000f , 0x00004021 
- 00020061  0x00004d23 copy  0x00000002 , 0x0000003f 
- 00020062  0x00004d24 beq  0x00000001 , 0x00004e64 
- 00020063  0x00004d25 beq  0x00000003 , 0x00004e86 
- 00020064  0x00004d26 beq  0x00000011 , 0x00004e92 
- 00020065  0x00004d27 beq  0x00000013 , 0x00004e9d 
- 00020066  0x00004d28 call  0x00005062 
- 00020067  0x00004d29 branch  0x00004ed4 
- 00020068  0x00004d2c call  0x00007ea8 
- 00020069  0x00004d2d arg  0x00000050 , 0x00000002 
- 00020070  0x00004d2e fetch  0x00000002 , 0x00004248 
- 00020071  0x00004d2f nbranch  0x00004ece , 0x00000034 
- 00020072  0x00004d30 copy  0x0000000b , 0x0000003f 
- 00020073  0x00004d31 store  0x00000002 , 0x00004248 
- 00020074  0x00004d32 copy  0x00000022 , 0x0000003f 
- 00020075  0x00004d33 store  0x00000004 , 0x000002d5 
- 00020076  0x00004d34 call  0x00004e6e 
- 00020077  0x00004d35 branch  0x00004ea9 
- 00020078  0x00004d38 storet  0x00000002 , 0x000002d3 
- 00020079  0x00004d39 deposit  0x0000000b 
- 00020080  0x00004d3a store  0x00000002 , 0x000002c9 
- 00020081  0x00004d3b deposit  0x00000011 
- 00020082  0x00004d3c store  0x00000002 , 0x000002cb 
- 00020083  0x00004d3d deposit  0x00000012 
- 00020084  0x00004d3e store  0x00000002 , 0x000002cd 
- 00020085  0x00004d3f deposit  0x00000013 
- 00020086  0x00004d40 store  0x00000002 , 0x000002cf 
- 00020087  0x00004d41 deposit  0x00000007 
- 00020088  0x00004d42 store  0x00000002 , 0x000002d1 
- 00020089  0x00004d43 rtn 
- 00020090  0x00004d46 fetcht  0x00000002 , 0x000002d3 
- 00020091  0x00004d47 fetch  0x00000002 , 0x000002c9 
- 00020092  0x00004d48 copy  0x0000003f , 0x0000000b 
- 00020093  0x00004d49 fetch  0x00000002 , 0x000002cb 
- 00020094  0x00004d4a copy  0x0000003f , 0x00000011 
- 00020095  0x00004d4b fetch  0x00000002 , 0x000002cd 
- 00020096  0x00004d4c copy  0x0000003f , 0x00000012 
- 00020097  0x00004d4d fetch  0x00000002 , 0x000002cf 
- 00020098  0x00004d4e copy  0x0000003f , 0x00000013 
- 00020099  0x00004d4f fetch  0x00000002 , 0x000002d1 
- 00020100  0x00004d50 copy  0x0000003f , 0x00000007 
- 00020101  0x00004d51 rtn 
- 00020102  0x00004d54 call  0x00007ea8 
- 00020103  0x00004d55 setarg  0x00000051 
- 00020104  0x00004d56 arg  0x00000051 , 0x00000002 
- 00020105  0x00004d57 fetch  0x00000002 , 0x0000424a 
- 00020106  0x00004d58 nbranch  0x00004ece , 0x00000034 
- 00020107  0x00004d59 copy  0x0000000b , 0x0000003f 
- 00020108  0x00004d5a store  0x00000002 , 0x0000424a 
- 00020109  0x00004d5b fetch  0x00000001 , 0x00004251 
- 00020110  0x00004d5c set1  0x00000000 , 0x0000003f 
- 00020111  0x00004d5d set1  0x00000001 , 0x0000003f 
- 00020112  0x00004d5e store  0x00000001 , 0x00004251 
- 00020113  0x00004d5f branch  0x00004eb1 
- 00020114  0x00004d61 call  0x00007ea8 
- 00020115  0x00004d62 arg  0x00000052 , 0x00000002 
- 00020116  0x00004d63 fetch  0x00000002 , 0x0000424c 
- 00020117  0x00004d64 nbranch  0x00004ece , 0x00000034 
- 00020118  0x00004d65 copy  0x0000000b , 0x0000003f 
- 00020119  0x00004d66 store  0x00000002 , 0x0000424c 
- 00020120  0x00004d67 fetch  0x00000001 , 0x00004252 
- 00020121  0x00004d68 set1  0x00000000 , 0x0000003f 
- 00020122  0x00004d69 set1  0x00000001 , 0x0000003f 
- 00020123  0x00004d6a store  0x00000001 , 0x00004252 
- 00020124  0x00004d6b branch  0x00004eb1 
- 00020125  0x00004d6d call  0x00007ea8 
- 00020126  0x00004d6e deposit  0x0000001a 
- 00020127  0x00004d6f arg  0x00000053 , 0x00000002 
- 00020128  0x00004d70 fetch  0x00000002 , 0x0000424e 
- 00020129  0x00004d71 nbranch  0x00004ece , 0x00000034 
- 00020130  0x00004d72 copy  0x0000000b , 0x0000003f 
- 00020131  0x00004d73 store  0x00000002 , 0x0000424e 
- 00020132  0x00004d74 fetch  0x00000001 , 0x00004253 
- 00020133  0x00004d75 set1  0x00000000 , 0x0000003f 
- 00020134  0x00004d76 set1  0x00000001 , 0x0000003f 
- 00020135  0x00004d77 store  0x00000001 , 0x00004253 
- 00020136  0x00004d78 branch  0x00004eb1 
- 00020137  0x00004d7b setarg  0x00000001 
- 00020138  0x00004d7c store  0x00000002 , 0x0000027d 
- 00020139  0x00004d7d jam  0x00000050 , 0x00004364 
- 00020140  0x00004d7e branch  0x00004eb3 
- 00020141  0x00004d80 fetch  0x00000001 , 0x00004250 
- 00020142  0x00004d81 set1  0x00000000 , 0x0000003f 
- 00020143  0x00004d82 set1  0x00000001 , 0x0000003f 
- 00020144  0x00004d83 store  0x00000001 , 0x00004250 
- 00020145  0x00004d85 setarg  0x00000000 
- 00020146  0x00004d86 store  0x00000002 , 0x0000027d 
- 00020147  0x00004d88 bpatchx  0x00000010 , 0x00004022 
- 00020148  0x00004d89 call  0x00007ead 
- 00020149  0x00004d8a setarg  0x00000003 
- 00020150  0x00004d8b istore  0x00000001 , 0x00000005 
- 00020151  0x00004d8c copy  0x00000007 , 0x0000003f 
- 00020152  0x00004d8d istore  0x00000001 , 0x00000005 
- 00020153  0x00004d8e setarg  0x00000008 
- 00020154  0x00004d8f istore  0x00000002 , 0x00000005 
- 00020155  0x00004d90 copy  0x00000002 , 0x0000003f 
- 00020156  0x00004d91 istore  0x00000002 , 0x00000005 
- 00020157  0x00004d92 copy  0x0000000b , 0x0000003f 
- 00020158  0x00004d93 istore  0x00000002 , 0x00000005 
- 00020159  0x00004d94 fetch  0x00000002 , 0x0000027d 
- 00020160  0x00004d95 beq  0x00000001 , 0x00004ec9 
- 00020161  0x00004d96 isolate0  0x00000000 , 0x00000008 
- 00020162  0x00004d97 branch  0x00004ec4 , 0x00000001 
- 00020163  0x00004d98 setarg  0x00000004 
- 00020164  0x00004d9a istore  0x00000002 , 0x00000005 
- 00020165  0x00004d9b force  0x00000000 , 0x0000003f 
- 00020166  0x00004d9c istore  0x00000002 , 0x00000005 
- 00020167  0x00004d9d setarg  0x0000000c 
- 00020168  0x00004d9e branch  0x00004ed0 
- 00020169  0x00004da0 istore  0x00000002 , 0x00000005 
- 00020170  0x00004da1 force  0x00000002 , 0x0000003f 
- 00020171  0x00004da2 istore  0x00000002 , 0x00000005 
- 00020172  0x00004da3 setarg  0x0000000c 
- 00020173  0x00004da4 branch  0x00004ed0 
- 00020174  0x00004da7 set1  0x00000000 , 0x00000008 
- 00020175  0x00004da8 branch  0x00004eb1 
- 00020176  0x00004daa iadd  0x00000012 , 0x00000012 
- 00020177  0x00004dab copy  0x00000013 , 0x0000003f 
- 00020178  0x00004dac isub  0x00000011 , 0x00000013 
- 00020179  0x00004dad branch  0x00004ed4 
- 00020180  0x00004daf branch  0x00004e1e 
- 00020181  0x00004db2 ifetch  0x00000001 , 0x00000006 
- 00020182  0x00004db3 copy  0x0000003f , 0x00000007 
- 00020183  0x00004db4 ifetch  0x00000002 , 0x00000006 
- 00020184  0x00004db5 copy  0x0000003f , 0x00000011 
- 00020185  0x00004db6 copy  0x00000013 , 0x0000003f 
- 00020186  0x00004db7 isub  0x00000011 , 0x00000013 
- 00020187  0x00004db8 ifetch  0x00000002 , 0x00000006 
- 00020188  0x00004db9 copy  0x0000003f , 0x0000000b 
- 00020189  0x00004dba ifetch  0x00000002 , 0x00000006 
- 00020190  0x00004dbb copy  0x0000003f , 0x00000002 
- 00020191  0x00004dbc bpatchx  0x00000011 , 0x00004022 
- 00020192  0x00004dbd setarg  0x00000050 
- 00020193  0x00004dbe isub  0x00000002 , 0x0000003e 
- 00020194  0x00004dbf branch  0x00004eed , 0x00000005 
- 00020195  0x00004dc0 setarg  0x00000051 
- 00020196  0x00004dc1 isub  0x00000002 , 0x0000003e 
- 00020197  0x00004dc2 branch  0x00004ef3 , 0x00000005 
- 00020198  0x00004dc3 setarg  0x00000052 
- 00020199  0x00004dc4 isub  0x00000002 , 0x0000003e 
- 00020200  0x00004dc5 branch  0x00004eff , 0x00000005 
- 00020201  0x00004dc6 setarg  0x00000053 
- 00020202  0x00004dc7 isub  0x00000002 , 0x0000003e 
- 00020203  0x00004dc8 branch  0x00004ef9 , 0x00000005 
- 00020204  0x00004dc9 rtn 
- 00020205  0x00004dcc copy  0x0000000b , 0x0000003f 
- 00020206  0x00004dcd store  0x00000002 , 0x00004248 
- 00020207  0x00004dce fetch  0x00000001 , 0x00004250 
- 00020208  0x00004dcf set1  0x00000001 , 0x0000003f 
- 00020209  0x00004dd0 store  0x00000001 , 0x00004250 
- 00020210  0x00004dd1 branch  0x00004e1e 
- 00020211  0x00004dd3 copy  0x0000000b , 0x0000003f 
- 00020212  0x00004dd4 store  0x00000002 , 0x0000424a 
- 00020213  0x00004dd5 fetch  0x00000001 , 0x00004251 
- 00020214  0x00004dd6 set1  0x00000001 , 0x0000003f 
- 00020215  0x00004dd7 store  0x00000001 , 0x00004251 
- 00020216  0x00004dd8 rtn 
- 00020217  0x00004dda copy  0x0000000b , 0x0000003f 
- 00020218  0x00004ddb store  0x00000002 , 0x0000424c 
- 00020219  0x00004ddc fetch  0x00000001 , 0x00004253 
- 00020220  0x00004ddd set1  0x00000001 , 0x0000003f 
- 00020221  0x00004dde store  0x00000001 , 0x00004253 
- 00020222  0x00004ddf rtn 
- 00020223  0x00004de1 copy  0x0000000b , 0x0000003f 
- 00020224  0x00004de2 store  0x00000002 , 0x0000424e 
- 00020225  0x00004de3 fetch  0x00000001 , 0x00004252 
- 00020226  0x00004de4 set1  0x00000001 , 0x0000003f 
- 00020227  0x00004de5 store  0x00000001 , 0x00004252 
- 00020228  0x00004de6 rtn 
- 00020229  0x00004de9 ifetch  0x00000001 , 0x00000006 
- 00020230  0x00004dea copy  0x0000003f , 0x00000007 
- 00020231  0x00004deb ifetch  0x00000002 , 0x00000006 
- 00020232  0x00004dec copy  0x0000003f , 0x00000011 
- 00020233  0x00004ded copy  0x00000013 , 0x0000003f 
- 00020234  0x00004dee isub  0x00000011 , 0x00000013 
- 00020235  0x00004def ifetch  0x00000002 , 0x00000006 
- 00020236  0x00004df0 copy  0x0000003f , 0x00000002 
- 00020237  0x00004df1 copy  0x00000002 , 0x00000011 
- 00020238  0x00004df2 bpatchx  0x00000012 , 0x00004022 
- 00020239  0x00004df3 setarg  0x00000050 
- 00020240  0x00004df4 isub  0x00000002 , 0x0000003e 
- 00020241  0x00004df5 branch  0x00004f1c , 0x00000005 
- 00020242  0x00004df6 setarg  0x00000051 
- 00020243  0x00004df7 isub  0x00000002 , 0x0000003e 
- 00020244  0x00004df8 branch  0x00004f3a , 0x00000005 
- 00020245  0x00004df9 setarg  0x00000052 
- 00020246  0x00004dfa isub  0x00000002 , 0x0000003e 
- 00020247  0x00004dfb branch  0x00004f26 , 0x00000005 
- 00020248  0x00004dfc setarg  0x00000053 
- 00020249  0x00004dfd isub  0x00000002 , 0x0000003e 
- 00020250  0x00004dfe branch  0x00004f30 , 0x00000005 
- 00020251  0x00004dff branch  0x00005062 
- 00020252  0x00004e02 copy  0x00000005 , 0x0000000b 
- 00020253  0x00004e03 fetch  0x00000001 , 0x00004250 
- 00020254  0x00004e04 set1  0x00000004 , 0x0000003f 
- 00020255  0x00004e05 set1  0x00000003 , 0x0000003f 
- 00020256  0x00004e07 store  0x00000001 , 0x00004250 
- 00020257  0x00004e08 copy  0x0000000b , 0x00000005 
- 00020258  0x00004e09 arg  0x00000050 , 0x0000000b 
- 00020259  0x00004e0a fetch  0x00000002 , 0x00004248 
- 00020260  0x00004e0b copy  0x0000003f , 0x00000002 
- 00020261  0x00004e0c branch  0x00004f43 
- 00020262  0x00004e0e copy  0x00000005 , 0x0000000b 
- 00020263  0x00004e0f fetch  0x00000001 , 0x00004252 
- 00020264  0x00004e10 set1  0x00000004 , 0x0000003f 
- 00020265  0x00004e11 set1  0x00000003 , 0x0000003f 
- 00020266  0x00004e13 store  0x00000001 , 0x00004252 
- 00020267  0x00004e14 copy  0x0000000b , 0x00000005 
- 00020268  0x00004e15 arg  0x00000052 , 0x0000000b 
- 00020269  0x00004e16 fetch  0x00000002 , 0x0000424c 
- 00020270  0x00004e17 copy  0x0000003f , 0x00000002 
- 00020271  0x00004e18 branch  0x00004f43 
- 00020272  0x00004e1a copy  0x00000005 , 0x0000000b 
- 00020273  0x00004e1b fetch  0x00000001 , 0x00004253 
- 00020274  0x00004e1c set1  0x00000004 , 0x0000003f 
- 00020275  0x00004e1d set1  0x00000003 , 0x0000003f 
- 00020276  0x00004e1f store  0x00000001 , 0x00004253 
- 00020277  0x00004e20 copy  0x0000000b , 0x00000005 
- 00020278  0x00004e21 arg  0x00000053 , 0x0000000b 
- 00020279  0x00004e22 fetch  0x00000002 , 0x0000424e 
- 00020280  0x00004e23 copy  0x0000003f , 0x00000002 
- 00020281  0x00004e24 branch  0x00004f43 
- 00020282  0x00004e26 copy  0x00000005 , 0x0000000b 
- 00020283  0x00004e27 fetch  0x00000001 , 0x00004251 
- 00020284  0x00004e28 set1  0x00000004 , 0x0000003f 
- 00020285  0x00004e29 set1  0x00000003 , 0x0000003f 
- 00020286  0x00004e2b store  0x00000001 , 0x00004251 
- 00020287  0x00004e2d copy  0x0000000b , 0x00000005 
- 00020288  0x00004e2e arg  0x00000051 , 0x0000000b 
- 00020289  0x00004e2f fetch  0x00000002 , 0x0000424a 
- 00020290  0x00004e30 copy  0x0000003f , 0x00000002 
- 00020291  0x00004e32 bpatchx  0x00000013 , 0x00004022 
- 00020292  0x00004e33 setarg  0x00000005 
- 00020293  0x00004e34 istore  0x00000001 , 0x00000005 
- 00020294  0x00004e35 copy  0x00000007 , 0x0000003f 
- 00020295  0x00004e36 istore  0x00000001 , 0x00000005 
- 00020296  0x00004e37 setarg  0x00000006 
- 00020297  0x00004e38 istore  0x00000002 , 0x00000005 
- 00020298  0x00004e39 copy  0x00000002 , 0x0000003f 
- 00020299  0x00004e3a istore  0x00000002 , 0x00000005 
- 00020300  0x00004e3b force  0x00000000 , 0x0000003f 
- 00020301  0x00004e3c istore  0x00000002 , 0x00000005 
- 00020302  0x00004e3d force  0x00000000 , 0x0000003f 
- 00020303  0x00004e3e istore  0x00000002 , 0x00000005 
- 00020304  0x00004e3f force  0x0000000a , 0x0000003f 
- 00020305  0x00004e40 iadd  0x00000012 , 0x00000012 
- 00020306  0x00004e42 storet  0x00000002 , 0x00000282 
- 00020307  0x00004e43 copy  0x00000007 , 0x0000003f 
- 00020308  0x00004e44 store  0x00000001 , 0x00000281 
- 00020309  0x00004e45 force  0x00000050 , 0x0000003f 
- 00020310  0x00004e46 icompare  0x000000ff , 0x0000000b 
- 00020311  0x00004e47 branch  0x00004f59 , 0x00000001 
- 00020312  0x00004e48 increase  0x00000001 , 0x0000003f 
- 00020313  0x00004e4b rtn 
- 00020314  0x00004e4d disable  0x00000028 
- 00020315  0x00004e4e rtnbit1  0x00000002 , 0x0000003f 
- 00020316  0x00004e4f rtnbit0  0x00000000 , 0x0000003f 
- 00020317  0x00004e50 rtnbit0  0x00000001 , 0x0000003f 
- 00020318  0x00004e51 set1  0x00000002 , 0x0000003f 
- 00020319  0x00004e52 copy  0x00000006 , 0x00000005 
- 00020320  0x00004e53 increase  0xffffffff , 0x00000005 
- 00020321  0x00004e54 istore  0x00000001 , 0x00000005 
- 00020322  0x00004e55 enable  0x00000028 
- 00020323  0x00004e56 rtn 
- 00020324  0x00004e59 fetch  0x00000001 , 0x00004250 
- 00020325  0x00004e5a call  0x00004f5a 
- 00020326  0x00004e5b nbranch  0x00004f6b , 0x00000028 
- 00020327  0x00004e5c jam  0x00000050 , 0x00000280 
- 00020328  0x00004e5d fetch  0x00000002 , 0x00004248 
- 00020329  0x00004e5e store  0x00000002 , 0x00000282 
- 00020330  0x00004e5f branch  0x00004f7f 
- 00020331  0x00004e61 fetch  0x00000001 , 0x00004251 
- 00020332  0x00004e62 call  0x00004f5a 
- 00020333  0x00004e63 nbranch  0x00004f72 , 0x00000028 
- 00020334  0x00004e64 jam  0x00000051 , 0x00000280 
- 00020335  0x00004e65 fetch  0x00000002 , 0x0000424a 
- 00020336  0x00004e66 store  0x00000002 , 0x00000282 
- 00020337  0x00004e67 branch  0x00004f7f 
- 00020338  0x00004e69 fetch  0x00000001 , 0x00004252 
- 00020339  0x00004e6a call  0x00004f5a 
- 00020340  0x00004e6b nbranch  0x00004f79 , 0x00000028 
- 00020341  0x00004e6c jam  0x00000052 , 0x00000280 
- 00020342  0x00004e6d fetch  0x00000002 , 0x0000424c 
- 00020343  0x00004e6e store  0x00000002 , 0x00000282 
- 00020344  0x00004e6f branch  0x00004f7f 
- 00020345  0x00004e71 fetch  0x00000001 , 0x00004253 
- 00020346  0x00004e72 call  0x00004f5a 
- 00020347  0x00004e73 nrtn  0x00000028 
- 00020348  0x00004e74 jam  0x00000053 , 0x00000280 
- 00020349  0x00004e75 fetch  0x00000002 , 0x0000424e 
- 00020350  0x00004e76 store  0x00000002 , 0x00000282 
- 00020351  0x00004e7a bpatchx  0x00000014 , 0x00004022 
- 00020352  0x00004e7b call  0x0000523a 
- 00020353  0x00004e7c call  0x000052b8 
- 00020354  0x00004e7d force  0x00000000 , 0x00000012 
- 00020355  0x00004e7e call  0x000052c3 
- 00020356  0x00004e7f force  0x00000004 , 0x0000003f 
- 00020357  0x00004e80 istore  0x00000001 , 0x00000005 
- 00020358  0x00004e81 fetch  0x00000001 , 0x00004255 
- 00020359  0x00004e82 istore  0x00000001 , 0x00000005 
- 00020360  0x00004e83 setarg  0x00000008 
- 00020361  0x00004e84 istore  0x00000002 , 0x00000005 
- 00020362  0x00004e85 fetch  0x00000002 , 0x00000282 
- 00020363  0x00004e86 istore  0x00000002 , 0x00000005 
- 00020364  0x00004e87 setarg  0x00000000 
- 00020365  0x00004e88 istore  0x00000002 , 0x00000005 
- 00020366  0x00004e89 force  0x00000001 , 0x0000003f 
- 00020367  0x00004e8a istore  0x00000001 , 0x00000005 
- 00020368  0x00004e8b force  0x00000002 , 0x0000003f 
- 00020369  0x00004e8c istore  0x00000001 , 0x00000005 
- 00020370  0x00004e8d fetch  0x00000001 , 0x00000280 
- 00020371  0x00004e8e beq  0x00000051 , 0x00004f97 
- 00020372  0x00004e8f setarg  0x00000030 
- 00020373  0x00004e90 istore  0x00000002 , 0x00000005 
- 00020374  0x00004e91 branch  0x00004f99 
- 00020375  0x00004e93 setarg  0x000003e3 
- 00020376  0x00004e94 istore  0x00000002 , 0x00000005 
- 00020377  0x00004e96 arg  0x0000000c , 0x00000002 
- 00020378  0x00004e97 storet  0x00000002 , 0x0000026f 
- 00020379  0x00004e98 call  0x000052c1 
- 00020380  0x00004e99 fetch  0x00000002 , 0x0000026f 
- 00020381  0x00004e9a istore  0x00000002 , 0x00000005 
- 00020382  0x00004e9b force  0x00000001 , 0x0000003f 
- 00020383  0x00004e9c istore  0x00000002 , 0x00000005 
- 00020384  0x00004e9d jam  0x00000000 , 0x00000280 
- 00020385  0x00004e9f branch  0x00004e1e 
- 00020386  0x00004ea2 increase  0x00000001 , 0x00000006 
- 00020387  0x00004ea3 ifetch  0x00000002 , 0x00000006 
- 00020388  0x00004ea4 copy  0x0000003f , 0x00000011 
- 00020389  0x00004ea5 copy  0x00000013 , 0x0000003f 
- 00020390  0x00004ea6 isub  0x00000011 , 0x00000013 
- 00020391  0x00004ea7 ifetch  0x00000002 , 0x00000006 
- 00020392  0x00004ea8 copy  0x0000003f , 0x00000011 
- 00020393  0x00004ea9 bpatchx  0x00000015 , 0x00004022 
- 00020394  0x00004eaa setarg  0x00000050 
- 00020395  0x00004eab isub  0x00000011 , 0x0000003e 
- 00020396  0x00004eac branch  0x00004fba , 0x00000005 
- 00020397  0x00004ead setarg  0x00000051 
- 00020398  0x00004eae isub  0x00000011 , 0x0000003e 
- 00020399  0x00004eaf branch  0x00004fbe , 0x00000005 
- 00020400  0x00004eb0 setarg  0x00000052 
- 00020401  0x00004eb1 isub  0x00000011 , 0x0000003e 
- 00020402  0x00004eb2 branch  0x00004fc2 , 0x00000005 
- 00020403  0x00004eb3 setarg  0x00000053 
- 00020404  0x00004eb4 isub  0x00000011 , 0x0000003e 
- 00020405  0x00004eb5 branch  0x00004fc6 , 0x00000005 
- 00020406  0x00004eb6 increase  0x00000002 , 0x00000006 
- 00020407  0x00004eb7 ifetch  0x00000002 , 0x00000006 
- 00020408  0x00004eb8 iforce  0x0000003e 
- 00020409  0x00004eb9 branch  0x00004e1e 
- 00020410  0x00004ebb fetch  0x00000001 , 0x00004250 
- 00020411  0x00004ebc set1  0x00000005 , 0x0000003f 
- 00020412  0x00004ebd store  0x00000001 , 0x00004250 
- 00020413  0x00004ebe branch  0x00004e1e 
- 00020414  0x00004ec0 fetch  0x00000001 , 0x00004251 
- 00020415  0x00004ec1 set1  0x00000005 , 0x0000003f 
- 00020416  0x00004ec2 store  0x00000001 , 0x00004251 
- 00020417  0x00004ec3 branch  0x00004e1e 
- 00020418  0x00004ec5 fetch  0x00000001 , 0x00004252 
- 00020419  0x00004ec6 set1  0x00000005 , 0x0000003f 
- 00020420  0x00004ec7 store  0x00000001 , 0x00004252 
- 00020421  0x00004ec8 branch  0x00004e1e 
- 00020422  0x00004eca fetch  0x00000001 , 0x00004253 
- 00020423  0x00004ecb set1  0x00000005 , 0x0000003f 
- 00020424  0x00004ecc store  0x00000001 , 0x00004253 
- 00020425  0x00004ecd jam  0x00000006 , 0x00000a99 
- 00020426  0x00004ece branch  0x00007d86 
- 00020427  0x00004ed3 ifetch  0x00000001 , 0x00000006 
- 00020428  0x00004ed4 copy  0x0000003f , 0x00000007 
- 00020429  0x00004ed5 ifetch  0x00000002 , 0x00000006 
- 00020430  0x00004ed6 copy  0x0000003f , 0x00000011 
- 00020431  0x00004ed7 copy  0x00000013 , 0x0000003f 
- 00020432  0x00004ed8 isub  0x00000011 , 0x00000013 
- 00020433  0x00004ed9 ifetch  0x00000002 , 0x00000006 
- 00020434  0x00004eda copy  0x0000003f , 0x00000011 
- 00020435  0x00004edb ifetch  0x00000002 , 0x00000006 
- 00020436  0x00004edc copy  0x0000003f , 0x0000000b 
- 00020437  0x00004edd copy  0x00000011 , 0x00000002 
- 00020438  0x00004ede call  0x00007ea8 
- 00020439  0x00004edf bpatchx  0x00000016 , 0x00004022 
- 00020440  0x00004ee0 setarg  0x00000050 
- 00020441  0x00004ee1 isub  0x00000002 , 0x0000003e 
- 00020442  0x00004ee2 branch  0x00004ff2 , 0x00000005 
- 00020443  0x00004ee3 setarg  0x00000051 
- 00020444  0x00004ee4 isub  0x00000002 , 0x0000003e 
- 00020445  0x00004ee5 branch  0x00005002 , 0x00000005 
- 00020446  0x00004ee6 setarg  0x00000052 
- 00020447  0x00004ee7 isub  0x00000002 , 0x0000003e 
- 00020448  0x00004ee8 branch  0x00004fe6 , 0x00000005 
- 00020449  0x00004ee9 setarg  0x00000053 
- 00020450  0x00004eea isub  0x00000002 , 0x0000003e 
- 00020451  0x00004eeb branch  0x00004fec , 0x00000005 
- 00020452  0x00004eec call  0x00005062 
- 00020453  0x00004eed branch  0x00005017 
- 00020454  0x00004eef copy  0x0000000b , 0x00000002 
- 00020455  0x00004ef0 fetch  0x00000002 , 0x0000424c 
- 00020456  0x00004ef1 isub  0x00000002 , 0x0000003e 
- 00020457  0x00004ef2 branch  0x00004ff8 , 0x00000005 
- 00020458  0x00004ef3 call  0x00005062 
- 00020459  0x00004ef4 branch  0x00005017 
- 00020460  0x00004ef6 copy  0x0000000b , 0x00000002 
- 00020461  0x00004ef7 fetch  0x00000002 , 0x0000424e 
- 00020462  0x00004ef8 isub  0x00000002 , 0x0000003e 
- 00020463  0x00004ef9 branch  0x00004ffa , 0x00000005 
- 00020464  0x00004efa call  0x00005062 
- 00020465  0x00004efb branch  0x00005017 
- 00020466  0x00004efe copy  0x0000000b , 0x00000002 
- 00020467  0x00004eff fetch  0x00000002 , 0x00004248 
- 00020468  0x00004f00 isub  0x00000002 , 0x0000003e 
- 00020469  0x00004f01 branch  0x00004ffe , 0x00000005 
- 00020470  0x00004f02 call  0x00005062 
- 00020471  0x00004f03 branch  0x00005017 
- 00020472  0x00004f05 call  0x00005079 
- 00020473  0x00004f06 branch  0x0000500a 
- 00020474  0x00004f08 call  0x0000507f 
- 00020475  0x00004f09 fetch  0x00000002 , 0x0000424c 
- 00020476  0x00004f0a branch  0x0000500a , 0x00000034 
- 00020477  0x00004f12 branch  0x0000500a 
- 00020478  0x00004f15 call  0x00005074 
- 00020479  0x00004f16 fetch  0x00000001 , 0x00000288 
- 00020480  0x00004f17 nbranch  0x0000500a , 0x00000034 
- 00020481  0x00004f1a branch  0x0000500a 
- 00020482  0x00004f1c copy  0x0000000b , 0x00000002 
- 00020483  0x00004f1d fetch  0x00000002 , 0x0000424a 
- 00020484  0x00004f1e isub  0x00000002 , 0x0000003e 
- 00020485  0x00004f1f branch  0x00005008 , 0x00000005 
- 00020486  0x00004f20 call  0x00005062 
- 00020487  0x00004f21 branch  0x00005017 
- 00020488  0x00004f23 call  0x0000506f 
- 00020489  0x00004f24 branch  0x0000500a 
- 00020490  0x00004f26 call  0x00007ead 
- 00020491  0x00004f27 setarg  0x00000007 
- 00020492  0x00004f28 istore  0x00000001 , 0x00000005 
- 00020493  0x00004f29 copy  0x00000007 , 0x0000003f 
- 00020494  0x00004f2a istore  0x00000001 , 0x00000005 
- 00020495  0x00004f2b setarg  0x00000004 
- 00020496  0x00004f2c istore  0x00000002 , 0x00000005 
- 00020497  0x00004f2d copy  0x00000011 , 0x0000003f 
- 00020498  0x00004f2e istore  0x00000002 , 0x00000005 
- 00020499  0x00004f2f copy  0x0000000b , 0x0000003f 
- 00020500  0x00004f30 istore  0x00000002 , 0x00000005 
- 00020501  0x00004f31 force  0x00000008 , 0x0000003f 
- 00020502  0x00004f32 branch  0x00005019 
- 00020503  0x00004f34 call  0x00007ead 
- 00020504  0x00004f35 branch  0x00005019 
- 00020505  0x00004f37 iadd  0x00000012 , 0x00000012 
- 00020506  0x00004f38 branch  0x00004e1e 
- 00020507  0x00004f3a ifetch  0x00000001 , 0x00000006 
- 00020508  0x00004f3b copy  0x0000003f , 0x00000007 
- 00020509  0x00004f3c ifetch  0x00000002 , 0x00000006 
- 00020510  0x00004f3d copy  0x0000003f , 0x00000011 
- 00020511  0x00004f3e copy  0x00000013 , 0x0000003f 
- 00020512  0x00004f3f isub  0x00000011 , 0x00000013 
- 00020513  0x00004f40 ifetch  0x00000002 , 0x00000006 
- 00020514  0x00004f41 copy  0x0000003f , 0x0000000b 
- 00020515  0x00004f42 ifetch  0x00000002 , 0x00000006 
- 00020516  0x00004f43 copy  0x0000003f , 0x00000002 
- 00020517  0x00004f44 call  0x00007ea8 
- 00020518  0x00004f45 bpatchx  0x00000017 , 0x00004022 
- 00020519  0x00004f46 setarg  0x00000050 
- 00020520  0x00004f47 isub  0x00000002 , 0x0000003e 
- 00020521  0x00004f48 branch  0x00005035 , 0x00000005 
- 00020522  0x00004f49 setarg  0x00000051 
- 00020523  0x00004f4a isub  0x00000002 , 0x0000003e 
- 00020524  0x00004f4b branch  0x0000503b , 0x00000005 
- 00020525  0x00004f4c setarg  0x00000052 
- 00020526  0x00004f4d isub  0x00000002 , 0x0000003e 
- 00020527  0x00004f4e branch  0x00005041 , 0x00000005 
- 00020528  0x00004f4f setarg  0x00000053 
- 00020529  0x00004f50 isub  0x00000002 , 0x0000003e 
- 00020530  0x00004f51 branch  0x00005047 , 0x00000005 
- 00020531  0x00004f52 call  0x00005062 
- 00020532  0x00004f53 branch  0x0000504f 
- 00020533  0x00004f55 copy  0x00000002 , 0x00000011 
- 00020534  0x00004f56 copy  0x0000000b , 0x00000002 
- 00020535  0x00004f57 fetch  0x00000002 , 0x00004248 
- 00020536  0x00004f58 isub  0x00000002 , 0x0000003e 
- 00020537  0x00004f59 call  0x00005074 , 0x00000005 
- 00020538  0x00004f5a branch  0x0000504d 
- 00020539  0x00004f5c copy  0x00000002 , 0x00000011 
- 00020540  0x00004f5d copy  0x0000000b , 0x00000002 
- 00020541  0x00004f5e fetch  0x00000002 , 0x0000424a 
- 00020542  0x00004f5f isub  0x00000002 , 0x0000003e 
- 00020543  0x00004f60 call  0x0000506f , 0x00000005 
- 00020544  0x00004f61 branch  0x0000504d 
- 00020545  0x00004f63 copy  0x00000002 , 0x00000011 
- 00020546  0x00004f64 copy  0x0000000b , 0x00000002 
- 00020547  0x00004f65 fetch  0x00000002 , 0x0000424c 
- 00020548  0x00004f66 isub  0x00000002 , 0x0000003e 
- 00020549  0x00004f67 call  0x00005079 , 0x00000005 
- 00020550  0x00004f68 branch  0x0000504d 
- 00020551  0x00004f6a copy  0x00000002 , 0x00000011 
- 00020552  0x00004f6b copy  0x0000000b , 0x00000002 
- 00020553  0x00004f6c fetch  0x00000002 , 0x0000424e 
- 00020554  0x00004f6d isub  0x00000002 , 0x0000003e 
- 00020555  0x00004f6e call  0x0000507f , 0x00000005 
- 00020556  0x00004f6f branch  0x0000504d 
- 00020557  0x00004f71 call  0x00007ead 
- 00020558  0x00004f72 branch  0x00004e1e 
- 00020559  0x00004f74 branch  0x00004e1e 
- 00020560  0x00004f78 ifetch  0x00000001 , 0x00000006 
- 00020561  0x00004f79 copy  0x0000003f , 0x00000007 
- 00020562  0x00004f7a ifetch  0x00000002 , 0x00000006 
- 00020563  0x00004f7b copy  0x0000003f , 0x00000011 
- 00020564  0x00004f7c iadd  0x00000006 , 0x00000006 
- 00020565  0x00004f7d setarg  0x00000009 
- 00020566  0x00004f7e istore  0x00000001 , 0x00000005 
- 00020567  0x00004f7f copy  0x00000007 , 0x0000003f 
- 00020568  0x00004f80 istore  0x00000001 , 0x00000005 
- 00020569  0x00004f81 force  0x00000000 , 0x0000003f 
- 00020570  0x00004f82 istore  0x00000002 , 0x00000005 
- 00020571  0x00004f83 force  0x00000004 , 0x0000003f 
- 00020572  0x00004f84 iadd  0x00000012 , 0x00000012 
- 00020573  0x00004f85 copy  0x00000013 , 0x0000003f 
- 00020574  0x00004f86 isub  0x00000011 , 0x00000013 
- 00020575  0x00004f87 branch  0x00004e1e 
- 00020576  0x00004f89 branch  0x00004e1e 
- 00020577  0x00004f8c branch  0x00004e1e 
- 00020578  0x00004f8e force  0x00000000 , 0x00000012 
- 00020579  0x00004f8f call  0x000052c3 
- 00020580  0x00004f90 setarg  0x00000001 
- 00020581  0x00004f91 istore  0x00000001 , 0x00000005 
- 00020582  0x00004f92 copy  0x00000007 , 0x0000003f 
- 00020583  0x00004f93 istore  0x00000001 , 0x00000005 
- 00020584  0x00004f94 setarg  0x00000002 
- 00020585  0x00004f95 istore  0x00000002 , 0x00000005 
- 00020586  0x00004f96 setarg  0x00000000 
- 00020587  0x00004f97 istore  0x00000002 , 0x00000005 
- 00020588  0x00004f98 increase  0x00000006 , 0x00000012 
- 00020589  0x00004f99 arg  0x00000004 , 0x00000013 
- 00020590  0x00004f9a branch  0x00004e1e 
- 00020591  0x00004f9f setarg  0x00000000 
- 00020592  0x00004fa0 store  0x00000002 , 0x0000027b 
- 00020593  0x00004fa1 store  0x00000002 , 0x0000424a 
- 00020594  0x00004fa2 jam  0x00000000 , 0x00004251 
- 00020595  0x00004fa3 rtn 
- 00020596  0x00004fa5 setarg  0x00000000 
- 00020597  0x00004fa6 store  0x00000002 , 0x00000275 
- 00020598  0x00004fa7 store  0x00000002 , 0x00004248 
- 00020599  0x00004fa8 jam  0x00000000 , 0x00004250 
- 00020600  0x00004fa9 rtn 
- 00020601  0x00004fab setarg  0x00000000 
- 00020602  0x00004fac store  0x00000002 , 0x0000424c 
- 00020603  0x00004fad jam  0x00000000 , 0x00004252 
- 00020604  0x00004fae fetch  0x00000001 , 0x00004253 
- 00020605  0x00004faf beq  0x00000000 , 0x00005085 
- 00020606  0x00004fb0 rtn 
- 00020607  0x00004fb3 setarg  0x00000000 
- 00020608  0x00004fb4 store  0x00000002 , 0x0000424e 
- 00020609  0x00004fb5 jam  0x00000000 , 0x00004253 
- 00020610  0x00004fb6 fetch  0x00000001 , 0x00004252 
- 00020611  0x00004fb7 beq  0x00000000 , 0x00005085 
- 00020612  0x00004fb8 rtn 
- 00020613  0x00004fbb jam  0x00000007 , 0x00000a99 
- 00020614  0x00004fbc branch  0x00007d86 
- 00020615  0x00004fbf fetch  0x00000001 , 0x0000027f 
- 00020616  0x00004fc0 set0  0x00000000 , 0x0000003f 
- 00020617  0x00004fc1 store  0x00000001 , 0x0000027f 
- 00020618  0x00004fc2 fetch  0x00000002 , 0x0000424e 
- 00020619  0x00004fc3 rtn  0x00000034 
- 00020620  0x00004fc4 call  0x000052b8 
- 00020621  0x00004fc5 fetch  0x00000002 , 0x0000424e 
- 00020622  0x00004fc6 copy  0x0000003f , 0x00000011 
- 00020623  0x00004fc7 force  0x00000053 , 0x00000012 
- 00020624  0x00004fc8 branch  0x0000509a 
- 00020625  0x00004fca fetch  0x00000001 , 0x0000027f 
- 00020626  0x00004fcb set0  0x00000007 , 0x0000003f 
- 00020627  0x00004fcc store  0x00000001 , 0x0000027f 
- 00020628  0x00004fcd fetch  0x00000002 , 0x0000424c 
- 00020629  0x00004fce rtn  0x00000034 
- 00020630  0x00004fcf call  0x000052b8 
- 00020631  0x00004fd0 fetch  0x00000002 , 0x0000424c 
- 00020632  0x00004fd1 copy  0x0000003f , 0x00000011 
- 00020633  0x00004fd2 force  0x00000052 , 0x00000012 
- 00020634  0x00004fd4 call  0x0000523a 
- 00020635  0x00004fd5 call  0x000052c3 
- 00020636  0x00004fd6 force  0x00000006 , 0x0000003f 
- 00020637  0x00004fd7 istore  0x00000001 , 0x00000005 
- 00020638  0x00004fd8 fetch  0x00000001 , 0x00004255 
- 00020639  0x00004fd9 istore  0x00000001 , 0x00000005 
- 00020640  0x00004fda setarg  0x00000004 
- 00020641  0x00004fdb istore  0x00000002 , 0x00000005 
- 00020642  0x00004fdc copy  0x00000011 , 0x0000003f 
- 00020643  0x00004fdd istore  0x00000002 , 0x00000005 
- 00020644  0x00004fde copy  0x00000012 , 0x0000003f 
- 00020645  0x00004fdf istore  0x00000002 , 0x00000005 
- 00020646  0x00004fe0 force  0x00000008 , 0x00000002 
- 00020647  0x00004fe1 branch  0x000050de 
- 00020648  0x00004fe4 bpatchx  0x00000018 , 0x00004023 
- 00020649  0x00004fe5 call  0x0000523a 
- 00020650  0x00004fe6 call  0x000052c3 
- 00020651  0x00004fe7 setarg  0x00000002 
- 00020652  0x00004fe8 istore  0x00000001 , 0x00000005 
- 00020653  0x00004fe9 fetch  0x00000001 , 0x00004255 
- 00020654  0x00004fea istore  0x00000001 , 0x00000005 
- 00020655  0x00004feb setarg  0x00000004 
- 00020656  0x00004fec istore  0x00000002 , 0x00000005 
- 00020657  0x00004fed copy  0x00000002 , 0x0000003f 
- 00020658  0x00004fee istore  0x00000002 , 0x00000005 
- 00020659  0x00004fef copy  0x0000000b , 0x0000003f 
- 00020660  0x00004ff0 istore  0x00000002 , 0x00000005 
- 00020661  0x00004ff1 arg  0x00000008 , 0x00000002 
- 00020662  0x00004ff2 branch  0x000050de 
- 00020663  0x00004ff4 bpatchx  0x00000019 , 0x00004023 
- 00020664  0x00004ff5 call  0x0000523a 
- 00020665  0x00004ff6 call  0x000052c3 
- 00020666  0x00004ff7 setarg  0x00000004 
- 00020667  0x00004ff8 istore  0x00000001 , 0x00000005 
- 00020668  0x00004ff9 fetch  0x00000001 , 0x00004255 
- 00020669  0x00004ffa istore  0x00000001 , 0x00000005 
- 00020670  0x00004ffb setarg  0x00000008 
- 00020671  0x00004ffc istore  0x00000002 , 0x00000005 
- 00020672  0x00004ffe copy  0x00000002 , 0x0000003f 
- 00020673  0x00005000 istore  0x00000002 , 0x00000005 
- 00020674  0x00005001 setarg  0x00000000 
- 00020675  0x00005002 istore  0x00000002 , 0x00000005 
- 00020676  0x00005003 setarg  0x00000001 
- 00020677  0x00005004 istore  0x00000001 , 0x00000005 
- 00020678  0x00005005 setarg  0x00000002 
- 00020679  0x00005006 istore  0x00000001 , 0x00000005 
- 00020680  0x00005007 setarg  0x000003e3 
- 00020681  0x00005008 istore  0x00000002 , 0x00000005 
- 00020682  0x00005009 arg  0x0000000c , 0x00000002 
- 00020683  0x0000500a branch  0x000050de 
- 00020684  0x0000500c bpatchx  0x0000001a , 0x00004023 
- 00020685  0x0000500d call  0x0000523a 
- 00020686  0x0000500e call  0x000052c3 
- 00020687  0x0000500f setarg  0x00000006 
- 00020688  0x00005010 istore  0x00000001 , 0x00000005 
- 00020689  0x00005011 fetch  0x00000001 , 0x00004255 
- 00020690  0x00005012 increase  0x00000001 , 0x0000003f 
- 00020691  0x00005013 copy  0x00000005 , 0x00000011 
- 00020692  0x00005014 store  0x00000001 , 0x00004255 
- 00020693  0x00005015 copy  0x00000011 , 0x00000005 
- 00020694  0x00005016 istore  0x00000001 , 0x00000005 
- 00020695  0x00005017 setarg  0x00000004 
- 00020696  0x00005018 istore  0x00000002 , 0x00000005 
- 00020697  0x00005019 copy  0x00000002 , 0x0000003f 
- 00020698  0x0000501a istore  0x00000002 , 0x00000005 
- 00020699  0x0000501b copy  0x0000000b , 0x0000003f 
- 00020700  0x0000501c istore  0x00000002 , 0x00000005 
- 00020701  0x0000501d arg  0x00000008 , 0x00000002 
- 00020702  0x00005021 storet  0x00000002 , 0x0000026f 
- 00020703  0x00005022 copy  0x00000002 , 0x0000003f 
- 00020704  0x00005023 branch  0x00005264 , 0x00000034 
- 00020705  0x00005024 call  0x000052c1 
- 00020706  0x00005025 fetch  0x00000002 , 0x0000026f 
- 00020707  0x00005026 istore  0x00000002 , 0x00000005 
- 00020708  0x00005027 force  0x00000001 , 0x0000003f 
- 00020709  0x00005028 istore  0x00000002 , 0x00000005 
- 00020710  0x00005029 rtn 
- 00020711  0x0000502c fetch  0x00000002 , 0x00000275 
- 00020712  0x0000502d branch  0x00002a8c , 0x00000034 
- 00020713  0x0000502e call  0x000052ce 
- 00020714  0x0000502f fetch  0x00000002 , 0x00000275 
- 00020715  0x00005030 istore  0x00000002 , 0x00000005 
- 00020716  0x00005031 fetch  0x00000002 , 0x00004248 
- 00020717  0x00005032 istore  0x00000002 , 0x00000005 
- 00020718  0x00005033 rtn 
- 00020719  0x00005035 fetch  0x00000002 , 0x00000266 
- 00020720  0x00005036 branch  0x00004dfc , 0x00000034 
- 00020721  0x00005037 bpatchx  0x0000001b , 0x00004023 
- 00020722  0x00005038 fetch  0x00000001 , 0x00000268 
- 00020723  0x00005039 beq  0x00000001 , 0x000050f9 
- 00020724  0x0000503a beq  0x00000050 , 0x00004de8 
- 00020725  0x0000503b beq  0x00000051 , 0x00004df5 
- 00020726  0x0000503c beq  0x00000052 , 0x00004df3 
- 00020727  0x0000503d beq  0x00000053 , 0x00004df3 
- 00020728  0x0000503e branch  0x00004dfc 
- 00020729  0x00005041 bpatchx  0x0000001c , 0x00004023 
- 00020730  0x00005042 call  0x000052b8 
- 00020731  0x00005043 force  0x00000000 , 0x00000012 
- 00020732  0x00005044 call  0x000052c3 
- 00020733  0x00005045 copy  0x0000003f , 0x00000005 
- 00020734  0x00005046 fetch  0x00000002 , 0x00000266 
- 00020735  0x00005047 copy  0x0000003f , 0x00000013 
- 00020736  0x00005048 fetch  0x00000002 , 0x00000264 
- 00020737  0x00005049 iforce  0x00000006 
- 00020738  0x0000504b call  0x00005108 
- 00020739  0x0000504c increase  0xfffffffc , 0x00000013 
- 00020740  0x0000504d nbranch  0x00005102 , 0x00000005 
- 00020741  0x0000504e copy  0x00000012 , 0x00000002 
- 00020742  0x0000504f call  0x000050de 
- 00020743  0x00005050 branch  0x00004dfc 
- 00020744  0x00005053 ifetch  0x00000001 , 0x00000006 
- 00020745  0x00005054 beq  0x00000002 , 0x00005113 
- 00020746  0x00005055 beq  0x00000001 , 0x00005116 
- 00020747  0x00005056 beq  0x00000003 , 0x00005120 
- 00020748  0x00005057 beq  0x00000005 , 0x0000515c 
- 00020749  0x00005058 beq  0x00000004 , 0x0000518e 
- 00020750  0x00005059 beq  0x00000007 , 0x00005213 
- 00020751  0x0000505a beq  0x00000006 , 0x000051e1 
- 00020752  0x0000505b beq  0x00000008 , 0x00005050 
- 00020753  0x0000505c beq  0x0000000a , 0x00004e3a 
- 00020754  0x0000505d branch  0x0000522e 
- 00020755  0x00005060 call  0x00007ea8 
- 00020756  0x00005062 call  0x00007ead 
- 00020757  0x00005063 branch  0x00004e51 
- 00020758  0x00005065 ifetch  0x00000001 , 0x00000006 
- 00020759  0x00005066 copy  0x0000003f , 0x00000007 
- 00020760  0x00005067 ifetch  0x00000002 , 0x00000006 
- 00020761  0x00005068 copy  0x0000003f , 0x00000011 
- 00020762  0x00005069 copy  0x00000013 , 0x0000003f 
- 00020763  0x0000506a isub  0x00000011 , 0x00000013 
- 00020764  0x0000506c ifetch  0x00000001 , 0x00000006 
- 00020765  0x0000506d increase  0xffffffff , 0x00000011 
- 00020766  0x0000506e nbranch  0x0000511c , 0x00000005 
- 00020767  0x0000506f rtn 
- 00020768  0x00005071 ifetch  0x00000001 , 0x00000006 
- 00020769  0x00005072 copy  0x0000003f , 0x00000007 
- 00020770  0x00005073 ifetch  0x00000002 , 0x00000006 
- 00020771  0x00005074 copy  0x0000003f , 0x00000011 
- 00020772  0x00005075 ifetch  0x00000002 , 0x00000006 
- 00020773  0x00005076 copy  0x0000003f , 0x0000000b 
- 00020774  0x00005077 ifetch  0x00000002 , 0x00000006 
- 00020775  0x00005078 copy  0x0000003f , 0x00000002 
- 00020776  0x00005079 ifetch  0x00000002 , 0x00000006 
- 00020777  0x0000507a sub  0x0000003f , 0x00000000 , 0x0000003e 
- 00020778  0x0000507b branch  0x00005132 , 0x00000005 
- 00020779  0x0000507c beq  0x00000002 , 0x0000512e 
- 00020780  0x0000507d beq  0x00000004 , 0x0000512e 
- 00020781  0x0000507e branch  0x00005130 
- 00020782  0x00005080 jam  0x00000016 , 0x00000a99 
- 00020783  0x00005081 call  0x00007d86 
- 00020784  0x00005083 ifetch  0x00000002 , 0x00000006 
- 00020785  0x00005084 branch  0x00005159 
- 00020786  0x00005086 call  0x00007ea8 
- 00020787  0x0000508a bpatchx  0x0000001d , 0x00004023 
- 00020788  0x0000508b setarg  0x00000050 
- 00020789  0x0000508c isub  0x00000002 , 0x0000003e 
- 00020790  0x0000508d branch  0x00005141 , 0x00000005 
- 00020791  0x0000508e setarg  0x00000051 
- 00020792  0x0000508f isub  0x00000002 , 0x0000003e 
- 00020793  0x00005090 branch  0x00005147 , 0x00000005 
- 00020794  0x00005091 setarg  0x00000053 
- 00020795  0x00005092 isub  0x00000002 , 0x0000003e 
- 00020796  0x00005093 branch  0x00005153 , 0x00000005 
- 00020797  0x00005094 setarg  0x00000052 
- 00020798  0x00005095 isub  0x00000002 , 0x0000003e 
- 00020799  0x00005096 branch  0x0000514d , 0x00000005 
- 00020800  0x00005097 branch  0x00005159 
- 00020801  0x00005099 copy  0x0000000b , 0x0000003f 
- 00020802  0x0000509a store  0x00000002 , 0x00004248 
- 00020803  0x0000509b fetch  0x00000001 , 0x00004250 
- 00020804  0x0000509c set1  0x00000001 
- 00020805  0x0000509d store  0x00000001 , 0x00004250 
- 00020806  0x0000509e branch  0x00005158 
- 00020807  0x000050a0 copy  0x0000000b , 0x0000003f 
- 00020808  0x000050a1 store  0x00000002 , 0x0000424a 
- 00020809  0x000050a2 fetch  0x00000001 , 0x00004251 
- 00020810  0x000050a3 set1  0x00000001 
- 00020811  0x000050a4 store  0x00000001 , 0x00004251 
- 00020812  0x000050a5 branch  0x00005158 
- 00020813  0x000050a7 copy  0x0000000b , 0x0000003f 
- 00020814  0x000050a8 store  0x00000002 , 0x0000424c 
- 00020815  0x000050a9 fetch  0x00000001 , 0x00004252 
- 00020816  0x000050aa set1  0x00000001 
- 00020817  0x000050ab store  0x00000001 , 0x00004252 
- 00020818  0x000050ac branch  0x00005158 
- 00020819  0x000050ae copy  0x0000000b , 0x0000003f 
- 00020820  0x000050af store  0x00000002 , 0x0000424e 
- 00020821  0x000050b0 fetch  0x00000001 , 0x00004253 
- 00020822  0x000050b1 set1  0x00000001 
- 00020823  0x000050b2 store  0x00000001 , 0x00004253 
- 00020824  0x000050b6 call  0x00007ead 
- 00020825  0x000050b8 copy  0x00000013 , 0x0000003f 
- 00020826  0x000050b9 isub  0x00000011 , 0x00000013 
- 00020827  0x000050ba rtn 
- 00020828  0x000050bd ifetch  0x00000001 , 0x00000006 
- 00020829  0x000050be copy  0x0000003f , 0x00000007 
- 00020830  0x000050bf ifetch  0x00000002 , 0x00000006 
- 00020831  0x000050c0 copy  0x0000003f , 0x00000011 
- 00020832  0x000050c1 copy  0x00000013 , 0x0000003f 
- 00020833  0x000050c2 isub  0x00000011 , 0x00000013 
- 00020834  0x000050c3 ifetch  0x00000002 , 0x00000006 
- 00020835  0x000050c4 copy  0x0000003f , 0x0000000b 
- 00020836  0x000050c5 ifetch  0x00000002 , 0x00000006 
- 00020837  0x000050c6 ifetch  0x00000002 , 0x00000006 
- 00020838  0x000050c7 nbranch  0x00005188 , 0x00000034 
- 00020839  0x000050c8 call  0x00007ea8 
- 00020840  0x000050cc copy  0x0000000b , 0x00000002 
- 00020841  0x000050cd bpatchx  0x0000001e , 0x00004023 
- 00020842  0x000050ce setarg  0x00000050 
- 00020843  0x000050cf isub  0x00000002 , 0x0000003e 
- 00020844  0x000050d0 branch  0x00005176 , 0x00000005 
- 00020845  0x000050d1 setarg  0x00000051 
- 00020846  0x000050d2 isub  0x00000002 , 0x0000003e 
- 00020847  0x000050d3 branch  0x0000517a , 0x00000005 
- 00020848  0x000050d4 setarg  0x00000052 
- 00020849  0x000050d5 isub  0x00000002 , 0x0000003e 
- 00020850  0x000050d6 branch  0x0000517e , 0x00000005 
- 00020851  0x000050d7 setarg  0x00000053 
- 00020852  0x000050d8 isub  0x00000002 , 0x0000003e 
- 00020853  0x000050d9 branch  0x00005182 , 0x00000005 
- 00020854  0x000050db fetch  0x00000001 , 0x00004250 
- 00020855  0x000050dc set1  0x00000005 
- 00020856  0x000050dd store  0x00000001 , 0x00004250 
- 00020857  0x000050de rtn 
- 00020858  0x000050e0 fetch  0x00000001 , 0x00004251 
- 00020859  0x000050e1 set1  0x00000005 
- 00020860  0x000050e2 store  0x00000001 , 0x00004251 
- 00020861  0x000050e3 rtn 
- 00020862  0x000050e5 fetch  0x00000001 , 0x00004252 
- 00020863  0x000050e6 set1  0x00000005 
- 00020864  0x000050e7 store  0x00000001 , 0x00004252 
- 00020865  0x000050e8 rtn 
- 00020866  0x000050ea fetch  0x00000001 , 0x00004253 
- 00020867  0x000050eb set1  0x00000005 
- 00020868  0x000050ec store  0x00000001 , 0x00004253 
- 00020869  0x000050ed jam  0x00000006 , 0x00000a99 
- 00020870  0x000050ee branch  0x00007d86 
- 00020871  0x000050f2 call  0x00007ead 
- 00020872  0x000050f4 increase  0xfffffffa , 0x00000011 
- 00020873  0x000050f6 branch  0x0000518d , 0x00000005 
- 00020874  0x000050f7 increase  0x00000001 , 0x00000006 
- 00020875  0x000050f8 increase  0xffffffff , 0x00000011 
- 00020876  0x000050f9 branch  0x00005189 
- 00020877  0x000050fb rtn 
- 00020878  0x000050fd ifetch  0x00000001 , 0x00000006 
- 00020879  0x000050fe copy  0x0000003f , 0x00000007 
- 00020880  0x000050ff ifetch  0x00000002 , 0x00000006 
- 00020881  0x00005100 copy  0x0000003f , 0x00000011 
- 00020882  0x00005101 copy  0x00000013 , 0x0000003f 
- 00020883  0x00005102 isub  0x00000011 , 0x00000013 
- 00020884  0x00005103 ifetch  0x00000002 , 0x00000006 
- 00020885  0x00005104 increase  0x00000002 , 0x00000006 
- 00020886  0x00005105 copy  0x0000003f , 0x00000002 
- 00020887  0x00005106 setarg  0x00000005 
- 00020888  0x00005107 istore  0x00000001 , 0x00000005 
- 00020889  0x00005108 copy  0x00000007 , 0x0000003f 
- 00020890  0x00005109 istore  0x00000001 , 0x00000005 
- 00020891  0x0000510a increase  0x00000002 , 0x00000011 
- 00020892  0x0000510b copy  0x00000011 , 0x0000003f 
- 00020893  0x0000510c istore  0x00000002 , 0x00000005 
- 00020894  0x0000510d call  0x00007ea8 
- 00020895  0x0000510e bpatchx  0x0000001f , 0x00004023 
- 00020896  0x0000510f setarg  0x00000050 
- 00020897  0x00005110 isub  0x00000002 , 0x0000003e 
- 00020898  0x00005111 branch  0x000051ad , 0x00000005 
- 00020899  0x00005112 setarg  0x00000051 
- 00020900  0x00005113 isub  0x00000002 , 0x0000003e 
- 00020901  0x00005114 branch  0x000051be , 0x00000005 
- 00020902  0x00005115 setarg  0x00000052 
- 00020903  0x00005116 isub  0x00000002 , 0x0000003e 
- 00020904  0x00005117 branch  0x000051c4 , 0x00000005 
- 00020905  0x00005118 setarg  0x00000053 
- 00020906  0x00005119 isub  0x00000002 , 0x0000003e 
- 00020907  0x0000511a branch  0x000051ca , 0x00000005 
- 00020908  0x0000511b branch  0x000051cf 
- 00020909  0x0000511d fetch  0x00000001 , 0x00004250 
- 00020910  0x0000511e set1  0x00000004 , 0x0000003f 
- 00020911  0x0000511f set1  0x00000003 , 0x0000003f 
- 00020912  0x00005120 store  0x00000001 , 0x00004250 
- 00020913  0x00005121 bbit1  0x00000002 , 0x000051bb 
- 00020914  0x00005122 fetcht  0x00000001 , 0x0000027f 
- 00020915  0x00005123 set1  0x00000006 , 0x00000002 
- 00020916  0x00005124 storet  0x00000001 , 0x0000027f 
- 00020917  0x00005125 copy  0x00000007 , 0x0000003f 
- 00020918  0x00005126 increase  0x00000001 , 0x0000003f 
- 00020919  0x00005127 store  0x00000001 , 0x00000281 
- 00020920  0x00005128 fetch  0x00000001 , 0x00004250 
- 00020921  0x00005129 set1  0x00000002 , 0x0000003f 
- 00020922  0x0000512a store  0x00000001 , 0x00004250 
- 00020923  0x0000512c fetch  0x00000002 , 0x00004248 
- 00020924  0x0000512d store  0x00000002 , 0x00000282 
- 00020925  0x0000512e branch  0x000051cf 
- 00020926  0x00005130 fetch  0x00000001 , 0x00004251 
- 00020927  0x00005131 set1  0x00000004 , 0x0000003f 
- 00020928  0x00005132 set1  0x00000003 , 0x0000003f 
- 00020929  0x00005133 store  0x00000001 , 0x00004251 
- 00020930  0x00005134 fetch  0x00000002 , 0x0000424a 
- 00020931  0x00005135 branch  0x000051cf 
- 00020932  0x00005137 fetch  0x00000001 , 0x00004252 
- 00020933  0x00005138 set1  0x00000004 , 0x0000003f 
- 00020934  0x00005139 set1  0x00000003 , 0x0000003f 
- 00020935  0x0000513a store  0x00000001 , 0x00004252 
- 00020936  0x0000513b fetch  0x00000002 , 0x0000424c 
- 00020937  0x0000513c branch  0x000051cf 
- 00020938  0x0000513e fetch  0x00000001 , 0x00004253 
- 00020939  0x0000513f set1  0x00000004 , 0x0000003f 
- 00020940  0x00005140 set1  0x00000003 , 0x0000003f 
- 00020941  0x00005141 store  0x00000001 , 0x00004253 
- 00020942  0x00005142 fetch  0x00000002 , 0x0000424e 
- 00020943  0x00005146 copy  0x0000003f , 0x0000000b 
- 00020944  0x00005147 call  0x00007ead 
- 00020945  0x00005149 copy  0x0000000b , 0x0000003f 
- 00020946  0x0000514b istore  0x00000002 , 0x00000005 
- 00020947  0x0000514c force  0x00000000 , 0x0000003f 
- 00020948  0x0000514d istore  0x00000002 , 0x00000005 
- 00020949  0x0000514e force  0x00000000 , 0x0000003f 
- 00020950  0x0000514f istore  0x00000002 , 0x00000005 
- 00020951  0x00005150 force  0x0000000a , 0x0000003f 
- 00020952  0x00005151 iadd  0x00000012 , 0x00000012 
- 00020953  0x00005152 increase  0xfffffffa , 0x00000011 
- 00020954  0x00005154 branch  0x000051e0 , 0x00000005 
- 00020955  0x00005155 ifetch  0x00000001 , 0x00000006 
- 00020956  0x00005156 istore  0x00000001 , 0x00000005 
- 00020957  0x00005157 increase  0x00000001 , 0x00000012 
- 00020958  0x00005158 increase  0xffffffff , 0x00000011 
- 00020959  0x00005159 branch  0x000051da 
- 00020960  0x0000515b rtn 
- 00020961  0x0000515d ifetch  0x00000001 , 0x00000006 
- 00020962  0x0000515e copy  0x0000003f , 0x00000007 
- 00020963  0x0000515f ifetch  0x00000002 , 0x00000006 
- 00020964  0x00005160 copy  0x0000003f , 0x00000011 
- 00020965  0x00005161 copy  0x00000013 , 0x0000003f 
- 00020966  0x00005162 isub  0x00000011 , 0x00000013 
- 00020967  0x00005164 ifetch  0x00000002 , 0x00000006 
- 00020968  0x00005165 copy  0x0000003f , 0x00000011 
- 00020969  0x00005166 ifetch  0x00000002 , 0x00000006 
- 00020970  0x00005167 copy  0x0000003f , 0x0000000b 
- 00020971  0x00005168 call  0x00007ea8 
- 00020972  0x00005169 bpatchx  0x00000020 , 0x00004024 
- 00020973  0x0000516a setarg  0x00000050 
- 00020974  0x0000516b copy  0x00000011 , 0x00000002 
- 00020975  0x0000516c isub  0x00000002 , 0x0000003e 
- 00020976  0x0000516d branch  0x000051fa , 0x00000005 
- 00020977  0x0000516e setarg  0x00000052 
- 00020978  0x0000516f copy  0x00000011 , 0x00000002 
- 00020979  0x00005170 isub  0x00000002 , 0x0000003e 
- 00020980  0x00005171 branch  0x000051ff , 0x00000005 
- 00020981  0x00005172 setarg  0x00000053 
- 00020982  0x00005173 copy  0x00000011 , 0x00000002 
- 00020983  0x00005174 isub  0x00000002 , 0x0000003e 
- 00020984  0x00005175 branch  0x00005201 , 0x00000005 
- 00020985  0x00005176 branch  0x00005203 
- 00020986  0x00005178 setarg  0x00000000 
- 00020987  0x00005179 store  0x00000002 , 0x00000275 
- 00020988  0x0000517a store  0x00000002 , 0x00004248 
- 00020989  0x0000517b store  0x00000001 , 0x00004250 
- 00020990  0x0000517c branch  0x00005205 
- 00020991  0x0000517e call  0x00005079 
- 00020992  0x0000517f branch  0x00005205 
- 00020993  0x00005181 call  0x0000507f 
- 00020994  0x00005187 branch  0x00005205 
- 00020995  0x00005189 setarg  0x00000000 
- 00020996  0x0000518a store  0x00000002 , 0x0000027b 
- 00020997  0x0000518c call  0x00007ead 
- 00020998  0x0000518d setarg  0x00000007 
- 00020999  0x0000518e istore  0x00000001 , 0x00000005 
- 00021000  0x0000518f copy  0x00000007 , 0x0000003f 
- 00021001  0x00005190 istore  0x00000001 , 0x00000005 
- 00021002  0x00005191 setarg  0x00000004 
- 00021003  0x00005192 istore  0x00000002 , 0x00000005 
- 00021004  0x00005193 copy  0x00000011 , 0x0000003f 
- 00021005  0x00005194 istore  0x00000002 , 0x00000005 
- 00021006  0x00005195 copy  0x0000000b , 0x0000003f 
- 00021007  0x00005196 istore  0x00000002 , 0x00000005 
- 00021008  0x00005197 force  0x00000008 , 0x0000003f 
- 00021009  0x00005198 iadd  0x00000012 , 0x00000012 
- 00021010  0x00005199 rtn 
- 00021011  0x0000519c ifetch  0x00000001 , 0x00000006 
- 00021012  0x0000519d copy  0x0000003f , 0x00000007 
- 00021013  0x0000519e ifetch  0x00000002 , 0x00000006 
- 00021014  0x0000519f copy  0x0000003f , 0x00000011 
- 00021015  0x000051a0 ifetch  0x00000002 , 0x00000006 
- 00021016  0x000051a1 copy  0x0000003f , 0x0000000b 
- 00021017  0x000051a2 ifetch  0x00000002 , 0x00000006 
- 00021018  0x000051a3 copy  0x0000003f , 0x00000002 
- 00021019  0x000051a4 call  0x00007ea8 
- 00021020  0x000051a5 bpatchx  0x00000021 , 0x00004024 
- 00021021  0x000051a6 fetch  0x00000001 , 0x00004255 
- 00021022  0x000051a7 icompare  0x000000ff , 0x00000007 
- 00021023  0x000051a8 nbranch  0x0000522a , 0x00000001 
- 00021024  0x000051a9 setarg  0x00000050 
- 00021025  0x000051aa isub  0x00000002 , 0x0000003e 
- 00021026  0x000051ab branch  0x00005227 , 0x00000005 
- 00021027  0x000051ac setarg  0x00000051 
- 00021028  0x000051ad isub  0x00000002 , 0x0000003e 
- 00021029  0x000051ae branch  0x0000522a , 0x00000005 
- 00021030  0x000051af branch  0x0000522a 
- 00021031  0x000051b1 jam  0x00000000 , 0x00004248 
- 00021032  0x000051b2 jam  0x00000000 , 0x00004250 
- 00021033  0x000051b3 branch  0x0000522a 
- 00021034  0x000051b8 call  0x00007ead 
- 00021035  0x000051b9 copy  0x00000013 , 0x0000003f 
- 00021036  0x000051ba isub  0x00000011 , 0x00000013 
- 00021037  0x000051bb rtn 
- 00021038  0x000051be setarg  0x00000001 
- 00021039  0x000051bf istore  0x00000001 , 0x00000005 
- 00021040  0x000051c0 ifetch  0x00000001 , 0x00000006 
- 00021041  0x000051c1 istore  0x00000001 , 0x00000005 
- 00021042  0x000051c2 setarg  0x00000002 
- 00021043  0x000051c3 istore  0x00000002 , 0x00000005 
- 00021044  0x000051c4 setarg  0x00000000 
- 00021045  0x000051c5 istore  0x00000002 , 0x00000005 
- 00021046  0x000051c6 setarg  0x00000006 
- 00021047  0x000051c7 iadd  0x00000012 , 0x00000012 
- 00021048  0x000051c8 force  0x00000004 , 0x00000013 
- 00021049  0x000051c9 rtn 
- 00021050  0x000051cd fetch  0x00000001 , 0x00004255 
- 00021051  0x000051ce increase  0x00000001 , 0x0000003f 
- 00021052  0x000051cf bne  0x00000000 , 0x0000523e 
- 00021053  0x000051d0 increase  0x00000001 , 0x0000003f 
- 00021054  0x000051d2 store  0x00000001 , 0x00004255 
- 00021055  0x000051d3 rtn 
- 00021056  0x000051de bpatchx  0x00000022 , 0x00004024 
- 00021057  0x000051df arg  0x00000000 , 0x00000012 
- 00021058  0x000051e0 call  0x0000526e 
- 00021059  0x000051e1 nbranch  0x00002a8c , 0x00000034 
- 00021060  0x000051e2 call  0x0000527e 
- 00021061  0x000051e3 arg  0x00001800 , 0x00000012 
- 00021062  0x000051e4 arg  0x00000000 , 0x00000007 
- 00021063  0x000051e6 fetcht  0x00000001 , 0x00004256 
- 00021064  0x000051e7 qisolate1  0x00000002 
- 00021065  0x000051e8 branch  0x0000524f , 0x00000001 
- 00021066  0x000051e9 call  0x000052a0 
- 00021067  0x000051ea sub  0x0000000b , 0x00000000 , 0x0000003e 
- 00021068  0x000051eb branch  0x0000524f , 0x00000002 
- 00021069  0x000051ec call  0x00005288 
- 00021070  0x000051ed branch  0x00005255 
- 00021071  0x000051ef increase  0x00000080 , 0x00000012 
- 00021072  0x000051f0 increase  0x00000001 , 0x00000007 
- 00021073  0x000051f1 setarg  0x00000008 
- 00021074  0x000051f2 isub  0x00000007 , 0x0000003e 
- 00021075  0x000051f3 branch  0x00005247 , 0x00000002 
- 00021076  0x000051f4 arg  0x00000000 , 0x00000012 
- 00021077  0x000051f6 copy  0x00000012 , 0x0000003f 
- 00021078  0x000051f7 branch  0x00002a8c , 0x00000034 
- 00021079  0x000051f8 rtn 
- 00021080  0x00005201 bpatchx  0x00000023 , 0x00004024 
- 00021081  0x00005202 call  0x00005277 
- 00021082  0x00005203 increase  0x00000001 , 0x00000006 
- 00021083  0x00005204 ifetch  0x00000002 , 0x00000006 
- 00021084  0x00005205 rtn 
- 00021085  0x0000520c bpatchx  0x00000024 , 0x00004024 
- 00021086  0x0000520d call  0x00005277 
- 00021087  0x0000520e copy  0x00000006 , 0x00000005 
- 00021088  0x0000520f copy  0x00000006 , 0x00000002 
- 00021089  0x00005210 setarg  0x00000000 
- 00021090  0x00005211 istore  0x00000003 , 0x00000005 
- 00021091  0x00005212 rtn 
- 00021092  0x00005218 bpatchx  0x00000025 , 0x00004024 
- 00021093  0x00005219 call  0x00005274 
- 00021094  0x0000521a branch  0x00002a8c , 0x00000034 
- 00021095  0x0000521b fetch  0x00000003 , 0x0000425d 
- 00021096  0x0000521c store  0x00000003 , 0x00004260 
- 00021097  0x0000521d fetch  0x00000003 , 0x0000425a 
- 00021098  0x0000521e store  0x00000003 , 0x0000425d 
- 00021099  0x0000521f fetch  0x00000003 , 0x00004257 
- 00021100  0x00005220 store  0x00000003 , 0x0000425a 
- 00021101  0x00005221 rtn 
- 00021102  0x00005228 bpatchx  0x00000026 , 0x00004024 
- 00021103  0x00005229 fetch  0x00000003 , 0x00004257 
- 00021104  0x0000522a rtn 
- 00021105  0x00005231 bpatchx  0x00000027 , 0x00004024 
- 00021106  0x00005232 fetch  0x00000003 , 0x0000425a 
- 00021107  0x00005233 rtn 
- 00021108  0x0000523a bpatchx  0x00000028 , 0x00004025 
- 00021109  0x0000523b fetch  0x00000003 , 0x00004260 
- 00021110  0x0000523c rtn 
- 00021111  0x00005242 call  0x00005274 
- 00021112  0x00005243 branch  0x00002a8c , 0x00000034 
- 00021113  0x00005244 arg  0x00004257 , 0x00000006 
- 00021114  0x00005246 ifetch  0x00000003 , 0x00000006 
- 00021115  0x00005247 branch  0x0000527a , 0x00000034 
- 00021116  0x00005248 increase  0xfffffffd , 0x00000006 
- 00021117  0x00005249 rtn 
- 00021118  0x00005251 bpatchx  0x00000029 , 0x00004025 
- 00021119  0x00005252 arg  0x00000004 , 0x00000039 
- 00021120  0x00005253 arg  0x00004257 , 0x00000006 
- 00021121  0x00005254 arg  0x00000000 , 0x00000002 
- 00021122  0x00005256 ifetch  0x00000003 , 0x00000006 
- 00021123  0x00005257 and  0x0000003f , 0x000000ff , 0x0000003f 
- 00021124  0x00005258 ior  0x00000002 , 0x00000002 
- 00021125  0x00005259 loop  0x00005282 
- 00021126  0x0000525a storet  0x00000001 , 0x00004256 
- 00021127  0x0000525b rtn 
- 00021128  0x00005264 bpatchx  0x0000002a , 0x00004025 
- 00021129  0x00005265 call  0x0000526e 
- 00021130  0x00005266 nbranch  0x00002a8c , 0x00000034 
- 00021131  0x00005267 call  0x00005274 
- 00021132  0x00005268 branch  0x00005295 , 0x00000034 
- 00021133  0x00005269 fetch  0x00000003 , 0x0000425a 
- 00021134  0x0000526a store  0x00000003 , 0x00004257 
- 00021135  0x0000526b ifetch  0x00000003 , 0x00000006 
- 00021136  0x0000526c istore  0x00000003 , 0x00000005 
- 00021137  0x0000526d ifetch  0x00000003 , 0x00000006 
- 00021138  0x0000526e istore  0x00000003 , 0x00000005 
- 00021139  0x0000526f setarg  0x00000000 
- 00021140  0x00005270 istore  0x00000003 , 0x00000005 
- 00021141  0x00005272 arg  0x00000000 , 0x00000002 
- 00021142  0x00005273 copy  0x0000000b , 0x0000003f 
- 00021143  0x00005274 iadd  0x00000007 , 0x0000003f 
- 00021144  0x00005276 qset1  0x00000002 
- 00021145  0x00005277 increase  0x00000001 , 0x00000007 
- 00021146  0x00005278 isub  0x00000007 , 0x0000003e 
- 00021147  0x00005279 nbranch  0x00005298 , 0x00000005 
- 00021148  0x0000527b lshift8  0x00000012 , 0x0000003f 
- 00021149  0x0000527c ior  0x00000002 , 0x0000003f 
- 00021150  0x0000527d store  0x00000003 , 0x00004260 
- 00021151  0x0000527e rtn 
- 00021152  0x00005289 bpatchx  0x0000002b , 0x00004025 
- 00021153  0x0000528a call  0x0000527e 
- 00021154  0x0000528b copy  0x00000007 , 0x00000013 
- 00021155  0x0000528c arg  0x00000000 , 0x00000002 
- 00021156  0x0000528d arg  0x00000000 , 0x0000000b 
- 00021157  0x00005290 copy  0x00000007 , 0x0000003f 
- 00021158  0x00005291 beq  0x00000008 , 0x000052b0 
- 00021159  0x00005292 fetch  0x00000001 , 0x00004256 
- 00021160  0x00005293 qisolate1  0x0000003f 
- 00021161  0x00005294 branch  0x000052b0 , 0x00000001 
- 00021162  0x00005295 increase  0x00000080 , 0x00000002 
- 00021163  0x00005296 increase  0x00000001 , 0x00000007 
- 00021164  0x00005297 copy  0x00000011 , 0x0000003f 
- 00021165  0x00005298 isub  0x00000002 , 0x0000003e 
- 00021166  0x00005299 branch  0x000052b0 , 0x00000005 
- 00021167  0x0000529a branch  0x000052a5 , 0x00000002 
- 00021168  0x0000529c copy  0x00000002 , 0x0000003f 
- 00021169  0x0000529d isub  0x00000011 , 0x0000003e 
- 00021170  0x0000529e nbranch  0x000052b6 , 0x00000002 
- 00021171  0x0000529f copy  0x00000007 , 0x0000003f 
- 00021172  0x000052a0 copy  0x00000013 , 0x00000002 
- 00021173  0x000052a1 isub  0x00000002 , 0x0000000b 
- 00021174  0x000052a3 copy  0x00000013 , 0x00000007 
- 00021175  0x000052a4 rtn 
- 00021176  0x000052a8 bpatchx  0x0000002c , 0x00004025 
- 00021177  0x000052a9 arg  0x0000007f , 0x00000011 
- 00021178  0x000052aa call  0x00005240 
- 00021179  0x000052ab store  0x00000002 , 0x0000026b 
- 00021180  0x000052ac increase  0x00000004 , 0x0000003f 
- 00021181  0x000052ad store  0x00000002 , 0x0000026d 
- 00021182  0x000052ae setarg  0x00000000 
- 00021183  0x000052af store  0x00000002 , 0x0000026f 
- 00021184  0x000052b0 rtn 
- 00021185  0x000052b3 fetch  0x00000002 , 0x0000026b 
- 00021186  0x000052b4 branch  0x000052e2 
- 00021187  0x000052b7 fetch  0x00000002 , 0x0000026d 
- 00021188  0x000052b8 branch  0x000052e2 
- 00021189  0x000052bc bpatchx  0x0000002d , 0x00004025 
- 00021190  0x000052bd arg  0x000000fa , 0x00000011 
- 00021191  0x000052be call  0x00005240 
- 00021192  0x000052bf store  0x00000002 , 0x00000271 
- 00021193  0x000052c0 increase  0x00000004 , 0x0000003f 
- 00021194  0x000052c1 store  0x00000002 , 0x00000273 
- 00021195  0x000052c2 setarg  0x00000000 
- 00021196  0x000052c3 store  0x00000002 , 0x00000275 
- 00021197  0x000052c4 rtn 
- 00021198  0x000052c7 fetch  0x00000002 , 0x00000271 
- 00021199  0x000052c8 branch  0x000052e2 
- 00021200  0x000052cb fetch  0x00000002 , 0x00000273 
- 00021201  0x000052cc branch  0x000052e2 
- 00021202  0x000052d0 bpatchx  0x0000002e , 0x00004025 
- 00021203  0x000052d1 call  0x00007e7c 
- 00021204  0x000052d2 jam  0x00000001 , 0x00000284 
- 00021205  0x000052d3 call  0x0000526e 
- 00021206  0x000052d4 nrtn  0x00000034 
- 00021207  0x000052d5 arg  0x0000007f , 0x00000011 
- 00021208  0x000052d6 call  0x00005240 
- 00021209  0x000052d7 store  0x00000002 , 0x00000277 
- 00021210  0x000052d8 increase  0x00000004 , 0x0000003f 
- 00021211  0x000052d9 store  0x00000002 , 0x00000279 
- 00021212  0x000052da setarg  0x00000000 
- 00021213  0x000052db store  0x00000002 , 0x0000027b 
- 00021214  0x000052dc jam  0x00000000 , 0x00000284 
- 00021215  0x000052dd branch  0x00007e8c 
- 00021216  0x000052e0 fetch  0x00000002 , 0x00000277 
- 00021217  0x000052e1 branch  0x000052e2 
- 00021218  0x000052e4 branch  0x00002a8c , 0x00000034 
- 00021219  0x000052e5 copy  0x0000003f , 0x00000005 
- 00021220  0x000052e6 rtn 
- 00021221  0x000052ea bpatchx  0x0000002f , 0x00004025 
- 00021222  0x000052eb arg  0x00000000 , 0x00000012 
- 00021223  0x000052ec arg  0x00004257 , 0x00000011 
- 00021224  0x000052ed increase  0xfffffffe , 0x00000011 
- 00021225  0x000052ef increase  0x00000002 , 0x00000011 
- 00021226  0x000052f0 setarg  0x00004263 
- 00021227  0x000052f1 isub  0x00000011 , 0x0000003e 
- 00021228  0x000052f2 branch  0x000052f5 , 0x00000005 
- 00021229  0x000052f3 ifetch  0x00000001 , 0x00000011 
- 00021230  0x000052f4 increase  0x00000001 , 0x00000011 
- 00021231  0x000052f5 branch  0x000052e9 , 0x00000034 
- 00021232  0x000052f6 ifetcht  0x00000002 , 0x00000011 
- 00021233  0x000052f7 ifetch  0x00000002 , 0x00000002 
- 00021234  0x000052f8 iadd  0x00000012 , 0x00000012 
- 00021235  0x000052f9 increase  0x00000004 , 0x00000012 
- 00021236  0x000052fa branch  0x000052e9 
- 00021237  0x000052fc copy  0x00000012 , 0x0000003f 
- 00021238  0x000052fd rtn 
- 00021239  0x00005301 arg  0x0000000c , 0x00000007 
- 00021240  0x00005302 branch  0x00002c32 
- 00021241  0x00005305 arg  0x0000000c , 0x00000007 
- 00021242  0x00005306 branch  0x00002c36 
- 00021243  0x00005309 bpatchx  0x00000030 , 0x00004026 
- 00021244  0x0000530a call  0x0000527e 
- 00021245  0x0000530b fetch  0x00000001 , 0x00004256 
- 00021246  0x0000530c rtn  0x00000034 
- 00021247  0x0000530d call  0x000052e5 
- 00021248  0x0000530e arg  0x00000100 , 0x00000002 
- 00021249  0x0000530f isub  0x00000002 , 0x0000003e 
- 00021250  0x00005310 branch  0x000052f7 , 0x00000002 
- 00021251  0x00005311 call  0x000052f9 
- 00021252  0x00005312 arg  0x00004263 , 0x00000005 
- 00021253  0x00005313 arg  0x00004257 , 0x00000011 
- 00021254  0x00005315 setarg  0x00004263 
- 00021255  0x00005316 isub  0x00000011 , 0x0000003e 
- 00021256  0x00005317 rtn  0x00000005 
- 00021257  0x00005318 ifetch  0x00000001 , 0x00000011 
- 00021258  0x00005319 increase  0x00000001 , 0x00000011 
- 00021259  0x0000531a nbranch  0x0000530f , 0x00000034 
- 00021260  0x0000531b istore  0x00000002 , 0x00000005 
- 00021261  0x0000531c increase  0x00000002 , 0x00000011 
- 00021262  0x0000531d branch  0x00005306 
- 00021263  0x0000531f ifetch  0x00000002 , 0x00000011 
- 00021264  0x00005320 increase  0x00000002 , 0x00000011 
- 00021265  0x00005321 copy  0x0000003f , 0x00000006 
- 00021266  0x00005322 ifetch  0x00000002 , 0x00000006 
- 00021267  0x00005323 istore  0x00000002 , 0x00000005 
- 00021268  0x00005324 copy  0x0000003f , 0x00000039 
- 00021269  0x00005325 increase  0x00000002 , 0x00000039 
- 00021270  0x00005326 call  0x00007f01 
- 00021271  0x00005327 branch  0x00005306 
- 00021272  0x0000532a bpatchx  0x00000031 , 0x00004026 
- 00021273  0x0000532b call  0x0000527e 
- 00021274  0x0000532c fetch  0x00000001 , 0x00004256 
- 00021275  0x0000532d rtn  0x00000034 
- 00021276  0x0000532e arg  0x00004258 , 0x00000011 
- 00021277  0x0000532f increase  0xfffffffd , 0x00000011 
- 00021278  0x00005330 arg  0x00004263 , 0x00000006 
- 00021279  0x00005332 increase  0x00000003 , 0x00000011 
- 00021280  0x00005333 setarg  0x00004264 
- 00021281  0x00005334 isub  0x00000011 , 0x0000003e 
- 00021282  0x00005335 rtn  0x00000005 
- 00021283  0x00005336 ifetch  0x00000002 , 0x00000006 
- 00021284  0x00005337 branch  0x0000531f , 0x00000034 
- 00021285  0x00005338 increase  0x00000004 , 0x0000003f 
- 00021286  0x00005339 copy  0x0000003f , 0x00000039 
- 00021287  0x0000533a copy  0x00000006 , 0x00000012 
- 00021288  0x0000533b ifetch  0x00000002 , 0x00000011 
- 00021289  0x0000533c copy  0x0000003f , 0x00000005 
- 00021290  0x0000533d copy  0x00000012 , 0x00000006 
- 00021291  0x0000533e increase  0xfffffffe , 0x00000006 
- 00021292  0x0000533f call  0x00007f01 
- 00021293  0x00005340 branch  0x0000531f 
- 00021294  0x0000534b bpatchx  0x00000032 , 0x00004026 
- 00021295  0x0000534c disable  0x0000002b 
- 00021296  0x0000534d jam  0x00000001 , 0x00000455 
- 00021297  0x0000534e jam  0x00000003 , 0x0000043f 
- 00021298  0x0000534f jam  0x00000001 , 0x00000456 
- 00021299  0x00005350 setarg  0xffffffff 
- 00021300  0x00005351 store  0x00000002 , 0x00000459 
- 00021301  0x00005352 force  0x00000000 , 0x0000003f 
- 00021302  0x00005353 store  0x00000001 , 0x00000457 
- 00021303  0x00005354 store  0x00000001 , 0x00000462 
- 00021304  0x00005355 store  0x00000003 , 0x00004169 
- 00021305  0x00005356 store  0x00000003 , 0x0000416c 
- 00021306  0x00005357 store  0x00000005 , 0x00004403 
- 00021307  0x00005358 set1  0x00000027 , 0x0000003f 
- 00021308  0x00005359 store  0x00000005 , 0x00004408 
- 00021309  0x0000535a jam  0x00000001 , 0x000043dc 
- 00021310  0x0000535b jam  0x00000000 , 0x000043dd 
- 00021311  0x0000535c branch  0x000056ed 
- 00021312  0x0000535f bpatchx  0x00000033 , 0x00004026 
- 00021313  0x00005360 enable  0x00000029 
- 00021314  0x00005361 jam  0x00000003 , 0x00000440 
- 00021315  0x00005362 jam  0x00000001 , 0x00000478 
- 00021316  0x00005363 jam  0x00000001 , 0x0000445a 
- 00021317  0x00005364 setarg  0x0000ffff 
- 00021318  0x00005365 store  0x00000002 , 0x0000445c 
- 00021319  0x00005366 force  0x00000000 , 0x0000003f 
- 00021320  0x00005367 store  0x00000005 , 0x00004408 
- 00021321  0x00005368 set1  0x00000027 , 0x0000003f 
- 00021322  0x00005369 store  0x00000005 , 0x00004403 
- 00021323  0x0000536a branch  0x0000532e 
- 00021324  0x0000536e bpatchx  0x00000034 , 0x00004026 
- 00021325  0x0000536f disable  0x00000029 
- 00021326  0x00005370 setarg  0x00000017 
- 00021327  0x00005371 store  0x00000002 , 0x000044a8 
- 00021328  0x00005372 jam  0x00000001 , 0x00000440 
- 00021329  0x00005373 jam  0x00000000 , 0x0000436e 
- 00021330  0x00005374 jam  0x00000000 , 0x000000a0 
- 00021331  0x00005375 jam  0x00000000 , 0x000044c4 
- 00021332  0x00005376 jam  0x00000000 , 0x000044c5 
- 00021333  0x00005377 fetch  0x00000002 , 0x0000046d 
- 00021334  0x00005378 store  0x00000002 , 0x000044ba 
- 00021335  0x00005379 fetch  0x00000002 , 0x00000441 
- 00021336  0x0000537a mul32  0x0000003f , 0x00000005 , 0x0000003f 
- 00021337  0x0000537b rshift4  0x0000003f , 0x0000003f 
- 00021338  0x0000537c store  0x00000002 , 0x0000046d 
- 00021339  0x0000537d branch  0x0000532e 
- 00021340  0x00005384 call  0x000053c4 
- 00021341  0x00005385 call  0x000055e8 
- 00021342  0x00005386 call  0x000056f0 
- 00021343  0x00005387 branch  0x000053ce 
- 00021344  0x0000538a bpatchx  0x00000035 , 0x00004026 
- 00021345  0x0000538b call  0x000053c4 
- 00021346  0x0000538c call  0x000032f4 
- 00021347  0x0000538d fetch  0x00000001 , 0x00000440 
- 00021348  0x0000538e beq  0x00000003 , 0x00005366 
- 00021349  0x0000538f branch  0x0000537a 
- 00021350  0x00005396 bpatchx  0x00000036 , 0x00004026 
- 00021351  0x00005397 enable  0x00000029 
- 00021352  0x00005398 call  0x000056e4 
- 00021353  0x00005399 branch  0x00005377 , 0x00000002 
- 00021354  0x0000539a call  0x00002c6c 
- 00021355  0x0000539b call  0x00005413 
- 00021356  0x0000539c call  0x0000561e 
- 00021357  0x0000539d disable  0x0000002d 
- 00021358  0x0000539e call  0x000054bf 
- 00021359  0x0000539f nrtn  0x0000002d 
- 00021360  0x000053a0 bpatchx  0x00000037 , 0x00004026 
- 00021361  0x000053a1 fetch  0x00000001 , 0x00000005 
- 00021362  0x000053a2 increase  0x00000001 , 0x0000003f 
- 00021363  0x000053a3 store  0x00000001 , 0x00000005 
- 00021364  0x000053a4 call  0x000055aa 
- 00021365  0x000053a5 disable  0x00000029 
- 00021366  0x000053a6 rtn 
- 00021367  0x000053a9 call  0x000053a9 
- 00021368  0x000053aa disable  0x00000029 
- 00021369  0x000053ab rtn 
- 00021370  0x000053b1 bpatchx  0x00000038 , 0x00004027 
- 00021371  0x000053b2 jam  0x00000000 , 0x0000450f 
- 00021372  0x000053b3 call  0x00007aaf 
- 00021373  0x000053b4 call  0x00005c18 
- 00021374  0x000053b5 disable  0x0000002e 
- 00021375  0x000053b6 call  0x000056e4 
- 00021376  0x000053b7 branch  0x000053a9 , 0x00000002 
- 00021377  0x000053b8 call  0x00002c6c 
- 00021378  0x000053b9 call  0x00005413 
- 00021379  0x000053ba call  0x00005489 
- 00021380  0x000053bb nbranch  0x0000539b , 0x00000018 
- 00021381  0x000053bc call  0x000053b7 
- 00021382  0x000053bd branch  0x00005388 , 0x0000002d 
- 00021383  0x000053be branch  0x00005395 
- 00021384  0x000053c2 bpatchx  0x00000039 , 0x00004027 
- 00021385  0x000053c3 fetch  0x00000001 , 0x0000450f 
- 00021386  0x000053c4 pincrease  0x00000001 
- 00021387  0x000053c5 store  0x00000001 , 0x0000450f 
- 00021388  0x000053c6 beq  0x0000000c , 0x00005395 
- 00021389  0x000053c7 call  0x000055aa 
- 00021390  0x000053c8 call  0x0000561e 
- 00021391  0x000053c9 call  0x000054c7 
- 00021392  0x000053ca call  0x0000567e 
- 00021393  0x000053cb fetch  0x00000002 , 0x000041fb 
- 00021394  0x000053cc call  0x00007f9c 
- 00021395  0x000053cd call  0x000053a0 
- 00021396  0x000053ce branch  0x000053a4 , 0x00000028 
- 00021397  0x000053d0 bpatchx  0x0000003a , 0x00004027 
- 00021398  0x000053d1 call  0x00005be4 
- 00021399  0x000053d2 call  0x00005bdb 
- 00021400  0x000053d3 call  0x00007d9c 
- 00021401  0x000053d4 fetch  0x00000001 , 0x00000462 
- 00021402  0x000053d5 bbit1  0x00000003 , 0x000053a9 
- 00021403  0x000053d7 bpatchx  0x0000003b , 0x00004027 
- 00021404  0x000053d8 call  0x000057f4 
- 00021405  0x000053d9 call  0x0000559d 
- 00021406  0x000053da call  0x00005575 
- 00021407  0x000053db branch  0x00002841 
- 00021408  0x000053df disable  0x00000028 
- 00021409  0x000053e0 bmark1  0x0000002a , 0x00007fe7 
- 00021410  0x000053e1 bmark1  0x00000029 , 0x00007fe7 
- 00021411  0x000053e2 rtn 
- 00021412  0x000053e6 bpatchx  0x0000003c , 0x00004027 
- 00021413  0x000053e7 enable  0x0000002e 
- 00021414  0x000053e8 call  0x000054c1 
- 00021415  0x000053e9 branch  0x00005388 , 0x0000002d 
- 00021416  0x000053ea branch  0x00005395 
- 00021417  0x000053f0 bpatchx  0x0000003d , 0x00004027 
- 00021418  0x000053f1 call  0x000053af 
- 00021419  0x000053f2 call  0x000033b4 
- 00021420  0x000053f3 call  0x00007a77 
- 00021421  0x000053f4 jam  0x00000015 , 0x00000a99 
- 00021422  0x000053f5 branch  0x00007d86 
- 00021423  0x000053f8 setarg  0x00000000 
- 00021424  0x000053f9 store  0x00000009 , 0x000044ff 
- 00021425  0x000053fa jam  0x00000000 , 0x00000455 
- 00021426  0x000053fb jam  0x00000000 , 0x00000440 
- 00021427  0x000053fc jam  0x00000000 , 0x0000043f 
- 00021428  0x000053fd jam  0x00000000 , 0x000044c5 
- 00021429  0x000053fe jam  0x00000000 , 0x000044c4 
- 00021430  0x000053ff rtn 
- 00021431  0x00005402 bpatchx  0x0000003e , 0x00004027 
- 00021432  0x00005403 fetch  0x00000001 , 0x00000005 
- 00021433  0x00005404 increase  0x00000001 , 0x0000003f 
- 00021434  0x00005405 store  0x00000001 , 0x00000005 
- 00021435  0x00005406 fetch  0x00000001 , 0x0000043f 
- 00021436  0x00005407 rtnbit1  0x00000003 
- 00021437  0x00005408 set1  0x00000003 
- 00021438  0x00005409 store  0x00000001 , 0x0000043f 
- 00021439  0x0000540a fetch  0x00000002 , 0x000044ba 
- 00021440  0x0000540b store  0x00000002 , 0x0000046d 
- 00021441  0x0000540c setarg  0x00000000 
- 00021442  0x0000540d store  0x00000004 , 0x000044e5 
- 00021443  0x0000540e rtn 
- 00021444  0x00005412 bpatchx  0x0000003f , 0x00004027 
- 00021445  0x00005413 jam  0x00000036 , 0x0000890f 
- 00021446  0x00005414 jam  0x0000005f , 0x0000890b 
- 00021447  0x00005415 enable  0x00000036 
- 00021448  0x00005416 jam  0x00000007 , 0x00008914 
- 00021449  0x00005417 call  0x00002c6c 
- 00021450  0x00005418 fetch  0x00000001 , 0x000041e0 
- 00021451  0x00005419 rtn  0x00000034 
- 00021452  0x0000541a jam  0x000000b8 , 0x0000890a 
- 00021453  0x0000541b rtn 
- 00021454  0x0000541e bpatchx  0x00000040 , 0x00004028 
- 00021455  0x0000541f jam  0x0000002e , 0x0000890f 
- 00021456  0x00005420 jam  0x000000ff , 0x0000890b 
- 00021457  0x00005421 disable  0x00000036 
- 00021458  0x00005422 jam  0x00000003 , 0x00008914 
- 00021459  0x00005423 arg  0x00000000 , 0x0000001b 
- 00021460  0x00005424 rtn 
- 00021461  0x00005427 disable  0x00000009 
- 00021462  0x00005428 disable  0x00000007 
- 00021463  0x00005429 fetch  0x00000003 , 0x00000467 
- 00021464  0x0000542a iforce  0x0000000f 
- 00021465  0x0000542b fetch  0x00000001 , 0x00000016 
- 00021466  0x0000542c reverse  0x0000003f , 0x00000002 
- 00021467  0x0000542d set1  0x00000001 , 0x00000002 
- 00021468  0x0000542e rshift  0x00000002 , 0x0000000e 
- 00021469  0x0000542f rtn 
- 00021470  0x00005433 call  0x000053e6 
- 00021471  0x00005434 call  0x0000291f 
- 00021472  0x00005435 setarg  0x00000500 
- 00021473  0x00005436 call  0x00002a8f 
- 00021474  0x00005437 branch  0x00002924 
- 00021475  0x0000543a branch  0x00002939 , 0x0000002d 
- 00021476  0x0000543c call  0x000053e6 
- 00021477  0x0000543d branch  0x00002933 
- 00021478  0x0000543f bpatchx  0x00000041 , 0x00004028 
- 00021479  0x00005440 call  0x00002918 
- 00021480  0x00005441 fetch  0x00000001 , 0x0000048c 
- 00021481  0x00005442 nbranch  0x000053f9 , 0x00000034 
- 00021482  0x00005443 fetch  0x00000001 , 0x00000016 
- 00021483  0x00005444 sub  0x0000003f , 0x00000024 , 0x0000003e 
- 00021484  0x00005445 branch  0x000053f3 , 0x00000002 
- 00021485  0x00005446 force  0x00000000 , 0x00000002 
- 00021486  0x00005447 rtneq  0x00000025 
- 00021487  0x00005448 force  0x00000018 , 0x00000002 
- 00021488  0x00005449 rtneq  0x00000026 
- 00021489  0x0000544a force  0x0000004e , 0x00000002 
- 00021490  0x0000544b rtn 
- 00021491  0x0000544e sub  0x0000003f , 0x0000000a , 0x0000003e 
- 00021492  0x0000544f branch  0x000053f6 , 0x00000002 
- 00021493  0x00005450 increase  0x00000001 , 0x0000003f 
- 00021494  0x00005453 lshift  0x0000003f , 0x0000003f 
- 00021495  0x00005454 add  0x0000003f , 0x00000002 , 0x00000002 
- 00021496  0x00005455 rtn 
- 00021497  0x00005458 fetch  0x00000001 , 0x00000016 
- 00021498  0x00005459 lshift  0x0000003f , 0x00000002 
- 00021499  0x0000545a rtn 
- 00021500  0x0000545d arg  0x000001f4 , 0x00000002 
- 00021501  0x0000545e rtn  0x00000034 
- 00021502  0x0000545f arg  0x000000fa , 0x00000002 
- 00021503  0x00005460 rtneq  0x00000001 
- 00021504  0x00005461 arg  0x00000096 , 0x00000002 
- 00021505  0x00005462 rtneq  0x00000002 
- 00021506  0x00005463 arg  0x00000064 , 0x00000002 
- 00021507  0x00005464 rtneq  0x00000003 
- 00021508  0x00005465 arg  0x0000004b , 0x00000002 
- 00021509  0x00005466 rtneq  0x00000004 
- 00021510  0x00005467 arg  0x00000032 , 0x00000002 
- 00021511  0x00005468 rtneq  0x00000005 
- 00021512  0x00005469 arg  0x00000028 , 0x00000002 
- 00021513  0x0000546a rtneq  0x00000006 
- 00021514  0x0000546b arg  0x00000014 , 0x00000002 
- 00021515  0x0000546c rtn 
- 00021516  0x00005471 setarg  0x008e89be 
- 00021517  0x00005472 lshift8  0x0000003f , 0x0000003f 
- 00021518  0x00005473 or_into  0x000000d6 , 0x0000003f 
- 00021519  0x00005474 iforce  0x00000009 
- 00021520  0x00005475 setarg  0x00555555 
- 00021521  0x00005476 store  0x00000003 , 0x00000467 
- 00021522  0x00005477 rtn 
- 00021523  0x0000547a bpatchx  0x00000042 , 0x00004028 
- 00021524  0x0000547b enable  0x00000010 
- 00021525  0x0000547c fetch  0x00000004 , 0x00000463 
- 00021526  0x0000547d iforce  0x00000009 
- 00021527  0x0000547e call  0x00005466 
- 00021528  0x0000547f setarg  0x00000200 
- 00021529  0x00005480 branch  0x0000541c , 0x00000029 
- 00021530  0x00005481 fetch  0x00000002 , 0x0000044d 
- 00021531  0x00005482 rshift  0x0000003f , 0x0000003f 
- 00021532  0x00005484 arg  0x00000500 , 0x00000002 
- 00021533  0x00005485 iadd  0x00000002 , 0x0000003f 
- 00021534  0x00005486 call  0x00002a24 
- 00021535  0x00005487 deposit  0x0000001a 
- 00021536  0x00005488 store  0x00000006 , 0x00000491 
- 00021537  0x00005489 rtn 
- 00021538  0x0000548c bpatchx  0x00000043 , 0x00004028 
- 00021539  0x0000548d fetch  0x00000001 , 0x00000016 
- 00021540  0x0000548e beq  0x00000025 , 0x00005428 
- 00021541  0x0000548f beq  0x00000026 , 0x0000542e 
- 00021542  0x00005490 beq  0x00000027 , 0x00005434 
- 00021543  0x00005491 branch  0x00005434 
- 00021544  0x00005494 fetcht  0x00000001 , 0x0000448d 
- 00021545  0x00005495 isolate1  0x00000001 , 0x00000002 
- 00021546  0x00005496 branch  0x0000543f , 0x00000001 
- 00021547  0x00005497 isolate1  0x00000002 , 0x00000002 
- 00021548  0x00005498 branch  0x00005444 , 0x00000001 
- 00021549  0x00005499 branch  0x0000543a 
- 00021550  0x0000549d fetcht  0x00000001 , 0x0000448d 
- 00021551  0x0000549e isolate1  0x00000002 , 0x00000002 
- 00021552  0x0000549f branch  0x00005444 , 0x00000001 
- 00021553  0x000054a0 isolate1  0x00000000 , 0x00000002 
- 00021554  0x000054a1 branch  0x0000543a , 0x00000001 
- 00021555  0x000054a2 branch  0x0000543f 
- 00021556  0x000054a6 fetcht  0x00000001 , 0x0000448d 
- 00021557  0x000054a7 isolate1  0x00000000 , 0x00000002 
- 00021558  0x000054a8 branch  0x0000543a , 0x00000001 
- 00021559  0x000054a9 isolate1  0x00000001 , 0x00000002 
- 00021560  0x000054aa branch  0x0000543f , 0x00000001 
- 00021561  0x000054ab branch  0x00005444 
- 00021562  0x000054b0 jam  0x00000025 , 0x00000016 
- 00021563  0x000054b1 fetch  0x00000001 , 0x00000ac2 
- 00021564  0x000054b2 set1  0x00000000 , 0x0000003f 
- 00021565  0x000054b3 store  0x00000001 , 0x00000ac2 
- 00021566  0x000054b4 rtn 
- 00021567  0x000054b7 jam  0x00000026 , 0x00000016 
- 00021568  0x000054b8 fetch  0x00000001 , 0x00000ac2 
- 00021569  0x000054b9 set1  0x00000001 , 0x0000003f 
- 00021570  0x000054ba store  0x00000001 , 0x00000ac2 
- 00021571  0x000054bb rtn 
- 00021572  0x000054be jam  0x00000027 , 0x00000016 
- 00021573  0x000054bf fetch  0x00000001 , 0x00000ac2 
- 00021574  0x000054c0 set1  0x00000002 , 0x0000003f 
- 00021575  0x000054c1 store  0x00000001 , 0x00000ac2 
- 00021576  0x000054c2 rtn 
- 00021577  0x000054c7 bpatchx  0x00000044 , 0x00004028 
- 00021578  0x000054c8 add  0x00000011 , 0x00000001 , 0x00000006 
- 00021579  0x000054c9 ifetch  0x00000001 , 0x00000006 
- 00021580  0x000054ca rtnbit0  0x00000000 
- 00021581  0x000054cb add  0x00000011 , 0x0000001a , 0x00000005 
- 00021582  0x000054cc ifetch  0x00000002 , 0x00000005 
- 00021583  0x000054cd increase  0x00000001 , 0x0000003f 
- 00021584  0x000054ce istore  0x00000002 , 0x00000005 
- 00021585  0x000054cf add  0x00000011 , 0x00000019 , 0x00000006 
- 00021586  0x000054d0 ifetch  0x00000001 , 0x00000006 
- 00021587  0x000054d1 add  0x00000011 , 0x00000018 , 0x00000005 
- 00021588  0x000054d2 ifetcht  0x00000001 , 0x00000005 
- 00021589  0x000054d3 iadd  0x00000002 , 0x0000003f 
- 00021590  0x000054d4 sub  0x0000003f , 0x00000024 , 0x0000003e 
- 00021591  0x000054d5 branch  0x00005459 , 0x00000002 
- 00021592  0x000054d6 increase  0xffffffdb , 0x0000003f 
- 00021593  0x000054d8 istore  0x00000001 , 0x00000005 
- 00021594  0x000054d9 rtn 
- 00021595  0x000054dd bpatchx  0x00000045 , 0x00004028 
- 00021596  0x000054de fetch  0x00000005 , 0x0000046f 
- 00021597  0x000054df force  0x00000000 , 0x00000002 
- 00021598  0x000054e0 force  0x00000025 , 0x00000039 
- 00021599  0x000054e2 bbit0  0x00000000 , 0x00005461 
- 00021600  0x000054e3 increase  0x00000001 , 0x00000002 
- 00021601  0x000054e5 rshift  0x0000003f , 0x0000003f 
- 00021602  0x000054e6 loop  0x0000545f 
- 00021603  0x000054e7 add  0x00000002 , 0xffffffff , 0x0000003f 
- 00021604  0x000054e8 store  0x00000001 , 0x00000461 
- 00021605  0x000054e9 rtn 
- 00021606  0x000054ec bpatchx  0x00000046 , 0x00004028 
- 00021607  0x000054ed fetch  0x00000001 , 0x00000457 
- 00021608  0x000054ee iforce  0x00000007 
- 00021609  0x000054ef fetcht  0x00000005 , 0x0000046f 
- 00021610  0x000054f0 qisolate1  0x00000002 
- 00021611  0x000054f1 branch  0x0000547c , 0x00000001 
- 00021612  0x000054f3 bpatchx  0x00000047 , 0x00004028 
- 00021613  0x000054f4 fetch  0x00000001 , 0x00000461 
- 00021614  0x000054f5 isub  0x00000007 , 0x0000003f 
- 00021615  0x000054f6 branch  0x00005472 , 0x00000002 
- 00021616  0x000054f7 sub  0x0000003f , 0xffffffff , 0x00000007 
- 00021617  0x000054f8 branch  0x0000546c 
- 00021618  0x000054fa copy  0x00000007 , 0x00000039 
- 00021619  0x000054fb force  0x00000000 , 0x00000007 
- 00021620  0x000054fd qisolate1  0x00000002 
- 00021621  0x000054fe branch  0x00005477 , 0x00000001 
- 00021622  0x000054ff increase  0x00000001 , 0x00000039 
- 00021623  0x00005501 deposit  0x00000039 
- 00021624  0x00005502 branch  0x0000547c , 0x00000034 
- 00021625  0x00005503 increase  0x00000001 , 0x00000007 
- 00021626  0x00005504 increase  0xffffffff , 0x00000039 
- 00021627  0x00005505 branch  0x00005474 
- 00021628  0x00005507 deposit  0x00000007 
- 00021629  0x00005508 store  0x00000001 , 0x00000016 
- 00021630  0x00005509 rtn 
- 00021631  0x0000550d branch  0x00005482 , 0x00000029 
- 00021632  0x0000550e until  0x0000003e , 0x00000003 
- 00021633  0x0000550f rtn 
- 00021634  0x00005512 arg  0x00000ea0 , 0x0000000b 
- 00021635  0x00005513 until  0x00000023 , 0x00000026 
- 00021636  0x00005514 rtn 
- 00021637  0x00005517 disable  0x00000010 
- 00021638  0x00005518 fetch  0x00000002 , 0x0000436c 
- 00021639  0x00005519 copy  0x0000003f , 0x0000000b 
- 00021640  0x0000551a branch  0x0000548e 
- 00021641  0x0000551e bpatchx  0x00000048 , 0x00004029 
- 00021642  0x0000551f enable  0x00000010 
- 00021643  0x00005520 fetch  0x00000002 , 0x0000044d 
- 00021644  0x00005521 fetcht  0x00000004 , 0x000044e5 
- 00021645  0x00005522 iadd  0x00000002 , 0x0000000b 
- 00021646  0x00005524 call  0x000053de 
- 00021647  0x00005526 bpatchx  0x00000049 , 0x00004029 
- 00021648  0x00005527 call  0x000053d5 
- 00021649  0x00005528 disable  0x0000002d 
- 00021650  0x00005529 enable  0x0000000d 
- 00021651  0x0000552a enable  0x00000021 
- 00021652  0x0000552b disable  0x00000020 
- 00021653  0x0000552c copy  0x0000000b , 0x0000001b 
- 00021654  0x0000552d correlate  0x0000003e , 0x00000003 
- 00021655  0x0000552e branch  0x0000549a , 0x0000002e 
- 00021656  0x0000552f copy  0x0000001a , 0x00000002 
- 00021657  0x00005530 storet  0x00000006 , 0x0000009a 
- 00021658  0x00005532 nbranch  0x0000264d , 0x00000018 
- 00021659  0x00005533 branch  0x000054a1 , 0x0000002e 
- 00021660  0x00005534 arg  0x000001e0 , 0x00000029 
- 00021661  0x00005535 copy  0x00000021 , 0x00000028 
- 00021662  0x00005536 fetch  0x00000001 , 0x0000043f 
- 00021663  0x00005537 bbit0  0x00000003 , 0x000054a1 
- 00021664  0x00005538 call  0x00002b05 , 0x0000002b 
- 00021665  0x0000553a bpatchx  0x0000004a , 0x00004029 
- 00021666  0x0000553b call  0x000029bb 
- 00021667  0x0000553c enable  0x00000007 
- 00021668  0x0000553d enable  0x00000009 
- 00021669  0x0000553e parse  0x00000003 , 0x00000000 , 0x00000008 
- 00021670  0x0000553f rshift3  0x0000000c , 0x0000003f 
- 00021671  0x00005540 store  0x00000001 , 0x000002d9 
- 00021672  0x00005541 parse  0x00000003 , 0x00000000 , 0x00000008 
- 00021673  0x00005542 rshift3  0x0000000c , 0x0000003f 
- 00021674  0x00005543 istore  0x00000001 , 0x00000005 
- 00021675  0x00005544 and  0x0000003f , 0x0000003f , 0x00000039 
- 00021676  0x00005545 branch  0x000054b1 , 0x00000005 
- 00021677  0x00005548 parse  0x00000003 , 0x00000000 , 0x00000008 
- 00021678  0x00005549 rshift3  0x0000000c , 0x0000003f 
- 00021679  0x0000554a istore  0x00000001 , 0x00000005 
- 00021680  0x0000554b loop  0x000054ad 
- 00021681  0x0000554e bpatchx  0x0000004b , 0x00004029 
- 00021682  0x0000554f parse  0x00000003 , 0x00000000 , 0x00000018 
- 00021683  0x00005550 enable  0x00000010 
- 00021684  0x00005551 arg  0x00000664 , 0x0000001b 
- 00021685  0x00005552 rshift32  0x0000003f , 0x0000003f 
- 00021686  0x00005553 rshift16  0x0000003f , 0x0000003f 
- 00021687  0x00005554 istore  0x00000003 , 0x00000005 
- 00021688  0x00005555 branch  0x0000264d , 0x00000006 
- 00021689  0x00005556 enable  0x0000002d 
- 00021690  0x00005557 fetch  0x00000001 , 0x00000017 
- 00021691  0x00005558 add  0x0000003f , 0x00000000 , 0x00000011 
- 00021692  0x00005559 call  0x00002981 
- 00021693  0x0000555a disable  0x0000000d 
- 00021694  0x0000555b branch  0x00002918 
- 00021695  0x0000555e bpatchx  0x0000004c , 0x00004029 
- 00021696  0x0000555f call  0x000054c9 
- 00021697  0x00005561 fetcht  0x00000001 , 0x00000017 
- 00021698  0x00005562 call  0x0000291f 
- 00021699  0x00005563 call  0x00002924 
- 00021700  0x00005564 enable  0x00000010 
- 00021701  0x00005565 arg  0x0000157c , 0x0000000b 
- 00021702  0x00005566 branch  0x0000548f 
- 00021703  0x00005569 call  0x000054c9 
- 00021704  0x0000556a branch  0x0000264d 
- 00021705  0x0000556d bpatchx  0x0000004d , 0x00004029 
- 00021706  0x0000556e call  0x000053d5 
- 00021707  0x0000556f call  0x000053e3 
- 00021708  0x00005570 branch  0x000054cd 
- 00021709  0x00005573 set1  0x00000000 , 0x00000015 
- 00021710  0x00005574 enable  0x0000001d 
- 00021711  0x00005575 enable  0x00000020 
- 00021712  0x00005576 disable  0x00000021 
- 00021713  0x00005577 call  0x0000547f 
- 00021714  0x00005578 rshift16  0x00000009 , 0x0000003f 
- 00021715  0x00005579 rshift8  0x0000003f , 0x0000003f 
- 00021716  0x0000557a rshift4  0x0000003f , 0x0000003f 
- 00021717  0x0000557b inject  0x00000003 , 0x00000028 
- 00021718  0x0000557c enable  0x00000007 
- 00021719  0x0000557d enable  0x00000009 
- 00021720  0x0000557e bpatchx  0x0000004e , 0x00004029 
- 00021721  0x0000557f fetch  0x00000001 , 0x000043dc 
- 00021722  0x00005580 inject  0x00000003 , 0x00000008 
- 00021723  0x00005581 ifetch  0x00000001 , 0x00000006 
- 00021724  0x00005582 and  0x0000003f , 0x0000003f , 0x00000039 
- 00021725  0x00005583 inject  0x00000003 , 0x00000008 
- 00021726  0x00005584 branch  0x000054e2 , 0x00000005 
- 00021727  0x00005586 ifetch  0x00000001 , 0x00000006 
- 00021728  0x00005587 inject  0x00000003 , 0x00000008 
- 00021729  0x00005588 loop  0x000054df 
- 00021730  0x0000558b enable  0x00000008 
- 00021731  0x0000558c inject  0x00000003 , 0x00000018 
- 00021732  0x0000558d disable  0x00000008 
- 00021733  0x0000558e until  0x0000003e , 0x00000027 
- 00021734  0x0000558f nop  0x00000064 
- 00021735  0x00005590 disable  0x0000001d 
- 00021736  0x00005591 rtn 
- 00021737  0x00005594 bpatchx  0x0000004f , 0x00004029 
- 00021738  0x00005595 fetch  0x00000001 , 0x00004484 
- 00021739  0x00005596 beq  0x00000001 , 0x000054f9 
- 00021740  0x00005597 fetch  0x00000001 , 0x00004485 
- 00021741  0x00005598 lshift4  0x0000003f , 0x0000003f 
- 00021742  0x00005599 lshift2  0x0000003f , 0x0000003f 
- 00021743  0x0000559a store  0x00000001 , 0x000043dc 
- 00021744  0x0000559b fetcht  0x00000001 , 0x0000436f 
- 00021745  0x0000559c add  0x00000002 , 0x00000006 , 0x0000003f 
- 00021746  0x0000559d store  0x00000001 , 0x000043dd 
- 00021747  0x0000559e fetch  0x00000006 , 0x000044a0 
- 00021748  0x0000559f store  0x00000006 , 0x000043de 
- 00021749  0x000055a0 copy  0x00000002 , 0x00000039 
- 00021750  0x000055a1 arg  0x00004370 , 0x00000006 
- 00021751  0x000055a2 call  0x00007ef4 
- 00021752  0x000055a3 branch  0x00005504 
- 00021753  0x000055a5 fetch  0x00000001 , 0x00004486 
- 00021754  0x000055a6 lshift4  0x0000003f , 0x0000003f 
- 00021755  0x000055a7 lshift2  0x0000003f , 0x0000003f 
- 00021756  0x000055a8 increase  0x00000001 , 0x0000003f 
- 00021757  0x000055a9 store  0x00000001 , 0x000043dc 
- 00021758  0x000055aa setarg  0x0000000c 
- 00021759  0x000055ab store  0x00000001 , 0x000043dd 
- 00021760  0x000055ac fetch  0x00000006 , 0x000044a0 
- 00021761  0x000055ad store  0x00000006 , 0x000043de 
- 00021762  0x000055ae fetch  0x00000006 , 0x000041d0 
- 00021763  0x000055af istore  0x00000006 , 0x00000005 
- 00021764  0x000055b1 bpatchx  0x00000050 , 0x0000402a 
- 00021765  0x000055b2 fetch  0x00000001 , 0x00000000 
- 00021766  0x000055b3 increase  0x00000001 , 0x0000003f 
- 00021767  0x000055b4 store  0x00000001 , 0x00000000 
- 00021768  0x000055b5 arg  0x00000708 , 0x0000001b 
- 00021769  0x000055b6 disable  0x0000002d 
- 00021770  0x000055b7 branch  0x000054bf 
- 00021771  0x000055ba bpatchx  0x00000051 , 0x0000402a 
- 00021772  0x000055bb fetch  0x00000001 , 0x0000449e 
- 00021773  0x000055bc rtnne  0x00000001 
- 00021774  0x000055bd fetch  0x00000001 , 0x00000000 
- 00021775  0x000055be increase  0x00000001 , 0x0000003f 
- 00021776  0x000055bf store  0x00000001 , 0x00000000 
- 00021777  0x000055c0 arg  0x00000c03 , 0x00000002 
- 00021778  0x000055c1 fetch  0x00000001 , 0x0000449f 
- 00021779  0x000055c2 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
- 00021780  0x000055c3 copy  0x00000011 , 0x0000003f 
- 00021781  0x000055c4 nsetflag  0x00000034 , 0x00000007 , 0x00000002 
- 00021782  0x000055c5 storet  0x00000002 , 0x000043dc 
- 00021783  0x000055c6 fetch  0x00000006 , 0x000044a0 
- 00021784  0x000055c7 istore  0x00000006 , 0x00000005 
- 00021785  0x000055c8 fetch  0x00000006 , 0x0000044f 
- 00021786  0x000055c9 istore  0x00000006 , 0x00000005 
- 00021787  0x000055ca branch  0x000054bf 
- 00021788  0x000055ce bpatchx  0x00000052 , 0x0000402a 
- 00021789  0x000055cf arg  0x00000004 , 0x00000002 
- 00021790  0x000055d0 fetch  0x00000001 , 0x00004485 
- 00021791  0x000055d1 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
- 00021792  0x000055d2 storet  0x00000001 , 0x000043dc 
- 00021793  0x000055d3 fetcht  0x00000001 , 0x0000438f 
- 00021794  0x000055d4 add  0x00000002 , 0x00000006 , 0x0000003f 
- 00021795  0x000055d5 store  0x00000001 , 0x000043dd 
- 00021796  0x000055d6 fetch  0x00000006 , 0x000044a0 
- 00021797  0x000055d7 store  0x00000006 , 0x000043de 
- 00021798  0x000055d8 arg  0x00004390 , 0x00000006 
- 00021799  0x000055d9 copy  0x00000002 , 0x00000039 
- 00021800  0x000055da call  0x00007ef4 
- 00021801  0x000055db call  0x000054c7 
- 00021802  0x000055dc branch  0x00005706 
- 00021803  0x000055df bpatchx  0x00000053 , 0x0000402a 
- 00021804  0x000055e0 force  0xffffffff , 0x0000003f 
- 00021805  0x000055e1 setsect  0x00000002 , 0x00000001 
- 00021806  0x000055e2 store  0x00000005 , 0x0000046f 
- 00021807  0x000055e3 call  0x0000545b 
- 00021808  0x000055e4 force  0x00000004 , 0x00000039 
- 00021809  0x000055e5 arg  0x00000463 , 0x00000005 
- 00021810  0x000055e6 call  0x0000630d 
- 00021811  0x000055e7 fetch  0x00000002 , 0x0000449c 
- 00021812  0x000055e8 store  0x00000002 , 0x0000046d 
- 00021813  0x000055ea random  0x0000003f 
- 00021814  0x000055eb and_into  0x0000000f , 0x0000003f 
- 00021815  0x000055ec sub  0x0000003f , 0x00000004 , 0x0000003e 
- 00021816  0x000055ed branch  0x00005535 , 0x00000002 
- 00021817  0x000055ee store  0x00000001 , 0x00000458 
- 00021818  0x000055ef store  0x00000001 , 0x000006e6 
- 00021819  0x000055f0 bpatchx  0x00000054 , 0x0000402a 
- 00021820  0x000055f1 fetcht  0x00000002 , 0x00004367 
- 00021821  0x000055f2 storet  0x00000002 , 0x00000441 
- 00021822  0x000055f3 copy  0x00000002 , 0x00000013 
- 00021823  0x000055f4 add  0x00000022 , 0x00000007 , 0x0000003f 
- 00021824  0x000055f5 idiv  0x00000013 
- 00021825  0x000055f6 call  0x00007f86 
- 00021826  0x000055f7 remainder  0x00000011 
- 00021827  0x000055f8 isub  0x00000011 , 0x0000003f 
- 00021828  0x000055f9 iadd  0x00000013 , 0x0000003f 
- 00021829  0x000055fa fetcht  0x00000002 , 0x00004365 
- 00021830  0x000055fb iadd  0x00000002 , 0x0000003f 
- 00021831  0x000055fc store  0x00000004 , 0x00000443 
- 00021832  0x000055fd isub  0x00000022 , 0x00000011 
- 00021833  0x000055fe increase  0xfffffffa , 0x00000011 
- 00021834  0x000055ff arg  0x00002205 , 0x00000012 
- 00021835  0x00005600 fetch  0x00000001 , 0x00004495 
- 00021836  0x00005601 nsetflag  0x00000034 , 0x00000006 , 0x00000012 
- 00021837  0x00005602 fetch  0x00000001 , 0x0000448e 
- 00021838  0x00005603 nsetflag  0x00000034 , 0x00000007 , 0x00000012 
- 00021839  0x00005604 copy  0x00000012 , 0x0000003f 
- 00021840  0x00005605 store  0x00000002 , 0x000043dc 
- 00021841  0x00005606 fetch  0x00000006 , 0x000044a0 
- 00021842  0x00005607 istore  0x00000006 , 0x00000005 
- 00021843  0x00005608 fetch  0x00000006 , 0x0000044f 
- 00021844  0x00005609 istore  0x00000006 , 0x00000005 
- 00021845  0x0000560a fetch  0x00000004 , 0x00000463 
- 00021846  0x0000560b istore  0x00000004 , 0x00000005 
- 00021847  0x0000560c random  0x0000003f 
- 00021848  0x0000560d istore  0x00000002 , 0x00000005 
- 00021849  0x0000560e random  0x0000003f 
- 00021850  0x0000560f istore  0x00000001 , 0x00000005 
- 00021851  0x00005610 force  0x00000002 , 0x0000003f 
- 00021852  0x00005611 istore  0x00000001 , 0x00000005 
- 00021853  0x00005612 rshift2  0x00000011 , 0x0000003f 
- 00021854  0x00005613 istore  0x00000002 , 0x00000005 
- 00021855  0x00005614 rshift2  0x00000013 , 0x0000003f 
- 00021856  0x00005615 istore  0x00000002 , 0x00000005 
- 00021857  0x00005616 bpatchx  0x00000055 , 0x0000402a 
- 00021858  0x00005617 setarg  0x00000000 
- 00021859  0x00005618 istore  0x00000002 , 0x00000005 
- 00021860  0x00005619 fetch  0x00000002 , 0x0000449c 
- 00021861  0x0000561a istore  0x00000002 , 0x00000005 
- 00021862  0x0000561b fetch  0x00000005 , 0x0000046f 
- 00021863  0x0000561c istore  0x00000005 , 0x00000005 
- 00021864  0x0000561d fetch  0x00000001 , 0x00000458 
- 00021865  0x0000561e arg  0x000000a0 , 0x00000002 
- 00021866  0x0000561f ior  0x00000002 , 0x0000003f 
- 00021867  0x00005620 istore  0x00000001 , 0x00000005 
- 00021868  0x00005621 call  0x000054c7 
- 00021869  0x00005622 setarg  0x000043dc 
- 00021870  0x00005623 add  0x0000003f , 0x00000012 , 0x00000006 
- 00021871  0x00005624 ifetch  0x00000003 , 0x00000006 
- 00021872  0x00005625 store  0x00000003 , 0x00000467 
- 00021873  0x00005626 rtn 
- 00021874  0x00005629 bpatchx  0x00000056 , 0x0000402a 
- 00021875  0x0000562a disable  0x00000029 
- 00021876  0x0000562b branch  0x0000540c 
- 00021877  0x00005630 fetch  0x00000001 , 0x0000043f 
- 00021878  0x00005631 rtnbit0  0x00000005 
- 00021879  0x00005632 fetch  0x00000002 , 0x00000459 
- 00021880  0x00005633 fetcht  0x00000002 , 0x0000045f 
- 00021881  0x00005634 isub  0x00000002 , 0x0000003f 
- 00021882  0x00005635 nrtn  0x00000002 
- 00021883  0x00005636 store  0x00000002 , 0x00000a9a 
- 00021884  0x00005637 bpatchx  0x00000057 , 0x0000402a 
- 00021885  0x00005638 fetch  0x00000001 , 0x0000043f 
- 00021886  0x00005639 set0  0x00000005 , 0x0000003f 
- 00021887  0x0000563a set0  0x00000003 , 0x0000003f 
- 00021888  0x0000563b store  0x00000001 , 0x0000043f 
- 00021889  0x0000563c fetch  0x00000004 , 0x00000443 
- 00021890  0x0000563d fetcht  0x00000002 , 0x00000441 
- 00021891  0x0000563e storet  0x00000002 , 0x00000aa2 
- 00021892  0x0000563f isub  0x00000002 , 0x00000011 
- 00021893  0x00005640 bpatchx  0x00000058 , 0x0000402b 
- 00021894  0x00005641 fetch  0x00000001 , 0x000043d3 
- 00021895  0x00005642 store  0x00000001 , 0x0000046a 
- 00021896  0x00005643 ifetcht  0x00000002 , 0x00000006 
- 00021897  0x00005644 ifetch  0x00000002 , 0x00000006 
- 00021898  0x00005645 lshift2  0x0000003f , 0x0000003f 
- 00021899  0x00005646 store  0x00000002 , 0x00000441 
- 00021900  0x00005647 lshift2  0x00000002 , 0x00000002 
- 00021901  0x00005648 iadd  0x00000002 , 0x0000003f 
- 00021902  0x00005649 ifetcht  0x00000004 , 0x00000006 
- 00021903  0x0000564a storet  0x00000004 , 0x0000046b 
- 00021904  0x0000564b iadd  0x00000011 , 0x0000003f 
- 00021905  0x0000564c copy  0x0000003f , 0x00000014 
- 00021906  0x0000564d fetch  0x00000002 , 0x00000441 
- 00021907  0x0000564e fetcht  0x00000002 , 0x00000aa2 
- 00021908  0x0000564f isub  0x00000002 , 0x0000003f 
- 00021909  0x00005650 fetcht  0x00000002 , 0x00000a9a 
- 00021910  0x00005651 imul32  0x00000002 , 0x0000003f 
- 00021911  0x00005652 iadd  0x00000014 , 0x0000003f 
- 00021912  0x00005653 store  0x00000004 , 0x00000443 
- 00021913  0x00005654 call  0x00005713 
- 00021914  0x00005655 fetch  0x00000002 , 0x0000046d 
- 00021915  0x00005656 store  0x00000002 , 0x000044ba 
- 00021916  0x00005657 rtn 
- 00021917  0x0000565b bpatchx  0x00000059 , 0x0000402b 
- 00021918  0x0000565c fetch  0x00000001 , 0x0000043f 
- 00021919  0x0000565d rtnbit0  0x00000006 
- 00021920  0x0000565e fetch  0x00000002 , 0x00000459 
- 00021921  0x0000565f fetcht  0x00000002 , 0x0000045f 
- 00021922  0x00005660 isub  0x00000002 , 0x0000003f 
- 00021923  0x00005661 nrtn  0x00000002 
- 00021924  0x00005662 fetch  0x00000001 , 0x0000043f 
- 00021925  0x00005663 set0  0x00000006 , 0x0000003f 
- 00021926  0x00005664 store  0x00000001 , 0x0000043f 
- 00021927  0x00005665 fetch  0x00000005 , 0x000043ce 
- 00021928  0x00005666 store  0x00000005 , 0x0000046f 
- 00021929  0x00005667 branch  0x0000545b 
- 00021930  0x0000566b bpatchx  0x0000005a , 0x0000402b 
- 00021931  0x0000566c call  0x000056ed 
- 00021932  0x0000566d call  0x000055c0 
- 00021933  0x0000566e fetch  0x00000001 , 0x000002d9 
- 00021934  0x0000566f isolate1  0x00000004 , 0x0000003f 
- 00021935  0x00005670 setflag  0x00000001 , 0x0000002a , 0x00000000 
- 00021936  0x00005671 rshift  0x0000003f , 0x0000003f 
- 00021937  0x00005672 ixor  0x00000002 , 0x0000003f 
- 00021938  0x00005673 isolate1  0x00000002 , 0x0000003f 
- 00021939  0x00005674 setflag  0x00000001 , 0x0000000f , 0x00000000 
- 00021940  0x00005675 rtnmark1  0x0000000f 
- 00021941  0x00005676 fetch  0x00000001 , 0x000002da 
- 00021942  0x00005677 branch  0x000055bc , 0x00000034 
- 00021943  0x00005678 fetch  0x00000001 , 0x0000043f 
- 00021944  0x00005679 bbit0  0x00000004 , 0x000055bc 
- 00021945  0x0000567a call  0x0000748d 
- 00021946  0x0000567b call  0x000073fb 
- 00021947  0x0000567c nrtn  0x00000034 
- 00021948  0x0000567e fetcht  0x00000001 , 0x00000456 
- 00021949  0x0000567f setflip  0x00000002 , 0x00000002 
- 00021950  0x00005680 storet  0x00000001 , 0x00000456 
- 00021951  0x00005681 rtn 
- 00021952  0x00005685 bpatchx  0x0000005b , 0x0000402b 
- 00021953  0x00005686 fetcht  0x00000001 , 0x00000456 
- 00021954  0x00005687 isolate0  0x00000005 , 0x00000002 
- 00021955  0x00005688 rtn  0x00000001 
- 00021956  0x00005689 fetch  0x00000001 , 0x000002d9 
- 00021957  0x0000568a lshift  0x0000003f , 0x0000003f 
- 00021958  0x0000568b ixor  0x00000002 , 0x0000003f 
- 00021959  0x0000568c rtnbit0  0x00000003 
- 00021960  0x0000568d set0  0x00000005 , 0x00000002 
- 00021961  0x0000568e setflip  0x00000003 , 0x00000002 
- 00021962  0x0000568f storet  0x00000001 , 0x00000456 
- 00021963  0x00005690 compare  0x00000003 , 0x00000002 , 0x00000003 
- 00021964  0x00005691 nrtn  0x00000001 
- 00021965  0x00005692 fetch  0x00000001 , 0x000043de 
- 00021966  0x00005693 beq  0x00000005 , 0x000055d2 
- 00021967  0x00005694 fetch  0x00000001 , 0x000044c5 
- 00021968  0x00005695 beq  0x00000002 , 0x000055d6 
- 00021969  0x00005696 rtn 
- 00021970  0x0000569a fetch  0x00000001 , 0x0000043f 
- 00021971  0x0000569b set1  0x00000004 , 0x0000003f 
- 00021972  0x0000569c store  0x00000001 , 0x0000043f 
- 00021973  0x0000569d rtn 
- 00021974  0x000056a0 bpatchx  0x0000005c , 0x0000402b 
- 00021975  0x000056a1 jam  0x00000000 , 0x000044c5 
- 00021976  0x000056a2 arg  0x00000000 , 0x0000003f 
- 00021977  0x000056a3 store  0x00000004 , 0x0000440d 
- 00021978  0x000056a4 store  0x00000005 , 0x00004403 
- 00021979  0x000056a5 set1  0x00000027 , 0x0000003f 
- 00021980  0x000056a6 store  0x00000005 , 0x00004408 
- 00021981  0x000056a7 fetch  0x00000001 , 0x0000043f 
- 00021982  0x000056a8 set0  0x00000004 , 0x0000003f 
- 00021983  0x000056a9 store  0x00000001 , 0x0000043f 
- 00021984  0x000056aa rtn 
- 00021985  0x000056ae bpatchx  0x0000005d , 0x0000402b 
- 00021986  0x000056af call  0x00005422 
- 00021987  0x000056b0 call  0x00005485 
- 00021988  0x000056b1 fetch  0x00000001 , 0x00000001 
- 00021989  0x000056b2 increase  0x00000001 , 0x0000003f 
- 00021990  0x000056b3 store  0x00000001 , 0x00000001 
- 00021991  0x000056b4 rtn 
- 00021992  0x000056b8 bpatchx  0x0000005e , 0x0000402b 
- 00021993  0x000056b9 fetch  0x00000001 , 0x00004369 
- 00021994  0x000056ba rtnne  0x00000001 
- 00021995  0x000056bb arg  0x00000002 , 0x00000007 
- 00021996  0x000056bc call  0x00007f16 
- 00021997  0x000056bd nrtn  0x00000034 
- 00021998  0x000056be fetch  0x00000002 , 0x0000436a 
- 00021999  0x000056bf fetcht  0x00000002 , 0x0000436c 
- 00022000  0x000056c0 isub  0x00000002 , 0x0000003f 
- 00022001  0x000056c1 arg  0x00000002 , 0x00000007 
- 00022002  0x000056c2 call  0x00007f08 
- 00022003  0x000056c3 disable  0x00000029 
- 00022004  0x000056c4 call  0x00005572 
- 00022005  0x000056c5 call  0x000055e1 
- 00022006  0x000056c6 nrtn  0x0000002d 
- 00022007  0x000056c7 bpatchx  0x0000005f , 0x0000402b 
- 00022008  0x000056c8 fetch  0x00000006 , 0x000002db 
- 00022009  0x000056c9 store  0x00000006 , 0x0000044f 
- 00022010  0x000056cc fetch  0x00000001 , 0x00000002 
- 00022011  0x000056cd increase  0x00000001 , 0x0000003f 
- 00022012  0x000056ce store  0x00000001 , 0x00000002 
- 00022013  0x000056cf call  0x00005608 
- 00022014  0x000056d0 rtn  0x00000029 
- 00022015  0x000056d1 call  0x0000550b 
- 00022016  0x000056d2 nrtn  0x0000002d 
- 00022017  0x000056d3 bpatchx  0x00000060 , 0x0000402c 
- 00022018  0x000056d4 fetch  0x00000001 , 0x00000004 
- 00022019  0x000056d5 increase  0x00000001 , 0x0000003f 
- 00022020  0x000056d6 store  0x00000001 , 0x00000004 
- 00022021  0x000056d7 fetch  0x00000009 , 0x000002e1 
- 00022022  0x000056d8 store  0x00000009 , 0x00000101 
- 00022023  0x000056d9 rtn 
- 00022024  0x000056dc bpatchx  0x00000061 , 0x0000402c 
- 00022025  0x000056dd fetch  0x00000001 , 0x0000049b 
- 00022026  0x000056de rtnne  0x0000001b 
- 00022027  0x000056df fetch  0x00000006 , 0x0000044f 
- 00022028  0x000056e0 fetcht  0x00000006 , 0x0000448f 
- 00022029  0x000056e1 isub  0x00000002 , 0x0000003e 
- 00022030  0x000056e2 nrtn  0x00000005 
- 00022031  0x000056e3 call  0x0000223b 
- 00022032  0x000056e4 nrtn  0x00000005 
- 00022033  0x000056e5 call  0x0000552b 
- 00022034  0x000056e6 call  0x00005340 
- 00022035  0x000056e7 bpatchx  0x00000062 , 0x0000402c 
- 00022036  0x000056e8 jam  0x00000000 , 0x000041ce 
- 00022037  0x000056e9 jam  0x00000000 , 0x00000476 
- 00022038  0x000056ea jam  0x00000000 , 0x00004369 
- 00022039  0x000056eb jam  0x00000000 , 0x0000049b 
- 00022040  0x000056ec branch  0x00002223 
- 00022041  0x000056ef arg  0x00000001 , 0x00000011 
- 00022042  0x000056f0 fetch  0x00000001 , 0x000002d9 
- 00022043  0x000056f1 rtnbit1  0x00000006 
- 00022044  0x000056f2 arg  0x00000000 , 0x00000011 
- 00022045  0x000056f3 rtn 
- 00022046  0x000056f8 bpatchx  0x00000063 , 0x0000402c 
- 00022047  0x000056f9 fetch  0x00000001 , 0x00000456 
- 00022048  0x000056fa rtnbit1  0x00000005 
- 00022049  0x000056fb call  0x00005642 
- 00022050  0x000056fc call  0x00005873 
- 00022051  0x000056fd branch  0x00005664 , 0x00000034 
- 00022052  0x000056fe ifetch  0x00000001 , 0x00000006 
- 00022053  0x000056ff ifetcht  0x00000001 , 0x00000006 
- 00022054  0x00005700 copy  0x00000002 , 0x00000011 
- 00022055  0x00005701 isub  0x00000011 , 0x0000003f 
- 00022056  0x00005702 arg  0x0000001b , 0x00000002 
- 00022057  0x00005703 call  0x00007fdd 
- 00022058  0x00005704 copy  0x0000003f , 0x00000002 
- 00022059  0x00005705 ifetch  0x00000001 , 0x00000006 
- 00022060  0x00005706 copy  0x0000003f , 0x00000001 
- 00022061  0x00005707 copy  0x00000011 , 0x0000003f 
- 00022062  0x00005708 iadd  0x00000006 , 0x00000006 
- 00022063  0x00005709 arg  0x000043de , 0x00000005 
- 00022064  0x0000570a copy  0x00000002 , 0x00000039 
- 00022065  0x0000570b call  0x00007f01 
- 00022066  0x0000570c call  0x00005654 
- 00022067  0x0000570d call  0x00005666 
- 00022068  0x0000570f call  0x00005873 
- 00022069  0x00005710 ifetch  0x00000001 , 0x00000006 
- 00022070  0x00005711 copy  0x0000003f , 0x00000011 
- 00022071  0x00005712 copy  0x00000006 , 0x00000013 
- 00022072  0x00005713 ifetcht  0x00000001 , 0x00000006 
- 00022073  0x00005714 copy  0x00000002 , 0x00000012 
- 00022074  0x00005715 isub  0x00000012 , 0x0000003f 
- 00022075  0x00005716 arg  0x0000001b , 0x00000002 
- 00022076  0x00005717 call  0x00007fdd 
- 00022077  0x00005718 iadd  0x00000012 , 0x0000003f 
- 00022078  0x00005719 istore  0x00000001 , 0x00000013 
- 00022079  0x0000571a isub  0x00000011 , 0x0000003e 
- 00022080  0x0000571b nrtn  0x00000005 
- 00022081  0x0000571c branch  0x00005896 
- 00022082  0x00005720 call  0x00005649 
- 00022083  0x00005721 rtnmark1  0x00000029 
- 00022084  0x00005722 fetch  0x00000001 , 0x000044e9 
- 00022085  0x00005723 bbit0  0x00000002 , 0x00005652 
- 00022086  0x00005724 call  0x00005876 
- 00022087  0x00005725 branch  0x00005652 , 0x00000034 
- 00022088  0x00005726 branch  0x00005650 
- 00022089  0x0000572a call  0x00005873 
- 00022090  0x0000572b branch  0x00005652 , 0x00000034 
- 00022091  0x0000572c ifetch  0x00000001 , 0x00000006 
- 00022092  0x0000572d ifetcht  0x00000001 , 0x00000006 
- 00022093  0x0000572e isub  0x00000002 , 0x0000003f 
- 00022094  0x0000572f sub  0x0000003f , 0x0000001b , 0x0000003e 
- 00022095  0x00005730 branch  0x00005652 , 0x00000002 
- 00022096  0x00005732 set1  0x00000029 , 0x00000000 
- 00022097  0x00005733 rtn 
- 00022098  0x00005736 set0  0x00000029 , 0x00000000 
- 00022099  0x00005737 rtn 
- 00022100  0x0000573a copy  0x00000011 , 0x0000003f 
- 00022101  0x0000573b rtn  0x00000034 
- 00022102  0x0000573c arg  0x00000001 , 0x00000001 
- 00022103  0x0000573d rtn 
- 00022104  0x00005741 bpatchx  0x00000064 , 0x0000402c 
- 00022105  0x00005742 increase  0x00000001 , 0x00000002 
- 00022106  0x00005743 call  0x0000576a 
- 00022107  0x00005744 increase  0xfffffffe , 0x00000006 
- 00022108  0x00005745 ifetch  0x00000002 , 0x00000006 
- 00022109  0x00005746 arg  0x00002902 , 0x00000002 
- 00022110  0x00005747 isub  0x00000002 , 0x0000003e 
- 00022111  0x00005748 nrtn  0x00000005 
- 00022112  0x00005749 increase  0x00000001 , 0x00000006 
- 00022113  0x0000574a copy  0x00000006 , 0x00000011 
- 00022114  0x0000574b ifetch  0x00000001 , 0x00000006 
- 00022115  0x0000574c rtn 
- 00022116  0x00005750 force  0x00000000 , 0x00000002 
- 00022117  0x00005751 force  0x00000001 , 0x00000001 
- 00022118  0x00005754 bpatchx  0x00000065 , 0x0000402c 
- 00022119  0x00005755 storet  0x00000001 , 0x000043dd 
- 00022120  0x00005756 fetcht  0x00000001 , 0x00000456 
- 00022121  0x00005757 set1  0x00000005 , 0x00000002 
- 00022122  0x00005758 and  0x00000002 , 0x000000fc , 0x0000003f 
- 00022123  0x00005759 ior  0x00000001 , 0x0000003f 
- 00022124  0x0000575a store  0x00000001 , 0x00000456 
- 00022125  0x0000575b and_into  0x0000001f , 0x0000003f 
- 00022126  0x0000575c isolate1  0x00000029 , 0x00000000 
- 00022127  0x0000575d setflag  0x00000001 , 0x00000004 , 0x0000003f 
- 00022128  0x0000575e store  0x00000001 , 0x000043dc 
- 00022129  0x00005760 fetch  0x00000001 , 0x000043dc 
- 00022130  0x00005761 compare  0x00000001 , 0x00000001 , 0x00000003 
- 00022131  0x00005762 nbranch  0x00005676 , 0x00000001 
- 00022132  0x00005763 fetch  0x00000001 , 0x000043dd 
- 00022133  0x00005764 rtn  0x00000034 
- 00022134  0x00005766 fetch  0x00000001 , 0x0000043f 
- 00022135  0x00005767 rtnbit0  0x00000004 
- 00022136  0x00005768 call  0x0000748d 
- 00022137  0x00005769 branch  0x000073e3 
- 00022138  0x0000576d arg  0x00000000 , 0x00000007 
- 00022139  0x0000576e branch  0x00002c32 
- 00022140  0x00005771 arg  0x00000000 , 0x00000007 
- 00022141  0x00005772 branch  0x00002c36 
- 00022142  0x00005776 bpatchx  0x00000066 , 0x0000402c 
- 00022143  0x00005777 rtnmark1  0x0000000f 
- 00022144  0x00005778 call  0x00005890 
- 00022145  0x00005779 nrtn  0x00000034 
- 00022146  0x0000577a fetch  0x00000001 , 0x000002d9 
- 00022147  0x0000577b and  0x0000003f , 0x00000003 , 0x0000003f 
- 00022148  0x0000577c store  0x00000001 , 0x0000450c 
- 00022149  0x0000577d ifetch  0x00000001 , 0x00000006 
- 00022150  0x0000577e and  0x0000003f , 0x0000001f , 0x0000003f 
- 00022151  0x0000577f store  0x00000001 , 0x0000450b 
- 00022152  0x00005780 rtn  0x00000034 
- 00022153  0x00005781 copy  0x00000006 , 0x0000003f 
- 00022154  0x00005782 store  0x00000002 , 0x0000450d 
- 00022155  0x00005783 fetch  0x00000001 , 0x0000450c 
- 00022156  0x00005784 beq  0x00000003 , 0x00005c64 
- 00022157  0x00005786 call  0x0000569a 
- 00022158  0x00005787 nbranch  0x0000567a , 0x00000028 
- 00022159  0x00005788 call  0x0000567c 
- 00022160  0x00005789 fetch  0x00000002 , 0x0000450d 
- 00022161  0x0000578a copy  0x0000003f , 0x00000006 
- 00022162  0x0000578b ifetch  0x00000002 , 0x00000006 
- 00022163  0x0000578c store  0x00000002 , 0x000044fc 
- 00022164  0x0000578d bpatchx  0x00000067 , 0x0000402c 
- 00022165  0x0000578e ifetch  0x00000002 , 0x00000006 
- 00022166  0x0000578f beq  0x00000004 , 0x000058ab 
- 00022167  0x00005790 beq  0x00000006 , 0x00005af4 
- 00022168  0x00005791 beq  0x00000005 , 0x00005ab6 
- 00022169  0x00005792 rtn 
- 00022170  0x00005796 fetch  0x00000001 , 0x0000450c 
- 00022171  0x00005797 beq  0x00000002 , 0x000056a9 
- 00022172  0x00005798 beq  0x00000001 , 0x000056c1 
- 00022173  0x00005799 rtn 
- 00022174  0x0000579f call  0x00007fe7 
- 00022175  0x000057a0 arg  0x00000004 , 0x00000002 
- 00022176  0x000057a1 isub  0x0000003f , 0x0000003e 
- 00022177  0x000057a2 rtn  0x00000005 
- 00022178  0x000057a3 arg  0x00000005 , 0x00000002 
- 00022179  0x000057a4 isub  0x0000003f , 0x0000003e 
- 00022180  0x000057a5 rtn  0x00000005 
- 00022181  0x000057a6 arg  0x00000006 , 0x00000002 
- 00022182  0x000057a7 isub  0x0000003f , 0x0000003e 
- 00022183  0x000057a8 rtn  0x00000005 
- 00022184  0x000057a9 branch  0x00007fe9 
- 00022185  0x000057ad fetch  0x00000002 , 0x0000450d 
- 00022186  0x000057ae copy  0x0000003f , 0x00000006 
- 00022187  0x000057af ifetch  0x00000002 , 0x00000006 
- 00022188  0x000057b0 store  0x00000002 , 0x000044fc 
- 00022189  0x000057b1 ifetch  0x00000002 , 0x00000006 
- 00022190  0x000057b2 call  0x0000569e 
- 00022191  0x000057b3 nrtn  0x00000028 
- 00022192  0x000057b4 fetcht  0x00000001 , 0x0000450b 
- 00022193  0x000057b5 storet  0x00000001 , 0x000044fe 
- 00022194  0x000057b6 fetch  0x00000002 , 0x000044fc 
- 00022195  0x000057b7 increase  0x00000004 , 0x0000003f 
- 00022196  0x000057b8 isub  0x00000002 , 0x0000003e 
- 00022197  0x000057b9 branch  0x00007fe7 , 0x00000005 
- 00022198  0x000057ba fetch  0x00000001 , 0x0000450b 
- 00022199  0x000057bb copy  0x0000003f , 0x00000039 
- 00022200  0x000057bc arg  0x00000311 , 0x00000005 
- 00022201  0x000057bd fetch  0x00000002 , 0x0000450d 
- 00022202  0x000057be copy  0x0000003f , 0x00000006 
- 00022203  0x000057bf call  0x00007f01 
- 00022204  0x000057c0 branch  0x00007fe9 
- 00022205  0x000057c6 call  0x00007fe7 
- 00022206  0x000057c7 fetch  0x00000001 , 0x000044fe 
- 00022207  0x000057c8 nrtn  0x00000034 
- 00022208  0x000057c9 branch  0x00007fe9 
- 00022209  0x000057cc call  0x000056bd 
- 00022210  0x000057cd nrtn  0x00000028 
- 00022211  0x000057ce fetch  0x00000001 , 0x000044fe 
- 00022212  0x000057cf arg  0x00000311 , 0x00000005 
- 00022213  0x000057d0 iadd  0x00000005 , 0x00000011 
- 00022214  0x000057d1 fetcht  0x00000001 , 0x0000450b 
- 00022215  0x000057d2 iadd  0x00000002 , 0x0000003f 
- 00022216  0x000057d3 store  0x00000001 , 0x000044fe 
- 00022217  0x000057d4 fetch  0x00000001 , 0x0000450b 
- 00022218  0x000057d5 copy  0x0000003f , 0x00000039 
- 00022219  0x000057d6 copy  0x00000011 , 0x00000005 
- 00022220  0x000057d7 fetch  0x00000002 , 0x0000450d 
- 00022221  0x000057d8 copy  0x0000003f , 0x00000006 
- 00022222  0x000057d9 call  0x00007ef4 
- 00022223  0x000057da setarg  0x00000311 
- 00022224  0x000057db store  0x00000002 , 0x0000450d 
- 00022225  0x000057dc fetch  0x00000002 , 0x000044fc 
- 00022226  0x000057dd increase  0x00000004 , 0x0000003f 
- 00022227  0x000057de fetcht  0x00000001 , 0x000044fe 
- 00022228  0x000057df isub  0x00000002 , 0x0000003e 
- 00022229  0x000057e0 branch  0x00007fe7 , 0x00000005 
- 00022230  0x000057e1 branch  0x00007fe9 
- 00022231  0x000057e8 call  0x00007ea5 
- 00022232  0x000057e9 arg  0x0000445e , 0x00000005 
- 00022233  0x000057eb fetch  0x00000002 , 0x000044fc 
- 00022234  0x000057ec increase  0xfffffffb , 0x0000003f 
- 00022235  0x000057ee istore  0x00000001 , 0x00000005 
- 00022236  0x000057ef copy  0x0000003f , 0x00000039 
- 00022237  0x000057f0 call  0x00007e9f 
- 00022238  0x000057f1 branch  0x00007ef4 
- 00022239  0x000057f4 call  0x00007ea5 
- 00022240  0x000057f5 arg  0x00004471 , 0x00000005 
- 00022241  0x000057f6 branch  0x000056d9 
- 00022242  0x000057fb fetch  0x00000002 , 0x000041f9 
- 00022243  0x000057fc branch  0x00007f9c 
- 00022244  0x000057ff fetcht  0x00000004 , 0x0000045b 
- 00022245  0x00005800 call  0x00002a7b 
- 00022246  0x00005801 isub  0x00000002 , 0x0000000b 
- 00022247  0x00005802 deposit  0x0000000b 
- 00022248  0x00005803 fetcht  0x00000002 , 0x0000046d 
- 00022249  0x00005804 lshift4  0x00000002 , 0x00000002 
- 00022250  0x00005805 lshift  0x00000002 , 0x00000002 
- 00022251  0x00005806 isub  0x00000002 , 0x0000003f 
- 00022252  0x00005807 rtn 
- 00022253  0x0000580a call  0x00002a7b 
- 00022254  0x0000580b store  0x00000004 , 0x0000045b 
- 00022255  0x0000580c rtn 
- 00022256  0x00005810 jam  0x00000024 , 0x00000016 
- 00022257  0x00005811 jam  0x00000000 , 0x00000ac2 
- 00022258  0x00005813 bpatchx  0x00000068 , 0x0000402d 
- 00022259  0x00005814 fetch  0x00000001 , 0x0000436e 
- 00022260  0x00005815 rtn  0x00000034 
- 00022261  0x00005816 arg  0x00000000 , 0x00000007 
- 00022262  0x00005817 call  0x00007f16 
- 00022263  0x00005818 nrtn  0x00000034 
- 00022264  0x00005819 bpatchx  0x00000069 , 0x0000402d 
- 00022265  0x0000581b disable  0x00000029 
- 00022266  0x0000581c enable  0x00000010 
- 00022267  0x0000581d call  0x00005572 
- 00022268  0x0000581e call  0x00005422 
- 00022269  0x0000581f call  0x000054e9 
- 00022270  0x00005820 nbranch  0x00005706 , 0x0000002d 
- 00022271  0x00005821 fetch  0x00000001 , 0x00000003 
- 00022272  0x00005822 increase  0x00000001 , 0x0000003f 
- 00022273  0x00005823 store  0x00000001 , 0x00000003 
- 00022274  0x00005824 fetch  0x00000001 , 0x000002d9 
- 00022275  0x00005825 and  0x0000003f , 0x0000000f , 0x0000003f 
- 00022276  0x00005826 beq  0x00000003 , 0x0000551c 
- 00022277  0x00005827 beq  0x00000005 , 0x00005728 
- 00022278  0x00005829 bpatchx  0x0000006a , 0x0000402d 
- 00022279  0x0000582a random  0x0000003f 
- 00022280  0x0000582b arg  0x000001ff , 0x00000002 
- 00022281  0x0000582c iand  0x00000002 , 0x0000003f 
- 00022282  0x0000582d add  0x0000003f , 0x000000fa , 0x0000003f 
- 00022283  0x0000582e call  0x00003cbe 
- 00022284  0x0000582f fetch  0x00000001 , 0x00000ac2 
- 00022285  0x00005830 fetcht  0x00000001 , 0x0000448d 
- 00022286  0x00005831 isub  0x00000002 , 0x0000003e 
- 00022287  0x00005832 nbranch  0x000056f2 , 0x00000005 
- 00022288  0x00005833 arg  0x00000000 , 0x00000007 
- 00022289  0x00005834 fetch  0x00000002 , 0x00004482 
- 00022290  0x00005835 branch  0x00007f08 
- 00022291  0x00005839 bpatchx  0x0000006b , 0x0000402d 
- 00022292  0x0000583a fetch  0x00000001 , 0x00000476 
- 00022293  0x0000583b call  0x000053fc 
- 00022294  0x0000583c fetch  0x00000002 , 0x00000441 
- 00022295  0x0000583d imul32  0x00000002 , 0x0000003f 
- 00022296  0x0000583e arg  0x00000177 , 0x00000002 
- 00022297  0x0000583f imul32  0x00000002 , 0x0000003f 
- 00022298  0x00005840 arg  0x000186a0 , 0x00000002 
- 00022299  0x00005841 idiv  0x00000002 
- 00022300  0x00005842 fetch  0x00000001 , 0x0000046a 
- 00022301  0x00005843 arg  0x00004e20 , 0x00000002 
- 00022302  0x00005844 imul32  0x00000002 , 0x0000003f 
- 00022303  0x00005845 iadd  0x00000002 , 0x0000003f 
- 00022304  0x00005846 store  0x00000004 , 0x000044e5 
- 00022305  0x00005847 bpatchx  0x0000006c , 0x0000402d 
- 00022306  0x00005848 fetch  0x00000002 , 0x000040c1 
- 00022307  0x00005849 call  0x00007f86 
- 00022308  0x0000584a quotient  0x00000002 
- 00022309  0x0000584b iadd  0x00000002 , 0x0000003f 
- 00022310  0x0000584c store  0x00000002 , 0x0000044d 
- 00022311  0x0000584d rtn 
- 00022312  0x00005850 bpatchx  0x0000006d , 0x0000402d 
- 00022313  0x00005851 fetch  0x00000006 , 0x000002e1 
- 00022314  0x00005852 fetcht  0x00000006 , 0x000044a0 
- 00022315  0x00005853 isub  0x00000002 , 0x0000003e 
- 00022316  0x00005854 nrtn  0x00000005 
- 00022317  0x00005855 call  0x00005619 
- 00022318  0x00005856 copy  0x00000011 , 0x0000003f 
- 00022319  0x00005857 store  0x00000001 , 0x0000448e 
- 00022320  0x00005858 fetch  0x00000007 , 0x000002ee 
- 00022321  0x00005859 store  0x00000007 , 0x00000101 
- 00022322  0x0000585a ifetch  0x00000008 , 0x00000006 
- 00022323  0x0000585b istore  0x00000008 , 0x00000005 
- 00022324  0x0000585c fetch  0x00000006 , 0x000002db 
- 00022325  0x0000585d store  0x00000006 , 0x0000044f 
- 00022326  0x0000585e increase  0x00000006 , 0x00000006 
- 00022327  0x0000585f ifetch  0x00000008 , 0x00000006 
- 00022328  0x00005860 store  0x00000008 , 0x00000463 
- 00022329  0x00005861 ifetcht  0x00000002 , 0x00000006 
- 00022330  0x00005862 bpatchx  0x0000006e , 0x0000402d 
- 00022331  0x00005863 lshift2  0x00000002 , 0x00000002 
- 00022332  0x00005864 ifetch  0x00000002 , 0x00000006 
- 00022333  0x00005865 lshift2  0x0000003f , 0x0000003f 
- 00022334  0x00005866 store  0x00000002 , 0x00000441 
- 00022335  0x00005867 store  0x00000004 , 0x00000443 
- 00022336  0x00005868 isub  0x00000002 , 0x0000003f 
- 00022337  0x00005869 add  0x0000003f , 0xfffffffe , 0x00000028 
- 00022338  0x0000586a ifetch  0x00000009 , 0x00000006 
- 00022339  0x0000586b store  0x00000009 , 0x0000046b 
- 00022340  0x0000586c bpatchx  0x0000006f , 0x0000402d 
- 00022341  0x0000586d ifetch  0x00000001 , 0x00000006 
- 00022342  0x0000586e rshift4  0x0000003f , 0x00000002 
- 00022343  0x0000586f rshift  0x00000002 , 0x00000002 
- 00022344  0x00005870 storet  0x00000001 , 0x00000476 
- 00022345  0x00005871 and_into  0x0000001f , 0x0000003f 
- 00022346  0x00005872 store  0x00000001 , 0x00000458 
- 00022347  0x00005873 call  0x00005713 
- 00022348  0x00005874 call  0x0000545b 
- 00022349  0x00005875 call  0x0000534c 
- 00022350  0x00005876 call  0x0000223b 
- 00022351  0x00005877 nrtn  0x00000005 
- 00022352  0x00005878 bpatchx  0x00000070 , 0x0000402e 
- 00022353  0x00005879 call  0x00002841 
- 00022354  0x0000587a call  0x00005ad3 
- 00022355  0x0000587b jam  0x00000014 , 0x00000a99 
- 00022356  0x0000587c call  0x00007d86 
- 00022357  0x0000587d branch  0x00002223 
- 00022358  0x00005881 bpatchx  0x00000071 , 0x0000402e 
- 00022359  0x00005882 fetch  0x00000002 , 0x0000445a 
- 00022360  0x00005883 iforce  0x00000012 
- 00022361  0x00005884 fetch  0x00000002 , 0x0000445c 
- 00022362  0x00005885 iforce  0x00000013 
- 00022363  0x00005886 fetch  0x00000002 , 0x000044bc 
- 00022364  0x00005887 iforce  0x00000006 
- 00022365  0x00005888 enable  0x00000028 
- 00022366  0x00005889 rtn 
- 00022367  0x0000588d ifetch  0x00000002 , 0x00000006 
- 00022368  0x0000588e rtn  0x00000034 
- 00022369  0x0000588f isub  0x00000012 , 0x0000003e 
- 00022370  0x00005890 nrtn  0x00000002 
- 00022371  0x00005891 isub  0x00000013 , 0x0000003e 
- 00022372  0x00005892 rtn  0x00000005 
- 00022373  0x00005893 branch  0x00005768 , 0x00000002 
- 00022374  0x00005894 force  0x00000001 , 0x0000003e 
- 00022375  0x00005895 rtn 
- 00022376  0x00005897 force  0x00000000 , 0x0000003f 
- 00022377  0x00005898 rtn 
- 00022378  0x0000589d call  0x0000576d 
- 00022379  0x0000589e branch  0x00005779 , 0x00000005 
- 00022380  0x0000589f rtn 
- 00022381  0x000058a2 bpatchx  0x00000072 , 0x0000402e 
- 00022382  0x000058a3 fetch  0x00000002 , 0x000044bc 
- 00022383  0x000058a4 iforce  0x00000006 
- 00022384  0x000058a6 ifetch  0x00000002 , 0x00000006 
- 00022385  0x000058a7 rtn  0x00000034 
- 00022386  0x000058a8 isub  0x00000002 , 0x0000003e 
- 00022387  0x000058a9 rtn  0x00000005 
- 00022388  0x000058aa ifetch  0x00000001 , 0x00000006 
- 00022389  0x000058ab iadd  0x00000006 , 0x00000006 
- 00022390  0x000058ac ifetch  0x00000001 , 0x00000006 
- 00022391  0x000058ad iadd  0x00000006 , 0x00000006 
- 00022392  0x000058ae branch  0x00005770 
- 00022393  0x000058b0 ifetch  0x00000001 , 0x00000006 
- 00022394  0x000058b1 iadd  0x00000006 , 0x00000006 
- 00022395  0x000058b2 rtn 
- 00022396  0x000058b7 bpatchx  0x00000073 , 0x0000402e 
- 00022397  0x000058b8 fetch  0x00000002 , 0x000044bc 
- 00022398  0x000058b9 iforce  0x00000006 
- 00022399  0x000058bb ifetch  0x00000002 , 0x00000006 
- 00022400  0x000058bc rtn  0x00000034 
- 00022401  0x000058bd ifetch  0x00000001 , 0x00000006 
- 00022402  0x000058be iadd  0x00000006 , 0x00000006 
- 00022403  0x000058bf increase  0xfffffffe , 0x00000006 
- 00022404  0x000058c0 ifetch  0x00000002 , 0x00000006 
- 00022405  0x000058c1 isub  0x00000002 , 0x0000003e 
- 00022406  0x000058c2 rtn  0x00000005 
- 00022407  0x000058c3 ifetch  0x00000001 , 0x00000006 
- 00022408  0x000058c4 iadd  0x00000006 , 0x00000006 
- 00022409  0x000058c5 branch  0x0000577f 
- 00022410  0x000058ca fetch  0x00000002 , 0x0000049c 
- 00022411  0x000058cb branch  0x0000578e 
- 00022412  0x000058ce bpatchx  0x00000074 , 0x0000402e 
- 00022413  0x000058cf fetch  0x00000002 , 0x000044bc 
- 00022414  0x000058d1 iforce  0x00000006 
- 00022415  0x000058d2 copy  0x00000002 , 0x00000011 
- 00022416  0x000058d4 ifetch  0x00000002 , 0x00000006 
- 00022417  0x000058d5 branch  0x00005799 , 0x00000034 
- 00022418  0x000058d6 isub  0x00000011 , 0x0000003e 
- 00022419  0x000058d7 branch  0x0000579a , 0x00000005 
- 00022420  0x000058d8 ifetch  0x00000001 , 0x00000006 
- 00022421  0x000058d9 iadd  0x00000006 , 0x00000006 
- 00022422  0x000058da ifetch  0x00000001 , 0x00000006 
- 00022423  0x000058db iadd  0x00000006 , 0x00000006 
- 00022424  0x000058dc branch  0x00005790 
- 00022425  0x000058de branch  0x00007fef 
- 00022426  0x000058e1 ifetch  0x00000001 , 0x00000006 
- 00022427  0x000058e2 store  0x00000001 , 0x000004a2 
- 00022428  0x000058e3 copy  0x0000003f , 0x00000039 
- 00022429  0x000058e4 arg  0x000004a3 , 0x00000005 
- 00022430  0x000058e5 call  0x00007ef4 
- 00022431  0x000058e6 ifetch  0x00000001 , 0x00000006 
- 00022432  0x000058e7 store  0x00000001 , 0x000004b3 
- 00022433  0x000058e8 call  0x00007ea5 
- 00022434  0x000058e9 branch  0x00007ff1 
- 00022435  0x000058ed bpatchx  0x00000075 , 0x0000402e 
- 00022436  0x000058ee call  0x000057a6 
- 00022437  0x000058ef branch  0x000057b8 
- 00022438  0x000058f2 arg  0x00002a00 , 0x00000002 
- 00022439  0x000058f3 call  0x0000577c 
- 00022440  0x000058f4 rtn  0x00000034 
- 00022441  0x000058f5 ifetch  0x00000001 , 0x00000006 
- 00022442  0x000058f6 copy  0x00000006 , 0x00000005 
- 00022443  0x000058f7 fetcht  0x00000001 , 0x000043af 
- 00022444  0x000058f8 copy  0x00000002 , 0x00000039 
- 00022445  0x000058f9 isub  0x00000002 , 0x0000003e 
- 00022446  0x000058fa nbranch  0x000057b5 , 0x00000002 
- 00022447  0x000058fb isub  0x00000002 , 0x00000002 
- 00022448  0x000058fc arg  0x000043b0 , 0x00000006 
- 00022449  0x000058fd call  0x00007f01 
- 00022450  0x000058fe copy  0x00000002 , 0x00000039 
- 00022451  0x000058ff ncall  0x000057f0 , 0x00000005 
- 00022452  0x00005900 rtn 
- 00022453  0x00005902 copy  0x0000003f , 0x00000039 
- 00022454  0x00005903 arg  0x000043b0 , 0x00000006 
- 00022455  0x00005904 branch  0x00007ef4 
- 00022456  0x00005908 arg  0x0000438f , 0x00000013 
- 00022457  0x00005909 arg  0x00004370 , 0x00000011 
- 00022458  0x0000590a call  0x000057c5 
- 00022459  0x0000590b setarg  0x00000000 
- 00022460  0x0000590c setflag  0x00000028 , 0x00000000 , 0x0000003f 
- 00022461  0x0000590d store  0x00000001 , 0x00000a9a 
- 00022462  0x0000590e arg  0x000043af , 0x00000013 
- 00022463  0x0000590f arg  0x00004390 , 0x00000011 
- 00022464  0x00005910 call  0x000057c5 
- 00022465  0x00005911 rtn  0x00000028 
- 00022466  0x00005912 fetch  0x00000001 , 0x00000a9a 
- 00022467  0x00005913 branch  0x00002a8c , 0x00000034 
- 00022468  0x00005914 rtn 
- 00022469  0x00005918 bpatchx  0x00000076 , 0x0000402e 
- 00022470  0x00005919 call  0x00007fe7 
- 00022471  0x0000591a call  0x00007eda 
- 00022472  0x0000591b arg  0x00000000 , 0x00000012 
- 00022473  0x0000591c arg  0x00000ac3 , 0x00000005 
- 00022474  0x0000591d call  0x000057df 
- 00022475  0x0000591e fetch  0x00000001 , 0x000043af 
- 00022476  0x0000591f add  0x0000003f , 0x00000001 , 0x00000002 
- 00022477  0x00005920 iadd  0x00000012 , 0x00000011 
- 00022478  0x00005921 increase  0x00000002 , 0x00000011 
- 00022479  0x00005922 sub  0x00000011 , 0x0000001f , 0x0000003e 
- 00022480  0x00005923 nbranch  0x000057dd , 0x00000002 
- 00022481  0x00005924 istoret  0x00000001 , 0x00000005 
- 00022482  0x00005925 arg  0x00000009 , 0x00000002 
- 00022483  0x00005926 istoret  0x00000001 , 0x00000005 
- 00022484  0x00005927 iforce  0x00000039 
- 00022485  0x00005928 call  0x00007ef4 
- 00022486  0x00005929 copy  0x00000011 , 0x00000012 
- 00022487  0x0000592b deposit  0x00000012 
- 00022488  0x0000592c store  0x00000001 , 0x00000ac2 
- 00022489  0x0000592d arg  0x00000ac2 , 0x00000006 
- 00022490  0x0000592e setarg  0xffffffe0 
- 00022491  0x0000592f iadd  0x00000013 , 0x00000005 
- 00022492  0x00005930 branch  0x00007ebd 
- 00022493  0x00005933 call  0x00007fe9 
- 00022494  0x00005934 branch  0x000057d7 
- 00022495  0x00005937 ifetch  0x00000001 , 0x00000011 
- 00022496  0x00005938 rtn  0x00000034 
- 00022497  0x00005939 pincrease  0x00000001 
- 00022498  0x0000593a ifetcht  0x00000001 , 0x00000006 
- 00022499  0x0000593b sub  0x00000002 , 0x00000009 , 0x0000003e 
- 00022500  0x0000593c branch  0x000057ee , 0x00000005 
- 00022501  0x0000593d iadd  0x00000012 , 0x00000012 
- 00022502  0x0000593e copy  0x00000011 , 0x00000006 
- 00022503  0x0000593f iforce  0x00000039 
- 00022504  0x00005940 call  0x00007ef4 
- 00022505  0x00005941 copy  0x00000006 , 0x00000011 
- 00022506  0x00005943 deposit  0x00000011 
- 00022507  0x00005944 isub  0x00000013 , 0x0000003e 
- 00022508  0x00005945 rtn  0x00000002 
- 00022509  0x00005946 branch  0x000057df 
- 00022510  0x00005949 iadd  0x00000011 , 0x00000011 
- 00022511  0x0000594a branch  0x000057ea 
- 00022512  0x0000594e setarg  0x00000020 
- 00022513  0x0000594f istore  0x00000001 , 0x00000005 
- 00022514  0x00005950 loop  0x000057f0 
- 00022515  0x00005951 rtn 
- 00022516  0x00005955 bpatchx  0x00000077 , 0x0000402e 
- 00022517  0x00005956 disable  0x0000002b 
- 00022518  0x00005957 branch  0x000057f8 , 0x0000002e 
- 00022519  0x00005958 nbranch  0x00005806 , 0x0000002d 
- 00022520  0x0000595a call  0x00002bcb 
- 00022521  0x0000595b fetch  0x00000002 , 0x000040c1 
- 00022522  0x0000595c store  0x00000002 , 0x0000044d 
- 00022523  0x0000595e nbranch  0x00002bde , 0x0000002d 
- 00022524  0x0000595f bmark1  0x0000000f , 0x00002bde 
- 00022525  0x00005961 fetch  0x00000001 , 0x0000450b 
- 00022526  0x00005962 nbranch  0x00002bde , 0x00000034 
- 00022527  0x00005963 fetch  0x00000001 , 0x000043dd 
- 00022528  0x00005964 nbranch  0x00002bde , 0x00000034 
- 00022529  0x00005966 fetch  0x00000001 , 0x000044e9 
- 00022530  0x00005967 bbit1  0x00000005 , 0x00002bde 
- 00022531  0x00005969 fetch  0x00000001 , 0x0000043f 
- 00022532  0x0000596a bbit1  0x00000005 , 0x00002bde 
- 00022533  0x0000596b branch  0x00002bc0 
- 00022534  0x0000596e fetcht  0x00000002 , 0x000040c1 
- 00022535  0x0000596f rshift  0x00000002 , 0x00000002 
- 00022536  0x00005970 fetch  0x00000002 , 0x0000044d 
- 00022537  0x00005971 iadd  0x00000002 , 0x0000003f 
- 00022538  0x00005972 store  0x00000002 , 0x0000044d 
- 00022539  0x00005973 branch  0x00002bd6 
- 00022540  0x00005977 arg  0x00000000 , 0x00000007 
- 00022541  0x00005978 branch  0x00005824 
- 00022542  0x0000597b arg  0x00000000 , 0x00000007 
- 00022543  0x0000597c branch  0x00005828 
- 00022544  0x0000597f arg  0x00000001 , 0x00000007 
- 00022545  0x00005980 branch  0x00005824 
- 00022546  0x00005983 arg  0x00000001 , 0x00000007 
- 00022547  0x00005984 branch  0x00005828 
- 00022548  0x00005987 arg  0x00000002 , 0x00000007 
- 00022549  0x00005988 branch  0x00005824 
- 00022550  0x0000598b arg  0x00000002 , 0x00000007 
- 00022551  0x0000598c branch  0x00005828 
- 00022552  0x0000598f arg  0x00000003 , 0x00000007 
- 00022553  0x00005990 branch  0x00005824 
- 00022554  0x00005993 arg  0x00000003 , 0x00000007 
- 00022555  0x00005994 branch  0x00005828 
- 00022556  0x00005997 arg  0x00000004 , 0x00000007 
- 00022557  0x00005998 branch  0x00005824 
- 00022558  0x0000599b arg  0x00000004 , 0x00000007 
- 00022559  0x0000599c branch  0x00005828 
- 00022560  0x0000599f arg  0x00000005 , 0x00000007 
- 00022561  0x000059a0 branch  0x00005824 
- 00022562  0x000059a3 arg  0x00000005 , 0x00000007 
- 00022563  0x000059a4 branch  0x00005828 
- 00022564  0x000059a8 fetch  0x00000001 , 0x000044e9 
- 00022565  0x000059a9 qset1  0x0000003f 
- 00022566  0x000059aa store  0x00000001 , 0x000044e9 
- 00022567  0x000059ab rtn 
- 00022568  0x000059ae fetch  0x00000001 , 0x000044e9 
- 00022569  0x000059af qset0  0x0000003f 
- 00022570  0x000059b0 store  0x00000001 , 0x000044e9 
- 00022571  0x000059b1 rtn 
- 00022572  0x000059b4 setarg  0x00112233 
- 00022573  0x000059b5 store  0x00000003 , 0x000044ea 
- 00022574  0x000059b6 setarg  0x00445566 
- 00022575  0x000059b7 istore  0x00000003 , 0x00000005 
- 00022576  0x000059b8 setarg  0x00778899 
- 00022577  0x000059b9 istore  0x00000003 , 0x00000005 
- 00022578  0x000059ba setarg  0x00001122 
- 00022579  0x000059bb istore  0x00000003 , 0x00000005 
- 00022580  0x000059bc setarg  0x00334455 
- 00022581  0x000059bd istore  0x00000003 , 0x00000005 
- 00022582  0x000059be setarg  0x00000066 
- 00022583  0x000059bf istore  0x00000001 , 0x00000005 
- 00022584  0x000059c0 rtn 
- 00022585  0x000059c4 setarg  0x01000302 
- 00022586  0x000059c5 store  0x00000004 , 0x00004453 
- 00022587  0x000059c6 setarg  0x00010010 
- 00022588  0x000059c7 store  0x00000003 , 0x00004457 
- 00022589  0x000059c8 jam  0x00000001 , 0x000044c6 
- 00022590  0x000059c9 rtn 
- 00022591  0x000059ce arg  0x00000000 , 0x00000011 
- 00022592  0x000059cf arg  0x00000001 , 0x00000001 
- 00022593  0x000059d0 branch  0x00005850 
- 00022594  0x000059d5 arg  0x00000003 , 0x00000001 
- 00022595  0x000059d6 call  0x00005850 
- 00022596  0x000059d7 copy  0x00000012 , 0x0000003f 
- 00022597  0x000059d8 istore  0x00000001 , 0x00000005 
- 00022598  0x000059d9 rtn 
- 00022599  0x000059de force  0x00000002 , 0x00000001 
- 00022600  0x000059df increase  0x00000004 , 0x00000011 
- 00022601  0x000059e0 call  0x00005850 
- 00022602  0x000059e1 increase  0xfffffffc , 0x00000011 
- 00022603  0x000059e2 copy  0x00000011 , 0x0000003f 
- 00022604  0x000059e3 istore  0x00000002 , 0x00000005 
- 00022605  0x000059e4 copy  0x00000012 , 0x0000003f 
- 00022606  0x000059e5 istore  0x00000002 , 0x00000005 
- 00022607  0x000059e6 rtn 
- 00022608  0x000059eb sub  0x00000011 , 0x000000f0 , 0x0000003e 
- 00022609  0x000059ec nbranch  0x00002a8c , 0x00000002 
- 00022610  0x000059ed fetch  0x00000001 , 0x000044ff 
- 00022611  0x000059ee arg  0x00000001 , 0x00000002 
- 00022612  0x000059ef arg  0x00000004 , 0x00000039 
- 00022613  0x000059f1 iand  0x00000002 , 0x0000003e 
- 00022614  0x000059f2 branch  0x0000585a , 0x00000005 
- 00022615  0x000059f3 lshift  0x00000002 , 0x00000002 
- 00022616  0x000059f4 loop  0x00005855 
- 00022617  0x000059f5 branch  0x00002a8c 
- 00022618  0x000059f7 ixor  0x00000002 , 0x0000003f 
- 00022619  0x000059f8 store  0x00000001 , 0x000044ff 
- 00022620  0x000059f9 sub  0x00000039 , 0x00000004 , 0x0000003f 
- 00022621  0x000059fa lshift4  0x0000003f , 0x0000003f 
- 00022622  0x000059fb lshift4  0x0000003f , 0x0000003f 
- 00022623  0x000059fc arg  0x00001800 , 0x00000002 
- 00022624  0x000059fd iadd  0x00000002 , 0x00000002 
- 00022625  0x000059ff arg  0x00000000 , 0x00000039 
- 00022626  0x00005a00 arg  0x00004500 , 0x00000006 
- 00022627  0x00005a02 ifetch  0x00000002 , 0x00000006 
- 00022628  0x00005a03 branch  0x00005869 , 0x00000034 
- 00022629  0x00005a04 copy  0x00000039 , 0x0000003f 
- 00022630  0x00005a05 increase  0x00000001 , 0x00000039 
- 00022631  0x00005a06 bne  0x00000004 , 0x00005863 
- 00022632  0x00005a07 branch  0x00002a8c 
- 00022633  0x00005a0b increase  0xfffffffe , 0x00000006 
- 00022634  0x00005a0c istoret  0x00000002 , 0x00000006 
- 00022635  0x00005a0d copy  0x00000002 , 0x00000005 
- 00022636  0x00005a0e copy  0x00000011 , 0x0000003f 
- 00022637  0x00005a0f istore  0x00000001 , 0x00000005 
- 00022638  0x00005a10 setarg  0x00000000 
- 00022639  0x00005a11 istore  0x00000001 , 0x00000005 
- 00022640  0x00005a12 copy  0x00000001 , 0x0000003f 
- 00022641  0x00005a13 istore  0x00000001 , 0x00000005 
- 00022642  0x00005a14 rtn 
- 00022643  0x00005a19 fetch  0x00000002 , 0x00004500 
- 00022644  0x00005a1a copy  0x0000003f , 0x00000006 
- 00022645  0x00005a1b rtn 
- 00022646  0x00005a1e fetch  0x00000002 , 0x00004502 
- 00022647  0x00005a1f copy  0x0000003f , 0x00000006 
- 00022648  0x00005a20 rtn 
- 00022649  0x00005a23 call  0x0000587c 
- 00022650  0x00005a24 copy  0x0000003f , 0x00000006 
- 00022651  0x00005a25 rtn 
- 00022652  0x00005a27 fetch  0x00000002 , 0x00004506 
- 00022653  0x00005a28 nrtn  0x00000034 
- 00022654  0x00005a29 fetch  0x00000002 , 0x00004504 
- 00022655  0x00005a2a nrtn  0x00000034 
- 00022656  0x00005a2b fetch  0x00000002 , 0x00004502 
- 00022657  0x00005a2c nrtn  0x00000034 
- 00022658  0x00005a2d fetch  0x00000002 , 0x00004500 
- 00022659  0x00005a2e rtn 
- 00022660  0x00005a31 call  0x00005873 
- 00022661  0x00005a32 increase  0x00000003 , 0x00000006 
- 00022662  0x00005a33 rtn 
- 00022663  0x00005a36 call  0x00005873 
- 00022664  0x00005a37 increase  0x00000007 , 0x00000006 
- 00022665  0x00005a38 rtn 
- 00022666  0x00005a3b call  0x00005879 
- 00022667  0x00005a3c increase  0x00000007 , 0x00000006 
- 00022668  0x00005a3d rtn 
- 00022669  0x00005a40 call  0x00005879 
- 00022670  0x00005a41 increase  0x00000003 , 0x00000006 
- 00022671  0x00005a42 rtn 
- 00022672  0x00005a47 fetch  0x00000002 , 0x00004506 
- 00022673  0x00005a48 rtn 
- 00022674  0x00005a4c fetch  0x00000002 , 0x00004504 
- 00022675  0x00005a4d rtn 
- 00022676  0x00005a51 fetch  0x00000002 , 0x00004500 
- 00022677  0x00005a52 rtn 
- 00022678  0x00005a56 fetch  0x00000002 , 0x00004500 
- 00022679  0x00005a57 arg  0x00001800 , 0x00000002 
- 00022680  0x00005a58 isub  0x00000002 , 0x0000003f 
- 00022681  0x00005a59 rshift4  0x0000003f , 0x0000003f 
- 00022682  0x00005a5a rshift4  0x0000003f , 0x00000007 
- 00022683  0x00005a5b fetch  0x00000001 , 0x000044ff 
- 00022684  0x00005a5c qset0  0x0000003f 
- 00022685  0x00005a5d store  0x00000001 , 0x000044ff 
- 00022686  0x00005a5e arg  0x00000000 , 0x00000039 
- 00022687  0x00005a60 lshift  0x00000039 , 0x0000003f 
- 00022688  0x00005a61 arg  0x00004502 , 0x00000002 
- 00022689  0x00005a62 iadd  0x00000002 , 0x00000002 
- 00022690  0x00005a63 ifetch  0x00000002 , 0x00000002 
- 00022691  0x00005a64 increase  0xfffffffe , 0x00000002 
- 00022692  0x00005a65 istore  0x00000002 , 0x00000002 
- 00022693  0x00005a66 copy  0x00000039 , 0x0000003f 
- 00022694  0x00005a67 increase  0x00000001 , 0x00000039 
- 00022695  0x00005a68 bne  0x00000003 , 0x0000589f 
- 00022696  0x00005a69 setarg  0x00000000 
- 00022697  0x00005a6a istore  0x00000002 , 0x00000002 
- 00022698  0x00005a6b rtn 
- 00022699  0x00005a72 ifetch  0x00000003 , 0x00000006 
- 00022700  0x00005a73 store  0x00000003 , 0x00000477 
- 00022701  0x00005a74 beq  0x00000002 , 0x000058c1 
- 00022702  0x00005a75 beq  0x00000003 , 0x000058c9 
- 00022703  0x00005a76 beq  0x00000004 , 0x000058cc 
- 00022704  0x00005a77 beq  0x00000006 , 0x000058f2 
- 00022705  0x00005a78 beq  0x00000008 , 0x0000593f 
- 00022706  0x00005a79 beq  0x0000000a , 0x000059bc 
- 00022707  0x00005a7a beq  0x0000000c , 0x000059e4 
- 00022708  0x00005a7b beq  0x00000010 , 0x000059fa 
- 00022709  0x00005a7c beq  0x00000012 , 0x00005a2f 
- 00022710  0x00005a7d beq  0x00000016 , 0x00005a48 
- 00022711  0x00005a7e beq  0x00000018 , 0x00005a5b 
- 00022712  0x00005a7f beq  0x00000052 , 0x00005a60 
- 00022713  0x00005a80 rtn 
- 00022714  0x00005a84 force  0x00000003 , 0x00000011 
- 00022715  0x00005a85 call  0x00005a82 
- 00022716  0x00005a86 setarg  0x00000002 
- 00022717  0x00005a87 istore  0x00000001 , 0x00000005 
- 00022718  0x00005a88 fetch  0x00000002 , 0x000044a6 
- 00022719  0x00005a89 istore  0x00000002 , 0x00000005 
- 00022720  0x00005a8a rtn 
- 00022721  0x00005a8e call  0x000058c9 
- 00022722  0x00005a90 force  0x00000003 , 0x00000011 
- 00022723  0x00005a91 call  0x00005a82 
- 00022724  0x00005a92 setarg  0x00000003 
- 00022725  0x00005a93 istore  0x00000001 , 0x00000005 
- 00022726  0x00005a94 fetch  0x00000002 , 0x000044a6 
- 00022727  0x00005a95 istore  0x00000002 , 0x00000005 
- 00022728  0x00005a96 rtn 
- 00022729  0x00005a99 rshift8  0x0000003f , 0x0000003f 
- 00022730  0x00005a9a store  0x00000002 , 0x000044a8 
- 00022731  0x00005a9b rtn 
- 00022732  0x00005a9e call  0x00005ab1 
- 00022733  0x00005a9f call  0x00007fe7 
- 00022734  0x00005aa0 branch  0x000058cf 
- 00022735  0x00005aa3 arg  0x00000003 , 0x0000000b 
- 00022736  0x00005aa4 call  0x00005756 
- 00022737  0x00005aa6 call  0x0000575f 
- 00022738  0x00005aa7 branch  0x000058f0 , 0x00000034 
- 00022739  0x00005aa8 nbranch  0x000058ed , 0x00000002 
- 00022740  0x00005aa9 increase  0xfffffffe , 0x00000006 
- 00022741  0x00005aaa call  0x00007ea5 
- 00022742  0x00005aab call  0x00007e9c 
- 00022743  0x00005aac nbranch  0x000058e1 , 0x00000028 
- 00022744  0x00005aad call  0x00007e85 
- 00022745  0x00005aae call  0x00007fe9 
- 00022746  0x00005aaf force  0x00000014 , 0x00000011 
- 00022747  0x00005ab0 call  0x00005a82 
- 00022748  0x00005ab1 call  0x00007e95 
- 00022749  0x00005ab2 setarg  0x00000005 
- 00022750  0x00005ab3 istore  0x00000001 , 0x00000005 
- 00022751  0x00005ab4 setarg  0x00000001 
- 00022752  0x00005ab5 istore  0x00000001 , 0x00000005 
- 00022753  0x00005ab7 call  0x00007e9f 
- 00022754  0x00005ab8 ifetch  0x00000002 , 0x00000006 
- 00022755  0x00005ab9 istore  0x00000002 , 0x00000005 
- 00022756  0x00005aba ifetch  0x00000001 , 0x00000006 
- 00022757  0x00005abb copy  0x0000003f , 0x00000039 
- 00022758  0x00005abc call  0x00007f01 
- 00022759  0x00005abd call  0x00007ea2 
- 00022760  0x00005abe increase  0xffffffff , 0x0000000b 
- 00022761  0x00005abf branch  0x000058f0 , 0x00000005 
- 00022762  0x00005ac1 ifetch  0x00000001 , 0x00000006 
- 00022763  0x00005ac2 iadd  0x00000006 , 0x00000006 
- 00022764  0x00005ac3 branch  0x000058d1 
- 00022765  0x00005ac5 ifetch  0x00000001 , 0x00000006 
- 00022766  0x00005ac6 iadd  0x00000006 , 0x00000006 
- 00022767  0x00005ac7 branch  0x000058ea 
- 00022768  0x00005ac9 branch  0x00005a76 , 0x00000028 
- 00022769  0x00005aca branch  0x00005aa5 
- 00022770  0x00005ace call  0x00005ab1 
- 00022771  0x00005acf ifetch  0x00000002 , 0x00000006 
- 00022772  0x00005ad0 store  0x00000002 , 0x00004472 
- 00022773  0x00005ad1 call  0x00007ea5 
- 00022774  0x00005ad2 arg  0x0000445e , 0x00000005 
- 00022775  0x00005ad3 fetch  0x00000002 , 0x000044fc 
- 00022776  0x00005ad4 increase  0xfffffff9 , 0x0000003f 
- 00022777  0x00005ad5 call  0x000056db 
- 00022778  0x00005ad6 branch  0x00005905 
- 00022779  0x00005ada disable  0x00000028 
- 00022780  0x00005adb fetcht  0x00000002 , 0x0000445a 
- 00022781  0x00005adc fetch  0x00000002 , 0x0000445c 
- 00022782  0x00005add isub  0x00000002 , 0x0000003e 
- 00022783  0x00005ade nbranch  0x00005902 , 0x00000002 
- 00022784  0x00005adf deposit  0x00000002 
- 00022785  0x00005ae0 rtnne  0x00000000 
- 00022786  0x00005ae2 enable  0x00000028 
- 00022787  0x00005ae3 jam  0x00000001 , 0x0000047a 
- 00022788  0x00005ae4 branch  0x00005a77 
- 00022789  0x00005ae8 call  0x000058fb 
- 00022790  0x00005ae9 rtn  0x00000028 
- 00022791  0x00005aea fetcht  0x00000002 , 0x00004472 
- 00022792  0x00005aeb setarg  0x00002800 
- 00022793  0x00005aec isub  0x00000002 , 0x0000003e 
- 00022794  0x00005aed branch  0x0000590c , 0x00000005 
- 00022795  0x00005aee branch  0x00005a76 
- 00022796  0x00005af2 jam  0x00000000 , 0x000004b4 
- 00022797  0x00005af3 fetcht  0x00000002 , 0x0000445a 
- 00022798  0x00005af4 storet  0x00000002 , 0x00000aa2 
- 00022799  0x00005af5 call  0x0000578c 
- 00022800  0x00005af6 nbranch  0x00005a76 , 0x00000034 
- 00022801  0x00005af8 fetcht  0x00000002 , 0x00000aa2 
- 00022802  0x00005af9 call  0x0000578c 
- 00022803  0x00005afa nbranch  0x00005925 , 0x00000034 
- 00022804  0x00005afb copy  0x00000006 , 0x00000011 
- 00022805  0x00005afc fetch  0x00000001 , 0x000004b3 
- 00022806  0x00005afd copy  0x0000003f , 0x00000039 
- 00022807  0x00005afe fetcht  0x00000001 , 0x0000445e 
- 00022808  0x00005aff isub  0x00000002 , 0x0000003e 
- 00022809  0x00005b00 nbranch  0x00005921 , 0x00000005 
- 00022810  0x00005b01 arg  0x0000445f , 0x00000012 
- 00022811  0x00005b02 call  0x00007f88 
- 00022812  0x00005b04 branch  0x00005928 , 0x00000005 
- 00022813  0x00005b06 fetch  0x00000002 , 0x000004a3 
- 00022814  0x00005b07 fetcht  0x00000002 , 0x00004472 
- 00022815  0x00005b08 isub  0x00000002 , 0x0000003e 
- 00022816  0x00005b09 branch  0x00005930 , 0x00000005 
- 00022817  0x00005b0b fetch  0x00000002 , 0x00000aa2 
- 00022818  0x00005b0c increase  0x00000001 , 0x0000003f 
- 00022819  0x00005b0d store  0x00000002 , 0x00000aa2 
- 00022820  0x00005b0e branch  0x00005911 
- 00022821  0x00005b11 fetch  0x00000001 , 0x000004b4 
- 00022822  0x00005b12 beq  0x00000001 , 0x00005930 
- 00022823  0x00005b13 branch  0x00005a76 
- 00022824  0x00005b17 fetch  0x00000002 , 0x000004a3 
- 00022825  0x00005b18 fetcht  0x00000002 , 0x00004472 
- 00022826  0x00005b19 isub  0x00000002 , 0x0000003e 
- 00022827  0x00005b1a nbranch  0x00005921 , 0x00000005 
- 00022828  0x00005b1b jam  0x00000001 , 0x000004b4 
- 00022829  0x00005b1d fetcht  0x00000002 , 0x00000aa2 
- 00022830  0x00005b1e storet  0x00000002 , 0x0000049e 
- 00022831  0x00005b1f branch  0x00005921 
- 00022832  0x00005b22 fetch  0x00000001 , 0x000004b4 
- 00022833  0x00005b23 beq  0x00000000 , 0x00005921 
- 00022834  0x00005b24 jam  0x00000002 , 0x000004b4 
- 00022835  0x00005b25 fetcht  0x00000002 , 0x00000aa2 
- 00022836  0x00005b26 increase  0xffffffff , 0x00000002 
- 00022837  0x00005b27 storet  0x00000002 , 0x000004a0 
- 00022838  0x00005b2a arg  0x00000005 , 0x00000011 
- 00022839  0x00005b2b call  0x00005a82 
- 00022840  0x00005b2c setarg  0x00000007 
- 00022841  0x00005b2d istore  0x00000001 , 0x00000005 
- 00022842  0x00005b2e fetch  0x00000002 , 0x0000049e 
- 00022843  0x00005b2f istore  0x00000002 , 0x00000005 
- 00022844  0x00005b30 fetch  0x00000002 , 0x000004a0 
- 00022845  0x00005b31 istore  0x00000002 , 0x00000005 
- 00022846  0x00005b32 rtn 
- 00022847  0x00005b37 call  0x00005ab1 
- 00022848  0x00005b38 call  0x000056df 
- 00022849  0x00005b39 branch  0x00005942 
- 00022850  0x00005b3c fetcht  0x00000002 , 0x0000445a 
- 00022851  0x00005b3d storet  0x00000002 , 0x00000aa2 
- 00022852  0x00005b3e call  0x00005756 
- 00022853  0x00005b3f call  0x0000576d 
- 00022854  0x00005b40 increase  0xfffffffe , 0x00000006 
- 00022855  0x00005b41 copy  0x00000006 , 0x0000003f 
- 00022856  0x00005b42 store  0x00000002 , 0x0000049c 
- 00022857  0x00005b44 fetcht  0x00000002 , 0x00004472 
- 00022858  0x00005b45 setarg  0x00002a00 
- 00022859  0x00005b46 isub  0x00000002 , 0x0000003e 
- 00022860  0x00005b47 branch  0x000059a8 , 0x00000005 
- 00022861  0x00005b48 setarg  0x00002803 
- 00022862  0x00005b49 isub  0x00000002 , 0x0000003e 
- 00022863  0x00005b4a nbranch  0x00005990 , 0x00000005 
- 00022864  0x00005b4b arg  0x00000002 , 0x0000000b 
- 00022865  0x00005b4d call  0x00005a88 
- 00022866  0x00005b4e nbranch  0x0000596d , 0x00000002 
- 00022867  0x00005b4f fetcht  0x00000002 , 0x00000aa2 
- 00022868  0x00005b50 call  0x0000578a 
- 00022869  0x00005b51 beq  0x00000001 , 0x0000596d 
- 00022870  0x00005b52 call  0x00005a94 
- 00022871  0x00005b53 nbranch  0x0000596b , 0x00000005 
- 00022872  0x00005b54 nbranch  0x0000596f , 0x00000028 
- 00022873  0x00005b55 disable  0x00000028 
- 00022874  0x00005b56 arg  0x00000014 , 0x00000011 
- 00022875  0x00005b57 call  0x00005a82 
- 00022876  0x00005b58 setarg  0x00000009 
- 00022877  0x00005b59 istore  0x00000001 , 0x00000005 
- 00022878  0x00005b5a copy  0x00000005 , 0x00000030 
- 00022879  0x00005b5b increase  0x00000001 , 0x00000005 
- 00022880  0x00005b5d call  0x0000597d 
- 00022881  0x00005b5e call  0x00005a84 
- 00022882  0x00005b5f call  0x0000578a 
- 00022883  0x00005b60 call  0x00005984 
- 00022884  0x00005b61 fetch  0x00000001 , 0x000004a2 
- 00022885  0x00005b62 increase  0x00000005 , 0x0000003f 
- 00022886  0x00005b63 istore  0x00000001 , 0x00000030 
- 00022887  0x00005b64 fetch  0x00000001 , 0x000004a2 
- 00022888  0x00005b65 beq  0x00000010 , 0x0000596d 
- 00022889  0x00005b66 increase  0xffffffff , 0x0000000b 
- 00022890  0x00005b67 branch  0x0000596d , 0x00000005 
- 00022891  0x00005b69 call  0x00005a84 
- 00022892  0x00005b6a branch  0x00005951 
- 00022893  0x00005b6c branch  0x00005a76 , 0x00000028 
- 00022894  0x00005b6d branch  0x00005aa5 
- 00022895  0x00005b70 call  0x00005a97 
- 00022896  0x00005b71 call  0x00005a84 
- 00022897  0x00005b72 call  0x0000578a 
- 00022898  0x00005b73 fetch  0x00000001 , 0x000004a2 
- 00022899  0x00005b74 beq  0x00000010 , 0x0000596d 
- 00022900  0x00005b76 call  0x00007e9c 
- 00022901  0x00005b77 fetch  0x00000002 , 0x00000aa2 
- 00022902  0x00005b78 increase  0xffffffff , 0x0000003f 
- 00022903  0x00005b79 istore  0x00000002 , 0x00000005 
- 00022904  0x00005b7a call  0x00005aa1 
- 00022905  0x00005b7b call  0x00005984 
- 00022906  0x00005b7c increase  0xffffffff , 0x0000000b 
- 00022907  0x00005b7d branch  0x0000596d , 0x00000005 
- 00022908  0x00005b7e branch  0x0000596b 
- 00022909  0x00005b82 fetch  0x00000002 , 0x00000aa2 
- 00022910  0x00005b83 istore  0x00000002 , 0x00000005 
- 00022911  0x00005b85 fetch  0x00000001 , 0x000004b3 
- 00022912  0x00005b86 copy  0x0000003f , 0x00000039 
- 00022913  0x00005b87 call  0x00007e9f 
- 00022914  0x00005b88 call  0x00007ef4 
- 00022915  0x00005b89 branch  0x00007ea2 
- 00022916  0x00005b8b call  0x00007e9c 
- 00022917  0x00005b8c fetch  0x00000002 , 0x00000aa2 
- 00022918  0x00005b8d istore  0x00000002 , 0x00000005 
- 00022919  0x00005b8e call  0x00007ea2 
- 00022920  0x00005b8f fetch  0x00000001 , 0x000004a2 
- 00022921  0x00005b90 copy  0x0000003f , 0x00000039 
- 00022922  0x00005b91 call  0x00007e9c 
- 00022923  0x00005b92 call  0x00007e9f 
- 00022924  0x00005b93 isub  0x00000039 , 0x00000006 
- 00022925  0x00005b94 increase  0xffffffff , 0x00000006 
- 00022926  0x00005b95 call  0x00007ef4 
- 00022927  0x00005b96 branch  0x00007ea2 
- 00022928  0x00005b9b fetcht  0x00000002 , 0x0000445a 
- 00022929  0x00005b9c storet  0x00000002 , 0x00000aa2 
- 00022930  0x00005b9e call  0x00005a88 
- 00022931  0x00005b9f nbranch  0x00005a76 , 0x00000002 
- 00022932  0x00005ba0 call  0x0000578a 
- 00022933  0x00005ba1 beq  0x00000001 , 0x00005a76 
- 00022934  0x00005ba2 call  0x00005a94 
- 00022935  0x00005ba3 nbranch  0x000059a6 , 0x00000005 
- 00022936  0x00005ba6 arg  0x00000014 , 0x00000011 
- 00022937  0x00005ba7 call  0x00005a82 
- 00022938  0x00005ba8 setarg  0x00000009 
- 00022939  0x00005ba9 istore  0x00000001 , 0x00000005 
- 00022940  0x00005baa fetch  0x00000001 , 0x000004b3 
- 00022941  0x00005bab copy  0x0000003f , 0x00000039 
- 00022942  0x00005bac increase  0x00000002 , 0x0000003f 
- 00022943  0x00005bad istore  0x00000001 , 0x00000005 
- 00022944  0x00005bae fetch  0x00000002 , 0x00000aa2 
- 00022945  0x00005baf istore  0x00000002 , 0x00000005 
- 00022946  0x00005bb0 call  0x00007e9f 
- 00022947  0x00005bb1 call  0x00007ef4 
- 00022948  0x00005bb2 call  0x00007ea2 
- 00022949  0x00005bb3 branch  0x00005aa5 
- 00022950  0x00005bb6 call  0x00005a84 
- 00022951  0x00005bb7 branch  0x00005992 
- 00022952  0x00005bbb arg  0x00002a00 , 0x00000002 
- 00022953  0x00005bbc call  0x0000577c 
- 00022954  0x00005bbd rtn  0x00000034 
- 00022955  0x00005bbe increase  0xfffffffb , 0x00000006 
- 00022956  0x00005bbf ifetch  0x00000002 , 0x00000006 
- 00022957  0x00005bc0 store  0x00000002 , 0x00000aa2 
- 00022958  0x00005bc1 arg  0x00000014 , 0x00000011 
- 00022959  0x00005bc2 call  0x00005a82 
- 00022960  0x00005bc3 setarg  0x00000009 
- 00022961  0x00005bc4 istore  0x00000001 , 0x00000005 
- 00022962  0x00005bc5 fetch  0x00000001 , 0x000043af 
- 00022963  0x00005bc6 copy  0x0000003f , 0x00000039 
- 00022964  0x00005bc7 increase  0x00000002 , 0x0000003f 
- 00022965  0x00005bc8 istore  0x00000001 , 0x00000005 
- 00022966  0x00005bc9 fetch  0x00000002 , 0x00000aa2 
- 00022967  0x00005bca istore  0x00000002 , 0x00000005 
- 00022968  0x00005bcb arg  0x000043b0 , 0x00000006 
- 00022969  0x00005bcc call  0x00007ef4 
- 00022970  0x00005bcd call  0x00007ea2 
- 00022971  0x00005bce branch  0x00005aa5 
- 00022972  0x00005bd3 fetcht  0x00000002 , 0x00000478 
- 00022973  0x00005bd4 fetch  0x00000001 , 0x000044e9 
- 00022974  0x00005bd5 bbit1  0x00000003 , 0x000059dd 
- 00022975  0x00005bd8 call  0x0000576a 
- 00022976  0x00005bd9 branch  0x00005a76 , 0x00000034 
- 00022977  0x00005bda increase  0xfffffffe , 0x00000006 
- 00022978  0x00005bdb ifetch  0x00000002 , 0x00000006 
- 00022979  0x00005bdc arg  0x00002a00 , 0x00000002 
- 00022980  0x00005bdd isub  0x00000002 , 0x0000003e 
- 00022981  0x00005bde branch  0x000059d3 , 0x00000005 
- 00022982  0x00005bdf ifetch  0x00000001 , 0x00000006 
- 00022983  0x00005be0 sub  0x0000003f , 0x00000016 , 0x0000003e 
- 00022984  0x00005be1 branch  0x000059ca , 0x00000002 
- 00022985  0x00005be2 force  0x00000016 , 0x0000003f 
- 00022986  0x00005be4 copy  0x0000003f , 0x00000013 
- 00022987  0x00005be5 call  0x00007ea5 
- 00022988  0x00005be6 add  0x00000013 , 0x00000001 , 0x00000011 
- 00022989  0x00005be7 call  0x00005a82 
- 00022990  0x00005be8 setarg  0x0000000b 
- 00022991  0x00005be9 istore  0x00000001 , 0x00000005 
- 00022992  0x00005bea copy  0x00000013 , 0x00000039 
- 00022993  0x00005beb call  0x00007e9f 
- 00022994  0x00005bec branch  0x00007f01 
- 00022995  0x00005bef call  0x00007ea5 
- 00022996  0x00005bf0 fetch  0x00000001 , 0x000043af 
- 00022997  0x00005bf1 add  0x0000003f , 0x00000001 , 0x00000011 
- 00022998  0x00005bf2 call  0x00005a82 
- 00022999  0x00005bf3 setarg  0x0000000b 
- 00023000  0x00005bf4 istore  0x00000001 , 0x00000005 
- 00023001  0x00005bf5 fetch  0x00000001 , 0x000043af 
- 00023002  0x00005bf6 copy  0x0000003f , 0x00000039 
- 00023003  0x00005bf7 arg  0x000043b0 , 0x00000006 
- 00023004  0x00005bf8 branch  0x00007f01 
- 00023005  0x00005bfc fetch  0x00000002 , 0x000044fa 
- 00023006  0x00005bfd isub  0x00000002 , 0x0000003e 
- 00023007  0x00005bfe nbranch  0x000059bf , 0x00000005 
- 00023008  0x00005c00 call  0x00005a42 
- 00023009  0x00005c01 nbranch  0x000059bf , 0x00000028 
- 00023010  0x00005c02 jam  0x00000005 , 0x0000047a 
- 00023011  0x00005c03 branch  0x00005a77 
- 00023012  0x00005c07 ifetch  0x00000002 , 0x00000006 
- 00023013  0x00005c08 store  0x00000002 , 0x0000445e 
- 00023014  0x00005c0a arg  0x00000014 , 0x00000011 
- 00023015  0x00005c0b call  0x00005a82 
- 00023016  0x00005c0c setarg  0x0000000d 
- 00023017  0x00005c0d istore  0x00000001 , 0x00000005 
- 00023018  0x00005c0e fetch  0x00000002 , 0x0000445e 
- 00023019  0x00005c0f iforce  0x00000011 
- 00023020  0x00005c10 fetcht  0x00000002 , 0x00000478 
- 00023021  0x00005c11 call  0x0000576a 
- 00023022  0x00005c12 branch  0x00005a76 , 0x00000034 
- 00023023  0x00005c13 ifetch  0x00000001 , 0x00000006 
- 00023024  0x00005c14 isub  0x00000011 , 0x00000039 
- 00023025  0x00005c15 nbranch  0x00005a76 , 0x00000002 
- 00023026  0x00005c16 sub  0x00000039 , 0x00000016 , 0x0000003e 
- 00023027  0x00005c17 branch  0x000059f5 , 0x00000002 
- 00023028  0x00005c18 force  0x00000016 , 0x00000039 
- 00023029  0x00005c1a deposit  0x00000011 
- 00023030  0x00005c1b iadd  0x00000006 , 0x00000006 
- 00023031  0x00005c1c call  0x00007ef4 
- 00023032  0x00005c1d call  0x00007ea2 
- 00023033  0x00005c1e branch  0x00005aa5 
- 00023034  0x00005c22 call  0x00005ab1 
- 00023035  0x00005c23 call  0x000056d7 
- 00023036  0x00005c24 branch  0x000059fd 
- 00023037  0x00005c2a arg  0x00000002 , 0x0000000b 
- 00023038  0x00005c2b fetcht  0x00000002 , 0x0000445a 
- 00023039  0x00005c2f storet  0x00000002 , 0x00000aa2 
- 00023040  0x00005c30 call  0x00005756 
- 00023041  0x00005c31 call  0x0000576d 
- 00023042  0x00005c32 increase  0xfffffffe , 0x00000006 
- 00023043  0x00005c33 copy  0x00000006 , 0x0000003f 
- 00023044  0x00005c34 store  0x00000002 , 0x0000049c 
- 00023045  0x00005c36 call  0x00005a88 
- 00023046  0x00005c37 nbranch  0x00005a25 , 0x00000002 
- 00023047  0x00005c38 fetcht  0x00000002 , 0x00000aa2 
- 00023048  0x00005c39 call  0x0000578a 
- 00023049  0x00005c3a beq  0x00000001 , 0x00005a28 
- 00023050  0x00005c3c call  0x00005a8c 
- 00023051  0x00005c3d nbranch  0x00005a23 , 0x00000005 
- 00023052  0x00005c3e copy  0x0000000b , 0x0000003f 
- 00023053  0x00005c3f beq  0x00000000 , 0x00005a28 
- 00023054  0x00005c40 nbranch  0x00005a19 , 0x00000028 
- 00023055  0x00005c41 disable  0x00000028 
- 00023056  0x00005c43 arg  0x00000014 , 0x00000011 
- 00023057  0x00005c44 call  0x00005a82 
- 00023058  0x00005c45 setarg  0x00000011 
- 00023059  0x00005c46 istore  0x00000001 , 0x00000005 
- 00023060  0x00005c47 fetch  0x00000001 , 0x000004b3 
- 00023061  0x00005c48 increase  0x00000004 , 0x0000003f 
- 00023062  0x00005c49 istore  0x00000001 , 0x00000005 
- 00023063  0x00005c4a call  0x00007ea2 
- 00023064  0x00005c4b branch  0x00005a1f 
- 00023065  0x00005c4d fetch  0x00000001 , 0x000004b3 
- 00023066  0x00005c4e beq  0x00000010 , 0x00005a28 
- 00023067  0x00005c4f fetch  0x00000002 , 0x00000aa2 
- 00023068  0x00005c50 increase  0xffffffff , 0x0000003f 
- 00023069  0x00005c51 store  0x00000002 , 0x000004a0 
- 00023070  0x00005c52 call  0x00005a9c 
- 00023071  0x00005c54 fetch  0x00000002 , 0x00000aa2 
- 00023072  0x00005c55 store  0x00000002 , 0x0000049e 
- 00023073  0x00005c56 call  0x00005a97 
- 00023074  0x00005c57 increase  0xffffffff , 0x0000000b 
- 00023075  0x00005c5a call  0x00005a84 
- 00023076  0x00005c5b branch  0x00005a05 
- 00023077  0x00005c5e fetch  0x00000002 , 0x00000aa2 
- 00023078  0x00005c5f store  0x00000002 , 0x000004a0 
- 00023079  0x00005c60 branch  0x00005a2c 
- 00023080  0x00005c62 fetch  0x00000002 , 0x00000aa2 
- 00023081  0x00005c63 increase  0xffffffff , 0x0000003f 
- 00023082  0x00005c64 store  0x00000002 , 0x000004a0 
- 00023083  0x00005c65 branch  0x00005a2c 
- 00023084  0x00005c67 branch  0x00005a76 , 0x00000028 
- 00023085  0x00005c68 call  0x00005a9c 
- 00023086  0x00005c69 branch  0x00005aa5 
- 00023087  0x00005c6f copy  0x00000006 , 0x00000011 
- 00023088  0x00005c70 fetch  0x00000002 , 0x000044fc 
- 00023089  0x00005c71 add  0x0000003f , 0xfffffffd , 0x00000012 
- 00023090  0x00005c72 call  0x000056e2 
- 00023091  0x00005c74 fetch  0x00000001 , 0x000044e9 
- 00023092  0x00005c75 bbit0  0x00000004 , 0x00005a3d 
- 00023093  0x00005c77 fetcht  0x00000002 , 0x00000478 
- 00023094  0x00005c78 fetch  0x00000002 , 0x000044fa 
- 00023095  0x00005c79 isub  0x00000002 , 0x0000003e 
- 00023096  0x00005c7a nbranch  0x00005a3d , 0x00000005 
- 00023097  0x00005c7b call  0x00005a42 
- 00023098  0x00005c7c nbranch  0x00005a3d , 0x00000028 
- 00023099  0x00005c7d jam  0x00000005 , 0x0000047a 
- 00023100  0x00005c7e branch  0x00005a77 
- 00023101  0x00005c81 force  0x00000001 , 0x00000011 
- 00023102  0x00005c82 call  0x00005a82 
- 00023103  0x00005c83 setarg  0x00000013 
- 00023104  0x00005c84 istore  0x00000001 , 0x00000005 
- 00023105  0x00005c85 rtn 
- 00023106  0x00005c88 call  0x00007fe9 
- 00023107  0x00005c89 fetch  0x00000001 , 0x000044c6 
- 00023108  0x00005c8a rtneq  0x00000000 
- 00023109  0x00005c8b fetch  0x00000001 , 0x00004040 
- 00023110  0x00005c8c rtnbit1  0x00000004 
- 00023111  0x00005c8d branch  0x00007fe7 
- 00023112  0x00005c91 add  0x00000006 , 0x00000002 , 0x00000011 
- 00023113  0x00005c92 fetch  0x00000002 , 0x000044fc 
- 00023114  0x00005c93 add  0x0000003f , 0xfffffffb , 0x00000012 
- 00023115  0x00005c94 call  0x000056e2 
- 00023116  0x00005c95 branch  0x00005a4d 
- 00023117  0x00005c99 fetch  0x00000002 , 0x000044fc 
- 00023118  0x00005c9a copy  0x0000003f , 0x00000011 
- 00023119  0x00005c9b call  0x00005a82 
- 00023120  0x00005c9c setarg  0x00000017 
- 00023121  0x00005c9d istore  0x00000001 , 0x00000005 
- 00023122  0x00005c9e fetch  0x00000002 , 0x00000478 
- 00023123  0x00005c9f istore  0x00000002 , 0x00000005 
- 00023124  0x00005ca0 fetch  0x00000002 , 0x000044fc 
- 00023125  0x00005ca1 add  0x0000003f , 0xfffffffb , 0x00000039 
- 00023126  0x00005ca2 fetch  0x00000002 , 0x0000450d 
- 00023127  0x00005ca3 add  0x0000003f , 0x00000007 , 0x00000006 
- 00023128  0x00005ca4 ifetch  0x00000002 , 0x00000006 
- 00023129  0x00005ca5 istore  0x00000002 , 0x00000005 
- 00023130  0x00005ca6 branch  0x00007ef4 
- 00023131  0x00005cad force  0x00000001 , 0x00000011 
- 00023132  0x00005cae call  0x00005a82 
- 00023133  0x00005caf setarg  0x00000019 
- 00023134  0x00005cb0 istore  0x00000001 , 0x00000005 
- 00023135  0x00005cb1 rtn 
- 00023136  0x00005cb6 copy  0x00000006 , 0x00000011 
- 00023137  0x00005cb7 fetch  0x00000002 , 0x000044fc 
- 00023138  0x00005cb8 add  0x0000003f , 0xfffffffd , 0x00000012 
- 00023139  0x00005cb9 branch  0x000056e2 
- 00023140  0x00005cbf copy  0x00000002 , 0x00000013 
- 00023141  0x00005cc0 increase  0x00000003 , 0x00000011 
- 00023142  0x00005cc1 call  0x00005a82 
- 00023143  0x00005cc2 increase  0xfffffffd , 0x00000011 
- 00023144  0x00005cc3 setarg  0x0000001b 
- 00023145  0x00005cc4 istore  0x00000001 , 0x00000005 
- 00023146  0x00005cc5 copy  0x00000013 , 0x00000002 
- 00023147  0x00005cc6 istoret  0x00000002 , 0x00000005 
- 00023148  0x00005cc7 rtn 
- 00023149  0x00005ccb copy  0x00000002 , 0x00000013 
- 00023150  0x00005ccc increase  0x00000003 , 0x00000011 
- 00023151  0x00005ccd call  0x00005a82 
- 00023152  0x00005cce increase  0xfffffffd , 0x00000011 
- 00023153  0x00005ccf setarg  0x0000001d 
- 00023154  0x00005cd0 istore  0x00000001 , 0x00000005 
- 00023155  0x00005cd1 copy  0x00000013 , 0x00000002 
- 00023156  0x00005cd2 istoret  0x00000002 , 0x00000005 
- 00023157  0x00005cd3 rtn 
- 00023158  0x00005cd9 jam  0x0000000a , 0x0000047a 
- 00023159  0x00005cdb force  0x00000005 , 0x00000011 
- 00023160  0x00005cdc call  0x00005a82 
- 00023161  0x00005cdd setarg  0x00000001 
- 00023162  0x00005cde istore  0x00000001 , 0x00000005 
- 00023163  0x00005cdf fetch  0x00000001 , 0x00000477 
- 00023164  0x00005ce0 istore  0x00000001 , 0x00000005 
- 00023165  0x00005ce1 fetch  0x00000002 , 0x00000478 
- 00023166  0x00005ce2 istore  0x00000002 , 0x00000005 
- 00023167  0x00005ce3 fetch  0x00000001 , 0x0000047a 
- 00023168  0x00005ce4 istore  0x00000001 , 0x00000005 
- 00023169  0x00005ce5 rtn 
- 00023170  0x00005ce9 force  0x00000004 , 0x00000012 
- 00023171  0x00005cea branch  0x00005847 
- 00023172  0x00005cee fetcht  0x00000002 , 0x00000aa2 
- 00023173  0x00005cef increase  0x00000001 , 0x00000002 
- 00023174  0x00005cf0 storet  0x00000002 , 0x00000aa2 
- 00023175  0x00005cf1 rtn 
- 00023176  0x00005cf4 fetcht  0x00000002 , 0x00000aa2 
- 00023177  0x00005cf5 fetch  0x00000002 , 0x0000445c 
- 00023178  0x00005cf6 isub  0x00000002 , 0x0000003e 
- 00023179  0x00005cf7 rtn 
- 00023180  0x00005cfb fetcht  0x00000001 , 0x0000445e 
- 00023181  0x00005cfc arg  0x0000445f , 0x00000011 
- 00023182  0x00005cfe fetch  0x00000001 , 0x000004a2 
- 00023183  0x00005cff copy  0x0000003f , 0x00000039 
- 00023184  0x00005d00 isub  0x00000002 , 0x0000003e 
- 00023185  0x00005d01 nrtn  0x00000005 
- 00023186  0x00005d02 arg  0x000004a3 , 0x00000012 
- 00023187  0x00005d03 branch  0x00007f88 
- 00023188  0x00005d06 fetcht  0x00000001 , 0x00004471 
- 00023189  0x00005d07 arg  0x00004472 , 0x00000011 
- 00023190  0x00005d08 branch  0x00005a8e 
- 00023191  0x00005d0c fetch  0x00000001 , 0x000004b3 
- 00023192  0x00005d0d store  0x00000001 , 0x00000101 
- 00023193  0x00005d0e copy  0x0000003f , 0x00000039 
- 00023194  0x00005d0f call  0x00007e9f 
- 00023195  0x00005d10 branch  0x00007ef4 
- 00023196  0x00005d14 call  0x00007e9c 
- 00023197  0x00005d15 fetch  0x00000002 , 0x0000049e 
- 00023198  0x00005d16 istore  0x00000002 , 0x00000005 
- 00023199  0x00005d17 fetch  0x00000002 , 0x000004a0 
- 00023200  0x00005d18 istore  0x00000002 , 0x00000005 
- 00023201  0x00005d1a fetch  0x00000001 , 0x00000101 
- 00023202  0x00005d1b copy  0x0000003f , 0x00000039 
- 00023203  0x00005d1c call  0x00007ef4 
- 00023204  0x00005d1d branch  0x00007ea2 
- 00023205  0x00005d22 call  0x00007e9c 
- 00023206  0x00005d23 call  0x0000588a 
- 00023207  0x00005d24 copy  0x00000005 , 0x0000003f 
- 00023208  0x00005d25 isub  0x00000006 , 0x00000011 
- 00023209  0x00005d26 call  0x0000588d 
- 00023210  0x00005d27 copy  0x00000011 , 0x0000003f 
- 00023211  0x00005d28 istore  0x00000002 , 0x00000006 
- 00023212  0x00005d29 increase  0x00000004 , 0x00000011 
- 00023213  0x00005d2a call  0x00005879 
- 00023214  0x00005d2b copy  0x00000011 , 0x0000003f 
- 00023215  0x00005d2c istore  0x00000001 , 0x00000006 
- 00023216  0x00005d2d rtn 
- 00023217  0x00005d31 rshift8  0x0000003f , 0x0000003f 
- 00023218  0x00005d32 store  0x00000002 , 0x0000445a 
- 00023219  0x00005d33 ifetch  0x00000002 , 0x00000006 
- 00023220  0x00005d34 store  0x00000002 , 0x0000445c 
- 00023221  0x00005d35 rtn 
- 00023222  0x00005d3b ifetch  0x00000001 , 0x00000006 
- 00023223  0x00005d3c ifetcht  0x00000001 , 0x00000006 
- 00023224  0x00005d3d ifetcht  0x00000002 , 0x00000006 
- 00023225  0x00005d3e beq  0x00000013 , 0x00005abb 
- 00023226  0x00005d3f rtn 
- 00023227  0x00005d41 ifetch  0x00000002 , 0x00000006 
- 00023228  0x00005d42 store  0x00000002 , 0x00004509 
- 00023229  0x00005d43 jam  0x00000040 , 0x00000a99 
- 00023230  0x00005d44 branch  0x00007d86 
- 00023231  0x00005d4b arg  0x0000000c , 0x00000011 
- 00023232  0x00005d4c arg  0x00000012 , 0x00000013 
- 00023233  0x00005d4d call  0x00005ac7 
- 00023234  0x00005d4e setarg  0x00000008 
- 00023235  0x00005d4f istore  0x00000002 , 0x00000005 
- 00023236  0x00005d50 fetch  0x00000008 , 0x00004496 
- 00023237  0x00005d51 istore  0x00000008 , 0x00000005 
- 00023238  0x00005d52 rtn 
- 00023239  0x00005d57 call  0x00005acf 
- 00023240  0x00005d58 arg  0x00000005 , 0x00000012 
- 00023241  0x00005d59 call  0x00005847 
- 00023242  0x00005d5a copy  0x00000013 , 0x0000003f 
- 00023243  0x00005d5b istore  0x00000001 , 0x00000005 
- 00023244  0x00005d5c fetch  0x00000001 , 0x00004508 
- 00023245  0x00005d5d istore  0x00000001 , 0x00000005 
- 00023246  0x00005d5e rtn 
- 00023247  0x00005d62 fetch  0x00000001 , 0x00004508 
- 00023248  0x00005d64 pincrease  0x00000001 
- 00023249  0x00005d65 store  0x00000001 , 0x00004508 
- 00023250  0x00005d66 rtnne  0x00000000 
- 00023251  0x00005d69 jam  0x00000001 , 0x00004508 
- 00023252  0x00005d6a rtn 
- 00023253  0x00005d70 fetch  0x00000001 , 0x000044c6 
- 00023254  0x00005d71 beq  0x00000000 , 0x00005ae4 
- 00023255  0x00005d72 beq  0x00000001 , 0x00005ae7 
- 00023256  0x00005d73 beq  0x00000002 , 0x00005ae9 
- 00023257  0x00005d74 beq  0x00000081 , 0x00005add 
- 00023258  0x00005d75 beq  0x00000082 , 0x00005adf 
- 00023259  0x00005d76 beq  0x00000083 , 0x00005ae2 
- 00023260  0x00005d77 rtn 
- 00023261  0x00005d7a jam  0x0000000d , 0x00004456 
- 00023262  0x00005d7b branch  0x00005ae5 
- 00023263  0x00005d7d jam  0x0000000d , 0x00004456 
- 00023264  0x00005d7e jam  0x00000001 , 0x00004454 
- 00023265  0x00005d7f rtn 
- 00023266  0x00005d81 jam  0x0000000d , 0x00004456 
- 00023267  0x00005d82 branch  0x00005aea 
- 00023268  0x00005d84 jam  0x00000000 , 0x00004456 
- 00023269  0x00005d86 jam  0x00000003 , 0x00004454 
- 00023270  0x00005d87 rtn 
- 00023271  0x00005d89 jam  0x00000005 , 0x00004456 
- 00023272  0x00005d8a branch  0x00005ae5 
- 00023273  0x00005d8c jam  0x00000005 , 0x00004456 
- 00023274  0x00005d8e jam  0x00000000 , 0x00004454 
- 00023275  0x00005d8f rtn 
- 00023276  0x00005d93 fetch  0x00000001 , 0x00004456 
- 00023277  0x00005d94 set1  0x00000003 , 0x0000003f 
- 00023278  0x00005d95 store  0x00000001 , 0x00004456 
- 00023279  0x00005d96 rtn 
- 00023280  0x00005d98 fetch  0x00000001 , 0x00004456 
- 00023281  0x00005d99 set0  0x00000003 , 0x0000003f 
- 00023282  0x00005d9a store  0x00000001 , 0x00004456 
- 00023283  0x00005d9b rtn 
- 00023284  0x00005d9e ifetch  0x00000001 , 0x00000006 
- 00023285  0x00005d9f beq  0x00000001 , 0x00005b09 
- 00023286  0x00005da1 beq  0x00000003 , 0x00005b30 
- 00023287  0x00005da2 beq  0x00000004 , 0x00005b4d 
- 00023288  0x00005da3 beq  0x00000005 , 0x00005b5a 
- 00023289  0x00005da4 beq  0x00000006 , 0x00005b80 
- 00023290  0x00005da5 beq  0x00000007 , 0x00005bc4 
- 00023291  0x00005da6 beq  0x00000008 , 0x00005baf 
- 00023292  0x00005da7 beq  0x00000009 , 0x00005bc0 
- 00023293  0x00005da8 beq  0x0000000a , 0x00005bc4 
- 00023294  0x00005da9 beq  0x0000000b , 0x00005bc4 
- 00023295  0x00005daa beq  0x0000000c , 0x00005bc5 
- 00023296  0x00005dab beq  0x0000000d , 0x00005bca 
- 00023297  0x00005dac rtn 
- 00023298  0x00005db1 force  0x00000002 , 0x00000011 
- 00023299  0x00005db2 call  0x00005c62 
- 00023300  0x00005db3 setarg  0x0000000b 
- 00023301  0x00005db4 istore  0x00000001 , 0x00000005 
- 00023302  0x00005db5 fetch  0x00000001 , 0x00004456 
- 00023303  0x00005db6 istore  0x00000001 , 0x00000005 
- 00023304  0x00005db7 rtn 
- 00023305  0x00005dba store  0x00000001 , 0x0000444c 
- 00023306  0x00005dbb ifetch  0x00000006 , 0x00000006 
- 00023307  0x00005dbc istore  0x00000006 , 0x00000005 
- 00023308  0x00005dbd fetch  0x00000001 , 0x000044c6 
- 00023309  0x00005dbe beq  0x00000000 , 0x00005b5f 
- 00023310  0x00005dbf call  0x00005b2b 
- 00023311  0x00005dc0 call  0x00005b26 
- 00023312  0x00005dc1 jam  0x00000003 , 0x000044c4 
- 00023313  0x00005dc2 fetch  0x00000001 , 0x0000444d 
- 00023314  0x00005dc3 beq  0x00000000 , 0x00005b18 
- 00023315  0x00005dc4 beq  0x00000001 , 0x00005b18 
- 00023316  0x00005dc5 beq  0x00000003 , 0x00005b18 
- 00023317  0x00005dc6 fetch  0x00000001 , 0x000044c6 
- 00023318  0x00005dc7 beq  0x00000002 , 0x00005b1b 
- 00023319  0x00005dc8 rtneq  0x00000083 
- 00023320  0x00005dca arg  0x00000000 , 0x0000003f 
- 00023321  0x00005dcb store  0x00000004 , 0x000044c7 
- 00023322  0x00005dcc rtn 
- 00023323  0x00005dcf fetch  0x00000001 , 0x000044e9 
- 00023324  0x00005dd0 bbit1  0x00000000 , 0x00005b24 
- 00023325  0x00005dd2 arg  0x000044c7 , 0x00000011 
- 00023326  0x00005dd3 copy  0x00000011 , 0x00000005 
- 00023327  0x00005dd4 arg  0x00000003 , 0x00000039 
- 00023328  0x00005dd5 call  0x0000630d 
- 00023329  0x00005dd6 fetch  0x00000002 , 0x000044c9 
- 00023330  0x00005dd7 and_into  0x00000007 , 0x0000003f 
- 00023331  0x00005dd8 store  0x00000002 , 0x000044c9 
- 00023332  0x00005dda jam  0x00000034 , 0x00000a99 
- 00023333  0x00005ddb branch  0x00007d86 
- 00023334  0x00005dde fetch  0x00000001 , 0x0000444f 
- 00023335  0x00005ddf rtnbit1  0x00000003 
- 00023336  0x00005de0 fetch  0x00000001 , 0x000044c6 
- 00023337  0x00005de1 rtnbit0  0x00000007 
- 00023338  0x00005de2 branch  0x00003402 
- 00023339  0x00005de5 force  0x00000007 , 0x00000011 
- 00023340  0x00005de6 call  0x00005c62 
- 00023341  0x00005de7 fetch  0x00000007 , 0x00004453 
- 00023342  0x00005de8 istore  0x00000007 , 0x00000005 
- 00023343  0x00005de9 rtn 
- 00023344  0x00005ded copy  0x00000006 , 0x00000011 
- 00023345  0x00005dee fetch  0x00000001 , 0x000044c6 
- 00023346  0x00005def beq  0x00000083 , 0x00005b37 
- 00023347  0x00005df0 copy  0x00000011 , 0x00000006 
- 00023348  0x00005df1 arg  0x0000442a , 0x00000005 
- 00023349  0x00005df2 call  0x00007ebf 
- 00023350  0x00005df3 branch  0x00005b3d 
- 00023351  0x00005df5 copy  0x00000011 , 0x00000006 
- 00023352  0x00005df6 arg  0x0000442a , 0x00000005 
- 00023353  0x00005df7 call  0x00007ebf 
- 00023354  0x00005df8 jam  0x00000002 , 0x000044bf 
- 00023355  0x00005df9 jam  0x00000008 , 0x000044c1 
- 00023356  0x00005dfa rtn 
- 00023357  0x00005dfe fetch  0x00000001 , 0x000044c6 
- 00023358  0x00005dff bbit1  0x00000007 , 0x00005b45 
- 00023359  0x00005e00 call  0x0000739c 
- 00023360  0x00005e01 force  0x00000011 , 0x00000011 
- 00023361  0x00005e02 call  0x00005c62 
- 00023362  0x00005e03 setarg  0x00000003 
- 00023363  0x00005e04 istore  0x00000001 , 0x00000005 
- 00023364  0x00005e05 branch  0x00007497 
- 00023365  0x00005e09 arg  0x0000443a , 0x00000005 
- 00023366  0x00005e0a call  0x0000630c 
- 00023367  0x00005e0b call  0x000071c5 
- 00023368  0x00005e0c force  0x00000011 , 0x00000011 
- 00023369  0x00005e0d call  0x00005c62 
- 00023370  0x00005e0e setarg  0x00000003 
- 00023371  0x00005e0f istore  0x00000001 , 0x00000005 
- 00023372  0x00005e10 branch  0x00007201 
- 00023373  0x00005e15 copy  0x00000006 , 0x00000011 
- 00023374  0x00005e16 fetch  0x00000001 , 0x000044c6 
- 00023375  0x00005e17 bbit1  0x00000007 , 0x00005b61 
- 00023376  0x00005e18 copy  0x00000011 , 0x00000006 
- 00023377  0x00005e19 call  0x00007394 
- 00023378  0x00005e1a branch  0x00005b75 , 0x00000005 
- 00023379  0x00005e1c jam  0x00000004 , 0x0000047b 
- 00023380  0x00005e1e force  0x00000002 , 0x00000011 
- 00023381  0x00005e1f call  0x00005c62 
- 00023382  0x00005e20 setarg  0x00000005 
- 00023383  0x00005e21 istore  0x00000001 , 0x00000005 
- 00023384  0x00005e22 fetch  0x00000001 , 0x0000047b 
- 00023385  0x00005e23 istore  0x00000001 , 0x00000005 
- 00023386  0x00005e25 force  0x0000000a , 0x00000007 
- 00023387  0x00005e26 call  0x00007f07 
- 00023388  0x00005e27 jam  0x00000000 , 0x000044c4 
- 00023389  0x00005e28 jam  0x00000030 , 0x00000a99 
- 00023390  0x00005e29 branch  0x00007d86 
- 00023391  0x00005e2c jam  0x00000005 , 0x0000047b 
- 00023392  0x00005e2d branch  0x00005b54 
- 00023393  0x00005e31 arg  0x0000042f , 0x00000005 
- 00023394  0x00005e32 copy  0x00000011 , 0x00000006 
- 00023395  0x00005e33 call  0x00007ebf 
- 00023396  0x00005e34 fetch  0x00000001 , 0x000044c6 
- 00023397  0x00005e35 beq  0x00000083 , 0x00005b6c 
- 00023398  0x00005e36 call  0x0000714f 
- 00023399  0x00005e39 call  0x00005b7a 
- 00023400  0x00005e3a fetch  0x00000001 , 0x000044c6 
- 00023401  0x00005e3b rtnne  0x00000082 
- 00023402  0x00005e3c jam  0x0000003b , 0x00000a99 
- 00023403  0x00005e3d branch  0x00007d86 
- 00023404  0x00005e40 call  0x000071ba 
- 00023405  0x00005e41 arg  0x00000af2 , 0x00000005 
- 00023406  0x00005e42 call  0x00007201 
- 00023407  0x00005e43 arg  0x00000af2 , 0x00000011 
- 00023408  0x00005e44 arg  0x0000442a , 0x00000012 
- 00023409  0x00005e45 arg  0x00000010 , 0x00000039 
- 00023410  0x00005e46 call  0x00007f88 
- 00023411  0x00005e47 nbranch  0x00005b53 , 0x00000005 
- 00023412  0x00005e48 branch  0x00005b7a 
- 00023413  0x00005e4b call  0x00007390 
- 00023414  0x00005e4c jam  0x00000031 , 0x00000a99 
- 00023415  0x00005e4d call  0x00007d86 
- 00023416  0x00005e4e jam  0x00000001 , 0x00004429 
- 00023417  0x00005e4f jam  0x00000005 , 0x000044c4 
- 00023418  0x00005e52 force  0x00000011 , 0x00000011 
- 00023419  0x00005e53 call  0x00005c62 
- 00023420  0x00005e54 setarg  0x00000004 
- 00023421  0x00005e55 istore  0x00000001 , 0x00000005 
- 00023422  0x00005e56 arg  0x0000443a , 0x00000006 
- 00023423  0x00005e57 branch  0x00007ebf 
- 00023424  0x00005e5a arg  0x0000041f , 0x00000005 
- 00023425  0x00005e5b branch  0x00007ebf 
- 00023426  0x00005e5e force  0x00000011 , 0x00000011 
- 00023427  0x00005e5f call  0x00005c62 
- 00023428  0x00005e60 setarg  0x00000006 
- 00023429  0x00005e61 istore  0x00000001 , 0x00000005 
- 00023430  0x00005e62 fetch  0x00000001 , 0x000044e9 
- 00023431  0x00005e63 bbit1  0x00000001 , 0x00005b8a 
- 00023432  0x00005e64 arg  0x00004419 , 0x00000006 
- 00023433  0x00005e65 branch  0x00007ebf 
- 00023434  0x00005e68 arg  0x000044ea , 0x00000006 
- 00023435  0x00005e69 branch  0x00007ebf 
- 00023436  0x00005e6d arg  0x000044cb , 0x00000005 
- 00023437  0x00005e6e force  0x0000000a , 0x00000039 
- 00023438  0x00005e6f call  0x0000630d 
- 00023439  0x00005e70 force  0x0000000b , 0x00000011 
- 00023440  0x00005e71 call  0x00005c62 
- 00023441  0x00005e72 setarg  0x00000007 
- 00023442  0x00005e73 istore  0x00000001 , 0x00000005 
- 00023443  0x00005e74 fetch  0x00000002 , 0x000044cb 
- 00023444  0x00005e75 istore  0x00000002 , 0x00000005 
- 00023445  0x00005e76 fetch  0x00000008 , 0x000044cd 
- 00023446  0x00005e77 istore  0x00000008 , 0x00000005 
- 00023447  0x00005e78 rtn 
- 00023448  0x00005e7b force  0x00000011 , 0x00000011 
- 00023449  0x00005e7c call  0x00005c62 
- 00023450  0x00005e7d setarg  0x00000008 
- 00023451  0x00005e7e istore  0x00000001 , 0x00000005 
- 00023452  0x00005e7f setarg  0x00000000 
- 00023453  0x00005e80 istore  0x00000008 , 0x00000005 
- 00023454  0x00005e81 istore  0x00000008 , 0x00000005 
- 00023455  0x00005e82 rtn 
- 00023456  0x00005e86 force  0x00000008 , 0x00000011 
- 00023457  0x00005e87 call  0x00005c62 
- 00023458  0x00005e88 setarg  0x00000009 
- 00023459  0x00005e89 istore  0x00000001 , 0x00000005 
- 00023460  0x00005e8a fetch  0x00000001 , 0x00004495 
- 00023461  0x00005e8b istore  0x00000001 , 0x00000005 
- 00023462  0x00005e8c fetch  0x00000006 , 0x000044a0 
- 00023463  0x00005e8d istore  0x00000006 , 0x00000005 
- 00023464  0x00005e8e rtn 
- 00023465  0x00005e92 jam  0x00000008 , 0x0000047b 
- 00023466  0x00005e93 branch  0x00005b54 
- 00023467  0x00005e96 fetch  0x00000001 , 0x00004458 
- 00023468  0x00005e97 fetcht  0x00000001 , 0x00004458 
- 00023469  0x00005e98 iand  0x00000002 , 0x0000003f 
- 00023470  0x00005e99 rtn 
- 00023471  0x00005e9c arg  0x000044d5 , 0x00000005 
- 00023472  0x00005e9d call  0x00007ebf 
- 00023473  0x00005e9e call  0x00005bab 
- 00023474  0x00005e9f isolate0  0x00000001 , 0x0000003f 
- 00023475  0x00005ea0 branch  0x00005ba9 , 0x00000001 
- 00023476  0x00005ea1 fetch  0x00000001 , 0x00004092 
- 00023477  0x00005ea2 rtnne  0x0000000a 
- 00023478  0x00005ea3 call  0x00005bb9 
- 00023479  0x00005ea4 nrtn  0x00000028 
- 00023480  0x00005ea5 branch  0x00003410 
- 00023481  0x00005ea9 call  0x00007fe9 
- 00023482  0x00005eaa fetch  0x00000001 , 0x0000448e 
- 00023483  0x00005eab rtneq  0x00000000 
- 00023484  0x00005eac fetch  0x00000001 , 0x00000454 
- 00023485  0x00005ead compare  0x000000c0 , 0x0000003f , 0x000000c0 
- 00023486  0x00005eae rtn  0x00000001 
- 00023487  0x00005eaf branch  0x00007fe7 
- 00023488  0x00005eb2 call  0x00005bab 
- 00023489  0x00005eb3 isolate0  0x00000001 , 0x0000003f 
- 00023490  0x00005eb4 branch  0x00005ba9 , 0x00000001 
- 00023491  0x00005eb5 rtn 
- 00023492  0x00005eba rtn 
- 00023493  0x00005ebd arg  0x000009be , 0x00000005 
- 00023494  0x00005ebe call  0x00007eb3 
- 00023495  0x00005ebf jam  0x00000002 , 0x000044bf 
- 00023496  0x00005ec0 jam  0x00000001 , 0x000044c1 
- 00023497  0x00005ec1 rtn 
- 00023498  0x00005ec4 arg  0x00000a6e , 0x00000005 
- 00023499  0x00005ec5 call  0x00007ebf 
- 00023500  0x00005ec6 jam  0x00000006 , 0x000044c1 
- 00023501  0x00005ec7 jam  0x00000002 , 0x000044bf 
- 00023502  0x00005ec8 rtn 
- 00023503  0x00005ecb force  0x00000041 , 0x00000011 
- 00023504  0x00005ecc call  0x00005c62 
- 00023505  0x00005ecd setarg  0x0000000c 
- 00023506  0x00005ece istore  0x00000001 , 0x00000005 
- 00023507  0x00005ecf arg  0x000045d2 , 0x00000006 
- 00023508  0x00005ed0 branch  0x00007eb3 
- 00023509  0x00005ed3 call  0x00007166 
- 00023510  0x00005ed4 force  0x00000011 , 0x00000011 
- 00023511  0x00005ed5 call  0x00005c62 
- 00023512  0x00005ed6 setarg  0x0000000d 
- 00023513  0x00005ed7 istore  0x00000001 , 0x00000005 
- 00023514  0x00005ed8 branch  0x00007201 
- 00023515  0x00005edc fetch  0x00000001 , 0x000044c4 
- 00023516  0x00005edd rtneq  0x000000ff 
- 00023517  0x00005ede arg  0x00000003 , 0x00000002 
- 00023518  0x00005edf isub  0x00000002 , 0x0000003e 
- 00023519  0x00005ee0 nrtn  0x00000002 
- 00023520  0x00005ee1 arg  0x0000000a , 0x00000007 
- 00023521  0x00005ee2 call  0x00007f16 
- 00023522  0x00005ee3 nrtn  0x00000034 
- 00023523  0x00005ee4 branch  0x00005ba9 
- 00023524  0x00005ee7 bpatchx  0x00000078 , 0x0000402f 
- 00023525  0x00005ee8 fetch  0x00000001 , 0x000044c4 
- 00023526  0x00005ee9 beq  0x00000000 , 0x00005bef 
- 00023527  0x00005eea beq  0x00000001 , 0x00005bf5 
- 00023528  0x00005eeb beq  0x00000002 , 0x00005bef 
- 00023529  0x00005eec beq  0x00000003 , 0x00005bf7 
- 00023530  0x00005eed beq  0x00000005 , 0x00005bfb 
- 00023531  0x00005eee beq  0x00000007 , 0x00005c07 
- 00023532  0x00005eef beq  0x00000008 , 0x00005c09 
- 00023533  0x00005ef0 beq  0x00000009 , 0x00005c10 
- 00023534  0x00005ef1 rtn 
- 00023535  0x00005ef5 fetch  0x00000001 , 0x000044c5 
- 00023536  0x00005ef6 rtnne  0x00000004 
- 00023537  0x00005ef7 jam  0x000000ff , 0x000044c5 
- 00023538  0x00005ef8 jam  0x000000ff , 0x000044c4 
- 00023539  0x00005ef9 jam  0x0000003f , 0x00000a99 
- 00023540  0x00005efa branch  0x00007d86 
- 00023541  0x00005efe jam  0x00000002 , 0x000044c4 
- 00023542  0x00005eff branch  0x00005b02 
- 00023543  0x00005f02 jam  0x00000004 , 0x000044c4 
- 00023544  0x00005f03 setarg  0x00017700 
- 00023545  0x00005f04 arg  0x0000000a , 0x00000007 
- 00023546  0x00005f05 branch  0x00007f08 
- 00023547  0x00005f08 fetch  0x00000001 , 0x000044c5 
- 00023548  0x00005f09 beq  0x00000004 , 0x00005bfe 
- 00023549  0x00005f0a rtn 
- 00023550  0x00005f0d jam  0x00000007 , 0x000044c4 
- 00023551  0x00005f0e jam  0x00000029 , 0x00000a99 
- 00023552  0x00005f0f call  0x00007d86 
- 00023553  0x00005f10 call  0x00005b82 
- 00023554  0x00005f11 fetch  0x00000001 , 0x00004092 
- 00023555  0x00005f12 rtnne  0x0000000a 
- 00023556  0x00005f13 call  0x00005bb9 
- 00023557  0x00005f14 rtn  0x00000028 
- 00023558  0x00005f15 branch  0x00003410 
- 00023559  0x00005f19 jam  0x00000008 , 0x000044c4 
- 00023560  0x00005f1a branch  0x00005b8c 
- 00023561  0x00005f1d fetch  0x00000001 , 0x00004452 
- 00023562  0x00005f1e fetcht  0x00000001 , 0x00004459 
- 00023563  0x00005f1f iand  0x00000002 , 0x0000003f 
- 00023564  0x00005f20 isolate0  0x00000001 , 0x0000003f 
- 00023565  0x00005f21 branch  0x00005c12 , 0x00000001 
- 00023566  0x00005f22 jam  0x00000009 , 0x000044c4 
- 00023567  0x00005f23 branch  0x00005b98 
- 00023568  0x00005f26 call  0x00005ba0 
- 00023569  0x00005f27 branch  0x00005c12 
- 00023570  0x00005f2b force  0x0000000a , 0x00000007 
- 00023571  0x00005f2c call  0x00007f07 
- 00023572  0x00005f2d jam  0x000000ff , 0x000044c5 
- 00023573  0x00005f2e jam  0x000000ff , 0x000044c4 
- 00023574  0x00005f2f jam  0x0000003e , 0x00000a99 
- 00023575  0x00005f30 branch  0x00007d86 
- 00023576  0x00005f35 bpatchx  0x00000079 , 0x0000402f 
- 00023577  0x00005f36 fetch  0x00000001 , 0x000044c6 
- 00023578  0x00005f37 rtnbit0  0x00000007 
- 00023579  0x00005f38 fetch  0x00000001 , 0x000044bf 
- 00023580  0x00005f39 rtnne  0x00000002 
- 00023581  0x00005f3a jam  0x00000000 , 0x000044bf 
- 00023582  0x00005f3b fetch  0x00000001 , 0x000044c1 
- 00023583  0x00005f3c beq  0x00000001 , 0x00005c58 
- 00023584  0x00005f3d beq  0x00000002 , 0x00005c5f 
- 00023585  0x00005f3e beq  0x00000003 , 0x00005c52 
- 00023586  0x00005f3f beq  0x00000006 , 0x00005c39 
- 00023587  0x00005f40 beq  0x00000007 , 0x00005c30 
- 00023588  0x00005f41 beq  0x00000008 , 0x00005c26 
- 00023589  0x00005f42 rtn 
- 00023590  0x00005f46 fetch  0x00000001 , 0x00004663 
- 00023591  0x00005f47 copy  0x0000003f , 0x00000007 
- 00023592  0x00005f48 increase  0x00000001 , 0x0000003f 
- 00023593  0x00005f49 store  0x00000001 , 0x00004663 
- 00023594  0x00005f4a fetch  0x00000004 , 0x000044c7 
- 00023595  0x00005f4b qisolate1  0x0000003f 
- 00023596  0x00005f4c setarg  0x00000080 
- 00023597  0x00005f4d setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00023598  0x00005f4e store  0x00000001 , 0x00004664 
- 00023599  0x00005f4f branch  0x00005c55 
- 00023600  0x00005f52 fetch  0x00000001 , 0x000044c2 
- 00023601  0x00005f53 jam  0x00000000 , 0x000044c2 
- 00023602  0x00005f54 beq  0x00000001 , 0x00005c35 
- 00023603  0x00005f55 jam  0x00000002 , 0x000044bf 
- 00023604  0x00005f56 rtn 
- 00023605  0x00005f59 jam  0x00000031 , 0x00000a99 
- 00023606  0x00005f5a call  0x00007d86 
- 00023607  0x00005f5b jam  0x00000005 , 0x000044c4 
- 00023608  0x00005f5c branch  0x00005bd5 
- 00023609  0x00005f5f fetch  0x00000001 , 0x000009b9 
- 00023610  0x00005f60 beq  0x00000003 , 0x00005c3d 
- 00023611  0x00005f61 jam  0x00000002 , 0x000044bf 
- 00023612  0x00005f62 rtn 
- 00023613  0x00005f65 call  0x0000718d 
- 00023614  0x00005f69 fetch  0x00000001 , 0x000044c6 
- 00023615  0x00005f6a beq  0x00000083 , 0x00005c41 
- 00023616  0x00005f6b call  0x00005b18 
- 00023617  0x00005f6d call  0x0000717a 
- 00023618  0x00005f6e arg  0x00000af2 , 0x00000011 
- 00023619  0x00005f6f arg  0x00000a6e , 0x00000012 
- 00023620  0x00005f70 arg  0x00000010 , 0x00000039 
- 00023621  0x00005f71 call  0x00007f88 
- 00023622  0x00005f72 branch  0x00005c49 , 0x00000005 
- 00023623  0x00005f74 jam  0x0000000b , 0x0000047b 
- 00023624  0x00005f75 branch  0x00005b54 
- 00023625  0x00005f79 call  0x00007595 
- 00023626  0x00005f7a nbranch  0x00005c47 , 0x00000005 
- 00023627  0x00005f7b jam  0x00000001 , 0x00004429 
- 00023628  0x00005f7c fetch  0x00000001 , 0x000044c6 
- 00023629  0x00005f7d beq  0x00000081 , 0x00005c35 
- 00023630  0x00005f7e beq  0x00000083 , 0x00005c35 
- 00023631  0x00005f7f jam  0x00000002 , 0x000044bf 
- 00023632  0x00005f80 jam  0x00000007 , 0x000044c1 
- 00023633  0x00005f81 rtn 
- 00023634  0x00005f84 fetch  0x00000001 , 0x000044c6 
- 00023635  0x00005f85 beq  0x00000083 , 0x00005c56 
- 00023636  0x00005f86 jam  0x00000000 , 0x00004664 
- 00023637  0x00005f88 branch  0x00005b3d 
- 00023638  0x00005f8e jam  0x00000000 , 0x00004663 
- 00023639  0x00005f8f branch  0x00005b1b 
- 00023640  0x00005f93 jam  0x00000002 , 0x000044bf 
- 00023641  0x00005f94 fetch  0x00000001 , 0x000044c3 
- 00023642  0x00005f95 beq  0x00000003 , 0x00005c5c 
- 00023643  0x00005f97 rtn 
- 00023644  0x00005f9a jam  0x00000002 , 0x000044c1 
- 00023645  0x00005f9b jam  0x00000000 , 0x000009b9 
- 00023646  0x00005f9c branch  0x00007a99 
- 00023647  0x00005f9f jam  0x00000002 , 0x000044bf 
- 00023648  0x00005fa0 jam  0x00000003 , 0x000044c1 
- 00023649  0x00005fa1 branch  0x00005bcf 
- 00023650  0x00005fa6 force  0x00000006 , 0x00000012 
- 00023651  0x00005fa7 branch  0x00005847 
- 00023652  0x00005fac fetch  0x00000001 , 0x000002db 
- 00023653  0x00005fad beq  0x00000000 , 0x00005c7b 
- 00023654  0x00005fae beq  0x00000001 , 0x00005c83 
- 00023655  0x00005faf beq  0x00000002 , 0x00005c8e 
- 00023656  0x00005fb0 beq  0x00000003 , 0x00005caa 
- 00023657  0x00005fb1 beq  0x00000004 , 0x00005ce1 
- 00023658  0x00005fb2 beq  0x00000005 , 0x00005ce6 
- 00023659  0x00005fb3 beq  0x00000006 , 0x00005cea 
- 00023660  0x00005fb4 beq  0x00000007 , 0x00005cf5 
- 00023661  0x00005fb5 beq  0x00000008 , 0x00005c99 
- 00023662  0x00005fb6 beq  0x00000009 , 0x00005cf5 
- 00023663  0x00005fb7 beq  0x0000000a , 0x00005cef 
- 00023664  0x00005fb8 beq  0x0000000b , 0x00005cf5 
- 00023665  0x00005fb9 beq  0x0000000c , 0x00005c9f 
- 00023666  0x00005fba beq  0x0000000d , 0x00005cf5 
- 00023667  0x00005fbb beq  0x00000012 , 0x00005ca6 
- 00023668  0x00005fbc beq  0x00000013 , 0x00005cf5 
- 00023669  0x00005fbd arg  0x00000002 , 0x00000011 
- 00023670  0x00005fbe arg  0x00000007 , 0x00000012 
- 00023671  0x00005fbf call  0x00005842 
- 00023672  0x00005fc0 fetch  0x00000001 , 0x000002db 
- 00023673  0x00005fc1 istore  0x00000001 , 0x00000005 
- 00023674  0x00005fc2 rtn 
- 00023675  0x00005fc6 ifetch  0x00000009 , 0x00000006 
- 00023676  0x00005fc7 store  0x00000009 , 0x000043d3 
- 00023677  0x00005fc8 ifetch  0x00000002 , 0x00000006 
- 00023678  0x00005fc9 store  0x00000002 , 0x0000045f 
- 00023679  0x00005fca fetch  0x00000001 , 0x0000043f 
- 00023680  0x00005fcb set1  0x00000005 , 0x0000003f 
- 00023681  0x00005fcc store  0x00000001 , 0x0000043f 
- 00023682  0x00005fcd rtn 
- 00023683  0x00005fd0 ifetch  0x00000005 , 0x00000006 
- 00023684  0x00005fd1 store  0x00000005 , 0x000043ce 
- 00023685  0x00005fd2 ifetch  0x00000002 , 0x00000006 
- 00023686  0x00005fd3 store  0x00000002 , 0x0000045f 
- 00023687  0x00005fd4 fetcht  0x00000002 , 0x00000459 
- 00023688  0x00005fd5 isub  0x00000002 , 0x0000003e 
- 00023689  0x00005fd6 nbranch  0x00005c8e , 0x00000002 
- 00023690  0x00005fd7 fetch  0x00000001 , 0x0000043f 
- 00023691  0x00005fd8 set1  0x00000006 , 0x0000003f 
- 00023692  0x00005fd9 store  0x00000001 , 0x0000043f 
- 00023693  0x00005fda rtn 
- 00023694  0x00005fde setarg  0x00000014 
- 00023695  0x00005fdf store  0x00000002 , 0x0000046d 
- 00023696  0x00005fe0 store  0x00000002 , 0x000044ba 
- 00023697  0x00005fe1 rtn 
- 00023698  0x00005fe4 arg  0x00000013 , 0x00000013 
- 00023699  0x00005fe8 arg  0x00000002 , 0x00000011 
- 00023700  0x00005fe9 arg  0x00000002 , 0x00000012 
- 00023701  0x00005fea call  0x00005842 
- 00023702  0x00005feb copy  0x00000013 , 0x0000003f 
- 00023703  0x00005fec istore  0x00000001 , 0x00000005 
- 00023704  0x00005fed rtn 
- 00023705  0x00005ff2 arg  0x00000009 , 0x00000011 
- 00023706  0x00005ff3 arg  0x00000009 , 0x00000012 
- 00023707  0x00005ff4 call  0x00005842 
- 00023708  0x00005ff5 setarg  0x00000001 
- 00023709  0x00005ff6 istore  0x00000008 , 0x00000005 
- 00023710  0x00005ff7 rtn 
- 00023711  0x00005ffb rtn  0x00000029 
- 00023712  0x00005ffd arg  0x00000006 , 0x00000011 
- 00023713  0x00005ffe arg  0x0000000c , 0x00000012 
- 00023714  0x00005fff call  0x00005842 
- 00023715  0x00006000 fetch  0x00000005 , 0x00004510 
- 00023716  0x00006001 istore  0x00000005 , 0x00000005 
- 00023717  0x00006002 rtn 
- 00023718  0x00006006 arg  0x00000013 , 0x00000012 
- 00023719  0x00006007 branch  0x00005ca8 
- 00023720  0x0000600b arg  0x00000001 , 0x00000011 
- 00023721  0x0000600c branch  0x00005842 
- 00023722  0x00006010 ifetch  0x00000008 , 0x00000006 
- 00023723  0x00006011 store  0x00000008 , 0x000044cd 
- 00023724  0x00006012 ifetch  0x00000002 , 0x00000006 
- 00023725  0x00006013 store  0x00000002 , 0x000044cb 
- 00023726  0x00006014 ifetch  0x00000008 , 0x00000006 
- 00023727  0x00006015 store  0x00000008 , 0x000044aa 
- 00023728  0x00006016 ifetch  0x00000004 , 0x00000006 
- 00023729  0x00006017 store  0x00000004 , 0x00004411 
- 00023730  0x00006018 call  0x00005ccf 
- 00023731  0x00006019 bpatchx  0x0000007a , 0x0000402f 
- 00023732  0x0000601a fetch  0x00000001 , 0x000044c4 
- 00023733  0x0000601b beq  0x00000005 , 0x00005cbc 
- 00023734  0x0000601c fetch  0x00000001 , 0x000044e9 
- 00023735  0x0000601d bbit1  0x00000001 , 0x00005cbf 
- 00023736  0x0000601e fetch  0x00000001 , 0x00004217 
- 00023737  0x0000601f ncall  0x000067be , 0x00000034 
- 00023738  0x00006020 fetch  0x00000001 , 0x00004429 
- 00023739  0x00006021 beq  0x00000000 , 0x00005cc4 
- 00023740  0x00006023 jam  0x00000001 , 0x000044c5 
- 00023741  0x00006024 call  0x00005cdd 
- 00023742  0x00006025 branch  0x000073a2 
- 00023743  0x00006028 jam  0x00000001 , 0x00004429 
- 00023744  0x00006029 arg  0x000044ea , 0x00000006 
- 00023745  0x0000602a arg  0x00004419 , 0x00000005 
- 00023746  0x0000602b call  0x00007ebf 
- 00023747  0x0000602c branch  0x00005cbc 
- 00023748  0x00006030 bpatchx  0x0000007b , 0x0000402f 
- 00023749  0x00006031 jam  0x00000000 , 0x000044c5 
- 00023750  0x00006032 jam  0x00000000 , 0x000044c4 
- 00023751  0x00006033 jam  0x00000041 , 0x00000a99 
- 00023752  0x00006034 branch  0x00007d86 
- 00023753  0x00006037 arg  0x00000002 , 0x00000011 
- 00023754  0x00006038 arg  0x0000000d , 0x00000012 
- 00023755  0x00006039 call  0x00005842 
- 00023756  0x0000603a setarg  0x00000006 
- 00023757  0x0000603b istore  0x00000001 , 0x00000005 
- 00023758  0x0000603c rtn 
- 00023759  0x0000603f arg  0x000044b2 , 0x00000005 
- 00023760  0x00006040 force  0x00000008 , 0x00000039 
- 00023761  0x00006041 call  0x0000630d 
- 00023762  0x00006042 arg  0x00004415 , 0x00000005 
- 00023763  0x00006043 force  0x00000004 , 0x00000039 
- 00023764  0x00006044 call  0x0000630d 
- 00023765  0x00006045 arg  0x0000000d , 0x00000011 
- 00023766  0x00006046 arg  0x00000004 , 0x00000012 
- 00023767  0x00006047 call  0x00005842 
- 00023768  0x00006048 fetch  0x00000008 , 0x000044b2 
- 00023769  0x00006049 istore  0x00000008 , 0x00000005 
- 00023770  0x0000604a fetch  0x00000004 , 0x00004415 
- 00023771  0x0000604b istore  0x00000004 , 0x00000005 
- 00023772  0x0000604c rtn 
- 00023773  0x0000604f arg  0x00000005 , 0x00000012 
- 00023774  0x00006050 branch  0x00005ca8 
- 00023775  0x00006053 arg  0x00000006 , 0x00000012 
- 00023776  0x00006054 branch  0x00005ca8 
- 00023777  0x00006058 ifetch  0x00000008 , 0x00000006 
- 00023778  0x00006059 store  0x00000008 , 0x000044b2 
- 00023779  0x0000605a ifetch  0x00000004 , 0x00000006 
- 00023780  0x0000605b store  0x00000004 , 0x00004415 
- 00023781  0x0000605c branch  0x000073a2 
- 00023782  0x0000605f fetch  0x00000001 , 0x0000043f 
- 00023783  0x00006060 set1  0x00000004 , 0x0000003f 
- 00023784  0x00006061 store  0x00000001 , 0x0000043f 
- 00023785  0x00006062 rtn 
- 00023786  0x00006065 rtn  0x00000029 
- 00023787  0x00006066 jam  0x00000032 , 0x00000a99 
- 00023788  0x00006067 call  0x00007d86 
- 00023789  0x00006068 jam  0x00000004 , 0x000044c5 
- 00023790  0x00006069 branch  0x00005cdf 
- 00023791  0x0000606c jam  0x00000002 , 0x000044c5 
- 00023792  0x0000606d call  0x00005cf3 
- 00023793  0x0000606e jam  0x00000033 , 0x00000a99 
- 00023794  0x0000606f branch  0x00007d86 
- 00023795  0x00006072 arg  0x0000000b , 0x00000012 
- 00023796  0x00006073 branch  0x00005ca8 
- 00023797  0x0000607b rtn 
- 00023798  0x00006083 rtn  0x0000002b 
- 00023799  0x00006085 bpatchx  0x0000007c , 0x0000402f 
- 00023800  0x00006086 setarg  0x00000000 
- 00023801  0x00006087 store  0x00000001 , 0x00000048 
- 00023802  0x00006088 store  0x00000001 , 0x00000055 
- 00023803  0x00006089 store  0x00000001 , 0x00000078 
- 00023804  0x0000608a store  0x00000001 , 0x0000007c 
- 00023805  0x0000608b store  0x00000001 , 0x00004158 
- 00023806  0x0000608c store  0x00000001 , 0x000004d7 
- 00023807  0x0000608d store  0x00000001 , 0x0000016d 
- 00023808  0x0000608e store  0x00000001 , 0x000009b5 
- 00023809  0x0000608f jam  0x00000000 , 0x0000455b 
- 00023810  0x00006090 jam  0x00000000 , 0x00000229 
- 00023811  0x00006091 jam  0x00000000 , 0x000004d8 
- 00023812  0x00006093 jam  0x00000000 , 0x000009b5 
- 00023813  0x00006094 jam  0x00000000 , 0x000009b4 
- 00023814  0x00006095 jam  0x00000000 , 0x000004d1 
- 00023815  0x00006098 rtn 
- 00023816  0x0000609b bpatchx  0x0000007d , 0x0000402f 
- 00023817  0x0000609c call  0x000062ff , 0x00000029 
- 00023818  0x0000609d ncall  0x00006303 , 0x00000029 
- 00023819  0x0000609e call  0x000062bc 
- 00023820  0x0000609f nrtn  0x00000034 
- 00023821  0x000060a0 fetch  0x00000001 , 0x0000004c 
- 00023822  0x000060a1 rtnbit0  0x00000006 
- 00023823  0x000060a2 set0  0x00000006 , 0x0000003f 
- 00023824  0x000060a3 set0  0x00000001 , 0x00000000 
- 00023825  0x000060a4 store  0x00000001 , 0x0000004c 
- 00023826  0x000060a5 fetch  0x00000001 , 0x00000551 
- 00023827  0x000060a6 fetcht  0x00000001 , 0x0000004c 
- 00023828  0x000060a7 isolate1  0x00000000 , 0x0000003f 
- 00023829  0x000060a8 setflag  0x00000001 , 0x00000001 , 0x00000002 
- 00023830  0x000060a9 storet  0x00000001 , 0x0000004c 
- 00023831  0x000060aa and_into  0x00000002 , 0x00000002 
- 00023832  0x000060ab storet  0x00000001 , 0x0000007f 
- 00023833  0x000060ac fetcht  0x00000001 , 0x0000004c 
- 00023834  0x000060ad rshift  0x0000003f , 0x0000003f 
- 00023835  0x000060ae store  0x00000001 , 0x0000007d 
- 00023836  0x000060af bpatchx  0x0000007e , 0x0000402f 
- 00023837  0x000060b0 fetch  0x00000001 , 0x0000007d 
- 00023838  0x000060b1 beq  0x0000007f , 0x00005d66 
- 00023839  0x000060b2 beq  0x00000003 , 0x00005db1 
- 00023840  0x000060b3 beq  0x00000004 , 0x00005dc2 
- 00023841  0x000060b4 beq  0x0000003c , 0x00005d59 
- 00023842  0x000060b5 beq  0x00000005 , 0x00005d55 
- 00023843  0x000060b6 beq  0x0000000f , 0x00005fa8 
- 00023844  0x000060b7 beq  0x00000010 , 0x00005e24 
- 00023845  0x000060b8 beq  0x00000023 , 0x00005e42 
- 00023846  0x000060b9 beq  0x00000039 , 0x00005fc1 
- 00023847  0x000060ba beq  0x00000038 , 0x00005fbc 
- 00023848  0x000060bb beq  0x00000031 , 0x00005e27 
- 00023849  0x000060bc beq  0x00000037 , 0x00005eb0 
- 00023850  0x000060bd beq  0x00000027 , 0x00005eac 
- 00023851  0x000060be beq  0x00000033 , 0x00005ea9 
- 00023852  0x000060bf beq  0x00000025 , 0x00005eae 
- 00023853  0x000060c0 beq  0x00000026 , 0x00005e3e 
- 00023854  0x000060c1 beq  0x00000007 , 0x00005e36 
- 00023855  0x000060c2 beq  0x0000002d , 0x00005e2d 
- 00023856  0x000060c3 beq  0x0000002e , 0x00005e2e 
- 00023857  0x000060c4 beq  0x00000001 , 0x00005ea5 
- 00023858  0x000060c5 beq  0x00000002 , 0x00005e90 
- 00023859  0x000060c6 beq  0x00000028 , 0x00005fb3 
- 00023860  0x000060c7 beq  0x00000009 , 0x00005e86 
- 00023861  0x000060c8 beq  0x0000000b , 0x00005e5f 
- 00023862  0x000060c9 beq  0x00000008 , 0x00005e43 
- 00023863  0x000060ca beq  0x0000000c , 0x00005e6a 
- 00023864  0x000060cb beq  0x0000001f , 0x00005e3a 
- 00023865  0x000060cc beq  0x00000020 , 0x00005e3c 
- 00023866  0x000060cd beq  0x00000021 , 0x00005eca 
- 00023867  0x000060ce beq  0x00000022 , 0x00005eca 
- 00023868  0x000060cf beq  0x00000035 , 0x00005ecb 
- 00023869  0x000060d0 beq  0x00000036 , 0x00005ecc 
- 00023870  0x000060d1 beq  0x00000024 , 0x00005eca 
- 00023871  0x000060d2 beq  0x00000034 , 0x00005ecd 
- 00023872  0x000060d3 beq  0x00000017 , 0x00005ed6 
- 00023873  0x000060d4 beq  0x00000011 , 0x00005ef2 
- 00023874  0x000060d5 beq  0x00000012 , 0x00005ef6 
- 00023875  0x000060d6 beq  0x00000013 , 0x00005ef8 
- 00023876  0x000060d7 beq  0x0000000d , 0x00005f0a 
- 00023877  0x000060d8 beq  0x0000000e , 0x00005f0a 
- 00023878  0x000060d9 beq  0x0000002f , 0x00005eaa 
- 00023879  0x000060da beq  0x00000030 , 0x00005f0a 
- 00023880  0x000060db beq  0x0000000a , 0x00005f0a 
- 00023881  0x000060dc beq  0x00000018 , 0x00005f0b 
- 00023882  0x000060dd beq  0x00000032 , 0x00005f0a 
- 00023883  0x000060de beq  0x0000003d , 0x00005f10 
- 00023884  0x000060df beq  0x0000003e , 0x00005f51 
- 00023885  0x000060e0 beq  0x0000003f , 0x00005f4b 
- 00023886  0x000060e1 beq  0x00000040 , 0x00005f78 
- 00023887  0x000060e2 beq  0x00000041 , 0x00005f8a 
- 00023888  0x000060e3 beq  0x00000006 , 0x00005fa7 
- 00023889  0x000060e4 beq  0x0000003a , 0x00005d57 
- 00023890  0x000060e8 jam  0x00000019 , 0x0000007e 
- 00023891  0x000060ea jam  0x00000004 , 0x0000007c 
- 00023892  0x000060eb rtn 
- 00023893  0x000060ee jam  0x00000006 , 0x0000007c 
- 00023894  0x000060ef rtn 
- 00023895  0x000060f2 jam  0x0000003b , 0x0000007c 
- 00023896  0x000060f3 rtn 
- 00023897  0x000060f6 fetch  0x00000004 , 0x00000552 
- 00023898  0x000060f7 lshift  0x0000003f , 0x0000003f 
- 00023899  0x000060f8 store  0x00000004 , 0x000040d2 
- 00023900  0x000060f9 fetch  0x00000001 , 0x00000556 
- 00023901  0x000060fa store  0x00000001 , 0x000040d9 
- 00023902  0x000060fb fetch  0x00000005 , 0x00000557 
- 00023903  0x000060fc store  0x00000005 , 0x000040e7 
- 00023904  0x000060fd fetch  0x00000005 , 0x0000055c 
- 00023905  0x000060fe istore  0x00000005 , 0x00000005 
- 00023906  0x000060ff fetch  0x00000001 , 0x00000031 
- 00023907  0x00006100 set1  0x00000003 , 0x0000003f 
- 00023908  0x00006101 store  0x00000001 , 0x00000031 
- 00023909  0x00006102 rtn 
- 00023910  0x00006104 bpatchx  0x0000007f , 0x0000402f 
- 00023911  0x00006105 fetch  0x00000001 , 0x00000552 
- 00023912  0x00006106 set1  0x00000007 , 0x0000003f 
- 00023913  0x00006107 store  0x00000001 , 0x0000007d 
- 00023914  0x00006108 beq  0x00000081 , 0x00005d88 
- 00023915  0x00006109 beq  0x00000082 , 0x00005d8d 
- 00023916  0x0000610a beq  0x00000095 , 0x00005eb1 
- 00023917  0x0000610b beq  0x00000096 , 0x00005eca 
- 00023918  0x0000610c beq  0x0000008b , 0x00005ebf 
- 00023919  0x0000610d beq  0x00000083 , 0x00005da5 
- 00023920  0x0000610e beq  0x00000084 , 0x00005da7 
- 00023921  0x0000610f beq  0x00000090 , 0x00005d7a 
- 00023922  0x00006110 beq  0x00000097 , 0x00005d9e 
- 00023923  0x00006111 beq  0x00000098 , 0x00005da3 
- 00023924  0x00006112 beq  0x00000099 , 0x00005d7d 
- 00023925  0x00006113 beq  0x0000009a , 0x00005d80 
- 00023926  0x00006114 rtneq  0x00000084 
- 00023927  0x00006118 jam  0x00000082 , 0x0000007c 
- 00023928  0x00006119 jam  0x00000019 , 0x0000007e 
- 00023929  0x0000611b rtn 
- 00023930  0x0000611d jam  0x00000082 , 0x0000007c 
- 00023931  0x0000611e jam  0x0000002e , 0x0000007e 
- 00023932  0x0000611f rtn 
- 00023933  0x00006122 call  0x00005d82 
- 00023934  0x00006123 jam  0x0000009a , 0x0000007c 
- 00023935  0x00006124 rtn 
- 00023936  0x00006127 call  0x00005d82 
- 00023937  0x00006128 branch  0x00005d86 
- 00023938  0x0000612b arg  0x0000465e , 0x00000005 
- 00023939  0x0000612c fetch  0x00000003 , 0x00000553 
- 00023940  0x0000612d istore  0x00000003 , 0x00000005 
- 00023941  0x0000612e rtn 
- 00023942  0x00006131 branch  0x000076d8 , 0x00000001 
- 00023943  0x00006132 rtn 
- 00023944  0x00006134 fetch  0x00000001 , 0x00000554 
- 00023945  0x00006135 set1  0x00000007 , 0x0000003f 
- 00023946  0x00006136 store  0x00000001 , 0x000004c9 
- 00023947  0x00006137 beq  0x0000008b , 0x00005d92 
- 00023948  0x00006138 rtn 
- 00023949  0x0000613c fetch  0x00000001 , 0x00000554 
- 00023950  0x0000613d set1  0x00000007 , 0x0000003f 
- 00023951  0x0000613e store  0x00000001 , 0x000004c9 
- 00023952  0x0000613f beq  0x0000008b , 0x00005d96 
- 00023953  0x00006140 rtn 
- 00023954  0x00006143 fetch  0x00000001 , 0x0000415a 
- 00023955  0x00006144 fetcht  0x00000001 , 0x0000004c 
- 00023956  0x00006145 nsetflag  0x00000034 , 0x00000005 , 0x00000002 
- 00023957  0x00006146 storet  0x00000001 , 0x0000004c 
- 00023958  0x00006148 fetch  0x00000001 , 0x00000030 
- 00023959  0x00006149 rtnbit0  0x00000005 
- 00023960  0x0000614a set0  0x00000005 , 0x0000003f 
- 00023961  0x0000614b store  0x00000001 , 0x00000030 
- 00023962  0x0000614c fetch  0x00000001 , 0x000004d7 
- 00023963  0x0000614d nrtn  0x00000034 
- 00023964  0x0000614e jam  0x00000031 , 0x0000007c 
- 00023965  0x0000614f rtn 
- 00023966  0x00006152 nbranch  0x00005da1 , 0x00000029 
- 00023967  0x00006153 jam  0x00000012 , 0x0000007c 
- 00023968  0x00006154 branch  0x000062eb 
- 00023969  0x00006157 jam  0x00000097 , 0x0000007c 
- 00023970  0x00006158 rtn 
- 00023971  0x0000615d call  0x000062eb 
- 00023972  0x0000615e branch  0x00005ffe 
- 00023973  0x00006161 jam  0x00000084 , 0x0000007c 
- 00023974  0x00006162 rtn 
- 00023975  0x00006165 fetcht  0x00000001 , 0x00000555 
- 00023976  0x00006166 and  0x00000002 , 0x00000001 , 0x00000002 
- 00023977  0x00006167 storet  0x00000001 , 0x000004d0 
- 00023978  0x00006168 fetch  0x00000001 , 0x000041ce 
- 00023979  0x00006169 bne  0x00000051 , 0x00005dad 
- 00023980  0x0000616a jam  0x00000000 , 0x000041ce 
- 00023981  0x0000616c fetch  0x00000001 , 0x00000055 
- 00023982  0x0000616d rtnne  0x00000015 
- 00023983  0x0000616e jam  0x00000004 , 0x00000055 
- 00023984  0x0000616f branch  0x0000631b 
- 00023985  0x00006172 bpatchx  0x00000080 , 0x00004030 
- 00023986  0x00006173 fetch  0x00000001 , 0x00000552 
- 00023987  0x00006174 store  0x00000001 , 0x000004c9 
- 00023988  0x00006175 beq  0x00000033 , 0x00005dd8 
- 00023989  0x00006176 beq  0x00000008 , 0x00005de7 
- 00023990  0x00006177 beq  0x0000000f , 0x00005dee 
- 00023991  0x00006178 beq  0x00000010 , 0x00005df4 
- 00023992  0x00006179 beq  0x00000011 , 0x00005df5 
- 00023993  0x0000617a beq  0x00000012 , 0x00005dfd 
- 00023994  0x0000617b beq  0x00000018 , 0x00005e13 
- 00023995  0x0000617c beq  0x00000017 , 0x00005e16 
- 00023996  0x0000617d beq  0x00000013 , 0x00005dcf 
- 00023997  0x0000617f beq  0x0000003d , 0x00005f1e 
- 00023998  0x00006180 beq  0x0000003e , 0x00005f6a 
- 00023999  0x00006181 beq  0x00000040 , 0x00005f20 
- 00024000  0x00006182 beq  0x00000041 , 0x00005f3d 
- 00024001  0x00006183 rtn 
- 00024002  0x00006186 bpatchx  0x00000081 , 0x00004030 
- 00024003  0x00006187 fetch  0x00000001 , 0x00000552 
- 00024004  0x00006188 store  0x00000001 , 0x000004c9 
- 00024005  0x00006189 beq  0x00000001 , 0x00005e0a 
- 00024006  0x0000618a beq  0x00000033 , 0x00005de2 
- 00024007  0x0000618b beq  0x0000000b , 0x00005dfe 
- 00024008  0x0000618c beq  0x00000008 , 0x00005e01 
- 00024009  0x0000618d beq  0x00000013 , 0x00005dd2 
- 00024010  0x0000618f beq  0x00000040 , 0x00005e0b 
- 00024011  0x00006190 beq  0x00000041 , 0x00005e0e 
- 00024012  0x00006191 beq  0x00000018 , 0x00005e11 
- 00024013  0x00006192 beq  0x00000017 , 0x00005e22 
- 00024014  0x00006193 rtn 
- 00024015  0x00006196 jam  0x00000020 , 0x00000a99 
- 00024016  0x00006197 call  0x00007d86 
- 00024017  0x00006198 branch  0x000021dc 
- 00024018  0x0000619a jam  0x00000019 , 0x00000a99 
- 00024019  0x0000619b call  0x00007d86 
- 00024020  0x0000619c jam  0x00000002 , 0x0000455b 
- 00024021  0x0000619d setarg  0x00000050 
- 00024022  0x0000619e arg  0x00000006 , 0x00000007 
- 00024023  0x0000619f branch  0x00007f08 
- 00024024  0x000061a5 fetch  0x00000001 , 0x000004d1 
- 00024025  0x000061a6 set1  0x00000000 , 0x0000003f 
- 00024026  0x000061a7 store  0x00000001 , 0x000004d1 
- 00024027  0x000061a8 jam  0x00000001 , 0x00000a99 
- 00024028  0x000061a9 call  0x00007d86 
- 00024029  0x000061aa jam  0x0000008b , 0x0000007c 
- 00024030  0x000061ae fetch  0x00000001 , 0x00000055 
- 00024031  0x000061af bne  0x00000005 , 0x00005d07 
- 00024032  0x000061b2 jam  0x00000006 , 0x00000055 
- 00024033  0x000061b3 rtn 
- 00024034  0x000061bc jam  0x0000000b , 0x000004ca 
- 00024035  0x000061bd jam  0x00000007 , 0x0000007c 
- 00024036  0x000061bf jam  0x00000000 , 0x00000055 
- 00024037  0x000061c1 branch  0x00005d07 , 0x00000001 
- 00024038  0x000061c2 rtn 
- 00024039  0x000061c5 fetch  0x00000001 , 0x000041bd 
- 00024040  0x000061c6 nrtn  0x00000034 
- 00024041  0x000061c7 call  0x0000244f 
- 00024042  0x000061c8 call  0x00005ffc 
- 00024043  0x000061c9 rtn  0x00000029 
- 00024044  0x000061ca set1  0x00000021 , 0x00000000 
- 00024045  0x000061cb rtn 
- 00024046  0x000061ce nrtn  0x00000029 
- 00024047  0x000061cf jam  0x00000010 , 0x0000007c 
- 00024048  0x000061d0 fetch  0x00000001 , 0x0000004c 
- 00024049  0x000061d1 rtnbit0  0x00000002 
- 00024050  0x000061d2 jam  0x00000012 , 0x0000007c 
- 00024051  0x000061d3 rtn 
- 00024052  0x000061d6 branch  0x00005ffe 
- 00024053  0x000061d9 call  0x00006059 
- 00024054  0x000061da fetch  0x00000001 , 0x00000030 
- 00024055  0x000061db rtnbit1  0x00000004 
- 00024056  0x000061dc jam  0x00000031 , 0x0000007c 
- 00024057  0x000061dd fetch  0x00000001 , 0x00000055 
- 00024058  0x000061de rtnne  0x0000000a 
- 00024059  0x000061df jam  0x0000000b , 0x00000055 
- 00024060  0x000061e0 rtn 
- 00024061  0x000061ea rtn 
- 00024062  0x000061ee jam  0x00000007 , 0x0000007c 
- 00024063  0x000061ef jam  0x00000013 , 0x000004ca 
- 00024064  0x000061f0 rtn 
- 00024065  0x000061f3 fetch  0x00000001 , 0x00000553 
- 00024066  0x000061f4 beq  0x00000006 , 0x00005e07 
- 00024067  0x000061f5 rtnne  0x00000018 
- 00024068  0x000061f6 jam  0x00000018 , 0x000004ca 
- 00024069  0x000061f7 jam  0x00000007 , 0x0000007c 
- 00024070  0x000061f8 rtn 
- 00024071  0x000061fa jam  0x00000006 , 0x000004ca 
- 00024072  0x000061fb jam  0x00000007 , 0x0000007c 
- 00024073  0x000061fc rtn 
- 00024074  0x000061ff rtn 
- 00024075  0x00006202 jam  0x00000000 , 0x000009ae 
- 00024076  0x00006203 jam  0x00000007 , 0x0000007c 
- 00024077  0x00006204 branch  0x00005d07 
- 00024078  0x00006207 jam  0x00000000 , 0x000009ae 
- 00024079  0x00006208 jam  0x00000007 , 0x0000007c 
- 00024080  0x00006209 branch  0x00005d07 
- 00024081  0x0000620b jam  0x00000024 , 0x00000a99 
- 00024082  0x0000620c branch  0x00007d86 
- 00024083  0x0000620f jam  0x00000023 , 0x00000a99 
- 00024084  0x00006210 call  0x00007d86 
- 00024085  0x00006211 branch  0x000026e9 
- 00024086  0x00006214 jam  0x00000022 , 0x00000a99 
- 00024087  0x00006215 call  0x00007d86 
- 00024088  0x00006216 setarg  0x00000000 
- 00024089  0x00006217 store  0x00000002 , 0x00000075 
- 00024090  0x00006218 fetch  0x00000002 , 0x000041e3 
- 00024091  0x00006219 lshift  0x0000003f , 0x0000003f 
- 00024092  0x0000621a store  0x00000002 , 0x00000032 
- 00024093  0x0000621b fetch  0x00000001 , 0x000041e5 
- 00024094  0x0000621c store  0x00000001 , 0x00000073 
- 00024095  0x0000621d fetch  0x00000001 , 0x000041e7 
- 00024096  0x0000621e store  0x00000001 , 0x00000074 
- 00024097  0x0000621f branch  0x000026c6 
- 00024098  0x00006222 jam  0x00000021 , 0x00000a99 
- 00024099  0x00006223 branch  0x00007d86 
- 00024100  0x00006226 fetcht  0x00000001 , 0x00000552 
- 00024101  0x00006227 storet  0x00000001 , 0x00000054 
- 00024102  0x00006228 branch  0x00005e38 
- 00024103  0x0000622b fetch  0x00000001 , 0x000004d1 
- 00024104  0x0000622c set1  0x00000002 , 0x0000003f 
- 00024105  0x0000622d store  0x00000001 , 0x000004d1 
- 00024106  0x0000622e rtnbit1  0x00000003 
- 00024107  0x0000622f jam  0x00000031 , 0x0000007c 
- 00024108  0x00006230 branch  0x00005d07 
- 00024109  0x00006235 rtn 
- 00024110  0x00006238 fetch  0x00000001 , 0x000040d0 
- 00024111  0x00006239 fetcht  0x00000001 , 0x00000552 
- 00024112  0x0000623a isub  0x00000002 , 0x0000003e 
- 00024113  0x0000623c branch  0x00005e38 , 0x00000002 
- 00024114  0x0000623d jam  0x00000004 , 0x0000007c 
- 00024115  0x0000623e jam  0x0000001f , 0x0000007e 
- 00024116  0x0000623f jam  0x0000002e , 0x0000007d 
- 00024117  0x00006240 rtn 
- 00024118  0x00006243 call  0x00006157 
- 00024119  0x00006244 branch  0x00005e38 
- 00024120  0x00006247 jam  0x00000003 , 0x0000007c 
- 00024121  0x00006248 rtn 
- 00024122  0x0000624b jam  0x00000021 , 0x0000007c 
- 00024123  0x0000624c rtn 
- 00024124  0x0000624f jam  0x00000022 , 0x0000007c 
- 00024125  0x00006250 rtn 
- 00024126  0x00006253 fetch  0x00000001 , 0x00000055 
- 00024127  0x00006254 rtneq  0x00000013 
- 00024128  0x00006256 jam  0x00000002 , 0x00000055 
- 00024129  0x00006258 rtn 
- 00024130  0x0000625c rtn 
- 00024131  0x0000625f call  0x00005ff9 
- 00024132  0x00006260 jam  0x00000001 , 0x000004d4 
- 00024133  0x00006261 jam  0x0000000a , 0x00000a99 
- 00024134  0x00006262 call  0x00007d86 
- 00024135  0x00006264 call  0x000062f3 
- 00024136  0x00006265 nbranch  0x00006001 , 0x00000001 
- 00024137  0x00006267 nbranch  0x00005e4e , 0x00000029 
- 00024138  0x00006268 jam  0x00000004 , 0x0000007c 
- 00024139  0x00006269 jam  0x00000008 , 0x0000007d 
- 00024140  0x0000626a jam  0x00000023 , 0x0000007e 
- 00024141  0x0000626b rtn 
- 00024142  0x0000626d fetch  0x00000001 , 0x0000004b 
- 00024143  0x0000626e set1  0x00000002 , 0x0000003f 
- 00024144  0x0000626f store  0x00000001 , 0x0000004b 
- 00024145  0x00006270 rtn 
- 00024146  0x00006274 fetcht  0x00000001 , 0x0000004c 
- 00024147  0x00006275 nsetflag  0x00000034 , 0x00000001 , 0x00000002 
- 00024148  0x00006276 storet  0x00000001 , 0x0000004c 
- 00024149  0x00006277 rtn 
- 00024150  0x0000627b fetch  0x00000001 , 0x0000007f 
- 00024151  0x0000627c rshift  0x0000003f , 0x0000003f 
- 00024152  0x0000627d and_into  0x00000001 , 0x0000003f 
- 00024153  0x0000627e rtn 
- 00024154  0x00006281 fetch  0x00000001 , 0x00004217 
- 00024155  0x00006282 rtn  0x00000034 
- 00024156  0x00006283 fetch  0x00000001 , 0x000009b5 
- 00024157  0x00006284 call  0x000067b2 , 0x00000034 
- 00024158  0x00006285 rtn 
- 00024159  0x00006288 call  0x00005e5a 
- 00024160  0x00006289 call  0x00005e56 
- 00024161  0x0000628a store  0x00000001 , 0x000004d5 
- 00024162  0x0000628b call  0x00005ff9 
- 00024163  0x0000628c jam  0x0000000c , 0x0000007c 
- 00024164  0x0000628d fetch  0x00000001 , 0x000041bd 
- 00024165  0x0000628e nrtn  0x00000034 
- 00024166  0x0000628f fetch  0x00000001 , 0x00000030 
- 00024167  0x00006290 rtnbit1  0x00000006 
- 00024168  0x00006291 jam  0x00000006 , 0x0000007e 
- 00024169  0x00006292 branch  0x00005d53 
- 00024170  0x00006295 arg  0x00000040 , 0x00000011 
- 00024171  0x00006296 call  0x00007288 
- 00024172  0x00006297 fetch  0x00000004 , 0x00000552 
- 00024173  0x00006298 fetcht  0x00000004 , 0x00000592 
- 00024174  0x00006299 isub  0x00000002 , 0x0000003e 
- 00024175  0x0000629a branch  0x00005e73 , 0x00000005 
- 00024176  0x0000629b jam  0x00000007 , 0x0000007c 
- 00024177  0x0000629c jam  0x00000005 , 0x000004ca 
- 00024178  0x0000629d rtn 
- 00024179  0x0000629f call  0x00005e77 
- 00024180  0x000062a0 fetch  0x00000001 , 0x0000465a 
- 00024181  0x000062a1 branch  0x00005f3e , 0x00000034 
- 00024182  0x000062a2 rtn 
- 00024183  0x000062a6 call  0x00007386 
- 00024184  0x000062a7 call  0x000021b2 
- 00024185  0x000062a8 fetch  0x00000001 , 0x0000004b 
- 00024186  0x000062a9 isolate1  0x00000001 , 0x0000003f 
- 00024187  0x000062aa set0  0x00000001 , 0x0000003f 
- 00024188  0x000062ab store  0x00000001 , 0x0000004b 
- 00024189  0x000062ac fetch  0x00000001 , 0x00000055 
- 00024190  0x000062ad beq  0x00000019 , 0x00005e81 
- 00024191  0x000062ae beq  0x00000018 , 0x00005e81 
- 00024192  0x000062af rtn 
- 00024193  0x000062b1 fetch  0x00000001 , 0x000009b5 
- 00024194  0x000062b2 rtnne  0x00000000 
- 00024195  0x000062b3 fetch  0x00000001 , 0x0000004c 
- 00024196  0x000062b4 rtnbit1  0x00000002 
- 00024197  0x000062b5 branch  0x000063b1 
- 00024198  0x000062b8 arg  0x00000552 , 0x00000011 
- 00024199  0x000062b9 arg  0x00000582 , 0x00000012 
- 00024200  0x000062ba arg  0x00000562 , 0x00000005 
- 00024201  0x000062bb call  0x00007352 
- 00024202  0x000062bc arg  0x00000040 , 0x00000011 
- 00024203  0x000062bd call  0x00006311 
- 00024204  0x000062be jam  0x0000000b , 0x0000007c 
- 00024205  0x000062bf fetch  0x00000001 , 0x00000030 
- 00024206  0x000062c0 bbit0  0x00000006 , 0x00005ffc 
- 00024207  0x000062c1 rtn 
- 00024208  0x000062c4 fetch  0x00000002 , 0x0000015f 
- 00024209  0x000062c5 add  0x0000003f , 0xfffffffd , 0x00000039 
- 00024210  0x000062c6 fetcht  0x00000001 , 0x00000552 
- 00024211  0x000062c7 setarg  0x00000101 
- 00024212  0x000062c8 iadd  0x00000002 , 0x00000005 
- 00024213  0x000062c9 arg  0x00000554 , 0x00000006 
- 00024214  0x000062ca call  0x00007f01 
- 00024215  0x000062cb fetcht  0x00000001 , 0x00000053 
- 00024216  0x000062cc fetch  0x00000001 , 0x00000553 
- 00024217  0x000062cd isub  0x00000002 , 0x0000003f 
- 00024218  0x000062ce sub  0x0000003f , 0x0000000e , 0x0000003e 
- 00024219  0x000062cf branch  0x00005ea0 , 0x00000002 
- 00024220  0x000062d0 add  0x00000002 , 0x0000000e , 0x0000003f 
- 00024221  0x000062d1 store  0x00000001 , 0x00000053 
- 00024222  0x000062d2 jam  0x00000001 , 0x0000007c 
- 00024223  0x000062d3 rtn 
- 00024224  0x000062d5 fetch  0x00000001 , 0x0000004c 
- 00024225  0x000062d6 set1  0x00000003 , 0x0000003f 
- 00024226  0x000062d7 store  0x00000001 , 0x0000004c 
- 00024227  0x000062d8 bbit1  0x00000004 , 0x00006006 
- 00024228  0x000062d9 rtn 
- 00024229  0x000062db fetch  0x00000001 , 0x00000552 
- 00024230  0x000062dc store  0x00000001 , 0x0000007d 
- 00024231  0x000062dd jam  0x00000002 , 0x0000007c 
- 00024232  0x000062de rtn 
- 00024233  0x000062e1 branch  0x00005e38 
- 00024234  0x000062e4 jam  0x00000030 , 0x0000007c 
- 00024235  0x000062e5 rtn 
- 00024236  0x000062e8 jam  0x00000028 , 0x0000007c 
- 00024237  0x000062e9 rtn 
- 00024238  0x000062ec jam  0x00000026 , 0x0000007c 
- 00024239  0x000062ed rtn 
- 00024240  0x000062f2 rtn 
- 00024241  0x000062f7 fetch  0x00000002 , 0x00000032 
- 00024242  0x000062f8 iforce  0x00000002 
- 00024243  0x000062f9 fetch  0x00000001 , 0x00000553 
- 00024244  0x000062fa store  0x00000001 , 0x00000095 
- 00024245  0x000062fb imul32  0x00000002 , 0x00000002 
- 00024246  0x000062fc fetch  0x00000002 , 0x00000554 
- 00024247  0x000062fd lshift  0x0000003f , 0x0000003f 
- 00024248  0x000062fe store  0x00000002 , 0x00000096 
- 00024249  0x000062ff fetch  0x00000004 , 0x00000556 
- 00024250  0x00006300 lshift  0x0000003f , 0x0000003f 
- 00024251  0x00006301 store  0x00000004 , 0x00000091 
- 00024252  0x00006303 deposit  0x00000002 
- 00024253  0x00006304 store  0x00000002 , 0x00000098 
- 00024254  0x00006305 rtn 
- 00024255  0x00006307 fetcht  0x00000001 , 0x0000415a 
- 00024256  0x00006308 fetch  0x00000001 , 0x00000553 
- 00024257  0x00006309 ixor  0x00000002 , 0x0000003e 
- 00024258  0x0000630a nbranch  0x00005d77 , 0x00000005 
- 00024259  0x0000630b isolate1  0x00000000 , 0x0000003f 
- 00024260  0x0000630c fetch  0x00000001 , 0x0000004c 
- 00024261  0x0000630d setflag  0x00000001 , 0x00000005 , 0x0000003f 
- 00024262  0x0000630e store  0x00000001 , 0x0000004c 
- 00024263  0x0000630f jam  0x00000081 , 0x0000007c 
- 00024264  0x00006310 jam  0x0000008b , 0x0000007d 
- 00024265  0x00006311 rtn 
- 00024266  0x00006318 rtn 
- 00024267  0x0000631b branch  0x00005e38 
- 00024268  0x0000631f branch  0x00005e38 
- 00024269  0x00006324 fetch  0x00000002 , 0x00000552 
- 00024270  0x00006325 store  0x00000002 , 0x00000171 
- 00024271  0x00006326 rtn 
- 00024272  0x00006329 fetch  0x00000002 , 0x00000555 
- 00024273  0x0000632a fetcht  0x00000001 , 0x00004172 
- 00024274  0x0000632b imul32  0x00000002 , 0x0000003f 
- 00024275  0x0000632c arg  0x00000640 , 0x00000002 
- 00024276  0x0000632d isub  0x00000002 , 0x0000003e 
- 00024277  0x0000632f rtn 
- 00024278  0x00006332 fetch  0x00000002 , 0x00000557 
- 00024279  0x00006333 branch  0x00005ef0 , 0x00000034 
- 00024280  0x00006334 call  0x00005ed0 
- 00024281  0x00006335 branch  0x00005ef0 , 0x00000002 
- 00024282  0x00006336 fetch  0x00000001 , 0x00004092 
- 00024283  0x00006337 sub  0x0000003f , 0x0000000a , 0x0000003e 
- 00024284  0x00006338 call  0x00003cd5 , 0x00000005 
- 00024285  0x00006339 fetch  0x00000001 , 0x00000030 
- 00024286  0x0000633a bbit1  0x00000001 , 0x00005ef0 
- 00024287  0x0000633b fetch  0x00000002 , 0x00000553 
- 00024288  0x0000633c lshift  0x0000003f , 0x0000003f 
- 00024289  0x0000633d store  0x00000002 , 0x00000075 
- 00024290  0x0000633e fetch  0x00000002 , 0x00000555 
- 00024291  0x0000633f lshift  0x0000003f , 0x0000003f 
- 00024292  0x00006340 store  0x00000002 , 0x00000032 
- 00024293  0x00006341 fetch  0x00000002 , 0x00000557 
- 00024294  0x00006342 store  0x00000001 , 0x00000073 
- 00024295  0x00006343 iforce  0x00000002 
- 00024296  0x00006344 fetch  0x00000002 , 0x00000559 
- 00024297  0x00006345 store  0x00000001 , 0x00000074 
- 00024298  0x00006346 isub  0x00000002 , 0x0000003e 
- 00024299  0x00006347 nbranch  0x00005eed , 0x00000002 
- 00024300  0x00006348 store  0x00000001 , 0x00000073 
- 00024301  0x0000634b jam  0x00000003 , 0x0000007c 
- 00024302  0x0000634c jam  0x00000017 , 0x0000007d 
- 00024303  0x0000634d rtn 
- 00024304  0x00006350 jam  0x00000024 , 0x0000007e 
- 00024305  0x00006351 branch  0x00005d53 
- 00024306  0x00006354 call  0x00005e38 
- 00024307  0x00006355 call  0x00005ff9 
- 00024308  0x00006356 call  0x0000728b 
- 00024309  0x00006357 branch  0x000026b8 
- 00024310  0x0000635a call  0x00005e38 
- 00024311  0x0000635b branch  0x000026c0 
- 00024312  0x0000635f fetch  0x00000004 , 0x00000552 
- 00024313  0x00006360 lshift  0x0000003f , 0x0000003f 
- 00024314  0x00006362 branch  0x00005f04 , 0x00000029 
- 00024315  0x00006363 fetcht  0x00000001 , 0x000041bd 
- 00024316  0x00006364 nbranch  0x00005f01 , 0x00000034 
- 00024317  0x00006366 jam  0x00000004 , 0x0000007c 
- 00024318  0x00006367 jam  0x00000013 , 0x0000007d 
- 00024319  0x00006368 jam  0x00000024 , 0x0000007e 
- 00024320  0x00006369 rtn 
- 00024321  0x0000636b jam  0x00000034 , 0x0000007c 
- 00024322  0x0000636c jam  0x00000000 , 0x00000055 
- 00024323  0x0000636d branch  0x000021d9 
- 00024324  0x00006370 call  0x000021d9 
- 00024325  0x00006371 set1  0x00000022 , 0x00000000 
- 00024326  0x00006372 fetch  0x00000001 , 0x0000016d 
- 00024327  0x00006373 set0  0x00000002 , 0x0000003f 
- 00024328  0x00006374 store  0x00000001 , 0x0000016d 
- 00024329  0x00006375 branch  0x00005e38 
- 00024330  0x0000637e rtn 
- 00024331  0x00006382 jam  0x00000003 , 0x0000007c 
- 00024332  0x00006383 jam  0x00000018 , 0x0000007d 
- 00024333  0x00006384 jam  0x0000002e , 0x00000a99 
- 00024334  0x00006385 call  0x00007d86 
- 00024335  0x00006386 branch  0x000026e9 
- 00024336  0x00006389 fetch  0x00000001 , 0x00000552 
- 00024337  0x0000638a bne  0x00000001 , 0x00005f1c 
- 00024338  0x0000638b fetch  0x00000001 , 0x00000553 
- 00024339  0x0000638c bne  0x00000001 , 0x00005f1c 
- 00024340  0x0000638d fetch  0x00000001 , 0x00000554 
- 00024341  0x0000638e bne  0x00000030 , 0x00005f1c 
- 00024342  0x0000638f call  0x000062fc 
- 00024343  0x00006390 branch  0x00005f19 , 0x00000001 
- 00024344  0x00006391 jam  0x00000001 , 0x000009ae 
- 00024345  0x00006393 jam  0x00000003 , 0x0000007c 
- 00024346  0x00006394 jam  0x0000003d , 0x0000007d 
- 00024347  0x00006395 branch  0x00005d07 
- 00024348  0x00006398 jam  0x00000024 , 0x0000007e 
- 00024349  0x00006399 branch  0x00005d53 
- 00024350  0x0000639e jam  0x0000003e , 0x0000007c 
- 00024351  0x000063a0 rtn 
- 00024352  0x000063a2 fetch  0x00000001 , 0x00004662 
- 00024353  0x000063a3 beq  0x00000001 , 0x00005f27 
- 00024354  0x000063a4 beq  0x00000002 , 0x00005f2b 
- 00024355  0x000063a6 call  0x000062fc 
- 00024356  0x000063a7 rtn  0x00000001 
- 00024357  0x000063a8 jam  0x00000008 , 0x000009ae 
- 00024358  0x000063a9 rtn 
- 00024359  0x000063ac call  0x00007962 
- 00024360  0x000063ad jam  0x00000035 , 0x00000a99 
- 00024361  0x000063ae call  0x00007d86 
- 00024362  0x000063af branch  0x00005f23 
- 00024363  0x000063b3 call  0x000062fc 
- 00024364  0x000063b4 rtn  0x00000001 
- 00024365  0x000063b5 fetch  0x00000001 , 0x00004663 
- 00024366  0x000063b6 beq  0x00000013 , 0x00005f3b 
- 00024367  0x000063b7 increase  0x00000001 , 0x0000003f 
- 00024368  0x000063b8 store  0x00000001 , 0x00004663 
- 00024369  0x000063bc jam  0x00000001 , 0x000009b0 
- 00024370  0x000063bd jam  0x00000004 , 0x000009ae 
- 00024371  0x000063be fetch  0x00000001 , 0x00004663 
- 00024372  0x000063bf copy  0x0000003f , 0x00000007 
- 00024373  0x000063c0 fetch  0x00000006 , 0x0000468a 
- 00024374  0x000063c1 qisolate1  0x0000003f 
- 00024375  0x000063c2 setarg  0x00000080 
- 00024376  0x000063c3 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00024377  0x000063c4 store  0x00000001 , 0x00004664 
- 00024378  0x000063c5 rtn 
- 00024379  0x000063c8 jam  0x00000008 , 0x000009ae 
- 00024380  0x000063c9 rtn 
- 00024381  0x000063cc call  0x00005f43 
- 00024382  0x000063ce fetch  0x00000001 , 0x00004665 
- 00024383  0x000063cf rtn  0x00000034 
- 00024384  0x000063d0 jam  0x00000000 , 0x00004665 
- 00024385  0x000063d1 jam  0x00000038 , 0x00000a99 
- 00024386  0x000063d2 branch  0x00007d86 
- 00024387  0x000063d7 call  0x000062fc 
- 00024388  0x000063d8 ncall  0x00007965 , 0x00000001 
- 00024389  0x000063d9 call  0x00007975 , 0x00000001 
- 00024390  0x000063da call  0x000062fc 
- 00024391  0x000063db rtn  0x00000001 
- 00024392  0x000063dc jam  0x0000000c , 0x000009ae 
- 00024393  0x000063dd jam  0x00000001 , 0x000009b0 
- 00024394  0x000063de rtn 
- 00024395  0x000063e1 arg  0x00000a6e , 0x00000005 
- 00024396  0x000063e2 arg  0x00000552 , 0x00000006 
- 00024397  0x000063e3 call  0x00007ebf 
- 00024398  0x000063e4 fetch  0x00000001 , 0x00004662 
- 00024399  0x000063e5 rtneq  0x00000002 
- 00024400  0x000063e6 branch  0x000076d8 
- 00024401  0x000063e9 fetch  0x00000001 , 0x000009af 
- 00024402  0x000063ea beq  0x00000007 , 0x00005f55 
- 00024403  0x000063eb fetch  0x00000001 , 0x000009ae 
- 00024404  0x000063ec bne  0x00000001 , 0x00005f68 
- 00024405  0x000063ee fetch  0x00000001 , 0x000009b7 
- 00024406  0x000063ef sub  0x0000003f , 0x00000020 , 0x00000005 
- 00024407  0x000063f0 nbranch  0x00005f68 , 0x00000002 
- 00024408  0x000063f1 arg  0x000009c6 , 0x00000005 
- 00024409  0x000063f2 iadd  0x00000005 , 0x00000005 
- 00024410  0x000063f3 fetch  0x00000008 , 0x00000552 
- 00024411  0x000063f4 istore  0x00000008 , 0x00000005 
- 00024412  0x000063f5 fetch  0x00000008 , 0x0000055a 
- 00024413  0x000063f6 istore  0x00000008 , 0x00000005 
- 00024414  0x000063f7 fetch  0x00000001 , 0x000009b7 
- 00024415  0x000063f8 increase  0x00000010 , 0x0000003f 
- 00024416  0x000063f9 store  0x00000001 , 0x000009b7 
- 00024417  0x000063fa bne  0x00000030 , 0x00005e38 
- 00024418  0x000063fc call  0x000062fc 
- 00024419  0x000063fd branch  0x00005e38 , 0x00000001 
- 00024420  0x000063fe jam  0x00000001 , 0x000009b8 
- 00024421  0x000063ff jam  0x00000002 , 0x000009ae 
- 00024422  0x00006400 jam  0x00000001 , 0x000009b0 
- 00024423  0x00006401 branch  0x00005e38 
- 00024424  0x00006403 jam  0x00000024 , 0x0000007e 
- 00024425  0x00006404 branch  0x00005d53 
- 00024426  0x00006406 fetch  0x00000001 , 0x000009b6 
- 00024427  0x00006407 beq  0x00000030 , 0x00005f6e 
- 00024428  0x00006408 jam  0x0000003e , 0x0000007c 
- 00024429  0x00006409 branch  0x00005d07 
- 00024430  0x0000640c call  0x000062fc 
- 00024431  0x0000640d branch  0x00005f77 , 0x00000001 
- 00024432  0x0000640e fetch  0x00000001 , 0x00004662 
- 00024433  0x0000640f beq  0x00000002 , 0x00005f75 
- 00024434  0x00006410 jam  0x00000001 , 0x000009b0 
- 00024435  0x00006411 jam  0x00000004 , 0x000009ae 
- 00024436  0x00006412 branch  0x00005d07 
- 00024437  0x00006415 jam  0x00000036 , 0x00000a99 
- 00024438  0x00006416 branch  0x00007d86 
- 00024439  0x0000641b branch  0x00005d07 
- 00024440  0x0000641e fetch  0x00000001 , 0x000009af 
- 00024441  0x0000641f beq  0x00000007 , 0x00005f7c 
- 00024442  0x00006420 fetch  0x00000001 , 0x000009ae 
- 00024443  0x00006421 bne  0x00000006 , 0x00005f88 
- 00024444  0x00006423 arg  0x00000a2e , 0x00000005 
- 00024445  0x00006424 fetch  0x00000008 , 0x00000552 
- 00024446  0x00006425 istore  0x00000008 , 0x00000005 
- 00024447  0x00006426 fetch  0x00000008 , 0x0000055a 
- 00024448  0x00006427 istore  0x00000008 , 0x00000005 
- 00024449  0x00006428 call  0x000062fc 
- 00024450  0x00006429 branch  0x00005f86 , 0x00000001 
- 00024451  0x0000642a jam  0x00000007 , 0x000009ae 
- 00024452  0x0000642b jam  0x00000001 , 0x000009b0 
- 00024453  0x0000642c branch  0x00005e38 
- 00024454  0x0000642e jam  0x00000004 , 0x000009af 
- 00024455  0x0000642f branch  0x000076d8 
- 00024456  0x00006433 jam  0x00000024 , 0x0000007e 
- 00024457  0x00006434 branch  0x00005d53 
- 00024458  0x00006437 fetch  0x00000001 , 0x000009af 
- 00024459  0x00006438 beq  0x0000000b , 0x00005f8e 
- 00024460  0x00006439 fetch  0x00000001 , 0x000009ae 
- 00024461  0x0000643a bne  0x00000008 , 0x00005f9d 
- 00024462  0x0000643c arg  0x00000a5e , 0x00000005 
- 00024463  0x0000643d arg  0x00000552 , 0x00000006 
- 00024464  0x0000643e call  0x00007ebf 
- 00024465  0x0000643f call  0x000062fc 
- 00024466  0x00006440 branch  0x00005f9a , 0x00000001 
- 00024467  0x00006441 fetch  0x00000001 , 0x00004662 
- 00024468  0x00006442 beq  0x00000001 , 0x00005f9f 
- 00024469  0x00006444 jam  0x00000000 , 0x00004661 
- 00024470  0x00006445 jam  0x00000009 , 0x000009ae 
- 00024471  0x00006446 jam  0x00000001 , 0x000009b0 
- 00024472  0x00006447 jam  0x00000041 , 0x0000007d 
- 00024473  0x00006448 branch  0x00005d07 
- 00024474  0x0000644b jam  0x00000009 , 0x000009af 
- 00024475  0x0000644c jam  0x00000001 , 0x000009b1 
- 00024476  0x0000644d branch  0x00005d07 
- 00024477  0x0000644f jam  0x00000024 , 0x0000007e 
- 00024478  0x00006450 branch  0x00005d53 
- 00024479  0x00006453 fetch  0x00000001 , 0x00004661 
- 00024480  0x00006454 bbit1  0x00000007 , 0x00005fa4 
- 00024481  0x00006455 set1  0x00000006 , 0x0000003f 
- 00024482  0x00006456 store  0x00000001 , 0x00004661 
- 00024483  0x00006457 rtn 
- 00024484  0x0000645a bbit1  0x00000000 , 0x00005f95 
- 00024485  0x0000645b jam  0x00000000 , 0x00004661 
- 00024486  0x0000645c branch  0x00005f9d 
- 00024487  0x00006460 branch  0x00005d07 
- 00024488  0x00006463 fetch  0x00000001 , 0x0000016d 
- 00024489  0x00006464 set0  0x00000001 
- 00024490  0x00006465 store  0x00000001 , 0x0000016d 
- 00024491  0x00006466 call  0x00005e38 
- 00024492  0x00006467 nrtn  0x00000029 
- 00024493  0x00006468 fetch  0x00000001 , 0x00000552 
- 00024494  0x00006469 fetcht  0x00000001 , 0x0000004b 
- 00024495  0x0000646a setflag  0x00000034 , 0x00000004 , 0x00000002 
- 00024496  0x0000646b nsetflag  0x00000034 , 0x00000005 , 0x00000002 
- 00024497  0x0000646c storet  0x00000001 , 0x0000004b 
- 00024498  0x0000646d rtn 
- 00024499  0x00006470 fetcht  0x00000008 , 0x00000552 
- 00024500  0x00006472 fetch  0x00000001 , 0x00000055 
- 00024501  0x00006473 rtnne  0x00000003 
- 00024502  0x00006475 fetch  0x00000001 , 0x0000016d 
- 00024503  0x00006476 bbit0  0x00000004 , 0x00005fba 
- 00024504  0x00006478 jam  0x00000014 , 0x00000055 
- 00024505  0x00006479 rtn 
- 00024506  0x0000647b jam  0x00000004 , 0x00000055 
- 00024507  0x0000647c rtn 
- 00024508  0x0000647e fetch  0x00000001 , 0x0000017f 
- 00024509  0x0000647f store  0x00000001 , 0x0000015b 
- 00024510  0x00006480 jam  0x00000003 , 0x0000007c 
- 00024511  0x00006481 jam  0x00000038 , 0x0000007d 
- 00024512  0x00006482 rtn 
- 00024513  0x00006486 jam  0x00000003 , 0x0000007c 
- 00024514  0x00006487 jam  0x00000039 , 0x0000007d 
- 00024515  0x00006488 force  0x00000009 , 0x00000039 
- 00024516  0x00006489 arg  0x00000552 , 0x00000006 
- 00024517  0x0000648a arg  0x00000152 , 0x00000005 
- 00024518  0x0000648c ifetch  0x00000001 , 0x00000006 
- 00024519  0x0000648d xor_into  0x00000055 , 0x0000003f 
- 00024520  0x0000648e istore  0x00000001 , 0x00000005 
- 00024521  0x0000648f loop  0x00005fc6 
- 00024522  0x00006490 fetch  0x00000001 , 0x00000152 
- 00024523  0x00006491 fetcht  0x00000001 , 0x00000151 
- 00024524  0x00006492 set0  0x00000007 , 0x00000002 
- 00024525  0x00006493 set0  0x00000004 , 0x00000002 
- 00024526  0x00006494 beq  0x000000ff , 0x00005fda 
- 00024527  0x00006495 beq  0x00000000 , 0x00005ff3 
- 00024528  0x00006496 beq  0x00000005 , 0x00005fe7 
- 00024529  0x00006497 beq  0x00000007 , 0x00005fe6 
- 00024530  0x00006498 beq  0x00000006 , 0x00005fe7 
- 00024531  0x00006499 beq  0x00000008 , 0x00005fe6 
- 00024532  0x0000649a beq  0x00000001 , 0x00005fdf 
- 00024533  0x0000649b beq  0x00000002 , 0x00005fdf 
- 00024534  0x0000649c beq  0x00000003 , 0x00005fdf 
- 00024535  0x0000649d beq  0x00000009 , 0x00005fdf 
- 00024536  0x0000649e beq  0x00000004 , 0x00005fdf 
- 00024537  0x0000649f rtn 
- 00024538  0x000064a2 fetch  0x00000001 , 0x00000151 
- 00024539  0x000064a3 set1  0x00000003 , 0x0000003f 
- 00024540  0x000064a4 set1  0x00000002 , 0x0000003f 
- 00024541  0x000064a5 store  0x00000001 , 0x00000151 
- 00024542  0x000064a6 rtn 
- 00024543  0x000064a8 set1  0x00000004 , 0x00000002 
- 00024544  0x000064a9 jam  0x00000005 , 0x00000180 
- 00024545  0x000064aa fetch  0x00000002 , 0x00000159 
- 00024546  0x000064ab iforce  0x00000039 
- 00024547  0x000064ac store  0x00000002 , 0x0000015f 
- 00024548  0x000064ad arg  0x00000551 , 0x00000005 
- 00024549  0x000064ae call  0x00007f73 
- 00024550  0x000064b0 set1  0x00000007 , 0x00000002 
- 00024551  0x000064b2 set1  0x00000002 , 0x00000002 
- 00024552  0x000064b3 force  0x00000000 , 0x0000003f 
- 00024553  0x000064b4 store  0x00000001 , 0x0000000b 
- 00024554  0x000064b5 store  0x00000002 , 0x000000fa 
- 00024555  0x000064b6 store  0x00000002 , 0x000000fc 
- 00024556  0x000064b7 store  0x00000002 , 0x000000f8 
- 00024557  0x000064b8 store  0x00000002 , 0x000000f6 
- 00024558  0x000064b9 fetch  0x00000001 , 0x00000153 
- 00024559  0x000064ba compare  0x00000000 , 0x0000003f , 0x000000ff 
- 00024560  0x000064bb setflag  0x00000001 , 0x00000006 , 0x00000002 
- 00024561  0x000064bc storet  0x00000001 , 0x00000151 
- 00024562  0x000064bd rtn 
- 00024563  0x000064c0 set0  0x00000011 , 0x00000000 
- 00024564  0x000064c1 jam  0x00000000 , 0x00000151 
- 00024565  0x000064c2 fetch  0x00000001 , 0x0000017f 
- 00024566  0x000064c3 set0  0x00000006 , 0x0000003f 
- 00024567  0x000064c4 store  0x00000001 , 0x0000017f 
- 00024568  0x000064c5 rtn 
- 00024569  0x000064cc arg  0x00000552 , 0x00000006 
- 00024570  0x000064cd arg  0x00000562 , 0x00000005 
- 00024571  0x000064ce branch  0x00007ebf 
- 00024572  0x000064d1 jam  0x00000009 , 0x0000007c 
- 00024573  0x000064d2 rtn 
- 00024574  0x000064d5 nrtn  0x00000029 
- 00024575  0x000064d6 jam  0x00000011 , 0x0000007c 
- 00024576  0x000064d7 rtn 
- 00024577  0x000064da arg  0x000040a0 , 0x00000011 
- 00024578  0x000064db call  0x00007255 
- 00024579  0x000064dc jam  0x00000003 , 0x0000007c 
- 00024580  0x000064dd jam  0x00000008 , 0x0000007d 
- 00024581  0x000064de rtn 
- 00024582  0x000064e1 jam  0x0000000a , 0x00000072 
- 00024583  0x000064e2 jam  0x00000007 , 0x0000007c 
- 00024584  0x000064e3 jam  0x00000016 , 0x000004ca 
- 00024585  0x000064e4 rtn 
- 00024586  0x000064eb bpatchx  0x00000082 , 0x00004030 
- 00024587  0x000064ec disable  0x00000028 
- 00024588  0x000064ed call  0x000062c1 
- 00024589  0x000064ee fetch  0x00000001 , 0x00000048 
- 00024590  0x000064ef rtn  0x00000034 
- 00024591  0x000064f4 bbit1  0x00000007 , 0x0000603f 
- 00024592  0x000064f6 beq  0x00000001 , 0x0000616f 
- 00024593  0x000064f7 beq  0x00000002 , 0x000060e4 
- 00024594  0x000064f8 beq  0x00000003 , 0x0000604a 
- 00024595  0x000064f9 beq  0x00000004 , 0x00006060 
- 00024596  0x000064fa beq  0x00000027 , 0x000061db 
- 00024597  0x000064fb beq  0x00000028 , 0x00006108 
- 00024598  0x000064fc beq  0x00000030 , 0x000060f4 
- 00024599  0x000064fd beq  0x00000025 , 0x000061d6 
- 00024600  0x000064fe beq  0x00000026 , 0x00006103 
- 00024601  0x000064ff beq  0x00000031 , 0x000061c3 
- 00024602  0x00006500 beq  0x00000037 , 0x0000616a 
- 00024603  0x00006501 beq  0x00000033 , 0x0000615c 
- 00024604  0x00006502 beq  0x00000008 , 0x00006259 
- 00024605  0x00006503 beq  0x00000009 , 0x0000624f 
- 00024606  0x00006504 beq  0x0000000b , 0x00006264 
- 00024607  0x00006505 beq  0x0000000c , 0x0000626d 
- 00024608  0x00006506 beq  0x0000000f , 0x00006162 
- 00024609  0x00006507 beq  0x00000010 , 0x00006292 
- 00024610  0x00006508 beq  0x00000011 , 0x00006288 
- 00024611  0x00006509 beq  0x00000007 , 0x00006152 
- 00024612  0x0000650a beq  0x0000002a , 0x0000617e 
- 00024613  0x0000650b beq  0x0000000a , 0x0000617f 
- 00024614  0x0000650d beq  0x0000001f , 0x000061bc 
- 00024615  0x0000650e beq  0x00000006 , 0x000060f9 
- 00024616  0x0000650f beq  0x00000021 , 0x0000615f 
- 00024617  0x00006510 beq  0x0000002d , 0x000061b2 
- 00024618  0x00006511 beq  0x0000002e , 0x000061b7 
- 00024619  0x00006512 beq  0x00000022 , 0x0000615f 
- 00024620  0x00006513 beq  0x00000034 , 0x00006180 
- 00024621  0x00006514 beq  0x00000013 , 0x00006195 
- 00024622  0x00006515 beq  0x00000017 , 0x000061a4 
- 00024623  0x00006516 beq  0x00000012 , 0x0000628f 
- 00024624  0x00006517 beq  0x0000002f , 0x000061aa 
- 00024625  0x00006518 beq  0x00000018 , 0x000061af 
- 00024626  0x00006519 beq  0x0000003d , 0x000061ff 
- 00024627  0x0000651a beq  0x0000003e , 0x0000620b 
- 00024628  0x0000651b beq  0x0000003f , 0x0000621d 
- 00024629  0x0000651c beq  0x00000040 , 0x00006227 
- 00024630  0x0000651d beq  0x00000041 , 0x0000623c 
- 00024631  0x0000651e beq  0x00000023 , 0x0000624b 
- 00024632  0x0000651f beq  0x0000003b , 0x00006246 
- 00024633  0x00006521 beq  0x00000005 , 0x0000624c 
- 00024634  0x00006522 beq  0x00000029 , 0x0000624d 
- 00024635  0x00006523 beq  0x00000038 , 0x0000624e 
- 00024636  0x00006524 beq  0x00000039 , 0x00006175 
- 00024637  0x00006526 branch  0x00002a8c 
- 00024638  0x00006527 rtn 
- 00024639  0x00006529 beq  0x00000081 , 0x0000606d 
- 00024640  0x0000652a beq  0x00000084 , 0x00006099 
- 00024641  0x0000652b beq  0x00000082 , 0x00006076 
- 00024642  0x0000652c beq  0x00000083 , 0x0000610d 
- 00024643  0x0000652d beq  0x0000008b , 0x00006118 
- 00024644  0x0000652e beq  0x00000097 , 0x0000614e 
- 00024645  0x0000652f beq  0x00000099 , 0x000060d5 
- 00024646  0x00006530 beq  0x0000009a , 0x000060a4 
- 00024647  0x00006531 beq  0x00000095 , 0x000060da 
- 00024648  0x00006532 beq  0x00000096 , 0x000060db 
- 00024649  0x00006533 branch  0x00002a8c 
- 00024650  0x0000653a force  0x00000002 , 0x0000003f 
- 00024651  0x0000653b call  0x00006298 
- 00024652  0x0000653c fetch  0x00000001 , 0x00000049 
- 00024653  0x0000653d istore  0x00000001 , 0x00000005 
- 00024654  0x0000653e call  0x000062a7 
- 00024655  0x0000653f bpatchx  0x00000083 , 0x00004030 
- 00024656  0x00006540 fetch  0x00000001 , 0x00000049 
- 00024657  0x00006541 beq  0x00000008 , 0x00006080 
- 00024658  0x00006542 beq  0x0000000f , 0x00006084 
- 00024659  0x00006543 beq  0x00000010 , 0x0000608f 
- 00024660  0x00006544 beq  0x00000017 , 0x0000605f 
- 00024661  0x00006545 beq  0x00000033 , 0x00006092 
- 00024662  0x00006546 beq  0x00000041 , 0x00006098 
- 00024663  0x00006547 beq  0x00000011 , 0x00006059 
- 00024664  0x00006548 rtn 
- 00024665  0x0000654b fetch  0x00000001 , 0x00000055 
- 00024666  0x0000654c rtn  0x00000034 
- 00024667  0x0000654d jam  0x0000001b , 0x00000055 
- 00024668  0x0000654e setarg  0x0000000c 
- 00024669  0x0000654f arg  0x00000007 , 0x00000007 
- 00024670  0x00006550 branch  0x00007f08 
- 00024671  0x00006553 branch  0x000026c6 
- 00024672  0x00006555 force  0x00000003 , 0x0000003f 
- 00024673  0x00006556 call  0x00006298 
- 00024674  0x00006557 fetch  0x00000001 , 0x00000049 
- 00024675  0x00006558 beq  0x0000000b , 0x00006068 
- 00024676  0x00006559 istore  0x00000001 , 0x00000005 
- 00024677  0x0000655a fetch  0x00000001 , 0x0000004a 
- 00024678  0x0000655b istore  0x00000001 , 0x00000005 
- 00024679  0x0000655c branch  0x000062a7 
- 00024680  0x0000655f istore  0x00000001 , 0x00000005 
- 00024681  0x00006560 fetch  0x00000001 , 0x0000004a 
- 00024682  0x00006561 istore  0x00000001 , 0x00000005 
- 00024683  0x00006562 arg  0x000004d5 , 0x00000002 
- 00024684  0x00006563 branch  0x000062e2 
- 00024685  0x00006566 force  0x00000004 , 0x00000007 
- 00024686  0x00006567 call  0x000062a0 
- 00024687  0x00006568 setarg  0x0000007f 
- 00024688  0x00006569 istore  0x00000001 , 0x00000005 
- 00024689  0x0000656a fetch  0x00000001 , 0x00000049 
- 00024690  0x0000656b set0  0x00000007 , 0x0000003f 
- 00024691  0x0000656c istore  0x00000001 , 0x00000005 
- 00024692  0x0000656d fetch  0x00000001 , 0x00000049 
- 00024693  0x0000656e branch  0x000062a7 
- 00024694  0x00006571 force  0x00000005 , 0x00000007 
- 00024695  0x00006572 call  0x000062a0 
- 00024696  0x00006573 setarg  0x0000007f 
- 00024697  0x00006574 istore  0x00000001 , 0x00000005 
- 00024698  0x00006575 fetch  0x00000001 , 0x00000049 
- 00024699  0x00006576 set0  0x00000007 , 0x0000003f 
- 00024700  0x00006577 istore  0x00000001 , 0x00000005 
- 00024701  0x00006578 fetch  0x00000001 , 0x0000004a 
- 00024702  0x00006579 istore  0x00000001 , 0x00000005 
- 00024703  0x0000657a branch  0x000062a7 
- 00024704  0x0000657e call  0x0000244f 
- 00024705  0x0000657f call  0x000062f3 
- 00024706  0x00006580 rtn  0x00000001 
- 00024707  0x00006581 branch  0x00005ffc 
- 00024708  0x00006584 fetch  0x00000001 , 0x0000004b 
- 00024709  0x00006585 bbit1  0x00000005 , 0x0000608b 
- 00024710  0x00006586 rtnbit0  0x00000004 
- 00024711  0x00006587 jam  0x00000012 , 0x0000007c 
- 00024712  0x00006588 set0  0x00000004 , 0x0000003f 
- 00024713  0x00006589 call  0x000062eb 
- 00024714  0x0000658a branch  0x0000608d 
- 00024715  0x0000658c jam  0x00000010 , 0x0000007c 
- 00024716  0x0000658d set0  0x00000005 , 0x0000003f 
- 00024717  0x0000658f store  0x00000001 , 0x0000004b 
- 00024718  0x00006590 rtn 
- 00024719  0x00006593 call  0x000062fc 
- 00024720  0x00006594 branch  0x00005ffe , 0x00000001 
- 00024721  0x00006595 rtn 
- 00024722  0x00006598 jam  0x0000008b , 0x0000007c 
- 00024723  0x0000659a fetch  0x00000001 , 0x000004d1 
- 00024724  0x0000659b set1  0x00000000 , 0x0000003f 
- 00024725  0x0000659c store  0x00000001 , 0x000004d1 
- 00024726  0x0000659d jam  0x00000001 , 0x00000a99 
- 00024727  0x0000659e branch  0x00007d86 
- 00024728  0x000065a2 rtn 
- 00024729  0x000065a7 force  0x0000000c , 0x00000007 
- 00024730  0x000065a8 call  0x000062a0 
- 00024731  0x000065a9 setarg  0x00000001 
- 00024732  0x000065aa istore  0x00000001 , 0x00000005 
- 00024733  0x000065ab fetch  0x00000002 , 0x000004ce 
- 00024734  0x000065ac istore  0x00000002 , 0x00000005 
- 00024735  0x000065ad setarg  0x00000000 
- 00024736  0x000065ae istore  0x00000003 , 0x00000005 
- 00024737  0x000065af setarg  0x00000000 
- 00024738  0x000065b0 istore  0x00000004 , 0x00000005 
- 00024739  0x000065b1 branch  0x000062b0 
- 00024740  0x000065b3 force  0x00000005 , 0x00000007 
- 00024741  0x000065b4 call  0x000062a0 
- 00024742  0x000065b5 fetch  0x00000003 , 0x0000465b 
- 00024743  0x000065b6 istore  0x00000003 , 0x00000005 
- 00024744  0x000065b7 call  0x000062b0 
- 00024745  0x000065b8 jam  0x00000001 , 0x00004665 
- 00024746  0x000065b9 fetch  0x00000001 , 0x0000465b 
- 00024747  0x000065ba beq  0x00000001 , 0x000060b5 
- 00024748  0x000065bb beq  0x00000002 , 0x000060af 
- 00024749  0x000065bc beq  0x00000003 , 0x000060bb 
- 00024750  0x000065bd rtn 
- 00024751  0x000065c0 fetch  0x00000001 , 0x0000465e 
- 00024752  0x000065c1 beq  0x00000000 , 0x000060c7 
- 00024753  0x000065c2 beq  0x00000001 , 0x000060c7 
- 00024754  0x000065c3 beq  0x00000002 , 0x000060c7 
- 00024755  0x000065c4 beq  0x00000003 , 0x000060c1 
- 00024756  0x000065c5 rtn 
- 00024757  0x000065c9 fetch  0x00000001 , 0x0000465e 
- 00024758  0x000065ca beq  0x00000000 , 0x000060c1 
- 00024759  0x000065cb beq  0x00000001 , 0x000060c5 
- 00024760  0x000065cc beq  0x00000002 , 0x000060c7 
- 00024761  0x000065cd beq  0x00000003 , 0x000060c1 
- 00024762  0x000065ce rtn 
- 00024763  0x000065d2 fetch  0x00000001 , 0x0000465e 
- 00024764  0x000065d3 beq  0x00000000 , 0x000060c1 
- 00024765  0x000065d4 beq  0x00000001 , 0x000060c1 
- 00024766  0x000065d5 beq  0x00000002 , 0x000060c1 
- 00024767  0x000065d6 beq  0x00000003 , 0x000060c1 
- 00024768  0x000065d7 rtn 
- 00024769  0x000065e1 jam  0x00000003 , 0x00004662 
- 00024770  0x000065e2 fetch  0x00000001 , 0x0000455c 
- 00024771  0x000065e3 bbit1  0x00000000 , 0x000033e9 
- 00024772  0x000065e4 rtn 
- 00024773  0x000065e8 jam  0x00000001 , 0x00004662 
- 00024774  0x000065e9 rtn 
- 00024775  0x000065f0 jam  0x00000002 , 0x00004662 
- 00024776  0x000065f1 rtn 
- 00024777  0x000065f5 arg  0x00000000 , 0x00000007 
- 00024778  0x000065f6 branch  0x000060cd 
- 00024779  0x000065f9 arg  0x00000000 , 0x00000007 
- 00024780  0x000065fa branch  0x000060d1 
- 00024781  0x000065fd fetch  0x00000001 , 0x0000455c 
- 00024782  0x000065fe qset1  0x0000003f 
- 00024783  0x000065ff store  0x00000001 , 0x0000455c 
- 00024784  0x00006600 rtn 
- 00024785  0x00006603 fetch  0x00000001 , 0x0000455c 
- 00024786  0x00006604 qset0  0x0000003f 
- 00024787  0x00006605 store  0x00000001 , 0x0000455c 
- 00024788  0x00006606 rtn 
- 00024789  0x0000660a force  0x00000005 , 0x00000007 
- 00024790  0x0000660b call  0x000062a0 
- 00024791  0x0000660c fetch  0x00000003 , 0x0000465b 
- 00024792  0x0000660d istore  0x00000003 , 0x00000005 
- 00024793  0x0000660e branch  0x000062b2 
- 00024794  0x00006613 rtn 
- 00024795  0x00006615 force  0x00000009 , 0x00000007 
- 00024796  0x00006616 call  0x000062a0 
- 00024797  0x00006617 fetch  0x00000001 , 0x00000095 
- 00024798  0x00006618 istore  0x00000001 , 0x00000005 
- 00024799  0x00006619 fetch  0x00000002 , 0x00000096 
- 00024800  0x0000661a istore  0x00000002 , 0x00000005 
- 00024801  0x0000661b fetch  0x00000004 , 0x00000091 
- 00024802  0x0000661c istore  0x00000004 , 0x00000005 
- 00024803  0x0000661d branch  0x000062b0 
- 00024804  0x00006620 force  0x00000011 , 0x0000003f 
- 00024805  0x00006621 call  0x00006298 
- 00024806  0x00006622 fetch  0x00000001 , 0x00000049 
- 00024807  0x00006623 copy  0x0000003f , 0x00000002 
- 00024808  0x00006624 beq  0x00000000 , 0x000060ec 
- 00024809  0x00006625 beq  0x0000000e , 0x000060ec 
- 00024810  0x00006626 beq  0x0000001c , 0x000060ec 
- 00024811  0x00006627 rtn 
- 00024812  0x00006629 istore  0x00000001 , 0x00000005 
- 00024813  0x0000662a fetch  0x00000001 , 0x00004515 
- 00024814  0x0000662b istore  0x00000001 , 0x00000005 
- 00024815  0x0000662c arg  0x0000000e , 0x00000039 
- 00024816  0x0000662d setarg  0x00004516 
- 00024817  0x0000662e iadd  0x00000002 , 0x00000006 
- 00024818  0x0000662f call  0x00007f01 
- 00024819  0x00006630 branch  0x000062b0 
- 00024820  0x00006634 force  0x00000003 , 0x0000003f 
- 00024821  0x00006635 call  0x00006298 
- 00024822  0x00006636 setarg  0x00000114 
- 00024823  0x00006637 istore  0x00000002 , 0x00000005 
- 00024824  0x00006638 branch  0x000062b0 
- 00024825  0x0000663c force  0x00000003 , 0x0000003f 
- 00024826  0x0000663d call  0x00006298 
- 00024827  0x0000663e fetch  0x00000004 , 0x00000165 
- 00024828  0x0000663f isub  0x00000022 , 0x0000003f 
- 00024829  0x00006640 branch  0x000060ff , 0x00000029 
- 00024830  0x00006641 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00024831  0x00006644 rshift2  0x0000003f , 0x0000003f 
- 00024832  0x00006645 set0  0x0000000f , 0x0000003f 
- 00024833  0x00006646 istore  0x00000002 , 0x00000005 
- 00024834  0x00006647 branch  0x000062b0 
- 00024835  0x0000664a force  0x00000006 , 0x0000003f 
- 00024836  0x0000664b call  0x00006298 
- 00024837  0x0000664c fetch  0x00000005 , 0x00004510 
- 00024838  0x0000664d istore  0x00000005 , 0x00000005 
- 00024839  0x0000664e branch  0x000062b0 
- 00024840  0x00006651 force  0x00000009 , 0x0000003f 
- 00024841  0x00006652 call  0x00006298 
- 00024842  0x00006653 fetch  0x00000008 , 0x00004098 
- 00024843  0x00006654 istore  0x00000008 , 0x00000005 
- 00024844  0x00006655 branch  0x000062b0 
- 00024845  0x0000665d force  0x0000000c , 0x00000007 
- 00024846  0x0000665e call  0x000062a0 
- 00024847  0x0000665f setarg  0x00000001 
- 00024848  0x00006660 istore  0x00000001 , 0x00000005 
- 00024849  0x00006661 fetch  0x00000002 , 0x000004ce 
- 00024850  0x00006662 istore  0x00000002 , 0x00000005 
- 00024851  0x00006663 setarg  0x00000000 
- 00024852  0x00006664 istore  0x00000003 , 0x00000005 
- 00024853  0x00006665 setarg  0x00000000 
- 00024854  0x00006666 istore  0x00000004 , 0x00000005 
- 00024855  0x00006667 branch  0x000062b2 
- 00024856  0x0000666a force  0x00000003 , 0x00000007 
- 00024857  0x0000666b call  0x000062a0 
- 00024858  0x0000666c fetch  0x00000001 , 0x0000415a 
- 00024859  0x0000666d istore  0x00000001 , 0x00000005 
- 00024860  0x0000666e disable  0x00000028 
- 00024861  0x0000666f call  0x000062b2 
- 00024862  0x00006670 nrtn  0x00000028 
- 00024863  0x00006671 nrtn  0x00000029 
- 00024864  0x00006672 fetch  0x00000001 , 0x000040d8 
- 00024865  0x00006673 rtnbit0  0x00000000 
- 00024866  0x00006674 call  0x00006132 
- 00024867  0x00006675 branch  0x0000613c 
- 00024868  0x00006679 bpatchx  0x00000084 , 0x00004030 
- 00024869  0x0000667a fetch  0x00000001 , 0x0000409e 
- 00024870  0x0000667b set1  0x00000003 , 0x0000003f 
- 00024871  0x0000667c store  0x00000001 , 0x0000409e 
- 00024872  0x0000667d setarg  0x00000101 
- 00024873  0x0000667e store  0x00000002 , 0x000004ce 
- 00024874  0x0000667f rtn 
- 00024875  0x00006682 bpatchx  0x00000085 , 0x00004030 
- 00024876  0x00006683 fetch  0x00000001 , 0x0000409e 
- 00024877  0x00006684 set0  0x00000003 , 0x0000003f 
- 00024878  0x00006685 store  0x00000001 , 0x0000409e 
- 00024879  0x00006686 setarg  0x00000000 
- 00024880  0x00006687 store  0x00000002 , 0x000004ce 
- 00024881  0x00006688 rtn 
- 00024882  0x0000668b jam  0x00000003 , 0x000040d8 
- 00024883  0x0000668c setarg  0x00000000 
- 00024884  0x0000668d store  0x00000004 , 0x00004142 
- 00024885  0x0000668e arg  0x000040da , 0x00000005 
- 00024886  0x0000668f call  0x00006140 
- 00024887  0x00006690 arg  0x000040e7 , 0x00000005 
- 00024888  0x00006691 call  0x00006140 
- 00024889  0x00006692 arg  0x00004146 , 0x00000005 
- 00024890  0x00006693 call  0x00006140 
- 00024891  0x00006694 branch  0x00006147 
- 00024892  0x00006696 arg  0x000040e7 , 0x00000005 
- 00024893  0x00006697 call  0x00006140 
- 00024894  0x00006698 call  0x00006147 
- 00024895  0x00006699 branch  0x0000614a 
- 00024896  0x0000669d setarg  0x00ffffff 
- 00024897  0x0000669e istore  0x00000003 , 0x00000005 
- 00024898  0x0000669f istore  0x00000003 , 0x00000005 
- 00024899  0x000066a0 istore  0x00000003 , 0x00000005 
- 00024900  0x000066a1 setarg  0x0000007f 
- 00024901  0x000066a2 istore  0x00000001 , 0x00000005 
- 00024902  0x000066a3 rtn 
- 00024903  0x000066a5 setarg  0x00000000 
- 00024904  0x000066a6 store  0x00000002 , 0x000040d6 
- 00024905  0x000066a7 rtn 
- 00024906  0x000066a9 fetch  0x00000001 , 0x000040d8 
- 00024907  0x000066aa set1  0x00000002 , 0x0000003f 
- 00024908  0x000066ab store  0x00000001 , 0x000040d8 
- 00024909  0x000066ac rtn 
- 00024910  0x000066b0 force  0x00000002 , 0x00000007 
- 00024911  0x000066b1 call  0x000062a0 
- 00024912  0x000066b2 nbranch  0x000062b0 , 0x00000029 
- 00024913  0x000066b4 branch  0x000062b2 
- 00024914  0x000066b9 force  0x00000002 , 0x0000003f 
- 00024915  0x000066ba call  0x00006298 
- 00024916  0x000066bb fetch  0x00000001 , 0x000004ca 
- 00024917  0x000066bc istore  0x00000001 , 0x00000005 
- 00024918  0x000066bd call  0x000062b2 
- 00024919  0x000066bf fetch  0x00000001 , 0x0000004b 
- 00024920  0x000066c0 set1  0x00000003 , 0x0000003f 
- 00024921  0x000066c1 store  0x00000001 , 0x0000004b 
- 00024922  0x000066c2 jam  0x00000032 , 0x00000072 
- 00024923  0x000066c3 rtn 
- 00024924  0x000066c7 force  0x00000001 , 0x0000003f 
- 00024925  0x000066c8 call  0x00006298 
- 00024926  0x000066c9 branch  0x000062b2 
- 00024927  0x000066cb force  0x00000001 , 0x0000003f 
- 00024928  0x000066cc call  0x00006298 
- 00024929  0x000066cd branch  0x000062b0 
- 00024930  0x000066d1 force  0x00000002 , 0x0000003f 
- 00024931  0x000066d2 call  0x00006298 
- 00024932  0x000066d3 fetch  0x00000001 , 0x0000004c 
- 00024933  0x000066d4 isolate0  0x00000002 , 0x0000003f 
- 00024934  0x000066d5 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00024935  0x000066d6 and_into  0x00000001 , 0x0000003f 
- 00024936  0x000066d7 istore  0x00000001 , 0x00000005 
- 00024937  0x000066d8 branch  0x000062b2 
- 00024938  0x000066dc force  0x00000003 , 0x0000003f 
- 00024939  0x000066dd call  0x00006298 
- 00024940  0x000066de fetch  0x00000002 , 0x00000051 
- 00024941  0x000066df istore  0x00000002 , 0x00000005 
- 00024942  0x000066e0 branch  0x000062b2 
- 00024943  0x000066e3 jam  0x000000fa , 0x00000072 
- 00024944  0x000066e4 force  0x00000002 , 0x0000003f 
- 00024945  0x000066e5 call  0x00006298 
- 00024946  0x000066e6 fetch  0x00000001 , 0x00000053 
- 00024947  0x000066e7 istore  0x00000001 , 0x00000005 
- 00024948  0x000066e8 branch  0x000062b2 
- 00024949  0x000066eb force  0x0000000a , 0x0000003f 
- 00024950  0x000066ec call  0x00006298 
- 00024951  0x000066ed arg  0x00000152 , 0x00000006 
- 00024952  0x000066ee force  0x00000009 , 0x00000039 
- 00024953  0x000066f0 ifetch  0x00000001 , 0x00000006 
- 00024954  0x000066f1 xor_into  0x00000055 , 0x0000003f 
- 00024955  0x000066f2 istore  0x00000001 , 0x00000005 
- 00024956  0x000066f3 loop  0x00006179 
- 00024957  0x000066f4 branch  0x000062b2 
- 00024958  0x000066f7 branch  0x000062b2 
- 00024959  0x000066f9 branch  0x000062b2 
- 00024960  0x000066fc rtn  0x00000029 
- 00024961  0x000066fd call  0x0000282d 
- 00024962  0x000066fe force  0x00000009 , 0x0000003f 
- 00024963  0x000066ff call  0x00006298 
- 00024964  0x00006700 fetch  0x00000002 , 0x00000171 
- 00024965  0x00006701 istore  0x00000002 , 0x00000005 
- 00024966  0x00006702 fetch  0x00000003 , 0x000040a0 
- 00024967  0x00006703 istore  0x00000003 , 0x00000005 
- 00024968  0x00006704 fetch  0x00000001 , 0x000040a3 
- 00024969  0x00006705 istore  0x00000001 , 0x00000005 
- 00024970  0x00006706 fetch  0x00000002 , 0x000040a4 
- 00024971  0x00006707 istore  0x00000002 , 0x00000005 
- 00024972  0x00006708 bmark0  0x00000003 , 0x00006191 
- 00024973  0x00006709 set0  0x00000003 , 0x00000000 
- 00024974  0x0000670a call  0x000062b2 
- 00024975  0x0000670b jam  0x00000013 , 0x0000007c 
- 00024976  0x0000670c rtn 
- 00024977  0x0000670e call  0x000062b0 
- 00024978  0x0000670f jam  0x00000003 , 0x0000007c 
- 00024979  0x00006710 jam  0x00000013 , 0x0000007d 
- 00024980  0x00006711 rtn 
- 00024981  0x00006714 arg  0x00000200 , 0x00000002 
- 00024982  0x00006715 branch  0x00006199 , 0x00000029 
- 00024983  0x00006716 deposit  0x00000028 
- 00024984  0x00006717 branch  0x0000619a 
- 00024985  0x00006719 deposit  0x00000022 
- 00024986  0x0000671b deposit  0x00000021 
- 00024987  0x0000671c iadd  0x00000002 , 0x0000003f 
- 00024988  0x0000671d and_into  0x000001fc , 0x0000003f 
- 00024989  0x0000671e store  0x00000004 , 0x00000034 
- 00024990  0x0000671f force  0x00000005 , 0x0000003f 
- 00024991  0x00006720 call  0x00006298 
- 00024992  0x00006721 fetch  0x00000004 , 0x00000034 
- 00024993  0x00006722 rshift  0x0000003f , 0x0000003f 
- 00024994  0x00006723 istore  0x00000004 , 0x00000005 
- 00024995  0x00006724 branch  0x000062b2 
- 00024996  0x00006727 force  0x0000000a , 0x0000003f 
- 00024997  0x00006728 call  0x00006298 
- 00024998  0x00006729 arg  0x000004d9 , 0x00000006 
- 00024999  0x0000672a ifetch  0x00000009 , 0x00000006 
- 00025000  0x0000672b istore  0x00000009 , 0x00000005 
- 00025001  0x0000672c branch  0x000062b2 
- 00025002  0x00006731 force  0x00000003 , 0x0000003f 
- 00025003  0x00006732 call  0x00006298 
- 00025004  0x00006733 setarg  0x00000114 
- 00025005  0x00006734 istore  0x00000002 , 0x00000005 
- 00025006  0x00006735 branch  0x000062b2 
- 00025007  0x00006739 force  0x00000001 , 0x0000003f 
- 00025008  0x0000673a call  0x00006298 
- 00025009  0x00006743 branch  0x000062b2 
- 00025010  0x00006747 force  0x00000002 , 0x0000003f 
- 00025011  0x00006748 call  0x00006298 
- 00025012  0x00006749 fetch  0x00000001 , 0x000040d0 
- 00025013  0x0000674a istore  0x00000001 , 0x00000005 
- 00025014  0x0000674b branch  0x000062b2 
- 00025015  0x0000674f force  0x00000002 , 0x0000003f 
- 00025016  0x00006750 call  0x00006298 
- 00025017  0x00006751 setarg  0x00000005 
- 00025018  0x00006752 istore  0x00000001 , 0x00000005 
- 00025019  0x00006753 branch  0x000062b2 
- 00025020  0x00006757 force  0x00000002 , 0x0000003f 
- 00025021  0x00006758 call  0x00006298 
- 00025022  0x00006759 setarg  0x00000000 
- 00025023  0x0000675a istore  0x00000001 , 0x00000005 
- 00025024  0x0000675b branch  0x000062b2 
- 00025025  0x0000675f jam  0x0000002e , 0x0000007c 
- 00025026  0x00006760 rtn 
- 00025027  0x00006762 fetch  0x00000001 , 0x00004092 
- 00025028  0x00006763 sub  0x0000003f , 0x0000000a , 0x0000003e 
- 00025029  0x00006764 call  0x000061c1 , 0x00000005 
- 00025030  0x00006765 fetch  0x00000001 , 0x00000030 
- 00025031  0x00006766 set1  0x00000004 , 0x0000003f 
- 00025032  0x00006767 store  0x00000001 , 0x00000030 
- 00025033  0x00006768 copy  0x00000022 , 0x0000003f 
- 00025034  0x00006769 store  0x00000004 , 0x000004e9 
- 00025035  0x0000676a fetch  0x00000001 , 0x000004d1 
- 00025036  0x0000676b bbit1  0x00000003 , 0x000061d4 
- 00025037  0x0000676c set1  0x00000003 , 0x0000003f 
- 00025038  0x0000676d store  0x00000001 , 0x000004d1 
- 00025039  0x0000676e jam  0x00000005 , 0x00000a99 
- 00025040  0x0000676f call  0x00007d86 
- 00025041  0x00006770 force  0x00000001 , 0x0000003f 
- 00025042  0x00006771 call  0x00006298 
- 00025043  0x00006772 branch  0x000062b2 
- 00025044  0x00006774 jam  0x00000000 , 0x00000048 
- 00025045  0x00006775 rtn 
- 00025046  0x00006778 force  0x00000006 , 0x0000003f 
- 00025047  0x00006779 call  0x00006298 
- 00025048  0x0000677a fetch  0x00000005 , 0x00004510 
- 00025049  0x0000677b istore  0x00000005 , 0x00000005 
- 00025050  0x0000677c branch  0x000062b2 
- 00025051  0x0000677f force  0x00000009 , 0x0000003f 
- 00025052  0x00006780 call  0x00006298 
- 00025053  0x00006781 fetch  0x00000008 , 0x00004098 
- 00025054  0x00006782 istore  0x00000008 , 0x00000005 
- 00025055  0x00006783 branch  0x000062b2 
- 00025056  0x00006786 jam  0x00000001 , 0x000009b1 
- 00025057  0x00006787 fetch  0x00000001 , 0x000045b1 
- 00025058  0x00006788 rtnne  0x00000001 
- 00025059  0x00006789 jam  0x00000013 , 0x000009af 
- 00025060  0x0000678a rtn 
- 00025061  0x0000678d call  0x000062ef 
- 00025062  0x0000678e jam  0x00000099 , 0x0000007c 
- 00025063  0x0000678f jam  0x00000003 , 0x000009af 
- 00025064  0x00006790 rtn 
- 00025065  0x00006794 call  0x000062ef 
- 00025066  0x00006795 jam  0x0000003d , 0x0000007c 
- 00025067  0x00006796 jam  0x00000007 , 0x000009af 
- 00025068  0x00006797 rtn 
- 00025069  0x0000679a arg  0x00000a4e , 0x00000011 
- 00025070  0x0000679b arg  0x00000a6e , 0x00000012 
- 00025071  0x0000679c arg  0x00000010 , 0x00000039 
- 00025072  0x0000679d call  0x00007f88 
- 00025073  0x0000679e branch  0x000061f7 , 0x00000005 
- 00025074  0x0000679f jam  0x00000000 , 0x000009af 
- 00025075  0x000067a0 call  0x000076da 
- 00025076  0x000067a1 jam  0x00000024 , 0x0000007e 
- 00025077  0x000067a2 jam  0x00000040 , 0x0000007d 
- 00025078  0x000067a3 branch  0x00005d53 
- 00025079  0x000067a5 jam  0x0000000a , 0x000009af 
- 00025080  0x000067a6 call  0x000076d8 
- 00025081  0x000067a7 jam  0x00000040 , 0x0000007d 
- 00025082  0x000067a8 branch  0x00005e38 
- 00025083  0x000067ad jam  0x00000040 , 0x0000007c 
- 00025084  0x000067ae rtn 
- 00025085  0x000067b5 jam  0x0000003d , 0x0000007c 
- 00025086  0x000067b7 rtn 
- 00025087  0x000067be jam  0x00000000 , 0x000009b6 
- 00025088  0x000067bf force  0x00000004 , 0x0000003f 
- 00025089  0x000067c0 call  0x00006298 
- 00025090  0x000067c1 force  0x00000001 , 0x0000003f 
- 00025091  0x000067c2 istore  0x00000001 , 0x00000005 
- 00025092  0x000067c3 force  0x00000001 , 0x0000003f 
- 00025093  0x000067c4 istore  0x00000001 , 0x00000005 
- 00025094  0x000067c5 force  0x00000030 , 0x0000003f 
- 00025095  0x000067c6 istore  0x00000001 , 0x00000005 
- 00025096  0x000067c7 call  0x000062fc 
- 00025097  0x000067c8 branch  0x000062b2 , 0x00000001 
- 00025098  0x000067c9 branch  0x000062b0 
- 00025099  0x000067cd force  0x00000011 , 0x0000003f 
- 00025100  0x000067ce call  0x00006298 
- 00025101  0x000067cf fetch  0x00000001 , 0x000009b6 
- 00025102  0x000067d0 arg  0x0000462a , 0x00000006 
- 00025103  0x000067d1 iadd  0x00000006 , 0x00000006 
- 00025104  0x000067d2 ifetch  0x00000008 , 0x00000006 
- 00025105  0x000067d3 istore  0x00000008 , 0x00000005 
- 00025106  0x000067d4 ifetch  0x00000008 , 0x00000006 
- 00025107  0x000067d5 istore  0x00000008 , 0x00000005 
- 00025108  0x000067d6 fetch  0x00000001 , 0x000009b6 
- 00025109  0x000067d7 increase  0x00000010 , 0x0000003f 
- 00025110  0x000067d8 store  0x00000001 , 0x000009b6 
- 00025111  0x000067d9 call  0x000062fc 
- 00025112  0x000067da branch  0x000062b2 , 0x00000001 
- 00025113  0x000067db branch  0x000062b0 
- 00025114  0x000067df jam  0x00000006 , 0x000009ae 
- 00025115  0x000067e0 jam  0x0000003f , 0x0000007c 
- 00025116  0x000067e1 rtn 
- 00025117  0x000067e5 force  0x00000011 , 0x0000003f 
- 00025118  0x000067e6 call  0x00006298 
- 00025119  0x000067e7 arg  0x00000a4e , 0x00000006 
- 00025120  0x000067e8 ifetch  0x00000008 , 0x00000006 
- 00025121  0x000067e9 istore  0x00000008 , 0x00000005 
- 00025122  0x000067ea ifetch  0x00000008 , 0x00000006 
- 00025123  0x000067eb istore  0x00000008 , 0x00000005 
- 00025124  0x000067ec branch  0x000062b0 
- 00025125  0x000067ef jam  0x00000040 , 0x0000007c 
- 00025126  0x000067f0 rtn 
- 00025127  0x000067f4 call  0x000062fc 
- 00025128  0x000067f5 call  0x00007612 , 0x00000001 
- 00025129  0x000067f6 force  0x00000011 , 0x0000003f 
- 00025130  0x000067f7 call  0x00006298 
- 00025131  0x000067f8 arg  0x00000a1e , 0x00000006 
- 00025132  0x000067f9 ifetch  0x00000008 , 0x00000006 
- 00025133  0x000067fa istore  0x00000008 , 0x00000005 
- 00025134  0x000067fb ifetch  0x00000008 , 0x00000006 
- 00025135  0x000067fc istore  0x00000008 , 0x00000005 
- 00025136  0x000067fd call  0x000062fc 
- 00025137  0x000067fe nbranch  0x000062b0 , 0x00000001 
- 00025138  0x000067ff branch  0x000062b2 , 0x00000001 
- 00025139  0x00006803 jam  0x0000000f , 0x000009af 
- 00025140  0x00006805 call  0x000062ef 
- 00025141  0x00006806 jam  0x0000000b , 0x0000007c 
- 00025142  0x00006807 call  0x00006307 
- 00025143  0x00006808 branch  0x0000764e , 0x00000001 
- 00025144  0x00006809 branch  0x00007658 
- 00025145  0x0000680b call  0x000062eb 
- 00025146  0x0000680d jam  0x00000041 , 0x0000007c 
- 00025147  0x0000680e rtn 
- 00025148  0x00006811 force  0x00000011 , 0x0000003f 
- 00025149  0x00006812 call  0x00006298 
- 00025150  0x00006813 arg  0x00000a4e , 0x00000006 
- 00025151  0x00006814 ifetch  0x00000008 , 0x00000006 
- 00025152  0x00006815 istore  0x00000008 , 0x00000005 
- 00025153  0x00006816 ifetch  0x00000008 , 0x00000006 
- 00025154  0x00006817 istore  0x00000008 , 0x00000005 
- 00025155  0x00006818 call  0x000062fc 
- 00025156  0x00006819 nbranch  0x000062b0 , 0x00000001 
- 00025157  0x0000681a branch  0x000062b2 , 0x00000001 
- 00025158  0x0000681d force  0x00000003 , 0x0000003f 
- 00025159  0x0000681e call  0x00006298 
- 00025160  0x0000681f setarg  0x0000fffe 
- 00025161  0x00006820 istore  0x00000002 , 0x00000005 
- 00025162  0x00006821 branch  0x000062b0 
- 00025163  0x00006824 branch  0x000062b2 
- 00025164  0x00006826 branch  0x000062b2 
- 00025165  0x00006828 branch  0x000062b2 
- 00025166  0x0000682a branch  0x000062b2 
- 00025167  0x00006830 call  0x0000630b 
- 00025168  0x00006831 arg  0x000040a0 , 0x00000011 
- 00025169  0x00006832 call  0x00006311 
- 00025170  0x00006833 force  0x00000011 , 0x0000003f 
- 00025171  0x00006834 call  0x00006298 
- 00025172  0x00006835 arg  0x00000582 , 0x00000011 
- 00025173  0x00006836 arg  0x00000562 , 0x00000012 
- 00025174  0x00006837 call  0x00007352 
- 00025175  0x00006838 nbranch  0x000062a7 , 0x00000029 
- 00025176  0x00006839 branch  0x000062ad 
- 00025177  0x0000683c call  0x0000630b 
- 00025178  0x0000683d arg  0x00000040 , 0x00000011 
- 00025179  0x0000683e call  0x00007255 
- 00025180  0x00006840 force  0x00000011 , 0x0000003f 
- 00025181  0x00006841 call  0x00006298 
- 00025182  0x00006842 arg  0x00000562 , 0x00000006 
- 00025183  0x00006843 call  0x00007ebf 
- 00025184  0x00006844 fetch  0x00000001 , 0x00000055 
- 00025185  0x00006845 beq  0x00000019 , 0x000062b2 
- 00025186  0x00006846 beq  0x00000018 , 0x000062b2 
- 00025187  0x00006847 branch  0x000062ad 
- 00025188  0x0000684a fetch  0x00000001 , 0x000009b5 
- 00025189  0x0000684b branch  0x0000626a , 0x00000034 
- 00025190  0x0000684c call  0x000062fc 
- 00025191  0x0000684d call  0x000062ef , 0x00000001 
- 00025192  0x0000684e ncall  0x000062eb , 0x00000001 
- 00025193  0x0000684f branch  0x0000626b 
- 00025194  0x00006851 call  0x000062ef 
- 00025195  0x00006853 call  0x0000630b 
- 00025196  0x00006854 branch  0x0000625c 
- 00025197  0x00006857 arg  0x000040a0 , 0x00000011 
- 00025198  0x00006858 call  0x00007288 
- 00025199  0x00006859 force  0x00000005 , 0x0000003f 
- 00025200  0x0000685a call  0x00006298 
- 00025201  0x0000685b fetch  0x00000004 , 0x00000592 
- 00025202  0x0000685c istore  0x00000004 , 0x00000005 
- 00025203  0x0000685d arg  0x000004d5 , 0x00000002 
- 00025204  0x0000685e call  0x000062e2 
- 00025205  0x0000685f call  0x00007386 
- 00025206  0x00006860 call  0x000062fc 
- 00025207  0x00006861 branch  0x0000627c , 0x00000001 
- 00025208  0x00006862 jam  0x00000001 , 0x000004d8 
- 00025209  0x00006863 fetch  0x00000001 , 0x000009b5 
- 00025210  0x00006864 rtn  0x00000034 
- 00025211  0x00006865 jam  0x0000000b , 0x0000007c 
- 00025212  0x00006867 fetch  0x00000001 , 0x000041bd 
- 00025213  0x00006868 rtn  0x00000034 
- 00025214  0x0000686a call  0x000062fc 
- 00025215  0x0000686b nbranch  0x00006284 , 0x00000001 
- 00025216  0x0000686c fetch  0x00000001 , 0x000004d7 
- 00025217  0x0000686d rtn  0x00000034 
- 00025218  0x0000686e jam  0x0000000f , 0x0000007c 
- 00025219  0x0000686f rtn 
- 00025220  0x00006871 rtnmark0  0x00000021 
- 00025221  0x00006872 set0  0x00000021 , 0x00000000 
- 00025222  0x00006873 jam  0x0000000f , 0x0000007c 
- 00025223  0x00006874 rtn 
- 00025224  0x00006879 call  0x0000630b 
- 00025225  0x0000687a call  0x0000728b 
- 00025226  0x0000687b force  0x00000011 , 0x0000003f 
- 00025227  0x0000687c call  0x00006298 
- 00025228  0x0000687d arg  0x00000562 , 0x00000006 
- 00025229  0x0000687e call  0x00007ebf 
- 00025230  0x0000687f branch  0x000062ad 
- 00025231  0x00006882 force  0x00000001 , 0x0000003f 
- 00025232  0x00006883 call  0x00006298 
- 00025233  0x00006884 branch  0x000062ad 
- 00025234  0x00006887 force  0x00000002 , 0x0000003f 
- 00025235  0x00006888 call  0x00006298 
- 00025236  0x00006889 force  0x00000010 , 0x0000003f 
- 00025237  0x0000688a istore  0x00000001 , 0x00000005 
- 00025238  0x0000688b store  0x00000001 , 0x00000054 
- 00025239  0x0000688c branch  0x000062ad 
- 00025240  0x00006890 lshift3  0x0000003f , 0x0000003f 
- 00025241  0x00006891 or_into  0x00000007 , 0x0000003f 
- 00025242  0x00006892 store  0x00000001 , 0x000004b6 
- 00025243  0x00006893 arg  0x00000011 , 0x00000039 
- 00025244  0x00006894 arg  0x000004b8 , 0x00000005 
- 00025245  0x00006895 call  0x00007ed4 
- 00025246  0x00006896 arg  0x000004b8 , 0x00000005 
- 00025247  0x00006897 rtn 
- 00025248  0x0000689a and  0x0000003f , 0x0000007f , 0x00000011 
- 00025249  0x0000689b jam  0x0000007f , 0x00000048 
- 00025250  0x0000689c deposit  0x00000007 
- 00025251  0x0000689d call  0x00006298 
- 00025252  0x0000689e deposit  0x00000011 
- 00025253  0x0000689f istore  0x00000001 , 0x00000005 
- 00025254  0x000068a0 rtn 
- 00025255  0x000068a3 fetch  0x00000001 , 0x00000048 
- 00025256  0x000068a4 lshift  0x0000003f , 0x0000003f 
- 00025257  0x000068a5 fetcht  0x00000001 , 0x0000004c 
- 00025258  0x000068a6 isolate1  0x00000001 , 0x00000002 
- 00025259  0x000068a7 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00025260  0x000068a8 branch  0x000062b7 
- 00025261  0x000068ac fetcht  0x00000001 , 0x0000004c 
- 00025262  0x000068ad and_into  0x00000001 , 0x00000002 
- 00025263  0x000068ae branch  0x000062b3 
- 00025264  0x000068b1 force  0x00000000 , 0x00000002 
- 00025265  0x000068b2 branch  0x000062b3 
- 00025266  0x000068b5 force  0x00000001 , 0x00000002 
- 00025267  0x000068b7 fetch  0x00000001 , 0x00000048 
- 00025268  0x000068b8 lshift  0x0000003f , 0x0000003f 
- 00025269  0x000068b9 setflag  0x00000029 , 0x00000000 , 0x0000003f 
- 00025270  0x000068ba ixor  0x00000002 , 0x0000003f 
- 00025271  0x000068bc store  0x00000001 , 0x000004b7 
- 00025272  0x000068bd jam  0x00000000 , 0x00000048 
- 00025273  0x000068be call  0x000062c7 
- 00025274  0x000068bf enable  0x00000028 
- 00025275  0x000068c0 rtn 
- 00025276  0x000068c4 fetch  0x00000001 , 0x0000007c 
- 00025277  0x000068c5 rtn  0x00000034 
- 00025278  0x000068c6 call  0x000062c1 
- 00025279  0x000068c7 fetch  0x00000001 , 0x0000007c 
- 00025280  0x000068c8 rtn 
- 00025281  0x000068cb bpatchx  0x00000086 , 0x00004030 
- 00025282  0x000068cc fetch  0x00000001 , 0x00000048 
- 00025283  0x000068cd branch  0x000062c7 , 0x00000034 
- 00025284  0x000068ce fetch  0x00000001 , 0x00000078 
- 00025285  0x000068cf nrtn  0x00000034 
- 00025286  0x000068d0 branch  0x000062d1 
- 00025287  0x000068d2 fetch  0x00000001 , 0x00000078 
- 00025288  0x000068d3 branch  0x000062d7 , 0x00000034 
- 00025289  0x000068d4 fetch  0x00000003 , 0x00000078 
- 00025290  0x000068d5 store  0x00000003 , 0x00000048 
- 00025291  0x000068d6 fetcht  0x00000001 , 0x0000007b 
- 00025292  0x000068d7 fetch  0x00000001 , 0x0000004c 
- 00025293  0x000068d8 set0  0x00000001 , 0x0000003f 
- 00025294  0x000068d9 ior  0x00000002 , 0x0000003f 
- 00025295  0x000068da store  0x00000001 , 0x0000004c 
- 00025296  0x000068db jam  0x00000000 , 0x00000078 
- 00025297  0x000068dd fetch  0x00000001 , 0x0000007c 
- 00025298  0x000068de rtn  0x00000034 
- 00025299  0x000068df fetch  0x00000004 , 0x0000007c 
- 00025300  0x000068e0 store  0x00000004 , 0x00000078 
- 00025301  0x000068e1 jam  0x00000000 , 0x0000007c 
- 00025302  0x000068e2 rtn 
- 00025303  0x000068e4 fetch  0x00000001 , 0x0000007c 
- 00025304  0x000068e5 rtn  0x00000034 
- 00025305  0x000068e6 fetch  0x00000003 , 0x0000007c 
- 00025306  0x000068e7 store  0x00000003 , 0x00000048 
- 00025307  0x000068e8 fetcht  0x00000001 , 0x0000007f 
- 00025308  0x000068e9 fetch  0x00000001 , 0x0000004c 
- 00025309  0x000068ea set0  0x00000001 , 0x0000003f 
- 00025310  0x000068eb ior  0x00000002 , 0x0000003f 
- 00025311  0x000068ec store  0x00000001 , 0x0000004c 
- 00025312  0x000068ed jam  0x00000000 , 0x0000007c 
- 00025313  0x000068ee rtn 
- 00025314  0x000068f2 bpatchx  0x00000087 , 0x00004030 
- 00025315  0x000068f3 fetch  0x00000001 , 0x0000004c 
- 00025316  0x000068f4 copy  0x0000003f , 0x00000013 
- 00025317  0x000068f5 ifetch  0x00000001 , 0x00000002 
- 00025318  0x000068f6 call  0x00005e52 
- 00025319  0x000068f7 call  0x000062a7 
- 00025320  0x000068f8 copy  0x00000013 , 0x0000003f 
- 00025321  0x000068f9 store  0x00000001 , 0x0000004c 
- 00025322  0x000068fa rtn 
- 00025323  0x000068fd fetcht  0x00000001 , 0x0000004c 
- 00025324  0x000068fe set0  0x00000000 , 0x00000002 
- 00025325  0x000068ff storet  0x00000001 , 0x0000004c 
- 00025326  0x00006900 rtn 
- 00025327  0x00006903 fetcht  0x00000001 , 0x0000004c 
- 00025328  0x00006904 set1  0x00000000 , 0x00000002 
- 00025329  0x00006905 storet  0x00000001 , 0x0000004c 
- 00025330  0x00006906 rtn 
- 00025331  0x0000690a nsetflag  0x00000029 , 0x00000001 , 0x0000003f 
- 00025332  0x0000690b fetcht  0x00000001 , 0x0000004c 
- 00025333  0x0000690c ixor  0x00000002 , 0x0000003f 
- 00025334  0x0000690d isolate1  0x00000001 , 0x0000003f 
- 00025335  0x0000690e rtn 
- 00025336  0x00006912 fetch  0x00000001 , 0x0000004c 
- 00025337  0x00006913 setflag  0x00000029 , 0x00000001 , 0x0000003f 
- 00025338  0x00006914 store  0x00000001 , 0x0000004c 
- 00025339  0x00006915 rtn 
- 00025340  0x00006919 fetch  0x00000001 , 0x000009b4 
- 00025341  0x0000691a compare  0x00000001 , 0x0000003f , 0x0000007f 
- 00025342  0x0000691b rtn 
- 00025343  0x0000691d fetch  0x00000001 , 0x000009b4 
- 00025344  0x0000691e set1  0x00000007 , 0x0000003f 
- 00025345  0x0000691f store  0x00000001 , 0x000009b4 
- 00025346  0x00006920 rtn 
- 00025347  0x00006922 fetch  0x00000001 , 0x000009b4 
- 00025348  0x00006923 set0  0x00000007 , 0x0000003f 
- 00025349  0x00006924 store  0x00000001 , 0x000009b4 
- 00025350  0x00006925 rtn 
- 00025351  0x00006927 fetch  0x00000001 , 0x000009b4 
- 00025352  0x00006928 isolate1  0x00000007 , 0x0000003f 
- 00025353  0x00006929 store  0x00000001 , 0x000009b4 
- 00025354  0x0000692a rtn 
- 00025355  0x0000692e arg  0x00000562 , 0x00000005 
- 00025356  0x00006930 force  0x00000010 , 0x00000039 
- 00025357  0x00006933 random  0x0000003f 
- 00025358  0x00006934 istore  0x00000001 , 0x00000005 
- 00025359  0x00006935 loop  0x0000630d 
- 00025360  0x00006936 rtn 
- 00025361  0x00006939 call  0x00007259 
- 00025362  0x0000693a arg  0x000041be , 0x00000011 
- 00025363  0x0000693b arg  0x00000592 , 0x00000012 
- 00025364  0x0000693c ifetch  0x00000008 , 0x00000011 
- 00025365  0x0000693d fetcht  0x00000001 , 0x00000030 
- 00025366  0x0000693e nsetflag  0x00000034 , 0x00000006 , 0x00000002 
- 00025367  0x0000693f storet  0x00000001 , 0x00000030 
- 00025368  0x00006940 copy  0x00000011 , 0x00000005 
- 00025369  0x00006941 call  0x00007352 
- 00025370  0x00006942 branch  0x000021c4 
- 00025371  0x0000694a bpatchx  0x00000088 , 0x00004031 
- 00025372  0x0000694c call  0x000062bc 
- 00025373  0x0000694d nrtn  0x00000034 
- 00025374  0x0000694f fetch  0x00000001 , 0x00000055 
- 00025375  0x00006950 rtn  0x00000034 
- 00025376  0x00006954 beq  0x00000004 , 0x0000636f 
- 00025377  0x00006955 beq  0x00000005 , 0x00006374 
- 00025378  0x00006956 beq  0x00000002 , 0x00006366 
- 00025379  0x00006957 beq  0x00000003 , 0x0000637c 
- 00025380  0x00006958 beq  0x0000000e , 0x00006369 
- 00025381  0x00006959 beq  0x00000006 , 0x00006398 
- 00025382  0x0000695a beq  0x00000007 , 0x000063b0 
- 00025383  0x0000695b beq  0x00000009 , 0x000063b1 
- 00025384  0x0000695c beq  0x0000000a , 0x000063ba 
- 00025385  0x0000695d beq  0x0000000b , 0x000063be 
- 00025386  0x0000695e beq  0x0000000c , 0x00006386 
- 00025387  0x0000695f beq  0x0000000d , 0x00006389 
- 00025388  0x00006960 beq  0x0000000f , 0x0000638f 
- 00025389  0x00006961 beq  0x00000012 , 0x00006359 
- 00025390  0x00006962 beq  0x00000013 , 0x0000637c 
- 00025391  0x00006963 beq  0x00000010 , 0x0000635c 
- 00025392  0x00006964 beq  0x00000014 , 0x00006356 
- 00025393  0x00006965 beq  0x00000015 , 0x0000637c 
- 00025394  0x00006966 beq  0x00000016 , 0x00006350 
- 00025395  0x00006967 beq  0x00000018 , 0x00006355 
- 00025396  0x00006968 beq  0x00000017 , 0x00006349 
- 00025397  0x00006969 beq  0x00000019 , 0x0000634f 
- 00025398  0x0000696a beq  0x0000001a , 0x0000633a 
- 00025399  0x0000696b beq  0x0000001b , 0x00006344 
- 00025400  0x0000696c jam  0x00000000 , 0x00000055 
- 00025401  0x0000696e rtn 
- 00025402  0x00006970 fetch  0x00000001 , 0x000004d1 
- 00025403  0x00006971 rtnbit0  0x00000002 
- 00025404  0x00006972 rtnbit0  0x00000003 
- 00025405  0x00006973 jam  0x00000000 , 0x00000055 
- 00025406  0x00006974 call  0x00006340 
- 00025407  0x00006975 branch  0x00006cef 
- 00025408  0x00006978 fetch  0x00000001 , 0x0000016d 
- 00025409  0x00006979 rtnbit0  0x00000001 
- 00025410  0x0000697a jam  0x0000000a , 0x00000055 
- 00025411  0x0000697b rtn 
- 00025412  0x0000697e arg  0x00000007 , 0x00000007 
- 00025413  0x0000697f call  0x00007f16 
- 00025414  0x00006980 nrtn  0x00000034 
- 00025415  0x00006981 jam  0x0000001a , 0x00000055 
- 00025416  0x00006982 rtn 
- 00025417  0x00006985 fetch  0x00000001 , 0x0000016d 
- 00025418  0x00006986 set0  0x00000000 , 0x0000003f 
- 00025419  0x00006987 store  0x00000001 , 0x0000016d 
- 00025420  0x00006988 jam  0x00000019 , 0x00000055 
- 00025421  0x00006989 jam  0x0000000b , 0x0000007c 
- 00025422  0x0000698a rtn 
- 00025423  0x0000698c rtn 
- 00025424  0x0000698e fetch  0x00000001 , 0x000004d4 
- 00025425  0x0000698f rtnne  0x00000002 
- 00025426  0x00006990 call  0x000063c0 
- 00025427  0x00006991 jam  0x00000018 , 0x00000055 
- 00025428  0x00006992 rtn 
- 00025429  0x00006995 rtn 
- 00025430  0x00006997 jam  0x00000015 , 0x00000055 
- 00025431  0x00006998 jam  0x00000083 , 0x0000007c 
- 00025432  0x00006999 rtn 
- 00025433  0x0000699b jam  0x00000013 , 0x00000055 
- 00025434  0x0000699c jam  0x00000025 , 0x0000007c 
- 00025435  0x0000699d rtn 
- 00025436  0x000069a0 fetch  0x00000001 , 0x0000455b 
- 00025437  0x000069a1 rtneq  0x00000000 
- 00025438  0x000069a2 beq  0x00000001 , 0x00006364 
- 00025439  0x000069a3 arg  0x00000006 , 0x00000007 
- 00025440  0x000069a4 call  0x00007f16 
- 00025441  0x000069a5 nrtn  0x00000034 
- 00025442  0x000069a6 jam  0x00000000 , 0x0000455b 
- 00025443  0x000069a7 branch  0x0000637d 
- 00025444  0x000069a9 rtn  0x00000029 
- 00025445  0x000069aa branch  0x00006398 
- 00025446  0x000069ad jam  0x00000003 , 0x00000055 
- 00025447  0x000069ae jam  0x00000027 , 0x0000007c 
- 00025448  0x000069af rtn 
- 00025449  0x000069b1 jam  0x00000013 , 0x0000007c 
- 00025450  0x000069b2 set1  0x00000003 , 0x00000000 
- 00025451  0x000069b3 jam  0x00000005 , 0x00000055 
- 00025452  0x000069b4 setarg  0x000001ff 
- 00025453  0x000069b5 store  0x00000002 , 0x000004d2 
- 00025454  0x000069b6 rtn 
- 00025455  0x000069b8 jam  0x00000005 , 0x00000055 
- 00025456  0x000069b9 jam  0x000000ff , 0x000004d2 
- 00025457  0x000069ba set0  0x00000022 , 0x00000000 
- 00025458  0x000069bb jam  0x00000033 , 0x0000007c 
- 00025459  0x000069bc branch  0x00005d04 
- 00025460  0x000069be rtnmark1  0x00000022 
- 00025461  0x000069bf fetch  0x00000002 , 0x000004d2 
- 00025462  0x000069c0 sub  0x0000003f , 0x00000001 , 0x0000003f 
- 00025463  0x000069c1 branch  0x0000637a , 0x00000005 
- 00025464  0x000069c2 store  0x00000002 , 0x000004d2 
- 00025465  0x000069c3 rtn 
- 00025466  0x000069c5 jam  0x0000000e , 0x00000055 
- 00025467  0x000069c6 rtn 
- 00025468  0x000069c9 rtn 
- 00025469  0x000069cc fetch  0x00000001 , 0x000004d1 
- 00025470  0x000069cd rtnbit0  0x00000003 
- 00025471  0x000069ce rtnbit0  0x00000002 
- 00025472  0x000069cf fetch  0x00000001 , 0x0000016d 
- 00025473  0x000069d0 set0  0x00000002 , 0x0000003f 
- 00025474  0x000069d1 store  0x00000001 , 0x0000016d 
- 00025475  0x000069d2 jam  0x00000013 , 0x0000007c 
- 00025476  0x000069d3 jam  0x00000010 , 0x00000055 
- 00025477  0x000069d4 rtn 
- 00025478  0x000069d7 jam  0x0000000d , 0x00000055 
- 00025479  0x000069d8 jam  0x00000031 , 0x0000007c 
- 00025480  0x000069d9 rtn 
- 00025481  0x000069dc fetch  0x00000001 , 0x000004d1 
- 00025482  0x000069dd rtnbit0  0x00000002 
- 00025483  0x000069de jam  0x00000000 , 0x00000055 
- 00025484  0x000069e0 rtn 
- 00025485  0x000069e2 jam  0x00000006 , 0x00000055 
- 00025486  0x000069e3 rtn 
- 00025487  0x000069e6 fetch  0x00000001 , 0x000004d2 
- 00025488  0x000069e7 increase  0xffffffff , 0x0000003f 
- 00025489  0x000069e8 branch  0x00006394 , 0x00000034 
- 00025490  0x000069e9 store  0x00000001 , 0x000004d2 
- 00025491  0x000069ea rtn 
- 00025492  0x000069ec jam  0x00000007 , 0x0000007c 
- 00025493  0x000069ed jam  0x00000016 , 0x000004ca 
- 00025494  0x000069ee jam  0x00000000 , 0x00000055 
- 00025495  0x000069ef rtn 
- 00025496  0x000069f2 fetch  0x00000001 , 0x0000016d 
- 00025497  0x000069f3 bbit1  0x00000002 , 0x0000637d 
- 00025498  0x000069f4 bbit1  0x00000000 , 0x0000639d 
- 00025499  0x000069f6 jam  0x0000001a , 0x00000055 
- 00025500  0x000069f7 rtn 
- 00025501  0x000069f9 fetch  0x00000001 , 0x000041bd 
- 00025502  0x000069fa branch  0x000063a9 , 0x00000034 
- 00025503  0x000069fb fetch  0x00000001 , 0x000004d1 
- 00025504  0x000069fc rtnbit0  0x00000003 
- 00025505  0x000069fd rtnbit0  0x00000002 
- 00025506  0x000069fe fetch  0x00000004 , 0x000004e9 
- 00025507  0x000069ff arg  0x00000064 , 0x00000002 
- 00025508  0x00006a00 iadd  0x00000002 , 0x00000002 
- 00025509  0x00006a01 copy  0x00000022 , 0x0000003f 
- 00025510  0x00006a02 isub  0x00000002 , 0x0000003e 
- 00025511  0x00006a03 nrtn  0x00000002 
- 00025512  0x00006a04 branch  0x00006349 
- 00025513  0x00006a09 jam  0x00000016 , 0x00000055 
- 00025514  0x00006a0a jam  0x00000004 , 0x00004689 
- 00025515  0x00006a0b setarg  0x00003030 
- 00025516  0x00006a0c store  0x00000002 , 0x0000468a 
- 00025517  0x00006a0d istore  0x00000002 , 0x00000005 
- 00025518  0x00006a0e jam  0x00000002 , 0x000004d4 
- 00025519  0x00006a0f branch  0x00006350 
- 00025520  0x00006a12 rtn 
- 00025521  0x00006a14 fetch  0x00000001 , 0x0000016d 
- 00025522  0x00006a15 bbit1  0x00000001 , 0x000063b5 
- 00025523  0x00006a16 jam  0x0000001a , 0x00000055 
- 00025524  0x00006a17 rtn 
- 00025525  0x00006a1a fetch  0x00000001 , 0x0000016d 
- 00025526  0x00006a1b set0  0x00000001 , 0x0000003f 
- 00025527  0x00006a1c store  0x00000001 , 0x0000016d 
- 00025528  0x00006a1d jam  0x0000000f , 0x0000007c 
- 00025529  0x00006a1e rtn 
- 00025530  0x00006a21 fetch  0x00000001 , 0x000004d8 
- 00025531  0x00006a22 rtn  0x00000034 
- 00025532  0x00006a23 jam  0x00000000 , 0x00000055 
- 00025533  0x00006a24 branch  0x000063b5 
- 00025534  0x00006a27 jam  0x0000000c , 0x00000055 
- 00025535  0x00006a28 rtn 
- 00025536  0x00006a2b fetch  0x00000001 , 0x0000004b 
- 00025537  0x00006a2c bbit1  0x00000002 , 0x000063c5 
- 00025538  0x00006a2d call  0x000062ef 
- 00025539  0x00006a2e jam  0x00000008 , 0x0000007c 
- 00025540  0x00006a2f branch  0x00004d04 
- 00025541  0x00006a31 fetch  0x00000001 , 0x0000004b 
- 00025542  0x00006a32 set0  0x00000002 , 0x0000003f 
- 00025543  0x00006a33 store  0x00000001 , 0x0000004b 
- 00025544  0x00006a34 call  0x00006001 
- 00025545  0x00006a35 call  0x000062f8 
- 00025546  0x00006a36 branch  0x00004d04 
- 00025547  0x00006a39 setarg  0x00000004 
- 00025548  0x00006a3a store  0x00000001 , 0x00004689 
- 00025549  0x00006a3b setarg  0x00003030 
- 00025550  0x00006a3c istore  0x00000002 , 0x00000005 
- 00025551  0x00006a3d istore  0x00000002 , 0x00000005 
- 00025552  0x00006a3e rtn 
- 00025553  0x00006a45 bpatchx  0x0000008c , 0x00004031 
- 00025554  0x00006a46 hfetch  0x00000001 , 0x00008073 
- 00025555  0x00006a47 arg  0x00000006 , 0x00000002 
- 00025556  0x00006a48 ior  0x00000002 , 0x0000003f 
- 00025557  0x00006a49 hstore  0x00000001 , 0x00008073 
- 00025558  0x00006a4a hfetch  0x00000001 , 0x00008077 
- 00025559  0x00006a4b ior  0x00000002 , 0x0000003f 
- 00025560  0x00006a4c hstore  0x00000001 , 0x00008077 
- 00025561  0x00006a4d call  0x000063ee 
- 00025562  0x00006a4e hfetch  0x00000001 , 0x00008077 
- 00025563  0x00006a4f set0  0x00000001 , 0x0000003f 
- 00025564  0x00006a50 set0  0x00000002 , 0x0000003f 
- 00025565  0x00006a51 hstore  0x00000001 , 0x00008077 
- 00025566  0x00006a52 nop  0x0000001e 
- 00025567  0x00006a53 branch  0x000063f2 
- 00025568  0x00006a56 hfetch  0x00000001 , 0x00008073 
- 00025569  0x00006a57 arg  0x000000c0 , 0x00000002 
- 00025570  0x00006a58 ior  0x00000002 , 0x0000003f 
- 00025571  0x00006a59 hstore  0x00000001 , 0x00008073 
- 00025572  0x00006a5a hfetch  0x00000001 , 0x00008077 
- 00025573  0x00006a5b ior  0x00000002 , 0x0000003f 
- 00025574  0x00006a5c hstore  0x00000001 , 0x00008077 
- 00025575  0x00006a5d call  0x000063ee 
- 00025576  0x00006a5e hfetch  0x00000001 , 0x00008077 
- 00025577  0x00006a5f set0  0x00000006 , 0x0000003f 
- 00025578  0x00006a60 set0  0x00000007 , 0x0000003f 
- 00025579  0x00006a61 hstore  0x00000001 , 0x00008077 
- 00025580  0x00006a62 nop  0x0000001e 
- 00025581  0x00006a63 branch  0x000063f6 
- 00025582  0x00006a66 hfetch  0x00000001 , 0x00008081 
- 00025583  0x00006a67 and  0x0000003f , 0x000000fc , 0x0000003f 
- 00025584  0x00006a68 hstore  0x00000001 , 0x00008081 
- 00025585  0x00006a69 rtn 
- 00025586  0x00006a6b hfetch  0x00000001 , 0x00008081 
- 00025587  0x00006a6c or  0x0000003f , 0x00000001 , 0x0000003f 
- 00025588  0x00006a6d hstore  0x00000001 , 0x00008081 
- 00025589  0x00006a6e rtn 
- 00025590  0x00006a70 hfetch  0x00000001 , 0x00008081 
- 00025591  0x00006a71 or  0x0000003f , 0x00000003 , 0x0000003f 
- 00025592  0x00006a72 set0  0x00000004 , 0x0000003f 
- 00025593  0x00006a73 hstore  0x00000001 , 0x00008081 
- 00025594  0x00006a74 rtn 
- 00025595  0x00006a79 copy  0x0000003f , 0x00000012 
- 00025596  0x00006a7a call  0x0000640f 
- 00025597  0x00006a7b nop  0x00000064 
- 00025598  0x00006a7c copy  0x00000012 , 0x0000003f 
- 00025599  0x00006a7d call  0x00006414 
- 00025600  0x00006a7e copy  0x0000003f , 0x00000012 
- 00025601  0x00006a7f call  0x00006411 
- 00025602  0x00006a80 nop  0x00000064 
- 00025603  0x00006a81 copy  0x00000012 , 0x0000003f 
- 00025604  0x00006a82 rtn 
- 00025605  0x00006a85 copy  0x0000003f , 0x00000012 
- 00025606  0x00006a86 call  0x0000640f 
- 00025607  0x00006a87 nop  0x00000064 
- 00025608  0x00006a88 copy  0x00000012 , 0x0000003f 
- 00025609  0x00006a89 call  0x00006413 
- 00025610  0x00006a8a call  0x00006411 
- 00025611  0x00006a8b nop  0x00000064 
- 00025612  0x00006a8c rtn 
- 00025613  0x00006a90 fetcht  0x00000001 , 0x00004214 
- 00025614  0x00006a91 branch  0x0000680e 
- 00025615  0x00006a95 fetcht  0x00000001 , 0x00004214 
- 00025616  0x00006a96 branch  0x00006829 
- 00025617  0x00006a9a fetcht  0x00000001 , 0x00004214 
- 00025618  0x00006a9b branch  0x00006825 
- 00025619  0x00006a9f branch  0x000064ec 
- 00025620  0x00006aa2 branch  0x000064f3 
- 00025621  0x00006aaa nbranch  0x00006419 , 0x00000028 
- 00025622  0x00006aab hfetch  0x00000001 , 0x00008085 
- 00025623  0x00006aac or_into  0x00000002 , 0x0000003f 
- 00025624  0x00006aad hstore  0x00000001 , 0x00008085 
- 00025625  0x00006aaf copy  0x00000002 , 0x0000003e 
- 00025626  0x00006ab0 branch  0x0000641c , 0x00000005 
- 00025627  0x00006ab1 copy  0x00000013 , 0x0000003d 
- 00025628  0x00006ab3 isolate0  0x00000000 , 0x0000003e 
- 00025629  0x00006ab4 branch  0x000064b9 
- 00025630  0x00006ab8 force  0x00000004 , 0x00000002 
- 00025631  0x00006aba arg  0x000001fe , 0x00000011 
- 00025632  0x00006abb hfetch  0x00000001 , 0x00008085 
- 00025633  0x00006abc and_into  0x000000fd , 0x0000003f 
- 00025634  0x00006abd hstore  0x00000001 , 0x00008085 
- 00025635  0x00006abe call  0x00006419 
- 00025636  0x00006abf arg  0x000055aa , 0x00000011 
- 00025637  0x00006ac0 fetch  0x00000002 , 0x000001fe 
- 00025638  0x00006ac1 ifetcht  0x00000002 , 0x00000006 
- 00025639  0x00006ac2 isub  0x00000011 , 0x0000003e 
- 00025640  0x00006ac3 rtn 
- 00025641  0x00006ac6 arg  0x00000002 , 0x00000002 
- 00025642  0x00006ac7 arg  0x00000204 , 0x00000011 
- 00025643  0x00006ac8 call  0x00006419 
- 00025644  0x00006ac9 fetch  0x00000002 , 0x00000204 
- 00025645  0x00006aca store  0x00000002 , 0x000001f7 
- 00025646  0x00006acb call  0x00006430 , 0x00000028 
- 00025647  0x00006acc rtn 
- 00025648  0x00006acf arg  0x00000010 , 0x00000002 
- 00025649  0x00006ad0 arg  0x00000206 , 0x00000011 
- 00025650  0x00006ad1 hfetch  0x00000001 , 0x00008085 
- 00025651  0x00006ad2 and_into  0x000000fd , 0x0000003f 
- 00025652  0x00006ad3 hstore  0x00000001 , 0x00008085 
- 00025653  0x00006ad4 call  0x00006419 
- 00025654  0x00006ad5 arg  0x00000206 , 0x00000006 
- 00025655  0x00006ad6 arg  0x00000010 , 0x00000039 
- 00025656  0x00006ad7 call  0x00007478 
- 00025657  0x00006ad8 call  0x00007428 
- 00025658  0x00006ad9 call  0x00007491 
- 00025659  0x00006ada branch  0x00007422 
- 00025660  0x00006add disable  0x0000002d 
- 00025661  0x00006ade call  0x0000641e 
- 00025662  0x00006adf nrtn  0x00000005 
- 00025663  0x00006ae0 enable  0x0000002d 
- 00025664  0x00006ae1 jam  0x00000080 , 0x00008023 
- 00025665  0x00006ae2 jam  0x00000000 , 0x00008022 
- 00025666  0x00006ae3 jam  0x00000000 , 0x00008024 
- 00025667  0x00006ae4 arg  0x00008025 , 0x00000011 
- 00025668  0x00006ae5 call  0x00006415 
- 00025669  0x00006ae6 jam  0x00000000 , 0x00008023 
- 00025670  0x00006ae8 arg  0x00000006 , 0x00000002 
- 00025671  0x00006ae9 call  0x0000641f 
- 00025672  0x00006aea nrtn  0x00000005 
- 00025673  0x00006aeb ifetch  0x00000002 , 0x00000006 
- 00025674  0x00006aec iforce  0x00000011 
- 00025675  0x00006aed call  0x00006419 
- 00025676  0x00006aee branch  0x00006446 
- 00025677  0x00006af3 call  0x00007f99 
- 00025678  0x00006af4 setarg  0x00001000 
- 00025679  0x00006af5 store  0x00000002 , 0x000001f7 
- 00025680  0x00006af6 arg  0x000065e5 , 0x00000013 
- 00025681  0x00006af7 arg  0x00000002 , 0x00000039 
- 00025682  0x00006af9 call  0x0000641e 
- 00025683  0x00006afa nrtn  0x00000005 
- 00025684  0x00006afb fetch  0x00000002 , 0x000001f7 
- 00025685  0x00006afc byteswap  0x0000003f , 0x0000003f 
- 00025686  0x00006afd iadd  0x00000002 , 0x0000003f 
- 00025687  0x00006afe byteswap  0x0000003f , 0x0000003f 
- 00025688  0x00006aff store  0x00000002 , 0x000001f7 
- 00025689  0x00006b00 loop  0x00006452 
- 00025690  0x00006b01 branch  0x00006446 
- 00025691  0x00006b04 call  0x00007f99 
- 00025692  0x00006b05 disable  0x00000028 
- 00025693  0x00006b06 call  0x0000666a 
- 00025694  0x00006b07 setarg  0x00000000 
- 00025695  0x00006b08 arg  0x000001f3 , 0x00000011 
- 00025696  0x00006b09 arg  0x00000002 , 0x00000002 
- 00025697  0x00006b0a call  0x000066b3 
- 00025698  0x00006b0b fetch  0x00000002 , 0x000001f3 
- 00025699  0x00006b0c bbit0  0x00000007 , 0x0000646e 
- 00025700  0x00006b0d jam  0x00000025 , 0x00008050 
- 00025701  0x00006b0e setarg  0x000007f0 
- 00025702  0x00006b0f arg  0x00000206 , 0x00000011 
- 00025703  0x00006b10 arg  0x00000010 , 0x00000002 
- 00025704  0x00006b11 call  0x000066b3 
- 00025705  0x00006b12 jam  0x00000008 , 0x00008006 
- 00025706  0x00006b13 set1  0x0000002b , 0x00000000 
- 00025707  0x00006b14 arg  0x00000206 , 0x00000006 
- 00025708  0x00006b15 call  0x00007484 
- 00025709  0x00006b16 enable  0x00000028 
- 00025710  0x00006b18 jam  0x00000000 , 0x000041da 
- 00025711  0x00006b1a call  0x000064b0 
- 00025712  0x00006b1b fetch  0x00000002 , 0x000001f3 
- 00025713  0x00006b1c byteswap  0x0000003f , 0x0000003f 
- 00025714  0x00006b1d arg  0x000007ff , 0x00000002 
- 00025715  0x00006b1e iand  0x00000002 , 0x0000003f 
- 00025716  0x00006b1f branch  0x0000647b , 0x00000005 
- 00025717  0x00006b20 call  0x0000666f 
- 00025718  0x00006b21 arg  0x000066b8 , 0x00000013 
- 00025719  0x00006b22 call  0x00006430 , 0x00000028 
- 00025720  0x00006b23 call  0x0000643c 
- 00025721  0x00006b24 fetch  0x00000001 , 0x000001f2 
- 00025722  0x00006b25 bbit0  0x00000000 , 0x0000646f 
- 00025723  0x00006b28 call  0x0000666d 
- 00025724  0x00006b29 jam  0x00000000 , 0x000041da 
- 00025725  0x00006b2b call  0x000064b0 
- 00025726  0x00006b2c call  0x000065c2 
- 00025727  0x00006b2d fetch  0x00000001 , 0x000001f3 
- 00025728  0x00006b2e bbit1  0x00000006 , 0x0000648e 
- 00025729  0x00006b2f call  0x000064aa 
- 00025730  0x00006b30 nbranch  0x00006486 , 0x0000002d 
- 00025731  0x00006b31 fetch  0x00000001 , 0x000001f2 
- 00025732  0x00006b32 bbit0  0x00000000 , 0x0000647d 
- 00025733  0x00006b33 branch  0x0000649b 
- 00025734  0x00006b35 call  0x000065bf 
- 00025735  0x00006b36 fetch  0x00000001 , 0x000001f3 
- 00025736  0x00006b37 bbit1  0x00000006 , 0x0000648e 
- 00025737  0x00006b38 call  0x000064aa 
- 00025738  0x00006b39 nbranch  0x0000648e , 0x0000002d 
- 00025739  0x00006b3a fetch  0x00000001 , 0x000001f2 
- 00025740  0x00006b3b bbit0  0x00000000 , 0x0000647d 
- 00025741  0x00006b3c branch  0x0000649b 
- 00025742  0x00006b3f jam  0x00000000 , 0x000041da 
- 00025743  0x00006b41 call  0x000064b0 
- 00025744  0x00006b42 fetch  0x00000001 , 0x000001f3 
- 00025745  0x00006b43 bbit1  0x00000005 , 0x0000649b 
- 00025746  0x00006b44 setarg  0x00000000 
- 00025747  0x00006b45 store  0x00000003 , 0x000001f6 
- 00025748  0x00006b46 call  0x00006502 
- 00025749  0x00006b47 arg  0x00006578 , 0x00000013 
- 00025750  0x00006b48 call  0x00006429 
- 00025751  0x00006b49 call  0x0000643c 
- 00025752  0x00006b4a nbranch  0x0000649b , 0x0000002d 
- 00025753  0x00006b4b fetch  0x00000001 , 0x000001f2 
- 00025754  0x00006b4c bbit0  0x00000000 , 0x0000648f 
- 00025755  0x00006b4f bmark1  0x0000002b , 0x0000649d 
- 00025756  0x00006b50 call  0x000064a3 
- 00025757  0x00006b52 fetch  0x00000001 , 0x000001f3 
- 00025758  0x00006b53 bbit0  0x00000004 , 0x000064a3 
- 00025759  0x00006b54 jam  0x00000021 , 0x00008050 
- 00025760  0x00006b55 call  0x00004c0e 
- 00025761  0x00006b57 call  0x00004c2e 
- 00025762  0x00006b58 branch  0x000064a1 
- 00025763  0x00006b5b setarg  0x00000000 
- 00025764  0x00006b5c store  0x00000008 , 0x00000206 
- 00025765  0x00006b5d store  0x00000008 , 0x0000020e 
- 00025766  0x00006b5e force  0x00000004 , 0x00000038 
- 00025767  0x00006b5f call  0x00007492 
- 00025768  0x00006b60 jam  0x00000021 , 0x00008050 
- 00025769  0x00006b61 rtn 
- 00025770  0x00006b65 setarg  0x00000000 
- 00025771  0x00006b66 store  0x00000002 , 0x000001f7 
- 00025772  0x00006b67 arg  0x000065e5 , 0x00000013 
- 00025773  0x00006b68 call  0x000065a3 
- 00025774  0x00006b69 call  0x00006429 
- 00025775  0x00006b6a branch  0x0000643c 
- 00025776  0x00006b6e fetch  0x00000001 , 0x000041da 
- 00025777  0x00006b6f increase  0x00000001 , 0x0000003f 
- 00025778  0x00006b70 sub  0x0000003f , 0x00000003 , 0x0000003e 
- 00025779  0x00006b71 nbranch  0x000064b6 , 0x00000002 
- 00025780  0x00006b72 store  0x00000001 , 0x000041da 
- 00025781  0x00006b73 rtn 
- 00025782  0x00006b76 call  0x000064a3 
- 00025783  0x00006b77 call  0x00007fa1 
- 00025784  0x00006b78 rtn 
- 00025785  0x00006b7d fetch  0x00000001 , 0x000001f2 
- 00025786  0x00006b7e lshift  0x0000003f , 0x0000003f 
- 00025787  0x00006b7f setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00025788  0x00006b80 isolate0  0x0000000f , 0x00000011 
- 00025789  0x00006b81 rtn  0x00000001 
- 00025790  0x00006b82 store  0x00000001 , 0x000001f2 
- 00025791  0x00006b83 rtn 
- 00025792  0x00006b87 hfetch  0x00000001 , 0x00008085 
- 00025793  0x00006b88 rtnbit0  0x00000001 
- 00025794  0x00006b89 branch  0x000064c6 
- 00025795  0x00006b8b hfetch  0x00000001 , 0x0000812c 
- 00025796  0x00006b8c qisolate1  0x0000003f 
- 00025797  0x00006b8d rtn  0x00000001 
- 00025798  0x00006b8f hfetch  0x00000001 , 0x00008108 
- 00025799  0x00006b90 bbit0  0x00000001 , 0x000064c3 
- 00025800  0x00006b91 call  0x00007422 
- 00025801  0x00006b92 branch  0x000064c3 
- 00025802  0x00006b97 fetch  0x00000002 , 0x00004199 
- 00025803  0x00006b98 rtn  0x00000034 
- 00025804  0x00006b99 jam  0x00000080 , 0x00008023 
- 00025805  0x00006b9a jam  0x00000000 , 0x00008022 
- 00025806  0x00006b9b jam  0x00000000 , 0x00008024 
- 00025807  0x00006b9c fetcht  0x00000002 , 0x0000419b 
- 00025808  0x00006b9d lshift2  0x00000002 , 0x00000039 
- 00025809  0x00006b9e iforce  0x00000006 
- 00025810  0x00006ba0 ifetch  0x00000001 , 0x00000006 
- 00025811  0x00006ba1 hstore  0x00000001 , 0x00008025 
- 00025812  0x00006ba2 loop  0x000064d2 
- 00025813  0x00006ba3 jam  0x00000000 , 0x00008023 
- 00025814  0x00006ba4 rtn 
- 00025815  0x00006baa bpatchx  0x0000008d , 0x00004031 
- 00025816  0x00006bab call  0x000064dd 
- 00025817  0x00006bac branch  0x000063f2 
- 00025818  0x00006baf call  0x000064dd 
- 00025819  0x00006bb0 call  0x000063ee 
- 00025820  0x00006bb1 branch  0x000063f6 
- 00025821  0x00006bb4 fetch  0x00000001 , 0x00004212 
- 00025822  0x00006bb5 hstore  0x00000001 , 0x00008086 
- 00025823  0x00006bb6 fetch  0x00000001 , 0x00004213 
- 00025824  0x00006bb7 hstore  0x00000001 , 0x00008087 
- 00025825  0x00006bb8 setarg  0x000001f5 
- 00025826  0x00006bb9 hstore  0x00000002 , 0x0000808a 
- 00025827  0x00006bba setarg  0x000001fa 
- 00025828  0x00006bbb hstore  0x00000002 , 0x0000808c 
- 00025829  0x00006bbc branch  0x000063ee 
- 00025830  0x00006bbf hfetch  0x00000001 , 0x00008086 
- 00025831  0x00006bc0 set1  0x00000007 , 0x0000003f 
- 00025832  0x00006bc1 hstore  0x00000001 , 0x00008086 
- 00025833  0x00006bc2 set0  0x00000007 , 0x0000003f 
- 00025834  0x00006bc3 hstore  0x00000001 , 0x00008086 
- 00025835  0x00006bc4 rtn 
- 00025836  0x00006bc9 set1  0x00000007 , 0x0000003f 
- 00025837  0x00006bca store  0x00000002 , 0x000001f5 
- 00025838  0x00006bcb bpatchx  0x0000008e , 0x00004031 
- 00025839  0x00006bcc jam  0x00000002 , 0x00008088 
- 00025840  0x00006bcd jam  0x00000000 , 0x0000808e 
- 00025841  0x00006bce jam  0x00000002 , 0x00008006 
- 00025842  0x00006bcf branch  0x000064fc 
- 00025843  0x00006bd3 force  0x00000001 , 0x00000002 
- 00025844  0x00006bd7 store  0x00000001 , 0x000001f5 
- 00025845  0x00006bd8 bpatchx  0x0000008f , 0x00004031 
- 00025846  0x00006bd9 jam  0x00000001 , 0x00008088 
- 00025847  0x00006bda hstoret  0x00000002 , 0x0000808e 
- 00025848  0x00006bdb jam  0x00000002 , 0x00008006 
- 00025849  0x00006bdc call  0x000064fc 
- 00025850  0x00006bdd fetch  0x00000001 , 0x000001fa 
- 00025851  0x00006bde rtn 
- 00025852  0x00006be1 fetch  0x00000002 , 0x000040d6 
- 00025853  0x00006be2 increase  0x00000001 , 0x0000003f 
- 00025854  0x00006be3 store  0x00000002 , 0x000040d6 
- 00025855  0x00006be4 hfetch  0x00000001 , 0x0000812c 
- 00025856  0x00006be5 bbit0  0x00000003 , 0x000064fc 
- 00025857  0x00006be6 rtn 
- 00025858  0x00006be9 jam  0x00000040 , 0x00008086 
- 00025859  0x00006bea jam  0x00000000 , 0x00008087 
- 00025860  0x00006beb hfetch  0x00000001 , 0x00008081 
- 00025861  0x00006bec set0  0x00000000 , 0x0000003f 
- 00025862  0x00006bed set1  0x00000001 , 0x0000003f 
- 00025863  0x00006bee hstore  0x00000001 , 0x00008081 
- 00025864  0x00006bef setarg  0x00000000 
- 00025865  0x00006bf0 store  0x00000004 , 0x000001f5 
- 00025866  0x00006bf1 rtn 
- 00025867  0x00006bf5 setarg  0x00000000 
- 00025868  0x00006bf6 hstore  0x00000002 , 0x0000808e 
- 00025869  0x00006bf7 setarg  0x00000001 
- 00025870  0x00006bf8 hstore  0x00000002 , 0x00008088 
- 00025871  0x00006bf9 setarg  0x000001f5 
- 00025872  0x00006bfa hstore  0x00000002 , 0x0000808a 
- 00025873  0x00006bfb jam  0x00000006 , 0x000001f5 
- 00025874  0x00006bfc jam  0x00000002 , 0x00008006 
- 00025875  0x00006bfd branch  0x000064fc 
- 00025876  0x00006c0d disable  0x00000028 
- 00025877  0x00006c0e copy  0x0000003f , 0x00000012 
- 00025878  0x00006c0f fetch  0x00000001 , 0x00004239 
- 00025879  0x00006c10 rtnne  0x00000000 
- 00025880  0x00006c11 enable  0x00000028 
- 00025881  0x00006c12 copy  0x00000012 , 0x0000003f 
- 00025882  0x00006c13 branch  0x00006522 
- 00025883  0x00006c17 fetch  0x00000001 , 0x00004239 
- 00025884  0x00006c18 beq  0x00000001 , 0x00006522 
- 00025885  0x00006c19 beq  0x00000002 , 0x00006528 
- 00025886  0x00006c1a beq  0x00000003 , 0x00006530 
- 00025887  0x00006c1b beq  0x00000004 , 0x00006537 
- 00025888  0x00006c1c beq  0x00000005 , 0x0000653d 
- 00025889  0x00006c1d rtn 
- 00025890  0x00006c20 store  0x00000003 , 0x00004232 
- 00025891  0x00006c21 copy  0x00000011 , 0x0000003f 
- 00025892  0x00006c22 store  0x00000002 , 0x00004235 
- 00025893  0x00006c23 storet  0x00000002 , 0x00004237 
- 00025894  0x00006c24 jam  0x00000002 , 0x00004239 
- 00025895  0x00006c25 branch  0x00006502 
- 00025896  0x00006c27 call  0x00006502 
- 00025897  0x00006c28 jam  0x00000003 , 0x00004239 
- 00025898  0x00006c29 call  0x0000650b 
- 00025899  0x00006c2a arg  0x000001f5 , 0x00000011 
- 00025900  0x00006c2b fetch  0x00000003 , 0x00004232 
- 00025901  0x00006c2c jam  0x00000004 , 0x00008088 
- 00025902  0x00006c2d arg  0x00000020 , 0x00000002 
- 00025903  0x00006c2e branch  0x00006556 
- 00025904  0x00006c31 call  0x00006502 
- 00025905  0x00006c32 call  0x0000650b 
- 00025906  0x00006c33 setarg  0x00000005 
- 00025907  0x00006c34 call  0x000064f3 
- 00025908  0x00006c35 rtnbit1  0x00000000 
- 00025909  0x00006c36 jam  0x00000004 , 0x00004239 
- 00025910  0x00006c37 rtn 
- 00025911  0x00006c39 call  0x00006502 
- 00025912  0x00006c3a jam  0x00000005 , 0x00004239 
- 00025913  0x00006c3b call  0x0000650b 
- 00025914  0x00006c3c call  0x0000654a 
- 00025915  0x00006c3d call  0x00006552 
- 00025916  0x00006c3e branch  0x00006545 
- 00025917  0x00006c40 call  0x00006502 
- 00025918  0x00006c41 call  0x0000650b 
- 00025919  0x00006c42 setarg  0x00000005 
- 00025920  0x00006c43 call  0x000064f3 
- 00025921  0x00006c44 rtnbit1  0x00000000 
- 00025922  0x00006c45 jam  0x00000000 , 0x00004239 
- 00025923  0x00006c46 fetch  0x00000002 , 0x00004201 
- 00025924  0x00006c47 branch  0x00007f9c 
- 00025925  0x00006c49 fetch  0x00000004 , 0x00000aa2 
- 00025926  0x00006c4a fetcht  0x00000002 , 0x00004235 
- 00025927  0x00006c4b increase  0xfffffffc , 0x00000002 
- 00025928  0x00006c4c istore  0x00000004 , 0x00000002 
- 00025929  0x00006c4d rtn 
- 00025930  0x00006c4f fetcht  0x00000002 , 0x00004235 
- 00025931  0x00006c50 copy  0x00000002 , 0x00000011 
- 00025932  0x00006c51 increase  0xfffffffc , 0x00000002 
- 00025933  0x00006c52 ifetch  0x00000004 , 0x00000002 
- 00025934  0x00006c53 store  0x00000004 , 0x00000aa2 
- 00025935  0x00006c54 fetcht  0x00000002 , 0x00004237 
- 00025936  0x00006c55 fetch  0x00000003 , 0x00004232 
- 00025937  0x00006c56 rtn 
- 00025938  0x00006c5b increase  0x00000004 , 0x00000002 
- 00025939  0x00006c5c hstoret  0x00000002 , 0x00008088 
- 00025940  0x00006c5d arg  0x00000002 , 0x00000002 
- 00025941  0x00006c5e increase  0xfffffffc , 0x00000011 
- 00025942  0x00006c61 istoret  0x00000001 , 0x00000011 
- 00025943  0x00006c62 rshift16  0x0000003f , 0x00000002 
- 00025944  0x00006c63 istoret  0x00000001 , 0x00000005 
- 00025945  0x00006c64 rshift8  0x0000003f , 0x00000002 
- 00025946  0x00006c65 istoret  0x00000001 , 0x00000005 
- 00025947  0x00006c66 istore  0x00000001 , 0x00000005 
- 00025948  0x00006c67 deposit  0x00000011 
- 00025949  0x00006c68 hstore  0x00000002 , 0x0000808a 
- 00025950  0x00006c69 setarg  0x00000000 
- 00025951  0x00006c6a hstore  0x00000002 , 0x0000808e 
- 00025952  0x00006c6b jam  0x00000002 , 0x00008006 
- 00025953  0x00006c6c branch  0x000064fc 
- 00025954  0x00006c71 hstoret  0x00000002 , 0x0000808e 
- 00025955  0x00006c72 rshift16  0x0000003f , 0x00000002 
- 00025956  0x00006c73 storet  0x00000001 , 0x000001f6 
- 00025957  0x00006c74 rshift8  0x0000003f , 0x00000002 
- 00025958  0x00006c75 storet  0x00000001 , 0x000001f7 
- 00025959  0x00006c76 store  0x00000001 , 0x000001f8 
- 00025960  0x00006c77 setarg  0x00000004 
- 00025961  0x00006c78 hstore  0x00000002 , 0x00008088 
- 00025962  0x00006c79 jam  0x00000003 , 0x000001f5 
- 00025963  0x00006c7a setarg  0x000001f5 
- 00025964  0x00006c7b hstore  0x00000002 , 0x0000808a 
- 00025965  0x00006c7c deposit  0x00000011 
- 00025966  0x00006c7d hstore  0x00000002 , 0x0000808c 
- 00025967  0x00006c7e hfetch  0x00000001 , 0x00008086 
- 00025968  0x00006c7f isolate0  0x0000000f , 0x00000011 
- 00025969  0x00006c80 setflag  0x00000001 , 0x00000006 , 0x0000003f 
- 00025970  0x00006c81 hstore  0x00000001 , 0x00008086 
- 00025971  0x00006c82 jam  0x00000002 , 0x00008006 
- 00025972  0x00006c84 hfetch  0x00000001 , 0x0000812c 
- 00025973  0x00006c85 bbit1  0x00000007 , 0x00006574 
- 00025974  0x00006c86 arg  0x00000003 , 0x00000007 
- 00025975  0x00006c87 branch  0x000064fc 
- 00025976  0x00006c8c hstoret  0x00000002 , 0x0000808e 
- 00025977  0x00006c8d setarg  0x00000004 
- 00025978  0x00006c8e hstore  0x00000002 , 0x00008088 
- 00025979  0x00006c8f jam  0x00000003 , 0x000001f5 
- 00025980  0x00006c90 setarg  0x000001f5 
- 00025981  0x00006c91 hstore  0x00000002 , 0x0000808a 
- 00025982  0x00006c92 deposit  0x00000011 
- 00025983  0x00006c93 hstore  0x00000002 , 0x0000808c 
- 00025984  0x00006c94 hfetch  0x00000001 , 0x00008086 
- 00025985  0x00006c95 isolate0  0x0000000f , 0x00000011 
- 00025986  0x00006c96 setflag  0x00000001 , 0x00000006 , 0x0000003f 
- 00025987  0x00006c97 hstore  0x00000001 , 0x00008086 
- 00025988  0x00006c98 jam  0x00000002 , 0x00008006 
- 00025989  0x00006c9a hfetch  0x00000001 , 0x0000812c 
- 00025990  0x00006c9b bbit1  0x00000007 , 0x00006585 
- 00025991  0x00006c9c arg  0x00000003 , 0x00000007 
- 00025992  0x00006c9d call  0x000064c0 
- 00025993  0x00006c9e call  0x000064fc 
- 00025994  0x00006c9f isolate1  0x00000002 , 0x0000003f 
- 00025995  0x00006ca0 call  0x000064b9 
- 00025996  0x00006ca1 fetch  0x00000001 , 0x000001f6 
- 00025997  0x00006ca2 lshift16  0x0000003f , 0x00000012 
- 00025998  0x00006ca3 fetch  0x00000001 , 0x000001f7 
- 00025999  0x00006ca4 lshift8  0x0000003f , 0x0000003f 
- 00026000  0x00006ca5 ior  0x00000012 , 0x00000012 
- 00026001  0x00006ca6 fetch  0x00000001 , 0x000001f8 
- 00026002  0x00006ca7 ior  0x00000012 , 0x0000003f 
- 00026003  0x00006ca8 iadd  0x00000002 , 0x0000003f 
- 00026004  0x00006ca9 store  0x00000001 , 0x000001f8 
- 00026005  0x00006caa rshift8  0x0000003f , 0x0000003f 
- 00026006  0x00006cab store  0x00000001 , 0x000001f7 
- 00026007  0x00006cac rshift8  0x0000003f , 0x0000003f 
- 00026008  0x00006cad store  0x00000001 , 0x000001f6 
- 00026009  0x00006cae rtn 
- 00026010  0x00006cb4 jam  0x00000001 , 0x00008010 
- 00026011  0x00006cb5 rtn 
- 00026012  0x00006cbc jam  0x0000000c , 0x00008091 
- 00026013  0x00006cbd jam  0x0000000d , 0x00008092 
- 00026014  0x00006cbe jam  0x0000000d , 0x00008093 
- 00026015  0x00006cbf jam  0x0000000d , 0x00008094 
- 00026016  0x00006cc0 jam  0x0000000d , 0x00008095 
- 00026017  0x00006cc1 jam  0x0000000c , 0x00008096 
- 00026018  0x00006cc2 branch  0x000065a9 
- 00026019  0x00006cc6 jam  0x00000005 , 0x00008091 
- 00026020  0x00006cc7 jam  0x00000007 , 0x00008092 
- 00026021  0x00006cc8 jam  0x00000007 , 0x00008093 
- 00026022  0x00006cc9 jam  0x00000007 , 0x00008094 
- 00026023  0x00006cca jam  0x00000007 , 0x00008095 
- 00026024  0x00006ccb jam  0x00000005 , 0x00008096 
- 00026025  0x00006ccd hfetch  0x00000001 , 0x0000807b 
- 00026026  0x00006cce or_into  0x000000c0 , 0x0000003f 
- 00026027  0x00006ccf hstore  0x00000001 , 0x0000807b 
- 00026028  0x00006cd0 hfetch  0x00000001 , 0x00008081 
- 00026029  0x00006cd1 or_into  0x00000010 , 0x0000003f 
- 00026030  0x00006cd2 hstore  0x00000001 , 0x00008081 
- 00026031  0x00006cd3 rtn 
- 00026032  0x00006cd8 hfetch  0x00000001 , 0x0000812c 
- 00026033  0x00006cd9 bbit0  0x00000005 , 0x000065b0 
- 00026034  0x00006cda rtn 
- 00026035  0x00006ce3 hstore  0x00000002 , 0x00008098 
- 00026036  0x00006ce4 deposit  0x00000011 
- 00026037  0x00006ce5 hstore  0x00000002 , 0x0000809a 
- 00026038  0x00006ce6 deposit  0x00000012 
- 00026039  0x00006ce7 hstore  0x00000002 , 0x0000809c 
- 00026040  0x00006ce8 deposit  0x00000002 
- 00026041  0x00006ce9 hstore  0x00000002 , 0x0000809e 
- 00026042  0x00006cea arg  0x00000001 , 0x00000002 
- 00026043  0x00006ceb nsetflag  0x00000034 , 0x00000001 , 0x00000002 
- 00026044  0x00006cec hstore  0x00000001 , 0x00008090 
- 00026045  0x00006ced jam  0x00000004 , 0x00008006 
- 00026046  0x00006cee branch  0x000065b0 
- 00026047  0x00006cf2 set1  0x00000028 , 0x00000000 
- 00026048  0x00006cf3 jam  0x00000008 , 0x00004211 
- 00026049  0x00006cf4 rtn 
- 00026050  0x00006cf7 set0  0x00000028 , 0x00000000 
- 00026051  0x00006cf8 jam  0x00000020 , 0x00004211 
- 00026052  0x00006cf9 rtn 
- 00026053  0x00006cfd fetch  0x00000001 , 0x00004203 
- 00026054  0x00006cfe iadd  0x00000012 , 0x0000003f 
- 00026055  0x00006cff store  0x00000001 , 0x000001f7 
- 00026056  0x00006d00 branch  0x000065cc 
- 00026057  0x00006d03 fetch  0x00000002 , 0x000001f7 
- 00026058  0x00006d04 byteswap  0x0000003f , 0x0000003f 
- 00026059  0x00006d05 store  0x00000001 , 0x000001f7 
- 00026060  0x00006d0b setarg  0x00000003 
- 00026061  0x00006d0c hstore  0x00000002 , 0x00008098 
- 00026062  0x00006d0d jam  0x000000a0 , 0x000001f6 
- 00026063  0x00006d0e jam  0x000000a1 , 0x000001f8 
- 00026064  0x00006d0f branch  0x000065eb 
- 00026065  0x00006d16 storet  0x00000002 , 0x00000aa2 
- 00026066  0x00006d17 call  0x000065d6 
- 00026067  0x00006d18 fetcht  0x00000002 , 0x00000aa2 
- 00026068  0x00006d19 call  0x00006606 
- 00026069  0x00006d1a branch  0x000065dd 
- 00026070  0x00006d1d fetch  0x00000001 , 0x0000423a 
- 00026071  0x00006d1e rtneq  0x000000ff 
- 00026072  0x00006d1f bbit0  0x00000006 , 0x000065db 
- 00026073  0x00006d20 setarg  0x000249f0 
- 00026074  0x00006d21 call  0x00002a8f 
- 00026075  0x00006d23 fetcht  0x00000001 , 0x0000423a 
- 00026076  0x00006d24 branch  0x00006829 
- 00026077  0x00006d27 fetcht  0x00000001 , 0x0000423a 
- 00026078  0x00006d28 branch  0x00006825 
- 00026079  0x00006d2e bpatchx  0x00000090 , 0x00004032 
- 00026080  0x00006d2f bmark1  0x00000028 , 0x000065c5 
- 00026081  0x00006d30 fetch  0x00000002 , 0x00004203 
- 00026082  0x00006d31 iadd  0x00000012 , 0x0000003f 
- 00026083  0x00006d32 byteswap  0x0000003f , 0x0000003f 
- 00026084  0x00006d33 store  0x00000002 , 0x000001f7 
- 00026085  0x00006d37 bpatchx  0x00000091 , 0x00004032 
- 00026086  0x00006d38 bmark1  0x00000028 , 0x000065c9 
- 00026087  0x00006d39 setarg  0x00000004 
- 00026088  0x00006d3a hstore  0x00000002 , 0x00008098 
- 00026089  0x00006d3b jam  0x000000a0 , 0x000001f6 
- 00026090  0x00006d3c jam  0x000000a1 , 0x000001f9 
- 00026091  0x00006d3e setarg  0x000001f6 
- 00026092  0x00006d3f hstore  0x00000002 , 0x0000809a 
- 00026093  0x00006d40 hstoret  0x00000002 , 0x0000809e 
- 00026094  0x00006d41 deposit  0x00000011 
- 00026095  0x00006d42 hstore  0x00000002 , 0x0000809c 
- 00026096  0x00006d43 setarg  0x00000002 
- 00026097  0x00006d44 isolate0  0x0000000f , 0x00000011 
- 00026098  0x00006d45 setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00026099  0x00006d46 hstore  0x00000001 , 0x00008090 
- 00026100  0x00006d47 jam  0x00000004 , 0x00008006 
- 00026101  0x00006d48 arg  0x00000005 , 0x00000007 
- 00026102  0x00006d49 call  0x000064c0 
- 00026103  0x00006d4a call  0x000065b0 
- 00026104  0x00006d4b isolate1  0x00000004 , 0x0000003f 
- 00026105  0x00006d4c call  0x000064b9 
- 00026106  0x00006d4d bmark1  0x00000028 , 0x00006601 
- 00026107  0x00006d4e fetch  0x00000002 , 0x000001f7 
- 00026108  0x00006d4f byteswap  0x0000003f , 0x0000003f 
- 00026109  0x00006d50 iadd  0x00000002 , 0x0000003f 
- 00026110  0x00006d51 byteswap  0x0000003f , 0x0000003f 
- 00026111  0x00006d52 store  0x00000002 , 0x000001f7 
- 00026112  0x00006d53 rtn 
- 00026113  0x00006d56 fetch  0x00000001 , 0x000001f7 
- 00026114  0x00006d57 iadd  0x00000002 , 0x0000003f 
- 00026115  0x00006d58 byteswap  0x0000003f , 0x0000003f 
- 00026116  0x00006d59 store  0x00000002 , 0x000001f7 
- 00026117  0x00006d5a rtn 
- 00026118  0x00006d61 fetch  0x00000002 , 0x00004203 
- 00026119  0x00006d62 iadd  0x00000012 , 0x0000003f 
- 00026120  0x00006d66 store  0x00000002 , 0x00000a9a 
- 00026121  0x00006d67 bpatchx  0x00000092 , 0x00004032 
- 00026122  0x00006d68 storet  0x00000002 , 0x00000aa2 
- 00026123  0x00006d69 copy  0x00000011 , 0x0000003f 
- 00026124  0x00006d6a store  0x00000002 , 0x00000ab9 
- 00026125  0x00006d6c call  0x0000661d 
- 00026126  0x00006d6e fetcht  0x00000002 , 0x00000ab2 
- 00026127  0x00006d6f fetch  0x00000002 , 0x00000ab9 
- 00026128  0x00006d70 copy  0x0000003f , 0x00000011 
- 00026129  0x00006d71 fetch  0x00000002 , 0x00000a9a 
- 00026130  0x00006d73 call  0x0000663d 
- 00026131  0x00006d75 fetch  0x00000002 , 0x00000ab2 
- 00026132  0x00006d76 fetcht  0x00000002 , 0x00000ab9 
- 00026133  0x00006d77 iadd  0x00000002 , 0x00000002 
- 00026134  0x00006d78 storet  0x00000002 , 0x00000ab9 
- 00026135  0x00006d79 fetcht  0x00000002 , 0x00000a9a 
- 00026136  0x00006d7a iadd  0x00000002 , 0x00000002 
- 00026137  0x00006d7b storet  0x00000002 , 0x00000a9a 
- 00026138  0x00006d7c fetch  0x00000002 , 0x00000aa2 
- 00026139  0x00006d7d nbranch  0x0000660d , 0x00000034 
- 00026140  0x00006d7e rtn 
- 00026141  0x00006d87 bpatchx  0x00000093 , 0x00004032 
- 00026142  0x00006d88 fetch  0x00000001 , 0x00004211 
- 00026143  0x00006d89 increase  0xffffffff , 0x0000003f 
- 00026144  0x00006d8a fetcht  0x00000002 , 0x00000a9a 
- 00026145  0x00006d8b ior  0x00000002 , 0x0000003f 
- 00026146  0x00006d8c increase  0x00000001 , 0x0000003f 
- 00026147  0x00006d8d store  0x00000003 , 0x00000ab6 
- 00026148  0x00006d8f fetch  0x00000002 , 0x00000aa2 
- 00026149  0x00006d90 iadd  0x00000002 , 0x0000003f 
- 00026150  0x00006d92 fetcht  0x00000003 , 0x00000ab6 
- 00026151  0x00006d93 isub  0x00000002 , 0x0000003f 
- 00026152  0x00006d94 nbranch  0x0000662f , 0x00000002 
- 00026153  0x00006d95 store  0x00000002 , 0x00000aa2 
- 00026154  0x00006d96 fetch  0x00000003 , 0x00000ab6 
- 00026155  0x00006d97 fetcht  0x00000002 , 0x00000a9a 
- 00026156  0x00006d98 isub  0x00000002 , 0x0000003f 
- 00026157  0x00006d99 store  0x00000002 , 0x00000ab2 
- 00026158  0x00006d9a rtn 
- 00026159  0x00006d9c fetch  0x00000002 , 0x00000aa2 
- 00026160  0x00006d9d store  0x00000002 , 0x00000ab2 
- 00026161  0x00006d9e setarg  0x00000000 
- 00026162  0x00006d9f store  0x00000002 , 0x00000aa2 
- 00026163  0x00006da0 rtn 
- 00026164  0x00006da3 increase  0x00000002 , 0x00000002 
- 00026165  0x00006da4 hstoret  0x00000002 , 0x00008098 
- 00026166  0x00006da5 increase  0xfffffffe , 0x00000011 
- 00026167  0x00006da6 ifetcht  0x00000003 , 0x00000011 
- 00026168  0x00006da7 copy  0x00000002 , 0x00000012 
- 00026169  0x00006da8 arg  0x000000a0 , 0x00000002 
- 00026170  0x00006da9 istoret  0x00000001 , 0x00000011 
- 00026171  0x00006dab istore  0x00000001 , 0x00000005 
- 00026172  0x00006dac branch  0x0000664a 
- 00026173  0x00006db0 copy  0x0000003f , 0x00000012 
- 00026174  0x00006db1 bpatchx  0x00000094 , 0x00004032 
- 00026175  0x00006db2 bmark1  0x00000028 , 0x00006634 
- 00026176  0x00006db3 copy  0x00000012 , 0x0000003f 
- 00026177  0x00006db4 increase  0x00000003 , 0x00000002 
- 00026178  0x00006db5 hstoret  0x00000002 , 0x00008098 
- 00026179  0x00006db6 increase  0xfffffffd , 0x00000011 
- 00026180  0x00006db7 ifetcht  0x00000003 , 0x00000011 
- 00026181  0x00006db8 copy  0x00000002 , 0x00000012 
- 00026182  0x00006db9 arg  0x000000a0 , 0x00000002 
- 00026183  0x00006dba istoret  0x00000001 , 0x00000011 
- 00026184  0x00006dbb byteswap  0x0000003f , 0x0000003f 
- 00026185  0x00006dbc istore  0x00000002 , 0x00000005 
- 00026186  0x00006dbe deposit  0x00000011 
- 00026187  0x00006dbf hstore  0x00000002 , 0x0000809a 
- 00026188  0x00006dc0 setarg  0x00000000 
- 00026189  0x00006dc1 hstore  0x00000002 , 0x0000809e 
- 00026190  0x00006dc2 jam  0x00000001 , 0x00008090 
- 00026191  0x00006dc3 jam  0x00000004 , 0x00008006 
- 00026192  0x00006dc4 call  0x000065b0 
- 00026193  0x00006dc5 copy  0x00000012 , 0x0000003f 
- 00026194  0x00006dc6 istore  0x00000003 , 0x00000011 
- 00026195  0x00006dc9 bpatchx  0x00000095 , 0x00004032 
- 00026196  0x00006dca jam  0x00000000 , 0x000001f9 
- 00026197  0x00006dcc setarg  0x00000001 
- 00026198  0x00006dcd hstore  0x00000002 , 0x00008098 
- 00026199  0x00006dce jam  0x000000a0 , 0x000001f6 
- 00026200  0x00006dcf setarg  0x000001f6 
- 00026201  0x00006dd0 hstore  0x00000002 , 0x0000809a 
- 00026202  0x00006dd1 setarg  0x00000000 
- 00026203  0x00006dd2 hstore  0x00000002 , 0x0000809e 
- 00026204  0x00006dd3 hstore  0x00000002 , 0x0000809c 
- 00026205  0x00006dd4 setarg  0x00000003 
- 00026206  0x00006dd5 hstore  0x00000001 , 0x00008090 
- 00026207  0x00006dd6 jam  0x00000004 , 0x00008006 
- 00026208  0x00006dd7 call  0x000065b0 
- 00026209  0x00006dd8 hfetch  0x00000001 , 0x0000812c 
- 00026210  0x00006dd9 rtnbit0  0x00000006 
- 00026211  0x00006dda nop  0x000005dc 
- 00026212  0x00006ddb fetch  0x00000001 , 0x000001f9 
- 00026213  0x00006ddc increase  0x00000001 , 0x0000003f 
- 00026214  0x00006ddd store  0x00000001 , 0x000001f9 
- 00026215  0x00006dde sub  0x0000003f , 0x00000028 , 0x0000003e 
- 00026216  0x00006ddf nrtn  0x00000002 
- 00026217  0x00006de0 branch  0x00006655 
- 00026218  0x00006de5 jam  0x00000070 , 0x00008973 
- 00026219  0x00006de6 nop  0x00000bb8 
- 00026220  0x00006de7 rtn 
- 00026221  0x00006dea jam  0x00000030 , 0x00008973 
- 00026222  0x00006deb rtn 
- 00026223  0x00006dee lshift3  0x0000003f , 0x0000003f 
- 00026224  0x00006def hstore  0x00000002 , 0x00008045 
- 00026225  0x00006df0 jam  0x00000000 , 0x0000804b 
- 00026226  0x00006df1 rtn 
- 00026227  0x00006df5 call  0x0000666f 
- 00026228  0x00006df6 call  0x000066a0 
- 00026229  0x00006df8 ifetcht  0x00000001 , 0x00000011 
- 00026230  0x00006df9 increase  0x00000001 , 0x00000011 
- 00026231  0x00006dfa force  0x00000000 , 0x00000007 
- 00026232  0x00006dfc qisolate0  0x00000002 
- 00026233  0x00006dfd branch  0x00006697 , 0x00000001 
- 00026234  0x00006dfe hfetch  0x00000001 , 0x00008046 
- 00026235  0x00006dff set1  0x00000006 , 0x0000003f 
- 00026236  0x00006e00 set1  0x00000007 , 0x0000003f 
- 00026237  0x00006e01 hstore  0x00000001 , 0x00008046 
- 00026238  0x00006e02 jam  0x00000002 , 0x00008047 
- 00026239  0x00006e03 jam  0x00000082 , 0x00008047 
- 00026240  0x00006e04 set0  0x00000007 , 0x0000003f 
- 00026241  0x00006e05 hstore  0x00000001 , 0x00008046 
- 00026242  0x00006e06 jam  0x0000008a , 0x00008047 
- 00026243  0x00006e07 nop  0x0000000b 
- 00026244  0x00006e08 jam  0x000000ca , 0x00008047 
- 00026245  0x00006e09 nop  0x00000021 
- 00026246  0x00006e0a jam  0x0000004a , 0x00008047 
- 00026247  0x00006e0b nop  0x0000002c 
- 00026248  0x00006e0c jam  0x000000ca , 0x00008047 
- 00026249  0x00006e0d nop  0x00000016 
- 00026250  0x00006e0e jam  0x0000008a , 0x00008047 
- 00026251  0x00006e0f nop  0x00000021 
- 00026252  0x00006e10 jam  0x00000082 , 0x00008047 
- 00026253  0x00006e11 nop  0x00000001 
- 00026254  0x00006e12 jam  0x00000092 , 0x00008047 
- 00026255  0x00006e13 nop  0x0000000a 
- 00026256  0x00006e14 jam  0x000000b2 , 0x00008047 
- 00026257  0x00006e15 hfetch  0x00000001 , 0x00008007 
- 00026258  0x00006e16 jam  0x00000092 , 0x00008047 
- 00026259  0x00006e17 nop  0x00000001 
- 00026260  0x00006e18 jam  0x00000082 , 0x00008047 
- 00026261  0x00006e19 qisolate0  0x0000003f 
- 00026262  0x00006e1a branch  0x00006678 , 0x00000001 
- 00026263  0x00006e1c hfetch  0x00000002 , 0x00008045 
- 00026264  0x00006e1d increase  0x00000001 , 0x0000003f 
- 00026265  0x00006e1e hstore  0x00000002 , 0x00008045 
- 00026266  0x00006e1f increase  0x00000001 , 0x00000007 
- 00026267  0x00006e20 compare  0x00000008 , 0x00000007 , 0x0000000f 
- 00026268  0x00006e21 nbranch  0x00006678 , 0x00000001 
- 00026269  0x00006e22 loop  0x00006675 
- 00026270  0x00006e23 jam  0x00000083 , 0x00008047 
- 00026271  0x00006e24 rtn 
- 00026272  0x00006e27 jam  0x00000082 , 0x00008047 
- 00026273  0x00006e28 nop  0x0000000c 
- 00026274  0x00006e29 jam  0x00000080 , 0x00008047 
- 00026275  0x00006e2a jam  0x00000082 , 0x00008047 
- 00026276  0x00006e2b nop  0x00000096 
- 00026277  0x00006e2c rtn 
- 00026278  0x00006e30 call  0x000066a0 
- 00026279  0x00006e31 jam  0x000000a2 , 0x00008047 
- 00026280  0x00006e32 deposit  0x00000011 
- 00026281  0x00006e33 hstore  0x00000002 , 0x00008048 
- 00026282  0x00006e34 set1  0x0000000b , 0x00000002 
- 00026283  0x00006e35 isolate0  0x0000000f , 0x0000003f 
- 00026284  0x00006e36 setflag  0x00000001 , 0x0000000f , 0x00000002 
- 00026285  0x00006e37 hstoret  0x00000002 , 0x0000804a 
- 00026286  0x00006e38 jam  0x00000001 , 0x00008006 
- 00026287  0x00006e39 rtn 
- 00026288  0x00006e3c hfetch  0x00000001 , 0x0000812c 
- 00026289  0x00006e3d bbit0  0x00000001 , 0x000066b0 
- 00026290  0x00006e3e rtn 
- 00026291  0x00006e42 call  0x0000666f 
- 00026292  0x00006e43 call  0x000066a6 
- 00026293  0x00006e44 call  0x000066b0 
- 00026294  0x00006e45 jam  0x00000083 , 0x00008047 
- 00026295  0x00006e46 rtn 
- 00026296  0x00006e4c hfetch  0x00000002 , 0x00008124 
- 00026297  0x00006e4d hstore  0x00000002 , 0x00008045 
- 00026298  0x00006e4e call  0x000066a6 
- 00026299  0x00006e4f arg  0x00000001 , 0x00000007 
- 00026300  0x00006e50 call  0x000064c0 
- 00026301  0x00006e51 call  0x000066b0 
- 00026302  0x00006e52 isolate1  0x00000000 , 0x0000003f 
- 00026303  0x00006e53 call  0x000064b9 
- 00026304  0x00006e54 jam  0x00000083 , 0x00008047 
- 00026305  0x00006e55 rtn 
- 00026306  0x00006e59 hfetch  0x00000002 , 0x0000805e 
- 00026307  0x00006e5a iforce  0x0000000a 
- 00026308  0x00006e5b rtn 
- 00026309  0x00006e5e deposit  0x0000000a 
- 00026310  0x00006e5f hstore  0x00000002 , 0x0000805e 
- 00026311  0x00006e60 rtn 
- 00026312  0x00006e63 deposit  0x00000003 
- 00026313  0x00006e64 hstore  0x00000002 , 0x00008058 
- 00026314  0x00006e65 rtn 
- 00026315  0x00006e68 hfetch  0x00000002 , 0x00008058 
- 00026316  0x00006e69 copy  0x0000003f , 0x00000003 
- 00026317  0x00006e6a rtn 
- 00026318  0x00006e6d fetch  0x00000002 , 0x00004243 
- 00026319  0x00006e6e hstore  0x00000002 , 0x00008052 
- 00026320  0x00006e6f rtn 
- 00026321  0x00006e72 deposit  0x00000039 
- 00026322  0x00006e73 rtn  0x00000034 
- 00026323  0x00006e75 increase  0xfffffff8 , 0x00000039 
- 00026324  0x00006e76 call  0x000066de , 0x00000002 
- 00026325  0x00006e77 rtn  0x00000005 
- 00026326  0x00006e78 branch  0x000066d3 , 0x00000002 
- 00026327  0x00006e79 increase  0x00000008 , 0x00000039 
- 00026328  0x00006e7b increase  0xfffffffc , 0x00000039 
- 00026329  0x00006e7c call  0x000066e1 , 0x00000002 
- 00026330  0x00006e7d rtn  0x00000005 
- 00026331  0x00006e7e branch  0x000066d8 , 0x00000002 
- 00026332  0x00006e7f increase  0x00000004 , 0x00000039 
- 00026333  0x00006e80 branch  0x000066e4 
- 00026334  0x00006e83 ifetch  0x00000008 , 0x00000006 
- 00026335  0x00006e84 istore  0x00000008 , 0x0000000a 
- 00026336  0x00006e85 rtn 
- 00026337  0x00006e88 ifetch  0x00000004 , 0x00000006 
- 00026338  0x00006e89 istore  0x00000004 , 0x0000000a 
- 00026339  0x00006e8a rtn 
- 00026340  0x00006e8d deposit  0x00000039 
- 00026341  0x00006e8e rtn  0x00000034 
- 00026342  0x00006e90 ifetch  0x00000001 , 0x00000006 
- 00026343  0x00006e91 istore  0x00000001 , 0x0000000a 
- 00026344  0x00006e92 loop  0x000066e6 
- 00026345  0x00006e93 rtn 
- 00026346  0x00006e96 deposit  0x00000039 
- 00026347  0x00006e97 rtn  0x00000034 
- 00026348  0x00006e99 increase  0xfffffff8 , 0x00000039 
- 00026349  0x00006e9a call  0x000066f7 , 0x00000002 
- 00026350  0x00006e9b rtn  0x00000005 
- 00026351  0x00006e9c branch  0x000066ec , 0x00000002 
- 00026352  0x00006e9d increase  0x00000008 , 0x00000039 
- 00026353  0x00006e9f increase  0xfffffffc , 0x00000039 
- 00026354  0x00006ea0 call  0x000066fa , 0x00000002 
- 00026355  0x00006ea1 rtn  0x00000005 
- 00026356  0x00006ea2 branch  0x000066f1 , 0x00000002 
- 00026357  0x00006ea3 increase  0x00000004 , 0x00000039 
- 00026358  0x00006ea4 branch  0x000066fd 
- 00026359  0x00006ea7 ifetch  0x00000008 , 0x00000003 
- 00026360  0x00006ea8 istore  0x00000008 , 0x00000005 
- 00026361  0x00006ea9 rtn 
- 00026362  0x00006eac ifetch  0x00000004 , 0x00000003 
- 00026363  0x00006ead istore  0x00000004 , 0x00000005 
- 00026364  0x00006eae rtn 
- 00026365  0x00006eb2 deposit  0x00000039 
- 00026366  0x00006eb3 rtn  0x00000034 
- 00026367  0x00006eb5 ifetch  0x00000001 , 0x00000003 
- 00026368  0x00006eb6 istore  0x00000001 , 0x00000005 
- 00026369  0x00006eb7 loop  0x000066ff 
- 00026370  0x00006eb8 rtn 
- 00026371  0x00006ebc deposit  0x00000039 
- 00026372  0x00006ebd rtn  0x00000034 
- 00026373  0x00006ebf ifetch  0x00000001 , 0x00000003 
- 00026374  0x00006ec0 istore  0x00000001 , 0x0000000a 
- 00026375  0x00006ec1 loop  0x00006705 
- 00026376  0x00006ec2 rtn 
- 00026377  0x00006ec8 jam  0x0000003d , 0x00000a99 
- 00026378  0x00006ec9 branch  0x00007d86 
- 00026379  0x00006ecd bpatchx  0x00000096 , 0x00004032 
- 00026380  0x00006ece fetch  0x00000001 , 0x00004217 
- 00026381  0x00006ecf rtn  0x00000034 
- 00026382  0x00006ed0 call  0x000067a3 
- 00026383  0x00006ed1 call  0x000067a9 , 0x00000005 
- 00026384  0x00006ed2 call  0x0000673e 
- 00026385  0x00006ed4 fetch  0x00000001 , 0x00004217 
- 00026386  0x00006ed5 icopy  0x00000013 
- 00026387  0x00006ed6 fetcht  0x00000002 , 0x00004215 
- 00026388  0x00006ed7 storet  0x00000002 , 0x0000018c 
- 00026389  0x00006ed9 copy  0x00000013 , 0x0000003f 
- 00026390  0x00006eda branch  0x00006709 , 0x00000034 
- 00026391  0x00006edb increase  0xffffffff , 0x00000013 
- 00026392  0x00006edc copy  0x00000002 , 0x00000011 
- 00026393  0x00006edd ifetch  0x00000001 , 0x00000011 
- 00026394  0x00006ede fetcht  0x00000001 , 0x00000184 
- 00026395  0x00006edf isub  0x00000002 , 0x0000003e 
- 00026396  0x00006ee0 call  0x00006725 , 0x00000005 
- 00026397  0x00006ee1 branch  0x00006721 , 0x00000002 
- 00026398  0x00006ee2 ifetch  0x00000001 , 0x00000011 
- 00026399  0x00006ee3 increase  0x00000001 , 0x0000003f 
- 00026400  0x00006ee4 istore  0x00000001 , 0x00000011 
- 00026401  0x00006ee6 fetcht  0x00000002 , 0x0000018c 
- 00026402  0x00006ee7 increase  0x00000022 , 0x00000002 
- 00026403  0x00006ee8 storet  0x00000002 , 0x0000018c 
- 00026404  0x00006ee9 branch  0x00006715 
- 00026405  0x00006eec setarg  0x00000000 
- 00026406  0x00006eed istore  0x00000001 , 0x00000011 
- 00026407  0x00006eee fetch  0x00000001 , 0x00000185 
- 00026408  0x00006eef istore  0x00000001 , 0x00000005 
- 00026409  0x00006ef0 bne  0x00000033 , 0x00006733 
- 00026410  0x00006ef1 arg  0x000041be , 0x00000012 
- 00026411  0x00006ef3 ifetch  0x00000006 , 0x00000006 
- 00026412  0x00006ef4 istore  0x00000008 , 0x00000005 
- 00026413  0x00006ef5 setarg  0x00000000 
- 00026414  0x00006ef6 istore  0x00000008 , 0x00000005 
- 00026415  0x00006ef7 copy  0x00000012 , 0x00000006 
- 00026416  0x00006ef9 call  0x00007ebf 
- 00026417  0x00006efa force  0x00000001 , 0x0000003e 
- 00026418  0x00006efb rtn 
- 00026419  0x00006efe beq  0x00000036 , 0x00006737 
- 00026420  0x00006eff beq  0x00000037 , 0x0000673b 
- 00026421  0x00006f00 arg  0x00004419 , 0x00000012 
- 00026422  0x00006f01 branch  0x0000672b 
- 00026423  0x00006f04 arg  0x000044d5 , 0x00000006 
- 00026424  0x00006f05 call  0x00007ebf 
- 00026425  0x00006f07 arg  0x00004419 , 0x00000006 
- 00026426  0x00006f08 branch  0x00006730 
- 00026427  0x00006f0b arg  0x000044cd , 0x00000006 
- 00026428  0x00006f0c call  0x00007ebf 
- 00026429  0x00006f0d branch  0x00006739 
- 00026430  0x00006f11 call  0x00007fe9 
- 00026431  0x00006f12 fetch  0x00000001 , 0x00004217 
- 00026432  0x00006f13 rtn  0x00000034 
- 00026433  0x00006f14 fetch  0x00000002 , 0x00004682 
- 00026434  0x00006f15 bbit1  0x00000000 , 0x00006754 
- 00026435  0x00006f17 bpatchx  0x00000097 , 0x00004032 
- 00026436  0x00006f18 fetch  0x00000001 , 0x0000448e 
- 00026437  0x00006f19 beq  0x00000000 , 0x0000674d 
- 00026438  0x00006f1a fetch  0x00000001 , 0x00000454 
- 00026439  0x00006f1b compare  0x000000c0 , 0x0000003f , 0x000000c0 
- 00026440  0x00006f1c branch  0x0000674d , 0x00000001 
- 00026441  0x00006f1d compare  0x00000040 , 0x0000003f , 0x000000c0 
- 00026442  0x00006f1e branch  0x00006752 , 0x00000001 
- 00026443  0x00006f1f compare  0x00000000 , 0x0000003f , 0x000000c0 
- 00026444  0x00006f20 branch  0x00006750 , 0x00000001 
- 00026445  0x00006f22 jam  0x00000035 , 0x00000185 
- 00026446  0x00006f23 fetch  0x00000006 , 0x0000044f 
- 00026447  0x00006f24 branch  0x00006757 
- 00026448  0x00006f27 jam  0x00000037 , 0x00000185 
- 00026449  0x00006f28 branch  0x00006757 
- 00026450  0x00006f2c jam  0x00000036 , 0x00000185 
- 00026451  0x00006f2d branch  0x00006757 
- 00026452  0x00006f31 bpatchx  0x00000098 , 0x00004033 
- 00026453  0x00006f32 jam  0x00000033 , 0x00000185 
- 00026454  0x00006f33 fetch  0x00000006 , 0x00000040 
- 00026455  0x00006f35 store  0x00000006 , 0x00000186 
- 00026456  0x00006f36 fetch  0x00000002 , 0x00004215 
- 00026457  0x00006f37 ifetcht  0x00000001 , 0x0000003f 
- 00026458  0x00006f38 pincrease  0x00000001 
- 00026459  0x00006f39 store  0x00000002 , 0x0000018c 
- 00026460  0x00006f3a storet  0x00000001 , 0x00000184 
- 00026461  0x00006f3b fetch  0x00000001 , 0x00004217 
- 00026462  0x00006f3c icopy  0x00000013 
- 00026463  0x00006f3e fetch  0x00000002 , 0x0000018c 
- 00026464  0x00006f3f copy  0x0000003f , 0x00000011 
- 00026465  0x00006f40 call  0x0000676f 
- 00026466  0x00006f41 rtn  0x00000028 
- 00026467  0x00006f42 fetcht  0x00000002 , 0x0000018c 
- 00026468  0x00006f43 increase  0x00000022 , 0x00000002 
- 00026469  0x00006f44 storet  0x00000002 , 0x0000018c 
- 00026470  0x00006f45 increase  0xffffffff , 0x00000002 
- 00026471  0x00006f46 ifetch  0x00000001 , 0x00000002 
- 00026472  0x00006f47 store  0x00000001 , 0x00000184 
- 00026473  0x00006f48 increase  0xffffffff , 0x00000013 
- 00026474  0x00006f49 nbranch  0x0000675f , 0x00000005 
- 00026475  0x00006f4a fetch  0x00000001 , 0x00004217 
- 00026476  0x00006f4b pincrease  0xffffffff 
- 00026477  0x00006f4c store  0x00000001 , 0x00000184 
- 00026478  0x00006f4d rtn 
- 00026479  0x00006f4f fetch  0x00000001 , 0x00000185 
- 00026480  0x00006f50 bne  0x00000033 , 0x00006776 
- 00026481  0x00006f52 arg  0x00000185 , 0x00000012 
- 00026482  0x00006f53 arg  0x00000007 , 0x00000039 
- 00026483  0x00006f54 call  0x00007f88 
- 00026484  0x00006f55 branch  0x00007fe7 , 0x00000005 
- 00026485  0x00006f56 rtn 
- 00026486  0x00006f59 beq  0x00000036 , 0x00006779 
- 00026487  0x00006f5a beq  0x00000037 , 0x00006794 
- 00026488  0x00006f5b branch  0x00006771 
- 00026489  0x00006f5e ifetcht  0x00000001 , 0x00000011 
- 00026490  0x00006f5f isub  0x00000002 , 0x0000003e 
- 00026491  0x00006f60 nrtn  0x00000005 
- 00026492  0x00006f61 arg  0x00000ac2 , 0x00000005 
- 00026493  0x00006f62 arg  0x00000010 , 0x00000039 
- 00026494  0x00006f63 call  0x00007ed4 
- 00026495  0x00006f64 fetch  0x00000003 , 0x00000452 
- 00026496  0x00006f65 store  0x00000003 , 0x00000ac2 
- 00026497  0x00006f66 call  0x0000678b 
- 00026498  0x00006f67 fetch  0x00000002 , 0x00000adf 
- 00026499  0x00006f68 byteswap  0x0000003f , 0x0000003f 
- 00026500  0x00006f69 lshift8  0x0000003f , 0x00000002 
- 00026501  0x00006f6a ifetch  0x00000001 , 0x00000006 
- 00026502  0x00006f6b iadd  0x00000002 , 0x0000003f 
- 00026503  0x00006f6c fetcht  0x00000003 , 0x0000044f 
- 00026504  0x00006f6d isub  0x00000002 , 0x0000003e 
- 00026505  0x00006f6e branch  0x00007fe7 , 0x00000005 
- 00026506  0x00006f6f rtn 
- 00026507  0x00006f73 arg  0x00000ac2 , 0x00000006 
- 00026508  0x00006f74 call  0x00007486 
- 00026509  0x00006f76 ifetch  0x00000001 , 0x00000011 
- 00026510  0x00006f77 call  0x00007487 
- 00026511  0x00006f78 force  0x00000038 , 0x00000036 
- 00026512  0x00006f79 force  0x00000000 , 0x00000036 
- 00026513  0x00006f7a call  0x0000741d 
- 00026514  0x00006f7b arg  0x00000ad2 , 0x00000005 
- 00026515  0x00006f7c branch  0x00007497 
- 00026516  0x00006f7f ifetcht  0x00000001 , 0x00000011 
- 00026517  0x00006f80 isub  0x00000002 , 0x0000003e 
- 00026518  0x00006f81 nrtn  0x00000005 
- 00026519  0x00006f82 copy  0x00000006 , 0x00000011 
- 00026520  0x00006f83 add  0x00000006 , 0x00000008 , 0x00000013 
- 00026521  0x00006f84 arg  0x000044cd , 0x00000012 
- 00026522  0x00006f85 arg  0x00000008 , 0x00000039 
- 00026523  0x00006f86 call  0x00007f88 
- 00026524  0x00006f87 branch  0x00007fe7 , 0x00000005 
- 00026525  0x00006f88 copy  0x00000013 , 0x00000011 
- 00026526  0x00006f89 arg  0x000044d5 , 0x00000012 
- 00026527  0x00006f8a arg  0x00000008 , 0x00000039 
- 00026528  0x00006f8b call  0x00007f88 
- 00026529  0x00006f8c branch  0x00007fe7 , 0x00000005 
- 00026530  0x00006f8d rtn 
- 00026531  0x00006f90 fetch  0x00000002 , 0x00004215 
- 00026532  0x00006f91 ifetcht  0x00000001 , 0x0000003f 
- 00026533  0x00006f92 pincrease  0x00000022 
- 00026534  0x00006f93 ifetch  0x00000001 , 0x0000003f 
- 00026535  0x00006f94 isub  0x00000002 , 0x0000003e 
- 00026536  0x00006f95 rtn 
- 00026537  0x00006f98 fetch  0x00000001 , 0x00004217 
- 00026538  0x00006f99 icopy  0x00000039 
- 00026539  0x00006f9a fetcht  0x00000002 , 0x00004215 
- 00026540  0x00006f9b setarg  0x00000000 
- 00026541  0x00006f9d istore  0x00000001 , 0x00000002 
- 00026542  0x00006f9e increase  0x00000022 , 0x00000002 
- 00026543  0x00006f9f pincrease  0x00000001 
- 00026544  0x00006fa0 loop  0x000067ad 
- 00026545  0x00006fa1 rtn 
- 00026546  0x00006fa4 bpatchx  0x00000099 , 0x00004033 
- 00026547  0x00006fa5 call  0x0000673e 
- 00026548  0x00006fa6 fetch  0x00000001 , 0x00000030 
- 00026549  0x00006fa7 setflag  0x00000028 , 0x00000006 , 0x0000003f 
- 00026550  0x00006fa8 store  0x00000001 , 0x00000030 
- 00026551  0x00006fa9 nbranch  0x000067bc , 0x00000028 
- 00026552  0x00006faa add  0x00000011 , 0x0000000a , 0x00000006 
- 00026553  0x00006fac arg  0x000041be , 0x00000005 
- 00026554  0x00006fad call  0x00007ebf 
- 00026555  0x00006fae branch  0x000067d7 
- 00026556  0x00006fb0 jam  0x00000000 , 0x000041bd 
- 00026557  0x00006fb1 rtn 
- 00026558  0x00006fb4 fetch  0x00000009 , 0x000044cb 
- 00026559  0x00006fb5 branch  0x000067ca , 0x00000034 
- 00026560  0x00006fb6 call  0x0000673e 
- 00026561  0x00006fb7 nbranch  0x000067ca , 0x00000028 
- 00026562  0x00006fb8 fetch  0x00000002 , 0x0000018c 
- 00026563  0x00006fb9 add  0x0000003f , 0x00000001 , 0x00000006 
- 00026564  0x00006fba arg  0x000044d5 , 0x00000005 
- 00026565  0x00006fbb call  0x00007ebf 
- 00026566  0x00006fbc arg  0x00004419 , 0x00000005 
- 00026567  0x00006fbd call  0x00007ebf 
- 00026568  0x00006fbe jam  0x00000001 , 0x00004429 
- 00026569  0x00006fbf rtn 
- 00026570  0x00006fc2 jam  0x00000000 , 0x00004429 
- 00026571  0x00006fc3 rtn 
- 00026572  0x00006fc7 fetch  0x00000006 , 0x0000044f 
- 00026573  0x00006fc8 store  0x00000006 , 0x00000186 
- 00026574  0x00006fc9 jam  0x00000034 , 0x00000185 
- 00026575  0x00006fca branch  0x000067d3 
- 00026576  0x00006fcc fetch  0x00000006 , 0x00000040 
- 00026577  0x00006fcd store  0x00000006 , 0x00000186 
- 00026578  0x00006fce jam  0x00000033 , 0x00000185 
- 00026579  0x00006fd0 fetch  0x00000001 , 0x00004092 
- 00026580  0x00006fd1 beq  0x0000000a , 0x0000670b 
- 00026581  0x00006fd2 bbit1  0x00000006 , 0x000042da 
- 00026582  0x00006fd3 rtn 
- 00026583  0x00006fd7 fetch  0x00000008 , 0x000041be 
- 00026584  0x00006fd8 fetcht  0x00000008 , 0x000041c6 
- 00026585  0x00006fd9 ior  0x00000002 , 0x0000003f 
- 00026586  0x00006fda rtn  0x00000034 
- 00026587  0x00006fdb jam  0x00000001 , 0x000041bd 
- 00026588  0x00006fdc rtn 
- 00026589  0x00006fe4 bpatchx  0x0000009a , 0x00004033 
- 00026590  0x00006fe5 set1  0x00000007 , 0x00000002 
- 00026591  0x00006fe6 call  0x0000681d 
- 00026592  0x00006fe7 nsetflag  0x00000001 , 0x00000007 , 0x00000002 
- 00026593  0x00006fed bpatchx  0x0000009b , 0x00004033 
- 00026594  0x00006fee sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00026595  0x00006fef rtn  0x00000005 
- 00026596  0x00006ff0 isolate0  0x00000007 , 0x00000002 
- 00026597  0x00006ff1 and  0x00000002 , 0x0000001f , 0x00000007 
- 00026598  0x00006ff2 fetch  0x00000004 , 0x000000a1 
- 00026599  0x00006ff3 qsetflag  0x00000001 , 0x0000003f 
- 00026600  0x00006ff4 store  0x00000004 , 0x000000a1 
- 00026601  0x00006ff5 fetch  0x00000004 , 0x000000a5 
- 00026602  0x00006ff6 nqsetflag  0x00000001 , 0x0000003f 
- 00026603  0x00006ff7 store  0x00000004 , 0x000000a5 
- 00026604  0x00006ff8 rtn 
- 00026605  0x00006ffc bpatchx  0x0000009c , 0x00004033 
- 00026606  0x00006ffd sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00026607  0x00006ffe rtn  0x00000005 
- 00026608  0x00006fff isolate0  0x00000007 , 0x00000002 
- 00026609  0x00007000 and  0x00000002 , 0x0000001f , 0x00000007 
- 00026610  0x00007001 fetch  0x00000004 , 0x000000a1 
- 00026611  0x00007002 qset0  0x0000003f 
- 00026612  0x00007003 store  0x00000004 , 0x000000a1 
- 00026613  0x00007004 fetch  0x00000004 , 0x000000a5 
- 00026614  0x00007005 qset0  0x0000003f 
- 00026615  0x00007006 store  0x00000004 , 0x000000a5 
- 00026616  0x00007007 rtn 
- 00026617  0x0000700b call  0x000067ed 
- 00026618  0x0000700c branch  0x000067fe 
- 00026619  0x00007010 sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00026620  0x00007011 rtn  0x00000005 
- 00026621  0x00007012 ncall  0x000067e1 , 0x0000002b 
- 00026622  0x00007015 arg  0x0000807c , 0x00000005 
- 00026623  0x00007016 call  0x00006830 
- 00026624  0x00007017 setflip  0x00000007 , 0x00000002 
- 00026625  0x00007018 arg  0x00008078 , 0x00000005 
- 00026626  0x00007019 call  0x00006830 
- 00026627  0x0000701a set0  0x00000007 , 0x00000002 
- 00026628  0x0000701b arg  0x00008070 , 0x00000005 
- 00026629  0x0000701c branch  0x00006830 
- 00026630  0x00007020 arg  0x0000807c , 0x00000005 
- 00026631  0x00007021 call  0x00006830 
- 00026632  0x00007022 set0  0x00000007 , 0x00000002 
- 00026633  0x00007023 arg  0x00008078 , 0x00000005 
- 00026634  0x00007024 call  0x00006830 
- 00026635  0x00007025 set0  0x00000007 , 0x00000002 
- 00026636  0x00007026 arg  0x00008070 , 0x00000005 
- 00026637  0x00007027 branch  0x00006830 
- 00026638  0x0000702c sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00026639  0x0000702d rtn  0x00000005 
- 00026640  0x0000702e setflip  0x00000007 , 0x00000002 
- 00026641  0x0000702f call  0x0000682f 
- 00026642  0x00007031 set1  0x00000007 , 0x00000002 
- 00026643  0x00007032 arg  0x00008070 , 0x00000005 
- 00026644  0x00007033 branch  0x00006830 
- 00026645  0x00007036 and  0x00000002 , 0x00000007 , 0x00000007 
- 00026646  0x00007037 rshift3  0x00000002 , 0x0000003f 
- 00026647  0x00007038 and_into  0x00000003 , 0x0000003f 
- 00026648  0x00007039 iadd  0x00000005 , 0x00000005 
- 00026649  0x0000703a ifetch  0x00000001 , 0x00000005 
- 00026650  0x0000703b rtn 
- 00026651  0x0000703e arg  0x00008074 , 0x00000005 
- 00026652  0x0000703f branch  0x0000681e 
- 00026653  0x00007044 arg  0x0000811c , 0x00000005 
- 00026654  0x00007046 call  0x00006815 
- 00026655  0x00007047 isolate1  0x00000007 , 0x00000002 
- 00026656  0x00007048 branch  0x00006823 , 0x00000001 
- 00026657  0x00007049 qisolate0  0x0000003f 
- 00026658  0x0000704a rtn 
- 00026659  0x0000704c qisolate1  0x0000003f 
- 00026660  0x0000704d rtn 
- 00026661  0x00007050 sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00026662  0x00007051 rtn  0x00000005 
- 00026663  0x00007052 isolate1  0x00000007 , 0x0000003e 
- 00026664  0x00007053 branch  0x0000682c 
- 00026665  0x00007056 sub  0x00000002 , 0x000000ff , 0x0000003e 
- 00026666  0x00007057 rtn  0x00000005 
- 00026667  0x00007058 isolate0  0x00000007 , 0x0000003e 
- 00026668  0x0000705c setarg  0x00000000 
- 00026669  0x0000705d nsetflag  0x00000001 , 0x00000007 , 0x0000003f 
- 00026670  0x0000705e ixor  0x00000002 , 0x00000002 
- 00026671  0x00007062 arg  0x00008074 , 0x00000005 
- 00026672  0x00007066 call  0x00006815 
- 00026673  0x00007067 isolate1  0x00000007 , 0x00000002 
- 00026674  0x00007068 qsetflag  0x00000001 , 0x0000003f 
- 00026675  0x00007069 istore  0x00000001 , 0x00000005 
- 00026676  0x0000706a rtn 
- 00026677  0x0000706d arg  0xffffffff , 0x00000011 
- 00026678  0x0000706e hfetch  0x00000001 , 0x00008081 
- 00026679  0x0000706f compare  0x00000002 , 0x0000003f , 0x00000003 
- 00026680  0x00007070 call  0x00006878 , 0x00000001 
- 00026681  0x00007072 compare  0x00000001 , 0x0000003f , 0x00000003 
- 00026682  0x00007073 call  0x0000687a , 0x00000001 
- 00026683  0x00007075 compare  0x00000003 , 0x0000003f , 0x00000003 
- 00026684  0x00007076 call  0x0000687a , 0x00000001 
- 00026685  0x00007078 isolate1  0x00000002 , 0x0000003f 
- 00026686  0x00007079 call  0x00006874 , 0x00000001 
- 00026687  0x0000707b isolate1  0x00000003 , 0x0000003f 
- 00026688  0x0000707c call  0x00006876 , 0x00000001 
- 00026689  0x0000707e isolate1  0x00000004 , 0x0000003f 
- 00026690  0x0000707f call  0x0000687c , 0x00000001 
- 00026691  0x00007081 isolate1  0x00000006 , 0x0000003f 
- 00026692  0x00007082 nsetflag  0x00000001 , 0x00000004 , 0x00000011 
- 00026693  0x00007084 isolate1  0x00000007 , 0x0000003f 
- 00026694  0x00007085 nsetflag  0x00000001 , 0x00000005 , 0x00000011 
- 00026695  0x00007087 hfetch  0x00000001 , 0x00008082 
- 00026696  0x00007088 isolate1  0x00000000 , 0x0000003f 
- 00026697  0x00007089 nsetflag  0x00000001 , 0x0000001b , 0x00000011 
- 00026698  0x0000708a isolate1  0x00000001 , 0x0000003f 
- 00026699  0x0000708b nsetflag  0x00000001 , 0x0000001c , 0x00000011 
- 00026700  0x0000708c isolate1  0x00000002 , 0x0000003f 
- 00026701  0x0000708d nsetflag  0x00000001 , 0x00000003 , 0x00000011 
- 00026702  0x0000708e isolate1  0x00000003 , 0x0000003f 
- 00026703  0x0000708f nsetflag  0x00000001 , 0x00000008 , 0x00000011 
- 00026704  0x00007090 isolate1  0x00000004 , 0x0000003f 
- 00026705  0x00007091 nsetflag  0x00000001 , 0x00000014 , 0x00000011 
- 00026706  0x00007092 isolate1  0x00000005 , 0x0000003f 
- 00026707  0x00007093 nsetflag  0x00000001 , 0x00000015 , 0x00000011 
- 00026708  0x00007094 isolate1  0x00000006 , 0x0000003f 
- 00026709  0x00007095 nsetflag  0x00000001 , 0x00000016 , 0x00000011 
- 00026710  0x00007096 isolate1  0x00000007 , 0x0000003f 
- 00026711  0x00007097 nsetflag  0x00000001 , 0x00000017 , 0x00000011 
- 00026712  0x00007099 hfetch  0x00000001 , 0x00008080 
- 00026713  0x0000709a isolate1  0x00000000 , 0x0000003f 
- 00026714  0x0000709b nsetflag  0x00000001 , 0x00000005 , 0x00000011 
- 00026715  0x0000709c isolate1  0x00000001 , 0x0000003f 
- 00026716  0x0000709d nsetflag  0x00000001 , 0x00000006 , 0x00000011 
- 00026717  0x0000709e isolate1  0x00000002 , 0x0000003f 
- 00026718  0x0000709f nsetflag  0x00000001 , 0x00000007 , 0x00000011 
- 00026719  0x000070a0 isolate1  0x00000003 , 0x0000003f 
- 00026720  0x000070a1 nsetflag  0x00000001 , 0x00000012 , 0x00000011 
- 00026721  0x000070a2 isolate1  0x00000004 , 0x0000003f 
- 00026722  0x000070a3 nsetflag  0x00000001 , 0x00000013 , 0x00000011 
- 00026723  0x000070a4 isolate1  0x00000005 , 0x0000003f 
- 00026724  0x000070a5 nsetflag  0x00000001 , 0x00000014 , 0x00000011 
- 00026725  0x000070a6 isolate1  0x00000006 , 0x0000003f 
- 00026726  0x000070a7 nsetflag  0x00000001 , 0x00000015 , 0x00000011 
- 00026727  0x000070a8 isolate1  0x00000007 , 0x0000003f 
- 00026728  0x000070a9 nsetflag  0x00000001 , 0x00000016 , 0x00000011 
- 00026729  0x000070ab hfetch  0x00000001 , 0x00008062 
- 00026730  0x000070ac isolate1  0x00000004 , 0x0000003f 
- 00026731  0x000070ad call  0x0000687e , 0x00000001 
- 00026732  0x000070ae bpatchx  0x0000009d , 0x00004033 
- 00026733  0x000070b0 hfetch  0x00000004 , 0x00008078 
- 00026734  0x000070b1 hfetcht  0x00000004 , 0x0000807c 
- 00026735  0x000070b2 ior  0x00000002 , 0x0000003f 
- 00026736  0x000070b3 invert  0x0000003f , 0x0000003f 
- 00026737  0x000070b4 iand  0x00000011 , 0x0000003f 
- 00026738  0x000070b6 hstore  0x00000004 , 0x00008070 
- 00026739  0x000070b7 rtn 
- 00026740  0x000070bb arg  0x00000006 , 0x00000007 
- 00026741  0x000070bc branch  0x00006884 
- 00026742  0x000070be arg  0x00000009 , 0x00000007 
- 00026743  0x000070bf branch  0x00006882 
- 00026744  0x000070c1 arg  0x00000017 , 0x00000007 
- 00026745  0x000070c2 branch  0x00006882 
- 00026746  0x000070c4 arg  0x00000019 , 0x00000007 
- 00026747  0x000070c5 branch  0x00006884 
- 00026748  0x000070c7 arg  0x0000001e , 0x00000007 
- 00026749  0x000070c8 branch  0x00006884 
- 00026750  0x000070ca arg  0x00000002 , 0x00000007 
- 00026751  0x000070cb branch  0x00006884 
- 00026752  0x000070cd arg  0x00000001 , 0x00000039 
- 00026753  0x000070ce branch  0x00006885 
- 00026754  0x000070d0 arg  0x00000004 , 0x00000039 
- 00026755  0x000070d1 branch  0x00006885 
- 00026756  0x000070d3 arg  0x00000002 , 0x00000039 
- 00026757  0x000070d5 qset0  0x00000011 
- 00026758  0x000070d6 increase  0x00000001 , 0x00000007 
- 00026759  0x000070d7 loop  0x00006885 
- 00026760  0x000070d8 rtn 
- 00026761  0x000070e1 call  0x00006895 
- 00026762  0x000070e2 arg  0x00000006 , 0x00000002 
- 00026763  0x000070e3 branch  0x0000680e 
- 00026764  0x000070e6 call  0x00006889 
- 00026765  0x000070e7 arg  0x00000006 , 0x00000002 
- 00026766  0x000070e8 branch  0x00006825 
- 00026767  0x000070ed call  0x00006895 
- 00026768  0x000070ee hfetch  0x00000001 , 0x00008078 
- 00026769  0x000070ef set1  0x00000007 , 0x0000003f 
- 00026770  0x000070f0 hstore  0x00000001 , 0x00008078 
- 00026771  0x000070f1 arg  0x00000007 , 0x00000002 
- 00026772  0x000070f2 branch  0x000067fb 
- 00026773  0x000070f5 hfetch  0x00000001 , 0x00008081 
- 00026774  0x000070f6 and_into  0x000000fb , 0x0000003f 
- 00026775  0x000070f7 hstore  0x00000001 , 0x00008081 
- 00026776  0x000070f8 rtn 
- 00026777  0x000070fb hfetch  0x00000001 , 0x00008081 
- 00026778  0x000070fc isolate1  0x00000002 , 0x0000003f 
- 00026779  0x000070fd rtn 
- 00026780  0x00007100 call  0x0000666a 
- 00026781  0x00007101 setarg  0x000007e0 
- 00026782  0x00007102 arg  0x00004150 , 0x00000011 
- 00026783  0x00007103 arg  0x00000002 , 0x00000002 
- 00026784  0x00007104 call  0x000066b3 
- 00026785  0x00007105 branch  0x0000666d 
- 00026786  0x00007109 call  0x0000666a 
- 00026787  0x0000710a setarg  0x000007e2 
- 00026788  0x0000710b arg  0x0000421d , 0x00000011 
- 00026789  0x0000710c arg  0x0000000e , 0x00000002 
- 00026790  0x0000710d call  0x000066b3 
- 00026791  0x0000710e branch  0x0000666d 
- 00026792  0x00007113 bpatchx  0x0000009e , 0x00004033 
- 00026793  0x00007115 call  0x000068a2 
- 00026794  0x00007117 fetch  0x00000001 , 0x0000422d 
- 00026795  0x00007118 beq  0x00000000 , 0x000068af 
- 00026796  0x00007119 beq  0x00000001 , 0x000068c3 
- 00026797  0x0000711a beq  0x00000002 , 0x000068d7 
- 00026798  0x0000711b rtn 
- 00026799  0x0000711e fetcht  0x00000002 , 0x00004229 
- 00026800  0x0000711f setarg  0x0000aa55 
- 00026801  0x00007120 isub  0x00000002 , 0x0000003e 
- 00026802  0x00007121 branch  0x000068b8 , 0x00000005 
- 00026803  0x00007122 setarg  0x00004dfa 
- 00026804  0x00007123 store  0x00000002 , 0x00004227 
- 00026805  0x00007124 setarg  0x00004894 
- 00026806  0x00007125 store  0x00000002 , 0x00004221 
- 00026807  0x00007126 branch  0x000068c0 
- 00026808  0x00007129 fetch  0x00000002 , 0x00004227 
- 00026809  0x0000712a nbranch  0x000068bc , 0x00000034 
- 00026810  0x0000712b setarg  0x00004dfa 
- 00026811  0x0000712c store  0x00000002 , 0x00004227 
- 00026812  0x0000712e fetch  0x00000002 , 0x00004221 
- 00026813  0x0000712f nbranch  0x000068c0 , 0x00000034 
- 00026814  0x00007130 setarg  0x00004894 
- 00026815  0x00007131 store  0x00000002 , 0x00004221 
- 00026816  0x00007133 setarg  0x00000064 
- 00026817  0x00007134 store  0x00000002 , 0x0000422b 
- 00026818  0x00007135 rtn 
- 00026819  0x00007138 fetcht  0x00000002 , 0x00004229 
- 00026820  0x00007139 setarg  0x0000aa55 
- 00026821  0x0000713a isub  0x00000002 , 0x0000003e 
- 00026822  0x0000713b branch  0x000068cc , 0x00000005 
- 00026823  0x0000713c setarg  0x00005932 
- 00026824  0x0000713d store  0x00000002 , 0x00004225 
- 00026825  0x0000713e setarg  0x00004323 
- 00026826  0x0000713f store  0x00000002 , 0x0000421f 
- 00026827  0x00007140 branch  0x000068d4 
- 00026828  0x00007143 fetch  0x00000002 , 0x00004225 
- 00026829  0x00007144 nbranch  0x000068d0 , 0x00000034 
- 00026830  0x00007145 setarg  0x00005932 
- 00026831  0x00007146 store  0x00000002 , 0x00004225 
- 00026832  0x00007148 fetch  0x00000002 , 0x0000421f 
- 00026833  0x00007149 nbranch  0x000068d4 , 0x00000034 
- 00026834  0x0000714a setarg  0x00004323 
- 00026835  0x0000714b store  0x00000002 , 0x0000421f 
- 00026836  0x0000714d setarg  0x00000190 
- 00026837  0x0000714e store  0x00000002 , 0x0000422b 
- 00026838  0x0000714f rtn 
- 00026839  0x00007152 fetcht  0x00000002 , 0x00004229 
- 00026840  0x00007153 setarg  0x0000aa55 
- 00026841  0x00007154 isub  0x00000002 , 0x0000003e 
- 00026842  0x00007155 branch  0x000068e0 , 0x00000005 
- 00026843  0x00007156 setarg  0x00006946 
- 00026844  0x00007157 store  0x00000002 , 0x00004223 
- 00026845  0x00007158 setarg  0x00005377 
- 00026846  0x00007159 store  0x00000002 , 0x0000421d 
- 00026847  0x0000715a branch  0x000068e8 
- 00026848  0x0000715d fetch  0x00000002 , 0x00004223 
- 00026849  0x0000715e nbranch  0x000068e4 , 0x00000034 
- 00026850  0x0000715f setarg  0x00006946 
- 00026851  0x00007160 store  0x00000002 , 0x00004223 
- 00026852  0x00007162 fetch  0x00000002 , 0x0000421d 
- 00026853  0x00007163 nbranch  0x000068e8 , 0x00000034 
- 00026854  0x00007164 setarg  0x00005377 
- 00026855  0x00007165 store  0x00000002 , 0x0000421d 
- 00026856  0x00007167 setarg  0x00000032 
- 00026857  0x00007168 store  0x00000002 , 0x0000422b 
- 00026858  0x00007169 rtn 
- 00026859  0x0000716d fetch  0x00000001 , 0x0000422d 
- 00026860  0x0000716e beq  0x00000000 , 0x000068f0 
- 00026861  0x0000716f beq  0x00000001 , 0x000068f2 
- 00026862  0x00007170 beq  0x00000002 , 0x000068f4 
- 00026863  0x00007171 rtn 
- 00026864  0x00007173 jam  0x000000bf , 0x00008971 
- 00026865  0x00007174 branch  0x000068f8 
- 00026866  0x00007176 jam  0x000000af , 0x00008971 
- 00026867  0x00007177 branch  0x000068f8 
- 00026868  0x00007179 jam  0x0000008f , 0x00008971 
- 00026869  0x0000717a fetch  0x00000001 , 0x0000422e 
- 00026870  0x0000717b hstore  0x00000001 , 0x00008973 
- 00026871  0x0000717c branch  0x000068f8 
- 00026872  0x0000717e bpatchx  0x0000009f , 0x00004033 
- 00026873  0x0000717f hfetch  0x00000001 , 0x00008053 
- 00026874  0x00007180 set1  0x00000007 , 0x0000003f 
- 00026875  0x00007181 hstore  0x00000001 , 0x00008053 
- 00026876  0x00007182 hfetch  0x00000001 , 0x00008973 
- 00026877  0x00007183 or_into  0x00000030 , 0x0000003f 
- 00026878  0x00007184 hstore  0x00000001 , 0x00008973 
- 00026879  0x00007185 jam  0x0000007c , 0x00008906 
- 00026880  0x00007186 jam  0x000000aa , 0x00008972 
- 00026881  0x00007187 nop  0x00001388 
- 00026882  0x00007188 hfetcht  0x00000002 , 0x00008150 
- 00026883  0x00007189 hfetch  0x00000001 , 0x00008053 
- 00026884  0x0000718a set0  0x00000007 , 0x0000003f 
- 00026885  0x0000718b hstore  0x00000001 , 0x00008053 
- 00026886  0x0000718c storet  0x00000002 , 0x0000422f 
- 00026887  0x0000718d rtn 
- 00026888  0x00007190 bpatchx  0x000000a0 , 0x00004034 
- 00026889  0x00007191 fetch  0x00000001 , 0x0000422d 
- 00026890  0x00007192 beq  0x00000000 , 0x0000690e 
- 00026891  0x00007193 beq  0x00000001 , 0x00006912 
- 00026892  0x00007194 beq  0x00000002 , 0x00006916 
- 00026893  0x00007195 rtn 
- 00026894  0x00007198 fetch  0x00000002 , 0x00004227 
- 00026895  0x00007199 fetcht  0x00000002 , 0x00004221 
- 00026896  0x0000719a arg  0x000000c8 , 0x00000013 
- 00026897  0x0000719b branch  0x0000691a 
- 00026898  0x0000719e fetch  0x00000002 , 0x00004225 
- 00026899  0x0000719f fetcht  0x00000002 , 0x0000421f 
- 00026900  0x000071a0 arg  0x00000064 , 0x00000013 
- 00026901  0x000071a1 branch  0x0000691a 
- 00026902  0x000071a4 fetch  0x00000002 , 0x00004223 
- 00026903  0x000071a5 fetcht  0x00000002 , 0x0000421d 
- 00026904  0x000071a6 arg  0x00000032 , 0x00000013 
- 00026905  0x000071a7 branch  0x0000691a 
- 00026906  0x000071aa isub  0x00000002 , 0x00000011 
- 00026907  0x000071ab fetch  0x00000002 , 0x0000422f 
- 00026908  0x000071ac isub  0x00000002 , 0x0000003f 
- 00026909  0x000071ad nbranch  0x00006927 , 0x00000002 
- 00026910  0x000071ae fetcht  0x00000002 , 0x0000422b 
- 00026911  0x000071af imul32  0x00000002 , 0x00000012 
- 00026912  0x000071b0 copy  0x00000013 , 0x0000003f 
- 00026913  0x000071b1 imul32  0x00000011 , 0x0000003f 
- 00026914  0x000071b2 iadd  0x00000012 , 0x0000003f 
- 00026915  0x000071b4 idiv  0x00000011 
- 00026916  0x000071b5 call  0x00007f86 
- 00026917  0x000071b6 quotient  0x0000003f 
- 00026918  0x000071b7 rtn 
- 00026919  0x000071ba copy  0x00000002 , 0x0000003f 
- 00026920  0x000071bb fetcht  0x00000002 , 0x0000422f 
- 00026921  0x000071bc isub  0x00000002 , 0x0000003f 
- 00026922  0x000071bd fetcht  0x00000002 , 0x0000422b 
- 00026923  0x000071be imul32  0x00000002 , 0x00000012 
- 00026924  0x000071bf copy  0x00000013 , 0x0000003f 
- 00026925  0x000071c0 imul32  0x00000011 , 0x0000003f 
- 00026926  0x000071c1 isub  0x00000012 , 0x0000003f 
- 00026927  0x000071c2 branch  0x00006923 
- 00026928  0x000071ce ifetch  0x00000008 , 0x00000011 
- 00026929  0x000071cf store  0x00000008 , 0x00000a9a 
- 00026930  0x000071d0 fetch  0x00000002 , 0x00000a9a 
- 00026931  0x000071d1 fetcht  0x00000002 , 0x00000a9c 
- 00026932  0x000071d2 isub  0x00000002 , 0x00000011 
- 00026933  0x000071d3 fetch  0x00000002 , 0x00000aa0 
- 00026934  0x000071d4 isub  0x00000002 , 0x00000012 
- 00026935  0x000071d5 fetcht  0x00000002 , 0x00000a9e 
- 00026936  0x000071d6 isub  0x00000002 , 0x0000003e 
- 00026937  0x000071d7 ncall  0x00006940 , 0x00000002 
- 00026938  0x000071d8 mul32  0x00000012 , 0x00000064 , 0x0000003f 
- 00026939  0x000071d9 idiv  0x00000011 
- 00026940  0x000071da call  0x00007f86 
- 00026941  0x000071db quotient  0x0000003f 
- 00026942  0x000071dc call  0x00006944 , 0x00000034 
- 00026943  0x000071dd rtn 
- 00026944  0x000071df fetch  0x00000001 , 0x00004231 
- 00026945  0x000071e0 set1  0x00000000 , 0x0000003f 
- 00026946  0x000071e1 store  0x00000001 , 0x00004231 
- 00026947  0x000071e2 rtn 
- 00026948  0x000071e4 fetcht  0x00000001 , 0x00004231 
- 00026949  0x000071e5 set1  0x00000001 , 0x00000002 
- 00026950  0x000071e6 storet  0x00000001 , 0x00004231 
- 00026951  0x000071e7 rtn 
- 00026952  0x000071ed fetch  0x00000002 , 0x0000423d 
- 00026953  0x000071ee ifetch  0x00000001 , 0x0000003f 
- 00026954  0x000071f0 rtn  0x00000034 
- 00026955  0x000071f1 copy  0x0000003f , 0x00000039 
- 00026956  0x000071f3 fetch  0x00000002 , 0x0000423d 
- 00026957  0x000071f4 increase  0x00000003 , 0x0000003f 
- 00026958  0x000071f5 copy  0x0000003f , 0x00000011 
- 00026959  0x000071f7 ifetcht  0x00000001 , 0x00000011 
- 00026960  0x000071f8 call  0x000067fb 
- 00026961  0x000071f9 increase  0x00000001 , 0x00000011 
- 00026962  0x000071fa loop  0x0000694f 
- 00026963  0x000071fc rtn 
- 00026964  0x000071ff fetch  0x00000002 , 0x0000423d 
- 00026965  0x00007200 increase  0x00000003 , 0x0000003f 
- 00026966  0x00007201 copy  0x0000003f , 0x00000011 
- 00026967  0x00007203 force  0x00000000 , 0x00000012 
- 00026968  0x00007204 jam  0x00000000 , 0x00000b12 
- 00026969  0x00007206 ifetcht  0x00000001 , 0x00000011 
- 00026970  0x00007207 call  0x0000681d 
- 00026971  0x00007208 bpatchx  0x000000a1 , 0x00004034 
- 00026972  0x00007209 fetch  0x00000002 , 0x00000b12 
- 00026973  0x0000720a copy  0x00000012 , 0x00000007 
- 00026974  0x0000720b qsetflag  0x00000001 , 0x0000003f 
- 00026975  0x0000720c store  0x00000002 , 0x00000b12 
- 00026976  0x0000720d increase  0x00000001 , 0x00000011 
- 00026977  0x0000720e increase  0x00000001 , 0x00000012 
- 00026978  0x0000720f fetch  0x00000002 , 0x0000423d 
- 00026979  0x00007210 ifetch  0x00000001 , 0x0000003f 
- 00026980  0x00007212 ixor  0x00000012 , 0x0000003e 
- 00026981  0x00007213 nbranch  0x00006959 , 0x00000005 
- 00026982  0x00007214 fetch  0x00000002 , 0x00000b12 
- 00026983  0x00007215 fetcht  0x00000002 , 0x00000b14 
- 00026984  0x00007216 ixor  0x00000002 , 0x0000003e 
- 00026985  0x00007217 rtn  0x00000005 
- 00026986  0x00007218 enable  0x00000028 
- 00026987  0x00007219 rtn 
- 00026988  0x0000721c fetch  0x00000002 , 0x0000423d 
- 00026989  0x0000721d ifetch  0x00000001 , 0x0000003f 
- 00026990  0x0000721f rtn  0x00000034 
- 00026991  0x00007220 copy  0x0000003f , 0x00000039 
- 00026992  0x00007221 fetch  0x00000002 , 0x0000423d 
- 00026993  0x00007222 increase  0x00000003 , 0x0000003f 
- 00026994  0x00007223 copy  0x0000003f , 0x00000011 
- 00026995  0x00007225 ifetcht  0x00000001 , 0x00000011 
- 00026996  0x00007226 call  0x000067dd 
- 00026997  0x00007227 increase  0x00000001 , 0x00000011 
- 00026998  0x00007228 loop  0x00006973 
- 00026999  0x0000722a rtn 
- 00027000  0x0000722d arg  0x00000009 , 0x00000007 
- 00027001  0x0000722e call  0x00007f16 
- 00027002  0x0000722f nrtn  0x00000034 
- 00027003  0x00007230 setarg  0x00000020 
- 00027004  0x00007231 arg  0x00000009 , 0x00000007 
- 00027005  0x00007232 call  0x00007f08 
- 00027006  0x00007233 disable  0x00000028 
- 00027007  0x00007234 call  0x0000696c 
- 00027008  0x00007235 bpatchx  0x000000a2 , 0x00004034 
- 00027009  0x00007236 fetch  0x00000002 , 0x0000423d 
- 00027010  0x00007237 ifetch  0x00000001 , 0x0000003f 
- 00027011  0x00007239 rtn  0x00000034 
- 00027012  0x0000723a call  0x00006954 
- 00027013  0x0000723b nbranch  0x00007d02 , 0x00000028 
- 00027014  0x0000723c call  0x00007d00 
- 00027015  0x0000723d disable  0x00000028 
- 00027016  0x0000723e fetch  0x00000002 , 0x00000b12 
- 00027017  0x0000723f store  0x00000002 , 0x00000b19 
- 00027018  0x00007240 jam  0x00000000 , 0x00000b1b 
- 00027019  0x00007241 force  0x00000000 , 0x00000007 
- 00027020  0x00007243 fetch  0x00000002 , 0x00000b14 
- 00027021  0x00007244 rshift  0x0000003f , 0x00000002 
- 00027022  0x00007245 storet  0x00000002 , 0x00000b14 
- 00027023  0x00007246 and  0x0000003f , 0x00000001 , 0x0000003f 
- 00027024  0x00007247 fetcht  0x00000002 , 0x00000b19 
- 00027025  0x00007248 and  0x00000002 , 0x00000001 , 0x00000011 
- 00027026  0x00007249 rshift  0x00000002 , 0x00000002 
- 00027027  0x0000724a storet  0x00000002 , 0x00000b19 
- 00027028  0x0000724b ixor  0x00000011 , 0x0000003e 
- 00027029  0x0000724c ncall  0x000069a1 , 0x00000005 
- 00027030  0x0000724d fetch  0x00000002 , 0x0000423d 
- 00027031  0x0000724e ifetch  0x00000001 , 0x0000003f 
- 00027032  0x00007250 fetcht  0x00000001 , 0x00000b1b 
- 00027033  0x00007251 increase  0x00000001 , 0x00000002 
- 00027034  0x00007252 storet  0x00000001 , 0x00000b1b 
- 00027035  0x00007253 copy  0x00000002 , 0x00000007 
- 00027036  0x00007254 ixor  0x00000007 , 0x0000003e 
- 00027037  0x00007255 nbranch  0x0000698c , 0x00000005 
- 00027038  0x00007256 fetch  0x00000002 , 0x00000b12 
- 00027039  0x00007257 store  0x00000002 , 0x00000b14 
- 00027040  0x00007258 rtn 
- 00027041  0x0000725a bpatchx  0x000000a3 , 0x00004034 
- 00027042  0x0000725b fetch  0x00000002 , 0x0000423d 
- 00027043  0x0000725c increase  0x00000001 , 0x0000003f 
- 00027044  0x0000725d ifetch  0x00000002 , 0x0000003f 
- 00027045  0x0000725e branch  0x00007f9c 
- 00027046  0x0000726a hfetch  0x00000001 , 0x00008042 
- 00027047  0x0000726b ior  0x00000011 , 0x0000003f 
- 00027048  0x0000726c hstore  0x00000001 , 0x00008042 
- 00027049  0x0000726d hfetch  0x00000002 , 0x00008050 
- 00027050  0x0000726e set0  0x0000000d , 0x0000003f 
- 00027051  0x0000726f hstore  0x00000002 , 0x00008050 
- 00027052  0x00007271 nop  0x00000064 
- 00027053  0x00007272 rtn 
- 00027054  0x0000727e fetcht  0x00000003 , 0x00000a9c 
- 00027055  0x0000727f setarg  0x00b71b00 
- 00027056  0x00007280 idiv  0x00000002 
- 00027057  0x00007281 call  0x00007f86 
- 00027058  0x00007282 quotient  0x00000002 
- 00027059  0x00007283 fetch  0x00000001 , 0x00000a9f 
- 00027060  0x00007284 imul32  0x00000002 , 0x0000003f 
- 00027061  0x00007285 div  0x0000003f , 0x00000064 
- 00027062  0x00007286 call  0x00007f86 
- 00027063  0x00007287 quotient  0x00000011 
- 00027064  0x00007288 copy  0x00000002 , 0x0000003f 
- 00027065  0x00007289 isub  0x00000011 , 0x00000012 
- 00027066  0x0000728a fetch  0x00000001 , 0x00000a9b 
- 00027067  0x0000728b call  0x000069be 
- 00027068  0x0000728c fetch  0x00000001 , 0x00000a9a 
- 00027069  0x0000728d branch  0x000069d5 
- 00027070  0x00007291 beq  0x00000000 , 0x000069c4 
- 00027071  0x00007292 beq  0x00000001 , 0x000069c6 
- 00027072  0x00007293 beq  0x00000002 , 0x000069c8 
- 00027073  0x00007294 beq  0x00000003 , 0x000069ca 
- 00027074  0x00007295 beq  0x00000004 , 0x000069cc 
- 00027075  0x00007296 beq  0x00000005 , 0x000069ce 
- 00027076  0x00007298 arg  0x000080a0 , 0x00000005 
- 00027077  0x00007299 branch  0x000069d0 
- 00027078  0x0000729b arg  0x000080a4 , 0x00000005 
- 00027079  0x0000729c branch  0x000069d0 
- 00027080  0x0000729e arg  0x000080a8 , 0x00000005 
- 00027081  0x0000729f branch  0x000069d0 
- 00027082  0x000072a1 arg  0x00008064 , 0x00000005 
- 00027083  0x000072a2 branch  0x000069d0 
- 00027084  0x000072a4 arg  0x00008068 , 0x00000005 
- 00027085  0x000072a5 branch  0x000069d0 
- 00027086  0x000072a7 arg  0x0000806c , 0x00000005 
- 00027087  0x000072a8 branch  0x000069d0 
- 00027088  0x000072aa copy  0x00000011 , 0x0000003f 
- 00027089  0x000072ab istore  0x00000002 , 0x00000005 
- 00027090  0x000072ac copy  0x00000012 , 0x0000003f 
- 00027091  0x000072ad istore  0x00000002 , 0x00000005 
- 00027092  0x000072ae rtn 
- 00027093  0x000072b3 enable  0x00000028 
- 00027094  0x000072b4 branch  0x000069d8 
- 00027095  0x000072b6 disable  0x00000028 
- 00027096  0x000072b8 beq  0x00000004 , 0x000069e3 
- 00027097  0x000072b9 beq  0x00000005 , 0x000069e5 
- 00027098  0x000072ba beq  0x0000001b , 0x000069e7 
- 00027099  0x000072bb beq  0x0000001c , 0x000069e9 
- 00027100  0x000072bc beq  0x00000003 , 0x000069eb 
- 00027101  0x000072bd beq  0x00000008 , 0x000069ed 
- 00027102  0x000072be beq  0x00000014 , 0x000069ef 
- 00027103  0x000072bf beq  0x00000015 , 0x000069f1 
- 00027104  0x000072c0 beq  0x00000016 , 0x000069f3 
- 00027105  0x000072c1 beq  0x00000017 , 0x000069f5 
- 00027106  0x000072c2 rtn 
- 00027107  0x000072c6 arg  0x00000006 , 0x00000007 
- 00027108  0x000072c7 branch  0x000069ff 
- 00027109  0x000072c9 arg  0x00000007 , 0x00000007 
- 00027110  0x000072ca branch  0x000069ff 
- 00027111  0x000072cc arg  0x00000008 , 0x00000007 
- 00027112  0x000072cd branch  0x000069ff 
- 00027113  0x000072cf arg  0x00000009 , 0x00000007 
- 00027114  0x000072d0 branch  0x000069ff 
- 00027115  0x000072d2 arg  0x0000000a , 0x00000007 
- 00027116  0x000072d3 branch  0x000069ff 
- 00027117  0x000072d5 arg  0x0000000b , 0x00000007 
- 00027118  0x000072d6 branch  0x000069ff 
- 00027119  0x000072d8 arg  0x0000000c , 0x00000007 
- 00027120  0x000072d9 branch  0x00006a01 
- 00027121  0x000072db arg  0x0000000d , 0x00000007 
- 00027122  0x000072dc branch  0x00006a01 
- 00027123  0x000072de arg  0x0000000e , 0x00000007 
- 00027124  0x000072df branch  0x00006a01 
- 00027125  0x000072e1 arg  0x0000000f , 0x00000007 
- 00027126  0x000072e2 branch  0x00006a01 
- 00027127  0x000072e5 hfetch  0x00000002 , 0x00008081 
- 00027128  0x000072e6 qsetflag  0x00000028 , 0x0000003f 
- 00027129  0x000072e7 hstore  0x00000002 , 0x00008081 
- 00027130  0x000072e8 copy  0x00000011 , 0x00000007 
- 00027131  0x000072e9 hfetch  0x00000001 , 0x00008085 
- 00027132  0x000072ea qsetflag  0x00000028 , 0x0000003f 
- 00027133  0x000072eb hstore  0x00000001 , 0x00008085 
- 00027134  0x000072ec rtn 
- 00027135  0x000072ef add  0x00000007 , 0xfffffffc , 0x00000011 
- 00027136  0x000072f0 branch  0x000069f7 
- 00027137  0x000072f3 add  0x00000007 , 0xfffffff6 , 0x00000011 
- 00027138  0x000072f4 branch  0x000069f7 
- 00027139  0x000072fa rtn  0x0000002b 
- 00027140  0x000072fb jam  0x00000000 , 0x00004567 
- 00027141  0x000072fc jam  0x00000003 , 0x000004ed 
- 00027142  0x000072fd jam  0x00000003 , 0x000004ee 
- 00027143  0x000072fe jam  0x00000011 , 0x000004f2 
- 00027144  0x000072ff jam  0x00000013 , 0x000004f3 
- 00027145  0x00007300 setarg  0x00000000 
- 00027146  0x00007301 store  0x00000003 , 0x000004ef 
- 00027147  0x00007302 store  0x00000001 , 0x00004254 
- 00027148  0x00007303 jam  0x00000000 , 0x00004681 
- 00027149  0x00007306 bpatchx  0x000000a4 , 0x00004034 
- 00027150  0x00007307 setarg  0x00000000 
- 00027151  0x00007308 store  0x00000001 , 0x00004254 
- 00027152  0x00007309 store  0x00000001 , 0x00004564 
- 00027153  0x0000730a store  0x00000001 , 0x0000455d 
- 00027154  0x0000730b fetch  0x00000001 , 0x0000456b 
- 00027155  0x0000730c beq  0x00000001 , 0x00006a16 
- 00027156  0x0000730d jam  0x00000050 , 0x00004569 
- 00027157  0x0000730e rtn 
- 00027158  0x00007311 jam  0x00000000 , 0x00004569 
- 00027159  0x00007312 rtn 
- 00027160  0x00007315 or_into  0x00000002 , 0x00000002 
- 00027161  0x00007316 rtn 
- 00027162  0x00007323 copy  0x00000002 , 0x0000003f 
- 00027163  0x00007324 reverse  0x0000003f , 0x0000003f 
- 00027164  0x00007325 store  0x00000001 , 0x00004562 
- 00027165  0x00007326 force  0x0000003f , 0x0000003f 
- 00027166  0x00007327 reverse  0x0000003f , 0x0000003f 
- 00027167  0x00007328 store  0x00000001 , 0x00004561 
- 00027168  0x00007329 force  0x00000001 , 0x0000003f 
- 00027169  0x0000732a reverse  0x0000003f , 0x0000003f 
- 00027170  0x0000732b store  0x00000001 , 0x00004560 
- 00027171  0x0000732c call  0x00006a50 
- 00027172  0x0000732d copy  0x00000002 , 0x0000003f 
- 00027173  0x0000732e rtn 
- 00027174  0x00007330 reverse  0x0000003f , 0x0000003f 
- 00027175  0x00007331 store  0x00000001 , 0x00004562 
- 00027176  0x00007332 force  0x00000073 , 0x0000003f 
- 00027177  0x00007333 reverse  0x0000003f , 0x0000003f 
- 00027178  0x00007334 store  0x00000001 , 0x00004561 
- 00027179  0x00007335 force  0x00000001 , 0x0000003f 
- 00027180  0x00007336 reverse  0x0000003f , 0x0000003f 
- 00027181  0x00007337 store  0x00000001 , 0x00004560 
- 00027182  0x00007338 branch  0x00006a50 
- 00027183  0x0000733b fetch  0x00000001 , 0x00004563 
- 00027184  0x0000733c branch  0x00006a33 , 0x00000034 
- 00027185  0x0000733d setarg  0x00000070 
- 00027186  0x0000733e rtn 
- 00027187  0x00007340 setarg  0x000000aa 
- 00027188  0x00007341 rtn 
- 00027189  0x00007344 reverse  0x0000003f , 0x0000003f 
- 00027190  0x00007345 store  0x00000001 , 0x00004562 
- 00027191  0x00007346 force  0x000000ef , 0x0000003f 
- 00027192  0x00007347 call  0x00006a44 
- 00027193  0x00007348 fetcht  0x00000002 , 0x000004f7 
- 00027194  0x00007349 copy  0x00000002 , 0x00000005 
- 00027195  0x0000734a istore  0x00000001 , 0x00000005 
- 00027196  0x0000734b copy  0x00000005 , 0x00000002 
- 00027197  0x0000734c storet  0x00000002 , 0x000004f7 
- 00027198  0x0000734d force  0x000000ff , 0x0000003f 
- 00027199  0x0000734e call  0x00006a44 
- 00027200  0x0000734f fetcht  0x00000002 , 0x000004f7 
- 00027201  0x00007350 copy  0x00000002 , 0x00000005 
- 00027202  0x00007351 istore  0x00000001 , 0x00000005 
- 00027203  0x00007352 rtn 
- 00027204  0x0000735c reverse  0x0000003f , 0x0000003f 
- 00027205  0x0000735d store  0x00000001 , 0x00004561 
- 00027206  0x0000735e fetch  0x00000002 , 0x00004561 
- 00027207  0x0000735f lshift8  0x0000003f , 0x0000003f 
- 00027208  0x00007360 store  0x00000003 , 0x000004f4 
- 00027209  0x00007361 arg  0x00000107 , 0x00000011 
- 00027210  0x00007362 arg  0x0000000f , 0x00000012 
- 00027211  0x00007363 call  0x00006a5d 
- 00027212  0x00007364 xor_into  0x000000d7 , 0x0000003f 
- 00027213  0x00007365 invert  0x0000003f , 0x0000003f 
- 00027214  0x00007366 reverse  0x0000003f , 0x0000003f 
- 00027215  0x00007367 rtn 
- 00027216  0x00007372 fetch  0x00000003 , 0x00004560 
- 00027217  0x00007373 store  0x00000003 , 0x000004f4 
- 00027218  0x00007374 arg  0x00000107 , 0x00000011 
- 00027219  0x00007375 arg  0x0000000f , 0x00000012 
- 00027220  0x00007376 call  0x00006a5d 
- 00027221  0x00007377 lshift8  0x0000003f , 0x0000003f 
- 00027222  0x00007378 arg  0x00000007 , 0x00000012 
- 00027223  0x00007379 call  0x00006a5d 
- 00027224  0x0000737a xor_into  0x0000002b , 0x0000003f 
- 00027225  0x0000737b invert  0x0000003f , 0x0000003f 
- 00027226  0x0000737c reverse  0x0000003f , 0x0000003f 
- 00027227  0x0000737d copy  0x0000003f , 0x00000002 
- 00027228  0x0000737e rtn 
- 00027229  0x00007381 arg  0x00000000 , 0x00000013 
- 00027230  0x00007382 copy  0x00000012 , 0x00000039 
- 00027231  0x00007383 call  0x00007e71 
- 00027232  0x00007384 icopy  0x00000002 
- 00027233  0x0000738a copy  0x00000002 , 0x0000003f 
- 00027234  0x0000738b lshift  0x00000013 , 0x00000013 
- 00027235  0x0000738c bbit0  0x00000008 , 0x00006a66 
- 00027236  0x0000738d ixor  0x00000011 , 0x00000002 
- 00027237  0x0000738e increase  0x00000001 , 0x00000013 
- 00027238  0x00007390 lshift  0x00000002 , 0x00000002 
- 00027239  0x00007391 fetch  0x00000003 , 0x000004f4 
- 00027240  0x00007392 increase  0xffffffff , 0x00000012 
- 00027241  0x00007393 compare  0x000000ff , 0x00000012 , 0x000000ff 
- 00027242  0x00007394 branch  0x00006a70 , 0x00000001 
- 00027243  0x00007395 copy  0x00000012 , 0x00000039 
- 00027244  0x00007396 call  0x00007e71 
- 00027245  0x00007397 isolate1  0x00000000 , 0x0000003f 
- 00027246  0x00007398 setflag  0x00000001 , 0x00000000 , 0x00000002 
- 00027247  0x00007399 branch  0x00006a61 
- 00027248  0x0000739c rshift  0x00000002 , 0x0000003f 
- 00027249  0x0000739d rtn 
- 00027250  0x000073a0 fetcht  0x00000001 , 0x0000455d 
- 00027251  0x000073a3 lshift2  0x00000002 , 0x00000002 
- 00027252  0x000073a4 set1  0x00000000 , 0x00000002 
- 00027253  0x000073a5 fetch  0x00000001 , 0x00004563 
- 00027254  0x000073a6 ncall  0x00006a18 , 0x00000034 
- 00027255  0x000073a7 storet  0x00000001 , 0x0000050d 
- 00027256  0x000073a8 rtn 
- 00027257  0x000073ac lshift  0x00000002 , 0x00000002 
- 00027258  0x000073ad fetch  0x00000001 , 0x00004563 
- 00027259  0x000073ae setflag  0x00000034 , 0x00000000 , 0x00000002 
- 00027260  0x000073b0 rtn 
- 00027261  0x000073b2 fetcht  0x00000001 , 0x000004fc 
- 00027262  0x000073b3 jam  0x000000d7 , 0x000004fe 
- 00027263  0x000073b4 call  0x00006bb6 
- 00027264  0x000073b5 fetch  0x00000001 , 0x00004251 
- 00027265  0x000073b6 set1  0x00000006 , 0x0000003f 
- 00027266  0x000073b7 set1  0x00000007 , 0x0000003f 
- 00027267  0x000073b8 store  0x00000001 , 0x00004251 
- 00027268  0x000073b9 jam  0x00000000 , 0x00004563 
- 00027269  0x000073ba branch  0x00006b97 
- 00027270  0x000073bc fetch  0x00000001 , 0x00004251 
- 00027271  0x000073bd set1  0x00000007 , 0x0000003f 
- 00027272  0x000073be store  0x00000001 , 0x00004251 
- 00027273  0x000073bf branch  0x00006b97 
- 00027274  0x000073c3 bpatchx  0x000000a5 , 0x00004034 
- 00027275  0x000073c4 fetch  0x00000001 , 0x00004681 
- 00027276  0x000073c5 beq  0x00000000 , 0x00006a8e 
- 00027277  0x000073c6 branch  0x00006b4c 
- 00027278  0x000073c9 fetch  0x00000002 , 0x00000264 
- 00027279  0x000073ca copy  0x0000003f , 0x00000006 
- 00027280  0x000073cb call  0x00006ab8 
- 00027281  0x000073cc fetch  0x00000001 , 0x000004fc 
- 00027282  0x000073cd beq  0x00000000 , 0x00006a94 
- 00027283  0x000073ce branch  0x00006b18 
- 00027284  0x000073d0 bpatchx  0x000000a6 , 0x00004034 
- 00027285  0x000073d1 fetch  0x00000001 , 0x000004fd 
- 00027286  0x000073d2 beq  0x0000003f , 0x00006a7d 
- 00027287  0x000073d3 beq  0x00000073 , 0x00006a86 
- 00027288  0x000073d4 beq  0x000000ef , 0x00006a9b 
- 00027289  0x000073d5 beq  0x00000053 , 0x00006b44 
- 00027290  0x000073d6 rtn 
- 00027291  0x000073da fetch  0x00000002 , 0x00000501 
- 00027292  0x000073db copy  0x0000003f , 0x00000006 
- 00027293  0x000073dc call  0x00006ac3 
- 00027294  0x000073dd fetch  0x00000001 , 0x00000503 
- 00027295  0x000073de beq  0x00000041 , 0x00006aa5 
- 00027296  0x000073df beq  0x00000040 , 0x00006aad 
- 00027297  0x000073e0 beq  0x00000071 , 0x00006ae6 
- 00027298  0x000073e1 beq  0x00000070 , 0x00006af2 
- 00027299  0x000073e2 beq  0x00000049 , 0x00006afd 
- 00027300  0x000073e3 branch  0x00006b97 
- 00027301  0x000073e6 call  0x00006aaf 
- 00027302  0x000073e8 branch  0x00006aa7 
- 00027303  0x000073eb fetch  0x00000001 , 0x00004254 
- 00027304  0x000073ec set1  0x00000000 , 0x0000003f 
- 00027305  0x000073ed set1  0x00000001 , 0x0000003f 
- 00027306  0x000073ee store  0x00000001 , 0x00004254 
- 00027307  0x000073ef call  0x00006be0 
- 00027308  0x000073f0 branch  0x00006b97 
- 00027309  0x000073f3 call  0x00006aaf 
- 00027310  0x000073f4 branch  0x00006b97 
- 00027311  0x000073f7 call  0x00006acb 
- 00027312  0x000073f8 branch  0x00006ad7 
- 00027313  0x000073fb call  0x00006acb 
- 00027314  0x000073fc ifetch  0x00000001 , 0x00000006 
- 00027315  0x000073fd rshift3  0x0000003f , 0x0000003f 
- 00027316  0x000073fe store  0x00000001 , 0x0000456a 
- 00027317  0x000073ff ifetch  0x00000001 , 0x00000006 
- 00027318  0x00007400 store  0x00000001 , 0x00000508 
- 00027319  0x00007401 rtn 
- 00027320  0x00007405 ifetch  0x00000001 , 0x00000006 
- 00027321  0x00007406 store  0x00000001 , 0x000004fb 
- 00027322  0x00007407 rshift3  0x0000003f , 0x0000003f 
- 00027323  0x00007408 store  0x00000001 , 0x000004fc 
- 00027324  0x00007409 ifetch  0x00000001 , 0x00000006 
- 00027325  0x0000740a store  0x00000001 , 0x000004fd 
- 00027326  0x0000740c call  0x00006ace 
- 00027327  0x0000740d storet  0x00000002 , 0x000004ff 
- 00027328  0x0000740e copy  0x00000006 , 0x0000003f 
- 00027329  0x0000740f store  0x00000002 , 0x00000501 
- 00027330  0x00007410 rtn 
- 00027331  0x00007413 ifetch  0x00000001 , 0x00000006 
- 00027332  0x00007414 rshift  0x0000003f , 0x0000003f 
- 00027333  0x00007415 store  0x00000001 , 0x00000503 
- 00027334  0x00007416 call  0x00006ace 
- 00027335  0x00007417 storet  0x00000002 , 0x00000504 
- 00027336  0x00007418 copy  0x00000006 , 0x0000003f 
- 00027337  0x00007419 store  0x00000002 , 0x00000506 
- 00027338  0x0000741a rtn 
- 00027339  0x0000741e fetch  0x00000002 , 0x00000506 
- 00027340  0x0000741f copy  0x0000003f , 0x00000006 
- 00027341  0x00007420 rtn 
- 00027342  0x00007423 ifetch  0x00000001 , 0x00000006 
- 00027343  0x00007424 copy  0x0000003f , 0x00000002 
- 00027344  0x00007425 rshift  0x00000002 , 0x00000002 
- 00027345  0x00007426 rtnbit1  0x00000000 
- 00027346  0x00007427 ifetch  0x00000001 , 0x00000006 
- 00027347  0x00007428 lshift3  0x0000003f , 0x0000003f 
- 00027348  0x00007429 lshift4  0x0000003f , 0x0000003f 
- 00027349  0x0000742a iadd  0x00000002 , 0x00000002 
- 00027350  0x0000742b rtn 
- 00027351  0x0000742e ifetch  0x00000001 , 0x00000006 
- 00027352  0x0000742f store  0x00000001 , 0x0000455d 
- 00027353  0x00007430 ifetch  0x00000001 , 0x00000006 
- 00027354  0x00007431 store  0x00000001 , 0x00000509 
- 00027355  0x00007432 ifetch  0x00000001 , 0x00000006 
- 00027356  0x00007433 store  0x00000001 , 0x0000050a 
- 00027357  0x00007434 ifetch  0x00000001 , 0x00000006 
- 00027358  0x00007435 store  0x00000001 , 0x0000050b 
- 00027359  0x00007436 ifetch  0x00000002 , 0x00000006 
- 00027360  0x00007437 store  0x00000002 , 0x0000455e 
- 00027361  0x00007438 ifetch  0x00000001 , 0x00000006 
- 00027362  0x00007439 store  0x00000001 , 0x0000050c 
- 00027363  0x0000743a ifetch  0x00000001 , 0x00000006 
- 00027364  0x0000743b store  0x00000001 , 0x00004568 
- 00027365  0x0000743c rtn 
- 00027366  0x00007440 call  0x00006ab1 
- 00027367  0x00007442 branch  0x00006ae8 
- 00027368  0x00007445 fetch  0x00000001 , 0x00004254 
- 00027369  0x00007446 set1  0x00000005 , 0x0000003f 
- 00027370  0x00007447 set1  0x00000006 , 0x0000003f 
- 00027371  0x00007448 store  0x00000001 , 0x00004254 
- 00027372  0x00007449 fetcht  0x00000001 , 0x0000455d 
- 00027373  0x0000744a lshift2  0x00000002 , 0x00000002 
- 00027374  0x0000744b or_into  0x00000003 , 0x00000002 
- 00027375  0x0000744c call  0x00006c11 
- 00027376  0x0000744d jam  0x00000003 , 0x00004567 
- 00027377  0x0000744e branch  0x00006b97 
- 00027378  0x00007451 jam  0x00000008 , 0x00000a99 
- 00027379  0x00007452 call  0x00007d86 
- 00027380  0x00007453 call  0x00006ab1 
- 00027381  0x00007454 fetch  0x00000001 , 0x0000456a 
- 00027382  0x00007455 sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00027383  0x00007456 branch  0x00006af9 , 0x00000005 
- 00027384  0x00007457 branch  0x00002a8c 
- 00027385  0x00007459 fetch  0x00000001 , 0x00004254 
- 00027386  0x0000745a set1  0x00000007 , 0x0000003f 
- 00027387  0x0000745b store  0x00000001 , 0x00004254 
- 00027388  0x0000745c branch  0x00006b97 
- 00027389  0x0000745f call  0x00006acb 
- 00027390  0x00007460 ifetch  0x00000001 , 0x00000006 
- 00027391  0x00007461 store  0x00000001 , 0x00000ac2 
- 00027392  0x00007462 call  0x000052d2 
- 00027393  0x00007463 call  0x000052e0 
- 00027394  0x00007464 setarg  0x0000000e 
- 00027395  0x00007465 istore  0x00000002 , 0x00000005 
- 00027396  0x00007466 fetch  0x00000002 , 0x0000424a 
- 00027397  0x00007467 istore  0x00000002 , 0x00000005 
- 00027398  0x00007468 fetch  0x00000001 , 0x00004563 
- 00027399  0x0000746a lshift  0x0000003f , 0x0000003f 
- 00027400  0x0000746b set1  0x00000000 , 0x0000003f 
- 00027401  0x0000746c istore  0x00000001 , 0x00000005 
- 00027402  0x0000746d bpatchx  0x000000a7 , 0x00004034 
- 00027403  0x0000746e setarg  0x000015ef 
- 00027404  0x0000746f istore  0x00000002 , 0x00000005 
- 00027405  0x00007470 setarg  0x00001191 
- 00027406  0x00007471 istore  0x00000002 , 0x00000005 
- 00027407  0x00007474 fetch  0x00000001 , 0x00000ac2 
- 00027408  0x00007475 istore  0x00000001 , 0x00000005 
- 00027409  0x00007476 setarg  0x00000007 
- 00027410  0x00007477 istore  0x00000005 , 0x00000005 
- 00027411  0x0000747a setarg  0x00000001 
- 00027412  0x0000747b istore  0x00000002 , 0x00000005 
- 00027413  0x0000747e call  0x00006a2f 
- 00027414  0x0000747f istore  0x00000001 , 0x00000005 
- 00027415  0x00007480 rtn 
- 00027416  0x00007485 branch  0x00006b19 
- 00027417  0x00007488 bpatchx  0x000000a8 , 0x00004035 
- 00027418  0x00007489 fetch  0x00000001 , 0x000004fd 
- 00027419  0x0000748a beq  0x00000073 , 0x00006b21 
- 00027420  0x0000748b beq  0x0000003f , 0x00006b25 
- 00027421  0x0000748c beq  0x000000ef , 0x00006b3f 
- 00027422  0x0000748d beq  0x000000ff , 0x00006b37 
- 00027423  0x0000748e beq  0x00000053 , 0x00006b46 
- 00027424  0x0000748f rtn 
- 00027425  0x00007491 fetch  0x00000001 , 0x00004254 
- 00027426  0x00007492 set1  0x00000003 , 0x0000003f 
- 00027427  0x00007493 store  0x00000001 , 0x00004254 
- 00027428  0x00007494 branch  0x00006b97 
- 00027429  0x00007496 fetch  0x00000001 , 0x00004254 
- 00027430  0x00007497 set1  0x00000003 , 0x0000003f 
- 00027431  0x00007498 set1  0x00000002 , 0x0000003f 
- 00027432  0x00007499 store  0x00000001 , 0x00004254 
- 00027433  0x0000749a fetch  0x00000001 , 0x000004fb 
- 00027434  0x0000749b call  0x00006a26 
- 00027435  0x0000749c store  0x00000001 , 0x000004fe 
- 00027436  0x0000749d call  0x00006bb6 
- 00027437  0x0000749e fetch  0x00000001 , 0x000004fb 
- 00027438  0x0000749f rshift2  0x0000003f , 0x0000003f 
- 00027439  0x000074a0 store  0x00000001 , 0x0000455d 
- 00027440  0x000074a1 lshift2  0x0000003f , 0x0000003f 
- 00027441  0x000074a2 set0  0x00000001 , 0x0000003f 
- 00027442  0x000074a3 set1  0x00000000 , 0x0000003f 
- 00027443  0x000074a4 arg  0x00004565 , 0x00000002 
- 00027444  0x000074a5 storet  0x00000002 , 0x000004f7 
- 00027445  0x000074a6 call  0x00006a35 
- 00027446  0x000074a7 branch  0x00006b97 
- 00027447  0x000074aa fetch  0x00000002 , 0x00000501 
- 00027448  0x000074ab copy  0x0000003f , 0x00000006 
- 00027449  0x000074ac increase  0x00000001 , 0x0000003f 
- 00027450  0x000074ad store  0x00000002 , 0x00000501 
- 00027451  0x000074ae ifetch  0x00000001 , 0x00000006 
- 00027452  0x000074af fetcht  0x00000001 , 0x00004568 
- 00027453  0x000074b0 iadd  0x00000002 , 0x0000003f 
- 00027454  0x000074b1 store  0x00000001 , 0x00004568 
- 00027455  0x000074b3 call  0x00006c42 
- 00027456  0x000074b5 call  0x00006a72 
- 00027457  0x000074b6 call  0x00006c28 
- 00027458  0x000074b7 call  0x00006c4b 
- 00027459  0x000074b8 branch  0x00006b97 
- 00027460  0x000074bb jam  0x00000009 , 0x00000a99 
- 00027461  0x000074bc call  0x00007d86 
- 00027462  0x000074be call  0x00006a0d 
- 00027463  0x000074bf fetch  0x00000001 , 0x000004fb 
- 00027464  0x000074c0 call  0x00006a26 
- 00027465  0x000074c1 store  0x00000001 , 0x000004fe 
- 00027466  0x000074c2 call  0x00006bb6 
- 00027467  0x000074c3 branch  0x00006b97 
- 00027468  0x000074c9 fetch  0x00000002 , 0x00000264 
- 00027469  0x000074ca copy  0x0000003f , 0x00000006 
- 00027470  0x000074cb call  0x00006ab8 
- 00027471  0x000074cc fetch  0x00000001 , 0x000004fc 
- 00027472  0x000074cd beq  0x00000000 , 0x00006b52 
- 00027473  0x000074ce branch  0x00006b86 
- 00027474  0x000074d1 bpatchx  0x000000a9 , 0x00004035 
- 00027475  0x000074d2 fetch  0x00000001 , 0x000004fd 
- 00027476  0x000074d3 beq  0x0000003f , 0x00006a7d 
- 00027477  0x000074d4 beq  0x00000073 , 0x00006a86 
- 00027478  0x000074d5 beq  0x000000ef , 0x00006b58 
- 00027479  0x000074d6 branch  0x00006b97 
- 00027480  0x000074d8 fetch  0x00000002 , 0x00000501 
- 00027481  0x000074d9 copy  0x0000003f , 0x00000006 
- 00027482  0x000074da call  0x00006ac3 
- 00027483  0x000074db fetch  0x00000001 , 0x00000503 
- 00027484  0x000074dc beq  0x00000041 , 0x00006b61 
- 00027485  0x000074dd beq  0x00000040 , 0x00006b61 
- 00027486  0x000074de beq  0x00000071 , 0x00006b6c 
- 00027487  0x000074df beq  0x00000070 , 0x00006b7c 
- 00027488  0x000074e0 branch  0x00006b97 
- 00027489  0x000074e3 call  0x00006aaf 
- 00027490  0x000074e4 fetch  0x00000001 , 0x0000455d 
- 00027491  0x000074e5 rshift  0x0000003f , 0x0000003f 
- 00027492  0x000074e6 fetcht  0x00000001 , 0x00004564 
- 00027493  0x000074e7 isub  0x00000002 , 0x0000003e 
- 00027494  0x000074e8 branch  0x00006b68 , 0x00000005 
- 00027495  0x000074e9 branch  0x00002a8c 
- 00027496  0x000074eb fetch  0x00000001 , 0x00004254 
- 00027497  0x000074ec set1  0x00000001 , 0x0000003f 
- 00027498  0x000074ed store  0x00000001 , 0x00004254 
- 00027499  0x000074ee branch  0x00006b97 
- 00027500  0x000074f1 call  0x00006ab1 
- 00027501  0x000074f2 fetch  0x00000001 , 0x0000456a 
- 00027502  0x000074f3 fetcht  0x00000001 , 0x00004564 
- 00027503  0x000074f4 isub  0x00000002 , 0x0000003e 
- 00027504  0x000074f5 branch  0x00006b73 , 0x00000005 
- 00027505  0x000074f6 branch  0x00002a8c 
- 00027506  0x000074f7 branch  0x00006b97 
- 00027507  0x000074f9 fetch  0x00000001 , 0x00004254 
- 00027508  0x000074fa set1  0x00000005 , 0x0000003f 
- 00027509  0x000074fb set1  0x00000006 , 0x0000003f 
- 00027510  0x000074fc store  0x00000001 , 0x00004254 
- 00027511  0x000074fd fetcht  0x00000001 , 0x0000455d 
- 00027512  0x000074fe lshift2  0x00000002 , 0x00000002 
- 00027513  0x000074ff or_into  0x00000003 , 0x00000002 
- 00027514  0x00007500 call  0x00006c11 
- 00027515  0x00007501 branch  0x00006b97 
- 00027516  0x00007504 call  0x00006ab1 
- 00027517  0x00007505 fetch  0x00000001 , 0x0000456a 
- 00027518  0x00007506 fetcht  0x00000001 , 0x00004564 
- 00027519  0x00007507 isub  0x00000002 , 0x0000003e 
- 00027520  0x00007508 branch  0x00006b82 , 0x00000005 
- 00027521  0x00007509 branch  0x00002a8c 
- 00027522  0x0000750b fetch  0x00000001 , 0x00004254 
- 00027523  0x0000750c set1  0x00000007 , 0x0000003f 
- 00027524  0x0000750d store  0x00000001 , 0x00004254 
- 00027525  0x0000750e branch  0x00006b97 
- 00027526  0x00007511 fetch  0x00000001 , 0x000004fc 
- 00027527  0x00007512 fetcht  0x00000001 , 0x00004564 
- 00027528  0x00007513 isub  0x00000002 , 0x0000003e 
- 00027529  0x00007514 branch  0x00006b8c , 0x00000005 
- 00027530  0x00007515 branch  0x00002a8c 
- 00027531  0x00007516 branch  0x00006b97 
- 00027532  0x00007519 fetch  0x00000001 , 0x000004fd 
- 00027533  0x0000751a beq  0x00000073 , 0x00006b91 
- 00027534  0x0000751b beq  0x000000ef , 0x00006b3f 
- 00027535  0x0000751c beq  0x000000ff , 0x00006b37 
- 00027536  0x0000751d beq  0x00000053 , 0x00006b96 
- 00027537  0x0000751f fetch  0x00000001 , 0x00004254 
- 00027538  0x00007520 set1  0x00000003 , 0x0000003f 
- 00027539  0x00007521 store  0x00000001 , 0x00004254 
- 00027540  0x00007522 branch  0x00006b97 
- 00027541  0x00007524 branch  0x00006b95 
- 00027542  0x00007526 branch  0x00006b46 
- 00027543  0x00007528 rtn 
- 00027544  0x0000752b fetch  0x00000001 , 0x00004567 
- 00027545  0x0000752c rtn  0x00000034 
- 00027546  0x0000752d beq  0x00000003 , 0x00006b9c 
- 00027547  0x0000752e branch  0x00002a8c 
- 00027548  0x00007531 jam  0x00000000 , 0x00004567 
- 00027549  0x00007532 call  0x000052d2 
- 00027550  0x00007533 arg  0x00000001 , 0x00000002 
- 00027551  0x00007534 fetcht  0x00000001 , 0x0000455d 
- 00027552  0x00007535 lshift2  0x00000002 , 0x00000002 
- 00027553  0x00007537 or_into  0x00000003 , 0x00000002 
- 00027554  0x00007538 arg  0x000000aa , 0x00000011 
- 00027555  0x00007539 call  0x00006bfc 
- 00027556  0x0000753a call  0x000052e0 
- 00027557  0x0000753b copy  0x00000005 , 0x00000006 
- 00027558  0x0000753c ifetch  0x00000002 , 0x00000006 
- 00027559  0x0000753d branch  0x00002a8c , 0x00000034 
- 00027560  0x0000753e rtn 
- 00027561  0x00007541 call  0x000052e0 
- 00027562  0x00007542 setarg  0x00000004 
- 00027563  0x00007543 istore  0x00000002 , 0x00000005 
- 00027564  0x00007544 fetch  0x00000002 , 0x0000424a 
- 00027565  0x00007545 istore  0x00000002 , 0x00000005 
- 00027566  0x00007546 fetch  0x00000001 , 0x000004fb 
- 00027567  0x00007547 istore  0x00000001 , 0x00000005 
- 00027568  0x00007548 bpatchx  0x000000aa , 0x00004035 
- 00027569  0x00007549 setarg  0x0000013f 
- 00027570  0x0000754a istore  0x00000002 , 0x00000005 
- 00027571  0x0000754b fetch  0x00000001 , 0x000004fe 
- 00027572  0x0000754c istore  0x00000001 , 0x00000005 
- 00027573  0x0000754d rtn 
- 00027574  0x0000754f call  0x000052d2 
- 00027575  0x00007550 call  0x000052e0 
- 00027576  0x00007551 setarg  0x00000004 
- 00027577  0x00007552 istore  0x00000002 , 0x00000005 
- 00027578  0x00007553 fetch  0x00000002 , 0x0000424a 
- 00027579  0x00007554 istore  0x00000002 , 0x00000005 
- 00027580  0x00007555 fetch  0x00000001 , 0x000004fb 
- 00027581  0x00007556 istore  0x00000001 , 0x00000005 
- 00027582  0x00007557 bpatchx  0x000000ab , 0x00004035 
- 00027583  0x00007558 setarg  0x00000173 
- 00027584  0x00007559 istore  0x00000002 , 0x00000005 
- 00027585  0x0000755a fetch  0x00000001 , 0x000004fe 
- 00027586  0x0000755b istore  0x00000001 , 0x00000005 
- 00027587  0x0000755c rtn 
- 00027588  0x0000755e call  0x000052e0 
- 00027589  0x0000755f setarg  0x0000000e 
- 00027590  0x00007560 istore  0x00000002 , 0x00000005 
- 00027591  0x00007561 fetch  0x00000002 , 0x0000424a 
- 00027592  0x00007562 istore  0x00000002 , 0x00000005 
- 00027593  0x00007563 fetch  0x00000001 , 0x00004563 
- 00027594  0x00007564 lshift  0x0000003f , 0x0000003f 
- 00027595  0x00007565 set1  0x00000000 , 0x0000003f 
- 00027596  0x00007566 istore  0x00000001 , 0x00000005 
- 00027597  0x00007567 bpatchx  0x000000ac , 0x00004035 
- 00027598  0x00007568 setarg  0x000015ef 
- 00027599  0x00007569 istore  0x00000002 , 0x00000005 
- 00027600  0x0000756a setarg  0x00001183 
- 00027601  0x0000756b istore  0x00000002 , 0x00000005 
- 00027602  0x0000756c copy  0x00000002 , 0x0000003f 
- 00027603  0x0000756d istore  0x00000001 , 0x00000005 
- 00027604  0x0000756e setarg  0x000000f0 
- 00027605  0x0000756f istore  0x00000003 , 0x00000005 
- 00027606  0x00007570 setarg  0x0000007f 
- 00027607  0x00007571 istore  0x00000002 , 0x00000005 
- 00027608  0x00007572 setarg  0x00000000 
- 00027609  0x00007573 istore  0x00000001 , 0x00000005 
- 00027610  0x00007574 setarg  0x00000001 
- 00027611  0x00007575 istore  0x00000001 , 0x00000005 
- 00027612  0x00007576 call  0x00006a2f 
- 00027613  0x00007577 istore  0x00000001 , 0x00000005 
- 00027614  0x00007578 jam  0x00000010 , 0x00004569 
- 00027615  0x00007579 rtn 
- 00027616  0x0000757b call  0x000052d2 
- 00027617  0x0000757c call  0x000052e0 
- 00027618  0x0000757d setarg  0x0000000e 
- 00027619  0x0000757e istore  0x00000002 , 0x00000005 
- 00027620  0x0000757f fetch  0x00000002 , 0x0000424a 
- 00027621  0x00007580 istore  0x00000002 , 0x00000005 
- 00027622  0x00007581 fetch  0x00000001 , 0x00004563 
- 00027623  0x00007582 lshift  0x0000003f , 0x0000003f 
- 00027624  0x00007583 set1  0x00000000 , 0x0000003f 
- 00027625  0x00007584 istore  0x00000001 , 0x00000005 
- 00027626  0x00007585 bpatchx  0x000000ad , 0x00004035 
- 00027627  0x00007586 setarg  0x000015ef 
- 00027628  0x00007587 istore  0x00000002 , 0x00000005 
- 00027629  0x00007588 setarg  0x00001181 
- 00027630  0x00007589 istore  0x00000002 , 0x00000005 
- 00027631  0x0000758a fetch  0x00000001 , 0x0000455d 
- 00027632  0x0000758b istore  0x00000001 , 0x00000005 
- 00027633  0x0000758c setarg  0x000000e0 
- 00027634  0x0000758d istore  0x00000003 , 0x00000005 
- 00027635  0x0000758e fetch  0x00000002 , 0x0000456c 
- 00027636  0x0000758f istore  0x00000002 , 0x00000005 
- 00027637  0x00007590 setarg  0x00000000 
- 00027638  0x00007591 istore  0x00000001 , 0x00000005 
- 00027639  0x00007592 fetch  0x00000001 , 0x0000456e 
- 00027640  0x00007593 istore  0x00000001 , 0x00000005 
- 00027641  0x00007594 call  0x00006a2f 
- 00027642  0x00007595 istore  0x00000001 , 0x00000005 
- 00027643  0x00007596 rtn 
- 00027644  0x00007598 call  0x000052e0 
- 00027645  0x00007599 setarg  0x00000008 
- 00027646  0x0000759a istore  0x00000002 , 0x00000005 
- 00027647  0x0000759b fetch  0x00000002 , 0x0000424a 
- 00027648  0x0000759c istore  0x00000002 , 0x00000005 
- 00027649  0x0000759d fetch  0x00000001 , 0x00004563 
- 00027650  0x0000759e lshift  0x0000003f , 0x0000003f 
- 00027651  0x0000759f set1  0x00000000 , 0x0000003f 
- 00027652  0x000075a0 istore  0x00000001 , 0x00000005 
- 00027653  0x000075a1 bpatchx  0x000000ae , 0x00004035 
- 00027654  0x000075a2 setarg  0x000009ef 
- 00027655  0x000075a3 istore  0x00000002 , 0x00000005 
- 00027656  0x000075a4 setarg  0x000005e3 
- 00027657  0x000075a5 istore  0x00000002 , 0x00000005 
- 00027658  0x000075a6 copy  0x00000002 , 0x0000003f 
- 00027659  0x000075a7 istore  0x00000001 , 0x00000005 
- 00027660  0x000075a8 setarg  0x0000008d 
- 00027661  0x000075a9 istore  0x00000001 , 0x00000005 
- 00027662  0x000075aa call  0x00006a2f 
- 00027663  0x000075ab istore  0x00000001 , 0x00000005 
- 00027664  0x000075ac rtn 
- 00027665  0x000075af call  0x000052d2 
- 00027666  0x000075b0 call  0x000052e0 
- 00027667  0x000075b1 setarg  0x00000008 
- 00027668  0x000075b2 istore  0x00000002 , 0x00000005 
- 00027669  0x000075b3 fetch  0x00000002 , 0x0000424a 
- 00027670  0x000075b4 istore  0x00000002 , 0x00000005 
- 00027671  0x000075b5 copy  0x00000002 , 0x0000000b 
- 00027672  0x000075b6 fetch  0x00000001 , 0x00004563 
- 00027673  0x000075b7 lshift  0x0000003f , 0x0000003f 
- 00027674  0x000075b8 set1  0x00000000 , 0x0000003f 
- 00027675  0x000075b9 istore  0x00000001 , 0x00000005 
- 00027676  0x000075ba bpatchx  0x000000af , 0x00004035 
- 00027677  0x000075bb setarg  0x000009ef 
- 00027678  0x000075bc istore  0x00000002 , 0x00000005 
- 00027679  0x000075bd setarg  0x000005e1 
- 00027680  0x000075be istore  0x00000002 , 0x00000005 
- 00027681  0x000075bf copy  0x0000000b , 0x0000003f 
- 00027682  0x000075c0 istore  0x00000001 , 0x00000005 
- 00027683  0x000075c1 setarg  0x0000008d 
- 00027684  0x000075c2 istore  0x00000001 , 0x00000005 
- 00027685  0x000075c3 call  0x00006a2f 
- 00027686  0x000075c4 istore  0x00000001 , 0x00000005 
- 00027687  0x000075c5 rtn 
- 00027688  0x000075c8 bpatchx  0x000000b0 , 0x00004036 
- 00027689  0x000075c9 fetch  0x00000001 , 0x00004569 
- 00027690  0x000075ca rtn  0x00000034 
- 00027691  0x000075cb hfetch  0x00000002 , 0x00008112 
- 00027692  0x000075cc nrtn  0x00000034 
- 00027693  0x000075cd copy  0x00000011 , 0x0000003f 
- 00027694  0x000075ce store  0x00000001 , 0x00000a9b 
- 00027695  0x000075cf storet  0x00000001 , 0x00000a9a 
- 00027696  0x000075d0 call  0x0000526e 
- 00027697  0x000075d1 nrtn  0x00000034 
- 00027698  0x000075d2 call  0x000052d2 
- 00027699  0x000075d3 call  0x000052e0 
- 00027700  0x000075d4 setarg  0x00000005 
- 00027701  0x000075d5 istore  0x00000002 , 0x00000005 
- 00027702  0x000075d6 fetch  0x00000002 , 0x0000424a 
- 00027703  0x000075d7 istore  0x00000002 , 0x00000005 
- 00027704  0x000075d8 fetch  0x00000001 , 0x0000050d 
- 00027705  0x000075d9 istore  0x00000001 , 0x00000005 
- 00027706  0x000075da setarg  0x000001ff 
- 00027707  0x000075db istore  0x00000002 , 0x00000005 
- 00027708  0x000075dc fetch  0x00000001 , 0x00004569 
- 00027709  0x000075dd istore  0x00000001 , 0x00000005 
- 00027710  0x000075de fetch  0x00000001 , 0x00004566 
- 00027711  0x000075df istore  0x00000001 , 0x00000005 
- 00027712  0x000075e0 jam  0x00000000 , 0x00004569 
- 00027713  0x000075e1 rtn 
- 00027714  0x000075e4 bpatchx  0x000000b1 , 0x00004036 
- 00027715  0x000075e5 fetch  0x00000001 , 0x0000456b 
- 00027716  0x000075e6 rtneq  0x00000001 
- 00027717  0x000075e7 fetch  0x00000002 , 0x000004ff 
- 00027718  0x000075e8 rtn  0x00000034 
- 00027719  0x000075e9 fetch  0x00000001 , 0x00004569 
- 00027720  0x000075ea increase  0x00000001 , 0x0000003f 
- 00027721  0x000075eb store  0x00000001 , 0x00004569 
- 00027722  0x000075ec rtn 
- 00027723  0x000075ef fetch  0x00000002 , 0x0000456f 
- 00027724  0x000075f0 branch  0x00007f9c 
- 00027725  0x000075f3 bpatchx  0x000000b2 , 0x00004036 
- 00027726  0x000075f5 fetch  0x00000001 , 0x00004568 
- 00027727  0x000075f6 rtn  0x00000034 
- 00027728  0x000075f7 increase  0xffffffff , 0x0000003f 
- 00027729  0x000075f8 store  0x00000001 , 0x00004568 
- 00027730  0x000075f9 fetch  0x00000002 , 0x0000455e 
- 00027731  0x000075fa fetcht  0x00000002 , 0x0000469f 
- 00027732  0x000075fb isub  0x00000002 , 0x0000003e 
- 00027733  0x000075fc branch  0x00006c57 , 0x00000002 
- 00027734  0x000075fd store  0x00000002 , 0x0000469f 
- 00027735  0x000075ff fetch  0x00000001 , 0x00004569 
- 00027736  0x00007600 branch  0x00006c5f , 0x00000034 
- 00027737  0x00007601 jam  0x00000001 , 0x00000510 
- 00027738  0x00007602 fetch  0x00000001 , 0x00004566 
- 00027739  0x00007603 store  0x00000001 , 0x0000050f 
- 00027740  0x00007604 setarg  0x000000ff 
- 00027741  0x00007605 store  0x00000001 , 0x0000050e 
- 00027742  0x00007606 branch  0x00006c64 
- 00027743  0x00007608 jam  0x00000000 , 0x00000510 
- 00027744  0x00007609 fetch  0x00000001 , 0x00004565 
- 00027745  0x0000760a store  0x00000001 , 0x0000050f 
- 00027746  0x0000760b setarg  0x000000ef 
- 00027747  0x0000760c store  0x00000001 , 0x0000050e 
- 00027748  0x0000760e bpatchx  0x000000b3 , 0x00004036 
- 00027749  0x0000760f fetch  0x00000002 , 0x0000469f 
- 00027750  0x00007610 sub  0x0000003f , 0x0000007f , 0x0000003e 
- 00027751  0x00007611 branch  0x00006c6b , 0x00000002 
- 00027752  0x00007612 fetch  0x00000001 , 0x00000510 
- 00027753  0x00007613 increase  0x00000001 , 0x0000003f 
- 00027754  0x00007614 store  0x00000001 , 0x00000510 
- 00027755  0x00007616 call  0x00006a72 
- 00027756  0x00007617 fetch  0x00000002 , 0x0000469f 
- 00027757  0x00007618 increase  0x00000008 , 0x0000003f 
- 00027758  0x00007619 fetcht  0x00000001 , 0x00000510 
- 00027759  0x0000761a iadd  0x00000002 , 0x00000011 
- 00027760  0x0000761c call  0x00005240 
- 00027761  0x0000761d store  0x00000002 , 0x00000277 
- 00027762  0x0000761e increase  0x00000004 , 0x0000003f 
- 00027763  0x0000761f store  0x00000002 , 0x00000279 
- 00027764  0x00007620 copy  0x0000003f , 0x00000005 
- 00027765  0x00007621 fetch  0x00000001 , 0x0000050d 
- 00027766  0x00007622 istore  0x00000001 , 0x00000005 
- 00027767  0x00007623 fetch  0x00000001 , 0x0000050e 
- 00027768  0x00007624 istore  0x00000001 , 0x00000005 
- 00027769  0x00007625 call  0x00006c95 
- 00027770  0x00007626 call  0x00006ca6 
- 00027771  0x00007627 bpatchx  0x000000b4 , 0x00004036 
- 00027772  0x00007628 fetch  0x00000002 , 0x00004571 
- 00027773  0x00007629 copy  0x0000003f , 0x00000003 
- 00027774  0x0000762a fetch  0x00000002 , 0x0000469f 
- 00027775  0x0000762b copy  0x0000003f , 0x00000039 
- 00027776  0x0000762c call  0x000066ea 
- 00027777  0x0000762d copy  0x00000005 , 0x00000002 
- 00027778  0x0000762e copy  0x00000003 , 0x0000003f 
- 00027779  0x0000762f store  0x00000002 , 0x00004571 
- 00027780  0x00007630 copy  0x00000002 , 0x00000005 
- 00027781  0x00007631 fetch  0x00000001 , 0x0000050f 
- 00027782  0x00007632 istore  0x00000001 , 0x00000005 
- 00027783  0x00007633 fetch  0x00000002 , 0x00000277 
- 00027784  0x00007634 copy  0x0000003f , 0x00000005 
- 00027785  0x00007635 fetch  0x00000002 , 0x0000469f 
- 00027786  0x00007636 fetcht  0x00000001 , 0x00000510 
- 00027787  0x00007637 iadd  0x00000002 , 0x0000003f 
- 00027788  0x00007638 increase  0x00000004 , 0x0000003f 
- 00027789  0x00007639 istore  0x00000002 , 0x00000005 
- 00027790  0x0000763a fetch  0x00000002 , 0x0000424a 
- 00027791  0x0000763b istore  0x00000002 , 0x00000005 
- 00027792  0x0000763c jam  0x00000000 , 0x00004569 
- 00027793  0x0000763d fetch  0x00000002 , 0x00004573 
- 00027794  0x0000763e beq  0x00000000 , 0x00003a97 
- 00027795  0x0000763f jam  0x00000000 , 0x00000b05 
- 00027796  0x00007640 rtn 
- 00027797  0x00007643 bpatchx  0x000000b5 , 0x00004036 
- 00027798  0x00007644 fetch  0x00000002 , 0x0000469f 
- 00027799  0x00007645 sub  0x0000003f , 0x0000007f , 0x0000003e 
- 00027800  0x00007646 nbranch  0x00006c9d , 0x00000002 
- 00027801  0x00007647 lshift  0x0000003f , 0x0000003f 
- 00027802  0x00007648 set1  0x00000000 , 0x0000003f 
- 00027803  0x00007649 istore  0x00000001 , 0x00000005 
- 00027804  0x0000764a rtn 
- 00027805  0x0000764c fetch  0x00000002 , 0x0000469f 
- 00027806  0x0000764d rshift3  0x0000003f , 0x0000003f 
- 00027807  0x0000764e rshift4  0x0000003f , 0x00000002 
- 00027808  0x0000764f and_into  0x0000007f , 0x0000003f 
- 00027809  0x00007650 lshift  0x0000003f , 0x0000003f 
- 00027810  0x00007651 set0  0x00000000 , 0x0000003f 
- 00027811  0x00007652 istore  0x00000001 , 0x00000005 
- 00027812  0x00007653 istoret  0x00000001 , 0x00000005 
- 00027813  0x00007654 rtn 
- 00027814  0x00007656 fetch  0x00000001 , 0x00004569 
- 00027815  0x00007657 rtn  0x00000034 
- 00027816  0x00007658 istore  0x00000001 , 0x00000005 
- 00027817  0x00007659 rtn 
- 00027818  0x0000765f bpatchx  0x000000b6 , 0x00004036 
- 00027819  0x00007660 call  0x00007d9c 
- 00027820  0x00007661 call  0x000032f6 
- 00027821  0x00007662 call  0x0000631b 
- 00027822  0x00007664 bpatchx  0x000000b7 , 0x00004036 
- 00027823  0x00007665 call  0x000076dc 
- 00027824  0x00007666 call  0x000076b5 
- 00027825  0x00007667 call  0x000076c6 
- 00027826  0x0000766a call  0x0000526e 
- 00027827  0x0000766b nrtn  0x00000034 
- 00027828  0x0000766d call  0x00004da9 
- 00027829  0x0000766e call  0x0000526e 
- 00027830  0x0000766f nrtn  0x00000034 
- 00027831  0x00007670 bpatchx  0x000000b8 , 0x00004037 
- 00027832  0x00007672 call  0x00006cf5 
- 00027833  0x00007673 call  0x00004f64 
- 00027834  0x00007674 call  0x00006b98 
- 00027835  0x00007676 call  0x00006cbe 
- 00027836  0x00007677 bpatchx  0x000000b9 , 0x00004037 
- 00027837  0x0000767a branch  0x000032f2 
- 00027838  0x0000767d fetch  0x00000001 , 0x0000027f 
- 00027839  0x0000767e bbit1  0x00000000 , 0x00005087 
- 00027840  0x0000767f bbit1  0x00000007 , 0x00005091 
- 00027841  0x00007680 rtn 
- 00027842  0x00007683 bpatchx  0x000000ba , 0x00004037 
- 00027843  0x00007684 call  0x00005274 
- 00027844  0x00007685 rtn  0x00000034 
- 00027845  0x00007686 fetch  0x00000001 , 0x0000004b 
- 00027846  0x00007687 rtnbit1  0x00000006 
- 00027847  0x00007688 call  0x00005258 
- 00027848  0x00007689 store  0x00000002 , 0x0000016f 
- 00027849  0x0000768a copy  0x0000003f , 0x00000006 
- 00027850  0x0000768b ifetch  0x00000002 , 0x00000006 
- 00027851  0x0000768c increase  0x00000004 , 0x0000003f 
- 00027852  0x0000768d store  0x00000002 , 0x000041dc 
- 00027853  0x0000768e jam  0x00000006 , 0x000041db 
- 00027854  0x0000768f bpatchx  0x000000bb , 0x00004037 
- 00027855  0x00007690 fetch  0x00000002 , 0x00004246 
- 00027856  0x00007691 branch  0x00006cdd , 0x00000034 
- 00027857  0x00007692 fetch  0x00000001 , 0x0000004b 
- 00027858  0x00007693 rtnbit0  0x00000007 
- 00027859  0x00007694 set0  0x00000007 , 0x0000003f 
- 00027860  0x00007695 store  0x00000001 , 0x0000004b 
- 00027861  0x00007696 jam  0x00000005 , 0x000041db 
- 00027862  0x00007697 fetcht  0x00000002 , 0x00004246 
- 00027863  0x00007698 fetch  0x00000002 , 0x0000016f 
- 00027864  0x00007699 iadd  0x00000002 , 0x0000003f 
- 00027865  0x0000769a store  0x00000002 , 0x0000016f 
- 00027866  0x0000769b fetch  0x00000002 , 0x000041dc 
- 00027867  0x0000769c isub  0x00000002 , 0x0000003f 
- 00027868  0x0000769d store  0x00000002 , 0x000041dc 
- 00027869  0x0000769f bpatchx  0x000000bc , 0x00004037 
- 00027870  0x000076a0 fetch  0x00000002 , 0x000041dc 
- 00027871  0x000076a1 branch  0x00002a8c , 0x00000034 
- 00027872  0x000076a2 arg  0x00000104 , 0x00000002 
- 00027873  0x000076a3 isub  0x00000002 , 0x0000003f 
- 00027874  0x000076a4 nbranch  0x00006ce9 , 0x00000002 
- 00027875  0x000076a5 bpatchx  0x000000bd , 0x00004037 
- 00027876  0x000076a6 storet  0x00000002 , 0x000041dc 
- 00027877  0x000076a7 fetch  0x00000002 , 0x00004246 
- 00027878  0x000076a8 iadd  0x00000002 , 0x0000003f 
- 00027879  0x000076a9 store  0x00000002 , 0x00004246 
- 00027880  0x000076aa branch  0x00006ceb 
- 00027881  0x000076ac setarg  0x00000000 
- 00027882  0x000076ad store  0x00000002 , 0x00004246 
- 00027883  0x000076af fetch  0x00000001 , 0x0000004b 
- 00027884  0x000076b0 set1  0x00000006 , 0x0000003f 
- 00027885  0x000076b1 store  0x00000001 , 0x0000004b 
- 00027886  0x000076b2 rtn 
- 00027887  0x000076b5 fetch  0x00000001 , 0x00004684 
- 00027888  0x000076b6 bbit1  0x00000000 , 0x00006cf3 
- 00027889  0x000076b7 jam  0x00000001 , 0x00000287 
- 00027890  0x000076b8 rtn 
- 00027891  0x000076ba jam  0x0000000f , 0x00000287 
- 00027892  0x000076bb rtn 
- 00027893  0x000076be fetch  0x00000001 , 0x00004681 
- 00027894  0x000076bf nbranch  0x00006cfb , 0x00000034 
- 00027895  0x000076c1 fetch  0x00000001 , 0x00000286 
- 00027896  0x000076c3 rtn  0x00000034 
- 00027897  0x000076c5 jam  0x00000000 , 0x00000286 
- 00027898  0x000076c7 rtn 
- 00027899  0x000076cb bpatchx  0x000000be , 0x00004037 
- 00027900  0x000076cc fetch  0x00000001 , 0x00000287 
- 00027901  0x000076cd rtn  0x00000034 
- 00027902  0x000076ce beq  0x00000001 , 0x00006d1b 
- 00027903  0x000076cf beq  0x00000002 , 0x00006d74 
- 00027904  0x000076d0 beq  0x00000003 , 0x00006d21 
- 00027905  0x000076d1 beq  0x00000004 , 0x00006d78 
- 00027906  0x000076d2 beq  0x0000003b , 0x00006d2b 
- 00027907  0x000076d3 beq  0x0000003c , 0x00006d7b 
- 00027908  0x000076d4 beq  0x0000000d , 0x00006d30 
- 00027909  0x000076d5 beq  0x0000000e , 0x00006d80 
- 00027910  0x000076d6 beq  0x0000000f , 0x00006d33 
- 00027911  0x000076d7 beq  0x00000010 , 0x00006d86 
- 00027912  0x000076d8 beq  0x00000011 , 0x00006d39 
- 00027913  0x000076d9 beq  0x00000012 , 0x00006d8a 
- 00027914  0x000076da beq  0x00000013 , 0x00006d3f 
- 00027915  0x000076db beq  0x00000014 , 0x00006d8e 
- 00027916  0x000076dc beq  0x00000015 , 0x00006d45 
- 00027917  0x000076dd beq  0x00000016 , 0x00006d92 
- 00027918  0x000076de beq  0x00000017 , 0x00006d4b 
- 00027919  0x000076df beq  0x00000018 , 0x00006d97 
- 00027920  0x000076e0 beq  0x00000019 , 0x00006d51 
- 00027921  0x000076e1 beq  0x0000001a , 0x00006d9b 
- 00027922  0x000076e2 beq  0x0000001b , 0x00006d57 
- 00027923  0x000076e3 beq  0x0000001c , 0x00006d9f 
- 00027924  0x000076e4 beq  0x0000001d , 0x00006d5d 
- 00027925  0x000076e5 beq  0x0000001e , 0x00006da4 
- 00027926  0x000076e6 beq  0x0000001f , 0x00006d63 
- 00027927  0x000076e7 beq  0x00000020 , 0x00006da8 
- 00027928  0x000076e8 beq  0x00000021 , 0x00006d6e 
- 00027929  0x000076e9 beq  0x00000022 , 0x00006dac 
- 00027930  0x000076eb rtn 
- 00027931  0x000076ed call  0x00006db7 
- 00027932  0x000076ee jam  0x00000002 , 0x00000287 
- 00027933  0x000076ef fetch  0x00000001 , 0x00004250 
- 00027934  0x000076f0 set1  0x00000000 , 0x0000003f 
- 00027935  0x000076f1 store  0x00000001 , 0x00004250 
- 00027936  0x000076f2 rtn 
- 00027937  0x000076f4 jam  0x00000004 , 0x00000287 
- 00027938  0x000076f5 fetch  0x00000001 , 0x00004250 
- 00027939  0x000076f6 rtnbit1  0x00000002 
- 00027940  0x000076f7 jam  0x00000003 , 0x00000287 
- 00027941  0x000076f8 call  0x00006dbe 
- 00027942  0x000076f9 jam  0x00000004 , 0x00000287 
- 00027943  0x000076fa fetch  0x00000001 , 0x00004250 
- 00027944  0x000076fb set1  0x00000002 , 0x0000003f 
- 00027945  0x000076fc store  0x00000001 , 0x00004250 
- 00027946  0x000076fd rtn 
- 00027947  0x000076ff call  0x00005274 
- 00027948  0x00007700 nrtn  0x00000034 
- 00027949  0x00007701 call  0x00006dcd 
- 00027950  0x00007702 jam  0x0000003c , 0x00000287 
- 00027951  0x00007703 rtn 
- 00027952  0x00007705 call  0x00006dc3 
- 00027953  0x00007706 jam  0x0000000e , 0x00000287 
- 00027954  0x00007707 rtn 
- 00027955  0x00007709 call  0x00006ddd 
- 00027956  0x0000770a jam  0x00000010 , 0x00000287 
- 00027957  0x0000770b fetch  0x00000001 , 0x00004252 
- 00027958  0x0000770c set1  0x00000000 , 0x0000003f 
- 00027959  0x0000770d store  0x00000001 , 0x00004252 
- 00027960  0x0000770e rtn 
- 00027961  0x00007710 call  0x00006de4 
- 00027962  0x00007711 jam  0x00000012 , 0x00000287 
- 00027963  0x00007712 fetch  0x00000001 , 0x00004252 
- 00027964  0x00007713 set1  0x00000002 , 0x0000003f 
- 00027965  0x00007714 store  0x00000001 , 0x00004252 
- 00027966  0x00007715 rtn 
- 00027967  0x00007717 call  0x00006de9 
- 00027968  0x00007718 jam  0x00000014 , 0x00000287 
- 00027969  0x00007719 fetch  0x00000001 , 0x00004253 
- 00027970  0x0000771a set1  0x00000000 , 0x0000003f 
- 00027971  0x0000771b store  0x00000001 , 0x00004253 
- 00027972  0x0000771c rtn 
- 00027973  0x0000771e call  0x00006df0 
- 00027974  0x0000771f jam  0x00000016 , 0x00000287 
- 00027975  0x00007720 fetch  0x00000001 , 0x00004253 
- 00027976  0x00007721 set1  0x00000002 , 0x0000003f 
- 00027977  0x00007722 store  0x00000001 , 0x00004253 
- 00027978  0x00007723 rtn 
- 00027979  0x00007725 call  0x00006dd1 
- 00027980  0x00007726 jam  0x00000018 , 0x00000287 
- 00027981  0x00007727 fetch  0x00000001 , 0x00004251 
- 00027982  0x00007728 set1  0x00000000 , 0x0000003f 
- 00027983  0x00007729 store  0x00000001 , 0x00004251 
- 00027984  0x0000772a rtn 
- 00027985  0x0000772c call  0x00006dd8 
- 00027986  0x0000772d jam  0x0000001a , 0x00000287 
- 00027987  0x0000772e fetch  0x00000001 , 0x00004251 
- 00027988  0x0000772f set1  0x00000002 , 0x0000003f 
- 00027989  0x00007730 store  0x00000001 , 0x00004251 
- 00027990  0x00007731 rtn 
- 00027991  0x00007733 call  0x00006df5 
- 00027992  0x00007734 jam  0x0000001c , 0x00000287 
- 00027993  0x00007735 fetch  0x00000001 , 0x00004251 
- 00027994  0x00007736 set1  0x00000006 , 0x0000003f 
- 00027995  0x00007737 store  0x00000001 , 0x00004251 
- 00027996  0x00007738 rtn 
- 00027997  0x0000773a call  0x00006dfc 
- 00027998  0x0000773b fetch  0x00000001 , 0x00004254 
- 00027999  0x0000773c set1  0x00000000 
- 00028000  0x0000773d store  0x00000001 , 0x00004254 
- 00028001  0x0000773e jam  0x0000001e , 0x00000287 
- 00028002  0x0000773f rtn 
- 00028003  0x00007741 call  0x00006e02 
- 00028004  0x00007742 fetch  0x00000001 , 0x00004254 
- 00028005  0x00007743 set1  0x00000002 
- 00028006  0x00007744 store  0x00000001 , 0x00004254 
- 00028007  0x00007745 jam  0x00000020 , 0x00000287 
- 00028008  0x00007746 fetch  0x00000001 , 0x00004564 
- 00028009  0x00007747 lshift3  0x0000003f , 0x0000003f 
- 00028010  0x00007748 or_into  0x00000003 , 0x0000003f 
- 00028011  0x00007749 arg  0x00004565 , 0x00000002 
- 00028012  0x0000774a storet  0x00000002 , 0x000004f7 
- 00028013  0x0000774b branch  0x00006a35 
- 00028014  0x0000774d call  0x00006e0c 
- 00028015  0x0000774e fetch  0x00000001 , 0x00004254 
- 00028016  0x0000774f set1  0x00000004 
- 00028017  0x00007750 store  0x00000001 , 0x00004254 
- 00028018  0x00007751 jam  0x00000022 , 0x00000287 
- 00028019  0x00007752 rtn 
- 00028020  0x00007755 fetch  0x00000001 , 0x00004250 
- 00028021  0x00007756 rtnbit0  0x00000001 
- 00028022  0x00007757 jam  0x00000003 , 0x00000287 
- 00028023  0x00007758 branch  0x00006cfb 
- 00028024  0x0000775a fetch  0x00000001 , 0x00004250 
- 00028025  0x0000775b rtnne  0x0000003f 
- 00028026  0x0000775c jam  0x0000003b , 0x00000287 
- 00028027  0x0000775e fetch  0x00000001 , 0x00000285 
- 00028028  0x0000775f rtnne  0x00000017 
- 00028029  0x00007760 jam  0x00000000 , 0x00000285 
- 00028030  0x00007761 jam  0x0000000d , 0x00000287 
- 00028031  0x00007762 branch  0x00006cfb 
- 00028032  0x00007764 fetch  0x00000001 , 0x00004250 
- 00028033  0x00007765 nrtn  0x00000034 
- 00028034  0x00007766 fetch  0x00000001 , 0x00004684 
- 00028035  0x00007767 bbit1  0x00000000 , 0x00006daf 
- 00028036  0x00007768 bbit1  0x00000006 , 0x00006db1 
- 00028037  0x00007769 branch  0x00006db5 
- 00028038  0x0000776b fetch  0x00000001 , 0x00004252 
- 00028039  0x0000776c rtnbit0  0x00000001 
- 00028040  0x0000776d jam  0x00000011 , 0x00000287 
- 00028041  0x0000776e branch  0x00006cfb 
- 00028042  0x00007770 fetch  0x00000001 , 0x00004252 
- 00028043  0x00007771 rtnne  0x0000003f 
- 00028044  0x00007772 jam  0x00000013 , 0x00000287 
- 00028045  0x00007773 branch  0x00006cfb 
- 00028046  0x00007775 fetch  0x00000001 , 0x00004253 
- 00028047  0x00007776 rtnbit0  0x00000001 
- 00028048  0x00007777 jam  0x00000015 , 0x00000287 
- 00028049  0x00007778 branch  0x00006cfb 
- 00028050  0x0000777a fetch  0x00000001 , 0x00004253 
- 00028051  0x0000777b rtnne  0x0000003f 
- 00028052  0x0000777c fetch  0x00000001 , 0x00004684 
- 00028053  0x0000777d bbit1  0x00000006 , 0x00006db1 
- 00028054  0x0000777e branch  0x00006db5 
- 00028055  0x00007780 fetch  0x00000001 , 0x00004251 
- 00028056  0x00007781 rtnbit0  0x00000001 
- 00028057  0x00007782 jam  0x00000019 , 0x00000287 
- 00028058  0x00007783 branch  0x00006cfb 
- 00028059  0x00007785 fetch  0x00000001 , 0x00004251 
- 00028060  0x00007786 rtnne  0x0000003f 
- 00028061  0x00007787 jam  0x0000001b , 0x00000287 
- 00028062  0x00007788 branch  0x00006cfb 
- 00028063  0x0000778a fetch  0x00000001 , 0x00004251 
- 00028064  0x0000778b rtnne  0x000000ff 
- 00028065  0x0000778c fetch  0x00000001 , 0x00004684 
- 00028066  0x0000778d bbit1  0x00000006 , 0x00006db3 
- 00028067  0x0000778e branch  0x00006db5 
- 00028068  0x00007790 fetch  0x00000001 , 0x00004254 
- 00028069  0x00007791 rtnbit0  0x00000001 
- 00028070  0x00007792 jam  0x0000001f , 0x00000287 
- 00028071  0x00007793 branch  0x00006cfb 
- 00028072  0x00007795 fetch  0x00000001 , 0x00004254 
- 00028073  0x00007796 rtnbit0  0x00000003 
- 00028074  0x00007797 jam  0x00000021 , 0x00000287 
- 00028075  0x00007798 branch  0x00006cfb 
- 00028076  0x0000779a fetch  0x00000001 , 0x00004254 
- 00028077  0x0000779b rtnne  0x000000ff 
- 00028078  0x0000779c branch  0x00006db5 
- 00028079  0x0000779f jam  0x0000000f , 0x00000287 
- 00028080  0x000077a0 branch  0x00006cfb 
- 00028081  0x000077a3 jam  0x00000017 , 0x00000287 
- 00028082  0x000077a4 branch  0x00006cfb 
- 00028083  0x000077a6 jam  0x0000001d , 0x00000287 
- 00028084  0x000077a7 branch  0x00006cfb 
- 00028085  0x000077ac jam  0x00000000 , 0x00000287 
- 00028086  0x000077ad rtn 
- 00028087  0x000077af bpatchx  0x000000bf , 0x00004037 
- 00028088  0x000077b0 call  0x000052b8 
- 00028089  0x000077b1 setarg  0x00000001 
- 00028090  0x000077b2 copy  0x0000003f , 0x00000002 
- 00028091  0x000077b3 setarg  0x00000050 
- 00028092  0x000077b4 copy  0x0000003f , 0x0000000b 
- 00028093  0x000077b5 branch  0x000050a8 
- 00028094  0x000077b8 bpatchx  0x000000c0 , 0x00004038 
- 00028095  0x000077b9 call  0x000052b8 
- 00028096  0x000077ba fetch  0x00000002 , 0x00004248 
- 00028097  0x000077bb copy  0x0000003f , 0x00000002 
- 00028098  0x000077bc branch  0x000050b7 
- 00028099  0x000077bf bpatchx  0x000000c1 , 0x00004038 
- 00028100  0x000077c0 call  0x000052b8 
- 00028101  0x000077c1 fetch  0x00000002 , 0x00004248 
- 00028102  0x000077c2 copy  0x0000003f , 0x00000002 
- 00028103  0x000077c3 arg  0x00000050 , 0x0000000b 
- 00028104  0x000077c4 call  0x000050cc 
- 00028105  0x000077c5 fetch  0x00000001 , 0x00004250 
- 00028106  0x000077c6 set0  0x00000005 , 0x0000003f 
- 00028107  0x000077c7 store  0x00000001 , 0x00004250 
- 00028108  0x000077c8 rtn 
- 00028109  0x000077cb bpatchx  0x000000c2 , 0x00004038 
- 00028110  0x000077cc call  0x000052c5 
- 00028111  0x000077cd call  0x00007138 
- 00028112  0x000077ce branch  0x000050e7 
- 00028113  0x000077d1 bpatchx  0x000000c3 , 0x00004038 
- 00028114  0x000077d2 call  0x000052b8 
- 00028115  0x000077d3 setarg  0x00000003 
- 00028116  0x000077d4 copy  0x0000003f , 0x00000002 
- 00028117  0x000077d5 setarg  0x00000051 
- 00028118  0x000077d6 copy  0x0000003f , 0x0000000b 
- 00028119  0x000077d7 branch  0x000050a8 
- 00028120  0x000077da bpatchx  0x000000c4 , 0x00004038 
- 00028121  0x000077db call  0x000052b8 
- 00028122  0x000077dc fetch  0x00000002 , 0x0000424a 
- 00028123  0x000077dd copy  0x0000003f , 0x00000002 
- 00028124  0x000077de branch  0x000050b7 
- 00028125  0x000077e1 bpatchx  0x000000c5 , 0x00004038 
- 00028126  0x000077e2 call  0x000052b8 
- 00028127  0x000077e3 setarg  0x00000011 
- 00028128  0x000077e4 copy  0x0000003f , 0x00000002 
- 00028129  0x000077e5 setarg  0x00000052 
- 00028130  0x000077e6 copy  0x0000003f , 0x0000000b 
- 00028131  0x000077e7 branch  0x000050a8 
- 00028132  0x000077ea bpatchx  0x000000c6 , 0x00004038 
- 00028133  0x000077eb call  0x000052b8 
- 00028134  0x000077ec fetch  0x00000002 , 0x0000424c 
- 00028135  0x000077ed copy  0x0000003f , 0x00000002 
- 00028136  0x000077ee branch  0x000050b7 
- 00028137  0x000077f1 bpatchx  0x000000c7 , 0x00004038 
- 00028138  0x000077f2 call  0x000052b8 
- 00028139  0x000077f3 setarg  0x00000013 
- 00028140  0x000077f4 copy  0x0000003f , 0x00000002 
- 00028141  0x000077f5 setarg  0x00000053 
- 00028142  0x000077f6 copy  0x0000003f , 0x0000000b 
- 00028143  0x000077f7 branch  0x000050a8 
- 00028144  0x000077fa bpatchx  0x000000c8 , 0x00004039 
- 00028145  0x000077fb call  0x000052b8 
- 00028146  0x000077fc fetch  0x00000002 , 0x0000424e 
- 00028147  0x000077fd copy  0x0000003f , 0x00000002 
- 00028148  0x000077fe branch  0x000050b7 
- 00028149  0x00007801 bpatchx  0x000000c9 , 0x00004039 
- 00028150  0x00007802 call  0x000052d2 
- 00028151  0x00007804 jam  0x00000003 , 0x000004fb 
- 00028152  0x00007805 jam  0x0000001c , 0x000004fe 
- 00028153  0x00007806 call  0x00006ba9 
- 00028154  0x00007807 jam  0x00000001 , 0x00004563 
- 00028155  0x00007808 rtn 
- 00028156  0x0000780b bpatchx  0x000000ca , 0x00004039 
- 00028157  0x0000780c call  0x000052d2 
- 00028158  0x0000780d fetcht  0x00000001 , 0x00004564 
- 00028159  0x0000780e call  0x00006a79 
- 00028160  0x0000780f storet  0x00000001 , 0x0000455d 
- 00028161  0x00007810 branch  0x00006bc4 
- 00028162  0x00007813 bpatchx  0x000000cb , 0x00004039 
- 00028163  0x00007814 call  0x000052d2 
- 00028164  0x00007815 fetcht  0x00000001 , 0x0000455d 
- 00028165  0x00007816 call  0x00006a73 
- 00028166  0x00007817 call  0x00006a1a 
- 00028167  0x00007818 store  0x00000001 , 0x000004fe 
- 00028168  0x00007819 fetcht  0x00000001 , 0x0000455d 
- 00028169  0x0000781a call  0x00006a73 
- 00028170  0x0000781b storet  0x00000001 , 0x000004fb 
- 00028171  0x0000781c branch  0x00006ba9 
- 00028172  0x0000781f bpatchx  0x000000cc , 0x00004039 
- 00028173  0x00007820 call  0x000052d2 
- 00028174  0x00007821 fetcht  0x00000001 , 0x0000455d 
- 00028175  0x00007822 call  0x00006a73 
- 00028176  0x00007823 branch  0x00006bfc 
- 00028177  0x00007831 bpatchx  0x000000cd , 0x00004039 
- 00028178  0x00007832 fetch  0x00000002 , 0x00000264 
- 00028179  0x00007833 iforce  0x00000006 
- 00028180  0x00007836 ifetch  0x00000001 , 0x00000006 
- 00028181  0x00007837 copy  0x0000003f , 0x00000012 
- 00028182  0x00007838 store  0x00000001 , 0x0000051b 
- 00028183  0x00007839 ifetch  0x00000002 , 0x00000006 
- 00028184  0x0000783a store  0x00000002 , 0x0000051c 
- 00028185  0x0000783b ifetch  0x00000001 , 0x00000006 
- 00028186  0x0000783c lshift8  0x0000003f , 0x0000000b 
- 00028187  0x0000783d ifetch  0x00000001 , 0x00000006 
- 00028188  0x0000783e iadd  0x0000000b , 0x0000000b 
- 00028189  0x0000783f bpatchx  0x000000ce , 0x00004039 
- 00028190  0x00007840 copy  0x00000006 , 0x00000002 
- 00028191  0x00007841 arg  0x00000004 , 0x00000039 
- 00028192  0x00007842 arg  0x0000052a , 0x00000005 
- 00028193  0x00007843 call  0x00007ec6 
- 00028194  0x00007844 copy  0x00000002 , 0x00000006 
- 00028195  0x00007845 deposit  0x00000012 
- 00028196  0x00007846 beq  0x00000001 , 0x00006fba 
- 00028197  0x00007847 beq  0x00000002 , 0x00006e2c 
- 00028198  0x00007848 beq  0x00000003 , 0x00006fba 
- 00028199  0x00007849 beq  0x00000004 , 0x00006e54 
- 00028200  0x0000784a beq  0x00000005 , 0x00006fba 
- 00028201  0x0000784b beq  0x00000006 , 0x00006f02 
- 00028202  0x0000784c beq  0x00000007 , 0x00006fba 
- 00028203  0x0000784d branch  0x00006fc1 
- 00028204  0x00007859 bpatchx  0x000000cf , 0x00004039 
- 00028205  0x0000785a call  0x00006fd0 
- 00028206  0x0000785b compare  0x00000001 , 0x00000002 , 0x000000ff 
- 00028207  0x0000785c branch  0x00007040 , 0x00000001 
- 00028208  0x0000785d compare  0x000000ff , 0x00000002 , 0x000000ff 
- 00028209  0x0000785e branch  0x00006fc4 , 0x00000001 
- 00028210  0x00007860 ifetch  0x00000002 , 0x00000006 
- 00028211  0x00007861 store  0x00000002 , 0x00000522 
- 00028212  0x00007862 increase  0xfffffffe , 0x0000000b 
- 00028213  0x00007864 increase  0xffffffff , 0x0000000b 
- 00028214  0x00007865 nbranch  0x00006fbe , 0x00000005 
- 00028215  0x00007866 arg  0x00000511 , 0x0000000b 
- 00028216  0x00007867 ifetch  0x00000002 , 0x0000000b 
- 00028217  0x00007868 rtn  0x00000034 
- 00028218  0x00007869 call  0x00007082 
- 00028219  0x0000786a call  0x000052d0 
- 00028220  0x0000786b force  0x00000003 , 0x0000003f 
- 00028221  0x0000786c istore  0x00000001 , 0x00000005 
- 00028222  0x0000786d fetch  0x00000002 , 0x0000051c 
- 00028223  0x0000786e istore  0x00000002 , 0x00000005 
- 00028224  0x0000786f lshift2  0x00000007 , 0x0000003f 
- 00028225  0x00007870 add  0x0000003f , 0x00000005 , 0x0000003f 
- 00028226  0x00007871 add  0x0000003f , 0x00000005 , 0x00000013 
- 00028227  0x00007872 byteswap  0x0000003f , 0x0000003f 
- 00028228  0x00007873 istore  0x00000002 , 0x00000005 
- 00028229  0x00007874 deposit  0x00000007 
- 00028230  0x00007875 byteswap  0x0000003f , 0x0000003f 
- 00028231  0x00007876 istore  0x00000002 , 0x00000005 
- 00028232  0x00007877 istore  0x00000002 , 0x00000005 
- 00028233  0x00007878 arg  0x0000052a , 0x00000006 
- 00028234  0x00007879 copy  0x00000007 , 0x00000039 
- 00028235  0x0000787a branch  0x00006e4f , 0x00000005 
- 00028236  0x0000787c ifetch  0x00000004 , 0x00000006 
- 00028237  0x0000787d istore  0x00000004 , 0x00000005 
- 00028238  0x0000787e loop  0x00006e4c 
- 00028239  0x00007880 force  0x00000000 , 0x0000003f 
- 00028240  0x00007881 istore  0x00000001 , 0x00000005 
- 00028241  0x00007882 deposit  0x00000013 
- 00028242  0x00007883 store  0x00000002 , 0x00000275 
- 00028243  0x00007885 rtn 
- 00028244  0x00007891 bpatchx  0x000000d0 , 0x0000403a 
- 00028245  0x00007892 ifetch  0x00000004 , 0x00000006 
- 00028246  0x00007893 store  0x00000004 , 0x00000524 
- 00028247  0x00007894 increase  0xfffffffc , 0x0000000b 
- 00028248  0x00007895 call  0x00006f2e 
- 00028249  0x00007896 store  0x00000002 , 0x00000520 
- 00028250  0x00007897 increase  0xfffffffe , 0x0000000b 
- 00028251  0x00007898 call  0x00007028 
- 00028252  0x00007899 branch  0x00006fc4 , 0x00000005 
- 00028253  0x0000789a compare  0x00000005 , 0x00000011 , 0x000000ff 
- 00028254  0x0000789c branch  0x00006e62 , 0x00000001 
- 00028255  0x0000789e arg  0x0000052a , 0x00000005 
- 00028256  0x0000789f force  0x00000000 , 0x00000007 
- 00028257  0x000078a0 branch  0x00006e71 
- 00028258  0x000078a2 ifetch  0x00000001 , 0x00000006 
- 00028259  0x000078a3 bne  0x0000000a , 0x00006fc4 
- 00028260  0x000078a4 ifetch  0x00000002 , 0x00000006 
- 00028261  0x000078a5 nbranch  0x00006e6f , 0x00000034 
- 00028262  0x000078a6 ifetch  0x00000001 , 0x00000006 
- 00028263  0x000078a7 bne  0x000000ff , 0x00006e6d 
- 00028264  0x000078a8 ifetch  0x00000001 , 0x00000006 
- 00028265  0x000078a9 bne  0x000000ff , 0x00006e6b 
- 00028266  0x000078aa branch  0x00006eb8 
- 00028267  0x000078ac increase  0xfffffffb , 0x00000006 
- 00028268  0x000078ad branch  0x00006e5f 
- 00028269  0x000078af increase  0xfffffffc , 0x00000006 
- 00028270  0x000078b0 branch  0x00006e5f 
- 00028271  0x000078b2 increase  0xfffffffd , 0x00000006 
- 00028272  0x000078b3 branch  0x00006e5f 
- 00028273  0x000078b5 ifetch  0x00000001 , 0x00000006 
- 00028274  0x000078b6 beq  0x00000009 , 0x00006e86 
- 00028275  0x000078b7 beq  0x0000000a , 0x00006e74 
- 00028276  0x000078b9 ifetch  0x00000002 , 0x00000006 
- 00028277  0x000078ba istore  0x00000002 , 0x00000005 
- 00028278  0x000078bb increase  0x00000001 , 0x00000007 
- 00028279  0x000078bc byteswap  0x0000003f , 0x00000012 
- 00028280  0x000078bd ifetch  0x00000002 , 0x00000006 
- 00028281  0x000078be byteswap  0x0000003f , 0x0000003f 
- 00028282  0x000078c0 increase  0x00000001 , 0x00000012 
- 00028283  0x000078c1 isub  0x00000012 , 0x0000003e 
- 00028284  0x000078c2 nbranch  0x00006e83 , 0x00000002 
- 00028285  0x000078c3 copy  0x0000003f , 0x00000013 
- 00028286  0x000078c4 byteswap  0x00000012 , 0x0000003f 
- 00028287  0x000078c5 istore  0x00000002 , 0x00000005 
- 00028288  0x000078c6 increase  0x00000001 , 0x00000007 
- 00028289  0x000078c7 copy  0x00000013 , 0x0000003f 
- 00028290  0x000078c8 branch  0x00006e7a 
- 00028291  0x000078ca increase  0xfffffffb , 0x0000000b 
- 00028292  0x000078cb increase  0xfffffffb , 0x00000011 
- 00028293  0x000078cc branch  0x00006e8b 
- 00028294  0x000078ce ifetch  0x00000002 , 0x00000006 
- 00028295  0x000078cf istore  0x00000002 , 0x00000005 
- 00028296  0x000078d0 increase  0x00000001 , 0x00000007 
- 00028297  0x000078d1 increase  0xfffffffd , 0x0000000b 
- 00028298  0x000078d2 increase  0xfffffffd , 0x00000011 
- 00028299  0x000078d4 nbranch  0x00006fc4 , 0x00000002 
- 00028300  0x000078d5 nbranch  0x00006e71 , 0x00000005 
- 00028301  0x000078d6 increase  0xffffffff , 0x0000000b 
- 00028302  0x000078d7 nbranch  0x00006fc4 , 0x00000005 
- 00028303  0x000078d9 call  0x000052d0 
- 00028304  0x000078da increase  0x0000000a , 0x00000005 
- 00028305  0x000078db arg  0x0000052a , 0x00000011 
- 00028306  0x000078dd copy  0x00000007 , 0x0000003f 
- 00028307  0x000078de branch  0x00006ea5 , 0x00000034 
- 00028308  0x000078df ifetch  0x00000002 , 0x00000011 
- 00028309  0x000078e0 branch  0x00006ea5 , 0x00000034 
- 00028310  0x000078e1 iforce  0x00000012 
- 00028311  0x000078e2 fetch  0x00000004 , 0x00000524 
- 00028312  0x000078e3 iforce  0x00000002 
- 00028313  0x000078e4 call  0x000070e7 
- 00028314  0x000078e5 copy  0x00000006 , 0x0000003f 
- 00028315  0x000078e6 branch  0x00006ea2 , 0x00000034 
- 00028316  0x000078e7 increase  0xfffffffd , 0x00000006 
- 00028317  0x000078e8 ifetch  0x00000003 , 0x00000006 
- 00028318  0x000078e9 istore  0x00000003 , 0x00000005 
- 00028319  0x000078ea call  0x0000705b 
- 00028320  0x000078eb iforce  0x00000039 
- 00028321  0x000078ec call  0x00007f01 
- 00028322  0x000078ee increase  0x00000002 , 0x00000011 
- 00028323  0x000078ef increase  0xffffffff , 0x00000007 
- 00028324  0x000078f0 branch  0x00006e92 
- 00028325  0x000078f3 arg  0x00000005 , 0x00000011 
- 00028326  0x000078f4 call  0x00006f84 
- 00028327  0x000078f5 fetch  0x00000002 , 0x00000275 
- 00028328  0x000078f6 beq  0x0000000b , 0x00007043 
- 00028329  0x000078f7 branch  0x00006f9a 
- 00028330  0x000078fb ifetch  0x00000001 , 0x00000006 
- 00028331  0x000078fc beq  0x00000000 , 0x00006eae 
- 00028332  0x000078fd beq  0x00000001 , 0x00006eb0 
- 00028333  0x000078fe beq  0x00000002 , 0x00006eb3 
- 00028334  0x00007900 increase  0xffffffff , 0x0000000b 
- 00028335  0x00007901 branch  0x00006eb6 
- 00028336  0x00007903 ifetch  0x00000001 , 0x00000006 
- 00028337  0x00007904 increase  0xfffffffe , 0x0000000b 
- 00028338  0x00007905 branch  0x00006eb6 
- 00028339  0x00007907 ifetch  0x00000002 , 0x00000006 
- 00028340  0x00007908 byteswap  0x0000003f , 0x0000003f 
- 00028341  0x00007909 increase  0xfffffffd , 0x0000000b 
- 00028342  0x0000790b store  0x00000002 , 0x00000519 
- 00028343  0x0000790c rtn 
- 00028344  0x0000790f increase  0xfffffffb , 0x0000000b 
- 00028345  0x00007910 call  0x00006eaa 
- 00028346  0x00007911 nbranch  0x00006fbe , 0x00000005 
- 00028347  0x00007912 fetcht  0x00000004 , 0x00000524 
- 00028348  0x00007913 call  0x000070b1 
- 00028349  0x00007914 nbranch  0x00006fbb , 0x00000005 
- 00028350  0x00007915 copy  0x00000006 , 0x00000011 
- 00028351  0x00007916 call  0x000052d0 
- 00028352  0x00007917 copy  0x00000011 , 0x00000006 
- 00028353  0x00007918 increase  0x00000003 , 0x00000005 
- 00028354  0x00007919 copy  0x00000006 , 0x0000000b 
- 00028355  0x0000791a call  0x00007062 
- 00028356  0x0000791b copy  0x0000003f , 0x00000011 
- 00028357  0x0000791d fetch  0x00000002 , 0x00000519 
- 00028358  0x0000791e copy  0x0000003f , 0x00000012 
- 00028359  0x0000791f copy  0x00000011 , 0x0000003f 
- 00028360  0x00007920 isub  0x00000012 , 0x00000012 
- 00028361  0x00007921 fetch  0x00000002 , 0x00000520 
- 00028362  0x00007922 isub  0x00000012 , 0x0000003e 
- 00028363  0x00007923 nbranch  0x00006ee7 , 0x00000002 
- 00028364  0x00007925 disable  0x00000028 
- 00028365  0x00007926 fetch  0x00000002 , 0x00000519 
- 00028366  0x00007927 branch  0x00006eda , 0x00000034 
- 00028367  0x00007928 iadd  0x0000000b , 0x00000006 
- 00028368  0x00007929 increase  0x00000003 , 0x00000012 
- 00028369  0x0000792a copy  0x00000012 , 0x00000039 
- 00028370  0x0000792b copy  0x00000039 , 0x0000003f 
- 00028371  0x0000792c increase  0x00000003 , 0x0000003f 
- 00028372  0x0000792d byteswap  0x0000003f , 0x0000003f 
- 00028373  0x0000792e istore  0x00000002 , 0x00000005 
- 00028374  0x0000792f copy  0x00000039 , 0x0000003f 
- 00028375  0x00007930 byteswap  0x0000003f , 0x0000003f 
- 00028376  0x00007931 istore  0x00000002 , 0x00000005 
- 00028377  0x00007932 branch  0x00006ef5 
- 00028378  0x00007934 add  0x00000011 , 0x00000006 , 0x00000039 
- 00028379  0x00007935 branch  0x00006ede , 0x00000028 
- 00028380  0x00007936 byteswap  0x00000039 , 0x0000003f 
- 00028381  0x00007937 branch  0x00006ee1 
- 00028382  0x00007939 copy  0x00000039 , 0x0000003f 
- 00028383  0x0000793a increase  0x00000002 , 0x0000003f 
- 00028384  0x0000793b byteswap  0x0000003f , 0x0000003f 
- 00028385  0x0000793d istore  0x00000002 , 0x00000005 
- 00028386  0x0000793e increase  0xfffffffd , 0x00000039 
- 00028387  0x0000793f byteswap  0x00000039 , 0x0000003f 
- 00028388  0x00007940 istore  0x00000002 , 0x00000005 
- 00028389  0x00007941 copy  0x0000000b , 0x00000006 
- 00028390  0x00007942 branch  0x00006ef5 
- 00028391  0x00007944 enable  0x00000028 
- 00028392  0x00007946 fetch  0x00000002 , 0x00000520 
- 00028393  0x00007947 copy  0x0000003f , 0x00000011 
- 00028394  0x00007948 copy  0x00000011 , 0x00000039 
- 00028395  0x00007949 fetch  0x00000002 , 0x00000519 
- 00028396  0x0000794a branch  0x00006eda , 0x00000034 
- 00028397  0x0000794b iadd  0x0000000b , 0x00000006 
- 00028398  0x0000794c copy  0x00000011 , 0x0000003f 
- 00028399  0x0000794d increase  0x00000005 , 0x0000003f 
- 00028400  0x0000794e byteswap  0x0000003f , 0x0000003f 
- 00028401  0x0000794f istore  0x00000002 , 0x00000005 
- 00028402  0x00007950 copy  0x00000011 , 0x0000003f 
- 00028403  0x00007951 byteswap  0x0000003f , 0x0000003f 
- 00028404  0x00007952 istore  0x00000002 , 0x00000005 
- 00028405  0x00007954 call  0x00007f01 
- 00028406  0x00007955 nbranch  0x00006efe , 0x00000028 
- 00028407  0x00007956 force  0x00000002 , 0x0000003f 
- 00028408  0x00007957 istore  0x00000001 , 0x00000005 
- 00028409  0x00007958 copy  0x00000006 , 0x0000003f 
- 00028410  0x00007959 isub  0x0000000b , 0x0000003f 
- 00028411  0x0000795a byteswap  0x0000003f , 0x0000003f 
- 00028412  0x0000795b istore  0x00000002 , 0x00000005 
- 00028413  0x0000795c branch  0x00006f00 
- 00028414  0x0000795e force  0x00000000 , 0x0000003f 
- 00028415  0x0000795f istore  0x00000001 , 0x00000005 
- 00028416  0x00007961 arg  0x00000005 , 0x00000011 
- 00028417  0x00007962 branch  0x00006fb0 
- 00028418  0x0000796e bpatchx  0x000000d1 , 0x0000403a 
- 00028419  0x0000796f call  0x00006fd0 
- 00028420  0x00007970 compare  0x000000ff , 0x00000002 , 0x000000ff 
- 00028421  0x00007971 branch  0x00006fc4 , 0x00000001 
- 00028422  0x00007972 call  0x00006f2e 
- 00028423  0x00007973 store  0x00000002 , 0x00000520 
- 00028424  0x00007974 increase  0xfffffffe , 0x0000000b 
- 00028425  0x00007975 call  0x00007028 
- 00028426  0x00007976 arg  0x0000052a , 0x00000005 
- 00028427  0x00007977 force  0x00000000 , 0x00000007 
- 00028428  0x00007979 ifetch  0x00000001 , 0x00000006 
- 00028429  0x0000797a beq  0x0000000a , 0x00006f36 
- 00028430  0x0000797b ifetch  0x00000002 , 0x00000006 
- 00028431  0x0000797c istore  0x00000002 , 0x00000005 
- 00028432  0x0000797d increase  0x00000001 , 0x00000007 
- 00028433  0x0000797e increase  0xfffffffd , 0x0000000b 
- 00028434  0x0000797f increase  0xfffffffd , 0x00000011 
- 00028435  0x00007980 nbranch  0x00006fc4 , 0x00000002 
- 00028436  0x00007981 nbranch  0x00006f0c , 0x00000005 
- 00028437  0x00007982 increase  0xffffffff , 0x0000000b 
- 00028438  0x00007983 nbranch  0x00006fc4 , 0x00000005 
- 00028439  0x00007984 call  0x000052d0 
- 00028440  0x00007985 increase  0x0000000d , 0x00000005 
- 00028441  0x00007986 fetch  0x00000002 , 0x00000511 
- 00028442  0x00007987 iforce  0x00000013 
- 00028443  0x00007988 arg  0x0000052a , 0x00000011 
- 00028444  0x0000798a ifetch  0x00000002 , 0x00000011 
- 00028445  0x0000798b branch  0x00006f29 , 0x00000034 
- 00028446  0x0000798c iforce  0x00000012 
- 00028447  0x0000798d call  0x000070c6 
- 00028448  0x0000798e branch  0x00006f27 , 0x00000034 
- 00028449  0x0000798f increase  0xfffffffd , 0x00000006 
- 00028450  0x00007990 ifetch  0x00000003 , 0x00000006 
- 00028451  0x00007991 istore  0x00000003 , 0x00000005 
- 00028452  0x00007992 call  0x0000705b 
- 00028453  0x00007993 iforce  0x00000039 
- 00028454  0x00007994 call  0x00007f01 
- 00028455  0x00007996 increase  0x00000002 , 0x00000011 
- 00028456  0x00007997 branch  0x00006f1c 
- 00028457  0x0000799a call  0x00006f83 
- 00028458  0x0000799b fetch  0x00000002 , 0x00000275 
- 00028459  0x0000799c beq  0x0000000e , 0x00007046 
- 00028460  0x0000799d call  0x00006f9a 
- 00028461  0x0000799e branch  0x00006f9a 
- 00028462  0x000079a2 ifetch  0x00000002 , 0x00000006 
- 00028463  0x000079a3 byteswap  0x0000003f , 0x0000003f 
- 00028464  0x000079a4 increase  0xfffffffd , 0x0000003f 
- 00028465  0x000079a5 arg  0x000000c8 , 0x00000002 
- 00028466  0x000079a6 isub  0x00000002 , 0x0000003e 
- 00028467  0x000079a7 nrtn  0x00000002 
- 00028468  0x000079a8 setarg  0x000000c8 
- 00028469  0x000079a9 rtn 
- 00028470  0x000079ad increase  0x00000004 , 0x00000006 
- 00028471  0x000079ae increase  0xfffffffb , 0x0000000b 
- 00028472  0x000079af increase  0xfffffffb , 0x00000011 
- 00028473  0x000079b0 nbranch  0x00006fc4 , 0x00000005 
- 00028474  0x000079b1 call  0x00006eaa 
- 00028475  0x000079b2 nbranch  0x00006fbe , 0x00000005 
- 00028476  0x000079b3 arg  0x00000511 , 0x0000000b 
- 00028477  0x000079b4 call  0x00007082 
- 00028478  0x000079b5 deposit  0x00000007 
- 00028479  0x000079b6 branch  0x00007046 , 0x00000034 
- 00028480  0x000079b7 store  0x00000001 , 0x0000054e 
- 00028481  0x000079b9 copy  0x00000012 , 0x0000003f 
- 00028482  0x000079ba store  0x00000002 , 0x0000054c 
- 00028483  0x000079bb arg  0x00000000 , 0x00000007 
- 00028484  0x000079bc arg  0x00000000 , 0x00000011 
- 00028485  0x000079bd call  0x000052d0 
- 00028486  0x000079be increase  0x0000000a , 0x00000005 
- 00028487  0x000079c0 call  0x00006f6c 
- 00028488  0x000079c1 nbranch  0x00002a8c , 0x00000028 
- 00028489  0x000079c2 copy  0x00000006 , 0x0000000b 
- 00028490  0x000079c3 copy  0x0000003f , 0x00000013 
- 00028491  0x000079c4 iadd  0x00000011 , 0x00000011 
- 00028492  0x000079c7 fetch  0x00000002 , 0x00000519 
- 00028493  0x000079c8 copy  0x0000003f , 0x00000012 
- 00028494  0x000079c9 branch  0x00006f75 , 0x00000034 
- 00028495  0x000079cb copy  0x00000011 , 0x0000003f 
- 00028496  0x000079cc isub  0x00000012 , 0x00000012 
- 00028497  0x000079cd branch  0x00006f67 , 0x00000005 
- 00028498  0x000079ce nbranch  0x00006f67 , 0x00000002 
- 00028499  0x000079cf fetch  0x00000002 , 0x00000520 
- 00028500  0x000079d0 isub  0x00000012 , 0x0000003e 
- 00028501  0x000079d1 branch  0x00006f5e , 0x00000005 
- 00028502  0x000079d2 nbranch  0x00006f5e , 0x00000002 
- 00028503  0x000079d6 copy  0x00000012 , 0x00000039 
- 00028504  0x000079d7 call  0x00006f61 
- 00028505  0x000079d8 fetch  0x00000001 , 0x0000054e 
- 00028506  0x000079d9 increase  0x00000001 , 0x00000007 
- 00028507  0x000079da isub  0x00000007 , 0x0000003e 
- 00028508  0x000079db branch  0x00006f83 , 0x00000005 
- 00028509  0x000079dc branch  0x00006fa0 
- 00028510  0x000079df copy  0x0000003f , 0x00000039 
- 00028511  0x000079e0 call  0x00006f61 
- 00028512  0x000079e1 branch  0x00006fa0 
- 00028513  0x000079e4 increase  0xfffffffd , 0x00000005 
- 00028514  0x000079e5 copy  0x00000039 , 0x00000002 
- 00028515  0x000079e6 copy  0x00000013 , 0x0000003f 
- 00028516  0x000079e7 isub  0x00000012 , 0x0000003f 
- 00028517  0x000079e8 iadd  0x0000000b , 0x00000006 
- 00028518  0x000079e9 branch  0x00007f01 
- 00028519  0x000079ec fetch  0x00000001 , 0x0000054e 
- 00028520  0x000079ed increase  0x00000001 , 0x00000007 
- 00028521  0x000079ee isub  0x00000007 , 0x0000003e 
- 00028522  0x000079ef rtn  0x00000005 
- 00028523  0x000079f0 branch  0x00006f47 
- 00028524  0x000079f3 call  0x00007fe9 
- 00028525  0x000079f4 arg  0x0000052a , 0x00000006 
- 00028526  0x000079f5 lshift2  0x00000007 , 0x0000003f 
- 00028527  0x000079f6 iadd  0x00000006 , 0x00000006 
- 00028528  0x000079f7 ifetcht  0x00000004 , 0x00000006 
- 00028529  0x000079f8 call  0x000070b1 
- 00028530  0x000079f9 nrtn  0x00000005 
- 00028531  0x000079fa call  0x0000705b 
- 00028532  0x000079fb branch  0x00007fe7 
- 00028533  0x000079fe fetch  0x00000002 , 0x00000520 
- 00028534  0x000079ff isub  0x00000011 , 0x0000003e 
- 00028535  0x00007a00 nbranch  0x00006f8f , 0x00000002 
- 00028536  0x00007a01 copy  0x00000011 , 0x00000039 
- 00028537  0x00007a02 copy  0x00000039 , 0x00000002 
- 00028538  0x00007a03 copy  0x0000000b , 0x00000006 
- 00028539  0x00007a04 call  0x00007f01 
- 00028540  0x00007a05 fetch  0x00000002 , 0x0000054c 
- 00028541  0x00007a06 isub  0x00000011 , 0x0000003e 
- 00028542  0x00007a07 branch  0x00006f81 , 0x00000005 
- 00028543  0x00007a09 call  0x00006fa0 
- 00028544  0x00007a0a branch  0x00006f94 
- 00028545  0x00007a0d call  0x00006f83 
- 00028546  0x00007a0e branch  0x00006f94 
- 00028547  0x00007a11 arg  0x00000007 , 0x00000011 
- 00028548  0x00007a13 force  0x00000000 , 0x0000003f 
- 00028549  0x00007a14 istore  0x00000001 , 0x00000005 
- 00028550  0x00007a15 call  0x00006fb0 
- 00028551  0x00007a16 fetcht  0x00000002 , 0x00000275 
- 00028552  0x00007a17 increase  0xfffffffb , 0x00000002 
- 00028553  0x00007a18 byteswap  0x00000002 , 0x0000003f 
- 00028554  0x00007a19 istore  0x00000002 , 0x00000005 
- 00028555  0x00007a1a increase  0xfffffffd , 0x00000002 
- 00028556  0x00007a1b byteswap  0x00000002 , 0x0000003f 
- 00028557  0x00007a1c istore  0x00000002 , 0x00000005 
- 00028558  0x00007a1d rtn 
- 00028559  0x00007a20 copy  0x0000003f , 0x00000039 
- 00028560  0x00007a21 copy  0x00000039 , 0x00000002 
- 00028561  0x00007a22 copy  0x0000000b , 0x00000006 
- 00028562  0x00007a23 call  0x00007f01 
- 00028563  0x00007a24 call  0x00006fa0 
- 00028564  0x00007a26 setarg  0x00000036 
- 00028565  0x00007a27 istore  0x00000001 , 0x00000005 
- 00028566  0x00007a28 fetch  0x00000002 , 0x0000054c 
- 00028567  0x00007a29 byteswap  0x0000003f , 0x0000003f 
- 00028568  0x00007a2a istore  0x00000002 , 0x00000005 
- 00028569  0x00007a2b rtn 
- 00028570  0x00007a2e setarg  0x00000036 
- 00028571  0x00007a2f istore  0x00000001 , 0x00000005 
- 00028572  0x00007a30 increase  0xfffffffd , 0x00000002 
- 00028573  0x00007a31 byteswap  0x00000002 , 0x0000003f 
- 00028574  0x00007a32 istore  0x00000002 , 0x00000005 
- 00028575  0x00007a33 rtn 
- 00028576  0x00007a36 arg  0x00000007 , 0x00000011 
- 00028577  0x00007a37 setarg  0x00000002 
- 00028578  0x00007a38 istore  0x00000001 , 0x00000005 
- 00028579  0x00007a39 fetch  0x00000002 , 0x00000519 
- 00028580  0x00007a3a iadd  0x00000002 , 0x00000002 
- 00028581  0x00007a3b byteswap  0x00000002 , 0x0000003f 
- 00028582  0x00007a3c istore  0x00000002 , 0x00000005 
- 00028583  0x00007a3d call  0x00006fb0 
- 00028584  0x00007a3e fetcht  0x00000002 , 0x00000275 
- 00028585  0x00007a3f increase  0xfffffffb , 0x00000002 
- 00028586  0x00007a40 byteswap  0x00000002 , 0x0000003f 
- 00028587  0x00007a41 istore  0x00000002 , 0x00000005 
- 00028588  0x00007a42 increase  0xfffffffb , 0x00000002 
- 00028589  0x00007a43 byteswap  0x00000002 , 0x0000003f 
- 00028590  0x00007a44 istore  0x00000002 , 0x00000005 
- 00028591  0x00007a45 rtn 
- 00028592  0x00007a48 fetch  0x00000002 , 0x00000273 
- 00028593  0x00007a49 isub  0x00000005 , 0x0000003f 
- 00028594  0x00007a4a sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00028595  0x00007a4b store  0x00000002 , 0x00000275 
- 00028596  0x00007a4c call  0x000052d0 
- 00028597  0x00007a4d copy  0x00000011 , 0x0000003f 
- 00028598  0x00007a4e istore  0x00000001 , 0x00000005 
- 00028599  0x00007a4f fetch  0x00000002 , 0x0000051c 
- 00028600  0x00007a50 istore  0x00000002 , 0x00000005 
- 00028601  0x00007a51 rtn 
- 00028602  0x00007a62 rtn 
- 00028603  0x00007a84 setarg  0x00000200 
- 00028604  0x00007a85 store  0x00000002 , 0x0000054a 
- 00028605  0x00007a86 branch  0x00006fc6 
- 00028606  0x00007a88 setarg  0x00000400 
- 00028607  0x00007a89 store  0x00000002 , 0x0000054a 
- 00028608  0x00007a8a branch  0x00006fc6 
- 00028609  0x00007a8c setarg  0x00000600 
- 00028610  0x00007a8d store  0x00000002 , 0x0000054a 
- 00028611  0x00007a8e branch  0x00006fc6 
- 00028612  0x00007a90 setarg  0x00000300 
- 00028613  0x00007a91 store  0x00000002 , 0x0000054a 
- 00028614  0x00007a93 call  0x000052d0 
- 00028615  0x00007a94 istore  0x00000001 , 0x00000005 
- 00028616  0x00007a95 fetch  0x00000002 , 0x0000051c 
- 00028617  0x00007a96 istore  0x00000002 , 0x00000005 
- 00028618  0x00007a97 setarg  0x00000200 
- 00028619  0x00007a98 istore  0x00000002 , 0x00000005 
- 00028620  0x00007a99 fetch  0x00000002 , 0x0000054a 
- 00028621  0x00007a9a istore  0x00000002 , 0x00000005 
- 00028622  0x00007a9b jam  0x00000007 , 0x00000275 
- 00028623  0x00007a9c rtn 
- 00028624  0x00007aa2 arg  0x00000000 , 0x00000012 
- 00028625  0x00007aa3 force  0x00000000 , 0x00000002 
- 00028626  0x00007aa4 arg  0x00000511 , 0x00000005 
- 00028627  0x00007aa5 call  0x00007028 
- 00028628  0x00007aa6 branch  0x00007026 , 0x00000005 
- 00028629  0x00007aa8 increase  0x00000001 , 0x00000012 
- 00028630  0x00007aa9 ifetch  0x00000001 , 0x00000006 
- 00028631  0x00007aaa increase  0xffffffff , 0x00000011 
- 00028632  0x00007aab increase  0xffffffff , 0x0000000b 
- 00028633  0x00007aac compare  0x00000018 , 0x0000003f , 0x000000f8 
- 00028634  0x00007aad nbranch  0x00007026 , 0x00000001 
- 00028635  0x00007aae compare  0x00000004 , 0x0000003f , 0x00000007 
- 00028636  0x00007aaf nbranch  0x00006ff3 , 0x00000001 
- 00028637  0x00007ab0 force  0x00000001 , 0x00000002 
- 00028638  0x00007ab2 ifetch  0x00000001 , 0x00000006 
- 00028639  0x00007ab3 increase  0xffffffff , 0x00000011 
- 00028640  0x00007ab4 increase  0xffffffff , 0x0000000b 
- 00028641  0x00007ab5 bne  0x00000000 , 0x00006fe7 
- 00028642  0x00007ab6 ifetch  0x00000001 , 0x00000006 
- 00028643  0x00007ab7 increase  0xffffffff , 0x00000011 
- 00028644  0x00007ab8 increase  0xffffffff , 0x0000000b 
- 00028645  0x00007ab9 beq  0x00000000 , 0x00006ff8 
- 00028646  0x00007aba branch  0x00006fea 
- 00028647  0x00007abc increase  0x00000001 , 0x00000006 
- 00028648  0x00007abd increase  0xffffffff , 0x00000011 
- 00028649  0x00007abe increase  0xffffffff , 0x0000000b 
- 00028650  0x00007ac0 increase  0x00000002 , 0x00000006 
- 00028651  0x00007ac1 increase  0xfffffffe , 0x00000011 
- 00028652  0x00007ac2 increase  0xfffffffe , 0x0000000b 
- 00028653  0x00007ac3 compare  0x00000000 , 0x00000002 , 0x000000ff 
- 00028654  0x00007ac4 branch  0x00007020 , 0x00000001 
- 00028655  0x00007ac5 increase  0x0000000c , 0x00000006 
- 00028656  0x00007ac6 increase  0xfffffff4 , 0x00000011 
- 00028657  0x00007ac7 increase  0xfffffff4 , 0x0000000b 
- 00028658  0x00007ac8 branch  0x00007020 
- 00028659  0x00007aca compare  0x00000002 , 0x0000003f , 0x00000007 
- 00028660  0x00007acb nbranch  0x00006ff6 , 0x00000001 
- 00028661  0x00007acc branch  0x00006fde 
- 00028662  0x00007ace compare  0x00000001 , 0x0000003f , 0x00000007 
- 00028663  0x00007acf nbranch  0x00007026 , 0x00000001 
- 00028664  0x00007ad1 increase  0xfffffffe , 0x00000011 
- 00028665  0x00007ad2 increase  0xfffffffe , 0x0000000b 
- 00028666  0x00007ad3 ifetch  0x00000002 , 0x00000006 
- 00028667  0x00007ad4 sub  0x00000012 , 0x00000004 , 0x0000003e 
- 00028668  0x00007ad5 branch  0x00006ffe , 0x00000005 
- 00028669  0x00007ad6 istore  0x00000002 , 0x00000005 
- 00028670  0x00007ad8 compare  0x00000000 , 0x00000002 , 0x000000ff 
- 00028671  0x00007ad9 branch  0x00007020 , 0x00000001 
- 00028672  0x00007ada copy  0x00000006 , 0x00000002 
- 00028673  0x00007adb ifetch  0x00000001 , 0x00000006 
- 00028674  0x00007adc bne  0x00000000 , 0x00007019 
- 00028675  0x00007add ifetch  0x00000001 , 0x00000006 
- 00028676  0x00007ade bne  0x00000000 , 0x00007019 
- 00028677  0x00007adf ifetch  0x00000001 , 0x00000006 
- 00028678  0x00007ae0 bne  0x00000010 , 0x00007019 
- 00028679  0x00007ae1 ifetch  0x00000001 , 0x00000006 
- 00028680  0x00007ae2 bne  0x00000000 , 0x00007019 
- 00028681  0x00007ae3 ifetch  0x00000001 , 0x00000006 
- 00028682  0x00007ae4 bne  0x00000080 , 0x00007019 
- 00028683  0x00007ae5 ifetch  0x00000001 , 0x00000006 
- 00028684  0x00007ae6 bne  0x00000000 , 0x00007019 
- 00028685  0x00007ae7 ifetch  0x00000001 , 0x00000006 
- 00028686  0x00007ae8 bne  0x00000000 , 0x00007019 
- 00028687  0x00007ae9 ifetch  0x00000001 , 0x00000006 
- 00028688  0x00007aea bne  0x00000080 , 0x00007019 
- 00028689  0x00007aeb ifetch  0x00000001 , 0x00000006 
- 00028690  0x00007aec bne  0x0000005f , 0x00007019 
- 00028691  0x00007aed ifetch  0x00000001 , 0x00000006 
- 00028692  0x00007aee bne  0x0000009b , 0x00007019 
- 00028693  0x00007aef ifetch  0x00000001 , 0x00000006 
- 00028694  0x00007af0 bne  0x00000034 , 0x00007019 
- 00028695  0x00007af1 ifetch  0x00000001 , 0x00000006 
- 00028696  0x00007af2 beq  0x000000fb , 0x0000701e 
- 00028697  0x00007af4 copy  0x00000002 , 0x00000006 
- 00028698  0x00007af6 increase  0x0000000c , 0x00000006 
- 00028699  0x00007af7 force  0x00000000 , 0x00000007 
- 00028700  0x00007af8 force  0x00000000 , 0x00000002 
- 00028701  0x00007af9 branch  0x0000701e 
- 00028702  0x00007afc increase  0xfffffff4 , 0x0000000b 
- 00028703  0x00007afd increase  0xfffffff4 , 0x00000011 
- 00028704  0x00007aff force  0x00000000 , 0x00000002 
- 00028705  0x00007b00 compare  0x00000000 , 0x00000011 , 0x000000ff 
- 00028706  0x00007b01 nbranch  0x00006fd5 , 0x00000001 
- 00028707  0x00007b02 force  0x00000000 , 0x0000003f 
- 00028708  0x00007b03 istore  0x00000002 , 0x00000005 
- 00028709  0x00007b04 rtn 
- 00028710  0x00007b06 arg  0x000000ff , 0x00000002 
- 00028711  0x00007b07 rtn 
- 00028712  0x00007b12 bpatchx  0x000000d4 , 0x0000403a 
- 00028713  0x00007b13 ifetch  0x00000001 , 0x00000006 
- 00028714  0x00007b14 increase  0xffffffff , 0x0000000b 
- 00028715  0x00007b15 compare  0x00000030 , 0x0000003f , 0x000000f8 
- 00028716  0x00007b16 nbranch  0x0000703e , 0x00000001 
- 00028717  0x00007b17 compare  0x00000007 , 0x0000003f , 0x00000007 
- 00028718  0x00007b18 branch  0x00007037 , 0x00000001 
- 00028719  0x00007b19 compare  0x00000006 , 0x0000003f , 0x00000007 
- 00028720  0x00007b1a branch  0x00007039 , 0x00000001 
- 00028721  0x00007b1b compare  0x00000005 , 0x0000003f , 0x00000007 
- 00028722  0x00007b1c nbranch  0x0000703e , 0x00000001 
- 00028723  0x00007b1e ifetch  0x00000001 , 0x00000006 
- 00028724  0x00007b1f copy  0x0000003f , 0x00000011 
- 00028725  0x00007b20 increase  0xffffffff , 0x0000000b 
- 00028726  0x00007b21 branch  0x0000703c 
- 00028727  0x00007b23 increase  0x00000002 , 0x00000006 
- 00028728  0x00007b24 increase  0xfffffffe , 0x0000000b 
- 00028729  0x00007b26 ifetch  0x00000002 , 0x00000006 
- 00028730  0x00007b27 byteswap  0x0000003f , 0x00000011 
- 00028731  0x00007b28 increase  0xfffffffe , 0x0000000b 
- 00028732  0x00007b2a force  0x00000001 , 0x0000003f 
- 00028733  0x00007b2b rtn 
- 00028734  0x00007b2d force  0x00000000 , 0x0000003f 
- 00028735  0x00007b2e rtn 
- 00028736  0x00007b39 setarg  0x00000003 
- 00028737  0x00007b3a store  0x00000001 , 0x0000051b 
- 00028738  0x00007b3b branch  0x00007048 
- 00028739  0x00007b3d setarg  0x00000005 
- 00028740  0x00007b3e store  0x00000001 , 0x0000051b 
- 00028741  0x00007b3f branch  0x00007048 
- 00028742  0x00007b41 setarg  0x00000007 
- 00028743  0x00007b42 store  0x00000001 , 0x0000051b 
- 00028744  0x00007b44 call  0x000052d0 
- 00028745  0x00007b47 fetch  0x00000001 , 0x0000051b 
- 00028746  0x00007b48 copy  0x0000003f , 0x00000012 
- 00028747  0x00007b49 istore  0x00000001 , 0x00000005 
- 00028748  0x00007b4a fetch  0x00000002 , 0x0000051c 
- 00028749  0x00007b4b istore  0x00000002 , 0x00000005 
- 00028750  0x00007b4c setarg  0x00000500 
- 00028751  0x00007b4d istore  0x00000002 , 0x00000005 
- 00028752  0x00007b4e compare  0x00000005 , 0x00000012 , 0x000000ff 
- 00028753  0x00007b4f branch  0x00007057 , 0x00000001 
- 00028754  0x00007b50 compare  0x00000007 , 0x00000012 , 0x000000ff 
- 00028755  0x00007b51 branch  0x00007057 , 0x00000001 
- 00028756  0x00007b52 setarg  0x00000000 
- 00028757  0x00007b53 istore  0x00000005 , 0x00000005 
- 00028758  0x00007b54 branch  0x00007059 
- 00028759  0x00007b57 setarg  0x00350200 
- 00028760  0x00007b58 istore  0x00000005 , 0x00000005 
- 00028761  0x00007b5a jam  0x0000000a , 0x00000275 
- 00028762  0x00007b5b rtn 
- 00028763  0x00007b5f call  0x00007ea2 
- 00028764  0x00007b60 call  0x00007ea5 
- 00028765  0x00007b61 call  0x00007062 
- 00028766  0x00007b62 call  0x00007e9c 
- 00028767  0x00007b63 call  0x00007e9f 
- 00028768  0x00007b64 copy  0x00000002 , 0x0000003f 
- 00028769  0x00007b65 rtn 
- 00028770  0x00007b69 ifetch  0x00000001 , 0x00000006 
- 00028771  0x00007b6a and  0x0000003f , 0x00000007 , 0x00000039 
- 00028772  0x00007b6b rshift3  0x0000003f , 0x0000003f 
- 00028773  0x00007b6c bne  0x00000000 , 0x0000706c 
- 00028774  0x00007b6e force  0x00000001 , 0x0000003f 
- 00028775  0x00007b6f force  0x00000001 , 0x00000002 
- 00028776  0x00007b70 rtn 
- 00028777  0x00007b73 call  0x00007e76 
- 00028778  0x00007b74 add  0x0000003f , 0x00000001 , 0x00000002 
- 00028779  0x00007b75 rtn 
- 00028780  0x00007b77 deposit  0x00000039 
- 00028781  0x00007b78 sub  0x0000003f , 0x00000004 , 0x0000003e 
- 00028782  0x00007b79 branch  0x00007069 , 0x00000002 
- 00028783  0x00007b7a beq  0x00000005 , 0x00007073 
- 00028784  0x00007b7b beq  0x00000006 , 0x00007076 
- 00028785  0x00007b7c beq  0x00000007 , 0x0000707a 
- 00028786  0x00007b7d rtn 
- 00028787  0x00007b80 ifetch  0x00000001 , 0x00000006 
- 00028788  0x00007b81 add  0x0000003f , 0x00000002 , 0x00000002 
- 00028789  0x00007b82 rtn 
- 00028790  0x00007b84 ifetch  0x00000002 , 0x00000006 
- 00028791  0x00007b85 byteswap  0x0000003f , 0x0000003f 
- 00028792  0x00007b86 add  0x0000003f , 0x00000003 , 0x00000002 
- 00028793  0x00007b87 rtn 
- 00028794  0x00007b89 ifetch  0x00000002 , 0x00000006 
- 00028795  0x00007b8a byteswap  0x0000003f , 0x0000003f 
- 00028796  0x00007b8b ifetcht  0x00000002 , 0x00000006 
- 00028797  0x00007b8c byteswap  0x00000002 , 0x00000002 
- 00028798  0x00007b8d lshift16  0x00000002 , 0x00000002 
- 00028799  0x00007b8e iadd  0x00000002 , 0x0000003f 
- 00028800  0x00007b8f add  0x0000003f , 0x00000005 , 0x00000002 
- 00028801  0x00007b90 rtn 
- 00028802  0x00007b97 bpatchx  0x000000d5 , 0x0000403a 
- 00028803  0x00007b98 force  0x00000000 , 0x00000007 
- 00028804  0x00007b99 arg  0x00000000 , 0x00000012 
- 00028805  0x00007b9a arg  0x0000052a , 0x00000005 
- 00028806  0x00007b9c ifetch  0x00000002 , 0x0000000b 
- 00028807  0x00007b9d rtn  0x00000034 
- 00028808  0x00007b9e call  0x0000708d 
- 00028809  0x00007b9f copy  0x00000007 , 0x0000003f 
- 00028810  0x00007ba0 rtneq  0x00000007 
- 00028811  0x00007ba1 increase  0x00000002 , 0x0000000b 
- 00028812  0x00007ba2 branch  0x00007086 
- 00028813  0x00007ba6 iforce  0x00000013 
- 00028814  0x00007ba8 fetch  0x00000002 , 0x00004575 
- 00028815  0x00007ba9 iforce  0x00000006 
- 00028816  0x00007bab copy  0x00000007 , 0x0000003f 
- 00028817  0x00007bac rtneq  0x00000007 
- 00028818  0x00007bad disable  0x00000028 
- 00028819  0x00007bae ifetch  0x00000001 , 0x00000006 
- 00028820  0x00007baf rtn  0x00000034 
- 00028821  0x00007bb0 iforce  0x00000039 
- 00028822  0x00007bb2 ifetch  0x00000002 , 0x00000006 
- 00028823  0x00007bb3 isub  0x00000013 , 0x0000003e 
- 00028824  0x00007bb4 nbranch  0x0000709a , 0x00000005 
- 00028825  0x00007bb5 enable  0x00000028 
- 00028826  0x00007bb7 loop  0x00007096 
- 00028827  0x00007bb8 ifetcht  0x00000004 , 0x00000006 
- 00028828  0x00007bb9 copy  0x00000006 , 0x00000011 
- 00028829  0x00007bba nbranch  0x000070ad , 0x00000028 
- 00028830  0x00007bbb arg  0x0000052a , 0x00000006 
- 00028831  0x00007bbc arg  0x00000007 , 0x00000039 
- 00028832  0x00007bbe ifetch  0x00000004 , 0x00000006 
- 00028833  0x00007bbf branch  0x000070a6 , 0x00000034 
- 00028834  0x00007bc0 isub  0x00000002 , 0x0000003e 
- 00028835  0x00007bc1 branch  0x000070ad , 0x00000005 
- 00028836  0x00007bc2 loop  0x000070a0 
- 00028837  0x00007bc3 rtn 
- 00028838  0x00007bc5 istoret  0x00000004 , 0x00000005 
- 00028839  0x00007bc6 increase  0x00000001 , 0x00000007 
- 00028840  0x00007bc7 copy  0x00000011 , 0x00000006 
- 00028841  0x00007bc8 call  0x0000705b 
- 00028842  0x00007bc9 iadd  0x00000012 , 0x00000012 
- 00028843  0x00007bca iadd  0x00000006 , 0x00000006 
- 00028844  0x00007bcb branch  0x00007090 
- 00028845  0x00007bcd copy  0x00000011 , 0x00000006 
- 00028846  0x00007bce call  0x00007062 
- 00028847  0x00007bcf iadd  0x00000006 , 0x00000006 
- 00028848  0x00007bd0 branch  0x00007090 
- 00028849  0x00007bd7 bpatchx  0x000000d6 , 0x0000403a 
- 00028850  0x00007bd8 fetch  0x00000002 , 0x00004575 
- 00028851  0x00007bd9 iforce  0x00000006 
- 00028852  0x00007bdb ifetch  0x00000001 , 0x00000006 
- 00028853  0x00007bdc branch  0x00007fe3 , 0x00000034 
- 00028854  0x00007bdd lshift  0x0000003f , 0x0000003f 
- 00028855  0x00007bde iadd  0x00000006 , 0x00000006 
- 00028856  0x00007bdf ifetch  0x00000004 , 0x00000006 
- 00028857  0x00007be0 isub  0x00000002 , 0x0000003e 
- 00028858  0x00007be1 rtn  0x00000005 
- 00028859  0x00007be2 deposit  0x00000005 
- 00028860  0x00007be3 store  0x00000002 , 0x00000abb 
- 00028861  0x00007be4 storet  0x00000008 , 0x00000aa2 
- 00028862  0x00007be5 call  0x00007062 
- 00028863  0x00007be6 iadd  0x00000006 , 0x00000006 
- 00028864  0x00007be7 copy  0x00000006 , 0x0000003f 
- 00028865  0x00007be8 fetcht  0x00000002 , 0x00000abb 
- 00028866  0x00007be9 copy  0x00000002 , 0x00000005 
- 00028867  0x00007bea fetcht  0x00000008 , 0x00000aa2 
- 00028868  0x00007beb copy  0x0000003f , 0x00000006 
- 00028869  0x00007bec branch  0x000070b4 
- 00028870  0x00007bf3 bpatchx  0x000000d7 , 0x0000403a 
- 00028871  0x00007bf4 fetch  0x00000002 , 0x00004575 
- 00028872  0x00007bf5 iforce  0x00000006 
- 00028873  0x00007bf7 ifetch  0x00000001 , 0x00000006 
- 00028874  0x00007bf8 branch  0x000070e4 , 0x00000034 
- 00028875  0x00007bf9 iforce  0x00000039 
- 00028876  0x00007bfb ifetch  0x00000002 , 0x00000006 
- 00028877  0x00007bfc isub  0x00000013 , 0x0000003e 
- 00028878  0x00007bfd branch  0x000070d4 , 0x00000005 
- 00028879  0x00007bfe loop  0x000070cc 
- 00028880  0x00007bff increase  0x00000004 , 0x00000006 
- 00028881  0x00007c00 call  0x00007062 
- 00028882  0x00007c01 iadd  0x00000006 , 0x00000006 
- 00028883  0x00007c02 branch  0x000070c9 
- 00028884  0x00007c04 increase  0xffffffff , 0x00000039 
- 00028885  0x00007c05 lshift  0x00000039 , 0x0000003f 
- 00028886  0x00007c06 iadd  0x00000006 , 0x00000006 
- 00028887  0x00007c07 increase  0x00000004 , 0x00000006 
- 00028888  0x00007c08 call  0x00007062 
- 00028889  0x00007c09 iadd  0x00000006 , 0x0000000b 
- 00028890  0x00007c0b increase  0x00000001 , 0x00000006 
- 00028891  0x00007c0c ifetch  0x00000002 , 0x00000006 
- 00028892  0x00007c0d isub  0x00000012 , 0x0000003e 
- 00028893  0x00007c11 branch  0x00007fef , 0x00000005 
- 00028894  0x00007c12 call  0x0000705b 
- 00028895  0x00007c13 iadd  0x00000006 , 0x00000006 
- 00028896  0x00007c14 deposit  0x0000000b 
- 00028897  0x00007c15 isub  0x00000006 , 0x0000003e 
- 00028898  0x00007c16 branch  0x000070e4 , 0x00000005 
- 00028899  0x00007c17 branch  0x000070da 
- 00028900  0x00007c19 force  0x00000000 , 0x00000006 
- 00028901  0x00007c1a force  0x00000000 , 0x0000003f 
- 00028902  0x00007c1b rtn 
- 00028903  0x00007c22 bpatchx  0x000000d8 , 0x0000403b 
- 00028904  0x00007c23 fetch  0x00000002 , 0x00004575 
- 00028905  0x00007c24 iforce  0x00000006 
- 00028906  0x00007c26 ifetch  0x00000001 , 0x00000006 
- 00028907  0x00007c27 branch  0x00007100 , 0x00000034 
- 00028908  0x00007c28 lshift  0x0000003f , 0x0000003f 
- 00028909  0x00007c29 iadd  0x00000006 , 0x00000006 
- 00028910  0x00007c2a ifetch  0x00000004 , 0x00000006 
- 00028911  0x00007c2b isub  0x00000002 , 0x0000003e 
- 00028912  0x00007c2c branch  0x000070f4 , 0x00000005 
- 00028913  0x00007c2d call  0x00007062 
- 00028914  0x00007c2e iadd  0x00000006 , 0x00000006 
- 00028915  0x00007c2f branch  0x000070ea 
- 00028916  0x00007c31 call  0x00007062 
- 00028917  0x00007c32 iadd  0x00000006 , 0x0000000b 
- 00028918  0x00007c34 increase  0x00000001 , 0x00000006 
- 00028919  0x00007c35 ifetch  0x00000002 , 0x00000006 
- 00028920  0x00007c36 isub  0x00000012 , 0x0000003e 
- 00028921  0x00007c37 rtn  0x00000005 
- 00028922  0x00007c38 call  0x0000705b 
- 00028923  0x00007c39 iadd  0x00000006 , 0x00000006 
- 00028924  0x00007c3a deposit  0x0000000b 
- 00028925  0x00007c3b isub  0x00000006 , 0x0000003e 
- 00028926  0x00007c3c branch  0x00007100 , 0x00000005 
- 00028927  0x00007c3d branch  0x000070f6 
- 00028928  0x00007c3f force  0x00000000 , 0x00000006 
- 00028929  0x00007c40 rtn 
- 00028930  0x00007c45 arg  0x00000400 , 0x00000012 
- 00028931  0x00007c46 call  0x000070f4 
- 00028932  0x00007c47 arg  0x00000300 , 0x00000012 
- 00028933  0x00007c48 call  0x0000710d 
- 00028934  0x00007c49 nrtn  0x00000028 
- 00028935  0x00007c4a sub  0x00000011 , 0x00000003 , 0x0000003e 
- 00028936  0x00007c4b branch  0x00007fe9 , 0x00000002 
- 00028937  0x00007c4c ifetch  0x00000001 , 0x00000006 
- 00028938  0x00007c4d bne  0x00000008 , 0x00007fe9 
- 00028939  0x00007c4e ifetch  0x00000001 , 0x00000006 
- 00028940  0x00007c4f rtn 
- 00028941  0x00007c55 bpatchx  0x000000d9 , 0x0000403b 
- 00028942  0x00007c56 call  0x00007062 
- 00028943  0x00007c57 copy  0x0000003f , 0x00000011 
- 00028944  0x00007c59 ifetch  0x00000001 , 0x00000006 
- 00028945  0x00007c5a and  0x0000003f , 0x00000007 , 0x00000039 
- 00028946  0x00007c5b rshift3  0x0000003f , 0x0000003f 
- 00028947  0x00007c5c sub  0x0000003f , 0x00000003 , 0x0000003e 
- 00028948  0x00007c5d branch  0x00007129 , 0x00000005 
- 00028949  0x00007c5e copy  0x00000039 , 0x0000003f 
- 00028950  0x00007c5f beq  0x00000005 , 0x00007120 
- 00028951  0x00007c60 beq  0x00000006 , 0x00007123 
- 00028952  0x00007c61 beq  0x00000007 , 0x00007126 
- 00028953  0x00007c62 increase  0xffffffff , 0x00000006 
- 00028954  0x00007c63 call  0x00007062 
- 00028955  0x00007c64 iadd  0x00000006 , 0x00000006 
- 00028956  0x00007c65 copy  0x00000011 , 0x0000003f 
- 00028957  0x00007c66 isub  0x00000002 , 0x00000011 
- 00028958  0x00007c67 branch  0x00007fe9 , 0x00000005 
- 00028959  0x00007c68 branch  0x00007110 
- 00028960  0x00007c6b increase  0xfffffffe , 0x00000011 
- 00028961  0x00007c6c increase  0x00000001 , 0x00000006 
- 00028962  0x00007c6d branch  0x00007110 
- 00028963  0x00007c6f increase  0xfffffffd , 0x00000011 
- 00028964  0x00007c70 increase  0x00000002 , 0x00000006 
- 00028965  0x00007c71 branch  0x00007110 
- 00028966  0x00007c73 increase  0xfffffffb , 0x00000011 
- 00028967  0x00007c74 increase  0x00000004 , 0x00000006 
- 00028968  0x00007c75 branch  0x00007110 
- 00028969  0x00007c78 increase  0xffffffff , 0x00000011 
- 00028970  0x00007c79 copy  0x00000039 , 0x0000003f 
- 00028971  0x00007c7a beq  0x00000001 , 0x00007132 
- 00028972  0x00007c7b beq  0x00000002 , 0x00007130 
- 00028973  0x00007c7c beq  0x00000004 , 0x0000712f 
- 00028974  0x00007c7d branch  0x00007fe9 
- 00028975  0x00007c7f increase  0xfffffff4 , 0x00000011 
- 00028976  0x00007c81 ifetch  0x00000002 , 0x00000006 
- 00028977  0x00007c82 increase  0xfffffffe , 0x00000011 
- 00028978  0x00007c84 ifetch  0x00000002 , 0x00000006 
- 00028979  0x00007c85 isub  0x00000012 , 0x0000003e 
- 00028980  0x00007c86 branch  0x00007fe7 , 0x00000005 
- 00028981  0x00007c87 increase  0xfffffffe , 0x00000011 
- 00028982  0x00007c88 branch  0x00007fe9 , 0x00000005 
- 00028983  0x00007c89 branch  0x00007110 
- 00028984  0x00007cc5 call  0x000052d0 
- 00028985  0x00007cc6 copy  0x0000003f , 0x00000005 
- 00028986  0x00007cc7 setarg  0x00000006 
- 00028987  0x00007cc8 istore  0x00000001 , 0x00000005 
- 00028988  0x00007cc9 setarg  0x0000006e 
- 00028989  0x00007cca istore  0x00000002 , 0x00000005 
- 00028990  0x00007ccb setarg  0x00000f00 
- 00028991  0x00007ccc istore  0x00000002 , 0x00000005 
- 00028992  0x00007ccd setarg  0x001a0535 
- 00028993  0x00007cce istore  0x00000003 , 0x00000005 
- 00028994  0x00007ccf setarg  0x00000111 
- 00028995  0x00007cd0 lshift16  0x0000003f , 0x0000003f 
- 00028996  0x00007cd1 istore  0x00000004 , 0x00000005 
- 00028997  0x00007cd2 setarg  0x00002600 
- 00028998  0x00007cd3 istore  0x00000002 , 0x00000005 
- 00028999  0x00007cd4 setarg  0x00000335 
- 00029000  0x00007cd5 istore  0x00000002 , 0x00000005 
- 00029001  0x00007cd6 setarg  0x00000009 
- 00029002  0x00007cd7 istore  0x00000002 , 0x00000005 
- 00029003  0x00007cd8 setarg  0x00000004 
- 00029004  0x00007cd9 istore  0x00000002 , 0x00000005 
- 00029005  0x00007cda jam  0x00000014 , 0x00000275 
- 00029006  0x00007cdb rtn 
- 00029007  0x00007ce0 bpatchx  0x000000da , 0x0000403b 
- 00029008  0x00007ce1 jam  0x00000050 , 0x000005e5 
- 00029009  0x00007ce2 arg  0x000005e6 , 0x00000005 
- 00029010  0x00007ce3 arg  0x0000443a , 0x00000006 
- 00029011  0x00007ce4 call  0x00007ebf 
- 00029012  0x00007ce5 arg  0x000045d2 , 0x00000006 
- 00029013  0x00007ce6 call  0x00007ebd 
- 00029014  0x00007ce7 arg  0x000009be , 0x00000006 
- 00029015  0x00007ce8 call  0x00007ebd 
- 00029016  0x00007ce9 call  0x0000720a 
- 00029017  0x00007cea arg  0x0000042f , 0x00000006 
- 00029018  0x00007ceb call  0x00007205 
- 00029019  0x00007cec call  0x000071d0 
- 00029020  0x00007cee arg  0x00000af2 , 0x00000005 
- 00029021  0x00007cef call  0x00007201 
- 00029022  0x00007cf0 setarg  0x000f4240 
- 00029023  0x00007cf1 copy  0x0000003f , 0x00000011 
- 00029024  0x00007cf2 fetch  0x00000004 , 0x00000af2 
- 00029025  0x00007cf3 idiv  0x00000011 
- 00029026  0x00007cf4 call  0x00007f86 
- 00029027  0x00007cf5 remainder  0x0000003f 
- 00029028  0x00007cf6 store  0x00000004 , 0x000009ba 
- 00029029  0x00007cf8 rtn 
- 00029030  0x00007cfb jam  0x00000041 , 0x000005e5 
- 00029031  0x00007cfc arg  0x000005e6 , 0x00000005 
- 00029032  0x00007cfd call  0x000071b5 
- 00029033  0x00007cfe call  0x000071b0 
- 00029034  0x00007cff fetch  0x00000003 , 0x00004454 
- 00029035  0x00007d00 istore  0x00000003 , 0x00000005 
- 00029036  0x00007d03 call  0x00007176 
- 00029037  0x00007d05 arg  0x0000042f , 0x00000006 
- 00029038  0x00007d06 call  0x00007ebf 
- 00029039  0x00007d07 arg  0x0000443a , 0x00000006 
- 00029040  0x00007d08 call  0x00007ebf 
- 00029041  0x00007d09 call  0x0000720a 
- 00029042  0x00007d0a arg  0x00000b12 , 0x00000006 
- 00029043  0x00007d0b arg  0x00000ac2 , 0x00000005 
- 00029044  0x00007d0c call  0x00007ebf 
- 00029045  0x00007d0e branch  0x000071d0 
- 00029046  0x00007d13 fetch  0x00000004 , 0x000044c7 
- 00029047  0x00007d14 istore  0x00000004 , 0x00000005 
- 00029048  0x00007d15 call  0x00007ecd 
- 00029049  0x00007d16 branch  0x00007eca 
- 00029050  0x00007d19 bpatchx  0x000000db , 0x0000403b 
- 00029051  0x00007d1a jam  0x00000041 , 0x000005e5 
- 00029052  0x00007d1b arg  0x000005e6 , 0x00000005 
- 00029053  0x00007d1c call  0x000071b0 
- 00029054  0x00007d1d call  0x000071b5 
- 00029055  0x00007d1e fetch  0x00000003 , 0x0000444d 
- 00029056  0x00007d1f istore  0x00000003 , 0x00000005 
- 00029057  0x00007d22 call  0x00007176 
- 00029058  0x00007d23 arg  0x0000443a , 0x00000006 
- 00029059  0x00007d24 call  0x00007ebf 
- 00029060  0x00007d25 arg  0x0000042f , 0x00000006 
- 00029061  0x00007d26 call  0x00007ebf 
- 00029062  0x00007d27 call  0x0000720a 
- 00029063  0x00007d28 arg  0x00000b12 , 0x00000006 
- 00029064  0x00007d29 arg  0x00000ac2 , 0x00000005 
- 00029065  0x00007d2a call  0x00007ebf 
- 00029066  0x00007d2c call  0x000071d0 
- 00029067  0x00007d2d arg  0x00000af2 , 0x00000005 
- 00029068  0x00007d2e branch  0x00007201 
- 00029069  0x00007d31 jam  0x00000020 , 0x000005e5 
- 00029070  0x00007d32 arg  0x000009fe , 0x00000006 
- 00029071  0x00007d33 arg  0x000005e6 , 0x00000005 
- 00029072  0x00007d34 call  0x00007ebd 
- 00029073  0x00007d35 call  0x0000720a 
- 00029074  0x00007d36 arg  0x0000099e , 0x00000006 
- 00029075  0x00007d37 call  0x00007205 
- 00029076  0x00007d38 call  0x000071d0 
- 00029077  0x00007d39 arg  0x00000ac2 , 0x00000005 
- 00029078  0x00007d3a call  0x00007497 
- 00029079  0x00007d3b arg  0x00000001 , 0x00000002 
- 00029080  0x00007d3c call  0x0000719f 
- 00029081  0x00007d3d arg  0x00004419 , 0x00000005 
- 00029082  0x00007d3e call  0x00007201 
- 00029083  0x00007d3f arg  0x00000000 , 0x00000002 
- 00029084  0x00007d40 call  0x0000719f 
- 00029085  0x00007d41 arg  0x00000b12 , 0x00000005 
- 00029086  0x00007d43 branch  0x00007497 
- 00029087  0x00007d47 bpatchx  0x000000dc , 0x0000403b 
- 00029088  0x00007d48 jam  0x00000035 , 0x000005e5 
- 00029089  0x00007d49 setarg  0x00000100 
- 00029090  0x00007d4a store  0x00000002 , 0x000005e6 
- 00029091  0x00007d4b call  0x000071b0 
- 00029092  0x00007d4c call  0x000071b5 
- 00029093  0x00007d4d arg  0x0000443a , 0x00000006 
- 00029094  0x00007d4e call  0x00007ebf 
- 00029095  0x00007d4f arg  0x0000042f , 0x00000006 
- 00029096  0x00007d50 call  0x00007ebf 
- 00029097  0x00007d52 setarg  0x00006c65 
- 00029098  0x00007d53 istore  0x00000002 , 0x00000005 
- 00029099  0x00007d54 setarg  0x00006274 
- 00029100  0x00007d55 istore  0x00000002 , 0x00000005 
- 00029101  0x00007d56 istoret  0x00000001 , 0x00000005 
- 00029102  0x00007d57 call  0x0000720a 
- 00029103  0x00007d58 branch  0x000071d0 
- 00029104  0x00007d5b fetch  0x00000006 , 0x000044a0 
- 00029105  0x00007d5c istore  0x00000006 , 0x00000005 
- 00029106  0x00007d5d fetch  0x00000001 , 0x00004495 
- 00029107  0x00007d5e istore  0x00000001 , 0x00000005 
- 00029108  0x00007d5f rtn 
- 00029109  0x00007d62 fetch  0x00000006 , 0x0000044f 
- 00029110  0x00007d63 istore  0x00000006 , 0x00000005 
- 00029111  0x00007d68 fetch  0x00000001 , 0x0000448e 
- 00029112  0x00007d69 istore  0x00000001 , 0x00000005 
- 00029113  0x00007d6a rtn 
- 00029114  0x00007d6d jam  0x00000041 , 0x000005e5 
- 00029115  0x00007d6e fetch  0x00000001 , 0x00004664 
- 00029116  0x00007d6f store  0x00000001 , 0x000005e6 
- 00029117  0x00007d70 arg  0x000045d2 , 0x00000006 
- 00029118  0x00007d71 call  0x00007ebd 
- 00029119  0x00007d72 arg  0x000009be , 0x00000006 
- 00029120  0x00007d73 call  0x00007ebd 
- 00029121  0x00007d74 call  0x0000720a 
- 00029122  0x00007d75 arg  0x0000042f , 0x00000006 
- 00029123  0x00007d76 call  0x00007205 
- 00029124  0x00007d77 branch  0x000071d0 
- 00029125  0x00007d7b jam  0x00000041 , 0x000005e5 
- 00029126  0x00007d7c fetch  0x00000001 , 0x00004664 
- 00029127  0x00007d7d store  0x00000001 , 0x000005e6 
- 00029128  0x00007d7e arg  0x000009be , 0x00000006 
- 00029129  0x00007d7f call  0x00007ebd 
- 00029130  0x00007d80 arg  0x000045d2 , 0x00000006 
- 00029131  0x00007d81 call  0x00007ebd 
- 00029132  0x00007d82 call  0x0000720a 
- 00029133  0x00007d83 arg  0x0000443a , 0x00000006 
- 00029134  0x00007d84 call  0x00007205 
- 00029135  0x00007d85 branch  0x000071d0 
- 00029136  0x00007d88 bpatchx  0x000000dd , 0x0000403b 
- 00029137  0x00007d89 call  0x0000721f 
- 00029138  0x00007d8d fetch  0x00000001 , 0x000005e5 
- 00029139  0x00007d8e copy  0x0000003f , 0x00000002 
- 00029140  0x00007d90 increase  0x0000000f , 0x0000003f 
- 00029141  0x00007d91 rshift4  0x0000003f , 0x0000003f 
- 00029142  0x00007d92 copy  0x0000003f , 0x00000012 
- 00029143  0x00007d93 branch  0x000071e2 , 0x00000034 
- 00029144  0x00007d94 and  0x00000002 , 0x0000000f , 0x0000003f 
- 00029145  0x00007d95 nbranch  0x000071e5 , 0x00000034 
- 00029146  0x00007d97 arg  0x00000ad2 , 0x00000013 
- 00029147  0x00007d98 arg  0x000005e6 , 0x0000003f 
- 00029148  0x00007d99 increase  0xfffffff0 , 0x0000003f 
- 00029149  0x00007d9c iadd  0x00000002 , 0x00000011 
- 00029150  0x00007d9d arg  0x00000b02 , 0x00000005 
- 00029151  0x00007d9e arg  0x00000004 , 0x00000039 
- 00029152  0x00007d9f call  0x00007edd 
- 00029153  0x00007da3 branch  0x000071f0 
- 00029154  0x00007da6 arg  0x00000001 , 0x00000012 
- 00029155  0x00007da7 arg  0x00000000 , 0x00000011 
- 00029156  0x00007da9 branch  0x000071e6 
- 00029157  0x00007dae and  0x00000002 , 0x0000000f , 0x00000011 
- 00029158  0x00007db0 arg  0x000005e6 , 0x0000003f 
- 00029159  0x00007db1 iadd  0x00000002 , 0x0000003f 
- 00029160  0x00007db2 isub  0x00000011 , 0x00000006 
- 00029161  0x00007db4 arg  0x00000af2 , 0x00000005 
- 00029162  0x00007db5 call  0x00007245 
- 00029163  0x00007db7 arg  0x00000ae2 , 0x00000013 
- 00029164  0x00007db8 arg  0x00000af2 , 0x00000011 
- 00029165  0x00007db9 arg  0x00000b02 , 0x00000005 
- 00029166  0x00007dba arg  0x00000004 , 0x00000039 
- 00029167  0x00007dbb call  0x00007edd 
- 00029168  0x00007dc7 call  0x00007491 
- 00029169  0x00007dc8 call  0x00007428 
- 00029170  0x00007dcb arg  0x000005e6 , 0x00000006 
- 00029171  0x00007dce increase  0xffffffff , 0x00000012 
- 00029172  0x00007dcf deposit  0x00000012 
- 00029173  0x00007dd0 branch  0x000071f9 , 0x00000034 
- 00029174  0x00007dd1 call  0x00007486 
- 00029175  0x00007dd2 call  0x00007422 
- 00029176  0x00007dd3 branch  0x000071f3 
- 00029177  0x00007dd6 arg  0x00000af2 , 0x00000005 
- 00029178  0x00007dd7 call  0x00007497 
- 00029179  0x00007dd8 arg  0x00000b02 , 0x00000006 
- 00029180  0x00007dd9 call  0x00007486 
- 00029181  0x00007dda call  0x00007428 
- 00029182  0x00007ddb arg  0x00000af2 , 0x00000006 
- 00029183  0x00007ddc call  0x00007486 
- 00029184  0x00007ddd branch  0x00007422 
- 00029185  0x00007de3 copy  0x00000005 , 0x00000011 
- 00029186  0x00007de4 call  0x00007497 
- 00029187  0x00007de6 arg  0x00000010 , 0x00000039 
- 00029188  0x00007de7 branch  0x00007ee5 
- 00029189  0x00007dea arg  0x00000ac2 , 0x00000005 
- 00029190  0x00007deb call  0x00007ebf 
- 00029191  0x00007ded arg  0x00000010 , 0x00000039 
- 00029192  0x00007dee arg  0x00000ac2 , 0x00000011 
- 00029193  0x00007def branch  0x00007ee5 
- 00029194  0x00007df2 fetch  0x00000001 , 0x000005e5 
- 00029195  0x00007df3 copy  0x0000003f , 0x00000039 
- 00029196  0x00007df4 arg  0x000005e6 , 0x00000011 
- 00029197  0x00007df5 branch  0x00007ee5 
- 00029198  0x00007df8 ifetch  0x00000001 , 0x00000011 
- 00029199  0x00007df9 lshift  0x0000003f , 0x0000003f 
- 00029200  0x00007dfa isolate1  0x00000000 , 0x00000013 
- 00029201  0x00007dfb setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00029202  0x00007dfc isolate1  0x00000008 , 0x0000003f 
- 00029203  0x00007dfd setflag  0x00000001 , 0x00000000 , 0x00000013 
- 00029204  0x00007dfe istore  0x00000001 , 0x00000011 
- 00029205  0x00007dff increase  0xffffffff , 0x00000011 
- 00029206  0x00007e00 loop  0x0000720e 
- 00029207  0x00007e01 rtn 
- 00029208  0x00007e04 arg  0x00000ad2 , 0x00000011 
- 00029209  0x00007e06 increase  0x0000000f , 0x00000011 
- 00029210  0x00007e07 force  0x00000010 , 0x00000039 
- 00029211  0x00007e08 force  0x00000000 , 0x00000013 
- 00029212  0x00007e09 branch  0x0000720e 
- 00029213  0x00007e0c arg  0x00000ae2 , 0x00000011 
- 00029214  0x00007e0d branch  0x00007219 
- 00029215  0x00007e11 arg  0x00000ac2 , 0x00000006 
- 00029216  0x00007e12 call  0x00007484 
- 00029217  0x00007e15 force  0x00000008 , 0x00000038 
- 00029218  0x00007e16 call  0x00007492 
- 00029219  0x00007e17 call  0x00007491 
- 00029220  0x00007e18 call  0x0000741f 
- 00029221  0x00007e1d arg  0x00000ad2 , 0x00000005 
- 00029222  0x00007e1e call  0x00007497 
- 00029223  0x00007e20 bpatchx  0x000000de , 0x0000403b 
- 00029224  0x00007e21 fetch  0x00000001 , 0x00000ad2 
- 00029225  0x00007e22 isolate1  0x00000007 , 0x0000003f 
- 00029226  0x00007e23 nbranch  0x00007230 , 0x00000001 
- 00029227  0x00007e24 call  0x00007218 
- 00029228  0x00007e27 arg  0x00000ad2 , 0x00000013 
- 00029229  0x00007e29 arg  0x00000ad2 , 0x00000005 
- 00029230  0x00007e2c call  0x0000723a 
- 00029231  0x00007e2d branch  0x00007231 
- 00029232  0x00007e2f call  0x00007218 
- 00029233  0x00007e32 arg  0x00000ad2 , 0x00000006 
- 00029234  0x00007e33 arg  0x00000ae2 , 0x00000005 
- 00029235  0x00007e34 call  0x00007ebf 
- 00029236  0x00007e35 fetch  0x00000001 , 0x00000ae2 
- 00029237  0x00007e36 isolate1  0x00000007 , 0x0000003f 
- 00029238  0x00007e37 nbranch  0x0000721d , 0x00000001 
- 00029239  0x00007e38 call  0x0000721d 
- 00029240  0x00007e3a arg  0x00000ae2 , 0x00000013 
- 00029241  0x00007e3c arg  0x00000ae2 , 0x00000005 
- 00029242  0x00007e43 arg  0x00000003 , 0x00000039 
- 00029243  0x00007e45 arg  0x00000000 , 0x00000002 
- 00029244  0x00007e46 call  0x00007241 
- 00029245  0x00007e47 increase  0x00000004 , 0x00000013 
- 00029246  0x00007e48 loop  0x0000723b 
- 00029247  0x00007e49 arg  0x00008700 , 0x00000002 
- 00029248  0x00007e4a lshift16  0x00000002 , 0x00000002 
- 00029249  0x00007e4c ifetch  0x00000004 , 0x00000013 
- 00029250  0x00007e4d ixor  0x00000002 , 0x0000003f 
- 00029251  0x00007e4e istore  0x00000004 , 0x00000005 
- 00029252  0x00007e4f rtn 
- 00029253  0x00007e56 bpatchx  0x000000df , 0x0000403b 
- 00029254  0x00007e57 arg  0x00000010 , 0x00000039 
- 00029255  0x00007e58 arg  0x00000000 , 0x0000003f 
- 00029256  0x00007e5a isub  0x00000011 , 0x0000003e 
- 00029257  0x00007e5b branch  0x00007250 , 0x00000005 
- 00029258  0x00007e5c branch  0x00007253 , 0x00000002 
- 00029259  0x00007e5d ifetcht  0x00000001 , 0x00000006 
- 00029260  0x00007e5e istoret  0x00000001 , 0x00000005 
- 00029261  0x00007e60 increase  0x00000001 , 0x0000003f 
- 00029262  0x00007e61 loop  0x00007248 
- 00029263  0x00007e62 rtn 
- 00029264  0x00007e64 arg  0x00000080 , 0x00000002 
- 00029265  0x00007e66 istoret  0x00000001 , 0x00000005 
- 00029266  0x00007e67 branch  0x0000724d 
- 00029267  0x00007e6a arg  0x00000000 , 0x00000002 
- 00029268  0x00007e6b branch  0x00007251 
- 00029269  0x00007e6f call  0x00007268 
- 00029270  0x00007e70 arg  0x00000592 , 0x00000006 
- 00029271  0x00007e71 arg  0x00000582 , 0x00000005 
- 00029272  0x00007e72 branch  0x00007ebf 
- 00029273  0x00007e76 disable  0x00000028 
- 00029274  0x00007e77 call  0x0000735f 
- 00029275  0x00007e78 arg  0x00000562 , 0x00000006 
- 00029276  0x00007e79 arg  0x000005a2 , 0x00000005 
- 00029277  0x00007e7a force  0x0000000f , 0x00000039 
- 00029278  0x00007e7b call  0x00007f01 
- 00029279  0x00007e7c ifetch  0x00000001 , 0x00000006 
- 00029280  0x00007e7d xor_into  0x00000006 , 0x0000003f 
- 00029281  0x00007e7e istore  0x00000001 , 0x00000005 
- 00029282  0x00007e7f setarg  0x000005b2 
- 00029283  0x00007e80 store  0x00000002 , 0x000005d6 
- 00029284  0x00007e81 setarg  0x000005a2 
- 00029285  0x00007e82 store  0x00000002 , 0x000005d4 
- 00029286  0x00007e83 set1  0x00000012 , 0x00000000 
- 00029287  0x00007e84 branch  0x000072a8 
- 00029288  0x00007e89 fetcht  0x00000001 , 0x00004689 
- 00029289  0x00007e8a force  0x00000010 , 0x00000012 
- 00029290  0x00007e8b add  0x00000002 , 0x00000006 , 0x00000013 
- 00029291  0x00007e8c sub  0x00000013 , 0x00000010 , 0x0000003e 
- 00029292  0x00007e8d branch  0x0000726e , 0x00000002 
- 00029293  0x00007e8e force  0x00000010 , 0x00000013 
- 00029294  0x00007e90 arg  0x000005a2 , 0x00000005 
- 00029295  0x00007e92 arg  0x0000468a , 0x00000006 
- 00029296  0x00007e93 copy  0x00000002 , 0x00000039 
- 00029297  0x00007e94 disable  0x00000028 
- 00029298  0x00007e96 ifetch  0x00000001 , 0x00000006 
- 00029299  0x00007e97 istore  0x00000001 , 0x00000005 
- 00029300  0x00007e98 increase  0xffffffff , 0x00000012 
- 00029301  0x00007e99 branch  0x0000727c , 0x00000005 
- 00029302  0x00007e9a loop  0x00007272 
- 00029303  0x00007e9b branch  0x0000726f , 0x00000028 
- 00029304  0x00007e9c enable  0x00000028 
- 00029305  0x00007e9d force  0x00000006 , 0x00000039 
- 00029306  0x00007e9e copy  0x00000011 , 0x00000006 
- 00029307  0x00007e9f branch  0x00007272 
- 00029308  0x00007ea1 arg  0x00000562 , 0x00000006 
- 00029309  0x00007ea2 arg  0x000005b2 , 0x00000005 
- 00029310  0x00007ea3 call  0x00007ebf 
- 00029311  0x00007ea4 fetch  0x00000001 , 0x000005c1 
- 00029312  0x00007ea5 ixor  0x00000013 , 0x0000003f 
- 00029313  0x00007ea6 store  0x00000001 , 0x000005c1 
- 00029314  0x00007ea7 setarg  0x000005b2 
- 00029315  0x00007ea8 store  0x00000002 , 0x000005d6 
- 00029316  0x00007ea9 setarg  0x000005a2 
- 00029317  0x00007eaa store  0x00000002 , 0x000005d4 
- 00029318  0x00007eab set1  0x00000012 , 0x00000000 
- 00029319  0x00007eac branch  0x000072a8 
- 00029320  0x00007eb2 disable  0x00000028 
- 00029321  0x00007eb3 call  0x0000735f 
- 00029322  0x00007eb4 branch  0x00007292 
- 00029323  0x00007eb7 arg  0x00000056 , 0x00000011 
- 00029324  0x00007eb8 enable  0x00000028 
- 00029325  0x00007eb9 call  0x0000735f 
- 00029326  0x00007eba call  0x00007292 
- 00029327  0x00007ebb arg  0x00000592 , 0x00000006 
- 00029328  0x00007ebc arg  0x00000062 , 0x00000005 
- 00029329  0x00007ebd branch  0x00007ebf 
- 00029330  0x00007ec1 setarg  0x00000562 
- 00029331  0x00007ec2 store  0x00000002 , 0x000005d6 
- 00029332  0x00007ec3 setarg  0x000041be 
- 00029333  0x00007ec4 store  0x00000002 , 0x000005d4 
- 00029334  0x00007ec5 set0  0x00000012 , 0x00000000 
- 00029335  0x00007ec6 call  0x000072a8 
- 00029336  0x00007ec7 arg  0x00000592 , 0x00000011 
- 00029337  0x00007ec8 arg  0x00000562 , 0x00000012 
- 00029338  0x00007ec9 arg  0x000005a2 , 0x00000005 
- 00029339  0x00007eca call  0x00007352 
- 00029340  0x00007ecb arg  0x000005a2 , 0x00000011 
- 00029341  0x00007ecc arg  0x000005b2 , 0x00000012 
- 00029342  0x00007ecd copy  0x00000012 , 0x00000005 
- 00029343  0x00007ece enable  0x00000028 
- 00029344  0x00007ecf call  0x00007350 
- 00029345  0x00007ed0 call  0x0000736a 
- 00029346  0x00007ed1 setarg  0x000005b2 
- 00029347  0x00007ed2 store  0x00000002 , 0x000005d6 
- 00029348  0x00007ed3 setarg  0x000005a2 
- 00029349  0x00007ed4 store  0x00000002 , 0x000005d4 
- 00029350  0x00007ed5 set1  0x00000012 , 0x00000000 
- 00029351  0x00007ed6 branch  0x000072a8 
- 00029352  0x00007edb jam  0x00000000 , 0x000005d8 
- 00029353  0x00007edc fetch  0x00000002 , 0x000005d4 
- 00029354  0x00007edd iforce  0x00000006 
- 00029355  0x00007ede arg  0x000005c2 , 0x00000005 
- 00029356  0x00007edf call  0x00007ebf 
- 00029357  0x00007ee0 fetch  0x00000002 , 0x000005d6 
- 00029358  0x00007ee1 iforce  0x00000006 
- 00029359  0x00007ee2 arg  0x00000592 , 0x00000005 
- 00029360  0x00007ee3 call  0x00007ebf 
- 00029361  0x00007ee6 call  0x000072cf 
- 00029362  0x00007ee7 disable  0x00000028 
- 00029363  0x00007ee8 bmark0  0x00000012 , 0x000072b9 
- 00029364  0x00007ee9 fetch  0x00000001 , 0x000005d8 
- 00029365  0x00007eea bne  0x00000004 , 0x000072b9 
- 00029366  0x00007eeb fetch  0x00000002 , 0x000005d6 
- 00029367  0x00007eec iforce  0x00000012 
- 00029368  0x00007eed call  0x00007301 
- 00029369  0x00007eef call  0x00007300 
- 00029370  0x00007ef0 call  0x00007313 
- 00029371  0x00007ef1 fetch  0x00000001 , 0x000005d8 
- 00029372  0x00007ef2 increase  0x00000001 , 0x0000003f 
- 00029373  0x00007ef3 store  0x00000001 , 0x000005d8 
- 00029374  0x00007ef5 call  0x000072cf 
- 00029375  0x00007ef6 enable  0x00000028 
- 00029376  0x00007ef7 call  0x00007300 
- 00029377  0x00007ef8 call  0x00007322 
- 00029378  0x00007ef9 call  0x00007331 
- 00029379  0x00007efa call  0x00007322 
- 00029380  0x00007efb call  0x00007331 
- 00029381  0x00007efc call  0x00007322 
- 00029382  0x00007efd call  0x00007331 
- 00029383  0x00007efe call  0x00007322 
- 00029384  0x00007eff fetch  0x00000001 , 0x000005d8 
- 00029385  0x00007f00 increase  0x00000001 , 0x0000003f 
- 00029386  0x00007f01 store  0x00000001 , 0x000005d8 
- 00029387  0x00007f02 bne  0x00000010 , 0x000072b1 
- 00029388  0x00007f03 call  0x000072cf 
- 00029389  0x00007f04 disable  0x00000028 
- 00029390  0x00007f05 branch  0x00007300 
- 00029391  0x00007f0a fetch  0x00000001 , 0x000005d8 
- 00029392  0x00007f0b arg  0x000005c2 , 0x00000006 
- 00029393  0x00007f0c branch  0x000072f6 , 0x00000034 
- 00029394  0x00007f0d iforce  0x00000012 
- 00029395  0x00007f0e force  0x00000011 , 0x00000039 
- 00029396  0x00007f0f copy  0x00000006 , 0x00000005 
- 00029397  0x00007f11 ifetch  0x00000001 , 0x00000006 
- 00029398  0x00007f12 lshift3  0x0000003f , 0x00000002 
- 00029399  0x00007f13 rshift2  0x0000003f , 0x0000003f 
- 00029400  0x00007f14 rshift3  0x0000003f , 0x0000003f 
- 00029401  0x00007f15 ior  0x00000002 , 0x0000003f 
- 00029402  0x00007f16 istore  0x00000001 , 0x00000005 
- 00029403  0x00007f17 loop  0x000072d5 
- 00029404  0x00007f18 setarg  0x000005c2 
- 00029405  0x00007f19 iadd  0x00000012 , 0x00000006 
- 00029406  0x00007f1a force  0x00000010 , 0x00000039 
- 00029407  0x00007f1b arg  0x00000572 , 0x00000005 
- 00029408  0x00007f1d ifetch  0x00000001 , 0x00000006 
- 00029409  0x00007f1e istore  0x00000001 , 0x00000005 
- 00029410  0x00007f1f compare  0x000005d3 , 0x00000006 , 0x000000ff 
- 00029411  0x00007f20 nbranch  0x000072e5 , 0x00000001 
- 00029412  0x00007f21 increase  0xffffffef , 0x00000006 
- 00029413  0x00007f23 loop  0x000072e0 
- 00029414  0x00007f24 force  0x00000000 , 0x00000011 
- 00029415  0x00007f25 add  0x00000012 , 0xffffffff , 0x00000013 
- 00029416  0x00007f26 lshift2  0x00000013 , 0x00000013 
- 00029417  0x00007f27 lshift2  0x00000013 , 0x00000013 
- 00029418  0x00007f28 call  0x000074b9 
- 00029419  0x00007f29 setarg  0x00008400 
- 00029420  0x00007f2a iadd  0x00000013 , 0x00000013 
- 00029421  0x00007f2b arg  0x00000572 , 0x00000005 
- 00029422  0x00007f2c force  0x00000010 , 0x00000039 
- 00029423  0x00007f2e ifetcht  0x00000001 , 0x00000013 
- 00029424  0x00007f2f ifetch  0x00000001 , 0x00000005 
- 00029425  0x00007f30 iadd  0x00000002 , 0x0000003f 
- 00029426  0x00007f31 istore  0x00000001 , 0x00000005 
- 00029427  0x00007f32 increase  0x00000001 , 0x00000013 
- 00029428  0x00007f33 loop  0x000072ef 
- 00029429  0x00007f34 branch  0x000074bd 
- 00029430  0x00007f37 force  0x00000010 , 0x00000039 
- 00029431  0x00007f38 force  0x00000000 , 0x00000002 
- 00029432  0x00007f3a ifetch  0x00000001 , 0x00000006 
- 00029433  0x00007f3b ixor  0x00000002 , 0x00000002 
- 00029434  0x00007f3c loop  0x000072f8 
- 00029435  0x00007f3d deposit  0x00000002 
- 00029436  0x00007f3e istore  0x00000001 , 0x00000006 
- 00029437  0x00007f3f arg  0x000005c2 , 0x00000006 
- 00029438  0x00007f40 arg  0x00000572 , 0x00000005 
- 00029439  0x00007f41 branch  0x00007ebf 
- 00029440  0x00007f44 arg  0x00000572 , 0x00000012 
- 00029441  0x00007f46 force  0x00000010 , 0x00000039 
- 00029442  0x00007f47 arg  0x00000592 , 0x00000011 
- 00029443  0x00007f48 copy  0x00000011 , 0x00000005 
- 00029444  0x00007f4a ifetcht  0x00000001 , 0x00000011 
- 00029445  0x00007f4b ifetch  0x00000001 , 0x00000012 
- 00029446  0x00007f4c ixor  0x00000002 , 0x00000030 
- 00029447  0x00007f4d and  0x00000039 , 0x00000003 , 0x00000013 
- 00029448  0x00007f4e nbranch  0x0000730a , 0x00000028 
- 00029449  0x00007f4f xor_into  0x00000003 , 0x00000013 
- 00029450  0x00007f51 sub  0x00000013 , 0x00000001 , 0x00000013 
- 00029451  0x00007f52 branch  0x0000730d , 0x00000002 
- 00029452  0x00007f53 iadd  0x00000002 , 0x00000030 
- 00029453  0x00007f55 deposit  0x00000030 
- 00029454  0x00007f56 istore  0x00000001 , 0x00000005 
- 00029455  0x00007f57 increase  0x00000001 , 0x00000011 
- 00029456  0x00007f58 increase  0x00000001 , 0x00000012 
- 00029457  0x00007f59 loop  0x00007304 
- 00029458  0x00007f5a rtn 
- 00029459  0x00007f5d call  0x000074b9 
- 00029460  0x00007f5e force  0x00000010 , 0x00000039 
- 00029461  0x00007f5f arg  0x00000592 , 0x00000011 
- 00029462  0x00007f61 ifetch  0x00000001 , 0x00000011 
- 00029463  0x00007f62 arg  0x00008500 , 0x00000006 
- 00029464  0x00007f63 and  0x00000039 , 0x00000003 , 0x00000013 
- 00029465  0x00007f64 sub  0x00000013 , 0x00000001 , 0x0000003e 
- 00029466  0x00007f65 branch  0x0000731c , 0x00000002 
- 00029467  0x00007f66 arg  0x00008600 , 0x00000006 
- 00029468  0x00007f68 iadd  0x00000006 , 0x00000006 
- 00029469  0x00007f69 ifetch  0x00000001 , 0x00000006 
- 00029470  0x00007f6a istore  0x00000001 , 0x00000011 
- 00029471  0x00007f6b increase  0x00000001 , 0x00000011 
- 00029472  0x00007f6c loop  0x00007316 
- 00029473  0x00007f6d branch  0x000074bd 
- 00029474  0x00007f70 force  0x00000008 , 0x00000039 
- 00029475  0x00007f71 arg  0x00000592 , 0x00000006 
- 00029476  0x00007f72 copy  0x00000006 , 0x00000005 
- 00029477  0x00007f74 ifetch  0x00000001 , 0x00000006 
- 00029478  0x00007f75 iforce  0x00000011 
- 00029479  0x00007f76 ifetch  0x00000001 , 0x00000006 
- 00029480  0x00007f77 iforce  0x00000012 
- 00029481  0x00007f78 lshift  0x00000011 , 0x0000003f 
- 00029482  0x00007f79 iadd  0x00000012 , 0x0000003f 
- 00029483  0x00007f7a istore  0x00000001 , 0x00000005 
- 00029484  0x00007f7b deposit  0x00000011 
- 00029485  0x00007f7c iadd  0x00000012 , 0x0000003f 
- 00029486  0x00007f7d istore  0x00000001 , 0x00000005 
- 00029487  0x00007f7e loop  0x00007325 
- 00029488  0x00007f7f rtn 
- 00029489  0x00007f83 setarg  0x008ae42c 
- 00029490  0x00007f84 iforce  0x00000002 
- 00029491  0x00007f85 force  0x00000007 , 0x00000039 
- 00029492  0x00007f86 call  0x00007340 
- 00029493  0x00007f87 setarg  0x000d751b 
- 00029494  0x00007f88 iforce  0x00000002 
- 00029495  0x00007f89 force  0x00000005 , 0x00000039 
- 00029496  0x00007f8a call  0x00007340 
- 00029497  0x00007f8b fetch  0x00000001 , 0x000005a1 
- 00029498  0x00007f8c iforce  0x00000011 
- 00029499  0x00007f8d fetch  0x00000001 , 0x00000595 
- 00029500  0x00007f8e store  0x00000001 , 0x000005a1 
- 00029501  0x00007f8f deposit  0x00000011 
- 00029502  0x00007f90 store  0x00000001 , 0x00000595 
- 00029503  0x00007f91 rtn 
- 00029504  0x00007f94 and  0x00000002 , 0x0000000f , 0x00000012 
- 00029505  0x00007f96 and  0x00000002 , 0x0000000f , 0x0000003f 
- 00029506  0x00007f97 arg  0x00000592 , 0x00000005 
- 00029507  0x00007f98 iadd  0x00000005 , 0x00000005 
- 00029508  0x00007f99 ifetch  0x00000001 , 0x00000005 
- 00029509  0x00007f9a iforce  0x00000013 
- 00029510  0x00007f9b deposit  0x00000011 
- 00029511  0x00007f9c istore  0x00000001 , 0x00000005 
- 00029512  0x00007f9d copy  0x00000013 , 0x00000011 
- 00029513  0x00007f9e rshift4  0x00000002 , 0x00000002 
- 00029514  0x00007f9f loop  0x00007341 
- 00029515  0x00007fa0 setarg  0x00000592 
- 00029516  0x00007fa1 iadd  0x00000012 , 0x00000005 
- 00029517  0x00007fa2 deposit  0x00000011 
- 00029518  0x00007fa3 istore  0x00000001 , 0x00000005 
- 00029519  0x00007fa4 rtn 
- 00029520  0x00007fa7 enable  0x00000028 
- 00029521  0x00007fa8 branch  0x00007353 
- 00029522  0x00007fab disable  0x00000028 
- 00029523  0x00007fad force  0x00000010 , 0x00000039 
- 00029524  0x00007faf ifetcht  0x00000001 , 0x00000011 
- 00029525  0x00007fb0 ifetch  0x00000001 , 0x00000012 
- 00029526  0x00007fb1 branch  0x00007359 , 0x00000028 
- 00029527  0x00007fb2 ixor  0x00000002 , 0x0000003f 
- 00029528  0x00007fb3 branch  0x0000735a 
- 00029529  0x00007fb5 iadd  0x00000002 , 0x0000003f 
- 00029530  0x00007fb7 istore  0x00000001 , 0x00000005 
- 00029531  0x00007fb8 increase  0x00000001 , 0x00000011 
- 00029532  0x00007fb9 increase  0x00000001 , 0x00000012 
- 00029533  0x00007fba loop  0x00007354 
- 00029534  0x00007fbb rtn 
- 00029535  0x00007fbf arg  0x000005b2 , 0x00000005 
- 00029536  0x00007fc0 ifetch  0x00000006 , 0x00000011 
- 00029537  0x00007fc1 istore  0x00000006 , 0x00000005 
- 00029538  0x00007fc2 branch  0x00007365 , 0x00000028 
- 00029539  0x00007fc3 ifetch  0x00000006 , 0x00000011 
- 00029540  0x00007fc4 branch  0x00007366 
- 00029541  0x00007fc6 ifetch  0x00000006 , 0x00000006 
- 00029542  0x00007fc8 istore  0x00000006 , 0x00000005 
- 00029543  0x00007fc9 ifetch  0x00000004 , 0x00000011 
- 00029544  0x00007fca istore  0x00000004 , 0x00000005 
- 00029545  0x00007fcb rtn 
- 00029546  0x00007fce arg  0x000041be , 0x00000006 
- 00029547  0x00007fcf arg  0x000005a2 , 0x00000005 
- 00029548  0x00007fd0 arg  0x00000000 , 0x00000002 
- 00029549  0x00007fd1 setarg  0x008395a7 
- 00029550  0x00007fd2 call  0x0000738b 
- 00029551  0x00007fd3 setarg  0x00b3c1df 
- 00029552  0x00007fd4 call  0x0000738b 
- 00029553  0x00007fd5 setarg  0x0000e5e9 
- 00029554  0x00007fd6 call  0x0000738c 
- 00029555  0x00007fd7 copy  0x00000002 , 0x00000014 
- 00029556  0x00007fd8 disable  0x00000028 
- 00029557  0x00007fd9 call  0x00007379 
- 00029558  0x00007fda copy  0x00000014 , 0x00000002 
- 00029559  0x00007fdb enable  0x00000028 
- 00029560  0x00007fdc branch  0x00007379 
- 00029561  0x00007fdf force  0x00000008 , 0x00000039 
- 00029562  0x00007fe1 ifetch  0x00000001 , 0x00000006 
- 00029563  0x00007fe2 compare  0x00000001 , 0x00000039 , 0x00000001 
- 00029564  0x00007fe3 branch  0x00007380 , 0x00000028 
- 00029565  0x00007fe4 branch  0x00007381 , 0x00000001 
- 00029566  0x00007fe6 iadd  0x00000002 , 0x0000003f 
- 00029567  0x00007fe7 branch  0x00007382 
- 00029568  0x00007fe9 branch  0x0000737e , 0x00000001 
- 00029569  0x00007feb ixor  0x00000002 , 0x0000003f 
- 00029570  0x00007fed istore  0x00000001 , 0x00000005 
- 00029571  0x00007fee rshift8  0x00000002 , 0x00000002 
- 00029572  0x00007fef loop  0x0000737a 
- 00029573  0x00007ff0 rtn 
- 00029574  0x00007ff3 fetch  0x00000006 , 0x00000596 
- 00029575  0x00007ff4 store  0x00000006 , 0x00000056 
- 00029576  0x00007ff5 ifetch  0x00000006 , 0x00000006 
- 00029577  0x00007ff6 istore  0x00000006 , 0x00000005 
- 00029578  0x00007ff7 rtn 
- 00029579  0x00007ffa lshift8  0x00000002 , 0x00000002 
- 00029580  0x00007ffc lshift16  0x00000002 , 0x00000002 
- 00029581  0x00007ffd ior  0x00000002 , 0x00000002 
- 00029582  0x00007ffe rtn 
- 00029583  0x00008003 branch  0x0000738f 
- 00029584  0x00008008 bpatchx  0x000000e0 , 0x0000403c 
- 00029585  0x00008009 call  0x0000742b 
- 00029586  0x0000800a arg  0x00004419 , 0x00000005 
- 00029587  0x0000800b branch  0x00007497 
- 00029588  0x0000800f arg  0x0000443a , 0x00000005 
- 00029589  0x00008010 branch  0x00007397 , 0x00000029 
- 00029590  0x00008011 arg  0x0000042f , 0x00000005 
- 00029591  0x00008013 copy  0x00000006 , 0x00000011 
- 00029592  0x00008014 call  0x00007ebf 
- 00029593  0x00008015 call  0x00007440 
- 00029594  0x00008016 arg  0x0000442a , 0x00000006 
- 00029595  0x00008017 branch  0x000074b0 
- 00029596  0x0000801a arg  0x0000042f , 0x00000011 
- 00029597  0x0000801b branch  0x0000739f , 0x00000029 
- 00029598  0x0000801c arg  0x0000443a , 0x00000011 
- 00029599  0x0000801e copy  0x00000011 , 0x00000005 
- 00029600  0x0000801f call  0x0000630c 
- 00029601  0x00008020 branch  0x00007440 
- 00029602  0x00008023 arg  0x000044aa , 0x00000006 
- 00029603  0x00008024 call  0x00007486 
- 00029604  0x00008025 arg  0x00004419 , 0x00000006 
- 00029605  0x00008026 call  0x00007487 
- 00029606  0x00008027 force  0x00000038 , 0x00000036 
- 00029607  0x00008028 force  0x00000000 , 0x00000036 
- 00029608  0x00008029 call  0x0000741d 
- 00029609  0x0000802a arg  0x0000047c , 0x00000005 
- 00029610  0x0000802b branch  0x00007497 
- 00029611  0x0000802f force  0x00000049 , 0x0000003f 
- 00029612  0x00008030 branch  0x000073ae 
- 00029613  0x00008032 force  0x00000001 , 0x0000003f 
- 00029614  0x00008034 force  0x00000000 , 0x00000038 
- 00029615  0x00008035 lshift8  0x00000002 , 0x0000002f 
- 00029616  0x00008036 ior  0x0000002f , 0x0000002f 
- 00029617  0x00008037 increase  0x00000001 , 0x00000038 
- 00029618  0x00008038 rshift8  0x00000002 , 0x0000002f 
- 00029619  0x00008039 rshift16  0x0000002f , 0x0000002f 
- 00029620  0x0000803a fetch  0x00000002 , 0x00004411 
- 00029621  0x0000803b lshift16 , 0x0000003f , 0x0000003f 
- 00029622  0x0000803c ior  0x0000002f , 0x0000002f 
- 00029623  0x0000803d increase  0x00000001 , 0x00000038 
- 00029624  0x0000803e ifetch  0x00000004 , 0x00000006 
- 00029625  0x0000803f iforce  0x0000002f 
- 00029626  0x00008040 increase  0x00000001 , 0x00000038 
- 00029627  0x00008041 ifetch  0x00000002 , 0x00000006 
- 00029628  0x00008042 byteswap  0x00000011 , 0x0000002f 
- 00029629  0x00008043 lshift16  0x0000002f , 0x0000002f 
- 00029630  0x00008044 ior  0x0000002f , 0x0000002f 
- 00029631  0x00008045 increase  0x00000001 , 0x00000038 
- 00029632  0x00008046 rtn 
- 00029633  0x0000804b add  0x00000013 , 0x00000001 , 0x00000006 
- 00029634  0x0000804c ifetch  0x00000001 , 0x00000006 
- 00029635  0x0000804d iforce  0x00000011 
- 00029636  0x0000804e call  0x000073ab 
- 00029637  0x0000804f call  0x0000741f 
- 00029638  0x00008051 force  0x00000000 , 0x00000038 
- 00029639  0x00008052 ifetch  0x00000001 , 0x00000013 
- 00029640  0x00008053 and_into  0x00000003 , 0x0000003f 
- 00029641  0x00008054 lshift16  0x0000003f , 0x0000002f 
- 00029642  0x00008055 set1  0x00000008 , 0x0000002f 
- 00029643  0x00008056 call  0x0000748f 
- 00029644  0x00008057 call  0x00007422 
- 00029645  0x00008059 copy  0x00000011 , 0x00000039 
- 00029646  0x0000805a add  0x00000013 , 0x00000002 , 0x00000006 
- 00029647  0x0000805b call  0x0000746e 
- 00029648  0x0000805d call  0x00007478 
- 00029649  0x0000805e call  0x00007422 
- 00029650  0x0000805f deposit  0x00000039 
- 00029651  0x00008060 branch  0x000073d5 , 0x00000034 
- 00029652  0x00008061 branch  0x000073d0 
- 00029653  0x00008063 force  0x0000000c , 0x00000038 
- 00029654  0x00008064 deposit  0x0000002f 
- 00029655  0x00008065 store  0x00000004 , 0x00000417 
- 00029656  0x00008066 rtn 
- 00029657  0x00008069 increase  0x00000001 , 0x00000011 
- 00029658  0x0000806a call  0x000073ad 
- 00029659  0x0000806b copy  0x00000013 , 0x00000006 
- 00029660  0x0000806c call  0x00007482 
- 00029661  0x0000806d call  0x00007425 
- 00029662  0x0000806e call  0x0000749e 
- 00029663  0x0000806f increase  0x00000010 , 0x00000013 
- 00029664  0x00008070 increase  0xfffffff0 , 0x00000012 
- 00029665  0x00008071 branch  0x000073d9 , 0x00000002 
- 00029666  0x00008072 rtn 
- 00029667  0x00008075 bpatchx  0x000000e1 , 0x0000403c 
- 00029668  0x00008076 arg  0x000043dc , 0x00000013 
- 00029669  0x00008077 fetcht  0x00000005 , 0x00004403 
- 00029670  0x00008078 call  0x000073c1 
- 00029671  0x00008079 force  0x00000008 , 0x00000038 
- 00029672  0x0000807a iforce  0x0000002f 
- 00029673  0x0000807b force  0x00000000 , 0x00000011 
- 00029674  0x0000807c call  0x000073ad 
- 00029675  0x0000807d call  0x00007425 
- 00029676  0x0000807e arg  0x000043de , 0x00000013 
- 00029677  0x0000807f fetch  0x00000001 , 0x000043dd 
- 00029678  0x00008080 add  0x0000003f , 0xffffffff , 0x00000012 
- 00029679  0x00008081 iadd  0x00000013 , 0x00000005 
- 00029680  0x00008082 force  0x0000000c , 0x00000038 
- 00029681  0x00008083 deposit  0x0000002f 
- 00029682  0x00008084 istore  0x00000004 , 0x00000005 
- 00029683  0x00008085 call  0x000073d9 
- 00029684  0x00008086 fetch  0x00000001 , 0x000043dd 
- 00029685  0x00008087 increase  0x00000004 , 0x0000003f 
- 00029686  0x00008088 store  0x00000001 , 0x000043dd 
- 00029687  0x00008089 fetcht  0x00000005 , 0x00004403 
- 00029688  0x0000808a increase  0x00000001 , 0x00000002 
- 00029689  0x0000808b storet  0x00000005 , 0x00004403 
- 00029690  0x0000808c rtn 
- 00029691  0x0000808f bpatchx  0x000000e2 , 0x0000403c 
- 00029692  0x00008090 fetch  0x00000001 , 0x000002da 
- 00029693  0x00008091 sub  0x0000003f , 0x00000014 , 0x0000003e 
- 00029694  0x00008092 branch  0x000073ff , 0x00000002 
- 00029695  0x00008094 arg  0x000002db , 0x00000013 
- 00029696  0x00008095 add  0x0000003f , 0xffffffff , 0x00000012 
- 00029697  0x00008096 increase  0xfffffffc , 0x0000003f 
- 00029698  0x00008097 store  0x00000001 , 0x000002da 
- 00029699  0x00008098 iadd  0x00000013 , 0x00000006 
- 00029700  0x00008099 ifetch  0x00000004 , 0x00000006 
- 00029701  0x0000809a force  0x00000008 , 0x00000038 
- 00029702  0x0000809b iforce  0x0000002f 
- 00029703  0x0000809c force  0x00000000 , 0x00000011 
- 00029704  0x0000809d fetcht  0x00000005 , 0x00004408 
- 00029705  0x0000809e call  0x000073ad 
- 00029706  0x0000809f call  0x00007425 
- 00029707  0x000080a0 force  0x0000000c , 0x00000038 
- 00029708  0x000080a1 deposit  0x0000002f 
- 00029709  0x000080a2 store  0x00000004 , 0x0000041b 
- 00029710  0x000080a3 call  0x000073d9 
- 00029711  0x000080a4 arg  0x000002d9 , 0x00000013 
- 00029712  0x000080a5 call  0x000073c1 
- 00029713  0x000080a6 fetcht  0x00000004 , 0x0000041b 
- 00029714  0x000080a7 isub  0x00000002 , 0x0000003f 
- 00029715  0x000080a8 nrtn  0x00000034 
- 00029716  0x000080a9 fetch  0x00000004 , 0x0000440d 
- 00029717  0x000080aa isub  0x00000002 , 0x0000003f 
- 00029718  0x000080ab rtn  0x00000034 
- 00029719  0x000080ac storet  0x00000004 , 0x0000440d 
- 00029720  0x000080ad fetch  0x00000005 , 0x00004408 
- 00029721  0x000080ae increase  0x00000001 , 0x0000003f 
- 00029722  0x000080af store  0x00000005 , 0x00004408 
- 00029723  0x000080b0 force  0x00000000 , 0x0000003f 
- 00029724  0x000080b1 rtn 
- 00029725  0x000080b4 nbranch  0x0000741d , 0x00000037 
- 00029726  0x000080b5 rtn 
- 00029727  0x000080b8 force  0x00000030 , 0x00000036 
- 00029728  0x000080b9 force  0x00000000 , 0x00000036 
- 00029729  0x000080ba branch  0x0000741d 
- 00029730  0x000080bd force  0x00000032 , 0x00000036 
- 00029731  0x000080be force  0x00000002 , 0x00000036 
- 00029732  0x000080bf branch  0x0000741d 
- 00029733  0x000080c2 force  0x00000034 , 0x00000036 
- 00029734  0x000080c3 force  0x00000004 , 0x00000036 
- 00029735  0x000080c4 branch  0x0000741d 
- 00029736  0x000080c8 force  0x00000001 , 0x00000036 
- 00029737  0x000080c9 force  0x00000000 , 0x00000036 
- 00029738  0x000080ca rtn 
- 00029739  0x000080cc force  0x00000000 , 0x00000038 
- 00029740  0x000080cd fetch  0x00000004 , 0x0000042f 
- 00029741  0x000080ce iforce  0x0000002f 
- 00029742  0x000080cf increase  0x00000001 , 0x00000038 
- 00029743  0x000080d0 ifetch  0x00000004 , 0x00000006 
- 00029744  0x000080d1 iforce  0x0000002f 
- 00029745  0x000080d2 increase  0x00000001 , 0x00000038 
- 00029746  0x000080d3 fetch  0x00000004 , 0x0000443a 
- 00029747  0x000080d4 iforce  0x0000002f 
- 00029748  0x000080d5 increase  0x00000001 , 0x00000038 
- 00029749  0x000080d6 ifetch  0x00000004 , 0x00000006 
- 00029750  0x000080d7 iforce  0x0000002f 
- 00029751  0x000080d8 increase  0x00000001 , 0x00000038 
- 00029752  0x000080d9 call  0x00007492 
- 00029753  0x000080da increase  0xfffffffc , 0x00000038 
- 00029754  0x000080db fetch  0x00000004 , 0x000044c7 
- 00029755  0x000080dc copy  0x0000003f , 0x0000002f 
- 00029756  0x000080dd increase  0x00000004 , 0x00000038 
- 00029757  0x000080de force  0x00000038 , 0x00000036 
- 00029758  0x000080df force  0x00000008 , 0x00000036 
- 00029759  0x000080e0 branch  0x0000741d 
- 00029760  0x000080e4 bpatchx  0x000000e3 , 0x0000403c 
- 00029761  0x000080e5 fetch  0x00000006 , 0x000044a0 
- 00029762  0x000080e6 fetcht  0x00000006 , 0x0000044f 
- 00029763  0x000080e7 branch  0x00007446 , 0x00000029 
- 00029764  0x000080e8 fetch  0x00000006 , 0x0000044f 
- 00029765  0x000080e9 fetcht  0x00000006 , 0x000044a0 
- 00029766  0x000080eb force  0x00000008 , 0x00000038 
- 00029767  0x000080ec copy  0x00000002 , 0x0000002f 
- 00029768  0x000080ed increase  0x00000001 , 0x00000038 
- 00029769  0x000080ee rshift32  0x00000002 , 0x0000002f 
- 00029770  0x000080ef lshift16  0x0000003f , 0x0000003f 
- 00029771  0x000080f0 ior  0x0000002f , 0x0000002f 
- 00029772  0x000080f1 increase  0x00000001 , 0x00000038 
- 00029773  0x000080f2 rshift32  0x0000003f , 0x0000002f 
- 00029774  0x000080f3 increase  0x00000001 , 0x00000038 
- 00029775  0x000080f4 force  0x00000000 , 0x0000002f 
- 00029776  0x000080f5 force  0x00000000 , 0x0000003f 
- 00029777  0x000080f6 fetch  0x00000001 , 0x0000448e 
- 00029778  0x000080f7 fetcht  0x00000001 , 0x00004485 
- 00029779  0x000080f8 nbranch  0x00007456 , 0x00000029 
- 00029780  0x000080fa fetch  0x00000001 , 0x00004495 
- 00029781  0x000080fb fetcht  0x00000001 , 0x0000448e 
- 00029782  0x000080fd store  0x00000001 , 0x0000444a 
- 00029783  0x000080fe storet  0x00000001 , 0x0000444b 
- 00029784  0x000080ff force  0x00000000 , 0x00000038 
- 00029785  0x00008100 arg  0x0000444a , 0x00000012 
- 00029786  0x00008101 force  0x00000004 , 0x00000039 
- 00029787  0x00008103 ifetch  0x00000004 , 0x00000011 
- 00029788  0x00008104 ifetcht  0x00000004 , 0x00000012 
- 00029789  0x00008105 ixor  0x00000002 , 0x0000002f 
- 00029790  0x00008106 increase  0x00000001 , 0x00000038 
- 00029791  0x00008107 increase  0x00000004 , 0x00000011 
- 00029792  0x00008108 increase  0x00000004 , 0x00000012 
- 00029793  0x00008109 loop  0x0000745b 
- 00029794  0x0000810a call  0x00007492 
- 00029795  0x0000810b increase  0xfffffffc , 0x00000038 
- 00029796  0x0000810c fetch  0x00000004 , 0x000044c7 
- 00029797  0x0000810d copy  0x0000003f , 0x0000002f 
- 00029798  0x0000810e increase  0x00000004 , 0x00000038 
- 00029799  0x0000810f force  0x00000038 , 0x00000036 
- 00029800  0x00008110 force  0x0000000c , 0x00000036 
- 00029801  0x00008111 call  0x0000741d 
- 00029802  0x00008113 call  0x00007491 
- 00029803  0x00008114 force  0x0000003a , 0x00000036 
- 00029804  0x00008115 force  0x00000008 , 0x00000036 
- 00029805  0x00008116 branch  0x0000741d 
- 00029806  0x00008119 compare  0x00000000 , 0x00000039 , 0x00000003 
- 00029807  0x0000811a rtn  0x00000001 
- 00029808  0x0000811b deposit  0x00000006 
- 00029809  0x0000811c iadd  0x00000039 , 0x00000005 
- 00029810  0x0000811d force  0x00000000 , 0x0000003f 
- 00029811  0x0000811f istore  0x00000001 , 0x00000005 
- 00029812  0x00008120 increase  0x00000001 , 0x00000039 
- 00029813  0x00008121 compare  0x00000000 , 0x00000039 , 0x00000003 
- 00029814  0x00008122 rtn  0x00000001 
- 00029815  0x00008123 branch  0x00007473 
- 00029816  0x00008126 force  0x00000000 , 0x00000038 
- 00029817  0x00008128 deposit  0x00000039 
- 00029818  0x00008129 branch  0x0000747d , 0x00000034 
- 00029819  0x0000812a ifetch  0x00000004 , 0x00000006 
- 00029820  0x0000812b increase  0xfffffffc , 0x00000039 
- 00029821  0x0000812d iforce  0x0000002f 
- 00029822  0x0000812e increase  0x00000001 , 0x00000038 
- 00029823  0x0000812f compare  0x00000004 , 0x00000038 , 0x0000000f 
- 00029824  0x00008130 rtn  0x00000001 
- 00029825  0x00008131 branch  0x00007479 
- 00029826  0x00008134 force  0x00000008 , 0x00000038 
- 00029827  0x00008135 branch  0x00007487 
- 00029828  0x00008137 force  0x00000004 , 0x00000038 
- 00029829  0x00008138 branch  0x00007487 
- 00029830  0x0000813a force  0x00000000 , 0x00000038 
- 00029831  0x0000813c force  0x00000004 , 0x00000039 
- 00029832  0x0000813e ifetch  0x00000004 , 0x00000006 
- 00029833  0x0000813f iforce  0x0000002f 
- 00029834  0x00008140 increase  0x00000001 , 0x00000038 
- 00029835  0x00008141 loop  0x00007488 
- 00029836  0x00008142 rtn 
- 00029837  0x00008145 arg  0x0000047c , 0x00000006 
- 00029838  0x00008146 branch  0x00007484 
- 00029839  0x00008149 force  0x00000004 , 0x00000039 
- 00029840  0x0000814a branch  0x00007494 
- 00029841  0x0000814d force  0x00000000 , 0x00000038 
- 00029842  0x0000814f force  0x00000004 , 0x00000039 
- 00029843  0x00008151 force  0x00000000 , 0x0000002f 
- 00029844  0x00008153 increase  0x00000001 , 0x00000038 
- 00029845  0x00008154 loop  0x00007493 
- 00029846  0x00008155 rtn 
- 00029847  0x00008158 force  0x0000000c , 0x00000038 
- 00029848  0x00008159 force  0x00000004 , 0x00000039 
- 00029849  0x0000815b deposit  0x0000002f 
- 00029850  0x0000815c istore  0x00000004 , 0x00000005 
- 00029851  0x0000815d increase  0x00000001 , 0x00000038 
- 00029852  0x0000815e loop  0x00007499 
- 00029853  0x0000815f rtn 
- 00029854  0x00008162 force  0x0000000c , 0x00000038 
- 00029855  0x00008163 copy  0x00000013 , 0x00000005 
- 00029856  0x00008164 add  0x00000012 , 0x00000001 , 0x00000039 
- 00029857  0x00008165 sub  0x00000039 , 0x0000000f , 0x0000003e 
- 00029858  0x00008166 branch  0x000074a4 , 0x00000002 
- 00029859  0x00008167 force  0x00000010 , 0x00000039 
- 00029860  0x00008169 deposit  0x0000002f 
- 00029861  0x0000816a sub  0x00000039 , 0x00000003 , 0x0000003e 
- 00029862  0x0000816b branch  0x000074ac , 0x00000002 
- 00029863  0x0000816c istore  0x00000004 , 0x00000005 
- 00029864  0x0000816d increase  0xfffffffc , 0x00000039 
- 00029865  0x0000816e rtn  0x00000005 
- 00029866  0x0000816f increase  0x00000001 , 0x00000038 
- 00029867  0x00008170 branch  0x000074a4 
- 00029868  0x00008172 istore  0x00000001 , 0x00000005 
- 00029869  0x00008173 rshift8  0x0000003f , 0x0000003f 
- 00029870  0x00008174 loop  0x000074ac 
- 00029871  0x00008175 rtn 
- 00029872  0x00008179 force  0x0000000c , 0x00000038 
- 00029873  0x0000817a force  0x00000004 , 0x00000039 
- 00029874  0x0000817c ifetch  0x00000004 , 0x00000006 
- 00029875  0x0000817d isub  0x0000002f , 0x0000003e 
- 00029876  0x0000817e nrtn  0x00000005 
- 00029877  0x0000817f increase  0x00000001 , 0x00000038 
- 00029878  0x00008180 loop  0x000074b2 
- 00029879  0x00008181 force  0x00000000 , 0x0000003e 
- 00029880  0x00008182 rtn 
- 00029881  0x00008185 hfetch  0x00000001 , 0x00008050 
- 00029882  0x00008186 set0  0x00000000 , 0x0000003f 
- 00029883  0x00008187 hstore  0x00000001 , 0x00008050 
- 00029884  0x00008188 rtn 
- 00029885  0x0000818b hfetch  0x00000001 , 0x00008050 
- 00029886  0x0000818c set1  0x00000000 , 0x0000003f 
- 00029887  0x0000818d hstore  0x00000001 , 0x00008050 
- 00029888  0x0000818e rtn 
- 00029889  0x00008191 arg  0x00000886 , 0x00000005 
- 00029890  0x00008192 setsect  0x00000000 , 0x0003ffff 
- 00029891  0x00008193 setsect  0x00000001 , 0x0003ffff 
- 00029892  0x00008194 setsect  0x00000002 , 0x0003ffff 
- 00029893  0x00008195 setsect  0x00000003 , 0x0003fbff 
- 00029894  0x00008196 istore  0x00000009 , 0x00000005 
- 00029895  0x00008197 setsect  0x00000000 , 0x0003ffff 
- 00029896  0x00008198 setsect  0x00000001 , 0x0003ffff 
- 00029897  0x00008199 setsect  0x00000002 , 0x0003ffff 
- 00029898  0x0000819a setsect  0x00000003 , 0x0003ffff 
- 00029899  0x0000819b istore  0x00000009 , 0x00000005 
- 00029900  0x0000819c setsect  0x00000000 , 0x0003ffff 
- 00029901  0x0000819d setsect  0x00000001 , 0x0003ffff 
- 00029902  0x0000819e setsect  0x00000002 , 0x0003cfff 
- 00029903  0x0000819f setsect  0x00000003 , 0x0003ffff 
- 00029904  0x000081a0 istore  0x00000009 , 0x00000005 
- 00029905  0x000081a1 setsect  0x00000000 , 0x0003ffff 
- 00029906  0x000081a2 setsect  0x00000001 , 0x0003ffff 
- 00029907  0x000081a3 setsect  0x00000002 , 0x0003ffef 
- 00029908  0x000081a4 setsect  0x00000003 , 0x0003ffff 
- 00029909  0x000081a5 istore  0x00000009 , 0x00000005 
- 00029910  0x000081a6 setsect  0x00000000 , 0x0003ffff 
- 00029911  0x000081a7 setsect  0x00000001 , 0x0003ffff 
- 00029912  0x000081a8 setsect  0x00000002 , 0x0003ffff 
- 00029913  0x000081a9 setsect  0x00000003 , 0x0003ffff 
- 00029914  0x000081aa istore  0x00000009 , 0x00000005 
- 00029915  0x000081ab setsect  0x00000000 , 0x0003ffff 
- 00029916  0x000081ac setsect  0x00000001 , 0x00026c7f 
- 00029917  0x000081ad setsect  0x00000002 , 0x0000146b 
- 00029918  0x000081ae setsect  0x00000003 , 0x00037bb3 
- 00029919  0x000081af istore  0x00000009 , 0x00000005 
- 00029920  0x000081b0 setsect  0x00000000 , 0x0001feb8 
- 00029921  0x000081b1 setsect  0x00000001 , 0x00010c12 
- 00029922  0x000081b2 setsect  0x00000002 , 0x0002b722 
- 00029923  0x000081b3 setsect  0x00000003 , 0x00029fa6 
- 00029924  0x000081b4 istore  0x00000009 , 0x00000005 
- 00029925  0x000081b5 setsect  0x00000000 , 0x0000e70f 
- 00029926  0x000081b6 setsect  0x00000001 , 0x00016720 
- 00029927  0x000081b7 setsect  0x00000002 , 0x0000519e 
- 00029928  0x000081b8 setsect  0x00000003 , 0x00019084 
- 00029929  0x000081b9 istore  0x00000009 , 0x00000005 
- 00029930  0x000081ba setsect  0x00000000 , 0x00031012 
- 00029931  0x000081bb setsect  0x00000001 , 0x000360bf 
- 00029932  0x000081bc setsect  0x00000002 , 0x0003f0af 
- 00029933  0x000081bd setsect  0x00000003 , 0x000003d3 
- 00029934  0x000081be istore  0x00000009 , 0x00000005 
- 00029935  0x000081bf setsect  0x00000000 , 0x0003a188 
- 00029936  0x000081c0 setsect  0x00000001 , 0x00003ad0 
- 00029937  0x000081c1 setsect  0x00000002 , 0x0003cbf2 
- 00029938  0x000081c2 setsect  0x00000003 , 0x000243d9 
- 00029939  0x000081c3 istore  0x00000009 , 0x00000005 
- 00029940  0x000081c4 setsect  0x00000000 , 0x0002b030 
- 00029941  0x000081c5 setsect  0x00000001 , 0x00036a03 
- 00029942  0x000081c6 setsect  0x00000002 , 0x00011188 
- 00029943  0x000081c7 setsect  0x00000003 , 0x0001e520 
- 00029944  0x000081c8 istore  0x00000009 , 0x00000005 
- 00029945  0x000081c9 setsect  0x00000000 , 0x0003a11e 
- 00029946  0x000081ca setsect  0x00000001 , 0x0000fe5d 
- 00029947  0x000081cb setsect  0x00000002 , 0x0000dd57 
- 00029948  0x000081cc setsect  0x00000003 , 0x0001ac93 
- 00029949  0x000081cd istore  0x00000009 , 0x00000005 
- 00029950  0x000081ce setsect  0x00000000 , 0x000011ed 
- 00029951  0x000081cf setsect  0x00000001 , 0x000218c4 
- 00029952  0x000081d0 setsect  0x00000002 , 0x00008da7 
- 00029953  0x000081d1 setsect  0x00000003 , 0x000257ff 
- 00029954  0x000081d2 istore  0x00000009 , 0x00000005 
- 00029955  0x000081d3 setsect  0x00000000 , 0x0003192b 
- 00029956  0x000081d4 setsect  0x00000001 , 0x00034641 
- 00029957  0x000081d5 setsect  0x00000002 , 0x0001be0c 
- 00029958  0x000081d6 setsect  0x00000003 , 0x000366ad 
- 00029959  0x000081d7 istore  0x00000009 , 0x00000005 
- 00029960  0x000081d8 setsect  0x00000000 , 0x00001f83 
- 00029961  0x000081d9 setsect  0x00000001 , 0x00015a23 
- 00029962  0x000081da setsect  0x00000002 , 0x0003f9b0 
- 00029963  0x000081db setsect  0x00000003 , 0x00003949 
- 00029964  0x000081dc istore  0x00000009 , 0x00000005 
- 00029965  0x000081dd setsect  0x00000000 , 0x00013a51 
- 00029966  0x000081de setsect  0x00000001 , 0x000153fd 
- 00029967  0x000081df setsect  0x00000002 , 0x0003372a 
- 00029968  0x000081e0 setsect  0x00000003 , 0x0000f1bb 
- 00029969  0x000081e1 istore  0x00000009 , 0x00000005 
- 00029970  0x000081e2 setsect  0x00000000 , 0x0003ae85 
- 00029971  0x000081e3 setsect  0x00000001 , 0x0001eed9 
- 00029972  0x000081e4 setsect  0x00000002 , 0x00009e66 
- 00029973  0x000081e5 setsect  0x00000003 , 0x000001a8 
- 00029974  0x000081e6 istore  0x00000008 , 0x00000005 
- 00029975  0x000081e7 rtn 
- 00029976  0x000081ec arg  0x0000091e , 0x00000005 
- 00029977  0x000081ed setsect  0x00000000 , 0x0003ffff 
- 00029978  0x000081ee setsect  0x00000001 , 0x0003ffff 
- 00029979  0x000081ef setsect  0x00000002 , 0x0003ffff 
- 00029980  0x000081f0 setsect  0x00000003 , 0x0003ffff 
- 00029981  0x000081f1 istore  0x00000009 , 0x00000005 
- 00029982  0x000081f2 setsect  0x00000000 , 0x0003ffff 
- 00029983  0x000081f3 setsect  0x00000001 , 0x0000003f 
- 00029984  0x000081f4 setsect  0x00000002 , 0x00000000 
- 00029985  0x000081f5 setsect  0x00000003 , 0x00000000 
- 00029986  0x000081f6 istore  0x00000009 , 0x00000005 
- 00029987  0x000081f7 setsect  0x00000000 , 0x00000000 
- 00029988  0x000081f8 setsect  0x00000001 , 0x00000000 
- 00029989  0x000081f9 setsect  0x00000002 , 0x00001000 
- 00029990  0x000081fa setsect  0x00000003 , 0x00000000 
- 00029991  0x000081fb istore  0x00000009 , 0x00000005 
- 00029992  0x000081fc setsect  0x00000000 , 0x0003ff00 
- 00029993  0x000081fd setsect  0x00000001 , 0x0003ffff 
- 00029994  0x000081fe setsect  0x00000002 , 0x0003ffcf 
- 00029995  0x000081ff setsect  0x00000003 , 0x0003ffff 
- 00029996  0x00008200 istore  0x00000009 , 0x00000005 
- 00029997  0x00008201 setsect  0x00000000 , 0x0003ffff 
- 00029998  0x00008202 setsect  0x00000001 , 0x0003ffff 
- 00029999  0x00008203 setsect  0x00000002 , 0x0003ffff 
- 00030000  0x00008204 setsect  0x00000003 , 0x000003ff 
- 00030001  0x00008205 istore  0x00000009 , 0x00000005 
- 00030002  0x00008206 setsect  0x00000000 , 0x00000000 
- 00030003  0x00008207 setsect  0x00000001 , 0x00000000 
- 00030004  0x00008208 setsect  0x00000002 , 0x00000000 
- 00030005  0x00008209 setsect  0x00000003 , 0x00000000 
- 00030006  0x0000820a istore  0x00000009 , 0x00000005 
- 00030007  0x0000820b setsect  0x00000000 , 0x00010000 
- 00030008  0x0000820c setsect  0x00000001 , 0x00000000 
- 00030009  0x0000820d setsect  0x00000002 , 0x0003f000 
- 00030010  0x0000820e setsect  0x00000003 , 0x0003ffff 
- 00030011  0x0000820f istore  0x00000009 , 0x00000005 
- 00030012  0x00008210 setsect  0x00000000 , 0x000296ff 
- 00030013  0x00008211 setsect  0x00000001 , 0x00022630 
- 00030014  0x00008212 setsect  0x00000002 , 0x0003945d 
- 00030015  0x00008213 setsect  0x00000003 , 0x0003d284 
- 00030016  0x00008214 istore  0x00000009 , 0x00000005 
- 00030017  0x00008215 setsect  0x00000000 , 0x000333a0 
- 00030018  0x00008216 setsect  0x00000001 , 0x00004b7a 
- 00030019  0x00008217 setsect  0x00000002 , 0x000037d8 
- 00030020  0x00008218 setsect  0x00000003 , 0x0003c9dc 
- 00030021  0x00008219 istore  0x00000009 , 0x00000005 
- 00030022  0x0000821a setsect  0x00000000 , 0x0003a440 
- 00030023  0x0000821b setsect  0x00000001 , 0x0001b958 
- 00030024  0x0000821c setsect  0x00000002 , 0x00038bce 
- 00030025  0x0000821d setsect  0x00000003 , 0x0001091f 
- 00030026  0x0000821e istore  0x00000009 , 0x00000005 
- 00030027  0x0000821f setsect  0x00000000 , 0x0002e12c 
- 00030028  0x00008220 setsect  0x00000001 , 0x0001f47c 
- 00030029  0x00008221 setsect  0x00000002 , 0x000356b1 
- 00030030  0x00008222 setsect  0x00000003 , 0x0002fd47 
- 00030031  0x00008223 istore  0x00000009 , 0x00000005 
- 00030032  0x00008224 setsect  0x00000000 , 0x00006837 
- 00030033  0x00008225 setsect  0x00000001 , 0x0002ed90 
- 00030034  0x00008226 setsect  0x00000002 , 0x0001ecec 
- 00030035  0x00008227 setsect  0x00000003 , 0x0001acc5 
- 00030036  0x00008228 istore  0x00000009 , 0x00000005 
- 00030037  0x00008229 setsect  0x00000000 , 0x00023357 
- 00030038  0x0000822a setsect  0x00000001 , 0x00018af3 
- 00030039  0x0000822b setsect  0x00000002 , 0x0000f9e1 
- 00030040  0x0000822c setsect  0x00000003 , 0x000129f0 
- 00030041  0x0000822d istore  0x00000009 , 0x00000005 
- 00030042  0x0000822e setsect  0x00000000 , 0x0002e7eb 
- 00030043  0x0000822f setsect  0x00000001 , 0x0003e6e3 
- 00030044  0x00008230 setsect  0x00000002 , 0x0003e1a7 
- 00030045  0x00008231 setsect  0x00000003 , 0x00010b8b 
- 00030046  0x00008232 istore  0x00000009 , 0x00000005 
- 00030047  0x00008233 setsect  0x00000000 , 0x00024fe3 
- 00030048  0x00008234 setsect  0x00000001 , 0x000020ef 
- 00030049  0x00008235 setsect  0x00000002 , 0x0001b5a6 
- 00030050  0x00008236 setsect  0x00000003 , 0x0000dc2f 
- 00030051  0x00008237 istore  0x00000009 , 0x00000005 
- 00030052  0x00008238 setsect  0x00000000 , 0x00013860 
- 00030053  0x00008239 setsect  0x00000001 , 0x0002bd69 
- 00030054  0x0000823a setsect  0x00000002 , 0x0000391a 
- 00030055  0x0000823b setsect  0x00000003 , 0x0001b222 
- 00030056  0x0000823c istore  0x00000009 , 0x00000005 
- 00030057  0x0000823d rtn 
- 00030058  0x00008241 fetch  0x00000001 , 0x0000465a 
- 00030059  0x00008242 nbranch  0x0000757d , 0x00000034 
- 00030060  0x00008243 branch  0x00007a77 
- 00030061  0x00008246 bpatchx  0x000000e4 , 0x0000403c 
- 00030062  0x00008247 fetch  0x00000001 , 0x0000465a 
- 00030063  0x00008248 rtn  0x00000034 
- 00030064  0x00008249 fetch  0x00000001 , 0x000045b1 
- 00030065  0x0000824a rtnne  0x00000001 
- 00030066  0x0000824b fetch  0x00000001 , 0x000044be 
- 00030067  0x0000824c rtn  0x00000034 
- 00030068  0x0000824d fetch  0x00000001 , 0x000044c3 
- 00030069  0x0000824e rtneq  0x00000003 
- 00030070  0x0000824f fetch  0x00000002 , 0x00004682 
- 00030071  0x00008250 bbit1  0x00000000 , 0x0000757b 
- 00030072  0x00008251 fetch  0x00000001 , 0x000044c0 
- 00030073  0x00008252 beq  0x00000000 , 0x00007a77 
- 00030074  0x00008253 rtn 
- 00030075  0x00008255 jam  0x00000000 , 0x000044c0 
- 00030076  0x00008256 rtn 
- 00030077  0x0000825a bpatchx  0x000000e5 , 0x0000403c 
- 00030078  0x0000825b fetch  0x00000001 , 0x0000465a 
- 00030079  0x0000825c branch  0x0000612b , 0x00000034 
- 00030080  0x0000825d call  0x00006124 
- 00030081  0x0000825e call  0x00007583 
- 00030082  0x0000825f branch  0x0000766d 
- 00030083  0x00008262 setarg  0x00000000 
- 00030084  0x00008263 store  0x00000008 , 0x000009ae 
- 00030085  0x00008264 store  0x00000004 , 0x000009b6 
- 00030086  0x00008265 store  0x00000007 , 0x0000465e 
- 00030087  0x00008266 rtn 
- 00030088  0x00008269 jam  0x00000001 , 0x000009b0 
- 00030089  0x0000826a branch  0x0000758d 
- 00030090  0x0000826c fetch  0x00000001 , 0x000045b1 
- 00030091  0x0000826d beq  0x00000001 , 0x0000768a 
- 00030092  0x0000826e branch  0x00002a8c 
- 00030093  0x00008270 fetch  0x00000001 , 0x000045b1 
- 00030094  0x00008271 beq  0x00000001 , 0x00007590 
- 00030095  0x00008272 branch  0x0000766d 
- 00030096  0x00008275 call  0x0000768a 
- 00030097  0x00008276 fetch  0x00000001 , 0x000009af 
- 00030098  0x00008277 nrtn  0x00000034 
- 00030099  0x00008278 jam  0x00000003 , 0x000009ae 
- 00030100  0x00008279 rtn 
- 00030101  0x0000827d call  0x000075b0 
- 00030102  0x0000827e arg  0x000009de , 0x00000011 
- 00030103  0x0000827f arg  0x00000866 , 0x00000005 
- 00030104  0x00008280 call  0x00007c79 
- 00030105  0x00008281 arg  0x000009be , 0x00000011 
- 00030106  0x00008282 arg  0x00000826 , 0x00000005 
- 00030107  0x00008283 call  0x00007c79 
- 00030108  0x00008284 arg  0x00000826 , 0x00000011 
- 00030109  0x00008285 arg  0x000009be , 0x00000012 
- 00030110  0x00008286 arg  0x00000826 , 0x00000005 
- 00030111  0x00008287 call  0x00007be1 
- 00030112  0x00008288 arg  0x0000093e , 0x00000011 
- 00030113  0x00008289 arg  0x000009be , 0x00000012 
- 00030114  0x0000828a arg  0x00000846 , 0x00000005 
- 00030115  0x0000828b call  0x00007be1 
- 00030116  0x0000828c arg  0x00000846 , 0x00000011 
- 00030117  0x0000828d arg  0x00000826 , 0x00000012 
- 00030118  0x0000828e arg  0x00000826 , 0x00000005 
- 00030119  0x0000828f call  0x00007c7d 
- 00030120  0x00008290 arg  0x00000806 , 0x00000011 
- 00030121  0x00008291 arg  0x00000826 , 0x00000012 
- 00030122  0x00008292 arg  0x00000806 , 0x00000005 
- 00030123  0x00008293 call  0x00007c7d 
- 00030124  0x00008294 arg  0x00000020 , 0x00000039 
- 00030125  0x00008295 arg  0x00000866 , 0x00000011 
- 00030126  0x00008296 arg  0x00000806 , 0x00000012 
- 00030127  0x00008297 branch  0x00007f88 
- 00030128  0x0000829a arg  0x0000097e , 0x00000011 
- 00030129  0x0000829b arg  0x00000806 , 0x00000005 
- 00030130  0x0000829c call  0x00007c79 
- 00030131  0x0000829d arg  0x0000095e , 0x00000011 
- 00030132  0x0000829e arg  0x00000826 , 0x00000005 
- 00030133  0x0000829f call  0x00007c79 
- 00030134  0x000082a0 arg  0x00000826 , 0x00000011 
- 00030135  0x000082a1 arg  0x0000095e , 0x00000012 
- 00030136  0x000082a2 arg  0x00000826 , 0x00000005 
- 00030137  0x000082a3 call  0x00007be1 
- 00030138  0x000082a4 arg  0x0000093e , 0x00000011 
- 00030139  0x000082a5 arg  0x0000095e , 0x00000012 
- 00030140  0x000082a6 arg  0x00000846 , 0x00000005 
- 00030141  0x000082a7 call  0x00007be1 
- 00030142  0x000082a8 arg  0x00000846 , 0x00000011 
- 00030143  0x000082a9 arg  0x00000826 , 0x00000012 
- 00030144  0x000082aa arg  0x00000826 , 0x00000005 
- 00030145  0x000082ab call  0x00007c7d 
- 00030146  0x000082ac arg  0x00000806 , 0x00000011 
- 00030147  0x000082ad arg  0x00000826 , 0x00000012 
- 00030148  0x000082ae arg  0x00000806 , 0x00000005 
- 00030149  0x000082af branch  0x00007c96 
- 00030150  0x000082b2 call  0x000075e1 
- 00030151  0x000082b3 arg  0x000009e6 , 0x00000011 
- 00030152  0x000082b4 arg  0x00000866 , 0x00000005 
- 00030153  0x000082b5 call  0x000077a8 
- 00030154  0x000082b6 arg  0x000009c6 , 0x00000011 
- 00030155  0x000082b7 arg  0x00000826 , 0x00000005 
- 00030156  0x000082b8 call  0x000077a8 
- 00030157  0x000082b9 arg  0x00000826 , 0x00000011 
- 00030158  0x000082ba arg  0x000009c6 , 0x00000012 
- 00030159  0x000082bb arg  0x00000826 , 0x00000005 
- 00030160  0x000082bc call  0x00007786 
- 00030161  0x000082bd arg  0x0000089e , 0x00000011 
- 00030162  0x000082be arg  0x000009c6 , 0x00000012 
- 00030163  0x000082bf arg  0x00000846 , 0x00000005 
- 00030164  0x000082c0 call  0x00007786 
- 00030165  0x000082c1 arg  0x00000846 , 0x00000011 
- 00030166  0x000082c2 arg  0x00000826 , 0x00000012 
- 00030167  0x000082c3 arg  0x00000826 , 0x00000005 
- 00030168  0x000082c4 call  0x00007755 
- 00030169  0x000082c5 arg  0x00000806 , 0x00000011 
- 00030170  0x000082c6 arg  0x00000826 , 0x00000012 
- 00030171  0x000082c7 arg  0x00000806 , 0x00000005 
- 00030172  0x000082c8 call  0x00007755 
- 00030173  0x000082c9 arg  0x00000018 , 0x00000039 
- 00030174  0x000082ca arg  0x00000866 , 0x00000011 
- 00030175  0x000082cb arg  0x00000806 , 0x00000012 
- 00030176  0x000082cc branch  0x00007f88 
- 00030177  0x000082cf arg  0x000008e6 , 0x00000011 
- 00030178  0x000082d0 arg  0x00000806 , 0x00000005 
- 00030179  0x000082d1 call  0x000077a8 
- 00030180  0x000082d2 arg  0x000008ce , 0x00000011 
- 00030181  0x000082d3 arg  0x00000826 , 0x00000005 
- 00030182  0x000082d4 call  0x000077a8 
- 00030183  0x000082d5 arg  0x00000826 , 0x00000011 
- 00030184  0x000082d6 arg  0x000008ce , 0x00000012 
- 00030185  0x000082d7 arg  0x00000826 , 0x00000005 
- 00030186  0x000082d8 call  0x00007786 
- 00030187  0x000082d9 arg  0x0000089e , 0x00000011 
- 00030188  0x000082da arg  0x000008ce , 0x00000012 
- 00030189  0x000082db arg  0x00000846 , 0x00000005 
- 00030190  0x000082dc call  0x00007786 
- 00030191  0x000082dd arg  0x00000846 , 0x00000011 
- 00030192  0x000082de arg  0x00000826 , 0x00000012 
- 00030193  0x000082df arg  0x00000826 , 0x00000005 
- 00030194  0x000082e0 call  0x00007755 
- 00030195  0x000082e1 arg  0x00000806 , 0x00000011 
- 00030196  0x000082e2 arg  0x00000826 , 0x00000012 
- 00030197  0x000082e3 arg  0x00000806 , 0x00000005 
- 00030198  0x000082e4 branch  0x00007758 
- 00030199  0x000082e8 fetch  0x00000001 , 0x000009b2 
- 00030200  0x000082e9 bne  0x00000000 , 0x00007615 
- 00030201  0x000082ea call  0x00007612 
- 00030202  0x000082eb arg  0x00000a7e , 0x00000005 
- 00030203  0x000082ec setarg  0x00000a2e 
- 00030204  0x000082ed istore  0x00000002 , 0x00000005 
- 00030205  0x000082ee setarg  0x00004642 
- 00030206  0x000082ef istore  0x00000002 , 0x00000005 
- 00030207  0x000082f0 setarg  0x000009de 
- 00030208  0x000082f1 istore  0x00000002 , 0x00000005 
- 00030209  0x000082f2 branch  0x00007609 
- 00030210  0x000082f4 arg  0x00000a7e , 0x00000005 
- 00030211  0x000082f5 setarg  0x00000a3e 
- 00030212  0x000082f6 istore  0x00000002 , 0x00000005 
- 00030213  0x000082f7 setarg  0x000009de 
- 00030214  0x000082f8 istore  0x00000002 , 0x00000005 
- 00030215  0x000082f9 setarg  0x00004642 
- 00030216  0x000082fa istore  0x00000002 , 0x00000005 
- 00030217  0x000082fc call  0x000079a0 
- 00030218  0x000082fd fetch  0x00000001 , 0x000009af 
- 00030219  0x000082fe beq  0x00000004 , 0x0000760f 
- 00030220  0x000082ff jam  0x00000001 , 0x000009b0 
- 00030221  0x00008300 jam  0x00000005 , 0x000009ae 
- 00030222  0x00008301 rtn 
- 00030223  0x00008303 jam  0x00000014 , 0x000009af 
- 00030224  0x00008304 call  0x0000758a 
- 00030225  0x00008305 branch  0x000076d8 
- 00030226  0x00008308 arg  0x00000a1e , 0x00000005 
- 00030227  0x00008309 force  0x00000008 , 0x00000007 
- 00030228  0x0000830a branch  0x000076a2 
- 00030229  0x0000830d jam  0x00000001 , 0x000009b0 
- 00030230  0x0000830e rtn 
- 00030231  0x00008312 bpatchx  0x000000e6 , 0x0000403c 
- 00030232  0x00008313 arg  0x00000727 , 0x00000005 
- 00030233  0x00008314 fetch  0x00000006 , 0x000040a0 
- 00030234  0x00008315 istore  0x00000006 , 0x00000005 
- 00030235  0x00008316 fetch  0x00000006 , 0x00000040 
- 00030236  0x00008317 istore  0x00000006 , 0x00000005 
- 00030237  0x00008318 fetch  0x00000003 , 0x0000465e 
- 00030238  0x00008319 istore  0x00000003 , 0x00000005 
- 00030239  0x0000831b call  0x00007a0d 
- 00030240  0x0000831d arg  0x00000a4e , 0x00000011 
- 00030241  0x0000831e arg  0x00000a5e , 0x00000012 
- 00030242  0x0000831f force  0x00000004 , 0x00000007 
- 00030243  0x00008320 call  0x000076a7 
- 00030244  0x00008321 nbranch  0x00007631 , 0x00000001 
- 00030245  0x00008323 call  0x00007628 
- 00030246  0x00008324 jam  0x00000041 , 0x0000007d 
- 00030247  0x00008325 branch  0x000062f8 
- 00030248  0x00008328 fetch  0x00000001 , 0x000009af 
- 00030249  0x00008329 beq  0x00000009 , 0x0000762e 
- 00030250  0x0000832a jam  0x0000000a , 0x000009ae 
- 00030251  0x0000832b jam  0x00000001 , 0x000009b0 
- 00030252  0x0000832c jam  0x00000003 , 0x0000007c 
- 00030253  0x0000832d rtn 
- 00030254  0x0000832f jam  0x00000003 , 0x0000007c 
- 00030255  0x00008330 jam  0x00000015 , 0x000009af 
- 00030256  0x00008331 branch  0x000076d8 
- 00030257  0x00008335 fetch  0x00000001 , 0x000009af 
- 00030258  0x00008336 beq  0x00000009 , 0x00007637 
- 00030259  0x00008337 jam  0x00000000 , 0x000009ae 
- 00030260  0x00008338 jam  0x00000004 , 0x0000007c 
- 00030261  0x0000833a jam  0x00000005 , 0x0000007e 
- 00030262  0x0000833b rtn 
- 00030263  0x0000833d jam  0x00000004 , 0x0000007c 
- 00030264  0x0000833e jam  0x00000000 , 0x000009af 
- 00030265  0x0000833f rtn 
- 00030266  0x00008342 fetch  0x00000001 , 0x000009b3 
- 00030267  0x00008343 beq  0x00000001 , 0x0000763e 
- 00030268  0x00008344 jam  0x0000000a , 0x000009af 
- 00030269  0x00008345 branch  0x000076d8 
- 00030270  0x00008347 arg  0x00000727 , 0x00000005 
- 00030271  0x00008348 fetch  0x00000006 , 0x00000040 
- 00030272  0x00008349 istore  0x00000006 , 0x00000005 
- 00030273  0x0000834a fetch  0x00000006 , 0x000040a0 
- 00030274  0x0000834b istore  0x00000006 , 0x00000005 
- 00030275  0x0000834c fetch  0x00000003 , 0x0000465b 
- 00030276  0x0000834d istore  0x00000003 , 0x00000005 
- 00030277  0x0000834f call  0x00007a24 
- 00030278  0x00008350 fetch  0x00000001 , 0x000009af 
- 00030279  0x00008351 beq  0x0000000a , 0x0000764b 
- 00030280  0x00008352 jam  0x0000000b , 0x000009ae 
- 00030281  0x00008353 jam  0x00000001 , 0x000009b0 
- 00030282  0x00008354 rtn 
- 00030283  0x00008356 jam  0x0000000b , 0x000009af 
- 00030284  0x00008357 jam  0x00000001 , 0x000009b1 
- 00030285  0x00008358 rtn 
- 00030286  0x0000835b arg  0x00000a7e , 0x00000005 
- 00030287  0x0000835c fetch  0x00000006 , 0x00000040 
- 00030288  0x0000835d istore  0x00000006 , 0x00000005 
- 00030289  0x0000835e fetch  0x00000006 , 0x000040a0 
- 00030290  0x0000835f istore  0x00000006 , 0x00000005 
- 00030291  0x00008360 setarg  0x00000a2e 
- 00030292  0x00008361 istore  0x00000002 , 0x00000005 
- 00030293  0x00008362 setarg  0x00000a3e 
- 00030294  0x00008363 istore  0x00000002 , 0x00000005 
- 00030295  0x00008364 branch  0x00007662 
- 00030296  0x00008366 jam  0x0000000f , 0x000009ae 
- 00030297  0x00008367 arg  0x00000a7e , 0x00000005 
- 00030298  0x00008368 fetch  0x00000006 , 0x000040a0 
- 00030299  0x00008369 istore  0x00000006 , 0x00000005 
- 00030300  0x0000836a fetch  0x00000006 , 0x00000040 
- 00030301  0x0000836b istore  0x00000006 , 0x00000005 
- 00030302  0x0000836c setarg  0x00000a3e 
- 00030303  0x0000836d istore  0x00000002 , 0x00000005 
- 00030304  0x0000836e setarg  0x00000a2e 
- 00030305  0x0000836f istore  0x00000002 , 0x00000005 
- 00030306  0x00008372 arg  0x00000727 , 0x00000005 
- 00030307  0x00008373 fetch  0x00000006 , 0x00000a7e 
- 00030308  0x00008374 istore  0x00000006 , 0x00000005 
- 00030309  0x00008375 fetch  0x00000006 , 0x00000a84 
- 00030310  0x00008376 istore  0x00000006 , 0x00000005 
- 00030311  0x00008378 call  0x000079d7 
- 00030312  0x0000837b jam  0x00000001 , 0x000041bd 
- 00030313  0x0000837c arg  0x000041be , 0x00000005 
- 00030314  0x0000837d arg  0x00000a4e , 0x00000006 
- 00030315  0x0000837e call  0x00007ebf 
- 00030316  0x0000837f branch  0x000021c4 
- 00030317  0x00008383 bpatchx  0x000000e7 , 0x0000403c 
- 00030318  0x00008384 fetch  0x00000001 , 0x000045b1 
- 00030319  0x00008385 rtnne  0x00000000 
- 00030320  0x00008386 fetch  0x00000001 , 0x000009b2 
- 00030321  0x00008387 rtnne  0x00000000 
- 00030322  0x00008388 arg  0x00004612 , 0x00000005 
- 00030323  0x00008389 force  0x0000000b , 0x00000007 
- 00030324  0x0000838a call  0x000076a2 
- 00030325  0x0000838b random  0x0000003f 
- 00030326  0x0000838c rshift  0x0000003f , 0x0000003f 
- 00030327  0x0000838d istore  0x00000002 , 0x00000005 
- 00030328  0x0000838f arg  0x000006be , 0x00000005 
- 00030329  0x00008390 arg  0x00004612 , 0x00000006 
- 00030330  0x00008391 call  0x00007ebe 
- 00030331  0x00008393 arg  0x000005e6 , 0x00000005 
- 00030332  0x00008394 arg  0x000008ce , 0x00000006 
- 00030333  0x00008395 call  0x00007ebc 
- 00030334  0x00008397 arg  0x00000616 , 0x00000005 
- 00030335  0x00008398 call  0x00007ec5 
- 00030336  0x00008399 jam  0x00000001 , 0x00000616 
- 00030337  0x0000839b call  0x00007a5d 
- 00030338  0x0000839c jam  0x00000001 , 0x000009b2 
- 00030339  0x0000839d rtn 
- 00030340  0x000083a0 arg  0x0000462a , 0x00000005 
- 00030341  0x000083a1 arg  0x0000062e , 0x00000006 
- 00030342  0x000083a2 call  0x00007ebc 
- 00030343  0x000083a3 jam  0x00000001 , 0x000045b1 
- 00030344  0x000083a4 jam  0x00000000 , 0x000009b2 
- 00030345  0x000083a5 rtn 
- 00030346  0x000083a8 bpatchx  0x000000e8 , 0x0000403d 
- 00030347  0x000083a9 fetch  0x00000001 , 0x000009b9 
- 00030348  0x000083aa rtnne  0x00000000 
- 00030349  0x000083ab fetch  0x00000001 , 0x000009b2 
- 00030350  0x000083ac rtnne  0x00000000 
- 00030351  0x000083ae arg  0x000006be , 0x00000005 
- 00030352  0x000083af arg  0x00004612 , 0x00000006 
- 00030353  0x000083b0 call  0x00007ebe 
- 00030354  0x000083b2 arg  0x000005e6 , 0x00000005 
- 00030355  0x000083b3 arg  0x000009c6 , 0x00000006 
- 00030356  0x000083b4 call  0x00007ebc 
- 00030357  0x000083b6 arg  0x00000616 , 0x00000005 
- 00030358  0x000083b7 call  0x00007ec5 
- 00030359  0x000083b8 jam  0x00000001 , 0x00000616 
- 00030360  0x000083ba call  0x00007a5d 
- 00030361  0x000083bb jam  0x00000002 , 0x000009b2 
- 00030362  0x000083bc rtn 
- 00030363  0x000083bf jam  0x00000001 , 0x000009b3 
- 00030364  0x000083c0 arg  0x00000a06 , 0x00000005 
- 00030365  0x000083c1 arg  0x0000062e , 0x00000006 
- 00030366  0x000083c2 call  0x00007ebe 
- 00030367  0x000083c3 jam  0x00000001 , 0x000009b9 
- 00030368  0x000083c4 jam  0x00000000 , 0x000009b2 
- 00030369  0x000083c5 rtn 
- 00030370  0x000083c8 increase  0xffffffff , 0x00000007 
- 00030371  0x000083c9 nrtn  0x00000002 
- 00030372  0x000083ca random  0x0000003f 
- 00030373  0x000083cb istore  0x00000002 , 0x00000005 
- 00030374  0x000083cc branch  0x000076a2 
- 00030375  0x000083ce increase  0xffffffff , 0x00000007 
- 00030376  0x000083cf nbranch  0x000076b3 , 0x00000002 
- 00030377  0x000083d0 ifetch  0x00000004 , 0x00000011 
- 00030378  0x000083d1 copy  0x0000003f , 0x00000002 
- 00030379  0x000083d2 ifetch  0x00000004 , 0x00000012 
- 00030380  0x000083d3 iflip  0x00000002 , 0x0000003f 
- 00030381  0x000083d4 nbranch  0x000076b1 , 0x00000005 
- 00030382  0x000083d5 increase  0x00000004 , 0x00000011 
- 00030383  0x000083d6 increase  0x00000004 , 0x00000012 
- 00030384  0x000083d7 branch  0x000076a7 
- 00030385  0x000083d9 disable  0x00000001 
- 00030386  0x000083da rtn 
- 00030387  0x000083dc enable  0x00000001 
- 00030388  0x000083dd rtn 
- 00030389  0x000083e5 bpatchx  0x000000e9 , 0x0000403d 
- 00030390  0x000083e6 fetch  0x00000001 , 0x000009b0 
- 00030391  0x000083e7 rtn  0x00000034 
- 00030392  0x000083e8 call  0x000062bc 
- 00030393  0x000083e9 nrtn  0x00000034 
- 00030394  0x000083ea jam  0x00000000 , 0x000009b0 
- 00030395  0x000083eb fetch  0x00000001 , 0x000009ae 
- 00030396  0x000083ec beq  0x00000003 , 0x000061fd 
- 00030397  0x000083ed beq  0x00000005 , 0x0000621a 
- 00030398  0x000083ee beq  0x00000007 , 0x00006225 
- 00030399  0x000083ef beq  0x0000000b , 0x0000623a 
- 00030400  0x000083f0 beq  0x00000002 , 0x00007588 
- 00030401  0x000083f1 beq  0x00000004 , 0x000075f7 
- 00030402  0x000083f2 beq  0x00000009 , 0x00007617 
- 00030403  0x000083f3 beq  0x0000000a , 0x0000763a 
- 00030404  0x000083f4 beq  0x0000000c , 0x00007658 
- 00030405  0x000083f6 rtn 
- 00030406  0x000083f9 bpatchx  0x000000ea , 0x0000403d 
- 00030407  0x000083fa fetch  0x00000001 , 0x000009b1 
- 00030408  0x000083fb rtn  0x00000034 
- 00030409  0x000083fc call  0x000062bc 
- 00030410  0x000083fd nrtn  0x00000034 
- 00030411  0x000083fe jam  0x00000000 , 0x000009b1 
- 00030412  0x000083ff fetch  0x00000001 , 0x000009af 
- 00030413  0x00008400 beq  0x00000012 , 0x000061e0 
- 00030414  0x00008401 beq  0x00000013 , 0x000061e5 
- 00030415  0x00008402 beq  0x00000003 , 0x000061e9 
- 00030416  0x00008403 beq  0x00000004 , 0x00007602 
- 00030417  0x00008404 beq  0x00000014 , 0x000061ed 
- 00030418  0x00008405 beq  0x00000007 , 0x000061fb 
- 00030419  0x00008406 beq  0x0000000a , 0x0000763a 
- 00030420  0x00008407 beq  0x0000000b , 0x00006239 
- 00030421  0x00008408 beq  0x00000009 , 0x00007617 
- 00030422  0x00008409 beq  0x00000015 , 0x00006233 
- 00030423  0x0000840a rtn 
- 00030424  0x0000840d jam  0x00000001 , 0x000009b1 
- 00030425  0x0000840e rtn 
- 00030426  0x00008411 jam  0x00000000 , 0x000009b1 
- 00030427  0x00008412 rtn 
- 00030428  0x00008414 bpatchx  0x000000eb , 0x0000403d 
- 00030429  0x00008415 fetch  0x00000001 , 0x0000465a 
- 00030430  0x00008416 rtn  0x00000034 
- 00030431  0x00008417 fetch  0x00000001 , 0x000009b2 
- 00030432  0x00008418 rtn  0x00000034 
- 00030433  0x00008419 increase  0x00000080 , 0x0000003f 
- 00030434  0x0000841a store  0x00000001 , 0x000009b2 
- 00030435  0x0000841b rtnbit1  0x00000007 
- 00030436  0x0000841c fetch  0x00000001 , 0x000005e3 
- 00030437  0x0000841d branch  0x000076e7 , 0x00000034 
- 00030438  0x0000841e branch  0x00007a68 
- 00030439  0x00008421 call  0x000078d3 
- 00030440  0x00008422 fetch  0x00000001 , 0x000009b2 
- 00030441  0x00008423 beq  0x00000001 , 0x00007684 
- 00030442  0x00008424 beq  0x00000002 , 0x0000769b 
- 00030443  0x00008425 rtn 
- 00030444  0x00008429 and  0x0000003f , 0x00000007 , 0x00000007 
- 00030445  0x0000842a rshift3  0x0000003f , 0x0000003f 
- 00030446  0x0000842b iadd  0x00000006 , 0x00000006 
- 00030447  0x0000842c ifetch  0x00000001 , 0x00000006 
- 00030448  0x0000842d qisolate0  0x0000003f 
- 00030449  0x0000842e rtn 
- 00030450  0x00008432 call  0x00007ebe 
- 00030451  0x00008433 call  0x00007ebe 
- 00030452  0x00008434 branch  0x00007ebe 
- 00030453  0x00008438 ifetch  0x00000008 , 0x00000006 
- 00030454  0x00008439 nrtn  0x00000034 
- 00030455  0x0000843a ifetch  0x00000008 , 0x00000006 
- 00030456  0x0000843b nrtn  0x00000034 
- 00030457  0x0000843c ifetch  0x00000008 , 0x00000006 
- 00030458  0x0000843d rtn 
- 00030459  0x00008443 ifetch  0x00000004 , 0x00000011 
- 00030460  0x00008444 iforce  0x00000002 
- 00030461  0x00008445 ifetch  0x00000004 , 0x00000012 
- 00030462  0x00008446 isub  0x00000002 , 0x0000003e 
- 00030463  0x00008447 nrtn  0x00000005 
- 00030464  0x00008448 increase  0x00000004 , 0x00000011 
- 00030465  0x00008449 increase  0x00000004 , 0x00000012 
- 00030466  0x0000844a loop  0x000076fb 
- 00030467  0x0000844b rtn 
- 00030468  0x0000844f force  0x00000006 , 0x00000039 
- 00030469  0x00008450 increase  0x00000014 , 0x00000011 
- 00030470  0x00008451 increase  0x00000014 , 0x00000012 
- 00030471  0x00008453 ifetch  0x00000004 , 0x00000012 
- 00030472  0x00008454 iforce  0x00000002 
- 00030473  0x00008455 ifetch  0x00000004 , 0x00000011 
- 00030474  0x00008456 isub  0x00000002 , 0x0000003f 
- 00030475  0x00008457 nrtn  0x00000002 
- 00030476  0x00008458 nrtn  0x00000034 
- 00030477  0x00008459 increase  0xfffffffc , 0x00000011 
- 00030478  0x0000845a increase  0xfffffffc , 0x00000012 
- 00030479  0x0000845b loop  0x00007707 
- 00030480  0x0000845c rtn 
- 00030481  0x0000845f force  0x00000006 , 0x00000039 
- 00030482  0x00008460 force  0x00000000 , 0x00000013 
- 00030483  0x00008462 ifetch  0x00000004 , 0x00000011 
- 00030484  0x00008463 iforce  0x00000002 
- 00030485  0x00008464 ifetch  0x00000004 , 0x00000012 
- 00030486  0x00008465 iadd  0x00000002 , 0x0000003f 
- 00030487  0x00008466 iadd  0x00000013 , 0x0000003f 
- 00030488  0x00008467 istore  0x00000004 , 0x00000005 
- 00030489  0x00008468 isolate1  0x00000020 , 0x0000003f 
- 00030490  0x00008469 setflag  0x00000001 , 0x00000000 , 0x00000013 
- 00030491  0x0000846a increase  0x00000004 , 0x00000011 
- 00030492  0x0000846b increase  0x00000004 , 0x00000012 
- 00030493  0x0000846c loop  0x00007713 
- 00030494  0x0000846d rtn 
- 00030495  0x00008470 force  0x00000006 , 0x00000039 
- 00030496  0x00008471 force  0x00000000 , 0x00000013 
- 00030497  0x00008473 ifetch  0x00000004 , 0x00000012 
- 00030498  0x00008474 iforce  0x00000002 
- 00030499  0x00008475 ifetch  0x00000004 , 0x00000011 
- 00030500  0x00008476 isub  0x00000002 , 0x0000003f 
- 00030501  0x00008477 isub  0x00000013 , 0x0000003f 
- 00030502  0x00008478 istore  0x00000004 , 0x00000005 
- 00030503  0x00008479 isolate1  0x00000020 , 0x0000003f 
- 00030504  0x0000847a setflag  0x00000001 , 0x00000000 , 0x00000013 
- 00030505  0x0000847b increase  0x00000004 , 0x00000011 
- 00030506  0x0000847c increase  0x00000004 , 0x00000012 
- 00030507  0x0000847d loop  0x00007721 
- 00030508  0x0000847e rtn 
- 00030509  0x00008481 force  0x00000006 , 0x00000039 
- 00030510  0x00008482 increase  0x00000014 , 0x00000011 
- 00030511  0x00008484 force  0x00000000 , 0x00000013 
- 00030512  0x00008486 ifetch  0x00000004 , 0x00000011 
- 00030513  0x00008487 isolate1  0x00000000 , 0x0000003f 
- 00030514  0x00008488 setflag  0x00000001 , 0x00000001 , 0x00000013 
- 00030515  0x00008489 rshift  0x0000003f , 0x0000003f 
- 00030516  0x0000848a isolate1  0x00000000 , 0x00000013 
- 00030517  0x0000848b setflag  0x00000001 , 0x0000001f , 0x0000003f 
- 00030518  0x0000848c istore  0x00000004 , 0x00000011 
- 00030519  0x0000848d increase  0xfffffffc , 0x00000011 
- 00030520  0x0000848e rshift  0x00000013 , 0x00000013 
- 00030521  0x0000848f loop  0x00007730 
- 00030522  0x00008490 rtn 
- 00030523  0x00008493 force  0x00000006 , 0x00000039 
- 00030524  0x00008494 force  0x00000000 , 0x00000013 
- 00030525  0x00008496 ifetch  0x00000004 , 0x00000011 
- 00030526  0x00008497 isolate1  0x0000001f , 0x0000003f 
- 00030527  0x00008498 setflag  0x00000001 , 0x00000001 , 0x00000013 
- 00030528  0x00008499 lshift  0x0000003f , 0x0000003f 
- 00030529  0x0000849a isolate1  0x00000000 , 0x00000013 
- 00030530  0x0000849b setflag  0x00000001 , 0x00000000 , 0x0000003f 
- 00030531  0x0000849c istore  0x00000004 , 0x00000011 
- 00030532  0x0000849d increase  0x00000004 , 0x00000011 
- 00030533  0x0000849e rshift  0x00000013 , 0x00000013 
- 00030534  0x0000849f loop  0x0000773d 
- 00030535  0x000084a0 rtn 
- 00030536  0x000084a3 call  0x0000773b 
- 00030537  0x000084a5 isolate1  0x00000000 , 0x00000013 
- 00030538  0x000084a6 branch  0x00007751 , 0x00000001 
- 00030539  0x000084a7 arg  0x00000886 , 0x00000012 
- 00030540  0x000084a8 copy  0x00000011 , 0x00000013 
- 00030541  0x000084a9 increase  0xffffffe8 , 0x00000011 
- 00030542  0x000084aa call  0x00007704 
- 00030543  0x000084ab nrtn  0x00000002 
- 00030544  0x000084ac copy  0x00000013 , 0x00000011 
- 00030545  0x000084ae increase  0xffffffe8 , 0x00000011 
- 00030546  0x000084af arg  0x00000886 , 0x00000012 
- 00030547  0x000084b0 copy  0x00000011 , 0x00000005 
- 00030548  0x000084b1 branch  0x0000771f 
- 00030549  0x000084b5 call  0x00007711 
- 00030550  0x000084b6 copy  0x00000005 , 0x00000011 
- 00030551  0x000084b7 branch  0x00007749 
- 00030552  0x000084ba call  0x0000771f 
- 00030553  0x000084bb isolate0  0x00000000 , 0x00000013 
- 00030554  0x000084bc rtn  0x00000001 
- 00030555  0x000084bd arg  0x00000886 , 0x00000012 
- 00030556  0x000084be add  0x00000005 , 0xffffffe8 , 0x00000011 
- 00030557  0x000084bf copy  0x00000011 , 0x00000005 
- 00030558  0x000084c0 branch  0x00007711 
- 00030559  0x000084c4 copy  0x00000005 , 0x0000000b 
- 00030560  0x000084c5 copy  0x00000011 , 0x00000030 
- 00030561  0x000084c6 arg  0x00000716 , 0x00000012 
- 00030562  0x000084c7 copy  0x00000012 , 0x00000005 
- 00030563  0x000084c8 add  0x00000011 , 0x00000018 , 0x00000006 
- 00030564  0x000084c9 ifetch  0x00000008 , 0x00000006 
- 00030565  0x000084ca istore  0x00000008 , 0x00000005 
- 00030566  0x000084cb istore  0x00000008 , 0x00000005 
- 00030567  0x000084cc force  0x00000000 , 0x0000003f 
- 00030568  0x000084cd istore  0x00000008 , 0x00000005 
- 00030569  0x000084ce copy  0x0000000b , 0x00000005 
- 00030570  0x000084cf call  0x00007755 
- 00030571  0x000084d0 arg  0x00000716 , 0x00000012 
- 00030572  0x000084d1 copy  0x00000012 , 0x00000005 
- 00030573  0x000084d2 force  0x00000000 , 0x0000003f 
- 00030574  0x000084d3 istore  0x00000008 , 0x00000005 
- 00030575  0x000084d4 add  0x00000030 , 0x00000020 , 0x00000006 
- 00030576  0x000084d5 ifetch  0x00000008 , 0x00000006 
- 00030577  0x000084d6 istore  0x00000008 , 0x00000005 
- 00030578  0x000084d7 istore  0x00000008 , 0x00000005 
- 00030579  0x000084d8 copy  0x0000000b , 0x00000011 
- 00030580  0x000084d9 copy  0x00000011 , 0x00000005 
- 00030581  0x000084da call  0x00007755 
- 00030582  0x000084db arg  0x00000716 , 0x00000012 
- 00030583  0x000084dc copy  0x00000012 , 0x00000005 
- 00030584  0x000084dd add  0x00000030 , 0x00000028 , 0x00000006 
- 00030585  0x000084de ifetch  0x00000008 , 0x00000006 
- 00030586  0x000084df istore  0x00000008 , 0x00000005 
- 00030587  0x000084e0 istore  0x00000008 , 0x00000005 
- 00030588  0x000084e1 istore  0x00000008 , 0x00000005 
- 00030589  0x000084e2 copy  0x0000000b , 0x00000011 
- 00030590  0x000084e3 copy  0x00000011 , 0x00000005 
- 00030591  0x000084e4 branch  0x00007755 
- 00030592  0x000084e8 force  0x00000006 , 0x00000039 
- 00030593  0x000084ea ifetch  0x00000004 , 0x00000006 
- 00030594  0x000084eb iforce  0x0000002f 
- 00030595  0x000084ec increase  0x00000001 , 0x00000038 
- 00030596  0x000084ed loop  0x00007781 
- 00030597  0x000084ee rtn 
- 00030598  0x000084f3 copy  0x00000005 , 0x0000000b 
- 00030599  0x000084f4 arg  0x000006e6 , 0x00000005 
- 00030600  0x000084f5 call  0x00007ec5 
- 00030601  0x000084f6 arg  0x000006e6 , 0x00000005 
- 00030602  0x000084f7 copy  0x00000011 , 0x00000006 
- 00030603  0x000084f8 force  0x00000000 , 0x00000038 
- 00030604  0x000084f9 call  0x00007780 
- 00030605  0x000084fa copy  0x00000012 , 0x00000006 
- 00030606  0x000084fb call  0x00007780 
- 00030607  0x000084fc force  0x00000000 , 0x00000012 
- 00030608  0x000084fe force  0x00000000 , 0x00000002 
- 00030609  0x000084ff force  0x00000006 , 0x00000013 
- 00030610  0x00008501 ifetch  0x00000004 , 0x00000005 
- 00030611  0x00008502 iforce  0x00000011 
- 00030612  0x00008503 copy  0x00000012 , 0x00000038 
- 00030613  0x00008504 deposit  0x0000002f 
- 00030614  0x00008505 copy  0x00000013 , 0x00000038 
- 00030615  0x00008506 imul32  0x0000002f , 0x0000003f 
- 00030616  0x00008507 iadd  0x00000011 , 0x0000003f 
- 00030617  0x00008508 iadd  0x00000002 , 0x0000003f 
- 00030618  0x00008509 istore  0x00000004 , 0x00000005 
- 00030619  0x0000850a rshift32  0x0000003f , 0x00000002 
- 00030620  0x0000850b increase  0x00000001 , 0x00000013 
- 00030621  0x0000850c compare  0x0000000c , 0x00000013 , 0x000000ff 
- 00030622  0x0000850d nbranch  0x00007792 , 0x00000001 
- 00030623  0x0000850e deposit  0x00000002 
- 00030624  0x0000850f istore  0x00000004 , 0x00000005 
- 00030625  0x00008510 increase  0xffffffe8 , 0x00000005 
- 00030626  0x00008511 increase  0x00000001 , 0x00000012 
- 00030627  0x00008512 compare  0x00000006 , 0x00000012 , 0x000000ff 
- 00030628  0x00008513 nbranch  0x00007790 , 0x00000001 
- 00030629  0x00008514 arg  0x000006e6 , 0x00000011 
- 00030630  0x00008515 copy  0x0000000b , 0x00000005 
- 00030631  0x00008516 branch  0x0000775f 
- 00030632  0x0000851a copy  0x00000011 , 0x00000012 
- 00030633  0x0000851b branch  0x00007786 
- 00030634  0x0000851e copy  0x00000011 , 0x00000030 
- 00030635  0x00008520 copy  0x00000030 , 0x00000011 
- 00030636  0x00008521 ifetch  0x00000001 , 0x00000011 
- 00030637  0x00008522 isolate1  0x00000000 , 0x0000003f 
- 00030638  0x00008523 rtn  0x00000001 
- 00030639  0x00008524 call  0x0000772d 
- 00030640  0x00008525 ifetch  0x00000001 , 0x00000012 
- 00030641  0x00008526 isolate0  0x00000000 , 0x0000003f 
- 00030642  0x00008527 branch  0x000077ba , 0x00000001 
- 00030643  0x00008528 arg  0x00000886 , 0x00000011 
- 00030644  0x00008529 copy  0x00000012 , 0x00000005 
- 00030645  0x0000852a call  0x00007711 
- 00030646  0x0000852b ifetch  0x00000001 , 0x00000012 
- 00030647  0x0000852c iadd  0x00000013 , 0x0000003f 
- 00030648  0x0000852d istore  0x00000001 , 0x00000012 
- 00030649  0x0000852e increase  0xffffffe8 , 0x00000012 
- 00030650  0x00008530 add  0x00000012 , 0x00000018 , 0x00000011 
- 00030651  0x00008531 force  0x00000007 , 0x00000039 
- 00030652  0x00008532 call  0x0000772f 
- 00030653  0x00008533 branch  0x000077ab 
- 00030654  0x00008537 copy  0x00000005 , 0x0000000b 
- 00030655  0x00008538 arg  0x00000746 , 0x00000005 
- 00030656  0x00008539 call  0x00007ec5 
- 00030657  0x0000853a force  0x00000000 , 0x0000003f 
- 00030658  0x0000853b store  0x00000004 , 0x000006fe 
- 00030659  0x0000853c store  0x00000004 , 0x0000075e 
- 00030660  0x0000853d jam  0x00000001 , 0x00000746 
- 00030661  0x0000853e arg  0x000006e6 , 0x00000005 
- 00030662  0x0000853f call  0x00007ec5 
- 00030663  0x00008540 arg  0x00000886 , 0x00000006 
- 00030664  0x00008541 arg  0x00000716 , 0x00000005 
- 00030665  0x00008542 call  0x00007ebe 
- 00030666  0x00008543 copy  0x00000011 , 0x00000006 
- 00030667  0x00008544 arg  0x0000072e , 0x00000005 
- 00030668  0x00008545 call  0x00007ebe 
- 00030669  0x00008547 arg  0x0000072e , 0x00000006 
- 00030670  0x00008548 call  0x000076f5 
- 00030671  0x00008549 branch  0x000077f6 , 0x00000034 
- 00030672  0x0000854a arg  0x0000072e , 0x00000011 
- 00030673  0x0000854b arg  0x00000746 , 0x00000012 
- 00030674  0x0000854c call  0x000077aa 
- 00030675  0x0000854e arg  0x00000716 , 0x00000011 
- 00030676  0x0000854f arg  0x000006e6 , 0x00000012 
- 00030677  0x00008550 call  0x000077aa 
- 00030678  0x00008551 arg  0x0000072e , 0x00000011 
- 00030679  0x00008552 arg  0x00000716 , 0x00000012 
- 00030680  0x00008553 call  0x00007704 
- 00030681  0x00008554 branch  0x000077e8 , 0x00000002 
- 00030682  0x00008555 arg  0x00000716 , 0x00000011 
- 00030683  0x00008556 arg  0x0000072e , 0x00000012 
- 00030684  0x00008557 copy  0x00000011 , 0x00000005 
- 00030685  0x00008558 call  0x0000771f 
- 00030686  0x00008559 arg  0x00000746 , 0x00000011 
- 00030687  0x0000855a arg  0x000006e6 , 0x00000012 
- 00030688  0x0000855b copy  0x00000012 , 0x00000005 
- 00030689  0x0000855c call  0x00007711 
- 00030690  0x0000855d ifetch  0x00000001 , 0x00000011 
- 00030691  0x0000855e iadd  0x00000013 , 0x00000013 
- 00030692  0x0000855f ifetch  0x00000001 , 0x00000012 
- 00030693  0x00008560 iadd  0x00000013 , 0x0000003f 
- 00030694  0x00008561 istore  0x00000001 , 0x00000012 
- 00030695  0x00008562 branch  0x000077cd 
- 00030696  0x00008564 arg  0x0000072e , 0x00000011 
- 00030697  0x00008565 arg  0x00000716 , 0x00000012 
- 00030698  0x00008566 copy  0x00000011 , 0x00000005 
- 00030699  0x00008567 call  0x0000771f 
- 00030700  0x00008568 arg  0x000006e6 , 0x00000011 
- 00030701  0x00008569 arg  0x00000746 , 0x00000012 
- 00030702  0x0000856a copy  0x00000012 , 0x00000005 
- 00030703  0x0000856b call  0x00007711 
- 00030704  0x0000856c ifetch  0x00000001 , 0x00000011 
- 00030705  0x0000856d iadd  0x00000013 , 0x00000013 
- 00030706  0x0000856e ifetch  0x00000001 , 0x00000012 
- 00030707  0x0000856f iadd  0x00000013 , 0x0000003f 
- 00030708  0x00008570 istore  0x00000001 , 0x00000012 
- 00030709  0x00008571 branch  0x000077cd 
- 00030710  0x00008573 arg  0x00000746 , 0x00000005 
- 00030711  0x00008574 call  0x00007ec5 
- 00030712  0x00008575 fetch  0x00000001 , 0x000006fe 
- 00030713  0x00008576 store  0x00000001 , 0x00000746 
- 00030714  0x00008577 store  0x00000001 , 0x0000074e 
- 00030715  0x00008578 arg  0x00000746 , 0x00000011 
- 00030716  0x00008579 arg  0x000006e6 , 0x00000012 
- 00030717  0x0000857a copy  0x00000012 , 0x00000005 
- 00030718  0x0000857b call  0x00007755 
- 00030719  0x0000857c arg  0x00000886 , 0x00000011 
- 00030720  0x0000857d arg  0x000006e6 , 0x00000012 
- 00030721  0x0000857e copy  0x0000000b , 0x00000005 
- 00030722  0x0000857f branch  0x00007758 
- 00030723  0x00008585 arg  0x000006a6 , 0x00000011 
- 00030724  0x00008586 arg  0x0000075e , 0x00000005 
- 00030725  0x00008587 call  0x000077a8 
- 00030726  0x00008588 arg  0x0000075e , 0x00000011 
- 00030727  0x00008589 arg  0x00000776 , 0x00000005 
- 00030728  0x0000858a call  0x000077a8 
- 00030729  0x0000858b arg  0x0000089e , 0x00000011 
- 00030730  0x0000858c arg  0x00000776 , 0x00000012 
- 00030731  0x0000858d arg  0x00000776 , 0x00000005 
- 00030732  0x0000858e call  0x00007786 
- 00030733  0x0000858f arg  0x00000676 , 0x00000011 
- 00030734  0x00008590 arg  0x0000075e , 0x00000005 
- 00030735  0x00008591 call  0x000077a8 
- 00030736  0x00008592 arg  0x0000075e , 0x00000006 
- 00030737  0x00008593 arg  0x0000072e , 0x00000005 
- 00030738  0x00008594 call  0x00007ebe 
- 00030739  0x00008595 arg  0x0000072e , 0x00000011 
- 00030740  0x00008596 call  0x00007748 
- 00030741  0x00008597 arg  0x0000075e , 0x00000011 
- 00030742  0x00008598 arg  0x0000072e , 0x00000012 
- 00030743  0x00008599 arg  0x0000075e , 0x00000005 
- 00030744  0x0000859a call  0x00007755 
- 00030745  0x0000859b arg  0x0000075e , 0x00000011 
- 00030746  0x0000859c arg  0x00000776 , 0x00000012 
- 00030747  0x0000859d arg  0x0000075e , 0x00000005 
- 00030748  0x0000859e call  0x00007755 
- 00030749  0x0000859f arg  0x00000676 , 0x00000006 
- 00030750  0x000085a0 arg  0x0000072e , 0x00000005 
- 00030751  0x000085a1 call  0x00007ebe 
- 00030752  0x000085a2 arg  0x0000068e , 0x00000011 
- 00030753  0x000085a3 arg  0x00000776 , 0x00000005 
- 00030754  0x000085a4 call  0x000077a8 
- 00030755  0x000085a5 arg  0x0000072e , 0x00000011 
- 00030756  0x000085a6 call  0x00007748 
- 00030757  0x000085a7 arg  0x0000072e , 0x00000011 
- 00030758  0x000085a8 call  0x00007748 
- 00030759  0x000085a9 arg  0x0000072e , 0x00000011 
- 00030760  0x000085aa arg  0x00000776 , 0x00000012 
- 00030761  0x000085ab arg  0x0000072e , 0x00000005 
- 00030762  0x000085ac call  0x00007786 
- 00030763  0x000085ad arg  0x00000776 , 0x00000011 
- 00030764  0x000085ae arg  0x00000746 , 0x00000005 
- 00030765  0x000085af call  0x000077a8 
- 00030766  0x000085b0 arg  0x00000746 , 0x00000011 
- 00030767  0x000085b1 call  0x00007748 
- 00030768  0x000085b2 arg  0x00000746 , 0x00000011 
- 00030769  0x000085b3 call  0x00007748 
- 00030770  0x000085b4 arg  0x00000746 , 0x00000011 
- 00030771  0x000085b5 call  0x00007748 
- 00030772  0x000085b6 arg  0x0000068e , 0x00000006 
- 00030773  0x000085b7 arg  0x00000776 , 0x00000005 
- 00030774  0x000085b8 call  0x00007ebe 
- 00030775  0x000085b9 arg  0x00000776 , 0x00000011 
- 00030776  0x000085ba call  0x00007748 
- 00030777  0x000085bb arg  0x00000776 , 0x00000011 
- 00030778  0x000085bc arg  0x000006a6 , 0x00000012 
- 00030779  0x000085bd arg  0x000006a6 , 0x00000005 
- 00030780  0x000085be call  0x00007786 
- 00030781  0x000085bf arg  0x0000075e , 0x00000011 
- 00030782  0x000085c0 arg  0x00000776 , 0x00000005 
- 00030783  0x000085c1 call  0x000077a8 
- 00030784  0x000085c2 arg  0x00000776 , 0x00000011 
- 00030785  0x000085c3 arg  0x0000072e , 0x00000012 
- 00030786  0x000085c4 arg  0x00000776 , 0x00000005 
- 00030787  0x000085c5 call  0x00007758 
- 00030788  0x000085c6 arg  0x00000776 , 0x00000011 
- 00030789  0x000085c7 arg  0x0000072e , 0x00000012 
- 00030790  0x000085c8 arg  0x00000676 , 0x00000005 
- 00030791  0x000085c9 call  0x00007758 
- 00030792  0x000085ca arg  0x0000072e , 0x00000011 
- 00030793  0x000085cb arg  0x00000676 , 0x00000012 
- 00030794  0x000085cc arg  0x00000776 , 0x00000005 
- 00030795  0x000085cd call  0x00007758 
- 00030796  0x000085ce arg  0x00000776 , 0x00000011 
- 00030797  0x000085cf arg  0x0000075e , 0x00000012 
- 00030798  0x000085d0 arg  0x00000776 , 0x00000005 
- 00030799  0x000085d1 call  0x00007786 
- 00030800  0x000085d2 arg  0x00000776 , 0x00000011 
- 00030801  0x000085d3 arg  0x00000746 , 0x00000012 
- 00030802  0x000085d4 arg  0x0000068e , 0x00000005 
- 00030803  0x000085d5 branch  0x00007758 
- 00030804  0x000085da arg  0x00000616 , 0x00000011 
- 00030805  0x000085db arg  0x0000078e , 0x00000005 
- 00030806  0x000085dc call  0x000077a8 
- 00030807  0x000085dd arg  0x00000676 , 0x00000011 
- 00030808  0x000085de arg  0x0000078e , 0x00000012 
- 00030809  0x000085df arg  0x00000746 , 0x00000005 
- 00030810  0x000085e0 call  0x00007786 
- 00030811  0x000085e1 arg  0x00000616 , 0x00000011 
- 00030812  0x000085e2 arg  0x0000078e , 0x00000012 
- 00030813  0x000085e3 arg  0x0000078e , 0x00000005 
- 00030814  0x000085e4 call  0x00007786 
- 00030815  0x000085e5 arg  0x0000068e , 0x00000011 
- 00030816  0x000085e6 arg  0x0000078e , 0x00000012 
- 00030817  0x000085e7 arg  0x0000072e , 0x00000005 
- 00030818  0x000085e8 call  0x00007786 
- 00030819  0x000085e9 arg  0x000006a6 , 0x00000011 
- 00030820  0x000085ea arg  0x0000078e , 0x00000005 
- 00030821  0x000085eb call  0x000077a8 
- 00030822  0x000085ec arg  0x000005e6 , 0x00000011 
- 00030823  0x000085ed arg  0x0000078e , 0x00000012 
- 00030824  0x000085ee arg  0x0000075e , 0x00000005 
- 00030825  0x000085ef call  0x00007786 
- 00030826  0x000085f0 arg  0x000006a6 , 0x00000011 
- 00030827  0x000085f1 arg  0x0000078e , 0x00000012 
- 00030828  0x000085f2 arg  0x0000078e , 0x00000005 
- 00030829  0x000085f3 call  0x00007786 
- 00030830  0x000085f4 arg  0x000005fe , 0x00000011 
- 00030831  0x000085f5 arg  0x0000078e , 0x00000012 
- 00030832  0x000085f6 arg  0x00000776 , 0x00000005 
- 00030833  0x000085f7 call  0x00007786 
- 00030834  0x000085f8 arg  0x00000746 , 0x00000011 
- 00030835  0x000085f9 arg  0x0000075e , 0x00000012 
- 00030836  0x000085fa arg  0x0000078e , 0x00000005 
- 00030837  0x000085fb call  0x00007758 
- 00030838  0x000085fc arg  0x00000746 , 0x00000011 
- 00030839  0x000085fd arg  0x0000075e , 0x00000012 
- 00030840  0x000085fe arg  0x00000746 , 0x00000005 
- 00030841  0x000085ff call  0x00007755 
- 00030842  0x00008600 arg  0x0000072e , 0x00000011 
- 00030843  0x00008601 arg  0x00000776 , 0x00000012 
- 00030844  0x00008602 arg  0x0000075e , 0x00000005 
- 00030845  0x00008603 call  0x00007758 
- 00030846  0x00008604 arg  0x0000072e , 0x00000011 
- 00030847  0x00008605 arg  0x00000776 , 0x00000012 
- 00030848  0x00008606 arg  0x0000072e , 0x00000005 
- 00030849  0x00008607 call  0x00007755 
- 00030850  0x00008608 arg  0x0000072e , 0x00000011 
- 00030851  0x00008609 arg  0x0000078e , 0x00000012 
- 00030852  0x0000860a arg  0x0000072e , 0x00000005 
- 00030853  0x0000860b call  0x00007786 
- 00030854  0x0000860c arg  0x000006a6 , 0x00000011 
- 00030855  0x0000860d arg  0x00000616 , 0x00000012 
- 00030856  0x0000860e arg  0x00000776 , 0x00000005 
- 00030857  0x0000860f call  0x00007786 
- 00030858  0x00008610 arg  0x00000776 , 0x00000011 
- 00030859  0x00008611 arg  0x0000078e , 0x00000012 
- 00030860  0x00008612 arg  0x000006a6 , 0x00000005 
- 00030861  0x00008613 call  0x00007786 
- 00030862  0x00008614 arg  0x0000078e , 0x00000011 
- 00030863  0x00008615 arg  0x0000078e , 0x00000005 
- 00030864  0x00008616 call  0x000077a8 
- 00030865  0x00008617 arg  0x0000078e , 0x00000011 
- 00030866  0x00008618 arg  0x00000746 , 0x00000012 
- 00030867  0x00008619 arg  0x00000776 , 0x00000005 
- 00030868  0x0000861a call  0x00007786 
- 00030869  0x0000861b arg  0x0000078e , 0x00000011 
- 00030870  0x0000861c arg  0x0000072e , 0x00000012 
- 00030871  0x0000861d arg  0x0000072e , 0x00000005 
- 00030872  0x0000861e call  0x00007786 
- 00030873  0x0000861f arg  0x0000075e , 0x00000011 
- 00030874  0x00008620 arg  0x00000676 , 0x00000005 
- 00030875  0x00008621 call  0x000077a8 
- 00030876  0x00008622 arg  0x00000676 , 0x00000011 
- 00030877  0x00008623 arg  0x00000776 , 0x00000012 
- 00030878  0x00008624 arg  0x00000676 , 0x00000005 
- 00030879  0x00008625 call  0x00007758 
- 00030880  0x00008626 arg  0x00000676 , 0x00000006 
- 00030881  0x00008627 arg  0x0000078e , 0x00000005 
- 00030882  0x00008628 call  0x00007ebe 
- 00030883  0x00008629 arg  0x0000078e , 0x00000011 
- 00030884  0x0000862a call  0x00007748 
- 00030885  0x0000862b arg  0x00000776 , 0x00000011 
- 00030886  0x0000862c arg  0x0000078e , 0x00000012 
- 00030887  0x0000862d arg  0x00000776 , 0x00000005 
- 00030888  0x0000862e call  0x00007758 
- 00030889  0x0000862f arg  0x00000776 , 0x00000011 
- 00030890  0x00008630 arg  0x0000075e , 0x00000012 
- 00030891  0x00008631 arg  0x0000075e , 0x00000005 
- 00030892  0x00008632 call  0x00007786 
- 00030893  0x00008633 arg  0x0000075e , 0x00000011 
- 00030894  0x00008634 arg  0x0000072e , 0x00000012 
- 00030895  0x00008635 arg  0x0000068e , 0x00000005 
- 00030896  0x00008636 call  0x00007758 
- 00030897  0x00008637 arg  0x0000068e , 0x00000011 
- 00030898  0x00008638 arg  0x00000886 , 0x00000012 
- 00030899  0x00008639 arg  0x0000068e , 0x00000005 
- 00030900  0x0000863a force  0x00000000 , 0x00000013 
- 00030901  0x0000863b fetch  0x00000001 , 0x0000068e 
- 00030902  0x0000863c isolate1  0x00000000 , 0x0000003f 
- 00030903  0x0000863d call  0x00007711 , 0x00000001 
- 00030904  0x0000863e copy  0x00000013 , 0x00000030 
- 00030905  0x0000863f arg  0x0000068e , 0x00000011 
- 00030906  0x00008640 call  0x0000772d 
- 00030907  0x00008641 fetch  0x00000001 , 0x000006a5 
- 00030908  0x00008642 isolate1  0x00000000 , 0x00000030 
- 00030909  0x00008643 setflag  0x00000001 , 0x00000007 , 0x0000003f 
- 00030910  0x00008644 store  0x00000001 , 0x000006a5 
- 00030911  0x00008645 rtn 
- 00030912  0x0000864a fetch  0x00000001 , 0x000005e3 
- 00030913  0x0000864b increase  0xffffffff , 0x0000003f 
- 00030914  0x0000864c nrtn  0x00000002 
- 00030915  0x0000864d store  0x00000001 , 0x000005e3 
- 00030916  0x0000864e fetch  0x00000001 , 0x000005e2 
- 00030917  0x0000864f call  0x00007803 , 0x00000034 
- 00030918  0x00008650 fetch  0x00000001 , 0x000005e3 
- 00030919  0x00008651 arg  0x000006be , 0x00000006 
- 00030920  0x00008652 call  0x000076ec 
- 00030921  0x00008653 branch  0x000078c0 , 0x00000001 
- 00030922  0x00008654 fetch  0x00000001 , 0x000005e2 
- 00030923  0x00008655 nbranch  0x000078ce , 0x00000034 
- 00030924  0x00008656 call  0x00007854 
- 00030925  0x00008657 branch  0x000078c0 
- 00030926  0x00008659 jam  0x00000000 , 0x000005e2 
- 00030927  0x0000865a arg  0x000005e6 , 0x00000006 
- 00030928  0x0000865b arg  0x00000676 , 0x00000005 
- 00030929  0x0000865c call  0x000076f2 
- 00030930  0x0000865d branch  0x000078c0 
- 00030931  0x00008661 arg  0x000006a6 , 0x00000011 
- 00030932  0x00008662 arg  0x00000776 , 0x00000005 
- 00030933  0x00008663 call  0x000077be 
- 00030934  0x00008664 arg  0x00000776 , 0x00000011 
- 00030935  0x00008665 arg  0x0000072e , 0x00000005 
- 00030936  0x00008666 call  0x000077a8 
- 00030937  0x00008667 arg  0x00000676 , 0x00000011 
- 00030938  0x00008668 arg  0x0000072e , 0x00000012 
- 00030939  0x00008669 arg  0x0000062e , 0x00000005 
- 00030940  0x0000866a call  0x00007786 
- 00030941  0x0000866b arg  0x00000776 , 0x00000011 
- 00030942  0x0000866c arg  0x0000072e , 0x00000012 
- 00030943  0x0000866d arg  0x0000075e , 0x00000005 
- 00030944  0x0000866e call  0x00007786 
- 00030945  0x0000866f arg  0x0000068e , 0x00000011 
- 00030946  0x00008670 arg  0x0000075e , 0x00000012 
- 00030947  0x00008671 arg  0x00000646 , 0x00000005 
- 00030948  0x00008672 branch  0x00007786 
- 00030949  0x00008677 ifetch  0x00000004 , 0x00000006 
- 00030950  0x00008678 force  0x00000004 , 0x00000011 
- 00030951  0x00008679 increase  0x00000003 , 0x00000005 
- 00030952  0x0000867b istore  0x00000001 , 0x00000005 
- 00030953  0x0000867c rshift8  0x0000003f , 0x0000003f 
- 00030954  0x0000867d increase  0xfffffffe , 0x00000005 
- 00030955  0x0000867e increase  0xffffffff , 0x00000011 
- 00030956  0x0000867f nbranch  0x000078e8 , 0x00000005 
- 00030957  0x00008680 increase  0x00000005 , 0x00000005 
- 00030958  0x00008681 loop  0x000078e5 
- 00030959  0x00008682 rtn 
- 00030960  0x00008686 lshift2  0x00000007 , 0x0000003f 
- 00030961  0x00008687 iadd  0x0000000b , 0x00000006 
- 00030962  0x00008688 ifetch  0x00000004 , 0x00000006 
- 00030963  0x00008689 rtn 
- 00030964  0x0000868c force  0x00000010 , 0x00000030 
- 00030965  0x0000868d arg  0x000005e6 , 0x0000000b 
- 00030966  0x0000868f add  0x00000030 , 0xfffffff9 , 0x00000007 
- 00030967  0x00008690 call  0x000078f0 
- 00030968  0x00008691 iforce  0x00000002 
- 00030969  0x00008692 add  0x00000030 , 0xfffffff0 , 0x00000007 
- 00030970  0x00008693 call  0x000078f0 
- 00030971  0x00008694 iadd  0x00000002 , 0x00000002 
- 00030972  0x00008695 add  0x00000030 , 0xfffffffe , 0x00000007 
- 00030973  0x00008696 call  0x000078f0 
- 00030974  0x00008697 shasx  0x0000003f , 0x00000001 , 0x0000003f 
- 00030975  0x00008698 iadd  0x00000002 , 0x00000002 
- 00030976  0x00008699 add  0x00000030 , 0xfffffff1 , 0x00000007 
- 00030977  0x0000869a call  0x000078f0 
- 00030978  0x0000869b shasx  0x0000003f , 0x00000000 , 0x0000003f 
- 00030979  0x0000869c iadd  0x00000002 , 0x00000002 
- 00030980  0x0000869d lshift2  0x00000030 , 0x0000003f 
- 00030981  0x0000869e iadd  0x0000000b , 0x00000005 
- 00030982  0x0000869f istoret  0x00000004 , 0x00000005 
- 00030983  0x000086a0 increase  0x00000001 , 0x00000030 
- 00030984  0x000086a1 compare  0x00000040 , 0x00000030 , 0x000000ff 
- 00030985  0x000086a2 nbranch  0x000078f6 , 0x00000001 
- 00030986  0x000086a3 rtn 
- 00030987  0x000086a7 arg  0x000008fe , 0x00000006 
- 00030988  0x000086a8 force  0x00000007 , 0x00000038 
- 00030989  0x000086aa ifetch  0x00000004 , 0x00000006 
- 00030990  0x000086ab iforce  0x0000002f 
- 00030991  0x000086ac increase  0xffffffff , 0x00000038 
- 00030992  0x000086ad branch  0x0000790d , 0x00000002 
- 00030993  0x000086ae rtn 
- 00030994  0x000086b1 bpatchx  0x000000ec , 0x0000403d 
- 00030995  0x000086b2 call  0x000078f4 
- 00030996  0x000086b3 arg  0x000006e6 , 0x00000005 
- 00030997  0x000086b4 force  0x00000000 , 0x00000038 
- 00030998  0x000086b6 deposit  0x0000002f 
- 00030999  0x000086b7 istore  0x00000004 , 0x00000005 
- 00031000  0x000086b8 increase  0x00000001 , 0x00000038 
- 00031001  0x000086b9 compare  0x00000008 , 0x00000038 , 0x000000ff 
- 00031002  0x000086ba nbranch  0x00007916 , 0x00000001 
- 00031003  0x000086bb call  0x000074b9 
- 00031004  0x000086bc arg  0x00008700 , 0x0000000b 
- 00031005  0x000086bd arg  0x000005e6 , 0x00000030 
- 00031006  0x000086be force  0x00000040 , 0x00000039 
- 00031007  0x000086c0 ifetcht  0x00000004 , 0x00000030 
- 00031008  0x000086c1 ifetch  0x00000004 , 0x0000000b 
- 00031009  0x000086c2 increase  0x00000004 , 0x0000000b 
- 00031010  0x000086c3 increase  0x00000004 , 0x00000030 
- 00031011  0x000086c4 iadd  0x00000002 , 0x0000003f 
- 00031012  0x000086c5 force  0x00000007 , 0x00000038 
- 00031013  0x000086c6 iadd  0x0000002f , 0x00000002 
- 00031014  0x000086c7 force  0x00000004 , 0x00000038 
- 00031015  0x000086c8 shasx  0x0000002f , 0x00000003 , 0x0000003f 
- 00031016  0x000086c9 iadd  0x00000002 , 0x00000002 
- 00031017  0x000086ca force  0x00000005 , 0x00000038 
- 00031018  0x000086cb deposit  0x0000002f 
- 00031019  0x000086cc force  0x00000006 , 0x00000038 
- 00031020  0x000086cd ixor  0x0000002f , 0x0000003f 
- 00031021  0x000086ce force  0x00000004 , 0x00000038 
- 00031022  0x000086cf iand  0x0000002f , 0x0000003f 
- 00031023  0x000086d0 force  0x00000006 , 0x00000038 
- 00031024  0x000086d1 ixor  0x0000002f , 0x0000003f 
- 00031025  0x000086d2 iadd  0x00000002 , 0x00000002 
- 00031026  0x000086d3 force  0x00000007 , 0x00000038 
- 00031027  0x000086d4 copy  0x00000002 , 0x0000002f 
- 00031028  0x000086d5 force  0x00000003 , 0x00000038 
- 00031029  0x000086d6 deposit  0x0000002f 
- 00031030  0x000086d7 iadd  0x00000002 , 0x0000002f 
- 00031031  0x000086d8 force  0x00000000 , 0x00000038 
- 00031032  0x000086d9 deposit  0x0000002f 
- 00031033  0x000086da force  0x00000001 , 0x00000038 
- 00031034  0x000086db iand  0x0000002f , 0x00000002 
- 00031035  0x000086dc ior  0x0000002f , 0x0000003f 
- 00031036  0x000086dd force  0x00000002 , 0x00000038 
- 00031037  0x000086de iand  0x0000002f , 0x0000003f 
- 00031038  0x000086df ior  0x00000002 , 0x00000002 
- 00031039  0x000086e0 force  0x00000000 , 0x00000038 
- 00031040  0x000086e1 shasx  0x0000002f , 0x00000002 , 0x0000003f 
- 00031041  0x000086e2 iadd  0x00000002 , 0x0000003f 
- 00031042  0x000086e3 force  0x00000007 , 0x00000038 
- 00031043  0x000086e4 iadd  0x0000002f , 0x0000002f 
- 00031044  0x000086e5 regexrot 
- 00031045  0x000086e6 loop  0x0000791f 
- 00031046  0x000086e7 arg  0x000006e6 , 0x00000006 
- 00031047  0x000086e8 force  0x00000000 , 0x00000038 
- 00031048  0x000086ea ifetch  0x00000004 , 0x00000006 
- 00031049  0x000086eb iadd  0x0000002f , 0x0000002f 
- 00031050  0x000086ec increase  0x00000001 , 0x00000038 
- 00031051  0x000086ed compare  0x00000008 , 0x00000038 , 0x000000ff 
- 00031052  0x000086ee nbranch  0x00007948 , 0x00000001 
- 00031053  0x000086ef branch  0x000074bd 
- 00031054  0x000086f3 arg  0x00000a3e , 0x00000005 
- 00031055  0x000086f4 force  0x00000007 , 0x00000038 
- 00031056  0x000086f6 deposit  0x0000002f 
- 00031057  0x000086f7 istore  0x00000004 , 0x00000005 
- 00031058  0x000086f8 increase  0xffffffff , 0x00000038 
- 00031059  0x000086f9 branch  0x00007950 , 0x00000002 
- 00031060  0x000086fa rtn 
- 00031061  0x000086fe arg  0x000005e6 , 0x00000005 
- 00031062  0x000086ff increase  0xfffffffc , 0x00000006 
- 00031063  0x00008700 sub  0x00000039 , 0x00000010 , 0x00000011 
- 00031064  0x00008702 ifetch  0x00000004 , 0x00000006 
- 00031065  0x00008703 ixor  0x00000002 , 0x0000003f 
- 00031066  0x00008704 istore  0x00000004 , 0x00000005 
- 00031067  0x00008705 increase  0xfffffff8 , 0x00000006 
- 00031068  0x00008706 loop  0x00007958 
- 00031069  0x00008707 copy  0x00000011 , 0x00000039 
- 00031070  0x00008708 deposit  0x00000002 
- 00031071  0x0000870a istore  0x00000004 , 0x00000005 
- 00031072  0x0000870b loop  0x0000795f 
- 00031073  0x0000870c rtn 
- 00031074  0x0000870f call  0x00007967 
- 00031075  0x00008710 call  0x0000794e 
- 00031076  0x00008711 branch  0x0000798d 
- 00031077  0x00008714 call  0x00007967 
- 00031078  0x00008715 branch  0x0000798d 
- 00031079  0x00008718 arg  0x000009de , 0x00000006 
- 00031080  0x00008719 arg  0x000005e6 , 0x00000005 
- 00031081  0x0000871a force  0x00000006 , 0x00000039 
- 00031082  0x0000871b call  0x00007a71 
- 00031083  0x0000871c arg  0x00004642 , 0x00000006 
- 00031084  0x0000871d force  0x00000006 , 0x00000039 
- 00031085  0x0000871e call  0x00007a71 
- 00031086  0x0000871f arg  0x00000a3e , 0x00000006 
- 00031087  0x00008720 call  0x00007a70 
- 00031088  0x00008721 call  0x0000790b 
- 00031089  0x00008722 call  0x00007912 
- 00031090  0x00008723 arg  0x00000a2e , 0x00000006 
- 00031091  0x00008724 arg  0x000005e6 , 0x00000005 
- 00031092  0x00008725 branch  0x00007984 
- 00031093  0x00008728 arg  0x00004642 , 0x00000006 
- 00031094  0x00008729 arg  0x000005e6 , 0x00000005 
- 00031095  0x0000872a force  0x00000006 , 0x00000039 
- 00031096  0x0000872b call  0x00007a71 
- 00031097  0x0000872c arg  0x000009de , 0x00000006 
- 00031098  0x0000872d force  0x00000006 , 0x00000039 
- 00031099  0x0000872e call  0x00007a71 
- 00031100  0x0000872f arg  0x00000a2e , 0x00000006 
- 00031101  0x00008730 call  0x00007a70 
- 00031102  0x00008731 call  0x0000790b 
- 00031103  0x00008732 call  0x00007912 
- 00031104  0x00008733 arg  0x00000a3e , 0x00000006 
- 00031105  0x00008734 arg  0x000005e6 , 0x00000005 
- 00031106  0x00008735 call  0x00007984 
- 00031107  0x00008736 branch  0x0000798d 
- 00031108  0x00008739 call  0x00007a70 
- 00031109  0x0000873a setarg  0x00800000 
- 00031110  0x0000873b lshift8  0x0000003f , 0x0000003f 
- 00031111  0x0000873c istore  0x00000004 , 0x00000005 
- 00031112  0x0000873d force  0x00000005 , 0x00000039 
- 00031113  0x0000873e call  0x00007ec6 
- 00031114  0x0000873f setarg  0x00000280 
- 00031115  0x00008740 istore  0x00000004 , 0x00000005 
- 00031116  0x00008741 branch  0x00007912 
- 00031117  0x00008743 fetch  0x00000004 , 0x00000a3e 
- 00031118  0x00008745 arg  0x000003e8 , 0x00000011 
- 00031119  0x00008746 idiv  0x00000011 
- 00031120  0x00008747 call  0x00007f86 
- 00031121  0x00008748 remainder  0x0000003f 
- 00031122  0x00008749 store  0x00000004 , 0x000009ba 
- 00031123  0x0000874a quotient  0x0000003f 
- 00031124  0x0000874b arg  0x000003e8 , 0x00000011 
- 00031125  0x0000874c idiv  0x00000011 
- 00031126  0x0000874d call  0x00007f86 
- 00031127  0x0000874e remainder  0x0000003f 
- 00031128  0x0000874f arg  0x000003e8 , 0x00000011 
- 00031129  0x00008750 imul32  0x00000011 , 0x0000003f 
- 00031130  0x00008751 fetcht  0x00000004 , 0x000009ba 
- 00031131  0x00008752 iadd  0x00000002 , 0x0000003f 
- 00031132  0x00008753 store  0x00000004 , 0x000009ba 
- 00031133  0x00008754 rtn 
- 00031134  0x00008757 jam  0x00000000 , 0x00004664 
- 00031135  0x00008758 branch  0x000079a2 
- 00031136  0x0000875b fetch  0x00000001 , 0x00004662 
- 00031137  0x0000875c bne  0x00000002 , 0x0000799e 
- 00031138  0x0000875e bpatchx  0x000000ed , 0x0000403d 
- 00031139  0x0000875f setarg  0x00363636 
- 00031140  0x00008760 lshift8  0x0000003f , 0x00000002 
- 00031141  0x00008761 or_into  0x00000036 , 0x00000002 
- 00031142  0x00008762 fetch  0x00000002 , 0x00000a7e 
- 00031143  0x00008763 copy  0x0000003f , 0x00000006 
- 00031144  0x00008764 force  0x00000004 , 0x00000039 
- 00031145  0x00008765 call  0x00007955 
- 00031146  0x00008766 call  0x0000790b 
- 00031147  0x00008767 call  0x00007912 
- 00031148  0x00008768 fetch  0x00000002 , 0x00000a80 
- 00031149  0x00008769 copy  0x0000003f , 0x00000006 
- 00031150  0x0000876a arg  0x000005e6 , 0x00000005 
- 00031151  0x0000876b force  0x00000006 , 0x00000039 
- 00031152  0x0000876c call  0x00007a71 
- 00031153  0x0000876d fetch  0x00000002 , 0x00000a82 
- 00031154  0x0000876e copy  0x0000003f , 0x00000006 
- 00031155  0x0000876f force  0x00000006 , 0x00000039 
- 00031156  0x00008770 call  0x00007a71 
- 00031157  0x00008771 setarg  0x00800000 
- 00031158  0x00008772 istore  0x00000003 , 0x00000005 
- 00031159  0x00008774 fetch  0x00000001 , 0x00004664 
- 00031160  0x00008776 istore  0x00000001 , 0x00000005 
- 00031161  0x00008777 force  0x00000000 , 0x0000003f 
- 00031162  0x00008778 istore  0x00000008 , 0x00000005 
- 00031163  0x00008779 setarg  0x00000388 
- 00031164  0x0000877a istore  0x00000004 , 0x00000005 
- 00031165  0x0000877b call  0x00007912 
- 00031166  0x0000877c call  0x0000794e 
- 00031167  0x0000877d arg  0x00000a3e , 0x00000006 
- 00031168  0x0000877e arg  0x00000706 , 0x00000005 
- 00031169  0x0000877f call  0x00007ebd 
- 00031170  0x00008781 setarg  0x005c5c5c 
- 00031171  0x00008782 lshift8  0x0000003f , 0x00000002 
- 00031172  0x00008783 or_into  0x0000005c , 0x00000002 
- 00031173  0x00008784 fetch  0x00000002 , 0x00000a7e 
- 00031174  0x00008785 copy  0x0000003f , 0x00000006 
- 00031175  0x00008786 force  0x00000004 , 0x00000039 
- 00031176  0x00008787 call  0x00007955 
- 00031177  0x00008788 call  0x0000790b 
- 00031178  0x00008789 call  0x00007912 
- 00031179  0x0000878a arg  0x00000726 , 0x00000006 
- 00031180  0x0000878b arg  0x000005e6 , 0x00000005 
- 00031181  0x0000878c force  0x00000008 , 0x00000039 
- 00031182  0x0000878d call  0x00007a71 
- 00031183  0x0000878e setarg  0x00800000 
- 00031184  0x0000878f lshift8  0x0000003f , 0x0000003f 
- 00031185  0x00008790 istore  0x00000004 , 0x00000005 
- 00031186  0x00008791 call  0x00007ec5 
- 00031187  0x00008792 setarg  0x00000300 
- 00031188  0x00008793 istore  0x00000004 , 0x00000005 
- 00031189  0x00008794 call  0x00007912 
- 00031190  0x00008795 branch  0x0000794e 
- 00031191  0x00008799 setarg  0x00363636 
- 00031192  0x0000879a lshift8  0x0000003f , 0x00000002 
- 00031193  0x0000879b or_into  0x00000036 , 0x00000002 
- 00031194  0x0000879c arg  0x00000a1e , 0x00000006 
- 00031195  0x0000879d force  0x00000006 , 0x00000039 
- 00031196  0x0000879e call  0x00007955 
- 00031197  0x0000879f call  0x0000790b 
- 00031198  0x000087a0 call  0x00007912 
- 00031199  0x000087a1 fetch  0x00000002 , 0x00000a8a 
- 00031200  0x000087a2 copy  0x0000003f , 0x00000006 
- 00031201  0x000087a3 arg  0x000005e6 , 0x00000005 
- 00031202  0x000087a4 call  0x00007a70 
- 00031203  0x000087a5 fetch  0x00000002 , 0x00000a8c 
- 00031204  0x000087a6 copy  0x0000003f , 0x00000006 
- 00031205  0x000087a7 call  0x00007a70 
- 00031206  0x000087a9 setarg  0x0062746c 
- 00031207  0x000087aa lshift8  0x0000003f , 0x0000003f 
- 00031208  0x000087ab or_into  0x0000006b , 0x0000003f 
- 00031209  0x000087ac istore  0x00000004 , 0x00000005 
- 00031210  0x000087ad arg  0x00000733 , 0x00000006 
- 00031211  0x000087ae force  0x00000003 , 0x00000039 
- 00031212  0x000087af call  0x00007a71 
- 00031213  0x000087b1 setarg  0x00800000 
- 00031214  0x000087b2 lshift8  0x0000003f , 0x0000003f 
- 00031215  0x000087b3 istore  0x00000004 , 0x00000005 
- 00031216  0x000087b4 force  0x00000000 , 0x0000003f 
- 00031217  0x000087b5 istore  0x00000008 , 0x00000005 
- 00031218  0x000087b6 setarg  0x00000380 
- 00031219  0x000087b7 istore  0x00000004 , 0x00000005 
- 00031220  0x000087b8 call  0x00007912 
- 00031221  0x000087ba call  0x0000794e 
- 00031222  0x000087bb arg  0x00000a3e , 0x00000006 
- 00031223  0x000087bc arg  0x00000706 , 0x00000005 
- 00031224  0x000087bd call  0x00007ebd 
- 00031225  0x000087bf setarg  0x005c5c5c 
- 00031226  0x000087c0 lshift8  0x0000003f , 0x00000002 
- 00031227  0x000087c1 or_into  0x0000005c , 0x00000002 
- 00031228  0x000087c2 arg  0x00000a1e , 0x00000006 
- 00031229  0x000087c3 force  0x00000006 , 0x00000039 
- 00031230  0x000087c4 call  0x00007955 
- 00031231  0x000087c5 call  0x0000790b 
- 00031232  0x000087c6 call  0x00007912 
- 00031233  0x000087c7 arg  0x00000726 , 0x00000006 
- 00031234  0x000087c8 arg  0x000005e6 , 0x00000005 
- 00031235  0x000087c9 force  0x00000008 , 0x00000039 
- 00031236  0x000087ca call  0x00007a71 
- 00031237  0x000087cb setarg  0x00800000 
- 00031238  0x000087cc lshift8  0x0000003f , 0x0000003f 
- 00031239  0x000087cd istore  0x00000004 , 0x00000005 
- 00031240  0x000087ce call  0x00007ec5 
- 00031241  0x000087cf setarg  0x00000300 
- 00031242  0x000087d0 istore  0x00000004 , 0x00000005 
- 00031243  0x000087d1 call  0x00007912 
- 00031244  0x000087d2 branch  0x0000794e 
- 00031245  0x000087d6 fetch  0x00000001 , 0x00004662 
- 00031246  0x000087d7 bne  0x00000002 , 0x00007a1e 
- 00031247  0x000087d9 bpatchx  0x000000ee , 0x0000403d 
- 00031248  0x000087da setarg  0x00363636 
- 00031249  0x000087db lshift8  0x0000003f , 0x00000002 
- 00031250  0x000087dc or_into  0x00000036 , 0x00000002 
- 00031251  0x000087dd arg  0x00000a1e , 0x00000006 
- 00031252  0x000087de force  0x00000006 , 0x00000039 
- 00031253  0x000087df call  0x00007955 
- 00031254  0x000087e0 call  0x0000790b 
- 00031255  0x000087e1 call  0x00007912 
- 00031256  0x000087e2 arg  0x00000a3e , 0x00000006 
- 00031257  0x000087e3 arg  0x000005e6 , 0x00000005 
- 00031258  0x000087e4 call  0x00007a70 
- 00031259  0x000087e5 arg  0x00000a2e , 0x00000006 
- 00031260  0x000087e6 call  0x00007a70 
- 00031261  0x000087e7 branch  0x00007a33 
- 00031262  0x000087ea setarg  0x00000000 
- 00031263  0x000087eb store  0x00000004 , 0x0000468a 
- 00031264  0x000087ec branch  0x00007a0f 
- 00031265  0x000087ef setarg  0x00000000 
- 00031266  0x000087f0 store  0x00000004 , 0x0000468a 
- 00031267  0x000087f1 branch  0x00007a26 
- 00031268  0x000087f5 fetch  0x00000001 , 0x00004662 
- 00031269  0x000087f6 bne  0x00000002 , 0x00007a21 
- 00031270  0x000087f8 setarg  0x00363636 
- 00031271  0x000087f9 lshift8  0x0000003f , 0x00000002 
- 00031272  0x000087fa or_into  0x00000036 , 0x00000002 
- 00031273  0x000087fb arg  0x00000a1e , 0x00000006 
- 00031274  0x000087fc force  0x00000006 , 0x00000039 
- 00031275  0x000087fd call  0x00007955 
- 00031276  0x000087fe call  0x0000790b 
- 00031277  0x000087ff call  0x00007912 
- 00031278  0x00008801 arg  0x00000a2e , 0x00000006 
- 00031279  0x00008802 arg  0x000005e6 , 0x00000005 
- 00031280  0x00008803 call  0x00007a70 
- 00031281  0x00008804 arg  0x00000a3e , 0x00000006 
- 00031282  0x00008805 call  0x00007a70 
- 00031283  0x00008807 setarg  0x00000000 
- 00031284  0x00008808 istore  0x00000008 , 0x00000005 
- 00031285  0x00008809 istore  0x00000004 , 0x00000005 
- 00031286  0x0000880a fetch  0x00000004 , 0x0000468a 
- 00031287  0x0000880b istore  0x00000004 , 0x00000005 
- 00031288  0x0000880d copy  0x00000005 , 0x00000002 
- 00031289  0x0000880e jam  0x00000080 , 0x00000726 
- 00031290  0x0000880f copy  0x00000002 , 0x00000005 
- 00031291  0x00008810 arg  0x00000736 , 0x00000006 
- 00031292  0x00008811 call  0x00007a70 
- 00031293  0x00008813 call  0x00007912 
- 00031294  0x00008815 arg  0x000005e6 , 0x00000005 
- 00031295  0x00008816 force  0x00000007 , 0x00000039 
- 00031296  0x00008817 call  0x00007ec6 
- 00031297  0x00008818 istore  0x00000004 , 0x00000005 
- 00031298  0x00008819 setarg  0x000003f8 
- 00031299  0x0000881a istore  0x00000004 , 0x00000005 
- 00031300  0x0000881b call  0x00007912 
- 00031301  0x0000881c call  0x0000794e 
- 00031302  0x0000881e arg  0x00000a3e , 0x00000006 
- 00031303  0x0000881f arg  0x00000706 , 0x00000005 
- 00031304  0x00008820 call  0x00007ebd 
- 00031305  0x00008822 setarg  0x005c5c5c 
- 00031306  0x00008823 lshift8  0x0000003f , 0x00000002 
- 00031307  0x00008824 or_into  0x0000005c , 0x00000002 
- 00031308  0x00008825 arg  0x00000a1e , 0x00000006 
- 00031309  0x00008826 force  0x00000006 , 0x00000039 
- 00031310  0x00008827 call  0x00007955 
- 00031311  0x00008828 call  0x0000790b 
- 00031312  0x00008829 call  0x00007912 
- 00031313  0x0000882a arg  0x00000726 , 0x00000006 
- 00031314  0x0000882b arg  0x000005e6 , 0x00000005 
- 00031315  0x0000882c force  0x00000008 , 0x00000039 
- 00031316  0x0000882d call  0x00007a71 
- 00031317  0x0000882e setarg  0x00800000 
- 00031318  0x0000882f lshift8  0x0000003f , 0x0000003f 
- 00031319  0x00008830 istore  0x00000004 , 0x00000005 
- 00031320  0x00008831 call  0x00007ec5 
- 00031321  0x00008832 setarg  0x00000300 
- 00031322  0x00008833 istore  0x00000004 , 0x00000005 
- 00031323  0x00008834 call  0x00007912 
- 00031324  0x00008835 branch  0x0000794e 
- 00031325  0x0000883d jam  0x000000c0 , 0x000005e3 
- 00031326  0x0000883f fetch  0x00000001 , 0x000005e3 
- 00031327  0x00008840 rtn  0x00000034 
- 00031328  0x00008841 increase  0xffffffff , 0x0000003f 
- 00031329  0x00008842 store  0x00000001 , 0x000005e3 
- 00031330  0x00008843 arg  0x000006be , 0x00000006 
- 00031331  0x00008844 call  0x000076ec 
- 00031332  0x00008845 branch  0x00007a5e , 0x00000001 
- 00031333  0x00008846 arg  0x000005e6 , 0x00000006 
- 00031334  0x00008847 arg  0x00000676 , 0x00000005 
- 00031335  0x00008848 branch  0x000076f2 
- 00031336  0x0000884b call  0x00007803 
- 00031337  0x0000884c fetch  0x00000001 , 0x000005e3 
- 00031338  0x0000884d increase  0xffffffff , 0x0000003f 
- 00031339  0x0000884e store  0x00000001 , 0x000005e3 
- 00031340  0x0000884f arg  0x000006be , 0x00000006 
- 00031341  0x00008850 call  0x000076ec 
- 00031342  0x00008851 rtn  0x00000001 
- 00031343  0x00008852 branch  0x00007854 
- 00031344  0x00008855 force  0x00000004 , 0x00000039 
- 00031345  0x00008857 increase  0xfffffffc , 0x00000006 
- 00031346  0x00008859 ifetch  0x00000004 , 0x00000006 
- 00031347  0x0000885a istore  0x00000004 , 0x00000005 
- 00031348  0x0000885b increase  0xfffffff8 , 0x00000006 
- 00031349  0x0000885c loop  0x00007a72 
- 00031350  0x0000885d rtn 
- 00031351  0x00008863 bpatchx  0x000000ef , 0x0000403d 
- 00031352  0x00008864 fetch  0x00000001 , 0x000044be 
- 00031353  0x00008865 branch  0x00005af0 , 0x00000034 
- 00031354  0x00008866 call  0x00005aec 
- 00031355  0x00008867 call  0x00007583 
- 00031356  0x00008869 branch  0x00007a7d 
- 00031357  0x0000886f fetch  0x00000001 , 0x000044c3 
- 00031358  0x00008870 rtnne  0x00000000 
- 00031359  0x00008871 fetch  0x00000001 , 0x000044c0 
- 00031360  0x00008872 rtnne  0x00000000 
- 00031361  0x00008874 arg  0x000045b2 , 0x00000005 
- 00031362  0x00008875 force  0x0000000f , 0x00000007 
- 00031363  0x00008876 call  0x000076a2 
- 00031364  0x00008877 random  0x0000003f 
- 00031365  0x00008878 rshift  0x0000003f , 0x0000003f 
- 00031366  0x00008879 istore  0x00000002 , 0x00000005 
- 00031367  0x0000887b arg  0x00000766 , 0x00000005 
- 00031368  0x0000887c arg  0x000045b2 , 0x00000006 
- 00031369  0x0000887d call  0x00007ebd 
- 00031370  0x0000887f arg  0x00000646 , 0x00000005 
- 00031371  0x00008880 arg  0x0000095e , 0x00000006 
- 00031372  0x00008881 call  0x00007eb3 
- 00031373  0x00008883 arg  0x00000686 , 0x00000005 
- 00031374  0x00008884 call  0x00007ed0 
- 00031375  0x00008885 jam  0x00000001 , 0x00000686 
- 00031376  0x00008887 call  0x00007ac7 
- 00031377  0x00008888 jam  0x00000003 , 0x000044c0 
- 00031378  0x00008889 rtn 
- 00031379  0x0000888c arg  0x000045d2 , 0x00000005 
- 00031380  0x0000888d arg  0x000006a6 , 0x00000006 
- 00031381  0x0000888e call  0x00007eb3 
- 00031382  0x0000888f jam  0x00000003 , 0x000044c3 
- 00031383  0x00008890 jam  0x00000000 , 0x000044c0 
- 00031384  0x00008891 rtn 
- 00031385  0x00008896 fetch  0x00000001 , 0x000009b9 
- 00031386  0x00008897 rtnne  0x00000000 
- 00031387  0x00008898 fetch  0x00000001 , 0x000044c0 
- 00031388  0x00008899 rtnne  0x00000000 
- 00031389  0x0000889b arg  0x00000766 , 0x00000005 
- 00031390  0x0000889c arg  0x000045b2 , 0x00000006 
- 00031391  0x0000889d call  0x00007ebd 
- 00031392  0x0000889f arg  0x00000646 , 0x00000005 
- 00031393  0x000088a0 arg  0x000009be , 0x00000006 
- 00031394  0x000088a1 call  0x00007eb3 
- 00031395  0x000088a3 arg  0x00000686 , 0x00000005 
- 00031396  0x000088a4 call  0x00007ed0 
- 00031397  0x000088a5 jam  0x00000001 , 0x00000686 
- 00031398  0x000088a7 call  0x00007ac7 
- 00031399  0x000088a8 jam  0x00000004 , 0x000044c0 
- 00031400  0x000088a9 rtn 
- 00031401  0x000088ae arg  0x000009fe , 0x00000005 
- 00031402  0x000088af arg  0x000006a6 , 0x00000006 
- 00031403  0x000088b0 call  0x00007ebd 
- 00031404  0x000088b1 jam  0x00000003 , 0x000009b9 
- 00031405  0x000088b2 jam  0x00000000 , 0x000044c0 
- 00031406  0x000088b3 rtn 
- 00031407  0x000088b8 fetch  0x00000001 , 0x000044be 
- 00031408  0x000088b9 rtn  0x00000034 
- 00031409  0x000088ba fetch  0x00000001 , 0x000044c0 
- 00031410  0x000088bb rtn  0x00000034 
- 00031411  0x000088bc increase  0x00000080 , 0x0000003f 
- 00031412  0x000088bd store  0x00000001 , 0x000044c0 
- 00031413  0x000088be rtnbit1  0x00000007 
- 00031414  0x000088bf fetch  0x00000002 , 0x000005e3 
- 00031415  0x000088c0 branch  0x00007ab9 , 0x00000034 
- 00031416  0x000088c1 branch  0x00007abf 
- 00031417  0x000088c4 bpatchx  0x000000f0 , 0x0000403e 
- 00031418  0x000088c5 call  0x00007ad4 
- 00031419  0x000088c6 fetch  0x00000001 , 0x000044c0 
- 00031420  0x000088c7 beq  0x00000003 , 0x00007a93 
- 00031421  0x000088c8 beq  0x00000004 , 0x00007aa9 
- 00031422  0x000088c9 rtn 
- 00031423  0x000088cd call  0x00007ae6 
- 00031424  0x000088ce fetch  0x00000002 , 0x000005e3 
- 00031425  0x000088cf increase  0xffffffff , 0x0000003f 
- 00031426  0x000088d0 store  0x00000002 , 0x000005e3 
- 00031427  0x000088d1 arg  0x00000766 , 0x00000006 
- 00031428  0x000088d2 call  0x000076ec 
- 00031429  0x000088d3 rtn  0x00000001 
- 00031430  0x000088d4 branch  0x00007b37 
- 00031431  0x000088d7 bpatchx  0x000000f1 , 0x0000403e 
- 00031432  0x000088d8 setarg  0x00000100 , 0x0000003f 
- 00031433  0x000088d9 store  0x00000002 , 0x000005e3 
- 00031434  0x000088db fetch  0x00000002 , 0x000005e3 
- 00031435  0x000088dc rtn  0x00000034 
- 00031436  0x000088dd increase  0xffffffff , 0x0000003f 
- 00031437  0x000088de store  0x00000002 , 0x000005e3 
- 00031438  0x000088df arg  0x00000766 , 0x00000006 
- 00031439  0x000088e0 call  0x000076ec 
- 00031440  0x000088e1 branch  0x00007aca , 0x00000001 
- 00031441  0x000088e2 arg  0x00000646 , 0x00000006 
- 00031442  0x000088e3 arg  0x00000706 , 0x00000005 
- 00031443  0x000088e4 branch  0x00007eb2 
- 00031444  0x000088e8 arg  0x00000746 , 0x00000011 
- 00031445  0x000088e9 arg  0x00000846 , 0x00000005 
- 00031446  0x000088ea call  0x00007ba3 
- 00031447  0x000088eb arg  0x00000846 , 0x00000011 
- 00031448  0x000088ec arg  0x000007e6 , 0x00000005 
- 00031449  0x000088ed call  0x00007c79 
- 00031450  0x000088ee arg  0x00000706 , 0x00000011 
- 00031451  0x000088ef arg  0x000007e6 , 0x00000012 
- 00031452  0x000088f0 arg  0x000006a6 , 0x00000005 
- 00031453  0x000088f1 call  0x00007be1 
- 00031454  0x000088f2 arg  0x00000846 , 0x00000011 
- 00031455  0x000088f3 arg  0x000007e6 , 0x00000012 
- 00031456  0x000088f4 arg  0x00000826 , 0x00000005 
- 00031457  0x000088f5 call  0x00007be1 
- 00031458  0x000088f6 arg  0x00000726 , 0x00000011 
- 00031459  0x000088f7 arg  0x00000826 , 0x00000012 
- 00031460  0x000088f8 arg  0x000006c6 , 0x00000005 
- 00031461  0x000088f9 branch  0x00007be1 
- 00031462  0x000088fc arg  0x00000746 , 0x00000011 
- 00031463  0x000088fd arg  0x00000826 , 0x00000005 
- 00031464  0x000088fe call  0x00007c79 
- 00031465  0x000088ff arg  0x00000826 , 0x00000011 
- 00031466  0x00008900 arg  0x00000846 , 0x00000005 
- 00031467  0x00008901 call  0x00007c79 
- 00031468  0x00008903 arg  0x0000093e , 0x00000011 
- 00031469  0x00008904 arg  0x00000846 , 0x00000012 
- 00031470  0x00008905 arg  0x00000846 , 0x00000005 
- 00031471  0x00008906 call  0x00007be1 
- 00031472  0x00008907 arg  0x00000706 , 0x00000011 
- 00031473  0x00008908 arg  0x00000826 , 0x00000005 
- 00031474  0x00008909 call  0x00007c79 
- 00031475  0x0000890b arg  0x00000826 , 0x00000006 
- 00031476  0x0000890c arg  0x000007e6 , 0x00000005 
- 00031477  0x0000890d call  0x00007ebd 
- 00031478  0x0000890e arg  0x000007e6 , 0x00000011 
- 00031479  0x0000890f call  0x00007c80 
- 00031480  0x00008910 arg  0x00000826 , 0x00000011 
- 00031481  0x00008911 arg  0x000007e6 , 0x00000012 
- 00031482  0x00008912 arg  0x00000826 , 0x00000005 
- 00031483  0x00008913 call  0x00007c7d 
- 00031484  0x00008915 arg  0x00000826 , 0x00000011 
- 00031485  0x00008916 arg  0x00000846 , 0x00000012 
- 00031486  0x00008917 arg  0x00000826 , 0x00000005 
- 00031487  0x00008918 call  0x00007c7d 
- 00031488  0x0000891a arg  0x00000706 , 0x00000006 
- 00031489  0x0000891b arg  0x000007e6 , 0x00000005 
- 00031490  0x0000891c call  0x00007ebd 
- 00031491  0x0000891d arg  0x00000726 , 0x00000011 
- 00031492  0x0000891e arg  0x00000846 , 0x00000005 
- 00031493  0x0000891f call  0x00007c79 
- 00031494  0x00008920 arg  0x000007e6 , 0x00000011 
- 00031495  0x00008921 call  0x00007c80 
- 00031496  0x00008922 arg  0x000007e6 , 0x00000011 
- 00031497  0x00008923 call  0x00007c80 
- 00031498  0x00008924 arg  0x000007e6 , 0x00000011 
- 00031499  0x00008925 arg  0x00000846 , 0x00000012 
- 00031500  0x00008926 arg  0x000007e6 , 0x00000005 
- 00031501  0x00008927 call  0x00007be1 
- 00031502  0x00008928 arg  0x00000846 , 0x00000011 
- 00031503  0x00008929 arg  0x00000806 , 0x00000005 
- 00031504  0x0000892a call  0x00007c79 
- 00031505  0x0000892b arg  0x00000806 , 0x00000011 
- 00031506  0x0000892c call  0x00007c80 
- 00031507  0x0000892d arg  0x00000806 , 0x00000011 
- 00031508  0x0000892e call  0x00007c80 
- 00031509  0x0000892f arg  0x00000806 , 0x00000011 
- 00031510  0x00008930 call  0x00007c80 
- 00031511  0x00008931 arg  0x00000726 , 0x00000006 
- 00031512  0x00008932 arg  0x00000846 , 0x00000005 
- 00031513  0x00008933 call  0x00007ebd 
- 00031514  0x00008934 arg  0x00000846 , 0x00000011 
- 00031515  0x00008935 call  0x00007c80 
- 00031516  0x00008936 arg  0x00000846 , 0x00000011 
- 00031517  0x00008937 arg  0x00000746 , 0x00000012 
- 00031518  0x00008938 arg  0x00000746 , 0x00000005 
- 00031519  0x00008939 call  0x00007be1 
- 00031520  0x0000893c arg  0x00000826 , 0x00000011 
- 00031521  0x0000893d arg  0x00000846 , 0x00000005 
- 00031522  0x0000893e call  0x00007c79 
- 00031523  0x00008940 arg  0x00000846 , 0x00000011 
- 00031524  0x00008941 arg  0x000007e6 , 0x00000012 
- 00031525  0x00008942 arg  0x00000846 , 0x00000005 
- 00031526  0x00008943 call  0x00007c96 
- 00031527  0x00008944 arg  0x00000846 , 0x00000011 
- 00031528  0x00008945 arg  0x000007e6 , 0x00000012 
- 00031529  0x00008946 arg  0x00000706 , 0x00000005 
- 00031530  0x00008947 call  0x00007c96 
- 00031531  0x00008948 arg  0x000007e6 , 0x00000011 
- 00031532  0x00008949 arg  0x00000706 , 0x00000012 
- 00031533  0x0000894a arg  0x00000846 , 0x00000005 
- 00031534  0x0000894b call  0x00007c96 
- 00031535  0x0000894c arg  0x00000846 , 0x00000011 
- 00031536  0x0000894d arg  0x00000826 , 0x00000012 
- 00031537  0x0000894e arg  0x00000846 , 0x00000005 
- 00031538  0x0000894f call  0x00007be1 
- 00031539  0x00008950 arg  0x00000846 , 0x00000011 
- 00031540  0x00008951 arg  0x00000806 , 0x00000012 
- 00031541  0x00008952 arg  0x00000726 , 0x00000005 
- 00031542  0x00008953 branch  0x00007c96 
- 00031543  0x00008957 arg  0x00000686 , 0x00000011 
- 00031544  0x00008958 arg  0x00000866 , 0x00000005 
- 00031545  0x00008959 call  0x00007c79 
- 00031546  0x0000895a arg  0x00000706 , 0x00000011 
- 00031547  0x0000895b arg  0x00000866 , 0x00000012 
- 00031548  0x0000895c arg  0x00000806 , 0x00000005 
- 00031549  0x0000895d call  0x00007be1 
- 00031550  0x00008960 arg  0x00000686 , 0x00000011 
- 00031551  0x00008961 arg  0x00000866 , 0x00000012 
- 00031552  0x00008962 arg  0x00000866 , 0x00000005 
- 00031553  0x00008963 call  0x00007be1 
- 00031554  0x00008964 arg  0x00000726 , 0x00000011 
- 00031555  0x00008965 arg  0x00000866 , 0x00000012 
- 00031556  0x00008966 arg  0x000007e6 , 0x00000005 
- 00031557  0x00008967 call  0x00007be1 
- 00031558  0x0000896a arg  0x00000746 , 0x00000011 
- 00031559  0x0000896b arg  0x00000866 , 0x00000005 
- 00031560  0x0000896c call  0x00007c79 
- 00031561  0x0000896d arg  0x00000646 , 0x00000011 
- 00031562  0x0000896e arg  0x00000866 , 0x00000012 
- 00031563  0x0000896f arg  0x00000826 , 0x00000005 
- 00031564  0x00008970 call  0x00007be1 
- 00031565  0x00008972 arg  0x00000746 , 0x00000011 
- 00031566  0x00008973 arg  0x00000866 , 0x00000012 
- 00031567  0x00008974 arg  0x00000866 , 0x00000005 
- 00031568  0x00008975 call  0x00007be1 
- 00031569  0x00008976 arg  0x00000666 , 0x00000011 
- 00031570  0x00008977 arg  0x00000866 , 0x00000012 
- 00031571  0x00008978 arg  0x00000846 , 0x00000005 
- 00031572  0x00008979 call  0x00007be1 
- 00031573  0x0000897e arg  0x00000806 , 0x00000012 
- 00031574  0x0000897f arg  0x00000826 , 0x00000011 
- 00031575  0x00008980 arg  0x00000866 , 0x00000005 
- 00031576  0x00008981 call  0x00007c96 
- 00031577  0x00008982 arg  0x00000806 , 0x00000011 
- 00031578  0x00008983 arg  0x00000826 , 0x00000012 
- 00031579  0x00008984 arg  0x00000806 , 0x00000005 
- 00031580  0x00008985 call  0x00007c7d 
- 00031581  0x00008988 arg  0x000007e6 , 0x00000012 
- 00031582  0x00008989 arg  0x00000846 , 0x00000011 
- 00031583  0x0000898a arg  0x00000826 , 0x00000005 
- 00031584  0x0000898b call  0x00007c96 
- 00031585  0x0000898c arg  0x000007e6 , 0x00000011 
- 00031586  0x0000898d arg  0x00000846 , 0x00000012 
- 00031587  0x0000898e arg  0x000007e6 , 0x00000005 
- 00031588  0x0000898f call  0x00007c7d 
- 00031589  0x00008990 arg  0x000007e6 , 0x00000011 
- 00031590  0x00008991 arg  0x00000866 , 0x00000012 
- 00031591  0x00008992 arg  0x000007e6 , 0x00000005 
- 00031592  0x00008993 call  0x00007be1 
- 00031593  0x00008994 arg  0x00000746 , 0x00000011 
- 00031594  0x00008995 arg  0x00000686 , 0x00000012 
- 00031595  0x00008996 arg  0x00000846 , 0x00000005 
- 00031596  0x00008997 call  0x00007be1 
- 00031597  0x00008998 arg  0x00000846 , 0x00000011 
- 00031598  0x00008999 arg  0x00000866 , 0x00000012 
- 00031599  0x0000899a arg  0x00000746 , 0x00000005 
- 00031600  0x0000899b call  0x00007be1 
- 00031601  0x0000899d arg  0x00000866 , 0x00000011 
- 00031602  0x0000899e arg  0x00000866 , 0x00000005 
- 00031603  0x0000899f call  0x00007c79 
- 00031604  0x000089a0 arg  0x00000866 , 0x00000011 
- 00031605  0x000089a1 arg  0x00000806 , 0x00000012 
- 00031606  0x000089a2 arg  0x00000846 , 0x00000005 
- 00031607  0x000089a3 call  0x00007be1 
- 00031608  0x000089a4 arg  0x00000866 , 0x00000011 
- 00031609  0x000089a5 arg  0x000007e6 , 0x00000012 
- 00031610  0x000089a6 arg  0x000007e6 , 0x00000005 
- 00031611  0x000089a7 call  0x00007be1 
- 00031612  0x000089a8 arg  0x00000826 , 0x00000011 
- 00031613  0x000089a9 arg  0x00000706 , 0x00000005 
- 00031614  0x000089aa call  0x00007c79 
- 00031615  0x000089ab arg  0x00000706 , 0x00000011 
- 00031616  0x000089ac arg  0x00000846 , 0x00000012 
- 00031617  0x000089ad arg  0x00000706 , 0x00000005 
- 00031618  0x000089ae call  0x00007c96 
- 00031619  0x000089af arg  0x00000706 , 0x00000006 
- 00031620  0x000089b0 arg  0x00000866 , 0x00000005 
- 00031621  0x000089b1 call  0x00007ebd 
- 00031622  0x000089b2 arg  0x00000866 , 0x00000011 
- 00031623  0x000089b3 call  0x00007c80 
- 00031624  0x000089b4 arg  0x00000846 , 0x00000011 
- 00031625  0x000089b5 arg  0x00000866 , 0x00000012 
- 00031626  0x000089b6 arg  0x00000846 , 0x00000005 
- 00031627  0x000089b7 call  0x00007c96 
- 00031628  0x000089b8 arg  0x00000846 , 0x00000011 
- 00031629  0x000089b9 arg  0x00000826 , 0x00000012 
- 00031630  0x000089ba arg  0x00000826 , 0x00000005 
- 00031631  0x000089bb call  0x00007be1 
- 00031632  0x000089bc arg  0x00000826 , 0x00000011 
- 00031633  0x000089bd arg  0x000007e6 , 0x00000012 
- 00031634  0x000089be arg  0x00000726 , 0x00000005 
- 00031635  0x000089bf call  0x00007c96 
- 00031636  0x000089c0 arg  0x00000726 , 0x00000011 
- 00031637  0x000089c1 arg  0x0000091e , 0x00000012 
- 00031638  0x000089c2 arg  0x00000726 , 0x00000005 
- 00031639  0x000089c3 force  0x00000000 , 0x00000013 
- 00031640  0x000089c4 fetch  0x00000001 , 0x00000726 
- 00031641  0x000089c5 isolate1  0x00000000 , 0x0000003f 
- 00031642  0x000089c6 call  0x00007c7b , 0x00000001 
- 00031643  0x000089c7 copy  0x00000013 , 0x00000030 
- 00031644  0x000089c8 arg  0x00000726 , 0x00000011 
- 00031645  0x000089c9 call  0x00007cab 
- 00031646  0x000089ca fetch  0x00000001 , 0x00000745 
- 00031647  0x000089cb isolate1  0x00000000 , 0x00000030 
- 00031648  0x000089cc setflag  0x00000001 , 0x00000007 , 0x0000003f 
- 00031649  0x000089cd store  0x00000001 , 0x00000745 
- 00031650  0x000089ce rtn 
- 00031651  0x000089d1 copy  0x00000005 , 0x0000000b 
- 00031652  0x000089d2 arg  0x00000806 , 0x00000005 
- 00031653  0x000089d3 call  0x00007ed0 
- 00031654  0x000089d4 force  0x00000000 , 0x0000003f 
- 00031655  0x000089d6 store  0x00000004 , 0x00000826 
- 00031656  0x000089d7 jam  0x00000001 , 0x00000806 
- 00031657  0x000089d8 arg  0x00000786 , 0x00000005 
- 00031658  0x000089d9 call  0x00007ed2 
- 00031659  0x000089da arg  0x0000091e , 0x00000006 
- 00031660  0x000089db arg  0x000007c6 , 0x00000005 
- 00031661  0x000089dc call  0x00007ebd 
- 00031662  0x000089dd copy  0x00000011 , 0x00000006 
- 00031663  0x000089de arg  0x000007e6 , 0x00000005 
- 00031664  0x000089df call  0x00007ebd 
- 00031665  0x000089e6 arg  0x000007e6 , 0x00000006 
- 00031666  0x000089e7 call  0x00007cb5 
- 00031667  0x000089e8 branch  0x00007bda , 0x00000034 
- 00031668  0x000089ed arg  0x000007e6 , 0x00000011 
- 00031669  0x000089ee arg  0x00000806 , 0x00000012 
- 00031670  0x000089ef call  0x00007cb8 
- 00031671  0x000089f0 arg  0x000007c6 , 0x00000011 
- 00031672  0x000089f1 arg  0x00000786 , 0x00000012 
- 00031673  0x000089f2 call  0x00007cb8 
- 00031674  0x000089f4 arg  0x000007e6 , 0x00000011 
- 00031675  0x000089f5 arg  0x000007c6 , 0x00000012 
- 00031676  0x000089f6 call  0x00007cb1 
- 00031677  0x000089f7 branch  0x00007bcc , 0x00000002 
- 00031678  0x000089f8 arg  0x000007c6 , 0x00000011 
- 00031679  0x000089f9 arg  0x000007e6 , 0x00000012 
- 00031680  0x000089fa copy  0x00000011 , 0x00000005 
- 00031681  0x000089fb call  0x00007ca9 
- 00031682  0x000089fc arg  0x00000806 , 0x00000011 
- 00031683  0x000089fd arg  0x00000786 , 0x00000012 
- 00031684  0x000089fe copy  0x00000012 , 0x00000005 
- 00031685  0x000089ff call  0x00007c7b 
- 00031686  0x00008a00 ifetch  0x00000001 , 0x00000011 
- 00031687  0x00008a01 iadd  0x00000013 , 0x00000013 
- 00031688  0x00008a02 ifetch  0x00000001 , 0x00000012 
- 00031689  0x00008a03 iadd  0x00000013 , 0x0000003f 
- 00031690  0x00008a04 istore  0x00000001 , 0x00000012 
- 00031691  0x00008a05 branch  0x00007bb1 
- 00031692  0x00008a07 arg  0x000007e6 , 0x00000011 
- 00031693  0x00008a08 arg  0x000007c6 , 0x00000012 
- 00031694  0x00008a09 copy  0x00000011 , 0x00000005 
- 00031695  0x00008a0a call  0x00007ca9 
- 00031696  0x00008a0b arg  0x00000786 , 0x00000011 
- 00031697  0x00008a0c arg  0x00000806 , 0x00000012 
- 00031698  0x00008a0d copy  0x00000012 , 0x00000005 
- 00031699  0x00008a0e call  0x00007c7b 
- 00031700  0x00008a0f ifetch  0x00000001 , 0x00000011 
- 00031701  0x00008a10 iadd  0x00000013 , 0x00000013 
- 00031702  0x00008a11 ifetch  0x00000001 , 0x00000012 
- 00031703  0x00008a12 iadd  0x00000013 , 0x0000003f 
- 00031704  0x00008a13 istore  0x00000001 , 0x00000012 
- 00031705  0x00008a14 branch  0x00007bb1 
- 00031706  0x00008a17 arg  0x00000786 , 0x00000011 
- 00031707  0x00008a18 copy  0x0000000b , 0x00000005 
- 00031708  0x00008a19 call  0x00007c0a 
- 00031709  0x00008a1b arg  0x0000091e , 0x00000011 
- 00031710  0x00008a1c copy  0x0000000b , 0x00000012 
- 00031711  0x00008a1d copy  0x0000000b , 0x00000005 
- 00031712  0x00008a1e branch  0x00007c96 
- 00031713  0x00008a22 copy  0x00000005 , 0x0000000b 
- 00031714  0x00008a24 force  0x00000000 , 0x00000038 
- 00031715  0x00008a26 arg  0x00000786 , 0x00000005 
- 00031716  0x00008a27 call  0x00007ed2 
- 00031717  0x00008a28 arg  0x00000ad2 , 0x00000005 
- 00031718  0x00008a29 call  0x00007ed2 
- 00031719  0x00008a2d copy  0x00000011 , 0x00000006 
- 00031720  0x00008a2f jam  0x00000000 , 0x00000ad2 
- 00031721  0x00008a30 setarg  0x00000000 
- 00031722  0x00008a31 call  0x00007c73 
- 00031723  0x00008a32 copy  0x00000012 , 0x00000006 
- 00031724  0x00008a33 call  0x00007c77 
- 00031725  0x00008a36 force  0x00000000 , 0x00000007 
- 00031726  0x00008a37 arg  0x00000786 , 0x00000005 
- 00031727  0x00008a3b arg  0x00000ad2 , 0x00000002 
- 00031728  0x00008a3c copy  0x00000007 , 0x00000012 
- 00031729  0x00008a3d lshift2  0x00000012 , 0x0000003f 
- 00031730  0x00008a3f iadd  0x00000002 , 0x00000012 
- 00031731  0x00008a40 force  0x00000000 , 0x00000002 
- 00031732  0x00008a41 force  0x00000000 , 0x00000013 
- 00031733  0x00008a47 ifetch  0x00000004 , 0x00000005 
- 00031734  0x00008a48 iforce  0x00000011 
- 00031735  0x00008a4b ifetch  0x00000004 , 0x00000012 
- 00031736  0x00008a4c copy  0x00000013 , 0x00000038 
- 00031737  0x00008a4d imul32  0x0000002f , 0x0000003f 
- 00031738  0x00008a4e iadd  0x00000011 , 0x0000003f 
- 00031739  0x00008a4f iadd  0x00000002 , 0x0000003f 
- 00031740  0x00008a50 istore  0x00000004 , 0x00000005 
- 00031741  0x00008a51 rshift32  0x0000003f , 0x00000002 
- 00031742  0x00008a52 increase  0x00000001 , 0x00000013 
- 00031743  0x00008a53 compare  0x00000008 , 0x00000013 , 0x000000ff 
- 00031744  0x00008a54 nbranch  0x00007bf5 , 0x00000001 
- 00031745  0x00008a56 deposit  0x00000002 
- 00031746  0x00008a57 istore  0x00000004 , 0x00000005 
- 00031747  0x00008a58 increase  0xffffffe0 , 0x00000005 
- 00031748  0x00008a5b increase  0x00000001 , 0x00000007 
- 00031749  0x00008a5c compare  0x00000008 , 0x00000007 , 0x000000ff 
- 00031750  0x00008a5d nbranch  0x00007bef , 0x00000001 
- 00031751  0x00008a5e arg  0x00000786 , 0x00000011 
- 00031752  0x00008a5f copy  0x0000000b , 0x00000005 
- 00031753  0x00008a60 branch  0x00007c0a 
- 00031754  0x00008a63 bpatchx  0x000000f2 , 0x0000403e 
- 00031755  0x00008a64 copy  0x00000005 , 0x0000000b 
- 00031756  0x00008a65 copy  0x00000011 , 0x00000030 
- 00031757  0x00008a66 arg  0x000007c6 , 0x00000012 
- 00031758  0x00008a67 copy  0x00000012 , 0x00000005 
- 00031759  0x00008a68 call  0x00007ecd 
- 00031760  0x00008a69 istore  0x00000008 , 0x00000005 
- 00031761  0x00008a6a add  0x00000011 , 0x0000002c , 0x00000006 
- 00031762  0x00008a6b call  0x00007eb9 
- 00031763  0x00008a6c call  0x00007eb5 
- 00031764  0x00008a6d copy  0x00000012 , 0x00000011 
- 00031765  0x00008a6e call  0x00007c80 
- 00031766  0x00008a6f arg  0x000007c6 , 0x00000012 
- 00031767  0x00008a70 copy  0x00000030 , 0x00000011 
- 00031768  0x00008a71 copy  0x0000000b , 0x00000005 
- 00031769  0x00008a72 call  0x00007c7d 
- 00031770  0x00008a74 arg  0x000007c6 , 0x00000012 
- 00031771  0x00008a75 copy  0x00000012 , 0x00000005 
- 00031772  0x00008a76 call  0x00007ecd 
- 00031773  0x00008a77 istore  0x00000008 , 0x00000005 
- 00031774  0x00008a78 add  0x00000030 , 0x00000030 , 0x00000006 
- 00031775  0x00008a79 call  0x00007ebf 
- 00031776  0x00008a7a call  0x00007ecd 
- 00031777  0x00008a7b copy  0x00000012 , 0x00000011 
- 00031778  0x00008a7c call  0x00007c80 
- 00031779  0x00008a80 arg  0x000007c6 , 0x00000012 
- 00031780  0x00008a81 copy  0x0000000b , 0x00000011 
- 00031781  0x00008a82 copy  0x00000011 , 0x00000005 
- 00031782  0x00008a83 call  0x00007c7d 
- 00031783  0x00008a87 arg  0x000007c6 , 0x00000012 
- 00031784  0x00008a88 copy  0x00000012 , 0x00000005 
- 00031785  0x00008a89 add  0x00000030 , 0x00000020 , 0x00000006 
- 00031786  0x00008a8a call  0x00007eb5 
- 00031787  0x00008a8b call  0x00007ecd 
- 00031788  0x00008a8c istore  0x00000008 , 0x00000005 
- 00031789  0x00008a8d add  0x00000030 , 0x00000038 , 0x00000006 
- 00031790  0x00008a8e call  0x00007eb9 
- 00031791  0x00008a8f copy  0x0000000b , 0x00000011 
- 00031792  0x00008a90 copy  0x00000011 , 0x00000005 
- 00031793  0x00008a91 call  0x00007c7d 
- 00031794  0x00008a95 arg  0x000007c6 , 0x00000012 
- 00031795  0x00008a96 copy  0x00000012 , 0x00000005 
- 00031796  0x00008a97 add  0x00000030 , 0x00000024 , 0x00000006 
- 00031797  0x00008a98 call  0x00007eb5 
- 00031798  0x00008a99 add  0x00000030 , 0x00000034 , 0x00000006 
- 00031799  0x00008a9a call  0x00007eb5 
- 00031800  0x00008a9b add  0x00000030 , 0x00000034 , 0x00000006 
- 00031801  0x00008a9c call  0x00007eb6 
- 00031802  0x00008a9d add  0x00000030 , 0x00000020 , 0x00000006 
- 00031803  0x00008a9e call  0x00007eb6 
- 00031804  0x00008a9f copy  0x0000000b , 0x00000011 
- 00031805  0x00008aa0 copy  0x00000011 , 0x00000005 
- 00031806  0x00008aa1 call  0x00007c7d 
- 00031807  0x00008aa4 arg  0x000007c6 , 0x00000012 
- 00031808  0x00008aa5 copy  0x00000012 , 0x00000005 
- 00031809  0x00008aa6 add  0x00000030 , 0x0000002c , 0x00000006 
- 00031810  0x00008aa7 call  0x00007eb5 
- 00031811  0x00008aa8 call  0x00007ecd 
- 00031812  0x00008aa9 istore  0x00000008 , 0x00000005 
- 00031813  0x00008aaa add  0x00000030 , 0x00000020 , 0x00000006 
- 00031814  0x00008aab call  0x00007eb6 
- 00031815  0x00008aac add  0x00000030 , 0x00000028 , 0x00000006 
- 00031816  0x00008aad call  0x00007eb6 
- 00031817  0x00008aae copy  0x0000000b , 0x00000011 
- 00031818  0x00008aaf copy  0x00000011 , 0x00000005 
- 00031819  0x00008ab0 call  0x00007c96 
- 00031820  0x00008ab3 arg  0x000007c6 , 0x00000012 
- 00031821  0x00008ab4 copy  0x00000012 , 0x00000005 
- 00031822  0x00008ab5 add  0x00000030 , 0x00000030 , 0x00000006 
- 00031823  0x00008ab6 call  0x00007eb9 
- 00031824  0x00008ab7 call  0x00007eb9 
- 00031825  0x00008ab8 force  0x00000000 , 0x0000003f 
- 00031826  0x00008ab9 istore  0x00000008 , 0x00000005 
- 00031827  0x00008aba add  0x00000030 , 0x00000024 , 0x00000006 
- 00031828  0x00008abb call  0x00007eb6 
- 00031829  0x00008abc add  0x00000030 , 0x0000002c , 0x00000006 
- 00031830  0x00008abd call  0x00007eb6 
- 00031831  0x00008abe copy  0x0000000b , 0x00000011 
- 00031832  0x00008abf copy  0x00000011 , 0x00000005 
- 00031833  0x00008ac0 call  0x00007c96 
- 00031834  0x00008ac3 arg  0x000007c6 , 0x00000012 
- 00031835  0x00008ac4 copy  0x00000012 , 0x00000005 
- 00031836  0x00008ac5 add  0x00000030 , 0x00000034 , 0x00000006 
- 00031837  0x00008ac6 call  0x00007eb5 
- 00031838  0x00008ac7 add  0x00000030 , 0x00000020 , 0x00000006 
- 00031839  0x00008ac8 call  0x00007eb5 
- 00031840  0x00008ac9 call  0x00007ecd 
- 00031841  0x00008aca add  0x00000030 , 0x00000030 , 0x00000006 
- 00031842  0x00008acb call  0x00007eb6 
- 00031843  0x00008acc copy  0x0000000b , 0x00000011 
- 00031844  0x00008acd copy  0x00000011 , 0x00000005 
- 00031845  0x00008ace call  0x00007c96 
- 00031846  0x00008ad1 arg  0x000007c6 , 0x00000012 
- 00031847  0x00008ad2 copy  0x00000012 , 0x00000005 
- 00031848  0x00008ad3 add  0x00000030 , 0x00000038 , 0x00000006 
- 00031849  0x00008ad4 call  0x00007eb9 
- 00031850  0x00008ad5 call  0x00007ecd 
- 00031851  0x00008ad6 add  0x00000030 , 0x00000024 , 0x00000006 
- 00031852  0x00008ad7 call  0x00007eb5 
- 00031853  0x00008ad8 call  0x00007ecd 
- 00031854  0x00008ad9 add  0x00000030 , 0x00000034 , 0x00000006 
- 00031855  0x00008ada call  0x00007eb6 
- 00031856  0x00008adb copy  0x0000000b , 0x00000011 
- 00031857  0x00008adc copy  0x00000011 , 0x00000005 
- 00031858  0x00008add branch  0x00007c96 
- 00031859  0x00008ae1 force  0x00000020 , 0x00000039 
- 00031860  0x00008ae2 arg  0x00000ad2 , 0x00000005 
- 00031861  0x00008ae3 iadd  0x00000005 , 0x00000005 
- 00031862  0x00008ae4 branch  0x00007f01 
- 00031863  0x00008ae7 force  0x00000008 , 0x00000039 
- 00031864  0x00008ae8 branch  0x00007781 
- 00031865  0x00008aeb copy  0x00000011 , 0x00000012 
- 00031866  0x00008aec branch  0x00007be1 
- 00031867  0x00008aef force  0x00000008 , 0x00000039 
- 00031868  0x00008af0 branch  0x00007712 
- 00031869  0x00008af3 call  0x00007c7b 
- 00031870  0x00008af4 copy  0x00000005 , 0x00000011 
- 00031871  0x00008af5 branch  0x00007c81 
- 00031872  0x00008af8 call  0x00007cae 
- 00031873  0x00008afa isolate1  0x00000000 , 0x00000013 
- 00031874  0x00008afb branch  0x00007c8a , 0x00000001 
- 00031875  0x00008afc arg  0x0000091e , 0x00000012 
- 00031876  0x00008afd copy  0x00000011 , 0x00000013 
- 00031877  0x00008afe increase  0xffffffe0 , 0x00000011 
- 00031878  0x00008aff call  0x00007cb1 
- 00031879  0x00008b00 nrtn  0x00000002 
- 00031880  0x00008b01 copy  0x00000013 , 0x00000011 
- 00031881  0x00008b02 branch  0x00007c92 
- 00031882  0x00008b05 call  0x00007c92 
- 00031883  0x00008b07 copy  0x00000011 , 0x00000013 
- 00031884  0x00008b08 increase  0xffffffe0 , 0x00000011 
- 00031885  0x00008b09 arg  0x0000091e , 0x00000012 
- 00031886  0x00008b0a call  0x00007cb1 
- 00031887  0x00008b0b nrtn  0x00000002 
- 00031888  0x00008b0c copy  0x00000013 , 0x00000011 
- 00031889  0x00008b0d branch  0x00007c92 
- 00031890  0x00008b11 increase  0xffffffe0 , 0x00000011 
- 00031891  0x00008b12 arg  0x0000091e , 0x00000012 
- 00031892  0x00008b13 copy  0x00000011 , 0x00000005 
- 00031893  0x00008b14 branch  0x00007ca9 
- 00031894  0x00008b1a call  0x00007ca9 
- 00031895  0x00008b1c branch  0x00007ca0 , 0x00000001 
- 00031896  0x00008b1f add  0x00000005 , 0xffffffe0 , 0x00000011 
- 00031897  0x00008b20 arg  0x0000091e , 0x00000012 
- 00031898  0x00008b21 call  0x00007cb1 
- 00031899  0x00008b22 nrtn  0x00000002 
- 00031900  0x00008b23 arg  0x0000091e , 0x00000012 
- 00031901  0x00008b24 add  0x00000005 , 0xffffffe0 , 0x00000011 
- 00031902  0x00008b26 copy  0x00000011 , 0x00000005 
- 00031903  0x00008b27 branch  0x00007ca9 
- 00031904  0x00008b29 add  0x00000005 , 0xffffffe0 , 0x00000011 
- 00031905  0x00008b2a arg  0x0000091e , 0x00000012 
- 00031906  0x00008b2b copy  0x00000011 , 0x00000005 
- 00031907  0x00008b2c call  0x00007c7b 
- 00031908  0x00008b2e rtn  0x00000001 
- 00031909  0x00008b2f add  0x00000005 , 0xffffffe0 , 0x00000011 
- 00031910  0x00008b30 arg  0x0000091e , 0x00000012 
- 00031911  0x00008b31 copy  0x00000011 , 0x00000005 
- 00031912  0x00008b32 branch  0x00007c7b 
- 00031913  0x00008b37 force  0x00000008 , 0x00000039 
- 00031914  0x00008b38 branch  0x00007720 
- 00031915  0x00008b3b force  0x00000008 , 0x00000039 
- 00031916  0x00008b3c increase  0x0000001c , 0x00000011 
- 00031917  0x00008b3d branch  0x0000772f 
- 00031918  0x00008b40 force  0x00000008 , 0x00000039 
- 00031919  0x00008b41 force  0x00000000 , 0x00000013 
- 00031920  0x00008b42 branch  0x0000773d 
- 00031921  0x00008b45 force  0x00000008 , 0x00000039 
- 00031922  0x00008b46 increase  0x0000001c , 0x00000011 
- 00031923  0x00008b47 increase  0x0000001c , 0x00000012 
- 00031924  0x00008b48 branch  0x00007707 
- 00031925  0x00008b4c ifetch  0x00000008 , 0x00000006 
- 00031926  0x00008b4d nrtn  0x00000034 
- 00031927  0x00008b4e branch  0x000076f5 
- 00031928  0x00008b54 copy  0x00000011 , 0x00000030 
- 00031929  0x00008b56 copy  0x00000030 , 0x00000011 
- 00031930  0x00008b57 ifetch  0x00000001 , 0x00000011 
- 00031931  0x00008b58 isolate1  0x00000000 , 0x0000003f 
- 00031932  0x00008b59 rtn  0x00000001 
- 00031933  0x00008b5a call  0x00007cab 
- 00031934  0x00008b5b ifetch  0x00000001 , 0x00000012 
- 00031935  0x00008b5c isolate0  0x00000000 , 0x0000003f 
- 00031936  0x00008b5d branch  0x00007cc8 , 0x00000001 
- 00031937  0x00008b5e arg  0x0000091e , 0x00000011 
- 00031938  0x00008b5f copy  0x00000012 , 0x00000005 
- 00031939  0x00008b60 call  0x00007c7b 
- 00031940  0x00008b61 ifetch  0x00000001 , 0x00000012 
- 00031941  0x00008b62 iadd  0x00000013 , 0x0000003f 
- 00031942  0x00008b63 istore  0x00000001 , 0x00000012 
- 00031943  0x00008b64 increase  0xffffffe0 , 0x00000012 
- 00031944  0x00008b66 add  0x00000012 , 0x00000020 , 0x00000011 
- 00031945  0x00008b67 force  0x00000009 , 0x00000039 
- 00031946  0x00008b68 call  0x0000772f 
- 00031947  0x00008b69 branch  0x00007cb9 
- 00031948  0x00008b6e call  0x00002c65 
- 00031949  0x00008b6f rtn  0x0000002b 
- 00031950  0x00008b70 call  0x00007cd3 
- 00031951  0x00008b71 call  0x00007d75 
- 00031952  0x00008b72 branch  0x00007d08 
- 00031953  0x00008b75 call  0x00007d29 
- 00031954  0x00008b77 branch  0x00007d64 
- 00031955  0x00008b7a fetch  0x00000001 , 0x00004686 
- 00031956  0x00008b7b rtneq  0x000000ff 
- 00031957  0x00008b7c iforce  0x00000002 
- 00031958  0x00008b7d call  0x0000680e 
- 00031959  0x00008b7e fetcht  0x00000001 , 0x00004686 
- 00031960  0x00008b7f call  0x00006825 
- 00031961  0x00008b80 nop  0x00000064 
- 00031962  0x00008b81 fetcht  0x00000001 , 0x00004686 
- 00031963  0x00008b82 call  0x000067fb 
- 00031964  0x00008b83 branch  0x00007cdd 
- 00031965  0x00008b88 bpatchx  0x000000f3 , 0x0000403e 
- 00031966  0x00008b89 fetch  0x00000001 , 0x00004686 
- 00031967  0x00008b8a rtneq  0x000000ff 
- 00031968  0x00008b8b copy  0x0000003f , 0x00000002 
- 00031969  0x00008b8c call  0x0000681d 
- 00031970  0x00008b8d nbranch  0x00007cef , 0x00000001 
- 00031971  0x00008b90 call  0x00007cf9 
- 00031972  0x00008b91 fetch  0x00000002 , 0x00004682 
- 00031973  0x00008b92 set1  0x0000000c 
- 00031974  0x00008b93 store  0x00000002 , 0x00004682 
- 00031975  0x00008b94 fetch  0x00000001 , 0x00004679 
- 00031976  0x00008b95 rtneq  0x00000000 
- 00031977  0x00008b96 jam  0x00000000 , 0x00004679 
- 00031978  0x00008b98 fetch  0x00000001 , 0x00004685 
- 00031979  0x00008b99 store  0x00000001 , 0x00004678 
- 00031980  0x00008b9a call  0x00007d00 
- 00031981  0x00008b9b jam  0x0000002c , 0x00000a99 
- 00031982  0x00008b9c branch  0x00007d86 
- 00031983  0x00008b9e fetch  0x00000002 , 0x00004682 
- 00031984  0x00008b9f set0  0x0000000c 
- 00031985  0x00008ba0 store  0x00000002 , 0x00004682 
- 00031986  0x00008ba1 fetch  0x00000001 , 0x00004679 
- 00031987  0x00008ba2 rtneq  0x00000001 
- 00031988  0x00008ba3 jam  0x00000001 , 0x00004679 
- 00031989  0x00008ba5 jam  0x00000000 , 0x00004678 
- 00031990  0x00008ba6 call  0x00007d02 
- 00031991  0x00008ba7 jam  0x0000002d , 0x00000a99 
- 00031992  0x00008ba8 branch  0x00007d86 
- 00031993  0x00008bab fetch  0x00000001 , 0x00004678 
- 00031994  0x00008bac rtn  0x00000034 
- 00031995  0x00008bad increase  0xffffffff , 0x0000003f 
- 00031996  0x00008bae store  0x00000001 , 0x00004678 
- 00031997  0x00008baf nrtn  0x00000034 
- 00031998  0x00008bb1 jam  0x00000010 , 0x00000a99 
- 00031999  0x00008bb2 branch  0x00007d86 
- 00032000  0x00008bb5 arg  0x00000007 , 0x00000007 
- 00032001  0x00008bb6 branch  0x00002c32 
- 00032002  0x00008bb9 arg  0x00000007 , 0x00000007 
- 00032003  0x00008bba branch  0x00002c36 
- 00032004  0x00008bd1 fetch  0x00000002 , 0x0000421b 
- 00032005  0x00008bd2 mul32  0x00000011 , 0x0000000b , 0x00000012 
- 00032006  0x00008bd3 iadd  0x00000012 , 0x00000012 
- 00032007  0x00008bd4 rtn 
- 00032008  0x00008bd8 fetch  0x00000001 , 0x0000421a 
- 00032009  0x00008bd9 rtn  0x00000034 
- 00032010  0x00008bda copy  0x0000003f , 0x00000039 
- 00032011  0x00008bdb fetch  0x00000002 , 0x0000421b 
- 00032012  0x00008bdc copy  0x0000003f , 0x00000012 
- 00032013  0x00008bde add  0x00000012 , 0x00000002 , 0x00000013 
- 00032014  0x00008bdf ifetcht  0x00000001 , 0x00000013 
- 00032015  0x00008be0 call  0x0000680e 
- 00032016  0x00008be1 call  0x00007d32 
- 00032017  0x00008be2 increase  0x0000000b , 0x00000012 
- 00032018  0x00008be3 loop  0x00007d0d 
- 00032019  0x00008be4 rtn 
- 00032020  0x00008be9 call  0x00007d04 
- 00032021  0x00008bea setarg  0x00000002 
- 00032022  0x00008beb istore  0x00000001 , 0x00000012 
- 00032023  0x00008bec call  0x00007d5e 
- 00032024  0x00008bed branch  0x00007d35 
- 00032025  0x00008bf3 call  0x00007d04 
- 00032026  0x00008bf4 setarg  0x00000003 
- 00032027  0x00008bf5 istore  0x00000001 , 0x00000012 
- 00032028  0x00008bf6 call  0x00007d5e 
- 00032029  0x00008bf7 branch  0x00007d32 
- 00032030  0x00008bfc call  0x00007d04 
- 00032031  0x00008bfd setarg  0x00000001 
- 00032032  0x00008bfe istore  0x00000001 , 0x00000012 
- 00032033  0x00008bff setarg  0x000000ff 
- 00032034  0x00008c00 istore  0x00000001 , 0x00000005 
- 00032035  0x00008c01 branch  0x00007d32 
- 00032036  0x00008c07 call  0x00007d04 
- 00032037  0x00008c08 arg  0x0000000b , 0x00000039 
- 00032038  0x00008c09 copy  0x00000013 , 0x00000006 
- 00032039  0x00008c0a copy  0x00000012 , 0x00000005 
- 00032040  0x00008c0b branch  0x00007ef4 
- 00032041  0x00008c10 fetch  0x00000001 , 0x0000421a 
- 00032042  0x00008c11 rtn  0x00000034 
- 00032043  0x00008c12 arg  0x00000000 , 0x00000011 
- 00032044  0x00008c14 call  0x00007d38 
- 00032045  0x00008c15 increase  0x00000001 , 0x00000011 
- 00032046  0x00008c16 fetch  0x00000001 , 0x0000421a 
- 00032047  0x00008c17 isub  0x00000011 , 0x0000003e 
- 00032048  0x00008c18 rtn  0x00000005 
- 00032049  0x00008c19 branch  0x00007d2c 
- 00032050  0x00008c1d add  0x00000012 , 0x00000002 , 0x00000013 
- 00032051  0x00008c1e ifetcht  0x00000001 , 0x00000013 
- 00032052  0x00008c1f branch  0x00006825 
- 00032053  0x00008c23 add  0x00000012 , 0x00000002 , 0x00000013 
- 00032054  0x00008c24 ifetcht  0x00000001 , 0x00000013 
- 00032055  0x00008c25 branch  0x00006829 
- 00032056  0x00008c2a add  0x00000011 , 0x0000000b , 0x00000007 
- 00032057  0x00008c2b call  0x00007f16 
- 00032058  0x00008c2c nrtn  0x00000034 
- 00032059  0x00008c2e call  0x00007d04 
- 00032060  0x00008c30 ifetch  0x00000001 , 0x00000012 
- 00032061  0x00008c32 beq  0x00000002 , 0x00007d35 
- 00032062  0x00008c33 beq  0x00000003 , 0x00007d32 
- 00032063  0x00008c34 beq  0x00000000 , 0x00007d32 
- 00032064  0x00008c35 beq  0x00000005 , 0x00007d4c 
- 00032065  0x00008c37 call  0x00007d35 
- 00032066  0x00008c38 add  0x00000012 , 0x00000007 , 0x00000013 
- 00032067  0x00008c39 call  0x00007e7c 
- 00032068  0x00008c3a ifetch  0x00000002 , 0x00000013 
- 00032069  0x00008c3b call  0x00007f9c 
- 00032070  0x00008c3c call  0x00007e8c 
- 00032071  0x00008c3d setarg  0x00000005 
- 00032072  0x00008c3e istore  0x00000001 , 0x00000012 
- 00032073  0x00008c3f add  0x00000012 , 0x00000003 , 0x00000013 
- 00032074  0x00008c40 ifetch  0x00000002 , 0x00000013 
- 00032075  0x00008c41 branch  0x00007d5c 
- 00032076  0x00008c45 call  0x00007d32 
- 00032077  0x00008c46 add  0x00000012 , 0x00000009 , 0x00000013 
- 00032078  0x00008c47 call  0x00007e7c 
- 00032079  0x00008c48 ifetch  0x00000002 , 0x00000013 
- 00032080  0x00008c49 call  0x00007f9c 
- 00032081  0x00008c4a call  0x00007e8c 
- 00032082  0x00008c4c add  0x00000012 , 0x00000001 , 0x00000013 
- 00032083  0x00008c4d ifetch  0x00000001 , 0x00000013 
- 00032084  0x00008c4e beq  0x000000ff , 0x00007d58 
- 00032085  0x00008c4f increase  0xffffffff , 0x0000003f 
- 00032086  0x00008c50 istore  0x00000001 , 0x00000013 
- 00032087  0x00008c51 branch  0x00007d19 , 0x00000034 
- 00032088  0x00008c53 setarg  0x00000004 
- 00032089  0x00008c54 istore  0x00000001 , 0x00000012 
- 00032090  0x00008c55 add  0x00000012 , 0x00000005 , 0x00000013 
- 00032091  0x00008c56 ifetch  0x00000002 , 0x00000013 
- 00032092  0x00008c58 add  0x00000011 , 0x0000000b , 0x00000007 
- 00032093  0x00008c59 branch  0x00007f08 
- 00032094  0x00008c5c setarg  0x00000000 
- 00032095  0x00008c5d branch  0x00007d5c 
- 00032096  0x00008c64 setarg  0x00001000 
- 00032097  0x00008c65 lshift16  0x0000003f , 0x0000003f 
- 00032098  0x00008c66 iadd  0x00000012 , 0x00000012 
- 00032099  0x00008c67 rtn 
- 00032100  0x00008c6a bpatchx  0x000000f4 , 0x0000403e 
- 00032101  0x00008c6b arg  0x00000000 , 0x00000011 
- 00032102  0x00008c6c fetcht  0x00000004 , 0x0000467a 
- 00032103  0x00008c6d copy  0x00000022 , 0x00000012 
- 00032104  0x00008c6e copy  0x00000012 , 0x0000003f 
- 00032105  0x00008c6f isub  0x00000002 , 0x0000003e 
- 00032106  0x00008c70 ncall  0x00007d60 , 0x00000002 
- 00032107  0x00008c73 copy  0x00000012 , 0x0000003f 
- 00032108  0x00008c74 increase  0x000000a0 , 0x00000002 
- 00032109  0x00008c75 increase  0x000000a0 , 0x00000002 
- 00032110  0x00008c76 isub  0x00000002 , 0x0000003e 
- 00032111  0x00008c77 nbranch  0x00007d78 , 0x00000002 
- 00032112  0x00008c78 increase  0x00000001 , 0x00000011 
- 00032113  0x00008c79 and  0x00000011 , 0x0000000f , 0x0000003f 
- 00032114  0x00008c7a nbranch  0x00007d6b , 0x00000034 
- 00032115  0x00008c7b arg  0x00000000 , 0x00000011 
- 00032116  0x00008c7c call  0x00007d7f 
- 00032117  0x00008c7e copy  0x00000022 , 0x0000003f 
- 00032118  0x00008c7f store  0x00000004 , 0x0000467a 
- 00032119  0x00008c80 rtn 
- 00032120  0x00008c82 bpatchx  0x000000f5 , 0x0000403e 
- 00032121  0x00008c83 copy  0x00000011 , 0x0000003f 
- 00032122  0x00008c84 rtn  0x00000034 
- 00032123  0x00008c85 increase  0xffffff60 , 0x00000002 
- 00032124  0x00008c86 increase  0xffffff60 , 0x00000002 
- 00032125  0x00008c87 set0  0x0000001c , 0x00000002 
- 00032126  0x00008c88 storet  0x00000004 , 0x0000467a 
- 00032127  0x00008c8a branch  0x0000335f 
- 00032128  0x00008c92 jam  0x00000001 , 0x00004666 
- 00032129  0x00008c94 fetch  0x00000001 , 0x00004667 
- 00032130  0x00008c95 nbranch  0x00007d81 , 0x00000034 
- 00032131  0x00008c96 rtn 
- 00032132  0x00008c99 jam  0x00000000 , 0x00004666 
- 00032133  0x00008c9a rtn 
- 00032134  0x00008c9f bpatchx  0x000000f6 , 0x0000403e 
- 00032135  0x00008ca0 call  0x00007d80 
- 00032136  0x00008ca1 copy  0x00000011 , 0x0000003f 
- 00032137  0x00008ca2 store  0x00000004 , 0x00000a91 
- 00032138  0x00008ca3 arg  0x00004668 , 0x00000011 
- 00032139  0x00008ca4 call  0x00007fb8 
- 00032140  0x00008ca5 fetch  0x00000004 , 0x00000a91 
- 00032141  0x00008ca6 copy  0x0000003f , 0x00000011 
- 00032142  0x00008ca7 branch  0x00007d84 
- 00032143  0x00008caa bpatchx  0x000000f7 , 0x0000403e 
- 00032144  0x00008cab call  0x00007d80 
- 00032145  0x00008cac copy  0x00000011 , 0x0000003f 
- 00032146  0x00008cad store  0x00000004 , 0x00000a91 
- 00032147  0x00008cae arg  0x00004670 , 0x00000011 
- 00032148  0x00008caf call  0x00007fb8 
- 00032149  0x00008cb0 fetch  0x00000004 , 0x00000a91 
- 00032150  0x00008cb1 copy  0x0000003f , 0x00000011 
- 00032151  0x00008cb2 branch  0x00007d84 
- 00032152  0x00008cb5 setarg  0x00000000 
- 00032153  0x00008cb6 store  0x00000008 , 0x00004670 
- 00032154  0x00008cb7 store  0x00000008 , 0x00004668 
- 00032155  0x00008cb8 rtn 
- 00032156  0x00008cbb bpatchx  0x000000f8 , 0x0000403f 
- 00032157  0x00008cbc fetch  0x00000001 , 0x000041ce 
- 00032158  0x00008cbd nrtn  0x00000034 
- 00032159  0x00008cbe arg  0x00004670 , 0x00000011 
- 00032160  0x00008cbf call  0x00007fd0 
- 00032161  0x00008cc0 rtn  0x00000034 
- 00032162  0x00008cc1 jam  0x00000000 , 0x00000a90 
- 00032163  0x00008cc2 call  0x00007da7 
- 00032164  0x00008cc3 fetch  0x00000001 , 0x00000a90 
- 00032165  0x00008cc4 branch  0x00007d9c , 0x00000034 
- 00032166  0x00008cc5 rtn 
- 00032167  0x00008cc8 call  0x00007d80 
- 00032168  0x00008cc9 arg  0x00004670 , 0x00000011 
- 00032169  0x00008cca call  0x00007fc4 
- 00032170  0x00008ccb copy  0x0000003f , 0x00000002 
- 00032171  0x00008ccc call  0x00007d84 
- 00032172  0x00008ccd bpatchx  0x000000f9 , 0x0000403f 
- 00032173  0x00008cce copy  0x00000002 , 0x0000003f 
- 00032174  0x00008ccf rtn  0x00000034 
- 00032175  0x00008cd0 beq  0x00000001 , 0x00007ddd 
- 00032176  0x00008cd1 beq  0x00000002 , 0x00007de2 
- 00032177  0x00008cd2 beq  0x00000003 , 0x00007de8 
- 00032178  0x00008cd3 beq  0x00000007 , 0x00007ded 
- 00032179  0x00008cd4 beq  0x00000008 , 0x00007dee 
- 00032180  0x00008cd5 beq  0x00000009 , 0x00007def 
- 00032181  0x00008cd6 beq  0x0000000b , 0x00007df2 
- 00032182  0x00008cd7 beq  0x0000000c , 0x00007df3 
- 00032183  0x00008cd8 beq  0x0000000d , 0x00007df4 
- 00032184  0x00008cd9 beq  0x0000000e , 0x00007dfa 
- 00032185  0x00008cda beq  0x0000000f , 0x00007dff 
- 00032186  0x00008cdb beq  0x00000010 , 0x00007e05 
- 00032187  0x00008cdc beq  0x00000013 , 0x00007e0f 
- 00032188  0x00008cdd beq  0x00000014 , 0x00007e11 
- 00032189  0x00008cde beq  0x00000015 , 0x00007e13 
- 00032190  0x00008cdf beq  0x00000016 , 0x00007e15 
- 00032191  0x00008ce0 beq  0x00000017 , 0x00007e18 
- 00032192  0x00008ce1 beq  0x00000018 , 0x00007e1a 
- 00032193  0x00008ce2 beq  0x00000019 , 0x00007e1d 
- 00032194  0x00008ce3 beq  0x0000001b , 0x00007e25 
- 00032195  0x00008ce4 beq  0x0000001e , 0x00007e2f 
- 00032196  0x00008ce6 store  0x00000001 , 0x00000a99 
- 00032197  0x00008ce7 bpatchx  0x000000fa , 0x0000403f 
- 00032198  0x00008ce8 call  0x000062bc 
- 00032199  0x00008ce9 nbranch  0x00007ddb , 0x00000034 
- 00032200  0x00008ceb fetch  0x00000001 , 0x00000a99 
- 00032201  0x00008cec bmark0  0x00000009 , 0x00007dd6 
- 00032202  0x00008ced beq  0x00000004 , 0x00007dea 
- 00032203  0x00008cee beq  0x00000005 , 0x00004d17 
- 00032204  0x00008cef beq  0x00000006 , 0x00004d26 
- 00032205  0x00008cf0 beq  0x0000000a , 0x00007df0 
- 00032206  0x00008cf1 beq  0x00000011 , 0x00007e0a 
- 00032207  0x00008cf2 beq  0x00000012 , 0x00007e0e 
- 00032208  0x00008cf3 beq  0x0000001d , 0x00007e26 
- 00032209  0x00008cf4 beq  0x0000001f , 0x000067cc 
- 00032210  0x00008cf5 beq  0x00000020 , 0x000067d0 
- 00032211  0x00008cf6 beq  0x00000021 , 0x00007e31 
- 00032212  0x00008cf7 beq  0x00000025 , 0x0000670b 
- 00032213  0x00008cf8 rtn 
- 00032214  0x00008cfb store  0x00000001 , 0x00000a99 
- 00032215  0x00008cfc call  0x00002252 
- 00032216  0x00008cfd branch  0x00007ddb , 0x00000005 
- 00032217  0x00008cfe call  0x0000225a 
- 00032218  0x00008cff nrtn  0x00000005 
- 00032219  0x00008d01 jam  0x00000001 , 0x00000a90 
- 00032220  0x00008d02 branch  0x00007d8f 
- 00032221  0x00008d08 fetch  0x00000002 , 0x00004682 
- 00032222  0x00008d09 set1  0x00000006 
- 00032223  0x00008d0a store  0x00000002 , 0x00004682 
- 00032224  0x00008d0b jam  0x00000003 , 0x00004093 
- 00032225  0x00008d0c rtn 
- 00032226  0x00008d11 jam  0x00000000 , 0x00004680 
- 00032227  0x00008d12 jam  0x00000000 , 0x00004093 
- 00032228  0x00008d13 fetch  0x00000002 , 0x00004682 
- 00032229  0x00008d14 set0  0x00000006 
- 00032230  0x00008d15 store  0x00000002 , 0x00004682 
- 00032231  0x00008d16 rtn 
- 00032232  0x00008d1b jam  0x00000005 , 0x000041ce 
- 00032233  0x00008d1c rtn 
- 00032234  0x00008d21 jam  0x00000007 , 0x0000007c 
- 00032235  0x00008d22 jam  0x00000013 , 0x000004ca 
- 00032236  0x00008d23 rtn 
- 00032237  0x00008d28 rtn 
- 00032238  0x00008d2d rtn 
- 00032239  0x00008d32 rtn 
- 00032240  0x00008d37 jam  0x00000002 , 0x000004d4 
- 00032241  0x00008d38 branch  0x00004d0a 
- 00032242  0x00008d3d rtn 
- 00032243  0x00008d42 rtn 
- 00032244  0x00008d47 jam  0x00000001 , 0x0000436e 
- 00032245  0x00008d48 jam  0x00000000 , 0x00004484 
- 00032246  0x00008d49 fetch  0x00000002 , 0x00004682 
- 00032247  0x00008d4a set1  0x0000000b , 0x0000003f 
- 00032248  0x00008d4b store  0x00000002 , 0x00004682 
- 00032249  0x00008d4c rtn 
- 00032250  0x00008d51 fetch  0x00000002 , 0x00004682 
- 00032251  0x00008d52 set0  0x0000000b , 0x0000003f 
- 00032252  0x00008d53 store  0x00000002 , 0x00004682 
- 00032253  0x00008d54 jam  0x00000000 , 0x0000436e 
- 00032254  0x00008d55 rtn 
- 00032255  0x00008d5a jam  0x00000001 , 0x0000436e 
- 00032256  0x00008d5b jam  0x00000001 , 0x00004484 
- 00032257  0x00008d5c fetch  0x00000002 , 0x00004682 
- 00032258  0x00008d5d set1  0x0000000b , 0x0000003f 
- 00032259  0x00008d5e store  0x00000002 , 0x00004682 
- 00032260  0x00008d5f rtn 
- 00032261  0x00008d64 fetch  0x00000002 , 0x00004682 
- 00032262  0x00008d65 set0  0x0000000b , 0x0000003f 
- 00032263  0x00008d66 store  0x00000002 , 0x00004682 
- 00032264  0x00008d67 jam  0x00000000 , 0x0000436e 
- 00032265  0x00008d68 rtn 
- 00032266  0x00008d6d setarg  0x00000014 
- 00032267  0x00008d6e store  0x00000002 , 0x0000046d 
- 00032268  0x00008d6f store  0x00000002 , 0x000044ba 
- 00032269  0x00008d70 branch  0x00005c92 
- 00032270  0x00008d75 branch  0x00005abf 
- 00032271  0x00008d7a arg  0x00000000 , 0x00000011 
- 00032272  0x00008d7b branch  0x00007d19 
- 00032273  0x00008d80 arg  0x00000000 , 0x00000011 
- 00032274  0x00008d81 branch  0x00007d14 
- 00032275  0x00008d86 arg  0x00000000 , 0x00000011 
- 00032276  0x00008d87 branch  0x00007d1e 
- 00032277  0x00008d8c jam  0x00000001 , 0x00004369 
- 00032278  0x00008d8d jam  0x0000001b , 0x000041ce 
- 00032279  0x00008d90 rtn 
- 00032280  0x00008d95 jam  0x00000001 , 0x00004369 
- 00032281  0x00008d96 rtn 
- 00032282  0x00008d9b jam  0x00000000 , 0x00004369 
- 00032283  0x00008d9c jam  0x00000000 , 0x000041ce 
- 00032284  0x00008d9d rtn 
- 00032285  0x00008da2 fetch  0x00000002 , 0x000041eb 
- 00032286  0x00008da3 call  0x00007f9c 
- 00032287  0x00008da4 fetch  0x00000001 , 0x00004686 
- 00032288  0x00008da5 beq  0x000000ff , 0x00007e23 
- 00032289  0x00008da6 copy  0x0000003f , 0x00000002 
- 00032290  0x00008da7 call  0x000067fb 
- 00032291  0x00008da9 call  0x00007d98 
- 00032292  0x00008daa branch  0x00002b1f 
- 00032293  0x00008daf branch  0x00005b02 
- 00032294  0x00008db4 jam  0x00000034 , 0x0000007c 
- 00032295  0x00008db5 set1  0x00000003 , 0x00000000 
- 00032296  0x00008db6 nrtn  0x00000029 
- 00032297  0x00008db7 jam  0x00000000 , 0x0000455b 
- 00032298  0x00008db8 jam  0x00000013 , 0x0000007c 
- 00032299  0x00008db9 fetch  0x00000001 , 0x0000016d 
- 00032300  0x00008dba set0  0x00000002 , 0x0000003f 
- 00032301  0x00008dbb store  0x00000001 , 0x0000016d 
- 00032302  0x00008dbc rtn 
- 00032303  0x00008dc1 force  0x00000003 , 0x00000007 
- 00032304  0x00008dc2 branch  0x00007f07 
- 00032305  0x00008dc7 call  0x000062f8 
- 00032306  0x00008dc8 jam  0x00000041 , 0x0000007d 
- 00032307  0x00008dc9 branch  0x00005f9d 
- 00032308  0x00008dcd fetch  0x00000001 , 0x00004682 
- 00032309  0x00008dce rtnbit0  0x0000000c 
- 00032310  0x00008dcf rtnbit0  0x00000007 
- 00032311  0x00008dd0 branch  0x00007e2f 
- 00032312  0x00008dd6 fetch  0x00000002 , 0x00004218 
- 00032313  0x00008dd7 add  0x0000003f , 0x00000002 , 0x00000005 
- 00032314  0x00008dd8 setarg  0x00000000 
- 00032315  0x00008dd9 istore  0x00000003 , 0x00000005 
- 00032316  0x00008dda rtn 
- 00032317  0x00008ddf call  0x00007fe9 
- 00032318  0x00008de0 call  0x00007e69 
- 00032319  0x00008de1 rtn  0x00000034 
- 00032320  0x00008de2 fetch  0x00000002 , 0x00004218 
- 00032321  0x00008de3 add  0x0000003f , 0x00000002 , 0x00000012 
- 00032322  0x00008de4 ifetcht  0x00000001 , 0x00000012 
- 00032323  0x00008de5 increase  0x00000001 , 0x00000002 
- 00032324  0x00008de6 istoret  0x00000001 , 0x00000012 
- 00032325  0x00008de8 ifetcht  0x00000001 , 0x0000003f 
- 00032326  0x00008de9 copy  0x00000002 , 0x00000039 
- 00032327  0x00008dea add  0x0000003f , 0x00000004 , 0x00000012 
- 00032328  0x00008deb ifetch  0x00000001 , 0x00000012 
- 00032329  0x00008dec imul32  0x00000002 , 0x0000003f 
- 00032330  0x00008ded iadd  0x00000006 , 0x00000005 
- 00032331  0x00008dee copy  0x00000011 , 0x00000006 
- 00032332  0x00008df0 call  0x00007f01 
- 00032333  0x00008df1 call  0x00007e6d 
- 00032334  0x00008df2 pincrease  0xffffffff 
- 00032335  0x00008df3 ifetcht  0x00000001 , 0x00000012 
- 00032336  0x00008df4 increase  0x00000001 , 0x00000002 
- 00032337  0x00008df5 iand  0x00000002 , 0x00000002 
- 00032338  0x00008df6 istoret  0x00000001 , 0x00000012 
- 00032339  0x00008df7 branch  0x00007fe7 
- 00032340  0x00008dfd call  0x00007fe9 
- 00032341  0x00008dfe call  0x00007e65 
- 00032342  0x00008dff rtn  0x00000034 
- 00032343  0x00008e00 fetch  0x00000002 , 0x00004218 
- 00032344  0x00008e01 add  0x0000003f , 0x00000002 , 0x00000012 
- 00032345  0x00008e02 ifetcht  0x00000001 , 0x00000012 
- 00032346  0x00008e03 increase  0xffffffff , 0x00000002 
- 00032347  0x00008e04 istoret  0x00000001 , 0x00000012 
- 00032348  0x00008e05 ifetcht  0x00000001 , 0x0000003f 
- 00032349  0x00008e06 copy  0x00000002 , 0x00000039 
- 00032350  0x00008e07 add  0x0000003f , 0x00000003 , 0x00000012 
- 00032351  0x00008e08 ifetch  0x00000001 , 0x00000012 
- 00032352  0x00008e09 imul32  0x00000002 , 0x0000003f 
- 00032353  0x00008e0a iadd  0x00000006 , 0x00000006 
- 00032354  0x00008e0b increase  0x00000001 , 0x00000006 
- 00032355  0x00008e0c copy  0x00000011 , 0x00000005 
- 00032356  0x00008e0d branch  0x00007e4c 
- 00032357  0x00008e12 fetch  0x00000002 , 0x00004218 
- 00032358  0x00008e13 add  0x0000003f , 0x00000002 , 0x00000006 
- 00032359  0x00008e14 ifetch  0x00000001 , 0x00000006 
- 00032360  0x00008e15 rtn 
- 00032361  0x00008e19 call  0x00007e6d 
- 00032362  0x00008e1a ifetcht  0x00000001 , 0x00000006 
- 00032363  0x00008e1b isub  0x00000002 , 0x0000003f 
- 00032364  0x00008e1c rtn 
- 00032365  0x00008e20 fetch  0x00000002 , 0x00004218 
- 00032366  0x00008e21 add  0x0000003f , 0x00000001 , 0x00000006 
- 00032367  0x00008e22 ifetch  0x00000001 , 0x00000006 
- 00032368  0x00008e23 rtn 
- 00032369  0x00008e2c sub  0x00000039 , 0x00000000 , 0x0000003e 
- 00032370  0x00008e2d rtn  0x00000005 
- 00032371  0x00008e2f rshift  0x0000003f , 0x0000003f 
- 00032372  0x00008e30 loop  0x00007e73 
- 00032373  0x00008e31 rtn 
- 00032374  0x00008e35 force  0x00000001 , 0x0000003f 
- 00032375  0x00008e36 sub  0x00000039 , 0x00000000 , 0x0000003e 
- 00032376  0x00008e37 rtn  0x00000005 
- 00032377  0x00008e39 lshift  0x0000003f , 0x0000003f 
- 00032378  0x00008e3a loop  0x00007e79 
- 00032379  0x00008e3b rtn 
- 00032380  0x00008e3d deposit  0x00000005 
- 00032381  0x00008e3e store  0x00000002 , 0x00000abb 
- 00032382  0x00008e3f storet  0x00000008 , 0x00000aa2 
- 00032383  0x00008e40 deposit  0x0000000b 
- 00032384  0x00008e41 store  0x00000004 , 0x00000aaa 
- 00032385  0x00008e42 call  0x00007e85 
- 00032386  0x00008e43 deposit  0x00000006 
- 00032387  0x00008e44 store  0x00000002 , 0x00000ab9 
- 00032388  0x00008e45 rtn 
- 00032389  0x00008e48 deposit  0x00000011 
- 00032390  0x00008e49 store  0x00000004 , 0x00000aae 
- 00032391  0x00008e4a deposit  0x00000012 
- 00032392  0x00008e4b store  0x00000004 , 0x00000ab2 
- 00032393  0x00008e4c deposit  0x00000013 
- 00032394  0x00008e4d store  0x00000003 , 0x00000ab6 
- 00032395  0x00008e4e rtn 
- 00032396  0x00008e51 fetcht  0x00000008 , 0x00000aa2 
- 00032397  0x00008e52 fetch  0x00000004 , 0x00000aaa 
- 00032398  0x00008e53 iforce  0x0000000b 
- 00032399  0x00008e54 call  0x00007e95 
- 00032400  0x00008e55 fetch  0x00000002 , 0x00000abb 
- 00032401  0x00008e56 iforce  0x00000005 
- 00032402  0x00008e57 fetch  0x00000002 , 0x00000ab9 
- 00032403  0x00008e58 iforce  0x00000006 
- 00032404  0x00008e59 rtn 
- 00032405  0x00008e5c fetch  0x00000004 , 0x00000aae 
- 00032406  0x00008e5d iforce  0x00000011 
- 00032407  0x00008e5e fetch  0x00000004 , 0x00000ab2 
- 00032408  0x00008e5f iforce  0x00000012 
- 00032409  0x00008e60 fetch  0x00000003 , 0x00000ab6 
- 00032410  0x00008e61 iforce  0x00000013 
- 00032411  0x00008e62 rtn 
- 00032412  0x00008e65 fetch  0x00000002 , 0x00000abb 
- 00032413  0x00008e66 copy  0x0000003f , 0x00000005 
- 00032414  0x00008e67 rtn 
- 00032415  0x00008e69 fetch  0x00000002 , 0x00000ab9 
- 00032416  0x00008e6a copy  0x0000003f , 0x00000006 
- 00032417  0x00008e6b rtn 
- 00032418  0x00008e6d copy  0x00000005 , 0x0000003f 
- 00032419  0x00008e6e store  0x00000002 , 0x00000abb 
- 00032420  0x00008e6f rtn 
- 00032421  0x00008e71 copy  0x00000006 , 0x0000003f 
- 00032422  0x00008e72 store  0x00000002 , 0x00000ab9 
- 00032423  0x00008e73 rtn 
- 00032424  0x00008e78 copy  0x00000005 , 0x0000003f 
- 00032425  0x00008e79 store  0x00000002 , 0x00000a97 
- 00032426  0x00008e7a copy  0x00000006 , 0x0000003f 
- 00032427  0x00008e7b store  0x00000002 , 0x00000a95 
- 00032428  0x00008e7c rtn 
- 00032429  0x00008e7e fetch  0x00000002 , 0x00000a97 
- 00032430  0x00008e7f copy  0x0000003f , 0x00000005 
- 00032431  0x00008e80 fetch  0x00000002 , 0x00000a95 
- 00032432  0x00008e81 copy  0x0000003f , 0x00000006 
- 00032433  0x00008e82 rtn 
- 00032434  0x00008e85 call  0x00007ebd 
- 00032435  0x00008e87 call  0x00007ebd 
- 00032436  0x00008e88 branch  0x00007ebd 
- 00032437  0x00008e8a call  0x00007eb9 
- 00032438  0x00008e8c ifetch  0x00000004 , 0x00000006 
- 00032439  0x00008e8d istore  0x00000004 , 0x00000005 
- 00032440  0x00008e8e rtn 
- 00032441  0x00008e90 ifetch  0x00000008 , 0x00000006 
- 00032442  0x00008e91 istore  0x00000008 , 0x00000005 
- 00032443  0x00008e92 rtn 
- 00032444  0x00008e95 call  0x00007ebf 
- 00032445  0x00008e97 call  0x00007eb9 
- 00032446  0x00008e99 call  0x00007eb9 
- 00032447  0x00008e9b call  0x00007eb9 
- 00032448  0x00008e9c branch  0x00007eb9 
- 00032449  0x00008ea1 arg  0x0000000a , 0x00000039 
- 00032450  0x00008ea3 nop  0x00002ee0 
- 00032451  0x00008ea4 loop  0x00007ec2 
- 00032452  0x00008ea5 rtn 
- 00032453  0x00008ea8 force  0x00000003 , 0x00000039 
- 00032454  0x00008eaa force  0x00000000 , 0x0000003f 
- 00032455  0x00008eac istore  0x00000008 , 0x00000005 
- 00032456  0x00008ead loop  0x00007ec7 
- 00032457  0x00008eae rtn 
- 00032458  0x00008eb1 force  0x00000000 , 0x0000003f 
- 00032459  0x00008eb2 istore  0x00000008 , 0x00000005 
- 00032460  0x00008eb3 rtn 
- 00032461  0x00008eb5 force  0x00000000 , 0x0000003f 
- 00032462  0x00008eb6 istore  0x00000004 , 0x00000005 
- 00032463  0x00008eb7 rtn 
- 00032464  0x00008eba force  0x00000004 , 0x00000039 
- 00032465  0x00008ebb branch  0x00007ec6 
- 00032466  0x00008ebd force  0x00000008 , 0x00000039 
- 00032467  0x00008ebe branch  0x00007ec6 
- 00032468  0x00008ec1 deposit  0x00000039 
- 00032469  0x00008ec2 rtn  0x00000034 
- 00032470  0x00008ec3 setarg  0x00000000 
- 00032471  0x00008ec5 istore  0x00000001 , 0x00000005 
- 00032472  0x00008ec6 loop  0x00007ed7 
- 00032473  0x00008ec7 rtn 
- 00032474  0x00008ecb arg  0x00000020 , 0x00000039 
- 00032475  0x00008ecc arg  0x00000ac2 , 0x00000005 
- 00032476  0x00008ecd branch  0x00007ed4 
- 00032477  0x00008ed0 ifetch  0x00000004 , 0x00000013 
- 00032478  0x00008ed1 ifetcht  0x00000004 , 0x00000011 
- 00032479  0x00008ed2 ixor  0x00000002 , 0x0000003f 
- 00032480  0x00008ed3 istore  0x00000004 , 0x00000005 
- 00032481  0x00008ed4 increase  0x00000004 , 0x00000011 
- 00032482  0x00008ed5 increase  0x00000004 , 0x00000013 
- 00032483  0x00008ed6 loop  0x00007edd 
- 00032484  0x00008ed7 rtn 
- 00032485  0x00008edc bpatchx  0x000000fb , 0x0000403f 
- 00032486  0x00008edd copy  0x00000039 , 0x0000003f 
- 00032487  0x00008ede sub  0x0000003f , 0x00000001 , 0x0000003e 
- 00032488  0x00008edf rtn  0x00000002 
- 00032489  0x00008ee0 iadd  0x00000011 , 0x00000012 
- 00032490  0x00008ee1 increase  0xffffffff , 0x00000012 
- 00032491  0x00008ee2 rshift  0x00000039 , 0x00000039 
- 00032492  0x00008ee4 ifetcht  0x00000001 , 0x00000011 
- 00032493  0x00008ee5 ifetch  0x00000001 , 0x00000012 
- 00032494  0x00008ee6 istore  0x00000001 , 0x00000011 
- 00032495  0x00008ee7 istoret  0x00000001 , 0x00000012 
- 00032496  0x00008ee8 increase  0xffffffff , 0x00000012 
- 00032497  0x00008ee9 increase  0x00000001 , 0x00000011 
- 00032498  0x00008eea loop  0x00007eec 
- 00032499  0x00008eeb rtn 
- 00032500  0x00008eef deposit  0x00000039 
- 00032501  0x00008ef0 rtn  0x00000034 
- 00032502  0x00008ef2 increase  0xfffffff8 , 0x00000039 
- 00032503  0x00008ef3 call  0x00007eb9 , 0x00000002 
- 00032504  0x00008ef4 rtn  0x00000005 
- 00032505  0x00008ef5 branch  0x00007ef6 , 0x00000002 
- 00032506  0x00008ef6 increase  0x00000008 , 0x00000039 
- 00032507  0x00008ef8 increase  0xfffffffc , 0x00000039 
- 00032508  0x00008ef9 call  0x00007eb6 , 0x00000002 
- 00032509  0x00008efa rtn  0x00000005 
- 00032510  0x00008efb branch  0x00007efb , 0x00000002 
- 00032511  0x00008efc increase  0x00000004 , 0x00000039 
- 00032512  0x00008efd branch  0x00007f01 
- 00032513  0x00008f00 deposit  0x00000039 
- 00032514  0x00008f01 rtn  0x00000034 
- 00032515  0x00008f03 ifetch  0x00000001 , 0x00000006 
- 00032516  0x00008f04 istore  0x00000001 , 0x00000005 
- 00032517  0x00008f05 loop  0x00007f03 
- 00032518  0x00008f06 rtn 
- 00032519  0x00008f09 setarg  0x00000000 
- 00032520  0x00008f0b rshift  0x00000022 , 0x00000002 
- 00032521  0x00008f0c storet  0x00000004 , 0x00004094 
- 00032522  0x00008f0d arg  0x0000419d , 0x00000005 
- 00032523  0x00008f0e iforce  0x00000002 
- 00032524  0x00008f0f lshift  0x00000007 , 0x0000003f 
- 00032525  0x00008f10 iadd  0x00000005 , 0x00000005 
- 00032526  0x00008f11 istoret  0x00000002 , 0x00000005 
- 00032527  0x00008f12 bpatchx  0x000000fc , 0x0000403f 
- 00032528  0x00008f13 rtn 
- 00032529  0x00008f16 arg  0x00000800 , 0x0000000b 
- 00032530  0x00008f17 lshift16  0x0000000b , 0x0000000b 
- 00032531  0x00008f18 iadd  0x0000000b , 0x0000003f 
- 00032532  0x00008f19 rtn 
- 00032533  0x00008f1d arg  0x00000000 , 0x00000007 
- 00032534  0x00008f1f bpatchx  0x000000fd , 0x0000403f 
- 00032535  0x00008f20 fetcht  0x00000004 , 0x00004094 
- 00032536  0x00008f21 rshift  0x00000022 , 0x0000003f 
- 00032537  0x00008f22 store  0x00000004 , 0x00004094 
- 00032538  0x00008f23 isub  0x00000002 , 0x0000003e 
- 00032539  0x00008f24 ncall  0x00007f11 , 0x00000002 
- 00032540  0x00008f25 isub  0x00000002 , 0x0000000b 
- 00032541  0x00008f26 copy  0x0000000b , 0x00000002 
- 00032542  0x00008f27 arg  0x0000419d , 0x00000006 
- 00032543  0x00008f28 copy  0x00000006 , 0x00000005 
- 00032544  0x00008f29 arg  0x00000010 , 0x00000039 
- 00032545  0x00008f2b ifetch  0x00000002 , 0x00000006 
- 00032546  0x00008f2c isub  0x00000002 , 0x0000003f 
- 00032547  0x00008f2d branch  0x00007f25 , 0x00000002 
- 00032548  0x00008f2e force  0x00000000 , 0x0000003f 
- 00032549  0x00008f30 istore  0x00000002 , 0x00000005 
- 00032550  0x00008f31 loop  0x00007f21 
- 00032551  0x00008f32 arg  0x0000419d , 0x00000006 
- 00032552  0x00008f33 lshift  0x00000007 , 0x0000003f 
- 00032553  0x00008f34 iadd  0x00000006 , 0x00000006 
- 00032554  0x00008f35 ifetch  0x00000002 , 0x00000006 
- 00032555  0x00008f36 rtn 
- 00032556  0x00008f3c iadd  0x00000002 , 0x00000002 
- 00032557  0x00008f3d copy  0x00000002 , 0x00000039 
- 00032558  0x00008f3e setarg  0x00000ea6 
- 00032559  0x00008f3f isub  0x00000039 , 0x0000003f 
- 00032560  0x00008f40 rtn  0x00000002 
- 00032561  0x00008f41 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00032562  0x00008f42 rshift16  0x00000002 , 0x00000002 
- 00032563  0x00008f43 increase  0x00000001 , 0x00000002 
- 00032564  0x00008f44 lshift16  0x00000002 , 0x00000002 
- 00032565  0x00008f45 ior  0x00000002 , 0x00000002 
- 00032566  0x00008f46 rtn 
- 00032567  0x00008f49 call  0x00007f39 
- 00032568  0x00008f4a branch  0x00007f43 
- 00032569  0x00008f4e disable  0x00000028 
- 00032570  0x00008f4f isub  0x00000002 , 0x0000003f 
- 00032571  0x00008f50 branch  0x00007f3e , 0x00000002 
- 00032572  0x00008f51 enable  0x00000028 
- 00032573  0x00008f52 sub  0x0000003f , 0x00000000 , 0x0000003f 
- 00032574  0x00008f54 rtnbit0  0x0000000f 
- 00032575  0x00008f55 arg  0xffff0ea6 , 0x00000002 
- 00032576  0x00008f56 iadd  0x00000002 , 0x0000003f 
- 00032577  0x00008f57 set0  0x00000040 , 0x0000003f 
- 00032578  0x00008f58 rtn 
- 00032579  0x00008f5b iforce  0x00000006 
- 00032580  0x00008f5c rshift16  0x0000003f , 0x0000003f 
- 00032581  0x00008f5d arg  0x00000ea6 , 0x00000002 
- 00032582  0x00008f5e imul32  0x00000002 , 0x0000003f 
- 00032583  0x00008f5f iadd  0x00000006 , 0x0000003f 
- 00032584  0x00008f60 rtn 
- 00032585  0x00008f64 lshift8  0x0000003f , 0x0000003f 
- 00032586  0x00008f65 lshift4  0x0000003f , 0x0000003f 
- 00032587  0x00008f66 fetcht  0x00000003 , 0x0000416f 
- 00032588  0x00008f67 idiv  0x00000002 
- 00032589  0x00008f68 call  0x00007f86 
- 00032590  0x00008f69 quotient  0x00000002 
- 00032591  0x00008f6a rtn 
- 00032592  0x00008f6e arg  0x00000ea6 , 0x00000002 
- 00032593  0x00008f6f idiv  0x00000002 
- 00032594  0x00008f70 call  0x00007f86 
- 00032595  0x00008f71 quotient  0x0000003f 
- 00032596  0x00008f72 lshift16  0x0000003f , 0x0000003f 
- 00032597  0x00008f73 remainder  0x00000002 
- 00032598  0x00008f74 ior  0x00000002 , 0x00000002 
- 00032599  0x00008f75 rtn 
- 00032600  0x00008f7d arg  0x00000000 , 0x00000002 
- 00032601  0x00008f7f copy  0x00000002 , 0x00000013 
- 00032602  0x00008f80 ifetch  0x00000001 , 0x00000003 
- 00032603  0x00008f81 call  0x00007f64 
- 00032604  0x00008f82 copy  0x00000013 , 0x00000002 
- 00032605  0x00008f83 call  0x00007f95 
- 00032606  0x00008f84 arg  0x0000000a , 0x00000012 
- 00032607  0x00008f85 imul32  0x00000012 , 0x0000003f 
- 00032608  0x00008f86 iadd  0x00000002 , 0x0000003f 
- 00032609  0x00008f87 copy  0x0000003f , 0x00000002 
- 00032610  0x00008f88 loop  0x00007f59 
- 00032611  0x00008f89 rtn 
- 00032612  0x00008f8e arg  0x0000003a , 0x00000002 
- 00032613  0x00008f8f isub  0x00000002 , 0x0000003e 
- 00032614  0x00008f90 nbranch  0x00007f6d , 0x00000002 
- 00032615  0x00008f91 arg  0x00000061 , 0x00000002 
- 00032616  0x00008f92 isub  0x00000002 , 0x0000003e 
- 00032617  0x00008f93 branch  0x00007f70 , 0x00000002 
- 00032618  0x00008f94 arg  0x00000037 , 0x00000002 
- 00032619  0x00008f95 isub  0x00000002 , 0x0000003f 
- 00032620  0x00008f96 rtn 
- 00032621  0x00008f98 arg  0x00000030 , 0x00000002 
- 00032622  0x00008f99 isub  0x00000002 , 0x0000003f 
- 00032623  0x00008f9a rtn 
- 00032624  0x00008f9c arg  0x00000057 , 0x00000002 
- 00032625  0x00008f9d isub  0x00000002 , 0x0000003f 
- 00032626  0x00008f9e rtn 
- 00032627  0x00008fa1 copy  0x00000002 , 0x00000030 
- 00032628  0x00008fa2 setarg  0x000001ff 
- 00032629  0x00008fa3 force  0x00000000 , 0x00000012 
- 00032630  0x00008fa5 rshift3  0x0000003f , 0x00000011 
- 00032631  0x00008fa6 rshift  0x00000011 , 0x00000011 
- 00032632  0x00008fa7 ixor  0x00000011 , 0x00000011 
- 00032633  0x00008fa8 isolate1  0x00000000 , 0x00000011 
- 00032634  0x00008fa9 setflag  0x00000001 , 0x00000009 , 0x0000003f 
- 00032635  0x00008faa rshift  0x00000002 , 0x00000002 
- 00032636  0x00008fab isolate1  0x00000000 , 0x0000003f 
- 00032637  0x00008fac setflag  0x00000001 , 0x00000007 , 0x00000002 
- 00032638  0x00008fad rshift  0x0000003f , 0x0000003f 
- 00032639  0x00008fae increase  0x00000001 , 0x00000012 
- 00032640  0x00008faf compare  0x00000000 , 0x00000012 , 0x00000007 
- 00032641  0x00008fb0 nbranch  0x00007f76 , 0x00000001 
- 00032642  0x00008fb1 istoret  0x00000001 , 0x00000005 
- 00032643  0x00008fb2 loop  0x00007f76 
- 00032644  0x00008fb3 copy  0x00000030 , 0x00000002 
- 00032645  0x00008fb4 rtn 
- 00032646  0x00008fb8 rtn  0x00000035 
- 00032647  0x00008fb9 branch  0x00007f86 
- 00032648  0x00008fc5 ifetch  0x00000001 , 0x00000011 
- 00032649  0x00008fc6 ifetcht  0x00000001 , 0x00000012 
- 00032650  0x00008fc7 isub  0x00000002 , 0x0000003e 
- 00032651  0x00008fc8 nrtn  0x00000005 
- 00032652  0x00008fc9 increase  0x00000001 , 0x00000011 
- 00032653  0x00008fca increase  0x00000001 , 0x00000012 
- 00032654  0x00008fcb loop  0x00007f88 
- 00032655  0x00008fcc force  0x00000000 , 0x0000003e 
- 00032656  0x00008fcd rtn 
- 00032657  0x00008fd1 isub  0x00000002 , 0x0000003e 
- 00032658  0x00008fd2 nrtn  0x00000002 
- 00032659  0x00008fd3 deposit  0x00000002 
- 00032660  0x00008fd4 rtn 
- 00032661  0x00008fd7 iadd  0x00000002 , 0x0000003f 
- 00032662  0x00008fd8 isub  0x00000002 , 0x00000002 
- 00032663  0x00008fd9 isub  0x00000002 , 0x0000003f 
- 00032664  0x00008fda rtn 
- 00032665  0x00008fdd arg  0x00000200 , 0x00000039 
- 00032666  0x00008fde arg  0x00004000 , 0x00000005 
- 00032667  0x00008fdf branch  0x00007ec6 
- 00032668  0x00008fe3 rtn  0x00000034 
- 00032669  0x00008fe4 copy  0x0000003f , 0x0000003d 
- 00032670  0x00008fe8 hfetch  0x00000002 , 0x0000810e 
- 00032671  0x00008fe9 nbranch  0x00007f9e , 0x00000034 
- 00032672  0x00008fea rtn 
- 00032673  0x00008fed jam  0x00000001 , 0x00008203 
- 00032674  0x00008fee rtn 
- 00032675  0x00008ff1 hstore  0x00000002 , 0x00008205 
- 00032676  0x00008ff2 hfetch  0x00000001 , 0x00008203 
- 00032677  0x00008ff3 set1  0x00000004 , 0x0000003f 
- 00032678  0x00008ff4 hstore  0x00000001 , 0x00008203 
- 00032679  0x00008ff5 rtn 
- 00032680  0x00008ff7 hstore  0x00000002 , 0x00008207 
- 00032681  0x00008ff8 hfetch  0x00000001 , 0x00008203 
- 00032682  0x00008ff9 set1  0x00000006 , 0x0000003f 
- 00032683  0x00008ffa hstore  0x00000001 , 0x00008203 
- 00032684  0x00008ffb rtn 
- 00032685  0x00008ffe hstore  0x00000002 , 0x00008205 
- 00032686  0x00008fff jam  0x00000030 , 0x00008203 
- 00032687  0x00009000 rtn 
- 00032688  0x00009005 hfetch  0x00000001 , 0x00008043 
- 00032689  0x00009006 set0  0x00000004 , 0x0000003f 
- 00032690  0x00009007 hstore  0x00000001 , 0x00008043 
- 00032691  0x00009008 rtn 
- 00032692  0x0000900b hfetch  0x00000002 , 0x0000810e 
- 00032693  0x0000900c arg  0x00000200 , 0x00000002 
- 00032694  0x0000900e isub  0x00000002 , 0x0000003e 
- 00032695  0x0000900f rtn 
- 00032696  0x00009016 bpatchx  0x000000fe , 0x0000403f 
- 00032697  0x00009017 ifetcht  0x00000008 , 0x00000011 
- 00032698  0x00009018 and  0x00000002 , 0x000000ff , 0x0000003f 
- 00032699  0x00009019 nbranch  0x00007fbe , 0x00000034 
- 00032700  0x0000901a rshift8  0x00000002 , 0x0000003f 
- 00032701  0x0000901b istore  0x00000008 , 0x00000011 
- 00032702  0x0000901d increase  0x00000007 , 0x00000011 
- 00032703  0x0000901e ifetch  0x00000001 , 0x00000011 
- 00032704  0x0000901f nbranch  0x00002a8c , 0x00000034 
- 00032705  0x00009020 fetch  0x00000001 , 0x00000a99 
- 00032706  0x00009021 istore  0x00000001 , 0x00000011 
- 00032707  0x00009022 rtn 
- 00032708  0x00009028 bpatchx  0x000000ff , 0x0000403f 
- 00032709  0x00009029 arg  0x00000008 , 0x00000039 
- 00032710  0x0000902a ifetch  0x00000008 , 0x00000011 
- 00032711  0x0000902b rtn  0x00000034 
- 00032712  0x0000902d ifetch  0x00000001 , 0x00000011 
- 00032713  0x0000902e nbranch  0x00007fcd , 0x00000034 
- 00032714  0x0000902f increase  0x00000001 , 0x00000011 
- 00032715  0x00009030 loop  0x00007fc8 
- 00032716  0x00009031 branch  0x00002a8c 
- 00032717  0x00009033 arg  0x00000000 , 0x00000002 
- 00032718  0x00009034 istoret  0x00000001 , 0x00000011 
- 00032719  0x00009035 rtn 
- 00032720  0x0000903b ifetch  0x00000008 , 0x00000011 
- 00032721  0x0000903c rtn 
- 00032722  0x00009042 ifetch  0x00000001 , 0x00000011 
- 00032723  0x00009043 rtn 
- 00032724  0x00009047 ifetch  0x00000002 , 0x00000011 
- 00032725  0x00009048 rtn 
- 00032726  0x0000904d arg  0x00000000 , 0x00000002 
- 00032727  0x0000904f fetch  0x00000001 , 0x00000006 
- 00032728  0x00009050 loop  0x00007fd7 , 0x00000034 
- 00032729  0x00009051 increase  0x00000001 , 0x00000002 
- 00032730  0x00009052 loop  0x00007fd7 
- 00032731  0x00009053 copy  0x00000002 , 0x0000003f 
- 00032732  0x00009054 rtn 
- 00032733  0x00009057 isub  0x00000002 , 0x0000003e 
- 00032734  0x00009058 nrtn  0x00000002 
- 00032735  0x00009059 copy  0x00000002 , 0x0000003f 
- 00032736  0x0000905a rtn 
- 00032737  0x0000905e force  0xffffffff , 0x0000003e 
- 00032738  0x0000905f rtn 
- 00032739  0x00009062 force  0x00000001 , 0x0000003e 
- 00032740  0x00009063 rtn 
- 00032741  0x00009065 force  0x00000000 , 0x0000003e 
- 00032742  0x00009066 rtn 
- 00032743  0x00009069 enable  0x00000028 
- 00032744  0x0000906a rtn 
- 00032745  0x0000906d disable  0x00000028 
- 00032746  0x0000906e rtn 
- 00032747  0x00009071 enable  0x0000002c 
- 00032748  0x00009072 rtn 
- 00032749  0x00009075 disable  0x0000002c 
- 00032750  0x00009076 rtn 
- 00032751  0x00009079 setarg  0x00000001 
- 00032752  0x0000907a rtn 
- 00032753  0x0000907d setarg  0x00000000 
- 00032754  0x0000907e rtn 
- 00032755  0x00009082 copy  0x00000039 , 0x0000003f 
- 00032756  0x00009083 rtn  0x00000034 
- 00032757  0x00009084 copy  0x00000006 , 0x0000003f 
- 00032758  0x00009085 iadd  0x00000039 , 0x0000003f 
- 00032759  0x00009086 increase  0xffffffff , 0x0000003f 
- 00032760  0x00009087 copy  0x0000003f , 0x00000006 
- 00032761  0x00009089 ifetch  0x00000001 , 0x00000006 
- 00032762  0x0000908a increase  0xfffffffe , 0x00000006 
- 00032763  0x0000908b istore  0x00000001 , 0x00000005 
- 00032764  0x0000908c loop  0x00007ff9 
- 00032765  0x0000908d rtn 
- 00065537  0x00009093 beq  0x00000000 , 0x00010003 
- 00065538  0x00009094 rtn 
- 00065539  0x00009097 fetch  0x00000001 , 0x0000000e 
- 00065540  0x00009098 increase  0x00000001 , 0x0000003f 
- 00065541  0x00009099 store  0x00000001 , 0x0000000e 
- 00065542  0x0000909a call  0x00002435 
- 00065543  0x0000909c set1  0x0000002c , 0x00000000 
- 00065544  0x0000909d call  0x000022f2 
- 00065545  0x0000909e branch  0x0001000e , 0x00000018 
- 00065546  0x0000909f set0  0x0000002c , 0x00000000 
- 00065547  0x000090a0 call  0x00002455 
- 00065548  0x000090a1 nbranch  0x00010007 , 0x00000034 
- 00065549  0x000090a2 branch  0x000020fc 
- 00065550  0x000090a4 set0  0x0000002c , 0x00000000 
- 00065551  0x000090a5 branch  0x0000215f 
- 00131073  0x000090ad beq  0x00000010 , 0x00020004 
- 00131074  0x000090ae beq  0x00000011 , 0x0002001d 
- 00131075  0x000090af rtn 
- 00131076  0x000090b2 jam  0x00000000 , 0x00004808 
- 00131077  0x000090b3 jam  0x0000000e , 0x000041e3 
- 00131078  0x000090b4 call  0x000041e7 
- 00131079  0x000090b5 fetch  0x00000002 , 0x00004208 
- 00131080  0x000090b6 bbit1  0x00000007 , 0x0002000e 
- 00131081  0x000090b7 bbit1  0x00000000 , 0x000033a9 
- 00131082  0x000090b8 bbit1  0x00000001 , 0x00020011 
- 00131083  0x000090b9 bbit1  0x00000002 , 0x00020014 
- 00131084  0x000090ba bbit1  0x00000003 , 0x00020014 
- 00131085  0x000090bb branch  0x000042b0 
- 00131086  0x000090be call  0x000041c1 
- 00131087  0x000090bf fetch  0x00000002 , 0x00004208 
- 00131088  0x000090c1 branch  0x000041f7 
- 00131089  0x000090c4 bbit1  0x00000005 , 0x00020014 
- 00131090  0x000090c5 bbit1  0x00000003 , 0x00020014 
- 00131091  0x000090c6 branch  0x000042b0 
- 00131092  0x000090c8 fetch  0x00000002 , 0x00004682 
- 00131093  0x000090c9 bbit1  0x0000000c , 0x000042b0 
- 00131094  0x000090ca call  0x000033a9 
- 00131095  0x000090ce fetcht  0x00000001 , 0x000046ec 
- 00131096  0x000090cf call  0x000005e4 
- 00131097  0x000090d0 fetcht  0x00000001 , 0x000046ec 
- 00131098  0x000090d1 call  0x0000681d 
- 00131099  0x000090d2 branch  0x000002f9 , 0x00000001 
- 00131100  0x000090d4 branch  0x000033a7 
- 00131101  0x000090d8 fetch  0x00000002 , 0x00000264 
- 00131102  0x000090d9 copy  0x0000003f , 0x00000006 
- 00131103  0x000090da ifetch  0x00000001 , 0x00000006 
- 00131104  0x000090db store  0x00000001 , 0x00004b02 
- 00131105  0x000090dc and  0x0000003f , 0x0000000f , 0x00000002 
- 00131106  0x000090dd rshift4  0x0000003f , 0x0000003f 
- 00131107  0x000090de beq  0x00000007 , 0x00020025 
- 00131108  0x000090df branch  0x00004d39 
- 00131109  0x000090e1 call  0x00004d53 
- 00131110  0x000090e2 jam  0x00000000 , 0x00004b03 
- 00131111  0x000090e3 fetch  0x00000001 , 0x00004b02 
- 00131112  0x000090e4 isolate1  0x00000000 , 0x0000003f 
- 00131113  0x000090e5 rtn  0x00000001 
- 00131114  0x000090e6 jam  0x00000001 , 0x00004b03 
- 00131115  0x000090e7 rtn 
- 00196609  0x000090ec beq  0x00000020 , 0x00030003 
- 00196610  0x000090ed rtn 
- 00196611  0x000090f0 disable  0x00000028 
- 00196612  0x000090f1 call  0x000062c1 
- 00196613  0x000090f4 fetch  0x00000001 , 0x00000048 
- 00196614  0x000090f5 rtn  0x00000034 
- 00196615  0x000090f6 bbit1  0x00000007 , 0x0003000c 
- 00196616  0x000090f7 beq  0x00000003 , 0x0003001c 
- 00196617  0x000090f8 beq  0x00000031 , 0x00030018 
- 00196618  0x000090f9 beq  0x00000017 , 0x0003001a 
- 00196619  0x000090fa branch  0x00006010 
- 00196620  0x000090fc beq  0x00000084 , 0x0003000f 
- 00196621  0x000090fd beq  0x00000083 , 0x00030012 
- 00196622  0x000090fe branch  0x0000603f 
- 00196623  0x00009100 call  0x00030015 
- 00196624  0x00009101 fetch  0x00000001 , 0x00000048 
- 00196625  0x00009102 branch  0x00006099 
- 00196626  0x00009104 call  0x00030015 
- 00196627  0x00009105 fetch  0x00000001 , 0x00000048 
- 00196628  0x00009106 branch  0x0000610d 
- 00196629  0x00009108 fetch  0x00000001 , 0x0000465a 
- 00196630  0x00009109 branch  0x0000612b , 0x00000034 
- 00196631  0x0000910a branch  0x00006124 
- 00196632  0x0000910d jam  0x00000001 , 0x00004b01 
- 00196633  0x0000910e branch  0x000061c3 
- 00196634  0x00009111 jam  0x00000004 , 0x00004b09 
- 00196635  0x00009112 branch  0x000061a4 
- 00196636  0x00009116 force  0x00000002 , 0x0000003f 
- 00196637  0x00009117 call  0x00006298 
- 00196638  0x00009118 fetch  0x00000001 , 0x00000049 
- 00196639  0x00009119 istore  0x00000001 , 0x00000005 
- 00196640  0x0000911a store  0x00000001 , 0x00004afc 
- 00196641  0x0000911b call  0x000062a7 
- 00196642  0x0000911c fetch  0x00000001 , 0x00004afc 
- 00196643  0x0000911d beq  0x0000002e , 0x00030025 
- 00196644  0x0000911e branch  0x00006051 
- 00196645  0x00009121 fetch  0x00000001 , 0x00004aff 
- 00196646  0x00009122 rtn  0x00000034 
- 00196647  0x00009123 jam  0x00000000 , 0x00004aff 
- 00196648  0x00009124 fetch  0x00000001 , 0x00004b01 
- 00196649  0x00009125 rtnne  0x00000002 
- 00196650  0x00009126 jam  0x00000001 , 0x00004b00 
- 00196651  0x00009127 copy  0x00000022 , 0x0000003f 
- 00196652  0x00009128 store  0x00000004 , 0x000004e9 
- 00196653  0x00009129 rtn 
- 00262145  0x0000912f beq  0x00000030 , 0x00040003 
- 00262146  0x00009130 rtn 
- 00262147  0x00009133 call  0x000062bc 
- 00262148  0x00009134 nrtn  0x00000034 
- 00262149  0x00009136 fetch  0x00000001 , 0x00000055 
- 00262150  0x00009137 rtn  0x00000034 
- 00262151  0x00009138 beq  0x00000004 , 0x00040025 
- 00262152  0x00009139 beq  0x00000010 , 0x0004000a 
- 00262153  0x0000913a branch  0x00006320 
- 00262154  0x0000913e fetch  0x00000001 , 0x0000455b 
- 00262155  0x0000913f rtneq  0x00000000 
- 00262156  0x00009140 beq  0x00000001 , 0x0004000e 
- 00262157  0x00009141 branch  0x0000635f 
- 00262158  0x00009143 rtn  0x00000029 
- 00262159  0x00009146 fetch  0x00000001 , 0x0000016d 
- 00262160  0x00009147 bbit1  0x00000000 , 0x00040012 
- 00262161  0x00009148 branch  0x00006399 
- 00262162  0x0000914a fetch  0x00000001 , 0x00004b01 
- 00262163  0x0000914b beq  0x00000001 , 0x0000639d 
- 00262164  0x0000914d fetch  0x00000001 , 0x000041bd 
- 00262165  0x0000914e branch  0x000063a9 , 0x00000034 
- 00262166  0x0000914f fetch  0x00000001 , 0x000004d1 
- 00262167  0x00009150 rtnbit0  0x00000003 
- 00262168  0x00009151 rtnbit0  0x00000002 
- 00262169  0x00009152 fetch  0x00000001 , 0x00004b00 
- 00262170  0x00009153 rtn  0x00000034 
- 00262171  0x00009154 jam  0x00000000 , 0x00004b00 
- 00262172  0x00009155 fetch  0x00000004 , 0x000004e9 
- 00262173  0x00009156 arg  0x00000014 , 0x00000002 
- 00262174  0x00009157 iadd  0x00000002 , 0x00000002 
- 00262175  0x00009158 copy  0x00000022 , 0x0000003f 
- 00262176  0x00009159 isub  0x00000002 , 0x0000003e 
- 00262177  0x0000915a nbranch  0x00040023 , 0x00000002 
- 00262178  0x0000915b branch  0x00006349 
- 00262179  0x0000915e jam  0x00000001 , 0x00004b00 
- 00262180  0x0000915f rtn 
- 00262181  0x00009162 jam  0x00000014 , 0x00004809 
- 00262182  0x00009163 branch  0x0000636f 
- 00327681  0x0000916c beq  0x00000040 , 0x00050004 
- 00327682  0x0000916d beq  0x00000041 , 0x00050016 
- 00327683  0x0000916e rtn 
- 00327684  0x00009171 call  0x0005000c 
- 00327685  0x00009172 branch  0x0000557d 
- 00327686  0x00009174 fetch  0x00000001 , 0x000047c5 
- 00327687  0x00009175 store  0x00000001 , 0x00004172 
- 00327688  0x00009177 jam  0x00000000 , 0x000047c4 
- 00327689  0x00009178 rtn 
- 00327690  0x0000917a jam  0x00000001 , 0x000047c4 
- 00327691  0x0000917b rtn 
- 00327692  0x0000917d fetch  0x00000001 , 0x000043d6 
- 00327693  0x0000917e sub  0x0000003f , 0x0000000c , 0x0000003e 
- 00327694  0x0000917f nbranch  0x0005000a , 0x00000002 
- 00327695  0x00009180 fetch  0x00000001 , 0x000043d8 
- 00327696  0x00009181 fetcht  0x00000001 , 0x000047c5 
- 00327697  0x00009182 isub  0x00000002 , 0x0000003e 
- 00327698  0x00009183 branch  0x00050006 , 0x00000002 
- 00327699  0x00009184 fetch  0x00000001 , 0x000043d8 
- 00327700  0x00009185 store  0x00000001 , 0x00004172 
- 00327701  0x00009186 branch  0x00050008 
- 00327702  0x00009189 fetch  0x00000001 , 0x0000043f 
- 00327703  0x0000918a rtnbit0  0x00000006 
- 00327704  0x0000918b call  0x0005001b 
- 00327705  0x0000918c nrtn  0x00000028 
- 00327706  0x0000918d branch  0x000055a0 
- 00327707  0x0000918f enable  0x00000028 
- 00327708  0x00009190 fetch  0x00000001 , 0x0000045a 
- 00327709  0x00009191 rshift4  0x0000003f , 0x0000003f 
- 00327710  0x00009192 rtnne  0x0000000f 
- 00327711  0x00009193 fetch  0x00000001 , 0x00000460 
- 00327712  0x00009194 rshift4  0x0000003f , 0x0000003f 
- 00327713  0x00009195 rtnne  0x00000000 
- 00327714  0x00009196 branch  0x00007fe9 
- 00393217  0x0000919d beq  0x00000050 , 0x00060003 
- 00393218  0x0000919e rtn 
- 00393219  0x000091a2 call  0x000002fc 
- 00393220  0x000091a3 jam  0x00000001 , 0x00004720 
- 00393221  0x000091a4 jam  0x00000000 , 0x0000479c 
- 00393222  0x000091a5 fetch  0x00000002 , 0x00004682 
- 00393223  0x000091a6 bbit1  0x0000000b , 0x00060012 
- 00393224  0x000091a7 fetch  0x00000004 , 0x000046d3 
- 00393225  0x000091a8 bbit0  0x00000018 , 0x00060012 
- 00393226  0x000091a9 call  0x000005f4 
- 00393227  0x000091aa fetcht  0x00000002 , 0x000047c2 
- 00393228  0x000091ab increase  0x00000001 , 0x00000002 
- 00393229  0x000091ac storet  0x00000002 , 0x000047c2 
- 00393230  0x000091ad storet  0x00000002 , 0x000044a1 
- 00393231  0x000091ae call  0x00000386 
- 00393232  0x000091af random  0x0000003f 
- 00393233  0x000091b0 store  0x00000001 , 0x000044a0 
- 00393234  0x000091b2 call  0x00003418 
- 00393235  0x000091b3 fetch  0x00000002 , 0x00004687 
- 00393236  0x000091b4 store  0x00000002 , 0x000046ac 
- 00393237  0x000091b5 jam  0x00000006 , 0x0000016d 
- 00393238  0x000091b6 setarg  0x00000000 
- 00393239  0x000091b7 store  0x00000002 , 0x000046b0 
- 00393240  0x000091b8 store  0x00000002 , 0x000046ae 
- 00393241  0x000091b9 arg  0x00000007 , 0x00000007 
- 00393242  0x000091ba call  0x000043ce 
- 00393243  0x000091bb call  0x000043ca 
- 00393244  0x000091bf fetch  0x00000001 , 0x00004092 
- 00393245  0x000091c0 isolate1  0x00000000 , 0x0000003f 
- 00393246  0x000091c1 call  0x00007ddd , 0x00000001 
- 00393247  0x000091c4 branch  0x00000534 
- 00393248  0x000091c7 jam  0x00000000 , 0x0000479f 
- 00393249  0x000091c8 call  0x00000312 
- 00393250  0x000091c9 setarg  0x00000005 
- 00393251  0x000091ca istore  0x00000001 , 0x00000006 
- 00393252  0x000091cb arg  0x00004b10 , 0x00000006 
- 00393253  0x000091cc call  0x000005fb 
- 00393254  0x000091cd branch  0x00007df4 
- 00458753  0x000091d2 beq  0x00000060 , 0x00070004 
- 00458754  0x000091d3 beq  0x00000061 , 0x00070027 
- 00458755  0x000091d4 rtn 
- 00458756  0x000091d7 set0  0x00000026 , 0x00000000 
- 00458757  0x000091d8 call  0x00000206 
- 00458758  0x000091d9 call  0x00000225 
- 00458759  0x000091da fetch  0x00000001 , 0x00004c02 
- 00458760  0x000091db rtnne  0x000000ff 
- 00458761  0x000091dc call  0x00070019 
- 00458762  0x000091de setarg  0x00000000 
- 00458763  0x000091df store  0x00000002 , 0x00004c1f 
- 00458764  0x000091e2 nop  0x000007d0 
- 00458765  0x000091e3 fetch  0x00000001 , 0x00004c1f 
- 00458766  0x000091e4 beq  0x000000ff , 0x000001de 
- 00458767  0x000091e5 call  0x000001b5 
- 00458768  0x000091e6 nbranch  0x00070022 , 0x00000018 
- 00458769  0x000091e7 nbranch  0x00070022 , 0x0000002f 
- 00458770  0x000091e9 set1  0x00000026 , 0x00000000 
- 00458771  0x000091ea setarg  0x00000000 
- 00458772  0x000091eb store  0x00000002 , 0x00004c1f 
- 00458773  0x000091ec jam  0x0000003c , 0x00000a99 
- 00458774  0x000091ed call  0x00007d86 
- 00458775  0x000091ee call  0x000001b0 
- 00458776  0x000091ef branch  0x000003d5 
- 00458777  0x000091f2 jam  0x000000ff , 0x0000119e 
- 00458778  0x000091f3 fetch  0x00000001 , 0x00004bf3 
- 00458779  0x000091f4 store  0x00000001 , 0x0000119f 
- 00458780  0x000091f5 fetch  0x00000004 , 0x00004c29 
- 00458781  0x000091f6 store  0x00000004 , 0x000011a0 
- 00458782  0x000091f7 arg  0x00000006 , 0x00000002 
- 00458783  0x000091f8 arg  0x0000119e , 0x00000011 
- 00458784  0x000091f9 call  0x000001f3 
- 00458785  0x000091fa branch  0x00000213 
- 00458786  0x000091fd fetch  0x00000002 , 0x00004c1f 
- 00458787  0x000091fe increase  0x00000001 , 0x0000003f 
- 00458788  0x000091ff store  0x00000002 , 0x00004c1f 
- 00458789  0x00009200 call  0x00000225 
- 00458790  0x00009201 branch  0x0007000c 
- 00458791  0x00009205 fetch  0x00000001 , 0x00004720 
- 00458792  0x00009206 rtneq  0x00000001 
- 00458793  0x00009207 fetch  0x00000004 , 0x000046d3 
- 00458794  0x00009208 rtnbit0  0x00000011 
- 00458795  0x00009209 rtnbit1  0x00000003 
- 00458796  0x0000920a rtnmark1  0x00000026 
- 00458797  0x0000920b call  0x000000ed 
- 00458798  0x0000920c arg  0x00000003 , 0x00000007 
- 00458799  0x0000920d call  0x000043ce 
- 00458800  0x0000920e setarg  0x00000000 
- 00458801  0x0000920f store  0x00000002 , 0x000046ae 
- 00458802  0x00009210 store  0x00000001 , 0x000046b4 
- 00458803  0x00009211 store  0x00000002 , 0x00004c1f 
- 00458804  0x00009212 call  0x000042ca 
- 00458805  0x00009213 branch  0x00070036 
- 00458806  0x00009216 set1  0x00000026 , 0x00000000 
- 00458807  0x00009217 call  0x0007003a 
- 00458808  0x00009219 jam  0x00000001 , 0x00004c02 
- 00458809  0x0000921a rtn 
- 00458810  0x0000921d jam  0x00000020 , 0x000041de 
- 00458811  0x0000921e jam  0x00000000 , 0x00004bf1 
- 00458812  0x0000921f jam  0x0000004e , 0x00004bfc 
- 00458813  0x00009220 fetch  0x00000004 , 0x00004bfe 
- 00458814  0x00009221 branch  0x00000205 
- 00524289  0x00009226 beq  0x00000070 , 0x00080003 
- 00524290  0x00009227 rtn 
- 00524291  0x0000922a set0  0x00000026 , 0x00000000 
- 00524292  0x0000922b call  0x0008002d 
- 00524293  0x0000922c call  0x0008001a 
- 00524294  0x0000922e jam  0x00000000 , 0x00004c1f 
- 00524295  0x00009231 nop  0x000007d0 
- 00524296  0x00009232 fetch  0x00000001 , 0x00004c1f 
- 00524297  0x00009233 beq  0x000000ff , 0x000001de 
- 00524298  0x00009234 call  0x000001b5 
- 00524299  0x00009235 nbranch  0x00080023 , 0x00000018 
- 00524300  0x00009236 nbranch  0x00080023 , 0x0000002f 
- 00524301  0x00009237 call  0x000001e0 
- 00524302  0x00009238 call  0x000002fc 
- 00524303  0x00009239 fetch  0x00000004 , 0x00004c1a 
- 00524304  0x0000923a fetcht  0x00000004 , 0x00004bfe 
- 00524305  0x0000923b isub  0x00000002 , 0x0000003e 
- 00524306  0x0000923c branch  0x00080037 , 0x00000005 
- 00524307  0x0000923d set1  0x00000026 , 0x00000000 
- 00524308  0x0000923e setarg  0x00000000 
- 00524309  0x0000923f store  0x00000002 , 0x00004c1f 
- 00524310  0x00009240 jam  0x0000003c , 0x00000a99 
- 00524311  0x00009241 call  0x00007d86 
- 00524312  0x00009242 call  0x000001b0 
- 00524313  0x00009243 branch  0x000003d5 
- 00524314  0x00009246 jam  0x000000ff , 0x0000119e 
- 00524315  0x00009247 fetch  0x00000001 , 0x00004bf3 
- 00524316  0x00009248 store  0x00000001 , 0x0000119f 
- 00524317  0x00009249 fetch  0x00000004 , 0x00004c29 
- 00524318  0x0000924a store  0x00000004 , 0x000011a0 
- 00524319  0x0000924b arg  0x00000006 , 0x00000002 
- 00524320  0x0000924c arg  0x0000119e , 0x00000011 
- 00524321  0x0000924d call  0x000001f3 
- 00524322  0x0000924e branch  0x00000213 
- 00524323  0x00009251 fetch  0x00000001 , 0x00004c1f 
- 00524324  0x00009252 increase  0x00000001 , 0x0000003f 
- 00524325  0x00009253 store  0x00000001 , 0x00004c1f 
- 00524326  0x00009254 fetch  0x00000001 , 0x00004d30 
- 00524327  0x00009255 increase  0x00000001 , 0x0000003f 
- 00524328  0x00009256 and_into  0x00000001 , 0x0000003f 
- 00524329  0x00009257 store  0x00000001 , 0x00004d30 
- 00524330  0x00009258 beq  0x00000000 , 0x00080033 
- 00524331  0x00009259 beq  0x00000001 , 0x00080035 
- 00524332  0x0000925a rtn 
- 00524333  0x0000925d jam  0x00000020 , 0x000041de 
- 00524334  0x0000925e setarg  0x00000f0f 
- 00524335  0x0000925f store  0x00000002 , 0x00004c1a 
- 00524336  0x00009260 istore  0x00000002 , 0x00000005 
- 00524337  0x00009262 call  0x00000206 
- 00524338  0x00009263 branch  0x00000225 
- 00524339  0x00009266 call  0x0008002d 
- 00524340  0x00009267 branch  0x00080007 
- 00524341  0x0000926a call  0x0008003b 
- 00524342  0x0000926b branch  0x00080007 
- 00524343  0x0000926e set1  0x00000026 , 0x00000000 
- 00524344  0x0000926f call  0x0008003b 
- 00524345  0x00009271 jam  0x00000001 , 0x00004c02 
- 00524346  0x00009272 rtn 
- 00524347  0x00009275 jam  0x00000020 , 0x000041de 
- 00524348  0x00009276 jam  0x00000000 , 0x00004bf1 
- 00524349  0x00009277 jam  0x0000004e , 0x00004bfc 
- 00524350  0x00009278 fetch  0x00000004 , 0x00004bfe 
- 00524351  0x00009279 branch  0x00000205 
- 00589825  0x00009282 beq  0x00000080 , 0x00090009 
- 00589826  0x00009285 rtn 
- 00589827  0x0000928f call  0x000068a2 
- 00589828  0x00009290 fetch  0x00000002 , 0x0000421d 
- 00589829  0x00009291 nbranch  0x00090007 , 0x00000034 
- 00589830  0x00009292 setarg  0x00001122 
- 00589831  0x00009294 store  0x00000002 , 0x000047c2 
- 00589832  0x00009295 rtn 
- 00589833  0x00009299 call  0x00000120 
- 00589834  0x0000929e call  0x00003e6e 
- 00589835  0x0000929f call  0x000000ed 
- 00589836  0x000092a0 fetch  0x00000001 , 0x000046ef 
- 00589837  0x000092a1 store  0x00000001 , 0x00004715 
- 00589838  0x000092a2 call  0x00004298 
- 00589839  0x000092a3 fetcht  0x00000001 , 0x00004b23 
- 00589840  0x000092a4 call  0x0000680e 
- 00589841  0x000092a5 fetcht  0x00000001 , 0x00004b45 
- 00589842  0x000092a6 call  0x0000680e 
- 00589843  0x000092a8 call  0x00003e1e 
- 00589844  0x000092a9 call  0x0009001f 
- 00589845  0x000092aa setarg  0x00000000 
- 00589846  0x000092ab store  0x00000002 , 0x00004154 
- 00589847  0x000092ac call  0x000068a2 
- 00589848  0x000092ad call  0x00003e54 
- 00589849  0x000092ae call  0x00005810 
- 00589850  0x000092af call  0x00005839 
- 00589851  0x000092b0 call  0x0000582c 
- 00589852  0x000092b1 call  0x00005818 
- 00589853  0x000092b2 call  0x000005f0 
- 00589854  0x000092b3 branch  0x00000377 
- 00589855  0x000092b7 call  0x000074b9 
- 00589856  0x000092b8 arg  0x00008c00 , 0x00000006 
- 00589857  0x000092b9 arg  0x00004876 , 0x00000005 
- 00589858  0x000092ba arg  0x00000171 , 0x00000039 
- 00589859  0x000092bb call  0x00007f01 
- 00589860  0x000092bd setarg  0x000f0209 
- 00589861  0x000092be istore  0x00000003 , 0x00000005 
- 00589862  0x000092bf setarg  0x00120009 
- 00589863  0x000092c0 istore  0x00000003 , 0x00000005 
- 00589864  0x000092c2 setarg  0x00100209 
- 00589865  0x000092c3 istore  0x00000003 , 0x00000005 
- 00589866  0x000092c4 setarg  0x00000009 
- 00589867  0x000092c5 istore  0x00000003 , 0x00000005 
- 00589868  0x000092c6 arg  0x00008d71 , 0x00000006 
- 00589869  0x000092c7 arg  0x00000109 , 0x00000039 
- 00589870  0x000092c8 call  0x00007f01 
- 00589871  0x000092ca jam  0x00000000 , 0x0000488d 
- 00589872  0x000092cb jam  0x0000006d , 0x00004885 
- 00589873  0x000092cc setarg  0x0000401f 
- 00589874  0x000092cd store  0x00000002 , 0x000049db 
- 00589875  0x000092ce setarg  0x00006d04 
- 00589876  0x000092cf store  0x00000002 , 0x00004a44 
- 00589877  0x000092d0 setarg  0x000016b0 
- 00589878  0x000092d1 store  0x00000002 , 0x00004a4a 
- 00589879  0x000092d3 setarg  0x00004876 
- 00589880  0x000092d4 store  0x00000002 , 0x00004575 
- 00589881  0x000092d5 rtn 
- 00655361  0x000092dc beq  0x00000090 , 0x000a0005 
- 00655362  0x000092dd beq  0x00000091 , 0x000a001f 
- 00655363  0x000092de beq  0x00000092 , 0x000a002f 
- 00655364  0x000092df rtn 
- 00655365  0x000092e2 fetch  0x00000001 , 0x00004bf7 
- 00655366  0x000092e3 beq  0x00000001 , 0x00007fe7 
- 00655367  0x000092e4 fetch  0x00000001 , 0x00004c02 
- 00655368  0x000092e5 beq  0x00000001 , 0x000a000c 
- 00655369  0x000092e6 beq  0x00000002 , 0x000a000f 
- 00655370  0x000092e7 beq  0x00000003 , 0x000a0012 
- 00655371  0x000092e8 branch  0x00002a8c 
- 00655372  0x000092eb jam  0x00000011 , 0x00004c02 
- 00655373  0x000092ec jam  0x000000aa , 0x0000119e 
- 00655374  0x000092ed branch  0x000a0014 
- 00655375  0x000092ef jam  0x00000012 , 0x00004c02 
- 00655376  0x000092f0 jam  0x00000055 , 0x0000119e 
- 00655377  0x000092f1 branch  0x000a0014 
- 00655378  0x000092f3 jam  0x00000013 , 0x00004c02 
- 00655379  0x000092f4 jam  0x00000022 , 0x0000119e 
- 00655380  0x000092f6 fetch  0x00000001 , 0x00004bf3 
- 00655381  0x000092f7 and_into  0x00000007 , 0x0000003f 
- 00655382  0x000092f8 store  0x00000001 , 0x0000119f 
- 00655383  0x000092f9 fetch  0x00000004 , 0x00004c29 
- 00655384  0x000092fa store  0x00000004 , 0x000011a0 
- 00655385  0x000092fc jam  0x00000000 , 0x000011a4 
- 00655386  0x000092fd arg  0x0000119e , 0x00000011 
- 00655387  0x000092fe arg  0x00000007 , 0x00000002 
- 00655388  0x000092ff call  0x000001f3 
- 00655389  0x00009300 call  0x00000179 
- 00655390  0x00009301 branch  0x00007fe7 
- 00655391  0x00009304 fetch  0x00000001 , 0x00004c02 
- 00655392  0x00009305 rtneq  0x000000ff 
- 00655393  0x00009306 beq  0x00000011 , 0x000a0025 
- 00655394  0x00009307 beq  0x00000012 , 0x000a0027 
- 00655395  0x00009308 beq  0x00000013 , 0x000a0029 
- 00655396  0x00009309 rtn 
- 00655397  0x0000930c jam  0x00000002 , 0x00004c02 
- 00655398  0x0000930d branch  0x000001aa 
- 00655399  0x0000930f jam  0x00000003 , 0x00004c02 
- 00655400  0x00009310 branch  0x000001aa 
- 00655401  0x00009312 jam  0x000000ff , 0x00004c02 
- 00655402  0x00009313 jam  0x00000039 , 0x00000a99 
- 00655403  0x00009314 call  0x00007d86 
- 00655404  0x00009315 fetch  0x00000004 , 0x00004bd2 
- 00655405  0x00009316 call  0x00000205 
- 00655406  0x00009317 branch  0x000001aa 
- 00655407  0x0000931b call  0x00000581 
- 00655408  0x0000931c call  0x00000492 
- 00655409  0x0000931d jam  0x00000001 , 0x0000478b 
- 00655410  0x0000931e arg  0x00000003 , 0x00000007 
- 00655411  0x0000931f call  0x000043d2 
- 00655412  0x00009320 setarg  0x00000000 
- 00655413  0x00009321 store  0x00000002 , 0x00004707 
- 00655414  0x00009322 jam  0x00000000 , 0x000046a7 
- 00655415  0x00009324 call  0x0000405d 
- 00655416  0x00009326 call  0x000002fc 
- 00655417  0x00009328 fetch  0x00000004 , 0x00004c1a 
- 00655418  0x00009329 store  0x00000004 , 0x0000477b 
- 00655419  0x0000932b branch  0x00000381 
- 00720897  0x00009331 beq  0x000000a0 , 0x000b0007 
- 00720898  0x00009332 beq  0x000000a1 , 0x000b000d 
- 00720899  0x00009333 beq  0x000000a2 , 0x000b0022 
- 00720900  0x00009334 beq  0x000000a3 , 0x000b001b 
- 00720901  0x00009335 beq  0x000000a4 , 0x000b002a 
- 00720902  0x00009336 rtn 
- 00720903  0x00009339 jam  0x00000000 , 0x00004d32 
- 00720904  0x0000933a call  0x000002fc 
- 00720905  0x0000933b call  0x000001ef 
- 00720906  0x0000933c jam  0x00000000 , 0x000041bd 
- 00720907  0x0000933d call  0x000000e0 
- 00720908  0x0000933e branch  0x000002f9 
- 00720909  0x00009341 fetch  0x00000002 , 0x00004509 
- 00720910  0x00009342 rtneq  0x00000000 
- 00720911  0x00009343 fetch  0x00000001 , 0x00000441 
- 00720912  0x00009344 rshift2  0x0000003f , 0x0000003f 
- 00720913  0x00009345 sub  0x0000003f , 0x0000000c , 0x0000003e 
- 00720914  0x00009346 branch  0x000b0019 , 0x00000002 
- 00720915  0x00009347 setarg  0x00000009 
- 00720916  0x00009348 store  0x00000002 , 0x00004496 
- 00720917  0x00009349 store  0x00000002 , 0x00004498 
- 00720918  0x0000934a call  0x00000470 
- 00720919  0x0000934b jam  0x00000001 , 0x000047c4 
- 00720920  0x0000934c rtn 
- 00720921  0x0000934f jam  0x00000001 , 0x00004b6a 
- 00720922  0x00009350 branch  0x0000065c 
- 00720923  0x00009354 fetch  0x00000002 , 0x00004682 
- 00720924  0x00009355 rtnbit1  0x0000000c 
- 00720925  0x00009356 rtnbit1  0x00000006 
- 00720926  0x00009357 rtnbit1  0x0000000b 
- 00720927  0x00009358 fetch  0x00000004 , 0x000046d3 
- 00720928  0x00009359 rtnbit1  0x00000005 
- 00720929  0x0000935a branch  0x000033a7 
- 00720930  0x0000935d setarg  0x00000007 
- 00720931  0x0000935e store  0x00000002 , 0x00004496 
- 00720932  0x0000935f store  0x00000002 , 0x00004498 
- 00720933  0x00009360 jam  0x00000000 , 0x000047c4 
- 00720934  0x00009361 jam  0x00000000 , 0x0000479c 
- 00720935  0x00009362 call  0x000003fc 
- 00720936  0x00009363 call  0x00005816 
- 00720937  0x00009364 branch  0x000041d9 
- 00720938  0x00009368 enable  0x00000028 
- 00720939  0x00009369 hfetch  0x00000004 , 0x00008138 
- 00720940  0x0000936a setflag  0x00000028 , 0x0000001a , 0x0000003f 
- 00720941  0x0000936b hstore  0x00000004 , 0x0000804c 
- 00720942  0x0000936c call  0x00002c21 
- 00720943  0x0000936d call  0x000074bd 
- 00720944  0x0000936e call  0x00004482 
- 00720945  0x0000936f call  0x00003e9f 
- 00720946  0x00009370 fetcht  0x00000001 , 0x00004b23 
- 00720947  0x00009371 call  0x00006829 
- 00720948  0x00009372 call  0x000000e0 
- 00720949  0x00009373 fetch  0x00000001 , 0x00004720 
- 00720950  0x00009374 sub  0x0000003f , 0x00000002 , 0x0000003e 
- 00720951  0x00009375 call  0x000005e9 , 0x00000005 
- 00720952  0x00009377 call  0x000003bb 
- 00720953  0x00009378 hfetch  0x00000001 , 0x00008081 
- 00720954  0x00009379 and  0x0000003f , 0x000000f7 , 0x0000003f 
- 00720955  0x0000937a hstore  0x00000001 , 0x00008081 
- 00720956  0x0000937c fetcht  0x00000001 , 0x000046f3 
- 00720957  0x0000937d branch  0x000067ed 
- 00786433  0x00009383 beq  0x000000b0 , 0x000c0007 
- 00786434  0x00009384 beq  0x000000b1 , 0x000c0009 
- 00786435  0x00009385 beq  0x000000b2 , 0x000c000f 
- 00786436  0x00009386 beq  0x000000b3 , 0x000c0014 
- 00786437  0x00009387 beq  0x000000b4 , 0x000c001b 
- 00786438  0x00009388 rtn 
- 00786439  0x0000938b call  0x00000581 
- 00786440  0x0000938e branch  0x000041c3 
- 00786441  0x00009391 fetch  0x00000001 , 0x00004808 
- 00786442  0x00009392 rtneq  0x00000002 
- 00786443  0x00009393 increase  0x00000001 , 0x0000003f 
- 00786444  0x00009394 store  0x00000001 , 0x00004808 
- 00786445  0x00009395 jam  0x00000012 , 0x000041e3 
- 00786446  0x00009396 branch  0x0000340e 
- 00786447  0x00009399 fetch  0x00000001 , 0x00004808 
- 00786448  0x0000939a rtnne  0x00000002 
- 00786449  0x0000939b jam  0x00000000 , 0x00004808 
- 00786450  0x0000939c jam  0x0000000e , 0x000041e3 
- 00786451  0x0000939d branch  0x0000340e 
- 00786452  0x000093a0 fetch  0x00000001 , 0x0000479f 
- 00786453  0x000093a1 beq  0x00000001 , 0x000c0017 
- 00786454  0x000093a2 branch  0x000c0019 
- 00786455  0x000093a4 call  0x00000470 
- 00786456  0x000093a5 jam  0x00000005 , 0x000046c6 
- 00786457  0x000093a7 arg  0x00000001 , 0x00000007 
- 00786458  0x000093a8 branch  0x000041b9 
- 00786459  0x000093ab jam  0x00000000 , 0x00004aff 
- 00786460  0x000093ac jam  0x00000000 , 0x00004b01 
- 00786461  0x000093ad jam  0x00000000 , 0x00004b0a 
- 00786462  0x000093ae branch  0x000041d9 
+ 00000322  0x000001e2 nbranch  0x00000113 , 0x00000034 
+ 00000323  0x000001e3 jam  0x00000002 , 0x00004c37 
+ 00000324  0x000001e5 fetcht  0x00000001 , 0x00004bfd 
+ 00000325  0x000001e6 fetch  0x00000001 , 0x00004c1a 
+ 00000326  0x000001e7 and_into  0x00000003 , 0x0000003f 
+ 00000327  0x000001e8 mul32  0x0000003f , 0x00000004 , 0x00000011 
+ 00000328  0x000001e9 setarg  0x00004c03 
+ 00000329  0x000001ea iadd  0x00000011 , 0x0000003f 
+ 00000330  0x000001eb iadd  0x00000002 , 0x00000006 
+ 00000331  0x000001ec ifetch  0x00000001 , 0x00000006 
+ 00000332  0x000001ed store  0x00000001 , 0x00004bfc 
+ 00000333  0x000001ee increase  0x00000001 , 0x00000002 
+ 00000334  0x000001ef and_into  0x00000003 , 0x00000002 
+ 00000335  0x000001f0 storet  0x00000001 , 0x00004bfd 
+ 00000336  0x000001f1 rtn 
+ 00000337  0x000001f4 fetch  0x00000001 , 0x00004c02 
+ 00000338  0x000001f5 bne  0x000000ff , 0x000001be 
+ 00000339  0x000001f7 call  0x00000157 
+ 00000340  0x000001f9 call  0x000001ea 
+ 00000341  0x000001fa jam  0x00000001 , 0x00004bf7 
+ 00000342  0x000001fb rtn 
+ 00000343  0x000001fe fetch  0x00000002 , 0x00004d23 
+ 00000344  0x000001ff call  0x00007f9c 
+ 00000345  0x00000200 branch  0x0000015d , 0x00000028 
+ 00000346  0x00000201 fetch  0x00000007 , 0x00004b8f 
+ 00000347  0x00000202 rtn  0x00000034 
+ 00000348  0x00000203 branch  0x00007fe7 
+ 00000349  0x00000205 call  0x0000043c 
+ 00000350  0x00000207 jam  0x00000000 , 0x00004c1e 
+ 00000351  0x00000208 add  0x00000011 , 0x00000001 , 0x0000003f 
+ 00000352  0x00000209 store  0x00000001 , 0x00004bf2 
+ 00000353  0x0000020a call  0x000000f4 
+ 00000354  0x0000020b store  0x00000001 , 0x00004b8e 
+ 00000355  0x0000020c ifetcht  0x00000001 , 0x00000005 
+ 00000356  0x0000020d ifetch  0x00000001 , 0x00000012 
+ 00000357  0x0000020e ior  0x00000002 , 0x0000003f 
+ 00000358  0x0000020f istore  0x00000001 , 0x00000005 
+ 00000359  0x00000210 increase  0x00000001 , 0x00000012 
+ 00000360  0x00000211 ifetch  0x00000004 , 0x00000012 
+ 00000361  0x00000212 istore  0x00000004 , 0x00000005 
+ 00000362  0x00000213 increase  0x00000004 , 0x00000012 
+ 00000363  0x00000214 arg  0x00004b94 , 0x00000005 
+ 00000364  0x00000215 arg  0x00000002 , 0x00000039 
+ 00000365  0x00000217 ifetch  0x00000001 , 0x00000012 
+ 00000366  0x00000218 ifetcht  0x00000001 , 0x00000005 
+ 00000367  0x00000219 iadd  0x00000002 , 0x0000003f 
+ 00000368  0x0000021a istore  0x00000001 , 0x00000005 
+ 00000369  0x0000021b increase  0x00000001 , 0x00000012 
+ 00000370  0x0000021c loop  0x0000016d 
+ 00000371  0x0000021d rtn 
+ 00000372  0x00000220 jam  0x00000000 , 0x00004bfb 
+ 00000373  0x00000222 arg  0x00000d00 , 0x0000000b 
+ 00000374  0x00000223 until  0x00000023 , 0x00000026 
+ 00000375  0x00000224 call  0x00000190 
+ 00000376  0x00000225 fetch  0x00000001 , 0x00004c2e 
+ 00000377  0x00000226 rtneq  0x00000001 
+ 00000378  0x00000227 nbranch  0x0000019b , 0x00000018 
+ 00000379  0x00000228 nbranch  0x0000019b , 0x0000002f 
+ 00000380  0x00000229 call  0x0000018b 
+ 00000381  0x0000022a call  0x000001b7 
+ 00000382  0x0000022b call  0x00000710 
+ 00000383  0x0000022d fetch  0x00000001 , 0x00004bf1 
+ 00000384  0x0000022e increase  0x00000001 , 0x0000003f 
+ 00000385  0x0000022f store  0x00000001 , 0x00004bf1 
+ 00000386  0x00000230 fetch  0x00000001 , 0x00004c02 
+ 00000387  0x00000231 bne  0x000000ff , 0x0000018e 
+ 00000388  0x00000232 call  0x00000123 
+ 00000389  0x00000234 setarg  0x00000000 
+ 00000390  0x00000235 store  0x00000002 , 0x00004bf8 
+ 00000391  0x00000236 store  0x00000001 , 0x00004bfa 
+ 00000392  0x00000237 store  0x00000001 , 0x00004d26 
+ 00000393  0x00000238 jam  0x00000000 , 0x00004bf7 
+ 00000394  0x00000239 rtn 
+ 00000395  0x0000023c arg  0x00000004 , 0x00000039 
+ 00000396  0x0000023d arg  0x00004b8e , 0x00000005 
+ 00000397  0x0000023e branch  0x00007ec6 
+ 00000398  0x00000241 call  0x0000070d 
+ 00000399  0x00000242 branch  0x000001c0 
+ 00000400  0x00000245 disable  0x0000002f 
+ 00000401  0x00000246 call  0x00000249 
+ 00000402  0x0000024b force  0x00000000 , 0x00000015 
+ 00000403  0x0000024c fetch  0x00000004 , 0x00004c1a 
+ 00000404  0x0000024d iforce  0x00000009 
+ 00000405  0x0000024e fetcht  0x00000001 , 0x00000017 
+ 00000406  0x0000024f call  0x0000291f 
+ 00000407  0x00000250 call  0x00002924 
+ 00000408  0x00000251 call  0x00000205 
+ 00000409  0x00000252 call  0x00000241 , 0x0000002f 
+ 00000410  0x00000253 rtn 
+ 00000411  0x00000259 fetch  0x00000001 , 0x00004bfa 
+ 00000412  0x0000025a increase  0x00000001 , 0x0000003f 
+ 00000413  0x0000025b store  0x00000001 , 0x00004bfa 
+ 00000414  0x0000025c fetch  0x00000001 , 0x00004c02 
+ 00000415  0x0000025d bne  0x000000ff , 0x000001af 
+ 00000416  0x0000025e fetcht  0x00000001 , 0x00004bfb 
+ 00000417  0x0000025f increase  0x00000001 , 0x00000002 
+ 00000418  0x00000260 storet  0x00000001 , 0x00004bfb 
+ 00000419  0x00000261 fetch  0x00000001 , 0x00004c37 
+ 00000420  0x00000262 isub  0x00000002 , 0x0000003f 
+ 00000421  0x00000263 nbranch  0x00000175 , 0x00000034 
+ 00000422  0x00000264 fetch  0x00000001 , 0x00004d29 
+ 00000423  0x00000265 beq  0x00000003 , 0x0000010c 
+ 00000424  0x00000266 fetch  0x00000001 , 0x00004d26 
+ 00000425  0x00000267 increase  0x00000001 , 0x0000003f 
+ 00000426  0x00000268 store  0x00000001 , 0x00004d26 
+ 00000427  0x00000269 beq  0x00000002 , 0x00000101 
+ 00000428  0x0000026a call  0x000000f8 
+ 00000429  0x0000026b jam  0x00000001 , 0x00004c37 
+ 00000430  0x0000026c branch  0x00000174 
+ 00000431  0x0000026f fetch  0x00000001 , 0x00004bfa 
+ 00000432  0x00000270 rtnne  0x000000ff 
+ 00000433  0x00000271 jam  0x00000000 , 0x00004bfa 
+ 00000434  0x00000272 branch  0x000001b5 
+ 00000435  0x00000275 setarg  0x00000000 
+ 00000436  0x00000276 store  0x00000002 , 0x00004bf8 
+ 00000437  0x00000278 jam  0x0000003a , 0x00000a99 
+ 00000438  0x00000279 branch  0x00007d86 
+ 00000439  0x0000027c call  0x000001cf 
+ 00000440  0x0000027d fetch  0x00000001 , 0x00004bf0 
+ 00000441  0x0000027e rtn  0x00000034 
+ 00000442  0x0000027f iforce  0x00000039 
+ 00000443  0x00000280 arg  0x00004b6e , 0x00000006 
+ 00000444  0x00000281 arg  0x00004bd0 , 0x00000005 
+ 00000445  0x00000282 branch  0x00007f01 
+ 00000446  0x00000285 jam  0x00000090 , 0x000011c7 
+ 00000447  0x00000286 branch  0x0000077b 
+ 00000448  0x00000289 jam  0x00000091 , 0x000011c7 
+ 00000449  0x0000028a branch  0x0000077b 
+ 00000450  0x0000028d jam  0x00000060 , 0x000011c7 
+ 00000451  0x0000028e branch  0x0000077b 
+ 00000452  0x00000291 jam  0x00000070 , 0x000011c7 
+ 00000453  0x00000292 branch  0x0000077b 
+ 00000454  0x00000295 set0  0x00000026 , 0x00000000 
+ 00000455  0x00000296 call  0x000053ce 
+ 00000456  0x00000298 arg  0x00000003 , 0x00000007 
+ 00000457  0x00000299 branch  0x000043d2 
+ 00000458  0x0000029c storet  0x00000001 , 0x00004bf2 
+ 00000459  0x0000029d copy  0x00000002 , 0x00000039 
+ 00000460  0x0000029e arg  0x00004b8e , 0x00000005 
+ 00000461  0x0000029f copy  0x00000011 , 0x00000006 
+ 00000462  0x000002a0 branch  0x00007f01 
+ 00000463  0x000002a4 fetch  0x00000001 , 0x00004b6d 
+ 00000464  0x000002a5 rshift3  0x0000003f , 0x0000003f 
+ 00000465  0x000002a6 store  0x00000001 , 0x00004bf0 
+ 00000466  0x000002a8 increase  0x00000001 , 0x0000003f 
+ 00000467  0x000002a9 arg  0x00004b6d , 0x00000006 
+ 00000468  0x000002aa iadd  0x00000006 , 0x00000006 
+ 00000469  0x000002ab ifetch  0x00000003 , 0x00000006 
+ 00000470  0x000002ac store  0x00000003 , 0x00004c2f 
+ 00000471  0x000002ae fetch  0x00000001 , 0x00004b6d 
+ 00000472  0x000002af rshift  0x0000003f , 0x0000003f 
+ 00000473  0x000002b0 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00000474  0x000002b1 store  0x00000001 , 0x00004c35 
+ 00000475  0x000002b2 rtn 
+ 00000476  0x000002b5 store  0x00000004 , 0x00004c1a 
+ 00000477  0x000002b8 arg  0x00000000 , 0x00000011 
+ 00000478  0x000002b9 arg  0x00000004 , 0x00000039 
+ 00000479  0x000002ba arg  0x00004c1a , 0x00000006 
+ 00000480  0x000002bc ifetch  0x00000001 , 0x00000006 
+ 00000481  0x000002bd iadd  0x00000011 , 0x00000011 
+ 00000482  0x000002be loop  0x000001e0 
+ 00000483  0x000002bf copy  0x00000011 , 0x0000003f 
+ 00000484  0x000002c0 store  0x00000002 , 0x00004ca3 
+ 00000485  0x000002c1 fetch  0x00000001 , 0x00004ca3 
+ 00000486  0x000002c2 fetcht  0x00000001 , 0x00004ca4 
+ 00000487  0x000002c3 iadd  0x00000002 , 0x0000003f 
+ 00000488  0x000002c4 store  0x00000001 , 0x00004ca5 
+ 00000489  0x000002c5 rtn 
+ 00000490  0x000002ca fetch  0x00000001 , 0x00004bf2 
+ 00000491  0x000002cb increase  0x00000002 , 0x0000003f 
+ 00000492  0x000002cc store  0x00000001 , 0x00004bf4 
+ 00000493  0x000002ce fetch  0x00000001 , 0x00004bf3 
+ 00000494  0x000002cf store  0x00000001 , 0x00004bae 
+ 00000495  0x000002d1 fetch  0x00000001 , 0x00004bf2 
+ 00000496  0x000002d2 lshift3  0x0000003f , 0x0000003f 
+ 00000497  0x000002d3 fetcht  0x00000001 , 0x00004bf1 
+ 00000498  0x000002d4 and  0x00000002 , 0x00000003 , 0x00000002 
+ 00000499  0x000002d5 lshift  0x00000002 , 0x00000002 
+ 00000500  0x000002d6 ior  0x00000002 , 0x0000003f 
+ 00000501  0x000002d7 fetcht  0x00000001 , 0x00004c2e 
+ 00000502  0x000002d8 iadd  0x00000002 , 0x0000003f 
+ 00000503  0x000002d9 istore  0x00000001 , 0x00000005 
+ 00000504  0x000002db fetch  0x00000001 , 0x00004bf2 
+ 00000505  0x000002dc iforce  0x00000039 
+ 00000506  0x000002dd arg  0x00004b8e , 0x00000006 
+ 00000507  0x000002de branch  0x00007f01 
+ 00000508  0x00000301 disable  0x00000009 
+ 00000509  0x00000302 disable  0x00000007 
+ 00000510  0x00000303 setarg  0x00555555 
+ 00000511  0x00000304 iforce  0x0000000f 
+ 00000512  0x00000305 fetch  0x00000001 , 0x00004bfc 
+ 00000513  0x00000306 reverse  0x0000003f , 0x00000002 
+ 00000514  0x00000307 set1  0x00000001 , 0x00000002 
+ 00000515  0x00000308 rshift  0x00000002 , 0x0000000e 
+ 00000516  0x00000309 rtn 
+ 00000517  0x00000318 call  0x000001fc 
+ 00000518  0x00000319 disable  0x0000002f 
+ 00000519  0x0000031a enable  0x0000000d 
+ 00000520  0x0000031b enable  0x00000021 
+ 00000521  0x0000031c disable  0x00000020 
+ 00000522  0x0000031d enable  0x00000010 
+ 00000523  0x0000031e fetch  0x00000002 , 0x00004bf5 
+ 00000524  0x0000031f iforce  0x0000001b 
+ 00000525  0x00000320 correlate  0x0000003e , 0x00000003 
+ 00000526  0x00000321 nbranch  0x00000245 , 0x00000018 
+ 00000527  0x00000324 disable  0x0000000d 
+ 00000528  0x00000325 enable  0x0000000b 
+ 00000529  0x00000326 enable  0x00000007 
+ 00000530  0x00000327 enable  0x00000009 
+ 00000531  0x00000328 call  0x0000023e 
+ 00000532  0x00000329 store  0x00000001 , 0x00004ca6 
+ 00000533  0x0000032a fetcht  0x00000001 , 0x00004ca5 
+ 00000534  0x0000032b isub  0x00000002 , 0x0000003e 
+ 00000535  0x0000032c nbranch  0x00000241 , 0x00000005 
+ 00000536  0x0000032d call  0x0000023e 
+ 00000537  0x0000032e store  0x00000001 , 0x00004b6c 
+ 00000538  0x0000032f fetch  0x00000001 , 0x00004c38 
+ 00000539  0x00000330 sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00000540  0x00000331 branch  0x00000221 , 0x00000005 
+ 00000541  0x00000332 fetch  0x00000001 , 0x00004b6c 
+ 00000542  0x00000333 fetcht  0x00000001 , 0x00004bf3 
+ 00000543  0x00000334 icompare  0x00000007 , 0x00000002 
+ 00000544  0x00000335 nbranch  0x00000241 , 0x00000001 
+ 00000545  0x00000337 call  0x0000023e 
+ 00000546  0x00000338 istore  0x00000001 , 0x00000005 
+ 00000547  0x00000339 rshift3  0x0000003f , 0x0000003f 
+ 00000548  0x0000033a and  0x0000003f , 0x0000001f , 0x00000039 
+ 00000549  0x0000033b branch  0x00000229 , 0x00000005 
+ 00000550  0x0000033d call  0x0000023e 
+ 00000551  0x0000033e istore  0x00000001 , 0x00000005 
+ 00000552  0x0000033f loop  0x00000226 
+ 00000553  0x00000342 copy  0x00000005 , 0x00000011 
+ 00000554  0x00000343 call  0x0000023e 
+ 00000555  0x00000344 store  0x00000001 , 0x00004d2d 
+ 00000556  0x00000345 copy  0x00000011 , 0x00000005 
+ 00000557  0x00000346 parse  0x00000003 , 0x00000000 , 0x00000018 
+ 00000558  0x00000347 enable  0x00000010 
+ 00000559  0x00000348 arg  0x00000664 , 0x0000001b 
+ 00000560  0x00000349 rshift32  0x0000003f , 0x0000003f 
+ 00000561  0x0000034a rshift16  0x0000003f , 0x0000003f 
+ 00000562  0x0000034b istore  0x00000003 , 0x00000005 
+ 00000563  0x0000034c disable  0x0000000b 
+ 00000564  0x0000034d branch  0x00000241 , 0x00000006 
+ 00000565  0x00000350 enable  0x0000002f 
+ 00000566  0x00000351 fetch  0x00000001 , 0x00000017 
+ 00000567  0x00000352 add  0x0000003f , 0x00000000 , 0x00000011 
+ 00000568  0x00000353 call  0x00002981 
+ 00000569  0x00000354 disable  0x0000000d 
+ 00000570  0x00000355 call  0x00002918 
+ 00000571  0x00000356 fetch  0x00000001 , 0x00004d2d 
+ 00000572  0x00000357 call  0x0000006b 
+ 00000573  0x00000358 rtn 
+ 00000574  0x0000035b parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00000575  0x0000035c rshift3  0x0000000c , 0x0000003f 
+ 00000576  0x0000035d rtn 
+ 00000577  0x00000360 disable  0x0000001b 
+ 00000578  0x00000361 disable  0x0000000b 
+ 00000579  0x00000362 call  0x0000264d 
+ 00000580  0x00000363 rtn 
+ 00000581  0x00000366 branch  0x00000241 
+ 00000582  0x00000369 call  0x00002918 
+ 00000583  0x0000036a fetcht  0x00000001 , 0x00004bfc 
+ 00000584  0x0000036b branch  0x00002933 
+ 00000585  0x0000036e call  0x000053c4 
+ 00000586  0x0000036f fetch  0x00000004 , 0x00004c1a 
+ 00000587  0x00000370 iforce  0x00000009 
+ 00000588  0x00000371 call  0x000001fc 
+ 00000589  0x00000372 call  0x00000246 
+ 00000590  0x00000373 set1  0x00000000 , 0x00000015 
+ 00000591  0x00000374 enable  0x0000001d 
+ 00000592  0x00000375 enable  0x00000020 
+ 00000593  0x00000376 disable  0x00000021 
+ 00000594  0x00000379 rshift16  0x00000009 , 0x0000003f 
+ 00000595  0x0000037a rshift8  0x0000003f , 0x0000003f 
+ 00000596  0x0000037b rshift4  0x0000003f , 0x0000003f 
+ 00000597  0x0000037c inject  0x00000003 , 0x00000028 
+ 00000598  0x0000037d disable  0x0000001d 
+ 00000599  0x0000037e enable  0x0000001b 
+ 00000600  0x0000037f enable  0x00000007 
+ 00000601  0x00000380 enable  0x00000009 
+ 00000602  0x00000381 fetch  0x00000001 , 0x00004ca5 
+ 00000603  0x00000382 inject  0x00000003 , 0x00000008 
+ 00000604  0x00000383 fetch  0x00000001 , 0x00004bf4 
+ 00000605  0x00000384 iforce  0x00000039 
+ 00000606  0x00000385 arg  0x00004bae , 0x00000006 
+ 00000607  0x00000387 ifetch  0x00000001 , 0x00000006 
+ 00000608  0x00000388 inject  0x00000003 , 0x00000008 
+ 00000609  0x00000389 loop  0x0000025f 
+ 00000610  0x0000038c enable  0x00000008 
+ 00000611  0x0000038d inject  0x00000003 , 0x00000018 
+ 00000612  0x0000038e disable  0x00000008 
+ 00000613  0x0000038f until  0x0000003e , 0x00000027 
+ 00000614  0x00000390 nop  0x00000064 
+ 00000615  0x00000391 disable  0x0000001d 
+ 00000616  0x00000392 disable  0x0000001b 
+ 00000617  0x00000393 rtn 
+ 00000618  0x00000396 call  0x00007fe9 
+ 00000619  0x00000397 fetcht  0x00000004 , 0x00004c13 
+ 00000620  0x00000398 copy  0x00000022 , 0x0000003f 
+ 00000621  0x00000399 isub  0x00000002 , 0x0000003e 
+ 00000622  0x0000039a ncall  0x00002d18 , 0x00000002 
+ 00000623  0x0000039b copy  0x0000003f , 0x00000012 
+ 00000624  0x0000039c fetch  0x00000004 , 0x00004c13 
+ 00000625  0x0000039d fetcht  0x00000001 , 0x00004c17 
+ 00000626  0x0000039e iadd  0x00000002 , 0x00000002 
+ 00000627  0x0000039f copy  0x00000012 , 0x0000003f 
+ 00000628  0x000003a0 isub  0x00000002 , 0x0000003e 
+ 00000629  0x000003a1 nrtn  0x00000002 
+ 00000630  0x000003a2 set0  0x0000001c , 0x0000003f 
+ 00000631  0x000003a3 store  0x00000004 , 0x00004c13 
+ 00000632  0x000003a4 branch  0x00007fe7 
+ 00000633  0x000003a7 call  0x000029bb 
+ 00000634  0x000003a8 rtn  0x00000034 
+ 00000635  0x000003a9 fetcht  0x00000001 , 0x00004cac 
+ 00000636  0x000003aa arg  0x00000d9e , 0x00000011 
+ 00000637  0x000003ab call  0x00000280 
+ 00000638  0x000003ac storet  0x00000001 , 0x00004cac 
+ 00000639  0x000003ad rtn 
+ 00000640  0x000003b0 copy  0x00000011 , 0x0000003f 
+ 00000641  0x000003b1 iadd  0x00000002 , 0x00000005 
+ 00000642  0x000003b2 fetch  0x00000001 , 0x00000018 
+ 00000643  0x000003b3 istore  0x00000001 , 0x00000005 
+ 00000644  0x000003b4 increase  0x00000001 , 0x00000002 
+ 00000645  0x000003b5 and_into  0x00000007 , 0x00000002 
+ 00000646  0x000003b6 rtn 
+ 00000647  0x000003b8 arg  0x00000000 , 0x00000002 
+ 00000648  0x000003b9 arg  0x00000008 , 0x00000039 
+ 00000649  0x000003ba copy  0x00000011 , 0x00000006 
+ 00000650  0x000003bc ifetch  0x00000001 , 0x00000006 
+ 00000651  0x000003bd iadd  0x00000002 , 0x00000002 
+ 00000652  0x000003be loop  0x0000028a 
+ 00000653  0x000003bf rshift3  0x00000002 , 0x0000003f 
+ 00000654  0x000003c0 copy  0x0000003f , 0x00000002 
+ 00000655  0x000003c1 rtnmark0  0x00000026 
+ 00000656  0x000003c3 div  0x0000003f , 0x0000000a 
+ 00000657  0x000003c4 call  0x00007f86 
+ 00000658  0x000003c5 quotient  0x0000003f 
+ 00000659  0x000003c6 lshift4  0x0000003f , 0x0000003f 
+ 00000660  0x000003c7 remainder  0x00000002 
+ 00000661  0x000003c8 ior  0x00000002 , 0x00000002 
+ 00000662  0x000003c9 rtn 
+ 00000663  0x000003ca rtn 
+ 00000664  0x000003ce rtnmark1  0x00000026 
+ 00000665  0x000003cf call  0x00000383 
+ 00000666  0x000003d0 call  0x000000c5 
+ 00000667  0x000003d1 fetch  0x00000001 , 0x00004040 
+ 00000668  0x000003d2 bbit0  0x00000000 , 0x0000029f 
+ 00000669  0x000003d3 fetch  0x00000001 , 0x000000a0 
+ 00000670  0x000003d4 nrtn  0x00000034 
+ 00000671  0x000003d6 setarg  0x00000000 
+ 00000672  0x000003d7 store  0x00000008 , 0x000000a1 
+ 00000673  0x000003d8 rtn 
+ 00000674  0x000003db fetch  0x00000001 , 0x00004afe 
+ 00000675  0x000003dc rtn  0x00000034 
+ 00000676  0x000003dd branch  0x00000529 
+ 00000677  0x000003e0 call  0x00003416 
+ 00000678  0x000003e1 call  0x000074b9 
+ 00000679  0x000003e2 branch  0x000002c5 , 0x0000002b 
+ 00000680  0x000003e4 call  0x00000001 
+ 00000681  0x000003e5 fetch  0x00000001 , 0x00004241 
+ 00000682  0x000003e6 bbit1  0x00000002 , 0x000002ad 
+ 00000683  0x000003e7 call  0x00000564 
+ 00000684  0x000003e8 beq  0x00000005 , 0x000002c3 
+ 00000685  0x000003ea call  0x000002b8 
+ 00000686  0x000003eb fetch  0x00000001 , 0x00004720 
+ 00000687  0x000003ec fetcht  0x00000001 , 0x00004703 
+ 00000688  0x000003ed isub  0x00000002 , 0x0000003e 
+ 00000689  0x000003ee branch  0x000002bd , 0x00000005 
+ 00000690  0x000003ef call  0x000004cd 
+ 00000691  0x000003f0 fetch  0x00000001 , 0x00004210 
+ 00000692  0x000003f1 beq  0x00000033 , 0x000002c0 
+ 00000693  0x000003f6 jam  0x00000001 , 0x0000479d 
+ 00000694  0x000003f7 jam  0x00000028 , 0x0000479e 
+ 00000695  0x000003f8 rtn 
+ 00000696  0x000003fa fetch  0x00000001 , 0x00004ca9 
+ 00000697  0x000003fb store  0x00000001 , 0x000041de 
+ 00000698  0x000003fc rtn 
+ 00000699  0x000003ff fetch  0x00000001 , 0x000046f5 
+ 00000700  0x00000400 branch  0x00004360 
+ 00000701  0x00000403 jam  0x00000002 , 0x00004720 
+ 00000702  0x00000404 call  0x000004cd 
+ 00000703  0x00000405 branch  0x00000370 
+ 00000704  0x00000408 fetch  0x00000006 , 0x000041d0 
+ 00000705  0x00000409 branch  0x000033eb , 0x00000034 
+ 00000706  0x0000040a branch  0x00004274 
+ 00000707  0x00000426 jam  0x00000061 , 0x000011c7 
+ 00000708  0x00000427 branch  0x0000077b 
+ 00000709  0x00000431 jam  0x00000076 , 0x00004212 
+ 00000710  0x00000432 branch  0x00003d36 
+ 00000711  0x00000435 call  0x000002c5 
+ 00000712  0x00000436 call  0x000040c0 
+ 00000713  0x0000043a call  0x000040d9 
+ 00000714  0x0000043b beq  0x00000030 , 0x000002d3 
+ 00000715  0x0000043c beq  0x00000031 , 0x000002f9 
+ 00000716  0x0000043d call  0x000040d1 
+ 00000717  0x0000043e nop  0x000003e8 
+ 00000718  0x0000043f branch  0x000002c9 
+ 00000719  0x00000442 jam  0x00000001 , 0x00004afe 
+ 00000720  0x00000443 call  0x0000640f 
+ 00000721  0x00000444 call  0x000002c7 
+ 00000722  0x00000445 branch  0x00006411 
+ 00000723  0x00000448 call  0x000002fe 
+ 00000724  0x00000449 fetch  0x00000001 , 0x000046de 
+ 00000725  0x0000044a beq  0x0000005a , 0x000002d8 
+ 00000726  0x0000044b beq  0x000000d8 , 0x000002e0 
+ 00000727  0x0000044c branch  0x000040e1 
+ 00000728  0x0000044f setarg  0x00008006 
+ 00000729  0x00000450 call  0x00006413 
+ 00000730  0x00000451 call  0x00007ec1 
+ 00000731  0x00000452 jam  0x00000007 , 0x000046e0 
+ 00000732  0x00000453 call  0x000040f6 
+ 00000733  0x00000454 setarg  0x0000220a 
+ 00000734  0x00000455 call  0x00006413 
+ 00000735  0x00000456 branch  0x000040f4 
+ 00000736  0x00000459 setarg  0x00000016 
+ 00000737  0x0000045a call  0x00006414 
+ 00000738  0x0000045b sub  0x0000003f , 0x000000bd , 0x0000003e 
+ 00000739  0x0000045c nbranch  0x000002c9 , 0x00000005 
+ 00000740  0x0000045d setarg  0x00000019 
+ 00000741  0x0000045e call  0x00006414 
+ 00000742  0x0000045f sub  0x0000003f , 0x00000055 , 0x0000003e 
+ 00000743  0x00000460 nbranch  0x000002c9 , 0x00000005 
+ 00000744  0x00000461 setarg  0x0000001b 
+ 00000745  0x00000462 call  0x00006414 
+ 00000746  0x00000463 sub  0x0000003f , 0x0000001d , 0x0000003e 
+ 00000747  0x00000464 nbranch  0x000002c9 , 0x00000005 
+ 00000748  0x00000465 jam  0x00000008 , 0x000046e0 
+ 00000749  0x00000466 call  0x000040f6 
+ 00000750  0x00000467 setarg  0x00000206 
+ 00000751  0x00000468 call  0x00006413 
+ 00000752  0x00000469 setarg  0x00006909 
+ 00000753  0x0000046a call  0x00006413 
+ 00000754  0x0000046b setarg  0x0000280d 
+ 00000755  0x0000046c call  0x00006413 
+ 00000756  0x0000046d setarg  0x00009f0e 
+ 00000757  0x0000046e call  0x00006413 
+ 00000758  0x0000046f setarg  0x0000ba0f 
+ 00000759  0x00000470 call  0x00006413 
+ 00000760  0x00000471 branch  0x000040f4 
+ 00000761  0x00000473 call  0x000002fe 
+ 00000762  0x00000474 fetch  0x00000001 , 0x000046de 
+ 00000763  0x00000475 beq  0x00000070 , 0x000040e8 
+ 00000764  0x00000476 jam  0x00000001 , 0x000046e0 
+ 00000765  0x00000477 rtn 
+ 00000766  0x0000047a call  0x000002c5 
+ 00000767  0x0000047b setarg  0x00008006 
+ 00000768  0x0000047c call  0x00006413 
+ 00000769  0x0000047d nop  0x00002ee0 
+ 00000770  0x00000481 fetch  0x00000001 , 0x0000477a 
+ 00000771  0x00000482 beq  0x000000ff , 0x00000305 
+ 00000772  0x00000483 branch  0x00000529 
+ 00000773  0x00000485 fetch  0x00000001 , 0x000046e1 
+ 00000774  0x00000486 store  0x00000001 , 0x0000477a 
+ 00000775  0x00000487 branch  0x00000529 
+ 00000776  0x0000048a call  0x000002c5 
+ 00000777  0x0000048b setarg  0x00000006 
+ 00000778  0x0000048c call  0x00006414 
+ 00000779  0x0000048d or  0x0000003f , 0x00000008 , 0x0000003f 
+ 00000780  0x0000048e lshift8  0x0000003f , 0x0000003f 
+ 00000781  0x0000048f add  0x0000003f , 0x00000006 , 0x0000003f 
+ 00000782  0x00000490 branch  0x00006413 
+ 00000783  0x00000493 jam  0x00000080 , 0x000011c7 
+ 00000784  0x00000494 branch  0x0000077b 
+ 00000785  0x00000498 fetcht  0x00000001 , 0x00004b45 
+ 00000786  0x00000499 branch  0x00006825 
+ 00000787  0x0000049c jam  0x00000040 , 0x00008086 
+ 00000788  0x0000049d jam  0x00000000 , 0x00008087 
+ 00000789  0x0000049e hfetch  0x00000001 , 0x00008081 
+ 00000790  0x0000049f set0  0x00000000 , 0x0000003f 
+ 00000791  0x000004a0 set0  0x00000001 , 0x0000003f 
+ 00000792  0x000004a1 set1  0x00000003 , 0x0000003f 
+ 00000793  0x000004a2 set0  0x00000004 , 0x0000003f 
+ 00000794  0x000004a3 hstore  0x00000001 , 0x00008081 
+ 00000795  0x000004a4 setarg  0x00000000 
+ 00000796  0x000004a5 store  0x00000004 , 0x000001f5 
+ 00000797  0x000004a7 hfetch  0x00000001 , 0x0000807f 
+ 00000798  0x000004a8 set0  0x00000000 , 0x0000003f 
+ 00000799  0x000004a9 hstore  0x00000001 , 0x0000807f 
+ 00000800  0x000004ab rtn 
+ 00000801  0x000004ae call  0x0000036e 
+ 00000802  0x000004af call  0x00004423 
+ 00000803  0x000004b0 fetch  0x00000002 , 0x00004778 
+ 00000804  0x000004b1 arg  0x0000aa55 , 0x00000002 
+ 00000805  0x000004b2 isub  0x00000002 , 0x0000003e 
+ 00000806  0x000004b3 branch  0x0000035e , 0x00000005 
+ 00000807  0x000004b4 storet  0x00000002 , 0x00004778 
+ 00000808  0x000004b5 call  0x0000441c 
+ 00000809  0x000004b6 fetch  0x00000001 , 0x000046e1 
+ 00000810  0x000004b7 store  0x00000001 , 0x0000477a 
+ 00000811  0x000004bc call  0x0000036e 
+ 00000812  0x000004bd call  0x0000033d 
+ 00000813  0x000004be call  0x00000355 
+ 00000814  0x000004bf call  0x00000341 
+ 00000815  0x000004c0 call  0x0000034c 
+ 00000816  0x000004c2 arg  0x00000002 , 0x00000002 
+ 00000817  0x000004c3 arg  0x000047c2 , 0x00000011 
+ 00000818  0x000004c4 arg  0x0000005f , 0x00000012 
+ 00000819  0x000004c5 fetch  0x00000003 , 0x00004700 
+ 00000820  0x000004c6 iadd  0x00000012 , 0x0000003f 
+ 00000821  0x000004c7 call  0x00000341 
+ 00000822  0x000004c8 call  0x0000034c 
+ 00000823  0x000004c9 call  0x00000365 
+ 00000824  0x000004ca branch  0x000002c5 
+ 00000825  0x000004cd arg  0x00000004 , 0x00000002 
+ 00000826  0x000004ce arg  0x00004c1a , 0x00000011 
+ 00000827  0x000004cf arg  0x0000005b , 0x00000012 
+ 00000828  0x000004d0 rtn 
+ 00000829  0x000004d3 fetch  0x00000003 , 0x00004700 
+ 00000830  0x000004d4 store  0x00000003 , 0x00004232 
+ 00000831  0x000004d5 call  0x0000652a 
+ 00000832  0x000004d6 branch  0x0000034c 
+ 00000833  0x000004d9 copy  0x0000003f , 0x00000013 
+ 00000834  0x000004da copy  0x00000011 , 0x0000003f 
+ 00000835  0x000004db increase  0xfffffffc , 0x0000003f 
+ 00000836  0x000004dc copy  0x0000003f , 0x00000012 
+ 00000837  0x000004dd ifetch  0x00000004 , 0x00000012 
+ 00000838  0x000004de store  0x00000004 , 0x00004b47 
+ 00000839  0x000004df copy  0x00000013 , 0x0000003f 
+ 00000840  0x000004e0 call  0x00006552 
+ 00000841  0x000004e1 fetch  0x00000004 , 0x00004b47 
+ 00000842  0x000004e2 istore  0x00000004 , 0x00000012 
+ 00000843  0x000004e3 rtn 
+ 00000844  0x000004e6 setarg  0x000186a0 
+ 00000845  0x000004e7 call  0x00002a8f 
+ 00000846  0x000004e8 call  0x0000650b 
+ 00000847  0x000004e9 setarg  0x000001fa 
+ 00000848  0x000004ea hstore  0x00000002 , 0x0000808c 
+ 00000849  0x000004eb setarg  0x00000005 
+ 00000850  0x000004ec call  0x000064f3 
+ 00000851  0x000004ed bbit1  0x00000000 , 0x0000034c 
+ 00000852  0x000004ee rtn 
+ 00000853  0x000004f1 setarg  0x0000477f 
+ 00000854  0x000004f2 arg  0x00004720 , 0x00000002 
+ 00000855  0x000004f3 isub  0x00000002 , 0x00000002 
+ 00000856  0x000004f4 fetch  0x00000003 , 0x00004700 
+ 00000857  0x000004f5 arg  0x00004720 , 0x00000011 
+ 00000858  0x000004f6 rtn 
+ 00000859  0x000004f9 call  0x0000036e 
+ 00000860  0x000004fa call  0x00000355 
+ 00000861  0x000004fb branch  0x00006562 
+ 00000862  0x000004fe call  0x0000035b 
+ 00000863  0x000004ff call  0x00000594 
+ 00000864  0x00000500 call  0x000002bb 
+ 00000865  0x00000501 call  0x0000431a 
+ 00000866  0x00000502 fetch  0x00000004 , 0x0000477b 
+ 00000867  0x00000503 store  0x00000004 , 0x00004c1a 
+ 00000868  0x00000504 rtn 
+ 00000869  0x00000507 jam  0x000000b9 , 0x00000aa2 
+ 00000870  0x00000509 call  0x00000313 
+ 00000871  0x0000050a nop  0x00000064 
+ 00000872  0x0000050b call  0x0000650b 
+ 00000873  0x0000050c arg  0x00004b47 , 0x00000011 
+ 00000874  0x0000050d fetcht  0x00000001 , 0x00000aa2 
+ 00000875  0x0000050e call  0x00006556 
+ 00000876  0x0000050f nop  0x00000064 
+ 00000877  0x00000510 rtn 
+ 00000878  0x00000513 jam  0x000000ab , 0x00000aa2 
+ 00000879  0x00000514 branch  0x00000366 
+ 00000880  0x00000519 call  0x00000373 
+ 00000881  0x0000051a branch  0x000001c4 , 0x00000028 
+ 00000882  0x0000051b branch  0x000001c2 
+ 00000883  0x0000051e arg  0x00000002 , 0x00000039 
+ 00000884  0x0000051f arg  0x00004c1a , 0x00000006 
+ 00000885  0x00000521 call  0x00007fe7 
+ 00000886  0x00000522 setarg  0x0000ffff 
+ 00000887  0x00000524 ifetcht  0x00000002 , 0x00000006 
+ 00000888  0x00000525 isub  0x00000002 , 0x0000003e 
+ 00000889  0x00000526 ncall  0x00007fe9 , 0x00000005 
+ 00000890  0x00000527 loop  0x00000377 
+ 00000891  0x00000528 rtn 
+ 00000892  0x0000052b call  0x00004401 
+ 00000893  0x0000052c fetch  0x00000002 , 0x0000469f 
+ 00000894  0x0000052d rtn  0x00000034 
+ 00000895  0x0000052f jam  0x00000001 , 0x00004d32 
+ 00000896  0x00000530 setarg  0x00000000 
+ 00000897  0x00000531 store  0x00000002 , 0x00004d33 
+ 00000898  0x00000532 rtn 
+ 00000899  0x00000535 arg  0x00001800 , 0x00000006 
+ 00000900  0x00000536 arg  0x0000480a , 0x00000005 
+ 00000901  0x00000537 call  0x0000038b 
+ 00000902  0x00000538 arg  0x00001900 , 0x00000006 
+ 00000903  0x00000539 call  0x0000038b 
+ 00000904  0x0000053a arg  0x00001a00 , 0x00000006 
+ 00000905  0x0000053b call  0x0000038b 
+ 00000906  0x0000053c arg  0x00001b00 , 0x00000006 
+ 00000907  0x0000053e arg  0x0000001b , 0x00000039 
+ 00000908  0x0000053f branch  0x00007f01 
+ 00000909  0x00000542 arg  0x0000480a , 0x00000006 
+ 00000910  0x00000543 arg  0x00001800 , 0x00000005 
+ 00000911  0x00000544 call  0x0000038b 
+ 00000912  0x00000545 arg  0x00001900 , 0x00000005 
+ 00000913  0x00000546 call  0x0000038b 
+ 00000914  0x00000547 arg  0x00001a00 , 0x00000005 
+ 00000915  0x00000548 call  0x0000038b 
+ 00000916  0x00000549 arg  0x00001b00 , 0x00000005 
+ 00000917  0x0000054a branch  0x0000038b 
+ 00000918  0x0000054d call  0x00005892 
+ 00000919  0x0000054e nrtn  0x00000034 
+ 00000920  0x0000054f fetch  0x00000001 , 0x000046c5 
+ 00000921  0x00000550 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00000922  0x00000551 rtnne  0x00000003 
+ 00000923  0x00000552 fetch  0x00000001 , 0x0000479c 
+ 00000924  0x00000553 call  0x000003e4 , 0x00000034 
+ 00000925  0x00000554 fetch  0x00000004 , 0x000046d3 
+ 00000926  0x00000555 bbit1  0x00000005 , 0x00004179 
+ 00000927  0x00000556 call  0x00003f97 
+ 00000928  0x00000557 nrtn  0x00000028 
+ 00000929  0x00000558 call  0x000003bc 
+ 00000930  0x0000055a arg  0x0000469a , 0x00000011 
+ 00000931  0x0000055b call  0x00007e3d 
+ 00000932  0x0000055c call  0x000003ab , 0x00000028 
+ 00000933  0x0000055e rtn 
+ 00000934  0x00000561 jam  0x00000007 , 0x000047a0 
+ 00000935  0x00000562 jam  0x00000004 , 0x000047a1 
+ 00000936  0x00000563 setarg  0x000047a0 
+ 00000937  0x00000564 store  0x00000002 , 0x00004218 
+ 00000938  0x00000565 branch  0x00007e38 
+ 00000939  0x00000568 fetch  0x00000001 , 0x000047c1 
+ 00000940  0x00000569 increase  0x00000001 , 0x0000003f 
+ 00000941  0x0000056a store  0x00000001 , 0x000047c1 
+ 00000942  0x0000056b rtn 
+ 00000943  0x0000056e arg  0x0000469a , 0x00000011 
+ 00000944  0x0000056f call  0x00007e54 
+ 00000945  0x00000570 branch  0x000003b3 , 0x00000028 
+ 00000946  0x00000571 rtn 
+ 00000947  0x00000574 call  0x00005652 
+ 00000948  0x00000575 fetch  0x00000001 , 0x000047c1 
+ 00000949  0x00000576 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00000950  0x00000577 ncall  0x00005650 , 0x00000002 
+ 00000951  0x00000578 fetch  0x00000001 , 0x000047c1 
+ 00000952  0x00000579 rtn  0x00000034 
+ 00000953  0x0000057a increase  0xffffffff , 0x0000003f 
+ 00000954  0x0000057b store  0x00000001 , 0x000047c1 
+ 00000955  0x0000057c branch  0x00003f90 
+ 00000956  0x00000580 fetch  0x00000002 , 0x0000469f 
+ 00000957  0x00000581 rtn  0x00000034 
+ 00000958  0x00000582 jam  0x00000001 , 0x00004806 
+ 00000959  0x00000583 jam  0x00000002 , 0x00004807 
+ 00000960  0x00000584 rtn 
+ 00000961  0x00000587 rtn  0x0000002e 
+ 00000962  0x00000588 fetch  0x00000001 , 0x000041e2 
+ 00000963  0x00000589 rtn  0x00000034 
+ 00000964  0x0000058a call  0x00005271 
+ 00000965  0x0000058b nrtn  0x00000034 
+ 00000966  0x0000058c fetch  0x00000001 , 0x0000479c 
+ 00000967  0x0000058d call  0x000003e4 , 0x00000034 
+ 00000968  0x0000058e fetch  0x00000004 , 0x000046d3 
+ 00000969  0x0000058f bbit1  0x00000005 , 0x00003f8a 
+ 00000970  0x00000590 bbit1  0x00000009 , 0x00003f8a 
+ 00000971  0x00000591 call  0x00003f97 
+ 00000972  0x00000592 nrtn  0x00000028 
+ 00000973  0x00000593 call  0x000003bc 
+ 00000974  0x00000594 fetch  0x00000001 , 0x00004b03 
+ 00000975  0x00000595 beq  0x00000001 , 0x000003d3 
+ 00000976  0x00000596 fetch  0x00000001 , 0x00004b0a 
+ 00000977  0x00000597 rtn  0x00000034 
+ 00000978  0x00000598 branch  0x00003f81 
+ 00000979  0x0000059b fetch  0x00000001 , 0x0000469a 
+ 00000980  0x0000059c store  0x00000001 , 0x00004b04 
+ 00000981  0x0000059d fetch  0x00000001 , 0x0000469b 
+ 00000982  0x0000059e istore  0x00000001 , 0x00000005 
+ 00000983  0x0000059f fetch  0x00000001 , 0x0000469d 
+ 00000984  0x000005a0 istore  0x00000001 , 0x00000005 
+ 00000985  0x000005a1 fetch  0x00000002 , 0x0000469f 
+ 00000986  0x000005a2 istore  0x00000002 , 0x00000005 
+ 00000987  0x000005a4 arg  0x00000007 , 0x00000011 
+ 00000988  0x000005a5 call  0x00004d63 
+ 00000989  0x000005a6 fetch  0x00000002 , 0x0000424e 
+ 00000990  0x000005a7 istore  0x00000002 , 0x00000005 
+ 00000991  0x000005a8 setarg  0x000002a1 
+ 00000992  0x000005a9 istore  0x00000002 , 0x00000005 
+ 00000993  0x000005aa fetch  0x00000005 , 0x00004b04 
+ 00000994  0x000005ab istore  0x00000005 , 0x00000005 
+ 00000995  0x000005ac rtn 
+ 00000996  0x000005b4 call  0x00005814 
+ 00000997  0x000005b5 jam  0x00000001 , 0x0000479c 
+ 00000998  0x000005b6 branch  0x000002fe 
+ 00000999  0x000005b9 call  0x00007e34 
+ 00001000  0x000005ba call  0x000003ea 
+ 00001001  0x000005bb branch  0x00003ee0 
+ 00001002  0x000005be fetcht  0x00000001 , 0x00004b23 
+ 00001003  0x000005bf call  0x0000680e 
+ 00001004  0x000005c0 fetcht  0x00000001 , 0x000046e7 
+ 00001005  0x000005c1 call  0x0000057b 
+ 00001006  0x000005c2 fetcht  0x00000001 , 0x000046e7 
+ 00001007  0x000005c3 call  0x0000681d 
+ 00001008  0x000005c4 branch  0x00000400 , 0x00000001 
+ 00001009  0x000005c5 call  0x00000584 
+ 00001010  0x000005c7 fetch  0x00000001 , 0x000046b6 
+ 00001011  0x000005c8 rtneq  0x00000000 
+ 00001012  0x000005c9 jam  0x00000000 , 0x000046b6 
+ 00001013  0x000005ca jam  0x00000001 , 0x00004b6b 
+ 00001014  0x000005cb fetch  0x00000001 , 0x0000477a 
+ 00001015  0x000005cc increase  0x00000001 , 0x0000003f 
+ 00001016  0x000005cd and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001017  0x000005ce store  0x00000001 , 0x0000477a 
+ 00001018  0x000005cf mul32  0x0000003f , 0x00000002 , 0x0000003f 
+ 00001019  0x000005d0 increase  0x00000002 , 0x0000003f 
+ 00001020  0x000005d1 store  0x00000002 , 0x00004b2b 
+ 00001021  0x000005d2 call  0x000004de 
+ 00001022  0x000005d3 call  0x00003d7e 
+ 00001023  0x000005d4 branch  0x0000032b 
+ 00001024  0x000005d7 call  0x00000584 
+ 00001025  0x000005d8 branch  0x00003d62 
+ 00001026  0x000005db copy  0x00000013 , 0x0000003f 
+ 00001027  0x000005dc beq  0x00000014 , 0x00000414 
+ 00001028  0x000005dd beq  0x00000015 , 0x00000417 
+ 00001029  0x000005de beq  0x00000029 , 0x0000041a 
+ 00001030  0x000005df beq  0x00000032 , 0x0000041c 
+ 00001031  0x000005e0 beq  0x00000040 , 0x0000041e 
+ 00001032  0x000005e1 beq  0x00000004 , 0x00000420 
+ 00001033  0x000005e2 beq  0x00000013 , 0x00000420 
+ 00001034  0x000005e3 beq  0x00000027 , 0x00000422 
+ 00001035  0x000005e4 beq  0x00000019 , 0x000033df 
+ 00001036  0x000005e5 beq  0x00000021 , 0x00000424 
+ 00001037  0x000005e6 beq  0x00000001 , 0x00000426 
+ 00001038  0x000005e7 beq  0x00000002 , 0x0000042c 
+ 00001039  0x000005e8 beq  0x0000002b , 0x0000042f 
+ 00001040  0x000005e9 beq  0x00000039 , 0x00000431 
+ 00001041  0x000005ea beq  0x0000003a , 0x00000434 
+ 00001042  0x000005eb beq  0x0000003c , 0x00000437 
+ 00001043  0x000005ec branch  0x0000417d 
+ 00001044  0x000005ef call  0x000002cf 
+ 00001045  0x000005f0 jam  0x000000b0 , 0x000011c7 
+ 00001046  0x000005f1 branch  0x0000077b 
+ 00001047  0x000005f4 call  0x00000442 
+ 00001048  0x000005f5 jam  0x000000a2 , 0x000011c7 
+ 00001049  0x000005f6 branch  0x0000077b 
+ 00001050  0x000005fa jam  0x00000012 , 0x00000a99 
+ 00001051  0x000005fb branch  0x00007d8f 
+ 00001052  0x000005fe jam  0x000000b3 , 0x000011c7 
+ 00001053  0x000005ff branch  0x0000077b 
+ 00001054  0x00000602 jam  0x000000a1 , 0x000011c7 
+ 00001055  0x00000603 branch  0x0000077b 
+ 00001056  0x00000608 jam  0x000000a3 , 0x000011c7 
+ 00001057  0x00000609 branch  0x0000077b 
+ 00001058  0x0000060c call  0x0000438e 
+ 00001059  0x0000060d branch  0x000033a7 
+ 00001060  0x00000610 jam  0x000000b1 , 0x000011c7 
+ 00001061  0x00000611 branch  0x0000077b 
+ 00001062  0x00000614 call  0x0000051f 
+ 00001063  0x00000615 call  0x000002cf 
+ 00001064  0x00000616 call  0x00000495 
+ 00001065  0x00000617 call  0x000004d8 
+ 00001066  0x00000618 jam  0x00000000 , 0x00004809 
+ 00001067  0x00000619 branch  0x000042ca 
+ 00001068  0x0000061c call  0x00000442 
+ 00001069  0x0000061d jam  0x000000b4 , 0x000011c7 
+ 00001070  0x0000061e branch  0x0000077b 
+ 00001071  0x00000621 jam  0x000000b2 , 0x000011c7 
+ 00001072  0x00000622 branch  0x0000077b 
+ 00001073  0x00000625 call  0x000002cf 
+ 00001074  0x00000626 jam  0x00000092 , 0x000011c7 
+ 00001075  0x00000627 branch  0x0000077b 
+ 00001076  0x0000062a call  0x00000442 
+ 00001077  0x0000062b jam  0x000000a0 , 0x000011c7 
+ 00001078  0x0000062c branch  0x0000077b 
+ 00001079  0x0000062f call  0x0000051f 
+ 00001080  0x00000630 jam  0x00000001 , 0x00004b60 
+ 00001081  0x00000631 call  0x00000495 
+ 00001082  0x00000632 call  0x000002cf 
+ 00001083  0x00000633 call  0x00003f8d 
+ 00001084  0x00000635 setarg  0x00002ee0 
+ 00001085  0x00000636 store  0x00000002 , 0x000046b0 
+ 00001086  0x00000637 rtn 
+ 00001087  0x0000063a call  0x00000442 
+ 00001088  0x0000063b jam  0x000000a4 , 0x000011c7 
+ 00001089  0x0000063c branch  0x0000077b 
+ 00001090  0x0000063f fetch  0x00000001 , 0x00004afe 
+ 00001091  0x00000640 rtn  0x00000034 
+ 00001092  0x00000641 jam  0x00000000 , 0x00004afe 
+ 00001093  0x00000642 branch  0x00000308 
+ 00001094  0x00000646 call  0x000004e1 
+ 00001095  0x00000647 call  0x00000506 
+ 00001096  0x00000648 call  0x00000522 
+ 00001097  0x0000064a call  0x00000498 
+ 00001098  0x0000064b call  0x00000481 
+ 00001099  0x0000064c call  0x0000048a 
+ 00001100  0x0000064d call  0x00000486 
+ 00001101  0x0000064e call  0x00004234 
+ 00001102  0x0000064f call  0x00000456 
+ 00001103  0x00000650 call  0x0000047a 
+ 00001104  0x00000653 call  0x0000046c 
+ 00001105  0x00000654 call  0x00000472 
+ 00001106  0x00000655 call  0x00000461 
+ 00001107  0x00000656 call  0x00004231 
+ 00001108  0x00000657 call  0x00000464 
+ 00001109  0x00000658 branch  0x0000423a 
+ 00001110  0x0000065c fetch  0x00000001 , 0x000046f5 
+ 00001111  0x0000065d rtnbit0  0x00000006 
+ 00001112  0x0000065e fetcht  0x00000001 , 0x000046ed 
+ 00001113  0x0000065f call  0x0000681d 
+ 00001114  0x00000660 branch  0x0000045e , 0x00000001 
+ 00001115  0x00000662 fetch  0x00000001 , 0x00004720 
+ 00001116  0x00000663 bne  0x00000001 , 0x0000659a 
+ 00001117  0x00000664 rtn 
+ 00001118  0x00000666 fetch  0x00000001 , 0x00004720 
+ 00001119  0x00000667 bne  0x00000002 , 0x0000659a 
+ 00001120  0x00000668 rtn 
+ 00001121  0x0000066c arg  0x00004809 , 0x00000013 
+ 00001122  0x0000066d arg  0x0000637a , 0x00000012 
+ 00001123  0x0000066e branch  0x0000336d 
+ 00001124  0x00000671 arg  0x00004b09 , 0x00000013 
+ 00001125  0x00000672 arg  0x00000467 , 0x00000012 
+ 00001126  0x00000673 branch  0x0000336d 
+ 00001127  0x00000675 jam  0x00000001 , 0x00004b0a 
+ 00001128  0x00000676 rtn 
+ 00001129  0x00000683 fetch  0x00000001 , 0x00004b2f 
+ 00001130  0x00000684 nrtn  0x00000034 
+ 00001131  0x00000685 branch  0x00004266 
+ 00001132  0x00000688 arg  0x00004b5b , 0x00000013 
+ 00001133  0x00000689 arg  0x0000046f , 0x00000012 
+ 00001134  0x0000068a branch  0x0000336d 
+ 00001135  0x0000068c fetch  0x00000001 , 0x000047c5 
+ 00001136  0x0000068d store  0x00000001 , 0x00004172 
+ 00001137  0x0000068e branch  0x0000047f 
+ 00001138  0x00000691 fetch  0x00000001 , 0x00004b61 
+ 00001139  0x00000692 rtn  0x00000034 
+ 00001140  0x00000693 arg  0x00004b66 , 0x00000013 
+ 00001141  0x00000694 arg  0x00000477 , 0x00000012 
+ 00001142  0x00000695 branch  0x0000336d 
+ 00001143  0x00000697 fetch  0x00000001 , 0x00004b67 
+ 00001144  0x00000698 nrtn  0x00000034 
+ 00001145  0x00000699 branch  0x00005bf5 
+ 00001146  0x0000069d arg  0x00004b5c , 0x00000013 
+ 00001147  0x0000069e arg  0x0000047d , 0x00000012 
+ 00001148  0x0000069f branch  0x0000336d 
+ 00001149  0x000006a1 setarg  0x00249f00 
+ 00001150  0x000006a2 store  0x00000003 , 0x00004c21 
+ 00001151  0x000006a4 jam  0x00000001 , 0x00004b5a 
+ 00001152  0x000006a5 rtn 
+ 00001153  0x000006a8 arg  0x00004807 , 0x00000013 
+ 00001154  0x000006a9 arg  0x00000484 , 0x00000012 
+ 00001155  0x000006aa branch  0x0000336d 
+ 00001156  0x000006ac jam  0x00000000 , 0x00004806 
+ 00001157  0x000006ad rtn 
+ 00001158  0x000006b0 fetch  0x00000001 , 0x00004720 
+ 00001159  0x000006b1 rtneq  0x00000002 
+ 00001160  0x000006b2 fetch  0x00000001 , 0x000046f5 
+ 00001161  0x000006b3 bbit1  0x00000004 , 0x00004394 
+ 00001162  0x000006f4 fetch  0x00000001 , 0x00004b2f 
+ 00001163  0x000006f5 nrtn  0x00000034 
+ 00001164  0x000006f6 fetch  0x00000001 , 0x0000479d 
+ 00001165  0x000006f7 rtn  0x00000034 
+ 00001166  0x000006f8 fetch  0x00000001 , 0x0000479e 
+ 00001167  0x000006f9 branch  0x00000493 , 0x00000034 
+ 00001168  0x000006fa increase  0xffffffff , 0x0000003f 
+ 00001169  0x000006fb store  0x00000001 , 0x0000479e 
+ 00001170  0x000006fc rtn 
+ 00001171  0x000006fe jam  0x00000000 , 0x0000479d 
+ 00001172  0x000006ff branch  0x0000340a 
+ 00001173  0x00000702 jam  0x00000000 , 0x0000479d 
+ 00001174  0x00000703 jam  0x00000000 , 0x0000479e 
+ 00001175  0x00000704 rtn 
+ 00001176  0x00000707 fetch  0x00000001 , 0x00004b24 
+ 00001177  0x00000708 rtn  0x00000034 
+ 00001178  0x00000709 fetch  0x00000001 , 0x00004b27 
+ 00001179  0x0000070a beq  0x00000000 , 0x0000049e 
+ 00001180  0x0000070b beq  0x00000001 , 0x000004a8 
+ 00001181  0x0000070c rtn 
+ 00001182  0x0000070f call  0x000004b8 
+ 00001183  0x00000710 fetch  0x00000001 , 0x00004b2d 
+ 00001184  0x00000711 increase  0x00000001 , 0x0000003f 
+ 00001185  0x00000712 store  0x00000001 , 0x00004b2d 
+ 00001186  0x00000713 fetcht  0x00000001 , 0x00004b28 
+ 00001187  0x00000714 isub  0x00000002 , 0x0000003e 
+ 00001188  0x00000715 call  0x000004a6 , 0x00000005 
+ 00001189  0x00000716 rtn 
+ 00001190  0x00000718 jam  0x00000000 , 0x00004b2f 
+ 00001191  0x00000719 branch  0x000004c6 
+ 00001192  0x0000071c fetch  0x00000001 , 0x00004b2a 
+ 00001193  0x0000071d increase  0xffffffff , 0x0000003f 
+ 00001194  0x0000071e store  0x00000001 , 0x00004b2a 
+ 00001195  0x0000071f nrtn  0x00000034 
+ 00001196  0x00000720 fetch  0x00000001 , 0x00004b29 
+ 00001197  0x00000721 store  0x00000001 , 0x00004b2a 
+ 00001198  0x00000722 fetch  0x00000001 , 0x00004b2e 
+ 00001199  0x00000723 branch  0x000004b4 , 0x00000034 
+ 00001200  0x00000724 fetch  0x00000001 , 0x00004b2b 
+ 00001201  0x00000725 branch  0x000004c4 , 0x00000034 
+ 00001202  0x00000726 increase  0xffffffff , 0x0000003f 
+ 00001203  0x00000727 store  0x00000001 , 0x00004b2b 
+ 00001204  0x00000729 fetch  0x00000001 , 0x00004b26 
+ 00001205  0x0000072a beq  0x00000001 , 0x000004c6 
+ 00001206  0x0000072b beq  0x00000000 , 0x000004b8 
+ 00001207  0x0000072c rtn 
+ 00001208  0x0000072f jam  0x00000001 , 0x00004b26 
+ 00001209  0x00000730 fetch  0x00000001 , 0x00004720 
+ 00001210  0x00000731 beq  0x00000002 , 0x000004c0 
+ 00001211  0x00000733 fetcht  0x00000001 , 0x00004b25 
+ 00001212  0x00000734 set1  0x00000007 , 0x00000002 
+ 00001213  0x00000735 call  0x0000680e 
+ 00001214  0x00000736 fetcht  0x00000001 , 0x00004b25 
+ 00001215  0x00000737 branch  0x00006829 
+ 00001216  0x00000739 fetcht  0x00000001 , 0x00004b25 
+ 00001217  0x0000073a call  0x0000680e 
+ 00001218  0x0000073b fetcht  0x00000001 , 0x00004b25 
+ 00001219  0x0000073c branch  0x00006825 
+ 00001220  0x0000073f setarg  0x00000000 
+ 00001221  0x00000740 store  0x00000003 , 0x00004b2a 
+ 00001222  0x00000742 fetch  0x00000001 , 0x00004b2b 
+ 00001223  0x00000743 nbranch  0x000004ca , 0x00000034 
+ 00001224  0x00000744 jam  0x00000000 , 0x00004b24 
+ 00001225  0x00000745 jam  0x00000000 , 0x00004b27 
+ 00001226  0x00000747 jam  0x00000000 , 0x00004b2d 
+ 00001227  0x00000748 jam  0x00000000 , 0x00004b26 
+ 00001228  0x00000749 branch  0x000000d4 
+ 00001229  0x0000074e jam  0x00000001 , 0x00004b2f 
+ 00001230  0x0000074f jam  0x00000001 , 0x00004b24 
+ 00001231  0x00000750 jam  0x00000000 , 0x00004b27 
+ 00001232  0x00000751 jam  0x00000000 , 0x00004b2d 
+ 00001233  0x00000752 rtn 
+ 00001234  0x0000075f jam  0x00000003 , 0x00004b29 
+ 00001235  0x00000762 jam  0x00000001 , 0x00004b2b 
+ 00001236  0x00000764 jam  0x00000001 , 0x00004b2a 
+ 00001237  0x00000765 jam  0x00000001 , 0x00004b24 
+ 00001238  0x00000766 jam  0x00000001 , 0x00004b27 
+ 00001239  0x00000767 rtn 
+ 00001240  0x0000076a jam  0x00000000 , 0x00004b2b 
+ 00001241  0x0000076b fetch  0x00000001 , 0x00004b2d 
+ 00001242  0x0000076c nrtn  0x00000034 
+ 00001243  0x0000076d fetch  0x00000001 , 0x00004b2f 
+ 00001244  0x0000076e nrtn  0x00000034 
+ 00001245  0x0000076f branch  0x000004c4 
+ 00001246  0x00000772 jam  0x00000005 , 0x00004b29 
+ 00001247  0x00000773 jam  0x00000001 , 0x00004b2e 
+ 00001248  0x00000774 branch  0x000004d4 
+ 00001249  0x0000077a fetch  0x00000001 , 0x000046ce 
+ 00001250  0x0000077b increase  0x00000001 , 0x0000003f 
+ 00001251  0x0000077c store  0x00000001 , 0x000046ce 
+ 00001252  0x0000077d sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00001253  0x0000077e rtn  0x00000002 
+ 00001254  0x00000780 call  0x000068a8 
+ 00001255  0x00000782 jam  0x00000000 , 0x000046ce 
+ 00001256  0x00000783 call  0x000068eb 
+ 00001257  0x00000784 call  0x00006908 
+ 00001258  0x00000785 store  0x00000002 , 0x0000470f 
+ 00001259  0x00000786 arg  0x00004709 , 0x00000011 
+ 00001260  0x00000787 call  0x000004f9 
+ 00001261  0x00000788 fetch  0x00000001 , 0x00004231 
+ 00001262  0x00000789 bbit1  0x00000001 , 0x0000340a 
+ 00001263  0x0000078a bbit0  0x00000000 , 0x000004f2 
+ 00001264  0x0000078b jam  0x00000001 , 0x00004afd 
+ 00001265  0x0000078c branch  0x000043e7 
+ 00001266  0x0000078f call  0x000043e9 
+ 00001267  0x00000790 fetch  0x00000001 , 0x00004afd 
+ 00001268  0x00000791 rtn  0x00000034 
+ 00001269  0x00000792 jam  0x00000000 , 0x00004afd 
+ 00001270  0x00000794 fetch  0x00000001 , 0x000046ef 
+ 00001271  0x00000795 store  0x00000001 , 0x00004715 
+ 00001272  0x00000797 branch  0x000004c4 
+ 00001273  0x000007a8 ifetch  0x00000008 , 0x00000011 
+ 00001274  0x000007a9 store  0x00000008 , 0x00000a9a 
+ 00001275  0x000007aa fetcht  0x00000002 , 0x00000a9c 
+ 00001276  0x000007ab fetch  0x00000002 , 0x00000aa0 
+ 00001277  0x000007ac isub  0x00000002 , 0x0000003e 
+ 00001278  0x000007ad nbranch  0x00006944 , 0x00000002 
+ 00001279  0x000007ae fetcht  0x00000002 , 0x00000a9e 
+ 00001280  0x000007af isub  0x00000002 , 0x0000003e 
+ 00001281  0x000007b0 nbranch  0x00006940 , 0x00000002 
+ 00001282  0x000007b2 fetch  0x00000001 , 0x00004231 
+ 00001283  0x000007b3 set0  0x00000000 , 0x0000003f 
+ 00001284  0x000007b4 store  0x00000001 , 0x00004231 
+ 00001285  0x000007b5 rtn 
+ 00001286  0x000007b8 fetch  0x00000001 , 0x00004b38 
+ 00001287  0x000007b9 nrtn  0x00000034 
+ 00001288  0x000007ba fetch  0x00000004 , 0x000046d3 
+ 00001289  0x000007bb rtnbit0  0x00000004 
+ 00001290  0x000007bc fetch  0x00000002 , 0x00004682 
+ 00001291  0x000007bd rtnbit1  0x0000000b 
+ 00001292  0x000007be rtnbit1  0x00000006 
+ 00001293  0x000007bf fetch  0x00000001 , 0x000046ef 
+ 00001294  0x000007c0 store  0x00000001 , 0x00004715 
+ 00001295  0x000007c2 setarg  0x00249f00 
+ 00001296  0x000007c3 store  0x00000003 , 0x00004c21 
+ 00001297  0x000007c5 fetch  0x00000001 , 0x000046cf 
+ 00001298  0x000007c6 pincrease  0x00000001 
+ 00001299  0x000007c7 store  0x00000001 , 0x000046cf 
+ 00001300  0x000007c9 beq  0x00000005 , 0x000004c4 
+ 00001301  0x000007ca sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00001302  0x000007cb nbranch  0x00000518 , 0x00000002 
+ 00001303  0x000007cc rtn 
+ 00001304  0x000007ce jam  0x00000001 , 0x000046cf 
+ 00001305  0x000007d0 branch  0x000004b8 
+ 00001306  0x000007d3 fetch  0x00000001 , 0x00004b37 
+ 00001307  0x000007d4 increase  0x00000001 , 0x0000003f 
+ 00001308  0x000007d5 store  0x00000001 , 0x00004b37 
+ 00001309  0x000007d6 sub  0x0000003f , 0x00000008 , 0x0000003e 
+ 00001310  0x000007d7 rtn  0x00000002 
+ 00001311  0x000007d9 jam  0x00000000 , 0x00004b38 
+ 00001312  0x000007da jam  0x00000096 , 0x00004b36 
+ 00001313  0x000007db rtn 
+ 00001314  0x000007dd arg  0x00004b36 , 0x00000013 
+ 00001315  0x000007de arg  0x00000525 , 0x00000012 
+ 00001316  0x000007df branch  0x0000336d 
+ 00001317  0x000007e1 setarg  0x00604800 
+ 00001318  0x000007e2 store  0x00000003 , 0x00004c21 
+ 00001319  0x000007e3 jam  0x00000001 , 0x00004b38 
+ 00001320  0x000007e4 branch  0x000004f6 
+ 00001321  0x000007e8 fetch  0x00000001 , 0x000046e0 
+ 00001322  0x000007e9 beq  0x00000008 , 0x0000053f 
+ 00001323  0x000007ea beq  0x00000004 , 0x00000546 
+ 00001324  0x000007eb beq  0x00000002 , 0x0000054b 
+ 00001325  0x000007fa fetch  0x00000001 , 0x0000477a 
+ 00001326  0x000007fb beq  0x00000000 , 0x00000535 
+ 00001327  0x000007fc beq  0x00000001 , 0x00000537 
+ 00001328  0x000007fd beq  0x00000002 , 0x00000539 
+ 00001329  0x000007fe beq  0x00000003 , 0x0000053b 
+ 00001330  0x000007ff rtn 
+ 00001331  0x00000803 store  0x00000001 , 0x000046b5 
+ 00001332  0x00000804 branch  0x00003dc1 
+ 00001333  0x00000806 fetch  0x00000001 , 0x0000477f 
+ 00001334  0x00000807 branch  0x00000533 
+ 00001335  0x00000809 fetch  0x00000001 , 0x0000477f 
+ 00001336  0x0000080a branch  0x00000533 
+ 00001337  0x0000080c fetch  0x00000001 , 0x0000477f 
+ 00001338  0x0000080d branch  0x00000533 
+ 00001339  0x0000080f fetch  0x00000001 , 0x00004782 
+ 00001340  0x00000810 branch  0x00000533 
+ 00001341  0x00000813 jam  0x00000002 , 0x0000477a 
+ 00001342  0x00000814 rtn 
+ 00001343  0x00000818 fetch  0x00000001 , 0x0000477a 
+ 00001344  0x00000819 beq  0x00000001 , 0x00000544 
+ 00001345  0x0000081a beq  0x00000003 , 0x00003d88 
+ 00001346  0x0000081b beq  0x00000002 , 0x00003d8c 
+ 00001347  0x0000081c branch  0x00003d8a 
+ 00001348  0x0000081e jam  0x00000000 , 0x000046b5 
+ 00001349  0x0000081f branch  0x00003dc1 
+ 00001350  0x00000825 fetch  0x00000001 , 0x0000477a 
+ 00001351  0x00000826 beq  0x00000000 , 0x00003d9d 
+ 00001352  0x00000827 beq  0x00000001 , 0x00003d9b 
+ 00001353  0x00000828 beq  0x00000003 , 0x00003da1 
+ 00001354  0x00000829 branch  0x00003d9f 
+ 00001355  0x0000082e fetch  0x00000001 , 0x0000477a 
+ 00001356  0x0000082f beq  0x00000001 , 0x00003d88 
+ 00001357  0x00000830 beq  0x00000000 , 0x00003d8a 
+ 00001358  0x00000831 beq  0x00000003 , 0x00000550 
+ 00001359  0x00000832 branch  0x00003d8e 
+ 00001360  0x00000834 setarg  0x00000005 
+ 00001361  0x00000835 branch  0x00003dbe 
+ 00001362  0x00000838 jam  0x00000002 , 0x0000477a 
+ 00001363  0x00000839 rtn 
+ 00001364  0x0000083c disable  0x00000028 
+ 00001365  0x0000083d setarg  0x00000000 
+ 00001366  0x0000083e store  0x00000006 , 0x0000469b 
+ 00001367  0x0000083f call  0x00003fb5 
+ 00001368  0x00000840 call  0x00004079 
+ 00001369  0x00000841 call  0x0000407e 
+ 00001370  0x00000842 call  0x00000562 
+ 00001371  0x00000843 nbranch  0x0000055f , 0x00000028 
+ 00001372  0x00000844 call  0x0000079d 
+ 00001373  0x00000845 call  0x0000051a 
+ 00001374  0x00000846 branch  0x00003fa0 
+ 00001375  0x00000849 call  0x0000079a 
+ 00001376  0x0000084a jam  0x00000000 , 0x00004b37 
+ 00001377  0x0000084b rtn 
+ 00001378  0x0000084e call  0x00000564 
+ 00001379  0x0000084f branch  0x0000409a 
+ 00001380  0x00000852 arg  0x00000000 , 0x00000011 
+ 00001381  0x00000853 call  0x00000569 
+ 00001382  0x00000854 call  0x0000056f 
+ 00001383  0x00000855 call  0x00000575 
+ 00001384  0x00000857 branch  0x0000408e 
+ 00001385  0x0000085f fetcht  0x00000001 , 0x000046e2 
+ 00001386  0x00000860 call  0x00000584 
+ 00001387  0x00000861 fetcht  0x00000001 , 0x000046e2 
+ 00001388  0x00000862 call  0x0000681d 
+ 00001389  0x00000863 setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00001390  0x00000864 rtn 
+ 00001391  0x00000866 fetcht  0x00000001 , 0x000046e3 
+ 00001392  0x00000867 call  0x00000584 
+ 00001393  0x00000868 fetcht  0x00000001 , 0x000046e3 
+ 00001394  0x00000869 call  0x0000681d 
+ 00001395  0x0000086a setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00001396  0x0000086b rtn 
+ 00001397  0x0000086d fetcht  0x00000001 , 0x000046e4 
+ 00001398  0x0000086e call  0x00000584 
+ 00001399  0x0000086f fetcht  0x00000001 , 0x000046e4 
+ 00001400  0x00000870 call  0x0000681d 
+ 00001401  0x00000871 setflag  0x00000001 , 0x00000002 , 0x00000011 
+ 00001402  0x00000872 rtn 
+ 00001403  0x00000883 set0  0x00000007 , 0x00000002 
+ 00001404  0x00000884 arg  0x00008078 , 0x00000005 
+ 00001405  0x00000885 call  0x00006830 
+ 00001406  0x00000886 set1  0x00000007 , 0x00000002 
+ 00001407  0x00000888 arg  0x0000807c , 0x00000005 
+ 00001408  0x00000889 call  0x00006830 
+ 00001409  0x0000088a set0  0x00000007 , 0x00000002 
+ 00001410  0x0000088b arg  0x00008070 , 0x00000005 
+ 00001411  0x0000088c branch  0x00006830 
+ 00001412  0x0000088f set1  0x00000007 , 0x00000002 
+ 00001413  0x00000891 arg  0x00008078 , 0x00000005 
+ 00001414  0x00000892 call  0x00006830 
+ 00001415  0x00000893 set0  0x00000007 , 0x00000002 
+ 00001416  0x00000894 branch  0x0000057f 
+ 00001417  0x00000897 fetcht  0x00000001 , 0x000046ed 
+ 00001418  0x00000899 set0  0x00000007 , 0x00000002 
+ 00001419  0x0000089a branch  0x00000585 
+ 00001420  0x0000089d call  0x00000495 
+ 00001421  0x0000089e isolate1  0x00000026 , 0x00000000 
+ 00001422  0x0000089f call  0x000001c6 , 0x00000001 
+ 00001423  0x000008a0 branch  0x0000426d 
+ 00001424  0x000008a3 jam  0x00000081 , 0x000011c7 
+ 00001425  0x000008a4 branch  0x0000077b 
+ 00001426  0x000008a7 jam  0x00000050 , 0x000011c7 
+ 00001427  0x000008a8 branch  0x0000077b 
+ 00001428  0x000008ab call  0x0000036e 
+ 00001429  0x000008ac arg  0x00000002 , 0x00000002 
+ 00001430  0x000008ad arg  0x000047c2 , 0x00000011 
+ 00001431  0x000008ae arg  0x0000005f , 0x00000012 
+ 00001432  0x000008af fetch  0x00000003 , 0x00004700 
+ 00001433  0x000008b0 iadd  0x00000012 , 0x0000003f 
+ 00001434  0x000008b1 branch  0x00006562 
+ 00001435  0x000008b4 arg  0x0000437b , 0x00000005 
+ 00001436  0x000008b5 arg  0x00000013 , 0x00000039 
+ 00001437  0x000008b6 call  0x00007f01 
+ 00001438  0x000008b7 branch  0x000057b8 
+ 00001439  0x000008ba setarg  0x00000000 
+ 00001440  0x000008bb store  0x00000002 , 0x000046ac 
+ 00001441  0x000008bc call  0x000002fe 
+ 00001442  0x000008c0 fetch  0x00000001 , 0x00004092 
+ 00001443  0x000008c1 isolate1  0x00000000 , 0x0000003f 
+ 00001444  0x000008c2 call  0x000042d7 , 0x00000001 
+ 00001445  0x000008c5 branch  0x000004d8 
+ 00001446  0x000008c9 fetch  0x00000001 , 0x0000450f 
+ 00001447  0x000008ca pincrease  0x00000001 
+ 00001448  0x000008cb store  0x00000001 , 0x0000450f 
+ 00001449  0x000008cc beq  0x0000000c , 0x00005395 
+ 00001450  0x000008cd call  0x000055aa 
+ 00001451  0x000008ce call  0x0000561e 
+ 00001452  0x000008cf call  0x0000071e 
+ 00001453  0x000008d0 branch  0x0000538f 
+ 00001454  0x000008d3 fetch  0x00000001 , 0x00000016 
+ 00001455  0x000008d4 increase  0x00000001 , 0x0000003f 
+ 00001456  0x000008d5 store  0x00000001 , 0x00000016 
+ 00001457  0x000008d6 rtnne  0x00000028 
+ 00001458  0x000008d7 jam  0x00000025 , 0x00000016 
+ 00001459  0x000008d8 rtn 
+ 00001460  0x000008db call  0x000029bb 
+ 00001461  0x000008dc call  0x0000006b 
+ 00001462  0x000008dd branch  0x000054a3 
+ 00001463  0x000008e0 jam  0x00000040 , 0x000011c7 
+ 00001464  0x000008e1 branch  0x0000077b 
+ 00001465  0x000008e4 jam  0x00000041 , 0x000011c7 
+ 00001466  0x000008e5 branch  0x0000077b 
+ 00001467  0x000008e8 fetch  0x00000001 , 0x00000456 
+ 00001468  0x000008e9 bbit1  0x00000005 , 0x000005cf 
+ 00001469  0x000008ea call  0x00000710 
+ 00001470  0x000008eb fetch  0x00000001 , 0x0000478e 
+ 00001471  0x000008ec nbranch  0x000005c5 , 0x00000034 
+ 00001472  0x000008ed fetch  0x00000001 , 0x0000043f 
+ 00001473  0x000008ee bbit0  0x00000004 , 0x000005c9 
+ 00001474  0x000008ef fetch  0x00000001 , 0x000002da 
+ 00001475  0x000008f0 branch  0x000005c9 , 0x00000034 
+ 00001476  0x000008f1 branch  0x00005664 
+ 00001477  0x000008f3 fetch  0x00000001 , 0x0000478e 
+ 00001478  0x000008f4 increase  0xffffffff , 0x0000003f 
+ 00001479  0x000008f5 store  0x00000001 , 0x0000478e 
+ 00001480  0x000008f6 branch  0x00005664 
+ 00001481  0x000008f8 fetch  0x00000001 , 0x000044c4 
+ 00001482  0x000008f9 bne  0x00000005 , 0x000005cc 
+ 00001483  0x000008fa jam  0x00000003 , 0x0000478e 
+ 00001484  0x000008fc call  0x00005892 
+ 00001485  0x000008fd call  0x000003af , 0x00000034 
+ 00001486  0x000008fe branch  0x00005622 
+ 00001487  0x00000901 call  0x000005d1 
+ 00001488  0x00000902 branch  0x000005dd 
+ 00001489  0x00000905 fetch  0x00000001 , 0x000046c5 
+ 00001490  0x00000906 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001491  0x00000907 rtnne  0x00000003 
+ 00001492  0x00000908 fetch  0x00000001 , 0x000047c1 
+ 00001493  0x00000909 rtn  0x00000034 
+ 00001494  0x0000090a fetch  0x00000001 , 0x000043dd 
+ 00001495  0x0000090b rtn  0x00000034 
+ 00001496  0x0000090c fetch  0x00000001 , 0x000043dc 
+ 00001497  0x0000090d set1  0x00000004 , 0x0000003f 
+ 00001498  0x0000090e store  0x00000001 , 0x000043dc 
+ 00001499  0x0000090f call  0x00005650 
+ 00001500  0x00000910 rtn 
+ 00001501  0x00000915 branch  0x00000714 
+ 00001502  0x00000918 fetch  0x00000001 , 0x0000479f 
+ 00001503  0x00000919 rtn  0x00000034 
+ 00001504  0x0000091a fetch  0x00000001 , 0x000046c5 
+ 00001505  0x0000091b and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001506  0x0000091c rtneq  0x00000003 
+ 00001507  0x0000091d jam  0x00000001 , 0x000046c6 
+ 00001508  0x0000091e rtn 
+ 00001509  0x00000921 rtnmark1  0x0000000f 
+ 00001510  0x00000922 call  0x00005890 
+ 00001511  0x00000923 nrtn  0x00000034 
+ 00001512  0x00000924 fetch  0x00000001 , 0x000002d9 
+ 00001513  0x00000925 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001514  0x00000926 store  0x00000001 , 0x0000450c 
+ 00001515  0x00000927 ifetch  0x00000001 , 0x00000006 
+ 00001516  0x00000928 and  0x0000003f , 0x0000001f , 0x0000003f 
+ 00001517  0x00000929 store  0x00000001 , 0x0000450b 
+ 00001518  0x0000092a rtn  0x00000034 
+ 00001519  0x0000092b copy  0x00000006 , 0x0000003f 
+ 00001520  0x0000092c store  0x00000002 , 0x0000450d 
+ 00001521  0x0000092d fetch  0x00000001 , 0x0000450c 
+ 00001522  0x0000092e beq  0x00000003 , 0x000005f4 
+ 00001523  0x0000092f branch  0x0000568d 
+ 00001524  0x00000931 fetch  0x00000001 , 0x000002db 
+ 00001525  0x00000932 beq  0x00000001 , 0x000005f7 
+ 00001526  0x00000933 branch  0x00005c65 
+ 00001527  0x00000935 ifetch  0x00000005 , 0x00000006 
+ 00001528  0x00000936 store  0x00000005 , 0x000043ce 
+ 00001529  0x00000937 ifetch  0x00000002 , 0x00000006 
+ 00001530  0x00000938 store  0x00000002 , 0x0000045f 
+ 00001531  0x00000939 branch  0x00005c8a 
+ 00001532  0x0000093d fetch  0x00000001 , 0x000043d8 
+ 00001533  0x0000093e store  0x00000001 , 0x00004172 
+ 00001534  0x0000093f store  0x00000001 , 0x000047c5 
+ 00001535  0x00000940 rtn 
+ 00001536  0x00000942 ifetch  0x00000002 , 0x00000006 
+ 00001537  0x00000943 beq  0x00000004 , 0x00000604 
+ 00001538  0x00000944 beq  0x00000006 , 0x00000631 
+ 00001539  0x00000945 branch  0x00005698 
+ 00001540  0x00000947 call  0x00007ea5 
+ 00001541  0x00000948 call  0x000005de 
+ 00001542  0x00000949 call  0x00007e9f 
+ 00001543  0x0000094a ifetch  0x00000003 , 0x00000006 
+ 00001544  0x0000094b store  0x00000003 , 0x00000477 
+ 00001545  0x0000094c beq  0x00000010 , 0x00000613 
+ 00001546  0x0000094d rshift8  0x0000003f , 0x00000002 
+ 00001547  0x0000094e sub  0x00000002 , 0x00000024 , 0x0000003e 
+ 00001548  0x0000094f branch  0x00000621 , 0x00000002 
+ 00001549  0x00000950 arg  0x000047c6 , 0x00000002 
+ 00001550  0x00000951 storet  0x00000002 , 0x000044bc 
+ 00001551  0x00000952 call  0x000058ad 
+ 00001552  0x00000953 setarg  0x00008e7a 
+ 00001553  0x00000954 store  0x00000002 , 0x000044bc 
+ 00001554  0x00000955 rtn 
+ 00001555  0x00000958 call  0x000059fa 
+ 00001556  0x00000959 call  0x00005879 
+ 00001557  0x0000095a increase  0x00000007 , 0x00000006 
+ 00001558  0x0000095b ifetch  0x00000001 , 0x00000006 
+ 00001559  0x0000095c rtnne  0x00000011 
+ 00001560  0x0000095d increase  0x00000005 , 0x00000006 
+ 00001561  0x0000095e ifetch  0x00000002 , 0x00000006 
+ 00001562  0x0000095f arg  0x00001812 , 0x00000002 
+ 00001563  0x00000960 isub  0x00000002 , 0x0000003e 
+ 00001564  0x00000961 nrtn  0x00000005 
+ 00001565  0x00000962 increase  0xfffffffc , 0x00000006 
+ 00001566  0x00000963 setarg  0x0000002b 
+ 00001567  0x00000964 istore  0x00000002 , 0x00000006 
+ 00001568  0x00000965 rtn 
+ 00001569  0x00000968 beq  0x0000000a , 0x00000623 
+ 00001570  0x00000969 branch  0x000058ad 
+ 00001571  0x0000096b fetcht  0x00000002 , 0x00000478 
+ 00001572  0x0000096c fetch  0x00000001 , 0x000044e9 
+ 00001573  0x0000096d bbit1  0x00000003 , 0x0000062a 
+ 00001574  0x00000977 fetch  0x00000002 , 0x00000478 
+ 00001575  0x00000978 beq  0x00000013 , 0x00005a76 
+ 00001576  0x0000097a fetcht  0x00000002 , 0x00000478 
+ 00001577  0x0000097b branch  0x000059bf 
+ 00001578  0x0000098a fetch  0x00000002 , 0x000044fa 
+ 00001579  0x0000098b isub  0x00000002 , 0x0000003e 
+ 00001580  0x0000098c nbranch  0x00000626 , 0x00000005 
+ 00001581  0x0000098d call  0x00005a42 
+ 00001582  0x0000098e nbranch  0x00000626 , 0x00000028 
+ 00001583  0x0000098f jam  0x00000005 , 0x0000047a 
+ 00001584  0x00000990 branch  0x00005a77 
+ 00001585  0x00000994 ifetch  0x00000001 , 0x00000006 
+ 00001586  0x00000995 beq  0x00000001 , 0x00000635 
+ 00001587  0x00000996 beq  0x00000005 , 0x00000637 
+ 00001588  0x00000997 branch  0x00005af6 
+ 00001589  0x0000099a jam  0x00000001 , 0x00004b67 
+ 00001590  0x0000099b branch  0x00005b09 
+ 00001591  0x0000099e jam  0x00000082 , 0x000011c7 
+ 00001592  0x0000099f branch  0x0000077b 
+ 00001593  0x000009a2 fetch  0x00000001 , 0x00000016 
+ 00001594  0x000009a3 bne  0x00000027 , 0x000056f2 
+ 00001595  0x000009a4 call  0x0000063f 
+ 00001596  0x000009a5 arg  0x00000000 , 0x00000007 
+ 00001597  0x000009a6 fetch  0x00000002 , 0x00004482 
+ 00001598  0x000009a7 branch  0x00007f08 
+ 00001599  0x000009a9 random  0x0000003f 
+ 00001600  0x000009aa arg  0x000001ff , 0x00000002 
+ 00001601  0x000009ab iand  0x00000002 , 0x0000003f 
+ 00001602  0x000009ac add  0x0000003f , 0x000000fa , 0x0000003f 
+ 00001603  0x000009ad branch  0x00003cbe 
+ 00001604  0x000009b0 disable  0x0000002b 
+ 00001605  0x000009b1 branch  0x00000647 , 0x0000002e 
+ 00001606  0x000009b2 nbranch  0x00005806 , 0x0000002d 
+ 00001607  0x000009b4 call  0x00002bcb 
+ 00001608  0x000009b5 fetch  0x00000002 , 0x000040c1 
+ 00001609  0x000009b6 store  0x00000002 , 0x0000044d 
+ 00001610  0x000009b7 fetch  0x00000001 , 0x000046c5 
+ 00001611  0x000009b8 compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00001612  0x000009b9 nbranch  0x00002bde , 0x00000001 
+ 00001613  0x000009ba branch  0x000057fb 
+ 00001614  0x000009bd fetch  0x00000001 , 0x0000479f 
+ 00001615  0x000009be nrtn  0x00000034 
+ 00001616  0x000009bf fetch  0x00000001 , 0x00000478 
+ 00001617  0x000009c0 sub  0x0000003f , 0x0000001a , 0x0000003f 
+ 00001618  0x000009c1 nrtn  0x00000005 
+ 00001619  0x000009c2 branch  0x00003d60 
+ 00001620  0x000009c5 hfetch  0x00000001 , 0x00008077 
+ 00001621  0x000009c6 and_into  0x000000fd , 0x0000003f 
+ 00001622  0x000009c7 hstore  0x00000001 , 0x00008077 
+ 00001623  0x000009c8 hfetcht  0x00000001 , 0x00008073 
+ 00001624  0x000009c9 or_into  0x00000002 , 0x00000002 
+ 00001625  0x000009ca hstoret  0x00000001 , 0x00008073 
+ 00001626  0x000009cb call  0x000063ee 
+ 00001627  0x000009cc and_into  0x000000fd , 0x00000002 
+ 00001628  0x000009cd nop  0x0000000d 
+ 00001629  0x000009ce call  0x00000661 
+ 00001630  0x000009cf hstoret  0x00000001 , 0x00008073 
+ 00001631  0x000009d0 rtn 
+ 00001632  0x000009d3 call  0x000064dd 
+ 00001633  0x000009d5 hfetch  0x00000001 , 0x00008081 
+ 00001634  0x000009d6 set1  0x00000000 , 0x0000003f 
+ 00001635  0x000009d7 set0  0x00000001 , 0x0000003f 
+ 00001636  0x000009d8 set0  0x00000003 , 0x0000003f 
+ 00001637  0x000009d9 hstore  0x00000001 , 0x00008081 
+ 00001638  0x000009da rtn 
+ 00001639  0x000009de jam  0x00000000 , 0x000011c7 
+ 00001640  0x000009df branch  0x0000077b 
+ 00001641  0x000009e2 call  0x000021c9 
+ 00001642  0x000009e3 nrtn  0x00000028 
+ 00001643  0x000009e5 disable  0x00000028 
+ 00001644  0x000009e6 jam  0x00000020 , 0x00000011 
+ 00001645  0x000009e7 set0  0x0000000b , 0x00000000 
+ 00001646  0x000009e8 set0  0x0000002d , 0x00000000 
+ 00001647  0x000009ea call  0x00002a4f 
+ 00001648  0x000009eb call  0x000022e6 
+ 00001649  0x000009ec bmark1  0x0000000b , 0x00000676 
+ 00001650  0x000009ed call  0x00002455 
+ 00001651  0x000009ee nbranch  0x0000066f , 0x00000034 
+ 00001652  0x000009ef bmark1  0x0000002d , 0x0000067f 
+ 00001653  0x000009f0 branch  0x000021ec 
+ 00001654  0x000009f3 call  0x00002a4d 
+ 00001655  0x000009f4 arg  0x00000010 , 0x00000001 
+ 00001656  0x000009f5 call  0x000022dc 
+ 00001657  0x000009f6 set1  0x0000002d , 0x00000000 
+ 00001658  0x000009f7 set0  0x0000000b , 0x00000000 
+ 00001659  0x000009f8 fetch  0x00000001 , 0x00000077 
+ 00001660  0x000009f9 iforce  0x00000004 
+ 00001661  0x000009fa jam  0x00000002 , 0x00000011 
+ 00001662  0x000009fb branch  0x0000066f 
+ 00001663  0x000009fe fetch  0x00000004 , 0x00000165 
+ 00001664  0x000009ff pincrease  0x00000008 
+ 00001665  0x00000a00 store  0x00000004 , 0x00000165 
+ 00001666  0x00000a01 branch  0x000021f8 
+ 00001667  0x00000a04 bmark1  0x0000002c , 0x0000264d 
+ 00001668  0x00000a05 branch  0x0000258f 
+ 00001669  0x00000a08 call  0x000033af 
+ 00001670  0x00000a09 call  0x000026e9 
+ 00001671  0x00000a0a jam  0x00000002 , 0x00000a99 
+ 00001672  0x00000a0b call  0x00007d86 
+ 00001673  0x00000a0c call  0x00005cf7 
+ 00001674  0x00000a0d call  0x00004d6b 
+ 00001675  0x00000a0e branch  0x0000246e 
+ 00001676  0x00000a11 fetch  0x00000001 , 0x00000030 
+ 00001677  0x00000a12 isolate1  0x00000000 , 0x0000003f 
+ 00001678  0x00000a13 call  0x00000690 , 0x00000001 
+ 00001679  0x00000a14 branch  0x0000248a 
+ 00001680  0x00000a16 fetch  0x00000001 , 0x00000047 
+ 00001681  0x00000a17 isolate1  0x00000003 , 0x0000003f 
+ 00001682  0x00000a18 call  0x00000714 , 0x00000001 
+ 00001683  0x00000a19 ncall  0x00000710 , 0x00000001 
+ 00001684  0x00000a1a branch  0x0000071e 
+ 00001685  0x00000a1d call  0x000024f0 
+ 00001686  0x00000a1e nbranch  0x000028f9 , 0x00000018 
+ 00001687  0x00000a1f call  0x000029bb 
+ 00001688  0x00000a20 call  0x0000006b 
+ 00001689  0x00000a21 branch  0x00002518 
+ 00001690  0x00000a24 rtnmark1  0x00000026 
+ 00001691  0x00000a25 call  0x00002afa 
+ 00001692  0x00000a26 fetch  0x00000003 , 0x0000416f 
+ 00001693  0x00000a27 rtn  0x00000034 
+ 00001694  0x00000a28 fetch  0x00000001 , 0x00004091 
+ 00001695  0x00000a29 rtn  0x00000034 
+ 00001696  0x00000a2a fetch  0x00000001 , 0x0000465a 
+ 00001697  0x00000a2b branch  0x000006a4 , 0x00000034 
+ 00001698  0x00000a2c fetch  0x00000001 , 0x000045b1 
+ 00001699  0x00000a2d rtn  0x00000034 
+ 00001700  0x00000a2f fetch  0x00000001 , 0x000044c0 
+ 00001701  0x00000a30 nrtn  0x00000034 
+ 00001702  0x00000a31 call  0x00002c3a 
+ 00001703  0x00000a32 nrtn  0x00000034 
+ 00001704  0x00000a33 fetch  0x00000001 , 0x00004040 
+ 00001705  0x00000a34 compare  0x00000003 , 0x0000003f , 0x00000007 
+ 00001706  0x00000a35 nbranch  0x00002b9d , 0x00000001 
+ 00001707  0x00000a36 fetch  0x00000002 , 0x00004042 
+ 00001708  0x00000a37 arg  0x0000ffff , 0x00000002 
+ 00001709  0x00000a38 isub  0x00000002 , 0x0000003e 
+ 00001710  0x00000a39 rtn  0x00000005 
+ 00001711  0x00000a3a branch  0x00002b7d 
+ 00001712  0x00000a3d disable  0x0000002b 
+ 00001713  0x00000a3e fetch  0x00000001 , 0x00000030 
+ 00001714  0x00000a3f rtnbit0  0x00000001 
+ 00001715  0x00000a40 nbranch  0x00002bd0 , 0x0000002d 
+ 00001716  0x00000a41 call  0x00002bcb 
+ 00001717  0x00000a42 fetch  0x00000002 , 0x000040c1 
+ 00001718  0x00000a43 store  0x00000002 , 0x0000003e 
+ 00001719  0x00000a44 fetch  0x00000001 , 0x00000047 
+ 00001720  0x00000a45 bbit1  0x00000003 , 0x00002bde 
+ 00001721  0x00000a46 bmark0  0x0000000d , 0x00002bde 
+ 00001722  0x00000a47 call  0x00005274 
+ 00001723  0x00000a48 nbranch  0x00002bde , 0x00000034 
+ 00001724  0x00000a49 call  0x000006be , 0x00000034 
+ 00001725  0x00000a4a branch  0x00002bbe 
+ 00001726  0x00000a4c jam  0x00000001 , 0x0000008a 
+ 00001727  0x00000a4d jam  0x00000000 , 0x0000008b 
+ 00001728  0x00000a4e rtn 
+ 00001729  0x00000a51 jam  0x00000010 , 0x000011c7 
+ 00001730  0x00000a52 branch  0x0000077b 
+ 00001731  0x00000a55 jam  0x00000011 , 0x000011c7 
+ 00001732  0x00000a56 branch  0x0000077b 
+ 00001733  0x00000a59 fetch  0x00000001 , 0x00000552 
+ 00001734  0x00000a5a store  0x00000001 , 0x000004c9 
+ 00001735  0x00000a5b beq  0x00000013 , 0x000006c9 
+ 00001736  0x00000a5c branch  0x00005db4 
+ 00001737  0x00000a5e call  0x00005dcf 
+ 00001738  0x00000a5f jam  0x00000001 , 0x00004aff 
+ 00001739  0x00000a60 fetch  0x00000001 , 0x00004b01 
+ 00001740  0x00000a61 rtn  0x00000034 
+ 00001741  0x00000a62 jam  0x00000002 , 0x00004b01 
+ 00001742  0x00000a63 rtn 
+ 00001743  0x00000a66 jam  0x00000020 , 0x000011c7 
+ 00001744  0x00000a67 branch  0x0000077b 
+ 00001745  0x00000a6a call  0x000062bc 
+ 00001746  0x00000a6b nrtn  0x00000034 
+ 00001747  0x00000a6d fetch  0x00000001 , 0x00000055 
+ 00001748  0x00000a6e rtn  0x00000034 
+ 00001749  0x00000a6f beq  0x00000004 , 0x000006f3 
+ 00001750  0x00000a70 beq  0x00000010 , 0x000006d8 
+ 00001751  0x00000a71 branch  0x00006320 
+ 00001752  0x00000a74 fetch  0x00000001 , 0x0000455b 
+ 00001753  0x00000a75 rtneq  0x00000000 
+ 00001754  0x00000a76 beq  0x00000001 , 0x000006dc 
+ 00001755  0x00000a77 branch  0x0000635f 
+ 00001756  0x00000a79 rtn  0x00000029 
+ 00001757  0x00000a7c fetch  0x00000001 , 0x0000016d 
+ 00001758  0x00000a7d bbit1  0x00000000 , 0x000006e0 
+ 00001759  0x00000a7e branch  0x00006399 
+ 00001760  0x00000a80 fetch  0x00000001 , 0x00004b01 
+ 00001761  0x00000a81 beq  0x00000001 , 0x0000639d 
+ 00001762  0x00000a83 fetch  0x00000001 , 0x000041bd 
+ 00001763  0x00000a84 branch  0x000063a9 , 0x00000034 
+ 00001764  0x00000a85 fetch  0x00000001 , 0x000004d1 
+ 00001765  0x00000a86 rtnbit0  0x00000003 
+ 00001766  0x00000a87 rtnbit0  0x00000002 
+ 00001767  0x00000a88 fetch  0x00000001 , 0x00004b00 
+ 00001768  0x00000a89 rtn  0x00000034 
+ 00001769  0x00000a8a jam  0x00000000 , 0x00004b00 
+ 00001770  0x00000a8b fetch  0x00000004 , 0x000004e9 
+ 00001771  0x00000a8c arg  0x00000014 , 0x00000002 
+ 00001772  0x00000a8d iadd  0x00000002 , 0x00000002 
+ 00001773  0x00000a8e copy  0x00000022 , 0x0000003f 
+ 00001774  0x00000a8f isub  0x00000002 , 0x0000003e 
+ 00001775  0x00000a90 nbranch  0x000006f1 , 0x00000002 
+ 00001776  0x00000a91 branch  0x00006349 
+ 00001777  0x00000a94 jam  0x00000001 , 0x00004b00 
+ 00001778  0x00000a95 rtn 
+ 00001779  0x00000a98 jam  0x00000014 , 0x00004809 
+ 00001780  0x00000a99 branch  0x0000636f 
+ 00001781  0x00000aa0 call  0x000062bc 
+ 00001782  0x00000aa1 nbranch  0x00007ddb , 0x00000034 
+ 00001783  0x00000aa2 fetch  0x00000001 , 0x00000a99 
+ 00001784  0x00000aa3 bmark0  0x00000009 , 0x00007dd6 
+ 00001785  0x00000aa4 beq  0x0000001f , 0x000006fd 
+ 00001786  0x00000aa5 beq  0x00000020 , 0x00000700 
+ 00001787  0x00000aa6 beq  0x00000012 , 0x0000070a 
+ 00001788  0x00000aa7 branch  0x00007dca 
+ 00001789  0x00000aaa jam  0x00000034 , 0x00000185 
+ 00001790  0x00000aab fetch  0x00000006 , 0x0000044f 
+ 00001791  0x00000aac branch  0x00000702 
+ 00001792  0x00000aae jam  0x00000033 , 0x00000185 
+ 00001793  0x00000aaf fetch  0x00000006 , 0x00000040 
+ 00001794  0x00000ab1 store  0x00000006 , 0x00000186 
+ 00001795  0x00000ab3 fetch  0x00000004 , 0x000046d3 
+ 00001796  0x00000ab4 rtnbit0  0x00000007 
+ 00001797  0x00000ab5 arg  0x00000007 , 0x00000007 
+ 00001798  0x00000ab6 call  0x000043d2 
+ 00001799  0x00000ab7 call  0x000042e8 
+ 00001800  0x00000ab9 call  0x000042fb 
+ 00001801  0x00000aba branch  0x0000032b 
+ 00001802  0x00000abd call  0x00005890 
+ 00001803  0x00000abe nrtn  0x00000034 
+ 00001804  0x00000abf branch  0x00005abf 
+ 00001805  0x00000ac2 jam  0x00000001 , 0x00004d2e 
+ 00001806  0x00000ac3 jam  0x00000000 , 0x00004d2b 
+ 00001807  0x00000ac4 rtn 
+ 00001808  0x00000ac6 fetch  0x00000001 , 0x00004d2b 
+ 00001809  0x00000ac7 increase  0x00000001 , 0x0000003f 
+ 00001810  0x00000ac8 store  0x00000001 , 0x00004d2b 
+ 00001811  0x00000ac9 rtn 
+ 00001812  0x00000acb fetch  0x00000001 , 0x00004d2b 
+ 00001813  0x00000acc sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00001814  0x00000acd ncall  0x0000071c , 0x00000002 
+ 00001815  0x00000ace fetch  0x00000001 , 0x00004d2b 
+ 00001816  0x00000acf rtneq  0x00000000 
+ 00001817  0x00000ad0 increase  0xffffffff , 0x0000003f 
+ 00001818  0x00000ad1 store  0x00000001 , 0x00004d2b 
+ 00001819  0x00000ad2 rtn 
+ 00001820  0x00000ad4 jam  0x00000003 , 0x00004d2b 
+ 00001821  0x00000ad5 rtn 
+ 00001822  0x00000ad8 fetch  0x00000002 , 0x00004682 
+ 00001823  0x00000ad9 rtnbit1  0x0000000b 
+ 00001824  0x00000ada rtnbit1  0x00000007 
+ 00001825  0x00000adb rtnbit1  0x00000006 
+ 00001826  0x00000add arg  0x00004cb4 , 0x00000011 
+ 00001827  0x00000ade call  0x00000287 
+ 00001828  0x00000adf storet  0x00000001 , 0x00004d2c 
+ 00001829  0x00000ae1 setarg  0x00000082 
+ 00001830  0x00000ae2 bmark1  0x00000026 , 0x00000728 
+ 00001831  0x00000ae3 setarg  0x00000080 
+ 00001832  0x00000ae5 isub  0x00000002 , 0x0000003e 
+ 00001833  0x00000ae6 nbranch  0x00000740 , 0x00000002 
+ 00001834  0x00000ae8 fetch  0x00000001 , 0x00004d2b 
+ 00001835  0x00000ae9 sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00001836  0x00000aea nbranch  0x00000730 , 0x00000002 
+ 00001837  0x00000aeb fetch  0x00000001 , 0x00004d2b 
+ 00001838  0x00000aec beq  0x00000000 , 0x00000741 
+ 00001839  0x00000aed rtn 
+ 00001840  0x00000af0 fetch  0x00000001 , 0x00004d2b 
+ 00001841  0x00000af1 rtnne  0x00000020 
+ 00001842  0x00000af2 jam  0x00000000 , 0x00004d2b 
+ 00001843  0x00000af4 fetcht  0x00000001 , 0x00004d2c 
+ 00001844  0x00000af5 setarg  0x00000077 
+ 00001845  0x00000af6 bmark1  0x00000026 , 0x00000737 
+ 00001846  0x00000af7 setarg  0x00000075 
+ 00001847  0x00000af9 isub  0x00000002 , 0x0000003e 
+ 00001848  0x00000afa nrtn  0x00000002 
+ 00001849  0x00000afb fetch  0x00000001 , 0x00004d2e 
+ 00001850  0x00000afc beq  0x00000000 , 0x00000748 
+ 00001851  0x00000afd increase  0xffffffff , 0x0000003f 
+ 00001852  0x00000afe store  0x00000001 , 0x00004d2e 
+ 00001853  0x00000aff beq  0x00000000 , 0x00000748 
+ 00001854  0x00000b02 jam  0x00000000 , 0x000041de 
+ 00001855  0x00000b03 rtn 
+ 00001856  0x00000b06 jam  0x00000000 , 0x00004d2b 
+ 00001857  0x00000b08 fetch  0x00000001 , 0x00004d2e 
+ 00001858  0x00000b09 beq  0x00000002 , 0x00000746 
+ 00001859  0x00000b0a increase  0x00000001 , 0x0000003f 
+ 00001860  0x00000b0b store  0x00000001 , 0x00004d2e 
+ 00001861  0x00000b0c beq  0x00000001 , 0x0000073e 
+ 00001862  0x00000b0e jam  0x00000002 , 0x000041de 
+ 00001863  0x00000b0f rtn 
+ 00001864  0x00000b12 jam  0x00000004 , 0x000041de 
+ 00001865  0x00000b13 rtn 
+ 00001866  0x00000b17 storet  0x00000001 , 0x00000017 
+ 00001867  0x00000b18 add  0x00000002 , 0x00000000 , 0x00000011 
+ 00001868  0x00000b19 call  0x00002981 
+ 00001869  0x00000b1a setarg  0x00000500 
+ 00001870  0x00000b1b call  0x00002a8f 
+ 00001871  0x00000b1d jam  0x00000001 , 0x00008906 
+ 00001872  0x00000b1e jam  0x0000003c , 0x00008900 
+ 00001873  0x00000b1f jam  0x000000e0 , 0x00008901 
+ 00001874  0x00000b20 nop  0x0000000a 
+ 00001875  0x00000b21 jam  0x00000001 , 0x00008902 
+ 00001876  0x00000b22 jam  0x0000003d , 0x00008902 
+ 00001877  0x00000b23 nop  0x0000000a 
+ 00001878  0x00000b24 jam  0x000000b7 , 0x00008903 
+ 00001879  0x00000b25 nop  0x0000000a 
+ 00001880  0x00000b26 jam  0x0000007d , 0x00008902 
+ 00001881  0x00000b27 fetch  0x00000001 , 0x000041de 
+ 00001882  0x00000b2a beq  0x00000002 , 0x00000762 
+ 00001883  0x00000b2c beq  0x00000004 , 0x00000767 
+ 00001884  0x00000b2d beq  0x00000020 , 0x00000776 
+ 00001885  0x00000b30 call  0x0000076c 
+ 00001886  0x00000b32 jam  0x000000d0 , 0x00008955 
+ 00001887  0x00000b33 jam  0x000000e0 , 0x00008956 
+ 00001888  0x00000b35 jam  0x0000006c , 0x00008958 
+ 00001889  0x00000b37 branch  0x0000294b 
+ 00001890  0x00000b44 call  0x00000771 
+ 00001891  0x00000b46 jam  0x000000d0 , 0x00008955 
+ 00001892  0x00000b47 jam  0x000000e0 , 0x00008956 
+ 00001893  0x00000b49 jam  0x0000003c , 0x00008958 
+ 00001894  0x00000b4b branch  0x00002953 
+ 00001895  0x00000b58 call  0x0000076c 
+ 00001896  0x00000b5a jam  0x000000d0 , 0x00008955 
+ 00001897  0x00000b5b jam  0x000000c0 , 0x00008956 
+ 00001898  0x00000b5d jam  0x0000006c , 0x00008958 
+ 00001899  0x00000b5f branch  0x0000295b 
+ 00001900  0x00000b62 jam  0x0000005b , 0x0000894c 
+ 00001901  0x00000b63 jam  0x00000096 , 0x0000894d 
+ 00001902  0x00000b64 jam  0x0000002c , 0x0000894e 
+ 00001903  0x00000b65 jam  0x00000046 , 0x0000894f 
+ 00001904  0x00000b66 rtn 
+ 00001905  0x00000b69 jam  0x000000fb , 0x0000894c 
+ 00001906  0x00000b6a jam  0x000000ef , 0x0000894d 
+ 00001907  0x00000b6b jam  0x000000ec , 0x0000894e 
+ 00001908  0x00000b6c jam  0x0000005e , 0x0000894f 
+ 00001909  0x00000b6d rtn 
+ 00001910  0x00000b71 jam  0x000000c2 , 0x00008956 
+ 00001911  0x00000b72 jam  0x000000d0 , 0x00008955 
+ 00001912  0x00000b73 rtn 
+ 00001913  0x00000b76 force  0x00000008 , 0x00000015 
+ 00001914  0x00000b77 branch  0x000028fa 
+ 00001915  0x00000b7c fetcht  0x00000001 , 0x000011c7 
+ 00001916  0x00000b7d rshift4  0x00000002 , 0x00000002 
+ 00001917  0x00000b7e fetch  0x00000001 , 0x00004b50 
+ 00001918  0x00000b7f isub  0x00000002 , 0x0000003e 
+ 00001919  0x00000b80 branch  0x00000798 , 0x00000005 
+ 00001920  0x00000b81 storet  0x00000001 , 0x00004b50 
+ 00001921  0x00000b82 increase  0x00000001 , 0x00000002 
+ 00001922  0x00000b83 setarg  0x00000100 
+ 00001923  0x00000b84 imul32  0x00000002 , 0x00000002 
+ 00001924  0x00000b85 fetch  0x00000003 , 0x00004b51 
+ 00001925  0x00000b86 isub  0x00000002 , 0x0000003f 
+ 00001926  0x00000b88 fetcht  0x00000003 , 0x00004b54 
+ 00001927  0x00000b89 iadd  0x00000002 , 0x0000003f 
+ 00001928  0x00000b8a increase  0xfffffffb , 0x0000003f 
+ 00001929  0x00000b8b store  0x00000003 , 0x00004b57 
+ 00001930  0x00000b8d call  0x0000036e 
+ 00001931  0x00000b8f fetch  0x00000003 , 0x00004b57 
+ 00001932  0x00000b90 arg  0x00000100 , 0x00000002 
+ 00001933  0x00000b91 arg  0x00001f00 , 0x00000011 
+ 00001934  0x00000b92 call  0x00006562 
+ 00001935  0x00000b93 fetch  0x00000004 , 0x00001f00 
+ 00001936  0x00000b94 branch  0x0000078b , 0x00000034 
+ 00001937  0x00000b95 call  0x000002c5 
+ 00001938  0x00000b97 setarg  0x00001f00 
+ 00001939  0x00000b98 store  0x00000002 , 0x00004199 
+ 00001940  0x00000b99 jam  0x00000040 , 0x0000419b 
+ 00001941  0x00000b9a call  0x000064ca 
+ 00001942  0x00000b9b setarg  0x00000000 
+ 00001943  0x00000b9c store  0x00000004 , 0x00004199 
+ 00001944  0x00000b9e fetch  0x00000001 , 0x000011c7 
+ 00001945  0x00000b9f branch  0x00000001 
+ 00001946  0x00000ba7 arg  0x00000005 , 0x00000039 
+ 00001947  0x00000ba8 arg  0x00004b0b , 0x00000005 
+ 00001948  0x00000ba9 branch  0x00007ed4 
+ 00001949  0x00000bac fetch  0x00000004 , 0x0000469b 
+ 00001950  0x00000bad rtn  0x00000034 
+ 00001951  0x00000bae call  0x000007ee 
+ 00001952  0x00000baf setarg  0x00000006 
+ 00001953  0x00000bb0 call  0x000007e1 
+ 00001954  0x00000bb1 setarg  0x00000003 
+ 00001955  0x00000bb2 call  0x000007e7 
+ 00001956  0x00000bb3 fetch  0x00000001 , 0x00004b0b 
+ 00001957  0x00000bb4 beq  0x00000001 , 0x000007a7 
+ 00001958  0x00000bb5 branch  0x0000079a 
+ 00001959  0x00000bb8 fetch  0x00000002 , 0x00004b0c 
+ 00001960  0x00000bb9 store  0x00000002 , 0x000011be 
+ 00001961  0x00000bba fetch  0x00000002 , 0x0000469b 
+ 00001962  0x00000bbb store  0x00000002 , 0x000011c0 
+ 00001963  0x00000bbc call  0x000007ba 
+ 00001964  0x00000bbd fetch  0x00000002 , 0x000011be 
+ 00001965  0x00000bbe store  0x00000002 , 0x00004b0c 
+ 00001966  0x00000bbf fetch  0x00000002 , 0x000011c0 
+ 00001967  0x00000bc0 store  0x00000002 , 0x0000469b 
+ 00001968  0x00000bc2 fetch  0x00000002 , 0x00004b0e 
+ 00001969  0x00000bc3 store  0x00000002 , 0x000011be 
+ 00001970  0x00000bc4 fetch  0x00000002 , 0x0000469d 
+ 00001971  0x00000bc5 store  0x00000002 , 0x000011c0 
+ 00001972  0x00000bc6 call  0x000007ba 
+ 00001973  0x00000bc7 fetch  0x00000002 , 0x000011be 
+ 00001974  0x00000bc8 store  0x00000002 , 0x00004b0e 
+ 00001975  0x00000bc9 fetch  0x00000002 , 0x000011c0 
+ 00001976  0x00000bca store  0x00000002 , 0x0000469d 
+ 00001977  0x00000bcb rtn 
+ 00001978  0x00000bd2 fetch  0x00000002 , 0x000011be 
+ 00001979  0x00000bd3 fetcht  0x00000002 , 0x000011c0 
+ 00001980  0x00000bd4 iadd  0x00000002 , 0x0000003f 
+ 00001981  0x00000bd5 store  0x00000003 , 0x000011c2 
+ 00001982  0x00000bd6 isolate1  0x00000010 , 0x0000003f 
+ 00001983  0x00000bd7 branch  0x000007c7 , 0x00000001 
+ 00001984  0x00000bd8 fetch  0x00000001 , 0x000011c3 
+ 00001985  0x00000bd9 beq  0x000000ff , 0x000007ce 
+ 00001986  0x00000bda fetch  0x00000001 , 0x000011c2 
+ 00001987  0x00000bdc rshift  0x0000003f , 0x0000003f 
+ 00001988  0x00000bdd store  0x00000002 , 0x000011be 
+ 00001989  0x00000bde store  0x00000002 , 0x000011c0 
+ 00001990  0x00000bdf rtn 
+ 00001991  0x00000be1 fetch  0x00000001 , 0x000011c3 
+ 00001992  0x00000be2 beq  0x00000000 , 0x000007cb 
+ 00001993  0x00000be3 fetch  0x00000003 , 0x000011c2 
+ 00001994  0x00000be4 branch  0x000007c3 
+ 00001995  0x00000be6 jam  0x00000000 , 0x000011c4 
+ 00001996  0x00000be7 fetch  0x00000001 , 0x000011c2 
+ 00001997  0x00000be8 branch  0x000007c3 
+ 00001998  0x00000beb fetch  0x00000001 , 0x000011c2 
+ 00001999  0x00000bec call  0x000007d9 
+ 00002000  0x00000bed store  0x00000001 , 0x000011be 
+ 00002001  0x00000bee store  0x00000001 , 0x000011c0 
+ 00002002  0x00000bef branch  0x000007d7 , 0x00000034 
+ 00002003  0x00000bf0 setarg  0x000000ff 
+ 00002004  0x00000bf2 store  0x00000001 , 0x000011bf 
+ 00002005  0x00000bf3 store  0x00000001 , 0x000011c1 
+ 00002006  0x00000bf4 rtn 
+ 00002007  0x00000bf6 setarg  0x00000000 
+ 00002008  0x00000bf7 branch  0x000007d4 
+ 00002009  0x00000bfa sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00002010  0x00000bfb store  0x00000001 , 0x00000aae 
+ 00002011  0x00000bfc fetch  0x00000001 , 0x00000aae 
+ 00002012  0x00000bfd rshift  0x0000003f , 0x0000003f 
+ 00002013  0x00000bfe store  0x00000001 , 0x00000aae 
+ 00002014  0x00000bff fetch  0x00000001 , 0x00000aae 
+ 00002015  0x00000c00 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00002016  0x00000c01 rtn 
+ 00002017  0x00000c05 isub  0x00000011 , 0x0000003e 
+ 00002018  0x00000c06 nbranch  0x000007ec , 0x00000002 
+ 00002019  0x00000c07 isub  0x00000012 , 0x0000003e 
+ 00002020  0x00000c08 nbranch  0x000007ec , 0x00000002 
+ 00002021  0x00000c0a jam  0x00000000 , 0x00004b0b 
+ 00002022  0x00000c0b rtn 
+ 00002023  0x00000c0d isub  0x00000011 , 0x0000003e 
+ 00002024  0x00000c0e nrtn  0x00000002 
+ 00002025  0x00000c0f isub  0x00000012 , 0x0000003e 
+ 00002026  0x00000c10 nrtn  0x00000002 
+ 00002027  0x00000c11 branch  0x000007e5 
+ 00002028  0x00000c13 jam  0x00000001 , 0x00004b0b 
+ 00002029  0x00000c14 rtn 
+ 00002030  0x00000c17 fetch  0x00000002 , 0x0000469b 
+ 00002031  0x00000c18 store  0x00000002 , 0x000011c0 
+ 00002032  0x00000c19 call  0x000007f7 
+ 00002033  0x00000c1a copy  0x0000003f , 0x00000011 
+ 00002034  0x00000c1b fetch  0x00000002 , 0x0000469d 
+ 00002035  0x00000c1c store  0x00000002 , 0x000011c0 
+ 00002036  0x00000c1d call  0x000007f7 
+ 00002037  0x00000c1e copy  0x0000003f , 0x00000012 
+ 00002038  0x00000c1f rtn 
+ 00002039  0x00000c26 fetch  0x00000001 , 0x000011c1 
+ 00002040  0x00000c27 beq  0x000000ff , 0x000007fc 
+ 00002041  0x00000c28 fetch  0x00000001 , 0x000011c0 
+ 00002042  0x00000c2a and_into  0x000000ff , 0x0000003f 
+ 00002043  0x00000c2c rtn 
+ 00002044  0x00000c2e fetch  0x00000002 , 0x000011c0 
+ 00002045  0x00000c2f sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00002046  0x00000c30 branch  0x000007fa 
+ 00008192  0x00000c3d call  0x00002abc 
+ 00008193  0x00000c40 bpatch  0x00000000 , 0x00004000 
+ 00008194  0x00000c41 clear_stack 
+ 00008195  0x00000c42 call  0x0000640d 
+ 00008196  0x00000c43 call  0x0000296c 
+ 00008197  0x00000c44 call  0x000065a3 
+ 00008198  0x00000c45 call  0x00002a96 
+ 00008199  0x00000c46 call  0x00004d6a 
+ 00008200  0x00000c47 bpatch  0x00000001 , 0x00004000 
+ 00008201  0x00000c48 call  0x00006a03 
+ 00008202  0x00000c49 call  0x00005cf6 
+ 00008203  0x00000c4a call  0x00007ccc 
+ 00008204  0x00000c4b call  0x000032d8 
+ 00008205  0x00000c4c ncall  0x0000689c , 0x0000002b 
+ 00008206  0x00000c4d bpatch  0x00000002 , 0x00004000 
+ 00008207  0x00000c4e call  0x000032e3 , 0x0000002b 
+ 00008208  0x00000c4f call  0x0000756a 
+ 00008209  0x00000c50 call  0x00002b41 , 0x0000002b 
+ 00008210  0x00000c52 bpatch  0x00000003 , 0x00004000 
+ 00008211  0x00000c53 call  0x000076dc 
+ 00008212  0x00000c54 call  0x00007aaf 
+ 00008213  0x00000c55 call  0x0000756d 
+ 00008214  0x00000c56 call  0x0000535c 
+ 00008215  0x00000c57 bpatch  0x00000004 , 0x00004000 
+ 00008216  0x00000c58 call  0x00002038 
+ 00008217  0x00000c59 call  0x000032ed 
+ 00008218  0x00000c5a call  0x0000208f 
+ 00008219  0x00000c5b call  0x000022f8 
+ 00008220  0x00000c5c call  0x0000236a 
+ 00008221  0x00000c5d call  0x00002021 
+ 00008222  0x00000c5e call  0x00002b6a 
+ 00008223  0x00000c5f call  0x00002c72 
+ 00008224  0x00000c60 branch  0x00002012 
+ 00008225  0x00000c63 call  0x00002026 
+ 00008226  0x00000c64 rtnmark0  0x00000009 
+ 00008227  0x00000c65 set0  0x00000009 , 0x00000000 
+ 00008228  0x00000c66 call  0x00002223 
+ 00008229  0x00000c67 branch  0x000053ce 
+ 00008230  0x00000c6a bpatch  0x00000005 , 0x00004000 
+ 00008231  0x00000c6b call  0x0000225e 
+ 00008232  0x00000c6c nbranch  0x0000202f , 0x00000005 
+ 00008233  0x00000c6d call  0x0000220a 
+ 00008234  0x00000c6e add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008235  0x00000c6f ifetch  0x00000001 , 0x00000006 
+ 00008236  0x00000c70 bbit1  0x00000000 , 0x00005360 
+ 00008237  0x00000c71 bbit1  0x00000001 , 0x00002166 
+ 00008238  0x00000c72 branch  0x000023cf 
+ 00008239  0x00000c74 call  0x0000222b 
+ 00008240  0x00000c75 copy  0x00000039 , 0x0000003e 
+ 00008241  0x00000c76 rtn  0x00000005 
+ 00008242  0x00000c77 call  0x0000220a 
+ 00008243  0x00000c78 fetch  0x00000001 , 0x00000030 
+ 00008244  0x00000c79 bbit1  0x00000003 , 0x000020d3 
+ 00008245  0x00000c7a fetch  0x00000001 , 0x00000031 
+ 00008246  0x00000c7b bbit1  0x00000001 , 0x00002166 
+ 00008247  0x00000c7c branch  0x000023cf 
+ 00008248  0x00000c85 fetch  0x00000001 , 0x000041ce 
+ 00008249  0x00000c86 rtn  0x00000034 
+ 00008250  0x00000c87 beq  0x00000001 , 0x00002048 
+ 00008251  0x00000c88 beq  0x00000002 , 0x0000204d 
+ 00008252  0x00000c89 beq  0x00000003 , 0x00002050 
+ 00008253  0x00000c8a beq  0x00000005 , 0x00002055 
+ 00008254  0x00000c8b beq  0x0000001b , 0x00002045 
+ 00008255  0x00000c8c call  0x00002257 
+ 00008256  0x00000c8d rtn  0x00000005 
+ 00008257  0x00000c8e call  0x0000225a 
+ 00008258  0x00000c8f rtn  0x00000005 
+ 00008259  0x00000c91 jam  0x00000000 , 0x000041ce 
+ 00008260  0x00000c92 rtn 
+ 00008261  0x00000c95 jam  0x0000001b , 0x0000049b 
+ 00008262  0x00000c96 jam  0x00000000 , 0x000041ce 
+ 00008263  0x00000c97 rtn 
+ 00008264  0x00000c9a set1  0x0000001c , 0x00000000 
+ 00008265  0x00000c9b set0  0x0000001e , 0x00000000 
+ 00008266  0x00000c9c jam  0x000000ff , 0x0000008f 
+ 00008267  0x00000c9d jam  0x0000001f , 0x0000008d 
+ 00008268  0x00000c9e branch  0x00002043 
+ 00008269  0x00000ca1 set0  0x0000001c , 0x00000000 
+ 00008270  0x00000ca2 force  0x00000000 , 0x0000001b 
+ 00008271  0x00000ca3 branch  0x00002043 
+ 00008272  0x00000ca6 call  0x0000225a 
+ 00008273  0x00000ca7 rtn  0x00000005 
+ 00008274  0x00000ca8 force  0x00000001 , 0x00000002 
+ 00008275  0x00000ca9 jam  0x00000005 , 0x0000016e 
+ 00008276  0x00000caa branch  0x0000205c 
+ 00008277  0x00000cad bpatch  0x00000006 , 0x00004000 
+ 00008278  0x00000caf fetch  0x00000006 , 0x000041d0 
+ 00008279  0x00000cb0 branch  0x00002043 , 0x00000034 
+ 00008280  0x00000cb1 jam  0x00000001 , 0x00004681 
+ 00008281  0x00000cb3 jam  0x00000003 , 0x00000055 
+ 00008282  0x00000cb4 branch  0x0000205b 
+ 00008283  0x00000cb7 force  0x00000025 , 0x00000002 
+ 00008284  0x00000cb9 bpatch  0x00000007 , 0x00004000 
+ 00008285  0x00000cba fetch  0x00000001 , 0x000000f1 
+ 00008286  0x00000cbb branch  0x00002062 , 0x00000034 
+ 00008287  0x00000cbc lshift3  0x0000003f , 0x0000003f 
+ 00008288  0x00000cbd lshift4  0x0000003f , 0x0000003f 
+ 00008289  0x00000cbe increase  0xffffffff , 0x0000003f 
+ 00008290  0x00000cc0 store  0x00000001 , 0x000040a6 
+ 00008291  0x00000cc1 store  0x00000001 , 0x000000f0 
+ 00008292  0x00000cc2 jam  0x0000001f , 0x0000008e 
+ 00008293  0x00000cc3 set0  0x0000000c , 0x00000000 
+ 00008294  0x00000cc4 call  0x0000223b 
+ 00008295  0x00000cc5 nbranch  0x00002083 , 0x00000005 
+ 00008296  0x00000cc6 call  0x00002a6f 
+ 00008297  0x00000cc7 store  0x00000001 , 0x00000077 
+ 00008298  0x00000cc8 storet  0x00000001 , 0x0000007c 
+ 00008299  0x00000cc9 fetch  0x00000006 , 0x000041d0 
+ 00008300  0x00000cca store  0x00000006 , 0x00000040 
+ 00008301  0x00000ccb bpatch  0x00000008 , 0x00004001 
+ 00008302  0x00000ccc call  0x00007f15 
+ 00008303  0x00000ccd force  0x00000000 , 0x0000003f 
+ 00008304  0x00000cce compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00008305  0x00000ccf nsetflag  0x00000001 , 0x00000005 , 0x0000003f 
+ 00008306  0x00000cd0 set1  0x00000003 , 0x0000003f 
+ 00008307  0x00000cd1 store  0x00000001 , 0x00000030 
+ 00008308  0x00000cd2 jam  0x00000003 , 0x00000a99 
+ 00008309  0x00000cd3 call  0x00007d86 
+ 00008310  0x00000cd4 force  0x00000000 , 0x0000003f 
+ 00008311  0x00000cd5 setflag  0x00000001 , 0x00000004 , 0x0000003f 
+ 00008312  0x00000cd6 store  0x00000001 , 0x0000004c 
+ 00008313  0x00000cd7 setarg  0x00000000 
+ 00008314  0x00000cd8 set1  0x00000001 , 0x0000003f 
+ 00008315  0x00000cd9 store  0x00000001 , 0x00000031 
+ 00008316  0x00000cda enable  0x00000029 
+ 00008317  0x00000cdb call  0x00002223 
+ 00008318  0x00000cdc disable  0x00000029 
+ 00008319  0x00000cdd force  0x00000003 , 0x00000007 
+ 00008320  0x00000cde fetch  0x00000002 , 0x000040b9 
+ 00008321  0x00000cdf call  0x00007f08 
+ 00008322  0x00000ce0 branch  0x00002043 
+ 00008323  0x00000ce2 bpatch  0x00000009 , 0x00004001 
+ 00008324  0x00000ce3 fetch  0x00000006 , 0x000041d0 
+ 00008325  0x00000ce4 store  0x00000006 , 0x00000040 
+ 00008326  0x00000ce5 compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00008327  0x00000ce6 branch  0x00002089 , 0x00000001 
+ 00008328  0x00000ce7 branch  0x00002043 
+ 00008329  0x00000ce9 arg  0x00000101 , 0x00000005 
+ 00008330  0x00000cea arg  0x00000008 , 0x00000039 
+ 00008331  0x00000ceb call  0x00007ec6 
+ 00008332  0x00000cec jam  0x00000004 , 0x00000a99 
+ 00008333  0x00000ced call  0x00007d86 
+ 00008334  0x00000cee branch  0x00002043 
+ 00008335  0x00000cf6 rtnmark0  0x0000001c 
+ 00008336  0x00000cf7 force  0x00000001 , 0x00000007 
+ 00008337  0x00000cf8 call  0x00007f16 
+ 00008338  0x00000cf9 nsetflag  0x00000034 , 0x0000001c , 0x00000000 
+ 00008339  0x00000cfa nbranch  0x00002095 , 0x00000034 
+ 00008340  0x00000cfb rtn 
+ 00008341  0x00000d00 bpatch  0x0000000a , 0x00004001 
+ 00008342  0x00000d01 fetcht  0x00000002 , 0x000040bb 
+ 00008343  0x00000d02 force  0x00000004 , 0x00000007 
+ 00008344  0x00000d03 call  0x0000271c 
+ 00008345  0x00000d04 rtn  0x00000028 
+ 00008346  0x00000d05 call  0x000028a4 
+ 00008347  0x00000d06 force  0x00000000 , 0x00000024 
+ 00008348  0x00000d08 rtn  0x00000003 
+ 00008349  0x00000d09 set0  0x0000000b , 0x00000000 
+ 00008350  0x00000d0a set0  0x00000000 , 0x00000000 
+ 00008351  0x00000d0c add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008352  0x00000d0d isolate1  0x0000001e , 0x00000000 
+ 00008353  0x00000d0e setflag  0x00000001 , 0x00000002 , 0x00000024 
+ 00008354  0x00000d0f compare  0x00000000 , 0x00000021 , 0x00000002 
+ 00008355  0x00000d10 nbranch  0x000020be , 0x00000001 
+ 00008356  0x00000d13 bpatch  0x0000000b , 0x00004001 
+ 00008357  0x00000d14 fetch  0x00000001 , 0x00000012 
+ 00008358  0x00000d15 increase  0x00000001 , 0x0000003f 
+ 00008359  0x00000d16 store  0x00000001 , 0x00000012 
+ 00008360  0x00000d17 call  0x000028d8 
+ 00008361  0x00000d18 call  0x000028d2 
+ 00008362  0x00000d19 call  0x000028f2 
+ 00008363  0x00000d1a call  0x00002a51 
+ 00008364  0x00000d1b call  0x00002a56 
+ 00008365  0x00000d1c call  0x00002a64 
+ 00008366  0x00000d1d call  0x0000264d 
+ 00008367  0x00000d1e call  0x000020b1 
+ 00008368  0x00000d1f branch  0x0000209c 
+ 00008369  0x00000d22 bpatch  0x0000000c , 0x00004001 
+ 00008370  0x00000d23 fetch  0x00000001 , 0x0000008d 
+ 00008371  0x00000d24 increase  0xffffffff , 0x0000003f 
+ 00008372  0x00000d25 store  0x00000001 , 0x0000008d 
+ 00008373  0x00000d26 rtn  0x00000002 
+ 00008374  0x00000d27 jam  0x0000001f , 0x0000008d 
+ 00008375  0x00000d28 fetch  0x00000001 , 0x0000008f 
+ 00008376  0x00000d29 increase  0xffffffff , 0x0000003f 
+ 00008377  0x00000d2a store  0x00000001 , 0x0000008f 
+ 00008378  0x00000d2b rtn  0x00000002 
+ 00008379  0x00000d2c setflip  0x0000001e , 0x00000000 
+ 00008380  0x00000d2d jam  0x000000ff , 0x0000008f 
+ 00008381  0x00000d2e rtn 
+ 00008382  0x00000d31 bpatch  0x0000000d , 0x00004001 
+ 00008383  0x00000d32 call  0x000028d8 
+ 00008384  0x00000d33 call  0x000028cc 
+ 00008385  0x00000d34 call  0x000028f2 
+ 00008386  0x00000d35 call  0x00002a5b 
+ 00008387  0x00000d36 call  0x000029eb 
+ 00008388  0x00000d37 call  0x00002a0d 
+ 00008389  0x00000d38 branch  0x000020c8 , 0x00000018 
+ 00008390  0x00000d39 call  0x000020b1 
+ 00008391  0x00000d3a branch  0x0000209f 
+ 00008392  0x00000d3c bpatch  0x0000000e , 0x00004001 
+ 00008393  0x00000d3d call  0x000029bb 
+ 00008394  0x00000d3e call  0x00002a6b 
+ 00008395  0x00000d3f call  0x0000251e 
+ 00008396  0x00000d40 set0  0x00000001 , 0x00000000 
+ 00008397  0x00000d41 rtnmark0  0x0000000b 
+ 00008398  0x00000d43 bpatch  0x0000000f , 0x00004001 
+ 00008399  0x00000d45 fetch  0x00000001 , 0x00000013 
+ 00008400  0x00000d46 increase  0x00000001 , 0x0000003f 
+ 00008401  0x00000d47 store  0x00000001 , 0x00000013 
+ 00008402  0x00000d48 rtn 
+ 00008403  0x00000d51 bpatch  0x00000010 , 0x00004002 
+ 00008404  0x00000d52 enable  0x00000029 
+ 00008405  0x00000d53 enable  0x00000030 
+ 00008406  0x00000d54 fetch  0x00000002 , 0x000040b5 
+ 00008407  0x00000d55 branch  0x000020db , 0x00000034 
+ 00008408  0x00000d56 force  0x00000008 , 0x00000007 
+ 00008409  0x00000d57 call  0x00007f16 
+ 00008410  0x00000d58 nrtn  0x00000034 
+ 00008411  0x00000d5a bpatch  0x00000011 , 0x00004002 
+ 00008412  0x00000d5b fetcht  0x00000002 , 0x000040b7 
+ 00008413  0x00000d5c force  0x00000028 , 0x00000007 
+ 00008414  0x00000d5d call  0x0000271c 
+ 00008415  0x00000d5e branch  0x00002114 , 0x00000028 
+ 00008416  0x00000d5f force  0x00000003 , 0x00000007 
+ 00008417  0x00000d60 call  0x00007f16 
+ 00008418  0x00000d61 nbranch  0x000020f0 , 0x00000034 
+ 00008419  0x00000d62 fetch  0x00000001 , 0x0000004c 
+ 00008420  0x00000d63 bbit1  0x00000004 , 0x000020e6 
+ 00008421  0x00000d64 branch  0x000020e9 
+ 00008422  0x00000d66 arg  0x00000101 , 0x00000005 
+ 00008423  0x00000d67 arg  0x00000008 , 0x00000039 
+ 00008424  0x00000d68 call  0x00007ec6 
+ 00008425  0x00000d6a bpatch  0x00000012 , 0x00004002 
+ 00008426  0x00000d6b jam  0x00000000 , 0x00000030 
+ 00008427  0x00000d6c call  0x00005cf7 
+ 00008428  0x00000d6d jam  0x00000000 , 0x00004681 
+ 00008429  0x00000d6e jam  0x00000013 , 0x00000a99 
+ 00008430  0x00000d6f call  0x00007d86 
+ 00008431  0x00000d70 branch  0x00002114 
+ 00008432  0x00000d73 bpatch  0x00000013 , 0x00004002 
+ 00008433  0x00000d74 force  0x00000000 , 0x0000000b 
+ 00008434  0x00000d75 until  0x00000023 , 0x00000026 
+ 00008435  0x00000d76 fetch  0x00000001 , 0x000000f2 
+ 00008436  0x00000d77 increase  0xffffffff , 0x0000003f 
+ 00008437  0x00000d78 ixor  0x00000022 , 0x0000003f 
+ 00008438  0x00000d79 compare  0x00000000 , 0x0000003f , 0x00000003 
+ 00008439  0x00000d7a nbranch  0x000020f0 , 0x00000001 
+ 00008440  0x00000d7b deposit  0x00000004 
+ 00008441  0x00000d7c store  0x00000001 , 0x00000181 
+ 00008442  0x00000d7d force  0x00000000 , 0x00000026 
+ 00008443  0x00000d7e force  0x00000000 , 0x00000024 
+ 00008444  0x00000d81 bpatch  0x00000014 , 0x00004002 
+ 00008445  0x00000d82 branch  0x00002114 , 0x00000003 
+ 00008446  0x00000d83 call  0x000028dc 
+ 00008447  0x00000d84 arg  0x00000600 , 0x0000000b 
+ 00008448  0x00000d85 until  0x00000023 , 0x00000026 
+ 00008449  0x00000d87 bpatch  0x00000015 , 0x00004002 
+ 00008450  0x00000d88 fetch  0x00000004 , 0x000000f2 
+ 00008451  0x00000d89 iforce  0x00000021 
+ 00008452  0x00000d8a increase  0x00000001 , 0x0000003f 
+ 00008453  0x00000d8b store  0x00000004 , 0x000000f2 
+ 00008454  0x00000d8c isolate1  0x0000000c , 0x00000000 
+ 00008455  0x00000d8d setflag  0x00000001 , 0x00000002 , 0x00000024 
+ 00008456  0x00000d8e compare  0x00000000 , 0x00000021 , 0x00000002 
+ 00008457  0x00000d8f nbranch  0x00002128 , 0x00000001 
+ 00008458  0x00000d90 fetch  0x00000001 , 0x0000000c 
+ 00008459  0x00000d91 increase  0x00000001 , 0x0000003f 
+ 00008460  0x00000d92 store  0x00000001 , 0x0000000c 
+ 00008461  0x00000d93 call  0x000028d2 
+ 00008462  0x00000d94 call  0x00002a51 
+ 00008463  0x00000d95 call  0x00002a56 
+ 00008464  0x00000d96 call  0x00002a64 
+ 00008465  0x00000d97 call  0x0000264d 
+ 00008466  0x00000d98 call  0x0000211a 
+ 00008467  0x00000d99 branch  0x000020fc 
+ 00008468  0x00000d9b bpatch  0x00000016 , 0x00004002 
+ 00008469  0x00000d9c disable  0x00000029 
+ 00008470  0x00000d9d fetch  0x00000002 , 0x000040b5 
+ 00008471  0x00000d9e rtn  0x00000034 
+ 00008472  0x00000d9f force  0x00000008 , 0x00000007 
+ 00008473  0x00000da0 branch  0x00007f08 
+ 00008474  0x00000da3 bpatch  0x00000017 , 0x00004002 
+ 00008475  0x00000da4 fetch  0x00000001 , 0x0000008e 
+ 00008476  0x00000da5 increase  0xffffffff , 0x0000003f 
+ 00008477  0x00000da6 store  0x00000001 , 0x0000008e 
+ 00008478  0x00000da7 rtn  0x00000002 
+ 00008479  0x00000da8 jam  0x0000001f , 0x0000008e 
+ 00008480  0x00000da9 fetch  0x00000001 , 0x000000f0 
+ 00008481  0x00000daa increase  0xffffffff , 0x0000003f 
+ 00008482  0x00000dab store  0x00000001 , 0x000000f0 
+ 00008483  0x00000dac rtn  0x00000002 
+ 00008484  0x00000dad setflip  0x0000000c , 0x00000000 
+ 00008485  0x00000dae fetch  0x00000001 , 0x000040a6 
+ 00008486  0x00000daf store  0x00000001 , 0x000000f0 
+ 00008487  0x00000db0 rtn 
+ 00008488  0x00000db3 bpatch  0x00000018 , 0x00004003 
+ 00008489  0x00000db4 call  0x000028cc 
+ 00008490  0x00000db5 call  0x00002a5b 
+ 00008491  0x00000db6 call  0x000029eb 
+ 00008492  0x00000db7 call  0x00002a0d 
+ 00008493  0x00000db8 branch  0x00002130 , 0x00000018 
+ 00008494  0x00000db9 call  0x0000211a 
+ 00008495  0x00000dba branch  0x00002101 
+ 00008496  0x00000dbc call  0x0000264d 
+ 00008497  0x00000dbd fetch  0x00000001 , 0x0000000d 
+ 00008498  0x00000dbe increase  0x00000001 , 0x0000003f 
+ 00008499  0x00000dbf store  0x00000001 , 0x0000000d 
+ 00008500  0x00000dc0 force  0x00000000 , 0x0000001b 
+ 00008501  0x00000dc1 fetch  0x00000004 , 0x000000f2 
+ 00008502  0x00000dc3 bpatch  0x00000019 , 0x00004003 
+ 00008503  0x00000dc4 call  0x00002a4f 
+ 00008504  0x00000dc5 call  0x000028dc 
+ 00008505  0x00000dc6 increase  0x00000001 , 0x00000026 
+ 00008506  0x00000dc8 and_into  0x000001fd , 0x00000021 
+ 00008507  0x00000dc9 and_into  0x000001fc , 0x00000024 
+ 00008508  0x00000dca call  0x000028d2 
+ 00008509  0x00000dcb call  0x00002a51 
+ 00008510  0x00000dcc call  0x00002a56 
+ 00008511  0x00000dcd call  0x00002a64 
+ 00008512  0x00000dce deposit  0x00000022 
+ 00008513  0x00000dcf store  0x00000004 , 0x00000161 
+ 00008514  0x00000dd0 force  0x00000000 , 0x00000004 
+ 00008515  0x00000dd1 force  0x00000002 , 0x00000001 
+ 00008516  0x00000dd2 call  0x00002a6b 
+ 00008517  0x00000dd3 call  0x00002766 
+ 00008518  0x00000dd5 bpatch  0x0000001a , 0x00004003 
+ 00008519  0x00000dd6 call  0x00002a4d 
+ 00008520  0x00000dd7 or_into  0x00000002 , 0x00000021 
+ 00008521  0x00000dd8 and_into  0x000001fc , 0x00000024 
+ 00008522  0x00000dd9 call  0x000028cc 
+ 00008523  0x00000dda call  0x00002a5b 
+ 00008524  0x00000ddb call  0x000029eb 
+ 00008525  0x00000ddc call  0x00002a0d 
+ 00008526  0x00000ddd call  0x0000264d , 0x00000018 
+ 00008527  0x00000dde branch  0x00002155 , 0x00000018 
+ 00008528  0x00000ddf fetch  0x00000001 , 0x00000010 
+ 00008529  0x00000de0 branch  0x000020fc , 0x00000034 
+ 00008530  0x00000de1 increase  0xffffffff , 0x0000003f 
+ 00008531  0x00000de2 store  0x00000001 , 0x00000010 
+ 00008532  0x00000de3 branch  0x00002136 
+ 00008533  0x00000de6 bpatch  0x0000001b , 0x00004003 
+ 00008534  0x00000de7 fetch  0x00000001 , 0x0000000e 
+ 00008535  0x00000de8 increase  0x00000001 , 0x0000003f 
+ 00008536  0x00000de9 store  0x00000001 , 0x0000000e 
+ 00008537  0x00000dea call  0x00002435 
+ 00008538  0x00000dec call  0x000022f2 
+ 00008539  0x00000ded branch  0x0000215f , 0x00000018 
+ 00008540  0x00000dee call  0x00002455 
+ 00008541  0x00000def nbranch  0x0000215a , 0x00000034 
+ 00008542  0x00000df0 branch  0x000020fc 
+ 00008543  0x00000df3 bpatch  0x0000001c , 0x00004003 
+ 00008544  0x00000df4 fetch  0x00000001 , 0x00000030 
+ 00008545  0x00000df5 set0  0x00000003 , 0x0000003f 
+ 00008546  0x00000df6 store  0x00000001 , 0x00000030 
+ 00008547  0x00000df7 call  0x00002440 
+ 00008548  0x00000df8 disable  0x00000029 
+ 00008549  0x00000df9 rtn 
+ 00008550  0x00000dfd bpatch  0x0000001d , 0x00004003 
+ 00008551  0x00000dfe enable  0x00000029 
+ 00008552  0x00000dff enable  0x00000030 
+ 00008553  0x00000e00 call  0x000021e1 
+ 00008554  0x00000e01 rtn  0x00000028 
+ 00008555  0x00000e02 call  0x00002c69 
+ 00008556  0x00000e03 call  0x00002a4f 
+ 00008557  0x00000e04 add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008558  0x00000e05 call  0x000028e2 
+ 00008559  0x00000e06 force  0x00000003 , 0x00000024 
+ 00008560  0x00000e07 call  0x00006cc2 
+ 00008561  0x00000e08 call  0x00002489 
+ 00008562  0x00000e09 call  0x000028d2 
+ 00008563  0x00000e0a call  0x00002a51 
+ 00008564  0x00000e0b call  0x00002a56 
+ 00008565  0x00000e0c call  0x00002a64 
+ 00008566  0x00000e0d call  0x00002762 
+ 00008567  0x00000e0f bpatch  0x0000001e , 0x00004003 
+ 00008568  0x00000e10 call  0x00005d08 
+ 00008569  0x00000e11 call  0x000022e4 
+ 00008570  0x00000e12 nbranch  0x00002180 , 0x0000002d 
+ 00008571  0x00000e13 call  0x00002a88 
+ 00008572  0x00000e14 call  0x00002728 
+ 00008573  0x00000e15 fetch  0x00000001 , 0x0000000f 
+ 00008574  0x00000e16 increase  0x00000001 , 0x0000003f 
+ 00008575  0x00000e17 store  0x00000001 , 0x0000000f 
+ 00008576  0x00000e19 bpatch  0x0000001f , 0x00004003 
+ 00008577  0x00000e1a call  0x00006caa 
+ 00008578  0x00000e1b call  0x0000218b 
+ 00008579  0x00000e1c nrtn  0x00000029 
+ 00008580  0x00000e1d call  0x000026f3 
+ 00008581  0x00000e1e nbranch  0x00002188 , 0x00000034 
+ 00008582  0x00000e20 disable  0x00000029 
+ 00008583  0x00000e21 rtn 
+ 00008584  0x00000e24 call  0x00002489 
+ 00008585  0x00000e25 call  0x000022da 
+ 00008586  0x00000e26 branch  0x00002177 
+ 00008587  0x00000e2a branch  0x0000218e , 0x0000002d 
+ 00008588  0x00000e2b call  0x00002a7f 
+ 00008589  0x00000e2c branch  0x0000219c , 0x00000002 
+ 00008590  0x00000e2e call  0x000021a7 
+ 00008591  0x00000e2f nbranch  0x0000219c , 0x00000028 
+ 00008592  0x00000e30 fetch  0x00000001 , 0x0000004c 
+ 00008593  0x00000e31 rtnbit0  0x00000004 
+ 00008594  0x00000e32 rtnbit1  0x00000003 
+ 00008595  0x00000e33 fetch  0x00000001 , 0x0000004b 
+ 00008596  0x00000e34 rtnbit1  0x00000003 
+ 00008597  0x00000e35 call  0x000021ae 
+ 00008598  0x00000e36 nrtn  0x00000034 
+ 00008599  0x00000e37 fetch  0x00000001 , 0x0000016e 
+ 00008600  0x00000e38 increase  0xffffffff , 0x0000003f 
+ 00008601  0x00000e39 store  0x00000001 , 0x0000016e 
+ 00008602  0x00000e3a nrtn  0x00000034 
+ 00008603  0x00000e3b branch  0x00006006 
+ 00008604  0x00000e3e bpatch  0x00000020 , 0x00004004 
+ 00008605  0x00000e3f call  0x0000245d 
+ 00008606  0x00000e40 disable  0x00000029 
+ 00008607  0x00000e41 fetch  0x00000001 , 0x0000004c 
+ 00008608  0x00000e42 bbit1  0x00000004 , 0x000021a2 
+ 00008609  0x00000e43 rtn 
+ 00008610  0x00000e46 fetch  0x00000001 , 0x0000004c 
+ 00008611  0x00000e47 rtnbit1  0x00000003 
+ 00008612  0x00000e49 arg  0x00000101 , 0x00000005 
+ 00008613  0x00000e4a arg  0x00000008 , 0x00000039 
+ 00008614  0x00000e4b branch  0x00007ec6 
+ 00008615  0x00000e4e bpatch  0x00000021 , 0x00004004 
+ 00008616  0x00000e4f enable  0x00000028 
+ 00008617  0x00000e50 fetch  0x00000001 , 0x0000004b 
+ 00008618  0x00000e51 rtnbit0  0x00000003 
+ 00008619  0x00000e52 call  0x000021ae 
+ 00008620  0x00000e53 nrtn  0x00000034 
+ 00008621  0x00000e54 branch  0x00007fe9 
+ 00008622  0x00000e57 fetch  0x00000001 , 0x00000072 
+ 00008623  0x00000e58 increase  0xffffffff , 0x0000003f 
+ 00008624  0x00000e59 store  0x00000001 , 0x00000072 
+ 00008625  0x00000e5a rtn 
+ 00008626  0x00000e5d bpatch  0x00000022 , 0x00004004 
+ 00008627  0x00000e5e fetch  0x00000001 , 0x00000030 
+ 00008628  0x00000e5f bbit1  0x00000007 , 0x000021bb 
+ 00008629  0x00000e60 fetch  0x00000001 , 0x000009b5 
+ 00008630  0x00000e61 branch  0x000021bb , 0x00000034 
+ 00008631  0x00000e62 jam  0x00000000 , 0x000009b5 
+ 00008632  0x00000e63 jam  0x00000018 , 0x00000a99 
+ 00008633  0x00000e64 call  0x00007d86 
+ 00008634  0x00000e65 branch  0x000021bb 
+ 00008635  0x00000e67 bpatch  0x00000023 , 0x00004004 
+ 00008636  0x00000e68 call  0x00002254 
+ 00008637  0x00000e69 fetch  0x00000001 , 0x00000030 
+ 00008638  0x00000e6a set1  0x00000007 , 0x0000003f 
+ 00008639  0x00000e6b store  0x00000001 , 0x00000030 
+ 00008640  0x00000e6c jam  0x00000001 , 0x000041bd 
+ 00008641  0x00000e6d fetch  0x00000001 , 0x00000055 
+ 00008642  0x00000e6e bne  0x00000016 , 0x000021c3 
+ 00008643  0x00000e70 rtn 
+ 00008644  0x00000e73 jam  0x00000001 , 0x000009b5 
+ 00008645  0x00000e75 fetch  0x00000001 , 0x00000030 
+ 00008646  0x00000e76 set0  0x00000007 , 0x0000003f 
+ 00008647  0x00000e77 store  0x00000001 , 0x00000030 
+ 00008648  0x00000e78 rtn 
+ 00008649  0x00000e7d bpatch  0x00000024 , 0x00004004 
+ 00008650  0x00000e7e disable  0x00000028 
+ 00008651  0x00000e7f fetch  0x00000002 , 0x00000032 
+ 00008652  0x00000e80 arg  0x0000ffff , 0x00000002 
+ 00008653  0x00000e81 isub  0x00000002 , 0x0000003e 
+ 00008654  0x00000e82 nrtn  0x00000005 
+ 00008655  0x00000e83 fetch  0x00000004 , 0x00000034 
+ 00008656  0x00000e84 branch  0x000021d3 , 0x00000030 
+ 00008657  0x00000e85 isub  0x00000028 , 0x0000003f 
+ 00008658  0x00000e86 branch  0x000021d4 
+ 00008659  0x00000e88 isub  0x00000022 , 0x0000003f 
+ 00008660  0x00000e8a sub  0x0000003f , 0x00000004 , 0x0000003e 
+ 00008661  0x00000e8b nrtn  0x00000002 
+ 00008662  0x00000e8c force  0x00000000 , 0x0000003f 
+ 00008663  0x00000e8d store  0x00000002 , 0x00000032 
+ 00008664  0x00000e8e branch  0x00007fe7 
+ 00008665  0x00000e93 copy  0x0000003f , 0x00000002 
+ 00008666  0x00000e94 bpatch  0x00000025 , 0x00004004 
+ 00008667  0x00000e95 storet  0x00000004 , 0x00000034 
+ 00008668  0x00000e97 jam  0x00000001 , 0x0000455b 
+ 00008669  0x00000e98 setarg  0x0000ffff 
+ 00008670  0x00000e99 store  0x00000002 , 0x00000032 
+ 00008671  0x00000e9a jam  0x00000001 , 0x00000073 
+ 00008672  0x00000e9b rtn 
+ 00008673  0x00000e9f bpatch  0x00000026 , 0x00004004 
+ 00008674  0x00000ea0 call  0x000021c9 
+ 00008675  0x00000ea1 nrtn  0x00000028 
+ 00008676  0x00000ea2 disable  0x00000028 
+ 00008677  0x00000ea3 jam  0x00000020 , 0x00000011 
+ 00008678  0x00000ea4 set0  0x0000000b , 0x00000000 
+ 00008679  0x00000ea6 call  0x00002a4f 
+ 00008680  0x00000ea7 call  0x000022e6 
+ 00008681  0x00000ea8 bmark1  0x0000000b , 0x000021f4 
+ 00008682  0x00000ea9 call  0x00002455 
+ 00008683  0x00000eaa nbranch  0x000021e7 , 0x00000034 
+ 00008684  0x00000eac bpatch  0x00000027 , 0x00004004 
+ 00008685  0x00000ead disable  0x00000028 
+ 00008686  0x00000eae deposit  0x00000022 
+ 00008687  0x00000eaf store  0x00000004 , 0x000040ca 
+ 00008688  0x00000eb0 enable  0x00000030 
+ 00008689  0x00000eb1 enable  0x00000029 
+ 00008690  0x00000eb2 jam  0x0000002a , 0x00000a99 
+ 00008691  0x00000eb3 branch  0x00007d86 
+ 00008692  0x00000eb6 bpatch  0x00000028 , 0x00004005 
+ 00008693  0x00000eb7 call  0x00002a4d 
+ 00008694  0x00000eb8 arg  0x00000010 , 0x00000001 
+ 00008695  0x00000eb9 call  0x000022dc 
+ 00008696  0x00000eba disable  0x00000030 
+ 00008697  0x00000ebb disable  0x00000029 
+ 00008698  0x00000ebc call  0x00002818 
+ 00008699  0x00000ebd call  0x00002435 
+ 00008700  0x00000ebf bpatch  0x00000029 , 0x00004005 
+ 00008701  0x00000ec0 call  0x0000247c 
+ 00008702  0x00000ec1 branch  0x00002202 , 0x0000002d 
+ 00008703  0x00000ec2 call  0x00002455 
+ 00008704  0x00000ec3 nbranch  0x000021fc , 0x00000034 
+ 00008705  0x00000ec4 branch  0x000021ec 
+ 00008706  0x00000ec6 fetch  0x00000001 , 0x00000031 
+ 00008707  0x00000ec7 set0  0x00000001 , 0x0000003f 
+ 00008708  0x00000ec8 store  0x00000001 , 0x00000031 
+ 00008709  0x00000ec9 call  0x00002a88 
+ 00008710  0x00000eca call  0x00002841 
+ 00008711  0x00000ecb enable  0x00000028 
+ 00008712  0x00000ecc jam  0x0000002b , 0x00000a99 
+ 00008713  0x00000ecd branch  0x00007d86 
+ 00008714  0x00000ed3 bpatch  0x0000002a , 0x00004005 
+ 00008715  0x00000ed4 set1  0x00000009 , 0x00000000 
+ 00008716  0x00000ed5 deposit  0x00000011 
+ 00008717  0x00000ed6 store  0x00000002 , 0x0000001e 
+ 00008718  0x00000ed7 force  0x00000050 , 0x00000039 
+ 00008719  0x00000ed8 arg  0x0000043f , 0x00000005 
+ 00008720  0x00000ed9 add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008721  0x00000eda ifetch  0x00000001 , 0x00000006 
+ 00008722  0x00000edb copy  0x00000011 , 0x00000006 
+ 00008723  0x00000edc bbit1  0x00000000 , 0x00007f01 
+ 00008724  0x00000edd arg  0x00000030 , 0x00000005 
+ 00008725  0x00000ede call  0x00007f01 
+ 00008726  0x00000edf disable  0x0000002e 
+ 00008727  0x00000ee0 fetch  0x00000001 , 0x00000077 
+ 00008728  0x00000ee1 iforce  0x00000004 
+ 00008729  0x00000ee2 jam  0x00000001 , 0x0000008a 
+ 00008730  0x00000ee3 branch  0x0000221c , 0x00000029 
+ 00008731  0x00000ee4 jam  0x00000001 , 0x0000008a 
+ 00008732  0x00000ee6 fetch  0x00000001 , 0x00000030 
+ 00008733  0x00000ee7 rtnbit0  0x00000001 
+ 00008734  0x00000ee8 fetch  0x00000001 , 0x00000073 
+ 00008735  0x00000ee9 store  0x00000001 , 0x0000008a 
+ 00008736  0x00000eea fetch  0x00000001 , 0x00000074 
+ 00008737  0x00000eeb store  0x00000001 , 0x0000008b 
+ 00008738  0x00000eec rtn 
+ 00008739  0x00000eef bpatch  0x0000002b , 0x00004005 
+ 00008740  0x00000ef0 fetch  0x00000002 , 0x0000001e 
+ 00008741  0x00000ef1 iforce  0x00000005 
+ 00008742  0x00000ef2 force  0x00000050 , 0x00000039 
+ 00008743  0x00000ef3 arg  0x0000043f , 0x00000006 
+ 00008744  0x00000ef4 branch  0x00007f01 , 0x00000036 
+ 00008745  0x00000ef5 arg  0x00000030 , 0x00000006 
+ 00008746  0x00000ef6 branch  0x00007f01 
+ 00008747  0x00000efb arg  0x00000001 , 0x00000039 
+ 00008748  0x00000efc fetcht  0x00000001 , 0x00000015 
+ 00008749  0x00000efe increase  0x00000001 , 0x00000002 
+ 00008750  0x00000eff compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00008751  0x00000f00 nbranch  0x00002231 , 0x00000001 
+ 00008752  0x00000f01 arg  0x00000000 , 0x00000002 
+ 00008753  0x00000f03 storet  0x00000001 , 0x00000015 
+ 00008754  0x00000f04 mul32  0x00000002 , 0x00000050 , 0x0000003f 
+ 00008755  0x00000f05 arg  0x00004040 , 0x00000011 
+ 00008756  0x00000f06 iadd  0x00000011 , 0x00000011 
+ 00008757  0x00000f07 ifetch  0x00000001 , 0x00000011 
+ 00008758  0x00000f08 bbit1  0x00000001 , 0x00002239 
+ 00008759  0x00000f09 rtnbit1  0x00000000 
+ 00008760  0x00000f0a rtnbit1  0x00000003 
+ 00008761  0x00000f0c loop  0x0000222d 
+ 00008762  0x00000f0d rtn 
+ 00008763  0x00000f10 bpatch  0x0000002c , 0x00004005 
+ 00008764  0x00000f11 arg  0x0000226a , 0x00000013 
+ 00008765  0x00000f12 call  0x00002261 
+ 00008766  0x00000f13 nrtn  0x00000005 
+ 00008767  0x00000f14 deposit  0x00000011 
+ 00008768  0x00000f15 store  0x00000002 , 0x0000001e 
+ 00008769  0x00000f16 force  0x00000000 , 0x0000003e 
+ 00008770  0x00000f17 rtn 
+ 00008771  0x00000f1c call  0x00002725 
+ 00008772  0x00000f1d branch  0x0000224b , 0x00000001 
+ 00008773  0x00000f1e fetch  0x00000002 , 0x0000001e 
+ 00008774  0x00000f1f add  0x0000003f , 0x00000017 , 0x00000005 
+ 00008775  0x00000f20 fetch  0x00000001 , 0x00000047 
+ 00008776  0x00000f21 istore  0x00000001 , 0x00000005 
+ 00008777  0x00000f22 arg  0x000022aa , 0x00000013 
+ 00008778  0x00000f23 branch  0x00002261 
+ 00008779  0x00000f26 fetch  0x00000001 , 0x00000047 
+ 00008780  0x00000f27 isolate1  0x00000003 , 0x0000003f 
+ 00008781  0x00000f28 branch  0x00002250 , 0x00000001 
+ 00008782  0x00000f29 force  0x00000001 , 0x0000003e 
+ 00008783  0x00000f2a rtn 
+ 00008784  0x00000f2c force  0x00000000 , 0x0000003e 
+ 00008785  0x00000f2d rtn 
+ 00008786  0x00000f31 arg  0x000022a7 , 0x00000013 
+ 00008787  0x00000f32 branch  0x00002261 
+ 00008788  0x00000f35 fetcht  0x00000002 , 0x0000001e 
+ 00008789  0x00000f36 arg  0x000022cf , 0x00000013 
+ 00008790  0x00000f37 branch  0x00002261 
+ 00008791  0x00000f3c fetcht  0x00000001 , 0x000041cf 
+ 00008792  0x00000f3e arg  0x00002275 , 0x00000013 
+ 00008793  0x00000f3f branch  0x00002261 
+ 00008794  0x00000f42 bpatch  0x0000002d , 0x00004005 
+ 00008795  0x00000f43 fetcht  0x00000006 , 0x000041d0 
+ 00008796  0x00000f45 arg  0x0000226e , 0x00000013 
+ 00008797  0x00000f46 branch  0x00002261 
+ 00008798  0x00000f49 arg  0x0000227b , 0x00000013 
+ 00008799  0x00000f4a branch  0x00002261 
+ 00008800  0x00000f4d arg  0x000022c6 , 0x00000013 
+ 00008801  0x00000f4f bpatch  0x0000002e , 0x00004005 
+ 00008802  0x00000f50 arg  0x00004040 , 0x00000011 
+ 00008803  0x00000f51 arg  0x00000001 , 0x00000039 
+ 00008804  0x00000f53 ifetch  0x00000001 , 0x00000011 
+ 00008805  0x00000f54 copy  0x00000013 , 0x0000003d 
+ 00008806  0x00000f56 increase  0x00000050 , 0x00000011 
+ 00008807  0x00000f57 loop  0x00002264 
+ 00008808  0x00000f58 force  0x00000001 , 0x0000003e 
+ 00008809  0x00000f59 rtn 
+ 00008810  0x00000f5c bbit1  0x00000000 , 0x00002266 
+ 00008811  0x00000f5d bbit1  0x00000003 , 0x00002266 
+ 00008812  0x00000f5e force  0x00000000 , 0x0000003e 
+ 00008813  0x00000f5f rtn 
+ 00008814  0x00000f62 bbit1  0x00000003 , 0x00002270 
+ 00008815  0x00000f63 bbit0  0x00000000 , 0x00002266 
+ 00008816  0x00000f65 add  0x00000011 , 0x00000010 , 0x00000006 
+ 00008817  0x00000f66 ifetch  0x00000006 , 0x00000006 
+ 00008818  0x00000f67 isub  0x00000002 , 0x0000003e 
+ 00008819  0x00000f68 rtn  0x00000005 
+ 00008820  0x00000f69 branch  0x00002266 
+ 00008821  0x00000f6c bbit0  0x00000000 , 0x00002266 
+ 00008822  0x00000f6d add  0x00000011 , 0x00000016 , 0x00000006 
+ 00008823  0x00000f6e ifetch  0x00000001 , 0x00000006 
+ 00008824  0x00000f6f isub  0x00000002 , 0x0000003e 
+ 00008825  0x00000f70 rtn  0x00000005 
+ 00008826  0x00000f71 branch  0x00002266 
+ 00008827  0x00000f74 bbit0  0x00000001 , 0x00002266 
+ 00008828  0x00000f76 call  0x000022b3 
+ 00008829  0x00000f77 call  0x00002297 
+ 00008830  0x00000f78 isub  0x00000002 , 0x0000003f 
+ 00008831  0x00000f79 increase  0x00000001 , 0x0000003f 
+ 00008832  0x00000f7a branch  0x00002291 , 0x00000002 
+ 00008833  0x00000f7b copy  0x00000006 , 0x00000012 
+ 00008834  0x00000f7c store  0x00000009 , 0x00000aa2 
+ 00008835  0x00000f7d fetch  0x00000001 , 0x000044c0 
+ 00008836  0x00000f7e nbranch  0x00002289 , 0x00000034 
+ 00008837  0x00000f7f fetch  0x00000009 , 0x00000aa2 
+ 00008838  0x00000f80 copy  0x00000012 , 0x00000006 
+ 00008839  0x00000f81 increase  0x00000005 , 0x0000003f 
+ 00008840  0x00000f82 branch  0x0000228c 
+ 00008841  0x00000f84 fetch  0x00000009 , 0x00000aa2 
+ 00008842  0x00000f85 copy  0x00000012 , 0x00000006 
+ 00008843  0x00000f86 increase  0x00000014 , 0x0000003f 
+ 00008844  0x00000f88 nbranch  0x00002266 , 0x00000002 
+ 00008845  0x00000f8a copy  0x00000002 , 0x00000021 
+ 00008846  0x00000f8b call  0x000022bf 
+ 00008847  0x00000f8c force  0x00000000 , 0x0000003e 
+ 00008848  0x00000f8d rtn 
+ 00008849  0x00000f91 iforce  0x00000012 
+ 00008850  0x00000f92 add  0x00000011 , 0x00000002 , 0x00000006 
+ 00008851  0x00000f93 ifetch  0x00000002 , 0x00000006 
+ 00008852  0x00000f94 branch  0x0000228d , 0x00000034 
+ 00008853  0x00000f95 call  0x000022bf 
+ 00008854  0x00000f96 branch  0x0000227c 
+ 00008855  0x00000f99 rshift16  0x0000003f , 0x0000000b 
+ 00008856  0x00000f9a rshift8  0x0000000b , 0x0000000b 
+ 00008857  0x00000f9b branch  0x000022a1 , 0x00000005 
+ 00008858  0x00000f9c compare  0x0000000f , 0x0000000b , 0x0000000f 
+ 00008859  0x00000f9d nrtn  0x00000001 
+ 00008860  0x00000f9e rshift16  0x00000002 , 0x0000000b 
+ 00008861  0x00000f9f rshift8  0x0000000b , 0x0000000b 
+ 00008862  0x00000fa0 nrtn  0x00000005 
+ 00008863  0x00000fa1 set1  0x0000001c , 0x00000002 
+ 00008864  0x00000fa2 rtn 
+ 00008865  0x00000fa4 rshift16  0x00000002 , 0x0000000b 
+ 00008866  0x00000fa5 rshift8  0x0000000b , 0x0000000b 
+ 00008867  0x00000fa6 compare  0x0000000f , 0x0000000b , 0x0000000f 
+ 00008868  0x00000fa7 nrtn  0x00000001 
+ 00008869  0x00000fa8 set1  0x0000001c , 0x0000003f 
+ 00008870  0x00000fa9 rtn 
+ 00008871  0x00000fac bbit0  0x00000000 , 0x00002266 
+ 00008872  0x00000fad force  0x00000000 , 0x0000003e 
+ 00008873  0x00000fae rtn 
+ 00008874  0x00000fb1 bbit0  0x00000000 , 0x00002266 
+ 00008875  0x00000fb2 add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008876  0x00000fb3 ifetch  0x00000001 , 0x00000006 
+ 00008877  0x00000fb4 bbit1  0x00000000 , 0x00002266 
+ 00008878  0x00000fb5 add  0x00000011 , 0x00000017 , 0x00000006 
+ 00008879  0x00000fb6 ifetch  0x00000001 , 0x00000006 
+ 00008880  0x00000fb7 bbit0  0x00000003 , 0x00002266 
+ 00008881  0x00000fb8 force  0x00000000 , 0x0000003e 
+ 00008882  0x00000fb9 rtn 
+ 00008883  0x00000fbc add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008884  0x00000fbd ifetcht  0x00000001 , 0x00000006 
+ 00008885  0x00000fbe deposit  0x00000022 
+ 00008886  0x00000fbf isolate1  0x00000001 , 0x00000002 
+ 00008887  0x00000fc0 add  0x00000011 , 0x00000004 , 0x00000006 
+ 00008888  0x00000fc1 ifetcht  0x00000004 , 0x00000006 
+ 00008889  0x00000fc2 rtn  0x00000001 
+ 00008890  0x00000fc3 add  0x00000011 , 0x00000008 , 0x00000006 
+ 00008891  0x00000fc4 ifetch  0x00000006 , 0x00000006 
+ 00008892  0x00000fc5 call  0x00002854 
+ 00008893  0x00000fc6 deposit  0x00000028 
+ 00008894  0x00000fc7 rtn 
+ 00008895  0x00000fca add  0x00000011 , 0x00000002 , 0x00000006 
+ 00008896  0x00000fcb add  0x00000011 , 0x00000004 , 0x00000005 
+ 00008897  0x00000fcc ifetch  0x00000002 , 0x00000006 
+ 00008898  0x00000fcd iadd  0x00000002 , 0x0000000b 
+ 00008899  0x00000fce deposit  0x0000000b 
+ 00008900  0x00000fcf istore  0x00000004 , 0x00000005 
+ 00008901  0x00000fd0 branch  0x00005449 
+ 00008902  0x00000fd4 bbit0  0x00000001 , 0x00002266 
+ 00008903  0x00000fd5 call  0x000022b3 
+ 00008904  0x00000fd6 iadd  0x0000001b , 0x0000003f 
+ 00008905  0x00000fd7 iadd  0x0000001b , 0x0000003f 
+ 00008906  0x00000fd8 iadd  0x00000007 , 0x0000003f 
+ 00008907  0x00000fd9 isub  0x00000002 , 0x0000003e 
+ 00008908  0x00000fda nbranch  0x00002266 , 0x00000002 
+ 00008909  0x00000fdb force  0x00000000 , 0x0000003e 
+ 00008910  0x00000fdc rtn 
+ 00008911  0x00000fdf bbit0  0x00000000 , 0x00002266 
+ 00008912  0x00000fe0 deposit  0x00000002 
+ 00008913  0x00000fe1 isub  0x00000011 , 0x0000003e 
+ 00008914  0x00000fe2 branch  0x00002266 , 0x0000003e 
+ 00008915  0x00000fe3 add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008916  0x00000fe4 ifetch  0x00000001 , 0x00000006 
+ 00008917  0x00000fe5 bbit1  0x00000000 , 0x00002266 
+ 00008918  0x00000fe6 ifetch  0x00000001 , 0x00000011 
+ 00008919  0x00000fe7 set0  0x00000007 , 0x0000003f 
+ 00008920  0x00000fe8 istore  0x00000001 , 0x00000011 
+ 00008921  0x00000fe9 branch  0x00002266 
+ 00008922  0x00000fed bpatch  0x0000002f , 0x00004005 
+ 00008923  0x00000fee call  0x00002a4f 
+ 00008924  0x00000ff0 add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008925  0x00000ff1 call  0x000028e2 
+ 00008926  0x00000ff2 force  0x00000003 , 0x00000024 
+ 00008927  0x00000ff3 call  0x000028d2 
+ 00008928  0x00000ff4 call  0x00002a51 
+ 00008929  0x00000ff5 call  0x00002a56 
+ 00008930  0x00000ff6 call  0x00002a64 
+ 00008931  0x00000ff7 branch  0x00002762 
+ 00008932  0x00000ffa bpatch  0x00000030 , 0x00004006 
+ 00008933  0x00000ffb call  0x00002a4d 
+ 00008934  0x00000ffd add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008935  0x00000ffe call  0x000028e2 
+ 00008936  0x00000fff force  0x00000003 , 0x00000024 
+ 00008937  0x00001000 call  0x000028cc 
+ 00008938  0x00001001 call  0x0000242a 
+ 00008939  0x00001002 call  0x000029f1 
+ 00008940  0x00001003 call  0x00002a5b 
+ 00008941  0x00001004 call  0x000029eb 
+ 00008942  0x00001006 call  0x00002a0d 
+ 00008943  0x00001007 nrtn  0x00000018 
+ 00008944  0x00001008 call  0x000029bb 
+ 00008945  0x00001009 branch  0x0000251c 
+ 00008946  0x0000100e bpatch  0x00000031 , 0x00004006 
+ 00008947  0x0000100f fetch  0x00000001 , 0x00000181 
+ 00008948  0x00001010 iforce  0x00000004 
+ 00008949  0x00001011 force  0x00000001 , 0x00000001 
+ 00008950  0x00001012 call  0x000022da 
+ 00008951  0x00001013 branch  0x000022e4 
+ 00008952  0x0000101f fetch  0x00000001 , 0x00004093 
+ 00008953  0x00001020 rtnbit0  0x00000000 
+ 00008954  0x00001021 force  0x00000004 , 0x00000007 
+ 00008955  0x00001022 call  0x00007f16 
+ 00008956  0x00001023 nrtn  0x00000034 
+ 00008957  0x00001024 fetcht  0x00000002 , 0x000040ad 
+ 00008958  0x00001025 force  0x00000004 , 0x00000007 
+ 00008959  0x00001026 call  0x0000271c 
+ 00008960  0x00001027 rtn  0x00000028 
+ 00008961  0x00001028 call  0x00002308 
+ 00008962  0x00001029 force  0x00000004 , 0x00000007 
+ 00008963  0x0000102a fetch  0x00000002 , 0x000040af 
+ 00008964  0x0000102b nbranch  0x00007f08 , 0x00000018 
+ 00008965  0x0000102c random  0x0000003f 
+ 00008966  0x0000102d iand  0x00000035 , 0x0000003f 
+ 00008967  0x0000102e branch  0x00007f08 
+ 00008968  0x00001032 bpatch  0x00000032 , 0x00004006 
+ 00008969  0x00001033 jam  0x00000000 , 0x00000181 
+ 00008970  0x00001034 disable  0x00000030 
+ 00008971  0x00001035 disable  0x0000002e 
+ 00008972  0x00001036 call  0x000028a4 
+ 00008973  0x00001037 and  0x00000022 , 0x000001fc , 0x00000021 
+ 00008974  0x00001038 force  0x00000001 , 0x00000024 
+ 00008975  0x00001039 call  0x000028d8 
+ 00008976  0x0000103a call  0x000028cc 
+ 00008977  0x0000103b setflip  0x0000001d , 0x00000000 
+ 00008978  0x0000103c fetch  0x00000001 , 0x00000006 
+ 00008979  0x0000103d increase  0x00000001 , 0x0000003f 
+ 00008980  0x0000103e store  0x00000001 , 0x00000006 
+ 00008981  0x0000103f call  0x000028f2 
+ 00008982  0x00001040 call  0x000029eb 
+ 00008983  0x00001041 call  0x00002a14 
+ 00008984  0x00001042 nrtn  0x00000018 
+ 00008985  0x00001043 bpatch  0x00000033 , 0x00004006 
+ 00008986  0x00001044 force  0x00000000 , 0x0000001b 
+ 00008987  0x00001045 call  0x000028f9 
+ 00008988  0x00001046 fetch  0x00000001 , 0x00000007 
+ 00008989  0x00001047 increase  0x00000001 , 0x0000003f 
+ 00008990  0x00001048 store  0x00000001 , 0x00000007 
+ 00008991  0x00001049 call  0x000028d8 
+ 00008992  0x0000104a call  0x00002a4d 
+ 00008993  0x0000104b or_into  0x00000002 , 0x00000021 
+ 00008994  0x0000104c force  0x00000001 , 0x00000024 
+ 00008995  0x0000104d call  0x000028d2 
+ 00008996  0x0000104e call  0x000028f2 
+ 00008997  0x0000104f call  0x00002a51 
+ 00008998  0x00001050 call  0x00002a5f 
+ 00008999  0x00001051 deposit  0x00000022 
+ 00009000  0x00001052 store  0x00000004 , 0x00000161 
+ 00009001  0x00001053 call  0x00002a64 
+ 00009002  0x00001054 force  0x00000002 , 0x00000001 
+ 00009003  0x00001055 force  0x00000000 , 0x00000004 
+ 00009004  0x00001056 call  0x00002a6b 
+ 00009005  0x00001057 call  0x00002766 
+ 00009006  0x00001058 call  0x00002332 
+ 00009007  0x00001059 and_into  0x000001fd , 0x00000021 
+ 00009008  0x0000105a increase  0x00000001 , 0x00000026 
+ 00009009  0x0000105b rtn 
+ 00009010  0x0000105e bpatch  0x00000034 , 0x00004006 
+ 00009011  0x0000105f fetch  0x00000001 , 0x000040d1 
+ 00009012  0x00001060 rtn  0x00000034 
+ 00009013  0x00001061 arg  0x0000018e , 0x00000005 
+ 00009014  0x00001062 fetch  0x00000001 , 0x00004515 
+ 00009015  0x00001063 copy  0x0000003f , 0x00000039 
+ 00009016  0x00001064 increase  0x00000001 , 0x0000003f 
+ 00009017  0x00001065 istore  0x00000001 , 0x00000005 
+ 00009018  0x00001066 copy  0x00000005 , 0x00000002 
+ 00009019  0x00001067 increase  0x00000001 , 0x0000003f 
+ 00009020  0x00001068 store  0x00000002 , 0x000041dc 
+ 00009021  0x00001069 copy  0x00000002 , 0x00000005 
+ 00009022  0x0000106a setarg  0x00000009 
+ 00009023  0x0000106b istore  0x00000001 , 0x00000005 
+ 00009024  0x0000106c arg  0x00004516 , 0x00000006 
+ 00009025  0x0000106d call  0x00007f01 
+ 00009026  0x0000106f arg  0x0000458d , 0x00000013 
+ 00009027  0x00001070 arg  0x00000004 , 0x00000039 
+ 00009028  0x00001071 call  0x00002354 
+ 00009029  0x00001072 arg  0x00004577 , 0x00000013 
+ 00009030  0x00001073 arg  0x00000001 , 0x00000039 
+ 00009031  0x00001074 call  0x00002354 
+ 00009032  0x00001076 force  0x0000000a , 0x00000001 
+ 00009033  0x00001077 jam  0x00000002 , 0x000041db 
+ 00009034  0x00001078 setarg  0x0000018e 
+ 00009035  0x00001079 store  0x00000002 , 0x0000016f 
+ 00009036  0x0000107a call  0x00002a4d 
+ 00009037  0x0000107b call  0x000028d2 
+ 00009038  0x0000107c call  0x00002a51 
+ 00009039  0x0000107d call  0x00002a5f 
+ 00009040  0x0000107e call  0x00002a64 
+ 00009041  0x0000107f call  0x00002a6b 
+ 00009042  0x00001080 call  0x00002766 
+ 00009043  0x00001081 rtn 
+ 00009044  0x00001085 copy  0x00000005 , 0x00000002 
+ 00009045  0x00001086 copy  0x00000013 , 0x00000006 
+ 00009046  0x00001087 ifetch  0x00000001 , 0x00000006 
+ 00009047  0x00001088 rtn  0x00000034 
+ 00009048  0x0000108a lshift  0x0000003f , 0x0000003f 
+ 00009049  0x0000108b loop  0x00002358 
+ 00009050  0x0000108c copy  0x0000003f , 0x00000011 
+ 00009051  0x0000108d increase  0x00000002 , 0x0000003f 
+ 00009052  0x0000108e copy  0x0000003f , 0x00000007 
+ 00009053  0x0000108f fetch  0x00000002 , 0x000041dc 
+ 00009054  0x00001090 iadd  0x00000007 , 0x0000003f 
+ 00009055  0x00001091 store  0x00000002 , 0x000041dc 
+ 00009056  0x00001092 copy  0x00000002 , 0x00000005 
+ 00009057  0x00001093 copy  0x00000011 , 0x0000003f 
+ 00009058  0x00001094 increase  0x00000001 , 0x0000003f 
+ 00009059  0x00001095 istore  0x00000001 , 0x00000005 
+ 00009060  0x00001096 copy  0x00000013 , 0x00000006 
+ 00009061  0x00001097 ifetch  0x00000001 , 0x00000006 
+ 00009062  0x00001098 ifetch  0x00000001 , 0x00000006 
+ 00009063  0x00001099 istore  0x00000001 , 0x00000005 
+ 00009064  0x0000109a copy  0x00000011 , 0x00000039 
+ 00009065  0x0000109b branch  0x00007f01 
+ 00009066  0x000010a2 fetch  0x00000001 , 0x00004093 
+ 00009067  0x000010a3 rtnbit0  0x00000001 
+ 00009068  0x000010a4 force  0x00000005 , 0x00000007 
+ 00009069  0x000010a5 call  0x00007f16 
+ 00009070  0x000010a6 nrtn  0x00000034 
+ 00009071  0x000010a7 fetcht  0x00000002 , 0x000040b1 
+ 00009072  0x000010a8 force  0x00000028 , 0x00000007 
+ 00009073  0x000010a9 call  0x0000271c 
+ 00009074  0x000010aa rtn  0x00000028 
+ 00009075  0x000010ab force  0x00000000 , 0x00000004 
+ 00009076  0x000010ac jam  0x00000008 , 0x00000010 
+ 00009077  0x000010ad set0  0x0000000b , 0x00000000 
+ 00009078  0x000010ae call  0x0000237a 
+ 00009079  0x000010af force  0x00000005 , 0x00000007 
+ 00009080  0x000010b0 fetch  0x00000002 , 0x000040b3 
+ 00009081  0x000010b1 branch  0x00007f08 
+ 00009082  0x000010b5 bpatch  0x00000035 , 0x00004006 
+ 00009083  0x000010b6 disable  0x00000030 
+ 00009084  0x000010b7 call  0x000028a4 
+ 00009085  0x000010b8 fetch  0x00000001 , 0x00000008 
+ 00009086  0x000010b9 increase  0x00000001 , 0x0000003f 
+ 00009087  0x000010ba store  0x00000001 , 0x00000008 
+ 00009088  0x000010bb force  0x00000000 , 0x00000026 
+ 00009089  0x000010bc call  0x000028e2 
+ 00009090  0x000010bd add  0x00000022 , 0x00000001 , 0x00000021 
+ 00009091  0x000010be force  0x00000002 , 0x00000024 
+ 00009092  0x000010bf bpatch  0x00000036 , 0x00004006 
+ 00009093  0x000010c0 call  0x000028cc 
+ 00009094  0x000010c1 call  0x000029eb 
+ 00009095  0x000010c2 call  0x00002a14 
+ 00009096  0x000010c3 nrtn  0x00000018 
+ 00009097  0x000010c4 call  0x000028f9 
+ 00009098  0x000010c5 fetch  0x00000001 , 0x00000009 
+ 00009099  0x000010c6 increase  0x00000001 , 0x0000003f 
+ 00009100  0x000010c7 store  0x00000001 , 0x00000009 
+ 00009101  0x000010c8 force  0x00000000 , 0x0000001b 
+ 00009102  0x000010c9 call  0x00002a4d 
+ 00009103  0x000010ca or_into  0x00000002 , 0x00000021 
+ 00009104  0x000010cb force  0x00000001 , 0x00000024 
+ 00009105  0x000010cc call  0x000028d2 
+ 00009106  0x000010cd call  0x00002a51 
+ 00009107  0x000010ce call  0x00002a5f 
+ 00009108  0x000010cf call  0x00002a64 
+ 00009109  0x000010d0 call  0x0000264d 
+ 00009110  0x000010d1 force  0x00000000 , 0x00000004 
+ 00009111  0x000010d2 arg  0x00000600 , 0x0000000b 
+ 00009112  0x000010d3 until  0x00000029 , 0x00000026 
+ 00009113  0x000010d4 or_into  0x00000003 , 0x00000028 
+ 00009114  0x000010d5 and_into  0x000001fd , 0x00000021 
+ 00009115  0x000010d7 bpatch  0x00000037 , 0x00004006 
+ 00009116  0x000010d8 increase  0x00000001 , 0x00000026 
+ 00009117  0x000010d9 call  0x000028cc 
+ 00009118  0x000010da call  0x000029eb 
+ 00009119  0x000010db call  0x00002a07 
+ 00009120  0x000010dc nbranch  0x000023a4 , 0x00000018 
+ 00009121  0x000010dd call  0x00002a6b 
+ 00009122  0x000010de call  0x0000251e 
+ 00009123  0x000010df bmark1  0x0000000b , 0x000023ab 
+ 00009124  0x000010e1 bpatch  0x00000038 , 0x00004007 
+ 00009125  0x000010e2 fetch  0x00000001 , 0x00000010 
+ 00009126  0x000010e3 rtn  0x00000034 
+ 00009127  0x000010e4 increase  0xffffffff , 0x0000003f 
+ 00009128  0x000010e5 store  0x00000001 , 0x00000010 
+ 00009129  0x000010e6 call  0x00002a4f 
+ 00009130  0x000010e7 branch  0x0000239b 
+ 00009131  0x000010eb bpatch  0x00000039 , 0x00004007 
+ 00009132  0x000010ec set0  0x00000001 , 0x00000028 
+ 00009133  0x000010ed set1  0x00000000 , 0x00000028 
+ 00009134  0x000010ee fetch  0x00000001 , 0x0000000a 
+ 00009135  0x000010ef increase  0x00000001 , 0x0000003f 
+ 00009136  0x000010f0 store  0x00000001 , 0x0000000a 
+ 00009137  0x000010f1 call  0x00002a4d 
+ 00009138  0x000010f2 or_into  0x00000002 , 0x00000021 
+ 00009139  0x000010f3 call  0x000028d2 
+ 00009140  0x000010f4 call  0x00002a51 
+ 00009141  0x000010f5 call  0x00002a5f 
+ 00009142  0x000010f6 call  0x00002a64 
+ 00009143  0x000010f7 call  0x0000264d 
+ 00009144  0x000010f9 compare  0x00000003 , 0x00000028 , 0x00000003 
+ 00009145  0x000010fa branch  0x000023bc , 0x00000001 
+ 00009146  0x000010fb until  0x0000003e , 0x00000017 
+ 00009147  0x000010fc branch  0x000023b8 
+ 00009148  0x000010fe fetch  0x00000004 , 0x00000165 
+ 00009149  0x000010ff or_into  0x00000003 , 0x0000003f 
+ 00009150  0x00001100 icopy  0x00000028 
+ 00009151  0x00001103 bpatch  0x0000003a , 0x00004007 
+ 00009152  0x00001104 fetch  0x00000006 , 0x00000178 
+ 00009153  0x00001105 store  0x00000006 , 0x00000040 
+ 00009154  0x00001106 call  0x00002435 
+ 00009155  0x00001108 call  0x0000247c 
+ 00009156  0x00001109 branch  0x000023c8 , 0x0000002d 
+ 00009157  0x0000110a call  0x00002455 
+ 00009158  0x0000110b nbranch  0x000023c3 , 0x00000034 
+ 00009159  0x0000110c rtn 
+ 00009160  0x00001110 bpatch  0x0000003b , 0x00004007 
+ 00009161  0x00001111 call  0x00002440 
+ 00009162  0x00001112 call  0x0000223b 
+ 00009163  0x00001113 nrtn  0x00000005 
+ 00009164  0x00001114 jam  0x00000000 , 0x00000031 
+ 00009165  0x00001115 call  0x00002841 
+ 00009166  0x00001116 branch  0x00002223 
+ 00009167  0x0000111c bpatch  0x0000003c , 0x00004007 
+ 00009168  0x0000111d call  0x00002850 
+ 00009169  0x0000111e call  0x000023f3 
+ 00009170  0x0000111f rtn  0x00000028 
+ 00009171  0x00001121 bpatch  0x0000003d , 0x00004007 
+ 00009172  0x00001122 call  0x00002c69 
+ 00009173  0x00001123 call  0x00006caa 
+ 00009174  0x00001124 call  0x00002514 
+ 00009175  0x00001125 nbranch  0x000023e2 , 0x0000002d 
+ 00009176  0x00001126 call  0x00002a88 
+ 00009177  0x00001127 call  0x00006cc2 
+ 00009178  0x00001128 call  0x00002489 
+ 00009179  0x00001129 call  0x00002757 
+ 00009180  0x0000112a call  0x00002728 
+ 00009181  0x0000112b call  0x00005d08 
+ 00009182  0x0000112c fetch  0x00000001 , 0x0000000b 
+ 00009183  0x0000112d increase  0x00000001 , 0x0000003f 
+ 00009184  0x0000112e store  0x00000001 , 0x0000000b 
+ 00009185  0x0000112f call  0x00002841 
+ 00009186  0x00001131 bpatch  0x0000003e , 0x00004007 
+ 00009187  0x00001132 call  0x00002bb1 
+ 00009188  0x00001133 call  0x00002a7f 
+ 00009189  0x00001134 branch  0x000023eb , 0x00000002 
+ 00009190  0x00001135 call  0x000021a7 
+ 00009191  0x00001136 nbranch  0x000023eb , 0x00000028 
+ 00009192  0x00001137 call  0x000026f3 
+ 00009193  0x00001138 nbranch  0x000023d3 , 0x00000034 
+ 00009194  0x00001139 rtn 
+ 00009195  0x0000113c bpatch  0x0000003f , 0x00004007 
+ 00009196  0x0000113d jam  0x00000000 , 0x00000151 
+ 00009197  0x0000113e jam  0x00000000 , 0x0000017f 
+ 00009198  0x0000113f call  0x0000245d 
+ 00009199  0x00001140 set0  0x00000011 , 0x00000000 
+ 00009200  0x00001141 call  0x00007fb0 
+ 00009201  0x00001142 fetch  0x00000001 , 0x00000030 
+ 00009202  0x00001143 rtn 
+ 00009203  0x00001147 bpatch  0x00000040 , 0x00004008 
+ 00009204  0x00001148 call  0x000021c9 
+ 00009205  0x00001149 nrtn  0x00000028 
+ 00009206  0x0000114a copy  0x00000004 , 0x00000002 
+ 00009207  0x0000114b call  0x00002a6f 
+ 00009208  0x0000114c store  0x00000001 , 0x00000181 
+ 00009209  0x0000114d copy  0x00000002 , 0x00000004 
+ 00009210  0x0000114e jam  0x00000020 , 0x00000011 
+ 00009211  0x00001150 bpatch  0x00000041 , 0x00004008 
+ 00009212  0x00001151 call  0x00002a4f 
+ 00009213  0x00001152 force  0x00000002 , 0x00000001 
+ 00009214  0x00001153 call  0x0000274f 
+ 00009215  0x00001154 deposit  0x00000022 
+ 00009216  0x00001155 store  0x00000004 , 0x00000161 
+ 00009217  0x00001156 call  0x00002762 
+ 00009218  0x00001157 call  0x00002a4d 
+ 00009219  0x00001158 enable  0x0000002f 
+ 00009220  0x00001159 call  0x000024f6 
+ 00009221  0x0000115a branch  0x0000240d , 0x00000018 
+ 00009222  0x0000115b call  0x000028f9 
+ 00009223  0x0000115c call  0x00002455 
+ 00009224  0x0000115d nbranch  0x000023fb , 0x00000034 
+ 00009225  0x0000115e rtnmark0  0x00000004 
+ 00009226  0x0000115f jam  0x00000034 , 0x0000007c 
+ 00009227  0x00001160 set1  0x00000003 , 0x00000000 
+ 00009228  0x00001161 rtn 
+ 00009229  0x00001163 enable  0x00000030 
+ 00009230  0x00001164 call  0x00002435 
+ 00009231  0x00001165 call  0x000028a4 
+ 00009232  0x00001167 bpatch  0x00000042 , 0x00004008 
+ 00009233  0x00001168 call  0x000022f2 
+ 00009234  0x00001169 branch  0x00002419 , 0x00000018 
+ 00009235  0x0000116a call  0x00002455 
+ 00009236  0x0000116b nbranch  0x00002410 , 0x00000034 
+ 00009237  0x0000116c disable  0x00000030 
+ 00009238  0x0000116d deposit  0x00000028 
+ 00009239  0x0000116e store  0x00000004 , 0x000040ca 
+ 00009240  0x0000116f rtn 
+ 00009241  0x00001171 enable  0x00000029 
+ 00009242  0x00001172 bmark0  0x00000004 , 0x0000241f 
+ 00009243  0x00001173 set0  0x00000004 , 0x00000000 
+ 00009244  0x00001174 jam  0x00000003 , 0x0000007c 
+ 00009245  0x00001175 jam  0x00000033 , 0x0000007d 
+ 00009246  0x00001176 call  0x000062f8 
+ 00009247  0x00001178 deposit  0x00000004 
+ 00009248  0x00001179 store  0x00000001 , 0x00000077 
+ 00009249  0x0000117a force  0x00000000 , 0x0000003f 
+ 00009250  0x0000117b store  0x00000006 , 0x00000038 
+ 00009251  0x0000117c fetch  0x00000001 , 0x00000031 
+ 00009252  0x0000117d set1  0x00000001 , 0x0000003f 
+ 00009253  0x0000117e store  0x00000001 , 0x00000031 
+ 00009254  0x0000117f call  0x00002a88 
+ 00009255  0x00001180 disable  0x00000029 
+ 00009256  0x00001181 enable  0x00000028 
+ 00009257  0x00001182 rtn 
+ 00009258  0x00001187 bpatch  0x00000043 , 0x00004008 
+ 00009259  0x00001188 disable  0x0000002d 
+ 00009260  0x00001189 set0  0x00000005 , 0x00000000 
+ 00009261  0x0000118a set0  0x0000000a , 0x00000000 
+ 00009262  0x0000118b set0  0x00000010 , 0x00000000 
+ 00009263  0x0000118c set0  0x0000000f , 0x00000000 
+ 00009264  0x0000118d fetch  0x00000001 , 0x00000047 
+ 00009265  0x0000118e set0  0x00000005 , 0x0000003f 
+ 00009266  0x0000118f set1  0x00000004 , 0x0000003f 
+ 00009267  0x00001190 store  0x00000001 , 0x00000047 
+ 00009268  0x00001191 rtn 
+ 00009269  0x00001194 bpatch  0x00000044 , 0x00004008 
+ 00009270  0x00001195 jam  0x00000020 , 0x00000011 
+ 00009271  0x00001196 jam  0x00000050 , 0x00000047 
+ 00009272  0x00001197 fetch  0x00000002 , 0x000040bf 
+ 00009273  0x00001198 store  0x00000002 , 0x0000003e 
+ 00009274  0x00001199 deposit  0x00000022 
+ 00009275  0x0000119a store  0x00000004 , 0x000040ca 
+ 00009276  0x0000119b rtn  0x00000030 
+ 00009277  0x0000119c deposit  0x00000028 
+ 00009278  0x0000119d store  0x00000004 , 0x000040ca 
+ 00009279  0x0000119e rtn 
+ 00009280  0x000011a1 bpatch  0x00000045 , 0x00004008 
+ 00009281  0x000011a2 call  0x00005d04 
+ 00009282  0x000011a3 call  0x00002459 
+ 00009283  0x000011a4 store  0x00000001 , 0x00000046 
+ 00009284  0x000011a5 setarg  0x00000000 
+ 00009285  0x000011a6 store  0x00000002 , 0x0000025d 
+ 00009286  0x000011a7 setarg  0x00001c80 
+ 00009287  0x000011a8 store  0x00000002 , 0x00000051 
+ 00009288  0x000011a9 fetch  0x00000001 , 0x00000030 
+ 00009289  0x000011aa set1  0x00000000 , 0x0000003f 
+ 00009290  0x000011ab store  0x00000001 , 0x00000030 
+ 00009291  0x000011ac jam  0x00000000 , 0x0000004b 
+ 00009292  0x000011ad jam  0x00000000 , 0x0000004c 
+ 00009293  0x000011ae jam  0x00000000 , 0x000000a0 
+ 00009294  0x000011af branch  0x00002a88 
+ 00009295  0x000011b3 bpatch  0x00000046 , 0x00004008 
+ 00009296  0x000011b4 force  0x00000000 , 0x0000003f 
+ 00009297  0x000011b5 store  0x00000008 , 0x000041be 
+ 00009298  0x000011b6 istore  0x00000008 , 0x00000005 
+ 00009299  0x000011b7 call  0x000021c5 
+ 00009300  0x000011b8 branch  0x00002254 
+ 00009301  0x000011bb fetch  0x00000001 , 0x00000011 
+ 00009302  0x000011bc increase  0xffffffff , 0x0000003f 
+ 00009303  0x000011bd store  0x00000001 , 0x00000011 
+ 00009304  0x000011be rtn 
+ 00009305  0x000011c1 fetch  0x00000001 , 0x000040cf 
+ 00009306  0x000011c2 increase  0x00000001 , 0x0000003f 
+ 00009307  0x000011c3 store  0x00000001 , 0x000040cf 
+ 00009308  0x000011c4 rtn 
+ 00009309  0x000011c8 bpatch  0x00000047 , 0x00004008 
+ 00009310  0x000011c9 fetch  0x00000001 , 0x000041ce 
+ 00009311  0x000011ca beq  0x00000003 , 0x00002462 
+ 00009312  0x000011cb fetch  0x00000001 , 0x00000048 
+ 00009313  0x000011cc bne  0x00000001 , 0x00002466 
+ 00009314  0x000011ce call  0x00004d06 
+ 00009315  0x000011cf nbranch  0x00002466 , 0x00000005 
+ 00009316  0x000011d0 call  0x000021a4 
+ 00009317  0x000011d1 jam  0x00000000 , 0x000041ce 
+ 00009318  0x000011d3 bpatch  0x00000048 , 0x00004009 
+ 00009319  0x000011d4 call  0x000033af 
+ 00009320  0x000011d5 call  0x000026e9 
+ 00009321  0x000011d6 jam  0x00000002 , 0x00000a99 
+ 00009322  0x000011d7 call  0x00007d86 
+ 00009323  0x000011d8 call  0x00005cf7 
+ 00009324  0x000011d9 call  0x00004d6b 
+ 00009325  0x000011da call  0x0000757d 
+ 00009326  0x000011db fetch  0x00000001 , 0x00000030 
+ 00009327  0x000011dc set0  0x00000000 
+ 00009328  0x000011dd store  0x00000001 , 0x00000030 
+ 00009329  0x000011de jam  0x00000000 , 0x00004681 
+ 00009330  0x000011e0 fetch  0x00000001 , 0x0000004c 
+ 00009331  0x000011e1 compare  0x00000000 , 0x0000003f , 0x000000c0 
+ 00009332  0x000011e2 branch  0x00002476 , 0x00000001 
+ 00009333  0x000011e3 set0  0x00000001 , 0x00000000 
+ 00009334  0x000011e5 fetch  0x00000001 , 0x00000047 
+ 00009335  0x000011e6 bbit0  0x00000003 , 0x00002478 
+ 00009336  0x000011e8 fetch  0x00000001 , 0x0000004b 
+ 00009337  0x000011e9 rtnbit0  0x00000006 
+ 00009338  0x000011ea set0  0x00000002 , 0x00000000 
+ 00009339  0x000011eb rtn 
+ 00009340  0x000011ee bpatch  0x00000049 , 0x00004009 
+ 00009341  0x000011ef fetch  0x00000001 , 0x00000174 
+ 00009342  0x000011f0 rtn  0x00000034 
+ 00009343  0x000011f1 icopy  0x00000004 
+ 00009344  0x000011f2 call  0x00002514 
+ 00009345  0x000011f3 nrtn  0x0000002d 
+ 00009346  0x000011f4 force  0x00000000 , 0x00000001 
+ 00009347  0x000011f5 call  0x00002757 
+ 00009348  0x000011f6 deposit  0x00000004 
+ 00009349  0x000011f7 store  0x00000001 , 0x00000077 
+ 00009350  0x000011f8 force  0x00000000 , 0x0000003f 
+ 00009351  0x000011f9 store  0x00000001 , 0x00000174 
+ 00009352  0x000011fa rtn 
+ 00009353  0x00001201 bpatch  0x0000004a , 0x00004009 
+ 00009354  0x00001202 fetch  0x00000001 , 0x00000030 
+ 00009355  0x00001203 bbit0  0x00000002 , 0x00002496 
+ 00009356  0x00001204 force  0x00000007 , 0x00000001 
+ 00009357  0x00001205 bmark0  0x00000007 , 0x00002495 
+ 00009358  0x00001206 call  0x00002725 
+ 00009359  0x00001207 nbranch  0x00002496 , 0x00000001 
+ 00009360  0x00001208 branch  0x00002496 , 0x0000002e 
+ 00009361  0x00001209 call  0x000024c1 
+ 00009362  0x0000120a setarg  0x00000002 
+ 00009363  0x0000120b store  0x00000002 , 0x000040c8 
+ 00009364  0x0000120c rtn 
+ 00009365  0x0000120e nrtn  0x0000002e 
+ 00009366  0x00001210 bpatch  0x0000004b , 0x00004009 
+ 00009367  0x00001211 call  0x00002243 
+ 00009368  0x00001212 nbranch  0x000024a7 , 0x00000005 
+ 00009369  0x00001213 fetch  0x00000001 , 0x00000047 
+ 00009370  0x00001214 bbit0  0x00000003 , 0x000024b0 
+ 00009371  0x00001216 bmark1  0x00000005 , 0x000024b4 
+ 00009372  0x00001217 fetch  0x00000001 , 0x0000017f 
+ 00009373  0x00001218 bbit1  0x00000006 , 0x000024ba 
+ 00009374  0x00001219 fetch  0x00000002 , 0x000040c8 
+ 00009375  0x0000121a increase  0xffffffff , 0x0000003f 
+ 00009376  0x0000121b store  0x00000002 , 0x000040c8 
+ 00009377  0x0000121c branch  0x000024a5 , 0x00000034 
+ 00009378  0x0000121d fetch  0x00000001 , 0x000040c5 
+ 00009379  0x0000121e iforce  0x00000001 
+ 00009380  0x0000121f rtn 
+ 00009381  0x00001222 bpatch  0x0000004c , 0x00004009 
+ 00009382  0x00001223 call  0x00002687 
+ 00009383  0x00001225 call  0x00002725 
+ 00009384  0x00001226 branch  0x000024b0 , 0x00000001 
+ 00009385  0x00001227 call  0x0000600a 
+ 00009386  0x00001228 branch  0x000024be , 0x00000028 
+ 00009387  0x00001229 fetch  0x00000001 , 0x0000004b 
+ 00009388  0x0000122a bbit1  0x00000006 , 0x000024c0 
+ 00009389  0x0000122b bmark1  0x00000005 , 0x000024b4 
+ 00009390  0x0000122c fetch  0x00000001 , 0x0000017f 
+ 00009391  0x0000122d bbit1  0x00000006 , 0x000024ba 
+ 00009392  0x0000122f force  0x00000001 , 0x00000001 
+ 00009393  0x00001230 rtn  0x00000029 
+ 00009394  0x00001231 force  0x00000000 , 0x00000001 
+ 00009395  0x00001232 rtn 
+ 00009396  0x00001234 bpatch  0x0000004d , 0x00004009 
+ 00009397  0x00001235 fetch  0x00000001 , 0x00000019 
+ 00009398  0x00001236 iforce  0x00000001 
+ 00009399  0x00001237 rtnne  0x00000001 
+ 00009400  0x00001238 force  0x00000000 , 0x00000001 
+ 00009401  0x00001239 rtn 
+ 00009402  0x0000123b fetch  0x00000001 , 0x00000158 
+ 00009403  0x0000123c and  0x0000003f , 0x0000000f , 0x00000001 
+ 00009404  0x0000123d set1  0x00000005 , 0x00000000 
+ 00009405  0x0000123e rtn 
+ 00009406  0x00001240 force  0x00000013 , 0x00000001 
+ 00009407  0x00001241 branch  0x000024c1 
+ 00009408  0x00001243 call  0x000024ca 
+ 00009409  0x00001246 bpatch  0x0000004e , 0x00004009 
+ 00009410  0x00001247 fetcht  0x00000001 , 0x00000047 
+ 00009411  0x00001248 set1  0x00000003 , 0x00000002 
+ 00009412  0x00001249 storet  0x00000001 , 0x00000047 
+ 00009413  0x0000124a deposit  0x00000001 
+ 00009414  0x0000124b store  0x00000001 , 0x000040c5 
+ 00009415  0x0000124c setarg  0x0000ffff 
+ 00009416  0x0000124d store  0x00000002 , 0x000040c8 
+ 00009417  0x0000124e rtn 
+ 00009418  0x00001251 bpatch  0x0000004f , 0x00004009 
+ 00009419  0x00001252 fetch  0x00000001 , 0x0000004c 
+ 00009420  0x00001253 isolate1  0x00000005 , 0x0000003f 
+ 00009421  0x00001254 fetch  0x00000002 , 0x000041dc 
+ 00009422  0x00001255 branch  0x000024e0 , 0x00000001 
+ 00009423  0x00001256 force  0x00000003 , 0x00000001 
+ 00009424  0x00001257 sub  0x0000003f , 0x00000011 , 0x0000003e 
+ 00009425  0x00001258 rtn  0x00000002 
+ 00009426  0x00001259 force  0x00000004 , 0x00000001 
+ 00009427  0x0000125a sub  0x0000003f , 0x0000001b , 0x0000003e 
+ 00009428  0x0000125b rtn  0x00000002 
+ 00009429  0x0000125c force  0x0000000a , 0x00000001 
+ 00009430  0x0000125d sub  0x0000003f , 0x00000079 , 0x0000003e 
+ 00009431  0x0000125e rtn  0x00000002 
+ 00009432  0x0000125f force  0x0000000b , 0x00000001 
+ 00009433  0x00001260 sub  0x0000003f , 0x000000b7 , 0x0000003e 
+ 00009434  0x00001261 rtn  0x00000002 
+ 00009435  0x00001262 force  0x0000000e , 0x00000001 
+ 00009436  0x00001263 sub  0x0000003f , 0x000000e0 , 0x0000003e 
+ 00009437  0x00001264 rtn  0x00000002 
+ 00009438  0x00001265 force  0x0000000f , 0x00000001 
+ 00009439  0x00001266 rtn 
+ 00009440  0x00001268 force  0x00000003 , 0x00000001 
+ 00009441  0x00001269 sub  0x0000003f , 0x00000011 , 0x0000003e 
+ 00009442  0x0000126a rtn  0x00000002 
+ 00009443  0x0000126b force  0x00000004 , 0x00000001 
+ 00009444  0x0000126c sub  0x0000003f , 0x00000036 , 0x0000003e 
+ 00009445  0x0000126d rtn  0x00000002 
+ 00009446  0x0000126e force  0x0000000a , 0x00000001 
+ 00009447  0x0000126f arg  0x0000016f , 0x00000002 
+ 00009448  0x00001270 isub  0x00000002 , 0x0000003e 
+ 00009449  0x00001271 nrtn  0x00000002 
+ 00009450  0x00001272 force  0x0000000e , 0x00000001 
+ 00009451  0x00001273 arg  0x000002a7 , 0x00000002 
+ 00009452  0x00001274 isub  0x00000002 , 0x0000003e 
+ 00009453  0x00001275 nrtn  0x00000002 
+ 00009454  0x00001276 force  0x0000000f , 0x00000001 
+ 00009455  0x00001277 rtn 
+ 00009456  0x00001281 fetch  0x00000001 , 0x00000030 
+ 00009457  0x00001282 bbit0  0x00000001 , 0x000024f5 
+ 00009458  0x00001283 fetch  0x00000002 , 0x00000032 
+ 00009459  0x00001284 branch  0x000024f5 , 0x00000034 
+ 00009460  0x00001285 nbranch  0x000024f7 , 0x0000002e 
+ 00009461  0x00001287 call  0x00002a4f 
+ 00009462  0x00001289 add  0x00000028 , 0x00000001 , 0x00000021 
+ 00009463  0x0000128b enable  0x00000010 
+ 00009464  0x0000128c fetch  0x00000002 , 0x0000003e 
+ 00009465  0x0000128d rshift  0x0000003f , 0x0000003f 
+ 00009466  0x0000128e arg  0x00000500 , 0x00000002 
+ 00009467  0x0000128f iadd  0x00000002 , 0x0000003f 
+ 00009468  0x00001290 call  0x00002a24 
+ 00009469  0x00001291 call  0x000028ea 
+ 00009470  0x00001292 force  0x00000003 , 0x00000024 
+ 00009471  0x00001293 call  0x000028cc 
+ 00009472  0x00001294 call  0x0000242a 
+ 00009473  0x00001295 call  0x000029f1 
+ 00009474  0x00001296 bpatch  0x00000050 , 0x0000400a 
+ 00009475  0x00001297 fetch  0x00000002 , 0x0000003e 
+ 00009476  0x00001298 rshift  0x0000003f , 0x0000003f 
+ 00009477  0x00001299 call  0x00002a24 
+ 00009478  0x0000129a call  0x000029eb 
+ 00009479  0x0000129b enable  0x0000000d 
+ 00009480  0x0000129c fetch  0x00000002 , 0x0000003e 
+ 00009481  0x0000129d arg  0x000003bb , 0x00000002 
+ 00009482  0x0000129e iadd  0x00000002 , 0x0000001b 
+ 00009483  0x0000129f correlate  0x0000003e , 0x00000003 
+ 00009484  0x000012a0 copy  0x0000001a , 0x00000002 
+ 00009485  0x000012a1 storet  0x00000006 , 0x0000009a 
+ 00009486  0x000012a2 disable  0x0000000d 
+ 00009487  0x000012a3 nrtn  0x00000018 
+ 00009488  0x000012a4 arg  0x000003bb , 0x00000029 
+ 00009489  0x000012a5 copy  0x00000021 , 0x00000028 
+ 00009490  0x000012a6 branch  0x00002b05 , 0x0000002b 
+ 00009491  0x000012a7 rtn 
+ 00009492  0x000012ab bpatch  0x00000051 , 0x0000400a 
+ 00009493  0x000012ac call  0x000024f0 
+ 00009494  0x000012ad nbranch  0x000028f9 , 0x00000018 
+ 00009495  0x000012ae call  0x000029bb 
+ 00009496  0x000012af bmark0  0x00000011 , 0x0000251c 
+ 00009497  0x000012b0 fetch  0x00000002 , 0x000000f6 
+ 00009498  0x000012b1 increase  0x00000001 , 0x0000003f 
+ 00009499  0x000012b2 store  0x00000002 , 0x000000f6 
+ 00009500  0x000012b4 rshift  0x00000021 , 0x00000002 
+ 00009501  0x000012b5 or  0x00000002 , 0x00000040 , 0x0000000e 
+ 00009502  0x000012b7 bpatch  0x00000052 , 0x0000400a 
+ 00009503  0x000012b8 enable  0x00000007 
+ 00009504  0x000012b9 enable  0x0000000a 
+ 00009505  0x000012ba enable  0x0000000b 
+ 00009506  0x000012bb parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009507  0x000012bc rshift8  0x0000000c , 0x0000003f 
+ 00009508  0x000012bd store  0x00000001 , 0x0000015d 
+ 00009509  0x000012be parse  0x00000003 , 0x00000000 , 0x00000004 
+ 00009510  0x000012bf inject  0x00000000 , 0x00000007 
+ 00009511  0x000012c0 copy  0x0000000c , 0x0000003f 
+ 00009512  0x000012c1 store  0x00000001 , 0x00000019 
+ 00009513  0x000012c2 parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009514  0x000012c3 rshift8  0x0000000c , 0x0000003f 
+ 00009515  0x000012c4 store  0x00000001 , 0x0000015e 
+ 00009516  0x000012c5 fetch  0x00000001 , 0x00000019 
+ 00009517  0x000012c6 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00009518  0x000012c7 branch  0x00002533 , 0x00000002 
+ 00009519  0x000012c8 beq  0x00000007 , 0x00002533 
+ 00009520  0x000012c9 fetch  0x00000001 , 0x0000004c 
+ 00009521  0x000012ca isolate1  0x00000005 , 0x0000003f 
+ 00009522  0x000012cb setflag  0x00000001 , 0x00000001 , 0x00000015 
+ 00009523  0x000012cd bpatch  0x00000053 , 0x0000400a 
+ 00009524  0x000012ce parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00009525  0x000012cf disable  0x0000000b 
+ 00009526  0x000012d0 disable  0x0000000a 
+ 00009527  0x000012d1 branch  0x00002631 , 0x00000006 
+ 00009528  0x000012d2 bmark0  0x00000011 , 0x0000253c 
+ 00009529  0x000012d3 fetch  0x00000002 , 0x000000f8 
+ 00009530  0x000012d4 increase  0x00000001 , 0x0000003f 
+ 00009531  0x000012d5 store  0x00000002 , 0x000000f8 
+ 00009532  0x000012d7 bpatch  0x00000054 , 0x0000400a 
+ 00009533  0x000012d8 fetch  0x00000001 , 0x0000015d 
+ 00009534  0x000012d9 compare  0x00000000 , 0x0000003f , 0x00000007 
+ 00009535  0x000012da setflag  0x00000001 , 0x0000000a , 0x00000000 
+ 00009536  0x000012db branch  0x0000254c , 0x00000001 
+ 00009537  0x000012dc icompare  0x00000007 , 0x00000004 
+ 00009538  0x000012dd branch  0x0000254b , 0x00000001 
+ 00009539  0x000012de bmark0  0x00000007 , 0x0000264d 
+ 00009540  0x000012df fetcht  0x00000001 , 0x000000b0 
+ 00009541  0x000012e0 icompare  0x00000007 , 0x00000002 
+ 00009542  0x000012e1 nbranch  0x0000264d , 0x00000001 
+ 00009543  0x000012e2 fetch  0x00000001 , 0x00000047 
+ 00009544  0x000012e3 set0  0x00000005 , 0x0000003f 
+ 00009545  0x000012e4 set1  0x00000004 , 0x0000003f 
+ 00009546  0x000012e5 store  0x00000001 , 0x00000047 
+ 00009547  0x000012e7 enable  0x0000002d 
+ 00009548  0x000012e9 bpatch  0x00000055 , 0x0000400a 
+ 00009549  0x000012ea fetch  0x00000001 , 0x00000019 
+ 00009550  0x000012eb icopy  0x00000001 
+ 00009551  0x000012ec bmark1  0x0000000a , 0x0000255b 
+ 00009552  0x000012ed fetcht  0x00000001 , 0x0000015e 
+ 00009553  0x000012ee fetch  0x00000001 , 0x00000047 
+ 00009554  0x000012ef set0  0x00000000 , 0x0000003f 
+ 00009555  0x000012f0 isolate1  0x00000000 , 0x00000002 
+ 00009556  0x000012f1 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00009557  0x000012f2 isolate1  0x00000001 , 0x00000002 
+ 00009558  0x000012f3 setflag  0x00000001 , 0x00000001 , 0x0000003f 
+ 00009559  0x000012f4 store  0x00000001 , 0x00000047 
+ 00009560  0x000012f5 isolate0  0x00000001 , 0x00000002 
+ 00009561  0x000012f6 branch  0x0000255b , 0x00000001 
+ 00009562  0x000012f7 call  0x00002687 
+ 00009563  0x000012f9 bpatch  0x00000056 , 0x0000400a 
+ 00009564  0x000012fa arg  0x00000000 , 0x00000002 
+ 00009565  0x000012fb call  0x00002a1c 
+ 00009566  0x000012fc and  0x00000001 , 0x0000000f , 0x0000003f 
+ 00009567  0x000012fd beq  0x00000001 , 0x00002587 
+ 00009568  0x000012fe beq  0x00000000 , 0x0000264d 
+ 00009569  0x000012ff beq  0x00000002 , 0x00002659 
+ 00009570  0x00001300 fetcht  0x00000001 , 0x0000015e 
+ 00009571  0x00001301 fetch  0x00000001 , 0x00000047 
+ 00009572  0x00001302 icompare  0x00000004 , 0x00000002 
+ 00009573  0x00001303 nbranch  0x00002569 , 0x00000001 
+ 00009574  0x00001304 bmark0  0x0000000a , 0x00002568 
+ 00009575  0x00001305 bbit0  0x00000007 , 0x00002569 
+ 00009576  0x00001307 set1  0x0000000f , 0x00000000 
+ 00009577  0x00001309 bpatch  0x00000057 , 0x0000400a 
+ 00009578  0x0000130a deposit  0x00000001 
+ 00009579  0x0000130b beq  0x00000003 , 0x00002589 
+ 00009580  0x0000130c beq  0x00000004 , 0x0000258d 
+ 00009581  0x0000130d beq  0x00000007 , 0x00002578 
+ 00009582  0x0000130e beq  0x00000008 , 0x0000258c 
+ 00009583  0x0000130f arg  0x00000004 , 0x00000002 
+ 00009584  0x00001310 call  0x00002a1c 
+ 00009585  0x00001311 beq  0x0000000a , 0x00002588 
+ 00009586  0x00001312 beq  0x0000000b , 0x0000258b 
+ 00009587  0x00001313 arg  0x00000008 , 0x00000002 
+ 00009588  0x00001314 call  0x00002a1c 
+ 00009589  0x00001315 beq  0x0000000e , 0x00002588 
+ 00009590  0x00001316 beq  0x0000000f , 0x0000258b 
+ 00009591  0x00001317 rtn 
+ 00009592  0x0000131b bpatch  0x00000058 , 0x0000400b 
+ 00009593  0x0000131c enable  0x0000000d 
+ 00009594  0x0000131d enable  0x00000009 
+ 00009595  0x0000131e enable  0x0000000e 
+ 00009596  0x0000131f arg  0x000000d1 , 0x00000005 
+ 00009597  0x00001320 force  0x0000001e , 0x00000039 
+ 00009598  0x00001322 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00009599  0x00001323 rshift3  0x0000000c , 0x0000003f 
+ 00009600  0x00001324 istore  0x00000001 , 0x00000005 
+ 00009601  0x00001325 loop  0x0000257e 
+ 00009602  0x00001326 bmark0  0x00000007 , 0x0000264d 
+ 00009603  0x00001327 parse  0x00000003 , 0x00000000 , 0x00000010 
+ 00009604  0x00001328 nsetflag  0x00000006 , 0x00000008 , 0x00000000 
+ 00009605  0x00001329 branch  0x0000263d , 0x00000006 
+ 00009606  0x0000132a branch  0x00002620 
+ 00009607  0x0000132e branch  0x0000264d 
+ 00009608  0x00001332 set1  0x00000010 , 0x00000000 
+ 00009609  0x00001334 enable  0x0000000c 
+ 00009610  0x00001335 branch  0x0000258e 
+ 00009611  0x00001339 set1  0x00000010 , 0x00000000 
+ 00009612  0x0000133b set1  0x00000002 , 0x00000015 
+ 00009613  0x0000133d enable  0x0000000d 
+ 00009614  0x0000133f bpatch  0x00000059 , 0x0000400b 
+ 00009615  0x00001340 bmark1  0x00000001 , 0x0000264d 
+ 00009616  0x00001341 isolate0  0x00000001 , 0x00000015 
+ 00009617  0x00001342 branch  0x0000259a , 0x00000001 
+ 00009618  0x00001343 disable  0x00000007 
+ 00009619  0x00001344 enable  0x0000000d 
+ 00009620  0x00001345 disable  0x0000000c 
+ 00009621  0x00001346 add  0x00000022 , 0x00000002 , 0x0000000b 
+ 00009622  0x00001347 correlate  0x00000022 , 0x00000026 
+ 00009623  0x00001348 nbranch  0x0000263d , 0x00000018 
+ 00009624  0x00001349 set1  0x00000010 , 0x00000000 
+ 00009625  0x0000134a enable  0x00000007 
+ 00009626  0x0000134c bpatch  0x0000005a , 0x0000400b 
+ 00009627  0x0000134d enable  0x0000000e 
+ 00009628  0x0000134e enable  0x00000009 
+ 00009629  0x0000134f parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009630  0x00001350 rshift8  0x0000000c , 0x0000003f 
+ 00009631  0x00001351 store  0x00000001 , 0x00000180 
+ 00009632  0x00001352 parse  0x00000003 , 0x00000000 , 0x00000005 
+ 00009633  0x00001353 bmark1  0x00000010 , 0x000025a5 
+ 00009634  0x00001354 rshift3  0x0000000c , 0x00000039 
+ 00009635  0x00001355 rshift3  0x00000039 , 0x00000039 
+ 00009636  0x00001356 branch  0x000025a8 
+ 00009637  0x00001358 parse  0x00000003 , 0x00000000 , 0x00000005 
+ 00009638  0x00001359 rshift  0x0000000c , 0x00000039 
+ 00009639  0x0000135a parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009640  0x0000135c bpatch  0x0000005b , 0x0000400b 
+ 00009641  0x0000135d deposit  0x00000039 
+ 00009642  0x0000135e store  0x00000002 , 0x0000015f 
+ 00009643  0x0000135f branch  0x000025e8 , 0x00000034 
+ 00009644  0x00001360 isub  0x00000035 , 0x0000003e 
+ 00009645  0x00001361 branch  0x0000263d , 0x00000002 
+ 00009646  0x00001362 bpatch  0x0000005c , 0x0000400b 
+ 00009647  0x00001363 set0  0x00000000 , 0x00000000 
+ 00009648  0x00001364 fetch  0x00000001 , 0x00000180 
+ 00009649  0x00001365 and_into  0x00000003 , 0x0000003f 
+ 00009650  0x00001366 arg  0x00000551 , 0x00000005 
+ 00009651  0x00001367 beq  0x00000003 , 0x000025ba 
+ 00009652  0x00001368 bmark1  0x00000011 , 0x000025e4 
+ 00009653  0x0000136a fetch  0x00000001 , 0x00000180 
+ 00009654  0x0000136b and_into  0x00000003 , 0x0000003f 
+ 00009655  0x0000136c beq  0x00000002 , 0x000025bf 
+ 00009656  0x0000136d beq  0x00000001 , 0x000025d3 
+ 00009657  0x0000136e branch  0x0000263d 
+ 00009658  0x00001371 fetch  0x00000002 , 0x0000015f 
+ 00009659  0x00001372 sub  0x0000003f , 0x00000070 , 0x0000003e 
+ 00009660  0x00001373 nbranch  0x0000263d , 0x00000002 
+ 00009661  0x00001374 bmark1  0x0000000f , 0x00002620 
+ 00009662  0x00001375 branch  0x000025e4 
+ 00009663  0x00001379 bpatch  0x0000005d , 0x0000400b 
+ 00009664  0x0000137a bmark1  0x0000000f , 0x00002620 
+ 00009665  0x0000137b fetch  0x00000002 , 0x0000015f 
+ 00009666  0x0000137c arg  0x000002e0 , 0x00000002 
+ 00009667  0x0000137d isub  0x00000002 , 0x0000003e 
+ 00009668  0x0000137e branch  0x0000263d , 0x00000002 
+ 00009669  0x0000137f fetch  0x00000001 , 0x00000263 
+ 00009670  0x00001380 bbit0  0x00000000 , 0x000025c9 
+ 00009671  0x00001381 bbit0  0x00000001 , 0x000025ce 
+ 00009672  0x00001382 branch  0x0000264d 
+ 00009673  0x00001384 jam  0x00000001 , 0x00000261 
+ 00009674  0x00001385 fetch  0x00000002 , 0x0000025d 
+ 00009675  0x00001386 bne  0x00000000 , 0x0000264d 
+ 00009676  0x00001387 arg  0x00001000 , 0x00000005 
+ 00009677  0x00001388 branch  0x000025e4 
+ 00009678  0x0000138a jam  0x00000002 , 0x00000261 
+ 00009679  0x0000138b fetch  0x00000002 , 0x0000025f 
+ 00009680  0x0000138c bne  0x00000000 , 0x0000264d 
+ 00009681  0x0000138d arg  0x00001400 , 0x00000005 
+ 00009682  0x0000138e branch  0x000025e4 
+ 00009683  0x00001391 bpatch  0x0000005e , 0x0000400b 
+ 00009684  0x00001392 bmark1  0x0000000f , 0x00002620 
+ 00009685  0x00001393 fetch  0x00000002 , 0x0000015f 
+ 00009686  0x00001394 arg  0x000002e0 , 0x00000002 
+ 00009687  0x00001395 isub  0x00000002 , 0x0000003e 
+ 00009688  0x00001396 branch  0x0000263d , 0x00000002 
+ 00009689  0x00001397 fetch  0x00000001 , 0x00000261 
+ 00009690  0x00001398 beq  0x00000001 , 0x000025dd 
+ 00009691  0x00001399 beq  0x00000002 , 0x000025e1 
+ 00009692  0x0000139a branch  0x0000264d 
+ 00009693  0x0000139c arg  0x00001000 , 0x00000005 
+ 00009694  0x0000139d fetch  0x00000002 , 0x0000025d 
+ 00009695  0x0000139e iadd  0x00000005 , 0x00000005 
+ 00009696  0x0000139f branch  0x000025e4 
+ 00009697  0x000013a1 arg  0x00001400 , 0x00000005 
+ 00009698  0x000013a2 fetch  0x00000002 , 0x0000025f 
+ 00009699  0x000013a3 iadd  0x00000005 , 0x00000005 
+ 00009700  0x000013a5 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00009701  0x000013a6 rshift3  0x0000000c , 0x0000003f 
+ 00009702  0x000013a7 istore  0x00000001 , 0x00000005 
+ 00009703  0x000013a8 loop  0x000025e4 
+ 00009704  0x000013aa bpatch  0x0000005f , 0x0000400b 
+ 00009705  0x000013ab parse  0x00000003 , 0x00000000 , 0x00000010 
+ 00009706  0x000013ac branch  0x00002637 , 0x00000006 
+ 00009707  0x000013ad fetch  0x00000001 , 0x00004363 
+ 00009708  0x000013ae beq  0x00000001 , 0x0000264d 
+ 00009709  0x000013af bmark1  0x00000011 , 0x0000260d 
+ 00009710  0x000013b0 bmark1  0x0000000f , 0x0000264a 
+ 00009711  0x000013b1 fetch  0x00000001 , 0x00000180 
+ 00009712  0x000013b2 compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00009713  0x000013b3 branch  0x0000260d , 0x00000001 
+ 00009714  0x000013b4 fetch  0x00000002 , 0x0000015f 
+ 00009715  0x000013b5 branch  0x0000260d , 0x00000034 
+ 00009716  0x000013b6 bpatch  0x00000060 , 0x0000400c 
+ 00009717  0x000013b7 fetch  0x00000001 , 0x00000261 
+ 00009718  0x000013b8 beq  0x00000001 , 0x000025f9 
+ 00009719  0x000013b9 beq  0x00000002 , 0x00002603 
+ 00009720  0x000013ba branch  0x00002a8c 
+ 00009721  0x000013bc fetch  0x00000002 , 0x0000025d 
+ 00009722  0x000013bd fetcht  0x00000002 , 0x0000015f 
+ 00009723  0x000013be iadd  0x00000002 , 0x0000003f 
+ 00009724  0x000013bf store  0x00000002 , 0x0000025d 
+ 00009725  0x000013c0 beq  0x00000000 , 0x00002a8c 
+ 00009726  0x000013c1 fetcht  0x00000002 , 0x00001000 
+ 00009727  0x000013c2 increase  0x00000004 , 0x00000002 
+ 00009728  0x000013c3 isub  0x00000002 , 0x0000003e 
+ 00009729  0x000013c4 call  0x00002747 , 0x00000005 
+ 00009730  0x000013c5 branch  0x0000260d 
+ 00009731  0x000013c7 fetch  0x00000002 , 0x0000025f 
+ 00009732  0x000013c8 fetcht  0x00000002 , 0x0000015f 
+ 00009733  0x000013c9 iadd  0x00000002 , 0x0000003f 
+ 00009734  0x000013ca store  0x00000002 , 0x0000025f 
+ 00009735  0x000013cb beq  0x00000000 , 0x00002a8c 
+ 00009736  0x000013cc fetcht  0x00000002 , 0x00001400 
+ 00009737  0x000013cd add  0x00000002 , 0x00000004 , 0x00000002 
+ 00009738  0x000013ce isub  0x00000002 , 0x0000003e 
+ 00009739  0x000013cf call  0x0000274b , 0x00000005 
+ 00009740  0x000013d0 branch  0x0000260d 
+ 00009741  0x000013d2 bpatch  0x00000061 , 0x0000400c 
+ 00009742  0x000013d3 fetcht  0x00000001 , 0x0000004c 
+ 00009743  0x000013d4 fetch  0x00000001 , 0x00000180 
+ 00009744  0x000013d5 compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00009745  0x000013d6 setflag  0x00000001 , 0x00000006 , 0x00000002 
+ 00009746  0x000013d7 nsetflag  0x00000001 , 0x00000007 , 0x00000002 
+ 00009747  0x000013d8 storet  0x00000001 , 0x0000004c 
+ 00009748  0x000013d9 nbranch  0x00002616 , 0x00000001 
+ 00009749  0x000013da set1  0x00000001 , 0x00000000 
+ 00009750  0x000013dc bmark0  0x00000011 , 0x00002620 
+ 00009751  0x000013dd isolate1  0x00000006 , 0x00000002 
+ 00009752  0x000013de branch  0x00002620 , 0x00000001 
+ 00009753  0x000013df fetch  0x00000002 , 0x000000fa 
+ 00009754  0x000013e0 increase  0x00000001 , 0x0000003f 
+ 00009755  0x000013e1 store  0x00000002 , 0x000000fa 
+ 00009756  0x000013e2 set1  0x00000005 , 0x00000000 
+ 00009757  0x000013e3 set0  0x00000007 , 0x00000002 
+ 00009758  0x000013e4 set0  0x00000001 , 0x00000000 
+ 00009759  0x000013e5 storet  0x00000001 , 0x0000004c 
+ 00009760  0x000013e7 bpatch  0x00000062 , 0x0000400c 
+ 00009761  0x000013e8 fetcht  0x00000001 , 0x0000015e 
+ 00009762  0x000013e9 fetch  0x00000001 , 0x00000047 
+ 00009763  0x000013ea set1  0x00000005 , 0x0000003f 
+ 00009764  0x000013eb isolate1  0x00000002 , 0x00000002 
+ 00009765  0x000013ec setflag  0x00000001 , 0x00000002 , 0x0000003f 
+ 00009766  0x000013ed isolate1  0x0000000a , 0x00000000 
+ 00009767  0x000013ee setflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00009768  0x000013ef store  0x00000001 , 0x00000047 
+ 00009769  0x000013f0 fetch  0x00000002 , 0x0000015f 
+ 00009770  0x000013f1 nbranch  0x0000264d , 0x00000034 
+ 00009771  0x000013f2 fetch  0x00000001 , 0x0000004c 
+ 00009772  0x000013f3 set0  0x00000007 , 0x0000003f 
+ 00009773  0x000013f4 store  0x00000001 , 0x0000004c 
+ 00009774  0x000013f5 fetch  0x00000001 , 0x00000180 
+ 00009775  0x000013f6 compare  0x00000001 , 0x0000003f , 0x00000007 
+ 00009776  0x000013f8 branch  0x0000264d 
+ 00009777  0x000013fb bpatch  0x00000063 , 0x0000400c 
+ 00009778  0x000013fc disable  0x0000002d 
+ 00009779  0x000013fd fetch  0x00000002 , 0x0000001a 
+ 00009780  0x000013fe increase  0x00000001 , 0x0000003f 
+ 00009781  0x000013ff store  0x00000002 , 0x0000001a 
+ 00009782  0x00001400 branch  0x0000264d 
+ 00009783  0x00001402 fetch  0x00000002 , 0x0000001c 
+ 00009784  0x00001403 increase  0x00000001 , 0x0000003f 
+ 00009785  0x00001404 store  0x00000002 , 0x0000001c 
+ 00009786  0x00001405 call  0x0000263e 
+ 00009787  0x00001406 bmark0  0x00000011 , 0x0000263d 
+ 00009788  0x00001407 set1  0x00000005 , 0x00000000 
+ 00009789  0x00001409 branch  0x0000264d 
+ 00009790  0x0000140c bpatch  0x00000064 , 0x0000400c 
+ 00009791  0x0000140d fetch  0x00000001 , 0x00000180 
+ 00009792  0x0000140e compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00009793  0x0000140f nbranch  0x00002646 , 0x00000001 
+ 00009794  0x00001411 fetcht  0x00000001 , 0x0000004c 
+ 00009795  0x00001412 set0  0x00000006 , 0x00000002 
+ 00009796  0x00001413 storet  0x00000001 , 0x0000004c 
+ 00009797  0x00001414 rtn 
+ 00009798  0x00001418 fetcht  0x00000001 , 0x0000004c 
+ 00009799  0x00001419 set0  0x00000007 , 0x00000002 
+ 00009800  0x0000141a storet  0x00000001 , 0x0000004c 
+ 00009801  0x0000141b branch  0x00004c0b 
+ 00009802  0x0000141e fetch  0x00000001 , 0x00000047 
+ 00009803  0x0000141f set1  0x00000005 , 0x0000003f 
+ 00009804  0x00001420 store  0x00000001 , 0x00000047 
+ 00009805  0x00001422 bpatch  0x00000065 , 0x0000400c 
+ 00009806  0x00001423 disable  0x0000001d 
+ 00009807  0x00001424 disable  0x0000001c 
+ 00009808  0x00001425 disable  0x0000000d 
+ 00009809  0x00001426 disable  0x0000000c 
+ 00009810  0x00001427 disable  0x00000009 
+ 00009811  0x00001428 disable  0x0000000e 
+ 00009812  0x00001429 disable  0x00000007 
+ 00009813  0x0000142a branch  0x000028f9 , 0x00000021 
+ 00009814  0x0000142b until  0x0000003e , 0x00000027 
+ 00009815  0x0000142c nop  0x00000064 
+ 00009816  0x0000142d branch  0x000028f9 
+ 00009817  0x00001430 bpatch  0x00000066 , 0x0000400c 
+ 00009818  0x00001431 enable  0x00000009 
+ 00009819  0x00001432 enable  0x0000000c 
+ 00009820  0x00001433 parse  0x00000003 , 0x00000000 , 0x00000048 
+ 00009821  0x00001434 isolate1  0x0000003a , 0x0000003f 
+ 00009822  0x00001435 setflag  0x00000001 , 0x00000000 , 0x00000000 
+ 00009823  0x00001436 copy  0x00000020 , 0x00000002 
+ 00009824  0x00001437 ialigned  0x00000020 
+ 00009825  0x00001438 ialigned  0x0000001e 
+ 00009826  0x00001439 pulse  0x00000015 
+ 00009827  0x0000143a setsect  0x00000002 , 0x000fffff 
+ 00009828  0x0000143b setsect  0x00000003 , 0x0000ffff 
+ 00009829  0x0000143c nop  0x00000020 
+ 00009830  0x0000143d iverify  0x0000000d 
+ 00009831  0x0000143e deposit  0x0000002c 
+ 00009832  0x0000143f store  0x00000003 , 0x00000178 
+ 00009833  0x00001440 deposit  0x0000002d 
+ 00009834  0x00001441 store  0x00000001 , 0x0000017b 
+ 00009835  0x00001442 copy  0x00000002 , 0x00000020 
+ 00009836  0x00001443 branch  0x0000266e , 0x00000001 
+ 00009837  0x00001444 branch  0x0000263d 
+ 00009838  0x00001446 bpatch  0x00000067 , 0x0000400c 
+ 00009839  0x00001447 parse  0x00000003 , 0x00000000 , 0x00000048 
+ 00009840  0x00001448 ialigned  0x0000001f 
+ 00009841  0x00001449 ialigned  0x00000004 
+ 00009842  0x0000144a ialigned  0x0000002e 
+ 00009843  0x0000144b ialigned  0x00000012 
+ 00009844  0x0000144c force  0x00000000 , 0x0000003f 
+ 00009845  0x0000144d parse  0x00000003 , 0x00000000 , 0x00000010 
+ 00009846  0x0000144e branch  0x0000263d , 0x00000006 
+ 00009847  0x0000144f setarg  0x0ffffffc 
+ 00009848  0x00001450 iand  0x00000012 , 0x0000003f 
+ 00009849  0x00001451 store  0x00000004 , 0x00000165 
+ 00009850  0x00001452 deposit  0x0000001d 
+ 00009851  0x00001453 store  0x00000003 , 0x00000175 
+ 00009852  0x00001454 deposit  0x0000001c 
+ 00009853  0x00001455 store  0x00000001 , 0x00000173 
+ 00009854  0x00001456 deposit  0x00000004 
+ 00009855  0x00001457 store  0x00000001 , 0x00000174 
+ 00009856  0x00001458 deposit  0x0000002e 
+ 00009857  0x00001459 store  0x00000002 , 0x0000017c 
+ 00009858  0x0000145a deposit  0x00000021 
+ 00009859  0x0000145b inject  0x00000001 , 0x00000020 
+ 00009860  0x0000145c compare  0x00000002 , 0x00000001 , 0x0000000f 
+ 00009861  0x0000145d setflag  0x00000001 , 0x0000000b , 0x00000000 
+ 00009862  0x0000145e branch  0x0000264d 
+ 00009863  0x00001461 bpatch  0x00000068 , 0x0000400d 
+ 00009864  0x00001462 fetch  0x00000001 , 0x00000047 
+ 00009865  0x00001463 rtnbit0  0x00000003 
+ 00009866  0x00001464 set0  0x00000003 , 0x0000003f 
+ 00009867  0x00001465 setflip  0x00000006 , 0x0000003f 
+ 00009868  0x00001466 store  0x00000001 , 0x00000047 
+ 00009869  0x00001467 fetch  0x00000001 , 0x000040c5 
+ 00009870  0x00001468 beq  0x00000013 , 0x0000269c 
+ 00009871  0x00001469 rtneq  0x00000007 
+ 00009872  0x0000146a fetch  0x00000001 , 0x0000004b 
+ 00009873  0x0000146b rtnbit0  0x00000006 , 0x0000003f 
+ 00009874  0x0000146c set0  0x00000006 , 0x0000003f 
+ 00009875  0x0000146d set1  0x00000007 , 0x0000003f 
+ 00009876  0x0000146e store  0x00000001 , 0x0000004b 
+ 00009877  0x0000146f set0  0x00000002 , 0x00000000 
+ 00009878  0x00001470 fetch  0x00000002 , 0x00004246 
+ 00009879  0x00001471 nrtn  0x00000034 
+ 00009880  0x00001472 fetch  0x00000001 , 0x0000004b 
+ 00009881  0x00001473 set0  0x00000007 , 0x0000003f 
+ 00009882  0x00001474 store  0x00000001 , 0x0000004b 
+ 00009883  0x00001475 branch  0x0000525d 
+ 00009884  0x00001478 bpatch  0x00000069 , 0x0000400d 
+ 00009885  0x00001479 fetch  0x00000001 , 0x000004b7 
+ 00009886  0x0000147a rshift  0x0000003f , 0x0000003f 
+ 00009887  0x0000147b beq  0x00000011 , 0x000026b8 
+ 00009888  0x0000147c beq  0x00000012 , 0x000026c0 
+ 00009889  0x0000147d beq  0x00000018 , 0x000026e9 
+ 00009890  0x0000147e beq  0x0000007f , 0x000026a8 
+ 00009891  0x0000147f rtnne  0x00000003 
+ 00009892  0x00001480 fetch  0x00000001 , 0x000004b8 
+ 00009893  0x00001481 beq  0x0000002b , 0x000026b0 
+ 00009894  0x00001482 beq  0x00000011 , 0x000026ab 
+ 00009895  0x00001483 rtn 
+ 00009896  0x00001486 fetch  0x00000001 , 0x000004b8 
+ 00009897  0x00001487 set1  0x00000007 , 0x0000003f 
+ 00009898  0x00001488 rtn 
+ 00009899  0x0000148a rtn  0x00000029 
+ 00009900  0x0000148b fetch  0x00000001 , 0x00000030 
+ 00009901  0x0000148c rtnbit1  0x00000004 
+ 00009902  0x0000148d jam  0x00000031 , 0x0000007c 
+ 00009903  0x0000148e rtn 
+ 00009904  0x00001492 rtn  0x00000029 
+ 00009905  0x00001493 fetch  0x00000001 , 0x00000031 
+ 00009906  0x00001494 isolate1  0x00000004 , 0x0000003f 
+ 00009907  0x00001495 branch  0x000026b5 , 0x00000001 
+ 00009908  0x00001497 rtn 
+ 00009909  0x00001499 set0  0x00000004 , 0x0000003f 
+ 00009910  0x0000149a store  0x00000001 , 0x00000031 
+ 00009911  0x0000149b rtn 
+ 00009912  0x0000149e bpatch  0x0000006a , 0x0000400d 
+ 00009913  0x0000149f fetch  0x00000001 , 0x0000004c 
+ 00009914  0x000014a0 set1  0x00000002 , 0x0000003f 
+ 00009915  0x000014a1 store  0x00000001 , 0x0000004c 
+ 00009916  0x000014a2 jam  0x00000001 , 0x00008011 
+ 00009917  0x000014a3 fetch  0x00000001 , 0x00000030 
+ 00009918  0x000014a4 isolate1  0x00000004 , 0x0000003f 
+ 00009919  0x000014a5 rtn 
+ 00009920  0x000014a8 bpatch  0x0000006b , 0x0000400d 
+ 00009921  0x000014a9 fetch  0x00000001 , 0x0000004c 
+ 00009922  0x000014aa set0  0x00000002 , 0x0000003f 
+ 00009923  0x000014ab store  0x00000001 , 0x0000004c 
+ 00009924  0x000014ac jam  0x00000000 , 0x00008011 
+ 00009925  0x000014ad rtn 
+ 00009926  0x000014b1 bpatch  0x0000006c , 0x0000400d 
+ 00009927  0x000014b2 copy  0x00000022 , 0x0000003f 
+ 00009928  0x000014b3 store  0x00000004 , 0x0000420c 
+ 00009929  0x000014b4 add  0x00000022 , 0x00000003 , 0x00000011 
+ 00009930  0x000014b5 branch  0x000026cc , 0x00000029 
+ 00009931  0x000014b6 add  0x00000028 , 0x00000003 , 0x00000011 
+ 00009932  0x000014b8 fetcht  0x00000002 , 0x00000032 
+ 00009933  0x000014b9 deposit  0x00000011 
+ 00009934  0x000014ba set0  0x0000001b , 0x0000003f 
+ 00009935  0x000014bb idiv  0x00000002 
+ 00009936  0x000014bc fetch  0x00000002 , 0x00000075 
+ 00009937  0x000014bd call  0x00007f86 
+ 00009938  0x000014be remainder  0x00000013 
+ 00009939  0x000014bf isub  0x00000013 , 0x0000003f 
+ 00009940  0x000014c0 branch  0x000026d6 , 0x00000002 
+ 00009941  0x000014c1 iadd  0x00000002 , 0x0000003f 
+ 00009942  0x000014c3 iadd  0x00000011 , 0x0000003f 
+ 00009943  0x000014c4 store  0x00000004 , 0x00000034 
+ 00009944  0x000014c5 jam  0x00000000 , 0x0000455b 
+ 00009945  0x000014c6 fetch  0x00000001 , 0x00000030 
+ 00009946  0x000014c7 set1  0x00000001 , 0x0000003f 
+ 00009947  0x000014c8 store  0x00000001 , 0x00000030 
+ 00009948  0x000014c9 fetch  0x00000001 , 0x00000073 
+ 00009949  0x000014ca store  0x00000001 , 0x0000008a 
+ 00009950  0x000014cb setarg  0x00000000 
+ 00009951  0x000014cc store  0x00000003 , 0x00004169 
+ 00009952  0x000014cd store  0x00000003 , 0x0000416c 
+ 00009953  0x000014ce store  0x00000001 , 0x00004159 
+ 00009954  0x000014cf jam  0x0000000b , 0x00000a99 
+ 00009955  0x000014d0 call  0x00007d86 
+ 00009956  0x000014d1 fetch  0x00000002 , 0x000040c1 
+ 00009957  0x000014d2 store  0x00000002 , 0x0000003e 
+ 00009958  0x000014d3 nrtn  0x00000029 
+ 00009959  0x000014d4 add  0x00000004 , 0xffffffff , 0x00000007 
+ 00009960  0x000014d5 rtn 
+ 00009961  0x000014d8 bpatch  0x0000006d , 0x0000400d 
+ 00009962  0x000014d9 fetch  0x00000001 , 0x00000030 
+ 00009963  0x000014da rtnbit0  0x00000001 
+ 00009964  0x000014db set0  0x00000001 , 0x0000003f 
+ 00009965  0x000014dc store  0x00000001 , 0x00000030 
+ 00009966  0x000014dd fetch  0x00000002 , 0x000040bf 
+ 00009967  0x000014de store  0x00000002 , 0x0000003e 
+ 00009968  0x000014df disable  0x0000002b 
+ 00009969  0x000014e0 jam  0x0000000c , 0x00000a99 
+ 00009970  0x000014e1 branch  0x00007d86 
+ 00009971  0x000014e5 bpatch  0x0000006e , 0x0000400d 
+ 00009972  0x000014e6 enable  0x0000002e 
+ 00009973  0x000014e7 fetch  0x00000001 , 0x00000030 
+ 00009974  0x000014e8 bbit1  0x00000001 , 0x00002700 
+ 00009975  0x000014e9 rtnmark1  0x00000011 
+ 00009976  0x000014ea fetch  0x00000001 , 0x00000047 
+ 00009977  0x000014eb rtnbit1  0x00000003 
+ 00009978  0x000014ec fetch  0x00000001 , 0x00000048 
+ 00009979  0x000014ed nrtn  0x00000034 
+ 00009980  0x000014ee fetch  0x00000001 , 0x0000004b 
+ 00009981  0x000014ef rtnbit1  0x00000006 
+ 00009982  0x000014f1 force  0x00000000 , 0x0000003f 
+ 00009983  0x000014f2 rtn 
+ 00009984  0x000014f5 bbit0  0x00000002 , 0x0000270f 
+ 00009985  0x000014f6 fetch  0x00000001 , 0x0000008a 
+ 00009986  0x000014f7 beq  0x00000002 , 0x00002706 
+ 00009987  0x000014f8 fetch  0x00000001 , 0x00000047 
+ 00009988  0x000014f9 bbit1  0x00000003 , 0x00002718 
+ 00009989  0x000014fa bmark0  0x00000008 , 0x00002718 
+ 00009990  0x000014fc nbranch  0x00002718 , 0x00000029 
+ 00009991  0x000014fd fetch  0x00000001 , 0x00000048 
+ 00009992  0x000014fe nbranch  0x00002718 , 0x00000034 
+ 00009993  0x00001500 fetch  0x00000001 , 0x000000ef 
+ 00009994  0x00001501 increase  0xffffffff , 0x0000003f 
+ 00009995  0x00001502 store  0x00000001 , 0x000000ef 
+ 00009996  0x00001503 nbranch  0x000026fe , 0x00000034 
+ 00009997  0x00001504 jam  0x00000010 , 0x000000ef 
+ 00009998  0x00001505 branch  0x00002718 
+ 00009999  0x0000150d fetch  0x00000001 , 0x0000008a 
+ 00010000  0x0000150e bne  0x00000001 , 0x00002718 
+ 00010001  0x0000150f fetch  0x00000001 , 0x0000008b 
+ 00010002  0x00001510 branch  0x00002718 , 0x00000034 
+ 00010003  0x00001511 increase  0xffffffff , 0x0000003f 
+ 00010004  0x00001512 store  0x00000001 , 0x0000008b 
+ 00010005  0x00001513 fetch  0x00000001 , 0x00000047 
+ 00010006  0x00001514 rtnbit1  0x00000003 
+ 00010007  0x00001515 nrtn  0x0000002d 
+ 00010008  0x00001517 fetch  0x00000001 , 0x0000008a 
+ 00010009  0x00001518 increase  0xffffffff , 0x0000003f 
+ 00010010  0x00001519 store  0x00000001 , 0x0000008a 
+ 00010011  0x0000151a rtn 
+ 00010012  0x00001526 bpatch  0x0000006f , 0x0000400d 
+ 00010013  0x00001527 disable  0x00000010 
+ 00010014  0x00001528 copy  0x00000002 , 0x0000001b 
+ 00010015  0x00001529 call  0x00002260 
+ 00010016  0x0000152a disable  0x00000028 
+ 00010017  0x0000152b nrtn  0x00000005 
+ 00010018  0x0000152c force  0x00000000 , 0x0000001b 
+ 00010019  0x0000152d enable  0x00000028 
+ 00010020  0x0000152e rtn 
+ 00010021  0x00001532 fetch  0x00000001 , 0x00004158 
+ 00010022  0x00001533 icompare  0x000000ff , 0x00000004 
+ 00010023  0x00001534 rtn 
+ 00010024  0x00001538 bpatch  0x00000070 , 0x0000400e 
+ 00010025  0x00001539 set0  0x00000001 , 0x00000000 
+ 00010026  0x0000153b jam  0x00000000 , 0x0000026a 
+ 00010027  0x0000153c fetch  0x00000001 , 0x00000263 
+ 00010028  0x0000153d rtn  0x00000034 
+ 00010029  0x0000153e isolate1  0x00000000 , 0x0000003f 
+ 00010030  0x0000153f arg  0x00001000 , 0x00000006 
+ 00010031  0x00001540 call  0x00004d79 , 0x00000001 
+ 00010032  0x00001541 bpatch  0x00000071 , 0x0000400e 
+ 00010033  0x00001542 fetch  0x00000001 , 0x0000026a 
+ 00010034  0x00001543 beq  0x00000001 , 0x0000273b 
+ 00010035  0x00001545 jam  0x00000000 , 0x0000026a 
+ 00010036  0x00001546 fetch  0x00000001 , 0x00000263 
+ 00010037  0x00001547 rtnbit0  0x00000001 
+ 00010038  0x00001548 arg  0x00001400 , 0x00000006 
+ 00010039  0x00001549 call  0x00004d79 
+ 00010040  0x0000154a fetch  0x00000001 , 0x0000026a 
+ 00010041  0x0000154b beq  0x00000001 , 0x00002741 
+ 00010042  0x0000154c rtn 
+ 00010043  0x0000154f fetch  0x00000001 , 0x00000263 
+ 00010044  0x00001550 set0  0x00000000 , 0x0000003f 
+ 00010045  0x00001551 store  0x00000001 , 0x00000263 
+ 00010046  0x00001552 setarg  0x00000000 
+ 00010047  0x00001553 store  0x00000002 , 0x0000025d 
+ 00010048  0x00001554 rtn 
+ 00010049  0x00001556 fetch  0x00000001 , 0x00000263 
+ 00010050  0x00001557 set0  0x00000001 , 0x0000003f 
+ 00010051  0x00001558 store  0x00000001 , 0x00000263 
+ 00010052  0x00001559 setarg  0x00000000 
+ 00010053  0x0000155a store  0x00000002 , 0x0000025f 
+ 00010054  0x0000155b rtn 
+ 00010055  0x0000155e fetch  0x00000001 , 0x00000263 
+ 00010056  0x0000155f set1  0x00000000 , 0x0000003f 
+ 00010057  0x00001560 store  0x00000001 , 0x00000263 
+ 00010058  0x00001561 rtn 
+ 00010059  0x00001564 fetch  0x00000001 , 0x00000263 
+ 00010060  0x00001565 set1  0x00000001 , 0x0000003f 
+ 00010061  0x00001566 store  0x00000001 , 0x00000263 
+ 00010062  0x00001567 rtn 
+ 00010063  0x0000156e bpatch  0x00000072 , 0x0000400e 
+ 00010064  0x0000156f add  0x00000028 , 0x00000001 , 0x00000021 
+ 00010065  0x00001570 call  0x000028ea 
+ 00010066  0x00001571 force  0x00000003 , 0x00000024 
+ 00010067  0x00001572 call  0x000028d2 
+ 00010068  0x00001573 call  0x00002a51 
+ 00010069  0x00001574 call  0x00002a5f 
+ 00010070  0x00001575 branch  0x00002a64 
+ 00010071  0x00001579 bpatch  0x00000073 , 0x0000400e 
+ 00010072  0x0000157a call  0x00002a4d 
+ 00010073  0x0000157b deposit  0x00000028 
+ 00010074  0x0000157c fetcht  0x00000004 , 0x000040ca 
+ 00010075  0x0000157d isub  0x00000002 , 0x0000003f 
+ 00010076  0x0000157e rtnne  0x00000001 
+ 00010077  0x0000157f compare  0x00000000 , 0x00000001 , 0x0000001f 
+ 00010078  0x00001580 nbranch  0x00002761 , 0x00000001 
+ 00010079  0x00001581 fetch  0x00000001 , 0x00000019 
+ 00010080  0x00001582 rtn  0x00000034 
+ 00010081  0x00001584 call  0x0000274f 
+ 00010082  0x00001586 compare  0x00000010 , 0x00000001 , 0x0000001f 
+ 00010083  0x00001587 branch  0x0000264d , 0x00000001 
+ 00010084  0x00001588 rshift  0x00000021 , 0x00000002 
+ 00010085  0x00001589 or  0x00000002 , 0x00000040 , 0x0000000e 
+ 00010086  0x0000158b bpatch  0x00000074 , 0x0000400e 
+ 00010087  0x0000158c enable  0x00000007 
+ 00010088  0x0000158d enable  0x0000000a 
+ 00010089  0x0000158e enable  0x0000001b 
+ 00010090  0x0000158f set0  0x00000010 , 0x00000000 
+ 00010091  0x00001590 deposit  0x00000004 
+ 00010092  0x00001591 inject  0x00000003 , 0x00000003 
+ 00010093  0x00001592 deposit  0x00000001 
+ 00010094  0x00001593 inject  0x00000003 , 0x00000004 
+ 00010095  0x00001594 fetch  0x00000001 , 0x00000047 
+ 00010096  0x00001595 inject  0x00000000 , 0x00000004 
+ 00010097  0x00001596 inject  0x00000003 , 0x00000003 
+ 00010098  0x00001597 enable  0x00000008 
+ 00010099  0x00001598 inject  0x00000003 , 0x00000008 
+ 00010100  0x00001599 disable  0x0000001b 
+ 00010101  0x0000159a disable  0x00000008 
+ 00010102  0x0000159b disable  0x0000000a 
+ 00010103  0x0000159c set0  0x00000002 , 0x00000015 
+ 00010104  0x0000159d arg  0x00000000 , 0x00000002 
+ 00010105  0x0000159e call  0x00002a1c 
+ 00010106  0x0000159f bpatch  0x00000075 , 0x0000400e 
+ 00010107  0x000015a0 and  0x00000001 , 0x0000001f , 0x0000003f 
+ 00010108  0x000015a1 beq  0x00000013 , 0x000027b4 
+ 00010109  0x000015a2 beq  0x00000000 , 0x0000264d 
+ 00010110  0x000015a3 beq  0x00000001 , 0x0000264d 
+ 00010111  0x000015a4 beq  0x00000002 , 0x00002797 
+ 00010112  0x000015a5 beq  0x00000003 , 0x000027c5 
+ 00010113  0x000015a6 beq  0x00000004 , 0x000027cb 
+ 00010114  0x000015a7 beq  0x00000007 , 0x0000278c 
+ 00010115  0x000015a8 beq  0x00000008 , 0x000027ca 
+ 00010116  0x000015a9 arg  0x00000004 , 0x00000002 
+ 00010117  0x000015aa call  0x00002a1c 
+ 00010118  0x000015ab beq  0x0000000a , 0x000027c7 
+ 00010119  0x000015ac beq  0x0000000b , 0x000027cd 
+ 00010120  0x000015ad arg  0x00000008 , 0x00000002 
+ 00010121  0x000015ae call  0x00002a1c 
+ 00010122  0x000015af beq  0x0000000f , 0x000027cd 
+ 00010123  0x000015b0 branch  0x000027c7 
+ 00010124  0x000015b4 bpatch  0x00000076 , 0x0000400e 
+ 00010125  0x000015b5 enable  0x0000001d 
+ 00010126  0x000015b6 enable  0x00000009 
+ 00010127  0x000015b7 enable  0x0000000e 
+ 00010128  0x000015b8 force  0x0000001e , 0x00000039 
+ 00010129  0x000015b9 arg  0x000000b3 , 0x00000006 
+ 00010130  0x000015bb ifetch  0x00000001 , 0x00000006 
+ 00010131  0x000015bc inject  0x00000003 , 0x00000008 
+ 00010132  0x000015bd loop  0x00002792 
+ 00010133  0x000015be bmark1  0x00000007 , 0x000027f7 
+ 00010134  0x000015bf branch  0x0000264d 
+ 00010135  0x000015c2 bpatch  0x00000077 , 0x0000400e 
+ 00010136  0x000015c3 fetch  0x00000001 , 0x00000181 
+ 00010137  0x000015c4 icopy  0x00000004 
+ 00010138  0x000015c5 fetch  0x00000001 , 0x00000090 
+ 00010139  0x000015c6 icopy  0x0000001c 
+ 00010140  0x000015c7 fetch  0x00000003 , 0x000040aa 
+ 00010141  0x000015c8 icopy  0x0000001d 
+ 00010142  0x000015c9 fetch  0x00000002 , 0x000040a4 
+ 00010143  0x000015ca icopy  0x0000002e 
+ 00010144  0x000015cb enable  0x00000009 
+ 00010145  0x000015cc enable  0x0000001c 
+ 00010146  0x000015cd copy  0x00000020 , 0x00000011 
+ 00010147  0x000015ce call  0x000028e2 
+ 00010148  0x000015cf pulse  0x00000015 
+ 00010149  0x000015d0 nop  0x00000020 
+ 00010150  0x000015d1 copy  0x00000021 , 0x0000000b 
+ 00010151  0x000015d2 fetch  0x00000004 , 0x00000161 
+ 00010152  0x000015d3 icopy  0x00000021 
+ 00010153  0x000015d4 preload  0x0000001e 
+ 00010154  0x000015d5 set1  0x0000003a , 0x0000003f 
+ 00010155  0x000015d6 inject  0x00000003 , 0x00000048 
+ 00010156  0x000015d7 preload  0x0000001f 
+ 00010157  0x000015d8 inject  0x00000003 , 0x00000048 
+ 00010158  0x000015d9 copy  0x0000000b , 0x00000021 
+ 00010159  0x000015da copy  0x00000011 , 0x00000020 
+ 00010160  0x000015db enable  0x00000008 
+ 00010161  0x000015dc inject  0x00000003 , 0x00000010 
+ 00010162  0x000015dd disable  0x00000008 
+ 00010163  0x000015de branch  0x0000264d 
+ 00010164  0x000015e1 bpatch  0x00000078 , 0x0000400f 
+ 00010165  0x000015e2 enable  0x0000000e 
+ 00010166  0x000015e3 enable  0x00000009 
+ 00010167  0x000015e4 enable  0x0000001c 
+ 00010168  0x000015e5 fetch  0x00000001 , 0x000004b6 
+ 00010169  0x000015e6 and  0x0000003f , 0x000001f8 , 0x00000002 
+ 00010170  0x000015e7 arg  0x000004b6 , 0x00000006 
+ 00010171  0x000015e8 increase  0x00000008 , 0x00000002 
+ 00010172  0x000015ea add  0x00000002 , 0xffffffb8 , 0x00000013 
+ 00010173  0x000015eb nbranch  0x000027c2 , 0x00000002 
+ 00010174  0x000015ec ifetch  0x00000009 , 0x00000006 
+ 00010175  0x000015ed inject  0x00000003 , 0x00000048 
+ 00010176  0x000015ee copy  0x00000013 , 0x00000002 
+ 00010177  0x000015ef branch  0x000027bc 
+ 00010178  0x000015f1 ifetch  0x00000009 , 0x00000006 
+ 00010179  0x000015f2 iinject  0x00000003 , 0x00000002 
+ 00010180  0x000015f3 branch  0x000027f7 
+ 00010181  0x000015f6 enable  0x0000001c 
+ 00010182  0x000015f7 branch  0x000027d0 
+ 00010183  0x000015fa enable  0x0000001c 
+ 00010184  0x000015fb set1  0x00000010 , 0x00000000 
+ 00010185  0x000015fc branch  0x000027d0 
+ 00010186  0x000015ff set1  0x00000002 , 0x00000015 
+ 00010187  0x00001601 enable  0x0000001d 
+ 00010188  0x00001602 branch  0x000027d0 
+ 00010189  0x00001606 set1  0x00000002 , 0x00000015 
+ 00010190  0x00001607 enable  0x0000001d 
+ 00010191  0x00001608 set1  0x00000010 , 0x00000000 
+ 00010192  0x0000160b bpatch  0x00000079 , 0x0000400f 
+ 00010193  0x0000160c fetch  0x00000001 , 0x0000004c 
+ 00010194  0x0000160d bbit0  0x00000005 , 0x000027e5 
+ 00010195  0x0000160e sub  0x00000001 , 0x00000003 , 0x0000003e 
+ 00010196  0x0000160f branch  0x000027e5 , 0x00000002 
+ 00010197  0x00001610 disable  0x0000000e 
+ 00010198  0x00001611 disable  0x0000001c 
+ 00010199  0x00001612 enable  0x0000001d 
+ 00010200  0x00001613 disable  0x00000007 
+ 00010201  0x00001614 set1  0x00000001 , 0x00000015 
+ 00010202  0x00001615 isolate1  0x00000002 , 0x00000015 
+ 00010203  0x00001616 branch  0x000027df , 0x00000001 
+ 00010204  0x00001617 setarg  0x000abeee 
+ 00010205  0x00001618 inject  0x00000003 , 0x00000014 
+ 00010206  0x00001619 branch  0x000027e3 
+ 00010207  0x0000161b setarg  0x005faeba 
+ 00010208  0x0000161c inject  0x00000003 , 0x00000018 
+ 00010209  0x0000161d setarg  0x00000012 
+ 00010210  0x0000161e inject  0x00000003 , 0x00000006 
+ 00010211  0x00001620 enable  0x00000007 
+ 00010212  0x00001621 set1  0x00000010 , 0x00000000 
+ 00010213  0x00001623 enable  0x0000000e 
+ 00010214  0x00001624 enable  0x00000009 
+ 00010215  0x00001625 bmark1  0x00000005 , 0x00002800 
+ 00010216  0x00001626 fetch  0x00000001 , 0x000041db 
+ 00010217  0x00001627 inject  0x00000003 , 0x00000003 
+ 00010218  0x00001628 fetch  0x00000002 , 0x000041dc 
+ 00010219  0x00001629 iforce  0x00000039 
+ 00010220  0x0000162a bmark1  0x00000010 , 0x000027ef 
+ 00010221  0x0000162b inject  0x00000003 , 0x00000005 
+ 00010222  0x0000162c branch  0x000027f0 
+ 00010223  0x0000162e inject  0x00000003 , 0x0000000d 
+ 00010224  0x00001630 deposit  0x00000039 
+ 00010225  0x00001631 branch  0x000027f7 , 0x00000034 
+ 00010226  0x00001632 fetch  0x00000002 , 0x0000016f 
+ 00010227  0x00001633 iforce  0x00000006 
+ 00010228  0x00001635 ifetch  0x00000001 , 0x00000006 
+ 00010229  0x00001636 inject  0x00000003 , 0x00000008 
+ 00010230  0x00001637 loop  0x000027f4 
+ 00010231  0x0000163b enable  0x00000008 
+ 00010232  0x0000163c inject  0x00000003 , 0x00000010 
+ 00010233  0x0000163d disable  0x00000008 
+ 00010234  0x0000163e call  0x000024c1 
+ 00010235  0x0000163f fetch  0x00000001 , 0x0000004c 
+ 00010236  0x00001640 bbit0  0x00000005 , 0x0000264d 
+ 00010237  0x00001641 force  0x00000000 , 0x0000003f 
+ 00010238  0x00001642 inject  0x00000003 , 0x00000006 
+ 00010239  0x00001643 branch  0x0000264d 
+ 00010240  0x00001647 bpatch  0x0000007a , 0x0000400f 
+ 00010241  0x00001648 bmark1  0x00000010 , 0x00002808 
+ 00010242  0x0000164a fetch  0x00000001 , 0x00000180 
+ 00010243  0x0000164b inject  0x00000003 , 0x00000003 
+ 00010244  0x0000164c fetch  0x00000001 , 0x0000015f 
+ 00010245  0x0000164d iforce  0x00000013 
+ 00010246  0x0000164e inject  0x00000003 , 0x00000005 
+ 00010247  0x0000164f branch  0x0000280d 
+ 00010248  0x00001651 fetch  0x00000001 , 0x00000180 
+ 00010249  0x00001652 inject  0x00000003 , 0x00000003 
+ 00010250  0x00001653 fetch  0x00000002 , 0x0000015f 
+ 00010251  0x00001654 iforce  0x00000013 
+ 00010252  0x00001655 inject  0x00000003 , 0x0000000d 
+ 00010253  0x00001657 arg  0x00000551 , 0x00000006 
+ 00010254  0x00001659 copy  0x00000013 , 0x0000003e 
+ 00010255  0x0000165a branch  0x00002814 , 0x00000005 
+ 00010256  0x0000165b ifetch  0x00000001 , 0x00000006 
+ 00010257  0x0000165c inject  0x00000003 , 0x00000008 
+ 00010258  0x0000165d increase  0xffffffff , 0x00000013 
+ 00010259  0x0000165e branch  0x0000280e 
+ 00010260  0x00001660 fetch  0x00000002 , 0x000000fc 
+ 00010261  0x00001661 increase  0x00000001 , 0x0000003f 
+ 00010262  0x00001662 store  0x00000002 , 0x000000fc 
+ 00010263  0x00001663 branch  0x000027f7 
+ 00010264  0x00001667 fetch  0x00000004 , 0x00000165 
+ 00010265  0x00001668 add  0x0000003f , 0x00000007 , 0x00000011 
+ 00010266  0x00001669 fetch  0x00000002 , 0x00000171 
+ 00010267  0x0000166a nbranch  0x0000281e , 0x00000034 
+ 00010268  0x0000166b increase  0xfffffffd , 0x00000011 
+ 00010269  0x0000166c branch  0x00002826 
+ 00010270  0x0000166e mul32  0x0000003f , 0x0000000c , 0x0000003f 
+ 00010271  0x0000166f hfetcht  0x00000002 , 0x00008040 
+ 00010272  0x00001670 increase  0x00000001 , 0x00000002 
+ 00010273  0x00001672 isub  0x00000002 , 0x0000003f 
+ 00010274  0x00001673 nbranch  0x00002825 , 0x00000002 
+ 00010275  0x00001674 increase  0xffffffff , 0x00000011 
+ 00010276  0x00001675 branch  0x00002821 
+ 00010277  0x00001677 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00010278  0x00001679 until  0x0000003e , 0x00000023 
+ 00010279  0x0000167a compare  0x00000000 , 0x00000022 , 0x00000003 
+ 00010280  0x0000167b nbranch  0x00002826 , 0x00000001 
+ 00010281  0x0000167c iforce  0x00000029 
+ 00010282  0x0000167d copy  0x00000011 , 0x00000028 
+ 00010283  0x0000167e iforce  0x00000029 
+ 00010284  0x0000167f rtn 
+ 00010285  0x00001683 bpatch  0x0000007b , 0x0000400f 
+ 00010286  0x00001684 until  0x0000003e , 0x00000022 
+ 00010287  0x00001685 deposit  0x0000001a 
+ 00010288  0x00001686 iforce  0x00000006 
+ 00010289  0x00001687 rshift16 , 0x0000003f , 0x0000003f 
+ 00010290  0x00001688 isub  0x00000022 , 0x00000039 
+ 00010291  0x00001689 and_into  0x00000003 , 0x00000039 
+ 00010292  0x0000168a nbranch  0x00002837 , 0x00000005 
+ 00010293  0x0000168b force  0x00000000 , 0x0000003f 
+ 00010294  0x0000168c branch  0x0000283b 
+ 00010295  0x0000168e arg  0x00000ea6 , 0x00000002 
+ 00010296  0x0000168f force  0x00000000 , 0x0000003f 
+ 00010297  0x00001691 iadd  0x00000002 , 0x0000003f 
+ 00010298  0x00001692 loop  0x00002839 
+ 00010299  0x00001694 iadd  0x00000006 , 0x0000003f 
+ 00010300  0x00001695 div  0x0000003f , 0x0000000c 
+ 00010301  0x00001696 call  0x00007f86 
+ 00010302  0x00001697 quotient  0x0000003f 
+ 00010303  0x00001698 store  0x00000002 , 0x00000171 
+ 00010304  0x00001699 rtn 
+ 00010305  0x0000169c bpatch  0x0000007c , 0x0000400f 
+ 00010306  0x0000169d deposit  0x0000001a 
+ 00010307  0x0000169e copy  0x00000019 , 0x00000002 
+ 00010308  0x0000169f isub  0x00000002 , 0x0000003e 
+ 00010309  0x000016a0 nsetflag  0x00000002 , 0x0000002c , 0x0000003f 
+ 00010310  0x000016a1 isub  0x00000002 , 0x00000002 
+ 00010311  0x000016a2 setarg  0x00000ea6 
+ 00010312  0x000016a3 isolate0  0x0000000f , 0x00000002 
+ 00010313  0x000016a4 branch  0x0000284c , 0x00000001 
+ 00010314  0x000016a5 setarg  0xffff0ea6 
+ 00010315  0x000016a6 iadd  0x00000002 , 0x00000002 
+ 00010316  0x000016a8 storet  0x00000006 , 0x00000447 
+ 00010317  0x000016a9 rtn  0x00000036 
+ 00010318  0x000016aa storet  0x00000006 , 0x00000038 
+ 00010319  0x000016ab rtn 
+ 00010320  0x000016ae disable  0x00000030 
+ 00010321  0x000016af fetch  0x00000006 , 0x00000447 
+ 00010322  0x000016b0 branch  0x00002854 , 0x00000036 
+ 00010323  0x000016b1 fetch  0x00000006 , 0x00000038 
+ 00010324  0x000016b3 iadd  0x00000019 , 0x00000030 
+ 00010325  0x000016b4 increase  0x0000000a , 0x00000030 
+ 00010326  0x000016b5 setarg  0x00000ea6 
+ 00010327  0x000016b6 isub  0x00000030 , 0x0000003f 
+ 00010328  0x000016b7 isolate0  0x0000000f , 0x0000003f 
+ 00010329  0x000016b8 branch  0x0000285e , 0x00000001 
+ 00010330  0x000016b9 setarg  0x0000f15a 
+ 00010331  0x000016ba iadd  0x00000030 , 0x00000030 
+ 00010332  0x000016bc copy  0x00000030 , 0x0000001a 
+ 00010333  0x000016bd rtn 
+ 00010334  0x000016bf force  0x00000000 , 0x0000003e 
+ 00010335  0x000016c0 branch  0x0000285c 
+ 00010336  0x000016c8 bpatch  0x0000007d , 0x0000400f 
+ 00010337  0x000016c9 call  0x00002918 
+ 00010338  0x000016ca copy  0x00000021 , 0x0000003f 
+ 00010339  0x000016cb and_into  0x00000180 , 0x0000003f 
+ 00010340  0x000016cc compare  0x00000003 , 0x00000024 , 0x00000007 
+ 00010341  0x000016cd nbranch  0x00002869 , 0x00000001 
+ 00010342  0x000016ce rshift3  0x0000003f , 0x0000003f 
+ 00010343  0x000016cf iadd  0x00000017 , 0x0000003f 
+ 00010344  0x000016d0 branch  0x0000286a 
+ 00010345  0x000016d2 copy  0x00000017 , 0x0000003f 
+ 00010346  0x000016d4 div  0x0000003f , 0x0000004f 
+ 00010347  0x000016d5 pulse  0x00000015 
+ 00010348  0x000016d6 call  0x00007f86 
+ 00010349  0x000016d7 remainder  0x00000011 
+ 00010350  0x000016d8 add  0x00000011 , 0xffffffd8 , 0x00000002 
+ 00010351  0x000016d9 branch  0x00002872 , 0x00000002 
+ 00010352  0x000016da lshift  0x00000011 , 0x00000002 
+ 00010353  0x000016db branch  0x00002874 
+ 00010354  0x000016dd lshift  0x00000002 , 0x00000002 
+ 00010355  0x000016de increase  0x00000001 , 0x00000002 
+ 00010356  0x000016e0 bpatch  0x0000007e , 0x0000400f 
+ 00010357  0x000016e1 fetch  0x00000001 , 0x00000031 
+ 00010358  0x000016e2 bbit0  0x00000003 , 0x00002885 
+ 00010359  0x000016e4 fetch  0x00000004 , 0x000040d2 
+ 00010360  0x000016e5 isub  0x00000021 , 0x0000003e 
+ 00010361  0x000016e6 branch  0x00002885 , 0x00000002 
+ 00010362  0x000016e7 call  0x000028a4 
+ 00010363  0x000016e8 fetch  0x00000001 , 0x000040d9 
+ 00010364  0x000016e9 rtn  0x00000034 
+ 00010365  0x000016ea fetch  0x00000001 , 0x00000031 
+ 00010366  0x000016eb set1  0x00000002 , 0x0000003f 
+ 00010367  0x000016ec store  0x00000001 , 0x00000031 
+ 00010368  0x000016ed fetch  0x00000005 , 0x000040e7 
+ 00010369  0x000016ee store  0x00000005 , 0x000040da 
+ 00010370  0x000016ef ifetch  0x00000005 , 0x00000006 
+ 00010371  0x000016f0 store  0x00000005 , 0x000040df 
+ 00010372  0x000016f1 call  0x000028a9 
+ 00010373  0x000016f3 fetch  0x00000001 , 0x00000031 
+ 00010374  0x000016f4 rtnbit0  0x00000002 
+ 00010375  0x000016f5 isolate1  0x00000001 , 0x00000021 
+ 00010376  0x000016f6 branch  0x000028a1 , 0x00000001 
+ 00010377  0x000016f7 rshift3  0x00000002 , 0x00000011 
+ 00010378  0x000016f8 and  0x00000002 , 0x00000007 , 0x00000007 
+ 00010379  0x000016f9 setarg  0x000040da 
+ 00010380  0x000016fa iadd  0x00000011 , 0x00000011 
+ 00010381  0x000016fb ifetch  0x00000001 , 0x00000011 
+ 00010382  0x000016fc qisolate0  0x0000003f 
+ 00010383  0x000016fd branch  0x00002892 , 0x00000001 
+ 00010384  0x000016fe deposit  0x00000002 
+ 00010385  0x000016ff branch  0x0000289e 
+ 00010386  0x00001701 fetch  0x00000001 , 0x000040e4 
+ 00010387  0x00001702 iforce  0x00000012 
+ 00010388  0x00001703 deposit  0x00000021 
+ 00010389  0x00001704 and_into  0x00000180 , 0x0000003f 
+ 00010390  0x00001705 rshift3  0x0000003f , 0x0000003f 
+ 00010391  0x00001706 iadd  0x00000017 , 0x0000003f 
+ 00010392  0x00001707 idiv  0x00000012 
+ 00010393  0x00001708 setarg  0x000040f2 
+ 00010394  0x00001709 call  0x00007f86 
+ 00010395  0x0000170a remainder  0x00000011 
+ 00010396  0x0000170b iadd  0x00000011 , 0x00000006 
+ 00010397  0x0000170c ifetch  0x00000001 , 0x00000006 
+ 00010398  0x0000170e store  0x00000001 , 0x000040e5 
+ 00010399  0x0000170f iforce  0x00000002 
+ 00010400  0x00001710 rtn 
+ 00010401  0x00001713 fetch  0x00000001 , 0x000040e5 
+ 00010402  0x00001714 iforce  0x00000002 
+ 00010403  0x00001715 rtn 
+ 00010404  0x00001718 fetch  0x00000001 , 0x00000031 
+ 00010405  0x00001719 set0  0x00000002 , 0x0000003f 
+ 00010406  0x0000171a set0  0x00000003 , 0x0000003f 
+ 00010407  0x0000171b store  0x00000001 , 0x00000031 
+ 00010408  0x0000171c rtn 
+ 00010409  0x00001723 bpatch  0x0000007f , 0x0000400f 
+ 00010410  0x00001724 arg  0x000040f2 , 0x00000005 
+ 00010411  0x00001725 force  0x0000000a , 0x00000039 
+ 00010412  0x00001726 call  0x00007ec6 
+ 00010413  0x00001727 arg  0x000040f2 , 0x00000005 
+ 00010414  0x00001728 force  0x00000000 , 0x00000013 
+ 00010415  0x00001729 force  0x00000002 , 0x00000007 
+ 00010416  0x0000172b fetch  0x00000005 , 0x000040da 
+ 00010417  0x0000172c iforce  0x00000002 
+ 00010418  0x0000172d compare  0x00000002 , 0x00000007 , 0x000000ff 
+ 00010419  0x0000172e branch  0x000028b5 , 0x00000001 
+ 00010420  0x0000172f rshift  0x00000002 , 0x00000002 
+ 00010421  0x00001731 isolate0  0x00000000 , 0x00000002 
+ 00010422  0x00001732 branch  0x000028b9 , 0x00000001 
+ 00010423  0x00001733 deposit  0x00000013 
+ 00010424  0x00001734 istore  0x00000001 , 0x00000005 
+ 00010425  0x00001736 rshift2  0x00000002 , 0x00000002 
+ 00010426  0x00001737 increase  0x00000002 , 0x00000013 
+ 00010427  0x00001738 compare  0x00000028 , 0x00000013 , 0x000000fe 
+ 00010428  0x00001739 nbranch  0x000028c2 , 0x00000001 
+ 00010429  0x0000173a fetch  0x00000005 , 0x000040df 
+ 00010430  0x0000173b iforce  0x00000002 
+ 00010431  0x0000173c compare  0x00000002 , 0x00000007 , 0x000000ff 
+ 00010432  0x0000173d branch  0x000028c2 , 0x00000001 
+ 00010433  0x0000173e rshift  0x00000002 , 0x00000002 
+ 00010434  0x00001740 sub  0x00000013 , 0x0000004e , 0x0000003e 
+ 00010435  0x00001741 branch  0x000028b5 , 0x00000002 
+ 00010436  0x00001742 force  0x00000001 , 0x00000013 
+ 00010437  0x00001743 increase  0xffffffff , 0x00000007 
+ 00010438  0x00001744 nbranch  0x000028b0 , 0x00000005 
+ 00010439  0x00001745 arg  0x000040f2 , 0x00000011 
+ 00010440  0x00001746 deposit  0x00000005 
+ 00010441  0x00001747 isub  0x00000011 , 0x0000003f 
+ 00010442  0x00001748 store  0x00000001 , 0x000040e4 
+ 00010443  0x00001749 rtn 
+ 00010444  0x0000174c bpatch  0x00000080 , 0x00004010 
+ 00010445  0x0000174d call  0x00002860 
+ 00010446  0x0000174e fetch  0x00000001 , 0x0000017f 
+ 00010447  0x0000174f bbit0  0x00000005 , 0x000028d1 
+ 00010448  0x00001750 fetcht  0x00000001 , 0x000004cc 
+ 00010449  0x00001752 branch  0x0000291f 
+ 00010450  0x00001756 bpatch  0x00000081 , 0x00004010 
+ 00010451  0x00001757 call  0x00002860 
+ 00010452  0x00001758 fetch  0x00000001 , 0x0000017f 
+ 00010453  0x00001759 bbit0  0x00000004 , 0x000028d7 
+ 00010454  0x0000175a fetcht  0x00000001 , 0x000004cb 
+ 00010455  0x0000175c branch  0x00002933 
+ 00010456  0x00001760 force  0x00000000 , 0x0000002d 
+ 00010457  0x00001761 fetch  0x00000003 , 0x000040a7 
+ 00010458  0x00001762 iforce  0x0000002c 
+ 00010459  0x00001763 rtn 
+ 00010460  0x00001766 bpatch  0x00000082 , 0x00004010 
+ 00010461  0x00001767 fetch  0x00000001 , 0x000041d3 
+ 00010462  0x00001768 icopy  0x0000002d 
+ 00010463  0x00001769 fetch  0x00000003 , 0x000041d0 
+ 00010464  0x0000176a icopy  0x0000002c 
+ 00010465  0x0000176b rtn 
+ 00010466  0x0000176e bpatch  0x00000083 , 0x00004010 
+ 00010467  0x0000176f fetch  0x00000002 , 0x000040a4 
+ 00010468  0x00001770 icopy  0x0000002e 
+ 00010469  0x00001771 fetch  0x00000001 , 0x000040a3 
+ 00010470  0x00001772 icopy  0x0000002d 
+ 00010471  0x00001773 fetch  0x00000003 , 0x000040a0 
+ 00010472  0x00001774 icopy  0x0000002c 
+ 00010473  0x00001775 rtn 
+ 00010474  0x00001778 bpatch  0x00000084 , 0x00004010 
+ 00010475  0x00001779 fetch  0x00000002 , 0x00000044 
+ 00010476  0x0000177a icopy  0x0000002e 
+ 00010477  0x0000177b fetch  0x00000001 , 0x00000043 
+ 00010478  0x0000177c icopy  0x0000002d 
+ 00010479  0x0000177d fetch  0x00000003 , 0x00000040 
+ 00010480  0x0000177e icopy  0x0000002c 
+ 00010481  0x0000177f rtn 
+ 00010482  0x00001783 bmark1  0x00000020 , 0x000028f5 
+ 00010483  0x00001784 rtnmark0  0x0000001d 
+ 00010484  0x00001785 rtnmark0  0x0000001f 
+ 00010485  0x00001787 and_into  0xffffff00 , 0x0000002c 
+ 00010486  0x00001788 pulse  0x00000015 
+ 00010487  0x00001789 nop  0x00000020 
+ 00010488  0x0000178a rtn 
+ 00010489  0x0000178e bpatch  0x00000085 , 0x00004010 
+ 00010490  0x0000178f branch  0x0000290a , 0x00000021 
+ 00010491  0x00001790 jam  0x000000d4 , 0x00008955 
+ 00010492  0x00001791 nop  0x00000004 
+ 00010493  0x00001792 jam  0x000000d2 , 0x00008955 
+ 00010494  0x00001793 nop  0x00000004 
+ 00010495  0x00001794 jam  0x000000d1 , 0x00008955 
+ 00010496  0x00001795 nop  0x00000004 
+ 00010497  0x00001796 fetch  0x00000001 , 0x000041de 
+ 00010498  0x00001797 beq  0x00000000 , 0x00002908 
+ 00010499  0x00001798 beq  0x00000001 , 0x00002915 
+ 00010500  0x00001799 beq  0x00000002 , 0x00002908 
+ 00010501  0x0000179a beq  0x00000003 , 0x00002915 
+ 00010502  0x0000179b beq  0x00000004 , 0x00002915 
+ 00010503  0x0000179c beq  0x00000020 , 0x00002915 
+ 00010504  0x0000179f jam  0x000000d0 , 0x00008955 
+ 00010505  0x000017a0 jam  0x000000e0 , 0x00008956 
+ 00010506  0x000017a2 force  0x00000000 , 0x00000015 
+ 00010507  0x000017a3 disable  0x00000021 
+ 00010508  0x000017a4 disable  0x00000020 
+ 00010509  0x000017a5 pulse  0x0000001e 
+ 00010510  0x000017a6 jam  0x00000000 , 0x00008902 
+ 00010511  0x000017a7 jam  0x00000000 , 0x00008901 
+ 00010512  0x000017a8 jam  0x00000000 , 0x00008900 
+ 00010513  0x000017a9 jam  0x00000000 , 0x00008903 
+ 00010514  0x000017aa jam  0x00000070 , 0x00008904 
+ 00010515  0x000017ab jam  0x00000000 , 0x00008906 
+ 00010516  0x000017ac rtn 
+ 00010517  0x000017b2 jam  0x000000d0 , 0x00008955 
+ 00010518  0x000017b3 jam  0x000000c0 , 0x00008956 
+ 00010519  0x000017b4 branch  0x0000290a 
+ 00010520  0x000017b7 bpatch  0x00000086 , 0x00004010 
+ 00010521  0x000017b8 jam  0x00000000 , 0x00008902 
+ 00010522  0x000017b9 jam  0x00000000 , 0x00008901 
+ 00010523  0x000017ba jam  0x00000018 , 0x00008900 
+ 00010524  0x000017bb jam  0x000000a7 , 0x00008903 
+ 00010525  0x000017bc jam  0x0000007f , 0x00008904 
+ 00010526  0x000017bd rtn 
+ 00010527  0x000017c0 bpatch  0x00000087 , 0x00004010 
+ 00010528  0x000017c2 storet  0x00000001 , 0x00000017 
+ 00010529  0x000017c3 add  0x00000002 , 0x00000004 , 0x00000011 
+ 00010530  0x000017c4 jam  0x00000007 , 0x0000896d 
+ 00010531  0x000017c5 branch  0x00002981 
+ 00010532  0x000017c7 bpatch  0x00000088 , 0x00004011 
+ 00010533  0x000017c8 jam  0x000000cf , 0x00008901 
+ 00010534  0x000017c9 nop  0x0000000a 
+ 00010535  0x000017ca jam  0x000000ff , 0x00008900 
+ 00010536  0x000017cb jam  0x000000af , 0x00008903 
+ 00010537  0x000017cc jam  0x000000ff , 0x00008904 
+ 00010538  0x000017cd nop  0x0000000a 
+ 00010539  0x000017ce jam  0x000000a0 , 0x00008902 
+ 00010540  0x000017cf rtn 
+ 00010541  0x000017d2 fetch  0x00000001 , 0x000041e0 
+ 00010542  0x000017d3 branch  0x00002931 , 0x00000034 
+ 00010543  0x000017d5 add  0x00000002 , 0x00000002 , 0x00000011 
+ 00010544  0x000017d6 rtn 
+ 00010545  0x000017d8 add  0x00000002 , 0x00000000 , 0x00000011 
+ 00010546  0x000017d9 rtn 
+ 00010547  0x000017dc bpatch  0x00000089 , 0x00004011 
+ 00010548  0x000017dd storet  0x00000001 , 0x00000017 
+ 00010549  0x000017de call  0x0000292d 
+ 00010550  0x000017df call  0x00002981 
+ 00010551  0x000017e0 setarg  0x00000500 
+ 00010552  0x000017e1 call  0x00002a8f 
+ 00010553  0x000017e3 jam  0x00000001 , 0x00008906 
+ 00010554  0x000017e4 jam  0x0000003c , 0x00008900 
+ 00010555  0x000017e5 jam  0x000000e0 , 0x00008901 
+ 00010556  0x000017e6 jam  0x00000012 , 0x0000896d 
+ 00010557  0x000017e7 nop  0x0000000a 
+ 00010558  0x000017e8 jam  0x00000001 , 0x00008902 
+ 00010559  0x000017e9 jam  0x0000003d , 0x00008902 
+ 00010560  0x000017ea nop  0x0000000a 
+ 00010561  0x000017eb jam  0x000000b7 , 0x00008903 
+ 00010562  0x000017ec nop  0x0000000a 
+ 00010563  0x000017ed jam  0x0000007f , 0x00008902 
+ 00010564  0x000017ef fetch  0x00000001 , 0x000041de 
+ 00010565  0x000017f0 beq  0x00000000 , 0x0000294b 
+ 00010566  0x000017f1 beq  0x00000001 , 0x0000294f 
+ 00010567  0x000017f2 beq  0x00000002 , 0x00002953 
+ 00010568  0x000017f3 beq  0x00000003 , 0x00002957 
+ 00010569  0x000017f4 beq  0x00000004 , 0x0000295b 
+ 00010570  0x000017f5 beq  0x00000020 , 0x0000295f 
+ 00010571  0x000017f7 jam  0x000000f0 , 0x00008956 
+ 00010572  0x000017f8 call  0x00002965 
+ 00010573  0x000017f9 jam  0x000000d8 , 0x00008955 
+ 00010574  0x000017fa rtn 
+ 00010575  0x000017fd jam  0x000000df , 0x00008956 
+ 00010576  0x000017fe call  0x00002965 
+ 00010577  0x000017ff jam  0x000000df , 0x00008955 
+ 00010578  0x00001800 rtn 
+ 00010579  0x00001803 jam  0x000000ff , 0x00008956 
+ 00010580  0x00001804 call  0x00002965 
+ 00010581  0x00001805 jam  0x000000df , 0x00008955 
+ 00010582  0x00001806 rtn 
+ 00010583  0x00001808 jam  0x000000ce , 0x00008956 
+ 00010584  0x00001809 call  0x00002965 
+ 00010585  0x0000180a jam  0x000000d8 , 0x00008955 
+ 00010586  0x0000180b rtn 
+ 00010587  0x0000180e jam  0x000000cb , 0x00008956 
+ 00010588  0x0000180f call  0x00002965 
+ 00010589  0x00001810 jam  0x000000d8 , 0x00008955 
+ 00010590  0x00001811 rtn 
+ 00010591  0x00001814 jam  0x000000d0 , 0x00008955 
+ 00010592  0x00001815 jam  0x000000c0 , 0x00008956 
+ 00010593  0x00001816 jam  0x0000004c , 0x00008957 
+ 00010594  0x00001817 jam  0x0000006c , 0x00008958 
+ 00010595  0x00001818 jam  0x00000050 , 0x00008959 
+ 00010596  0x00001819 rtn 
+ 00010597  0x0000181c nop  0x00000004 
+ 00010598  0x0000181d jam  0x000000d1 , 0x00008955 
+ 00010599  0x0000181e nop  0x00000004 
+ 00010600  0x0000181f jam  0x000000d2 , 0x00008955 
+ 00010601  0x00001820 nop  0x00000004 
+ 00010602  0x00001821 jam  0x000000d4 , 0x00008955 
+ 00010603  0x00001822 rtn 
+ 00010604  0x00001826 jam  0x00000006 , 0x00008042 
+ 00010605  0x00001828 fetch  0x00000002 , 0x000040c3 
+ 00010606  0x00001829 bbit0  0x0000000e , 0x0000296d 
+ 00010607  0x0000182a iforce  0x00000006 
+ 00010608  0x0000182b arg  0x00008900 , 0x00000002 
+ 00010609  0x0000182d ifetch  0x00000001 , 0x00000006 
+ 00010610  0x0000182e beq  0x000000ff , 0x00002977 
+ 00010611  0x0000182f ior  0x00000002 , 0x00000005 
+ 00010612  0x00001830 ifetch  0x00000001 , 0x00000006 
+ 00010613  0x00001831 istore  0x00000001 , 0x00000005 
+ 00010614  0x00001832 branch  0x00002971 
+ 00010615  0x00001834 bpatch  0x0000008a , 0x00004011 
+ 00010616  0x00001835 call  0x00002be5 
+ 00010617  0x00001836 call  0x000029c9 
+ 00010618  0x00001838 setarg  0x000007d0 
+ 00010619  0x00001839 iadd  0x00000022 , 0x0000003f 
+ 00010620  0x0000183a store  0x00000004 , 0x00000169 
+ 00010621  0x0000183b set1  0x00000003 , 0x00000015 
+ 00010622  0x0000183c force  0x00000000 , 0x00000015 
+ 00010623  0x0000183d ncall  0x00002998 , 0x0000002b 
+ 00010624  0x0000183e branch  0x000029ab 
+ 00010625  0x00001842 bpatch  0x0000008b , 0x00004011 
+ 00010626  0x00001843 setarg  0x00000960 
+ 00010627  0x00001844 iadd  0x00000011 , 0x00000002 
+ 00010628  0x00001845 fetch  0x00000001 , 0x000040bd 
+ 00010629  0x00001846 jam  0x00000004 , 0x0000895f 
+ 00010630  0x00001847 imul32  0x00000002 , 0x0000003f 
+ 00010631  0x00001848 fetcht  0x00000001 , 0x000040be 
+ 00010632  0x00001849 idiv  0x00000002 
+ 00010633  0x0000184a call  0x00007f86 
+ 00010634  0x0000184b quotient  0x00000011 
+ 00010635  0x0000184c remainder  0x0000003f 
+ 00010636  0x0000184d lshift16  0x0000003f , 0x0000003f 
+ 00010637  0x0000184e lshift4  0x0000003f , 0x0000003f 
+ 00010638  0x0000184f idiv  0x00000002 
+ 00010639  0x00001850 call  0x00007f86 
+ 00010640  0x00001851 quotient  0x0000003f 
+ 00010641  0x00001852 lshift8  0x0000003f , 0x0000003f 
+ 00010642  0x00001853 lshift  0x0000003f , 0x0000003f 
+ 00010643  0x00001854 ior  0x00000011 , 0x0000003f 
+ 00010644  0x00001855 hstore  0x00000004 , 0x00008960 
+ 00010645  0x00001856 jam  0x00000044 , 0x0000895f 
+ 00010646  0x00001857 jam  0x000000c4 , 0x0000895f 
+ 00010647  0x00001858 rtn 
+ 00010648  0x0000185c bpatch  0x0000008c , 0x00004011 
+ 00010649  0x0000185d jam  0x00000002 , 0x00008906 
+ 00010650  0x0000185e setarg  0x0003d090 
+ 00010651  0x0000185f call  0x00002a8f 
+ 00010652  0x00001860 jam  0x0000007f , 0x00008900 
+ 00010653  0x00001861 nop  0x00000082 
+ 00010654  0x00001862 jam  0x00000030 , 0x00008952 
+ 00010655  0x00001863 jam  0x000000d0 , 0x00008901 
+ 00010656  0x00001864 jam  0x00000070 , 0x00008952 
+ 00010657  0x00001865 jam  0x000000f0 , 0x00008952 
+ 00010658  0x00001866 force  0x00000032 , 0x00000039 
+ 00010659  0x00001868 hfetch  0x00000001 , 0x00008980 
+ 00010660  0x00001869 bbit1  0x00000005 , 0x000029a6 
+ 00010661  0x0000186a loop  0x000029a3 
+ 00010662  0x0000186c store  0x00000001 , 0x000040ce 
+ 00010663  0x0000186d jam  0x00000000 , 0x00008901 
+ 00010664  0x0000186e jam  0x00000000 , 0x00008900 
+ 00010665  0x0000186f jam  0x00000000 , 0x00008906 
+ 00010666  0x00001870 rtn 
+ 00010667  0x00001873 bpatch  0x0000008d , 0x00004011 
+ 00010668  0x00001874 fetch  0x00000001 , 0x000040ce 
+ 00010669  0x00001875 set1  0x00000005 , 0x0000003f 
+ 00010670  0x00001876 hstore  0x00000001 , 0x00008952 
+ 00010671  0x00001877 hfetcht  0x00000001 , 0x00008950 
+ 00010672  0x00001878 and_into  0x00000007 , 0x00000002 
+ 00010673  0x00001879 lshift3  0x0000003f , 0x0000003f 
+ 00010674  0x0000187a ior  0x00000002 , 0x0000003f 
+ 00010675  0x0000187b hstore  0x00000001 , 0x00008950 
+ 00010676  0x0000187c hfetch  0x00000001 , 0x00008951 
+ 00010677  0x0000187d set0  0x00000000 , 0x0000003f 
+ 00010678  0x0000187e hstore  0x00000001 , 0x00008951 
+ 00010679  0x0000187f hfetch  0x00000001 , 0x00008952 
+ 00010680  0x00001880 set0  0x00000005 , 0x0000003f 
+ 00010681  0x00001881 hstore  0x00000001 , 0x00008952 
+ 00010682  0x00001882 rtn 
+ 00010683  0x00001885 bpatch  0x0000008e , 0x00004011 
+ 00010684  0x00001886 hfetch  0x00000002 , 0x00008981 
+ 00010685  0x00001887 rshift4  0x0000003f , 0x0000003f 
+ 00010686  0x00001888 rshift3  0x0000003f , 0x0000003f 
+ 00010687  0x00001889 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00010688  0x0000188b and_into  0x000000ff , 0x0000003f 
+ 00010689  0x0000188c div  0x0000003f , 0x0000000a 
+ 00010690  0x0000188d call  0x00007f86 
+ 00010691  0x0000188e quotient  0x0000003f 
+ 00010692  0x0000188f lshift4  0x0000003f , 0x0000003f 
+ 00010693  0x00001890 remainder  0x00000002 
+ 00010694  0x00001891 ior  0x00000002 , 0x0000003f 
+ 00010695  0x00001892 store  0x00000001 , 0x00000018 
+ 00010696  0x00001893 rtn 
+ 00010697  0x00001897 jam  0x00000006 , 0x00008042 
+ 00010698  0x00001898 hfetch  0x00000001 , 0x0000896b 
+ 00010699  0x00001899 set0  0x00000004 , 0x0000003f 
+ 00010700  0x0000189a set0  0x00000005 , 0x0000003f 
+ 00010701  0x0000189b hstore  0x00000001 , 0x0000896b 
+ 00010702  0x0000189c jam  0x00000000 , 0x00008905 
+ 00010703  0x0000189d jam  0x00000000 , 0x00008904 
+ 00010704  0x0000189e jam  0x00000070 , 0x00008904 
+ 00010705  0x0000189f jam  0x000000ff , 0x00008905 
+ 00010706  0x000018a0 hfetch  0x00000001 , 0x0000896b 
+ 00010707  0x000018a1 set1  0x00000004 , 0x0000003f 
+ 00010708  0x000018a2 set1  0x00000005 , 0x0000003f 
+ 00010709  0x000018a3 hstore  0x00000001 , 0x0000896b 
+ 00010710  0x000018a4 call  0x000029e9 
+ 00010711  0x000018a5 hfetch  0x00000001 , 0x00008968 
+ 00010712  0x000018a6 set1  0x00000007 , 0x0000003f 
+ 00010713  0x000018a7 hstore  0x00000001 , 0x00008968 
+ 00010714  0x000018a8 set0  0x00000007 , 0x0000003f 
+ 00010715  0x000018a9 hstore  0x00000001 , 0x00008968 
+ 00010716  0x000018aa set1  0x00000007 , 0x0000003f 
+ 00010717  0x000018ab hstore  0x00000001 , 0x00008968 
+ 00010718  0x000018ac jam  0x00000005 , 0x00008042 
+ 00010719  0x000018ad nop  0x00000001 
+ 00010720  0x000018ae jam  0x00000004 , 0x00008042 
+ 00010721  0x000018af hfetch  0x00000001 , 0x0000896b 
+ 00010722  0x000018b0 and_into  0x000000cf , 0x0000003f 
+ 00010723  0x000018b1 hstore  0x00000001 , 0x0000896b 
+ 00010724  0x000018b2 or_into  0x00000030 , 0x0000003f 
+ 00010725  0x000018b3 hstore  0x00000001 , 0x0000896b 
+ 00010726  0x000018b4 rtn 
+ 00010727  0x000018b8 setarg  0x00000f0f 
+ 00010728  0x000018b9 branch  0x00002c18 
+ 00010729  0x000018bc setarg  0x0000080f 
+ 00010730  0x000018bd branch  0x00002c18 
+ 00010731  0x000018c2 bpatch  0x0000008f , 0x00004011 
+ 00010732  0x000018c3 call  0x00002924 
+ 00010733  0x000018c4 disable  0x00000020 
+ 00010734  0x000018c5 enable  0x00000021 
+ 00010735  0x000018c6 pulse  0x00000016 
+ 00010736  0x000018c7 rtn 
+ 00010737  0x000018ca bpatch  0x00000090 , 0x00004012 
+ 00010738  0x000018cb fetch  0x00000001 , 0x0000004c 
+ 00010739  0x000018cc isolate1  0x00000002 , 0x0000003f 
+ 00010740  0x000018cd setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00010741  0x000018ce hstore  0x00000001 , 0x00008011 
+ 00010742  0x000018cf arg  0x00000062 , 0x00000006 
+ 00010743  0x000018d0 ifetch  0x00000009 , 0x00000006 
+ 00010744  0x000018d1 iforce  0x00000032 
+ 00010745  0x000018d2 ifetch  0x00000007 , 0x00000006 
+ 00010746  0x000018d3 iforce  0x00000033 
+ 00010747  0x000018d4 fetch  0x00000001 , 0x00000054 
+ 00010748  0x000018d5 add  0x0000003f , 0xffffffff , 0x00000034 
+ 00010749  0x000018d6 pulse  0x0000001a 
+ 00010750  0x000018d7 rtn 
+ 00010751  0x000018da deposit  0x0000001a 
+ 00010752  0x000018db store  0x00000006 , 0x0000009a 
+ 00010753  0x000018dc disable  0x0000000d 
+ 00010754  0x000018dd nbranch  0x000028f9 , 0x00000018 
+ 00010755  0x000018de arg  0x000003bb , 0x00000029 
+ 00010756  0x000018df increase  0x00000001 , 0x00000028 
+ 00010757  0x000018e0 and_into  0x000001fc , 0x00000028 
+ 00010758  0x000018e1 rtn 
+ 00010759  0x000018e6 enable  0x0000000d 
+ 00010760  0x000018e8 correlate  0x0000003e , 0x00000017 
+ 00010761  0x000018e9 branch  0x000029ff , 0x00000018 
+ 00010762  0x000018ea compare  0x00000002 , 0x00000028 , 0x00000002 
+ 00010763  0x000018eb nbranch  0x00002a08 , 0x00000001 
+ 00010764  0x000018ec branch  0x000029ff 
+ 00010765  0x000018ef bpatch  0x00000091 , 0x00004012 
+ 00010766  0x000018f0 arg  0x00000600 , 0x0000000b 
+ 00010767  0x000018f1 enable  0x0000000d 
+ 00010768  0x000018f2 correlate  0x00000023 , 0x00000026 
+ 00010769  0x000018f3 disable  0x0000000d 
+ 00010770  0x000018f4 nbranch  0x000028f9 , 0x00000018 
+ 00010771  0x000018f5 rtn 
+ 00010772  0x000018f8 bpatch  0x00000092 , 0x00004012 
+ 00010773  0x000018f9 enable  0x0000000d 
+ 00010774  0x000018fa correlate  0x0000003e , 0x00000003 
+ 00010775  0x000018fb disable  0x0000000d 
+ 00010776  0x000018fc nbranch  0x000028f9 , 0x00000018 
+ 00010777  0x000018fd arg  0x000003bb , 0x00000029 
+ 00010778  0x000018fe and_into  0x000001fc , 0x00000028 
+ 00010779  0x000018ff rtn 
+ 00010780  0x00001903 bpatch  0x00000093 , 0x00004012 
+ 00010781  0x00001904 iforce  0x00000011 
+ 00010782  0x00001905 deposit  0x00000021 
+ 00010783  0x00001906 iadd  0x00000002 , 0x0000000b 
+ 00010784  0x00001907 copy  0x0000000b , 0x0000003f 
+ 00010785  0x00001908 store  0x00000004 , 0x000040ca 
+ 00010786  0x00001909 deposit  0x00000011 
+ 00010787  0x0000190a rtn 
+ 00010788  0x0000190e copy  0x0000003f , 0x00000002 
+ 00010789  0x0000190f bpatch  0x00000094 , 0x00004012 
+ 00010790  0x00001910 copy  0x00000002 , 0x0000003f 
+ 00010791  0x00001911 call  0x00007f50 
+ 00010792  0x00001912 lshift16  0x00000021 , 0x0000003f 
+ 00010793  0x00001913 set1  0x0000002c , 0x0000003f 
+ 00010794  0x00001914 call  0x00007f39 
+ 00010795  0x00001915 set0  0x0000002c , 0x0000003f 
+ 00010796  0x00001916 call  0x00002a77 
+ 00010797  0x00001917 call  0x00007f39 
+ 00010798  0x00001918 rtn  0x00000028 
+ 00010799  0x00001919 call  0x00007f43 
+ 00010800  0x0000191a iforce  0x0000001b 
+ 00010801  0x0000191b until  0x0000003e , 0x00000003 
+ 00010802  0x0000191c rtn 
+ 00010803  0x00001920 bpatch  0x00000095 , 0x00004012 
+ 00010804  0x00001921 branch  0x00002a38 , 0x00000030 
+ 00010805  0x00001922 until  0x00000029 , 0x00000026 
+ 00010806  0x00001924 copy  0x00000028 , 0x00000002 
+ 00010807  0x00001925 branch  0x00002a3b 
+ 00010808  0x00001927 branch  0x00002a3a , 0x0000002e 
+ 00010809  0x00001928 until  0x00000023 , 0x00000026 
+ 00010810  0x0000192a copy  0x00000022 , 0x00000002 
+ 00010811  0x0000192c branch  0x00002a47 , 0x00000028 
+ 00010812  0x0000192d compare  0x00000001 , 0x00000002 , 0x00000003 
+ 00010813  0x0000192e nbranch  0x00002a33 , 0x00000001 
+ 00010814  0x00001930 bpatch  0x00000096 , 0x00004012 
+ 00010815  0x00001931 fetch  0x00000001 , 0x00000030 
+ 00010816  0x00001932 rtnbit0  0x00000000 
+ 00010817  0x00001933 fetch  0x00000004 , 0x000040ca 
+ 00010818  0x00001934 isub  0x00000002 , 0x0000003f 
+ 00010819  0x00001935 nrtn  0x00000002 
+ 00010820  0x00001936 sub  0x0000003f , 0x000000ff , 0x0000003e 
+ 00010821  0x00001937 branch  0x00002a33 , 0x00000002 
+ 00010822  0x00001938 rtn 
+ 00010823  0x0000193a compare  0x00000003 , 0x00000002 , 0x00000003 
+ 00010824  0x0000193b nbranch  0x00002a33 , 0x00000001 
+ 00010825  0x0000193c branch  0x00002a3e 
+ 00010826  0x0000193f bpatch  0x00000097 , 0x00004012 
+ 00010827  0x00001940 arg  0x00000600 , 0x0000000b 
+ 00010828  0x00001941 branch  0x00002a33 
+ 00010829  0x00001944 disable  0x00000028 
+ 00010830  0x00001945 branch  0x00002a4a 
+ 00010831  0x00001948 enable  0x00000028 
+ 00010832  0x00001949 branch  0x00002a4a 
+ 00010833  0x0000194c bpatch  0x00000098 , 0x00004013 
+ 00010834  0x0000194d call  0x000029f1 
+ 00010835  0x0000194e disable  0x00000021 
+ 00010836  0x0000194f enable  0x00000020 
+ 00010837  0x00001950 rtn 
+ 00010838  0x00001955 bpatch  0x00000099 , 0x00004013 
+ 00010839  0x00001956 arg  0x00000e43 , 0x0000000b 
+ 00010840  0x00001957 until  0x00000023 , 0x00000026 
+ 00010841  0x00001958 pulse  0x00000016 
+ 00010842  0x00001959 rtn 
+ 00010843  0x0000195c bpatch  0x0000009a , 0x00004013 
+ 00010844  0x0000195d arg  0x00000d00 , 0x0000000b 
+ 00010845  0x0000195e until  0x00000023 , 0x00000026 
+ 00010846  0x0000195f rtn 
+ 00010847  0x00001963 bpatch  0x0000009b , 0x00004013 
+ 00010848  0x00001964 arg  0x00000e43 , 0x0000000b 
+ 00010849  0x00001965 until  0x00000029 , 0x00000026 
+ 00010850  0x00001966 pulse  0x00000016 
+ 00010851  0x00001967 rtn 
+ 00010852  0x0000196a bpatch  0x0000009c , 0x00004013 
+ 00010853  0x0000196b preload  0x00000009 
+ 00010854  0x0000196c enable  0x0000001d 
+ 00010855  0x0000196d set1  0x00000000 , 0x00000015 
+ 00010856  0x0000196e inject  0x00000003 , 0x00000048 
+ 00010857  0x0000196f disable  0x0000001d 
+ 00010858  0x00001970 rtn 
+ 00010859  0x00001974 copy  0x00000025 , 0x00000002 
+ 00010860  0x00001975 or_into  0x00000060 , 0x00000002 
+ 00010861  0x00001976 copy  0x00000002 , 0x0000000e 
+ 00010862  0x00001977 rtn 
+ 00010863  0x0000197d bpatch  0x0000009d , 0x00004013 
+ 00010864  0x0000197e fetch  0x00000001 , 0x00004090 
+ 00010865  0x0000197f increase  0x00000001 , 0x0000003f 
+ 00010866  0x00001980 bne  0x00000007 , 0x00002a74 
+ 00010867  0x00001981 force  0x00000001 , 0x0000003f 
+ 00010868  0x00001983 store  0x00000001 , 0x00004090 
+ 00010869  0x00001984 iforce  0x00000004 
+ 00010870  0x00001985 rtn 
+ 00010871  0x00001988 copy  0x00000019 , 0x00000002 
+ 00010872  0x00001989 rtn  0x00000029 
+ 00010873  0x0000198a copy  0x0000001a , 0x00000002 
+ 00010874  0x0000198b rtn 
+ 00010875  0x0000198e deposit  0x00000022 
+ 00010876  0x0000198f rtn  0x00000029 
+ 00010877  0x00001990 deposit  0x00000028 
+ 00010878  0x00001991 rtn 
+ 00010879  0x00001995 bpatch  0x0000009e , 0x00004013 
+ 00010880  0x00001996 fetcht  0x00000004 , 0x0000004d 
+ 00010881  0x00001997 call  0x00002a7b 
+ 00010882  0x00001998 isub  0x00000002 , 0x0000000b 
+ 00010883  0x00001999 deposit  0x0000000b 
+ 00010884  0x0000199a fetcht  0x00000002 , 0x00000051 
+ 00010885  0x0000199b lshift  0x00000002 , 0x00000002 
+ 00010886  0x0000199c isub  0x00000002 , 0x0000003f 
+ 00010887  0x0000199d rtn 
+ 00010888  0x000019a0 bpatch  0x0000009f , 0x00004013 
+ 00010889  0x000019a1 call  0x00002a7b 
+ 00010890  0x000019a2 store  0x00000004 , 0x0000004d 
+ 00010891  0x000019a3 rtn 
+ 00010892  0x000019a6 bpatch  0x000000a0 , 0x00004014 
+ 00010893  0x000019a7 branch  0x00002a8c 
+ 00010894  0x000019aa branch  0x00002a8e 
+ 00010895  0x000019ad rtn  0x00000034 
+ 00010896  0x000019af rshift  0x0000003f , 0x0000003f 
+ 00010897  0x000019b0 increase  0xfffffffd , 0x0000003f 
+ 00010898  0x000019b2 increase  0xffffffff , 0x0000003f 
+ 00010899  0x000019b3 nbranch  0x00002a92 , 0x00000005 
+ 00010900  0x000019b4 force  0x00000000 , 0x0000003f 
+ 00010901  0x000019b5 rtn 
+ 00010902  0x000019bb arg  0x00000010 , 0x00000039 
+ 00010903  0x000019bc arg  0x00000000 , 0x00000005 
+ 00010904  0x000019bd call  0x00007ec6 
+ 00010905  0x000019be arg  0x0000043f , 0x00000005 
+ 00010906  0x000019bf arg  0x0000000a , 0x00000039 
+ 00010907  0x000019c0 call  0x00007ec6 
+ 00010908  0x000019c1 jam  0x00000000 , 0x000009b2 
+ 00010909  0x000019c2 jam  0x00000000 , 0x00000a99 
+ 00010910  0x000019c3 jam  0x00000000 , 0x0000048c 
+ 00010911  0x000019c4 jam  0x00000000 , 0x0000017f 
+ 00010912  0x000019c5 jam  0x00000000 , 0x000004d1 
+ 00010913  0x000019c6 bpatch  0x000000a1 , 0x00004014 
+ 00010914  0x000019c7 jam  0x00000000 , 0x0000016d 
+ 00010915  0x000019c8 jam  0x00000000 , 0x00000151 
+ 00010916  0x000019c9 jam  0x00000000 , 0x0000015c 
+ 00010917  0x000019ca setarg  0x009e8b33 
+ 00010918  0x000019cb store  0x00000003 , 0x000040a7 
+ 00010919  0x000019cc setarg  0x00000153 
+ 00010920  0x000019cd store  0x00000002 , 0x00000083 
+ 00010921  0x000019ce jam  0x0000001e , 0x00000085 
+ 00010922  0x000019cf jam  0x00000001 , 0x00000086 
+ 00010923  0x000019d0 jam  0x00000007 , 0x00000088 
+ 00010924  0x000019d1 setarg  0x0012e904 
+ 00010925  0x000019d2 store  0x00000003 , 0x00000080 
+ 00010926  0x000019d7 jam  0x00000060 , 0x00000090 
+ 00010927  0x000019d8 jam  0x00000005 , 0x000040d0 
+ 00010928  0x000019d9 jam  0x00000002 , 0x00000014 
+ 00010929  0x000019da fetch  0x00000001 , 0x0000465a 
+ 00010930  0x000019db ncall  0x000074c1 , 0x00000034 
+ 00010931  0x000019dc fetch  0x00000001 , 0x000044be 
+ 00010932  0x000019dd ncall  0x00007518 , 0x00000034 
+ 00010933  0x000019de bpatch  0x000000a2 , 0x00004014 
+ 00010934  0x000019df rtn  0x0000002b 
+ 00010935  0x000019e0 setarg  0x00000000 
+ 00010936  0x000019e1 store  0x00000002 , 0x000041dc 
+ 00010937  0x000019e2 rshift  0x00000022 , 0x0000003f 
+ 00010938  0x000019e3 store  0x00000004 , 0x00004094 
+ 00010939  0x000019e4 rtn 
+ 00010940  0x000019ec setarg  0x0000ee21 
+ 00010941  0x000019ed hstore  0x00000002 , 0x00008050 
+ 00010942  0x000019ee hfetch  0x00000004 , 0x0000811c 
+ 00010943  0x000019ef store  0x00000004 , 0x00000abe 
+ 00010944  0x000019f0 hfetch  0x00000001 , 0x0000813e 
+ 00010945  0x000019f1 store  0x00000001 , 0x00000abd 
+ 00010946  0x000019f2 bbit0  0x00000003 , 0x0000645b 
+ 00010947  0x000019f3 enable  0x0000002b 
+ 00010948  0x000019f4 bbit0  0x00000007 , 0x00002acc 
+ 00010949  0x000019f5 disable  0x0000002b 
+ 00010950  0x000019f6 deposit  0x00000027 
+ 00010951  0x000019f7 nbranch  0x00002acc , 0x00000034 
+ 00010952  0x000019f8 hfetch  0x00000001 , 0x0000813b 
+ 00010953  0x000019f9 bbit1  0x00000002 , 0x00002acc 
+ 00010954  0x000019fa arg  0xffffffff , 0x00000002 
+ 00010955  0x000019fb branch  0x00002b3c 
+ 00010956  0x000019fd hfetch  0x00000003 , 0x0000813c 
+ 00010957  0x000019fe hstore  0x00000003 , 0x0000804c 
+ 00010958  0x000019ff ifetch  0x00000001 , 0x00000006 
+ 00010959  0x00001a00 or_into  0x000000ef , 0x0000003f 
+ 00010960  0x00001a01 istore  0x00000001 , 0x00000005 
+ 00010961  0x00001a02 call  0x00002c23 
+ 00010962  0x00001a03 hfetch  0x00000001 , 0x0000804f 
+ 00010963  0x00001a04 set1  0x00000004 , 0x0000003f 
+ 00010964  0x00001a05 hstore  0x00000001 , 0x0000804f 
+ 00010965  0x00001a06 call  0x00002c23 
+ 00010966  0x00001a07 call  0x00002adf , 0x0000002b 
+ 00010967  0x00001a08 hfetch  0x00000001 , 0x0000804e 
+ 00010968  0x00001a09 set0  0x00000003 , 0x0000003f 
+ 00010969  0x00001a0a hstore  0x00000001 , 0x0000804e 
+ 00010970  0x00001a0b call  0x00002c23 
+ 00010971  0x00001a0c nbranch  0x0000645b , 0x0000002b 
+ 00010972  0x00001a0d rtnmark0  0x0000002b 
+ 00010973  0x00001a0e jam  0x00000008 , 0x00008006 
+ 00010974  0x00001a0f rtn 
+ 00010975  0x00001a12 fetch  0x00000001 , 0x00004198 
+ 00010976  0x00001a13 hstore  0x00000001 , 0x00008086 
+ 00010977  0x00001a14 fetch  0x00000003 , 0x0000418d 
+ 00010978  0x00001a15 hstore  0x00000003 , 0x00008080 
+ 00010979  0x00001a16 fetch  0x00000004 , 0x00004181 
+ 00010980  0x00001a17 hstore  0x00000004 , 0x00008074 
+ 00010981  0x00001a18 fetch  0x00000004 , 0x0000417d 
+ 00010982  0x00001a19 hstore  0x00000004 , 0x00008070 
+ 00010983  0x00001a1a fetch  0x00000008 , 0x00004185 
+ 00010984  0x00001a1b hstore  0x00000008 , 0x00008078 
+ 00010985  0x00001a1c fetch  0x00000008 , 0x00004190 
+ 00010986  0x00001a1d iforce  0x00000000 
+ 00010987  0x00001a1e hfetch  0x00000008 , 0x00008140 
+ 00010988  0x00001a1f store  0x00000008 , 0x000000a1 
+ 00010989  0x00001a20 call  0x000064ca 
+ 00010990  0x00001a21 rtn 
+ 00010991  0x00001a24 deposit  0x00000000 
+ 00010992  0x00001a25 store  0x00000008 , 0x00004190 
+ 00010993  0x00001a26 hfetch  0x00000008 , 0x00008070 
+ 00010994  0x00001a27 store  0x00000008 , 0x0000417d 
+ 00010995  0x00001a28 ifetch  0x00000008 , 0x00000006 
+ 00010996  0x00001a29 istore  0x00000008 , 0x00000005 
+ 00010997  0x00001a2a hfetch  0x00000003 , 0x00008080 
+ 00010998  0x00001a2b store  0x00000003 , 0x0000418d 
+ 00010999  0x00001a2c hfetch  0x00000001 , 0x00008086 
+ 00011000  0x00001a2d store  0x00000001 , 0x00004198 
+ 00011001  0x00001a2e branch  0x00002c29 
+ 00011002  0x00001a31 hfetch  0x00000001 , 0x00008063 
+ 00011003  0x00001a32 nbranch  0x00002b00 , 0x00000034 
+ 00011004  0x00001a33 fetch  0x00000003 , 0x0000416f 
+ 00011005  0x00001a34 nrtn  0x00000034 
+ 00011006  0x00001a35 jam  0x000000c0 , 0x00008063 
+ 00011007  0x00001a36 jam  0x00000080 , 0x00008006 
+ 00011008  0x00001a38 hfetch  0x00000001 , 0x0000812d 
+ 00011009  0x00001a39 rtnbit0  0x00000001 
+ 00011010  0x00001a3a hfetch  0x00000003 , 0x00008149 
+ 00011011  0x00001a3b store  0x00000003 , 0x0000416f 
+ 00011012  0x00001a3c rtn 
+ 00011013  0x00001a41 bpatch  0x000000a3 , 0x00004014 
+ 00011014  0x00001a42 deposit  0x0000001a 
+ 00011015  0x00001a43 call  0x00007f37 
+ 00011016  0x00001a44 fetcht  0x00000004 , 0x0000415f 
+ 00011017  0x00001a45 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00011018  0x00001a46 rtn  0x00000002 
+ 00011019  0x00001a47 lshift8  0x0000003f , 0x0000003f 
+ 00011020  0x00001a48 lshift4  0x0000003f , 0x0000003f 
+ 00011021  0x00001a49 idiv  0x00000002 
+ 00011022  0x00001a4a call  0x00007f86 
+ 00011023  0x00001a4b quotient  0x0000003f 
+ 00011024  0x00001a4c arg  0x000000c8 , 0x00000002 
+ 00011025  0x00001a4d call  0x00007f91 
+ 00011026  0x00001a4e store  0x00000001 , 0x00000099 
+ 00011027  0x00001a4f nbranch  0x00002b15 , 0x00000028 
+ 00011028  0x00001a50 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00011029  0x00001a52 fetcht  0x00000003 , 0x0000416f 
+ 00011030  0x00001a53 iadd  0x00000002 , 0x0000003f 
+ 00011031  0x00001a54 store  0x00000003 , 0x0000416f 
+ 00011032  0x00001a56 setarg  0x00000000 
+ 00011033  0x00001a57 store  0x00000004 , 0x0000415f 
+ 00011034  0x00001a58 rtn 
+ 00011035  0x00001a5d fetch  0x00000001 , 0x00004177 
+ 00011036  0x00001a5e set1  0x00000002 , 0x0000003f 
+ 00011037  0x00001a5f store  0x00000001 , 0x00004177 
+ 00011038  0x00001a60 branch  0x00002b23 
+ 00011039  0x00001a65 arg  0xffffffff , 0x00000002 
+ 00011040  0x00001a66 fetch  0x00000001 , 0x00004176 
+ 00011041  0x00001a67 set0  0x00000007 , 0x0000003f 
+ 00011042  0x00001a68 store  0x00000001 , 0x00004176 
+ 00011043  0x00001a6a bpatch  0x000000a4 , 0x00004014 
+ 00011044  0x00001a6b call  0x00002c29 
+ 00011045  0x00001a6c fetch  0x00000001 , 0x00004157 
+ 00011046  0x00001a6d store  0x00000001 , 0x0000417c 
+ 00011047  0x00001a6e fetch  0x00000001 , 0x0000417a 
+ 00011048  0x00001a6f set1  0x00000007 , 0x0000003f 
+ 00011049  0x00001a70 store  0x00000001 , 0x0000417a 
+ 00011050  0x00001a74 bpatch  0x000000a5 , 0x00004014 
+ 00011051  0x00001a75 call  0x000029e7 
+ 00011052  0x00001a76 fetch  0x00000004 , 0x0000415f 
+ 00011053  0x00001a77 iadd  0x00000002 , 0x0000003f 
+ 00011054  0x00001a78 store  0x00000004 , 0x0000415f 
+ 00011055  0x00001a79 call  0x00002aef 
+ 00011056  0x00001a7a fetch  0x00000005 , 0x00004178 
+ 00011057  0x00001a7b hstore  0x00000004 , 0x0000804c 
+ 00011058  0x00001a7c rshift32  0x0000003f , 0x00000011 
+ 00011059  0x00001a7d until  0x0000003e , 0x00000033 
+ 00011060  0x00001a7e deposit  0x00000019 
+ 00011061  0x00001a7f store  0x00000006 , 0x00004163 
+ 00011062  0x00001a80 jam  0x00000002 , 0x00008005 
+ 00011063  0x00001a81 until  0x0000003e , 0x00000033 
+ 00011064  0x00001a82 until  0x0000003e , 0x00000033 
+ 00011065  0x00001a83 deposit  0x00000011 
+ 00011066  0x00001a84 hstore  0x00000001 , 0x0000804f 
+ 00011067  0x00001a85 jam  0x00000002 , 0x00008005 
+ 00011068  0x00001a87 until  0x0000003e , 0x00000033 
+ 00011069  0x00001a88 until  0x0000003e , 0x00000033 
+ 00011070  0x00001a89 hstoret  0x00000004 , 0x0000804c 
+ 00011071  0x00001a8a jam  0x00000010 , 0x00008005 
+ 00011072  0x00001a8b until  0x0000003e , 0x0000003f 
+ 00011073  0x00001a91 bpatch  0x000000a6 , 0x00004014 
+ 00011074  0x00001a92 setarg  0x00000000 
+ 00011075  0x00001a93 copy  0x00000027 , 0x0000003e 
+ 00011076  0x00001a94 branch  0x00002b4c , 0x00000005 
+ 00011077  0x00001a95 hfetch  0x00000001 , 0x0000813c 
+ 00011078  0x00001a96 hfetcht  0x00000001 , 0x0000813d 
+ 00011079  0x00001a97 isub  0x00000002 , 0x0000003e 
+ 00011080  0x00001a98 branch  0x00002b4a , 0x00000002 
+ 00011081  0x00001a99 deposit  0x00000002 
+ 00011082  0x00001a9b isub  0x00000027 , 0x0000003f 
+ 00011083  0x00001a9c increase  0x00000001 , 0x0000003f 
+ 00011084  0x00001a9e increase  0x00000008 , 0x0000003f 
+ 00011085  0x00001a9f until  0x0000003e , 0x00000033 
+ 00011086  0x00001aa0 iadd  0x00000031 , 0x0000003f 
+ 00011087  0x00001aa1 fetcht  0x00000004 , 0x0000415b 
+ 00011088  0x00001aa2 iadd  0x00000002 , 0x0000003f 
+ 00011089  0x00001aa3 fetcht  0x00000003 , 0x0000416f 
+ 00011090  0x00001aa4 imul32  0x00000002 , 0x0000003f 
+ 00011091  0x00001aa5 rshift8  0x0000003f , 0x0000003f 
+ 00011092  0x00001aa6 rshift4  0x0000003f , 0x0000003f 
+ 00011093  0x00001aa7 increase  0x0000006e , 0x0000003f 
+ 00011094  0x00001aa8 arg  0x00000ea6 , 0x00000002 
+ 00011095  0x00001aa9 idiv  0x00000002 
+ 00011096  0x00001aaa call  0x00007f86 
+ 00011097  0x00001aab quotient  0x0000003f 
+ 00011098  0x00001aac lshift16  0x0000003f , 0x0000003f 
+ 00011099  0x00001aad remainder  0x00000002 
+ 00011100  0x00001aae ior  0x00000002 , 0x0000003f 
+ 00011101  0x00001aaf fetcht  0x00000006 , 0x00004163 
+ 00011102  0x00001ab0 call  0x00007f2c 
+ 00011103  0x00001ab1 copy  0x00000002 , 0x00000019 
+ 00011104  0x00001ab2 fetch  0x00000006 , 0x00004048 
+ 00011105  0x00001ab3 call  0x00002854 
+ 00011106  0x00001ab4 deposit  0x0000001a 
+ 00011107  0x00001ab5 store  0x00000006 , 0x00000a9a 
+ 00011108  0x00001ab6 deposit  0x00000027 
+ 00011109  0x00001ab7 istore  0x00000001 , 0x00000005 
+ 00011110  0x00001ab8 hfetch  0x00000001 , 0x0000811d 
+ 00011111  0x00001ab9 or_into  0x000000f0 , 0x0000003f 
+ 00011112  0x00001aba istore  0x00000001 , 0x00000005 
+ 00011113  0x00001abb rtn 
+ 00011114  0x00001abe bpatch  0x000000a7 , 0x00004014 
+ 00011115  0x00001abf call  0x00002afa 
+ 00011116  0x00001ac0 fetch  0x00000003 , 0x0000416f 
+ 00011117  0x00001ac1 rtn  0x00000034 
+ 00011118  0x00001ac2 fetch  0x00000001 , 0x00004091 
+ 00011119  0x00001ac3 rtn  0x00000034 
+ 00011120  0x00001ac4 fetch  0x00000001 , 0x0000465a 
+ 00011121  0x00001ac5 branch  0x00002b74 , 0x00000034 
+ 00011122  0x00001ac6 fetch  0x00000001 , 0x000045b1 
+ 00011123  0x00001ac7 rtn  0x00000034 
+ 00011124  0x00001ac9 fetch  0x00000001 , 0x000044c0 
+ 00011125  0x00001aca nrtn  0x00000034 
+ 00011126  0x00001acb call  0x00002c3a 
+ 00011127  0x00001acc nrtn  0x00000034 
+ 00011128  0x00001acd fetch  0x00000001 , 0x00004040 
+ 00011129  0x00001ace compare  0x00000003 , 0x0000003f , 0x00000007 
+ 00011130  0x00001acf nbranch  0x00002b9d , 0x00000001 
+ 00011131  0x00001ad0 fetch  0x00000002 , 0x00004042 
+ 00011132  0x00001ad1 rtn  0x00000034 
+ 00011133  0x00001ad2 rtn  0x0000002b 
+ 00011134  0x00001ad3 bpatch  0x000000a8 , 0x00004015 
+ 00011135  0x00001ad5 fetcht  0x00000001 , 0x000000a0 
+ 00011136  0x00001ad6 fetch  0x00000002 , 0x00004042 
+ 00011137  0x00001ad7 imul32  0x00000002 , 0x0000003f 
+ 00011138  0x00001ad8 rshift4  0x00000002 , 0x00000002 
+ 00011139  0x00001ad9 rshift2  0x00000002 , 0x00000002 
+ 00011140  0x00001ada isub  0x00000002 , 0x0000003f 
+ 00011141  0x00001adb fetcht  0x00000004 , 0x00004044 
+ 00011142  0x00001adc iadd  0x00000002 , 0x0000003f 
+ 00011143  0x00001add fetcht  0x00000001 , 0x00004156 
+ 00011144  0x00001ade isub  0x00000002 , 0x0000003f 
+ 00011145  0x00001adf lshift16  0x0000003f , 0x00000030 
+ 00011146  0x00001ae0 bpatch  0x000000a9 , 0x00004015 
+ 00011147  0x00001ae1 fetch  0x00000002 , 0x0000404e 
+ 00011148  0x00001ae2 rshift  0x0000003f , 0x0000003f 
+ 00011149  0x00001ae3 call  0x00007f50 
+ 00011150  0x00001ae4 deposit  0x00000030 
+ 00011151  0x00001ae5 call  0x00007f39 
+ 00011152  0x00001ae6 copy  0x0000001a , 0x00000002 
+ 00011153  0x00001ae7 call  0x00007f37 
+ 00011154  0x00001ae8 rtn  0x00000028 
+ 00011155  0x00001aea call  0x00007f49 
+ 00011156  0x00001aec bpatch  0x000000aa , 0x00004015 
+ 00011157  0x00001aed fetch  0x00000001 , 0x00004178 
+ 00011158  0x00001aee isub  0x00000002 , 0x0000003e 
+ 00011159  0x00001aef branch  0x00002b18 , 0x00000002 
+ 00011160  0x00001af0 storet  0x00000004 , 0x0000415b 
+ 00011161  0x00001af1 call  0x00003328 
+ 00011162  0x00001af2 call  0x000052fb 
+ 00011163  0x00001af3 fetcht  0x00000004 , 0x0000415b 
+ 00011164  0x00001af4 branch  0x00002b2a 
+ 00011165  0x00001af7 bpatch  0x000000ab , 0x00004015 
+ 00011166  0x00001af8 fetch  0x00000001 , 0x00004040 
+ 00011167  0x00001af9 rtnbit1  0x00000000 
+ 00011168  0x00001afa rtnbit1  0x00000003 
+ 00011169  0x00001afb fetch  0x00000001 , 0x0000465a 
+ 00011170  0x00001afc branch  0x00002ba5 , 0x00000034 
+ 00011171  0x00001afd fetch  0x00000001 , 0x000045b1 
+ 00011172  0x00001afe rtn  0x00000034 
+ 00011173  0x00001b00 bpatch  0x000000ac , 0x00004015 
+ 00011174  0x00001b01 fetch  0x00000001 , 0x0000436e 
+ 00011175  0x00001b02 nbranch  0x00002baa , 0x00000034 
+ 00011176  0x00001b03 fetch  0x00000001 , 0x00004093 
+ 00011177  0x00001b04 rtn  0x00000034 
+ 00011178  0x00001b06 fetch  0x00000002 , 0x00004154 
+ 00011179  0x00001b07 rtn  0x00000034 
+ 00011180  0x00001b09 fetcht  0x00000001 , 0x00004156 
+ 00011181  0x00001b0a isub  0x00000002 , 0x0000003f 
+ 00011182  0x00001b0b arg  0x00001d4c , 0x00000002 
+ 00011183  0x00001b0c imul32  0x00000002 , 0x0000003f 
+ 00011184  0x00001b0d branch  0x00002b93 
+ 00011185  0x00001b10 bpatch  0x000000ad , 0x00004015 
+ 00011186  0x00001b11 disable  0x0000002b 
+ 00011187  0x00001b12 fetch  0x00000001 , 0x00000030 
+ 00011188  0x00001b13 rtnbit0  0x00000001 
+ 00011189  0x00001b14 nbranch  0x00002bd0 , 0x0000002d 
+ 00011190  0x00001b15 call  0x00002bcb 
+ 00011191  0x00001b16 fetch  0x00000002 , 0x000040c1 
+ 00011192  0x00001b17 store  0x00000002 , 0x0000003e 
+ 00011193  0x00001b18 fetch  0x00000001 , 0x00000047 
+ 00011194  0x00001b19 bbit1  0x00000003 , 0x00002bde 
+ 00011195  0x00001b1a bmark0  0x0000000d , 0x00002bde 
+ 00011196  0x00001b1b call  0x00005274 
+ 00011197  0x00001b1c nbranch  0x00002bde , 0x00000034 
+ 00011198  0x00001b1d fetch  0x00000001 , 0x0000455c 
+ 00011199  0x00001b1e bbit1  0x00000001 , 0x00002bde 
+ 00011200  0x00001b20 jam  0x00000000 , 0x000000a0 
+ 00011201  0x00001b21 bmark0  0x0000000d , 0x00002bde 
+ 00011202  0x00001b22 fetch  0x00000001 , 0x00004174 
+ 00011203  0x00001b23 branch  0x00002be2 , 0x00000034 
+ 00011204  0x00001b24 increase  0xffffffff , 0x0000003f 
+ 00011205  0x00001b25 store  0x00000001 , 0x00004174 
+ 00011206  0x00001b26 rtn 
+ 00011207  0x00001b2a arg  0x00000001 , 0x00000007 
+ 00011208  0x00001b2b branch  0x000060cd 
+ 00011209  0x00001b2e arg  0x00000001 , 0x00000007 
+ 00011210  0x00001b2f branch  0x000060d1 
+ 00011211  0x00001b34 jam  0x00000000 , 0x00004159 
+ 00011212  0x00001b35 fetch  0x00000003 , 0x00004169 
+ 00011213  0x00001b36 increase  0x00000001 , 0x0000003f 
+ 00011214  0x00001b37 store  0x00000003 , 0x00004169 
+ 00011215  0x00001b38 rtn 
+ 00011216  0x00001b3b bpatch  0x000000ae , 0x00004015 
+ 00011217  0x00001b3c fetcht  0x00000002 , 0x000040c1 
+ 00011218  0x00001b3d rshift  0x00000002 , 0x00000002 
+ 00011219  0x00001b3e fetch  0x00000002 , 0x0000003e 
+ 00011220  0x00001b3f iadd  0x00000002 , 0x0000003f 
+ 00011221  0x00001b40 store  0x00000002 , 0x0000003e 
+ 00011222  0x00001b42 jam  0x00000000 , 0x000000a0 
+ 00011223  0x00001b43 fetch  0x00000003 , 0x0000416c 
+ 00011224  0x00001b44 increase  0x00000001 , 0x0000003f 
+ 00011225  0x00001b45 store  0x00000003 , 0x0000416c 
+ 00011226  0x00001b46 fetch  0x00000001 , 0x00004159 
+ 00011227  0x00001b47 increase  0x00000001 , 0x0000003f 
+ 00011228  0x00001b48 store  0x00000001 , 0x00004159 
+ 00011229  0x00001b49 rtn 
+ 00011230  0x00001b4c jam  0x00000000 , 0x000000a0 
+ 00011231  0x00001b4d fetch  0x00000001 , 0x00004173 
+ 00011232  0x00001b4e store  0x00000001 , 0x00004174 
+ 00011233  0x00001b4f rtn 
+ 00011234  0x00001b52 fetcht  0x00000001 , 0x00004172 
+ 00011235  0x00001b53 storet  0x00000001 , 0x000000a0 
+ 00011236  0x00001b54 rtn 
+ 00011237  0x00001b57 bpatch  0x000000af , 0x00004015 
+ 00011238  0x00001b58 fetch  0x00000001 , 0x00004178 
+ 00011239  0x00001b59 nrtn  0x00000034 
+ 00011240  0x00001b5a jam  0x00000006 , 0x00008042 
+ 00011241  0x00001b5b setarg  0x00000f0c 
+ 00011242  0x00001b5c call  0x00002c18 
+ 00011243  0x00001b5d setarg  0x00030d40 
+ 00011244  0x00001b5e call  0x00002a8f 
+ 00011245  0x00001b5f until  0x0000003e , 0x00000033 
+ 00011246  0x00001b60 copy  0x00000031 , 0x00000030 
+ 00011247  0x00001b61 call  0x000029e7 
+ 00011248  0x00001b62 jam  0x00000004 , 0x00008042 
+ 00011249  0x00001b63 nop  0x0000000a 
+ 00011250  0x00001b64 until  0x0000003e , 0x00000033 
+ 00011251  0x00001b65 deposit  0x00000031 
+ 00011252  0x00001b66 isub  0x00000030 , 0x0000003f 
+ 00011253  0x00001b67 increase  0x00000030 , 0x0000003f 
+ 00011254  0x00001b68 arg  0x000000ff , 0x00000002 
+ 00011255  0x00001b69 call  0x00007f91 
+ 00011256  0x00001b6a store  0x00000001 , 0x00004178 
+ 00011257  0x00001b6b nop  0x00007530 
+ 00011258  0x00001b6c nop  0x00007530 
+ 00011259  0x00001b6d nop  0x00007530 
+ 00011260  0x00001b6e rtn 
+ 00011261  0x00001b71 fetch  0x00000001 , 0x00004178 
+ 00011262  0x00001b72 nrtn  0x00000034 
+ 00011263  0x00001b73 jam  0x000000ff , 0x00008044 
+ 00011264  0x00001b74 jam  0x00000006 , 0x00008042 
+ 00011265  0x00001b75 call  0x000029e7 
+ 00011266  0x00001b76 setarg  0x000003e8 
+ 00011267  0x00001b77 iadd  0x00000031 , 0x00000030 
+ 00011268  0x00001b78 snooze 
+ 00011269  0x00001b79 deposit  0x00000031 
+ 00011270  0x00001b7a nop  0x00002ee0 
+ 00011271  0x00001b7b nop  0x00002ee0 
+ 00011272  0x00001b7c nop  0x00002ee0 
+ 00011273  0x00001b7d nop  0x00002ee0 
+ 00011274  0x00001b7e nop  0x00002ee0 
+ 00011275  0x00001b7f nop  0x00002ee0 
+ 00011276  0x00001b80 nop  0x00002ee0 
+ 00011277  0x00001b81 nop  0x00002ee0 
+ 00011278  0x00001b82 nop  0x00002ee0 
+ 00011279  0x00001b83 isub  0x00000030 , 0x0000003f 
+ 00011280  0x00001b84 add  0x0000003f , 0x00000030 , 0x0000003f 
+ 00011281  0x00001b85 arg  0x000000ff , 0x00000002 
+ 00011282  0x00001b86 call  0x00007f91 
+ 00011283  0x00001b87 store  0x00000001 , 0x00004178 
+ 00011284  0x00001b88 nop  0x00007530 
+ 00011285  0x00001b89 nop  0x00007530 
+ 00011286  0x00001b8a nop  0x00007530 
+ 00011287  0x00001b8b rtn 
+ 00011288  0x00001b91 arg  0x00000fff , 0x00000005 
+ 00011289  0x00001b92 iand  0x00000005 , 0x00000005 
+ 00011290  0x00001b93 fetch  0x00000001 , 0x00004175 
+ 00011291  0x00001b94 and_into  0x000000f0 , 0x0000003f 
+ 00011292  0x00001b95 lshift8  0x0000003f , 0x0000003f 
+ 00011293  0x00001b96 ior  0x00000005 , 0x0000003f 
+ 00011294  0x00001b97 hstore  0x00000002 , 0x0000804c 
+ 00011295  0x00001b98 ifetch  0x00000002 , 0x00000006 
+ 00011296  0x00001b99 istore  0x00000002 , 0x00000005 
+ 00011297  0x00001b9c setarg  0x00000001 
+ 00011298  0x00001b9d branch  0x00002c24 
+ 00011299  0x00001ba0 setarg  0x00000002 
+ 00011300  0x00001ba2 until  0x0000003e , 0x00000033 
+ 00011301  0x00001ba3 hstore  0x00000001 , 0x00008005 
+ 00011302  0x00001ba4 until  0x0000003e , 0x00000033 
+ 00011303  0x00001ba5 until  0x0000003e , 0x00000033 
+ 00011304  0x00001ba6 rtn 
+ 00011305  0x00001baa bpatch  0x000000b0 , 0x00004016 
+ 00011306  0x00001bab fetch  0x00000004 , 0x000000a1 
+ 00011307  0x00001bac hstore  0x00000004 , 0x0000804c 
+ 00011308  0x00001bad setarg  0x00000004 
+ 00011309  0x00001bae call  0x00002c24 
+ 00011310  0x00001baf fetch  0x00000004 , 0x000000a5 
+ 00011311  0x00001bb0 hstore  0x00000004 , 0x0000804c 
+ 00011312  0x00001bb1 setarg  0x00000008 
+ 00011313  0x00001bb2 branch  0x00002c24 
+ 00011314  0x00001bb5 fetch  0x00000002 , 0x00004152 
+ 00011315  0x00001bb6 qset1  0x0000003f 
+ 00011316  0x00001bb7 store  0x00000002 , 0x00004152 
+ 00011317  0x00001bb8 rtn 
+ 00011318  0x00001bbb fetch  0x00000002 , 0x00004152 
+ 00011319  0x00001bbc qset0  0x0000003f 
+ 00011320  0x00001bbd store  0x00000002 , 0x00004152 
+ 00011321  0x00001bbe rtn 
+ 00011322  0x00001bc3 bpatch  0x000000b1 , 0x00004016 
+ 00011323  0x00001bc4 call  0x00003326 
+ 00011324  0x00001bc5 fetch  0x00000002 , 0x00004152 
+ 00011325  0x00001bc6 copy  0x0000003f , 0x00000011 
+ 00011326  0x00001bc7 fetch  0x00000001 , 0x0000004c 
+ 00011327  0x00001bc8 isolate1  0x00000006 , 0x0000003f 
+ 00011328  0x00001bc9 setflag  0x00000001 , 0x0000000b , 0x00000011 
+ 00011329  0x00001bca fetch  0x00000001 , 0x00000078 
+ 00011330  0x00001bcb fetcht  0x00000001 , 0x0000007c 
+ 00011331  0x00001bcc iadd  0x00000002 , 0x0000003f 
+ 00011332  0x00001bcd fetcht  0x00000001 , 0x00000048 
+ 00011333  0x00001bce iadd  0x00000002 , 0x0000003f 
+ 00011334  0x00001bcf nsetflag  0x00000034 , 0x0000000a , 0x00000011 
+ 00011335  0x00001bd0 fetch  0x00000001 , 0x000044ff 
+ 00011336  0x00001bd1 nsetflag  0x00000034 , 0x00000001 , 0x00000011 
+ 00011337  0x00001bd2 fetch  0x00000002 , 0x0000025d 
+ 00011338  0x00001bd3 fetcht  0x00000002 , 0x0000025f 
+ 00011339  0x00001bd4 iadd  0x00000002 , 0x0000003f 
+ 00011340  0x00001bd5 nsetflag  0x00000034 , 0x0000000d , 0x00000011 
+ 00011341  0x00001bd6 fetch  0x00000008 , 0x00004668 
+ 00011342  0x00001bd7 nsetflag  0x00000034 , 0x0000000f , 0x00000011 
+ 00011343  0x00001bd8 fetch  0x00000008 , 0x00004670 
+ 00011344  0x00001bd9 nsetflag  0x00000034 , 0x0000000e , 0x00000011 
+ 00011345  0x00001bda fetch  0x00000001 , 0x000041ce 
+ 00011346  0x00001bdb nsetflag  0x00000034 , 0x00000008 , 0x00000011 
+ 00011347  0x00001bdc fetch  0x00000001 , 0x00004092 
+ 00011348  0x00001bdd compare  0x0000000a , 0x0000003f , 0x000000ff 
+ 00011349  0x00001bde call  0x00002c5b , 0x00000001 
+ 00011350  0x00001bdf setarg  0xfffffff8 
+ 00011351  0x00001be0 iand  0x00000011 , 0x00000011 
+ 00011352  0x00001be1 copy  0x00000011 , 0x0000003f 
+ 00011353  0x00001be2 store  0x00000002 , 0x00004152 
+ 00011354  0x00001be3 rtn 
+ 00011355  0x00001be6 hfetch  0x00000002 , 0x00008112 
+ 00011356  0x00001be7 nsetflag  0x00000034 , 0x00000006 , 0x00000011 
+ 00011357  0x00001be8 hfetch  0x00000002 , 0x0000810e 
+ 00011358  0x00001be9 nsetflag  0x00000034 , 0x00000005 , 0x00000011 
+ 00011359  0x00001bea rtn 
+ 00011360  0x00001bed hfetch  0x00000004 , 0x00008138 
+ 00011361  0x00001bee set0  0x0000001b , 0x0000003f 
+ 00011362  0x00001bef hstore  0x00000004 , 0x0000804c 
+ 00011363  0x00001bf0 call  0x00002c21 
+ 00011364  0x00001bf1 branch  0x00002a8c 
+ 00011365  0x00001bf4 hfetch  0x00000004 , 0x0000813c 
+ 00011366  0x00001bf5 set0  0x00000014 , 0x0000003f 
+ 00011367  0x00001bf6 hstore  0x00000004 , 0x0000804c 
+ 00011368  0x00001bf7 branch  0x00002c23 
+ 00011369  0x00001bfa fetch  0x00000002 , 0x00004150 
+ 00011370  0x00001bfb bbit1  0x00000000 , 0x00002a8c 
+ 00011371  0x00001bfc rtn 
+ 00011372  0x00001bfe fetch  0x00000002 , 0x00004150 
+ 00011373  0x00001bff bbit1  0x00000001 , 0x00002a8c 
+ 00011374  0x00001c00 rtn 
+ 00011375  0x00001c02 fetch  0x00000002 , 0x00004150 
+ 00011376  0x00001c03 bbit1  0x00000002 , 0x00002a8c 
+ 00011377  0x00001c04 rtn 
+ 00011378  0x00001c42 bpatch  0x000000b2 , 0x00004016 
+ 00011379  0x00001c43 call  0x00002c7a 
+ 00011380  0x00001c44 add  0x00000013 , 0x000000cd , 0x00000012 
+ 00011381  0x00001c45 ifetch  0x00000001 , 0x00000012 
+ 00011382  0x00001c47 rtneq  0x00000000 
+ 00011383  0x00001c48 beq  0x00000001 , 0x00002d06 
+ 00011384  0x00001c49 beq  0x00000002 , 0x00002c7f 
+ 00011385  0x00001c4a rtn 
+ 00011386  0x00001c4d fetcht  0x00000002 , 0x00004241 
+ 00011387  0x00001c4e copy  0x00000002 , 0x00000013 
+ 00011388  0x00001c4f rtn 
+ 00011389  0x00001c52 call  0x00002f3d 
+ 00011390  0x00001c53 branch  0x0000307d 
+ 00011391  0x00001c56 call  0x00003084 
+ 00011392  0x00001c57 call  0x0000305a 
+ 00011393  0x00001c58 call  0x0000305e 
+ 00011394  0x00001c59 branch  0x000030a2 
+ 00011395  0x00001c5f call  0x00003231 
+ 00011396  0x00001c60 setarg  0x0000004e 
+ 00011397  0x00001c61 call  0x0000322f 
+ 00011398  0x00001c62 call  0x000032ba 
+ 00011399  0x00001c65 add  0x00000013 , 0x00000092 , 0x00000011 
+ 00011400  0x00001c66 ifetch  0x00000004 , 0x00000011 
+ 00011401  0x00001c67 branch  0x0000322c 
+ 00011402  0x00001c6a call  0x00002c7a 
+ 00011403  0x00001c6b add  0x00000013 , 0x00000091 , 0x00000012 
+ 00011404  0x00001c6c ifetcht  0x00000001 , 0x00000012 
+ 00011405  0x00001c6e call  0x00002c90 
+ 00011406  0x00001c6f add  0x00000013 , 0x00000091 , 0x00000005 
+ 00011407  0x00001c71 branch  0x00002e56 
+ 00011408  0x00001c74 call  0x00002c94 
+ 00011409  0x00001c75 increase  0x00000001 , 0x00000002 
+ 00011410  0x00001c76 and_into  0x00000003 , 0x00000002 
+ 00011411  0x00001c77 rtn 
+ 00011412  0x00001c7a add  0x00000013 , 0x000000ae , 0x00000012 
+ 00011413  0x00001c7b ifetch  0x00000001 , 0x00000012 
+ 00011414  0x00001c7d and_into  0x00000003 , 0x0000003f 
+ 00011415  0x00001c7e mul32  0x0000003f , 0x00000004 , 0x00000011 
+ 00011416  0x00001c7f add  0x00000013 , 0x00000097 , 0x0000003f 
+ 00011417  0x00001c81 iadd  0x00000011 , 0x0000003f 
+ 00011418  0x00001c82 iadd  0x00000002 , 0x00000006 
+ 00011419  0x00001c83 ifetch  0x00000001 , 0x00000006 
+ 00011420  0x00001c85 branch  0x0000322f 
+ 00011421  0x00001c88 call  0x0000326c 
+ 00011422  0x00001c89 call  0x0000666a 
+ 00011423  0x00001c8a setarg  0x000007e2 
+ 00011424  0x00001c8b arg  0x00000aa2 , 0x00000011 
+ 00011425  0x00001c8c arg  0x00000004 , 0x00000002 
+ 00011426  0x00001c8d call  0x000066b3 
+ 00011427  0x00001c8e call  0x0000666d 
+ 00011428  0x00001c8f fetch  0x00000004 , 0x00000aa2 
+ 00011429  0x00001c90 call  0x00003227 
+ 00011430  0x00001c92 nrtn  0x00000034 
+ 00011431  0x00001c93 fetch  0x00000004 , 0x000040a0 
+ 00011432  0x00001c95 branch  0x00003227 
+ 00011433  0x00001c98 call  0x00003241 
+ 00011434  0x00001c9a setarg  0x00000000 
+ 00011435  0x00001c9b call  0x0000323f 
+ 00011436  0x00001c9e call  0x0000323a 
+ 00011437  0x00001ca0 and_into  0x00000007 , 0x0000003f 
+ 00011438  0x00001ca2 branch  0x0000323c 
+ 00011439  0x00001ca5 call  0x0000323a 
+ 00011440  0x00001ca7 set1  0x00000004 , 0x0000003f 
+ 00011441  0x00001ca8 call  0x0000323c 
+ 00011442  0x00001cab branch  0x00003235 
+ 00011443  0x00001cae call  0x0000325d 
+ 00011444  0x00001cb0 beq  0x00000001 , 0x00002cb7 
+ 00011445  0x00001cb1 beq  0x00000002 , 0x00002cbc 
+ 00011446  0x00001cb2 rtn 
+ 00011447  0x00001cb5 call  0x0000323e 
+ 00011448  0x00001cb8 add  0x00000013 , 0x000000d1 , 0x00000005 
+ 00011449  0x00001cb9 call  0x000032d6 
+ 00011450  0x00001cbb call  0x00003242 
+ 00011451  0x00001cbd branch  0x00002cac 
+ 00011452  0x00001cc0 call  0x0000325a 
+ 00011453  0x00001cc2 branch  0x00002cb8 
+ 00011454  0x00001cc5 add  0x00000013 , 0x0000008c , 0x00000011 
+ 00011455  0x00001cc6 ifetch  0x00000001 , 0x00000011 
+ 00011456  0x00001cc8 increase  0x00000001 , 0x0000003f 
+ 00011457  0x00001cc9 add  0x00000013 , 0x0000008c , 0x00000005 
+ 00011458  0x00001cca istore  0x00000001 , 0x00000005 
+ 00011459  0x00001ccc beq  0x00000020 , 0x00002dd2 
+ 00011460  0x00001ccd call  0x00003258 
+ 00011461  0x00001ccf beq  0x00000001 , 0x00002cca 
+ 00011462  0x00001cd0 setarg  0x00000001 
+ 00011463  0x00001cd1 call  0x0000325b 
+ 00011464  0x00001cd4 call  0x00003258 
+ 00011465  0x00001cd6 bne  0x00000001 , 0x00002cac 
+ 00011466  0x00001cd8 add  0x00000013 , 0x000000d3 , 0x00000011 
+ 00011467  0x00001cd9 ifetch  0x00000001 , 0x00000011 
+ 00011468  0x00001cdb increase  0x00000001 , 0x0000003f 
+ 00011469  0x00001cdc call  0x00002cd5 
+ 00011470  0x00001cde beq  0x00000004 , 0x00002cd2 
+ 00011471  0x00001cdf call  0x00002c8a 
+ 00011472  0x00001ce0 call  0x00002d04 
+ 00011473  0x00001ce2 branch  0x00002d8f 
+ 00011474  0x00001ce5 call  0x00002cd4 
+ 00011475  0x00001ce7 branch  0x00002cac 
+ 00011476  0x00001cea setarg  0x00000000 
+ 00011477  0x00001cec add  0x00000013 , 0x000000d3 , 0x00000005 
+ 00011478  0x00001ced branch  0x000032b4 
+ 00011479  0x00001cf0 call  0x0000323e 
+ 00011480  0x00001cf3 call  0x0000325a 
+ 00011481  0x00001cf5 call  0x00003241 
+ 00011482  0x00001cf7 branch  0x00002cac 
+ 00011483  0x00001cfa call  0x0000325d 
+ 00011484  0x00001cfc beq  0x00000003 , 0x00002cd8 
+ 00011485  0x00001cfd call  0x0000323a 
+ 00011486  0x00001cff isolate0  0x00000004 , 0x0000003f 
+ 00011487  0x00001d00 branch  0x00002ca9 , 0x00000001 
+ 00011488  0x00001d01 call  0x0000325d 
+ 00011489  0x00001d03 beq  0x00000001 , 0x00002cd7 
+ 00011490  0x00001d04 beq  0x00000002 , 0x00002cd8 
+ 00011491  0x00001d05 rtn 
+ 00011492  0x00001d08 call  0x00003253 
+ 00011493  0x00001d0a rtnne  0x000000ff 
+ 00011494  0x00001d0b call  0x00002ce9 
+ 00011495  0x00001d0c ncall  0x00002cf4 , 0x0000002c 
+ 00011496  0x00001d0d rtn 
+ 00011497  0x00001d10 disable  0x0000002c 
+ 00011498  0x00001d11 add  0x00000013 , 0x000000ce , 0x00000011 
+ 00011499  0x00001d12 ifetch  0x00000001 , 0x00000011 
+ 00011500  0x00001d14 rtnne  0x00000001 
+ 00011501  0x00001d15 add  0x00000013 , 0x000000d0 , 0x00000011 
+ 00011502  0x00001d16 ifetch  0x00000001 , 0x00000011 
+ 00011503  0x00001d18 rtnne  0x00000000 
+ 00011504  0x00001d19 setarg  0x00000001 
+ 00011505  0x00001d1a call  0x00002cfd 
+ 00011506  0x00001d1c call  0x00003237 
+ 00011507  0x00001d1e branch  0x00007feb 
+ 00011508  0x00001d21 add  0x00000013 , 0x000000d0 , 0x00000011 
+ 00011509  0x00001d22 ifetch  0x00000001 , 0x00000011 
+ 00011510  0x00001d24 branch  0x00002cff , 0x00000034 
+ 00011511  0x00001d25 increase  0xffffffff , 0x0000003f 
+ 00011512  0x00001d26 call  0x0000323f 
+ 00011513  0x00001d28 setarg  0x00000002 
+ 00011514  0x00001d29 call  0x00002cfd 
+ 00011515  0x00001d2b call  0x00002c8a 
+ 00011516  0x00001d2d branch  0x00003237 
+ 00011517  0x00001d30 add  0x00000013 , 0x000000d2 , 0x00000005 
+ 00011518  0x00001d31 branch  0x000032b4 
+ 00011519  0x00001d35 setarg  0x00000003 
+ 00011520  0x00001d36 call  0x00002cfd 
+ 00011521  0x00001d38 call  0x00003258 
+ 00011522  0x00001d3a nbranch  0x00002cc8 , 0x00000034 
+ 00011523  0x00001d3b call  0x00002c8a 
+ 00011524  0x00001d3e setarg  0x00000002 
+ 00011525  0x00001d3f branch  0x00003238 
+ 00011526  0x00001d42 rtnmark0  0x00000026 
+ 00011527  0x00001d43 set1  0x00000027 , 0x00000000 
+ 00011528  0x00001d44 bpatch  0x000000b3 , 0x00004016 
+ 00011529  0x00001d45 add  0x00000013 , 0x0000008e , 0x00000011 
+ 00011530  0x00001d46 ifetch  0x00000001 , 0x00000011 
+ 00011531  0x00001d48 beq  0x00000001 , 0x00002d0f 
+ 00011532  0x00001d49 call  0x0000306a 
+ 00011533  0x00001d4a nbranch  0x00002d16 , 0x00000028 
+ 00011534  0x00001d4b call  0x00002d1b 
+ 00011535  0x00001d4d add  0x00000013 , 0x0000008e , 0x00000005 
+ 00011536  0x00001d4e call  0x000032d6 
+ 00011537  0x00001d50 call  0x00002d2c 
+ 00011538  0x00001d51 nbranch  0x00002d7d , 0x00000028 
+ 00011539  0x00001d52 call  0x00002ce4 
+ 00011540  0x00001d54 call  0x00002d8f 
+ 00011541  0x00001d55 call  0x00002e7a 
+ 00011542  0x00001d57 set0  0x00000027 , 0x00000000 
+ 00011543  0x00001d58 rtn 
+ 00011544  0x00001d5b rtn  0x00000005 
+ 00011545  0x00001d5c set1  0x0000001c , 0x0000003f 
+ 00011546  0x00001d5d rtn 
+ 00011547  0x00001d60 add  0x00000013 , 0x000000c2 , 0x00000011 
+ 00011548  0x00001d61 ifetch  0x00000001 , 0x00000011 
+ 00011549  0x00001d63 increase  0x00000001 , 0x0000003f 
+ 00011550  0x00001d64 add  0x00000013 , 0x000000c2 , 0x00000005 
+ 00011551  0x00001d65 istore  0x00000001 , 0x00000005 
+ 00011552  0x00001d67 beq  0x00000004 , 0x00002d23 
+ 00011553  0x00001d68 beq  0x00000005 , 0x00002d27 
+ 00011554  0x00001d69 rtn 
+ 00011555  0x00001d6b add  0x00000013 , 0x000000ad , 0x00000011 
+ 00011556  0x00001d6c ifetch  0x00000001 , 0x00000011 
+ 00011557  0x00001d70 add  0x00000013 , 0x000000ab , 0x00000005 
+ 00011558  0x00001d71 branch  0x000032b4 
+ 00011559  0x00001d74 add  0x00000013 , 0x000000c2 , 0x00000005 
+ 00011560  0x00001d75 call  0x000032d6 
+ 00011561  0x00001d77 add  0x00000013 , 0x000000ac , 0x00000011 
+ 00011562  0x00001d78 ifetch  0x00000001 , 0x00000011 
+ 00011563  0x00001d7a branch  0x00002d25 
+ 00011564  0x00001d7d call  0x00003253 
+ 00011565  0x00001d7f bne  0x000000ff , 0x00002eb1 
+ 00011566  0x00001d80 bpatch  0x000000b4 , 0x00004016 
+ 00011567  0x00001d81 call  0x00002d3a 
+ 00011568  0x00001d82 nbranch  0x00002d36 , 0x00000028 
+ 00011569  0x00001d83 call  0x00002d53 
+ 00011570  0x00001d84 call  0x00002e71 
+ 00011571  0x00001d87 setarg  0x00000001 
+ 00011572  0x00001d89 add  0x00000013 , 0x0000008b , 0x00000005 
+ 00011573  0x00001d8a branch  0x000032b4 
+ 00011574  0x00001d8d add  0x00000013 , 0x0000008b , 0x00000011 
+ 00011575  0x00001d8e ifetch  0x00000001 , 0x00000011 
+ 00011576  0x00001d90 beq  0x00000001 , 0x00007fe7 
+ 00011577  0x00001d91 rtn 
+ 00011578  0x00001d95 add  0x00000013 , 0x000000d8 , 0x00000002 
+ 00011579  0x00001d96 ifetch  0x00000002 , 0x00000002 
+ 00011580  0x00001d98 call  0x00007f9c 
+ 00011581  0x00001d99 nrtn  0x00000028 
+ 00011582  0x00001d9a copy  0x00000011 , 0x0000003f 
+ 00011583  0x00001d9b store  0x00000001 , 0x00000aae 
+ 00011584  0x00001d9c add  0x00000013 , 0x000000b2 , 0x00000005 
+ 00011585  0x00001d9d call  0x000032d6 
+ 00011586  0x00001d9f call  0x00002cac 
+ 00011587  0x00001da0 store  0x00000001 , 0x0000119e 
+ 00011588  0x00001da1 fetch  0x00000001 , 0x00000aae 
+ 00011589  0x00001da2 copy  0x0000003f , 0x00000011 
+ 00011590  0x00001da3 add  0x00000011 , 0x00000001 , 0x00000002 
+ 00011591  0x00001da4 arg  0x0000119f , 0x00000005 
+ 00011592  0x00001da5 copy  0x00000011 , 0x00000039 
+ 00011593  0x00001da6 copy  0x00000012 , 0x00000006 
+ 00011594  0x00001da7 call  0x00007f01 
+ 00011595  0x00001da8 arg  0x0000119e , 0x00000011 
+ 00011596  0x00001daa rtnmark0  0x00000027 
+ 00011597  0x00001dab add  0x00000013 , 0x00000086 , 0x00000005 
+ 00011598  0x00001dac istoret  0x00000001 , 0x00000005 
+ 00011599  0x00001dae copy  0x00000002 , 0x00000039 
+ 00011600  0x00001daf add  0x00000013 , 0x00000022 , 0x00000005 
+ 00011601  0x00001db1 copy  0x00000011 , 0x00000006 
+ 00011602  0x00001db2 branch  0x00007f01 
+ 00011603  0x00001db6 add  0x00000013 , 0x00000086 , 0x00000011 
+ 00011604  0x00001db7 ifetch  0x00000001 , 0x00000011 
+ 00011605  0x00001db9 increase  0x00000002 , 0x0000003f 
+ 00011606  0x00001dba add  0x00000013 , 0x00000088 , 0x00000005 
+ 00011607  0x00001dbb istore  0x00000001 , 0x00000005 
+ 00011608  0x00001dbe call  0x0000323a 
+ 00011609  0x00001dc0 call  0x00003235 
+ 00011610  0x00001dc3 add  0x00000013 , 0x00000086 , 0x00000011 
+ 00011611  0x00001dc4 ifetch  0x00000001 , 0x00000011 
+ 00011612  0x00001dc6 lshift3  0x0000003f , 0x0000003f 
+ 00011613  0x00001dc7 add  0x00000013 , 0x00000085 , 0x00000011 
+ 00011614  0x00001dc8 ifetcht  0x00000001 , 0x00000011 
+ 00011615  0x00001dca and  0x00000002 , 0x00000003 , 0x00000002 
+ 00011616  0x00001dcb lshift  0x00000002 , 0x00000002 
+ 00011617  0x00001dcc ior  0x00000002 , 0x0000003f 
+ 00011618  0x00001dcd add  0x00000013 , 0x000000c3 , 0x00000011 
+ 00011619  0x00001dce ifetcht  0x00000001 , 0x00000011 
+ 00011620  0x00001dd0 iadd  0x00000002 , 0x0000003f 
+ 00011621  0x00001dd1 istore  0x00000001 , 0x00000005 
+ 00011622  0x00001dd3 add  0x00000013 , 0x00000086 , 0x00000011 
+ 00011623  0x00001dd4 ifetch  0x00000001 , 0x00000011 
+ 00011624  0x00001dd6 iforce  0x00000039 
+ 00011625  0x00001dd7 add  0x00000013 , 0x00000022 , 0x00000006 
+ 00011626  0x00001dd9 branch  0x00007f01 
+ 00011627  0x00001ddc call  0x0000324f 
+ 00011628  0x00001dde call  0x0000325a 
+ 00011629  0x00001de0 call  0x00002e6d 
+ 00011630  0x00001de1 call  0x00002cac 
+ 00011631  0x00001de2 store  0x00000001 , 0x0000119e 
+ 00011632  0x00001de3 call  0x00002d77 
+ 00011633  0x00001de4 call  0x0000323a 
+ 00011634  0x00001de6 set1  0x00000003 , 0x0000003f 
+ 00011635  0x00001de7 call  0x0000323c 
+ 00011636  0x00001de9 call  0x00002d53 
+ 00011637  0x00001dea call  0x00002d33 
+ 00011638  0x00001deb branch  0x00002d14 
+ 00011639  0x00001dee store  0x00000001 , 0x0000119f 
+ 00011640  0x00001def call  0x00003224 
+ 00011641  0x00001df1 store  0x00000004 , 0x000011a0 
+ 00011642  0x00001df2 arg  0x00000006 , 0x00000002 
+ 00011643  0x00001df3 arg  0x0000119e , 0x00000011 
+ 00011644  0x00001df4 branch  0x00002d4c 
+ 00011645  0x00001df7 add  0x00000013 , 0x000000b2 , 0x00000011 
+ 00011646  0x00001df8 ifetch  0x00000001 , 0x00000011 
+ 00011647  0x00001dfa branch  0x00002d6b , 0x00000034 
+ 00011648  0x00001dfd add  0x00000013 , 0x000000da , 0x00000011 
+ 00011649  0x00001dfe ifetch  0x00000002 , 0x00000011 
+ 00011650  0x00001e00 branch  0x00007f9c 
+ 00011651  0x00001e03 call  0x00002c7a 
+ 00011652  0x00001e05 call  0x00002afa 
+ 00011653  0x00001e06 fetch  0x00000003 , 0x0000416f 
+ 00011654  0x00001e07 rtn  0x00000034 
+ 00011655  0x00001e08 add  0x00000013 , 0x000000dc , 0x00000002 
+ 00011656  0x00001e09 ifetch  0x00000002 , 0x00000002 
+ 00011657  0x00001e0b call  0x00007f9c 
+ 00011658  0x00001e0c add  0x00000013 , 0x000000b6 , 0x00000002 
+ 00011659  0x00001e0d ifetch  0x00000008 , 0x00000002 
+ 00011660  0x00001e0e call  0x00007f49 
+ 00011661  0x00001e0f storet  0x00000004 , 0x0000415b 
+ 00011662  0x00001e10 branch  0x00002b2a 
+ 00011663  0x00001e13 call  0x00002c7a 
+ 00011664  0x00001e14 add  0x00000013 , 0x0000008f , 0x00000005 
+ 00011665  0x00001e15 call  0x000032d6 
+ 00011666  0x00001e18 call  0x00002da4 
+ 00011667  0x00001e19 nbranch  0x00002dae , 0x00000018 
+ 00011668  0x00001e1a nbranch  0x00002dae , 0x0000002f 
+ 00011669  0x00001e1b call  0x00002dd6 
+ 00011670  0x00001e1c call  0x00002e75 
+ 00011671  0x00001e1e call  0x00002c7a 
+ 00011672  0x00001e1f add  0x00000013 , 0x00000085 , 0x00000011 
+ 00011673  0x00001e20 ifetch  0x00000001 , 0x00000011 
+ 00011674  0x00001e22 increase  0x00000001 , 0x0000003f 
+ 00011675  0x00001e23 call  0x00003232 
+ 00011676  0x00001e25 call  0x00003253 
+ 00011677  0x00001e27 bne  0x000000ff , 0x00002ed0 
+ 00011678  0x00001e28 call  0x00002cdb 
+ 00011679  0x00001e2a setarg  0x00000000 
+ 00011680  0x00001e2b add  0x00000013 , 0x0000008c , 0x00000005 
+ 00011681  0x00001e2c istore  0x00000002 , 0x00000005 
+ 00011682  0x00001e30 setarg  0x00000000 
+ 00011683  0x00001e31 branch  0x00002d34 
+ 00011684  0x00001e35 disable  0x0000002f 
+ 00011685  0x00001e36 call  0x00002df7 
+ 00011686  0x00001e37 call  0x00002c7a 
+ 00011687  0x00001e38 add  0x00000013 , 0x000000c3 , 0x00000011 
+ 00011688  0x00001e39 ifetch  0x00000001 , 0x00000011 
+ 00011689  0x00001e3b beq  0x00000001 , 0x00002dac 
+ 00011690  0x00001e3c call  0x00002e11 
+ 00011691  0x00001e3d branch  0x00002e45 
+ 00011692  0x00001e3f call  0x00002e45 
+ 00011693  0x00001e40 branch  0x00002d97 
+ 00011694  0x00001e44 bpatch  0x000000b5 , 0x00004016 
+ 00011695  0x00001e45 add  0x00000013 , 0x0000008d , 0x00000011 
+ 00011696  0x00001e46 ifetch  0x00000001 , 0x00000011 
+ 00011697  0x00001e48 increase  0x00000001 , 0x0000003f 
+ 00011698  0x00001e49 add  0x00000013 , 0x0000008d , 0x00000005 
+ 00011699  0x00001e4a istore  0x00000001 , 0x00000005 
+ 00011700  0x00001e4c call  0x00003253 
+ 00011701  0x00001e4e bne  0x000000ff , 0x00002dcc 
+ 00011702  0x00001e4f add  0x00000013 , 0x0000008f , 0x00000011 
+ 00011703  0x00001e50 ifetcht  0x00000001 , 0x00000011 
+ 00011704  0x00001e52 increase  0x00000001 , 0x00000002 
+ 00011705  0x00001e53 add  0x00000013 , 0x0000008f , 0x00000005 
+ 00011706  0x00001e54 istoret  0x00000001 , 0x00000005 
+ 00011707  0x00001e56 add  0x00000013 , 0x000000cc , 0x00000011 
+ 00011708  0x00001e57 ifetch  0x00000001 , 0x00000011 
+ 00011709  0x00001e59 isub  0x00000002 , 0x0000003f 
+ 00011710  0x00001e5a nbranch  0x00002d92 , 0x00000034 
+ 00011711  0x00001e5b bpatch  0x000000b6 , 0x00004016 
+ 00011712  0x00001e5c call  0x0000325d 
+ 00011713  0x00001e5e beq  0x00000003 , 0x00002cbe 
+ 00011714  0x00001e5f add  0x00000013 , 0x000000d1 , 0x00000011 
+ 00011715  0x00001e60 ifetch  0x00000001 , 0x00000011 
+ 00011716  0x00001e62 increase  0x00000001 , 0x0000003f 
+ 00011717  0x00001e63 add  0x00000013 , 0x000000d1 , 0x00000005 
+ 00011718  0x00001e64 istore  0x00000001 , 0x00000005 
+ 00011719  0x00001e66 beq  0x00000002 , 0x00002cb3 
+ 00011720  0x00001e67 call  0x00002caf 
+ 00011721  0x00001e68 setarg  0x00000001 
+ 00011722  0x00001e69 call  0x00003238 
+ 00011723  0x00001e6b branch  0x00002d8f 
+ 00011724  0x00001e6e add  0x00000013 , 0x0000008d , 0x00000011 
+ 00011725  0x00001e6f ifetch  0x00000001 , 0x00000011 
+ 00011726  0x00001e71 rtnne  0x000000ff 
+ 00011727  0x00001e72 add  0x00000013 , 0x0000008d , 0x00000005 
+ 00011728  0x00001e73 call  0x000032d6 
+ 00011729  0x00001e75 branch  0x00002dd4 
+ 00011730  0x00001e78 add  0x00000013 , 0x0000008c , 0x00000005 
+ 00011731  0x00001e79 call  0x000032d6 
+ 00011732  0x00001e7c jam  0x0000003a , 0x00000a99 
+ 00011733  0x00001e7d branch  0x00007d86 
+ 00011734  0x00001e80 call  0x00002dde 
+ 00011735  0x00001e81 add  0x00000013 , 0x00000084 , 0x00000011 
+ 00011736  0x00001e82 ifetch  0x00000001 , 0x00000011 
+ 00011737  0x00001e84 rtn  0x00000034 
+ 00011738  0x00001e85 iforce  0x00000039 
+ 00011739  0x00001e86 add  0x00000013 , 0x00000002 , 0x00000006 
+ 00011740  0x00001e88 add  0x00000013 , 0x00000064 , 0x00000005 
+ 00011741  0x00001e8a branch  0x00007f01 
+ 00011742  0x00001e8f call  0x0000325f 
+ 00011743  0x00001e91 rshift3  0x0000003f , 0x0000003f 
+ 00011744  0x00001e92 add  0x00000013 , 0x00000084 , 0x00000005 
+ 00011745  0x00001e93 istore  0x00000001 , 0x00000005 
+ 00011746  0x00001e96 increase  0x00000001 , 0x0000003f 
+ 00011747  0x00001e97 add  0x00000013 , 0x00000001 , 0x00000006 
+ 00011748  0x00001e99 iadd  0x00000006 , 0x00000006 
+ 00011749  0x00001e9a ifetch  0x00000003 , 0x00000006 
+ 00011750  0x00001e9b add  0x00000013 , 0x000000c4 , 0x00000005 
+ 00011751  0x00001e9c istore  0x00000003 , 0x00000005 
+ 00011752  0x00001e9f call  0x0000325f 
+ 00011753  0x00001ea1 rshift  0x0000003f , 0x0000003f 
+ 00011754  0x00001ea2 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00011755  0x00001ea3 add  0x00000013 , 0x000000ca , 0x00000005 
+ 00011756  0x00001ea4 istore  0x00000001 , 0x00000005 
+ 00011757  0x00001ea6 rtn 
+ 00011758  0x00001ea9 disable  0x00000009 
+ 00011759  0x00001eaa disable  0x00000007 
+ 00011760  0x00001eab setarg  0x00555555 
+ 00011761  0x00001eac iforce  0x0000000f 
+ 00011762  0x00001ead rtn 
+ 00011763  0x00001eb0 call  0x00002918 
+ 00011764  0x00001eb1 add  0x00000013 , 0x00000090 , 0x00000011 
+ 00011765  0x00001eb2 ifetcht  0x00000001 , 0x00000011 
+ 00011766  0x00001eb4 branch  0x00002933 
+ 00011767  0x00001eb7 call  0x00002dee 
+ 00011768  0x00001eb8 call  0x00002df3 
+ 00011769  0x00001eb9 set1  0x00000000 , 0x00000015 
+ 00011770  0x00001eba enable  0x0000001d 
+ 00011771  0x00001ebb enable  0x00000020 
+ 00011772  0x00001ebc disable  0x00000021 
+ 00011773  0x00001ebd call  0x000053c4 
+ 00011774  0x00001ebe call  0x0000322a 
+ 00011775  0x00001ec0 iforce  0x00000009 
+ 00011776  0x00001ec1 inject  0x00000003 , 0x00000020 
+ 00011777  0x00001ec2 enable  0x00000009 
+ 00011778  0x00001ec3 add  0x00000013 , 0x00000088 , 0x00000011 
+ 00011779  0x00001ec4 ifetch  0x00000001 , 0x00000011 
+ 00011780  0x00001ec6 iforce  0x00000039 
+ 00011781  0x00001ec7 add  0x00000013 , 0x00000042 , 0x00000006 
+ 00011782  0x00001eca ifetch  0x00000001 , 0x00000006 
+ 00011783  0x00001ecb inject  0x00000003 , 0x00000008 
+ 00011784  0x00001ecc loop  0x00002e06 
+ 00011785  0x00001ecd enable  0x00000008 
+ 00011786  0x00001ece inject  0x00000003 , 0x00000018 
+ 00011787  0x00001ecf disable  0x00000008 
+ 00011788  0x00001ed0 until  0x0000003e , 0x00000027 
+ 00011789  0x00001ed1 bpatch  0x000000b7 , 0x00004016 
+ 00011790  0x00001ed2 nop  0x00000064 
+ 00011791  0x00001ed3 disable  0x0000001d 
+ 00011792  0x00001ed4 rtn 
+ 00011793  0x00001ed7 disable  0x0000002f 
+ 00011794  0x00001ed8 force  0x00000000 , 0x00000015 
+ 00011795  0x00001ed9 add  0x00000013 , 0x00000090 , 0x00000011 
+ 00011796  0x00001eda ifetcht  0x00000001 , 0x00000011 
+ 00011797  0x00001edc call  0x0000291f 
+ 00011798  0x00001edd call  0x00002924 
+ 00011799  0x00001edf call  0x00002dee 
+ 00011800  0x00001ee0 enable  0x0000000d 
+ 00011801  0x00001ee1 enable  0x00000021 
+ 00011802  0x00001ee2 disable  0x00000020 
+ 00011803  0x00001ee3 call  0x000053c4 
+ 00011804  0x00001ee4 call  0x0000322a 
+ 00011805  0x00001ee6 iforce  0x00000009 
+ 00011806  0x00001ee7 enable  0x00000010 
+ 00011807  0x00001ee8 add  0x00000013 , 0x00000089 , 0x00000011 
+ 00011808  0x00001ee9 ifetch  0x00000002 , 0x00000011 
+ 00011809  0x00001eeb iforce  0x0000001b 
+ 00011810  0x00001eec correlate  0x0000003e , 0x00000003 
+ 00011811  0x00001eed nbranch  0x00002e4d , 0x00000018 
+ 00011812  0x00001eee enable  0x00000009 
+ 00011813  0x00001eef parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00011814  0x00001ef0 rshift3  0x0000000c , 0x0000003f 
+ 00011815  0x00001ef1 add  0x00000013 , 0x00000000 , 0x00000005 
+ 00011816  0x00001ef2 istore  0x00000001 , 0x00000005 
+ 00011817  0x00001ef4 add  0x00000013 , 0x000000cd , 0x00000011 
+ 00011818  0x00001ef5 ifetch  0x00000001 , 0x00000011 
+ 00011819  0x00001ef7 beq  0x00000002 , 0x00002e33 
+ 00011820  0x00001ef8 bpatch  0x000000b8 , 0x00004017 
+ 00011821  0x00001ef9 add  0x00000013 , 0x00000000 , 0x00000011 
+ 00011822  0x00001efa ifetch  0x00000001 , 0x00000011 
+ 00011823  0x00001efc add  0x00000013 , 0x00000087 , 0x00000011 
+ 00011824  0x00001efd ifetcht  0x00000001 , 0x00000011 
+ 00011825  0x00001eff icompare  0x00000007 , 0x00000002 
+ 00011826  0x00001f00 nbranch  0x00002e45 , 0x00000001 
+ 00011827  0x00001f02 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00011828  0x00001f03 rshift3  0x0000000c , 0x0000003f 
+ 00011829  0x00001f04 istore  0x00000001 , 0x00000005 
+ 00011830  0x00001f05 rshift3  0x0000003f , 0x0000003f 
+ 00011831  0x00001f06 and  0x0000003f , 0x0000001f , 0x00000039 
+ 00011832  0x00001f07 branch  0x00002e3d , 0x00000005 
+ 00011833  0x00001f09 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00011834  0x00001f0a rshift3  0x0000000c , 0x0000003f 
+ 00011835  0x00001f0b istore  0x00000001 , 0x00000005 
+ 00011836  0x00001f0c loop  0x00002e39 
+ 00011837  0x00001f0e parse  0x00000003 , 0x00000000 , 0x00000018 
+ 00011838  0x00001f0f rshift32  0x0000003f , 0x0000003f 
+ 00011839  0x00001f10 rshift16  0x0000003f , 0x0000003f 
+ 00011840  0x00001f11 istore  0x00000003 , 0x00000005 
+ 00011841  0x00001f12 branch  0x00002e45 , 0x00000006 
+ 00011842  0x00001f13 enable  0x0000002f 
+ 00011843  0x00001f14 disable  0x0000000d 
+ 00011844  0x00001f15 rtn 
+ 00011845  0x00001f19 disable  0x0000001d 
+ 00011846  0x00001f1a disable  0x0000000d 
+ 00011847  0x00001f1b disable  0x00000009 
+ 00011848  0x00001f1c disable  0x00000007 
+ 00011849  0x00001f1d branch  0x000028f9 , 0x00000021 
+ 00011850  0x00001f1e until  0x0000003e , 0x00000027 
+ 00011851  0x00001f1f nop  0x00000064 
+ 00011852  0x00001f20 branch  0x000028f9 
+ 00011853  0x00001f23 call  0x00002e4f 
+ 00011854  0x00001f24 branch  0x00002e45 
+ 00011855  0x00001f27 call  0x000029bb 
+ 00011856  0x00001f28 rtn  0x00000034 
+ 00011857  0x00001f29 add  0x00000013 , 0x000000ea , 0x00000011 
+ 00011858  0x00001f2a ifetcht  0x00000001 , 0x00000011 
+ 00011859  0x00001f2c arg  0x00000d9e , 0x00000011 
+ 00011860  0x00001f2e call  0x00002e58 
+ 00011861  0x00001f2f add  0x00000013 , 0x000000ea , 0x00000005 
+ 00011862  0x00001f32 istoret  0x00000001 , 0x00000005 
+ 00011863  0x00001f33 rtn 
+ 00011864  0x00001f36 arg  0x000000ff , 0x00000012 
+ 00011865  0x00001f37 branch  0x00002e5a 
+ 00011866  0x00001f4a copy  0x00000011 , 0x0000003f 
+ 00011867  0x00001f4b iadd  0x00000002 , 0x00000005 
+ 00011868  0x00001f4c fetch  0x00000001 , 0x00000018 
+ 00011869  0x00001f4d istore  0x00000001 , 0x00000005 
+ 00011870  0x00001f4e increase  0x00000001 , 0x00000002 
+ 00011871  0x00001f4f copy  0x00000012 , 0x0000003f 
+ 00011872  0x00001f50 iand_into  0x00000002 
+ 00011873  0x00001f51 rtn 
+ 00011874  0x00001f54 arg  0x00000000 , 0x00000002 
+ 00011875  0x00001f55 copy  0x00000011 , 0x00000006 
+ 00011876  0x00001f57 ifetch  0x00000001 , 0x00000006 
+ 00011877  0x00001f58 iadd  0x00000002 , 0x00000002 
+ 00011878  0x00001f59 loop  0x00002e64 
+ 00011879  0x00001f5a rshift8  0x00000002 , 0x00000002 
+ 00011880  0x00001f5b rtn 
+ 00011881  0x00001f5e call  0x00002c7a 
+ 00011882  0x00001f5f call  0x00002e9f 
+ 00011883  0x00001f60 setarg  0x00000001 
+ 00011884  0x00001f61 call  0x00003272 
+ 00011885  0x00001f64 setarg  0x00000000 
+ 00011886  0x00001f65 call  0x00002e73 
+ 00011887  0x00001f67 istore  0x00000001 , 0x00000005 
+ 00011888  0x00001f69 rtn 
+ 00011889  0x00001f6c call  0x00003270 
+ 00011890  0x00001f6e increase  0x00000001 , 0x0000003f 
+ 00011891  0x00001f71 add  0x00000013 , 0x000000fc , 0x00000005 
+ 00011892  0x00001f72 branch  0x000032b4 
+ 00011893  0x00001f77 add  0x00000013 , 0x000000fd , 0x00000011 
+ 00011894  0x00001f78 ifetch  0x00000001 , 0x00000011 
+ 00011895  0x00001f79 increase  0x00000001 , 0x0000003f 
+ 00011896  0x00001f7a add  0x00000013 , 0x000000fd , 0x00000005 
+ 00011897  0x00001f7b branch  0x000032b4 
+ 00011898  0x00001f7e bpatch  0x000000b9 , 0x00004017 
+ 00011899  0x00001f7f call  0x00003270 
+ 00011900  0x00001f81 sub  0x0000003f , 0x0000007c , 0x0000003e 
+ 00011901  0x00001f82 rtn  0x00000002 
+ 00011902  0x00001f83 add  0x00000013 , 0x000000fd , 0x00000011 
+ 00011903  0x00001f84 ifetcht  0x00000001 , 0x00000011 
+ 00011904  0x00001f86 isub  0x00000002 , 0x00000002 
+ 00011905  0x00001f87 call  0x00002e6d 
+ 00011906  0x00001f88 setarg  0x00000102 
+ 00011907  0x00001f89 iadd  0x00000013 , 0x00000011 
+ 00011908  0x00001f8a ifetch  0x00000001 , 0x00000011 
+ 00011909  0x00001f8c isub  0x00000002 , 0x0000003e 
+ 00011910  0x00001f8d nbranch  0x00002e8d , 0x00000002 
+ 00011911  0x00001f8e setarg  0x00000103 
+ 00011912  0x00001f8f iadd  0x00000013 , 0x00000011 
+ 00011913  0x00001f90 ifetch  0x00000001 , 0x00000011 
+ 00011914  0x00001f92 isub  0x00000002 , 0x0000003e 
+ 00011915  0x00001f93 branch  0x00002e99 , 0x00000002 
+ 00011916  0x00001f94 rtn 
+ 00011917  0x00001f97 add  0x00000013 , 0x000000fe , 0x00000011 
+ 00011918  0x00001f98 ifetch  0x00000001 , 0x00000011 
+ 00011919  0x00001f9a beq  0x00000002 , 0x00002e93 
+ 00011920  0x00001f9b increase  0x00000001 , 0x0000003f 
+ 00011921  0x00001f9c call  0x00003272 
+ 00011922  0x00001f9e beq  0x00000001 , 0x00002e9f 
+ 00011923  0x00001fa0 setarg  0x0000000a 
+ 00011924  0x00001fa1 call  0x000032b0 
+ 00011925  0x00001fa3 setarg  0x00000000 
+ 00011926  0x00001fa4 call  0x000032b2 
+ 00011927  0x00001fa7 add  0x00000013 , 0x000000ff , 0x00000011 
+ 00011928  0x00001fa9 branch  0x00002ea5 
+ 00011929  0x00001fac add  0x00000013 , 0x000000fe , 0x00000011 
+ 00011930  0x00001fad ifetch  0x00000001 , 0x00000011 
+ 00011931  0x00001faf beq  0x00000000 , 0x00002ea7 
+ 00011932  0x00001fb0 increase  0xffffffff , 0x0000003f 
+ 00011933  0x00001fb1 call  0x00003272 
+ 00011934  0x00001fb3 beq  0x00000000 , 0x00002ea7 
+ 00011935  0x00001fb8 setarg  0x00000005 
+ 00011936  0x00001fb9 call  0x000032b0 
+ 00011937  0x00001fbb setarg  0x00000000 
+ 00011938  0x00001fbc call  0x000032b2 
+ 00011939  0x00001fbf setarg  0x00000100 
+ 00011940  0x00001fc1 iadd  0x00000013 , 0x00000011 
+ 00011941  0x00001fc3 ifetch  0x00000001 , 0x00000011 
+ 00011942  0x00001fc5 branch  0x0000326a 
+ 00011943  0x00001fca setarg  0x00000002 
+ 00011944  0x00001fcb call  0x000032b0 
+ 00011945  0x00001fcd setarg  0x00000000 
+ 00011946  0x00001fce call  0x000032b2 
+ 00011947  0x00001fd1 setarg  0x00000101 
+ 00011948  0x00001fd3 branch  0x00002ea4 
+ 00011949  0x00001fe2 set1  0x00000026 , 0x00000000 
+ 00011950  0x00001fe3 call  0x00002c83 
+ 00011951  0x00001fe6 setarg  0x00000001 
+ 00011952  0x00001fe7 branch  0x00003256 
+ 00011953  0x00001fea add  0x00000013 , 0x0000008b , 0x00000011 
+ 00011954  0x00001feb ifetch  0x00000001 , 0x00000011 
+ 00011955  0x00001fed beq  0x00000001 , 0x00007fe7 
+ 00011956  0x00001fee call  0x00003253 
+ 00011957  0x00001ff0 beq  0x00000001 , 0x00002eb9 
+ 00011958  0x00001ff1 beq  0x00000002 , 0x00002ebd 
+ 00011959  0x00001ff2 beq  0x00000003 , 0x00002ec1 
+ 00011960  0x00001ff3 branch  0x00002a8c 
+ 00011961  0x00001ff6 setarg  0x00000011 
+ 00011962  0x00001ff7 call  0x00003256 
+ 00011963  0x00001ff9 jam  0x000000aa , 0x0000119e 
+ 00011964  0x00001ffa branch  0x00002ec4 
+ 00011965  0x00001ffc setarg  0x00000012 
+ 00011966  0x00001ffd call  0x00003256 
+ 00011967  0x00001fff jam  0x00000055 , 0x0000119e 
+ 00011968  0x00002000 branch  0x00002ec4 
+ 00011969  0x00002002 setarg  0x00000013 
+ 00011970  0x00002003 call  0x00003256 
+ 00011971  0x00002005 jam  0x00000022 , 0x0000119e 
+ 00011972  0x00002007 call  0x0000323a 
+ 00011973  0x00002009 and_into  0x00000007 , 0x0000003f 
+ 00011974  0x0000200a store  0x00000001 , 0x0000119f 
+ 00011975  0x0000200b call  0x00003224 
+ 00011976  0x0000200d store  0x00000004 , 0x000011a0 
+ 00011977  0x0000200f jam  0x00000000 , 0x000011a4 
+ 00011978  0x00002010 arg  0x0000119e , 0x00000011 
+ 00011979  0x00002011 arg  0x00000007 , 0x00000002 
+ 00011980  0x00002012 call  0x00002d4c 
+ 00011981  0x00002013 call  0x00002d53 
+ 00011982  0x00002014 call  0x00002d33 
+ 00011983  0x00002015 branch  0x00007fe7 
+ 00011984  0x00002018 call  0x00003253 
+ 00011985  0x0000201a rtneq  0x000000ff 
+ 00011986  0x0000201b beq  0x00000011 , 0x00002ed6 
+ 00011987  0x0000201c beq  0x00000012 , 0x00002ed9 
+ 00011988  0x0000201d beq  0x00000013 , 0x00002edc 
+ 00011989  0x0000201e rtn 
+ 00011990  0x00002021 setarg  0x00000002 
+ 00011991  0x00002022 call  0x00003256 
+ 00011992  0x00002024 branch  0x00002d9f 
+ 00011993  0x00002026 setarg  0x00000003 
+ 00011994  0x00002027 call  0x00003256 
+ 00011995  0x00002029 branch  0x00002d9f 
+ 00011996  0x0000202b setarg  0x000000ff 
+ 00011997  0x0000202c call  0x00003256 
+ 00011998  0x0000202e jam  0x00000039 , 0x00000a99 
+ 00011999  0x0000202f call  0x00007d86 
+ 00012000  0x00002030 add  0x00000013 , 0x00000066 , 0x00000011 
+ 00012001  0x00002031 ifetch  0x00000004 , 0x00000011 
+ 00012002  0x00002033 call  0x0000322c 
+ 00012003  0x00002035 branch  0x00002d9f 
+ 00012004  0x00002038 set0  0x00000026 , 0x00000000 
+ 00012005  0x00002039 call  0x00002f08 
+ 00012006  0x0000203a call  0x00002f22 
+ 00012007  0x0000203c call  0x00003263 
+ 00012008  0x0000203e nop  0x000007d0 
+ 00012009  0x0000203f call  0x00003261 
+ 00012010  0x00002040 beq  0x000000ff , 0x00002dd4 
+ 00012011  0x00002041 call  0x00002da4 
+ 00012012  0x00002042 nbranch  0x00002efa , 0x00000018 
+ 00012013  0x00002043 nbranch  0x00002efa , 0x0000002f 
+ 00012014  0x00002044 call  0x00002dd6 
+ 00012015  0x00002045 call  0x00002c7a 
+ 00012016  0x00002046 add  0x00000013 , 0x00000092 , 0x00000011 
+ 00012017  0x00002047 ifetcht  0x00000004 , 0x00000011 
+ 00012018  0x00002048 call  0x000030be 
+ 00012019  0x00002049 branch  0x00002ead , 0x00000005 
+ 00012020  0x0000204a call  0x00002c7a 
+ 00012021  0x0000204b add  0x00000013 , 0x00000066 , 0x00000011 
+ 00012022  0x0000204c ifetch  0x00000004 , 0x00000011 
+ 00012023  0x0000204d beq  0x00000000 , 0x00002ee7 
+ 00012024  0x0000204e call  0x0000322c 
+ 00012025  0x0000204f branch  0x00002f1c 
+ 00012026  0x00002052 call  0x00003261 
+ 00012027  0x00002053 increase  0x00000001 , 0x0000003f 
+ 00012028  0x00002054 call  0x00003264 
+ 00012029  0x00002056 call  0x00002f04 
+ 00012030  0x00002057 increase  0x00000001 , 0x0000003f 
+ 00012031  0x00002058 and_into  0x00000001 , 0x0000003f 
+ 00012032  0x00002059 call  0x00002f06 
+ 00012033  0x0000205a beq  0x00000000 , 0x00002f0c 
+ 00012034  0x0000205b beq  0x00000001 , 0x00002f0e 
+ 00012035  0x0000205c rtn 
+ 00012036  0x0000205f setarg  0x0000018b 
+ 00012037  0x00002060 branch  0x000032d0 
+ 00012038  0x00002062 arg  0x0000018b , 0x00000011 
+ 00012039  0x00002063 branch  0x000032b3 
+ 00012040  0x00002066 call  0x00003267 
+ 00012041  0x00002067 call  0x00003224 
+ 00012042  0x00002068 call  0x0000322c 
+ 00012043  0x00002069 branch  0x00002c8a 
+ 00012044  0x0000206c call  0x00002f08 
+ 00012045  0x0000206d branch  0x00002ee8 
+ 00012046  0x00002070 call  0x00002c83 
+ 00012047  0x00002071 branch  0x00002ee8 
+ 00012048  0x00002075 set0  0x00000026 , 0x00000000 
+ 00012049  0x00002076 call  0x00002c8a 
+ 00012050  0x00002077 call  0x00003253 
+ 00012051  0x00002079 rtnne  0x000000ff 
+ 00012052  0x0000207a call  0x00002f22 
+ 00012053  0x0000207b call  0x00003263 
+ 00012054  0x0000207e nop  0x000007d0 
+ 00012055  0x0000207f call  0x00003261 
+ 00012056  0x00002081 beq  0x000000ff , 0x00002dd4 
+ 00012057  0x00002082 call  0x00002da4 
+ 00012058  0x00002083 nbranch  0x00002f27 , 0x00000018 
+ 00012059  0x00002084 nbranch  0x00002f27 , 0x0000002f 
+ 00012060  0x00002086 set1  0x00000026 , 0x00000000 
+ 00012061  0x00002087 call  0x00003263 
+ 00012062  0x00002088 setarg  0x000000ff 
+ 00012063  0x00002089 call  0x00003256 
+ 00012064  0x0000208c jam  0x0000003c , 0x00000a99 
+ 00012065  0x0000208d branch  0x00007d86 
+ 00012066  0x00002090 set1  0x00000027 , 0x00000000 
+ 00012067  0x00002091 jam  0x000000ff , 0x0000119e 
+ 00012068  0x00002092 call  0x0000323a 
+ 00012069  0x00002094 call  0x00002d77 
+ 00012070  0x00002095 branch  0x00002d53 
+ 00012071  0x00002098 call  0x00003261 
+ 00012072  0x0000209a increase  0x00000001 , 0x0000003f 
+ 00012073  0x0000209b call  0x00003264 
+ 00012074  0x0000209d call  0x00002c8a 
+ 00012075  0x0000209e branch  0x00002f16 
+ 00012076  0x000020a1 call  0x00003267 
+ 00012077  0x000020a4 setarg  0x000000ff 
+ 00012078  0x000020a5 call  0x00003256 
+ 00012079  0x000020a7 branch  0x00002f10 
+ 00012080  0x000020b1 bpatch  0x000000ba , 0x00004017 
+ 00012081  0x000020b2 call  0x00002c7a 
+ 00012082  0x000020b3 setarg  0x000031b0 
+ 00012083  0x000020b4 add  0x00000013 , 0x000000de , 0x00000005 
+ 00012084  0x000020b5 istore  0x00000002 , 0x00000005 
+ 00012085  0x000020b7 call  0x00002f3d 
+ 00012086  0x000020b8 call  0x000048ea 
+ 00012087  0x000020b9 call  0x000032b6 
+ 00012088  0x000020bb bpatch  0x000000bb , 0x00004017 
+ 00012089  0x000020bc beq  0x00000000 , 0x00003055 
+ 00012090  0x000020bd beq  0x00000001 , 0x00002f45 
+ 00012091  0x000020be beq  0x0000000f , 0x00002f41 
+ 00012092  0x000020bf branch  0x00002a8c 
+ 00012093  0x000020c2 call  0x0000326c 
+ 00012094  0x000020c3 arg  0x00000080 , 0x00000039 
+ 00012095  0x000020c4 arg  0x00000d9e , 0x00000005 
+ 00012096  0x000020c5 branch  0x00007ec6 
+ 00012097  0x000020c8 call  0x00002f4c 
+ 00012098  0x000020ca call  0x00002f4f 
+ 00012099  0x000020cb call  0x000048d3 
+ 00012100  0x000020cc branch  0x00002f42 
+ 00012101  0x000020cf bpatch  0x000000bc , 0x00004017 
+ 00012102  0x000020d0 call  0x00002f4c 
+ 00012103  0x000020d2 call  0x00002f4f 
+ 00012104  0x000020d3 call  0x00002fbd 
+ 00012105  0x000020d4 call  0x000048d3 
+ 00012106  0x000020d5 call  0x00003019 
+ 00012107  0x000020d6 branch  0x00002f47 
+ 00012108  0x000020dc call  0x00003291 
+ 00012109  0x000020dd call  0x00003296 
+ 00012110  0x000020de branch  0x00003299 
+ 00012111  0x000020e1 call  0x0000328f 
+ 00012112  0x000020e3 rtnne  0x00000000 
+ 00012113  0x000020e5 call  0x00002f55 
+ 00012114  0x000020e6 call  0x00002f65 
+ 00012115  0x000020e7 call  0x0000316b 
+ 00012116  0x000020e8 branch  0x00002f96 
+ 00012117  0x000020eb call  0x00003294 
+ 00012118  0x000020ed rtnbit1  0x00000000 
+ 00012119  0x000020ee set1  0x00000000 , 0x0000003f 
+ 00012120  0x000020ef call  0x00003297 
+ 00012121  0x000020f1 call  0x00003267 
+ 00012122  0x000020f4 call  0x00003299 
+ 00012123  0x000020f6 jam  0x00000000 , 0x00000d38 
+ 00012124  0x000020f7 call  0x0000324f 
+ 00012125  0x000020f9 call  0x00002f61 
+ 00012126  0x000020fb add  0x00000013 , 0x00000000 , 0x00000005 
+ 00012127  0x000020fd arg  0x00000042 , 0x00000039 
+ 00012128  0x000020fe branch  0x00007ed4 
+ 00012129  0x00002101 call  0x00003231 
+ 00012130  0x00002103 call  0x0000327d 
+ 00012131  0x00002105 call  0x0000322c 
+ 00012132  0x00002107 branch  0x00002c8a 
+ 00012133  0x0000210a bpatch  0x000000bd , 0x00004017 
+ 00012134  0x0000210b call  0x0000324c 
+ 00012135  0x0000210d beq  0x00000001 , 0x00002f8d 
+ 00012136  0x0000210e call  0x00003245 
+ 00012137  0x00002110 beq  0x00000001 , 0x00002c8a 
+ 00012138  0x00002111 setarg  0x00000136 
+ 00012139  0x00002112 iadd  0x00000013 , 0x00000011 
+ 00012140  0x00002113 ifetcht  0x00000004 , 0x00000011 
+ 00012141  0x00002115 copy  0x00000022 , 0x0000003f 
+ 00012142  0x00002116 isub  0x00000002 , 0x0000003e 
+ 00012143  0x00002117 ncall  0x00002d18 , 0x00000002 
+ 00012144  0x00002118 copy  0x0000003f , 0x00000012 
+ 00012145  0x00002119 setarg  0x00000136 
+ 00012146  0x0000211a iadd  0x00000013 , 0x00000011 
+ 00012147  0x0000211b ifetch  0x00000004 , 0x00000011 
+ 00012148  0x0000211c copy  0x0000003f , 0x00000002 
+ 00012149  0x0000211e setarg  0x0000013a 
+ 00012150  0x0000211f iadd  0x00000013 , 0x00000011 
+ 00012151  0x00002120 copy  0x00000002 , 0x0000003f 
+ 00012152  0x00002121 ifetcht  0x00000001 , 0x00000011 
+ 00012153  0x00002123 iadd  0x00000002 , 0x00000002 
+ 00012154  0x00002124 copy  0x00000012 , 0x0000003f 
+ 00012155  0x00002125 isub  0x00000002 , 0x0000003e 
+ 00012156  0x00002126 nrtn  0x00000002 
+ 00012157  0x00002127 set0  0x0000001c , 0x0000003f 
+ 00012158  0x00002128 setarg  0x00000136 
+ 00012159  0x00002129 iadd  0x00000013 , 0x00000005 
+ 00012160  0x0000212a istore  0x00000004 , 0x00000005 
+ 00012161  0x0000212d call  0x00002c8a 
+ 00012162  0x0000212e call  0x00003278 
+ 00012163  0x00002130 increase  0x00000001 , 0x0000003f 
+ 00012164  0x00002131 call  0x0000327b 
+ 00012165  0x00002133 rtnne  0x00000002 
+ 00012166  0x00002134 call  0x0000327a 
+ 00012167  0x00002138 branch  0x0000324f 
+ 00012168  0x0000213b copy  0x00000022 , 0x0000003f 
+ 00012169  0x0000213c arg  0x00000136 , 0x00000011 
+ 00012170  0x0000213d call  0x000032bf 
+ 00012171  0x0000213e istore  0x00000004 , 0x00000005 
+ 00012172  0x00002142 branch  0x0000327a 
+ 00012173  0x00002145 arg  0x00000d9e , 0x00000011 
+ 00012174  0x00002146 call  0x00002f94 
+ 00012175  0x00002147 add  0x00000013 , 0x000000eb , 0x00000005 
+ 00012176  0x00002148 istoret  0x00000001 , 0x00000005 
+ 00012177  0x0000214a sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012178  0x0000214b nrtn  0x00000002 
+ 00012179  0x0000214c branch  0x00002c8a 
+ 00012180  0x0000214f arg  0x00000100 , 0x00000039 
+ 00012181  0x00002150 branch  0x00002e62 
+ 00012182  0x00002153 call  0x00002f99 
+ 00012183  0x00002154 call  0x00002fa5 
+ 00012184  0x00002155 branch  0x00002fb1 
+ 00012185  0x00002158 setarg  0x00000180 
+ 00012186  0x00002159 call  0x000032d0 
+ 00012187  0x0000215b rtn  0x00000034 
+ 00012188  0x0000215c arg  0x0000000b , 0x00000007 
+ 00012189  0x0000215d call  0x00007f16 
+ 00012190  0x0000215e nrtn  0x00000034 
+ 00012191  0x0000215f call  0x000032a7 
+ 00012192  0x00002162 setarg  0x00000001 
+ 00012193  0x00002163 store  0x00000001 , 0x00000d54 
+ 00012194  0x00002164 setarg  0x00000000 
+ 00012195  0x00002165 istore  0x00000007 , 0x00000005 
+ 00012196  0x00002166 branch  0x000031b8 
+ 00012197  0x00002169 setarg  0x0000017e 
+ 00012198  0x0000216a call  0x000032d0 
+ 00012199  0x0000216c rtn  0x00000034 
+ 00012200  0x0000216d arg  0x0000000e , 0x00000007 
+ 00012201  0x0000216e call  0x00007f16 
+ 00012202  0x0000216f nrtn  0x00000034 
+ 00012203  0x00002170 call  0x000032aa 
+ 00012204  0x00002173 arg  0x00000d64 , 0x00000005 
+ 00012205  0x00002174 arg  0x00000002 , 0x00000039 
+ 00012206  0x00002175 call  0x00007ec6 
+ 00012207  0x00002176 jam  0x00000000 , 0x00000d64 
+ 00012208  0x00002177 branch  0x000031ed 
+ 00012209  0x0000217a setarg  0x0000017f 
+ 00012210  0x0000217b call  0x000032d0 
+ 00012211  0x0000217d rtn  0x00000034 
+ 00012212  0x0000217e arg  0x0000000c , 0x00000007 
+ 00012213  0x0000217f call  0x00007f16 
+ 00012214  0x00002180 nrtn  0x00000034 
+ 00012215  0x00002181 call  0x000032ad 
+ 00012216  0x00002184 arg  0x00000d74 , 0x00000005 
+ 00012217  0x00002185 arg  0x00000002 , 0x00000039 
+ 00012218  0x00002186 call  0x00007ec6 
+ 00012219  0x00002187 jam  0x00000003 , 0x00000d74 
+ 00012220  0x00002188 branch  0x00003207 
+ 00012221  0x0000218b call  0x0000328f 
+ 00012222  0x0000218d rtnne  0x00000001 
+ 00012223  0x0000218e call  0x00002fc1 
+ 00012224  0x0000218f branch  0x00002fcb 
+ 00012225  0x00002192 call  0x00003294 
+ 00012226  0x00002194 rtnbit1  0x00000001 
+ 00012227  0x00002195 set1  0x00000001 , 0x0000003f 
+ 00012228  0x00002196 call  0x00003297 
+ 00012229  0x00002198 call  0x0000329c 
+ 00012230  0x0000219a call  0x00002c83 
+ 00012231  0x0000219b setarg  0x00000000 
+ 00012232  0x0000219c arg  0x00000106 , 0x00000011 
+ 00012233  0x0000219d call  0x000032bf 
+ 00012234  0x0000219f branch  0x000032c5 
+ 00012235  0x000021a2 call  0x0000316e 
+ 00012236  0x000021a3 nbranch  0x00002f5e , 0x0000002f 
+ 00012237  0x000021a4 add  0x00000013 , 0x00000000 , 0x00000006 
+ 00012238  0x000021a5 setarg  0x00000109 
+ 00012239  0x000021a6 iadd  0x00000013 , 0x00000005 
+ 00012240  0x000021a7 arg  0x00000008 , 0x00000039 
+ 00012241  0x000021a8 call  0x00007f01 
+ 00012242  0x000021a9 setarg  0x0000010b 
+ 00012243  0x000021aa call  0x000032d0 
+ 00012244  0x000021ab beq  0x000000aa , 0x00002fd9 
+ 00012245  0x000021ac beq  0x00000055 , 0x00002fed 
+ 00012246  0x000021ad beq  0x00000022 , 0x00003001 
+ 00012247  0x000021ae beq  0x000000ff , 0x00003212 
+ 00012248  0x000021af branch  0x00002f5e 
+ 00012249  0x000021b2 call  0x000032bd 
+ 00012250  0x000021b3 beq  0x00000001 , 0x00002fdd 
+ 00012251  0x000021b4 beq  0x00000002 , 0x00002fe8 
+ 00012252  0x000021b5 rtn 
+ 00012253  0x000021b7 setarg  0x00000001 
+ 00012254  0x000021b8 call  0x00002ff7 
+ 00012255  0x000021bb setarg  0x00000001 
+ 00012256  0x000021bc call  0x00003289 
+ 00012257  0x000021bf setarg  0x00000080 
+ 00012258  0x000021c0 arg  0x00000130 , 0x00000011 
+ 00012259  0x000021c1 call  0x000032b3 
+ 00012260  0x000021c3 call  0x0000327d 
+ 00012261  0x000021c5 arg  0x00000131 , 0x00000011 
+ 00012262  0x000021c6 call  0x000032bf 
+ 00012263  0x000021c8 branch  0x0000322d 
+ 00012264  0x000021cb setarg  0x00000001 
+ 00012265  0x000021cc call  0x00002fff 
+ 00012266  0x000021cf setarg  0x00000002 
+ 00012267  0x000021d0 call  0x00003289 
+ 00012268  0x000021d2 branch  0x00002fe1 
+ 00012269  0x000021d5 call  0x000032bd 
+ 00012270  0x000021d6 beq  0x00000001 , 0x00002ff1 
+ 00012271  0x000021d7 beq  0x00000002 , 0x00002ff9 
+ 00012272  0x000021d8 rtn 
+ 00012273  0x000021da call  0x00002fdf 
+ 00012274  0x000021db setarg  0x00000106 
+ 00012275  0x000021dc call  0x000032d0 
+ 00012276  0x000021de beq  0x00000001 , 0x00002ff6 
+ 00012277  0x000021df rtn 
+ 00012278  0x000021e1 setarg  0x00000002 
+ 00012279  0x000021e4 arg  0x00000106 , 0x00000011 
+ 00012280  0x000021e5 branch  0x000032b3 
+ 00012281  0x000021e8 call  0x00002fea 
+ 00012282  0x000021e9 setarg  0x00000107 
+ 00012283  0x000021ea call  0x000032d0 
+ 00012284  0x000021ec beq  0x00000001 , 0x00002ffe 
+ 00012285  0x000021ed rtn 
+ 00012286  0x000021ef setarg  0x00000002 
+ 00012287  0x000021f2 arg  0x00000107 , 0x00000011 
+ 00012288  0x000021f3 branch  0x000032b3 
+ 00012289  0x000021f6 call  0x000032bd 
+ 00012290  0x000021f7 beq  0x00000001 , 0x00003005 
+ 00012291  0x000021f8 beq  0x00000002 , 0x00003011 
+ 00012292  0x000021f9 rtn 
+ 00012293  0x000021fb setarg  0x00000106 
+ 00012294  0x000021fc call  0x000032d0 
+ 00012295  0x000021fe beq  0x00000002 , 0x00003009 
+ 00012296  0x000021ff rtn 
+ 00012297  0x00002201 call  0x0000328b 
+ 00012298  0x00002203 or_into  0x00000001 , 0x0000003f 
+ 00012299  0x00002204 call  0x0000328d 
+ 00012300  0x00002207 setarg  0x00000000 
+ 00012301  0x00002208 setarg  0x00000106 
+ 00012302  0x00002209 iadd  0x00000013 , 0x00000005 
+ 00012303  0x0000220a istore  0x00000002 , 0x00000005 
+ 00012304  0x0000220b branch  0x00002f5e 
+ 00012305  0x0000220e setarg  0x00000107 
+ 00012306  0x0000220f call  0x000032d0 
+ 00012307  0x00002211 bne  0x00000000 , 0x00003015 
+ 00012308  0x00002212 rtn 
+ 00012309  0x00002214 call  0x0000328b 
+ 00012310  0x00002216 or_into  0x00000002 , 0x0000003f 
+ 00012311  0x00002217 call  0x0000328d 
+ 00012312  0x00002219 branch  0x0000300c 
+ 00012313  0x0000221d fetch  0x00000001 , 0x00000d50 
+ 00012314  0x0000221e rtn  0x00000034 
+ 00012315  0x0000221f jam  0x00000000 , 0x00000d50 
+ 00012316  0x00002220 fetch  0x00000002 , 0x00000d4e 
+ 00012317  0x00002221 arg  0x000002ba , 0x00000002 
+ 00012318  0x00002222 isub  0x00000002 , 0x0000003e 
+ 00012319  0x00002223 nrtn  0x00000005 
+ 00012320  0x00002225 fetch  0x00000001 , 0x00000cb6 
+ 00012321  0x00002226 rtnne  0x000000ba 
+ 00012322  0x00002227 fetch  0x00000001 , 0x00000cb7 
+ 00012323  0x00002228 bpatch  0x000000be , 0x00004017 
+ 00012324  0x00002229 beq  0x000000a0 , 0x0000303b 
+ 00012325  0x0000222a beq  0x000000a1 , 0x0000302c 
+ 00012326  0x0000222b beq  0x000000a6 , 0x00003041 
+ 00012327  0x0000222c beq  0x000000a7 , 0x00003043 
+ 00012328  0x0000222d beq  0x000000a9 , 0x00003049 
+ 00012329  0x0000222e beq  0x000000b0 , 0x0000304d 
+ 00012330  0x00002230 jam  0x00000000 , 0x00000d42 
+ 00012331  0x00002231 rtn 
+ 00012332  0x00002233 fetch  0x00000001 , 0x00000cb8 
+ 00012333  0x00002234 beq  0x00000001 , 0x00003031 
+ 00012334  0x00002235 beq  0x00000084 , 0x00003034 
+ 00012335  0x00002236 beq  0x000000a7 , 0x00003039 
+ 00012336  0x00002237 branch  0x0000302a 
+ 00012337  0x00002239 call  0x0000328b 
+ 00012338  0x0000223b store  0x00000001 , 0x00000cf7 
+ 00012339  0x0000223c branch  0x0000303f 
+ 00012340  0x0000223e call  0x00003291 
+ 00012341  0x00002240 call  0x00003296 
+ 00012342  0x00002242 call  0x0000328b 
+ 00012343  0x00002244 store  0x00000001 , 0x00000cf7 
+ 00012344  0x00002245 branch  0x0000303f 
+ 00012345  0x00002249 jam  0x000000a1 , 0x00000cf7 
+ 00012346  0x0000224a branch  0x0000303f 
+ 00012347  0x0000224d fetch  0x00000001 , 0x00000cb8 
+ 00012348  0x0000224e beq  0x00000081 , 0x0000303e 
+ 00012349  0x00002250 branch  0x0000302a 
+ 00012350  0x00002254 call  0x00003090 
+ 00012351  0x00002256 jam  0x00000001 , 0x00000d42 
+ 00012352  0x00002257 rtn 
+ 00012353  0x0000225d jam  0x00000015 , 0x00000cf7 
+ 00012354  0x0000225e branch  0x0000303f 
+ 00012355  0x00002261 call  0x0000328f 
+ 00012356  0x00002263 beq  0x00000000 , 0x00003047 
+ 00012357  0x00002264 beq  0x00000001 , 0x00003039 
+ 00012358  0x00002266 rtn 
+ 00012359  0x00002268 jam  0x000000a0 , 0x00000cf7 
+ 00012360  0x00002269 branch  0x0000303f 
+ 00012361  0x0000226f jam  0x00000000 , 0x00000cf7 
+ 00012362  0x00002270 jam  0x00000000 , 0x00000cf8 
+ 00012363  0x00002271 jam  0x00000001 , 0x00000cf9 
+ 00012364  0x00002272 branch  0x0000303f 
+ 00012365  0x00002276 call  0x0000329c 
+ 00012366  0x00002277 fetch  0x00000001 , 0x00000cb8 
+ 00012367  0x00002278 increase  0x00000002 , 0x0000003f 
+ 00012368  0x00002279 copy  0x0000003f , 0x00000039 
+ 00012369  0x0000227a arg  0x00000cb6 , 0x00000006 
+ 00012370  0x0000227b setarg  0x0000013c 
+ 00012371  0x0000227c iadd  0x00000013 , 0x00000005 
+ 00012372  0x0000227d branch  0x00007f01 
+ 00012373  0x00002281 bpatch  0x000000bf , 0x00004017 
+ 00012374  0x00002282 call  0x0000307d 
+ 00012375  0x00002284 call  0x00002c7f 
+ 00012376  0x00002285 call  0x000048d3 
+ 00012377  0x00002286 branch  0x00003057 
+ 00012378  0x00002289 call  0x0000328f 
+ 00012379  0x0000228b rtnne  0x00000000 
+ 00012380  0x0000228c call  0x00002f51 
+ 00012381  0x0000228d branch  0x00003098 
+ 00012382  0x00002290 call  0x0000328f 
+ 00012383  0x00002292 rtnne  0x00000001 
+ 00012384  0x00002293 call  0x00002fc1 
+ 00012385  0x00002294 call  0x00002fcb 
+ 00012386  0x00002295 call  0x0000328b 
+ 00012387  0x00002297 rtn  0x00000034 
+ 00012388  0x00002298 call  0x00003286 
+ 00012389  0x0000229a call  0x00002f4c 
+ 00012390  0x0000229b call  0x00003093 
+ 00012391  0x0000229d setarg  0x00000000 
+ 00012392  0x0000229e add  0x00000013 , 0x000000a7 , 0x00000005 
+ 00012393  0x000022a0 branch  0x0000322d 
+ 00012394  0x000022a3 call  0x00007fe9 
+ 00012395  0x000022a4 add  0x00000013 , 0x000000a7 , 0x00000011 
+ 00012396  0x000022a5 ifetcht  0x00000004 , 0x00000011 
+ 00012397  0x000022a7 copy  0x00000022 , 0x0000003f 
+ 00012398  0x000022a8 isub  0x00000002 , 0x0000003e 
+ 00012399  0x000022a9 ncall  0x00002d18 , 0x00000002 
+ 00012400  0x000022aa copy  0x0000003f , 0x00000012 
+ 00012401  0x000022ab add  0x00000013 , 0x000000a7 , 0x00000011 
+ 00012402  0x000022ac ifetch  0x00000004 , 0x00000011 
+ 00012403  0x000022ae add  0x00000013 , 0x000000ab , 0x00000011 
+ 00012404  0x000022af ifetcht  0x00000001 , 0x00000011 
+ 00012405  0x000022b1 iadd  0x00000002 , 0x00000002 
+ 00012406  0x000022b2 copy  0x00000012 , 0x0000003f 
+ 00012407  0x000022b3 isub  0x00000002 , 0x0000003e 
+ 00012408  0x000022b4 nrtn  0x00000002 
+ 00012409  0x000022b5 set0  0x0000001c , 0x0000003f 
+ 00012410  0x000022b6 add  0x00000013 , 0x000000a7 , 0x00000005 
+ 00012411  0x000022b7 istore  0x00000004 , 0x00000005 
+ 00012412  0x000022b9 branch  0x00007fe7 
+ 00012413  0x000022bc setarg  0x00000001 
+ 00012414  0x000022bd call  0x00003287 
+ 00012415  0x000022bf call  0x00003283 
+ 00012416  0x000022c1 setarg  0x000000ff 
+ 00012417  0x000022c2 add  0x00000013 , 0x000000ab , 0x00000005 
+ 00012418  0x000022c3 istore  0x00000001 , 0x00000005 
+ 00012419  0x000022c5 branch  0x00003067 
+ 00012420  0x000022c8 setarg  0x0000015c 
+ 00012421  0x000022c9 call  0x000032d0 
+ 00012422  0x000022cb rtn  0x00000034 
+ 00012423  0x000022cc call  0x0000306a 
+ 00012424  0x000022cd nrtn  0x00000028 
+ 00012425  0x000022ce call  0x00003281 
+ 00012426  0x000022d0 increase  0x00000001 , 0x0000003f 
+ 00012427  0x000022d1 and_into  0x00000001 , 0x0000003f 
+ 00012428  0x000022d2 call  0x00003284 
+ 00012429  0x000022d4 beq  0x00000000 , 0x00002f4c 
+ 00012430  0x000022d5 beq  0x00000001 , 0x00003090 
+ 00012431  0x000022d6 rtn 
+ 00012432  0x000022dc setarg  0x00000001 
+ 00012433  0x000022dd call  0x00003292 
+ 00012434  0x000022de branch  0x00003296 
+ 00012435  0x000022e1 setarg  0x00000001 
+ 00012436  0x000022e2 call  0x000032a5 
+ 00012437  0x000022e5 setarg  0x00000280 
+ 00012438  0x000022e6 arg  0x00000008 , 0x00000007 
+ 00012439  0x000022e7 branch  0x00007f08 
+ 00012440  0x000022ea call  0x000032a2 
+ 00012441  0x000022ec rtn  0x00000034 
+ 00012442  0x000022ed arg  0x00000008 , 0x00000007 
+ 00012443  0x000022ee call  0x00007f16 
+ 00012444  0x000022ef nrtn  0x00000034 
+ 00012445  0x000022f0 call  0x000032a4 
+ 00012446  0x000022f3 setarg  0x00000007 
+ 00012447  0x000022f4 call  0x00003292 
+ 00012448  0x000022f6 call  0x00003296 
+ 00012449  0x000022f8 branch  0x00002f5e 
+ 00012450  0x000022fb bpatch  0x000000c0 , 0x00004018 
+ 00012451  0x000022fc call  0x0000328f 
+ 00012452  0x000022fe rtnne  0x00000007 
+ 00012453  0x000022ff call  0x000030cb 
+ 00012454  0x00002300 call  0x000030e0 
+ 00012455  0x00002301 call  0x0000316e 
+ 00012456  0x00002302 nbranch  0x00002f5e , 0x0000002f 
+ 00012457  0x00002304 call  0x000030bc 
+ 00012458  0x00002305 call  0x00003172 , 0x00000005 
+ 00012459  0x00002309 call  0x00002f4c 
+ 00012460  0x0000230a call  0x00003294 
+ 00012461  0x0000230c set1  0x00000000 , 0x0000003f 
+ 00012462  0x0000230d call  0x00003297 
+ 00012463  0x0000230f call  0x00002f5e 
+ 00012464  0x00002310 call  0x00003093 
+ 00012465  0x00002311 call  0x000030bc 
+ 00012466  0x00002312 branch  0x000030c1 , 0x00000005 
+ 00012467  0x00002313 setarg  0x00000164 
+ 00012468  0x00002314 call  0x000032d3 
+ 00012469  0x00002316 call  0x000030be 
+ 00012470  0x00002317 branch  0x000030c5 , 0x00000005 
+ 00012471  0x00002318 setarg  0x00000160 
+ 00012472  0x00002319 call  0x000032d3 
+ 00012473  0x0000231b call  0x000030be 
+ 00012474  0x0000231c branch  0x000030c8 , 0x00000005 
+ 00012475  0x0000231d rtn 
+ 00012476  0x00002320 setarg  0x0000012b 
+ 00012477  0x00002321 call  0x000032d3 
+ 00012478  0x00002324 call  0x0000322a 
+ 00012479  0x00002326 isub  0x00000002 , 0x0000003e 
+ 00012480  0x00002327 rtn 
+ 00012481  0x0000232a setarg  0x00000182 
+ 00012482  0x0000232b call  0x000032d0 
+ 00012483  0x0000232f add  0x00000013 , 0x00000091 , 0x00000005 
+ 00012484  0x00002330 branch  0x000032b4 
+ 00012485  0x00002333 setarg  0x00000185 
+ 00012486  0x00002334 call  0x000032d0 
+ 00012487  0x00002336 branch  0x000030c3 
+ 00012488  0x00002338 setarg  0x00000188 
+ 00012489  0x00002339 call  0x000032d0 
+ 00012490  0x0000233b branch  0x000030c3 
+ 00012491  0x0000233e call  0x00003294 
+ 00012492  0x00002340 rtnbit1  0x00000007 
+ 00012493  0x00002341 set1  0x00000007 , 0x0000003f 
+ 00012494  0x00002342 call  0x00003297 
+ 00012495  0x00002344 call  0x00003283 
+ 00012496  0x00002346 call  0x0000329c 
+ 00012497  0x00002348 setarg  0x00000000 
+ 00012498  0x00002349 add  0x00000013 , 0x000000f5 , 0x00000005 
+ 00012499  0x0000234a istore  0x00000003 , 0x00000005 
+ 00012500  0x0000234c arg  0x00000183 , 0x00000011 
+ 00012501  0x0000234d call  0x000032bf 
+ 00012502  0x0000234e istore  0x00000007 , 0x00000005 
+ 00012503  0x00002351 call  0x000030bc 
+ 00012504  0x00002352 nrtn  0x00000005 
+ 00012505  0x00002353 add  0x00000013 , 0x00000091 , 0x00000011 
+ 00012506  0x00002354 ifetch  0x00000001 , 0x00000011 
+ 00012507  0x00002356 arg  0x00000182 , 0x00000011 
+ 00012508  0x00002357 call  0x000032b3 
+ 00012509  0x00002359 add  0x00000013 , 0x00000090 , 0x00000011 
+ 00012510  0x0000235a ifetch  0x00000001 , 0x00000011 
+ 00012511  0x0000235d branch  0x0000314a 
+ 00012512  0x00002360 bpatch  0x000000c1 , 0x00004018 
+ 00012513  0x00002361 call  0x00003281 
+ 00012514  0x00002363 increase  0x00000001 , 0x0000003f 
+ 00012515  0x00002364 and_into  0x00000003 , 0x0000003f 
+ 00012516  0x00002365 call  0x00003284 
+ 00012517  0x00002368 beq  0x00000000 , 0x0000310e 
+ 00012518  0x00002369 beq  0x00000001 , 0x00003132 
+ 00012519  0x0000236a beq  0x00000002 , 0x000030ea 
+ 00012520  0x0000236b beq  0x00000003 , 0x00003132 
+ 00012521  0x0000236c rtn 
+ 00012522  0x0000236f call  0x00002fdf 
+ 00012523  0x00002370 setarg  0x00000160 
+ 00012524  0x00002371 call  0x0000327e 
+ 00012525  0x00002373 branch  0x000030e0 , 0x00000034 
+ 00012526  0x00002374 call  0x0000322c 
+ 00012527  0x00002376 setarg  0x00000189 
+ 00012528  0x00002377 call  0x000032d0 
+ 00012529  0x00002379 call  0x00003108 , 0x00000034 
+ 00012530  0x0000237a setarg  0x00000187 
+ 00012531  0x0000237b call  0x000032d0 
+ 00012532  0x0000237d call  0x0000322f 
+ 00012533  0x0000237f add  0x00000013 , 0x000000f7 , 0x00000011 
+ 00012534  0x00002380 ifetcht  0x00000001 , 0x00000011 
+ 00012535  0x00002382 arg  0x00000f9e , 0x00000011 
+ 00012536  0x00002383 call  0x00002e58 
+ 00012537  0x00002384 add  0x00000013 , 0x000000f7 , 0x00000005 
+ 00012538  0x00002385 istoret  0x00000001 , 0x00000005 
+ 00012539  0x00002387 call  0x00002f94 
+ 00012540  0x00002388 add  0x00000013 , 0x000000fa , 0x00000005 
+ 00012541  0x00002389 istoret  0x00000001 , 0x00000005 
+ 00012542  0x0000238b sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012543  0x0000238c nrtn  0x00000002 
+ 00012544  0x0000238d setarg  0x00000188 
+ 00012545  0x0000238e call  0x00003275 
+ 00012546  0x00002390 call  0x00002c90 
+ 00012547  0x00002391 arg  0x00000188 , 0x00000011 
+ 00012548  0x00002392 call  0x000032c8 
+ 00012549  0x00002393 istoret  0x00000001 , 0x00000005 
+ 00012550  0x00002397 arg  0x00000187 , 0x00000011 
+ 00012551  0x00002398 branch  0x000032b3 
+ 00012552  0x0000239b setarg  0x00000001 
+ 00012553  0x0000239c arg  0x00000189 , 0x00000011 
+ 00012554  0x0000239d call  0x000032b3 
+ 00012555  0x0000239f arg  0x00000000 , 0x00000002 
+ 00012556  0x000023a0 call  0x00002c94 
+ 00012557  0x000023a3 branch  0x00003106 
+ 00012558  0x000023a6 call  0x00002fea 
+ 00012559  0x000023a7 setarg  0x00000164 
+ 00012560  0x000023a8 call  0x0000327e 
+ 00012561  0x000023aa branch  0x000030e0 , 0x00000034 
+ 00012562  0x000023ab call  0x0000322c 
+ 00012563  0x000023ad setarg  0x00000186 
+ 00012564  0x000023ae call  0x000032d0 
+ 00012565  0x000023b0 call  0x0000312c , 0x00000034 
+ 00012566  0x000023b1 setarg  0x00000184 
+ 00012567  0x000023b2 call  0x000032d0 
+ 00012568  0x000023b4 call  0x0000322f 
+ 00012569  0x000023b6 add  0x00000013 , 0x000000f6 , 0x00000011 
+ 00012570  0x000023b7 ifetcht  0x00000001 , 0x00000011 
+ 00012571  0x000023b9 arg  0x0000109e , 0x00000011 
+ 00012572  0x000023ba call  0x00002e58 
+ 00012573  0x000023bb add  0x00000013 , 0x000000f6 , 0x00000005 
+ 00012574  0x000023bc istoret  0x00000001 , 0x00000005 
+ 00012575  0x000023be call  0x00002f94 
+ 00012576  0x000023bf add  0x00000013 , 0x000000f9 , 0x00000005 
+ 00012577  0x000023c0 istoret  0x00000001 , 0x00000005 
+ 00012578  0x000023c2 sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012579  0x000023c3 nrtn  0x00000002 
+ 00012580  0x000023c4 setarg  0x00000185 
+ 00012581  0x000023c5 call  0x00003275 
+ 00012582  0x000023c7 call  0x00002c90 
+ 00012583  0x000023c8 arg  0x00000185 , 0x00000011 
+ 00012584  0x000023c9 call  0x000032c8 
+ 00012585  0x000023ca istoret  0x00000001 , 0x00000005 
+ 00012586  0x000023ce arg  0x00000184 , 0x00000011 
+ 00012587  0x000023cf branch  0x000032b3 
+ 00012588  0x000023d2 setarg  0x00000001 
+ 00012589  0x000023d3 arg  0x00000186 , 0x00000011 
+ 00012590  0x000023d4 call  0x000032b3 
+ 00012591  0x000023d6 arg  0x00000000 , 0x00000002 
+ 00012592  0x000023d7 call  0x00002c94 
+ 00012593  0x000023da branch  0x0000312a 
+ 00012594  0x000023dd call  0x00002fdf 
+ 00012595  0x000023de call  0x0000327d 
+ 00012596  0x000023e0 call  0x0000322c 
+ 00012597  0x000023e2 setarg  0x00000183 
+ 00012598  0x000023e3 call  0x000032d0 
+ 00012599  0x000023e5 call  0x0000314c , 0x00000034 
+ 00012600  0x000023e6 call  0x0000314f 
+ 00012601  0x000023e7 add  0x00000013 , 0x000000f5 , 0x00000011 
+ 00012602  0x000023e8 ifetcht  0x00000001 , 0x00000011 
+ 00012603  0x000023ea arg  0x00000e9e , 0x00000011 
+ 00012604  0x000023eb call  0x00002e58 
+ 00012605  0x000023ec add  0x00000013 , 0x000000f5 , 0x00000005 
+ 00012606  0x000023ed istoret  0x00000001 , 0x00000005 
+ 00012607  0x000023ef call  0x00002f94 
+ 00012608  0x000023f0 add  0x00000013 , 0x000000f8 , 0x00000005 
+ 00012609  0x000023f1 istoret  0x00000001 , 0x00000005 
+ 00012610  0x000023f3 sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012611  0x000023f4 nrtn  0x00000002 
+ 00012612  0x000023f5 setarg  0x00000182 
+ 00012613  0x000023f6 call  0x00003275 
+ 00012614  0x000023f8 call  0x00002c90 
+ 00012615  0x000023f9 arg  0x00000182 , 0x00000011 
+ 00012616  0x000023fa call  0x000032c8 
+ 00012617  0x000023fb istoret  0x00000001 , 0x00000005 
+ 00012618  0x00002400 arg  0x00000181 , 0x00000011 
+ 00012619  0x00002401 branch  0x000032b3 
+ 00012620  0x00002409 setarg  0x00000001 
+ 00012621  0x0000240a arg  0x00000183 , 0x00000011 
+ 00012622  0x0000240b call  0x000032b3 
+ 00012623  0x0000240d setarg  0x00000181 
+ 00012624  0x0000240e call  0x000032d0 
+ 00012625  0x0000240f branch  0x0000322f 
+ 00012626  0x00002414 add  0x00000013 , 0x00000000 , 0x00000011 
+ 00012627  0x00002415 ifetch  0x00000001 , 0x00000011 
+ 00012628  0x00002417 call  0x0000323c 
+ 00012629  0x0000241a call  0x00002dde 
+ 00012630  0x0000241c call  0x0000325f 
+ 00012631  0x0000241e isolate1  0x00000000 , 0x0000003f 
+ 00012632  0x0000241f branch  0x0000315c , 0x00000001 
+ 00012633  0x00002421 call  0x0000315d 
+ 00012634  0x00002422 call  0x00002d53 
+ 00012635  0x00002423 call  0x00002df7 
+ 00012636  0x00002425 branch  0x00002e45 
+ 00012637  0x00002428 bpatch  0x000000c2 , 0x00004018 
+ 00012638  0x00002429 add  0x00000013 , 0x00000086 , 0x00000005 
+ 00012639  0x0000242a call  0x000032d6 
+ 00012640  0x0000242c setarg  0x0000013b 
+ 00012641  0x0000242d call  0x000032d0 
+ 00012642  0x0000242f rtn  0x00000034 
+ 00012643  0x00002430 setarg  0x00000006 
+ 00012644  0x00002431 add  0x00000013 , 0x00000086 , 0x00000005 
+ 00012645  0x00002432 istore  0x00000001 , 0x00000005 
+ 00012646  0x00002434 arg  0x00000006 , 0x00000039 
+ 00012647  0x00002435 setarg  0x0000012f 
+ 00012648  0x00002436 iadd  0x00000013 , 0x00000006 
+ 00012649  0x00002438 add  0x00000013 , 0x00000022 , 0x00000005 
+ 00012650  0x0000243a branch  0x00007f01 
+ 00012651  0x0000243e call  0x0000316e 
+ 00012652  0x0000243f nbranch  0x00002f5e , 0x0000002f 
+ 00012653  0x00002440 branch  0x00003172 
+ 00012654  0x00002443 call  0x00002f5e 
+ 00012655  0x00002444 call  0x00002e11 
+ 00012656  0x00002445 nrtn  0x0000002f 
+ 00012657  0x00002446 branch  0x00003152 
+ 00012658  0x00002449 bpatch  0x000000c3 , 0x00004018 
+ 00012659  0x0000244a call  0x00003188 
+ 00012660  0x0000244b nbranch  0x00002f5e , 0x00000028 
+ 00012661  0x0000244c add  0x00000013 , 0x00000084 , 0x00000011 
+ 00012662  0x0000244d ifetch  0x00000001 , 0x00000011 
+ 00012663  0x0000244f branch  0x00002f5e , 0x00000034 
+ 00012664  0x00002450 increase  0x00000002 , 0x0000003f 
+ 00012665  0x00002451 iforce  0x00000039 
+ 00012666  0x00002452 add  0x00000013 , 0x00000000 , 0x00000006 
+ 00012667  0x00002454 setarg  0x00000109 
+ 00012668  0x00002455 iadd  0x00000013 , 0x00000005 
+ 00012669  0x00002457 call  0x00007f01 
+ 00012670  0x00002458 call  0x00003286 
+ 00012671  0x0000245a call  0x000032b6 
+ 00012672  0x0000245c call  0x00003093 , 0x00000034 
+ 00012673  0x0000245d setarg  0x0000010b 
+ 00012674  0x0000245e call  0x000032d0 
+ 00012675  0x00002460 beq  0x00000001 , 0x0000319e 
+ 00012676  0x00002461 beq  0x00000002 , 0x000031c6 
+ 00012677  0x00002462 beq  0x00000003 , 0x000031f2 
+ 00012678  0x00002463 beq  0x000000ff , 0x00003212 
+ 00012679  0x00002464 branch  0x00002f5e 
+ 00012680  0x00002467 call  0x00002c7a 
+ 00012681  0x00002468 call  0x00007fe9 
+ 00012682  0x00002469 add  0x00000013 , 0x000000ca , 0x00000011 
+ 00012683  0x0000246a ifetch  0x00000001 , 0x00000011 
+ 00012684  0x0000246c add  0x00000013 , 0x000000cb , 0x00000011 
+ 00012685  0x0000246d ifetcht  0x00000001 , 0x00000011 
+ 00012686  0x0000246f isub  0x00000002 , 0x0000003e 
+ 00012687  0x00002470 ncall  0x00007fe7 , 0x00000005 
+ 00012688  0x00002471 add  0x00000013 , 0x000000ca , 0x00000011 
+ 00012689  0x00002472 ifetch  0x00000001 , 0x00000011 
+ 00012690  0x00002474 add  0x00000013 , 0x000000cb , 0x00000005 
+ 00012691  0x00002475 istore  0x00000001 , 0x00000005 
+ 00012692  0x00002477 add  0x00000013 , 0x000000c4 , 0x00000011 
+ 00012693  0x00002478 ifetch  0x00000003 , 0x00000011 
+ 00012694  0x0000247a add  0x00000013 , 0x000000c7 , 0x00000011 
+ 00012695  0x0000247b ifetcht  0x00000003 , 0x00000011 
+ 00012696  0x0000247d isub  0x00000002 , 0x0000003e 
+ 00012697  0x0000247e ncall  0x00007fe7 , 0x00000005 
+ 00012698  0x0000247f add  0x00000013 , 0x000000c4 , 0x00000011 
+ 00012699  0x00002480 ifetch  0x00000003 , 0x00000011 
+ 00012700  0x00002482 add  0x00000013 , 0x000000c7 , 0x00000005 
+ 00012701  0x00002484 branch  0x000032c5 
+ 00012702  0x00002487 call  0x00002f88 
+ 00012703  0x00002488 call  0x0000324c 
+ 00012704  0x00002489 store  0x00000001 , 0x00000aa2 
+ 00012705  0x0000248b call  0x00003274 
+ 00012706  0x0000248c fetch  0x00000001 , 0x00000aa2 
+ 00012707  0x0000248e isolate1  0x00000003 , 0x00000002 
+ 00012708  0x0000248f setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00012709  0x00002490 add  0x00000013 , 0x000000b2 , 0x00000005 
+ 00012710  0x00002491 istore  0x00000001 , 0x00000005 
+ 00012711  0x00002493 beq  0x00000001 , 0x00003216 
+ 00012712  0x00002494 call  0x00003245 
+ 00012713  0x00002496 call  0x00003274 
+ 00012714  0x00002498 isolate1  0x00000004 , 0x00000002 
+ 00012715  0x00002499 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00012716  0x0000249a call  0x00003249 
+ 00012717  0x0000249c add  0x00000013 , 0x000000de , 0x00000011 
+ 00012718  0x0000249d ifetch  0x00000002 , 0x00000011 
+ 00012719  0x0000249f branch  0x00007f9c 
+ 00012720  0x000024a2 setarg  0x00000001 
+ 00012721  0x000024a3 store  0x00000001 , 0x00000d54 
+ 00012722  0x000024a4 call  0x0000329e 
+ 00012723  0x000024a6 istore  0x00000007 , 0x00000005 
+ 00012724  0x000024a7 call  0x0000329e 
+ 00012725  0x000024a9 ncall  0x000031bd , 0x00000034 
+ 00012726  0x000024aa call  0x0000329e 
+ 00012727  0x000024ac call  0x000031c2 , 0x00000034 
+ 00012728  0x000024ae jam  0x00000020 , 0x00000d52 
+ 00012729  0x000024b0 fetch  0x00000001 , 0x00000d38 
+ 00012730  0x000024b1 set1  0x00000002 , 0x0000003f 
+ 00012731  0x000024b2 store  0x00000001 , 0x00000d38 
+ 00012732  0x000024b3 rtn 
+ 00012733  0x000024b6 setarg  0x00000001 
+ 00012734  0x000024b7 call  0x000032a8 
+ 00012735  0x000024ba setarg  0x00000140 
+ 00012736  0x000024bb arg  0x0000000b , 0x00000007 
+ 00012737  0x000024bc branch  0x00007f08 
+ 00012738  0x000024be call  0x000032a7 
+ 00012739  0x000024c1 setarg  0x00000000 
+ 00012740  0x000024c2 arg  0x0000000b , 0x00000007 
+ 00012741  0x000024c3 branch  0x00007f08 
+ 00012742  0x000024c6 call  0x00003274 
+ 00012743  0x000024c8 isolate1  0x00000003 , 0x00000002 
+ 00012744  0x000024c9 branch  0x0000321b , 0x00000001 
+ 00012745  0x000024ca arg  0x00000d64 , 0x00000005 
+ 00012746  0x000024cb call  0x000031e0 
+ 00012747  0x000024cc fetch  0x00000008 , 0x00000d64 
+ 00012748  0x000024cd ncall  0x000031e4 , 0x00000034 
+ 00012749  0x000024ce fetch  0x00000008 , 0x00000d64 
+ 00012750  0x000024cf call  0x000031e9 , 0x00000034 
+ 00012751  0x000024d0 call  0x00002c7a 
+ 00012752  0x000024d1 fetch  0x00000008 , 0x00000d64 
+ 00012753  0x000024d2 arg  0x00000168 , 0x00000011 
+ 00012754  0x000024d3 call  0x000032bf 
+ 00012755  0x000024d4 istore  0x00000008 , 0x00000005 
+ 00012756  0x000024d6 setarg  0x00000170 
+ 00012757  0x000024d7 iadd  0x00000013 , 0x00000011 
+ 00012758  0x000024d8 ifetcht  0x00000008 , 0x00000011 
+ 00012759  0x000024da isub  0x00000002 , 0x0000003e 
+ 00012760  0x000024db ncall  0x000031ed , 0x00000005 
+ 00012761  0x000024dc setarg  0x00000168 
+ 00012762  0x000024dd iadd  0x00000013 , 0x00000011 
+ 00012763  0x000024de ifetch  0x00000008 , 0x00000011 
+ 00012764  0x000024e0 arg  0x00000170 , 0x00000011 
+ 00012765  0x000024e1 call  0x000032bf 
+ 00012766  0x000024e2 istore  0x00000008 , 0x00000005 
+ 00012767  0x000024e4 branch  0x00002f5e 
+ 00012768  0x000024e7 setarg  0x0000010b 
+ 00012769  0x000024e8 iadd  0x00000013 , 0x00000006 
+ 00012770  0x000024ea arg  0x00000009 , 0x00000039 
+ 00012771  0x000024eb branch  0x00007ff3 
+ 00012772  0x000024ee setarg  0x00000001 
+ 00012773  0x000024ef call  0x000032ab 
+ 00012774  0x000024f2 setarg  0x00000140 
+ 00012775  0x000024f3 arg  0x0000000e , 0x00000007 
+ 00012776  0x000024f4 branch  0x00007f08 
+ 00012777  0x000024f7 call  0x000032aa 
+ 00012778  0x000024fa setarg  0x00000000 
+ 00012779  0x000024fb arg  0x0000000e , 0x00000007 
+ 00012780  0x000024fc branch  0x00007f08 
+ 00012781  0x00002500 jam  0x00000010 , 0x00000d51 
+ 00012782  0x00002501 fetch  0x00000001 , 0x00000d38 
+ 00012783  0x00002502 set1  0x00000001 , 0x0000003f 
+ 00012784  0x00002503 store  0x00000001 , 0x00000d38 
+ 00012785  0x00002504 rtn 
+ 00012786  0x00002507 arg  0x00000d74 , 0x00000005 
+ 00012787  0x00002508 call  0x000031e0 
+ 00012788  0x00002509 fetch  0x00000002 , 0x00000d75 
+ 00012789  0x0000250a ncall  0x00003209 , 0x00000034 
+ 00012790  0x0000250b fetch  0x00000002 , 0x00000d75 
+ 00012791  0x0000250c call  0x0000320e , 0x00000034 
+ 00012792  0x0000250d call  0x00002c7a 
+ 00012793  0x0000250e fetch  0x00000003 , 0x00000d74 
+ 00012794  0x0000250f arg  0x00000178 , 0x00000011 
+ 00012795  0x00002510 call  0x000032c4 
+ 00012796  0x00002512 setarg  0x0000017b 
+ 00012797  0x00002513 iadd  0x00000013 , 0x00000011 
+ 00012798  0x00002514 ifetcht  0x00000003 , 0x00000011 
+ 00012799  0x00002516 isub  0x00000002 , 0x0000003e 
+ 00012800  0x00002517 ncall  0x00003207 , 0x00000005 
+ 00012801  0x00002518 setarg  0x00000178 
+ 00012802  0x00002519 iadd  0x00000013 , 0x00000011 
+ 00012803  0x0000251a ifetch  0x00000003 , 0x00000011 
+ 00012804  0x0000251c arg  0x0000017b , 0x00000011 
+ 00012805  0x0000251d call  0x000032c4 
+ 00012806  0x0000251f branch  0x00002f5e 
+ 00012807  0x00002522 jam  0x00000021 , 0x00000d52 
+ 00012808  0x00002523 branch  0x000031b9 
+ 00012809  0x00002526 setarg  0x00000001 
+ 00012810  0x00002527 call  0x000032ae 
+ 00012811  0x0000252a setarg  0x00000140 
+ 00012812  0x0000252b arg  0x0000000c , 0x00000007 
+ 00012813  0x0000252c branch  0x00007f08 
+ 00012814  0x0000252f call  0x000032ad 
+ 00012815  0x00002532 setarg  0x00000000 
+ 00012816  0x00002533 arg  0x0000000c , 0x00000007 
+ 00012817  0x00002534 branch  0x00007f08 
+ 00012818  0x00002537 call  0x000032bd 
+ 00012819  0x00002539 beq  0x00000001 , 0x00003216 
+ 00012820  0x0000253a beq  0x00000002 , 0x0000321b 
+ 00012821  0x0000253b rtn 
+ 00012822  0x0000253d setarg  0x0000010d 
+ 00012823  0x0000253e call  0x0000327e 
+ 00012824  0x0000253f arg  0x00000160 , 0x00000011 
+ 00012825  0x00002540 call  0x000032bf 
+ 00012826  0x00002543 branch  0x0000322d 
+ 00012827  0x00002546 setarg  0x0000010d 
+ 00012828  0x00002547 call  0x0000327e 
+ 00012829  0x00002548 arg  0x00000164 , 0x00000011 
+ 00012830  0x00002549 call  0x000032bf 
+ 00012831  0x0000254c branch  0x0000322d 
+ 00012832  0x0000254f call  0x00002c7a 
+ 00012833  0x00002550 add  0x00000013 , 0x000000cd , 0x00000005 
+ 00012834  0x00002551 istore  0x00000001 , 0x00000005 
+ 00012835  0x00002552 rtn 
+ 00012836  0x00002555 call  0x00002c7a 
+ 00012837  0x00002556 add  0x00000013 , 0x000000be , 0x00000011 
+ 00012838  0x00002557 branch  0x0000327f 
+ 00012839  0x00002559 call  0x00002c7a 
+ 00012840  0x0000255a add  0x00000013 , 0x000000be , 0x00000005 
+ 00012841  0x0000255b branch  0x0000322d 
+ 00012842  0x0000255e add  0x00000013 , 0x000000ae , 0x00000011 
+ 00012843  0x0000255f branch  0x0000327f 
+ 00012844  0x00002561 add  0x00000013 , 0x000000ae , 0x00000005 
+ 00012845  0x00002563 istore  0x00000004 , 0x00000005 
+ 00012846  0x00002564 rtn 
+ 00012847  0x00002567 add  0x00000013 , 0x00000090 , 0x00000005 
+ 00012848  0x00002568 branch  0x000032b4 
+ 00012849  0x0000256b setarg  0x00000000 
+ 00012850  0x0000256d call  0x00002c7a 
+ 00012851  0x0000256e add  0x00000013 , 0x00000085 , 0x00000005 
+ 00012852  0x0000256f branch  0x000032b4 
+ 00012853  0x00002572 add  0x00000013 , 0x00000042 , 0x00000005 
+ 00012854  0x00002573 branch  0x000032b4 
+ 00012855  0x00002576 setarg  0x00000004 
+ 00012856  0x00002578 add  0x00000013 , 0x000000cc , 0x00000005 
+ 00012857  0x00002579 branch  0x000032b4 
+ 00012858  0x0000257c add  0x00000013 , 0x00000087 , 0x00000011 
+ 00012859  0x0000257d branch  0x000032d1 
+ 00012860  0x0000257f add  0x00000013 , 0x00000087 , 0x00000005 
+ 00012861  0x00002580 branch  0x000032b4 
+ 00012862  0x00002583 setarg  0x00000002 
+ 00012863  0x00002585 add  0x00000013 , 0x000000d0 , 0x00000005 
+ 00012864  0x00002586 branch  0x000032b4 
+ 00012865  0x00002589 setarg  0x00000001 
+ 00012866  0x0000258b call  0x00002c7a 
+ 00012867  0x0000258c add  0x00000013 , 0x000000ce , 0x00000005 
+ 00012868  0x0000258d branch  0x000032b4 
+ 00012869  0x00002590 call  0x00002c7a 
+ 00012870  0x00002591 add  0x00000013 , 0x000000b4 , 0x00000011 
+ 00012871  0x00002592 branch  0x000032d1 
+ 00012872  0x00002594 setarg  0x00000001 
+ 00012873  0x00002596 call  0x00002c7a 
+ 00012874  0x00002597 add  0x00000013 , 0x000000b4 , 0x00000005 
+ 00012875  0x00002598 branch  0x000032b4 
+ 00012876  0x0000259b call  0x00002c7a 
+ 00012877  0x0000259c add  0x00000013 , 0x000000b2 , 0x00000011 
+ 00012878  0x0000259d branch  0x000032d1 
+ 00012879  0x0000259f setarg  0x00000001 
+ 00012880  0x000025a1 call  0x00002c7a 
+ 00012881  0x000025a2 add  0x00000013 , 0x000000b2 , 0x00000005 
+ 00012882  0x000025a3 branch  0x000032b4 
+ 00012883  0x000025a6 call  0x00002c7a 
+ 00012884  0x000025a7 add  0x00000013 , 0x00000096 , 0x00000011 
+ 00012885  0x000025a8 branch  0x000032d1 
+ 00012886  0x000025aa add  0x00000013 , 0x00000096 , 0x00000005 
+ 00012887  0x000025ab branch  0x000032b4 
+ 00012888  0x000025ae add  0x00000013 , 0x000000cf , 0x00000011 
+ 00012889  0x000025af branch  0x000032d1 
+ 00012890  0x000025b1 setarg  0x00000000 
+ 00012891  0x000025b3 add  0x00000013 , 0x000000cf , 0x00000005 
+ 00012892  0x000025b4 branch  0x000032b4 
+ 00012893  0x000025b7 add  0x00000013 , 0x000000d2 , 0x00000011 
+ 00012894  0x000025b8 branch  0x000032d1 
+ 00012895  0x000025bb add  0x00000013 , 0x00000001 , 0x00000011 
+ 00012896  0x000025bc branch  0x000032d1 
+ 00012897  0x000025bf add  0x00000013 , 0x000000b5 , 0x00000011 
+ 00012898  0x000025c0 branch  0x000032d1 
+ 00012899  0x000025c2 setarg  0x00000000 
+ 00012900  0x000025c4 call  0x00002c7a 
+ 00012901  0x000025c5 add  0x00000013 , 0x000000b5 , 0x00000005 
+ 00012902  0x000025c6 branch  0x000032b4 
+ 00012903  0x000025c9 call  0x00002c7a 
+ 00012904  0x000025ca add  0x00000013 , 0x000000fb , 0x00000011 
+ 00012905  0x000025cb ifetch  0x00000001 , 0x00000011 
+ 00012906  0x000025cd store  0x00000001 , 0x000041de 
+ 00012907  0x000025ce rtn 
+ 00012908  0x000025d1 call  0x00002c7a 
+ 00012909  0x000025d2 fetch  0x00000001 , 0x000041de 
+ 00012910  0x000025d4 add  0x00000013 , 0x000000fb , 0x00000005 
+ 00012911  0x000025d5 branch  0x000032b4 
+ 00012912  0x000025d8 add  0x00000013 , 0x000000fc , 0x00000011 
+ 00012913  0x000025d9 branch  0x000032d1 
+ 00012914  0x000025dc add  0x00000013 , 0x000000fe , 0x00000005 
+ 00012915  0x000025dd branch  0x000032b4 
+ 00012916  0x000025e0 setarg  0x00000109 
+ 00012917  0x000025e2 iadd  0x00000013 , 0x00000011 
+ 00012918  0x000025e3 ifetcht  0x00000001 , 0x00000011 
+ 00012919  0x000025e4 rtn 
+ 00012920  0x000025e7 setarg  0x00000135 
+ 00012921  0x000025e8 branch  0x000032d0 
+ 00012922  0x000025ea setarg  0x00000000 
+ 00012923  0x000025ec arg  0x00000135 , 0x00000011 
+ 00012924  0x000025ed branch  0x000032b3 
+ 00012925  0x000025f0 setarg  0x0000012b 
+ 00012926  0x000025f2 call  0x000032cd 
+ 00012927  0x000025f4 ifetch  0x00000004 , 0x00000011 
+ 00012928  0x000025f5 rtn 
+ 00012929  0x000025f8 setarg  0x0000015f 
+ 00012930  0x000025f9 branch  0x000032d0 
+ 00012931  0x000025fb setarg  0x00000000 
+ 00012932  0x000025fd arg  0x0000015f , 0x00000011 
+ 00012933  0x000025fe branch  0x000032b3 
+ 00012934  0x00002601 setarg  0x00000000 
+ 00012935  0x00002603 arg  0x0000015c , 0x00000011 
+ 00012936  0x00002604 branch  0x000032b3 
+ 00012937  0x00002607 arg  0x0000012f , 0x00000011 
+ 00012938  0x00002608 branch  0x000032b3 
+ 00012939  0x0000260b setarg  0x00000108 
+ 00012940  0x0000260c branch  0x000032d0 
+ 00012941  0x0000260e arg  0x00000108 , 0x00000011 
+ 00012942  0x0000260f branch  0x000032b3 
+ 00012943  0x00002612 setarg  0x00000105 
+ 00012944  0x00002613 branch  0x000032d0 
+ 00012945  0x00002615 setarg  0x00000000 
+ 00012946  0x00002617 arg  0x00000105 , 0x00000011 
+ 00012947  0x00002618 branch  0x000032b3 
+ 00012948  0x0000261b setarg  0x00000104 
+ 00012949  0x0000261c branch  0x000032d0 
+ 00012950  0x0000261e setarg  0x00000000 
+ 00012951  0x00002620 arg  0x00000104 , 0x00000011 
+ 00012952  0x00002621 branch  0x000032b3 
+ 00012953  0x00002624 setarg  0x00000000 
+ 00012954  0x00002626 arg  0x0000013b , 0x00000011 
+ 00012955  0x00002627 branch  0x000032b3 
+ 00012956  0x00002629 setarg  0x00000001 
+ 00012957  0x0000262a branch  0x0000329a 
+ 00012958  0x0000262d setarg  0x0000010c 
+ 00012959  0x0000262e call  0x000032cd 
+ 00012960  0x0000262f ifetch  0x00000007 , 0x00000011 
+ 00012961  0x00002630 rtn 
+ 00012962  0x00002633 setarg  0x0000015e 
+ 00012963  0x00002634 branch  0x000032d0 
+ 00012964  0x00002636 setarg  0x00000000 
+ 00012965  0x00002638 arg  0x0000015e , 0x00000011 
+ 00012966  0x00002639 branch  0x000032b3 
+ 00012967  0x0000263c setarg  0x00000000 
+ 00012968  0x0000263e arg  0x00000180 , 0x00000011 
+ 00012969  0x0000263f branch  0x000032b3 
+ 00012970  0x00002642 setarg  0x00000000 
+ 00012971  0x00002644 arg  0x0000017e , 0x00000011 
+ 00012972  0x00002645 branch  0x000032b3 
+ 00012973  0x00002648 setarg  0x00000000 
+ 00012974  0x0000264a arg  0x0000017f , 0x00000011 
+ 00012975  0x0000264b branch  0x000032b3 
+ 00012976  0x0000264e arg  0x00000102 , 0x00000011 
+ 00012977  0x0000264f branch  0x000032b3 
+ 00012978  0x00002652 arg  0x00000103 , 0x00000011 
+ 00012979  0x00002654 call  0x000032c7 
+ 00012980  0x00002656 istore  0x00000001 , 0x00000005 
+ 00012981  0x00002657 rtn 
+ 00012982  0x0000265a setarg  0x0000015d 
+ 00012983  0x0000265b branch  0x000032d0 
+ 00012984  0x0000265e arg  0x0000015d , 0x00000011 
+ 00012985  0x0000265f branch  0x000032b3 
+ 00012986  0x00002662 setarg  0x0000018a 
+ 00012987  0x00002663 call  0x000032d0 
+ 00012988  0x00002664 branch  0x0000326a 
+ 00012989  0x00002667 setarg  0x0000010c 
+ 00012990  0x00002668 branch  0x000032d0 
+ 00012991  0x0000266b copy  0x0000003f , 0x00000002 
+ 00012992  0x0000266c copy  0x00000011 , 0x0000003f 
+ 00012993  0x0000266d iadd  0x00000013 , 0x00000005 
+ 00012994  0x0000266e copy  0x00000002 , 0x0000003f 
+ 00012995  0x0000266f rtn 
+ 00012996  0x00002672 call  0x000032bf 
+ 00012997  0x00002674 istore  0x00000003 , 0x00000005 
+ 00012998  0x00002675 rtn 
+ 00012999  0x00002678 call  0x00002c7a 
+ 00013000  0x0000267a copy  0x0000003f , 0x00000012 
+ 00013001  0x0000267b copy  0x00000011 , 0x0000003f 
+ 00013002  0x0000267c iadd  0x00000013 , 0x00000005 
+ 00013003  0x0000267d copy  0x00000012 , 0x0000003f 
+ 00013004  0x0000267e rtn 
+ 00013005  0x00002681 call  0x00002c7a 
+ 00013006  0x00002682 iadd  0x00000013 , 0x00000011 
+ 00013007  0x00002683 rtn 
+ 00013008  0x00002686 call  0x000032cd 
+ 00013009  0x00002688 ifetch  0x00000001 , 0x00000011 
+ 00013010  0x00002689 rtn 
+ 00013011  0x0000268c call  0x000032cd 
+ 00013012  0x0000268d ifetcht  0x00000004 , 0x00000011 
+ 00013013  0x0000268e rtn 
+ 00013014  0x00002691 setarg  0x00000000 
+ 00013015  0x00002692 branch  0x000032b4 
+ 00013016  0x00002697 bpatch  0x000000c4 , 0x00004018 
+ 00013017  0x00002698 fetch  0x00000001 , 0x00004092 
+ 00013018  0x00002699 branch  0x000032d8 , 0x00000034 
+ 00013019  0x0000269b beq  0x00000004 , 0x00002f30 
+ 00013020  0x0000269c beq  0x0000000f , 0x00003436 
+ 00013021  0x0000269d beq  0x00000009 , 0x000045de 
+ 00013022  0x0000269e beq  0x0000000a , 0x0000392a 
+ 00013023  0x0000269f beq  0x0000000e , 0x000035bf 
+ 00013024  0x000026a0 beq  0x00000010 , 0x000044a4 
+ 00013025  0x000026a1 bbit1  0x00000006 , 0x00003d00 
+ 00013026  0x000026a2 rtn 
+ 00013027  0x000026a5 bpatch  0x000000c5 , 0x00004018 
+ 00013028  0x000026a6 jam  0x00000000 , 0x00000151 
+ 00013029  0x000026a7 jam  0x00000000 , 0x0000017f 
+ 00013030  0x000026a8 jam  0x00000000 , 0x00000180 
+ 00013031  0x000026a9 setarg  0x00000000 
+ 00013032  0x000026aa store  0x00000005 , 0x000009ae 
+ 00013033  0x000026ab fetch  0x00000001 , 0x00004092 
+ 00013034  0x000026ac branch  0x000032e3 , 0x00000034 
+ 00013035  0x000026ad beq  0x0000000a , 0x00003962 
+ 00013036  0x000026af rtn 
+ 00013037  0x000026b3 call  0x00007cd1 
+ 00013038  0x000026b4 call  0x00007d9c 
+ 00013039  0x000026b5 call  0x000032f6 
+ 00013040  0x000026b6 fetch  0x00000002 , 0x000041f3 
+ 00013041  0x000026b7 branch  0x00007f9c 
+ 00013042  0x000026ba fetch  0x00000002 , 0x000041f1 
+ 00013043  0x000026bb branch  0x00007f9c 
+ 00013044  0x000026be fetch  0x00000002 , 0x000041ef 
+ 00013045  0x000026bf branch  0x00007f9c 
+ 00013046  0x000026c2 bpatch  0x000000c6 , 0x00004018 
+ 00013047  0x000026c4 arg  0x00004668 , 0x00000011 
+ 00013048  0x000026c5 call  0x00007fc4 
+ 00013049  0x000026c6 rtn  0x00000034 
+ 00013050  0x000026c8 copy  0x0000003f , 0x00000013 
+ 00013051  0x000026c9 call  0x000032ff 
+ 00013052  0x000026ca branch  0x00003324 
+ 00013053  0x000026cd arg  0x00000000 , 0x00000013 
+ 00013054  0x000026ce rtn 
+ 00013055  0x000026d4 beq  0x00000001 , 0x00003311 
+ 00013056  0x000026d5 beq  0x00000010 , 0x00003357 
+ 00013057  0x000026d6 beq  0x00000005 , 0x00003335 
+ 00013058  0x000026d7 beq  0x00000012 , 0x0000333c 
+ 00013059  0x000026d8 beq  0x00000006 , 0x00003353 
+ 00013060  0x000026d9 beq  0x00000004 , 0x00003394 
+ 00013061  0x000026da beq  0x00000002 , 0x00003399 
+ 00013062  0x000026db beq  0x00000013 , 0x00003394 
+ 00013063  0x000026dc beq  0x00000014 , 0x0000334b 
+ 00013064  0x000026dd beq  0x00000015 , 0x0000334f 
+ 00013065  0x000026de beq  0x00000003 , 0x0000332e 
+ 00013066  0x000026df beq  0x0000000b , 0x00003340 
+ 00013067  0x000026e0 beq  0x0000000c , 0x00003347 
+ 00013068  0x000026e2 beq  0x00000016 , 0x0000335b 
+ 00013069  0x000026e3 beq  0x00000018 , 0x0000332a 
+ 00013070  0x000026e4 beq  0x0000002a , 0x0000331a 
+ 00013071  0x000026e5 beq  0x0000002b , 0x00003318 
+ 00013072  0x000026e6 rtn 
+ 00013073  0x000026ea fetch  0x00000002 , 0x00004682 
+ 00013074  0x000026eb set1  0x00000000 , 0x0000003f 
+ 00013075  0x000026ec store  0x00000002 , 0x00004682 
+ 00013076  0x000026ed fetch  0x00000002 , 0x0000420a 
+ 00013077  0x000026ee set0  0x00000000 , 0x0000003f 
+ 00013078  0x000026ef store  0x00000002 , 0x0000420a 
+ 00013079  0x000026f0 rtn 
+ 00013080  0x000026f3 jam  0x00000000 , 0x00000229 
+ 00013081  0x000026f4 rtn 
+ 00013082  0x000026f7 fetch  0x00000001 , 0x00000229 
+ 00013083  0x000026f8 increase  0x00000001 , 0x0000003f 
+ 00013084  0x000026f9 store  0x00000001 , 0x00000229 
+ 00013085  0x000026fa sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00013086  0x000026fb branch  0x000033df , 0x00000002 
+ 00013087  0x000026fc jam  0x00000000 , 0x00000229 
+ 00013088  0x000026fd fetch  0x00000002 , 0x0000420a 
+ 00013089  0x000026fe set1  0x00000009 , 0x0000003f 
+ 00013090  0x000026ff store  0x00000002 , 0x0000420a 
+ 00013091  0x00002700 branch  0x000033e9 
+ 00013092  0x00002703 fetch  0x00000002 , 0x000041f5 
+ 00013093  0x00002704 branch  0x00007f9c 
+ 00013094  0x00002707 fetch  0x00000002 , 0x000041e9 
+ 00013095  0x00002708 branch  0x00007f9c 
+ 00013096  0x0000270b fetch  0x00000002 , 0x000041ed 
+ 00013097  0x0000270c branch  0x00007f9c 
+ 00013098  0x0000270f fetch  0x00000002 , 0x0000420a 
+ 00013099  0x00002710 set1  0x00000001 , 0x0000003f 
+ 00013100  0x00002711 store  0x00000002 , 0x0000420a 
+ 00013101  0x00002712 branch  0x00003412 
+ 00013102  0x00002715 fetch  0x00000002 , 0x00004682 
+ 00013103  0x00002716 set1  0x00000007 , 0x0000003f 
+ 00013104  0x00002717 store  0x00000002 , 0x00004682 
+ 00013105  0x00002718 fetch  0x00000002 , 0x0000420a 
+ 00013106  0x00002719 set1  0x00000002 , 0x0000003f 
+ 00013107  0x0000271a store  0x00000002 , 0x0000420a 
+ 00013108  0x0000271b rtn 
+ 00013109  0x0000271e fetch  0x00000002 , 0x00004682 
+ 00013110  0x0000271f set1  0x00000001 , 0x0000003f 
+ 00013111  0x00002720 store  0x00000002 , 0x00004682 
+ 00013112  0x00002721 fetch  0x00000002 , 0x0000420a 
+ 00013113  0x00002722 set1  0x00000004 , 0x0000003f 
+ 00013114  0x00002723 store  0x00000002 , 0x0000420a 
+ 00013115  0x00002724 rtn 
+ 00013116  0x00002727 fetch  0x00000002 , 0x00004682 
+ 00013117  0x00002728 set1  0x00000003 , 0x0000003f 
+ 00013118  0x00002729 store  0x00000002 , 0x00004682 
+ 00013119  0x0000272a rtn 
+ 00013120  0x0000272d fetch  0x00000002 , 0x00004682 
+ 00013121  0x0000272e set1  0x00000005 , 0x0000003f 
+ 00013122  0x0000272f store  0x00000002 , 0x00004682 
+ 00013123  0x00002730 fetch  0x00000002 , 0x0000420a 
+ 00013124  0x00002731 set1  0x00000003 , 0x0000003f 
+ 00013125  0x00002732 store  0x00000002 , 0x0000420a 
+ 00013126  0x00002733 rtn 
+ 00013127  0x00002736 fetch  0x00000002 , 0x00004682 
+ 00013128  0x00002737 set0  0x00000005 , 0x0000003f 
+ 00013129  0x00002738 store  0x00000002 , 0x00004682 
+ 00013130  0x00002739 rtn 
+ 00013131  0x0000273c fetch  0x00000002 , 0x00004682 
+ 00013132  0x0000273d set1  0x00000009 , 0x0000003f 
+ 00013133  0x0000273e store  0x00000002 , 0x00004682 
+ 00013134  0x0000273f rtn 
+ 00013135  0x00002742 fetch  0x00000002 , 0x00004682 
+ 00013136  0x00002743 set0  0x00000009 , 0x0000003f 
+ 00013137  0x00002744 store  0x00000002 , 0x00004682 
+ 00013138  0x00002745 branch  0x00003418 
+ 00013139  0x00002748 fetch  0x00000002 , 0x00004682 
+ 00013140  0x00002749 set1  0x00000002 , 0x0000003f 
+ 00013141  0x0000274a store  0x00000002 , 0x00004682 
+ 00013142  0x0000274b rtn 
+ 00013143  0x0000274e fetch  0x00000002 , 0x0000420a 
+ 00013144  0x0000274f set1  0x00000000 , 0x0000003f 
+ 00013145  0x00002750 store  0x00000002 , 0x0000420a 
+ 00013146  0x00002751 rtn 
+ 00013147  0x00002754 fetch  0x00000002 , 0x0000420a 
+ 00013148  0x00002755 set1  0x00000008 , 0x0000003f 
+ 00013149  0x00002756 store  0x00000002 , 0x0000420a 
+ 00013150  0x00002757 branch  0x000033e9 
+ 00013151  0x0000275b bpatch  0x000000c7 , 0x00004018 
+ 00013152  0x0000275c store  0x00000001 , 0x0000022a 
+ 00013153  0x0000275e fetch  0x00000001 , 0x0000022a 
+ 00013154  0x0000275f rtn  0x00000034 
+ 00013155  0x00002760 increase  0xffffffff , 0x0000003f 
+ 00013156  0x00002761 store  0x00000001 , 0x0000022a 
+ 00013157  0x00002762 call  0x00007cdd 
+ 00013158  0x00002763 call  0x000033d6 
+ 00013159  0x00002764 call  0x00003387 
+ 00013160  0x00002765 call  0x0000338d 
+ 00013161  0x00002766 call  0x0000651b 
+ 00013162  0x00002767 fetch  0x00000002 , 0x000041fd 
+ 00013163  0x00002768 call  0x00007f9c 
+ 00013164  0x00002769 branch  0x00003361 
+ 00013165  0x0000276f ifetch  0x00000001 , 0x00000013 
+ 00013166  0x00002770 rtn  0x00000034 
+ 00013167  0x00002771 pincrease  0xffffffff 
+ 00013168  0x00002772 istore  0x00000001 , 0x00000013 
+ 00013169  0x00002773 nrtn  0x00000034 
+ 00013170  0x00002774 copy  0x00000012 , 0x0000003f 
+ 00013171  0x00002775 branch  0x00007f9c 
+ 00013172  0x0000277a ifetch  0x00000002 , 0x00000013 
+ 00013173  0x0000277b rtn  0x00000034 
+ 00013174  0x0000277c pincrease  0xffffffff 
+ 00013175  0x0000277d istore  0x00000002 , 0x00000013 
+ 00013176  0x0000277e nrtn  0x00000034 
+ 00013177  0x0000277f copy  0x00000012 , 0x0000003f 
+ 00013178  0x00002780 branch  0x00007f9c 
+ 00013179  0x00002783 fetcht  0x00000002 , 0x0000423f 
+ 00013180  0x00002784 add  0x00000002 , 0x00000001 , 0x00000013 
+ 00013181  0x00002785 arg  0x0000337f , 0x00000012 
+ 00013182  0x00002786 branch  0x0000336d 
+ 00013183  0x00002789 call  0x0000342d 
+ 00013184  0x0000278a beq  0x00000001 , 0x00003382 
+ 00013185  0x0000278c branch  0x0000340a 
+ 00013186  0x0000278e setarg  0x00000002 
+ 00013187  0x0000278f istore  0x00000001 , 0x00000013 
+ 00013188  0x00002790 add  0x00000002 , 0x00000008 , 0x00000012 
+ 00013189  0x00002792 ifetch  0x00000002 , 0x00000012 
+ 00013190  0x00002793 branch  0x00007f9c 
+ 00013191  0x00002796 arg  0x00004205 , 0x00000013 
+ 00013192  0x00002797 arg  0x0000338a , 0x00000012 
+ 00013193  0x00002798 branch  0x0000336d 
+ 00013194  0x0000279b call  0x00002252 
+ 00013195  0x0000279c branch  0x0000340e , 0x00000005 
+ 00013196  0x0000279d rtn 
+ 00013197  0x000027a1 arg  0x0000467e , 0x00000013 
+ 00013198  0x000027a2 arg  0x00003390 , 0x00000012 
+ 00013199  0x000027a3 branch  0x00003374 
+ 00013200  0x000027a6 call  0x000033f0 
+ 00013201  0x000027a7 call  0x00003408 
+ 00013202  0x000027a8 fetch  0x00000002 , 0x000041f7 
+ 00013203  0x000027a9 branch  0x00007f9c 
+ 00013204  0x000027ad call  0x000033ac 
+ 00013205  0x000027af fetch  0x00000002 , 0x00004682 
+ 00013206  0x000027b0 set0  0x00000007 , 0x0000003f 
+ 00013207  0x000027b1 store  0x00000002 , 0x00004682 
+ 00013208  0x000027b2 rtn 
+ 00013209  0x000027b5 jam  0x00000000 , 0x00004205 
+ 00013210  0x000027b6 fetch  0x00000002 , 0x00004682 
+ 00013211  0x000027b7 bbit1  0x00000007 , 0x0000339e 
+ 00013212  0x000027b8 isolate0  0x00000001 , 0x0000003f 
+ 00013213  0x000027b9 call  0x000032fd , 0x00000001 
+ 00013214  0x000027bb bpatch  0x000000c8 , 0x00004019 
+ 00013215  0x000027bc fetch  0x00000002 , 0x00004682 
+ 00013216  0x000027bd set0  0x00000000 , 0x0000003f 
+ 00013217  0x000027be set0  0x00000001 , 0x0000003f 
+ 00013218  0x000027bf set0  0x00000002 , 0x0000003f 
+ 00013219  0x000027c0 set0  0x00000003 , 0x0000003f 
+ 00013220  0x000027c1 set0  0x00000007 , 0x0000003f 
+ 00013221  0x000027c2 store  0x00000002 , 0x00004682 
+ 00013222  0x000027c3 branch  0x00003418 
+ 00013223  0x000027c6 call  0x000033a9 
+ 00013224  0x000027c7 branch  0x0000340a 
+ 00013225  0x000027cb setarg  0x00000000 
+ 00013226  0x000027cc store  0x00000002 , 0x00004208 
+ 00013227  0x000027cd rtn 
+ 00013228  0x000027cf setarg  0x00000000 
+ 00013229  0x000027d0 store  0x00000002 , 0x0000420a 
+ 00013230  0x000027d1 rtn 
+ 00013231  0x000027d4 fetch  0x00000002 , 0x0000420a 
+ 00013232  0x000027d5 store  0x00000002 , 0x00004208 
+ 00013233  0x000027d6 setarg  0x00000000 
+ 00013234  0x000027d7 store  0x00000002 , 0x0000420a 
+ 00013235  0x000027d8 rtn 
+ 00013236  0x000027db fetch  0x00000002 , 0x0000420a 
+ 00013237  0x000027dc set1  0x00000007 , 0x0000003f 
+ 00013238  0x000027dd store  0x00000002 , 0x00004208 
+ 00013239  0x000027de setarg  0x00000000 
+ 00013240  0x000027df store  0x00000002 , 0x0000420a 
+ 00013241  0x000027e0 rtn 
+ 00013242  0x000027e9 fetch  0x00000001 , 0x00004682 
+ 00013243  0x000027ea isolate1  0x00000005 , 0x0000003f 
+ 00013244  0x000027eb rtn 
+ 00013245  0x000027f4 setarg  0x0000aa55 
+ 00013246  0x000027f6 store  0x00000002 , 0x00000aaa 
+ 00013247  0x000027f7 bpatch  0x000000c9 , 0x00004019 
+ 00013248  0x000027f8 arg  0x00000002 , 0x00000002 
+ 00013249  0x000027f9 arg  0x00000aaa , 0x00000011 
+ 00013250  0x000027fa arg  0x000000c3 , 0x00000012 
+ 00013251  0x000027fb branch  0x00006606 
+ 00013252  0x000027ff bpatch  0x000000ca , 0x00004019 
+ 00013253  0x00002800 arg  0x00000002 , 0x00000002 
+ 00013254  0x00002801 arg  0x00000a9a , 0x00000011 
+ 00013255  0x00002802 arg  0x000000c3 , 0x00000012 
+ 00013256  0x00002803 call  0x000065df 
+ 00013257  0x00002804 fetch  0x00000002 , 0x00000a9a 
+ 00013258  0x00002805 arg  0x0000aa55 , 0x00000002 
+ 00013259  0x00002806 isub  0x00000002 , 0x0000003e 
+ 00013260  0x00002807 rtn 
+ 00013261  0x0000280b fetch  0x00000001 , 0x0000455a 
+ 00013262  0x0000280c store  0x00000001 , 0x00004205 
+ 00013263  0x0000280d rtn 
+ 00013264  0x00002810 arg  0x00000009 , 0x00000007 
+ 00013265  0x00002811 branch  0x00002c32 
+ 00013266  0x00002814 arg  0x00000009 , 0x00000007 
+ 00013267  0x00002815 branch  0x00002c36 
+ 00013268  0x00002818 jam  0x00000005 , 0x00004206 
+ 00013269  0x00002819 branch  0x000033d0 
+ 00013270  0x0000281c arg  0x00004206 , 0x00000013 
+ 00013271  0x0000281d arg  0x000033d2 , 0x00000012 
+ 00013272  0x0000281e branch  0x0000336d 
+ 00013273  0x00002821 jam  0x00000001 , 0x00004363 
+ 00013274  0x00002822 rtn 
+ 00013275  0x00002825 jam  0x00000000 , 0x00004363 
+ 00013276  0x00002826 rtn 
+ 00013277  0x00002829 jam  0x0000000a , 0x00000a99 
+ 00013278  0x0000282a branch  0x00007d8f 
+ 00013279  0x0000282d jam  0x0000001d , 0x00000a99 
+ 00013280  0x0000282e branch  0x00007d8f 
+ 00013281  0x00002831 bpatch  0x000000cb , 0x00004019 
+ 00013282  0x00002832 fetch  0x00000001 , 0x00004207 
+ 00013283  0x00002833 store  0x00000001 , 0x0000016d 
+ 00013284  0x00002834 jam  0x00000001 , 0x00000228 
+ 00013285  0x00002835 jam  0x00000003 , 0x00000a99 
+ 00013286  0x00002836 branch  0x00007d8f 
+ 00013287  0x00002839 jam  0x0000001e , 0x00000a99 
+ 00013288  0x0000283a branch  0x00007d8f 
+ 00013289  0x0000283d jam  0x00000004 , 0x00000a99 
+ 00013290  0x0000283e branch  0x00007d8f 
+ 00013291  0x00002841 fetch  0x00000002 , 0x00004687 
+ 00013292  0x00002842 store  0x00000002 , 0x0000467e 
+ 00013293  0x00002844 call  0x00003404 
+ 00013294  0x00002846 jam  0x00000001 , 0x00000a99 
+ 00013295  0x00002847 branch  0x00007d8f 
+ 00013296  0x0000284a setarg  0x00000000 
+ 00013297  0x0000284b store  0x00000002 , 0x0000467e 
+ 00013298  0x0000284c jam  0x00000002 , 0x00000a99 
+ 00013299  0x0000284d branch  0x00007d8f 
+ 00013300  0x00002850 jam  0x0000000f , 0x00000a99 
+ 00013301  0x00002851 branch  0x00007d8f 
+ 00013302  0x00002854 jam  0x00000010 , 0x00000a99 
+ 00013303  0x00002855 branch  0x00007d8f 
+ 00013304  0x00002858 jam  0x0000000e , 0x00000a99 
+ 00013305  0x00002859 branch  0x00007d8f 
+ 00013306  0x0000285c jam  0x0000000d , 0x00000a99 
+ 00013307  0x0000285d branch  0x00007d8f 
+ 00013308  0x00002860 jam  0x00000017 , 0x00000a99 
+ 00013309  0x00002861 branch  0x00007d8f 
+ 00013310  0x00002864 jam  0x00000018 , 0x00000a99 
+ 00013311  0x00002865 branch  0x00007d8f 
+ 00013312  0x00002868 jam  0x00000016 , 0x00000a99 
+ 00013313  0x00002869 branch  0x00007d8f 
+ 00013314  0x0000286c jam  0x00000011 , 0x00000a99 
+ 00013315  0x0000286d branch  0x00007d8f 
+ 00013316  0x00002870 jam  0x00000015 , 0x00000a99 
+ 00013317  0x00002871 branch  0x00007d8f 
+ 00013318  0x00002874 jam  0x00000014 , 0x00000a99 
+ 00013319  0x00002875 branch  0x00007d8f 
+ 00013320  0x00002879 jam  0x00000013 , 0x00000a99 
+ 00013321  0x0000287a branch  0x00007d8f 
+ 00013322  0x0000287d jam  0x00000019 , 0x00000a99 
+ 00013323  0x0000287e branch  0x00007d8f 
+ 00013324  0x00002881 jam  0x00000006 , 0x00000a99 
+ 00013325  0x00002882 branch  0x00007d8f 
+ 00013326  0x00002885 jam  0x00000005 , 0x00000a99 
+ 00013327  0x00002886 branch  0x00007d8f 
+ 00013328  0x00002889 jam  0x0000001f , 0x00000a99 
+ 00013329  0x0000288a branch  0x00007d8f 
+ 00013330  0x0000288d jam  0x00000020 , 0x00000a99 
+ 00013331  0x0000288e branch  0x00007d8f 
+ 00013332  0x00002891 jam  0x00000025 , 0x00000a99 
+ 00013333  0x00002892 branch  0x00007d8f 
+ 00013334  0x00002895 set1  0x0000000d , 0x00000000 
+ 00013335  0x00002896 rtn 
+ 00013336  0x00002899 set0  0x0000000d , 0x00000000 
+ 00013337  0x0000289a rtn 
+ 00013338  0x000028af call  0x0000342d 
+ 00013339  0x000028b0 beq  0x00000002 , 0x00003424 
+ 00013340  0x000028b2 setarg  0x00000001 
+ 00013341  0x000028b3 istore  0x00000001 , 0x00000013 
+ 00013342  0x000028b4 add  0x00000002 , 0x00000003 , 0x00000011 
+ 00013343  0x000028b5 add  0x00000002 , 0x00000006 , 0x00000012 
+ 00013344  0x000028b7 ifetcht  0x00000001 , 0x00000011 
+ 00013345  0x000028b8 increase  0x00000001 , 0x00000013 
+ 00013346  0x000028b9 istoret  0x00000001 , 0x00000013 
+ 00013347  0x000028ba branch  0x00003385 
+ 00013348  0x000028bd setarg  0x00000000 
+ 00013349  0x000028be istore  0x00000001 , 0x00000013 
+ 00013350  0x000028bf fetch  0x00000002 , 0x00004682 
+ 00013351  0x000028c0 bbit0  0x00000009 , 0x00003429 
+ 00013352  0x000028c1 call  0x00003402 
+ 00013353  0x000028c3 fetcht  0x00000002 , 0x0000423f 
+ 00013354  0x000028c4 add  0x00000002 , 0x00000002 , 0x00000011 
+ 00013355  0x000028c5 add  0x00000002 , 0x00000004 , 0x00000012 
+ 00013356  0x000028c6 branch  0x00003420 
+ 00013357  0x000028c9 fetcht  0x00000002 , 0x0000423f 
+ 00013358  0x000028ca add  0x00000002 , 0x00000000 , 0x00000013 
+ 00013359  0x000028cb ifetch  0x00000001 , 0x00000013 
+ 00013360  0x000028cc rtn 
+ 00013361  0x000028cf call  0x0000342d 
+ 00013362  0x000028d0 bne  0x00000000 , 0x00003434 
+ 00013363  0x000028d1 branch  0x0000340a 
+ 00013364  0x000028d3 add  0x00000002 , 0x0000000a , 0x00000012 
+ 00013365  0x000028d4 branch  0x00003385 
+ 00013366  0x000028d7 rtn  0x0000002b 
+ 00013367  0x000028d8 jam  0x00000000 , 0x00008081 
+ 00013368  0x000028d9 setarg  0x00003463 
+ 00013369  0x000028da store  0x00000002 , 0x000041eb 
+ 00013370  0x000028db setarg  0x0000696c 
+ 00013371  0x000028dc store  0x00000002 , 0x000041ed 
+ 00013372  0x000028dd setarg  0x000034f5 
+ 00013373  0x000028de store  0x00000002 , 0x000041f3 
+ 00013374  0x000028df setarg  0x000034f4 
+ 00013375  0x000028e0 store  0x00000002 , 0x000041ef 
+ 00013376  0x000028e1 setarg  0x0000347e 
+ 00013377  0x000028e2 store  0x00000002 , 0x000041f5 
+ 00013378  0x000028e3 setarg  0x000034b2 
+ 00013379  0x000028e4 store  0x00000002 , 0x000041fd 
+ 00013380  0x000028e5 setarg  0x00003465 
+ 00013381  0x000028e6 store  0x00000002 , 0x000041fb 
+ 00013382  0x000028e7 setarg  0x00003470 
+ 00013383  0x000028e8 store  0x00000002 , 0x000041e9 
+ 00013384  0x000028e9 setarg  0x00003501 
+ 00013385  0x000028ea store  0x00000002 , 0x000041f9 
+ 00013386  0x000028eb bpatch  0x000000cc , 0x00004019 
+ 00013387  0x000028ec call  0x0000359b 
+ 00013388  0x000028ed call  0x00006948 
+ 00013389  0x000028ee call  0x000035ad 
+ 00013390  0x000028ef call  0x00007d08 
+ 00013391  0x000028f0 call  0x00007cd3 
+ 00013392  0x000028f1 setarg  0x0000350b 
+ 00013393  0x000028f2 store  0x00000002 , 0x00004766 
+ 00013394  0x000028f3 setarg  0x000034fc 
+ 00013395  0x000028f4 store  0x00000002 , 0x0000475d 
+ 00013396  0x000028f5 setarg  0x000034f8 
+ 00013397  0x000028f6 store  0x00000002 , 0x0000475f 
+ 00013398  0x000028f7 setarg  0x0000346c 
+ 00013399  0x000028f8 store  0x00000002 , 0x00004761 
+ 00013400  0x000028f9 setarg  0x000035a2 
+ 00013401  0x000028fa store  0x00000002 , 0x000046a9 
+ 00013402  0x000028fb setarg  0x000035a4 
+ 00013403  0x000028fc store  0x00000002 , 0x000046ab 
+ 00013404  0x000028fd setarg  0x000035a9 
+ 00013405  0x000028fe store  0x00000002 , 0x000046b4 
+ 00013406  0x000028ff setarg  0x000035a6 
+ 00013407  0x00002900 store  0x00000002 , 0x000046b6 
+ 00013408  0x00002901 fetch  0x00000002 , 0x00004682 
+ 00013409  0x00002902 rtnbit1  0x0000000c 
+ 00013410  0x00002903 branch  0x0000340a 
+ 00013411  0x00002906 call  0x00003586 
+ 00013412  0x00002907 branch  0x0000340a 
+ 00013413  0x0000290a call  0x00005892 
+ 00013414  0x0000290b nrtn  0x00000034 
+ 00013415  0x0000290c arg  0x00000b06 , 0x00000011 
+ 00013416  0x0000290d call  0x00007e54 
+ 00013417  0x0000290e nrtn  0x00000028 
+ 00013418  0x0000290f arg  0x00000b06 , 0x00000006 
+ 00013419  0x00002910 branch  0x00004746 
+ 00013420  0x00002913 fetch  0x00000002 , 0x00004797 
+ 00013421  0x00002914 store  0x00000002 , 0x00004791 
+ 00013422  0x00002915 jam  0x00000001 , 0x00004753 
+ 00013423  0x00002916 branch  0x0000358f 
+ 00013424  0x00002919 fetch  0x00000001 , 0x0000479d 
+ 00013425  0x0000291a beq  0x00000001 , 0x00003479 
+ 00013426  0x0000291b fetch  0x00000002 , 0x00004682 
+ 00013427  0x0000291c bbit0  0x00000009 , 0x00003479 
+ 00013428  0x0000291d fetch  0x00000001 , 0x0000479e 
+ 00013429  0x0000291e beq  0x00000001 , 0x000033d0 
+ 00013430  0x0000291f fetch  0x00000001 , 0x00004700 
+ 00013431  0x00002920 nbranch  0x000033d0 , 0x00000034 
+ 00013432  0x00002921 branch  0x000033d2 
+ 00013433  0x00002924 fetch  0x00000001 , 0x0000479b 
+ 00013434  0x00002925 fetcht  0x00000001 , 0x0000479c 
+ 00013435  0x00002926 ior  0x00000002 , 0x0000003f 
+ 00013436  0x00002927 beq  0x00000001 , 0x000033d0 
+ 00013437  0x00002928 branch  0x000033d2 
+ 00013438  0x0000292b copy  0x00000013 , 0x0000003f 
+ 00013439  0x0000292c beq  0x0000002d , 0x00003431 
+ 00013440  0x0000292d beq  0x00000010 , 0x0000341a 
+ 00013441  0x0000292e beq  0x00000014 , 0x000034df 
+ 00013442  0x0000292f beq  0x00000015 , 0x000034e8 
+ 00013443  0x00002930 beq  0x00000040 , 0x00003485 
+ 00013444  0x00002931 rtn 
+ 00013445  0x00002933 fetch  0x00000002 , 0x00004509 
+ 00013446  0x00002934 beq  0x00000001 , 0x0000348c 
+ 00013447  0x00002936 fetch  0x00000002 , 0x000043d8 
+ 00013448  0x00002937 branch  0x000034a2 , 0x00000034 
+ 00013449  0x00002939 jam  0x00000002 , 0x0000478a 
+ 00013450  0x0000293a jam  0x0000003c , 0x0000478f 
+ 00013451  0x0000293b rtn 
+ 00013452  0x0000293e fetch  0x00000002 , 0x0000449a 
+ 00013453  0x0000293f branch  0x000034a0 , 0x00000034 
+ 00013454  0x00002941 jam  0x00000001 , 0x0000478a 
+ 00013455  0x00002942 fetcht  0x00000002 , 0x000047b4 
+ 00013456  0x00002943 fetch  0x00000002 , 0x00004496 
+ 00013457  0x00002944 iadd  0x00000002 , 0x0000003f 
+ 00013458  0x00002945 store  0x00000002 , 0x00004496 
+ 00013459  0x00002946 copy  0x0000003f , 0x00000011 
+ 00013460  0x00002947 fetch  0x00000002 , 0x00004498 
+ 00013461  0x00002948 iadd  0x00000002 , 0x0000003f 
+ 00013462  0x00002949 store  0x00000002 , 0x00004498 
+ 00013463  0x0000294a iadd  0x00000011 , 0x0000003f 
+ 00013464  0x0000294b rshift  0x0000003f , 0x00000002 
+ 00013465  0x0000294c fetch  0x00000002 , 0x000047c0 
+ 00013466  0x0000294d idiv  0x00000002 
+ 00013467  0x0000294e call  0x00007f86 
+ 00013468  0x0000294f quotient  0x0000003f 
+ 00013469  0x00002950 store  0x00000002 , 0x0000449a 
+ 00013470  0x00002951 jam  0x00000001 , 0x00004790 
+ 00013471  0x00002952 rtn 
+ 00013472  0x00002954 jam  0x00000003 , 0x0000478a 
+ 00013473  0x00002955 rtn 
+ 00013474  0x00002958 jam  0x00000000 , 0x00004172 
+ 00013475  0x00002959 jam  0x00000000 , 0x00004790 
+ 00013476  0x0000295a fetch  0x00000002 , 0x000043d6 
+ 00013477  0x0000295b fetcht  0x00000002 , 0x000047be 
+ 00013478  0x0000295c isub  0x00000002 , 0x0000003e 
+ 00013479  0x0000295d setflag  0x00000002 , 0x00000000 , 0x00000011 
+ 00013480  0x0000295e fetch  0x00000002 , 0x000047c0 
+ 00013481  0x0000295f fetcht  0x00000002 , 0x000043d6 
+ 00013482  0x00002960 isub  0x00000002 , 0x0000003f 
+ 00013483  0x00002961 setflag  0x00000002 , 0x00000001 , 0x00000011 
+ 00013484  0x00002962 compare  0x00000003 , 0x00000011 , 0x00000003 
+ 00013485  0x00002963 rtn  0x00000001 
+ 00013486  0x00002964 fetch  0x00000008 , 0x000047be 
+ 00013487  0x00002965 store  0x00000008 , 0x00004496 
+ 00013488  0x00002966 jam  0x00000001 , 0x00004790 
+ 00013489  0x00002967 rtn 
+ 00013490  0x0000296c call  0x0000337b 
+ 00013491  0x0000296d call  0x000034b9 
+ 00013492  0x0000296e call  0x000034be 
+ 00013493  0x0000296f call  0x000034d5 
+ 00013494  0x00002970 call  0x000034ca 
+ 00013495  0x00002971 call  0x000034c4 
+ 00013496  0x00002972 branch  0x000034d9 
+ 00013497  0x00002976 arg  0x00004799 , 0x00000013 
+ 00013498  0x00002977 arg  0x000034bc , 0x00000012 
+ 00013499  0x00002978 branch  0x0000336d 
+ 00013500  0x0000297a jam  0x00000000 , 0x0000479a 
+ 00013501  0x0000297b rtn 
+ 00013502  0x0000297d arg  0x00004793 , 0x00000013 
+ 00013503  0x0000297e arg  0x000034c1 , 0x00000012 
+ 00013504  0x0000297f branch  0x00003374 
+ 00013505  0x00002981 arg  0x000046bf , 0x00000013 
+ 00013506  0x00002982 arg  0x0000469e , 0x00000012 
+ 00013507  0x00002983 branch  0x00003591 
+ 00013508  0x00002987 arg  0x0000478f , 0x00000013 
+ 00013509  0x00002988 arg  0x000034c7 , 0x00000012 
+ 00013510  0x00002989 branch  0x0000336d 
+ 00013511  0x0000298c fetch  0x00000002 , 0x0000449a 
+ 00013512  0x0000298d store  0x00000001 , 0x00004172 
+ 00013513  0x0000298e rtn 
+ 00013514  0x00002990 arg  0x00004790 , 0x00000013 
+ 00013515  0x00002991 arg  0x000034cd , 0x00000012 
+ 00013516  0x00002992 branch  0x0000336d 
+ 00013517  0x00002994 fetch  0x00000001 , 0x0000043f 
+ 00013518  0x00002995 compare  0x00000000 , 0x0000003f , 0x00000060 
+ 00013519  0x00002996 nbranch  0x000034d3 , 0x00000001 
+ 00013520  0x00002997 jam  0x00000001 , 0x0000478a 
+ 00013521  0x00002998 call  0x00003416 
+ 00013522  0x00002999 branch  0x00005abf 
+ 00013523  0x0000299b jam  0x00000001 , 0x00004790 
+ 00013524  0x0000299c rtn 
+ 00013525  0x0000299f arg  0x00004791 , 0x00000013 
+ 00013526  0x000029a0 arg  0x000034d8 , 0x00000012 
+ 00013527  0x000029a1 branch  0x00003374 
+ 00013528  0x000029a5 branch  0x0000341a 
+ 00013529  0x000029aa arg  0x0000478d , 0x00000013 
+ 00013530  0x000029ab arg  0x000034dc , 0x00000012 
+ 00013531  0x000029ac branch  0x00003374 
+ 00013532  0x000029ae fetch  0x00000002 , 0x000047a7 
+ 00013533  0x000029af store  0x00000002 , 0x0000478d 
+ 00013534  0x000029b0 branch  0x000035af 
+ 00013535  0x000029b4 fetch  0x00000002 , 0x000047a7 
+ 00013536  0x000029b5 store  0x00000002 , 0x0000478d 
+ 00013537  0x000029b6 setarg  0x00000000 
+ 00013538  0x000029b7 store  0x00000002 , 0x00004793 
+ 00013539  0x000029b8 store  0x00000002 , 0x00004791 
+ 00013540  0x000029b9 call  0x0000355c 
+ 00013541  0x000029ba call  0x00003586 
+ 00013542  0x000029bb jam  0x00000000 , 0x00004172 
+ 00013543  0x000029bc branch  0x000033f8 
+ 00013544  0x000029c2 setarg  0x00000000 
+ 00013545  0x000029c3 store  0x00000004 , 0x0000478d 
+ 00013546  0x000029c4 store  0x00000003 , 0x0000478a 
+ 00013547  0x000029c5 store  0x00000002 , 0x00004509 
+ 00013548  0x000029c7 jam  0x00000001 , 0x000047a0 
+ 00013549  0x000029c8 fetch  0x00000002 , 0x00004797 
+ 00013550  0x000029c9 store  0x00000002 , 0x00004791 
+ 00013551  0x000029ca call  0x00007e38 
+ 00013552  0x000029cb fetch  0x00000001 , 0x00004759 
+ 00013553  0x000029cc rtneq  0x00000000 
+ 00013554  0x000029cd call  0x0000358f 
+ 00013555  0x000029ce branch  0x0000356e 
+ 00013556  0x000029d3 branch  0x00003508 
+ 00013557  0x000029d7 fetch  0x00000001 , 0x00004759 
+ 00013558  0x000029d8 rtnne  0x00000002 
+ 00013559  0x000029d9 branch  0x00003508 
+ 00013560  0x000029df arg  0x000046cd , 0x00000013 
+ 00013561  0x000029e0 call  0x00003582 
+ 00013562  0x000029e1 arg  0x000046c6 , 0x00000013 
+ 00013563  0x000029e3 branch  0x00003584 
+ 00013564  0x000029e6 jam  0x00000000 , 0x0000436e 
+ 00013565  0x000029e7 arg  0x000046db , 0x00000013 
+ 00013566  0x000029e8 call  0x00003582 
+ 00013567  0x000029e9 arg  0x000046d4 , 0x00000013 
+ 00013568  0x000029ea branch  0x000034fb 
+ 00013569  0x000029ed fetch  0x00000001 , 0x00000477 
+ 00013570  0x000029ee beq  0x00000012 , 0x00003504 
+ 00013571  0x000029ef rtn 
+ 00013572  0x000029f1 fetch  0x00000002 , 0x00000478 
+ 00013573  0x000029f3 beq  0x0000000d , 0x00003536 
+ 00013574  0x000029f4 beq  0x0000000b , 0x00003571 
+ 00013575  0x000029f5 rtn 
+ 00013576  0x000029fb fetch  0x00000001 , 0x00004753 
+ 00013577  0x000029fc rtn  0x00000034 
+ 00013578  0x000029fd branch  0x00006978 
+ 00013579  0x00002a02 copy  0x00000011 , 0x0000003f 
+ 00013580  0x00002a03 branch  0x00003510 , 0x00000034 
+ 00013581  0x00002a05 copy  0x00000007 , 0x0000003f 
+ 00013582  0x00002a06 beq  0x00000000 , 0x00003513 
+ 00013583  0x00002a07 rtn 
+ 00013584  0x00002a09 copy  0x00000007 , 0x0000003f 
+ 00013585  0x00002a0a beq  0x00000000 , 0x0000351b 
+ 00013586  0x00002a0b rtn 
+ 00013587  0x00002a0e jam  0x00000001 , 0x0000479d 
+ 00013588  0x00002a0f arg  0x000046f7 , 0x00000013 
+ 00013589  0x00002a10 call  0x00003582 
+ 00013590  0x00002a11 arg  0x000046f0 , 0x00000013 
+ 00013591  0x00002a12 call  0x00003584 
+ 00013592  0x00002a13 fetch  0x00000002 , 0x00004682 
+ 00013593  0x00002a14 bbit0  0x00000009 , 0x00003532 
+ 00013594  0x00002a15 branch  0x00003521 
+ 00013595  0x00002a18 jam  0x00000000 , 0x0000479d 
+ 00013596  0x00002a19 branch  0x0000351d 
+ 00013597  0x00002a1e fetch  0x00000001 , 0x0000479a 
+ 00013598  0x00002a1f rtnne  0x00000001 
+ 00013599  0x00002a20 jam  0x00000005 , 0x00004799 
+ 00013600  0x00002a21 rtn 
+ 00013601  0x00002a24 fetch  0x00000001 , 0x0000479a 
+ 00013602  0x00002a25 pincrease  0x00000001 
+ 00013603  0x00002a26 store  0x00000001 , 0x0000479a 
+ 00013604  0x00002a27 beq  0x00000001 , 0x00003527 
+ 00013605  0x00002a28 beq  0x00000002 , 0x0000352b 
+ 00013606  0x00002a29 rtn 
+ 00013607  0x00002a2b call  0x0000355c 
+ 00013608  0x00002a2c jam  0x00000001 , 0x00004771 
+ 00013609  0x00002a2d arg  0x0000476c , 0x00000013 
+ 00013610  0x00002a2e branch  0x00003544 
+ 00013611  0x00002a30 jam  0x00000000 , 0x0000479a 
+ 00013612  0x00002a31 jam  0x00000002 , 0x00004771 
+ 00013613  0x00002a32 arg  0x0000476c , 0x00000013 
+ 00013614  0x00002a33 call  0x00003544 
+ 00013615  0x00002a34 fetch  0x00000001 , 0x0000479e 
+ 00013616  0x00002a35 beq  0x00000001 , 0x00003551 
+ 00013617  0x00002a36 rtn 
+ 00013618  0x00002a39 fetch  0x00000002 , 0x00004797 
+ 00013619  0x00002a3a store  0x00000002 , 0x00004791 
+ 00013620  0x00002a3b call  0x0000355c 
+ 00013621  0x00002a3c branch  0x0000358f 
+ 00013622  0x00002a40 bpatch  0x000000cd , 0x00004019 
+ 00013623  0x00002a41 call  0x000036fc 
+ 00013624  0x00002a42 ifetch  0x00000001 , 0x00000011 
+ 00013625  0x00002a43 beq  0x00000003 , 0x0000353c 
+ 00013626  0x00002a44 beq  0x00000007 , 0x00003540 
+ 00013627  0x00002a45 rtn 
+ 00013628  0x00002a48 fetch  0x00000001 , 0x0000479e 
+ 00013629  0x00002a49 beq  0x00000000 , 0x00003551 
+ 00013630  0x00002a4a beq  0x00000001 , 0x0000355c 
+ 00013631  0x00002a4b rtn 
+ 00013632  0x00002a4e ifetch  0x00000001 , 0x00000012 
+ 00013633  0x00002a4f beq  0x00000001 , 0x00003564 
+ 00013634  0x00002a50 beq  0x00000000 , 0x00003569 
+ 00013635  0x00002a51 rtn 
+ 00013636  0x00002a59 bpatch  0x000000ce , 0x00004019 
+ 00013637  0x00002a5a fetch  0x00000001 , 0x0000478b 
+ 00013638  0x00002a5b isolate1  0x00000000 , 0x0000003f 
+ 00013639  0x00002a5c nrtn  0x00000001 
+ 00013640  0x00002a5d add  0x00000013 , 0x00000006 , 0x00000006 
+ 00013641  0x00002a5e ifetch  0x00000002 , 0x00000006 
+ 00013642  0x00002a5f byteswap  0x0000003f , 0x0000003f 
+ 00013643  0x00002a60 add  0x0000003f , 0x00000005 , 0x00000039 
+ 00013644  0x00002a61 add  0x00000013 , 0x00000003 , 0x00000006 
+ 00013645  0x00002a62 call  0x000036f0 
+ 00013646  0x00002a63 istore  0x00000001 , 0x00000006 
+ 00013647  0x00002a64 copy  0x00000013 , 0x00000011 
+ 00013648  0x00002a65 branch  0x00007e3d 
+ 00013649  0x00002a6c fetch  0x00000001 , 0x00004759 
+ 00013650  0x00002a6d rtn  0x00000034 
+ 00013651  0x00002a6e jam  0x00000001 , 0x0000479e 
+ 00013652  0x00002a6f arg  0x000046e9 , 0x00000013 
+ 00013653  0x00002a70 call  0x00003582 
+ 00013654  0x00002a71 arg  0x000046e2 , 0x00000013 
+ 00013655  0x00002a72 call  0x00003584 
+ 00013656  0x00002a73 jam  0x00000004 , 0x00004780 
+ 00013657  0x00002a74 jam  0x00000001 , 0x00004783 
+ 00013658  0x00002a75 arg  0x0000477b , 0x00000013 
+ 00013659  0x00002a76 branch  0x00003544 
+ 00013660  0x00002a78 fetch  0x00000001 , 0x0000479e 
+ 00013661  0x00002a79 rtn  0x00000034 
+ 00013662  0x00002a7a jam  0x00000000 , 0x0000479e 
+ 00013663  0x00002a7b call  0x00003586 
+ 00013664  0x00002a7c jam  0x00000004 , 0x00004780 
+ 00013665  0x00002a7d jam  0x00000000 , 0x00004783 
+ 00013666  0x00002a7e arg  0x0000477b , 0x00000013 
+ 00013667  0x00002a7f branch  0x00003544 
+ 00013668  0x00002a82 jam  0x00000001 , 0x0000479f 
+ 00013669  0x00002a83 jam  0x00000007 , 0x00004780 
+ 00013670  0x00002a84 jam  0x00000001 , 0x00004783 
+ 00013671  0x00002a85 arg  0x0000477b , 0x00000013 
+ 00013672  0x00002a86 branch  0x00003544 
+ 00013673  0x00002a88 jam  0x00000000 , 0x0000479f 
+ 00013674  0x00002a89 jam  0x00000007 , 0x00004780 
+ 00013675  0x00002a8a jam  0x00000000 , 0x00004783 
+ 00013676  0x00002a8b arg  0x0000477b , 0x00000013 
+ 00013677  0x00002a8c branch  0x00003544 
+ 00013678  0x00002a8e fetch  0x00000001 , 0x0000479f 
+ 00013679  0x00002a8f rtn  0x00000034 
+ 00013680  0x00002a90 branch  0x00003551 
+ 00013681  0x00002a93 ifetch  0x00000002 , 0x00000011 
+ 00013682  0x00002a94 store  0x00000002 , 0x0000478b 
+ 00013683  0x00002a95 isolate1  0x00000000 , 0x0000003f 
+ 00013684  0x00002a96 nrtn  0x00000001 
+ 00013685  0x00002a97 fetch  0x00000001 , 0x000047a0 
+ 00013686  0x00002a98 rtn  0x00000034 
+ 00013687  0x00002a99 jam  0x00000000 , 0x000047a0 
+ 00013688  0x00002a9a fetch  0x00000008 , 0x000047b6 
+ 00013689  0x00002a9b store  0x00000008 , 0x00004496 
+ 00013690  0x00002a9c jam  0x00000002 , 0x00004790 
+ 00013691  0x00002a9d call  0x000035af 
+ 00013692  0x00002a9e call  0x000035b9 
+ 00013693  0x00002a9f jam  0x00000007 , 0x00004780 
+ 00013694  0x00002aa0 fetch  0x00000001 , 0x0000479f 
+ 00013695  0x00002aa1 store  0x00000001 , 0x00004783 
+ 00013696  0x00002aa2 arg  0x0000477b , 0x00000013 
+ 00013697  0x00002aa3 branch  0x00003544 
+ 00013698  0x00002aa8 arg  0x00000001 , 0x00000011 
+ 00013699  0x00002aa9 branch  0x00003585 
+ 00013700  0x00002aab arg  0x00000000 , 0x00000011 
+ 00013701  0x00002aad branch  0x0000358c 
+ 00013702  0x00002ab0 arg  0x00000000 , 0x00000011 
+ 00013703  0x00002ab1 call  0x00007d19 
+ 00013704  0x00002ab2 arg  0x00000001 , 0x00000011 
+ 00013705  0x00002ab3 call  0x00007d19 
+ 00013706  0x00002ab4 fetch  0x00000001 , 0x000047a1 
+ 00013707  0x00002ab5 branch  0x000069d7 
+ 00013708  0x00002ab8 call  0x00007d04 
+ 00013709  0x00002ab9 arg  0x00000007 , 0x00000039 
+ 00013710  0x00002aba branch  0x00007d26 
+ 00013711  0x00002abf arg  0x000046b8 , 0x00000013 
+ 00013712  0x00002ac0 arg  0x0000469a , 0x00000012 
+ 00013713  0x00002ac2 call  0x00003596 
+ 00013714  0x00002ac3 call  0x00003584 
+ 00013715  0x00002ac4 fetch  0x00000002 , 0x00004795 
+ 00013716  0x00002ac5 store  0x00000002 , 0x00004793 
+ 00013717  0x00002ac6 branch  0x000033fa 
+ 00013718  0x00002ac9 ifetch  0x00000002 , 0x00000012 
+ 00013719  0x00002aca store  0x00000002 , 0x00004154 
+ 00013720  0x00002acb ifetch  0x00000002 , 0x00000006 
+ 00013721  0x00002acc store  0x00000002 , 0x00004482 
+ 00013722  0x00002acd rtn 
+ 00013723  0x00002ad0 arg  0x00000000 , 0x00000011 
+ 00013724  0x00002ad1 call  0x000069a6 
+ 00013725  0x00002ad2 fetch  0x00000006 , 0x000047a1 
+ 00013726  0x00002ad3 store  0x00000006 , 0x00000a9a 
+ 00013727  0x00002ad4 call  0x000069ae 
+ 00013728  0x00002ad5 fetch  0x00000001 , 0x000047a1 
+ 00013729  0x00002ad6 branch  0x000069d7 
+ 00013730  0x00002ad9 jam  0x00000001 , 0x0000479b 
+ 00013731  0x00002ada rtn 
+ 00013732  0x00002adc jam  0x00000000 , 0x0000479b 
+ 00013733  0x00002add rtn 
+ 00013734  0x00002ae2 jam  0x00000000 , 0x0000479c 
+ 00013735  0x00002ae3 fetch  0x00000001 , 0x000047a1 
+ 00013736  0x00002ae4 branch  0x000069d7 
+ 00013737  0x00002ae7 jam  0x00000001 , 0x0000479c 
+ 00013738  0x00002ae8 fetch  0x00000006 , 0x000047a1 
+ 00013739  0x00002ae9 store  0x00000006 , 0x00000a9a 
+ 00013740  0x00002aea branch  0x000069ae 
+ 00013741  0x00002aef jam  0x00000000 , 0x0000422d 
+ 00013742  0x00002af0 branch  0x000068a8 
+ 00013743  0x00002af3 call  0x000068eb 
+ 00013744  0x00002af4 call  0x00006908 
+ 00013745  0x00002af5 store  0x00000002 , 0x000047b0 
+ 00013746  0x00002af6 arg  0x000047aa , 0x00000011 
+ 00013747  0x00002af7 call  0x00006930 
+ 00013748  0x00002af8 store  0x00000001 , 0x000047a9 
+ 00013749  0x00002af9 beq  0x00000000 , 0x000035be 
+ 00013750  0x00002afa sub  0x0000003f , 0x00000064 , 0x0000003e 
+ 00013751  0x00002afb nbranch  0x000035bc , 0x00000002 
+ 00013752  0x00002afc store  0x00000001 , 0x00004783 
+ 00013753  0x00002afe jam  0x00000005 , 0x00004780 
+ 00013754  0x00002aff arg  0x0000477b , 0x00000013 
+ 00013755  0x00002b00 branch  0x00003544 
+ 00013756  0x00002b02 jam  0x00000064 , 0x00004783 
+ 00013757  0x00002b03 branch  0x000035b9 
+ 00013758  0x00002b06 branch  0x0000341a 
+ 00013759  0x00002b0b rtn  0x0000002b 
+ 00013760  0x00002b0c hfetch  0x00000001 , 0x00008081 
+ 00013761  0x00002b0d and_into  0x000000f0 , 0x0000003f 
+ 00013762  0x00002b0e hstore  0x00000001 , 0x00008081 
+ 00013763  0x00002b0f setarg  0x00003631 
+ 00013764  0x00002b10 store  0x00000002 , 0x000041eb 
+ 00013765  0x00002b12 setarg  0x00003633 
+ 00013766  0x00002b13 store  0x00000002 , 0x000041ed 
+ 00013767  0x00002b15 setarg  0x0000340a 
+ 00013768  0x00002b16 store  0x00000002 , 0x000041f7 
+ 00013769  0x00002b18 setarg  0x00003635 
+ 00013770  0x00002b19 store  0x00000002 , 0x000041f3 
+ 00013771  0x00002b1b setarg  0x0000364b 
+ 00013772  0x00002b1c store  0x00000002 , 0x000041f5 
+ 00013773  0x00002b1e setarg  0x000033d0 
+ 00013774  0x00002b1f store  0x00000002 , 0x000041e9 
+ 00013775  0x00002b21 setarg  0x000036f6 
+ 00013776  0x00002b22 store  0x00000002 , 0x000041f9 
+ 00013777  0x00002b24 setarg  0x0000367a 
+ 00013778  0x00002b25 store  0x00000002 , 0x000041fd 
+ 00013779  0x00002b27 call  0x00002c7a 
+ 00013780  0x00002b28 setarg  0x00003722 
+ 00013781  0x00002b29 add  0x00000013 , 0x000000de , 0x00000005 
+ 00013782  0x00002b2a istore  0x00000002 , 0x00000005 
+ 00013783  0x00002b2c setarg  0x000035ed 
+ 00013784  0x00002b2d store  0x00000002 , 0x0000475b 
+ 00013785  0x00002b2f setarg  0x000035ef 
+ 00013786  0x00002b30 store  0x00000002 , 0x0000475f 
+ 00013787  0x00002b32 bpatch  0x000000cf , 0x00004019 
+ 00013788  0x00002b33 call  0x00003628 
+ 00013789  0x00002b34 call  0x00007e38 
+ 00013790  0x00002b35 jam  0x00000002 , 0x00004172 
+ 00013791  0x00002b36 jam  0x00000000 , 0x000049f6 
+ 00013792  0x00002b37 fetch  0x00000001 , 0x000047cb 
+ 00013793  0x00002b38 store  0x00000001 , 0x0000469a 
+ 00013794  0x00002b39 beq  0x00000000 , 0x000035ee 
+ 00013795  0x00002b3a fetch  0x00000001 , 0x000047cc 
+ 00013796  0x00002b3b store  0x00000001 , 0x00004686 
+ 00013797  0x00002b3c jam  0x00000000 , 0x0000436e 
+ 00013798  0x00002b3e call  0x0000360f 
+ 00013799  0x00002b3f call  0x00007cd3 
+ 00013800  0x00002b40 call  0x00007cdd 
+ 00013801  0x00002b41 jam  0x00000001 , 0x000047f3 
+ 00013802  0x00002b42 fetch  0x00000002 , 0x00004682 
+ 00013803  0x00002b43 rtnbit1  0x0000000c 
+ 00013804  0x00002b44 branch  0x0000340a 
+ 00013805  0x00002b47 branch  0x0000360f 
+ 00013806  0x00002b4a jam  0x00000002 , 0x000047f3 
+ 00013807  0x00002b4c jam  0x00000001 , 0x0000436e 
+ 00013808  0x00002b4d call  0x0000360f 
+ 00013809  0x00002b4e arg  0x00000000 , 0x00000011 
+ 00013810  0x00002b4f call  0x00007d1e 
+ 00013811  0x00002b51 setarg  0x00000020 
+ 00013812  0x00002b52 call  0x000046f0 
+ 00013813  0x00002b54 arg  0x000043b7 , 0x00000005 
+ 00013814  0x00002b55 fetch  0x00000001 , 0x000044a0 
+ 00013815  0x00002b57 and  0x0000003f , 0x000000f0 , 0x00000002 
+ 00013816  0x00002b58 rshift4  0x00000002 , 0x00000002 
+ 00013817  0x00002b59 call  0x00003609 
+ 00013818  0x00002b5a istoret  0x00000001 , 0x00000005 
+ 00013819  0x00002b5b and  0x0000003f , 0x0000000f , 0x00000002 
+ 00013820  0x00002b5c call  0x00003609 
+ 00013821  0x00002b5d istoret  0x00000001 , 0x00000005 
+ 00013822  0x00002b5e call  0x000057a6 
+ 00013823  0x00002b5f fetcht  0x00000001 , 0x000043af 
+ 00013824  0x00002b60 copy  0x00000002 , 0x00000039 
+ 00013825  0x00002b61 arg  0x00004372 , 0x00000005 
+ 00013826  0x00002b62 arg  0x000043b0 , 0x00000006 
+ 00013827  0x00002b63 call  0x00007f01 
+ 00013828  0x00002b65 fetcht  0x00000001 , 0x000043af 
+ 00013829  0x00002b66 copy  0x00000002 , 0x00000039 
+ 00013830  0x00002b67 arg  0x00004392 , 0x00000005 
+ 00013831  0x00002b68 arg  0x000043b0 , 0x00000006 
+ 00013832  0x00002b69 branch  0x00007f01 
+ 00013833  0x00002b6b sub  0x00000002 , 0x00000009 , 0x0000003e 
+ 00013834  0x00002b6c branch  0x0000360d , 0x00000002 
+ 00013835  0x00002b6d add  0x00000002 , 0x00000037 , 0x00000002 
+ 00013836  0x00002b6e rtn 
+ 00013837  0x00002b70 add  0x00000002 , 0x00000030 , 0x00000002 
+ 00013838  0x00002b71 rtn 
+ 00013839  0x00002b74 fetch  0x00000001 , 0x000047c0 
+ 00013840  0x00002b75 bne  0x000000ff , 0x00003621 
+ 00013841  0x00002b77 fetch  0x00000001 , 0x000047be 
+ 00013842  0x00002b78 bne  0x000000ff , 0x00003624 
+ 00013843  0x00002b7a fetch  0x00000001 , 0x000047c9 
+ 00013844  0x00002b7b bne  0x000000ff , 0x00003626 
+ 00013845  0x00002b7d fetch  0x00000001 , 0x0000472c 
+ 00013846  0x00002b7e copy  0x0000003f , 0x00000039 
+ 00013847  0x00002b7f setarg  0x0000472d 
+ 00013848  0x00002b80 copy  0x0000003f , 0x00000011 
+ 00013849  0x00002b82 copy  0x00000011 , 0x00000006 
+ 00013850  0x00002b83 ifetch  0x00000001 , 0x00000006 
+ 00013851  0x00002b84 copy  0x00000006 , 0x00000011 
+ 00013852  0x00002b85 beq  0x000000ff , 0x0000361f 
+ 00013853  0x00002b86 copy  0x0000003f , 0x00000002 
+ 00013854  0x00002b87 call  0x0000680e 
+ 00013855  0x00002b89 loop  0x00003619 
+ 00013856  0x00002b8b rtn 
+ 00013857  0x00002b8d fetch  0x00000008 , 0x000047c0 
+ 00013858  0x00002b8e store  0x00000008 , 0x0000472f 
+ 00013859  0x00002b8f branch  0x00003611 
+ 00013860  0x00002b91 store  0x00000001 , 0x0000472d 
+ 00013861  0x00002b92 branch  0x00003613 
+ 00013862  0x00002b94 store  0x00000001 , 0x0000472e 
+ 00013863  0x00002b95 branch  0x00003615 
+ 00013864  0x00002b99 arg  0x00000000 , 0x00000011 
+ 00013865  0x00002b9a call  0x000069a6 
+ 00013866  0x00002b9b call  0x000037e4 
+ 00013867  0x00002b9c call  0x00002c7d 
+ 00013868  0x00002b9d branch  0x0000362d 
+ 00013869  0x00002ba0 jam  0x00000064 , 0x000047cf 
+ 00013870  0x00002ba1 fetch  0x00000001 , 0x000047c9 
+ 00013871  0x00002ba2 store  0x00000001 , 0x00004744 
+ 00013872  0x00002ba3 branch  0x000068a8 
+ 00013873  0x00002ba6 call  0x00006835 
+ 00013874  0x00002ba7 branch  0x0000696c 
+ 00013875  0x00002baa branch  0x0000696c 
+ 00013876  0x00002baf branch  0x00006978 
+ 00013877  0x00002bb2 call  0x00003642 
+ 00013878  0x00002bb3 call  0x000037ee 
+ 00013879  0x00002bb4 call  0x00003639 
+ 00013880  0x00002bb5 branch  0x00003634 
+ 00013881  0x00002bb8 fetch  0x00000002 , 0x00004682 
+ 00013882  0x00002bb9 rtnbit1  0x00000009 
+ 00013883  0x00002bba fetch  0x00000001 , 0x000049f6 
+ 00013884  0x00002bbb beq  0x00000001 , 0x0000363e 
+ 00013885  0x00002bbc rtn 
+ 00013886  0x00002bbe fetch  0x00000001 , 0x000047ea 
+ 00013887  0x00002bbf rtneq  0x00000001 
+ 00013888  0x00002bc0 jam  0x00000001 , 0x000047ea 
+ 00013889  0x00002bc1 branch  0x00003654 
+ 00013890  0x00002bc4 fetch  0x00000002 , 0x00004682 
+ 00013891  0x00002bc5 rtnbit0  0x00000009 
+ 00013892  0x00002bc6 call  0x00005892 
+ 00013893  0x00002bc7 nrtn  0x00000034 
+ 00013894  0x00002bc8 arg  0x00004718 , 0x00000011 
+ 00013895  0x00002bc9 call  0x00007e54 
+ 00013896  0x00002bca nrtn  0x00000028 
+ 00013897  0x00002bcb arg  0x00004718 , 0x00000006 
+ 00013898  0x00002bcc branch  0x00004746 
+ 00013899  0x00002bcf copy  0x00000013 , 0x0000003f 
+ 00013900  0x00002bd0 beq  0x0000002d , 0x00003431 
+ 00013901  0x00002bd1 beq  0x00000010 , 0x0000341a 
+ 00013902  0x00002bd2 beq  0x00000014 , 0x00003651 
+ 00013903  0x00002bd3 beq  0x00000015 , 0x00003660 
+ 00013904  0x00002bd4 rtn 
+ 00013905  0x00002bd7 setarg  0x00000000 
+ 00013906  0x00002bd8 call  0x00003220 
+ 00013907  0x00002bd9 branch  0x00003656 
+ 00013908  0x00002bdb fetch  0x00000002 , 0x000047eb 
+ 00013909  0x00002bdc store  0x00000002 , 0x000047ed 
+ 00013910  0x00002bde jam  0x00000014 , 0x000047ce 
+ 00013911  0x00002bdf jam  0x00000000 , 0x00004091 
+ 00013912  0x00002be0 call  0x000033f8 
+ 00013913  0x00002be1 call  0x00003416 
+ 00013914  0x00002be2 fetch  0x00000001 , 0x000047bd 
+ 00013915  0x00002be3 beq  0x00000001 , 0x0000365e 
+ 00013916  0x00002be5 arg  0x00000000 , 0x00000011 
+ 00013917  0x00002be6 branch  0x00007d14 
+ 00013918  0x00002be8 arg  0x00000000 , 0x00000011 
+ 00013919  0x00002be9 branch  0x00007d19 
+ 00013920  0x00002bec setarg  0x00000002 
+ 00013921  0x00002bed call  0x00003220 
+ 00013922  0x00002bef setarg  0x00000000 
+ 00013923  0x00002bf0 store  0x00000005 , 0x0000479c 
+ 00013924  0x00002bf1 setarg  0x00000004 
+ 00013925  0x00002bf2 call  0x000069d7 
+ 00013926  0x00002bf3 setarg  0x00000005 
+ 00013927  0x00002bf4 call  0x000069d7 
+ 00013928  0x00002bf5 setarg  0x00000014 
+ 00013929  0x00002bf6 call  0x000069d7 
+ 00013930  0x00002bf7 setarg  0x00000015 
+ 00013931  0x00002bf8 call  0x000069d7 
+ 00013932  0x00002bf9 setarg  0x00000016 
+ 00013933  0x00002bfa call  0x000069d7 
+ 00013934  0x00002bfb setarg  0x00000007 
+ 00013935  0x00002bfc call  0x000069d7 
+ 00013936  0x00002bfd call  0x00007e38 
+ 00013937  0x00002bfe jam  0x0000000a , 0x0000475e 
+ 00013938  0x00002bff jam  0x0000000a , 0x00004760 
+ 00013939  0x00002c00 jam  0x0000000a , 0x00004762 
+ 00013940  0x00002c02 jam  0x00000002 , 0x00004172 
+ 00013941  0x00002c03 arg  0x00000000 , 0x00000011 
+ 00013942  0x00002c04 call  0x00007d1e 
+ 00013943  0x00002c06 setarg  0x00000020 
+ 00013944  0x00002c07 call  0x000046f0 
+ 00013945  0x00002c08 branch  0x000033fa 
+ 00013946  0x00002c0c call  0x0000373b 
+ 00013947  0x00002c0d call  0x0000373e 
+ 00013948  0x00002c0e call  0x00003741 
+ 00013949  0x00002c0f call  0x0000337b 
+ 00013950  0x00002c10 call  0x000036c8 
+ 00013951  0x00002c11 call  0x000036a1 
+ 00013952  0x00002c12 call  0x0000368a 
+ 00013953  0x00002c13 call  0x00003683 
+ 00013954  0x00002c14 branch  0x0000368f 
+ 00013955  0x00002c17 arg  0x0000479a , 0x00000013 
+ 00013956  0x00002c18 arg  0x00003686 , 0x00000012 
+ 00013957  0x00002c19 branch  0x0000336d 
+ 00013958  0x00002c1b call  0x00003847 
+ 00013959  0x00002c1c nrtn  0x00000001 
+ 00013960  0x00002c1d jam  0x00000001 , 0x0000479b 
+ 00013961  0x00002c1e rtn 
+ 00013962  0x00002c21 arg  0x000047ed , 0x00000013 
+ 00013963  0x00002c22 arg  0x0000368d , 0x00000012 
+ 00013964  0x00002c23 branch  0x00003374 
+ 00013965  0x00002c25 jam  0x00000002 , 0x000047ea 
+ 00013966  0x00002c26 branch  0x00003662 
+ 00013967  0x00002c29 arg  0x000047f1 , 0x00000013 
+ 00013968  0x00002c2a arg  0x00003692 , 0x00000012 
+ 00013969  0x00002c2b branch  0x0000336d 
+ 00013970  0x00002c2d fetch  0x00000001 , 0x000047f2 
+ 00013971  0x00002c2e branch  0x0000369e , 0x00000034 
+ 00013972  0x00002c2f jam  0x00000002 , 0x000047f1 
+ 00013973  0x00002c30 jam  0x00000000 , 0x000047f2 
+ 00013974  0x00002c31 setarg  0x00000a02 
+ 00013975  0x00002c32 store  0x00000002 , 0x00004752 
+ 00013976  0x00002c33 fetch  0x00000001 , 0x000047b9 
+ 00013977  0x00002c34 beq  0x00000003 , 0x0000369b 
+ 00013978  0x00002c36 branch  0x00003762 
+ 00013979  0x00002c38 setarg  0x00000a02 
+ 00013980  0x00002c39 store  0x00000002 , 0x00004754 
+ 00013981  0x00002c3a branch  0x00003762 
+ 00013982  0x00002c3c setarg  0x00000000 
+ 00013983  0x00002c3d store  0x00000004 , 0x00004752 
+ 00013984  0x00002c3e branch  0x00003762 
+ 00013985  0x00002c41 fetch  0x00000001 , 0x000047c8 
+ 00013986  0x00002c42 rtn  0x00000034 
+ 00013987  0x00002c43 fetch  0x00000002 , 0x00004682 
+ 00013988  0x00002c44 bbit0  0x00000009 , 0x000036c6 
+ 00013989  0x00002c45 arg  0x000047ce , 0x00000013 
+ 00013990  0x00002c46 arg  0x000036a8 , 0x00000012 
+ 00013991  0x00002c47 branch  0x0000336d 
+ 00013992  0x00002c49 fetch  0x00000001 , 0x000047cd 
+ 00013993  0x00002c4a store  0x00000001 , 0x000047ce 
+ 00013994  0x00002c4b fetch  0x00000001 , 0x000047d1 
+ 00013995  0x00002c4c nrtn  0x00000034 
+ 00013996  0x00002c4e call  0x000068eb 
+ 00013997  0x00002c4f call  0x00006908 
+ 00013998  0x00002c50 store  0x00000002 , 0x000047e8 
+ 00013999  0x00002c51 arg  0x000047e2 , 0x00000011 
+ 00014000  0x00002c52 call  0x00006930 
+ 00014001  0x00002c53 fetcht  0x00000001 , 0x000047cf 
+ 00014002  0x00002c54 isub  0x00000002 , 0x0000003e 
+ 00014003  0x00002c55 branch  0x000036b6 , 0x00000002 
+ 00014004  0x00002c56 store  0x00000001 , 0x000047cf 
+ 00014005  0x00002c57 copy  0x0000003f , 0x00000002 
+ 00014006  0x00002c59 storet  0x00000001 , 0x000047d0 
+ 00014007  0x00002c5a fetch  0x00000001 , 0x000047ca 
+ 00014008  0x00002c5b isub  0x00000002 , 0x0000003e 
+ 00014009  0x00002c5c call  0x000036c1 , 0x00000002 
+ 00014010  0x00002c5d storet  0x00000001 , 0x000047db 
+ 00014011  0x00002c5e arg  0x00000006 , 0x00000039 
+ 00014012  0x00002c5f arg  0x000047d6 , 0x00000006 
+ 00014013  0x00002c60 call  0x000036f0 
+ 00014014  0x00002c61 store  0x00000001 , 0x000047dc 
+ 00014015  0x00002c62 arg  0x000047d3 , 0x00000011 
+ 00014016  0x00002c63 branch  0x00007e3d 
+ 00014017  0x00002c65 fetch  0x00000001 , 0x000047d2 
+ 00014018  0x00002c66 nrtn  0x00000034 
+ 00014019  0x00002c67 jam  0x00000001 , 0x000047d2 
+ 00014020  0x00002c68 arg  0x00000001 , 0x00000011 
+ 00014021  0x00002c69 branch  0x00007d1e 
+ 00014022  0x00002c6b arg  0x00000001 , 0x00000011 
+ 00014023  0x00002c6c branch  0x00007d19 
+ 00014024  0x00002c6f arg  0x000047a4 , 0x00000013 
+ 00014025  0x00002c70 arg  0x000036cb , 0x00000012 
+ 00014026  0x00002c71 branch  0x0000336d 
+ 00014027  0x00002c73 jam  0x00000005 , 0x000047a4 
+ 00014028  0x00002c74 jam  0x00000000 , 0x000047a6 
+ 00014029  0x00002c75 fetch  0x00000001 , 0x000047a5 
+ 00014030  0x00002c76 beq  0x00000001 , 0x000036ee 
+ 00014031  0x00002c77 beq  0x00000000 , 0x000036ec 
+ 00014032  0x00002c79 arg  0x0000479c , 0x00000006 
+ 00014033  0x00002c7a copy  0x00000006 , 0x00000011 
+ 00014034  0x00002c7b arg  0x00000008 , 0x00000039 
+ 00014035  0x00002c7d copy  0x00000011 , 0x00000006 
+ 00014036  0x00002c7e ifetch  0x00000001 , 0x00000006 
+ 00014037  0x00002c7f copy  0x00000006 , 0x00000011 
+ 00014038  0x00002c80 beq  0x00000000 , 0x000036e3 
+ 00014039  0x00002c81 beq  0x00000001 , 0x000036e6 
+ 00014040  0x00002c82 beq  0x00000002 , 0x000036e9 
+ 00014041  0x00002c84 fetch  0x00000001 , 0x000047a6 
+ 00014042  0x00002c85 increase  0x00000001 , 0x0000003f 
+ 00014043  0x00002c86 store  0x00000001 , 0x000047a6 
+ 00014044  0x00002c87 loop  0x000036d3 
+ 00014045  0x00002c88 rtn 
+ 00014046  0x00002c8a fetch  0x00000001 , 0x000047a6 
+ 00014047  0x00002c8b arg  0x000047c0 , 0x00000012 
+ 00014048  0x00002c8c iadd  0x00000012 , 0x00000012 
+ 00014049  0x00002c8d ifetcht  0x00000001 , 0x00000012 
+ 00014050  0x00002c8e rtn 
+ 00014051  0x00002c90 call  0x000036de 
+ 00014052  0x00002c91 call  0x00006825 
+ 00014053  0x00002c92 branch  0x000036d9 
+ 00014054  0x00002c94 call  0x000036de 
+ 00014055  0x00002c95 call  0x00006829 
+ 00014056  0x00002c96 branch  0x000036d9 
+ 00014057  0x00002c98 fetch  0x00000001 , 0x000047a5 
+ 00014058  0x00002c99 beq  0x00000001 , 0x000036e3 
+ 00014059  0x00002c9a branch  0x000036e6 
+ 00014060  0x00002c9c jam  0x00000001 , 0x000047a5 
+ 00014061  0x00002c9d branch  0x000036d0 
+ 00014062  0x00002c9f jam  0x00000000 , 0x000047a5 
+ 00014063  0x00002ca0 branch  0x000036d0 
+ 00014064  0x00002ca5 arg  0x00000000 , 0x00000011 
+ 00014065  0x00002ca7 ifetch  0x00000001 , 0x00000006 
+ 00014066  0x00002ca8 iadd  0x00000011 , 0x00000011 
+ 00014067  0x00002ca9 loop  0x000036f1 
+ 00014068  0x00002cab and  0x00000011 , 0x000000ff , 0x0000003f 
+ 00014069  0x00002cac rtn 
+ 00014070  0x00002caf fetch  0x00000001 , 0x00000477 
+ 00014071  0x00002cb0 beq  0x00000012 , 0x000036f9 
+ 00014072  0x00002cb1 rtn 
+ 00014073  0x00002cb3 fetch  0x00000002 , 0x00000478 
+ 00014074  0x00002cb4 beq  0x00000014 , 0x00003710 
+ 00014075  0x00002cb5 rtn 
+ 00014076  0x00002cc2 bpatch  0x000000d0 , 0x0000401a 
+ 00014077  0x00002cc3 ifetch  0x00000005 , 0x00000011 
+ 00014078  0x00002cc4 store  0x00000005 , 0x00000b12 
+ 00014079  0x00002cc5 fetch  0x00000002 , 0x00000b12 
+ 00014080  0x00002cc6 arg  0x00006b5a , 0x00000002 
+ 00014081  0x00002cc7 isub  0x00000002 , 0x0000003e 
+ 00014082  0x00002cc8 nrtn  0x00000005 
+ 00014083  0x00002cc9 fetch  0x00000002 , 0x00000b15 
+ 00014084  0x00002cca byteswap  0x0000003f , 0x0000003f 
+ 00014085  0x00002ccb store  0x00000002 , 0x00000b15 
+ 00014086  0x00002ccc copy  0x0000003f , 0x00000039 
+ 00014087  0x00002ccd increase  0x00000005 , 0x00000011 
+ 00014088  0x00002cce copy  0x00000011 , 0x00000006 
+ 00014089  0x00002ccf arg  0x00000b17 , 0x00000005 
+ 00014090  0x00002cd0 call  0x00007f01 
+ 00014091  0x00002cd1 ifetch  0x00000001 , 0x00000006 
+ 00014092  0x00002cd2 store  0x00000001 , 0x00000b21 
+ 00014093  0x00002cd3 arg  0x00000b14 , 0x00000011 
+ 00014094  0x00002cd4 arg  0x00000b17 , 0x00000012 
+ 00014095  0x00002cd5 rtn 
+ 00014096  0x00002cd8 setarg  0x00000000 
+ 00014097  0x00002cd9 store  0x00000005 , 0x00004752 
+ 00014098  0x00002cda store  0x00000005 , 0x00004757 
+ 00014099  0x00002cdb call  0x000036fc 
+ 00014100  0x00002cdc copy  0x00000012 , 0x00000006 
+ 00014101  0x00002cdd arg  0x00004752 , 0x00000005 
+ 00014102  0x00002cde arg  0x0000000a , 0x00000039 
+ 00014103  0x00002cdf call  0x00007f01 
+ 00014104  0x00002ce1 bpatch  0x000000d1 , 0x0000401a 
+ 00014105  0x00002ce2 ifetch  0x00000001 , 0x00000011 
+ 00014106  0x00002ce3 beq  0x00000002 , 0x0000374a 
+ 00014107  0x00002ce4 beq  0x00000003 , 0x0000375c 
+ 00014108  0x00002ce5 beq  0x00000004 , 0x00003762 
+ 00014109  0x00002ce6 beq  0x00000005 , 0x00003762 
+ 00014110  0x00002ce7 beq  0x00000006 , 0x000037b1 
+ 00014111  0x00002ce8 beq  0x00000007 , 0x00003849 
+ 00014112  0x00002ce9 beq  0x00000008 , 0x0000384c 
+ 00014113  0x00002cea rtn 
+ 00014114  0x00002ced fetch  0x00000002 , 0x00004682 
+ 00014115  0x00002cee rtnbit1  0x00000009 
+ 00014116  0x00002cf0 fetch  0x00000002 , 0x000047eb 
+ 00014117  0x00002cf1 store  0x00000002 , 0x000047ed 
+ 00014118  0x00002cf3 jam  0x00000001 , 0x000049f6 
+ 00014119  0x00002cf5 setarg  0x0000010c 
+ 00014120  0x00002cf6 call  0x000032cd 
+ 00014121  0x00002cf7 call  0x00003710 
+ 00014122  0x00002cf9 fetch  0x00000001 , 0x00000b14 
+ 00014123  0x00002cfa beq  0x00000004 , 0x0000372e 
+ 00014124  0x00002cfb beq  0x00000005 , 0x0000372e 
+ 00014125  0x00002cfc rtn 
+ 00014126  0x00002cfe fetch  0x00000001 , 0x00004752 
+ 00014127  0x00002cff ncall  0x00003735 , 0x00000034 
+ 00014128  0x00002d00 fetch  0x00000001 , 0x00004754 
+ 00014129  0x00002d01 ncall  0x00003737 , 0x00000034 
+ 00014130  0x00002d02 fetch  0x00000001 , 0x00004756 
+ 00014131  0x00002d03 ncall  0x00003739 , 0x00000034 
+ 00014132  0x00002d04 rtn 
+ 00014133  0x00002d07 jam  0x00000005 , 0x000049f3 
+ 00014134  0x00002d08 rtn 
+ 00014135  0x00002d0a jam  0x00000005 , 0x000049f4 
+ 00014136  0x00002d0b rtn 
+ 00014137  0x00002d0d jam  0x00000005 , 0x000049f5 
+ 00014138  0x00002d0e rtn 
+ 00014139  0x00002d11 arg  0x000049f3 , 0x00000013 
+ 00014140  0x00002d12 arg  0x00003744 , 0x00000012 
+ 00014141  0x00002d13 branch  0x0000336d 
+ 00014142  0x00002d15 arg  0x000049f4 , 0x00000013 
+ 00014143  0x00002d16 arg  0x00003746 , 0x00000012 
+ 00014144  0x00002d17 branch  0x0000336d 
+ 00014145  0x00002d19 arg  0x000049f5 , 0x00000013 
+ 00014146  0x00002d1a arg  0x00003748 , 0x00000012 
+ 00014147  0x00002d1b branch  0x0000336d 
+ 00014148  0x00002d1e jam  0x00000000 , 0x00004752 
+ 00014149  0x00002d1f branch  0x00003762 
+ 00014150  0x00002d21 jam  0x00000000 , 0x00004754 
+ 00014151  0x00002d22 branch  0x00003762 
+ 00014152  0x00002d24 jam  0x00000000 , 0x00004756 
+ 00014153  0x00002d25 branch  0x00003762 
+ 00014154  0x00002d2b call  0x0000374c 
+ 00014155  0x00002d2c branch  0x0000374f 
+ 00014156  0x00002d2e fetch  0x00000001 , 0x00004752 
+ 00014157  0x00002d2f store  0x00000001 , 0x0000475f 
+ 00014158  0x00002d30 branch  0x00003773 
+ 00014159  0x00002d32 fetch  0x00000001 , 0x0000475e 
+ 00014160  0x00002d33 call  0x00003754 
+ 00014161  0x00002d34 fetch  0x00000001 , 0x00004753 
+ 00014162  0x00002d35 store  0x00000001 , 0x0000475d 
+ 00014163  0x00002d36 branch  0x00003770 
+ 00014164  0x00002d38 beq  0x00000002 , 0x00003758 
+ 00014165  0x00002d39 beq  0x00000003 , 0x0000375a 
+ 00014166  0x00002d3a store  0x00000001 , 0x0000475e 
+ 00014167  0x00002d3b rtn 
+ 00014168  0x00002d3d jam  0x00000005 , 0x0000475e 
+ 00014169  0x00002d3e rtn 
+ 00014170  0x00002d40 jam  0x0000000a , 0x0000475e 
+ 00014171  0x00002d41 rtn 
+ 00014172  0x00002d43 fetch  0x00000001 , 0x00004752 
+ 00014173  0x00002d44 call  0x00003754 
+ 00014174  0x00002d45 fetch  0x00000001 , 0x0000475e 
+ 00014175  0x00002d46 call  0x0000379e 
+ 00014176  0x00002d47 call  0x000037a1 
+ 00014177  0x00002d48 branch  0x000069c4 
+ 00014178  0x00002d4b fetch  0x00000001 , 0x000047f0 
+ 00014179  0x00002d4c nrtn  0x00000034 
+ 00014180  0x00002d4d fetch  0x00000006 , 0x00004752 
+ 00014181  0x00002d4e store  0x00000006 , 0x0000475d 
+ 00014182  0x00002d4f fetch  0x00000001 , 0x0000475e 
+ 00014183  0x00002d50 fetcht  0x00000001 , 0x00004760 
+ 00014184  0x00002d51 iand  0x00000002 , 0x0000003f 
+ 00014185  0x00002d52 fetcht  0x00000001 , 0x00004762 
+ 00014186  0x00002d53 iand  0x00000002 , 0x0000003f 
+ 00014187  0x00002d54 call  0x00003779 , 0x00000034 
+ 00014188  0x00002d55 bpatch  0x000000d2 , 0x0000401a 
+ 00014189  0x00002d56 call  0x00003770 
+ 00014190  0x00002d57 call  0x00003773 
+ 00014191  0x00002d58 branch  0x00003776 
+ 00014192  0x00002d5a arg  0x00004763 , 0x00000012 
+ 00014193  0x00002d5b arg  0x0000475d , 0x00000006 
+ 00014194  0x00002d5c branch  0x0000377b 
+ 00014195  0x00002d5e arg  0x0000476b , 0x00000012 
+ 00014196  0x00002d5f arg  0x0000475f , 0x00000006 
+ 00014197  0x00002d60 branch  0x0000377b 
+ 00014198  0x00002d62 arg  0x00004773 , 0x00000012 
+ 00014199  0x00002d63 arg  0x00004761 , 0x00000006 
+ 00014200  0x00002d64 branch  0x0000377b 
+ 00014201  0x00002d66 jam  0x00000000 , 0x000047d1 
+ 00014202  0x00002d67 rtn 
+ 00014203  0x00002d6a ifetch  0x00000001 , 0x00000006 
+ 00014204  0x00002d6b beq  0x00000000 , 0x00003787 
+ 00014205  0x00002d6c beq  0x00000001 , 0x00003780 
+ 00014206  0x00002d6d beq  0x00000002 , 0x00003782 
+ 00014207  0x00002d6e rtn 
+ 00014208  0x00002d70 jam  0x00000000 , 0x0000477b 
+ 00014209  0x00002d71 branch  0x00003783 
+ 00014210  0x00002d73 jam  0x00000001 , 0x0000477b 
+ 00014211  0x00002d74 ifetch  0x00000001 , 0x00000006 
+ 00014212  0x00002d75 store  0x00000001 , 0x0000477d 
+ 00014213  0x00002d76 ifetch  0x00000008 , 0x00000012 
+ 00014214  0x00002d77 branch  0x0000378c 
+ 00014215  0x00002d7a ifetch  0x00000001 , 0x00000012 
+ 00014216  0x00002d7b call  0x000069d7 
+ 00014217  0x00002d7c increase  0x00000001 , 0x00000012 
+ 00014218  0x00002d7d ifetch  0x00000001 , 0x00000012 
+ 00014219  0x00002d7e branch  0x000069d7 
+ 00014220  0x00002d80 store  0x00000008 , 0x0000477e 
+ 00014221  0x00002d81 jam  0x00000001 , 0x000047d1 
+ 00014222  0x00002d82 fetch  0x00000001 , 0x0000477b 
+ 00014223  0x00002d83 beq  0x00000000 , 0x0000379a 
+ 00014224  0x00002d85 fetch  0x00000001 , 0x0000477f 
+ 00014225  0x00002d86 store  0x00000001 , 0x00004780 
+ 00014226  0x00002d87 fetch  0x00000001 , 0x0000477e 
+ 00014227  0x00002d89 call  0x000069d7 
+ 00014228  0x00002d8a fetch  0x00000001 , 0x0000477d 
+ 00014229  0x00002d8b call  0x0000379e 
+ 00014230  0x00002d8c store  0x00000001 , 0x00004785 
+ 00014231  0x00002d8d fetch  0x00000006 , 0x00004780 
+ 00014232  0x00002d8e store  0x00000006 , 0x00000a9a 
+ 00014233  0x00002d8f branch  0x000069ae 
+ 00014234  0x00002d91 fetch  0x00000001 , 0x0000477e 
+ 00014235  0x00002d92 store  0x00000001 , 0x00004780 
+ 00014236  0x00002d93 fetch  0x00000001 , 0x0000477f 
+ 00014237  0x00002d94 branch  0x00003793 
+ 00014238  0x00002d97 mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00014239  0x00002d98 add  0x0000003f , 0x00000032 , 0x0000003f 
+ 00014240  0x00002d99 rtn 
+ 00014241  0x00002d9b arg  0x00002ee0 , 0x00000002 
+ 00014242  0x00002d9c imul32  0x00000002 , 0x0000003f 
+ 00014243  0x00002d9d div  0x0000003f , 0x00000064 
+ 00014244  0x00002d9e call  0x00007f86 
+ 00014245  0x00002d9f quotient  0x00000002 
+ 00014246  0x00002da0 copy  0x00000002 , 0x00000011 
+ 00014247  0x00002da1 setarg  0x00002ee0 
+ 00014248  0x00002da2 isub  0x00000002 , 0x00000012 
+ 00014249  0x00002da3 rtn 
+ 00014250  0x00002da7 hfetch  0x00000001 , 0x00008082 
+ 00014251  0x00002da8 set1  0x00000002 , 0x0000003f 
+ 00014252  0x00002da9 hstore  0x00000001 , 0x00008082 
+ 00014253  0x00002daa setarg  0x0000009e 
+ 00014254  0x00002dab hstore  0x00000002 , 0x00008068 
+ 00014255  0x00002dac hstore  0x00000002 , 0x0000806a 
+ 00014256  0x00002dad rtn 
+ 00014257  0x00002db0 fetch  0x00000001 , 0x000047f0 
+ 00014258  0x00002db1 nrtn  0x00000034 
+ 00014259  0x00002db2 fetch  0x00000002 , 0x00004752 
+ 00014260  0x00002db3 store  0x00000002 , 0x00004787 
+ 00014261  0x00002db4 fetch  0x00000001 , 0x000047ea 
+ 00014262  0x00002db5 bne  0x00000001 , 0x000037b9 
+ 00014263  0x00002db6 fetch  0x00000002 , 0x000044a0 
+ 00014264  0x00002db7 store  0x00000002 , 0x00004787 
+ 00014265  0x00002db9 bpatch  0x000000d3 , 0x0000401a 
+ 00014266  0x00002dba call  0x000037aa 
+ 00014267  0x00002dbb call  0x000037dc 
+ 00014268  0x00002dbc setarg  0x0000bb80 
+ 00014269  0x00002dbd call  0x00002a8f 
+ 00014270  0x00002dbe call  0x000037e0 
+ 00014271  0x00002dbf setarg  0x00001c20 
+ 00014272  0x00002dc0 call  0x00002a8f 
+ 00014273  0x00002dc1 arg  0x00000010 , 0x00000039 
+ 00014274  0x00002dc3 call  0x000037dc 
+ 00014275  0x00002dc4 fetch  0x00000002 , 0x00004787 
+ 00014276  0x00002dc5 bbit1  0x00000000 , 0x000037c9 
+ 00014277  0x00002dc6 setarg  0x00001c20 
+ 00014278  0x00002dc7 call  0x00002a8f 
+ 00014279  0x00002dc8 call  0x000037e0 
+ 00014280  0x00002dc9 branch  0x000037cc 
+ 00014281  0x00002dcc setarg  0x00003840 
+ 00014282  0x00002dcd call  0x00002a8f 
+ 00014283  0x00002dce call  0x000037e0 
+ 00014284  0x00002dd0 setarg  0x00001c20 
+ 00014285  0x00002dd1 call  0x00002a8f 
+ 00014286  0x00002dd2 fetch  0x00000002 , 0x00004787 
+ 00014287  0x00002dd3 rshift  0x0000003f , 0x0000003f 
+ 00014288  0x00002dd4 store  0x00000002 , 0x00004787 
+ 00014289  0x00002dd5 loop  0x000037c2 
+ 00014290  0x00002dd7 jam  0x00000002 , 0x000047f1 
+ 00014291  0x00002dd8 jam  0x00000001 , 0x000047f2 
+ 00014292  0x00002dd9 setarg  0x00000a01 
+ 00014293  0x00002dda store  0x00000002 , 0x00004752 
+ 00014294  0x00002ddb fetch  0x00000001 , 0x000047b9 
+ 00014295  0x00002ddc beq  0x00000003 , 0x000037d9 
+ 00014296  0x00002dde branch  0x00003762 
+ 00014297  0x00002de0 setarg  0x00000a01 
+ 00014298  0x00002de1 store  0x00000002 , 0x00004754 
+ 00014299  0x00002de2 branch  0x00003762 
+ 00014300  0x00002de5 hfetch  0x00000001 , 0x00008085 
+ 00014301  0x00002de6 or_into  0x00000040 , 0x0000003f 
+ 00014302  0x00002de7 hstore  0x00000001 , 0x00008085 
+ 00014303  0x00002de8 rtn 
+ 00014304  0x00002dea hfetch  0x00000001 , 0x00008085 
+ 00014305  0x00002deb and_into  0x000000bf , 0x0000003f 
+ 00014306  0x00002dec hstore  0x00000001 , 0x00008085 
+ 00014307  0x00002ded rtn 
+ 00014308  0x00002df0 fetch  0x00000001 , 0x000047bb 
+ 00014309  0x00002df1 rtneq  0x00000000 
+ 00014310  0x00002df2 call  0x00002c65 
+ 00014311  0x00002df3 fetcht  0x00000001 , 0x000047bc 
+ 00014312  0x00002df4 storet  0x00000001 , 0x00004786 
+ 00014313  0x00002df5 call  0x000067fb 
+ 00014314  0x00002df6 call  0x00003847 
+ 00014315  0x00002df7 nrtn  0x00000001 
+ 00014316  0x00002df8 jam  0x00000001 , 0x0000479a 
+ 00014317  0x00002df9 rtn 
+ 00014318  0x00002dfc fetch  0x00000001 , 0x000047bb 
+ 00014319  0x00002dfd rtneq  0x00000000 
+ 00014320  0x00002dfe fetch  0x00000001 , 0x0000479b 
+ 00014321  0x00002dff nrtn  0x00000034 
+ 00014322  0x00002e00 fetch  0x00000002 , 0x00004682 
+ 00014323  0x00002e01 bbit1  0x00000009 , 0x000037f6 
+ 00014324  0x00002e02 fetch  0x00000001 , 0x000047ea 
+ 00014325  0x00002e03 rtnne  0x00000001 
+ 00014326  0x00002e05 bpatch  0x000000d4 , 0x0000401a 
+ 00014327  0x00002e06 call  0x00003847 
+ 00014328  0x00002e07 nrtn  0x00000001 
+ 00014329  0x00002e08 setarg  0x00008ca0 
+ 00014330  0x00002e09 call  0x00002a8f 
+ 00014331  0x00002e0a call  0x00003847 
+ 00014332  0x00002e0b nrtn  0x00000001 
+ 00014333  0x00002e0c call  0x0000383f 
+ 00014334  0x00002e0e call  0x00003842 
+ 00014335  0x00002e0f nrtn  0x00000002 
+ 00014336  0x00002e10 call  0x00003847 
+ 00014337  0x00002e11 branch  0x000037fe , 0x00000001 
+ 00014338  0x00002e12 arg  0x00000000 , 0x00000011 
+ 00014339  0x00002e13 arg  0x00000010 , 0x00000039 
+ 00014340  0x00002e14 call  0x0000383f 
+ 00014341  0x00002e16 call  0x00003842 
+ 00014342  0x00002e17 nrtn  0x00000002 
+ 00014343  0x00002e18 call  0x00003847 
+ 00014344  0x00002e19 nbranch  0x00003805 , 0x00000001 
+ 00014345  0x00002e1a setarg  0x00002a30 
+ 00014346  0x00002e1b call  0x00002a8f 
+ 00014347  0x00002e1c call  0x00003847 
+ 00014348  0x00002e1d branch  0x00003812 , 0x00000001 
+ 00014349  0x00002e1f setarg  0x00000000 
+ 00014350  0x00002e20 rshift  0x00000011 , 0x00000011 
+ 00014351  0x00002e21 ior  0x00000011 , 0x00000011 
+ 00014352  0x00002e22 loop  0x00003805 
+ 00014353  0x00002e23 branch  0x0000381b 
+ 00014354  0x00002e25 setarg  0x00008000 
+ 00014355  0x00002e26 rshift  0x00000011 , 0x00000011 
+ 00014356  0x00002e27 ior  0x00000011 , 0x00000011 
+ 00014357  0x00002e28 call  0x0000383f 
+ 00014358  0x00002e2a call  0x00003842 
+ 00014359  0x00002e2b nrtn  0x00000002 
+ 00014360  0x00002e2c call  0x00003847 
+ 00014361  0x00002e2d branch  0x00003816 , 0x00000001 
+ 00014362  0x00002e2e loop  0x00003805 
+ 00014363  0x00002e30 bpatch  0x000000d5 , 0x0000401a 
+ 00014364  0x00002e31 copy  0x00000011 , 0x0000003f 
+ 00014365  0x00002e32 store  0x00000002 , 0x00004789 
+ 00014366  0x00002e33 store  0x00000002 , 0x00004797 
+ 00014367  0x00002e34 fetch  0x00000001 , 0x000047ea 
+ 00014368  0x00002e35 beq  0x00000001 , 0x00003827 
+ 00014369  0x00002e37 arg  0x00000007 , 0x00000039 
+ 00014370  0x00002e38 arg  0x00004792 , 0x00000006 
+ 00014371  0x00002e39 call  0x000036f0 
+ 00014372  0x00002e3a store  0x00000001 , 0x00004799 
+ 00014373  0x00002e3b arg  0x0000478f , 0x00000011 
+ 00014374  0x00002e3c branch  0x00007e3d 
+ 00014375  0x00002e3f fetch  0x00000001 , 0x000047ef 
+ 00014376  0x00002e40 increase  0x00000001 , 0x0000003f 
+ 00014377  0x00002e41 store  0x00000001 , 0x000047ef 
+ 00014378  0x00002e42 div  0x0000003f , 0x00000002 
+ 00014379  0x00002e43 call  0x00007f86 
+ 00014380  0x00002e44 quotient  0x00000002 
+ 00014381  0x00002e45 remainder  0x0000003f 
+ 00014382  0x00002e46 nbranch  0x00003838 , 0x00000034 
+ 00014383  0x00002e48 fetch  0x00000001 , 0x000047bf 
+ 00014384  0x00002e49 isub  0x00000002 , 0x0000003e 
+ 00014385  0x00002e4a call  0x0000383d , 0x00000005 
+ 00014386  0x00002e4b arg  0x0000479c , 0x0000003f 
+ 00014387  0x00002e4c increase  0xffffffff , 0x00000002 
+ 00014388  0x00002e4d iadd  0x00000002 , 0x00000011 
+ 00014389  0x00002e4e arg  0x00000000 , 0x0000003f 
+ 00014390  0x00002e4f istore  0x00000001 , 0x00000011 
+ 00014391  0x00002e50 rtn 
+ 00014392  0x00002e52 arg  0x0000479c , 0x0000003f 
+ 00014393  0x00002e53 iadd  0x00000002 , 0x00000011 
+ 00014394  0x00002e54 arg  0x00000002 , 0x0000003f 
+ 00014395  0x00002e55 istore  0x00000001 , 0x00000011 
+ 00014396  0x00002e56 rtn 
+ 00014397  0x00002e58 jam  0x00000001 , 0x000047f0 
+ 00014398  0x00002e59 rtn 
+ 00014399  0x00002e5b copy  0x00000022 , 0x0000003f 
+ 00014400  0x00002e5c store  0x00000004 , 0x0000478b 
+ 00014401  0x00002e5d rtn 
+ 00014402  0x00002e5f copy  0x00000022 , 0x0000003f 
+ 00014403  0x00002e60 fetcht  0x00000004 , 0x0000478b 
+ 00014404  0x00002e61 isub  0x00000002 , 0x0000003f 
+ 00014405  0x00002e62 sub  0x0000003f , 0x000000c8 , 0x0000003e 
+ 00014406  0x00002e63 rtn 
+ 00014407  0x00002e66 fetcht  0x00000001 , 0x00004786 
+ 00014408  0x00002e67 branch  0x0000681d 
+ 00014409  0x00002e6a fetch  0x00000008 , 0x00004752 
+ 00014410  0x00002e6b store  0x00000008 , 0x0000479c 
+ 00014411  0x00002e6c rtn 
+ 00014412  0x00002e6f fetch  0x00000001 , 0x000047b9 
+ 00014413  0x00002e70 store  0x00000001 , 0x000047af 
+ 00014414  0x00002e71 fetch  0x00000001 , 0x000047ba 
+ 00014415  0x00002e72 store  0x00000001 , 0x000047b0 
+ 00014416  0x00002e73 fetch  0x00000001 , 0x000047bb 
+ 00014417  0x00002e74 store  0x00000001 , 0x000047b1 
+ 00014418  0x00002e75 arg  0x0000000d , 0x00000039 
+ 00014419  0x00002e76 arg  0x000047aa , 0x00000006 
+ 00014420  0x00002e77 call  0x000036f0 
+ 00014421  0x00002e78 store  0x00000001 , 0x000047b7 
+ 00014422  0x00002e79 arg  0x000047a7 , 0x00000011 
+ 00014423  0x00002e7a branch  0x00007e3d 
+ 00014424  0x00002e81 call  0x000065c2 
+ 00014425  0x00002e82 jam  0x0000007a , 0x000046f6 
+ 00014426  0x00002e83 call  0x0000386d 
+ 00014427  0x00002e84 call  0x00003867 
+ 00014428  0x00002e85 setarg  0x00003860 
+ 00014429  0x00002e86 store  0x00000002 , 0x000041fd 
+ 00014430  0x00002e87 arg  0x00000000 , 0x00000011 
+ 00014431  0x00002e88 branch  0x000069a6 
+ 00014432  0x00002e8b fetch  0x00000002 , 0x000046a1 
+ 00014433  0x00002e8c rtn  0x00000034 
+ 00014434  0x00002e8d increase  0xffffffff , 0x0000003f 
+ 00014435  0x00002e8e store  0x00000002 , 0x000046a1 
+ 00014436  0x00002e8f rtnne  0x00000000 
+ 00014437  0x00002e90 jam  0x00000000 , 0x000046a0 
+ 00014438  0x00002e91 rtn 
+ 00014439  0x00002e94 bpatch  0x000000d6 , 0x0000401a 
+ 00014440  0x00002e95 fetch  0x00000001 , 0x000046a4 
+ 00014441  0x00002e96 sub  0x0000003f , 0x00000028 , 0x0000003e 
+ 00014442  0x00002e97 rtn  0x00000002 
+ 00014443  0x00002e98 jam  0x00000000 , 0x000046a4 
+ 00014444  0x00002e99 rtn 
+ 00014445  0x00002e9c arg  0x000046a4 , 0x00000011 
+ 00014446  0x00002e9d arg  0x00000000 , 0x00000012 
+ 00014447  0x00002e9e arg  0x00000051 , 0x00000002 
+ 00014448  0x00002e9f branch  0x000065df 
+ 00014449  0x00002ea3 disable  0x00000028 
+ 00014450  0x00002ea4 fetch  0x00000001 , 0x000046a3 
+ 00014451  0x00002ea5 copy  0x0000003f , 0x00000039 
+ 00014452  0x00002ea7 arg  0x000046a5 , 0x00000011 
+ 00014453  0x00002ea8 copy  0x00000013 , 0x00000012 
+ 00014454  0x00002eaa bpatch  0x000000d7 , 0x0000401a 
+ 00014455  0x00002eab call  0x0000387c 
+ 00014456  0x00002eac branch  0x00007fe7 , 0x00000005 
+ 00014457  0x00002eae increase  0x00000004 , 0x00000011 
+ 00014458  0x00002eaf loop  0x00003876 
+ 00014459  0x00002eb0 rtn 
+ 00014460  0x00002eb4 bpatch  0x000000d8 , 0x0000401b 
+ 00014461  0x00002eb5 ifetch  0x00000003 , 0x00000011 
+ 00014462  0x00002eb6 ifetcht  0x00000003 , 0x00000012 
+ 00014463  0x00002eb7 isub  0x00000002 , 0x0000003e 
+ 00014464  0x00002eb8 rtn 
+ 00014465  0x00002ebb bpatch  0x000000d9 , 0x0000401b 
+ 00014466  0x00002ebc ifetch  0x00000003 , 0x00000011 
+ 00014467  0x00002ebd ifetcht  0x00000003 , 0x00000012 
+ 00014468  0x00002ebe isub  0x00000002 , 0x0000003e 
+ 00014469  0x00002ebf nrtn  0x00000005 
+ 00014470  0x00002ec0 ifetch  0x00000001 , 0x00000006 
+ 00014471  0x00002ec1 sub  0x0000003f , 0x00000000 , 0x0000003e 
+ 00014472  0x00002ec2 rtn  0x00000005 
+ 00014473  0x00002ec3 add  0x00000011 , 0x00000003 , 0x00000006 
+ 00014474  0x00002ec4 ifetcht  0x00000001 , 0x00000006 
+ 00014475  0x00002ec5 isub  0x00000002 , 0x0000003e 
+ 00014476  0x00002ec6 rtn 
+ 00014477  0x00002eca bpatch  0x000000da , 0x0000401b 
+ 00014478  0x00002ecb disable  0x00000028 
+ 00014479  0x00002ecc fetch  0x00000001 , 0x000046a3 
+ 00014480  0x00002ecd copy  0x0000003f , 0x00000039 
+ 00014481  0x00002ecf arg  0x000046a5 , 0x00000011 
+ 00014482  0x00002ed0 copy  0x00000013 , 0x00000012 
+ 00014483  0x00002ed2 call  0x00003881 
+ 00014484  0x00002ed3 branch  0x00007fe7 , 0x00000005 
+ 00014485  0x00002ed4 increase  0x00000004 , 0x00000011 
+ 00014486  0x00002ed5 loop  0x00003893 
+ 00014487  0x00002ed6 rtn 
+ 00014488  0x00002eda fetch  0x00000001 , 0x00000004 
+ 00014489  0x00002edb increase  0x00000001 , 0x0000003f 
+ 00014490  0x00002edc store  0x00000001 , 0x00000004 
+ 00014491  0x00002edd arg  0x000002e5 , 0x00000013 
+ 00014492  0x00002ee0 ifetch  0x00000002 , 0x00000013 
+ 00014493  0x00002ee1 arg  0x000055aa , 0x00000002 
+ 00014494  0x00002ee2 isub  0x00000002 , 0x0000003e 
+ 00014495  0x00002ee3 nrtn  0x00000005 
+ 00014496  0x00002ee4 copy  0x00000006 , 0x00000013 
+ 00014497  0x00002ee5 ifetcht  0x00000003 , 0x00000013 
+ 00014498  0x00002ee6 setarg  0x00ffffff 
+ 00014499  0x00002ee7 isub  0x00000002 , 0x0000003e 
+ 00014500  0x00002ee8 branch  0x000038a8 , 0x00000005 
+ 00014501  0x00002ee9 call  0x0000388d 
+ 00014502  0x00002eea branch  0x000038a8 , 0x00000028 
+ 00014503  0x00002eeb rtn 
+ 00014504  0x00002eee bpatch  0x000000db , 0x0000401b 
+ 00014505  0x00002eef increase  0x00000004 , 0x00000013 
+ 00014506  0x00002ef0 ifetch  0x00000001 , 0x00000013 
+ 00014507  0x00002ef1 fetcht  0x00000001 , 0x000046f6 
+ 00014508  0x00002ef2 isub  0x00000002 , 0x0000003e 
+ 00014509  0x00002ef3 rtn  0x00000005 
+ 00014510  0x00002ef4 store  0x00000001 , 0x000046f6 
+ 00014511  0x00002ef5 fetch  0x00000001 , 0x00000003 
+ 00014512  0x00002ef6 increase  0x00000001 , 0x0000003f 
+ 00014513  0x00002ef7 store  0x00000001 , 0x00000003 
+ 00014514  0x00002ef9 increase  0x00000001 , 0x00000013 
+ 00014515  0x00002efa ifetch  0x00000001 , 0x00000013 
+ 00014516  0x00002efb store  0x00000001 , 0x000046f5 
+ 00014517  0x00002efc copy  0x0000003f , 0x00000039 
+ 00014518  0x00002efd rtn  0x00000034 
+ 00014519  0x00002eff ifetch  0x00000001 , 0x00000006 
+ 00014520  0x00002f00 beq  0x00000000 , 0x000038c2 
+ 00014521  0x00002f01 beq  0x00000001 , 0x000038cf 
+ 00014522  0x00002f02 beq  0x00000002 , 0x000038d4 
+ 00014523  0x00002f03 beq  0x00000003 , 0x000038d9 
+ 00014524  0x00002f04 beq  0x00000004 , 0x000038de 
+ 00014525  0x00002f05 beq  0x00000005 , 0x000038e3 
+ 00014526  0x00002f06 beq  0x00000006 , 0x000038e8 
+ 00014527  0x00002f07 beq  0x000000ff , 0x000038ea 
+ 00014528  0x00002f08 loop  0x000038b7 
+ 00014529  0x00002f09 rtn 
+ 00014530  0x00002f0c copy  0x00000006 , 0x00000013 
+ 00014531  0x00002f0d fetch  0x00000001 , 0x0000469a 
+ 00014532  0x00002f0e store  0x00000001 , 0x00000a9a 
+ 00014533  0x00002f0f arg  0x00000000 , 0x00000002 
+ 00014534  0x00002f11 storet  0x00000001 , 0x00000a9b 
+ 00014535  0x00002f12 setarg  0x00002710 
+ 00014536  0x00002f13 store  0x00000003 , 0x00000a9c 
+ 00014537  0x00002f14 ifetch  0x00000001 , 0x00000013 
+ 00014538  0x00002f15 store  0x00000001 , 0x00000a9f 
+ 00014539  0x00002f16 call  0x000069ae 
+ 00014540  0x00002f17 and  0x00000013 , 0x00000001 , 0x00000006 
+ 00014541  0x00002f18 loop  0x000038b7 
+ 00014542  0x00002f19 rtn 
+ 00014543  0x00002f1b copy  0x00000013 , 0x00000006 
+ 00014544  0x00002f1c fetch  0x00000001 , 0x0000469b 
+ 00014545  0x00002f1d store  0x00000001 , 0x00000a9a 
+ 00014546  0x00002f1e arg  0x00000001 , 0x00000002 
+ 00014547  0x00002f1f branch  0x000038c6 
+ 00014548  0x00002f21 copy  0x00000013 , 0x00000006 
+ 00014549  0x00002f22 fetch  0x00000001 , 0x0000469c 
+ 00014550  0x00002f23 store  0x00000001 , 0x00000a9a 
+ 00014551  0x00002f24 arg  0x00000002 , 0x00000002 
+ 00014552  0x00002f25 branch  0x000038c6 
+ 00014553  0x00002f27 copy  0x00000013 , 0x00000006 
+ 00014554  0x00002f28 fetch  0x00000001 , 0x0000469d 
+ 00014555  0x00002f29 store  0x00000001 , 0x00000a9a 
+ 00014556  0x00002f2a arg  0x00000003 , 0x00000002 
+ 00014557  0x00002f2b branch  0x000038c6 
+ 00014558  0x00002f2d copy  0x00000013 , 0x00000006 
+ 00014559  0x00002f2e fetch  0x00000001 , 0x0000469e 
+ 00014560  0x00002f2f store  0x00000001 , 0x00000a9a 
+ 00014561  0x00002f30 arg  0x00000004 , 0x00000002 
+ 00014562  0x00002f31 branch  0x000038c6 
+ 00014563  0x00002f33 copy  0x00000013 , 0x00000006 
+ 00014564  0x00002f34 fetch  0x00000001 , 0x0000469f 
+ 00014565  0x00002f35 store  0x00000001 , 0x00000a9a 
+ 00014566  0x00002f36 arg  0x00000005 , 0x00000002 
+ 00014567  0x00002f37 branch  0x000038c6 
+ 00014568  0x00002f3a ifetch  0x00000001 , 0x00000006 
+ 00014569  0x00002f3b rtn 
+ 00014570  0x00002f3e copy  0x00000006 , 0x00000013 
+ 00014571  0x00002f3f fetch  0x00000001 , 0x000046a0 
+ 00014572  0x00002f40 bne  0x00000001 , 0x000038ee 
+ 00014573  0x00002f41 call  0x000038f0 
+ 00014574  0x00002f43 and  0x00000013 , 0x00000004 , 0x00000006 
+ 00014575  0x00002f44 rtn 
+ 00014576  0x00002f46 bpatch  0x000000dc , 0x0000401b 
+ 00014577  0x00002f47 call  0x00003871 
+ 00014578  0x00002f48 branch  0x000038fe , 0x00000028 
+ 00014579  0x00002f49 fetch  0x00000001 , 0x000046a4 
+ 00014580  0x00002f4a copy  0x0000003f , 0x00000002 
+ 00014581  0x00002f4b increase  0x00000001 , 0x0000003f 
+ 00014582  0x00002f4c store  0x00000001 , 0x000046a4 
+ 00014583  0x00002f4d call  0x00003867 
+ 00014584  0x00002f4e lshift2  0x00000002 , 0x00000002 
+ 00014585  0x00002f4f setarg  0x000046a5 
+ 00014586  0x00002f50 iadd  0x00000002 , 0x00000005 
+ 00014587  0x00002f51 ifetch  0x00000004 , 0x00000013 
+ 00014588  0x00002f52 istore  0x00000004 , 0x00000005 
+ 00014589  0x00002f53 branch  0x00003903 
+ 00014590  0x00002f55 add  0x00000013 , 0x00000003 , 0x00000006 
+ 00014591  0x00002f56 ifetch  0x00000001 , 0x00000006 
+ 00014592  0x00002f57 rtn  0x00000034 
+ 00014593  0x00002f58 ifetch  0x00000004 , 0x00000013 
+ 00014594  0x00002f59 istore  0x00000004 , 0x00000011 
+ 00014595  0x00002f5b arg  0x000046a4 , 0x00000011 
+ 00014596  0x00002f5c arg  0x00000000 , 0x00000012 
+ 00014597  0x00002f5d arg  0x00000051 , 0x00000002 
+ 00014598  0x00002f5e branch  0x00006606 
+ 00014599  0x00002f66 fetcht  0x00000001 , 0x0000469a 
+ 00014600  0x00002f67 call  0x00006825 
+ 00014601  0x00002f68 rtn 
+ 00014602  0x00002f6e fetcht  0x00000001 , 0x0000469a 
+ 00014603  0x00002f6f call  0x00006829 
+ 00014604  0x00002f72 fetcht  0x00000001 , 0x0000469a 
+ 00014605  0x00002f73 call  0x00006825 
+ 00014606  0x00002f76 call  0x0000391d 
+ 00014607  0x00002f78 fetch  0x00000001 , 0x000046a7 
+ 00014608  0x00002f79 nrtn  0x00000034 
+ 00014609  0x00002f7b call  0x00002c29 
+ 00014610  0x00002f7c hfetch  0x00000004 , 0x00008138 
+ 00014611  0x00002f7d set0  0x0000000f , 0x0000003f 
+ 00014612  0x00002f7e hstore  0x00000004 , 0x0000804c 
+ 00014613  0x00002f7f call  0x00002c21 
+ 00014614  0x00002f80 arg  0xffffffff , 0x00000002 
+ 00014615  0x00002f81 branch  0x00002b2a 
+ 00014616  0x00002f84 fetch  0x00000001 , 0x000046a7 
+ 00014617  0x00002f85 branch  0x000056f9 , 0x00000034 
+ 00014618  0x00002f86 increase  0xffffffff , 0x0000003f 
+ 00014619  0x00002f87 store  0x00000001 , 0x000046a7 
+ 00014620  0x00002f88 branch  0x000056f9 
+ 00014621  0x00002f8b mul32  0x0000003f , 0x00000014 , 0x0000003f 
+ 00014622  0x00002f8c arg  0x000046a8 , 0x00000006 
+ 00014623  0x00002f8d iadd  0x00000006 , 0x00000006 
+ 00014624  0x00002f8e ifetch  0x00000001 , 0x00000006 
+ 00014625  0x00002f8f rtn  0x00000034 
+ 00014626  0x00002f90 copy  0x0000003f , 0x00000011 
+ 00014627  0x00002f91 copy  0x00000011 , 0x00000039 
+ 00014628  0x00002f92 arg  0x00004372 , 0x00000005 
+ 00014629  0x00002f93 call  0x00007f01 
+ 00014630  0x00002f94 copy  0x00000011 , 0x0000003f 
+ 00014631  0x00002f95 increase  0x00000002 , 0x0000003f 
+ 00014632  0x00002f96 store  0x00000001 , 0x0000436f 
+ 00014633  0x00002f97 rtn 
+ 00014634  0x00002fa0 rtn  0x0000002b 
+ 00014635  0x00002fa1 call  0x000057a3 
+ 00014636  0x00002fa2 call  0x000068a8 
+ 00014637  0x00002fa3 setarg  0x00003982 
+ 00014638  0x00002fa4 store  0x00000002 , 0x000041f3 
+ 00014639  0x00002fa5 setarg  0x0000396e 
+ 00014640  0x00002fa6 store  0x00000002 , 0x000041f1 
+ 00014641  0x00002fa7 setarg  0x00003986 
+ 00014642  0x00002fa8 store  0x00000002 , 0x000041f5 
+ 00014643  0x00002fa9 setarg  0x0000396d 
+ 00014644  0x00002faa store  0x00000002 , 0x000041ef 
+ 00014645  0x00002fab setarg  0x00003969 
+ 00014646  0x00002fac store  0x00000002 , 0x000041e9 
+ 00014647  0x00002fad setarg  0x00003ab7 
+ 00014648  0x00002fae store  0x00000002 , 0x000041fb 
+ 00014649  0x00002faf setarg  0x00003c32 
+ 00014650  0x00002fb0 store  0x00000002 , 0x0000456f 
+ 00014651  0x00002fb1 setarg  0x00003cc2 
+ 00014652  0x00002fb2 store  0x00000002 , 0x000041f9 
+ 00014653  0x00002fb3 setarg  0x00003cd7 
+ 00014654  0x00002fb4 store  0x00000002 , 0x000041fd 
+ 00014655  0x00002fb6 call  0x0000397f 
+ 00014656  0x00002fb7 bpatch  0x000000dd , 0x0000401b 
+ 00014657  0x00002fb8 call  0x00003945 
+ 00014658  0x00002fb9 call  0x00003964 
+ 00014659  0x00002fba call  0x00002c6f 
+ 00014660  0x00002fbb branch  0x00003c48 
+ 00014661  0x00002fbf fetch  0x00000004 , 0x000046aa 
+ 00014662  0x00002fc0 hstore  0x00000004 , 0x00008054 
+ 00014663  0x00002fc2 fetch  0x00000004 , 0x000046ae 
+ 00014664  0x00002fc3 hstore  0x00000004 , 0x0000805a 
+ 00014665  0x00002fc5 hfetch  0x00000001 , 0x00008081 
+ 00014666  0x00002fc6 or_into  0x00000004 , 0x0000003f 
+ 00014667  0x00002fc7 and_into  0x000000fc , 0x0000003f 
+ 00014668  0x00002fc8 hstore  0x00000001 , 0x00008081 
+ 00014669  0x00002fc9 jam  0x00000000 , 0x00008062 
+ 00014670  0x00002fcb fetch  0x00000002 , 0x000046aa 
+ 00014671  0x00002fcc hstore  0x00000002 , 0x00008058 
+ 00014672  0x00002fcd fetch  0x00000002 , 0x000046ae 
+ 00014673  0x00002fce hstore  0x00000002 , 0x0000805e 
+ 00014674  0x00002fcf hstore  0x00000002 , 0x00008060 
+ 00014675  0x00002fd1 hfetch  0x00000004 , 0x00008078 
+ 00014676  0x00002fd2 set1  0x00000007 , 0x0000003f 
+ 00014677  0x00002fd3 hstore  0x00000004 , 0x00008078 
+ 00014678  0x00002fd5 hfetch  0x00000002 , 0x00008050 
+ 00014679  0x00002fd6 set0  0x0000000f , 0x0000003f 
+ 00014680  0x00002fd7 hstore  0x00000002 , 0x00008050 
+ 00014681  0x00002fd8 call  0x000066ce 
+ 00014682  0x00002fd9 jam  0x00000000 , 0x00008043 
+ 00014683  0x00002fda jam  0x00000081 , 0x00008062 
+ 00014684  0x00002fdc fetch  0x00000001 , 0x000046bf 
+ 00014685  0x00002fdd isolate1  0x00000000 , 0x0000003f 
+ 00014686  0x00002fde hfetcht  0x00000001 , 0x00008062 
+ 00014687  0x00002fdf setflag  0x00000001 , 0x00000004 , 0x00000002 
+ 00014688  0x00002fe0 hstoret  0x00000001 , 0x00008062 
+ 00014689  0x00002fe1 rtn 
+ 00014690  0x00002fe6 call  0x0000397f 
+ 00014691  0x00002fe7 branch  0x00003945 
+ 00014692  0x00002fef fetcht  0x00000001 , 0x0000469e 
+ 00014693  0x00002ff0 call  0x0000680e 
+ 00014694  0x00002ff1 call  0x000039e6 
+ 00014695  0x00002ff3 fetcht  0x00000001 , 0x0000469c 
+ 00014696  0x00002ff4 branch  0x000067fb 
+ 00014697  0x00002ff7 fetcht  0x00000001 , 0x0000469c 
+ 00014698  0x00002ff8 call  0x0000681d 
+ 00014699  0x00002ff9 nbranch  0x000033d2 , 0x00000001 
+ 00014700  0x00002ffa branch  0x000033d0 
+ 00014701  0x00002ffe rtn 
+ 00014702  0x00003001 call  0x00003970 
+ 00014703  0x00003002 branch  0x00003ce9 
+ 00014704  0x00003005 fetch  0x00000001 , 0x00004682 
+ 00014705  0x00003006 bbit0  0x00000004 , 0x0000397f 
+ 00014706  0x00003007 bpatch  0x000000de , 0x0000401b 
+ 00014707  0x00003008 setarg  0x00003eff 
+ 00014708  0x00003009 fetcht  0x00000004 , 0x000046c5 
+ 00014709  0x0000300a iadd  0x00000002 , 0x00000002 
+ 00014710  0x0000300b copy  0x00000022 , 0x0000003f 
+ 00014711  0x0000300c isub  0x00000002 , 0x0000003e 
+ 00014712  0x0000300d nrtn  0x00000002 
+ 00014713  0x0000300e fetch  0x00000002 , 0x00004682 
+ 00014714  0x0000300f bbit1  0x00000005 , 0x0000397f 
+ 00014715  0x00003010 fetch  0x00000001 , 0x000046bf 
+ 00014716  0x00003011 rtnbit1  0x00000006 
+ 00014717  0x00003012 call  0x00003cec 
+ 00014718  0x00003013 call  0x0000340e 
+ 00014719  0x00003015 copy  0x00000022 , 0x0000003f 
+ 00014720  0x00003016 store  0x00000004 , 0x000046c5 
+ 00014721  0x00003017 rtn 
+ 00014722  0x0000301b call  0x00003ce9 
+ 00014723  0x0000301c call  0x0000526e 
+ 00014724  0x0000301d nrtn  0x00000034 
+ 00014725  0x0000301e branch  0x000039eb 
+ 00014726  0x00003022 copy  0x00000013 , 0x0000003f 
+ 00014727  0x00003023 beq  0x00000001 , 0x000039d4 
+ 00014728  0x00003024 beq  0x00000002 , 0x000039a3 
+ 00014729  0x00003025 beq  0x00000004 , 0x000039d7 
+ 00014730  0x00003026 beq  0x00000005 , 0x000039c4 
+ 00014731  0x00003027 beq  0x00000008 , 0x000039aa 
+ 00014732  0x00003028 beq  0x00000009 , 0x000039b1 
+ 00014733  0x00003029 beq  0x0000000a , 0x000039c9 
+ 00014734  0x0000302a beq  0x0000000b , 0x000039b6 
+ 00014735  0x0000302b beq  0x0000000c , 0x000039c2 
+ 00014736  0x0000302c beq  0x00000013 , 0x000039d7 
+ 00014737  0x0000302d beq  0x00000014 , 0x000039cf 
+ 00014738  0x0000302e beq  0x00000015 , 0x000039c6 
+ 00014739  0x0000302f beq  0x00000021 , 0x000039ca 
+ 00014740  0x00003030 beq  0x00000023 , 0x000039cb 
+ 00014741  0x00003031 beq  0x00000024 , 0x000039ce 
+ 00014742  0x00003032 beq  0x00000030 , 0x00003c8a 
+ 00014743  0x00003033 beq  0x00000031 , 0x00003c8c 
+ 00014744  0x00003034 beq  0x00000032 , 0x00003c9a 
+ 00014745  0x00003035 beq  0x00000033 , 0x00003c98 
+ 00014746  0x00003036 beq  0x00000034 , 0x00003c84 
+ 00014747  0x00003037 beq  0x00000035 , 0x00003c73 
+ 00014748  0x00003038 beq  0x00000036 , 0x00003c82 
+ 00014749  0x00003039 beq  0x00000037 , 0x00003c8e 
+ 00014750  0x0000303a beq  0x00000038 , 0x00003c90 
+ 00014751  0x0000303b beq  0x0000003b , 0x00003ca1 
+ 00014752  0x0000303c beq  0x0000003d , 0x00003c6a 
+ 00014753  0x0000303d beq  0x00000041 , 0x000039d9 
+ 00014754  0x0000303e rtn 
+ 00014755  0x00003042 call  0x0000397f 
+ 00014756  0x00003043 fetch  0x00000001 , 0x00004665 
+ 00014757  0x00003044 ncall  0x00003c8e , 0x00000034 
+ 00014758  0x00003045 call  0x000039d7 
+ 00014759  0x00003046 fetch  0x00000002 , 0x00004682 
+ 00014760  0x00003047 rtnbit0  0x00000004 
+ 00014761  0x00003048 branch  0x000039b1 
+ 00014762  0x0000304b fetch  0x00000002 , 0x00004682 
+ 00014763  0x0000304c set1  0x00000004 , 0x0000003f 
+ 00014764  0x0000304d store  0x00000002 , 0x00004682 
+ 00014765  0x0000304e fetch  0x00000001 , 0x000046a7 
+ 00014766  0x0000304f store  0x00000001 , 0x00004172 
+ 00014767  0x00003050 call  0x000039e6 
+ 00014768  0x00003051 branch  0x00003c1d 
+ 00014769  0x00003056 fetch  0x00000002 , 0x00004682 
+ 00014770  0x00003057 rtnbit0  0x00000004 
+ 00014771  0x00003058 set0  0x00000004 , 0x0000003f 
+ 00014772  0x00003059 store  0x00000002 , 0x00004682 
+ 00014773  0x0000305a branch  0x00003c21 
+ 00014774  0x00003060 call  0x0000397f 
+ 00014775  0x00003063 fetch  0x00000002 , 0x00004042 
+ 00014776  0x00003064 rshift  0x0000003f , 0x0000003f 
+ 00014777  0x00003065 fetcht  0x00000002 , 0x000041e3 
+ 00014778  0x00003066 isub  0x00000002 , 0x0000003e 
+ 00014779  0x00003067 nbranch  0x000039bd , 0x00000005 
+ 00014780  0x00003068 branch  0x00003416 
+ 00014781  0x0000306a fetch  0x00000001 , 0x000046bf 
+ 00014782  0x0000306b rtnbit1  0x00000005 
+ 00014783  0x0000306c hfetch  0x00000002 , 0x00008112 
+ 00014784  0x0000306d ncall  0x00003cf0 , 0x00000034 
+ 00014785  0x0000306e branch  0x0000340c 
+ 00014786  0x00003071 call  0x00003cee 
+ 00014787  0x00003072 branch  0x00003418 
+ 00014788  0x00003075 call  0x0000397f 
+ 00014789  0x00003076 branch  0x000039dd 
+ 00014790  0x00003079 call  0x00005816 
+ 00014791  0x0000307a call  0x000039d7 
+ 00014792  0x0000307b branch  0x00003c23 
+ 00014793  0x0000307e branch  0x000033dd 
+ 00014794  0x00003082 branch  0x00003cee 
+ 00014795  0x00003086 fetch  0x00000001 , 0x000046bf 
+ 00014796  0x00003087 bbit0  0x00000005 , 0x0000340e 
+ 00014797  0x00003088 branch  0x00003cf2 
+ 00014798  0x0000308c branch  0x00003cf2 
+ 00014799  0x00003090 call  0x000058ba 
+ 00014800  0x00003091 call  0x000039dd 
+ 00014801  0x00003092 fetch  0x00000001 , 0x000046a8 
+ 00014802  0x00003093 store  0x00000001 , 0x00004172 
+ 00014803  0x00003094 branch  0x00003c1f 
+ 00014804  0x00003098 jam  0x00000000 , 0x00004661 
+ 00014805  0x00003099 call  0x00003cee 
+ 00014806  0x0000309a branch  0x00003cf2 
+ 00014807  0x0000309f call  0x00003a52 
+ 00014808  0x000030a0 branch  0x000039db 
+ 00014809  0x000030a4 call  0x00005cc9 
+ 00014810  0x000030a5 branch  0x00005b02 
+ 00014811  0x000030a9 fetcht  0x00000001 , 0x0000469e 
+ 00014812  0x000030aa branch  0x00006829 
+ 00014813  0x000030ad call  0x000039df 
+ 00014814  0x000030ae branch  0x000039e6 
+ 00014815  0x000030b1 fetch  0x00000001 , 0x000046a1 
+ 00014816  0x000030b2 isolate1  0x00000000 , 0x0000003f 
+ 00014817  0x000030b3 call  0x000033f0 , 0x00000001 
+ 00014818  0x000030b4 fetch  0x00000001 , 0x000046a1 
+ 00014819  0x000030b5 isolate1  0x00000001 , 0x0000003f 
+ 00014820  0x000030b6 call  0x000033f8 , 0x00000001 
+ 00014821  0x000030b7 rtn 
+ 00014822  0x000030b9 fetcht  0x00000001 , 0x0000469e 
+ 00014823  0x000030ba branch  0x00006825 
+ 00014824  0x000030bd fetch  0x00000001 , 0x0000456b 
+ 00014825  0x000030be rtneq  0x00000000 
+ 00014826  0x000030bf branch  0x00006c28 
+ 00014827  0x000030c2 hfetch  0x00000001 , 0x0000810c 
+ 00014828  0x000030c3 bbit1  0x00000003 , 0x000039e8 
+ 00014829  0x000030c4 call  0x000066cb 
+ 00014830  0x000030c5 ifetch  0x00000001 , 0x00000003 
+ 00014831  0x000030c6 bne  0x00000001 , 0x00003a01 
+ 00014832  0x000030c7 hfetch  0x00000002 , 0x00008112 
+ 00014833  0x000030c8 sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00014834  0x000030c9 rtn  0x00000002 
+ 00014835  0x000030ca ifetch  0x00000001 , 0x00000003 
+ 00014836  0x000030cb store  0x00000001 , 0x00000b03 
+ 00014837  0x000030cc ifetcht  0x00000001 , 0x00000003 
+ 00014838  0x000030cd copy  0x00000003 , 0x00000011 
+ 00014839  0x000030ce storet  0x00000001 , 0x00000b04 
+ 00014840  0x000030cf add  0x00000002 , 0x00000003 , 0x00000002 
+ 00014841  0x000030d0 hfetch  0x00000002 , 0x00008112 
+ 00014842  0x000030d1 isub  0x00000002 , 0x00000002 
+ 00014843  0x000030d2 nrtn  0x00000002 
+ 00014844  0x000030d3 jam  0x00000001 , 0x00000b05 
+ 00014845  0x000030d4 call  0x00003a17 
+ 00014846  0x000030d5 fetch  0x00000001 , 0x00000b05 
+ 00014847  0x000030d6 rtneq  0x00000000 
+ 00014848  0x000030d7 branch  0x00003a12 
+ 00014849  0x000030da call  0x00007ec1 
+ 00014850  0x000030db call  0x00003c79 
+ 00014851  0x000030dc branch  0x00003a04 
+ 00014852  0x000030e0 bpatch  0x000000df , 0x0000401b 
+ 00014853  0x000030e1 hfetch  0x00000002 , 0x00008112 
+ 00014854  0x000030e2 rtn  0x00000034 
+ 00014855  0x000030e3 call  0x000066cb 
+ 00014856  0x000030e4 ifetch  0x00000001 , 0x00000003 
+ 00014857  0x000030e5 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00014858  0x000030e6 ncall  0x00003a16 , 0x00000005 
+ 00014859  0x000030e7 nbranch  0x00003a04 , 0x00000005 
+ 00014860  0x000030e8 ifetch  0x00000001 , 0x00000003 
+ 00014861  0x000030e9 rtneq  0x00000005 
+ 00014862  0x000030ea rtneq  0x00000029 
+ 00014863  0x000030eb increase  0xffffffff , 0x00000003 
+ 00014864  0x000030ec call  0x00003a16 
+ 00014865  0x000030ed branch  0x00003a04 
+ 00014866  0x000030f0 call  0x000066cb 
+ 00014867  0x000030f1 increase  0x00000002 , 0x00000003 
+ 00014868  0x000030f2 ifetch  0x00000001 , 0x00000003 
+ 00014869  0x000030f3 iadd  0x00000003 , 0x00000003 
+ 00014870  0x000030f5 branch  0x000066c8 
+ 00014871  0x000030f9 bpatch  0x000000e0 , 0x0000401c 
+ 00014872  0x000030fa fetch  0x00000001 , 0x00000b03 
+ 00014873  0x000030fb beq  0x00000000 , 0x00003a3f 
+ 00014874  0x000030fc beq  0x00000001 , 0x00003a44 
+ 00014875  0x000030fd beq  0x00000002 , 0x00003a49 
+ 00014876  0x000030fe beq  0x00000003 , 0x00003a5f 
+ 00014877  0x000030ff beq  0x00000004 , 0x00003a6b 
+ 00014878  0x00003100 beq  0x00000005 , 0x00003a75 
+ 00014879  0x00003101 beq  0x00000009 , 0x00003a9a 
+ 00014880  0x00003102 beq  0x0000000b , 0x00003ad7 
+ 00014881  0x00003103 beq  0x0000000c , 0x00003ad8 
+ 00014882  0x00003104 beq  0x0000000d , 0x00003aec 
+ 00014883  0x00003105 beq  0x0000000e , 0x00003af4 
+ 00014884  0x00003106 beq  0x0000000f , 0x00003afa 
+ 00014885  0x00003107 beq  0x00000010 , 0x00003b06 
+ 00014886  0x00003108 beq  0x00000011 , 0x00003b0e 
+ 00014887  0x00003109 beq  0x00000012 , 0x00003b12 
+ 00014888  0x0000310a beq  0x00000026 , 0x00003b16 
+ 00014889  0x0000310b beq  0x00000028 , 0x00003b1d 
+ 00014890  0x0000310c beq  0x00000029 , 0x00003b2d 
+ 00014891  0x0000310d beq  0x0000002a , 0x00003b36 
+ 00014892  0x0000310e beq  0x0000002b , 0x00003b69 
+ 00014893  0x0000310f beq  0x0000002c , 0x00003b6f 
+ 00014894  0x00003110 beq  0x00000030 , 0x00003b76 
+ 00014895  0x00003111 beq  0x00000031 , 0x00003b7c 
+ 00014896  0x00003112 beq  0x00000032 , 0x00003b90 
+ 00014897  0x00003113 beq  0x00000033 , 0x00003b98 
+ 00014898  0x00003114 beq  0x00000034 , 0x00003bbb 
+ 00014899  0x00003115 beq  0x00000035 , 0x00003bc4 
+ 00014900  0x00003116 beq  0x00000036 , 0x00003bcd 
+ 00014901  0x00003117 beq  0x00000037 , 0x00003bd7 
+ 00014902  0x00003118 beq  0x00000038 , 0x00003bda 
+ 00014903  0x00003119 beq  0x00000040 , 0x00003be2 
+ 00014904  0x0000311a beq  0x00000042 , 0x00003bec 
+ 00014905  0x0000311b beq  0x00000048 , 0x00003bf1 
+ 00014906  0x0000311c beq  0x00000049 , 0x00003bfc 
+ 00014907  0x0000311d beq  0x00000051 , 0x00003c02 
+ 00014908  0x0000311e beq  0x00000061 , 0x00003c06 
+ 00014909  0x0000311f beq  0x000000ff , 0x00003c15 
+ 00014910  0x00003120 branch  0x00003c17 
+ 00014911  0x00003126 fetch  0x00000001 , 0x00000b04 
+ 00014912  0x00003127 bne  0x00000006 , 0x00003c17 
+ 00014913  0x00003128 ifetch  0x00000006 , 0x00000003 
+ 00014914  0x00003129 store  0x00000006 , 0x000040a0 
+ 00014915  0x0000312a branch  0x00003c1a 
+ 00014916  0x0000312e fetch  0x00000001 , 0x00000b04 
+ 00014917  0x0000312f bne  0x00000006 , 0x00003c17 
+ 00014918  0x00003130 ifetch  0x00000006 , 0x00000003 
+ 00014919  0x00003131 store  0x00000006 , 0x000044a0 
+ 00014920  0x00003132 branch  0x00003c1a 
+ 00014921  0x00003137 fetch  0x00000001 , 0x00000b04 
+ 00014922  0x00003138 bne  0x00000001 , 0x00003c17 
+ 00014923  0x00003139 copy  0x00000011 , 0x00000003 
+ 00014924  0x0000313a call  0x00003c1a 
+ 00014925  0x0000313b ifetcht  0x00000001 , 0x00000003 
+ 00014926  0x0000313c storet  0x00000001 , 0x000046a9 
+ 00014927  0x0000313d fetch  0x00000002 , 0x00004682 
+ 00014928  0x0000313e rtnbit1  0x00000009 
+ 00014929  0x0000313f rtnbit1  0x00000000 
+ 00014930  0x00003141 fetch  0x00000001 , 0x000046a1 
+ 00014931  0x00003142 isolate1  0x00000000 , 0x0000003f 
+ 00014932  0x00003143 nbranch  0x00003a58 , 0x00000001 
+ 00014933  0x00003144 fetcht  0x00000001 , 0x000046a9 
+ 00014934  0x00003145 and  0x00000002 , 0x00000003 , 0x0000003f 
+ 00014935  0x00003146 store  0x00000001 , 0x00004093 
+ 00014936  0x00003148 fetch  0x00000001 , 0x000046a1 
+ 00014937  0x00003149 isolate1  0x00000001 , 0x0000003f 
+ 00014938  0x0000314a nrtn  0x00000001 
+ 00014939  0x0000314b fetcht  0x00000001 , 0x000046a9 
+ 00014940  0x0000314c isolate1  0x00000002 , 0x00000002 
+ 00014941  0x0000314d branch  0x000033fa , 0x00000001 
+ 00014942  0x0000314e branch  0x000033f8 
+ 00014943  0x00003153 fetch  0x00000001 , 0x00000b04 
+ 00014944  0x00003154 sub  0x0000003f , 0x00000043 , 0x0000003e 
+ 00014945  0x00003155 nbranch  0x00003c17 , 0x00000002 
+ 00014946  0x00003156 store  0x00000001 , 0x00004515 
+ 00014947  0x00003157 arg  0x00000008 , 0x00000039 
+ 00014948  0x00003158 call  0x00007ec6 
+ 00014949  0x00003159 fetch  0x00000001 , 0x00000b04 
+ 00014950  0x0000315a copy  0x0000003f , 0x00000039 
+ 00014951  0x0000315b copy  0x00000011 , 0x00000003 
+ 00014952  0x0000315c arg  0x00004516 , 0x00000005 
+ 00014953  0x0000315d call  0x000066ea 
+ 00014954  0x0000315e branch  0x00003c1a 
+ 00014955  0x00003163 fetch  0x00000001 , 0x00000b04 
+ 00014956  0x00003164 sub  0x0000003f , 0x0000001d , 0x0000003e 
+ 00014957  0x00003165 nbranch  0x00003c17 , 0x00000002 
+ 00014958  0x00003166 store  0x00000001 , 0x000043af 
+ 00014959  0x00003167 copy  0x0000003f , 0x00000039 
+ 00014960  0x00003168 copy  0x00000011 , 0x00000003 
+ 00014961  0x00003169 arg  0x000043b0 , 0x00000005 
+ 00014962  0x0000316a call  0x000066ea 
+ 00014963  0x0000316b call  0x000057a3 
+ 00014964  0x0000316c branch  0x00003c1a 
+ 00014965  0x00003171 fetch  0x00000001 , 0x00004682 
+ 00014966  0x00003172 bbit0  0x00000004 , 0x00003c17 
+ 00014967  0x00003173 call  0x000033ba 
+ 00014968  0x00003174 branch  0x00003a86 , 0x00000001 
+ 00014969  0x00003175 jam  0x00000000 , 0x00000b05 
+ 00014970  0x00003177 call  0x0000397f 
+ 00014971  0x00003178 fetch  0x00000001 , 0x00004568 
+ 00014972  0x00003179 rtn  0x00000034 
+ 00014973  0x0000317a fetch  0x00000002 , 0x00004573 
+ 00014974  0x0000317b bne  0x00000000 , 0x00003a84 
+ 00014975  0x0000317c fetch  0x00000001 , 0x00000b04 
+ 00014976  0x0000317d store  0x00000002 , 0x00004573 
+ 00014977  0x0000317f copy  0x00000011 , 0x00000003 
+ 00014978  0x00003182 copy  0x00000003 , 0x0000003f 
+ 00014979  0x00003183 store  0x00000002 , 0x00004571 
+ 00014980  0x00003185 call  0x00003a88 
+ 00014981  0x00003186 branch  0x00006c4d 
+ 00014982  0x00003189 jam  0x00000000 , 0x00000b05 
+ 00014983  0x0000318a branch  0x00003cd1 
+ 00014984  0x0000318d call  0x00003a8e 
+ 00014985  0x0000318e fetch  0x00000002 , 0x00004573 
+ 00014986  0x0000318f fetcht  0x00000002 , 0x0000469f 
+ 00014987  0x00003190 isub  0x00000002 , 0x0000003f 
+ 00014988  0x00003191 store  0x00000002 , 0x00004573 
+ 00014989  0x00003192 rtn 
+ 00014990  0x00003195 fetch  0x00000002 , 0x00004573 
+ 00014991  0x00003196 arg  0x0000006e , 0x00000002 
+ 00014992  0x00003197 call  0x00007fdd 
+ 00014993  0x00003198 fetcht  0x00000002 , 0x0000456c 
+ 00014994  0x00003199 call  0x00007fdd 
+ 00014995  0x0000319a fetcht  0x00000002 , 0x0000455e 
+ 00014996  0x0000319b call  0x00007fdd 
+ 00014997  0x0000319c store  0x00000002 , 0x0000469f 
+ 00014998  0x0000319d rtn 
+ 00014999  0x000031a0 jam  0x00000001 , 0x00000b05 
+ 00015000  0x000031a1 jam  0x00000005 , 0x00000b03 
+ 00015001  0x000031a2 branch  0x00003c1a 
+ 00015002  0x000031a7 fetch  0x00000002 , 0x00004682 
+ 00015003  0x000031a8 bbit0  0x00000009 , 0x00003c17 
+ 00015004  0x000031a9 call  0x00003ad4 
+ 00015005  0x000031aa branch  0x00003c17 , 0x00000028 
+ 00015006  0x000031ab jam  0x00000000 , 0x00000b05 
+ 00015007  0x000031ac fetch  0x00000001 , 0x000046bf 
+ 00015008  0x000031ad bbit1  0x00000004 , 0x00003ab4 
+ 00015009  0x000031ae fetch  0x00000001 , 0x000046c0 
+ 00015010  0x000031af nrtn  0x00000034 
+ 00015011  0x000031b0 jam  0x00000001 , 0x00000b05 
+ 00015012  0x000031b1 ifetch  0x00000002 , 0x00000003 
+ 00015013  0x000031b2 store  0x00000002 , 0x000046c1 
+ 00015014  0x000031b3 copy  0x00000003 , 0x0000003f 
+ 00015015  0x000031b4 store  0x00000002 , 0x000046c3 
+ 00015016  0x000031b5 fetch  0x00000001 , 0x00000b04 
+ 00015017  0x000031b6 pincrease  0xfffffffe 
+ 00015018  0x000031b7 nbranch  0x00003c17 , 0x00000002 
+ 00015019  0x000031b8 branch  0x00003c17 , 0x00000005 
+ 00015020  0x000031b9 store  0x00000001 , 0x000046c0 
+ 00015021  0x000031ba jam  0x00000000 , 0x00000b05 
+ 00015022  0x000031bb call  0x00005814 
+ 00015023  0x000031bc call  0x00003ab7 
+ 00015024  0x000031bd call  0x00003ab7 
+ 00015025  0x000031be call  0x00003ab7 
+ 00015026  0x000031bf fetch  0x00000001 , 0x000046bf 
+ 00015027  0x000031c0 rtnbit0  0x00000004 
+ 00015028  0x000031c2 jam  0x00000001 , 0x00000b05 
+ 00015029  0x000031c3 call  0x00003cf6 
+ 00015030  0x000031c4 branch  0x00003c1a 
+ 00015031  0x000031c7 fetch  0x00000001 , 0x000046c0 
+ 00015032  0x000031c8 rtn  0x00000034 
+ 00015033  0x000031c9 call  0x00005892 
+ 00015034  0x000031ca nrtn  0x00000034 
+ 00015035  0x000031cb call  0x00003acf 
+ 00015036  0x000031cc bpatch  0x000000e1 , 0x0000401c 
+ 00015037  0x000031cd add  0x00000002 , 0xfffffffd , 0x0000003f 
+ 00015038  0x000031ce fetcht  0x00000001 , 0x000046c0 
+ 00015039  0x000031cf call  0x00007fdd 
+ 00015040  0x000031d0 copy  0x0000003f , 0x00000011 
+ 00015041  0x000031d1 copy  0x00000002 , 0x0000003f 
+ 00015042  0x000031d2 isub  0x00000011 , 0x0000003f 
+ 00015043  0x000031d3 store  0x00000001 , 0x000046c0 
+ 00015044  0x000031d4 fetcht  0x00000002 , 0x000046c1 
+ 00015045  0x000031d5 call  0x00005a64 
+ 00015046  0x000031d6 fetch  0x00000002 , 0x000046c3 
+ 00015047  0x000031d7 copy  0x0000003f , 0x00000003 
+ 00015048  0x000031d8 copy  0x00000011 , 0x00000039 
+ 00015049  0x000031d9 call  0x000066ea 
+ 00015050  0x000031da copy  0x00000003 , 0x0000003f 
+ 00015051  0x000031db store  0x00000002 , 0x000046c3 
+ 00015052  0x000031dc fetch  0x00000001 , 0x000046c0 
+ 00015053  0x000031dd nrtn  0x00000034 
+ 00015054  0x000031de branch  0x00003cf4 
+ 00015055  0x000031e3 arg  0x00000017 , 0x00000002 
+ 00015056  0x000031e4 fetch  0x00000001 , 0x000046bf 
+ 00015057  0x000031e5 rtnbit1  0x00000001 
+ 00015058  0x000031e6 fetcht  0x00000002 , 0x000044a8 
+ 00015059  0x000031e7 rtn 
+ 00015060  0x000031ea fetch  0x00000001 , 0x000046bf 
+ 00015061  0x000031eb bbit1  0x00000002 , 0x00005a42 
+ 00015062  0x000031ec branch  0x00007fe9 
+ 00015063  0x000031f1 branch  0x00003c4c 
+ 00015064  0x000031f6 copy  0x00000011 , 0x00000003 
+ 00015065  0x000031f7 ifetch  0x00000001 , 0x00000003 
+ 00015066  0x000031f8 beq  0x00000000 , 0x00003adf 
+ 00015067  0x000031f9 beq  0x00000001 , 0x00003ae2 
+ 00015068  0x000031fa beq  0x00000002 , 0x00003ae8 
+ 00015069  0x000031fb beq  0x00000003 , 0x00003aea 
+ 00015070  0x000031fc branch  0x00003c17 
+ 00015071  0x000031fe call  0x0000612b 
+ 00015072  0x000031ff jam  0x00000000 , 0x0000465a 
+ 00015073  0x00003200 branch  0x00003c1a 
+ 00015074  0x00003202 setarg  0x00040003 
+ 00015075  0x00003204 store  0x00000003 , 0x0000465b 
+ 00015076  0x00003205 store  0x00000001 , 0x00004662 
+ 00015077  0x00003206 call  0x00006124 
+ 00015078  0x00003207 jam  0x00000001 , 0x0000465a 
+ 00015079  0x00003208 branch  0x00003c1a 
+ 00015080  0x0000320a setarg  0x00040002 
+ 00015081  0x0000320b branch  0x00003ae3 
+ 00015082  0x0000320e setarg  0x00040001 
+ 00015083  0x0000320f branch  0x00003ae3 
+ 00015084  0x00003213 fetch  0x00000001 , 0x00000b04 
+ 00015085  0x00003214 sub  0x0000003f , 0x00000010 , 0x0000003e 
+ 00015086  0x00003215 nbranch  0x00003c17 , 0x00000002 
+ 00015087  0x00003216 store  0x00000001 , 0x00004689 
+ 00015088  0x00003217 copy  0x0000003f , 0x00000039 
+ 00015089  0x00003218 arg  0x0000468a , 0x00000005 
+ 00015090  0x00003219 call  0x000066fd 
+ 00015091  0x0000321a branch  0x00003c1a 
+ 00015092  0x0000321f copy  0x00000011 , 0x00000003 
+ 00015093  0x00003220 ifetch  0x00000001 , 0x00000003 
+ 00015094  0x00003221 hfetcht  0x00000001 , 0x00008062 
+ 00015095  0x00003222 nsetflag  0x00000034 , 0x00000004 , 0x00000002 
+ 00015096  0x00003223 hstoret  0x00000001 , 0x00008062 
+ 00015097  0x00003224 branch  0x00003c1a 
+ 00015098  0x00003229 fetch  0x00000001 , 0x00000b04 
+ 00015099  0x0000322a copy  0x0000003f , 0x00000039 
+ 00015100  0x0000322b copy  0x00000011 , 0x00000003 
+ 00015101  0x0000322c call  0x00007f58 
+ 00015102  0x0000322d setarg  0x016e3600 
+ 00015103  0x0000322e idiv  0x00000002 
+ 00015104  0x0000322f call  0x00007f86 
+ 00015105  0x00003230 quotient  0x0000003f 
+ 00015106  0x00003232 store  0x00000002 , 0x00004243 
+ 00015107  0x00003233 call  0x00003c1a 
+ 00015108  0x00003234 call  0x00007f9e 
+ 00015109  0x00003235 branch  0x000066ce 
+ 00015110  0x0000323a arg  0x00000002 , 0x00000011 
+ 00015111  0x0000323b arg  0x0000469a , 0x00000012 
+ 00015112  0x0000323c arg  0x00000000 , 0x00000002 
+ 00015113  0x0000323d branch  0x00003c25 
+ 00015114  0x0000323f store  0x00000002 , 0x00000ac2 
+ 00015115  0x00003240 arg  0x00000ac2 , 0x00000012 
+ 00015116  0x00003241 arg  0x00000000 , 0x00000002 
+ 00015117  0x00003242 branch  0x00003c25 
+ 00015118  0x00003247 fetch  0x00000002 , 0x00004682 
+ 00015119  0x00003248 bbit0  0x00000000 , 0x00003c17 
+ 00015120  0x0000324a call  0x00003c1a 
+ 00015121  0x0000324b branch  0x000033e9 
+ 00015122  0x00003250 fetch  0x00000002 , 0x00004682 
+ 00015123  0x00003251 bbit0  0x00000009 , 0x00003c17 
+ 00015124  0x00003253 call  0x00003c1a 
+ 00015125  0x00003254 branch  0x00003402 
+ 00015126  0x0000325b fetch  0x00000001 , 0x00000b04 
+ 00015127  0x0000325c copy  0x0000003f , 0x00000039 
+ 00015128  0x0000325d copy  0x00000011 , 0x00000003 
+ 00015129  0x0000325e fetch  0x00000002 , 0x00004215 
+ 00015130  0x0000325f icopy  0x00000005 
+ 00015131  0x00003260 call  0x000066ea 
+ 00015132  0x00003261 branch  0x00003c1a 
+ 00015133  0x00003266 fetch  0x00000001 , 0x00004682 
+ 00015134  0x00003267 bbit0  0x00000000 , 0x00003c17 
+ 00015135  0x00003268 ifetch  0x00000001 , 0x00000003 
+ 00015136  0x00003269 fetcht  0x00000001 , 0x00004661 
+ 00015137  0x0000326a setflag  0x00000034 , 0x00000000 , 0x00000002 
+ 00015138  0x0000326b set1  0x00000007 , 0x00000002 
+ 00015139  0x0000326c storet  0x00000001 , 0x00004661 
+ 00015140  0x0000326e call  0x00003c1a 
+ 00015141  0x00003270 fetch  0x00000001 , 0x00004661 
+ 00015142  0x00003271 bbit1  0x00000006 , 0x00003b2b 
+ 00015143  0x00003272 rtn 
+ 00015144  0x00003275 jam  0x00000000 , 0x00004661 
+ 00015145  0x00003276 jam  0x00000021 , 0x00000a99 
+ 00015146  0x00003277 branch  0x00007d8f 
+ 00015147  0x0000327b bbit1  0x00000000 , 0x00005f95 
+ 00015148  0x0000327c branch  0x00003b28 
+ 00015149  0x00003281 fetch  0x00000001 , 0x00004682 
+ 00015150  0x00003282 rtnbit0  0x00000004 
+ 00015151  0x00003283 fetch  0x00000001 , 0x0000456b 
+ 00015152  0x00003284 rtneq  0x00000000 
+ 00015153  0x00003285 ifetch  0x00000001 , 0x00000003 
+ 00015154  0x00003286 fetcht  0x00000001 , 0x00004569 
+ 00015155  0x00003287 iadd  0x00000002 , 0x00000002 
+ 00015156  0x00003288 storet  0x00000001 , 0x00004569 
+ 00015157  0x00003289 rtn 
+ 00015158  0x0000328e arg  0x00000040 , 0x00000039 
+ 00015159  0x0000328f arg  0x0000436f , 0x00000005 
+ 00015160  0x00003290 call  0x00007ed4 
+ 00015161  0x00003291 setarg  0x00000000 
+ 00015162  0x00003292 store  0x00000001 , 0x00000ab2 
+ 00015163  0x00003293 copy  0x00000011 , 0x00000003 
+ 00015164  0x00003295 copy  0x00000003 , 0x0000003f 
+ 00015165  0x00003296 store  0x00000002 , 0x00000ab6 
+ 00015166  0x00003297 call  0x00003b64 
+ 00015167  0x00003299 fetch  0x00000001 , 0x00000ab2 
+ 00015168  0x0000329a fetcht  0x00000001 , 0x00000aa2 
+ 00015169  0x0000329b increase  0x00000001 , 0x00000002 
+ 00015170  0x0000329c iadd  0x00000002 , 0x0000003f 
+ 00015171  0x0000329d store  0x00000001 , 0x00000ab2 
+ 00015172  0x0000329f sub  0x0000003f , 0x0000001f , 0x0000003e 
+ 00015173  0x000032a0 nbranch  0x00003b50 , 0x00000002 
+ 00015174  0x000032a2 fetcht  0x00000001 , 0x0000436f 
+ 00015175  0x000032a3 setarg  0x00004370 
+ 00015176  0x000032a4 iadd  0x00000002 , 0x0000003f 
+ 00015177  0x000032a5 store  0x00000002 , 0x00000abb 
+ 00015178  0x000032a6 fetcht  0x00000001 , 0x00000aa2 
+ 00015179  0x000032a7 increase  0x00000001 , 0x00000002 
+ 00015180  0x000032a8 fetch  0x00000001 , 0x0000436f 
+ 00015181  0x000032a9 iadd  0x00000002 , 0x0000003f 
+ 00015182  0x000032aa store  0x00000001 , 0x0000436f 
+ 00015183  0x000032ab branch  0x00003b59 
+ 00015184  0x000032ad fetcht  0x00000001 , 0x0000438f 
+ 00015185  0x000032ae setarg  0x00004390 
+ 00015186  0x000032af iadd  0x00000002 , 0x0000003f 
+ 00015187  0x000032b0 store  0x00000002 , 0x00000abb 
+ 00015188  0x000032b1 fetcht  0x00000001 , 0x00000aa2 
+ 00015189  0x000032b2 increase  0x00000001 , 0x00000002 
+ 00015190  0x000032b3 fetch  0x00000001 , 0x0000438f 
+ 00015191  0x000032b4 iadd  0x00000002 , 0x0000003f 
+ 00015192  0x000032b5 store  0x00000001 , 0x0000438f 
+ 00015193  0x000032b7 fetch  0x00000002 , 0x00000abb 
+ 00015194  0x000032b8 copy  0x0000003f , 0x00000005 
+ 00015195  0x000032b9 fetch  0x00000002 , 0x00000ab6 
+ 00015196  0x000032ba copy  0x0000003f , 0x00000003 
+ 00015197  0x000032bc copy  0x00000002 , 0x00000039 
+ 00015198  0x000032bd call  0x000066ea 
+ 00015199  0x000032bf fetch  0x00000001 , 0x00000b04 
+ 00015200  0x000032c0 fetcht  0x00000001 , 0x00000ab2 
+ 00015201  0x000032c1 isub  0x00000002 , 0x0000003e 
+ 00015202  0x000032c2 nbranch  0x00003b3c , 0x00000005 
+ 00015203  0x000032c3 branch  0x00003c1a 
+ 00015204  0x000032c7 ifetch  0x00000001 , 0x00000003 
+ 00015205  0x000032c8 store  0x00000001 , 0x00000aa2 
+ 00015206  0x000032c9 ifetch  0x00000001 , 0x00000003 
+ 00015207  0x000032ca store  0x00000001 , 0x00000aae 
+ 00015208  0x000032cb rtn 
+ 00015209  0x000032d0 arg  0x00000000 , 0x00000002 
+ 00015210  0x000032d1 arg  0x00000002 , 0x00000011 
+ 00015211  0x000032d2 fetch  0x00000002 , 0x000046b4 
+ 00015212  0x000032d3 store  0x00000002 , 0x00000ac2 
+ 00015213  0x000032d4 arg  0x00000ac2 , 0x00000012 
+ 00015214  0x000032d5 branch  0x00003c25 
+ 00015215  0x000032da fetch  0x00000001 , 0x00000b04 
+ 00015216  0x000032db bne  0x00000001 , 0x00003c17 
+ 00015217  0x000032dc ifetch  0x00000001 , 0x00000003 
+ 00015218  0x000032dd store  0x00000001 , 0x000046b2 
+ 00015219  0x000032de setarg  0x00000000 
+ 00015220  0x000032df store  0x00000002 , 0x000046b4 
+ 00015221  0x000032e0 branch  0x00003c1a 
+ 00015222  0x000032e5 ifetch  0x00000004 , 0x00000003 
+ 00015223  0x000032e6 store  0x00000004 , 0x0000468a 
+ 00015224  0x000032e7 jam  0x00000004 , 0x00004689 
+ 00015225  0x000032e8 jam  0x00000000 , 0x00004663 
+ 00015226  0x000032e9 call  0x00003c1a 
+ 00015227  0x000032ea branch  0x00005f31 
+ 00015228  0x000032ef fetch  0x00000001 , 0x00000b04 
+ 00015229  0x000032f0 bne  0x00000003 , 0x00003c17 
+ 00015230  0x000032f1 ifetch  0x00000001 , 0x00000003 
+ 00015231  0x000032f2 beq  0x00000000 , 0x00003b82 
+ 00015232  0x000032f3 beq  0x00000001 , 0x00003b8a 
+ 00015233  0x000032f4 branch  0x00003c17 
+ 00015234  0x000032f7 ifetcht  0x00000001 , 0x00000003 
+ 00015235  0x000032f8 ifetch  0x00000001 , 0x00000003 
+ 00015236  0x000032f9 beq  0x00000002 , 0x00003b88 
+ 00015237  0x000032fa nsetflag  0x00000034 , 0x00000007 , 0x00000002 
+ 00015238  0x000032fb call  0x000067fb 
+ 00015239  0x000032fc branch  0x00003c1a 
+ 00015240  0x000032ff call  0x00006806 
+ 00015241  0x00003300 branch  0x00003c1a 
+ 00015242  0x00003303 ifetcht  0x00000001 , 0x00000003 
+ 00015243  0x00003304 call  0x00006812 
+ 00015244  0x00003305 ifetch  0x00000001 , 0x00000003 
+ 00015245  0x00003306 isolate1  0x00000000 , 0x0000003f 
+ 00015246  0x00003307 call  0x0000682c 
+ 00015247  0x00003308 branch  0x00003c1a 
+ 00015248  0x0000330d fetch  0x00000001 , 0x00000b04 
+ 00015249  0x0000330e bne  0x00000001 , 0x00003c17 
+ 00015250  0x0000330f ifetcht  0x00000001 , 0x00000003 
+ 00015251  0x00003310 call  0x0000681d 
+ 00015252  0x00003311 setarg  0x00000000 
+ 00015253  0x00003312 nsetflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00015254  0x00003313 arg  0x00000001 , 0x00000011 
+ 00015255  0x00003314 branch  0x00003b0a 
+ 00015256  0x00003319 copy  0x00000011 , 0x00000003 
+ 00015257  0x0000331a ifetch  0x00000001 , 0x00000003 
+ 00015258  0x0000331b copy  0x0000003f , 0x00000002 
+ 00015259  0x0000331c beq  0x00000081 , 0x00003ba3 
+ 00015260  0x0000331d beq  0x00000082 , 0x00003ba8 
+ 00015261  0x0000331e beq  0x00000083 , 0x00003bae 
+ 00015262  0x0000331f store  0x00000001 , 0x000044c6 
+ 00015263  0x00003320 beq  0x00000000 , 0x00003bb3 
+ 00015264  0x00003321 beq  0x00000001 , 0x00003bb6 
+ 00015265  0x00003322 beq  0x00000002 , 0x00003bb8 
+ 00015266  0x00003323 branch  0x00003c17 
+ 00015267  0x00003326 fetch  0x00000001 , 0x000044be 
+ 00015268  0x00003327 branch  0x00003c17 , 0x00000034 
+ 00015269  0x00003328 storet  0x00000001 , 0x000044c6 
+ 00015270  0x00003329 jam  0x0000000d , 0x00004456 
+ 00015271  0x0000332a branch  0x00003bb4 
+ 00015272  0x0000332c fetch  0x00000001 , 0x000044be 
+ 00015273  0x0000332d branch  0x00003c17 , 0x00000034 
+ 00015274  0x0000332e storet  0x00000001 , 0x000044c6 
+ 00015275  0x0000332f jam  0x0000000d , 0x00004456 
+ 00015276  0x00003330 jam  0x00000001 , 0x00004454 
+ 00015277  0x00003331 branch  0x00003c1a 
+ 00015278  0x00003333 fetch  0x00000001 , 0x000044be 
+ 00015279  0x00003334 branch  0x00003c17 , 0x00000034 
+ 00015280  0x00003335 storet  0x00000001 , 0x000044c6 
+ 00015281  0x00003336 jam  0x0000000d , 0x00004456 
+ 00015282  0x00003337 branch  0x00003bb9 
+ 00015283  0x00003339 jam  0x00000000 , 0x00004456 
+ 00015284  0x0000333b jam  0x00000003 , 0x00004454 
+ 00015285  0x0000333c branch  0x00003c1a 
+ 00015286  0x0000333e jam  0x00000005 , 0x00004456 
+ 00015287  0x0000333f branch  0x00003bb4 
+ 00015288  0x00003341 jam  0x00000005 , 0x00004456 
+ 00015289  0x00003343 jam  0x00000000 , 0x00004454 
+ 00015290  0x00003344 branch  0x00003c1a 
+ 00015291  0x00003349 fetch  0x00000001 , 0x00000b04 
+ 00015292  0x0000334a sub  0x0000003f , 0x0000001f , 0x0000003e 
+ 00015293  0x0000334b nbranch  0x00003c17 , 0x00000002 
+ 00015294  0x0000334c store  0x00000001 , 0x0000436f 
+ 00015295  0x0000334d copy  0x0000003f , 0x00000039 
+ 00015296  0x0000334e copy  0x00000011 , 0x00000003 
+ 00015297  0x0000334f arg  0x00004370 , 0x00000005 
+ 00015298  0x00003350 call  0x000066ea 
+ 00015299  0x00003351 branch  0x00003c1a 
+ 00015300  0x00003356 fetch  0x00000001 , 0x00000b04 
+ 00015301  0x00003357 sub  0x0000003f , 0x0000001f , 0x0000003e 
+ 00015302  0x00003358 nbranch  0x00003c17 , 0x00000002 
+ 00015303  0x00003359 store  0x00000001 , 0x0000438f 
+ 00015304  0x0000335a copy  0x0000003f , 0x00000039 
+ 00015305  0x0000335b copy  0x00000011 , 0x00000003 
+ 00015306  0x0000335c arg  0x00004390 , 0x00000005 
+ 00015307  0x0000335d call  0x000066ea 
+ 00015308  0x0000335e branch  0x00003c1a 
+ 00015309  0x00003363 fetch  0x00000002 , 0x00004682 
+ 00015310  0x00003364 bbit0  0x00000009 , 0x00003c17 
+ 00015311  0x00003365 fetch  0x00000001 , 0x00000b04 
+ 00015312  0x00003366 bne  0x00000008 , 0x00003c17 
+ 00015313  0x00003367 copy  0x00000011 , 0x00000003 
+ 00015314  0x00003368 ifetch  0x00000008 , 0x00000003 
+ 00015315  0x00003369 store  0x00000008 , 0x00004496 
+ 00015316  0x0000336a jam  0x00000012 , 0x00000a99 
+ 00015317  0x0000336b call  0x00007d8f 
+ 00015318  0x0000336c branch  0x00003c1a 
+ 00015319  0x00003371 ifetch  0x00000002 , 0x00000003 
+ 00015320  0x00003372 store  0x00000002 , 0x00004482 
+ 00015321  0x00003373 branch  0x00003c1a 
+ 00015322  0x00003378 fetch  0x00000001 , 0x000044c6 
+ 00015323  0x00003379 branch  0x00003c17 , 0x00000034 
+ 00015324  0x0000337a fetch  0x00000001 , 0x000044c4 
+ 00015325  0x0000337b bne  0x00000000 , 0x00003c17 
+ 00015326  0x0000337c fetch  0x00000001 , 0x000044c5 
+ 00015327  0x0000337d bne  0x00000000 , 0x00003c17 
+ 00015328  0x0000337e call  0x00007e25 
+ 00015329  0x0000337f branch  0x00003c1a 
+ 00015330  0x00003384 fetch  0x00000001 , 0x00000b04 
+ 00015331  0x00003385 bne  0x00000005 , 0x00003c17 
+ 00015332  0x00003386 ifetch  0x00000001 , 0x00000003 
+ 00015333  0x00003387 store  0x00000001 , 0x000046a2 
+ 00015334  0x00003388 ifetch  0x00000004 , 0x00000003 
+ 00015335  0x00003389 store  0x00000004 , 0x000046a3 
+ 00015336  0x0000338a fetcht  0x00000001 , 0x000046a2 
+ 00015337  0x0000338b call  0x0000680e 
+ 00015338  0x0000338c call  0x00003cbc 
+ 00015339  0x0000338d branch  0x00003c1a 
+ 00015340  0x00003392 fetch  0x00000001 , 0x00000b04 
+ 00015341  0x00003393 bne  0x00000001 , 0x00003c17 
+ 00015342  0x00003394 ifetch  0x00000001 , 0x00000003 
+ 00015343  0x00003395 store  0x00000001 , 0x000041de 
+ 00015344  0x00003396 branch  0x00003c1a 
+ 00015345  0x0000339b ifetch  0x00000001 , 0x00000003 
+ 00015346  0x0000339c beq  0x00000001 , 0x00003bfa 
+ 00015347  0x0000339d fetch  0x00000001 , 0x000044c1 
+ 00015348  0x0000339e beq  0x00000003 , 0x00003bf8 
+ 00015349  0x0000339f beq  0x00000006 , 0x00003bf8 
+ 00015350  0x000033a0 beq  0x00000007 , 0x00003bf8 
+ 00015351  0x000033a1 branch  0x00003c17 
+ 00015352  0x000033a3 jam  0x00000001 , 0x000044c2 
+ 00015353  0x000033a4 branch  0x00003c1a 
+ 00015354  0x000033a7 call  0x00005b53 
+ 00015355  0x000033a8 branch  0x00003c1a 
+ 00015356  0x000033ad fetch  0x00000001 , 0x00000b04 
+ 00015357  0x000033ae bne  0x00000001 , 0x00003c17 
+ 00015358  0x000033af call  0x00003c1a 
+ 00015359  0x000033b0 ifetch  0x00000001 , 0x00000003 
+ 00015360  0x000033b1 branch  0x000060cb , 0x00000034 
+ 00015361  0x000033b2 branch  0x000060c9 
+ 00015362  0x000033b7 call  0x00003c1a 
+ 00015363  0x000033b8 call  0x00007f9e 
+ 00015364  0x000033b9 jam  0x00000001 , 0x00008010 
+ 00015365  0x000033ba branch  0x00002a8e 
+ 00015366  0x000033bf fetch  0x00000001 , 0x00000b04 
+ 00015367  0x000033c0 beq  0x00000000 , 0x00003c17 
+ 00015368  0x000033c1 ifetch  0x00000001 , 0x00000003 
+ 00015369  0x000033c2 branch  0x00003c13 , 0x00000034 
+ 00015370  0x000033c3 fetch  0x00000001 , 0x00000b04 
+ 00015371  0x000033c4 bne  0x00000005 , 0x00003c17 
+ 00015372  0x000033c5 ifetch  0x00000004 , 0x00000003 
+ 00015373  0x000033c6 arg  0x000f4240 , 0x00000002 
+ 00015374  0x000033c7 isub  0x00000002 , 0x0000003e 
+ 00015375  0x000033c8 branch  0x00003c17 , 0x00000002 
+ 00015376  0x000033c9 store  0x00000004 , 0x000044c7 
+ 00015377  0x000033ca call  0x0000580c 
+ 00015378  0x000033cb branch  0x00003c1a 
+ 00015379  0x000033ce call  0x0000580e 
+ 00015380  0x000033cf branch  0x00003c1a 
+ 00015381  0x000033d4 jam  0x00000000 , 0x00004091 
+ 00015382  0x000033d5 branch  0x00003c1a 
+ 00015383  0x000033db arg  0x00000001 , 0x00000002 
+ 00015384  0x000033dc arg  0x00000000 , 0x00000011 
+ 00015385  0x000033dd branch  0x00003c25 
+ 00015386  0x000033e1 arg  0x00000000 , 0x00000002 
+ 00015387  0x000033e2 arg  0x00000000 , 0x00000011 
+ 00015388  0x000033e3 branch  0x00003c25 
+ 00015389  0x000033e8 jam  0x00000000 , 0x00000b03 
+ 00015390  0x000033e9 branch  0x00003c49 
+ 00015391  0x000033ee jam  0x00000002 , 0x00000b03 
+ 00015392  0x000033ef branch  0x00003c49 
+ 00015393  0x000033f4 jam  0x00000003 , 0x00000b03 
+ 00015394  0x000033f5 branch  0x00003c49 
+ 00015395  0x000033fa jam  0x00000005 , 0x00000b03 
+ 00015396  0x000033fb branch  0x00003c49 
+ 00015397  0x00003404 fetch  0x00000001 , 0x00000b03 
+ 00015398  0x00003405 copy  0x0000003f , 0x00000013 
+ 00015399  0x00003406 jam  0x00000006 , 0x00000b03 
+ 00015400  0x00003407 setarg  0x00000002 
+ 00015401  0x00003408 iadd  0x00000011 , 0x0000003f 
+ 00015402  0x00003409 call  0x00003ca7 
+ 00015403  0x0000340a copy  0x00000013 , 0x0000003f 
+ 00015404  0x0000340b istore  0x00000001 , 0x0000000a 
+ 00015405  0x0000340c istoret  0x00000001 , 0x0000000a 
+ 00015406  0x0000340d copy  0x00000011 , 0x00000039 
+ 00015407  0x0000340e copy  0x00000012 , 0x00000006 
+ 00015408  0x0000340f call  0x000066e4 
+ 00015409  0x00003410 branch  0x000066c5 
+ 00015410  0x00003416 call  0x0000397f 
+ 00015411  0x00003417 jam  0x00000007 , 0x00000b03 
+ 00015412  0x00003418 fetch  0x00000001 , 0x000004ff 
+ 00015413  0x00003419 rtn  0x00000034 
+ 00015414  0x0000341a call  0x00003ca7 
+ 00015415  0x0000341b fetch  0x00000001 , 0x000004ff 
+ 00015416  0x0000341c copy  0x0000003f , 0x00000039 
+ 00015417  0x0000341d fetch  0x00000002 , 0x00000501 
+ 00015418  0x0000341e copy  0x0000003f , 0x00000006 
+ 00015419  0x0000341f call  0x000066d1 
+ 00015420  0x00003420 branch  0x000066c5 
+ 00015421  0x00003425 jam  0x00000008 , 0x00000b03 
+ 00015422  0x00003426 fetch  0x00000001 , 0x000046b6 
+ 00015423  0x00003427 icopy  0x00000039 
+ 00015424  0x00003428 increase  0x00000002 , 0x0000003f 
+ 00015425  0x00003429 call  0x00003ca7 
+ 00015426  0x0000342a fetch  0x00000002 , 0x000046b9 
+ 00015427  0x0000342b istore  0x00000002 , 0x0000000a 
+ 00015428  0x0000342c fetch  0x00000002 , 0x000046b7 
+ 00015429  0x0000342d icopy  0x00000006 
+ 00015430  0x0000342e call  0x000066d1 
+ 00015431  0x0000342f branch  0x000066c5 
+ 00015432  0x00003434 jam  0x00000009 , 0x00000b03 
+ 00015433  0x00003436 setarg  0x00000000 
+ 00015434  0x00003437 call  0x00003ca7 
+ 00015435  0x00003438 branch  0x000066c5 
+ 00015436  0x0000343d jam  0x0000000a , 0x00000b03 
+ 00015437  0x0000343e setarg  0x00000001 
+ 00015438  0x0000343f call  0x00003ca7 
+ 00015439  0x00003441 call  0x00003c5d 
+ 00015440  0x00003443 fetch  0x00000002 , 0x00004682 
+ 00015441  0x00003444 arg  0x00000002 , 0x00000007 
+ 00015442  0x00003445 qisolate1  0x0000003f 
+ 00015443  0x00003446 setflag  0x00000001 , 0x00000003 , 0x00000002 
+ 00015444  0x00003448 arg  0x00000009 , 0x00000007 
+ 00015445  0x00003449 qisolate1  0x0000003f 
+ 00015446  0x0000344a setflag  0x00000001 , 0x00000005 , 0x00000002 
+ 00015447  0x0000344c fetch  0x00000001 , 0x00004682 
+ 00015448  0x0000344d arg  0x00000004 , 0x00000007 
+ 00015449  0x0000344e qisolate1  0x0000003f 
+ 00015450  0x0000344f setflag  0x00000001 , 0x00000004 , 0x00000002 
+ 00015451  0x00003451 istoret  0x00000001 , 0x0000000a 
+ 00015452  0x00003452 branch  0x000066c5 
+ 00015453  0x00003457 arg  0x00000000 , 0x00000002 
+ 00015454  0x00003458 fetch  0x00000001 , 0x00004093 
+ 00015455  0x00003459 arg  0x00000000 , 0x00000007 
+ 00015456  0x0000345a qisolate1  0x0000003f 
+ 00015457  0x0000345b setflag  0x00000001 , 0x00000000 , 0x00000002 
+ 00015458  0x0000345c arg  0x00000001 , 0x00000007 
+ 00015459  0x0000345d qisolate1  0x0000003f 
+ 00015460  0x0000345e setflag  0x00000001 , 0x00000001 , 0x00000002 
+ 00015461  0x00003460 fetch  0x00000001 , 0x0000436e 
+ 00015462  0x00003461 arg  0x00000000 , 0x00000007 
+ 00015463  0x00003462 qisolate1  0x0000003f 
+ 00015464  0x00003463 setflag  0x00000001 , 0x00000002 , 0x00000002 
+ 00015465  0x00003464 rtn 
+ 00015466  0x00003469 jam  0x0000000d , 0x00000b03 
+ 00015467  0x0000346a fetch  0x00000001 , 0x00004217 
+ 00015468  0x0000346b mul32  0x0000003f , 0x00000022 , 0x0000003f 
+ 00015469  0x0000346c icopy  0x00000039 
+ 00015470  0x0000346d call  0x00003ca7 
+ 00015471  0x0000346e fetch  0x00000002 , 0x00004215 
+ 00015472  0x0000346f icopy  0x00000006 
+ 00015473  0x00003470 call  0x000066d1 
+ 00015474  0x00003471 branch  0x000066c5 
+ 00015475  0x00003476 jam  0x0000000e , 0x00000b03 
+ 00015476  0x00003477 setarg  0x00000004 
+ 00015477  0x00003478 call  0x00003ca7 
+ 00015478  0x00003479 fetch  0x00000004 , 0x000009ba 
+ 00015479  0x0000347a istore  0x00000004 , 0x0000000a 
+ 00015480  0x0000347b branch  0x000066c5 
+ 00015481  0x00003480 jam  0x0000000f , 0x00000b03 
+ 00015482  0x00003481 hfetch  0x00000002 , 0x00008112 
+ 00015483  0x00003482 arg  0x000000ff , 0x00000002 
+ 00015484  0x00003483 call  0x00007fdd 
+ 00015485  0x00003484 copy  0x0000003f , 0x00000039 
+ 00015486  0x00003485 call  0x00003ca7 
+ 00015487  0x00003486 call  0x000066cb 
+ 00015488  0x00003487 call  0x00006703 
+ 00015489  0x00003488 branch  0x000066c5 
+ 00015490  0x0000348d jam  0x00000010 , 0x00000b03 
+ 00015491  0x0000348e branch  0x00003c49 
+ 00015492  0x00003493 jam  0x00000011 , 0x00000b03 
+ 00015493  0x00003494 setarg  0x00000004 
+ 00015494  0x00003495 call  0x00003ca7 
+ 00015495  0x00003496 fetch  0x00000004 , 0x000044c7 
+ 00015496  0x00003497 istore  0x00000004 , 0x0000000a 
+ 00015497  0x00003498 branch  0x000066c5 
+ 00015498  0x0000349d arg  0x00000180 , 0x00000011 
+ 00015499  0x0000349e branch  0x00003c91 
+ 00015500  0x000034a1 arg  0x00000080 , 0x00000011 
+ 00015501  0x000034a2 branch  0x00003c91 
+ 00015502  0x000034a5 arg  0x00000101 , 0x00000011 
+ 00015503  0x000034a6 branch  0x00003c91 
+ 00015504  0x000034a9 arg  0x00000001 , 0x00000011 
+ 00015505  0x000034ac jam  0x00000000 , 0x00004661 
+ 00015506  0x000034ad jam  0x00000014 , 0x00000b03 
+ 00015507  0x000034ae setarg  0x00000002 
+ 00015508  0x000034af call  0x00003ca7 
+ 00015509  0x000034b0 copy  0x00000011 , 0x0000003f 
+ 00015510  0x000034b1 istore  0x00000002 , 0x0000000a 
+ 00015511  0x000034b2 branch  0x000066c5 
+ 00015512  0x000034b7 arg  0x00000000 , 0x00000013 
+ 00015513  0x000034b8 branch  0x00003c9b 
+ 00015514  0x000034bb arg  0x00000001 , 0x00000013 
+ 00015515  0x000034be jam  0x00000015 , 0x00000b03 
+ 00015516  0x000034bf setarg  0x00000001 
+ 00015517  0x000034c0 call  0x00003ca7 
+ 00015518  0x000034c1 copy  0x00000013 , 0x0000003f 
+ 00015519  0x000034c2 istore  0x00000001 , 0x0000000a 
+ 00015520  0x000034c3 branch  0x000066c5 
+ 00015521  0x000034c8 jam  0x0000001d , 0x00000b03 
+ 00015522  0x000034c9 setarg  0x00000004 
+ 00015523  0x000034ca call  0x00003ca7 
+ 00015524  0x000034cb fetch  0x00000004 , 0x000009ba 
+ 00015525  0x000034cc istore  0x00000004 , 0x0000000a 
+ 00015526  0x000034cd branch  0x000066c5 
+ 00015527  0x000034d9 jam  0x00000002 , 0x00000b02 
+ 00015528  0x000034da store  0x00000001 , 0x00000b04 
+ 00015529  0x000034db storet  0x00000008 , 0x00000aa2 
+ 00015530  0x000034dc bpatch  0x000000e2 , 0x0000401c 
+ 00015531  0x000034dd call  0x00003cb1 
+ 00015532  0x000034de fetcht  0x00000008 , 0x00000aa2 
+ 00015533  0x000034df call  0x000066c2 
+ 00015534  0x000034e0 fetch  0x00000003 , 0x00000b02 
+ 00015535  0x000034e1 istore  0x00000003 , 0x0000000a 
+ 00015536  0x000034e2 rtn 
+ 00015537  0x000034e6 call  0x00003cba 
+ 00015538  0x000034e7 rtn  0x00000001 
+ 00015539  0x000034e9 call  0x00003cb8 
+ 00015540  0x000034ea fetch  0x00000004 , 0x000046a3 
+ 00015541  0x000034eb rshift2  0x0000003f , 0x0000003f 
+ 00015542  0x000034ec rtn  0x00000034 
+ 00015543  0x000034ed branch  0x00003cbe 
+ 00015544  0x000034f1 fetcht  0x00000001 , 0x000046a2 
+ 00015545  0x000034f2 branch  0x00006829 
+ 00015546  0x000034f5 fetcht  0x00000001 , 0x000046a2 
+ 00015547  0x000034f6 branch  0x0000681b 
+ 00015548  0x000034f9 fetcht  0x00000001 , 0x000046a2 
+ 00015549  0x000034fa branch  0x00006825 
+ 00015550  0x000034fe increase  0xffffffff , 0x0000003f 
+ 00015551  0x000034ff nop  0x00000026 
+ 00015552  0x00003500 nbranch  0x00003cbe , 0x00000034 
+ 00015553  0x00003501 rtn 
+ 00015554  0x0000350b call  0x00003ad4 
+ 00015555  0x0000350c rtn  0x00000028 
+ 00015556  0x0000350d copy  0x00000011 , 0x0000003f 
+ 00015557  0x0000350e store  0x00000002 , 0x000046b7 
+ 00015558  0x0000350f copy  0x00000012 , 0x0000003f 
+ 00015559  0x00003510 store  0x00000001 , 0x000046b6 
+ 00015560  0x00003511 fetch  0x00000002 , 0x00000478 
+ 00015561  0x00003512 fetcht  0x00000002 , 0x000046bb 
+ 00015562  0x00003513 isub  0x00000002 , 0x0000003e 
+ 00015563  0x00003514 branch  0x00003ccf , 0x00000005 
+ 00015564  0x00003515 fetcht  0x00000002 , 0x000046bd 
+ 00015565  0x00003516 isub  0x00000002 , 0x0000003e 
+ 00015566  0x00003517 nrtn  0x00000005 
+ 00015567  0x00003519 store  0x00000002 , 0x000046b9 
+ 00015568  0x0000351a branch  0x00003c3d 
+ 00015569  0x00003520 fetch  0x00000001 , 0x000046bf 
+ 00015570  0x00003521 rtnbit1  0x00000005 
+ 00015571  0x00003522 call  0x00003cf0 
+ 00015572  0x00003523 branch  0x0000340c 
+ 00015573  0x00003527 jam  0x00000002 , 0x00004172 
+ 00015574  0x00003528 rtn 
+ 00015575  0x0000352d branch  0x00003cd8 
+ 00015576  0x00003530 fetch  0x00000001 , 0x000046b2 
+ 00015577  0x00003531 rtn  0x00000034 
+ 00015578  0x00003532 fetch  0x00000001 , 0x000046b3 
+ 00015579  0x00003533 rtn  0x00000034 
+ 00015580  0x00003534 increase  0xffffffff , 0x0000003f 
+ 00015581  0x00003535 store  0x00000001 , 0x000046b3 
+ 00015582  0x00003536 nrtn  0x00000034 
+ 00015583  0x00003537 jam  0x0000000a , 0x000046b3 
+ 00015584  0x00003538 call  0x000068eb 
+ 00015585  0x00003539 call  0x00006908 
+ 00015586  0x0000353a div  0x0000003f , 0x00000064 
+ 00015587  0x0000353b call  0x00007f86 
+ 00015588  0x0000353c quotient  0x0000003f 
+ 00015589  0x0000353d remainder  0x00000002 
+ 00015590  0x0000353e store  0x00000001 , 0x000046b4 
+ 00015591  0x0000353f storet  0x00000001 , 0x000046b5 
+ 00015592  0x00003540 rtn 
+ 00015593  0x00003544 call  0x00007fb4 
+ 00015594  0x00003545 branch  0x000033d9 , 0x00000002 
+ 00015595  0x00003546 branch  0x000033db 
+ 00015596  0x0000354b arg  0x00000006 , 0x00000007 
+ 00015597  0x0000354c branch  0x00003cfc 
+ 00015598  0x0000354f arg  0x00000006 , 0x00000007 
+ 00015599  0x00003550 branch  0x00003cf8 
+ 00015600  0x00003553 arg  0x00000005 , 0x00000007 
+ 00015601  0x00003554 branch  0x00003cfc 
+ 00015602  0x00003557 arg  0x00000005 , 0x00000007 
+ 00015603  0x00003558 branch  0x00003cf8 
+ 00015604  0x0000355b arg  0x00000004 , 0x00000007 
+ 00015605  0x0000355c branch  0x00003cfc 
+ 00015606  0x0000355f arg  0x00000004 , 0x00000007 
+ 00015607  0x00003560 branch  0x00003cf8 
+ 00015608  0x00003563 fetch  0x00000001 , 0x000046bf 
+ 00015609  0x00003564 qset0  0x0000003f 
+ 00015610  0x00003565 store  0x00000001 , 0x000046bf 
+ 00015611  0x00003566 rtn 
+ 00015612  0x00003569 fetch  0x00000001 , 0x000046bf 
+ 00015613  0x0000356a qset1  0x0000003f 
+ 00015614  0x0000356b store  0x00000001 , 0x000046bf 
+ 00015615  0x0000356c rtn 
+ 00015616  0x00003577 call  0x00003d39 
+ 00015617  0x00003578 call  0x0000640f 
+ 00015618  0x00003579 call  0x000040c6 
+ 00015619  0x0000357a call  0x00003d66 
+ 00015620  0x0000357b call  0x00006411 
+ 00015621  0x0000357c rtn  0x0000002b 
+ 00015622  0x0000357d call  0x00003d16 
+ 00015623  0x0000357e call  0x00003d19 
+ 00015624  0x00003581 fetch  0x00000004 , 0x000046d3 
+ 00015625  0x00003582 rtnbit1  0x00000010 
+ 00015626  0x00003583 call  0x00003d4e 
+ 00015627  0x00003584 rtnmark1  0x00000026 
+ 00015628  0x00003585 fetch  0x00000002 , 0x00004682 
+ 00015629  0x00003586 bbit1  0x0000000c , 0x000042b0 
+ 00015630  0x00003587 branch  0x000042a2 
+ 00015631  0x0000358b fetch  0x00000004 , 0x000046d3 
+ 00015632  0x0000358c rtnbit0  0x0000001b 
+ 00015633  0x0000358d arg  0x00000014 , 0x00000039 
+ 00015634  0x0000358f setarg  0x00030d40 
+ 00015635  0x00003590 call  0x00002a8f 
+ 00015636  0x00003591 loop  0x00007ec1 
+ 00015637  0x00003592 rtn 
+ 00015638  0x00003596 fetch  0x00000004 , 0x000046d3 
+ 00015639  0x00003597 rtnbit0  0x00000010 
+ 00015640  0x00003598 branch  0x000048ea 
+ 00015641  0x0000359c setarg  0x0000416d 
+ 00015642  0x0000359d store  0x00000002 , 0x000041ef 
+ 00015643  0x0000359e setarg  0x00003f77 
+ 00015644  0x0000359f store  0x00000002 , 0x000041f1 
+ 00015645  0x000035a0 setarg  0x00003ebb 
+ 00015646  0x000035a1 store  0x00000002 , 0x000041ed 
+ 00015647  0x000035a2 setarg  0x0000417c 
+ 00015648  0x000035a3 store  0x00000002 , 0x000041f5 
+ 00015649  0x000035a4 setarg  0x00003de3 
+ 00015650  0x000035a5 store  0x00000002 , 0x000041f3 
+ 00015651  0x000035a6 setarg  0x00003eb3 
+ 00015652  0x000035a7 store  0x00000002 , 0x000041eb 
+ 00015653  0x000035a8 setarg  0x00003d5b 
+ 00015654  0x000035a9 store  0x00000002 , 0x000041f9 
+ 00015655  0x000035ab call  0x00002c7a 
+ 00015656  0x000035ac setarg  0x00004401 
+ 00015657  0x000035ad add  0x00000013 , 0x000000d8 , 0x00000005 
+ 00015658  0x000035ae istore  0x00000002 , 0x00000005 
+ 00015659  0x000035af setarg  0x00004406 
+ 00015660  0x000035b0 add  0x00000013 , 0x000000da , 0x00000005 
+ 00015661  0x000035b1 istore  0x00000002 , 0x00000005 
+ 00015662  0x000035b2 setarg  0x00003ebf 
+ 00015663  0x000035b3 add  0x00000013 , 0x000000dc , 0x00000005 
+ 00015664  0x000035b4 istore  0x00000002 , 0x00000005 
+ 00015665  0x000035b6 setarg  0x000041f9 
+ 00015666  0x000035b7 store  0x00000002 , 0x000041fd 
+ 00015667  0x000035b8 setarg  0x00003d36 
+ 00015668  0x000035b9 store  0x00000002 , 0x00004201 
+ 00015669  0x000035ba rtn 
+ 00015670  0x000035bd fetch  0x00000004 , 0x000046d3 
+ 00015671  0x000035be bbit0  0x00000012 , 0x000064d7 
+ 00015672  0x000035bf branch  0x000064da 
+ 00015673  0x000035c2 rtn  0x0000002b 
+ 00015674  0x000035c3 call  0x00002c9d 
+ 00015675  0x000035c4 call  0x00003e6e 
+ 00015676  0x000035c5 call  0x00003e1e 
+ 00015677  0x000035c6 call  0x00003e54 
+ 00015678  0x000035c7 call  0x00005810 
+ 00015679  0x000035c8 call  0x00005839 
+ 00015680  0x000035c9 call  0x0000582c 
+ 00015681  0x000035ca call  0x00005818 
+ 00015682  0x000035cb fetch  0x00000004 , 0x000046d3 
+ 00015683  0x000035cc bbit1  0x00000014 , 0x00003d46 
+ 00015684  0x000035cd bbit1  0x00000013 , 0x00004414 
+ 00015685  0x000035ce rtn 
+ 00015686  0x000035d1 call  0x0000659c 
+ 00015687  0x000035d2 fetch  0x00000004 , 0x000046d3 
+ 00015688  0x000035d3 isolate1  0x00000019 , 0x0000003f 
+ 00015689  0x000035d4 ncall  0x000065c2 , 0x00000001 
+ 00015690  0x000035d5 call  0x0000443f 
+ 00015691  0x000035d6 call  0x00003dc9 
+ 00015692  0x000035d7 call  0x000041aa 
+ 00015693  0x000035d8 branch  0x000065df 
+ 00015694  0x000035db fetch  0x00000004 , 0x000046d3 
+ 00015695  0x000035dc bbit0  0x0000001e , 0x00003d53 
+ 00015696  0x000035dd fetch  0x00000001 , 0x00000abd 
+ 00015697  0x000035de isolate0  0x00000003 , 0x0000003f 
+ 00015698  0x000035df nrtn  0x00000001 
+ 00015699  0x000035e1 fetch  0x00000001 , 0x0000471f 
+ 00015700  0x000035e2 store  0x00000001 , 0x0000471e 
+ 00015701  0x000035e3 fetch  0x00000001 , 0x000046f5 
+ 00015702  0x000035e4 rtnbit1  0x00000006 
+ 00015703  0x000035e6 fetch  0x00000004 , 0x000046d3 
+ 00015704  0x000035e7 rtnbit0  0x00000011 
+ 00015705  0x000035e8 bbit1  0x0000001d , 0x00002ee4 
+ 00015706  0x000035e9 branch  0x00002f2c 
+ 00015707  0x000035eb fetch  0x00000001 , 0x00000478 
+ 00015708  0x000035ec sub  0x0000003f , 0x0000001a , 0x0000003f 
+ 00015709  0x000035ed nrtn  0x00000005 
+ 00015710  0x000035ee jam  0x00000012 , 0x00000a99 
+ 00015711  0x000035ef call  0x00007d8f 
+ 00015712  0x000035f1 arg  0x00000000 , 0x00000007 
+ 00015713  0x000035f2 branch  0x000041b9 
+ 00015714  0x000035f5 fetch  0x00000001 , 0x000046b6 
+ 00015715  0x000035f6 rtneq  0x00000001 
+ 00015716  0x000035f7 jam  0x00000001 , 0x000046b6 
+ 00015717  0x000035f8 rtn 
+ 00015718  0x000035fa fetch  0x00000001 , 0x000046e1 
+ 00015719  0x000035fb and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00015720  0x000035fc store  0x00000001 , 0x0000477a 
+ 00015721  0x000035fd branch  0x00003d80 
+ 00015722  0x00003601 fetcht  0x00000001 , 0x000046e7 
+ 00015723  0x00003602 call  0x0000681d 
+ 00015724  0x00003603 nbranch  0x00003d62 , 0x00000001 
+ 00015725  0x00003605 fetch  0x00000001 , 0x000046b6 
+ 00015726  0x00003606 rtneq  0x00000000 
+ 00015727  0x00003607 jam  0x00000000 , 0x000046b6 
+ 00015728  0x00003608 fetch  0x00000001 , 0x0000477a 
+ 00015729  0x00003609 increase  0x00000001 , 0x0000003f 
+ 00015730  0x0000360a and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00015731  0x0000360b store  0x00000001 , 0x0000477a 
+ 00015732  0x0000360c call  0x00003d7e 
+ 00015733  0x0000360d fetch  0x00000004 , 0x000046d3 
+ 00015734  0x0000360e bbit1  0x00000014 , 0x0000443b 
+ 00015735  0x0000360f bbit1  0x00000013 , 0x00003d79 
+ 00015736  0x00003610 rtn 
+ 00015737  0x00003612 arg  0x0000001e , 0x00000002 
+ 00015738  0x00003613 call  0x0000680e 
+ 00015739  0x00003614 arg  0x0000001f , 0x00000002 
+ 00015740  0x00003615 call  0x0000680e 
+ 00015741  0x00003616 branch  0x00004435 
+ 00015742  0x00003619 bpatch  0x000000e3 , 0x0000401c 
+ 00015743  0x0000361a call  0x0000424a 
+ 00015744  0x0000361b fetch  0x00000001 , 0x000046e0 
+ 00015745  0x0000361c beq  0x00000005 , 0x00003daa 
+ 00015746  0x0000361d beq  0x00000004 , 0x00003d96 
+ 00015747  0x0000361e fetch  0x00000001 , 0x0000477a 
+ 00015748  0x0000361f beq  0x00000000 , 0x00003d8a 
+ 00015749  0x00003620 beq  0x00000001 , 0x00003d88 
+ 00015750  0x00003621 beq  0x00000002 , 0x00003d8c 
+ 00015751  0x00003622 beq  0x00000003 , 0x00003d8e 
+ 00015752  0x00003624 fetch  0x00000001 , 0x00004780 
+ 00015753  0x00003625 branch  0x00003dbe 
+ 00015754  0x00003627 fetch  0x00000001 , 0x0000477f 
+ 00015755  0x00003628 branch  0x00003dbe 
+ 00015756  0x0000362a fetch  0x00000001 , 0x00004781 
+ 00015757  0x0000362b branch  0x00003dbe 
+ 00015758  0x0000362d fetch  0x00000001 , 0x00004782 
+ 00015759  0x0000362e branch  0x00003dbe 
+ 00015760  0x00003630 fetch  0x00000001 , 0x000046e0 
+ 00015761  0x00003631 rtneq  0x00000006 
+ 00015762  0x00003632 fetch  0x00000001 , 0x000046b5 
+ 00015763  0x00003633 increase  0x00000001 , 0x0000003f 
+ 00015764  0x00003634 store  0x00000001 , 0x000046b5 
+ 00015765  0x00003635 rtn 
+ 00015766  0x00003638 fetch  0x00000001 , 0x0000477a 
+ 00015767  0x00003639 beq  0x00000000 , 0x00003d9d 
+ 00015768  0x0000363a beq  0x00000001 , 0x00003d9b 
+ 00015769  0x0000363b beq  0x00000002 , 0x00003d9f 
+ 00015770  0x0000363c beq  0x00000003 , 0x00003da1 
+ 00015771  0x0000363e fetch  0x00000001 , 0x00004784 
+ 00015772  0x0000363f branch  0x00003da2 
+ 00015773  0x00003641 fetch  0x00000001 , 0x00004783 
+ 00015774  0x00003642 branch  0x00003da2 
+ 00015775  0x00003644 fetch  0x00000001 , 0x00004785 
+ 00015776  0x00003645 branch  0x00003da2 
+ 00015777  0x00003647 fetch  0x00000001 , 0x00004786 
+ 00015778  0x00003649 store  0x00000001 , 0x000046b5 
+ 00015779  0x0000364a lshift8  0x0000003f , 0x0000003f 
+ 00015780  0x0000364b copy  0x0000003f , 0x00000011 
+ 00015781  0x0000364c add  0x0000003f , 0x0000000d , 0x0000003f 
+ 00015782  0x0000364d call  0x00006413 
+ 00015783  0x0000364e copy  0x00000011 , 0x0000003f 
+ 00015784  0x0000364f add  0x0000003f , 0x0000000e , 0x0000003f 
+ 00015785  0x00003650 branch  0x00006413 
+ 00015786  0x00003653 fetch  0x00000001 , 0x0000477a 
+ 00015787  0x00003654 beq  0x00000000 , 0x00003db1 
+ 00015788  0x00003655 beq  0x00000001 , 0x00003daf 
+ 00015789  0x00003656 beq  0x00000002 , 0x00003db3 
+ 00015790  0x00003657 beq  0x00000003 , 0x00003db5 
+ 00015791  0x00003659 fetch  0x00000001 , 0x00004788 
+ 00015792  0x0000365a branch  0x00003db6 
+ 00015793  0x0000365c fetch  0x00000001 , 0x00004787 
+ 00015794  0x0000365d branch  0x00003db6 
+ 00015795  0x0000365f fetch  0x00000001 , 0x00004789 
+ 00015796  0x00003660 branch  0x00003db6 
+ 00015797  0x00003662 fetch  0x00000001 , 0x0000478a 
+ 00015798  0x00003664 store  0x00000001 , 0x000046b5 
+ 00015799  0x00003665 call  0x000040c0 
+ 00015800  0x00003666 fetch  0x00000001 , 0x000046b5 
+ 00015801  0x00003668 add  0x0000003f , 0x00000080 , 0x0000003f 
+ 00015802  0x00003669 lshift8  0x0000003f , 0x0000003f 
+ 00015803  0x0000366a add  0x0000003f , 0x00000005 , 0x0000003f 
+ 00015804  0x0000366b copy  0x0000003f , 0x00000011 
+ 00015805  0x0000366c branch  0x0000415a 
+ 00015806  0x0000366f store  0x00000001 , 0x000046b5 
+ 00015807  0x00003670 call  0x00003d90 
+ 00015808  0x00003671 fetch  0x00000001 , 0x000046b5 
+ 00015809  0x00003672 setarg  0x00000006 
+ 00015810  0x00003673 call  0x00006414 
+ 00015811  0x00003674 and  0x0000003f , 0x000000f8 , 0x00000002 
+ 00015812  0x00003675 fetch  0x00000001 , 0x000046b5 
+ 00015813  0x00003676 iadd  0x00000002 , 0x0000003f 
+ 00015814  0x00003677 lshift8  0x0000003f , 0x0000003f 
+ 00015815  0x00003678 add  0x0000003f , 0x00000006 , 0x0000003f 
+ 00015816  0x00003679 branch  0x00006413 
+ 00015817  0x0000367d call  0x000033c4 
+ 00015818  0x0000367e branch  0x00004316 , 0x00000005 
+ 00015819  0x0000367f call  0x0000441c 
+ 00015820  0x00003680 call  0x000042e4 
+ 00015821  0x00003681 branch  0x000033bd 
+ 00015822  0x00003685 fetch  0x00000002 , 0x00004707 
+ 00015823  0x00003686 rtn  0x00000034 
+ 00015824  0x00003687 fetch  0x00000004 , 0x000046d3 
+ 00015825  0x00003688 rtnbit0  0x00000011 
+ 00015826  0x00003689 rtnbit1  0x00000003 
+ 00015827  0x0000368a rtnmark1  0x00000026 
+ 00015828  0x0000368b call  0x00004083 
+ 00015829  0x0000368c rtnne  0x00000007 
+ 00015830  0x0000368d call  0x00004482 
+ 00015831  0x0000368e arg  0x00000003 , 0x00000007 
+ 00015832  0x0000368f call  0x000043ce 
+ 00015833  0x00003690 setarg  0x00000000 
+ 00015834  0x00003691 store  0x00000002 , 0x000046ae 
+ 00015835  0x00003692 store  0x00000001 , 0x000046b4 
+ 00015836  0x00003693 call  0x00003263 
+ 00015837  0x00003695 fetch  0x00000002 , 0x00004682 
+ 00015838  0x00003696 bbit1  0x00000007 , 0x00004392 
+ 00015839  0x00003697 bbit1  0x00000009 , 0x00003402 
+ 00015840  0x00003698 bbit1  0x00000000 , 0x000033e9 
+ 00015841  0x00003699 call  0x000042ca 
+ 00015842  0x0000369a branch  0x00002ead 
+ 00015843  0x0000369e call  0x00003dce 
+ 00015844  0x0000369f call  0x00007e34 
+ 00015845  0x000036a0 call  0x00003d6a 
+ 00015846  0x000036a1 call  0x00003de9 
+ 00015847  0x000036a2 call  0x00003ee0 
+ 00015848  0x000036a3 branch  0x00003df7 
+ 00015849  0x000036a5 fetch  0x00000004 , 0x000046d3 
+ 00015850  0x000036a6 rtnbit0  0x00000010 
+ 00015851  0x000036a7 call  0x000048d3 
+ 00015852  0x000036a8 branch  0x000048fd 
+ 00015853  0x000036ab hfetch  0x00000001 , 0x00008a04 
+ 00015854  0x000036ac bbit0  0x00000007 , 0x00003df1 
+ 00015855  0x000036ad bbit1  0x00000007 , 0x00003df4 
+ 00015856  0x000036ae rtn 
+ 00015857  0x000036b0 fetch  0x00000001 , 0x000046ff 
+ 00015858  0x000036b1 rtnbit0  0x00000007 
+ 00015859  0x000036b2 branch  0x0000659a 
+ 00015860  0x000036b4 fetch  0x00000001 , 0x000046ff 
+ 00015861  0x000036b5 rtnbit1  0x00000007 
+ 00015862  0x000036b6 branch  0x00004381 
+ 00015863  0x000036b9 call  0x00003ded 
+ 00015864  0x000036ba hfetch  0x00000001 , 0x00008a04 
+ 00015865  0x000036bb store  0x00000001 , 0x000046ff 
+ 00015866  0x000036bc rtnbit0  0x00000007 
+ 00015867  0x000036bd call  0x00003e07 
+ 00015868  0x000036be fetch  0x00000004 , 0x000046f9 
+ 00015869  0x000036bf fetcht  0x00000001 , 0x000046fd 
+ 00015870  0x000036c0 iadd  0x00000002 , 0x00000002 
+ 00015871  0x000036c1 copy  0x00000022 , 0x0000003f 
+ 00015872  0x000036c2 isub  0x00000002 , 0x0000003e 
+ 00015873  0x000036c3 nrtn  0x00000002 
+ 00015874  0x000036c4 store  0x00000004 , 0x000046f9 
+ 00015875  0x000036c5 call  0x00003f97 
+ 00015876  0x000036c6 nrtn  0x00000028 
+ 00015877  0x000036c7 jam  0x00000004 , 0x00000d38 
+ 00015878  0x000036c8 branch  0x00003e0f 
+ 00015879  0x000036cb fetcht  0x00000004 , 0x000046f9 
+ 00015880  0x000036cc copy  0x00000022 , 0x0000003f 
+ 00015881  0x000036cd isub  0x00000002 , 0x0000003e 
+ 00015882  0x000036ce ncall  0x00003e0c , 0x00000002 
+ 00015883  0x000036cf rtn 
+ 00015884  0x000036d1 setarg  0x00000000 
+ 00015885  0x000036d2 store  0x00000004 , 0x000046f9 
+ 00015886  0x000036d3 rtn 
+ 00015887  0x000036d8 fetch  0x00000001 , 0x00000d38 
+ 00015888  0x000036d9 rtnbit0  0x00000002 
+ 00015889  0x000036da branch  0x00003e12 
+ 00015890  0x000036dc hfetch  0x00000001 , 0x00008a04 
+ 00015891  0x000036dd rtnbit0  0x00000007 
+ 00015892  0x000036de jam  0x00000020 , 0x00000d52 
+ 00015893  0x000036df setarg  0x00000001 
+ 00015894  0x000036e0 store  0x00000001 , 0x00000d54 
+ 00015895  0x000036e1 fetch  0x00000007 , 0x0000469a 
+ 00015896  0x000036e2 istore  0x00000007 , 0x00000005 
+ 00015897  0x000036e3 rtn 
+ 00015898  0x000036e7 hfetch  0x00000002 , 0x00008050 
+ 00015899  0x000036e8 set0  0x0000000b , 0x0000003f 
+ 00015900  0x000036e9 hstore  0x00000002 , 0x00008050 
+ 00015901  0x000036ea rtn 
+ 00015902  0x000036ed setarg  0x00008c00 
+ 00015903  0x000036ee store  0x00000002 , 0x00004575 
+ 00015904  0x000036ef setarg  0x00008e7a 
+ 00015905  0x000036f0 store  0x00000002 , 0x000044bc 
+ 00015906  0x000036f1 setarg  0x00002402 
+ 00015907  0x000036f2 store  0x00000002 , 0x000040bd 
+ 00015908  0x000036f3 setarg  0x00002580 
+ 00015909  0x000036f4 store  0x00000003 , 0x000040aa 
+ 00015910  0x000036f5 jam  0x00000003 , 0x00004173 
+ 00015911  0x000036f6 jam  0x00000008 , 0x00004156 
+ 00015912  0x000036f7 jam  0x00000001 , 0x000046d9 
+ 00015913  0x000036f8 setarg  0x00000200 
+ 00015914  0x000036f9 store  0x00000002 , 0x00004154 
+ 00015915  0x000036fa jam  0x00000017 , 0x000044a6 
+ 00015916  0x000036fb jam  0x00000017 , 0x000044a8 
+ 00015917  0x000036fd setarg  0x00000a77 
+ 00015918  0x000036fe store  0x00000002 , 0x00004212 
+ 00015919  0x0000370e setsect  0x00000000 , 0x00000306 
+ 00015920  0x0000370f setsect  0x00000001 , 0x00004440 
+ 00015921  0x00003710 setsect  0x00000002 , 0x00010000 
+ 00015922  0x00003711 setsect  0x00000003 , 0x00004408 
+ 00015923  0x00003712 store  0x00000009 , 0x00004577 
+ 00015924  0x00003713 setsect  0x00000000 , 0x00001224 
+ 00015925  0x00003714 setsect  0x00000001 , 0x00004000 
+ 00015926  0x00003715 setsect  0x00000002 , 0x00000000 
+ 00015927  0x00003716 istore  0x00000005 , 0x00000005 
+ 00015928  0x00003718 setsect  0x00000000 , 0x0003ffff 
+ 00015929  0x00003719 setsect  0x00000001 , 0x0002fe23 
+ 00015930  0x0000371a setsect  0x00000002 , 0x000199d9 
+ 00015931  0x0000371b setsect  0x00000003 , 0x0000020d 
+ 00015932  0x0000371c store  0x00000008 , 0x00004098 
+ 00015933  0x0000371e setarg  0x0000012c 
+ 00015934  0x0000371f store  0x00000002 , 0x00004707 
+ 00015935  0x00003720 call  0x000057a3 
+ 00015936  0x00003721 fetch  0x00000004 , 0x000046d3 
+ 00015937  0x00003722 rtnbit0  0x0000001f 
+ 00015938  0x00003723 call  0x00003e44 
+ 00015939  0x00003724 branch  0x00003e4c 
+ 00015940  0x00003727 fetcht  0x00000001 , 0x000046f7 
+ 00015941  0x00003728 call  0x000067fb 
+ 00015942  0x00003729 fetcht  0x00000001 , 0x000046f7 
+ 00015943  0x0000372a call  0x0000681d 
+ 00015944  0x0000372b jam  0x00000003 , 0x000046f6 
+ 00015945  0x0000372c rtn  0x00000001 
+ 00015946  0x0000372d jam  0x00000002 , 0x000046f6 
+ 00015947  0x0000372e rtn 
+ 00015948  0x00003731 fetcht  0x00000001 , 0x000046f8 
+ 00015949  0x00003732 call  0x000067fb 
+ 00015950  0x00003733 fetcht  0x00000001 , 0x000046f8 
+ 00015951  0x00003734 call  0x0000681d 
+ 00015952  0x00003735 jam  0x00000000 , 0x0000422d 
+ 00015953  0x00003736 rtn  0x00000001 
+ 00015954  0x00003737 jam  0x00000002 , 0x0000422d 
+ 00015955  0x00003738 rtn 
+ 00015956  0x0000373c fetch  0x00000001 , 0x0000422d 
+ 00015957  0x0000373d beq  0x00000000 , 0x00003e59 
+ 00015958  0x0000373e beq  0x00000001 , 0x00003e62 
+ 00015959  0x0000373f beq  0x00000002 , 0x00003e6b 
+ 00015960  0x00003740 branch  0x00003e59 
+ 00015961  0x00003743 fetcht  0x00000002 , 0x00004221 
+ 00015962  0x00003744 fetch  0x00000002 , 0x00004227 
+ 00015963  0x00003745 isub  0x00000002 , 0x0000003f 
+ 00015964  0x00003746 mul32  0x0000003f , 0x00000014 , 0x0000003f 
+ 00015965  0x00003747 div  0x0000003f , 0x00000064 
+ 00015966  0x00003748 call  0x00007f86 
+ 00015967  0x00003749 quotient  0x0000003f 
+ 00015968  0x0000374a store  0x00000002 , 0x000046d0 
+ 00015969  0x0000374b rtn 
+ 00015970  0x0000374d fetcht  0x00000002 , 0x0000421f 
+ 00015971  0x0000374e fetch  0x00000002 , 0x00004225 
+ 00015972  0x0000374f isub  0x00000002 , 0x0000003f 
+ 00015973  0x00003750 mul32  0x0000003f , 0x000000e6 , 0x0000003f 
+ 00015974  0x00003751 div  0x0000003f , 0x00000190 
+ 00015975  0x00003752 call  0x00007f86 
+ 00015976  0x00003753 quotient  0x0000003f 
+ 00015977  0x00003754 store  0x00000002 , 0x000046d0 
+ 00015978  0x00003755 rtn 
+ 00015979  0x00003757 fetch  0x00000002 , 0x00004223 
+ 00015980  0x00003758 store  0x00000002 , 0x000046d0 
+ 00015981  0x00003759 rtn 
+ 00015982  0x0000375b fetcht  0x00000001 , 0x0000423a 
+ 00015983  0x0000375c call  0x0000680e 
+ 00015984  0x0000375d call  0x000048fb 
+ 00015985  0x0000375e fetcht  0x00000001 , 0x000046e2 
+ 00015986  0x0000375f call  0x000067fb 
+ 00015987  0x00003760 fetcht  0x00000001 , 0x000046e3 
+ 00015988  0x00003761 call  0x000067fb 
+ 00015989  0x00003762 fetcht  0x00000001 , 0x000046e4 
+ 00015990  0x00003763 call  0x000067fb 
+ 00015991  0x00003764 fetcht  0x00000001 , 0x000046f3 
+ 00015992  0x00003765 call  0x000067fb 
+ 00015993  0x00003767 fetcht  0x00000001 , 0x000046dc 
+ 00015994  0x00003768 call  0x0000680e 
+ 00015995  0x0000376a fetcht  0x00000001 , 0x000046e8 
+ 00015996  0x0000376b call  0x000067fb 
+ 00015997  0x0000376d fetcht  0x00000001 , 0x000046e9 
+ 00015998  0x0000376e call  0x000067fb 
+ 00015999  0x00003770 fetcht  0x00000001 , 0x000046ea 
+ 00016000  0x00003771 call  0x000067fb 
+ 00016001  0x00003772 fetcht  0x00000001 , 0x000046eb 
+ 00016002  0x00003773 call  0x000067fb 
+ 00016003  0x00003775 fetcht  0x00000001 , 0x000046e5 
+ 00016004  0x00003776 call  0x000067fb 
+ 00016005  0x00003777 fetcht  0x00000001 , 0x000046e6 
+ 00016006  0x00003778 call  0x000067fb 
+ 00016007  0x0000377a fetcht  0x00000001 , 0x000046ef 
+ 00016008  0x0000377b call  0x0000680e 
+ 00016009  0x0000377d fetcht  0x00000001 , 0x000046f0 
+ 00016010  0x0000377e call  0x0000680e 
+ 00016011  0x00003780 fetcht  0x00000001 , 0x000046f1 
+ 00016012  0x00003781 call  0x0000680e 
+ 00016013  0x00003783 fetcht  0x00000001 , 0x000046f2 
+ 00016014  0x00003784 call  0x0000680e 
+ 00016015  0x00003786 fetcht  0x00000001 , 0x000046f4 
+ 00016016  0x00003787 call  0x0000680e 
+ 00016017  0x00003789 fetcht  0x00000001 , 0x000046ed 
+ 00016018  0x0000378a call  0x000067fb 
+ 00016019  0x0000378c fetcht  0x00000001 , 0x000046ec 
+ 00016020  0x0000378d call  0x000067fb 
+ 00016021  0x0000378f fetcht  0x00000001 , 0x000046e7 
+ 00016022  0x00003790 branch  0x000067fb 
+ 00016023  0x00003793 fetcht  0x00000001 , 0x000046e8 
+ 00016024  0x00003794 call  0x000067dd 
+ 00016025  0x00003795 fetcht  0x00000001 , 0x000046e9 
+ 00016026  0x00003796 call  0x000067dd 
+ 00016027  0x00003797 fetcht  0x00000001 , 0x000046ea 
+ 00016028  0x00003798 call  0x000067dd 
+ 00016029  0x00003799 fetcht  0x00000001 , 0x000046eb 
+ 00016030  0x0000379a branch  0x000067dd 
+ 00016031  0x0000379d fetcht  0x00000001 , 0x000046e8 
+ 00016032  0x0000379e call  0x00003ea7 
+ 00016033  0x0000379f fetcht  0x00000001 , 0x000046e9 
+ 00016034  0x000037a0 call  0x00003ea7 
+ 00016035  0x000037a1 fetcht  0x00000001 , 0x000046ea 
+ 00016036  0x000037a2 call  0x00003ea7 
+ 00016037  0x000037a3 fetcht  0x00000001 , 0x000046eb 
+ 00016038  0x000037a4 branch  0x00003ea7 
+ 00016039  0x000037a7 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00016040  0x000037a8 rtn  0x00000005 
+ 00016041  0x000037a9 and  0x00000002 , 0x0000007f , 0x00000007 
+ 00016042  0x000037aa hfetch  0x00000004 , 0x0000811c 
+ 00016043  0x000037ab qisolate1  0x0000003f 
+ 00016044  0x000037ac hfetch  0x00000004 , 0x00008078 
+ 00016045  0x000037ad qsetflag  0x00000001 , 0x0000003f 
+ 00016046  0x000037ae hstore  0x00000004 , 0x00008078 
+ 00016047  0x000037af hfetch  0x00000004 , 0x0000807c 
+ 00016048  0x000037b0 nqsetflag  0x00000001 , 0x0000003f 
+ 00016049  0x000037b1 hstore  0x00000004 , 0x0000807c 
+ 00016050  0x000037b2 rtn 
+ 00016051  0x000037b5 enable  0x00000028 
+ 00016052  0x000037b6 hfetch  0x00000004 , 0x00008138 
+ 00016053  0x000037b7 setflag  0x00000028 , 0x0000001a , 0x0000003f 
+ 00016054  0x000037b8 hstore  0x00000004 , 0x0000804c 
+ 00016055  0x000037b9 call  0x00002c21 
+ 00016056  0x000037ba call  0x00004482 
+ 00016057  0x000037bb call  0x00003e9f 
+ 00016058  0x000037bd branch  0x00003ebf 
+ 00016059  0x000037c2 call  0x00003ebf 
+ 00016060  0x000037c3 fetch  0x00000001 , 0x000000a0 
+ 00016061  0x000037c4 nrtn  0x00000034 
+ 00016062  0x000037c5 branch  0x000067ed 
+ 00016063  0x000037c8 call  0x00003ee0 
+ 00016064  0x000037c9 arg  0x00000019 , 0x00000002 
+ 00016065  0x000037ca fetch  0x00000004 , 0x000046d3 
+ 00016066  0x000037cb isolate1  0x00000012 , 0x0000003f 
+ 00016067  0x000037cc call  0x00003ede , 0x00000001 
+ 00016068  0x000037cd call  0x0000680e 
+ 00016069  0x000037ce call  0x000063ee 
+ 00016070  0x000037d2 fetcht  0x00000001 , 0x000046e2 
+ 00016071  0x000037d3 call  0x000067dd 
+ 00016072  0x000037d4 fetcht  0x00000001 , 0x000046e3 
+ 00016073  0x000037d5 call  0x000067dd 
+ 00016074  0x000037d6 fetcht  0x00000001 , 0x000046e4 
+ 00016075  0x000037d7 call  0x000067dd 
+ 00016076  0x000037d9 fetcht  0x00000001 , 0x000046e5 
+ 00016077  0x000037da call  0x000067dd 
+ 00016078  0x000037db fetcht  0x00000001 , 0x000046e6 
+ 00016079  0x000037dc call  0x000067dd 
+ 00016080  0x000037dd fetcht  0x00000001 , 0x000046e7 
+ 00016081  0x000037de call  0x000067dd 
+ 00016082  0x000037df fetcht  0x00000001 , 0x000046ed 
+ 00016083  0x000037e0 call  0x000067dd 
+ 00016084  0x000037e1 fetcht  0x00000001 , 0x000046e8 
+ 00016085  0x000037e2 call  0x000067dd 
+ 00016086  0x000037e3 fetcht  0x00000001 , 0x000046e9 
+ 00016087  0x000037e4 call  0x000067dd 
+ 00016088  0x000037e5 fetcht  0x00000001 , 0x000046ea 
+ 00016089  0x000037e6 call  0x000067dd 
+ 00016090  0x000037e7 fetcht  0x00000001 , 0x000046eb 
+ 00016091  0x000037e8 call  0x000067dd 
+ 00016092  0x000037e9 fetcht  0x00000001 , 0x000046f3 
+ 00016093  0x000037ea branch  0x000067e1 
+ 00016094  0x000037ef arg  0x0000001e , 0x00000002 
+ 00016095  0x000037f0 rtn 
+ 00016096  0x000037f3 bpatch  0x000000e4 , 0x0000401c 
+ 00016097  0x000037f4 call  0x00003eee 
+ 00016098  0x000037f5 call  0x00003f36 
+ 00016099  0x000037f6 fetch  0x00000001 , 0x000046b8 
+ 00016100  0x000037f7 fetcht  0x00000001 , 0x000046b7 
+ 00016101  0x000037f8 store  0x00000001 , 0x000046b7 
+ 00016102  0x000037f9 isub  0x00000002 , 0x0000003e 
+ 00016103  0x000037fa nbranch  0x000033d4 , 0x00000005 
+ 00016104  0x000037fb fetch  0x00000001 , 0x000046be 
+ 00016105  0x000037fc fetcht  0x00000001 , 0x000046bd 
+ 00016106  0x000037fd store  0x00000001 , 0x000046bd 
+ 00016107  0x000037fe isub  0x00000002 , 0x0000003e 
+ 00016108  0x000037ff nbranch  0x000033d4 , 0x00000005 
+ 00016109  0x00003800 rtn 
+ 00016110  0x00003802 fetch  0x00000001 , 0x000046ea 
+ 00016111  0x00003803 rtneq  0x000000ff 
+ 00016112  0x00003804 arg  0x00000000 , 0x00000011 
+ 00016113  0x00003805 fetcht  0x00000001 , 0x000046ea 
+ 00016114  0x00003806 call  0x0000681d 
+ 00016115  0x00003807 setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00016116  0x00003808 fetcht  0x00000001 , 0x000046eb 
+ 00016117  0x00003809 call  0x0000681d 
+ 00016118  0x0000380a setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00016119  0x0000380b copy  0x00000011 , 0x0000003f 
+ 00016120  0x0000380c store  0x00000001 , 0x000046b8 
+ 00016121  0x0000380d beq  0x00000001 , 0x00003efe 
+ 00016122  0x0000380e beq  0x00000002 , 0x00003f02 
+ 00016123  0x0000380f fetch  0x00000001 , 0x000046b9 
+ 00016124  0x00003810 bbit1  0x00000007 , 0x00003f0e 
+ 00016125  0x00003811 rtn 
+ 00016126  0x00003814 fetch  0x00000001 , 0x000046b7 
+ 00016127  0x00003815 beq  0x00000000 , 0x00003f06 
+ 00016128  0x00003816 beq  0x00000003 , 0x00003f08 
+ 00016129  0x00003817 rtn 
+ 00016130  0x00003819 fetch  0x00000001 , 0x000046b7 
+ 00016131  0x0000381a beq  0x00000000 , 0x00003f0a 
+ 00016132  0x0000381b beq  0x00000003 , 0x00003f0c 
+ 00016133  0x0000381c rtn 
+ 00016134  0x0000381e jam  0x00000082 , 0x000046b9 
+ 00016135  0x0000381f rtn 
+ 00016136  0x00003821 jam  0x00000081 , 0x000046b9 
+ 00016137  0x00003822 rtn 
+ 00016138  0x00003824 jam  0x00000080 , 0x000046b9 
+ 00016139  0x00003825 rtn 
+ 00016140  0x00003827 jam  0x00000083 , 0x000046b9 
+ 00016141  0x00003828 rtn 
+ 00016142  0x0000382a fetch  0x00000001 , 0x000046b9 
+ 00016143  0x0000382b set0  0x00000007 , 0x0000003f 
+ 00016144  0x0000382c store  0x00000001 , 0x000046b9 
+ 00016145  0x0000382d beq  0x00000000 , 0x00003f16 
+ 00016146  0x0000382e beq  0x00000001 , 0x00003f19 
+ 00016147  0x0000382f beq  0x00000002 , 0x00003f1c 
+ 00016148  0x00003830 beq  0x00000003 , 0x00003f1f 
+ 00016149  0x00003831 rtn 
+ 00016150  0x00003833 fetch  0x00000001 , 0x000046b8 
+ 00016151  0x00003834 beq  0x00000003 , 0x00003f22 
+ 00016152  0x00003835 rtn 
+ 00016153  0x00003837 fetch  0x00000001 , 0x000046b8 
+ 00016154  0x00003838 beq  0x00000000 , 0x00003f22 
+ 00016155  0x00003839 rtn 
+ 00016156  0x0000383b fetch  0x00000001 , 0x000046b8 
+ 00016157  0x0000383c beq  0x00000003 , 0x00003f2c 
+ 00016158  0x0000383d rtn 
+ 00016159  0x0000383f fetch  0x00000001 , 0x000046b8 
+ 00016160  0x00003840 beq  0x00000000 , 0x00003f2c 
+ 00016161  0x00003841 rtn 
+ 00016162  0x00003843 fetch  0x00000001 , 0x000046bc 
+ 00016163  0x00003844 increase  0x00000001 , 0x0000003f 
+ 00016164  0x00003845 store  0x00000001 , 0x000046bc 
+ 00016165  0x00003846 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00016166  0x00003847 rtn  0x00000002 
+ 00016167  0x00003848 jam  0x00000000 , 0x000046bc 
+ 00016168  0x00003849 fetch  0x00000001 , 0x000046ba 
+ 00016169  0x0000384a increase  0x00000001 , 0x0000003f 
+ 00016170  0x0000384b store  0x00000001 , 0x000046ba 
+ 00016171  0x0000384c rtn 
+ 00016172  0x0000384e fetch  0x00000001 , 0x000046bb 
+ 00016173  0x0000384f increase  0x00000001 , 0x0000003f 
+ 00016174  0x00003850 store  0x00000001 , 0x000046bb 
+ 00016175  0x00003851 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00016176  0x00003852 rtn  0x00000002 
+ 00016177  0x00003853 jam  0x00000000 , 0x000046bb 
+ 00016178  0x00003854 fetch  0x00000001 , 0x000046ba 
+ 00016179  0x00003855 increase  0xffffffff , 0x0000003f 
+ 00016180  0x00003856 store  0x00000001 , 0x000046ba 
+ 00016181  0x00003857 rtn 
+ 00016182  0x0000385b fetch  0x00000001 , 0x000046e8 
+ 00016183  0x0000385c rtneq  0x000000ff 
+ 00016184  0x0000385d arg  0x00000000 , 0x00000011 
+ 00016185  0x0000385e fetcht  0x00000001 , 0x000046e8 
+ 00016186  0x0000385f call  0x0000681d 
+ 00016187  0x00003860 setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00016188  0x00003861 fetcht  0x00000001 , 0x000046e9 
+ 00016189  0x00003862 call  0x0000681d 
+ 00016190  0x00003863 setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00016191  0x00003864 copy  0x00000011 , 0x0000003f 
+ 00016192  0x00003865 store  0x00000001 , 0x000046be 
+ 00016193  0x00003866 beq  0x00000001 , 0x00003f46 
+ 00016194  0x00003867 beq  0x00000002 , 0x00003f4a 
+ 00016195  0x00003868 fetch  0x00000001 , 0x000046bf 
+ 00016196  0x00003869 bbit1  0x00000007 , 0x00003f56 
+ 00016197  0x0000386a rtn 
+ 00016198  0x0000386d fetch  0x00000001 , 0x000046bd 
+ 00016199  0x0000386e beq  0x00000000 , 0x00003f4e 
+ 00016200  0x0000386f beq  0x00000003 , 0x00003f50 
+ 00016201  0x00003870 rtn 
+ 00016202  0x00003872 fetch  0x00000001 , 0x000046bd 
+ 00016203  0x00003873 beq  0x00000000 , 0x00003f52 
+ 00016204  0x00003874 beq  0x00000003 , 0x00003f54 
+ 00016205  0x00003875 rtn 
+ 00016206  0x00003877 jam  0x00000082 , 0x000046bf 
+ 00016207  0x00003878 rtn 
+ 00016208  0x0000387a jam  0x00000081 , 0x000046bf 
+ 00016209  0x0000387b rtn 
+ 00016210  0x0000387d jam  0x00000080 , 0x000046bf 
+ 00016211  0x0000387e rtn 
+ 00016212  0x00003880 jam  0x00000083 , 0x000046bf 
+ 00016213  0x00003881 rtn 
+ 00016214  0x00003883 fetch  0x00000001 , 0x000046bf 
+ 00016215  0x00003884 set0  0x00000007 , 0x0000003f 
+ 00016216  0x00003885 store  0x00000001 , 0x000046bf 
+ 00016217  0x00003886 beq  0x00000000 , 0x00003f5e 
+ 00016218  0x00003887 beq  0x00000001 , 0x00003f61 
+ 00016219  0x00003888 beq  0x00000002 , 0x00003f64 
+ 00016220  0x00003889 beq  0x00000003 , 0x00003f67 
+ 00016221  0x0000388a rtn 
+ 00016222  0x0000388c fetch  0x00000001 , 0x000046be 
+ 00016223  0x0000388d beq  0x00000003 , 0x00003f6a 
+ 00016224  0x0000388e rtn 
+ 00016225  0x00003890 fetch  0x00000001 , 0x000046be 
+ 00016226  0x00003891 beq  0x00000000 , 0x00003f6a 
+ 00016227  0x00003892 rtn 
+ 00016228  0x00003894 fetch  0x00000001 , 0x000046be 
+ 00016229  0x00003895 beq  0x00000003 , 0x00003f6f 
+ 00016230  0x00003896 rtn 
+ 00016231  0x00003898 fetch  0x00000001 , 0x000046be 
+ 00016232  0x00003899 beq  0x00000000 , 0x00003f6f 
+ 00016233  0x0000389a rtn 
+ 00016234  0x0000389c jam  0x00000000 , 0x000046c2 
+ 00016235  0x0000389d fetch  0x00000001 , 0x000046c0 
+ 00016236  0x0000389e increase  0x00000001 , 0x0000003f 
+ 00016237  0x0000389f store  0x00000001 , 0x000046c0 
+ 00016238  0x000038a0 rtn 
+ 00016239  0x000038a2 jam  0x00000000 , 0x000046c1 
+ 00016240  0x000038a3 fetch  0x00000001 , 0x000046c0 
+ 00016241  0x000038a4 increase  0xffffffff , 0x0000003f 
+ 00016242  0x000038a5 store  0x00000001 , 0x000046c0 
+ 00016243  0x000038a6 rtn 
+ 00016244  0x000038aa setarg  0x00000002 
+ 00016245  0x000038ab store  0x00000001 , 0x00004680 
+ 00016246  0x000038ac rtn 
+ 00016247  0x000038af fetch  0x00000001 , 0x000041e2 
+ 00016248  0x000038b0 rtn  0x00000034 
+ 00016249  0x000038b1 call  0x00005271 
+ 00016250  0x000038b2 nrtn  0x00000034 
+ 00016251  0x000038b3 fetch  0x00000004 , 0x000046d3 
+ 00016252  0x000038b4 bbit1  0x00000003 , 0x00003f8a 
+ 00016253  0x000038b5 bbit1  0x00000000 , 0x00003f8a 
+ 00016254  0x000038b6 bbit1  0x00000005 , 0x00003f8a 
+ 00016255  0x000038b7 call  0x00003f97 
+ 00016256  0x000038b8 nrtn  0x00000028 
+ 00016257  0x000038ba arg  0x00000009 , 0x00000011 
+ 00016258  0x000038bb call  0x00004d63 
+ 00016259  0x000038bc fetch  0x00000002 , 0x0000424e 
+ 00016260  0x000038bd istore  0x00000002 , 0x00000005 
+ 00016261  0x000038be setarg  0x000002a1 
+ 00016262  0x000038bf istore  0x00000002 , 0x00000005 
+ 00016263  0x000038c0 fetch  0x00000007 , 0x0000469a 
+ 00016264  0x000038c1 istore  0x00000007 , 0x00000005 
+ 00016265  0x000038c2 rtn 
+ 00016266  0x000038c6 setarg  0x00000000 
+ 00016267  0x000038c7 store  0x00000007 , 0x0000469a 
+ 00016268  0x000038c8 branch  0x00003f81 
+ 00016269  0x000038cc fetch  0x00000002 , 0x000046aa 
+ 00016270  0x000038cd store  0x00000002 , 0x000046b0 
+ 00016271  0x000038ce rtn 
+ 00016272  0x000038d2 bpatch  0x000000e5 , 0x0000401c 
+ 00016273  0x000038d3 arg  0x00000007 , 0x00000011 
+ 00016274  0x000038d4 fetcht  0x00000002 , 0x0000446f 
+ 00016275  0x000038d5 call  0x00005a64 
+ 00016276  0x000038d6 fetch  0x00000007 , 0x0000469a 
+ 00016277  0x000038d7 istore  0x00000007 , 0x00000005 
+ 00016278  0x000038d8 rtn 
+ 00016279  0x000038db bpatch  0x000000e6 , 0x0000401c 
+ 00016280  0x000038dc disable  0x00000028 
+ 00016281  0x000038dd setarg  0x00000000 
+ 00016282  0x000038de store  0x00000006 , 0x0000469b 
+ 00016283  0x000038df call  0x00003fb5 
+ 00016284  0x000038e0 call  0x00004079 
+ 00016285  0x000038e1 call  0x0000407e 
+ 00016286  0x000038e2 call  0x00004099 
+ 00016287  0x000038e3 nrtn  0x00000028 
+ 00016288  0x000038e4 call  0x00003f8d 
+ 00016289  0x000038e5 arg  0x00000008 , 0x00000007 
+ 00016290  0x000038e6 branch  0x000043ce 
+ 00016291  0x000038e9 fetch  0x00000002 , 0x0000469b 
+ 00016292  0x000038ea sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016293  0x000038eb store  0x00000002 , 0x0000469b 
+ 00016294  0x000038ec branch  0x00007fe7 
+ 00016295  0x000038ee fetch  0x00000002 , 0x0000469d 
+ 00016296  0x000038ef sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016297  0x000038f0 store  0x00000002 , 0x0000469d 
+ 00016298  0x000038f1 branch  0x00007fe7 
+ 00016299  0x000038f3 fetch  0x00000002 , 0x0000469d 
+ 00016300  0x000038f4 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016301  0x000038f5 store  0x00000002 , 0x0000469d 
+ 00016302  0x000038f6 fetch  0x00000002 , 0x0000469b 
+ 00016303  0x000038f7 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016304  0x000038f8 store  0x00000002 , 0x0000469b 
+ 00016305  0x000038f9 call  0x00004002 
+ 00016306  0x000038fa branch  0x00007fe7 
+ 00016307  0x000038fc call  0x00004002 
+ 00016308  0x000038fd branch  0x00007fe7 
+ 00016309  0x000038ff fetch  0x00000001 , 0x00004239 
+ 00016310  0x00003900 rtnne  0x00000000 
+ 00016311  0x00003901 fetch  0x00000001 , 0x000046e0 
+ 00016312  0x00003902 beq  0x00000000 , 0x00003fe2 
+ 00016313  0x00003903 beq  0x00000001 , 0x00003fe2 
+ 00016314  0x00003904 beq  0x00000002 , 0x00003fe2 
+ 00016315  0x00003905 beq  0x00000003 , 0x00003fe2 
+ 00016316  0x00003906 beq  0x00000004 , 0x00003fc4 
+ 00016317  0x00003907 beq  0x00000005 , 0x00004010 
+ 00016318  0x00003908 beq  0x00000006 , 0x00003fe2 
+ 00016319  0x00003909 branch  0x00003fe2 
+ 00016320  0x0000390c fetch  0x00000001 , 0x000046a7 
+ 00016321  0x0000390d call  0x0000405d , 0x00000034 
+ 00016322  0x0000390e jam  0x00000001 , 0x000046a7 
+ 00016323  0x0000390f rtn 
+ 00016324  0x00003913 call  0x00003fc0 
+ 00016325  0x00003914 fetcht  0x00000001 , 0x000046f3 
+ 00016326  0x00003915 call  0x0000681d 
+ 00016327  0x00003916 nrtn  0x00000001 
+ 00016328  0x00003918 setarg  0x00000000 
+ 00016329  0x00003919 call  0x00006414 
+ 00016330  0x0000391a bne  0x00000030 , 0x000040d1 
+ 00016331  0x0000391b setarg  0x00000002 
+ 00016332  0x0000391c call  0x00006414 
+ 00016333  0x0000391d rtnbit0  0x00000007 
+ 00016334  0x0000391e call  0x0000405d 
+ 00016335  0x0000391f call  0x00003fde 
+ 00016336  0x00003920 store  0x00000001 , 0x000046a1 
+ 00016337  0x00003921 rshift4  0x0000003f , 0x0000003f 
+ 00016338  0x00003922 call  0x00004169 
+ 00016339  0x00003923 store  0x00000001 , 0x0000469c 
+ 00016340  0x00003924 fetch  0x00000001 , 0x000046a1 
+ 00016341  0x00003925 and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00016342  0x00003926 call  0x00004169 
+ 00016343  0x00003927 store  0x00000001 , 0x0000469e 
+ 00016344  0x00003928 fetch  0x00000001 , 0x000046f6 
+ 00016345  0x00003929 beq  0x00000000 , 0x00003fa3 
+ 00016346  0x0000392a beq  0x00000001 , 0x00003fab 
+ 00016347  0x0000392b beq  0x00000002 , 0x00003fa7 
+ 00016348  0x0000392c beq  0x00000003 , 0x00003fb3 
+ 00016349  0x0000392d rtn 
+ 00016350  0x00003930 setarg  0x00000012 
+ 00016351  0x00003931 branch  0x00006414 
+ 00016352  0x00003934 beq  0x00000031 , 0x00003fea 
+ 00016353  0x00003935 branch  0x000040d1 
+ 00016354  0x00003938 call  0x00003fc0 
+ 00016355  0x00003939 disable  0x00000028 
+ 00016356  0x0000393a fetcht  0x00000001 , 0x000046f3 
+ 00016357  0x0000393b call  0x0000681d 
+ 00016358  0x0000393c nrtn  0x00000001 
+ 00016359  0x0000393e setarg  0x00000000 
+ 00016360  0x0000393f call  0x00006414 
+ 00016361  0x00003940 bne  0x00000030 , 0x00003fe0 
+ 00016362  0x00003942 setarg  0x00000002 
+ 00016363  0x00003943 call  0x00006414 
+ 00016364  0x00003944 rtnbit0  0x00000007 
+ 00016365  0x00003945 call  0x0000405d 
+ 00016366  0x00003946 fetch  0x00000001 , 0x0000469b 
+ 00016367  0x00003947 call  0x00004165 
+ 00016368  0x00003948 store  0x00000002 , 0x0000469b 
+ 00016369  0x00003949 fetch  0x00000001 , 0x0000469d 
+ 00016370  0x0000394a call  0x00004165 
+ 00016371  0x0000394b store  0x00000002 , 0x0000469d 
+ 00016372  0x0000394c fetch  0x00000001 , 0x000046f6 
+ 00016373  0x0000394d beq  0x00000000 , 0x00003ffa 
+ 00016374  0x0000394e beq  0x00000001 , 0x00003ffc 
+ 00016375  0x0000394f beq  0x00000002 , 0x00003ffe 
+ 00016376  0x00003950 beq  0x00000003 , 0x00004000 
+ 00016377  0x00003951 rtn 
+ 00016378  0x00003954 call  0x00003fa3 
+ 00016379  0x00003955 branch  0x000040b3 
+ 00016380  0x00003957 call  0x00003fab 
+ 00016381  0x00003958 branch  0x000040b3 
+ 00016382  0x0000395a call  0x00003fa7 
+ 00016383  0x0000395b branch  0x000040b3 
+ 00016384  0x0000395d call  0x00003fb3 
+ 00016385  0x0000395e branch  0x000040b3 
+ 00016386  0x00003961 fetch  0x00000002 , 0x0000469d 
+ 00016387  0x00003962 fetcht  0x00000002 , 0x0000469b 
+ 00016388  0x00003963 store  0x00000002 , 0x0000469b 
+ 00016389  0x00003964 storet  0x00000002 , 0x0000469d 
+ 00016390  0x00003965 rtn 
+ 00016391  0x00003968 call  0x0000640f 
+ 00016392  0x00003969 nop  0x00000064 
+ 00016393  0x0000396a copy  0x00000012 , 0x0000003f 
+ 00016394  0x0000396b call  0x00006414 
+ 00016395  0x0000396c copy  0x0000003f , 0x00000012 
+ 00016396  0x0000396d call  0x00006411 
+ 00016397  0x0000396e nop  0x00000064 
+ 00016398  0x0000396f copy  0x00000012 , 0x0000003f 
+ 00016399  0x00003970 rtn 
+ 00016400  0x00003972 disable  0x00000028 
+ 00016401  0x00003973 fetcht  0x00000001 , 0x000046f3 
+ 00016402  0x00003974 call  0x0000681d 
+ 00016403  0x00003975 nrtn  0x00000001 
+ 00016404  0x00003976 arg  0x00000002 , 0x00000012 
+ 00016405  0x00003977 call  0x00004007 
+ 00016406  0x00003978 rtnbit0  0x00000007 
+ 00016407  0x00003979 arg  0x00000000 , 0x00000012 
+ 00016408  0x0000397a call  0x00004007 
+ 00016409  0x0000397b store  0x00000001 , 0x000046dd 
+ 00016410  0x0000397c bne  0x0000003e , 0x00004145 
+ 00016411  0x0000397d fetch  0x00000001 , 0x000046a7 
+ 00016412  0x0000397e call  0x00004039 , 0x00000034 
+ 00016413  0x0000397f jam  0x00000001 , 0x000046a7 
+ 00016414  0x00003980 call  0x00004039 
+ 00016415  0x00003981 fetch  0x00000001 , 0x000046a1 
+ 00016416  0x00003982 rshift4  0x0000003f , 0x0000003f 
+ 00016417  0x00003983 call  0x00004169 
+ 00016418  0x00003984 store  0x00000001 , 0x0000469c 
+ 00016419  0x00003985 fetch  0x00000001 , 0x000046a1 
+ 00016420  0x00003986 and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00016421  0x00003987 call  0x00004169 
+ 00016422  0x00003988 store  0x00000001 , 0x0000469e 
+ 00016423  0x00003989 fetch  0x00000001 , 0x000046f6 
+ 00016424  0x0000398a beq  0x00000000 , 0x00004031 
+ 00016425  0x0000398b beq  0x00000001 , 0x00004035 
+ 00016426  0x0000398c beq  0x00000002 , 0x00004033 
+ 00016427  0x0000398d beq  0x00000003 , 0x00004037 
+ 00016428  0x0000398e rtn 
+ 00016429  0x00003991 fetch  0x00000001 , 0x000046a4 
+ 00016430  0x00003992 beq  0x00000000 , 0x00004051 
+ 00016431  0x00003993 beq  0x00000001 , 0x00004045 
+ 00016432  0x00003994 rtn 
+ 00016433  0x00003998 call  0x00003fa3 
+ 00016434  0x00003999 branch  0x0000402d 
+ 00016435  0x0000399c call  0x00003fa7 
+ 00016436  0x0000399d branch  0x0000402d 
+ 00016437  0x000039a0 call  0x00003fab 
+ 00016438  0x000039a1 branch  0x0000402d 
+ 00016439  0x000039a4 call  0x00003fb3 
+ 00016440  0x000039a5 branch  0x0000402d 
+ 00016441  0x000039a8 call  0x0000640f 
+ 00016442  0x000039a9 call  0x0000405d 
+ 00016443  0x000039aa arg  0x00000005 , 0x0000003f 
+ 00016444  0x000039ab call  0x00006414 
+ 00016445  0x000039ac store  0x00000001 , 0x000046a1 
+ 00016446  0x000039ad arg  0x00000007 , 0x0000003f 
+ 00016447  0x000039ae call  0x00006414 
+ 00016448  0x000039af store  0x00000001 , 0x000046a2 
+ 00016449  0x000039b0 arg  0x00000008 , 0x0000003f 
+ 00016450  0x000039b1 call  0x00006414 
+ 00016451  0x000039b2 store  0x00000001 , 0x000046a3 
+ 00016452  0x000039b3 branch  0x00006411 
+ 00016453  0x000039b7 fetch  0x00000001 , 0x000046a2 
+ 00016454  0x000039b8 rtnne  0x00000000 
+ 00016455  0x000039b9 fetch  0x00000001 , 0x000046a3 
+ 00016456  0x000039ba sub  0x0000003f , 0x0000002d , 0x0000003e 
+ 00016457  0x000039bb rtn  0x00000002 
+ 00016458  0x000039bc jam  0x00000000 , 0x000046a4 
+ 00016459  0x000039bd setarg  0x0000ba41 
+ 00016460  0x000039be call  0x00006405 
+ 00016461  0x000039bf setarg  0x00000032 
+ 00016462  0x000039c0 call  0x00006405 
+ 00016463  0x000039c1 setarg  0x0000b541 
+ 00016464  0x000039c2 branch  0x00006405 
+ 00016465  0x000039c4 fetch  0x00000001 , 0x000046a2 
+ 00016466  0x000039c5 rtnne  0x00000000 
+ 00016467  0x000039c6 fetch  0x00000001 , 0x000046a3 
+ 00016468  0x000039c7 sub  0x0000003f , 0x0000002d , 0x0000003e 
+ 00016469  0x000039c8 nrtn  0x00000002 
+ 00016470  0x000039c9 jam  0x00000001 , 0x000046a4 
+ 00016471  0x000039ca setarg  0x0000ba41 
+ 00016472  0x000039cb call  0x00006405 
+ 00016473  0x000039cc setarg  0x00008032 
+ 00016474  0x000039cd call  0x00006405 
+ 00016475  0x000039ce setarg  0x0000b541 
+ 00016476  0x000039cf branch  0x00006405 
+ 00016477  0x000039d4 arg  0x00000003 , 0x0000003f 
+ 00016478  0x000039d5 call  0x00006414 
+ 00016479  0x000039d6 store  0x00000002 , 0x0000469b 
+ 00016480  0x000039d7 arg  0x00000004 , 0x0000003f 
+ 00016481  0x000039d8 call  0x00006414 
+ 00016482  0x000039d9 store  0x00000002 , 0x0000469d 
+ 00016483  0x000039da rtn 
+ 00016484  0x000039dd arg  0x0000001b , 0x00000002 
+ 00016485  0x000039de call  0x000067fb 
+ 00016486  0x000039df arg  0x0000001b , 0x00000002 
+ 00016487  0x000039e0 call  0x0000681d 
+ 00016488  0x000039e1 rtn  0x00000001 
+ 00016489  0x000039e2 hfetch  0x00000001 , 0x00008109 
+ 00016490  0x000039e3 set1  0x00000004 , 0x0000003f 
+ 00016491  0x000039e4 hstore  0x00000001 , 0x00008109 
+ 00016492  0x000039e5 rtn 
+ 00016493  0x000039e8 fetcht  0x00000001 , 0x000046c0 
+ 00016494  0x000039e9 hfetch  0x00000001 , 0x00008109 
+ 00016495  0x000039ea iadd  0x00000002 , 0x0000003f 
+ 00016496  0x000039eb rtn  0x00000034 
+ 00016497  0x000039ec store  0x00000001 , 0x0000469f 
+ 00016498  0x000039ed jam  0x00000000 , 0x000046c0 
+ 00016499  0x000039ee branch  0x00007fe7 
+ 00016500  0x000039f0 fetcht  0x00000001 , 0x000046c0 
+ 00016501  0x000039f1 hfetch  0x00000001 , 0x00008109 
+ 00016502  0x000039f2 iadd  0x00000002 , 0x0000003f 
+ 00016503  0x000039f3 store  0x00000001 , 0x000046c0 
+ 00016504  0x000039f4 rtn 
+ 00016505  0x000039f6 fetch  0x00000001 , 0x000046c0 
+ 00016506  0x000039f7 rtn  0x00000034 
+ 00016507  0x000039f8 store  0x00000001 , 0x0000469f 
+ 00016508  0x000039f9 jam  0x00000000 , 0x000046c0 
+ 00016509  0x000039fa branch  0x00007fe7 
+ 00016510  0x000039fd fetch  0x00000001 , 0x000046ba 
+ 00016511  0x000039fe rtn  0x00000034 
+ 00016512  0x000039ff store  0x00000001 , 0x000046a0 
+ 00016513  0x00003a00 jam  0x00000000 , 0x000046ba 
+ 00016514  0x00003a01 branch  0x00007fe7 
+ 00016515  0x00003a04 arg  0x00000000 , 0x00000011 
+ 00016516  0x00003a05 fetcht  0x00000001 , 0x000046e2 
+ 00016517  0x00003a06 call  0x0000681d 
+ 00016518  0x00003a07 setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00016519  0x00003a08 fetcht  0x00000001 , 0x000046e3 
+ 00016520  0x00003a09 call  0x0000681d 
+ 00016521  0x00003a0a setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00016522  0x00003a0b fetcht  0x00000001 , 0x000046e4 
+ 00016523  0x00003a0c call  0x0000681d 
+ 00016524  0x00003a0d setflag  0x00000001 , 0x00000002 , 0x00000011 
+ 00016525  0x00003a0e call  0x00004090 
+ 00016526  0x00003a10 copy  0x00000011 , 0x0000003f 
+ 00016527  0x00003a11 rtn 
+ 00016528  0x00003a13 fetch  0x00000001 , 0x000046e5 
+ 00016529  0x00003a14 rtneq  0x000000ff 
+ 00016530  0x00003a15 fetcht  0x00000001 , 0x000046e5 
+ 00016531  0x00003a16 call  0x0000681d 
+ 00016532  0x00003a17 setflag  0x00000001 , 0x00000003 , 0x00000011 
+ 00016533  0x00003a18 fetcht  0x00000001 , 0x000046e6 
+ 00016534  0x00003a19 call  0x0000681d 
+ 00016535  0x00003a1a setflag  0x00000001 , 0x00000004 , 0x00000011 
+ 00016536  0x00003a1b rtn 
+ 00016537  0x00003a1e call  0x00004083 
+ 00016538  0x00003a1f call  0x000040a8 
+ 00016539  0x00003a20 call  0x000040a3 
+ 00016540  0x00003a21 copy  0x00000011 , 0x0000003f 
+ 00016541  0x00003a22 fetcht  0x00000001 , 0x0000469a 
+ 00016542  0x00003a23 store  0x00000001 , 0x0000469a 
+ 00016543  0x00003a24 ixor  0x00000002 , 0x0000003f 
+ 00016544  0x00003a25 sub  0x0000003f , 0x00000000 , 0x0000003e 
+ 00016545  0x00003a26 rtn  0x00000005 
+ 00016546  0x00003a27 branch  0x00007fe7 
+ 00016547  0x00003a2a rtnmark0  0x00000026 
+ 00016548  0x00003a2b copy  0x00000011 , 0x0000003f 
+ 00016549  0x00003a2c rtn  0x00000034 
+ 00016550  0x00003a2d store  0x00000001 , 0x0000469a 
+ 00016551  0x00003a2e branch  0x00007fe7 
+ 00016552  0x00003a32 fetch  0x00000002 , 0x00004682 
+ 00016553  0x00003a33 bbit1  0x00000009 , 0x000040ad 
+ 00016554  0x00003a34 fetch  0x00000002 , 0x00004682 
+ 00016555  0x00003a35 bbit1  0x00000000 , 0x000040b0 
+ 00016556  0x00003a36 rtn 
+ 00016557  0x00003a38 copy  0x00000011 , 0x0000003f 
+ 00016558  0x00003a39 nbranch  0x00005820 , 0x00000034 
+ 00016559  0x00003a3a branch  0x00005822 
+ 00016560  0x00003a3c copy  0x00000011 , 0x0000003f 
+ 00016561  0x00003a3d nbranch  0x00002bc7 , 0x00000034 
+ 00016562  0x00003a3e branch  0x00002bc9 
+ 00016563  0x00003a42 bpatch  0x000000e7 , 0x0000401c 
+ 00016564  0x00003a43 arg  0x0000001a , 0x00000002 
+ 00016565  0x00003a44 fetch  0x00000004 , 0x000046d3 
+ 00016566  0x00003a45 isolate1  0x00000012 , 0x0000003f 
+ 00016567  0x00003a46 call  0x000040be , 0x00000001 
+ 00016568  0x00003a47 call  0x0000681d 
+ 00016569  0x00003a48 rtn  0x00000001 
+ 00016570  0x00003a49 setarg  0x0000000a 
+ 00016571  0x00003a4a call  0x00006414 
+ 00016572  0x00003a4b nop  0x000003e8 
+ 00016573  0x00003a4c branch  0x000040b3 
+ 00016574  0x00003a4e arg  0x0000001f , 0x00000002 
+ 00016575  0x00003a4f rtn 
+ 00016576  0x00003a52 fetch  0x00000004 , 0x000046d3 
+ 00016577  0x00003a53 bbit1  0x00000012 , 0x000040c4 
+ 00016578  0x00003a55 arg  0x0000001a , 0x00000002 
+ 00016579  0x00003a56 branch  0x000067fe 
+ 00016580  0x00003a58 arg  0x0000001f , 0x00000002 
+ 00016581  0x00003a59 branch  0x000067fe 
+ 00016582  0x00003a5d call  0x00003d36 
+ 00016583  0x00003a5e rtn  0x0000002b 
+ 00016584  0x00003a5f call  0x000040c0 
+ 00016585  0x00003a60 fetch  0x00000001 , 0x000046e0 
+ 00016586  0x00003a61 beq  0x00000005 , 0x000040d5 
+ 00016587  0x00003a63 call  0x000040d9 
+ 00016588  0x00003a64 beq  0x00000030 , 0x000040e0 
+ 00016589  0x00003a65 beq  0x00000031 , 0x000040ea 
+ 00016590  0x00003a66 call  0x000040d1 
+ 00016591  0x00003a67 nop  0x000003e8 
+ 00016592  0x00003a68 branch  0x000040cb 
+ 00016593  0x00003a6a bpatch  0x000000e8 , 0x0000401d 
+ 00016594  0x00003a6b fetch  0x00000004 , 0x000046d3 
+ 00016595  0x00003a6c bbit1  0x00000012 , 0x000063e0 
+ 00016596  0x00003a6d branch  0x000063d1 
+ 00016597  0x00003a70 call  0x000040d9 
+ 00016598  0x00003a71 beq  0x0000003e , 0x0000414b 
+ 00016599  0x00003a72 call  0x00004145 
+ 00016600  0x00003a73 branch  0x000040d5 
+ 00016601  0x00003a76 setarg  0x00000001 
+ 00016602  0x00003a77 call  0x00006414 
+ 00016603  0x00003a78 store  0x00000001 , 0x000046de 
+ 00016604  0x00003a79 setarg  0x00000000 
+ 00016605  0x00003a7a call  0x00006414 
+ 00016606  0x00003a7b store  0x00000001 , 0x000046dd 
+ 00016607  0x00003a7c rtn 
+ 00016608  0x00003a7e fetch  0x00000001 , 0x000046de 
+ 00016609  0x00003a7f beq  0x000000d1 , 0x00004139 
+ 00016610  0x00003a80 beq  0x000000d2 , 0x000040f8 
+ 00016611  0x00003a81 beq  0x00000002 , 0x000040ee 
+ 00016612  0x00003a82 beq  0x00000054 , 0x000040e6 
+ 00016613  0x00003a83 rtn 
+ 00016614  0x00003a85 jam  0x00000002 , 0x000046e0 
+ 00016615  0x00003a86 rtn 
+ 00016616  0x00003a88 jam  0x00000006 , 0x000046e0 
+ 00016617  0x00003a89 rtn 
+ 00016618  0x00003a8b fetch  0x00000001 , 0x000046de 
+ 00016619  0x00003a8c beq  0x00000070 , 0x000040e8 
+ 00016620  0x00003a8d jam  0x00000001 , 0x000046e0 
+ 00016621  0x00003a8e rtn 
+ 00016622  0x00003a90 jam  0x00000004 , 0x000046e0 
+ 00016623  0x00003a91 call  0x000040f6 
+ 00016624  0x00003a92 setarg  0x00003426 
+ 00016625  0x00003a93 call  0x00006413 
+ 00016626  0x00003a94 setarg  0x00000419 
+ 00016627  0x00003a95 call  0x00006413 
+ 00016628  0x00003a97 setarg  0x00000009 
+ 00016629  0x00003a98 branch  0x00006413 
+ 00016630  0x00003a9a setarg  0x00005a09 
+ 00016631  0x00003a9b branch  0x00006413 
+ 00016632  0x00003a9e jam  0x00000003 , 0x000046e0 
+ 00016633  0x00003a9f call  0x000040f6 
+ 00016634  0x00003aa0 setarg  0x00000f0d 
+ 00016635  0x00003aa1 call  0x00006413 
+ 00016636  0x00003aa2 setarg  0x0000e31d 
+ 00016637  0x00003aa3 call  0x00006413 
+ 00016638  0x00003aa4 setarg  0x0000d27d 
+ 00016639  0x00003aa5 call  0x00006413 
+ 00016640  0x00003aa6 call  0x00004102 
+ 00016641  0x00003aa7 branch  0x0000411a 
+ 00016642  0x00003aaa setarg  0x0000351b 
+ 00016643  0x00003aab call  0x00006413 
+ 00016644  0x00003aac setarg  0x0000b428 
+ 00016645  0x00003aad call  0x00006413 
+ 00016646  0x00003aae setarg  0x00004629 
+ 00016647  0x00003aaf call  0x00006413 
+ 00016648  0x00003ab0 setarg  0x0000962a 
+ 00016649  0x00003ab1 call  0x00006413 
+ 00016650  0x00003ab2 setarg  0x00008c2b 
+ 00016651  0x00003ab3 call  0x00006413 
+ 00016652  0x00003ab4 setarg  0x00006e2c 
+ 00016653  0x00003ab5 call  0x00006413 
+ 00016654  0x00003ab6 setarg  0x0000642d 
+ 00016655  0x00003ab7 call  0x00006413 
+ 00016656  0x00003ab8 setarg  0x00005f38 
+ 00016657  0x00003ab9 call  0x00006413 
+ 00016658  0x00003aba setarg  0x00000f39 
+ 00016659  0x00003abb call  0x00006413 
+ 00016660  0x00003abc setarg  0x0000323a 
+ 00016661  0x00003abd call  0x00006413 
+ 00016662  0x00003abe setarg  0x0000473b 
+ 00016663  0x00003abf call  0x00006413 
+ 00016664  0x00003ac0 setarg  0x00001042 
+ 00016665  0x00003ac1 branch  0x00006413 
+ 00016666  0x00003ac3 setarg  0x00002e54 
+ 00016667  0x00003ac4 call  0x00006413 
+ 00016668  0x00003ac5 setarg  0x0000f255 
+ 00016669  0x00003ac6 call  0x00006413 
+ 00016670  0x00003ac7 setarg  0x0000f461 
+ 00016671  0x00003ac8 call  0x00006413 
+ 00016672  0x00003ac9 setarg  0x00007063 
+ 00016673  0x00003aca call  0x00006413 
+ 00016674  0x00003acb setarg  0x00005275 
+ 00016675  0x00003acc call  0x00006413 
+ 00016676  0x00003acd setarg  0x00004176 
+ 00016677  0x00003ace call  0x00006413 
+ 00016678  0x00003acf setarg  0x0000ed77 
+ 00016679  0x00003ad0 call  0x00006413 
+ 00016680  0x00003ad1 setarg  0x00002378 
+ 00016681  0x00003ad2 call  0x00006413 
+ 00016682  0x00003ad3 setarg  0x00004679 
+ 00016683  0x00003ad4 call  0x00006413 
+ 00016684  0x00003ad5 setarg  0x0000e57a 
+ 00016685  0x00003ad6 call  0x00006413 
+ 00016686  0x00003ad7 setarg  0x0000487c 
+ 00016687  0x00003ad8 call  0x00006413 
+ 00016688  0x00003ad9 setarg  0x0000777e 
+ 00016689  0x00003ada call  0x00006413 
+ 00016690  0x00003adb setarg  0x0000017f 
+ 00016691  0x00003adc call  0x00006413 
+ 00016692  0x00003add setarg  0x0000000b 
+ 00016693  0x00003ade call  0x00006413 
+ 00016694  0x00003adf setarg  0x0000007f 
+ 00016695  0x00003ae0 call  0x00006413 
+ 00016696  0x00003ae1 branch  0x000040f4 
+ 00016697  0x00003ae5 jam  0x00000000 , 0x000046e0 
+ 00016698  0x00003ae6 call  0x000040f6 
+ 00016699  0x00003ae7 setarg  0x0000100d 
+ 00016700  0x00003ae8 call  0x00006413 
+ 00016701  0x00003ae9 setarg  0x0000ed1d 
+ 00016702  0x00003aea call  0x00006413 
+ 00016703  0x00003aeb setarg  0x0000807d 
+ 00016704  0x00003aec call  0x00006413 
+ 00016705  0x00003aed call  0x00004102 
+ 00016706  0x00003aee setarg  0x00000943 
+ 00016707  0x00003aef call  0x00006413 
+ 00016708  0x00003af0 branch  0x0000411a 
+ 00016709  0x00003af4 fetcht  0x00000001 , 0x000046dc 
+ 00016710  0x00003af5 call  0x00006829 
+ 00016711  0x00003af6 call  0x00007ec1 
+ 00016712  0x00003af7 fetcht  0x00000001 , 0x000046dc 
+ 00016713  0x00003af8 call  0x00006825 
+ 00016714  0x00003af9 branch  0x00007ec1 
+ 00016715  0x00003afc jam  0x00000005 , 0x000046e0 
+ 00016716  0x00003afd setarg  0x0000ba41 
+ 00016717  0x00003afe call  0x00006405 
+ 00016718  0x00003aff setarg  0x00000d11 
+ 00016719  0x00003b00 call  0x00006405 
+ 00016720  0x00003b01 setarg  0x0000041b 
+ 00016721  0x00003b02 call  0x00006405 
+ 00016722  0x00003b03 setarg  0x0000041c 
+ 00016723  0x00003b04 call  0x00006405 
+ 00016724  0x00003b05 setarg  0x00000f1d 
+ 00016725  0x00003b06 call  0x00006405 
+ 00016726  0x00003b07 setarg  0x00000032 
+ 00016727  0x00003b08 call  0x00006405 
+ 00016728  0x00003b09 setarg  0x0000b541 
+ 00016729  0x00003b0a branch  0x00006405 
+ 00016730  0x00003b0f setarg  0x0000ba41 
+ 00016731  0x00003b10 call  0x00006405 
+ 00016732  0x00003b11 nop  0x00000fa0 
+ 00016733  0x00003b12 setarg  0x0000ff7f 
+ 00016734  0x00003b13 call  0x00006405 
+ 00016735  0x00003b14 copy  0x00000011 , 0x0000003f 
+ 00016736  0x00003b15 call  0x00006405 
+ 00016737  0x00003b16 setarg  0x0000007f 
+ 00016738  0x00003b17 call  0x00006405 
+ 00016739  0x00003b18 setarg  0x0000b541 
+ 00016740  0x00003b19 branch  0x00006405 
+ 00016741  0x00003b1c rtnbit0  0x00000007 
+ 00016742  0x00003b1d arg  0x0000ff00 , 0x00000002 
+ 00016743  0x00003b1e ior  0x00000002 , 0x0000003f 
+ 00016744  0x00003b1f rtn 
+ 00016745  0x00003b22 rtnbit0  0x00000003 
+ 00016746  0x00003b23 arg  0x000000f0 , 0x00000002 
+ 00016747  0x00003b24 ior  0x00000002 , 0x0000003f 
+ 00016748  0x00003b25 rtn 
+ 00016749  0x00003b29 call  0x00005892 
+ 00016750  0x00003b2a nrtn  0x00000034 
+ 00016751  0x00003b2b fetch  0x00000001 , 0x000046c5 
+ 00016752  0x00003b2c and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00016753  0x00003b2d rtnne  0x00000003 
+ 00016754  0x00003b2e fetch  0x00000004 , 0x000046d3 
+ 00016755  0x00003b2f bbit1  0x00000003 , 0x00004179 
+ 00016756  0x00003b30 bbit1  0x00000000 , 0x00004179 
+ 00016757  0x00003b31 bbit1  0x00000005 , 0x00004179 
+ 00016758  0x00003b32 call  0x00003f97 
+ 00016759  0x00003b33 nrtn  0x00000028 
+ 00016760  0x00003b34 branch  0x00003f90 
+ 00016761  0x00003b37 setarg  0x00000000 
+ 00016762  0x00003b38 store  0x00000007 , 0x0000469a 
+ 00016763  0x00003b39 branch  0x00003f90 
+ 00016764  0x00003b3c copy  0x00000013 , 0x0000003f 
+ 00016765  0x00003b3d beq  0x00000014 , 0x000041c3 
+ 00016766  0x00003b3e beq  0x00000001 , 0x000042ca 
+ 00016767  0x00003b3f beq  0x00000015 , 0x000041d9 
+ 00016768  0x00003b40 beq  0x00000002 , 0x000041d9 
+ 00016769  0x00003b41 beq  0x00000005 , 0x000041d6 
+ 00016770  0x00003b42 beq  0x00000010 , 0x0000426c 
+ 00016771  0x00003b43 beq  0x00000012 , 0x0000429b 
+ 00016772  0x00003b44 beq  0x00000006 , 0x000041d5 
+ 00016773  0x00003b45 beq  0x00000004 , 0x000041cc 
+ 00016774  0x00003b46 beq  0x00000013 , 0x000041cc 
+ 00016775  0x00003b47 beq  0x0000000a , 0x000041ca 
+ 00016776  0x00003b48 beq  0x0000002e , 0x000033cd 
+ 00016777  0x00003b49 beq  0x00000031 , 0x000041b4 
+ 00016778  0x00003b4a beq  0x00000032 , 0x000041b6 
+ 00016779  0x00003b4b beq  0x0000003e , 0x00004191 
+ 00016780  0x00003b4c beq  0x00000027 , 0x0000438e 
+ 00016781  0x00003b4d beq  0x00000039 , 0x0000419c 
+ 00016782  0x00003b4e beq  0x0000003a , 0x00004192 
+ 00016783  0x00003b4f beq  0x0000003c , 0x0000419a 
+ 00016784  0x00003b50 rtn 
+ 00016785  0x00003b54 branch  0x00003410 
+ 00016786  0x00003b57 jam  0x00000001 , 0x0000478b 
+ 00016787  0x00003b58 fetch  0x00000001 , 0x0000471e 
+ 00016788  0x00003b59 nbranch  0x00004492 , 0x00000034 
+ 00016789  0x00003b5a fetch  0x00000001 , 0x00004720 
+ 00016790  0x00003b5b fetcht  0x00000001 , 0x00004703 
+ 00016791  0x00003b5c isub  0x00000002 , 0x0000003e 
+ 00016792  0x00003b5d branch  0x0000340a , 0x00000005 
+ 00016793  0x00003b5e rtn 
+ 00016794  0x00003b60 jam  0x00000001 , 0x0000478b 
+ 00016795  0x00003b61 rtn 
+ 00016796  0x00003b63 jam  0x00000001 , 0x0000478b 
+ 00016797  0x00003b64 arg  0x00000003 , 0x00000007 
+ 00016798  0x00003b65 call  0x000043d2 
+ 00016799  0x00003b66 setarg  0x00000000 
+ 00016800  0x00003b67 store  0x00000002 , 0x00004707 
+ 00016801  0x00003b68 jam  0x00000000 , 0x000046a7 
+ 00016802  0x00003b6a fetch  0x00000001 , 0x000046e0 
+ 00016803  0x00003b6b sub  0x0000003f , 0x00000005 , 0x0000003e 
+ 00016804  0x00003b6c call  0x00004039 , 0x00000005 
+ 00016805  0x00003b6d ncall  0x0000405d , 0x00000005 
+ 00016806  0x00003b6f fetch  0x00000001 , 0x00000004 , 0x000046d3 
+ 00016807  0x00003b70 bbit1  0x00000013 , 0x000041af 
+ 00016808  0x00003b71 call  0x000041aa 
+ 00016809  0x00003b72 branch  0x000065d1 
+ 00016810  0x00003b75 call  0x00002c7a 
+ 00016811  0x00003b76 add  0x00000013 , 0x000000ae , 0x00000011 
+ 00016812  0x00003b77 arg  0x0000005b , 0x00000012 
+ 00016813  0x00003b78 arg  0x00000004 , 0x00000002 
+ 00016814  0x00003b79 rtn 
+ 00016815  0x00003b7c call  0x00002c7a 
+ 00016816  0x00003b7d add  0x00000013 , 0x000000ae , 0x00000012 
+ 00016817  0x00003b7e ifetch  0x00000001 , 0x00000012 
+ 00016818  0x00003b7f store  0x00000001 , 0x0000477b 
+ 00016819  0x00003b80 branch  0x00004435 
+ 00016820  0x00003b84 arg  0x00000002 , 0x00000007 
+ 00016821  0x00003b85 branch  0x000041b9 
+ 00016822  0x00003b87 jam  0x00000002 , 0x000046c6 
+ 00016823  0x00003b88 arg  0x00000001 , 0x00000007 
+ 00016824  0x00003b89 branch  0x000041b9 
+ 00016825  0x00003b8d fetch  0x00000001 , 0x000046c5 
+ 00016826  0x00003b8e qset1  0x0000003f 
+ 00016827  0x00003b8f store  0x00000001 , 0x000046c5 
+ 00016828  0x00003b90 rtn 
+ 00016829  0x00003b93 fetch  0x00000001 , 0x000046c5 
+ 00016830  0x00003b94 qset0  0x0000003f 
+ 00016831  0x00003b95 store  0x00000001 , 0x000046c5 
+ 00016832  0x00003b96 rtn 
+ 00016833  0x00003b98 jam  0x00000000 , 0x000046c5 
+ 00016834  0x00003b99 rtn 
+ 00016835  0x00003b9c fetch  0x00000002 , 0x0000420a 
+ 00016836  0x00003b9d set0  0x00000000 , 0x0000003f 
+ 00016837  0x00003b9e store  0x00000002 , 0x0000420a 
+ 00016838  0x00003b9f setarg  0x00000000 
+ 00016839  0x00003ba0 store  0x00000002 , 0x000046ae 
+ 00016840  0x00003ba1 call  0x00003f8d 
+ 00016841  0x00003ba2 branch  0x000042ca 
+ 00016842  0x00003ba5 call  0x000063cb 
+ 00016843  0x00003ba6 branch  0x000033dd 
+ 00016844  0x00003ba9 fetch  0x00000001 , 0x0000471e 
+ 00016845  0x00003baa nbranch  0x00004492 , 0x00000034 
+ 00016846  0x00003bab fetch  0x00000002 , 0x00004682 
+ 00016847  0x00003bac bbit1  0x0000000c , 0x000042b0 
+ 00016848  0x00003bad fetch  0x00000004 , 0x000046d3 
+ 00016849  0x00003bae bbit1  0x00000000 , 0x000041d7 
+ 00016850  0x00003baf bbit1  0x00000005 , 0x000042b0 
+ 00016851  0x00003bb0 bbit1  0x00000003 , 0x00002ead 
+ 00016852  0x00003bb1 branch  0x000033a7 
+ 00016853  0x00003bb5 branch  0x00003f74 
+ 00016854  0x00003bb8 rtn 
+ 00016855  0x00003bbb call  0x000043c0 
+ 00016856  0x00003bbc branch  0x0000659a 
+ 00016857  0x00003bbf bpatch  0x000000e9 , 0x0000401d 
+ 00016858  0x00003bc0 call  0x000041e7 
+ 00016859  0x00003bc1 fetch  0x00000004 , 0x000046d3 
+ 00016860  0x00003bc2 bbit1  0x00000000 , 0x000041d7 
+ 00016861  0x00003bc3 bbit1  0x00000003 , 0x00002ead 
+ 00016862  0x00003bc4 fetch  0x00000001 , 0x0000471e 
+ 00016863  0x00003bc5 nbranch  0x00004492 , 0x00000034 
+ 00016864  0x00003bc6 fetch  0x00000002 , 0x00004208 
+ 00016865  0x00003bc7 bbit1  0x00000007 , 0x000041f5 
+ 00016866  0x00003bc8 bbit1  0x00000000 , 0x000033a9 
+ 00016867  0x00003bc9 bbit1  0x00000001 , 0x000041ef 
+ 00016868  0x00003bca bbit1  0x00000002 , 0x000041f2 
+ 00016869  0x00003bcb bbit1  0x00000003 , 0x000041f2 
+ 00016870  0x00003bcc branch  0x000042b0 
+ 00016871  0x00003bce setarg  0x00000000 
+ 00016872  0x00003bcf store  0x00000008 , 0x000046b7 
+ 00016873  0x00003bd0 istore  0x00000004 , 0x00000005 
+ 00016874  0x00003bd1 jam  0x00000000 , 0x000046b4 
+ 00016875  0x00003bd2 jam  0x00000000 , 0x000046a7 
+ 00016876  0x00003bd3 jam  0x00000000 , 0x000041e2 
+ 00016877  0x00003bd4 jam  0x00000000 , 0x00004429 
+ 00016878  0x00003bd5 rtn 
+ 00016879  0x00003bd8 bbit1  0x00000005 , 0x000041f2 
+ 00016880  0x00003bd9 bbit1  0x00000003 , 0x000041f2 
+ 00016881  0x00003bda branch  0x000042b0 
+ 00016882  0x00003bdc fetch  0x00000002 , 0x00004682 
+ 00016883  0x00003bdd bbit1  0x0000000c , 0x000042b0 
+ 00016884  0x00003bde branch  0x000033a7 
+ 00016885  0x00003be1 call  0x000041c1 
+ 00016886  0x00003be2 fetch  0x00000002 , 0x00004208 
+ 00016887  0x00003be3 bbit1  0x00000000 , 0x000033a9 
+ 00016888  0x00003be4 branch  0x000033a7 
+ 00016889  0x00003be7 call  0x000043d6 
+ 00016890  0x00003be8 call  0x00004243 
+ 00016891  0x00003be9 call  0x00004246 
+ 00016892  0x00003bea call  0x00004250 
+ 00016893  0x00003beb call  0x0000445d 
+ 00016894  0x00003bed call  0x00004443 
+ 00016895  0x00003bee call  0x00004333 
+ 00016896  0x00003bef call  0x000043a5 
+ 00016897  0x00003bf0 call  0x000043eb 
+ 00016898  0x00003bf1 call  0x00004209 
+ 00016899  0x00003bf2 call  0x00004231 
+ 00016900  0x00003bf3 call  0x00004234 
+ 00016901  0x00003bf4 call  0x00004237 
+ 00016902  0x00003bf5 call  0x0000423a 
+ 00016903  0x00003bf6 call  0x0000423d 
+ 00016904  0x00003bf7 branch  0x00004240 
+ 00016905  0x00003bfc fetch  0x00000001 , 0x00004711 
+ 00016906  0x00003bfd rtn  0x00000034 
+ 00016907  0x00003bfe increase  0xffffffff , 0x0000003f 
+ 00016908  0x00003bff store  0x00000001 , 0x00004711 
+ 00016909  0x00003c00 nrtn  0x00000034 
+ 00016910  0x00003c01 branch  0x0000420f 
+ 00016911  0x00003c03 fetch  0x00000001 , 0x00004712 
+ 00016912  0x00003c04 rtneq  0x00000000 
+ 00016913  0x00003c05 beq  0x00000005 , 0x00004216 
+ 00016914  0x00003c07 call  0x00004225 
+ 00016915  0x00003c08 jam  0x00000005 , 0x00004712 
+ 00016916  0x00003c09 jam  0x00000005 , 0x00004711 
+ 00016917  0x00003c0a rtn 
+ 00016918  0x00003c0c call  0x0000422c 
+ 00016919  0x00003c0d jam  0x00000004 , 0x00004712 
+ 00016920  0x00003c0e jam  0x00000005 , 0x00004711 
+ 00016921  0x00003c0f rtn 
+ 00016922  0x00003c13 setarg  0x00008006 
+ 00016923  0x00003c14 call  0x00006413 
+ 00016924  0x00003c15 nop  0x000003e8 
+ 00016925  0x00003c16 jam  0x00000000 , 0x00004711 
+ 00016926  0x00003c17 jam  0x00000000 , 0x00004712 
+ 00016927  0x00003c18 branch  0x000040e0 
+ 00016928  0x00003c1b setarg  0x0000a006 
+ 00016929  0x00003c1c call  0x00006413 
+ 00016930  0x00003c1d setarg  0x0000a005 
+ 00016931  0x00003c1e branch  0x00006413 
+ 00016932  0x00003c20 jam  0x00000000 , 0x00004711 
+ 00016933  0x00003c22 fetch  0x00000001 , 0x000046e0 
+ 00016934  0x00003c23 beq  0x00000004 , 0x00004220 
+ 00016935  0x00003c24 setarg  0x00000106 
+ 00016936  0x00003c25 call  0x00006413 
+ 00016937  0x00003c26 setarg  0x0000a105 
+ 00016938  0x00003c27 branch  0x00006413 
+ 00016939  0x00003c2a jam  0x00000000 , 0x00004711 
+ 00016940  0x00003c2c setarg  0x00000906 
+ 00016941  0x00003c2d branch  0x00006413 
+ 00016942  0x00003c2f jam  0x00000005 , 0x00004711 
+ 00016943  0x00003c30 jam  0x00000001 , 0x00004712 
+ 00016944  0x00003c31 rtn 
+ 00016945  0x00003c34 arg  0x00004680 , 0x00000013 
+ 00016946  0x00003c35 arg  0x0000429b , 0x00000012 
+ 00016947  0x00003c36 branch  0x0000336d 
+ 00016948  0x00003c39 arg  0x000046ac , 0x00000013 
+ 00016949  0x00003c3a arg  0x00004264 , 0x00000012 
+ 00016950  0x00003c3b branch  0x00003374 
+ 00016951  0x00003c3e arg  0x000046ae , 0x00000013 
+ 00016952  0x00003c3f arg  0x00004266 , 0x00000012 
+ 00016953  0x00003c40 branch  0x00003374 
+ 00016954  0x00003c43 arg  0x000046b0 , 0x00000013 
+ 00016955  0x00003c44 arg  0x0000426a , 0x00000012 
+ 00016956  0x00003c45 branch  0x00003374 
+ 00016957  0x00003c48 arg  0x000046c4 , 0x00000013 
+ 00016958  0x00003c49 arg  0x00004478 , 0x00000012 
+ 00016959  0x00003c4a branch  0x0000336d 
+ 00016960  0x00003c4f arg  0x000046c6 , 0x00000013 
+ 00016961  0x00003c50 arg  0x0000425e , 0x00000012 
+ 00016962  0x00003c51 branch  0x0000336d 
+ 00016963  0x00003c54 arg  0x00004704 , 0x00000013 
+ 00016964  0x00003c55 arg  0x00004249 , 0x00000012 
+ 00016965  0x00003c56 branch  0x0000336d 
+ 00016966  0x00003c59 arg  0x00004707 , 0x00000013 
+ 00016967  0x00003c5a arg  0x00004249 , 0x00000012 
+ 00016968  0x00003c5b branch  0x00003374 
+ 00016969  0x00003c5e rtn 
+ 00016970  0x00003c62 fetch  0x00000004 , 0x000046d3 
+ 00016971  0x00003c63 rtnbit0  0x00000017 
+ 00016972  0x00003c64 jam  0x0000000a , 0x000046df 
+ 00016973  0x00003c65 fetch  0x00000001 , 0x000046f4 
+ 00016974  0x00003c66 store  0x00000001 , 0x00004715 
+ 00016975  0x00003c67 rtn 
+ 00016976  0x00003c6b arg  0x000046df , 0x00000013 
+ 00016977  0x00003c6c arg  0x00004253 , 0x00000012 
+ 00016978  0x00003c6d branch  0x0000336d 
+ 00016979  0x00003c6f fetch  0x00000001 , 0x000046f4 
+ 00016980  0x00003c70 store  0x00000001 , 0x00004715 
+ 00016981  0x00003c71 setarg  0x00000190 
+ 00016982  0x00003c72 store  0x00000002 , 0x00004716 
+ 00016983  0x00003c73 store  0x00000002 , 0x00004718 
+ 00016984  0x00003c74 arg  0x00000000 , 0x00000011 
+ 00016985  0x00003c75 fetcht  0x00000001 , 0x0000477a 
+ 00016986  0x00003c76 increase  0x00000001 , 0x00000002 
+ 00016987  0x00003c77 storet  0x00000001 , 0x00004714 
+ 00016988  0x00003c78 jam  0x00000001 , 0x00004713 
+ 00016989  0x00003c79 rtn 
+ 00016990  0x00003c7c fetch  0x00000001 , 0x000046c5 
+ 00016991  0x00003c7d rtnbit1  0x00000002 
+ 00016992  0x00003c7e jam  0x00000012 , 0x00000a99 
+ 00016993  0x00003c7f call  0x00007d8f 
+ 00016994  0x00003c80 arg  0x00000000 , 0x00000007 
+ 00016995  0x00003c81 branch  0x000041b9 
+ 00016996  0x00003c85 call  0x000042ca 
+ 00016997  0x00003c86 branch  0x0000340a 
+ 00016998  0x00003c89 call  0x000033f6 
+ 00016999  0x00003c8a fetch  0x00000001 , 0x0000471e 
+ 00017000  0x00003c8b nbranch  0x00004492 , 0x00000034 
+ 00017001  0x00003c8c branch  0x0000340a 
+ 00017002  0x00003c8f bmark1  0x00000026 , 0x00007e1d 
+ 00017003  0x00003c90 branch  0x00004386 
+ 00017004  0x00003c95 bpatch  0x000000ea , 0x0000401d 
+ 00017005  0x00003c96 jam  0x00000000 , 0x000046b4 
+ 00017006  0x00003c97 call  0x00004386 
+ 00017007  0x00003c98 call  0x000041c1 
+ 00017008  0x00003c99 branch  0x000042b0 
+ 00017009  0x00003c9e fetch  0x00000006 , 0x000041d0 
+ 00017010  0x00003c9f branch  0x000033eb , 0x00000034 
+ 00017011  0x00003ca0 call  0x0000427e 
+ 00017012  0x00003ca1 jam  0x00000017 , 0x0000016d 
+ 00017013  0x00003ca2 fetch  0x00000001 , 0x0000465a 
+ 00017014  0x00003ca3 nbranch  0x000033e1 , 0x00000034 
+ 00017015  0x00003ca4 jam  0x00000004 , 0x0000016d 
+ 00017016  0x00003ca5 branch  0x000033e1 
+ 00017017  0x00003ca8 fetch  0x00000002 , 0x000046a8 
+ 00017018  0x00003ca9 store  0x00000002 , 0x000046ae 
+ 00017019  0x00003caa call  0x0000427e 
+ 00017020  0x00003cab call  0x00003418 
+ 00017021  0x00003cac branch  0x00007df4 
+ 00017022  0x00003caf setarg  0x000000c8 
+ 00017023  0x00003cb0 store  0x00000002 , 0x00004716 
+ 00017024  0x00003cb1 store  0x00000002 , 0x00004718 
+ 00017025  0x00003cb2 branch  0x00004285 
+ 00017026  0x00003cb5 setarg  0x000003e8 
+ 00017027  0x00003cb6 store  0x00000002 , 0x00004716 
+ 00017028  0x00003cb7 store  0x00000002 , 0x00004718 
+ 00017029  0x00003cb9 fetch  0x00000001 , 0x00004720 
+ 00017030  0x00003cba beq  0x00000001 , 0x0000428a 
+ 00017031  0x00003cbb beq  0x00000002 , 0x0000428c 
+ 00017032  0x00003cbc beq  0x00000003 , 0x0000428e 
+ 00017033  0x00003cbd rtn 
+ 00017034  0x00003cbf fetch  0x00000001 , 0x000046f0 
+ 00017035  0x00003cc0 branch  0x0000428f 
+ 00017036  0x00003cc2 fetch  0x00000001 , 0x000046f1 
+ 00017037  0x00003cc3 branch  0x0000428f 
+ 00017038  0x00003cc5 fetch  0x00000001 , 0x000046f2 
+ 00017039  0x00003cc7 store  0x00000001 , 0x00000aa2 
+ 00017040  0x00003cc8 call  0x00004482 
+ 00017041  0x00003cc9 fetch  0x00000001 , 0x00000aa2 
+ 00017042  0x00003cca store  0x00000001 , 0x00004715 
+ 00017043  0x00003ccb arg  0x00000000 , 0x00000011 
+ 00017044  0x00003ccc jam  0x00000001 , 0x00004713 
+ 00017045  0x00003ccd branch  0x00007d1e 
+ 00017046  0x00003cd0 arg  0x00000000 , 0x00000011 
+ 00017047  0x00003cd1 branch  0x00007d19 
+ 00017048  0x00003cd3 arg  0x00000000 , 0x00000011 
+ 00017049  0x00003cd4 branch  0x00007d14 
+ 00017050  0x00003cd7 branch  0x000041c1 
+ 00017051  0x00003cda jam  0x00000001 , 0x000041e2 
+ 00017052  0x00003cdb call  0x00003416 
+ 00017053  0x00003cdc call  0x00003412 
+ 00017054  0x00003cdd setarg  0x00000000 
+ 00017055  0x00003cde store  0x00000002 , 0x0000467e 
+ 00017056  0x00003cdf store  0x00000001 , 0x00004680 
+ 00017057  0x00003ce0 branch  0x0000340e 
+ 00017058  0x00003ce3 call  0x0000435f 
+ 00017059  0x00003ce4 fetch  0x00000001 , 0x00004720 
+ 00017060  0x00003ce5 fetcht  0x00000001 , 0x00004703 
+ 00017061  0x00003ce6 isub  0x00000002 , 0x0000003e 
+ 00017062  0x00003ce7 branch  0x000042ab , 0x00000005 
+ 00017063  0x00003ce8 fetch  0x00000001 , 0x00004210 
+ 00017064  0x00003ce9 beq  0x00000033 , 0x00004271 
+ 00017065  0x00003cea beq  0x00000034 , 0x00004279 
+ 00017066  0x00003ceb branch  0x000042b0 
+ 00017067  0x00003ced call  0x00003d57 
+ 00017068  0x00003cee rtnmark1  0x00000026 
+ 00017069  0x00003cef fetch  0x00000001 , 0x0000471e 
+ 00017070  0x00003cf0 nbranch  0x00004492 , 0x00000034 
+ 00017071  0x00003cf1 rtn 
+ 00017072  0x00003cf4 bpatch  0x000000eb , 0x0000401d 
+ 00017073  0x00003cf5 fetch  0x00000002 , 0x00004682 
+ 00017074  0x00003cf6 bbit1  0x0000000b , 0x000042b7 
+ 00017075  0x00003cf7 fetch  0x00000004 , 0x000046d3 
+ 00017076  0x00003cf8 bbit0  0x00000018 , 0x000042b7 
+ 00017077  0x00003cf9 random  0x0000003f 
+ 00017078  0x00003cfa store  0x00000001 , 0x000044a1 
+ 00017079  0x00003cfc call  0x00003418 
+ 00017080  0x00003cfd fetch  0x00000002 , 0x00004687 
+ 00017081  0x00003cfe store  0x00000002 , 0x000046ac 
+ 00017082  0x00003cff jam  0x00000006 , 0x0000016d 
+ 00017083  0x00003d00 setarg  0x00000000 
+ 00017084  0x00003d01 store  0x00000002 , 0x000046b0 
+ 00017085  0x00003d02 store  0x00000002 , 0x000046ae 
+ 00017086  0x00003d03 arg  0x00000007 , 0x00000007 
+ 00017087  0x00003d04 call  0x000043ce 
+ 00017088  0x00003d05 call  0x000043ca 
+ 00017089  0x00003d06 fetch  0x00000001 , 0x00004092 
+ 00017090  0x00003d07 isolate1  0x00000001 , 0x0000003f 
+ 00017091  0x00003d08 call  0x00007df4 , 0x00000001 
+ 00017092  0x00003d09 fetch  0x00000001 , 0x00004092 
+ 00017093  0x00003d0a isolate1  0x00000000 , 0x0000003f 
+ 00017094  0x00003d0b call  0x00007ddd , 0x00000001 
+ 00017095  0x00003d0c fetch  0x00000004 , 0x000046d3 
+ 00017096  0x00003d0d bbit1  0x0000001c , 0x0000422e 
+ 00017097  0x00003d0e branch  0x00004282 
+ 00017098  0x00003d11 bpatch  0x000000ec , 0x0000401d 
+ 00017099  0x00003d12 fetch  0x00000001 , 0x00004092 
+ 00017100  0x00003d13 isolate1  0x00000001 , 0x0000003f 
+ 00017101  0x00003d14 call  0x000042d4 , 0x00000001 
+ 00017102  0x00003d15 fetch  0x00000001 , 0x00004092 
+ 00017103  0x00003d16 isolate1  0x00000000 , 0x0000003f 
+ 00017104  0x00003d17 call  0x000042d7 , 0x00000001 
+ 00017105  0x00003d18 fetch  0x00000004 , 0x000046d3 
+ 00017106  0x00003d19 bbit1  0x0000001c , 0x0000421a 
+ 00017107  0x00003d1a branch  0x00004482 
+ 00017108  0x00003d1c setarg  0x00000000 
+ 00017109  0x00003d1d store  0x00000002 , 0x000046ae 
+ 00017110  0x00003d1e branch  0x00007dfa 
+ 00017111  0x00003d20 setarg  0x00000000 
+ 00017112  0x00003d21 store  0x00000002 , 0x000046ac 
+ 00017113  0x00003d22 branch  0x00007de2 
+ 00017114  0x00003d29 fetch  0x00000004 , 0x000046d3 
+ 00017115  0x00003d2a rtnbit0  0x00000007 
+ 00017116  0x00003d2b arg  0x00000007 , 0x00000007 
+ 00017117  0x00003d2c call  0x000043d2 
+ 00017118  0x00003d2d call  0x000042e8 
+ 00017119  0x00003d2f call  0x000042fb 
+ 00017120  0x00003d30 fetch  0x00000004 , 0x000046d3 
+ 00017121  0x00003d31 bbit1  0x00000013 , 0x00004435 
+ 00017122  0x00003d32 bbit1  0x00000014 , 0x000042e4 
+ 00017123  0x00003d33 rtn 
+ 00017124  0x00003d35 arg  0x00000058 , 0x00000002 
+ 00017125  0x00003d36 arg  0x00004720 , 0x00000011 
+ 00017126  0x00003d37 arg  0x00000000 , 0x00000012 
+ 00017127  0x00003d38 branch  0x000065d1 
+ 00017128  0x00003d3b fetch  0x00000001 , 0x00000185 
+ 00017129  0x00003d3c beq  0x00000034 , 0x000042ec 
+ 00017130  0x00003d3d beq  0x00000033 , 0x000042ef 
+ 00017131  0x00003d3e rtn 
+ 00017132  0x00003d40 store  0x00000001 , 0x000046c7 
+ 00017133  0x00003d41 fetch  0x00000006 , 0x0000044f 
+ 00017134  0x00003d42 branch  0x000042f1 
+ 00017135  0x00003d44 store  0x00000001 , 0x000046c7 
+ 00017136  0x00003d45 fetch  0x00000006 , 0x00000040 
+ 00017137  0x00003d47 store  0x00000006 , 0x000046c8 
+ 00017138  0x00003d48 fetch  0x00000007 , 0x000046c7 
+ 00017139  0x00003d49 arg  0x00004721 , 0x00000006 
+ 00017140  0x00003d4a arg  0x00000003 , 0x00000039 
+ 00017141  0x00003d4c ifetcht  0x00000007 , 0x00000006 
+ 00017142  0x00003d4d isub  0x00000002 , 0x0000003e 
+ 00017143  0x00003d4e branch  0x00004310 , 0x00000005 
+ 00017144  0x00003d4f increase  0x00000016 , 0x00000006 
+ 00017145  0x00003d50 loop  0x000042f5 
+ 00017146  0x00003d51 rtn 
+ 00017147  0x00003d53 arg  0x00004721 , 0x00000011 
+ 00017148  0x00003d54 fetch  0x00000001 , 0x00004720 
+ 00017149  0x00003d55 increase  0xffffffff , 0x0000003f 
+ 00017150  0x00003d56 mul32  0x0000003f , 0x0000001d , 0x0000003f 
+ 00017151  0x00003d57 iadd  0x00000011 , 0x00000011 
+ 00017152  0x00003d58 fetch  0x00000001 , 0x00000185 
+ 00017153  0x00003d59 istore  0x00000001 , 0x00000011 
+ 00017154  0x00003d5a beq  0x00000034 , 0x00004305 
+ 00017155  0x00003d5b beq  0x00000033 , 0x0000430c 
+ 00017156  0x00003d5c rtn 
+ 00017157  0x00003d5f fetch  0x00000006 , 0x0000044f 
+ 00017158  0x00003d60 istore  0x00000006 , 0x00000005 
+ 00017159  0x00003d61 arg  0x00004419 , 0x00000006 
+ 00017160  0x00003d62 call  0x00007ebf 
+ 00017161  0x00003d63 fetch  0x00000006 , 0x000044a0 
+ 00017162  0x00003d64 istore  0x00000006 , 0x00000005 
+ 00017163  0x00003d65 rtn 
+ 00017164  0x00003d67 fetch  0x00000006 , 0x00000040 
+ 00017165  0x00003d68 istore  0x00000006 , 0x00000005 
+ 00017166  0x00003d69 arg  0x000041be , 0x00000006 
+ 00017167  0x00003d6a branch  0x00007ebf 
+ 00017168  0x00003d6d increase  0xfffffffa , 0x00000006 
+ 00017169  0x00003d6e copy  0x00000006 , 0x00000005 
+ 00017170  0x00003d6f fetcht  0x00000006 , 0x000046c8 
+ 00017171  0x00003d70 increase  0x00000003 , 0x00000002 
+ 00017172  0x00003d71 istoret  0x00000006 , 0x00000005 
+ 00017173  0x00003d72 rtn 
+ 00017174  0x00003d77 arg  0x00000058 , 0x00000002 
+ 00017175  0x00003d78 arg  0x00004720 , 0x00000011 
+ 00017176  0x00003d79 arg  0x00000000 , 0x00000012 
+ 00017177  0x00003d7a call  0x000065df 
+ 00017178  0x00003d7c arg  0x00004721 , 0x00000011 
+ 00017179  0x00003d7d fetch  0x00000001 , 0x00004720 
+ 00017180  0x00003d7e fetcht  0x00000001 , 0x00004703 
+ 00017181  0x00003d7f isub  0x00000002 , 0x0000003e 
+ 00017182  0x00003d80 rtn  0x00000005 
+ 00017183  0x00003d81 increase  0xffffffff , 0x0000003f 
+ 00017184  0x00003d82 mul32  0x0000003f , 0x0000001d , 0x0000003f 
+ 00017185  0x00003d83 iadd  0x00000011 , 0x00000011 
+ 00017186  0x00003d84 ifetch  0x00000001 , 0x00000011 
+ 00017187  0x00003d85 store  0x00000001 , 0x00004210 
+ 00017188  0x00003d86 beq  0x00000033 , 0x00004327 
+ 00017189  0x00003d87 beq  0x00000034 , 0x0000432c 
+ 00017190  0x00003d88 rtn 
+ 00017191  0x00003d8b ifetch  0x00000006 , 0x00000006 
+ 00017192  0x00003d8d store  0x00000006 , 0x000041d0 
+ 00017193  0x00003d8e arg  0x000041be , 0x00000005 
+ 00017194  0x00003d8f call  0x00007ebf 
+ 00017195  0x00003d90 branch  0x000067d7 
+ 00017196  0x00003d93 ifetch  0x00000006 , 0x00000006 
+ 00017197  0x00003d95 store  0x00000006 , 0x000041d0 
+ 00017198  0x00003d96 arg  0x00004419 , 0x00000005 
+ 00017199  0x00003d97 call  0x00007ebf 
+ 00017200  0x00003d98 ifetch  0x00000006 , 0x00000006 
+ 00017201  0x00003d99 store  0x00000006 , 0x000044a0 
+ 00017202  0x00003d9a rtn 
+ 00017203  0x00003d9e fetch  0x00000001 , 0x000046f5 
+ 00017204  0x00003d9f bbit1  0x00000005 , 0x00004349 
+ 00017205  0x00003da0 bbit1  0x00000006 , 0x00004359 
+ 00017206  0x00003da1 branch  0x00004337 
+ 00017207  0x00003da4 call  0x00004083 
+ 00017208  0x00003da5 beq  0x00000006 , 0x0000433e 
+ 00017209  0x00003da7 jam  0x0000001e , 0x000046d8 
+ 00017210  0x00003da8 fetch  0x00000001 , 0x000046d9 
+ 00017211  0x00003da9 rtneq  0x00000001 
+ 00017212  0x00003daa jam  0x00000001 , 0x000046d9 
+ 00017213  0x00003dab rtn 
+ 00017214  0x00003dae call  0x00004343 
+ 00017215  0x00003daf fetch  0x00000001 , 0x000046d9 
+ 00017216  0x00003db0 rtneq  0x00000000 
+ 00017217  0x00003db1 jam  0x00000000 , 0x000046d9 
+ 00017218  0x00003db2 branch  0x000043c0 
+ 00017219  0x00003db5 fetch  0x00000001 , 0x000046d8 
+ 00017220  0x00003db6 rtn  0x00000034 
+ 00017221  0x00003db7 pincrease  0xffffffff 
+ 00017222  0x00003db8 store  0x00000001 , 0x000046d8 
+ 00017223  0x00003db9 nrtn  0x00000034 
+ 00017224  0x00003dba branch  0x00004370 
+ 00017225  0x00003dbd fetch  0x00000001 , 0x000046ed 
+ 00017226  0x00003dbe rtneq  0x000000ff 
+ 00017227  0x00003dbf fetcht  0x00000001 , 0x000046ed 
+ 00017228  0x00003dc0 call  0x0000681d 
+ 00017229  0x00003dc1 branch  0x00004354 , 0x00000001 
+ 00017230  0x00003dc3 fetch  0x00000001 , 0x000046d9 
+ 00017231  0x00003dc4 rtneq  0x00000001 
+ 00017232  0x00003dc5 jam  0x00000001 , 0x000046d9 
+ 00017233  0x00003dc6 fetch  0x00000004 , 0x000046d3 
+ 00017234  0x00003dc7 rtnbit1  0x00000006 
+ 00017235  0x00003dc8 branch  0x00004370 
+ 00017236  0x00003dcb fetch  0x00000001 , 0x000046d9 
+ 00017237  0x00003dcc rtneq  0x00000000 
+ 00017238  0x00003dcd jam  0x00000000 , 0x000046d9 
+ 00017239  0x00003dce arg  0x00000006 , 0x00000007 
+ 00017240  0x00003dcf branch  0x000043d2 
+ 00017241  0x00003dd4 fetch  0x00000001 , 0x00000004 , 0x000046d3 
+ 00017242  0x00003dd5 rtnbit0  0x00000006 
+ 00017243  0x00003dd6 fetch  0x00000001 , 0x00004720 
+ 00017244  0x00003dd7 beq  0x00000001 , 0x00004369 
+ 00017245  0x00003dd8 beq  0x00000002 , 0x0000436c 
+ 00017246  0x00003dd9 rtn 
+ 00017247  0x00003ddb fetch  0x00000001 , 0x00000004 , 0x000046d3 
+ 00017248  0x00003ddc rtnbit0  0x00000006 
+ 00017249  0x00003ddd fetcht  0x00000001 , 0x000046ed 
+ 00017250  0x00003dde call  0x0000681d 
+ 00017251  0x00003ddf branch  0x00004366 , 0x00000001 
+ 00017252  0x00003de1 jam  0x00000001 , 0x00004720 
+ 00017253  0x00003de2 rtn 
+ 00017254  0x00003de4 fetch  0x00000001 , 0x00004703 
+ 00017255  0x00003de5 store  0x00000001 , 0x00004720 
+ 00017256  0x00003de6 rtn 
+ 00017257  0x00003de8 fetcht  0x00000001 , 0x000046ed 
+ 00017258  0x00003de9 nbranch  0x00004370 , 0x00000001 
+ 00017259  0x00003dea rtn 
+ 00017260  0x00003dec fetcht  0x00000001 , 0x000046ed 
+ 00017261  0x00003ded call  0x0000681d 
+ 00017262  0x00003dee branch  0x00004354 , 0x00000001 
+ 00017263  0x00003def rtn 
+ 00017264  0x00003df5 fetcht  0x00000001 , 0x00004720 
+ 00017265  0x00003df6 increase  0x00000001 , 0x00000002 
+ 00017266  0x00003df7 fetch  0x00000001 , 0x000046d2 
+ 00017267  0x00003df8 isub  0x00000002 , 0x0000003e 
+ 00017268  0x00003df9 ncall  0x000043cc , 0x00000002 
+ 00017269  0x00003dfa storet  0x00000001 , 0x00004720 
+ 00017270  0x00003dfb jam  0x00000000 , 0x000041bd 
+ 00017271  0x00003dfc call  0x0000437a 
+ 00017272  0x00003dfd call  0x000043c0 
+ 00017273  0x00003dff branch  0x0000437e 
+ 00017274  0x00003e02 arg  0x00000001 , 0x00000002 
+ 00017275  0x00003e03 arg  0x00004720 , 0x00000011 
+ 00017276  0x00003e04 arg  0x00000000 , 0x00000012 
+ 00017277  0x00003e05 branch  0x00006606 
+ 00017278  0x00003e08 call  0x00004381 
+ 00017279  0x00003e09 call  0x000043c2 
+ 00017280  0x00003e0a branch  0x000041d7 
+ 00017281  0x00003e0c fetch  0x00000002 , 0x00004682 
+ 00017282  0x00003e0d bbit1  0x00000007 , 0x00004392 
+ 00017283  0x00003e0e bbit1  0x00000009 , 0x00003402 
+ 00017284  0x00003e0f bbit1  0x00000000 , 0x000033e9 
+ 00017285  0x00003e10 branch  0x000042ca 
+ 00017286  0x00003e13 bpatch  0x000000ed , 0x0000401d 
+ 00017287  0x00003e14 setarg  0x00000000 
+ 00017288  0x00003e15 store  0x00000002 , 0x000046b0 
+ 00017289  0x00003e16 fetch  0x00000002 , 0x00004682 
+ 00017290  0x00003e17 bbit1  0x00000009 , 0x00003402 
+ 00017291  0x00003e18 fetch  0x00000002 , 0x00004682 
+ 00017292  0x00003e19 bbit1  0x00000000 , 0x000033e9 
+ 00017293  0x00003e1a rtn 
+ 00017294  0x00003e1d setarg  0x00000001 
+ 00017295  0x00003e1e store  0x00000006 , 0x00000040 
+ 00017296  0x00003e1f jam  0x00000033 , 0x00000185 
+ 00017297  0x00003e20 branch  0x000042df 
+ 00017298  0x00003e24 call  0x000043c4 
+ 00017299  0x00003e25 branch  0x00007e2f 
+ 00017300  0x00003e28 fetch  0x00000001 , 0x000046ec 
+ 00017301  0x00003e29 rtneq  0x000000ff 
+ 00017302  0x00003e2a fetcht  0x00000001 , 0x000046ec 
+ 00017303  0x00003e2b call  0x0000681d 
+ 00017304  0x00003e2c branch  0x0000439f , 0x00000001 
+ 00017305  0x00003e2e fetch  0x00000001 , 0x00004685 
+ 00017306  0x00003e2f store  0x00000001 , 0x000046da 
+ 00017307  0x00003e30 fetch  0x00000001 , 0x000046db 
+ 00017308  0x00003e31 rtneq  0x00000001 
+ 00017309  0x00003e32 jam  0x00000001 , 0x000046db 
+ 00017310  0x00003e33 branch  0x000043ca 
+ 00017311  0x00003e35 call  0x000043b5 
+ 00017312  0x00003e36 fetch  0x00000001 , 0x000046db 
+ 00017313  0x00003e37 rtneq  0x00000000 
+ 00017314  0x00003e38 jam  0x00000000 , 0x000046db 
+ 00017315  0x00003e39 call  0x00007e2f 
+ 00017316  0x00003e3a branch  0x000043c8 
+ 00017317  0x00003e3e fetch  0x00000001 , 0x000046f5 
+ 00017318  0x00003e3f bbit1  0x00000004 , 0x00004394 
+ 00017319  0x00003e41 call  0x00004083 
+ 00017320  0x00003e42 beq  0x00000007 , 0x000043af 
+ 00017321  0x00003e44 fetch  0x00000001 , 0x00004685 
+ 00017322  0x00003e45 store  0x00000001 , 0x000046da 
+ 00017323  0x00003e46 fetch  0x00000001 , 0x000046db 
+ 00017324  0x00003e47 rtneq  0x00000001 
+ 00017325  0x00003e48 jam  0x00000001 , 0x000046db 
+ 00017326  0x00003e49 branch  0x000043ca 
+ 00017327  0x00003e4d call  0x000043b5 
+ 00017328  0x00003e4e fetch  0x00000001 , 0x000046db 
+ 00017329  0x00003e4f rtneq  0x00000000 
+ 00017330  0x00003e50 jam  0x00000000 , 0x000046db 
+ 00017331  0x00003e51 call  0x00007e2f 
+ 00017332  0x00003e52 branch  0x000043c8 
+ 00017333  0x00003e55 arg  0x000046da , 0x00000013 
+ 00017334  0x00003e56 arg  0x000043b8 , 0x00000012 
+ 00017335  0x00003e57 branch  0x0000336d 
+ 00017336  0x00003e5a arg  0x00000006 , 0x00000007 
+ 00017337  0x00003e5b call  0x000043ce 
+ 00017338  0x00003e5c call  0x00003357 
+ 00017339  0x00003e5d branch  0x0000426c 
+ 00017340  0x00003e61 arg  0x00000001 , 0x00000007 
+ 00017341  0x00003e62 branch  0x000043ce 
+ 00017342  0x00003e64 arg  0x00000001 , 0x00000007 
+ 00017343  0x00003e65 branch  0x000043d2 
+ 00017344  0x00003e67 arg  0x00000000 , 0x00000007 
+ 00017345  0x00003e68 branch  0x000043ce 
+ 00017346  0x00003e6a arg  0x00000000 , 0x00000007 
+ 00017347  0x00003e6b branch  0x000043d2 
+ 00017348  0x00003e6d arg  0x00000002 , 0x00000007 
+ 00017349  0x00003e6e branch  0x000043ce 
+ 00017350  0x00003e70 arg  0x00000002 , 0x00000007 
+ 00017351  0x00003e71 branch  0x000043d2 
+ 00017352  0x00003e73 arg  0x00000005 , 0x00000007 
+ 00017353  0x00003e74 branch  0x000043ce 
+ 00017354  0x00003e76 arg  0x00000005 , 0x00000007 
+ 00017355  0x00003e77 branch  0x000043d2 
+ 00017356  0x00003e7c arg  0x00000001 , 0x00000002 
+ 00017357  0x00003e7d rtn 
+ 00017358  0x00003e80 fetch  0x00000004 , 0x000046d3 
+ 00017359  0x00003e81 qset1  0x0000003f 
+ 00017360  0x00003e82 store  0x00000004 , 0x000046d3 
+ 00017361  0x00003e83 rtn 
+ 00017362  0x00003e86 fetch  0x00000004 , 0x000046d3 
+ 00017363  0x00003e87 qset0  0x0000003f 
+ 00017364  0x00003e88 store  0x00000004 , 0x000046d3 
+ 00017365  0x00003e89 rtn 
+ 00017366  0x00003e8c fetch  0x00000004 , 0x000046d3 
+ 00017367  0x00003e8d rtnbit0  0x0000001a 
+ 00017368  0x00003e8e fetch  0x00000001 , 0x000046ce 
+ 00017369  0x00003e8f increase  0x00000001 , 0x0000003f 
+ 00017370  0x00003e90 store  0x00000001 , 0x000046ce 
+ 00017371  0x00003e91 sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00017372  0x00003e92 rtn  0x00000002 
+ 00017373  0x00003e93 jam  0x00000000 , 0x000046ce 
+ 00017374  0x00003e94 call  0x000068eb 
+ 00017375  0x00003e95 call  0x00006908 
+ 00017376  0x00003e96 store  0x00000002 , 0x0000470f 
+ 00017377  0x00003e97 arg  0x00004709 , 0x00000011 
+ 00017378  0x00003e98 call  0x00006930 
+ 00017379  0x00003e99 fetch  0x00000001 , 0x00004231 
+ 00017380  0x00003e9a bbit1  0x00000001 , 0x000044a0 
+ 00017381  0x00003e9b bbit0  0x00000000 , 0x000043e9 
+ 00017382  0x00003e9c branch  0x000043e7 
+ 00017383  0x00003e9e arg  0x00000004 , 0x00000007 
+ 00017384  0x00003e9f branch  0x000043ce 
+ 00017385  0x00003ea1 arg  0x00000004 , 0x00000007 
+ 00017386  0x00003ea2 branch  0x000043d2 
+ 00017387  0x00003ea5 fetch  0x00000004 , 0x000046d3 
+ 00017388  0x00003ea6 rtnbit0  0x00000004 
+ 00017389  0x00003ea7 fetch  0x00000001 , 0x000046ef 
+ 00017390  0x00003ea8 store  0x00000001 , 0x00004715 
+ 00017391  0x00003ea9 fetch  0x00000001 , 0x000046cf 
+ 00017392  0x00003eaa pincrease  0x00000001 
+ 00017393  0x00003eab store  0x00000001 , 0x000046cf 
+ 00017394  0x00003eac sub  0x0000003f , 0x00000014 , 0x0000003e 
+ 00017395  0x00003ead ncall  0x000043f9 , 0x00000002 
+ 00017396  0x00003eae beq  0x00000002 , 0x000043fb 
+ 00017397  0x00003eaf beq  0x00000004 , 0x000043fe 
+ 00017398  0x00003eb0 beq  0x00000006 , 0x000043fb 
+ 00017399  0x00003eb1 beq  0x00000008 , 0x000043fe 
+ 00017400  0x00003eb2 rtn 
+ 00017401  0x00003eb4 jam  0x00000001 , 0x000046cf 
+ 00017402  0x00003eb5 branch  0x000043fe 
+ 00017403  0x00003eb7 arg  0x00000000 , 0x00000011 
+ 00017404  0x00003eb8 jam  0x00000002 , 0x00004713 
+ 00017405  0x00003eb9 branch  0x00007d14 
+ 00017406  0x00003ebb arg  0x00000000 , 0x00000011 
+ 00017407  0x00003ebc jam  0x00000002 , 0x00004713 
+ 00017408  0x00003ebd branch  0x00007d19 
+ 00017409  0x00003ec0 call  0x00003f97 
+ 00017410  0x00003ec1 nrtn  0x00000028 
+ 00017411  0x00003ec2 arg  0x00000007 , 0x00000011 
+ 00017412  0x00003ec3 arg  0x0000469a , 0x00000012 
+ 00017413  0x00003ec4 rtn 
+ 00017414  0x00003ec7 fetch  0x00000001 , 0x0000478b 
+ 00017415  0x00003ec8 rtn  0x00000034 
+ 00017416  0x00003eca fetcht  0x00000001 , 0x000046e7 
+ 00017417  0x00003ecb call  0x0000681d 
+ 00017418  0x00003ecc call  0x00004410 , 0x00000001 
+ 00017419  0x00003ecd fetch  0x00000001 , 0x00004704 
+ 00017420  0x00003ece nrtn  0x00000034 
+ 00017421  0x00003ecf call  0x00004083 
+ 00017422  0x00003ed0 nrtn  0x00000034 
+ 00017423  0x00003ed1 branch  0x00002d83 
+ 00017424  0x00003ed4 fetch  0x00000001 , 0x000046e7 
+ 00017425  0x00003ed5 rtneq  0x000000ff 
+ 00017426  0x00003ed6 jam  0x0000000a , 0x00004704 
+ 00017427  0x00003ed7 rtn 
+ 00017428  0x00003edb call  0x00004423 
+ 00017429  0x00003edc fetch  0x00000002 , 0x00004778 
+ 00017430  0x00003edd arg  0x0000aa55 , 0x00000002 
+ 00017431  0x00003ede isub  0x00000002 , 0x0000003e 
+ 00017432  0x00003edf branch  0x0000442b , 0x00000005 
+ 00017433  0x00003ee0 storet  0x00000002 , 0x00004778 
+ 00017434  0x00003ee1 call  0x0000441c 
+ 00017435  0x00003ee2 branch  0x00004435 
+ 00017436  0x00003ee4 fetch  0x00000006 , 0x000044a0 
+ 00017437  0x00003ee5 store  0x00000006 , 0x00004738 
+ 00017438  0x00003ee6 add  0x0000003f , 0x00000100 , 0x0000003f 
+ 00017439  0x00003ee7 store  0x00000006 , 0x00004755 
+ 00017440  0x00003ee8 add  0x0000003f , 0x00000100 , 0x0000003f 
+ 00017441  0x00003ee9 store  0x00000006 , 0x00004772 
+ 00017442  0x00003eea rtn 
+ 00017443  0x00003eee setarg  0x00004778 
+ 00017444  0x00003eef arg  0x00004720 , 0x00000002 
+ 00017445  0x00003ef0 isub  0x00000002 , 0x00000002 
+ 00017446  0x00003ef1 fetch  0x00000003 , 0x00004700 
+ 00017447  0x00003ef2 iadd  0x00000002 , 0x0000003f 
+ 00017448  0x00003ef3 arg  0x00000002 , 0x00000002 
+ 00017449  0x00003ef4 arg  0x00004778 , 0x00000011 
+ 00017450  0x00003ef5 branch  0x00006562 
+ 00017451  0x00003ef9 setarg  0x0000477f 
+ 00017452  0x00003efa arg  0x00004720 , 0x00000002 
+ 00017453  0x00003efb isub  0x00000002 , 0x00000002 
+ 00017454  0x00003efc fetch  0x00000003 , 0x00004700 
+ 00017455  0x00003efd arg  0x00004720 , 0x00000011 
+ 00017456  0x00003efe call  0x00006562 
+ 00017457  0x00003eff call  0x0000431a 
+ 00017458  0x00003f00 fetch  0x00000004 , 0x0000477b 
+ 00017459  0x00003f01 call  0x00002c7a 
+ 00017460  0x00003f02 branch  0x0000322c 
+ 00017461  0x00003f05 setarg  0x0000477f 
+ 00017462  0x00003f06 arg  0x00004720 , 0x00000002 
+ 00017463  0x00003f07 isub  0x00000002 , 0x00000002 
+ 00017464  0x00003f08 arg  0x00004720 , 0x00000011 
+ 00017465  0x00003f09 fetch  0x00000003 , 0x00004700 
+ 00017466  0x00003f0a branch  0x00006514 
+ 00017467  0x00003f0d arg  0x00000001 , 0x00000002 
+ 00017468  0x00003f0e arg  0x0000477a , 0x00000011 
+ 00017469  0x00003f0f arg  0x0000005a , 0x00000012 
+ 00017470  0x00003f10 branch  0x000065d1 
+ 00017471  0x00003f13 arg  0x00000001 , 0x00000002 
+ 00017472  0x00003f14 arg  0x0000477a , 0x00000011 
+ 00017473  0x00003f15 arg  0x0000005a , 0x00000012 
+ 00017474  0x00003f16 branch  0x000065df 
+ 00017475  0x00003f19 rtnmark1  0x00000026 
+ 00017476  0x00003f1a fetch  0x00000004 , 0x000046d3 
+ 00017477  0x00003f1b rtnbit0  0x00000016 
+ 00017478  0x00003f1c fetch  0x00000001 , 0x00004705 
+ 00017479  0x00003f1d pincrease  0x00000001 
+ 00017480  0x00003f1e and  0x0000003f , 0x00000007 , 0x0000003f 
+ 00017481  0x00003f1f store  0x00000001 , 0x00004705 
+ 00017482  0x00003f20 rtnne  0x00000007 
+ 00017483  0x00003f21 fetch  0x00000002 , 0x00004682 
+ 00017484  0x00003f22 bbit1  0x00000000 , 0x0000444f 
+ 00017485  0x00003f23 bbit1  0x00000009 , 0x0000444f 
+ 00017486  0x00003f24 rtn 
+ 00017487  0x00003f2a bpatch  0x000000ee , 0x0000401d 
+ 00017488  0x00003f2b fetch  0x00000001 , 0x00004706 
+ 00017489  0x00003f2c nrtn  0x00000034 
+ 00017490  0x00003f2d fetch  0x00000004 , 0x000046d3 
+ 00017491  0x00003f2e rtnbit0  0x00000008 
+ 00017492  0x00003f2f fetch  0x00000001 , 0x000046a5 
+ 00017493  0x00003f30 call  0x000063fb 
+ 00017494  0x00003f31 store  0x00000001 , 0x000046a6 
+ 00017495  0x00003f32 sub  0x0000003f , 0x00000010 , 0x0000003e 
+ 00017496  0x00003f33 branch  0x0000445b , 0x00000002 
+ 00017497  0x00003f34 jam  0x00000000 , 0x00004706 
+ 00017498  0x00003f35 rtn 
+ 00017499  0x00003f38 jam  0x0000001e , 0x00004706 
+ 00017500  0x00003f39 rtn 
+ 00017501  0x00003f3b arg  0x00004706 , 0x00000013 
+ 00017502  0x00003f3c arg  0x00004460 , 0x00000012 
+ 00017503  0x00003f3d branch  0x0000336d 
+ 00017504  0x00003f40 fetch  0x00000001 , 0x000046a5 
+ 00017505  0x00003f41 call  0x00006414 
+ 00017506  0x00003f42 sub  0x0000003f , 0x00000010 , 0x0000003e 
+ 00017507  0x00003f43 nrtn  0x00000002 
+ 00017508  0x00003f44 fetch  0x00000004 , 0x000046d3 
+ 00017509  0x00003f45 rtnbit0  0x00000008 
+ 00017510  0x00003f46 arg  0x00000008 , 0x00000007 
+ 00017511  0x00003f47 call  0x000043d2 
+ 00017512  0x00003f48 jam  0x00000000 , 0x00004172 
+ 00017513  0x00003f49 jam  0x0000001e , 0x000046c4 
+ 00017514  0x00003f4a call  0x00004482 
+ 00017515  0x00003f4b fetch  0x00000004 , 0x000046d3 
+ 00017516  0x00003f4c bbit1  0x00000015 , 0x00004471 
+ 00017517  0x00003f4e fetch  0x00000001 , 0x00004720 
+ 00017518  0x00003f4f beq  0x00000001 , 0x00004489 
+ 00017519  0x00003f50 beq  0x00000002 , 0x00004476 
+ 00017520  0x00003f51 rtn 
+ 00017521  0x00003f53 fetch  0x00000001 , 0x00004720 
+ 00017522  0x00003f54 beq  0x00000001 , 0x00004489 
+ 00017523  0x00003f55 beq  0x00000002 , 0x0000448c 
+ 00017524  0x00003f56 beq  0x00000003 , 0x0000448f 
+ 00017525  0x00003f57 rtn 
+ 00017526  0x00003f5a fetch  0x00000001 , 0x000046f0 
+ 00017527  0x00003f5b branch  0x0000428f 
+ 00017528  0x00003f60 jam  0x00000020 , 0x00004172 
+ 00017529  0x00003f61 branch  0x00004482 
+ 00017530  0x00003f66 fetch  0x00000001 , 0x000046f0 
+ 00017531  0x00003f67 rtneq  0x000000ff 
+ 00017532  0x00003f68 store  0x00000001 , 0x00004715 
+ 00017533  0x00003f69 branch  0x00004296 
+ 00017534  0x00003f6c fetch  0x00000001 , 0x000046f1 
+ 00017535  0x00003f6d rtneq  0x000000ff 
+ 00017536  0x00003f6e store  0x00000001 , 0x00004715 
+ 00017537  0x00003f6f branch  0x00004296 
+ 00017538  0x00003f72 call  0x00004296 
+ 00017539  0x00003f73 call  0x0000447a 
+ 00017540  0x00003f74 call  0x0000447e 
+ 00017541  0x00003f76 fetch  0x00000001 , 0x000046f2 
+ 00017542  0x00003f77 rtneq  0x000000ff 
+ 00017543  0x00003f78 store  0x00000001 , 0x00004715 
+ 00017544  0x00003f79 branch  0x00004296 
+ 00017545  0x00003f7c fetch  0x00000001 , 0x000046f0 
+ 00017546  0x00003f7d store  0x00000001 , 0x00004715 
+ 00017547  0x00003f7e branch  0x00004298 
+ 00017548  0x00003f80 fetch  0x00000001 , 0x000046f1 
+ 00017549  0x00003f81 store  0x00000001 , 0x00004715 
+ 00017550  0x00003f82 branch  0x00004298 
+ 00017551  0x00003f84 fetch  0x00000001 , 0x000046f2 
+ 00017552  0x00003f85 store  0x00000001 , 0x00004715 
+ 00017553  0x00003f86 branch  0x00004298 
+ 00017554  0x00003f8b bpatch  0x000000ef , 0x0000401d 
+ 00017555  0x00003f8c fetch  0x00000001 , 0x0000471e 
+ 00017556  0x00003f8d increase  0xffffffff , 0x0000003f 
+ 00017557  0x00003f8e store  0x00000001 , 0x0000471e 
+ 00017558  0x00003f8f fetcht  0x00000001 , 0x00004720 
+ 00017559  0x00003f90 increase  0x00000001 , 0x00000002 
+ 00017560  0x00003f91 fetch  0x00000001 , 0x000046d2 
+ 00017561  0x00003f92 isub  0x00000002 , 0x0000003e 
+ 00017562  0x00003f93 ncall  0x000043cc , 0x00000002 
+ 00017563  0x00003f94 storet  0x00000001 , 0x00004720 
+ 00017564  0x00003f95 jam  0x00000000 , 0x000041bd 
+ 00017565  0x00003f96 call  0x0000437a 
+ 00017566  0x00003f97 call  0x000042fb 
+ 00017567  0x00003f98 branch  0x000042a2 
+ 00017568  0x00003f9b call  0x00004482 
+ 00017569  0x00003f9c setarg  0x00000000 
+ 00017570  0x00003f9d store  0x00000008 , 0x000000a1 
+ 00017571  0x00003f9e branch  0x00002b1f 
+ 00017572  0x00003faa rtn  0x0000002b 
+ 00017573  0x00003fab hfetch  0x00000001 , 0x00008081 
+ 00017574  0x00003fac and_into  0x000000f0 , 0x0000003f 
+ 00017575  0x00003fad hstore  0x00000001 , 0x00008081 
+ 00017576  0x00003fae call  0x00006948 
+ 00017577  0x00003faf setarg  0x000044e6 
+ 00017578  0x00003fb0 store  0x00000002 , 0x000041eb 
+ 00017579  0x00003fb2 setarg  0x000044e9 
+ 00017580  0x00003fb3 store  0x00000002 , 0x000041ed 
+ 00017581  0x00003fb5 setarg  0x000044ef 
+ 00017582  0x00003fb6 store  0x00000002 , 0x000041f3 
+ 00017583  0x00003fb8 setarg  0x000044f2 
+ 00017584  0x00003fb9 store  0x00000002 , 0x000041f5 
+ 00017585  0x00003fbb setarg  0x000033d0 
+ 00017586  0x00003fbc store  0x00000002 , 0x000041e9 
+ 00017587  0x00003fbe call  0x00002c7a 
+ 00017588  0x00003fbf setarg  0x000045c2 
+ 00017589  0x00003fc0 add  0x00000013 , 0x000000d8 , 0x00000005 
+ 00017590  0x00003fc1 istore  0x00000002 , 0x00000005 
+ 00017591  0x00003fc3 setarg  0x000044ea 
+ 00017592  0x00003fc4 add  0x00000013 , 0x000000da , 0x00000005 
+ 00017593  0x00003fc5 istore  0x00000002 , 0x00000005 
+ 00017594  0x00003fc7 setarg  0x000044e9 
+ 00017595  0x00003fc8 add  0x00000013 , 0x000000dc , 0x00000005 
+ 00017596  0x00003fc9 istore  0x00000002 , 0x00000005 
+ 00017597  0x00003fcb setarg  0x0000450e 
+ 00017598  0x00003fcc store  0x00000002 , 0x000041fd 
+ 00017599  0x00003fce setarg  0x000044da 
+ 00017600  0x00003fcf store  0x00000002 , 0x0000475b 
+ 00017601  0x00003fd1 setarg  0x000044d6 
+ 00017602  0x00003fd2 store  0x00000002 , 0x0000475f 
+ 00017603  0x00003fd4 setarg  0x00004560 
+ 00017604  0x00003fd5 store  0x00000002 , 0x0000470f 
+ 00017605  0x00003fd7 bpatch  0x000000f0 , 0x0000401e 
+ 00017606  0x00003fd8 call  0x000044e2 
+ 00017607  0x00003fd9 call  0x00007e38 
+ 00017608  0x00003fda jam  0x00000002 , 0x00004172 
+ 00017609  0x00003fdb fetch  0x00000001 , 0x0000472b 
+ 00017610  0x00003fdc store  0x00000001 , 0x0000469a 
+ 00017611  0x00003fdd beq  0x00000000 , 0x000044d5 
+ 00017612  0x00003fde fetch  0x00000001 , 0x0000472c 
+ 00017613  0x00003fdf store  0x00000001 , 0x00004686 
+ 00017614  0x00003fe1 call  0x000044db 
+ 00017615  0x00003fe2 call  0x00007cd3 
+ 00017616  0x00003fe3 call  0x00007cdd 
+ 00017617  0x00003fe4 jam  0x00000001 , 0x00004757 
+ 00017618  0x00003fe5 fetch  0x00000002 , 0x00004682 
+ 00017619  0x00003fe6 rtnbit1  0x0000000c 
+ 00017620  0x00003fe7 branch  0x0000340a 
+ 00017621  0x00003fec jam  0x00000002 , 0x00004757 
+ 00017622  0x00003fee call  0x000044db 
+ 00017623  0x00003ff0 arg  0x00000000 , 0x00000011 
+ 00017624  0x00003ff1 call  0x00007d1e 
+ 00017625  0x00003ff3 branch  0x00002ee4 
+ 00017626  0x00003ff6 branch  0x000044db 
+ 00017627  0x00003ff9 bpatch  0x000000f1 , 0x0000401e 
+ 00017628  0x00003ffa fetch  0x00000001 , 0x00004729 
+ 00017629  0x00003ffb bne  0x000000ff , 0x000044e0 
+ 00017630  0x00003ffd fetcht  0x00000001 , 0x00004706 
+ 00017631  0x00003ffe branch  0x0000680e 
+ 00017632  0x00004000 store  0x00000001 , 0x00004706 
+ 00017633  0x00004001 branch  0x000044de 
+ 00017634  0x00004005 call  0x00002c9d 
+ 00017635  0x00004006 fetch  0x00000002 , 0x00004753 
+ 00017636  0x00004007 store  0x00000002 , 0x00004755 
+ 00017637  0x00004008 branch  0x00004515 
+ 00017638  0x00004010 call  0x00006835 
+ 00017639  0x00004011 call  0x000044e9 
+ 00017640  0x00004012 branch  0x0000340a 
+ 00017641  0x00004015 branch  0x0000696c 
+ 00017642  0x00004018 fetch  0x00000001 , 0x00004765 
+ 00017643  0x00004019 rtn  0x00000034 
+ 00017644  0x0000401b branch  0x00002d83 
+ 00017645  0x0000401e rtn 
+ 00017646  0x00004021 branch  0x00006978 
+ 00017647  0x00004024 call  0x00004544 
+ 00017648  0x00004025 call  0x00004503 
+ 00017649  0x00004026 branch  0x000044ee 
+ 00017650  0x00004029 copy  0x00000013 , 0x0000003f 
+ 00017651  0x0000402a beq  0x0000002d , 0x00003431 
+ 00017652  0x0000402b beq  0x00000010 , 0x0000341a 
+ 00017653  0x0000402c beq  0x00000039 , 0x000044fb 
+ 00017654  0x0000402d beq  0x0000003c , 0x000044ff 
+ 00017655  0x0000402e beq  0x0000003a , 0x000044f9 
+ 00017656  0x0000402f rtn 
+ 00017657  0x00004032 jam  0x00000001 , 0x00004765 
+ 00017658  0x00004033 rtn 
+ 00017659  0x00004036 jam  0x00000001 , 0x00004765 
+ 00017660  0x00004037 jam  0x00000001 , 0x00004763 
+ 00017661  0x00004038 jam  0x00000001 , 0x00004764 
+ 00017662  0x00004039 rtn 
+ 00017663  0x0000403c jam  0x00000001 , 0x00004765 
+ 00017664  0x0000403d jam  0x00000001 , 0x00004763 
+ 00017665  0x0000403e jam  0x00000001 , 0x00004764 
+ 00017666  0x0000403f rtn 
+ 00017667  0x00004042 fetch  0x00000001 , 0x00004763 
+ 00017668  0x00004043 rtneq  0x00000000 
+ 00017669  0x00004044 fetch  0x00000001 , 0x00004762 
+ 00017670  0x00004045 rtneq  0x00000001 
+ 00017671  0x00004046 jam  0x00000001 , 0x00004762 
+ 00017672  0x00004048 arg  0x00000000 , 0x00000011 
+ 00017673  0x00004049 branch  0x00007d19 
+ 00017674  0x0000404b arg  0x00000000 , 0x00000011 
+ 00017675  0x0000404c call  0x00007d19 
+ 00017676  0x0000404d call  0x000044db 
+ 00017677  0x0000404e branch  0x0000340a 
+ 00017678  0x00004051 call  0x0000337b 
+ 00017679  0x00004052 branch  0x00004510 
+ 00017680  0x00004055 fetch  0x00000001 , 0x0000472d 
+ 00017681  0x00004056 rtn  0x00000034 
+ 00017682  0x00004057 arg  0x00004755 , 0x00000013 
+ 00017683  0x00004058 arg  0x0000450a , 0x00000012 
+ 00017684  0x00004059 branch  0x00003374 
+ 00017685  0x0000405d call  0x0000451a 
+ 00017686  0x0000405e storet  0x00000002 , 0x0000471a 
+ 00017687  0x0000405f call  0x0000451f 
+ 00017688  0x00004060 storet  0x00000002 , 0x0000471c 
+ 00017689  0x00004061 rtn 
+ 00017690  0x00004064 fetch  0x00000002 , 0x0000471a 
+ 00017691  0x00004065 store  0x00000002 , 0x0000471e 
+ 00017692  0x00004066 call  0x00004540 
+ 00017693  0x00004067 call  0x00004525 
+ 00017694  0x00004068 store  0x00000001 , 0x00004724 
+ 00017695  0x0000406a fetch  0x00000002 , 0x0000471c 
+ 00017696  0x0000406b store  0x00000002 , 0x0000471e 
+ 00017697  0x0000406c call  0x00004542 
+ 00017698  0x0000406d call  0x00004525 
+ 00017699  0x0000406e store  0x00000001 , 0x00004725 
+ 00017700  0x0000406f rtn 
+ 00017701  0x00004071 fetch  0x00000002 , 0x00004720 
+ 00017702  0x00004072 copy  0x0000003f , 0x00000011 
+ 00017703  0x00004073 fetch  0x00000002 , 0x0000471e 
+ 00017704  0x00004074 call  0x0000452e 
+ 00017705  0x00004075 fetch  0x00000001 , 0x00004719 
+ 00017706  0x00004076 nbranch  0x00004537 , 0x00000034 
+ 00017707  0x00004077 nrtn  0x00000002 
+ 00017708  0x00004078 fetcht  0x00000002 , 0x0000471e 
+ 00017709  0x00004079 rtn 
+ 00017710  0x0000407b isub  0x00000002 , 0x0000003f 
+ 00017711  0x0000407c branch  0x00004534 , 0x00000002 
+ 00017712  0x0000407d sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00017713  0x0000407e jam  0x00000001 , 0x00004718 
+ 00017714  0x0000407f isub  0x00000011 , 0x0000003e 
+ 00017715  0x00004080 rtn 
+ 00017716  0x00004082 jam  0x00000000 , 0x00004718 
+ 00017717  0x00004083 isub  0x00000011 , 0x0000003e 
+ 00017718  0x00004084 rtn 
+ 00017719  0x00004086 nbranch  0x0000453e , 0x00000002 
+ 00017720  0x00004087 fetch  0x00000001 , 0x00004718 
+ 00017721  0x00004088 nbranch  0x0000453c , 0x00000034 
+ 00017722  0x0000408a setarg  0x00000001 
+ 00017723  0x0000408b rtn 
+ 00017724  0x0000408d setarg  0x00000002 
+ 00017725  0x0000408e rtn 
+ 00017726  0x00004090 setarg  0x00000000 
+ 00017727  0x00004091 rtn 
+ 00017728  0x00004093 jam  0x00000033 , 0x0000422e 
+ 00017729  0x00004094 branch  0x000068eb 
+ 00017730  0x00004096 jam  0x00000034 , 0x0000422e 
+ 00017731  0x00004097 branch  0x000068eb 
+ 00017732  0x0000409b fetch  0x00000001 , 0x0000472a 
+ 00017733  0x0000409c rtnne  0x00000001 
+ 00017734  0x0000409e bpatch  0x000000f2 , 0x0000401e 
+ 00017735  0x0000409f jam  0x00000001 , 0x00004719 
+ 00017736  0x000040a0 call  0x0000451a 
+ 00017737  0x000040a1 fetch  0x00000002 , 0x00004724 
+ 00017738  0x000040a2 fetcht  0x00000002 , 0x00004722 
+ 00017739  0x000040a3 isub  0x00000002 , 0x0000003e 
+ 00017740  0x000040a4 rtn  0x00000005 
+ 00017741  0x000040a5 store  0x00000002 , 0x00004722 
+ 00017742  0x000040a6 call  0x00004550 
+ 00017743  0x000040a7 branch  0x00004554 
+ 00017744  0x000040aa fetch  0x00000001 , 0x00004724 
+ 00017745  0x000040ab branch  0x0000455a , 0x00000034 
+ 00017746  0x000040ac increase  0xffffffff , 0x0000003f 
+ 00017747  0x000040ad branch  0x00004557 
+ 00017748  0x000040af fetch  0x00000001 , 0x00004725 
+ 00017749  0x000040b0 branch  0x0000455d , 0x00000034 
+ 00017750  0x000040b1 increase  0x00000001 , 0x0000003f 
+ 00017751  0x000040b3 copy  0x0000003f , 0x00000007 
+ 00017752  0x000040b4 arg  0x00000001 , 0x00000011 
+ 00017753  0x000040b5 branch  0x00004560 
+ 00017754  0x000040b8 arg  0x00000000 , 0x00000007 
+ 00017755  0x000040b9 arg  0x00000000 , 0x00000011 
+ 00017756  0x000040ba branch  0x00004560 
+ 00017757  0x000040bc arg  0x00000002 , 0x00000007 
+ 00017758  0x000040bd arg  0x00000000 , 0x00000011 
+ 00017759  0x000040be branch  0x00004560 
+ 00017760  0x000040c1 copy  0x00000011 , 0x0000003f 
+ 00017761  0x000040c2 store  0x00000001 , 0x00004761 
+ 00017762  0x000040c3 fetch  0x00000001 , 0x00004763 
+ 00017763  0x000040c4 beq  0x00000000 , 0x00002ee4 
+ 00017764  0x000040c5 fetch  0x00000002 , 0x00004753 
+ 00017765  0x000040c6 store  0x00000002 , 0x00004755 
+ 00017766  0x000040c7 fetch  0x00000001 , 0x00004761 
+ 00017767  0x000040c8 branch  0x00004580 , 0x00000034 
+ 00017768  0x000040ca bpatch  0x000000f3 , 0x0000401e 
+ 00017769  0x000040cb arg  0x00000000 , 0x00000011 
+ 00017770  0x000040cc call  0x00007d14 
+ 00017771  0x000040ce copy  0x00000007 , 0x0000003f 
+ 00017772  0x000040cf beq  0x00000004 , 0x000045a3 
+ 00017773  0x000040d0 beq  0x00000005 , 0x000045a5 
+ 00017774  0x000040d1 beq  0x00000006 , 0x000045a7 
+ 00017775  0x000040d5 call  0x0000458b 
+ 00017776  0x000040d6 beq  0x00000000 , 0x00004574 
+ 00017777  0x000040d7 beq  0x00000002 , 0x0000457a 
+ 00017778  0x000040d8 beq  0x00000003 , 0x00004574 
+ 00017779  0x000040d9 rtn 
+ 00017780  0x000040dc copy  0x00000007 , 0x0000003f 
+ 00017781  0x000040dd beq  0x00000000 , 0x0000458f 
+ 00017782  0x000040de beq  0x00000001 , 0x00004591 
+ 00017783  0x000040df beq  0x00000002 , 0x00004593 
+ 00017784  0x000040e0 beq  0x00000003 , 0x00004595 
+ 00017785  0x000040e1 rtn 
+ 00017786  0x000040e4 copy  0x00000007 , 0x0000003f 
+ 00017787  0x000040e5 beq  0x00000000 , 0x00004597 
+ 00017788  0x000040e6 beq  0x00000001 , 0x0000459a 
+ 00017789  0x000040e7 beq  0x00000002 , 0x0000459d 
+ 00017790  0x000040e8 beq  0x00000003 , 0x000045a0 
+ 00017791  0x000040e9 rtn 
+ 00017792  0x000040ec bpatch  0x000000f4 , 0x0000401e 
+ 00017793  0x000040ed arg  0x00000000 , 0x00000011 
+ 00017794  0x000040ee call  0x00007d19 
+ 00017795  0x000040f0 copy  0x00000007 , 0x0000003f 
+ 00017796  0x000040f1 beq  0x00000004 , 0x000045bc 
+ 00017797  0x000040f2 beq  0x00000005 , 0x000045bc 
+ 00017798  0x000040f6 call  0x0000458b 
+ 00017799  0x000040f7 beq  0x00000000 , 0x000045a9 
+ 00017800  0x000040f8 beq  0x00000002 , 0x000045af 
+ 00017801  0x000040f9 beq  0x00000003 , 0x000045a9 
+ 00017802  0x000040fa rtn 
+ 00017803  0x000040fd fetch  0x00000001 , 0x00004728 
+ 00017804  0x000040fe fetcht  0x00000001 , 0x00004727 
+ 00017805  0x000040ff ior  0x00000002 , 0x0000003f 
+ 00017806  0x00004100 rtn 
+ 00017807  0x00004104 jam  0x00000001 , 0x00004734 
+ 00017808  0x00004105 branch  0x000045be 
+ 00017809  0x00004107 jam  0x00000002 , 0x00004734 
+ 00017810  0x00004108 branch  0x000045be 
+ 00017811  0x0000410a jam  0x00000001 , 0x00004736 
+ 00017812  0x0000410b branch  0x000045be 
+ 00017813  0x0000410d jam  0x00000002 , 0x00004736 
+ 00017814  0x0000410e branch  0x000045be 
+ 00017815  0x00004112 jam  0x00000001 , 0x00004734 
+ 00017816  0x00004113 jam  0x00000001 , 0x00004736 
+ 00017817  0x00004114 branch  0x000045be 
+ 00017818  0x00004116 jam  0x00000002 , 0x00004734 
+ 00017819  0x00004117 jam  0x00000002 , 0x00004736 
+ 00017820  0x00004118 branch  0x000045be 
+ 00017821  0x0000411a jam  0x00000002 , 0x00004734 
+ 00017822  0x0000411b jam  0x00000001 , 0x00004736 
+ 00017823  0x0000411c branch  0x000045be 
+ 00017824  0x0000411e jam  0x00000001 , 0x00004734 
+ 00017825  0x0000411f jam  0x00000002 , 0x00004736 
+ 00017826  0x00004120 branch  0x000045be 
+ 00017827  0x00004124 jam  0x00000001 , 0x00004738 
+ 00017828  0x00004125 branch  0x000045be 
+ 00017829  0x00004127 jam  0x00000002 , 0x00004738 
+ 00017830  0x00004128 branch  0x000045be 
+ 00017831  0x0000412b jam  0x00000001 , 0x00004741 
+ 00017832  0x0000412c branch  0x000045c0 
+ 00017833  0x0000412f copy  0x00000007 , 0x0000003f 
+ 00017834  0x00004130 beq  0x00000000 , 0x000045b5 
+ 00017835  0x00004131 beq  0x00000001 , 0x000045b5 
+ 00017836  0x00004132 beq  0x00000002 , 0x000045b7 
+ 00017837  0x00004133 beq  0x00000003 , 0x000045b7 
+ 00017838  0x00004134 rtn 
+ 00017839  0x00004137 copy  0x00000007 , 0x0000003f 
+ 00017840  0x00004138 beq  0x00000000 , 0x000045b9 
+ 00017841  0x00004139 beq  0x00000001 , 0x000045b9 
+ 00017842  0x0000413a beq  0x00000002 , 0x000045b9 
+ 00017843  0x0000413b beq  0x00000003 , 0x000045b9 
+ 00017844  0x0000413c rtn 
+ 00017845  0x00004140 jam  0x00000000 , 0x00004734 
+ 00017846  0x00004141 branch  0x000045be 
+ 00017847  0x00004144 jam  0x00000000 , 0x00004736 
+ 00017848  0x00004145 branch  0x000045be 
+ 00017849  0x0000414b jam  0x00000000 , 0x00004734 
+ 00017850  0x0000414c jam  0x00000000 , 0x00004736 
+ 00017851  0x0000414d branch  0x000045be 
+ 00017852  0x00004151 jam  0x00000000 , 0x00004738 
+ 00017853  0x00004152 branch  0x000045be 
+ 00017854  0x00004155 arg  0x0000472e , 0x00000011 
+ 00017855  0x00004156 branch  0x00007e3d 
+ 00017856  0x00004158 arg  0x0000473b , 0x00000011 
+ 00017857  0x00004159 branch  0x00007e3d 
+ 00017858  0x0000415c fetch  0x00000001 , 0x00004764 
+ 00017859  0x0000415d beq  0x00000001 , 0x000045cc 
+ 00017860  0x0000415e arg  0x00004744 , 0x00000011 
+ 00017861  0x0000415f call  0x00007e54 
+ 00017862  0x00004160 nbranch  0x000045d1 , 0x00000028 
+ 00017863  0x00004162 arg  0x00004744 , 0x00000006 
+ 00017864  0x00004163 ifetch  0x00000001 , 0x00000006 
+ 00017865  0x00004164 copy  0x0000003f , 0x00000011 
+ 00017866  0x00004165 arg  0x00004745 , 0x00000012 
+ 00017867  0x00004168 rtn 
+ 00017868  0x0000416b jam  0x00000000 , 0x00004764 
+ 00017869  0x0000416c enable  0x00000028 
+ 00017870  0x0000416d arg  0x00000001 , 0x00000011 
+ 00017871  0x0000416e arg  0x00004766 , 0x00000012 
+ 00017872  0x0000416f rtn 
+ 00017873  0x00004172 fetch  0x00000001 , 0x00004747 
+ 00017874  0x00004173 beq  0x00000004 , 0x000045d5 
+ 00017875  0x00004174 beq  0x00000005 , 0x000045d5 
+ 00017876  0x00004175 rtn 
+ 00017877  0x00004177 fetch  0x00000001 , 0x0000474a 
+ 00017878  0x00004178 nbranch  0x000045dc , 0x00000034 
+ 00017879  0x00004179 fetch  0x00000001 , 0x0000474c 
+ 00017880  0x0000417a nbranch  0x000045dc , 0x00000034 
+ 00017881  0x0000417b fetch  0x00000001 , 0x0000474e 
+ 00017882  0x0000417c nbranch  0x000045dc , 0x00000034 
+ 00017883  0x0000417d rtn 
+ 00017884  0x0000417f enable  0x00000028 
+ 00017885  0x00004180 branch  0x000045c7 
+ 00017886  0x00004189 rtn  0x0000002b 
+ 00017887  0x0000418a hfetch  0x00000001 , 0x00008081 
+ 00017888  0x0000418b and_into  0x000000fc , 0x0000003f 
+ 00017889  0x0000418c hstore  0x00000001 , 0x00008081 
+ 00017890  0x0000418d setarg  0x000046b4 
+ 00017891  0x0000418e store  0x00000002 , 0x000041eb 
+ 00017892  0x00004190 setarg  0x000046b3 
+ 00017893  0x00004191 store  0x00000002 , 0x000041ed 
+ 00017894  0x00004193 setarg  0x0000340a 
+ 00017895  0x00004194 store  0x00000002 , 0x000041f7 
+ 00017896  0x00004196 setarg  0x000046b1 
+ 00017897  0x00004197 store  0x00000002 , 0x000041f3 
+ 00017898  0x00004199 setarg  0x00004612 
+ 00017899  0x0000419a store  0x00000002 , 0x000041f5 
+ 00017900  0x0000419c setarg  0x0000460c 
+ 00017901  0x0000419d store  0x00000002 , 0x000041e9 
+ 00017902  0x0000419f setarg  0x0000476a 
+ 00017903  0x000041a0 store  0x00000002 , 0x000041f9 
+ 00017904  0x000041a2 setarg  0x00004686 
+ 00017905  0x000041a3 store  0x00000002 , 0x000041fd 
+ 00017906  0x000041a5 setarg  0x00004729 
+ 00017907  0x000041a6 store  0x00000002 , 0x000046e7 
+ 00017908  0x000041a8 setarg  0x00004806 
+ 00017909  0x000041a9 store  0x00000002 , 0x000046e2 
+ 00017910  0x000041aa setarg  0x00004807 
+ 00017911  0x000041ab store  0x00000002 , 0x000046e4 
+ 00017912  0x000041ad call  0x000057a3 
+ 00017913  0x000041ae call  0x000047da 
+ 00017914  0x000041af call  0x00004788 
+ 00017915  0x000041b0 call  0x0000476d 
+ 00017916  0x000041b1 call  0x00006948 
+ 00017917  0x000041b2 call  0x0000477a 
+ 00017918  0x000041b3 call  0x00007e38 
+ 00017919  0x000041b4 call  0x00007d08 
+ 00017920  0x000041b5 call  0x00004793 
+ 00017921  0x000041b6 call  0x000047c7 
+ 00017922  0x000041b8 bpatch  0x000000f5 , 0x0000401e 
+ 00017923  0x000041b9 call  0x0000464f 
+ 00017924  0x000041ba fetch  0x00000001 , 0x000046dd 
+ 00017925  0x000041bb beq  0x00000000 , 0x00004609 
+ 00017926  0x000041bc fetch  0x00000001 , 0x000046de 
+ 00017927  0x000041bd store  0x00000001 , 0x00004686 
+ 00017928  0x000041be branch  0x0000480e 
+ 00017929  0x000041c2 jam  0x000000ff , 0x00004686 
+ 00017930  0x000041c3 jam  0x00000001 , 0x000046df 
+ 00017931  0x000041c4 branch  0x000046d9 
+ 00017932  0x000041c9 fetch  0x00000001 , 0x000046df 
+ 00017933  0x000041ca beq  0x00000002 , 0x000033d0 
+ 00017934  0x000041cb call  0x0000527e 
+ 00017935  0x000041cc fetch  0x00000001 , 0x00004256 
+ 00017936  0x000041cd nbranch  0x000033d0 , 0x00000034 
+ 00017937  0x000041ce branch  0x000033d2 
+ 00017938  0x000041d3 copy  0x00000013 , 0x0000003f 
+ 00017939  0x000041d5 beq  0x00000001 , 0x00004626 
+ 00017940  0x000041d6 beq  0x00000002 , 0x00004629 
+ 00017941  0x000041d7 beq  0x00000004 , 0x00004631 
+ 00017942  0x000041d8 beq  0x00000005 , 0x00004633 
+ 00017943  0x000041d9 beq  0x00000006 , 0x00004635 
+ 00017944  0x000041da beq  0x00000007 , 0x00004638 
+ 00017945  0x000041db beq  0x00000012 , 0x0000463c 
+ 00017946  0x000041dc beq  0x00000013 , 0x00004644 
+ 00017947  0x000041dd beq  0x00000027 , 0x00004645 
+ 00017948  0x000041de beq  0x0000002e , 0x00004648 
+ 00017949  0x000041df beq  0x0000003d , 0x00004649 
+ 00017950  0x000041e1 beq  0x00000014 , 0x00004658 
+ 00017951  0x000041e2 beq  0x00000015 , 0x0000465c 
+ 00017952  0x000041e3 beq  0x0000003f , 0x0000465f 
+ 00017953  0x000041e4 beq  0x00000040 , 0x00004665 
+ 00017954  0x000041e6 beq  0x00000010 , 0x0000466b 
+ 00017955  0x000041e7 beq  0x0000002c , 0x0000466c 
+ 00017956  0x000041e8 beq  0x0000002d , 0x00004677 
+ 00017957  0x000041e9 rtn 
+ 00017958  0x000041ef jam  0x00000000 , 0x000046ad 
+ 00017959  0x000041f0 jam  0x00000000 , 0x000046ac 
+ 00017960  0x000041f1 rtn 
+ 00017961  0x000041f5 call  0x0000462b 
+ 00017962  0x000041f6 branch  0x00004631 
+ 00017963  0x000041f9 jam  0x00000000 , 0x000041e2 
+ 00017964  0x000041fa jam  0x00000000 , 0x00004680 
+ 00017965  0x000041fb jam  0x00000000 , 0x00004205 
+ 00017966  0x000041fc jam  0x00000000 , 0x000046ac 
+ 00017967  0x000041fd jam  0x00000000 , 0x000046ad 
+ 00017968  0x000041fe branch  0x00007e38 
+ 00017969  0x00004202 call  0x000033a9 
+ 00017970  0x00004203 branch  0x000046c2 
+ 00017971  0x00004207 call  0x000046b6 
+ 00017972  0x00004208 branch  0x00003408 
+ 00017973  0x0000420c setarg  0x00000002 
+ 00017974  0x0000420d store  0x00000001 , 0x00004680 
+ 00017975  0x0000420e rtn 
+ 00017976  0x00004212 jam  0x00000000 , 0x000046ac 
+ 00017977  0x00004213 setarg  0x00000001 
+ 00017978  0x00004214 store  0x00000001 , 0x000046ad 
+ 00017979  0x00004215 rtn 
+ 00017980  0x00004219 fetch  0x00000001 , 0x000041e2 
+ 00017981  0x0000421a rtneq  0x00000001 
+ 00017982  0x0000421b jam  0x00000001 , 0x000041e2 
+ 00017983  0x0000421c call  0x00003416 
+ 00017984  0x0000421d call  0x00003414 
+ 00017985  0x0000421e call  0x000046b6 
+ 00017986  0x0000421f call  0x00003408 
+ 00017987  0x00004220 branch  0x0000340e 
+ 00017988  0x00004224 branch  0x00004631 
+ 00017989  0x00004228 setarg  0x00000005 
+ 00017990  0x00004229 store  0x00000001 , 0x000046ac 
+ 00017991  0x0000422a rtn 
+ 00017992  0x0000422e branch  0x000033cd 
+ 00017993  0x00004233 arg  0x00000000 , 0x00000012 
+ 00017994  0x00004234 fetch  0x00000001 , 0x00004217 
+ 00017995  0x00004235 mul32  0x0000003f , 0x00000022 , 0x00000002 
+ 00017996  0x00004236 fetch  0x00000002 , 0x00004215 
+ 00017997  0x00004237 copy  0x0000003f , 0x00000011 
+ 00017998  0x00004238 branch  0x00006606 
+ 00017999  0x0000423b arg  0x00000000 , 0x00000012 
+ 00018000  0x0000423c fetch  0x00000001 , 0x0000469a 
+ 00018001  0x0000423d rtnbit0  0x00000001 
+ 00018002  0x0000423e fetch  0x00000001 , 0x00004217 
+ 00018003  0x0000423f rtn  0x00000034 
+ 00018004  0x00004240 mul32  0x0000003f , 0x00000022 , 0x00000002 
+ 00018005  0x00004241 fetch  0x00000002 , 0x00004215 
+ 00018006  0x00004242 copy  0x0000003f , 0x00000011 
+ 00018007  0x00004243 branch  0x000065df 
+ 00018008  0x00004248 call  0x000046b6 
+ 00018009  0x00004249 setarg  0x00000000 
+ 00018010  0x0000424a store  0x00000002 , 0x000046b7 
+ 00018011  0x0000424b branch  0x00003408 
+ 00018012  0x0000424f call  0x00007e38 
+ 00018013  0x00004250 jam  0x00000000 , 0x000046b0 
+ 00018014  0x00004251 branch  0x000046d9 
+ 00018015  0x00004255 call  0x00007e38 
+ 00018016  0x00004256 jam  0x00000001 , 0x000046b0 
+ 00018017  0x00004257 fetch  0x00000008 , 0x000046c1 
+ 00018018  0x00004258 store  0x00000008 , 0x00004496 
+ 00018019  0x00004259 call  0x00003416 
+ 00018020  0x0000425a branch  0x00005abf 
+ 00018021  0x0000425e fetch  0x00000002 , 0x00004509 
+ 00018022  0x0000425f rtneq  0x00000000 
+ 00018023  0x00004260 fetch  0x00000008 , 0x000046c9 
+ 00018024  0x00004261 rtn  0x00000034 
+ 00018025  0x00004262 store  0x00000008 , 0x00004496 
+ 00018026  0x00004263 branch  0x00005abf 
+ 00018027  0x00004268 branch  0x0000481f 
+ 00018028  0x0000426b fetch  0x00000001 , 0x000046dd 
+ 00018029  0x0000426c rtneq  0x00000000 
+ 00018030  0x0000426d fetch  0x00000001 , 0x000046df 
+ 00018031  0x0000426e rtnne  0x00000001 
+ 00018032  0x0000426f call  0x00004672 
+ 00018033  0x00004270 branch  0x00003406 
+ 00018034  0x00004273 jam  0x00000001 , 0x000048df 
+ 00018035  0x00004274 arg  0x0000000b , 0x00000039 
+ 00018036  0x00004275 arg  0x000048e0 , 0x00000005 
+ 00018037  0x00004276 arg  0x000048c9 , 0x00000006 
+ 00018038  0x00004277 branch  0x00007f01 
+ 00018039  0x0000427a fetch  0x00000001 , 0x000046dd 
+ 00018040  0x0000427b rtneq  0x00000000 
+ 00018041  0x0000427c fetch  0x00000001 , 0x000046df 
+ 00018042  0x0000427d beq  0x00000001 , 0x0000467c 
+ 00018043  0x0000427e branch  0x0000481b 
+ 00018044  0x00004281 fetch  0x00000001 , 0x000048df 
+ 00018045  0x00004282 rtnne  0x00000001 
+ 00018046  0x00004283 jam  0x00000000 , 0x000048df 
+ 00018047  0x00004284 fetch  0x00000002 , 0x00004682 
+ 00018048  0x00004285 bbit1  0x00000000 , 0x00003408 
+ 00018049  0x00004286 bbit1  0x00000009 , 0x00003408 
+ 00018050  0x00004287 arg  0x0000000b , 0x00000039 
+ 00018051  0x00004288 arg  0x000048e0 , 0x00000006 
+ 00018052  0x00004289 arg  0x000048c9 , 0x00000005 
+ 00018053  0x0000428a branch  0x00007f01 
+ 00018054  0x00004291 call  0x0000468c 
+ 00018055  0x00004294 call  0x00004693 
+ 00018056  0x00004297 call  0x0000469e 
+ 00018057  0x00004298 call  0x000046a6 
+ 00018058  0x00004299 call  0x000046a9 
+ 00018059  0x0000429c branch  0x000046ac 
+ 00018060  0x000042a1 arg  0x000046db , 0x00000013 
+ 00018061  0x000042a2 arg  0x0000468f , 0x00000012 
+ 00018062  0x000042a3 branch  0x00003374 
+ 00018063  0x000042a5 jam  0x00000002 , 0x000046df 
+ 00018064  0x000042a6 call  0x00003408 
+ 00018065  0x000042a7 call  0x000046f4 
+ 00018066  0x000042a8 branch  0x0000480b 
+ 00018067  0x000042ac arg  0x000048ec , 0x00000013 
+ 00018068  0x000042ad arg  0x00004696 , 0x00000012 
+ 00018069  0x000042ae branch  0x0000336d 
+ 00018070  0x000042b1 fetch  0x00000002 , 0x00004682 
+ 00018071  0x000042b2 bbit1  0x00000009 , 0x0000480b 
+ 00018072  0x000042b3 bbit1  0x00000000 , 0x0000480b 
+ 00018073  0x000042b4 fetch  0x00000001 , 0x000048c9 
+ 00018074  0x000042b5 beq  0x00000001 , 0x0000480b 
+ 00018075  0x000042b6 beq  0x00000004 , 0x0000480b 
+ 00018076  0x000042b7 beq  0x00000005 , 0x0000480b 
+ 00018077  0x000042b8 branch  0x0000340a 
+ 00018078  0x000042bd arg  0x000046ac , 0x00000013 
+ 00018079  0x000042be arg  0x000046a1 , 0x00000012 
+ 00018080  0x000042bf branch  0x0000336d 
+ 00018081  0x000042c2 fetch  0x00000001 , 0x0000027f 
+ 00018082  0x000042c3 set1  0x00000000 , 0x0000003f 
+ 00018083  0x000042c4 set1  0x00000007 , 0x0000003f 
+ 00018084  0x000042c5 store  0x00000001 , 0x0000027f 
+ 00018085  0x000042c6 rtn 
+ 00018086  0x000042c9 arg  0x00004680 , 0x00000013 
+ 00018087  0x000042ca arg  0x0000463c , 0x00000012 
+ 00018088  0x000042cb branch  0x0000336d 
+ 00018089  0x000042ce arg  0x000046ad , 0x00000013 
+ 00018090  0x000042cf arg  0x000033e9 , 0x00000012 
+ 00018091  0x000042d0 branch  0x0000336d 
+ 00018092  0x000042d6 fetch  0x00000001 , 0x000046df 
+ 00018093  0x000042d7 rtnne  0x00000001 
+ 00018094  0x000042d8 arg  0x000046b7 , 0x00000013 
+ 00018095  0x000042d9 arg  0x000046c2 , 0x00000012 
+ 00018096  0x000042da branch  0x00003374 
+ 00018097  0x000042de call  0x0000473a 
+ 00018098  0x000042df branch  0x00006978 
+ 00018099  0x000042e3 branch  0x0000696c 
+ 00018100  0x000042e6 call  0x00006835 
+ 00018101  0x000042e7 branch  0x000046b3 
+ 00018102  0x000042ee fetch  0x00000001 , 0x0000469a 
+ 00018103  0x000042ef bbit1  0x00000001 , 0x000046be 
+ 00018104  0x000042f0 bbit1  0x00000000 , 0x000046ba 
+ 00018105  0x000042f1 rtn 
+ 00018106  0x000042f4 fetch  0x00000002 , 0x000046d7 
+ 00018107  0x000042f5 store  0x00000002 , 0x000046d9 
+ 00018108  0x000042f6 store  0x00000002 , 0x000046db 
+ 00018109  0x000042f7 branch  0x000033f8 
+ 00018110  0x000042fa fetch  0x00000002 , 0x000046d3 
+ 00018111  0x000042fb store  0x00000002 , 0x000046d9 
+ 00018112  0x000042fc store  0x00000002 , 0x000046db 
+ 00018113  0x000042fd branch  0x000033f0 
+ 00018114  0x00004300 fetch  0x00000001 , 0x000046df 
+ 00018115  0x00004301 rtnne  0x00000001 
+ 00018116  0x00004302 fetch  0x00000001 , 0x0000469a 
+ 00018117  0x00004303 bbit1  0x00000001 , 0x000046c8 
+ 00018118  0x00004304 bbit1  0x00000000 , 0x000046cc 
+ 00018119  0x00004305 rtn 
+ 00018120  0x00004308 fetch  0x00000002 , 0x000046d1 ,
+ 00018121  0x00004309 store  0x00000002 , 0x000046d9 
+ 00018122  0x0000430a store  0x00000002 , 0x000046db 
+ 00018123  0x0000430b branch  0x000033eb 
+ 00018124  0x0000430e fetch  0x00000002 , 0x00004682 
+ 00018125  0x0000430f rtnbit1  0x00000009 
+ 00018126  0x00004310 fetch  0x00000002 , 0x000046d5 
+ 00018127  0x00004311 store  0x00000002 , 0x000046d9 
+ 00018128  0x00004312 store  0x00000002 , 0x000046db 
+ 00018129  0x00004313 fetch  0x00000002 , 0x000046b3 
+ 00018130  0x00004314 call  0x000046f0 
+ 00018131  0x00004315 call  0x00003404 
+ 00018132  0x00004316 fetch  0x00000004 , 0x000046bd 
+ 00018133  0x00004317 store  0x00000004 , 0x000048cc 
+ 00018134  0x00004318 fetch  0x00000002 , 0x00004682 
+ 00018135  0x00004319 rtnbit1  0x0000000b 
+ 00018136  0x0000431a branch  0x000033fa 
+ 00018137  0x0000431e fetch  0x00000001 , 0x000046df 
+ 00018138  0x0000431f rtnne  0x00000001 
+ 00018139  0x00004320 fetch  0x00000001 , 0x0000469a 
+ 00018140  0x00004321 bbit1  0x00000001 , 0x000046df 
+ 00018141  0x00004322 bbit1  0x00000000 , 0x000046e4 
+ 00018142  0x00004323 rtn 
+ 00018143  0x00004326 call  0x000046f8 
+ 00018144  0x00004327 branch  0x000046c2 , 0x00000034 
+ 00018145  0x00004328 call  0x00003406 
+ 00018146  0x00004329 call  0x000033f0 
+ 00018147  0x0000432a branch  0x000033e1 
+ 00018148  0x0000432d fetch  0x00000002 , 0x000046b7 
+ 00018149  0x0000432e fetcht  0x00000002 , 0x000046b5 
+ 00018150  0x0000432f storet  0x00000002 , 0x000046b7 
+ 00018151  0x00004330 nrtn  0x00000034 
+ 00018152  0x00004331 fetch  0x00000002 , 0x000046b1 
+ 00018153  0x00004332 call  0x000046f0 
+ 00018154  0x00004333 call  0x00003404 
+ 00018155  0x00004334 fetch  0x00000004 , 0x000046b9 
+ 00018156  0x00004335 store  0x00000004 , 0x000048cc 
+ 00018157  0x00004336 fetch  0x00000002 , 0x00004682 
+ 00018158  0x00004337 rtnbit1  0x0000000b 
+ 00018159  0x00004338 branch  0x000033fa 
+ 00018160  0x0000433c store  0x00000002 , 0x00004154 
+ 00018161  0x0000433d increase  0xfffffffc , 0x0000003f 
+ 00018162  0x0000433e store  0x00000002 , 0x00004482 
+ 00018163  0x0000433f rtn 
+ 00018164  0x00004343 fetch  0x00000002 , 0x00004682 
+ 00018165  0x00004344 bbit1  0x00000009 , 0x00003402 
+ 00018166  0x00004345 bbit1  0x00000000 , 0x000033e9 
+ 00018167  0x00004346 branch  0x000046b6 
+ 00018168  0x0000434b fetch  0x00000001 , 0x00004217 
+ 00018169  0x0000434c copy  0x0000003f , 0x00000039 
+ 00018170  0x0000434d fetch  0x00000002 , 0x00004215 
+ 00018171  0x0000434e copy  0x0000003f , 0x00000011 
+ 00018172  0x00004350 ifetch  0x00000002 , 0x00000011 
+ 00018173  0x00004351 beq  0x00000000 , 0x00004701 
+ 00018174  0x00004352 increase  0x00000022 , 0x00000011 
+ 00018175  0x00004353 loop  0x000046fc 
+ 00018176  0x00004354 branch  0x00007ff1 
+ 00018177  0x00004357 ifetch  0x00000006 , 0x00000006 
+ 00018178  0x00004358 store  0x00000006 , 0x000041d0 
+ 00018179  0x00004359 increase  0x0000000a , 0x00000006 
+ 00018180  0x0000435a arg  0x000041be , 0x00000005 
+ 00018181  0x0000435b call  0x00007ebf 
+ 00018182  0x0000435c call  0x000067d7 
+ 00018183  0x0000435d branch  0x00007fef 
+ 00018184  0x00004364 call  0x00007fe9 
+ 00018185  0x00004365 fetch  0x00000002 , 0x00004682 
+ 00018186  0x00004366 bbit1  0x00000000 , 0x0000470d 
+ 00018187  0x00004367 bbit1  0x00000009 , 0x00004710 
+ 00018188  0x00004368 rtn 
+ 00018189  0x0000436b fetch  0x00000001 , 0x00004253 
+ 00018190  0x0000436c rtnne  0x0000003f 
+ 00018191  0x0000436d branch  0x00007fe7 
+ 00018192  0x00004370 fetch  0x00000001 , 0x000046b0 
+ 00018193  0x00004371 rtn  0x00000034 
+ 00018194  0x00004372 branch  0x00007fe7 
+ 00018195  0x00004378 call  0x00007fe9 
+ 00018196  0x00004379 fetch  0x00000002 , 0x00004682 
+ 00018197  0x0000437a rtnbit1  0x00000000 
+ 00018198  0x0000437b rtnbit1  0x00000009 
+ 00018199  0x0000437c branch  0x00007fe7 
+ 00018200  0x00004381 fetch  0x00000001 , 0x0000469a 
+ 00018201  0x00004382 bbit1  0x00000001 , 0x0000471c 
+ 00018202  0x00004383 bbit1  0x00000000 , 0x0000471f 
+ 00018203  0x00004384 rtn 
+ 00018204  0x00004387 fetch  0x00000001 , 0x00004093 
+ 00018205  0x00004388 rtnne  0x00000003 
+ 00018206  0x00004389 branch  0x000046d9 
+ 00018207  0x0000438c branch  0x000046d9 
+ 00018208  0x00004390 disable  0x0000002c 
+ 00018209  0x00004391 fetch  0x00000002 , 0x000046d9 
+ 00018210  0x00004392 store  0x00000002 , 0x000046db 
+ 00018211  0x00004394 call  0x00004713 
+ 00018212  0x00004395 branch  0x00004718 , 0x00000028 
+ 00018213  0x00004397 call  0x00004708 
+ 00018214  0x00004398 nrtn  0x00000028 
+ 00018215  0x00004399 enable  0x0000002c 
+ 00018216  0x0000439a rtn 
+ 00018217  0x0000439f call  0x00004720 
+ 00018218  0x000043a0 nrtn  0x0000002c 
+ 00018219  0x000043a1 deposit  0x00000011 
+ 00018220  0x000043a2 branch  0x00004730 , 0x00000034 
+ 00018221  0x000043a4 call  0x00003406 
+ 00018222  0x000043a5 arg  0x000046f1 , 0x00000013 
+ 00018223  0x000043a6 branch  0x00004732 
+ 00018224  0x000043a9 call  0x00003408 
+ 00018225  0x000043aa arg  0x00004719 , 0x00000013 
+ 00018226  0x000043ad arg  0x00000005 , 0x0000003f 
+ 00018227  0x000043ae imul32  0x00000007 , 0x0000003f 
+ 00018228  0x000043af iadd  0x00000013 , 0x00000013 
+ 00018229  0x000043b3 ifetch  0x00000001 , 0x00000013 
+ 00018230  0x000043b4 rtn  0x00000034 
+ 00018231  0x000043b5 call  0x00004762 
+ 00018232  0x000043b6 increase  0x00000001 , 0x00000013 
+ 00018233  0x000043b7 branch  0x00004735 
+ 00018234  0x000043bb fetch  0x00000002 , 0x00004682 
+ 00018235  0x000043bc bbit1  0x00000009 , 0x0000473e 
+ 00018236  0x000043bd bbit1  0x00000000 , 0x0000474e 
+ 00018237  0x000043be rtn 
+ 00018238  0x000043c1 call  0x00005892 
+ 00018239  0x000043c2 nrtn  0x00000034 
+ 00018240  0x000043c3 call  0x00004765 
+ 00018241  0x000043c4 nrtn  0x00000028 
+ 00018242  0x000043c5 pincrease  0xffffffff 
+ 00018243  0x000043c6 mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00018244  0x000043c7 arg  0x00004741 , 0x00000002 
+ 00018245  0x000043c8 iadd  0x00000002 , 0x00000006 
+ 00018246  0x000043ca ifetch  0x00000001 , 0x00000006 
+ 00018247  0x000043cb copy  0x0000003f , 0x00000011 
+ 00018248  0x000043cc ifetcht  0x00000002 , 0x00000006 
+ 00018249  0x000043cd call  0x00007ea5 
+ 00018250  0x000043ce call  0x00005a64 
+ 00018251  0x000043cf copy  0x00000011 , 0x00000039 
+ 00018252  0x000043d0 call  0x00007e9f 
+ 00018253  0x000043d1 branch  0x00007f01 
+ 00018254  0x000043d5 call  0x00005271 
+ 00018255  0x000043d6 nrtn  0x00000034 
+ 00018256  0x000043d7 call  0x00004765 
+ 00018257  0x000043d8 nrtn  0x00000028 
+ 00018258  0x000043d9 pincrease  0xffffffff 
+ 00018259  0x000043da mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00018260  0x000043db arg  0x000047a0 , 0x00000002 
+ 00018261  0x000043dc iadd  0x00000002 , 0x00000006 
+ 00018262  0x000043dd ifetch  0x00000005 , 0x00000006 
+ 00018263  0x000043de store  0x00000005 , 0x0000479b 
+ 00018264  0x000043e0 fetch  0x00000001 , 0x0000479b 
+ 00018265  0x000043e1 copy  0x0000003f , 0x00000011 
+ 00018266  0x000043e2 call  0x00004d63 
+ 00018267  0x000043e3 fetch  0x00000002 , 0x0000424e 
+ 00018268  0x000043e4 istore  0x00000002 , 0x00000005 
+ 00018269  0x000043e5 setarg  0x000000a1 
+ 00018270  0x000043e6 istore  0x00000001 , 0x00000005 
+ 00018271  0x000043e7 fetch  0x00000004 , 0x0000479c 
+ 00018272  0x000043e8 istore  0x00000009 , 0x00000005 
+ 00018273  0x000043e9 rtn 
+ 00018274  0x000043ee store  0x00000001 , 0x00000a9a 
+ 00018275  0x000043ef arg  0x00000a9a , 0x00000011 
+ 00018276  0x000043f0 branch  0x00007e3d 
+ 00018277  0x000043f3 arg  0x00000a9a , 0x00000011 
+ 00018278  0x000043f4 call  0x00007e54 
+ 00018279  0x000043f5 nrtn  0x00000028 
+ 00018280  0x000043f6 fetch  0x00000001 , 0x00000a9a 
+ 00018281  0x000043f7 rtn 
+ 00018282  0x000043fb fetch  0x00000002 , 0x00000478 
+ 00018283  0x000043fc beq  0x00000018 , 0x0000465f 
+ 00018284  0x000043fd rtn 
+ 00018285  0x00004400 setarg  0x00000002 
+ 00018286  0x00004401 store  0x00000001 , 0x000048eb 
+ 00018287  0x00004403 setarg  0x00200008 
+ 00018288  0x00004404 store  0x00000004 , 0x000046c1 
+ 00018289  0x00004405 setarg  0x012c0005 
+ 00018290  0x00004406 istore  0x00000004 , 0x00000005 
+ 00018291  0x00004409 jam  0x00000017 , 0x000044a6 
+ 00018292  0x0000440c setarg  0x0000001b 
+ 00018293  0x0000440d store  0x00000002 , 0x000044fa 
+ 00018294  0x0000440e call  0x00005810 
+ 00018295  0x0000440f call  0x0000582c 
+ 00018296  0x00004410 call  0x00005839 
+ 00018297  0x00004411 branch  0x00005818 
+ 00018298  0x00004416 arg  0x00000028 , 0x00000039 
+ 00018299  0x00004417 arg  0x00004741 , 0x00000005 
+ 00018300  0x00004418 arg  0x0000949f , 0x00000006 
+ 00018301  0x00004419 call  0x00007ef4 
+ 00018302  0x0000441a arg  0x00000028 , 0x00000039 
+ 00018303  0x0000441b arg  0x000047a0 , 0x00000005 
+ 00018304  0x0000441c arg  0x000094c7 , 0x00000006 
+ 00018305  0x0000441d branch  0x00007ef4 
+ 00018306  0x00004421 arg  0x0000017e , 0x00000039 
+ 00018307  0x00004422 arg  0x0000913a , 0x00000006 
+ 00018308  0x00004423 branch  0x00007ef4 
+ 00018309  0x00004427 arg  0x000001e7 , 0x00000039 
+ 00018310  0x00004428 arg  0x000092b8 , 0x00000006 
+ 00018311  0x00004429 branch  0x00007ef4 
+ 00018312  0x0000442e call  0x000047ae 
+ 00018313  0x0000442f nrtn  0x00000028 
+ 00018314  0x00004430 fetch  0x00000001 , 0x0000469f 
+ 00018315  0x00004431 call  0x00004790 
+ 00018316  0x00004432 fetch  0x00000001 , 0x000046a0 
+ 00018317  0x00004433 call  0x00004790 
+ 00018318  0x00004434 fetch  0x00000001 , 0x000046a1 
+ 00018319  0x00004435 branch  0x00004790 
+ 00018320  0x00004438 rtn  0x00000034 
+ 00018321  0x00004439 or  0x0000003f , 0x00000080 , 0x00000002 
+ 00018322  0x0000443a branch  0x000067f9 
+ 00018323  0x0000443e call  0x000047ae 
+ 00018324  0x0000443f nrtn  0x00000028 
+ 00018325  0x00004440 call  0x00004797 
+ 00018326  0x00004441 branch  0x000047b4 
+ 00018327  0x00004444 arg  0x00000000 , 0x00000011 
+ 00018328  0x00004445 fetch  0x00000001 , 0x0000469f 
+ 00018329  0x00004446 call  0x000047a9 
+ 00018330  0x00004447 nsetflag  0x00000034 , 0x00000000 , 0x00000011 
+ 00018331  0x00004448 fetch  0x00000001 , 0x000046a0 
+ 00018332  0x00004449 call  0x000047a9 
+ 00018333  0x0000444a nsetflag  0x00000034 , 0x00000001 , 0x00000011 
+ 00018334  0x0000444b fetch  0x00000001 , 0x000046a1 
+ 00018335  0x0000444c call  0x000047a9 
+ 00018336  0x0000444d nsetflag  0x00000034 , 0x00000002 , 0x00000011 
+ 00018337  0x0000444e copy  0x00000011 , 0x0000003f 
+ 00018338  0x0000444f store  0x00000001 , 0x000046a9 
+ 00018339  0x00004450 fetch  0x00000001 , 0x0000469e 
+ 00018340  0x00004451 imul32  0x00000011 , 0x0000003f 
+ 00018341  0x00004452 fetcht  0x00000002 , 0x0000469c 
+ 00018342  0x00004453 iadd  0x00000002 , 0x0000003f 
+ 00018343  0x00004454 store  0x00000002 , 0x000046aa 
+ 00018344  0x00004455 rtn 
+ 00018345  0x00004458 rtn  0x00000034 
+ 00018346  0x00004459 or  0x0000003f , 0x00000080 , 0x00000002 
+ 00018347  0x0000445a call  0x0000681d 
+ 00018348  0x0000445b nbranch  0x00007ff1 , 0x00000001 
+ 00018349  0x0000445c branch  0x00007fef 
+ 00018350  0x00004460 call  0x00007fe9 
+ 00018351  0x00004461 fetch  0x00000001 , 0x000046a8 
+ 00018352  0x00004462 nrtn  0x00000034 
+ 00018353  0x00004463 fetch  0x00000001 , 0x0000469b 
+ 00018354  0x00004464 rtn  0x00000034 
+ 00018355  0x00004465 branch  0x00007fe7 
+ 00018356  0x00004469 call  0x0000666a 
+ 00018357  0x0000446a fetch  0x00000002 , 0x000046aa 
+ 00018358  0x0000446b arg  0x00000ac2 , 0x00000011 
+ 00018359  0x0000446c fetcht  0x00000001 , 0x0000469e 
+ 00018360  0x0000446d call  0x000066b3 
+ 00018361  0x0000446e call  0x0000666d 
+ 00018362  0x00004470 fetch  0x00000001 , 0x00000ac2 
+ 00018363  0x00004471 copy  0x0000003f , 0x00000039 
+ 00018364  0x00004472 store  0x00000001 , 0x000043af 
+ 00018365  0x00004473 call  0x00007ef4 
+ 00018366  0x00004474 fetch  0x00000001 , 0x00000ac2 
+ 00018367  0x00004475 copy  0x0000003f , 0x00000039 
+ 00018368  0x00004476 store  0x00000001 , 0x00004515 
+ 00018369  0x00004477 call  0x00007ef4 
+ 00018370  0x00004478 ifetch  0x00000001 , 0x00000006 
+ 00018371  0x00004479 store  0x00000001 , 0x000046e6 
+ 00018372  0x0000447a ifetch  0x00000001 , 0x00000006 
+ 00018373  0x0000447b store  0x00000001 , 0x000046dd 
+ 00018374  0x0000447c rtn 
+ 00018375  0x00004480 fetch  0x00000001 , 0x0000469a 
+ 00018376  0x00004481 rtnbit0  0x00000001 
+ 00018377  0x00004482 arg  0x00000003 , 0x00000002 
+ 00018378  0x00004483 fetch  0x00000002 , 0x000046a4 
+ 00018379  0x00004484 copy  0x0000003f , 0x00000012 
+ 00018380  0x00004485 arg  0x000046a6 , 0x00000011 
+ 00018381  0x00004486 call  0x000065df 
+ 00018382  0x00004487 fetcht  0x00000002 , 0x000046a6 
+ 00018383  0x00004488 setarg  0x00001b3a 
+ 00018384  0x00004489 isub  0x00000002 , 0x0000003e 
+ 00018385  0x0000448a nrtn  0x00000005 
+ 00018386  0x0000448b fetch  0x00000001 , 0x000046a8 
+ 00018387  0x0000448c rtn  0x00000034 
+ 00018388  0x0000448d copy  0x0000003f , 0x00000002 
+ 00018389  0x0000448e fetch  0x00000002 , 0x000046a4 
+ 00018390  0x0000448f add  0x0000003f , 0x00000003 , 0x00000012 
+ 00018391  0x00004490 arg  0x00000ac2 , 0x00000011 
+ 00018392  0x00004491 call  0x000065df 
+ 00018393  0x00004492 branch  0x000047e8 
+ 00018394  0x00004495 fetch  0x00000002 , 0x000046a2 
+ 00018395  0x00004496 rtn  0x00000034 
+ 00018396  0x00004497 call  0x0000666a 
+ 00018397  0x00004498 arg  0x00000001 , 0x00000002 
+ 00018398  0x00004499 arg  0x000046a8 , 0x00000011 
+ 00018399  0x0000449a call  0x000066b3 
+ 00018400  0x0000449c fetch  0x00000001 , 0x000046a8 
+ 00018401  0x0000449d rtn  0x00000034 
+ 00018402  0x0000449f fetch  0x00000002 , 0x000046a2 
+ 00018403  0x000044a0 pincrease  0x00000001 
+ 00018404  0x000044a1 arg  0x00000ac2 , 0x00000011 
+ 00018405  0x000044a2 fetcht  0x00000001 , 0x000046a8 
+ 00018406  0x000044a3 call  0x000066b3 
+ 00018407  0x000044a4 call  0x0000666d 
+ 00018408  0x000044a6 call  0x000047ba 
+ 00018409  0x000044a8 ifetch  0x00000002 , 0x00000006 
+ 00018410  0x000044a9 rtn  0x00000034 
+ 00018411  0x000044aa copy  0x0000003f , 0x00000005 
+ 00018412  0x000044ab ifetcht  0x00000001 , 0x00000006 
+ 00018413  0x000044ac copy  0x00000002 , 0x00000039 
+ 00018414  0x000044ad call  0x00007f01 
+ 00018415  0x000044ae branch  0x000047e9 
+ 00018416  0x000044b3 fetch  0x00000001 , 0x0000469a 
+ 00018417  0x000044b4 rtnbit0  0x00000001 
+ 00018418  0x000044b5 fetch  0x00000002 , 0x000046ae 
+ 00018419  0x000044b6 copy  0x0000003f , 0x00000012 
+ 00018420  0x000044b7 arg  0x00000004 , 0x00000002 
+ 00018421  0x000044b8 arg  0x00000ac2 , 0x00000011 
+ 00018422  0x000044b9 call  0x000065df 
+ 00018423  0x000044ba fetch  0x00000001 , 0x00000ac2 
+ 00018424  0x000044bb bne  0x00000001 , 0x000047f9 
+ 00018425  0x000044bd setarg  0x00000001 
+ 00018426  0x000044be store  0x00000001 , 0x00000ac2 
+ 00018427  0x000044bf force  0x00000003 , 0x00000039 
+ 00018428  0x000044c0 call  0x0000630d 
+ 00018429  0x000044c1 fetch  0x00000002 , 0x000046ae 
+ 00018430  0x000044c2 copy  0x0000003f , 0x00000012 
+ 00018431  0x000044c3 arg  0x00000004 , 0x00000002 
+ 00018432  0x000044c4 arg  0x00000ac2 , 0x00000011 
+ 00018433  0x000044c5 call  0x00006606 
+ 00018434  0x000044c7 fetch  0x00000003 , 0x00000ac3 
+ 00018435  0x000044c8 store  0x00000003 , 0x000040a0 
+ 00018436  0x000044c9 store  0x00000003 , 0x000044a0 
+ 00018437  0x000044ca rtn 
+ 00018438  0x000044ce branch  0x000046d9 
+ 00018439  0x000044d2 arg  0x00000000 , 0x00000011 
+ 00018440  0x000044d3 arg  0x000048d4 , 0x00000013 
+ 00018441  0x000044d4 call  0x00007d24 
+ 00018442  0x000044d5 call  0x000046f4 
+ 00018443  0x000044d7 fetch  0x00000001 , 0x000048eb 
+ 00018444  0x000044d8 store  0x00000001 , 0x000048ec 
+ 00018445  0x000044d9 rtn 
+ 00018446  0x000044de setarg  0x00000000 
+ 00018447  0x000044df call  0x00004816 
+ 00018448  0x000044e0 jam  0x00000001 , 0x00004679 
+ 00018449  0x000044e1 call  0x00007cd3 
+ 00018450  0x000044e2 call  0x00007cdd 
+ 00018451  0x000044e3 fetch  0x00000002 , 0x00004682 
+ 00018452  0x000044e4 rtnbit1  0x0000000c 
+ 00018453  0x000044e5 branch  0x0000340a 
+ 00018454  0x000044e8 fetcht  0x00000002 , 0x0000423f 
+ 00018455  0x000044e9 istore  0x00000001 , 0x00000002 
+ 00018456  0x000044ea ifetch  0x00000001 , 0x00000005 
+ 00018457  0x000044eb store  0x00000001 , 0x00004685 
+ 00018458  0x000044ec rtn 
+ 00018459  0x000044f0 fetch  0x00000002 , 0x0000423f 
+ 00018460  0x000044f1 ifetch  0x00000001 , 0x0000003f 
+ 00018461  0x000044f2 rtnne  0x00000000 
+ 00018462  0x000044f3 branch  0x0000340a 
+ 00018463  0x000044f7 fetcht  0x00000002 , 0x0000423f 
+ 00018464  0x000044f8 ifetch  0x00000001 , 0x00000002 
+ 00018465  0x000044f9 beq  0x00000001 , 0x0000482a 
+ 00018466  0x000044fb setarg  0x00000001 
+ 00018467  0x000044fc fetcht  0x00000002 , 0x0000423f 
+ 00018468  0x000044fd istore  0x00000001 , 0x00000002 
+ 00018469  0x000044fe add  0x00000002 , 0x00000002 , 0x00000006 
+ 00018470  0x000044ff ifetch  0x00000001 , 0x00000006 
+ 00018471  0x00004500 istore  0x00000001 , 0x00004685 
+ 00018472  0x00004501 ifetch  0x00000002 , 0x00000006 
+ 00018473  0x00004502 branch  0x00007f9c 
+ 00018474  0x00004505 setarg  0x00000002 
+ 00018475  0x00004506 call  0x00004816 
+ 00018476  0x00004507 add  0x00000002 , 0x00000005 , 0x00000006 
+ 00018477  0x00004508 ifetch  0x00000002 , 0x00000006 
+ 00018478  0x00004509 branch  0x0000340a , 0x00000034 
+ 00018479  0x0000450a branch  0x00007f9c 
+ 00018480  0x00004511 store  0x00000006 , 0x00000101 
+ 00018481  0x00004512 fetch  0x00000001 , 0x00000101 
+ 00018482  0x00004513 store  0x00000001 , 0x0000010c 
+ 00018483  0x00004514 ifetch  0x00000001 , 0x00000006 
+ 00018484  0x00004515 store  0x00000001 , 0x0000010b 
+ 00018485  0x00004516 ifetch  0x00000001 , 0x00000006 
+ 00018486  0x00004517 store  0x00000001 , 0x0000010a 
+ 00018487  0x00004518 ifetch  0x00000001 , 0x00000006 
+ 00018488  0x00004519 store  0x00000001 , 0x00000109 
+ 00018489  0x0000451a ifetch  0x00000001 , 0x00000006 
+ 00018490  0x0000451b store  0x00000001 , 0x00000108 
+ 00018491  0x0000451c ifetch  0x00000001 , 0x00000006 
+ 00018492  0x0000451d store  0x00000001 , 0x00000107 
+ 00018493  0x0000451e fetch  0x00000006 , 0x00000107 
+ 00018494  0x0000451f rtn 
+ 00018495  0x00004522 call  0x000068a2 
+ 00018496  0x00004523 fetch  0x00000001 , 0x00004223 
+ 00018497  0x00004524 store  0x00000001 , 0x000044a0 
+ 00018498  0x00004525 fetch  0x00000001 , 0x00004225 
+ 00018499  0x00004526 istore  0x00000001 , 0x00000005 
+ 00018500  0x00004527 fetch  0x00000001 , 0x00004227 
+ 00018501  0x00004528 istore  0x00000001 , 0x00000005 
+ 00018502  0x00004529 fetch  0x00000003 , 0x000044a0 
+ 00018503  0x0000452a store  0x00000003 , 0x000040a0 
+ 00018504  0x0000452b rtn 
+ 00018505  0x00004538 fetch  0x00000002 , 0x00004203 
+ 00018506  0x00004539 iadd  0x00000012 , 0x0000003f 
+ 00018507  0x0000453a byteswap  0x0000003f , 0x0000003f 
+ 00018508  0x0000453b store  0x00000002 , 0x000001f7 
+ 00018509  0x0000453c copy  0x00000002 , 0x00000012 
+ 00018510  0x0000453e call  0x0000489b 
+ 00018511  0x0000453f setarg  0x000000a0 
+ 00018512  0x00004540 call  0x0000488d 
+ 00018513  0x00004541 fetch  0x00000001 , 0x000001f7 
+ 00018514  0x00004542 call  0x0000488d 
+ 00018515  0x00004543 bmark1  0x00000028 , 0x00004856 
+ 00018516  0x00004544 fetch  0x00000001 , 0x000001f8 
+ 00018517  0x00004545 call  0x0000488d 
+ 00018518  0x00004547 call  0x000048a1 
+ 00018519  0x00004549 call  0x0000489b 
+ 00018520  0x0000454a setarg  0x000000a1 
+ 00018521  0x0000454b call  0x0000488d 
+ 00018522  0x0000454e call  0x0000487f 
+ 00018523  0x0000454f istore  0x00000001 , 0x00000011 
+ 00018524  0x00004550 increase  0x00000001 , 0x00000011 
+ 00018525  0x00004551 increase  0xffffffff , 0x00000012 
+ 00018526  0x00004552 nbranch  0x0000485a , 0x00000005 
+ 00018527  0x00004553 branch  0x000048a1 
+ 00018528  0x0000455f byteswap  0x00000012 , 0x0000003f 
+ 00018529  0x00004560 store  0x00000002 , 0x000001f7 
+ 00018530  0x00004561 copy  0x00000002 , 0x00000012 
+ 00018531  0x00004563 call  0x0000489b 
+ 00018532  0x00004564 setarg  0x000000a0 
+ 00018533  0x00004565 call  0x0000488d 
+ 00018534  0x00004567 fetch  0x00000001 , 0x000001f7 
+ 00018535  0x00004568 call  0x0000488d 
+ 00018536  0x00004569 bmark1  0x00000028 , 0x0000486b 
+ 00018537  0x0000456a fetch  0x00000001 , 0x000001f8 
+ 00018538  0x0000456b call  0x0000488d 
+ 00018539  0x0000456d ifetch  0x00000001 , 0x00000011 
+ 00018540  0x0000456e call  0x0000488d 
+ 00018541  0x0000456f increase  0x00000001 , 0x00000011 
+ 00018542  0x00004570 increase  0xffffffff , 0x00000012 
+ 00018543  0x00004571 nbranch  0x0000486b , 0x00000005 
+ 00018544  0x00004572 branch  0x000048a1 
+ 00018545  0x00004577 arg  0x0000000a , 0x00000039 
+ 00018546  0x00004578 call  0x000048be 
+ 00018547  0x00004579 call  0x000048a6 
+ 00018548  0x0000457a call  0x000048d2 
+ 00018549  0x0000457c call  0x000048c7 
+ 00018550  0x0000457d branch  0x000048a9 , 0x00000034 
+ 00018551  0x0000457e loop  0x00004875 
+ 00018552  0x0000457f branch  0x000048a9 
+ 00018553  0x00004584 call  0x000048a9 
+ 00018554  0x00004585 call  0x000048af 
+ 00018555  0x00004586 call  0x000048d2 
+ 00018556  0x00004587 call  0x000048a6 
+ 00018557  0x00004588 call  0x000048d2 
+ 00018558  0x00004589 branch  0x000048a9 
+ 00018559  0x0000458f arg  0x00000008 , 0x00000039 
+ 00018560  0x00004590 arg  0x00000000 , 0x00000013 
+ 00018561  0x00004591 call  0x000048be 
+ 00018562  0x00004593 call  0x000048a6 
+ 00018563  0x00004594 call  0x000048d2 
+ 00018564  0x00004595 lshift  0x00000013 , 0x00000013 
+ 00018565  0x00004596 call  0x000048c7 
+ 00018566  0x00004597 iadd  0x00000013 , 0x00000013 
+ 00018567  0x00004598 call  0x000048d2 
+ 00018568  0x00004599 call  0x000048a9 
+ 00018569  0x0000459a loop  0x00004882 
+ 00018570  0x0000459b call  0x00004879 
+ 00018571  0x0000459c copy  0x00000013 , 0x0000003f 
+ 00018572  0x0000459d rtn 
+ 00018573  0x000045a2 arg  0x00000008 , 0x00000039 
+ 00018574  0x000045a3 copy  0x0000003f , 0x00000013 
+ 00018575  0x000045a4 call  0x000048a9 
+ 00018576  0x000045a6 isolate1  0x00000007 , 0x00000013 
+ 00018577  0x000045a7 call  0x000048ac , 0x00000001 
+ 00018578  0x000045a8 ncall  0x000048af , 0x00000001 
+ 00018579  0x000045a9 lshift  0x00000013 , 0x00000013 
+ 00018580  0x000045aa call  0x000048d2 
+ 00018581  0x000045ab call  0x000048a6 
+ 00018582  0x000045ac call  0x000048d2 
+ 00018583  0x000045ad call  0x000048a9 
+ 00018584  0x000045ae call  0x000048d2 
+ 00018585  0x000045af loop  0x00004890 
+ 00018586  0x000045b0 branch  0x00004871 
+ 00018587  0x000045b5 call  0x000048ac 
+ 00018588  0x000045b6 call  0x000048a6 
+ 00018589  0x000045b7 call  0x000048d2 
+ 00018590  0x000045b8 call  0x000048af 
+ 00018591  0x000045b9 call  0x000048d2 
+ 00018592  0x000045ba branch  0x000048a9 
+ 00018593  0x000045bf call  0x000048af 
+ 00018594  0x000045c0 call  0x000048a6 
+ 00018595  0x000045c1 call  0x000048d2 
+ 00018596  0x000045c2 call  0x000048ac 
+ 00018597  0x000045c3 branch  0x000048d2 
+ 00018598  0x000045c8 enable  0x00000028 
+ 00018599  0x000045c9 fetch  0x00000001 , 0x00004ffe 
+ 00018600  0x000045ca branch  0x000048b2 
+ 00018601  0x000045ce disable  0x00000028 
+ 00018602  0x000045cf fetch  0x00000001 , 0x00004ffe 
+ 00018603  0x000045d0 branch  0x000048b2 
+ 00018604  0x000045d4 enable  0x00000028 
+ 00018605  0x000045d5 fetch  0x00000001 , 0x00004fff 
+ 00018606  0x000045d6 branch  0x000048b2 
+ 00018607  0x000045da disable  0x00000028 
+ 00018608  0x000045db fetch  0x00000001 , 0x00004fff 
+ 00018609  0x000045dc branch  0x000048b2 
+ 00018610  0x000045e2 and  0x0000003f , 0x00000007 , 0x00000007 
+ 00018611  0x000045e3 rshift3  0x0000003f , 0x0000003f 
+ 00018612  0x000045e4 arg  0x00008070 , 0x00000002 
+ 00018613  0x000045e5 iadd  0x00000002 , 0x00000002 
+ 00018614  0x000045e6 ifetch  0x00000001 , 0x00000002 
+ 00018615  0x000045e7 qset1  0x0000003f 
+ 00018616  0x000045e8 istore  0x00000001 , 0x00000002 
+ 00018617  0x000045e9 increase  0x00000004 , 0x00000002 
+ 00018618  0x000045ea ifetch  0x00000001 , 0x00000002 
+ 00018619  0x000045eb qsetflag  0x00000028 , 0x0000003f 
+ 00018620  0x000045ec istore  0x00000001 , 0x00000002 
+ 00018621  0x000045ed rtn 
+ 00018622  0x000045f1 fetch  0x00000001 , 0x00004fff 
+ 00018623  0x000045f2 and  0x0000003f , 0x00000007 , 0x00000007 
+ 00018624  0x000045f3 rshift3  0x0000003f , 0x0000003f 
+ 00018625  0x000045f4 arg  0x00008070 , 0x00000002 
+ 00018626  0x000045f5 iadd  0x00000002 , 0x00000002 
+ 00018627  0x000045f6 ifetch  0x00000001 , 0x00000002 
+ 00018628  0x000045f7 qset0  0x0000003f 
+ 00018629  0x000045f8 istore  0x00000001 , 0x00000002 
+ 00018630  0x000045f9 rtn 
+ 00018631  0x000045ff nop  0x00000004 
+ 00018632  0x00004600 fetch  0x00000001 , 0x00004fff 
+ 00018633  0x00004601 and  0x0000003f , 0x00000007 , 0x00000007 
+ 00018634  0x00004602 rshift3  0x0000003f , 0x0000003f 
+ 00018635  0x00004603 arg  0x0000811c , 0x00000002 
+ 00018636  0x00004604 iadd  0x00000002 , 0x00000002 
+ 00018637  0x00004605 setarg  0x00000000 
+ 00018638  0x00004606 ifetcht  0x00000001 , 0x00000002 
+ 00018639  0x00004607 qisolate1  0x00000002 
+ 00018640  0x00004608 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00018641  0x00004609 rtn 
+ 00018642  0x0000460e rtn 
+ 00018643  0x00004615 bpatch  0x000000f6 , 0x0000401e 
+ 00018644  0x00004616 hfetch  0x00000001 , 0x00008a26 
+ 00018645  0x00004617 isolate1  0x00000007 , 0x0000003f 
+ 00018646  0x00004618 call  0x000048ea , 0x00000001 
+ 00018647  0x00004619 call  0x0000492e 
+ 00018648  0x0000461a hfetch  0x00000001 , 0x00008a26 
+ 00018649  0x0000461b store  0x00000001 , 0x00000b22 
+ 00018650  0x0000461c hfetch  0x00000001 , 0x00008a27 
+ 00018651  0x0000461d store  0x00000001 , 0x00000b23 
+ 00018652  0x0000461e hstore  0x00000001 , 0x00008a27 
+ 00018653  0x0000461f pinvert 
+ 00018654  0x00004620 fetcht  0x00000001 , 0x00000d37 
+ 00018655  0x00004621 iand  0x00000002 , 0x0000003f 
+ 00018656  0x00004622 store  0x00000001 , 0x00000d37 
+ 00018657  0x00004623 jam  0x000000e0 , 0x00008a26 
+ 00018658  0x00004624 fetch  0x00000001 , 0x00000b23 
+ 00018659  0x00004625 compare  0x00000001 , 0x0000003f , 0x00000001 
+ 00018660  0x00004626 call  0x00004941 , 0x00000001 
+ 00018661  0x00004627 fetch  0x00000001 , 0x00000b22 
+ 00018662  0x00004628 compare  0x00000001 , 0x0000003f , 0x00000001 
+ 00018663  0x00004629 call  0x0000494a , 0x00000001 
+ 00018664  0x0000462a call  0x00004b61 
+ 00018665  0x0000462b branch  0x00004903 
+ 00018666  0x0000462e bpatch  0x000000f7 , 0x0000401e 
+ 00018667  0x0000462f call  0x00004919 
+ 00018668  0x00004630 jam  0x00000000 , 0x00008a00 
+ 00018669  0x00004631 nop  0x00002710 
+ 00018670  0x00004632 jam  0x000000c0 , 0x00008a10 
+ 00018671  0x00004633 hfetch  0x00000002 , 0x00008050 
+ 00018672  0x00004634 set0  0x0000000a , 0x0000003f 
+ 00018673  0x00004635 hstore  0x00000002 , 0x00008050 
+ 00018674  0x00004636 jam  0x0000003c , 0x00008a00 
+ 00018675  0x00004637 jam  0x000000ff , 0x00008a26 
+ 00018676  0x00004638 jam  0x000000ff , 0x00008a27 
+ 00018677  0x00004639 jam  0x00000000 , 0x00008a04 
+ 00018678  0x0000463a jam  0x00000002 , 0x00000c6b 
+ 00018679  0x0000463b setarg  0x00000d9d 
+ 00018680  0x0000463c arg  0x00000c6e , 0x00000005 
+ 00018681  0x0000463d isub  0x00000005 , 0x00000039 
+ 00018682  0x0000463e branch  0x00007ed4 
+ 00018683  0x00004641 fetcht  0x00000001 , 0x00000c6c 
+ 00018684  0x00004642 branch  0x000067fb 
+ 00018685  0x00004644 fetch  0x00000001 , 0x00000d45 
+ 00018686  0x00004645 rtn  0x00000034 
+ 00018687  0x00004646 fetcht  0x00000001 , 0x00000c6c 
+ 00018688  0x00004647 call  0x0000681d 
+ 00018689  0x00004648 branch  0x000048ea , 0x00000001 
+ 00018690  0x00004649 rtn 
+ 00018691  0x0000464d arg  0x00000000 , 0x00000007 
+ 00018692  0x0000464e call  0x00007f16 
+ 00018693  0x0000464f nrtn  0x00000034 
+ 00018694  0x00004650 fetch  0x00000001 , 0x00000d46 
+ 00018695  0x00004651 nrtn  0x00000034 
+ 00018696  0x00004652 fetch  0x00000001 , 0x00000d45 
+ 00018697  0x00004653 ncall  0x00004bb7 , 0x00000034 
+ 00018698  0x00004654 rtn 
+ 00018699  0x00004657 arg  0x00000b68 , 0x00000005 
+ 00018700  0x00004658 setsect  0x00000000 , 0x00011212 
+ 00018701  0x00004659 setsect  0x00000001 , 0x00008000 
+ 00018702  0x0000465a setsect  0x00000002 , 0x00000000 
+ 00018703  0x0000465b setsect  0x00000003 , 0x00010000 
+ 00018704  0x0000465c istore  0x00000009 , 0x00000005 
+ 00018705  0x0000465d setsect  0x00000000 , 0x00022412 
+ 00018706  0x0000465e setsect  0x00000001 , 0x00008604 
+ 00018707  0x0000465f setsect  0x00000002 , 0x00001000 
+ 00018708  0x00004660 setsect  0x00000003 , 0x00000008 
+ 00018709  0x00004661 istore  0x00000009 , 0x00000005 
+ 00018710  0x00004662 setsect  0x00000000 , 0x00000001 
+ 00018711  0x00004663 istore  0x00000001 , 0x00000005 
+ 00018712  0x00004664 rtn 
+ 00018713  0x00004667 jam  0x00000002 , 0x00000c6b 
+ 00018714  0x00004668 setarg  0x00000000 
+ 00018715  0x00004669 store  0x00000001 , 0x00000b67 
+ 00018716  0x0000466a store  0x00000002 , 0x00000c65 
+ 00018717  0x0000466b pincrease  0x00000001 
+ 00018718  0x0000466c store  0x00000002 , 0x00000c67 
+ 00018719  0x0000466d pincrease  0x00000001 
+ 00018720  0x0000466e store  0x00000002 , 0x00000c69 
+ 00018721  0x0000466f setarg  0x00008ffa 
+ 00018722  0x00004670 store  0x00000002 , 0x00000b7c 
+ 00018723  0x00004671 setarg  0x0000903a 
+ 00018724  0x00004672 store  0x00000002 , 0x00000b7e 
+ 00018725  0x00004673 arg  0x00000b80 , 0x00000005 
+ 00018726  0x00004674 arg  0x000090fe , 0x00000006 
+ 00018727  0x00004675 call  0x00007eb3 
+ 00018728  0x00004676 fetch  0x00000001 , 0x00000c6d 
+ 00018729  0x00004677 ncall  0x0000492b , 0x00000034 
+ 00018730  0x00004678 branch  0x0000490b 
+ 00018731  0x0000467b store  0x00000001 , 0x00000ba2 
+ 00018732  0x0000467c store  0x00000001 , 0x00000bbb 
+ 00018733  0x0000467d rtn 
+ 00018734  0x0000467f hfetch  0x00000001 , 0x00008a26 
+ 00018735  0x00004680 bbit1  0x00000006 , 0x00004931 
+ 00018736  0x00004681 rtn 
+ 00018737  0x00004684 call  0x00004936 
+ 00018738  0x00004685 call  0x00007f15 
+ 00018739  0x00004686 setarg  0x00000280 
+ 00018740  0x00004687 arg  0x00000000 , 0x00000007 
+ 00018741  0x00004688 branch  0x00007f08 
+ 00018742  0x0000468b fetch  0x00000001 , 0x00000d36 
+ 00018743  0x0000468c bne  0x00000002 , 0x0000493b 
+ 00018744  0x0000468d jam  0x00000000 , 0x00000d46 
+ 00018745  0x0000468e jam  0x00000000 , 0x00000d47 
+ 00018746  0x0000468f rtn 
+ 00018747  0x00004691 fetch  0x00000001 , 0x00000d53 
+ 00018748  0x00004692 rtn  0x00000034 
+ 00018749  0x00004693 jam  0x00000000 , 0x00000d53 
+ 00018750  0x00004694 jam  0x00000002 , 0x00000d36 
+ 00018751  0x00004695 jam  0x00000001 , 0x00000d45 
+ 00018752  0x00004696 rtn 
+ 00018753  0x00004699 jam  0x00000001 , 0x00008a27 
+ 00018754  0x0000469a branch  0x00004b37 
+ 00018755  0x0000469d fetch  0x00000001 , 0x00000b22 
+ 00018756  0x0000469e bbit1  0x00000004 , 0x00004955 
+ 00018757  0x0000469f rtn 
+ 00018758  0x000046a2 hfetch  0x00000001 , 0x00008a18 
+ 00018759  0x000046a3 istore  0x00000001 , 0x00000005 
+ 00018760  0x000046a4 loop  0x00004946 
+ 00018761  0x000046a5 rtn 
+ 00018762  0x000046a8 bpatch  0x000000f8 , 0x0000401f 
+ 00018763  0x000046a9 jam  0x00000011 , 0x00008a26 
+ 00018764  0x000046aa hfetch  0x00000001 , 0x00008a20 
+ 00018765  0x000046ab store  0x00000001 , 0x00000b24 
+ 00018766  0x000046ac copy  0x0000003f , 0x00000039 
+ 00018767  0x000046ad branch  0x00004943 , 0x00000034 
+ 00018768  0x000046ae arg  0x00000c6e , 0x00000005 
+ 00018769  0x000046af call  0x00004946 
+ 00018770  0x000046b0 fetch  0x00000001 , 0x00000b24 
+ 00018771  0x000046b1 sub  0x0000003f , 0x00000007 , 0x0000003e 
+ 00018772  0x000046b2 rtn  0x00000002 
+ 00018773  0x000046b4 fetch  0x00000001 , 0x00000c6e 
+ 00018774  0x000046b5 and_into  0x00000080 , 0x0000003f 
+ 00018775  0x000046b6 beq  0x00000080 , 0x0000495a 
+ 00018776  0x000046b7 beq  0x00000000 , 0x00004962 
+ 00018777  0x000046b8 branch  0x00002a8c 
+ 00018778  0x000046bb fetch  0x00000001 , 0x00000c6e 
+ 00018779  0x000046bc rshift4  0x0000003f , 0x0000003f 
+ 00018780  0x000046bd rshift  0x0000003f , 0x0000003f 
+ 00018781  0x000046be and_into  0x00000003 , 0x0000003f 
+ 00018782  0x000046bf beq  0x00000000 , 0x0000496a 
+ 00018783  0x000046c0 beq  0x00000001 , 0x00004970 
+ 00018784  0x000046c1 beq  0x00000002 , 0x00004975 
+ 00018785  0x000046c2 branch  0x00002a8c 
+ 00018786  0x000046c5 fetch  0x00000001 , 0x00000c6e 
+ 00018787  0x000046c6 rshift4  0x0000003f , 0x0000003f 
+ 00018788  0x000046c7 rshift  0x0000003f , 0x0000003f 
+ 00018789  0x000046c8 and_into  0x00000003 , 0x0000003f 
+ 00018790  0x000046c9 beq  0x00000000 , 0x00004976 
+ 00018791  0x000046ca beq  0x00000001 , 0x0000497e 
+ 00018792  0x000046cb beq  0x00000002 , 0x00004983 
+ 00018793  0x000046cc branch  0x00002a8c 
+ 00018794  0x000046cf fetch  0x00000001 , 0x00000c6f 
+ 00018795  0x000046d0 beq  0x00000008 , 0x0000498a 
+ 00018796  0x000046d1 beq  0x00000006 , 0x000049a0 
+ 00018797  0x000046d2 beq  0x0000000a , 0x000049ea 
+ 00018798  0x000046d3 beq  0x00000000 , 0x000049fc 
+ 00018799  0x000046d4 branch  0x00004984 
+ 00018800  0x000046d7 fetch  0x00000001 , 0x00000c6f 
+ 00018801  0x000046d8 beq  0x00000002 , 0x00004a2f 
+ 00018802  0x000046d9 beq  0x00000001 , 0x00004a33 
+ 00018803  0x000046da beq  0x00000003 , 0x00004a45 
+ 00018804  0x000046db branch  0x00004984 
+ 00018805  0x000046de branch  0x00004984 
+ 00018806  0x000046e1 fetch  0x00000001 , 0x00000c6f 
+ 00018807  0x000046e2 beq  0x00000001 , 0x00004a4f 
+ 00018808  0x000046e3 beq  0x00000003 , 0x00004a79 
+ 00018809  0x000046e4 beq  0x00000005 , 0x00004aa3 
+ 00018810  0x000046e5 beq  0x00000009 , 0x00004abc 
+ 00018811  0x000046e6 beq  0x0000000b , 0x00004ad7 
+ 00018812  0x000046e7 beq  0x00000007 , 0x00004984 
+ 00018813  0x000046e8 branch  0x00004984 
+ 00018814  0x000046eb fetch  0x00000001 , 0x00000c6f 
+ 00018815  0x000046ec beq  0x0000000a , 0x00004ae8 
+ 00018816  0x000046ed beq  0x00000009 , 0x00004af9 
+ 00018817  0x000046ee beq  0x0000000b , 0x00004b11 
+ 00018818  0x000046ef branch  0x00004984 
+ 00018819  0x000046f2 branch  0x00004984 
+ 00018820  0x000046f5 hfetch  0x00000001 , 0x00008a11 
+ 00018821  0x000046f6 set1  0x00000000 , 0x0000003f 
+ 00018822  0x000046f7 hstore  0x00000001 , 0x00008a11 
+ 00018823  0x000046f8 branch  0x00004988 
+ 00018824  0x000046fb jam  0x00000040 , 0x00008a12 
+ 00018825  0x000046fc rtn 
+ 00018826  0x000046ff fetch  0x00000001 , 0x00000c6e 
+ 00018827  0x00004700 bne  0x00000080 , 0x00004984 
+ 00018828  0x00004701 fetch  0x00000001 , 0x00000c72 
+ 00018829  0x00004702 bne  0x00000000 , 0x00004984 
+ 00018830  0x00004703 fetch  0x00000001 , 0x00000c73 
+ 00018831  0x00004704 bne  0x00000000 , 0x00004984 
+ 00018832  0x00004705 fetch  0x00000001 , 0x00000c74 
+ 00018833  0x00004706 bne  0x00000001 , 0x00004984 
+ 00018834  0x00004707 fetch  0x00000001 , 0x00000c75 
+ 00018835  0x00004708 bne  0x00000000 , 0x00004984 
+ 00018836  0x00004709 fetch  0x00000001 , 0x00000c70 
+ 00018837  0x0000470a bne  0x00000000 , 0x00004984 
+ 00018838  0x0000470b fetch  0x00000001 , 0x00000c71 
+ 00018839  0x0000470c bne  0x00000000 , 0x00004984 
+ 00018840  0x0000470d fetch  0x00000001 , 0x00000c6b 
+ 00018841  0x0000470e beq  0x00000004 , 0x0000499c 
+ 00018842  0x0000470f beq  0x00000003 , 0x0000499e 
+ 00018843  0x00004710 branch  0x00004984 
+ 00018844  0x00004713 arg  0x00000001 , 0x00000012 
+ 00018845  0x00004714 branch  0x00004a14 
+ 00018846  0x00004717 arg  0x00000001 , 0x00000012 
+ 00018847  0x00004718 branch  0x00004a12 
+ 00018848  0x0000471b bpatch  0x000000f9 , 0x0000401f 
+ 00018849  0x0000471c set0  0x00000023 , 0x00000000 
+ 00018850  0x0000471d fetch  0x00000001 , 0x00000c71 
+ 00018851  0x0000471e beq  0x00000001 , 0x000049b6 
+ 00018852  0x0000471f beq  0x00000002 , 0x000049cf 
+ 00018853  0x00004720 beq  0x00000003 , 0x000049d2 
+ 00018854  0x00004721 beq  0x00000021 , 0x000049a9 
+ 00018855  0x00004722 beq  0x00000022 , 0x000049e0 
+ 00018856  0x00004723 branch  0x00004984 
+ 00018857  0x00004726 jam  0x00000000 , 0x00000d4b 
+ 00018858  0x00004727 fetch  0x00000001 , 0x00000c72 
+ 00018859  0x00004728 beq  0x00000000 , 0x000049ae 
+ 00018860  0x00004729 beq  0x00000001 , 0x000049b2 
+ 00018861  0x0000472a branch  0x00004984 
+ 00018862  0x0000472d arg  0x00000b93 , 0x00000011 
+ 00018863  0x0000472e ifetch  0x00000001 , 0x00000011 
+ 00018864  0x0000472f iforce  0x00000012 
+ 00018865  0x00004730 branch  0x00004b21 
+ 00018866  0x00004733 arg  0x00000bac , 0x00000011 
+ 00018867  0x00004734 ifetch  0x00000001 , 0x00000011 
+ 00018868  0x00004735 iforce  0x00000012 
+ 00018869  0x00004736 branch  0x00004b21 
+ 00018870  0x0000473c fetch  0x00000001 , 0x00000d48 
+ 00018871  0x0000473d ncall  0x000049c7 , 0x00000034 
+ 00018872  0x0000473e setarg  0x00000b68 
+ 00018873  0x0000473f fetcht  0x00000001 , 0x00000b68 
+ 00018874  0x00004741 store  0x00000002 , 0x00000d3f 
+ 00018875  0x00004742 storet  0x00000001 , 0x00000d41 
+ 00018876  0x00004743 fetch  0x00000001 , 0x00000c74 
+ 00018877  0x00004744 isub  0x00000002 , 0x0000003e 
+ 00018878  0x00004745 nbranch  0x000049c5 , 0x00000002 
+ 00018879  0x00004747 fetch  0x00000001 , 0x00000d41 
+ 00018880  0x00004749 iforce  0x00000012 
+ 00018881  0x0000474a fetch  0x00000002 , 0x00000d3f 
+ 00018882  0x0000474b add  0x0000003f , 0x00000001 , 0x0000003f 
+ 00018883  0x0000474c iforce  0x00000011 
+ 00018884  0x0000474d branch  0x00004b21 
+ 00018885  0x0000474f fetch  0x00000001 , 0x00000c74 
+ 00018886  0x00004750 branch  0x000049c0 
+ 00018887  0x00004753 hfetch  0x00000001 , 0x00008a04 
+ 00018888  0x00004754 ncall  0x000049cb , 0x00000034 
+ 00018889  0x00004755 jam  0x00000000 , 0x00000d48 
+ 00018890  0x00004756 rtn 
+ 00018891  0x00004758 hfetch  0x00000001 , 0x00008a04 
+ 00018892  0x00004759 set1  0x00000007 , 0x0000003f 
+ 00018893  0x0000475a hstore  0x00000001 , 0x00008a04 
+ 00018894  0x0000475b rtn 
+ 00018895  0x0000475e setarg  0x00000b80 
+ 00018896  0x0000475f fetcht  0x00000001 , 0x00000b80 
+ 00018897  0x00004760 branch  0x000049ba 
+ 00018898  0x00004763 fetch  0x00000001 , 0x00000c70 
+ 00018899  0x00004764 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00018900  0x00004765 nbranch  0x00004984 , 0x00000002 
+ 00018901  0x00004766 fetch  0x00000001 , 0x00000c70 
+ 00018902  0x00004767 arg  0x00000be4 , 0x00000011 
+ 00018903  0x00004768 beq  0x00000000 , 0x00004b1e 
+ 00018904  0x00004769 set1  0x00000023 , 0x00000000 
+ 00018905  0x0000476a arg  0x00000be9 , 0x00000011 
+ 00018906  0x0000476b beq  0x00000001 , 0x00004b1e 
+ 00018907  0x0000476c arg  0x00000c07 , 0x00000011 
+ 00018908  0x0000476d beq  0x00000002 , 0x00004b1e 
+ 00018909  0x0000476e arg  0x00000c47 , 0x00000011 
+ 00018910  0x0000476f beq  0x00000003 , 0x00004b1e 
+ 00018911  0x00004770 rtn 
+ 00018912  0x00004773 fetch  0x00000002 , 0x00000c72 
+ 00018913  0x00004774 beq  0x00000001 , 0x000049e5 
+ 00018914  0x00004775 fetch  0x00000002 , 0x00000b7c 
+ 00018915  0x00004776 copy  0x0000003f , 0x00000011 
+ 00018916  0x00004778 branch  0x00004b1e 
+ 00018917  0x0000477a jam  0x00000001 , 0x00000d45 
+ 00018918  0x0000477b jam  0x00000001 , 0x00000d36 
+ 00018919  0x0000477c fetch  0x00000002 , 0x00000b7e 
+ 00018920  0x0000477d copy  0x0000003f , 0x00000011 
+ 00018921  0x0000477f branch  0x00004b1e 
+ 00018922  0x00004783 fetch  0x00000001 , 0x00000c6b 
+ 00018923  0x00004784 bne  0x00000004 , 0x00004984 
+ 00018924  0x00004785 fetch  0x00000001 , 0x00000c6e 
+ 00018925  0x00004786 bne  0x00000081 , 0x00004984 
+ 00018926  0x00004787 fetch  0x00000001 , 0x00000c70 
+ 00018927  0x00004788 bne  0x00000000 , 0x00004984 
+ 00018928  0x00004789 fetch  0x00000001 , 0x00000c71 
+ 00018929  0x0000478a bne  0x00000000 , 0x00004984 
+ 00018930  0x0000478b fetch  0x00000001 , 0x00000c74 
+ 00018931  0x0000478c bne  0x00000001 , 0x00004984 
+ 00018932  0x0000478d fetch  0x00000001 , 0x00000c75 
+ 00018933  0x0000478e bne  0x00000000 , 0x00004984 
+ 00018934  0x0000478f fetch  0x00000001 , 0x00000c72 
+ 00018935  0x00004790 bne  0x00000000 , 0x00004984 
+ 00018936  0x00004791 fetch  0x00000001 , 0x00000c73 
+ 00018937  0x00004792 bne  0x00000000 , 0x00004984 
+ 00018938  0x00004793 arg  0x00000001 , 0x00000012 
+ 00018939  0x00004794 branch  0x00004a12 
+ 00018940  0x00004798 fetch  0x00000001 , 0x00000c6b 
+ 00018941  0x00004799 beq  0x00000002 , 0x00004984 
+ 00018942  0x0000479a fetch  0x00000001 , 0x00000c70 
+ 00018943  0x0000479b bne  0x00000000 , 0x00004984 
+ 00018944  0x0000479c fetch  0x00000001 , 0x00000c71 
+ 00018945  0x0000479d bne  0x00000000 , 0x00004984 
+ 00018946  0x0000479e fetch  0x00000001 , 0x00000c74 
+ 00018947  0x0000479f bne  0x00000002 , 0x00004984 
+ 00018948  0x000047a0 fetch  0x00000001 , 0x00000c75 
+ 00018949  0x000047a1 bne  0x00000000 , 0x00004984 
+ 00018950  0x000047a2 fetch  0x00000001 , 0x00000c73 
+ 00018951  0x000047a3 bne  0x00000000 , 0x00004984 
+ 00018952  0x000047a4 fetch  0x00000001 , 0x00000c6e 
+ 00018953  0x000047a5 beq  0x00000080 , 0x00004a0d 
+ 00018954  0x000047a6 beq  0x00000081 , 0x00004a18 
+ 00018955  0x000047a7 beq  0x00000082 , 0x00004a1c 
+ 00018956  0x000047a8 branch  0x00004984 
+ 00018957  0x000047ab fetch  0x00000001 , 0x00000c72 
+ 00018958  0x000047ac bne  0x00000000 , 0x00004984 
+ 00018959  0x000047ad arg  0x00000002 , 0x00000012 
+ 00018960  0x000047ae fetch  0x00000001 , 0x00000d39 
+ 00018961  0x000047af beq  0x00000001 , 0x00004a16 
+ 00018962  0x000047b2 arg  0x00000c65 , 0x00000011 
+ 00018963  0x000047b3 branch  0x00004b21 
+ 00018964  0x000047b5 arg  0x00000c67 , 0x00000011 
+ 00018965  0x000047b6 branch  0x00004b21 
+ 00018966  0x000047b8 arg  0x00000c69 , 0x00000011 
+ 00018967  0x000047b9 branch  0x00004b21 
+ 00018968  0x000047bc fetch  0x00000001 , 0x00000c6b 
+ 00018969  0x000047bd bne  0x00000004 , 0x00004984 
+ 00018970  0x000047be arg  0x00000002 , 0x00000012 
+ 00018971  0x000047bf branch  0x00004a12 
+ 00018972  0x000047c2 fetch  0x00000001 , 0x00000c6b 
+ 00018973  0x000047c3 bne  0x00000004 , 0x00004984 
+ 00018974  0x000047c4 fetch  0x00000001 , 0x00000c72 
+ 00018975  0x000047c5 beq  0x00000081 , 0x00004a29 
+ 00018976  0x000047c6 beq  0x00000082 , 0x00004a2b 
+ 00018977  0x000047c7 beq  0x00000083 , 0x00004a2d 
+ 00018978  0x000047c8 and_into  0x0000007f , 0x0000003f 
+ 00018979  0x000047c9 beq  0x00000000 , 0x00004a25 
+ 00018980  0x000047ca branch  0x00004984 
+ 00018981  0x000047cd fetch  0x00000001 , 0x00000d3b 
+ 00018982  0x000047cf arg  0x00000002 , 0x00000012 
+ 00018983  0x000047d0 beq  0x00000001 , 0x00004a14 
+ 00018984  0x000047d1 branch  0x00004a12 
+ 00018985  0x000047d3 fetch  0x00000001 , 0x00000d3c 
+ 00018986  0x000047d4 branch  0x00004a26 
+ 00018987  0x000047d6 fetch  0x00000001 , 0x00000d3d 
+ 00018988  0x000047d7 branch  0x00004a26 
+ 00018989  0x000047d9 fetch  0x00000001 , 0x00000d3e 
+ 00018990  0x000047da branch  0x00004a26 
+ 00018991  0x000047dd jam  0x00000001 , 0x00000d4c 
+ 00018992  0x000047de arg  0x00000d4d , 0x00000011 
+ 00018993  0x000047df arg  0x00000001 , 0x00000012 
+ 00018994  0x000047e0 branch  0x00004b21 
+ 00018995  0x000047e3 fetch  0x00000002 , 0x00000c70 
+ 00018996  0x000047e4 arg  0x000001ba , 0x00000002 
+ 00018997  0x000047e5 isub  0x00000002 , 0x0000003e 
+ 00018998  0x000047e6 nbranch  0x00004984 , 0x00000005 
+ 00018999  0x000047e7 set0  0x00000023 , 0x00000000 
+ 00019000  0x000047e9 fetch  0x00000001 , 0x00000d42 
+ 00019001  0x000047ea nbranch  0x00004a42 , 0x00000034 
+ 00019002  0x000047eb jam  0x00000000 , 0x00000cf6 
+ 00019003  0x000047ed fetch  0x00000001 , 0x00000c74 
+ 00019004  0x000047ee iforce  0x00000012 
+ 00019005  0x000047ef arg  0x00000cf6 , 0x00000011 
+ 00019006  0x000047f0 call  0x00004b21 
+ 00019007  0x000047f2 arg  0x00000cf6 , 0x00000005 
+ 00019008  0x000047f3 arg  0x00000008 , 0x00000039 
+ 00019009  0x000047f4 branch  0x00007ec6 
+ 00019010  0x000047f6 jam  0x00000000 , 0x00000d42 
+ 00019011  0x000047f7 jam  0x00000001 , 0x00000cf6 
+ 00019012  0x000047f8 branch  0x00004a3b 
+ 00019013  0x000047fb fetch  0x00000001 , 0x00000c74 
+ 00019014  0x000047fc bne  0x00000001 , 0x00004984 
+ 00019015  0x000047fd jam  0x00000001 , 0x00000d4b 
+ 00019016  0x000047fe arg  0x00000001 , 0x00000012 
+ 00019017  0x000047ff fetch  0x00000001 , 0x00000d49 
+ 00019018  0x00004800 beq  0x00000000 , 0x00004a4d 
+ 00019019  0x00004801 beq  0x00000001 , 0x00004a4e 
+ 00019020  0x00004802 branch  0x00004a12 
+ 00019021  0x00004804 branch  0x00004a14 
+ 00019022  0x00004806 branch  0x00004a12 
+ 00019023  0x0000480c fetch  0x00000001 , 0x00000c6b 
+ 00019024  0x0000480d bne  0x00000004 , 0x00004984 
+ 00019025  0x0000480e fetch  0x00000001 , 0x00000c74 
+ 00019026  0x0000480f bne  0x00000000 , 0x00004984 
+ 00019027  0x00004810 fetch  0x00000001 , 0x00000c75 
+ 00019028  0x00004811 bne  0x00000000 , 0x00004984 
+ 00019029  0x00004812 fetch  0x00000001 , 0x00000c71 
+ 00019030  0x00004813 bne  0x00000000 , 0x00004984 
+ 00019031  0x00004814 fetch  0x00000001 , 0x00000c73 
+ 00019032  0x00004815 bne  0x00000000 , 0x00004984 
+ 00019033  0x00004816 fetch  0x00000001 , 0x00000c6e 
+ 00019034  0x00004817 beq  0x00000000 , 0x00004a5e 
+ 00019035  0x00004818 beq  0x00000001 , 0x00004a66 
+ 00019036  0x00004819 beq  0x00000002 , 0x00004a67 
+ 00019037  0x0000481a branch  0x00004984 
+ 00019038  0x0000481d fetch  0x00000001 , 0x00000c70 
+ 00019039  0x0000481e bne  0x00000001 , 0x00004984 
+ 00019040  0x0000481f hfetch  0x00000001 , 0x00008a00 
+ 00019041  0x00004820 set0  0x00000007 , 0x0000003f 
+ 00019042  0x00004821 hstore  0x00000001 , 0x00008a00 
+ 00019043  0x00004822 jam  0x00000000 , 0x00000d39 
+ 00019044  0x00004823 jam  0x00000001 , 0x00000d3a 
+ 00019045  0x00004824 branch  0x00004988 
+ 00019046  0x00004827 branch  0x00004984 
+ 00019047  0x0000482a fetch  0x00000001 , 0x00000c70 
+ 00019048  0x0000482b bne  0x00000000 , 0x00004984 
+ 00019049  0x0000482c fetch  0x00000001 , 0x00000c72 
+ 00019050  0x0000482d beq  0x00000081 , 0x00004a72 
+ 00019051  0x0000482e beq  0x00000082 , 0x00004a75 
+ 00019052  0x0000482f beq  0x00000083 , 0x00004a77 
+ 00019053  0x00004830 and_into  0x0000007f , 0x0000003f 
+ 00019054  0x00004831 beq  0x00000000 , 0x00004a70 
+ 00019055  0x00004832 branch  0x00004984 
+ 00019056  0x00004835 jam  0x00000000 , 0x00000d3b 
+ 00019057  0x00004836 branch  0x00004988 
+ 00019058  0x00004838 jam  0x00000000 , 0x00000d3c 
+ 00019059  0x0000483a jam  0x00000001 , 0x00000d53 
+ 00019060  0x0000483b branch  0x00004988 
+ 00019061  0x0000483d jam  0x00000000 , 0x00000d3d 
+ 00019062  0x0000483e branch  0x00004a73 
+ 00019063  0x00004840 jam  0x00000000 , 0x00000d3e 
+ 00019064  0x00004841 branch  0x00004a73 
+ 00019065  0x00004845 fetch  0x00000001 , 0x00000c74 
+ 00019066  0x00004846 bne  0x00000000 , 0x00004984 
+ 00019067  0x00004847 fetch  0x00000001 , 0x00000c75 
+ 00019068  0x00004848 bne  0x00000000 , 0x00004984 
+ 00019069  0x00004849 fetch  0x00000001 , 0x00000c6e 
+ 00019070  0x0000484a beq  0x00000000 , 0x00004a82 
+ 00019071  0x0000484b beq  0x00000001 , 0x00004a8f 
+ 00019072  0x0000484c beq  0x00000002 , 0x00004a90 
+ 00019073  0x0000484d branch  0x00004984 
+ 00019074  0x00004850 fetch  0x00000001 , 0x00000c70 
+ 00019075  0x00004851 bne  0x00000001 , 0x00004984 
+ 00019076  0x00004852 hfetch  0x00000001 , 0x00008a00 
+ 00019077  0x00004853 set1  0x00000007 , 0x0000003f 
+ 00019078  0x00004854 hstore  0x00000001 , 0x00008a00 
+ 00019079  0x00004855 jam  0x00000001 , 0x00000d39 
+ 00019080  0x00004856 jam  0x00000003 , 0x00000d36 
+ 00019081  0x00004857 jam  0x00000000 , 0x00000d43 
+ 00019082  0x00004858 call  0x00004988 
+ 00019083  0x0000485a call  0x00007f15 
+ 00019084  0x0000485b setarg  0x00001388 
+ 00019085  0x0000485c arg  0x0000000f , 0x00000007 
+ 00019086  0x0000485d branch  0x00007f08 
+ 00019087  0x00004860 branch  0x00004984 
+ 00019088  0x00004863 fetch  0x00000001 , 0x00000c70 
+ 00019089  0x00004864 bne  0x00000000 , 0x00004984 
+ 00019090  0x00004865 fetch  0x00000001 , 0x00000c71 
+ 00019091  0x00004866 bne  0x00000000 , 0x00004984 
+ 00019092  0x00004867 fetch  0x00000001 , 0x00000c72 
+ 00019093  0x00004868 beq  0x00000081 , 0x00004a9d 
+ 00019094  0x00004869 beq  0x00000082 , 0x00004a9f 
+ 00019095  0x0000486a beq  0x00000083 , 0x00004aa1 
+ 00019096  0x0000486b and_into  0x0000007f , 0x0000003f 
+ 00019097  0x0000486c beq  0x00000000 , 0x00004a9b 
+ 00019098  0x0000486d branch  0x00004984 
+ 00019099  0x00004870 jam  0x00000001 , 0x00000d3b 
+ 00019100  0x00004871 branch  0x00004988 
+ 00019101  0x00004873 jam  0x00000001 , 0x00000d3c 
+ 00019102  0x00004874 branch  0x00004988 
+ 00019103  0x00004876 jam  0x00000001 , 0x00000d3d 
+ 00019104  0x00004877 branch  0x00004988 
+ 00019105  0x00004879 jam  0x00000001 , 0x00000d3e 
+ 00019106  0x0000487a branch  0x00004988 
+ 00019107  0x0000487e fetch  0x00000001 , 0x00000c6e 
+ 00019108  0x0000487f bne  0x00000000 , 0x00004984 
+ 00019109  0x00004880 fetch  0x00000001 , 0x00000c72 
+ 00019110  0x00004881 bne  0x00000000 , 0x00004984 
+ 00019111  0x00004882 fetch  0x00000001 , 0x00000c73 
+ 00019112  0x00004883 bne  0x00000000 , 0x00004984 
+ 00019113  0x00004884 fetch  0x00000001 , 0x00000c74 
+ 00019114  0x00004885 bne  0x00000000 , 0x00004984 
+ 00019115  0x00004886 fetch  0x00000001 , 0x00000c75 
+ 00019116  0x00004887 bne  0x00000000 , 0x00004984 
+ 00019117  0x00004888 fetch  0x00000001 , 0x00000c71 
+ 00019118  0x00004889 bne  0x00000000 , 0x00004984 
+ 00019119  0x0000488a fetch  0x00000001 , 0x00000c70 
+ 00019120  0x0000488b and_into  0x00000080 , 0x0000003f 
+ 00019121  0x0000488c bne  0x00000000 , 0x00004984 
+ 00019122  0x0000488d fetch  0x00000001 , 0x00000c70 
+ 00019123  0x0000488e bne  0x00000000 , 0x00004aba 
+ 00019124  0x00004890 jam  0x00000002 , 0x00000c6b 
+ 00019125  0x00004892 fetch  0x00000001 , 0x00000c70 
+ 00019126  0x00004893 hstore  0x00000001 , 0x00008a04 
+ 00019127  0x00004894 call  0x00004988 
+ 00019128  0x00004895 jam  0x00000001 , 0x00000d48 
+ 00019129  0x00004896 rtn 
+ 00019130  0x00004898 jam  0x00000003 , 0x00000c6b 
+ 00019131  0x00004899 branch  0x00004ab5 
+ 00019132  0x0000489d fetch  0x00000001 , 0x00000c6b 
+ 00019133  0x0000489e beq  0x00000002 , 0x00004984 
+ 00019134  0x0000489f fetch  0x00000001 , 0x00000c6e 
+ 00019135  0x000048a0 bne  0x00000000 , 0x00004984 
+ 00019136  0x000048a1 fetch  0x00000001 , 0x00000c72 
+ 00019137  0x000048a2 bne  0x00000000 , 0x00004984 
+ 00019138  0x000048a3 fetch  0x00000001 , 0x00000c73 
+ 00019139  0x000048a4 bne  0x00000000 , 0x00004984 
+ 00019140  0x000048a5 fetch  0x00000001 , 0x00000c74 
+ 00019141  0x000048a6 bne  0x00000000 , 0x00004984 
+ 00019142  0x000048a7 fetch  0x00000001 , 0x00000c75 
+ 00019143  0x000048a8 bne  0x00000000 , 0x00004984 
+ 00019144  0x000048a9 fetch  0x00000001 , 0x00000c71 
+ 00019145  0x000048aa bne  0x00000000 , 0x00004984 
+ 00019146  0x000048ab fetch  0x00000001 , 0x00000c70 
+ 00019147  0x000048ac sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00019148  0x000048ad nbranch  0x00004984 , 0x00000002 
+ 00019149  0x000048ae fetch  0x00000001 , 0x00000c6b 
+ 00019150  0x000048af beq  0x00000003 , 0x00004ad1 
+ 00019151  0x000048b0 beq  0x00000004 , 0x00004ad1 
+ 00019152  0x000048b1 branch  0x00004984 
+ 00019153  0x000048b5 fetch  0x00000001 , 0x00000c70 
+ 00019154  0x000048b6 beq  0x00000000 , 0x00004ad5 
+ 00019155  0x000048b7 jam  0x00000004 , 0x00000c6b 
+ 00019156  0x000048b8 branch  0x00004988 
+ 00019157  0x000048ba jam  0x00000003 , 0x00000c6b 
+ 00019158  0x000048bb branch  0x00004988 
+ 00019159  0x000048bf fetch  0x00000001 , 0x00000c6b 
+ 00019160  0x000048c0 bne  0x00000004 , 0x00004984 
+ 00019161  0x000048c1 fetch  0x00000001 , 0x00000c6e 
+ 00019162  0x000048c2 bne  0x00000001 , 0x00004984 
+ 00019163  0x000048c3 fetch  0x00000001 , 0x00000c70 
+ 00019164  0x000048c4 bne  0x00000000 , 0x00004984 
+ 00019165  0x000048c5 fetch  0x00000001 , 0x00000c71 
+ 00019166  0x000048c6 bne  0x00000000 , 0x00004984 
+ 00019167  0x000048c7 fetch  0x00000001 , 0x00000c74 
+ 00019168  0x000048c8 bne  0x00000000 , 0x00004984 
+ 00019169  0x000048c9 fetch  0x00000001 , 0x00000c75 
+ 00019170  0x000048ca bne  0x00000000 , 0x00004984 
+ 00019171  0x000048cb fetch  0x00000001 , 0x00000c72 
+ 00019172  0x000048cc bne  0x00000000 , 0x00004984 
+ 00019173  0x000048cd fetch  0x00000001 , 0x00000c73 
+ 00019174  0x000048ce bne  0x00000000 , 0x00004984 
+ 00019175  0x000048cf branch  0x00004988 
+ 00019176  0x000048d3 jam  0x00000001 , 0x00000d4c 
+ 00019177  0x000048d4 fetch  0x00000001 , 0x00000c71 
+ 00019178  0x000048d5 store  0x00000001 , 0x00000d4d 
+ 00019179  0x000048d6 fetch  0x00000001 , 0x00000c72 
+ 00019180  0x000048d7 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00019181  0x000048d8 call  0x00004af5 , 0x00000005 
+ 00019182  0x000048d9 fetch  0x00000001 , 0x00000d36 
+ 00019183  0x000048da bne  0x00000004 , 0x00004988 
+ 00019184  0x000048db jam  0x00000002 , 0x00000d36 
+ 00019185  0x000048dc call  0x00004988 
+ 00019186  0x000048dd nop  0x00007530 
+ 00019187  0x000048de nop  0x00007530 
+ 00019188  0x000048df rtn 
+ 00019189  0x000048e1 jam  0x00000001 , 0x00000d45 
+ 00019190  0x000048e2 jam  0x00000000 , 0x00000d3a 
+ 00019191  0x000048e3 jam  0x00000004 , 0x00000d36 
+ 00019192  0x000048e4 rtn 
+ 00019193  0x000048e8 jam  0x00000001 , 0x00000d50 
+ 00019194  0x000048e9 call  0x00004b03 
+ 00019195  0x000048ea fetch  0x00000002 , 0x00000c70 
+ 00019196  0x000048eb store  0x00000002 , 0x00000d4e 
+ 00019197  0x000048ec fetch  0x00000001 , 0x00000c74 
+ 00019198  0x000048ed iforce  0x00000039 
+ 00019199  0x000048ee arg  0x00000c76 , 0x00000006 
+ 00019200  0x000048ef arg  0x00000cb6 , 0x00000005 
+ 00019201  0x000048f0 call  0x00007f01 
+ 00019202  0x000048f1 branch  0x00004988 
+ 00019203  0x000048f4 fetch  0x00000002 , 0x00000c70 
+ 00019204  0x000048f5 arg  0x00000200 , 0x00000002 
+ 00019205  0x000048f6 isub  0x00000002 , 0x0000003e 
+ 00019206  0x000048f7 nrtn  0x00000005 
+ 00019207  0x000048f8 fetch  0x00000002 , 0x00000c72 
+ 00019208  0x000048f9 arg  0x00000000 , 0x00000002 
+ 00019209  0x000048fa isub  0x00000002 , 0x0000003e 
+ 00019210  0x000048fb nrtn  0x00000005 
+ 00019211  0x000048fc fetch  0x00000002 , 0x00000c74 
+ 00019212  0x000048fd arg  0x00000001 , 0x00000002 
+ 00019213  0x000048fe isub  0x00000002 , 0x0000003e 
+ 00019214  0x000048ff nrtn  0x00000005 
+ 00019215  0x00004900 jam  0x00000001 , 0x00000d43 
+ 00019216  0x00004901 rtn 
+ 00019217  0x00004905 fetch  0x00000001 , 0x00000c74 
+ 00019218  0x00004906 bne  0x00000000 , 0x00004984 
+ 00019219  0x00004907 fetch  0x00000001 , 0x00000c70 
+ 00019220  0x00004908 beq  0x00000000 , 0x00004b17 
+ 00019221  0x00004909 beq  0x00000001 , 0x00004b1a 
+ 00019222  0x0000490a branch  0x00004984 
+ 00019223  0x0000490c jam  0x00000000 , 0x00000d4a 
+ 00019224  0x0000490d jam  0x00000001 , 0x00000d49 
+ 00019225  0x0000490e branch  0x00004988 
+ 00019226  0x00004910 jam  0x00000001 , 0x00000d44 
+ 00019227  0x00004911 jam  0x00000001 , 0x00000d4a 
+ 00019228  0x00004912 jam  0x00000000 , 0x00000d49 
+ 00019229  0x00004913 branch  0x00004988 
+ 00019230  0x00004917 ifetch  0x00000001 , 0x00000011 
+ 00019231  0x00004918 iforce  0x00000012 
+ 00019232  0x00004919 increase  0x00000001 , 0x00000011 
+ 00019233  0x0000491c bpatch  0x000000fa , 0x0000401f 
+ 00019234  0x0000491d bmark0  0x00000023 , 0x00004b2c 
+ 00019235  0x0000491e add  0x00000012 , 0x00000001 , 0x0000003f 
+ 00019236  0x0000491f lshift  0x0000003f , 0x0000003f 
+ 00019237  0x00004920 hstore  0x00000001 , 0x00008a18 
+ 00019238  0x00004921 jam  0x00000003 , 0x00008a18 
+ 00019239  0x00004922 fetch  0x00000001 , 0x00000c74 
+ 00019240  0x00004923 increase  0xfffffffe , 0x0000003f 
+ 00019241  0x00004924 rshift  0x0000003f , 0x0000003f 
+ 00019242  0x00004925 store  0x00000001 , 0x00000c74 
+ 00019243  0x00004926 beq  0x00000000 , 0x00004b35 
+ 00019244  0x00004928 fetch  0x00000002 , 0x00000c74 
+ 00019245  0x00004929 isub  0x00000012 , 0x0000003e 
+ 00019246  0x0000492a branch  0x00004b30 , 0x00000002 
+ 00019247  0x0000492b copy  0x0000003f , 0x00000012 
+ 00019248  0x0000492d deposit  0x00000011 
+ 00019249  0x0000492e store  0x00000002 , 0x00000b65 
+ 00019250  0x0000492f deposit  0x00000012 
+ 00019251  0x00004930 store  0x00000001 , 0x00000b67 
+ 00019252  0x00004931 branch  0x00004b37 
+ 00019253  0x00004934 arg  0x00000000 , 0x00000007 
+ 00019254  0x00004935 branch  0x00004b57 
+ 00019255  0x00004939 bpatch  0x000000fb , 0x0000401f 
+ 00019256  0x0000493a fetch  0x00000001 , 0x00000b67 
+ 00019257  0x0000493b rtn  0x00000034 
+ 00019258  0x0000493c copy  0x0000003f , 0x00000039 
+ 00019259  0x0000493d sub  0x0000003f , 0x00000040 , 0x0000003e 
+ 00019260  0x0000493e branch  0x00004b3e , 0x00000002 
+ 00019261  0x0000493f arg  0x00000040 , 0x00000039 
+ 00019262  0x00004941 fetch  0x00000001 , 0x00000b67 
+ 00019263  0x00004942 isub  0x00000039 , 0x0000003f 
+ 00019264  0x00004943 store  0x00000001 , 0x00000b67 
+ 00019265  0x00004944 fetch  0x00000002 , 0x00000b65 
+ 00019266  0x00004945 copy  0x0000003f , 0x00000006 
+ 00019267  0x00004947 ifetch  0x00000001 , 0x00000006 
+ 00019268  0x00004948 hstore  0x00000001 , 0x00008a18 
+ 00019269  0x00004949 bmark0  0x00000023 , 0x00004b47 
+ 00019270  0x0000494a jam  0x00000000 , 0x00008a18 
+ 00019271  0x0000494c loop  0x00004b43 
+ 00019272  0x0000494d copy  0x00000006 , 0x0000003f 
+ 00019273  0x0000494e store  0x00000002 , 0x00000b65 
+ 00019274  0x0000494f arg  0x00000000 , 0x00000007 
+ 00019275  0x00004950 call  0x00004b57 
+ 00019276  0x00004951 fetch  0x00000001 , 0x00000b67 
+ 00019277  0x00004952 nrtn  0x00000034 
+ 00019278  0x00004953 fetch  0x00000001 , 0x00000d36 
+ 00019279  0x00004954 rtnne  0x00000001 
+ 00019280  0x00004955 jam  0x00000002 , 0x00000d36 
+ 00019281  0x00004956 rtn 
+ 00019282  0x0000495a arg  0x00008a19 , 0x00000011 
+ 00019283  0x0000495b arg  0x00000001 , 0x00000007 
+ 00019284  0x0000495d ifetch  0x00000001 , 0x00000006 
+ 00019285  0x0000495e istore  0x00000001 , 0x00000011 
+ 00019286  0x0000495f loop  0x00004b54 
+ 00019287  0x00004961 setarg  0x00000000 
+ 00019288  0x00004962 qset1  0x0000003f 
+ 00019289  0x00004963 hstore  0x00000001 , 0x00008a10 
+ 00019290  0x00004964 fetcht  0x00000001 , 0x00000d37 
+ 00019291  0x00004965 ior  0x00000002 , 0x0000003f 
+ 00019292  0x00004966 store  0x00000001 , 0x00000d37 
+ 00019293  0x00004967 rtn 
+ 00019294  0x0000496a arg  0x00000002 , 0x00000007 
+ 00019295  0x0000496b arg  0x00008a1a , 0x00000011 
+ 00019296  0x0000496c branch  0x00004b54 
+ 00019297  0x0000496f bpatch  0x000000fc , 0x0000401f 
+ 00019298  0x00004970 fetch  0x00000001 , 0x00000d38 
+ 00019299  0x00004971 rtn  0x00000034 
+ 00019300  0x00004972 fetch  0x00000001 , 0x00000d37 
+ 00019301  0x00004973 nbranch  0x00004bac , 0x00000034 
+ 00019302  0x00004974 fetch  0x00000001 , 0x00000d45 
+ 00019303  0x00004975 branch  0x00004b86 , 0x00000034 
+ 00019304  0x00004976 fetch  0x00000001 , 0x00000d36 
+ 00019305  0x00004977 beq  0x00000003 , 0x00004bbf 
+ 00019306  0x00004978 bne  0x00000002 , 0x00004b86 
+ 00019307  0x00004979 fetch  0x00000001 , 0x00000d3a 
+ 00019308  0x0000497a nbranch  0x00004b86 , 0x00000034 
+ 00019309  0x0000497b call  0x00004b6f 
+ 00019310  0x0000497c branch  0x00004b7a 
+ 00019311  0x0000497f fetch  0x00000001 , 0x00000d38 
+ 00019312  0x00004980 rtnbit0  0x00000001 
+ 00019313  0x00004981 fetch  0x00000001 , 0x00000d37 
+ 00019314  0x00004982 rtnbit1  0x00000001 
+ 00019315  0x00004983 fetch  0x00000001 , 0x00000d38 
+ 00019316  0x00004984 set0  0x00000001 , 0x0000003f 
+ 00019317  0x00004985 store  0x00000001 , 0x00000d38 
+ 00019318  0x00004986 fetch  0x00000001 , 0x00000d51 
+ 00019319  0x00004987 rtn  0x00000034 
+ 00019320  0x00004988 beq  0x00000010 , 0x00004ba8 
+ 00019321  0x00004989 branch  0x00002a8c 
+ 00019322  0x0000498c fetch  0x00000001 , 0x00000d38 
+ 00019323  0x0000498d rtnbit0  0x00000002 
+ 00019324  0x0000498e fetch  0x00000001 , 0x00000d37 
+ 00019325  0x0000498f rtnbit1  0x00000002 
+ 00019326  0x00004990 fetch  0x00000001 , 0x00000d38 
+ 00019327  0x00004991 set0  0x00000002 , 0x0000003f 
+ 00019328  0x00004992 store  0x00000001 , 0x00000d38 
+ 00019329  0x00004993 fetch  0x00000001 , 0x00000d52 
+ 00019330  0x00004994 rtn  0x00000034 
+ 00019331  0x00004995 beq  0x00000020 , 0x00004b89 
+ 00019332  0x00004996 beq  0x00000021 , 0x00004ba4 
+ 00019333  0x00004997 branch  0x00002a8c 
+ 00019334  0x0000499b arg  0x00000d54 , 0x00000005 
+ 00019335  0x0000499c arg  0x00000006 , 0x00000039 
+ 00019336  0x0000499d branch  0x00007ec6 
+ 00019337  0x000049a0 fetch  0x00000001 , 0x00000d4c 
+ 00019338  0x000049a1 fetcht  0x00000001 , 0x00000d4b 
+ 00019339  0x000049a2 iand  0x00000002 , 0x0000003f 
+ 00019340  0x000049a3 branch  0x00004ba0 , 0x00000034 
+ 00019341  0x000049a4 fetcht  0x00000001 , 0x00000d4a 
+ 00019342  0x000049a5 iadd  0x00000002 , 0x0000003f 
+ 00019343  0x000049a6 beq  0x00000001 , 0x00004b91 
+ 00019344  0x000049a7 branch  0x00004ba0 
+ 00019345  0x000049aa jam  0x00000000 , 0x00000d52 
+ 00019346  0x000049ac fetch  0x00000001 , 0x00000d55 
+ 00019347  0x000049ad beq  0x00000002 , 0x00004ba1 
+ 00019348  0x000049ae beq  0x00000003 , 0x00004ba1 
+ 00019349  0x000049af fetch  0x00000001 , 0x00000d55 
+ 00019350  0x000049b0 store  0x00000001 , 0x00000d54 
+ 00019351  0x000049b1 fetch  0x00000001 , 0x00000d56 
+ 00019352  0x000049b2 istore  0x00000001 , 0x00000005 
+ 00019353  0x000049b3 fetch  0x00000001 , 0x00000d58 
+ 00019354  0x000049b4 istore  0x00000001 , 0x00000005 
+ 00019355  0x000049b5 fetch  0x00000001 , 0x00000d5a 
+ 00019356  0x000049b6 istore  0x00000001 , 0x00000005 
+ 00019357  0x000049b7 arg  0x00000004 , 0x00000039 
+ 00019358  0x000049b8 arg  0x00000d54 , 0x00000006 
+ 00019359  0x000049b9 branch  0x00004b5e 
+ 00019360  0x000049bc jam  0x00000000 , 0x00000d52 
+ 00019361  0x000049be arg  0x00000008 , 0x00000039 
+ 00019362  0x000049bf arg  0x00000d54 , 0x00000006 
+ 00019363  0x000049c0 branch  0x00004b5e 
+ 00019364  0x000049c3 jam  0x00000000 , 0x00000d52 
+ 00019365  0x000049c4 arg  0x00000003 , 0x00000039 
+ 00019366  0x000049c5 arg  0x00000d74 , 0x00000006 
+ 00019367  0x000049c6 branch  0x00004b5e 
+ 00019368  0x000049c9 jam  0x00000000 , 0x00000d51 
+ 00019369  0x000049ca arg  0x00000008 , 0x00000039 
+ 00019370  0x000049cb arg  0x00000d64 , 0x00000006 
+ 00019371  0x000049cc branch  0x00004b52 
+ 00019372  0x000049cf fetch  0x00000001 , 0x00000d36 
+ 00019373  0x000049d0 beq  0x00000003 , 0x00004bb0 
+ 00019374  0x000049d1 beq  0x00000002 , 0x00004bb2 
+ 00019375  0x000049d2 rtn 
+ 00019376  0x000049d4 jam  0x00000000 , 0x00000d37 
+ 00019377  0x000049d5 rtn 
+ 00019378  0x000049d7 hfetch  0x00000001 , 0x00008a00 
+ 00019379  0x000049d8 set1  0x00000007 , 0x0000003f 
+ 00019380  0x000049d9 hstore  0x00000001 , 0x00008a00 
+ 00019381  0x000049da jam  0x00000001 , 0x00000d47 
+ 00019382  0x000049db rtn 
+ 00019383  0x000049de fetch  0x00000001 , 0x00000d36 
+ 00019384  0x000049df rtneq  0x00000003 
+ 00019385  0x000049e0 beq  0x00000002 , 0x00004bbb 
+ 00019386  0x000049e1 rtn 
+ 00019387  0x000049e3 fetch  0x00000001 , 0x00000d47 
+ 00019388  0x000049e4 rtn  0x00000034 
+ 00019389  0x000049e5 jam  0x00000001 , 0x00000d46 
+ 00019390  0x000049e6 branch  0x00004bc2 
+ 00019391  0x000049e9 arg  0x0000000f , 0x00000007 
+ 00019392  0x000049ea call  0x00007f16 
+ 00019393  0x000049eb nrtn  0x00000034 
+ 00019394  0x000049ed hfetch  0x00000001 , 0x00008a00 
+ 00019395  0x000049ee rtnbit0  0x00000007 
+ 00019396  0x000049ef jam  0x000000fc , 0x00008a00 
+ 00019397  0x000049f0 nop  0x00007530 
+ 00019398  0x000049f1 jam  0x0000003c , 0x00008a00 
+ 00019399  0x000049f2 rtn 
+ 00019400  0x000049fa bpatch  0x000000fd , 0x0000401f 
+ 00019401  0x000049fb fetch  0x00000001 , 0x000041ce 
+ 00019402  0x000049fc nrtn  0x00000034 
+ 00019403  0x000049fe call  0x00004bce 
+ 00019404  0x000049ff ncall  0x00004be6 , 0x00000028 
+ 00019405  0x00004a00 rtn 
+ 00019406  0x00004a03 bpatch  0x000000fe , 0x0000401f 
+ 00019407  0x00004a04 copy  0x00000003 , 0x00000011 
+ 00019408  0x00004a05 arg  0x00000004 , 0x00000002 
+ 00019409  0x00004a06 ifetch  0x00000001 , 0x00000003 
+ 00019410  0x00004a07 beq  0x00000001 , 0x00004bd8 
+ 00019411  0x00004a08 increase  0x00000001 , 0x00000002 
+ 00019412  0x00004a09 beq  0x00000002 , 0x00004bd8 
+ 00019413  0x00004a0a copy  0x00000003 , 0x0000003f 
+ 00019414  0x00004a0b hstore  0x00000002 , 0x00008058 
+ 00019415  0x00004a0c rtn 
+ 00019416  0x00004a0e hfetch  0x00000002 , 0x00008112 
+ 00019417  0x00004a0f isub  0x00000002 , 0x0000003e 
+ 00019418  0x00004a10 nbranch  0x00004bd8 , 0x00000002 
+ 00019419  0x00004a12 disable  0x00000028 
+ 00019420  0x00004a13 copy  0x00000011 , 0x00000003 
+ 00019421  0x00004a14 call  0x00004bee 
+ 00019422  0x00004a15 iadd  0x00000002 , 0x00000002 
+ 00019423  0x00004a17 hfetch  0x00000002 , 0x00008112 
+ 00019424  0x00004a18 isub  0x00000002 , 0x0000003e 
+ 00019425  0x00004a19 nbranch  0x00004bdf , 0x00000002 
+ 00019426  0x00004a1a copy  0x00000011 , 0x00000003 
+ 00019427  0x00004a1b ifetch  0x00000001 , 0x00000003 
+ 00019428  0x00004a1c beq  0x00000001 , 0x00004c3f 
+ 00019429  0x00004a1d branch  0x00002a8c 
+ 00019430  0x00004a20 bpatch  0x000000ff , 0x0000401f 
+ 00019431  0x00004a21 hfetch  0x00000002 , 0x00008058 
+ 00019432  0x00004a22 iforce  0x00000003 
+ 00019433  0x00004a23 call  0x00004bee 
+ 00019434  0x00004a24 iadd  0x00000003 , 0x00000003 
+ 00019435  0x00004a25 deposit  0x00000003 
+ 00019436  0x00004a26 hstore  0x00000002 , 0x00008058 
+ 00019437  0x00004a27 rtn 
+ 00019438  0x00004a2d ifetch  0x00000001 , 0x00000003 
+ 00019439  0x00004a2e increase  0x00000002 , 0x00000003 
+ 00019440  0x00004a2f beq  0x00000002 , 0x00004bf3 
+ 00019441  0x00004a30 ifetch  0x00000001 , 0x00000003 
+ 00019442  0x00004a31 rtn 
+ 00019443  0x00004a33 ifetch  0x00000002 , 0x00000003 
+ 00019444  0x00004a34 rtn 
+ 00019445  0x00004a37 hfetch  0x00000002 , 0x0000805e 
+ 00019446  0x00004a38 increase  0xfffffffb , 0x0000000a 
+ 00019447  0x00004a39 iadd  0x0000000a , 0x0000000a 
+ 00019448  0x00004a3a rtn 
+ 00019449  0x00004a3d arg  0x00000004 , 0x00000002 
+ 00019450  0x00004a3e branch  0x00004bfc 
+ 00019451  0x00004a40 arg  0x00000002 , 0x00000002 
+ 00019452  0x00004a42 bpatchx  0x00000000 , 0x00004020 
+ 00019453  0x00004a43 increase  0x00000001 , 0x00000039 
+ 00019454  0x00004a44 hfetch  0x00000002 , 0x0000805e 
+ 00019455  0x00004a45 copy  0x0000003f , 0x0000000a 
+ 00019456  0x00004a46 copy  0x00000039 , 0x0000003f 
+ 00019457  0x00004a47 istoret  0x00000001 , 0x0000000a 
+ 00019458  0x00004a48 increase  0xffffffff , 0x0000003f 
+ 00019459  0x00004a49 iadd  0x0000000a , 0x0000000a 
+ 00019460  0x00004a4a copy  0x0000000a , 0x0000003f 
+ 00019461  0x00004a4b store  0x00000002 , 0x00000258 
+ 00019462  0x00004a4c copy  0x00000002 , 0x0000003f 
+ 00019463  0x00004a4d rtneq  0x00000002 
+ 00019464  0x00004a4e fetch  0x00000002 , 0x00000258 
+ 00019465  0x00004a4f hstore  0x00000002 , 0x0000805e 
+ 00019466  0x00004a50 branch  0x00004c0b 
+ 00019467  0x00004a54 setarg  0x00000000 
+ 00019468  0x00004a55 store  0x00000002 , 0x00000258 
+ 00019469  0x00004a56 rtn 
+ 00019470  0x00004a5e rtn  0x0000002b 
+ 00019471  0x00004a5f setarg  0x00004d28 
+ 00019472  0x00004a60 store  0x00000002 , 0x000041f3 
+ 00019473  0x00004a62 setarg  0x000001a0 
+ 00019474  0x00004a63 store  0x00000002 , 0x00004243 
+ 00019475  0x00004a65 setarg  0x00001800 
+ 00019476  0x00004a66 hstore  0x00000002 , 0x00008054 
+ 00019477  0x00004a67 setarg  0x00001bff 
+ 00019478  0x00004a68 hstore  0x00000002 , 0x00008056 
+ 00019479  0x00004a69 setarg  0x00001c00 
+ 00019480  0x00004a6a hstore  0x00000002 , 0x0000805a 
+ 00019481  0x00004a6b call  0x00004c28 
+ 00019482  0x00004a6d jam  0x00000000 , 0x00008062 
+ 00019483  0x00004a6e setarg  0x00001c00 
+ 00019484  0x00004a6f hstore  0x00000002 , 0x0000805e 
+ 00019485  0x00004a70 hstore  0x00000002 , 0x00008060 
+ 00019486  0x00004a71 setarg  0x00001800 
+ 00019487  0x00004a72 hstore  0x00000002 , 0x00008058 
+ 00019488  0x00004a73 store  0x00000002 , 0x00000244 
+ 00019489  0x00004a75 hfetch  0x00000002 , 0x00008050 
+ 00019490  0x00004a76 set0  0x0000000f , 0x0000003f 
+ 00019491  0x00004a77 hstore  0x00000002 , 0x00008050 
+ 00019492  0x00004a78 call  0x000066ce 
+ 00019493  0x00004a79 jam  0x00000001 , 0x00008043 
+ 00019494  0x00004a7a jam  0x00000081 , 0x00008062 
+ 00019495  0x00004a7b rtn 
+ 00019496  0x00004a7e setarg  0x00001fff 
+ 00019497  0x00004a7f hstore  0x00000002 , 0x0000805c 
+ 00019498  0x00004a80 hfetch  0x00000001 , 0x00008081 
+ 00019499  0x00004a81 or_into  0x00000007 , 0x0000003f 
+ 00019500  0x00004a82 hstore  0x00000001 , 0x00008081 
+ 00019501  0x00004a83 rtn 
+ 00019502  0x00004a87 bpatchx  0x00000001 , 0x00004020 
+ 00019503  0x00004a88 hfetch  0x00000001 , 0x0000810c 
+ 00019504  0x00004a89 iforce  0x00000012 
+ 00019505  0x00004a8a bbit0  0x00000003 , 0x00004c37 
+ 00019506  0x00004a8b hfetch  0x00000002 , 0x00008112 
+ 00019507  0x00004a8c iforce  0x00000013 
+ 00019508  0x00004a8d arg  0x0000044f , 0x00000002 
+ 00019509  0x00004a8e isub  0x00000002 , 0x0000003e 
+ 00019510  0x00004a8f nrtn  0x00000005 
+ 00019511  0x00004a91 hfetch  0x00000002 , 0x00008058 
+ 00019512  0x00004a92 iforce  0x00000003 
+ 00019513  0x00004a93 branch  0x00004bc8 
+ 00019514  0x00004a96 hfetcht  0x00000001 , 0x0000810c 
+ 00019515  0x00004a97 isolate1  0x00000006 , 0x00000002 
+ 00019516  0x00004a98 branch  0x00004c3a , 0x00000001 
+ 00019517  0x00004a99 hstore  0x00000001 , 0x00008015 
+ 00019518  0x00004a9a rtn 
+ 00019519  0x00004a9d bpatchx  0x00000002 , 0x00004020 
+ 00019520  0x00004a9e fetch  0x00000001 , 0x000041ce 
+ 00019521  0x00004a9f branch  0x00004c44 , 0x00000034 
+ 00019522  0x00004aa0 enable  0x00000028 
+ 00019523  0x00004aa1 rtn 
+ 00019524  0x00004aa3 ifetch  0x00000002 , 0x00000003 
+ 00019525  0x00004aa4 iforce  0x00000030 
+ 00019526  0x00004aa5 iforce  0x00000007 
+ 00019527  0x00004aa6 ifetch  0x00000001 , 0x00000003 
+ 00019528  0x00004aa7 iforce  0x00000002 
+ 00019529  0x00004aa8 rshift2  0x00000030 , 0x0000003f 
+ 00019530  0x00004aa9 rshift8  0x0000003f , 0x0000003f 
+ 00019531  0x00004aaa beq  0x0000003f , 0x00004c4d 
+ 00019532  0x00004aab rtn 
+ 00019533  0x00004aaf bpatchx  0x00000003 , 0x00004020 
+ 00019534  0x00004ab0 deposit  0x00000007 
+ 00019535  0x00004ab1 beq  0x00000000 , 0x00004cdc 
+ 00019536  0x00004ab2 beq  0x00000001 , 0x00004c66 
+ 00019537  0x00004ab3 beq  0x00000002 , 0x00004c6b 
+ 00019538  0x00004ab4 beq  0x00000003 , 0x00004c7a 
+ 00019539  0x00004ab5 beq  0x00000004 , 0x00004cb3 
+ 00019540  0x00004ab6 beq  0x00000005 , 0x00004cdc 
+ 00019541  0x00004ab7 beq  0x00000006 , 0x00004cc6 
+ 00019542  0x00004ab8 beq  0x00000007 , 0x00004c5c 
+ 00019543  0x00004aba beq  0x00000010 , 0x00004cc9 
+ 00019544  0x00004abb beq  0x00000011 , 0x00004cd1 
+ 00019545  0x00004abc beq  0x00000012 , 0x00004ca5 
+ 00019546  0x00004abd beq  0x00000013 , 0x00004c85 
+ 00019547  0x00004abe branch  0x00004cdc 
+ 00019548  0x00004ac1 call  0x00004cdc 
+ 00019549  0x00004ac2 call  0x00007f9e 
+ 00019550  0x00004ac3 call  0x0000688c 
+ 00019551  0x00004ac5 call  0x000033d2 
+ 00019552  0x00004ac6 call  0x000033d9 
+ 00019553  0x00004ac7 branch  0x0000688f 
+ 00019554  0x00004aca jam  0x00000000 , 0x00004245 
+ 00019555  0x00004acb call  0x000033d0 
+ 00019556  0x00004acc call  0x00004c13 
+ 00019557  0x00004acd branch  0x000033db 
+ 00019558  0x00004ad0 call  0x00004cf2 
+ 00019559  0x00004ad1 hfetch  0x00000002 , 0x00008000 
+ 00019560  0x00004ad2 istore  0x00000002 , 0x0000000a 
+ 00019561  0x00004ad3 force  0x00000006 , 0x00000039 
+ 00019562  0x00004ad4 branch  0x00004cdd 
+ 00019563  0x00004ad7 ifetch  0x00000002 , 0x00000003 
+ 00019564  0x00004ad8 store  0x00000002 , 0x00004243 
+ 00019565  0x00004ad9 hstore  0x00000002 , 0x00008052 
+ 00019566  0x00004ada rtn 
+ 00019567  0x00004adf ifetch  0x00000001 , 0x00000003 
+ 00019568  0x00004ae0 copy  0x0000003f , 0x00000002 
+ 00019569  0x00004ae1 hstore  0x00000001 , 0x00008024 
+ 00019570  0x00004ae2 ifetch  0x00000001 , 0x00000003 
+ 00019571  0x00004ae3 iadd  0x00000002 , 0x00000002 
+ 00019572  0x00004ae4 set1  0x00000007 , 0x0000003f 
+ 00019573  0x00004ae5 hstore  0x00000001 , 0x00008023 
+ 00019574  0x00004ae6 ifetch  0x00000001 , 0x00000003 
+ 00019575  0x00004ae7 iadd  0x00000002 , 0x00000002 
+ 00019576  0x00004ae8 copy  0x0000003f , 0x00000039 
+ 00019577  0x00004ae9 rtn 
+ 00019578  0x00004aec bmark1  0x0000002b , 0x00004cc4 
+ 00019579  0x00004aed call  0x00004c6f 
+ 00019580  0x00004aef ifetch  0x00000001 , 0x00000003 
+ 00019581  0x00004af0 hstore  0x00000001 , 0x00008025 
+ 00019582  0x00004af1 iadd  0x00000002 , 0x00000002 
+ 00019583  0x00004af2 loop  0x00004c7c 
+ 00019584  0x00004af4 and  0x00000002 , 0x000000ff , 0x00000002 
+ 00019585  0x00004af5 ifetch  0x00000001 , 0x00000003 
+ 00019586  0x00004af6 isub  0x00000002 , 0x0000003e 
+ 00019587  0x00004af7 nbranch  0x00004cc4 , 0x00000005 
+ 00019588  0x00004af8 branch  0x00004cdc 
+ 00019589  0x00004afc bmark0  0x0000002b , 0x00004cc4 
+ 00019590  0x00004afd call  0x00004c6f 
+ 00019591  0x00004afe store  0x00000008 , 0x00000a9a 
+ 00019592  0x00004b00 call  0x00007422 
+ 00019593  0x00004b01 arg  0x00000010 , 0x00000039 
+ 00019594  0x00004b02 arg  0x00000ac2 , 0x00000005 
+ 00019595  0x00004b03 call  0x00004ca0 
+ 00019596  0x00004b04 storet  0x00000008 , 0x00000aa2 
+ 00019597  0x00004b05 arg  0x00000ad2 , 0x00000005 
+ 00019598  0x00004b06 call  0x00007497 
+ 00019599  0x00004b07 arg  0x00000ad2 , 0x00000011 
+ 00019600  0x00004b08 arg  0x00000ac2 , 0x00000012 
+ 00019601  0x00004b09 arg  0x00000ae2 , 0x00000005 
+ 00019602  0x00004b0a call  0x00007352 
+ 00019603  0x00004b0b arg  0x00000010 , 0x00000039 
+ 00019604  0x00004b0c arg  0x00000ae2 , 0x00000006 
+ 00019605  0x00004b0d call  0x00004c9c 
+ 00019606  0x00004b0e fetcht  0x00000008 , 0x00000aa2 
+ 00019607  0x00004b0f fetch  0x00000008 , 0x00000a9a 
+ 00019608  0x00004b10 increase  0xfffffff0 , 0x0000003f 
+ 00019609  0x00004b11 store  0x00000008 , 0x00000a9a 
+ 00019610  0x00004b12 nbranch  0x00004c88 , 0x00000034 
+ 00019611  0x00004b13 branch  0x00004c80 
+ 00019612  0x00004b16 ifetch  0x00000001 , 0x00000006 
+ 00019613  0x00004b17 hstore  0x00000001 , 0x00008025 
+ 00019614  0x00004b18 loop  0x00004c9c 
+ 00019615  0x00004b19 rtn 
+ 00019616  0x00004b1c ifetch  0x00000001 , 0x00000003 
+ 00019617  0x00004b1d istore  0x00000001 , 0x00000005 
+ 00019618  0x00004b1e iadd  0x00000002 , 0x00000002 
+ 00019619  0x00004b1f loop  0x00004ca0 
+ 00019620  0x00004b20 rtn 
+ 00019621  0x00004b23 bmark0  0x0000002b , 0x00004cc4 
+ 00019622  0x00004b24 arg  0x00000000 , 0x00000002 
+ 00019623  0x00004b25 arg  0x00000010 , 0x00000039 
+ 00019624  0x00004b26 arg  0x00000ac2 , 0x00000005 
+ 00019625  0x00004b27 call  0x00004ca0 
+ 00019626  0x00004b28 hfetch  0x00000001 , 0x00008085 
+ 00019627  0x00004b29 and_into  0x000000fd , 0x0000003f 
+ 00019628  0x00004b2a hstore  0x00000001 , 0x00008085 
+ 00019629  0x00004b2b arg  0x00000ac2 , 0x00000006 
+ 00019630  0x00004b2c arg  0x00000010 , 0x00000039 
+ 00019631  0x00004b2d call  0x00007478 
+ 00019632  0x00004b2e call  0x00007428 
+ 00019633  0x00004b2f call  0x00007491 
+ 00019634  0x00004b30 branch  0x00004c80 
+ 00019635  0x00004b34 arg  0x00000020 , 0x00000039 
+ 00019636  0x00004b35 arg  0x00004000 , 0x00000005 
+ 00019637  0x00004b36 arg  0x00000000 , 0x00000002 
+ 00019638  0x00004b38 ifetch  0x00000001 , 0x00000003 
+ 00019639  0x00004b39 istore  0x00000001 , 0x00000005 
+ 00019640  0x00004b3a iadd  0x00000002 , 0x00000002 
+ 00019641  0x00004b3b loop  0x00004cb6 
+ 00019642  0x00004b3c and  0x00000002 , 0x000000ff , 0x00000002 
+ 00019643  0x00004b3d ifetch  0x00000001 , 0x00000003 
+ 00019644  0x00004b3e isub  0x00000002 , 0x0000003e 
+ 00019645  0x00004b3f nbranch  0x00004cc4 , 0x00000005 
+ 00019646  0x00004b40 jam  0x00000000 , 0x00008023 
+ 00019647  0x00004b41 call  0x00004cdc 
+ 00019648  0x00004b42 call  0x00004be6 
+ 00019649  0x00004b43 call  0x000064a3 
+ 00019650  0x00004b44 call  0x00007f9e 
+ 00019651  0x00004b45 branch  0x00002001 
+ 00019652  0x00004b48 jam  0x00000000 , 0x00008023 
+ 00019653  0x00004b49 branch  0x00002000 
+ 00019654  0x00004b4c ifetch  0x00000006 , 0x00000003 
+ 00019655  0x00004b4d store  0x00000006 , 0x000040a0 
+ 00019656  0x00004b4e branch  0x00004cdc 
+ 00019657  0x00004b52 ifetch  0x00000001 , 0x00000003 
+ 00019658  0x00004b53 store  0x00000001 , 0x0000025a 
+ 00019659  0x00004b54 copy  0x0000003f , 0x00000039 
+ 00019660  0x00004b55 ifetch  0x00000002 , 0x00000003 
+ 00019661  0x00004b56 store  0x00000002 , 0x0000025b 
+ 00019662  0x00004b57 copy  0x0000003f , 0x00000005 
+ 00019663  0x00004b58 call  0x000066fd 
+ 00019664  0x00004b59 branch  0x00004cdc 
+ 00019665  0x00004b5d ifetch  0x00000001 , 0x00000003 
+ 00019666  0x00004b5e store  0x00000001 , 0x0000025a 
+ 00019667  0x00004b5f copy  0x0000003f , 0x00000039 
+ 00019668  0x00004b60 ifetch  0x00000002 , 0x00000003 
+ 00019669  0x00004b61 store  0x00000002 , 0x0000025b 
+ 00019670  0x00004b62 arg  0x00001000 , 0x00000005 
+ 00019671  0x00004b63 call  0x000066fd 
+ 00019672  0x00004b64 fetcht  0x00000001 , 0x0000025a 
+ 00019673  0x00004b65 arg  0x00001000 , 0x00000011 
+ 00019674  0x00004b66 fetch  0x00000002 , 0x0000025b 
+ 00019675  0x00004b67 branch  0x00006608 
+ 00019676  0x00004b6d force  0x00000004 , 0x00000039 
+ 00019677  0x00004b6f call  0x00004cf4 
+ 00019678  0x00004b70 force  0x00000001 , 0x0000003f 
+ 00019679  0x00004b71 istore  0x00000001 , 0x0000000a 
+ 00019680  0x00004b72 deposit  0x00000030 
+ 00019681  0x00004b73 istore  0x00000003 , 0x0000000a 
+ 00019682  0x00004b74 force  0x0000000e , 0x00000007 
+ 00019683  0x00004b76 bpatchx  0x00000004 , 0x00004020 
+ 00019684  0x00004b77 call  0x00004cf6 
+ 00019685  0x00004b78 deposit  0x00000007 
+ 00019686  0x00004b79 istore  0x00000001 , 0x0000000a 
+ 00019687  0x00004b7a deposit  0x00000039 
+ 00019688  0x00004b7b istore  0x00000001 , 0x0000000a 
+ 00019689  0x00004b7d force  0x00000005 , 0x00000007 
+ 00019690  0x00004b7e increase  0x00000002 , 0x00000039 
+ 00019691  0x00004b80 branch  0x00004bf9 
+ 00019692  0x00004b83 force  0x000000ff , 0x00000007 
+ 00019693  0x00004b84 call  0x00004cf4 
+ 00019694  0x00004b85 setarg  0x00000001 
+ 00019695  0x00004b86 istore  0x00000001 , 0x0000000a 
+ 00019696  0x00004b87 force  0x00000001 , 0x00000039 
+ 00019697  0x00004b88 branch  0x00004ce3 
+ 00019698  0x00004b8b force  0x0000000c , 0x0000000a 
+ 00019699  0x00004b8c branch  0x00004cf7 
+ 00019700  0x00004b8f force  0x00000008 , 0x0000000a 
+ 00019701  0x00004b90 branch  0x00004cf7 
+ 00019702  0x00004b93 force  0x00000006 , 0x0000000a 
+ 00019703  0x00004b95 branch  0x00004bf5 
+ 00019704  0x00004b9a pulse  0x0000000f 
+ 00019705  0x00004b9b enable  0x00000009 
+ 00019706  0x00004b9d ifetch  0x00000001 , 0x0000000a 
+ 00019707  0x00004b9e inject  0x00000000 , 0x00000008 
+ 00019708  0x00004b9f loop  0x00004cfa 
+ 00019709  0x00004ba0 enable  0x00000008 
+ 00019710  0x00004ba1 inject  0x00000000 , 0x00000010 
+ 00019711  0x00004ba2 disable  0x00000008 
+ 00019712  0x00004ba3 disable  0x00000009 
+ 00019713  0x00004ba4 disable  0x0000000f 
+ 00019714  0x00004ba5 byteswap  0x0000003f , 0x0000003f 
+ 00019715  0x00004ba6 rtn 
+ 00019716  0x00004bab jam  0x00000000 , 0x000041ce 
+ 00019717  0x00004bac rtn 
+ 00019718  0x00004bae fetch  0x00000006 , 0x000041d0 
+ 00019719  0x00004baf fetcht  0x00000006 , 0x00000040 
+ 00019720  0x00004bb0 isub  0x00000002 , 0x0000003e 
+ 00019721  0x00004bb1 rtn 
+ 00019722  0x00004bb7 fetch  0x00000001 , 0x0000004b 
+ 00019723  0x00004bb8 bbit1  0x00000002 , 0x00004d0f 
+ 00019724  0x00004bb9 call  0x000062ef 
+ 00019725  0x00004bba jam  0x00000008 , 0x0000007c 
+ 00019726  0x00004bbb branch  0x00004d04 
+ 00019727  0x00004bbd set0  0x00000002 , 0x0000003f 
+ 00019728  0x00004bbe store  0x00000001 , 0x0000004b 
+ 00019729  0x00004bbf call  0x00006001 
+ 00019730  0x00004bc0 setarg  0x00000000 
+ 00019731  0x00004bc1 setflag  0x00000029 , 0x00000001 , 0x0000003f 
+ 00019732  0x00004bc2 store  0x00000001 , 0x0000007f 
+ 00019733  0x00004bc3 branch  0x00004d04 
+ 00019734  0x00004bc4 rtn 
+ 00019735  0x00004bc6 jam  0x00000017 , 0x0000007c 
+ 00019736  0x00004bc7 arg  0x000004d9 , 0x00000005 
+ 00019737  0x00004bc8 setarg  0x00000000 
+ 00019738  0x00004bc9 isolate1  0x0000001b , 0x00000028 
+ 00019739  0x00004bca setflag  0x00000001 , 0x00000001 , 0x0000003f 
+ 00019740  0x00004bcb istore  0x00000001 , 0x00000005 
+ 00019741  0x00004bcc setarg  0x00000000 
+ 00019742  0x00004bcd istore  0x00000002 , 0x00000005 
+ 00019743  0x00004bce fetch  0x00000002 , 0x000041e3 
+ 00019744  0x00004bcf istore  0x00000002 , 0x00000005 
+ 00019745  0x00004bd0 fetch  0x00000001 , 0x000041e5 
+ 00019746  0x00004bd1 istore  0x00000002 , 0x00000005 
+ 00019747  0x00004bd2 fetch  0x00000001 , 0x000041e7 
+ 00019748  0x00004bd3 istore  0x00000002 , 0x00000005 
+ 00019749  0x00004bd4 branch  0x00004d04 
+ 00019750  0x00004bd7 jam  0x00000018 , 0x0000007c 
+ 00019751  0x00004bd8 branch  0x00004d04 
+ 00019752  0x00004bdb call  0x00006899 
+ 00019753  0x00004bdc rtn  0x00000001 
+ 00019754  0x00004bdd arg  0x00000007 , 0x00000002 
+ 00019755  0x00004bde call  0x0000681d 
+ 00019756  0x00004bdf nbranch  0x00004d2f , 0x00000001 
+ 00019757  0x00004be0 jam  0x00000001 , 0x00004245 
+ 00019758  0x00004be1 rtn 
+ 00019759  0x00004be3 fetch  0x00000001 , 0x00004245 
+ 00019760  0x00004be4 rtnne  0x00000001 
+ 00019761  0x00004be5 call  0x00004c62 
+ 00019762  0x00004be6 branch  0x00004cec 
+ 00019763  0x00004bf5 bpatchx  0x00000005 , 0x00004020 
+ 00019764  0x00004bf6 fetch  0x00000002 , 0x00000264 
+ 00019765  0x00004bf7 copy  0x0000003f , 0x00000006 
+ 00019766  0x00004bf8 ifetch  0x00000001 , 0x00000006 
+ 00019767  0x00004bf9 and  0x0000003f , 0x0000000f , 0x00000002 
+ 00019768  0x00004bfa rshift4  0x0000003f , 0x0000003f 
+ 00019769  0x00004bfb beq  0x00000009 , 0x00004d53 
+ 00019770  0x00004bfc beq  0x00000007 , 0x00004d53 
+ 00019771  0x00004bfd beq  0x0000000a , 0x00004d5f 
+ 00019772  0x00004bfe beq  0x00000005 , 0x00004d4b 
+ 00019773  0x00004bff beq  0x00000001 , 0x00004d3f 
+ 00019774  0x00004c00 rtn 
+ 00019775  0x00004c03 copy  0x00000002 , 0x0000003f 
+ 00019776  0x00004c04 beq  0x00000005 , 0x00004d43 
+ 00019777  0x00004c05 beq  0x00000003 , 0x00004d4a 
+ 00019778  0x00004c06 rtn 
+ 00019779  0x00004c09 jam  0x00000027 , 0x00000a99 
+ 00019780  0x00004c0a call  0x00007d86 
+ 00019781  0x00004c0b fetch  0x00000001 , 0x00004092 
+ 00019782  0x00004c0c rtnbit0  0x00000006 
+ 00019783  0x00004c0d copy  0x00000002 , 0x0000003f 
+ 00019784  0x00004c0e beq  0x00000005 , 0x0000438e 
+ 00019785  0x00004c0f rtn 
+ 00019786  0x00004c11 rtn 
+ 00019787  0x00004c14 call  0x00004d5f 
+ 00019788  0x00004c15 arg  0x00000001 , 0x00000011 
+ 00019789  0x00004c16 call  0x00004d63 
+ 00019790  0x00004c17 fetch  0x00000002 , 0x0000424c 
+ 00019791  0x00004c18 istore  0x00000002 , 0x00000005 
+ 00019792  0x00004c19 setarg  0x00000000 
+ 00019793  0x00004c1a istore  0x00000001 , 0x00000005 
+ 00019794  0x00004c1b rtn 
+ 00019795  0x00004c1e arg  0x00000001 , 0x00000011 
+ 00019796  0x00004c1f call  0x00004d63 
+ 00019797  0x00004c20 fetch  0x00000002 , 0x0000424c 
+ 00019798  0x00004c21 istore  0x00000002 , 0x00000005 
+ 00019799  0x00004c22 setarg  0x00000000 
+ 00019800  0x00004c23 istore  0x00000001 , 0x00000005 
+ 00019801  0x00004c24 jam  0x00000001 , 0x00000a8e 
+ 00019802  0x00004c25 fetch  0x00000001 , 0x00004252 
+ 00019803  0x00004c26 set1  0x00000006 
+ 00019804  0x00004c27 store  0x00000001 , 0x00004252 
+ 00019805  0x00004c28 jam  0x00000012 , 0x00000a99 
+ 00019806  0x00004c29 branch  0x00007d86 
+ 00019807  0x00004c2c ifetch  0x00000001 , 0x00000006 
+ 00019808  0x00004c2d beq  0x00000001 , 0x00004d62 
+ 00019809  0x00004c2e rtn 
+ 00019810  0x00004c31 rtn 
+ 00019811  0x00004c35 call  0x00005240 
+ 00019812  0x00004c36 copy  0x00000011 , 0x00000002 
+ 00019813  0x00004c37 storet  0x00000001 , 0x00000a8e 
+ 00019814  0x00004c38 copy  0x0000003f , 0x00000005 
+ 00019815  0x00004c39 copy  0x00000011 , 0x0000003f 
+ 00019816  0x00004c3a istore  0x00000002 , 0x00000005 
+ 00019817  0x00004c3b rtn 
+ 00019818  0x00004c4d branch  0x00004d6f , 0x0000002b 
+ 00019819  0x00004c4f setarg  0x00004365 
+ 00019820  0x00004c50 arg  0x00004246 , 0x00000005 
+ 00019821  0x00004c51 isub  0x00000005 , 0x00000039 
+ 00019822  0x00004c52 call  0x00007ed4 
+ 00019823  0x00004c54 bpatchx  0x00000006 , 0x00004020 
+ 00019824  0x00004c55 setarg  0x00000551 
+ 00019825  0x00004c56 arg  0x00000511 , 0x00000005 
+ 00019826  0x00004c57 isub  0x00000005 , 0x00000039 
+ 00019827  0x00004c58 call  0x00007ed4 
+ 00019828  0x00004c59 setarg  0x000002c9 
+ 00019829  0x00004c5a arg  0x0000025d , 0x00000005 
+ 00019830  0x00004c5b isub  0x00000005 , 0x00000039 
+ 00019831  0x00004c5c call  0x00007ed4 
+ 00019832  0x00004c5d branch  0x00005318 
+ 00019833  0x00004c60 bpatchx  0x00000007 , 0x00004020 
+ 00019834  0x00004c61 copy  0x00000006 , 0x00000002 
+ 00019835  0x00004c64 copy  0x00000002 , 0x00000006 
+ 00019836  0x00004c65 ifetch  0x00000002 , 0x00000006 
+ 00019837  0x00004c66 store  0x00000002 , 0x00000266 
+ 00019838  0x00004c67 ifetch  0x00000002 , 0x00000006 
+ 00019839  0x00004c68 store  0x00000002 , 0x00000268 
+ 00019840  0x00004c69 deposit  0x00000006 
+ 00019841  0x00004c6a store  0x00000002 , 0x00000264 
+ 00019842  0x00004c6b fetch  0x00000001 , 0x00004681 
+ 00019843  0x00004c6c beq  0x00000000 , 0x00004d85 
+ 00019844  0x00004c6d branch  0x000050ef 
+ 00019845  0x00004c70 fetch  0x00000002 , 0x00000266 
+ 00019846  0x00004c71 branch  0x00004dfc , 0x00000034 
+ 00019847  0x00004c72 bpatchx  0x00000008 , 0x00004021 
+ 00019848  0x00004c73 fetch  0x00000001 , 0x00000268 
+ 00019849  0x00004c74 beq  0x00000001 , 0x00004d9d 
+ 00019850  0x00004c76 beq  0x00000050 , 0x00004de0 
+ 00019851  0x00004c77 beq  0x00000051 , 0x00004df5 
+ 00019852  0x00004c78 beq  0x00000052 , 0x00004df3 
+ 00019853  0x00004c79 beq  0x00000053 , 0x00004df3 
+ 00019854  0x00004c7a branch  0x00004dfc 
+ 00019855  0x00004c7f bpatchx  0x00000009 , 0x00004021 
+ 00019856  0x00004c80 call  0x0000527e 
+ 00019857  0x00004c81 fetch  0x00000001 , 0x00004256 
+ 00019858  0x00004c82 beq  0x00000000 , 0x00004d9b 
+ 00019859  0x00004c83 beq  0x00000001 , 0x00004d9b 
+ 00019860  0x00004c84 beq  0x00000002 , 0x00004d9b 
+ 00019861  0x00004c85 beq  0x00000003 , 0x00004d9b 
+ 00019862  0x00004c86 beq  0x00000081 , 0x00004d9b 
+ 00019863  0x00004c87 beq  0x000000c0 , 0x00004d9b 
+ 00019864  0x00004c88 beq  0x00000080 , 0x00004d9b 
+ 00019865  0x00004c89 beq  0x00000040 , 0x00004d9b 
+ 00019866  0x00004c8a rtn 
+ 00019867  0x00004c8d setarg  0x00000000 
+ 00019868  0x00004c8e rtn 
+ 00019869  0x00004c92 call  0x00004d8f 
+ 00019870  0x00004c93 nrtn  0x00000034 
+ 00019871  0x00004c95 call  0x000052b8 
+ 00019872  0x00004c96 call  0x00004e01 
+ 00019873  0x00004c97 fetcht  0x00000002 , 0x0000026f 
+ 00019874  0x00004c98 branch  0x00004dfb , 0x00000034 
+ 00019875  0x00004c99 call  0x000052c1 
+ 00019876  0x00004c9a fetch  0x00000002 , 0x0000026f 
+ 00019877  0x00004c9b istore  0x00000002 , 0x00000005 
+ 00019878  0x00004c9c force  0x00000001 , 0x0000003f 
+ 00019879  0x00004c9d istore  0x00000002 , 0x00000005 
+ 00019880  0x00004c9e branch  0x00004dfc 
+ 00019881  0x00004ca1 fetch  0x00000001 , 0x00004364 
+ 00019882  0x00004ca2 rtn  0x00000034 
+ 00019883  0x00004ca3 copy  0x0000003f , 0x00000011 
+ 00019884  0x00004ca4 bpatchx  0x0000000a , 0x00004021 
+ 00019885  0x00004ca5 fetch  0x00000004 , 0x000002d5 
+ 00019886  0x00004ca6 arg  0x00000100 , 0x00000002 
+ 00019887  0x00004ca7 iadd  0x00000002 , 0x00000002 
+ 00019888  0x00004ca8 copy  0x00000022 , 0x0000003f 
+ 00019889  0x00004ca9 isub  0x00000002 , 0x0000003e 
+ 00019890  0x00004caa nrtn  0x00000002 
+ 00019891  0x00004cab jam  0x00000000 , 0x00004364 
+ 00019892  0x00004cac copy  0x00000011 , 0x0000003f 
+ 00019893  0x00004cad beq  0x00000050 , 0x00004db7 
+ 00019894  0x00004cae branch  0x00002a8c 
+ 00019895  0x00004cb0 arg  0x00000000 , 0x00000008 
+ 00019896  0x00004cb1 call  0x000052b8 
+ 00019897  0x00004cb2 call  0x00004e7a 
+ 00019898  0x00004cb3 call  0x000052c3 
+ 00019899  0x00004cb4 call  0x00007ea8 
+ 00019900  0x00004cb5 call  0x00004ead 
+ 00019901  0x00004cb6 call  0x000052c1 
+ 00019902  0x00004cb8 setarg  0x0000000c 
+ 00019903  0x00004cb9 istore  0x00000002 , 0x00000005 
+ 00019904  0x00004cba force  0x00000001 , 0x0000003f 
+ 00019905  0x00004cbb istore  0x00000002 , 0x00000005 
+ 00019906  0x00004cbc branch  0x00004dfc 
+ 00019907  0x00004cc1 bpatchx  0x0000000b , 0x00004021 
+ 00019908  0x00004cc2 fetch  0x00000002 , 0x00000275 
+ 00019909  0x00004cc3 increase  0x00000004 , 0x0000003f 
+ 00019910  0x00004cc4 rshift4  0x0000003f , 0x0000003f 
+ 00019911  0x00004cc5 rshift3  0x0000003f , 0x0000003f 
+ 00019912  0x00004cc6 add  0x0000003f , 0x00000001 , 0x00000002 
+ 00019913  0x00004cc7 arg  0x00004260 , 0x00000006 
+ 00019914  0x00004cc8 ifetch  0x00000003 , 0x00000006 
+ 00019915  0x00004cc9 rtn  0x00000034 
+ 00019916  0x00004cca store  0x00000003 , 0x00000ac2 
+ 00019917  0x00004ccb fetch  0x00000001 , 0x00000ac2 
+ 00019918  0x00004ccc copy  0x0000003f , 0x00000011 
+ 00019919  0x00004ccd call  0x00004dd3 
+ 00019920  0x00004cce copy  0x00000012 , 0x0000003f 
+ 00019921  0x00004ccf store  0x00000001 , 0x00004260 
+ 00019922  0x00004cd0 rtn 
+ 00019923  0x00004cd3 arg  0x00000000 , 0x00000007 
+ 00019924  0x00004cd4 arg  0x00000000 , 0x00000012 
+ 00019925  0x00004cd7 sub  0x00000007 , 0x00000007 , 0x0000003e 
+ 00019926  0x00004cd8 nrtn  0x00000002 
+ 00019927  0x00004cd9 qisolate1  0x00000011 
+ 00019928  0x00004cda branch  0x00004dda , 0x00000001 
+ 00019929  0x00004cdb branch  0x00004dde 
+ 00019930  0x00004cde copy  0x00000002 , 0x0000003f 
+ 00019931  0x00004cdf branch  0x00004dde , 0x00000034 
+ 00019932  0x00004ce0 qset1  0x00000012 
+ 00019933  0x00004ce1 increase  0xffffffff , 0x00000002 
+ 00019934  0x00004ce4 increase  0x00000001 , 0x00000007 
+ 00019935  0x00004ce5 branch  0x00004dd5 
+ 00019936  0x00004ce8 call  0x00005274 
+ 00019937  0x00004ce9 nrtn  0x00000034 
+ 00019938  0x00004cea call  0x00004d8f 
+ 00019939  0x00004ceb nrtn  0x00000034 
+ 00019940  0x00004cec call  0x000052c5 
+ 00019941  0x00004ced call  0x00006e11 
+ 00019942  0x00004cee call  0x00004dc3 
+ 00019943  0x00004cef branch  0x00004dec 
+ 00019944  0x00004cf3 call  0x00005274 
+ 00019945  0x00004cf4 nrtn  0x00000034 
+ 00019946  0x00004cf5 call  0x000052c5 
+ 00019947  0x00004cf6 call  0x00006e11 
+ 00019948  0x00004cf8 call  0x000052ce 
+ 00019949  0x00004cf9 fetch  0x00000002 , 0x00000275 
+ 00019950  0x00004cfa branch  0x00004dfb , 0x00000034 
+ 00019951  0x00004cfb istore  0x00000002 , 0x00000005 
+ 00019952  0x00004cfc fetch  0x00000002 , 0x00004248 
+ 00019953  0x00004cfd istore  0x00000002 , 0x00000005 
+ 00019954  0x00004cfe branch  0x00004dfc 
+ 00019955  0x00004d01 call  0x00004d33 
+ 00019956  0x00004d02 branch  0x00004dfc 
+ 00019957  0x00004d05 bpatchx  0x0000000c , 0x00004021 
+ 00019958  0x00004d06 jam  0x00000000 , 0x00000284 
+ 00019959  0x00004d07 call  0x00006a8a 
+ 00019960  0x00004d08 fetch  0x00000001 , 0x00000284 
+ 00019961  0x00004d09 rtneq  0x00000001 
+ 00019962  0x00004d0a branch  0x00004dfc 
+ 00019963  0x00004d0c call  0x00005264 
+ 00019964  0x00004d0f setarg  0x00000000 
+ 00019965  0x00004d10 store  0x00000002 , 0x00000266 
+ 00019966  0x00004d11 store  0x00000002 , 0x00000268 
+ 00019967  0x00004d12 jam  0x00000001 , 0x0000026a 
+ 00019968  0x00004d13 rtn 
+ 00019969  0x00004d16 bpatchx  0x0000000d , 0x00004021 
+ 00019970  0x00004d17 call  0x000052c3 
+ 00019971  0x00004d18 force  0x00000000 , 0x00000012 
+ 00019972  0x00004d19 fetch  0x00000002 , 0x00000266 
+ 00019973  0x00004d1a copy  0x0000003f , 0x00000013 
+ 00019974  0x00004d1b fetch  0x00000002 , 0x00000264 
+ 00019975  0x00004d1c iforce  0x00000006 
+ 00019976  0x00004d1e call  0x00004e10 
+ 00019977  0x00004d1f deposit  0x00000013 
+ 00019978  0x00004d20 increase  0xfffffffc , 0x00000013 
+ 00019979  0x00004d21 increase  0xfffffffc , 0x0000003f 
+ 00019980  0x00004d22 nbranch  0x00004e08 , 0x00000034 
+ 00019981  0x00004d23 copy  0x00000012 , 0x0000003f 
+ 00019982  0x00004d24 store  0x00000002 , 0x0000026f 
+ 00019983  0x00004d25 rtn 
+ 00019984  0x00004d28 bpatchx  0x0000000e , 0x00004021 
+ 00019985  0x00004d29 ifetch  0x00000001 , 0x00000006 
+ 00019986  0x00004d2a beq  0x00000001 , 0x00004e49 
+ 00019987  0x00004d2b beq  0x00000002 , 0x00004e51 
+ 00019988  0x00004d2c beq  0x00000003 , 0x00004ed5 
+ 00019989  0x00004d2d beq  0x00000004 , 0x00004f05 
+ 00019990  0x00004d2e beq  0x00000005 , 0x00004fa2 
+ 00019991  0x00004d2f beq  0x00000006 , 0x00004fcb 
+ 00019992  0x00004d30 beq  0x00000007 , 0x0000501b 
+ 00019993  0x00004d31 beq  0x00000008 , 0x00005050 
+ 00019994  0x00004d32 beq  0x00000009 , 0x00005060 
+ 00019995  0x00004d33 beq  0x0000000a , 0x00004e1f 
+ 00019996  0x00004d34 beq  0x0000000b , 0x00005061 
+ 00019997  0x00004d35 call  0x00005062 
+ 00019998  0x00004d37 rtn 
+ 00019999  0x00004d3a ifetch  0x00000001 , 0x00000006 
+ 00020000  0x00004d3b copy  0x0000003f , 0x00000007 
+ 00020001  0x00004d3c ifetch  0x00000002 , 0x00000006 
+ 00020002  0x00004d3d copy  0x0000003f , 0x00000011 
+ 00020003  0x00004d3e copy  0x00000013 , 0x0000003f 
+ 00020004  0x00004d3f isub  0x00000011 , 0x00000013 
+ 00020005  0x00004d40 setarg  0x0000000b 
+ 00020006  0x00004d41 istore  0x00000001 , 0x00000005 
+ 00020007  0x00004d42 copy  0x00000007 , 0x0000003f 
+ 00020008  0x00004d43 istore  0x00000001 , 0x00000005 
+ 00020009  0x00004d44 ifetch  0x00000002 , 0x00000006 
+ 00020010  0x00004d46 beq  0x00000002 , 0x00004e2d 
+ 00020011  0x00004d47 beq  0x00000003 , 0x00004e33 
+ 00020012  0x00004d48 rtn 
+ 00020013  0x00004d4a setarg  0x00020008 
+ 00020014  0x00004d4b istore  0x00000006 , 0x00000005 
+ 00020015  0x00004d4c setarg  0x00000280 
+ 00020016  0x00004d4d istore  0x00000004 , 0x00000005 
+ 00020017  0x00004d4e force  0x0000000c , 0x0000003f 
+ 00020018  0x00004d4f branch  0x00004e38 
+ 00020019  0x00004d51 setarg  0x0003000c 
+ 00020020  0x00004d52 istore  0x00000006 , 0x00000005 
+ 00020021  0x00004d53 setarg  0x00000006 
+ 00020022  0x00004d54 istore  0x00000008 , 0x00000005 
+ 00020023  0x00004d55 force  0x00000010 , 0x0000003f 
+ 00020024  0x00004d57 iadd  0x00000012 , 0x00000012 
+ 00020025  0x00004d58 branch  0x00004e1e 
+ 00020026  0x00004d5b ifetch  0x00000001 , 0x00000006 
+ 00020027  0x00004d5c copy  0x0000003f , 0x00000007 
+ 00020028  0x00004d5d ifetch  0x00000002 , 0x00000006 
+ 00020029  0x00004d5e copy  0x0000003f , 0x00000011 
+ 00020030  0x00004d5f ifetch  0x00000002 , 0x00000006 
+ 00020031  0x00004d60 store  0x00000002 , 0x00000aa2 
+ 00020032  0x00004d61 copy  0x00000013 , 0x0000003f 
+ 00020033  0x00004d62 isub  0x00000011 , 0x00000013 
+ 00020034  0x00004d63 call  0x000052c3 
+ 00020035  0x00004d64 setarg  0x0000000b 
+ 00020036  0x00004d65 istore  0x00000001 , 0x00000005 
+ 00020037  0x00004d66 copy  0x00000007 , 0x0000003f 
+ 00020038  0x00004d67 istore  0x00000001 , 0x00000005 
+ 00020039  0x00004d68 fetch  0x00000002 , 0x00000aa2 
+ 00020040  0x00004d69 branch  0x00004e2a 
+ 00020041  0x00004d6e ifetch  0x00000001 , 0x00000006 
+ 00020042  0x00004d6f copy  0x0000003f , 0x00000007 
+ 00020043  0x00004d70 ifetch  0x00000002 , 0x00000006 
+ 00020044  0x00004d71 copy  0x0000003f , 0x00000011 
+ 00020045  0x00004d72 iadd  0x00000006 , 0x00000006 
+ 00020046  0x00004d73 copy  0x00000013 , 0x0000003f 
+ 00020047  0x00004d74 isub  0x00000011 , 0x00000013 
+ 00020048  0x00004d76 branch  0x00004e1e 
+ 00020049  0x00004d79 call  0x00007ea8 
+ 00020050  0x00004d7c call  0x00007ead 
+ 00020051  0x00004d7d arg  0x00000000 , 0x00000008 
+ 00020052  0x00004d7e ifetch  0x00000001 , 0x00000006 
+ 00020053  0x00004d7f copy  0x0000003f , 0x00000007 
+ 00020054  0x00004d80 ifetch  0x00000002 , 0x00000006 
+ 00020055  0x00004d81 copy  0x0000003f , 0x00000011 
+ 00020056  0x00004d82 ifetch  0x00000002 , 0x00000006 
+ 00020057  0x00004d83 copy  0x0000003f , 0x00000002 
+ 00020058  0x00004d84 ifetch  0x00000002 , 0x00000006 
+ 00020059  0x00004d85 copy  0x0000003f , 0x0000000b 
+ 00020060  0x00004d86 bpatchx  0x0000000f , 0x00004021 
+ 00020061  0x00004d87 copy  0x00000002 , 0x0000003f 
+ 00020062  0x00004d88 beq  0x00000001 , 0x00004e64 
+ 00020063  0x00004d89 beq  0x00000003 , 0x00004e86 
+ 00020064  0x00004d8a beq  0x00000011 , 0x00004e92 
+ 00020065  0x00004d8b beq  0x00000013 , 0x00004e9d 
+ 00020066  0x00004d8c call  0x00005062 
+ 00020067  0x00004d8d branch  0x00004ed4 
+ 00020068  0x00004d90 call  0x00007ea8 
+ 00020069  0x00004d91 arg  0x00000050 , 0x00000002 
+ 00020070  0x00004d92 fetch  0x00000002 , 0x00004248 
+ 00020071  0x00004d93 nbranch  0x00004ece , 0x00000034 
+ 00020072  0x00004d94 copy  0x0000000b , 0x0000003f 
+ 00020073  0x00004d95 store  0x00000002 , 0x00004248 
+ 00020074  0x00004d96 copy  0x00000022 , 0x0000003f 
+ 00020075  0x00004d97 store  0x00000004 , 0x000002d5 
+ 00020076  0x00004d98 call  0x00004e6e 
+ 00020077  0x00004d99 branch  0x00004ea9 
+ 00020078  0x00004d9c storet  0x00000002 , 0x000002d3 
+ 00020079  0x00004d9d deposit  0x0000000b 
+ 00020080  0x00004d9e store  0x00000002 , 0x000002c9 
+ 00020081  0x00004d9f deposit  0x00000011 
+ 00020082  0x00004da0 store  0x00000002 , 0x000002cb 
+ 00020083  0x00004da1 deposit  0x00000012 
+ 00020084  0x00004da2 store  0x00000002 , 0x000002cd 
+ 00020085  0x00004da3 deposit  0x00000013 
+ 00020086  0x00004da4 store  0x00000002 , 0x000002cf 
+ 00020087  0x00004da5 deposit  0x00000007 
+ 00020088  0x00004da6 store  0x00000002 , 0x000002d1 
+ 00020089  0x00004da7 rtn 
+ 00020090  0x00004daa fetcht  0x00000002 , 0x000002d3 
+ 00020091  0x00004dab fetch  0x00000002 , 0x000002c9 
+ 00020092  0x00004dac copy  0x0000003f , 0x0000000b 
+ 00020093  0x00004dad fetch  0x00000002 , 0x000002cb 
+ 00020094  0x00004dae copy  0x0000003f , 0x00000011 
+ 00020095  0x00004daf fetch  0x00000002 , 0x000002cd 
+ 00020096  0x00004db0 copy  0x0000003f , 0x00000012 
+ 00020097  0x00004db1 fetch  0x00000002 , 0x000002cf 
+ 00020098  0x00004db2 copy  0x0000003f , 0x00000013 
+ 00020099  0x00004db3 fetch  0x00000002 , 0x000002d1 
+ 00020100  0x00004db4 copy  0x0000003f , 0x00000007 
+ 00020101  0x00004db5 rtn 
+ 00020102  0x00004db8 call  0x00007ea8 
+ 00020103  0x00004db9 setarg  0x00000051 
+ 00020104  0x00004dba arg  0x00000051 , 0x00000002 
+ 00020105  0x00004dbb fetch  0x00000002 , 0x0000424a 
+ 00020106  0x00004dbc nbranch  0x00004ece , 0x00000034 
+ 00020107  0x00004dbd copy  0x0000000b , 0x0000003f 
+ 00020108  0x00004dbe store  0x00000002 , 0x0000424a 
+ 00020109  0x00004dbf fetch  0x00000001 , 0x00004251 
+ 00020110  0x00004dc0 set1  0x00000000 , 0x0000003f 
+ 00020111  0x00004dc1 set1  0x00000001 , 0x0000003f 
+ 00020112  0x00004dc2 store  0x00000001 , 0x00004251 
+ 00020113  0x00004dc3 branch  0x00004eb1 
+ 00020114  0x00004dc5 call  0x00007ea8 
+ 00020115  0x00004dc6 arg  0x00000052 , 0x00000002 
+ 00020116  0x00004dc7 fetch  0x00000002 , 0x0000424c 
+ 00020117  0x00004dc8 nbranch  0x00004ece , 0x00000034 
+ 00020118  0x00004dc9 copy  0x0000000b , 0x0000003f 
+ 00020119  0x00004dca store  0x00000002 , 0x0000424c 
+ 00020120  0x00004dcb fetch  0x00000001 , 0x00004252 
+ 00020121  0x00004dcc set1  0x00000000 , 0x0000003f 
+ 00020122  0x00004dcd set1  0x00000001 , 0x0000003f 
+ 00020123  0x00004dce store  0x00000001 , 0x00004252 
+ 00020124  0x00004dcf branch  0x00004eb1 
+ 00020125  0x00004dd1 call  0x00007ea8 
+ 00020126  0x00004dd2 deposit  0x0000001a 
+ 00020127  0x00004dd3 arg  0x00000053 , 0x00000002 
+ 00020128  0x00004dd4 fetch  0x00000002 , 0x0000424e 
+ 00020129  0x00004dd5 nbranch  0x00004ece , 0x00000034 
+ 00020130  0x00004dd6 copy  0x0000000b , 0x0000003f 
+ 00020131  0x00004dd7 store  0x00000002 , 0x0000424e 
+ 00020132  0x00004dd8 fetch  0x00000001 , 0x00004253 
+ 00020133  0x00004dd9 set1  0x00000000 , 0x0000003f 
+ 00020134  0x00004dda set1  0x00000001 , 0x0000003f 
+ 00020135  0x00004ddb store  0x00000001 , 0x00004253 
+ 00020136  0x00004ddc branch  0x00004eb1 
+ 00020137  0x00004ddf setarg  0x00000001 
+ 00020138  0x00004de0 store  0x00000002 , 0x0000027d 
+ 00020139  0x00004de1 jam  0x00000050 , 0x00004364 
+ 00020140  0x00004de2 branch  0x00004eb3 
+ 00020141  0x00004de4 fetch  0x00000001 , 0x00004250 
+ 00020142  0x00004de5 set1  0x00000000 , 0x0000003f 
+ 00020143  0x00004de6 set1  0x00000001 , 0x0000003f 
+ 00020144  0x00004de7 store  0x00000001 , 0x00004250 
+ 00020145  0x00004de9 setarg  0x00000000 
+ 00020146  0x00004dea store  0x00000002 , 0x0000027d 
+ 00020147  0x00004dec bpatchx  0x00000010 , 0x00004022 
+ 00020148  0x00004ded call  0x00007ead 
+ 00020149  0x00004dee setarg  0x00000003 
+ 00020150  0x00004def istore  0x00000001 , 0x00000005 
+ 00020151  0x00004df0 copy  0x00000007 , 0x0000003f 
+ 00020152  0x00004df1 istore  0x00000001 , 0x00000005 
+ 00020153  0x00004df2 setarg  0x00000008 
+ 00020154  0x00004df3 istore  0x00000002 , 0x00000005 
+ 00020155  0x00004df4 copy  0x00000002 , 0x0000003f 
+ 00020156  0x00004df5 istore  0x00000002 , 0x00000005 
+ 00020157  0x00004df6 copy  0x0000000b , 0x0000003f 
+ 00020158  0x00004df7 istore  0x00000002 , 0x00000005 
+ 00020159  0x00004df8 fetch  0x00000002 , 0x0000027d 
+ 00020160  0x00004df9 beq  0x00000001 , 0x00004ec9 
+ 00020161  0x00004dfa isolate0  0x00000000 , 0x00000008 
+ 00020162  0x00004dfb branch  0x00004ec4 , 0x00000001 
+ 00020163  0x00004dfc setarg  0x00000004 
+ 00020164  0x00004dfe istore  0x00000002 , 0x00000005 
+ 00020165  0x00004dff force  0x00000000 , 0x0000003f 
+ 00020166  0x00004e00 istore  0x00000002 , 0x00000005 
+ 00020167  0x00004e01 setarg  0x0000000c 
+ 00020168  0x00004e02 branch  0x00004ed0 
+ 00020169  0x00004e04 istore  0x00000002 , 0x00000005 
+ 00020170  0x00004e05 force  0x00000002 , 0x0000003f 
+ 00020171  0x00004e06 istore  0x00000002 , 0x00000005 
+ 00020172  0x00004e07 setarg  0x0000000c 
+ 00020173  0x00004e08 branch  0x00004ed0 
+ 00020174  0x00004e0b set1  0x00000000 , 0x00000008 
+ 00020175  0x00004e0c branch  0x00004eb1 
+ 00020176  0x00004e0e iadd  0x00000012 , 0x00000012 
+ 00020177  0x00004e0f copy  0x00000013 , 0x0000003f 
+ 00020178  0x00004e10 isub  0x00000011 , 0x00000013 
+ 00020179  0x00004e11 branch  0x00004ed4 
+ 00020180  0x00004e13 branch  0x00004e1e 
+ 00020181  0x00004e16 ifetch  0x00000001 , 0x00000006 
+ 00020182  0x00004e17 copy  0x0000003f , 0x00000007 
+ 00020183  0x00004e18 ifetch  0x00000002 , 0x00000006 
+ 00020184  0x00004e19 copy  0x0000003f , 0x00000011 
+ 00020185  0x00004e1a copy  0x00000013 , 0x0000003f 
+ 00020186  0x00004e1b isub  0x00000011 , 0x00000013 
+ 00020187  0x00004e1c ifetch  0x00000002 , 0x00000006 
+ 00020188  0x00004e1d copy  0x0000003f , 0x0000000b 
+ 00020189  0x00004e1e ifetch  0x00000002 , 0x00000006 
+ 00020190  0x00004e1f copy  0x0000003f , 0x00000002 
+ 00020191  0x00004e20 bpatchx  0x00000011 , 0x00004022 
+ 00020192  0x00004e21 setarg  0x00000050 
+ 00020193  0x00004e22 isub  0x00000002 , 0x0000003e 
+ 00020194  0x00004e23 branch  0x00004eed , 0x00000005 
+ 00020195  0x00004e24 setarg  0x00000051 
+ 00020196  0x00004e25 isub  0x00000002 , 0x0000003e 
+ 00020197  0x00004e26 branch  0x00004ef3 , 0x00000005 
+ 00020198  0x00004e27 setarg  0x00000052 
+ 00020199  0x00004e28 isub  0x00000002 , 0x0000003e 
+ 00020200  0x00004e29 branch  0x00004eff , 0x00000005 
+ 00020201  0x00004e2a setarg  0x00000053 
+ 00020202  0x00004e2b isub  0x00000002 , 0x0000003e 
+ 00020203  0x00004e2c branch  0x00004ef9 , 0x00000005 
+ 00020204  0x00004e2d rtn 
+ 00020205  0x00004e30 copy  0x0000000b , 0x0000003f 
+ 00020206  0x00004e31 store  0x00000002 , 0x00004248 
+ 00020207  0x00004e32 fetch  0x00000001 , 0x00004250 
+ 00020208  0x00004e33 set1  0x00000001 , 0x0000003f 
+ 00020209  0x00004e34 store  0x00000001 , 0x00004250 
+ 00020210  0x00004e35 branch  0x00004e1e 
+ 00020211  0x00004e37 copy  0x0000000b , 0x0000003f 
+ 00020212  0x00004e38 store  0x00000002 , 0x0000424a 
+ 00020213  0x00004e39 fetch  0x00000001 , 0x00004251 
+ 00020214  0x00004e3a set1  0x00000001 , 0x0000003f 
+ 00020215  0x00004e3b store  0x00000001 , 0x00004251 
+ 00020216  0x00004e3c rtn 
+ 00020217  0x00004e3e copy  0x0000000b , 0x0000003f 
+ 00020218  0x00004e3f store  0x00000002 , 0x0000424c 
+ 00020219  0x00004e40 fetch  0x00000001 , 0x00004253 
+ 00020220  0x00004e41 set1  0x00000001 , 0x0000003f 
+ 00020221  0x00004e42 store  0x00000001 , 0x00004253 
+ 00020222  0x00004e43 rtn 
+ 00020223  0x00004e45 copy  0x0000000b , 0x0000003f 
+ 00020224  0x00004e46 store  0x00000002 , 0x0000424e 
+ 00020225  0x00004e47 fetch  0x00000001 , 0x00004252 
+ 00020226  0x00004e48 set1  0x00000001 , 0x0000003f 
+ 00020227  0x00004e49 store  0x00000001 , 0x00004252 
+ 00020228  0x00004e4a rtn 
+ 00020229  0x00004e4d ifetch  0x00000001 , 0x00000006 
+ 00020230  0x00004e4e copy  0x0000003f , 0x00000007 
+ 00020231  0x00004e4f ifetch  0x00000002 , 0x00000006 
+ 00020232  0x00004e50 copy  0x0000003f , 0x00000011 
+ 00020233  0x00004e51 copy  0x00000013 , 0x0000003f 
+ 00020234  0x00004e52 isub  0x00000011 , 0x00000013 
+ 00020235  0x00004e53 ifetch  0x00000002 , 0x00000006 
+ 00020236  0x00004e54 copy  0x0000003f , 0x00000002 
+ 00020237  0x00004e55 copy  0x00000002 , 0x00000011 
+ 00020238  0x00004e56 bpatchx  0x00000012 , 0x00004022 
+ 00020239  0x00004e57 setarg  0x00000050 
+ 00020240  0x00004e58 isub  0x00000002 , 0x0000003e 
+ 00020241  0x00004e59 branch  0x00004f1c , 0x00000005 
+ 00020242  0x00004e5a setarg  0x00000051 
+ 00020243  0x00004e5b isub  0x00000002 , 0x0000003e 
+ 00020244  0x00004e5c branch  0x00004f3a , 0x00000005 
+ 00020245  0x00004e5d setarg  0x00000052 
+ 00020246  0x00004e5e isub  0x00000002 , 0x0000003e 
+ 00020247  0x00004e5f branch  0x00004f26 , 0x00000005 
+ 00020248  0x00004e60 setarg  0x00000053 
+ 00020249  0x00004e61 isub  0x00000002 , 0x0000003e 
+ 00020250  0x00004e62 branch  0x00004f30 , 0x00000005 
+ 00020251  0x00004e63 branch  0x00005062 
+ 00020252  0x00004e66 copy  0x00000005 , 0x0000000b 
+ 00020253  0x00004e67 fetch  0x00000001 , 0x00004250 
+ 00020254  0x00004e68 set1  0x00000004 , 0x0000003f 
+ 00020255  0x00004e69 set1  0x00000003 , 0x0000003f 
+ 00020256  0x00004e6b store  0x00000001 , 0x00004250 
+ 00020257  0x00004e6c copy  0x0000000b , 0x00000005 
+ 00020258  0x00004e6d arg  0x00000050 , 0x0000000b 
+ 00020259  0x00004e6e fetch  0x00000002 , 0x00004248 
+ 00020260  0x00004e6f copy  0x0000003f , 0x00000002 
+ 00020261  0x00004e70 branch  0x00004f43 
+ 00020262  0x00004e72 copy  0x00000005 , 0x0000000b 
+ 00020263  0x00004e73 fetch  0x00000001 , 0x00004252 
+ 00020264  0x00004e74 set1  0x00000004 , 0x0000003f 
+ 00020265  0x00004e75 set1  0x00000003 , 0x0000003f 
+ 00020266  0x00004e77 store  0x00000001 , 0x00004252 
+ 00020267  0x00004e78 copy  0x0000000b , 0x00000005 
+ 00020268  0x00004e79 arg  0x00000052 , 0x0000000b 
+ 00020269  0x00004e7a fetch  0x00000002 , 0x0000424c 
+ 00020270  0x00004e7b copy  0x0000003f , 0x00000002 
+ 00020271  0x00004e7c branch  0x00004f43 
+ 00020272  0x00004e7e copy  0x00000005 , 0x0000000b 
+ 00020273  0x00004e7f fetch  0x00000001 , 0x00004253 
+ 00020274  0x00004e80 set1  0x00000004 , 0x0000003f 
+ 00020275  0x00004e81 set1  0x00000003 , 0x0000003f 
+ 00020276  0x00004e83 store  0x00000001 , 0x00004253 
+ 00020277  0x00004e84 copy  0x0000000b , 0x00000005 
+ 00020278  0x00004e85 arg  0x00000053 , 0x0000000b 
+ 00020279  0x00004e86 fetch  0x00000002 , 0x0000424e 
+ 00020280  0x00004e87 copy  0x0000003f , 0x00000002 
+ 00020281  0x00004e88 branch  0x00004f43 
+ 00020282  0x00004e8a copy  0x00000005 , 0x0000000b 
+ 00020283  0x00004e8b fetch  0x00000001 , 0x00004251 
+ 00020284  0x00004e8c set1  0x00000004 , 0x0000003f 
+ 00020285  0x00004e8d set1  0x00000003 , 0x0000003f 
+ 00020286  0x00004e8f store  0x00000001 , 0x00004251 
+ 00020287  0x00004e91 copy  0x0000000b , 0x00000005 
+ 00020288  0x00004e92 arg  0x00000051 , 0x0000000b 
+ 00020289  0x00004e93 fetch  0x00000002 , 0x0000424a 
+ 00020290  0x00004e94 copy  0x0000003f , 0x00000002 
+ 00020291  0x00004e96 bpatchx  0x00000013 , 0x00004022 
+ 00020292  0x00004e97 setarg  0x00000005 
+ 00020293  0x00004e98 istore  0x00000001 , 0x00000005 
+ 00020294  0x00004e99 copy  0x00000007 , 0x0000003f 
+ 00020295  0x00004e9a istore  0x00000001 , 0x00000005 
+ 00020296  0x00004e9b setarg  0x00000006 
+ 00020297  0x00004e9c istore  0x00000002 , 0x00000005 
+ 00020298  0x00004e9d copy  0x00000002 , 0x0000003f 
+ 00020299  0x00004e9e istore  0x00000002 , 0x00000005 
+ 00020300  0x00004e9f force  0x00000000 , 0x0000003f 
+ 00020301  0x00004ea0 istore  0x00000002 , 0x00000005 
+ 00020302  0x00004ea1 force  0x00000000 , 0x0000003f 
+ 00020303  0x00004ea2 istore  0x00000002 , 0x00000005 
+ 00020304  0x00004ea3 force  0x0000000a , 0x0000003f 
+ 00020305  0x00004ea4 iadd  0x00000012 , 0x00000012 
+ 00020306  0x00004ea6 storet  0x00000002 , 0x00000282 
+ 00020307  0x00004ea7 copy  0x00000007 , 0x0000003f 
+ 00020308  0x00004ea8 store  0x00000001 , 0x00000281 
+ 00020309  0x00004ea9 force  0x00000050 , 0x0000003f 
+ 00020310  0x00004eaa icompare  0x000000ff , 0x0000000b 
+ 00020311  0x00004eab branch  0x00004f59 , 0x00000001 
+ 00020312  0x00004eac increase  0x00000001 , 0x0000003f 
+ 00020313  0x00004eaf rtn 
+ 00020314  0x00004eb1 disable  0x00000028 
+ 00020315  0x00004eb2 rtnbit1  0x00000002 , 0x0000003f 
+ 00020316  0x00004eb3 rtnbit0  0x00000000 , 0x0000003f 
+ 00020317  0x00004eb4 rtnbit0  0x00000001 , 0x0000003f 
+ 00020318  0x00004eb5 set1  0x00000002 , 0x0000003f 
+ 00020319  0x00004eb6 copy  0x00000006 , 0x00000005 
+ 00020320  0x00004eb7 increase  0xffffffff , 0x00000005 
+ 00020321  0x00004eb8 istore  0x00000001 , 0x00000005 
+ 00020322  0x00004eb9 enable  0x00000028 
+ 00020323  0x00004eba rtn 
+ 00020324  0x00004ebd fetch  0x00000001 , 0x00004250 
+ 00020325  0x00004ebe call  0x00004f5a 
+ 00020326  0x00004ebf nbranch  0x00004f6b , 0x00000028 
+ 00020327  0x00004ec0 jam  0x00000050 , 0x00000280 
+ 00020328  0x00004ec1 fetch  0x00000002 , 0x00004248 
+ 00020329  0x00004ec2 store  0x00000002 , 0x00000282 
+ 00020330  0x00004ec3 branch  0x00004f7f 
+ 00020331  0x00004ec5 fetch  0x00000001 , 0x00004251 
+ 00020332  0x00004ec6 call  0x00004f5a 
+ 00020333  0x00004ec7 nbranch  0x00004f72 , 0x00000028 
+ 00020334  0x00004ec8 jam  0x00000051 , 0x00000280 
+ 00020335  0x00004ec9 fetch  0x00000002 , 0x0000424a 
+ 00020336  0x00004eca store  0x00000002 , 0x00000282 
+ 00020337  0x00004ecb branch  0x00004f7f 
+ 00020338  0x00004ecd fetch  0x00000001 , 0x00004252 
+ 00020339  0x00004ece call  0x00004f5a 
+ 00020340  0x00004ecf nbranch  0x00004f79 , 0x00000028 
+ 00020341  0x00004ed0 jam  0x00000052 , 0x00000280 
+ 00020342  0x00004ed1 fetch  0x00000002 , 0x0000424c 
+ 00020343  0x00004ed2 store  0x00000002 , 0x00000282 
+ 00020344  0x00004ed3 branch  0x00004f7f 
+ 00020345  0x00004ed5 fetch  0x00000001 , 0x00004253 
+ 00020346  0x00004ed6 call  0x00004f5a 
+ 00020347  0x00004ed7 nrtn  0x00000028 
+ 00020348  0x00004ed8 jam  0x00000053 , 0x00000280 
+ 00020349  0x00004ed9 fetch  0x00000002 , 0x0000424e 
+ 00020350  0x00004eda store  0x00000002 , 0x00000282 
+ 00020351  0x00004ede bpatchx  0x00000014 , 0x00004022 
+ 00020352  0x00004edf call  0x0000523a 
+ 00020353  0x00004ee0 call  0x000052b8 
+ 00020354  0x00004ee1 force  0x00000000 , 0x00000012 
+ 00020355  0x00004ee2 call  0x000052c3 
+ 00020356  0x00004ee3 force  0x00000004 , 0x0000003f 
+ 00020357  0x00004ee4 istore  0x00000001 , 0x00000005 
+ 00020358  0x00004ee5 fetch  0x00000001 , 0x00004255 
+ 00020359  0x00004ee6 istore  0x00000001 , 0x00000005 
+ 00020360  0x00004ee7 setarg  0x00000008 
+ 00020361  0x00004ee8 istore  0x00000002 , 0x00000005 
+ 00020362  0x00004ee9 fetch  0x00000002 , 0x00000282 
+ 00020363  0x00004eea istore  0x00000002 , 0x00000005 
+ 00020364  0x00004eeb setarg  0x00000000 
+ 00020365  0x00004eec istore  0x00000002 , 0x00000005 
+ 00020366  0x00004eed force  0x00000001 , 0x0000003f 
+ 00020367  0x00004eee istore  0x00000001 , 0x00000005 
+ 00020368  0x00004eef force  0x00000002 , 0x0000003f 
+ 00020369  0x00004ef0 istore  0x00000001 , 0x00000005 
+ 00020370  0x00004ef1 fetch  0x00000001 , 0x00000280 
+ 00020371  0x00004ef2 beq  0x00000051 , 0x00004f97 
+ 00020372  0x00004ef3 setarg  0x00000030 
+ 00020373  0x00004ef4 istore  0x00000002 , 0x00000005 
+ 00020374  0x00004ef5 branch  0x00004f99 
+ 00020375  0x00004ef7 setarg  0x000003e3 
+ 00020376  0x00004ef8 istore  0x00000002 , 0x00000005 
+ 00020377  0x00004efa arg  0x0000000c , 0x00000002 
+ 00020378  0x00004efb storet  0x00000002 , 0x0000026f 
+ 00020379  0x00004efc call  0x000052c1 
+ 00020380  0x00004efd fetch  0x00000002 , 0x0000026f 
+ 00020381  0x00004efe istore  0x00000002 , 0x00000005 
+ 00020382  0x00004eff force  0x00000001 , 0x0000003f 
+ 00020383  0x00004f00 istore  0x00000002 , 0x00000005 
+ 00020384  0x00004f01 jam  0x00000000 , 0x00000280 
+ 00020385  0x00004f03 branch  0x00004e1e 
+ 00020386  0x00004f06 increase  0x00000001 , 0x00000006 
+ 00020387  0x00004f07 ifetch  0x00000002 , 0x00000006 
+ 00020388  0x00004f08 copy  0x0000003f , 0x00000011 
+ 00020389  0x00004f09 copy  0x00000013 , 0x0000003f 
+ 00020390  0x00004f0a isub  0x00000011 , 0x00000013 
+ 00020391  0x00004f0b ifetch  0x00000002 , 0x00000006 
+ 00020392  0x00004f0c copy  0x0000003f , 0x00000011 
+ 00020393  0x00004f0d bpatchx  0x00000015 , 0x00004022 
+ 00020394  0x00004f0e setarg  0x00000050 
+ 00020395  0x00004f0f isub  0x00000011 , 0x0000003e 
+ 00020396  0x00004f10 branch  0x00004fba , 0x00000005 
+ 00020397  0x00004f11 setarg  0x00000051 
+ 00020398  0x00004f12 isub  0x00000011 , 0x0000003e 
+ 00020399  0x00004f13 branch  0x00004fbe , 0x00000005 
+ 00020400  0x00004f14 setarg  0x00000052 
+ 00020401  0x00004f15 isub  0x00000011 , 0x0000003e 
+ 00020402  0x00004f16 branch  0x00004fc2 , 0x00000005 
+ 00020403  0x00004f17 setarg  0x00000053 
+ 00020404  0x00004f18 isub  0x00000011 , 0x0000003e 
+ 00020405  0x00004f19 branch  0x00004fc6 , 0x00000005 
+ 00020406  0x00004f1a increase  0x00000002 , 0x00000006 
+ 00020407  0x00004f1b ifetch  0x00000002 , 0x00000006 
+ 00020408  0x00004f1c iforce  0x0000003e 
+ 00020409  0x00004f1d branch  0x00004e1e 
+ 00020410  0x00004f1f fetch  0x00000001 , 0x00004250 
+ 00020411  0x00004f20 set1  0x00000005 , 0x0000003f 
+ 00020412  0x00004f21 store  0x00000001 , 0x00004250 
+ 00020413  0x00004f22 branch  0x00004e1e 
+ 00020414  0x00004f24 fetch  0x00000001 , 0x00004251 
+ 00020415  0x00004f25 set1  0x00000005 , 0x0000003f 
+ 00020416  0x00004f26 store  0x00000001 , 0x00004251 
+ 00020417  0x00004f27 branch  0x00004e1e 
+ 00020418  0x00004f29 fetch  0x00000001 , 0x00004252 
+ 00020419  0x00004f2a set1  0x00000005 , 0x0000003f 
+ 00020420  0x00004f2b store  0x00000001 , 0x00004252 
+ 00020421  0x00004f2c branch  0x00004e1e 
+ 00020422  0x00004f2e fetch  0x00000001 , 0x00004253 
+ 00020423  0x00004f2f set1  0x00000005 , 0x0000003f 
+ 00020424  0x00004f30 store  0x00000001 , 0x00004253 
+ 00020425  0x00004f31 jam  0x00000006 , 0x00000a99 
+ 00020426  0x00004f32 branch  0x00007d86 
+ 00020427  0x00004f37 ifetch  0x00000001 , 0x00000006 
+ 00020428  0x00004f38 copy  0x0000003f , 0x00000007 
+ 00020429  0x00004f39 ifetch  0x00000002 , 0x00000006 
+ 00020430  0x00004f3a copy  0x0000003f , 0x00000011 
+ 00020431  0x00004f3b copy  0x00000013 , 0x0000003f 
+ 00020432  0x00004f3c isub  0x00000011 , 0x00000013 
+ 00020433  0x00004f3d ifetch  0x00000002 , 0x00000006 
+ 00020434  0x00004f3e copy  0x0000003f , 0x00000011 
+ 00020435  0x00004f3f ifetch  0x00000002 , 0x00000006 
+ 00020436  0x00004f40 copy  0x0000003f , 0x0000000b 
+ 00020437  0x00004f41 copy  0x00000011 , 0x00000002 
+ 00020438  0x00004f42 call  0x00007ea8 
+ 00020439  0x00004f43 bpatchx  0x00000016 , 0x00004022 
+ 00020440  0x00004f44 setarg  0x00000050 
+ 00020441  0x00004f45 isub  0x00000002 , 0x0000003e 
+ 00020442  0x00004f46 branch  0x00004ff2 , 0x00000005 
+ 00020443  0x00004f47 setarg  0x00000051 
+ 00020444  0x00004f48 isub  0x00000002 , 0x0000003e 
+ 00020445  0x00004f49 branch  0x00005002 , 0x00000005 
+ 00020446  0x00004f4a setarg  0x00000052 
+ 00020447  0x00004f4b isub  0x00000002 , 0x0000003e 
+ 00020448  0x00004f4c branch  0x00004fe6 , 0x00000005 
+ 00020449  0x00004f4d setarg  0x00000053 
+ 00020450  0x00004f4e isub  0x00000002 , 0x0000003e 
+ 00020451  0x00004f4f branch  0x00004fec , 0x00000005 
+ 00020452  0x00004f50 call  0x00005062 
+ 00020453  0x00004f51 branch  0x00005017 
+ 00020454  0x00004f53 copy  0x0000000b , 0x00000002 
+ 00020455  0x00004f54 fetch  0x00000002 , 0x0000424c 
+ 00020456  0x00004f55 isub  0x00000002 , 0x0000003e 
+ 00020457  0x00004f56 branch  0x00004ff8 , 0x00000005 
+ 00020458  0x00004f57 call  0x00005062 
+ 00020459  0x00004f58 branch  0x00005017 
+ 00020460  0x00004f5a copy  0x0000000b , 0x00000002 
+ 00020461  0x00004f5b fetch  0x00000002 , 0x0000424e 
+ 00020462  0x00004f5c isub  0x00000002 , 0x0000003e 
+ 00020463  0x00004f5d branch  0x00004ffa , 0x00000005 
+ 00020464  0x00004f5e call  0x00005062 
+ 00020465  0x00004f5f branch  0x00005017 
+ 00020466  0x00004f62 copy  0x0000000b , 0x00000002 
+ 00020467  0x00004f63 fetch  0x00000002 , 0x00004248 
+ 00020468  0x00004f64 isub  0x00000002 , 0x0000003e 
+ 00020469  0x00004f65 branch  0x00004ffe , 0x00000005 
+ 00020470  0x00004f66 call  0x00005062 
+ 00020471  0x00004f67 branch  0x00005017 
+ 00020472  0x00004f69 call  0x00005079 
+ 00020473  0x00004f6a branch  0x0000500a 
+ 00020474  0x00004f6c call  0x0000507f 
+ 00020475  0x00004f6d fetch  0x00000002 , 0x0000424c 
+ 00020476  0x00004f6e branch  0x0000500a , 0x00000034 
+ 00020477  0x00004f76 branch  0x0000500a 
+ 00020478  0x00004f79 call  0x00005074 
+ 00020479  0x00004f7a fetch  0x00000001 , 0x00000288 
+ 00020480  0x00004f7b nbranch  0x0000500a , 0x00000034 
+ 00020481  0x00004f7e branch  0x0000500a 
+ 00020482  0x00004f80 copy  0x0000000b , 0x00000002 
+ 00020483  0x00004f81 fetch  0x00000002 , 0x0000424a 
+ 00020484  0x00004f82 isub  0x00000002 , 0x0000003e 
+ 00020485  0x00004f83 branch  0x00005008 , 0x00000005 
+ 00020486  0x00004f84 call  0x00005062 
+ 00020487  0x00004f85 branch  0x00005017 
+ 00020488  0x00004f87 call  0x0000506f 
+ 00020489  0x00004f88 branch  0x0000500a 
+ 00020490  0x00004f8a call  0x00007ead 
+ 00020491  0x00004f8b setarg  0x00000007 
+ 00020492  0x00004f8c istore  0x00000001 , 0x00000005 
+ 00020493  0x00004f8d copy  0x00000007 , 0x0000003f 
+ 00020494  0x00004f8e istore  0x00000001 , 0x00000005 
+ 00020495  0x00004f8f setarg  0x00000004 
+ 00020496  0x00004f90 istore  0x00000002 , 0x00000005 
+ 00020497  0x00004f91 copy  0x00000011 , 0x0000003f 
+ 00020498  0x00004f92 istore  0x00000002 , 0x00000005 
+ 00020499  0x00004f93 copy  0x0000000b , 0x0000003f 
+ 00020500  0x00004f94 istore  0x00000002 , 0x00000005 
+ 00020501  0x00004f95 force  0x00000008 , 0x0000003f 
+ 00020502  0x00004f96 branch  0x00005019 
+ 00020503  0x00004f98 call  0x00007ead 
+ 00020504  0x00004f99 branch  0x00005019 
+ 00020505  0x00004f9b iadd  0x00000012 , 0x00000012 
+ 00020506  0x00004f9c branch  0x00004e1e 
+ 00020507  0x00004f9e ifetch  0x00000001 , 0x00000006 
+ 00020508  0x00004f9f copy  0x0000003f , 0x00000007 
+ 00020509  0x00004fa0 ifetch  0x00000002 , 0x00000006 
+ 00020510  0x00004fa1 copy  0x0000003f , 0x00000011 
+ 00020511  0x00004fa2 copy  0x00000013 , 0x0000003f 
+ 00020512  0x00004fa3 isub  0x00000011 , 0x00000013 
+ 00020513  0x00004fa4 ifetch  0x00000002 , 0x00000006 
+ 00020514  0x00004fa5 copy  0x0000003f , 0x0000000b 
+ 00020515  0x00004fa6 ifetch  0x00000002 , 0x00000006 
+ 00020516  0x00004fa7 copy  0x0000003f , 0x00000002 
+ 00020517  0x00004fa8 call  0x00007ea8 
+ 00020518  0x00004fa9 bpatchx  0x00000017 , 0x00004022 
+ 00020519  0x00004faa setarg  0x00000050 
+ 00020520  0x00004fab isub  0x00000002 , 0x0000003e 
+ 00020521  0x00004fac branch  0x00005035 , 0x00000005 
+ 00020522  0x00004fad setarg  0x00000051 
+ 00020523  0x00004fae isub  0x00000002 , 0x0000003e 
+ 00020524  0x00004faf branch  0x0000503b , 0x00000005 
+ 00020525  0x00004fb0 setarg  0x00000052 
+ 00020526  0x00004fb1 isub  0x00000002 , 0x0000003e 
+ 00020527  0x00004fb2 branch  0x00005041 , 0x00000005 
+ 00020528  0x00004fb3 setarg  0x00000053 
+ 00020529  0x00004fb4 isub  0x00000002 , 0x0000003e 
+ 00020530  0x00004fb5 branch  0x00005047 , 0x00000005 
+ 00020531  0x00004fb6 call  0x00005062 
+ 00020532  0x00004fb7 branch  0x0000504f 
+ 00020533  0x00004fb9 copy  0x00000002 , 0x00000011 
+ 00020534  0x00004fba copy  0x0000000b , 0x00000002 
+ 00020535  0x00004fbb fetch  0x00000002 , 0x00004248 
+ 00020536  0x00004fbc isub  0x00000002 , 0x0000003e 
+ 00020537  0x00004fbd call  0x00005074 , 0x00000005 
+ 00020538  0x00004fbe branch  0x0000504d 
+ 00020539  0x00004fc0 copy  0x00000002 , 0x00000011 
+ 00020540  0x00004fc1 copy  0x0000000b , 0x00000002 
+ 00020541  0x00004fc2 fetch  0x00000002 , 0x0000424a 
+ 00020542  0x00004fc3 isub  0x00000002 , 0x0000003e 
+ 00020543  0x00004fc4 call  0x0000506f , 0x00000005 
+ 00020544  0x00004fc5 branch  0x0000504d 
+ 00020545  0x00004fc7 copy  0x00000002 , 0x00000011 
+ 00020546  0x00004fc8 copy  0x0000000b , 0x00000002 
+ 00020547  0x00004fc9 fetch  0x00000002 , 0x0000424c 
+ 00020548  0x00004fca isub  0x00000002 , 0x0000003e 
+ 00020549  0x00004fcb call  0x00005079 , 0x00000005 
+ 00020550  0x00004fcc branch  0x0000504d 
+ 00020551  0x00004fce copy  0x00000002 , 0x00000011 
+ 00020552  0x00004fcf copy  0x0000000b , 0x00000002 
+ 00020553  0x00004fd0 fetch  0x00000002 , 0x0000424e 
+ 00020554  0x00004fd1 isub  0x00000002 , 0x0000003e 
+ 00020555  0x00004fd2 call  0x0000507f , 0x00000005 
+ 00020556  0x00004fd3 branch  0x0000504d 
+ 00020557  0x00004fd5 call  0x00007ead 
+ 00020558  0x00004fd6 branch  0x00004e1e 
+ 00020559  0x00004fd8 branch  0x00004e1e 
+ 00020560  0x00004fdc ifetch  0x00000001 , 0x00000006 
+ 00020561  0x00004fdd copy  0x0000003f , 0x00000007 
+ 00020562  0x00004fde ifetch  0x00000002 , 0x00000006 
+ 00020563  0x00004fdf copy  0x0000003f , 0x00000011 
+ 00020564  0x00004fe0 iadd  0x00000006 , 0x00000006 
+ 00020565  0x00004fe1 setarg  0x00000009 
+ 00020566  0x00004fe2 istore  0x00000001 , 0x00000005 
+ 00020567  0x00004fe3 copy  0x00000007 , 0x0000003f 
+ 00020568  0x00004fe4 istore  0x00000001 , 0x00000005 
+ 00020569  0x00004fe5 force  0x00000000 , 0x0000003f 
+ 00020570  0x00004fe6 istore  0x00000002 , 0x00000005 
+ 00020571  0x00004fe7 force  0x00000004 , 0x0000003f 
+ 00020572  0x00004fe8 iadd  0x00000012 , 0x00000012 
+ 00020573  0x00004fe9 copy  0x00000013 , 0x0000003f 
+ 00020574  0x00004fea isub  0x00000011 , 0x00000013 
+ 00020575  0x00004feb branch  0x00004e1e 
+ 00020576  0x00004fed branch  0x00004e1e 
+ 00020577  0x00004ff0 branch  0x00004e1e 
+ 00020578  0x00004ff2 force  0x00000000 , 0x00000012 
+ 00020579  0x00004ff3 call  0x000052c3 
+ 00020580  0x00004ff4 setarg  0x00000001 
+ 00020581  0x00004ff5 istore  0x00000001 , 0x00000005 
+ 00020582  0x00004ff6 copy  0x00000007 , 0x0000003f 
+ 00020583  0x00004ff7 istore  0x00000001 , 0x00000005 
+ 00020584  0x00004ff8 setarg  0x00000002 
+ 00020585  0x00004ff9 istore  0x00000002 , 0x00000005 
+ 00020586  0x00004ffa setarg  0x00000000 
+ 00020587  0x00004ffb istore  0x00000002 , 0x00000005 
+ 00020588  0x00004ffc increase  0x00000006 , 0x00000012 
+ 00020589  0x00004ffd arg  0x00000004 , 0x00000013 
+ 00020590  0x00004ffe branch  0x00004e1e 
+ 00020591  0x00005003 setarg  0x00000000 
+ 00020592  0x00005004 store  0x00000002 , 0x0000027b 
+ 00020593  0x00005005 store  0x00000002 , 0x0000424a 
+ 00020594  0x00005006 jam  0x00000000 , 0x00004251 
+ 00020595  0x00005007 rtn 
+ 00020596  0x00005009 setarg  0x00000000 
+ 00020597  0x0000500a store  0x00000002 , 0x00000275 
+ 00020598  0x0000500b store  0x00000002 , 0x00004248 
+ 00020599  0x0000500c jam  0x00000000 , 0x00004250 
+ 00020600  0x0000500d rtn 
+ 00020601  0x0000500f setarg  0x00000000 
+ 00020602  0x00005010 store  0x00000002 , 0x0000424c 
+ 00020603  0x00005011 jam  0x00000000 , 0x00004252 
+ 00020604  0x00005012 fetch  0x00000001 , 0x00004253 
+ 00020605  0x00005013 beq  0x00000000 , 0x00005085 
+ 00020606  0x00005014 rtn 
+ 00020607  0x00005017 setarg  0x00000000 
+ 00020608  0x00005018 store  0x00000002 , 0x0000424e 
+ 00020609  0x00005019 jam  0x00000000 , 0x00004253 
+ 00020610  0x0000501a fetch  0x00000001 , 0x00004252 
+ 00020611  0x0000501b beq  0x00000000 , 0x00005085 
+ 00020612  0x0000501c rtn 
+ 00020613  0x0000501f jam  0x00000007 , 0x00000a99 
+ 00020614  0x00005020 branch  0x00007d86 
+ 00020615  0x00005023 fetch  0x00000001 , 0x0000027f 
+ 00020616  0x00005024 set0  0x00000000 , 0x0000003f 
+ 00020617  0x00005025 store  0x00000001 , 0x0000027f 
+ 00020618  0x00005026 fetch  0x00000002 , 0x0000424e 
+ 00020619  0x00005027 rtn  0x00000034 
+ 00020620  0x00005028 call  0x000052b8 
+ 00020621  0x00005029 fetch  0x00000002 , 0x0000424e 
+ 00020622  0x0000502a copy  0x0000003f , 0x00000011 
+ 00020623  0x0000502b force  0x00000053 , 0x00000012 
+ 00020624  0x0000502c branch  0x0000509a 
+ 00020625  0x0000502e fetch  0x00000001 , 0x0000027f 
+ 00020626  0x0000502f set0  0x00000007 , 0x0000003f 
+ 00020627  0x00005030 store  0x00000001 , 0x0000027f 
+ 00020628  0x00005031 fetch  0x00000002 , 0x0000424c 
+ 00020629  0x00005032 rtn  0x00000034 
+ 00020630  0x00005033 call  0x000052b8 
+ 00020631  0x00005034 fetch  0x00000002 , 0x0000424c 
+ 00020632  0x00005035 copy  0x0000003f , 0x00000011 
+ 00020633  0x00005036 force  0x00000052 , 0x00000012 
+ 00020634  0x00005038 call  0x0000523a 
+ 00020635  0x00005039 call  0x000052c3 
+ 00020636  0x0000503a force  0x00000006 , 0x0000003f 
+ 00020637  0x0000503b istore  0x00000001 , 0x00000005 
+ 00020638  0x0000503c fetch  0x00000001 , 0x00004255 
+ 00020639  0x0000503d istore  0x00000001 , 0x00000005 
+ 00020640  0x0000503e setarg  0x00000004 
+ 00020641  0x0000503f istore  0x00000002 , 0x00000005 
+ 00020642  0x00005040 copy  0x00000011 , 0x0000003f 
+ 00020643  0x00005041 istore  0x00000002 , 0x00000005 
+ 00020644  0x00005042 copy  0x00000012 , 0x0000003f 
+ 00020645  0x00005043 istore  0x00000002 , 0x00000005 
+ 00020646  0x00005044 force  0x00000008 , 0x00000002 
+ 00020647  0x00005045 branch  0x000050de 
+ 00020648  0x00005048 bpatchx  0x00000018 , 0x00004023 
+ 00020649  0x00005049 call  0x0000523a 
+ 00020650  0x0000504a call  0x000052c3 
+ 00020651  0x0000504b setarg  0x00000002 
+ 00020652  0x0000504c istore  0x00000001 , 0x00000005 
+ 00020653  0x0000504d fetch  0x00000001 , 0x00004255 
+ 00020654  0x0000504e istore  0x00000001 , 0x00000005 
+ 00020655  0x0000504f setarg  0x00000004 
+ 00020656  0x00005050 istore  0x00000002 , 0x00000005 
+ 00020657  0x00005051 copy  0x00000002 , 0x0000003f 
+ 00020658  0x00005052 istore  0x00000002 , 0x00000005 
+ 00020659  0x00005053 copy  0x0000000b , 0x0000003f 
+ 00020660  0x00005054 istore  0x00000002 , 0x00000005 
+ 00020661  0x00005055 arg  0x00000008 , 0x00000002 
+ 00020662  0x00005056 branch  0x000050de 
+ 00020663  0x00005058 bpatchx  0x00000019 , 0x00004023 
+ 00020664  0x00005059 call  0x0000523a 
+ 00020665  0x0000505a call  0x000052c3 
+ 00020666  0x0000505b setarg  0x00000004 
+ 00020667  0x0000505c istore  0x00000001 , 0x00000005 
+ 00020668  0x0000505d fetch  0x00000001 , 0x00004255 
+ 00020669  0x0000505e istore  0x00000001 , 0x00000005 
+ 00020670  0x0000505f setarg  0x00000008 
+ 00020671  0x00005060 istore  0x00000002 , 0x00000005 
+ 00020672  0x00005062 copy  0x00000002 , 0x0000003f 
+ 00020673  0x00005064 istore  0x00000002 , 0x00000005 
+ 00020674  0x00005065 setarg  0x00000000 
+ 00020675  0x00005066 istore  0x00000002 , 0x00000005 
+ 00020676  0x00005067 setarg  0x00000001 
+ 00020677  0x00005068 istore  0x00000001 , 0x00000005 
+ 00020678  0x00005069 setarg  0x00000002 
+ 00020679  0x0000506a istore  0x00000001 , 0x00000005 
+ 00020680  0x0000506b setarg  0x000003e3 
+ 00020681  0x0000506c istore  0x00000002 , 0x00000005 
+ 00020682  0x0000506d arg  0x0000000c , 0x00000002 
+ 00020683  0x0000506e branch  0x000050de 
+ 00020684  0x00005070 bpatchx  0x0000001a , 0x00004023 
+ 00020685  0x00005071 call  0x0000523a 
+ 00020686  0x00005072 call  0x000052c3 
+ 00020687  0x00005073 setarg  0x00000006 
+ 00020688  0x00005074 istore  0x00000001 , 0x00000005 
+ 00020689  0x00005075 fetch  0x00000001 , 0x00004255 
+ 00020690  0x00005076 increase  0x00000001 , 0x0000003f 
+ 00020691  0x00005077 copy  0x00000005 , 0x00000011 
+ 00020692  0x00005078 store  0x00000001 , 0x00004255 
+ 00020693  0x00005079 copy  0x00000011 , 0x00000005 
+ 00020694  0x0000507a istore  0x00000001 , 0x00000005 
+ 00020695  0x0000507b setarg  0x00000004 
+ 00020696  0x0000507c istore  0x00000002 , 0x00000005 
+ 00020697  0x0000507d copy  0x00000002 , 0x0000003f 
+ 00020698  0x0000507e istore  0x00000002 , 0x00000005 
+ 00020699  0x0000507f copy  0x0000000b , 0x0000003f 
+ 00020700  0x00005080 istore  0x00000002 , 0x00000005 
+ 00020701  0x00005081 arg  0x00000008 , 0x00000002 
+ 00020702  0x00005085 storet  0x00000002 , 0x0000026f 
+ 00020703  0x00005086 copy  0x00000002 , 0x0000003f 
+ 00020704  0x00005087 branch  0x00005264 , 0x00000034 
+ 00020705  0x00005088 call  0x000052c1 
+ 00020706  0x00005089 fetch  0x00000002 , 0x0000026f 
+ 00020707  0x0000508a istore  0x00000002 , 0x00000005 
+ 00020708  0x0000508b force  0x00000001 , 0x0000003f 
+ 00020709  0x0000508c istore  0x00000002 , 0x00000005 
+ 00020710  0x0000508d rtn 
+ 00020711  0x00005090 fetch  0x00000002 , 0x00000275 
+ 00020712  0x00005091 branch  0x00002a8c , 0x00000034 
+ 00020713  0x00005092 call  0x000052ce 
+ 00020714  0x00005093 fetch  0x00000002 , 0x00000275 
+ 00020715  0x00005094 istore  0x00000002 , 0x00000005 
+ 00020716  0x00005095 fetch  0x00000002 , 0x00004248 
+ 00020717  0x00005096 istore  0x00000002 , 0x00000005 
+ 00020718  0x00005097 rtn 
+ 00020719  0x00005099 fetch  0x00000002 , 0x00000266 
+ 00020720  0x0000509a branch  0x00004dfc , 0x00000034 
+ 00020721  0x0000509b bpatchx  0x0000001b , 0x00004023 
+ 00020722  0x0000509c fetch  0x00000001 , 0x00000268 
+ 00020723  0x0000509d beq  0x00000001 , 0x000050f9 
+ 00020724  0x0000509e beq  0x00000050 , 0x00004de8 
+ 00020725  0x0000509f beq  0x00000051 , 0x00004df5 
+ 00020726  0x000050a0 beq  0x00000052 , 0x00004df3 
+ 00020727  0x000050a1 beq  0x00000053 , 0x00004df3 
+ 00020728  0x000050a2 branch  0x00004dfc 
+ 00020729  0x000050a5 bpatchx  0x0000001c , 0x00004023 
+ 00020730  0x000050a6 call  0x000052b8 
+ 00020731  0x000050a7 force  0x00000000 , 0x00000012 
+ 00020732  0x000050a8 call  0x000052c3 
+ 00020733  0x000050a9 copy  0x0000003f , 0x00000005 
+ 00020734  0x000050aa fetch  0x00000002 , 0x00000266 
+ 00020735  0x000050ab copy  0x0000003f , 0x00000013 
+ 00020736  0x000050ac fetch  0x00000002 , 0x00000264 
+ 00020737  0x000050ad iforce  0x00000006 
+ 00020738  0x000050af call  0x00005108 
+ 00020739  0x000050b0 increase  0xfffffffc , 0x00000013 
+ 00020740  0x000050b1 nbranch  0x00005102 , 0x00000005 
+ 00020741  0x000050b2 copy  0x00000012 , 0x00000002 
+ 00020742  0x000050b3 call  0x000050de 
+ 00020743  0x000050b4 branch  0x00004dfc 
+ 00020744  0x000050b7 ifetch  0x00000001 , 0x00000006 
+ 00020745  0x000050b8 beq  0x00000002 , 0x00005113 
+ 00020746  0x000050b9 beq  0x00000001 , 0x00005116 
+ 00020747  0x000050ba beq  0x00000003 , 0x00005120 
+ 00020748  0x000050bb beq  0x00000005 , 0x0000515c 
+ 00020749  0x000050bc beq  0x00000004 , 0x0000518e 
+ 00020750  0x000050bd beq  0x00000007 , 0x00005213 
+ 00020751  0x000050be beq  0x00000006 , 0x000051e1 
+ 00020752  0x000050bf beq  0x00000008 , 0x00005050 
+ 00020753  0x000050c0 beq  0x0000000a , 0x00004e3a 
+ 00020754  0x000050c1 branch  0x0000522e 
+ 00020755  0x000050c4 call  0x00007ea8 
+ 00020756  0x000050c6 call  0x00007ead 
+ 00020757  0x000050c7 branch  0x00004e51 
+ 00020758  0x000050c9 ifetch  0x00000001 , 0x00000006 
+ 00020759  0x000050ca copy  0x0000003f , 0x00000007 
+ 00020760  0x000050cb ifetch  0x00000002 , 0x00000006 
+ 00020761  0x000050cc copy  0x0000003f , 0x00000011 
+ 00020762  0x000050cd copy  0x00000013 , 0x0000003f 
+ 00020763  0x000050ce isub  0x00000011 , 0x00000013 
+ 00020764  0x000050d0 ifetch  0x00000001 , 0x00000006 
+ 00020765  0x000050d1 increase  0xffffffff , 0x00000011 
+ 00020766  0x000050d2 nbranch  0x0000511c , 0x00000005 
+ 00020767  0x000050d3 rtn 
+ 00020768  0x000050d5 ifetch  0x00000001 , 0x00000006 
+ 00020769  0x000050d6 copy  0x0000003f , 0x00000007 
+ 00020770  0x000050d7 ifetch  0x00000002 , 0x00000006 
+ 00020771  0x000050d8 copy  0x0000003f , 0x00000011 
+ 00020772  0x000050d9 ifetch  0x00000002 , 0x00000006 
+ 00020773  0x000050da copy  0x0000003f , 0x0000000b 
+ 00020774  0x000050db ifetch  0x00000002 , 0x00000006 
+ 00020775  0x000050dc copy  0x0000003f , 0x00000002 
+ 00020776  0x000050dd ifetch  0x00000002 , 0x00000006 
+ 00020777  0x000050de sub  0x0000003f , 0x00000000 , 0x0000003e 
+ 00020778  0x000050df branch  0x00005132 , 0x00000005 
+ 00020779  0x000050e0 beq  0x00000002 , 0x0000512e 
+ 00020780  0x000050e1 beq  0x00000004 , 0x0000512e 
+ 00020781  0x000050e2 branch  0x00005130 
+ 00020782  0x000050e4 jam  0x00000016 , 0x00000a99 
+ 00020783  0x000050e5 call  0x00007d86 
+ 00020784  0x000050e7 ifetch  0x00000002 , 0x00000006 
+ 00020785  0x000050e8 branch  0x00005159 
+ 00020786  0x000050ea call  0x00007ea8 
+ 00020787  0x000050ee bpatchx  0x0000001d , 0x00004023 
+ 00020788  0x000050ef setarg  0x00000050 
+ 00020789  0x000050f0 isub  0x00000002 , 0x0000003e 
+ 00020790  0x000050f1 branch  0x00005141 , 0x00000005 
+ 00020791  0x000050f2 setarg  0x00000051 
+ 00020792  0x000050f3 isub  0x00000002 , 0x0000003e 
+ 00020793  0x000050f4 branch  0x00005147 , 0x00000005 
+ 00020794  0x000050f5 setarg  0x00000053 
+ 00020795  0x000050f6 isub  0x00000002 , 0x0000003e 
+ 00020796  0x000050f7 branch  0x00005153 , 0x00000005 
+ 00020797  0x000050f8 setarg  0x00000052 
+ 00020798  0x000050f9 isub  0x00000002 , 0x0000003e 
+ 00020799  0x000050fa branch  0x0000514d , 0x00000005 
+ 00020800  0x000050fb branch  0x00005159 
+ 00020801  0x000050fd copy  0x0000000b , 0x0000003f 
+ 00020802  0x000050fe store  0x00000002 , 0x00004248 
+ 00020803  0x000050ff fetch  0x00000001 , 0x00004250 
+ 00020804  0x00005100 set1  0x00000001 
+ 00020805  0x00005101 store  0x00000001 , 0x00004250 
+ 00020806  0x00005102 branch  0x00005158 
+ 00020807  0x00005104 copy  0x0000000b , 0x0000003f 
+ 00020808  0x00005105 store  0x00000002 , 0x0000424a 
+ 00020809  0x00005106 fetch  0x00000001 , 0x00004251 
+ 00020810  0x00005107 set1  0x00000001 
+ 00020811  0x00005108 store  0x00000001 , 0x00004251 
+ 00020812  0x00005109 branch  0x00005158 
+ 00020813  0x0000510b copy  0x0000000b , 0x0000003f 
+ 00020814  0x0000510c store  0x00000002 , 0x0000424c 
+ 00020815  0x0000510d fetch  0x00000001 , 0x00004252 
+ 00020816  0x0000510e set1  0x00000001 
+ 00020817  0x0000510f store  0x00000001 , 0x00004252 
+ 00020818  0x00005110 branch  0x00005158 
+ 00020819  0x00005112 copy  0x0000000b , 0x0000003f 
+ 00020820  0x00005113 store  0x00000002 , 0x0000424e 
+ 00020821  0x00005114 fetch  0x00000001 , 0x00004253 
+ 00020822  0x00005115 set1  0x00000001 
+ 00020823  0x00005116 store  0x00000001 , 0x00004253 
+ 00020824  0x0000511a call  0x00007ead 
+ 00020825  0x0000511c copy  0x00000013 , 0x0000003f 
+ 00020826  0x0000511d isub  0x00000011 , 0x00000013 
+ 00020827  0x0000511e rtn 
+ 00020828  0x00005121 ifetch  0x00000001 , 0x00000006 
+ 00020829  0x00005122 copy  0x0000003f , 0x00000007 
+ 00020830  0x00005123 ifetch  0x00000002 , 0x00000006 
+ 00020831  0x00005124 copy  0x0000003f , 0x00000011 
+ 00020832  0x00005125 copy  0x00000013 , 0x0000003f 
+ 00020833  0x00005126 isub  0x00000011 , 0x00000013 
+ 00020834  0x00005127 ifetch  0x00000002 , 0x00000006 
+ 00020835  0x00005128 copy  0x0000003f , 0x0000000b 
+ 00020836  0x00005129 ifetch  0x00000002 , 0x00000006 
+ 00020837  0x0000512a ifetch  0x00000002 , 0x00000006 
+ 00020838  0x0000512b nbranch  0x00005188 , 0x00000034 
+ 00020839  0x0000512c call  0x00007ea8 
+ 00020840  0x00005130 copy  0x0000000b , 0x00000002 
+ 00020841  0x00005131 bpatchx  0x0000001e , 0x00004023 
+ 00020842  0x00005132 setarg  0x00000050 
+ 00020843  0x00005133 isub  0x00000002 , 0x0000003e 
+ 00020844  0x00005134 branch  0x00005176 , 0x00000005 
+ 00020845  0x00005135 setarg  0x00000051 
+ 00020846  0x00005136 isub  0x00000002 , 0x0000003e 
+ 00020847  0x00005137 branch  0x0000517a , 0x00000005 
+ 00020848  0x00005138 setarg  0x00000052 
+ 00020849  0x00005139 isub  0x00000002 , 0x0000003e 
+ 00020850  0x0000513a branch  0x0000517e , 0x00000005 
+ 00020851  0x0000513b setarg  0x00000053 
+ 00020852  0x0000513c isub  0x00000002 , 0x0000003e 
+ 00020853  0x0000513d branch  0x00005182 , 0x00000005 
+ 00020854  0x0000513f fetch  0x00000001 , 0x00004250 
+ 00020855  0x00005140 set1  0x00000005 
+ 00020856  0x00005141 store  0x00000001 , 0x00004250 
+ 00020857  0x00005142 rtn 
+ 00020858  0x00005144 fetch  0x00000001 , 0x00004251 
+ 00020859  0x00005145 set1  0x00000005 
+ 00020860  0x00005146 store  0x00000001 , 0x00004251 
+ 00020861  0x00005147 rtn 
+ 00020862  0x00005149 fetch  0x00000001 , 0x00004252 
+ 00020863  0x0000514a set1  0x00000005 
+ 00020864  0x0000514b store  0x00000001 , 0x00004252 
+ 00020865  0x0000514c rtn 
+ 00020866  0x0000514e fetch  0x00000001 , 0x00004253 
+ 00020867  0x0000514f set1  0x00000005 
+ 00020868  0x00005150 store  0x00000001 , 0x00004253 
+ 00020869  0x00005151 jam  0x00000006 , 0x00000a99 
+ 00020870  0x00005152 branch  0x00007d86 
+ 00020871  0x00005156 call  0x00007ead 
+ 00020872  0x00005158 increase  0xfffffffa , 0x00000011 
+ 00020873  0x0000515a branch  0x0000518d , 0x00000005 
+ 00020874  0x0000515b increase  0x00000001 , 0x00000006 
+ 00020875  0x0000515c increase  0xffffffff , 0x00000011 
+ 00020876  0x0000515d branch  0x00005189 
+ 00020877  0x0000515f rtn 
+ 00020878  0x00005161 ifetch  0x00000001 , 0x00000006 
+ 00020879  0x00005162 copy  0x0000003f , 0x00000007 
+ 00020880  0x00005163 ifetch  0x00000002 , 0x00000006 
+ 00020881  0x00005164 copy  0x0000003f , 0x00000011 
+ 00020882  0x00005165 copy  0x00000013 , 0x0000003f 
+ 00020883  0x00005166 isub  0x00000011 , 0x00000013 
+ 00020884  0x00005167 ifetch  0x00000002 , 0x00000006 
+ 00020885  0x00005168 increase  0x00000002 , 0x00000006 
+ 00020886  0x00005169 copy  0x0000003f , 0x00000002 
+ 00020887  0x0000516a setarg  0x00000005 
+ 00020888  0x0000516b istore  0x00000001 , 0x00000005 
+ 00020889  0x0000516c copy  0x00000007 , 0x0000003f 
+ 00020890  0x0000516d istore  0x00000001 , 0x00000005 
+ 00020891  0x0000516e increase  0x00000002 , 0x00000011 
+ 00020892  0x0000516f copy  0x00000011 , 0x0000003f 
+ 00020893  0x00005170 istore  0x00000002 , 0x00000005 
+ 00020894  0x00005171 call  0x00007ea8 
+ 00020895  0x00005172 bpatchx  0x0000001f , 0x00004023 
+ 00020896  0x00005173 setarg  0x00000050 
+ 00020897  0x00005174 isub  0x00000002 , 0x0000003e 
+ 00020898  0x00005175 branch  0x000051ad , 0x00000005 
+ 00020899  0x00005176 setarg  0x00000051 
+ 00020900  0x00005177 isub  0x00000002 , 0x0000003e 
+ 00020901  0x00005178 branch  0x000051be , 0x00000005 
+ 00020902  0x00005179 setarg  0x00000052 
+ 00020903  0x0000517a isub  0x00000002 , 0x0000003e 
+ 00020904  0x0000517b branch  0x000051c4 , 0x00000005 
+ 00020905  0x0000517c setarg  0x00000053 
+ 00020906  0x0000517d isub  0x00000002 , 0x0000003e 
+ 00020907  0x0000517e branch  0x000051ca , 0x00000005 
+ 00020908  0x0000517f branch  0x000051cf 
+ 00020909  0x00005181 fetch  0x00000001 , 0x00004250 
+ 00020910  0x00005182 set1  0x00000004 , 0x0000003f 
+ 00020911  0x00005183 set1  0x00000003 , 0x0000003f 
+ 00020912  0x00005184 store  0x00000001 , 0x00004250 
+ 00020913  0x00005185 bbit1  0x00000002 , 0x000051bb 
+ 00020914  0x00005186 fetcht  0x00000001 , 0x0000027f 
+ 00020915  0x00005187 set1  0x00000006 , 0x00000002 
+ 00020916  0x00005188 storet  0x00000001 , 0x0000027f 
+ 00020917  0x00005189 copy  0x00000007 , 0x0000003f 
+ 00020918  0x0000518a increase  0x00000001 , 0x0000003f 
+ 00020919  0x0000518b store  0x00000001 , 0x00000281 
+ 00020920  0x0000518c fetch  0x00000001 , 0x00004250 
+ 00020921  0x0000518d set1  0x00000002 , 0x0000003f 
+ 00020922  0x0000518e store  0x00000001 , 0x00004250 
+ 00020923  0x00005190 fetch  0x00000002 , 0x00004248 
+ 00020924  0x00005191 store  0x00000002 , 0x00000282 
+ 00020925  0x00005192 branch  0x000051cf 
+ 00020926  0x00005194 fetch  0x00000001 , 0x00004251 
+ 00020927  0x00005195 set1  0x00000004 , 0x0000003f 
+ 00020928  0x00005196 set1  0x00000003 , 0x0000003f 
+ 00020929  0x00005197 store  0x00000001 , 0x00004251 
+ 00020930  0x00005198 fetch  0x00000002 , 0x0000424a 
+ 00020931  0x00005199 branch  0x000051cf 
+ 00020932  0x0000519b fetch  0x00000001 , 0x00004252 
+ 00020933  0x0000519c set1  0x00000004 , 0x0000003f 
+ 00020934  0x0000519d set1  0x00000003 , 0x0000003f 
+ 00020935  0x0000519e store  0x00000001 , 0x00004252 
+ 00020936  0x0000519f fetch  0x00000002 , 0x0000424c 
+ 00020937  0x000051a0 branch  0x000051cf 
+ 00020938  0x000051a2 fetch  0x00000001 , 0x00004253 
+ 00020939  0x000051a3 set1  0x00000004 , 0x0000003f 
+ 00020940  0x000051a4 set1  0x00000003 , 0x0000003f 
+ 00020941  0x000051a5 store  0x00000001 , 0x00004253 
+ 00020942  0x000051a6 fetch  0x00000002 , 0x0000424e 
+ 00020943  0x000051aa copy  0x0000003f , 0x0000000b 
+ 00020944  0x000051ab call  0x00007ead 
+ 00020945  0x000051ad copy  0x0000000b , 0x0000003f 
+ 00020946  0x000051af istore  0x00000002 , 0x00000005 
+ 00020947  0x000051b0 force  0x00000000 , 0x0000003f 
+ 00020948  0x000051b1 istore  0x00000002 , 0x00000005 
+ 00020949  0x000051b2 force  0x00000000 , 0x0000003f 
+ 00020950  0x000051b3 istore  0x00000002 , 0x00000005 
+ 00020951  0x000051b4 force  0x0000000a , 0x0000003f 
+ 00020952  0x000051b5 iadd  0x00000012 , 0x00000012 
+ 00020953  0x000051b6 increase  0xfffffffa , 0x00000011 
+ 00020954  0x000051b8 branch  0x000051e0 , 0x00000005 
+ 00020955  0x000051b9 ifetch  0x00000001 , 0x00000006 
+ 00020956  0x000051ba istore  0x00000001 , 0x00000005 
+ 00020957  0x000051bb increase  0x00000001 , 0x00000012 
+ 00020958  0x000051bc increase  0xffffffff , 0x00000011 
+ 00020959  0x000051bd branch  0x000051da 
+ 00020960  0x000051bf rtn 
+ 00020961  0x000051c1 ifetch  0x00000001 , 0x00000006 
+ 00020962  0x000051c2 copy  0x0000003f , 0x00000007 
+ 00020963  0x000051c3 ifetch  0x00000002 , 0x00000006 
+ 00020964  0x000051c4 copy  0x0000003f , 0x00000011 
+ 00020965  0x000051c5 copy  0x00000013 , 0x0000003f 
+ 00020966  0x000051c6 isub  0x00000011 , 0x00000013 
+ 00020967  0x000051c8 ifetch  0x00000002 , 0x00000006 
+ 00020968  0x000051c9 copy  0x0000003f , 0x00000011 
+ 00020969  0x000051ca ifetch  0x00000002 , 0x00000006 
+ 00020970  0x000051cb copy  0x0000003f , 0x0000000b 
+ 00020971  0x000051cc call  0x00007ea8 
+ 00020972  0x000051cd bpatchx  0x00000020 , 0x00004024 
+ 00020973  0x000051ce setarg  0x00000050 
+ 00020974  0x000051cf copy  0x00000011 , 0x00000002 
+ 00020975  0x000051d0 isub  0x00000002 , 0x0000003e 
+ 00020976  0x000051d1 branch  0x000051fa , 0x00000005 
+ 00020977  0x000051d2 setarg  0x00000052 
+ 00020978  0x000051d3 copy  0x00000011 , 0x00000002 
+ 00020979  0x000051d4 isub  0x00000002 , 0x0000003e 
+ 00020980  0x000051d5 branch  0x000051ff , 0x00000005 
+ 00020981  0x000051d6 setarg  0x00000053 
+ 00020982  0x000051d7 copy  0x00000011 , 0x00000002 
+ 00020983  0x000051d8 isub  0x00000002 , 0x0000003e 
+ 00020984  0x000051d9 branch  0x00005201 , 0x00000005 
+ 00020985  0x000051da branch  0x00005203 
+ 00020986  0x000051dc setarg  0x00000000 
+ 00020987  0x000051dd store  0x00000002 , 0x00000275 
+ 00020988  0x000051de store  0x00000002 , 0x00004248 
+ 00020989  0x000051df store  0x00000001 , 0x00004250 
+ 00020990  0x000051e0 branch  0x00005205 
+ 00020991  0x000051e2 call  0x00005079 
+ 00020992  0x000051e3 branch  0x00005205 
+ 00020993  0x000051e5 call  0x0000507f 
+ 00020994  0x000051eb branch  0x00005205 
+ 00020995  0x000051ed setarg  0x00000000 
+ 00020996  0x000051ee store  0x00000002 , 0x0000027b 
+ 00020997  0x000051f0 call  0x00007ead 
+ 00020998  0x000051f1 setarg  0x00000007 
+ 00020999  0x000051f2 istore  0x00000001 , 0x00000005 
+ 00021000  0x000051f3 copy  0x00000007 , 0x0000003f 
+ 00021001  0x000051f4 istore  0x00000001 , 0x00000005 
+ 00021002  0x000051f5 setarg  0x00000004 
+ 00021003  0x000051f6 istore  0x00000002 , 0x00000005 
+ 00021004  0x000051f7 copy  0x00000011 , 0x0000003f 
+ 00021005  0x000051f8 istore  0x00000002 , 0x00000005 
+ 00021006  0x000051f9 copy  0x0000000b , 0x0000003f 
+ 00021007  0x000051fa istore  0x00000002 , 0x00000005 
+ 00021008  0x000051fb force  0x00000008 , 0x0000003f 
+ 00021009  0x000051fc iadd  0x00000012 , 0x00000012 
+ 00021010  0x000051fd rtn 
+ 00021011  0x00005200 ifetch  0x00000001 , 0x00000006 
+ 00021012  0x00005201 copy  0x0000003f , 0x00000007 
+ 00021013  0x00005202 ifetch  0x00000002 , 0x00000006 
+ 00021014  0x00005203 copy  0x0000003f , 0x00000011 
+ 00021015  0x00005204 ifetch  0x00000002 , 0x00000006 
+ 00021016  0x00005205 copy  0x0000003f , 0x0000000b 
+ 00021017  0x00005206 ifetch  0x00000002 , 0x00000006 
+ 00021018  0x00005207 copy  0x0000003f , 0x00000002 
+ 00021019  0x00005208 call  0x00007ea8 
+ 00021020  0x00005209 bpatchx  0x00000021 , 0x00004024 
+ 00021021  0x0000520a fetch  0x00000001 , 0x00004255 
+ 00021022  0x0000520b icompare  0x000000ff , 0x00000007 
+ 00021023  0x0000520c nbranch  0x0000522a , 0x00000001 
+ 00021024  0x0000520d setarg  0x00000050 
+ 00021025  0x0000520e isub  0x00000002 , 0x0000003e 
+ 00021026  0x0000520f branch  0x00005227 , 0x00000005 
+ 00021027  0x00005210 setarg  0x00000051 
+ 00021028  0x00005211 isub  0x00000002 , 0x0000003e 
+ 00021029  0x00005212 branch  0x0000522a , 0x00000005 
+ 00021030  0x00005213 branch  0x0000522a 
+ 00021031  0x00005215 jam  0x00000000 , 0x00004248 
+ 00021032  0x00005216 jam  0x00000000 , 0x00004250 
+ 00021033  0x00005217 branch  0x0000522a 
+ 00021034  0x0000521c call  0x00007ead 
+ 00021035  0x0000521d copy  0x00000013 , 0x0000003f 
+ 00021036  0x0000521e isub  0x00000011 , 0x00000013 
+ 00021037  0x0000521f rtn 
+ 00021038  0x00005222 setarg  0x00000001 
+ 00021039  0x00005223 istore  0x00000001 , 0x00000005 
+ 00021040  0x00005224 ifetch  0x00000001 , 0x00000006 
+ 00021041  0x00005225 istore  0x00000001 , 0x00000005 
+ 00021042  0x00005226 setarg  0x00000002 
+ 00021043  0x00005227 istore  0x00000002 , 0x00000005 
+ 00021044  0x00005228 setarg  0x00000000 
+ 00021045  0x00005229 istore  0x00000002 , 0x00000005 
+ 00021046  0x0000522a setarg  0x00000006 
+ 00021047  0x0000522b iadd  0x00000012 , 0x00000012 
+ 00021048  0x0000522c force  0x00000004 , 0x00000013 
+ 00021049  0x0000522d rtn 
+ 00021050  0x00005231 fetch  0x00000001 , 0x00004255 
+ 00021051  0x00005232 increase  0x00000001 , 0x0000003f 
+ 00021052  0x00005233 bne  0x00000000 , 0x0000523e 
+ 00021053  0x00005234 increase  0x00000001 , 0x0000003f 
+ 00021054  0x00005236 store  0x00000001 , 0x00004255 
+ 00021055  0x00005237 rtn 
+ 00021056  0x00005242 bpatchx  0x00000022 , 0x00004024 
+ 00021057  0x00005243 arg  0x00000000 , 0x00000012 
+ 00021058  0x00005244 call  0x0000526e 
+ 00021059  0x00005245 nbranch  0x00002a8c , 0x00000034 
+ 00021060  0x00005246 call  0x0000527e 
+ 00021061  0x00005247 arg  0x00001800 , 0x00000012 
+ 00021062  0x00005248 arg  0x00000000 , 0x00000007 
+ 00021063  0x0000524a fetcht  0x00000001 , 0x00004256 
+ 00021064  0x0000524b qisolate1  0x00000002 
+ 00021065  0x0000524c branch  0x0000524f , 0x00000001 
+ 00021066  0x0000524d call  0x000052a0 
+ 00021067  0x0000524e sub  0x0000000b , 0x00000000 , 0x0000003e 
+ 00021068  0x0000524f branch  0x0000524f , 0x00000002 
+ 00021069  0x00005250 call  0x00005288 
+ 00021070  0x00005251 branch  0x00005255 
+ 00021071  0x00005253 increase  0x00000080 , 0x00000012 
+ 00021072  0x00005254 increase  0x00000001 , 0x00000007 
+ 00021073  0x00005255 setarg  0x00000008 
+ 00021074  0x00005256 isub  0x00000007 , 0x0000003e 
+ 00021075  0x00005257 branch  0x00005247 , 0x00000002 
+ 00021076  0x00005258 arg  0x00000000 , 0x00000012 
+ 00021077  0x0000525a copy  0x00000012 , 0x0000003f 
+ 00021078  0x0000525b branch  0x00002a8c , 0x00000034 
+ 00021079  0x0000525c rtn 
+ 00021080  0x00005265 bpatchx  0x00000023 , 0x00004024 
+ 00021081  0x00005266 call  0x00005277 
+ 00021082  0x00005267 increase  0x00000001 , 0x00000006 
+ 00021083  0x00005268 ifetch  0x00000002 , 0x00000006 
+ 00021084  0x00005269 rtn 
+ 00021085  0x00005270 bpatchx  0x00000024 , 0x00004024 
+ 00021086  0x00005271 call  0x00005277 
+ 00021087  0x00005272 copy  0x00000006 , 0x00000005 
+ 00021088  0x00005273 copy  0x00000006 , 0x00000002 
+ 00021089  0x00005274 setarg  0x00000000 
+ 00021090  0x00005275 istore  0x00000003 , 0x00000005 
+ 00021091  0x00005276 rtn 
+ 00021092  0x0000527c bpatchx  0x00000025 , 0x00004024 
+ 00021093  0x0000527d call  0x00005274 
+ 00021094  0x0000527e branch  0x00002a8c , 0x00000034 
+ 00021095  0x0000527f fetch  0x00000003 , 0x0000425d 
+ 00021096  0x00005280 store  0x00000003 , 0x00004260 
+ 00021097  0x00005281 fetch  0x00000003 , 0x0000425a 
+ 00021098  0x00005282 store  0x00000003 , 0x0000425d 
+ 00021099  0x00005283 fetch  0x00000003 , 0x00004257 
+ 00021100  0x00005284 store  0x00000003 , 0x0000425a 
+ 00021101  0x00005285 rtn 
+ 00021102  0x0000528c bpatchx  0x00000026 , 0x00004024 
+ 00021103  0x0000528d fetch  0x00000003 , 0x00004257 
+ 00021104  0x0000528e rtn 
+ 00021105  0x00005295 bpatchx  0x00000027 , 0x00004024 
+ 00021106  0x00005296 fetch  0x00000003 , 0x0000425a 
+ 00021107  0x00005297 rtn 
+ 00021108  0x0000529e bpatchx  0x00000028 , 0x00004025 
+ 00021109  0x0000529f fetch  0x00000003 , 0x00004260 
+ 00021110  0x000052a0 rtn 
+ 00021111  0x000052a6 call  0x00005274 
+ 00021112  0x000052a7 branch  0x00002a8c , 0x00000034 
+ 00021113  0x000052a8 arg  0x00004257 , 0x00000006 
+ 00021114  0x000052aa ifetch  0x00000003 , 0x00000006 
+ 00021115  0x000052ab branch  0x0000527a , 0x00000034 
+ 00021116  0x000052ac increase  0xfffffffd , 0x00000006 
+ 00021117  0x000052ad rtn 
+ 00021118  0x000052b5 bpatchx  0x00000029 , 0x00004025 
+ 00021119  0x000052b6 arg  0x00000004 , 0x00000039 
+ 00021120  0x000052b7 arg  0x00004257 , 0x00000006 
+ 00021121  0x000052b8 arg  0x00000000 , 0x00000002 
+ 00021122  0x000052ba ifetch  0x00000003 , 0x00000006 
+ 00021123  0x000052bb and  0x0000003f , 0x000000ff , 0x0000003f 
+ 00021124  0x000052bc ior  0x00000002 , 0x00000002 
+ 00021125  0x000052bd loop  0x00005282 
+ 00021126  0x000052be storet  0x00000001 , 0x00004256 
+ 00021127  0x000052bf rtn 
+ 00021128  0x000052c8 bpatchx  0x0000002a , 0x00004025 
+ 00021129  0x000052c9 call  0x0000526e 
+ 00021130  0x000052ca nbranch  0x00002a8c , 0x00000034 
+ 00021131  0x000052cb call  0x00005274 
+ 00021132  0x000052cc branch  0x00005295 , 0x00000034 
+ 00021133  0x000052cd fetch  0x00000003 , 0x0000425a 
+ 00021134  0x000052ce store  0x00000003 , 0x00004257 
+ 00021135  0x000052cf ifetch  0x00000003 , 0x00000006 
+ 00021136  0x000052d0 istore  0x00000003 , 0x00000005 
+ 00021137  0x000052d1 ifetch  0x00000003 , 0x00000006 
+ 00021138  0x000052d2 istore  0x00000003 , 0x00000005 
+ 00021139  0x000052d3 setarg  0x00000000 
+ 00021140  0x000052d4 istore  0x00000003 , 0x00000005 
+ 00021141  0x000052d6 arg  0x00000000 , 0x00000002 
+ 00021142  0x000052d7 copy  0x0000000b , 0x0000003f 
+ 00021143  0x000052d8 iadd  0x00000007 , 0x0000003f 
+ 00021144  0x000052da qset1  0x00000002 
+ 00021145  0x000052db increase  0x00000001 , 0x00000007 
+ 00021146  0x000052dc isub  0x00000007 , 0x0000003e 
+ 00021147  0x000052dd nbranch  0x00005298 , 0x00000005 
+ 00021148  0x000052df lshift8  0x00000012 , 0x0000003f 
+ 00021149  0x000052e0 ior  0x00000002 , 0x0000003f 
+ 00021150  0x000052e1 store  0x00000003 , 0x00004260 
+ 00021151  0x000052e2 rtn 
+ 00021152  0x000052ed bpatchx  0x0000002b , 0x00004025 
+ 00021153  0x000052ee call  0x0000527e 
+ 00021154  0x000052ef copy  0x00000007 , 0x00000013 
+ 00021155  0x000052f0 arg  0x00000000 , 0x00000002 
+ 00021156  0x000052f1 arg  0x00000000 , 0x0000000b 
+ 00021157  0x000052f4 copy  0x00000007 , 0x0000003f 
+ 00021158  0x000052f5 beq  0x00000008 , 0x000052b0 
+ 00021159  0x000052f6 fetch  0x00000001 , 0x00004256 
+ 00021160  0x000052f7 qisolate1  0x0000003f 
+ 00021161  0x000052f8 branch  0x000052b0 , 0x00000001 
+ 00021162  0x000052f9 increase  0x00000080 , 0x00000002 
+ 00021163  0x000052fa increase  0x00000001 , 0x00000007 
+ 00021164  0x000052fb copy  0x00000011 , 0x0000003f 
+ 00021165  0x000052fc isub  0x00000002 , 0x0000003e 
+ 00021166  0x000052fd branch  0x000052b0 , 0x00000005 
+ 00021167  0x000052fe branch  0x000052a5 , 0x00000002 
+ 00021168  0x00005300 copy  0x00000002 , 0x0000003f 
+ 00021169  0x00005301 isub  0x00000011 , 0x0000003e 
+ 00021170  0x00005302 nbranch  0x000052b6 , 0x00000002 
+ 00021171  0x00005303 copy  0x00000007 , 0x0000003f 
+ 00021172  0x00005304 copy  0x00000013 , 0x00000002 
+ 00021173  0x00005305 isub  0x00000002 , 0x0000000b 
+ 00021174  0x00005307 copy  0x00000013 , 0x00000007 
+ 00021175  0x00005308 rtn 
+ 00021176  0x0000530c bpatchx  0x0000002c , 0x00004025 
+ 00021177  0x0000530d arg  0x0000007f , 0x00000011 
+ 00021178  0x0000530e call  0x00005240 
+ 00021179  0x0000530f store  0x00000002 , 0x0000026b 
+ 00021180  0x00005310 increase  0x00000004 , 0x0000003f 
+ 00021181  0x00005311 store  0x00000002 , 0x0000026d 
+ 00021182  0x00005312 setarg  0x00000000 
+ 00021183  0x00005313 store  0x00000002 , 0x0000026f 
+ 00021184  0x00005314 rtn 
+ 00021185  0x00005317 fetch  0x00000002 , 0x0000026b 
+ 00021186  0x00005318 branch  0x000052e2 
+ 00021187  0x0000531b fetch  0x00000002 , 0x0000026d 
+ 00021188  0x0000531c branch  0x000052e2 
+ 00021189  0x00005320 bpatchx  0x0000002d , 0x00004025 
+ 00021190  0x00005321 arg  0x000000fa , 0x00000011 
+ 00021191  0x00005322 call  0x00005240 
+ 00021192  0x00005323 store  0x00000002 , 0x00000271 
+ 00021193  0x00005324 increase  0x00000004 , 0x0000003f 
+ 00021194  0x00005325 store  0x00000002 , 0x00000273 
+ 00021195  0x00005326 setarg  0x00000000 
+ 00021196  0x00005327 store  0x00000002 , 0x00000275 
+ 00021197  0x00005328 rtn 
+ 00021198  0x0000532b fetch  0x00000002 , 0x00000271 
+ 00021199  0x0000532c branch  0x000052e2 
+ 00021200  0x0000532f fetch  0x00000002 , 0x00000273 
+ 00021201  0x00005330 branch  0x000052e2 
+ 00021202  0x00005334 bpatchx  0x0000002e , 0x00004025 
+ 00021203  0x00005335 call  0x00007e7c 
+ 00021204  0x00005336 jam  0x00000001 , 0x00000284 
+ 00021205  0x00005337 call  0x0000526e 
+ 00021206  0x00005338 nrtn  0x00000034 
+ 00021207  0x00005339 arg  0x0000007f , 0x00000011 
+ 00021208  0x0000533a call  0x00005240 
+ 00021209  0x0000533b store  0x00000002 , 0x00000277 
+ 00021210  0x0000533c increase  0x00000004 , 0x0000003f 
+ 00021211  0x0000533d store  0x00000002 , 0x00000279 
+ 00021212  0x0000533e setarg  0x00000000 
+ 00021213  0x0000533f store  0x00000002 , 0x0000027b 
+ 00021214  0x00005340 jam  0x00000000 , 0x00000284 
+ 00021215  0x00005341 branch  0x00007e8c 
+ 00021216  0x00005344 fetch  0x00000002 , 0x00000277 
+ 00021217  0x00005345 branch  0x000052e2 
+ 00021218  0x00005348 branch  0x00002a8c , 0x00000034 
+ 00021219  0x00005349 copy  0x0000003f , 0x00000005 
+ 00021220  0x0000534a rtn 
+ 00021221  0x0000534e bpatchx  0x0000002f , 0x00004025 
+ 00021222  0x0000534f arg  0x00000000 , 0x00000012 
+ 00021223  0x00005350 arg  0x00004257 , 0x00000011 
+ 00021224  0x00005351 increase  0xfffffffe , 0x00000011 
+ 00021225  0x00005353 increase  0x00000002 , 0x00000011 
+ 00021226  0x00005354 setarg  0x00004263 
+ 00021227  0x00005355 isub  0x00000011 , 0x0000003e 
+ 00021228  0x00005356 branch  0x000052f5 , 0x00000005 
+ 00021229  0x00005357 ifetch  0x00000001 , 0x00000011 
+ 00021230  0x00005358 increase  0x00000001 , 0x00000011 
+ 00021231  0x00005359 branch  0x000052e9 , 0x00000034 
+ 00021232  0x0000535a ifetcht  0x00000002 , 0x00000011 
+ 00021233  0x0000535b ifetch  0x00000002 , 0x00000002 
+ 00021234  0x0000535c iadd  0x00000012 , 0x00000012 
+ 00021235  0x0000535d increase  0x00000004 , 0x00000012 
+ 00021236  0x0000535e branch  0x000052e9 
+ 00021237  0x00005360 copy  0x00000012 , 0x0000003f 
+ 00021238  0x00005361 rtn 
+ 00021239  0x00005365 arg  0x0000000c , 0x00000007 
+ 00021240  0x00005366 branch  0x00002c32 
+ 00021241  0x00005369 arg  0x0000000c , 0x00000007 
+ 00021242  0x0000536a branch  0x00002c36 
+ 00021243  0x0000536d bpatchx  0x00000030 , 0x00004026 
+ 00021244  0x0000536e call  0x0000527e 
+ 00021245  0x0000536f fetch  0x00000001 , 0x00004256 
+ 00021246  0x00005370 rtn  0x00000034 
+ 00021247  0x00005371 call  0x000052e5 
+ 00021248  0x00005372 arg  0x00000100 , 0x00000002 
+ 00021249  0x00005373 isub  0x00000002 , 0x0000003e 
+ 00021250  0x00005374 branch  0x000052f7 , 0x00000002 
+ 00021251  0x00005375 call  0x000052f9 
+ 00021252  0x00005376 arg  0x00004263 , 0x00000005 
+ 00021253  0x00005377 arg  0x00004257 , 0x00000011 
+ 00021254  0x00005379 setarg  0x00004263 
+ 00021255  0x0000537a isub  0x00000011 , 0x0000003e 
+ 00021256  0x0000537b rtn  0x00000005 
+ 00021257  0x0000537c ifetch  0x00000001 , 0x00000011 
+ 00021258  0x0000537d increase  0x00000001 , 0x00000011 
+ 00021259  0x0000537e nbranch  0x0000530f , 0x00000034 
+ 00021260  0x0000537f istore  0x00000002 , 0x00000005 
+ 00021261  0x00005380 increase  0x00000002 , 0x00000011 
+ 00021262  0x00005381 branch  0x00005306 
+ 00021263  0x00005383 ifetch  0x00000002 , 0x00000011 
+ 00021264  0x00005384 increase  0x00000002 , 0x00000011 
+ 00021265  0x00005385 copy  0x0000003f , 0x00000006 
+ 00021266  0x00005386 ifetch  0x00000002 , 0x00000006 
+ 00021267  0x00005387 istore  0x00000002 , 0x00000005 
+ 00021268  0x00005388 copy  0x0000003f , 0x00000039 
+ 00021269  0x00005389 increase  0x00000002 , 0x00000039 
+ 00021270  0x0000538a call  0x00007f01 
+ 00021271  0x0000538b branch  0x00005306 
+ 00021272  0x0000538e bpatchx  0x00000031 , 0x00004026 
+ 00021273  0x0000538f call  0x0000527e 
+ 00021274  0x00005390 fetch  0x00000001 , 0x00004256 
+ 00021275  0x00005391 rtn  0x00000034 
+ 00021276  0x00005392 arg  0x00004258 , 0x00000011 
+ 00021277  0x00005393 increase  0xfffffffd , 0x00000011 
+ 00021278  0x00005394 arg  0x00004263 , 0x00000006 
+ 00021279  0x00005396 increase  0x00000003 , 0x00000011 
+ 00021280  0x00005397 setarg  0x00004264 
+ 00021281  0x00005398 isub  0x00000011 , 0x0000003e 
+ 00021282  0x00005399 rtn  0x00000005 
+ 00021283  0x0000539a ifetch  0x00000002 , 0x00000006 
+ 00021284  0x0000539b branch  0x0000531f , 0x00000034 
+ 00021285  0x0000539c increase  0x00000004 , 0x0000003f 
+ 00021286  0x0000539d copy  0x0000003f , 0x00000039 
+ 00021287  0x0000539e copy  0x00000006 , 0x00000012 
+ 00021288  0x0000539f ifetch  0x00000002 , 0x00000011 
+ 00021289  0x000053a0 copy  0x0000003f , 0x00000005 
+ 00021290  0x000053a1 copy  0x00000012 , 0x00000006 
+ 00021291  0x000053a2 increase  0xfffffffe , 0x00000006 
+ 00021292  0x000053a3 call  0x00007f01 
+ 00021293  0x000053a4 branch  0x0000531f 
+ 00021294  0x000053af bpatchx  0x00000032 , 0x00004026 
+ 00021295  0x000053b0 disable  0x0000002b 
+ 00021296  0x000053b1 jam  0x00000001 , 0x00000455 
+ 00021297  0x000053b2 jam  0x00000003 , 0x0000043f 
+ 00021298  0x000053b3 jam  0x00000001 , 0x00000456 
+ 00021299  0x000053b4 setarg  0xffffffff 
+ 00021300  0x000053b5 store  0x00000002 , 0x00000459 
+ 00021301  0x000053b6 force  0x00000000 , 0x0000003f 
+ 00021302  0x000053b7 store  0x00000001 , 0x00000457 
+ 00021303  0x000053b8 store  0x00000001 , 0x00000462 
+ 00021304  0x000053b9 store  0x00000003 , 0x00004169 
+ 00021305  0x000053ba store  0x00000003 , 0x0000416c 
+ 00021306  0x000053bb store  0x00000005 , 0x00004403 
+ 00021307  0x000053bc set1  0x00000027 , 0x0000003f 
+ 00021308  0x000053bd store  0x00000005 , 0x00004408 
+ 00021309  0x000053be jam  0x00000001 , 0x000043dc 
+ 00021310  0x000053bf jam  0x00000000 , 0x000043dd 
+ 00021311  0x000053c0 branch  0x000056ed 
+ 00021312  0x000053c3 bpatchx  0x00000033 , 0x00004026 
+ 00021313  0x000053c4 enable  0x00000029 
+ 00021314  0x000053c5 jam  0x00000003 , 0x00000440 
+ 00021315  0x000053c6 jam  0x00000001 , 0x00000478 
+ 00021316  0x000053c7 jam  0x00000001 , 0x0000445a 
+ 00021317  0x000053c8 setarg  0x0000ffff 
+ 00021318  0x000053c9 store  0x00000002 , 0x0000445c 
+ 00021319  0x000053ca force  0x00000000 , 0x0000003f 
+ 00021320  0x000053cb store  0x00000005 , 0x00004408 
+ 00021321  0x000053cc set1  0x00000027 , 0x0000003f 
+ 00021322  0x000053cd store  0x00000005 , 0x00004403 
+ 00021323  0x000053ce branch  0x0000532e 
+ 00021324  0x000053d2 bpatchx  0x00000034 , 0x00004026 
+ 00021325  0x000053d3 disable  0x00000029 
+ 00021326  0x000053d4 setarg  0x00000017 
+ 00021327  0x000053d5 store  0x00000002 , 0x000044a8 
+ 00021328  0x000053d6 jam  0x00000001 , 0x00000440 
+ 00021329  0x000053d7 jam  0x00000000 , 0x0000436e 
+ 00021330  0x000053d8 jam  0x00000000 , 0x000000a0 
+ 00021331  0x000053d9 jam  0x00000000 , 0x000044c4 
+ 00021332  0x000053da jam  0x00000000 , 0x000044c5 
+ 00021333  0x000053db fetch  0x00000002 , 0x0000046d 
+ 00021334  0x000053dc store  0x00000002 , 0x000044ba 
+ 00021335  0x000053dd fetch  0x00000002 , 0x00000441 
+ 00021336  0x000053de mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00021337  0x000053df rshift4  0x0000003f , 0x0000003f 
+ 00021338  0x000053e0 store  0x00000002 , 0x0000046d 
+ 00021339  0x000053e1 branch  0x0000532e 
+ 00021340  0x000053e8 call  0x000053c4 
+ 00021341  0x000053e9 call  0x000055e8 
+ 00021342  0x000053ea call  0x000056f0 
+ 00021343  0x000053eb branch  0x000053ce 
+ 00021344  0x000053ee bpatchx  0x00000035 , 0x00004026 
+ 00021345  0x000053ef call  0x000053c4 
+ 00021346  0x000053f0 call  0x000032f4 
+ 00021347  0x000053f1 fetch  0x00000001 , 0x00000440 
+ 00021348  0x000053f2 beq  0x00000003 , 0x00005366 
+ 00021349  0x000053f3 branch  0x0000537a 
+ 00021350  0x000053fa bpatchx  0x00000036 , 0x00004026 
+ 00021351  0x000053fb enable  0x00000029 
+ 00021352  0x000053fc call  0x000056e4 
+ 00021353  0x000053fd branch  0x00005377 , 0x00000002 
+ 00021354  0x000053fe call  0x00002c6c 
+ 00021355  0x000053ff call  0x00005413 
+ 00021356  0x00005400 call  0x0000561e 
+ 00021357  0x00005401 disable  0x0000002d 
+ 00021358  0x00005402 call  0x000054bf 
+ 00021359  0x00005403 nrtn  0x0000002d 
+ 00021360  0x00005404 bpatchx  0x00000037 , 0x00004026 
+ 00021361  0x00005405 fetch  0x00000001 , 0x00000005 
+ 00021362  0x00005406 increase  0x00000001 , 0x0000003f 
+ 00021363  0x00005407 store  0x00000001 , 0x00000005 
+ 00021364  0x00005408 call  0x000055aa 
+ 00021365  0x00005409 disable  0x00000029 
+ 00021366  0x0000540a rtn 
+ 00021367  0x0000540d call  0x000053a9 
+ 00021368  0x0000540e disable  0x00000029 
+ 00021369  0x0000540f rtn 
+ 00021370  0x00005415 bpatchx  0x00000038 , 0x00004027 
+ 00021371  0x00005416 jam  0x00000000 , 0x0000450f 
+ 00021372  0x00005417 call  0x00007aaf 
+ 00021373  0x00005418 call  0x00005c18 
+ 00021374  0x00005419 disable  0x0000002e 
+ 00021375  0x0000541a call  0x000056e4 
+ 00021376  0x0000541b branch  0x000053a9 , 0x00000002 
+ 00021377  0x0000541c call  0x00002c6c 
+ 00021378  0x0000541d call  0x00005413 
+ 00021379  0x0000541e call  0x00005489 
+ 00021380  0x0000541f nbranch  0x0000539b , 0x00000018 
+ 00021381  0x00005420 call  0x000053b7 
+ 00021382  0x00005421 branch  0x00005388 , 0x0000002d 
+ 00021383  0x00005422 branch  0x00005395 
+ 00021384  0x00005426 bpatchx  0x00000039 , 0x00004027 
+ 00021385  0x00005427 fetch  0x00000001 , 0x0000450f 
+ 00021386  0x00005428 pincrease  0x00000001 
+ 00021387  0x00005429 store  0x00000001 , 0x0000450f 
+ 00021388  0x0000542a beq  0x0000000c , 0x00005395 
+ 00021389  0x0000542b call  0x000055aa 
+ 00021390  0x0000542c call  0x0000561e 
+ 00021391  0x0000542d call  0x000054c7 
+ 00021392  0x0000542e call  0x0000567e 
+ 00021393  0x0000542f fetch  0x00000002 , 0x000041fb 
+ 00021394  0x00005430 call  0x00007f9c 
+ 00021395  0x00005431 call  0x000053a0 
+ 00021396  0x00005432 branch  0x000053a4 , 0x00000028 
+ 00021397  0x00005434 bpatchx  0x0000003a , 0x00004027 
+ 00021398  0x00005435 call  0x00005be4 
+ 00021399  0x00005436 call  0x00005bdb 
+ 00021400  0x00005437 call  0x00007d9c 
+ 00021401  0x00005438 fetch  0x00000001 , 0x00000462 
+ 00021402  0x00005439 bbit1  0x00000003 , 0x000053a9 
+ 00021403  0x0000543b bpatchx  0x0000003b , 0x00004027 
+ 00021404  0x0000543c call  0x000057f4 
+ 00021405  0x0000543d call  0x0000559d 
+ 00021406  0x0000543e call  0x00005575 
+ 00021407  0x0000543f branch  0x00002841 
+ 00021408  0x00005443 disable  0x00000028 
+ 00021409  0x00005444 bmark1  0x0000002a , 0x00007fe7 
+ 00021410  0x00005445 bmark1  0x00000029 , 0x00007fe7 
+ 00021411  0x00005446 rtn 
+ 00021412  0x0000544a bpatchx  0x0000003c , 0x00004027 
+ 00021413  0x0000544b enable  0x0000002e 
+ 00021414  0x0000544c call  0x000054c1 
+ 00021415  0x0000544d branch  0x00005388 , 0x0000002d 
+ 00021416  0x0000544e branch  0x00005395 
+ 00021417  0x00005454 bpatchx  0x0000003d , 0x00004027 
+ 00021418  0x00005455 call  0x000053af 
+ 00021419  0x00005456 call  0x000033b4 
+ 00021420  0x00005457 call  0x00007a77 
+ 00021421  0x00005458 jam  0x00000015 , 0x00000a99 
+ 00021422  0x00005459 branch  0x00007d86 
+ 00021423  0x0000545c setarg  0x00000000 
+ 00021424  0x0000545d store  0x00000009 , 0x000044ff 
+ 00021425  0x0000545e jam  0x00000000 , 0x00000455 
+ 00021426  0x0000545f jam  0x00000000 , 0x00000440 
+ 00021427  0x00005460 jam  0x00000000 , 0x0000043f 
+ 00021428  0x00005461 jam  0x00000000 , 0x000044c5 
+ 00021429  0x00005462 jam  0x00000000 , 0x000044c4 
+ 00021430  0x00005463 rtn 
+ 00021431  0x00005466 bpatchx  0x0000003e , 0x00004027 
+ 00021432  0x00005467 fetch  0x00000001 , 0x00000005 
+ 00021433  0x00005468 increase  0x00000001 , 0x0000003f 
+ 00021434  0x00005469 store  0x00000001 , 0x00000005 
+ 00021435  0x0000546a fetch  0x00000001 , 0x0000043f 
+ 00021436  0x0000546b rtnbit1  0x00000003 
+ 00021437  0x0000546c set1  0x00000003 
+ 00021438  0x0000546d store  0x00000001 , 0x0000043f 
+ 00021439  0x0000546e fetch  0x00000002 , 0x000044ba 
+ 00021440  0x0000546f store  0x00000002 , 0x0000046d 
+ 00021441  0x00005470 setarg  0x00000000 
+ 00021442  0x00005471 store  0x00000004 , 0x000044e5 
+ 00021443  0x00005472 rtn 
+ 00021444  0x00005476 bpatchx  0x0000003f , 0x00004027 
+ 00021445  0x00005477 jam  0x00000036 , 0x0000890f 
+ 00021446  0x00005478 jam  0x0000005f , 0x0000890b 
+ 00021447  0x00005479 enable  0x00000036 
+ 00021448  0x0000547a jam  0x00000007 , 0x00008914 
+ 00021449  0x0000547b call  0x00002c6c 
+ 00021450  0x0000547c fetch  0x00000001 , 0x000041e0 
+ 00021451  0x0000547d rtn  0x00000034 
+ 00021452  0x0000547e jam  0x000000b8 , 0x0000890a 
+ 00021453  0x0000547f rtn 
+ 00021454  0x00005482 bpatchx  0x00000040 , 0x00004028 
+ 00021455  0x00005483 jam  0x0000002e , 0x0000890f 
+ 00021456  0x00005484 jam  0x000000ff , 0x0000890b 
+ 00021457  0x00005485 disable  0x00000036 
+ 00021458  0x00005486 jam  0x00000003 , 0x00008914 
+ 00021459  0x00005487 arg  0x00000000 , 0x0000001b 
+ 00021460  0x00005488 rtn 
+ 00021461  0x0000548b disable  0x00000009 
+ 00021462  0x0000548c disable  0x00000007 
+ 00021463  0x0000548d fetch  0x00000003 , 0x00000467 
+ 00021464  0x0000548e iforce  0x0000000f 
+ 00021465  0x0000548f fetch  0x00000001 , 0x00000016 
+ 00021466  0x00005490 reverse  0x0000003f , 0x00000002 
+ 00021467  0x00005491 set1  0x00000001 , 0x00000002 
+ 00021468  0x00005492 rshift  0x00000002 , 0x0000000e 
+ 00021469  0x00005493 rtn 
+ 00021470  0x00005497 call  0x000053e6 
+ 00021471  0x00005498 call  0x0000291f 
+ 00021472  0x00005499 setarg  0x00000500 
+ 00021473  0x0000549a call  0x00002a8f 
+ 00021474  0x0000549b branch  0x00002924 
+ 00021475  0x0000549e branch  0x00002939 , 0x0000002d 
+ 00021476  0x000054a0 call  0x000053e6 
+ 00021477  0x000054a1 branch  0x00002933 
+ 00021478  0x000054a3 bpatchx  0x00000041 , 0x00004028 
+ 00021479  0x000054a4 call  0x00002918 
+ 00021480  0x000054a5 fetch  0x00000001 , 0x0000048c 
+ 00021481  0x000054a6 nbranch  0x000053f9 , 0x00000034 
+ 00021482  0x000054a7 fetch  0x00000001 , 0x00000016 
+ 00021483  0x000054a8 sub  0x0000003f , 0x00000024 , 0x0000003e 
+ 00021484  0x000054a9 branch  0x000053f3 , 0x00000002 
+ 00021485  0x000054aa force  0x00000000 , 0x00000002 
+ 00021486  0x000054ab rtneq  0x00000025 
+ 00021487  0x000054ac force  0x00000018 , 0x00000002 
+ 00021488  0x000054ad rtneq  0x00000026 
+ 00021489  0x000054ae force  0x0000004e , 0x00000002 
+ 00021490  0x000054af rtn 
+ 00021491  0x000054b2 sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00021492  0x000054b3 branch  0x000053f6 , 0x00000002 
+ 00021493  0x000054b4 increase  0x00000001 , 0x0000003f 
+ 00021494  0x000054b7 lshift  0x0000003f , 0x0000003f 
+ 00021495  0x000054b8 add  0x0000003f , 0x00000002 , 0x00000002 
+ 00021496  0x000054b9 rtn 
+ 00021497  0x000054bc fetch  0x00000001 , 0x00000016 
+ 00021498  0x000054bd lshift  0x0000003f , 0x00000002 
+ 00021499  0x000054be rtn 
+ 00021500  0x000054c1 arg  0x000001f4 , 0x00000002 
+ 00021501  0x000054c2 rtn  0x00000034 
+ 00021502  0x000054c3 arg  0x000000fa , 0x00000002 
+ 00021503  0x000054c4 rtneq  0x00000001 
+ 00021504  0x000054c5 arg  0x00000096 , 0x00000002 
+ 00021505  0x000054c6 rtneq  0x00000002 
+ 00021506  0x000054c7 arg  0x00000064 , 0x00000002 
+ 00021507  0x000054c8 rtneq  0x00000003 
+ 00021508  0x000054c9 arg  0x0000004b , 0x00000002 
+ 00021509  0x000054ca rtneq  0x00000004 
+ 00021510  0x000054cb arg  0x00000032 , 0x00000002 
+ 00021511  0x000054cc rtneq  0x00000005 
+ 00021512  0x000054cd arg  0x00000028 , 0x00000002 
+ 00021513  0x000054ce rtneq  0x00000006 
+ 00021514  0x000054cf arg  0x00000014 , 0x00000002 
+ 00021515  0x000054d0 rtn 
+ 00021516  0x000054d5 setarg  0x008e89be 
+ 00021517  0x000054d6 lshift8  0x0000003f , 0x0000003f 
+ 00021518  0x000054d7 or_into  0x000000d6 , 0x0000003f 
+ 00021519  0x000054d8 iforce  0x00000009 
+ 00021520  0x000054d9 setarg  0x00555555 
+ 00021521  0x000054da store  0x00000003 , 0x00000467 
+ 00021522  0x000054db rtn 
+ 00021523  0x000054de bpatchx  0x00000042 , 0x00004028 
+ 00021524  0x000054df enable  0x00000010 
+ 00021525  0x000054e0 fetch  0x00000004 , 0x00000463 
+ 00021526  0x000054e1 iforce  0x00000009 
+ 00021527  0x000054e2 call  0x00005466 
+ 00021528  0x000054e3 setarg  0x00000200 
+ 00021529  0x000054e4 branch  0x0000541c , 0x00000029 
+ 00021530  0x000054e5 fetch  0x00000002 , 0x0000044d 
+ 00021531  0x000054e6 rshift  0x0000003f , 0x0000003f 
+ 00021532  0x000054e8 arg  0x00000500 , 0x00000002 
+ 00021533  0x000054e9 iadd  0x00000002 , 0x0000003f 
+ 00021534  0x000054ea call  0x00002a24 
+ 00021535  0x000054eb deposit  0x0000001a 
+ 00021536  0x000054ec store  0x00000006 , 0x00000491 
+ 00021537  0x000054ed rtn 
+ 00021538  0x000054f0 bpatchx  0x00000043 , 0x00004028 
+ 00021539  0x000054f1 fetch  0x00000001 , 0x00000016 
+ 00021540  0x000054f2 beq  0x00000025 , 0x00005428 
+ 00021541  0x000054f3 beq  0x00000026 , 0x0000542e 
+ 00021542  0x000054f4 beq  0x00000027 , 0x00005434 
+ 00021543  0x000054f5 branch  0x00005434 
+ 00021544  0x000054f8 fetcht  0x00000001 , 0x0000448d 
+ 00021545  0x000054f9 isolate1  0x00000001 , 0x00000002 
+ 00021546  0x000054fa branch  0x0000543f , 0x00000001 
+ 00021547  0x000054fb isolate1  0x00000002 , 0x00000002 
+ 00021548  0x000054fc branch  0x00005444 , 0x00000001 
+ 00021549  0x000054fd branch  0x0000543a 
+ 00021550  0x00005501 fetcht  0x00000001 , 0x0000448d 
+ 00021551  0x00005502 isolate1  0x00000002 , 0x00000002 
+ 00021552  0x00005503 branch  0x00005444 , 0x00000001 
+ 00021553  0x00005504 isolate1  0x00000000 , 0x00000002 
+ 00021554  0x00005505 branch  0x0000543a , 0x00000001 
+ 00021555  0x00005506 branch  0x0000543f 
+ 00021556  0x0000550a fetcht  0x00000001 , 0x0000448d 
+ 00021557  0x0000550b isolate1  0x00000000 , 0x00000002 
+ 00021558  0x0000550c branch  0x0000543a , 0x00000001 
+ 00021559  0x0000550d isolate1  0x00000001 , 0x00000002 
+ 00021560  0x0000550e branch  0x0000543f , 0x00000001 
+ 00021561  0x0000550f branch  0x00005444 
+ 00021562  0x00005514 jam  0x00000025 , 0x00000016 
+ 00021563  0x00005515 fetch  0x00000001 , 0x00000ac2 
+ 00021564  0x00005516 set1  0x00000000 , 0x0000003f 
+ 00021565  0x00005517 store  0x00000001 , 0x00000ac2 
+ 00021566  0x00005518 rtn 
+ 00021567  0x0000551b jam  0x00000026 , 0x00000016 
+ 00021568  0x0000551c fetch  0x00000001 , 0x00000ac2 
+ 00021569  0x0000551d set1  0x00000001 , 0x0000003f 
+ 00021570  0x0000551e store  0x00000001 , 0x00000ac2 
+ 00021571  0x0000551f rtn 
+ 00021572  0x00005522 jam  0x00000027 , 0x00000016 
+ 00021573  0x00005523 fetch  0x00000001 , 0x00000ac2 
+ 00021574  0x00005524 set1  0x00000002 , 0x0000003f 
+ 00021575  0x00005525 store  0x00000001 , 0x00000ac2 
+ 00021576  0x00005526 rtn 
+ 00021577  0x0000552b bpatchx  0x00000044 , 0x00004028 
+ 00021578  0x0000552c add  0x00000011 , 0x00000001 , 0x00000006 
+ 00021579  0x0000552d ifetch  0x00000001 , 0x00000006 
+ 00021580  0x0000552e rtnbit0  0x00000000 
+ 00021581  0x0000552f add  0x00000011 , 0x0000001a , 0x00000005 
+ 00021582  0x00005530 ifetch  0x00000002 , 0x00000005 
+ 00021583  0x00005531 increase  0x00000001 , 0x0000003f 
+ 00021584  0x00005532 istore  0x00000002 , 0x00000005 
+ 00021585  0x00005533 add  0x00000011 , 0x00000019 , 0x00000006 
+ 00021586  0x00005534 ifetch  0x00000001 , 0x00000006 
+ 00021587  0x00005535 add  0x00000011 , 0x00000018 , 0x00000005 
+ 00021588  0x00005536 ifetcht  0x00000001 , 0x00000005 
+ 00021589  0x00005537 iadd  0x00000002 , 0x0000003f 
+ 00021590  0x00005538 sub  0x0000003f , 0x00000024 , 0x0000003e 
+ 00021591  0x00005539 branch  0x00005459 , 0x00000002 
+ 00021592  0x0000553a increase  0xffffffdb , 0x0000003f 
+ 00021593  0x0000553c istore  0x00000001 , 0x00000005 
+ 00021594  0x0000553d rtn 
+ 00021595  0x00005541 bpatchx  0x00000045 , 0x00004028 
+ 00021596  0x00005542 fetch  0x00000005 , 0x0000046f 
+ 00021597  0x00005543 force  0x00000000 , 0x00000002 
+ 00021598  0x00005544 force  0x00000025 , 0x00000039 
+ 00021599  0x00005546 bbit0  0x00000000 , 0x00005461 
+ 00021600  0x00005547 increase  0x00000001 , 0x00000002 
+ 00021601  0x00005549 rshift  0x0000003f , 0x0000003f 
+ 00021602  0x0000554a loop  0x0000545f 
+ 00021603  0x0000554b add  0x00000002 , 0xffffffff , 0x0000003f 
+ 00021604  0x0000554c store  0x00000001 , 0x00000461 
+ 00021605  0x0000554d rtn 
+ 00021606  0x00005550 bpatchx  0x00000046 , 0x00004028 
+ 00021607  0x00005551 fetch  0x00000001 , 0x00000457 
+ 00021608  0x00005552 iforce  0x00000007 
+ 00021609  0x00005553 fetcht  0x00000005 , 0x0000046f 
+ 00021610  0x00005554 qisolate1  0x00000002 
+ 00021611  0x00005555 branch  0x0000547c , 0x00000001 
+ 00021612  0x00005557 bpatchx  0x00000047 , 0x00004028 
+ 00021613  0x00005558 fetch  0x00000001 , 0x00000461 
+ 00021614  0x00005559 isub  0x00000007 , 0x0000003f 
+ 00021615  0x0000555a branch  0x00005472 , 0x00000002 
+ 00021616  0x0000555b sub  0x0000003f , 0xffffffff , 0x00000007 
+ 00021617  0x0000555c branch  0x0000546c 
+ 00021618  0x0000555e copy  0x00000007 , 0x00000039 
+ 00021619  0x0000555f force  0x00000000 , 0x00000007 
+ 00021620  0x00005561 qisolate1  0x00000002 
+ 00021621  0x00005562 branch  0x00005477 , 0x00000001 
+ 00021622  0x00005563 increase  0x00000001 , 0x00000039 
+ 00021623  0x00005565 deposit  0x00000039 
+ 00021624  0x00005566 branch  0x0000547c , 0x00000034 
+ 00021625  0x00005567 increase  0x00000001 , 0x00000007 
+ 00021626  0x00005568 increase  0xffffffff , 0x00000039 
+ 00021627  0x00005569 branch  0x00005474 
+ 00021628  0x0000556b deposit  0x00000007 
+ 00021629  0x0000556c store  0x00000001 , 0x00000016 
+ 00021630  0x0000556d rtn 
+ 00021631  0x00005571 branch  0x00005482 , 0x00000029 
+ 00021632  0x00005572 until  0x0000003e , 0x00000003 
+ 00021633  0x00005573 rtn 
+ 00021634  0x00005576 arg  0x00000ea0 , 0x0000000b 
+ 00021635  0x00005577 until  0x00000023 , 0x00000026 
+ 00021636  0x00005578 rtn 
+ 00021637  0x0000557b disable  0x00000010 
+ 00021638  0x0000557c fetch  0x00000002 , 0x0000436c 
+ 00021639  0x0000557d copy  0x0000003f , 0x0000000b 
+ 00021640  0x0000557e branch  0x0000548e 
+ 00021641  0x00005582 bpatchx  0x00000048 , 0x00004029 
+ 00021642  0x00005583 enable  0x00000010 
+ 00021643  0x00005584 fetch  0x00000002 , 0x0000044d 
+ 00021644  0x00005585 fetcht  0x00000004 , 0x000044e5 
+ 00021645  0x00005586 iadd  0x00000002 , 0x0000000b 
+ 00021646  0x00005588 call  0x000053de 
+ 00021647  0x0000558a bpatchx  0x00000049 , 0x00004029 
+ 00021648  0x0000558b call  0x000053d5 
+ 00021649  0x0000558c disable  0x0000002d 
+ 00021650  0x0000558d enable  0x0000000d 
+ 00021651  0x0000558e enable  0x00000021 
+ 00021652  0x0000558f disable  0x00000020 
+ 00021653  0x00005590 copy  0x0000000b , 0x0000001b 
+ 00021654  0x00005591 correlate  0x0000003e , 0x00000003 
+ 00021655  0x00005592 branch  0x0000549a , 0x0000002e 
+ 00021656  0x00005593 copy  0x0000001a , 0x00000002 
+ 00021657  0x00005594 storet  0x00000006 , 0x0000009a 
+ 00021658  0x00005596 nbranch  0x0000264d , 0x00000018 
+ 00021659  0x00005597 branch  0x000054a1 , 0x0000002e 
+ 00021660  0x00005598 arg  0x000001e0 , 0x00000029 
+ 00021661  0x00005599 copy  0x00000021 , 0x00000028 
+ 00021662  0x0000559a fetch  0x00000001 , 0x0000043f 
+ 00021663  0x0000559b bbit0  0x00000003 , 0x000054a1 
+ 00021664  0x0000559c call  0x00002b05 , 0x0000002b 
+ 00021665  0x0000559e bpatchx  0x0000004a , 0x00004029 
+ 00021666  0x0000559f call  0x000029bb 
+ 00021667  0x000055a0 enable  0x00000007 
+ 00021668  0x000055a1 enable  0x00000009 
+ 00021669  0x000055a2 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00021670  0x000055a3 rshift3  0x0000000c , 0x0000003f 
+ 00021671  0x000055a4 store  0x00000001 , 0x000002d9 
+ 00021672  0x000055a5 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00021673  0x000055a6 rshift3  0x0000000c , 0x0000003f 
+ 00021674  0x000055a7 istore  0x00000001 , 0x00000005 
+ 00021675  0x000055a8 and  0x0000003f , 0x0000003f , 0x00000039 
+ 00021676  0x000055a9 branch  0x000054b1 , 0x00000005 
+ 00021677  0x000055ac parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00021678  0x000055ad rshift3  0x0000000c , 0x0000003f 
+ 00021679  0x000055ae istore  0x00000001 , 0x00000005 
+ 00021680  0x000055af loop  0x000054ad 
+ 00021681  0x000055b2 bpatchx  0x0000004b , 0x00004029 
+ 00021682  0x000055b3 parse  0x00000003 , 0x00000000 , 0x00000018 
+ 00021683  0x000055b4 enable  0x00000010 
+ 00021684  0x000055b5 arg  0x00000664 , 0x0000001b 
+ 00021685  0x000055b6 rshift32  0x0000003f , 0x0000003f 
+ 00021686  0x000055b7 rshift16  0x0000003f , 0x0000003f 
+ 00021687  0x000055b8 istore  0x00000003 , 0x00000005 
+ 00021688  0x000055b9 branch  0x0000264d , 0x00000006 
+ 00021689  0x000055ba enable  0x0000002d 
+ 00021690  0x000055bb fetch  0x00000001 , 0x00000017 
+ 00021691  0x000055bc add  0x0000003f , 0x00000000 , 0x00000011 
+ 00021692  0x000055bd call  0x00002981 
+ 00021693  0x000055be disable  0x0000000d 
+ 00021694  0x000055bf branch  0x00002918 
+ 00021695  0x000055c2 bpatchx  0x0000004c , 0x00004029 
+ 00021696  0x000055c3 call  0x000054c9 
+ 00021697  0x000055c5 fetcht  0x00000001 , 0x00000017 
+ 00021698  0x000055c6 call  0x0000291f 
+ 00021699  0x000055c7 call  0x00002924 
+ 00021700  0x000055c8 enable  0x00000010 
+ 00021701  0x000055c9 arg  0x0000157c , 0x0000000b 
+ 00021702  0x000055ca branch  0x0000548f 
+ 00021703  0x000055cd call  0x000054c9 
+ 00021704  0x000055ce branch  0x0000264d 
+ 00021705  0x000055d1 bpatchx  0x0000004d , 0x00004029 
+ 00021706  0x000055d2 call  0x000053d5 
+ 00021707  0x000055d3 call  0x000053e3 
+ 00021708  0x000055d4 branch  0x000054cd 
+ 00021709  0x000055d7 set1  0x00000000 , 0x00000015 
+ 00021710  0x000055d8 enable  0x0000001d 
+ 00021711  0x000055d9 enable  0x00000020 
+ 00021712  0x000055da disable  0x00000021 
+ 00021713  0x000055db call  0x0000547f 
+ 00021714  0x000055dc rshift16  0x00000009 , 0x0000003f 
+ 00021715  0x000055dd rshift8  0x0000003f , 0x0000003f 
+ 00021716  0x000055de rshift4  0x0000003f , 0x0000003f 
+ 00021717  0x000055df inject  0x00000003 , 0x00000028 
+ 00021718  0x000055e0 enable  0x00000007 
+ 00021719  0x000055e1 enable  0x00000009 
+ 00021720  0x000055e2 bpatchx  0x0000004e , 0x00004029 
+ 00021721  0x000055e3 fetch  0x00000001 , 0x000043dc 
+ 00021722  0x000055e4 inject  0x00000003 , 0x00000008 
+ 00021723  0x000055e5 ifetch  0x00000001 , 0x00000006 
+ 00021724  0x000055e6 and  0x0000003f , 0x0000003f , 0x00000039 
+ 00021725  0x000055e7 inject  0x00000003 , 0x00000008 
+ 00021726  0x000055e8 branch  0x000054e2 , 0x00000005 
+ 00021727  0x000055ea ifetch  0x00000001 , 0x00000006 
+ 00021728  0x000055eb inject  0x00000003 , 0x00000008 
+ 00021729  0x000055ec loop  0x000054df 
+ 00021730  0x000055ef enable  0x00000008 
+ 00021731  0x000055f0 inject  0x00000003 , 0x00000018 
+ 00021732  0x000055f1 disable  0x00000008 
+ 00021733  0x000055f2 until  0x0000003e , 0x00000027 
+ 00021734  0x000055f3 nop  0x00000064 
+ 00021735  0x000055f4 disable  0x0000001d 
+ 00021736  0x000055f5 rtn 
+ 00021737  0x000055f8 bpatchx  0x0000004f , 0x00004029 
+ 00021738  0x000055f9 fetch  0x00000001 , 0x00004484 
+ 00021739  0x000055fa beq  0x00000001 , 0x000054f9 
+ 00021740  0x000055fb fetch  0x00000001 , 0x00004485 
+ 00021741  0x000055fc lshift4  0x0000003f , 0x0000003f 
+ 00021742  0x000055fd lshift2  0x0000003f , 0x0000003f 
+ 00021743  0x000055fe store  0x00000001 , 0x000043dc 
+ 00021744  0x000055ff fetcht  0x00000001 , 0x0000436f 
+ 00021745  0x00005600 add  0x00000002 , 0x00000006 , 0x0000003f 
+ 00021746  0x00005601 store  0x00000001 , 0x000043dd 
+ 00021747  0x00005602 fetch  0x00000006 , 0x000044a0 
+ 00021748  0x00005603 store  0x00000006 , 0x000043de 
+ 00021749  0x00005604 copy  0x00000002 , 0x00000039 
+ 00021750  0x00005605 arg  0x00004370 , 0x00000006 
+ 00021751  0x00005606 call  0x00007ef4 
+ 00021752  0x00005607 branch  0x00005504 
+ 00021753  0x00005609 fetch  0x00000001 , 0x00004486 
+ 00021754  0x0000560a lshift4  0x0000003f , 0x0000003f 
+ 00021755  0x0000560b lshift2  0x0000003f , 0x0000003f 
+ 00021756  0x0000560c increase  0x00000001 , 0x0000003f 
+ 00021757  0x0000560d store  0x00000001 , 0x000043dc 
+ 00021758  0x0000560e setarg  0x0000000c 
+ 00021759  0x0000560f store  0x00000001 , 0x000043dd 
+ 00021760  0x00005610 fetch  0x00000006 , 0x000044a0 
+ 00021761  0x00005611 store  0x00000006 , 0x000043de 
+ 00021762  0x00005612 fetch  0x00000006 , 0x000041d0 
+ 00021763  0x00005613 istore  0x00000006 , 0x00000005 
+ 00021764  0x00005615 bpatchx  0x00000050 , 0x0000402a 
+ 00021765  0x00005616 fetch  0x00000001 , 0x00000000 
+ 00021766  0x00005617 increase  0x00000001 , 0x0000003f 
+ 00021767  0x00005618 store  0x00000001 , 0x00000000 
+ 00021768  0x00005619 arg  0x00000708 , 0x0000001b 
+ 00021769  0x0000561a disable  0x0000002d 
+ 00021770  0x0000561b branch  0x000054bf 
+ 00021771  0x0000561e bpatchx  0x00000051 , 0x0000402a 
+ 00021772  0x0000561f fetch  0x00000001 , 0x0000449e 
+ 00021773  0x00005620 rtnne  0x00000001 
+ 00021774  0x00005621 fetch  0x00000001 , 0x00000000 
+ 00021775  0x00005622 increase  0x00000001 , 0x0000003f 
+ 00021776  0x00005623 store  0x00000001 , 0x00000000 
+ 00021777  0x00005624 arg  0x00000c03 , 0x00000002 
+ 00021778  0x00005625 fetch  0x00000001 , 0x0000449f 
+ 00021779  0x00005626 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
+ 00021780  0x00005627 copy  0x00000011 , 0x0000003f 
+ 00021781  0x00005628 nsetflag  0x00000034 , 0x00000007 , 0x00000002 
+ 00021782  0x00005629 storet  0x00000002 , 0x000043dc 
+ 00021783  0x0000562a fetch  0x00000006 , 0x000044a0 
+ 00021784  0x0000562b istore  0x00000006 , 0x00000005 
+ 00021785  0x0000562c fetch  0x00000006 , 0x0000044f 
+ 00021786  0x0000562d istore  0x00000006 , 0x00000005 
+ 00021787  0x0000562e branch  0x000054bf 
+ 00021788  0x00005632 bpatchx  0x00000052 , 0x0000402a 
+ 00021789  0x00005633 arg  0x00000004 , 0x00000002 
+ 00021790  0x00005634 fetch  0x00000001 , 0x00004485 
+ 00021791  0x00005635 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
+ 00021792  0x00005636 storet  0x00000001 , 0x000043dc 
+ 00021793  0x00005637 fetcht  0x00000001 , 0x0000438f 
+ 00021794  0x00005638 add  0x00000002 , 0x00000006 , 0x0000003f 
+ 00021795  0x00005639 store  0x00000001 , 0x000043dd 
+ 00021796  0x0000563a fetch  0x00000006 , 0x000044a0 
+ 00021797  0x0000563b store  0x00000006 , 0x000043de 
+ 00021798  0x0000563c arg  0x00004390 , 0x00000006 
+ 00021799  0x0000563d copy  0x00000002 , 0x00000039 
+ 00021800  0x0000563e call  0x00007ef4 
+ 00021801  0x0000563f call  0x000054c7 
+ 00021802  0x00005640 branch  0x00005706 
+ 00021803  0x00005643 bpatchx  0x00000053 , 0x0000402a 
+ 00021804  0x00005644 force  0xffffffff , 0x0000003f 
+ 00021805  0x00005645 setsect  0x00000002 , 0x00000001 
+ 00021806  0x00005646 store  0x00000005 , 0x0000046f 
+ 00021807  0x00005647 call  0x0000545b 
+ 00021808  0x00005648 force  0x00000004 , 0x00000039 
+ 00021809  0x00005649 arg  0x00000463 , 0x00000005 
+ 00021810  0x0000564a call  0x0000630d 
+ 00021811  0x0000564b fetch  0x00000002 , 0x0000449c 
+ 00021812  0x0000564c store  0x00000002 , 0x0000046d 
+ 00021813  0x0000564e random  0x0000003f 
+ 00021814  0x0000564f and_into  0x0000000f , 0x0000003f 
+ 00021815  0x00005650 sub  0x0000003f , 0x00000004 , 0x0000003e 
+ 00021816  0x00005651 branch  0x00005535 , 0x00000002 
+ 00021817  0x00005652 store  0x00000001 , 0x00000458 
+ 00021818  0x00005653 store  0x00000001 , 0x000006e6 
+ 00021819  0x00005654 bpatchx  0x00000054 , 0x0000402a 
+ 00021820  0x00005655 fetcht  0x00000002 , 0x00004367 
+ 00021821  0x00005656 storet  0x00000002 , 0x00000441 
+ 00021822  0x00005657 copy  0x00000002 , 0x00000013 
+ 00021823  0x00005658 add  0x00000022 , 0x00000007 , 0x0000003f 
+ 00021824  0x00005659 idiv  0x00000013 
+ 00021825  0x0000565a call  0x00007f86 
+ 00021826  0x0000565b remainder  0x00000011 
+ 00021827  0x0000565c isub  0x00000011 , 0x0000003f 
+ 00021828  0x0000565d iadd  0x00000013 , 0x0000003f 
+ 00021829  0x0000565e fetcht  0x00000002 , 0x00004365 
+ 00021830  0x0000565f iadd  0x00000002 , 0x0000003f 
+ 00021831  0x00005660 store  0x00000004 , 0x00000443 
+ 00021832  0x00005661 isub  0x00000022 , 0x00000011 
+ 00021833  0x00005662 increase  0xfffffffa , 0x00000011 
+ 00021834  0x00005663 arg  0x00002205 , 0x00000012 
+ 00021835  0x00005664 fetch  0x00000001 , 0x00004495 
+ 00021836  0x00005665 nsetflag  0x00000034 , 0x00000006 , 0x00000012 
+ 00021837  0x00005666 fetch  0x00000001 , 0x0000448e 
+ 00021838  0x00005667 nsetflag  0x00000034 , 0x00000007 , 0x00000012 
+ 00021839  0x00005668 copy  0x00000012 , 0x0000003f 
+ 00021840  0x00005669 store  0x00000002 , 0x000043dc 
+ 00021841  0x0000566a fetch  0x00000006 , 0x000044a0 
+ 00021842  0x0000566b istore  0x00000006 , 0x00000005 
+ 00021843  0x0000566c fetch  0x00000006 , 0x0000044f 
+ 00021844  0x0000566d istore  0x00000006 , 0x00000005 
+ 00021845  0x0000566e fetch  0x00000004 , 0x00000463 
+ 00021846  0x0000566f istore  0x00000004 , 0x00000005 
+ 00021847  0x00005670 random  0x0000003f 
+ 00021848  0x00005671 istore  0x00000002 , 0x00000005 
+ 00021849  0x00005672 random  0x0000003f 
+ 00021850  0x00005673 istore  0x00000001 , 0x00000005 
+ 00021851  0x00005674 force  0x00000002 , 0x0000003f 
+ 00021852  0x00005675 istore  0x00000001 , 0x00000005 
+ 00021853  0x00005676 rshift2  0x00000011 , 0x0000003f 
+ 00021854  0x00005677 istore  0x00000002 , 0x00000005 
+ 00021855  0x00005678 rshift2  0x00000013 , 0x0000003f 
+ 00021856  0x00005679 istore  0x00000002 , 0x00000005 
+ 00021857  0x0000567a bpatchx  0x00000055 , 0x0000402a 
+ 00021858  0x0000567b setarg  0x00000000 
+ 00021859  0x0000567c istore  0x00000002 , 0x00000005 
+ 00021860  0x0000567d fetch  0x00000002 , 0x0000449c 
+ 00021861  0x0000567e istore  0x00000002 , 0x00000005 
+ 00021862  0x0000567f fetch  0x00000005 , 0x0000046f 
+ 00021863  0x00005680 istore  0x00000005 , 0x00000005 
+ 00021864  0x00005681 fetch  0x00000001 , 0x00000458 
+ 00021865  0x00005682 arg  0x000000a0 , 0x00000002 
+ 00021866  0x00005683 ior  0x00000002 , 0x0000003f 
+ 00021867  0x00005684 istore  0x00000001 , 0x00000005 
+ 00021868  0x00005685 call  0x000054c7 
+ 00021869  0x00005686 setarg  0x000043dc 
+ 00021870  0x00005687 add  0x0000003f , 0x00000012 , 0x00000006 
+ 00021871  0x00005688 ifetch  0x00000003 , 0x00000006 
+ 00021872  0x00005689 store  0x00000003 , 0x00000467 
+ 00021873  0x0000568a rtn 
+ 00021874  0x0000568d bpatchx  0x00000056 , 0x0000402a 
+ 00021875  0x0000568e disable  0x00000029 
+ 00021876  0x0000568f branch  0x0000540c 
+ 00021877  0x00005694 fetch  0x00000001 , 0x0000043f 
+ 00021878  0x00005695 rtnbit0  0x00000005 
+ 00021879  0x00005696 fetch  0x00000002 , 0x00000459 
+ 00021880  0x00005697 fetcht  0x00000002 , 0x0000045f 
+ 00021881  0x00005698 isub  0x00000002 , 0x0000003f 
+ 00021882  0x00005699 nrtn  0x00000002 
+ 00021883  0x0000569a store  0x00000002 , 0x00000a9a 
+ 00021884  0x0000569b bpatchx  0x00000057 , 0x0000402a 
+ 00021885  0x0000569c fetch  0x00000001 , 0x0000043f 
+ 00021886  0x0000569d set0  0x00000005 , 0x0000003f 
+ 00021887  0x0000569e set0  0x00000003 , 0x0000003f 
+ 00021888  0x0000569f store  0x00000001 , 0x0000043f 
+ 00021889  0x000056a0 fetch  0x00000004 , 0x00000443 
+ 00021890  0x000056a1 fetcht  0x00000002 , 0x00000441 
+ 00021891  0x000056a2 storet  0x00000002 , 0x00000aa2 
+ 00021892  0x000056a3 isub  0x00000002 , 0x00000011 
+ 00021893  0x000056a4 bpatchx  0x00000058 , 0x0000402b 
+ 00021894  0x000056a5 fetch  0x00000001 , 0x000043d3 
+ 00021895  0x000056a6 store  0x00000001 , 0x0000046a 
+ 00021896  0x000056a7 ifetcht  0x00000002 , 0x00000006 
+ 00021897  0x000056a8 ifetch  0x00000002 , 0x00000006 
+ 00021898  0x000056a9 lshift2  0x0000003f , 0x0000003f 
+ 00021899  0x000056aa store  0x00000002 , 0x00000441 
+ 00021900  0x000056ab lshift2  0x00000002 , 0x00000002 
+ 00021901  0x000056ac iadd  0x00000002 , 0x0000003f 
+ 00021902  0x000056ad ifetcht  0x00000004 , 0x00000006 
+ 00021903  0x000056ae storet  0x00000004 , 0x0000046b 
+ 00021904  0x000056af iadd  0x00000011 , 0x0000003f 
+ 00021905  0x000056b0 copy  0x0000003f , 0x00000014 
+ 00021906  0x000056b1 fetch  0x00000002 , 0x00000441 
+ 00021907  0x000056b2 fetcht  0x00000002 , 0x00000aa2 
+ 00021908  0x000056b3 isub  0x00000002 , 0x0000003f 
+ 00021909  0x000056b4 fetcht  0x00000002 , 0x00000a9a 
+ 00021910  0x000056b5 imul32  0x00000002 , 0x0000003f 
+ 00021911  0x000056b6 iadd  0x00000014 , 0x0000003f 
+ 00021912  0x000056b7 store  0x00000004 , 0x00000443 
+ 00021913  0x000056b8 call  0x00005713 
+ 00021914  0x000056b9 fetch  0x00000002 , 0x0000046d 
+ 00021915  0x000056ba store  0x00000002 , 0x000044ba 
+ 00021916  0x000056bb rtn 
+ 00021917  0x000056bf bpatchx  0x00000059 , 0x0000402b 
+ 00021918  0x000056c0 fetch  0x00000001 , 0x0000043f 
+ 00021919  0x000056c1 rtnbit0  0x00000006 
+ 00021920  0x000056c2 fetch  0x00000002 , 0x00000459 
+ 00021921  0x000056c3 fetcht  0x00000002 , 0x0000045f 
+ 00021922  0x000056c4 isub  0x00000002 , 0x0000003f 
+ 00021923  0x000056c5 nrtn  0x00000002 
+ 00021924  0x000056c6 fetch  0x00000001 , 0x0000043f 
+ 00021925  0x000056c7 set0  0x00000006 , 0x0000003f 
+ 00021926  0x000056c8 store  0x00000001 , 0x0000043f 
+ 00021927  0x000056c9 fetch  0x00000005 , 0x000043ce 
+ 00021928  0x000056ca store  0x00000005 , 0x0000046f 
+ 00021929  0x000056cb branch  0x0000545b 
+ 00021930  0x000056cf bpatchx  0x0000005a , 0x0000402b 
+ 00021931  0x000056d0 call  0x000056ed 
+ 00021932  0x000056d1 call  0x000055c0 
+ 00021933  0x000056d2 fetch  0x00000001 , 0x000002d9 
+ 00021934  0x000056d3 isolate1  0x00000004 , 0x0000003f 
+ 00021935  0x000056d4 setflag  0x00000001 , 0x0000002a , 0x00000000 
+ 00021936  0x000056d5 rshift  0x0000003f , 0x0000003f 
+ 00021937  0x000056d6 ixor  0x00000002 , 0x0000003f 
+ 00021938  0x000056d7 isolate1  0x00000002 , 0x0000003f 
+ 00021939  0x000056d8 setflag  0x00000001 , 0x0000000f , 0x00000000 
+ 00021940  0x000056d9 rtnmark1  0x0000000f 
+ 00021941  0x000056da fetch  0x00000001 , 0x000002da 
+ 00021942  0x000056db branch  0x000055bc , 0x00000034 
+ 00021943  0x000056dc fetch  0x00000001 , 0x0000043f 
+ 00021944  0x000056dd bbit0  0x00000004 , 0x000055bc 
+ 00021945  0x000056de call  0x0000748d 
+ 00021946  0x000056df call  0x000073fb 
+ 00021947  0x000056e0 nrtn  0x00000034 
+ 00021948  0x000056e2 fetcht  0x00000001 , 0x00000456 
+ 00021949  0x000056e3 setflip  0x00000002 , 0x00000002 
+ 00021950  0x000056e4 storet  0x00000001 , 0x00000456 
+ 00021951  0x000056e5 rtn 
+ 00021952  0x000056e9 bpatchx  0x0000005b , 0x0000402b 
+ 00021953  0x000056ea fetcht  0x00000001 , 0x00000456 
+ 00021954  0x000056eb isolate0  0x00000005 , 0x00000002 
+ 00021955  0x000056ec rtn  0x00000001 
+ 00021956  0x000056ed fetch  0x00000001 , 0x000002d9 
+ 00021957  0x000056ee lshift  0x0000003f , 0x0000003f 
+ 00021958  0x000056ef ixor  0x00000002 , 0x0000003f 
+ 00021959  0x000056f0 rtnbit0  0x00000003 
+ 00021960  0x000056f1 set0  0x00000005 , 0x00000002 
+ 00021961  0x000056f2 setflip  0x00000003 , 0x00000002 
+ 00021962  0x000056f3 storet  0x00000001 , 0x00000456 
+ 00021963  0x000056f4 compare  0x00000003 , 0x00000002 , 0x00000003 
+ 00021964  0x000056f5 nrtn  0x00000001 
+ 00021965  0x000056f6 fetch  0x00000001 , 0x000043de 
+ 00021966  0x000056f7 beq  0x00000005 , 0x000055d2 
+ 00021967  0x000056f8 fetch  0x00000001 , 0x000044c5 
+ 00021968  0x000056f9 beq  0x00000002 , 0x000055d6 
+ 00021969  0x000056fa rtn 
+ 00021970  0x000056fe fetch  0x00000001 , 0x0000043f 
+ 00021971  0x000056ff set1  0x00000004 , 0x0000003f 
+ 00021972  0x00005700 store  0x00000001 , 0x0000043f 
+ 00021973  0x00005701 rtn 
+ 00021974  0x00005704 bpatchx  0x0000005c , 0x0000402b 
+ 00021975  0x00005705 jam  0x00000000 , 0x000044c5 
+ 00021976  0x00005706 arg  0x00000000 , 0x0000003f 
+ 00021977  0x00005707 store  0x00000004 , 0x0000440d 
+ 00021978  0x00005708 store  0x00000005 , 0x00004403 
+ 00021979  0x00005709 set1  0x00000027 , 0x0000003f 
+ 00021980  0x0000570a store  0x00000005 , 0x00004408 
+ 00021981  0x0000570b fetch  0x00000001 , 0x0000043f 
+ 00021982  0x0000570c set0  0x00000004 , 0x0000003f 
+ 00021983  0x0000570d store  0x00000001 , 0x0000043f 
+ 00021984  0x0000570e rtn 
+ 00021985  0x00005712 bpatchx  0x0000005d , 0x0000402b 
+ 00021986  0x00005713 call  0x00005422 
+ 00021987  0x00005714 call  0x00005485 
+ 00021988  0x00005715 fetch  0x00000001 , 0x00000001 
+ 00021989  0x00005716 increase  0x00000001 , 0x0000003f 
+ 00021990  0x00005717 store  0x00000001 , 0x00000001 
+ 00021991  0x00005718 rtn 
+ 00021992  0x0000571c bpatchx  0x0000005e , 0x0000402b 
+ 00021993  0x0000571d fetch  0x00000001 , 0x00004369 
+ 00021994  0x0000571e rtnne  0x00000001 
+ 00021995  0x0000571f arg  0x00000002 , 0x00000007 
+ 00021996  0x00005720 call  0x00007f16 
+ 00021997  0x00005721 nrtn  0x00000034 
+ 00021998  0x00005722 fetch  0x00000002 , 0x0000436a 
+ 00021999  0x00005723 fetcht  0x00000002 , 0x0000436c 
+ 00022000  0x00005724 isub  0x00000002 , 0x0000003f 
+ 00022001  0x00005725 arg  0x00000002 , 0x00000007 
+ 00022002  0x00005726 call  0x00007f08 
+ 00022003  0x00005727 disable  0x00000029 
+ 00022004  0x00005728 call  0x00005572 
+ 00022005  0x00005729 call  0x000055e1 
+ 00022006  0x0000572a nrtn  0x0000002d 
+ 00022007  0x0000572b bpatchx  0x0000005f , 0x0000402b 
+ 00022008  0x0000572c fetch  0x00000006 , 0x000002db 
+ 00022009  0x0000572d store  0x00000006 , 0x0000044f 
+ 00022010  0x00005730 fetch  0x00000001 , 0x00000002 
+ 00022011  0x00005731 increase  0x00000001 , 0x0000003f 
+ 00022012  0x00005732 store  0x00000001 , 0x00000002 
+ 00022013  0x00005733 call  0x00005608 
+ 00022014  0x00005734 rtn  0x00000029 
+ 00022015  0x00005735 call  0x0000550b 
+ 00022016  0x00005736 nrtn  0x0000002d 
+ 00022017  0x00005737 bpatchx  0x00000060 , 0x0000402c 
+ 00022018  0x00005738 fetch  0x00000001 , 0x00000004 
+ 00022019  0x00005739 increase  0x00000001 , 0x0000003f 
+ 00022020  0x0000573a store  0x00000001 , 0x00000004 
+ 00022021  0x0000573b fetch  0x00000009 , 0x000002e1 
+ 00022022  0x0000573c store  0x00000009 , 0x00000101 
+ 00022023  0x0000573d rtn 
+ 00022024  0x00005740 bpatchx  0x00000061 , 0x0000402c 
+ 00022025  0x00005741 fetch  0x00000001 , 0x0000049b 
+ 00022026  0x00005742 rtnne  0x0000001b 
+ 00022027  0x00005743 fetch  0x00000006 , 0x0000044f 
+ 00022028  0x00005744 fetcht  0x00000006 , 0x0000448f 
+ 00022029  0x00005745 isub  0x00000002 , 0x0000003e 
+ 00022030  0x00005746 nrtn  0x00000005 
+ 00022031  0x00005747 call  0x0000223b 
+ 00022032  0x00005748 nrtn  0x00000005 
+ 00022033  0x00005749 call  0x0000552b 
+ 00022034  0x0000574a call  0x00005340 
+ 00022035  0x0000574b bpatchx  0x00000062 , 0x0000402c 
+ 00022036  0x0000574c jam  0x00000000 , 0x000041ce 
+ 00022037  0x0000574d jam  0x00000000 , 0x00000476 
+ 00022038  0x0000574e jam  0x00000000 , 0x00004369 
+ 00022039  0x0000574f jam  0x00000000 , 0x0000049b 
+ 00022040  0x00005750 branch  0x00002223 
+ 00022041  0x00005753 arg  0x00000001 , 0x00000011 
+ 00022042  0x00005754 fetch  0x00000001 , 0x000002d9 
+ 00022043  0x00005755 rtnbit1  0x00000006 
+ 00022044  0x00005756 arg  0x00000000 , 0x00000011 
+ 00022045  0x00005757 rtn 
+ 00022046  0x0000575c bpatchx  0x00000063 , 0x0000402c 
+ 00022047  0x0000575d fetch  0x00000001 , 0x00000456 
+ 00022048  0x0000575e rtnbit1  0x00000005 
+ 00022049  0x0000575f call  0x00005642 
+ 00022050  0x00005760 call  0x00005873 
+ 00022051  0x00005761 branch  0x00005664 , 0x00000034 
+ 00022052  0x00005762 ifetch  0x00000001 , 0x00000006 
+ 00022053  0x00005763 ifetcht  0x00000001 , 0x00000006 
+ 00022054  0x00005764 copy  0x00000002 , 0x00000011 
+ 00022055  0x00005765 isub  0x00000011 , 0x0000003f 
+ 00022056  0x00005766 arg  0x0000001b , 0x00000002 
+ 00022057  0x00005767 call  0x00007fdd 
+ 00022058  0x00005768 copy  0x0000003f , 0x00000002 
+ 00022059  0x00005769 ifetch  0x00000001 , 0x00000006 
+ 00022060  0x0000576a copy  0x0000003f , 0x00000001 
+ 00022061  0x0000576b copy  0x00000011 , 0x0000003f 
+ 00022062  0x0000576c iadd  0x00000006 , 0x00000006 
+ 00022063  0x0000576d arg  0x000043de , 0x00000005 
+ 00022064  0x0000576e copy  0x00000002 , 0x00000039 
+ 00022065  0x0000576f call  0x00007f01 
+ 00022066  0x00005770 call  0x00005654 
+ 00022067  0x00005771 call  0x00005666 
+ 00022068  0x00005773 call  0x00005873 
+ 00022069  0x00005774 ifetch  0x00000001 , 0x00000006 
+ 00022070  0x00005775 copy  0x0000003f , 0x00000011 
+ 00022071  0x00005776 copy  0x00000006 , 0x00000013 
+ 00022072  0x00005777 ifetcht  0x00000001 , 0x00000006 
+ 00022073  0x00005778 copy  0x00000002 , 0x00000012 
+ 00022074  0x00005779 isub  0x00000012 , 0x0000003f 
+ 00022075  0x0000577a arg  0x0000001b , 0x00000002 
+ 00022076  0x0000577b call  0x00007fdd 
+ 00022077  0x0000577c iadd  0x00000012 , 0x0000003f 
+ 00022078  0x0000577d istore  0x00000001 , 0x00000013 
+ 00022079  0x0000577e isub  0x00000011 , 0x0000003e 
+ 00022080  0x0000577f nrtn  0x00000005 
+ 00022081  0x00005780 branch  0x00005896 
+ 00022082  0x00005784 call  0x00005649 
+ 00022083  0x00005785 rtnmark1  0x00000029 
+ 00022084  0x00005786 fetch  0x00000001 , 0x000044e9 
+ 00022085  0x00005787 bbit0  0x00000002 , 0x00005652 
+ 00022086  0x00005788 call  0x00005876 
+ 00022087  0x00005789 branch  0x00005652 , 0x00000034 
+ 00022088  0x0000578a branch  0x00005650 
+ 00022089  0x0000578e call  0x00005873 
+ 00022090  0x0000578f branch  0x00005652 , 0x00000034 
+ 00022091  0x00005790 ifetch  0x00000001 , 0x00000006 
+ 00022092  0x00005791 ifetcht  0x00000001 , 0x00000006 
+ 00022093  0x00005792 isub  0x00000002 , 0x0000003f 
+ 00022094  0x00005793 sub  0x0000003f , 0x0000001b , 0x0000003e 
+ 00022095  0x00005794 branch  0x00005652 , 0x00000002 
+ 00022096  0x00005796 set1  0x00000029 , 0x00000000 
+ 00022097  0x00005797 rtn 
+ 00022098  0x0000579a set0  0x00000029 , 0x00000000 
+ 00022099  0x0000579b rtn 
+ 00022100  0x0000579e copy  0x00000011 , 0x0000003f 
+ 00022101  0x0000579f rtn  0x00000034 
+ 00022102  0x000057a0 arg  0x00000001 , 0x00000001 
+ 00022103  0x000057a1 rtn 
+ 00022104  0x000057a5 bpatchx  0x00000064 , 0x0000402c 
+ 00022105  0x000057a6 increase  0x00000001 , 0x00000002 
+ 00022106  0x000057a7 call  0x0000576a 
+ 00022107  0x000057a8 increase  0xfffffffe , 0x00000006 
+ 00022108  0x000057a9 ifetch  0x00000002 , 0x00000006 
+ 00022109  0x000057aa arg  0x00002902 , 0x00000002 
+ 00022110  0x000057ab isub  0x00000002 , 0x0000003e 
+ 00022111  0x000057ac nrtn  0x00000005 
+ 00022112  0x000057ad increase  0x00000001 , 0x00000006 
+ 00022113  0x000057ae copy  0x00000006 , 0x00000011 
+ 00022114  0x000057af ifetch  0x00000001 , 0x00000006 
+ 00022115  0x000057b0 rtn 
+ 00022116  0x000057b4 force  0x00000000 , 0x00000002 
+ 00022117  0x000057b5 force  0x00000001 , 0x00000001 
+ 00022118  0x000057b8 bpatchx  0x00000065 , 0x0000402c 
+ 00022119  0x000057b9 storet  0x00000001 , 0x000043dd 
+ 00022120  0x000057ba fetcht  0x00000001 , 0x00000456 
+ 00022121  0x000057bb set1  0x00000005 , 0x00000002 
+ 00022122  0x000057bc and  0x00000002 , 0x000000fc , 0x0000003f 
+ 00022123  0x000057bd ior  0x00000001 , 0x0000003f 
+ 00022124  0x000057be store  0x00000001 , 0x00000456 
+ 00022125  0x000057bf and_into  0x0000001f , 0x0000003f 
+ 00022126  0x000057c0 isolate1  0x00000029 , 0x00000000 
+ 00022127  0x000057c1 setflag  0x00000001 , 0x00000004 , 0x0000003f 
+ 00022128  0x000057c2 store  0x00000001 , 0x000043dc 
+ 00022129  0x000057c4 fetch  0x00000001 , 0x000043dc 
+ 00022130  0x000057c5 compare  0x00000001 , 0x00000001 , 0x00000003 
+ 00022131  0x000057c6 nbranch  0x00005676 , 0x00000001 
+ 00022132  0x000057c7 fetch  0x00000001 , 0x000043dd 
+ 00022133  0x000057c8 rtn  0x00000034 
+ 00022134  0x000057ca fetch  0x00000001 , 0x0000043f 
+ 00022135  0x000057cb rtnbit0  0x00000004 
+ 00022136  0x000057cc call  0x0000748d 
+ 00022137  0x000057cd branch  0x000073e3 
+ 00022138  0x000057d1 arg  0x00000000 , 0x00000007 
+ 00022139  0x000057d2 branch  0x00002c32 
+ 00022140  0x000057d5 arg  0x00000000 , 0x00000007 
+ 00022141  0x000057d6 branch  0x00002c36 
+ 00022142  0x000057da bpatchx  0x00000066 , 0x0000402c 
+ 00022143  0x000057db rtnmark1  0x0000000f 
+ 00022144  0x000057dc call  0x00005890 
+ 00022145  0x000057dd nrtn  0x00000034 
+ 00022146  0x000057de fetch  0x00000001 , 0x000002d9 
+ 00022147  0x000057df and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00022148  0x000057e0 store  0x00000001 , 0x0000450c 
+ 00022149  0x000057e1 ifetch  0x00000001 , 0x00000006 
+ 00022150  0x000057e2 and  0x0000003f , 0x0000001f , 0x0000003f 
+ 00022151  0x000057e3 store  0x00000001 , 0x0000450b 
+ 00022152  0x000057e4 rtn  0x00000034 
+ 00022153  0x000057e5 copy  0x00000006 , 0x0000003f 
+ 00022154  0x000057e6 store  0x00000002 , 0x0000450d 
+ 00022155  0x000057e7 fetch  0x00000001 , 0x0000450c 
+ 00022156  0x000057e8 beq  0x00000003 , 0x00005c64 
+ 00022157  0x000057ea call  0x0000569a 
+ 00022158  0x000057eb nbranch  0x0000567a , 0x00000028 
+ 00022159  0x000057ec call  0x0000567c 
+ 00022160  0x000057ed fetch  0x00000002 , 0x0000450d 
+ 00022161  0x000057ee copy  0x0000003f , 0x00000006 
+ 00022162  0x000057ef ifetch  0x00000002 , 0x00000006 
+ 00022163  0x000057f0 store  0x00000002 , 0x000044fc 
+ 00022164  0x000057f1 bpatchx  0x00000067 , 0x0000402c 
+ 00022165  0x000057f2 ifetch  0x00000002 , 0x00000006 
+ 00022166  0x000057f3 beq  0x00000004 , 0x000058ab 
+ 00022167  0x000057f4 beq  0x00000006 , 0x00005af4 
+ 00022168  0x000057f5 beq  0x00000005 , 0x00005ab6 
+ 00022169  0x000057f6 rtn 
+ 00022170  0x000057fa fetch  0x00000001 , 0x0000450c 
+ 00022171  0x000057fb beq  0x00000002 , 0x000056a9 
+ 00022172  0x000057fc beq  0x00000001 , 0x000056c1 
+ 00022173  0x000057fd rtn 
+ 00022174  0x00005803 call  0x00007fe7 
+ 00022175  0x00005804 arg  0x00000004 , 0x00000002 
+ 00022176  0x00005805 isub  0x0000003f , 0x0000003e 
+ 00022177  0x00005806 rtn  0x00000005 
+ 00022178  0x00005807 arg  0x00000005 , 0x00000002 
+ 00022179  0x00005808 isub  0x0000003f , 0x0000003e 
+ 00022180  0x00005809 rtn  0x00000005 
+ 00022181  0x0000580a arg  0x00000006 , 0x00000002 
+ 00022182  0x0000580b isub  0x0000003f , 0x0000003e 
+ 00022183  0x0000580c rtn  0x00000005 
+ 00022184  0x0000580d branch  0x00007fe9 
+ 00022185  0x00005811 fetch  0x00000002 , 0x0000450d 
+ 00022186  0x00005812 copy  0x0000003f , 0x00000006 
+ 00022187  0x00005813 ifetch  0x00000002 , 0x00000006 
+ 00022188  0x00005814 store  0x00000002 , 0x000044fc 
+ 00022189  0x00005815 ifetch  0x00000002 , 0x00000006 
+ 00022190  0x00005816 call  0x0000569e 
+ 00022191  0x00005817 nrtn  0x00000028 
+ 00022192  0x00005818 fetcht  0x00000001 , 0x0000450b 
+ 00022193  0x00005819 storet  0x00000001 , 0x000044fe 
+ 00022194  0x0000581a fetch  0x00000002 , 0x000044fc 
+ 00022195  0x0000581b increase  0x00000004 , 0x0000003f 
+ 00022196  0x0000581c isub  0x00000002 , 0x0000003e 
+ 00022197  0x0000581d branch  0x00007fe7 , 0x00000005 
+ 00022198  0x0000581e fetch  0x00000001 , 0x0000450b 
+ 00022199  0x0000581f copy  0x0000003f , 0x00000039 
+ 00022200  0x00005820 arg  0x00000311 , 0x00000005 
+ 00022201  0x00005821 fetch  0x00000002 , 0x0000450d 
+ 00022202  0x00005822 copy  0x0000003f , 0x00000006 
+ 00022203  0x00005823 call  0x00007f01 
+ 00022204  0x00005824 branch  0x00007fe9 
+ 00022205  0x0000582a call  0x00007fe7 
+ 00022206  0x0000582b fetch  0x00000001 , 0x000044fe 
+ 00022207  0x0000582c nrtn  0x00000034 
+ 00022208  0x0000582d branch  0x00007fe9 
+ 00022209  0x00005830 call  0x000056bd 
+ 00022210  0x00005831 nrtn  0x00000028 
+ 00022211  0x00005832 fetch  0x00000001 , 0x000044fe 
+ 00022212  0x00005833 arg  0x00000311 , 0x00000005 
+ 00022213  0x00005834 iadd  0x00000005 , 0x00000011 
+ 00022214  0x00005835 fetcht  0x00000001 , 0x0000450b 
+ 00022215  0x00005836 iadd  0x00000002 , 0x0000003f 
+ 00022216  0x00005837 store  0x00000001 , 0x000044fe 
+ 00022217  0x00005838 fetch  0x00000001 , 0x0000450b 
+ 00022218  0x00005839 copy  0x0000003f , 0x00000039 
+ 00022219  0x0000583a copy  0x00000011 , 0x00000005 
+ 00022220  0x0000583b fetch  0x00000002 , 0x0000450d 
+ 00022221  0x0000583c copy  0x0000003f , 0x00000006 
+ 00022222  0x0000583d call  0x00007ef4 
+ 00022223  0x0000583e setarg  0x00000311 
+ 00022224  0x0000583f store  0x00000002 , 0x0000450d 
+ 00022225  0x00005840 fetch  0x00000002 , 0x000044fc 
+ 00022226  0x00005841 increase  0x00000004 , 0x0000003f 
+ 00022227  0x00005842 fetcht  0x00000001 , 0x000044fe 
+ 00022228  0x00005843 isub  0x00000002 , 0x0000003e 
+ 00022229  0x00005844 branch  0x00007fe7 , 0x00000005 
+ 00022230  0x00005845 branch  0x00007fe9 
+ 00022231  0x0000584c call  0x00007ea5 
+ 00022232  0x0000584d arg  0x0000445e , 0x00000005 
+ 00022233  0x0000584f fetch  0x00000002 , 0x000044fc 
+ 00022234  0x00005850 increase  0xfffffffb , 0x0000003f 
+ 00022235  0x00005852 istore  0x00000001 , 0x00000005 
+ 00022236  0x00005853 copy  0x0000003f , 0x00000039 
+ 00022237  0x00005854 call  0x00007e9f 
+ 00022238  0x00005855 branch  0x00007ef4 
+ 00022239  0x00005858 call  0x00007ea5 
+ 00022240  0x00005859 arg  0x00004471 , 0x00000005 
+ 00022241  0x0000585a branch  0x000056d9 
+ 00022242  0x0000585f fetch  0x00000002 , 0x000041f9 
+ 00022243  0x00005860 branch  0x00007f9c 
+ 00022244  0x00005863 fetcht  0x00000004 , 0x0000045b 
+ 00022245  0x00005864 call  0x00002a7b 
+ 00022246  0x00005865 isub  0x00000002 , 0x0000000b 
+ 00022247  0x00005866 deposit  0x0000000b 
+ 00022248  0x00005867 fetcht  0x00000002 , 0x0000046d 
+ 00022249  0x00005868 lshift4  0x00000002 , 0x00000002 
+ 00022250  0x00005869 lshift  0x00000002 , 0x00000002 
+ 00022251  0x0000586a isub  0x00000002 , 0x0000003f 
+ 00022252  0x0000586b rtn 
+ 00022253  0x0000586e call  0x00002a7b 
+ 00022254  0x0000586f store  0x00000004 , 0x0000045b 
+ 00022255  0x00005870 rtn 
+ 00022256  0x00005874 jam  0x00000024 , 0x00000016 
+ 00022257  0x00005875 jam  0x00000000 , 0x00000ac2 
+ 00022258  0x00005877 bpatchx  0x00000068 , 0x0000402d 
+ 00022259  0x00005878 fetch  0x00000001 , 0x0000436e 
+ 00022260  0x00005879 rtn  0x00000034 
+ 00022261  0x0000587a arg  0x00000000 , 0x00000007 
+ 00022262  0x0000587b call  0x00007f16 
+ 00022263  0x0000587c nrtn  0x00000034 
+ 00022264  0x0000587d bpatchx  0x00000069 , 0x0000402d 
+ 00022265  0x0000587f disable  0x00000029 
+ 00022266  0x00005880 enable  0x00000010 
+ 00022267  0x00005881 call  0x00005572 
+ 00022268  0x00005882 call  0x00005422 
+ 00022269  0x00005883 call  0x000054e9 
+ 00022270  0x00005884 nbranch  0x00005706 , 0x0000002d 
+ 00022271  0x00005885 fetch  0x00000001 , 0x00000003 
+ 00022272  0x00005886 increase  0x00000001 , 0x0000003f 
+ 00022273  0x00005887 store  0x00000001 , 0x00000003 
+ 00022274  0x00005888 fetch  0x00000001 , 0x000002d9 
+ 00022275  0x00005889 and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00022276  0x0000588a beq  0x00000003 , 0x0000551c 
+ 00022277  0x0000588b beq  0x00000005 , 0x00005728 
+ 00022278  0x0000588d bpatchx  0x0000006a , 0x0000402d 
+ 00022279  0x0000588e random  0x0000003f 
+ 00022280  0x0000588f arg  0x000001ff , 0x00000002 
+ 00022281  0x00005890 iand  0x00000002 , 0x0000003f 
+ 00022282  0x00005891 add  0x0000003f , 0x000000fa , 0x0000003f 
+ 00022283  0x00005892 call  0x00003cbe 
+ 00022284  0x00005893 fetch  0x00000001 , 0x00000ac2 
+ 00022285  0x00005894 fetcht  0x00000001 , 0x0000448d 
+ 00022286  0x00005895 isub  0x00000002 , 0x0000003e 
+ 00022287  0x00005896 nbranch  0x000056f2 , 0x00000005 
+ 00022288  0x00005897 arg  0x00000000 , 0x00000007 
+ 00022289  0x00005898 fetch  0x00000002 , 0x00004482 
+ 00022290  0x00005899 branch  0x00007f08 
+ 00022291  0x0000589d bpatchx  0x0000006b , 0x0000402d 
+ 00022292  0x0000589e fetch  0x00000001 , 0x00000476 
+ 00022293  0x0000589f call  0x000053fc 
+ 00022294  0x000058a0 fetch  0x00000002 , 0x00000441 
+ 00022295  0x000058a1 imul32  0x00000002 , 0x0000003f 
+ 00022296  0x000058a2 arg  0x00000177 , 0x00000002 
+ 00022297  0x000058a3 imul32  0x00000002 , 0x0000003f 
+ 00022298  0x000058a4 arg  0x000186a0 , 0x00000002 
+ 00022299  0x000058a5 idiv  0x00000002 
+ 00022300  0x000058a6 fetch  0x00000001 , 0x0000046a 
+ 00022301  0x000058a7 arg  0x00004e20 , 0x00000002 
+ 00022302  0x000058a8 imul32  0x00000002 , 0x0000003f 
+ 00022303  0x000058a9 iadd  0x00000002 , 0x0000003f 
+ 00022304  0x000058aa store  0x00000004 , 0x000044e5 
+ 00022305  0x000058ab bpatchx  0x0000006c , 0x0000402d 
+ 00022306  0x000058ac fetch  0x00000002 , 0x000040c1 
+ 00022307  0x000058ad call  0x00007f86 
+ 00022308  0x000058ae quotient  0x00000002 
+ 00022309  0x000058af iadd  0x00000002 , 0x0000003f 
+ 00022310  0x000058b0 store  0x00000002 , 0x0000044d 
+ 00022311  0x000058b1 rtn 
+ 00022312  0x000058b4 bpatchx  0x0000006d , 0x0000402d 
+ 00022313  0x000058b5 fetch  0x00000006 , 0x000002e1 
+ 00022314  0x000058b6 fetcht  0x00000006 , 0x000044a0 
+ 00022315  0x000058b7 isub  0x00000002 , 0x0000003e 
+ 00022316  0x000058b8 nrtn  0x00000005 
+ 00022317  0x000058b9 call  0x00005619 
+ 00022318  0x000058ba copy  0x00000011 , 0x0000003f 
+ 00022319  0x000058bb store  0x00000001 , 0x0000448e 
+ 00022320  0x000058bc fetch  0x00000007 , 0x000002ee 
+ 00022321  0x000058bd store  0x00000007 , 0x00000101 
+ 00022322  0x000058be ifetch  0x00000008 , 0x00000006 
+ 00022323  0x000058bf istore  0x00000008 , 0x00000005 
+ 00022324  0x000058c0 fetch  0x00000006 , 0x000002db 
+ 00022325  0x000058c1 store  0x00000006 , 0x0000044f 
+ 00022326  0x000058c2 increase  0x00000006 , 0x00000006 
+ 00022327  0x000058c3 ifetch  0x00000008 , 0x00000006 
+ 00022328  0x000058c4 store  0x00000008 , 0x00000463 
+ 00022329  0x000058c5 ifetcht  0x00000002 , 0x00000006 
+ 00022330  0x000058c6 bpatchx  0x0000006e , 0x0000402d 
+ 00022331  0x000058c7 lshift2  0x00000002 , 0x00000002 
+ 00022332  0x000058c8 ifetch  0x00000002 , 0x00000006 
+ 00022333  0x000058c9 lshift2  0x0000003f , 0x0000003f 
+ 00022334  0x000058ca store  0x00000002 , 0x00000441 
+ 00022335  0x000058cb store  0x00000004 , 0x00000443 
+ 00022336  0x000058cc isub  0x00000002 , 0x0000003f 
+ 00022337  0x000058cd add  0x0000003f , 0xfffffffe , 0x00000028 
+ 00022338  0x000058ce ifetch  0x00000009 , 0x00000006 
+ 00022339  0x000058cf store  0x00000009 , 0x0000046b 
+ 00022340  0x000058d0 bpatchx  0x0000006f , 0x0000402d 
+ 00022341  0x000058d1 ifetch  0x00000001 , 0x00000006 
+ 00022342  0x000058d2 rshift4  0x0000003f , 0x00000002 
+ 00022343  0x000058d3 rshift  0x00000002 , 0x00000002 
+ 00022344  0x000058d4 storet  0x00000001 , 0x00000476 
+ 00022345  0x000058d5 and_into  0x0000001f , 0x0000003f 
+ 00022346  0x000058d6 store  0x00000001 , 0x00000458 
+ 00022347  0x000058d7 call  0x00005713 
+ 00022348  0x000058d8 call  0x0000545b 
+ 00022349  0x000058d9 call  0x0000534c 
+ 00022350  0x000058da call  0x0000223b 
+ 00022351  0x000058db nrtn  0x00000005 
+ 00022352  0x000058dc bpatchx  0x00000070 , 0x0000402e 
+ 00022353  0x000058dd call  0x00002841 
+ 00022354  0x000058de call  0x00005ad3 
+ 00022355  0x000058df jam  0x00000014 , 0x00000a99 
+ 00022356  0x000058e0 call  0x00007d86 
+ 00022357  0x000058e1 branch  0x00002223 
+ 00022358  0x000058e5 bpatchx  0x00000071 , 0x0000402e 
+ 00022359  0x000058e6 fetch  0x00000002 , 0x0000445a 
+ 00022360  0x000058e7 iforce  0x00000012 
+ 00022361  0x000058e8 fetch  0x00000002 , 0x0000445c 
+ 00022362  0x000058e9 iforce  0x00000013 
+ 00022363  0x000058ea fetch  0x00000002 , 0x000044bc 
+ 00022364  0x000058eb iforce  0x00000006 
+ 00022365  0x000058ec enable  0x00000028 
+ 00022366  0x000058ed rtn 
+ 00022367  0x000058f1 ifetch  0x00000002 , 0x00000006 
+ 00022368  0x000058f2 rtn  0x00000034 
+ 00022369  0x000058f3 isub  0x00000012 , 0x0000003e 
+ 00022370  0x000058f4 nrtn  0x00000002 
+ 00022371  0x000058f5 isub  0x00000013 , 0x0000003e 
+ 00022372  0x000058f6 rtn  0x00000005 
+ 00022373  0x000058f7 branch  0x00005768 , 0x00000002 
+ 00022374  0x000058f8 force  0x00000001 , 0x0000003e 
+ 00022375  0x000058f9 rtn 
+ 00022376  0x000058fb force  0x00000000 , 0x0000003f 
+ 00022377  0x000058fc rtn 
+ 00022378  0x00005901 call  0x0000576d 
+ 00022379  0x00005902 branch  0x00005779 , 0x00000005 
+ 00022380  0x00005903 rtn 
+ 00022381  0x00005906 bpatchx  0x00000072 , 0x0000402e 
+ 00022382  0x00005907 fetch  0x00000002 , 0x000044bc 
+ 00022383  0x00005908 iforce  0x00000006 
+ 00022384  0x0000590a ifetch  0x00000002 , 0x00000006 
+ 00022385  0x0000590b rtn  0x00000034 
+ 00022386  0x0000590c isub  0x00000002 , 0x0000003e 
+ 00022387  0x0000590d rtn  0x00000005 
+ 00022388  0x0000590e ifetch  0x00000001 , 0x00000006 
+ 00022389  0x0000590f iadd  0x00000006 , 0x00000006 
+ 00022390  0x00005910 ifetch  0x00000001 , 0x00000006 
+ 00022391  0x00005911 iadd  0x00000006 , 0x00000006 
+ 00022392  0x00005912 branch  0x00005770 
+ 00022393  0x00005914 ifetch  0x00000001 , 0x00000006 
+ 00022394  0x00005915 iadd  0x00000006 , 0x00000006 
+ 00022395  0x00005916 rtn 
+ 00022396  0x0000591b bpatchx  0x00000073 , 0x0000402e 
+ 00022397  0x0000591c fetch  0x00000002 , 0x000044bc 
+ 00022398  0x0000591d iforce  0x00000006 
+ 00022399  0x0000591f ifetch  0x00000002 , 0x00000006 
+ 00022400  0x00005920 rtn  0x00000034 
+ 00022401  0x00005921 ifetch  0x00000001 , 0x00000006 
+ 00022402  0x00005922 iadd  0x00000006 , 0x00000006 
+ 00022403  0x00005923 increase  0xfffffffe , 0x00000006 
+ 00022404  0x00005924 ifetch  0x00000002 , 0x00000006 
+ 00022405  0x00005925 isub  0x00000002 , 0x0000003e 
+ 00022406  0x00005926 rtn  0x00000005 
+ 00022407  0x00005927 ifetch  0x00000001 , 0x00000006 
+ 00022408  0x00005928 iadd  0x00000006 , 0x00000006 
+ 00022409  0x00005929 branch  0x0000577f 
+ 00022410  0x0000592e fetch  0x00000002 , 0x0000049c 
+ 00022411  0x0000592f branch  0x0000578e 
+ 00022412  0x00005932 bpatchx  0x00000074 , 0x0000402e 
+ 00022413  0x00005933 fetch  0x00000002 , 0x000044bc 
+ 00022414  0x00005935 iforce  0x00000006 
+ 00022415  0x00005936 copy  0x00000002 , 0x00000011 
+ 00022416  0x00005938 ifetch  0x00000002 , 0x00000006 
+ 00022417  0x00005939 branch  0x00005799 , 0x00000034 
+ 00022418  0x0000593a isub  0x00000011 , 0x0000003e 
+ 00022419  0x0000593b branch  0x0000579a , 0x00000005 
+ 00022420  0x0000593c ifetch  0x00000001 , 0x00000006 
+ 00022421  0x0000593d iadd  0x00000006 , 0x00000006 
+ 00022422  0x0000593e ifetch  0x00000001 , 0x00000006 
+ 00022423  0x0000593f iadd  0x00000006 , 0x00000006 
+ 00022424  0x00005940 branch  0x00005790 
+ 00022425  0x00005942 branch  0x00007fef 
+ 00022426  0x00005945 ifetch  0x00000001 , 0x00000006 
+ 00022427  0x00005946 store  0x00000001 , 0x000004a2 
+ 00022428  0x00005947 copy  0x0000003f , 0x00000039 
+ 00022429  0x00005948 arg  0x000004a3 , 0x00000005 
+ 00022430  0x00005949 call  0x00007ef4 
+ 00022431  0x0000594a ifetch  0x00000001 , 0x00000006 
+ 00022432  0x0000594b store  0x00000001 , 0x000004b3 
+ 00022433  0x0000594c call  0x00007ea5 
+ 00022434  0x0000594d branch  0x00007ff1 
+ 00022435  0x00005951 bpatchx  0x00000075 , 0x0000402e 
+ 00022436  0x00005952 call  0x000057a6 
+ 00022437  0x00005953 branch  0x000057b8 
+ 00022438  0x00005956 arg  0x00002a00 , 0x00000002 
+ 00022439  0x00005957 call  0x0000577c 
+ 00022440  0x00005958 rtn  0x00000034 
+ 00022441  0x00005959 ifetch  0x00000001 , 0x00000006 
+ 00022442  0x0000595a copy  0x00000006 , 0x00000005 
+ 00022443  0x0000595b fetcht  0x00000001 , 0x000043af 
+ 00022444  0x0000595c copy  0x00000002 , 0x00000039 
+ 00022445  0x0000595d isub  0x00000002 , 0x0000003e 
+ 00022446  0x0000595e nbranch  0x000057b5 , 0x00000002 
+ 00022447  0x0000595f isub  0x00000002 , 0x00000002 
+ 00022448  0x00005960 arg  0x000043b0 , 0x00000006 
+ 00022449  0x00005961 call  0x00007f01 
+ 00022450  0x00005962 copy  0x00000002 , 0x00000039 
+ 00022451  0x00005963 ncall  0x000057f0 , 0x00000005 
+ 00022452  0x00005964 rtn 
+ 00022453  0x00005966 copy  0x0000003f , 0x00000039 
+ 00022454  0x00005967 arg  0x000043b0 , 0x00000006 
+ 00022455  0x00005968 branch  0x00007ef4 
+ 00022456  0x0000596c arg  0x0000438f , 0x00000013 
+ 00022457  0x0000596d arg  0x00004370 , 0x00000011 
+ 00022458  0x0000596e call  0x000057c5 
+ 00022459  0x0000596f setarg  0x00000000 
+ 00022460  0x00005970 setflag  0x00000028 , 0x00000000 , 0x0000003f 
+ 00022461  0x00005971 store  0x00000001 , 0x00000a9a 
+ 00022462  0x00005972 arg  0x000043af , 0x00000013 
+ 00022463  0x00005973 arg  0x00004390 , 0x00000011 
+ 00022464  0x00005974 call  0x000057c5 
+ 00022465  0x00005975 rtn  0x00000028 
+ 00022466  0x00005976 fetch  0x00000001 , 0x00000a9a 
+ 00022467  0x00005977 branch  0x00002a8c , 0x00000034 
+ 00022468  0x00005978 rtn 
+ 00022469  0x0000597c bpatchx  0x00000076 , 0x0000402e 
+ 00022470  0x0000597d call  0x00007fe7 
+ 00022471  0x0000597e call  0x00007eda 
+ 00022472  0x0000597f arg  0x00000000 , 0x00000012 
+ 00022473  0x00005980 arg  0x00000ac3 , 0x00000005 
+ 00022474  0x00005981 call  0x000057df 
+ 00022475  0x00005982 fetch  0x00000001 , 0x000043af 
+ 00022476  0x00005983 add  0x0000003f , 0x00000001 , 0x00000002 
+ 00022477  0x00005984 iadd  0x00000012 , 0x00000011 
+ 00022478  0x00005985 increase  0x00000002 , 0x00000011 
+ 00022479  0x00005986 sub  0x00000011 , 0x0000001f , 0x0000003e 
+ 00022480  0x00005987 nbranch  0x000057dd , 0x00000002 
+ 00022481  0x00005988 istoret  0x00000001 , 0x00000005 
+ 00022482  0x00005989 arg  0x00000009 , 0x00000002 
+ 00022483  0x0000598a istoret  0x00000001 , 0x00000005 
+ 00022484  0x0000598b iforce  0x00000039 
+ 00022485  0x0000598c call  0x00007ef4 
+ 00022486  0x0000598d copy  0x00000011 , 0x00000012 
+ 00022487  0x0000598f deposit  0x00000012 
+ 00022488  0x00005990 store  0x00000001 , 0x00000ac2 
+ 00022489  0x00005991 arg  0x00000ac2 , 0x00000006 
+ 00022490  0x00005992 setarg  0xffffffe0 
+ 00022491  0x00005993 iadd  0x00000013 , 0x00000005 
+ 00022492  0x00005994 branch  0x00007ebd 
+ 00022493  0x00005997 call  0x00007fe9 
+ 00022494  0x00005998 branch  0x000057d7 
+ 00022495  0x0000599b ifetch  0x00000001 , 0x00000011 
+ 00022496  0x0000599c rtn  0x00000034 
+ 00022497  0x0000599d pincrease  0x00000001 
+ 00022498  0x0000599e ifetcht  0x00000001 , 0x00000006 
+ 00022499  0x0000599f sub  0x00000002 , 0x00000009 , 0x0000003e 
+ 00022500  0x000059a0 branch  0x000057ee , 0x00000005 
+ 00022501  0x000059a1 iadd  0x00000012 , 0x00000012 
+ 00022502  0x000059a2 copy  0x00000011 , 0x00000006 
+ 00022503  0x000059a3 iforce  0x00000039 
+ 00022504  0x000059a4 call  0x00007ef4 
+ 00022505  0x000059a5 copy  0x00000006 , 0x00000011 
+ 00022506  0x000059a7 deposit  0x00000011 
+ 00022507  0x000059a8 isub  0x00000013 , 0x0000003e 
+ 00022508  0x000059a9 rtn  0x00000002 
+ 00022509  0x000059aa branch  0x000057df 
+ 00022510  0x000059ad iadd  0x00000011 , 0x00000011 
+ 00022511  0x000059ae branch  0x000057ea 
+ 00022512  0x000059b2 setarg  0x00000020 
+ 00022513  0x000059b3 istore  0x00000001 , 0x00000005 
+ 00022514  0x000059b4 loop  0x000057f0 
+ 00022515  0x000059b5 rtn 
+ 00022516  0x000059b9 bpatchx  0x00000077 , 0x0000402e 
+ 00022517  0x000059ba disable  0x0000002b 
+ 00022518  0x000059bb branch  0x000057f8 , 0x0000002e 
+ 00022519  0x000059bc nbranch  0x00005806 , 0x0000002d 
+ 00022520  0x000059be call  0x00002bcb 
+ 00022521  0x000059bf fetch  0x00000002 , 0x000040c1 
+ 00022522  0x000059c0 store  0x00000002 , 0x0000044d 
+ 00022523  0x000059c2 nbranch  0x00002bde , 0x0000002d 
+ 00022524  0x000059c3 bmark1  0x0000000f , 0x00002bde 
+ 00022525  0x000059c5 fetch  0x00000001 , 0x0000450b 
+ 00022526  0x000059c6 nbranch  0x00002bde , 0x00000034 
+ 00022527  0x000059c7 fetch  0x00000001 , 0x000043dd 
+ 00022528  0x000059c8 nbranch  0x00002bde , 0x00000034 
+ 00022529  0x000059ca fetch  0x00000001 , 0x000044e9 
+ 00022530  0x000059cb bbit1  0x00000005 , 0x00002bde 
+ 00022531  0x000059cd fetch  0x00000001 , 0x0000043f 
+ 00022532  0x000059ce bbit1  0x00000005 , 0x00002bde 
+ 00022533  0x000059cf branch  0x00002bc0 
+ 00022534  0x000059d2 fetcht  0x00000002 , 0x000040c1 
+ 00022535  0x000059d3 rshift  0x00000002 , 0x00000002 
+ 00022536  0x000059d4 fetch  0x00000002 , 0x0000044d 
+ 00022537  0x000059d5 iadd  0x00000002 , 0x0000003f 
+ 00022538  0x000059d6 store  0x00000002 , 0x0000044d 
+ 00022539  0x000059d7 branch  0x00002bd6 
+ 00022540  0x000059db arg  0x00000000 , 0x00000007 
+ 00022541  0x000059dc branch  0x00005824 
+ 00022542  0x000059df arg  0x00000000 , 0x00000007 
+ 00022543  0x000059e0 branch  0x00005828 
+ 00022544  0x000059e3 arg  0x00000001 , 0x00000007 
+ 00022545  0x000059e4 branch  0x00005824 
+ 00022546  0x000059e7 arg  0x00000001 , 0x00000007 
+ 00022547  0x000059e8 branch  0x00005828 
+ 00022548  0x000059eb arg  0x00000002 , 0x00000007 
+ 00022549  0x000059ec branch  0x00005824 
+ 00022550  0x000059ef arg  0x00000002 , 0x00000007 
+ 00022551  0x000059f0 branch  0x00005828 
+ 00022552  0x000059f3 arg  0x00000003 , 0x00000007 
+ 00022553  0x000059f4 branch  0x00005824 
+ 00022554  0x000059f7 arg  0x00000003 , 0x00000007 
+ 00022555  0x000059f8 branch  0x00005828 
+ 00022556  0x000059fb arg  0x00000004 , 0x00000007 
+ 00022557  0x000059fc branch  0x00005824 
+ 00022558  0x000059ff arg  0x00000004 , 0x00000007 
+ 00022559  0x00005a00 branch  0x00005828 
+ 00022560  0x00005a03 arg  0x00000005 , 0x00000007 
+ 00022561  0x00005a04 branch  0x00005824 
+ 00022562  0x00005a07 arg  0x00000005 , 0x00000007 
+ 00022563  0x00005a08 branch  0x00005828 
+ 00022564  0x00005a0c fetch  0x00000001 , 0x000044e9 
+ 00022565  0x00005a0d qset1  0x0000003f 
+ 00022566  0x00005a0e store  0x00000001 , 0x000044e9 
+ 00022567  0x00005a0f rtn 
+ 00022568  0x00005a12 fetch  0x00000001 , 0x000044e9 
+ 00022569  0x00005a13 qset0  0x0000003f 
+ 00022570  0x00005a14 store  0x00000001 , 0x000044e9 
+ 00022571  0x00005a15 rtn 
+ 00022572  0x00005a18 setarg  0x00112233 
+ 00022573  0x00005a19 store  0x00000003 , 0x000044ea 
+ 00022574  0x00005a1a setarg  0x00445566 
+ 00022575  0x00005a1b istore  0x00000003 , 0x00000005 
+ 00022576  0x00005a1c setarg  0x00778899 
+ 00022577  0x00005a1d istore  0x00000003 , 0x00000005 
+ 00022578  0x00005a1e setarg  0x00001122 
+ 00022579  0x00005a1f istore  0x00000003 , 0x00000005 
+ 00022580  0x00005a20 setarg  0x00334455 
+ 00022581  0x00005a21 istore  0x00000003 , 0x00000005 
+ 00022582  0x00005a22 setarg  0x00000066 
+ 00022583  0x00005a23 istore  0x00000001 , 0x00000005 
+ 00022584  0x00005a24 rtn 
+ 00022585  0x00005a28 setarg  0x01000302 
+ 00022586  0x00005a29 store  0x00000004 , 0x00004453 
+ 00022587  0x00005a2a setarg  0x00010010 
+ 00022588  0x00005a2b store  0x00000003 , 0x00004457 
+ 00022589  0x00005a2c jam  0x00000001 , 0x000044c6 
+ 00022590  0x00005a2d rtn 
+ 00022591  0x00005a32 arg  0x00000000 , 0x00000011 
+ 00022592  0x00005a33 arg  0x00000001 , 0x00000001 
+ 00022593  0x00005a34 branch  0x00005850 
+ 00022594  0x00005a39 arg  0x00000003 , 0x00000001 
+ 00022595  0x00005a3a call  0x00005850 
+ 00022596  0x00005a3b copy  0x00000012 , 0x0000003f 
+ 00022597  0x00005a3c istore  0x00000001 , 0x00000005 
+ 00022598  0x00005a3d rtn 
+ 00022599  0x00005a42 force  0x00000002 , 0x00000001 
+ 00022600  0x00005a43 increase  0x00000004 , 0x00000011 
+ 00022601  0x00005a44 call  0x00005850 
+ 00022602  0x00005a45 increase  0xfffffffc , 0x00000011 
+ 00022603  0x00005a46 copy  0x00000011 , 0x0000003f 
+ 00022604  0x00005a47 istore  0x00000002 , 0x00000005 
+ 00022605  0x00005a48 copy  0x00000012 , 0x0000003f 
+ 00022606  0x00005a49 istore  0x00000002 , 0x00000005 
+ 00022607  0x00005a4a rtn 
+ 00022608  0x00005a4f sub  0x00000011 , 0x000000f0 , 0x0000003e 
+ 00022609  0x00005a50 nbranch  0x00002a8c , 0x00000002 
+ 00022610  0x00005a51 fetch  0x00000001 , 0x000044ff 
+ 00022611  0x00005a52 arg  0x00000001 , 0x00000002 
+ 00022612  0x00005a53 arg  0x00000004 , 0x00000039 
+ 00022613  0x00005a55 iand  0x00000002 , 0x0000003e 
+ 00022614  0x00005a56 branch  0x0000585a , 0x00000005 
+ 00022615  0x00005a57 lshift  0x00000002 , 0x00000002 
+ 00022616  0x00005a58 loop  0x00005855 
+ 00022617  0x00005a59 branch  0x00002a8c 
+ 00022618  0x00005a5b ixor  0x00000002 , 0x0000003f 
+ 00022619  0x00005a5c store  0x00000001 , 0x000044ff 
+ 00022620  0x00005a5d sub  0x00000039 , 0x00000004 , 0x0000003f 
+ 00022621  0x00005a5e lshift4  0x0000003f , 0x0000003f 
+ 00022622  0x00005a5f lshift4  0x0000003f , 0x0000003f 
+ 00022623  0x00005a60 arg  0x00001800 , 0x00000002 
+ 00022624  0x00005a61 iadd  0x00000002 , 0x00000002 
+ 00022625  0x00005a63 arg  0x00000000 , 0x00000039 
+ 00022626  0x00005a64 arg  0x00004500 , 0x00000006 
+ 00022627  0x00005a66 ifetch  0x00000002 , 0x00000006 
+ 00022628  0x00005a67 branch  0x00005869 , 0x00000034 
+ 00022629  0x00005a68 copy  0x00000039 , 0x0000003f 
+ 00022630  0x00005a69 increase  0x00000001 , 0x00000039 
+ 00022631  0x00005a6a bne  0x00000004 , 0x00005863 
+ 00022632  0x00005a6b branch  0x00002a8c 
+ 00022633  0x00005a6f increase  0xfffffffe , 0x00000006 
+ 00022634  0x00005a70 istoret  0x00000002 , 0x00000006 
+ 00022635  0x00005a71 copy  0x00000002 , 0x00000005 
+ 00022636  0x00005a72 copy  0x00000011 , 0x0000003f 
+ 00022637  0x00005a73 istore  0x00000001 , 0x00000005 
+ 00022638  0x00005a74 setarg  0x00000000 
+ 00022639  0x00005a75 istore  0x00000001 , 0x00000005 
+ 00022640  0x00005a76 copy  0x00000001 , 0x0000003f 
+ 00022641  0x00005a77 istore  0x00000001 , 0x00000005 
+ 00022642  0x00005a78 rtn 
+ 00022643  0x00005a7d fetch  0x00000002 , 0x00004500 
+ 00022644  0x00005a7e copy  0x0000003f , 0x00000006 
+ 00022645  0x00005a7f rtn 
+ 00022646  0x00005a82 fetch  0x00000002 , 0x00004502 
+ 00022647  0x00005a83 copy  0x0000003f , 0x00000006 
+ 00022648  0x00005a84 rtn 
+ 00022649  0x00005a87 call  0x0000587c 
+ 00022650  0x00005a88 copy  0x0000003f , 0x00000006 
+ 00022651  0x00005a89 rtn 
+ 00022652  0x00005a8b fetch  0x00000002 , 0x00004506 
+ 00022653  0x00005a8c nrtn  0x00000034 
+ 00022654  0x00005a8d fetch  0x00000002 , 0x00004504 
+ 00022655  0x00005a8e nrtn  0x00000034 
+ 00022656  0x00005a8f fetch  0x00000002 , 0x00004502 
+ 00022657  0x00005a90 nrtn  0x00000034 
+ 00022658  0x00005a91 fetch  0x00000002 , 0x00004500 
+ 00022659  0x00005a92 rtn 
+ 00022660  0x00005a95 call  0x00005873 
+ 00022661  0x00005a96 increase  0x00000003 , 0x00000006 
+ 00022662  0x00005a97 rtn 
+ 00022663  0x00005a9a call  0x00005873 
+ 00022664  0x00005a9b increase  0x00000007 , 0x00000006 
+ 00022665  0x00005a9c rtn 
+ 00022666  0x00005a9f call  0x00005879 
+ 00022667  0x00005aa0 increase  0x00000007 , 0x00000006 
+ 00022668  0x00005aa1 rtn 
+ 00022669  0x00005aa4 call  0x00005879 
+ 00022670  0x00005aa5 increase  0x00000003 , 0x00000006 
+ 00022671  0x00005aa6 rtn 
+ 00022672  0x00005aab fetch  0x00000002 , 0x00004506 
+ 00022673  0x00005aac rtn 
+ 00022674  0x00005ab0 fetch  0x00000002 , 0x00004504 
+ 00022675  0x00005ab1 rtn 
+ 00022676  0x00005ab5 fetch  0x00000002 , 0x00004500 
+ 00022677  0x00005ab6 rtn 
+ 00022678  0x00005aba fetch  0x00000002 , 0x00004500 
+ 00022679  0x00005abb arg  0x00001800 , 0x00000002 
+ 00022680  0x00005abc isub  0x00000002 , 0x0000003f 
+ 00022681  0x00005abd rshift4  0x0000003f , 0x0000003f 
+ 00022682  0x00005abe rshift4  0x0000003f , 0x00000007 
+ 00022683  0x00005abf fetch  0x00000001 , 0x000044ff 
+ 00022684  0x00005ac0 qset0  0x0000003f 
+ 00022685  0x00005ac1 store  0x00000001 , 0x000044ff 
+ 00022686  0x00005ac2 arg  0x00000000 , 0x00000039 
+ 00022687  0x00005ac4 lshift  0x00000039 , 0x0000003f 
+ 00022688  0x00005ac5 arg  0x00004502 , 0x00000002 
+ 00022689  0x00005ac6 iadd  0x00000002 , 0x00000002 
+ 00022690  0x00005ac7 ifetch  0x00000002 , 0x00000002 
+ 00022691  0x00005ac8 increase  0xfffffffe , 0x00000002 
+ 00022692  0x00005ac9 istore  0x00000002 , 0x00000002 
+ 00022693  0x00005aca copy  0x00000039 , 0x0000003f 
+ 00022694  0x00005acb increase  0x00000001 , 0x00000039 
+ 00022695  0x00005acc bne  0x00000003 , 0x0000589f 
+ 00022696  0x00005acd setarg  0x00000000 
+ 00022697  0x00005ace istore  0x00000002 , 0x00000002 
+ 00022698  0x00005acf rtn 
+ 00022699  0x00005ad6 ifetch  0x00000003 , 0x00000006 
+ 00022700  0x00005ad7 store  0x00000003 , 0x00000477 
+ 00022701  0x00005ad8 beq  0x00000002 , 0x000058c1 
+ 00022702  0x00005ad9 beq  0x00000003 , 0x000058c9 
+ 00022703  0x00005ada beq  0x00000004 , 0x000058cc 
+ 00022704  0x00005adb beq  0x00000006 , 0x000058f2 
+ 00022705  0x00005adc beq  0x00000008 , 0x0000593f 
+ 00022706  0x00005add beq  0x0000000a , 0x000059bc 
+ 00022707  0x00005ade beq  0x0000000c , 0x000059e4 
+ 00022708  0x00005adf beq  0x00000010 , 0x000059fa 
+ 00022709  0x00005ae0 beq  0x00000012 , 0x00005a2f 
+ 00022710  0x00005ae1 beq  0x00000016 , 0x00005a48 
+ 00022711  0x00005ae2 beq  0x00000018 , 0x00005a5b 
+ 00022712  0x00005ae3 beq  0x00000052 , 0x00005a60 
+ 00022713  0x00005ae4 rtn 
+ 00022714  0x00005ae8 force  0x00000003 , 0x00000011 
+ 00022715  0x00005ae9 call  0x00005a82 
+ 00022716  0x00005aea setarg  0x00000002 
+ 00022717  0x00005aeb istore  0x00000001 , 0x00000005 
+ 00022718  0x00005aec fetch  0x00000002 , 0x000044a6 
+ 00022719  0x00005aed istore  0x00000002 , 0x00000005 
+ 00022720  0x00005aee rtn 
+ 00022721  0x00005af2 call  0x000058c9 
+ 00022722  0x00005af4 force  0x00000003 , 0x00000011 
+ 00022723  0x00005af5 call  0x00005a82 
+ 00022724  0x00005af6 setarg  0x00000003 
+ 00022725  0x00005af7 istore  0x00000001 , 0x00000005 
+ 00022726  0x00005af8 fetch  0x00000002 , 0x000044a6 
+ 00022727  0x00005af9 istore  0x00000002 , 0x00000005 
+ 00022728  0x00005afa rtn 
+ 00022729  0x00005afd rshift8  0x0000003f , 0x0000003f 
+ 00022730  0x00005afe store  0x00000002 , 0x000044a8 
+ 00022731  0x00005aff rtn 
+ 00022732  0x00005b02 call  0x00005ab1 
+ 00022733  0x00005b03 call  0x00007fe7 
+ 00022734  0x00005b04 branch  0x000058cf 
+ 00022735  0x00005b07 arg  0x00000003 , 0x0000000b 
+ 00022736  0x00005b08 call  0x00005756 
+ 00022737  0x00005b0a call  0x0000575f 
+ 00022738  0x00005b0b branch  0x000058f0 , 0x00000034 
+ 00022739  0x00005b0c nbranch  0x000058ed , 0x00000002 
+ 00022740  0x00005b0d increase  0xfffffffe , 0x00000006 
+ 00022741  0x00005b0e call  0x00007ea5 
+ 00022742  0x00005b0f call  0x00007e9c 
+ 00022743  0x00005b10 nbranch  0x000058e1 , 0x00000028 
+ 00022744  0x00005b11 call  0x00007e85 
+ 00022745  0x00005b12 call  0x00007fe9 
+ 00022746  0x00005b13 force  0x00000014 , 0x00000011 
+ 00022747  0x00005b14 call  0x00005a82 
+ 00022748  0x00005b15 call  0x00007e95 
+ 00022749  0x00005b16 setarg  0x00000005 
+ 00022750  0x00005b17 istore  0x00000001 , 0x00000005 
+ 00022751  0x00005b18 setarg  0x00000001 
+ 00022752  0x00005b19 istore  0x00000001 , 0x00000005 
+ 00022753  0x00005b1b call  0x00007e9f 
+ 00022754  0x00005b1c ifetch  0x00000002 , 0x00000006 
+ 00022755  0x00005b1d istore  0x00000002 , 0x00000005 
+ 00022756  0x00005b1e ifetch  0x00000001 , 0x00000006 
+ 00022757  0x00005b1f copy  0x0000003f , 0x00000039 
+ 00022758  0x00005b20 call  0x00007f01 
+ 00022759  0x00005b21 call  0x00007ea2 
+ 00022760  0x00005b22 increase  0xffffffff , 0x0000000b 
+ 00022761  0x00005b23 branch  0x000058f0 , 0x00000005 
+ 00022762  0x00005b25 ifetch  0x00000001 , 0x00000006 
+ 00022763  0x00005b26 iadd  0x00000006 , 0x00000006 
+ 00022764  0x00005b27 branch  0x000058d1 
+ 00022765  0x00005b29 ifetch  0x00000001 , 0x00000006 
+ 00022766  0x00005b2a iadd  0x00000006 , 0x00000006 
+ 00022767  0x00005b2b branch  0x000058ea 
+ 00022768  0x00005b2d branch  0x00005a76 , 0x00000028 
+ 00022769  0x00005b2e branch  0x00005aa5 
+ 00022770  0x00005b32 call  0x00005ab1 
+ 00022771  0x00005b33 ifetch  0x00000002 , 0x00000006 
+ 00022772  0x00005b34 store  0x00000002 , 0x00004472 
+ 00022773  0x00005b35 call  0x00007ea5 
+ 00022774  0x00005b36 arg  0x0000445e , 0x00000005 
+ 00022775  0x00005b37 fetch  0x00000002 , 0x000044fc 
+ 00022776  0x00005b38 increase  0xfffffff9 , 0x0000003f 
+ 00022777  0x00005b39 call  0x000056db 
+ 00022778  0x00005b3a branch  0x00005905 
+ 00022779  0x00005b3e disable  0x00000028 
+ 00022780  0x00005b3f fetcht  0x00000002 , 0x0000445a 
+ 00022781  0x00005b40 fetch  0x00000002 , 0x0000445c 
+ 00022782  0x00005b41 isub  0x00000002 , 0x0000003e 
+ 00022783  0x00005b42 nbranch  0x00005902 , 0x00000002 
+ 00022784  0x00005b43 deposit  0x00000002 
+ 00022785  0x00005b44 rtnne  0x00000000 
+ 00022786  0x00005b46 enable  0x00000028 
+ 00022787  0x00005b47 jam  0x00000001 , 0x0000047a 
+ 00022788  0x00005b48 branch  0x00005a77 
+ 00022789  0x00005b4c call  0x000058fb 
+ 00022790  0x00005b4d rtn  0x00000028 
+ 00022791  0x00005b4e fetcht  0x00000002 , 0x00004472 
+ 00022792  0x00005b4f setarg  0x00002800 
+ 00022793  0x00005b50 isub  0x00000002 , 0x0000003e 
+ 00022794  0x00005b51 branch  0x0000590c , 0x00000005 
+ 00022795  0x00005b52 branch  0x00005a76 
+ 00022796  0x00005b56 jam  0x00000000 , 0x000004b4 
+ 00022797  0x00005b57 fetcht  0x00000002 , 0x0000445a 
+ 00022798  0x00005b58 storet  0x00000002 , 0x00000aa2 
+ 00022799  0x00005b59 call  0x0000578c 
+ 00022800  0x00005b5a nbranch  0x00005a76 , 0x00000034 
+ 00022801  0x00005b5c fetcht  0x00000002 , 0x00000aa2 
+ 00022802  0x00005b5d call  0x0000578c 
+ 00022803  0x00005b5e nbranch  0x00005925 , 0x00000034 
+ 00022804  0x00005b5f copy  0x00000006 , 0x00000011 
+ 00022805  0x00005b60 fetch  0x00000001 , 0x000004b3 
+ 00022806  0x00005b61 copy  0x0000003f , 0x00000039 
+ 00022807  0x00005b62 fetcht  0x00000001 , 0x0000445e 
+ 00022808  0x00005b63 isub  0x00000002 , 0x0000003e 
+ 00022809  0x00005b64 nbranch  0x00005921 , 0x00000005 
+ 00022810  0x00005b65 arg  0x0000445f , 0x00000012 
+ 00022811  0x00005b66 call  0x00007f88 
+ 00022812  0x00005b68 branch  0x00005928 , 0x00000005 
+ 00022813  0x00005b6a fetch  0x00000002 , 0x000004a3 
+ 00022814  0x00005b6b fetcht  0x00000002 , 0x00004472 
+ 00022815  0x00005b6c isub  0x00000002 , 0x0000003e 
+ 00022816  0x00005b6d branch  0x00005930 , 0x00000005 
+ 00022817  0x00005b6f fetch  0x00000002 , 0x00000aa2 
+ 00022818  0x00005b70 increase  0x00000001 , 0x0000003f 
+ 00022819  0x00005b71 store  0x00000002 , 0x00000aa2 
+ 00022820  0x00005b72 branch  0x00005911 
+ 00022821  0x00005b75 fetch  0x00000001 , 0x000004b4 
+ 00022822  0x00005b76 beq  0x00000001 , 0x00005930 
+ 00022823  0x00005b77 branch  0x00005a76 
+ 00022824  0x00005b7b fetch  0x00000002 , 0x000004a3 
+ 00022825  0x00005b7c fetcht  0x00000002 , 0x00004472 
+ 00022826  0x00005b7d isub  0x00000002 , 0x0000003e 
+ 00022827  0x00005b7e nbranch  0x00005921 , 0x00000005 
+ 00022828  0x00005b7f jam  0x00000001 , 0x000004b4 
+ 00022829  0x00005b81 fetcht  0x00000002 , 0x00000aa2 
+ 00022830  0x00005b82 storet  0x00000002 , 0x0000049e 
+ 00022831  0x00005b83 branch  0x00005921 
+ 00022832  0x00005b86 fetch  0x00000001 , 0x000004b4 
+ 00022833  0x00005b87 beq  0x00000000 , 0x00005921 
+ 00022834  0x00005b88 jam  0x00000002 , 0x000004b4 
+ 00022835  0x00005b89 fetcht  0x00000002 , 0x00000aa2 
+ 00022836  0x00005b8a increase  0xffffffff , 0x00000002 
+ 00022837  0x00005b8b storet  0x00000002 , 0x000004a0 
+ 00022838  0x00005b8e arg  0x00000005 , 0x00000011 
+ 00022839  0x00005b8f call  0x00005a82 
+ 00022840  0x00005b90 setarg  0x00000007 
+ 00022841  0x00005b91 istore  0x00000001 , 0x00000005 
+ 00022842  0x00005b92 fetch  0x00000002 , 0x0000049e 
+ 00022843  0x00005b93 istore  0x00000002 , 0x00000005 
+ 00022844  0x00005b94 fetch  0x00000002 , 0x000004a0 
+ 00022845  0x00005b95 istore  0x00000002 , 0x00000005 
+ 00022846  0x00005b96 rtn 
+ 00022847  0x00005b9b call  0x00005ab1 
+ 00022848  0x00005b9c call  0x000056df 
+ 00022849  0x00005b9d branch  0x00005942 
+ 00022850  0x00005ba0 fetcht  0x00000002 , 0x0000445a 
+ 00022851  0x00005ba1 storet  0x00000002 , 0x00000aa2 
+ 00022852  0x00005ba2 call  0x00005756 
+ 00022853  0x00005ba3 call  0x0000576d 
+ 00022854  0x00005ba4 increase  0xfffffffe , 0x00000006 
+ 00022855  0x00005ba5 copy  0x00000006 , 0x0000003f 
+ 00022856  0x00005ba6 store  0x00000002 , 0x0000049c 
+ 00022857  0x00005ba8 fetcht  0x00000002 , 0x00004472 
+ 00022858  0x00005ba9 setarg  0x00002a00 
+ 00022859  0x00005baa isub  0x00000002 , 0x0000003e 
+ 00022860  0x00005bab branch  0x000059a8 , 0x00000005 
+ 00022861  0x00005bac setarg  0x00002803 
+ 00022862  0x00005bad isub  0x00000002 , 0x0000003e 
+ 00022863  0x00005bae nbranch  0x00005990 , 0x00000005 
+ 00022864  0x00005baf arg  0x00000002 , 0x0000000b 
+ 00022865  0x00005bb1 call  0x00005a88 
+ 00022866  0x00005bb2 nbranch  0x0000596d , 0x00000002 
+ 00022867  0x00005bb3 fetcht  0x00000002 , 0x00000aa2 
+ 00022868  0x00005bb4 call  0x0000578a 
+ 00022869  0x00005bb5 beq  0x00000001 , 0x0000596d 
+ 00022870  0x00005bb6 call  0x00005a94 
+ 00022871  0x00005bb7 nbranch  0x0000596b , 0x00000005 
+ 00022872  0x00005bb8 nbranch  0x0000596f , 0x00000028 
+ 00022873  0x00005bb9 disable  0x00000028 
+ 00022874  0x00005bba arg  0x00000014 , 0x00000011 
+ 00022875  0x00005bbb call  0x00005a82 
+ 00022876  0x00005bbc setarg  0x00000009 
+ 00022877  0x00005bbd istore  0x00000001 , 0x00000005 
+ 00022878  0x00005bbe copy  0x00000005 , 0x00000030 
+ 00022879  0x00005bbf increase  0x00000001 , 0x00000005 
+ 00022880  0x00005bc1 call  0x0000597d 
+ 00022881  0x00005bc2 call  0x00005a84 
+ 00022882  0x00005bc3 call  0x0000578a 
+ 00022883  0x00005bc4 call  0x00005984 
+ 00022884  0x00005bc5 fetch  0x00000001 , 0x000004a2 
+ 00022885  0x00005bc6 increase  0x00000005 , 0x0000003f 
+ 00022886  0x00005bc7 istore  0x00000001 , 0x00000030 
+ 00022887  0x00005bc8 fetch  0x00000001 , 0x000004a2 
+ 00022888  0x00005bc9 beq  0x00000010 , 0x0000596d 
+ 00022889  0x00005bca increase  0xffffffff , 0x0000000b 
+ 00022890  0x00005bcb branch  0x0000596d , 0x00000005 
+ 00022891  0x00005bcd call  0x00005a84 
+ 00022892  0x00005bce branch  0x00005951 
+ 00022893  0x00005bd0 branch  0x00005a76 , 0x00000028 
+ 00022894  0x00005bd1 branch  0x00005aa5 
+ 00022895  0x00005bd4 call  0x00005a97 
+ 00022896  0x00005bd5 call  0x00005a84 
+ 00022897  0x00005bd6 call  0x0000578a 
+ 00022898  0x00005bd7 fetch  0x00000001 , 0x000004a2 
+ 00022899  0x00005bd8 beq  0x00000010 , 0x0000596d 
+ 00022900  0x00005bda call  0x00007e9c 
+ 00022901  0x00005bdb fetch  0x00000002 , 0x00000aa2 
+ 00022902  0x00005bdc increase  0xffffffff , 0x0000003f 
+ 00022903  0x00005bdd istore  0x00000002 , 0x00000005 
+ 00022904  0x00005bde call  0x00005aa1 
+ 00022905  0x00005bdf call  0x00005984 
+ 00022906  0x00005be0 increase  0xffffffff , 0x0000000b 
+ 00022907  0x00005be1 branch  0x0000596d , 0x00000005 
+ 00022908  0x00005be2 branch  0x0000596b 
+ 00022909  0x00005be6 fetch  0x00000002 , 0x00000aa2 
+ 00022910  0x00005be7 istore  0x00000002 , 0x00000005 
+ 00022911  0x00005be9 fetch  0x00000001 , 0x000004b3 
+ 00022912  0x00005bea copy  0x0000003f , 0x00000039 
+ 00022913  0x00005beb call  0x00007e9f 
+ 00022914  0x00005bec call  0x00007ef4 
+ 00022915  0x00005bed branch  0x00007ea2 
+ 00022916  0x00005bef call  0x00007e9c 
+ 00022917  0x00005bf0 fetch  0x00000002 , 0x00000aa2 
+ 00022918  0x00005bf1 istore  0x00000002 , 0x00000005 
+ 00022919  0x00005bf2 call  0x00007ea2 
+ 00022920  0x00005bf3 fetch  0x00000001 , 0x000004a2 
+ 00022921  0x00005bf4 copy  0x0000003f , 0x00000039 
+ 00022922  0x00005bf5 call  0x00007e9c 
+ 00022923  0x00005bf6 call  0x00007e9f 
+ 00022924  0x00005bf7 isub  0x00000039 , 0x00000006 
+ 00022925  0x00005bf8 increase  0xffffffff , 0x00000006 
+ 00022926  0x00005bf9 call  0x00007ef4 
+ 00022927  0x00005bfa branch  0x00007ea2 
+ 00022928  0x00005bff fetcht  0x00000002 , 0x0000445a 
+ 00022929  0x00005c00 storet  0x00000002 , 0x00000aa2 
+ 00022930  0x00005c02 call  0x00005a88 
+ 00022931  0x00005c03 nbranch  0x00005a76 , 0x00000002 
+ 00022932  0x00005c04 call  0x0000578a 
+ 00022933  0x00005c05 beq  0x00000001 , 0x00005a76 
+ 00022934  0x00005c06 call  0x00005a94 
+ 00022935  0x00005c07 nbranch  0x000059a6 , 0x00000005 
+ 00022936  0x00005c0a arg  0x00000014 , 0x00000011 
+ 00022937  0x00005c0b call  0x00005a82 
+ 00022938  0x00005c0c setarg  0x00000009 
+ 00022939  0x00005c0d istore  0x00000001 , 0x00000005 
+ 00022940  0x00005c0e fetch  0x00000001 , 0x000004b3 
+ 00022941  0x00005c0f copy  0x0000003f , 0x00000039 
+ 00022942  0x00005c10 increase  0x00000002 , 0x0000003f 
+ 00022943  0x00005c11 istore  0x00000001 , 0x00000005 
+ 00022944  0x00005c12 fetch  0x00000002 , 0x00000aa2 
+ 00022945  0x00005c13 istore  0x00000002 , 0x00000005 
+ 00022946  0x00005c14 call  0x00007e9f 
+ 00022947  0x00005c15 call  0x00007ef4 
+ 00022948  0x00005c16 call  0x00007ea2 
+ 00022949  0x00005c17 branch  0x00005aa5 
+ 00022950  0x00005c1a call  0x00005a84 
+ 00022951  0x00005c1b branch  0x00005992 
+ 00022952  0x00005c1f arg  0x00002a00 , 0x00000002 
+ 00022953  0x00005c20 call  0x0000577c 
+ 00022954  0x00005c21 rtn  0x00000034 
+ 00022955  0x00005c22 increase  0xfffffffb , 0x00000006 
+ 00022956  0x00005c23 ifetch  0x00000002 , 0x00000006 
+ 00022957  0x00005c24 store  0x00000002 , 0x00000aa2 
+ 00022958  0x00005c25 arg  0x00000014 , 0x00000011 
+ 00022959  0x00005c26 call  0x00005a82 
+ 00022960  0x00005c27 setarg  0x00000009 
+ 00022961  0x00005c28 istore  0x00000001 , 0x00000005 
+ 00022962  0x00005c29 fetch  0x00000001 , 0x000043af 
+ 00022963  0x00005c2a copy  0x0000003f , 0x00000039 
+ 00022964  0x00005c2b increase  0x00000002 , 0x0000003f 
+ 00022965  0x00005c2c istore  0x00000001 , 0x00000005 
+ 00022966  0x00005c2d fetch  0x00000002 , 0x00000aa2 
+ 00022967  0x00005c2e istore  0x00000002 , 0x00000005 
+ 00022968  0x00005c2f arg  0x000043b0 , 0x00000006 
+ 00022969  0x00005c30 call  0x00007ef4 
+ 00022970  0x00005c31 call  0x00007ea2 
+ 00022971  0x00005c32 branch  0x00005aa5 
+ 00022972  0x00005c37 fetcht  0x00000002 , 0x00000478 
+ 00022973  0x00005c38 fetch  0x00000001 , 0x000044e9 
+ 00022974  0x00005c39 bbit1  0x00000003 , 0x000059dd 
+ 00022975  0x00005c3c call  0x0000576a 
+ 00022976  0x00005c3d branch  0x00005a76 , 0x00000034 
+ 00022977  0x00005c3e increase  0xfffffffe , 0x00000006 
+ 00022978  0x00005c3f ifetch  0x00000002 , 0x00000006 
+ 00022979  0x00005c40 arg  0x00002a00 , 0x00000002 
+ 00022980  0x00005c41 isub  0x00000002 , 0x0000003e 
+ 00022981  0x00005c42 branch  0x000059d3 , 0x00000005 
+ 00022982  0x00005c43 ifetch  0x00000001 , 0x00000006 
+ 00022983  0x00005c44 sub  0x0000003f , 0x00000016 , 0x0000003e 
+ 00022984  0x00005c45 branch  0x000059ca , 0x00000002 
+ 00022985  0x00005c46 force  0x00000016 , 0x0000003f 
+ 00022986  0x00005c48 copy  0x0000003f , 0x00000013 
+ 00022987  0x00005c49 call  0x00007ea5 
+ 00022988  0x00005c4a add  0x00000013 , 0x00000001 , 0x00000011 
+ 00022989  0x00005c4b call  0x00005a82 
+ 00022990  0x00005c4c setarg  0x0000000b 
+ 00022991  0x00005c4d istore  0x00000001 , 0x00000005 
+ 00022992  0x00005c4e copy  0x00000013 , 0x00000039 
+ 00022993  0x00005c4f call  0x00007e9f 
+ 00022994  0x00005c50 branch  0x00007f01 
+ 00022995  0x00005c53 call  0x00007ea5 
+ 00022996  0x00005c54 fetch  0x00000001 , 0x000043af 
+ 00022997  0x00005c55 add  0x0000003f , 0x00000001 , 0x00000011 
+ 00022998  0x00005c56 call  0x00005a82 
+ 00022999  0x00005c57 setarg  0x0000000b 
+ 00023000  0x00005c58 istore  0x00000001 , 0x00000005 
+ 00023001  0x00005c59 fetch  0x00000001 , 0x000043af 
+ 00023002  0x00005c5a copy  0x0000003f , 0x00000039 
+ 00023003  0x00005c5b arg  0x000043b0 , 0x00000006 
+ 00023004  0x00005c5c branch  0x00007f01 
+ 00023005  0x00005c60 fetch  0x00000002 , 0x000044fa 
+ 00023006  0x00005c61 isub  0x00000002 , 0x0000003e 
+ 00023007  0x00005c62 nbranch  0x000059bf , 0x00000005 
+ 00023008  0x00005c64 call  0x00005a42 
+ 00023009  0x00005c65 nbranch  0x000059bf , 0x00000028 
+ 00023010  0x00005c66 jam  0x00000005 , 0x0000047a 
+ 00023011  0x00005c67 branch  0x00005a77 
+ 00023012  0x00005c6b ifetch  0x00000002 , 0x00000006 
+ 00023013  0x00005c6c store  0x00000002 , 0x0000445e 
+ 00023014  0x00005c6e arg  0x00000014 , 0x00000011 
+ 00023015  0x00005c6f call  0x00005a82 
+ 00023016  0x00005c70 setarg  0x0000000d 
+ 00023017  0x00005c71 istore  0x00000001 , 0x00000005 
+ 00023018  0x00005c72 fetch  0x00000002 , 0x0000445e 
+ 00023019  0x00005c73 iforce  0x00000011 
+ 00023020  0x00005c74 fetcht  0x00000002 , 0x00000478 
+ 00023021  0x00005c75 call  0x0000576a 
+ 00023022  0x00005c76 branch  0x00005a76 , 0x00000034 
+ 00023023  0x00005c77 ifetch  0x00000001 , 0x00000006 
+ 00023024  0x00005c78 isub  0x00000011 , 0x00000039 
+ 00023025  0x00005c79 nbranch  0x00005a76 , 0x00000002 
+ 00023026  0x00005c7a sub  0x00000039 , 0x00000016 , 0x0000003e 
+ 00023027  0x00005c7b branch  0x000059f5 , 0x00000002 
+ 00023028  0x00005c7c force  0x00000016 , 0x00000039 
+ 00023029  0x00005c7e deposit  0x00000011 
+ 00023030  0x00005c7f iadd  0x00000006 , 0x00000006 
+ 00023031  0x00005c80 call  0x00007ef4 
+ 00023032  0x00005c81 call  0x00007ea2 
+ 00023033  0x00005c82 branch  0x00005aa5 
+ 00023034  0x00005c86 call  0x00005ab1 
+ 00023035  0x00005c87 call  0x000056d7 
+ 00023036  0x00005c88 branch  0x000059fd 
+ 00023037  0x00005c8e arg  0x00000002 , 0x0000000b 
+ 00023038  0x00005c8f fetcht  0x00000002 , 0x0000445a 
+ 00023039  0x00005c93 storet  0x00000002 , 0x00000aa2 
+ 00023040  0x00005c94 call  0x00005756 
+ 00023041  0x00005c95 call  0x0000576d 
+ 00023042  0x00005c96 increase  0xfffffffe , 0x00000006 
+ 00023043  0x00005c97 copy  0x00000006 , 0x0000003f 
+ 00023044  0x00005c98 store  0x00000002 , 0x0000049c 
+ 00023045  0x00005c9a call  0x00005a88 
+ 00023046  0x00005c9b nbranch  0x00005a25 , 0x00000002 
+ 00023047  0x00005c9c fetcht  0x00000002 , 0x00000aa2 
+ 00023048  0x00005c9d call  0x0000578a 
+ 00023049  0x00005c9e beq  0x00000001 , 0x00005a28 
+ 00023050  0x00005ca0 call  0x00005a8c 
+ 00023051  0x00005ca1 nbranch  0x00005a23 , 0x00000005 
+ 00023052  0x00005ca2 copy  0x0000000b , 0x0000003f 
+ 00023053  0x00005ca3 beq  0x00000000 , 0x00005a28 
+ 00023054  0x00005ca4 nbranch  0x00005a19 , 0x00000028 
+ 00023055  0x00005ca5 disable  0x00000028 
+ 00023056  0x00005ca7 arg  0x00000014 , 0x00000011 
+ 00023057  0x00005ca8 call  0x00005a82 
+ 00023058  0x00005ca9 setarg  0x00000011 
+ 00023059  0x00005caa istore  0x00000001 , 0x00000005 
+ 00023060  0x00005cab fetch  0x00000001 , 0x000004b3 
+ 00023061  0x00005cac increase  0x00000004 , 0x0000003f 
+ 00023062  0x00005cad istore  0x00000001 , 0x00000005 
+ 00023063  0x00005cae call  0x00007ea2 
+ 00023064  0x00005caf branch  0x00005a1f 
+ 00023065  0x00005cb1 fetch  0x00000001 , 0x000004b3 
+ 00023066  0x00005cb2 beq  0x00000010 , 0x00005a28 
+ 00023067  0x00005cb3 fetch  0x00000002 , 0x00000aa2 
+ 00023068  0x00005cb4 increase  0xffffffff , 0x0000003f 
+ 00023069  0x00005cb5 store  0x00000002 , 0x000004a0 
+ 00023070  0x00005cb6 call  0x00005a9c 
+ 00023071  0x00005cb8 fetch  0x00000002 , 0x00000aa2 
+ 00023072  0x00005cb9 store  0x00000002 , 0x0000049e 
+ 00023073  0x00005cba call  0x00005a97 
+ 00023074  0x00005cbb increase  0xffffffff , 0x0000000b 
+ 00023075  0x00005cbe call  0x00005a84 
+ 00023076  0x00005cbf branch  0x00005a05 
+ 00023077  0x00005cc2 fetch  0x00000002 , 0x00000aa2 
+ 00023078  0x00005cc3 store  0x00000002 , 0x000004a0 
+ 00023079  0x00005cc4 branch  0x00005a2c 
+ 00023080  0x00005cc6 fetch  0x00000002 , 0x00000aa2 
+ 00023081  0x00005cc7 increase  0xffffffff , 0x0000003f 
+ 00023082  0x00005cc8 store  0x00000002 , 0x000004a0 
+ 00023083  0x00005cc9 branch  0x00005a2c 
+ 00023084  0x00005ccb branch  0x00005a76 , 0x00000028 
+ 00023085  0x00005ccc call  0x00005a9c 
+ 00023086  0x00005ccd branch  0x00005aa5 
+ 00023087  0x00005cd3 copy  0x00000006 , 0x00000011 
+ 00023088  0x00005cd4 fetch  0x00000002 , 0x000044fc 
+ 00023089  0x00005cd5 add  0x0000003f , 0xfffffffd , 0x00000012 
+ 00023090  0x00005cd6 call  0x000056e2 
+ 00023091  0x00005cd8 fetch  0x00000001 , 0x000044e9 
+ 00023092  0x00005cd9 bbit0  0x00000004 , 0x00005a3d 
+ 00023093  0x00005cdb fetcht  0x00000002 , 0x00000478 
+ 00023094  0x00005cdc fetch  0x00000002 , 0x000044fa 
+ 00023095  0x00005cdd isub  0x00000002 , 0x0000003e 
+ 00023096  0x00005cde nbranch  0x00005a3d , 0x00000005 
+ 00023097  0x00005cdf call  0x00005a42 
+ 00023098  0x00005ce0 nbranch  0x00005a3d , 0x00000028 
+ 00023099  0x00005ce1 jam  0x00000005 , 0x0000047a 
+ 00023100  0x00005ce2 branch  0x00005a77 
+ 00023101  0x00005ce5 force  0x00000001 , 0x00000011 
+ 00023102  0x00005ce6 call  0x00005a82 
+ 00023103  0x00005ce7 setarg  0x00000013 
+ 00023104  0x00005ce8 istore  0x00000001 , 0x00000005 
+ 00023105  0x00005ce9 rtn 
+ 00023106  0x00005cec call  0x00007fe9 
+ 00023107  0x00005ced fetch  0x00000001 , 0x000044c6 
+ 00023108  0x00005cee rtneq  0x00000000 
+ 00023109  0x00005cef fetch  0x00000001 , 0x00004040 
+ 00023110  0x00005cf0 rtnbit1  0x00000004 
+ 00023111  0x00005cf1 branch  0x00007fe7 
+ 00023112  0x00005cf5 add  0x00000006 , 0x00000002 , 0x00000011 
+ 00023113  0x00005cf6 fetch  0x00000002 , 0x000044fc 
+ 00023114  0x00005cf7 add  0x0000003f , 0xfffffffb , 0x00000012 
+ 00023115  0x00005cf8 call  0x000056e2 
+ 00023116  0x00005cf9 branch  0x00005a4d 
+ 00023117  0x00005cfd fetch  0x00000002 , 0x000044fc 
+ 00023118  0x00005cfe copy  0x0000003f , 0x00000011 
+ 00023119  0x00005cff call  0x00005a82 
+ 00023120  0x00005d00 setarg  0x00000017 
+ 00023121  0x00005d01 istore  0x00000001 , 0x00000005 
+ 00023122  0x00005d02 fetch  0x00000002 , 0x00000478 
+ 00023123  0x00005d03 istore  0x00000002 , 0x00000005 
+ 00023124  0x00005d04 fetch  0x00000002 , 0x000044fc 
+ 00023125  0x00005d05 add  0x0000003f , 0xfffffffb , 0x00000039 
+ 00023126  0x00005d06 fetch  0x00000002 , 0x0000450d 
+ 00023127  0x00005d07 add  0x0000003f , 0x00000007 , 0x00000006 
+ 00023128  0x00005d08 ifetch  0x00000002 , 0x00000006 
+ 00023129  0x00005d09 istore  0x00000002 , 0x00000005 
+ 00023130  0x00005d0a branch  0x00007ef4 
+ 00023131  0x00005d11 force  0x00000001 , 0x00000011 
+ 00023132  0x00005d12 call  0x00005a82 
+ 00023133  0x00005d13 setarg  0x00000019 
+ 00023134  0x00005d14 istore  0x00000001 , 0x00000005 
+ 00023135  0x00005d15 rtn 
+ 00023136  0x00005d1a copy  0x00000006 , 0x00000011 
+ 00023137  0x00005d1b fetch  0x00000002 , 0x000044fc 
+ 00023138  0x00005d1c add  0x0000003f , 0xfffffffd , 0x00000012 
+ 00023139  0x00005d1d branch  0x000056e2 
+ 00023140  0x00005d23 copy  0x00000002 , 0x00000013 
+ 00023141  0x00005d24 increase  0x00000003 , 0x00000011 
+ 00023142  0x00005d25 call  0x00005a82 
+ 00023143  0x00005d26 increase  0xfffffffd , 0x00000011 
+ 00023144  0x00005d27 setarg  0x0000001b 
+ 00023145  0x00005d28 istore  0x00000001 , 0x00000005 
+ 00023146  0x00005d29 copy  0x00000013 , 0x00000002 
+ 00023147  0x00005d2a istoret  0x00000002 , 0x00000005 
+ 00023148  0x00005d2b rtn 
+ 00023149  0x00005d2f copy  0x00000002 , 0x00000013 
+ 00023150  0x00005d30 increase  0x00000003 , 0x00000011 
+ 00023151  0x00005d31 call  0x00005a82 
+ 00023152  0x00005d32 increase  0xfffffffd , 0x00000011 
+ 00023153  0x00005d33 setarg  0x0000001d 
+ 00023154  0x00005d34 istore  0x00000001 , 0x00000005 
+ 00023155  0x00005d35 copy  0x00000013 , 0x00000002 
+ 00023156  0x00005d36 istoret  0x00000002 , 0x00000005 
+ 00023157  0x00005d37 rtn 
+ 00023158  0x00005d3d jam  0x0000000a , 0x0000047a 
+ 00023159  0x00005d3f force  0x00000005 , 0x00000011 
+ 00023160  0x00005d40 call  0x00005a82 
+ 00023161  0x00005d41 setarg  0x00000001 
+ 00023162  0x00005d42 istore  0x00000001 , 0x00000005 
+ 00023163  0x00005d43 fetch  0x00000001 , 0x00000477 
+ 00023164  0x00005d44 istore  0x00000001 , 0x00000005 
+ 00023165  0x00005d45 fetch  0x00000002 , 0x00000478 
+ 00023166  0x00005d46 istore  0x00000002 , 0x00000005 
+ 00023167  0x00005d47 fetch  0x00000001 , 0x0000047a 
+ 00023168  0x00005d48 istore  0x00000001 , 0x00000005 
+ 00023169  0x00005d49 rtn 
+ 00023170  0x00005d4d force  0x00000004 , 0x00000012 
+ 00023171  0x00005d4e branch  0x00005847 
+ 00023172  0x00005d52 fetcht  0x00000002 , 0x00000aa2 
+ 00023173  0x00005d53 increase  0x00000001 , 0x00000002 
+ 00023174  0x00005d54 storet  0x00000002 , 0x00000aa2 
+ 00023175  0x00005d55 rtn 
+ 00023176  0x00005d58 fetcht  0x00000002 , 0x00000aa2 
+ 00023177  0x00005d59 fetch  0x00000002 , 0x0000445c 
+ 00023178  0x00005d5a isub  0x00000002 , 0x0000003e 
+ 00023179  0x00005d5b rtn 
+ 00023180  0x00005d5f fetcht  0x00000001 , 0x0000445e 
+ 00023181  0x00005d60 arg  0x0000445f , 0x00000011 
+ 00023182  0x00005d62 fetch  0x00000001 , 0x000004a2 
+ 00023183  0x00005d63 copy  0x0000003f , 0x00000039 
+ 00023184  0x00005d64 isub  0x00000002 , 0x0000003e 
+ 00023185  0x00005d65 nrtn  0x00000005 
+ 00023186  0x00005d66 arg  0x000004a3 , 0x00000012 
+ 00023187  0x00005d67 branch  0x00007f88 
+ 00023188  0x00005d6a fetcht  0x00000001 , 0x00004471 
+ 00023189  0x00005d6b arg  0x00004472 , 0x00000011 
+ 00023190  0x00005d6c branch  0x00005a8e 
+ 00023191  0x00005d70 fetch  0x00000001 , 0x000004b3 
+ 00023192  0x00005d71 store  0x00000001 , 0x00000101 
+ 00023193  0x00005d72 copy  0x0000003f , 0x00000039 
+ 00023194  0x00005d73 call  0x00007e9f 
+ 00023195  0x00005d74 branch  0x00007ef4 
+ 00023196  0x00005d78 call  0x00007e9c 
+ 00023197  0x00005d79 fetch  0x00000002 , 0x0000049e 
+ 00023198  0x00005d7a istore  0x00000002 , 0x00000005 
+ 00023199  0x00005d7b fetch  0x00000002 , 0x000004a0 
+ 00023200  0x00005d7c istore  0x00000002 , 0x00000005 
+ 00023201  0x00005d7e fetch  0x00000001 , 0x00000101 
+ 00023202  0x00005d7f copy  0x0000003f , 0x00000039 
+ 00023203  0x00005d80 call  0x00007ef4 
+ 00023204  0x00005d81 branch  0x00007ea2 
+ 00023205  0x00005d86 call  0x00007e9c 
+ 00023206  0x00005d87 call  0x0000588a 
+ 00023207  0x00005d88 copy  0x00000005 , 0x0000003f 
+ 00023208  0x00005d89 isub  0x00000006 , 0x00000011 
+ 00023209  0x00005d8a call  0x0000588d 
+ 00023210  0x00005d8b copy  0x00000011 , 0x0000003f 
+ 00023211  0x00005d8c istore  0x00000002 , 0x00000006 
+ 00023212  0x00005d8d increase  0x00000004 , 0x00000011 
+ 00023213  0x00005d8e call  0x00005879 
+ 00023214  0x00005d8f copy  0x00000011 , 0x0000003f 
+ 00023215  0x00005d90 istore  0x00000001 , 0x00000006 
+ 00023216  0x00005d91 rtn 
+ 00023217  0x00005d95 rshift8  0x0000003f , 0x0000003f 
+ 00023218  0x00005d96 store  0x00000002 , 0x0000445a 
+ 00023219  0x00005d97 ifetch  0x00000002 , 0x00000006 
+ 00023220  0x00005d98 store  0x00000002 , 0x0000445c 
+ 00023221  0x00005d99 rtn 
+ 00023222  0x00005d9f ifetch  0x00000001 , 0x00000006 
+ 00023223  0x00005da0 ifetcht  0x00000001 , 0x00000006 
+ 00023224  0x00005da1 ifetcht  0x00000002 , 0x00000006 
+ 00023225  0x00005da2 beq  0x00000013 , 0x00005abb 
+ 00023226  0x00005da3 rtn 
+ 00023227  0x00005da5 ifetch  0x00000002 , 0x00000006 
+ 00023228  0x00005da6 store  0x00000002 , 0x00004509 
+ 00023229  0x00005da7 jam  0x00000040 , 0x00000a99 
+ 00023230  0x00005da8 branch  0x00007d86 
+ 00023231  0x00005daf arg  0x0000000c , 0x00000011 
+ 00023232  0x00005db0 arg  0x00000012 , 0x00000013 
+ 00023233  0x00005db1 call  0x00005ac7 
+ 00023234  0x00005db2 setarg  0x00000008 
+ 00023235  0x00005db3 istore  0x00000002 , 0x00000005 
+ 00023236  0x00005db4 fetch  0x00000008 , 0x00004496 
+ 00023237  0x00005db5 istore  0x00000008 , 0x00000005 
+ 00023238  0x00005db6 rtn 
+ 00023239  0x00005dbb call  0x00005acf 
+ 00023240  0x00005dbc arg  0x00000005 , 0x00000012 
+ 00023241  0x00005dbd call  0x00005847 
+ 00023242  0x00005dbe copy  0x00000013 , 0x0000003f 
+ 00023243  0x00005dbf istore  0x00000001 , 0x00000005 
+ 00023244  0x00005dc0 fetch  0x00000001 , 0x00004508 
+ 00023245  0x00005dc1 istore  0x00000001 , 0x00000005 
+ 00023246  0x00005dc2 rtn 
+ 00023247  0x00005dc6 fetch  0x00000001 , 0x00004508 
+ 00023248  0x00005dc8 pincrease  0x00000001 
+ 00023249  0x00005dc9 store  0x00000001 , 0x00004508 
+ 00023250  0x00005dca rtnne  0x00000000 
+ 00023251  0x00005dcd jam  0x00000001 , 0x00004508 
+ 00023252  0x00005dce rtn 
+ 00023253  0x00005dd4 fetch  0x00000001 , 0x000044c6 
+ 00023254  0x00005dd5 beq  0x00000000 , 0x00005ae4 
+ 00023255  0x00005dd6 beq  0x00000001 , 0x00005ae7 
+ 00023256  0x00005dd7 beq  0x00000002 , 0x00005ae9 
+ 00023257  0x00005dd8 beq  0x00000081 , 0x00005add 
+ 00023258  0x00005dd9 beq  0x00000082 , 0x00005adf 
+ 00023259  0x00005dda beq  0x00000083 , 0x00005ae2 
+ 00023260  0x00005ddb rtn 
+ 00023261  0x00005dde jam  0x0000000d , 0x00004456 
+ 00023262  0x00005ddf branch  0x00005ae5 
+ 00023263  0x00005de1 jam  0x0000000d , 0x00004456 
+ 00023264  0x00005de2 jam  0x00000001 , 0x00004454 
+ 00023265  0x00005de3 rtn 
+ 00023266  0x00005de5 jam  0x0000000d , 0x00004456 
+ 00023267  0x00005de6 branch  0x00005aea 
+ 00023268  0x00005de8 jam  0x00000000 , 0x00004456 
+ 00023269  0x00005dea jam  0x00000003 , 0x00004454 
+ 00023270  0x00005deb rtn 
+ 00023271  0x00005ded jam  0x00000005 , 0x00004456 
+ 00023272  0x00005dee branch  0x00005ae5 
+ 00023273  0x00005df0 jam  0x00000005 , 0x00004456 
+ 00023274  0x00005df2 jam  0x00000000 , 0x00004454 
+ 00023275  0x00005df3 rtn 
+ 00023276  0x00005df7 fetch  0x00000001 , 0x00004456 
+ 00023277  0x00005df8 set1  0x00000003 , 0x0000003f 
+ 00023278  0x00005df9 store  0x00000001 , 0x00004456 
+ 00023279  0x00005dfa rtn 
+ 00023280  0x00005dfc fetch  0x00000001 , 0x00004456 
+ 00023281  0x00005dfd set0  0x00000003 , 0x0000003f 
+ 00023282  0x00005dfe store  0x00000001 , 0x00004456 
+ 00023283  0x00005dff rtn 
+ 00023284  0x00005e02 ifetch  0x00000001 , 0x00000006 
+ 00023285  0x00005e03 beq  0x00000001 , 0x00005b09 
+ 00023286  0x00005e05 beq  0x00000003 , 0x00005b30 
+ 00023287  0x00005e06 beq  0x00000004 , 0x00005b4d 
+ 00023288  0x00005e07 beq  0x00000005 , 0x00005b5a 
+ 00023289  0x00005e08 beq  0x00000006 , 0x00005b80 
+ 00023290  0x00005e09 beq  0x00000007 , 0x00005bc4 
+ 00023291  0x00005e0a beq  0x00000008 , 0x00005baf 
+ 00023292  0x00005e0b beq  0x00000009 , 0x00005bc0 
+ 00023293  0x00005e0c beq  0x0000000a , 0x00005bc4 
+ 00023294  0x00005e0d beq  0x0000000b , 0x00005bc4 
+ 00023295  0x00005e0e beq  0x0000000c , 0x00005bc5 
+ 00023296  0x00005e0f beq  0x0000000d , 0x00005bca 
+ 00023297  0x00005e10 rtn 
+ 00023298  0x00005e15 force  0x00000002 , 0x00000011 
+ 00023299  0x00005e16 call  0x00005c62 
+ 00023300  0x00005e17 setarg  0x0000000b 
+ 00023301  0x00005e18 istore  0x00000001 , 0x00000005 
+ 00023302  0x00005e19 fetch  0x00000001 , 0x00004456 
+ 00023303  0x00005e1a istore  0x00000001 , 0x00000005 
+ 00023304  0x00005e1b rtn 
+ 00023305  0x00005e1e store  0x00000001 , 0x0000444c 
+ 00023306  0x00005e1f ifetch  0x00000006 , 0x00000006 
+ 00023307  0x00005e20 istore  0x00000006 , 0x00000005 
+ 00023308  0x00005e21 fetch  0x00000001 , 0x000044c6 
+ 00023309  0x00005e22 beq  0x00000000 , 0x00005b5f 
+ 00023310  0x00005e23 call  0x00005b2b 
+ 00023311  0x00005e24 call  0x00005b26 
+ 00023312  0x00005e25 jam  0x00000003 , 0x000044c4 
+ 00023313  0x00005e26 fetch  0x00000001 , 0x0000444d 
+ 00023314  0x00005e27 beq  0x00000000 , 0x00005b18 
+ 00023315  0x00005e28 beq  0x00000001 , 0x00005b18 
+ 00023316  0x00005e29 beq  0x00000003 , 0x00005b18 
+ 00023317  0x00005e2a fetch  0x00000001 , 0x000044c6 
+ 00023318  0x00005e2b beq  0x00000002 , 0x00005b1b 
+ 00023319  0x00005e2c rtneq  0x00000083 
+ 00023320  0x00005e2e arg  0x00000000 , 0x0000003f 
+ 00023321  0x00005e2f store  0x00000004 , 0x000044c7 
+ 00023322  0x00005e30 rtn 
+ 00023323  0x00005e33 fetch  0x00000001 , 0x000044e9 
+ 00023324  0x00005e34 bbit1  0x00000000 , 0x00005b24 
+ 00023325  0x00005e36 arg  0x000044c7 , 0x00000011 
+ 00023326  0x00005e37 copy  0x00000011 , 0x00000005 
+ 00023327  0x00005e38 arg  0x00000003 , 0x00000039 
+ 00023328  0x00005e39 call  0x0000630d 
+ 00023329  0x00005e3a fetch  0x00000002 , 0x000044c9 
+ 00023330  0x00005e3b and_into  0x00000007 , 0x0000003f 
+ 00023331  0x00005e3c store  0x00000002 , 0x000044c9 
+ 00023332  0x00005e3e jam  0x00000034 , 0x00000a99 
+ 00023333  0x00005e3f branch  0x00007d86 
+ 00023334  0x00005e42 fetch  0x00000001 , 0x0000444f 
+ 00023335  0x00005e43 rtnbit1  0x00000003 
+ 00023336  0x00005e44 fetch  0x00000001 , 0x000044c6 
+ 00023337  0x00005e45 rtnbit0  0x00000007 
+ 00023338  0x00005e46 branch  0x00003402 
+ 00023339  0x00005e49 force  0x00000007 , 0x00000011 
+ 00023340  0x00005e4a call  0x00005c62 
+ 00023341  0x00005e4b fetch  0x00000007 , 0x00004453 
+ 00023342  0x00005e4c istore  0x00000007 , 0x00000005 
+ 00023343  0x00005e4d rtn 
+ 00023344  0x00005e51 copy  0x00000006 , 0x00000011 
+ 00023345  0x00005e52 fetch  0x00000001 , 0x000044c6 
+ 00023346  0x00005e53 beq  0x00000083 , 0x00005b37 
+ 00023347  0x00005e54 copy  0x00000011 , 0x00000006 
+ 00023348  0x00005e55 arg  0x0000442a , 0x00000005 
+ 00023349  0x00005e56 call  0x00007ebf 
+ 00023350  0x00005e57 branch  0x00005b3d 
+ 00023351  0x00005e59 copy  0x00000011 , 0x00000006 
+ 00023352  0x00005e5a arg  0x0000442a , 0x00000005 
+ 00023353  0x00005e5b call  0x00007ebf 
+ 00023354  0x00005e5c jam  0x00000002 , 0x000044bf 
+ 00023355  0x00005e5d jam  0x00000008 , 0x000044c1 
+ 00023356  0x00005e5e rtn 
+ 00023357  0x00005e62 fetch  0x00000001 , 0x000044c6 
+ 00023358  0x00005e63 bbit1  0x00000007 , 0x00005b45 
+ 00023359  0x00005e64 call  0x0000739c 
+ 00023360  0x00005e65 force  0x00000011 , 0x00000011 
+ 00023361  0x00005e66 call  0x00005c62 
+ 00023362  0x00005e67 setarg  0x00000003 
+ 00023363  0x00005e68 istore  0x00000001 , 0x00000005 
+ 00023364  0x00005e69 branch  0x00007497 
+ 00023365  0x00005e6d arg  0x0000443a , 0x00000005 
+ 00023366  0x00005e6e call  0x0000630c 
+ 00023367  0x00005e6f call  0x000071c5 
+ 00023368  0x00005e70 force  0x00000011 , 0x00000011 
+ 00023369  0x00005e71 call  0x00005c62 
+ 00023370  0x00005e72 setarg  0x00000003 
+ 00023371  0x00005e73 istore  0x00000001 , 0x00000005 
+ 00023372  0x00005e74 branch  0x00007201 
+ 00023373  0x00005e79 copy  0x00000006 , 0x00000011 
+ 00023374  0x00005e7a fetch  0x00000001 , 0x000044c6 
+ 00023375  0x00005e7b bbit1  0x00000007 , 0x00005b61 
+ 00023376  0x00005e7c copy  0x00000011 , 0x00000006 
+ 00023377  0x00005e7d call  0x00007394 
+ 00023378  0x00005e7e branch  0x00005b75 , 0x00000005 
+ 00023379  0x00005e80 jam  0x00000004 , 0x0000047b 
+ 00023380  0x00005e82 force  0x00000002 , 0x00000011 
+ 00023381  0x00005e83 call  0x00005c62 
+ 00023382  0x00005e84 setarg  0x00000005 
+ 00023383  0x00005e85 istore  0x00000001 , 0x00000005 
+ 00023384  0x00005e86 fetch  0x00000001 , 0x0000047b 
+ 00023385  0x00005e87 istore  0x00000001 , 0x00000005 
+ 00023386  0x00005e89 force  0x0000000a , 0x00000007 
+ 00023387  0x00005e8a call  0x00007f07 
+ 00023388  0x00005e8b jam  0x00000000 , 0x000044c4 
+ 00023389  0x00005e8c jam  0x00000030 , 0x00000a99 
+ 00023390  0x00005e8d branch  0x00007d86 
+ 00023391  0x00005e90 jam  0x00000005 , 0x0000047b 
+ 00023392  0x00005e91 branch  0x00005b54 
+ 00023393  0x00005e95 arg  0x0000042f , 0x00000005 
+ 00023394  0x00005e96 copy  0x00000011 , 0x00000006 
+ 00023395  0x00005e97 call  0x00007ebf 
+ 00023396  0x00005e98 fetch  0x00000001 , 0x000044c6 
+ 00023397  0x00005e99 beq  0x00000083 , 0x00005b6c 
+ 00023398  0x00005e9a call  0x0000714f 
+ 00023399  0x00005e9d call  0x00005b7a 
+ 00023400  0x00005e9e fetch  0x00000001 , 0x000044c6 
+ 00023401  0x00005e9f rtnne  0x00000082 
+ 00023402  0x00005ea0 jam  0x0000003b , 0x00000a99 
+ 00023403  0x00005ea1 branch  0x00007d86 
+ 00023404  0x00005ea4 call  0x000071ba 
+ 00023405  0x00005ea5 arg  0x00000af2 , 0x00000005 
+ 00023406  0x00005ea6 call  0x00007201 
+ 00023407  0x00005ea7 arg  0x00000af2 , 0x00000011 
+ 00023408  0x00005ea8 arg  0x0000442a , 0x00000012 
+ 00023409  0x00005ea9 arg  0x00000010 , 0x00000039 
+ 00023410  0x00005eaa call  0x00007f88 
+ 00023411  0x00005eab nbranch  0x00005b53 , 0x00000005 
+ 00023412  0x00005eac branch  0x00005b7a 
+ 00023413  0x00005eaf call  0x00007390 
+ 00023414  0x00005eb0 jam  0x00000031 , 0x00000a99 
+ 00023415  0x00005eb1 call  0x00007d86 
+ 00023416  0x00005eb2 jam  0x00000001 , 0x00004429 
+ 00023417  0x00005eb3 jam  0x00000005 , 0x000044c4 
+ 00023418  0x00005eb6 force  0x00000011 , 0x00000011 
+ 00023419  0x00005eb7 call  0x00005c62 
+ 00023420  0x00005eb8 setarg  0x00000004 
+ 00023421  0x00005eb9 istore  0x00000001 , 0x00000005 
+ 00023422  0x00005eba arg  0x0000443a , 0x00000006 
+ 00023423  0x00005ebb branch  0x00007ebf 
+ 00023424  0x00005ebe arg  0x0000041f , 0x00000005 
+ 00023425  0x00005ebf branch  0x00007ebf 
+ 00023426  0x00005ec2 force  0x00000011 , 0x00000011 
+ 00023427  0x00005ec3 call  0x00005c62 
+ 00023428  0x00005ec4 setarg  0x00000006 
+ 00023429  0x00005ec5 istore  0x00000001 , 0x00000005 
+ 00023430  0x00005ec6 fetch  0x00000001 , 0x000044e9 
+ 00023431  0x00005ec7 bbit1  0x00000001 , 0x00005b8a 
+ 00023432  0x00005ec8 arg  0x00004419 , 0x00000006 
+ 00023433  0x00005ec9 branch  0x00007ebf 
+ 00023434  0x00005ecc arg  0x000044ea , 0x00000006 
+ 00023435  0x00005ecd branch  0x00007ebf 
+ 00023436  0x00005ed1 arg  0x000044cb , 0x00000005 
+ 00023437  0x00005ed2 force  0x0000000a , 0x00000039 
+ 00023438  0x00005ed3 call  0x0000630d 
+ 00023439  0x00005ed4 force  0x0000000b , 0x00000011 
+ 00023440  0x00005ed5 call  0x00005c62 
+ 00023441  0x00005ed6 setarg  0x00000007 
+ 00023442  0x00005ed7 istore  0x00000001 , 0x00000005 
+ 00023443  0x00005ed8 fetch  0x00000002 , 0x000044cb 
+ 00023444  0x00005ed9 istore  0x00000002 , 0x00000005 
+ 00023445  0x00005eda fetch  0x00000008 , 0x000044cd 
+ 00023446  0x00005edb istore  0x00000008 , 0x00000005 
+ 00023447  0x00005edc rtn 
+ 00023448  0x00005edf force  0x00000011 , 0x00000011 
+ 00023449  0x00005ee0 call  0x00005c62 
+ 00023450  0x00005ee1 setarg  0x00000008 
+ 00023451  0x00005ee2 istore  0x00000001 , 0x00000005 
+ 00023452  0x00005ee3 setarg  0x00000000 
+ 00023453  0x00005ee4 istore  0x00000008 , 0x00000005 
+ 00023454  0x00005ee5 istore  0x00000008 , 0x00000005 
+ 00023455  0x00005ee6 rtn 
+ 00023456  0x00005eea force  0x00000008 , 0x00000011 
+ 00023457  0x00005eeb call  0x00005c62 
+ 00023458  0x00005eec setarg  0x00000009 
+ 00023459  0x00005eed istore  0x00000001 , 0x00000005 
+ 00023460  0x00005eee fetch  0x00000001 , 0x00004495 
+ 00023461  0x00005eef istore  0x00000001 , 0x00000005 
+ 00023462  0x00005ef0 fetch  0x00000006 , 0x000044a0 
+ 00023463  0x00005ef1 istore  0x00000006 , 0x00000005 
+ 00023464  0x00005ef2 rtn 
+ 00023465  0x00005ef6 jam  0x00000008 , 0x0000047b 
+ 00023466  0x00005ef7 branch  0x00005b54 
+ 00023467  0x00005efa fetch  0x00000001 , 0x00004458 
+ 00023468  0x00005efb fetcht  0x00000001 , 0x00004458 
+ 00023469  0x00005efc iand  0x00000002 , 0x0000003f 
+ 00023470  0x00005efd rtn 
+ 00023471  0x00005f00 arg  0x000044d5 , 0x00000005 
+ 00023472  0x00005f01 call  0x00007ebf 
+ 00023473  0x00005f02 call  0x00005bab 
+ 00023474  0x00005f03 isolate0  0x00000001 , 0x0000003f 
+ 00023475  0x00005f04 branch  0x00005ba9 , 0x00000001 
+ 00023476  0x00005f05 fetch  0x00000001 , 0x00004092 
+ 00023477  0x00005f06 rtnne  0x0000000a 
+ 00023478  0x00005f07 call  0x00005bb9 
+ 00023479  0x00005f08 nrtn  0x00000028 
+ 00023480  0x00005f09 branch  0x00003410 
+ 00023481  0x00005f0d call  0x00007fe9 
+ 00023482  0x00005f0e fetch  0x00000001 , 0x0000448e 
+ 00023483  0x00005f0f rtneq  0x00000000 
+ 00023484  0x00005f10 fetch  0x00000001 , 0x00000454 
+ 00023485  0x00005f11 compare  0x000000c0 , 0x0000003f , 0x000000c0 
+ 00023486  0x00005f12 rtn  0x00000001 
+ 00023487  0x00005f13 branch  0x00007fe7 
+ 00023488  0x00005f16 call  0x00005bab 
+ 00023489  0x00005f17 isolate0  0x00000001 , 0x0000003f 
+ 00023490  0x00005f18 branch  0x00005ba9 , 0x00000001 
+ 00023491  0x00005f19 rtn 
+ 00023492  0x00005f1e rtn 
+ 00023493  0x00005f21 arg  0x000009be , 0x00000005 
+ 00023494  0x00005f22 call  0x00007eb3 
+ 00023495  0x00005f23 jam  0x00000002 , 0x000044bf 
+ 00023496  0x00005f24 jam  0x00000001 , 0x000044c1 
+ 00023497  0x00005f25 rtn 
+ 00023498  0x00005f28 arg  0x00000a6e , 0x00000005 
+ 00023499  0x00005f29 call  0x00007ebf 
+ 00023500  0x00005f2a jam  0x00000006 , 0x000044c1 
+ 00023501  0x00005f2b jam  0x00000002 , 0x000044bf 
+ 00023502  0x00005f2c rtn 
+ 00023503  0x00005f2f force  0x00000041 , 0x00000011 
+ 00023504  0x00005f30 call  0x00005c62 
+ 00023505  0x00005f31 setarg  0x0000000c 
+ 00023506  0x00005f32 istore  0x00000001 , 0x00000005 
+ 00023507  0x00005f33 arg  0x000045d2 , 0x00000006 
+ 00023508  0x00005f34 branch  0x00007eb3 
+ 00023509  0x00005f37 call  0x00007166 
+ 00023510  0x00005f38 force  0x00000011 , 0x00000011 
+ 00023511  0x00005f39 call  0x00005c62 
+ 00023512  0x00005f3a setarg  0x0000000d 
+ 00023513  0x00005f3b istore  0x00000001 , 0x00000005 
+ 00023514  0x00005f3c branch  0x00007201 
+ 00023515  0x00005f40 fetch  0x00000001 , 0x000044c4 
+ 00023516  0x00005f41 rtneq  0x000000ff 
+ 00023517  0x00005f42 arg  0x00000003 , 0x00000002 
+ 00023518  0x00005f43 isub  0x00000002 , 0x0000003e 
+ 00023519  0x00005f44 nrtn  0x00000002 
+ 00023520  0x00005f45 arg  0x0000000a , 0x00000007 
+ 00023521  0x00005f46 call  0x00007f16 
+ 00023522  0x00005f47 nrtn  0x00000034 
+ 00023523  0x00005f48 branch  0x00005ba9 
+ 00023524  0x00005f4b bpatchx  0x00000078 , 0x0000402f 
+ 00023525  0x00005f4c fetch  0x00000001 , 0x000044c4 
+ 00023526  0x00005f4d beq  0x00000000 , 0x00005bef 
+ 00023527  0x00005f4e beq  0x00000001 , 0x00005bf5 
+ 00023528  0x00005f4f beq  0x00000002 , 0x00005bef 
+ 00023529  0x00005f50 beq  0x00000003 , 0x00005bf7 
+ 00023530  0x00005f51 beq  0x00000005 , 0x00005bfb 
+ 00023531  0x00005f52 beq  0x00000007 , 0x00005c07 
+ 00023532  0x00005f53 beq  0x00000008 , 0x00005c09 
+ 00023533  0x00005f54 beq  0x00000009 , 0x00005c10 
+ 00023534  0x00005f55 rtn 
+ 00023535  0x00005f59 fetch  0x00000001 , 0x000044c5 
+ 00023536  0x00005f5a rtnne  0x00000004 
+ 00023537  0x00005f5b jam  0x000000ff , 0x000044c5 
+ 00023538  0x00005f5c jam  0x000000ff , 0x000044c4 
+ 00023539  0x00005f5d jam  0x0000003f , 0x00000a99 
+ 00023540  0x00005f5e branch  0x00007d86 
+ 00023541  0x00005f62 jam  0x00000002 , 0x000044c4 
+ 00023542  0x00005f63 branch  0x00005b02 
+ 00023543  0x00005f66 jam  0x00000004 , 0x000044c4 
+ 00023544  0x00005f67 setarg  0x00017700 
+ 00023545  0x00005f68 arg  0x0000000a , 0x00000007 
+ 00023546  0x00005f69 branch  0x00007f08 
+ 00023547  0x00005f6c fetch  0x00000001 , 0x000044c5 
+ 00023548  0x00005f6d beq  0x00000004 , 0x00005bfe 
+ 00023549  0x00005f6e rtn 
+ 00023550  0x00005f71 jam  0x00000007 , 0x000044c4 
+ 00023551  0x00005f72 jam  0x00000029 , 0x00000a99 
+ 00023552  0x00005f73 call  0x00007d86 
+ 00023553  0x00005f74 call  0x00005b82 
+ 00023554  0x00005f75 fetch  0x00000001 , 0x00004092 
+ 00023555  0x00005f76 rtnne  0x0000000a 
+ 00023556  0x00005f77 call  0x00005bb9 
+ 00023557  0x00005f78 rtn  0x00000028 
+ 00023558  0x00005f79 branch  0x00003410 
+ 00023559  0x00005f7d jam  0x00000008 , 0x000044c4 
+ 00023560  0x00005f7e branch  0x00005b8c 
+ 00023561  0x00005f81 fetch  0x00000001 , 0x00004452 
+ 00023562  0x00005f82 fetcht  0x00000001 , 0x00004459 
+ 00023563  0x00005f83 iand  0x00000002 , 0x0000003f 
+ 00023564  0x00005f84 isolate0  0x00000001 , 0x0000003f 
+ 00023565  0x00005f85 branch  0x00005c12 , 0x00000001 
+ 00023566  0x00005f86 jam  0x00000009 , 0x000044c4 
+ 00023567  0x00005f87 branch  0x00005b98 
+ 00023568  0x00005f8a call  0x00005ba0 
+ 00023569  0x00005f8b branch  0x00005c12 
+ 00023570  0x00005f8f force  0x0000000a , 0x00000007 
+ 00023571  0x00005f90 call  0x00007f07 
+ 00023572  0x00005f91 jam  0x000000ff , 0x000044c5 
+ 00023573  0x00005f92 jam  0x000000ff , 0x000044c4 
+ 00023574  0x00005f93 jam  0x0000003e , 0x00000a99 
+ 00023575  0x00005f94 branch  0x00007d86 
+ 00023576  0x00005f99 bpatchx  0x00000079 , 0x0000402f 
+ 00023577  0x00005f9a fetch  0x00000001 , 0x000044c6 
+ 00023578  0x00005f9b rtnbit0  0x00000007 
+ 00023579  0x00005f9c fetch  0x00000001 , 0x000044bf 
+ 00023580  0x00005f9d rtnne  0x00000002 
+ 00023581  0x00005f9e jam  0x00000000 , 0x000044bf 
+ 00023582  0x00005f9f fetch  0x00000001 , 0x000044c1 
+ 00023583  0x00005fa0 beq  0x00000001 , 0x00005c58 
+ 00023584  0x00005fa1 beq  0x00000002 , 0x00005c5f 
+ 00023585  0x00005fa2 beq  0x00000003 , 0x00005c52 
+ 00023586  0x00005fa3 beq  0x00000006 , 0x00005c39 
+ 00023587  0x00005fa4 beq  0x00000007 , 0x00005c30 
+ 00023588  0x00005fa5 beq  0x00000008 , 0x00005c26 
+ 00023589  0x00005fa6 rtn 
+ 00023590  0x00005faa fetch  0x00000001 , 0x00004663 
+ 00023591  0x00005fab copy  0x0000003f , 0x00000007 
+ 00023592  0x00005fac increase  0x00000001 , 0x0000003f 
+ 00023593  0x00005fad store  0x00000001 , 0x00004663 
+ 00023594  0x00005fae fetch  0x00000004 , 0x000044c7 
+ 00023595  0x00005faf qisolate1  0x0000003f 
+ 00023596  0x00005fb0 setarg  0x00000080 
+ 00023597  0x00005fb1 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00023598  0x00005fb2 store  0x00000001 , 0x00004664 
+ 00023599  0x00005fb3 branch  0x00005c55 
+ 00023600  0x00005fb6 fetch  0x00000001 , 0x000044c2 
+ 00023601  0x00005fb7 jam  0x00000000 , 0x000044c2 
+ 00023602  0x00005fb8 beq  0x00000001 , 0x00005c35 
+ 00023603  0x00005fb9 jam  0x00000002 , 0x000044bf 
+ 00023604  0x00005fba rtn 
+ 00023605  0x00005fbd jam  0x00000031 , 0x00000a99 
+ 00023606  0x00005fbe call  0x00007d86 
+ 00023607  0x00005fbf jam  0x00000005 , 0x000044c4 
+ 00023608  0x00005fc0 branch  0x00005bd5 
+ 00023609  0x00005fc3 fetch  0x00000001 , 0x000009b9 
+ 00023610  0x00005fc4 beq  0x00000003 , 0x00005c3d 
+ 00023611  0x00005fc5 jam  0x00000002 , 0x000044bf 
+ 00023612  0x00005fc6 rtn 
+ 00023613  0x00005fc9 call  0x0000718d 
+ 00023614  0x00005fcd fetch  0x00000001 , 0x000044c6 
+ 00023615  0x00005fce beq  0x00000083 , 0x00005c41 
+ 00023616  0x00005fcf call  0x00005b18 
+ 00023617  0x00005fd1 call  0x0000717a 
+ 00023618  0x00005fd2 arg  0x00000af2 , 0x00000011 
+ 00023619  0x00005fd3 arg  0x00000a6e , 0x00000012 
+ 00023620  0x00005fd4 arg  0x00000010 , 0x00000039 
+ 00023621  0x00005fd5 call  0x00007f88 
+ 00023622  0x00005fd6 branch  0x00005c49 , 0x00000005 
+ 00023623  0x00005fd8 jam  0x0000000b , 0x0000047b 
+ 00023624  0x00005fd9 branch  0x00005b54 
+ 00023625  0x00005fdd call  0x00007595 
+ 00023626  0x00005fde nbranch  0x00005c47 , 0x00000005 
+ 00023627  0x00005fdf jam  0x00000001 , 0x00004429 
+ 00023628  0x00005fe0 fetch  0x00000001 , 0x000044c6 
+ 00023629  0x00005fe1 beq  0x00000081 , 0x00005c35 
+ 00023630  0x00005fe2 beq  0x00000083 , 0x00005c35 
+ 00023631  0x00005fe3 jam  0x00000002 , 0x000044bf 
+ 00023632  0x00005fe4 jam  0x00000007 , 0x000044c1 
+ 00023633  0x00005fe5 rtn 
+ 00023634  0x00005fe8 fetch  0x00000001 , 0x000044c6 
+ 00023635  0x00005fe9 beq  0x00000083 , 0x00005c56 
+ 00023636  0x00005fea jam  0x00000000 , 0x00004664 
+ 00023637  0x00005fec branch  0x00005b3d 
+ 00023638  0x00005ff2 jam  0x00000000 , 0x00004663 
+ 00023639  0x00005ff3 branch  0x00005b1b 
+ 00023640  0x00005ff7 jam  0x00000002 , 0x000044bf 
+ 00023641  0x00005ff8 fetch  0x00000001 , 0x000044c3 
+ 00023642  0x00005ff9 beq  0x00000003 , 0x00005c5c 
+ 00023643  0x00005ffb rtn 
+ 00023644  0x00005ffe jam  0x00000002 , 0x000044c1 
+ 00023645  0x00005fff jam  0x00000000 , 0x000009b9 
+ 00023646  0x00006000 branch  0x00007a99 
+ 00023647  0x00006003 jam  0x00000002 , 0x000044bf 
+ 00023648  0x00006004 jam  0x00000003 , 0x000044c1 
+ 00023649  0x00006005 branch  0x00005bcf 
+ 00023650  0x0000600a force  0x00000006 , 0x00000012 
+ 00023651  0x0000600b branch  0x00005847 
+ 00023652  0x00006010 fetch  0x00000001 , 0x000002db 
+ 00023653  0x00006011 beq  0x00000000 , 0x00005c7b 
+ 00023654  0x00006012 beq  0x00000001 , 0x00005c83 
+ 00023655  0x00006013 beq  0x00000002 , 0x00005c8e 
+ 00023656  0x00006014 beq  0x00000003 , 0x00005caa 
+ 00023657  0x00006015 beq  0x00000004 , 0x00005ce1 
+ 00023658  0x00006016 beq  0x00000005 , 0x00005ce6 
+ 00023659  0x00006017 beq  0x00000006 , 0x00005cea 
+ 00023660  0x00006018 beq  0x00000007 , 0x00005cf5 
+ 00023661  0x00006019 beq  0x00000008 , 0x00005c99 
+ 00023662  0x0000601a beq  0x00000009 , 0x00005cf5 
+ 00023663  0x0000601b beq  0x0000000a , 0x00005cef 
+ 00023664  0x0000601c beq  0x0000000b , 0x00005cf5 
+ 00023665  0x0000601d beq  0x0000000c , 0x00005c9f 
+ 00023666  0x0000601e beq  0x0000000d , 0x00005cf5 
+ 00023667  0x0000601f beq  0x00000012 , 0x00005ca6 
+ 00023668  0x00006020 beq  0x00000013 , 0x00005cf5 
+ 00023669  0x00006021 arg  0x00000002 , 0x00000011 
+ 00023670  0x00006022 arg  0x00000007 , 0x00000012 
+ 00023671  0x00006023 call  0x00005842 
+ 00023672  0x00006024 fetch  0x00000001 , 0x000002db 
+ 00023673  0x00006025 istore  0x00000001 , 0x00000005 
+ 00023674  0x00006026 rtn 
+ 00023675  0x0000602a ifetch  0x00000009 , 0x00000006 
+ 00023676  0x0000602b store  0x00000009 , 0x000043d3 
+ 00023677  0x0000602c ifetch  0x00000002 , 0x00000006 
+ 00023678  0x0000602d store  0x00000002 , 0x0000045f 
+ 00023679  0x0000602e fetch  0x00000001 , 0x0000043f 
+ 00023680  0x0000602f set1  0x00000005 , 0x0000003f 
+ 00023681  0x00006030 store  0x00000001 , 0x0000043f 
+ 00023682  0x00006031 rtn 
+ 00023683  0x00006034 ifetch  0x00000005 , 0x00000006 
+ 00023684  0x00006035 store  0x00000005 , 0x000043ce 
+ 00023685  0x00006036 ifetch  0x00000002 , 0x00000006 
+ 00023686  0x00006037 store  0x00000002 , 0x0000045f 
+ 00023687  0x00006038 fetcht  0x00000002 , 0x00000459 
+ 00023688  0x00006039 isub  0x00000002 , 0x0000003e 
+ 00023689  0x0000603a nbranch  0x00005c8e , 0x00000002 
+ 00023690  0x0000603b fetch  0x00000001 , 0x0000043f 
+ 00023691  0x0000603c set1  0x00000006 , 0x0000003f 
+ 00023692  0x0000603d store  0x00000001 , 0x0000043f 
+ 00023693  0x0000603e rtn 
+ 00023694  0x00006042 setarg  0x00000014 
+ 00023695  0x00006043 store  0x00000002 , 0x0000046d 
+ 00023696  0x00006044 store  0x00000002 , 0x000044ba 
+ 00023697  0x00006045 rtn 
+ 00023698  0x00006048 arg  0x00000013 , 0x00000013 
+ 00023699  0x0000604c arg  0x00000002 , 0x00000011 
+ 00023700  0x0000604d arg  0x00000002 , 0x00000012 
+ 00023701  0x0000604e call  0x00005842 
+ 00023702  0x0000604f copy  0x00000013 , 0x0000003f 
+ 00023703  0x00006050 istore  0x00000001 , 0x00000005 
+ 00023704  0x00006051 rtn 
+ 00023705  0x00006056 arg  0x00000009 , 0x00000011 
+ 00023706  0x00006057 arg  0x00000009 , 0x00000012 
+ 00023707  0x00006058 call  0x00005842 
+ 00023708  0x00006059 setarg  0x00000001 
+ 00023709  0x0000605a istore  0x00000008 , 0x00000005 
+ 00023710  0x0000605b rtn 
+ 00023711  0x0000605f rtn  0x00000029 
+ 00023712  0x00006061 arg  0x00000006 , 0x00000011 
+ 00023713  0x00006062 arg  0x0000000c , 0x00000012 
+ 00023714  0x00006063 call  0x00005842 
+ 00023715  0x00006064 fetch  0x00000005 , 0x00004510 
+ 00023716  0x00006065 istore  0x00000005 , 0x00000005 
+ 00023717  0x00006066 rtn 
+ 00023718  0x0000606a arg  0x00000013 , 0x00000012 
+ 00023719  0x0000606b branch  0x00005ca8 
+ 00023720  0x0000606f arg  0x00000001 , 0x00000011 
+ 00023721  0x00006070 branch  0x00005842 
+ 00023722  0x00006074 ifetch  0x00000008 , 0x00000006 
+ 00023723  0x00006075 store  0x00000008 , 0x000044cd 
+ 00023724  0x00006076 ifetch  0x00000002 , 0x00000006 
+ 00023725  0x00006077 store  0x00000002 , 0x000044cb 
+ 00023726  0x00006078 ifetch  0x00000008 , 0x00000006 
+ 00023727  0x00006079 store  0x00000008 , 0x000044aa 
+ 00023728  0x0000607a ifetch  0x00000004 , 0x00000006 
+ 00023729  0x0000607b store  0x00000004 , 0x00004411 
+ 00023730  0x0000607c call  0x00005ccf 
+ 00023731  0x0000607d bpatchx  0x0000007a , 0x0000402f 
+ 00023732  0x0000607e fetch  0x00000001 , 0x000044c4 
+ 00023733  0x0000607f beq  0x00000005 , 0x00005cbc 
+ 00023734  0x00006080 fetch  0x00000001 , 0x000044e9 
+ 00023735  0x00006081 bbit1  0x00000001 , 0x00005cbf 
+ 00023736  0x00006082 fetch  0x00000001 , 0x00004217 
+ 00023737  0x00006083 ncall  0x000067be , 0x00000034 
+ 00023738  0x00006084 fetch  0x00000001 , 0x00004429 
+ 00023739  0x00006085 beq  0x00000000 , 0x00005cc4 
+ 00023740  0x00006087 jam  0x00000001 , 0x000044c5 
+ 00023741  0x00006088 call  0x00005cdd 
+ 00023742  0x00006089 branch  0x000073a2 
+ 00023743  0x0000608c jam  0x00000001 , 0x00004429 
+ 00023744  0x0000608d arg  0x000044ea , 0x00000006 
+ 00023745  0x0000608e arg  0x00004419 , 0x00000005 
+ 00023746  0x0000608f call  0x00007ebf 
+ 00023747  0x00006090 branch  0x00005cbc 
+ 00023748  0x00006094 bpatchx  0x0000007b , 0x0000402f 
+ 00023749  0x00006095 jam  0x00000000 , 0x000044c5 
+ 00023750  0x00006096 jam  0x00000000 , 0x000044c4 
+ 00023751  0x00006097 jam  0x00000041 , 0x00000a99 
+ 00023752  0x00006098 branch  0x00007d86 
+ 00023753  0x0000609b arg  0x00000002 , 0x00000011 
+ 00023754  0x0000609c arg  0x0000000d , 0x00000012 
+ 00023755  0x0000609d call  0x00005842 
+ 00023756  0x0000609e setarg  0x00000006 
+ 00023757  0x0000609f istore  0x00000001 , 0x00000005 
+ 00023758  0x000060a0 rtn 
+ 00023759  0x000060a3 arg  0x000044b2 , 0x00000005 
+ 00023760  0x000060a4 force  0x00000008 , 0x00000039 
+ 00023761  0x000060a5 call  0x0000630d 
+ 00023762  0x000060a6 arg  0x00004415 , 0x00000005 
+ 00023763  0x000060a7 force  0x00000004 , 0x00000039 
+ 00023764  0x000060a8 call  0x0000630d 
+ 00023765  0x000060a9 arg  0x0000000d , 0x00000011 
+ 00023766  0x000060aa arg  0x00000004 , 0x00000012 
+ 00023767  0x000060ab call  0x00005842 
+ 00023768  0x000060ac fetch  0x00000008 , 0x000044b2 
+ 00023769  0x000060ad istore  0x00000008 , 0x00000005 
+ 00023770  0x000060ae fetch  0x00000004 , 0x00004415 
+ 00023771  0x000060af istore  0x00000004 , 0x00000005 
+ 00023772  0x000060b0 rtn 
+ 00023773  0x000060b3 arg  0x00000005 , 0x00000012 
+ 00023774  0x000060b4 branch  0x00005ca8 
+ 00023775  0x000060b7 arg  0x00000006 , 0x00000012 
+ 00023776  0x000060b8 branch  0x00005ca8 
+ 00023777  0x000060bc ifetch  0x00000008 , 0x00000006 
+ 00023778  0x000060bd store  0x00000008 , 0x000044b2 
+ 00023779  0x000060be ifetch  0x00000004 , 0x00000006 
+ 00023780  0x000060bf store  0x00000004 , 0x00004415 
+ 00023781  0x000060c0 branch  0x000073a2 
+ 00023782  0x000060c3 fetch  0x00000001 , 0x0000043f 
+ 00023783  0x000060c4 set1  0x00000004 , 0x0000003f 
+ 00023784  0x000060c5 store  0x00000001 , 0x0000043f 
+ 00023785  0x000060c6 rtn 
+ 00023786  0x000060c9 rtn  0x00000029 
+ 00023787  0x000060ca jam  0x00000032 , 0x00000a99 
+ 00023788  0x000060cb call  0x00007d86 
+ 00023789  0x000060cc jam  0x00000004 , 0x000044c5 
+ 00023790  0x000060cd branch  0x00005cdf 
+ 00023791  0x000060d0 jam  0x00000002 , 0x000044c5 
+ 00023792  0x000060d1 call  0x00005cf3 
+ 00023793  0x000060d2 jam  0x00000033 , 0x00000a99 
+ 00023794  0x000060d3 branch  0x00007d86 
+ 00023795  0x000060d6 arg  0x0000000b , 0x00000012 
+ 00023796  0x000060d7 branch  0x00005ca8 
+ 00023797  0x000060df rtn 
+ 00023798  0x000060e7 rtn  0x0000002b 
+ 00023799  0x000060e9 bpatchx  0x0000007c , 0x0000402f 
+ 00023800  0x000060ea setarg  0x00000000 
+ 00023801  0x000060eb store  0x00000001 , 0x00000048 
+ 00023802  0x000060ec store  0x00000001 , 0x00000055 
+ 00023803  0x000060ed store  0x00000001 , 0x00000078 
+ 00023804  0x000060ee store  0x00000001 , 0x0000007c 
+ 00023805  0x000060ef store  0x00000001 , 0x00004158 
+ 00023806  0x000060f0 store  0x00000001 , 0x000004d7 
+ 00023807  0x000060f1 store  0x00000001 , 0x0000016d 
+ 00023808  0x000060f2 store  0x00000001 , 0x000009b5 
+ 00023809  0x000060f3 jam  0x00000000 , 0x0000455b 
+ 00023810  0x000060f4 jam  0x00000000 , 0x00000229 
+ 00023811  0x000060f5 jam  0x00000000 , 0x000004d8 
+ 00023812  0x000060f7 jam  0x00000000 , 0x000009b5 
+ 00023813  0x000060f8 jam  0x00000000 , 0x000009b4 
+ 00023814  0x000060f9 jam  0x00000000 , 0x000004d1 
+ 00023815  0x000060fc rtn 
+ 00023816  0x000060ff bpatchx  0x0000007d , 0x0000402f 
+ 00023817  0x00006100 call  0x000062ff , 0x00000029 
+ 00023818  0x00006101 ncall  0x00006303 , 0x00000029 
+ 00023819  0x00006102 call  0x000062bc 
+ 00023820  0x00006103 nrtn  0x00000034 
+ 00023821  0x00006104 fetch  0x00000001 , 0x0000004c 
+ 00023822  0x00006105 rtnbit0  0x00000006 
+ 00023823  0x00006106 set0  0x00000006 , 0x0000003f 
+ 00023824  0x00006107 set0  0x00000001 , 0x00000000 
+ 00023825  0x00006108 store  0x00000001 , 0x0000004c 
+ 00023826  0x00006109 fetch  0x00000001 , 0x00000551 
+ 00023827  0x0000610a fetcht  0x00000001 , 0x0000004c 
+ 00023828  0x0000610b isolate1  0x00000000 , 0x0000003f 
+ 00023829  0x0000610c setflag  0x00000001 , 0x00000001 , 0x00000002 
+ 00023830  0x0000610d storet  0x00000001 , 0x0000004c 
+ 00023831  0x0000610e and_into  0x00000002 , 0x00000002 
+ 00023832  0x0000610f storet  0x00000001 , 0x0000007f 
+ 00023833  0x00006110 fetcht  0x00000001 , 0x0000004c 
+ 00023834  0x00006111 rshift  0x0000003f , 0x0000003f 
+ 00023835  0x00006112 store  0x00000001 , 0x0000007d 
+ 00023836  0x00006113 bpatchx  0x0000007e , 0x0000402f 
+ 00023837  0x00006114 fetch  0x00000001 , 0x0000007d 
+ 00023838  0x00006115 beq  0x0000007f , 0x00005d66 
+ 00023839  0x00006116 beq  0x00000003 , 0x00005db1 
+ 00023840  0x00006117 beq  0x00000004 , 0x00005dc2 
+ 00023841  0x00006118 beq  0x0000003c , 0x00005d59 
+ 00023842  0x00006119 beq  0x00000005 , 0x00005d55 
+ 00023843  0x0000611a beq  0x0000000f , 0x00005fa8 
+ 00023844  0x0000611b beq  0x00000010 , 0x00005e24 
+ 00023845  0x0000611c beq  0x00000023 , 0x00005e42 
+ 00023846  0x0000611d beq  0x00000039 , 0x00005fc1 
+ 00023847  0x0000611e beq  0x00000038 , 0x00005fbc 
+ 00023848  0x0000611f beq  0x00000031 , 0x00005e27 
+ 00023849  0x00006120 beq  0x00000037 , 0x00005eb0 
+ 00023850  0x00006121 beq  0x00000027 , 0x00005eac 
+ 00023851  0x00006122 beq  0x00000033 , 0x00005ea9 
+ 00023852  0x00006123 beq  0x00000025 , 0x00005eae 
+ 00023853  0x00006124 beq  0x00000026 , 0x00005e3e 
+ 00023854  0x00006125 beq  0x00000007 , 0x00005e36 
+ 00023855  0x00006126 beq  0x0000002d , 0x00005e2d 
+ 00023856  0x00006127 beq  0x0000002e , 0x00005e2e 
+ 00023857  0x00006128 beq  0x00000001 , 0x00005ea5 
+ 00023858  0x00006129 beq  0x00000002 , 0x00005e90 
+ 00023859  0x0000612a beq  0x00000028 , 0x00005fb3 
+ 00023860  0x0000612b beq  0x00000009 , 0x00005e86 
+ 00023861  0x0000612c beq  0x0000000b , 0x00005e5f 
+ 00023862  0x0000612d beq  0x00000008 , 0x00005e43 
+ 00023863  0x0000612e beq  0x0000000c , 0x00005e6a 
+ 00023864  0x0000612f beq  0x0000001f , 0x00005e3a 
+ 00023865  0x00006130 beq  0x00000020 , 0x00005e3c 
+ 00023866  0x00006131 beq  0x00000021 , 0x00005eca 
+ 00023867  0x00006132 beq  0x00000022 , 0x00005eca 
+ 00023868  0x00006133 beq  0x00000035 , 0x00005ecb 
+ 00023869  0x00006134 beq  0x00000036 , 0x00005ecc 
+ 00023870  0x00006135 beq  0x00000024 , 0x00005eca 
+ 00023871  0x00006136 beq  0x00000034 , 0x00005ecd 
+ 00023872  0x00006137 beq  0x00000017 , 0x00005ed6 
+ 00023873  0x00006138 beq  0x00000011 , 0x00005ef2 
+ 00023874  0x00006139 beq  0x00000012 , 0x00005ef6 
+ 00023875  0x0000613a beq  0x00000013 , 0x00005ef8 
+ 00023876  0x0000613b beq  0x0000000d , 0x00005f0a 
+ 00023877  0x0000613c beq  0x0000000e , 0x00005f0a 
+ 00023878  0x0000613d beq  0x0000002f , 0x00005eaa 
+ 00023879  0x0000613e beq  0x00000030 , 0x00005f0a 
+ 00023880  0x0000613f beq  0x0000000a , 0x00005f0a 
+ 00023881  0x00006140 beq  0x00000018 , 0x00005f0b 
+ 00023882  0x00006141 beq  0x00000032 , 0x00005f0a 
+ 00023883  0x00006142 beq  0x0000003d , 0x00005f10 
+ 00023884  0x00006143 beq  0x0000003e , 0x00005f51 
+ 00023885  0x00006144 beq  0x0000003f , 0x00005f4b 
+ 00023886  0x00006145 beq  0x00000040 , 0x00005f78 
+ 00023887  0x00006146 beq  0x00000041 , 0x00005f8a 
+ 00023888  0x00006147 beq  0x00000006 , 0x00005fa7 
+ 00023889  0x00006148 beq  0x0000003a , 0x00005d57 
+ 00023890  0x0000614c jam  0x00000019 , 0x0000007e 
+ 00023891  0x0000614e jam  0x00000004 , 0x0000007c 
+ 00023892  0x0000614f rtn 
+ 00023893  0x00006152 jam  0x00000006 , 0x0000007c 
+ 00023894  0x00006153 rtn 
+ 00023895  0x00006156 jam  0x0000003b , 0x0000007c 
+ 00023896  0x00006157 rtn 
+ 00023897  0x0000615a fetch  0x00000004 , 0x00000552 
+ 00023898  0x0000615b lshift  0x0000003f , 0x0000003f 
+ 00023899  0x0000615c store  0x00000004 , 0x000040d2 
+ 00023900  0x0000615d fetch  0x00000001 , 0x00000556 
+ 00023901  0x0000615e store  0x00000001 , 0x000040d9 
+ 00023902  0x0000615f fetch  0x00000005 , 0x00000557 
+ 00023903  0x00006160 store  0x00000005 , 0x000040e7 
+ 00023904  0x00006161 fetch  0x00000005 , 0x0000055c 
+ 00023905  0x00006162 istore  0x00000005 , 0x00000005 
+ 00023906  0x00006163 fetch  0x00000001 , 0x00000031 
+ 00023907  0x00006164 set1  0x00000003 , 0x0000003f 
+ 00023908  0x00006165 store  0x00000001 , 0x00000031 
+ 00023909  0x00006166 rtn 
+ 00023910  0x00006168 bpatchx  0x0000007f , 0x0000402f 
+ 00023911  0x00006169 fetch  0x00000001 , 0x00000552 
+ 00023912  0x0000616a set1  0x00000007 , 0x0000003f 
+ 00023913  0x0000616b store  0x00000001 , 0x0000007d 
+ 00023914  0x0000616c beq  0x00000081 , 0x00005d88 
+ 00023915  0x0000616d beq  0x00000082 , 0x00005d8d 
+ 00023916  0x0000616e beq  0x00000095 , 0x00005eb1 
+ 00023917  0x0000616f beq  0x00000096 , 0x00005eca 
+ 00023918  0x00006170 beq  0x0000008b , 0x00005ebf 
+ 00023919  0x00006171 beq  0x00000083 , 0x00005da5 
+ 00023920  0x00006172 beq  0x00000084 , 0x00005da7 
+ 00023921  0x00006173 beq  0x00000090 , 0x00005d7a 
+ 00023922  0x00006174 beq  0x00000097 , 0x00005d9e 
+ 00023923  0x00006175 beq  0x00000098 , 0x00005da3 
+ 00023924  0x00006176 beq  0x00000099 , 0x00005d7d 
+ 00023925  0x00006177 beq  0x0000009a , 0x00005d80 
+ 00023926  0x00006178 rtneq  0x00000084 
+ 00023927  0x0000617c jam  0x00000082 , 0x0000007c 
+ 00023928  0x0000617d jam  0x00000019 , 0x0000007e 
+ 00023929  0x0000617f rtn 
+ 00023930  0x00006181 jam  0x00000082 , 0x0000007c 
+ 00023931  0x00006182 jam  0x0000002e , 0x0000007e 
+ 00023932  0x00006183 rtn 
+ 00023933  0x00006186 call  0x00005d82 
+ 00023934  0x00006187 jam  0x0000009a , 0x0000007c 
+ 00023935  0x00006188 rtn 
+ 00023936  0x0000618b call  0x00005d82 
+ 00023937  0x0000618c branch  0x00005d86 
+ 00023938  0x0000618f arg  0x0000465e , 0x00000005 
+ 00023939  0x00006190 fetch  0x00000003 , 0x00000553 
+ 00023940  0x00006191 istore  0x00000003 , 0x00000005 
+ 00023941  0x00006192 rtn 
+ 00023942  0x00006195 branch  0x000076d8 , 0x00000001 
+ 00023943  0x00006196 rtn 
+ 00023944  0x00006198 fetch  0x00000001 , 0x00000554 
+ 00023945  0x00006199 set1  0x00000007 , 0x0000003f 
+ 00023946  0x0000619a store  0x00000001 , 0x000004c9 
+ 00023947  0x0000619b beq  0x0000008b , 0x00005d92 
+ 00023948  0x0000619c rtn 
+ 00023949  0x000061a0 fetch  0x00000001 , 0x00000554 
+ 00023950  0x000061a1 set1  0x00000007 , 0x0000003f 
+ 00023951  0x000061a2 store  0x00000001 , 0x000004c9 
+ 00023952  0x000061a3 beq  0x0000008b , 0x00005d96 
+ 00023953  0x000061a4 rtn 
+ 00023954  0x000061a7 fetch  0x00000001 , 0x0000415a 
+ 00023955  0x000061a8 fetcht  0x00000001 , 0x0000004c 
+ 00023956  0x000061a9 nsetflag  0x00000034 , 0x00000005 , 0x00000002 
+ 00023957  0x000061aa storet  0x00000001 , 0x0000004c 
+ 00023958  0x000061ac fetch  0x00000001 , 0x00000030 
+ 00023959  0x000061ad rtnbit0  0x00000005 
+ 00023960  0x000061ae set0  0x00000005 , 0x0000003f 
+ 00023961  0x000061af store  0x00000001 , 0x00000030 
+ 00023962  0x000061b0 fetch  0x00000001 , 0x000004d7 
+ 00023963  0x000061b1 nrtn  0x00000034 
+ 00023964  0x000061b2 jam  0x00000031 , 0x0000007c 
+ 00023965  0x000061b3 rtn 
+ 00023966  0x000061b6 nbranch  0x00005da1 , 0x00000029 
+ 00023967  0x000061b7 jam  0x00000012 , 0x0000007c 
+ 00023968  0x000061b8 branch  0x000062eb 
+ 00023969  0x000061bb jam  0x00000097 , 0x0000007c 
+ 00023970  0x000061bc rtn 
+ 00023971  0x000061c1 call  0x000062eb 
+ 00023972  0x000061c2 branch  0x00005ffe 
+ 00023973  0x000061c5 jam  0x00000084 , 0x0000007c 
+ 00023974  0x000061c6 rtn 
+ 00023975  0x000061c9 fetcht  0x00000001 , 0x00000555 
+ 00023976  0x000061ca and  0x00000002 , 0x00000001 , 0x00000002 
+ 00023977  0x000061cb storet  0x00000001 , 0x000004d0 
+ 00023978  0x000061cc fetch  0x00000001 , 0x000041ce 
+ 00023979  0x000061cd bne  0x00000051 , 0x00005dad 
+ 00023980  0x000061ce jam  0x00000000 , 0x000041ce 
+ 00023981  0x000061d0 fetch  0x00000001 , 0x00000055 
+ 00023982  0x000061d1 rtnne  0x00000015 
+ 00023983  0x000061d2 jam  0x00000004 , 0x00000055 
+ 00023984  0x000061d3 branch  0x0000631b 
+ 00023985  0x000061d6 bpatchx  0x00000080 , 0x00004030 
+ 00023986  0x000061d7 fetch  0x00000001 , 0x00000552 
+ 00023987  0x000061d8 store  0x00000001 , 0x000004c9 
+ 00023988  0x000061d9 beq  0x00000033 , 0x00005dd8 
+ 00023989  0x000061da beq  0x00000008 , 0x00005de7 
+ 00023990  0x000061db beq  0x0000000f , 0x00005dee 
+ 00023991  0x000061dc beq  0x00000010 , 0x00005df4 
+ 00023992  0x000061dd beq  0x00000011 , 0x00005df5 
+ 00023993  0x000061de beq  0x00000012 , 0x00005dfd 
+ 00023994  0x000061df beq  0x00000018 , 0x00005e13 
+ 00023995  0x000061e0 beq  0x00000017 , 0x00005e16 
+ 00023996  0x000061e1 beq  0x00000013 , 0x00005dcf 
+ 00023997  0x000061e3 beq  0x0000003d , 0x00005f1e 
+ 00023998  0x000061e4 beq  0x0000003e , 0x00005f6a 
+ 00023999  0x000061e5 beq  0x00000040 , 0x00005f20 
+ 00024000  0x000061e6 beq  0x00000041 , 0x00005f3d 
+ 00024001  0x000061e7 rtn 
+ 00024002  0x000061ea bpatchx  0x00000081 , 0x00004030 
+ 00024003  0x000061eb fetch  0x00000001 , 0x00000552 
+ 00024004  0x000061ec store  0x00000001 , 0x000004c9 
+ 00024005  0x000061ed beq  0x00000001 , 0x00005e0a 
+ 00024006  0x000061ee beq  0x00000033 , 0x00005de2 
+ 00024007  0x000061ef beq  0x0000000b , 0x00005dfe 
+ 00024008  0x000061f0 beq  0x00000008 , 0x00005e01 
+ 00024009  0x000061f1 beq  0x00000013 , 0x00005dd2 
+ 00024010  0x000061f3 beq  0x00000040 , 0x00005e0b 
+ 00024011  0x000061f4 beq  0x00000041 , 0x00005e0e 
+ 00024012  0x000061f5 beq  0x00000018 , 0x00005e11 
+ 00024013  0x000061f6 beq  0x00000017 , 0x00005e22 
+ 00024014  0x000061f7 rtn 
+ 00024015  0x000061fa jam  0x00000020 , 0x00000a99 
+ 00024016  0x000061fb call  0x00007d86 
+ 00024017  0x000061fc branch  0x000021dc 
+ 00024018  0x000061fe jam  0x00000019 , 0x00000a99 
+ 00024019  0x000061ff call  0x00007d86 
+ 00024020  0x00006200 jam  0x00000002 , 0x0000455b 
+ 00024021  0x00006201 setarg  0x00000050 
+ 00024022  0x00006202 arg  0x00000006 , 0x00000007 
+ 00024023  0x00006203 branch  0x00007f08 
+ 00024024  0x00006209 fetch  0x00000001 , 0x000004d1 
+ 00024025  0x0000620a set1  0x00000000 , 0x0000003f 
+ 00024026  0x0000620b store  0x00000001 , 0x000004d1 
+ 00024027  0x0000620c jam  0x00000001 , 0x00000a99 
+ 00024028  0x0000620d call  0x00007d86 
+ 00024029  0x0000620e jam  0x0000008b , 0x0000007c 
+ 00024030  0x00006212 fetch  0x00000001 , 0x00000055 
+ 00024031  0x00006213 bne  0x00000005 , 0x00005d07 
+ 00024032  0x00006216 jam  0x00000006 , 0x00000055 
+ 00024033  0x00006217 rtn 
+ 00024034  0x00006220 jam  0x0000000b , 0x000004ca 
+ 00024035  0x00006221 jam  0x00000007 , 0x0000007c 
+ 00024036  0x00006223 jam  0x00000000 , 0x00000055 
+ 00024037  0x00006225 branch  0x00005d07 , 0x00000001 
+ 00024038  0x00006226 rtn 
+ 00024039  0x00006229 fetch  0x00000001 , 0x000041bd 
+ 00024040  0x0000622a nrtn  0x00000034 
+ 00024041  0x0000622b call  0x0000244f 
+ 00024042  0x0000622c call  0x00005ffc 
+ 00024043  0x0000622d rtn  0x00000029 
+ 00024044  0x0000622e set1  0x00000021 , 0x00000000 
+ 00024045  0x0000622f rtn 
+ 00024046  0x00006232 nrtn  0x00000029 
+ 00024047  0x00006233 jam  0x00000010 , 0x0000007c 
+ 00024048  0x00006234 fetch  0x00000001 , 0x0000004c 
+ 00024049  0x00006235 rtnbit0  0x00000002 
+ 00024050  0x00006236 jam  0x00000012 , 0x0000007c 
+ 00024051  0x00006237 rtn 
+ 00024052  0x0000623a branch  0x00005ffe 
+ 00024053  0x0000623d call  0x00006059 
+ 00024054  0x0000623e fetch  0x00000001 , 0x00000030 
+ 00024055  0x0000623f rtnbit1  0x00000004 
+ 00024056  0x00006240 jam  0x00000031 , 0x0000007c 
+ 00024057  0x00006241 fetch  0x00000001 , 0x00000055 
+ 00024058  0x00006242 rtnne  0x0000000a 
+ 00024059  0x00006243 jam  0x0000000b , 0x00000055 
+ 00024060  0x00006244 rtn 
+ 00024061  0x0000624e rtn 
+ 00024062  0x00006252 jam  0x00000007 , 0x0000007c 
+ 00024063  0x00006253 jam  0x00000013 , 0x000004ca 
+ 00024064  0x00006254 rtn 
+ 00024065  0x00006257 fetch  0x00000001 , 0x00000553 
+ 00024066  0x00006258 beq  0x00000006 , 0x00005e07 
+ 00024067  0x00006259 rtnne  0x00000018 
+ 00024068  0x0000625a jam  0x00000018 , 0x000004ca 
+ 00024069  0x0000625b jam  0x00000007 , 0x0000007c 
+ 00024070  0x0000625c rtn 
+ 00024071  0x0000625e jam  0x00000006 , 0x000004ca 
+ 00024072  0x0000625f jam  0x00000007 , 0x0000007c 
+ 00024073  0x00006260 rtn 
+ 00024074  0x00006263 rtn 
+ 00024075  0x00006266 jam  0x00000000 , 0x000009ae 
+ 00024076  0x00006267 jam  0x00000007 , 0x0000007c 
+ 00024077  0x00006268 branch  0x00005d07 
+ 00024078  0x0000626b jam  0x00000000 , 0x000009ae 
+ 00024079  0x0000626c jam  0x00000007 , 0x0000007c 
+ 00024080  0x0000626d branch  0x00005d07 
+ 00024081  0x0000626f jam  0x00000024 , 0x00000a99 
+ 00024082  0x00006270 branch  0x00007d86 
+ 00024083  0x00006273 jam  0x00000023 , 0x00000a99 
+ 00024084  0x00006274 call  0x00007d86 
+ 00024085  0x00006275 branch  0x000026e9 
+ 00024086  0x00006278 jam  0x00000022 , 0x00000a99 
+ 00024087  0x00006279 call  0x00007d86 
+ 00024088  0x0000627a setarg  0x00000000 
+ 00024089  0x0000627b store  0x00000002 , 0x00000075 
+ 00024090  0x0000627c fetch  0x00000002 , 0x000041e3 
+ 00024091  0x0000627d lshift  0x0000003f , 0x0000003f 
+ 00024092  0x0000627e store  0x00000002 , 0x00000032 
+ 00024093  0x0000627f fetch  0x00000001 , 0x000041e5 
+ 00024094  0x00006280 store  0x00000001 , 0x00000073 
+ 00024095  0x00006281 fetch  0x00000001 , 0x000041e7 
+ 00024096  0x00006282 store  0x00000001 , 0x00000074 
+ 00024097  0x00006283 branch  0x000026c6 
+ 00024098  0x00006286 jam  0x00000021 , 0x00000a99 
+ 00024099  0x00006287 branch  0x00007d86 
+ 00024100  0x0000628a fetcht  0x00000001 , 0x00000552 
+ 00024101  0x0000628b storet  0x00000001 , 0x00000054 
+ 00024102  0x0000628c branch  0x00005e38 
+ 00024103  0x0000628f fetch  0x00000001 , 0x000004d1 
+ 00024104  0x00006290 set1  0x00000002 , 0x0000003f 
+ 00024105  0x00006291 store  0x00000001 , 0x000004d1 
+ 00024106  0x00006292 rtnbit1  0x00000003 
+ 00024107  0x00006293 jam  0x00000031 , 0x0000007c 
+ 00024108  0x00006294 branch  0x00005d07 
+ 00024109  0x00006299 rtn 
+ 00024110  0x0000629c fetch  0x00000001 , 0x000040d0 
+ 00024111  0x0000629d fetcht  0x00000001 , 0x00000552 
+ 00024112  0x0000629e isub  0x00000002 , 0x0000003e 
+ 00024113  0x000062a0 branch  0x00005e38 , 0x00000002 
+ 00024114  0x000062a1 jam  0x00000004 , 0x0000007c 
+ 00024115  0x000062a2 jam  0x0000001f , 0x0000007e 
+ 00024116  0x000062a3 jam  0x0000002e , 0x0000007d 
+ 00024117  0x000062a4 rtn 
+ 00024118  0x000062a7 call  0x00006157 
+ 00024119  0x000062a8 branch  0x00005e38 
+ 00024120  0x000062ab jam  0x00000003 , 0x0000007c 
+ 00024121  0x000062ac rtn 
+ 00024122  0x000062af jam  0x00000021 , 0x0000007c 
+ 00024123  0x000062b0 rtn 
+ 00024124  0x000062b3 jam  0x00000022 , 0x0000007c 
+ 00024125  0x000062b4 rtn 
+ 00024126  0x000062b7 fetch  0x00000001 , 0x00000055 
+ 00024127  0x000062b8 rtneq  0x00000013 
+ 00024128  0x000062ba jam  0x00000002 , 0x00000055 
+ 00024129  0x000062bc rtn 
+ 00024130  0x000062c0 rtn 
+ 00024131  0x000062c3 call  0x00005ff9 
+ 00024132  0x000062c4 jam  0x00000001 , 0x000004d4 
+ 00024133  0x000062c5 jam  0x0000000a , 0x00000a99 
+ 00024134  0x000062c6 call  0x00007d86 
+ 00024135  0x000062c8 call  0x000062f3 
+ 00024136  0x000062c9 nbranch  0x00006001 , 0x00000001 
+ 00024137  0x000062cb nbranch  0x00005e4e , 0x00000029 
+ 00024138  0x000062cc jam  0x00000004 , 0x0000007c 
+ 00024139  0x000062cd jam  0x00000008 , 0x0000007d 
+ 00024140  0x000062ce jam  0x00000023 , 0x0000007e 
+ 00024141  0x000062cf rtn 
+ 00024142  0x000062d1 fetch  0x00000001 , 0x0000004b 
+ 00024143  0x000062d2 set1  0x00000002 , 0x0000003f 
+ 00024144  0x000062d3 store  0x00000001 , 0x0000004b 
+ 00024145  0x000062d4 rtn 
+ 00024146  0x000062d8 fetcht  0x00000001 , 0x0000004c 
+ 00024147  0x000062d9 nsetflag  0x00000034 , 0x00000001 , 0x00000002 
+ 00024148  0x000062da storet  0x00000001 , 0x0000004c 
+ 00024149  0x000062db rtn 
+ 00024150  0x000062df fetch  0x00000001 , 0x0000007f 
+ 00024151  0x000062e0 rshift  0x0000003f , 0x0000003f 
+ 00024152  0x000062e1 and_into  0x00000001 , 0x0000003f 
+ 00024153  0x000062e2 rtn 
+ 00024154  0x000062e5 fetch  0x00000001 , 0x00004217 
+ 00024155  0x000062e6 rtn  0x00000034 
+ 00024156  0x000062e7 fetch  0x00000001 , 0x000009b5 
+ 00024157  0x000062e8 call  0x000067b2 , 0x00000034 
+ 00024158  0x000062e9 rtn 
+ 00024159  0x000062ec call  0x00005e5a 
+ 00024160  0x000062ed call  0x00005e56 
+ 00024161  0x000062ee store  0x00000001 , 0x000004d5 
+ 00024162  0x000062ef call  0x00005ff9 
+ 00024163  0x000062f0 jam  0x0000000c , 0x0000007c 
+ 00024164  0x000062f1 fetch  0x00000001 , 0x000041bd 
+ 00024165  0x000062f2 nrtn  0x00000034 
+ 00024166  0x000062f3 fetch  0x00000001 , 0x00000030 
+ 00024167  0x000062f4 rtnbit1  0x00000006 
+ 00024168  0x000062f5 jam  0x00000006 , 0x0000007e 
+ 00024169  0x000062f6 branch  0x00005d53 
+ 00024170  0x000062f9 arg  0x00000040 , 0x00000011 
+ 00024171  0x000062fa call  0x00007288 
+ 00024172  0x000062fb fetch  0x00000004 , 0x00000552 
+ 00024173  0x000062fc fetcht  0x00000004 , 0x00000592 
+ 00024174  0x000062fd isub  0x00000002 , 0x0000003e 
+ 00024175  0x000062fe branch  0x00005e73 , 0x00000005 
+ 00024176  0x000062ff jam  0x00000007 , 0x0000007c 
+ 00024177  0x00006300 jam  0x00000005 , 0x000004ca 
+ 00024178  0x00006301 rtn 
+ 00024179  0x00006303 call  0x00005e77 
+ 00024180  0x00006304 fetch  0x00000001 , 0x0000465a 
+ 00024181  0x00006305 branch  0x00005f3e , 0x00000034 
+ 00024182  0x00006306 rtn 
+ 00024183  0x0000630a call  0x00007386 
+ 00024184  0x0000630b call  0x000021b2 
+ 00024185  0x0000630c fetch  0x00000001 , 0x0000004b 
+ 00024186  0x0000630d isolate1  0x00000001 , 0x0000003f 
+ 00024187  0x0000630e set0  0x00000001 , 0x0000003f 
+ 00024188  0x0000630f store  0x00000001 , 0x0000004b 
+ 00024189  0x00006310 fetch  0x00000001 , 0x00000055 
+ 00024190  0x00006311 beq  0x00000019 , 0x00005e81 
+ 00024191  0x00006312 beq  0x00000018 , 0x00005e81 
+ 00024192  0x00006313 rtn 
+ 00024193  0x00006315 fetch  0x00000001 , 0x000009b5 
+ 00024194  0x00006316 rtnne  0x00000000 
+ 00024195  0x00006317 fetch  0x00000001 , 0x0000004c 
+ 00024196  0x00006318 rtnbit1  0x00000002 
+ 00024197  0x00006319 branch  0x000063b1 
+ 00024198  0x0000631c arg  0x00000552 , 0x00000011 
+ 00024199  0x0000631d arg  0x00000582 , 0x00000012 
+ 00024200  0x0000631e arg  0x00000562 , 0x00000005 
+ 00024201  0x0000631f call  0x00007352 
+ 00024202  0x00006320 arg  0x00000040 , 0x00000011 
+ 00024203  0x00006321 call  0x00006311 
+ 00024204  0x00006322 jam  0x0000000b , 0x0000007c 
+ 00024205  0x00006323 fetch  0x00000001 , 0x00000030 
+ 00024206  0x00006324 bbit0  0x00000006 , 0x00005ffc 
+ 00024207  0x00006325 rtn 
+ 00024208  0x00006328 fetch  0x00000002 , 0x0000015f 
+ 00024209  0x00006329 add  0x0000003f , 0xfffffffd , 0x00000039 
+ 00024210  0x0000632a fetcht  0x00000001 , 0x00000552 
+ 00024211  0x0000632b setarg  0x00000101 
+ 00024212  0x0000632c iadd  0x00000002 , 0x00000005 
+ 00024213  0x0000632d arg  0x00000554 , 0x00000006 
+ 00024214  0x0000632e call  0x00007f01 
+ 00024215  0x0000632f fetcht  0x00000001 , 0x00000053 
+ 00024216  0x00006330 fetch  0x00000001 , 0x00000553 
+ 00024217  0x00006331 isub  0x00000002 , 0x0000003f 
+ 00024218  0x00006332 sub  0x0000003f , 0x0000000e , 0x0000003e 
+ 00024219  0x00006333 branch  0x00005ea0 , 0x00000002 
+ 00024220  0x00006334 add  0x00000002 , 0x0000000e , 0x0000003f 
+ 00024221  0x00006335 store  0x00000001 , 0x00000053 
+ 00024222  0x00006336 jam  0x00000001 , 0x0000007c 
+ 00024223  0x00006337 rtn 
+ 00024224  0x00006339 fetch  0x00000001 , 0x0000004c 
+ 00024225  0x0000633a set1  0x00000003 , 0x0000003f 
+ 00024226  0x0000633b store  0x00000001 , 0x0000004c 
+ 00024227  0x0000633c bbit1  0x00000004 , 0x00006006 
+ 00024228  0x0000633d rtn 
+ 00024229  0x0000633f fetch  0x00000001 , 0x00000552 
+ 00024230  0x00006340 store  0x00000001 , 0x0000007d 
+ 00024231  0x00006341 jam  0x00000002 , 0x0000007c 
+ 00024232  0x00006342 rtn 
+ 00024233  0x00006345 branch  0x00005e38 
+ 00024234  0x00006348 jam  0x00000030 , 0x0000007c 
+ 00024235  0x00006349 rtn 
+ 00024236  0x0000634c jam  0x00000028 , 0x0000007c 
+ 00024237  0x0000634d rtn 
+ 00024238  0x00006350 jam  0x00000026 , 0x0000007c 
+ 00024239  0x00006351 rtn 
+ 00024240  0x00006356 rtn 
+ 00024241  0x0000635b fetch  0x00000002 , 0x00000032 
+ 00024242  0x0000635c iforce  0x00000002 
+ 00024243  0x0000635d fetch  0x00000001 , 0x00000553 
+ 00024244  0x0000635e store  0x00000001 , 0x00000095 
+ 00024245  0x0000635f imul32  0x00000002 , 0x00000002 
+ 00024246  0x00006360 fetch  0x00000002 , 0x00000554 
+ 00024247  0x00006361 lshift  0x0000003f , 0x0000003f 
+ 00024248  0x00006362 store  0x00000002 , 0x00000096 
+ 00024249  0x00006363 fetch  0x00000004 , 0x00000556 
+ 00024250  0x00006364 lshift  0x0000003f , 0x0000003f 
+ 00024251  0x00006365 store  0x00000004 , 0x00000091 
+ 00024252  0x00006367 deposit  0x00000002 
+ 00024253  0x00006368 store  0x00000002 , 0x00000098 
+ 00024254  0x00006369 rtn 
+ 00024255  0x0000636b fetcht  0x00000001 , 0x0000415a 
+ 00024256  0x0000636c fetch  0x00000001 , 0x00000553 
+ 00024257  0x0000636d ixor  0x00000002 , 0x0000003e 
+ 00024258  0x0000636e nbranch  0x00005d77 , 0x00000005 
+ 00024259  0x0000636f isolate1  0x00000000 , 0x0000003f 
+ 00024260  0x00006370 fetch  0x00000001 , 0x0000004c 
+ 00024261  0x00006371 setflag  0x00000001 , 0x00000005 , 0x0000003f 
+ 00024262  0x00006372 store  0x00000001 , 0x0000004c 
+ 00024263  0x00006373 jam  0x00000081 , 0x0000007c 
+ 00024264  0x00006374 jam  0x0000008b , 0x0000007d 
+ 00024265  0x00006375 rtn 
+ 00024266  0x0000637c rtn 
+ 00024267  0x0000637f branch  0x00005e38 
+ 00024268  0x00006383 branch  0x00005e38 
+ 00024269  0x00006388 fetch  0x00000002 , 0x00000552 
+ 00024270  0x00006389 store  0x00000002 , 0x00000171 
+ 00024271  0x0000638a rtn 
+ 00024272  0x0000638d fetch  0x00000002 , 0x00000555 
+ 00024273  0x0000638e fetcht  0x00000001 , 0x00004172 
+ 00024274  0x0000638f imul32  0x00000002 , 0x0000003f 
+ 00024275  0x00006390 arg  0x00000640 , 0x00000002 
+ 00024276  0x00006391 isub  0x00000002 , 0x0000003e 
+ 00024277  0x00006393 rtn 
+ 00024278  0x00006396 fetch  0x00000002 , 0x00000557 
+ 00024279  0x00006397 branch  0x00005ef0 , 0x00000034 
+ 00024280  0x00006398 call  0x00005ed0 
+ 00024281  0x00006399 branch  0x00005ef0 , 0x00000002 
+ 00024282  0x0000639a fetch  0x00000001 , 0x00004092 
+ 00024283  0x0000639b sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00024284  0x0000639c call  0x00003cd5 , 0x00000005 
+ 00024285  0x0000639d fetch  0x00000001 , 0x00000030 
+ 00024286  0x0000639e bbit1  0x00000001 , 0x00005ef0 
+ 00024287  0x0000639f fetch  0x00000002 , 0x00000553 
+ 00024288  0x000063a0 lshift  0x0000003f , 0x0000003f 
+ 00024289  0x000063a1 store  0x00000002 , 0x00000075 
+ 00024290  0x000063a2 fetch  0x00000002 , 0x00000555 
+ 00024291  0x000063a3 lshift  0x0000003f , 0x0000003f 
+ 00024292  0x000063a4 store  0x00000002 , 0x00000032 
+ 00024293  0x000063a5 fetch  0x00000002 , 0x00000557 
+ 00024294  0x000063a6 store  0x00000001 , 0x00000073 
+ 00024295  0x000063a7 iforce  0x00000002 
+ 00024296  0x000063a8 fetch  0x00000002 , 0x00000559 
+ 00024297  0x000063a9 store  0x00000001 , 0x00000074 
+ 00024298  0x000063aa isub  0x00000002 , 0x0000003e 
+ 00024299  0x000063ab nbranch  0x00005eed , 0x00000002 
+ 00024300  0x000063ac store  0x00000001 , 0x00000073 
+ 00024301  0x000063af jam  0x00000003 , 0x0000007c 
+ 00024302  0x000063b0 jam  0x00000017 , 0x0000007d 
+ 00024303  0x000063b1 rtn 
+ 00024304  0x000063b4 jam  0x00000024 , 0x0000007e 
+ 00024305  0x000063b5 branch  0x00005d53 
+ 00024306  0x000063b8 call  0x00005e38 
+ 00024307  0x000063b9 call  0x00005ff9 
+ 00024308  0x000063ba call  0x0000728b 
+ 00024309  0x000063bb branch  0x000026b8 
+ 00024310  0x000063be call  0x00005e38 
+ 00024311  0x000063bf branch  0x000026c0 
+ 00024312  0x000063c3 fetch  0x00000004 , 0x00000552 
+ 00024313  0x000063c4 lshift  0x0000003f , 0x0000003f 
+ 00024314  0x000063c6 branch  0x00005f04 , 0x00000029 
+ 00024315  0x000063c7 fetcht  0x00000001 , 0x000041bd 
+ 00024316  0x000063c8 nbranch  0x00005f01 , 0x00000034 
+ 00024317  0x000063ca jam  0x00000004 , 0x0000007c 
+ 00024318  0x000063cb jam  0x00000013 , 0x0000007d 
+ 00024319  0x000063cc jam  0x00000024 , 0x0000007e 
+ 00024320  0x000063cd rtn 
+ 00024321  0x000063cf jam  0x00000034 , 0x0000007c 
+ 00024322  0x000063d0 jam  0x00000000 , 0x00000055 
+ 00024323  0x000063d1 branch  0x000021d9 
+ 00024324  0x000063d4 call  0x000021d9 
+ 00024325  0x000063d5 set1  0x00000022 , 0x00000000 
+ 00024326  0x000063d6 fetch  0x00000001 , 0x0000016d 
+ 00024327  0x000063d7 set0  0x00000002 , 0x0000003f 
+ 00024328  0x000063d8 store  0x00000001 , 0x0000016d 
+ 00024329  0x000063d9 branch  0x00005e38 
+ 00024330  0x000063e2 rtn 
+ 00024331  0x000063e6 jam  0x00000003 , 0x0000007c 
+ 00024332  0x000063e7 jam  0x00000018 , 0x0000007d 
+ 00024333  0x000063e8 jam  0x0000002e , 0x00000a99 
+ 00024334  0x000063e9 call  0x00007d86 
+ 00024335  0x000063ea branch  0x000026e9 
+ 00024336  0x000063ed fetch  0x00000001 , 0x00000552 
+ 00024337  0x000063ee bne  0x00000001 , 0x00005f1c 
+ 00024338  0x000063ef fetch  0x00000001 , 0x00000553 
+ 00024339  0x000063f0 bne  0x00000001 , 0x00005f1c 
+ 00024340  0x000063f1 fetch  0x00000001 , 0x00000554 
+ 00024341  0x000063f2 bne  0x00000030 , 0x00005f1c 
+ 00024342  0x000063f3 call  0x000062fc 
+ 00024343  0x000063f4 branch  0x00005f19 , 0x00000001 
+ 00024344  0x000063f5 jam  0x00000001 , 0x000009ae 
+ 00024345  0x000063f7 jam  0x00000003 , 0x0000007c 
+ 00024346  0x000063f8 jam  0x0000003d , 0x0000007d 
+ 00024347  0x000063f9 branch  0x00005d07 
+ 00024348  0x000063fc jam  0x00000024 , 0x0000007e 
+ 00024349  0x000063fd branch  0x00005d53 
+ 00024350  0x00006402 jam  0x0000003e , 0x0000007c 
+ 00024351  0x00006404 rtn 
+ 00024352  0x00006406 fetch  0x00000001 , 0x00004662 
+ 00024353  0x00006407 beq  0x00000001 , 0x00005f27 
+ 00024354  0x00006408 beq  0x00000002 , 0x00005f2b 
+ 00024355  0x0000640a call  0x000062fc 
+ 00024356  0x0000640b rtn  0x00000001 
+ 00024357  0x0000640c jam  0x00000008 , 0x000009ae 
+ 00024358  0x0000640d rtn 
+ 00024359  0x00006410 call  0x00007962 
+ 00024360  0x00006411 jam  0x00000035 , 0x00000a99 
+ 00024361  0x00006412 call  0x00007d86 
+ 00024362  0x00006413 branch  0x00005f23 
+ 00024363  0x00006417 call  0x000062fc 
+ 00024364  0x00006418 rtn  0x00000001 
+ 00024365  0x00006419 fetch  0x00000001 , 0x00004663 
+ 00024366  0x0000641a beq  0x00000013 , 0x00005f3b 
+ 00024367  0x0000641b increase  0x00000001 , 0x0000003f 
+ 00024368  0x0000641c store  0x00000001 , 0x00004663 
+ 00024369  0x00006420 jam  0x00000001 , 0x000009b0 
+ 00024370  0x00006421 jam  0x00000004 , 0x000009ae 
+ 00024371  0x00006422 fetch  0x00000001 , 0x00004663 
+ 00024372  0x00006423 copy  0x0000003f , 0x00000007 
+ 00024373  0x00006424 fetch  0x00000006 , 0x0000468a 
+ 00024374  0x00006425 qisolate1  0x0000003f 
+ 00024375  0x00006426 setarg  0x00000080 
+ 00024376  0x00006427 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00024377  0x00006428 store  0x00000001 , 0x00004664 
+ 00024378  0x00006429 rtn 
+ 00024379  0x0000642c jam  0x00000008 , 0x000009ae 
+ 00024380  0x0000642d rtn 
+ 00024381  0x00006430 call  0x00005f43 
+ 00024382  0x00006432 fetch  0x00000001 , 0x00004665 
+ 00024383  0x00006433 rtn  0x00000034 
+ 00024384  0x00006434 jam  0x00000000 , 0x00004665 
+ 00024385  0x00006435 jam  0x00000038 , 0x00000a99 
+ 00024386  0x00006436 branch  0x00007d86 
+ 00024387  0x0000643b call  0x000062fc 
+ 00024388  0x0000643c ncall  0x00007965 , 0x00000001 
+ 00024389  0x0000643d call  0x00007975 , 0x00000001 
+ 00024390  0x0000643e call  0x000062fc 
+ 00024391  0x0000643f rtn  0x00000001 
+ 00024392  0x00006440 jam  0x0000000c , 0x000009ae 
+ 00024393  0x00006441 jam  0x00000001 , 0x000009b0 
+ 00024394  0x00006442 rtn 
+ 00024395  0x00006445 arg  0x00000a6e , 0x00000005 
+ 00024396  0x00006446 arg  0x00000552 , 0x00000006 
+ 00024397  0x00006447 call  0x00007ebf 
+ 00024398  0x00006448 fetch  0x00000001 , 0x00004662 
+ 00024399  0x00006449 rtneq  0x00000002 
+ 00024400  0x0000644a branch  0x000076d8 
+ 00024401  0x0000644d fetch  0x00000001 , 0x000009af 
+ 00024402  0x0000644e beq  0x00000007 , 0x00005f55 
+ 00024403  0x0000644f fetch  0x00000001 , 0x000009ae 
+ 00024404  0x00006450 bne  0x00000001 , 0x00005f68 
+ 00024405  0x00006452 fetch  0x00000001 , 0x000009b7 
+ 00024406  0x00006453 sub  0x0000003f , 0x00000020 , 0x00000005 
+ 00024407  0x00006454 nbranch  0x00005f68 , 0x00000002 
+ 00024408  0x00006455 arg  0x000009c6 , 0x00000005 
+ 00024409  0x00006456 iadd  0x00000005 , 0x00000005 
+ 00024410  0x00006457 fetch  0x00000008 , 0x00000552 
+ 00024411  0x00006458 istore  0x00000008 , 0x00000005 
+ 00024412  0x00006459 fetch  0x00000008 , 0x0000055a 
+ 00024413  0x0000645a istore  0x00000008 , 0x00000005 
+ 00024414  0x0000645b fetch  0x00000001 , 0x000009b7 
+ 00024415  0x0000645c increase  0x00000010 , 0x0000003f 
+ 00024416  0x0000645d store  0x00000001 , 0x000009b7 
+ 00024417  0x0000645e bne  0x00000030 , 0x00005e38 
+ 00024418  0x00006460 call  0x000062fc 
+ 00024419  0x00006461 branch  0x00005e38 , 0x00000001 
+ 00024420  0x00006462 jam  0x00000001 , 0x000009b8 
+ 00024421  0x00006463 jam  0x00000002 , 0x000009ae 
+ 00024422  0x00006464 jam  0x00000001 , 0x000009b0 
+ 00024423  0x00006465 branch  0x00005e38 
+ 00024424  0x00006467 jam  0x00000024 , 0x0000007e 
+ 00024425  0x00006468 branch  0x00005d53 
+ 00024426  0x0000646a fetch  0x00000001 , 0x000009b6 
+ 00024427  0x0000646b beq  0x00000030 , 0x00005f6e 
+ 00024428  0x0000646c jam  0x0000003e , 0x0000007c 
+ 00024429  0x0000646d branch  0x00005d07 
+ 00024430  0x00006470 call  0x000062fc 
+ 00024431  0x00006471 branch  0x00005f77 , 0x00000001 
+ 00024432  0x00006472 fetch  0x00000001 , 0x00004662 
+ 00024433  0x00006473 beq  0x00000002 , 0x00005f75 
+ 00024434  0x00006474 jam  0x00000001 , 0x000009b0 
+ 00024435  0x00006475 jam  0x00000004 , 0x000009ae 
+ 00024436  0x00006476 branch  0x00005d07 
+ 00024437  0x00006479 jam  0x00000036 , 0x00000a99 
+ 00024438  0x0000647a branch  0x00007d86 
+ 00024439  0x0000647f branch  0x00005d07 
+ 00024440  0x00006482 fetch  0x00000001 , 0x000009af 
+ 00024441  0x00006483 beq  0x00000007 , 0x00005f7c 
+ 00024442  0x00006484 fetch  0x00000001 , 0x000009ae 
+ 00024443  0x00006485 bne  0x00000006 , 0x00005f88 
+ 00024444  0x00006487 arg  0x00000a2e , 0x00000005 
+ 00024445  0x00006488 fetch  0x00000008 , 0x00000552 
+ 00024446  0x00006489 istore  0x00000008 , 0x00000005 
+ 00024447  0x0000648a fetch  0x00000008 , 0x0000055a 
+ 00024448  0x0000648b istore  0x00000008 , 0x00000005 
+ 00024449  0x0000648c call  0x000062fc 
+ 00024450  0x0000648d branch  0x00005f86 , 0x00000001 
+ 00024451  0x0000648e jam  0x00000007 , 0x000009ae 
+ 00024452  0x0000648f jam  0x00000001 , 0x000009b0 
+ 00024453  0x00006490 branch  0x00005e38 
+ 00024454  0x00006492 jam  0x00000004 , 0x000009af 
+ 00024455  0x00006493 branch  0x000076d8 
+ 00024456  0x00006497 jam  0x00000024 , 0x0000007e 
+ 00024457  0x00006498 branch  0x00005d53 
+ 00024458  0x0000649b fetch  0x00000001 , 0x000009af 
+ 00024459  0x0000649c beq  0x0000000b , 0x00005f8e 
+ 00024460  0x0000649d fetch  0x00000001 , 0x000009ae 
+ 00024461  0x0000649e bne  0x00000008 , 0x00005f9d 
+ 00024462  0x000064a0 arg  0x00000a5e , 0x00000005 
+ 00024463  0x000064a1 arg  0x00000552 , 0x00000006 
+ 00024464  0x000064a2 call  0x00007ebf 
+ 00024465  0x000064a3 call  0x000062fc 
+ 00024466  0x000064a4 branch  0x00005f9a , 0x00000001 
+ 00024467  0x000064a5 fetch  0x00000001 , 0x00004662 
+ 00024468  0x000064a6 beq  0x00000001 , 0x00005f9f 
+ 00024469  0x000064a8 jam  0x00000000 , 0x00004661 
+ 00024470  0x000064a9 jam  0x00000009 , 0x000009ae 
+ 00024471  0x000064aa jam  0x00000001 , 0x000009b0 
+ 00024472  0x000064ab jam  0x00000041 , 0x0000007d 
+ 00024473  0x000064ac branch  0x00005d07 
+ 00024474  0x000064af jam  0x00000009 , 0x000009af 
+ 00024475  0x000064b0 jam  0x00000001 , 0x000009b1 
+ 00024476  0x000064b1 branch  0x00005d07 
+ 00024477  0x000064b3 jam  0x00000024 , 0x0000007e 
+ 00024478  0x000064b4 branch  0x00005d53 
+ 00024479  0x000064b7 fetch  0x00000001 , 0x00004661 
+ 00024480  0x000064b8 bbit1  0x00000007 , 0x00005fa4 
+ 00024481  0x000064b9 set1  0x00000006 , 0x0000003f 
+ 00024482  0x000064ba store  0x00000001 , 0x00004661 
+ 00024483  0x000064bb rtn 
+ 00024484  0x000064be bbit1  0x00000000 , 0x00005f95 
+ 00024485  0x000064bf jam  0x00000000 , 0x00004661 
+ 00024486  0x000064c0 branch  0x00005f9d 
+ 00024487  0x000064c4 branch  0x00005d07 
+ 00024488  0x000064c7 fetch  0x00000001 , 0x0000016d 
+ 00024489  0x000064c8 set0  0x00000001 
+ 00024490  0x000064c9 store  0x00000001 , 0x0000016d 
+ 00024491  0x000064ca call  0x00005e38 
+ 00024492  0x000064cb nrtn  0x00000029 
+ 00024493  0x000064cc fetch  0x00000001 , 0x00000552 
+ 00024494  0x000064cd fetcht  0x00000001 , 0x0000004b 
+ 00024495  0x000064ce setflag  0x00000034 , 0x00000004 , 0x00000002 
+ 00024496  0x000064cf nsetflag  0x00000034 , 0x00000005 , 0x00000002 
+ 00024497  0x000064d0 storet  0x00000001 , 0x0000004b 
+ 00024498  0x000064d1 rtn 
+ 00024499  0x000064d4 fetcht  0x00000008 , 0x00000552 
+ 00024500  0x000064d6 fetch  0x00000001 , 0x00000055 
+ 00024501  0x000064d7 rtnne  0x00000003 
+ 00024502  0x000064d9 fetch  0x00000001 , 0x0000016d 
+ 00024503  0x000064da bbit0  0x00000004 , 0x00005fba 
+ 00024504  0x000064dc jam  0x00000014 , 0x00000055 
+ 00024505  0x000064dd rtn 
+ 00024506  0x000064df jam  0x00000004 , 0x00000055 
+ 00024507  0x000064e0 rtn 
+ 00024508  0x000064e2 fetch  0x00000001 , 0x0000017f 
+ 00024509  0x000064e3 store  0x00000001 , 0x0000015b 
+ 00024510  0x000064e4 jam  0x00000003 , 0x0000007c 
+ 00024511  0x000064e5 jam  0x00000038 , 0x0000007d 
+ 00024512  0x000064e6 rtn 
+ 00024513  0x000064ea jam  0x00000003 , 0x0000007c 
+ 00024514  0x000064eb jam  0x00000039 , 0x0000007d 
+ 00024515  0x000064ec force  0x00000009 , 0x00000039 
+ 00024516  0x000064ed arg  0x00000552 , 0x00000006 
+ 00024517  0x000064ee arg  0x00000152 , 0x00000005 
+ 00024518  0x000064f0 ifetch  0x00000001 , 0x00000006 
+ 00024519  0x000064f1 xor_into  0x00000055 , 0x0000003f 
+ 00024520  0x000064f2 istore  0x00000001 , 0x00000005 
+ 00024521  0x000064f3 loop  0x00005fc6 
+ 00024522  0x000064f4 fetch  0x00000001 , 0x00000152 
+ 00024523  0x000064f5 fetcht  0x00000001 , 0x00000151 
+ 00024524  0x000064f6 set0  0x00000007 , 0x00000002 
+ 00024525  0x000064f7 set0  0x00000004 , 0x00000002 
+ 00024526  0x000064f8 beq  0x000000ff , 0x00005fda 
+ 00024527  0x000064f9 beq  0x00000000 , 0x00005ff3 
+ 00024528  0x000064fa beq  0x00000005 , 0x00005fe7 
+ 00024529  0x000064fb beq  0x00000007 , 0x00005fe6 
+ 00024530  0x000064fc beq  0x00000006 , 0x00005fe7 
+ 00024531  0x000064fd beq  0x00000008 , 0x00005fe6 
+ 00024532  0x000064fe beq  0x00000001 , 0x00005fdf 
+ 00024533  0x000064ff beq  0x00000002 , 0x00005fdf 
+ 00024534  0x00006500 beq  0x00000003 , 0x00005fdf 
+ 00024535  0x00006501 beq  0x00000009 , 0x00005fdf 
+ 00024536  0x00006502 beq  0x00000004 , 0x00005fdf 
+ 00024537  0x00006503 rtn 
+ 00024538  0x00006506 fetch  0x00000001 , 0x00000151 
+ 00024539  0x00006507 set1  0x00000003 , 0x0000003f 
+ 00024540  0x00006508 set1  0x00000002 , 0x0000003f 
+ 00024541  0x00006509 store  0x00000001 , 0x00000151 
+ 00024542  0x0000650a rtn 
+ 00024543  0x0000650c set1  0x00000004 , 0x00000002 
+ 00024544  0x0000650d jam  0x00000005 , 0x00000180 
+ 00024545  0x0000650e fetch  0x00000002 , 0x00000159 
+ 00024546  0x0000650f iforce  0x00000039 
+ 00024547  0x00006510 store  0x00000002 , 0x0000015f 
+ 00024548  0x00006511 arg  0x00000551 , 0x00000005 
+ 00024549  0x00006512 call  0x00007f73 
+ 00024550  0x00006514 set1  0x00000007 , 0x00000002 
+ 00024551  0x00006516 set1  0x00000002 , 0x00000002 
+ 00024552  0x00006517 force  0x00000000 , 0x0000003f 
+ 00024553  0x00006518 store  0x00000001 , 0x0000000b 
+ 00024554  0x00006519 store  0x00000002 , 0x000000fa 
+ 00024555  0x0000651a store  0x00000002 , 0x000000fc 
+ 00024556  0x0000651b store  0x00000002 , 0x000000f8 
+ 00024557  0x0000651c store  0x00000002 , 0x000000f6 
+ 00024558  0x0000651d fetch  0x00000001 , 0x00000153 
+ 00024559  0x0000651e compare  0x00000000 , 0x0000003f , 0x000000ff 
+ 00024560  0x0000651f setflag  0x00000001 , 0x00000006 , 0x00000002 
+ 00024561  0x00006520 storet  0x00000001 , 0x00000151 
+ 00024562  0x00006521 rtn 
+ 00024563  0x00006524 set0  0x00000011 , 0x00000000 
+ 00024564  0x00006525 jam  0x00000000 , 0x00000151 
+ 00024565  0x00006526 fetch  0x00000001 , 0x0000017f 
+ 00024566  0x00006527 set0  0x00000006 , 0x0000003f 
+ 00024567  0x00006528 store  0x00000001 , 0x0000017f 
+ 00024568  0x00006529 rtn 
+ 00024569  0x00006530 arg  0x00000552 , 0x00000006 
+ 00024570  0x00006531 arg  0x00000562 , 0x00000005 
+ 00024571  0x00006532 branch  0x00007ebf 
+ 00024572  0x00006535 jam  0x00000009 , 0x0000007c 
+ 00024573  0x00006536 rtn 
+ 00024574  0x00006539 nrtn  0x00000029 
+ 00024575  0x0000653a jam  0x00000011 , 0x0000007c 
+ 00024576  0x0000653b rtn 
+ 00024577  0x0000653e arg  0x000040a0 , 0x00000011 
+ 00024578  0x0000653f call  0x00007255 
+ 00024579  0x00006540 jam  0x00000003 , 0x0000007c 
+ 00024580  0x00006541 jam  0x00000008 , 0x0000007d 
+ 00024581  0x00006542 rtn 
+ 00024582  0x00006545 jam  0x0000000a , 0x00000072 
+ 00024583  0x00006546 jam  0x00000007 , 0x0000007c 
+ 00024584  0x00006547 jam  0x00000016 , 0x000004ca 
+ 00024585  0x00006548 rtn 
+ 00024586  0x0000654f bpatchx  0x00000082 , 0x00004030 
+ 00024587  0x00006550 disable  0x00000028 
+ 00024588  0x00006551 call  0x000062c1 
+ 00024589  0x00006552 fetch  0x00000001 , 0x00000048 
+ 00024590  0x00006553 rtn  0x00000034 
+ 00024591  0x00006558 bbit1  0x00000007 , 0x0000603f 
+ 00024592  0x0000655a beq  0x00000001 , 0x0000616f 
+ 00024593  0x0000655b beq  0x00000002 , 0x000060e4 
+ 00024594  0x0000655c beq  0x00000003 , 0x0000604a 
+ 00024595  0x0000655d beq  0x00000004 , 0x00006060 
+ 00024596  0x0000655e beq  0x00000027 , 0x000061db 
+ 00024597  0x0000655f beq  0x00000028 , 0x00006108 
+ 00024598  0x00006560 beq  0x00000030 , 0x000060f4 
+ 00024599  0x00006561 beq  0x00000025 , 0x000061d6 
+ 00024600  0x00006562 beq  0x00000026 , 0x00006103 
+ 00024601  0x00006563 beq  0x00000031 , 0x000061c3 
+ 00024602  0x00006564 beq  0x00000037 , 0x0000616a 
+ 00024603  0x00006565 beq  0x00000033 , 0x0000615c 
+ 00024604  0x00006566 beq  0x00000008 , 0x00006259 
+ 00024605  0x00006567 beq  0x00000009 , 0x0000624f 
+ 00024606  0x00006568 beq  0x0000000b , 0x00006264 
+ 00024607  0x00006569 beq  0x0000000c , 0x0000626d 
+ 00024608  0x0000656a beq  0x0000000f , 0x00006162 
+ 00024609  0x0000656b beq  0x00000010 , 0x00006292 
+ 00024610  0x0000656c beq  0x00000011 , 0x00006288 
+ 00024611  0x0000656d beq  0x00000007 , 0x00006152 
+ 00024612  0x0000656e beq  0x0000002a , 0x0000617e 
+ 00024613  0x0000656f beq  0x0000000a , 0x0000617f 
+ 00024614  0x00006571 beq  0x0000001f , 0x000061bc 
+ 00024615  0x00006572 beq  0x00000006 , 0x000060f9 
+ 00024616  0x00006573 beq  0x00000021 , 0x0000615f 
+ 00024617  0x00006574 beq  0x0000002d , 0x000061b2 
+ 00024618  0x00006575 beq  0x0000002e , 0x000061b7 
+ 00024619  0x00006576 beq  0x00000022 , 0x0000615f 
+ 00024620  0x00006577 beq  0x00000034 , 0x00006180 
+ 00024621  0x00006578 beq  0x00000013 , 0x00006195 
+ 00024622  0x00006579 beq  0x00000017 , 0x000061a4 
+ 00024623  0x0000657a beq  0x00000012 , 0x0000628f 
+ 00024624  0x0000657b beq  0x0000002f , 0x000061aa 
+ 00024625  0x0000657c beq  0x00000018 , 0x000061af 
+ 00024626  0x0000657d beq  0x0000003d , 0x000061ff 
+ 00024627  0x0000657e beq  0x0000003e , 0x0000620b 
+ 00024628  0x0000657f beq  0x0000003f , 0x0000621d 
+ 00024629  0x00006580 beq  0x00000040 , 0x00006227 
+ 00024630  0x00006581 beq  0x00000041 , 0x0000623c 
+ 00024631  0x00006582 beq  0x00000023 , 0x0000624b 
+ 00024632  0x00006583 beq  0x0000003b , 0x00006246 
+ 00024633  0x00006585 beq  0x00000005 , 0x0000624c 
+ 00024634  0x00006586 beq  0x00000029 , 0x0000624d 
+ 00024635  0x00006587 beq  0x00000038 , 0x0000624e 
+ 00024636  0x00006588 beq  0x00000039 , 0x00006175 
+ 00024637  0x0000658a branch  0x00002a8c 
+ 00024638  0x0000658b rtn 
+ 00024639  0x0000658d beq  0x00000081 , 0x0000606d 
+ 00024640  0x0000658e beq  0x00000084 , 0x00006099 
+ 00024641  0x0000658f beq  0x00000082 , 0x00006076 
+ 00024642  0x00006590 beq  0x00000083 , 0x0000610d 
+ 00024643  0x00006591 beq  0x0000008b , 0x00006118 
+ 00024644  0x00006592 beq  0x00000097 , 0x0000614e 
+ 00024645  0x00006593 beq  0x00000099 , 0x000060d5 
+ 00024646  0x00006594 beq  0x0000009a , 0x000060a4 
+ 00024647  0x00006595 beq  0x00000095 , 0x000060da 
+ 00024648  0x00006596 beq  0x00000096 , 0x000060db 
+ 00024649  0x00006597 branch  0x00002a8c 
+ 00024650  0x0000659e force  0x00000002 , 0x0000003f 
+ 00024651  0x0000659f call  0x00006298 
+ 00024652  0x000065a0 fetch  0x00000001 , 0x00000049 
+ 00024653  0x000065a1 istore  0x00000001 , 0x00000005 
+ 00024654  0x000065a2 call  0x000062a7 
+ 00024655  0x000065a3 bpatchx  0x00000083 , 0x00004030 
+ 00024656  0x000065a4 fetch  0x00000001 , 0x00000049 
+ 00024657  0x000065a5 beq  0x00000008 , 0x00006080 
+ 00024658  0x000065a6 beq  0x0000000f , 0x00006084 
+ 00024659  0x000065a7 beq  0x00000010 , 0x0000608f 
+ 00024660  0x000065a8 beq  0x00000017 , 0x0000605f 
+ 00024661  0x000065a9 beq  0x00000033 , 0x00006092 
+ 00024662  0x000065aa beq  0x00000041 , 0x00006098 
+ 00024663  0x000065ab beq  0x00000011 , 0x00006059 
+ 00024664  0x000065ac rtn 
+ 00024665  0x000065af fetch  0x00000001 , 0x00000055 
+ 00024666  0x000065b0 rtn  0x00000034 
+ 00024667  0x000065b1 jam  0x0000001b , 0x00000055 
+ 00024668  0x000065b2 setarg  0x0000000c 
+ 00024669  0x000065b3 arg  0x00000007 , 0x00000007 
+ 00024670  0x000065b4 branch  0x00007f08 
+ 00024671  0x000065b7 branch  0x000026c6 
+ 00024672  0x000065b9 force  0x00000003 , 0x0000003f 
+ 00024673  0x000065ba call  0x00006298 
+ 00024674  0x000065bb fetch  0x00000001 , 0x00000049 
+ 00024675  0x000065bc beq  0x0000000b , 0x00006068 
+ 00024676  0x000065bd istore  0x00000001 , 0x00000005 
+ 00024677  0x000065be fetch  0x00000001 , 0x0000004a 
+ 00024678  0x000065bf istore  0x00000001 , 0x00000005 
+ 00024679  0x000065c0 branch  0x000062a7 
+ 00024680  0x000065c3 istore  0x00000001 , 0x00000005 
+ 00024681  0x000065c4 fetch  0x00000001 , 0x0000004a 
+ 00024682  0x000065c5 istore  0x00000001 , 0x00000005 
+ 00024683  0x000065c6 arg  0x000004d5 , 0x00000002 
+ 00024684  0x000065c7 branch  0x000062e2 
+ 00024685  0x000065ca force  0x00000004 , 0x00000007 
+ 00024686  0x000065cb call  0x000062a0 
+ 00024687  0x000065cc setarg  0x0000007f 
+ 00024688  0x000065cd istore  0x00000001 , 0x00000005 
+ 00024689  0x000065ce fetch  0x00000001 , 0x00000049 
+ 00024690  0x000065cf set0  0x00000007 , 0x0000003f 
+ 00024691  0x000065d0 istore  0x00000001 , 0x00000005 
+ 00024692  0x000065d1 fetch  0x00000001 , 0x00000049 
+ 00024693  0x000065d2 branch  0x000062a7 
+ 00024694  0x000065d5 force  0x00000005 , 0x00000007 
+ 00024695  0x000065d6 call  0x000062a0 
+ 00024696  0x000065d7 setarg  0x0000007f 
+ 00024697  0x000065d8 istore  0x00000001 , 0x00000005 
+ 00024698  0x000065d9 fetch  0x00000001 , 0x00000049 
+ 00024699  0x000065da set0  0x00000007 , 0x0000003f 
+ 00024700  0x000065db istore  0x00000001 , 0x00000005 
+ 00024701  0x000065dc fetch  0x00000001 , 0x0000004a 
+ 00024702  0x000065dd istore  0x00000001 , 0x00000005 
+ 00024703  0x000065de branch  0x000062a7 
+ 00024704  0x000065e2 call  0x0000244f 
+ 00024705  0x000065e3 call  0x000062f3 
+ 00024706  0x000065e4 rtn  0x00000001 
+ 00024707  0x000065e5 branch  0x00005ffc 
+ 00024708  0x000065e8 fetch  0x00000001 , 0x0000004b 
+ 00024709  0x000065e9 bbit1  0x00000005 , 0x0000608b 
+ 00024710  0x000065ea rtnbit0  0x00000004 
+ 00024711  0x000065eb jam  0x00000012 , 0x0000007c 
+ 00024712  0x000065ec set0  0x00000004 , 0x0000003f 
+ 00024713  0x000065ed call  0x000062eb 
+ 00024714  0x000065ee branch  0x0000608d 
+ 00024715  0x000065f0 jam  0x00000010 , 0x0000007c 
+ 00024716  0x000065f1 set0  0x00000005 , 0x0000003f 
+ 00024717  0x000065f3 store  0x00000001 , 0x0000004b 
+ 00024718  0x000065f4 rtn 
+ 00024719  0x000065f7 call  0x000062fc 
+ 00024720  0x000065f8 branch  0x00005ffe , 0x00000001 
+ 00024721  0x000065f9 rtn 
+ 00024722  0x000065fc jam  0x0000008b , 0x0000007c 
+ 00024723  0x000065fe fetch  0x00000001 , 0x000004d1 
+ 00024724  0x000065ff set1  0x00000000 , 0x0000003f 
+ 00024725  0x00006600 store  0x00000001 , 0x000004d1 
+ 00024726  0x00006601 jam  0x00000001 , 0x00000a99 
+ 00024727  0x00006602 branch  0x00007d86 
+ 00024728  0x00006606 rtn 
+ 00024729  0x0000660b force  0x0000000c , 0x00000007 
+ 00024730  0x0000660c call  0x000062a0 
+ 00024731  0x0000660d setarg  0x00000001 
+ 00024732  0x0000660e istore  0x00000001 , 0x00000005 
+ 00024733  0x0000660f fetch  0x00000002 , 0x000004ce 
+ 00024734  0x00006610 istore  0x00000002 , 0x00000005 
+ 00024735  0x00006611 setarg  0x00000000 
+ 00024736  0x00006612 istore  0x00000003 , 0x00000005 
+ 00024737  0x00006613 setarg  0x00000000 
+ 00024738  0x00006614 istore  0x00000004 , 0x00000005 
+ 00024739  0x00006615 branch  0x000062b0 
+ 00024740  0x00006617 force  0x00000005 , 0x00000007 
+ 00024741  0x00006618 call  0x000062a0 
+ 00024742  0x00006619 fetch  0x00000003 , 0x0000465b 
+ 00024743  0x0000661a istore  0x00000003 , 0x00000005 
+ 00024744  0x0000661b call  0x000062b0 
+ 00024745  0x0000661c jam  0x00000001 , 0x00004665 
+ 00024746  0x0000661d fetch  0x00000001 , 0x0000465b 
+ 00024747  0x0000661e beq  0x00000001 , 0x000060b5 
+ 00024748  0x0000661f beq  0x00000002 , 0x000060af 
+ 00024749  0x00006620 beq  0x00000003 , 0x000060bb 
+ 00024750  0x00006621 rtn 
+ 00024751  0x00006624 fetch  0x00000001 , 0x0000465e 
+ 00024752  0x00006625 beq  0x00000000 , 0x000060c7 
+ 00024753  0x00006626 beq  0x00000001 , 0x000060c7 
+ 00024754  0x00006627 beq  0x00000002 , 0x000060c7 
+ 00024755  0x00006628 beq  0x00000003 , 0x000060c1 
+ 00024756  0x00006629 rtn 
+ 00024757  0x0000662d fetch  0x00000001 , 0x0000465e 
+ 00024758  0x0000662e beq  0x00000000 , 0x000060c1 
+ 00024759  0x0000662f beq  0x00000001 , 0x000060c5 
+ 00024760  0x00006630 beq  0x00000002 , 0x000060c7 
+ 00024761  0x00006631 beq  0x00000003 , 0x000060c1 
+ 00024762  0x00006632 rtn 
+ 00024763  0x00006636 fetch  0x00000001 , 0x0000465e 
+ 00024764  0x00006637 beq  0x00000000 , 0x000060c1 
+ 00024765  0x00006638 beq  0x00000001 , 0x000060c1 
+ 00024766  0x00006639 beq  0x00000002 , 0x000060c1 
+ 00024767  0x0000663a beq  0x00000003 , 0x000060c1 
+ 00024768  0x0000663b rtn 
+ 00024769  0x00006645 jam  0x00000003 , 0x00004662 
+ 00024770  0x00006646 fetch  0x00000001 , 0x0000455c 
+ 00024771  0x00006647 bbit1  0x00000000 , 0x000033e9 
+ 00024772  0x00006648 rtn 
+ 00024773  0x0000664c jam  0x00000001 , 0x00004662 
+ 00024774  0x0000664d rtn 
+ 00024775  0x00006654 jam  0x00000002 , 0x00004662 
+ 00024776  0x00006655 rtn 
+ 00024777  0x00006659 arg  0x00000000 , 0x00000007 
+ 00024778  0x0000665a branch  0x000060cd 
+ 00024779  0x0000665d arg  0x00000000 , 0x00000007 
+ 00024780  0x0000665e branch  0x000060d1 
+ 00024781  0x00006661 fetch  0x00000001 , 0x0000455c 
+ 00024782  0x00006662 qset1  0x0000003f 
+ 00024783  0x00006663 store  0x00000001 , 0x0000455c 
+ 00024784  0x00006664 rtn 
+ 00024785  0x00006667 fetch  0x00000001 , 0x0000455c 
+ 00024786  0x00006668 qset0  0x0000003f 
+ 00024787  0x00006669 store  0x00000001 , 0x0000455c 
+ 00024788  0x0000666a rtn 
+ 00024789  0x0000666e force  0x00000005 , 0x00000007 
+ 00024790  0x0000666f call  0x000062a0 
+ 00024791  0x00006670 fetch  0x00000003 , 0x0000465b 
+ 00024792  0x00006671 istore  0x00000003 , 0x00000005 
+ 00024793  0x00006672 branch  0x000062b2 
+ 00024794  0x00006677 rtn 
+ 00024795  0x00006679 force  0x00000009 , 0x00000007 
+ 00024796  0x0000667a call  0x000062a0 
+ 00024797  0x0000667b fetch  0x00000001 , 0x00000095 
+ 00024798  0x0000667c istore  0x00000001 , 0x00000005 
+ 00024799  0x0000667d fetch  0x00000002 , 0x00000096 
+ 00024800  0x0000667e istore  0x00000002 , 0x00000005 
+ 00024801  0x0000667f fetch  0x00000004 , 0x00000091 
+ 00024802  0x00006680 istore  0x00000004 , 0x00000005 
+ 00024803  0x00006681 branch  0x000062b0 
+ 00024804  0x00006684 force  0x00000011 , 0x0000003f 
+ 00024805  0x00006685 call  0x00006298 
+ 00024806  0x00006686 fetch  0x00000001 , 0x00000049 
+ 00024807  0x00006687 copy  0x0000003f , 0x00000002 
+ 00024808  0x00006688 beq  0x00000000 , 0x000060ec 
+ 00024809  0x00006689 beq  0x0000000e , 0x000060ec 
+ 00024810  0x0000668a beq  0x0000001c , 0x000060ec 
+ 00024811  0x0000668b rtn 
+ 00024812  0x0000668d istore  0x00000001 , 0x00000005 
+ 00024813  0x0000668e fetch  0x00000001 , 0x00004515 
+ 00024814  0x0000668f istore  0x00000001 , 0x00000005 
+ 00024815  0x00006690 arg  0x0000000e , 0x00000039 
+ 00024816  0x00006691 setarg  0x00004516 
+ 00024817  0x00006692 iadd  0x00000002 , 0x00000006 
+ 00024818  0x00006693 call  0x00007f01 
+ 00024819  0x00006694 branch  0x000062b0 
+ 00024820  0x00006698 force  0x00000003 , 0x0000003f 
+ 00024821  0x00006699 call  0x00006298 
+ 00024822  0x0000669a setarg  0x00000114 
+ 00024823  0x0000669b istore  0x00000002 , 0x00000005 
+ 00024824  0x0000669c branch  0x000062b0 
+ 00024825  0x000066a0 force  0x00000003 , 0x0000003f 
+ 00024826  0x000066a1 call  0x00006298 
+ 00024827  0x000066a2 fetch  0x00000004 , 0x00000165 
+ 00024828  0x000066a3 isub  0x00000022 , 0x0000003f 
+ 00024829  0x000066a4 branch  0x000060ff , 0x00000029 
+ 00024830  0x000066a5 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00024831  0x000066a8 rshift2  0x0000003f , 0x0000003f 
+ 00024832  0x000066a9 set0  0x0000000f , 0x0000003f 
+ 00024833  0x000066aa istore  0x00000002 , 0x00000005 
+ 00024834  0x000066ab branch  0x000062b0 
+ 00024835  0x000066ae force  0x00000006 , 0x0000003f 
+ 00024836  0x000066af call  0x00006298 
+ 00024837  0x000066b0 fetch  0x00000005 , 0x00004510 
+ 00024838  0x000066b1 istore  0x00000005 , 0x00000005 
+ 00024839  0x000066b2 branch  0x000062b0 
+ 00024840  0x000066b5 force  0x00000009 , 0x0000003f 
+ 00024841  0x000066b6 call  0x00006298 
+ 00024842  0x000066b7 fetch  0x00000008 , 0x00004098 
+ 00024843  0x000066b8 istore  0x00000008 , 0x00000005 
+ 00024844  0x000066b9 branch  0x000062b0 
+ 00024845  0x000066c1 force  0x0000000c , 0x00000007 
+ 00024846  0x000066c2 call  0x000062a0 
+ 00024847  0x000066c3 setarg  0x00000001 
+ 00024848  0x000066c4 istore  0x00000001 , 0x00000005 
+ 00024849  0x000066c5 fetch  0x00000002 , 0x000004ce 
+ 00024850  0x000066c6 istore  0x00000002 , 0x00000005 
+ 00024851  0x000066c7 setarg  0x00000000 
+ 00024852  0x000066c8 istore  0x00000003 , 0x00000005 
+ 00024853  0x000066c9 setarg  0x00000000 
+ 00024854  0x000066ca istore  0x00000004 , 0x00000005 
+ 00024855  0x000066cb branch  0x000062b2 
+ 00024856  0x000066ce force  0x00000003 , 0x00000007 
+ 00024857  0x000066cf call  0x000062a0 
+ 00024858  0x000066d0 fetch  0x00000001 , 0x0000415a 
+ 00024859  0x000066d1 istore  0x00000001 , 0x00000005 
+ 00024860  0x000066d2 disable  0x00000028 
+ 00024861  0x000066d3 call  0x000062b2 
+ 00024862  0x000066d4 nrtn  0x00000028 
+ 00024863  0x000066d5 nrtn  0x00000029 
+ 00024864  0x000066d6 fetch  0x00000001 , 0x000040d8 
+ 00024865  0x000066d7 rtnbit0  0x00000000 
+ 00024866  0x000066d8 call  0x00006132 
+ 00024867  0x000066d9 branch  0x0000613c 
+ 00024868  0x000066dd bpatchx  0x00000084 , 0x00004030 
+ 00024869  0x000066de fetch  0x00000001 , 0x0000409e 
+ 00024870  0x000066df set1  0x00000003 , 0x0000003f 
+ 00024871  0x000066e0 store  0x00000001 , 0x0000409e 
+ 00024872  0x000066e1 setarg  0x00000101 
+ 00024873  0x000066e2 store  0x00000002 , 0x000004ce 
+ 00024874  0x000066e3 rtn 
+ 00024875  0x000066e6 bpatchx  0x00000085 , 0x00004030 
+ 00024876  0x000066e7 fetch  0x00000001 , 0x0000409e 
+ 00024877  0x000066e8 set0  0x00000003 , 0x0000003f 
+ 00024878  0x000066e9 store  0x00000001 , 0x0000409e 
+ 00024879  0x000066ea setarg  0x00000000 
+ 00024880  0x000066eb store  0x00000002 , 0x000004ce 
+ 00024881  0x000066ec rtn 
+ 00024882  0x000066ef jam  0x00000003 , 0x000040d8 
+ 00024883  0x000066f0 setarg  0x00000000 
+ 00024884  0x000066f1 store  0x00000004 , 0x00004142 
+ 00024885  0x000066f2 arg  0x000040da , 0x00000005 
+ 00024886  0x000066f3 call  0x00006140 
+ 00024887  0x000066f4 arg  0x000040e7 , 0x00000005 
+ 00024888  0x000066f5 call  0x00006140 
+ 00024889  0x000066f6 arg  0x00004146 , 0x00000005 
+ 00024890  0x000066f7 call  0x00006140 
+ 00024891  0x000066f8 branch  0x00006147 
+ 00024892  0x000066fa arg  0x000040e7 , 0x00000005 
+ 00024893  0x000066fb call  0x00006140 
+ 00024894  0x000066fc call  0x00006147 
+ 00024895  0x000066fd branch  0x0000614a 
+ 00024896  0x00006701 setarg  0x00ffffff 
+ 00024897  0x00006702 istore  0x00000003 , 0x00000005 
+ 00024898  0x00006703 istore  0x00000003 , 0x00000005 
+ 00024899  0x00006704 istore  0x00000003 , 0x00000005 
+ 00024900  0x00006705 setarg  0x0000007f 
+ 00024901  0x00006706 istore  0x00000001 , 0x00000005 
+ 00024902  0x00006707 rtn 
+ 00024903  0x00006709 setarg  0x00000000 
+ 00024904  0x0000670a store  0x00000002 , 0x000040d6 
+ 00024905  0x0000670b rtn 
+ 00024906  0x0000670d fetch  0x00000001 , 0x000040d8 
+ 00024907  0x0000670e set1  0x00000002 , 0x0000003f 
+ 00024908  0x0000670f store  0x00000001 , 0x000040d8 
+ 00024909  0x00006710 rtn 
+ 00024910  0x00006714 force  0x00000002 , 0x00000007 
+ 00024911  0x00006715 call  0x000062a0 
+ 00024912  0x00006716 nbranch  0x000062b0 , 0x00000029 
+ 00024913  0x00006718 branch  0x000062b2 
+ 00024914  0x0000671d force  0x00000002 , 0x0000003f 
+ 00024915  0x0000671e call  0x00006298 
+ 00024916  0x0000671f fetch  0x00000001 , 0x000004ca 
+ 00024917  0x00006720 istore  0x00000001 , 0x00000005 
+ 00024918  0x00006721 call  0x000062b2 
+ 00024919  0x00006723 fetch  0x00000001 , 0x0000004b 
+ 00024920  0x00006724 set1  0x00000003 , 0x0000003f 
+ 00024921  0x00006725 store  0x00000001 , 0x0000004b 
+ 00024922  0x00006726 jam  0x00000032 , 0x00000072 
+ 00024923  0x00006727 rtn 
+ 00024924  0x0000672b force  0x00000001 , 0x0000003f 
+ 00024925  0x0000672c call  0x00006298 
+ 00024926  0x0000672d branch  0x000062b2 
+ 00024927  0x0000672f force  0x00000001 , 0x0000003f 
+ 00024928  0x00006730 call  0x00006298 
+ 00024929  0x00006731 branch  0x000062b0 
+ 00024930  0x00006735 force  0x00000002 , 0x0000003f 
+ 00024931  0x00006736 call  0x00006298 
+ 00024932  0x00006737 fetch  0x00000001 , 0x0000004c 
+ 00024933  0x00006738 isolate0  0x00000002 , 0x0000003f 
+ 00024934  0x00006739 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00024935  0x0000673a and_into  0x00000001 , 0x0000003f 
+ 00024936  0x0000673b istore  0x00000001 , 0x00000005 
+ 00024937  0x0000673c branch  0x000062b2 
+ 00024938  0x00006740 force  0x00000003 , 0x0000003f 
+ 00024939  0x00006741 call  0x00006298 
+ 00024940  0x00006742 fetch  0x00000002 , 0x00000051 
+ 00024941  0x00006743 istore  0x00000002 , 0x00000005 
+ 00024942  0x00006744 branch  0x000062b2 
+ 00024943  0x00006747 jam  0x000000fa , 0x00000072 
+ 00024944  0x00006748 force  0x00000002 , 0x0000003f 
+ 00024945  0x00006749 call  0x00006298 
+ 00024946  0x0000674a fetch  0x00000001 , 0x00000053 
+ 00024947  0x0000674b istore  0x00000001 , 0x00000005 
+ 00024948  0x0000674c branch  0x000062b2 
+ 00024949  0x0000674f force  0x0000000a , 0x0000003f 
+ 00024950  0x00006750 call  0x00006298 
+ 00024951  0x00006751 arg  0x00000152 , 0x00000006 
+ 00024952  0x00006752 force  0x00000009 , 0x00000039 
+ 00024953  0x00006754 ifetch  0x00000001 , 0x00000006 
+ 00024954  0x00006755 xor_into  0x00000055 , 0x0000003f 
+ 00024955  0x00006756 istore  0x00000001 , 0x00000005 
+ 00024956  0x00006757 loop  0x00006179 
+ 00024957  0x00006758 branch  0x000062b2 
+ 00024958  0x0000675b branch  0x000062b2 
+ 00024959  0x0000675d branch  0x000062b2 
+ 00024960  0x00006760 rtn  0x00000029 
+ 00024961  0x00006761 call  0x0000282d 
+ 00024962  0x00006762 force  0x00000009 , 0x0000003f 
+ 00024963  0x00006763 call  0x00006298 
+ 00024964  0x00006764 fetch  0x00000002 , 0x00000171 
+ 00024965  0x00006765 istore  0x00000002 , 0x00000005 
+ 00024966  0x00006766 fetch  0x00000003 , 0x000040a0 
+ 00024967  0x00006767 istore  0x00000003 , 0x00000005 
+ 00024968  0x00006768 fetch  0x00000001 , 0x000040a3 
+ 00024969  0x00006769 istore  0x00000001 , 0x00000005 
+ 00024970  0x0000676a fetch  0x00000002 , 0x000040a4 
+ 00024971  0x0000676b istore  0x00000002 , 0x00000005 
+ 00024972  0x0000676c bmark0  0x00000003 , 0x00006191 
+ 00024973  0x0000676d set0  0x00000003 , 0x00000000 
+ 00024974  0x0000676e call  0x000062b2 
+ 00024975  0x0000676f jam  0x00000013 , 0x0000007c 
+ 00024976  0x00006770 rtn 
+ 00024977  0x00006772 call  0x000062b0 
+ 00024978  0x00006773 jam  0x00000003 , 0x0000007c 
+ 00024979  0x00006774 jam  0x00000013 , 0x0000007d 
+ 00024980  0x00006775 rtn 
+ 00024981  0x00006778 arg  0x00000200 , 0x00000002 
+ 00024982  0x00006779 branch  0x00006199 , 0x00000029 
+ 00024983  0x0000677a deposit  0x00000028 
+ 00024984  0x0000677b branch  0x0000619a 
+ 00024985  0x0000677d deposit  0x00000022 
+ 00024986  0x0000677f deposit  0x00000021 
+ 00024987  0x00006780 iadd  0x00000002 , 0x0000003f 
+ 00024988  0x00006781 and_into  0x000001fc , 0x0000003f 
+ 00024989  0x00006782 store  0x00000004 , 0x00000034 
+ 00024990  0x00006783 force  0x00000005 , 0x0000003f 
+ 00024991  0x00006784 call  0x00006298 
+ 00024992  0x00006785 fetch  0x00000004 , 0x00000034 
+ 00024993  0x00006786 rshift  0x0000003f , 0x0000003f 
+ 00024994  0x00006787 istore  0x00000004 , 0x00000005 
+ 00024995  0x00006788 branch  0x000062b2 
+ 00024996  0x0000678b force  0x0000000a , 0x0000003f 
+ 00024997  0x0000678c call  0x00006298 
+ 00024998  0x0000678d arg  0x000004d9 , 0x00000006 
+ 00024999  0x0000678e ifetch  0x00000009 , 0x00000006 
+ 00025000  0x0000678f istore  0x00000009 , 0x00000005 
+ 00025001  0x00006790 branch  0x000062b2 
+ 00025002  0x00006795 force  0x00000003 , 0x0000003f 
+ 00025003  0x00006796 call  0x00006298 
+ 00025004  0x00006797 setarg  0x00000114 
+ 00025005  0x00006798 istore  0x00000002 , 0x00000005 
+ 00025006  0x00006799 branch  0x000062b2 
+ 00025007  0x0000679d force  0x00000001 , 0x0000003f 
+ 00025008  0x0000679e call  0x00006298 
+ 00025009  0x000067a7 branch  0x000062b2 
+ 00025010  0x000067ab force  0x00000002 , 0x0000003f 
+ 00025011  0x000067ac call  0x00006298 
+ 00025012  0x000067ad fetch  0x00000001 , 0x000040d0 
+ 00025013  0x000067ae istore  0x00000001 , 0x00000005 
+ 00025014  0x000067af branch  0x000062b2 
+ 00025015  0x000067b3 force  0x00000002 , 0x0000003f 
+ 00025016  0x000067b4 call  0x00006298 
+ 00025017  0x000067b5 setarg  0x00000005 
+ 00025018  0x000067b6 istore  0x00000001 , 0x00000005 
+ 00025019  0x000067b7 branch  0x000062b2 
+ 00025020  0x000067bb force  0x00000002 , 0x0000003f 
+ 00025021  0x000067bc call  0x00006298 
+ 00025022  0x000067bd setarg  0x00000000 
+ 00025023  0x000067be istore  0x00000001 , 0x00000005 
+ 00025024  0x000067bf branch  0x000062b2 
+ 00025025  0x000067c3 jam  0x0000002e , 0x0000007c 
+ 00025026  0x000067c4 rtn 
+ 00025027  0x000067c6 fetch  0x00000001 , 0x00004092 
+ 00025028  0x000067c7 sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00025029  0x000067c8 call  0x000061c1 , 0x00000005 
+ 00025030  0x000067c9 fetch  0x00000001 , 0x00000030 
+ 00025031  0x000067ca set1  0x00000004 , 0x0000003f 
+ 00025032  0x000067cb store  0x00000001 , 0x00000030 
+ 00025033  0x000067cc copy  0x00000022 , 0x0000003f 
+ 00025034  0x000067cd store  0x00000004 , 0x000004e9 
+ 00025035  0x000067ce fetch  0x00000001 , 0x000004d1 
+ 00025036  0x000067cf bbit1  0x00000003 , 0x000061d4 
+ 00025037  0x000067d0 set1  0x00000003 , 0x0000003f 
+ 00025038  0x000067d1 store  0x00000001 , 0x000004d1 
+ 00025039  0x000067d2 jam  0x00000005 , 0x00000a99 
+ 00025040  0x000067d3 call  0x00007d86 
+ 00025041  0x000067d4 force  0x00000001 , 0x0000003f 
+ 00025042  0x000067d5 call  0x00006298 
+ 00025043  0x000067d6 branch  0x000062b2 
+ 00025044  0x000067d8 jam  0x00000000 , 0x00000048 
+ 00025045  0x000067d9 rtn 
+ 00025046  0x000067dc force  0x00000006 , 0x0000003f 
+ 00025047  0x000067dd call  0x00006298 
+ 00025048  0x000067de fetch  0x00000005 , 0x00004510 
+ 00025049  0x000067df istore  0x00000005 , 0x00000005 
+ 00025050  0x000067e0 branch  0x000062b2 
+ 00025051  0x000067e3 force  0x00000009 , 0x0000003f 
+ 00025052  0x000067e4 call  0x00006298 
+ 00025053  0x000067e5 fetch  0x00000008 , 0x00004098 
+ 00025054  0x000067e6 istore  0x00000008 , 0x00000005 
+ 00025055  0x000067e7 branch  0x000062b2 
+ 00025056  0x000067ea jam  0x00000001 , 0x000009b1 
+ 00025057  0x000067eb fetch  0x00000001 , 0x000045b1 
+ 00025058  0x000067ec rtnne  0x00000001 
+ 00025059  0x000067ed jam  0x00000013 , 0x000009af 
+ 00025060  0x000067ee rtn 
+ 00025061  0x000067f1 call  0x000062ef 
+ 00025062  0x000067f2 jam  0x00000099 , 0x0000007c 
+ 00025063  0x000067f3 jam  0x00000003 , 0x000009af 
+ 00025064  0x000067f4 rtn 
+ 00025065  0x000067f8 call  0x000062ef 
+ 00025066  0x000067f9 jam  0x0000003d , 0x0000007c 
+ 00025067  0x000067fa jam  0x00000007 , 0x000009af 
+ 00025068  0x000067fb rtn 
+ 00025069  0x000067fe arg  0x00000a4e , 0x00000011 
+ 00025070  0x000067ff arg  0x00000a6e , 0x00000012 
+ 00025071  0x00006800 arg  0x00000010 , 0x00000039 
+ 00025072  0x00006801 call  0x00007f88 
+ 00025073  0x00006802 branch  0x000061f7 , 0x00000005 
+ 00025074  0x00006803 jam  0x00000000 , 0x000009af 
+ 00025075  0x00006804 call  0x000076da 
+ 00025076  0x00006805 jam  0x00000024 , 0x0000007e 
+ 00025077  0x00006806 jam  0x00000040 , 0x0000007d 
+ 00025078  0x00006807 branch  0x00005d53 
+ 00025079  0x00006809 jam  0x0000000a , 0x000009af 
+ 00025080  0x0000680a call  0x000076d8 
+ 00025081  0x0000680b jam  0x00000040 , 0x0000007d 
+ 00025082  0x0000680c branch  0x00005e38 
+ 00025083  0x00006811 jam  0x00000040 , 0x0000007c 
+ 00025084  0x00006812 rtn 
+ 00025085  0x00006819 jam  0x0000003d , 0x0000007c 
+ 00025086  0x0000681b rtn 
+ 00025087  0x00006822 jam  0x00000000 , 0x000009b6 
+ 00025088  0x00006823 force  0x00000004 , 0x0000003f 
+ 00025089  0x00006824 call  0x00006298 
+ 00025090  0x00006825 force  0x00000001 , 0x0000003f 
+ 00025091  0x00006826 istore  0x00000001 , 0x00000005 
+ 00025092  0x00006827 force  0x00000001 , 0x0000003f 
+ 00025093  0x00006828 istore  0x00000001 , 0x00000005 
+ 00025094  0x00006829 force  0x00000030 , 0x0000003f 
+ 00025095  0x0000682a istore  0x00000001 , 0x00000005 
+ 00025096  0x0000682b call  0x000062fc 
+ 00025097  0x0000682c branch  0x000062b2 , 0x00000001 
+ 00025098  0x0000682d branch  0x000062b0 
+ 00025099  0x00006831 force  0x00000011 , 0x0000003f 
+ 00025100  0x00006832 call  0x00006298 
+ 00025101  0x00006833 fetch  0x00000001 , 0x000009b6 
+ 00025102  0x00006834 arg  0x0000462a , 0x00000006 
+ 00025103  0x00006835 iadd  0x00000006 , 0x00000006 
+ 00025104  0x00006836 ifetch  0x00000008 , 0x00000006 
+ 00025105  0x00006837 istore  0x00000008 , 0x00000005 
+ 00025106  0x00006838 ifetch  0x00000008 , 0x00000006 
+ 00025107  0x00006839 istore  0x00000008 , 0x00000005 
+ 00025108  0x0000683a fetch  0x00000001 , 0x000009b6 
+ 00025109  0x0000683b increase  0x00000010 , 0x0000003f 
+ 00025110  0x0000683c store  0x00000001 , 0x000009b6 
+ 00025111  0x0000683d call  0x000062fc 
+ 00025112  0x0000683e branch  0x000062b2 , 0x00000001 
+ 00025113  0x0000683f branch  0x000062b0 
+ 00025114  0x00006843 jam  0x00000006 , 0x000009ae 
+ 00025115  0x00006844 jam  0x0000003f , 0x0000007c 
+ 00025116  0x00006845 rtn 
+ 00025117  0x00006849 force  0x00000011 , 0x0000003f 
+ 00025118  0x0000684a call  0x00006298 
+ 00025119  0x0000684b arg  0x00000a4e , 0x00000006 
+ 00025120  0x0000684c ifetch  0x00000008 , 0x00000006 
+ 00025121  0x0000684d istore  0x00000008 , 0x00000005 
+ 00025122  0x0000684e ifetch  0x00000008 , 0x00000006 
+ 00025123  0x0000684f istore  0x00000008 , 0x00000005 
+ 00025124  0x00006850 branch  0x000062b0 
+ 00025125  0x00006853 jam  0x00000040 , 0x0000007c 
+ 00025126  0x00006854 rtn 
+ 00025127  0x00006858 call  0x000062fc 
+ 00025128  0x00006859 call  0x00007612 , 0x00000001 
+ 00025129  0x0000685a force  0x00000011 , 0x0000003f 
+ 00025130  0x0000685b call  0x00006298 
+ 00025131  0x0000685c arg  0x00000a1e , 0x00000006 
+ 00025132  0x0000685d ifetch  0x00000008 , 0x00000006 
+ 00025133  0x0000685e istore  0x00000008 , 0x00000005 
+ 00025134  0x0000685f ifetch  0x00000008 , 0x00000006 
+ 00025135  0x00006860 istore  0x00000008 , 0x00000005 
+ 00025136  0x00006861 call  0x000062fc 
+ 00025137  0x00006862 nbranch  0x000062b0 , 0x00000001 
+ 00025138  0x00006863 branch  0x000062b2 , 0x00000001 
+ 00025139  0x00006867 jam  0x0000000f , 0x000009af 
+ 00025140  0x00006869 call  0x000062ef 
+ 00025141  0x0000686a jam  0x0000000b , 0x0000007c 
+ 00025142  0x0000686b call  0x00006307 
+ 00025143  0x0000686c branch  0x0000764e , 0x00000001 
+ 00025144  0x0000686d branch  0x00007658 
+ 00025145  0x0000686f call  0x000062eb 
+ 00025146  0x00006871 jam  0x00000041 , 0x0000007c 
+ 00025147  0x00006872 rtn 
+ 00025148  0x00006875 force  0x00000011 , 0x0000003f 
+ 00025149  0x00006876 call  0x00006298 
+ 00025150  0x00006877 arg  0x00000a4e , 0x00000006 
+ 00025151  0x00006878 ifetch  0x00000008 , 0x00000006 
+ 00025152  0x00006879 istore  0x00000008 , 0x00000005 
+ 00025153  0x0000687a ifetch  0x00000008 , 0x00000006 
+ 00025154  0x0000687b istore  0x00000008 , 0x00000005 
+ 00025155  0x0000687c call  0x000062fc 
+ 00025156  0x0000687d nbranch  0x000062b0 , 0x00000001 
+ 00025157  0x0000687e branch  0x000062b2 , 0x00000001 
+ 00025158  0x00006881 force  0x00000003 , 0x0000003f 
+ 00025159  0x00006882 call  0x00006298 
+ 00025160  0x00006883 setarg  0x0000fffe 
+ 00025161  0x00006884 istore  0x00000002 , 0x00000005 
+ 00025162  0x00006885 branch  0x000062b0 
+ 00025163  0x00006888 branch  0x000062b2 
+ 00025164  0x0000688a branch  0x000062b2 
+ 00025165  0x0000688c branch  0x000062b2 
+ 00025166  0x0000688e branch  0x000062b2 
+ 00025167  0x00006894 call  0x0000630b 
+ 00025168  0x00006895 arg  0x000040a0 , 0x00000011 
+ 00025169  0x00006896 call  0x00006311 
+ 00025170  0x00006897 force  0x00000011 , 0x0000003f 
+ 00025171  0x00006898 call  0x00006298 
+ 00025172  0x00006899 arg  0x00000582 , 0x00000011 
+ 00025173  0x0000689a arg  0x00000562 , 0x00000012 
+ 00025174  0x0000689b call  0x00007352 
+ 00025175  0x0000689c nbranch  0x000062a7 , 0x00000029 
+ 00025176  0x0000689d branch  0x000062ad 
+ 00025177  0x000068a0 call  0x0000630b 
+ 00025178  0x000068a1 arg  0x00000040 , 0x00000011 
+ 00025179  0x000068a2 call  0x00007255 
+ 00025180  0x000068a4 force  0x00000011 , 0x0000003f 
+ 00025181  0x000068a5 call  0x00006298 
+ 00025182  0x000068a6 arg  0x00000562 , 0x00000006 
+ 00025183  0x000068a7 call  0x00007ebf 
+ 00025184  0x000068a8 fetch  0x00000001 , 0x00000055 
+ 00025185  0x000068a9 beq  0x00000019 , 0x000062b2 
+ 00025186  0x000068aa beq  0x00000018 , 0x000062b2 
+ 00025187  0x000068ab branch  0x000062ad 
+ 00025188  0x000068ae fetch  0x00000001 , 0x000009b5 
+ 00025189  0x000068af branch  0x0000626a , 0x00000034 
+ 00025190  0x000068b0 call  0x000062fc 
+ 00025191  0x000068b1 call  0x000062ef , 0x00000001 
+ 00025192  0x000068b2 ncall  0x000062eb , 0x00000001 
+ 00025193  0x000068b3 branch  0x0000626b 
+ 00025194  0x000068b5 call  0x000062ef 
+ 00025195  0x000068b7 call  0x0000630b 
+ 00025196  0x000068b8 branch  0x0000625c 
+ 00025197  0x000068bb arg  0x000040a0 , 0x00000011 
+ 00025198  0x000068bc call  0x00007288 
+ 00025199  0x000068bd force  0x00000005 , 0x0000003f 
+ 00025200  0x000068be call  0x00006298 
+ 00025201  0x000068bf fetch  0x00000004 , 0x00000592 
+ 00025202  0x000068c0 istore  0x00000004 , 0x00000005 
+ 00025203  0x000068c1 arg  0x000004d5 , 0x00000002 
+ 00025204  0x000068c2 call  0x000062e2 
+ 00025205  0x000068c3 call  0x00007386 
+ 00025206  0x000068c4 call  0x000062fc 
+ 00025207  0x000068c5 branch  0x0000627c , 0x00000001 
+ 00025208  0x000068c6 jam  0x00000001 , 0x000004d8 
+ 00025209  0x000068c7 fetch  0x00000001 , 0x000009b5 
+ 00025210  0x000068c8 rtn  0x00000034 
+ 00025211  0x000068c9 jam  0x0000000b , 0x0000007c 
+ 00025212  0x000068cb fetch  0x00000001 , 0x000041bd 
+ 00025213  0x000068cc rtn  0x00000034 
+ 00025214  0x000068ce call  0x000062fc 
+ 00025215  0x000068cf nbranch  0x00006284 , 0x00000001 
+ 00025216  0x000068d0 fetch  0x00000001 , 0x000004d7 
+ 00025217  0x000068d1 rtn  0x00000034 
+ 00025218  0x000068d2 jam  0x0000000f , 0x0000007c 
+ 00025219  0x000068d3 rtn 
+ 00025220  0x000068d5 rtnmark0  0x00000021 
+ 00025221  0x000068d6 set0  0x00000021 , 0x00000000 
+ 00025222  0x000068d7 jam  0x0000000f , 0x0000007c 
+ 00025223  0x000068d8 rtn 
+ 00025224  0x000068dd call  0x0000630b 
+ 00025225  0x000068de call  0x0000728b 
+ 00025226  0x000068df force  0x00000011 , 0x0000003f 
+ 00025227  0x000068e0 call  0x00006298 
+ 00025228  0x000068e1 arg  0x00000562 , 0x00000006 
+ 00025229  0x000068e2 call  0x00007ebf 
+ 00025230  0x000068e3 branch  0x000062ad 
+ 00025231  0x000068e6 force  0x00000001 , 0x0000003f 
+ 00025232  0x000068e7 call  0x00006298 
+ 00025233  0x000068e8 branch  0x000062ad 
+ 00025234  0x000068eb force  0x00000002 , 0x0000003f 
+ 00025235  0x000068ec call  0x00006298 
+ 00025236  0x000068ed force  0x00000010 , 0x0000003f 
+ 00025237  0x000068ee istore  0x00000001 , 0x00000005 
+ 00025238  0x000068ef store  0x00000001 , 0x00000054 
+ 00025239  0x000068f0 branch  0x000062ad 
+ 00025240  0x000068f4 lshift3  0x0000003f , 0x0000003f 
+ 00025241  0x000068f5 or_into  0x00000007 , 0x0000003f 
+ 00025242  0x000068f6 store  0x00000001 , 0x000004b6 
+ 00025243  0x000068f7 arg  0x00000011 , 0x00000039 
+ 00025244  0x000068f8 arg  0x000004b8 , 0x00000005 
+ 00025245  0x000068f9 call  0x00007ed4 
+ 00025246  0x000068fa arg  0x000004b8 , 0x00000005 
+ 00025247  0x000068fb rtn 
+ 00025248  0x000068fe and  0x0000003f , 0x0000007f , 0x00000011 
+ 00025249  0x000068ff jam  0x0000007f , 0x00000048 
+ 00025250  0x00006900 deposit  0x00000007 
+ 00025251  0x00006901 call  0x00006298 
+ 00025252  0x00006902 deposit  0x00000011 
+ 00025253  0x00006903 istore  0x00000001 , 0x00000005 
+ 00025254  0x00006904 rtn 
+ 00025255  0x00006907 fetch  0x00000001 , 0x00000048 
+ 00025256  0x00006908 lshift  0x0000003f , 0x0000003f 
+ 00025257  0x00006909 fetcht  0x00000001 , 0x0000004c 
+ 00025258  0x0000690a isolate1  0x00000001 , 0x00000002 
+ 00025259  0x0000690b setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00025260  0x0000690c branch  0x000062b7 
+ 00025261  0x00006910 fetcht  0x00000001 , 0x0000004c 
+ 00025262  0x00006911 and_into  0x00000001 , 0x00000002 
+ 00025263  0x00006912 branch  0x000062b3 
+ 00025264  0x00006915 force  0x00000000 , 0x00000002 
+ 00025265  0x00006916 branch  0x000062b3 
+ 00025266  0x00006919 force  0x00000001 , 0x00000002 
+ 00025267  0x0000691b fetch  0x00000001 , 0x00000048 
+ 00025268  0x0000691c lshift  0x0000003f , 0x0000003f 
+ 00025269  0x0000691d setflag  0x00000029 , 0x00000000 , 0x0000003f 
+ 00025270  0x0000691e ixor  0x00000002 , 0x0000003f 
+ 00025271  0x00006920 store  0x00000001 , 0x000004b7 
+ 00025272  0x00006921 jam  0x00000000 , 0x00000048 
+ 00025273  0x00006922 call  0x000062c7 
+ 00025274  0x00006923 enable  0x00000028 
+ 00025275  0x00006924 rtn 
+ 00025276  0x00006928 fetch  0x00000001 , 0x0000007c 
+ 00025277  0x00006929 rtn  0x00000034 
+ 00025278  0x0000692a call  0x000062c1 
+ 00025279  0x0000692b fetch  0x00000001 , 0x0000007c 
+ 00025280  0x0000692c rtn 
+ 00025281  0x0000692f bpatchx  0x00000086 , 0x00004030 
+ 00025282  0x00006930 fetch  0x00000001 , 0x00000048 
+ 00025283  0x00006931 branch  0x000062c7 , 0x00000034 
+ 00025284  0x00006932 fetch  0x00000001 , 0x00000078 
+ 00025285  0x00006933 nrtn  0x00000034 
+ 00025286  0x00006934 branch  0x000062d1 
+ 00025287  0x00006936 fetch  0x00000001 , 0x00000078 
+ 00025288  0x00006937 branch  0x000062d7 , 0x00000034 
+ 00025289  0x00006938 fetch  0x00000003 , 0x00000078 
+ 00025290  0x00006939 store  0x00000003 , 0x00000048 
+ 00025291  0x0000693a fetcht  0x00000001 , 0x0000007b 
+ 00025292  0x0000693b fetch  0x00000001 , 0x0000004c 
+ 00025293  0x0000693c set0  0x00000001 , 0x0000003f 
+ 00025294  0x0000693d ior  0x00000002 , 0x0000003f 
+ 00025295  0x0000693e store  0x00000001 , 0x0000004c 
+ 00025296  0x0000693f jam  0x00000000 , 0x00000078 
+ 00025297  0x00006941 fetch  0x00000001 , 0x0000007c 
+ 00025298  0x00006942 rtn  0x00000034 
+ 00025299  0x00006943 fetch  0x00000004 , 0x0000007c 
+ 00025300  0x00006944 store  0x00000004 , 0x00000078 
+ 00025301  0x00006945 jam  0x00000000 , 0x0000007c 
+ 00025302  0x00006946 rtn 
+ 00025303  0x00006948 fetch  0x00000001 , 0x0000007c 
+ 00025304  0x00006949 rtn  0x00000034 
+ 00025305  0x0000694a fetch  0x00000003 , 0x0000007c 
+ 00025306  0x0000694b store  0x00000003 , 0x00000048 
+ 00025307  0x0000694c fetcht  0x00000001 , 0x0000007f 
+ 00025308  0x0000694d fetch  0x00000001 , 0x0000004c 
+ 00025309  0x0000694e set0  0x00000001 , 0x0000003f 
+ 00025310  0x0000694f ior  0x00000002 , 0x0000003f 
+ 00025311  0x00006950 store  0x00000001 , 0x0000004c 
+ 00025312  0x00006951 jam  0x00000000 , 0x0000007c 
+ 00025313  0x00006952 rtn 
+ 00025314  0x00006956 bpatchx  0x00000087 , 0x00004030 
+ 00025315  0x00006957 fetch  0x00000001 , 0x0000004c 
+ 00025316  0x00006958 copy  0x0000003f , 0x00000013 
+ 00025317  0x00006959 ifetch  0x00000001 , 0x00000002 
+ 00025318  0x0000695a call  0x00005e52 
+ 00025319  0x0000695b call  0x000062a7 
+ 00025320  0x0000695c copy  0x00000013 , 0x0000003f 
+ 00025321  0x0000695d store  0x00000001 , 0x0000004c 
+ 00025322  0x0000695e rtn 
+ 00025323  0x00006961 fetcht  0x00000001 , 0x0000004c 
+ 00025324  0x00006962 set0  0x00000000 , 0x00000002 
+ 00025325  0x00006963 storet  0x00000001 , 0x0000004c 
+ 00025326  0x00006964 rtn 
+ 00025327  0x00006967 fetcht  0x00000001 , 0x0000004c 
+ 00025328  0x00006968 set1  0x00000000 , 0x00000002 
+ 00025329  0x00006969 storet  0x00000001 , 0x0000004c 
+ 00025330  0x0000696a rtn 
+ 00025331  0x0000696e nsetflag  0x00000029 , 0x00000001 , 0x0000003f 
+ 00025332  0x0000696f fetcht  0x00000001 , 0x0000004c 
+ 00025333  0x00006970 ixor  0x00000002 , 0x0000003f 
+ 00025334  0x00006971 isolate1  0x00000001 , 0x0000003f 
+ 00025335  0x00006972 rtn 
+ 00025336  0x00006976 fetch  0x00000001 , 0x0000004c 
+ 00025337  0x00006977 setflag  0x00000029 , 0x00000001 , 0x0000003f 
+ 00025338  0x00006978 store  0x00000001 , 0x0000004c 
+ 00025339  0x00006979 rtn 
+ 00025340  0x0000697d fetch  0x00000001 , 0x000009b4 
+ 00025341  0x0000697e compare  0x00000001 , 0x0000003f , 0x0000007f 
+ 00025342  0x0000697f rtn 
+ 00025343  0x00006981 fetch  0x00000001 , 0x000009b4 
+ 00025344  0x00006982 set1  0x00000007 , 0x0000003f 
+ 00025345  0x00006983 store  0x00000001 , 0x000009b4 
+ 00025346  0x00006984 rtn 
+ 00025347  0x00006986 fetch  0x00000001 , 0x000009b4 
+ 00025348  0x00006987 set0  0x00000007 , 0x0000003f 
+ 00025349  0x00006988 store  0x00000001 , 0x000009b4 
+ 00025350  0x00006989 rtn 
+ 00025351  0x0000698b fetch  0x00000001 , 0x000009b4 
+ 00025352  0x0000698c isolate1  0x00000007 , 0x0000003f 
+ 00025353  0x0000698d store  0x00000001 , 0x000009b4 
+ 00025354  0x0000698e rtn 
+ 00025355  0x00006992 arg  0x00000562 , 0x00000005 
+ 00025356  0x00006994 force  0x00000010 , 0x00000039 
+ 00025357  0x00006997 random  0x0000003f 
+ 00025358  0x00006998 istore  0x00000001 , 0x00000005 
+ 00025359  0x00006999 loop  0x0000630d 
+ 00025360  0x0000699a rtn 
+ 00025361  0x0000699d call  0x00007259 
+ 00025362  0x0000699e arg  0x000041be , 0x00000011 
+ 00025363  0x0000699f arg  0x00000592 , 0x00000012 
+ 00025364  0x000069a0 ifetch  0x00000008 , 0x00000011 
+ 00025365  0x000069a1 fetcht  0x00000001 , 0x00000030 
+ 00025366  0x000069a2 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
+ 00025367  0x000069a3 storet  0x00000001 , 0x00000030 
+ 00025368  0x000069a4 copy  0x00000011 , 0x00000005 
+ 00025369  0x000069a5 call  0x00007352 
+ 00025370  0x000069a6 branch  0x000021c4 
+ 00025371  0x000069ae bpatchx  0x00000088 , 0x00004031 
+ 00025372  0x000069b0 call  0x000062bc 
+ 00025373  0x000069b1 nrtn  0x00000034 
+ 00025374  0x000069b3 fetch  0x00000001 , 0x00000055 
+ 00025375  0x000069b4 rtn  0x00000034 
+ 00025376  0x000069b8 beq  0x00000004 , 0x0000636f 
+ 00025377  0x000069b9 beq  0x00000005 , 0x00006374 
+ 00025378  0x000069ba beq  0x00000002 , 0x00006366 
+ 00025379  0x000069bb beq  0x00000003 , 0x0000637c 
+ 00025380  0x000069bc beq  0x0000000e , 0x00006369 
+ 00025381  0x000069bd beq  0x00000006 , 0x00006398 
+ 00025382  0x000069be beq  0x00000007 , 0x000063b0 
+ 00025383  0x000069bf beq  0x00000009 , 0x000063b1 
+ 00025384  0x000069c0 beq  0x0000000a , 0x000063ba 
+ 00025385  0x000069c1 beq  0x0000000b , 0x000063be 
+ 00025386  0x000069c2 beq  0x0000000c , 0x00006386 
+ 00025387  0x000069c3 beq  0x0000000d , 0x00006389 
+ 00025388  0x000069c4 beq  0x0000000f , 0x0000638f 
+ 00025389  0x000069c5 beq  0x00000012 , 0x00006359 
+ 00025390  0x000069c6 beq  0x00000013 , 0x0000637c 
+ 00025391  0x000069c7 beq  0x00000010 , 0x0000635c 
+ 00025392  0x000069c8 beq  0x00000014 , 0x00006356 
+ 00025393  0x000069c9 beq  0x00000015 , 0x0000637c 
+ 00025394  0x000069ca beq  0x00000016 , 0x00006350 
+ 00025395  0x000069cb beq  0x00000018 , 0x00006355 
+ 00025396  0x000069cc beq  0x00000017 , 0x00006349 
+ 00025397  0x000069cd beq  0x00000019 , 0x0000634f 
+ 00025398  0x000069ce beq  0x0000001a , 0x0000633a 
+ 00025399  0x000069cf beq  0x0000001b , 0x00006344 
+ 00025400  0x000069d0 jam  0x00000000 , 0x00000055 
+ 00025401  0x000069d2 rtn 
+ 00025402  0x000069d4 fetch  0x00000001 , 0x000004d1 
+ 00025403  0x000069d5 rtnbit0  0x00000002 
+ 00025404  0x000069d6 rtnbit0  0x00000003 
+ 00025405  0x000069d7 jam  0x00000000 , 0x00000055 
+ 00025406  0x000069d8 call  0x00006340 
+ 00025407  0x000069d9 branch  0x00006cef 
+ 00025408  0x000069dc fetch  0x00000001 , 0x0000016d 
+ 00025409  0x000069dd rtnbit0  0x00000001 
+ 00025410  0x000069de jam  0x0000000a , 0x00000055 
+ 00025411  0x000069df rtn 
+ 00025412  0x000069e2 arg  0x00000007 , 0x00000007 
+ 00025413  0x000069e3 call  0x00007f16 
+ 00025414  0x000069e4 nrtn  0x00000034 
+ 00025415  0x000069e5 jam  0x0000001a , 0x00000055 
+ 00025416  0x000069e6 rtn 
+ 00025417  0x000069e9 fetch  0x00000001 , 0x0000016d 
+ 00025418  0x000069ea set0  0x00000000 , 0x0000003f 
+ 00025419  0x000069eb store  0x00000001 , 0x0000016d 
+ 00025420  0x000069ec jam  0x00000019 , 0x00000055 
+ 00025421  0x000069ed jam  0x0000000b , 0x0000007c 
+ 00025422  0x000069ee rtn 
+ 00025423  0x000069f0 rtn 
+ 00025424  0x000069f2 fetch  0x00000001 , 0x000004d4 
+ 00025425  0x000069f3 rtnne  0x00000002 
+ 00025426  0x000069f4 call  0x000063c0 
+ 00025427  0x000069f5 jam  0x00000018 , 0x00000055 
+ 00025428  0x000069f6 rtn 
+ 00025429  0x000069f9 rtn 
+ 00025430  0x000069fb jam  0x00000015 , 0x00000055 
+ 00025431  0x000069fc jam  0x00000083 , 0x0000007c 
+ 00025432  0x000069fd rtn 
+ 00025433  0x000069ff jam  0x00000013 , 0x00000055 
+ 00025434  0x00006a00 jam  0x00000025 , 0x0000007c 
+ 00025435  0x00006a01 rtn 
+ 00025436  0x00006a04 fetch  0x00000001 , 0x0000455b 
+ 00025437  0x00006a05 rtneq  0x00000000 
+ 00025438  0x00006a06 beq  0x00000001 , 0x00006364 
+ 00025439  0x00006a07 arg  0x00000006 , 0x00000007 
+ 00025440  0x00006a08 call  0x00007f16 
+ 00025441  0x00006a09 nrtn  0x00000034 
+ 00025442  0x00006a0a jam  0x00000000 , 0x0000455b 
+ 00025443  0x00006a0b branch  0x0000637d 
+ 00025444  0x00006a0d rtn  0x00000029 
+ 00025445  0x00006a0e branch  0x00006398 
+ 00025446  0x00006a11 jam  0x00000003 , 0x00000055 
+ 00025447  0x00006a12 jam  0x00000027 , 0x0000007c 
+ 00025448  0x00006a13 rtn 
+ 00025449  0x00006a15 jam  0x00000013 , 0x0000007c 
+ 00025450  0x00006a16 set1  0x00000003 , 0x00000000 
+ 00025451  0x00006a17 jam  0x00000005 , 0x00000055 
+ 00025452  0x00006a18 setarg  0x000001ff 
+ 00025453  0x00006a19 store  0x00000002 , 0x000004d2 
+ 00025454  0x00006a1a rtn 
+ 00025455  0x00006a1c jam  0x00000005 , 0x00000055 
+ 00025456  0x00006a1d jam  0x000000ff , 0x000004d2 
+ 00025457  0x00006a1e set0  0x00000022 , 0x00000000 
+ 00025458  0x00006a1f jam  0x00000033 , 0x0000007c 
+ 00025459  0x00006a20 branch  0x00005d04 
+ 00025460  0x00006a22 rtnmark1  0x00000022 
+ 00025461  0x00006a23 fetch  0x00000002 , 0x000004d2 
+ 00025462  0x00006a24 sub  0x0000003f , 0x00000001 , 0x0000003f 
+ 00025463  0x00006a25 branch  0x0000637a , 0x00000005 
+ 00025464  0x00006a26 store  0x00000002 , 0x000004d2 
+ 00025465  0x00006a27 rtn 
+ 00025466  0x00006a29 jam  0x0000000e , 0x00000055 
+ 00025467  0x00006a2a rtn 
+ 00025468  0x00006a2d rtn 
+ 00025469  0x00006a30 fetch  0x00000001 , 0x000004d1 
+ 00025470  0x00006a31 rtnbit0  0x00000003 
+ 00025471  0x00006a32 rtnbit0  0x00000002 
+ 00025472  0x00006a33 fetch  0x00000001 , 0x0000016d 
+ 00025473  0x00006a34 set0  0x00000002 , 0x0000003f 
+ 00025474  0x00006a35 store  0x00000001 , 0x0000016d 
+ 00025475  0x00006a36 jam  0x00000013 , 0x0000007c 
+ 00025476  0x00006a37 jam  0x00000010 , 0x00000055 
+ 00025477  0x00006a38 rtn 
+ 00025478  0x00006a3b jam  0x0000000d , 0x00000055 
+ 00025479  0x00006a3c jam  0x00000031 , 0x0000007c 
+ 00025480  0x00006a3d rtn 
+ 00025481  0x00006a40 fetch  0x00000001 , 0x000004d1 
+ 00025482  0x00006a41 rtnbit0  0x00000002 
+ 00025483  0x00006a42 jam  0x00000000 , 0x00000055 
+ 00025484  0x00006a44 rtn 
+ 00025485  0x00006a46 jam  0x00000006 , 0x00000055 
+ 00025486  0x00006a47 rtn 
+ 00025487  0x00006a4a fetch  0x00000001 , 0x000004d2 
+ 00025488  0x00006a4b increase  0xffffffff , 0x0000003f 
+ 00025489  0x00006a4c branch  0x00006394 , 0x00000034 
+ 00025490  0x00006a4d store  0x00000001 , 0x000004d2 
+ 00025491  0x00006a4e rtn 
+ 00025492  0x00006a50 jam  0x00000007 , 0x0000007c 
+ 00025493  0x00006a51 jam  0x00000016 , 0x000004ca 
+ 00025494  0x00006a52 jam  0x00000000 , 0x00000055 
+ 00025495  0x00006a53 rtn 
+ 00025496  0x00006a56 fetch  0x00000001 , 0x0000016d 
+ 00025497  0x00006a57 bbit1  0x00000002 , 0x0000637d 
+ 00025498  0x00006a58 bbit1  0x00000000 , 0x0000639d 
+ 00025499  0x00006a5a jam  0x0000001a , 0x00000055 
+ 00025500  0x00006a5b rtn 
+ 00025501  0x00006a5d fetch  0x00000001 , 0x000041bd 
+ 00025502  0x00006a5e branch  0x000063a9 , 0x00000034 
+ 00025503  0x00006a5f fetch  0x00000001 , 0x000004d1 
+ 00025504  0x00006a60 rtnbit0  0x00000003 
+ 00025505  0x00006a61 rtnbit0  0x00000002 
+ 00025506  0x00006a62 fetch  0x00000004 , 0x000004e9 
+ 00025507  0x00006a63 arg  0x00000064 , 0x00000002 
+ 00025508  0x00006a64 iadd  0x00000002 , 0x00000002 
+ 00025509  0x00006a65 copy  0x00000022 , 0x0000003f 
+ 00025510  0x00006a66 isub  0x00000002 , 0x0000003e 
+ 00025511  0x00006a67 nrtn  0x00000002 
+ 00025512  0x00006a68 branch  0x00006349 
+ 00025513  0x00006a6d jam  0x00000016 , 0x00000055 
+ 00025514  0x00006a6e jam  0x00000004 , 0x00004689 
+ 00025515  0x00006a6f setarg  0x00003030 
+ 00025516  0x00006a70 store  0x00000002 , 0x0000468a 
+ 00025517  0x00006a71 istore  0x00000002 , 0x00000005 
+ 00025518  0x00006a72 jam  0x00000002 , 0x000004d4 
+ 00025519  0x00006a73 branch  0x00006350 
+ 00025520  0x00006a76 rtn 
+ 00025521  0x00006a78 fetch  0x00000001 , 0x0000016d 
+ 00025522  0x00006a79 bbit1  0x00000001 , 0x000063b5 
+ 00025523  0x00006a7a jam  0x0000001a , 0x00000055 
+ 00025524  0x00006a7b rtn 
+ 00025525  0x00006a7e fetch  0x00000001 , 0x0000016d 
+ 00025526  0x00006a7f set0  0x00000001 , 0x0000003f 
+ 00025527  0x00006a80 store  0x00000001 , 0x0000016d 
+ 00025528  0x00006a81 jam  0x0000000f , 0x0000007c 
+ 00025529  0x00006a82 rtn 
+ 00025530  0x00006a85 fetch  0x00000001 , 0x000004d8 
+ 00025531  0x00006a86 rtn  0x00000034 
+ 00025532  0x00006a87 jam  0x00000000 , 0x00000055 
+ 00025533  0x00006a88 branch  0x000063b5 
+ 00025534  0x00006a8b jam  0x0000000c , 0x00000055 
+ 00025535  0x00006a8c rtn 
+ 00025536  0x00006a8f fetch  0x00000001 , 0x0000004b 
+ 00025537  0x00006a90 bbit1  0x00000002 , 0x000063c5 
+ 00025538  0x00006a91 call  0x000062ef 
+ 00025539  0x00006a92 jam  0x00000008 , 0x0000007c 
+ 00025540  0x00006a93 branch  0x00004d04 
+ 00025541  0x00006a95 fetch  0x00000001 , 0x0000004b 
+ 00025542  0x00006a96 set0  0x00000002 , 0x0000003f 
+ 00025543  0x00006a97 store  0x00000001 , 0x0000004b 
+ 00025544  0x00006a98 call  0x00006001 
+ 00025545  0x00006a99 call  0x000062f8 
+ 00025546  0x00006a9a branch  0x00004d04 
+ 00025547  0x00006a9d setarg  0x00000004 
+ 00025548  0x00006a9e store  0x00000001 , 0x00004689 
+ 00025549  0x00006a9f setarg  0x00003030 
+ 00025550  0x00006aa0 istore  0x00000002 , 0x00000005 
+ 00025551  0x00006aa1 istore  0x00000002 , 0x00000005 
+ 00025552  0x00006aa2 rtn 
+ 00025553  0x00006aa9 bpatchx  0x0000008c , 0x00004031 
+ 00025554  0x00006aaa hfetch  0x00000001 , 0x00008073 
+ 00025555  0x00006aab arg  0x00000006 , 0x00000002 
+ 00025556  0x00006aac ior  0x00000002 , 0x0000003f 
+ 00025557  0x00006aad hstore  0x00000001 , 0x00008073 
+ 00025558  0x00006aae hfetch  0x00000001 , 0x00008077 
+ 00025559  0x00006aaf ior  0x00000002 , 0x0000003f 
+ 00025560  0x00006ab0 hstore  0x00000001 , 0x00008077 
+ 00025561  0x00006ab1 call  0x000063ee 
+ 00025562  0x00006ab2 hfetch  0x00000001 , 0x00008077 
+ 00025563  0x00006ab3 set0  0x00000001 , 0x0000003f 
+ 00025564  0x00006ab4 set0  0x00000002 , 0x0000003f 
+ 00025565  0x00006ab5 hstore  0x00000001 , 0x00008077 
+ 00025566  0x00006ab6 nop  0x0000001e 
+ 00025567  0x00006ab7 branch  0x000063f2 
+ 00025568  0x00006aba hfetch  0x00000001 , 0x00008073 
+ 00025569  0x00006abb arg  0x000000c0 , 0x00000002 
+ 00025570  0x00006abc ior  0x00000002 , 0x0000003f 
+ 00025571  0x00006abd hstore  0x00000001 , 0x00008073 
+ 00025572  0x00006abe hfetch  0x00000001 , 0x00008077 
+ 00025573  0x00006abf ior  0x00000002 , 0x0000003f 
+ 00025574  0x00006ac0 hstore  0x00000001 , 0x00008077 
+ 00025575  0x00006ac1 call  0x000063ee 
+ 00025576  0x00006ac2 hfetch  0x00000001 , 0x00008077 
+ 00025577  0x00006ac3 set0  0x00000006 , 0x0000003f 
+ 00025578  0x00006ac4 set0  0x00000007 , 0x0000003f 
+ 00025579  0x00006ac5 hstore  0x00000001 , 0x00008077 
+ 00025580  0x00006ac6 nop  0x0000001e 
+ 00025581  0x00006ac7 branch  0x000063f6 
+ 00025582  0x00006aca hfetch  0x00000001 , 0x00008081 
+ 00025583  0x00006acb and  0x0000003f , 0x000000fc , 0x0000003f 
+ 00025584  0x00006acc hstore  0x00000001 , 0x00008081 
+ 00025585  0x00006acd rtn 
+ 00025586  0x00006acf hfetch  0x00000001 , 0x00008081 
+ 00025587  0x00006ad0 or  0x0000003f , 0x00000001 , 0x0000003f 
+ 00025588  0x00006ad1 hstore  0x00000001 , 0x00008081 
+ 00025589  0x00006ad2 rtn 
+ 00025590  0x00006ad4 hfetch  0x00000001 , 0x00008081 
+ 00025591  0x00006ad5 or  0x0000003f , 0x00000003 , 0x0000003f 
+ 00025592  0x00006ad6 set0  0x00000004 , 0x0000003f 
+ 00025593  0x00006ad7 hstore  0x00000001 , 0x00008081 
+ 00025594  0x00006ad8 rtn 
+ 00025595  0x00006add copy  0x0000003f , 0x00000012 
+ 00025596  0x00006ade call  0x0000640f 
+ 00025597  0x00006adf nop  0x00000064 
+ 00025598  0x00006ae0 copy  0x00000012 , 0x0000003f 
+ 00025599  0x00006ae1 call  0x00006414 
+ 00025600  0x00006ae2 copy  0x0000003f , 0x00000012 
+ 00025601  0x00006ae3 call  0x00006411 
+ 00025602  0x00006ae4 nop  0x00000064 
+ 00025603  0x00006ae5 copy  0x00000012 , 0x0000003f 
+ 00025604  0x00006ae6 rtn 
+ 00025605  0x00006ae9 copy  0x0000003f , 0x00000012 
+ 00025606  0x00006aea call  0x0000640f 
+ 00025607  0x00006aeb nop  0x00000064 
+ 00025608  0x00006aec copy  0x00000012 , 0x0000003f 
+ 00025609  0x00006aed call  0x00006413 
+ 00025610  0x00006aee call  0x00006411 
+ 00025611  0x00006aef nop  0x00000064 
+ 00025612  0x00006af0 rtn 
+ 00025613  0x00006af4 fetcht  0x00000001 , 0x00004214 
+ 00025614  0x00006af5 branch  0x0000680e 
+ 00025615  0x00006af9 fetcht  0x00000001 , 0x00004214 
+ 00025616  0x00006afa branch  0x00006829 
+ 00025617  0x00006afe fetcht  0x00000001 , 0x00004214 
+ 00025618  0x00006aff branch  0x00006825 
+ 00025619  0x00006b03 branch  0x000064ec 
+ 00025620  0x00006b06 branch  0x000064f3 
+ 00025621  0x00006b0e nbranch  0x00006419 , 0x00000028 
+ 00025622  0x00006b0f hfetch  0x00000001 , 0x00008085 
+ 00025623  0x00006b10 or_into  0x00000002 , 0x0000003f 
+ 00025624  0x00006b11 hstore  0x00000001 , 0x00008085 
+ 00025625  0x00006b13 copy  0x00000002 , 0x0000003e 
+ 00025626  0x00006b14 branch  0x0000641c , 0x00000005 
+ 00025627  0x00006b15 copy  0x00000013 , 0x0000003d 
+ 00025628  0x00006b17 isolate0  0x00000000 , 0x0000003e 
+ 00025629  0x00006b18 branch  0x000064b9 
+ 00025630  0x00006b1c force  0x00000004 , 0x00000002 
+ 00025631  0x00006b1e arg  0x000001fe , 0x00000011 
+ 00025632  0x00006b1f hfetch  0x00000001 , 0x00008085 
+ 00025633  0x00006b20 and_into  0x000000fd , 0x0000003f 
+ 00025634  0x00006b21 hstore  0x00000001 , 0x00008085 
+ 00025635  0x00006b22 call  0x00006419 
+ 00025636  0x00006b23 arg  0x000055aa , 0x00000011 
+ 00025637  0x00006b24 fetch  0x00000002 , 0x000001fe 
+ 00025638  0x00006b25 ifetcht  0x00000002 , 0x00000006 
+ 00025639  0x00006b26 isub  0x00000011 , 0x0000003e 
+ 00025640  0x00006b27 rtn 
+ 00025641  0x00006b2a arg  0x00000002 , 0x00000002 
+ 00025642  0x00006b2b arg  0x00000204 , 0x00000011 
+ 00025643  0x00006b2c call  0x00006419 
+ 00025644  0x00006b2d fetch  0x00000002 , 0x00000204 
+ 00025645  0x00006b2e store  0x00000002 , 0x000001f7 
+ 00025646  0x00006b2f call  0x00006430 , 0x00000028 
+ 00025647  0x00006b30 rtn 
+ 00025648  0x00006b33 arg  0x00000010 , 0x00000002 
+ 00025649  0x00006b34 arg  0x00000206 , 0x00000011 
+ 00025650  0x00006b35 hfetch  0x00000001 , 0x00008085 
+ 00025651  0x00006b36 and_into  0x000000fd , 0x0000003f 
+ 00025652  0x00006b37 hstore  0x00000001 , 0x00008085 
+ 00025653  0x00006b38 call  0x00006419 
+ 00025654  0x00006b39 arg  0x00000206 , 0x00000006 
+ 00025655  0x00006b3a arg  0x00000010 , 0x00000039 
+ 00025656  0x00006b3b call  0x00007478 
+ 00025657  0x00006b3c call  0x00007428 
+ 00025658  0x00006b3d call  0x00007491 
+ 00025659  0x00006b3e branch  0x00007422 
+ 00025660  0x00006b41 disable  0x0000002d 
+ 00025661  0x00006b42 call  0x0000641e 
+ 00025662  0x00006b43 nrtn  0x00000005 
+ 00025663  0x00006b44 enable  0x0000002d 
+ 00025664  0x00006b45 jam  0x00000080 , 0x00008023 
+ 00025665  0x00006b46 jam  0x00000000 , 0x00008022 
+ 00025666  0x00006b47 jam  0x00000000 , 0x00008024 
+ 00025667  0x00006b48 arg  0x00008025 , 0x00000011 
+ 00025668  0x00006b49 call  0x00006415 
+ 00025669  0x00006b4a jam  0x00000000 , 0x00008023 
+ 00025670  0x00006b4c arg  0x00000006 , 0x00000002 
+ 00025671  0x00006b4d call  0x0000641f 
+ 00025672  0x00006b4e nrtn  0x00000005 
+ 00025673  0x00006b4f ifetch  0x00000002 , 0x00000006 
+ 00025674  0x00006b50 iforce  0x00000011 
+ 00025675  0x00006b51 call  0x00006419 
+ 00025676  0x00006b52 branch  0x00006446 
+ 00025677  0x00006b57 call  0x00007f99 
+ 00025678  0x00006b58 setarg  0x00001000 
+ 00025679  0x00006b59 store  0x00000002 , 0x000001f7 
+ 00025680  0x00006b5a arg  0x000065e5 , 0x00000013 
+ 00025681  0x00006b5b arg  0x00000002 , 0x00000039 
+ 00025682  0x00006b5d call  0x0000641e 
+ 00025683  0x00006b5e nrtn  0x00000005 
+ 00025684  0x00006b5f fetch  0x00000002 , 0x000001f7 
+ 00025685  0x00006b60 byteswap  0x0000003f , 0x0000003f 
+ 00025686  0x00006b61 iadd  0x00000002 , 0x0000003f 
+ 00025687  0x00006b62 byteswap  0x0000003f , 0x0000003f 
+ 00025688  0x00006b63 store  0x00000002 , 0x000001f7 
+ 00025689  0x00006b64 loop  0x00006452 
+ 00025690  0x00006b65 branch  0x00006446 
+ 00025691  0x00006b68 call  0x00007f99 
+ 00025692  0x00006b69 disable  0x00000028 
+ 00025693  0x00006b6a call  0x0000666a 
+ 00025694  0x00006b6b setarg  0x00000000 
+ 00025695  0x00006b6c arg  0x000001f3 , 0x00000011 
+ 00025696  0x00006b6d arg  0x00000002 , 0x00000002 
+ 00025697  0x00006b6e call  0x000066b3 
+ 00025698  0x00006b6f fetch  0x00000002 , 0x000001f3 
+ 00025699  0x00006b70 bbit0  0x00000007 , 0x0000646e 
+ 00025700  0x00006b71 jam  0x00000025 , 0x00008050 
+ 00025701  0x00006b72 setarg  0x000007f0 
+ 00025702  0x00006b73 arg  0x00000206 , 0x00000011 
+ 00025703  0x00006b74 arg  0x00000010 , 0x00000002 
+ 00025704  0x00006b75 call  0x000066b3 
+ 00025705  0x00006b76 jam  0x00000008 , 0x00008006 
+ 00025706  0x00006b77 set1  0x0000002b , 0x00000000 
+ 00025707  0x00006b78 arg  0x00000206 , 0x00000006 
+ 00025708  0x00006b79 call  0x00007484 
+ 00025709  0x00006b7a enable  0x00000028 
+ 00025710  0x00006b7c jam  0x00000000 , 0x000041da 
+ 00025711  0x00006b7e call  0x000064b0 
+ 00025712  0x00006b7f fetch  0x00000002 , 0x000001f3 
+ 00025713  0x00006b80 byteswap  0x0000003f , 0x0000003f 
+ 00025714  0x00006b81 arg  0x000007ff , 0x00000002 
+ 00025715  0x00006b82 iand  0x00000002 , 0x0000003f 
+ 00025716  0x00006b83 branch  0x0000647b , 0x00000005 
+ 00025717  0x00006b84 call  0x0000666f 
+ 00025718  0x00006b85 arg  0x000066b8 , 0x00000013 
+ 00025719  0x00006b86 call  0x00006430 , 0x00000028 
+ 00025720  0x00006b87 call  0x0000643c 
+ 00025721  0x00006b88 fetch  0x00000001 , 0x000001f2 
+ 00025722  0x00006b89 bbit0  0x00000000 , 0x0000646f 
+ 00025723  0x00006b8c call  0x0000666d 
+ 00025724  0x00006b8d jam  0x00000000 , 0x000041da 
+ 00025725  0x00006b8f call  0x000064b0 
+ 00025726  0x00006b90 call  0x000065c2 
+ 00025727  0x00006b91 fetch  0x00000001 , 0x000001f3 
+ 00025728  0x00006b92 bbit1  0x00000006 , 0x0000648e 
+ 00025729  0x00006b93 call  0x000064aa 
+ 00025730  0x00006b94 nbranch  0x00006486 , 0x0000002d 
+ 00025731  0x00006b95 fetch  0x00000001 , 0x000001f2 
+ 00025732  0x00006b96 bbit0  0x00000000 , 0x0000647d 
+ 00025733  0x00006b97 branch  0x0000649b 
+ 00025734  0x00006b99 call  0x000065bf 
+ 00025735  0x00006b9a fetch  0x00000001 , 0x000001f3 
+ 00025736  0x00006b9b bbit1  0x00000006 , 0x0000648e 
+ 00025737  0x00006b9c call  0x000064aa 
+ 00025738  0x00006b9d nbranch  0x0000648e , 0x0000002d 
+ 00025739  0x00006b9e fetch  0x00000001 , 0x000001f2 
+ 00025740  0x00006b9f bbit0  0x00000000 , 0x0000647d 
+ 00025741  0x00006ba0 branch  0x0000649b 
+ 00025742  0x00006ba3 jam  0x00000000 , 0x000041da 
+ 00025743  0x00006ba5 call  0x000064b0 
+ 00025744  0x00006ba6 fetch  0x00000001 , 0x000001f3 
+ 00025745  0x00006ba7 bbit1  0x00000005 , 0x0000649b 
+ 00025746  0x00006ba8 setarg  0x00000000 
+ 00025747  0x00006ba9 store  0x00000003 , 0x000001f6 
+ 00025748  0x00006baa call  0x00006502 
+ 00025749  0x00006bab arg  0x00006578 , 0x00000013 
+ 00025750  0x00006bac call  0x00006429 
+ 00025751  0x00006bad call  0x0000643c 
+ 00025752  0x00006bae nbranch  0x0000649b , 0x0000002d 
+ 00025753  0x00006baf fetch  0x00000001 , 0x000001f2 
+ 00025754  0x00006bb0 bbit0  0x00000000 , 0x0000648f 
+ 00025755  0x00006bb3 bmark1  0x0000002b , 0x0000649d 
+ 00025756  0x00006bb4 call  0x000064a3 
+ 00025757  0x00006bb6 fetch  0x00000001 , 0x000001f3 
+ 00025758  0x00006bb7 bbit0  0x00000004 , 0x000064a3 
+ 00025759  0x00006bb8 jam  0x00000021 , 0x00008050 
+ 00025760  0x00006bb9 call  0x00004c0e 
+ 00025761  0x00006bbb call  0x00004c2e 
+ 00025762  0x00006bbc branch  0x000064a1 
+ 00025763  0x00006bbf setarg  0x00000000 
+ 00025764  0x00006bc0 store  0x00000008 , 0x00000206 
+ 00025765  0x00006bc1 store  0x00000008 , 0x0000020e 
+ 00025766  0x00006bc2 force  0x00000004 , 0x00000038 
+ 00025767  0x00006bc3 call  0x00007492 
+ 00025768  0x00006bc4 jam  0x00000021 , 0x00008050 
+ 00025769  0x00006bc5 rtn 
+ 00025770  0x00006bc9 setarg  0x00000000 
+ 00025771  0x00006bca store  0x00000002 , 0x000001f7 
+ 00025772  0x00006bcb arg  0x000065e5 , 0x00000013 
+ 00025773  0x00006bcc call  0x000065a3 
+ 00025774  0x00006bcd call  0x00006429 
+ 00025775  0x00006bce branch  0x0000643c 
+ 00025776  0x00006bd2 fetch  0x00000001 , 0x000041da 
+ 00025777  0x00006bd3 increase  0x00000001 , 0x0000003f 
+ 00025778  0x00006bd4 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00025779  0x00006bd5 nbranch  0x000064b6 , 0x00000002 
+ 00025780  0x00006bd6 store  0x00000001 , 0x000041da 
+ 00025781  0x00006bd7 rtn 
+ 00025782  0x00006bda call  0x000064a3 
+ 00025783  0x00006bdb call  0x00007fa1 
+ 00025784  0x00006bdc rtn 
+ 00025785  0x00006be1 fetch  0x00000001 , 0x000001f2 
+ 00025786  0x00006be2 lshift  0x0000003f , 0x0000003f 
+ 00025787  0x00006be3 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00025788  0x00006be4 isolate0  0x0000000f , 0x00000011 
+ 00025789  0x00006be5 rtn  0x00000001 
+ 00025790  0x00006be6 store  0x00000001 , 0x000001f2 
+ 00025791  0x00006be7 rtn 
+ 00025792  0x00006beb hfetch  0x00000001 , 0x00008085 
+ 00025793  0x00006bec rtnbit0  0x00000001 
+ 00025794  0x00006bed branch  0x000064c6 
+ 00025795  0x00006bef hfetch  0x00000001 , 0x0000812c 
+ 00025796  0x00006bf0 qisolate1  0x0000003f 
+ 00025797  0x00006bf1 rtn  0x00000001 
+ 00025798  0x00006bf3 hfetch  0x00000001 , 0x00008108 
+ 00025799  0x00006bf4 bbit0  0x00000001 , 0x000064c3 
+ 00025800  0x00006bf5 call  0x00007422 
+ 00025801  0x00006bf6 branch  0x000064c3 
+ 00025802  0x00006bfb fetch  0x00000002 , 0x00004199 
+ 00025803  0x00006bfc rtn  0x00000034 
+ 00025804  0x00006bfd jam  0x00000080 , 0x00008023 
+ 00025805  0x00006bfe jam  0x00000000 , 0x00008022 
+ 00025806  0x00006bff jam  0x00000000 , 0x00008024 
+ 00025807  0x00006c00 fetcht  0x00000002 , 0x0000419b 
+ 00025808  0x00006c01 lshift2  0x00000002 , 0x00000039 
+ 00025809  0x00006c02 iforce  0x00000006 
+ 00025810  0x00006c04 ifetch  0x00000001 , 0x00000006 
+ 00025811  0x00006c05 hstore  0x00000001 , 0x00008025 
+ 00025812  0x00006c06 loop  0x000064d2 
+ 00025813  0x00006c07 jam  0x00000000 , 0x00008023 
+ 00025814  0x00006c08 rtn 
+ 00025815  0x00006c0e bpatchx  0x0000008d , 0x00004031 
+ 00025816  0x00006c0f call  0x000064dd 
+ 00025817  0x00006c10 branch  0x000063f2 
+ 00025818  0x00006c13 call  0x000064dd 
+ 00025819  0x00006c14 call  0x000063ee 
+ 00025820  0x00006c15 branch  0x000063f6 
+ 00025821  0x00006c18 fetch  0x00000001 , 0x00004212 
+ 00025822  0x00006c19 hstore  0x00000001 , 0x00008086 
+ 00025823  0x00006c1a fetch  0x00000001 , 0x00004213 
+ 00025824  0x00006c1b hstore  0x00000001 , 0x00008087 
+ 00025825  0x00006c1c setarg  0x000001f5 
+ 00025826  0x00006c1d hstore  0x00000002 , 0x0000808a 
+ 00025827  0x00006c1e setarg  0x000001fa 
+ 00025828  0x00006c1f hstore  0x00000002 , 0x0000808c 
+ 00025829  0x00006c20 branch  0x000063ee 
+ 00025830  0x00006c23 hfetch  0x00000001 , 0x00008086 
+ 00025831  0x00006c24 set1  0x00000007 , 0x0000003f 
+ 00025832  0x00006c25 hstore  0x00000001 , 0x00008086 
+ 00025833  0x00006c26 set0  0x00000007 , 0x0000003f 
+ 00025834  0x00006c27 hstore  0x00000001 , 0x00008086 
+ 00025835  0x00006c28 rtn 
+ 00025836  0x00006c2d set1  0x00000007 , 0x0000003f 
+ 00025837  0x00006c2e store  0x00000002 , 0x000001f5 
+ 00025838  0x00006c2f bpatchx  0x0000008e , 0x00004031 
+ 00025839  0x00006c30 jam  0x00000002 , 0x00008088 
+ 00025840  0x00006c31 jam  0x00000000 , 0x0000808e 
+ 00025841  0x00006c32 jam  0x00000002 , 0x00008006 
+ 00025842  0x00006c33 branch  0x000064fc 
+ 00025843  0x00006c37 force  0x00000001 , 0x00000002 
+ 00025844  0x00006c3b store  0x00000001 , 0x000001f5 
+ 00025845  0x00006c3c bpatchx  0x0000008f , 0x00004031 
+ 00025846  0x00006c3d jam  0x00000001 , 0x00008088 
+ 00025847  0x00006c3e hstoret  0x00000002 , 0x0000808e 
+ 00025848  0x00006c3f jam  0x00000002 , 0x00008006 
+ 00025849  0x00006c40 call  0x000064fc 
+ 00025850  0x00006c41 fetch  0x00000001 , 0x000001fa 
+ 00025851  0x00006c42 rtn 
+ 00025852  0x00006c45 fetch  0x00000002 , 0x000040d6 
+ 00025853  0x00006c46 increase  0x00000001 , 0x0000003f 
+ 00025854  0x00006c47 store  0x00000002 , 0x000040d6 
+ 00025855  0x00006c48 hfetch  0x00000001 , 0x0000812c 
+ 00025856  0x00006c49 bbit0  0x00000003 , 0x000064fc 
+ 00025857  0x00006c4a rtn 
+ 00025858  0x00006c4d jam  0x00000040 , 0x00008086 
+ 00025859  0x00006c4e jam  0x00000000 , 0x00008087 
+ 00025860  0x00006c4f hfetch  0x00000001 , 0x00008081 
+ 00025861  0x00006c50 set0  0x00000000 , 0x0000003f 
+ 00025862  0x00006c51 set1  0x00000001 , 0x0000003f 
+ 00025863  0x00006c52 hstore  0x00000001 , 0x00008081 
+ 00025864  0x00006c53 setarg  0x00000000 
+ 00025865  0x00006c54 store  0x00000004 , 0x000001f5 
+ 00025866  0x00006c55 rtn 
+ 00025867  0x00006c59 setarg  0x00000000 
+ 00025868  0x00006c5a hstore  0x00000002 , 0x0000808e 
+ 00025869  0x00006c5b setarg  0x00000001 
+ 00025870  0x00006c5c hstore  0x00000002 , 0x00008088 
+ 00025871  0x00006c5d setarg  0x000001f5 
+ 00025872  0x00006c5e hstore  0x00000002 , 0x0000808a 
+ 00025873  0x00006c5f jam  0x00000006 , 0x000001f5 
+ 00025874  0x00006c60 jam  0x00000002 , 0x00008006 
+ 00025875  0x00006c61 branch  0x000064fc 
+ 00025876  0x00006c71 disable  0x00000028 
+ 00025877  0x00006c72 copy  0x0000003f , 0x00000012 
+ 00025878  0x00006c73 fetch  0x00000001 , 0x00004239 
+ 00025879  0x00006c74 rtnne  0x00000000 
+ 00025880  0x00006c75 enable  0x00000028 
+ 00025881  0x00006c76 copy  0x00000012 , 0x0000003f 
+ 00025882  0x00006c77 branch  0x00006522 
+ 00025883  0x00006c7b fetch  0x00000001 , 0x00004239 
+ 00025884  0x00006c7c beq  0x00000001 , 0x00006522 
+ 00025885  0x00006c7d beq  0x00000002 , 0x00006528 
+ 00025886  0x00006c7e beq  0x00000003 , 0x00006530 
+ 00025887  0x00006c7f beq  0x00000004 , 0x00006537 
+ 00025888  0x00006c80 beq  0x00000005 , 0x0000653d 
+ 00025889  0x00006c81 rtn 
+ 00025890  0x00006c84 store  0x00000003 , 0x00004232 
+ 00025891  0x00006c85 copy  0x00000011 , 0x0000003f 
+ 00025892  0x00006c86 store  0x00000002 , 0x00004235 
+ 00025893  0x00006c87 storet  0x00000002 , 0x00004237 
+ 00025894  0x00006c88 jam  0x00000002 , 0x00004239 
+ 00025895  0x00006c89 branch  0x00006502 
+ 00025896  0x00006c8b call  0x00006502 
+ 00025897  0x00006c8c jam  0x00000003 , 0x00004239 
+ 00025898  0x00006c8d call  0x0000650b 
+ 00025899  0x00006c8e arg  0x000001f5 , 0x00000011 
+ 00025900  0x00006c8f fetch  0x00000003 , 0x00004232 
+ 00025901  0x00006c90 jam  0x00000004 , 0x00008088 
+ 00025902  0x00006c91 arg  0x00000020 , 0x00000002 
+ 00025903  0x00006c92 branch  0x00006556 
+ 00025904  0x00006c95 call  0x00006502 
+ 00025905  0x00006c96 call  0x0000650b 
+ 00025906  0x00006c97 setarg  0x00000005 
+ 00025907  0x00006c98 call  0x000064f3 
+ 00025908  0x00006c99 rtnbit1  0x00000000 
+ 00025909  0x00006c9a jam  0x00000004 , 0x00004239 
+ 00025910  0x00006c9b rtn 
+ 00025911  0x00006c9d call  0x00006502 
+ 00025912  0x00006c9e jam  0x00000005 , 0x00004239 
+ 00025913  0x00006c9f call  0x0000650b 
+ 00025914  0x00006ca0 call  0x0000654a 
+ 00025915  0x00006ca1 call  0x00006552 
+ 00025916  0x00006ca2 branch  0x00006545 
+ 00025917  0x00006ca4 call  0x00006502 
+ 00025918  0x00006ca5 call  0x0000650b 
+ 00025919  0x00006ca6 setarg  0x00000005 
+ 00025920  0x00006ca7 call  0x000064f3 
+ 00025921  0x00006ca8 rtnbit1  0x00000000 
+ 00025922  0x00006ca9 jam  0x00000000 , 0x00004239 
+ 00025923  0x00006caa fetch  0x00000002 , 0x00004201 
+ 00025924  0x00006cab branch  0x00007f9c 
+ 00025925  0x00006cad fetch  0x00000004 , 0x00000aa2 
+ 00025926  0x00006cae fetcht  0x00000002 , 0x00004235 
+ 00025927  0x00006caf increase  0xfffffffc , 0x00000002 
+ 00025928  0x00006cb0 istore  0x00000004 , 0x00000002 
+ 00025929  0x00006cb1 rtn 
+ 00025930  0x00006cb3 fetcht  0x00000002 , 0x00004235 
+ 00025931  0x00006cb4 copy  0x00000002 , 0x00000011 
+ 00025932  0x00006cb5 increase  0xfffffffc , 0x00000002 
+ 00025933  0x00006cb6 ifetch  0x00000004 , 0x00000002 
+ 00025934  0x00006cb7 store  0x00000004 , 0x00000aa2 
+ 00025935  0x00006cb8 fetcht  0x00000002 , 0x00004237 
+ 00025936  0x00006cb9 fetch  0x00000003 , 0x00004232 
+ 00025937  0x00006cba rtn 
+ 00025938  0x00006cbf increase  0x00000004 , 0x00000002 
+ 00025939  0x00006cc0 hstoret  0x00000002 , 0x00008088 
+ 00025940  0x00006cc1 arg  0x00000002 , 0x00000002 
+ 00025941  0x00006cc2 increase  0xfffffffc , 0x00000011 
+ 00025942  0x00006cc5 istoret  0x00000001 , 0x00000011 
+ 00025943  0x00006cc6 rshift16  0x0000003f , 0x00000002 
+ 00025944  0x00006cc7 istoret  0x00000001 , 0x00000005 
+ 00025945  0x00006cc8 rshift8  0x0000003f , 0x00000002 
+ 00025946  0x00006cc9 istoret  0x00000001 , 0x00000005 
+ 00025947  0x00006cca istore  0x00000001 , 0x00000005 
+ 00025948  0x00006ccb deposit  0x00000011 
+ 00025949  0x00006ccc hstore  0x00000002 , 0x0000808a 
+ 00025950  0x00006ccd setarg  0x00000000 
+ 00025951  0x00006cce hstore  0x00000002 , 0x0000808e 
+ 00025952  0x00006ccf jam  0x00000002 , 0x00008006 
+ 00025953  0x00006cd0 branch  0x000064fc 
+ 00025954  0x00006cd5 hstoret  0x00000002 , 0x0000808e 
+ 00025955  0x00006cd6 rshift16  0x0000003f , 0x00000002 
+ 00025956  0x00006cd7 storet  0x00000001 , 0x000001f6 
+ 00025957  0x00006cd8 rshift8  0x0000003f , 0x00000002 
+ 00025958  0x00006cd9 storet  0x00000001 , 0x000001f7 
+ 00025959  0x00006cda store  0x00000001 , 0x000001f8 
+ 00025960  0x00006cdb setarg  0x00000004 
+ 00025961  0x00006cdc hstore  0x00000002 , 0x00008088 
+ 00025962  0x00006cdd jam  0x00000003 , 0x000001f5 
+ 00025963  0x00006cde setarg  0x000001f5 
+ 00025964  0x00006cdf hstore  0x00000002 , 0x0000808a 
+ 00025965  0x00006ce0 deposit  0x00000011 
+ 00025966  0x00006ce1 hstore  0x00000002 , 0x0000808c 
+ 00025967  0x00006ce2 hfetch  0x00000001 , 0x00008086 
+ 00025968  0x00006ce3 isolate0  0x0000000f , 0x00000011 
+ 00025969  0x00006ce4 setflag  0x00000001 , 0x00000006 , 0x0000003f 
+ 00025970  0x00006ce5 hstore  0x00000001 , 0x00008086 
+ 00025971  0x00006ce6 jam  0x00000002 , 0x00008006 
+ 00025972  0x00006ce8 hfetch  0x00000001 , 0x0000812c 
+ 00025973  0x00006ce9 bbit1  0x00000007 , 0x00006574 
+ 00025974  0x00006cea arg  0x00000003 , 0x00000007 
+ 00025975  0x00006ceb branch  0x000064fc 
+ 00025976  0x00006cf0 hstoret  0x00000002 , 0x0000808e 
+ 00025977  0x00006cf1 setarg  0x00000004 
+ 00025978  0x00006cf2 hstore  0x00000002 , 0x00008088 
+ 00025979  0x00006cf3 jam  0x00000003 , 0x000001f5 
+ 00025980  0x00006cf4 setarg  0x000001f5 
+ 00025981  0x00006cf5 hstore  0x00000002 , 0x0000808a 
+ 00025982  0x00006cf6 deposit  0x00000011 
+ 00025983  0x00006cf7 hstore  0x00000002 , 0x0000808c 
+ 00025984  0x00006cf8 hfetch  0x00000001 , 0x00008086 
+ 00025985  0x00006cf9 isolate0  0x0000000f , 0x00000011 
+ 00025986  0x00006cfa setflag  0x00000001 , 0x00000006 , 0x0000003f 
+ 00025987  0x00006cfb hstore  0x00000001 , 0x00008086 
+ 00025988  0x00006cfc jam  0x00000002 , 0x00008006 
+ 00025989  0x00006cfe hfetch  0x00000001 , 0x0000812c 
+ 00025990  0x00006cff bbit1  0x00000007 , 0x00006585 
+ 00025991  0x00006d00 arg  0x00000003 , 0x00000007 
+ 00025992  0x00006d01 call  0x000064c0 
+ 00025993  0x00006d02 call  0x000064fc 
+ 00025994  0x00006d03 isolate1  0x00000002 , 0x0000003f 
+ 00025995  0x00006d04 call  0x000064b9 
+ 00025996  0x00006d05 fetch  0x00000001 , 0x000001f6 
+ 00025997  0x00006d06 lshift16  0x0000003f , 0x00000012 
+ 00025998  0x00006d07 fetch  0x00000001 , 0x000001f7 
+ 00025999  0x00006d08 lshift8  0x0000003f , 0x0000003f 
+ 00026000  0x00006d09 ior  0x00000012 , 0x00000012 
+ 00026001  0x00006d0a fetch  0x00000001 , 0x000001f8 
+ 00026002  0x00006d0b ior  0x00000012 , 0x0000003f 
+ 00026003  0x00006d0c iadd  0x00000002 , 0x0000003f 
+ 00026004  0x00006d0d store  0x00000001 , 0x000001f8 
+ 00026005  0x00006d0e rshift8  0x0000003f , 0x0000003f 
+ 00026006  0x00006d0f store  0x00000001 , 0x000001f7 
+ 00026007  0x00006d10 rshift8  0x0000003f , 0x0000003f 
+ 00026008  0x00006d11 store  0x00000001 , 0x000001f6 
+ 00026009  0x00006d12 rtn 
+ 00026010  0x00006d18 jam  0x00000001 , 0x00008010 
+ 00026011  0x00006d19 rtn 
+ 00026012  0x00006d20 jam  0x0000000c , 0x00008091 
+ 00026013  0x00006d21 jam  0x0000000d , 0x00008092 
+ 00026014  0x00006d22 jam  0x0000000d , 0x00008093 
+ 00026015  0x00006d23 jam  0x0000000d , 0x00008094 
+ 00026016  0x00006d24 jam  0x0000000d , 0x00008095 
+ 00026017  0x00006d25 jam  0x0000000c , 0x00008096 
+ 00026018  0x00006d26 branch  0x000065a9 
+ 00026019  0x00006d2a jam  0x00000005 , 0x00008091 
+ 00026020  0x00006d2b jam  0x00000007 , 0x00008092 
+ 00026021  0x00006d2c jam  0x00000007 , 0x00008093 
+ 00026022  0x00006d2d jam  0x00000007 , 0x00008094 
+ 00026023  0x00006d2e jam  0x00000007 , 0x00008095 
+ 00026024  0x00006d2f jam  0x00000005 , 0x00008096 
+ 00026025  0x00006d31 hfetch  0x00000001 , 0x0000807b 
+ 00026026  0x00006d32 or_into  0x000000c0 , 0x0000003f 
+ 00026027  0x00006d33 hstore  0x00000001 , 0x0000807b 
+ 00026028  0x00006d34 hfetch  0x00000001 , 0x00008081 
+ 00026029  0x00006d35 or_into  0x00000010 , 0x0000003f 
+ 00026030  0x00006d36 hstore  0x00000001 , 0x00008081 
+ 00026031  0x00006d37 rtn 
+ 00026032  0x00006d3c hfetch  0x00000001 , 0x0000812c 
+ 00026033  0x00006d3d bbit0  0x00000005 , 0x000065b0 
+ 00026034  0x00006d3e rtn 
+ 00026035  0x00006d47 hstore  0x00000002 , 0x00008098 
+ 00026036  0x00006d48 deposit  0x00000011 
+ 00026037  0x00006d49 hstore  0x00000002 , 0x0000809a 
+ 00026038  0x00006d4a deposit  0x00000012 
+ 00026039  0x00006d4b hstore  0x00000002 , 0x0000809c 
+ 00026040  0x00006d4c deposit  0x00000002 
+ 00026041  0x00006d4d hstore  0x00000002 , 0x0000809e 
+ 00026042  0x00006d4e arg  0x00000001 , 0x00000002 
+ 00026043  0x00006d4f nsetflag  0x00000034 , 0x00000001 , 0x00000002 
+ 00026044  0x00006d50 hstore  0x00000001 , 0x00008090 
+ 00026045  0x00006d51 jam  0x00000004 , 0x00008006 
+ 00026046  0x00006d52 branch  0x000065b0 
+ 00026047  0x00006d56 set1  0x00000028 , 0x00000000 
+ 00026048  0x00006d57 jam  0x00000008 , 0x00004211 
+ 00026049  0x00006d58 rtn 
+ 00026050  0x00006d5b set0  0x00000028 , 0x00000000 
+ 00026051  0x00006d5c jam  0x00000020 , 0x00004211 
+ 00026052  0x00006d5d rtn 
+ 00026053  0x00006d61 fetch  0x00000001 , 0x00004203 
+ 00026054  0x00006d62 iadd  0x00000012 , 0x0000003f 
+ 00026055  0x00006d63 store  0x00000001 , 0x000001f7 
+ 00026056  0x00006d64 branch  0x000065cc 
+ 00026057  0x00006d67 fetch  0x00000002 , 0x000001f7 
+ 00026058  0x00006d68 byteswap  0x0000003f , 0x0000003f 
+ 00026059  0x00006d69 store  0x00000001 , 0x000001f7 
+ 00026060  0x00006d6f setarg  0x00000003 
+ 00026061  0x00006d70 hstore  0x00000002 , 0x00008098 
+ 00026062  0x00006d71 jam  0x000000a0 , 0x000001f6 
+ 00026063  0x00006d72 jam  0x000000a1 , 0x000001f8 
+ 00026064  0x00006d73 branch  0x000065eb 
+ 00026065  0x00006d7a storet  0x00000002 , 0x00000aa2 
+ 00026066  0x00006d7b call  0x000065d6 
+ 00026067  0x00006d7c fetcht  0x00000002 , 0x00000aa2 
+ 00026068  0x00006d7d call  0x00006606 
+ 00026069  0x00006d7e branch  0x000065dd 
+ 00026070  0x00006d81 fetch  0x00000001 , 0x0000423a 
+ 00026071  0x00006d82 rtneq  0x000000ff 
+ 00026072  0x00006d83 bbit0  0x00000006 , 0x000065db 
+ 00026073  0x00006d84 setarg  0x000249f0 
+ 00026074  0x00006d85 call  0x00002a8f 
+ 00026075  0x00006d87 fetcht  0x00000001 , 0x0000423a 
+ 00026076  0x00006d88 branch  0x00006829 
+ 00026077  0x00006d8b fetcht  0x00000001 , 0x0000423a 
+ 00026078  0x00006d8c branch  0x00006825 
+ 00026079  0x00006d92 bpatchx  0x00000090 , 0x00004032 
+ 00026080  0x00006d93 bmark1  0x00000028 , 0x000065c5 
+ 00026081  0x00006d94 fetch  0x00000002 , 0x00004203 
+ 00026082  0x00006d95 iadd  0x00000012 , 0x0000003f 
+ 00026083  0x00006d96 byteswap  0x0000003f , 0x0000003f 
+ 00026084  0x00006d97 store  0x00000002 , 0x000001f7 
+ 00026085  0x00006d9b bpatchx  0x00000091 , 0x00004032 
+ 00026086  0x00006d9c bmark1  0x00000028 , 0x000065c9 
+ 00026087  0x00006d9d setarg  0x00000004 
+ 00026088  0x00006d9e hstore  0x00000002 , 0x00008098 
+ 00026089  0x00006d9f jam  0x000000a0 , 0x000001f6 
+ 00026090  0x00006da0 jam  0x000000a1 , 0x000001f9 
+ 00026091  0x00006da2 setarg  0x000001f6 
+ 00026092  0x00006da3 hstore  0x00000002 , 0x0000809a 
+ 00026093  0x00006da4 hstoret  0x00000002 , 0x0000809e 
+ 00026094  0x00006da5 deposit  0x00000011 
+ 00026095  0x00006da6 hstore  0x00000002 , 0x0000809c 
+ 00026096  0x00006da7 setarg  0x00000002 
+ 00026097  0x00006da8 isolate0  0x0000000f , 0x00000011 
+ 00026098  0x00006da9 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00026099  0x00006daa hstore  0x00000001 , 0x00008090 
+ 00026100  0x00006dab jam  0x00000004 , 0x00008006 
+ 00026101  0x00006dac arg  0x00000005 , 0x00000007 
+ 00026102  0x00006dad call  0x000064c0 
+ 00026103  0x00006dae call  0x000065b0 
+ 00026104  0x00006daf isolate1  0x00000004 , 0x0000003f 
+ 00026105  0x00006db0 call  0x000064b9 
+ 00026106  0x00006db1 bmark1  0x00000028 , 0x00006601 
+ 00026107  0x00006db2 fetch  0x00000002 , 0x000001f7 
+ 00026108  0x00006db3 byteswap  0x0000003f , 0x0000003f 
+ 00026109  0x00006db4 iadd  0x00000002 , 0x0000003f 
+ 00026110  0x00006db5 byteswap  0x0000003f , 0x0000003f 
+ 00026111  0x00006db6 store  0x00000002 , 0x000001f7 
+ 00026112  0x00006db7 rtn 
+ 00026113  0x00006dba fetch  0x00000001 , 0x000001f7 
+ 00026114  0x00006dbb iadd  0x00000002 , 0x0000003f 
+ 00026115  0x00006dbc byteswap  0x0000003f , 0x0000003f 
+ 00026116  0x00006dbd store  0x00000002 , 0x000001f7 
+ 00026117  0x00006dbe rtn 
+ 00026118  0x00006dc5 fetch  0x00000002 , 0x00004203 
+ 00026119  0x00006dc6 iadd  0x00000012 , 0x0000003f 
+ 00026120  0x00006dca store  0x00000002 , 0x00000a9a 
+ 00026121  0x00006dcb bpatchx  0x00000092 , 0x00004032 
+ 00026122  0x00006dcc storet  0x00000002 , 0x00000aa2 
+ 00026123  0x00006dcd copy  0x00000011 , 0x0000003f 
+ 00026124  0x00006dce store  0x00000002 , 0x00000ab9 
+ 00026125  0x00006dd0 call  0x0000661d 
+ 00026126  0x00006dd2 fetcht  0x00000002 , 0x00000ab2 
+ 00026127  0x00006dd3 fetch  0x00000002 , 0x00000ab9 
+ 00026128  0x00006dd4 copy  0x0000003f , 0x00000011 
+ 00026129  0x00006dd5 fetch  0x00000002 , 0x00000a9a 
+ 00026130  0x00006dd7 call  0x0000663d 
+ 00026131  0x00006dd9 fetch  0x00000002 , 0x00000ab2 
+ 00026132  0x00006dda fetcht  0x00000002 , 0x00000ab9 
+ 00026133  0x00006ddb iadd  0x00000002 , 0x00000002 
+ 00026134  0x00006ddc storet  0x00000002 , 0x00000ab9 
+ 00026135  0x00006ddd fetcht  0x00000002 , 0x00000a9a 
+ 00026136  0x00006dde iadd  0x00000002 , 0x00000002 
+ 00026137  0x00006ddf storet  0x00000002 , 0x00000a9a 
+ 00026138  0x00006de0 fetch  0x00000002 , 0x00000aa2 
+ 00026139  0x00006de1 nbranch  0x0000660d , 0x00000034 
+ 00026140  0x00006de2 rtn 
+ 00026141  0x00006deb bpatchx  0x00000093 , 0x00004032 
+ 00026142  0x00006dec fetch  0x00000001 , 0x00004211 
+ 00026143  0x00006ded increase  0xffffffff , 0x0000003f 
+ 00026144  0x00006dee fetcht  0x00000002 , 0x00000a9a 
+ 00026145  0x00006def ior  0x00000002 , 0x0000003f 
+ 00026146  0x00006df0 increase  0x00000001 , 0x0000003f 
+ 00026147  0x00006df1 store  0x00000003 , 0x00000ab6 
+ 00026148  0x00006df3 fetch  0x00000002 , 0x00000aa2 
+ 00026149  0x00006df4 iadd  0x00000002 , 0x0000003f 
+ 00026150  0x00006df6 fetcht  0x00000003 , 0x00000ab6 
+ 00026151  0x00006df7 isub  0x00000002 , 0x0000003f 
+ 00026152  0x00006df8 nbranch  0x0000662f , 0x00000002 
+ 00026153  0x00006df9 store  0x00000002 , 0x00000aa2 
+ 00026154  0x00006dfa fetch  0x00000003 , 0x00000ab6 
+ 00026155  0x00006dfb fetcht  0x00000002 , 0x00000a9a 
+ 00026156  0x00006dfc isub  0x00000002 , 0x0000003f 
+ 00026157  0x00006dfd store  0x00000002 , 0x00000ab2 
+ 00026158  0x00006dfe rtn 
+ 00026159  0x00006e00 fetch  0x00000002 , 0x00000aa2 
+ 00026160  0x00006e01 store  0x00000002 , 0x00000ab2 
+ 00026161  0x00006e02 setarg  0x00000000 
+ 00026162  0x00006e03 store  0x00000002 , 0x00000aa2 
+ 00026163  0x00006e04 rtn 
+ 00026164  0x00006e07 increase  0x00000002 , 0x00000002 
+ 00026165  0x00006e08 hstoret  0x00000002 , 0x00008098 
+ 00026166  0x00006e09 increase  0xfffffffe , 0x00000011 
+ 00026167  0x00006e0a ifetcht  0x00000003 , 0x00000011 
+ 00026168  0x00006e0b copy  0x00000002 , 0x00000012 
+ 00026169  0x00006e0c arg  0x000000a0 , 0x00000002 
+ 00026170  0x00006e0d istoret  0x00000001 , 0x00000011 
+ 00026171  0x00006e0f istore  0x00000001 , 0x00000005 
+ 00026172  0x00006e10 branch  0x0000664a 
+ 00026173  0x00006e14 copy  0x0000003f , 0x00000012 
+ 00026174  0x00006e15 bpatchx  0x00000094 , 0x00004032 
+ 00026175  0x00006e16 bmark1  0x00000028 , 0x00006634 
+ 00026176  0x00006e17 copy  0x00000012 , 0x0000003f 
+ 00026177  0x00006e18 increase  0x00000003 , 0x00000002 
+ 00026178  0x00006e19 hstoret  0x00000002 , 0x00008098 
+ 00026179  0x00006e1a increase  0xfffffffd , 0x00000011 
+ 00026180  0x00006e1b ifetcht  0x00000003 , 0x00000011 
+ 00026181  0x00006e1c copy  0x00000002 , 0x00000012 
+ 00026182  0x00006e1d arg  0x000000a0 , 0x00000002 
+ 00026183  0x00006e1e istoret  0x00000001 , 0x00000011 
+ 00026184  0x00006e1f byteswap  0x0000003f , 0x0000003f 
+ 00026185  0x00006e20 istore  0x00000002 , 0x00000005 
+ 00026186  0x00006e22 deposit  0x00000011 
+ 00026187  0x00006e23 hstore  0x00000002 , 0x0000809a 
+ 00026188  0x00006e24 setarg  0x00000000 
+ 00026189  0x00006e25 hstore  0x00000002 , 0x0000809e 
+ 00026190  0x00006e26 jam  0x00000001 , 0x00008090 
+ 00026191  0x00006e27 jam  0x00000004 , 0x00008006 
+ 00026192  0x00006e28 call  0x000065b0 
+ 00026193  0x00006e29 copy  0x00000012 , 0x0000003f 
+ 00026194  0x00006e2a istore  0x00000003 , 0x00000011 
+ 00026195  0x00006e2d bpatchx  0x00000095 , 0x00004032 
+ 00026196  0x00006e2e jam  0x00000000 , 0x000001f9 
+ 00026197  0x00006e30 setarg  0x00000001 
+ 00026198  0x00006e31 hstore  0x00000002 , 0x00008098 
+ 00026199  0x00006e32 jam  0x000000a0 , 0x000001f6 
+ 00026200  0x00006e33 setarg  0x000001f6 
+ 00026201  0x00006e34 hstore  0x00000002 , 0x0000809a 
+ 00026202  0x00006e35 setarg  0x00000000 
+ 00026203  0x00006e36 hstore  0x00000002 , 0x0000809e 
+ 00026204  0x00006e37 hstore  0x00000002 , 0x0000809c 
+ 00026205  0x00006e38 setarg  0x00000003 
+ 00026206  0x00006e39 hstore  0x00000001 , 0x00008090 
+ 00026207  0x00006e3a jam  0x00000004 , 0x00008006 
+ 00026208  0x00006e3b call  0x000065b0 
+ 00026209  0x00006e3c hfetch  0x00000001 , 0x0000812c 
+ 00026210  0x00006e3d rtnbit0  0x00000006 
+ 00026211  0x00006e3e nop  0x000005dc 
+ 00026212  0x00006e3f fetch  0x00000001 , 0x000001f9 
+ 00026213  0x00006e40 increase  0x00000001 , 0x0000003f 
+ 00026214  0x00006e41 store  0x00000001 , 0x000001f9 
+ 00026215  0x00006e42 sub  0x0000003f , 0x00000028 , 0x0000003e 
+ 00026216  0x00006e43 nrtn  0x00000002 
+ 00026217  0x00006e44 branch  0x00006655 
+ 00026218  0x00006e49 jam  0x00000070 , 0x00008973 
+ 00026219  0x00006e4a nop  0x00000bb8 
+ 00026220  0x00006e4b rtn 
+ 00026221  0x00006e4e jam  0x00000030 , 0x00008973 
+ 00026222  0x00006e4f rtn 
+ 00026223  0x00006e52 lshift3  0x0000003f , 0x0000003f 
+ 00026224  0x00006e53 hstore  0x00000002 , 0x00008045 
+ 00026225  0x00006e54 jam  0x00000000 , 0x0000804b 
+ 00026226  0x00006e55 rtn 
+ 00026227  0x00006e59 call  0x0000666f 
+ 00026228  0x00006e5a call  0x000066a0 
+ 00026229  0x00006e5c ifetcht  0x00000001 , 0x00000011 
+ 00026230  0x00006e5d increase  0x00000001 , 0x00000011 
+ 00026231  0x00006e5e force  0x00000000 , 0x00000007 
+ 00026232  0x00006e60 qisolate0  0x00000002 
+ 00026233  0x00006e61 branch  0x00006697 , 0x00000001 
+ 00026234  0x00006e62 hfetch  0x00000001 , 0x00008046 
+ 00026235  0x00006e63 set1  0x00000006 , 0x0000003f 
+ 00026236  0x00006e64 set1  0x00000007 , 0x0000003f 
+ 00026237  0x00006e65 hstore  0x00000001 , 0x00008046 
+ 00026238  0x00006e66 jam  0x00000002 , 0x00008047 
+ 00026239  0x00006e67 jam  0x00000082 , 0x00008047 
+ 00026240  0x00006e68 set0  0x00000007 , 0x0000003f 
+ 00026241  0x00006e69 hstore  0x00000001 , 0x00008046 
+ 00026242  0x00006e6a jam  0x0000008a , 0x00008047 
+ 00026243  0x00006e6b nop  0x0000000b 
+ 00026244  0x00006e6c jam  0x000000ca , 0x00008047 
+ 00026245  0x00006e6d nop  0x00000021 
+ 00026246  0x00006e6e jam  0x0000004a , 0x00008047 
+ 00026247  0x00006e6f nop  0x0000002c 
+ 00026248  0x00006e70 jam  0x000000ca , 0x00008047 
+ 00026249  0x00006e71 nop  0x00000016 
+ 00026250  0x00006e72 jam  0x0000008a , 0x00008047 
+ 00026251  0x00006e73 nop  0x00000021 
+ 00026252  0x00006e74 jam  0x00000082 , 0x00008047 
+ 00026253  0x00006e75 nop  0x00000001 
+ 00026254  0x00006e76 jam  0x00000092 , 0x00008047 
+ 00026255  0x00006e77 nop  0x0000000a 
+ 00026256  0x00006e78 jam  0x000000b2 , 0x00008047 
+ 00026257  0x00006e79 hfetch  0x00000001 , 0x00008007 
+ 00026258  0x00006e7a jam  0x00000092 , 0x00008047 
+ 00026259  0x00006e7b nop  0x00000001 
+ 00026260  0x00006e7c jam  0x00000082 , 0x00008047 
+ 00026261  0x00006e7d qisolate0  0x0000003f 
+ 00026262  0x00006e7e branch  0x00006678 , 0x00000001 
+ 00026263  0x00006e80 hfetch  0x00000002 , 0x00008045 
+ 00026264  0x00006e81 increase  0x00000001 , 0x0000003f 
+ 00026265  0x00006e82 hstore  0x00000002 , 0x00008045 
+ 00026266  0x00006e83 increase  0x00000001 , 0x00000007 
+ 00026267  0x00006e84 compare  0x00000008 , 0x00000007 , 0x0000000f 
+ 00026268  0x00006e85 nbranch  0x00006678 , 0x00000001 
+ 00026269  0x00006e86 loop  0x00006675 
+ 00026270  0x00006e87 jam  0x00000083 , 0x00008047 
+ 00026271  0x00006e88 rtn 
+ 00026272  0x00006e8b jam  0x00000082 , 0x00008047 
+ 00026273  0x00006e8c nop  0x0000000c 
+ 00026274  0x00006e8d jam  0x00000080 , 0x00008047 
+ 00026275  0x00006e8e jam  0x00000082 , 0x00008047 
+ 00026276  0x00006e8f nop  0x00000096 
+ 00026277  0x00006e90 rtn 
+ 00026278  0x00006e94 call  0x000066a0 
+ 00026279  0x00006e95 jam  0x000000a2 , 0x00008047 
+ 00026280  0x00006e96 deposit  0x00000011 
+ 00026281  0x00006e97 hstore  0x00000002 , 0x00008048 
+ 00026282  0x00006e98 set1  0x0000000b , 0x00000002 
+ 00026283  0x00006e99 isolate0  0x0000000f , 0x0000003f 
+ 00026284  0x00006e9a setflag  0x00000001 , 0x0000000f , 0x00000002 
+ 00026285  0x00006e9b hstoret  0x00000002 , 0x0000804a 
+ 00026286  0x00006e9c jam  0x00000001 , 0x00008006 
+ 00026287  0x00006e9d rtn 
+ 00026288  0x00006ea0 hfetch  0x00000001 , 0x0000812c 
+ 00026289  0x00006ea1 bbit0  0x00000001 , 0x000066b0 
+ 00026290  0x00006ea2 rtn 
+ 00026291  0x00006ea6 call  0x0000666f 
+ 00026292  0x00006ea7 call  0x000066a6 
+ 00026293  0x00006ea8 call  0x000066b0 
+ 00026294  0x00006ea9 jam  0x00000083 , 0x00008047 
+ 00026295  0x00006eaa rtn 
+ 00026296  0x00006eb0 hfetch  0x00000002 , 0x00008124 
+ 00026297  0x00006eb1 hstore  0x00000002 , 0x00008045 
+ 00026298  0x00006eb2 call  0x000066a6 
+ 00026299  0x00006eb3 arg  0x00000001 , 0x00000007 
+ 00026300  0x00006eb4 call  0x000064c0 
+ 00026301  0x00006eb5 call  0x000066b0 
+ 00026302  0x00006eb6 isolate1  0x00000000 , 0x0000003f 
+ 00026303  0x00006eb7 call  0x000064b9 
+ 00026304  0x00006eb8 jam  0x00000083 , 0x00008047 
+ 00026305  0x00006eb9 rtn 
+ 00026306  0x00006ebd hfetch  0x00000002 , 0x0000805e 
+ 00026307  0x00006ebe iforce  0x0000000a 
+ 00026308  0x00006ebf rtn 
+ 00026309  0x00006ec2 deposit  0x0000000a 
+ 00026310  0x00006ec3 hstore  0x00000002 , 0x0000805e 
+ 00026311  0x00006ec4 rtn 
+ 00026312  0x00006ec7 deposit  0x00000003 
+ 00026313  0x00006ec8 hstore  0x00000002 , 0x00008058 
+ 00026314  0x00006ec9 rtn 
+ 00026315  0x00006ecc hfetch  0x00000002 , 0x00008058 
+ 00026316  0x00006ecd copy  0x0000003f , 0x00000003 
+ 00026317  0x00006ece rtn 
+ 00026318  0x00006ed1 fetch  0x00000002 , 0x00004243 
+ 00026319  0x00006ed2 hstore  0x00000002 , 0x00008052 
+ 00026320  0x00006ed3 rtn 
+ 00026321  0x00006ed6 deposit  0x00000039 
+ 00026322  0x00006ed7 rtn  0x00000034 
+ 00026323  0x00006ed9 increase  0xfffffff8 , 0x00000039 
+ 00026324  0x00006eda call  0x000066de , 0x00000002 
+ 00026325  0x00006edb rtn  0x00000005 
+ 00026326  0x00006edc branch  0x000066d3 , 0x00000002 
+ 00026327  0x00006edd increase  0x00000008 , 0x00000039 
+ 00026328  0x00006edf increase  0xfffffffc , 0x00000039 
+ 00026329  0x00006ee0 call  0x000066e1 , 0x00000002 
+ 00026330  0x00006ee1 rtn  0x00000005 
+ 00026331  0x00006ee2 branch  0x000066d8 , 0x00000002 
+ 00026332  0x00006ee3 increase  0x00000004 , 0x00000039 
+ 00026333  0x00006ee4 branch  0x000066e4 
+ 00026334  0x00006ee7 ifetch  0x00000008 , 0x00000006 
+ 00026335  0x00006ee8 istore  0x00000008 , 0x0000000a 
+ 00026336  0x00006ee9 rtn 
+ 00026337  0x00006eec ifetch  0x00000004 , 0x00000006 
+ 00026338  0x00006eed istore  0x00000004 , 0x0000000a 
+ 00026339  0x00006eee rtn 
+ 00026340  0x00006ef1 deposit  0x00000039 
+ 00026341  0x00006ef2 rtn  0x00000034 
+ 00026342  0x00006ef4 ifetch  0x00000001 , 0x00000006 
+ 00026343  0x00006ef5 istore  0x00000001 , 0x0000000a 
+ 00026344  0x00006ef6 loop  0x000066e6 
+ 00026345  0x00006ef7 rtn 
+ 00026346  0x00006efa deposit  0x00000039 
+ 00026347  0x00006efb rtn  0x00000034 
+ 00026348  0x00006efd increase  0xfffffff8 , 0x00000039 
+ 00026349  0x00006efe call  0x000066f7 , 0x00000002 
+ 00026350  0x00006eff rtn  0x00000005 
+ 00026351  0x00006f00 branch  0x000066ec , 0x00000002 
+ 00026352  0x00006f01 increase  0x00000008 , 0x00000039 
+ 00026353  0x00006f03 increase  0xfffffffc , 0x00000039 
+ 00026354  0x00006f04 call  0x000066fa , 0x00000002 
+ 00026355  0x00006f05 rtn  0x00000005 
+ 00026356  0x00006f06 branch  0x000066f1 , 0x00000002 
+ 00026357  0x00006f07 increase  0x00000004 , 0x00000039 
+ 00026358  0x00006f08 branch  0x000066fd 
+ 00026359  0x00006f0b ifetch  0x00000008 , 0x00000003 
+ 00026360  0x00006f0c istore  0x00000008 , 0x00000005 
+ 00026361  0x00006f0d rtn 
+ 00026362  0x00006f10 ifetch  0x00000004 , 0x00000003 
+ 00026363  0x00006f11 istore  0x00000004 , 0x00000005 
+ 00026364  0x00006f12 rtn 
+ 00026365  0x00006f16 deposit  0x00000039 
+ 00026366  0x00006f17 rtn  0x00000034 
+ 00026367  0x00006f19 ifetch  0x00000001 , 0x00000003 
+ 00026368  0x00006f1a istore  0x00000001 , 0x00000005 
+ 00026369  0x00006f1b loop  0x000066ff 
+ 00026370  0x00006f1c rtn 
+ 00026371  0x00006f20 deposit  0x00000039 
+ 00026372  0x00006f21 rtn  0x00000034 
+ 00026373  0x00006f23 ifetch  0x00000001 , 0x00000003 
+ 00026374  0x00006f24 istore  0x00000001 , 0x0000000a 
+ 00026375  0x00006f25 loop  0x00006705 
+ 00026376  0x00006f26 rtn 
+ 00026377  0x00006f2c jam  0x0000003d , 0x00000a99 
+ 00026378  0x00006f2d branch  0x00007d86 
+ 00026379  0x00006f31 bpatchx  0x00000096 , 0x00004032 
+ 00026380  0x00006f32 fetch  0x00000001 , 0x00004217 
+ 00026381  0x00006f33 rtn  0x00000034 
+ 00026382  0x00006f34 call  0x000067a3 
+ 00026383  0x00006f35 call  0x000067a9 , 0x00000005 
+ 00026384  0x00006f36 call  0x0000673e 
+ 00026385  0x00006f38 fetch  0x00000001 , 0x00004217 
+ 00026386  0x00006f39 icopy  0x00000013 
+ 00026387  0x00006f3a fetcht  0x00000002 , 0x00004215 
+ 00026388  0x00006f3b storet  0x00000002 , 0x0000018c 
+ 00026389  0x00006f3d copy  0x00000013 , 0x0000003f 
+ 00026390  0x00006f3e branch  0x00006709 , 0x00000034 
+ 00026391  0x00006f3f increase  0xffffffff , 0x00000013 
+ 00026392  0x00006f40 copy  0x00000002 , 0x00000011 
+ 00026393  0x00006f41 ifetch  0x00000001 , 0x00000011 
+ 00026394  0x00006f42 fetcht  0x00000001 , 0x00000184 
+ 00026395  0x00006f43 isub  0x00000002 , 0x0000003e 
+ 00026396  0x00006f44 call  0x00006725 , 0x00000005 
+ 00026397  0x00006f45 branch  0x00006721 , 0x00000002 
+ 00026398  0x00006f46 ifetch  0x00000001 , 0x00000011 
+ 00026399  0x00006f47 increase  0x00000001 , 0x0000003f 
+ 00026400  0x00006f48 istore  0x00000001 , 0x00000011 
+ 00026401  0x00006f4a fetcht  0x00000002 , 0x0000018c 
+ 00026402  0x00006f4b increase  0x00000022 , 0x00000002 
+ 00026403  0x00006f4c storet  0x00000002 , 0x0000018c 
+ 00026404  0x00006f4d branch  0x00006715 
+ 00026405  0x00006f50 setarg  0x00000000 
+ 00026406  0x00006f51 istore  0x00000001 , 0x00000011 
+ 00026407  0x00006f52 fetch  0x00000001 , 0x00000185 
+ 00026408  0x00006f53 istore  0x00000001 , 0x00000005 
+ 00026409  0x00006f54 bne  0x00000033 , 0x00006733 
+ 00026410  0x00006f55 arg  0x000041be , 0x00000012 
+ 00026411  0x00006f57 ifetch  0x00000006 , 0x00000006 
+ 00026412  0x00006f58 istore  0x00000008 , 0x00000005 
+ 00026413  0x00006f59 setarg  0x00000000 
+ 00026414  0x00006f5a istore  0x00000008 , 0x00000005 
+ 00026415  0x00006f5b copy  0x00000012 , 0x00000006 
+ 00026416  0x00006f5d call  0x00007ebf 
+ 00026417  0x00006f5e force  0x00000001 , 0x0000003e 
+ 00026418  0x00006f5f rtn 
+ 00026419  0x00006f62 beq  0x00000036 , 0x00006737 
+ 00026420  0x00006f63 beq  0x00000037 , 0x0000673b 
+ 00026421  0x00006f64 arg  0x00004419 , 0x00000012 
+ 00026422  0x00006f65 branch  0x0000672b 
+ 00026423  0x00006f68 arg  0x000044d5 , 0x00000006 
+ 00026424  0x00006f69 call  0x00007ebf 
+ 00026425  0x00006f6b arg  0x00004419 , 0x00000006 
+ 00026426  0x00006f6c branch  0x00006730 
+ 00026427  0x00006f6f arg  0x000044cd , 0x00000006 
+ 00026428  0x00006f70 call  0x00007ebf 
+ 00026429  0x00006f71 branch  0x00006739 
+ 00026430  0x00006f75 call  0x00007fe9 
+ 00026431  0x00006f76 fetch  0x00000001 , 0x00004217 
+ 00026432  0x00006f77 rtn  0x00000034 
+ 00026433  0x00006f78 fetch  0x00000002 , 0x00004682 
+ 00026434  0x00006f79 bbit1  0x00000000 , 0x00006754 
+ 00026435  0x00006f7b bpatchx  0x00000097 , 0x00004032 
+ 00026436  0x00006f7c fetch  0x00000001 , 0x0000448e 
+ 00026437  0x00006f7d beq  0x00000000 , 0x0000674d 
+ 00026438  0x00006f7e fetch  0x00000001 , 0x00000454 
+ 00026439  0x00006f7f compare  0x000000c0 , 0x0000003f , 0x000000c0 
+ 00026440  0x00006f80 branch  0x0000674d , 0x00000001 
+ 00026441  0x00006f81 compare  0x00000040 , 0x0000003f , 0x000000c0 
+ 00026442  0x00006f82 branch  0x00006752 , 0x00000001 
+ 00026443  0x00006f83 compare  0x00000000 , 0x0000003f , 0x000000c0 
+ 00026444  0x00006f84 branch  0x00006750 , 0x00000001 
+ 00026445  0x00006f86 jam  0x00000035 , 0x00000185 
+ 00026446  0x00006f87 fetch  0x00000006 , 0x0000044f 
+ 00026447  0x00006f88 branch  0x00006757 
+ 00026448  0x00006f8b jam  0x00000037 , 0x00000185 
+ 00026449  0x00006f8c branch  0x00006757 
+ 00026450  0x00006f90 jam  0x00000036 , 0x00000185 
+ 00026451  0x00006f91 branch  0x00006757 
+ 00026452  0x00006f95 bpatchx  0x00000098 , 0x00004033 
+ 00026453  0x00006f96 jam  0x00000033 , 0x00000185 
+ 00026454  0x00006f97 fetch  0x00000006 , 0x00000040 
+ 00026455  0x00006f99 store  0x00000006 , 0x00000186 
+ 00026456  0x00006f9a fetch  0x00000002 , 0x00004215 
+ 00026457  0x00006f9b ifetcht  0x00000001 , 0x0000003f 
+ 00026458  0x00006f9c pincrease  0x00000001 
+ 00026459  0x00006f9d store  0x00000002 , 0x0000018c 
+ 00026460  0x00006f9e storet  0x00000001 , 0x00000184 
+ 00026461  0x00006f9f fetch  0x00000001 , 0x00004217 
+ 00026462  0x00006fa0 icopy  0x00000013 
+ 00026463  0x00006fa2 fetch  0x00000002 , 0x0000018c 
+ 00026464  0x00006fa3 copy  0x0000003f , 0x00000011 
+ 00026465  0x00006fa4 call  0x0000676f 
+ 00026466  0x00006fa5 rtn  0x00000028 
+ 00026467  0x00006fa6 fetcht  0x00000002 , 0x0000018c 
+ 00026468  0x00006fa7 increase  0x00000022 , 0x00000002 
+ 00026469  0x00006fa8 storet  0x00000002 , 0x0000018c 
+ 00026470  0x00006fa9 increase  0xffffffff , 0x00000002 
+ 00026471  0x00006faa ifetch  0x00000001 , 0x00000002 
+ 00026472  0x00006fab store  0x00000001 , 0x00000184 
+ 00026473  0x00006fac increase  0xffffffff , 0x00000013 
+ 00026474  0x00006fad nbranch  0x0000675f , 0x00000005 
+ 00026475  0x00006fae fetch  0x00000001 , 0x00004217 
+ 00026476  0x00006faf pincrease  0xffffffff 
+ 00026477  0x00006fb0 store  0x00000001 , 0x00000184 
+ 00026478  0x00006fb1 rtn 
+ 00026479  0x00006fb3 fetch  0x00000001 , 0x00000185 
+ 00026480  0x00006fb4 bne  0x00000033 , 0x00006776 
+ 00026481  0x00006fb6 arg  0x00000185 , 0x00000012 
+ 00026482  0x00006fb7 arg  0x00000007 , 0x00000039 
+ 00026483  0x00006fb8 call  0x00007f88 
+ 00026484  0x00006fb9 branch  0x00007fe7 , 0x00000005 
+ 00026485  0x00006fba rtn 
+ 00026486  0x00006fbd beq  0x00000036 , 0x00006779 
+ 00026487  0x00006fbe beq  0x00000037 , 0x00006794 
+ 00026488  0x00006fbf branch  0x00006771 
+ 00026489  0x00006fc2 ifetcht  0x00000001 , 0x00000011 
+ 00026490  0x00006fc3 isub  0x00000002 , 0x0000003e 
+ 00026491  0x00006fc4 nrtn  0x00000005 
+ 00026492  0x00006fc5 arg  0x00000ac2 , 0x00000005 
+ 00026493  0x00006fc6 arg  0x00000010 , 0x00000039 
+ 00026494  0x00006fc7 call  0x00007ed4 
+ 00026495  0x00006fc8 fetch  0x00000003 , 0x00000452 
+ 00026496  0x00006fc9 store  0x00000003 , 0x00000ac2 
+ 00026497  0x00006fca call  0x0000678b 
+ 00026498  0x00006fcb fetch  0x00000002 , 0x00000adf 
+ 00026499  0x00006fcc byteswap  0x0000003f , 0x0000003f 
+ 00026500  0x00006fcd lshift8  0x0000003f , 0x00000002 
+ 00026501  0x00006fce ifetch  0x00000001 , 0x00000006 
+ 00026502  0x00006fcf iadd  0x00000002 , 0x0000003f 
+ 00026503  0x00006fd0 fetcht  0x00000003 , 0x0000044f 
+ 00026504  0x00006fd1 isub  0x00000002 , 0x0000003e 
+ 00026505  0x00006fd2 branch  0x00007fe7 , 0x00000005 
+ 00026506  0x00006fd3 rtn 
+ 00026507  0x00006fd7 arg  0x00000ac2 , 0x00000006 
+ 00026508  0x00006fd8 call  0x00007486 
+ 00026509  0x00006fda ifetch  0x00000001 , 0x00000011 
+ 00026510  0x00006fdb call  0x00007487 
+ 00026511  0x00006fdc force  0x00000038 , 0x00000036 
+ 00026512  0x00006fdd force  0x00000000 , 0x00000036 
+ 00026513  0x00006fde call  0x0000741d 
+ 00026514  0x00006fdf arg  0x00000ad2 , 0x00000005 
+ 00026515  0x00006fe0 branch  0x00007497 
+ 00026516  0x00006fe3 ifetcht  0x00000001 , 0x00000011 
+ 00026517  0x00006fe4 isub  0x00000002 , 0x0000003e 
+ 00026518  0x00006fe5 nrtn  0x00000005 
+ 00026519  0x00006fe6 copy  0x00000006 , 0x00000011 
+ 00026520  0x00006fe7 add  0x00000006 , 0x00000008 , 0x00000013 
+ 00026521  0x00006fe8 arg  0x000044cd , 0x00000012 
+ 00026522  0x00006fe9 arg  0x00000008 , 0x00000039 
+ 00026523  0x00006fea call  0x00007f88 
+ 00026524  0x00006feb branch  0x00007fe7 , 0x00000005 
+ 00026525  0x00006fec copy  0x00000013 , 0x00000011 
+ 00026526  0x00006fed arg  0x000044d5 , 0x00000012 
+ 00026527  0x00006fee arg  0x00000008 , 0x00000039 
+ 00026528  0x00006fef call  0x00007f88 
+ 00026529  0x00006ff0 branch  0x00007fe7 , 0x00000005 
+ 00026530  0x00006ff1 rtn 
+ 00026531  0x00006ff4 fetch  0x00000002 , 0x00004215 
+ 00026532  0x00006ff5 ifetcht  0x00000001 , 0x0000003f 
+ 00026533  0x00006ff6 pincrease  0x00000022 
+ 00026534  0x00006ff7 ifetch  0x00000001 , 0x0000003f 
+ 00026535  0x00006ff8 isub  0x00000002 , 0x0000003e 
+ 00026536  0x00006ff9 rtn 
+ 00026537  0x00006ffc fetch  0x00000001 , 0x00004217 
+ 00026538  0x00006ffd icopy  0x00000039 
+ 00026539  0x00006ffe fetcht  0x00000002 , 0x00004215 
+ 00026540  0x00006fff setarg  0x00000000 
+ 00026541  0x00007001 istore  0x00000001 , 0x00000002 
+ 00026542  0x00007002 increase  0x00000022 , 0x00000002 
+ 00026543  0x00007003 pincrease  0x00000001 
+ 00026544  0x00007004 loop  0x000067ad 
+ 00026545  0x00007005 rtn 
+ 00026546  0x00007008 bpatchx  0x00000099 , 0x00004033 
+ 00026547  0x00007009 call  0x0000673e 
+ 00026548  0x0000700a fetch  0x00000001 , 0x00000030 
+ 00026549  0x0000700b setflag  0x00000028 , 0x00000006 , 0x0000003f 
+ 00026550  0x0000700c store  0x00000001 , 0x00000030 
+ 00026551  0x0000700d nbranch  0x000067bc , 0x00000028 
+ 00026552  0x0000700e add  0x00000011 , 0x0000000a , 0x00000006 
+ 00026553  0x00007010 arg  0x000041be , 0x00000005 
+ 00026554  0x00007011 call  0x00007ebf 
+ 00026555  0x00007012 branch  0x000067d7 
+ 00026556  0x00007014 jam  0x00000000 , 0x000041bd 
+ 00026557  0x00007015 rtn 
+ 00026558  0x00007018 fetch  0x00000009 , 0x000044cb 
+ 00026559  0x00007019 branch  0x000067ca , 0x00000034 
+ 00026560  0x0000701a call  0x0000673e 
+ 00026561  0x0000701b nbranch  0x000067ca , 0x00000028 
+ 00026562  0x0000701c fetch  0x00000002 , 0x0000018c 
+ 00026563  0x0000701d add  0x0000003f , 0x00000001 , 0x00000006 
+ 00026564  0x0000701e arg  0x000044d5 , 0x00000005 
+ 00026565  0x0000701f call  0x00007ebf 
+ 00026566  0x00007020 arg  0x00004419 , 0x00000005 
+ 00026567  0x00007021 call  0x00007ebf 
+ 00026568  0x00007022 jam  0x00000001 , 0x00004429 
+ 00026569  0x00007023 rtn 
+ 00026570  0x00007026 jam  0x00000000 , 0x00004429 
+ 00026571  0x00007027 rtn 
+ 00026572  0x0000702b fetch  0x00000006 , 0x0000044f 
+ 00026573  0x0000702c store  0x00000006 , 0x00000186 
+ 00026574  0x0000702d jam  0x00000034 , 0x00000185 
+ 00026575  0x0000702e branch  0x000067d3 
+ 00026576  0x00007030 fetch  0x00000006 , 0x00000040 
+ 00026577  0x00007031 store  0x00000006 , 0x00000186 
+ 00026578  0x00007032 jam  0x00000033 , 0x00000185 
+ 00026579  0x00007034 fetch  0x00000001 , 0x00004092 
+ 00026580  0x00007035 beq  0x0000000a , 0x0000670b 
+ 00026581  0x00007036 bbit1  0x00000006 , 0x000042da 
+ 00026582  0x00007037 rtn 
+ 00026583  0x0000703b fetch  0x00000008 , 0x000041be 
+ 00026584  0x0000703c fetcht  0x00000008 , 0x000041c6 
+ 00026585  0x0000703d ior  0x00000002 , 0x0000003f 
+ 00026586  0x0000703e rtn  0x00000034 
+ 00026587  0x0000703f jam  0x00000001 , 0x000041bd 
+ 00026588  0x00007040 rtn 
+ 00026589  0x00007048 bpatchx  0x0000009a , 0x00004033 
+ 00026590  0x00007049 set1  0x00000007 , 0x00000002 
+ 00026591  0x0000704a call  0x0000681d 
+ 00026592  0x0000704b nsetflag  0x00000001 , 0x00000007 , 0x00000002 
+ 00026593  0x00007051 bpatchx  0x0000009b , 0x00004033 
+ 00026594  0x00007052 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026595  0x00007053 rtn  0x00000005 
+ 00026596  0x00007054 isolate0  0x00000007 , 0x00000002 
+ 00026597  0x00007055 and  0x00000002 , 0x0000001f , 0x00000007 
+ 00026598  0x00007056 fetch  0x00000004 , 0x000000a1 
+ 00026599  0x00007057 qsetflag  0x00000001 , 0x0000003f 
+ 00026600  0x00007058 store  0x00000004 , 0x000000a1 
+ 00026601  0x00007059 fetch  0x00000004 , 0x000000a5 
+ 00026602  0x0000705a nqsetflag  0x00000001 , 0x0000003f 
+ 00026603  0x0000705b store  0x00000004 , 0x000000a5 
+ 00026604  0x0000705c rtn 
+ 00026605  0x00007060 bpatchx  0x0000009c , 0x00004033 
+ 00026606  0x00007061 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026607  0x00007062 rtn  0x00000005 
+ 00026608  0x00007063 isolate0  0x00000007 , 0x00000002 
+ 00026609  0x00007064 and  0x00000002 , 0x0000001f , 0x00000007 
+ 00026610  0x00007065 fetch  0x00000004 , 0x000000a1 
+ 00026611  0x00007066 qset0  0x0000003f 
+ 00026612  0x00007067 store  0x00000004 , 0x000000a1 
+ 00026613  0x00007068 fetch  0x00000004 , 0x000000a5 
+ 00026614  0x00007069 qset0  0x0000003f 
+ 00026615  0x0000706a store  0x00000004 , 0x000000a5 
+ 00026616  0x0000706b rtn 
+ 00026617  0x0000706f call  0x000067ed 
+ 00026618  0x00007070 branch  0x000067fe 
+ 00026619  0x00007074 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026620  0x00007075 rtn  0x00000005 
+ 00026621  0x00007076 ncall  0x000067e1 , 0x0000002b 
+ 00026622  0x00007079 arg  0x0000807c , 0x00000005 
+ 00026623  0x0000707a call  0x00006830 
+ 00026624  0x0000707b setflip  0x00000007 , 0x00000002 
+ 00026625  0x0000707c arg  0x00008078 , 0x00000005 
+ 00026626  0x0000707d call  0x00006830 
+ 00026627  0x0000707e set0  0x00000007 , 0x00000002 
+ 00026628  0x0000707f arg  0x00008070 , 0x00000005 
+ 00026629  0x00007080 branch  0x00006830 
+ 00026630  0x00007084 arg  0x0000807c , 0x00000005 
+ 00026631  0x00007085 call  0x00006830 
+ 00026632  0x00007086 set0  0x00000007 , 0x00000002 
+ 00026633  0x00007087 arg  0x00008078 , 0x00000005 
+ 00026634  0x00007088 call  0x00006830 
+ 00026635  0x00007089 set0  0x00000007 , 0x00000002 
+ 00026636  0x0000708a arg  0x00008070 , 0x00000005 
+ 00026637  0x0000708b branch  0x00006830 
+ 00026638  0x00007090 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026639  0x00007091 rtn  0x00000005 
+ 00026640  0x00007092 setflip  0x00000007 , 0x00000002 
+ 00026641  0x00007093 call  0x0000682f 
+ 00026642  0x00007095 set1  0x00000007 , 0x00000002 
+ 00026643  0x00007096 arg  0x00008070 , 0x00000005 
+ 00026644  0x00007097 branch  0x00006830 
+ 00026645  0x0000709a and  0x00000002 , 0x00000007 , 0x00000007 
+ 00026646  0x0000709b rshift3  0x00000002 , 0x0000003f 
+ 00026647  0x0000709c and_into  0x00000003 , 0x0000003f 
+ 00026648  0x0000709d iadd  0x00000005 , 0x00000005 
+ 00026649  0x0000709e ifetch  0x00000001 , 0x00000005 
+ 00026650  0x0000709f rtn 
+ 00026651  0x000070a2 arg  0x00008074 , 0x00000005 
+ 00026652  0x000070a3 branch  0x0000681e 
+ 00026653  0x000070a8 arg  0x0000811c , 0x00000005 
+ 00026654  0x000070aa call  0x00006815 
+ 00026655  0x000070ab isolate1  0x00000007 , 0x00000002 
+ 00026656  0x000070ac branch  0x00006823 , 0x00000001 
+ 00026657  0x000070ad qisolate0  0x0000003f 
+ 00026658  0x000070ae rtn 
+ 00026659  0x000070b0 qisolate1  0x0000003f 
+ 00026660  0x000070b1 rtn 
+ 00026661  0x000070b4 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026662  0x000070b5 rtn  0x00000005 
+ 00026663  0x000070b6 isolate1  0x00000007 , 0x0000003e 
+ 00026664  0x000070b7 branch  0x0000682c 
+ 00026665  0x000070ba sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026666  0x000070bb rtn  0x00000005 
+ 00026667  0x000070bc isolate0  0x00000007 , 0x0000003e 
+ 00026668  0x000070c0 setarg  0x00000000 
+ 00026669  0x000070c1 nsetflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00026670  0x000070c2 ixor  0x00000002 , 0x00000002 
+ 00026671  0x000070c6 arg  0x00008074 , 0x00000005 
+ 00026672  0x000070ca call  0x00006815 
+ 00026673  0x000070cb isolate1  0x00000007 , 0x00000002 
+ 00026674  0x000070cc qsetflag  0x00000001 , 0x0000003f 
+ 00026675  0x000070cd istore  0x00000001 , 0x00000005 
+ 00026676  0x000070ce rtn 
+ 00026677  0x000070d1 arg  0xffffffff , 0x00000011 
+ 00026678  0x000070d2 hfetch  0x00000001 , 0x00008081 
+ 00026679  0x000070d3 compare  0x00000002 , 0x0000003f , 0x00000003 
+ 00026680  0x000070d4 call  0x00006878 , 0x00000001 
+ 00026681  0x000070d6 compare  0x00000001 , 0x0000003f , 0x00000003 
+ 00026682  0x000070d7 call  0x0000687a , 0x00000001 
+ 00026683  0x000070d9 compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00026684  0x000070da call  0x0000687a , 0x00000001 
+ 00026685  0x000070dc isolate1  0x00000002 , 0x0000003f 
+ 00026686  0x000070dd call  0x00006874 , 0x00000001 
+ 00026687  0x000070df isolate1  0x00000003 , 0x0000003f 
+ 00026688  0x000070e0 call  0x00006876 , 0x00000001 
+ 00026689  0x000070e2 isolate1  0x00000004 , 0x0000003f 
+ 00026690  0x000070e3 call  0x0000687c , 0x00000001 
+ 00026691  0x000070e5 isolate1  0x00000006 , 0x0000003f 
+ 00026692  0x000070e6 nsetflag  0x00000001 , 0x00000004 , 0x00000011 
+ 00026693  0x000070e8 isolate1  0x00000007 , 0x0000003f 
+ 00026694  0x000070e9 nsetflag  0x00000001 , 0x00000005 , 0x00000011 
+ 00026695  0x000070eb hfetch  0x00000001 , 0x00008082 
+ 00026696  0x000070ec isolate1  0x00000000 , 0x0000003f 
+ 00026697  0x000070ed nsetflag  0x00000001 , 0x0000001b , 0x00000011 
+ 00026698  0x000070ee isolate1  0x00000001 , 0x0000003f 
+ 00026699  0x000070ef nsetflag  0x00000001 , 0x0000001c , 0x00000011 
+ 00026700  0x000070f0 isolate1  0x00000002 , 0x0000003f 
+ 00026701  0x000070f1 nsetflag  0x00000001 , 0x00000003 , 0x00000011 
+ 00026702  0x000070f2 isolate1  0x00000003 , 0x0000003f 
+ 00026703  0x000070f3 nsetflag  0x00000001 , 0x00000008 , 0x00000011 
+ 00026704  0x000070f4 isolate1  0x00000004 , 0x0000003f 
+ 00026705  0x000070f5 nsetflag  0x00000001 , 0x00000014 , 0x00000011 
+ 00026706  0x000070f6 isolate1  0x00000005 , 0x0000003f 
+ 00026707  0x000070f7 nsetflag  0x00000001 , 0x00000015 , 0x00000011 
+ 00026708  0x000070f8 isolate1  0x00000006 , 0x0000003f 
+ 00026709  0x000070f9 nsetflag  0x00000001 , 0x00000016 , 0x00000011 
+ 00026710  0x000070fa isolate1  0x00000007 , 0x0000003f 
+ 00026711  0x000070fb nsetflag  0x00000001 , 0x00000017 , 0x00000011 
+ 00026712  0x000070fd hfetch  0x00000001 , 0x00008080 
+ 00026713  0x000070fe isolate1  0x00000000 , 0x0000003f 
+ 00026714  0x000070ff nsetflag  0x00000001 , 0x00000005 , 0x00000011 
+ 00026715  0x00007100 isolate1  0x00000001 , 0x0000003f 
+ 00026716  0x00007101 nsetflag  0x00000001 , 0x00000006 , 0x00000011 
+ 00026717  0x00007102 isolate1  0x00000002 , 0x0000003f 
+ 00026718  0x00007103 nsetflag  0x00000001 , 0x00000007 , 0x00000011 
+ 00026719  0x00007104 isolate1  0x00000003 , 0x0000003f 
+ 00026720  0x00007105 nsetflag  0x00000001 , 0x00000012 , 0x00000011 
+ 00026721  0x00007106 isolate1  0x00000004 , 0x0000003f 
+ 00026722  0x00007107 nsetflag  0x00000001 , 0x00000013 , 0x00000011 
+ 00026723  0x00007108 isolate1  0x00000005 , 0x0000003f 
+ 00026724  0x00007109 nsetflag  0x00000001 , 0x00000014 , 0x00000011 
+ 00026725  0x0000710a isolate1  0x00000006 , 0x0000003f 
+ 00026726  0x0000710b nsetflag  0x00000001 , 0x00000015 , 0x00000011 
+ 00026727  0x0000710c isolate1  0x00000007 , 0x0000003f 
+ 00026728  0x0000710d nsetflag  0x00000001 , 0x00000016 , 0x00000011 
+ 00026729  0x0000710f hfetch  0x00000001 , 0x00008062 
+ 00026730  0x00007110 isolate1  0x00000004 , 0x0000003f 
+ 00026731  0x00007111 call  0x0000687e , 0x00000001 
+ 00026732  0x00007112 bpatchx  0x0000009d , 0x00004033 
+ 00026733  0x00007114 hfetch  0x00000004 , 0x00008078 
+ 00026734  0x00007115 hfetcht  0x00000004 , 0x0000807c 
+ 00026735  0x00007116 ior  0x00000002 , 0x0000003f 
+ 00026736  0x00007117 invert  0x0000003f , 0x0000003f 
+ 00026737  0x00007118 iand  0x00000011 , 0x0000003f 
+ 00026738  0x0000711a hstore  0x00000004 , 0x00008070 
+ 00026739  0x0000711b rtn 
+ 00026740  0x0000711f arg  0x00000006 , 0x00000007 
+ 00026741  0x00007120 branch  0x00006884 
+ 00026742  0x00007122 arg  0x00000009 , 0x00000007 
+ 00026743  0x00007123 branch  0x00006882 
+ 00026744  0x00007125 arg  0x00000017 , 0x00000007 
+ 00026745  0x00007126 branch  0x00006882 
+ 00026746  0x00007128 arg  0x00000019 , 0x00000007 
+ 00026747  0x00007129 branch  0x00006884 
+ 00026748  0x0000712b arg  0x0000001e , 0x00000007 
+ 00026749  0x0000712c branch  0x00006884 
+ 00026750  0x0000712e arg  0x00000002 , 0x00000007 
+ 00026751  0x0000712f branch  0x00006884 
+ 00026752  0x00007131 arg  0x00000001 , 0x00000039 
+ 00026753  0x00007132 branch  0x00006885 
+ 00026754  0x00007134 arg  0x00000004 , 0x00000039 
+ 00026755  0x00007135 branch  0x00006885 
+ 00026756  0x00007137 arg  0x00000002 , 0x00000039 
+ 00026757  0x00007139 qset0  0x00000011 
+ 00026758  0x0000713a increase  0x00000001 , 0x00000007 
+ 00026759  0x0000713b loop  0x00006885 
+ 00026760  0x0000713c rtn 
+ 00026761  0x00007145 call  0x00006895 
+ 00026762  0x00007146 arg  0x00000006 , 0x00000002 
+ 00026763  0x00007147 branch  0x0000680e 
+ 00026764  0x0000714a call  0x00006889 
+ 00026765  0x0000714b arg  0x00000006 , 0x00000002 
+ 00026766  0x0000714c branch  0x00006825 
+ 00026767  0x00007151 call  0x00006895 
+ 00026768  0x00007152 hfetch  0x00000001 , 0x00008078 
+ 00026769  0x00007153 set1  0x00000007 , 0x0000003f 
+ 00026770  0x00007154 hstore  0x00000001 , 0x00008078 
+ 00026771  0x00007155 arg  0x00000007 , 0x00000002 
+ 00026772  0x00007156 branch  0x000067fb 
+ 00026773  0x00007159 hfetch  0x00000001 , 0x00008081 
+ 00026774  0x0000715a and_into  0x000000fb , 0x0000003f 
+ 00026775  0x0000715b hstore  0x00000001 , 0x00008081 
+ 00026776  0x0000715c rtn 
+ 00026777  0x0000715f hfetch  0x00000001 , 0x00008081 
+ 00026778  0x00007160 isolate1  0x00000002 , 0x0000003f 
+ 00026779  0x00007161 rtn 
+ 00026780  0x00007164 call  0x0000666a 
+ 00026781  0x00007165 setarg  0x000007e0 
+ 00026782  0x00007166 arg  0x00004150 , 0x00000011 
+ 00026783  0x00007167 arg  0x00000002 , 0x00000002 
+ 00026784  0x00007168 call  0x000066b3 
+ 00026785  0x00007169 branch  0x0000666d 
+ 00026786  0x0000716d call  0x0000666a 
+ 00026787  0x0000716e setarg  0x000007e2 
+ 00026788  0x0000716f arg  0x0000421d , 0x00000011 
+ 00026789  0x00007170 arg  0x0000000e , 0x00000002 
+ 00026790  0x00007171 call  0x000066b3 
+ 00026791  0x00007172 branch  0x0000666d 
+ 00026792  0x00007177 bpatchx  0x0000009e , 0x00004033 
+ 00026793  0x00007179 call  0x000068a2 
+ 00026794  0x0000717b fetch  0x00000001 , 0x0000422d 
+ 00026795  0x0000717c beq  0x00000000 , 0x000068af 
+ 00026796  0x0000717d beq  0x00000001 , 0x000068c3 
+ 00026797  0x0000717e beq  0x00000002 , 0x000068d7 
+ 00026798  0x0000717f rtn 
+ 00026799  0x00007182 fetcht  0x00000002 , 0x00004229 
+ 00026800  0x00007183 setarg  0x0000aa55 
+ 00026801  0x00007184 isub  0x00000002 , 0x0000003e 
+ 00026802  0x00007185 branch  0x000068b8 , 0x00000005 
+ 00026803  0x00007186 setarg  0x00004dfa 
+ 00026804  0x00007187 store  0x00000002 , 0x00004227 
+ 00026805  0x00007188 setarg  0x00004894 
+ 00026806  0x00007189 store  0x00000002 , 0x00004221 
+ 00026807  0x0000718a branch  0x000068c0 
+ 00026808  0x0000718d fetch  0x00000002 , 0x00004227 
+ 00026809  0x0000718e nbranch  0x000068bc , 0x00000034 
+ 00026810  0x0000718f setarg  0x00004dfa 
+ 00026811  0x00007190 store  0x00000002 , 0x00004227 
+ 00026812  0x00007192 fetch  0x00000002 , 0x00004221 
+ 00026813  0x00007193 nbranch  0x000068c0 , 0x00000034 
+ 00026814  0x00007194 setarg  0x00004894 
+ 00026815  0x00007195 store  0x00000002 , 0x00004221 
+ 00026816  0x00007197 setarg  0x00000064 
+ 00026817  0x00007198 store  0x00000002 , 0x0000422b 
+ 00026818  0x00007199 rtn 
+ 00026819  0x0000719c fetcht  0x00000002 , 0x00004229 
+ 00026820  0x0000719d setarg  0x0000aa55 
+ 00026821  0x0000719e isub  0x00000002 , 0x0000003e 
+ 00026822  0x0000719f branch  0x000068cc , 0x00000005 
+ 00026823  0x000071a0 setarg  0x00005932 
+ 00026824  0x000071a1 store  0x00000002 , 0x00004225 
+ 00026825  0x000071a2 setarg  0x00004323 
+ 00026826  0x000071a3 store  0x00000002 , 0x0000421f 
+ 00026827  0x000071a4 branch  0x000068d4 
+ 00026828  0x000071a7 fetch  0x00000002 , 0x00004225 
+ 00026829  0x000071a8 nbranch  0x000068d0 , 0x00000034 
+ 00026830  0x000071a9 setarg  0x00005932 
+ 00026831  0x000071aa store  0x00000002 , 0x00004225 
+ 00026832  0x000071ac fetch  0x00000002 , 0x0000421f 
+ 00026833  0x000071ad nbranch  0x000068d4 , 0x00000034 
+ 00026834  0x000071ae setarg  0x00004323 
+ 00026835  0x000071af store  0x00000002 , 0x0000421f 
+ 00026836  0x000071b1 setarg  0x00000190 
+ 00026837  0x000071b2 store  0x00000002 , 0x0000422b 
+ 00026838  0x000071b3 rtn 
+ 00026839  0x000071b6 fetcht  0x00000002 , 0x00004229 
+ 00026840  0x000071b7 setarg  0x0000aa55 
+ 00026841  0x000071b8 isub  0x00000002 , 0x0000003e 
+ 00026842  0x000071b9 branch  0x000068e0 , 0x00000005 
+ 00026843  0x000071ba setarg  0x00006946 
+ 00026844  0x000071bb store  0x00000002 , 0x00004223 
+ 00026845  0x000071bc setarg  0x00005377 
+ 00026846  0x000071bd store  0x00000002 , 0x0000421d 
+ 00026847  0x000071be branch  0x000068e8 
+ 00026848  0x000071c1 fetch  0x00000002 , 0x00004223 
+ 00026849  0x000071c2 nbranch  0x000068e4 , 0x00000034 
+ 00026850  0x000071c3 setarg  0x00006946 
+ 00026851  0x000071c4 store  0x00000002 , 0x00004223 
+ 00026852  0x000071c6 fetch  0x00000002 , 0x0000421d 
+ 00026853  0x000071c7 nbranch  0x000068e8 , 0x00000034 
+ 00026854  0x000071c8 setarg  0x00005377 
+ 00026855  0x000071c9 store  0x00000002 , 0x0000421d 
+ 00026856  0x000071cb setarg  0x00000032 
+ 00026857  0x000071cc store  0x00000002 , 0x0000422b 
+ 00026858  0x000071cd rtn 
+ 00026859  0x000071d1 fetch  0x00000001 , 0x0000422d 
+ 00026860  0x000071d2 beq  0x00000000 , 0x000068f0 
+ 00026861  0x000071d3 beq  0x00000001 , 0x000068f2 
+ 00026862  0x000071d4 beq  0x00000002 , 0x000068f4 
+ 00026863  0x000071d5 rtn 
+ 00026864  0x000071d7 jam  0x000000bf , 0x00008971 
+ 00026865  0x000071d8 branch  0x000068f8 
+ 00026866  0x000071da jam  0x000000af , 0x00008971 
+ 00026867  0x000071db branch  0x000068f8 
+ 00026868  0x000071dd jam  0x0000008f , 0x00008971 
+ 00026869  0x000071de fetch  0x00000001 , 0x0000422e 
+ 00026870  0x000071df hstore  0x00000001 , 0x00008973 
+ 00026871  0x000071e0 branch  0x000068f8 
+ 00026872  0x000071e2 bpatchx  0x0000009f , 0x00004033 
+ 00026873  0x000071e3 hfetch  0x00000001 , 0x00008053 
+ 00026874  0x000071e4 set1  0x00000007 , 0x0000003f 
+ 00026875  0x000071e5 hstore  0x00000001 , 0x00008053 
+ 00026876  0x000071e6 hfetch  0x00000001 , 0x00008973 
+ 00026877  0x000071e7 or_into  0x00000030 , 0x0000003f 
+ 00026878  0x000071e8 hstore  0x00000001 , 0x00008973 
+ 00026879  0x000071e9 jam  0x0000007c , 0x00008906 
+ 00026880  0x000071ea jam  0x000000aa , 0x00008972 
+ 00026881  0x000071eb nop  0x00001388 
+ 00026882  0x000071ec hfetcht  0x00000002 , 0x00008150 
+ 00026883  0x000071ed hfetch  0x00000001 , 0x00008053 
+ 00026884  0x000071ee set0  0x00000007 , 0x0000003f 
+ 00026885  0x000071ef hstore  0x00000001 , 0x00008053 
+ 00026886  0x000071f0 storet  0x00000002 , 0x0000422f 
+ 00026887  0x000071f1 rtn 
+ 00026888  0x000071f4 bpatchx  0x000000a0 , 0x00004034 
+ 00026889  0x000071f5 fetch  0x00000001 , 0x0000422d 
+ 00026890  0x000071f6 beq  0x00000000 , 0x0000690e 
+ 00026891  0x000071f7 beq  0x00000001 , 0x00006912 
+ 00026892  0x000071f8 beq  0x00000002 , 0x00006916 
+ 00026893  0x000071f9 rtn 
+ 00026894  0x000071fc fetch  0x00000002 , 0x00004227 
+ 00026895  0x000071fd fetcht  0x00000002 , 0x00004221 
+ 00026896  0x000071fe arg  0x000000c8 , 0x00000013 
+ 00026897  0x000071ff branch  0x0000691a 
+ 00026898  0x00007202 fetch  0x00000002 , 0x00004225 
+ 00026899  0x00007203 fetcht  0x00000002 , 0x0000421f 
+ 00026900  0x00007204 arg  0x00000064 , 0x00000013 
+ 00026901  0x00007205 branch  0x0000691a 
+ 00026902  0x00007208 fetch  0x00000002 , 0x00004223 
+ 00026903  0x00007209 fetcht  0x00000002 , 0x0000421d 
+ 00026904  0x0000720a arg  0x00000032 , 0x00000013 
+ 00026905  0x0000720b branch  0x0000691a 
+ 00026906  0x0000720e isub  0x00000002 , 0x00000011 
+ 00026907  0x0000720f fetch  0x00000002 , 0x0000422f 
+ 00026908  0x00007210 isub  0x00000002 , 0x0000003f 
+ 00026909  0x00007211 nbranch  0x00006927 , 0x00000002 
+ 00026910  0x00007212 fetcht  0x00000002 , 0x0000422b 
+ 00026911  0x00007213 imul32  0x00000002 , 0x00000012 
+ 00026912  0x00007214 copy  0x00000013 , 0x0000003f 
+ 00026913  0x00007215 imul32  0x00000011 , 0x0000003f 
+ 00026914  0x00007216 iadd  0x00000012 , 0x0000003f 
+ 00026915  0x00007218 idiv  0x00000011 
+ 00026916  0x00007219 call  0x00007f86 
+ 00026917  0x0000721a quotient  0x0000003f 
+ 00026918  0x0000721b rtn 
+ 00026919  0x0000721e copy  0x00000002 , 0x0000003f 
+ 00026920  0x0000721f fetcht  0x00000002 , 0x0000422f 
+ 00026921  0x00007220 isub  0x00000002 , 0x0000003f 
+ 00026922  0x00007221 fetcht  0x00000002 , 0x0000422b 
+ 00026923  0x00007222 imul32  0x00000002 , 0x00000012 
+ 00026924  0x00007223 copy  0x00000013 , 0x0000003f 
+ 00026925  0x00007224 imul32  0x00000011 , 0x0000003f 
+ 00026926  0x00007225 isub  0x00000012 , 0x0000003f 
+ 00026927  0x00007226 branch  0x00006923 
+ 00026928  0x00007232 ifetch  0x00000008 , 0x00000011 
+ 00026929  0x00007233 store  0x00000008 , 0x00000a9a 
+ 00026930  0x00007234 fetch  0x00000002 , 0x00000a9a 
+ 00026931  0x00007235 fetcht  0x00000002 , 0x00000a9c 
+ 00026932  0x00007236 isub  0x00000002 , 0x00000011 
+ 00026933  0x00007237 fetch  0x00000002 , 0x00000aa0 
+ 00026934  0x00007238 isub  0x00000002 , 0x00000012 
+ 00026935  0x00007239 fetcht  0x00000002 , 0x00000a9e 
+ 00026936  0x0000723a isub  0x00000002 , 0x0000003e 
+ 00026937  0x0000723b ncall  0x00006940 , 0x00000002 
+ 00026938  0x0000723c mul32  0x00000012 , 0x00000064 , 0x0000003f 
+ 00026939  0x0000723d idiv  0x00000011 
+ 00026940  0x0000723e call  0x00007f86 
+ 00026941  0x0000723f quotient  0x0000003f 
+ 00026942  0x00007240 call  0x00006944 , 0x00000034 
+ 00026943  0x00007241 rtn 
+ 00026944  0x00007243 fetch  0x00000001 , 0x00004231 
+ 00026945  0x00007244 set1  0x00000000 , 0x0000003f 
+ 00026946  0x00007245 store  0x00000001 , 0x00004231 
+ 00026947  0x00007246 rtn 
+ 00026948  0x00007248 fetcht  0x00000001 , 0x00004231 
+ 00026949  0x00007249 set1  0x00000001 , 0x00000002 
+ 00026950  0x0000724a storet  0x00000001 , 0x00004231 
+ 00026951  0x0000724b rtn 
+ 00026952  0x00007251 fetch  0x00000002 , 0x0000423d 
+ 00026953  0x00007252 ifetch  0x00000001 , 0x0000003f 
+ 00026954  0x00007254 rtn  0x00000034 
+ 00026955  0x00007255 copy  0x0000003f , 0x00000039 
+ 00026956  0x00007257 fetch  0x00000002 , 0x0000423d 
+ 00026957  0x00007258 increase  0x00000003 , 0x0000003f 
+ 00026958  0x00007259 copy  0x0000003f , 0x00000011 
+ 00026959  0x0000725b ifetcht  0x00000001 , 0x00000011 
+ 00026960  0x0000725c call  0x000067fb 
+ 00026961  0x0000725d increase  0x00000001 , 0x00000011 
+ 00026962  0x0000725e loop  0x0000694f 
+ 00026963  0x00007260 rtn 
+ 00026964  0x00007263 fetch  0x00000002 , 0x0000423d 
+ 00026965  0x00007264 increase  0x00000003 , 0x0000003f 
+ 00026966  0x00007265 copy  0x0000003f , 0x00000011 
+ 00026967  0x00007267 force  0x00000000 , 0x00000012 
+ 00026968  0x00007268 jam  0x00000000 , 0x00000b12 
+ 00026969  0x0000726a ifetcht  0x00000001 , 0x00000011 
+ 00026970  0x0000726b call  0x0000681d 
+ 00026971  0x0000726c bpatchx  0x000000a1 , 0x00004034 
+ 00026972  0x0000726d fetch  0x00000002 , 0x00000b12 
+ 00026973  0x0000726e copy  0x00000012 , 0x00000007 
+ 00026974  0x0000726f qsetflag  0x00000001 , 0x0000003f 
+ 00026975  0x00007270 store  0x00000002 , 0x00000b12 
+ 00026976  0x00007271 increase  0x00000001 , 0x00000011 
+ 00026977  0x00007272 increase  0x00000001 , 0x00000012 
+ 00026978  0x00007273 fetch  0x00000002 , 0x0000423d 
+ 00026979  0x00007274 ifetch  0x00000001 , 0x0000003f 
+ 00026980  0x00007276 ixor  0x00000012 , 0x0000003e 
+ 00026981  0x00007277 nbranch  0x00006959 , 0x00000005 
+ 00026982  0x00007278 fetch  0x00000002 , 0x00000b12 
+ 00026983  0x00007279 fetcht  0x00000002 , 0x00000b14 
+ 00026984  0x0000727a ixor  0x00000002 , 0x0000003e 
+ 00026985  0x0000727b rtn  0x00000005 
+ 00026986  0x0000727c enable  0x00000028 
+ 00026987  0x0000727d rtn 
+ 00026988  0x00007280 fetch  0x00000002 , 0x0000423d 
+ 00026989  0x00007281 ifetch  0x00000001 , 0x0000003f 
+ 00026990  0x00007283 rtn  0x00000034 
+ 00026991  0x00007284 copy  0x0000003f , 0x00000039 
+ 00026992  0x00007285 fetch  0x00000002 , 0x0000423d 
+ 00026993  0x00007286 increase  0x00000003 , 0x0000003f 
+ 00026994  0x00007287 copy  0x0000003f , 0x00000011 
+ 00026995  0x00007289 ifetcht  0x00000001 , 0x00000011 
+ 00026996  0x0000728a call  0x000067dd 
+ 00026997  0x0000728b increase  0x00000001 , 0x00000011 
+ 00026998  0x0000728c loop  0x00006973 
+ 00026999  0x0000728e rtn 
+ 00027000  0x00007291 arg  0x00000009 , 0x00000007 
+ 00027001  0x00007292 call  0x00007f16 
+ 00027002  0x00007293 nrtn  0x00000034 
+ 00027003  0x00007294 setarg  0x00000020 
+ 00027004  0x00007295 arg  0x00000009 , 0x00000007 
+ 00027005  0x00007296 call  0x00007f08 
+ 00027006  0x00007297 disable  0x00000028 
+ 00027007  0x00007298 call  0x0000696c 
+ 00027008  0x00007299 bpatchx  0x000000a2 , 0x00004034 
+ 00027009  0x0000729a fetch  0x00000002 , 0x0000423d 
+ 00027010  0x0000729b ifetch  0x00000001 , 0x0000003f 
+ 00027011  0x0000729d rtn  0x00000034 
+ 00027012  0x0000729e call  0x00006954 
+ 00027013  0x0000729f nbranch  0x00007d02 , 0x00000028 
+ 00027014  0x000072a0 call  0x00007d00 
+ 00027015  0x000072a1 disable  0x00000028 
+ 00027016  0x000072a2 fetch  0x00000002 , 0x00000b12 
+ 00027017  0x000072a3 store  0x00000002 , 0x00000b19 
+ 00027018  0x000072a4 jam  0x00000000 , 0x00000b1b 
+ 00027019  0x000072a5 force  0x00000000 , 0x00000007 
+ 00027020  0x000072a7 fetch  0x00000002 , 0x00000b14 
+ 00027021  0x000072a8 rshift  0x0000003f , 0x00000002 
+ 00027022  0x000072a9 storet  0x00000002 , 0x00000b14 
+ 00027023  0x000072aa and  0x0000003f , 0x00000001 , 0x0000003f 
+ 00027024  0x000072ab fetcht  0x00000002 , 0x00000b19 
+ 00027025  0x000072ac and  0x00000002 , 0x00000001 , 0x00000011 
+ 00027026  0x000072ad rshift  0x00000002 , 0x00000002 
+ 00027027  0x000072ae storet  0x00000002 , 0x00000b19 
+ 00027028  0x000072af ixor  0x00000011 , 0x0000003e 
+ 00027029  0x000072b0 ncall  0x000069a1 , 0x00000005 
+ 00027030  0x000072b1 fetch  0x00000002 , 0x0000423d 
+ 00027031  0x000072b2 ifetch  0x00000001 , 0x0000003f 
+ 00027032  0x000072b4 fetcht  0x00000001 , 0x00000b1b 
+ 00027033  0x000072b5 increase  0x00000001 , 0x00000002 
+ 00027034  0x000072b6 storet  0x00000001 , 0x00000b1b 
+ 00027035  0x000072b7 copy  0x00000002 , 0x00000007 
+ 00027036  0x000072b8 ixor  0x00000007 , 0x0000003e 
+ 00027037  0x000072b9 nbranch  0x0000698c , 0x00000005 
+ 00027038  0x000072ba fetch  0x00000002 , 0x00000b12 
+ 00027039  0x000072bb store  0x00000002 , 0x00000b14 
+ 00027040  0x000072bc rtn 
+ 00027041  0x000072be bpatchx  0x000000a3 , 0x00004034 
+ 00027042  0x000072bf fetch  0x00000002 , 0x0000423d 
+ 00027043  0x000072c0 increase  0x00000001 , 0x0000003f 
+ 00027044  0x000072c1 ifetch  0x00000002 , 0x0000003f 
+ 00027045  0x000072c2 branch  0x00007f9c 
+ 00027046  0x000072ce hfetch  0x00000001 , 0x00008042 
+ 00027047  0x000072cf ior  0x00000011 , 0x0000003f 
+ 00027048  0x000072d0 hstore  0x00000001 , 0x00008042 
+ 00027049  0x000072d1 hfetch  0x00000002 , 0x00008050 
+ 00027050  0x000072d2 set0  0x0000000d , 0x0000003f 
+ 00027051  0x000072d3 hstore  0x00000002 , 0x00008050 
+ 00027052  0x000072d5 nop  0x00000064 
+ 00027053  0x000072d6 rtn 
+ 00027054  0x000072e2 fetcht  0x00000003 , 0x00000a9c 
+ 00027055  0x000072e3 setarg  0x00b71b00 
+ 00027056  0x000072e4 idiv  0x00000002 
+ 00027057  0x000072e5 call  0x00007f86 
+ 00027058  0x000072e6 quotient  0x00000002 
+ 00027059  0x000072e7 fetch  0x00000001 , 0x00000a9f 
+ 00027060  0x000072e8 imul32  0x00000002 , 0x0000003f 
+ 00027061  0x000072e9 div  0x0000003f , 0x00000064 
+ 00027062  0x000072ea call  0x00007f86 
+ 00027063  0x000072eb quotient  0x00000011 
+ 00027064  0x000072ec copy  0x00000002 , 0x0000003f 
+ 00027065  0x000072ed isub  0x00000011 , 0x00000012 
+ 00027066  0x000072ee fetch  0x00000001 , 0x00000a9b 
+ 00027067  0x000072ef call  0x000069be 
+ 00027068  0x000072f0 fetch  0x00000001 , 0x00000a9a 
+ 00027069  0x000072f1 branch  0x000069d5 
+ 00027070  0x000072f5 beq  0x00000000 , 0x000069c4 
+ 00027071  0x000072f6 beq  0x00000001 , 0x000069c6 
+ 00027072  0x000072f7 beq  0x00000002 , 0x000069c8 
+ 00027073  0x000072f8 beq  0x00000003 , 0x000069ca 
+ 00027074  0x000072f9 beq  0x00000004 , 0x000069cc 
+ 00027075  0x000072fa beq  0x00000005 , 0x000069ce 
+ 00027076  0x000072fc arg  0x000080a0 , 0x00000005 
+ 00027077  0x000072fd branch  0x000069d0 
+ 00027078  0x000072ff arg  0x000080a4 , 0x00000005 
+ 00027079  0x00007300 branch  0x000069d0 
+ 00027080  0x00007302 arg  0x000080a8 , 0x00000005 
+ 00027081  0x00007303 branch  0x000069d0 
+ 00027082  0x00007305 arg  0x00008064 , 0x00000005 
+ 00027083  0x00007306 branch  0x000069d0 
+ 00027084  0x00007308 arg  0x00008068 , 0x00000005 
+ 00027085  0x00007309 branch  0x000069d0 
+ 00027086  0x0000730b arg  0x0000806c , 0x00000005 
+ 00027087  0x0000730c branch  0x000069d0 
+ 00027088  0x0000730e copy  0x00000011 , 0x0000003f 
+ 00027089  0x0000730f istore  0x00000002 , 0x00000005 
+ 00027090  0x00007310 copy  0x00000012 , 0x0000003f 
+ 00027091  0x00007311 istore  0x00000002 , 0x00000005 
+ 00027092  0x00007312 rtn 
+ 00027093  0x00007317 enable  0x00000028 
+ 00027094  0x00007318 branch  0x000069d8 
+ 00027095  0x0000731a disable  0x00000028 
+ 00027096  0x0000731c beq  0x00000004 , 0x000069e3 
+ 00027097  0x0000731d beq  0x00000005 , 0x000069e5 
+ 00027098  0x0000731e beq  0x0000001b , 0x000069e7 
+ 00027099  0x0000731f beq  0x0000001c , 0x000069e9 
+ 00027100  0x00007320 beq  0x00000003 , 0x000069eb 
+ 00027101  0x00007321 beq  0x00000008 , 0x000069ed 
+ 00027102  0x00007322 beq  0x00000014 , 0x000069ef 
+ 00027103  0x00007323 beq  0x00000015 , 0x000069f1 
+ 00027104  0x00007324 beq  0x00000016 , 0x000069f3 
+ 00027105  0x00007325 beq  0x00000017 , 0x000069f5 
+ 00027106  0x00007326 rtn 
+ 00027107  0x0000732a arg  0x00000006 , 0x00000007 
+ 00027108  0x0000732b branch  0x000069ff 
+ 00027109  0x0000732d arg  0x00000007 , 0x00000007 
+ 00027110  0x0000732e branch  0x000069ff 
+ 00027111  0x00007330 arg  0x00000008 , 0x00000007 
+ 00027112  0x00007331 branch  0x000069ff 
+ 00027113  0x00007333 arg  0x00000009 , 0x00000007 
+ 00027114  0x00007334 branch  0x000069ff 
+ 00027115  0x00007336 arg  0x0000000a , 0x00000007 
+ 00027116  0x00007337 branch  0x000069ff 
+ 00027117  0x00007339 arg  0x0000000b , 0x00000007 
+ 00027118  0x0000733a branch  0x000069ff 
+ 00027119  0x0000733c arg  0x0000000c , 0x00000007 
+ 00027120  0x0000733d branch  0x00006a01 
+ 00027121  0x0000733f arg  0x0000000d , 0x00000007 
+ 00027122  0x00007340 branch  0x00006a01 
+ 00027123  0x00007342 arg  0x0000000e , 0x00000007 
+ 00027124  0x00007343 branch  0x00006a01 
+ 00027125  0x00007345 arg  0x0000000f , 0x00000007 
+ 00027126  0x00007346 branch  0x00006a01 
+ 00027127  0x00007349 hfetch  0x00000002 , 0x00008081 
+ 00027128  0x0000734a qsetflag  0x00000028 , 0x0000003f 
+ 00027129  0x0000734b hstore  0x00000002 , 0x00008081 
+ 00027130  0x0000734c copy  0x00000011 , 0x00000007 
+ 00027131  0x0000734d hfetch  0x00000001 , 0x00008085 
+ 00027132  0x0000734e qsetflag  0x00000028 , 0x0000003f 
+ 00027133  0x0000734f hstore  0x00000001 , 0x00008085 
+ 00027134  0x00007350 rtn 
+ 00027135  0x00007353 add  0x00000007 , 0xfffffffc , 0x00000011 
+ 00027136  0x00007354 branch  0x000069f7 
+ 00027137  0x00007357 add  0x00000007 , 0xfffffff6 , 0x00000011 
+ 00027138  0x00007358 branch  0x000069f7 
+ 00027139  0x0000735e rtn  0x0000002b 
+ 00027140  0x0000735f jam  0x00000000 , 0x00004567 
+ 00027141  0x00007360 jam  0x00000003 , 0x000004ed 
+ 00027142  0x00007361 jam  0x00000003 , 0x000004ee 
+ 00027143  0x00007362 jam  0x00000011 , 0x000004f2 
+ 00027144  0x00007363 jam  0x00000013 , 0x000004f3 
+ 00027145  0x00007364 setarg  0x00000000 
+ 00027146  0x00007365 store  0x00000003 , 0x000004ef 
+ 00027147  0x00007366 store  0x00000001 , 0x00004254 
+ 00027148  0x00007367 jam  0x00000000 , 0x00004681 
+ 00027149  0x0000736a bpatchx  0x000000a4 , 0x00004034 
+ 00027150  0x0000736b setarg  0x00000000 
+ 00027151  0x0000736c store  0x00000001 , 0x00004254 
+ 00027152  0x0000736d store  0x00000001 , 0x00004564 
+ 00027153  0x0000736e store  0x00000001 , 0x0000455d 
+ 00027154  0x0000736f fetch  0x00000001 , 0x0000456b 
+ 00027155  0x00007370 beq  0x00000001 , 0x00006a16 
+ 00027156  0x00007371 jam  0x00000050 , 0x00004569 
+ 00027157  0x00007372 rtn 
+ 00027158  0x00007375 jam  0x00000000 , 0x00004569 
+ 00027159  0x00007376 rtn 
+ 00027160  0x00007379 or_into  0x00000002 , 0x00000002 
+ 00027161  0x0000737a rtn 
+ 00027162  0x00007387 copy  0x00000002 , 0x0000003f 
+ 00027163  0x00007388 reverse  0x0000003f , 0x0000003f 
+ 00027164  0x00007389 store  0x00000001 , 0x00004562 
+ 00027165  0x0000738a force  0x0000003f , 0x0000003f 
+ 00027166  0x0000738b reverse  0x0000003f , 0x0000003f 
+ 00027167  0x0000738c store  0x00000001 , 0x00004561 
+ 00027168  0x0000738d force  0x00000001 , 0x0000003f 
+ 00027169  0x0000738e reverse  0x0000003f , 0x0000003f 
+ 00027170  0x0000738f store  0x00000001 , 0x00004560 
+ 00027171  0x00007390 call  0x00006a50 
+ 00027172  0x00007391 copy  0x00000002 , 0x0000003f 
+ 00027173  0x00007392 rtn 
+ 00027174  0x00007394 reverse  0x0000003f , 0x0000003f 
+ 00027175  0x00007395 store  0x00000001 , 0x00004562 
+ 00027176  0x00007396 force  0x00000073 , 0x0000003f 
+ 00027177  0x00007397 reverse  0x0000003f , 0x0000003f 
+ 00027178  0x00007398 store  0x00000001 , 0x00004561 
+ 00027179  0x00007399 force  0x00000001 , 0x0000003f 
+ 00027180  0x0000739a reverse  0x0000003f , 0x0000003f 
+ 00027181  0x0000739b store  0x00000001 , 0x00004560 
+ 00027182  0x0000739c branch  0x00006a50 
+ 00027183  0x0000739f fetch  0x00000001 , 0x00004563 
+ 00027184  0x000073a0 branch  0x00006a33 , 0x00000034 
+ 00027185  0x000073a1 setarg  0x00000070 
+ 00027186  0x000073a2 rtn 
+ 00027187  0x000073a4 setarg  0x000000aa 
+ 00027188  0x000073a5 rtn 
+ 00027189  0x000073a8 reverse  0x0000003f , 0x0000003f 
+ 00027190  0x000073a9 store  0x00000001 , 0x00004562 
+ 00027191  0x000073aa force  0x000000ef , 0x0000003f 
+ 00027192  0x000073ab call  0x00006a44 
+ 00027193  0x000073ac fetcht  0x00000002 , 0x000004f7 
+ 00027194  0x000073ad copy  0x00000002 , 0x00000005 
+ 00027195  0x000073ae istore  0x00000001 , 0x00000005 
+ 00027196  0x000073af copy  0x00000005 , 0x00000002 
+ 00027197  0x000073b0 storet  0x00000002 , 0x000004f7 
+ 00027198  0x000073b1 force  0x000000ff , 0x0000003f 
+ 00027199  0x000073b2 call  0x00006a44 
+ 00027200  0x000073b3 fetcht  0x00000002 , 0x000004f7 
+ 00027201  0x000073b4 copy  0x00000002 , 0x00000005 
+ 00027202  0x000073b5 istore  0x00000001 , 0x00000005 
+ 00027203  0x000073b6 rtn 
+ 00027204  0x000073c0 reverse  0x0000003f , 0x0000003f 
+ 00027205  0x000073c1 store  0x00000001 , 0x00004561 
+ 00027206  0x000073c2 fetch  0x00000002 , 0x00004561 
+ 00027207  0x000073c3 lshift8  0x0000003f , 0x0000003f 
+ 00027208  0x000073c4 store  0x00000003 , 0x000004f4 
+ 00027209  0x000073c5 arg  0x00000107 , 0x00000011 
+ 00027210  0x000073c6 arg  0x0000000f , 0x00000012 
+ 00027211  0x000073c7 call  0x00006a5d 
+ 00027212  0x000073c8 xor_into  0x000000d7 , 0x0000003f 
+ 00027213  0x000073c9 invert  0x0000003f , 0x0000003f 
+ 00027214  0x000073ca reverse  0x0000003f , 0x0000003f 
+ 00027215  0x000073cb rtn 
+ 00027216  0x000073d6 fetch  0x00000003 , 0x00004560 
+ 00027217  0x000073d7 store  0x00000003 , 0x000004f4 
+ 00027218  0x000073d8 arg  0x00000107 , 0x00000011 
+ 00027219  0x000073d9 arg  0x0000000f , 0x00000012 
+ 00027220  0x000073da call  0x00006a5d 
+ 00027221  0x000073db lshift8  0x0000003f , 0x0000003f 
+ 00027222  0x000073dc arg  0x00000007 , 0x00000012 
+ 00027223  0x000073dd call  0x00006a5d 
+ 00027224  0x000073de xor_into  0x0000002b , 0x0000003f 
+ 00027225  0x000073df invert  0x0000003f , 0x0000003f 
+ 00027226  0x000073e0 reverse  0x0000003f , 0x0000003f 
+ 00027227  0x000073e1 copy  0x0000003f , 0x00000002 
+ 00027228  0x000073e2 rtn 
+ 00027229  0x000073e5 arg  0x00000000 , 0x00000013 
+ 00027230  0x000073e6 copy  0x00000012 , 0x00000039 
+ 00027231  0x000073e7 call  0x00007e71 
+ 00027232  0x000073e8 icopy  0x00000002 
+ 00027233  0x000073ee copy  0x00000002 , 0x0000003f 
+ 00027234  0x000073ef lshift  0x00000013 , 0x00000013 
+ 00027235  0x000073f0 bbit0  0x00000008 , 0x00006a66 
+ 00027236  0x000073f1 ixor  0x00000011 , 0x00000002 
+ 00027237  0x000073f2 increase  0x00000001 , 0x00000013 
+ 00027238  0x000073f4 lshift  0x00000002 , 0x00000002 
+ 00027239  0x000073f5 fetch  0x00000003 , 0x000004f4 
+ 00027240  0x000073f6 increase  0xffffffff , 0x00000012 
+ 00027241  0x000073f7 compare  0x000000ff , 0x00000012 , 0x000000ff 
+ 00027242  0x000073f8 branch  0x00006a70 , 0x00000001 
+ 00027243  0x000073f9 copy  0x00000012 , 0x00000039 
+ 00027244  0x000073fa call  0x00007e71 
+ 00027245  0x000073fb isolate1  0x00000000 , 0x0000003f 
+ 00027246  0x000073fc setflag  0x00000001 , 0x00000000 , 0x00000002 
+ 00027247  0x000073fd branch  0x00006a61 
+ 00027248  0x00007400 rshift  0x00000002 , 0x0000003f 
+ 00027249  0x00007401 rtn 
+ 00027250  0x00007404 fetcht  0x00000001 , 0x0000455d 
+ 00027251  0x00007407 lshift2  0x00000002 , 0x00000002 
+ 00027252  0x00007408 set1  0x00000000 , 0x00000002 
+ 00027253  0x00007409 fetch  0x00000001 , 0x00004563 
+ 00027254  0x0000740a ncall  0x00006a18 , 0x00000034 
+ 00027255  0x0000740b storet  0x00000001 , 0x0000050d 
+ 00027256  0x0000740c rtn 
+ 00027257  0x00007410 lshift  0x00000002 , 0x00000002 
+ 00027258  0x00007411 fetch  0x00000001 , 0x00004563 
+ 00027259  0x00007412 setflag  0x00000034 , 0x00000000 , 0x00000002 
+ 00027260  0x00007414 rtn 
+ 00027261  0x00007416 fetcht  0x00000001 , 0x000004fc 
+ 00027262  0x00007417 jam  0x000000d7 , 0x000004fe 
+ 00027263  0x00007418 call  0x00006bb6 
+ 00027264  0x00007419 fetch  0x00000001 , 0x00004251 
+ 00027265  0x0000741a set1  0x00000006 , 0x0000003f 
+ 00027266  0x0000741b set1  0x00000007 , 0x0000003f 
+ 00027267  0x0000741c store  0x00000001 , 0x00004251 
+ 00027268  0x0000741d jam  0x00000000 , 0x00004563 
+ 00027269  0x0000741e branch  0x00006b97 
+ 00027270  0x00007420 fetch  0x00000001 , 0x00004251 
+ 00027271  0x00007421 set1  0x00000007 , 0x0000003f 
+ 00027272  0x00007422 store  0x00000001 , 0x00004251 
+ 00027273  0x00007423 branch  0x00006b97 
+ 00027274  0x00007427 bpatchx  0x000000a5 , 0x00004034 
+ 00027275  0x00007428 fetch  0x00000001 , 0x00004681 
+ 00027276  0x00007429 beq  0x00000000 , 0x00006a8e 
+ 00027277  0x0000742a branch  0x00006b4c 
+ 00027278  0x0000742d fetch  0x00000002 , 0x00000264 
+ 00027279  0x0000742e copy  0x0000003f , 0x00000006 
+ 00027280  0x0000742f call  0x00006ab8 
+ 00027281  0x00007430 fetch  0x00000001 , 0x000004fc 
+ 00027282  0x00007431 beq  0x00000000 , 0x00006a94 
+ 00027283  0x00007432 branch  0x00006b18 
+ 00027284  0x00007434 bpatchx  0x000000a6 , 0x00004034 
+ 00027285  0x00007435 fetch  0x00000001 , 0x000004fd 
+ 00027286  0x00007436 beq  0x0000003f , 0x00006a7d 
+ 00027287  0x00007437 beq  0x00000073 , 0x00006a86 
+ 00027288  0x00007438 beq  0x000000ef , 0x00006a9b 
+ 00027289  0x00007439 beq  0x00000053 , 0x00006b44 
+ 00027290  0x0000743a rtn 
+ 00027291  0x0000743e fetch  0x00000002 , 0x00000501 
+ 00027292  0x0000743f copy  0x0000003f , 0x00000006 
+ 00027293  0x00007440 call  0x00006ac3 
+ 00027294  0x00007441 fetch  0x00000001 , 0x00000503 
+ 00027295  0x00007442 beq  0x00000041 , 0x00006aa5 
+ 00027296  0x00007443 beq  0x00000040 , 0x00006aad 
+ 00027297  0x00007444 beq  0x00000071 , 0x00006ae6 
+ 00027298  0x00007445 beq  0x00000070 , 0x00006af2 
+ 00027299  0x00007446 beq  0x00000049 , 0x00006afd 
+ 00027300  0x00007447 branch  0x00006b97 
+ 00027301  0x0000744a call  0x00006aaf 
+ 00027302  0x0000744c branch  0x00006aa7 
+ 00027303  0x0000744f fetch  0x00000001 , 0x00004254 
+ 00027304  0x00007450 set1  0x00000000 , 0x0000003f 
+ 00027305  0x00007451 set1  0x00000001 , 0x0000003f 
+ 00027306  0x00007452 store  0x00000001 , 0x00004254 
+ 00027307  0x00007453 call  0x00006be0 
+ 00027308  0x00007454 branch  0x00006b97 
+ 00027309  0x00007457 call  0x00006aaf 
+ 00027310  0x00007458 branch  0x00006b97 
+ 00027311  0x0000745b call  0x00006acb 
+ 00027312  0x0000745c branch  0x00006ad7 
+ 00027313  0x0000745f call  0x00006acb 
+ 00027314  0x00007460 ifetch  0x00000001 , 0x00000006 
+ 00027315  0x00007461 rshift3  0x0000003f , 0x0000003f 
+ 00027316  0x00007462 store  0x00000001 , 0x0000456a 
+ 00027317  0x00007463 ifetch  0x00000001 , 0x00000006 
+ 00027318  0x00007464 store  0x00000001 , 0x00000508 
+ 00027319  0x00007465 rtn 
+ 00027320  0x00007469 ifetch  0x00000001 , 0x00000006 
+ 00027321  0x0000746a store  0x00000001 , 0x000004fb 
+ 00027322  0x0000746b rshift3  0x0000003f , 0x0000003f 
+ 00027323  0x0000746c store  0x00000001 , 0x000004fc 
+ 00027324  0x0000746d ifetch  0x00000001 , 0x00000006 
+ 00027325  0x0000746e store  0x00000001 , 0x000004fd 
+ 00027326  0x00007470 call  0x00006ace 
+ 00027327  0x00007471 storet  0x00000002 , 0x000004ff 
+ 00027328  0x00007472 copy  0x00000006 , 0x0000003f 
+ 00027329  0x00007473 store  0x00000002 , 0x00000501 
+ 00027330  0x00007474 rtn 
+ 00027331  0x00007477 ifetch  0x00000001 , 0x00000006 
+ 00027332  0x00007478 rshift  0x0000003f , 0x0000003f 
+ 00027333  0x00007479 store  0x00000001 , 0x00000503 
+ 00027334  0x0000747a call  0x00006ace 
+ 00027335  0x0000747b storet  0x00000002 , 0x00000504 
+ 00027336  0x0000747c copy  0x00000006 , 0x0000003f 
+ 00027337  0x0000747d store  0x00000002 , 0x00000506 
+ 00027338  0x0000747e rtn 
+ 00027339  0x00007482 fetch  0x00000002 , 0x00000506 
+ 00027340  0x00007483 copy  0x0000003f , 0x00000006 
+ 00027341  0x00007484 rtn 
+ 00027342  0x00007487 ifetch  0x00000001 , 0x00000006 
+ 00027343  0x00007488 copy  0x0000003f , 0x00000002 
+ 00027344  0x00007489 rshift  0x00000002 , 0x00000002 
+ 00027345  0x0000748a rtnbit1  0x00000000 
+ 00027346  0x0000748b ifetch  0x00000001 , 0x00000006 
+ 00027347  0x0000748c lshift3  0x0000003f , 0x0000003f 
+ 00027348  0x0000748d lshift4  0x0000003f , 0x0000003f 
+ 00027349  0x0000748e iadd  0x00000002 , 0x00000002 
+ 00027350  0x0000748f rtn 
+ 00027351  0x00007492 ifetch  0x00000001 , 0x00000006 
+ 00027352  0x00007493 store  0x00000001 , 0x0000455d 
+ 00027353  0x00007494 ifetch  0x00000001 , 0x00000006 
+ 00027354  0x00007495 store  0x00000001 , 0x00000509 
+ 00027355  0x00007496 ifetch  0x00000001 , 0x00000006 
+ 00027356  0x00007497 store  0x00000001 , 0x0000050a 
+ 00027357  0x00007498 ifetch  0x00000001 , 0x00000006 
+ 00027358  0x00007499 store  0x00000001 , 0x0000050b 
+ 00027359  0x0000749a ifetch  0x00000002 , 0x00000006 
+ 00027360  0x0000749b store  0x00000002 , 0x0000455e 
+ 00027361  0x0000749c ifetch  0x00000001 , 0x00000006 
+ 00027362  0x0000749d store  0x00000001 , 0x0000050c 
+ 00027363  0x0000749e ifetch  0x00000001 , 0x00000006 
+ 00027364  0x0000749f store  0x00000001 , 0x00004568 
+ 00027365  0x000074a0 rtn 
+ 00027366  0x000074a4 call  0x00006ab1 
+ 00027367  0x000074a6 branch  0x00006ae8 
+ 00027368  0x000074a9 fetch  0x00000001 , 0x00004254 
+ 00027369  0x000074aa set1  0x00000005 , 0x0000003f 
+ 00027370  0x000074ab set1  0x00000006 , 0x0000003f 
+ 00027371  0x000074ac store  0x00000001 , 0x00004254 
+ 00027372  0x000074ad fetcht  0x00000001 , 0x0000455d 
+ 00027373  0x000074ae lshift2  0x00000002 , 0x00000002 
+ 00027374  0x000074af or_into  0x00000003 , 0x00000002 
+ 00027375  0x000074b0 call  0x00006c11 
+ 00027376  0x000074b1 jam  0x00000003 , 0x00004567 
+ 00027377  0x000074b2 branch  0x00006b97 
+ 00027378  0x000074b5 jam  0x00000008 , 0x00000a99 
+ 00027379  0x000074b6 call  0x00007d86 
+ 00027380  0x000074b7 call  0x00006ab1 
+ 00027381  0x000074b8 fetch  0x00000001 , 0x0000456a 
+ 00027382  0x000074b9 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00027383  0x000074ba branch  0x00006af9 , 0x00000005 
+ 00027384  0x000074bb branch  0x00002a8c 
+ 00027385  0x000074bd fetch  0x00000001 , 0x00004254 
+ 00027386  0x000074be set1  0x00000007 , 0x0000003f 
+ 00027387  0x000074bf store  0x00000001 , 0x00004254 
+ 00027388  0x000074c0 branch  0x00006b97 
+ 00027389  0x000074c3 call  0x00006acb 
+ 00027390  0x000074c4 ifetch  0x00000001 , 0x00000006 
+ 00027391  0x000074c5 store  0x00000001 , 0x00000ac2 
+ 00027392  0x000074c6 call  0x000052d2 
+ 00027393  0x000074c7 call  0x000052e0 
+ 00027394  0x000074c8 setarg  0x0000000e 
+ 00027395  0x000074c9 istore  0x00000002 , 0x00000005 
+ 00027396  0x000074ca fetch  0x00000002 , 0x0000424a 
+ 00027397  0x000074cb istore  0x00000002 , 0x00000005 
+ 00027398  0x000074cc fetch  0x00000001 , 0x00004563 
+ 00027399  0x000074ce lshift  0x0000003f , 0x0000003f 
+ 00027400  0x000074cf set1  0x00000000 , 0x0000003f 
+ 00027401  0x000074d0 istore  0x00000001 , 0x00000005 
+ 00027402  0x000074d1 bpatchx  0x000000a7 , 0x00004034 
+ 00027403  0x000074d2 setarg  0x000015ef 
+ 00027404  0x000074d3 istore  0x00000002 , 0x00000005 
+ 00027405  0x000074d4 setarg  0x00001191 
+ 00027406  0x000074d5 istore  0x00000002 , 0x00000005 
+ 00027407  0x000074d8 fetch  0x00000001 , 0x00000ac2 
+ 00027408  0x000074d9 istore  0x00000001 , 0x00000005 
+ 00027409  0x000074da setarg  0x00000007 
+ 00027410  0x000074db istore  0x00000005 , 0x00000005 
+ 00027411  0x000074de setarg  0x00000001 
+ 00027412  0x000074df istore  0x00000002 , 0x00000005 
+ 00027413  0x000074e2 call  0x00006a2f 
+ 00027414  0x000074e3 istore  0x00000001 , 0x00000005 
+ 00027415  0x000074e4 rtn 
+ 00027416  0x000074e9 branch  0x00006b19 
+ 00027417  0x000074ec bpatchx  0x000000a8 , 0x00004035 
+ 00027418  0x000074ed fetch  0x00000001 , 0x000004fd 
+ 00027419  0x000074ee beq  0x00000073 , 0x00006b21 
+ 00027420  0x000074ef beq  0x0000003f , 0x00006b25 
+ 00027421  0x000074f0 beq  0x000000ef , 0x00006b3f 
+ 00027422  0x000074f1 beq  0x000000ff , 0x00006b37 
+ 00027423  0x000074f2 beq  0x00000053 , 0x00006b46 
+ 00027424  0x000074f3 rtn 
+ 00027425  0x000074f5 fetch  0x00000001 , 0x00004254 
+ 00027426  0x000074f6 set1  0x00000003 , 0x0000003f 
+ 00027427  0x000074f7 store  0x00000001 , 0x00004254 
+ 00027428  0x000074f8 branch  0x00006b97 
+ 00027429  0x000074fa fetch  0x00000001 , 0x00004254 
+ 00027430  0x000074fb set1  0x00000003 , 0x0000003f 
+ 00027431  0x000074fc set1  0x00000002 , 0x0000003f 
+ 00027432  0x000074fd store  0x00000001 , 0x00004254 
+ 00027433  0x000074fe fetch  0x00000001 , 0x000004fb 
+ 00027434  0x000074ff call  0x00006a26 
+ 00027435  0x00007500 store  0x00000001 , 0x000004fe 
+ 00027436  0x00007501 call  0x00006bb6 
+ 00027437  0x00007502 fetch  0x00000001 , 0x000004fb 
+ 00027438  0x00007503 rshift2  0x0000003f , 0x0000003f 
+ 00027439  0x00007504 store  0x00000001 , 0x0000455d 
+ 00027440  0x00007505 lshift2  0x0000003f , 0x0000003f 
+ 00027441  0x00007506 set0  0x00000001 , 0x0000003f 
+ 00027442  0x00007507 set1  0x00000000 , 0x0000003f 
+ 00027443  0x00007508 arg  0x00004565 , 0x00000002 
+ 00027444  0x00007509 storet  0x00000002 , 0x000004f7 
+ 00027445  0x0000750a call  0x00006a35 
+ 00027446  0x0000750b branch  0x00006b97 
+ 00027447  0x0000750e fetch  0x00000002 , 0x00000501 
+ 00027448  0x0000750f copy  0x0000003f , 0x00000006 
+ 00027449  0x00007510 increase  0x00000001 , 0x0000003f 
+ 00027450  0x00007511 store  0x00000002 , 0x00000501 
+ 00027451  0x00007512 ifetch  0x00000001 , 0x00000006 
+ 00027452  0x00007513 fetcht  0x00000001 , 0x00004568 
+ 00027453  0x00007514 iadd  0x00000002 , 0x0000003f 
+ 00027454  0x00007515 store  0x00000001 , 0x00004568 
+ 00027455  0x00007517 call  0x00006c42 
+ 00027456  0x00007519 call  0x00006a72 
+ 00027457  0x0000751a call  0x00006c28 
+ 00027458  0x0000751b call  0x00006c4b 
+ 00027459  0x0000751c branch  0x00006b97 
+ 00027460  0x0000751f jam  0x00000009 , 0x00000a99 
+ 00027461  0x00007520 call  0x00007d86 
+ 00027462  0x00007522 call  0x00006a0d 
+ 00027463  0x00007523 fetch  0x00000001 , 0x000004fb 
+ 00027464  0x00007524 call  0x00006a26 
+ 00027465  0x00007525 store  0x00000001 , 0x000004fe 
+ 00027466  0x00007526 call  0x00006bb6 
+ 00027467  0x00007527 branch  0x00006b97 
+ 00027468  0x0000752d fetch  0x00000002 , 0x00000264 
+ 00027469  0x0000752e copy  0x0000003f , 0x00000006 
+ 00027470  0x0000752f call  0x00006ab8 
+ 00027471  0x00007530 fetch  0x00000001 , 0x000004fc 
+ 00027472  0x00007531 beq  0x00000000 , 0x00006b52 
+ 00027473  0x00007532 branch  0x00006b86 
+ 00027474  0x00007535 bpatchx  0x000000a9 , 0x00004035 
+ 00027475  0x00007536 fetch  0x00000001 , 0x000004fd 
+ 00027476  0x00007537 beq  0x0000003f , 0x00006a7d 
+ 00027477  0x00007538 beq  0x00000073 , 0x00006a86 
+ 00027478  0x00007539 beq  0x000000ef , 0x00006b58 
+ 00027479  0x0000753a branch  0x00006b97 
+ 00027480  0x0000753c fetch  0x00000002 , 0x00000501 
+ 00027481  0x0000753d copy  0x0000003f , 0x00000006 
+ 00027482  0x0000753e call  0x00006ac3 
+ 00027483  0x0000753f fetch  0x00000001 , 0x00000503 
+ 00027484  0x00007540 beq  0x00000041 , 0x00006b61 
+ 00027485  0x00007541 beq  0x00000040 , 0x00006b61 
+ 00027486  0x00007542 beq  0x00000071 , 0x00006b6c 
+ 00027487  0x00007543 beq  0x00000070 , 0x00006b7c 
+ 00027488  0x00007544 branch  0x00006b97 
+ 00027489  0x00007547 call  0x00006aaf 
+ 00027490  0x00007548 fetch  0x00000001 , 0x0000455d 
+ 00027491  0x00007549 rshift  0x0000003f , 0x0000003f 
+ 00027492  0x0000754a fetcht  0x00000001 , 0x00004564 
+ 00027493  0x0000754b isub  0x00000002 , 0x0000003e 
+ 00027494  0x0000754c branch  0x00006b68 , 0x00000005 
+ 00027495  0x0000754d branch  0x00002a8c 
+ 00027496  0x0000754f fetch  0x00000001 , 0x00004254 
+ 00027497  0x00007550 set1  0x00000001 , 0x0000003f 
+ 00027498  0x00007551 store  0x00000001 , 0x00004254 
+ 00027499  0x00007552 branch  0x00006b97 
+ 00027500  0x00007555 call  0x00006ab1 
+ 00027501  0x00007556 fetch  0x00000001 , 0x0000456a 
+ 00027502  0x00007557 fetcht  0x00000001 , 0x00004564 
+ 00027503  0x00007558 isub  0x00000002 , 0x0000003e 
+ 00027504  0x00007559 branch  0x00006b73 , 0x00000005 
+ 00027505  0x0000755a branch  0x00002a8c 
+ 00027506  0x0000755b branch  0x00006b97 
+ 00027507  0x0000755d fetch  0x00000001 , 0x00004254 
+ 00027508  0x0000755e set1  0x00000005 , 0x0000003f 
+ 00027509  0x0000755f set1  0x00000006 , 0x0000003f 
+ 00027510  0x00007560 store  0x00000001 , 0x00004254 
+ 00027511  0x00007561 fetcht  0x00000001 , 0x0000455d 
+ 00027512  0x00007562 lshift2  0x00000002 , 0x00000002 
+ 00027513  0x00007563 or_into  0x00000003 , 0x00000002 
+ 00027514  0x00007564 call  0x00006c11 
+ 00027515  0x00007565 branch  0x00006b97 
+ 00027516  0x00007568 call  0x00006ab1 
+ 00027517  0x00007569 fetch  0x00000001 , 0x0000456a 
+ 00027518  0x0000756a fetcht  0x00000001 , 0x00004564 
+ 00027519  0x0000756b isub  0x00000002 , 0x0000003e 
+ 00027520  0x0000756c branch  0x00006b82 , 0x00000005 
+ 00027521  0x0000756d branch  0x00002a8c 
+ 00027522  0x0000756f fetch  0x00000001 , 0x00004254 
+ 00027523  0x00007570 set1  0x00000007 , 0x0000003f 
+ 00027524  0x00007571 store  0x00000001 , 0x00004254 
+ 00027525  0x00007572 branch  0x00006b97 
+ 00027526  0x00007575 fetch  0x00000001 , 0x000004fc 
+ 00027527  0x00007576 fetcht  0x00000001 , 0x00004564 
+ 00027528  0x00007577 isub  0x00000002 , 0x0000003e 
+ 00027529  0x00007578 branch  0x00006b8c , 0x00000005 
+ 00027530  0x00007579 branch  0x00002a8c 
+ 00027531  0x0000757a branch  0x00006b97 
+ 00027532  0x0000757d fetch  0x00000001 , 0x000004fd 
+ 00027533  0x0000757e beq  0x00000073 , 0x00006b91 
+ 00027534  0x0000757f beq  0x000000ef , 0x00006b3f 
+ 00027535  0x00007580 beq  0x000000ff , 0x00006b37 
+ 00027536  0x00007581 beq  0x00000053 , 0x00006b96 
+ 00027537  0x00007583 fetch  0x00000001 , 0x00004254 
+ 00027538  0x00007584 set1  0x00000003 , 0x0000003f 
+ 00027539  0x00007585 store  0x00000001 , 0x00004254 
+ 00027540  0x00007586 branch  0x00006b97 
+ 00027541  0x00007588 branch  0x00006b95 
+ 00027542  0x0000758a branch  0x00006b46 
+ 00027543  0x0000758c rtn 
+ 00027544  0x0000758f fetch  0x00000001 , 0x00004567 
+ 00027545  0x00007590 rtn  0x00000034 
+ 00027546  0x00007591 beq  0x00000003 , 0x00006b9c 
+ 00027547  0x00007592 branch  0x00002a8c 
+ 00027548  0x00007595 jam  0x00000000 , 0x00004567 
+ 00027549  0x00007596 call  0x000052d2 
+ 00027550  0x00007597 arg  0x00000001 , 0x00000002 
+ 00027551  0x00007598 fetcht  0x00000001 , 0x0000455d 
+ 00027552  0x00007599 lshift2  0x00000002 , 0x00000002 
+ 00027553  0x0000759b or_into  0x00000003 , 0x00000002 
+ 00027554  0x0000759c arg  0x000000aa , 0x00000011 
+ 00027555  0x0000759d call  0x00006bfc 
+ 00027556  0x0000759e call  0x000052e0 
+ 00027557  0x0000759f copy  0x00000005 , 0x00000006 
+ 00027558  0x000075a0 ifetch  0x00000002 , 0x00000006 
+ 00027559  0x000075a1 branch  0x00002a8c , 0x00000034 
+ 00027560  0x000075a2 rtn 
+ 00027561  0x000075a5 call  0x000052e0 
+ 00027562  0x000075a6 setarg  0x00000004 
+ 00027563  0x000075a7 istore  0x00000002 , 0x00000005 
+ 00027564  0x000075a8 fetch  0x00000002 , 0x0000424a 
+ 00027565  0x000075a9 istore  0x00000002 , 0x00000005 
+ 00027566  0x000075aa fetch  0x00000001 , 0x000004fb 
+ 00027567  0x000075ab istore  0x00000001 , 0x00000005 
+ 00027568  0x000075ac bpatchx  0x000000aa , 0x00004035 
+ 00027569  0x000075ad setarg  0x0000013f 
+ 00027570  0x000075ae istore  0x00000002 , 0x00000005 
+ 00027571  0x000075af fetch  0x00000001 , 0x000004fe 
+ 00027572  0x000075b0 istore  0x00000001 , 0x00000005 
+ 00027573  0x000075b1 rtn 
+ 00027574  0x000075b3 call  0x000052d2 
+ 00027575  0x000075b4 call  0x000052e0 
+ 00027576  0x000075b5 setarg  0x00000004 
+ 00027577  0x000075b6 istore  0x00000002 , 0x00000005 
+ 00027578  0x000075b7 fetch  0x00000002 , 0x0000424a 
+ 00027579  0x000075b8 istore  0x00000002 , 0x00000005 
+ 00027580  0x000075b9 fetch  0x00000001 , 0x000004fb 
+ 00027581  0x000075ba istore  0x00000001 , 0x00000005 
+ 00027582  0x000075bb bpatchx  0x000000ab , 0x00004035 
+ 00027583  0x000075bc setarg  0x00000173 
+ 00027584  0x000075bd istore  0x00000002 , 0x00000005 
+ 00027585  0x000075be fetch  0x00000001 , 0x000004fe 
+ 00027586  0x000075bf istore  0x00000001 , 0x00000005 
+ 00027587  0x000075c0 rtn 
+ 00027588  0x000075c2 call  0x000052e0 
+ 00027589  0x000075c3 setarg  0x0000000e 
+ 00027590  0x000075c4 istore  0x00000002 , 0x00000005 
+ 00027591  0x000075c5 fetch  0x00000002 , 0x0000424a 
+ 00027592  0x000075c6 istore  0x00000002 , 0x00000005 
+ 00027593  0x000075c7 fetch  0x00000001 , 0x00004563 
+ 00027594  0x000075c8 lshift  0x0000003f , 0x0000003f 
+ 00027595  0x000075c9 set1  0x00000000 , 0x0000003f 
+ 00027596  0x000075ca istore  0x00000001 , 0x00000005 
+ 00027597  0x000075cb bpatchx  0x000000ac , 0x00004035 
+ 00027598  0x000075cc setarg  0x000015ef 
+ 00027599  0x000075cd istore  0x00000002 , 0x00000005 
+ 00027600  0x000075ce setarg  0x00001183 
+ 00027601  0x000075cf istore  0x00000002 , 0x00000005 
+ 00027602  0x000075d0 copy  0x00000002 , 0x0000003f 
+ 00027603  0x000075d1 istore  0x00000001 , 0x00000005 
+ 00027604  0x000075d2 setarg  0x000000f0 
+ 00027605  0x000075d3 istore  0x00000003 , 0x00000005 
+ 00027606  0x000075d4 setarg  0x0000007f 
+ 00027607  0x000075d5 istore  0x00000002 , 0x00000005 
+ 00027608  0x000075d6 setarg  0x00000000 
+ 00027609  0x000075d7 istore  0x00000001 , 0x00000005 
+ 00027610  0x000075d8 setarg  0x00000001 
+ 00027611  0x000075d9 istore  0x00000001 , 0x00000005 
+ 00027612  0x000075da call  0x00006a2f 
+ 00027613  0x000075db istore  0x00000001 , 0x00000005 
+ 00027614  0x000075dc jam  0x00000010 , 0x00004569 
+ 00027615  0x000075dd rtn 
+ 00027616  0x000075df call  0x000052d2 
+ 00027617  0x000075e0 call  0x000052e0 
+ 00027618  0x000075e1 setarg  0x0000000e 
+ 00027619  0x000075e2 istore  0x00000002 , 0x00000005 
+ 00027620  0x000075e3 fetch  0x00000002 , 0x0000424a 
+ 00027621  0x000075e4 istore  0x00000002 , 0x00000005 
+ 00027622  0x000075e5 fetch  0x00000001 , 0x00004563 
+ 00027623  0x000075e6 lshift  0x0000003f , 0x0000003f 
+ 00027624  0x000075e7 set1  0x00000000 , 0x0000003f 
+ 00027625  0x000075e8 istore  0x00000001 , 0x00000005 
+ 00027626  0x000075e9 bpatchx  0x000000ad , 0x00004035 
+ 00027627  0x000075ea setarg  0x000015ef 
+ 00027628  0x000075eb istore  0x00000002 , 0x00000005 
+ 00027629  0x000075ec setarg  0x00001181 
+ 00027630  0x000075ed istore  0x00000002 , 0x00000005 
+ 00027631  0x000075ee fetch  0x00000001 , 0x0000455d 
+ 00027632  0x000075ef istore  0x00000001 , 0x00000005 
+ 00027633  0x000075f0 setarg  0x000000e0 
+ 00027634  0x000075f1 istore  0x00000003 , 0x00000005 
+ 00027635  0x000075f2 fetch  0x00000002 , 0x0000456c 
+ 00027636  0x000075f3 istore  0x00000002 , 0x00000005 
+ 00027637  0x000075f4 setarg  0x00000000 
+ 00027638  0x000075f5 istore  0x00000001 , 0x00000005 
+ 00027639  0x000075f6 fetch  0x00000001 , 0x0000456e 
+ 00027640  0x000075f7 istore  0x00000001 , 0x00000005 
+ 00027641  0x000075f8 call  0x00006a2f 
+ 00027642  0x000075f9 istore  0x00000001 , 0x00000005 
+ 00027643  0x000075fa rtn 
+ 00027644  0x000075fc call  0x000052e0 
+ 00027645  0x000075fd setarg  0x00000008 
+ 00027646  0x000075fe istore  0x00000002 , 0x00000005 
+ 00027647  0x000075ff fetch  0x00000002 , 0x0000424a 
+ 00027648  0x00007600 istore  0x00000002 , 0x00000005 
+ 00027649  0x00007601 fetch  0x00000001 , 0x00004563 
+ 00027650  0x00007602 lshift  0x0000003f , 0x0000003f 
+ 00027651  0x00007603 set1  0x00000000 , 0x0000003f 
+ 00027652  0x00007604 istore  0x00000001 , 0x00000005 
+ 00027653  0x00007605 bpatchx  0x000000ae , 0x00004035 
+ 00027654  0x00007606 setarg  0x000009ef 
+ 00027655  0x00007607 istore  0x00000002 , 0x00000005 
+ 00027656  0x00007608 setarg  0x000005e3 
+ 00027657  0x00007609 istore  0x00000002 , 0x00000005 
+ 00027658  0x0000760a copy  0x00000002 , 0x0000003f 
+ 00027659  0x0000760b istore  0x00000001 , 0x00000005 
+ 00027660  0x0000760c setarg  0x0000008d 
+ 00027661  0x0000760d istore  0x00000001 , 0x00000005 
+ 00027662  0x0000760e call  0x00006a2f 
+ 00027663  0x0000760f istore  0x00000001 , 0x00000005 
+ 00027664  0x00007610 rtn 
+ 00027665  0x00007613 call  0x000052d2 
+ 00027666  0x00007614 call  0x000052e0 
+ 00027667  0x00007615 setarg  0x00000008 
+ 00027668  0x00007616 istore  0x00000002 , 0x00000005 
+ 00027669  0x00007617 fetch  0x00000002 , 0x0000424a 
+ 00027670  0x00007618 istore  0x00000002 , 0x00000005 
+ 00027671  0x00007619 copy  0x00000002 , 0x0000000b 
+ 00027672  0x0000761a fetch  0x00000001 , 0x00004563 
+ 00027673  0x0000761b lshift  0x0000003f , 0x0000003f 
+ 00027674  0x0000761c set1  0x00000000 , 0x0000003f 
+ 00027675  0x0000761d istore  0x00000001 , 0x00000005 
+ 00027676  0x0000761e bpatchx  0x000000af , 0x00004035 
+ 00027677  0x0000761f setarg  0x000009ef 
+ 00027678  0x00007620 istore  0x00000002 , 0x00000005 
+ 00027679  0x00007621 setarg  0x000005e1 
+ 00027680  0x00007622 istore  0x00000002 , 0x00000005 
+ 00027681  0x00007623 copy  0x0000000b , 0x0000003f 
+ 00027682  0x00007624 istore  0x00000001 , 0x00000005 
+ 00027683  0x00007625 setarg  0x0000008d 
+ 00027684  0x00007626 istore  0x00000001 , 0x00000005 
+ 00027685  0x00007627 call  0x00006a2f 
+ 00027686  0x00007628 istore  0x00000001 , 0x00000005 
+ 00027687  0x00007629 rtn 
+ 00027688  0x0000762c bpatchx  0x000000b0 , 0x00004036 
+ 00027689  0x0000762d fetch  0x00000001 , 0x00004569 
+ 00027690  0x0000762e rtn  0x00000034 
+ 00027691  0x0000762f hfetch  0x00000002 , 0x00008112 
+ 00027692  0x00007630 nrtn  0x00000034 
+ 00027693  0x00007631 copy  0x00000011 , 0x0000003f 
+ 00027694  0x00007632 store  0x00000001 , 0x00000a9b 
+ 00027695  0x00007633 storet  0x00000001 , 0x00000a9a 
+ 00027696  0x00007634 call  0x0000526e 
+ 00027697  0x00007635 nrtn  0x00000034 
+ 00027698  0x00007636 call  0x000052d2 
+ 00027699  0x00007637 call  0x000052e0 
+ 00027700  0x00007638 setarg  0x00000005 
+ 00027701  0x00007639 istore  0x00000002 , 0x00000005 
+ 00027702  0x0000763a fetch  0x00000002 , 0x0000424a 
+ 00027703  0x0000763b istore  0x00000002 , 0x00000005 
+ 00027704  0x0000763c fetch  0x00000001 , 0x0000050d 
+ 00027705  0x0000763d istore  0x00000001 , 0x00000005 
+ 00027706  0x0000763e setarg  0x000001ff 
+ 00027707  0x0000763f istore  0x00000002 , 0x00000005 
+ 00027708  0x00007640 fetch  0x00000001 , 0x00004569 
+ 00027709  0x00007641 istore  0x00000001 , 0x00000005 
+ 00027710  0x00007642 fetch  0x00000001 , 0x00004566 
+ 00027711  0x00007643 istore  0x00000001 , 0x00000005 
+ 00027712  0x00007644 jam  0x00000000 , 0x00004569 
+ 00027713  0x00007645 rtn 
+ 00027714  0x00007648 bpatchx  0x000000b1 , 0x00004036 
+ 00027715  0x00007649 fetch  0x00000001 , 0x0000456b 
+ 00027716  0x0000764a rtneq  0x00000001 
+ 00027717  0x0000764b fetch  0x00000002 , 0x000004ff 
+ 00027718  0x0000764c rtn  0x00000034 
+ 00027719  0x0000764d fetch  0x00000001 , 0x00004569 
+ 00027720  0x0000764e increase  0x00000001 , 0x0000003f 
+ 00027721  0x0000764f store  0x00000001 , 0x00004569 
+ 00027722  0x00007650 rtn 
+ 00027723  0x00007653 fetch  0x00000002 , 0x0000456f 
+ 00027724  0x00007654 branch  0x00007f9c 
+ 00027725  0x00007657 bpatchx  0x000000b2 , 0x00004036 
+ 00027726  0x00007659 fetch  0x00000001 , 0x00004568 
+ 00027727  0x0000765a rtn  0x00000034 
+ 00027728  0x0000765b increase  0xffffffff , 0x0000003f 
+ 00027729  0x0000765c store  0x00000001 , 0x00004568 
+ 00027730  0x0000765d fetch  0x00000002 , 0x0000455e 
+ 00027731  0x0000765e fetcht  0x00000002 , 0x0000469f 
+ 00027732  0x0000765f isub  0x00000002 , 0x0000003e 
+ 00027733  0x00007660 branch  0x00006c57 , 0x00000002 
+ 00027734  0x00007661 store  0x00000002 , 0x0000469f 
+ 00027735  0x00007663 fetch  0x00000001 , 0x00004569 
+ 00027736  0x00007664 branch  0x00006c5f , 0x00000034 
+ 00027737  0x00007665 jam  0x00000001 , 0x00000510 
+ 00027738  0x00007666 fetch  0x00000001 , 0x00004566 
+ 00027739  0x00007667 store  0x00000001 , 0x0000050f 
+ 00027740  0x00007668 setarg  0x000000ff 
+ 00027741  0x00007669 store  0x00000001 , 0x0000050e 
+ 00027742  0x0000766a branch  0x00006c64 
+ 00027743  0x0000766c jam  0x00000000 , 0x00000510 
+ 00027744  0x0000766d fetch  0x00000001 , 0x00004565 
+ 00027745  0x0000766e store  0x00000001 , 0x0000050f 
+ 00027746  0x0000766f setarg  0x000000ef 
+ 00027747  0x00007670 store  0x00000001 , 0x0000050e 
+ 00027748  0x00007672 bpatchx  0x000000b3 , 0x00004036 
+ 00027749  0x00007673 fetch  0x00000002 , 0x0000469f 
+ 00027750  0x00007674 sub  0x0000003f , 0x0000007f , 0x0000003e 
+ 00027751  0x00007675 branch  0x00006c6b , 0x00000002 
+ 00027752  0x00007676 fetch  0x00000001 , 0x00000510 
+ 00027753  0x00007677 increase  0x00000001 , 0x0000003f 
+ 00027754  0x00007678 store  0x00000001 , 0x00000510 
+ 00027755  0x0000767a call  0x00006a72 
+ 00027756  0x0000767b fetch  0x00000002 , 0x0000469f 
+ 00027757  0x0000767c increase  0x00000008 , 0x0000003f 
+ 00027758  0x0000767d fetcht  0x00000001 , 0x00000510 
+ 00027759  0x0000767e iadd  0x00000002 , 0x00000011 
+ 00027760  0x00007680 call  0x00005240 
+ 00027761  0x00007681 store  0x00000002 , 0x00000277 
+ 00027762  0x00007682 increase  0x00000004 , 0x0000003f 
+ 00027763  0x00007683 store  0x00000002 , 0x00000279 
+ 00027764  0x00007684 copy  0x0000003f , 0x00000005 
+ 00027765  0x00007685 fetch  0x00000001 , 0x0000050d 
+ 00027766  0x00007686 istore  0x00000001 , 0x00000005 
+ 00027767  0x00007687 fetch  0x00000001 , 0x0000050e 
+ 00027768  0x00007688 istore  0x00000001 , 0x00000005 
+ 00027769  0x00007689 call  0x00006c95 
+ 00027770  0x0000768a call  0x00006ca6 
+ 00027771  0x0000768b bpatchx  0x000000b4 , 0x00004036 
+ 00027772  0x0000768c fetch  0x00000002 , 0x00004571 
+ 00027773  0x0000768d copy  0x0000003f , 0x00000003 
+ 00027774  0x0000768e fetch  0x00000002 , 0x0000469f 
+ 00027775  0x0000768f copy  0x0000003f , 0x00000039 
+ 00027776  0x00007690 call  0x000066ea 
+ 00027777  0x00007691 copy  0x00000005 , 0x00000002 
+ 00027778  0x00007692 copy  0x00000003 , 0x0000003f 
+ 00027779  0x00007693 store  0x00000002 , 0x00004571 
+ 00027780  0x00007694 copy  0x00000002 , 0x00000005 
+ 00027781  0x00007695 fetch  0x00000001 , 0x0000050f 
+ 00027782  0x00007696 istore  0x00000001 , 0x00000005 
+ 00027783  0x00007697 fetch  0x00000002 , 0x00000277 
+ 00027784  0x00007698 copy  0x0000003f , 0x00000005 
+ 00027785  0x00007699 fetch  0x00000002 , 0x0000469f 
+ 00027786  0x0000769a fetcht  0x00000001 , 0x00000510 
+ 00027787  0x0000769b iadd  0x00000002 , 0x0000003f 
+ 00027788  0x0000769c increase  0x00000004 , 0x0000003f 
+ 00027789  0x0000769d istore  0x00000002 , 0x00000005 
+ 00027790  0x0000769e fetch  0x00000002 , 0x0000424a 
+ 00027791  0x0000769f istore  0x00000002 , 0x00000005 
+ 00027792  0x000076a0 jam  0x00000000 , 0x00004569 
+ 00027793  0x000076a1 fetch  0x00000002 , 0x00004573 
+ 00027794  0x000076a2 beq  0x00000000 , 0x00003a97 
+ 00027795  0x000076a3 jam  0x00000000 , 0x00000b05 
+ 00027796  0x000076a4 rtn 
+ 00027797  0x000076a7 bpatchx  0x000000b5 , 0x00004036 
+ 00027798  0x000076a8 fetch  0x00000002 , 0x0000469f 
+ 00027799  0x000076a9 sub  0x0000003f , 0x0000007f , 0x0000003e 
+ 00027800  0x000076aa nbranch  0x00006c9d , 0x00000002 
+ 00027801  0x000076ab lshift  0x0000003f , 0x0000003f 
+ 00027802  0x000076ac set1  0x00000000 , 0x0000003f 
+ 00027803  0x000076ad istore  0x00000001 , 0x00000005 
+ 00027804  0x000076ae rtn 
+ 00027805  0x000076b0 fetch  0x00000002 , 0x0000469f 
+ 00027806  0x000076b1 rshift3  0x0000003f , 0x0000003f 
+ 00027807  0x000076b2 rshift4  0x0000003f , 0x00000002 
+ 00027808  0x000076b3 and_into  0x0000007f , 0x0000003f 
+ 00027809  0x000076b4 lshift  0x0000003f , 0x0000003f 
+ 00027810  0x000076b5 set0  0x00000000 , 0x0000003f 
+ 00027811  0x000076b6 istore  0x00000001 , 0x00000005 
+ 00027812  0x000076b7 istoret  0x00000001 , 0x00000005 
+ 00027813  0x000076b8 rtn 
+ 00027814  0x000076ba fetch  0x00000001 , 0x00004569 
+ 00027815  0x000076bb rtn  0x00000034 
+ 00027816  0x000076bc istore  0x00000001 , 0x00000005 
+ 00027817  0x000076bd rtn 
+ 00027818  0x000076c3 bpatchx  0x000000b6 , 0x00004036 
+ 00027819  0x000076c4 call  0x00007d9c 
+ 00027820  0x000076c5 call  0x000032f6 
+ 00027821  0x000076c6 call  0x0000631b 
+ 00027822  0x000076c8 bpatchx  0x000000b7 , 0x00004036 
+ 00027823  0x000076c9 call  0x000076dc 
+ 00027824  0x000076ca call  0x000076b5 
+ 00027825  0x000076cb call  0x000076c6 
+ 00027826  0x000076ce call  0x0000526e 
+ 00027827  0x000076cf nrtn  0x00000034 
+ 00027828  0x000076d1 call  0x00004da9 
+ 00027829  0x000076d2 call  0x0000526e 
+ 00027830  0x000076d3 nrtn  0x00000034 
+ 00027831  0x000076d4 bpatchx  0x000000b8 , 0x00004037 
+ 00027832  0x000076d6 call  0x00006cf5 
+ 00027833  0x000076d7 call  0x00004f64 
+ 00027834  0x000076d8 call  0x00006b98 
+ 00027835  0x000076da call  0x00006cbe 
+ 00027836  0x000076db bpatchx  0x000000b9 , 0x00004037 
+ 00027837  0x000076de branch  0x000032f2 
+ 00027838  0x000076e1 fetch  0x00000001 , 0x0000027f 
+ 00027839  0x000076e2 bbit1  0x00000000 , 0x00005087 
+ 00027840  0x000076e3 bbit1  0x00000007 , 0x00005091 
+ 00027841  0x000076e4 rtn 
+ 00027842  0x000076e7 bpatchx  0x000000ba , 0x00004037 
+ 00027843  0x000076e8 call  0x00005274 
+ 00027844  0x000076e9 rtn  0x00000034 
+ 00027845  0x000076ea fetch  0x00000001 , 0x0000004b 
+ 00027846  0x000076eb rtnbit1  0x00000006 
+ 00027847  0x000076ec call  0x00005258 
+ 00027848  0x000076ed store  0x00000002 , 0x0000016f 
+ 00027849  0x000076ee copy  0x0000003f , 0x00000006 
+ 00027850  0x000076ef ifetch  0x00000002 , 0x00000006 
+ 00027851  0x000076f0 increase  0x00000004 , 0x0000003f 
+ 00027852  0x000076f1 store  0x00000002 , 0x000041dc 
+ 00027853  0x000076f2 jam  0x00000006 , 0x000041db 
+ 00027854  0x000076f3 bpatchx  0x000000bb , 0x00004037 
+ 00027855  0x000076f4 fetch  0x00000002 , 0x00004246 
+ 00027856  0x000076f5 branch  0x00006cdd , 0x00000034 
+ 00027857  0x000076f6 fetch  0x00000001 , 0x0000004b 
+ 00027858  0x000076f7 rtnbit0  0x00000007 
+ 00027859  0x000076f8 set0  0x00000007 , 0x0000003f 
+ 00027860  0x000076f9 store  0x00000001 , 0x0000004b 
+ 00027861  0x000076fa jam  0x00000005 , 0x000041db 
+ 00027862  0x000076fb fetcht  0x00000002 , 0x00004246 
+ 00027863  0x000076fc fetch  0x00000002 , 0x0000016f 
+ 00027864  0x000076fd iadd  0x00000002 , 0x0000003f 
+ 00027865  0x000076fe store  0x00000002 , 0x0000016f 
+ 00027866  0x000076ff fetch  0x00000002 , 0x000041dc 
+ 00027867  0x00007700 isub  0x00000002 , 0x0000003f 
+ 00027868  0x00007701 store  0x00000002 , 0x000041dc 
+ 00027869  0x00007703 bpatchx  0x000000bc , 0x00004037 
+ 00027870  0x00007704 fetch  0x00000002 , 0x000041dc 
+ 00027871  0x00007705 branch  0x00002a8c , 0x00000034 
+ 00027872  0x00007706 arg  0x00000104 , 0x00000002 
+ 00027873  0x00007707 isub  0x00000002 , 0x0000003f 
+ 00027874  0x00007708 nbranch  0x00006ce9 , 0x00000002 
+ 00027875  0x00007709 bpatchx  0x000000bd , 0x00004037 
+ 00027876  0x0000770a storet  0x00000002 , 0x000041dc 
+ 00027877  0x0000770b fetch  0x00000002 , 0x00004246 
+ 00027878  0x0000770c iadd  0x00000002 , 0x0000003f 
+ 00027879  0x0000770d store  0x00000002 , 0x00004246 
+ 00027880  0x0000770e branch  0x00006ceb 
+ 00027881  0x00007710 setarg  0x00000000 
+ 00027882  0x00007711 store  0x00000002 , 0x00004246 
+ 00027883  0x00007713 fetch  0x00000001 , 0x0000004b 
+ 00027884  0x00007714 set1  0x00000006 , 0x0000003f 
+ 00027885  0x00007715 store  0x00000001 , 0x0000004b 
+ 00027886  0x00007716 rtn 
+ 00027887  0x00007719 fetch  0x00000001 , 0x00004684 
+ 00027888  0x0000771a bbit1  0x00000000 , 0x00006cf3 
+ 00027889  0x0000771b jam  0x00000001 , 0x00000287 
+ 00027890  0x0000771c rtn 
+ 00027891  0x0000771e jam  0x0000000f , 0x00000287 
+ 00027892  0x0000771f rtn 
+ 00027893  0x00007722 fetch  0x00000001 , 0x00004681 
+ 00027894  0x00007723 nbranch  0x00006cfb , 0x00000034 
+ 00027895  0x00007725 fetch  0x00000001 , 0x00000286 
+ 00027896  0x00007727 rtn  0x00000034 
+ 00027897  0x00007729 jam  0x00000000 , 0x00000286 
+ 00027898  0x0000772b rtn 
+ 00027899  0x0000772f bpatchx  0x000000be , 0x00004037 
+ 00027900  0x00007730 fetch  0x00000001 , 0x00000287 
+ 00027901  0x00007731 rtn  0x00000034 
+ 00027902  0x00007732 beq  0x00000001 , 0x00006d1b 
+ 00027903  0x00007733 beq  0x00000002 , 0x00006d74 
+ 00027904  0x00007734 beq  0x00000003 , 0x00006d21 
+ 00027905  0x00007735 beq  0x00000004 , 0x00006d78 
+ 00027906  0x00007736 beq  0x0000003b , 0x00006d2b 
+ 00027907  0x00007737 beq  0x0000003c , 0x00006d7b 
+ 00027908  0x00007738 beq  0x0000000d , 0x00006d30 
+ 00027909  0x00007739 beq  0x0000000e , 0x00006d80 
+ 00027910  0x0000773a beq  0x0000000f , 0x00006d33 
+ 00027911  0x0000773b beq  0x00000010 , 0x00006d86 
+ 00027912  0x0000773c beq  0x00000011 , 0x00006d39 
+ 00027913  0x0000773d beq  0x00000012 , 0x00006d8a 
+ 00027914  0x0000773e beq  0x00000013 , 0x00006d3f 
+ 00027915  0x0000773f beq  0x00000014 , 0x00006d8e 
+ 00027916  0x00007740 beq  0x00000015 , 0x00006d45 
+ 00027917  0x00007741 beq  0x00000016 , 0x00006d92 
+ 00027918  0x00007742 beq  0x00000017 , 0x00006d4b 
+ 00027919  0x00007743 beq  0x00000018 , 0x00006d97 
+ 00027920  0x00007744 beq  0x00000019 , 0x00006d51 
+ 00027921  0x00007745 beq  0x0000001a , 0x00006d9b 
+ 00027922  0x00007746 beq  0x0000001b , 0x00006d57 
+ 00027923  0x00007747 beq  0x0000001c , 0x00006d9f 
+ 00027924  0x00007748 beq  0x0000001d , 0x00006d5d 
+ 00027925  0x00007749 beq  0x0000001e , 0x00006da4 
+ 00027926  0x0000774a beq  0x0000001f , 0x00006d63 
+ 00027927  0x0000774b beq  0x00000020 , 0x00006da8 
+ 00027928  0x0000774c beq  0x00000021 , 0x00006d6e 
+ 00027929  0x0000774d beq  0x00000022 , 0x00006dac 
+ 00027930  0x0000774f rtn 
+ 00027931  0x00007751 call  0x00006db7 
+ 00027932  0x00007752 jam  0x00000002 , 0x00000287 
+ 00027933  0x00007753 fetch  0x00000001 , 0x00004250 
+ 00027934  0x00007754 set1  0x00000000 , 0x0000003f 
+ 00027935  0x00007755 store  0x00000001 , 0x00004250 
+ 00027936  0x00007756 rtn 
+ 00027937  0x00007758 jam  0x00000004 , 0x00000287 
+ 00027938  0x00007759 fetch  0x00000001 , 0x00004250 
+ 00027939  0x0000775a rtnbit1  0x00000002 
+ 00027940  0x0000775b jam  0x00000003 , 0x00000287 
+ 00027941  0x0000775c call  0x00006dbe 
+ 00027942  0x0000775d jam  0x00000004 , 0x00000287 
+ 00027943  0x0000775e fetch  0x00000001 , 0x00004250 
+ 00027944  0x0000775f set1  0x00000002 , 0x0000003f 
+ 00027945  0x00007760 store  0x00000001 , 0x00004250 
+ 00027946  0x00007761 rtn 
+ 00027947  0x00007763 call  0x00005274 
+ 00027948  0x00007764 nrtn  0x00000034 
+ 00027949  0x00007765 call  0x00006dcd 
+ 00027950  0x00007766 jam  0x0000003c , 0x00000287 
+ 00027951  0x00007767 rtn 
+ 00027952  0x00007769 call  0x00006dc3 
+ 00027953  0x0000776a jam  0x0000000e , 0x00000287 
+ 00027954  0x0000776b rtn 
+ 00027955  0x0000776d call  0x00006ddd 
+ 00027956  0x0000776e jam  0x00000010 , 0x00000287 
+ 00027957  0x0000776f fetch  0x00000001 , 0x00004252 
+ 00027958  0x00007770 set1  0x00000000 , 0x0000003f 
+ 00027959  0x00007771 store  0x00000001 , 0x00004252 
+ 00027960  0x00007772 rtn 
+ 00027961  0x00007774 call  0x00006de4 
+ 00027962  0x00007775 jam  0x00000012 , 0x00000287 
+ 00027963  0x00007776 fetch  0x00000001 , 0x00004252 
+ 00027964  0x00007777 set1  0x00000002 , 0x0000003f 
+ 00027965  0x00007778 store  0x00000001 , 0x00004252 
+ 00027966  0x00007779 rtn 
+ 00027967  0x0000777b call  0x00006de9 
+ 00027968  0x0000777c jam  0x00000014 , 0x00000287 
+ 00027969  0x0000777d fetch  0x00000001 , 0x00004253 
+ 00027970  0x0000777e set1  0x00000000 , 0x0000003f 
+ 00027971  0x0000777f store  0x00000001 , 0x00004253 
+ 00027972  0x00007780 rtn 
+ 00027973  0x00007782 call  0x00006df0 
+ 00027974  0x00007783 jam  0x00000016 , 0x00000287 
+ 00027975  0x00007784 fetch  0x00000001 , 0x00004253 
+ 00027976  0x00007785 set1  0x00000002 , 0x0000003f 
+ 00027977  0x00007786 store  0x00000001 , 0x00004253 
+ 00027978  0x00007787 rtn 
+ 00027979  0x00007789 call  0x00006dd1 
+ 00027980  0x0000778a jam  0x00000018 , 0x00000287 
+ 00027981  0x0000778b fetch  0x00000001 , 0x00004251 
+ 00027982  0x0000778c set1  0x00000000 , 0x0000003f 
+ 00027983  0x0000778d store  0x00000001 , 0x00004251 
+ 00027984  0x0000778e rtn 
+ 00027985  0x00007790 call  0x00006dd8 
+ 00027986  0x00007791 jam  0x0000001a , 0x00000287 
+ 00027987  0x00007792 fetch  0x00000001 , 0x00004251 
+ 00027988  0x00007793 set1  0x00000002 , 0x0000003f 
+ 00027989  0x00007794 store  0x00000001 , 0x00004251 
+ 00027990  0x00007795 rtn 
+ 00027991  0x00007797 call  0x00006df5 
+ 00027992  0x00007798 jam  0x0000001c , 0x00000287 
+ 00027993  0x00007799 fetch  0x00000001 , 0x00004251 
+ 00027994  0x0000779a set1  0x00000006 , 0x0000003f 
+ 00027995  0x0000779b store  0x00000001 , 0x00004251 
+ 00027996  0x0000779c rtn 
+ 00027997  0x0000779e call  0x00006dfc 
+ 00027998  0x0000779f fetch  0x00000001 , 0x00004254 
+ 00027999  0x000077a0 set1  0x00000000 
+ 00028000  0x000077a1 store  0x00000001 , 0x00004254 
+ 00028001  0x000077a2 jam  0x0000001e , 0x00000287 
+ 00028002  0x000077a3 rtn 
+ 00028003  0x000077a5 call  0x00006e02 
+ 00028004  0x000077a6 fetch  0x00000001 , 0x00004254 
+ 00028005  0x000077a7 set1  0x00000002 
+ 00028006  0x000077a8 store  0x00000001 , 0x00004254 
+ 00028007  0x000077a9 jam  0x00000020 , 0x00000287 
+ 00028008  0x000077aa fetch  0x00000001 , 0x00004564 
+ 00028009  0x000077ab lshift3  0x0000003f , 0x0000003f 
+ 00028010  0x000077ac or_into  0x00000003 , 0x0000003f 
+ 00028011  0x000077ad arg  0x00004565 , 0x00000002 
+ 00028012  0x000077ae storet  0x00000002 , 0x000004f7 
+ 00028013  0x000077af branch  0x00006a35 
+ 00028014  0x000077b1 call  0x00006e0c 
+ 00028015  0x000077b2 fetch  0x00000001 , 0x00004254 
+ 00028016  0x000077b3 set1  0x00000004 
+ 00028017  0x000077b4 store  0x00000001 , 0x00004254 
+ 00028018  0x000077b5 jam  0x00000022 , 0x00000287 
+ 00028019  0x000077b6 rtn 
+ 00028020  0x000077b9 fetch  0x00000001 , 0x00004250 
+ 00028021  0x000077ba rtnbit0  0x00000001 
+ 00028022  0x000077bb jam  0x00000003 , 0x00000287 
+ 00028023  0x000077bc branch  0x00006cfb 
+ 00028024  0x000077be fetch  0x00000001 , 0x00004250 
+ 00028025  0x000077bf rtnne  0x0000003f 
+ 00028026  0x000077c0 jam  0x0000003b , 0x00000287 
+ 00028027  0x000077c2 fetch  0x00000001 , 0x00000285 
+ 00028028  0x000077c3 rtnne  0x00000017 
+ 00028029  0x000077c4 jam  0x00000000 , 0x00000285 
+ 00028030  0x000077c5 jam  0x0000000d , 0x00000287 
+ 00028031  0x000077c6 branch  0x00006cfb 
+ 00028032  0x000077c8 fetch  0x00000001 , 0x00004250 
+ 00028033  0x000077c9 nrtn  0x00000034 
+ 00028034  0x000077ca fetch  0x00000001 , 0x00004684 
+ 00028035  0x000077cb bbit1  0x00000000 , 0x00006daf 
+ 00028036  0x000077cc bbit1  0x00000006 , 0x00006db1 
+ 00028037  0x000077cd branch  0x00006db5 
+ 00028038  0x000077cf fetch  0x00000001 , 0x00004252 
+ 00028039  0x000077d0 rtnbit0  0x00000001 
+ 00028040  0x000077d1 jam  0x00000011 , 0x00000287 
+ 00028041  0x000077d2 branch  0x00006cfb 
+ 00028042  0x000077d4 fetch  0x00000001 , 0x00004252 
+ 00028043  0x000077d5 rtnne  0x0000003f 
+ 00028044  0x000077d6 jam  0x00000013 , 0x00000287 
+ 00028045  0x000077d7 branch  0x00006cfb 
+ 00028046  0x000077d9 fetch  0x00000001 , 0x00004253 
+ 00028047  0x000077da rtnbit0  0x00000001 
+ 00028048  0x000077db jam  0x00000015 , 0x00000287 
+ 00028049  0x000077dc branch  0x00006cfb 
+ 00028050  0x000077de fetch  0x00000001 , 0x00004253 
+ 00028051  0x000077df rtnne  0x0000003f 
+ 00028052  0x000077e0 fetch  0x00000001 , 0x00004684 
+ 00028053  0x000077e1 bbit1  0x00000006 , 0x00006db1 
+ 00028054  0x000077e2 branch  0x00006db5 
+ 00028055  0x000077e4 fetch  0x00000001 , 0x00004251 
+ 00028056  0x000077e5 rtnbit0  0x00000001 
+ 00028057  0x000077e6 jam  0x00000019 , 0x00000287 
+ 00028058  0x000077e7 branch  0x00006cfb 
+ 00028059  0x000077e9 fetch  0x00000001 , 0x00004251 
+ 00028060  0x000077ea rtnne  0x0000003f 
+ 00028061  0x000077eb jam  0x0000001b , 0x00000287 
+ 00028062  0x000077ec branch  0x00006cfb 
+ 00028063  0x000077ee fetch  0x00000001 , 0x00004251 
+ 00028064  0x000077ef rtnne  0x000000ff 
+ 00028065  0x000077f0 fetch  0x00000001 , 0x00004684 
+ 00028066  0x000077f1 bbit1  0x00000006 , 0x00006db3 
+ 00028067  0x000077f2 branch  0x00006db5 
+ 00028068  0x000077f4 fetch  0x00000001 , 0x00004254 
+ 00028069  0x000077f5 rtnbit0  0x00000001 
+ 00028070  0x000077f6 jam  0x0000001f , 0x00000287 
+ 00028071  0x000077f7 branch  0x00006cfb 
+ 00028072  0x000077f9 fetch  0x00000001 , 0x00004254 
+ 00028073  0x000077fa rtnbit0  0x00000003 
+ 00028074  0x000077fb jam  0x00000021 , 0x00000287 
+ 00028075  0x000077fc branch  0x00006cfb 
+ 00028076  0x000077fe fetch  0x00000001 , 0x00004254 
+ 00028077  0x000077ff rtnne  0x000000ff 
+ 00028078  0x00007800 branch  0x00006db5 
+ 00028079  0x00007803 jam  0x0000000f , 0x00000287 
+ 00028080  0x00007804 branch  0x00006cfb 
+ 00028081  0x00007807 jam  0x00000017 , 0x00000287 
+ 00028082  0x00007808 branch  0x00006cfb 
+ 00028083  0x0000780a jam  0x0000001d , 0x00000287 
+ 00028084  0x0000780b branch  0x00006cfb 
+ 00028085  0x00007810 jam  0x00000000 , 0x00000287 
+ 00028086  0x00007811 rtn 
+ 00028087  0x00007813 bpatchx  0x000000bf , 0x00004037 
+ 00028088  0x00007814 call  0x000052b8 
+ 00028089  0x00007815 setarg  0x00000001 
+ 00028090  0x00007816 copy  0x0000003f , 0x00000002 
+ 00028091  0x00007817 setarg  0x00000050 
+ 00028092  0x00007818 copy  0x0000003f , 0x0000000b 
+ 00028093  0x00007819 branch  0x000050a8 
+ 00028094  0x0000781c bpatchx  0x000000c0 , 0x00004038 
+ 00028095  0x0000781d call  0x000052b8 
+ 00028096  0x0000781e fetch  0x00000002 , 0x00004248 
+ 00028097  0x0000781f copy  0x0000003f , 0x00000002 
+ 00028098  0x00007820 branch  0x000050b7 
+ 00028099  0x00007823 bpatchx  0x000000c1 , 0x00004038 
+ 00028100  0x00007824 call  0x000052b8 
+ 00028101  0x00007825 fetch  0x00000002 , 0x00004248 
+ 00028102  0x00007826 copy  0x0000003f , 0x00000002 
+ 00028103  0x00007827 arg  0x00000050 , 0x0000000b 
+ 00028104  0x00007828 call  0x000050cc 
+ 00028105  0x00007829 fetch  0x00000001 , 0x00004250 
+ 00028106  0x0000782a set0  0x00000005 , 0x0000003f 
+ 00028107  0x0000782b store  0x00000001 , 0x00004250 
+ 00028108  0x0000782c rtn 
+ 00028109  0x0000782f bpatchx  0x000000c2 , 0x00004038 
+ 00028110  0x00007830 call  0x000052c5 
+ 00028111  0x00007831 call  0x00007138 
+ 00028112  0x00007832 branch  0x000050e7 
+ 00028113  0x00007835 bpatchx  0x000000c3 , 0x00004038 
+ 00028114  0x00007836 call  0x000052b8 
+ 00028115  0x00007837 setarg  0x00000003 
+ 00028116  0x00007838 copy  0x0000003f , 0x00000002 
+ 00028117  0x00007839 setarg  0x00000051 
+ 00028118  0x0000783a copy  0x0000003f , 0x0000000b 
+ 00028119  0x0000783b branch  0x000050a8 
+ 00028120  0x0000783e bpatchx  0x000000c4 , 0x00004038 
+ 00028121  0x0000783f call  0x000052b8 
+ 00028122  0x00007840 fetch  0x00000002 , 0x0000424a 
+ 00028123  0x00007841 copy  0x0000003f , 0x00000002 
+ 00028124  0x00007842 branch  0x000050b7 
+ 00028125  0x00007845 bpatchx  0x000000c5 , 0x00004038 
+ 00028126  0x00007846 call  0x000052b8 
+ 00028127  0x00007847 setarg  0x00000011 
+ 00028128  0x00007848 copy  0x0000003f , 0x00000002 
+ 00028129  0x00007849 setarg  0x00000052 
+ 00028130  0x0000784a copy  0x0000003f , 0x0000000b 
+ 00028131  0x0000784b branch  0x000050a8 
+ 00028132  0x0000784e bpatchx  0x000000c6 , 0x00004038 
+ 00028133  0x0000784f call  0x000052b8 
+ 00028134  0x00007850 fetch  0x00000002 , 0x0000424c 
+ 00028135  0x00007851 copy  0x0000003f , 0x00000002 
+ 00028136  0x00007852 branch  0x000050b7 
+ 00028137  0x00007855 bpatchx  0x000000c7 , 0x00004038 
+ 00028138  0x00007856 call  0x000052b8 
+ 00028139  0x00007857 setarg  0x00000013 
+ 00028140  0x00007858 copy  0x0000003f , 0x00000002 
+ 00028141  0x00007859 setarg  0x00000053 
+ 00028142  0x0000785a copy  0x0000003f , 0x0000000b 
+ 00028143  0x0000785b branch  0x000050a8 
+ 00028144  0x0000785e bpatchx  0x000000c8 , 0x00004039 
+ 00028145  0x0000785f call  0x000052b8 
+ 00028146  0x00007860 fetch  0x00000002 , 0x0000424e 
+ 00028147  0x00007861 copy  0x0000003f , 0x00000002 
+ 00028148  0x00007862 branch  0x000050b7 
+ 00028149  0x00007865 bpatchx  0x000000c9 , 0x00004039 
+ 00028150  0x00007866 call  0x000052d2 
+ 00028151  0x00007868 jam  0x00000003 , 0x000004fb 
+ 00028152  0x00007869 jam  0x0000001c , 0x000004fe 
+ 00028153  0x0000786a call  0x00006ba9 
+ 00028154  0x0000786b jam  0x00000001 , 0x00004563 
+ 00028155  0x0000786c rtn 
+ 00028156  0x0000786f bpatchx  0x000000ca , 0x00004039 
+ 00028157  0x00007870 call  0x000052d2 
+ 00028158  0x00007871 fetcht  0x00000001 , 0x00004564 
+ 00028159  0x00007872 call  0x00006a79 
+ 00028160  0x00007873 storet  0x00000001 , 0x0000455d 
+ 00028161  0x00007874 branch  0x00006bc4 
+ 00028162  0x00007877 bpatchx  0x000000cb , 0x00004039 
+ 00028163  0x00007878 call  0x000052d2 
+ 00028164  0x00007879 fetcht  0x00000001 , 0x0000455d 
+ 00028165  0x0000787a call  0x00006a73 
+ 00028166  0x0000787b call  0x00006a1a 
+ 00028167  0x0000787c store  0x00000001 , 0x000004fe 
+ 00028168  0x0000787d fetcht  0x00000001 , 0x0000455d 
+ 00028169  0x0000787e call  0x00006a73 
+ 00028170  0x0000787f storet  0x00000001 , 0x000004fb 
+ 00028171  0x00007880 branch  0x00006ba9 
+ 00028172  0x00007883 bpatchx  0x000000cc , 0x00004039 
+ 00028173  0x00007884 call  0x000052d2 
+ 00028174  0x00007885 fetcht  0x00000001 , 0x0000455d 
+ 00028175  0x00007886 call  0x00006a73 
+ 00028176  0x00007887 branch  0x00006bfc 
+ 00028177  0x00007895 bpatchx  0x000000cd , 0x00004039 
+ 00028178  0x00007896 fetch  0x00000002 , 0x00000264 
+ 00028179  0x00007897 iforce  0x00000006 
+ 00028180  0x0000789a ifetch  0x00000001 , 0x00000006 
+ 00028181  0x0000789b copy  0x0000003f , 0x00000012 
+ 00028182  0x0000789c store  0x00000001 , 0x0000051b 
+ 00028183  0x0000789d ifetch  0x00000002 , 0x00000006 
+ 00028184  0x0000789e store  0x00000002 , 0x0000051c 
+ 00028185  0x0000789f ifetch  0x00000001 , 0x00000006 
+ 00028186  0x000078a0 lshift8  0x0000003f , 0x0000000b 
+ 00028187  0x000078a1 ifetch  0x00000001 , 0x00000006 
+ 00028188  0x000078a2 iadd  0x0000000b , 0x0000000b 
+ 00028189  0x000078a3 bpatchx  0x000000ce , 0x00004039 
+ 00028190  0x000078a4 copy  0x00000006 , 0x00000002 
+ 00028191  0x000078a5 arg  0x00000004 , 0x00000039 
+ 00028192  0x000078a6 arg  0x0000052a , 0x00000005 
+ 00028193  0x000078a7 call  0x00007ec6 
+ 00028194  0x000078a8 copy  0x00000002 , 0x00000006 
+ 00028195  0x000078a9 deposit  0x00000012 
+ 00028196  0x000078aa beq  0x00000001 , 0x00006fba 
+ 00028197  0x000078ab beq  0x00000002 , 0x00006e2c 
+ 00028198  0x000078ac beq  0x00000003 , 0x00006fba 
+ 00028199  0x000078ad beq  0x00000004 , 0x00006e54 
+ 00028200  0x000078ae beq  0x00000005 , 0x00006fba 
+ 00028201  0x000078af beq  0x00000006 , 0x00006f02 
+ 00028202  0x000078b0 beq  0x00000007 , 0x00006fba 
+ 00028203  0x000078b1 branch  0x00006fc1 
+ 00028204  0x000078bd bpatchx  0x000000cf , 0x00004039 
+ 00028205  0x000078be call  0x00006fd0 
+ 00028206  0x000078bf compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00028207  0x000078c0 branch  0x00007040 , 0x00000001 
+ 00028208  0x000078c1 compare  0x000000ff , 0x00000002 , 0x000000ff 
+ 00028209  0x000078c2 branch  0x00006fc4 , 0x00000001 
+ 00028210  0x000078c4 ifetch  0x00000002 , 0x00000006 
+ 00028211  0x000078c5 store  0x00000002 , 0x00000522 
+ 00028212  0x000078c6 increase  0xfffffffe , 0x0000000b 
+ 00028213  0x000078c8 increase  0xffffffff , 0x0000000b 
+ 00028214  0x000078c9 nbranch  0x00006fbe , 0x00000005 
+ 00028215  0x000078ca arg  0x00000511 , 0x0000000b 
+ 00028216  0x000078cb ifetch  0x00000002 , 0x0000000b 
+ 00028217  0x000078cc rtn  0x00000034 
+ 00028218  0x000078cd call  0x00007082 
+ 00028219  0x000078ce call  0x000052d0 
+ 00028220  0x000078cf force  0x00000003 , 0x0000003f 
+ 00028221  0x000078d0 istore  0x00000001 , 0x00000005 
+ 00028222  0x000078d1 fetch  0x00000002 , 0x0000051c 
+ 00028223  0x000078d2 istore  0x00000002 , 0x00000005 
+ 00028224  0x000078d3 lshift2  0x00000007 , 0x0000003f 
+ 00028225  0x000078d4 add  0x0000003f , 0x00000005 , 0x0000003f 
+ 00028226  0x000078d5 add  0x0000003f , 0x00000005 , 0x00000013 
+ 00028227  0x000078d6 byteswap  0x0000003f , 0x0000003f 
+ 00028228  0x000078d7 istore  0x00000002 , 0x00000005 
+ 00028229  0x000078d8 deposit  0x00000007 
+ 00028230  0x000078d9 byteswap  0x0000003f , 0x0000003f 
+ 00028231  0x000078da istore  0x00000002 , 0x00000005 
+ 00028232  0x000078db istore  0x00000002 , 0x00000005 
+ 00028233  0x000078dc arg  0x0000052a , 0x00000006 
+ 00028234  0x000078dd copy  0x00000007 , 0x00000039 
+ 00028235  0x000078de branch  0x00006e4f , 0x00000005 
+ 00028236  0x000078e0 ifetch  0x00000004 , 0x00000006 
+ 00028237  0x000078e1 istore  0x00000004 , 0x00000005 
+ 00028238  0x000078e2 loop  0x00006e4c 
+ 00028239  0x000078e4 force  0x00000000 , 0x0000003f 
+ 00028240  0x000078e5 istore  0x00000001 , 0x00000005 
+ 00028241  0x000078e6 deposit  0x00000013 
+ 00028242  0x000078e7 store  0x00000002 , 0x00000275 
+ 00028243  0x000078e9 rtn 
+ 00028244  0x000078f5 bpatchx  0x000000d0 , 0x0000403a 
+ 00028245  0x000078f6 ifetch  0x00000004 , 0x00000006 
+ 00028246  0x000078f7 store  0x00000004 , 0x00000524 
+ 00028247  0x000078f8 increase  0xfffffffc , 0x0000000b 
+ 00028248  0x000078f9 call  0x00006f2e 
+ 00028249  0x000078fa store  0x00000002 , 0x00000520 
+ 00028250  0x000078fb increase  0xfffffffe , 0x0000000b 
+ 00028251  0x000078fc call  0x00007028 
+ 00028252  0x000078fd branch  0x00006fc4 , 0x00000005 
+ 00028253  0x000078fe compare  0x00000005 , 0x00000011 , 0x000000ff 
+ 00028254  0x00007900 branch  0x00006e62 , 0x00000001 
+ 00028255  0x00007902 arg  0x0000052a , 0x00000005 
+ 00028256  0x00007903 force  0x00000000 , 0x00000007 
+ 00028257  0x00007904 branch  0x00006e71 
+ 00028258  0x00007906 ifetch  0x00000001 , 0x00000006 
+ 00028259  0x00007907 bne  0x0000000a , 0x00006fc4 
+ 00028260  0x00007908 ifetch  0x00000002 , 0x00000006 
+ 00028261  0x00007909 nbranch  0x00006e6f , 0x00000034 
+ 00028262  0x0000790a ifetch  0x00000001 , 0x00000006 
+ 00028263  0x0000790b bne  0x000000ff , 0x00006e6d 
+ 00028264  0x0000790c ifetch  0x00000001 , 0x00000006 
+ 00028265  0x0000790d bne  0x000000ff , 0x00006e6b 
+ 00028266  0x0000790e branch  0x00006eb8 
+ 00028267  0x00007910 increase  0xfffffffb , 0x00000006 
+ 00028268  0x00007911 branch  0x00006e5f 
+ 00028269  0x00007913 increase  0xfffffffc , 0x00000006 
+ 00028270  0x00007914 branch  0x00006e5f 
+ 00028271  0x00007916 increase  0xfffffffd , 0x00000006 
+ 00028272  0x00007917 branch  0x00006e5f 
+ 00028273  0x00007919 ifetch  0x00000001 , 0x00000006 
+ 00028274  0x0000791a beq  0x00000009 , 0x00006e86 
+ 00028275  0x0000791b beq  0x0000000a , 0x00006e74 
+ 00028276  0x0000791d ifetch  0x00000002 , 0x00000006 
+ 00028277  0x0000791e istore  0x00000002 , 0x00000005 
+ 00028278  0x0000791f increase  0x00000001 , 0x00000007 
+ 00028279  0x00007920 byteswap  0x0000003f , 0x00000012 
+ 00028280  0x00007921 ifetch  0x00000002 , 0x00000006 
+ 00028281  0x00007922 byteswap  0x0000003f , 0x0000003f 
+ 00028282  0x00007924 increase  0x00000001 , 0x00000012 
+ 00028283  0x00007925 isub  0x00000012 , 0x0000003e 
+ 00028284  0x00007926 nbranch  0x00006e83 , 0x00000002 
+ 00028285  0x00007927 copy  0x0000003f , 0x00000013 
+ 00028286  0x00007928 byteswap  0x00000012 , 0x0000003f 
+ 00028287  0x00007929 istore  0x00000002 , 0x00000005 
+ 00028288  0x0000792a increase  0x00000001 , 0x00000007 
+ 00028289  0x0000792b copy  0x00000013 , 0x0000003f 
+ 00028290  0x0000792c branch  0x00006e7a 
+ 00028291  0x0000792e increase  0xfffffffb , 0x0000000b 
+ 00028292  0x0000792f increase  0xfffffffb , 0x00000011 
+ 00028293  0x00007930 branch  0x00006e8b 
+ 00028294  0x00007932 ifetch  0x00000002 , 0x00000006 
+ 00028295  0x00007933 istore  0x00000002 , 0x00000005 
+ 00028296  0x00007934 increase  0x00000001 , 0x00000007 
+ 00028297  0x00007935 increase  0xfffffffd , 0x0000000b 
+ 00028298  0x00007936 increase  0xfffffffd , 0x00000011 
+ 00028299  0x00007938 nbranch  0x00006fc4 , 0x00000002 
+ 00028300  0x00007939 nbranch  0x00006e71 , 0x00000005 
+ 00028301  0x0000793a increase  0xffffffff , 0x0000000b 
+ 00028302  0x0000793b nbranch  0x00006fc4 , 0x00000005 
+ 00028303  0x0000793d call  0x000052d0 
+ 00028304  0x0000793e increase  0x0000000a , 0x00000005 
+ 00028305  0x0000793f arg  0x0000052a , 0x00000011 
+ 00028306  0x00007941 copy  0x00000007 , 0x0000003f 
+ 00028307  0x00007942 branch  0x00006ea5 , 0x00000034 
+ 00028308  0x00007943 ifetch  0x00000002 , 0x00000011 
+ 00028309  0x00007944 branch  0x00006ea5 , 0x00000034 
+ 00028310  0x00007945 iforce  0x00000012 
+ 00028311  0x00007946 fetch  0x00000004 , 0x00000524 
+ 00028312  0x00007947 iforce  0x00000002 
+ 00028313  0x00007948 call  0x000070e7 
+ 00028314  0x00007949 copy  0x00000006 , 0x0000003f 
+ 00028315  0x0000794a branch  0x00006ea2 , 0x00000034 
+ 00028316  0x0000794b increase  0xfffffffd , 0x00000006 
+ 00028317  0x0000794c ifetch  0x00000003 , 0x00000006 
+ 00028318  0x0000794d istore  0x00000003 , 0x00000005 
+ 00028319  0x0000794e call  0x0000705b 
+ 00028320  0x0000794f iforce  0x00000039 
+ 00028321  0x00007950 call  0x00007f01 
+ 00028322  0x00007952 increase  0x00000002 , 0x00000011 
+ 00028323  0x00007953 increase  0xffffffff , 0x00000007 
+ 00028324  0x00007954 branch  0x00006e92 
+ 00028325  0x00007957 arg  0x00000005 , 0x00000011 
+ 00028326  0x00007958 call  0x00006f84 
+ 00028327  0x00007959 fetch  0x00000002 , 0x00000275 
+ 00028328  0x0000795a beq  0x0000000b , 0x00007043 
+ 00028329  0x0000795b branch  0x00006f9a 
+ 00028330  0x0000795f ifetch  0x00000001 , 0x00000006 
+ 00028331  0x00007960 beq  0x00000000 , 0x00006eae 
+ 00028332  0x00007961 beq  0x00000001 , 0x00006eb0 
+ 00028333  0x00007962 beq  0x00000002 , 0x00006eb3 
+ 00028334  0x00007964 increase  0xffffffff , 0x0000000b 
+ 00028335  0x00007965 branch  0x00006eb6 
+ 00028336  0x00007967 ifetch  0x00000001 , 0x00000006 
+ 00028337  0x00007968 increase  0xfffffffe , 0x0000000b 
+ 00028338  0x00007969 branch  0x00006eb6 
+ 00028339  0x0000796b ifetch  0x00000002 , 0x00000006 
+ 00028340  0x0000796c byteswap  0x0000003f , 0x0000003f 
+ 00028341  0x0000796d increase  0xfffffffd , 0x0000000b 
+ 00028342  0x0000796f store  0x00000002 , 0x00000519 
+ 00028343  0x00007970 rtn 
+ 00028344  0x00007973 increase  0xfffffffb , 0x0000000b 
+ 00028345  0x00007974 call  0x00006eaa 
+ 00028346  0x00007975 nbranch  0x00006fbe , 0x00000005 
+ 00028347  0x00007976 fetcht  0x00000004 , 0x00000524 
+ 00028348  0x00007977 call  0x000070b1 
+ 00028349  0x00007978 nbranch  0x00006fbb , 0x00000005 
+ 00028350  0x00007979 copy  0x00000006 , 0x00000011 
+ 00028351  0x0000797a call  0x000052d0 
+ 00028352  0x0000797b copy  0x00000011 , 0x00000006 
+ 00028353  0x0000797c increase  0x00000003 , 0x00000005 
+ 00028354  0x0000797d copy  0x00000006 , 0x0000000b 
+ 00028355  0x0000797e call  0x00007062 
+ 00028356  0x0000797f copy  0x0000003f , 0x00000011 
+ 00028357  0x00007981 fetch  0x00000002 , 0x00000519 
+ 00028358  0x00007982 copy  0x0000003f , 0x00000012 
+ 00028359  0x00007983 copy  0x00000011 , 0x0000003f 
+ 00028360  0x00007984 isub  0x00000012 , 0x00000012 
+ 00028361  0x00007985 fetch  0x00000002 , 0x00000520 
+ 00028362  0x00007986 isub  0x00000012 , 0x0000003e 
+ 00028363  0x00007987 nbranch  0x00006ee7 , 0x00000002 
+ 00028364  0x00007989 disable  0x00000028 
+ 00028365  0x0000798a fetch  0x00000002 , 0x00000519 
+ 00028366  0x0000798b branch  0x00006eda , 0x00000034 
+ 00028367  0x0000798c iadd  0x0000000b , 0x00000006 
+ 00028368  0x0000798d increase  0x00000003 , 0x00000012 
+ 00028369  0x0000798e copy  0x00000012 , 0x00000039 
+ 00028370  0x0000798f copy  0x00000039 , 0x0000003f 
+ 00028371  0x00007990 increase  0x00000003 , 0x0000003f 
+ 00028372  0x00007991 byteswap  0x0000003f , 0x0000003f 
+ 00028373  0x00007992 istore  0x00000002 , 0x00000005 
+ 00028374  0x00007993 copy  0x00000039 , 0x0000003f 
+ 00028375  0x00007994 byteswap  0x0000003f , 0x0000003f 
+ 00028376  0x00007995 istore  0x00000002 , 0x00000005 
+ 00028377  0x00007996 branch  0x00006ef5 
+ 00028378  0x00007998 add  0x00000011 , 0x00000006 , 0x00000039 
+ 00028379  0x00007999 branch  0x00006ede , 0x00000028 
+ 00028380  0x0000799a byteswap  0x00000039 , 0x0000003f 
+ 00028381  0x0000799b branch  0x00006ee1 
+ 00028382  0x0000799d copy  0x00000039 , 0x0000003f 
+ 00028383  0x0000799e increase  0x00000002 , 0x0000003f 
+ 00028384  0x0000799f byteswap  0x0000003f , 0x0000003f 
+ 00028385  0x000079a1 istore  0x00000002 , 0x00000005 
+ 00028386  0x000079a2 increase  0xfffffffd , 0x00000039 
+ 00028387  0x000079a3 byteswap  0x00000039 , 0x0000003f 
+ 00028388  0x000079a4 istore  0x00000002 , 0x00000005 
+ 00028389  0x000079a5 copy  0x0000000b , 0x00000006 
+ 00028390  0x000079a6 branch  0x00006ef5 
+ 00028391  0x000079a8 enable  0x00000028 
+ 00028392  0x000079aa fetch  0x00000002 , 0x00000520 
+ 00028393  0x000079ab copy  0x0000003f , 0x00000011 
+ 00028394  0x000079ac copy  0x00000011 , 0x00000039 
+ 00028395  0x000079ad fetch  0x00000002 , 0x00000519 
+ 00028396  0x000079ae branch  0x00006eda , 0x00000034 
+ 00028397  0x000079af iadd  0x0000000b , 0x00000006 
+ 00028398  0x000079b0 copy  0x00000011 , 0x0000003f 
+ 00028399  0x000079b1 increase  0x00000005 , 0x0000003f 
+ 00028400  0x000079b2 byteswap  0x0000003f , 0x0000003f 
+ 00028401  0x000079b3 istore  0x00000002 , 0x00000005 
+ 00028402  0x000079b4 copy  0x00000011 , 0x0000003f 
+ 00028403  0x000079b5 byteswap  0x0000003f , 0x0000003f 
+ 00028404  0x000079b6 istore  0x00000002 , 0x00000005 
+ 00028405  0x000079b8 call  0x00007f01 
+ 00028406  0x000079b9 nbranch  0x00006efe , 0x00000028 
+ 00028407  0x000079ba force  0x00000002 , 0x0000003f 
+ 00028408  0x000079bb istore  0x00000001 , 0x00000005 
+ 00028409  0x000079bc copy  0x00000006 , 0x0000003f 
+ 00028410  0x000079bd isub  0x0000000b , 0x0000003f 
+ 00028411  0x000079be byteswap  0x0000003f , 0x0000003f 
+ 00028412  0x000079bf istore  0x00000002 , 0x00000005 
+ 00028413  0x000079c0 branch  0x00006f00 
+ 00028414  0x000079c2 force  0x00000000 , 0x0000003f 
+ 00028415  0x000079c3 istore  0x00000001 , 0x00000005 
+ 00028416  0x000079c5 arg  0x00000005 , 0x00000011 
+ 00028417  0x000079c6 branch  0x00006fb0 
+ 00028418  0x000079d2 bpatchx  0x000000d1 , 0x0000403a 
+ 00028419  0x000079d3 call  0x00006fd0 
+ 00028420  0x000079d4 compare  0x000000ff , 0x00000002 , 0x000000ff 
+ 00028421  0x000079d5 branch  0x00006fc4 , 0x00000001 
+ 00028422  0x000079d6 call  0x00006f2e 
+ 00028423  0x000079d7 store  0x00000002 , 0x00000520 
+ 00028424  0x000079d8 increase  0xfffffffe , 0x0000000b 
+ 00028425  0x000079d9 call  0x00007028 
+ 00028426  0x000079da arg  0x0000052a , 0x00000005 
+ 00028427  0x000079db force  0x00000000 , 0x00000007 
+ 00028428  0x000079dd ifetch  0x00000001 , 0x00000006 
+ 00028429  0x000079de beq  0x0000000a , 0x00006f36 
+ 00028430  0x000079df ifetch  0x00000002 , 0x00000006 
+ 00028431  0x000079e0 istore  0x00000002 , 0x00000005 
+ 00028432  0x000079e1 increase  0x00000001 , 0x00000007 
+ 00028433  0x000079e2 increase  0xfffffffd , 0x0000000b 
+ 00028434  0x000079e3 increase  0xfffffffd , 0x00000011 
+ 00028435  0x000079e4 nbranch  0x00006fc4 , 0x00000002 
+ 00028436  0x000079e5 nbranch  0x00006f0c , 0x00000005 
+ 00028437  0x000079e6 increase  0xffffffff , 0x0000000b 
+ 00028438  0x000079e7 nbranch  0x00006fc4 , 0x00000005 
+ 00028439  0x000079e8 call  0x000052d0 
+ 00028440  0x000079e9 increase  0x0000000d , 0x00000005 
+ 00028441  0x000079ea fetch  0x00000002 , 0x00000511 
+ 00028442  0x000079eb iforce  0x00000013 
+ 00028443  0x000079ec arg  0x0000052a , 0x00000011 
+ 00028444  0x000079ee ifetch  0x00000002 , 0x00000011 
+ 00028445  0x000079ef branch  0x00006f29 , 0x00000034 
+ 00028446  0x000079f0 iforce  0x00000012 
+ 00028447  0x000079f1 call  0x000070c6 
+ 00028448  0x000079f2 branch  0x00006f27 , 0x00000034 
+ 00028449  0x000079f3 increase  0xfffffffd , 0x00000006 
+ 00028450  0x000079f4 ifetch  0x00000003 , 0x00000006 
+ 00028451  0x000079f5 istore  0x00000003 , 0x00000005 
+ 00028452  0x000079f6 call  0x0000705b 
+ 00028453  0x000079f7 iforce  0x00000039 
+ 00028454  0x000079f8 call  0x00007f01 
+ 00028455  0x000079fa increase  0x00000002 , 0x00000011 
+ 00028456  0x000079fb branch  0x00006f1c 
+ 00028457  0x000079fe call  0x00006f83 
+ 00028458  0x000079ff fetch  0x00000002 , 0x00000275 
+ 00028459  0x00007a00 beq  0x0000000e , 0x00007046 
+ 00028460  0x00007a01 call  0x00006f9a 
+ 00028461  0x00007a02 branch  0x00006f9a 
+ 00028462  0x00007a06 ifetch  0x00000002 , 0x00000006 
+ 00028463  0x00007a07 byteswap  0x0000003f , 0x0000003f 
+ 00028464  0x00007a08 increase  0xfffffffd , 0x0000003f 
+ 00028465  0x00007a09 arg  0x000000c8 , 0x00000002 
+ 00028466  0x00007a0a isub  0x00000002 , 0x0000003e 
+ 00028467  0x00007a0b nrtn  0x00000002 
+ 00028468  0x00007a0c setarg  0x000000c8 
+ 00028469  0x00007a0d rtn 
+ 00028470  0x00007a11 increase  0x00000004 , 0x00000006 
+ 00028471  0x00007a12 increase  0xfffffffb , 0x0000000b 
+ 00028472  0x00007a13 increase  0xfffffffb , 0x00000011 
+ 00028473  0x00007a14 nbranch  0x00006fc4 , 0x00000005 
+ 00028474  0x00007a15 call  0x00006eaa 
+ 00028475  0x00007a16 nbranch  0x00006fbe , 0x00000005 
+ 00028476  0x00007a17 arg  0x00000511 , 0x0000000b 
+ 00028477  0x00007a18 call  0x00007082 
+ 00028478  0x00007a19 deposit  0x00000007 
+ 00028479  0x00007a1a branch  0x00007046 , 0x00000034 
+ 00028480  0x00007a1b store  0x00000001 , 0x0000054e 
+ 00028481  0x00007a1d copy  0x00000012 , 0x0000003f 
+ 00028482  0x00007a1e store  0x00000002 , 0x0000054c 
+ 00028483  0x00007a1f arg  0x00000000 , 0x00000007 
+ 00028484  0x00007a20 arg  0x00000000 , 0x00000011 
+ 00028485  0x00007a21 call  0x000052d0 
+ 00028486  0x00007a22 increase  0x0000000a , 0x00000005 
+ 00028487  0x00007a24 call  0x00006f6c 
+ 00028488  0x00007a25 nbranch  0x00002a8c , 0x00000028 
+ 00028489  0x00007a26 copy  0x00000006 , 0x0000000b 
+ 00028490  0x00007a27 copy  0x0000003f , 0x00000013 
+ 00028491  0x00007a28 iadd  0x00000011 , 0x00000011 
+ 00028492  0x00007a2b fetch  0x00000002 , 0x00000519 
+ 00028493  0x00007a2c copy  0x0000003f , 0x00000012 
+ 00028494  0x00007a2d branch  0x00006f75 , 0x00000034 
+ 00028495  0x00007a2f copy  0x00000011 , 0x0000003f 
+ 00028496  0x00007a30 isub  0x00000012 , 0x00000012 
+ 00028497  0x00007a31 branch  0x00006f67 , 0x00000005 
+ 00028498  0x00007a32 nbranch  0x00006f67 , 0x00000002 
+ 00028499  0x00007a33 fetch  0x00000002 , 0x00000520 
+ 00028500  0x00007a34 isub  0x00000012 , 0x0000003e 
+ 00028501  0x00007a35 branch  0x00006f5e , 0x00000005 
+ 00028502  0x00007a36 nbranch  0x00006f5e , 0x00000002 
+ 00028503  0x00007a3a copy  0x00000012 , 0x00000039 
+ 00028504  0x00007a3b call  0x00006f61 
+ 00028505  0x00007a3c fetch  0x00000001 , 0x0000054e 
+ 00028506  0x00007a3d increase  0x00000001 , 0x00000007 
+ 00028507  0x00007a3e isub  0x00000007 , 0x0000003e 
+ 00028508  0x00007a3f branch  0x00006f83 , 0x00000005 
+ 00028509  0x00007a40 branch  0x00006fa0 
+ 00028510  0x00007a43 copy  0x0000003f , 0x00000039 
+ 00028511  0x00007a44 call  0x00006f61 
+ 00028512  0x00007a45 branch  0x00006fa0 
+ 00028513  0x00007a48 increase  0xfffffffd , 0x00000005 
+ 00028514  0x00007a49 copy  0x00000039 , 0x00000002 
+ 00028515  0x00007a4a copy  0x00000013 , 0x0000003f 
+ 00028516  0x00007a4b isub  0x00000012 , 0x0000003f 
+ 00028517  0x00007a4c iadd  0x0000000b , 0x00000006 
+ 00028518  0x00007a4d branch  0x00007f01 
+ 00028519  0x00007a50 fetch  0x00000001 , 0x0000054e 
+ 00028520  0x00007a51 increase  0x00000001 , 0x00000007 
+ 00028521  0x00007a52 isub  0x00000007 , 0x0000003e 
+ 00028522  0x00007a53 rtn  0x00000005 
+ 00028523  0x00007a54 branch  0x00006f47 
+ 00028524  0x00007a57 call  0x00007fe9 
+ 00028525  0x00007a58 arg  0x0000052a , 0x00000006 
+ 00028526  0x00007a59 lshift2  0x00000007 , 0x0000003f 
+ 00028527  0x00007a5a iadd  0x00000006 , 0x00000006 
+ 00028528  0x00007a5b ifetcht  0x00000004 , 0x00000006 
+ 00028529  0x00007a5c call  0x000070b1 
+ 00028530  0x00007a5d nrtn  0x00000005 
+ 00028531  0x00007a5e call  0x0000705b 
+ 00028532  0x00007a5f branch  0x00007fe7 
+ 00028533  0x00007a62 fetch  0x00000002 , 0x00000520 
+ 00028534  0x00007a63 isub  0x00000011 , 0x0000003e 
+ 00028535  0x00007a64 nbranch  0x00006f8f , 0x00000002 
+ 00028536  0x00007a65 copy  0x00000011 , 0x00000039 
+ 00028537  0x00007a66 copy  0x00000039 , 0x00000002 
+ 00028538  0x00007a67 copy  0x0000000b , 0x00000006 
+ 00028539  0x00007a68 call  0x00007f01 
+ 00028540  0x00007a69 fetch  0x00000002 , 0x0000054c 
+ 00028541  0x00007a6a isub  0x00000011 , 0x0000003e 
+ 00028542  0x00007a6b branch  0x00006f81 , 0x00000005 
+ 00028543  0x00007a6d call  0x00006fa0 
+ 00028544  0x00007a6e branch  0x00006f94 
+ 00028545  0x00007a71 call  0x00006f83 
+ 00028546  0x00007a72 branch  0x00006f94 
+ 00028547  0x00007a75 arg  0x00000007 , 0x00000011 
+ 00028548  0x00007a77 force  0x00000000 , 0x0000003f 
+ 00028549  0x00007a78 istore  0x00000001 , 0x00000005 
+ 00028550  0x00007a79 call  0x00006fb0 
+ 00028551  0x00007a7a fetcht  0x00000002 , 0x00000275 
+ 00028552  0x00007a7b increase  0xfffffffb , 0x00000002 
+ 00028553  0x00007a7c byteswap  0x00000002 , 0x0000003f 
+ 00028554  0x00007a7d istore  0x00000002 , 0x00000005 
+ 00028555  0x00007a7e increase  0xfffffffd , 0x00000002 
+ 00028556  0x00007a7f byteswap  0x00000002 , 0x0000003f 
+ 00028557  0x00007a80 istore  0x00000002 , 0x00000005 
+ 00028558  0x00007a81 rtn 
+ 00028559  0x00007a84 copy  0x0000003f , 0x00000039 
+ 00028560  0x00007a85 copy  0x00000039 , 0x00000002 
+ 00028561  0x00007a86 copy  0x0000000b , 0x00000006 
+ 00028562  0x00007a87 call  0x00007f01 
+ 00028563  0x00007a88 call  0x00006fa0 
+ 00028564  0x00007a8a setarg  0x00000036 
+ 00028565  0x00007a8b istore  0x00000001 , 0x00000005 
+ 00028566  0x00007a8c fetch  0x00000002 , 0x0000054c 
+ 00028567  0x00007a8d byteswap  0x0000003f , 0x0000003f 
+ 00028568  0x00007a8e istore  0x00000002 , 0x00000005 
+ 00028569  0x00007a8f rtn 
+ 00028570  0x00007a92 setarg  0x00000036 
+ 00028571  0x00007a93 istore  0x00000001 , 0x00000005 
+ 00028572  0x00007a94 increase  0xfffffffd , 0x00000002 
+ 00028573  0x00007a95 byteswap  0x00000002 , 0x0000003f 
+ 00028574  0x00007a96 istore  0x00000002 , 0x00000005 
+ 00028575  0x00007a97 rtn 
+ 00028576  0x00007a9a arg  0x00000007 , 0x00000011 
+ 00028577  0x00007a9b setarg  0x00000002 
+ 00028578  0x00007a9c istore  0x00000001 , 0x00000005 
+ 00028579  0x00007a9d fetch  0x00000002 , 0x00000519 
+ 00028580  0x00007a9e iadd  0x00000002 , 0x00000002 
+ 00028581  0x00007a9f byteswap  0x00000002 , 0x0000003f 
+ 00028582  0x00007aa0 istore  0x00000002 , 0x00000005 
+ 00028583  0x00007aa1 call  0x00006fb0 
+ 00028584  0x00007aa2 fetcht  0x00000002 , 0x00000275 
+ 00028585  0x00007aa3 increase  0xfffffffb , 0x00000002 
+ 00028586  0x00007aa4 byteswap  0x00000002 , 0x0000003f 
+ 00028587  0x00007aa5 istore  0x00000002 , 0x00000005 
+ 00028588  0x00007aa6 increase  0xfffffffb , 0x00000002 
+ 00028589  0x00007aa7 byteswap  0x00000002 , 0x0000003f 
+ 00028590  0x00007aa8 istore  0x00000002 , 0x00000005 
+ 00028591  0x00007aa9 rtn 
+ 00028592  0x00007aac fetch  0x00000002 , 0x00000273 
+ 00028593  0x00007aad isub  0x00000005 , 0x0000003f 
+ 00028594  0x00007aae sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00028595  0x00007aaf store  0x00000002 , 0x00000275 
+ 00028596  0x00007ab0 call  0x000052d0 
+ 00028597  0x00007ab1 copy  0x00000011 , 0x0000003f 
+ 00028598  0x00007ab2 istore  0x00000001 , 0x00000005 
+ 00028599  0x00007ab3 fetch  0x00000002 , 0x0000051c 
+ 00028600  0x00007ab4 istore  0x00000002 , 0x00000005 
+ 00028601  0x00007ab5 rtn 
+ 00028602  0x00007ac6 rtn 
+ 00028603  0x00007ae8 setarg  0x00000200 
+ 00028604  0x00007ae9 store  0x00000002 , 0x0000054a 
+ 00028605  0x00007aea branch  0x00006fc6 
+ 00028606  0x00007aec setarg  0x00000400 
+ 00028607  0x00007aed store  0x00000002 , 0x0000054a 
+ 00028608  0x00007aee branch  0x00006fc6 
+ 00028609  0x00007af0 setarg  0x00000600 
+ 00028610  0x00007af1 store  0x00000002 , 0x0000054a 
+ 00028611  0x00007af2 branch  0x00006fc6 
+ 00028612  0x00007af4 setarg  0x00000300 
+ 00028613  0x00007af5 store  0x00000002 , 0x0000054a 
+ 00028614  0x00007af7 call  0x000052d0 
+ 00028615  0x00007af8 istore  0x00000001 , 0x00000005 
+ 00028616  0x00007af9 fetch  0x00000002 , 0x0000051c 
+ 00028617  0x00007afa istore  0x00000002 , 0x00000005 
+ 00028618  0x00007afb setarg  0x00000200 
+ 00028619  0x00007afc istore  0x00000002 , 0x00000005 
+ 00028620  0x00007afd fetch  0x00000002 , 0x0000054a 
+ 00028621  0x00007afe istore  0x00000002 , 0x00000005 
+ 00028622  0x00007aff jam  0x00000007 , 0x00000275 
+ 00028623  0x00007b00 rtn 
+ 00028624  0x00007b06 arg  0x00000000 , 0x00000012 
+ 00028625  0x00007b07 force  0x00000000 , 0x00000002 
+ 00028626  0x00007b08 arg  0x00000511 , 0x00000005 
+ 00028627  0x00007b09 call  0x00007028 
+ 00028628  0x00007b0a branch  0x00007026 , 0x00000005 
+ 00028629  0x00007b0c increase  0x00000001 , 0x00000012 
+ 00028630  0x00007b0d ifetch  0x00000001 , 0x00000006 
+ 00028631  0x00007b0e increase  0xffffffff , 0x00000011 
+ 00028632  0x00007b0f increase  0xffffffff , 0x0000000b 
+ 00028633  0x00007b10 compare  0x00000018 , 0x0000003f , 0x000000f8 
+ 00028634  0x00007b11 nbranch  0x00007026 , 0x00000001 
+ 00028635  0x00007b12 compare  0x00000004 , 0x0000003f , 0x00000007 
+ 00028636  0x00007b13 nbranch  0x00006ff3 , 0x00000001 
+ 00028637  0x00007b14 force  0x00000001 , 0x00000002 
+ 00028638  0x00007b16 ifetch  0x00000001 , 0x00000006 
+ 00028639  0x00007b17 increase  0xffffffff , 0x00000011 
+ 00028640  0x00007b18 increase  0xffffffff , 0x0000000b 
+ 00028641  0x00007b19 bne  0x00000000 , 0x00006fe7 
+ 00028642  0x00007b1a ifetch  0x00000001 , 0x00000006 
+ 00028643  0x00007b1b increase  0xffffffff , 0x00000011 
+ 00028644  0x00007b1c increase  0xffffffff , 0x0000000b 
+ 00028645  0x00007b1d beq  0x00000000 , 0x00006ff8 
+ 00028646  0x00007b1e branch  0x00006fea 
+ 00028647  0x00007b20 increase  0x00000001 , 0x00000006 
+ 00028648  0x00007b21 increase  0xffffffff , 0x00000011 
+ 00028649  0x00007b22 increase  0xffffffff , 0x0000000b 
+ 00028650  0x00007b24 increase  0x00000002 , 0x00000006 
+ 00028651  0x00007b25 increase  0xfffffffe , 0x00000011 
+ 00028652  0x00007b26 increase  0xfffffffe , 0x0000000b 
+ 00028653  0x00007b27 compare  0x00000000 , 0x00000002 , 0x000000ff 
+ 00028654  0x00007b28 branch  0x00007020 , 0x00000001 
+ 00028655  0x00007b29 increase  0x0000000c , 0x00000006 
+ 00028656  0x00007b2a increase  0xfffffff4 , 0x00000011 
+ 00028657  0x00007b2b increase  0xfffffff4 , 0x0000000b 
+ 00028658  0x00007b2c branch  0x00007020 
+ 00028659  0x00007b2e compare  0x00000002 , 0x0000003f , 0x00000007 
+ 00028660  0x00007b2f nbranch  0x00006ff6 , 0x00000001 
+ 00028661  0x00007b30 branch  0x00006fde 
+ 00028662  0x00007b32 compare  0x00000001 , 0x0000003f , 0x00000007 
+ 00028663  0x00007b33 nbranch  0x00007026 , 0x00000001 
+ 00028664  0x00007b35 increase  0xfffffffe , 0x00000011 
+ 00028665  0x00007b36 increase  0xfffffffe , 0x0000000b 
+ 00028666  0x00007b37 ifetch  0x00000002 , 0x00000006 
+ 00028667  0x00007b38 sub  0x00000012 , 0x00000004 , 0x0000003e 
+ 00028668  0x00007b39 branch  0x00006ffe , 0x00000005 
+ 00028669  0x00007b3a istore  0x00000002 , 0x00000005 
+ 00028670  0x00007b3c compare  0x00000000 , 0x00000002 , 0x000000ff 
+ 00028671  0x00007b3d branch  0x00007020 , 0x00000001 
+ 00028672  0x00007b3e copy  0x00000006 , 0x00000002 
+ 00028673  0x00007b3f ifetch  0x00000001 , 0x00000006 
+ 00028674  0x00007b40 bne  0x00000000 , 0x00007019 
+ 00028675  0x00007b41 ifetch  0x00000001 , 0x00000006 
+ 00028676  0x00007b42 bne  0x00000000 , 0x00007019 
+ 00028677  0x00007b43 ifetch  0x00000001 , 0x00000006 
+ 00028678  0x00007b44 bne  0x00000010 , 0x00007019 
+ 00028679  0x00007b45 ifetch  0x00000001 , 0x00000006 
+ 00028680  0x00007b46 bne  0x00000000 , 0x00007019 
+ 00028681  0x00007b47 ifetch  0x00000001 , 0x00000006 
+ 00028682  0x00007b48 bne  0x00000080 , 0x00007019 
+ 00028683  0x00007b49 ifetch  0x00000001 , 0x00000006 
+ 00028684  0x00007b4a bne  0x00000000 , 0x00007019 
+ 00028685  0x00007b4b ifetch  0x00000001 , 0x00000006 
+ 00028686  0x00007b4c bne  0x00000000 , 0x00007019 
+ 00028687  0x00007b4d ifetch  0x00000001 , 0x00000006 
+ 00028688  0x00007b4e bne  0x00000080 , 0x00007019 
+ 00028689  0x00007b4f ifetch  0x00000001 , 0x00000006 
+ 00028690  0x00007b50 bne  0x0000005f , 0x00007019 
+ 00028691  0x00007b51 ifetch  0x00000001 , 0x00000006 
+ 00028692  0x00007b52 bne  0x0000009b , 0x00007019 
+ 00028693  0x00007b53 ifetch  0x00000001 , 0x00000006 
+ 00028694  0x00007b54 bne  0x00000034 , 0x00007019 
+ 00028695  0x00007b55 ifetch  0x00000001 , 0x00000006 
+ 00028696  0x00007b56 beq  0x000000fb , 0x0000701e 
+ 00028697  0x00007b58 copy  0x00000002 , 0x00000006 
+ 00028698  0x00007b5a increase  0x0000000c , 0x00000006 
+ 00028699  0x00007b5b force  0x00000000 , 0x00000007 
+ 00028700  0x00007b5c force  0x00000000 , 0x00000002 
+ 00028701  0x00007b5d branch  0x0000701e 
+ 00028702  0x00007b60 increase  0xfffffff4 , 0x0000000b 
+ 00028703  0x00007b61 increase  0xfffffff4 , 0x00000011 
+ 00028704  0x00007b63 force  0x00000000 , 0x00000002 
+ 00028705  0x00007b64 compare  0x00000000 , 0x00000011 , 0x000000ff 
+ 00028706  0x00007b65 nbranch  0x00006fd5 , 0x00000001 
+ 00028707  0x00007b66 force  0x00000000 , 0x0000003f 
+ 00028708  0x00007b67 istore  0x00000002 , 0x00000005 
+ 00028709  0x00007b68 rtn 
+ 00028710  0x00007b6a arg  0x000000ff , 0x00000002 
+ 00028711  0x00007b6b rtn 
+ 00028712  0x00007b76 bpatchx  0x000000d4 , 0x0000403a 
+ 00028713  0x00007b77 ifetch  0x00000001 , 0x00000006 
+ 00028714  0x00007b78 increase  0xffffffff , 0x0000000b 
+ 00028715  0x00007b79 compare  0x00000030 , 0x0000003f , 0x000000f8 
+ 00028716  0x00007b7a nbranch  0x0000703e , 0x00000001 
+ 00028717  0x00007b7b compare  0x00000007 , 0x0000003f , 0x00000007 
+ 00028718  0x00007b7c branch  0x00007037 , 0x00000001 
+ 00028719  0x00007b7d compare  0x00000006 , 0x0000003f , 0x00000007 
+ 00028720  0x00007b7e branch  0x00007039 , 0x00000001 
+ 00028721  0x00007b7f compare  0x00000005 , 0x0000003f , 0x00000007 
+ 00028722  0x00007b80 nbranch  0x0000703e , 0x00000001 
+ 00028723  0x00007b82 ifetch  0x00000001 , 0x00000006 
+ 00028724  0x00007b83 copy  0x0000003f , 0x00000011 
+ 00028725  0x00007b84 increase  0xffffffff , 0x0000000b 
+ 00028726  0x00007b85 branch  0x0000703c 
+ 00028727  0x00007b87 increase  0x00000002 , 0x00000006 
+ 00028728  0x00007b88 increase  0xfffffffe , 0x0000000b 
+ 00028729  0x00007b8a ifetch  0x00000002 , 0x00000006 
+ 00028730  0x00007b8b byteswap  0x0000003f , 0x00000011 
+ 00028731  0x00007b8c increase  0xfffffffe , 0x0000000b 
+ 00028732  0x00007b8e force  0x00000001 , 0x0000003f 
+ 00028733  0x00007b8f rtn 
+ 00028734  0x00007b91 force  0x00000000 , 0x0000003f 
+ 00028735  0x00007b92 rtn 
+ 00028736  0x00007b9d setarg  0x00000003 
+ 00028737  0x00007b9e store  0x00000001 , 0x0000051b 
+ 00028738  0x00007b9f branch  0x00007048 
+ 00028739  0x00007ba1 setarg  0x00000005 
+ 00028740  0x00007ba2 store  0x00000001 , 0x0000051b 
+ 00028741  0x00007ba3 branch  0x00007048 
+ 00028742  0x00007ba5 setarg  0x00000007 
+ 00028743  0x00007ba6 store  0x00000001 , 0x0000051b 
+ 00028744  0x00007ba8 call  0x000052d0 
+ 00028745  0x00007bab fetch  0x00000001 , 0x0000051b 
+ 00028746  0x00007bac copy  0x0000003f , 0x00000012 
+ 00028747  0x00007bad istore  0x00000001 , 0x00000005 
+ 00028748  0x00007bae fetch  0x00000002 , 0x0000051c 
+ 00028749  0x00007baf istore  0x00000002 , 0x00000005 
+ 00028750  0x00007bb0 setarg  0x00000500 
+ 00028751  0x00007bb1 istore  0x00000002 , 0x00000005 
+ 00028752  0x00007bb2 compare  0x00000005 , 0x00000012 , 0x000000ff 
+ 00028753  0x00007bb3 branch  0x00007057 , 0x00000001 
+ 00028754  0x00007bb4 compare  0x00000007 , 0x00000012 , 0x000000ff 
+ 00028755  0x00007bb5 branch  0x00007057 , 0x00000001 
+ 00028756  0x00007bb6 setarg  0x00000000 
+ 00028757  0x00007bb7 istore  0x00000005 , 0x00000005 
+ 00028758  0x00007bb8 branch  0x00007059 
+ 00028759  0x00007bbb setarg  0x00350200 
+ 00028760  0x00007bbc istore  0x00000005 , 0x00000005 
+ 00028761  0x00007bbe jam  0x0000000a , 0x00000275 
+ 00028762  0x00007bbf rtn 
+ 00028763  0x00007bc3 call  0x00007ea2 
+ 00028764  0x00007bc4 call  0x00007ea5 
+ 00028765  0x00007bc5 call  0x00007062 
+ 00028766  0x00007bc6 call  0x00007e9c 
+ 00028767  0x00007bc7 call  0x00007e9f 
+ 00028768  0x00007bc8 copy  0x00000002 , 0x0000003f 
+ 00028769  0x00007bc9 rtn 
+ 00028770  0x00007bcd ifetch  0x00000001 , 0x00000006 
+ 00028771  0x00007bce and  0x0000003f , 0x00000007 , 0x00000039 
+ 00028772  0x00007bcf rshift3  0x0000003f , 0x0000003f 
+ 00028773  0x00007bd0 bne  0x00000000 , 0x0000706c 
+ 00028774  0x00007bd2 force  0x00000001 , 0x0000003f 
+ 00028775  0x00007bd3 force  0x00000001 , 0x00000002 
+ 00028776  0x00007bd4 rtn 
+ 00028777  0x00007bd7 call  0x00007e76 
+ 00028778  0x00007bd8 add  0x0000003f , 0x00000001 , 0x00000002 
+ 00028779  0x00007bd9 rtn 
+ 00028780  0x00007bdb deposit  0x00000039 
+ 00028781  0x00007bdc sub  0x0000003f , 0x00000004 , 0x0000003e 
+ 00028782  0x00007bdd branch  0x00007069 , 0x00000002 
+ 00028783  0x00007bde beq  0x00000005 , 0x00007073 
+ 00028784  0x00007bdf beq  0x00000006 , 0x00007076 
+ 00028785  0x00007be0 beq  0x00000007 , 0x0000707a 
+ 00028786  0x00007be1 rtn 
+ 00028787  0x00007be4 ifetch  0x00000001 , 0x00000006 
+ 00028788  0x00007be5 add  0x0000003f , 0x00000002 , 0x00000002 
+ 00028789  0x00007be6 rtn 
+ 00028790  0x00007be8 ifetch  0x00000002 , 0x00000006 
+ 00028791  0x00007be9 byteswap  0x0000003f , 0x0000003f 
+ 00028792  0x00007bea add  0x0000003f , 0x00000003 , 0x00000002 
+ 00028793  0x00007beb rtn 
+ 00028794  0x00007bed ifetch  0x00000002 , 0x00000006 
+ 00028795  0x00007bee byteswap  0x0000003f , 0x0000003f 
+ 00028796  0x00007bef ifetcht  0x00000002 , 0x00000006 
+ 00028797  0x00007bf0 byteswap  0x00000002 , 0x00000002 
+ 00028798  0x00007bf1 lshift16  0x00000002 , 0x00000002 
+ 00028799  0x00007bf2 iadd  0x00000002 , 0x0000003f 
+ 00028800  0x00007bf3 add  0x0000003f , 0x00000005 , 0x00000002 
+ 00028801  0x00007bf4 rtn 
+ 00028802  0x00007bfb bpatchx  0x000000d5 , 0x0000403a 
+ 00028803  0x00007bfc force  0x00000000 , 0x00000007 
+ 00028804  0x00007bfd arg  0x00000000 , 0x00000012 
+ 00028805  0x00007bfe arg  0x0000052a , 0x00000005 
+ 00028806  0x00007c00 ifetch  0x00000002 , 0x0000000b 
+ 00028807  0x00007c01 rtn  0x00000034 
+ 00028808  0x00007c02 call  0x0000708d 
+ 00028809  0x00007c03 copy  0x00000007 , 0x0000003f 
+ 00028810  0x00007c04 rtneq  0x00000007 
+ 00028811  0x00007c05 increase  0x00000002 , 0x0000000b 
+ 00028812  0x00007c06 branch  0x00007086 
+ 00028813  0x00007c0a iforce  0x00000013 
+ 00028814  0x00007c0c fetch  0x00000002 , 0x00004575 
+ 00028815  0x00007c0d iforce  0x00000006 
+ 00028816  0x00007c0f copy  0x00000007 , 0x0000003f 
+ 00028817  0x00007c10 rtneq  0x00000007 
+ 00028818  0x00007c11 disable  0x00000028 
+ 00028819  0x00007c12 ifetch  0x00000001 , 0x00000006 
+ 00028820  0x00007c13 rtn  0x00000034 
+ 00028821  0x00007c14 iforce  0x00000039 
+ 00028822  0x00007c16 ifetch  0x00000002 , 0x00000006 
+ 00028823  0x00007c17 isub  0x00000013 , 0x0000003e 
+ 00028824  0x00007c18 nbranch  0x0000709a , 0x00000005 
+ 00028825  0x00007c19 enable  0x00000028 
+ 00028826  0x00007c1b loop  0x00007096 
+ 00028827  0x00007c1c ifetcht  0x00000004 , 0x00000006 
+ 00028828  0x00007c1d copy  0x00000006 , 0x00000011 
+ 00028829  0x00007c1e nbranch  0x000070ad , 0x00000028 
+ 00028830  0x00007c1f arg  0x0000052a , 0x00000006 
+ 00028831  0x00007c20 arg  0x00000007 , 0x00000039 
+ 00028832  0x00007c22 ifetch  0x00000004 , 0x00000006 
+ 00028833  0x00007c23 branch  0x000070a6 , 0x00000034 
+ 00028834  0x00007c24 isub  0x00000002 , 0x0000003e 
+ 00028835  0x00007c25 branch  0x000070ad , 0x00000005 
+ 00028836  0x00007c26 loop  0x000070a0 
+ 00028837  0x00007c27 rtn 
+ 00028838  0x00007c29 istoret  0x00000004 , 0x00000005 
+ 00028839  0x00007c2a increase  0x00000001 , 0x00000007 
+ 00028840  0x00007c2b copy  0x00000011 , 0x00000006 
+ 00028841  0x00007c2c call  0x0000705b 
+ 00028842  0x00007c2d iadd  0x00000012 , 0x00000012 
+ 00028843  0x00007c2e iadd  0x00000006 , 0x00000006 
+ 00028844  0x00007c2f branch  0x00007090 
+ 00028845  0x00007c31 copy  0x00000011 , 0x00000006 
+ 00028846  0x00007c32 call  0x00007062 
+ 00028847  0x00007c33 iadd  0x00000006 , 0x00000006 
+ 00028848  0x00007c34 branch  0x00007090 
+ 00028849  0x00007c3b bpatchx  0x000000d6 , 0x0000403a 
+ 00028850  0x00007c3c fetch  0x00000002 , 0x00004575 
+ 00028851  0x00007c3d iforce  0x00000006 
+ 00028852  0x00007c3f ifetch  0x00000001 , 0x00000006 
+ 00028853  0x00007c40 branch  0x00007fe3 , 0x00000034 
+ 00028854  0x00007c41 lshift  0x0000003f , 0x0000003f 
+ 00028855  0x00007c42 iadd  0x00000006 , 0x00000006 
+ 00028856  0x00007c43 ifetch  0x00000004 , 0x00000006 
+ 00028857  0x00007c44 isub  0x00000002 , 0x0000003e 
+ 00028858  0x00007c45 rtn  0x00000005 
+ 00028859  0x00007c46 deposit  0x00000005 
+ 00028860  0x00007c47 store  0x00000002 , 0x00000abb 
+ 00028861  0x00007c48 storet  0x00000008 , 0x00000aa2 
+ 00028862  0x00007c49 call  0x00007062 
+ 00028863  0x00007c4a iadd  0x00000006 , 0x00000006 
+ 00028864  0x00007c4b copy  0x00000006 , 0x0000003f 
+ 00028865  0x00007c4c fetcht  0x00000002 , 0x00000abb 
+ 00028866  0x00007c4d copy  0x00000002 , 0x00000005 
+ 00028867  0x00007c4e fetcht  0x00000008 , 0x00000aa2 
+ 00028868  0x00007c4f copy  0x0000003f , 0x00000006 
+ 00028869  0x00007c50 branch  0x000070b4 
+ 00028870  0x00007c57 bpatchx  0x000000d7 , 0x0000403a 
+ 00028871  0x00007c58 fetch  0x00000002 , 0x00004575 
+ 00028872  0x00007c59 iforce  0x00000006 
+ 00028873  0x00007c5b ifetch  0x00000001 , 0x00000006 
+ 00028874  0x00007c5c branch  0x000070e4 , 0x00000034 
+ 00028875  0x00007c5d iforce  0x00000039 
+ 00028876  0x00007c5f ifetch  0x00000002 , 0x00000006 
+ 00028877  0x00007c60 isub  0x00000013 , 0x0000003e 
+ 00028878  0x00007c61 branch  0x000070d4 , 0x00000005 
+ 00028879  0x00007c62 loop  0x000070cc 
+ 00028880  0x00007c63 increase  0x00000004 , 0x00000006 
+ 00028881  0x00007c64 call  0x00007062 
+ 00028882  0x00007c65 iadd  0x00000006 , 0x00000006 
+ 00028883  0x00007c66 branch  0x000070c9 
+ 00028884  0x00007c68 increase  0xffffffff , 0x00000039 
+ 00028885  0x00007c69 lshift  0x00000039 , 0x0000003f 
+ 00028886  0x00007c6a iadd  0x00000006 , 0x00000006 
+ 00028887  0x00007c6b increase  0x00000004 , 0x00000006 
+ 00028888  0x00007c6c call  0x00007062 
+ 00028889  0x00007c6d iadd  0x00000006 , 0x0000000b 
+ 00028890  0x00007c6f increase  0x00000001 , 0x00000006 
+ 00028891  0x00007c70 ifetch  0x00000002 , 0x00000006 
+ 00028892  0x00007c71 isub  0x00000012 , 0x0000003e 
+ 00028893  0x00007c75 branch  0x00007fef , 0x00000005 
+ 00028894  0x00007c76 call  0x0000705b 
+ 00028895  0x00007c77 iadd  0x00000006 , 0x00000006 
+ 00028896  0x00007c78 deposit  0x0000000b 
+ 00028897  0x00007c79 isub  0x00000006 , 0x0000003e 
+ 00028898  0x00007c7a branch  0x000070e4 , 0x00000005 
+ 00028899  0x00007c7b branch  0x000070da 
+ 00028900  0x00007c7d force  0x00000000 , 0x00000006 
+ 00028901  0x00007c7e force  0x00000000 , 0x0000003f 
+ 00028902  0x00007c7f rtn 
+ 00028903  0x00007c86 bpatchx  0x000000d8 , 0x0000403b 
+ 00028904  0x00007c87 fetch  0x00000002 , 0x00004575 
+ 00028905  0x00007c88 iforce  0x00000006 
+ 00028906  0x00007c8a ifetch  0x00000001 , 0x00000006 
+ 00028907  0x00007c8b branch  0x00007100 , 0x00000034 
+ 00028908  0x00007c8c lshift  0x0000003f , 0x0000003f 
+ 00028909  0x00007c8d iadd  0x00000006 , 0x00000006 
+ 00028910  0x00007c8e ifetch  0x00000004 , 0x00000006 
+ 00028911  0x00007c8f isub  0x00000002 , 0x0000003e 
+ 00028912  0x00007c90 branch  0x000070f4 , 0x00000005 
+ 00028913  0x00007c91 call  0x00007062 
+ 00028914  0x00007c92 iadd  0x00000006 , 0x00000006 
+ 00028915  0x00007c93 branch  0x000070ea 
+ 00028916  0x00007c95 call  0x00007062 
+ 00028917  0x00007c96 iadd  0x00000006 , 0x0000000b 
+ 00028918  0x00007c98 increase  0x00000001 , 0x00000006 
+ 00028919  0x00007c99 ifetch  0x00000002 , 0x00000006 
+ 00028920  0x00007c9a isub  0x00000012 , 0x0000003e 
+ 00028921  0x00007c9b rtn  0x00000005 
+ 00028922  0x00007c9c call  0x0000705b 
+ 00028923  0x00007c9d iadd  0x00000006 , 0x00000006 
+ 00028924  0x00007c9e deposit  0x0000000b 
+ 00028925  0x00007c9f isub  0x00000006 , 0x0000003e 
+ 00028926  0x00007ca0 branch  0x00007100 , 0x00000005 
+ 00028927  0x00007ca1 branch  0x000070f6 
+ 00028928  0x00007ca3 force  0x00000000 , 0x00000006 
+ 00028929  0x00007ca4 rtn 
+ 00028930  0x00007ca9 arg  0x00000400 , 0x00000012 
+ 00028931  0x00007caa call  0x000070f4 
+ 00028932  0x00007cab arg  0x00000300 , 0x00000012 
+ 00028933  0x00007cac call  0x0000710d 
+ 00028934  0x00007cad nrtn  0x00000028 
+ 00028935  0x00007cae sub  0x00000011 , 0x00000003 , 0x0000003e 
+ 00028936  0x00007caf branch  0x00007fe9 , 0x00000002 
+ 00028937  0x00007cb0 ifetch  0x00000001 , 0x00000006 
+ 00028938  0x00007cb1 bne  0x00000008 , 0x00007fe9 
+ 00028939  0x00007cb2 ifetch  0x00000001 , 0x00000006 
+ 00028940  0x00007cb3 rtn 
+ 00028941  0x00007cb9 bpatchx  0x000000d9 , 0x0000403b 
+ 00028942  0x00007cba call  0x00007062 
+ 00028943  0x00007cbb copy  0x0000003f , 0x00000011 
+ 00028944  0x00007cbd ifetch  0x00000001 , 0x00000006 
+ 00028945  0x00007cbe and  0x0000003f , 0x00000007 , 0x00000039 
+ 00028946  0x00007cbf rshift3  0x0000003f , 0x0000003f 
+ 00028947  0x00007cc0 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00028948  0x00007cc1 branch  0x00007129 , 0x00000005 
+ 00028949  0x00007cc2 copy  0x00000039 , 0x0000003f 
+ 00028950  0x00007cc3 beq  0x00000005 , 0x00007120 
+ 00028951  0x00007cc4 beq  0x00000006 , 0x00007123 
+ 00028952  0x00007cc5 beq  0x00000007 , 0x00007126 
+ 00028953  0x00007cc6 increase  0xffffffff , 0x00000006 
+ 00028954  0x00007cc7 call  0x00007062 
+ 00028955  0x00007cc8 iadd  0x00000006 , 0x00000006 
+ 00028956  0x00007cc9 copy  0x00000011 , 0x0000003f 
+ 00028957  0x00007cca isub  0x00000002 , 0x00000011 
+ 00028958  0x00007ccb branch  0x00007fe9 , 0x00000005 
+ 00028959  0x00007ccc branch  0x00007110 
+ 00028960  0x00007ccf increase  0xfffffffe , 0x00000011 
+ 00028961  0x00007cd0 increase  0x00000001 , 0x00000006 
+ 00028962  0x00007cd1 branch  0x00007110 
+ 00028963  0x00007cd3 increase  0xfffffffd , 0x00000011 
+ 00028964  0x00007cd4 increase  0x00000002 , 0x00000006 
+ 00028965  0x00007cd5 branch  0x00007110 
+ 00028966  0x00007cd7 increase  0xfffffffb , 0x00000011 
+ 00028967  0x00007cd8 increase  0x00000004 , 0x00000006 
+ 00028968  0x00007cd9 branch  0x00007110 
+ 00028969  0x00007cdc increase  0xffffffff , 0x00000011 
+ 00028970  0x00007cdd copy  0x00000039 , 0x0000003f 
+ 00028971  0x00007cde beq  0x00000001 , 0x00007132 
+ 00028972  0x00007cdf beq  0x00000002 , 0x00007130 
+ 00028973  0x00007ce0 beq  0x00000004 , 0x0000712f 
+ 00028974  0x00007ce1 branch  0x00007fe9 
+ 00028975  0x00007ce3 increase  0xfffffff4 , 0x00000011 
+ 00028976  0x00007ce5 ifetch  0x00000002 , 0x00000006 
+ 00028977  0x00007ce6 increase  0xfffffffe , 0x00000011 
+ 00028978  0x00007ce8 ifetch  0x00000002 , 0x00000006 
+ 00028979  0x00007ce9 isub  0x00000012 , 0x0000003e 
+ 00028980  0x00007cea branch  0x00007fe7 , 0x00000005 
+ 00028981  0x00007ceb increase  0xfffffffe , 0x00000011 
+ 00028982  0x00007cec branch  0x00007fe9 , 0x00000005 
+ 00028983  0x00007ced branch  0x00007110 
+ 00028984  0x00007d29 call  0x000052d0 
+ 00028985  0x00007d2a copy  0x0000003f , 0x00000005 
+ 00028986  0x00007d2b setarg  0x00000006 
+ 00028987  0x00007d2c istore  0x00000001 , 0x00000005 
+ 00028988  0x00007d2d setarg  0x0000006e 
+ 00028989  0x00007d2e istore  0x00000002 , 0x00000005 
+ 00028990  0x00007d2f setarg  0x00000f00 
+ 00028991  0x00007d30 istore  0x00000002 , 0x00000005 
+ 00028992  0x00007d31 setarg  0x001a0535 
+ 00028993  0x00007d32 istore  0x00000003 , 0x00000005 
+ 00028994  0x00007d33 setarg  0x00000111 
+ 00028995  0x00007d34 lshift16  0x0000003f , 0x0000003f 
+ 00028996  0x00007d35 istore  0x00000004 , 0x00000005 
+ 00028997  0x00007d36 setarg  0x00002600 
+ 00028998  0x00007d37 istore  0x00000002 , 0x00000005 
+ 00028999  0x00007d38 setarg  0x00000335 
+ 00029000  0x00007d39 istore  0x00000002 , 0x00000005 
+ 00029001  0x00007d3a setarg  0x00000009 
+ 00029002  0x00007d3b istore  0x00000002 , 0x00000005 
+ 00029003  0x00007d3c setarg  0x00000004 
+ 00029004  0x00007d3d istore  0x00000002 , 0x00000005 
+ 00029005  0x00007d3e jam  0x00000014 , 0x00000275 
+ 00029006  0x00007d3f rtn 
+ 00029007  0x00007d44 bpatchx  0x000000da , 0x0000403b 
+ 00029008  0x00007d45 jam  0x00000050 , 0x000005e5 
+ 00029009  0x00007d46 arg  0x000005e6 , 0x00000005 
+ 00029010  0x00007d47 arg  0x0000443a , 0x00000006 
+ 00029011  0x00007d48 call  0x00007ebf 
+ 00029012  0x00007d49 arg  0x000045d2 , 0x00000006 
+ 00029013  0x00007d4a call  0x00007ebd 
+ 00029014  0x00007d4b arg  0x000009be , 0x00000006 
+ 00029015  0x00007d4c call  0x00007ebd 
+ 00029016  0x00007d4d call  0x0000720a 
+ 00029017  0x00007d4e arg  0x0000042f , 0x00000006 
+ 00029018  0x00007d4f call  0x00007205 
+ 00029019  0x00007d50 call  0x000071d0 
+ 00029020  0x00007d52 arg  0x00000af2 , 0x00000005 
+ 00029021  0x00007d53 call  0x00007201 
+ 00029022  0x00007d54 setarg  0x000f4240 
+ 00029023  0x00007d55 copy  0x0000003f , 0x00000011 
+ 00029024  0x00007d56 fetch  0x00000004 , 0x00000af2 
+ 00029025  0x00007d57 idiv  0x00000011 
+ 00029026  0x00007d58 call  0x00007f86 
+ 00029027  0x00007d59 remainder  0x0000003f 
+ 00029028  0x00007d5a store  0x00000004 , 0x000009ba 
+ 00029029  0x00007d5c rtn 
+ 00029030  0x00007d5f jam  0x00000041 , 0x000005e5 
+ 00029031  0x00007d60 arg  0x000005e6 , 0x00000005 
+ 00029032  0x00007d61 call  0x000071b5 
+ 00029033  0x00007d62 call  0x000071b0 
+ 00029034  0x00007d63 fetch  0x00000003 , 0x00004454 
+ 00029035  0x00007d64 istore  0x00000003 , 0x00000005 
+ 00029036  0x00007d67 call  0x00007176 
+ 00029037  0x00007d69 arg  0x0000042f , 0x00000006 
+ 00029038  0x00007d6a call  0x00007ebf 
+ 00029039  0x00007d6b arg  0x0000443a , 0x00000006 
+ 00029040  0x00007d6c call  0x00007ebf 
+ 00029041  0x00007d6d call  0x0000720a 
+ 00029042  0x00007d6e arg  0x00000b12 , 0x00000006 
+ 00029043  0x00007d6f arg  0x00000ac2 , 0x00000005 
+ 00029044  0x00007d70 call  0x00007ebf 
+ 00029045  0x00007d72 branch  0x000071d0 
+ 00029046  0x00007d77 fetch  0x00000004 , 0x000044c7 
+ 00029047  0x00007d78 istore  0x00000004 , 0x00000005 
+ 00029048  0x00007d79 call  0x00007ecd 
+ 00029049  0x00007d7a branch  0x00007eca 
+ 00029050  0x00007d7d bpatchx  0x000000db , 0x0000403b 
+ 00029051  0x00007d7e jam  0x00000041 , 0x000005e5 
+ 00029052  0x00007d7f arg  0x000005e6 , 0x00000005 
+ 00029053  0x00007d80 call  0x000071b0 
+ 00029054  0x00007d81 call  0x000071b5 
+ 00029055  0x00007d82 fetch  0x00000003 , 0x0000444d 
+ 00029056  0x00007d83 istore  0x00000003 , 0x00000005 
+ 00029057  0x00007d86 call  0x00007176 
+ 00029058  0x00007d87 arg  0x0000443a , 0x00000006 
+ 00029059  0x00007d88 call  0x00007ebf 
+ 00029060  0x00007d89 arg  0x0000042f , 0x00000006 
+ 00029061  0x00007d8a call  0x00007ebf 
+ 00029062  0x00007d8b call  0x0000720a 
+ 00029063  0x00007d8c arg  0x00000b12 , 0x00000006 
+ 00029064  0x00007d8d arg  0x00000ac2 , 0x00000005 
+ 00029065  0x00007d8e call  0x00007ebf 
+ 00029066  0x00007d90 call  0x000071d0 
+ 00029067  0x00007d91 arg  0x00000af2 , 0x00000005 
+ 00029068  0x00007d92 branch  0x00007201 
+ 00029069  0x00007d95 jam  0x00000020 , 0x000005e5 
+ 00029070  0x00007d96 arg  0x000009fe , 0x00000006 
+ 00029071  0x00007d97 arg  0x000005e6 , 0x00000005 
+ 00029072  0x00007d98 call  0x00007ebd 
+ 00029073  0x00007d99 call  0x0000720a 
+ 00029074  0x00007d9a arg  0x0000099e , 0x00000006 
+ 00029075  0x00007d9b call  0x00007205 
+ 00029076  0x00007d9c call  0x000071d0 
+ 00029077  0x00007d9d arg  0x00000ac2 , 0x00000005 
+ 00029078  0x00007d9e call  0x00007497 
+ 00029079  0x00007d9f arg  0x00000001 , 0x00000002 
+ 00029080  0x00007da0 call  0x0000719f 
+ 00029081  0x00007da1 arg  0x00004419 , 0x00000005 
+ 00029082  0x00007da2 call  0x00007201 
+ 00029083  0x00007da3 arg  0x00000000 , 0x00000002 
+ 00029084  0x00007da4 call  0x0000719f 
+ 00029085  0x00007da5 arg  0x00000b12 , 0x00000005 
+ 00029086  0x00007da7 branch  0x00007497 
+ 00029087  0x00007dab bpatchx  0x000000dc , 0x0000403b 
+ 00029088  0x00007dac jam  0x00000035 , 0x000005e5 
+ 00029089  0x00007dad setarg  0x00000100 
+ 00029090  0x00007dae store  0x00000002 , 0x000005e6 
+ 00029091  0x00007daf call  0x000071b0 
+ 00029092  0x00007db0 call  0x000071b5 
+ 00029093  0x00007db1 arg  0x0000443a , 0x00000006 
+ 00029094  0x00007db2 call  0x00007ebf 
+ 00029095  0x00007db3 arg  0x0000042f , 0x00000006 
+ 00029096  0x00007db4 call  0x00007ebf 
+ 00029097  0x00007db6 setarg  0x00006c65 
+ 00029098  0x00007db7 istore  0x00000002 , 0x00000005 
+ 00029099  0x00007db8 setarg  0x00006274 
+ 00029100  0x00007db9 istore  0x00000002 , 0x00000005 
+ 00029101  0x00007dba istoret  0x00000001 , 0x00000005 
+ 00029102  0x00007dbb call  0x0000720a 
+ 00029103  0x00007dbc branch  0x000071d0 
+ 00029104  0x00007dbf fetch  0x00000006 , 0x000044a0 
+ 00029105  0x00007dc0 istore  0x00000006 , 0x00000005 
+ 00029106  0x00007dc1 fetch  0x00000001 , 0x00004495 
+ 00029107  0x00007dc2 istore  0x00000001 , 0x00000005 
+ 00029108  0x00007dc3 rtn 
+ 00029109  0x00007dc6 fetch  0x00000006 , 0x0000044f 
+ 00029110  0x00007dc7 istore  0x00000006 , 0x00000005 
+ 00029111  0x00007dcc fetch  0x00000001 , 0x0000448e 
+ 00029112  0x00007dcd istore  0x00000001 , 0x00000005 
+ 00029113  0x00007dce rtn 
+ 00029114  0x00007dd1 jam  0x00000041 , 0x000005e5 
+ 00029115  0x00007dd2 fetch  0x00000001 , 0x00004664 
+ 00029116  0x00007dd3 store  0x00000001 , 0x000005e6 
+ 00029117  0x00007dd4 arg  0x000045d2 , 0x00000006 
+ 00029118  0x00007dd5 call  0x00007ebd 
+ 00029119  0x00007dd6 arg  0x000009be , 0x00000006 
+ 00029120  0x00007dd7 call  0x00007ebd 
+ 00029121  0x00007dd8 call  0x0000720a 
+ 00029122  0x00007dd9 arg  0x0000042f , 0x00000006 
+ 00029123  0x00007dda call  0x00007205 
+ 00029124  0x00007ddb branch  0x000071d0 
+ 00029125  0x00007ddf jam  0x00000041 , 0x000005e5 
+ 00029126  0x00007de0 fetch  0x00000001 , 0x00004664 
+ 00029127  0x00007de1 store  0x00000001 , 0x000005e6 
+ 00029128  0x00007de2 arg  0x000009be , 0x00000006 
+ 00029129  0x00007de3 call  0x00007ebd 
+ 00029130  0x00007de4 arg  0x000045d2 , 0x00000006 
+ 00029131  0x00007de5 call  0x00007ebd 
+ 00029132  0x00007de6 call  0x0000720a 
+ 00029133  0x00007de7 arg  0x0000443a , 0x00000006 
+ 00029134  0x00007de8 call  0x00007205 
+ 00029135  0x00007de9 branch  0x000071d0 
+ 00029136  0x00007dec bpatchx  0x000000dd , 0x0000403b 
+ 00029137  0x00007ded call  0x0000721f 
+ 00029138  0x00007df1 fetch  0x00000001 , 0x000005e5 
+ 00029139  0x00007df2 copy  0x0000003f , 0x00000002 
+ 00029140  0x00007df4 increase  0x0000000f , 0x0000003f 
+ 00029141  0x00007df5 rshift4  0x0000003f , 0x0000003f 
+ 00029142  0x00007df6 copy  0x0000003f , 0x00000012 
+ 00029143  0x00007df7 branch  0x000071e2 , 0x00000034 
+ 00029144  0x00007df8 and  0x00000002 , 0x0000000f , 0x0000003f 
+ 00029145  0x00007df9 nbranch  0x000071e5 , 0x00000034 
+ 00029146  0x00007dfb arg  0x00000ad2 , 0x00000013 
+ 00029147  0x00007dfc arg  0x000005e6 , 0x0000003f 
+ 00029148  0x00007dfd increase  0xfffffff0 , 0x0000003f 
+ 00029149  0x00007e00 iadd  0x00000002 , 0x00000011 
+ 00029150  0x00007e01 arg  0x00000b02 , 0x00000005 
+ 00029151  0x00007e02 arg  0x00000004 , 0x00000039 
+ 00029152  0x00007e03 call  0x00007edd 
+ 00029153  0x00007e07 branch  0x000071f0 
+ 00029154  0x00007e0a arg  0x00000001 , 0x00000012 
+ 00029155  0x00007e0b arg  0x00000000 , 0x00000011 
+ 00029156  0x00007e0d branch  0x000071e6 
+ 00029157  0x00007e12 and  0x00000002 , 0x0000000f , 0x00000011 
+ 00029158  0x00007e14 arg  0x000005e6 , 0x0000003f 
+ 00029159  0x00007e15 iadd  0x00000002 , 0x0000003f 
+ 00029160  0x00007e16 isub  0x00000011 , 0x00000006 
+ 00029161  0x00007e18 arg  0x00000af2 , 0x00000005 
+ 00029162  0x00007e19 call  0x00007245 
+ 00029163  0x00007e1b arg  0x00000ae2 , 0x00000013 
+ 00029164  0x00007e1c arg  0x00000af2 , 0x00000011 
+ 00029165  0x00007e1d arg  0x00000b02 , 0x00000005 
+ 00029166  0x00007e1e arg  0x00000004 , 0x00000039 
+ 00029167  0x00007e1f call  0x00007edd 
+ 00029168  0x00007e2b call  0x00007491 
+ 00029169  0x00007e2c call  0x00007428 
+ 00029170  0x00007e2f arg  0x000005e6 , 0x00000006 
+ 00029171  0x00007e32 increase  0xffffffff , 0x00000012 
+ 00029172  0x00007e33 deposit  0x00000012 
+ 00029173  0x00007e34 branch  0x000071f9 , 0x00000034 
+ 00029174  0x00007e35 call  0x00007486 
+ 00029175  0x00007e36 call  0x00007422 
+ 00029176  0x00007e37 branch  0x000071f3 
+ 00029177  0x00007e3a arg  0x00000af2 , 0x00000005 
+ 00029178  0x00007e3b call  0x00007497 
+ 00029179  0x00007e3c arg  0x00000b02 , 0x00000006 
+ 00029180  0x00007e3d call  0x00007486 
+ 00029181  0x00007e3e call  0x00007428 
+ 00029182  0x00007e3f arg  0x00000af2 , 0x00000006 
+ 00029183  0x00007e40 call  0x00007486 
+ 00029184  0x00007e41 branch  0x00007422 
+ 00029185  0x00007e47 copy  0x00000005 , 0x00000011 
+ 00029186  0x00007e48 call  0x00007497 
+ 00029187  0x00007e4a arg  0x00000010 , 0x00000039 
+ 00029188  0x00007e4b branch  0x00007ee5 
+ 00029189  0x00007e4e arg  0x00000ac2 , 0x00000005 
+ 00029190  0x00007e4f call  0x00007ebf 
+ 00029191  0x00007e51 arg  0x00000010 , 0x00000039 
+ 00029192  0x00007e52 arg  0x00000ac2 , 0x00000011 
+ 00029193  0x00007e53 branch  0x00007ee5 
+ 00029194  0x00007e56 fetch  0x00000001 , 0x000005e5 
+ 00029195  0x00007e57 copy  0x0000003f , 0x00000039 
+ 00029196  0x00007e58 arg  0x000005e6 , 0x00000011 
+ 00029197  0x00007e59 branch  0x00007ee5 
+ 00029198  0x00007e5c ifetch  0x00000001 , 0x00000011 
+ 00029199  0x00007e5d lshift  0x0000003f , 0x0000003f 
+ 00029200  0x00007e5e isolate1  0x00000000 , 0x00000013 
+ 00029201  0x00007e5f setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00029202  0x00007e60 isolate1  0x00000008 , 0x0000003f 
+ 00029203  0x00007e61 setflag  0x00000001 , 0x00000000 , 0x00000013 
+ 00029204  0x00007e62 istore  0x00000001 , 0x00000011 
+ 00029205  0x00007e63 increase  0xffffffff , 0x00000011 
+ 00029206  0x00007e64 loop  0x0000720e 
+ 00029207  0x00007e65 rtn 
+ 00029208  0x00007e68 arg  0x00000ad2 , 0x00000011 
+ 00029209  0x00007e6a increase  0x0000000f , 0x00000011 
+ 00029210  0x00007e6b force  0x00000010 , 0x00000039 
+ 00029211  0x00007e6c force  0x00000000 , 0x00000013 
+ 00029212  0x00007e6d branch  0x0000720e 
+ 00029213  0x00007e70 arg  0x00000ae2 , 0x00000011 
+ 00029214  0x00007e71 branch  0x00007219 
+ 00029215  0x00007e75 arg  0x00000ac2 , 0x00000006 
+ 00029216  0x00007e76 call  0x00007484 
+ 00029217  0x00007e79 force  0x00000008 , 0x00000038 
+ 00029218  0x00007e7a call  0x00007492 
+ 00029219  0x00007e7b call  0x00007491 
+ 00029220  0x00007e7c call  0x0000741f 
+ 00029221  0x00007e81 arg  0x00000ad2 , 0x00000005 
+ 00029222  0x00007e82 call  0x00007497 
+ 00029223  0x00007e84 bpatchx  0x000000de , 0x0000403b 
+ 00029224  0x00007e85 fetch  0x00000001 , 0x00000ad2 
+ 00029225  0x00007e86 isolate1  0x00000007 , 0x0000003f 
+ 00029226  0x00007e87 nbranch  0x00007230 , 0x00000001 
+ 00029227  0x00007e88 call  0x00007218 
+ 00029228  0x00007e8b arg  0x00000ad2 , 0x00000013 
+ 00029229  0x00007e8d arg  0x00000ad2 , 0x00000005 
+ 00029230  0x00007e90 call  0x0000723a 
+ 00029231  0x00007e91 branch  0x00007231 
+ 00029232  0x00007e93 call  0x00007218 
+ 00029233  0x00007e96 arg  0x00000ad2 , 0x00000006 
+ 00029234  0x00007e97 arg  0x00000ae2 , 0x00000005 
+ 00029235  0x00007e98 call  0x00007ebf 
+ 00029236  0x00007e99 fetch  0x00000001 , 0x00000ae2 
+ 00029237  0x00007e9a isolate1  0x00000007 , 0x0000003f 
+ 00029238  0x00007e9b nbranch  0x0000721d , 0x00000001 
+ 00029239  0x00007e9c call  0x0000721d 
+ 00029240  0x00007e9e arg  0x00000ae2 , 0x00000013 
+ 00029241  0x00007ea0 arg  0x00000ae2 , 0x00000005 
+ 00029242  0x00007ea7 arg  0x00000003 , 0x00000039 
+ 00029243  0x00007ea9 arg  0x00000000 , 0x00000002 
+ 00029244  0x00007eaa call  0x00007241 
+ 00029245  0x00007eab increase  0x00000004 , 0x00000013 
+ 00029246  0x00007eac loop  0x0000723b 
+ 00029247  0x00007ead arg  0x00008700 , 0x00000002 
+ 00029248  0x00007eae lshift16  0x00000002 , 0x00000002 
+ 00029249  0x00007eb0 ifetch  0x00000004 , 0x00000013 
+ 00029250  0x00007eb1 ixor  0x00000002 , 0x0000003f 
+ 00029251  0x00007eb2 istore  0x00000004 , 0x00000005 
+ 00029252  0x00007eb3 rtn 
+ 00029253  0x00007eba bpatchx  0x000000df , 0x0000403b 
+ 00029254  0x00007ebb arg  0x00000010 , 0x00000039 
+ 00029255  0x00007ebc arg  0x00000000 , 0x0000003f 
+ 00029256  0x00007ebe isub  0x00000011 , 0x0000003e 
+ 00029257  0x00007ebf branch  0x00007250 , 0x00000005 
+ 00029258  0x00007ec0 branch  0x00007253 , 0x00000002 
+ 00029259  0x00007ec1 ifetcht  0x00000001 , 0x00000006 
+ 00029260  0x00007ec2 istoret  0x00000001 , 0x00000005 
+ 00029261  0x00007ec4 increase  0x00000001 , 0x0000003f 
+ 00029262  0x00007ec5 loop  0x00007248 
+ 00029263  0x00007ec6 rtn 
+ 00029264  0x00007ec8 arg  0x00000080 , 0x00000002 
+ 00029265  0x00007eca istoret  0x00000001 , 0x00000005 
+ 00029266  0x00007ecb branch  0x0000724d 
+ 00029267  0x00007ece arg  0x00000000 , 0x00000002 
+ 00029268  0x00007ecf branch  0x00007251 
+ 00029269  0x00007ed3 call  0x00007268 
+ 00029270  0x00007ed4 arg  0x00000592 , 0x00000006 
+ 00029271  0x00007ed5 arg  0x00000582 , 0x00000005 
+ 00029272  0x00007ed6 branch  0x00007ebf 
+ 00029273  0x00007eda disable  0x00000028 
+ 00029274  0x00007edb call  0x0000735f 
+ 00029275  0x00007edc arg  0x00000562 , 0x00000006 
+ 00029276  0x00007edd arg  0x000005a2 , 0x00000005 
+ 00029277  0x00007ede force  0x0000000f , 0x00000039 
+ 00029278  0x00007edf call  0x00007f01 
+ 00029279  0x00007ee0 ifetch  0x00000001 , 0x00000006 
+ 00029280  0x00007ee1 xor_into  0x00000006 , 0x0000003f 
+ 00029281  0x00007ee2 istore  0x00000001 , 0x00000005 
+ 00029282  0x00007ee3 setarg  0x000005b2 
+ 00029283  0x00007ee4 store  0x00000002 , 0x000005d6 
+ 00029284  0x00007ee5 setarg  0x000005a2 
+ 00029285  0x00007ee6 store  0x00000002 , 0x000005d4 
+ 00029286  0x00007ee7 set1  0x00000012 , 0x00000000 
+ 00029287  0x00007ee8 branch  0x000072a8 
+ 00029288  0x00007eed fetcht  0x00000001 , 0x00004689 
+ 00029289  0x00007eee force  0x00000010 , 0x00000012 
+ 00029290  0x00007eef add  0x00000002 , 0x00000006 , 0x00000013 
+ 00029291  0x00007ef0 sub  0x00000013 , 0x00000010 , 0x0000003e 
+ 00029292  0x00007ef1 branch  0x0000726e , 0x00000002 
+ 00029293  0x00007ef2 force  0x00000010 , 0x00000013 
+ 00029294  0x00007ef4 arg  0x000005a2 , 0x00000005 
+ 00029295  0x00007ef6 arg  0x0000468a , 0x00000006 
+ 00029296  0x00007ef7 copy  0x00000002 , 0x00000039 
+ 00029297  0x00007ef8 disable  0x00000028 
+ 00029298  0x00007efa ifetch  0x00000001 , 0x00000006 
+ 00029299  0x00007efb istore  0x00000001 , 0x00000005 
+ 00029300  0x00007efc increase  0xffffffff , 0x00000012 
+ 00029301  0x00007efd branch  0x0000727c , 0x00000005 
+ 00029302  0x00007efe loop  0x00007272 
+ 00029303  0x00007eff branch  0x0000726f , 0x00000028 
+ 00029304  0x00007f00 enable  0x00000028 
+ 00029305  0x00007f01 force  0x00000006 , 0x00000039 
+ 00029306  0x00007f02 copy  0x00000011 , 0x00000006 
+ 00029307  0x00007f03 branch  0x00007272 
+ 00029308  0x00007f05 arg  0x00000562 , 0x00000006 
+ 00029309  0x00007f06 arg  0x000005b2 , 0x00000005 
+ 00029310  0x00007f07 call  0x00007ebf 
+ 00029311  0x00007f08 fetch  0x00000001 , 0x000005c1 
+ 00029312  0x00007f09 ixor  0x00000013 , 0x0000003f 
+ 00029313  0x00007f0a store  0x00000001 , 0x000005c1 
+ 00029314  0x00007f0b setarg  0x000005b2 
+ 00029315  0x00007f0c store  0x00000002 , 0x000005d6 
+ 00029316  0x00007f0d setarg  0x000005a2 
+ 00029317  0x00007f0e store  0x00000002 , 0x000005d4 
+ 00029318  0x00007f0f set1  0x00000012 , 0x00000000 
+ 00029319  0x00007f10 branch  0x000072a8 
+ 00029320  0x00007f16 disable  0x00000028 
+ 00029321  0x00007f17 call  0x0000735f 
+ 00029322  0x00007f18 branch  0x00007292 
+ 00029323  0x00007f1b arg  0x00000056 , 0x00000011 
+ 00029324  0x00007f1c enable  0x00000028 
+ 00029325  0x00007f1d call  0x0000735f 
+ 00029326  0x00007f1e call  0x00007292 
+ 00029327  0x00007f1f arg  0x00000592 , 0x00000006 
+ 00029328  0x00007f20 arg  0x00000062 , 0x00000005 
+ 00029329  0x00007f21 branch  0x00007ebf 
+ 00029330  0x00007f25 setarg  0x00000562 
+ 00029331  0x00007f26 store  0x00000002 , 0x000005d6 
+ 00029332  0x00007f27 setarg  0x000041be 
+ 00029333  0x00007f28 store  0x00000002 , 0x000005d4 
+ 00029334  0x00007f29 set0  0x00000012 , 0x00000000 
+ 00029335  0x00007f2a call  0x000072a8 
+ 00029336  0x00007f2b arg  0x00000592 , 0x00000011 
+ 00029337  0x00007f2c arg  0x00000562 , 0x00000012 
+ 00029338  0x00007f2d arg  0x000005a2 , 0x00000005 
+ 00029339  0x00007f2e call  0x00007352 
+ 00029340  0x00007f2f arg  0x000005a2 , 0x00000011 
+ 00029341  0x00007f30 arg  0x000005b2 , 0x00000012 
+ 00029342  0x00007f31 copy  0x00000012 , 0x00000005 
+ 00029343  0x00007f32 enable  0x00000028 
+ 00029344  0x00007f33 call  0x00007350 
+ 00029345  0x00007f34 call  0x0000736a 
+ 00029346  0x00007f35 setarg  0x000005b2 
+ 00029347  0x00007f36 store  0x00000002 , 0x000005d6 
+ 00029348  0x00007f37 setarg  0x000005a2 
+ 00029349  0x00007f38 store  0x00000002 , 0x000005d4 
+ 00029350  0x00007f39 set1  0x00000012 , 0x00000000 
+ 00029351  0x00007f3a branch  0x000072a8 
+ 00029352  0x00007f3f jam  0x00000000 , 0x000005d8 
+ 00029353  0x00007f40 fetch  0x00000002 , 0x000005d4 
+ 00029354  0x00007f41 iforce  0x00000006 
+ 00029355  0x00007f42 arg  0x000005c2 , 0x00000005 
+ 00029356  0x00007f43 call  0x00007ebf 
+ 00029357  0x00007f44 fetch  0x00000002 , 0x000005d6 
+ 00029358  0x00007f45 iforce  0x00000006 
+ 00029359  0x00007f46 arg  0x00000592 , 0x00000005 
+ 00029360  0x00007f47 call  0x00007ebf 
+ 00029361  0x00007f4a call  0x000072cf 
+ 00029362  0x00007f4b disable  0x00000028 
+ 00029363  0x00007f4c bmark0  0x00000012 , 0x000072b9 
+ 00029364  0x00007f4d fetch  0x00000001 , 0x000005d8 
+ 00029365  0x00007f4e bne  0x00000004 , 0x000072b9 
+ 00029366  0x00007f4f fetch  0x00000002 , 0x000005d6 
+ 00029367  0x00007f50 iforce  0x00000012 
+ 00029368  0x00007f51 call  0x00007301 
+ 00029369  0x00007f53 call  0x00007300 
+ 00029370  0x00007f54 call  0x00007313 
+ 00029371  0x00007f55 fetch  0x00000001 , 0x000005d8 
+ 00029372  0x00007f56 increase  0x00000001 , 0x0000003f 
+ 00029373  0x00007f57 store  0x00000001 , 0x000005d8 
+ 00029374  0x00007f59 call  0x000072cf 
+ 00029375  0x00007f5a enable  0x00000028 
+ 00029376  0x00007f5b call  0x00007300 
+ 00029377  0x00007f5c call  0x00007322 
+ 00029378  0x00007f5d call  0x00007331 
+ 00029379  0x00007f5e call  0x00007322 
+ 00029380  0x00007f5f call  0x00007331 
+ 00029381  0x00007f60 call  0x00007322 
+ 00029382  0x00007f61 call  0x00007331 
+ 00029383  0x00007f62 call  0x00007322 
+ 00029384  0x00007f63 fetch  0x00000001 , 0x000005d8 
+ 00029385  0x00007f64 increase  0x00000001 , 0x0000003f 
+ 00029386  0x00007f65 store  0x00000001 , 0x000005d8 
+ 00029387  0x00007f66 bne  0x00000010 , 0x000072b1 
+ 00029388  0x00007f67 call  0x000072cf 
+ 00029389  0x00007f68 disable  0x00000028 
+ 00029390  0x00007f69 branch  0x00007300 
+ 00029391  0x00007f6e fetch  0x00000001 , 0x000005d8 
+ 00029392  0x00007f6f arg  0x000005c2 , 0x00000006 
+ 00029393  0x00007f70 branch  0x000072f6 , 0x00000034 
+ 00029394  0x00007f71 iforce  0x00000012 
+ 00029395  0x00007f72 force  0x00000011 , 0x00000039 
+ 00029396  0x00007f73 copy  0x00000006 , 0x00000005 
+ 00029397  0x00007f75 ifetch  0x00000001 , 0x00000006 
+ 00029398  0x00007f76 lshift3  0x0000003f , 0x00000002 
+ 00029399  0x00007f77 rshift2  0x0000003f , 0x0000003f 
+ 00029400  0x00007f78 rshift3  0x0000003f , 0x0000003f 
+ 00029401  0x00007f79 ior  0x00000002 , 0x0000003f 
+ 00029402  0x00007f7a istore  0x00000001 , 0x00000005 
+ 00029403  0x00007f7b loop  0x000072d5 
+ 00029404  0x00007f7c setarg  0x000005c2 
+ 00029405  0x00007f7d iadd  0x00000012 , 0x00000006 
+ 00029406  0x00007f7e force  0x00000010 , 0x00000039 
+ 00029407  0x00007f7f arg  0x00000572 , 0x00000005 
+ 00029408  0x00007f81 ifetch  0x00000001 , 0x00000006 
+ 00029409  0x00007f82 istore  0x00000001 , 0x00000005 
+ 00029410  0x00007f83 compare  0x000005d3 , 0x00000006 , 0x000000ff 
+ 00029411  0x00007f84 nbranch  0x000072e5 , 0x00000001 
+ 00029412  0x00007f85 increase  0xffffffef , 0x00000006 
+ 00029413  0x00007f87 loop  0x000072e0 
+ 00029414  0x00007f88 force  0x00000000 , 0x00000011 
+ 00029415  0x00007f89 add  0x00000012 , 0xffffffff , 0x00000013 
+ 00029416  0x00007f8a lshift2  0x00000013 , 0x00000013 
+ 00029417  0x00007f8b lshift2  0x00000013 , 0x00000013 
+ 00029418  0x00007f8c call  0x000074b9 
+ 00029419  0x00007f8d setarg  0x00008400 
+ 00029420  0x00007f8e iadd  0x00000013 , 0x00000013 
+ 00029421  0x00007f8f arg  0x00000572 , 0x00000005 
+ 00029422  0x00007f90 force  0x00000010 , 0x00000039 
+ 00029423  0x00007f92 ifetcht  0x00000001 , 0x00000013 
+ 00029424  0x00007f93 ifetch  0x00000001 , 0x00000005 
+ 00029425  0x00007f94 iadd  0x00000002 , 0x0000003f 
+ 00029426  0x00007f95 istore  0x00000001 , 0x00000005 
+ 00029427  0x00007f96 increase  0x00000001 , 0x00000013 
+ 00029428  0x00007f97 loop  0x000072ef 
+ 00029429  0x00007f98 branch  0x000074bd 
+ 00029430  0x00007f9b force  0x00000010 , 0x00000039 
+ 00029431  0x00007f9c force  0x00000000 , 0x00000002 
+ 00029432  0x00007f9e ifetch  0x00000001 , 0x00000006 
+ 00029433  0x00007f9f ixor  0x00000002 , 0x00000002 
+ 00029434  0x00007fa0 loop  0x000072f8 
+ 00029435  0x00007fa1 deposit  0x00000002 
+ 00029436  0x00007fa2 istore  0x00000001 , 0x00000006 
+ 00029437  0x00007fa3 arg  0x000005c2 , 0x00000006 
+ 00029438  0x00007fa4 arg  0x00000572 , 0x00000005 
+ 00029439  0x00007fa5 branch  0x00007ebf 
+ 00029440  0x00007fa8 arg  0x00000572 , 0x00000012 
+ 00029441  0x00007faa force  0x00000010 , 0x00000039 
+ 00029442  0x00007fab arg  0x00000592 , 0x00000011 
+ 00029443  0x00007fac copy  0x00000011 , 0x00000005 
+ 00029444  0x00007fae ifetcht  0x00000001 , 0x00000011 
+ 00029445  0x00007faf ifetch  0x00000001 , 0x00000012 
+ 00029446  0x00007fb0 ixor  0x00000002 , 0x00000030 
+ 00029447  0x00007fb1 and  0x00000039 , 0x00000003 , 0x00000013 
+ 00029448  0x00007fb2 nbranch  0x0000730a , 0x00000028 
+ 00029449  0x00007fb3 xor_into  0x00000003 , 0x00000013 
+ 00029450  0x00007fb5 sub  0x00000013 , 0x00000001 , 0x00000013 
+ 00029451  0x00007fb6 branch  0x0000730d , 0x00000002 
+ 00029452  0x00007fb7 iadd  0x00000002 , 0x00000030 
+ 00029453  0x00007fb9 deposit  0x00000030 
+ 00029454  0x00007fba istore  0x00000001 , 0x00000005 
+ 00029455  0x00007fbb increase  0x00000001 , 0x00000011 
+ 00029456  0x00007fbc increase  0x00000001 , 0x00000012 
+ 00029457  0x00007fbd loop  0x00007304 
+ 00029458  0x00007fbe rtn 
+ 00029459  0x00007fc1 call  0x000074b9 
+ 00029460  0x00007fc2 force  0x00000010 , 0x00000039 
+ 00029461  0x00007fc3 arg  0x00000592 , 0x00000011 
+ 00029462  0x00007fc5 ifetch  0x00000001 , 0x00000011 
+ 00029463  0x00007fc6 arg  0x00008500 , 0x00000006 
+ 00029464  0x00007fc7 and  0x00000039 , 0x00000003 , 0x00000013 
+ 00029465  0x00007fc8 sub  0x00000013 , 0x00000001 , 0x0000003e 
+ 00029466  0x00007fc9 branch  0x0000731c , 0x00000002 
+ 00029467  0x00007fca arg  0x00008600 , 0x00000006 
+ 00029468  0x00007fcc iadd  0x00000006 , 0x00000006 
+ 00029469  0x00007fcd ifetch  0x00000001 , 0x00000006 
+ 00029470  0x00007fce istore  0x00000001 , 0x00000011 
+ 00029471  0x00007fcf increase  0x00000001 , 0x00000011 
+ 00029472  0x00007fd0 loop  0x00007316 
+ 00029473  0x00007fd1 branch  0x000074bd 
+ 00029474  0x00007fd4 force  0x00000008 , 0x00000039 
+ 00029475  0x00007fd5 arg  0x00000592 , 0x00000006 
+ 00029476  0x00007fd6 copy  0x00000006 , 0x00000005 
+ 00029477  0x00007fd8 ifetch  0x00000001 , 0x00000006 
+ 00029478  0x00007fd9 iforce  0x00000011 
+ 00029479  0x00007fda ifetch  0x00000001 , 0x00000006 
+ 00029480  0x00007fdb iforce  0x00000012 
+ 00029481  0x00007fdc lshift  0x00000011 , 0x0000003f 
+ 00029482  0x00007fdd iadd  0x00000012 , 0x0000003f 
+ 00029483  0x00007fde istore  0x00000001 , 0x00000005 
+ 00029484  0x00007fdf deposit  0x00000011 
+ 00029485  0x00007fe0 iadd  0x00000012 , 0x0000003f 
+ 00029486  0x00007fe1 istore  0x00000001 , 0x00000005 
+ 00029487  0x00007fe2 loop  0x00007325 
+ 00029488  0x00007fe3 rtn 
+ 00029489  0x00007fe7 setarg  0x008ae42c 
+ 00029490  0x00007fe8 iforce  0x00000002 
+ 00029491  0x00007fe9 force  0x00000007 , 0x00000039 
+ 00029492  0x00007fea call  0x00007340 
+ 00029493  0x00007feb setarg  0x000d751b 
+ 00029494  0x00007fec iforce  0x00000002 
+ 00029495  0x00007fed force  0x00000005 , 0x00000039 
+ 00029496  0x00007fee call  0x00007340 
+ 00029497  0x00007fef fetch  0x00000001 , 0x000005a1 
+ 00029498  0x00007ff0 iforce  0x00000011 
+ 00029499  0x00007ff1 fetch  0x00000001 , 0x00000595 
+ 00029500  0x00007ff2 store  0x00000001 , 0x000005a1 
+ 00029501  0x00007ff3 deposit  0x00000011 
+ 00029502  0x00007ff4 store  0x00000001 , 0x00000595 
+ 00029503  0x00007ff5 rtn 
+ 00029504  0x00007ff8 and  0x00000002 , 0x0000000f , 0x00000012 
+ 00029505  0x00007ffa and  0x00000002 , 0x0000000f , 0x0000003f 
+ 00029506  0x00007ffb arg  0x00000592 , 0x00000005 
+ 00029507  0x00007ffc iadd  0x00000005 , 0x00000005 
+ 00029508  0x00007ffd ifetch  0x00000001 , 0x00000005 
+ 00029509  0x00007ffe iforce  0x00000013 
+ 00029510  0x00007fff deposit  0x00000011 
+ 00029511  0x00008000 istore  0x00000001 , 0x00000005 
+ 00029512  0x00008001 copy  0x00000013 , 0x00000011 
+ 00029513  0x00008002 rshift4  0x00000002 , 0x00000002 
+ 00029514  0x00008003 loop  0x00007341 
+ 00029515  0x00008004 setarg  0x00000592 
+ 00029516  0x00008005 iadd  0x00000012 , 0x00000005 
+ 00029517  0x00008006 deposit  0x00000011 
+ 00029518  0x00008007 istore  0x00000001 , 0x00000005 
+ 00029519  0x00008008 rtn 
+ 00029520  0x0000800b enable  0x00000028 
+ 00029521  0x0000800c branch  0x00007353 
+ 00029522  0x0000800f disable  0x00000028 
+ 00029523  0x00008011 force  0x00000010 , 0x00000039 
+ 00029524  0x00008013 ifetcht  0x00000001 , 0x00000011 
+ 00029525  0x00008014 ifetch  0x00000001 , 0x00000012 
+ 00029526  0x00008015 branch  0x00007359 , 0x00000028 
+ 00029527  0x00008016 ixor  0x00000002 , 0x0000003f 
+ 00029528  0x00008017 branch  0x0000735a 
+ 00029529  0x00008019 iadd  0x00000002 , 0x0000003f 
+ 00029530  0x0000801b istore  0x00000001 , 0x00000005 
+ 00029531  0x0000801c increase  0x00000001 , 0x00000011 
+ 00029532  0x0000801d increase  0x00000001 , 0x00000012 
+ 00029533  0x0000801e loop  0x00007354 
+ 00029534  0x0000801f rtn 
+ 00029535  0x00008023 arg  0x000005b2 , 0x00000005 
+ 00029536  0x00008024 ifetch  0x00000006 , 0x00000011 
+ 00029537  0x00008025 istore  0x00000006 , 0x00000005 
+ 00029538  0x00008026 branch  0x00007365 , 0x00000028 
+ 00029539  0x00008027 ifetch  0x00000006 , 0x00000011 
+ 00029540  0x00008028 branch  0x00007366 
+ 00029541  0x0000802a ifetch  0x00000006 , 0x00000006 
+ 00029542  0x0000802c istore  0x00000006 , 0x00000005 
+ 00029543  0x0000802d ifetch  0x00000004 , 0x00000011 
+ 00029544  0x0000802e istore  0x00000004 , 0x00000005 
+ 00029545  0x0000802f rtn 
+ 00029546  0x00008032 arg  0x000041be , 0x00000006 
+ 00029547  0x00008033 arg  0x000005a2 , 0x00000005 
+ 00029548  0x00008034 arg  0x00000000 , 0x00000002 
+ 00029549  0x00008035 setarg  0x008395a7 
+ 00029550  0x00008036 call  0x0000738b 
+ 00029551  0x00008037 setarg  0x00b3c1df 
+ 00029552  0x00008038 call  0x0000738b 
+ 00029553  0x00008039 setarg  0x0000e5e9 
+ 00029554  0x0000803a call  0x0000738c 
+ 00029555  0x0000803b copy  0x00000002 , 0x00000014 
+ 00029556  0x0000803c disable  0x00000028 
+ 00029557  0x0000803d call  0x00007379 
+ 00029558  0x0000803e copy  0x00000014 , 0x00000002 
+ 00029559  0x0000803f enable  0x00000028 
+ 00029560  0x00008040 branch  0x00007379 
+ 00029561  0x00008043 force  0x00000008 , 0x00000039 
+ 00029562  0x00008045 ifetch  0x00000001 , 0x00000006 
+ 00029563  0x00008046 compare  0x00000001 , 0x00000039 , 0x00000001 
+ 00029564  0x00008047 branch  0x00007380 , 0x00000028 
+ 00029565  0x00008048 branch  0x00007381 , 0x00000001 
+ 00029566  0x0000804a iadd  0x00000002 , 0x0000003f 
+ 00029567  0x0000804b branch  0x00007382 
+ 00029568  0x0000804d branch  0x0000737e , 0x00000001 
+ 00029569  0x0000804f ixor  0x00000002 , 0x0000003f 
+ 00029570  0x00008051 istore  0x00000001 , 0x00000005 
+ 00029571  0x00008052 rshift8  0x00000002 , 0x00000002 
+ 00029572  0x00008053 loop  0x0000737a 
+ 00029573  0x00008054 rtn 
+ 00029574  0x00008057 fetch  0x00000006 , 0x00000596 
+ 00029575  0x00008058 store  0x00000006 , 0x00000056 
+ 00029576  0x00008059 ifetch  0x00000006 , 0x00000006 
+ 00029577  0x0000805a istore  0x00000006 , 0x00000005 
+ 00029578  0x0000805b rtn 
+ 00029579  0x0000805e lshift8  0x00000002 , 0x00000002 
+ 00029580  0x00008060 lshift16  0x00000002 , 0x00000002 
+ 00029581  0x00008061 ior  0x00000002 , 0x00000002 
+ 00029582  0x00008062 rtn 
+ 00029583  0x00008067 branch  0x0000738f 
+ 00029584  0x0000806c bpatchx  0x000000e0 , 0x0000403c 
+ 00029585  0x0000806d call  0x0000742b 
+ 00029586  0x0000806e arg  0x00004419 , 0x00000005 
+ 00029587  0x0000806f branch  0x00007497 
+ 00029588  0x00008073 arg  0x0000443a , 0x00000005 
+ 00029589  0x00008074 branch  0x00007397 , 0x00000029 
+ 00029590  0x00008075 arg  0x0000042f , 0x00000005 
+ 00029591  0x00008077 copy  0x00000006 , 0x00000011 
+ 00029592  0x00008078 call  0x00007ebf 
+ 00029593  0x00008079 call  0x00007440 
+ 00029594  0x0000807a arg  0x0000442a , 0x00000006 
+ 00029595  0x0000807b branch  0x000074b0 
+ 00029596  0x0000807e arg  0x0000042f , 0x00000011 
+ 00029597  0x0000807f branch  0x0000739f , 0x00000029 
+ 00029598  0x00008080 arg  0x0000443a , 0x00000011 
+ 00029599  0x00008082 copy  0x00000011 , 0x00000005 
+ 00029600  0x00008083 call  0x0000630c 
+ 00029601  0x00008084 branch  0x00007440 
+ 00029602  0x00008087 arg  0x000044aa , 0x00000006 
+ 00029603  0x00008088 call  0x00007486 
+ 00029604  0x00008089 arg  0x00004419 , 0x00000006 
+ 00029605  0x0000808a call  0x00007487 
+ 00029606  0x0000808b force  0x00000038 , 0x00000036 
+ 00029607  0x0000808c force  0x00000000 , 0x00000036 
+ 00029608  0x0000808d call  0x0000741d 
+ 00029609  0x0000808e arg  0x0000047c , 0x00000005 
+ 00029610  0x0000808f branch  0x00007497 
+ 00029611  0x00008093 force  0x00000049 , 0x0000003f 
+ 00029612  0x00008094 branch  0x000073ae 
+ 00029613  0x00008096 force  0x00000001 , 0x0000003f 
+ 00029614  0x00008098 force  0x00000000 , 0x00000038 
+ 00029615  0x00008099 lshift8  0x00000002 , 0x0000002f 
+ 00029616  0x0000809a ior  0x0000002f , 0x0000002f 
+ 00029617  0x0000809b increase  0x00000001 , 0x00000038 
+ 00029618  0x0000809c rshift8  0x00000002 , 0x0000002f 
+ 00029619  0x0000809d rshift16  0x0000002f , 0x0000002f 
+ 00029620  0x0000809e fetch  0x00000002 , 0x00004411 
+ 00029621  0x0000809f lshift16 , 0x0000003f , 0x0000003f 
+ 00029622  0x000080a0 ior  0x0000002f , 0x0000002f 
+ 00029623  0x000080a1 increase  0x00000001 , 0x00000038 
+ 00029624  0x000080a2 ifetch  0x00000004 , 0x00000006 
+ 00029625  0x000080a3 iforce  0x0000002f 
+ 00029626  0x000080a4 increase  0x00000001 , 0x00000038 
+ 00029627  0x000080a5 ifetch  0x00000002 , 0x00000006 
+ 00029628  0x000080a6 byteswap  0x00000011 , 0x0000002f 
+ 00029629  0x000080a7 lshift16  0x0000002f , 0x0000002f 
+ 00029630  0x000080a8 ior  0x0000002f , 0x0000002f 
+ 00029631  0x000080a9 increase  0x00000001 , 0x00000038 
+ 00029632  0x000080aa rtn 
+ 00029633  0x000080af add  0x00000013 , 0x00000001 , 0x00000006 
+ 00029634  0x000080b0 ifetch  0x00000001 , 0x00000006 
+ 00029635  0x000080b1 iforce  0x00000011 
+ 00029636  0x000080b2 call  0x000073ab 
+ 00029637  0x000080b3 call  0x0000741f 
+ 00029638  0x000080b5 force  0x00000000 , 0x00000038 
+ 00029639  0x000080b6 ifetch  0x00000001 , 0x00000013 
+ 00029640  0x000080b7 and_into  0x00000003 , 0x0000003f 
+ 00029641  0x000080b8 lshift16  0x0000003f , 0x0000002f 
+ 00029642  0x000080b9 set1  0x00000008 , 0x0000002f 
+ 00029643  0x000080ba call  0x0000748f 
+ 00029644  0x000080bb call  0x00007422 
+ 00029645  0x000080bd copy  0x00000011 , 0x00000039 
+ 00029646  0x000080be add  0x00000013 , 0x00000002 , 0x00000006 
+ 00029647  0x000080bf call  0x0000746e 
+ 00029648  0x000080c1 call  0x00007478 
+ 00029649  0x000080c2 call  0x00007422 
+ 00029650  0x000080c3 deposit  0x00000039 
+ 00029651  0x000080c4 branch  0x000073d5 , 0x00000034 
+ 00029652  0x000080c5 branch  0x000073d0 
+ 00029653  0x000080c7 force  0x0000000c , 0x00000038 
+ 00029654  0x000080c8 deposit  0x0000002f 
+ 00029655  0x000080c9 store  0x00000004 , 0x00000417 
+ 00029656  0x000080ca rtn 
+ 00029657  0x000080cd increase  0x00000001 , 0x00000011 
+ 00029658  0x000080ce call  0x000073ad 
+ 00029659  0x000080cf copy  0x00000013 , 0x00000006 
+ 00029660  0x000080d0 call  0x00007482 
+ 00029661  0x000080d1 call  0x00007425 
+ 00029662  0x000080d2 call  0x0000749e 
+ 00029663  0x000080d3 increase  0x00000010 , 0x00000013 
+ 00029664  0x000080d4 increase  0xfffffff0 , 0x00000012 
+ 00029665  0x000080d5 branch  0x000073d9 , 0x00000002 
+ 00029666  0x000080d6 rtn 
+ 00029667  0x000080d9 bpatchx  0x000000e1 , 0x0000403c 
+ 00029668  0x000080da arg  0x000043dc , 0x00000013 
+ 00029669  0x000080db fetcht  0x00000005 , 0x00004403 
+ 00029670  0x000080dc call  0x000073c1 
+ 00029671  0x000080dd force  0x00000008 , 0x00000038 
+ 00029672  0x000080de iforce  0x0000002f 
+ 00029673  0x000080df force  0x00000000 , 0x00000011 
+ 00029674  0x000080e0 call  0x000073ad 
+ 00029675  0x000080e1 call  0x00007425 
+ 00029676  0x000080e2 arg  0x000043de , 0x00000013 
+ 00029677  0x000080e3 fetch  0x00000001 , 0x000043dd 
+ 00029678  0x000080e4 add  0x0000003f , 0xffffffff , 0x00000012 
+ 00029679  0x000080e5 iadd  0x00000013 , 0x00000005 
+ 00029680  0x000080e6 force  0x0000000c , 0x00000038 
+ 00029681  0x000080e7 deposit  0x0000002f 
+ 00029682  0x000080e8 istore  0x00000004 , 0x00000005 
+ 00029683  0x000080e9 call  0x000073d9 
+ 00029684  0x000080ea fetch  0x00000001 , 0x000043dd 
+ 00029685  0x000080eb increase  0x00000004 , 0x0000003f 
+ 00029686  0x000080ec store  0x00000001 , 0x000043dd 
+ 00029687  0x000080ed fetcht  0x00000005 , 0x00004403 
+ 00029688  0x000080ee increase  0x00000001 , 0x00000002 
+ 00029689  0x000080ef storet  0x00000005 , 0x00004403 
+ 00029690  0x000080f0 rtn 
+ 00029691  0x000080f3 bpatchx  0x000000e2 , 0x0000403c 
+ 00029692  0x000080f4 fetch  0x00000001 , 0x000002da 
+ 00029693  0x000080f5 sub  0x0000003f , 0x00000014 , 0x0000003e 
+ 00029694  0x000080f6 branch  0x000073ff , 0x00000002 
+ 00029695  0x000080f8 arg  0x000002db , 0x00000013 
+ 00029696  0x000080f9 add  0x0000003f , 0xffffffff , 0x00000012 
+ 00029697  0x000080fa increase  0xfffffffc , 0x0000003f 
+ 00029698  0x000080fb store  0x00000001 , 0x000002da 
+ 00029699  0x000080fc iadd  0x00000013 , 0x00000006 
+ 00029700  0x000080fd ifetch  0x00000004 , 0x00000006 
+ 00029701  0x000080fe force  0x00000008 , 0x00000038 
+ 00029702  0x000080ff iforce  0x0000002f 
+ 00029703  0x00008100 force  0x00000000 , 0x00000011 
+ 00029704  0x00008101 fetcht  0x00000005 , 0x00004408 
+ 00029705  0x00008102 call  0x000073ad 
+ 00029706  0x00008103 call  0x00007425 
+ 00029707  0x00008104 force  0x0000000c , 0x00000038 
+ 00029708  0x00008105 deposit  0x0000002f 
+ 00029709  0x00008106 store  0x00000004 , 0x0000041b 
+ 00029710  0x00008107 call  0x000073d9 
+ 00029711  0x00008108 arg  0x000002d9 , 0x00000013 
+ 00029712  0x00008109 call  0x000073c1 
+ 00029713  0x0000810a fetcht  0x00000004 , 0x0000041b 
+ 00029714  0x0000810b isub  0x00000002 , 0x0000003f 
+ 00029715  0x0000810c nrtn  0x00000034 
+ 00029716  0x0000810d fetch  0x00000004 , 0x0000440d 
+ 00029717  0x0000810e isub  0x00000002 , 0x0000003f 
+ 00029718  0x0000810f rtn  0x00000034 
+ 00029719  0x00008110 storet  0x00000004 , 0x0000440d 
+ 00029720  0x00008111 fetch  0x00000005 , 0x00004408 
+ 00029721  0x00008112 increase  0x00000001 , 0x0000003f 
+ 00029722  0x00008113 store  0x00000005 , 0x00004408 
+ 00029723  0x00008114 force  0x00000000 , 0x0000003f 
+ 00029724  0x00008115 rtn 
+ 00029725  0x00008118 nbranch  0x0000741d , 0x00000037 
+ 00029726  0x00008119 rtn 
+ 00029727  0x0000811c force  0x00000030 , 0x00000036 
+ 00029728  0x0000811d force  0x00000000 , 0x00000036 
+ 00029729  0x0000811e branch  0x0000741d 
+ 00029730  0x00008121 force  0x00000032 , 0x00000036 
+ 00029731  0x00008122 force  0x00000002 , 0x00000036 
+ 00029732  0x00008123 branch  0x0000741d 
+ 00029733  0x00008126 force  0x00000034 , 0x00000036 
+ 00029734  0x00008127 force  0x00000004 , 0x00000036 
+ 00029735  0x00008128 branch  0x0000741d 
+ 00029736  0x0000812c force  0x00000001 , 0x00000036 
+ 00029737  0x0000812d force  0x00000000 , 0x00000036 
+ 00029738  0x0000812e rtn 
+ 00029739  0x00008130 force  0x00000000 , 0x00000038 
+ 00029740  0x00008131 fetch  0x00000004 , 0x0000042f 
+ 00029741  0x00008132 iforce  0x0000002f 
+ 00029742  0x00008133 increase  0x00000001 , 0x00000038 
+ 00029743  0x00008134 ifetch  0x00000004 , 0x00000006 
+ 00029744  0x00008135 iforce  0x0000002f 
+ 00029745  0x00008136 increase  0x00000001 , 0x00000038 
+ 00029746  0x00008137 fetch  0x00000004 , 0x0000443a 
+ 00029747  0x00008138 iforce  0x0000002f 
+ 00029748  0x00008139 increase  0x00000001 , 0x00000038 
+ 00029749  0x0000813a ifetch  0x00000004 , 0x00000006 
+ 00029750  0x0000813b iforce  0x0000002f 
+ 00029751  0x0000813c increase  0x00000001 , 0x00000038 
+ 00029752  0x0000813d call  0x00007492 
+ 00029753  0x0000813e increase  0xfffffffc , 0x00000038 
+ 00029754  0x0000813f fetch  0x00000004 , 0x000044c7 
+ 00029755  0x00008140 copy  0x0000003f , 0x0000002f 
+ 00029756  0x00008141 increase  0x00000004 , 0x00000038 
+ 00029757  0x00008142 force  0x00000038 , 0x00000036 
+ 00029758  0x00008143 force  0x00000008 , 0x00000036 
+ 00029759  0x00008144 branch  0x0000741d 
+ 00029760  0x00008148 bpatchx  0x000000e3 , 0x0000403c 
+ 00029761  0x00008149 fetch  0x00000006 , 0x000044a0 
+ 00029762  0x0000814a fetcht  0x00000006 , 0x0000044f 
+ 00029763  0x0000814b branch  0x00007446 , 0x00000029 
+ 00029764  0x0000814c fetch  0x00000006 , 0x0000044f 
+ 00029765  0x0000814d fetcht  0x00000006 , 0x000044a0 
+ 00029766  0x0000814f force  0x00000008 , 0x00000038 
+ 00029767  0x00008150 copy  0x00000002 , 0x0000002f 
+ 00029768  0x00008151 increase  0x00000001 , 0x00000038 
+ 00029769  0x00008152 rshift32  0x00000002 , 0x0000002f 
+ 00029770  0x00008153 lshift16  0x0000003f , 0x0000003f 
+ 00029771  0x00008154 ior  0x0000002f , 0x0000002f 
+ 00029772  0x00008155 increase  0x00000001 , 0x00000038 
+ 00029773  0x00008156 rshift32  0x0000003f , 0x0000002f 
+ 00029774  0x00008157 increase  0x00000001 , 0x00000038 
+ 00029775  0x00008158 force  0x00000000 , 0x0000002f 
+ 00029776  0x00008159 force  0x00000000 , 0x0000003f 
+ 00029777  0x0000815a fetch  0x00000001 , 0x0000448e 
+ 00029778  0x0000815b fetcht  0x00000001 , 0x00004485 
+ 00029779  0x0000815c nbranch  0x00007456 , 0x00000029 
+ 00029780  0x0000815e fetch  0x00000001 , 0x00004495 
+ 00029781  0x0000815f fetcht  0x00000001 , 0x0000448e 
+ 00029782  0x00008161 store  0x00000001 , 0x0000444a 
+ 00029783  0x00008162 storet  0x00000001 , 0x0000444b 
+ 00029784  0x00008163 force  0x00000000 , 0x00000038 
+ 00029785  0x00008164 arg  0x0000444a , 0x00000012 
+ 00029786  0x00008165 force  0x00000004 , 0x00000039 
+ 00029787  0x00008167 ifetch  0x00000004 , 0x00000011 
+ 00029788  0x00008168 ifetcht  0x00000004 , 0x00000012 
+ 00029789  0x00008169 ixor  0x00000002 , 0x0000002f 
+ 00029790  0x0000816a increase  0x00000001 , 0x00000038 
+ 00029791  0x0000816b increase  0x00000004 , 0x00000011 
+ 00029792  0x0000816c increase  0x00000004 , 0x00000012 
+ 00029793  0x0000816d loop  0x0000745b 
+ 00029794  0x0000816e call  0x00007492 
+ 00029795  0x0000816f increase  0xfffffffc , 0x00000038 
+ 00029796  0x00008170 fetch  0x00000004 , 0x000044c7 
+ 00029797  0x00008171 copy  0x0000003f , 0x0000002f 
+ 00029798  0x00008172 increase  0x00000004 , 0x00000038 
+ 00029799  0x00008173 force  0x00000038 , 0x00000036 
+ 00029800  0x00008174 force  0x0000000c , 0x00000036 
+ 00029801  0x00008175 call  0x0000741d 
+ 00029802  0x00008177 call  0x00007491 
+ 00029803  0x00008178 force  0x0000003a , 0x00000036 
+ 00029804  0x00008179 force  0x00000008 , 0x00000036 
+ 00029805  0x0000817a branch  0x0000741d 
+ 00029806  0x0000817d compare  0x00000000 , 0x00000039 , 0x00000003 
+ 00029807  0x0000817e rtn  0x00000001 
+ 00029808  0x0000817f deposit  0x00000006 
+ 00029809  0x00008180 iadd  0x00000039 , 0x00000005 
+ 00029810  0x00008181 force  0x00000000 , 0x0000003f 
+ 00029811  0x00008183 istore  0x00000001 , 0x00000005 
+ 00029812  0x00008184 increase  0x00000001 , 0x00000039 
+ 00029813  0x00008185 compare  0x00000000 , 0x00000039 , 0x00000003 
+ 00029814  0x00008186 rtn  0x00000001 
+ 00029815  0x00008187 branch  0x00007473 
+ 00029816  0x0000818a force  0x00000000 , 0x00000038 
+ 00029817  0x0000818c deposit  0x00000039 
+ 00029818  0x0000818d branch  0x0000747d , 0x00000034 
+ 00029819  0x0000818e ifetch  0x00000004 , 0x00000006 
+ 00029820  0x0000818f increase  0xfffffffc , 0x00000039 
+ 00029821  0x00008191 iforce  0x0000002f 
+ 00029822  0x00008192 increase  0x00000001 , 0x00000038 
+ 00029823  0x00008193 compare  0x00000004 , 0x00000038 , 0x0000000f 
+ 00029824  0x00008194 rtn  0x00000001 
+ 00029825  0x00008195 branch  0x00007479 
+ 00029826  0x00008198 force  0x00000008 , 0x00000038 
+ 00029827  0x00008199 branch  0x00007487 
+ 00029828  0x0000819b force  0x00000004 , 0x00000038 
+ 00029829  0x0000819c branch  0x00007487 
+ 00029830  0x0000819e force  0x00000000 , 0x00000038 
+ 00029831  0x000081a0 force  0x00000004 , 0x00000039 
+ 00029832  0x000081a2 ifetch  0x00000004 , 0x00000006 
+ 00029833  0x000081a3 iforce  0x0000002f 
+ 00029834  0x000081a4 increase  0x00000001 , 0x00000038 
+ 00029835  0x000081a5 loop  0x00007488 
+ 00029836  0x000081a6 rtn 
+ 00029837  0x000081a9 arg  0x0000047c , 0x00000006 
+ 00029838  0x000081aa branch  0x00007484 
+ 00029839  0x000081ad force  0x00000004 , 0x00000039 
+ 00029840  0x000081ae branch  0x00007494 
+ 00029841  0x000081b1 force  0x00000000 , 0x00000038 
+ 00029842  0x000081b3 force  0x00000004 , 0x00000039 
+ 00029843  0x000081b5 force  0x00000000 , 0x0000002f 
+ 00029844  0x000081b7 increase  0x00000001 , 0x00000038 
+ 00029845  0x000081b8 loop  0x00007493 
+ 00029846  0x000081b9 rtn 
+ 00029847  0x000081bc force  0x0000000c , 0x00000038 
+ 00029848  0x000081bd force  0x00000004 , 0x00000039 
+ 00029849  0x000081bf deposit  0x0000002f 
+ 00029850  0x000081c0 istore  0x00000004 , 0x00000005 
+ 00029851  0x000081c1 increase  0x00000001 , 0x00000038 
+ 00029852  0x000081c2 loop  0x00007499 
+ 00029853  0x000081c3 rtn 
+ 00029854  0x000081c6 force  0x0000000c , 0x00000038 
+ 00029855  0x000081c7 copy  0x00000013 , 0x00000005 
+ 00029856  0x000081c8 add  0x00000012 , 0x00000001 , 0x00000039 
+ 00029857  0x000081c9 sub  0x00000039 , 0x0000000f , 0x0000003e 
+ 00029858  0x000081ca branch  0x000074a4 , 0x00000002 
+ 00029859  0x000081cb force  0x00000010 , 0x00000039 
+ 00029860  0x000081cd deposit  0x0000002f 
+ 00029861  0x000081ce sub  0x00000039 , 0x00000003 , 0x0000003e 
+ 00029862  0x000081cf branch  0x000074ac , 0x00000002 
+ 00029863  0x000081d0 istore  0x00000004 , 0x00000005 
+ 00029864  0x000081d1 increase  0xfffffffc , 0x00000039 
+ 00029865  0x000081d2 rtn  0x00000005 
+ 00029866  0x000081d3 increase  0x00000001 , 0x00000038 
+ 00029867  0x000081d4 branch  0x000074a4 
+ 00029868  0x000081d6 istore  0x00000001 , 0x00000005 
+ 00029869  0x000081d7 rshift8  0x0000003f , 0x0000003f 
+ 00029870  0x000081d8 loop  0x000074ac 
+ 00029871  0x000081d9 rtn 
+ 00029872  0x000081dd force  0x0000000c , 0x00000038 
+ 00029873  0x000081de force  0x00000004 , 0x00000039 
+ 00029874  0x000081e0 ifetch  0x00000004 , 0x00000006 
+ 00029875  0x000081e1 isub  0x0000002f , 0x0000003e 
+ 00029876  0x000081e2 nrtn  0x00000005 
+ 00029877  0x000081e3 increase  0x00000001 , 0x00000038 
+ 00029878  0x000081e4 loop  0x000074b2 
+ 00029879  0x000081e5 force  0x00000000 , 0x0000003e 
+ 00029880  0x000081e6 rtn 
+ 00029881  0x000081e9 hfetch  0x00000001 , 0x00008050 
+ 00029882  0x000081ea set0  0x00000000 , 0x0000003f 
+ 00029883  0x000081eb hstore  0x00000001 , 0x00008050 
+ 00029884  0x000081ec rtn 
+ 00029885  0x000081ef hfetch  0x00000001 , 0x00008050 
+ 00029886  0x000081f0 set1  0x00000000 , 0x0000003f 
+ 00029887  0x000081f1 hstore  0x00000001 , 0x00008050 
+ 00029888  0x000081f2 rtn 
+ 00029889  0x000081f5 arg  0x00000886 , 0x00000005 
+ 00029890  0x000081f6 setsect  0x00000000 , 0x0003ffff 
+ 00029891  0x000081f7 setsect  0x00000001 , 0x0003ffff 
+ 00029892  0x000081f8 setsect  0x00000002 , 0x0003ffff 
+ 00029893  0x000081f9 setsect  0x00000003 , 0x0003fbff 
+ 00029894  0x000081fa istore  0x00000009 , 0x00000005 
+ 00029895  0x000081fb setsect  0x00000000 , 0x0003ffff 
+ 00029896  0x000081fc setsect  0x00000001 , 0x0003ffff 
+ 00029897  0x000081fd setsect  0x00000002 , 0x0003ffff 
+ 00029898  0x000081fe setsect  0x00000003 , 0x0003ffff 
+ 00029899  0x000081ff istore  0x00000009 , 0x00000005 
+ 00029900  0x00008200 setsect  0x00000000 , 0x0003ffff 
+ 00029901  0x00008201 setsect  0x00000001 , 0x0003ffff 
+ 00029902  0x00008202 setsect  0x00000002 , 0x0003cfff 
+ 00029903  0x00008203 setsect  0x00000003 , 0x0003ffff 
+ 00029904  0x00008204 istore  0x00000009 , 0x00000005 
+ 00029905  0x00008205 setsect  0x00000000 , 0x0003ffff 
+ 00029906  0x00008206 setsect  0x00000001 , 0x0003ffff 
+ 00029907  0x00008207 setsect  0x00000002 , 0x0003ffef 
+ 00029908  0x00008208 setsect  0x00000003 , 0x0003ffff 
+ 00029909  0x00008209 istore  0x00000009 , 0x00000005 
+ 00029910  0x0000820a setsect  0x00000000 , 0x0003ffff 
+ 00029911  0x0000820b setsect  0x00000001 , 0x0003ffff 
+ 00029912  0x0000820c setsect  0x00000002 , 0x0003ffff 
+ 00029913  0x0000820d setsect  0x00000003 , 0x0003ffff 
+ 00029914  0x0000820e istore  0x00000009 , 0x00000005 
+ 00029915  0x0000820f setsect  0x00000000 , 0x0003ffff 
+ 00029916  0x00008210 setsect  0x00000001 , 0x00026c7f 
+ 00029917  0x00008211 setsect  0x00000002 , 0x0000146b 
+ 00029918  0x00008212 setsect  0x00000003 , 0x00037bb3 
+ 00029919  0x00008213 istore  0x00000009 , 0x00000005 
+ 00029920  0x00008214 setsect  0x00000000 , 0x0001feb8 
+ 00029921  0x00008215 setsect  0x00000001 , 0x00010c12 
+ 00029922  0x00008216 setsect  0x00000002 , 0x0002b722 
+ 00029923  0x00008217 setsect  0x00000003 , 0x00029fa6 
+ 00029924  0x00008218 istore  0x00000009 , 0x00000005 
+ 00029925  0x00008219 setsect  0x00000000 , 0x0000e70f 
+ 00029926  0x0000821a setsect  0x00000001 , 0x00016720 
+ 00029927  0x0000821b setsect  0x00000002 , 0x0000519e 
+ 00029928  0x0000821c setsect  0x00000003 , 0x00019084 
+ 00029929  0x0000821d istore  0x00000009 , 0x00000005 
+ 00029930  0x0000821e setsect  0x00000000 , 0x00031012 
+ 00029931  0x0000821f setsect  0x00000001 , 0x000360bf 
+ 00029932  0x00008220 setsect  0x00000002 , 0x0003f0af 
+ 00029933  0x00008221 setsect  0x00000003 , 0x000003d3 
+ 00029934  0x00008222 istore  0x00000009 , 0x00000005 
+ 00029935  0x00008223 setsect  0x00000000 , 0x0003a188 
+ 00029936  0x00008224 setsect  0x00000001 , 0x00003ad0 
+ 00029937  0x00008225 setsect  0x00000002 , 0x0003cbf2 
+ 00029938  0x00008226 setsect  0x00000003 , 0x000243d9 
+ 00029939  0x00008227 istore  0x00000009 , 0x00000005 
+ 00029940  0x00008228 setsect  0x00000000 , 0x0002b030 
+ 00029941  0x00008229 setsect  0x00000001 , 0x00036a03 
+ 00029942  0x0000822a setsect  0x00000002 , 0x00011188 
+ 00029943  0x0000822b setsect  0x00000003 , 0x0001e520 
+ 00029944  0x0000822c istore  0x00000009 , 0x00000005 
+ 00029945  0x0000822d setsect  0x00000000 , 0x0003a11e 
+ 00029946  0x0000822e setsect  0x00000001 , 0x0000fe5d 
+ 00029947  0x0000822f setsect  0x00000002 , 0x0000dd57 
+ 00029948  0x00008230 setsect  0x00000003 , 0x0001ac93 
+ 00029949  0x00008231 istore  0x00000009 , 0x00000005 
+ 00029950  0x00008232 setsect  0x00000000 , 0x000011ed 
+ 00029951  0x00008233 setsect  0x00000001 , 0x000218c4 
+ 00029952  0x00008234 setsect  0x00000002 , 0x00008da7 
+ 00029953  0x00008235 setsect  0x00000003 , 0x000257ff 
+ 00029954  0x00008236 istore  0x00000009 , 0x00000005 
+ 00029955  0x00008237 setsect  0x00000000 , 0x0003192b 
+ 00029956  0x00008238 setsect  0x00000001 , 0x00034641 
+ 00029957  0x00008239 setsect  0x00000002 , 0x0001be0c 
+ 00029958  0x0000823a setsect  0x00000003 , 0x000366ad 
+ 00029959  0x0000823b istore  0x00000009 , 0x00000005 
+ 00029960  0x0000823c setsect  0x00000000 , 0x00001f83 
+ 00029961  0x0000823d setsect  0x00000001 , 0x00015a23 
+ 00029962  0x0000823e setsect  0x00000002 , 0x0003f9b0 
+ 00029963  0x0000823f setsect  0x00000003 , 0x00003949 
+ 00029964  0x00008240 istore  0x00000009 , 0x00000005 
+ 00029965  0x00008241 setsect  0x00000000 , 0x00013a51 
+ 00029966  0x00008242 setsect  0x00000001 , 0x000153fd 
+ 00029967  0x00008243 setsect  0x00000002 , 0x0003372a 
+ 00029968  0x00008244 setsect  0x00000003 , 0x0000f1bb 
+ 00029969  0x00008245 istore  0x00000009 , 0x00000005 
+ 00029970  0x00008246 setsect  0x00000000 , 0x0003ae85 
+ 00029971  0x00008247 setsect  0x00000001 , 0x0001eed9 
+ 00029972  0x00008248 setsect  0x00000002 , 0x00009e66 
+ 00029973  0x00008249 setsect  0x00000003 , 0x000001a8 
+ 00029974  0x0000824a istore  0x00000008 , 0x00000005 
+ 00029975  0x0000824b rtn 
+ 00029976  0x00008250 arg  0x0000091e , 0x00000005 
+ 00029977  0x00008251 setsect  0x00000000 , 0x0003ffff 
+ 00029978  0x00008252 setsect  0x00000001 , 0x0003ffff 
+ 00029979  0x00008253 setsect  0x00000002 , 0x0003ffff 
+ 00029980  0x00008254 setsect  0x00000003 , 0x0003ffff 
+ 00029981  0x00008255 istore  0x00000009 , 0x00000005 
+ 00029982  0x00008256 setsect  0x00000000 , 0x0003ffff 
+ 00029983  0x00008257 setsect  0x00000001 , 0x0000003f 
+ 00029984  0x00008258 setsect  0x00000002 , 0x00000000 
+ 00029985  0x00008259 setsect  0x00000003 , 0x00000000 
+ 00029986  0x0000825a istore  0x00000009 , 0x00000005 
+ 00029987  0x0000825b setsect  0x00000000 , 0x00000000 
+ 00029988  0x0000825c setsect  0x00000001 , 0x00000000 
+ 00029989  0x0000825d setsect  0x00000002 , 0x00001000 
+ 00029990  0x0000825e setsect  0x00000003 , 0x00000000 
+ 00029991  0x0000825f istore  0x00000009 , 0x00000005 
+ 00029992  0x00008260 setsect  0x00000000 , 0x0003ff00 
+ 00029993  0x00008261 setsect  0x00000001 , 0x0003ffff 
+ 00029994  0x00008262 setsect  0x00000002 , 0x0003ffcf 
+ 00029995  0x00008263 setsect  0x00000003 , 0x0003ffff 
+ 00029996  0x00008264 istore  0x00000009 , 0x00000005 
+ 00029997  0x00008265 setsect  0x00000000 , 0x0003ffff 
+ 00029998  0x00008266 setsect  0x00000001 , 0x0003ffff 
+ 00029999  0x00008267 setsect  0x00000002 , 0x0003ffff 
+ 00030000  0x00008268 setsect  0x00000003 , 0x000003ff 
+ 00030001  0x00008269 istore  0x00000009 , 0x00000005 
+ 00030002  0x0000826a setsect  0x00000000 , 0x00000000 
+ 00030003  0x0000826b setsect  0x00000001 , 0x00000000 
+ 00030004  0x0000826c setsect  0x00000002 , 0x00000000 
+ 00030005  0x0000826d setsect  0x00000003 , 0x00000000 
+ 00030006  0x0000826e istore  0x00000009 , 0x00000005 
+ 00030007  0x0000826f setsect  0x00000000 , 0x00010000 
+ 00030008  0x00008270 setsect  0x00000001 , 0x00000000 
+ 00030009  0x00008271 setsect  0x00000002 , 0x0003f000 
+ 00030010  0x00008272 setsect  0x00000003 , 0x0003ffff 
+ 00030011  0x00008273 istore  0x00000009 , 0x00000005 
+ 00030012  0x00008274 setsect  0x00000000 , 0x000296ff 
+ 00030013  0x00008275 setsect  0x00000001 , 0x00022630 
+ 00030014  0x00008276 setsect  0x00000002 , 0x0003945d 
+ 00030015  0x00008277 setsect  0x00000003 , 0x0003d284 
+ 00030016  0x00008278 istore  0x00000009 , 0x00000005 
+ 00030017  0x00008279 setsect  0x00000000 , 0x000333a0 
+ 00030018  0x0000827a setsect  0x00000001 , 0x00004b7a 
+ 00030019  0x0000827b setsect  0x00000002 , 0x000037d8 
+ 00030020  0x0000827c setsect  0x00000003 , 0x0003c9dc 
+ 00030021  0x0000827d istore  0x00000009 , 0x00000005 
+ 00030022  0x0000827e setsect  0x00000000 , 0x0003a440 
+ 00030023  0x0000827f setsect  0x00000001 , 0x0001b958 
+ 00030024  0x00008280 setsect  0x00000002 , 0x00038bce 
+ 00030025  0x00008281 setsect  0x00000003 , 0x0001091f 
+ 00030026  0x00008282 istore  0x00000009 , 0x00000005 
+ 00030027  0x00008283 setsect  0x00000000 , 0x0002e12c 
+ 00030028  0x00008284 setsect  0x00000001 , 0x0001f47c 
+ 00030029  0x00008285 setsect  0x00000002 , 0x000356b1 
+ 00030030  0x00008286 setsect  0x00000003 , 0x0002fd47 
+ 00030031  0x00008287 istore  0x00000009 , 0x00000005 
+ 00030032  0x00008288 setsect  0x00000000 , 0x00006837 
+ 00030033  0x00008289 setsect  0x00000001 , 0x0002ed90 
+ 00030034  0x0000828a setsect  0x00000002 , 0x0001ecec 
+ 00030035  0x0000828b setsect  0x00000003 , 0x0001acc5 
+ 00030036  0x0000828c istore  0x00000009 , 0x00000005 
+ 00030037  0x0000828d setsect  0x00000000 , 0x00023357 
+ 00030038  0x0000828e setsect  0x00000001 , 0x00018af3 
+ 00030039  0x0000828f setsect  0x00000002 , 0x0000f9e1 
+ 00030040  0x00008290 setsect  0x00000003 , 0x000129f0 
+ 00030041  0x00008291 istore  0x00000009 , 0x00000005 
+ 00030042  0x00008292 setsect  0x00000000 , 0x0002e7eb 
+ 00030043  0x00008293 setsect  0x00000001 , 0x0003e6e3 
+ 00030044  0x00008294 setsect  0x00000002 , 0x0003e1a7 
+ 00030045  0x00008295 setsect  0x00000003 , 0x00010b8b 
+ 00030046  0x00008296 istore  0x00000009 , 0x00000005 
+ 00030047  0x00008297 setsect  0x00000000 , 0x00024fe3 
+ 00030048  0x00008298 setsect  0x00000001 , 0x000020ef 
+ 00030049  0x00008299 setsect  0x00000002 , 0x0001b5a6 
+ 00030050  0x0000829a setsect  0x00000003 , 0x0000dc2f 
+ 00030051  0x0000829b istore  0x00000009 , 0x00000005 
+ 00030052  0x0000829c setsect  0x00000000 , 0x00013860 
+ 00030053  0x0000829d setsect  0x00000001 , 0x0002bd69 
+ 00030054  0x0000829e setsect  0x00000002 , 0x0000391a 
+ 00030055  0x0000829f setsect  0x00000003 , 0x0001b222 
+ 00030056  0x000082a0 istore  0x00000009 , 0x00000005 
+ 00030057  0x000082a1 rtn 
+ 00030058  0x000082a5 fetch  0x00000001 , 0x0000465a 
+ 00030059  0x000082a6 nbranch  0x0000757d , 0x00000034 
+ 00030060  0x000082a7 branch  0x00007a77 
+ 00030061  0x000082aa bpatchx  0x000000e4 , 0x0000403c 
+ 00030062  0x000082ab fetch  0x00000001 , 0x0000465a 
+ 00030063  0x000082ac rtn  0x00000034 
+ 00030064  0x000082ad fetch  0x00000001 , 0x000045b1 
+ 00030065  0x000082ae rtnne  0x00000001 
+ 00030066  0x000082af fetch  0x00000001 , 0x000044be 
+ 00030067  0x000082b0 rtn  0x00000034 
+ 00030068  0x000082b1 fetch  0x00000001 , 0x000044c3 
+ 00030069  0x000082b2 rtneq  0x00000003 
+ 00030070  0x000082b3 fetch  0x00000002 , 0x00004682 
+ 00030071  0x000082b4 bbit1  0x00000000 , 0x0000757b 
+ 00030072  0x000082b5 fetch  0x00000001 , 0x000044c0 
+ 00030073  0x000082b6 beq  0x00000000 , 0x00007a77 
+ 00030074  0x000082b7 rtn 
+ 00030075  0x000082b9 jam  0x00000000 , 0x000044c0 
+ 00030076  0x000082ba rtn 
+ 00030077  0x000082be bpatchx  0x000000e5 , 0x0000403c 
+ 00030078  0x000082bf fetch  0x00000001 , 0x0000465a 
+ 00030079  0x000082c0 branch  0x0000612b , 0x00000034 
+ 00030080  0x000082c1 call  0x00006124 
+ 00030081  0x000082c2 call  0x00007583 
+ 00030082  0x000082c3 branch  0x0000766d 
+ 00030083  0x000082c6 setarg  0x00000000 
+ 00030084  0x000082c7 store  0x00000008 , 0x000009ae 
+ 00030085  0x000082c8 store  0x00000004 , 0x000009b6 
+ 00030086  0x000082c9 store  0x00000007 , 0x0000465e 
+ 00030087  0x000082ca rtn 
+ 00030088  0x000082cd jam  0x00000001 , 0x000009b0 
+ 00030089  0x000082ce branch  0x0000758d 
+ 00030090  0x000082d0 fetch  0x00000001 , 0x000045b1 
+ 00030091  0x000082d1 beq  0x00000001 , 0x0000768a 
+ 00030092  0x000082d2 branch  0x00002a8c 
+ 00030093  0x000082d4 fetch  0x00000001 , 0x000045b1 
+ 00030094  0x000082d5 beq  0x00000001 , 0x00007590 
+ 00030095  0x000082d6 branch  0x0000766d 
+ 00030096  0x000082d9 call  0x0000768a 
+ 00030097  0x000082da fetch  0x00000001 , 0x000009af 
+ 00030098  0x000082db nrtn  0x00000034 
+ 00030099  0x000082dc jam  0x00000003 , 0x000009ae 
+ 00030100  0x000082dd rtn 
+ 00030101  0x000082e1 call  0x000075b0 
+ 00030102  0x000082e2 arg  0x000009de , 0x00000011 
+ 00030103  0x000082e3 arg  0x00000866 , 0x00000005 
+ 00030104  0x000082e4 call  0x00007c79 
+ 00030105  0x000082e5 arg  0x000009be , 0x00000011 
+ 00030106  0x000082e6 arg  0x00000826 , 0x00000005 
+ 00030107  0x000082e7 call  0x00007c79 
+ 00030108  0x000082e8 arg  0x00000826 , 0x00000011 
+ 00030109  0x000082e9 arg  0x000009be , 0x00000012 
+ 00030110  0x000082ea arg  0x00000826 , 0x00000005 
+ 00030111  0x000082eb call  0x00007be1 
+ 00030112  0x000082ec arg  0x0000093e , 0x00000011 
+ 00030113  0x000082ed arg  0x000009be , 0x00000012 
+ 00030114  0x000082ee arg  0x00000846 , 0x00000005 
+ 00030115  0x000082ef call  0x00007be1 
+ 00030116  0x000082f0 arg  0x00000846 , 0x00000011 
+ 00030117  0x000082f1 arg  0x00000826 , 0x00000012 
+ 00030118  0x000082f2 arg  0x00000826 , 0x00000005 
+ 00030119  0x000082f3 call  0x00007c7d 
+ 00030120  0x000082f4 arg  0x00000806 , 0x00000011 
+ 00030121  0x000082f5 arg  0x00000826 , 0x00000012 
+ 00030122  0x000082f6 arg  0x00000806 , 0x00000005 
+ 00030123  0x000082f7 call  0x00007c7d 
+ 00030124  0x000082f8 arg  0x00000020 , 0x00000039 
+ 00030125  0x000082f9 arg  0x00000866 , 0x00000011 
+ 00030126  0x000082fa arg  0x00000806 , 0x00000012 
+ 00030127  0x000082fb branch  0x00007f88 
+ 00030128  0x000082fe arg  0x0000097e , 0x00000011 
+ 00030129  0x000082ff arg  0x00000806 , 0x00000005 
+ 00030130  0x00008300 call  0x00007c79 
+ 00030131  0x00008301 arg  0x0000095e , 0x00000011 
+ 00030132  0x00008302 arg  0x00000826 , 0x00000005 
+ 00030133  0x00008303 call  0x00007c79 
+ 00030134  0x00008304 arg  0x00000826 , 0x00000011 
+ 00030135  0x00008305 arg  0x0000095e , 0x00000012 
+ 00030136  0x00008306 arg  0x00000826 , 0x00000005 
+ 00030137  0x00008307 call  0x00007be1 
+ 00030138  0x00008308 arg  0x0000093e , 0x00000011 
+ 00030139  0x00008309 arg  0x0000095e , 0x00000012 
+ 00030140  0x0000830a arg  0x00000846 , 0x00000005 
+ 00030141  0x0000830b call  0x00007be1 
+ 00030142  0x0000830c arg  0x00000846 , 0x00000011 
+ 00030143  0x0000830d arg  0x00000826 , 0x00000012 
+ 00030144  0x0000830e arg  0x00000826 , 0x00000005 
+ 00030145  0x0000830f call  0x00007c7d 
+ 00030146  0x00008310 arg  0x00000806 , 0x00000011 
+ 00030147  0x00008311 arg  0x00000826 , 0x00000012 
+ 00030148  0x00008312 arg  0x00000806 , 0x00000005 
+ 00030149  0x00008313 branch  0x00007c96 
+ 00030150  0x00008316 call  0x000075e1 
+ 00030151  0x00008317 arg  0x000009e6 , 0x00000011 
+ 00030152  0x00008318 arg  0x00000866 , 0x00000005 
+ 00030153  0x00008319 call  0x000077a8 
+ 00030154  0x0000831a arg  0x000009c6 , 0x00000011 
+ 00030155  0x0000831b arg  0x00000826 , 0x00000005 
+ 00030156  0x0000831c call  0x000077a8 
+ 00030157  0x0000831d arg  0x00000826 , 0x00000011 
+ 00030158  0x0000831e arg  0x000009c6 , 0x00000012 
+ 00030159  0x0000831f arg  0x00000826 , 0x00000005 
+ 00030160  0x00008320 call  0x00007786 
+ 00030161  0x00008321 arg  0x0000089e , 0x00000011 
+ 00030162  0x00008322 arg  0x000009c6 , 0x00000012 
+ 00030163  0x00008323 arg  0x00000846 , 0x00000005 
+ 00030164  0x00008324 call  0x00007786 
+ 00030165  0x00008325 arg  0x00000846 , 0x00000011 
+ 00030166  0x00008326 arg  0x00000826 , 0x00000012 
+ 00030167  0x00008327 arg  0x00000826 , 0x00000005 
+ 00030168  0x00008328 call  0x00007755 
+ 00030169  0x00008329 arg  0x00000806 , 0x00000011 
+ 00030170  0x0000832a arg  0x00000826 , 0x00000012 
+ 00030171  0x0000832b arg  0x00000806 , 0x00000005 
+ 00030172  0x0000832c call  0x00007755 
+ 00030173  0x0000832d arg  0x00000018 , 0x00000039 
+ 00030174  0x0000832e arg  0x00000866 , 0x00000011 
+ 00030175  0x0000832f arg  0x00000806 , 0x00000012 
+ 00030176  0x00008330 branch  0x00007f88 
+ 00030177  0x00008333 arg  0x000008e6 , 0x00000011 
+ 00030178  0x00008334 arg  0x00000806 , 0x00000005 
+ 00030179  0x00008335 call  0x000077a8 
+ 00030180  0x00008336 arg  0x000008ce , 0x00000011 
+ 00030181  0x00008337 arg  0x00000826 , 0x00000005 
+ 00030182  0x00008338 call  0x000077a8 
+ 00030183  0x00008339 arg  0x00000826 , 0x00000011 
+ 00030184  0x0000833a arg  0x000008ce , 0x00000012 
+ 00030185  0x0000833b arg  0x00000826 , 0x00000005 
+ 00030186  0x0000833c call  0x00007786 
+ 00030187  0x0000833d arg  0x0000089e , 0x00000011 
+ 00030188  0x0000833e arg  0x000008ce , 0x00000012 
+ 00030189  0x0000833f arg  0x00000846 , 0x00000005 
+ 00030190  0x00008340 call  0x00007786 
+ 00030191  0x00008341 arg  0x00000846 , 0x00000011 
+ 00030192  0x00008342 arg  0x00000826 , 0x00000012 
+ 00030193  0x00008343 arg  0x00000826 , 0x00000005 
+ 00030194  0x00008344 call  0x00007755 
+ 00030195  0x00008345 arg  0x00000806 , 0x00000011 
+ 00030196  0x00008346 arg  0x00000826 , 0x00000012 
+ 00030197  0x00008347 arg  0x00000806 , 0x00000005 
+ 00030198  0x00008348 branch  0x00007758 
+ 00030199  0x0000834c fetch  0x00000001 , 0x000009b2 
+ 00030200  0x0000834d bne  0x00000000 , 0x00007615 
+ 00030201  0x0000834e call  0x00007612 
+ 00030202  0x0000834f arg  0x00000a7e , 0x00000005 
+ 00030203  0x00008350 setarg  0x00000a2e 
+ 00030204  0x00008351 istore  0x00000002 , 0x00000005 
+ 00030205  0x00008352 setarg  0x00004642 
+ 00030206  0x00008353 istore  0x00000002 , 0x00000005 
+ 00030207  0x00008354 setarg  0x000009de 
+ 00030208  0x00008355 istore  0x00000002 , 0x00000005 
+ 00030209  0x00008356 branch  0x00007609 
+ 00030210  0x00008358 arg  0x00000a7e , 0x00000005 
+ 00030211  0x00008359 setarg  0x00000a3e 
+ 00030212  0x0000835a istore  0x00000002 , 0x00000005 
+ 00030213  0x0000835b setarg  0x000009de 
+ 00030214  0x0000835c istore  0x00000002 , 0x00000005 
+ 00030215  0x0000835d setarg  0x00004642 
+ 00030216  0x0000835e istore  0x00000002 , 0x00000005 
+ 00030217  0x00008360 call  0x000079a0 
+ 00030218  0x00008361 fetch  0x00000001 , 0x000009af 
+ 00030219  0x00008362 beq  0x00000004 , 0x0000760f 
+ 00030220  0x00008363 jam  0x00000001 , 0x000009b0 
+ 00030221  0x00008364 jam  0x00000005 , 0x000009ae 
+ 00030222  0x00008365 rtn 
+ 00030223  0x00008367 jam  0x00000014 , 0x000009af 
+ 00030224  0x00008368 call  0x0000758a 
+ 00030225  0x00008369 branch  0x000076d8 
+ 00030226  0x0000836c arg  0x00000a1e , 0x00000005 
+ 00030227  0x0000836d force  0x00000008 , 0x00000007 
+ 00030228  0x0000836e branch  0x000076a2 
+ 00030229  0x00008371 jam  0x00000001 , 0x000009b0 
+ 00030230  0x00008372 rtn 
+ 00030231  0x00008376 bpatchx  0x000000e6 , 0x0000403c 
+ 00030232  0x00008377 arg  0x00000727 , 0x00000005 
+ 00030233  0x00008378 fetch  0x00000006 , 0x000040a0 
+ 00030234  0x00008379 istore  0x00000006 , 0x00000005 
+ 00030235  0x0000837a fetch  0x00000006 , 0x00000040 
+ 00030236  0x0000837b istore  0x00000006 , 0x00000005 
+ 00030237  0x0000837c fetch  0x00000003 , 0x0000465e 
+ 00030238  0x0000837d istore  0x00000003 , 0x00000005 
+ 00030239  0x0000837f call  0x00007a0d 
+ 00030240  0x00008381 arg  0x00000a4e , 0x00000011 
+ 00030241  0x00008382 arg  0x00000a5e , 0x00000012 
+ 00030242  0x00008383 force  0x00000004 , 0x00000007 
+ 00030243  0x00008384 call  0x000076a7 
+ 00030244  0x00008385 nbranch  0x00007631 , 0x00000001 
+ 00030245  0x00008387 call  0x00007628 
+ 00030246  0x00008388 jam  0x00000041 , 0x0000007d 
+ 00030247  0x00008389 branch  0x000062f8 
+ 00030248  0x0000838c fetch  0x00000001 , 0x000009af 
+ 00030249  0x0000838d beq  0x00000009 , 0x0000762e 
+ 00030250  0x0000838e jam  0x0000000a , 0x000009ae 
+ 00030251  0x0000838f jam  0x00000001 , 0x000009b0 
+ 00030252  0x00008390 jam  0x00000003 , 0x0000007c 
+ 00030253  0x00008391 rtn 
+ 00030254  0x00008393 jam  0x00000003 , 0x0000007c 
+ 00030255  0x00008394 jam  0x00000015 , 0x000009af 
+ 00030256  0x00008395 branch  0x000076d8 
+ 00030257  0x00008399 fetch  0x00000001 , 0x000009af 
+ 00030258  0x0000839a beq  0x00000009 , 0x00007637 
+ 00030259  0x0000839b jam  0x00000000 , 0x000009ae 
+ 00030260  0x0000839c jam  0x00000004 , 0x0000007c 
+ 00030261  0x0000839e jam  0x00000005 , 0x0000007e 
+ 00030262  0x0000839f rtn 
+ 00030263  0x000083a1 jam  0x00000004 , 0x0000007c 
+ 00030264  0x000083a2 jam  0x00000000 , 0x000009af 
+ 00030265  0x000083a3 rtn 
+ 00030266  0x000083a6 fetch  0x00000001 , 0x000009b3 
+ 00030267  0x000083a7 beq  0x00000001 , 0x0000763e 
+ 00030268  0x000083a8 jam  0x0000000a , 0x000009af 
+ 00030269  0x000083a9 branch  0x000076d8 
+ 00030270  0x000083ab arg  0x00000727 , 0x00000005 
+ 00030271  0x000083ac fetch  0x00000006 , 0x00000040 
+ 00030272  0x000083ad istore  0x00000006 , 0x00000005 
+ 00030273  0x000083ae fetch  0x00000006 , 0x000040a0 
+ 00030274  0x000083af istore  0x00000006 , 0x00000005 
+ 00030275  0x000083b0 fetch  0x00000003 , 0x0000465b 
+ 00030276  0x000083b1 istore  0x00000003 , 0x00000005 
+ 00030277  0x000083b3 call  0x00007a24 
+ 00030278  0x000083b4 fetch  0x00000001 , 0x000009af 
+ 00030279  0x000083b5 beq  0x0000000a , 0x0000764b 
+ 00030280  0x000083b6 jam  0x0000000b , 0x000009ae 
+ 00030281  0x000083b7 jam  0x00000001 , 0x000009b0 
+ 00030282  0x000083b8 rtn 
+ 00030283  0x000083ba jam  0x0000000b , 0x000009af 
+ 00030284  0x000083bb jam  0x00000001 , 0x000009b1 
+ 00030285  0x000083bc rtn 
+ 00030286  0x000083bf arg  0x00000a7e , 0x00000005 
+ 00030287  0x000083c0 fetch  0x00000006 , 0x00000040 
+ 00030288  0x000083c1 istore  0x00000006 , 0x00000005 
+ 00030289  0x000083c2 fetch  0x00000006 , 0x000040a0 
+ 00030290  0x000083c3 istore  0x00000006 , 0x00000005 
+ 00030291  0x000083c4 setarg  0x00000a2e 
+ 00030292  0x000083c5 istore  0x00000002 , 0x00000005 
+ 00030293  0x000083c6 setarg  0x00000a3e 
+ 00030294  0x000083c7 istore  0x00000002 , 0x00000005 
+ 00030295  0x000083c8 branch  0x00007662 
+ 00030296  0x000083ca jam  0x0000000f , 0x000009ae 
+ 00030297  0x000083cb arg  0x00000a7e , 0x00000005 
+ 00030298  0x000083cc fetch  0x00000006 , 0x000040a0 
+ 00030299  0x000083cd istore  0x00000006 , 0x00000005 
+ 00030300  0x000083ce fetch  0x00000006 , 0x00000040 
+ 00030301  0x000083cf istore  0x00000006 , 0x00000005 
+ 00030302  0x000083d0 setarg  0x00000a3e 
+ 00030303  0x000083d1 istore  0x00000002 , 0x00000005 
+ 00030304  0x000083d2 setarg  0x00000a2e 
+ 00030305  0x000083d3 istore  0x00000002 , 0x00000005 
+ 00030306  0x000083d6 arg  0x00000727 , 0x00000005 
+ 00030307  0x000083d7 fetch  0x00000006 , 0x00000a7e 
+ 00030308  0x000083d8 istore  0x00000006 , 0x00000005 
+ 00030309  0x000083d9 fetch  0x00000006 , 0x00000a84 
+ 00030310  0x000083da istore  0x00000006 , 0x00000005 
+ 00030311  0x000083dc call  0x000079d7 
+ 00030312  0x000083df jam  0x00000001 , 0x000041bd 
+ 00030313  0x000083e0 arg  0x000041be , 0x00000005 
+ 00030314  0x000083e1 arg  0x00000a4e , 0x00000006 
+ 00030315  0x000083e2 call  0x00007ebf 
+ 00030316  0x000083e3 branch  0x000021c4 
+ 00030317  0x000083e7 bpatchx  0x000000e7 , 0x0000403c 
+ 00030318  0x000083e8 fetch  0x00000001 , 0x000045b1 
+ 00030319  0x000083e9 rtnne  0x00000000 
+ 00030320  0x000083ea fetch  0x00000001 , 0x000009b2 
+ 00030321  0x000083eb rtnne  0x00000000 
+ 00030322  0x000083ec arg  0x00004612 , 0x00000005 
+ 00030323  0x000083ed force  0x0000000b , 0x00000007 
+ 00030324  0x000083ee call  0x000076a2 
+ 00030325  0x000083ef random  0x0000003f 
+ 00030326  0x000083f0 rshift  0x0000003f , 0x0000003f 
+ 00030327  0x000083f1 istore  0x00000002 , 0x00000005 
+ 00030328  0x000083f3 arg  0x000006be , 0x00000005 
+ 00030329  0x000083f4 arg  0x00004612 , 0x00000006 
+ 00030330  0x000083f5 call  0x00007ebe 
+ 00030331  0x000083f7 arg  0x000005e6 , 0x00000005 
+ 00030332  0x000083f8 arg  0x000008ce , 0x00000006 
+ 00030333  0x000083f9 call  0x00007ebc 
+ 00030334  0x000083fb arg  0x00000616 , 0x00000005 
+ 00030335  0x000083fc call  0x00007ec5 
+ 00030336  0x000083fd jam  0x00000001 , 0x00000616 
+ 00030337  0x000083ff call  0x00007a5d 
+ 00030338  0x00008400 jam  0x00000001 , 0x000009b2 
+ 00030339  0x00008401 rtn 
+ 00030340  0x00008404 arg  0x0000462a , 0x00000005 
+ 00030341  0x00008405 arg  0x0000062e , 0x00000006 
+ 00030342  0x00008406 call  0x00007ebc 
+ 00030343  0x00008407 jam  0x00000001 , 0x000045b1 
+ 00030344  0x00008408 jam  0x00000000 , 0x000009b2 
+ 00030345  0x00008409 rtn 
+ 00030346  0x0000840c bpatchx  0x000000e8 , 0x0000403d 
+ 00030347  0x0000840d fetch  0x00000001 , 0x000009b9 
+ 00030348  0x0000840e rtnne  0x00000000 
+ 00030349  0x0000840f fetch  0x00000001 , 0x000009b2 
+ 00030350  0x00008410 rtnne  0x00000000 
+ 00030351  0x00008412 arg  0x000006be , 0x00000005 
+ 00030352  0x00008413 arg  0x00004612 , 0x00000006 
+ 00030353  0x00008414 call  0x00007ebe 
+ 00030354  0x00008416 arg  0x000005e6 , 0x00000005 
+ 00030355  0x00008417 arg  0x000009c6 , 0x00000006 
+ 00030356  0x00008418 call  0x00007ebc 
+ 00030357  0x0000841a arg  0x00000616 , 0x00000005 
+ 00030358  0x0000841b call  0x00007ec5 
+ 00030359  0x0000841c jam  0x00000001 , 0x00000616 
+ 00030360  0x0000841e call  0x00007a5d 
+ 00030361  0x0000841f jam  0x00000002 , 0x000009b2 
+ 00030362  0x00008420 rtn 
+ 00030363  0x00008423 jam  0x00000001 , 0x000009b3 
+ 00030364  0x00008424 arg  0x00000a06 , 0x00000005 
+ 00030365  0x00008425 arg  0x0000062e , 0x00000006 
+ 00030366  0x00008426 call  0x00007ebe 
+ 00030367  0x00008427 jam  0x00000001 , 0x000009b9 
+ 00030368  0x00008428 jam  0x00000000 , 0x000009b2 
+ 00030369  0x00008429 rtn 
+ 00030370  0x0000842c increase  0xffffffff , 0x00000007 
+ 00030371  0x0000842d nrtn  0x00000002 
+ 00030372  0x0000842e random  0x0000003f 
+ 00030373  0x0000842f istore  0x00000002 , 0x00000005 
+ 00030374  0x00008430 branch  0x000076a2 
+ 00030375  0x00008432 increase  0xffffffff , 0x00000007 
+ 00030376  0x00008433 nbranch  0x000076b3 , 0x00000002 
+ 00030377  0x00008434 ifetch  0x00000004 , 0x00000011 
+ 00030378  0x00008435 copy  0x0000003f , 0x00000002 
+ 00030379  0x00008436 ifetch  0x00000004 , 0x00000012 
+ 00030380  0x00008437 iflip  0x00000002 , 0x0000003f 
+ 00030381  0x00008438 nbranch  0x000076b1 , 0x00000005 
+ 00030382  0x00008439 increase  0x00000004 , 0x00000011 
+ 00030383  0x0000843a increase  0x00000004 , 0x00000012 
+ 00030384  0x0000843b branch  0x000076a7 
+ 00030385  0x0000843d disable  0x00000001 
+ 00030386  0x0000843e rtn 
+ 00030387  0x00008440 enable  0x00000001 
+ 00030388  0x00008441 rtn 
+ 00030389  0x00008449 bpatchx  0x000000e9 , 0x0000403d 
+ 00030390  0x0000844a fetch  0x00000001 , 0x000009b0 
+ 00030391  0x0000844b rtn  0x00000034 
+ 00030392  0x0000844c call  0x000062bc 
+ 00030393  0x0000844d nrtn  0x00000034 
+ 00030394  0x0000844e jam  0x00000000 , 0x000009b0 
+ 00030395  0x0000844f fetch  0x00000001 , 0x000009ae 
+ 00030396  0x00008450 beq  0x00000003 , 0x000061fd 
+ 00030397  0x00008451 beq  0x00000005 , 0x0000621a 
+ 00030398  0x00008452 beq  0x00000007 , 0x00006225 
+ 00030399  0x00008453 beq  0x0000000b , 0x0000623a 
+ 00030400  0x00008454 beq  0x00000002 , 0x00007588 
+ 00030401  0x00008455 beq  0x00000004 , 0x000075f7 
+ 00030402  0x00008456 beq  0x00000009 , 0x00007617 
+ 00030403  0x00008457 beq  0x0000000a , 0x0000763a 
+ 00030404  0x00008458 beq  0x0000000c , 0x00007658 
+ 00030405  0x0000845a rtn 
+ 00030406  0x0000845d bpatchx  0x000000ea , 0x0000403d 
+ 00030407  0x0000845e fetch  0x00000001 , 0x000009b1 
+ 00030408  0x0000845f rtn  0x00000034 
+ 00030409  0x00008460 call  0x000062bc 
+ 00030410  0x00008461 nrtn  0x00000034 
+ 00030411  0x00008462 jam  0x00000000 , 0x000009b1 
+ 00030412  0x00008463 fetch  0x00000001 , 0x000009af 
+ 00030413  0x00008464 beq  0x00000012 , 0x000061e0 
+ 00030414  0x00008465 beq  0x00000013 , 0x000061e5 
+ 00030415  0x00008466 beq  0x00000003 , 0x000061e9 
+ 00030416  0x00008467 beq  0x00000004 , 0x00007602 
+ 00030417  0x00008468 beq  0x00000014 , 0x000061ed 
+ 00030418  0x00008469 beq  0x00000007 , 0x000061fb 
+ 00030419  0x0000846a beq  0x0000000a , 0x0000763a 
+ 00030420  0x0000846b beq  0x0000000b , 0x00006239 
+ 00030421  0x0000846c beq  0x00000009 , 0x00007617 
+ 00030422  0x0000846d beq  0x00000015 , 0x00006233 
+ 00030423  0x0000846e rtn 
+ 00030424  0x00008471 jam  0x00000001 , 0x000009b1 
+ 00030425  0x00008472 rtn 
+ 00030426  0x00008475 jam  0x00000000 , 0x000009b1 
+ 00030427  0x00008476 rtn 
+ 00030428  0x00008478 bpatchx  0x000000eb , 0x0000403d 
+ 00030429  0x00008479 fetch  0x00000001 , 0x0000465a 
+ 00030430  0x0000847a rtn  0x00000034 
+ 00030431  0x0000847b fetch  0x00000001 , 0x000009b2 
+ 00030432  0x0000847c rtn  0x00000034 
+ 00030433  0x0000847d increase  0x00000080 , 0x0000003f 
+ 00030434  0x0000847e store  0x00000001 , 0x000009b2 
+ 00030435  0x0000847f rtnbit1  0x00000007 
+ 00030436  0x00008480 fetch  0x00000001 , 0x000005e3 
+ 00030437  0x00008481 branch  0x000076e7 , 0x00000034 
+ 00030438  0x00008482 branch  0x00007a68 
+ 00030439  0x00008485 call  0x000078d3 
+ 00030440  0x00008486 fetch  0x00000001 , 0x000009b2 
+ 00030441  0x00008487 beq  0x00000001 , 0x00007684 
+ 00030442  0x00008488 beq  0x00000002 , 0x0000769b 
+ 00030443  0x00008489 rtn 
+ 00030444  0x0000848d and  0x0000003f , 0x00000007 , 0x00000007 
+ 00030445  0x0000848e rshift3  0x0000003f , 0x0000003f 
+ 00030446  0x0000848f iadd  0x00000006 , 0x00000006 
+ 00030447  0x00008490 ifetch  0x00000001 , 0x00000006 
+ 00030448  0x00008491 qisolate0  0x0000003f 
+ 00030449  0x00008492 rtn 
+ 00030450  0x00008496 call  0x00007ebe 
+ 00030451  0x00008497 call  0x00007ebe 
+ 00030452  0x00008498 branch  0x00007ebe 
+ 00030453  0x0000849c ifetch  0x00000008 , 0x00000006 
+ 00030454  0x0000849d nrtn  0x00000034 
+ 00030455  0x0000849e ifetch  0x00000008 , 0x00000006 
+ 00030456  0x0000849f nrtn  0x00000034 
+ 00030457  0x000084a0 ifetch  0x00000008 , 0x00000006 
+ 00030458  0x000084a1 rtn 
+ 00030459  0x000084a7 ifetch  0x00000004 , 0x00000011 
+ 00030460  0x000084a8 iforce  0x00000002 
+ 00030461  0x000084a9 ifetch  0x00000004 , 0x00000012 
+ 00030462  0x000084aa isub  0x00000002 , 0x0000003e 
+ 00030463  0x000084ab nrtn  0x00000005 
+ 00030464  0x000084ac increase  0x00000004 , 0x00000011 
+ 00030465  0x000084ad increase  0x00000004 , 0x00000012 
+ 00030466  0x000084ae loop  0x000076fb 
+ 00030467  0x000084af rtn 
+ 00030468  0x000084b3 force  0x00000006 , 0x00000039 
+ 00030469  0x000084b4 increase  0x00000014 , 0x00000011 
+ 00030470  0x000084b5 increase  0x00000014 , 0x00000012 
+ 00030471  0x000084b7 ifetch  0x00000004 , 0x00000012 
+ 00030472  0x000084b8 iforce  0x00000002 
+ 00030473  0x000084b9 ifetch  0x00000004 , 0x00000011 
+ 00030474  0x000084ba isub  0x00000002 , 0x0000003f 
+ 00030475  0x000084bb nrtn  0x00000002 
+ 00030476  0x000084bc nrtn  0x00000034 
+ 00030477  0x000084bd increase  0xfffffffc , 0x00000011 
+ 00030478  0x000084be increase  0xfffffffc , 0x00000012 
+ 00030479  0x000084bf loop  0x00007707 
+ 00030480  0x000084c0 rtn 
+ 00030481  0x000084c3 force  0x00000006 , 0x00000039 
+ 00030482  0x000084c4 force  0x00000000 , 0x00000013 
+ 00030483  0x000084c6 ifetch  0x00000004 , 0x00000011 
+ 00030484  0x000084c7 iforce  0x00000002 
+ 00030485  0x000084c8 ifetch  0x00000004 , 0x00000012 
+ 00030486  0x000084c9 iadd  0x00000002 , 0x0000003f 
+ 00030487  0x000084ca iadd  0x00000013 , 0x0000003f 
+ 00030488  0x000084cb istore  0x00000004 , 0x00000005 
+ 00030489  0x000084cc isolate1  0x00000020 , 0x0000003f 
+ 00030490  0x000084cd setflag  0x00000001 , 0x00000000 , 0x00000013 
+ 00030491  0x000084ce increase  0x00000004 , 0x00000011 
+ 00030492  0x000084cf increase  0x00000004 , 0x00000012 
+ 00030493  0x000084d0 loop  0x00007713 
+ 00030494  0x000084d1 rtn 
+ 00030495  0x000084d4 force  0x00000006 , 0x00000039 
+ 00030496  0x000084d5 force  0x00000000 , 0x00000013 
+ 00030497  0x000084d7 ifetch  0x00000004 , 0x00000012 
+ 00030498  0x000084d8 iforce  0x00000002 
+ 00030499  0x000084d9 ifetch  0x00000004 , 0x00000011 
+ 00030500  0x000084da isub  0x00000002 , 0x0000003f 
+ 00030501  0x000084db isub  0x00000013 , 0x0000003f 
+ 00030502  0x000084dc istore  0x00000004 , 0x00000005 
+ 00030503  0x000084dd isolate1  0x00000020 , 0x0000003f 
+ 00030504  0x000084de setflag  0x00000001 , 0x00000000 , 0x00000013 
+ 00030505  0x000084df increase  0x00000004 , 0x00000011 
+ 00030506  0x000084e0 increase  0x00000004 , 0x00000012 
+ 00030507  0x000084e1 loop  0x00007721 
+ 00030508  0x000084e2 rtn 
+ 00030509  0x000084e5 force  0x00000006 , 0x00000039 
+ 00030510  0x000084e6 increase  0x00000014 , 0x00000011 
+ 00030511  0x000084e8 force  0x00000000 , 0x00000013 
+ 00030512  0x000084ea ifetch  0x00000004 , 0x00000011 
+ 00030513  0x000084eb isolate1  0x00000000 , 0x0000003f 
+ 00030514  0x000084ec setflag  0x00000001 , 0x00000001 , 0x00000013 
+ 00030515  0x000084ed rshift  0x0000003f , 0x0000003f 
+ 00030516  0x000084ee isolate1  0x00000000 , 0x00000013 
+ 00030517  0x000084ef setflag  0x00000001 , 0x0000001f , 0x0000003f 
+ 00030518  0x000084f0 istore  0x00000004 , 0x00000011 
+ 00030519  0x000084f1 increase  0xfffffffc , 0x00000011 
+ 00030520  0x000084f2 rshift  0x00000013 , 0x00000013 
+ 00030521  0x000084f3 loop  0x00007730 
+ 00030522  0x000084f4 rtn 
+ 00030523  0x000084f7 force  0x00000006 , 0x00000039 
+ 00030524  0x000084f8 force  0x00000000 , 0x00000013 
+ 00030525  0x000084fa ifetch  0x00000004 , 0x00000011 
+ 00030526  0x000084fb isolate1  0x0000001f , 0x0000003f 
+ 00030527  0x000084fc setflag  0x00000001 , 0x00000001 , 0x00000013 
+ 00030528  0x000084fd lshift  0x0000003f , 0x0000003f 
+ 00030529  0x000084fe isolate1  0x00000000 , 0x00000013 
+ 00030530  0x000084ff setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00030531  0x00008500 istore  0x00000004 , 0x00000011 
+ 00030532  0x00008501 increase  0x00000004 , 0x00000011 
+ 00030533  0x00008502 rshift  0x00000013 , 0x00000013 
+ 00030534  0x00008503 loop  0x0000773d 
+ 00030535  0x00008504 rtn 
+ 00030536  0x00008507 call  0x0000773b 
+ 00030537  0x00008509 isolate1  0x00000000 , 0x00000013 
+ 00030538  0x0000850a branch  0x00007751 , 0x00000001 
+ 00030539  0x0000850b arg  0x00000886 , 0x00000012 
+ 00030540  0x0000850c copy  0x00000011 , 0x00000013 
+ 00030541  0x0000850d increase  0xffffffe8 , 0x00000011 
+ 00030542  0x0000850e call  0x00007704 
+ 00030543  0x0000850f nrtn  0x00000002 
+ 00030544  0x00008510 copy  0x00000013 , 0x00000011 
+ 00030545  0x00008512 increase  0xffffffe8 , 0x00000011 
+ 00030546  0x00008513 arg  0x00000886 , 0x00000012 
+ 00030547  0x00008514 copy  0x00000011 , 0x00000005 
+ 00030548  0x00008515 branch  0x0000771f 
+ 00030549  0x00008519 call  0x00007711 
+ 00030550  0x0000851a copy  0x00000005 , 0x00000011 
+ 00030551  0x0000851b branch  0x00007749 
+ 00030552  0x0000851e call  0x0000771f 
+ 00030553  0x0000851f isolate0  0x00000000 , 0x00000013 
+ 00030554  0x00008520 rtn  0x00000001 
+ 00030555  0x00008521 arg  0x00000886 , 0x00000012 
+ 00030556  0x00008522 add  0x00000005 , 0xffffffe8 , 0x00000011 
+ 00030557  0x00008523 copy  0x00000011 , 0x00000005 
+ 00030558  0x00008524 branch  0x00007711 
+ 00030559  0x00008528 copy  0x00000005 , 0x0000000b 
+ 00030560  0x00008529 copy  0x00000011 , 0x00000030 
+ 00030561  0x0000852a arg  0x00000716 , 0x00000012 
+ 00030562  0x0000852b copy  0x00000012 , 0x00000005 
+ 00030563  0x0000852c add  0x00000011 , 0x00000018 , 0x00000006 
+ 00030564  0x0000852d ifetch  0x00000008 , 0x00000006 
+ 00030565  0x0000852e istore  0x00000008 , 0x00000005 
+ 00030566  0x0000852f istore  0x00000008 , 0x00000005 
+ 00030567  0x00008530 force  0x00000000 , 0x0000003f 
+ 00030568  0x00008531 istore  0x00000008 , 0x00000005 
+ 00030569  0x00008532 copy  0x0000000b , 0x00000005 
+ 00030570  0x00008533 call  0x00007755 
+ 00030571  0x00008534 arg  0x00000716 , 0x00000012 
+ 00030572  0x00008535 copy  0x00000012 , 0x00000005 
+ 00030573  0x00008536 force  0x00000000 , 0x0000003f 
+ 00030574  0x00008537 istore  0x00000008 , 0x00000005 
+ 00030575  0x00008538 add  0x00000030 , 0x00000020 , 0x00000006 
+ 00030576  0x00008539 ifetch  0x00000008 , 0x00000006 
+ 00030577  0x0000853a istore  0x00000008 , 0x00000005 
+ 00030578  0x0000853b istore  0x00000008 , 0x00000005 
+ 00030579  0x0000853c copy  0x0000000b , 0x00000011 
+ 00030580  0x0000853d copy  0x00000011 , 0x00000005 
+ 00030581  0x0000853e call  0x00007755 
+ 00030582  0x0000853f arg  0x00000716 , 0x00000012 
+ 00030583  0x00008540 copy  0x00000012 , 0x00000005 
+ 00030584  0x00008541 add  0x00000030 , 0x00000028 , 0x00000006 
+ 00030585  0x00008542 ifetch  0x00000008 , 0x00000006 
+ 00030586  0x00008543 istore  0x00000008 , 0x00000005 
+ 00030587  0x00008544 istore  0x00000008 , 0x00000005 
+ 00030588  0x00008545 istore  0x00000008 , 0x00000005 
+ 00030589  0x00008546 copy  0x0000000b , 0x00000011 
+ 00030590  0x00008547 copy  0x00000011 , 0x00000005 
+ 00030591  0x00008548 branch  0x00007755 
+ 00030592  0x0000854c force  0x00000006 , 0x00000039 
+ 00030593  0x0000854e ifetch  0x00000004 , 0x00000006 
+ 00030594  0x0000854f iforce  0x0000002f 
+ 00030595  0x00008550 increase  0x00000001 , 0x00000038 
+ 00030596  0x00008551 loop  0x00007781 
+ 00030597  0x00008552 rtn 
+ 00030598  0x00008557 copy  0x00000005 , 0x0000000b 
+ 00030599  0x00008558 arg  0x000006e6 , 0x00000005 
+ 00030600  0x00008559 call  0x00007ec5 
+ 00030601  0x0000855a arg  0x000006e6 , 0x00000005 
+ 00030602  0x0000855b copy  0x00000011 , 0x00000006 
+ 00030603  0x0000855c force  0x00000000 , 0x00000038 
+ 00030604  0x0000855d call  0x00007780 
+ 00030605  0x0000855e copy  0x00000012 , 0x00000006 
+ 00030606  0x0000855f call  0x00007780 
+ 00030607  0x00008560 force  0x00000000 , 0x00000012 
+ 00030608  0x00008562 force  0x00000000 , 0x00000002 
+ 00030609  0x00008563 force  0x00000006 , 0x00000013 
+ 00030610  0x00008565 ifetch  0x00000004 , 0x00000005 
+ 00030611  0x00008566 iforce  0x00000011 
+ 00030612  0x00008567 copy  0x00000012 , 0x00000038 
+ 00030613  0x00008568 deposit  0x0000002f 
+ 00030614  0x00008569 copy  0x00000013 , 0x00000038 
+ 00030615  0x0000856a imul32  0x0000002f , 0x0000003f 
+ 00030616  0x0000856b iadd  0x00000011 , 0x0000003f 
+ 00030617  0x0000856c iadd  0x00000002 , 0x0000003f 
+ 00030618  0x0000856d istore  0x00000004 , 0x00000005 
+ 00030619  0x0000856e rshift32  0x0000003f , 0x00000002 
+ 00030620  0x0000856f increase  0x00000001 , 0x00000013 
+ 00030621  0x00008570 compare  0x0000000c , 0x00000013 , 0x000000ff 
+ 00030622  0x00008571 nbranch  0x00007792 , 0x00000001 
+ 00030623  0x00008572 deposit  0x00000002 
+ 00030624  0x00008573 istore  0x00000004 , 0x00000005 
+ 00030625  0x00008574 increase  0xffffffe8 , 0x00000005 
+ 00030626  0x00008575 increase  0x00000001 , 0x00000012 
+ 00030627  0x00008576 compare  0x00000006 , 0x00000012 , 0x000000ff 
+ 00030628  0x00008577 nbranch  0x00007790 , 0x00000001 
+ 00030629  0x00008578 arg  0x000006e6 , 0x00000011 
+ 00030630  0x00008579 copy  0x0000000b , 0x00000005 
+ 00030631  0x0000857a branch  0x0000775f 
+ 00030632  0x0000857e copy  0x00000011 , 0x00000012 
+ 00030633  0x0000857f branch  0x00007786 
+ 00030634  0x00008582 copy  0x00000011 , 0x00000030 
+ 00030635  0x00008584 copy  0x00000030 , 0x00000011 
+ 00030636  0x00008585 ifetch  0x00000001 , 0x00000011 
+ 00030637  0x00008586 isolate1  0x00000000 , 0x0000003f 
+ 00030638  0x00008587 rtn  0x00000001 
+ 00030639  0x00008588 call  0x0000772d 
+ 00030640  0x00008589 ifetch  0x00000001 , 0x00000012 
+ 00030641  0x0000858a isolate0  0x00000000 , 0x0000003f 
+ 00030642  0x0000858b branch  0x000077ba , 0x00000001 
+ 00030643  0x0000858c arg  0x00000886 , 0x00000011 
+ 00030644  0x0000858d copy  0x00000012 , 0x00000005 
+ 00030645  0x0000858e call  0x00007711 
+ 00030646  0x0000858f ifetch  0x00000001 , 0x00000012 
+ 00030647  0x00008590 iadd  0x00000013 , 0x0000003f 
+ 00030648  0x00008591 istore  0x00000001 , 0x00000012 
+ 00030649  0x00008592 increase  0xffffffe8 , 0x00000012 
+ 00030650  0x00008594 add  0x00000012 , 0x00000018 , 0x00000011 
+ 00030651  0x00008595 force  0x00000007 , 0x00000039 
+ 00030652  0x00008596 call  0x0000772f 
+ 00030653  0x00008597 branch  0x000077ab 
+ 00030654  0x0000859b copy  0x00000005 , 0x0000000b 
+ 00030655  0x0000859c arg  0x00000746 , 0x00000005 
+ 00030656  0x0000859d call  0x00007ec5 
+ 00030657  0x0000859e force  0x00000000 , 0x0000003f 
+ 00030658  0x0000859f store  0x00000004 , 0x000006fe 
+ 00030659  0x000085a0 store  0x00000004 , 0x0000075e 
+ 00030660  0x000085a1 jam  0x00000001 , 0x00000746 
+ 00030661  0x000085a2 arg  0x000006e6 , 0x00000005 
+ 00030662  0x000085a3 call  0x00007ec5 
+ 00030663  0x000085a4 arg  0x00000886 , 0x00000006 
+ 00030664  0x000085a5 arg  0x00000716 , 0x00000005 
+ 00030665  0x000085a6 call  0x00007ebe 
+ 00030666  0x000085a7 copy  0x00000011 , 0x00000006 
+ 00030667  0x000085a8 arg  0x0000072e , 0x00000005 
+ 00030668  0x000085a9 call  0x00007ebe 
+ 00030669  0x000085ab arg  0x0000072e , 0x00000006 
+ 00030670  0x000085ac call  0x000076f5 
+ 00030671  0x000085ad branch  0x000077f6 , 0x00000034 
+ 00030672  0x000085ae arg  0x0000072e , 0x00000011 
+ 00030673  0x000085af arg  0x00000746 , 0x00000012 
+ 00030674  0x000085b0 call  0x000077aa 
+ 00030675  0x000085b2 arg  0x00000716 , 0x00000011 
+ 00030676  0x000085b3 arg  0x000006e6 , 0x00000012 
+ 00030677  0x000085b4 call  0x000077aa 
+ 00030678  0x000085b5 arg  0x0000072e , 0x00000011 
+ 00030679  0x000085b6 arg  0x00000716 , 0x00000012 
+ 00030680  0x000085b7 call  0x00007704 
+ 00030681  0x000085b8 branch  0x000077e8 , 0x00000002 
+ 00030682  0x000085b9 arg  0x00000716 , 0x00000011 
+ 00030683  0x000085ba arg  0x0000072e , 0x00000012 
+ 00030684  0x000085bb copy  0x00000011 , 0x00000005 
+ 00030685  0x000085bc call  0x0000771f 
+ 00030686  0x000085bd arg  0x00000746 , 0x00000011 
+ 00030687  0x000085be arg  0x000006e6 , 0x00000012 
+ 00030688  0x000085bf copy  0x00000012 , 0x00000005 
+ 00030689  0x000085c0 call  0x00007711 
+ 00030690  0x000085c1 ifetch  0x00000001 , 0x00000011 
+ 00030691  0x000085c2 iadd  0x00000013 , 0x00000013 
+ 00030692  0x000085c3 ifetch  0x00000001 , 0x00000012 
+ 00030693  0x000085c4 iadd  0x00000013 , 0x0000003f 
+ 00030694  0x000085c5 istore  0x00000001 , 0x00000012 
+ 00030695  0x000085c6 branch  0x000077cd 
+ 00030696  0x000085c8 arg  0x0000072e , 0x00000011 
+ 00030697  0x000085c9 arg  0x00000716 , 0x00000012 
+ 00030698  0x000085ca copy  0x00000011 , 0x00000005 
+ 00030699  0x000085cb call  0x0000771f 
+ 00030700  0x000085cc arg  0x000006e6 , 0x00000011 
+ 00030701  0x000085cd arg  0x00000746 , 0x00000012 
+ 00030702  0x000085ce copy  0x00000012 , 0x00000005 
+ 00030703  0x000085cf call  0x00007711 
+ 00030704  0x000085d0 ifetch  0x00000001 , 0x00000011 
+ 00030705  0x000085d1 iadd  0x00000013 , 0x00000013 
+ 00030706  0x000085d2 ifetch  0x00000001 , 0x00000012 
+ 00030707  0x000085d3 iadd  0x00000013 , 0x0000003f 
+ 00030708  0x000085d4 istore  0x00000001 , 0x00000012 
+ 00030709  0x000085d5 branch  0x000077cd 
+ 00030710  0x000085d7 arg  0x00000746 , 0x00000005 
+ 00030711  0x000085d8 call  0x00007ec5 
+ 00030712  0x000085d9 fetch  0x00000001 , 0x000006fe 
+ 00030713  0x000085da store  0x00000001 , 0x00000746 
+ 00030714  0x000085db store  0x00000001 , 0x0000074e 
+ 00030715  0x000085dc arg  0x00000746 , 0x00000011 
+ 00030716  0x000085dd arg  0x000006e6 , 0x00000012 
+ 00030717  0x000085de copy  0x00000012 , 0x00000005 
+ 00030718  0x000085df call  0x00007755 
+ 00030719  0x000085e0 arg  0x00000886 , 0x00000011 
+ 00030720  0x000085e1 arg  0x000006e6 , 0x00000012 
+ 00030721  0x000085e2 copy  0x0000000b , 0x00000005 
+ 00030722  0x000085e3 branch  0x00007758 
+ 00030723  0x000085e9 arg  0x000006a6 , 0x00000011 
+ 00030724  0x000085ea arg  0x0000075e , 0x00000005 
+ 00030725  0x000085eb call  0x000077a8 
+ 00030726  0x000085ec arg  0x0000075e , 0x00000011 
+ 00030727  0x000085ed arg  0x00000776 , 0x00000005 
+ 00030728  0x000085ee call  0x000077a8 
+ 00030729  0x000085ef arg  0x0000089e , 0x00000011 
+ 00030730  0x000085f0 arg  0x00000776 , 0x00000012 
+ 00030731  0x000085f1 arg  0x00000776 , 0x00000005 
+ 00030732  0x000085f2 call  0x00007786 
+ 00030733  0x000085f3 arg  0x00000676 , 0x00000011 
+ 00030734  0x000085f4 arg  0x0000075e , 0x00000005 
+ 00030735  0x000085f5 call  0x000077a8 
+ 00030736  0x000085f6 arg  0x0000075e , 0x00000006 
+ 00030737  0x000085f7 arg  0x0000072e , 0x00000005 
+ 00030738  0x000085f8 call  0x00007ebe 
+ 00030739  0x000085f9 arg  0x0000072e , 0x00000011 
+ 00030740  0x000085fa call  0x00007748 
+ 00030741  0x000085fb arg  0x0000075e , 0x00000011 
+ 00030742  0x000085fc arg  0x0000072e , 0x00000012 
+ 00030743  0x000085fd arg  0x0000075e , 0x00000005 
+ 00030744  0x000085fe call  0x00007755 
+ 00030745  0x000085ff arg  0x0000075e , 0x00000011 
+ 00030746  0x00008600 arg  0x00000776 , 0x00000012 
+ 00030747  0x00008601 arg  0x0000075e , 0x00000005 
+ 00030748  0x00008602 call  0x00007755 
+ 00030749  0x00008603 arg  0x00000676 , 0x00000006 
+ 00030750  0x00008604 arg  0x0000072e , 0x00000005 
+ 00030751  0x00008605 call  0x00007ebe 
+ 00030752  0x00008606 arg  0x0000068e , 0x00000011 
+ 00030753  0x00008607 arg  0x00000776 , 0x00000005 
+ 00030754  0x00008608 call  0x000077a8 
+ 00030755  0x00008609 arg  0x0000072e , 0x00000011 
+ 00030756  0x0000860a call  0x00007748 
+ 00030757  0x0000860b arg  0x0000072e , 0x00000011 
+ 00030758  0x0000860c call  0x00007748 
+ 00030759  0x0000860d arg  0x0000072e , 0x00000011 
+ 00030760  0x0000860e arg  0x00000776 , 0x00000012 
+ 00030761  0x0000860f arg  0x0000072e , 0x00000005 
+ 00030762  0x00008610 call  0x00007786 
+ 00030763  0x00008611 arg  0x00000776 , 0x00000011 
+ 00030764  0x00008612 arg  0x00000746 , 0x00000005 
+ 00030765  0x00008613 call  0x000077a8 
+ 00030766  0x00008614 arg  0x00000746 , 0x00000011 
+ 00030767  0x00008615 call  0x00007748 
+ 00030768  0x00008616 arg  0x00000746 , 0x00000011 
+ 00030769  0x00008617 call  0x00007748 
+ 00030770  0x00008618 arg  0x00000746 , 0x00000011 
+ 00030771  0x00008619 call  0x00007748 
+ 00030772  0x0000861a arg  0x0000068e , 0x00000006 
+ 00030773  0x0000861b arg  0x00000776 , 0x00000005 
+ 00030774  0x0000861c call  0x00007ebe 
+ 00030775  0x0000861d arg  0x00000776 , 0x00000011 
+ 00030776  0x0000861e call  0x00007748 
+ 00030777  0x0000861f arg  0x00000776 , 0x00000011 
+ 00030778  0x00008620 arg  0x000006a6 , 0x00000012 
+ 00030779  0x00008621 arg  0x000006a6 , 0x00000005 
+ 00030780  0x00008622 call  0x00007786 
+ 00030781  0x00008623 arg  0x0000075e , 0x00000011 
+ 00030782  0x00008624 arg  0x00000776 , 0x00000005 
+ 00030783  0x00008625 call  0x000077a8 
+ 00030784  0x00008626 arg  0x00000776 , 0x00000011 
+ 00030785  0x00008627 arg  0x0000072e , 0x00000012 
+ 00030786  0x00008628 arg  0x00000776 , 0x00000005 
+ 00030787  0x00008629 call  0x00007758 
+ 00030788  0x0000862a arg  0x00000776 , 0x00000011 
+ 00030789  0x0000862b arg  0x0000072e , 0x00000012 
+ 00030790  0x0000862c arg  0x00000676 , 0x00000005 
+ 00030791  0x0000862d call  0x00007758 
+ 00030792  0x0000862e arg  0x0000072e , 0x00000011 
+ 00030793  0x0000862f arg  0x00000676 , 0x00000012 
+ 00030794  0x00008630 arg  0x00000776 , 0x00000005 
+ 00030795  0x00008631 call  0x00007758 
+ 00030796  0x00008632 arg  0x00000776 , 0x00000011 
+ 00030797  0x00008633 arg  0x0000075e , 0x00000012 
+ 00030798  0x00008634 arg  0x00000776 , 0x00000005 
+ 00030799  0x00008635 call  0x00007786 
+ 00030800  0x00008636 arg  0x00000776 , 0x00000011 
+ 00030801  0x00008637 arg  0x00000746 , 0x00000012 
+ 00030802  0x00008638 arg  0x0000068e , 0x00000005 
+ 00030803  0x00008639 branch  0x00007758 
+ 00030804  0x0000863e arg  0x00000616 , 0x00000011 
+ 00030805  0x0000863f arg  0x0000078e , 0x00000005 
+ 00030806  0x00008640 call  0x000077a8 
+ 00030807  0x00008641 arg  0x00000676 , 0x00000011 
+ 00030808  0x00008642 arg  0x0000078e , 0x00000012 
+ 00030809  0x00008643 arg  0x00000746 , 0x00000005 
+ 00030810  0x00008644 call  0x00007786 
+ 00030811  0x00008645 arg  0x00000616 , 0x00000011 
+ 00030812  0x00008646 arg  0x0000078e , 0x00000012 
+ 00030813  0x00008647 arg  0x0000078e , 0x00000005 
+ 00030814  0x00008648 call  0x00007786 
+ 00030815  0x00008649 arg  0x0000068e , 0x00000011 
+ 00030816  0x0000864a arg  0x0000078e , 0x00000012 
+ 00030817  0x0000864b arg  0x0000072e , 0x00000005 
+ 00030818  0x0000864c call  0x00007786 
+ 00030819  0x0000864d arg  0x000006a6 , 0x00000011 
+ 00030820  0x0000864e arg  0x0000078e , 0x00000005 
+ 00030821  0x0000864f call  0x000077a8 
+ 00030822  0x00008650 arg  0x000005e6 , 0x00000011 
+ 00030823  0x00008651 arg  0x0000078e , 0x00000012 
+ 00030824  0x00008652 arg  0x0000075e , 0x00000005 
+ 00030825  0x00008653 call  0x00007786 
+ 00030826  0x00008654 arg  0x000006a6 , 0x00000011 
+ 00030827  0x00008655 arg  0x0000078e , 0x00000012 
+ 00030828  0x00008656 arg  0x0000078e , 0x00000005 
+ 00030829  0x00008657 call  0x00007786 
+ 00030830  0x00008658 arg  0x000005fe , 0x00000011 
+ 00030831  0x00008659 arg  0x0000078e , 0x00000012 
+ 00030832  0x0000865a arg  0x00000776 , 0x00000005 
+ 00030833  0x0000865b call  0x00007786 
+ 00030834  0x0000865c arg  0x00000746 , 0x00000011 
+ 00030835  0x0000865d arg  0x0000075e , 0x00000012 
+ 00030836  0x0000865e arg  0x0000078e , 0x00000005 
+ 00030837  0x0000865f call  0x00007758 
+ 00030838  0x00008660 arg  0x00000746 , 0x00000011 
+ 00030839  0x00008661 arg  0x0000075e , 0x00000012 
+ 00030840  0x00008662 arg  0x00000746 , 0x00000005 
+ 00030841  0x00008663 call  0x00007755 
+ 00030842  0x00008664 arg  0x0000072e , 0x00000011 
+ 00030843  0x00008665 arg  0x00000776 , 0x00000012 
+ 00030844  0x00008666 arg  0x0000075e , 0x00000005 
+ 00030845  0x00008667 call  0x00007758 
+ 00030846  0x00008668 arg  0x0000072e , 0x00000011 
+ 00030847  0x00008669 arg  0x00000776 , 0x00000012 
+ 00030848  0x0000866a arg  0x0000072e , 0x00000005 
+ 00030849  0x0000866b call  0x00007755 
+ 00030850  0x0000866c arg  0x0000072e , 0x00000011 
+ 00030851  0x0000866d arg  0x0000078e , 0x00000012 
+ 00030852  0x0000866e arg  0x0000072e , 0x00000005 
+ 00030853  0x0000866f call  0x00007786 
+ 00030854  0x00008670 arg  0x000006a6 , 0x00000011 
+ 00030855  0x00008671 arg  0x00000616 , 0x00000012 
+ 00030856  0x00008672 arg  0x00000776 , 0x00000005 
+ 00030857  0x00008673 call  0x00007786 
+ 00030858  0x00008674 arg  0x00000776 , 0x00000011 
+ 00030859  0x00008675 arg  0x0000078e , 0x00000012 
+ 00030860  0x00008676 arg  0x000006a6 , 0x00000005 
+ 00030861  0x00008677 call  0x00007786 
+ 00030862  0x00008678 arg  0x0000078e , 0x00000011 
+ 00030863  0x00008679 arg  0x0000078e , 0x00000005 
+ 00030864  0x0000867a call  0x000077a8 
+ 00030865  0x0000867b arg  0x0000078e , 0x00000011 
+ 00030866  0x0000867c arg  0x00000746 , 0x00000012 
+ 00030867  0x0000867d arg  0x00000776 , 0x00000005 
+ 00030868  0x0000867e call  0x00007786 
+ 00030869  0x0000867f arg  0x0000078e , 0x00000011 
+ 00030870  0x00008680 arg  0x0000072e , 0x00000012 
+ 00030871  0x00008681 arg  0x0000072e , 0x00000005 
+ 00030872  0x00008682 call  0x00007786 
+ 00030873  0x00008683 arg  0x0000075e , 0x00000011 
+ 00030874  0x00008684 arg  0x00000676 , 0x00000005 
+ 00030875  0x00008685 call  0x000077a8 
+ 00030876  0x00008686 arg  0x00000676 , 0x00000011 
+ 00030877  0x00008687 arg  0x00000776 , 0x00000012 
+ 00030878  0x00008688 arg  0x00000676 , 0x00000005 
+ 00030879  0x00008689 call  0x00007758 
+ 00030880  0x0000868a arg  0x00000676 , 0x00000006 
+ 00030881  0x0000868b arg  0x0000078e , 0x00000005 
+ 00030882  0x0000868c call  0x00007ebe 
+ 00030883  0x0000868d arg  0x0000078e , 0x00000011 
+ 00030884  0x0000868e call  0x00007748 
+ 00030885  0x0000868f arg  0x00000776 , 0x00000011 
+ 00030886  0x00008690 arg  0x0000078e , 0x00000012 
+ 00030887  0x00008691 arg  0x00000776 , 0x00000005 
+ 00030888  0x00008692 call  0x00007758 
+ 00030889  0x00008693 arg  0x00000776 , 0x00000011 
+ 00030890  0x00008694 arg  0x0000075e , 0x00000012 
+ 00030891  0x00008695 arg  0x0000075e , 0x00000005 
+ 00030892  0x00008696 call  0x00007786 
+ 00030893  0x00008697 arg  0x0000075e , 0x00000011 
+ 00030894  0x00008698 arg  0x0000072e , 0x00000012 
+ 00030895  0x00008699 arg  0x0000068e , 0x00000005 
+ 00030896  0x0000869a call  0x00007758 
+ 00030897  0x0000869b arg  0x0000068e , 0x00000011 
+ 00030898  0x0000869c arg  0x00000886 , 0x00000012 
+ 00030899  0x0000869d arg  0x0000068e , 0x00000005 
+ 00030900  0x0000869e force  0x00000000 , 0x00000013 
+ 00030901  0x0000869f fetch  0x00000001 , 0x0000068e 
+ 00030902  0x000086a0 isolate1  0x00000000 , 0x0000003f 
+ 00030903  0x000086a1 call  0x00007711 , 0x00000001 
+ 00030904  0x000086a2 copy  0x00000013 , 0x00000030 
+ 00030905  0x000086a3 arg  0x0000068e , 0x00000011 
+ 00030906  0x000086a4 call  0x0000772d 
+ 00030907  0x000086a5 fetch  0x00000001 , 0x000006a5 
+ 00030908  0x000086a6 isolate1  0x00000000 , 0x00000030 
+ 00030909  0x000086a7 setflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00030910  0x000086a8 store  0x00000001 , 0x000006a5 
+ 00030911  0x000086a9 rtn 
+ 00030912  0x000086ae fetch  0x00000001 , 0x000005e3 
+ 00030913  0x000086af increase  0xffffffff , 0x0000003f 
+ 00030914  0x000086b0 nrtn  0x00000002 
+ 00030915  0x000086b1 store  0x00000001 , 0x000005e3 
+ 00030916  0x000086b2 fetch  0x00000001 , 0x000005e2 
+ 00030917  0x000086b3 call  0x00007803 , 0x00000034 
+ 00030918  0x000086b4 fetch  0x00000001 , 0x000005e3 
+ 00030919  0x000086b5 arg  0x000006be , 0x00000006 
+ 00030920  0x000086b6 call  0x000076ec 
+ 00030921  0x000086b7 branch  0x000078c0 , 0x00000001 
+ 00030922  0x000086b8 fetch  0x00000001 , 0x000005e2 
+ 00030923  0x000086b9 nbranch  0x000078ce , 0x00000034 
+ 00030924  0x000086ba call  0x00007854 
+ 00030925  0x000086bb branch  0x000078c0 
+ 00030926  0x000086bd jam  0x00000000 , 0x000005e2 
+ 00030927  0x000086be arg  0x000005e6 , 0x00000006 
+ 00030928  0x000086bf arg  0x00000676 , 0x00000005 
+ 00030929  0x000086c0 call  0x000076f2 
+ 00030930  0x000086c1 branch  0x000078c0 
+ 00030931  0x000086c5 arg  0x000006a6 , 0x00000011 
+ 00030932  0x000086c6 arg  0x00000776 , 0x00000005 
+ 00030933  0x000086c7 call  0x000077be 
+ 00030934  0x000086c8 arg  0x00000776 , 0x00000011 
+ 00030935  0x000086c9 arg  0x0000072e , 0x00000005 
+ 00030936  0x000086ca call  0x000077a8 
+ 00030937  0x000086cb arg  0x00000676 , 0x00000011 
+ 00030938  0x000086cc arg  0x0000072e , 0x00000012 
+ 00030939  0x000086cd arg  0x0000062e , 0x00000005 
+ 00030940  0x000086ce call  0x00007786 
+ 00030941  0x000086cf arg  0x00000776 , 0x00000011 
+ 00030942  0x000086d0 arg  0x0000072e , 0x00000012 
+ 00030943  0x000086d1 arg  0x0000075e , 0x00000005 
+ 00030944  0x000086d2 call  0x00007786 
+ 00030945  0x000086d3 arg  0x0000068e , 0x00000011 
+ 00030946  0x000086d4 arg  0x0000075e , 0x00000012 
+ 00030947  0x000086d5 arg  0x00000646 , 0x00000005 
+ 00030948  0x000086d6 branch  0x00007786 
+ 00030949  0x000086db ifetch  0x00000004 , 0x00000006 
+ 00030950  0x000086dc force  0x00000004 , 0x00000011 
+ 00030951  0x000086dd increase  0x00000003 , 0x00000005 
+ 00030952  0x000086df istore  0x00000001 , 0x00000005 
+ 00030953  0x000086e0 rshift8  0x0000003f , 0x0000003f 
+ 00030954  0x000086e1 increase  0xfffffffe , 0x00000005 
+ 00030955  0x000086e2 increase  0xffffffff , 0x00000011 
+ 00030956  0x000086e3 nbranch  0x000078e8 , 0x00000005 
+ 00030957  0x000086e4 increase  0x00000005 , 0x00000005 
+ 00030958  0x000086e5 loop  0x000078e5 
+ 00030959  0x000086e6 rtn 
+ 00030960  0x000086ea lshift2  0x00000007 , 0x0000003f 
+ 00030961  0x000086eb iadd  0x0000000b , 0x00000006 
+ 00030962  0x000086ec ifetch  0x00000004 , 0x00000006 
+ 00030963  0x000086ed rtn 
+ 00030964  0x000086f0 force  0x00000010 , 0x00000030 
+ 00030965  0x000086f1 arg  0x000005e6 , 0x0000000b 
+ 00030966  0x000086f3 add  0x00000030 , 0xfffffff9 , 0x00000007 
+ 00030967  0x000086f4 call  0x000078f0 
+ 00030968  0x000086f5 iforce  0x00000002 
+ 00030969  0x000086f6 add  0x00000030 , 0xfffffff0 , 0x00000007 
+ 00030970  0x000086f7 call  0x000078f0 
+ 00030971  0x000086f8 iadd  0x00000002 , 0x00000002 
+ 00030972  0x000086f9 add  0x00000030 , 0xfffffffe , 0x00000007 
+ 00030973  0x000086fa call  0x000078f0 
+ 00030974  0x000086fb shasx  0x0000003f , 0x00000001 , 0x0000003f 
+ 00030975  0x000086fc iadd  0x00000002 , 0x00000002 
+ 00030976  0x000086fd add  0x00000030 , 0xfffffff1 , 0x00000007 
+ 00030977  0x000086fe call  0x000078f0 
+ 00030978  0x000086ff shasx  0x0000003f , 0x00000000 , 0x0000003f 
+ 00030979  0x00008700 iadd  0x00000002 , 0x00000002 
+ 00030980  0x00008701 lshift2  0x00000030 , 0x0000003f 
+ 00030981  0x00008702 iadd  0x0000000b , 0x00000005 
+ 00030982  0x00008703 istoret  0x00000004 , 0x00000005 
+ 00030983  0x00008704 increase  0x00000001 , 0x00000030 
+ 00030984  0x00008705 compare  0x00000040 , 0x00000030 , 0x000000ff 
+ 00030985  0x00008706 nbranch  0x000078f6 , 0x00000001 
+ 00030986  0x00008707 rtn 
+ 00030987  0x0000870b arg  0x000008fe , 0x00000006 
+ 00030988  0x0000870c force  0x00000007 , 0x00000038 
+ 00030989  0x0000870e ifetch  0x00000004 , 0x00000006 
+ 00030990  0x0000870f iforce  0x0000002f 
+ 00030991  0x00008710 increase  0xffffffff , 0x00000038 
+ 00030992  0x00008711 branch  0x0000790d , 0x00000002 
+ 00030993  0x00008712 rtn 
+ 00030994  0x00008715 bpatchx  0x000000ec , 0x0000403d 
+ 00030995  0x00008716 call  0x000078f4 
+ 00030996  0x00008717 arg  0x000006e6 , 0x00000005 
+ 00030997  0x00008718 force  0x00000000 , 0x00000038 
+ 00030998  0x0000871a deposit  0x0000002f 
+ 00030999  0x0000871b istore  0x00000004 , 0x00000005 
+ 00031000  0x0000871c increase  0x00000001 , 0x00000038 
+ 00031001  0x0000871d compare  0x00000008 , 0x00000038 , 0x000000ff 
+ 00031002  0x0000871e nbranch  0x00007916 , 0x00000001 
+ 00031003  0x0000871f call  0x000074b9 
+ 00031004  0x00008720 arg  0x00008700 , 0x0000000b 
+ 00031005  0x00008721 arg  0x000005e6 , 0x00000030 
+ 00031006  0x00008722 force  0x00000040 , 0x00000039 
+ 00031007  0x00008724 ifetcht  0x00000004 , 0x00000030 
+ 00031008  0x00008725 ifetch  0x00000004 , 0x0000000b 
+ 00031009  0x00008726 increase  0x00000004 , 0x0000000b 
+ 00031010  0x00008727 increase  0x00000004 , 0x00000030 
+ 00031011  0x00008728 iadd  0x00000002 , 0x0000003f 
+ 00031012  0x00008729 force  0x00000007 , 0x00000038 
+ 00031013  0x0000872a iadd  0x0000002f , 0x00000002 
+ 00031014  0x0000872b force  0x00000004 , 0x00000038 
+ 00031015  0x0000872c shasx  0x0000002f , 0x00000003 , 0x0000003f 
+ 00031016  0x0000872d iadd  0x00000002 , 0x00000002 
+ 00031017  0x0000872e force  0x00000005 , 0x00000038 
+ 00031018  0x0000872f deposit  0x0000002f 
+ 00031019  0x00008730 force  0x00000006 , 0x00000038 
+ 00031020  0x00008731 ixor  0x0000002f , 0x0000003f 
+ 00031021  0x00008732 force  0x00000004 , 0x00000038 
+ 00031022  0x00008733 iand  0x0000002f , 0x0000003f 
+ 00031023  0x00008734 force  0x00000006 , 0x00000038 
+ 00031024  0x00008735 ixor  0x0000002f , 0x0000003f 
+ 00031025  0x00008736 iadd  0x00000002 , 0x00000002 
+ 00031026  0x00008737 force  0x00000007 , 0x00000038 
+ 00031027  0x00008738 copy  0x00000002 , 0x0000002f 
+ 00031028  0x00008739 force  0x00000003 , 0x00000038 
+ 00031029  0x0000873a deposit  0x0000002f 
+ 00031030  0x0000873b iadd  0x00000002 , 0x0000002f 
+ 00031031  0x0000873c force  0x00000000 , 0x00000038 
+ 00031032  0x0000873d deposit  0x0000002f 
+ 00031033  0x0000873e force  0x00000001 , 0x00000038 
+ 00031034  0x0000873f iand  0x0000002f , 0x00000002 
+ 00031035  0x00008740 ior  0x0000002f , 0x0000003f 
+ 00031036  0x00008741 force  0x00000002 , 0x00000038 
+ 00031037  0x00008742 iand  0x0000002f , 0x0000003f 
+ 00031038  0x00008743 ior  0x00000002 , 0x00000002 
+ 00031039  0x00008744 force  0x00000000 , 0x00000038 
+ 00031040  0x00008745 shasx  0x0000002f , 0x00000002 , 0x0000003f 
+ 00031041  0x00008746 iadd  0x00000002 , 0x0000003f 
+ 00031042  0x00008747 force  0x00000007 , 0x00000038 
+ 00031043  0x00008748 iadd  0x0000002f , 0x0000002f 
+ 00031044  0x00008749 regexrot 
+ 00031045  0x0000874a loop  0x0000791f 
+ 00031046  0x0000874b arg  0x000006e6 , 0x00000006 
+ 00031047  0x0000874c force  0x00000000 , 0x00000038 
+ 00031048  0x0000874e ifetch  0x00000004 , 0x00000006 
+ 00031049  0x0000874f iadd  0x0000002f , 0x0000002f 
+ 00031050  0x00008750 increase  0x00000001 , 0x00000038 
+ 00031051  0x00008751 compare  0x00000008 , 0x00000038 , 0x000000ff 
+ 00031052  0x00008752 nbranch  0x00007948 , 0x00000001 
+ 00031053  0x00008753 branch  0x000074bd 
+ 00031054  0x00008757 arg  0x00000a3e , 0x00000005 
+ 00031055  0x00008758 force  0x00000007 , 0x00000038 
+ 00031056  0x0000875a deposit  0x0000002f 
+ 00031057  0x0000875b istore  0x00000004 , 0x00000005 
+ 00031058  0x0000875c increase  0xffffffff , 0x00000038 
+ 00031059  0x0000875d branch  0x00007950 , 0x00000002 
+ 00031060  0x0000875e rtn 
+ 00031061  0x00008762 arg  0x000005e6 , 0x00000005 
+ 00031062  0x00008763 increase  0xfffffffc , 0x00000006 
+ 00031063  0x00008764 sub  0x00000039 , 0x00000010 , 0x00000011 
+ 00031064  0x00008766 ifetch  0x00000004 , 0x00000006 
+ 00031065  0x00008767 ixor  0x00000002 , 0x0000003f 
+ 00031066  0x00008768 istore  0x00000004 , 0x00000005 
+ 00031067  0x00008769 increase  0xfffffff8 , 0x00000006 
+ 00031068  0x0000876a loop  0x00007958 
+ 00031069  0x0000876b copy  0x00000011 , 0x00000039 
+ 00031070  0x0000876c deposit  0x00000002 
+ 00031071  0x0000876e istore  0x00000004 , 0x00000005 
+ 00031072  0x0000876f loop  0x0000795f 
+ 00031073  0x00008770 rtn 
+ 00031074  0x00008773 call  0x00007967 
+ 00031075  0x00008774 call  0x0000794e 
+ 00031076  0x00008775 branch  0x0000798d 
+ 00031077  0x00008778 call  0x00007967 
+ 00031078  0x00008779 branch  0x0000798d 
+ 00031079  0x0000877c arg  0x000009de , 0x00000006 
+ 00031080  0x0000877d arg  0x000005e6 , 0x00000005 
+ 00031081  0x0000877e force  0x00000006 , 0x00000039 
+ 00031082  0x0000877f call  0x00007a71 
+ 00031083  0x00008780 arg  0x00004642 , 0x00000006 
+ 00031084  0x00008781 force  0x00000006 , 0x00000039 
+ 00031085  0x00008782 call  0x00007a71 
+ 00031086  0x00008783 arg  0x00000a3e , 0x00000006 
+ 00031087  0x00008784 call  0x00007a70 
+ 00031088  0x00008785 call  0x0000790b 
+ 00031089  0x00008786 call  0x00007912 
+ 00031090  0x00008787 arg  0x00000a2e , 0x00000006 
+ 00031091  0x00008788 arg  0x000005e6 , 0x00000005 
+ 00031092  0x00008789 branch  0x00007984 
+ 00031093  0x0000878c arg  0x00004642 , 0x00000006 
+ 00031094  0x0000878d arg  0x000005e6 , 0x00000005 
+ 00031095  0x0000878e force  0x00000006 , 0x00000039 
+ 00031096  0x0000878f call  0x00007a71 
+ 00031097  0x00008790 arg  0x000009de , 0x00000006 
+ 00031098  0x00008791 force  0x00000006 , 0x00000039 
+ 00031099  0x00008792 call  0x00007a71 
+ 00031100  0x00008793 arg  0x00000a2e , 0x00000006 
+ 00031101  0x00008794 call  0x00007a70 
+ 00031102  0x00008795 call  0x0000790b 
+ 00031103  0x00008796 call  0x00007912 
+ 00031104  0x00008797 arg  0x00000a3e , 0x00000006 
+ 00031105  0x00008798 arg  0x000005e6 , 0x00000005 
+ 00031106  0x00008799 call  0x00007984 
+ 00031107  0x0000879a branch  0x0000798d 
+ 00031108  0x0000879d call  0x00007a70 
+ 00031109  0x0000879e setarg  0x00800000 
+ 00031110  0x0000879f lshift8  0x0000003f , 0x0000003f 
+ 00031111  0x000087a0 istore  0x00000004 , 0x00000005 
+ 00031112  0x000087a1 force  0x00000005 , 0x00000039 
+ 00031113  0x000087a2 call  0x00007ec6 
+ 00031114  0x000087a3 setarg  0x00000280 
+ 00031115  0x000087a4 istore  0x00000004 , 0x00000005 
+ 00031116  0x000087a5 branch  0x00007912 
+ 00031117  0x000087a7 fetch  0x00000004 , 0x00000a3e 
+ 00031118  0x000087a9 arg  0x000003e8 , 0x00000011 
+ 00031119  0x000087aa idiv  0x00000011 
+ 00031120  0x000087ab call  0x00007f86 
+ 00031121  0x000087ac remainder  0x0000003f 
+ 00031122  0x000087ad store  0x00000004 , 0x000009ba 
+ 00031123  0x000087ae quotient  0x0000003f 
+ 00031124  0x000087af arg  0x000003e8 , 0x00000011 
+ 00031125  0x000087b0 idiv  0x00000011 
+ 00031126  0x000087b1 call  0x00007f86 
+ 00031127  0x000087b2 remainder  0x0000003f 
+ 00031128  0x000087b3 arg  0x000003e8 , 0x00000011 
+ 00031129  0x000087b4 imul32  0x00000011 , 0x0000003f 
+ 00031130  0x000087b5 fetcht  0x00000004 , 0x000009ba 
+ 00031131  0x000087b6 iadd  0x00000002 , 0x0000003f 
+ 00031132  0x000087b7 store  0x00000004 , 0x000009ba 
+ 00031133  0x000087b8 rtn 
+ 00031134  0x000087bb jam  0x00000000 , 0x00004664 
+ 00031135  0x000087bc branch  0x000079a2 
+ 00031136  0x000087bf fetch  0x00000001 , 0x00004662 
+ 00031137  0x000087c0 bne  0x00000002 , 0x0000799e 
+ 00031138  0x000087c2 bpatchx  0x000000ed , 0x0000403d 
+ 00031139  0x000087c3 setarg  0x00363636 
+ 00031140  0x000087c4 lshift8  0x0000003f , 0x00000002 
+ 00031141  0x000087c5 or_into  0x00000036 , 0x00000002 
+ 00031142  0x000087c6 fetch  0x00000002 , 0x00000a7e 
+ 00031143  0x000087c7 copy  0x0000003f , 0x00000006 
+ 00031144  0x000087c8 force  0x00000004 , 0x00000039 
+ 00031145  0x000087c9 call  0x00007955 
+ 00031146  0x000087ca call  0x0000790b 
+ 00031147  0x000087cb call  0x00007912 
+ 00031148  0x000087cc fetch  0x00000002 , 0x00000a80 
+ 00031149  0x000087cd copy  0x0000003f , 0x00000006 
+ 00031150  0x000087ce arg  0x000005e6 , 0x00000005 
+ 00031151  0x000087cf force  0x00000006 , 0x00000039 
+ 00031152  0x000087d0 call  0x00007a71 
+ 00031153  0x000087d1 fetch  0x00000002 , 0x00000a82 
+ 00031154  0x000087d2 copy  0x0000003f , 0x00000006 
+ 00031155  0x000087d3 force  0x00000006 , 0x00000039 
+ 00031156  0x000087d4 call  0x00007a71 
+ 00031157  0x000087d5 setarg  0x00800000 
+ 00031158  0x000087d6 istore  0x00000003 , 0x00000005 
+ 00031159  0x000087d8 fetch  0x00000001 , 0x00004664 
+ 00031160  0x000087da istore  0x00000001 , 0x00000005 
+ 00031161  0x000087db force  0x00000000 , 0x0000003f 
+ 00031162  0x000087dc istore  0x00000008 , 0x00000005 
+ 00031163  0x000087dd setarg  0x00000388 
+ 00031164  0x000087de istore  0x00000004 , 0x00000005 
+ 00031165  0x000087df call  0x00007912 
+ 00031166  0x000087e0 call  0x0000794e 
+ 00031167  0x000087e1 arg  0x00000a3e , 0x00000006 
+ 00031168  0x000087e2 arg  0x00000706 , 0x00000005 
+ 00031169  0x000087e3 call  0x00007ebd 
+ 00031170  0x000087e5 setarg  0x005c5c5c 
+ 00031171  0x000087e6 lshift8  0x0000003f , 0x00000002 
+ 00031172  0x000087e7 or_into  0x0000005c , 0x00000002 
+ 00031173  0x000087e8 fetch  0x00000002 , 0x00000a7e 
+ 00031174  0x000087e9 copy  0x0000003f , 0x00000006 
+ 00031175  0x000087ea force  0x00000004 , 0x00000039 
+ 00031176  0x000087eb call  0x00007955 
+ 00031177  0x000087ec call  0x0000790b 
+ 00031178  0x000087ed call  0x00007912 
+ 00031179  0x000087ee arg  0x00000726 , 0x00000006 
+ 00031180  0x000087ef arg  0x000005e6 , 0x00000005 
+ 00031181  0x000087f0 force  0x00000008 , 0x00000039 
+ 00031182  0x000087f1 call  0x00007a71 
+ 00031183  0x000087f2 setarg  0x00800000 
+ 00031184  0x000087f3 lshift8  0x0000003f , 0x0000003f 
+ 00031185  0x000087f4 istore  0x00000004 , 0x00000005 
+ 00031186  0x000087f5 call  0x00007ec5 
+ 00031187  0x000087f6 setarg  0x00000300 
+ 00031188  0x000087f7 istore  0x00000004 , 0x00000005 
+ 00031189  0x000087f8 call  0x00007912 
+ 00031190  0x000087f9 branch  0x0000794e 
+ 00031191  0x000087fd setarg  0x00363636 
+ 00031192  0x000087fe lshift8  0x0000003f , 0x00000002 
+ 00031193  0x000087ff or_into  0x00000036 , 0x00000002 
+ 00031194  0x00008800 arg  0x00000a1e , 0x00000006 
+ 00031195  0x00008801 force  0x00000006 , 0x00000039 
+ 00031196  0x00008802 call  0x00007955 
+ 00031197  0x00008803 call  0x0000790b 
+ 00031198  0x00008804 call  0x00007912 
+ 00031199  0x00008805 fetch  0x00000002 , 0x00000a8a 
+ 00031200  0x00008806 copy  0x0000003f , 0x00000006 
+ 00031201  0x00008807 arg  0x000005e6 , 0x00000005 
+ 00031202  0x00008808 call  0x00007a70 
+ 00031203  0x00008809 fetch  0x00000002 , 0x00000a8c 
+ 00031204  0x0000880a copy  0x0000003f , 0x00000006 
+ 00031205  0x0000880b call  0x00007a70 
+ 00031206  0x0000880d setarg  0x0062746c 
+ 00031207  0x0000880e lshift8  0x0000003f , 0x0000003f 
+ 00031208  0x0000880f or_into  0x0000006b , 0x0000003f 
+ 00031209  0x00008810 istore  0x00000004 , 0x00000005 
+ 00031210  0x00008811 arg  0x00000733 , 0x00000006 
+ 00031211  0x00008812 force  0x00000003 , 0x00000039 
+ 00031212  0x00008813 call  0x00007a71 
+ 00031213  0x00008815 setarg  0x00800000 
+ 00031214  0x00008816 lshift8  0x0000003f , 0x0000003f 
+ 00031215  0x00008817 istore  0x00000004 , 0x00000005 
+ 00031216  0x00008818 force  0x00000000 , 0x0000003f 
+ 00031217  0x00008819 istore  0x00000008 , 0x00000005 
+ 00031218  0x0000881a setarg  0x00000380 
+ 00031219  0x0000881b istore  0x00000004 , 0x00000005 
+ 00031220  0x0000881c call  0x00007912 
+ 00031221  0x0000881e call  0x0000794e 
+ 00031222  0x0000881f arg  0x00000a3e , 0x00000006 
+ 00031223  0x00008820 arg  0x00000706 , 0x00000005 
+ 00031224  0x00008821 call  0x00007ebd 
+ 00031225  0x00008823 setarg  0x005c5c5c 
+ 00031226  0x00008824 lshift8  0x0000003f , 0x00000002 
+ 00031227  0x00008825 or_into  0x0000005c , 0x00000002 
+ 00031228  0x00008826 arg  0x00000a1e , 0x00000006 
+ 00031229  0x00008827 force  0x00000006 , 0x00000039 
+ 00031230  0x00008828 call  0x00007955 
+ 00031231  0x00008829 call  0x0000790b 
+ 00031232  0x0000882a call  0x00007912 
+ 00031233  0x0000882b arg  0x00000726 , 0x00000006 
+ 00031234  0x0000882c arg  0x000005e6 , 0x00000005 
+ 00031235  0x0000882d force  0x00000008 , 0x00000039 
+ 00031236  0x0000882e call  0x00007a71 
+ 00031237  0x0000882f setarg  0x00800000 
+ 00031238  0x00008830 lshift8  0x0000003f , 0x0000003f 
+ 00031239  0x00008831 istore  0x00000004 , 0x00000005 
+ 00031240  0x00008832 call  0x00007ec5 
+ 00031241  0x00008833 setarg  0x00000300 
+ 00031242  0x00008834 istore  0x00000004 , 0x00000005 
+ 00031243  0x00008835 call  0x00007912 
+ 00031244  0x00008836 branch  0x0000794e 
+ 00031245  0x0000883a fetch  0x00000001 , 0x00004662 
+ 00031246  0x0000883b bne  0x00000002 , 0x00007a1e 
+ 00031247  0x0000883d bpatchx  0x000000ee , 0x0000403d 
+ 00031248  0x0000883e setarg  0x00363636 
+ 00031249  0x0000883f lshift8  0x0000003f , 0x00000002 
+ 00031250  0x00008840 or_into  0x00000036 , 0x00000002 
+ 00031251  0x00008841 arg  0x00000a1e , 0x00000006 
+ 00031252  0x00008842 force  0x00000006 , 0x00000039 
+ 00031253  0x00008843 call  0x00007955 
+ 00031254  0x00008844 call  0x0000790b 
+ 00031255  0x00008845 call  0x00007912 
+ 00031256  0x00008846 arg  0x00000a3e , 0x00000006 
+ 00031257  0x00008847 arg  0x000005e6 , 0x00000005 
+ 00031258  0x00008848 call  0x00007a70 
+ 00031259  0x00008849 arg  0x00000a2e , 0x00000006 
+ 00031260  0x0000884a call  0x00007a70 
+ 00031261  0x0000884b branch  0x00007a33 
+ 00031262  0x0000884e setarg  0x00000000 
+ 00031263  0x0000884f store  0x00000004 , 0x0000468a 
+ 00031264  0x00008850 branch  0x00007a0f 
+ 00031265  0x00008853 setarg  0x00000000 
+ 00031266  0x00008854 store  0x00000004 , 0x0000468a 
+ 00031267  0x00008855 branch  0x00007a26 
+ 00031268  0x00008859 fetch  0x00000001 , 0x00004662 
+ 00031269  0x0000885a bne  0x00000002 , 0x00007a21 
+ 00031270  0x0000885c setarg  0x00363636 
+ 00031271  0x0000885d lshift8  0x0000003f , 0x00000002 
+ 00031272  0x0000885e or_into  0x00000036 , 0x00000002 
+ 00031273  0x0000885f arg  0x00000a1e , 0x00000006 
+ 00031274  0x00008860 force  0x00000006 , 0x00000039 
+ 00031275  0x00008861 call  0x00007955 
+ 00031276  0x00008862 call  0x0000790b 
+ 00031277  0x00008863 call  0x00007912 
+ 00031278  0x00008865 arg  0x00000a2e , 0x00000006 
+ 00031279  0x00008866 arg  0x000005e6 , 0x00000005 
+ 00031280  0x00008867 call  0x00007a70 
+ 00031281  0x00008868 arg  0x00000a3e , 0x00000006 
+ 00031282  0x00008869 call  0x00007a70 
+ 00031283  0x0000886b setarg  0x00000000 
+ 00031284  0x0000886c istore  0x00000008 , 0x00000005 
+ 00031285  0x0000886d istore  0x00000004 , 0x00000005 
+ 00031286  0x0000886e fetch  0x00000004 , 0x0000468a 
+ 00031287  0x0000886f istore  0x00000004 , 0x00000005 
+ 00031288  0x00008871 copy  0x00000005 , 0x00000002 
+ 00031289  0x00008872 jam  0x00000080 , 0x00000726 
+ 00031290  0x00008873 copy  0x00000002 , 0x00000005 
+ 00031291  0x00008874 arg  0x00000736 , 0x00000006 
+ 00031292  0x00008875 call  0x00007a70 
+ 00031293  0x00008877 call  0x00007912 
+ 00031294  0x00008879 arg  0x000005e6 , 0x00000005 
+ 00031295  0x0000887a force  0x00000007 , 0x00000039 
+ 00031296  0x0000887b call  0x00007ec6 
+ 00031297  0x0000887c istore  0x00000004 , 0x00000005 
+ 00031298  0x0000887d setarg  0x000003f8 
+ 00031299  0x0000887e istore  0x00000004 , 0x00000005 
+ 00031300  0x0000887f call  0x00007912 
+ 00031301  0x00008880 call  0x0000794e 
+ 00031302  0x00008882 arg  0x00000a3e , 0x00000006 
+ 00031303  0x00008883 arg  0x00000706 , 0x00000005 
+ 00031304  0x00008884 call  0x00007ebd 
+ 00031305  0x00008886 setarg  0x005c5c5c 
+ 00031306  0x00008887 lshift8  0x0000003f , 0x00000002 
+ 00031307  0x00008888 or_into  0x0000005c , 0x00000002 
+ 00031308  0x00008889 arg  0x00000a1e , 0x00000006 
+ 00031309  0x0000888a force  0x00000006 , 0x00000039 
+ 00031310  0x0000888b call  0x00007955 
+ 00031311  0x0000888c call  0x0000790b 
+ 00031312  0x0000888d call  0x00007912 
+ 00031313  0x0000888e arg  0x00000726 , 0x00000006 
+ 00031314  0x0000888f arg  0x000005e6 , 0x00000005 
+ 00031315  0x00008890 force  0x00000008 , 0x00000039 
+ 00031316  0x00008891 call  0x00007a71 
+ 00031317  0x00008892 setarg  0x00800000 
+ 00031318  0x00008893 lshift8  0x0000003f , 0x0000003f 
+ 00031319  0x00008894 istore  0x00000004 , 0x00000005 
+ 00031320  0x00008895 call  0x00007ec5 
+ 00031321  0x00008896 setarg  0x00000300 
+ 00031322  0x00008897 istore  0x00000004 , 0x00000005 
+ 00031323  0x00008898 call  0x00007912 
+ 00031324  0x00008899 branch  0x0000794e 
+ 00031325  0x000088a1 jam  0x000000c0 , 0x000005e3 
+ 00031326  0x000088a3 fetch  0x00000001 , 0x000005e3 
+ 00031327  0x000088a4 rtn  0x00000034 
+ 00031328  0x000088a5 increase  0xffffffff , 0x0000003f 
+ 00031329  0x000088a6 store  0x00000001 , 0x000005e3 
+ 00031330  0x000088a7 arg  0x000006be , 0x00000006 
+ 00031331  0x000088a8 call  0x000076ec 
+ 00031332  0x000088a9 branch  0x00007a5e , 0x00000001 
+ 00031333  0x000088aa arg  0x000005e6 , 0x00000006 
+ 00031334  0x000088ab arg  0x00000676 , 0x00000005 
+ 00031335  0x000088ac branch  0x000076f2 
+ 00031336  0x000088af call  0x00007803 
+ 00031337  0x000088b0 fetch  0x00000001 , 0x000005e3 
+ 00031338  0x000088b1 increase  0xffffffff , 0x0000003f 
+ 00031339  0x000088b2 store  0x00000001 , 0x000005e3 
+ 00031340  0x000088b3 arg  0x000006be , 0x00000006 
+ 00031341  0x000088b4 call  0x000076ec 
+ 00031342  0x000088b5 rtn  0x00000001 
+ 00031343  0x000088b6 branch  0x00007854 
+ 00031344  0x000088b9 force  0x00000004 , 0x00000039 
+ 00031345  0x000088bb increase  0xfffffffc , 0x00000006 
+ 00031346  0x000088bd ifetch  0x00000004 , 0x00000006 
+ 00031347  0x000088be istore  0x00000004 , 0x00000005 
+ 00031348  0x000088bf increase  0xfffffff8 , 0x00000006 
+ 00031349  0x000088c0 loop  0x00007a72 
+ 00031350  0x000088c1 rtn 
+ 00031351  0x000088c7 bpatchx  0x000000ef , 0x0000403d 
+ 00031352  0x000088c8 fetch  0x00000001 , 0x000044be 
+ 00031353  0x000088c9 branch  0x00005af0 , 0x00000034 
+ 00031354  0x000088ca call  0x00005aec 
+ 00031355  0x000088cb call  0x00007583 
+ 00031356  0x000088cd branch  0x00007a7d 
+ 00031357  0x000088d3 fetch  0x00000001 , 0x000044c3 
+ 00031358  0x000088d4 rtnne  0x00000000 
+ 00031359  0x000088d5 fetch  0x00000001 , 0x000044c0 
+ 00031360  0x000088d6 rtnne  0x00000000 
+ 00031361  0x000088d8 arg  0x000045b2 , 0x00000005 
+ 00031362  0x000088d9 force  0x0000000f , 0x00000007 
+ 00031363  0x000088da call  0x000076a2 
+ 00031364  0x000088db random  0x0000003f 
+ 00031365  0x000088dc rshift  0x0000003f , 0x0000003f 
+ 00031366  0x000088dd istore  0x00000002 , 0x00000005 
+ 00031367  0x000088df arg  0x00000766 , 0x00000005 
+ 00031368  0x000088e0 arg  0x000045b2 , 0x00000006 
+ 00031369  0x000088e1 call  0x00007ebd 
+ 00031370  0x000088e3 arg  0x00000646 , 0x00000005 
+ 00031371  0x000088e4 arg  0x0000095e , 0x00000006 
+ 00031372  0x000088e5 call  0x00007eb3 
+ 00031373  0x000088e7 arg  0x00000686 , 0x00000005 
+ 00031374  0x000088e8 call  0x00007ed0 
+ 00031375  0x000088e9 jam  0x00000001 , 0x00000686 
+ 00031376  0x000088eb call  0x00007ac7 
+ 00031377  0x000088ec jam  0x00000003 , 0x000044c0 
+ 00031378  0x000088ed rtn 
+ 00031379  0x000088f0 arg  0x000045d2 , 0x00000005 
+ 00031380  0x000088f1 arg  0x000006a6 , 0x00000006 
+ 00031381  0x000088f2 call  0x00007eb3 
+ 00031382  0x000088f3 jam  0x00000003 , 0x000044c3 
+ 00031383  0x000088f4 jam  0x00000000 , 0x000044c0 
+ 00031384  0x000088f5 rtn 
+ 00031385  0x000088fa fetch  0x00000001 , 0x000009b9 
+ 00031386  0x000088fb rtnne  0x00000000 
+ 00031387  0x000088fc fetch  0x00000001 , 0x000044c0 
+ 00031388  0x000088fd rtnne  0x00000000 
+ 00031389  0x000088ff arg  0x00000766 , 0x00000005 
+ 00031390  0x00008900 arg  0x000045b2 , 0x00000006 
+ 00031391  0x00008901 call  0x00007ebd 
+ 00031392  0x00008903 arg  0x00000646 , 0x00000005 
+ 00031393  0x00008904 arg  0x000009be , 0x00000006 
+ 00031394  0x00008905 call  0x00007eb3 
+ 00031395  0x00008907 arg  0x00000686 , 0x00000005 
+ 00031396  0x00008908 call  0x00007ed0 
+ 00031397  0x00008909 jam  0x00000001 , 0x00000686 
+ 00031398  0x0000890b call  0x00007ac7 
+ 00031399  0x0000890c jam  0x00000004 , 0x000044c0 
+ 00031400  0x0000890d rtn 
+ 00031401  0x00008912 arg  0x000009fe , 0x00000005 
+ 00031402  0x00008913 arg  0x000006a6 , 0x00000006 
+ 00031403  0x00008914 call  0x00007ebd 
+ 00031404  0x00008915 jam  0x00000003 , 0x000009b9 
+ 00031405  0x00008916 jam  0x00000000 , 0x000044c0 
+ 00031406  0x00008917 rtn 
+ 00031407  0x0000891c fetch  0x00000001 , 0x000044be 
+ 00031408  0x0000891d rtn  0x00000034 
+ 00031409  0x0000891e fetch  0x00000001 , 0x000044c0 
+ 00031410  0x0000891f rtn  0x00000034 
+ 00031411  0x00008920 increase  0x00000080 , 0x0000003f 
+ 00031412  0x00008921 store  0x00000001 , 0x000044c0 
+ 00031413  0x00008922 rtnbit1  0x00000007 
+ 00031414  0x00008923 fetch  0x00000002 , 0x000005e3 
+ 00031415  0x00008924 branch  0x00007ab9 , 0x00000034 
+ 00031416  0x00008925 branch  0x00007abf 
+ 00031417  0x00008928 bpatchx  0x000000f0 , 0x0000403e 
+ 00031418  0x00008929 call  0x00007ad4 
+ 00031419  0x0000892a fetch  0x00000001 , 0x000044c0 
+ 00031420  0x0000892b beq  0x00000003 , 0x00007a93 
+ 00031421  0x0000892c beq  0x00000004 , 0x00007aa9 
+ 00031422  0x0000892d rtn 
+ 00031423  0x00008931 call  0x00007ae6 
+ 00031424  0x00008932 fetch  0x00000002 , 0x000005e3 
+ 00031425  0x00008933 increase  0xffffffff , 0x0000003f 
+ 00031426  0x00008934 store  0x00000002 , 0x000005e3 
+ 00031427  0x00008935 arg  0x00000766 , 0x00000006 
+ 00031428  0x00008936 call  0x000076ec 
+ 00031429  0x00008937 rtn  0x00000001 
+ 00031430  0x00008938 branch  0x00007b37 
+ 00031431  0x0000893b bpatchx  0x000000f1 , 0x0000403e 
+ 00031432  0x0000893c setarg  0x00000100 , 0x0000003f 
+ 00031433  0x0000893d store  0x00000002 , 0x000005e3 
+ 00031434  0x0000893f fetch  0x00000002 , 0x000005e3 
+ 00031435  0x00008940 rtn  0x00000034 
+ 00031436  0x00008941 increase  0xffffffff , 0x0000003f 
+ 00031437  0x00008942 store  0x00000002 , 0x000005e3 
+ 00031438  0x00008943 arg  0x00000766 , 0x00000006 
+ 00031439  0x00008944 call  0x000076ec 
+ 00031440  0x00008945 branch  0x00007aca , 0x00000001 
+ 00031441  0x00008946 arg  0x00000646 , 0x00000006 
+ 00031442  0x00008947 arg  0x00000706 , 0x00000005 
+ 00031443  0x00008948 branch  0x00007eb2 
+ 00031444  0x0000894c arg  0x00000746 , 0x00000011 
+ 00031445  0x0000894d arg  0x00000846 , 0x00000005 
+ 00031446  0x0000894e call  0x00007ba3 
+ 00031447  0x0000894f arg  0x00000846 , 0x00000011 
+ 00031448  0x00008950 arg  0x000007e6 , 0x00000005 
+ 00031449  0x00008951 call  0x00007c79 
+ 00031450  0x00008952 arg  0x00000706 , 0x00000011 
+ 00031451  0x00008953 arg  0x000007e6 , 0x00000012 
+ 00031452  0x00008954 arg  0x000006a6 , 0x00000005 
+ 00031453  0x00008955 call  0x00007be1 
+ 00031454  0x00008956 arg  0x00000846 , 0x00000011 
+ 00031455  0x00008957 arg  0x000007e6 , 0x00000012 
+ 00031456  0x00008958 arg  0x00000826 , 0x00000005 
+ 00031457  0x00008959 call  0x00007be1 
+ 00031458  0x0000895a arg  0x00000726 , 0x00000011 
+ 00031459  0x0000895b arg  0x00000826 , 0x00000012 
+ 00031460  0x0000895c arg  0x000006c6 , 0x00000005 
+ 00031461  0x0000895d branch  0x00007be1 
+ 00031462  0x00008960 arg  0x00000746 , 0x00000011 
+ 00031463  0x00008961 arg  0x00000826 , 0x00000005 
+ 00031464  0x00008962 call  0x00007c79 
+ 00031465  0x00008963 arg  0x00000826 , 0x00000011 
+ 00031466  0x00008964 arg  0x00000846 , 0x00000005 
+ 00031467  0x00008965 call  0x00007c79 
+ 00031468  0x00008967 arg  0x0000093e , 0x00000011 
+ 00031469  0x00008968 arg  0x00000846 , 0x00000012 
+ 00031470  0x00008969 arg  0x00000846 , 0x00000005 
+ 00031471  0x0000896a call  0x00007be1 
+ 00031472  0x0000896b arg  0x00000706 , 0x00000011 
+ 00031473  0x0000896c arg  0x00000826 , 0x00000005 
+ 00031474  0x0000896d call  0x00007c79 
+ 00031475  0x0000896f arg  0x00000826 , 0x00000006 
+ 00031476  0x00008970 arg  0x000007e6 , 0x00000005 
+ 00031477  0x00008971 call  0x00007ebd 
+ 00031478  0x00008972 arg  0x000007e6 , 0x00000011 
+ 00031479  0x00008973 call  0x00007c80 
+ 00031480  0x00008974 arg  0x00000826 , 0x00000011 
+ 00031481  0x00008975 arg  0x000007e6 , 0x00000012 
+ 00031482  0x00008976 arg  0x00000826 , 0x00000005 
+ 00031483  0x00008977 call  0x00007c7d 
+ 00031484  0x00008979 arg  0x00000826 , 0x00000011 
+ 00031485  0x0000897a arg  0x00000846 , 0x00000012 
+ 00031486  0x0000897b arg  0x00000826 , 0x00000005 
+ 00031487  0x0000897c call  0x00007c7d 
+ 00031488  0x0000897e arg  0x00000706 , 0x00000006 
+ 00031489  0x0000897f arg  0x000007e6 , 0x00000005 
+ 00031490  0x00008980 call  0x00007ebd 
+ 00031491  0x00008981 arg  0x00000726 , 0x00000011 
+ 00031492  0x00008982 arg  0x00000846 , 0x00000005 
+ 00031493  0x00008983 call  0x00007c79 
+ 00031494  0x00008984 arg  0x000007e6 , 0x00000011 
+ 00031495  0x00008985 call  0x00007c80 
+ 00031496  0x00008986 arg  0x000007e6 , 0x00000011 
+ 00031497  0x00008987 call  0x00007c80 
+ 00031498  0x00008988 arg  0x000007e6 , 0x00000011 
+ 00031499  0x00008989 arg  0x00000846 , 0x00000012 
+ 00031500  0x0000898a arg  0x000007e6 , 0x00000005 
+ 00031501  0x0000898b call  0x00007be1 
+ 00031502  0x0000898c arg  0x00000846 , 0x00000011 
+ 00031503  0x0000898d arg  0x00000806 , 0x00000005 
+ 00031504  0x0000898e call  0x00007c79 
+ 00031505  0x0000898f arg  0x00000806 , 0x00000011 
+ 00031506  0x00008990 call  0x00007c80 
+ 00031507  0x00008991 arg  0x00000806 , 0x00000011 
+ 00031508  0x00008992 call  0x00007c80 
+ 00031509  0x00008993 arg  0x00000806 , 0x00000011 
+ 00031510  0x00008994 call  0x00007c80 
+ 00031511  0x00008995 arg  0x00000726 , 0x00000006 
+ 00031512  0x00008996 arg  0x00000846 , 0x00000005 
+ 00031513  0x00008997 call  0x00007ebd 
+ 00031514  0x00008998 arg  0x00000846 , 0x00000011 
+ 00031515  0x00008999 call  0x00007c80 
+ 00031516  0x0000899a arg  0x00000846 , 0x00000011 
+ 00031517  0x0000899b arg  0x00000746 , 0x00000012 
+ 00031518  0x0000899c arg  0x00000746 , 0x00000005 
+ 00031519  0x0000899d call  0x00007be1 
+ 00031520  0x000089a0 arg  0x00000826 , 0x00000011 
+ 00031521  0x000089a1 arg  0x00000846 , 0x00000005 
+ 00031522  0x000089a2 call  0x00007c79 
+ 00031523  0x000089a4 arg  0x00000846 , 0x00000011 
+ 00031524  0x000089a5 arg  0x000007e6 , 0x00000012 
+ 00031525  0x000089a6 arg  0x00000846 , 0x00000005 
+ 00031526  0x000089a7 call  0x00007c96 
+ 00031527  0x000089a8 arg  0x00000846 , 0x00000011 
+ 00031528  0x000089a9 arg  0x000007e6 , 0x00000012 
+ 00031529  0x000089aa arg  0x00000706 , 0x00000005 
+ 00031530  0x000089ab call  0x00007c96 
+ 00031531  0x000089ac arg  0x000007e6 , 0x00000011 
+ 00031532  0x000089ad arg  0x00000706 , 0x00000012 
+ 00031533  0x000089ae arg  0x00000846 , 0x00000005 
+ 00031534  0x000089af call  0x00007c96 
+ 00031535  0x000089b0 arg  0x00000846 , 0x00000011 
+ 00031536  0x000089b1 arg  0x00000826 , 0x00000012 
+ 00031537  0x000089b2 arg  0x00000846 , 0x00000005 
+ 00031538  0x000089b3 call  0x00007be1 
+ 00031539  0x000089b4 arg  0x00000846 , 0x00000011 
+ 00031540  0x000089b5 arg  0x00000806 , 0x00000012 
+ 00031541  0x000089b6 arg  0x00000726 , 0x00000005 
+ 00031542  0x000089b7 branch  0x00007c96 
+ 00031543  0x000089bb arg  0x00000686 , 0x00000011 
+ 00031544  0x000089bc arg  0x00000866 , 0x00000005 
+ 00031545  0x000089bd call  0x00007c79 
+ 00031546  0x000089be arg  0x00000706 , 0x00000011 
+ 00031547  0x000089bf arg  0x00000866 , 0x00000012 
+ 00031548  0x000089c0 arg  0x00000806 , 0x00000005 
+ 00031549  0x000089c1 call  0x00007be1 
+ 00031550  0x000089c4 arg  0x00000686 , 0x00000011 
+ 00031551  0x000089c5 arg  0x00000866 , 0x00000012 
+ 00031552  0x000089c6 arg  0x00000866 , 0x00000005 
+ 00031553  0x000089c7 call  0x00007be1 
+ 00031554  0x000089c8 arg  0x00000726 , 0x00000011 
+ 00031555  0x000089c9 arg  0x00000866 , 0x00000012 
+ 00031556  0x000089ca arg  0x000007e6 , 0x00000005 
+ 00031557  0x000089cb call  0x00007be1 
+ 00031558  0x000089ce arg  0x00000746 , 0x00000011 
+ 00031559  0x000089cf arg  0x00000866 , 0x00000005 
+ 00031560  0x000089d0 call  0x00007c79 
+ 00031561  0x000089d1 arg  0x00000646 , 0x00000011 
+ 00031562  0x000089d2 arg  0x00000866 , 0x00000012 
+ 00031563  0x000089d3 arg  0x00000826 , 0x00000005 
+ 00031564  0x000089d4 call  0x00007be1 
+ 00031565  0x000089d6 arg  0x00000746 , 0x00000011 
+ 00031566  0x000089d7 arg  0x00000866 , 0x00000012 
+ 00031567  0x000089d8 arg  0x00000866 , 0x00000005 
+ 00031568  0x000089d9 call  0x00007be1 
+ 00031569  0x000089da arg  0x00000666 , 0x00000011 
+ 00031570  0x000089db arg  0x00000866 , 0x00000012 
+ 00031571  0x000089dc arg  0x00000846 , 0x00000005 
+ 00031572  0x000089dd call  0x00007be1 
+ 00031573  0x000089e2 arg  0x00000806 , 0x00000012 
+ 00031574  0x000089e3 arg  0x00000826 , 0x00000011 
+ 00031575  0x000089e4 arg  0x00000866 , 0x00000005 
+ 00031576  0x000089e5 call  0x00007c96 
+ 00031577  0x000089e6 arg  0x00000806 , 0x00000011 
+ 00031578  0x000089e7 arg  0x00000826 , 0x00000012 
+ 00031579  0x000089e8 arg  0x00000806 , 0x00000005 
+ 00031580  0x000089e9 call  0x00007c7d 
+ 00031581  0x000089ec arg  0x000007e6 , 0x00000012 
+ 00031582  0x000089ed arg  0x00000846 , 0x00000011 
+ 00031583  0x000089ee arg  0x00000826 , 0x00000005 
+ 00031584  0x000089ef call  0x00007c96 
+ 00031585  0x000089f0 arg  0x000007e6 , 0x00000011 
+ 00031586  0x000089f1 arg  0x00000846 , 0x00000012 
+ 00031587  0x000089f2 arg  0x000007e6 , 0x00000005 
+ 00031588  0x000089f3 call  0x00007c7d 
+ 00031589  0x000089f4 arg  0x000007e6 , 0x00000011 
+ 00031590  0x000089f5 arg  0x00000866 , 0x00000012 
+ 00031591  0x000089f6 arg  0x000007e6 , 0x00000005 
+ 00031592  0x000089f7 call  0x00007be1 
+ 00031593  0x000089f8 arg  0x00000746 , 0x00000011 
+ 00031594  0x000089f9 arg  0x00000686 , 0x00000012 
+ 00031595  0x000089fa arg  0x00000846 , 0x00000005 
+ 00031596  0x000089fb call  0x00007be1 
+ 00031597  0x000089fc arg  0x00000846 , 0x00000011 
+ 00031598  0x000089fd arg  0x00000866 , 0x00000012 
+ 00031599  0x000089fe arg  0x00000746 , 0x00000005 
+ 00031600  0x000089ff call  0x00007be1 
+ 00031601  0x00008a01 arg  0x00000866 , 0x00000011 
+ 00031602  0x00008a02 arg  0x00000866 , 0x00000005 
+ 00031603  0x00008a03 call  0x00007c79 
+ 00031604  0x00008a04 arg  0x00000866 , 0x00000011 
+ 00031605  0x00008a05 arg  0x00000806 , 0x00000012 
+ 00031606  0x00008a06 arg  0x00000846 , 0x00000005 
+ 00031607  0x00008a07 call  0x00007be1 
+ 00031608  0x00008a08 arg  0x00000866 , 0x00000011 
+ 00031609  0x00008a09 arg  0x000007e6 , 0x00000012 
+ 00031610  0x00008a0a arg  0x000007e6 , 0x00000005 
+ 00031611  0x00008a0b call  0x00007be1 
+ 00031612  0x00008a0c arg  0x00000826 , 0x00000011 
+ 00031613  0x00008a0d arg  0x00000706 , 0x00000005 
+ 00031614  0x00008a0e call  0x00007c79 
+ 00031615  0x00008a0f arg  0x00000706 , 0x00000011 
+ 00031616  0x00008a10 arg  0x00000846 , 0x00000012 
+ 00031617  0x00008a11 arg  0x00000706 , 0x00000005 
+ 00031618  0x00008a12 call  0x00007c96 
+ 00031619  0x00008a13 arg  0x00000706 , 0x00000006 
+ 00031620  0x00008a14 arg  0x00000866 , 0x00000005 
+ 00031621  0x00008a15 call  0x00007ebd 
+ 00031622  0x00008a16 arg  0x00000866 , 0x00000011 
+ 00031623  0x00008a17 call  0x00007c80 
+ 00031624  0x00008a18 arg  0x00000846 , 0x00000011 
+ 00031625  0x00008a19 arg  0x00000866 , 0x00000012 
+ 00031626  0x00008a1a arg  0x00000846 , 0x00000005 
+ 00031627  0x00008a1b call  0x00007c96 
+ 00031628  0x00008a1c arg  0x00000846 , 0x00000011 
+ 00031629  0x00008a1d arg  0x00000826 , 0x00000012 
+ 00031630  0x00008a1e arg  0x00000826 , 0x00000005 
+ 00031631  0x00008a1f call  0x00007be1 
+ 00031632  0x00008a20 arg  0x00000826 , 0x00000011 
+ 00031633  0x00008a21 arg  0x000007e6 , 0x00000012 
+ 00031634  0x00008a22 arg  0x00000726 , 0x00000005 
+ 00031635  0x00008a23 call  0x00007c96 
+ 00031636  0x00008a24 arg  0x00000726 , 0x00000011 
+ 00031637  0x00008a25 arg  0x0000091e , 0x00000012 
+ 00031638  0x00008a26 arg  0x00000726 , 0x00000005 
+ 00031639  0x00008a27 force  0x00000000 , 0x00000013 
+ 00031640  0x00008a28 fetch  0x00000001 , 0x00000726 
+ 00031641  0x00008a29 isolate1  0x00000000 , 0x0000003f 
+ 00031642  0x00008a2a call  0x00007c7b , 0x00000001 
+ 00031643  0x00008a2b copy  0x00000013 , 0x00000030 
+ 00031644  0x00008a2c arg  0x00000726 , 0x00000011 
+ 00031645  0x00008a2d call  0x00007cab 
+ 00031646  0x00008a2e fetch  0x00000001 , 0x00000745 
+ 00031647  0x00008a2f isolate1  0x00000000 , 0x00000030 
+ 00031648  0x00008a30 setflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00031649  0x00008a31 store  0x00000001 , 0x00000745 
+ 00031650  0x00008a32 rtn 
+ 00031651  0x00008a35 copy  0x00000005 , 0x0000000b 
+ 00031652  0x00008a36 arg  0x00000806 , 0x00000005 
+ 00031653  0x00008a37 call  0x00007ed0 
+ 00031654  0x00008a38 force  0x00000000 , 0x0000003f 
+ 00031655  0x00008a3a store  0x00000004 , 0x00000826 
+ 00031656  0x00008a3b jam  0x00000001 , 0x00000806 
+ 00031657  0x00008a3c arg  0x00000786 , 0x00000005 
+ 00031658  0x00008a3d call  0x00007ed2 
+ 00031659  0x00008a3e arg  0x0000091e , 0x00000006 
+ 00031660  0x00008a3f arg  0x000007c6 , 0x00000005 
+ 00031661  0x00008a40 call  0x00007ebd 
+ 00031662  0x00008a41 copy  0x00000011 , 0x00000006 
+ 00031663  0x00008a42 arg  0x000007e6 , 0x00000005 
+ 00031664  0x00008a43 call  0x00007ebd 
+ 00031665  0x00008a4a arg  0x000007e6 , 0x00000006 
+ 00031666  0x00008a4b call  0x00007cb5 
+ 00031667  0x00008a4c branch  0x00007bda , 0x00000034 
+ 00031668  0x00008a51 arg  0x000007e6 , 0x00000011 
+ 00031669  0x00008a52 arg  0x00000806 , 0x00000012 
+ 00031670  0x00008a53 call  0x00007cb8 
+ 00031671  0x00008a54 arg  0x000007c6 , 0x00000011 
+ 00031672  0x00008a55 arg  0x00000786 , 0x00000012 
+ 00031673  0x00008a56 call  0x00007cb8 
+ 00031674  0x00008a58 arg  0x000007e6 , 0x00000011 
+ 00031675  0x00008a59 arg  0x000007c6 , 0x00000012 
+ 00031676  0x00008a5a call  0x00007cb1 
+ 00031677  0x00008a5b branch  0x00007bcc , 0x00000002 
+ 00031678  0x00008a5c arg  0x000007c6 , 0x00000011 
+ 00031679  0x00008a5d arg  0x000007e6 , 0x00000012 
+ 00031680  0x00008a5e copy  0x00000011 , 0x00000005 
+ 00031681  0x00008a5f call  0x00007ca9 
+ 00031682  0x00008a60 arg  0x00000806 , 0x00000011 
+ 00031683  0x00008a61 arg  0x00000786 , 0x00000012 
+ 00031684  0x00008a62 copy  0x00000012 , 0x00000005 
+ 00031685  0x00008a63 call  0x00007c7b 
+ 00031686  0x00008a64 ifetch  0x00000001 , 0x00000011 
+ 00031687  0x00008a65 iadd  0x00000013 , 0x00000013 
+ 00031688  0x00008a66 ifetch  0x00000001 , 0x00000012 
+ 00031689  0x00008a67 iadd  0x00000013 , 0x0000003f 
+ 00031690  0x00008a68 istore  0x00000001 , 0x00000012 
+ 00031691  0x00008a69 branch  0x00007bb1 
+ 00031692  0x00008a6b arg  0x000007e6 , 0x00000011 
+ 00031693  0x00008a6c arg  0x000007c6 , 0x00000012 
+ 00031694  0x00008a6d copy  0x00000011 , 0x00000005 
+ 00031695  0x00008a6e call  0x00007ca9 
+ 00031696  0x00008a6f arg  0x00000786 , 0x00000011 
+ 00031697  0x00008a70 arg  0x00000806 , 0x00000012 
+ 00031698  0x00008a71 copy  0x00000012 , 0x00000005 
+ 00031699  0x00008a72 call  0x00007c7b 
+ 00031700  0x00008a73 ifetch  0x00000001 , 0x00000011 
+ 00031701  0x00008a74 iadd  0x00000013 , 0x00000013 
+ 00031702  0x00008a75 ifetch  0x00000001 , 0x00000012 
+ 00031703  0x00008a76 iadd  0x00000013 , 0x0000003f 
+ 00031704  0x00008a77 istore  0x00000001 , 0x00000012 
+ 00031705  0x00008a78 branch  0x00007bb1 
+ 00031706  0x00008a7b arg  0x00000786 , 0x00000011 
+ 00031707  0x00008a7c copy  0x0000000b , 0x00000005 
+ 00031708  0x00008a7d call  0x00007c0a 
+ 00031709  0x00008a7f arg  0x0000091e , 0x00000011 
+ 00031710  0x00008a80 copy  0x0000000b , 0x00000012 
+ 00031711  0x00008a81 copy  0x0000000b , 0x00000005 
+ 00031712  0x00008a82 branch  0x00007c96 
+ 00031713  0x00008a86 copy  0x00000005 , 0x0000000b 
+ 00031714  0x00008a88 force  0x00000000 , 0x00000038 
+ 00031715  0x00008a8a arg  0x00000786 , 0x00000005 
+ 00031716  0x00008a8b call  0x00007ed2 
+ 00031717  0x00008a8c arg  0x00000ad2 , 0x00000005 
+ 00031718  0x00008a8d call  0x00007ed2 
+ 00031719  0x00008a91 copy  0x00000011 , 0x00000006 
+ 00031720  0x00008a93 jam  0x00000000 , 0x00000ad2 
+ 00031721  0x00008a94 setarg  0x00000000 
+ 00031722  0x00008a95 call  0x00007c73 
+ 00031723  0x00008a96 copy  0x00000012 , 0x00000006 
+ 00031724  0x00008a97 call  0x00007c77 
+ 00031725  0x00008a9a force  0x00000000 , 0x00000007 
+ 00031726  0x00008a9b arg  0x00000786 , 0x00000005 
+ 00031727  0x00008a9f arg  0x00000ad2 , 0x00000002 
+ 00031728  0x00008aa0 copy  0x00000007 , 0x00000012 
+ 00031729  0x00008aa1 lshift2  0x00000012 , 0x0000003f 
+ 00031730  0x00008aa3 iadd  0x00000002 , 0x00000012 
+ 00031731  0x00008aa4 force  0x00000000 , 0x00000002 
+ 00031732  0x00008aa5 force  0x00000000 , 0x00000013 
+ 00031733  0x00008aab ifetch  0x00000004 , 0x00000005 
+ 00031734  0x00008aac iforce  0x00000011 
+ 00031735  0x00008aaf ifetch  0x00000004 , 0x00000012 
+ 00031736  0x00008ab0 copy  0x00000013 , 0x00000038 
+ 00031737  0x00008ab1 imul32  0x0000002f , 0x0000003f 
+ 00031738  0x00008ab2 iadd  0x00000011 , 0x0000003f 
+ 00031739  0x00008ab3 iadd  0x00000002 , 0x0000003f 
+ 00031740  0x00008ab4 istore  0x00000004 , 0x00000005 
+ 00031741  0x00008ab5 rshift32  0x0000003f , 0x00000002 
+ 00031742  0x00008ab6 increase  0x00000001 , 0x00000013 
+ 00031743  0x00008ab7 compare  0x00000008 , 0x00000013 , 0x000000ff 
+ 00031744  0x00008ab8 nbranch  0x00007bf5 , 0x00000001 
+ 00031745  0x00008aba deposit  0x00000002 
+ 00031746  0x00008abb istore  0x00000004 , 0x00000005 
+ 00031747  0x00008abc increase  0xffffffe0 , 0x00000005 
+ 00031748  0x00008abf increase  0x00000001 , 0x00000007 
+ 00031749  0x00008ac0 compare  0x00000008 , 0x00000007 , 0x000000ff 
+ 00031750  0x00008ac1 nbranch  0x00007bef , 0x00000001 
+ 00031751  0x00008ac2 arg  0x00000786 , 0x00000011 
+ 00031752  0x00008ac3 copy  0x0000000b , 0x00000005 
+ 00031753  0x00008ac4 branch  0x00007c0a 
+ 00031754  0x00008ac7 bpatchx  0x000000f2 , 0x0000403e 
+ 00031755  0x00008ac8 copy  0x00000005 , 0x0000000b 
+ 00031756  0x00008ac9 copy  0x00000011 , 0x00000030 
+ 00031757  0x00008aca arg  0x000007c6 , 0x00000012 
+ 00031758  0x00008acb copy  0x00000012 , 0x00000005 
+ 00031759  0x00008acc call  0x00007ecd 
+ 00031760  0x00008acd istore  0x00000008 , 0x00000005 
+ 00031761  0x00008ace add  0x00000011 , 0x0000002c , 0x00000006 
+ 00031762  0x00008acf call  0x00007eb9 
+ 00031763  0x00008ad0 call  0x00007eb5 
+ 00031764  0x00008ad1 copy  0x00000012 , 0x00000011 
+ 00031765  0x00008ad2 call  0x00007c80 
+ 00031766  0x00008ad3 arg  0x000007c6 , 0x00000012 
+ 00031767  0x00008ad4 copy  0x00000030 , 0x00000011 
+ 00031768  0x00008ad5 copy  0x0000000b , 0x00000005 
+ 00031769  0x00008ad6 call  0x00007c7d 
+ 00031770  0x00008ad8 arg  0x000007c6 , 0x00000012 
+ 00031771  0x00008ad9 copy  0x00000012 , 0x00000005 
+ 00031772  0x00008ada call  0x00007ecd 
+ 00031773  0x00008adb istore  0x00000008 , 0x00000005 
+ 00031774  0x00008adc add  0x00000030 , 0x00000030 , 0x00000006 
+ 00031775  0x00008add call  0x00007ebf 
+ 00031776  0x00008ade call  0x00007ecd 
+ 00031777  0x00008adf copy  0x00000012 , 0x00000011 
+ 00031778  0x00008ae0 call  0x00007c80 
+ 00031779  0x00008ae4 arg  0x000007c6 , 0x00000012 
+ 00031780  0x00008ae5 copy  0x0000000b , 0x00000011 
+ 00031781  0x00008ae6 copy  0x00000011 , 0x00000005 
+ 00031782  0x00008ae7 call  0x00007c7d 
+ 00031783  0x00008aeb arg  0x000007c6 , 0x00000012 
+ 00031784  0x00008aec copy  0x00000012 , 0x00000005 
+ 00031785  0x00008aed add  0x00000030 , 0x00000020 , 0x00000006 
+ 00031786  0x00008aee call  0x00007eb5 
+ 00031787  0x00008aef call  0x00007ecd 
+ 00031788  0x00008af0 istore  0x00000008 , 0x00000005 
+ 00031789  0x00008af1 add  0x00000030 , 0x00000038 , 0x00000006 
+ 00031790  0x00008af2 call  0x00007eb9 
+ 00031791  0x00008af3 copy  0x0000000b , 0x00000011 
+ 00031792  0x00008af4 copy  0x00000011 , 0x00000005 
+ 00031793  0x00008af5 call  0x00007c7d 
+ 00031794  0x00008af9 arg  0x000007c6 , 0x00000012 
+ 00031795  0x00008afa copy  0x00000012 , 0x00000005 
+ 00031796  0x00008afb add  0x00000030 , 0x00000024 , 0x00000006 
+ 00031797  0x00008afc call  0x00007eb5 
+ 00031798  0x00008afd add  0x00000030 , 0x00000034 , 0x00000006 
+ 00031799  0x00008afe call  0x00007eb5 
+ 00031800  0x00008aff add  0x00000030 , 0x00000034 , 0x00000006 
+ 00031801  0x00008b00 call  0x00007eb6 
+ 00031802  0x00008b01 add  0x00000030 , 0x00000020 , 0x00000006 
+ 00031803  0x00008b02 call  0x00007eb6 
+ 00031804  0x00008b03 copy  0x0000000b , 0x00000011 
+ 00031805  0x00008b04 copy  0x00000011 , 0x00000005 
+ 00031806  0x00008b05 call  0x00007c7d 
+ 00031807  0x00008b08 arg  0x000007c6 , 0x00000012 
+ 00031808  0x00008b09 copy  0x00000012 , 0x00000005 
+ 00031809  0x00008b0a add  0x00000030 , 0x0000002c , 0x00000006 
+ 00031810  0x00008b0b call  0x00007eb5 
+ 00031811  0x00008b0c call  0x00007ecd 
+ 00031812  0x00008b0d istore  0x00000008 , 0x00000005 
+ 00031813  0x00008b0e add  0x00000030 , 0x00000020 , 0x00000006 
+ 00031814  0x00008b0f call  0x00007eb6 
+ 00031815  0x00008b10 add  0x00000030 , 0x00000028 , 0x00000006 
+ 00031816  0x00008b11 call  0x00007eb6 
+ 00031817  0x00008b12 copy  0x0000000b , 0x00000011 
+ 00031818  0x00008b13 copy  0x00000011 , 0x00000005 
+ 00031819  0x00008b14 call  0x00007c96 
+ 00031820  0x00008b17 arg  0x000007c6 , 0x00000012 
+ 00031821  0x00008b18 copy  0x00000012 , 0x00000005 
+ 00031822  0x00008b19 add  0x00000030 , 0x00000030 , 0x00000006 
+ 00031823  0x00008b1a call  0x00007eb9 
+ 00031824  0x00008b1b call  0x00007eb9 
+ 00031825  0x00008b1c force  0x00000000 , 0x0000003f 
+ 00031826  0x00008b1d istore  0x00000008 , 0x00000005 
+ 00031827  0x00008b1e add  0x00000030 , 0x00000024 , 0x00000006 
+ 00031828  0x00008b1f call  0x00007eb6 
+ 00031829  0x00008b20 add  0x00000030 , 0x0000002c , 0x00000006 
+ 00031830  0x00008b21 call  0x00007eb6 
+ 00031831  0x00008b22 copy  0x0000000b , 0x00000011 
+ 00031832  0x00008b23 copy  0x00000011 , 0x00000005 
+ 00031833  0x00008b24 call  0x00007c96 
+ 00031834  0x00008b27 arg  0x000007c6 , 0x00000012 
+ 00031835  0x00008b28 copy  0x00000012 , 0x00000005 
+ 00031836  0x00008b29 add  0x00000030 , 0x00000034 , 0x00000006 
+ 00031837  0x00008b2a call  0x00007eb5 
+ 00031838  0x00008b2b add  0x00000030 , 0x00000020 , 0x00000006 
+ 00031839  0x00008b2c call  0x00007eb5 
+ 00031840  0x00008b2d call  0x00007ecd 
+ 00031841  0x00008b2e add  0x00000030 , 0x00000030 , 0x00000006 
+ 00031842  0x00008b2f call  0x00007eb6 
+ 00031843  0x00008b30 copy  0x0000000b , 0x00000011 
+ 00031844  0x00008b31 copy  0x00000011 , 0x00000005 
+ 00031845  0x00008b32 call  0x00007c96 
+ 00031846  0x00008b35 arg  0x000007c6 , 0x00000012 
+ 00031847  0x00008b36 copy  0x00000012 , 0x00000005 
+ 00031848  0x00008b37 add  0x00000030 , 0x00000038 , 0x00000006 
+ 00031849  0x00008b38 call  0x00007eb9 
+ 00031850  0x00008b39 call  0x00007ecd 
+ 00031851  0x00008b3a add  0x00000030 , 0x00000024 , 0x00000006 
+ 00031852  0x00008b3b call  0x00007eb5 
+ 00031853  0x00008b3c call  0x00007ecd 
+ 00031854  0x00008b3d add  0x00000030 , 0x00000034 , 0x00000006 
+ 00031855  0x00008b3e call  0x00007eb6 
+ 00031856  0x00008b3f copy  0x0000000b , 0x00000011 
+ 00031857  0x00008b40 copy  0x00000011 , 0x00000005 
+ 00031858  0x00008b41 branch  0x00007c96 
+ 00031859  0x00008b45 force  0x00000020 , 0x00000039 
+ 00031860  0x00008b46 arg  0x00000ad2 , 0x00000005 
+ 00031861  0x00008b47 iadd  0x00000005 , 0x00000005 
+ 00031862  0x00008b48 branch  0x00007f01 
+ 00031863  0x00008b4b force  0x00000008 , 0x00000039 
+ 00031864  0x00008b4c branch  0x00007781 
+ 00031865  0x00008b4f copy  0x00000011 , 0x00000012 
+ 00031866  0x00008b50 branch  0x00007be1 
+ 00031867  0x00008b53 force  0x00000008 , 0x00000039 
+ 00031868  0x00008b54 branch  0x00007712 
+ 00031869  0x00008b57 call  0x00007c7b 
+ 00031870  0x00008b58 copy  0x00000005 , 0x00000011 
+ 00031871  0x00008b59 branch  0x00007c81 
+ 00031872  0x00008b5c call  0x00007cae 
+ 00031873  0x00008b5e isolate1  0x00000000 , 0x00000013 
+ 00031874  0x00008b5f branch  0x00007c8a , 0x00000001 
+ 00031875  0x00008b60 arg  0x0000091e , 0x00000012 
+ 00031876  0x00008b61 copy  0x00000011 , 0x00000013 
+ 00031877  0x00008b62 increase  0xffffffe0 , 0x00000011 
+ 00031878  0x00008b63 call  0x00007cb1 
+ 00031879  0x00008b64 nrtn  0x00000002 
+ 00031880  0x00008b65 copy  0x00000013 , 0x00000011 
+ 00031881  0x00008b66 branch  0x00007c92 
+ 00031882  0x00008b69 call  0x00007c92 
+ 00031883  0x00008b6b copy  0x00000011 , 0x00000013 
+ 00031884  0x00008b6c increase  0xffffffe0 , 0x00000011 
+ 00031885  0x00008b6d arg  0x0000091e , 0x00000012 
+ 00031886  0x00008b6e call  0x00007cb1 
+ 00031887  0x00008b6f nrtn  0x00000002 
+ 00031888  0x00008b70 copy  0x00000013 , 0x00000011 
+ 00031889  0x00008b71 branch  0x00007c92 
+ 00031890  0x00008b75 increase  0xffffffe0 , 0x00000011 
+ 00031891  0x00008b76 arg  0x0000091e , 0x00000012 
+ 00031892  0x00008b77 copy  0x00000011 , 0x00000005 
+ 00031893  0x00008b78 branch  0x00007ca9 
+ 00031894  0x00008b7e call  0x00007ca9 
+ 00031895  0x00008b80 branch  0x00007ca0 , 0x00000001 
+ 00031896  0x00008b83 add  0x00000005 , 0xffffffe0 , 0x00000011 
+ 00031897  0x00008b84 arg  0x0000091e , 0x00000012 
+ 00031898  0x00008b85 call  0x00007cb1 
+ 00031899  0x00008b86 nrtn  0x00000002 
+ 00031900  0x00008b87 arg  0x0000091e , 0x00000012 
+ 00031901  0x00008b88 add  0x00000005 , 0xffffffe0 , 0x00000011 
+ 00031902  0x00008b8a copy  0x00000011 , 0x00000005 
+ 00031903  0x00008b8b branch  0x00007ca9 
+ 00031904  0x00008b8d add  0x00000005 , 0xffffffe0 , 0x00000011 
+ 00031905  0x00008b8e arg  0x0000091e , 0x00000012 
+ 00031906  0x00008b8f copy  0x00000011 , 0x00000005 
+ 00031907  0x00008b90 call  0x00007c7b 
+ 00031908  0x00008b92 rtn  0x00000001 
+ 00031909  0x00008b93 add  0x00000005 , 0xffffffe0 , 0x00000011 
+ 00031910  0x00008b94 arg  0x0000091e , 0x00000012 
+ 00031911  0x00008b95 copy  0x00000011 , 0x00000005 
+ 00031912  0x00008b96 branch  0x00007c7b 
+ 00031913  0x00008b9b force  0x00000008 , 0x00000039 
+ 00031914  0x00008b9c branch  0x00007720 
+ 00031915  0x00008b9f force  0x00000008 , 0x00000039 
+ 00031916  0x00008ba0 increase  0x0000001c , 0x00000011 
+ 00031917  0x00008ba1 branch  0x0000772f 
+ 00031918  0x00008ba4 force  0x00000008 , 0x00000039 
+ 00031919  0x00008ba5 force  0x00000000 , 0x00000013 
+ 00031920  0x00008ba6 branch  0x0000773d 
+ 00031921  0x00008ba9 force  0x00000008 , 0x00000039 
+ 00031922  0x00008baa increase  0x0000001c , 0x00000011 
+ 00031923  0x00008bab increase  0x0000001c , 0x00000012 
+ 00031924  0x00008bac branch  0x00007707 
+ 00031925  0x00008bb0 ifetch  0x00000008 , 0x00000006 
+ 00031926  0x00008bb1 nrtn  0x00000034 
+ 00031927  0x00008bb2 branch  0x000076f5 
+ 00031928  0x00008bb8 copy  0x00000011 , 0x00000030 
+ 00031929  0x00008bba copy  0x00000030 , 0x00000011 
+ 00031930  0x00008bbb ifetch  0x00000001 , 0x00000011 
+ 00031931  0x00008bbc isolate1  0x00000000 , 0x0000003f 
+ 00031932  0x00008bbd rtn  0x00000001 
+ 00031933  0x00008bbe call  0x00007cab 
+ 00031934  0x00008bbf ifetch  0x00000001 , 0x00000012 
+ 00031935  0x00008bc0 isolate0  0x00000000 , 0x0000003f 
+ 00031936  0x00008bc1 branch  0x00007cc8 , 0x00000001 
+ 00031937  0x00008bc2 arg  0x0000091e , 0x00000011 
+ 00031938  0x00008bc3 copy  0x00000012 , 0x00000005 
+ 00031939  0x00008bc4 call  0x00007c7b 
+ 00031940  0x00008bc5 ifetch  0x00000001 , 0x00000012 
+ 00031941  0x00008bc6 iadd  0x00000013 , 0x0000003f 
+ 00031942  0x00008bc7 istore  0x00000001 , 0x00000012 
+ 00031943  0x00008bc8 increase  0xffffffe0 , 0x00000012 
+ 00031944  0x00008bca add  0x00000012 , 0x00000020 , 0x00000011 
+ 00031945  0x00008bcb force  0x00000009 , 0x00000039 
+ 00031946  0x00008bcc call  0x0000772f 
+ 00031947  0x00008bcd branch  0x00007cb9 
+ 00031948  0x00008bd2 call  0x00002c65 
+ 00031949  0x00008bd3 rtn  0x0000002b 
+ 00031950  0x00008bd4 call  0x00007cd3 
+ 00031951  0x00008bd5 call  0x00007d75 
+ 00031952  0x00008bd6 branch  0x00007d08 
+ 00031953  0x00008bd9 call  0x00007d29 
+ 00031954  0x00008bdb branch  0x00007d64 
+ 00031955  0x00008bde fetch  0x00000001 , 0x00004686 
+ 00031956  0x00008bdf rtneq  0x000000ff 
+ 00031957  0x00008be0 iforce  0x00000002 
+ 00031958  0x00008be1 call  0x0000680e 
+ 00031959  0x00008be2 fetcht  0x00000001 , 0x00004686 
+ 00031960  0x00008be3 call  0x00006825 
+ 00031961  0x00008be4 nop  0x00000064 
+ 00031962  0x00008be5 fetcht  0x00000001 , 0x00004686 
+ 00031963  0x00008be6 call  0x000067fb 
+ 00031964  0x00008be7 branch  0x00007cdd 
+ 00031965  0x00008bec bpatchx  0x000000f3 , 0x0000403e 
+ 00031966  0x00008bed fetch  0x00000001 , 0x00004686 
+ 00031967  0x00008bee rtneq  0x000000ff 
+ 00031968  0x00008bef copy  0x0000003f , 0x00000002 
+ 00031969  0x00008bf0 call  0x0000681d 
+ 00031970  0x00008bf1 nbranch  0x00007cef , 0x00000001 
+ 00031971  0x00008bf4 call  0x00007cf9 
+ 00031972  0x00008bf5 fetch  0x00000002 , 0x00004682 
+ 00031973  0x00008bf6 set1  0x0000000c 
+ 00031974  0x00008bf7 store  0x00000002 , 0x00004682 
+ 00031975  0x00008bf8 fetch  0x00000001 , 0x00004679 
+ 00031976  0x00008bf9 rtneq  0x00000000 
+ 00031977  0x00008bfa jam  0x00000000 , 0x00004679 
+ 00031978  0x00008bfc fetch  0x00000001 , 0x00004685 
+ 00031979  0x00008bfd store  0x00000001 , 0x00004678 
+ 00031980  0x00008bfe call  0x00007d00 
+ 00031981  0x00008bff jam  0x0000002c , 0x00000a99 
+ 00031982  0x00008c00 branch  0x00007d86 
+ 00031983  0x00008c02 fetch  0x00000002 , 0x00004682 
+ 00031984  0x00008c03 set0  0x0000000c 
+ 00031985  0x00008c04 store  0x00000002 , 0x00004682 
+ 00031986  0x00008c05 fetch  0x00000001 , 0x00004679 
+ 00031987  0x00008c06 rtneq  0x00000001 
+ 00031988  0x00008c07 jam  0x00000001 , 0x00004679 
+ 00031989  0x00008c09 jam  0x00000000 , 0x00004678 
+ 00031990  0x00008c0a call  0x00007d02 
+ 00031991  0x00008c0b jam  0x0000002d , 0x00000a99 
+ 00031992  0x00008c0c branch  0x00007d86 
+ 00031993  0x00008c0f fetch  0x00000001 , 0x00004678 
+ 00031994  0x00008c10 rtn  0x00000034 
+ 00031995  0x00008c11 increase  0xffffffff , 0x0000003f 
+ 00031996  0x00008c12 store  0x00000001 , 0x00004678 
+ 00031997  0x00008c13 nrtn  0x00000034 
+ 00031998  0x00008c15 jam  0x00000010 , 0x00000a99 
+ 00031999  0x00008c16 branch  0x00007d86 
+ 00032000  0x00008c19 arg  0x00000007 , 0x00000007 
+ 00032001  0x00008c1a branch  0x00002c32 
+ 00032002  0x00008c1d arg  0x00000007 , 0x00000007 
+ 00032003  0x00008c1e branch  0x00002c36 
+ 00032004  0x00008c35 fetch  0x00000002 , 0x0000421b 
+ 00032005  0x00008c36 mul32  0x00000011 , 0x0000000b , 0x00000012 
+ 00032006  0x00008c37 iadd  0x00000012 , 0x00000012 
+ 00032007  0x00008c38 rtn 
+ 00032008  0x00008c3c fetch  0x00000001 , 0x0000421a 
+ 00032009  0x00008c3d rtn  0x00000034 
+ 00032010  0x00008c3e copy  0x0000003f , 0x00000039 
+ 00032011  0x00008c3f fetch  0x00000002 , 0x0000421b 
+ 00032012  0x00008c40 copy  0x0000003f , 0x00000012 
+ 00032013  0x00008c42 add  0x00000012 , 0x00000002 , 0x00000013 
+ 00032014  0x00008c43 ifetcht  0x00000001 , 0x00000013 
+ 00032015  0x00008c44 call  0x0000680e 
+ 00032016  0x00008c45 call  0x00007d32 
+ 00032017  0x00008c46 increase  0x0000000b , 0x00000012 
+ 00032018  0x00008c47 loop  0x00007d0d 
+ 00032019  0x00008c48 rtn 
+ 00032020  0x00008c4d call  0x00007d04 
+ 00032021  0x00008c4e setarg  0x00000002 
+ 00032022  0x00008c4f istore  0x00000001 , 0x00000012 
+ 00032023  0x00008c50 call  0x00007d5e 
+ 00032024  0x00008c51 branch  0x00007d35 
+ 00032025  0x00008c57 call  0x00007d04 
+ 00032026  0x00008c58 setarg  0x00000003 
+ 00032027  0x00008c59 istore  0x00000001 , 0x00000012 
+ 00032028  0x00008c5a call  0x00007d5e 
+ 00032029  0x00008c5b branch  0x00007d32 
+ 00032030  0x00008c60 call  0x00007d04 
+ 00032031  0x00008c61 setarg  0x00000001 
+ 00032032  0x00008c62 istore  0x00000001 , 0x00000012 
+ 00032033  0x00008c63 setarg  0x000000ff 
+ 00032034  0x00008c64 istore  0x00000001 , 0x00000005 
+ 00032035  0x00008c65 branch  0x00007d32 
+ 00032036  0x00008c6b call  0x00007d04 
+ 00032037  0x00008c6c arg  0x0000000b , 0x00000039 
+ 00032038  0x00008c6d copy  0x00000013 , 0x00000006 
+ 00032039  0x00008c6e copy  0x00000012 , 0x00000005 
+ 00032040  0x00008c6f branch  0x00007ef4 
+ 00032041  0x00008c74 fetch  0x00000001 , 0x0000421a 
+ 00032042  0x00008c75 rtn  0x00000034 
+ 00032043  0x00008c76 arg  0x00000000 , 0x00000011 
+ 00032044  0x00008c78 call  0x00007d38 
+ 00032045  0x00008c79 increase  0x00000001 , 0x00000011 
+ 00032046  0x00008c7a fetch  0x00000001 , 0x0000421a 
+ 00032047  0x00008c7b isub  0x00000011 , 0x0000003e 
+ 00032048  0x00008c7c rtn  0x00000005 
+ 00032049  0x00008c7d branch  0x00007d2c 
+ 00032050  0x00008c81 add  0x00000012 , 0x00000002 , 0x00000013 
+ 00032051  0x00008c82 ifetcht  0x00000001 , 0x00000013 
+ 00032052  0x00008c83 branch  0x00006825 
+ 00032053  0x00008c87 add  0x00000012 , 0x00000002 , 0x00000013 
+ 00032054  0x00008c88 ifetcht  0x00000001 , 0x00000013 
+ 00032055  0x00008c89 branch  0x00006829 
+ 00032056  0x00008c8e add  0x00000011 , 0x0000000b , 0x00000007 
+ 00032057  0x00008c8f call  0x00007f16 
+ 00032058  0x00008c90 nrtn  0x00000034 
+ 00032059  0x00008c92 call  0x00007d04 
+ 00032060  0x00008c94 ifetch  0x00000001 , 0x00000012 
+ 00032061  0x00008c96 beq  0x00000002 , 0x00007d35 
+ 00032062  0x00008c97 beq  0x00000003 , 0x00007d32 
+ 00032063  0x00008c98 beq  0x00000000 , 0x00007d32 
+ 00032064  0x00008c99 beq  0x00000005 , 0x00007d4c 
+ 00032065  0x00008c9b call  0x00007d35 
+ 00032066  0x00008c9c add  0x00000012 , 0x00000007 , 0x00000013 
+ 00032067  0x00008c9d call  0x00007e7c 
+ 00032068  0x00008c9e ifetch  0x00000002 , 0x00000013 
+ 00032069  0x00008c9f call  0x00007f9c 
+ 00032070  0x00008ca0 call  0x00007e8c 
+ 00032071  0x00008ca1 setarg  0x00000005 
+ 00032072  0x00008ca2 istore  0x00000001 , 0x00000012 
+ 00032073  0x00008ca3 add  0x00000012 , 0x00000003 , 0x00000013 
+ 00032074  0x00008ca4 ifetch  0x00000002 , 0x00000013 
+ 00032075  0x00008ca5 branch  0x00007d5c 
+ 00032076  0x00008ca9 call  0x00007d32 
+ 00032077  0x00008caa add  0x00000012 , 0x00000009 , 0x00000013 
+ 00032078  0x00008cab call  0x00007e7c 
+ 00032079  0x00008cac ifetch  0x00000002 , 0x00000013 
+ 00032080  0x00008cad call  0x00007f9c 
+ 00032081  0x00008cae call  0x00007e8c 
+ 00032082  0x00008cb0 add  0x00000012 , 0x00000001 , 0x00000013 
+ 00032083  0x00008cb1 ifetch  0x00000001 , 0x00000013 
+ 00032084  0x00008cb2 beq  0x000000ff , 0x00007d58 
+ 00032085  0x00008cb3 increase  0xffffffff , 0x0000003f 
+ 00032086  0x00008cb4 istore  0x00000001 , 0x00000013 
+ 00032087  0x00008cb5 branch  0x00007d19 , 0x00000034 
+ 00032088  0x00008cb7 setarg  0x00000004 
+ 00032089  0x00008cb8 istore  0x00000001 , 0x00000012 
+ 00032090  0x00008cb9 add  0x00000012 , 0x00000005 , 0x00000013 
+ 00032091  0x00008cba ifetch  0x00000002 , 0x00000013 
+ 00032092  0x00008cbc add  0x00000011 , 0x0000000b , 0x00000007 
+ 00032093  0x00008cbd branch  0x00007f08 
+ 00032094  0x00008cc0 setarg  0x00000000 
+ 00032095  0x00008cc1 branch  0x00007d5c 
+ 00032096  0x00008cc8 setarg  0x00001000 
+ 00032097  0x00008cc9 lshift16  0x0000003f , 0x0000003f 
+ 00032098  0x00008cca iadd  0x00000012 , 0x00000012 
+ 00032099  0x00008ccb rtn 
+ 00032100  0x00008cce bpatchx  0x000000f4 , 0x0000403e 
+ 00032101  0x00008ccf arg  0x00000000 , 0x00000011 
+ 00032102  0x00008cd0 fetcht  0x00000004 , 0x0000467a 
+ 00032103  0x00008cd1 copy  0x00000022 , 0x00000012 
+ 00032104  0x00008cd2 copy  0x00000012 , 0x0000003f 
+ 00032105  0x00008cd3 isub  0x00000002 , 0x0000003e 
+ 00032106  0x00008cd4 ncall  0x00007d60 , 0x00000002 
+ 00032107  0x00008cd7 copy  0x00000012 , 0x0000003f 
+ 00032108  0x00008cd8 increase  0x000000a0 , 0x00000002 
+ 00032109  0x00008cd9 increase  0x000000a0 , 0x00000002 
+ 00032110  0x00008cda isub  0x00000002 , 0x0000003e 
+ 00032111  0x00008cdb nbranch  0x00007d78 , 0x00000002 
+ 00032112  0x00008cdc increase  0x00000001 , 0x00000011 
+ 00032113  0x00008cdd and  0x00000011 , 0x0000000f , 0x0000003f 
+ 00032114  0x00008cde nbranch  0x00007d6b , 0x00000034 
+ 00032115  0x00008cdf arg  0x00000000 , 0x00000011 
+ 00032116  0x00008ce0 call  0x00007d7f 
+ 00032117  0x00008ce2 copy  0x00000022 , 0x0000003f 
+ 00032118  0x00008ce3 store  0x00000004 , 0x0000467a 
+ 00032119  0x00008ce4 rtn 
+ 00032120  0x00008ce6 bpatchx  0x000000f5 , 0x0000403e 
+ 00032121  0x00008ce7 copy  0x00000011 , 0x0000003f 
+ 00032122  0x00008ce8 rtn  0x00000034 
+ 00032123  0x00008ce9 increase  0xffffff60 , 0x00000002 
+ 00032124  0x00008cea increase  0xffffff60 , 0x00000002 
+ 00032125  0x00008ceb set0  0x0000001c , 0x00000002 
+ 00032126  0x00008cec storet  0x00000004 , 0x0000467a 
+ 00032127  0x00008cee branch  0x0000335f 
+ 00032128  0x00008cf6 jam  0x00000001 , 0x00004666 
+ 00032129  0x00008cf8 fetch  0x00000001 , 0x00004667 
+ 00032130  0x00008cf9 nbranch  0x00007d81 , 0x00000034 
+ 00032131  0x00008cfa rtn 
+ 00032132  0x00008cfd jam  0x00000000 , 0x00004666 
+ 00032133  0x00008cfe rtn 
+ 00032134  0x00008d03 bpatchx  0x000000f6 , 0x0000403e 
+ 00032135  0x00008d04 call  0x00007d80 
+ 00032136  0x00008d05 copy  0x00000011 , 0x0000003f 
+ 00032137  0x00008d06 store  0x00000004 , 0x00000a91 
+ 00032138  0x00008d07 arg  0x00004668 , 0x00000011 
+ 00032139  0x00008d08 call  0x00007fb8 
+ 00032140  0x00008d09 fetch  0x00000004 , 0x00000a91 
+ 00032141  0x00008d0a copy  0x0000003f , 0x00000011 
+ 00032142  0x00008d0b branch  0x00007d84 
+ 00032143  0x00008d0e bpatchx  0x000000f7 , 0x0000403e 
+ 00032144  0x00008d0f call  0x00007d80 
+ 00032145  0x00008d10 copy  0x00000011 , 0x0000003f 
+ 00032146  0x00008d11 store  0x00000004 , 0x00000a91 
+ 00032147  0x00008d12 arg  0x00004670 , 0x00000011 
+ 00032148  0x00008d13 call  0x00007fb8 
+ 00032149  0x00008d14 fetch  0x00000004 , 0x00000a91 
+ 00032150  0x00008d15 copy  0x0000003f , 0x00000011 
+ 00032151  0x00008d16 branch  0x00007d84 
+ 00032152  0x00008d19 setarg  0x00000000 
+ 00032153  0x00008d1a store  0x00000008 , 0x00004670 
+ 00032154  0x00008d1b store  0x00000008 , 0x00004668 
+ 00032155  0x00008d1c rtn 
+ 00032156  0x00008d1f bpatchx  0x000000f8 , 0x0000403f 
+ 00032157  0x00008d20 fetch  0x00000001 , 0x000041ce 
+ 00032158  0x00008d21 nrtn  0x00000034 
+ 00032159  0x00008d22 arg  0x00004670 , 0x00000011 
+ 00032160  0x00008d23 call  0x00007fd0 
+ 00032161  0x00008d24 rtn  0x00000034 
+ 00032162  0x00008d25 jam  0x00000000 , 0x00000a90 
+ 00032163  0x00008d26 call  0x00007da7 
+ 00032164  0x00008d27 fetch  0x00000001 , 0x00000a90 
+ 00032165  0x00008d28 branch  0x00007d9c , 0x00000034 
+ 00032166  0x00008d29 rtn 
+ 00032167  0x00008d2c call  0x00007d80 
+ 00032168  0x00008d2d arg  0x00004670 , 0x00000011 
+ 00032169  0x00008d2e call  0x00007fc4 
+ 00032170  0x00008d2f copy  0x0000003f , 0x00000002 
+ 00032171  0x00008d30 call  0x00007d84 
+ 00032172  0x00008d31 bpatchx  0x000000f9 , 0x0000403f 
+ 00032173  0x00008d32 copy  0x00000002 , 0x0000003f 
+ 00032174  0x00008d33 rtn  0x00000034 
+ 00032175  0x00008d34 beq  0x00000001 , 0x00007ddd 
+ 00032176  0x00008d35 beq  0x00000002 , 0x00007de2 
+ 00032177  0x00008d36 beq  0x00000003 , 0x00007de8 
+ 00032178  0x00008d37 beq  0x00000007 , 0x00007ded 
+ 00032179  0x00008d38 beq  0x00000008 , 0x00007dee 
+ 00032180  0x00008d39 beq  0x00000009 , 0x00007def 
+ 00032181  0x00008d3a beq  0x0000000b , 0x00007df2 
+ 00032182  0x00008d3b beq  0x0000000c , 0x00007df3 
+ 00032183  0x00008d3c beq  0x0000000d , 0x00007df4 
+ 00032184  0x00008d3d beq  0x0000000e , 0x00007dfa 
+ 00032185  0x00008d3e beq  0x0000000f , 0x00007dff 
+ 00032186  0x00008d3f beq  0x00000010 , 0x00007e05 
+ 00032187  0x00008d40 beq  0x00000013 , 0x00007e0f 
+ 00032188  0x00008d41 beq  0x00000014 , 0x00007e11 
+ 00032189  0x00008d42 beq  0x00000015 , 0x00007e13 
+ 00032190  0x00008d43 beq  0x00000016 , 0x00007e15 
+ 00032191  0x00008d44 beq  0x00000017 , 0x00007e18 
+ 00032192  0x00008d45 beq  0x00000018 , 0x00007e1a 
+ 00032193  0x00008d46 beq  0x00000019 , 0x00007e1d 
+ 00032194  0x00008d47 beq  0x0000001b , 0x00007e25 
+ 00032195  0x00008d48 beq  0x0000001e , 0x00007e2f 
+ 00032196  0x00008d4a store  0x00000001 , 0x00000a99 
+ 00032197  0x00008d4b bpatchx  0x000000fa , 0x0000403f 
+ 00032198  0x00008d4c call  0x000062bc 
+ 00032199  0x00008d4d nbranch  0x00007ddb , 0x00000034 
+ 00032200  0x00008d4f fetch  0x00000001 , 0x00000a99 
+ 00032201  0x00008d50 bmark0  0x00000009 , 0x00007dd6 
+ 00032202  0x00008d51 beq  0x00000004 , 0x00007dea 
+ 00032203  0x00008d52 beq  0x00000005 , 0x00004d17 
+ 00032204  0x00008d53 beq  0x00000006 , 0x00004d26 
+ 00032205  0x00008d54 beq  0x0000000a , 0x00007df0 
+ 00032206  0x00008d55 beq  0x00000011 , 0x00007e0a 
+ 00032207  0x00008d56 beq  0x00000012 , 0x00007e0e 
+ 00032208  0x00008d57 beq  0x0000001d , 0x00007e26 
+ 00032209  0x00008d58 beq  0x0000001f , 0x000067cc 
+ 00032210  0x00008d59 beq  0x00000020 , 0x000067d0 
+ 00032211  0x00008d5a beq  0x00000021 , 0x00007e31 
+ 00032212  0x00008d5b beq  0x00000025 , 0x0000670b 
+ 00032213  0x00008d5c rtn 
+ 00032214  0x00008d5f store  0x00000001 , 0x00000a99 
+ 00032215  0x00008d60 call  0x00002252 
+ 00032216  0x00008d61 branch  0x00007ddb , 0x00000005 
+ 00032217  0x00008d62 call  0x0000225a 
+ 00032218  0x00008d63 nrtn  0x00000005 
+ 00032219  0x00008d65 jam  0x00000001 , 0x00000a90 
+ 00032220  0x00008d66 branch  0x00007d8f 
+ 00032221  0x00008d6c fetch  0x00000002 , 0x00004682 
+ 00032222  0x00008d6d set1  0x00000006 
+ 00032223  0x00008d6e store  0x00000002 , 0x00004682 
+ 00032224  0x00008d6f jam  0x00000003 , 0x00004093 
+ 00032225  0x00008d70 rtn 
+ 00032226  0x00008d75 jam  0x00000000 , 0x00004680 
+ 00032227  0x00008d76 jam  0x00000000 , 0x00004093 
+ 00032228  0x00008d77 fetch  0x00000002 , 0x00004682 
+ 00032229  0x00008d78 set0  0x00000006 
+ 00032230  0x00008d79 store  0x00000002 , 0x00004682 
+ 00032231  0x00008d7a rtn 
+ 00032232  0x00008d7f jam  0x00000005 , 0x000041ce 
+ 00032233  0x00008d80 rtn 
+ 00032234  0x00008d85 jam  0x00000007 , 0x0000007c 
+ 00032235  0x00008d86 jam  0x00000013 , 0x000004ca 
+ 00032236  0x00008d87 rtn 
+ 00032237  0x00008d8c rtn 
+ 00032238  0x00008d91 rtn 
+ 00032239  0x00008d96 rtn 
+ 00032240  0x00008d9b jam  0x00000002 , 0x000004d4 
+ 00032241  0x00008d9c branch  0x00004d0a 
+ 00032242  0x00008da1 rtn 
+ 00032243  0x00008da6 rtn 
+ 00032244  0x00008dab jam  0x00000001 , 0x0000436e 
+ 00032245  0x00008dac jam  0x00000000 , 0x00004484 
+ 00032246  0x00008dad fetch  0x00000002 , 0x00004682 
+ 00032247  0x00008dae set1  0x0000000b , 0x0000003f 
+ 00032248  0x00008daf store  0x00000002 , 0x00004682 
+ 00032249  0x00008db0 rtn 
+ 00032250  0x00008db5 fetch  0x00000002 , 0x00004682 
+ 00032251  0x00008db6 set0  0x0000000b , 0x0000003f 
+ 00032252  0x00008db7 store  0x00000002 , 0x00004682 
+ 00032253  0x00008db8 jam  0x00000000 , 0x0000436e 
+ 00032254  0x00008db9 rtn 
+ 00032255  0x00008dbe jam  0x00000001 , 0x0000436e 
+ 00032256  0x00008dbf jam  0x00000001 , 0x00004484 
+ 00032257  0x00008dc0 fetch  0x00000002 , 0x00004682 
+ 00032258  0x00008dc1 set1  0x0000000b , 0x0000003f 
+ 00032259  0x00008dc2 store  0x00000002 , 0x00004682 
+ 00032260  0x00008dc3 rtn 
+ 00032261  0x00008dc8 fetch  0x00000002 , 0x00004682 
+ 00032262  0x00008dc9 set0  0x0000000b , 0x0000003f 
+ 00032263  0x00008dca store  0x00000002 , 0x00004682 
+ 00032264  0x00008dcb jam  0x00000000 , 0x0000436e 
+ 00032265  0x00008dcc rtn 
+ 00032266  0x00008dd1 setarg  0x00000014 
+ 00032267  0x00008dd2 store  0x00000002 , 0x0000046d 
+ 00032268  0x00008dd3 store  0x00000002 , 0x000044ba 
+ 00032269  0x00008dd4 branch  0x00005c92 
+ 00032270  0x00008dd9 branch  0x00005abf 
+ 00032271  0x00008dde arg  0x00000000 , 0x00000011 
+ 00032272  0x00008ddf branch  0x00007d19 
+ 00032273  0x00008de4 arg  0x00000000 , 0x00000011 
+ 00032274  0x00008de5 branch  0x00007d14 
+ 00032275  0x00008dea arg  0x00000000 , 0x00000011 
+ 00032276  0x00008deb branch  0x00007d1e 
+ 00032277  0x00008df0 jam  0x00000001 , 0x00004369 
+ 00032278  0x00008df1 jam  0x0000001b , 0x000041ce 
+ 00032279  0x00008df4 rtn 
+ 00032280  0x00008df9 jam  0x00000001 , 0x00004369 
+ 00032281  0x00008dfa rtn 
+ 00032282  0x00008dff jam  0x00000000 , 0x00004369 
+ 00032283  0x00008e00 jam  0x00000000 , 0x000041ce 
+ 00032284  0x00008e01 rtn 
+ 00032285  0x00008e06 fetch  0x00000002 , 0x000041eb 
+ 00032286  0x00008e07 call  0x00007f9c 
+ 00032287  0x00008e08 fetch  0x00000001 , 0x00004686 
+ 00032288  0x00008e09 beq  0x000000ff , 0x00007e23 
+ 00032289  0x00008e0a copy  0x0000003f , 0x00000002 
+ 00032290  0x00008e0b call  0x000067fb 
+ 00032291  0x00008e0d call  0x00007d98 
+ 00032292  0x00008e0e branch  0x00002b1f 
+ 00032293  0x00008e13 branch  0x00005b02 
+ 00032294  0x00008e18 jam  0x00000034 , 0x0000007c 
+ 00032295  0x00008e19 set1  0x00000003 , 0x00000000 
+ 00032296  0x00008e1a nrtn  0x00000029 
+ 00032297  0x00008e1b jam  0x00000000 , 0x0000455b 
+ 00032298  0x00008e1c jam  0x00000013 , 0x0000007c 
+ 00032299  0x00008e1d fetch  0x00000001 , 0x0000016d 
+ 00032300  0x00008e1e set0  0x00000002 , 0x0000003f 
+ 00032301  0x00008e1f store  0x00000001 , 0x0000016d 
+ 00032302  0x00008e20 rtn 
+ 00032303  0x00008e25 force  0x00000003 , 0x00000007 
+ 00032304  0x00008e26 branch  0x00007f07 
+ 00032305  0x00008e2b call  0x000062f8 
+ 00032306  0x00008e2c jam  0x00000041 , 0x0000007d 
+ 00032307  0x00008e2d branch  0x00005f9d 
+ 00032308  0x00008e31 fetch  0x00000001 , 0x00004682 
+ 00032309  0x00008e32 rtnbit0  0x0000000c 
+ 00032310  0x00008e33 rtnbit0  0x00000007 
+ 00032311  0x00008e34 branch  0x00007e2f 
+ 00032312  0x00008e3a fetch  0x00000002 , 0x00004218 
+ 00032313  0x00008e3b add  0x0000003f , 0x00000002 , 0x00000005 
+ 00032314  0x00008e3c setarg  0x00000000 
+ 00032315  0x00008e3d istore  0x00000003 , 0x00000005 
+ 00032316  0x00008e3e rtn 
+ 00032317  0x00008e43 call  0x00007fe9 
+ 00032318  0x00008e44 call  0x00007e69 
+ 00032319  0x00008e45 rtn  0x00000034 
+ 00032320  0x00008e46 fetch  0x00000002 , 0x00004218 
+ 00032321  0x00008e47 add  0x0000003f , 0x00000002 , 0x00000012 
+ 00032322  0x00008e48 ifetcht  0x00000001 , 0x00000012 
+ 00032323  0x00008e49 increase  0x00000001 , 0x00000002 
+ 00032324  0x00008e4a istoret  0x00000001 , 0x00000012 
+ 00032325  0x00008e4c ifetcht  0x00000001 , 0x0000003f 
+ 00032326  0x00008e4d copy  0x00000002 , 0x00000039 
+ 00032327  0x00008e4e add  0x0000003f , 0x00000004 , 0x00000012 
+ 00032328  0x00008e4f ifetch  0x00000001 , 0x00000012 
+ 00032329  0x00008e50 imul32  0x00000002 , 0x0000003f 
+ 00032330  0x00008e51 iadd  0x00000006 , 0x00000005 
+ 00032331  0x00008e52 copy  0x00000011 , 0x00000006 
+ 00032332  0x00008e54 call  0x00007f01 
+ 00032333  0x00008e55 call  0x00007e6d 
+ 00032334  0x00008e56 pincrease  0xffffffff 
+ 00032335  0x00008e57 ifetcht  0x00000001 , 0x00000012 
+ 00032336  0x00008e58 increase  0x00000001 , 0x00000002 
+ 00032337  0x00008e59 iand  0x00000002 , 0x00000002 
+ 00032338  0x00008e5a istoret  0x00000001 , 0x00000012 
+ 00032339  0x00008e5b branch  0x00007fe7 
+ 00032340  0x00008e61 call  0x00007fe9 
+ 00032341  0x00008e62 call  0x00007e65 
+ 00032342  0x00008e63 rtn  0x00000034 
+ 00032343  0x00008e64 fetch  0x00000002 , 0x00004218 
+ 00032344  0x00008e65 add  0x0000003f , 0x00000002 , 0x00000012 
+ 00032345  0x00008e66 ifetcht  0x00000001 , 0x00000012 
+ 00032346  0x00008e67 increase  0xffffffff , 0x00000002 
+ 00032347  0x00008e68 istoret  0x00000001 , 0x00000012 
+ 00032348  0x00008e69 ifetcht  0x00000001 , 0x0000003f 
+ 00032349  0x00008e6a copy  0x00000002 , 0x00000039 
+ 00032350  0x00008e6b add  0x0000003f , 0x00000003 , 0x00000012 
+ 00032351  0x00008e6c ifetch  0x00000001 , 0x00000012 
+ 00032352  0x00008e6d imul32  0x00000002 , 0x0000003f 
+ 00032353  0x00008e6e iadd  0x00000006 , 0x00000006 
+ 00032354  0x00008e6f increase  0x00000001 , 0x00000006 
+ 00032355  0x00008e70 copy  0x00000011 , 0x00000005 
+ 00032356  0x00008e71 branch  0x00007e4c 
+ 00032357  0x00008e76 fetch  0x00000002 , 0x00004218 
+ 00032358  0x00008e77 add  0x0000003f , 0x00000002 , 0x00000006 
+ 00032359  0x00008e78 ifetch  0x00000001 , 0x00000006 
+ 00032360  0x00008e79 rtn 
+ 00032361  0x00008e7d call  0x00007e6d 
+ 00032362  0x00008e7e ifetcht  0x00000001 , 0x00000006 
+ 00032363  0x00008e7f isub  0x00000002 , 0x0000003f 
+ 00032364  0x00008e80 rtn 
+ 00032365  0x00008e84 fetch  0x00000002 , 0x00004218 
+ 00032366  0x00008e85 add  0x0000003f , 0x00000001 , 0x00000006 
+ 00032367  0x00008e86 ifetch  0x00000001 , 0x00000006 
+ 00032368  0x00008e87 rtn 
+ 00032369  0x00008e90 sub  0x00000039 , 0x00000000 , 0x0000003e 
+ 00032370  0x00008e91 rtn  0x00000005 
+ 00032371  0x00008e93 rshift  0x0000003f , 0x0000003f 
+ 00032372  0x00008e94 loop  0x00007e73 
+ 00032373  0x00008e95 rtn 
+ 00032374  0x00008e99 force  0x00000001 , 0x0000003f 
+ 00032375  0x00008e9a sub  0x00000039 , 0x00000000 , 0x0000003e 
+ 00032376  0x00008e9b rtn  0x00000005 
+ 00032377  0x00008e9d lshift  0x0000003f , 0x0000003f 
+ 00032378  0x00008e9e loop  0x00007e79 
+ 00032379  0x00008e9f rtn 
+ 00032380  0x00008ea1 deposit  0x00000005 
+ 00032381  0x00008ea2 store  0x00000002 , 0x00000abb 
+ 00032382  0x00008ea3 storet  0x00000008 , 0x00000aa2 
+ 00032383  0x00008ea4 deposit  0x0000000b 
+ 00032384  0x00008ea5 store  0x00000004 , 0x00000aaa 
+ 00032385  0x00008ea6 call  0x00007e85 
+ 00032386  0x00008ea7 deposit  0x00000006 
+ 00032387  0x00008ea8 store  0x00000002 , 0x00000ab9 
+ 00032388  0x00008ea9 rtn 
+ 00032389  0x00008eac deposit  0x00000011 
+ 00032390  0x00008ead store  0x00000004 , 0x00000aae 
+ 00032391  0x00008eae deposit  0x00000012 
+ 00032392  0x00008eaf store  0x00000004 , 0x00000ab2 
+ 00032393  0x00008eb0 deposit  0x00000013 
+ 00032394  0x00008eb1 store  0x00000003 , 0x00000ab6 
+ 00032395  0x00008eb2 rtn 
+ 00032396  0x00008eb5 fetcht  0x00000008 , 0x00000aa2 
+ 00032397  0x00008eb6 fetch  0x00000004 , 0x00000aaa 
+ 00032398  0x00008eb7 iforce  0x0000000b 
+ 00032399  0x00008eb8 call  0x00007e95 
+ 00032400  0x00008eb9 fetch  0x00000002 , 0x00000abb 
+ 00032401  0x00008eba iforce  0x00000005 
+ 00032402  0x00008ebb fetch  0x00000002 , 0x00000ab9 
+ 00032403  0x00008ebc iforce  0x00000006 
+ 00032404  0x00008ebd rtn 
+ 00032405  0x00008ec0 fetch  0x00000004 , 0x00000aae 
+ 00032406  0x00008ec1 iforce  0x00000011 
+ 00032407  0x00008ec2 fetch  0x00000004 , 0x00000ab2 
+ 00032408  0x00008ec3 iforce  0x00000012 
+ 00032409  0x00008ec4 fetch  0x00000003 , 0x00000ab6 
+ 00032410  0x00008ec5 iforce  0x00000013 
+ 00032411  0x00008ec6 rtn 
+ 00032412  0x00008ec9 fetch  0x00000002 , 0x00000abb 
+ 00032413  0x00008eca copy  0x0000003f , 0x00000005 
+ 00032414  0x00008ecb rtn 
+ 00032415  0x00008ecd fetch  0x00000002 , 0x00000ab9 
+ 00032416  0x00008ece copy  0x0000003f , 0x00000006 
+ 00032417  0x00008ecf rtn 
+ 00032418  0x00008ed1 copy  0x00000005 , 0x0000003f 
+ 00032419  0x00008ed2 store  0x00000002 , 0x00000abb 
+ 00032420  0x00008ed3 rtn 
+ 00032421  0x00008ed5 copy  0x00000006 , 0x0000003f 
+ 00032422  0x00008ed6 store  0x00000002 , 0x00000ab9 
+ 00032423  0x00008ed7 rtn 
+ 00032424  0x00008edc copy  0x00000005 , 0x0000003f 
+ 00032425  0x00008edd store  0x00000002 , 0x00000a97 
+ 00032426  0x00008ede copy  0x00000006 , 0x0000003f 
+ 00032427  0x00008edf store  0x00000002 , 0x00000a95 
+ 00032428  0x00008ee0 rtn 
+ 00032429  0x00008ee2 fetch  0x00000002 , 0x00000a97 
+ 00032430  0x00008ee3 copy  0x0000003f , 0x00000005 
+ 00032431  0x00008ee4 fetch  0x00000002 , 0x00000a95 
+ 00032432  0x00008ee5 copy  0x0000003f , 0x00000006 
+ 00032433  0x00008ee6 rtn 
+ 00032434  0x00008ee9 call  0x00007ebd 
+ 00032435  0x00008eeb call  0x00007ebd 
+ 00032436  0x00008eec branch  0x00007ebd 
+ 00032437  0x00008eee call  0x00007eb9 
+ 00032438  0x00008ef0 ifetch  0x00000004 , 0x00000006 
+ 00032439  0x00008ef1 istore  0x00000004 , 0x00000005 
+ 00032440  0x00008ef2 rtn 
+ 00032441  0x00008ef4 ifetch  0x00000008 , 0x00000006 
+ 00032442  0x00008ef5 istore  0x00000008 , 0x00000005 
+ 00032443  0x00008ef6 rtn 
+ 00032444  0x00008ef9 call  0x00007ebf 
+ 00032445  0x00008efb call  0x00007eb9 
+ 00032446  0x00008efd call  0x00007eb9 
+ 00032447  0x00008eff call  0x00007eb9 
+ 00032448  0x00008f00 branch  0x00007eb9 
+ 00032449  0x00008f05 arg  0x0000000a , 0x00000039 
+ 00032450  0x00008f07 nop  0x00002ee0 
+ 00032451  0x00008f08 loop  0x00007ec2 
+ 00032452  0x00008f09 rtn 
+ 00032453  0x00008f0c force  0x00000003 , 0x00000039 
+ 00032454  0x00008f0e force  0x00000000 , 0x0000003f 
+ 00032455  0x00008f10 istore  0x00000008 , 0x00000005 
+ 00032456  0x00008f11 loop  0x00007ec7 
+ 00032457  0x00008f12 rtn 
+ 00032458  0x00008f15 force  0x00000000 , 0x0000003f 
+ 00032459  0x00008f16 istore  0x00000008 , 0x00000005 
+ 00032460  0x00008f17 rtn 
+ 00032461  0x00008f19 force  0x00000000 , 0x0000003f 
+ 00032462  0x00008f1a istore  0x00000004 , 0x00000005 
+ 00032463  0x00008f1b rtn 
+ 00032464  0x00008f1e force  0x00000004 , 0x00000039 
+ 00032465  0x00008f1f branch  0x00007ec6 
+ 00032466  0x00008f21 force  0x00000008 , 0x00000039 
+ 00032467  0x00008f22 branch  0x00007ec6 
+ 00032468  0x00008f25 deposit  0x00000039 
+ 00032469  0x00008f26 rtn  0x00000034 
+ 00032470  0x00008f27 setarg  0x00000000 
+ 00032471  0x00008f29 istore  0x00000001 , 0x00000005 
+ 00032472  0x00008f2a loop  0x00007ed7 
+ 00032473  0x00008f2b rtn 
+ 00032474  0x00008f2f arg  0x00000020 , 0x00000039 
+ 00032475  0x00008f30 arg  0x00000ac2 , 0x00000005 
+ 00032476  0x00008f31 branch  0x00007ed4 
+ 00032477  0x00008f34 ifetch  0x00000004 , 0x00000013 
+ 00032478  0x00008f35 ifetcht  0x00000004 , 0x00000011 
+ 00032479  0x00008f36 ixor  0x00000002 , 0x0000003f 
+ 00032480  0x00008f37 istore  0x00000004 , 0x00000005 
+ 00032481  0x00008f38 increase  0x00000004 , 0x00000011 
+ 00032482  0x00008f39 increase  0x00000004 , 0x00000013 
+ 00032483  0x00008f3a loop  0x00007edd 
+ 00032484  0x00008f3b rtn 
+ 00032485  0x00008f40 bpatchx  0x000000fb , 0x0000403f 
+ 00032486  0x00008f41 copy  0x00000039 , 0x0000003f 
+ 00032487  0x00008f42 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00032488  0x00008f43 rtn  0x00000002 
+ 00032489  0x00008f44 iadd  0x00000011 , 0x00000012 
+ 00032490  0x00008f45 increase  0xffffffff , 0x00000012 
+ 00032491  0x00008f46 rshift  0x00000039 , 0x00000039 
+ 00032492  0x00008f48 ifetcht  0x00000001 , 0x00000011 
+ 00032493  0x00008f49 ifetch  0x00000001 , 0x00000012 
+ 00032494  0x00008f4a istore  0x00000001 , 0x00000011 
+ 00032495  0x00008f4b istoret  0x00000001 , 0x00000012 
+ 00032496  0x00008f4c increase  0xffffffff , 0x00000012 
+ 00032497  0x00008f4d increase  0x00000001 , 0x00000011 
+ 00032498  0x00008f4e loop  0x00007eec 
+ 00032499  0x00008f4f rtn 
+ 00032500  0x00008f53 deposit  0x00000039 
+ 00032501  0x00008f54 rtn  0x00000034 
+ 00032502  0x00008f56 increase  0xfffffff8 , 0x00000039 
+ 00032503  0x00008f57 call  0x00007eb9 , 0x00000002 
+ 00032504  0x00008f58 rtn  0x00000005 
+ 00032505  0x00008f59 branch  0x00007ef6 , 0x00000002 
+ 00032506  0x00008f5a increase  0x00000008 , 0x00000039 
+ 00032507  0x00008f5c increase  0xfffffffc , 0x00000039 
+ 00032508  0x00008f5d call  0x00007eb6 , 0x00000002 
+ 00032509  0x00008f5e rtn  0x00000005 
+ 00032510  0x00008f5f branch  0x00007efb , 0x00000002 
+ 00032511  0x00008f60 increase  0x00000004 , 0x00000039 
+ 00032512  0x00008f61 branch  0x00007f01 
+ 00032513  0x00008f64 deposit  0x00000039 
+ 00032514  0x00008f65 rtn  0x00000034 
+ 00032515  0x00008f67 ifetch  0x00000001 , 0x00000006 
+ 00032516  0x00008f68 istore  0x00000001 , 0x00000005 
+ 00032517  0x00008f69 loop  0x00007f03 
+ 00032518  0x00008f6a rtn 
+ 00032519  0x00008f6d setarg  0x00000000 
+ 00032520  0x00008f6f rshift  0x00000022 , 0x00000002 
+ 00032521  0x00008f70 storet  0x00000004 , 0x00004094 
+ 00032522  0x00008f71 arg  0x0000419d , 0x00000005 
+ 00032523  0x00008f72 iforce  0x00000002 
+ 00032524  0x00008f73 lshift  0x00000007 , 0x0000003f 
+ 00032525  0x00008f74 iadd  0x00000005 , 0x00000005 
+ 00032526  0x00008f75 istoret  0x00000002 , 0x00000005 
+ 00032527  0x00008f76 bpatchx  0x000000fc , 0x0000403f 
+ 00032528  0x00008f77 rtn 
+ 00032529  0x00008f7a arg  0x00000800 , 0x0000000b 
+ 00032530  0x00008f7b lshift16  0x0000000b , 0x0000000b 
+ 00032531  0x00008f7c iadd  0x0000000b , 0x0000003f 
+ 00032532  0x00008f7d rtn 
+ 00032533  0x00008f81 arg  0x00000000 , 0x00000007 
+ 00032534  0x00008f83 bpatchx  0x000000fd , 0x0000403f 
+ 00032535  0x00008f84 fetcht  0x00000004 , 0x00004094 
+ 00032536  0x00008f85 rshift  0x00000022 , 0x0000003f 
+ 00032537  0x00008f86 store  0x00000004 , 0x00004094 
+ 00032538  0x00008f87 isub  0x00000002 , 0x0000003e 
+ 00032539  0x00008f88 ncall  0x00007f11 , 0x00000002 
+ 00032540  0x00008f89 isub  0x00000002 , 0x0000000b 
+ 00032541  0x00008f8a copy  0x0000000b , 0x00000002 
+ 00032542  0x00008f8b arg  0x0000419d , 0x00000006 
+ 00032543  0x00008f8c copy  0x00000006 , 0x00000005 
+ 00032544  0x00008f8d arg  0x00000010 , 0x00000039 
+ 00032545  0x00008f8f ifetch  0x00000002 , 0x00000006 
+ 00032546  0x00008f90 isub  0x00000002 , 0x0000003f 
+ 00032547  0x00008f91 branch  0x00007f25 , 0x00000002 
+ 00032548  0x00008f92 force  0x00000000 , 0x0000003f 
+ 00032549  0x00008f94 istore  0x00000002 , 0x00000005 
+ 00032550  0x00008f95 loop  0x00007f21 
+ 00032551  0x00008f96 arg  0x0000419d , 0x00000006 
+ 00032552  0x00008f97 lshift  0x00000007 , 0x0000003f 
+ 00032553  0x00008f98 iadd  0x00000006 , 0x00000006 
+ 00032554  0x00008f99 ifetch  0x00000002 , 0x00000006 
+ 00032555  0x00008f9a rtn 
+ 00032556  0x00008fa0 iadd  0x00000002 , 0x00000002 
+ 00032557  0x00008fa1 copy  0x00000002 , 0x00000039 
+ 00032558  0x00008fa2 setarg  0x00000ea6 
+ 00032559  0x00008fa3 isub  0x00000039 , 0x0000003f 
+ 00032560  0x00008fa4 rtn  0x00000002 
+ 00032561  0x00008fa5 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00032562  0x00008fa6 rshift16  0x00000002 , 0x00000002 
+ 00032563  0x00008fa7 increase  0x00000001 , 0x00000002 
+ 00032564  0x00008fa8 lshift16  0x00000002 , 0x00000002 
+ 00032565  0x00008fa9 ior  0x00000002 , 0x00000002 
+ 00032566  0x00008faa rtn 
+ 00032567  0x00008fad call  0x00007f39 
+ 00032568  0x00008fae branch  0x00007f43 
+ 00032569  0x00008fb2 disable  0x00000028 
+ 00032570  0x00008fb3 isub  0x00000002 , 0x0000003f 
+ 00032571  0x00008fb4 branch  0x00007f3e , 0x00000002 
+ 00032572  0x00008fb5 enable  0x00000028 
+ 00032573  0x00008fb6 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00032574  0x00008fb8 rtnbit0  0x0000000f 
+ 00032575  0x00008fb9 arg  0xffff0ea6 , 0x00000002 
+ 00032576  0x00008fba iadd  0x00000002 , 0x0000003f 
+ 00032577  0x00008fbb set0  0x00000040 , 0x0000003f 
+ 00032578  0x00008fbc rtn 
+ 00032579  0x00008fbf iforce  0x00000006 
+ 00032580  0x00008fc0 rshift16  0x0000003f , 0x0000003f 
+ 00032581  0x00008fc1 arg  0x00000ea6 , 0x00000002 
+ 00032582  0x00008fc2 imul32  0x00000002 , 0x0000003f 
+ 00032583  0x00008fc3 iadd  0x00000006 , 0x0000003f 
+ 00032584  0x00008fc4 rtn 
+ 00032585  0x00008fc8 lshift8  0x0000003f , 0x0000003f 
+ 00032586  0x00008fc9 lshift4  0x0000003f , 0x0000003f 
+ 00032587  0x00008fca fetcht  0x00000003 , 0x0000416f 
+ 00032588  0x00008fcb idiv  0x00000002 
+ 00032589  0x00008fcc call  0x00007f86 
+ 00032590  0x00008fcd quotient  0x00000002 
+ 00032591  0x00008fce rtn 
+ 00032592  0x00008fd2 arg  0x00000ea6 , 0x00000002 
+ 00032593  0x00008fd3 idiv  0x00000002 
+ 00032594  0x00008fd4 call  0x00007f86 
+ 00032595  0x00008fd5 quotient  0x0000003f 
+ 00032596  0x00008fd6 lshift16  0x0000003f , 0x0000003f 
+ 00032597  0x00008fd7 remainder  0x00000002 
+ 00032598  0x00008fd8 ior  0x00000002 , 0x00000002 
+ 00032599  0x00008fd9 rtn 
+ 00032600  0x00008fe1 arg  0x00000000 , 0x00000002 
+ 00032601  0x00008fe3 copy  0x00000002 , 0x00000013 
+ 00032602  0x00008fe4 ifetch  0x00000001 , 0x00000003 
+ 00032603  0x00008fe5 call  0x00007f64 
+ 00032604  0x00008fe6 copy  0x00000013 , 0x00000002 
+ 00032605  0x00008fe7 call  0x00007f95 
+ 00032606  0x00008fe8 arg  0x0000000a , 0x00000012 
+ 00032607  0x00008fe9 imul32  0x00000012 , 0x0000003f 
+ 00032608  0x00008fea iadd  0x00000002 , 0x0000003f 
+ 00032609  0x00008feb copy  0x0000003f , 0x00000002 
+ 00032610  0x00008fec loop  0x00007f59 
+ 00032611  0x00008fed rtn 
+ 00032612  0x00008ff2 arg  0x0000003a , 0x00000002 
+ 00032613  0x00008ff3 isub  0x00000002 , 0x0000003e 
+ 00032614  0x00008ff4 nbranch  0x00007f6d , 0x00000002 
+ 00032615  0x00008ff5 arg  0x00000061 , 0x00000002 
+ 00032616  0x00008ff6 isub  0x00000002 , 0x0000003e 
+ 00032617  0x00008ff7 branch  0x00007f70 , 0x00000002 
+ 00032618  0x00008ff8 arg  0x00000037 , 0x00000002 
+ 00032619  0x00008ff9 isub  0x00000002 , 0x0000003f 
+ 00032620  0x00008ffa rtn 
+ 00032621  0x00008ffc arg  0x00000030 , 0x00000002 
+ 00032622  0x00008ffd isub  0x00000002 , 0x0000003f 
+ 00032623  0x00008ffe rtn 
+ 00032624  0x00009000 arg  0x00000057 , 0x00000002 
+ 00032625  0x00009001 isub  0x00000002 , 0x0000003f 
+ 00032626  0x00009002 rtn 
+ 00032627  0x00009005 copy  0x00000002 , 0x00000030 
+ 00032628  0x00009006 setarg  0x000001ff 
+ 00032629  0x00009007 force  0x00000000 , 0x00000012 
+ 00032630  0x00009009 rshift3  0x0000003f , 0x00000011 
+ 00032631  0x0000900a rshift  0x00000011 , 0x00000011 
+ 00032632  0x0000900b ixor  0x00000011 , 0x00000011 
+ 00032633  0x0000900c isolate1  0x00000000 , 0x00000011 
+ 00032634  0x0000900d setflag  0x00000001 , 0x00000009 , 0x0000003f 
+ 00032635  0x0000900e rshift  0x00000002 , 0x00000002 
+ 00032636  0x0000900f isolate1  0x00000000 , 0x0000003f 
+ 00032637  0x00009010 setflag  0x00000001 , 0x00000007 , 0x00000002 
+ 00032638  0x00009011 rshift  0x0000003f , 0x0000003f 
+ 00032639  0x00009012 increase  0x00000001 , 0x00000012 
+ 00032640  0x00009013 compare  0x00000000 , 0x00000012 , 0x00000007 
+ 00032641  0x00009014 nbranch  0x00007f76 , 0x00000001 
+ 00032642  0x00009015 istoret  0x00000001 , 0x00000005 
+ 00032643  0x00009016 loop  0x00007f76 
+ 00032644  0x00009017 copy  0x00000030 , 0x00000002 
+ 00032645  0x00009018 rtn 
+ 00032646  0x0000901c rtn  0x00000035 
+ 00032647  0x0000901d branch  0x00007f86 
+ 00032648  0x00009029 ifetch  0x00000001 , 0x00000011 
+ 00032649  0x0000902a ifetcht  0x00000001 , 0x00000012 
+ 00032650  0x0000902b isub  0x00000002 , 0x0000003e 
+ 00032651  0x0000902c nrtn  0x00000005 
+ 00032652  0x0000902d increase  0x00000001 , 0x00000011 
+ 00032653  0x0000902e increase  0x00000001 , 0x00000012 
+ 00032654  0x0000902f loop  0x00007f88 
+ 00032655  0x00009030 force  0x00000000 , 0x0000003e 
+ 00032656  0x00009031 rtn 
+ 00032657  0x00009035 isub  0x00000002 , 0x0000003e 
+ 00032658  0x00009036 nrtn  0x00000002 
+ 00032659  0x00009037 deposit  0x00000002 
+ 00032660  0x00009038 rtn 
+ 00032661  0x0000903b iadd  0x00000002 , 0x0000003f 
+ 00032662  0x0000903c isub  0x00000002 , 0x00000002 
+ 00032663  0x0000903d isub  0x00000002 , 0x0000003f 
+ 00032664  0x0000903e rtn 
+ 00032665  0x00009041 arg  0x00000200 , 0x00000039 
+ 00032666  0x00009042 arg  0x00004000 , 0x00000005 
+ 00032667  0x00009043 branch  0x00007ec6 
+ 00032668  0x00009047 rtn  0x00000034 
+ 00032669  0x00009048 copy  0x0000003f , 0x0000003d 
+ 00032670  0x0000904c hfetch  0x00000002 , 0x0000810e 
+ 00032671  0x0000904d nbranch  0x00007f9e , 0x00000034 
+ 00032672  0x0000904e rtn 
+ 00032673  0x00009051 jam  0x00000001 , 0x00008203 
+ 00032674  0x00009052 rtn 
+ 00032675  0x00009055 hstore  0x00000002 , 0x00008205 
+ 00032676  0x00009056 hfetch  0x00000001 , 0x00008203 
+ 00032677  0x00009057 set1  0x00000004 , 0x0000003f 
+ 00032678  0x00009058 hstore  0x00000001 , 0x00008203 
+ 00032679  0x00009059 rtn 
+ 00032680  0x0000905b hstore  0x00000002 , 0x00008207 
+ 00032681  0x0000905c hfetch  0x00000001 , 0x00008203 
+ 00032682  0x0000905d set1  0x00000006 , 0x0000003f 
+ 00032683  0x0000905e hstore  0x00000001 , 0x00008203 
+ 00032684  0x0000905f rtn 
+ 00032685  0x00009062 hstore  0x00000002 , 0x00008205 
+ 00032686  0x00009063 jam  0x00000030 , 0x00008203 
+ 00032687  0x00009064 rtn 
+ 00032688  0x00009069 hfetch  0x00000001 , 0x00008043 
+ 00032689  0x0000906a set0  0x00000004 , 0x0000003f 
+ 00032690  0x0000906b hstore  0x00000001 , 0x00008043 
+ 00032691  0x0000906c rtn 
+ 00032692  0x0000906f hfetch  0x00000002 , 0x0000810e 
+ 00032693  0x00009070 arg  0x00000200 , 0x00000002 
+ 00032694  0x00009072 isub  0x00000002 , 0x0000003e 
+ 00032695  0x00009073 rtn 
+ 00032696  0x0000907a bpatchx  0x000000fe , 0x0000403f 
+ 00032697  0x0000907b ifetcht  0x00000008 , 0x00000011 
+ 00032698  0x0000907c and  0x00000002 , 0x000000ff , 0x0000003f 
+ 00032699  0x0000907d nbranch  0x00007fbe , 0x00000034 
+ 00032700  0x0000907e rshift8  0x00000002 , 0x0000003f 
+ 00032701  0x0000907f istore  0x00000008 , 0x00000011 
+ 00032702  0x00009081 increase  0x00000007 , 0x00000011 
+ 00032703  0x00009082 ifetch  0x00000001 , 0x00000011 
+ 00032704  0x00009083 nbranch  0x00002a8c , 0x00000034 
+ 00032705  0x00009084 fetch  0x00000001 , 0x00000a99 
+ 00032706  0x00009085 istore  0x00000001 , 0x00000011 
+ 00032707  0x00009086 rtn 
+ 00032708  0x0000908c bpatchx  0x000000ff , 0x0000403f 
+ 00032709  0x0000908d arg  0x00000008 , 0x00000039 
+ 00032710  0x0000908e ifetch  0x00000008 , 0x00000011 
+ 00032711  0x0000908f rtn  0x00000034 
+ 00032712  0x00009091 ifetch  0x00000001 , 0x00000011 
+ 00032713  0x00009092 nbranch  0x00007fcd , 0x00000034 
+ 00032714  0x00009093 increase  0x00000001 , 0x00000011 
+ 00032715  0x00009094 loop  0x00007fc8 
+ 00032716  0x00009095 branch  0x00002a8c 
+ 00032717  0x00009097 arg  0x00000000 , 0x00000002 
+ 00032718  0x00009098 istoret  0x00000001 , 0x00000011 
+ 00032719  0x00009099 rtn 
+ 00032720  0x0000909f ifetch  0x00000008 , 0x00000011 
+ 00032721  0x000090a0 rtn 
+ 00032722  0x000090a6 ifetch  0x00000001 , 0x00000011 
+ 00032723  0x000090a7 rtn 
+ 00032724  0x000090ab ifetch  0x00000002 , 0x00000011 
+ 00032725  0x000090ac rtn 
+ 00032726  0x000090b1 arg  0x00000000 , 0x00000002 
+ 00032727  0x000090b3 fetch  0x00000001 , 0x00000006 
+ 00032728  0x000090b4 loop  0x00007fd7 , 0x00000034 
+ 00032729  0x000090b5 increase  0x00000001 , 0x00000002 
+ 00032730  0x000090b6 loop  0x00007fd7 
+ 00032731  0x000090b7 copy  0x00000002 , 0x0000003f 
+ 00032732  0x000090b8 rtn 
+ 00032733  0x000090bb isub  0x00000002 , 0x0000003e 
+ 00032734  0x000090bc nrtn  0x00000002 
+ 00032735  0x000090bd copy  0x00000002 , 0x0000003f 
+ 00032736  0x000090be rtn 
+ 00032737  0x000090c2 force  0xffffffff , 0x0000003e 
+ 00032738  0x000090c3 rtn 
+ 00032739  0x000090c6 force  0x00000001 , 0x0000003e 
+ 00032740  0x000090c7 rtn 
+ 00032741  0x000090c9 force  0x00000000 , 0x0000003e 
+ 00032742  0x000090ca rtn 
+ 00032743  0x000090cd enable  0x00000028 
+ 00032744  0x000090ce rtn 
+ 00032745  0x000090d1 disable  0x00000028 
+ 00032746  0x000090d2 rtn 
+ 00032747  0x000090d5 enable  0x0000002c 
+ 00032748  0x000090d6 rtn 
+ 00032749  0x000090d9 disable  0x0000002c 
+ 00032750  0x000090da rtn 
+ 00032751  0x000090dd setarg  0x00000001 
+ 00032752  0x000090de rtn 
+ 00032753  0x000090e1 setarg  0x00000000 
+ 00032754  0x000090e2 rtn 
+ 00032755  0x000090e6 copy  0x00000039 , 0x0000003f 
+ 00032756  0x000090e7 rtn  0x00000034 
+ 00032757  0x000090e8 copy  0x00000006 , 0x0000003f 
+ 00032758  0x000090e9 iadd  0x00000039 , 0x0000003f 
+ 00032759  0x000090ea increase  0xffffffff , 0x0000003f 
+ 00032760  0x000090eb copy  0x0000003f , 0x00000006 
+ 00032761  0x000090ed ifetch  0x00000001 , 0x00000006 
+ 00032762  0x000090ee increase  0xfffffffe , 0x00000006 
+ 00032763  0x000090ef istore  0x00000001 , 0x00000005 
+ 00032764  0x000090f0 loop  0x00007ff9 
+ 00032765  0x000090f1 rtn 
+ 00065537  0x000090f7 beq  0x00000000 , 0x0001001f 
+ 00065538  0x000090f8 beq  0x00000001 , 0x00010004 
+ 00065539  0x000090f9 rtn 
+ 00065540  0x000090fc call  0x0000026a 
+ 00065541  0x000090fd nrtn  0x00000028 
+ 00065542  0x000090fe call  0x00010019 
+ 00065543  0x000090ff fetch  0x00000002 , 0x00004d33 
+ 00065544  0x00009100 increase  0x00000001 , 0x0000003f 
+ 00065545  0x00009101 store  0x00000002 , 0x00004d33 
+ 00065546  0x00009102 fetcht  0x00000002 , 0x00004d35 
+ 00065547  0x00009103 isub  0x00000002 , 0x0000003e 
+ 00065548  0x00009104 call  0x0001000e , 0x00000005 
+ 00065549  0x00009105 branch  0x0000009d 
+ 00065550  0x00009107 jam  0x00000000 , 0x00004d32 
+ 00065551  0x00009108 setarg  0x00000000 
+ 00065552  0x00009109 store  0x00000002 , 0x00004d33 
+ 00065553  0x0000910a setarg  0x00000019 
+ 00065554  0x0000910b store  0x00000002 , 0x00004d35 
+ 00065555  0x0000910d jam  0x00000000 , 0x00004c2d 
+ 00065556  0x0000910e fetch  0x00000001 , 0x00004c18 
+ 00065557  0x00009110 store  0x00000001 , 0x00004c17 
+ 00065558  0x00009111 rtn 
+ 00065559  0x00009113 fetch  0x00000001 , 0x00004c19 
+ 00065560  0x00009114 branch  0x00010015 
+ 00065561  0x00009116 fetch  0x00000001 , 0x00004c2d 
+ 00065562  0x00009117 increase  0x00000001 , 0x0000003f 
+ 00065563  0x00009118 store  0x00000001 , 0x00004c2d 
+ 00065564  0x00009119 beq  0x00000004 , 0x00010017 
+ 00065565  0x0000911a beq  0x00000005 , 0x00010013 
+ 00065566  0x0000911b rtn 
+ 00065567  0x0000911e fetch  0x00000001 , 0x0000000e 
+ 00065568  0x0000911f increase  0x00000001 , 0x0000003f 
+ 00065569  0x00009120 store  0x00000001 , 0x0000000e 
+ 00065570  0x00009121 call  0x00002435 
+ 00065571  0x00009123 set1  0x0000002c , 0x00000000 
+ 00065572  0x00009124 call  0x000022f2 
+ 00065573  0x00009125 branch  0x0001002a , 0x00000018 
+ 00065574  0x00009126 set0  0x0000002c , 0x00000000 
+ 00065575  0x00009127 call  0x00002455 
+ 00065576  0x00009128 nbranch  0x00010023 , 0x00000034 
+ 00065577  0x00009129 branch  0x000020fc 
+ 00065578  0x0000912b set0  0x0000002c , 0x00000000 
+ 00065579  0x0000912c branch  0x0000215f 
+ 00131073  0x00009132 beq  0x00000010 , 0x00020004 
+ 00131074  0x00009133 beq  0x00000011 , 0x0002001d 
+ 00131075  0x00009134 rtn 
+ 00131076  0x00009137 jam  0x00000000 , 0x00004808 
+ 00131077  0x00009138 jam  0x0000000e , 0x000041e3 
+ 00131078  0x00009139 call  0x000041e7 
+ 00131079  0x0000913a fetch  0x00000002 , 0x00004208 
+ 00131080  0x0000913b bbit1  0x00000007 , 0x0002000e 
+ 00131081  0x0000913c bbit1  0x00000000 , 0x000033a9 
+ 00131082  0x0000913d bbit1  0x00000001 , 0x00020011 
+ 00131083  0x0000913e bbit1  0x00000002 , 0x00020014 
+ 00131084  0x0000913f bbit1  0x00000003 , 0x00020014 
+ 00131085  0x00009140 branch  0x000042b0 
+ 00131086  0x00009143 call  0x000041c1 
+ 00131087  0x00009144 fetch  0x00000002 , 0x00004208 
+ 00131088  0x00009146 branch  0x000041f7 
+ 00131089  0x00009149 bbit1  0x00000005 , 0x00020014 
+ 00131090  0x0000914a bbit1  0x00000003 , 0x00020014 
+ 00131091  0x0000914b branch  0x000042b0 
+ 00131092  0x0000914d fetch  0x00000002 , 0x00004682 
+ 00131093  0x0000914e bbit1  0x0000000c , 0x000042b0 
+ 00131094  0x0000914f call  0x000033a9 
+ 00131095  0x00009153 fetcht  0x00000001 , 0x000046ec 
+ 00131096  0x00009154 call  0x00000584 
+ 00131097  0x00009155 fetcht  0x00000001 , 0x000046ec 
+ 00131098  0x00009156 call  0x0000681d 
+ 00131099  0x00009157 branch  0x000002b5 , 0x00000001 
+ 00131100  0x00009159 branch  0x000033a7 
+ 00131101  0x0000915d fetch  0x00000002 , 0x00000264 
+ 00131102  0x0000915e copy  0x0000003f , 0x00000006 
+ 00131103  0x0000915f ifetch  0x00000001 , 0x00000006 
+ 00131104  0x00009160 store  0x00000001 , 0x00004b02 
+ 00131105  0x00009161 and  0x0000003f , 0x0000000f , 0x00000002 
+ 00131106  0x00009162 rshift4  0x0000003f , 0x0000003f 
+ 00131107  0x00009163 beq  0x00000007 , 0x00020025 
+ 00131108  0x00009164 branch  0x00004d39 
+ 00131109  0x00009166 call  0x00004d53 
+ 00131110  0x00009167 jam  0x00000000 , 0x00004b03 
+ 00131111  0x00009168 fetch  0x00000001 , 0x00004b02 
+ 00131112  0x00009169 isolate1  0x00000000 , 0x0000003f 
+ 00131113  0x0000916a rtn  0x00000001 
+ 00131114  0x0000916b jam  0x00000001 , 0x00004b03 
+ 00131115  0x0000916c rtn 
+ 00196609  0x00009171 beq  0x00000020 , 0x00030003 
+ 00196610  0x00009172 rtn 
+ 00196611  0x00009175 disable  0x00000028 
+ 00196612  0x00009176 call  0x000062c1 
+ 00196613  0x00009179 fetch  0x00000001 , 0x00000048 
+ 00196614  0x0000917a rtn  0x00000034 
+ 00196615  0x0000917b bbit1  0x00000007 , 0x0003000c 
+ 00196616  0x0000917c beq  0x00000003 , 0x0003001c 
+ 00196617  0x0000917d beq  0x00000031 , 0x00030018 
+ 00196618  0x0000917e beq  0x00000017 , 0x0003001a 
+ 00196619  0x0000917f branch  0x00006010 
+ 00196620  0x00009181 beq  0x00000084 , 0x0003000f 
+ 00196621  0x00009182 beq  0x00000083 , 0x00030012 
+ 00196622  0x00009183 branch  0x0000603f 
+ 00196623  0x00009185 call  0x00030015 
+ 00196624  0x00009186 fetch  0x00000001 , 0x00000048 
+ 00196625  0x00009187 branch  0x00006099 
+ 00196626  0x00009189 call  0x00030015 
+ 00196627  0x0000918a fetch  0x00000001 , 0x00000048 
+ 00196628  0x0000918b branch  0x0000610d 
+ 00196629  0x0000918d fetch  0x00000001 , 0x0000465a 
+ 00196630  0x0000918e branch  0x0000612b , 0x00000034 
+ 00196631  0x0000918f branch  0x00006124 
+ 00196632  0x00009192 jam  0x00000001 , 0x00004b01 
+ 00196633  0x00009193 branch  0x000061c3 
+ 00196634  0x00009196 jam  0x00000004 , 0x00004b09 
+ 00196635  0x00009197 branch  0x000061a4 
+ 00196636  0x0000919b force  0x00000002 , 0x0000003f 
+ 00196637  0x0000919c call  0x00006298 
+ 00196638  0x0000919d fetch  0x00000001 , 0x00000049 
+ 00196639  0x0000919e istore  0x00000001 , 0x00000005 
+ 00196640  0x0000919f store  0x00000001 , 0x00004afc 
+ 00196641  0x000091a0 call  0x000062a7 
+ 00196642  0x000091a1 fetch  0x00000001 , 0x00004afc 
+ 00196643  0x000091a2 beq  0x0000002e , 0x00030025 
+ 00196644  0x000091a3 branch  0x00006051 
+ 00196645  0x000091a6 fetch  0x00000001 , 0x00004aff 
+ 00196646  0x000091a7 rtn  0x00000034 
+ 00196647  0x000091a8 jam  0x00000000 , 0x00004aff 
+ 00196648  0x000091a9 fetch  0x00000001 , 0x00004b01 
+ 00196649  0x000091aa rtnne  0x00000002 
+ 00196650  0x000091ab jam  0x00000001 , 0x00004b00 
+ 00196651  0x000091ac copy  0x00000022 , 0x0000003f 
+ 00196652  0x000091ad store  0x00000004 , 0x000004e9 
+ 00196653  0x000091ae rtn 
+ 00262145  0x000091b4 beq  0x00000030 , 0x00040003 
+ 00262146  0x000091b5 rtn 
+ 00262147  0x000091b8 call  0x000062bc 
+ 00262148  0x000091b9 nrtn  0x00000034 
+ 00262149  0x000091bb fetch  0x00000001 , 0x00000055 
+ 00262150  0x000091bc rtn  0x00000034 
+ 00262151  0x000091bd beq  0x00000004 , 0x00040025 
+ 00262152  0x000091be beq  0x00000010 , 0x0004000a 
+ 00262153  0x000091bf branch  0x00006320 
+ 00262154  0x000091c3 fetch  0x00000001 , 0x0000455b 
+ 00262155  0x000091c4 rtneq  0x00000000 
+ 00262156  0x000091c5 beq  0x00000001 , 0x0004000e 
+ 00262157  0x000091c6 branch  0x0000635f 
+ 00262158  0x000091c8 rtn  0x00000029 
+ 00262159  0x000091cb fetch  0x00000001 , 0x0000016d 
+ 00262160  0x000091cc bbit1  0x00000000 , 0x00040012 
+ 00262161  0x000091cd branch  0x00006399 
+ 00262162  0x000091cf fetch  0x00000001 , 0x00004b01 
+ 00262163  0x000091d0 beq  0x00000001 , 0x0000639d 
+ 00262164  0x000091d2 fetch  0x00000001 , 0x000041bd 
+ 00262165  0x000091d3 branch  0x000063a9 , 0x00000034 
+ 00262166  0x000091d4 fetch  0x00000001 , 0x000004d1 
+ 00262167  0x000091d5 rtnbit0  0x00000003 
+ 00262168  0x000091d6 rtnbit0  0x00000002 
+ 00262169  0x000091d7 fetch  0x00000001 , 0x00004b00 
+ 00262170  0x000091d8 rtn  0x00000034 
+ 00262171  0x000091d9 jam  0x00000000 , 0x00004b00 
+ 00262172  0x000091da fetch  0x00000004 , 0x000004e9 
+ 00262173  0x000091db arg  0x00000014 , 0x00000002 
+ 00262174  0x000091dc iadd  0x00000002 , 0x00000002 
+ 00262175  0x000091dd copy  0x00000022 , 0x0000003f 
+ 00262176  0x000091de isub  0x00000002 , 0x0000003e 
+ 00262177  0x000091df nbranch  0x00040023 , 0x00000002 
+ 00262178  0x000091e0 branch  0x00006349 
+ 00262179  0x000091e3 jam  0x00000001 , 0x00004b00 
+ 00262180  0x000091e4 rtn 
+ 00262181  0x000091e7 jam  0x00000014 , 0x00004809 
+ 00262182  0x000091e8 branch  0x0000636f 
+ 00327681  0x000091f1 beq  0x00000040 , 0x00050006 
+ 00327682  0x000091f2 beq  0x00000041 , 0x00050018 
+ 00327683  0x000091f3 beq  0x00000042 , 0x00050025 
+ 00327684  0x000091f4 beq  0x00000043 , 0x0005002b 
+ 00327685  0x000091f5 rtn 
+ 00327686  0x000091f8 call  0x0005000e 
+ 00327687  0x000091f9 branch  0x0000557d 
+ 00327688  0x000091fb fetch  0x00000001 , 0x000047c5 
+ 00327689  0x000091fc store  0x00000001 , 0x00004172 
+ 00327690  0x000091fe jam  0x00000000 , 0x000047c4 
+ 00327691  0x000091ff rtn 
+ 00327692  0x00009201 jam  0x00000001 , 0x000047c4 
+ 00327693  0x00009202 rtn 
+ 00327694  0x00009204 fetch  0x00000001 , 0x000043d6 
+ 00327695  0x00009205 sub  0x0000003f , 0x0000000c , 0x0000003e 
+ 00327696  0x00009206 nbranch  0x0005000c , 0x00000002 
+ 00327697  0x00009207 fetch  0x00000001 , 0x000043d8 
+ 00327698  0x00009208 fetcht  0x00000001 , 0x000047c5 
+ 00327699  0x00009209 isub  0x00000002 , 0x0000003e 
+ 00327700  0x0000920a branch  0x00050008 , 0x00000002 
+ 00327701  0x0000920b fetch  0x00000001 , 0x000043d8 
+ 00327702  0x0000920c store  0x00000001 , 0x00004172 
+ 00327703  0x0000920d branch  0x0005000a 
+ 00327704  0x00009210 fetch  0x00000001 , 0x0000043f 
+ 00327705  0x00009211 rtnbit0  0x00000006 
+ 00327706  0x00009212 call  0x0005001d 
+ 00327707  0x00009213 nrtn  0x00000028 
+ 00327708  0x00009214 branch  0x000055a0 
+ 00327709  0x00009216 enable  0x00000028 
+ 00327710  0x00009217 fetch  0x00000001 , 0x0000045a 
+ 00327711  0x00009218 rshift4  0x0000003f , 0x0000003f 
+ 00327712  0x00009219 rtnne  0x0000000f 
+ 00327713  0x0000921a fetch  0x00000001 , 0x00000460 
+ 00327714  0x0000921b rshift4  0x0000003f , 0x0000003f 
+ 00327715  0x0000921c rtnne  0x00000000 
+ 00327716  0x0000921d branch  0x00007fe9 
+ 00327717  0x00009220 fetch  0x00000001 , 0x0000479f 
+ 00327718  0x00009221 nrtn  0x00000034 
+ 00327719  0x00009222 fetch  0x00000001 , 0x00000478 
+ 00327720  0x00009223 sub  0x0000003f , 0x0000001a , 0x0000003f 
+ 00327721  0x00009224 nrtn  0x00000005 
+ 00327722  0x00009225 branch  0x00003d60 
+ 00327723  0x00009228 call  0x000033af 
+ 00327724  0x00009229 call  0x000026e9 
+ 00327725  0x0000922a jam  0x00000002 , 0x00000a99 
+ 00327726  0x0000922b call  0x00007d86 
+ 00327727  0x0000922c call  0x00005cf7 
+ 00327728  0x0000922d call  0x00004d6b 
+ 00327729  0x0000922e branch  0x0000246e 
+ 00393217  0x00009234 beq  0x00000050 , 0x00060003 
+ 00393218  0x00009235 rtn 
+ 00393219  0x00009239 call  0x000002b8 
+ 00393220  0x0000923a jam  0x00000001 , 0x00004720 
+ 00393221  0x0000923b jam  0x00000000 , 0x0000479c 
+ 00393222  0x0000923c fetch  0x00000002 , 0x00004682 
+ 00393223  0x0000923d bbit1  0x0000000b , 0x00060012 
+ 00393224  0x0000923e fetch  0x00000004 , 0x000046d3 
+ 00393225  0x0000923f bbit0  0x00000018 , 0x00060012 
+ 00393226  0x00009240 call  0x00000594 
+ 00393227  0x00009241 fetcht  0x00000002 , 0x000047c2 
+ 00393228  0x00009242 increase  0x00000001 , 0x00000002 
+ 00393229  0x00009243 storet  0x00000002 , 0x000047c2 
+ 00393230  0x00009244 storet  0x00000002 , 0x000044a1 
+ 00393231  0x00009245 call  0x00000330 
+ 00393232  0x00009246 random  0x0000003f 
+ 00393233  0x00009247 store  0x00000001 , 0x000044a0 
+ 00393234  0x00009249 call  0x00003418 
+ 00393235  0x0000924a fetch  0x00000002 , 0x00004687 
+ 00393236  0x0000924b store  0x00000002 , 0x000046ac 
+ 00393237  0x0000924c jam  0x00000006 , 0x0000016d 
+ 00393238  0x0000924d setarg  0x00000000 
+ 00393239  0x0000924e store  0x00000002 , 0x000046b0 
+ 00393240  0x0000924f store  0x00000002 , 0x000046ae 
+ 00393241  0x00009250 arg  0x00000007 , 0x00000007 
+ 00393242  0x00009251 call  0x000043ce 
+ 00393243  0x00009252 call  0x000043ca 
+ 00393244  0x00009256 fetch  0x00000001 , 0x00004092 
+ 00393245  0x00009257 isolate1  0x00000000 , 0x0000003f 
+ 00393246  0x00009258 call  0x00007ddd , 0x00000001 
+ 00393247  0x0000925b branch  0x000004d2 
+ 00393248  0x0000925e jam  0x00000000 , 0x0000479f 
+ 00393249  0x00009260 setarg  0x00000005 
+ 00393250  0x00009261 istore  0x00000001 , 0x00000006 
+ 00393251  0x00009262 arg  0x00004b10 , 0x00000006 
+ 00393252  0x00009263 call  0x0000059b 
+ 00393253  0x00009264 branch  0x00007df4 
+ 00458753  0x00009269 beq  0x00000060 , 0x00070004 
+ 00458754  0x0000926a beq  0x00000061 , 0x00070027 
+ 00458755  0x0000926b rtn 
+ 00458756  0x0000926e set0  0x00000026 , 0x00000000 
+ 00458757  0x0000926f call  0x000001dd 
+ 00458758  0x00009270 call  0x00000144 
+ 00458759  0x00009271 fetch  0x00000001 , 0x00004c02 
+ 00458760  0x00009272 rtnne  0x000000ff 
+ 00458761  0x00009273 call  0x00070019 
+ 00458762  0x00009275 setarg  0x00000000 
+ 00458763  0x00009276 store  0x00000002 , 0x00004c1f 
+ 00458764  0x00009279 nop  0x000007d0 
+ 00458765  0x0000927a fetch  0x00000001 , 0x00004c1f 
+ 00458766  0x0000927b beq  0x000000ff , 0x000001b5 
+ 00458767  0x0000927c call  0x00000190 
+ 00458768  0x0000927d nbranch  0x00070022 , 0x00000018 
+ 00458769  0x0000927e nbranch  0x00070022 , 0x0000002f 
+ 00458770  0x00009280 set1  0x00000026 , 0x00000000 
+ 00458771  0x00009281 setarg  0x00000000 
+ 00458772  0x00009282 store  0x00000002 , 0x00004c1f 
+ 00458773  0x00009283 jam  0x0000003c , 0x00000a99 
+ 00458774  0x00009284 call  0x00007d86 
+ 00458775  0x00009285 call  0x0000018b 
+ 00458776  0x00009286 branch  0x0000037f 
+ 00458777  0x00009289 jam  0x000000ff , 0x0000119e 
+ 00458778  0x0000928a fetch  0x00000001 , 0x00004bf3 
+ 00458779  0x0000928b store  0x00000001 , 0x0000119f 
+ 00458780  0x0000928c fetch  0x00000004 , 0x00004c29 
+ 00458781  0x0000928d store  0x00000004 , 0x000011a0 
+ 00458782  0x0000928e arg  0x00000006 , 0x00000002 
+ 00458783  0x0000928f arg  0x0000119e , 0x00000011 
+ 00458784  0x00009290 call  0x000001ca 
+ 00458785  0x00009291 branch  0x000001ea 
+ 00458786  0x00009294 fetch  0x00000002 , 0x00004c1f 
+ 00458787  0x00009295 increase  0x00000001 , 0x0000003f 
+ 00458788  0x00009296 store  0x00000002 , 0x00004c1f 
+ 00458789  0x00009297 call  0x00000144 
+ 00458790  0x00009298 branch  0x0007000c 
+ 00458791  0x0000929c fetch  0x00000001 , 0x00004720 
+ 00458792  0x0000929d rtneq  0x00000001 
+ 00458793  0x0000929e fetch  0x00000004 , 0x000046d3 
+ 00458794  0x0000929f rtnbit0  0x00000011 
+ 00458795  0x000092a0 rtnbit1  0x00000003 
+ 00458796  0x000092a1 rtnmark1  0x00000026 
+ 00458797  0x000092a2 call  0x000000d4 
+ 00458798  0x000092a3 arg  0x00000003 , 0x00000007 
+ 00458799  0x000092a4 call  0x000043ce 
+ 00458800  0x000092a5 setarg  0x00000000 
+ 00458801  0x000092a6 store  0x00000002 , 0x000046ae 
+ 00458802  0x000092a7 store  0x00000001 , 0x000046b4 
+ 00458803  0x000092a8 store  0x00000002 , 0x00004c1f 
+ 00458804  0x000092a9 call  0x000042ca 
+ 00458805  0x000092aa branch  0x00070036 
+ 00458806  0x000092ad set1  0x00000026 , 0x00000000 
+ 00458807  0x000092ae call  0x0007003a 
+ 00458808  0x000092b0 jam  0x00000001 , 0x00004c02 
+ 00458809  0x000092b1 rtn 
+ 00458810  0x000092b4 jam  0x00000020 , 0x000041de 
+ 00458811  0x000092b5 jam  0x00000000 , 0x00004bf1 
+ 00458812  0x000092b6 jam  0x0000004e , 0x00004bfc 
+ 00458813  0x000092b7 fetch  0x00000004 , 0x00004bfe 
+ 00458814  0x000092b8 branch  0x000001dc 
+ 00524289  0x000092bd beq  0x00000070 , 0x00080003 
+ 00524290  0x000092be rtn 
+ 00524291  0x000092c1 set0  0x00000026 , 0x00000000 
+ 00524292  0x000092c2 call  0x0008002d 
+ 00524293  0x000092c3 call  0x0008001a 
+ 00524294  0x000092c5 jam  0x00000000 , 0x00004c1f 
+ 00524295  0x000092c8 nop  0x000007d0 
+ 00524296  0x000092c9 fetch  0x00000001 , 0x00004c1f 
+ 00524297  0x000092ca beq  0x000000ff , 0x000001b5 
+ 00524298  0x000092cb call  0x00000190 
+ 00524299  0x000092cc nbranch  0x00080023 , 0x00000018 
+ 00524300  0x000092cd nbranch  0x00080023 , 0x0000002f 
+ 00524301  0x000092ce call  0x000001b7 
+ 00524302  0x000092cf call  0x000002b8 
+ 00524303  0x000092d0 fetch  0x00000004 , 0x00004c1a 
+ 00524304  0x000092d1 fetcht  0x00000004 , 0x00004bfe 
+ 00524305  0x000092d2 isub  0x00000002 , 0x0000003e 
+ 00524306  0x000092d3 branch  0x00080037 , 0x00000005 
+ 00524307  0x000092d4 set1  0x00000026 , 0x00000000 
+ 00524308  0x000092d5 setarg  0x00000000 
+ 00524309  0x000092d6 store  0x00000002 , 0x00004c1f 
+ 00524310  0x000092d7 jam  0x0000003c , 0x00000a99 
+ 00524311  0x000092d8 call  0x00007d86 
+ 00524312  0x000092d9 call  0x0000018b 
+ 00524313  0x000092da branch  0x0000037f 
+ 00524314  0x000092dd jam  0x000000ff , 0x0000119e 
+ 00524315  0x000092de fetch  0x00000001 , 0x00004bf3 
+ 00524316  0x000092df store  0x00000001 , 0x0000119f 
+ 00524317  0x000092e0 fetch  0x00000004 , 0x00004c29 
+ 00524318  0x000092e1 store  0x00000004 , 0x000011a0 
+ 00524319  0x000092e2 arg  0x00000006 , 0x00000002 
+ 00524320  0x000092e3 arg  0x0000119e , 0x00000011 
+ 00524321  0x000092e4 call  0x000001ca 
+ 00524322  0x000092e5 branch  0x000001ea 
+ 00524323  0x000092e8 fetch  0x00000001 , 0x00004c1f 
+ 00524324  0x000092e9 increase  0x00000001 , 0x0000003f 
+ 00524325  0x000092ea store  0x00000001 , 0x00004c1f 
+ 00524326  0x000092eb fetch  0x00000001 , 0x00004d30 
+ 00524327  0x000092ec increase  0x00000001 , 0x0000003f 
+ 00524328  0x000092ed and_into  0x00000001 , 0x0000003f 
+ 00524329  0x000092ee store  0x00000001 , 0x00004d30 
+ 00524330  0x000092ef beq  0x00000000 , 0x00080033 
+ 00524331  0x000092f0 beq  0x00000001 , 0x00080035 
+ 00524332  0x000092f1 rtn 
+ 00524333  0x000092f4 jam  0x00000020 , 0x000041de 
+ 00524334  0x000092f5 setarg  0x00000f0f 
+ 00524335  0x000092f6 store  0x00000002 , 0x00004c1a 
+ 00524336  0x000092f7 istore  0x00000002 , 0x00000005 
+ 00524337  0x000092f9 call  0x000001dd 
+ 00524338  0x000092fa branch  0x00000144 
+ 00524339  0x000092fd call  0x0008002d 
+ 00524340  0x000092fe branch  0x00080007 
+ 00524341  0x00009301 call  0x0008003b 
+ 00524342  0x00009302 branch  0x00080007 
+ 00524343  0x00009305 set1  0x00000026 , 0x00000000 
+ 00524344  0x00009306 call  0x0008003b 
+ 00524345  0x00009308 jam  0x00000001 , 0x00004c02 
+ 00524346  0x00009309 rtn 
+ 00524347  0x0000930c jam  0x00000020 , 0x000041de 
+ 00524348  0x0000930d jam  0x00000000 , 0x00004bf1 
+ 00524349  0x0000930e jam  0x0000004e , 0x00004bfc 
+ 00524350  0x0000930f fetch  0x00000004 , 0x00004bfe 
+ 00524351  0x00009310 branch  0x000001dc 
+ 00589825  0x00009319 beq  0x00000080 , 0x00090009 
+ 00589826  0x0000931c rtn 
+ 00589827  0x00009326 call  0x000068a2 
+ 00589828  0x00009327 fetch  0x00000002 , 0x0000421d 
+ 00589829  0x00009328 nbranch  0x00090007 , 0x00000034 
+ 00589830  0x00009329 setarg  0x00001122 
+ 00589831  0x0000932b store  0x00000002 , 0x000047c2 
+ 00589832  0x0000932c rtn 
+ 00589833  0x00009330 call  0x000000ef 
+ 00589834  0x00009335 call  0x00003e6e 
+ 00589835  0x00009336 call  0x000000d4 
+ 00589836  0x00009337 fetch  0x00000001 , 0x000046ef 
+ 00589837  0x00009338 store  0x00000001 , 0x00004715 
+ 00589838  0x00009339 call  0x00004298 
+ 00589839  0x0000933a fetcht  0x00000001 , 0x00004b23 
+ 00589840  0x0000933b call  0x0000680e 
+ 00589841  0x0000933c fetcht  0x00000001 , 0x00004b45 
+ 00589842  0x0000933d call  0x0000680e 
+ 00589843  0x0000933f call  0x00003e1e 
+ 00589844  0x00009340 call  0x0009001a 
+ 00589845  0x00009341 setarg  0x00000000 
+ 00589846  0x00009342 store  0x00000002 , 0x00004154 
+ 00589847  0x00009343 call  0x000068a2 
+ 00589848  0x00009344 call  0x00003e54 
+ 00589849  0x0000934a branch  0x00000321 
+ 00589850  0x0000934e call  0x000074b9 
+ 00589851  0x0000934f arg  0x00008c00 , 0x00000006 
+ 00589852  0x00009350 arg  0x00004876 , 0x00000005 
+ 00589853  0x00009351 arg  0x00000171 , 0x00000039 
+ 00589854  0x00009352 call  0x00007f01 
+ 00589855  0x00009354 setarg  0x000f0209 
+ 00589856  0x00009355 istore  0x00000003 , 0x00000005 
+ 00589857  0x00009356 setarg  0x00120009 
+ 00589858  0x00009357 istore  0x00000003 , 0x00000005 
+ 00589859  0x00009359 setarg  0x00100209 
+ 00589860  0x0000935a istore  0x00000003 , 0x00000005 
+ 00589861  0x0000935b setarg  0x00000009 
+ 00589862  0x0000935c istore  0x00000003 , 0x00000005 
+ 00589863  0x0000935d arg  0x00008d71 , 0x00000006 
+ 00589864  0x0000935e arg  0x00000109 , 0x00000039 
+ 00589865  0x0000935f call  0x00007f01 
+ 00589866  0x00009361 jam  0x00000000 , 0x0000488d 
+ 00589867  0x00009362 jam  0x0000006d , 0x00004885 
+ 00589868  0x00009363 setarg  0x0000401f 
+ 00589869  0x00009364 store  0x00000002 , 0x000049db 
+ 00589870  0x00009365 setarg  0x00006d04 
+ 00589871  0x00009366 store  0x00000002 , 0x00004a44 
+ 00589872  0x00009367 setarg  0x000016b0 
+ 00589873  0x00009368 store  0x00000002 , 0x00004a4a 
+ 00589874  0x0000936a setarg  0x00004876 
+ 00589875  0x0000936b store  0x00000002 , 0x00004575 
+ 00589876  0x0000936c rtn 
+ 00655361  0x00009373 beq  0x00000090 , 0x000a0005 
+ 00655362  0x00009374 beq  0x00000091 , 0x000a001f 
+ 00655363  0x00009375 beq  0x00000092 , 0x000a002f 
+ 00655364  0x00009376 rtn 
+ 00655365  0x00009379 fetch  0x00000001 , 0x00004bf7 
+ 00655366  0x0000937a beq  0x00000001 , 0x00007fe7 
+ 00655367  0x0000937b fetch  0x00000001 , 0x00004c02 
+ 00655368  0x0000937c beq  0x00000001 , 0x000a000c 
+ 00655369  0x0000937d beq  0x00000002 , 0x000a000f 
+ 00655370  0x0000937e beq  0x00000003 , 0x000a0012 
+ 00655371  0x0000937f branch  0x00002a8c 
+ 00655372  0x00009382 jam  0x00000011 , 0x00004c02 
+ 00655373  0x00009383 jam  0x000000aa , 0x0000119e 
+ 00655374  0x00009384 branch  0x000a0014 
+ 00655375  0x00009386 jam  0x00000012 , 0x00004c02 
+ 00655376  0x00009387 jam  0x00000055 , 0x0000119e 
+ 00655377  0x00009388 branch  0x000a0014 
+ 00655378  0x0000938a jam  0x00000013 , 0x00004c02 
+ 00655379  0x0000938b jam  0x00000022 , 0x0000119e 
+ 00655380  0x0000938d fetch  0x00000001 , 0x00004bf3 
+ 00655381  0x0000938e and_into  0x00000007 , 0x0000003f 
+ 00655382  0x0000938f store  0x00000001 , 0x0000119f 
+ 00655383  0x00009390 fetch  0x00000004 , 0x00004c29 
+ 00655384  0x00009391 store  0x00000004 , 0x000011a0 
+ 00655385  0x00009393 jam  0x00000000 , 0x000011a4 
+ 00655386  0x00009394 arg  0x0000119e , 0x00000011 
+ 00655387  0x00009395 arg  0x00000007 , 0x00000002 
+ 00655388  0x00009396 call  0x000001ca 
+ 00655389  0x00009397 call  0x00000154 
+ 00655390  0x00009398 branch  0x00007fe7 
+ 00655391  0x0000939b fetch  0x00000001 , 0x00004c02 
+ 00655392  0x0000939c rtneq  0x000000ff 
+ 00655393  0x0000939d beq  0x00000011 , 0x000a0025 
+ 00655394  0x0000939e beq  0x00000012 , 0x000a0027 
+ 00655395  0x0000939f beq  0x00000013 , 0x000a0029 
+ 00655396  0x000093a0 rtn 
+ 00655397  0x000093a3 jam  0x00000002 , 0x00004c02 
+ 00655398  0x000093a4 branch  0x00000185 
+ 00655399  0x000093a6 jam  0x00000003 , 0x00004c02 
+ 00655400  0x000093a7 branch  0x00000185 
+ 00655401  0x000093a9 jam  0x000000ff , 0x00004c02 
+ 00655402  0x000093aa jam  0x00000039 , 0x00000a99 
+ 00655403  0x000093ab call  0x00007d86 
+ 00655404  0x000093ac fetch  0x00000004 , 0x00004bd2 
+ 00655405  0x000093ad call  0x000001dc 
+ 00655406  0x000093ae branch  0x00000185 
+ 00655407  0x000093b2 call  0x0000051f 
+ 00655408  0x000093b3 call  0x0000043c 
+ 00655409  0x000093b4 jam  0x00000001 , 0x0000478b 
+ 00655410  0x000093b5 arg  0x00000003 , 0x00000007 
+ 00655411  0x000093b6 call  0x000043d2 
+ 00655412  0x000093b7 setarg  0x00000000 
+ 00655413  0x000093b8 store  0x00000002 , 0x00004707 
+ 00655414  0x000093b9 jam  0x00000000 , 0x000046a7 
+ 00655415  0x000093bb call  0x0000405d 
+ 00655416  0x000093bd call  0x000002b8 
+ 00655417  0x000093bf fetch  0x00000004 , 0x00004c1a 
+ 00655418  0x000093c0 store  0x00000004 , 0x0000477b 
+ 00655419  0x000093c2 branch  0x0000032b 
+ 00720897  0x000093c8 beq  0x000000a0 , 0x000b0007 
+ 00720898  0x000093c9 beq  0x000000a1 , 0x000b000d 
+ 00720899  0x000093ca beq  0x000000a2 , 0x000b0021 
+ 00720900  0x000093cb beq  0x000000a3 , 0x000b001a 
+ 00720901  0x000093cc beq  0x000000a4 , 0x000b0029 
+ 00720902  0x000093cd rtn 
+ 00720903  0x000093d0 jam  0x00000000 , 0x00004d32 
+ 00720904  0x000093d1 call  0x000002b8 
+ 00720905  0x000093d2 call  0x000001c6 
+ 00720906  0x000093d3 jam  0x00000000 , 0x000041bd 
+ 00720907  0x000093d4 call  0x000000c7 
+ 00720908  0x000093d5 branch  0x000002b5 
+ 00720909  0x000093d8 fetch  0x00000002 , 0x00004509 
+ 00720910  0x000093d9 rtneq  0x00000000 
+ 00720911  0x000093da fetch  0x00000001 , 0x00000441 
+ 00720912  0x000093db rshift2  0x0000003f , 0x0000003f 
+ 00720913  0x000093dc sub  0x0000003f , 0x0000000c , 0x0000003e 
+ 00720914  0x000093dd branch  0x000b0018 , 0x00000002 
+ 00720915  0x000093de setarg  0x00000009 
+ 00720916  0x000093df store  0x00000002 , 0x00004496 
+ 00720917  0x000093e0 store  0x00000002 , 0x00004498 
+ 00720918  0x000093e2 jam  0x00000001 , 0x000047c4 
+ 00720919  0x000093e3 rtn 
+ 00720920  0x000093e6 jam  0x00000001 , 0x00004b6a 
+ 00720921  0x000093e7 branch  0x000005fc 
+ 00720922  0x000093eb fetch  0x00000002 , 0x00004682 
+ 00720923  0x000093ec rtnbit1  0x0000000c 
+ 00720924  0x000093ed rtnbit1  0x00000006 
+ 00720925  0x000093ee rtnbit1  0x0000000b 
+ 00720926  0x000093ef fetch  0x00000004 , 0x000046d3 
+ 00720927  0x000093f0 rtnbit1  0x00000005 
+ 00720928  0x000093f1 branch  0x000033a7 
+ 00720929  0x000093f4 setarg  0x00000007 
+ 00720930  0x000093f5 store  0x00000002 , 0x00004496 
+ 00720931  0x000093f6 store  0x00000002 , 0x00004498 
+ 00720932  0x000093f7 jam  0x00000000 , 0x000047c4 
+ 00720933  0x000093f8 jam  0x00000000 , 0x0000479c 
+ 00720934  0x000093f9 call  0x000003a6 
+ 00720935  0x000093fa call  0x00005816 
+ 00720936  0x000093fb branch  0x000041d9 
+ 00720937  0x000093ff enable  0x00000028 
+ 00720938  0x00009400 hfetch  0x00000004 , 0x00008138 
+ 00720939  0x00009401 setflag  0x00000028 , 0x0000001a , 0x0000003f 
+ 00720940  0x00009402 hstore  0x00000004 , 0x0000804c 
+ 00720941  0x00009403 call  0x00002c21 
+ 00720942  0x00009404 call  0x000074bd 
+ 00720943  0x00009405 call  0x00004482 
+ 00720944  0x00009406 call  0x00003e9f 
+ 00720945  0x00009407 fetcht  0x00000001 , 0x00004b23 
+ 00720946  0x00009408 call  0x00006829 
+ 00720947  0x00009409 call  0x000000c7 
+ 00720948  0x0000940a fetch  0x00000001 , 0x00004720 
+ 00720949  0x0000940b sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00720950  0x0000940c call  0x00000589 , 0x00000005 
+ 00720951  0x0000940e call  0x00000365 
+ 00720952  0x0000940f hfetch  0x00000001 , 0x00008081 
+ 00720953  0x00009410 and  0x0000003f , 0x000000f7 , 0x0000003f 
+ 00720954  0x00009411 hstore  0x00000001 , 0x00008081 
+ 00720955  0x00009413 fetcht  0x00000001 , 0x000046f3 
+ 00720956  0x00009414 branch  0x000067ed 
+ 00786433  0x0000941a beq  0x000000b0 , 0x000c0007 
+ 00786434  0x0000941b beq  0x000000b1 , 0x000c0009 
+ 00786435  0x0000941c beq  0x000000b2 , 0x000c000f 
+ 00786436  0x0000941d beq  0x000000b3 , 0x000c0014 
+ 00786437  0x0000941e beq  0x000000b4 , 0x000c001a 
+ 00786438  0x0000941f rtn 
+ 00786439  0x00009422 call  0x0000051f 
+ 00786440  0x00009425 branch  0x000041c3 
+ 00786441  0x00009428 fetch  0x00000001 , 0x00004808 
+ 00786442  0x00009429 rtneq  0x00000002 
+ 00786443  0x0000942a increase  0x00000001 , 0x0000003f 
+ 00786444  0x0000942b store  0x00000001 , 0x00004808 
+ 00786445  0x0000942c jam  0x00000012 , 0x000041e3 
+ 00786446  0x0000942d branch  0x0000340e 
+ 00786447  0x00009430 fetch  0x00000001 , 0x00004808 
+ 00786448  0x00009431 rtnne  0x00000002 
+ 00786449  0x00009432 jam  0x00000000 , 0x00004808 
+ 00786450  0x00009433 jam  0x0000000e , 0x000041e3 
+ 00786451  0x00009434 branch  0x0000340e 
+ 00786452  0x00009437 fetch  0x00000001 , 0x0000479f 
+ 00786453  0x00009438 beq  0x00000001 , 0x000c0017 
+ 00786454  0x00009439 branch  0x000c0018 
+ 00786455  0x0000943c jam  0x00000005 , 0x000046c6 
+ 00786456  0x0000943e arg  0x00000001 , 0x00000007 
+ 00786457  0x0000943f branch  0x000041b9 
+ 00786458  0x00009442 jam  0x00000000 , 0x00004aff 
+ 00786459  0x00009443 jam  0x00000000 , 0x00004b01 
+ 00786460  0x00009444 jam  0x00000000 , 0x00004b0a 
+ 00786461  0x00009445 branch  0x000041d9 
Index: YDN_1066_139D_NEW/output/bt_program23.list
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/bt_program23.list	(revision 2105)
+++ /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/bt_program23.list	(working copy)
@@ -14,31658 +14,31708 @@
 0x0008 000080 store 1 ,mem_bt_ui_button_count 
 0x0009 000081 call mouse_bt_discovery_button_down_disable 
 0x000a 000082 call p_mouse_spi_init 
-0x000b 000083 call p_mouse_cb_fuction 
-0x000c 000084 call p_mouse_wakeup_from_power 
-0x000d 000085 branch p_mouse_setting_config 
-:      000087 p_mouse_cb_fuction:
-0x000e 000088 setarg p_mouse_g24_package_data 
-0x000f 000089 store 2 ,mem_cb_24g_data 
-0x0010 000090 setarg p_mouse_le 
-0x0011 000091 store 2 ,mem_cb_le_process 
-0x0012 000092 setarg p_le_mouse_bb_event_connect_complete 
-0x0013 000093 store 2 ,mem_cb_att_write 
-0x0014 000094 setarg p_mouse_bt 
-0x0015 000095 store 2 ,mem_cb_bt_process 
-0x0016 000096 setarg p_mouse_before_lpm 
-0x0017 000097 store 2 ,mem_cb_before_lpm 
-0x0018 000098 setarg p_mouse_priority_bb_event 
-0x0019 000099 store 2 ,mem_cb_bb_event_process 
-0x001a 000100 setarg p_mouse_idle 
-0x001b 000101 store 2 ,mem_cb_idle_process 
-0x001c 000102 setarg p_mouse_before_hibernate 
-0x001d 000103 store 2 ,mem_cb_before_hibernate 
-0x001e 000104 setarg p_mouse_bb_event_timer 
-0x001f 000105 store 2 ,mem_cb_event_timer 
-0x0020 000106 rtn 
-:      000108 p_mouse_wakeup_from_power:
-0x0021 000109 setarg 25 
-0x0022 000110 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
-0x0023 000111 ncall p_mouse_24g_transmit_by_interrupt_exit_count_max ,wake 
-0x0024 000112 call p_mouse_init_sunt 
-0x0025 000113 call p_mouse_sensor_powerdown 
-:      000114 p_mouse_wakeup_no_from_power:
-0x0026 000115 fetch 1 ,mem_reconn_times_init 
-0x0027 000116 store 1 ,mem_reconn_times 
-0x0028 000117 rtn 
-:      000118 p_mouse_24g_transmit_by_interrupt_exit_count_max:
-0x0029 000119 setarg 375 
-0x002a 000120 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
-0x002b 000121 rtn 
-0x002c 000123 nop 1 
-0x002d 000124 nop 1 
-0x002e 000125 nop 1 
-0x002f 000126 nop 1 
-0x0030 000127 nop 1 
-0x0031 000128 nop 1 
-0x0032 000129 nop 1 
-0x0033 000130 nop 1 
-0x0034 000131 nop 1 
-0x0035 000132 nop 1 
-0x0036 000133 nop 1 
-0x0037 000134 nop 1 
-0x0038 000135 nop 1 
-0x0039 000136 nop 1 
-0x003a 000137 nop 1 
-0x003b 000138 nop 1 
-0x003c 000139 nop 1 
-0x003d 000140 nop 1 
-0x003e 000141 nop 1 
-0x003f 000142 nop 1 
-:      000145 p_patch_array:
-0x0040 000146 bbit1 8 ,pf_patch_ext 
-0x0041 000148 beq patch00_1 ,p_soft_reset_1 
-0x0042 000149 beq patch00_2 ,p_soft_reset_2 
-0x0043 000150 beq patch10_5 ,p_shutdown_radio 
-0x0044 000151 beq patch11_1 ,p_set_freq_tx 
-0x0045 000152 beq patch03_3 ,p_page_wait_fhs_reply_ok 
-0x0046 000153 beq patch04_6 ,p_role_switch_master 
-0x0047 000154 beq patch09_0 ,p_quit_connection_cont 
-0x0048 000155 beq patch09_2 ,p_prepare_tx 
-0x0049 000156 beq patch0a_1 ,p_slave_conn_recv_packet 
-0x004a 000157 beq patch0b_1 ,p_process_dmh 
-0x004b 000158 beq patch14_7 ,p_lpm_dispatch 
-0x004c 000159 beq patch15_5 ,p_lpm_set_mult 
-0x004d 000160 beq patch19_3 ,app_bt_start_reconnect + 3 
-0x004e 000161 beq patch1d_1 ,p_mouse_bb_disconnected 
-0x004f 000162 beq patch14_1 ,p_init_param 
-0x0050 000163 beq patch16_1 ,p_lpm_check_wake_lock 
-0x0051 000164 beq patch16_2 ,p_g24_dispatch 
-0x0052 000165 beq patch18_4 ,p_device_init 
-0x0053 000166 beq patch1c_3 ,p_mouse_seting_dpi 
-0x0054 000167 beq patch1c_6 ,p_mouse_motion 
-0x0055 000168 beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
-0x0056 000169 beq patch1d_3 ,p_mouse_start_discovery 
-0x0057 000170 beq patch1d_4 ,p_mouse_stop_discovery 
-0x0058 000171 branch loop 
-:      000172 pf_patch_ext:
-0x0059 000173 beq patch27_1 ,p_le_slave_match 
-0x005a 000174 beq patch28_3 ,p_le_next_adv_channel 
-0x005b 000175 beq patch29_2 ,p_le_receive_skip 
-0x005c 000176 beq patch2a_7 ,p_le_update_param 
-0x005d 000177 beq patch2b_1 ,p_le_update_channel_map 
-0x005e 000178 beq patch2c_3 ,p_le_prepare_tx 
-0x005f 000179 beq patch2c_6 ,p_le_parse 
-0x0060 000180 beq patch2c_7 ,p_le_parse_l2cap 
-0x0061 000181 beq patch2d_2 ,p_le_adv_not_match 
-0x0062 000182 beq patch2e_7 ,p_le_lpm_setmult 
-0x0063 000183 beq patch20_5 ,p_hid_rx_process 
-0x0064 000184 beq patch30_0 ,p_parse_lmp_accepted 
-0x0065 000185 beq patch30_2 ,p_send_lmp 
-0x0066 000186 beq patch31_0 ,p_process_conn_sm 
-0x0067 000187 beq patch31_4 ,p_twspi_reset 
-0x0068 000188 beq patch31_5 ,p_spid_init 
-0x0069 000189 beq patch3f_2 ,p_check_51cmd_once_continue 
-0x006a 000190 branch loop 
-:      000193 p_rssi_signal:
-0x006b 000194 copy pdata ,rega 
-0x006c 000195 fetcht 1 ,mem_rssi_signal_index 
-0x006d 000196 setarg mem_rssi_signal_buf 
-0x006e 000197 iadd temp ,contw 
-0x006f 000198 copy rega ,pdata 
-0x0070 000199 istore 1 ,contw 
-0x0071 000200 increase 1 ,temp 
-0x0072 000201 and_into rssi_buf_len_signal ,temp 
-0x0073 000202 storet 1 ,mem_rssi_signal_index 
-0x0074 000203 rtn 
-:      000205 p_soft_reset_1:
-0x0075 000206 arg mem_sp_state ,contw 
-0x0076 000207 arg 12 ,loopcnt 
-0x0077 000208 call clear_mem 
-0x0078 000209 call p_mouse_le_txbuff_load 
-0x0079 000210 call rfcomm_init 
-0x007a 000211 call init_lmp 
-0x007b 000212 ncall lpm_disable_exen_output ,wake 
-0x007c 000213 call ui_init + 1 
-0x007d 000214 branch soft_reset + 11 
-:      000216 p_soft_reset_2:
-0x007e 000217 call app_lpm_init ,wake 
-0x007f 000218 call publickey_init 
-0x0080 000219 call lpm_recover_clk ,wake 
-:      000220 p_sp_cal_loop:
-0x0081 000221 call sp_calc_sequence 
-0x0082 000222 fetch 1 ,mem_ssp_enable 
-0x0083 000223 branch main_loop ,blank 
-0x0084 000224 fetch 1 ,mem_sp_local_key_invalid 
-0x0085 000225 branch p_sp_cal_loop ,blank 
-0x0086 000226 branch main_loop 
-:      000228 p_init_param:
-0x0087 000229 setarg param_le_version 
-0x0088 000230 store 3 ,mem_lmp_version 
-0x0089 000231 setarg param_le_subversion 
-0x008a 000232 store 2 ,mem_lmp_version + 3 
-0x008b 000233 branch init_param + 12 
-:      000235 p_lpm_check_wake_lock:
-0x008c 000236 rtnmark1 mark_24g 
-0x008d 000237 fetch 1 ,mem_mouse_multi_led_state 
-0x008e 000238 nbranch disable_blank ,blank 
-0x008f 000239 fetch 1 ,mem_mouse_multi_led_blink_count 
-0x0090 000240 nbranch disable_blank ,blank 
-0x0091 000241 fetch 1 ,mem_mouse_clear_sensor_data_flag 
-0x0092 000242 branch disable_blank ,blank 
-0x0093 000243 fetch 1 ,mem_mouse_le_conn_param_reject 
-0x0094 000244 beq le_lpm_disable ,disable_blank 
-0x0095 000245 fetch 2 ,mem_sdp_remote_cid 
-0x0096 000246 nbranch disable_blank ,blank 
-0x0097 000247 fetch 1 ,mem_mouse_wheel_trigger 
-0x0098 000248 nbranch disable_blank ,blank 
-0x0099 000249 branch enable_blank 
-:      000252 p_g24_dispatch:
-0x009a 000253 rtnmark0 mark_24g 
-0x009b 000254 fetch 1 ,mem_24g_transmit_by_interrupt 
-0x009c 000255 beq g24_tx_timer_int_enable ,p_g24_transmit_by_interrupt 
-:      000256 p_g24_transmit_process:
-0x009d 000257 call p_g24_txdata_prep 
-0x009e 000258 nbranch p_g24_nodata_transmit ,user 
-0x009f 000259 call p_g24_rf_sta_check 
-:      000260 p_g24_transmit_start:
-0x00a0 000261 call p_g24_transmit_packet 
-0x00a1 000262 fetch 1 ,mem_24g_pairing_sm 
-0x00a2 000263 rtnne state_24g_pairing_success 
-0x00a3 000264 call power_ctrl_start 
-0x00a4 000265 fetch 1 ,mem_mouse_multi_led_state 
-0x00a5 000266 beq on ,p_g24_transmit_by_interrupt_enable 
-:      000267 p_g24_short_sleep:
-0x00a6 000268 call p_g24_lpm_wait 
-0x00a7 000269 nrtn user 
-0x00a8 000270 call p_clear_wake 
-0x00a9 000271 setarg 60500 
-0x00aa 000272 branch lpm_dispatch_sleep 
-:      000274 p_g24_dpi_no_sleep:
-0x00ab 000275 jam 1 ,mem_mouse_dpi_no_enter_long_sleep_flag 
-0x00ac 000276 rtn 
-:      000278 p_g24_transmit_by_interrupt:
-0x00ad 000279 call p_g24_timer_check 
-0x00ae 000280 nrtn user 
-0x00af 000281 call p_g24_interval_calibrate 
-0x00b0 000282 fetch 2 ,mem_24g_transmit_by_interrupt_exit_count 
-0x00b1 000283 increase 1 ,pdata 
-0x00b2 000284 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-0x00b3 000285 fetcht 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
-0x00b4 000286 isub temp ,null 
-0x00b5 000287 call p_g24_transmit_by_interrupt_exit ,zero 
-0x00b6 000288 branch p_g24_transmit_process 
-:      000289 p_g24_transmit_by_interrupt_exit:
-0x00b7 000290 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
-0x00b8 000291 setarg 0 
-0x00b9 000292 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-0x00ba 000293 setarg 25 
-0x00bb 000294 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
-:      000295 p_g24_interval_min:
-0x00bc 000296 jam 0 ,mem_24g_pac_index 
-0x00bd 000297 fetch 1 ,mem_24g_interval_min 
-:      000298 p_g24_current_interval_store:
-0x00be 000299 store 1 ,mem_24g_interval 
-0x00bf 000300 rtn 
-:      000301 p_g24_interval_max:
-0x00c0 000302 fetch 1 ,mem_24g_interval_max 
-0x00c1 000303 branch p_g24_current_interval_store 
-:      000304 p_g24_interval_calibrate:
-0x00c2 000305 fetch 1 ,mem_24g_pac_index 
-0x00c3 000306 increase 1 ,pdata 
-0x00c4 000307 store 1 ,mem_24g_pac_index 
-0x00c5 000308 beq 4 ,p_g24_interval_max 
-0x00c6 000309 beq 5 ,p_g24_interval_min 
-0x00c7 000310 rtn 
-:      000312 p_g24_nodata_transmit:
-0x00c8 000313 fetch 1 ,mem_24g_abort_pac 
-0x00c9 000314 call p_g24_send_abort_packet ,blank 
-0x00ca 000315 fetch 1 ,mem_mouse_multi_led_blink_count 
-0x00cb 000316 nrtn blank 
-0x00cc 000317 fetch 1 ,mem_mouse_dpi_no_enter_long_sleep_flag 
-0x00cd 000318 nrtn blank 
-0x00ce 000319 fetch 1 ,mem_mouse_multi_led_state 
-0x00cf 000320 rtneq on 
-:      000321 p_g24_long_sleep:
-0x00d0 000322 call p_g24_lpm_wait 
-0x00d1 000323 nrtn user 
-0x00d2 000324 fetch 3 ,mem_24g_enter_hibernate 
-0x00d3 000325 call clk2lpo 
-0x00d4 000326 storet 4 ,mem_sleep_counter 
-0x00d5 000327 branch lpm_sleep 
-:      000329 p_g24_lpm_wait:
-0x00d6 000330 enable user 
-0x00d7 000331 call lpo_calibration 
-0x00d8 000332 fetch 3 ,mem_clks_per_lpo 
-0x00d9 000333 branch disable_user ,blank 
-0x00da 000334 fetch 1 ,mem_lpm_mode 
-0x00db 000335 branch disable_user ,blank 
-0x00dc 000336 fetch 1 ,mem_24g_transmit_by_interrupt 
-0x00dd 000337 beq g24_tx_timer_int_enable ,disable_user 
-:      000338 p_mouse_setgpio_lpm:
-0x00de 000339 call p_mouse_set_sdio_high 
-0x00df 000340 call p_clear_wake 
-:      000341 p_mouse_setgpio_hibernate:
-0x00e0 000342 call p_mouse_lpm_before_common 
-0x00e1 000343 call p_flash_ncs_disable 
-0x00e2 000344 hfetch 4 ,core_gpio_oe0 
-0x00e3 000345 hfetcht 4 ,core_gpio_pu0 
-0x00e4 000346 ior temp ,temp 
-0x00e5 000347 invert temp ,temp 
-0x00e6 000348 hstoret 4 ,core_gpio_pd0 
-0x00e7 000350 hfetch 1 ,core_gpio_pd1 
-0x00e8 000351 set0 2 ,pdata 
-0x00e9 000352 hstore 1 ,core_gpio_pd1 
-0x00ea 000353 hfetch 1 ,core_gpio_pd2 
-0x00eb 000354 set0 6 ,pdata 
-0x00ec 000355 hstore 1 ,core_gpio_pd2 
-:      000367 p_mouse_multi_led_gpio_set_float:
-0x00ed 000370 fetcht 1 ,mem_mouse_multi_led_gpio 
-0x00ee 000371 set0 gpio_active_bit ,temp 
-0x00ef 000372 branch gpio_set_high_impedance 
-:      000375 p_mouse_lpm_before_common:
-0x00f0 000376 call mouse_wheel_check 
-0x00f1 000377 arg mouse_spi1_clk_gpio ,temp 
-0x00f2 000378 fetch mouse_flag_len ,mem_mouse_flag 
-0x00f3 000379 isolate1 mouse_enable_spi2 ,pdata 
-0x00f4 000380 call mouse_spi_clk_gpio ,true 
-0x00f5 000381 call gpio_config_output 
-0x00f6 000382 call twspi_disable 
-0x00f7 000386 fetcht 1 ,mem_lbutton_gpio 
-0x00f8 000387 call gpio_set_wake_by_current_state 
-0x00f9 000388 fetcht 1 ,mem_rbutton_gpio 
-0x00fa 000389 call gpio_set_wake_by_current_state 
-0x00fb 000390 fetcht 1 ,mem_mbutton_gpio 
-0x00fc 000391 call gpio_set_wake_by_current_state 
-0x00fd 000393 fetcht 1 ,mem_bk_button_gpio 
-0x00fe 000394 call gpio_set_wake_by_current_state 
-0x00ff 000395 fetcht 1 ,mem_fw_button_gpio 
-0x0100 000396 call gpio_set_wake_by_current_state 
-0x0101 000397 fetcht 1 ,mem_dpi_button_gpio 
-0x0102 000398 call gpio_set_wake_by_current_state 
-0x0103 000399 fetcht 1 ,mem_config_select_device_button_gpio 
-0x0104 000400 call gpio_set_wake_by_current_state 
-0x0105 000401 call gpio_set_wake_by_current_state 
-0x0106 000402 fetcht 1 ,mem_config_bt_button_gpio 
-0x0107 000403 call gpio_set_wake_by_current_state 
-0x0108 000405 fetcht 1 ,mem_whee_a_data_gpio 
-0x0109 000406 call gpio_set_wake_by_current_state 
-0x010a 000407 fetcht 1 ,mem_whee_b_data_gpio 
-0x010b 000408 call gpio_set_wake_by_current_state 
-0x010c 000409 fetcht 1 ,mem_whee_ta_data_gpio 
-0x010d 000410 call gpio_set_wake_by_current_state 
-0x010e 000411 fetcht 1 ,mem_whee_tb_data_gpio 
-0x010f 000412 call gpio_set_wake_by_current_state 
-0x0110 000413 fetcht 1 ,mem_sensor_data_gpio 
-0x0111 000414 branch gpio_set_wake 
-:      000415 p_g24_send_abort_packet:
-0x0112 000416 jam 1 ,mem_24g_abort_pac 
-0x0113 000417 jam 0 ,mem_24g_rf_hop_ch 
-0x0114 000418 call p_g24_transmit_rf_ctrl_clear 
-0x0115 000419 store 1 ,mem_24g_txbuf 
-0x0116 000420 setarg 0 
-0x0117 000421 store 7 ,mem_24g_txbuf + 1 
-0x0118 000422 fetch 4 ,mem_24g_device_addr 
-0x0119 000423 store 4 ,mem_24g_txbuf + 8 
-0x011a 000424 jam 12 ,mem_24g_datalen 
-0x011b 000425 fetch 1 ,mem_24g_data_type 
-0x011c 000426 set1 bit_abort ,pdata 
-0x011d 000427 store 1 ,mem_24g_data_type 
-0x011e 000428 call p_g24_txdata_enable_tx 
-0x011f 000429 branch p_g24_transmit_start 
-:      000431 p_g24_set_device_addr:
-0x0120 000432 fetch 4 ,mem_lap 
-0x0121 000433 store 4 ,mem_24g_device_addr 
-0x0122 000434 rtn 
-:      000436 p_g24_transmit_rf_sta_init:
-0x0123 000437 jam 1 ,mem_24g_rf_last_sta 
-0x0124 000438 jam 0 ,mem_24g_sync_cnt 
-:      000439 p_g24_transmit_rf_ctrl_clear:
-0x0125 000440 fetch 1 ,mem_24g_data_type 
-0x0126 000441 and_into bits_data ,pdata 
-0x0127 000442 store 1 ,mem_24g_data_type 
-0x0128 000443 rtn 
-:      000445 p_g24_hop_ch_enable:
-0x0129 000446 fetch 1 ,mem_24g_data_type 
-0x012a 000447 set1 bit_hop ,pdata 
-0x012b 000448 store 1 ,mem_24g_data_type 
-0x012c 000450 store 1 ,mem_24g_txpayload 
-0x012d 000451 rtn 
-:      000452 p_g24_hop_ch_disable:
-0x012e 000453 fetch 1 ,mem_24g_data_type 
-0x012f 000454 set0 bit_hop ,pdata 
-0x0130 000455 store 1 ,mem_24g_data_type 
-0x0131 000456 rtn 
-:      000458 p_g24_transmit_hop_pac_fail:
-0x0132 000459 call power_ctrl_pac_succ_decrs 
-0x0133 000460 fetch 1 ,mem_24g_rf_work_stage 
-0x0134 000461 beq 1 ,p_g24_transmit_hop_pac_fail_wo_hop 
-0x0135 000462 beq 2 ,p_g24_transmit_hop_pac_fail_hop_stage2 
-0x0136 000463 rtn 
-:      000464 p_g24_transmit_hop_pac_fail_wo_hop:
-0x0137 000465 jam 2 ,mem_24g_sync_cnt 
-:      000466 p_g24_transmit_hop_pac_fail_stage1:
-0x0138 000467 jam 0 ,mem_24g_hop_pac_retry 
-0x0139 000468 jam 0 ,mem_24g_rf_last_sta 
-0x013a 000469 branch p_g24_transmit_rf_ctrl_clear 
-:      000471 p_g24_transmit_hop_pac_fail_hop_stage2:
-0x013b 000472 jam 0 ,mem_24g_rf_hop_ch 
-0x013c 000473 branch p_g24_transmit_hop_pac_fail_stage1 
-:      000476 p_g24_transmit_pac_fail_hop_stage3:
-0x013d 000477 fetch 2 ,mem_24g_txfail_cnt 
-0x013e 000478 increase 1 ,pdata 
-0x013f 000479 store 2 ,mem_24g_txfail_cnt 
-0x0140 000480 bbit1 10 ,p_g24_tx_attempt_fail 
+0x000b 000083 call p_drawing_optima_init 
+0x000c 000084 call p_mouse_cb_fuction 
+0x000d 000085 call p_mouse_wakeup_from_power 
+0x000e 000087 branch p_mouse_setting_config 
+:      000089 p_mouse_cb_fuction:
+0x000f 000090 setarg p_mouse_g24_package_data 
+0x0010 000091 store 2 ,mem_cb_24g_data 
+0x0011 000092 setarg p_mouse_le 
+0x0012 000093 store 2 ,mem_cb_le_process 
+0x0013 000094 setarg p_le_mouse_bb_event_connect_complete 
+0x0014 000095 store 2 ,mem_cb_att_write 
+0x0015 000096 setarg p_mouse_bt 
+0x0016 000097 store 2 ,mem_cb_bt_process 
+0x0017 000098 setarg p_mouse_before_lpm 
+0x0018 000099 store 2 ,mem_cb_before_lpm 
+0x0019 000100 setarg p_mouse_priority_bb_event 
+0x001a 000101 store 2 ,mem_cb_bb_event_process 
+0x001b 000102 setarg p_mouse_idle 
+0x001c 000103 store 2 ,mem_cb_idle_process 
+0x001d 000104 setarg p_mouse_before_hibernate 
+0x001e 000105 store 2 ,mem_cb_before_hibernate 
+0x001f 000106 setarg p_mouse_bb_event_timer 
+0x0020 000107 store 2 ,mem_cb_event_timer 
+0x0021 000108 rtn 
+:      000110 p_mouse_wakeup_from_power:
+0x0022 000111 setarg 25 
+0x0023 000112 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+0x0024 000113 ncall p_mouse_24g_transmit_by_interrupt_exit_count_max ,wake 
+0x0025 000114 call p_mouse_init_sunt 
+0x0026 000115 call p_mouse_sensor_powerdown 
+:      000116 p_mouse_wakeup_no_from_power:
+0x0027 000117 fetch 1 ,mem_reconn_times_init 
+0x0028 000118 store 1 ,mem_reconn_times 
+0x0029 000119 rtn 
+:      000120 p_mouse_24g_transmit_by_interrupt_exit_count_max:
+0x002a 000121 setarg 375 
+0x002b 000122 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+0x002c 000123 rtn 
+0x002d 000125 nop 1 
+0x002e 000126 nop 1 
+0x002f 000127 nop 1 
+0x0030 000128 nop 1 
+0x0031 000129 nop 1 
+0x0032 000130 nop 1 
+0x0033 000131 nop 1 
+0x0034 000132 nop 1 
+0x0035 000133 nop 1 
+0x0036 000134 nop 1 
+0x0037 000135 nop 1 
+0x0038 000136 nop 1 
+0x0039 000137 nop 1 
+0x003a 000138 nop 1 
+0x003b 000139 nop 1 
+0x003c 000140 nop 1 
+0x003d 000141 nop 1 
+0x003e 000142 nop 1 
+0x003f 000143 nop 1 
+:      000147 p_patch_array:
+0x0040 000148 bbit1 8 ,pf_patch_ext 
+0x0041 000150 beq patch00_1 ,p_soft_reset_1 
+0x0042 000151 beq patch00_2 ,p_soft_reset_2 
+0x0043 000152 beq patch10_5 ,p_shutdown_radio 
+0x0044 000153 beq patch11_1 ,p_set_freq_tx 
+0x0045 000154 beq patch03_3 ,p_page_wait_fhs_reply_ok 
+0x0046 000155 beq patch04_6 ,p_role_switch_master 
+0x0047 000156 beq patch09_0 ,p_quit_connection_cont 
+0x0048 000157 beq patch09_2 ,p_prepare_tx 
+0x0049 000158 beq patch0a_1 ,p_slave_conn_recv_packet 
+0x004a 000159 beq patch0b_1 ,p_process_dmh 
+0x004b 000160 beq patch14_7 ,p_lpm_dispatch 
+0x004c 000161 beq patch15_5 ,p_lpm_set_mult 
+0x004d 000162 beq patch19_3 ,app_bt_start_reconnect + 3 
+0x004e 000163 beq patch1d_1 ,p_mouse_bb_disconnected 
+0x004f 000164 beq patch14_1 ,p_init_param 
+0x0050 000165 beq patch16_1 ,p_lpm_check_wake_lock 
+0x0051 000166 beq patch16_2 ,p_g24_dispatch 
+0x0052 000167 beq patch18_4 ,p_device_init 
+0x0053 000168 beq patch1c_3 ,p_mouse_seting_dpi 
+0x0054 000169 beq patch1c_6 ,p_mouse_motion 
+0x0055 000170 beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
+0x0056 000171 beq patch1d_3 ,p_mouse_start_discovery 
+0x0057 000172 beq patch1d_4 ,p_mouse_stop_discovery 
+0x0058 000173 branch loop 
+:      000174 pf_patch_ext:
+0x0059 000175 beq patch27_1 ,p_le_slave_match 
+0x005a 000176 beq patch28_3 ,p_le_next_adv_channel 
+0x005b 000177 beq patch29_2 ,p_le_receive_skip 
+0x005c 000178 beq patch2a_7 ,p_le_update_param 
+0x005d 000179 beq patch2b_1 ,p_le_update_channel_map 
+0x005e 000180 beq patch2c_3 ,p_le_prepare_tx 
+0x005f 000181 beq patch2c_6 ,p_le_parse 
+0x0060 000182 beq patch2c_7 ,p_le_parse_l2cap 
+0x0061 000183 beq patch2d_2 ,p_le_adv_not_match 
+0x0062 000184 beq patch2e_7 ,p_le_lpm_setmult 
+0x0063 000185 beq patch20_5 ,p_hid_rx_process 
+0x0064 000186 beq patch30_0 ,p_parse_lmp_accepted 
+0x0065 000187 beq patch30_2 ,p_send_lmp 
+0x0066 000188 beq patch31_0 ,p_process_conn_sm 
+0x0067 000189 beq patch31_4 ,p_twspi_reset 
+0x0068 000190 beq patch31_5 ,p_spid_init 
+0x0069 000191 beq patch3f_2 ,p_check_51cmd_once_continue 
+0x006a 000192 branch loop 
+:      000195 p_rssi_signal:
+0x006b 000196 copy pdata ,rega 
+0x006c 000197 fetcht 1 ,mem_rssi_signal_index 
+0x006d 000198 setarg mem_rssi_signal_buf 
+0x006e 000199 iadd temp ,contw 
+0x006f 000200 copy rega ,pdata 
+0x0070 000201 istore 1 ,contw 
+0x0071 000202 increase 1 ,temp 
+0x0072 000203 and_into rssi_buf_len_signal ,temp 
+0x0073 000204 storet 1 ,mem_rssi_signal_index 
+0x0074 000205 rtn 
+:      000207 p_soft_reset_1:
+0x0075 000208 arg mem_sp_state ,contw 
+0x0076 000209 arg 12 ,loopcnt 
+0x0077 000210 call clear_mem 
+0x0078 000211 call p_mouse_le_txbuff_load 
+0x0079 000212 call rfcomm_init 
+0x007a 000213 call init_lmp 
+0x007b 000214 ncall lpm_disable_exen_output ,wake 
+0x007c 000215 call ui_init + 1 
+0x007d 000216 branch soft_reset + 11 
+:      000218 p_soft_reset_2:
+0x007e 000219 call app_lpm_init ,wake 
+0x007f 000220 call publickey_init 
+0x0080 000221 call lpm_recover_clk ,wake 
+:      000222 p_sp_cal_loop:
+0x0081 000223 call sp_calc_sequence 
+0x0082 000224 fetch 1 ,mem_ssp_enable 
+0x0083 000225 branch main_loop ,blank 
+0x0084 000226 fetch 1 ,mem_sp_local_key_invalid 
+0x0085 000227 branch p_sp_cal_loop ,blank 
+0x0086 000228 branch main_loop 
+:      000230 p_init_param:
+0x0087 000231 setarg param_le_version 
+0x0088 000232 store 3 ,mem_lmp_version 
+0x0089 000233 setarg param_le_subversion 
+0x008a 000234 store 2 ,mem_lmp_version + 3 
+0x008b 000235 branch init_param + 12 
+:      000237 p_lpm_check_wake_lock:
+0x008c 000238 rtnmark1 mark_24g 
+0x008d 000239 fetch 1 ,mem_mouse_multi_led_state 
+0x008e 000240 nbranch disable_blank ,blank 
+0x008f 000241 fetch 1 ,mem_mouse_multi_led_blink_count 
+0x0090 000242 nbranch disable_blank ,blank 
+0x0091 000243 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0x0092 000244 branch disable_blank ,blank 
+0x0093 000245 fetch 1 ,mem_mouse_le_conn_param_reject 
+0x0094 000246 beq le_lpm_disable ,disable_blank 
+0x0095 000247 fetch 2 ,mem_sdp_remote_cid 
+0x0096 000248 nbranch disable_blank ,blank 
+0x0097 000249 fetch 1 ,mem_mouse_wheel_trigger 
+0x0098 000250 nbranch disable_blank ,blank 
+0x0099 000251 branch enable_blank 
+:      000254 p_g24_dispatch:
+0x009a 000255 rtnmark0 mark_24g 
+0x009b 000256 fetch 1 ,mem_24g_transmit_by_interrupt 
+0x009c 000257 beq g24_tx_timer_int_enable ,p_g24_transmit_by_interrupt 
+:      000258 p_g24_transmit_process:
+0x009d 000259 call p_g24_txdata_prep 
+0x009e 000260 nbranch p_g24_nodata_transmit ,user 
+0x009f 000261 call p_g24_rf_sta_check 
+:      000262 p_g24_transmit_start:
+0x00a0 000263 call p_g24_transmit_packet 
+0x00a1 000264 fetch 1 ,mem_24g_pairing_sm 
+0x00a2 000265 rtnne state_24g_pairing_success 
+0x00a3 000266 call power_ctrl_start 
+0x00a4 000267 fetch 1 ,mem_mouse_multi_led_state 
+0x00a5 000268 beq on ,p_g24_transmit_by_interrupt_enable 
+:      000269 p_g24_short_sleep:
+0x00a6 000270 call p_g24_lpm_wait 
+0x00a7 000271 nrtn user 
+0x00a8 000272 call p_clear_wake 
+0x00a9 000273 setarg 60500 
+0x00aa 000274 branch lpm_dispatch_sleep 
+:      000276 p_g24_dpi_no_sleep:
+0x00ab 000277 jam 1 ,mem_mouse_dpi_no_enter_long_sleep_flag 
+0x00ac 000278 rtn 
+:      000280 p_g24_transmit_by_interrupt:
+0x00ad 000281 jam zcode_01 ,mem_zcode_temp_param0 
+0x00ae 000282 branch p_zcode_entrance 
+:      000284 p_g24_nodata_transmit:
+0x00af 000285 fetch 1 ,mem_24g_abort_pac 
+0x00b0 000286 call p_g24_send_abort_packet ,blank 
+0x00b1 000287 fetch 1 ,mem_mouse_multi_led_blink_count 
+0x00b2 000288 nrtn blank 
+0x00b3 000289 fetch 1 ,mem_mouse_dpi_no_enter_long_sleep_flag 
+0x00b4 000290 nrtn blank 
+0x00b5 000291 fetch 1 ,mem_mouse_multi_led_state 
+0x00b6 000292 rtneq on 
+:      000293 p_g24_long_sleep:
+0x00b7 000294 call p_g24_lpm_wait 
+0x00b8 000295 nrtn user 
+0x00b9 000296 fetch 3 ,mem_24g_enter_hibernate 
+0x00ba 000297 call clk2lpo 
+0x00bb 000298 storet 4 ,mem_sleep_counter 
+0x00bc 000299 branch lpm_sleep 
+:      000301 p_g24_lpm_wait:
+0x00bd 000302 enable user 
+0x00be 000303 call lpo_calibration 
+0x00bf 000304 fetch 3 ,mem_clks_per_lpo 
+0x00c0 000305 branch disable_user ,blank 
+0x00c1 000306 fetch 1 ,mem_lpm_mode 
+0x00c2 000307 branch disable_user ,blank 
+0x00c3 000308 fetch 1 ,mem_24g_transmit_by_interrupt 
+0x00c4 000309 beq g24_tx_timer_int_enable ,disable_user 
+:      000310 p_mouse_setgpio_lpm:
+0x00c5 000311 call p_mouse_set_sdio_high 
+0x00c6 000312 call p_clear_wake 
+:      000313 p_mouse_setgpio_hibernate:
+0x00c7 000314 call p_mouse_lpm_before_common 
+0x00c8 000315 call p_flash_ncs_disable 
+0x00c9 000316 hfetch 4 ,core_gpio_oe0 
+0x00ca 000317 hfetcht 4 ,core_gpio_pu0 
+0x00cb 000318 ior temp ,temp 
+0x00cc 000319 invert temp ,temp 
+0x00cd 000320 hstoret 4 ,core_gpio_pd0 
+0x00ce 000322 hfetch 1 ,core_gpio_pd1 
+0x00cf 000323 set0 2 ,pdata 
+0x00d0 000324 hstore 1 ,core_gpio_pd1 
+0x00d1 000325 hfetch 1 ,core_gpio_pd2 
+0x00d2 000326 set0 6 ,pdata 
+0x00d3 000327 hstore 1 ,core_gpio_pd2 
+:      000329 p_mouse_multi_led_gpio_set_float:
+0x00d4 000332 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x00d5 000333 set0 gpio_active_bit ,temp 
+0x00d6 000334 branch gpio_set_high_impedance 
+:      000337 p_mouse_lpm_before_common:
+0x00d7 000338 call mouse_wheel_check 
+0x00d8 000339 arg mouse_spi1_clk_gpio ,temp 
+0x00d9 000340 fetch mouse_flag_len ,mem_mouse_flag 
+0x00da 000341 isolate1 mouse_enable_spi2 ,pdata 
+0x00db 000342 call mouse_spi_clk_gpio ,true 
+0x00dc 000343 call gpio_config_output 
+0x00dd 000344 call twspi_disable 
+0x00de 000346 fetcht 1 ,mem_config_bt_button_gpio 
+0x00df 000347 call gpio_set_wake_by_current_state 
+0x00e0 000348 branch mouse_lpm_before_common + 7 
+:      000349 p_g24_send_abort_packet:
+0x00e1 000350 jam 1 ,mem_24g_abort_pac 
+0x00e2 000351 jam 0 ,mem_24g_rf_hop_ch 
+0x00e3 000352 call p_g24_transmit_rf_ctrl_clear 
+0x00e4 000353 store 1 ,mem_24g_txbuf 
+0x00e5 000354 setarg 0 
+0x00e6 000355 store 7 ,mem_24g_txbuf + 1 
+0x00e7 000356 fetch 4 ,mem_24g_device_addr 
+0x00e8 000357 store 4 ,mem_24g_txbuf + 8 
+0x00e9 000358 jam 12 ,mem_24g_datalen 
+0x00ea 000359 fetch 1 ,mem_24g_data_type 
+0x00eb 000360 set1 bit_abort ,pdata 
+0x00ec 000361 store 1 ,mem_24g_data_type 
+0x00ed 000362 call p_g24_txdata_enable_tx 
+0x00ee 000363 branch p_g24_transmit_start 
+:      000365 p_g24_set_device_addr:
+0x00ef 000366 fetch 4 ,mem_lap 
+0x00f0 000367 store 4 ,mem_24g_device_addr 
+0x00f1 000368 rtn 
+:      000370 p_g24_transmit_rf_sta_init:
+0x00f2 000371 jam 1 ,mem_24g_rf_last_sta 
+0x00f3 000372 jam 0 ,mem_24g_sync_cnt 
+:      000373 p_g24_transmit_rf_ctrl_clear:
+0x00f4 000374 fetch 1 ,mem_24g_data_type 
+0x00f5 000375 and_into bits_data ,pdata 
+0x00f6 000376 store 1 ,mem_24g_data_type 
+0x00f7 000377 rtn 
+:      000379 p_g24_hop_ch_enable:
+0x00f8 000380 fetch 1 ,mem_24g_data_type 
+0x00f9 000381 set1 bit_hop ,pdata 
+0x00fa 000382 store 1 ,mem_24g_data_type 
+0x00fb 000384 store 1 ,mem_24g_txpayload 
+0x00fc 000385 rtn 
+:      000386 p_g24_hop_ch_disable:
+0x00fd 000387 fetch 1 ,mem_24g_data_type 
+0x00fe 000388 set0 bit_hop ,pdata 
+0x00ff 000389 store 1 ,mem_24g_data_type 
+0x0100 000390 rtn 
+:      000392 p_g24_transmit_hop_pac_fail:
+0x0101 000393 call power_ctrl_pac_succ_decrs 
+0x0102 000394 fetch 1 ,mem_24g_rf_work_stage 
+0x0103 000395 beq 1 ,p_g24_transmit_hop_pac_fail_wo_hop 
+0x0104 000396 beq 2 ,p_g24_transmit_hop_pac_fail_hop_stage2 
+0x0105 000397 rtn 
+:      000398 p_g24_transmit_hop_pac_fail_wo_hop:
+0x0106 000399 jam 2 ,mem_24g_sync_cnt 
+:      000400 p_g24_transmit_hop_pac_fail_stage1:
+0x0107 000401 jam 0 ,mem_24g_hop_pac_retry 
+0x0108 000402 jam 0 ,mem_24g_rf_last_sta 
+0x0109 000403 branch p_g24_transmit_rf_ctrl_clear 
+:      000405 p_g24_transmit_hop_pac_fail_hop_stage2:
+0x010a 000406 jam 0 ,mem_24g_rf_hop_ch 
+0x010b 000407 branch p_g24_transmit_hop_pac_fail_stage1 
+:      000410 p_g24_transmit_pac_fail_hop_stage3:
+0x010c 000411 fetch 2 ,mem_24g_txfail_cnt 
+0x010d 000412 increase 1 ,pdata 
+0x010e 000413 store 2 ,mem_24g_txfail_cnt 
+0x010f 000414 bbit1 10 ,p_g24_tx_attempt_fail 
+0x0110 000415 fetch 1 ,mem_24g_rf_hop_ch 
+0x0111 000416 beq 1 ,p_g24_rf_hop_fastly 
+0x0112 000417 jam 1 ,mem_24g_rf_hop_ch 
+:      000418 p_g24_rf_hop_attemp_again:
+0x0113 000419 fetch 1 ,mem_24g_rf_hop_ch 
+0x0114 000420 bne 1 ,p_g24_transmit_rf_ctrl_clear 
+:      000421 p_g24_rf_hop_fastly:
+0x0115 000422 fetch 1 ,mem_24g_hop_fastly_cnt 
+0x0116 000423 increase 1 ,pdata 
+0x0117 000424 store 1 ,mem_24g_hop_fastly_cnt 
+0x0118 000425 beq 4 ,p_g24_rf_hop_fastly_exit 
+0x0119 000426 call p_g24_ch 
+0x011a 000427 jam 2 ,mem_24g_max_retry 
+0x011b 000428 branch p_g24_transmit_packet 
+:      000430 p_g24_rf_hop_fastly_exit:
+0x011c 000431 call power_ctrl_pac_succ_decrs 
+0x011d 000432 jam 0 ,mem_24g_hop_fastly_cnt 
+0x011e 000433 branch p_g24_transmit_rf_ctrl_clear 
+:      000435 p_g24_transmit_hop_pac_succ_wo_hop:
+0x011f 000436 jam 2 ,mem_24g_sync_cnt 
+:      000437 p_g24_transmit_hop_pac_succ:
+0x0120 000438 jam 1 ,mem_24g_rf_last_sta 
+0x0121 000439 jam 0 ,mem_24g_rf_hop_ch 
+0x0122 000440 branch p_g24_transmit_rf_ctrl_clear 
+:      000442 p_g24_transmit_succ_rf_config:
+0x0123 000443 fetch 1 ,mem_24g_rf_work_stage 
+0x0124 000444 beq 3 ,p_g24_transmit_hop_pac_succ 
+0x0125 000445 fetch 1 ,mem_24g_data_type 
+0x0126 000446 isolate0 bit_hop ,pdata 
+0x0127 000447 branch p_g24_transmit_rf_sta_init ,true 
+0x0128 000448 fetch 1 ,mem_24g_rf_work_stage 
+0x0129 000449 beq 1 ,p_g24_transmit_hop_pac_succ_wo_hop 
+0x012a 000450 beq 2 ,p_g24_transmit_hop_pac_succ 
+0x012b 000451 rtn 
+:      000453 p_g24_rf_sta_check:
+0x012c 000454 fetch 1 ,mem_24g_pairing_sm 
+0x012d 000455 rtnne state_24g_pairing_success 
+0x012e 000456 call p_g24_rf_laststa_synccnt_check 
+0x012f 000457 ncall p_g24_rf_sync_cnt_check ,user2 
+0x0130 000458 rtn 
+:      000460 p_g24_rf_laststa_synccnt_check:
+0x0131 000461 disable user2 
+0x0132 000462 fetch 1 ,mem_24g_rf_last_sta 
+0x0133 000463 rtnne 1 
+0x0134 000464 fetch 1 ,mem_24g_sync_cnt 
+0x0135 000465 rtnne 0 
+0x0136 000466 jam 1 ,mem_24g_rf_work_stage 
+0x0137 000467 jam 4 ,mem_24g_max_retry 
+0x0138 000468 branch enable_user2 
+:      000470 p_g24_rf_sync_cnt_check:
+0x0139 000471 fetch 1 ,mem_24g_sync_cnt 
+0x013a 000472 branch p_g24_rf_hop_attemp ,blank 
+0x013b 000473 increase -1 ,pdata 
+0x013c 000474 store 1 ,mem_24g_sync_cnt 
+0x013d 000475 jam 2 ,mem_24g_rf_work_stage 
+0x013e 000476 jam 4 ,mem_24g_max_retry 
+0x013f 000477 branch p_g24_ch 
+:      000479 p_g24_rf_hop_attemp:
+0x0140 000480 jam 3 ,mem_24g_rf_work_stage 
 0x0141 000481 fetch 1 ,mem_24g_rf_hop_ch 
-0x0142 000482 beq 1 ,p_g24_rf_hop_fastly 
-0x0143 000483 jam 1 ,mem_24g_rf_hop_ch 
-:      000484 p_g24_rf_hop_attemp_again:
-0x0144 000485 fetch 1 ,mem_24g_rf_hop_ch 
-0x0145 000486 bne 1 ,p_g24_transmit_rf_ctrl_clear 
-:      000487 p_g24_rf_hop_fastly:
-0x0146 000488 fetch 1 ,mem_24g_hop_fastly_cnt 
-0x0147 000489 increase 1 ,pdata 
-0x0148 000490 store 1 ,mem_24g_hop_fastly_cnt 
-0x0149 000491 beq 4 ,p_g24_rf_hop_fastly_exit 
-0x014a 000492 call p_g24_ch 
-0x014b 000493 jam 2 ,mem_24g_max_retry 
-0x014c 000494 branch p_g24_transmit_packet 
-:      000496 p_g24_rf_hop_fastly_exit:
-0x014d 000497 call power_ctrl_pac_succ_decrs 
-0x014e 000498 jam 0 ,mem_24g_hop_fastly_cnt 
-0x014f 000499 branch p_g24_transmit_rf_ctrl_clear 
-:      000501 p_g24_transmit_hop_pac_succ_wo_hop:
-0x0150 000502 jam 2 ,mem_24g_sync_cnt 
-:      000503 p_g24_transmit_hop_pac_succ:
-0x0151 000504 jam 1 ,mem_24g_rf_last_sta 
-0x0152 000505 jam 0 ,mem_24g_rf_hop_ch 
-0x0153 000506 branch p_g24_transmit_rf_ctrl_clear 
-:      000508 p_g24_transmit_succ_rf_config:
-0x0154 000509 fetch 1 ,mem_24g_rf_work_stage 
-0x0155 000510 beq 3 ,p_g24_transmit_hop_pac_succ 
-0x0156 000511 fetch 1 ,mem_24g_data_type 
-0x0157 000512 isolate0 bit_hop ,pdata 
-0x0158 000513 branch p_g24_transmit_rf_sta_init ,true 
-0x0159 000514 fetch 1 ,mem_24g_rf_work_stage 
-0x015a 000515 beq 1 ,p_g24_transmit_hop_pac_succ_wo_hop 
-0x015b 000516 beq 2 ,p_g24_transmit_hop_pac_succ 
-0x015c 000517 rtn 
-:      000519 p_g24_rf_sta_check:
-0x015d 000520 fetch 1 ,mem_24g_pairing_sm 
-0x015e 000521 rtnne state_24g_pairing_success 
-0x015f 000522 call p_g24_rf_laststa_synccnt_check 
-0x0160 000523 ncall p_g24_rf_sync_cnt_check ,user2 
-0x0161 000524 rtn 
-:      000526 p_g24_rf_laststa_synccnt_check:
-0x0162 000527 disable user2 
-0x0163 000528 fetch 1 ,mem_24g_rf_last_sta 
-0x0164 000529 rtnne 1 
-0x0165 000530 fetch 1 ,mem_24g_sync_cnt 
-0x0166 000531 rtnne 0 
-0x0167 000532 jam 1 ,mem_24g_rf_work_stage 
-0x0168 000533 jam 4 ,mem_24g_max_retry 
-0x0169 000534 branch enable_user2 
-:      000536 p_g24_rf_sync_cnt_check:
-0x016a 000537 fetch 1 ,mem_24g_sync_cnt 
-0x016b 000538 branch p_g24_rf_hop_attemp ,blank 
-0x016c 000539 increase -1 ,pdata 
-0x016d 000540 store 1 ,mem_24g_sync_cnt 
-0x016e 000541 jam 2 ,mem_24g_rf_work_stage 
-0x016f 000542 jam 4 ,mem_24g_max_retry 
-0x0170 000543 branch p_g24_ch 
-:      000545 p_g24_rf_hop_attemp:
-0x0171 000546 jam 3 ,mem_24g_rf_work_stage 
-0x0172 000547 fetch 1 ,mem_24g_rf_hop_ch 
-0x0173 000548 nbranch p_g24_rf_hop_attemp_again ,blank 
-0x0174 000549 jam 2 ,mem_24g_max_retry 
-0x0175 000550 branch p_g24_ch 
-:      000552 p_g24_txdata_prep:
-0x0176 000553 fetch 1 ,mem_24g_pairing_sm 
-0x0177 000554 bne state_24g_pairing_success ,p_g24_pairing_sm 
-:      000555 p_g24_txdata_prep_packeage_data:
-0x0178 000556 call p_g24_package_data 
-:      000557 p_g24_txdata_enable_tx:
-0x0179 000558 call p_g24_transmit_prep 
-0x017a 000559 jam ensure_on_24g ,mem_24g_ensure 
-0x017b 000560 rtn 
-:      000562 p_g24_package_data:
-0x017c 000563 fetch 2 ,mem_cb_24g_data 
-0x017d 000564 call callback_func 
-0x017e 000565 branch p_g24_accumulate_mouse_data ,user 
-0x017f 000566 fetch 7 ,mem_24g_txbuf + 1 
-0x0180 000567 rtn blank 
-0x0181 000568 branch enable_user 
-:      000569 p_g24_accumulate_mouse_data:
-0x0182 000570 call p_mouse_24g_no_data_timer_init 
-0x0183 000572 jam 0 ,mem_24g_abort_pac 
-0x0184 000573 add rega ,1 ,pdata 
-0x0185 000574 store 1 ,mem_24g_datalen 
-0x0186 000575 call p_g24_transmit_rf_ctrl_clear 
-0x0187 000576 store 1 ,mem_24g_txbuf 
-0x0188 000577 ifetcht 1 ,contw 
-0x0189 000578 ifetch 1 ,regb 
-0x018a 000579 ior temp ,pdata 
-0x018b 000580 istore 1 ,contw 
-0x018c 000581 increase 1 ,regb 
-0x018d 000582 ifetch 4 ,regb 
-0x018e 000583 istore 4 ,contw 
-0x018f 000584 increase 4 ,regb 
-0x0190 000585 arg mem_24g_txbuf + 6 ,contw 
-0x0191 000586 arg 2 ,loopcnt 
-:      000587 p_g24_accumulation_loop:
-0x0192 000588 ifetch 1 ,regb 
-0x0193 000589 ifetcht 1 ,contw 
-0x0194 000590 iadd temp ,pdata 
-0x0195 000591 istore 1 ,contw 
-0x0196 000592 increase 1 ,regb 
-0x0197 000593 loop p_g24_accumulation_loop 
-0x0198 000594 rtn 
-:      000596 p_g24_transmit_packet:
-0x0199 000597 jam 0 ,mem_24g_retry 
-:      000598 p_g24_transmit_loop:
-0x019a 000599 arg param_rx_setup ,timeup 
-0x019b 000600 until clkn_rt ,meet 
-0x019c 000601 call p_g24_transmit_receive_ack 
-0x019d 000602 fetch 1 ,mem_24g_no_ack 
-0x019e 000603 rtneq no_ack_24g 
-0x019f 000604 nbranch p_g24_retransmit ,sync 
-0x01a0 000605 nbranch p_g24_retransmit ,user3 
-0x01a1 000606 call p_g24_txbuf_clear 
-0x01a2 000607 call p_g24_ackpayload_parse 
-0x01a3 000608 call power_ctrl_pac_succ_incrs 
-:      000609 p_g24_transmit_next_packet:
-0x01a4 000610 fetch 1 ,mem_24g_pid 
-0x01a5 000611 increase 1 ,pdata 
-0x01a6 000612 store 1 ,mem_24g_pid 
-0x01a7 000613 fetch 1 ,mem_24g_pairing_sm 
-0x01a8 000614 bne state_24g_pairing_success ,p_g24_paring_mode_start 
-0x01a9 000615 call p_g24_transmit_succ_rf_config 
-:      000616 p_g24_transmit_abandon:
-0x01aa 000617 setarg 0 
-0x01ab 000618 store 2 ,mem_24g_txfail_cnt 
-0x01ac 000619 store 1 ,mem_24g_get_ack_fail 
-0x01ad 000620 store 1 ,mem_24g_hop_pac_retry 
-0x01ae 000621 jam ensure_off_24g ,mem_24g_ensure 
-0x01af 000622 rtn 
-:      000624 p_g24_txbuf_clear:
-0x01b0 000625 arg 4 ,loopcnt 
-0x01b1 000626 arg mem_24g_txbuf ,contw 
-0x01b2 000627 branch memset0 
-:      000629 p_g24_paring_mode_start:
-0x01b3 000630 call power_ctrl_pac_succ_cnt_init 
-0x01b4 000631 branch p_g24_paring_mode 
-:      000633 p_g24_transmit_receive_ack:
-0x01b5 000634 disable user3 
-0x01b6 000635 call p_g24_transmit 
-0x01b7 000638 fetch 1 ,mem_24g_no_ack 
-0x01b8 000639 beq no_ack_24g ,p_g24_transmit_no_ack 
-0x01b9 000640 force 0 ,radio_ctrl 
-0x01ba 000641 fetch 4 ,mem_24g_addr 
-0x01bb 000642 iforce access 
-0x01bc 000643 fetcht 1 ,mem_last_freq 
-0x01bd 000644 call set_freq_rx 
-0x01be 000645 call rf_rx_enable 
-0x01bf 000646 call p_g24_receive_rxon 
-0x01c0 000647 call p_g24_end_of_packet ,user3 
-0x01c1 000648 rtn 
-:      000649 p_g24_transmit_no_ack:
-0x01c2 000650 call p_g24_end_of_packet 
-0x01c3 000651 branch p_g24_transmit_next_packet 
-:      000653 p_g24_retransmit:
-0x01c4 000654 fetch 1 ,mem_24g_get_ack_fail 
-0x01c5 000655 increase 1 ,pdata 
-0x01c6 000656 store 1 ,mem_24g_get_ack_fail 
-0x01c7 000657 fetch 1 ,mem_24g_pairing_sm 
-0x01c8 000658 bne state_24g_pairing_success ,p_g24_tx_paring_retry 
-0x01c9 000659 fetcht 1 ,mem_24g_retry 
-0x01ca 000660 increase 1 ,temp 
-0x01cb 000661 storet 1 ,mem_24g_retry 
-0x01cc 000662 fetch 1 ,mem_24g_max_retry 
-0x01cd 000663 isub temp ,pdata 
-0x01ce 000664 nbranch p_g24_transmit_loop ,blank 
-0x01cf 000665 fetch 1 ,mem_24g_rf_work_stage 
-0x01d0 000666 beq 3 ,p_g24_transmit_pac_fail_hop_stage3 
-0x01d1 000667 fetch 1 ,mem_24g_hop_pac_retry 
-0x01d2 000668 increase 1 ,pdata 
-0x01d3 000669 store 1 ,mem_24g_hop_pac_retry 
-0x01d4 000670 beq 2 ,p_g24_transmit_hop_pac_fail 
-0x01d5 000671 call p_g24_hop_ch_enable 
-0x01d6 000672 jam 1 ,mem_24g_max_retry 
-0x01d7 000673 branch p_g24_transmit_packet 
-:      000675 p_g24_tx_paring_retry:
-0x01d8 000676 fetch 1 ,mem_24g_get_ack_fail 
-0x01d9 000677 rtnne 0xff 
-0x01da 000678 jam 0 ,mem_24g_get_ack_fail 
-0x01db 000679 branch p_g24_stop_g24_mode 
-:      000681 p_g24_tx_attempt_fail:
-0x01dc 000682 setarg 0 
-0x01dd 000683 store 2 ,mem_24g_txfail_cnt 
-:      000684 p_g24_stop_g24_mode:
-0x01de 000685 jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
-0x01df 000686 branch ui_ipc_send_event 
-:      000688 p_g24_ackpayload_parse:
-0x01e0 000689 call p_g24_read_len_pid_crc 
-0x01e1 000690 fetch 1 ,mem_24g_rxdata_length 
-0x01e2 000691 rtn blank 
-0x01e3 000692 iforce loopcnt 
-0x01e4 000693 arg mem_24g_rxbuf + 2 ,contr 
-0x01e5 000694 arg mem_24g_rxpayload ,contw 
-0x01e6 000695 branch memcpy 
-:      000697 p_g24_pairing_sm:
-0x01e7 000698 jam zcode_90 ,mem_zcode_temp_param0 
-0x01e8 000699 branch p_zcode_entrance 
-:      000701 p_g24_paring_mode:
-0x01e9 000702 jam zcode_91 ,mem_zcode_temp_param0 
-0x01ea 000703 branch p_zcode_entrance 
-:      000705 p_g24_start_24g_mode:
-0x01eb 000706 jam zcode_60 ,mem_zcode_temp_param0 
-0x01ec 000707 branch p_zcode_entrance 
-:      000709 p_g24_auto_pair_start:
-0x01ed 000710 jam zcode_70 ,mem_zcode_temp_param0 
-0x01ee 000711 branch p_zcode_entrance 
-:      000713 p_g24_check_51cmd_stop_24g:
-0x01ef 000714 set0 mark_24g ,mark 
-0x01f0 000715 call le_disable 
-:      000716 p_mouse_disable_g24_pairing_flag:
-0x01f1 000717 arg mosue_24g_pairing_flag ,queue 
-0x01f2 000718 branch mouse_disable_function_flag 
-:      000720 p_g24_put_data_in_buff:
-0x01f3 000721 storet 1 ,mem_24g_datalen 
-0x01f4 000722 copy temp ,loopcnt 
-0x01f5 000723 arg mem_24g_txbuf ,contw 
-0x01f6 000724 copy rega ,contr 
-0x01f7 000725 branch memcpy 
-:      000727 p_g24_read_len_pid_crc:
-0x01f8 000729 fetch 1 ,mem_24g_rxbuf + 1 
-0x01f9 000730 rshift3 pdata ,pdata 
-0x01fa 000731 store 1 ,mem_24g_rxdata_length 
-0x01fb 000733 increase 1 ,pdata 
-0x01fc 000734 arg mem_24g_rxbuf + 1 ,contr 
-0x01fd 000735 iadd contr ,contr 
-0x01fe 000736 ifetch 3 ,contr 
-0x01ff 000737 store 3 ,mem_24g_sta_crc 
-0x0200 000739 fetch 1 ,mem_24g_rxbuf + 1 
-0x0201 000740 rshift pdata ,pdata 
-0x0202 000741 and pdata ,0x03 ,pdata 
-0x0203 000742 store 1 ,mem_24g_sta_pid 
-0x0204 000743 rtn 
-:      000745 p_g24_update_addr_and_synccrc8:
-0x0205 000746 store 4 ,mem_24g_addr 
-:      000748 p_g24_syncword_crc8:
-0x0206 000749 arg 0 ,rega 
-0x0207 000750 arg 4 ,loopcnt 
-0x0208 000751 arg mem_24g_addr ,contr 
-:      000752 p_g24_syncword_crc8_loop:
-0x0209 000753 ifetch 1 ,contr 
-0x020a 000754 iadd rega ,rega 
-0x020b 000755 loop p_g24_syncword_crc8_loop 
-0x020c 000756 copy rega ,pdata 
-0x020d 000757 store 2 ,mem_24g_syncword 
-0x020e 000758 fetch 1 ,mem_24g_syncword 
-0x020f 000759 fetcht 1 ,mem_24g_syncword + 1 
-0x0210 000760 iadd temp ,pdata 
-0x0211 000761 store 1 ,mem_24g_syncword_crc8 
-0x0212 000762 rtn 
-:      000764 p_g24_transmit_prep:
-0x0213 000767 fetch 1 ,mem_24g_datalen 
-0x0214 000768 increase 2 ,pdata 
-0x0215 000769 store 1 ,mem_24g_txlen 
-0x0216 000771 fetch 1 ,mem_24g_data_type 
-0x0217 000772 store 1 ,mem_24g_txpayload 
-0x0218 000774 fetch 1 ,mem_24g_datalen 
-0x0219 000775 lshift3 pdata ,pdata 
-0x021a 000776 fetcht 1 ,mem_24g_pid 
-0x021b 000777 and temp ,0x03 ,temp 
-0x021c 000778 lshift temp ,temp 
-0x021d 000779 ior temp ,pdata 
-0x021e 000780 fetcht 1 ,mem_24g_no_ack 
-0x021f 000781 iadd temp ,pdata 
-0x0220 000782 istore 1 ,contw 
-0x0221 000784 fetch 1 ,mem_24g_datalen 
-0x0222 000785 iforce loopcnt 
-0x0223 000786 arg mem_24g_txbuf ,contr 
-0x0224 000787 branch memcpy 
-:      000789 p_g24_ch:
-0x0225 000790 fetcht 1 ,mem_24g_current_ch_number 
-0x0226 000791 call p_g24_ch_map_size 
-0x0227 000792 storet 1 ,mem_24g_current_ch_number 
-0x0228 000793 rtn 
-:      000795 p_g24_ch_map_size:
-0x0229 000796 call p_g24_ch_calc 
-0x022a 000797 increase 1 ,temp 
-0x022b 000798 and_into 3 ,temp 
-0x022c 000799 rtn 
-:      000801 p_g24_ch_calc:
-0x022d 000802 fetch 1 ,mem_24g_addr 
-0x022e 000803 and_into 0x03 ,pdata 
-0x022f 000804 mul32 pdata ,4 ,rega 
-0x0230 000805 setarg mem_24g_ch_map1 
-0x0231 000806 iadd rega ,pdata 
-0x0232 000807 iadd temp ,contr 
-0x0233 000808 ifetch 1 ,contr 
-0x0234 000809 store 1 ,mem_24g_ch 
-0x0235 000810 rtn 
-:      000812 p_g24_prep:
-0x0236 000813 disable enable_crc 
-0x0237 000814 disable enable_white 
-0x0238 000815 setarg 0x555555 
-0x0239 000816 iforce crc24_init 
-0x023a 000817 fetch 1 ,mem_24g_ch 
-0x023b 000818 reverse pdata ,temp 
-0x023c 000819 set1 1 ,temp 
-0x023d 000820 rshift temp ,white_init 
-0x023e 000821 rtn 
-:      000823 p_g24_receive_packet:
-0x023f 000824 call le_enable 
-0x0240 000825 fetch 4 ,mem_24g_addr 
-0x0241 000826 iforce access 
-0x0242 000827 call set_sync_on 
-0x0243 000828 fetcht 1 ,mem_24g_ch 
-0x0244 000829 call set_freq_rx 
-0x0245 000830 setarg param_pll_setup 
-0x0246 000831 call sleep 
-0x0247 000832 call rf_rx_enable 
-:      000833 p_g24_receive_rxon:
-0x0248 000836 call p_g24_prep 
-0x0249 000837 disable user3 
-0x024a 000838 enable decode_fec0 
-0x024b 000839 enable is_rx 
-0x024c 000840 disable is_tx 
-0x024d 000841 enable swfine 
-0x024e 000842 fetch 2 ,mem_24g_rx_window 
-0x024f 000843 iforce stop_watch 
-0x0250 000844 correlate null ,timeout 
-0x0251 000845 nbranch p_g24_sync_timeout ,sync 
-0x0252 000848 disable decode_fec0 
-0x0253 000849 enable decode_fec1 
-0x0254 000850 enable enable_white 
-0x0255 000851 enable enable_crc 
-0x0256 000852 call p_g24_receive_byte 
-0x0257 000853 store 1 ,mem_24g_get_syncword_crc8 
-0x0258 000854 fetcht 1 ,mem_24g_syncword_crc8 
-0x0259 000855 isub temp ,null 
-0x025a 000856 nbranch p_g24_end_of_packet ,zero 
-0x025b 000857 call p_g24_receive_byte 
-0x025c 000858 store 1 ,mem_24g_rxbuf 
-0x025d 000859 fetch 1 ,mem_24g_mode 
-0x025e 000860 sub pdata ,rx_24g ,null 
-0x025f 000861 branch p_g24_receive_skip ,zero 
-0x0260 000862 fetch 1 ,mem_24g_rxbuf 
-0x0261 000863 fetcht 1 ,mem_24g_data_type 
-0x0262 000864 icompare bits_data ,temp 
-0x0263 000865 nbranch p_g24_end_of_packet ,true 
-:      000866 p_g24_receive_skip:
-0x0264 000867 call p_g24_receive_byte 
-0x0265 000868 istore 1 ,contw 
-0x0266 000869 rshift3 pdata ,pdata 
-0x0267 000870 and pdata ,0x1f ,loopcnt 
-0x0268 000871 branch p_g24rx_nopayload ,zero 
-:      000872 p_g24rx_loop:
-0x0269 000873 call p_g24_receive_byte 
-0x026a 000874 istore 1 ,contw 
-0x026b 000875 loop p_g24rx_loop 
-:      000876 p_g24rx_nopayload:
-0x026c 000878 copy contw ,rega 
-0x026d 000879 call p_g24_receive_byte 
-0x026e 000880 store 1 ,mem_rssi_hex_received 
-0x026f 000881 copy rega ,contw 
-0x0270 000882 parse demod ,bucket ,24 
-0x0271 000883 enable swfine 
-0x0272 000884 arg param_sifs ,stop_watch 
-0x0273 000885 rshift32 pdata ,pdata 
-0x0274 000886 rshift16 pdata ,pdata 
-0x0275 000887 istore 3 ,contw 
-0x0276 000888 disable decode_fec1 
-0x0277 000889 branch p_g24_end_of_packet ,crc_failed 
-0x0278 000892 enable user3 
-0x0279 000893 fetch 1 ,mem_last_freq 
-0x027a 000894 add pdata ,0 ,rega 
-0x027b 000895 call rf_write_freq 
-0x027c 000896 disable decode_fec0 
-0x027d 000897 call set_sync_on 
-0x027e 000898 fetch 1 ,mem_rssi_hex_received 
-0x027f 000899 call p_rssi_signal 
-0x0280 000900 rtn 
-:      000902 p_g24_receive_byte:
-0x0281 000903 parse demod ,bucket ,8 
-0x0282 000904 rshift3 pwindow ,pdata 
-0x0283 000905 rtn 
-:      000907 p_g24_end_of_packet:
-0x0284 000908 disable encode_fec1 
-0x0285 000909 disable decode_fec1 
-0x0286 000910 call end_of_packet 
-0x0287 000911 rtn 
-:      000913 p_g24_sync_timeout:
-0x0288 000914 branch p_g24_end_of_packet 
-:      000916 p_g24_set_freq_tx:
-0x0289 000917 call set_sync_on 
-0x028a 000918 fetcht 1 ,mem_24g_ch 
-0x028b 000919 branch set_freq_tx 
-:      000921 p_g24_transmit:
-0x028c 000922 call le_enable 
-0x028d 000923 fetch 4 ,mem_24g_addr 
-0x028e 000924 iforce access 
-0x028f 000925 call p_g24_prep 
-0x0290 000926 call p_g24_set_freq_tx 
-0x0291 000927 set1 txgfsk ,radio_ctrl 
-0x0292 000928 enable encode_fec0 
-0x0293 000929 enable is_tx 
-0x0294 000930 disable is_rx 
-0x0295 000933 rshift16 access ,pdata 
-0x0296 000934 rshift8 pdata ,pdata 
-0x0297 000935 rshift4 pdata ,pdata 
-0x0298 000936 inject mod ,40 
-0x0299 000937 disable encode_fec0 
-0x029a 000938 enable encode_fec1 
-0x029b 000939 enable enable_white 
-0x029c 000940 enable enable_crc 
-0x029d 000941 fetch 1 ,mem_24g_syncword_crc8 
-0x029e 000942 inject mod ,8 
-0x029f 000943 fetch 1 ,mem_24g_txlen 
-0x02a0 000944 iforce loopcnt 
-0x02a1 000945 arg mem_24g_txpayload ,contr 
-:      000946 p_g24tr_loop:
-0x02a2 000947 ifetch 1 ,contr 
-0x02a3 000948 inject mod ,8 
-0x02a4 000949 loop p_g24tr_loop 
-0x02a5 000952 enable enable_parity 
-0x02a6 000953 inject mod ,24 
-0x02a7 000954 disable enable_parity 
-0x02a8 000955 until null ,tx_clear 
-0x02a9 000956 nop 100 
-0x02aa 000957 disable encode_fec0 
-0x02ab 000958 disable encode_fec1 
-0x02ac 000959 rtn 
-:      000961 p_g24_timer_check:
-0x02ad 000962 call disable_user 
-0x02ae 000963 fetcht 4 ,mem_24g_tx_btclk 
-0x02af 000964 copy clkn_bt ,pdata 
-0x02b0 000965 isub temp ,null 
-0x02b1 000966 ncall g24_timer_timeout ,positive 
-0x02b2 000967 copy pdata ,regb 
-0x02b3 000968 fetch 4 ,mem_24g_tx_btclk 
-0x02b4 000969 fetcht 1 ,mem_24g_interval 
-0x02b5 000970 iadd temp ,temp 
-0x02b6 000971 copy regb ,pdata 
-0x02b7 000972 isub temp ,null 
-0x02b8 000973 nrtn positive 
-0x02b9 000974 set0 28 ,pdata 
-0x02ba 000975 store 4 ,mem_24g_tx_btclk 
-0x02bb 000976 branch enable_user 
-:      000978 p_rssi_noise:
-0x02bc 000979 call save_rssi 
-0x02bd 000980 rtn blank 
-0x02be 000981 fetcht 1 ,mem_rssi_noise_index 
-0x02bf 000982 arg mem_rssi_noise_buffer ,rega 
-0x02c0 000983 call p_rssi_store 
-0x02c1 000984 storet 1 ,mem_rssi_noise_index 
-0x02c2 000985 rtn 
-:      000987 p_rssi_store:
-0x02c3 000988 copy rega ,pdata 
-0x02c4 000989 iadd temp ,contw 
-0x02c5 000990 fetch 1 ,mem_rssi 
-0x02c6 000991 istore 1 ,contw 
-0x02c7 000992 increase 1 ,temp 
-0x02c8 000993 and_into rssi_buf_len_signal ,temp 
-0x02c9 000994 rtn 
-:      000995 p_rssi_average:
-0x02ca 000996 arg 0 ,temp 
-0x02cb 000997 arg rssi_buf_len_signal + 1 ,loopcnt 
-0x02cc 000998 copy rega ,contr 
-:      000999 p_rssi_average_loop:
-0x02cd 001000 ifetch 1 ,contr 
-0x02ce 001001 iadd temp ,temp 
-0x02cf 001002 loop p_rssi_average_loop 
-0x02d0 001003 rshift3 temp ,pdata 
-0x02d1 001004 copy pdata ,temp 
-0x02d2 001005 rtnmark0 mark_24g 
-0x02d3 001007 div pdata ,10 
-0x02d4 001008 call wait_div_end 
-0x02d5 001009 quotient pdata 
-0x02d6 001010 lshift4 pdata ,pdata 
-0x02d7 001011 remainder temp 
-0x02d8 001012 ior temp ,temp 
-0x02d9 001013 rtn 
-0x02da 001014 rtn 
-:      001017 p_mouse_before_lpm:
-0x02db 001018 rtnmark1 mark_24g 
-0x02dc 001019 call p_mouse_le_txbuff_save 
-0x02dd 001020 call p_mouse_setgpio_lpm 
-0x02de 001021 fetch 1 ,mem_context 
-0x02df 001022 bbit0 state_inconn ,p_clear_wake 
-0x02e0 001023 fetch 1 ,mem_lpm_current_mult 
-0x02e1 001024 nrtn blank 
-:      001025 p_clear_wake:
-0x02e2 001026 setarg 0 
-0x02e3 001027 store 8 ,mem_gpio_wakeup_low 
-0x02e4 001028 rtn 
-:      001030 p_mouse_set_sdio_high:
-0x02e5 001031 fetch 1 ,mem_mouse_init_sensor_reset_flag 
-0x02e6 001032 rtn blank 
-0x02e7 001033 branch p_mouse_seting_sensor_type 
-:      001035 p_device_init:
-0x02e8 001036 call app_lpm_mult_enable 
-0x02e9 001037 call enable_authrom 
-0x02ea 001038 branch p_mouse_spi_init ,wake 
-:      001039 p_device_wake_from_power:
-0x02eb 001040 call p_wake_from_power 
-0x02ec 001041 fetch 1 ,mem_power_on_flag 
-0x02ed 001042 bbit1 2 ,p_mouse_check_reconn_target 
-0x02ee 001043 call p_mouse_check_key_gpio 
-0x02ef 001044 beq mouse_lm_button ,p_mouse_24g_pairing_button 
-:      001045 p_mouse_check_reconn_target:
-0x02f0 001046 call p_mouse_tx_power_init 
-0x02f1 001047 fetch 1 ,mem_device_flag 
-0x02f2 001048 fetcht 1 ,mem_24g_device_number 
-0x02f3 001049 isub temp ,null 
-0x02f4 001050 branch p_mouse_connect_24g_mode ,zero 
-0x02f5 001051 call p_mouse_mode_bt_device1_multi_led_on 
-0x02f6 001052 fetch 1 ,mem_xrecord_mode 
-0x02f7 001053 beq rec_3_mode ,p_mouse3_0_check_reconn_target 
-0x02f8 001054 beq rec_4_mode ,p_mouse4_0_check_reconn_target 
-:      001055 p_mouse_null_enter_hibernate_enable:
-0x02f9 001056 jam 1 ,mem_mouse_null_enter_hibernate_flag 
-0x02fa 001057 jam 40 ,mem_mouse_null_enter_hibernate_timer 
-0x02fb 001058 rtn 
-:      001059 p_mouse_tx_power_init:
-0x02fc 001060 fetch 1 ,mem_tx_power_temp 
-0x02fd 001061 store 1 ,mem_tx_power 
-0x02fe 001062 rtn 
-:      001064 p_mouse_check_select_device_by_switch:
-0x02ff 001065 fetch 1 ,mem_config_function_enable 
-0x0300 001066 branch mouse_cheak_select_device_by_switch + 1 
-:      001068 p_mouse_connect_24g_mode:
-0x0301 001069 jam mode_24g_device ,mem_device_flag 
-0x0302 001070 call p_mouse_mode_24g_device_multi_led_on 
-0x0303 001071 branch p_mouse_start_24g_mode 
-:      001073 p_mouse3_0_check_reconn_target:
-0x0304 001075 fetch 6 ,mem_hci_plap 
-0x0305 001076 branch app_bt_start_discovery_short ,blank 
-0x0306 001077 branch mouse3_0_check_reconn_target + 3 
-:      001079 p_mouse4_0_check_reconn_target:
-0x0307 001080 jam 1 ,mem_le_send_security_request_flag 
-0x0308 001081 jam 1 ,mem_mouse_le_reconnect_flag 
-0x0309 001082 fetch 2 ,mem_mouse_direct_timeout 
-0x030a 001083 store 2 ,mem_mouse_direct_timer 
-0x030b 001084 call app_lpm_mult_disable 
-0x030c 001085 call p_le_check_adv_flag 
-0x030d 001086 setarg adv_flag_bredr_not_supported 
-0x030e 001087 istore 1 ,contr 
-0x030f 001089 arg mem_le_scan_data ,contr 
-0x0310 001090 call p_le_adv_data_update 
-0x0311 001092 branch check_51cmd_adv 
-:      001094 p_le_check_adv_flag:
-0x0312 001095 arg mem_le_adv_data ,rega 
-:      001096 p_le_check_adv_flag_loop:
-0x0313 001097 ifetch 1 ,rega 
-0x0314 001098 rtn blank 
-0x0315 001099 iadd contr ,rega 
-0x0316 001100 ifetch 1 ,contr 
-0x0317 001101 rtneq 0x01 
-0x0318 001102 branch p_le_check_adv_flag_loop 
-:      001104 p_mouse_24g_pairing_button:
-0x0319 001105 jam zcode_61 ,mem_zcode_temp_param0 
-0x031a 001106 branch p_zcode_entrance 
-:      001115 p_mouse_spi_init:
-0x031b 001116 jam 0x76 ,mem_spi_init_clk 
-0x031c 001117 branch mouse_spi_init 
-:      001119 p_mouse_init_sunt:
-0x031d 001120 call p_mouse_spi_init 
-0x031e 001121 call mouse_spi_sdio_gpio_pollup 
-:      001124 p_mouse_init_sensor:
-0x031f 001125 call mouse_read_sensor_id 
-0x0320 001126 beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
-0x0321 001127 beq p3065_id1 ,p_mouse_p3065_init_param 
-0x0322 001128 call mouse_twspi_reset 
-0x0323 001129 nop 1000 
-0x0324 001130 branch p_mouse_init_sensor 
-:      001132 p_mouse_init_sensor_reset:
-0x0325 001133 jam 1 ,mem_mouse_init_sensor_reset_flag 
-0x0326 001134 call spi_ncs_enable 
-0x0327 001135 call p_mouse_init_sunt 
-0x0328 001136 branch spi_ncs_disable 
-:      001138 p_mouse_init_p32xx_id2_judge:
-0x0329 001139 call p_mouse_sensor_poweron 
-0x032a 001140 fetch 1 ,mem_sensor_id2 
-0x032b 001141 beq ma8650_id2 ,p_mouse_ma8650_init_param 
-0x032c 001142 beq p8009_id2 ,p_mouse_8009_init_param 
-0x032d 001143 branch mouse_init_p32xx_id2_judge + 1 
-:      001145 p_mouse_ma8650_init_param:
-0x032e 001146 setarg 0x8006 
-0x032f 001147 call twspi_write 
-0x0330 001148 call delay_10ms 
-0x0331 001149 jam ma8650 ,mem_config_sensor_type 
-0x0332 001150 call mouse_sensor_disable_wp 
-0x0333 001151 setarg 0x220a 
-0x0334 001152 call twspi_write 
-0x0335 001153 branch mouse_sensor_enable_wp 
-:      001155 p_mouse_8009_init_param:
-0x0336 001156 setarg 0x16 
-0x0337 001157 call twspi_read 
-0x0338 001158 sub pdata ,0xbd ,null 
-0x0339 001159 nbranch p_mouse_init_sensor ,zero 
-0x033a 001160 setarg 0x19 
-0x033b 001161 call twspi_read 
-0x033c 001162 sub pdata ,0x55 ,null 
-0x033d 001163 nbranch p_mouse_init_sensor ,zero 
-0x033e 001164 setarg 0x1b 
-0x033f 001165 call twspi_read 
-0x0340 001166 sub pdata ,0x1d ,null 
-0x0341 001167 nbranch p_mouse_init_sensor ,zero 
-0x0342 001168 jam p8009 ,mem_config_sensor_type 
-0x0343 001169 call mouse_sensor_disable_wp 
-0x0344 001170 setarg 0x0206 
-0x0345 001171 call twspi_write 
-0x0346 001172 setarg 0x6909 
-0x0347 001173 call twspi_write 
-0x0348 001174 setarg 0x280d 
-0x0349 001175 call twspi_write 
-0x034a 001176 setarg 0x9f0e 
-0x034b 001177 call twspi_write 
-0x034c 001178 setarg 0xba0f 
-0x034d 001179 call twspi_write 
-0x034e 001180 branch mouse_sensor_enable_wp 
-:      001181 p_mouse_p3065_init_param:
-0x034f 001182 call p_mouse_sensor_poweron 
-0x0350 001183 fetch 1 ,mem_sensor_id2 
-0x0351 001184 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
-0x0352 001185 jam p3065 ,mem_config_sensor_type 
-0x0353 001186 rtn 
-:      001188 p_mouse_sensor_poweron:
-0x0354 001189 call p_mouse_spi_init 
-0x0355 001190 setarg 0x8006 
-0x0356 001191 call twspi_write 
-0x0357 001192 nop 12000 
-:      001193 p_mouse_dpi_config:
-0x0358 001196 fetch 1 ,mem_mouse_dpi 
-0x0359 001197 beq 0xff ,p_mouse_dpi_config_default 
-0x035a 001198 branch p_mouse_seting_dpi 
-:      001199 p_mouse_dpi_config_default:
-0x035b 001200 fetch 1 ,mem_config_sensor_motion 
-0x035c 001201 store 1 ,mem_mouse_dpi 
-0x035d 001202 branch p_mouse_seting_dpi 
-:      001204 p_mouse_sensor_powerdown:
-0x035e 001205 call p_mouse_spi_init 
-0x035f 001206 setarg 0x06 
-0x0360 001207 call twspi_read 
-0x0361 001208 or pdata ,0x08 ,pdata 
-0x0362 001209 lshift8 pdata ,pdata 
-0x0363 001210 add pdata ,0x06 ,pdata 
-0x0364 001211 branch twspi_write 
-:      001213 p_mouse_setting_config:
-0x0365 001214 jam zcode_80 ,mem_zcode_temp_param0 
-0x0366 001215 branch p_zcode_entrance 
-:      001218 p_flash_ncs_disable:
-0x0367 001219 fetcht 1 ,mem_flash_ncs_gpio 
-0x0368 001220 branch gpio_out_inactive 
-:      001222 p_spid_init_flash:
-0x0369 001223 jam 0x40 ,core_spid_ctrl 
-0x036a 001224 jam 0x0 ,core_spid_delay 
-0x036b 001225 hfetch 1 ,core_gpio_sel1 
-0x036c 001226 set0 0 ,pdata 
-0x036d 001227 set0 1 ,pdata 
-0x036e 001228 set1 3 ,pdata 
-0x036f 001229 set0 4 ,pdata 
-0x0370 001230 hstore 1 ,core_gpio_sel1 
-0x0371 001231 setarg 0 
-0x0372 001232 store 4 ,mem_spid_tbuf 
-0x0373 001234 hfetch 1 ,core_gpio_pd3 
-0x0374 001235 set0 0 ,pdata 
-0x0375 001236 hstore 1 ,core_gpio_pd3 
-0x0376 001238 rtn 
-:      001240 p_mouse_load_flash_info_check:
-0x0377 001241 call p_flash_release_deep_power_down 
-0x0378 001242 call mouse_load_flash_flag 
-0x0379 001243 fetch 2 ,mem_store_flag 
-0x037a 001244 arg eeprom_init_flag ,temp 
-0x037b 001245 isub temp ,null 
-0x037c 001246 branch p_mouse_load_flash_device_info ,zero 
-0x037d 001247 storet 2 ,mem_store_flag 
-0x037e 001248 call mouse_ble_init_address 
-0x037f 001249 fetch 1 ,mem_config_sensor_motion 
-0x0380 001250 store 1 ,mem_mouse_dpi 
-:      001254 p_mouse_store_flash_device_info:
-0x0381 001255 call p_flash_release_deep_power_down 
-0x0382 001256 call p_flash_erase_sector 
-0x0383 001257 call p_mouse_information_flash_parameters 
-0x0384 001258 call p_spid_write_flash 
-0x0385 001259 call p_wait_flash_done 
-:      001260 p_mouse_store_random_addr_increase_count:
-0x0386 001261 arg 2 ,temp 
-0x0387 001262 arg mem_random_addr_increase_count ,rega 
-0x0388 001263 arg mouse_random_addr_count_eeprom_offset ,regb 
-0x0389 001264 fetch 3 ,mem_flash_base 
-0x038a 001265 iadd regb ,pdata 
-0x038b 001266 call p_spid_write_flash 
-0x038c 001267 call p_wait_flash_done 
-0x038d 001268 call p_flash_deep_power_down 
-0x038e 001269 branch p_mouse_spi_init 
-:      001271 p_mouse_set_24g_addr_flash:
-0x038f 001272 arg 4 ,temp 
-0x0390 001273 arg mem_24g_addr ,rega 
-0x0391 001274 arg mouse_g24_addr_eeprom_offect ,regb 
-0x0392 001275 rtn 
-:      001277 p_flash_erase_sector:
-0x0393 001278 fetch 3 ,mem_flash_base 
-0x0394 001279 store 3 ,mem_spi_write_addr 
-0x0395 001280 call flash_erase_sector + 2 
-0x0396 001281 branch p_wait_flash_done 
-:      001283 p_spid_write_flash:
-0x0397 001284 copy pdata ,regc 
-0x0398 001285 copy rega ,pdata 
-0x0399 001286 increase -4 ,pdata 
-0x039a 001287 copy pdata ,regb 
-0x039b 001288 ifetch 4 ,regb 
-0x039c 001289 store 4 ,mem_write_flash_head_temp 
-0x039d 001290 copy regc ,pdata 
-0x039e 001291 call spid_write_flash 
-0x039f 001292 fetch 4 ,mem_write_flash_head_temp 
-0x03a0 001293 istore 4 ,regb 
-0x03a1 001294 rtn 
-:      001296 p_wait_flash_done:
-0x03a2 001297 setarg 100000 
-0x03a3 001298 call sleep 
-0x03a4 001299 call spid_unlock_flash 
-0x03a5 001300 setarg mem_spid_rbuf 
-0x03a6 001301 hstore 2 ,core_spid_rxaddr 
-0x03a7 001302 setarg flash_read_satus 
-0x03a8 001303 call spid_read_reg 
-0x03a9 001304 bbit1 flash_status_wip ,p_wait_flash_done 
-0x03aa 001305 rtn 
-:      001307 p_mouse_information_flash_parameters:
-0x03ab 001308 setarg mem_mouse_information_end 
-0x03ac 001309 arg mem_mouse_information_start ,temp 
-0x03ad 001310 isub temp ,temp 
-0x03ae 001311 fetch 3 ,mem_flash_base 
-0x03af 001312 arg mem_mouse_information_start ,rega 
-0x03b0 001313 rtn 
-:      001315 p_mouse_read_flash:
-0x03b1 001316 call p_flash_release_deep_power_down 
-0x03b2 001317 call p_mouse_information_flash_parameters 
-0x03b3 001318 branch spid_read_flash 
-:      001320 p_mouse_load_flash_device_info:
-0x03b4 001321 call p_mouse_read_flash 
-0x03b5 001322 call p_mouse_load_random_addr_increase_count 
-0x03b6 001323 call p_mouse_check_select_device_by_switch 
-0x03b7 001324 call mouse_select_reconn_device 
-0x03b8 001325 fetch 4 ,mem_mouse_24g_addr 
-0x03b9 001326 store 4 ,mem_24g_addr 
-0x03ba 001327 rtn 
-:      001329 p_flash_deep_power_down:
-0x03bb 001330 jam flash_command_deep_power_down ,mem_temp 
-:      001331 p_spid_write_flash_cmd:
-0x03bc 001332 call p_spid_init_flash 
-0x03bd 001333 nop 100 
-0x03be 001334 call spid_unlock_flash 
-0x03bf 001335 arg mem_write_flash_head_temp ,rega 
-0x03c0 001336 fetcht 1 ,mem_temp 
-0x03c1 001337 call spid_write_flash_common 
-0x03c2 001338 nop 100 
-0x03c3 001339 rtn 
-:      001341 p_flash_release_deep_power_down:
-0x03c4 001342 jam flash_command_release_deep_power_down ,mem_temp 
-0x03c5 001343 branch p_spid_write_flash_cmd 
-:      001345 p_mouse_start_24g_mode:
-0x03c6 001348 call p_g24_factory_check 
-0x03c7 001349 branch p_g24_auto_pair_start ,user 
-0x03c8 001350 branch p_g24_start_24g_mode 
-:      001352 p_g24_factory_check:
-0x03c9 001353 arg 2 ,loopcnt 
-0x03ca 001354 arg mem_24g_addr ,contr 
-:      001355 p_pdata_0xff_check:
-0x03cb 001356 call enable_user 
-0x03cc 001357 setarg 0xffff 
-:      001358 p_pdata_0xff_check_loop:
-0x03cd 001359 ifetcht 2 ,contr 
-0x03ce 001360 isub temp ,null 
-0x03cf 001361 ncall disable_user ,zero 
-0x03d0 001362 loop p_pdata_0xff_check_loop 
-0x03d1 001363 rtn 
-:      001365 p_mouse_g24_package_data:
-0x03d2 001366 call mouse_g24_package_data 
-0x03d3 001367 fetch 2 ,mem_mouse_z 
-0x03d4 001368 rtn blank 
-:      001369 p_g24_transmit_by_interrupt_enable:
-0x03d5 001370 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
-0x03d6 001371 setarg 0 
-0x03d7 001372 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-0x03d8 001373 rtn 
-:      001375 p_mouse_le_txbuff_save:
-0x03d9 001376 arg mem_le_tx_buffer0 ,contr 
-0x03da 001377 arg mem_le_tx_buffer0_omemalloc ,contw 
-0x03db 001378 call p_mouse_le_txbuff_copy 
-0x03dc 001379 arg mem_le_tx_buffer1 ,contr 
-0x03dd 001380 call p_mouse_le_txbuff_copy 
-0x03de 001381 arg mem_le_tx_buffer2 ,contr 
-0x03df 001382 call p_mouse_le_txbuff_copy 
-0x03e0 001383 arg mem_le_tx_buffer3 ,contr 
-:      001384 p_mouse_le_txbuff_copy:
-0x03e1 001385 arg 27 ,loopcnt 
-0x03e2 001386 branch memcpy 
-:      001388 p_mouse_le_txbuff_load:
-0x03e3 001389 arg mem_le_tx_buffer0_omemalloc ,contr 
-0x03e4 001390 arg mem_le_tx_buffer0 ,contw 
-0x03e5 001391 call p_mouse_le_txbuff_copy 
-0x03e6 001392 arg mem_le_tx_buffer1 ,contw 
-0x03e7 001393 call p_mouse_le_txbuff_copy 
-0x03e8 001394 arg mem_le_tx_buffer2 ,contw 
-0x03e9 001395 call p_mouse_le_txbuff_copy 
-0x03ea 001396 arg mem_le_tx_buffer3 ,contw 
-0x03eb 001397 branch p_mouse_le_txbuff_copy 
-:      001399 p_mouse_le:
-0x03ec 001400 call le_fifo_check_nearly_full 
-0x03ed 001401 nrtn blank 
-0x03ee 001402 fetch 1 ,mem_le_connect_status_flag 
-0x03ef 001403 and pdata ,0x03 ,pdata 
-0x03f0 001404 rtnne 0x03 
-0x03f1 001405 fetch 1 ,mem_mouse_clear_sensor_data_flag 
-0x03f2 001406 call p_mouse_clear_sensor_data ,blank 
-0x03f3 001407 fetch mouse_flag_len ,mem_mouse_flag 
-0x03f4 001408 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
-0x03f5 001409 call mouse_motion 
-0x03f6 001410 nrtn user 
-0x03f7 001411 call p_mouse_wheel_trigger 
-:      001412 p_mouse_data_push:
-0x03f8 001413 arg mem_mouse_key ,rega 
-0x03f9 001414 call queue_push 
-0x03fa 001415 call p_mouse_queue_increase ,user 
-0x03fb 001417 rtn 
-:      001419 p_mouse_data_init:
-0x03fc 001420 jam 7 ,mem_mouse_data_queue 
-0x03fd 001421 jam 4 ,mem_mouse_data_queue + 1 
-0x03fe 001422 setarg mem_mouse_data_queue 
-0x03ff 001423 store 2 ,mem_queue_ptr 
-0x0400 001424 branch queue_init 
-:      001426 p_mouse_queue_increase:
-0x0401 001427 fetch 1 ,mem_mouse_data_queue_num 
-0x0402 001428 increase 1 ,pdata 
-0x0403 001429 store 1 ,mem_mouse_data_queue_num 
-0x0404 001430 rtn 
-:      001432 p_mouse_data_pull:
-0x0405 001433 arg mem_mouse_key ,rega 
-0x0406 001434 call queue_pop 
-0x0407 001435 branch p_mouse_fill_data_le ,user 
-0x0408 001436 rtn 
-:      001438 p_mouse_fill_data_le:
-0x0409 001439 call le_clear_md 
-0x040a 001440 fetch 1 ,mem_mouse_data_queue_num 
-0x040b 001441 sub pdata ,1 ,null 
-0x040c 001442 ncall le_set_md ,positive 
-0x040d 001443 fetch 1 ,mem_mouse_data_queue_num 
-0x040e 001444 rtn blank 
-0x040f 001445 increase -1 ,pdata 
-0x0410 001446 store 1 ,mem_mouse_data_queue_num 
-0x0411 001447 branch mouse_fill_data_le 
-:      001450 p_mouse_wheel_trigger:
-0x0412 001451 fetch 2 ,mem_mouse_z 
-0x0413 001452 rtn blank 
-0x0414 001453 jam 1 ,mem_mouse_wheel_trigger 
-0x0415 001454 jam 2 ,mem_mouse_wheel_trigger_timer 
-0x0416 001455 rtn 
-:      001457 p_mouse_bt:
-0x0417 001458 rtn attempt 
-0x0418 001459 fetch 1 ,mem_app_handshake_flag 
-0x0419 001460 rtn blank 
-0x041a 001461 call l2cap_malloc_is_fifo_nearly_full 
-0x041b 001462 nrtn blank 
-0x041c 001463 fetch 1 ,mem_mouse_clear_sensor_data_flag 
-0x041d 001464 call p_mouse_clear_sensor_data ,blank 
-0x041e 001465 fetch mouse_flag_len ,mem_mouse_flag 
-0x041f 001466 bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
-0x0420 001467 bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_send_empty_data 
-0x0421 001468 call mouse_motion 
-0x0422 001469 nrtn user 
-0x0423 001470 call p_mouse_wheel_trigger 
-0x0424 001471 fetch 1 ,mem_mouse_bt_boot_mode 
-0x0425 001472 beq 1 ,p_mouse_send_data_boot_mode 
-0x0426 001473 fetch 1 ,mem_mouse_bt_send_first_package_flag 
-0x0427 001474 rtn blank 
-0x0428 001475 branch mouse_send_data 
-:      001477 p_mouse_send_data_boot_mode:
-0x0429 001478 fetch 1 ,mem_mouse_key 
-0x042a 001479 store 1 ,mem_mouse_bt_boot_data 
-0x042b 001480 fetch 1 ,mem_mouse_x 
-0x042c 001481 istore 1 ,contw 
-0x042d 001482 fetch 1 ,mem_mouse_y 
-0x042e 001483 istore 1 ,contw 
-0x042f 001484 fetch 2 ,mem_mouse_z 
-0x0430 001485 istore 2 ,contw 
-0x0431 001487 arg 7 ,rega 
-0x0432 001488 call hid_malloc_tx_buff 
-0x0433 001489 fetch 2 ,mem_hid_int_remote_cid 
-0x0434 001490 istore 2 ,contw 
-0x0435 001491 setarg 0x02a1 
-0x0436 001492 istore 2 ,contw 
-0x0437 001493 fetch 5 ,mem_mouse_bt_boot_data 
-0x0438 001494 istore 5 ,contw 
-0x0439 001495 rtn 
-:      001502 p_mouse_clear_sensor_data:
-0x043a 001503 call le_set_config_more_data 
-0x043b 001504 jam 1 ,mem_mouse_clear_sensor_data_flag 
-0x043c 001505 branch p_mouse_sensor_poweron 
-:      001507 p_mouse_idle:
-0x043d 001508 call ui_check_paring_button 
-0x043e 001509 call p_mouse_dpi_check 
-0x043f 001510 branch mouse_wheel_check 
-:      001512 p_mouse_dpi_check:
-0x0440 001513 fetcht 1 ,mem_24g_sw_gpio 
-0x0441 001514 call gpio_config_output 
-0x0442 001515 fetcht 1 ,mem_dpi_button_gpio 
-0x0443 001516 call p_gpio_set_input_pd 
-0x0444 001517 fetcht 1 ,mem_dpi_button_gpio 
-0x0445 001518 call gpio_get_bit 
-0x0446 001519 branch p_mouse_dpi_up ,true 
-0x0447 001520 call p_gpio_set_input_pu 
-:      001521 p_mouse_dpi_down:
-0x0448 001522 fetch 1 ,mem_mouse_dpi_button_state 
-0x0449 001523 rtneq dpi_button_state_down 
-0x044a 001524 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
-0x044b 001525 jam 1 ,mem_mouse_dpi_no_enter_long_sleep_flag 
-0x044c 001526 fetch 1 ,mem_mouse_dpi 
-0x044d 001527 increase 1 ,pdata 
-0x044e 001528 and pdata ,0x03 ,pdata 
-0x044f 001529 store 1 ,mem_mouse_dpi 
-0x0450 001530 mul32 pdata ,2 ,pdata 
-0x0451 001531 increase 2 ,pdata 
-0x0452 001532 store 2 ,mem_mouse_multi_led_blink_count 
-0x0453 001533 call p_mouse_dpi_multi_led_blink 
-0x0454 001534 call mouse_seting_dpi 
-0x0455 001535 branch p_mouse_store_flash_device_info 
-:      001536 p_mouse_dpi_up:
-0x0456 001538 call p_gpio_set_input_pu 
-0x0457 001539 branch mouse_dpi_up 
-:      001541 p_mouse_priority_bb_event:
-0x0458 001542 copy regc ,pdata 
-0x0459 001543 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
-0x045a 001544 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
-0x045b 001545 beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
-0x045c 001546 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
-0x045d 001547 beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
-0x045e 001548 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
-0x045f 001549 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_timeout 
-0x0460 001550 beq bt_evt_virtual_cable_unplug ,p_mouse_irtual_cable_unplug 
-0x0461 001551 beq bt_evt_switch_not_accept ,app_bt_role_switch 
-0x0462 001552 beq bt_evt_sniff_not_accept ,p_mouse_sniff_not_accept 
-0x0463 001553 beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
-0x0464 001554 beq bt_evt_bb_disconnected ,p_mouse_bb_event_disconnected 
-0x0465 001555 beq bt_evt_switch_success_master ,p_mouse_enter_sniff_check 
-0x0466 001556 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
-0x0467 001557 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
-0x0468 001558 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
-0x0469 001559 branch mouse_priority_bb_event + 1 
-:      001561 p_mouse_le_bb_event_connected:
-0x046a 001562 call p_mouse_init_sensor_reset 
-0x046b 001563 jam zcode_b0 ,mem_zcode_temp_param0 
-0x046c 001564 branch p_zcode_entrance 
-:      001566 p_mouse_le_bb_disconnected:
-0x046d 001567 call p_mouse_sensor_powerdown_check 
-0x046e 001568 jam zcode_a2 ,mem_zcode_temp_param0 
-0x046f 001569 branch p_zcode_entrance 
-:      001571 p_mouse_le_enc_info:
-:      001572 p_app_updata_le_param:
-0x0470 001573 jam bt_cmd_le_update_conn ,mem_fifo_temp 
-0x0471 001574 branch ui_ipc_send_cmd 
-:      001576 p_mouse_le_ll_start_encryt:
-0x0472 001577 jam zcode_b3 ,mem_zcode_temp_param0 
-0x0473 001578 branch p_zcode_entrance 
-:      001580 p_mouse_le_conn_param_update_rsp_recieved:
-0x0474 001581 jam zcode_a1 ,mem_zcode_temp_param0 
-0x0475 001582 branch p_zcode_entrance 
-:      001585 p_mouse_bb_event_reconn_timeout:
-:      001586 p_mouse_bb_event_reconn_failed:
-0x0476 001587 jam zcode_a3 ,mem_zcode_temp_param0 
-0x0477 001588 branch p_zcode_entrance 
-:      001590 p_mouse_irtual_cable_unplug:
-0x0478 001591 call mouse_irtual_cable_unplug 
-0x0479 001592 branch app_bb_hibernate 
-:      001594 p_mouse_sniff_not_accept:
-0x047a 001595 jam zcode_b1 ,mem_zcode_temp_param0 
-0x047b 001596 branch p_zcode_entrance 
-:      001598 p_mouse_bb_event_connected:
-0x047c 001599 call p_low_power_no_data_off_led_time_nolimited 
-0x047d 001600 call p_mouse_init_sensor_reset 
-0x047e 001601 call p_mouse_null_enter_hibernate_disable 
-0x047f 001602 call p_mouse_discovey_led_blink_off 
-0x0480 001603 jam 0 ,mem_mouse_send_switch_req_timer 
-0x0481 001604 branch mouse_stop_discovery 
-:      001606 p_mouse_bb_event_disconnected:
-0x0482 001607 call p_mouse_sensor_powerdown_check 
-0x0483 001608 jam zcode_b4 ,mem_zcode_temp_param0 
-0x0484 001609 branch p_zcode_entrance 
-:      001611 p_mouse_enter_sniff_check:
-0x0485 001612 jam zcode_b2 ,mem_zcode_temp_param0 
-0x0486 001613 branch p_zcode_entrance 
-:      001615 p_mouse_24g_pairing_complete:
-0x0487 001616 call p_mouse_init_sensor_reset 
-0x0488 001617 jam zcode_92 ,mem_zcode_temp_param0 
-0x0489 001618 branch p_zcode_entrance 
-:      001620 p_mouse_24g_attempt_fail:
-0x048a 001621 call p_mouse_sensor_powerdown_check 
-0x048b 001622 jam zcode_a0 ,mem_zcode_temp_param0 
-0x048c 001623 branch p_zcode_entrance 
-:      001625 p_mouse_24g_attempt_success:
-0x048d 001626 call p_low_power_no_data_off_led_time_nolimited 
-0x048e 001627 jam 1 ,mem_mouse_24g_attempt_success_flag 
-0x048f 001628 call p_mouse_null_enter_hibernate_disable 
-0x0490 001629 call p_mouse_init_sensor_reset 
-0x0491 001630 call mouse_no_data_timer_init 
-:      001631 p_mouse_24g_no_data_timer_init:
-0x0492 001632 setarg 0x2ee0 
-0x0493 001633 store 2 ,mem_mouse_no_data_timer 
-0x0494 001634 rtn 
-:      001636 p_mouse_before_hibernate:
-0x0495 001637 call p_mouse_sensor_powerdown_check 
-0x0496 001638 jam zcode_a4 ,mem_zcode_temp_param0 
-0x0497 001639 branch p_zcode_entrance 
-:      001641 p_mouse_sensor_powerdown_check:
-0x0498 001642 fetch 1 ,mem_mouse_init_sensor_reset_flag 
-0x0499 001643 rtn blank 
-0x049a 001644 jam 0 ,mem_mouse_init_sensor_reset_flag 
-0x049b 001645 branch p_mouse_sensor_powerdown 
-:      001648 p_mouse_bb_event_timer:
-0x049c 001649 call p_mouse_adc_read 
-0x049d 001650 call p_mouse_low_voltage_led_timer 
-0x049e 001651 call p_low_power_nodata_off_led_time_check 
-0x049f 001653 call p_mouse_multi_led_blink_timer 
-0x04a0 001654 call p_mouse_wheel_trigger_timer 
-0x04a1 001655 call p_mouse_null_enter_hibernate_timer 
-0x04a2 001656 call p_mouse_bt_discovery_check 
-0x04a3 001657 call mouse_check_discovery_timeout_timer 
-0x04a4 001658 call p_mouse_check_select_device_by_switch_timer 
-0x04a5 001659 call p_mouse_g24_long_sleep_param_update_timer 
-0x04a6 001660 call p_mouse_check_direct_timeout_timer 
-0x04a7 001661 call p_mouse_le_enable_att_list_timer 
-0x04a8 001662 call p_mouse_le_current_mult_update_timer 
-0x04a9 001663 call p_le_send_smp_security_request_timer 
-0x04aa 001664 call p_mouse_send_switch_req_timer 
-0x04ab 001665 call mouse_check_hid_handshake_timer 
-0x04ac 001666 call p_mouse_bt_check_sniff_req_timeout_timer 
-0x04ad 001667 branch mouse_check_no_data_timeout_timer 
-:      001670 p_mouse_check_select_device_by_switch_timer:
-0x04ae 001671 fetch 1 ,mem_config_function_enable 
-0x04af 001672 rtnbit0 enable_select_device_by_switch 
-0x04b0 001673 fetcht 1 ,mem_config_select_device_button_gpio 
-0x04b1 001674 call gpio_get_bit 
-0x04b2 001675 branch p_mouse_cheak_select_24gdevice ,true 
-:      001676 p_mouse_select_btdevice:
-0x04b3 001677 fetch 1 ,mem_device_flag 
-0x04b4 001678 bne mode_bt_device1 ,soft_reset_chip 
-0x04b5 001679 rtn 
-:      001680 p_mouse_cheak_select_24gdevice:
-0x04b6 001681 fetch 1 ,mem_device_flag 
-0x04b7 001682 bne mode_24g_device ,soft_reset_chip 
-0x04b8 001683 rtn 
-:      001686 p_mouse_send_switch_req_timer:
-0x04b9 001687 arg mem_mouse_send_switch_req_timer ,regc 
-0x04ba 001688 arg host_create_conn_resend ,regb 
-0x04bb 001689 branch timer_single_step 
-:      001691 p_mouse_bt_check_sniff_req_timeout_timer:
-0x04bc 001692 arg mem_mouse_bt_send_first_package_timer ,regc 
-0x04bd 001693 arg p_mouse_bt_send_first_package ,regb 
-0x04be 001694 branch timer_single_step 
-:      001695 p_mouse_bt_send_first_package:
-0x04bf 001696 jam 1 ,mem_mouse_bt_send_first_package_flag 
-0x04c0 001697 rtn 
-:      001700 p_mouse_le_enable_att_list_timer:
-0x04c1 001701 arg mem_le_start_encrypt_timer ,regc 
-0x04c2 001702 arg mouse_le_write_enable ,regb 
-0x04c3 001703 branch timer_single_step 
-:      001704 p_mouse_check_direct_timeout_timer:
-0x04c4 001705 arg mem_mouse_direct_timer ,regc 
-0x04c5 001706 arg p_mouse_check_direct_timeout ,regb 
-0x04c6 001707 branch timer_single_step_2b 
-:      001709 p_mouse_check_direct_timeout:
-0x04c7 001710 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
-0x04c8 001711 nrtn blank 
-0x04c9 001712 branch mouse_check_direct_timeout 
-:      001714 p_mouse_le_current_mult_update_timer:
-0x04ca 001715 arg mem_mouse_le_current_mult_timer ,regc 
-0x04cb 001716 arg p_mouse_le_current_mult_reinit ,regb 
-0x04cc 001717 branch timer_single_step 
-:      001718 p_mouse_le_current_mult_reinit:
-0x04cd 001719 fetch 1 ,mem_lpm_mult_init 
-0x04ce 001720 store 1 ,mem_lpm_mult 
-0x04cf 001721 branch p_mouse_long_mult_flag_enable 
-:      001723 p_le_send_smp_security_request_timer:
-0x04d0 001724 fetch 1 ,mem_mouse_le_bb_connected_flag 
-0x04d1 001725 rtn blank 
-0x04d2 001726 arg mem_mouse_send_secutiry_request_timer ,regc 
-0x04d3 001727 arg p_le_pairing_sm_start_check ,regb 
-0x04d4 001728 branch timer_single_step 
-:      001729 p_le_pairing_sm_start_check:
-0x04d5 001730 fetch 1 ,mem_le_send_security_request_flag 
-0x04d6 001731 nrtn blank 
-0x04d7 001732 branch le_pairing_sm_start 
-:      001735 p_mouse_g24_long_sleep_param_update_timer:
-0x04d8 001736 arg mem_24g_long_sleep_param_update_timer ,regc 
-0x04d9 001737 arg p_mouse_g24_long_sleep_normal_param ,regb 
-0x04da 001738 branch timer_single_step 
-:      001739 p_mouse_g24_long_sleep_normal_param:
-0x04db 001740 setarg g24_long_sleep_step2 
-0x04dc 001741 store 3 ,mem_24g_enter_hibernate 
-:      001742 p_mouse_long_mult_flag_enable:
-0x04dd 001743 jam 1 ,mem_mouse_long_mult_flag 
-0x04de 001744 rtn 
-:      001746 p_mouse_wheel_trigger_timer:
-0x04df 001747 arg mem_mouse_wheel_trigger_timer ,regc 
-0x04e0 001748 arg p_mouse_wheel_trigger_disable ,regb 
-0x04e1 001749 branch timer_single_step 
-:      001750 p_mouse_wheel_trigger_disable:
-0x04e2 001751 jam 0 ,mem_mouse_wheel_trigger 
-0x04e3 001752 rtn 
-:      001754 p_mouse_bt_discovery_check:
-0x04e4 001755 fetch 1 ,mem_device_flag 
-0x04e5 001756 rtneq mode_24g_device 
-0x04e6 001757 fetch 1 ,mem_config_function_enable 
-0x04e7 001758 bbit1 enable_bt_button ,mouse_bt_discovery_by_button 
-:      001822 p_mouse_null_enter_hibernate_timer:
-0x04e8 001823 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
-0x04e9 001824 nrtn blank 
-0x04ea 001825 fetch 1 ,mem_mouse_null_enter_hibernate_flag 
-0x04eb 001826 rtn blank 
-0x04ec 001827 fetch 1 ,mem_mouse_null_enter_hibernate_timer 
-0x04ed 001828 branch p_mouse_null_enter_hibernate ,blank 
-0x04ee 001829 increase -1 ,pdata 
-0x04ef 001830 store 1 ,mem_mouse_null_enter_hibernate_timer 
-0x04f0 001831 rtn 
-:      001832 p_mouse_null_enter_hibernate:
-0x04f1 001833 jam 0 ,mem_mouse_null_enter_hibernate_flag 
-0x04f2 001834 branch app_enter_hibernate 
-:      001836 p_mouse_null_enter_hibernate_disable:
-0x04f3 001837 jam 0 ,mem_mouse_null_enter_hibernate_flag 
-0x04f4 001838 jam 0 ,mem_mouse_null_enter_hibernate_timer 
-0x04f5 001839 rtn 
-:      001841 p_mouse_multi_led_blink_timer:
-0x04f6 001842 fetch 1 ,mem_mouse_multi_led_blink_enable 
-0x04f7 001843 rtn blank 
-0x04f8 001844 fetch 1 ,mem_mouse_multi_led_type 
-0x04f9 001845 beq multi_led_on ,p_mouse_multi_led_type_on 
-0x04fa 001846 beq multi_led_blink ,p_mouse_multi_led_type_blink 
-0x04fb 001847 rtn 
-:      001849 p_mouse_multi_led_type_on:
-0x04fc 001850 call p_mouse_multi_led_on 
-0x04fd 001851 fetch 1 ,mem_mouse_multi_led_on_timer 
-0x04fe 001852 increase 1 ,pdata 
-0x04ff 001853 store 1 ,mem_mouse_multi_led_on_timer 
-0x0500 001854 fetcht 1 ,mem_mouse_multi_led_on_timer_init 
-0x0501 001855 isub temp ,null 
-0x0502 001856 call p_mouse_multi_led_off_poweron2s ,zero 
-0x0503 001857 rtn 
-:      001858 p_mouse_multi_led_off_poweron2s:
-0x0504 001859 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
-0x0505 001860 branch p_mouse_multi_led_off 
-:      001862 p_mouse_multi_led_type_blink:
-0x0506 001863 fetch 1 ,mem_mouse_multi_led_blink_timer 
-0x0507 001864 increase -1 ,pdata 
-0x0508 001865 store 1 ,mem_mouse_multi_led_blink_timer 
-0x0509 001866 nrtn blank 
-0x050a 001867 fetch 1 ,mem_mouse_multi_led_blink_timer_init 
-0x050b 001868 store 1 ,mem_mouse_multi_led_blink_timer 
-0x050c 001869 fetch 1 ,mem_mouse_multi_led_blink_count_limited 
-0x050d 001870 branch p_mouse_multi_led_blink_count_no_limited ,blank 
-0x050e 001871 fetch 1 ,mem_mouse_multi_led_blink_count 
-0x050f 001872 branch p_mouse_multi_led_blink_off ,blank 
-0x0510 001873 increase -1 ,pdata 
-0x0511 001874 store 1 ,mem_mouse_multi_led_blink_count 
-:      001875 p_mouse_multi_led_blink_count_no_limited:
-0x0512 001876 fetch 1 ,mem_mouse_multi_led_state 
-0x0513 001877 beq on ,p_mouse_multi_led_off 
-0x0514 001878 beq off ,p_mouse_multi_led_on 
-0x0515 001879 rtn 
-:      001881 p_mouse_multi_led_on:
-0x0516 001882 jam on ,mem_mouse_multi_led_state 
-0x0517 001883 fetch 1 ,mem_device_flag 
-0x0518 001884 beq mode_24g_device ,p_mouse_multi_down_led_on 
-:      001885 p_mouse_multi_up_led_on:
-0x0519 001886 fetcht 1 ,mem_mouse_multi_led_gpio 
-0x051a 001887 set1 7 ,temp 
-0x051b 001888 call gpio_config_output 
-0x051c 001889 fetcht 1 ,mem_mouse_multi_led_gpio 
-0x051d 001890 branch gpio_out_active 
-:      001891 p_mouse_multi_down_led_on:
-0x051e 001892 fetcht 1 ,mem_mouse_multi_led_gpio 
-0x051f 001893 call gpio_config_output 
-0x0520 001894 fetcht 1 ,mem_mouse_multi_led_gpio 
-0x0521 001895 branch gpio_out_inactive 
-:      001897 p_mouse_multi_led_blink_off:
-0x0522 001898 setarg 0 
-0x0523 001899 store 3 ,mem_mouse_multi_led_blink_timer 
-:      001900 p_mouse_multi_led_off:
-0x0524 001901 fetch 1 ,mem_mouse_multi_led_blink_count 
-0x0525 001902 nbranch p_mouse_multi_led_off_wait_blink_over ,blank 
-0x0526 001903 jam 0 ,mem_mouse_multi_led_blink_enable 
-0x0527 001904 jam 0 ,mem_mouse_multi_led_type 
-:      001905 p_mouse_multi_led_off_wait_blink_over:
-0x0528 001906 jam 0 ,mem_mouse_multi_led_on_timer 
-0x0529 001907 jam off ,mem_mouse_multi_led_state 
-0x052a 001908 branch p_mouse_multi_led_gpio_set_float 
-:      001911 p_mouse_mode_bt_device1_multi_led_on:
-:      001912 p_mouse_mode_24g_device_multi_led_on:
-0x052b 001913 jam 1 ,mem_mouse_multi_led_on_poweron2s_flag 
-0x052c 001914 jam on ,mem_mouse_multi_led_blink_enable 
-0x052d 001915 jam multi_led_on ,mem_mouse_multi_led_type 
-0x052e 001916 jam 0 ,mem_mouse_multi_led_on_timer 
-0x052f 001917 rtn 
-:      001920 p_mouse_mode_bt_device_blink_5s:
-:      001921 p_mouse_mode_24g_device_blink_5s:
-0x0530 001922 jam 30 ,mem_mouse_multi_led_blink_count 
-0x0531 001923 branch p_mouse_dpi_multi_led_blink 
-:      001924 p_mouse_mode_bt_device1_led_blink:
-0x0532 001925 jam 5 ,mem_mouse_multi_led_blink_timer_init 
-0x0533 001926 branch p_mouse_discovery_multi_led_blink2 
-:      001929 p_mouse_discovery_multi_led_blink:
-0x0534 001930 jam 3 ,mem_mouse_multi_led_blink_timer_init 
-:      001931 p_mouse_discovery_multi_led_blink2:
-0x0535 001933 jam 1 ,mem_mouse_multi_led_blink_count 
-:      001934 p_mouse_multi_led_blink_enable:
-0x0536 001935 jam 1 ,mem_mouse_multi_led_blink_timer 
-0x0537 001936 jam on ,mem_mouse_multi_led_blink_enable 
-0x0538 001937 jam multi_led_blink ,mem_mouse_multi_led_type 
-0x0539 001938 rtn 
-:      001940 p_mouse_discovey_led_blink_off:
-0x053a 001941 jam 0 ,mem_mouse_multi_led_blink_count 
-0x053b 001942 fetch 1 ,mem_mouse_multi_led_on_timer 
-0x053c 001943 nrtn blank 
-0x053d 001944 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
-0x053e 001945 nrtn blank 
-0x053f 001946 branch p_mouse_multi_led_blink_off 
-:      001948 p_mouse_dpi_multi_led_blink:
-0x0540 001949 jam 5 ,mem_mouse_multi_led_blink_timer_init 
-0x0541 001950 jam 1 ,mem_mouse_multi_led_blink_count_limited 
-0x0542 001951 branch p_mouse_multi_led_blink_enable 
-:      001954 p_mouse_adc_read:
-0x0543 001957 fetch 1 ,mem_adc_read_timer 
-0x0544 001958 increase 1 ,pdata 
-0x0545 001959 store 1 ,mem_adc_read_timer 
-0x0546 001960 sub pdata ,10 ,null 
-0x0547 001961 rtn positive 
-0x0548 001963 call adc_init_data 
-0x0549 001965 jam 0 ,mem_adc_read_timer 
-0x054a 001966 call adc_set_mode 
-0x054b 001967 call vdd_calculate_by_mode 
-0x054c 001968 store 2 ,mem_mouse_vdd_now_vol 
-0x054d 001969 arg mem_mouse_vdd_calculate_set ,rega 
-0x054e 001970 call p_adc_bat_percent_lowpower_out 
-0x054f 001971 fetch 1 ,mem_adc_power_flag 
-0x0550 001972 bbit1 1 ,app_enter_hibernate 
-0x0551 001973 bbit0 0 ,p_mouse_adc_no_low_voltage 
-0x0552 001974 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
-0x0553 001975 branch mouse_adc_low_voltage 
-:      001977 p_mouse_adc_no_low_voltage:
-0x0554 001978 call mouse_adc_no_low_voltage 
-0x0555 001979 fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
-0x0556 001980 rtn blank 
-0x0557 001981 jam 0 ,mem_mouse_adc_last_low_voltage_flag 
-:      001982 p_mouse_adc_low_volatage_led_off:
-0x0558 001983 fetch 1 ,mem_config_low_voltage_alarm_gpio 
-0x0559 001984 store 1 ,mem_mouse_struct_led_gpio 
-0x055a 001986 branch p_mouse_multi_led_blink_off 
-:      002002 p_adc_bat_percent_lowpower_out:
-0x055b 002003 ifetch 8 ,rega 
-0x055c 002004 store 8 ,mem_pdatatemp 
-0x055d 002005 fetcht 2 ,mem_pdatatemp + 2 
-0x055e 002006 fetch 2 ,mem_pdatatemp + 6 
-0x055f 002007 isub temp ,null 
-0x0560 002008 nbranch adc_set_no_power_flag ,positive 
-0x0561 002009 fetcht 2 ,mem_pdatatemp + 4 
-0x0562 002010 isub temp ,null 
-0x0563 002011 nbranch adc_set_low_power_flag ,positive 
-:      002012 p_adc_clear_low_power_flag:
-0x0564 002013 fetch 1 ,mem_adc_power_flag 
-0x0565 002014 set0 0 ,pdata 
-0x0566 002015 store 1 ,mem_adc_power_flag 
-0x0567 002016 rtn 
-:      002018 p_mouse_low_voltage_led_timer:
-0x0568 002019 fetch 1 ,mem_low_power_led_blink_flag 
-0x0569 002020 nrtn blank 
-0x056a 002021 fetch mouse_flag_len ,mem_mouse_flag 
-0x056b 002022 rtnbit0 mouse_low_voltage_flag 
-0x056c 002023 fetch 2 ,mem_ui_state_map 
-0x056d 002024 rtnbit1 ui_state_ble_adv 
-0x056e 002025 rtnbit1 ui_state_bt_discovery 
-0x056f 002026 fetch 1 ,mem_config_low_voltage_alarm_gpio 
-0x0570 002027 store 1 ,mem_mouse_struct_led_gpio 
-0x0571 002029 setarg g24_long_sleep_step2 
-0x0572 002030 store 3 ,mem_24g_enter_hibernate 
-0x0573 002032 fetch 1 ,mem_adc_low_volatage_led_timer_count 
-0x0574 002033 pincrease 1 
-0x0575 002034 store 1 ,mem_adc_low_volatage_led_timer_count 
-0x0576 002036 beq 5 ,p_mouse_multi_led_blink_off 
-0x0577 002037 sub pdata ,10 ,null 
-0x0578 002038 nbranch p_mouse_adc_low_volatage_led_timer_count_clean ,positive 
-0x0579 002039 rtn 
-:      002040 p_mouse_adc_low_volatage_led_timer_count_clean:
-0x057a 002041 jam 1 ,mem_adc_low_volatage_led_timer_count 
-0x057b 002043 branch p_mouse_multi_led_on 
-:      002045 p_low_power_no_data_off_led_time:
-0x057c 002046 fetch 1 ,mem_low_power_check_count 
-0x057d 002047 increase 1 ,pdata 
-0x057e 002048 store 1 ,mem_low_power_check_count 
-0x057f 002049 sub pdata ,low_voltage_led_count ,null 
-0x0580 002050 rtn positive 
-:      002051 p_low_power_no_data_off_led_time_nolimited:
-0x0581 002052 jam 0 ,mem_low_power_led_blink_flag 
-0x0582 002053 jam 0x96 ,mem_low_power_no_data_off_led_time 
-0x0583 002054 rtn 
-:      002055 p_low_power_nodata_off_led_time_check:
-0x0584 002056 arg mem_low_power_no_data_off_led_time ,regc 
-0x0585 002057 arg p_mouse_check_low_power_nodata_timeout ,regb 
-0x0586 002058 branch timer_single_step 
-:      002059 p_mouse_check_low_power_nodata_timeout:
-0x0587 002060 setarg g24_long_sleep_step3 
-0x0588 002061 store 3 ,mem_24g_enter_hibernate 
-0x0589 002062 jam 1 ,mem_low_power_led_blink_flag 
-0x058a 002063 branch p_mouse_adc_low_volatage_led_off 
-:      002065 p_mouse_seting_dpi:
-:      002066 p_mouse_seting_sensor_type:
-0x058b 002067 fetch 1 ,mem_config_sensor_type 
-0x058c 002068 beq p8009 ,p_mouse_seting_8009_dpi 
-0x058d 002069 beq p3212 ,p_mouse_seting_3212_dpi 
-0x058e 002070 beq ka8 ,p_mouse_seting_ka8_dpi 
-:      002081 p_mouse_seting_3065xy_dpi:
-0x058f 002085 fetch 1 ,mem_mouse_dpi 
-0x0590 002086 beq mouse_dpi_level1 ,p_mouse_3065xy_set_cpi1 
-0x0591 002087 beq mouse_dpi_level2 ,p_mouse_3065xy_set_cpi2 
-0x0592 002088 beq mouse_dpi_level3 ,p_mouse_3065xy_set_cpi3 
-0x0593 002089 beq mouse_dpi_level4 ,p_mouse_3065xy_set_cpi4 
-0x0594 002090 rtn 
-:      002093 p_mouse_dpi_store:
-0x0595 002094 store 1 ,mem_mouse_cpi_count 
-0x0596 002095 branch mouse_p3205_dpi + 3 
-:      002096 p_mouse_3065xy_set_cpi1:
-0x0597 002097 fetch 1 ,mem_320x_dpi_1 
-0x0598 002098 branch p_mouse_dpi_store 
-:      002099 p_mouse_3065xy_set_cpi2:
-0x0599 002100 fetch 1 ,mem_320x_dpi_1 
-0x059a 002101 branch p_mouse_dpi_store 
-:      002102 p_mouse_3065xy_set_cpi3:
-0x059b 002103 fetch 1 ,mem_320x_dpi_1 
-0x059c 002104 branch p_mouse_dpi_store 
-:      002105 p_mouse_3065xy_set_cpi4:
-0x059d 002106 fetch 1 ,mem_320x_dpi_4 
-0x059e 002107 branch p_mouse_dpi_store 
-:      002109 p_mouse_3065xy_dpi_recount:
-0x059f 002110 jam mouse_dpi_level3 ,mem_mouse_dpi 
-0x05a0 002111 rtn 
-:      002112 p_mouse_seting_8009_dpi:
-0x05a1 002115 fetch 1 ,mem_mouse_dpi 
-0x05a2 002116 beq mouse_dpi_level2 ,p_mouse_8009_set_cpi1 
-0x05a3 002117 beq mouse_dpi_level4 ,mouse_set_cpi2 
-0x05a4 002118 beq mouse_dpi_level3 ,mouse_set_cpi3 
-0x05a5 002119 branch mouse_set_cpi1 
-:      002120 p_mouse_8009_set_cpi1:
-0x05a6 002121 jam 0 ,mem_mouse_cpi_count 
-0x05a7 002122 branch mouse_p3205_dpi + 3 
-:      002124 p_mouse_seting_3212_dpi:
-0x05a8 002128 fetch 1 ,mem_mouse_dpi 
-0x05a9 002129 beq mouse_dpi_level1 ,mouse_set_p3212_cpi1 
-0x05aa 002130 beq mouse_dpi_level2 ,mouse_set_p3212_cpi2 
-0x05ab 002131 beq mouse_dpi_level4 ,mouse_set_p3212_cpi4 
-0x05ac 002132 branch mouse_set_p3212_cpi3 
-:      002134 p_mouse_seting_ka8_dpi:
-0x05ad 002137 fetch 1 ,mem_mouse_dpi 
-0x05ae 002138 beq mouse_dpi_level2 ,mouse_set_cpi2 
-0x05af 002139 beq mouse_dpi_level1 ,mouse_set_cpi1 
-0x05b0 002140 beq mouse_dpi_level4 ,p_mouse_ka8_set_cpi3 
-0x05b1 002141 branch mouse_set_cpi4 
-:      002142 p_mouse_ka8_set_cpi3:
-0x05b2 002143 setarg 5 
-0x05b3 002144 branch mouse_p3205_dpi 
-:      002146 p_mouse_3205_dpi_recount:
-0x05b4 002147 jam mouse_dpi_level3 ,mem_mouse_dpi 
-0x05b5 002148 rtn 
-:      002150 p_mouse_motion:
-0x05b6 002151 disable user 
-0x05b7 002152 setarg 0 
-0x05b8 002153 store 6 ,mem_mouse_x 
-0x05b9 002154 call mouse_cheak_sensor_data 
-0x05ba 002155 call mouse_zwheel 
-0x05bb 002156 call mouse_t_zwheel 
-0x05bc 002157 call p_mouse_key 
-0x05bd 002158 nbranch p_mouse_motion_nodata ,user 
-0x05be 002159 call p_low_power_no_data_off_led_time 
-0x05bf 002160 branch mouse_motion + 9 
-:      002162 p_mouse_motion_nodata:
-0x05c0 002163 jam 0 ,mem_low_power_check_count 
-0x05c1 002164 rtn 
-:      002166 p_mouse_key:
-0x05c2 002167 call p_mouse_check_key_gpio 
-0x05c3 002168 branch mouse_key + 1 
-:      002170 p_mouse_check_key_gpio:
-0x05c4 002171 arg 0 ,rega 
-0x05c5 002172 call p_mouse_check_lkey_gpio 
-0x05c6 002173 call p_mouse_check_rkey_gpio 
-0x05c7 002174 call p_mouse_check_mkey_gpio 
-0x05c8 002176 branch mouse_check_key_gpio_output 
-:      002183 p_mouse_check_lkey_gpio:
-0x05c9 002184 fetcht 1 ,mem_lbutton_gpio 
-0x05ca 002185 call p_gpio_set_input_pu 
-0x05cb 002186 fetcht 1 ,mem_lbutton_gpio 
-0x05cc 002187 call gpio_get_bit 
-0x05cd 002188 setflag true ,0 ,rega 
-0x05ce 002189 rtn 
-:      002190 p_mouse_check_rkey_gpio:
-0x05cf 002191 fetcht 1 ,mem_rbutton_gpio 
-0x05d0 002192 call p_gpio_set_input_pu 
-0x05d1 002193 fetcht 1 ,mem_rbutton_gpio 
-0x05d2 002194 call gpio_get_bit 
-0x05d3 002195 setflag true ,1 ,rega 
-0x05d4 002196 rtn 
-:      002197 p_mouse_check_mkey_gpio:
-0x05d5 002198 fetcht 1 ,mem_mbutton_gpio 
-0x05d6 002199 call p_gpio_set_input_pu 
-0x05d7 002200 fetcht 1 ,mem_mbutton_gpio 
-0x05d8 002201 call gpio_get_bit 
-0x05d9 002202 setflag true ,2 ,rega 
-0x05da 002203 rtn 
-:      002219 p_gpio_set_input_pd:
-0x05db 002220 set0 gpio_active_bit ,temp 
-0x05dc 002221 arg core_gpio_pu0 ,contw 
-0x05dd 002222 call gpio_set_bit 
-0x05de 002223 set1 gpio_active_bit ,temp 
-:      002224 p_gpio_set_input_pd4:
-0x05df 002225 arg core_gpio_pd0 ,contw 
-0x05e0 002226 call gpio_set_bit 
-0x05e1 002227 set0 gpio_active_bit ,temp 
-0x05e2 002228 arg core_gpio_oe0 ,contw 
-0x05e3 002229 branch gpio_set_bit 
-:      002231 p_gpio_set_input_pu:
-0x05e4 002232 set1 gpio_active_bit ,temp 
-:      002233 p_gpio_set_input_pu1:
-0x05e5 002234 arg core_gpio_pu0 ,contw 
-0x05e6 002235 call gpio_set_bit 
-0x05e7 002236 set0 gpio_active_bit ,temp 
-0x05e8 002237 branch p_gpio_set_input_pd4 
-:      002239 p_mouse_select_device_button_gpio_set_suspend:
-0x05e9 002240 fetcht 1 ,mem_config_select_device_button_gpio 
-:      002241 p_mouse_set_gpio_suspend2:
-0x05ea 002242 set0 gpio_active_bit ,temp 
-0x05eb 002243 branch p_gpio_set_input_pu1 
-:      002245 p_mouse_bb_event_discovery_btn:
-0x05ec 002246 call p_mouse_null_enter_hibernate_disable 
-0x05ed 002247 isolate1 mark_24g ,mark 
-0x05ee 002248 call p_g24_check_51cmd_stop_24g ,true 
-0x05ef 002249 branch mouse_bb_event_discovery_btn + 1 
-:      002251 p_le_addr_random_config:
-0x05f0 002252 jam zcode_81 ,mem_zcode_temp_param0 
-0x05f1 002253 branch p_zcode_entrance 
-:      002255 p_mouse_start_discovery:
-0x05f2 002256 jam zcode_50 ,mem_zcode_temp_param0 
-0x05f3 002257 branch p_zcode_entrance 
-:      002259 p_mouse_load_random_addr_increase_count:
-0x05f4 002260 call p_flash_release_deep_power_down 
-0x05f5 002261 arg 2 ,temp 
-0x05f6 002262 arg mem_random_addr_increase_count ,rega 
-0x05f7 002263 arg mouse_random_addr_count_eeprom_offset ,regb 
-0x05f8 002264 fetch 3 ,mem_flash_base 
-0x05f9 002265 iadd regb ,pdata 
-0x05fa 002266 branch spid_read_flash 
-:      002268 p_le_adv_data_update:
-0x05fb 002269 arg mem_le_adv_data + 11 ,contw 
-0x05fc 002270 arg 19 ,loopcnt 
-0x05fd 002271 call memcpy 
-0x05fe 002272 branch le_modified_name_adv 
-:      002274 p_mouse_stop_discovery:
-0x05ff 002275 setarg 0 
-0x0600 002276 store 2 ,mem_mouse_discovery_timer 
-0x0601 002277 call p_mouse_sensor_poweron 
-0x0602 002281 fetch 1 ,mem_device_option 
-0x0603 002282 isolate1 mode_3_mouse ,pdata 
-0x0604 002283 call mouse_stop_bt3_discovery ,true 
-0x0605 002286 branch p_mouse_discovey_led_blink_off 
-:      002289 p_le_slave_match:
-0x0606 002290 fetch 1 ,mem_le_md_count 
-0x0607 002291 pincrease 1 
-0x0608 002292 store 1 ,mem_le_md_count 
-0x0609 002293 beq le_md_max_count ,le_slave_cont 
-0x060a 002294 call le_acknowledge 
-0x060b 002295 call le_prepare_tx 
-0x060c 002296 call power_ctrl_start 
-0x060d 002297 branch le_slave_match + 7 
-:      002299 p_le_next_adv_channel:
-0x060e 002300 fetch 1 ,mem_le_ch_mapped 
-0x060f 002301 increase 1 ,pdata 
-0x0610 002302 store 1 ,mem_le_ch_mapped 
-0x0611 002303 rtnne 40 
-0x0612 002304 jam 37 ,mem_le_ch_mapped 
-0x0613 002305 rtn 
-:      002307 p_le_receive_skip:
-0x0614 002308 call save_rssi 
-0x0615 002309 call p_rssi_signal 
-0x0616 002310 branch le_receive_skip + 2 
-:      002312 p_le_update_param:
-0x0617 002313 jam zcode_40 ,mem_zcode_temp_param0 
-0x0618 002314 branch p_zcode_entrance 
-:      002316 p_le_update_channel_map:
-0x0619 002317 jam zcode_41 ,mem_zcode_temp_param0 
-0x061a 002318 branch p_zcode_entrance 
-:      002320 p_le_prepare_tx:
-0x061b 002321 fetch 1 ,mem_le_arq 
-0x061c 002322 bbit1 wak ,p_le_prepare_tx_wak 
-0x061d 002323 call power_ctrl_pac_succ_incrs 
-0x061e 002324 fetch 1 ,mem_empty_count 
-0x061f 002325 nbranch p_le_send_empyt ,blank 
-0x0620 002326 fetch 1 ,mem_le_state 
-0x0621 002327 bbit0 lestate_encryption ,p_le_tx_4 
-0x0622 002328 fetch 1 ,mem_le_rxbuf + 1 
-0x0623 002329 branch p_le_tx_4 ,blank 
-0x0624 002330 branch le_send_empty 
-:      002331 p_le_send_empyt:
-0x0625 002332 fetch 1 ,mem_empty_count 
-0x0626 002333 increase -1 ,pdata 
-0x0627 002334 store 1 ,mem_empty_count 
-0x0628 002335 branch le_send_empty 
-:      002336 p_le_tx_4:
-0x0629 002337 fetch 1 ,mem_le_pairing_state 
-0x062a 002338 bne flag_le_pairing_after_auth ,p_in_le_tx_4 
-0x062b 002339 jam 3 ,mem_empty_count 
-:      002340 p_in_le_tx_4:
-0x062c 002341 call le_fifo_check_nearly_full 
-0x062d 002342 call p_mouse_data_pull ,blank 
-0x062e 002343 branch le_prepare_tx + 4 
-:      002345 p_le_prepare_tx_wak:
-0x062f 002346 call p_le_check_tx_retransmit_setmd 
-0x0630 002347 branch p_le_power_ctrl_pac_succ_decrs 
-:      002349 p_le_check_tx_retransmit_setmd:
-0x0631 002350 fetch 1 ,mem_le_connect_status_flag 
-0x0632 002351 and pdata ,0x03 ,pdata 
-0x0633 002352 rtnne 0x03 
-0x0634 002353 fetch 1 ,mem_mouse_data_queue_num 
-0x0635 002354 rtn blank 
-0x0636 002355 fetch 1 ,mem_le_txlen 
-0x0637 002356 rtn blank 
-0x0638 002357 fetch 1 ,mem_le_txheader 
-0x0639 002358 set1 md ,pdata 
-0x063a 002359 store 1 ,mem_le_txheader 
-0x063b 002360 call le_set_md 
-0x063c 002361 rtn 
-:      002365 p_le_power_ctrl_pac_succ_decrs:
-0x063d 002366 branch power_ctrl_pac_succ_decrs 
-:      002368 p_mouse_le_reconn_write_enable_timer_reinit:
-0x063e 002369 fetch 1 ,mem_mouse_le_reconnect_flag 
-0x063f 002370 rtn blank 
-0x0640 002371 fetch 1 ,mem_le_connect_status_flag 
-0x0641 002372 and pdata ,0x03 ,pdata 
-0x0642 002373 rtneq 0x03 
-0x0643 002374 jam 1 ,mem_le_start_encrypt_timer 
-0x0644 002375 rtn 
-:      002377 p_le_parse:
-0x0645 002378 rtnmark1 mark_old_packet 
-0x0646 002379 call le_fifo_check_full 
-0x0647 002380 nrtn blank 
-0x0648 002381 fetch 1 ,mem_le_rxbuf 
-0x0649 002382 and pdata ,0x3 ,pdata 
-0x064a 002383 store 1 ,mem_le_packet_llid 
-0x064b 002384 ifetch 1 ,contr 
-0x064c 002385 and pdata ,0x1f ,pdata 
-0x064d 002386 store 1 ,mem_le_packet_size 
-0x064e 002387 rtn blank 
-0x064f 002388 copy contr ,pdata 
-0x0650 002389 store 2 ,mem_le_payload_ptr 
-0x0651 002390 fetch 1 ,mem_le_packet_llid 
-0x0652 002391 beq llid_le_ll ,p_le_parse_ll 
-0x0653 002392 branch le_parse_l2cap 
-:      002393 p_le_parse_ll:
-0x0654 002394 fetch 1 ,mem_le_rxbuf + 2 
-0x0655 002395 beq ll_channel_map_req ,p_le_parse_channel_map_req 
-0x0656 002396 branch le_parse_ll + 1 
-:      002397 p_le_parse_channel_map_req:
-0x0657 002398 ifetch 5 ,contr 
-0x0658 002399 store 5 ,mem_le_new_map 
-0x0659 002400 ifetch 2 ,contr 
-0x065a 002401 store 2 ,mem_le_instant 
-0x065b 002402 branch le_parse_channel_map_req + 7 
-:      002405 p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset:
-0x065c 002406 fetch 1 ,mem_le_new_connslavelatency 
-0x065d 002407 store 1 ,mem_lpm_mult 
-0x065e 002408 store 1 ,mem_lpm_mult_init 
-0x065f 002409 rtn 
-:      002410 p_le_parse_l2cap:
-0x0660 002411 ifetch 2 ,contr 
-0x0661 002412 beq le_l2cap_cid_att ,p_le_parse_att 
-0x0662 002413 beq le_l2cap_cid_smp ,p_le_parse_smp 
-0x0663 002414 branch le_parse_l2cap + 11 
-:      002415 p_le_parse_att:
-0x0664 002416 call store_contr 
-0x0665 002417 call p_mouse_le_reconn_write_enable_timer_reinit 
-0x0666 002418 call get_contr 
-0x0667 002419 ifetch 3 ,contr 
-0x0668 002420 store 3 ,mem_le_att_opcode 
-0x0669 002421 beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
-0x066a 002422 rshift8 pdata ,temp 
-0x066b 002423 sub temp ,0x24 ,null 
-0x066c 002424 branch p_le_parse_att1 ,positive 
-0x066d 002425 arg mem_mouse_le_uuid_sup ,temp 
-0x066e 002426 storet 2 ,mem_ui_le_uuid_table 
-0x066f 002427 call le_parse_att + 2 
-0x0670 002428 setarg 0x8e7a 
-0x0671 002429 store 2 ,mem_ui_le_uuid_table 
-0x0672 002430 rtn 
-:      002432 p_le_parse_att_read_by_group_type_request:
-0x0673 002433 call le_parse_att_read_by_group_type_request 
-0x0674 002434 call le_fifo_get_last_tx_ptr 
-0x0675 002435 increase 7 ,contr 
-0x0676 002436 ifetch 1 ,contr 
-0x0677 002437 rtnne attop_read_by_group_type_response 
-0x0678 002438 increase 5 ,contr 
-0x0679 002439 ifetch 2 ,contr 
-0x067a 002440 arg uuid_service_hids ,temp 
-0x067b 002441 isub temp ,null 
-0x067c 002442 nrtn zero 
-0x067d 002443 increase -4 ,contr 
-0x067e 002444 setarg 0x2b 
-0x067f 002445 istore 2 ,contr 
-0x0680 002446 rtn 
-:      002448 p_le_parse_att1:
-0x0681 002449 beq attop_read_request ,p_le_parse_att_read_request 
-0x0682 002450 branch le_parse_att + 2 
-:      002451 p_le_parse_att_read_request:
-0x0683 002452 fetcht 2 ,mem_le_att_handle 
-0x0684 002453 fetch 1 ,mem_le_configuration 
-0x0685 002454 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
-:      002455 p_le_send_att_read_response:
-0x0686 002464 fetch 2 ,mem_le_att_handle 
-0x0687 002465 beq 0x13 ,le_send_att_error_response_notfound 
-0x0688 002467 fetcht 2 ,mem_le_att_handle 
-0x0689 002468 branch le_send_att_read_response 
-:      002482 p_le_send_att_read_response_check_auth:
-0x068a 002483 fetch 2 ,mem_le_pairing_handle 
-0x068b 002484 isub temp ,null 
-0x068c 002485 nbranch p_le_send_att_read_response ,zero 
-0x068d 002486 call le_check_encrypt_state 
-0x068e 002487 nbranch p_le_send_att_read_response ,user 
-0x068f 002488 jam att_err_insufficient_authentication ,mem_le_err_code 
-0x0690 002489 branch le_send_att_error_response 
-:      002492 p_le_parse_smp:
-0x0691 002493 ifetch 1 ,contr 
-0x0692 002494 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
-0x0693 002495 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
-0x0694 002496 branch le_parse_smp + 2 
-:      002498 p_le_parse_smp_pairing_request:
-0x0695 002499 jam 1 ,mem_le_send_security_request_flag 
-0x0696 002500 branch le_parse_smp_pairing_request 
-:      002502 p_le_parse_smp_pairing_failed:
-0x0697 002503 jam zcode_82 ,mem_zcode_temp_param0 
-0x0698 002504 branch p_zcode_entrance 
-:      002506 p_le_adv_not_match:
-0x0699 002507 fetch 1 ,mem_le_ch_mapped 
-0x069a 002508 bne 39 ,le_adv_loop 
-0x069b 002509 call p_le_adv_random_delay 
-0x069c 002510 arg le_adv_interval_timer ,queue 
-0x069d 002511 fetch 2 ,mem_le_adv_interval 
-0x069e 002512 branch timer_init 
-:      002513 p_le_adv_random_delay:
-0x069f 002514 random pdata 
-0x06a0 002515 arg 0x1ff ,temp 
-0x06a1 002516 iand temp ,pdata 
-0x06a2 002517 add pdata ,250 ,pdata 
-0x06a3 002518 branch delay 
-:      002520 p_le_lpm_setmult:
-0x06a4 002521 disable wake 
-0x06a5 002522 branch p_le_lpm_set_mult_attempt ,attempt 
-0x06a6 002523 nbranch le_lpm_lost ,match 
-:      002524 p_le_lpm_set_mult_attempt:
-0x06a7 002525 call lpm_match 
-0x06a8 002526 fetch 2 ,mem_rx_window_sniff 
-0x06a9 002527 store 2 ,mem_le_receive_window 
-0x06aa 002528 fetch 1 ,mem_le_connect_status_flag 
-0x06ab 002529 compare 3 ,pdata ,3 
-0x06ac 002530 nbranch lpm_mult_short ,true 
-0x06ad 002531 branch le_lpm_set_mult_attempt + 3 
-:      002533 p_le_mouse_bb_event_connect_complete:
-0x06ae 002534 fetch 1 ,mem_mouse_le_reconnect_flag 
-0x06af 002535 nrtn blank 
-0x06b0 002536 fetch 1 ,mem_le_att_handle 
-0x06b1 002537 sub pdata ,26 ,pdata 
-0x06b2 002538 nrtn zero 
-0x06b3 002539 branch mouse_le_write_enable 
-:      002541 p_twspi_reset:
-0x06b4 002542 hfetch 1 ,core_gpio_out3 
-0x06b5 002543 and_into 0xfd ,pdata 
-0x06b6 002544 hstore 1 ,core_gpio_out3 
-0x06b7 002545 hfetcht 1 ,core_gpio_oe3 
-0x06b8 002546 or_into 0x2 ,temp 
-0x06b9 002547 hstoret 1 ,core_gpio_oe3 
-0x06ba 002548 call twspi_disable 
-0x06bb 002549 and_into 0xfd ,temp 
-0x06bc 002550 nop 13 
-0x06bd 002551 call p_twspi_enable 
-0x06be 002552 hstoret 1 ,core_gpio_oe3 
-0x06bf 002553 rtn 
-:      002555 p_spid_init:
-0x06c0 002556 call spid_init_common 
-:      002557 p_twspi_enable:
-0x06c1 002558 hfetch 1 ,core_gpio_sel1 
-0x06c2 002559 set1 0 ,pdata 
-0x06c3 002560 set0 1 ,pdata 
-0x06c4 002561 set0 3 ,pdata 
-0x06c5 002562 hstore 1 ,core_gpio_sel1 
-0x06c6 002563 rtn 
-:      002566 p_page_wait_fhs_reply_ok:
-0x06c7 002567 jam zcode_00 ,mem_zcode_temp_param0 
-0x06c8 002568 branch p_zcode_entrance 
-:      002570 p_role_switch_master:
-0x06c9 002571 call role_switch_check 
-0x06ca 002572 nrtn user 
-:      002573 p_wait_role_switch_anchor:
-0x06cb 002574 disable user 
-0x06cc 002575 jam param_newconnto ,mem_newconnto_counter 
-0x06cd 002576 set0 mark_fhs_already_good ,mark 
-0x06ce 002577 set0 mark_role_switch_receive_fhs ,mark 
-:      002578 p_roles_waitfhs_loop:
-0x06cf 002579 call rf_setup_time_master_slot 
-0x06d0 002580 call master_recv_packet 
-0x06d1 002581 bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
-0x06d2 002582 call new_conn_timeout 
-0x06d3 002583 nbranch p_roles_waitfhs_loop ,blank 
-0x06d4 002584 bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
-0x06d5 002585 branch role_switch_fail_master 
-:      002587 p_roles_replyto_fhs:
-0x06d6 002588 call rf_setup_time_slave_slot 
-0x06d7 002589 arg type_id ,type 
-0x06d8 002590 call master_send_packet 
-0x06d9 002591 set1 mark_role_switch_receive_fhs ,mark 
-0x06da 002592 set0 mark_fhs_already_good ,mark 
-0x06db 002593 fetch 1 ,mem_amaddr 
-0x06dc 002594 iforce am_addr 
-0x06dd 002595 jam 2 ,mem_newconnto_counter 
-0x06de 002596 branch p_roles_waitfhs_loop 
-:      002598 p_roles_replyto_fhs1:
-0x06df 002599 fetch 4 ,mem_clke_bt 
-0x06e0 002600 pincrease 8 
-0x06e1 002601 store 4 ,mem_clke_bt 
-0x06e2 002602 branch roles_replyto_fhs + 4 
-:      002604 p_process_dmh:
-0x06e3 002605 bmark1 mark_first_packet ,end_of_packet 
-0x06e4 002606 branch process_dmh + 1 
-:      002608 p_quit_connection_cont:
-0x06e5 002609 call app_disconn_reason_collect_bt 
-0x06e6 002610 call sniff_exit 
-0x06e7 002611 jam bt_evt_bb_disconnected ,mem_fifo_temp 
-0x06e8 002612 call ui_ipc_send_event 
-0x06e9 002613 call init_lmp_work 
-0x06ea 002614 call l2cap_init_work 
-0x06eb 002615 branch quit_connection_cont + 8 
-:      002617 p_prepare_tx:
-0x06ec 002618 fetch 1 ,mem_state 
-0x06ed 002619 isolate1 state_inconn ,pdata 
-0x06ee 002620 call p_bt_power_ctrl ,true 
-0x06ef 002621 branch prepare_tx + 1 
-:      002622 p_bt_power_ctrl:
-0x06f0 002623 fetch 1 ,mem_arq 
-0x06f1 002624 isolate1 wack ,pdata 
-0x06f2 002625 call power_ctrl_pac_succ_decrs ,true 
-0x06f3 002626 ncall power_ctrl_pac_succ_incrs ,true 
-0x06f4 002627 branch power_ctrl_start 
-:      002629 p_slave_conn_recv_packet:
-0x06f5 002630 call slave_receive_master_slot 
-0x06f6 002631 nbranch shutdown_radio ,sync 
-0x06f7 002632 call save_rssi 
-0x06f8 002633 call p_rssi_signal 
-0x06f9 002634 branch slave_conn_recv_packet + 4 
-:      002636 p_lpm_dispatch:
-0x06fa 002637 rtnmark1 mark_24g 
-0x06fb 002638 call lpo_calibration 
-0x06fc 002639 fetch 3 ,mem_clks_per_lpo 
-0x06fd 002640 rtn blank 
-0x06fe 002641 fetch 1 ,mem_lpm_mode 
-0x06ff 002642 rtn blank 
-0x0700 002643 fetch 1 ,mem_ssp_enable 
-0x0701 002644 branch p_lpm_dispatch_next ,blank 
-0x0702 002645 fetch 1 ,mem_sp_local_key_invalid 
-0x0703 002646 rtn blank 
-:      002647 p_lpm_dispatch_next:
-0x0704 002648 fetch 1 ,mem_le_sc_calc 
-0x0705 002649 nrtn blank 
-0x0706 002650 call lpm_check_wake_lock 
-0x0707 002651 nrtn blank 
-0x0708 002652 fetch 1 ,mem_context 
-0x0709 002653 compare 3 ,pdata ,0x7 
-0x070a 002654 nbranch lpm_dispatch_unconn ,true 
-0x070b 002655 fetch 2 ,mem_context + coffset_tsniff 
-0x070c 002656 arg 0xffff ,temp 
-0x070d 002657 isub temp ,null 
-0x070e 002658 rtn zero 
-0x070f 002659 branch lpm_dispatch_next + 9 
-:      002661 p_lpm_set_mult:
-0x0710 002662 disable wake 
-0x0711 002663 fetch 1 ,mem_state 
-0x0712 002664 rtnbit0 state_insniff 
-0x0713 002665 nbranch lpm_not_match ,match 
-0x0714 002666 call lpm_match 
-0x0715 002667 fetch 2 ,mem_rx_window_sniff 
-0x0716 002668 store 2 ,mem_rx_window 
-0x0717 002669 fetch 1 ,mem_arq 
-0x0718 002670 bbit1 wack ,lpm_mult_short 
-0x0719 002671 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
-0x071a 002672 call l2cap_malloc_is_fifo_empty 
-0x071b 002673 nbranch lpm_mult_short ,blank 
-0x071c 002674 call p_lpm_set_attemp_timeout ,blank 
-0x071d 002675 branch lpm_set_mult + 13 
-:      002676 p_lpm_set_attemp_timeout:
-0x071e 002677 jam 1 ,mem_current_sniff_attempt 
-0x071f 002678 jam 0 ,mem_current_sniff_timeout 
-0x0720 002679 rtn 
-:      002681 p_mouse_bb_disconnected:
-0x0721 002682 jam zcode_10 ,mem_zcode_temp_param0 
-0x0722 002683 branch p_zcode_entrance 
-:      002685 p_hid_rx_process:
-0x0723 002686 jam zcode_11 ,mem_zcode_temp_param0 
-0x0724 002687 branch p_zcode_entrance 
-:      002689 p_parse_lmp_accepted:
-0x0725 002690 fetch 1 ,mem_rxbuf + 1 
-0x0726 002691 store 1 ,mem_lmi_accepted_opcode 
-0x0727 002692 beq lmp_switch_req ,p_parse_lmp_accepted_switch 
-0x0728 002693 branch parse_lmp_accepted + 3 
-:      002694 p_parse_lmp_accepted_switch:
-0x0729 002695 call parse_lmp_accepted_switch 
-0x072a 002696 jam 1 ,mem_bt_rcvd_switch_req_accept 
-0x072b 002697 fetch 1 ,mem_bt_send_lmp_setup_complete 
-0x072c 002698 rtn blank 
-0x072d 002699 jam 2 ,mem_bt_send_lmp_setup_complete 
-0x072e 002700 rtn 
-:      002702 p_send_lmp:
-0x072f 002703 jam zcode_20 ,mem_zcode_temp_param0 
-0x0730 002704 branch p_zcode_entrance 
-:      002706 p_process_conn_sm:
-0x0731 002707 call lmo_fifo_check 
-0x0732 002708 nrtn blank 
-:      002709 p_process_conn_sm_continue:
-0x0733 002710 fetch 1 ,mem_conn_sm 
-0x0734 002711 rtn blank 
-0x0735 002712 beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
-0x0736 002713 beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
-0x0737 002714 branch process_conn_sm_continue + 2 
-:      002716 p_host_creat_conn_wait_switch:
-0x0738 002717 fetch 1 ,mem_switch_flag 
-0x0739 002718 rtneq switch_flag_init 
-0x073a 002719 beq switch_flag_accept ,p_host_create_conn_switch_accept 
-0x073b 002720 branch host_creat_conn_wait_switch + 3 
-:      002721 p_host_create_conn_switch_accept:
-0x073c 002722 rtn master 
-:      002723 p_host_create_conn_auth_pair:
-0x073d 002725 fetch 1 ,mem_connection_options 
-0x073e 002726 bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
-0x073f 002727 branch host_create_conn_auth_pair + 1 
-:      002728 p_host_create_conn_auth_pair_true:
-0x0740 002729 fetch 1 ,mem_bt_send_lmp_setup_complete 
-0x0741 002730 beq 1 ,host_create_conn_auth_pair_true 
-0x0742 002732 fetch 1 ,mem_link_key_exists 
-0x0743 002733 branch host_create_conn_auth_pair_nokey ,blank 
-0x0744 002734 fetch 1 ,mem_lmp_conn_state 
-0x0745 002735 rtnbit0 sent_setup_complete 
-0x0746 002736 rtnbit0 received_setup_complete 
-0x0747 002737 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
-0x0748 002738 rtn blank 
-0x0749 002739 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
-0x074a 002740 fetch 4 ,mem_aurand_send_delay_time 
-0x074b 002741 arg 20 ,temp 
-0x074c 002742 iadd temp ,temp 
-0x074d 002743 copy clkn_bt ,pdata 
-0x074e 002744 isub temp ,null 
-0x074f 002745 nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
-0x0750 002746 branch host_create_conn_auth 
-:      002748 p_bt_send_max_slot_req_accept_after_switch_wait:
-0x0751 002749 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
-0x0752 002750 rtn 
-:      002752 p_host_create_conn_send_conn_req:
-0x0753 002753 jam 20 ,mem_mouse_send_switch_req_timer 
-0x0754 002754 branch host_create_conn_send_conn_req 
-:      002760 p_check_51cmd_once_continue:
-0x0755 002761 call lmo_fifo_check 
-0x0756 002762 nbranch check_51cmd_restore ,blank 
-0x0757 002763 fetch 1 ,mem_fifo_temp 
-0x0758 002764 bmark0 mark_context ,check_51cmd_check_idle 
-0x0759 002765 beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
-0x075a 002766 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
-0x075b 002767 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
-0x075c 002768 branch check_51cmd_once_continue + 2 
-:      002770 p_flash_store_le_reconn_info:
-0x075d 002771 jam rec_4_mode ,mem_record_bt_mode 
-0x075e 002772 fetch 6 ,mem_le_plap 
-0x075f 002773 branch p_flash_store_reconn_info 
-:      002774 p_flash_store_bd_reconn_info:
-0x0760 002775 jam rec_3_mode ,mem_record_bt_mode 
-0x0761 002776 fetch 6 ,mem_plap 
-:      002777 p_flash_store_reconn_info:
-0x0762 002778 store 6 ,mem_temp_lap 
-:      002779 p_mouse_store_remote_bdaddr:
-0x0763 002780 fetch mouse_flag_len ,mem_mouse_flag 
-0x0764 002781 rtnbit0 mouse_store_eeprom_flag 
-0x0765 002782 arg mouse_store_eeprom_flag ,queue 
-0x0766 002783 call mouse_disable_function_flag 
-0x0767 002784 call mouse_check_device_addr 
-:      002785 p_mouse_unplug_clean_bdaddr:
-0x0768 002786 call mouse_before_store_reconn_info 
-0x0769 002787 branch p_mouse_store_flash_device_info 
-:      002789 p_check_51cmd_ble_update_connect_param:
-0x076a 002790 call le_fifo_check_full 
-0x076b 002791 nrtn blank 
-0x076c 002792 branch le_l2cap_tx_update_req 
-:      002794 power_ctrl_pac_succ_cnt_init:
-0x076d 002795 jam 1 ,mem_power_ctrl_level 
-0x076e 002796 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-0x076f 002797 rtn 
-:      002798 power_ctrl_pac_succ_incrs:
-0x0770 002799 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0771 002800 increase 1 ,pdata 
-0x0772 002801 store 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0773 002802 rtn 
-:      002803 power_ctrl_pac_succ_decrs:
-0x0774 002804 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0775 002805 sub pdata ,2 ,null 
-0x0776 002806 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
-0x0777 002807 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0778 002808 rtneq 0 
-0x0779 002809 increase -1 ,pdata 
-0x077a 002810 store 1 ,mem_power_ctrl_pac_succ_cnt 
-0x077b 002811 rtn 
-:      002812 power_ctrl_pac_succ_cnt_reinit:
-0x077c 002813 jam 3 ,mem_power_ctrl_pac_succ_cnt 
-0x077d 002814 rtn 
-:      002816 power_ctrl_start:
-0x077e 002817 fetch 2 ,mem_ui_state_map 
-0x077f 002818 rtnbit1 ui_state_ble_adv 
-0x0780 002819 rtnbit1 ui_state_bt_reconnect 
-0x0781 002820 rtnbit1 ui_state_bt_discovery 
-0x0782 002822 arg mem_rssi_signal_buf ,rega 
-0x0783 002823 call p_rssi_average 
-0x0784 002824 storet 1 ,mem_rssi_avg_received 
-0x0785 002826 setarg rssi_dis_max_24g 
-0x0786 002827 bmark1 mark_24g ,power_ctrl_start_next 
-0x0787 002828 setarg rssi_dis_max_ble 
-:      002829 power_ctrl_start_next:
-0x0788 002830 isub temp ,null 
-0x0789 002831 nbranch power_ctrl_txpower_incrs_force ,positive 
-0x078a 002833 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x078b 002834 sub pdata ,2 ,null 
-0x078c 002835 nbranch power_ctrl_txpower_decrs_check ,positive 
-0x078d 002836 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x078e 002837 beq 0 ,power_ctrl_txpower_incrs 
-0x078f 002838 rtn 
-:      002840 power_ctrl_txpower_decrs_check:
-0x0790 002841 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0x0791 002842 rtnne 32 
-0x0792 002843 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-:      002844 power_ctrl_txpower_decrs:
-0x0793 002845 fetcht 1 ,mem_rssi_avg_received 
-0x0794 002846 setarg rssi_dis_min_24g 
-0x0795 002847 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
-0x0796 002848 setarg rssi_dis_min_ble 
-:      002849 power_ctrl_txpower_decrs_next:
-0x0797 002850 isub temp ,null 
-0x0798 002851 nrtn positive 
-0x0799 002852 fetch 1 ,mem_power_ctrl_level 
-0x079a 002853 beq 0 ,power_ctrl_decrs_level0 
-0x079b 002854 increase -1 ,pdata 
-0x079c 002855 store 1 ,mem_power_ctrl_level 
-0x079d 002856 beq 0 ,power_ctrl_decrs_level0 
-:      002857 power_ctrl_decrs_level1:
-:      002858 power_ctrl_incrs_level1:
-0x079e 002859 jam tx_power_0db ,mem_tx_power 
-0x079f 002860 rtn 
-:      002862 power_ctrl_txpower_incrs_force:
-0x07a0 002863 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-:      002864 power_ctrl_txpower_incrs:
-0x07a1 002865 fetch 1 ,mem_power_ctrl_level 
-0x07a2 002866 beq 2 ,power_ctrl_incrs_level2 
-0x07a3 002867 increase 1 ,pdata 
-0x07a4 002868 store 1 ,mem_power_ctrl_level 
-0x07a5 002869 beq 1 ,power_ctrl_incrs_level1 
-:      002870 power_ctrl_incrs_level2:
-0x07a6 002871 jam tx_power_5db ,mem_tx_power 
-0x07a7 002872 rtn 
-:      002874 power_ctrl_decrs_level0:
-0x07a8 002875 jam tx_power_f5db ,mem_tx_power 
-0x07a9 002876 rtn 
-:      002879 p_set_freq_tx:
-0x07aa 002880 storet 1 ,mem_last_freq 
-0x07ab 002881 add temp ,0 ,rega 
-0x07ac 002882 call rf_write_freq 
-0x07ad 002883 setarg param_pll_setup 
-0x07ae 002884 call sleep 
-:      002885 p_rf_tx_enable:
-0x07af 002886 jam 0x1 ,rfen_adc 
-0x07b0 002887 jam 0x3c ,rfen_rx 
-0x07b1 002888 jam 0xe0 ,rfen_tx 
-0x07b2 002889 nop 10 
-0x07b3 002890 jam 0x01 ,rfen_mdm 
-0x07b4 002891 jam 0x3d ,rfen_mdm 
-0x07b5 002892 nop 10 
-0x07b6 002893 jam 0xb7 ,rfen_sn 
-0x07b7 002894 nop 10 
-0x07b8 002895 jam 0x7d ,rfen_mdm 
-0x07b9 002896 fetch 1 ,mem_tx_power 
-0x07ba 002899 beq tx_power_5db ,p_set_tx_power_5db 
-0x07bb 002901 beq tx_power_f5db ,p_set_tx_power_f5db 
-0x07bc 002902 beq tx_power_pair ,p_set_tx_power_pair 
-:      002904 p_set_tx_power_0db:
-0x07bd 002905 call p_rx_low_sens 
-0x07be 002907 jam 0xd0 ,0x8955 
-0x07bf 002908 jam 0xe0 ,0x8956 
-0x07c0 002910 jam 0x6c ,0x8958 
-0x07c1 002912 branch set_tx_power_0db 
-:      002924 p_set_tx_power_5db:
-0x07c2 002925 call p_rx_high_sens 
-0x07c3 002927 jam 0xd0 ,0x8955 
-0x07c4 002928 jam 0xe0 ,0x8956 
-0x07c5 002930 jam 0x3c ,0x8958 
-0x07c6 002932 branch set_tx_power_5db 
-:      002944 p_set_tx_power_f5db:
-0x07c7 002945 call p_rx_low_sens 
-0x07c8 002947 jam 0xd0 ,0x8955 
-0x07c9 002948 jam 0xc0 ,0x8956 
-0x07ca 002950 jam 0x6c ,0x8958 
-0x07cb 002952 branch set_tx_power_f5db 
-:      002954 p_rx_low_sens:
-0x07cc 002955 jam 0x5b ,0x894c 
-0x07cd 002956 jam 0x96 ,0x894d 
-0x07ce 002957 jam 0x2c ,0x894e 
-0x07cf 002958 jam 0x46 ,0x894f 
-0x07d0 002959 rtn 
-:      002961 p_rx_high_sens:
-0x07d1 002962 jam 0xfb ,0x894c 
-0x07d2 002963 jam 0xef ,0x894d 
-0x07d3 002964 jam 0xec ,0x894e 
-0x07d4 002965 jam 0x5e ,0x894f 
-0x07d5 002966 rtn 
-:      002968 p_set_tx_power_pair:
-0x07d6 002970 jam 0xc2 ,0x8956 
-0x07d7 002971 jam 0xd0 ,0x8955 
-0x07d8 002972 rtn 
-:      002974 p_shutdown_radio:
-0x07d9 002975 force 8 ,radio_ctrl 
-0x07da 002976 branch shutdown_radio + 1 
-:      002980 p_zcode_entrance:
-0x07db 002981 fetcht 1 ,mem_zcode_temp_param0 
-0x07dc 002982 rshift4 temp ,temp 
-0x07dd 002983 fetch 1 ,mem_zcode_current_number 
-0x07de 002984 isub temp ,null 
-0x07df 002985 branch p_zcode_run ,zero 
-0x07e0 002986 storet 1 ,mem_zcode_current_number 
-0x07e1 002987 increase 1 ,temp 
-0x07e2 002988 setarg zcode_buff_size 
-0x07e3 002989 imul32 temp ,temp 
-0x07e4 002990 fetch 3 ,mem_xip_flash_offset 
-0x07e5 002991 isub temp ,pdata 
-0x07e6 002993 fetcht 3 ,mem_flash_start_addr 
-0x07e7 002994 iadd temp ,pdata 
-0x07e8 002995 increase -5 ,pdata 
-0x07e9 002996 store 3 ,mem_flash_address 
-0x07ea 002998 call p_flash_release_deep_power_down 
-:      002999 p_zcode_read_loop:
-0x07eb 003000 fetch 3 ,mem_flash_address 
-0x07ec 003001 arg zcode_buff_size ,temp 
-0x07ed 003002 arg mem_zcode_buff ,rega 
-0x07ee 003003 call spid_read_flash 
-0x07ef 003004 fetch 4 ,mem_zcode_buff 
-0x07f0 003005 branch p_zcode_read_loop ,blank 
-0x07f1 003006 call p_mouse_spi_init 
-0x07f2 003008 setarg mem_zcode_buff 
-0x07f3 003009 store 2 ,mem_patch_ptr 
-0x07f4 003010 jam zcode_code_size ,mem_patch_len 
-0x07f5 003011 call load_ucode 
-0x07f6 003012 setarg 0 
-0x07f7 003013 store 4 ,mem_patch_ptr 
-:      003014 p_zcode_run:
-0x07f8 003015 fetch 1 ,mem_zcode_temp_param0 
-0x07f9 003016 branch p_zcode 
+0x0142 000482 nbranch p_g24_rf_hop_attemp_again ,blank 
+0x0143 000483 jam 2 ,mem_24g_max_retry 
+:      000484 p_g24_ch:
+0x0144 000485 fetcht 1 ,mem_24g_current_ch_number 
+0x0145 000486 fetch 1 ,mem_24g_addr 
+0x0146 000487 and_into 0x03 ,pdata 
+0x0147 000488 mul32 pdata ,4 ,rega 
+0x0148 000489 setarg mem_24g_ch_map1 
+0x0149 000490 iadd rega ,pdata 
+0x014a 000491 iadd temp ,contr 
+0x014b 000492 ifetch 1 ,contr 
+0x014c 000493 store 1 ,mem_24g_ch 
+0x014d 000494 increase 1 ,temp 
+0x014e 000495 and_into 3 ,temp 
+0x014f 000496 storet 1 ,mem_24g_current_ch_number 
+0x0150 000497 rtn 
+:      000499 p_g24_txdata_prep:
+0x0151 000500 fetch 1 ,mem_24g_pairing_sm 
+0x0152 000501 bne state_24g_pairing_success ,p_g24_pairing_sm 
+:      000502 p_g24_txdata_prep_packeage_data:
+0x0153 000503 call p_g24_package_data 
+:      000504 p_g24_txdata_enable_tx:
+0x0154 000505 call p_g24_transmit_prep 
+0x0155 000506 jam ensure_on_24g ,mem_24g_ensure 
+0x0156 000507 rtn 
+:      000509 p_g24_package_data:
+0x0157 000510 fetch 2 ,mem_cb_24g_data 
+0x0158 000511 call callback_func 
+0x0159 000512 branch p_g24_accumulate_mouse_data ,user 
+0x015a 000513 fetch 7 ,mem_24g_txbuf + 1 
+0x015b 000514 rtn blank 
+0x015c 000515 branch enable_user 
+:      000516 p_g24_accumulate_mouse_data:
+0x015d 000517 call p_mouse_24g_no_data_timer_init 
+0x015e 000519 jam 0 ,mem_24g_abort_pac 
+0x015f 000520 add rega ,1 ,pdata 
+0x0160 000521 store 1 ,mem_24g_datalen 
+0x0161 000522 call p_g24_transmit_rf_ctrl_clear 
+0x0162 000523 store 1 ,mem_24g_txbuf 
+0x0163 000524 ifetcht 1 ,contw 
+0x0164 000525 ifetch 1 ,regb 
+0x0165 000526 ior temp ,pdata 
+0x0166 000527 istore 1 ,contw 
+0x0167 000528 increase 1 ,regb 
+0x0168 000529 ifetch 4 ,regb 
+0x0169 000530 istore 4 ,contw 
+0x016a 000531 increase 4 ,regb 
+0x016b 000532 arg mem_24g_txbuf + 6 ,contw 
+0x016c 000533 arg 2 ,loopcnt 
+:      000534 p_g24_accumulation_loop:
+0x016d 000535 ifetch 1 ,regb 
+0x016e 000536 ifetcht 1 ,contw 
+0x016f 000537 iadd temp ,pdata 
+0x0170 000538 istore 1 ,contw 
+0x0171 000539 increase 1 ,regb 
+0x0172 000540 loop p_g24_accumulation_loop 
+0x0173 000541 rtn 
+:      000543 p_g24_transmit_packet:
+0x0174 000544 jam 0 ,mem_24g_retry 
+:      000545 p_g24_transmit_loop:
+0x0175 000546 arg param_rx_setup ,timeup 
+0x0176 000547 until clkn_rt ,meet 
+0x0177 000548 call p_g24_transmit_receive_ack 
+0x0178 000549 fetch 1 ,mem_24g_no_ack 
+0x0179 000550 rtneq no_ack_24g 
+0x017a 000551 nbranch p_g24_retransmit ,sync 
+0x017b 000552 nbranch p_g24_retransmit ,user3 
+0x017c 000553 call p_g24_txbuf_clear 
+0x017d 000554 call p_g24_ackpayload_parse 
+0x017e 000555 call power_ctrl_pac_succ_incrs 
+:      000556 p_g24_transmit_next_packet:
+0x017f 000557 fetch 1 ,mem_24g_pid 
+0x0180 000558 increase 1 ,pdata 
+0x0181 000559 store 1 ,mem_24g_pid 
+0x0182 000560 fetch 1 ,mem_24g_pairing_sm 
+0x0183 000561 bne state_24g_pairing_success ,p_g24_paring_mode_start 
+0x0184 000562 call p_g24_transmit_succ_rf_config 
+:      000563 p_g24_transmit_abandon:
+0x0185 000564 setarg 0 
+0x0186 000565 store 2 ,mem_24g_txfail_cnt 
+0x0187 000566 store 1 ,mem_24g_get_ack_fail 
+0x0188 000567 store 1 ,mem_24g_hop_pac_retry 
+0x0189 000568 jam ensure_off_24g ,mem_24g_ensure 
+0x018a 000569 rtn 
+:      000571 p_g24_txbuf_clear:
+0x018b 000572 arg 4 ,loopcnt 
+0x018c 000573 arg mem_24g_txbuf ,contw 
+0x018d 000574 branch memset0 
+:      000576 p_g24_paring_mode_start:
+0x018e 000577 call power_ctrl_pac_succ_cnt_init 
+0x018f 000578 branch p_g24_paring_mode 
+:      000580 p_g24_transmit_receive_ack:
+0x0190 000581 disable user3 
+0x0191 000582 call p_g24_transmit 
+0x0192 000587 force 0 ,radio_ctrl 
+0x0193 000588 fetch 4 ,mem_24g_addr 
+0x0194 000589 iforce access 
+0x0195 000590 fetcht 1 ,mem_last_freq 
+0x0196 000591 call set_freq_rx 
+0x0197 000592 call rf_rx_enable 
+0x0198 000593 call p_g24_receive_rxon 
+0x0199 000594 call p_g24_end_of_packet ,user3 
+0x019a 000595 rtn 
+:      000600 p_g24_retransmit:
+0x019b 000601 fetch 1 ,mem_24g_get_ack_fail 
+0x019c 000602 increase 1 ,pdata 
+0x019d 000603 store 1 ,mem_24g_get_ack_fail 
+0x019e 000604 fetch 1 ,mem_24g_pairing_sm 
+0x019f 000605 bne state_24g_pairing_success ,p_g24_tx_paring_retry 
+0x01a0 000606 fetcht 1 ,mem_24g_retry 
+0x01a1 000607 increase 1 ,temp 
+0x01a2 000608 storet 1 ,mem_24g_retry 
+0x01a3 000609 fetch 1 ,mem_24g_max_retry 
+0x01a4 000610 isub temp ,pdata 
+0x01a5 000611 nbranch p_g24_transmit_loop ,blank 
+0x01a6 000612 fetch 1 ,mem_24g_rf_work_stage 
+0x01a7 000613 beq 3 ,p_g24_transmit_pac_fail_hop_stage3 
+0x01a8 000614 fetch 1 ,mem_24g_hop_pac_retry 
+0x01a9 000615 increase 1 ,pdata 
+0x01aa 000616 store 1 ,mem_24g_hop_pac_retry 
+0x01ab 000617 beq 2 ,p_g24_transmit_hop_pac_fail 
+0x01ac 000618 call p_g24_hop_ch_enable 
+0x01ad 000619 jam 1 ,mem_24g_max_retry 
+0x01ae 000620 branch p_g24_transmit_packet 
+:      000622 p_g24_tx_paring_retry:
+0x01af 000623 fetch 1 ,mem_24g_get_ack_fail 
+0x01b0 000624 rtnne 0xff 
+0x01b1 000625 jam 0 ,mem_24g_get_ack_fail 
+0x01b2 000626 branch p_g24_stop_g24_mode 
+:      000628 p_g24_tx_attempt_fail:
+0x01b3 000629 setarg 0 
+0x01b4 000630 store 2 ,mem_24g_txfail_cnt 
+:      000631 p_g24_stop_g24_mode:
+0x01b5 000632 jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
+0x01b6 000633 branch ui_ipc_send_event 
+:      000635 p_g24_ackpayload_parse:
+0x01b7 000636 call p_g24_read_len_pid_crc 
+0x01b8 000637 fetch 1 ,mem_24g_rxdata_length 
+0x01b9 000638 rtn blank 
+0x01ba 000639 iforce loopcnt 
+0x01bb 000640 arg mem_24g_rxbuf + 2 ,contr 
+0x01bc 000641 arg mem_24g_rxpayload ,contw 
+0x01bd 000642 branch memcpy 
+:      000644 p_g24_pairing_sm:
+0x01be 000645 jam zcode_90 ,mem_zcode_temp_param0 
+0x01bf 000646 branch p_zcode_entrance 
+:      000648 p_g24_paring_mode:
+0x01c0 000649 jam zcode_91 ,mem_zcode_temp_param0 
+0x01c1 000650 branch p_zcode_entrance 
+:      000652 p_g24_start_24g_mode:
+0x01c2 000653 jam zcode_60 ,mem_zcode_temp_param0 
+0x01c3 000654 branch p_zcode_entrance 
+:      000656 p_g24_auto_pair_start:
+0x01c4 000657 jam zcode_70 ,mem_zcode_temp_param0 
+0x01c5 000658 branch p_zcode_entrance 
+:      000660 p_g24_check_51cmd_stop_24g:
+0x01c6 000661 set0 mark_24g ,mark 
+0x01c7 000662 call le_disable 
+:      000663 p_mouse_disable_g24_pairing_flag:
+0x01c8 000664 arg mosue_24g_pairing_flag ,queue 
+0x01c9 000665 branch mouse_disable_function_flag 
+:      000667 p_g24_put_data_in_buff:
+0x01ca 000668 storet 1 ,mem_24g_datalen 
+0x01cb 000669 copy temp ,loopcnt 
+0x01cc 000670 arg mem_24g_txbuf ,contw 
+0x01cd 000671 copy rega ,contr 
+0x01ce 000672 branch memcpy 
+:      000674 p_g24_read_len_pid_crc:
+0x01cf 000676 fetch 1 ,mem_24g_rxbuf + 1 
+0x01d0 000677 rshift3 pdata ,pdata 
+0x01d1 000678 store 1 ,mem_24g_rxdata_length 
+0x01d2 000680 increase 1 ,pdata 
+0x01d3 000681 arg mem_24g_rxbuf + 1 ,contr 
+0x01d4 000682 iadd contr ,contr 
+0x01d5 000683 ifetch 3 ,contr 
+0x01d6 000684 store 3 ,mem_24g_sta_crc 
+0x01d7 000686 fetch 1 ,mem_24g_rxbuf + 1 
+0x01d8 000687 rshift pdata ,pdata 
+0x01d9 000688 and pdata ,0x03 ,pdata 
+0x01da 000689 store 1 ,mem_24g_sta_pid 
+0x01db 000690 rtn 
+:      000692 p_g24_update_addr_and_synccrc8:
+0x01dc 000693 store 4 ,mem_24g_addr 
+:      000695 p_g24_syncword_crc8:
+0x01dd 000696 arg 0 ,rega 
+0x01de 000697 arg 4 ,loopcnt 
+0x01df 000698 arg mem_24g_addr ,contr 
+:      000699 p_g24_syncword_crc8_loop:
+0x01e0 000700 ifetch 1 ,contr 
+0x01e1 000701 iadd rega ,rega 
+0x01e2 000702 loop p_g24_syncword_crc8_loop 
+0x01e3 000703 copy rega ,pdata 
+0x01e4 000704 store 2 ,mem_24g_syncword 
+0x01e5 000705 fetch 1 ,mem_24g_syncword 
+0x01e6 000706 fetcht 1 ,mem_24g_syncword + 1 
+0x01e7 000707 iadd temp ,pdata 
+0x01e8 000708 store 1 ,mem_24g_syncword_crc8 
+0x01e9 000709 rtn 
+:      000711 p_g24_transmit_prep:
+0x01ea 000714 fetch 1 ,mem_24g_datalen 
+0x01eb 000715 increase 2 ,pdata 
+0x01ec 000716 store 1 ,mem_24g_txlen 
+0x01ed 000718 fetch 1 ,mem_24g_data_type 
+0x01ee 000719 store 1 ,mem_24g_txpayload 
+0x01ef 000721 fetch 1 ,mem_24g_datalen 
+0x01f0 000722 lshift3 pdata ,pdata 
+0x01f1 000723 fetcht 1 ,mem_24g_pid 
+0x01f2 000724 and temp ,0x03 ,temp 
+0x01f3 000725 lshift temp ,temp 
+0x01f4 000726 ior temp ,pdata 
+0x01f5 000727 fetcht 1 ,mem_24g_no_ack 
+0x01f6 000728 iadd temp ,pdata 
+0x01f7 000729 istore 1 ,contw 
+0x01f8 000731 fetch 1 ,mem_24g_datalen 
+0x01f9 000732 iforce loopcnt 
+0x01fa 000733 arg mem_24g_txbuf ,contr 
+0x01fb 000734 branch memcpy 
+:      000768 p_g24_prep:
+0x01fc 000769 disable enable_crc 
+0x01fd 000770 disable enable_white 
+0x01fe 000771 setarg 0x555555 
+0x01ff 000772 iforce crc24_init 
+0x0200 000773 fetch 1 ,mem_24g_ch 
+0x0201 000774 reverse pdata ,temp 
+0x0202 000775 set1 1 ,temp 
+0x0203 000776 rshift temp ,white_init 
+0x0204 000777 rtn 
+:      000789 p_g24_receive_rxon:
+0x0205 000792 call p_g24_prep 
+0x0206 000793 disable user3 
+0x0207 000794 enable decode_fec0 
+0x0208 000795 enable is_rx 
+0x0209 000796 disable is_tx 
+0x020a 000797 enable swfine 
+0x020b 000798 fetch 2 ,mem_24g_rx_window 
+0x020c 000799 iforce stop_watch 
+0x020d 000800 correlate null ,timeout 
+0x020e 000801 nbranch p_g24_sync_timeout ,sync 
+0x020f 000804 disable decode_fec0 
+0x0210 000805 enable decode_fec1 
+0x0211 000806 enable enable_white 
+0x0212 000807 enable enable_crc 
+0x0213 000808 call p_g24_receive_byte 
+0x0214 000809 store 1 ,mem_24g_get_syncword_crc8 
+0x0215 000810 fetcht 1 ,mem_24g_syncword_crc8 
+0x0216 000811 isub temp ,null 
+0x0217 000812 nbranch p_g24_end_of_packet ,zero 
+0x0218 000813 call p_g24_receive_byte 
+0x0219 000814 store 1 ,mem_24g_rxbuf 
+0x021a 000815 fetch 1 ,mem_24g_mode 
+0x021b 000816 sub pdata ,rx_24g ,null 
+0x021c 000817 branch p_g24_receive_skip ,zero 
+0x021d 000818 fetch 1 ,mem_24g_rxbuf 
+0x021e 000819 fetcht 1 ,mem_24g_data_type 
+0x021f 000820 icompare bits_data ,temp 
+0x0220 000821 nbranch p_g24_end_of_packet ,true 
+:      000822 p_g24_receive_skip:
+0x0221 000823 call p_g24_receive_byte 
+0x0222 000824 istore 1 ,contw 
+0x0223 000825 rshift3 pdata ,pdata 
+0x0224 000826 and pdata ,0x1f ,loopcnt 
+0x0225 000827 branch p_g24rx_nopayload ,zero 
+:      000828 p_g24rx_loop:
+0x0226 000829 call p_g24_receive_byte 
+0x0227 000830 istore 1 ,contw 
+0x0228 000831 loop p_g24rx_loop 
+:      000832 p_g24rx_nopayload:
+0x0229 000834 copy contw ,rega 
+0x022a 000835 call p_g24_receive_byte 
+0x022b 000836 store 1 ,mem_rssi_hex_received 
+0x022c 000837 copy rega ,contw 
+0x022d 000838 parse demod ,bucket ,24 
+0x022e 000839 enable swfine 
+0x022f 000840 arg param_sifs ,stop_watch 
+0x0230 000841 rshift32 pdata ,pdata 
+0x0231 000842 rshift16 pdata ,pdata 
+0x0232 000843 istore 3 ,contw 
+0x0233 000844 disable decode_fec1 
+0x0234 000845 branch p_g24_end_of_packet ,crc_failed 
+0x0235 000848 enable user3 
+0x0236 000849 fetch 1 ,mem_last_freq 
+0x0237 000850 add pdata ,0 ,rega 
+0x0238 000851 call rf_write_freq 
+0x0239 000852 disable decode_fec0 
+0x023a 000853 call set_sync_on 
+0x023b 000854 fetch 1 ,mem_rssi_hex_received 
+0x023c 000855 call p_rssi_signal 
+0x023d 000856 rtn 
+:      000858 p_g24_receive_byte:
+0x023e 000859 parse demod ,bucket ,8 
+0x023f 000860 rshift3 pwindow ,pdata 
+0x0240 000861 rtn 
+:      000863 p_g24_end_of_packet:
+0x0241 000864 disable encode_fec1 
+0x0242 000865 disable decode_fec1 
+0x0243 000866 call end_of_packet 
+0x0244 000867 rtn 
+:      000869 p_g24_sync_timeout:
+0x0245 000870 branch p_g24_end_of_packet 
+:      000872 p_g24_set_freq_tx:
+0x0246 000873 call set_sync_on 
+0x0247 000874 fetcht 1 ,mem_24g_ch 
+0x0248 000875 branch set_freq_tx 
+:      000877 p_g24_transmit:
+0x0249 000878 call le_enable 
+0x024a 000879 fetch 4 ,mem_24g_addr 
+0x024b 000880 iforce access 
+0x024c 000881 call p_g24_prep 
+0x024d 000882 call p_g24_set_freq_tx 
+0x024e 000883 set1 txgfsk ,radio_ctrl 
+0x024f 000884 enable encode_fec0 
+0x0250 000885 enable is_tx 
+0x0251 000886 disable is_rx 
+0x0252 000889 rshift16 access ,pdata 
+0x0253 000890 rshift8 pdata ,pdata 
+0x0254 000891 rshift4 pdata ,pdata 
+0x0255 000892 inject mod ,40 
+0x0256 000893 disable encode_fec0 
+0x0257 000894 enable encode_fec1 
+0x0258 000895 enable enable_white 
+0x0259 000896 enable enable_crc 
+0x025a 000897 fetch 1 ,mem_24g_syncword_crc8 
+0x025b 000898 inject mod ,8 
+0x025c 000899 fetch 1 ,mem_24g_txlen 
+0x025d 000900 iforce loopcnt 
+0x025e 000901 arg mem_24g_txpayload ,contr 
+:      000902 p_g24tr_loop:
+0x025f 000903 ifetch 1 ,contr 
+0x0260 000904 inject mod ,8 
+0x0261 000905 loop p_g24tr_loop 
+0x0262 000908 enable enable_parity 
+0x0263 000909 inject mod ,24 
+0x0264 000910 disable enable_parity 
+0x0265 000911 until null ,tx_clear 
+0x0266 000912 nop 100 
+0x0267 000913 disable encode_fec0 
+0x0268 000914 disable encode_fec1 
+0x0269 000915 rtn 
+:      000917 p_g24_timer_check:
+0x026a 000918 call disable_user 
+0x026b 000919 fetcht 4 ,mem_24g_tx_btclk 
+0x026c 000920 copy clkn_bt ,pdata 
+0x026d 000921 isub temp ,null 
+0x026e 000922 ncall g24_timer_timeout ,positive 
+0x026f 000923 copy pdata ,regb 
+0x0270 000924 fetch 4 ,mem_24g_tx_btclk 
+0x0271 000925 fetcht 1 ,mem_24g_interval 
+0x0272 000926 iadd temp ,temp 
+0x0273 000927 copy regb ,pdata 
+0x0274 000928 isub temp ,null 
+0x0275 000929 nrtn positive 
+0x0276 000930 set0 28 ,pdata 
+0x0277 000931 store 4 ,mem_24g_tx_btclk 
+0x0278 000932 branch enable_user 
+:      000934 p_rssi_noise:
+0x0279 000935 call save_rssi 
+0x027a 000936 rtn blank 
+0x027b 000937 fetcht 1 ,mem_rssi_noise_index 
+0x027c 000938 arg mem_rssi_noise_buffer ,rega 
+0x027d 000939 call p_rssi_store 
+0x027e 000940 storet 1 ,mem_rssi_noise_index 
+0x027f 000941 rtn 
+:      000943 p_rssi_store:
+0x0280 000944 copy rega ,pdata 
+0x0281 000945 iadd temp ,contw 
+0x0282 000946 fetch 1 ,mem_rssi 
+0x0283 000947 istore 1 ,contw 
+0x0284 000948 increase 1 ,temp 
+0x0285 000949 and_into rssi_buf_len_signal ,temp 
+0x0286 000950 rtn 
+:      000951 p_rssi_average:
+0x0287 000952 arg 0 ,temp 
+0x0288 000953 arg rssi_buf_len_signal + 1 ,loopcnt 
+0x0289 000954 copy rega ,contr 
+:      000955 p_rssi_average_loop:
+0x028a 000956 ifetch 1 ,contr 
+0x028b 000957 iadd temp ,temp 
+0x028c 000958 loop p_rssi_average_loop 
+0x028d 000959 rshift3 temp ,pdata 
+0x028e 000960 copy pdata ,temp 
+0x028f 000961 rtnmark0 mark_24g 
+0x0290 000963 div pdata ,10 
+0x0291 000964 call wait_div_end 
+0x0292 000965 quotient pdata 
+0x0293 000966 lshift4 pdata ,pdata 
+0x0294 000967 remainder temp 
+0x0295 000968 ior temp ,temp 
+0x0296 000969 rtn 
+0x0297 000970 rtn 
+:      000973 p_mouse_before_lpm:
+0x0298 000974 rtnmark1 mark_24g 
+0x0299 000975 call p_mouse_le_txbuff_save 
+0x029a 000976 call p_mouse_setgpio_lpm 
+0x029b 000977 fetch 1 ,mem_context 
+0x029c 000978 bbit0 state_inconn ,p_clear_wake 
+0x029d 000979 fetch 1 ,mem_lpm_current_mult 
+0x029e 000980 nrtn blank 
+:      000981 p_clear_wake:
+0x029f 000982 setarg 0 
+0x02a0 000983 store 8 ,mem_gpio_wakeup_low 
+0x02a1 000984 rtn 
+:      000986 p_mouse_set_sdio_high:
+0x02a2 000987 fetch 1 ,mem_mouse_init_sensor_reset_flag 
+0x02a3 000988 rtn blank 
+0x02a4 000989 branch p_mouse_seting_sensor_type 
+:      000991 p_device_init:
+0x02a5 000992 call app_lpm_mult_enable 
+0x02a6 000993 call enable_authrom 
+0x02a7 000994 branch p_mouse_spi_init ,wake 
+:      000995 p_device_wake_from_power:
+0x02a8 000996 call p_wake_from_power 
+0x02a9 000997 fetch 1 ,mem_power_on_flag 
+0x02aa 000998 bbit1 2 ,p_mouse_check_reconn_target 
+0x02ab 000999 call p_mouse_check_key_gpio 
+0x02ac 001000 beq mouse_lm_button ,p_mouse_24g_pairing_button 
+:      001001 p_mouse_check_reconn_target:
+0x02ad 001002 call p_mouse_tx_power_init 
+0x02ae 001003 fetch 1 ,mem_device_flag 
+0x02af 001004 fetcht 1 ,mem_24g_device_number 
+0x02b0 001005 isub temp ,null 
+0x02b1 001006 branch p_mouse_connect_24g_mode ,zero 
+0x02b2 001007 call p_mouse_mode_bt_device1_multi_led_on 
+0x02b3 001008 fetch 1 ,mem_xrecord_mode 
+0x02b4 001009 beq rec_3_mode ,p_mouse3_0_check_reconn_target 
+:      001013 p_mouse_null_enter_hibernate_enable:
+0x02b5 001014 jam 1 ,mem_mouse_null_enter_hibernate_flag 
+0x02b6 001015 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+0x02b7 001016 rtn 
+:      001017 p_mouse_tx_power_init:
+0x02b8 001018 fetch 1 ,mem_tx_power_temp 
+0x02b9 001019 store 1 ,mem_tx_power 
+0x02ba 001020 rtn 
+:      001022 p_mouse_check_select_device_by_switch:
+0x02bb 001023 fetch 1 ,mem_config_function_enable 
+0x02bc 001024 branch mouse_cheak_select_device_by_switch + 1 
+:      001026 p_mouse_connect_24g_mode:
+0x02bd 001027 jam mode_24g_device ,mem_device_flag 
+0x02be 001028 call p_mouse_mode_24g_device_multi_led_on 
+0x02bf 001029 branch p_mouse_start_24g_mode 
+:      001031 p_mouse3_0_check_reconn_target:
+0x02c0 001032 fetch 6 ,mem_hci_plap 
+0x02c1 001033 branch app_bt_start_discovery_short ,blank 
+0x02c2 001034 branch mouse3_0_check_reconn_target + 3 
+:      001061 p_mouse_24g_pairing_button:
+0x02c3 001062 jam zcode_61 ,mem_zcode_temp_param0 
+0x02c4 001063 branch p_zcode_entrance 
+:      001072 p_mouse_spi_init:
+0x02c5 001073 jam 0x76 ,mem_spi_init_clk 
+0x02c6 001074 branch mouse_spi_init 
+:      001076 p_mouse_init_sunt:
+0x02c7 001077 call p_mouse_spi_init 
+0x02c8 001078 call mouse_spi_sdio_gpio_pollup 
+:      001081 p_mouse_init_sensor:
+0x02c9 001082 call mouse_read_sensor_id 
+0x02ca 001083 beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
+0x02cb 001084 beq p3065_id1 ,p_mouse_p3065_init_param 
+0x02cc 001085 call mouse_twspi_reset 
+0x02cd 001086 nop 1000 
+0x02ce 001087 branch p_mouse_init_sensor 
+:      001089 p_mouse_init_sensor_reset:
+0x02cf 001090 jam 1 ,mem_mouse_init_sensor_reset_flag 
+0x02d0 001091 call spi_ncs_enable 
+0x02d1 001092 call p_mouse_init_sunt 
+0x02d2 001093 branch spi_ncs_disable 
+:      001095 p_mouse_init_p32xx_id2_judge:
+0x02d3 001096 call p_mouse_sensor_poweron 
+0x02d4 001097 fetch 1 ,mem_sensor_id2 
+0x02d5 001098 beq ma8650_id2 ,p_mouse_ma8650_init_param 
+0x02d6 001099 beq p8009_id2 ,p_mouse_8009_init_param 
+0x02d7 001100 branch mouse_init_p32xx_id2_judge + 1 
+:      001102 p_mouse_ma8650_init_param:
+0x02d8 001103 setarg 0x8006 
+0x02d9 001104 call twspi_write 
+0x02da 001105 call delay_10ms 
+0x02db 001106 jam ma8650 ,mem_config_sensor_type 
+0x02dc 001107 call mouse_sensor_disable_wp 
+0x02dd 001108 setarg 0x220a 
+0x02de 001109 call twspi_write 
+0x02df 001110 branch mouse_sensor_enable_wp 
+:      001112 p_mouse_8009_init_param:
+0x02e0 001113 setarg 0x16 
+0x02e1 001114 call twspi_read 
+0x02e2 001115 sub pdata ,0xbd ,null 
+0x02e3 001116 nbranch p_mouse_init_sensor ,zero 
+0x02e4 001117 setarg 0x19 
+0x02e5 001118 call twspi_read 
+0x02e6 001119 sub pdata ,0x55 ,null 
+0x02e7 001120 nbranch p_mouse_init_sensor ,zero 
+0x02e8 001121 setarg 0x1b 
+0x02e9 001122 call twspi_read 
+0x02ea 001123 sub pdata ,0x1d ,null 
+0x02eb 001124 nbranch p_mouse_init_sensor ,zero 
+0x02ec 001125 jam p8009 ,mem_config_sensor_type 
+0x02ed 001126 call mouse_sensor_disable_wp 
+0x02ee 001127 setarg 0x0206 
+0x02ef 001128 call twspi_write 
+0x02f0 001129 setarg 0x6909 
+0x02f1 001130 call twspi_write 
+0x02f2 001131 setarg 0x280d 
+0x02f3 001132 call twspi_write 
+0x02f4 001133 setarg 0x9f0e 
+0x02f5 001134 call twspi_write 
+0x02f6 001135 setarg 0xba0f 
+0x02f7 001136 call twspi_write 
+0x02f8 001137 branch mouse_sensor_enable_wp 
+:      001138 p_mouse_p3065_init_param:
+0x02f9 001139 call p_mouse_sensor_poweron 
+0x02fa 001140 fetch 1 ,mem_sensor_id2 
+0x02fb 001141 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
+0x02fc 001142 jam p3065 ,mem_config_sensor_type 
+0x02fd 001143 rtn 
+:      001145 p_mouse_sensor_poweron:
+0x02fe 001146 call p_mouse_spi_init 
+0x02ff 001147 setarg 0x8006 
+0x0300 001148 call twspi_write 
+0x0301 001149 nop 12000 
+:      001150 p_mouse_dpi_config:
+0x0302 001153 fetch 1 ,mem_mouse_dpi 
+0x0303 001154 beq 0xff ,p_mouse_dpi_config_default 
+0x0304 001155 branch p_mouse_seting_dpi 
+:      001156 p_mouse_dpi_config_default:
+0x0305 001157 fetch 1 ,mem_config_sensor_motion 
+0x0306 001158 store 1 ,mem_mouse_dpi 
+0x0307 001159 branch p_mouse_seting_dpi 
+:      001161 p_mouse_sensor_powerdown:
+0x0308 001162 call p_mouse_spi_init 
+0x0309 001163 setarg 0x06 
+0x030a 001164 call twspi_read 
+0x030b 001165 or pdata ,0x08 ,pdata 
+0x030c 001166 lshift8 pdata ,pdata 
+0x030d 001167 add pdata ,0x06 ,pdata 
+0x030e 001168 branch twspi_write 
+:      001170 p_mouse_setting_config:
+0x030f 001171 jam zcode_80 ,mem_zcode_temp_param0 
+0x0310 001172 branch p_zcode_entrance 
+:      001175 p_flash_ncs_disable:
+0x0311 001176 fetcht 1 ,mem_flash_ncs_gpio 
+0x0312 001177 branch gpio_out_inactive 
+:      001179 p_spid_init_flash:
+0x0313 001180 jam 0x40 ,core_spid_ctrl 
+0x0314 001181 jam 0x0 ,core_spid_delay 
+0x0315 001182 hfetch 1 ,core_gpio_sel1 
+0x0316 001183 set0 0 ,pdata 
+0x0317 001184 set0 1 ,pdata 
+0x0318 001185 set1 3 ,pdata 
+0x0319 001186 set0 4 ,pdata 
+0x031a 001187 hstore 1 ,core_gpio_sel1 
+0x031b 001188 setarg 0 
+0x031c 001189 store 4 ,mem_spid_tbuf 
+0x031d 001191 hfetch 1 ,core_gpio_pd3 
+0x031e 001192 set0 0 ,pdata 
+0x031f 001193 hstore 1 ,core_gpio_pd3 
+0x0320 001195 rtn 
+:      001197 p_mouse_load_flash_info_check:
+0x0321 001198 call p_flash_release_deep_power_down 
+0x0322 001199 call mouse_load_flash_flag 
+0x0323 001200 fetch 2 ,mem_store_flag 
+0x0324 001201 arg eeprom_init_flag ,temp 
+0x0325 001202 isub temp ,null 
+0x0326 001203 branch p_mouse_load_flash_device_info ,zero 
+0x0327 001204 storet 2 ,mem_store_flag 
+0x0328 001205 call mouse_ble_init_address 
+0x0329 001206 fetch 1 ,mem_config_sensor_motion 
+0x032a 001207 store 1 ,mem_mouse_dpi 
+:      001211 p_mouse_store_flash_device_info:
+0x032b 001212 call p_flash_release_deep_power_down 
+0x032c 001213 call p_flash_erase_sector 
+0x032d 001214 call p_mouse_information_flash_parameters 
+0x032e 001215 call p_spid_write_flash 
+0x032f 001216 call p_wait_flash_done 
+:      001217 p_mouse_store_random_addr_increase_count:
+0x0330 001218 arg 2 ,temp 
+0x0331 001219 arg mem_random_addr_increase_count ,rega 
+0x0332 001220 arg mouse_random_addr_count_eeprom_offset ,regb 
+0x0333 001221 fetch 3 ,mem_flash_base 
+0x0334 001222 iadd regb ,pdata 
+0x0335 001223 call p_spid_write_flash 
+0x0336 001224 call p_wait_flash_done 
+0x0337 001225 call p_flash_deep_power_down 
+0x0338 001226 branch p_mouse_spi_init 
+:      001228 p_mouse_set_24g_addr_flash:
+0x0339 001229 arg 4 ,temp 
+0x033a 001230 arg mem_24g_addr ,rega 
+0x033b 001231 arg mouse_g24_addr_eeprom_offect ,regb 
+0x033c 001232 rtn 
+:      001234 p_flash_erase_sector:
+0x033d 001235 fetch 3 ,mem_flash_base 
+0x033e 001236 store 3 ,mem_spi_write_addr 
+0x033f 001237 call flash_erase_sector + 2 
+0x0340 001238 branch p_wait_flash_done 
+:      001240 p_spid_write_flash:
+0x0341 001241 copy pdata ,regc 
+0x0342 001242 copy rega ,pdata 
+0x0343 001243 increase -4 ,pdata 
+0x0344 001244 copy pdata ,regb 
+0x0345 001245 ifetch 4 ,regb 
+0x0346 001246 store 4 ,mem_write_flash_head_temp 
+0x0347 001247 copy regc ,pdata 
+0x0348 001248 call spid_write_flash 
+0x0349 001249 fetch 4 ,mem_write_flash_head_temp 
+0x034a 001250 istore 4 ,regb 
+0x034b 001251 rtn 
+:      001253 p_wait_flash_done:
+0x034c 001254 setarg 100000 
+0x034d 001255 call sleep 
+0x034e 001256 call spid_unlock_flash 
+0x034f 001257 setarg mem_spid_rbuf 
+0x0350 001258 hstore 2 ,core_spid_rxaddr 
+0x0351 001259 setarg flash_read_satus 
+0x0352 001260 call spid_read_reg 
+0x0353 001261 bbit1 flash_status_wip ,p_wait_flash_done 
+0x0354 001262 rtn 
+:      001264 p_mouse_information_flash_parameters:
+0x0355 001265 setarg mem_mouse_information_end 
+0x0356 001266 arg mem_mouse_information_start ,temp 
+0x0357 001267 isub temp ,temp 
+0x0358 001268 fetch 3 ,mem_flash_base 
+0x0359 001269 arg mem_mouse_information_start ,rega 
+0x035a 001270 rtn 
+:      001272 p_mouse_read_flash:
+0x035b 001273 call p_flash_release_deep_power_down 
+0x035c 001274 call p_mouse_information_flash_parameters 
+0x035d 001275 branch spid_read_flash 
+:      001277 p_mouse_load_flash_device_info:
+0x035e 001278 call p_mouse_read_flash 
+0x035f 001279 call p_mouse_load_random_addr_increase_count 
+0x0360 001280 call p_mouse_check_select_device_by_switch 
+0x0361 001281 call mouse_select_reconn_device 
+0x0362 001282 fetch 4 ,mem_mouse_24g_addr 
+0x0363 001283 store 4 ,mem_24g_addr 
+0x0364 001284 rtn 
+:      001286 p_flash_deep_power_down:
+0x0365 001287 jam flash_command_deep_power_down ,mem_temp 
+:      001288 p_spid_write_flash_cmd:
+0x0366 001289 call p_spid_init_flash 
+0x0367 001290 nop 100 
+0x0368 001291 call spid_unlock_flash 
+0x0369 001292 arg mem_write_flash_head_temp ,rega 
+0x036a 001293 fetcht 1 ,mem_temp 
+0x036b 001294 call spid_write_flash_common 
+0x036c 001295 nop 100 
+0x036d 001296 rtn 
+:      001298 p_flash_release_deep_power_down:
+0x036e 001299 jam flash_command_release_deep_power_down ,mem_temp 
+0x036f 001300 branch p_spid_write_flash_cmd 
+:      001302 p_mouse_start_24g_mode:
+0x0370 001305 call p_g24_factory_check 
+0x0371 001306 branch p_g24_auto_pair_start ,user 
+0x0372 001307 branch p_g24_start_24g_mode 
+:      001309 p_g24_factory_check:
+0x0373 001310 arg 2 ,loopcnt 
+0x0374 001311 arg mem_24g_addr ,contr 
+:      001312 p_pdata_0xff_check:
+0x0375 001313 call enable_user 
+0x0376 001314 setarg 0xffff 
+:      001315 p_pdata_0xff_check_loop:
+0x0377 001316 ifetcht 2 ,contr 
+0x0378 001317 isub temp ,null 
+0x0379 001318 ncall disable_user ,zero 
+0x037a 001319 loop p_pdata_0xff_check_loop 
+0x037b 001320 rtn 
+:      001322 p_mouse_g24_package_data:
+0x037c 001323 call mouse_g24_package_data 
+0x037d 001324 fetch 2 ,mem_mouse_z 
+0x037e 001325 rtn blank 
+:      001326 p_g24_transmit_by_interrupt_enable:
+0x037f 001327 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
+0x0380 001328 setarg 0 
+0x0381 001329 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+0x0382 001330 rtn 
+:      001332 p_mouse_le_txbuff_save:
+0x0383 001333 arg mem_le_tx_buffer0 ,contr 
+0x0384 001334 arg mem_le_tx_buffer0_omemalloc ,contw 
+0x0385 001335 call p_mouse_le_txbuff_copy 
+0x0386 001336 arg mem_le_tx_buffer1 ,contr 
+0x0387 001337 call p_mouse_le_txbuff_copy 
+0x0388 001338 arg mem_le_tx_buffer2 ,contr 
+0x0389 001339 call p_mouse_le_txbuff_copy 
+0x038a 001340 arg mem_le_tx_buffer3 ,contr 
+:      001341 p_mouse_le_txbuff_copy:
+0x038b 001342 arg 27 ,loopcnt 
+0x038c 001343 branch memcpy 
+:      001345 p_mouse_le_txbuff_load:
+0x038d 001346 arg mem_le_tx_buffer0_omemalloc ,contr 
+0x038e 001347 arg mem_le_tx_buffer0 ,contw 
+0x038f 001348 call p_mouse_le_txbuff_copy 
+0x0390 001349 arg mem_le_tx_buffer1 ,contw 
+0x0391 001350 call p_mouse_le_txbuff_copy 
+0x0392 001351 arg mem_le_tx_buffer2 ,contw 
+0x0393 001352 call p_mouse_le_txbuff_copy 
+0x0394 001353 arg mem_le_tx_buffer3 ,contw 
+0x0395 001354 branch p_mouse_le_txbuff_copy 
+:      001356 p_mouse_le:
+0x0396 001357 call le_fifo_check_nearly_full 
+0x0397 001358 nrtn blank 
+0x0398 001359 fetch 1 ,mem_le_connect_status_flag 
+0x0399 001360 and pdata ,0x03 ,pdata 
+0x039a 001361 rtnne 0x03 
+0x039b 001362 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0x039c 001363 call p_mouse_clear_sensor_data ,blank 
+0x039d 001364 fetch mouse_flag_len ,mem_mouse_flag 
+0x039e 001365 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+0x039f 001366 call mouse_motion 
+0x03a0 001367 nrtn user 
+0x03a1 001368 call p_mouse_wheel_trigger 
+:      001369 p_mouse_data_push:
+0x03a2 001370 arg mem_mouse_key ,rega 
+0x03a3 001371 call queue_push 
+0x03a4 001372 call p_mouse_queue_increase ,user 
+0x03a5 001374 rtn 
+:      001376 p_mouse_data_init:
+0x03a6 001377 jam 7 ,mem_mouse_data_queue 
+0x03a7 001378 jam 4 ,mem_mouse_data_queue + 1 
+0x03a8 001379 setarg mem_mouse_data_queue 
+0x03a9 001380 store 2 ,mem_queue_ptr 
+0x03aa 001381 branch queue_init 
+:      001383 p_mouse_queue_increase:
+0x03ab 001384 fetch 1 ,mem_mouse_data_queue_num 
+0x03ac 001385 increase 1 ,pdata 
+0x03ad 001386 store 1 ,mem_mouse_data_queue_num 
+0x03ae 001387 rtn 
+:      001389 p_mouse_data_pull:
+0x03af 001390 arg mem_mouse_key ,rega 
+0x03b0 001391 call queue_pop 
+0x03b1 001392 branch p_mouse_fill_data_le ,user 
+0x03b2 001393 rtn 
+:      001395 p_mouse_fill_data_le:
+0x03b3 001396 call le_clear_md 
+0x03b4 001397 fetch 1 ,mem_mouse_data_queue_num 
+0x03b5 001398 sub pdata ,1 ,null 
+0x03b6 001399 ncall le_set_md ,positive 
+0x03b7 001400 fetch 1 ,mem_mouse_data_queue_num 
+0x03b8 001401 rtn blank 
+0x03b9 001402 increase -1 ,pdata 
+0x03ba 001403 store 1 ,mem_mouse_data_queue_num 
+0x03bb 001404 branch mouse_fill_data_le 
+:      001407 p_mouse_wheel_trigger:
+0x03bc 001408 fetch 2 ,mem_mouse_z 
+0x03bd 001409 rtn blank 
+0x03be 001410 jam 1 ,mem_mouse_wheel_trigger 
+0x03bf 001411 jam 2 ,mem_mouse_wheel_trigger_timer 
+0x03c0 001412 rtn 
+:      001414 p_mouse_bt:
+0x03c1 001415 rtn attempt 
+0x03c2 001416 fetch 1 ,mem_app_handshake_flag 
+0x03c3 001417 rtn blank 
+0x03c4 001418 call l2cap_malloc_is_fifo_nearly_full 
+0x03c5 001419 nrtn blank 
+0x03c6 001420 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0x03c7 001421 call p_mouse_clear_sensor_data ,blank 
+0x03c8 001422 fetch mouse_flag_len ,mem_mouse_flag 
+0x03c9 001423 bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
+0x03ca 001424 bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_send_empty_data 
+0x03cb 001425 call mouse_motion 
+0x03cc 001426 nrtn user 
+0x03cd 001427 call p_mouse_wheel_trigger 
+0x03ce 001428 fetch 1 ,mem_mouse_bt_boot_mode 
+0x03cf 001429 beq 1 ,p_mouse_send_data_boot_mode 
+0x03d0 001430 fetch 1 ,mem_mouse_bt_send_first_package_flag 
+0x03d1 001431 rtn blank 
+0x03d2 001432 branch mouse_send_data 
+:      001434 p_mouse_send_data_boot_mode:
+0x03d3 001435 fetch 1 ,mem_mouse_key 
+0x03d4 001436 store 1 ,mem_mouse_bt_boot_data 
+0x03d5 001437 fetch 1 ,mem_mouse_x 
+0x03d6 001438 istore 1 ,contw 
+0x03d7 001439 fetch 1 ,mem_mouse_y 
+0x03d8 001440 istore 1 ,contw 
+0x03d9 001441 fetch 2 ,mem_mouse_z 
+0x03da 001442 istore 2 ,contw 
+0x03db 001444 arg 7 ,rega 
+0x03dc 001445 call hid_malloc_tx_buff 
+0x03dd 001446 fetch 2 ,mem_hid_int_remote_cid 
+0x03de 001447 istore 2 ,contw 
+0x03df 001448 setarg 0x02a1 
+0x03e0 001449 istore 2 ,contw 
+0x03e1 001450 fetch 5 ,mem_mouse_bt_boot_data 
+0x03e2 001451 istore 5 ,contw 
+0x03e3 001452 rtn 
+:      001459 p_mouse_clear_sensor_data:
+0x03e4 001460 call le_set_config_more_data 
+0x03e5 001461 jam 1 ,mem_mouse_clear_sensor_data_flag 
+0x03e6 001462 branch p_mouse_sensor_poweron 
+:      001464 p_mouse_idle:
+0x03e7 001465 call ui_check_paring_button 
+0x03e8 001466 call p_mouse_dpi_check 
+0x03e9 001467 branch mouse_wheel_check 
+:      001469 p_mouse_dpi_check:
+0x03ea 001470 fetcht 1 ,mem_24g_sw_gpio 
+0x03eb 001471 call gpio_config_output 
+0x03ec 001472 fetcht 1 ,mem_dpi_button_gpio 
+0x03ed 001473 call p_gpio_set_input_pd 
+0x03ee 001474 fetcht 1 ,mem_dpi_button_gpio 
+0x03ef 001475 call gpio_get_bit 
+0x03f0 001476 branch p_mouse_dpi_up ,true 
+0x03f1 001477 call p_gpio_set_input_pu 
+:      001478 p_mouse_dpi_down:
+0x03f2 001479 fetch 1 ,mem_mouse_dpi_button_state 
+0x03f3 001480 rtneq dpi_button_state_down 
+0x03f4 001481 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
+0x03f5 001482 jam 1 ,mem_mouse_dpi_no_enter_long_sleep_flag 
+0x03f6 001483 fetch 1 ,mem_mouse_dpi 
+0x03f7 001484 increase 1 ,pdata 
+0x03f8 001485 and pdata ,0x03 ,pdata 
+0x03f9 001486 store 1 ,mem_mouse_dpi 
+0x03fa 001487 mul32 pdata ,2 ,pdata 
+0x03fb 001488 increase 2 ,pdata 
+0x03fc 001489 store 2 ,mem_mouse_multi_led_blink_count 
+0x03fd 001490 call p_mouse_dpi_multi_led_blink 
+0x03fe 001491 call mouse_seting_dpi 
+0x03ff 001492 branch p_mouse_store_flash_device_info 
+:      001493 p_mouse_dpi_up:
+0x0400 001495 call p_gpio_set_input_pu 
+0x0401 001496 branch mouse_dpi_up 
+:      001498 p_mouse_priority_bb_event:
+0x0402 001499 copy regc ,pdata 
+0x0403 001500 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+0x0404 001501 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+0x0405 001502 beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
+0x0406 001503 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+0x0407 001504 beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
+0x0408 001505 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
+0x0409 001506 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_timeout 
+0x040a 001507 beq bt_evt_virtual_cable_unplug ,p_mouse_irtual_cable_unplug 
+0x040b 001508 beq bt_evt_switch_not_accept ,app_bt_role_switch 
+0x040c 001509 beq bt_evt_sniff_not_accept ,p_mouse_sniff_not_accept 
+0x040d 001510 beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
+0x040e 001511 beq bt_evt_bb_disconnected ,p_mouse_bb_event_disconnected 
+0x040f 001512 beq bt_evt_switch_success_master ,p_mouse_enter_sniff_check 
+0x0410 001513 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+0x0411 001514 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+0x0412 001515 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+0x0413 001516 branch mouse_priority_bb_event + 1 
+:      001518 p_mouse_le_bb_event_connected:
+0x0414 001519 call p_mouse_init_sensor_reset 
+0x0415 001520 jam zcode_b0 ,mem_zcode_temp_param0 
+0x0416 001521 branch p_zcode_entrance 
+:      001523 p_mouse_le_bb_disconnected:
+0x0417 001524 call p_mouse_sensor_powerdown_check 
+0x0418 001525 jam zcode_a2 ,mem_zcode_temp_param0 
+0x0419 001526 branch p_zcode_entrance 
+:      001528 p_mouse_le_enc_info:
+:      001529 p_app_updata_le_param:
+0x041a 001530 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x041b 001531 branch ui_ipc_send_cmd 
+:      001533 p_mouse_le_ll_start_encryt:
+0x041c 001534 jam zcode_b3 ,mem_zcode_temp_param0 
+0x041d 001535 branch p_zcode_entrance 
+:      001537 p_mouse_le_conn_param_update_rsp_recieved:
+0x041e 001538 jam zcode_a1 ,mem_zcode_temp_param0 
+0x041f 001539 branch p_zcode_entrance 
+:      001542 p_mouse_bb_event_reconn_timeout:
+:      001543 p_mouse_bb_event_reconn_failed:
+0x0420 001544 jam zcode_a3 ,mem_zcode_temp_param0 
+0x0421 001545 branch p_zcode_entrance 
+:      001547 p_mouse_irtual_cable_unplug:
+0x0422 001548 call mouse_irtual_cable_unplug 
+0x0423 001549 branch app_bb_hibernate 
+:      001551 p_mouse_sniff_not_accept:
+0x0424 001552 jam zcode_b1 ,mem_zcode_temp_param0 
+0x0425 001553 branch p_zcode_entrance 
+:      001555 p_mouse_bb_event_connected:
+0x0426 001556 call p_low_power_no_data_off_led_time_nolimited 
+0x0427 001557 call p_mouse_init_sensor_reset 
+0x0428 001558 call p_mouse_null_enter_hibernate_disable 
+0x0429 001559 call p_mouse_discovey_led_blink_off 
+0x042a 001560 jam 0 ,mem_mouse_send_switch_req_timer 
+0x042b 001561 branch mouse_stop_discovery 
+:      001563 p_mouse_bb_event_disconnected:
+0x042c 001564 call p_mouse_sensor_powerdown_check 
+0x042d 001565 jam zcode_b4 ,mem_zcode_temp_param0 
+0x042e 001566 branch p_zcode_entrance 
+:      001568 p_mouse_enter_sniff_check:
+0x042f 001569 jam zcode_b2 ,mem_zcode_temp_param0 
+0x0430 001570 branch p_zcode_entrance 
+:      001572 p_mouse_24g_pairing_complete:
+0x0431 001573 call p_mouse_init_sensor_reset 
+0x0432 001574 jam zcode_92 ,mem_zcode_temp_param0 
+0x0433 001575 branch p_zcode_entrance 
+:      001577 p_mouse_24g_attempt_fail:
+0x0434 001578 call p_mouse_sensor_powerdown_check 
+0x0435 001579 jam zcode_a0 ,mem_zcode_temp_param0 
+0x0436 001580 branch p_zcode_entrance 
+:      001582 p_mouse_24g_attempt_success:
+0x0437 001583 call p_low_power_no_data_off_led_time_nolimited 
+0x0438 001584 jam 1 ,mem_mouse_24g_attempt_success_flag 
+0x0439 001585 call p_mouse_null_enter_hibernate_disable 
+0x043a 001586 call p_mouse_init_sensor_reset 
+0x043b 001587 call mouse_no_data_timer_init 
+:      001588 p_mouse_24g_no_data_timer_init:
+0x043c 001589 setarg 0x2ee0 
+0x043d 001590 store 2 ,mem_mouse_no_data_timer 
+0x043e 001591 rtn 
+:      001593 p_mouse_before_hibernate:
+0x043f 001594 call p_mouse_sensor_powerdown_check 
+0x0440 001595 jam zcode_a4 ,mem_zcode_temp_param0 
+0x0441 001596 branch p_zcode_entrance 
+:      001598 p_mouse_sensor_powerdown_check:
+0x0442 001599 fetch 1 ,mem_mouse_init_sensor_reset_flag 
+0x0443 001600 rtn blank 
+0x0444 001601 jam 0 ,mem_mouse_init_sensor_reset_flag 
+0x0445 001602 branch p_mouse_sensor_powerdown 
+:      001605 p_mouse_bb_event_timer:
+0x0446 001606 call p_mouse_adc_read 
+0x0447 001607 call p_mouse_low_voltage_led_timer 
+0x0448 001608 call p_low_power_nodata_off_led_time_check 
+0x0449 001610 call p_mouse_multi_led_blink_timer 
+0x044a 001611 call p_mouse_wheel_trigger_timer 
+0x044b 001612 call p_mouse_null_enter_hibernate_timer 
+0x044c 001613 call p_mouse_bt_discovery_check 
+0x044d 001614 call mouse_check_discovery_timeout_timer 
+0x044e 001615 call p_mouse_check_select_device_by_switch_timer 
+0x044f 001616 call p_mouse_g24_long_sleep_param_update_timer 
+0x0450 001619 call p_mouse_le_current_mult_update_timer 
+0x0451 001620 call p_le_send_smp_security_request_timer 
+0x0452 001621 call p_mouse_send_switch_req_timer 
+0x0453 001622 call mouse_check_hid_handshake_timer 
+0x0454 001623 call p_mouse_bt_check_sniff_req_timeout_timer 
+0x0455 001624 branch mouse_check_no_data_timeout_timer 
+:      001627 p_mouse_check_select_device_by_switch_timer:
+0x0456 001628 fetch 1 ,mem_config_function_enable 
+0x0457 001629 rtnbit0 enable_select_device_by_switch 
+0x0458 001630 fetcht 1 ,mem_config_select_device_button_gpio 
+0x0459 001631 call gpio_get_bit 
+0x045a 001632 branch p_mouse_cheak_select_24gdevice ,true 
+:      001633 p_mouse_select_btdevice:
+0x045b 001634 fetch 1 ,mem_device_flag 
+0x045c 001635 bne mode_bt_device1 ,soft_reset_chip 
+0x045d 001636 rtn 
+:      001637 p_mouse_cheak_select_24gdevice:
+0x045e 001638 fetch 1 ,mem_device_flag 
+0x045f 001639 bne mode_24g_device ,soft_reset_chip 
+0x0460 001640 rtn 
+:      001643 p_mouse_send_switch_req_timer:
+0x0461 001644 arg mem_mouse_send_switch_req_timer ,regc 
+0x0462 001645 arg host_create_conn_resend ,regb 
+0x0463 001646 branch timer_single_step 
+:      001648 p_mouse_bt_check_sniff_req_timeout_timer:
+0x0464 001649 arg mem_mouse_bt_send_first_package_timer ,regc 
+0x0465 001650 arg p_mouse_bt_send_first_package ,regb 
+0x0466 001651 branch timer_single_step 
+:      001652 p_mouse_bt_send_first_package:
+0x0467 001653 jam 1 ,mem_mouse_bt_send_first_package_flag 
+0x0468 001654 rtn 
+:      001666 p_mouse_check_direct_timeout:
+0x0469 001667 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x046a 001668 nrtn blank 
+0x046b 001669 branch mouse_check_direct_timeout 
+:      001671 p_mouse_le_current_mult_update_timer:
+0x046c 001672 arg mem_mouse_le_current_mult_timer ,regc 
+0x046d 001673 arg p_mouse_le_current_mult_reinit ,regb 
+0x046e 001674 branch timer_single_step 
+:      001675 p_mouse_le_current_mult_reinit:
+0x046f 001676 fetch 1 ,mem_lpm_mult_init 
+0x0470 001677 store 1 ,mem_lpm_mult 
+0x0471 001678 branch p_mouse_long_mult_flag_enable 
+:      001680 p_le_send_smp_security_request_timer:
+0x0472 001681 fetch 1 ,mem_mouse_le_bb_connected_flag 
+0x0473 001682 rtn blank 
+0x0474 001683 arg mem_mouse_send_secutiry_request_timer ,regc 
+0x0475 001684 arg p_le_pairing_sm_start_check ,regb 
+0x0476 001685 branch timer_single_step 
+:      001686 p_le_pairing_sm_start_check:
+0x0477 001687 fetch 1 ,mem_le_send_security_request_flag 
+0x0478 001688 nrtn blank 
+0x0479 001689 branch le_pairing_sm_start 
+:      001692 p_mouse_g24_long_sleep_param_update_timer:
+0x047a 001693 arg mem_24g_long_sleep_param_update_timer ,regc 
+0x047b 001694 arg p_mouse_g24_long_sleep_normal_param ,regb 
+0x047c 001695 branch timer_single_step 
+:      001696 p_mouse_g24_long_sleep_normal_param:
+0x047d 001697 setarg g24_long_sleep_step2 
+0x047e 001698 store 3 ,mem_24g_enter_hibernate 
+:      001699 p_mouse_long_mult_flag_enable:
+0x047f 001700 jam 1 ,mem_mouse_long_mult_flag 
+0x0480 001701 rtn 
+:      001703 p_mouse_wheel_trigger_timer:
+0x0481 001704 arg mem_mouse_wheel_trigger_timer ,regc 
+0x0482 001705 arg p_mouse_wheel_trigger_disable ,regb 
+0x0483 001706 branch timer_single_step 
+:      001707 p_mouse_wheel_trigger_disable:
+0x0484 001708 jam 0 ,mem_mouse_wheel_trigger 
+0x0485 001709 rtn 
+:      001711 p_mouse_bt_discovery_check:
+0x0486 001712 fetch 1 ,mem_device_flag 
+0x0487 001713 rtneq mode_24g_device 
+0x0488 001714 fetch 1 ,mem_config_function_enable 
+0x0489 001715 bbit1 enable_bt_button ,mouse_bt_discovery_by_button 
+:      001779 p_mouse_null_enter_hibernate_timer:
+0x048a 001780 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x048b 001781 nrtn blank 
+0x048c 001782 fetch 1 ,mem_mouse_null_enter_hibernate_flag 
+0x048d 001783 rtn blank 
+0x048e 001784 fetch 1 ,mem_mouse_null_enter_hibernate_timer 
+0x048f 001785 branch p_mouse_null_enter_hibernate ,blank 
+0x0490 001786 increase -1 ,pdata 
+0x0491 001787 store 1 ,mem_mouse_null_enter_hibernate_timer 
+0x0492 001788 rtn 
+:      001789 p_mouse_null_enter_hibernate:
+0x0493 001790 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+0x0494 001791 branch app_enter_hibernate 
+:      001793 p_mouse_null_enter_hibernate_disable:
+0x0495 001794 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+0x0496 001795 jam 0 ,mem_mouse_null_enter_hibernate_timer 
+0x0497 001796 rtn 
+:      001798 p_mouse_multi_led_blink_timer:
+0x0498 001799 fetch 1 ,mem_mouse_multi_led_blink_enable 
+0x0499 001800 rtn blank 
+0x049a 001801 fetch 1 ,mem_mouse_multi_led_type 
+0x049b 001802 beq multi_led_on ,p_mouse_multi_led_type_on 
+0x049c 001803 beq multi_led_blink ,p_mouse_multi_led_type_blink 
+0x049d 001804 rtn 
+:      001806 p_mouse_multi_led_type_on:
+0x049e 001807 call p_mouse_multi_led_on 
+0x049f 001808 fetch 1 ,mem_mouse_multi_led_on_timer 
+0x04a0 001809 increase 1 ,pdata 
+0x04a1 001810 store 1 ,mem_mouse_multi_led_on_timer 
+0x04a2 001811 fetcht 1 ,mem_mouse_multi_led_on_timer_init 
+0x04a3 001812 isub temp ,null 
+0x04a4 001813 call p_mouse_multi_led_off_poweron2s ,zero 
+0x04a5 001814 rtn 
+:      001815 p_mouse_multi_led_off_poweron2s:
+0x04a6 001816 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x04a7 001817 branch p_mouse_multi_led_off 
+:      001819 p_mouse_multi_led_type_blink:
+0x04a8 001820 fetch 1 ,mem_mouse_multi_led_blink_timer 
+0x04a9 001821 increase -1 ,pdata 
+0x04aa 001822 store 1 ,mem_mouse_multi_led_blink_timer 
+0x04ab 001823 nrtn blank 
+0x04ac 001824 fetch 1 ,mem_mouse_multi_led_blink_timer_init 
+0x04ad 001825 store 1 ,mem_mouse_multi_led_blink_timer 
+0x04ae 001826 fetch 1 ,mem_mouse_multi_led_blink_count_limited 
+0x04af 001827 branch p_mouse_multi_led_blink_count_no_limited ,blank 
+0x04b0 001828 fetch 1 ,mem_mouse_multi_led_blink_count 
+0x04b1 001829 branch p_mouse_multi_led_blink_off ,blank 
+0x04b2 001830 increase -1 ,pdata 
+0x04b3 001831 store 1 ,mem_mouse_multi_led_blink_count 
+:      001832 p_mouse_multi_led_blink_count_no_limited:
+0x04b4 001833 fetch 1 ,mem_mouse_multi_led_state 
+0x04b5 001834 beq on ,p_mouse_multi_led_off 
+0x04b6 001835 beq off ,p_mouse_multi_led_on 
+0x04b7 001836 rtn 
+:      001838 p_mouse_multi_led_on:
+0x04b8 001839 jam on ,mem_mouse_multi_led_state 
+0x04b9 001840 fetch 1 ,mem_device_flag 
+0x04ba 001841 beq mode_24g_device ,p_mouse_multi_down_led_on 
+:      001842 p_mouse_multi_up_led_on:
+0x04bb 001843 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x04bc 001844 set1 7 ,temp 
+0x04bd 001845 call gpio_config_output 
+0x04be 001846 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x04bf 001847 branch gpio_out_active 
+:      001848 p_mouse_multi_down_led_on:
+0x04c0 001849 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x04c1 001850 call gpio_config_output 
+0x04c2 001851 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x04c3 001852 branch gpio_out_inactive 
+:      001854 p_mouse_multi_led_blink_off:
+0x04c4 001855 setarg 0 
+0x04c5 001856 store 3 ,mem_mouse_multi_led_blink_timer 
+:      001857 p_mouse_multi_led_off:
+0x04c6 001858 fetch 1 ,mem_mouse_multi_led_blink_count 
+0x04c7 001859 nbranch p_mouse_multi_led_off_wait_blink_over ,blank 
+0x04c8 001860 jam 0 ,mem_mouse_multi_led_blink_enable 
+0x04c9 001861 jam 0 ,mem_mouse_multi_led_type 
+:      001862 p_mouse_multi_led_off_wait_blink_over:
+0x04ca 001863 jam 0 ,mem_mouse_multi_led_on_timer 
+0x04cb 001864 jam off ,mem_mouse_multi_led_state 
+0x04cc 001865 branch p_mouse_multi_led_gpio_set_float 
+:      001868 p_mouse_mode_bt_device1_multi_led_on:
+:      001869 p_mouse_mode_24g_device_multi_led_on:
+0x04cd 001870 jam 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x04ce 001871 jam on ,mem_mouse_multi_led_blink_enable 
+0x04cf 001872 jam multi_led_on ,mem_mouse_multi_led_type 
+0x04d0 001873 jam 0 ,mem_mouse_multi_led_on_timer 
+0x04d1 001874 rtn 
+:      001886 p_mouse_discovery_multi_led_blink:
+0x04d2 001887 jam 3 ,mem_mouse_multi_led_blink_timer_init 
+:      001888 p_mouse_discovery_multi_led_blink2:
+0x04d3 001890 jam 1 ,mem_mouse_multi_led_blink_count 
+:      001891 p_mouse_multi_led_blink_enable:
+0x04d4 001892 jam 1 ,mem_mouse_multi_led_blink_timer 
+0x04d5 001893 jam on ,mem_mouse_multi_led_blink_enable 
+0x04d6 001894 jam multi_led_blink ,mem_mouse_multi_led_type 
+0x04d7 001895 rtn 
+:      001897 p_mouse_discovey_led_blink_off:
+0x04d8 001898 jam 0 ,mem_mouse_multi_led_blink_count 
+0x04d9 001899 fetch 1 ,mem_mouse_multi_led_on_timer 
+0x04da 001900 nrtn blank 
+0x04db 001901 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x04dc 001902 nrtn blank 
+0x04dd 001903 branch p_mouse_multi_led_blink_off 
+:      001905 p_mouse_dpi_multi_led_blink:
+0x04de 001906 jam 5 ,mem_mouse_multi_led_blink_timer_init 
+0x04df 001907 jam 1 ,mem_mouse_multi_led_blink_count_limited 
+0x04e0 001908 branch p_mouse_multi_led_blink_enable 
+:      001911 p_mouse_adc_read:
+0x04e1 001914 fetch 1 ,mem_adc_read_timer 
+0x04e2 001915 increase 1 ,pdata 
+0x04e3 001916 store 1 ,mem_adc_read_timer 
+0x04e4 001917 sub pdata ,10 ,null 
+0x04e5 001918 rtn positive 
+0x04e6 001920 call adc_init_data 
+0x04e7 001922 jam 0 ,mem_adc_read_timer 
+0x04e8 001923 call adc_set_mode 
+0x04e9 001924 call vdd_calculate_by_mode 
+0x04ea 001925 store 2 ,mem_mouse_vdd_now_vol 
+0x04eb 001926 arg mem_mouse_vdd_calculate_set ,rega 
+0x04ec 001927 call p_adc_bat_percent_lowpower_out 
+0x04ed 001928 fetch 1 ,mem_adc_power_flag 
+0x04ee 001929 bbit1 1 ,app_enter_hibernate 
+0x04ef 001930 bbit0 0 ,p_mouse_adc_no_low_voltage 
+0x04f0 001931 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
+0x04f1 001932 branch mouse_adc_low_voltage 
+:      001934 p_mouse_adc_no_low_voltage:
+0x04f2 001935 call mouse_adc_no_low_voltage 
+0x04f3 001936 fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
+0x04f4 001937 rtn blank 
+0x04f5 001938 jam 0 ,mem_mouse_adc_last_low_voltage_flag 
+:      001939 p_mouse_adc_low_volatage_led_off:
+0x04f6 001940 fetch 1 ,mem_config_low_voltage_alarm_gpio 
+0x04f7 001941 store 1 ,mem_mouse_struct_led_gpio 
+0x04f8 001943 branch p_mouse_multi_led_blink_off 
+:      001959 p_adc_bat_percent_lowpower_out:
+0x04f9 001960 ifetch 8 ,rega 
+0x04fa 001961 store 8 ,mem_pdatatemp 
+0x04fb 001962 fetcht 2 ,mem_pdatatemp + 2 
+0x04fc 001963 fetch 2 ,mem_pdatatemp + 6 
+0x04fd 001964 isub temp ,null 
+0x04fe 001965 nbranch adc_set_no_power_flag ,positive 
+0x04ff 001966 fetcht 2 ,mem_pdatatemp + 4 
+0x0500 001967 isub temp ,null 
+0x0501 001968 nbranch adc_set_low_power_flag ,positive 
+:      001969 p_adc_clear_low_power_flag:
+0x0502 001970 fetch 1 ,mem_adc_power_flag 
+0x0503 001971 set0 0 ,pdata 
+0x0504 001972 store 1 ,mem_adc_power_flag 
+0x0505 001973 rtn 
+:      001975 p_mouse_low_voltage_led_timer:
+0x0506 001976 fetch 1 ,mem_low_power_led_blink_flag 
+0x0507 001977 nrtn blank 
+0x0508 001978 fetch mouse_flag_len ,mem_mouse_flag 
+0x0509 001979 rtnbit0 mouse_low_voltage_flag 
+0x050a 001980 fetch 2 ,mem_ui_state_map 
+0x050b 001981 rtnbit1 ui_state_ble_adv 
+0x050c 001982 rtnbit1 ui_state_bt_discovery 
+0x050d 001983 fetch 1 ,mem_config_low_voltage_alarm_gpio 
+0x050e 001984 store 1 ,mem_mouse_struct_led_gpio 
+0x050f 001986 setarg g24_long_sleep_step2 
+0x0510 001987 store 3 ,mem_24g_enter_hibernate 
+0x0511 001989 fetch 1 ,mem_adc_low_volatage_led_timer_count 
+0x0512 001990 pincrease 1 
+0x0513 001991 store 1 ,mem_adc_low_volatage_led_timer_count 
+0x0514 001993 beq 5 ,p_mouse_multi_led_blink_off 
+0x0515 001994 sub pdata ,10 ,null 
+0x0516 001995 nbranch p_mouse_adc_low_volatage_led_timer_count_clean ,positive 
+0x0517 001996 rtn 
+:      001997 p_mouse_adc_low_volatage_led_timer_count_clean:
+0x0518 001998 jam 1 ,mem_adc_low_volatage_led_timer_count 
+0x0519 002000 branch p_mouse_multi_led_on 
+:      002002 p_low_power_no_data_off_led_time:
+0x051a 002003 fetch 1 ,mem_low_power_check_count 
+0x051b 002004 increase 1 ,pdata 
+0x051c 002005 store 1 ,mem_low_power_check_count 
+0x051d 002006 sub pdata ,low_voltage_led_count ,null 
+0x051e 002007 rtn positive 
+:      002008 p_low_power_no_data_off_led_time_nolimited:
+0x051f 002009 jam 0 ,mem_low_power_led_blink_flag 
+0x0520 002010 jam 0x96 ,mem_low_power_no_data_off_led_time 
+0x0521 002011 rtn 
+:      002012 p_low_power_nodata_off_led_time_check:
+0x0522 002013 arg mem_low_power_no_data_off_led_time ,regc 
+0x0523 002014 arg p_mouse_check_low_power_nodata_timeout ,regb 
+0x0524 002015 branch timer_single_step 
+:      002016 p_mouse_check_low_power_nodata_timeout:
+0x0525 002017 setarg g24_long_sleep_step3 
+0x0526 002018 store 3 ,mem_24g_enter_hibernate 
+0x0527 002019 jam 1 ,mem_low_power_led_blink_flag 
+0x0528 002020 branch p_mouse_adc_low_volatage_led_off 
+:      002022 p_mouse_seting_dpi:
+:      002023 p_mouse_seting_sensor_type:
+0x0529 002024 fetch 1 ,mem_config_sensor_type 
+0x052a 002025 beq p8009 ,p_mouse_seting_8009_dpi 
+0x052b 002026 beq p3212 ,p_mouse_seting_3212_dpi 
+0x052c 002027 beq ka8 ,p_mouse_seting_ka8_dpi 
+:      002038 p_mouse_seting_3065xy_dpi:
+0x052d 002042 fetch 1 ,mem_mouse_dpi 
+0x052e 002043 beq mouse_dpi_level1 ,p_mouse_3065xy_set_cpi1 
+0x052f 002044 beq mouse_dpi_level2 ,p_mouse_3065xy_set_cpi2 
+0x0530 002045 beq mouse_dpi_level3 ,p_mouse_3065xy_set_cpi3 
+0x0531 002046 beq mouse_dpi_level4 ,p_mouse_3065xy_set_cpi4 
+0x0532 002047 rtn 
+:      002050 p_mouse_dpi_store:
+0x0533 002051 store 1 ,mem_mouse_cpi_count 
+0x0534 002052 branch mouse_p3205_dpi + 3 
+:      002053 p_mouse_3065xy_set_cpi1:
+0x0535 002054 fetch 1 ,mem_320x_dpi_1 
+0x0536 002055 branch p_mouse_dpi_store 
+:      002056 p_mouse_3065xy_set_cpi2:
+0x0537 002057 fetch 1 ,mem_320x_dpi_1 
+0x0538 002058 branch p_mouse_dpi_store 
+:      002059 p_mouse_3065xy_set_cpi3:
+0x0539 002060 fetch 1 ,mem_320x_dpi_1 
+0x053a 002061 branch p_mouse_dpi_store 
+:      002062 p_mouse_3065xy_set_cpi4:
+0x053b 002063 fetch 1 ,mem_320x_dpi_4 
+0x053c 002064 branch p_mouse_dpi_store 
+:      002066 p_mouse_3065xy_dpi_recount:
+0x053d 002067 jam mouse_dpi_level3 ,mem_mouse_dpi 
+0x053e 002068 rtn 
+:      002069 p_mouse_seting_8009_dpi:
+0x053f 002072 fetch 1 ,mem_mouse_dpi 
+0x0540 002073 beq mouse_dpi_level2 ,p_mouse_8009_set_cpi1 
+0x0541 002074 beq mouse_dpi_level4 ,mouse_set_cpi2 
+0x0542 002075 beq mouse_dpi_level3 ,mouse_set_cpi3 
+0x0543 002076 branch mouse_set_cpi1 
+:      002077 p_mouse_8009_set_cpi1:
+0x0544 002078 jam 0 ,mem_mouse_cpi_count 
+0x0545 002079 branch mouse_p3205_dpi + 3 
+:      002081 p_mouse_seting_3212_dpi:
+0x0546 002085 fetch 1 ,mem_mouse_dpi 
+0x0547 002086 beq mouse_dpi_level1 ,mouse_set_p3212_cpi1 
+0x0548 002087 beq mouse_dpi_level2 ,mouse_set_p3212_cpi2 
+0x0549 002088 beq mouse_dpi_level4 ,mouse_set_p3212_cpi4 
+0x054a 002089 branch mouse_set_p3212_cpi3 
+:      002091 p_mouse_seting_ka8_dpi:
+0x054b 002094 fetch 1 ,mem_mouse_dpi 
+0x054c 002095 beq mouse_dpi_level2 ,mouse_set_cpi2 
+0x054d 002096 beq mouse_dpi_level1 ,mouse_set_cpi1 
+0x054e 002097 beq mouse_dpi_level4 ,p_mouse_ka8_set_cpi3 
+0x054f 002098 branch mouse_set_cpi4 
+:      002099 p_mouse_ka8_set_cpi3:
+0x0550 002100 setarg 5 
+0x0551 002101 branch mouse_p3205_dpi 
+:      002103 p_mouse_3205_dpi_recount:
+0x0552 002104 jam mouse_dpi_level3 ,mem_mouse_dpi 
+0x0553 002105 rtn 
+:      002107 p_mouse_motion:
+0x0554 002108 disable user 
+0x0555 002109 setarg 0 
+0x0556 002110 store 6 ,mem_mouse_x 
+0x0557 002111 call mouse_cheak_sensor_data 
+0x0558 002112 call mouse_zwheel 
+0x0559 002113 call mouse_t_zwheel 
+0x055a 002114 call p_mouse_key 
+0x055b 002115 nbranch p_mouse_motion_nodata ,user 
+0x055c 002116 call p_drawing_optima 
+0x055d 002117 call p_low_power_no_data_off_led_time 
+0x055e 002118 branch mouse_motion + 9 
+:      002120 p_mouse_motion_nodata:
+0x055f 002121 call p_drawing_optima_init 
+0x0560 002122 jam 0 ,mem_low_power_check_count 
+0x0561 002123 rtn 
+:      002125 p_mouse_key:
+0x0562 002126 call p_mouse_check_key_gpio 
+0x0563 002127 branch mouse_key + 1 
+:      002129 p_mouse_check_key_gpio:
+0x0564 002130 arg 0 ,rega 
+0x0565 002131 call p_mouse_check_lkey_gpio 
+0x0566 002132 call p_mouse_check_rkey_gpio 
+0x0567 002133 call p_mouse_check_mkey_gpio 
+0x0568 002135 branch mouse_check_key_gpio_output 
+:      002142 p_mouse_check_lkey_gpio:
+0x0569 002143 fetcht 1 ,mem_lbutton_gpio 
+0x056a 002144 call p_gpio_set_input_pu 
+0x056b 002145 fetcht 1 ,mem_lbutton_gpio 
+0x056c 002146 call gpio_get_bit 
+0x056d 002147 setflag true ,0 ,rega 
+0x056e 002148 rtn 
+:      002149 p_mouse_check_rkey_gpio:
+0x056f 002150 fetcht 1 ,mem_rbutton_gpio 
+0x0570 002151 call p_gpio_set_input_pu 
+0x0571 002152 fetcht 1 ,mem_rbutton_gpio 
+0x0572 002153 call gpio_get_bit 
+0x0573 002154 setflag true ,1 ,rega 
+0x0574 002155 rtn 
+:      002156 p_mouse_check_mkey_gpio:
+0x0575 002157 fetcht 1 ,mem_mbutton_gpio 
+0x0576 002158 call p_gpio_set_input_pu 
+0x0577 002159 fetcht 1 ,mem_mbutton_gpio 
+0x0578 002160 call gpio_get_bit 
+0x0579 002161 setflag true ,2 ,rega 
+0x057a 002162 rtn 
+:      002178 p_gpio_set_input_pd:
+0x057b 002179 set0 gpio_active_bit ,temp 
+0x057c 002180 arg core_gpio_pu0 ,contw 
+0x057d 002181 call gpio_set_bit 
+0x057e 002182 set1 gpio_active_bit ,temp 
+:      002183 p_gpio_set_input_pd4:
+0x057f 002184 arg core_gpio_pd0 ,contw 
+0x0580 002185 call gpio_set_bit 
+0x0581 002186 set0 gpio_active_bit ,temp 
+0x0582 002187 arg core_gpio_oe0 ,contw 
+0x0583 002188 branch gpio_set_bit 
+:      002190 p_gpio_set_input_pu:
+0x0584 002191 set1 gpio_active_bit ,temp 
+:      002192 p_gpio_set_input_pu1:
+0x0585 002193 arg core_gpio_pu0 ,contw 
+0x0586 002194 call gpio_set_bit 
+0x0587 002195 set0 gpio_active_bit ,temp 
+0x0588 002196 branch p_gpio_set_input_pd4 
+:      002198 p_mouse_select_device_button_gpio_set_suspend:
+0x0589 002199 fetcht 1 ,mem_config_select_device_button_gpio 
+:      002200 p_mouse_set_gpio_suspend2:
+0x058a 002201 set0 gpio_active_bit ,temp 
+0x058b 002202 branch p_gpio_set_input_pu1 
+:      002204 p_mouse_bb_event_discovery_btn:
+0x058c 002205 call p_mouse_null_enter_hibernate_disable 
+0x058d 002206 isolate1 mark_24g ,mark 
+0x058e 002207 call p_g24_check_51cmd_stop_24g ,true 
+0x058f 002208 branch mouse_bb_event_discovery_btn + 1 
+:      002210 p_le_addr_random_config:
+0x0590 002211 jam zcode_81 ,mem_zcode_temp_param0 
+0x0591 002212 branch p_zcode_entrance 
+:      002214 p_mouse_start_discovery:
+0x0592 002215 jam zcode_50 ,mem_zcode_temp_param0 
+0x0593 002216 branch p_zcode_entrance 
+:      002218 p_mouse_load_random_addr_increase_count:
+0x0594 002219 call p_flash_release_deep_power_down 
+0x0595 002220 arg 2 ,temp 
+0x0596 002221 arg mem_random_addr_increase_count ,rega 
+0x0597 002222 arg mouse_random_addr_count_eeprom_offset ,regb 
+0x0598 002223 fetch 3 ,mem_flash_base 
+0x0599 002224 iadd regb ,pdata 
+0x059a 002225 branch spid_read_flash 
+:      002227 p_le_adv_data_update:
+0x059b 002228 arg mem_le_adv_data + 11 ,contw 
+0x059c 002229 arg 19 ,loopcnt 
+0x059d 002230 call memcpy 
+0x059e 002231 branch le_modified_name_adv 
+:      002233 p_mouse_stop_discovery:
+0x059f 002234 setarg 0 
+0x05a0 002235 store 2 ,mem_mouse_discovery_timer 
+0x05a1 002236 call p_mouse_sensor_poweron 
+0x05a2 002240 fetch 1 ,mem_device_option 
+0x05a3 002241 isolate1 mode_3_mouse ,pdata 
+0x05a4 002242 call mouse_stop_bt3_discovery ,true 
+0x05a5 002245 branch p_mouse_discovey_led_blink_off 
+:      002248 p_le_slave_match:
+0x05a6 002249 fetch 1 ,mem_le_md_count 
+0x05a7 002250 pincrease 1 
+0x05a8 002251 store 1 ,mem_le_md_count 
+0x05a9 002252 beq le_md_max_count ,le_slave_cont 
+0x05aa 002253 call le_acknowledge 
+0x05ab 002254 call le_prepare_tx 
+0x05ac 002255 call power_ctrl_start 
+0x05ad 002256 branch le_slave_match + 7 
+:      002258 p_le_next_adv_channel:
+0x05ae 002259 fetch 1 ,mem_le_ch_mapped 
+0x05af 002260 increase 1 ,pdata 
+0x05b0 002261 store 1 ,mem_le_ch_mapped 
+0x05b1 002262 rtnne 40 
+0x05b2 002263 jam 37 ,mem_le_ch_mapped 
+0x05b3 002264 rtn 
+:      002266 p_le_receive_skip:
+0x05b4 002267 call save_rssi 
+0x05b5 002268 call p_rssi_signal 
+0x05b6 002269 branch le_receive_skip + 2 
+:      002271 p_le_update_param:
+0x05b7 002272 jam zcode_40 ,mem_zcode_temp_param0 
+0x05b8 002273 branch p_zcode_entrance 
+:      002275 p_le_update_channel_map:
+0x05b9 002276 jam zcode_41 ,mem_zcode_temp_param0 
+0x05ba 002277 branch p_zcode_entrance 
+:      002279 p_le_prepare_tx:
+0x05bb 002280 fetch 1 ,mem_le_arq 
+0x05bc 002281 bbit1 wak ,p_le_prepare_tx_wak 
+0x05bd 002282 call power_ctrl_pac_succ_incrs 
+0x05be 002283 fetch 1 ,mem_empty_count 
+0x05bf 002284 nbranch p_le_send_empyt ,blank 
+0x05c0 002285 fetch 1 ,mem_le_state 
+0x05c1 002286 bbit0 lestate_encryption ,p_le_tx_4 
+0x05c2 002287 fetch 1 ,mem_le_rxbuf + 1 
+0x05c3 002288 branch p_le_tx_4 ,blank 
+0x05c4 002289 branch le_send_empty 
+:      002290 p_le_send_empyt:
+0x05c5 002291 fetch 1 ,mem_empty_count 
+0x05c6 002292 increase -1 ,pdata 
+0x05c7 002293 store 1 ,mem_empty_count 
+0x05c8 002294 branch le_send_empty 
+:      002295 p_le_tx_4:
+0x05c9 002296 fetch 1 ,mem_le_pairing_state 
+0x05ca 002297 bne flag_le_pairing_after_auth ,p_in_le_tx_4 
+0x05cb 002298 jam 3 ,mem_empty_count 
+:      002299 p_in_le_tx_4:
+0x05cc 002300 call le_fifo_check_nearly_full 
+0x05cd 002301 call p_mouse_data_pull ,blank 
+0x05ce 002302 branch le_prepare_tx + 4 
+:      002304 p_le_prepare_tx_wak:
+0x05cf 002305 call p_le_check_tx_retransmit_setmd 
+0x05d0 002306 branch p_le_power_ctrl_pac_succ_decrs 
+:      002308 p_le_check_tx_retransmit_setmd:
+0x05d1 002309 fetch 1 ,mem_le_connect_status_flag 
+0x05d2 002310 and pdata ,0x03 ,pdata 
+0x05d3 002311 rtnne 0x03 
+0x05d4 002312 fetch 1 ,mem_mouse_data_queue_num 
+0x05d5 002313 rtn blank 
+0x05d6 002314 fetch 1 ,mem_le_txlen 
+0x05d7 002315 rtn blank 
+0x05d8 002316 fetch 1 ,mem_le_txheader 
+0x05d9 002317 set1 md ,pdata 
+0x05da 002318 store 1 ,mem_le_txheader 
+0x05db 002319 call le_set_md 
+0x05dc 002320 rtn 
+:      002324 p_le_power_ctrl_pac_succ_decrs:
+0x05dd 002325 branch power_ctrl_pac_succ_decrs 
+:      002327 p_mouse_le_reconn_write_enable_timer_reinit:
+0x05de 002328 fetch 1 ,mem_mouse_le_reconnect_flag 
+0x05df 002329 rtn blank 
+0x05e0 002330 fetch 1 ,mem_le_connect_status_flag 
+0x05e1 002331 and pdata ,0x03 ,pdata 
+0x05e2 002332 rtneq 0x03 
+0x05e3 002333 jam 1 ,mem_le_start_encrypt_timer 
+0x05e4 002334 rtn 
+:      002336 p_le_parse:
+0x05e5 002337 rtnmark1 mark_old_packet 
+0x05e6 002338 call le_fifo_check_full 
+0x05e7 002339 nrtn blank 
+0x05e8 002340 fetch 1 ,mem_le_rxbuf 
+0x05e9 002341 and pdata ,0x3 ,pdata 
+0x05ea 002342 store 1 ,mem_le_packet_llid 
+0x05eb 002343 ifetch 1 ,contr 
+0x05ec 002344 and pdata ,0x1f ,pdata 
+0x05ed 002345 store 1 ,mem_le_packet_size 
+0x05ee 002346 rtn blank 
+0x05ef 002347 copy contr ,pdata 
+0x05f0 002348 store 2 ,mem_le_payload_ptr 
+0x05f1 002349 fetch 1 ,mem_le_packet_llid 
+0x05f2 002350 beq llid_le_ll ,p_le_parse_ll 
+0x05f3 002351 branch le_parse_l2cap 
+:      002352 p_le_parse_ll:
+0x05f4 002353 fetch 1 ,mem_le_rxbuf + 2 
+0x05f5 002354 beq ll_channel_map_req ,p_le_parse_channel_map_req 
+0x05f6 002355 branch le_parse_ll + 1 
+:      002356 p_le_parse_channel_map_req:
+0x05f7 002357 ifetch 5 ,contr 
+0x05f8 002358 store 5 ,mem_le_new_map 
+0x05f9 002359 ifetch 2 ,contr 
+0x05fa 002360 store 2 ,mem_le_instant 
+0x05fb 002361 branch le_parse_channel_map_req + 7 
+:      002364 p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset:
+0x05fc 002365 fetch 1 ,mem_le_new_connslavelatency 
+0x05fd 002366 store 1 ,mem_lpm_mult 
+0x05fe 002367 store 1 ,mem_lpm_mult_init 
+0x05ff 002368 rtn 
+:      002369 p_le_parse_l2cap:
+0x0600 002370 ifetch 2 ,contr 
+0x0601 002371 beq le_l2cap_cid_att ,p_le_parse_att 
+0x0602 002372 beq le_l2cap_cid_smp ,p_le_parse_smp 
+0x0603 002373 branch le_parse_l2cap + 11 
+:      002374 p_le_parse_att:
+0x0604 002375 call store_contr 
+0x0605 002376 call p_mouse_le_reconn_write_enable_timer_reinit 
+0x0606 002377 call get_contr 
+0x0607 002378 ifetch 3 ,contr 
+0x0608 002379 store 3 ,mem_le_att_opcode 
+0x0609 002380 beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
+0x060a 002381 rshift8 pdata ,temp 
+0x060b 002382 sub temp ,0x24 ,null 
+0x060c 002383 branch p_le_parse_att1 ,positive 
+0x060d 002384 arg mem_mouse_le_uuid_sup ,temp 
+0x060e 002385 storet 2 ,mem_ui_le_uuid_table 
+0x060f 002386 call le_parse_att + 2 
+0x0610 002387 setarg 0x8e7a 
+0x0611 002388 store 2 ,mem_ui_le_uuid_table 
+0x0612 002389 rtn 
+:      002391 p_le_parse_att_read_by_group_type_request:
+0x0613 002392 call le_parse_att_read_by_group_type_request 
+0x0614 002393 call le_fifo_get_last_tx_ptr 
+0x0615 002394 increase 7 ,contr 
+0x0616 002395 ifetch 1 ,contr 
+0x0617 002396 rtnne attop_read_by_group_type_response 
+0x0618 002397 increase 5 ,contr 
+0x0619 002398 ifetch 2 ,contr 
+0x061a 002399 arg uuid_service_hids ,temp 
+0x061b 002400 isub temp ,null 
+0x061c 002401 nrtn zero 
+0x061d 002402 increase -4 ,contr 
+0x061e 002403 setarg 0x2b 
+0x061f 002404 istore 2 ,contr 
+0x0620 002405 rtn 
+:      002407 p_le_parse_att1:
+0x0621 002408 beq attop_read_request ,p_le_parse_att_read_request 
+0x0622 002409 branch le_parse_att + 2 
+:      002410 p_le_parse_att_read_request:
+0x0623 002411 fetcht 2 ,mem_le_att_handle 
+0x0624 002412 fetch 1 ,mem_le_configuration 
+0x0625 002413 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+:      002414 p_le_send_att_read_response:
+0x0626 002423 fetch 2 ,mem_le_att_handle 
+0x0627 002424 beq 0x13 ,le_send_att_error_response_notfound 
+0x0628 002426 fetcht 2 ,mem_le_att_handle 
+0x0629 002427 branch le_send_att_read_response 
+:      002441 p_le_send_att_read_response_check_auth:
+0x062a 002442 fetch 2 ,mem_le_pairing_handle 
+0x062b 002443 isub temp ,null 
+0x062c 002444 nbranch p_le_send_att_read_response ,zero 
+0x062d 002445 call le_check_encrypt_state 
+0x062e 002446 nbranch p_le_send_att_read_response ,user 
+0x062f 002447 jam att_err_insufficient_authentication ,mem_le_err_code 
+0x0630 002448 branch le_send_att_error_response 
+:      002451 p_le_parse_smp:
+0x0631 002452 ifetch 1 ,contr 
+0x0632 002453 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
+0x0633 002454 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+0x0634 002455 branch le_parse_smp + 2 
+:      002457 p_le_parse_smp_pairing_request:
+0x0635 002458 jam 1 ,mem_le_send_security_request_flag 
+0x0636 002459 branch le_parse_smp_pairing_request 
+:      002461 p_le_parse_smp_pairing_failed:
+0x0637 002462 jam zcode_82 ,mem_zcode_temp_param0 
+0x0638 002463 branch p_zcode_entrance 
+:      002465 p_le_adv_not_match:
+0x0639 002466 fetch 1 ,mem_le_ch_mapped 
+0x063a 002467 bne 39 ,le_adv_loop 
+0x063b 002468 call p_le_adv_random_delay 
+0x063c 002469 arg le_adv_interval_timer ,queue 
+0x063d 002470 fetch 2 ,mem_le_adv_interval 
+0x063e 002471 branch timer_init 
+:      002472 p_le_adv_random_delay:
+0x063f 002473 random pdata 
+0x0640 002474 arg 0x1ff ,temp 
+0x0641 002475 iand temp ,pdata 
+0x0642 002476 add pdata ,250 ,pdata 
+0x0643 002477 branch delay 
+:      002479 p_le_lpm_setmult:
+0x0644 002480 disable wake 
+0x0645 002481 branch p_le_lpm_set_mult_attempt ,attempt 
+0x0646 002482 nbranch le_lpm_lost ,match 
+:      002483 p_le_lpm_set_mult_attempt:
+0x0647 002484 call lpm_match 
+0x0648 002485 fetch 2 ,mem_rx_window_sniff 
+0x0649 002486 store 2 ,mem_le_receive_window 
+0x064a 002487 fetch 1 ,mem_le_connect_status_flag 
+0x064b 002488 compare 3 ,pdata ,3 
+0x064c 002489 nbranch lpm_mult_short ,true 
+0x064d 002490 branch le_lpm_set_mult_attempt + 3 
+:      002492 p_le_mouse_bb_event_connect_complete:
+0x064e 002493 fetch 1 ,mem_mouse_le_reconnect_flag 
+0x064f 002494 nrtn blank 
+0x0650 002495 fetch 1 ,mem_le_att_handle 
+0x0651 002496 sub pdata ,26 ,pdata 
+0x0652 002497 nrtn zero 
+0x0653 002498 branch mouse_le_write_enable 
+:      002500 p_twspi_reset:
+0x0654 002501 hfetch 1 ,core_gpio_out3 
+0x0655 002502 and_into 0xfd ,pdata 
+0x0656 002503 hstore 1 ,core_gpio_out3 
+0x0657 002504 hfetcht 1 ,core_gpio_oe3 
+0x0658 002505 or_into 0x2 ,temp 
+0x0659 002506 hstoret 1 ,core_gpio_oe3 
+0x065a 002507 call twspi_disable 
+0x065b 002508 and_into 0xfd ,temp 
+0x065c 002509 nop 13 
+0x065d 002510 call p_twspi_enable 
+0x065e 002511 hstoret 1 ,core_gpio_oe3 
+0x065f 002512 rtn 
+:      002514 p_spid_init:
+0x0660 002515 call spid_init_common 
+:      002516 p_twspi_enable:
+0x0661 002517 hfetch 1 ,core_gpio_sel1 
+0x0662 002518 set1 0 ,pdata 
+0x0663 002519 set0 1 ,pdata 
+0x0664 002520 set0 3 ,pdata 
+0x0665 002521 hstore 1 ,core_gpio_sel1 
+0x0666 002522 rtn 
+:      002525 p_page_wait_fhs_reply_ok:
+0x0667 002526 jam zcode_00 ,mem_zcode_temp_param0 
+0x0668 002527 branch p_zcode_entrance 
+:      002529 p_role_switch_master:
+0x0669 002530 call role_switch_check 
+0x066a 002531 nrtn user 
+:      002532 p_wait_role_switch_anchor:
+0x066b 002533 disable user 
+0x066c 002534 jam param_newconnto ,mem_newconnto_counter 
+0x066d 002535 set0 mark_fhs_already_good ,mark 
+0x066e 002536 set0 mark_role_switch_receive_fhs ,mark 
+:      002537 p_roles_waitfhs_loop:
+0x066f 002538 call rf_setup_time_master_slot 
+0x0670 002539 call master_recv_packet 
+0x0671 002540 bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
+0x0672 002541 call new_conn_timeout 
+0x0673 002542 nbranch p_roles_waitfhs_loop ,blank 
+0x0674 002543 bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
+0x0675 002544 branch role_switch_fail_master 
+:      002546 p_roles_replyto_fhs:
+0x0676 002547 call rf_setup_time_slave_slot 
+0x0677 002548 arg type_id ,type 
+0x0678 002549 call master_send_packet 
+0x0679 002550 set1 mark_role_switch_receive_fhs ,mark 
+0x067a 002551 set0 mark_fhs_already_good ,mark 
+0x067b 002552 fetch 1 ,mem_amaddr 
+0x067c 002553 iforce am_addr 
+0x067d 002554 jam 2 ,mem_newconnto_counter 
+0x067e 002555 branch p_roles_waitfhs_loop 
+:      002557 p_roles_replyto_fhs1:
+0x067f 002558 fetch 4 ,mem_clke_bt 
+0x0680 002559 pincrease 8 
+0x0681 002560 store 4 ,mem_clke_bt 
+0x0682 002561 branch roles_replyto_fhs + 4 
+:      002563 p_process_dmh:
+0x0683 002564 bmark1 mark_first_packet ,end_of_packet 
+0x0684 002565 branch process_dmh + 1 
+:      002567 p_quit_connection_cont:
+0x0685 002568 call app_disconn_reason_collect_bt 
+0x0686 002569 call sniff_exit 
+0x0687 002570 jam bt_evt_bb_disconnected ,mem_fifo_temp 
+0x0688 002571 call ui_ipc_send_event 
+0x0689 002572 call init_lmp_work 
+0x068a 002573 call l2cap_init_work 
+0x068b 002574 branch quit_connection_cont + 8 
+:      002576 p_prepare_tx:
+0x068c 002577 fetch 1 ,mem_state 
+0x068d 002578 isolate1 state_inconn ,pdata 
+0x068e 002579 call p_bt_power_ctrl ,true 
+0x068f 002580 branch prepare_tx + 1 
+:      002581 p_bt_power_ctrl:
+0x0690 002582 fetch 1 ,mem_arq 
+0x0691 002583 isolate1 wack ,pdata 
+0x0692 002584 call power_ctrl_pac_succ_decrs ,true 
+0x0693 002585 ncall power_ctrl_pac_succ_incrs ,true 
+0x0694 002586 branch power_ctrl_start 
+:      002588 p_slave_conn_recv_packet:
+0x0695 002589 call slave_receive_master_slot 
+0x0696 002590 nbranch shutdown_radio ,sync 
+0x0697 002591 call save_rssi 
+0x0698 002592 call p_rssi_signal 
+0x0699 002593 branch slave_conn_recv_packet + 4 
+:      002595 p_lpm_dispatch:
+0x069a 002596 rtnmark1 mark_24g 
+0x069b 002597 call lpo_calibration 
+0x069c 002598 fetch 3 ,mem_clks_per_lpo 
+0x069d 002599 rtn blank 
+0x069e 002600 fetch 1 ,mem_lpm_mode 
+0x069f 002601 rtn blank 
+0x06a0 002602 fetch 1 ,mem_ssp_enable 
+0x06a1 002603 branch p_lpm_dispatch_next ,blank 
+0x06a2 002604 fetch 1 ,mem_sp_local_key_invalid 
+0x06a3 002605 rtn blank 
+:      002606 p_lpm_dispatch_next:
+0x06a4 002607 fetch 1 ,mem_le_sc_calc 
+0x06a5 002608 nrtn blank 
+0x06a6 002609 call lpm_check_wake_lock 
+0x06a7 002610 nrtn blank 
+0x06a8 002611 fetch 1 ,mem_context 
+0x06a9 002612 compare 3 ,pdata ,0x7 
+0x06aa 002613 nbranch lpm_dispatch_unconn ,true 
+0x06ab 002614 fetch 2 ,mem_context + coffset_tsniff 
+0x06ac 002615 arg 0xffff ,temp 
+0x06ad 002616 isub temp ,null 
+0x06ae 002617 rtn zero 
+0x06af 002618 branch lpm_dispatch_next + 9 
+:      002620 p_lpm_set_mult:
+0x06b0 002621 disable wake 
+0x06b1 002622 fetch 1 ,mem_state 
+0x06b2 002623 rtnbit0 state_insniff 
+0x06b3 002624 nbranch lpm_not_match ,match 
+0x06b4 002625 call lpm_match 
+0x06b5 002626 fetch 2 ,mem_rx_window_sniff 
+0x06b6 002627 store 2 ,mem_rx_window 
+0x06b7 002628 fetch 1 ,mem_arq 
+0x06b8 002629 bbit1 wack ,lpm_mult_short 
+0x06b9 002630 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0x06ba 002631 call l2cap_malloc_is_fifo_empty 
+0x06bb 002632 nbranch lpm_mult_short ,blank 
+0x06bc 002633 call p_lpm_set_attemp_timeout ,blank 
+0x06bd 002634 branch lpm_set_mult + 13 
+:      002635 p_lpm_set_attemp_timeout:
+0x06be 002636 jam 1 ,mem_current_sniff_attempt 
+0x06bf 002637 jam 0 ,mem_current_sniff_timeout 
+0x06c0 002638 rtn 
+:      002640 p_mouse_bb_disconnected:
+0x06c1 002641 jam zcode_10 ,mem_zcode_temp_param0 
+0x06c2 002642 branch p_zcode_entrance 
+:      002644 p_hid_rx_process:
+0x06c3 002645 jam zcode_11 ,mem_zcode_temp_param0 
+0x06c4 002646 branch p_zcode_entrance 
+:      002648 p_parse_lmp_accepted:
+0x06c5 002649 fetch 1 ,mem_rxbuf + 1 
+0x06c6 002650 store 1 ,mem_lmi_accepted_opcode 
+0x06c7 002651 beq lmp_switch_req ,p_parse_lmp_accepted_switch 
+0x06c8 002652 branch parse_lmp_accepted + 3 
+:      002653 p_parse_lmp_accepted_switch:
+0x06c9 002654 call parse_lmp_accepted_switch 
+0x06ca 002655 jam 1 ,mem_bt_rcvd_switch_req_accept 
+0x06cb 002656 fetch 1 ,mem_bt_send_lmp_setup_complete 
+0x06cc 002657 rtn blank 
+0x06cd 002658 jam 2 ,mem_bt_send_lmp_setup_complete 
+0x06ce 002659 rtn 
+:      002661 p_send_lmp:
+0x06cf 002662 jam zcode_20 ,mem_zcode_temp_param0 
+0x06d0 002663 branch p_zcode_entrance 
+:      002665 p_process_conn_sm:
+0x06d1 002666 call lmo_fifo_check 
+0x06d2 002667 nrtn blank 
+:      002668 p_process_conn_sm_continue:
+0x06d3 002669 fetch 1 ,mem_conn_sm 
+0x06d4 002670 rtn blank 
+0x06d5 002671 beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
+0x06d6 002672 beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
+0x06d7 002673 branch process_conn_sm_continue + 2 
+:      002675 p_host_creat_conn_wait_switch:
+0x06d8 002676 fetch 1 ,mem_switch_flag 
+0x06d9 002677 rtneq switch_flag_init 
+0x06da 002678 beq switch_flag_accept ,p_host_create_conn_switch_accept 
+0x06db 002679 branch host_creat_conn_wait_switch + 3 
+:      002680 p_host_create_conn_switch_accept:
+0x06dc 002681 rtn master 
+:      002682 p_host_create_conn_auth_pair:
+0x06dd 002684 fetch 1 ,mem_connection_options 
+0x06de 002685 bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
+0x06df 002686 branch host_create_conn_auth_pair + 1 
+:      002687 p_host_create_conn_auth_pair_true:
+0x06e0 002688 fetch 1 ,mem_bt_send_lmp_setup_complete 
+0x06e1 002689 beq 1 ,host_create_conn_auth_pair_true 
+0x06e2 002691 fetch 1 ,mem_link_key_exists 
+0x06e3 002692 branch host_create_conn_auth_pair_nokey ,blank 
+0x06e4 002693 fetch 1 ,mem_lmp_conn_state 
+0x06e5 002694 rtnbit0 sent_setup_complete 
+0x06e6 002695 rtnbit0 received_setup_complete 
+0x06e7 002696 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+0x06e8 002697 rtn blank 
+0x06e9 002698 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
+0x06ea 002699 fetch 4 ,mem_aurand_send_delay_time 
+0x06eb 002700 arg 20 ,temp 
+0x06ec 002701 iadd temp ,temp 
+0x06ed 002702 copy clkn_bt ,pdata 
+0x06ee 002703 isub temp ,null 
+0x06ef 002704 nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
+0x06f0 002705 branch host_create_conn_auth 
+:      002707 p_bt_send_max_slot_req_accept_after_switch_wait:
+0x06f1 002708 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+0x06f2 002709 rtn 
+:      002711 p_host_create_conn_send_conn_req:
+0x06f3 002712 jam 20 ,mem_mouse_send_switch_req_timer 
+0x06f4 002713 branch host_create_conn_send_conn_req 
+:      002719 p_check_51cmd_once_continue:
+0x06f5 002720 call lmo_fifo_check 
+0x06f6 002721 nbranch check_51cmd_restore ,blank 
+0x06f7 002722 fetch 1 ,mem_fifo_temp 
+0x06f8 002723 bmark0 mark_context ,check_51cmd_check_idle 
+0x06f9 002724 beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
+0x06fa 002725 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
+0x06fb 002726 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+0x06fc 002727 branch check_51cmd_once_continue + 2 
+:      002729 p_flash_store_le_reconn_info:
+0x06fd 002730 jam rec_4_mode ,mem_record_bt_mode 
+0x06fe 002731 fetch 6 ,mem_le_plap 
+0x06ff 002732 branch p_flash_store_reconn_info 
+:      002733 p_flash_store_bd_reconn_info:
+0x0700 002734 jam rec_3_mode ,mem_record_bt_mode 
+0x0701 002735 fetch 6 ,mem_plap 
+:      002736 p_flash_store_reconn_info:
+0x0702 002737 store 6 ,mem_temp_lap 
+:      002738 p_mouse_store_remote_bdaddr:
+0x0703 002739 fetch mouse_flag_len ,mem_mouse_flag 
+0x0704 002740 rtnbit0 mouse_store_eeprom_flag 
+0x0705 002741 arg mouse_store_eeprom_flag ,queue 
+0x0706 002742 call mouse_disable_function_flag 
+0x0707 002743 call mouse_check_device_addr 
+:      002744 p_mouse_unplug_clean_bdaddr:
+0x0708 002745 call mouse_before_store_reconn_info 
+0x0709 002746 branch p_mouse_store_flash_device_info 
+:      002748 p_check_51cmd_ble_update_connect_param:
+0x070a 002749 call le_fifo_check_full 
+0x070b 002750 nrtn blank 
+0x070c 002751 branch le_l2cap_tx_update_req 
+:      002753 power_ctrl_pac_succ_cnt_init:
+0x070d 002754 jam 1 ,mem_power_ctrl_level 
+0x070e 002755 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0x070f 002756 rtn 
+:      002757 power_ctrl_pac_succ_incrs:
+0x0710 002758 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0711 002759 increase 1 ,pdata 
+0x0712 002760 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0713 002761 rtn 
+:      002762 power_ctrl_pac_succ_decrs:
+0x0714 002763 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0715 002764 sub pdata ,2 ,null 
+0x0716 002765 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+0x0717 002766 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0718 002767 rtneq 0 
+0x0719 002768 increase -1 ,pdata 
+0x071a 002769 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0x071b 002770 rtn 
+:      002771 power_ctrl_pac_succ_cnt_reinit:
+0x071c 002772 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+0x071d 002773 rtn 
+:      002775 power_ctrl_start:
+0x071e 002776 fetch 2 ,mem_ui_state_map 
+0x071f 002777 rtnbit1 ui_state_ble_adv 
+0x0720 002778 rtnbit1 ui_state_bt_reconnect 
+0x0721 002779 rtnbit1 ui_state_bt_discovery 
+0x0722 002781 arg mem_rssi_signal_buf ,rega 
+0x0723 002782 call p_rssi_average 
+0x0724 002783 storet 1 ,mem_rssi_avg_received 
+0x0725 002785 setarg rssi_dis_max_24g 
+0x0726 002786 bmark1 mark_24g ,power_ctrl_start_next 
+0x0727 002787 setarg rssi_dis_max_ble 
+:      002788 power_ctrl_start_next:
+0x0728 002789 isub temp ,null 
+0x0729 002790 nbranch power_ctrl_txpower_incrs_force ,positive 
+0x072a 002792 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x072b 002793 sub pdata ,2 ,null 
+0x072c 002794 nbranch power_ctrl_txpower_decrs_check ,positive 
+0x072d 002795 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x072e 002796 beq 0 ,power_ctrl_txpower_incrs 
+0x072f 002797 rtn 
+:      002799 power_ctrl_txpower_decrs_check:
+0x0730 002800 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0731 002801 rtnne 32 
+0x0732 002802 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+:      002803 power_ctrl_txpower_decrs:
+0x0733 002804 fetcht 1 ,mem_rssi_avg_received 
+0x0734 002805 setarg rssi_dis_min_24g 
+0x0735 002806 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+0x0736 002807 setarg rssi_dis_min_ble 
+:      002808 power_ctrl_txpower_decrs_next:
+0x0737 002809 isub temp ,null 
+0x0738 002810 nrtn positive 
+0x0739 002811 fetch 1 ,mem_power_ctrl_level 
+0x073a 002812 beq 0 ,power_ctrl_decrs_level0 
+0x073b 002813 increase -1 ,pdata 
+0x073c 002814 store 1 ,mem_power_ctrl_level 
+0x073d 002815 beq 0 ,power_ctrl_decrs_level0 
+:      002816 power_ctrl_decrs_level1:
+:      002817 power_ctrl_incrs_level1:
+0x073e 002818 jam tx_power_0db ,mem_tx_power 
+0x073f 002819 rtn 
+:      002821 power_ctrl_txpower_incrs_force:
+0x0740 002822 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+:      002823 power_ctrl_txpower_incrs:
+0x0741 002824 fetch 1 ,mem_power_ctrl_level 
+0x0742 002825 beq 2 ,power_ctrl_incrs_level2 
+0x0743 002826 increase 1 ,pdata 
+0x0744 002827 store 1 ,mem_power_ctrl_level 
+0x0745 002828 beq 1 ,power_ctrl_incrs_level1 
+:      002829 power_ctrl_incrs_level2:
+0x0746 002830 jam tx_power_5db ,mem_tx_power 
+0x0747 002831 rtn 
+:      002833 power_ctrl_decrs_level0:
+0x0748 002834 jam tx_power_f5db ,mem_tx_power 
+0x0749 002835 rtn 
+:      002838 p_set_freq_tx:
+0x074a 002839 storet 1 ,mem_last_freq 
+0x074b 002840 add temp ,0 ,rega 
+0x074c 002841 call rf_write_freq 
+0x074d 002842 setarg param_pll_setup 
+0x074e 002843 call sleep 
+:      002844 p_rf_tx_enable:
+0x074f 002845 jam 0x1 ,rfen_adc 
+0x0750 002846 jam 0x3c ,rfen_rx 
+0x0751 002847 jam 0xe0 ,rfen_tx 
+0x0752 002848 nop 10 
+0x0753 002849 jam 0x01 ,rfen_mdm 
+0x0754 002850 jam 0x3d ,rfen_mdm 
+0x0755 002851 nop 10 
+0x0756 002852 jam 0xb7 ,rfen_sn 
+0x0757 002853 nop 10 
+0x0758 002854 jam 0x7d ,rfen_mdm 
+0x0759 002855 fetch 1 ,mem_tx_power 
+0x075a 002858 beq tx_power_5db ,p_set_tx_power_5db 
+0x075b 002860 beq tx_power_f5db ,p_set_tx_power_f5db 
+0x075c 002861 beq tx_power_pair ,p_set_tx_power_pair 
+:      002863 p_set_tx_power_0db:
+0x075d 002864 call p_rx_low_sens 
+0x075e 002866 jam 0xd0 ,0x8955 
+0x075f 002867 jam 0xe0 ,0x8956 
+0x0760 002869 jam 0x6c ,0x8958 
+0x0761 002871 branch set_tx_power_0db 
+:      002883 p_set_tx_power_5db:
+0x0762 002884 call p_rx_high_sens 
+0x0763 002886 jam 0xd0 ,0x8955 
+0x0764 002887 jam 0xe0 ,0x8956 
+0x0765 002889 jam 0x3c ,0x8958 
+0x0766 002891 branch set_tx_power_5db 
+:      002903 p_set_tx_power_f5db:
+0x0767 002904 call p_rx_low_sens 
+0x0768 002906 jam 0xd0 ,0x8955 
+0x0769 002907 jam 0xc0 ,0x8956 
+0x076a 002909 jam 0x6c ,0x8958 
+0x076b 002911 branch set_tx_power_f5db 
+:      002913 p_rx_low_sens:
+0x076c 002914 jam 0x5b ,0x894c 
+0x076d 002915 jam 0x96 ,0x894d 
+0x076e 002916 jam 0x2c ,0x894e 
+0x076f 002917 jam 0x46 ,0x894f 
+0x0770 002918 rtn 
+:      002920 p_rx_high_sens:
+0x0771 002921 jam 0xfb ,0x894c 
+0x0772 002922 jam 0xef ,0x894d 
+0x0773 002923 jam 0xec ,0x894e 
+0x0774 002924 jam 0x5e ,0x894f 
+0x0775 002925 rtn 
+:      002927 p_set_tx_power_pair:
+0x0776 002929 jam 0xc2 ,0x8956 
+0x0777 002930 jam 0xd0 ,0x8955 
+0x0778 002931 rtn 
+:      002933 p_shutdown_radio:
+0x0779 002934 force 8 ,radio_ctrl 
+0x077a 002935 branch shutdown_radio + 1 
+:      002939 p_zcode_entrance:
+0x077b 002940 fetcht 1 ,mem_zcode_temp_param0 
+0x077c 002941 rshift4 temp ,temp 
+0x077d 002942 fetch 1 ,mem_zcode_current_number 
+0x077e 002943 isub temp ,null 
+0x077f 002944 branch p_zcode_run ,zero 
+0x0780 002945 storet 1 ,mem_zcode_current_number 
+0x0781 002946 increase 1 ,temp 
+0x0782 002947 setarg zcode_buff_size 
+0x0783 002948 imul32 temp ,temp 
+0x0784 002949 fetch 3 ,mem_xip_flash_offset 
+0x0785 002950 isub temp ,pdata 
+0x0786 002952 fetcht 3 ,mem_flash_start_addr 
+0x0787 002953 iadd temp ,pdata 
+0x0788 002954 increase -5 ,pdata 
+0x0789 002955 store 3 ,mem_flash_address 
+0x078a 002957 call p_flash_release_deep_power_down 
+:      002958 p_zcode_read_loop:
+0x078b 002959 fetch 3 ,mem_flash_address 
+0x078c 002960 arg zcode_buff_size ,temp 
+0x078d 002961 arg mem_zcode_buff ,rega 
+0x078e 002962 call spid_read_flash 
+0x078f 002963 fetch 4 ,mem_zcode_buff 
+0x0790 002964 branch p_zcode_read_loop ,blank 
+0x0791 002965 call p_mouse_spi_init 
+0x0792 002967 setarg mem_zcode_buff 
+0x0793 002968 store 2 ,mem_patch_ptr 
+0x0794 002969 jam zcode_code_size ,mem_patch_len 
+0x0795 002970 call load_ucode 
+0x0796 002971 setarg 0 
+0x0797 002972 store 4 ,mem_patch_ptr 
+:      002973 p_zcode_run:
+0x0798 002974 fetch 1 ,mem_zcode_temp_param0 
+0x0799 002975 branch p_zcode 
+:      002982 p_drawing_optima_init:
+0x079a 002983 arg 5 ,loopcnt 
+0x079b 002984 arg mem_mouse_asm_flag ,contw 
+0x079c 002985 branch clear_mem 
+:      002987 p_drawing_optima:
+0x079d 002988 fetch 4 ,mem_mouse_x 
+0x079e 002989 rtn blank 
+0x079f 002990 call p_data_abs_check 
+0x07a0 002991 setarg 0x06 
+0x07a1 002992 call p_data_greater_than_check 
+0x07a2 002993 setarg 0x03 
+0x07a3 002994 call p_data_less_than_check 
+0x07a4 002995 fetch 1 ,mem_mouse_asm_flag 
+0x07a5 002996 beq 1 ,p_drawing_optima_modify 
+0x07a6 002997 branch p_drawing_optima_init 
+:      002999 p_drawing_optima_modify:
+0x07a7 003000 fetch 2 ,mem_mouse_x_pre 
+0x07a8 003001 store 2 ,mem_data_pre 
+0x07a9 003002 fetch 2 ,mem_mouse_x 
+0x07aa 003003 store 2 ,mem_data_current 
+0x07ab 003004 call p_drawing_optima_data 
+0x07ac 003005 fetch 2 ,mem_data_pre 
+0x07ad 003006 store 2 ,mem_mouse_x_pre 
+0x07ae 003007 fetch 2 ,mem_data_current 
+0x07af 003008 store 2 ,mem_mouse_x 
+0x07b0 003010 fetch 2 ,mem_mouse_y_pre 
+0x07b1 003011 store 2 ,mem_data_pre 
+0x07b2 003012 fetch 2 ,mem_mouse_y 
+0x07b3 003013 store 2 ,mem_data_current 
+0x07b4 003014 call p_drawing_optima_data 
+0x07b5 003015 fetch 2 ,mem_data_pre 
+0x07b6 003016 store 2 ,mem_mouse_y_pre 
+0x07b7 003017 fetch 2 ,mem_data_current 
+0x07b8 003018 store 2 ,mem_mouse_y 
+0x07b9 003019 rtn 
+:      003025 p_drawing_optima_data:
+0x07ba 003026 fetch 2 ,mem_data_pre 
+0x07bb 003027 fetcht 2 ,mem_data_current 
+0x07bc 003028 iadd temp ,pdata 
+0x07bd 003029 store 3 ,mem_data_sum 
+0x07be 003030 isolate1 16 ,pdata 
+0x07bf 003031 branch p_data_sum_overflow ,true 
+0x07c0 003032 fetch 1 ,mem_data_sum + 1 
+0x07c1 003033 beq 0xff ,p_data_sum_n 
+0x07c2 003034 fetch 1 ,mem_data_sum 
+:      003035 p_data_store_pre:
+0x07c3 003036 rshift pdata ,pdata 
+0x07c4 003037 store 2 ,mem_data_pre 
+0x07c5 003038 store 2 ,mem_data_current 
+0x07c6 003039 rtn 
+:      003040 p_data_sum_overflow:
+0x07c7 003041 fetch 1 ,mem_data_sum + 1 
+0x07c8 003042 beq 0 ,p_data_sum_overflow_p 
+0x07c9 003043 fetch 3 ,mem_data_sum 
+0x07ca 003044 branch p_data_store_pre 
+:      003045 p_data_sum_overflow_p:
+0x07cb 003046 jam 0 ,mem_data_sum + 2 
+0x07cc 003047 fetch 1 ,mem_data_sum 
+0x07cd 003048 branch p_data_store_pre 
+:      003050 p_data_sum_n:
+0x07ce 003051 fetch 1 ,mem_data_sum 
+0x07cf 003052 call p_pdata_get_half 
+0x07d0 003053 store 1 ,mem_data_pre 
+0x07d1 003054 store 1 ,mem_data_current 
+0x07d2 003055 branch p_data_zero ,blank 
+0x07d3 003056 setarg 0xff 
+:      003057 p_data_set_direction:
+0x07d4 003058 store 1 ,mem_data_pre + 1 
+0x07d5 003059 store 1 ,mem_data_current + 1 
+0x07d6 003060 rtn 
+:      003061 p_data_zero:
+0x07d7 003062 setarg 0 
+0x07d8 003063 branch p_data_set_direction 
+:      003065 p_pdata_get_half:
+0x07d9 003066 sub pdata ,0 ,pdata 
+0x07da 003067 store 1 ,mem_rega 
+0x07db 003068 fetch 1 ,mem_rega 
+0x07dc 003069 rshift pdata ,pdata 
+0x07dd 003070 store 1 ,mem_rega 
+0x07de 003071 fetch 1 ,mem_rega 
+0x07df 003072 sub pdata ,0 ,pdata 
+0x07e0 003073 rtn 
+:      003076 p_data_greater_than_check:
+0x07e1 003077 isub rega ,null 
+0x07e2 003078 nbranch p_enable_asm ,positive 
+0x07e3 003079 isub regb ,null 
+0x07e4 003080 nbranch p_enable_asm ,positive 
+:      003081 p_disable_asm:
+0x07e5 003082 jam 0 ,mem_mouse_asm_flag 
+0x07e6 003083 rtn 
+:      003084 p_data_less_than_check:
+0x07e7 003085 isub rega ,null 
+0x07e8 003086 nrtn positive 
+0x07e9 003087 isub regb ,null 
+0x07ea 003088 nrtn positive 
+0x07eb 003089 branch p_disable_asm 
+:      003090 p_enable_asm:
+0x07ec 003091 jam 1 ,mem_mouse_asm_flag 
+0x07ed 003092 rtn 
+:      003094 p_data_abs_check:
+0x07ee 003095 fetch 2 ,mem_mouse_x 
+0x07ef 003096 store 2 ,mem_data_current 
+0x07f0 003097 call p_data_abs 
+0x07f1 003098 copy pdata ,rega 
+0x07f2 003099 fetch 2 ,mem_mouse_y 
+0x07f3 003100 store 2 ,mem_data_current 
+0x07f4 003101 call p_data_abs 
+0x07f5 003102 copy pdata ,regb 
+0x07f6 003103 rtn 
+:      003109 p_data_abs:
+0x07f7 003110 fetch 1 ,mem_data_current + 1 
+0x07f8 003111 beq 0xff ,p_data_reversal 
+0x07f9 003112 fetch 1 ,mem_data_current 
+:      003113 p_data_abs_store:
+0x07fa 003114 and_into 0xff ,pdata 
+0x07fb 003116 rtn 
+:      003117 p_data_reversal:
+0x07fc 003118 fetch 2 ,mem_data_current 
+0x07fd 003119 sub pdata ,0 ,pdata 
+0x07fe 003120 branch p_data_abs_store 
               org 0x2000
-:      003032 start:
-0x2000 003033 call lpmstate 
-:      003035 soft_reset:
-0x2001 003036 bpatch patch00_0 ,mem_patch00 
-0x2002 003037 clear_stack 
-0x2003 003038 call spi_ncs_gpio_init 
-0x2004 003039 call initialize_radio 
-0x2005 003040 call iicd_init_12m 
-0x2006 003041 call init_param 
-0x2007 003042 call l2cap_init 
-0x2008 003043 bpatch patch00_1 ,mem_patch00 
-0x2009 003044 call rfcomm_init 
-0x200a 003045 call init_lmp 
-0x200b 003046 call ui_init 
-0x200c 003047 call app_init 
-0x200d 003048 ncall load_chip_option ,wake 
-0x200e 003049 bpatch patch00_2 ,mem_patch00 
-0x200f 003050 call app_lpm_init ,wake 
-0x2010 003051 call publickey_init 
-0x2011 003052 call lpm_recover_clk ,wake 
-:      003053 main_loop:
-0x2012 003054 bpatch patch00_3 ,mem_patch00 
-0x2013 003055 call sp_calc_sequence 
-0x2014 003056 call sp_calc_sequence_256 
-0x2015 003057 call sp_calc_sequence_256_check 
-0x2016 003058 call le_dispatch 
-0x2017 003059 bpatch patch00_4 ,mem_patch00 
-0x2018 003060 call idle_dispatch 
-0x2019 003061 call app_process_idle 
-0x201a 003062 call inquiry_dispatch 
-0x201b 003063 call inquiry_scan_dispatch 
-0x201c 003064 call page_scan_dispatch 
-0x201d 003065 call connection_dispatch 
-0x201e 003066 call lpm_dispatch 
-0x201f 003067 call g24_dispatch 
-0x2020 003068 branch main_loop 
-:      003070 connection_dispatch:
-0x2021 003071 call connection_incontext 
-0x2022 003072 rtnmark0 mark_context 
-0x2023 003073 set0 mark_context ,mark 
-0x2024 003074 call context_save 
-0x2025 003075 branch le_disable 
-:      003077 connection_incontext:
-0x2026 003078 bpatch patch00_5 ,mem_patch00 
-0x2027 003079 call context_search_insniff 
-0x2028 003080 nbranch connection_nosniff ,zero 
-0x2029 003081 call context_load 
-0x202a 003082 add rega ,coffset_mode ,contr 
-0x202b 003083 ifetch 1 ,contr 
-0x202c 003084 bbit1 mode_le ,le_conn_dispatch 
-0x202d 003085 bbit1 mode_master ,master_dispatch 
-0x202e 003086 branch slave_dispatch 
-:      003087 connection_nosniff:
-0x202f 003088 call context_get_next 
-0x2030 003089 copy loopcnt ,null 
-0x2031 003090 rtn zero 
-0x2032 003091 call context_load 
-0x2033 003092 fetch 1 ,mem_state 
-0x2034 003093 bbit1 state_inpage ,master_page 
-0x2035 003094 fetch 1 ,mem_mode 
-0x2036 003095 bbit1 mode_master ,master_dispatch 
-0x2037 003096 branch slave_dispatch 
-:      003104 idle_dispatch:
-0x2038 003105 fetch 1 ,mem_hci_cmd 
-0x2039 003106 rtn blank 
-0x203a 003107 beq hci_cmd_inquiry ,idle_inquiry 
-0x203b 003108 beq hci_cmd_inquiry_cancel ,idle_inquiry_cancel 
-0x203c 003109 beq hci_cmd_remote_name_req ,idle_remote_name_req 
-0x203d 003110 beq hci_cmd_create_conn ,idle_create_conn 
-0x203e 003111 beq hci_cmd_le_create_conn ,idle_le_create_conn 
-0x203f 003112 call context_search_conn_handle 
-0x2040 003113 rtn zero 
-0x2041 003114 call context_search_plap 
-0x2042 003115 rtn zero 
-:      003116 idle_exit:
-0x2043 003117 jam 0 ,mem_hci_cmd 
-0x2044 003118 rtn 
-:      003120 idle_le_create_conn:
-0x2045 003121 jam hci_cmd_le_create_conn ,mem_cmd_le_create_conn 
-0x2046 003122 jam 0 ,mem_hci_cmd 
-0x2047 003123 rtn 
-:      003125 idle_inquiry:
-0x2048 003126 set1 mark_inquiry_on ,mark 
-0x2049 003127 set0 mark_inquiry_trainb ,mark 
-0x204a 003128 jam param_ninquiry ,mem_ninqy_index 
-0x204b 003129 jam 31 ,mem_nfreq_index_inq 
-0x204c 003130 branch idle_exit 
-:      003132 idle_inquiry_cancel:
-0x204d 003133 set0 mark_inquiry_on ,mark 
-0x204e 003134 force 0 ,stop_watch 
-0x204f 003135 branch idle_exit 
-:      003137 idle_remote_name_req:
-0x2050 003138 call context_search_plap 
-0x2051 003139 rtn zero 
-0x2052 003140 force lmp_name_req ,temp 
-0x2053 003141 jam 5 ,mem_nameres_cnt 
-0x2054 003142 branch idle_start_page 
-:      003144 idle_create_conn:
-0x2055 003145 bpatch patch00_6 ,mem_patch00 
-:      003146 idle_create_conn_device:
-0x2056 003147 fetch 6 ,mem_hci_plap 
-0x2057 003148 branch idle_exit ,blank 
-0x2058 003149 jam reconnect_hid ,memui_reconnect_mode 
-0x2059 003151 jam conn_sm_wait_features_res ,mem_conn_sm 
-0x205a 003152 branch idle_create_conn_cont 
-:      003154 idle_create_conn_cont:
-0x205b 003155 force lmp_version_req ,temp 
-:      003156 idle_start_page:
-0x205c 003157 bpatch patch00_7 ,mem_patch00 
-0x205d 003158 fetch 1 ,mem_page_mode 
-0x205e 003159 branch idle_page_mode_r0 ,blank 
-0x205f 003160 lshift3 pdata ,pdata 
-0x2060 003161 lshift4 pdata ,pdata 
-0x2061 003162 increase -1 ,pdata 
-:      003163 idle_page_mode_r0:
-0x2062 003164 store 1 ,mem_npage 
-0x2063 003165 store 1 ,mem_npage_index 
-0x2064 003166 jam 31 ,mem_nfreq_index_page 
-0x2065 003167 set0 mark_page_trainb ,mark 
-0x2066 003168 call context_new 
-0x2067 003169 nbranch idle_page_fail ,zero 
-0x2068 003170 call get_free_amaddr 
-0x2069 003171 store 1 ,mem_amaddr 
-0x206a 003172 storet 1 ,mem_lmo_opcode2 
-0x206b 003173 fetch 6 ,mem_hci_plap 
-0x206c 003174 store 6 ,mem_plap 
-0x206d 003175 bpatch patch01_0 ,mem_patch01 
-0x206e 003176 call timer_reinit 
-0x206f 003177 force 0 ,pdata 
-0x2070 003178 compare lmp_name_req ,temp ,0xff 
-0x2071 003179 nsetflag true ,state_init_seq ,pdata 
-0x2072 003180 set1 state_inpage ,pdata 
-0x2073 003181 store 1 ,mem_state 
-0x2074 003182 jam bt_evt_reconn_started ,mem_fifo_temp 
-0x2075 003183 call ui_ipc_send_event 
-0x2076 003184 force 0 ,pdata 
-0x2077 003185 setflag true ,smap_name_req ,pdata 
-0x2078 003186 store 1 ,mem_state_map 
-0x2079 003187 setarg 0 
-0x207a 003188 set1 mode_master ,pdata 
-0x207b 003189 store 1 ,mem_mode 
-0x207c 003190 enable master 
-0x207d 003191 call context_save 
-0x207e 003192 disable master 
-0x207f 003193 force page_length_timer ,queue 
-0x2080 003194 fetch 2 ,mem_page_to 
-0x2081 003195 call timer_init 
-0x2082 003196 branch idle_exit 
-:      003197 idle_page_fail:
-0x2083 003198 bpatch patch01_1 ,mem_patch01 
-0x2084 003199 fetch 6 ,mem_hci_plap 
-0x2085 003200 store 6 ,mem_plap 
-0x2086 003201 compare lmp_name_req ,temp ,0xff 
-0x2087 003202 branch idle_name_fail ,true 
-0x2088 003203 branch idle_exit 
-:      003204 idle_name_fail:
-0x2089 003205 arg mem_tmp_buffer ,contw 
-0x208a 003206 arg 8 ,loopcnt 
-0x208b 003207 call memset0 
-0x208c 003208 jam bt_evt_reconn_failed ,mem_fifo_temp 
-0x208d 003209 call ui_ipc_send_event 
-0x208e 003210 branch idle_exit 
-:      003217 inquiry_dispatch:
-0x208f 003218 rtnmark0 mark_inquiry_on 
-0x2090 003219 force inquiry_length_timer ,queue 
-0x2091 003220 call timer_check 
-0x2092 003221 nsetflag blank ,mark_inquiry_on ,mark 
-0x2093 003222 nbranch inquiry_start ,blank 
-0x2094 003223 rtn 
-:      003227 inquiry_start:
-0x2095 003228 bpatch patch01_2 ,mem_patch01 
-0x2096 003229 fetcht 2 ,mem_inq_window 
-0x2097 003230 force 4 ,queue 
-0x2098 003231 call sniff_check_window 
-0x2099 003232 rtn user 
-0x209a 003233 call afh_clear 
-0x209b 003234 force 0 ,freq_mode 
-:      003235 inquiry_restart:
-0x209c 003236 rtn timeout 
-0x209d 003237 set0 mark_fhs_already_good ,mark 
-0x209e 003238 set0 mark_fhs_eir ,mark 
-:      003239 inquiry_rx_restart:
-0x209f 003240 add clkn_bt ,1 ,bt_clk 
-0x20a0 003241 isolate1 mark_inquiry_trainb ,mark 
-0x20a1 003242 setflag true ,2 ,freq_mode 
-0x20a2 003243 compare 0x00 ,bt_clk ,0x02 
-0x20a3 003244 nbranch inquiry_receive ,true 
-:      003246 inquiry_transmit:
-0x20a4 003247 bpatch patch01_3 ,mem_patch01 
-0x20a5 003248 fetch 1 ,mem_inquiry_transmit 
-0x20a6 003249 increase 1 ,pdata 
-0x20a7 003250 store 1 ,mem_inquiry_transmit 
-0x20a8 003251 call fetch_giac 
-0x20a9 003252 call tx_radio_freq 
-0x20aa 003253 call fetch_diac 
-0x20ab 003254 call start_transmitter 
-0x20ac 003255 call start_tx_native 
-0x20ad 003256 call send_access_word 
-0x20ae 003257 call end_of_packet 
-0x20af 003258 call inquiry_check_train 
-0x20b0 003259 branch inquiry_restart 
-:      003261 inquiry_check_train:
-0x20b1 003262 bpatch patch01_4 ,mem_patch01 
-0x20b2 003263 fetch 1 ,mem_nfreq_index_inq 
-0x20b3 003264 increase -1 ,pdata 
-0x20b4 003265 store 1 ,mem_nfreq_index_inq 
-0x20b5 003266 rtn positive 
-0x20b6 003267 jam 31 ,mem_nfreq_index_inq 
-0x20b7 003268 fetch 1 ,mem_ninqy_index 
-0x20b8 003269 increase -1 ,pdata 
-0x20b9 003270 store 1 ,mem_ninqy_index 
-0x20ba 003271 rtn positive 
-0x20bb 003272 setflip mark_inquiry_trainb ,mark 
-0x20bc 003273 jam param_ninquiry ,mem_ninqy_index 
-0x20bd 003274 rtn 
-:      003276 inquiry_receive:
-0x20be 003277 bpatch patch01_5 ,mem_patch01 
-0x20bf 003278 call fetch_giac 
-0x20c0 003279 call rx_radio_freq 
-0x20c1 003280 call fetch_diac 
-0x20c2 003281 call start_rx_native 
-0x20c3 003282 call start_receiver 
-0x20c4 003283 call wait_access_clkn_rt 
-0x20c5 003284 branch inquiry_sync ,sync 
-0x20c6 003285 call inquiry_check_train 
-0x20c7 003286 branch inquiry_rx_restart 
-:      003287 inquiry_sync:
-0x20c8 003288 bpatch patch01_6 ,mem_patch01 
-0x20c9 003289 call save_rssi 
-0x20ca 003290 call scan_mode_whiten 
-0x20cb 003291 call receive_packet_whitened 
-0x20cc 003292 set0 mark_rxbuf_inuse ,mark 
-0x20cd 003293 rtnmark0 mark_fhs_already_good 
-:      003294 inquiry_receive_rtn:
-0x20ce 003295 bpatch patch01_7 ,mem_patch01 
-:      003296 inquiry_receive_eir_rtn:
-0x20cf 003297 fetch 1 ,mem_inquiry_rcv 
-0x20d0 003298 increase 1 ,pdata 
-0x20d1 003299 store 1 ,mem_inquiry_rcv 
-0x20d2 003300 rtn 
-:      003308 master_page:
-0x20d3 003309 bpatch patch02_0 ,mem_patch02 
-0x20d4 003310 enable master 
-0x20d5 003311 enable clknt 
-0x20d6 003312 fetch 2 ,mem_page_interval 
-0x20d7 003313 branch master_page_no_interval ,blank 
-0x20d8 003314 force page_interval_timer ,queue 
-0x20d9 003315 call timer_check 
-0x20da 003316 nrtn blank 
-:      003317 master_page_no_interval:
-0x20db 003318 bpatch patch02_1 ,mem_patch02 
-0x20dc 003319 fetcht 2 ,mem_page_window 
-0x20dd 003320 force 40 ,queue 
-0x20de 003321 call sniff_check_window 
-0x20df 003322 branch page_exit ,user 
-0x20e0 003323 force page_length_timer ,queue 
-0x20e1 003324 call timer_check 
-0x20e2 003325 nbranch page_start ,blank 
-0x20e3 003326 fetch 1 ,mem_state_map 
-0x20e4 003327 bbit1 smap_name_req ,master_npage_timeout 
-0x20e5 003328 branch master_page_timeout 
-:      003329 master_npage_timeout:
-0x20e6 003330 arg mem_tmp_buffer ,contw 
-0x20e7 003331 arg 8 ,loopcnt 
-0x20e8 003332 call memset0 
-:      003333 master_page_timeout:
-0x20e9 003334 bpatch patch02_2 ,mem_patch02 
-0x20ea 003335 jam 0 ,mem_state 
-0x20eb 003336 call init_lmp_work 
-0x20ec 003337 jam 0 ,memui_reconnect_mode 
-0x20ed 003338 jam bt_evt_reconn_page_timeout ,mem_fifo_temp 
-0x20ee 003339 call ui_ipc_send_event 
-0x20ef 003340 branch page_exit 
-:      003342 page_start:
-0x20f0 003343 bpatch patch02_3 ,mem_patch02 
-0x20f1 003344 force 0 ,timeup 
-0x20f2 003345 until clkn_rt ,meet 
-0x20f3 003346 fetch 1 ,mem_page_clk 
-0x20f4 003347 increase -1 ,pdata 
-0x20f5 003348 ixor clkn_bt ,pdata 
-0x20f6 003349 compare 0 ,pdata ,3 
-0x20f7 003350 nbranch page_start ,true 
-0x20f8 003351 deposit am_addr 
-0x20f9 003352 store 1 ,mem_fhs_am_addr 
-0x20fa 003353 force 0 ,n_tx_slot 
-0x20fb 003354 force 0 ,freq_mode 
-:      003356 page_restart:
-0x20fc 003357 bpatch patch02_4 ,mem_patch02 
-0x20fd 003358 branch page_exit ,timeout 
-0x20fe 003359 call fetch_page_bt_adr 
-0x20ff 003360 arg param_rf_setup ,timeup 
-0x2100 003361 until clkn_rt ,meet 
-:      003362 page_rx_restart:
-0x2101 003363 bpatch patch02_5 ,mem_patch02 
-0x2102 003364 fetch 4 ,mem_page_clk 
-0x2103 003365 iforce bt_clk 
-0x2104 003366 increase 1 ,pdata 
-0x2105 003367 store 4 ,mem_page_clk 
-0x2106 003368 isolate1 mark_page_trainb ,mark 
-0x2107 003369 setflag true ,2 ,freq_mode 
-0x2108 003370 compare 0x00 ,bt_clk ,0x02 
-0x2109 003371 nbranch page_receive ,true 
-0x210a 003372 fetch 1 ,mem_page_transmit 
-0x210b 003373 increase 1 ,pdata 
-0x210c 003374 store 1 ,mem_page_transmit 
-0x210d 003375 call tx_radio_freq 
-0x210e 003376 call start_transmitter 
-0x210f 003377 call start_tx_native 
-0x2110 003378 call send_access_word 
-0x2111 003379 call end_of_packet 
-0x2112 003380 call page_check_train 
-0x2113 003381 branch page_restart 
-:      003382 page_exit:
-0x2114 003383 bpatch patch02_6 ,mem_patch02 
-0x2115 003384 disable master 
-0x2116 003385 fetch 2 ,mem_page_interval 
-0x2117 003386 rtn blank 
-0x2118 003387 force page_interval_timer ,queue 
-0x2119 003388 branch timer_init 
-:      003390 page_check_train:
-0x211a 003391 bpatch patch02_7 ,mem_patch02 
-0x211b 003392 fetch 1 ,mem_nfreq_index_page 
-0x211c 003393 increase -1 ,pdata 
-0x211d 003394 store 1 ,mem_nfreq_index_page 
-0x211e 003395 rtn positive 
-0x211f 003396 jam 31 ,mem_nfreq_index_page 
-0x2120 003397 fetch 1 ,mem_npage_index 
-0x2121 003398 increase -1 ,pdata 
-0x2122 003399 store 1 ,mem_npage_index 
-0x2123 003400 rtn positive 
-0x2124 003401 setflip mark_page_trainb ,mark 
-0x2125 003402 fetch 1 ,mem_npage 
-0x2126 003403 store 1 ,mem_npage_index 
-0x2127 003404 rtn 
-:      003406 page_receive:
-0x2128 003407 bpatch patch03_0 ,mem_patch03 
-0x2129 003408 call rx_radio_freq 
-0x212a 003409 call start_rx_native 
-0x212b 003410 call start_receiver 
-0x212c 003411 call wait_access_clkn_rt 
-0x212d 003412 branch page_sync ,sync 
-0x212e 003413 call page_check_train 
-0x212f 003414 branch page_rx_restart 
-:      003415 page_sync:
-0x2130 003416 call end_of_packet 
-0x2131 003417 fetch 1 ,mem_page_rcv 
-0x2132 003418 increase 1 ,pdata 
-0x2133 003419 store 1 ,mem_page_rcv 
-0x2134 003420 force 0 ,stop_watch 
-0x2135 003421 fetch 4 ,mem_page_clk 
-:      003422 page_send_fhs:
-0x2136 003423 bpatch patch03_1 ,mem_patch03 
-0x2137 003424 call rf_setup_time_master_slot 
-0x2138 003425 call fetch_page_bt_adr 
-0x2139 003426 increase 1 ,n_tx_slot 
-:      003427 page_send_fhs_continue:
-0x213a 003428 and_into 0x1fd ,bt_clk 
-0x213b 003429 and_into 0x1fc ,freq_mode 
-0x213c 003430 call tx_radio_freq 
-0x213d 003431 call start_transmitter 
-0x213e 003432 call start_tx_native 
-0x213f 003433 call send_access_word 
-0x2140 003434 deposit clkn_bt 
-0x2141 003435 store 4 ,mem_clkn_bt 
-0x2142 003436 force 0 ,am_addr 
-0x2143 003437 force type_fhs ,type 
-0x2144 003438 call scan_mode_whiten 
-0x2145 003439 call transmit_packet_whitened 
-:      003440 page_wait_fhs_reply:
-0x2146 003441 bpatch patch03_2 ,mem_patch03 
-0x2147 003442 call rf_setup_time_slave_slot 
-0x2148 003443 or_into 0x02 ,bt_clk 
-0x2149 003444 and_into 0x1fc ,freq_mode 
-0x214a 003445 call rx_radio_freq 
-0x214b 003446 call start_rx_native 
-0x214c 003447 call start_receiver 
-0x214d 003448 call wait_access_clkn_rt 
-0x214e 003449 call end_of_packet ,sync 
-0x214f 003450 branch page_wait_fhs_reply_ok ,sync 
-0x2150 003451 fetch 1 ,mem_fhs_wait_counter 
-0x2151 003452 branch page_restart ,blank 
-0x2152 003453 increase -1 ,pdata 
-0x2153 003454 store 1 ,mem_fhs_wait_counter 
-0x2154 003455 branch page_send_fhs 
-:      003457 page_wait_fhs_reply_ok:
-0x2155 003458 bpatch patch03_3 ,mem_patch03 
-0x2156 003459 fetch 1 ,mem_page_rcv_fhs 
-0x2157 003460 increase 1 ,pdata 
-0x2158 003461 store 1 ,mem_page_rcv_fhs 
-0x2159 003462 call prepare_newconn 
-:      003463 master_newconn_loop:
-0x215a 003464 call master_newconn_once 
-0x215b 003465 branch newconn_poll_responded ,sync 
-0x215c 003466 call new_conn_timeout 
-0x215d 003467 nbranch master_newconn_loop ,blank 
-0x215e 003468 branch page_restart 
-:      003470 newconn_poll_responded:
-0x215f 003471 bpatch patch03_4 ,mem_patch03 
-0x2160 003472 fetch 1 ,mem_state 
-0x2161 003473 set0 state_inpage ,pdata 
-0x2162 003474 store 1 ,mem_state 
-0x2163 003475 call newconn_init 
-0x2164 003476 disable master 
-0x2165 003477 rtn 
-:      003480 master_dispatch:
-0x2166 003481 bpatch patch03_5 ,mem_patch03 
-0x2167 003482 enable master 
-0x2168 003483 enable clknt 
-0x2169 003484 call role_switch_master 
-0x216a 003485 rtn user 
-0x216b 003486 call check_bt_disabled 
-0x216c 003487 call rf_setup_time_master_slot 
-0x216d 003488 add clkn_bt ,1 ,bt_clk 
-0x216e 003489 call fetch_self_bt_adr 
-0x216f 003490 force 0x03 ,freq_mode 
-0x2170 003491 call scheduler_tx_l2cap_pkt 
-0x2171 003492 call prepare_tx 
-0x2172 003493 call tx_radio_freq 
-0x2173 003494 call start_transmitter 
-0x2174 003495 call start_tx_native 
-0x2175 003496 call send_access_word 
-0x2176 003497 call transmit_packet 
-:      003498 master_loop:
-0x2177 003499 bpatch patch03_6 ,mem_patch03 
-0x2178 003500 call parse_lmp 
-0x2179 003501 call master_conn_recv_packet 
-0x217a 003502 nbranch master_notmatch ,match 
-0x217b 003503 call supervision_flush 
-0x217c 003504 call parse_l2cap 
-0x217d 003505 fetch 1 ,mem_master_rcvcnt 
-0x217e 003506 increase 1 ,pdata 
-0x217f 003507 store 1 ,mem_master_rcvcnt 
-:      003508 master_notmatch:
-0x2180 003509 bpatch patch03_7 ,mem_patch03 
-0x2181 003510 call scheduler_process 
-0x2182 003511 call check_master_disconnect 
-0x2183 003512 nrtn master 
-0x2184 003513 call check_attempt 
-0x2185 003514 nbranch master_attempt ,blank 
-:      003515 master_exit:
-0x2186 003516 disable master 
-0x2187 003517 rtn 
-:      003519 master_attempt:
-0x2188 003520 call prepare_tx 
-0x2189 003521 call master_conn_send_packet 
-0x218a 003522 branch master_loop 
-:      003525 check_master_disconnect:
-0x218b 003526 branch check_master_match ,match 
-0x218c 003527 call supervision_update 
-0x218d 003528 branch master_disconnect ,positive 
-:      003529 check_master_match:
-0x218e 003530 call check_disconnect_timeout 
-0x218f 003531 nbranch master_disconnect ,user 
-0x2190 003532 fetch 1 ,mem_state_map 
-0x2191 003533 rtnbit0 smap_name_req 
-0x2192 003534 rtnbit1 smap_name_res 
-0x2193 003535 fetch 1 ,mem_op 
-0x2194 003536 rtnbit1 op_disconn 
-0x2195 003537 call conn_timer_expired 
-0x2196 003538 nrtn blank 
-0x2197 003539 fetch 1 ,mem_nameres_cnt 
-0x2198 003540 increase -1 ,pdata 
-0x2199 003541 store 1 ,mem_nameres_cnt 
-0x219a 003542 nrtn blank 
-0x219b 003543 branch lmp_disconnect 
-:      003545 master_disconnect:
-0x219c 003546 bpatch patch04_0 ,mem_patch04 
-0x219d 003547 call quit_connection 
-0x219e 003548 disable master 
-0x219f 003549 fetch 1 ,mem_state_map 
-0x21a0 003550 bbit1 smap_name_req ,master_name_disconnect 
-0x21a1 003551 rtn 
-:      003553 master_name_disconnect:
-0x21a2 003554 fetch 1 ,mem_state_map 
-0x21a3 003555 rtnbit1 smap_name_res 
-:      003556 master_name_error:
-0x21a4 003557 arg mem_tmp_buffer ,contw 
-0x21a5 003558 arg 8 ,loopcnt 
-0x21a6 003559 branch memset0 
-:      003561 check_disconnect_timeout:
-0x21a7 003562 bpatch patch04_1 ,mem_patch04 
-0x21a8 003563 enable user 
-0x21a9 003564 fetch 1 ,mem_op 
-0x21aa 003565 rtnbit0 op_disconn 
-0x21ab 003566 call conn_timer_expired 
-0x21ac 003567 nrtn blank 
-0x21ad 003568 branch disable_user 
-:      003570 conn_timer_expired:
-0x21ae 003571 fetch 1 ,mem_conn_timer 
-0x21af 003572 increase -1 ,pdata 
-0x21b0 003573 store 1 ,mem_conn_timer 
-0x21b1 003574 rtn 
-:      003576 linkkey_ready:
-0x21b2 003577 bpatch patch04_2 ,mem_patch04 
-0x21b3 003578 fetch 1 ,mem_state 
-0x21b4 003579 bbit1 state_linkkey ,linkkey_set 
-0x21b5 003580 fetch 1 ,mem_pairing_auth 
-0x21b6 003581 branch linkkey_set ,blank 
-0x21b7 003582 jam defalt_pairing_auth ,mem_pairing_auth 
-0x21b8 003583 jam bt_evt_linkkey_generate ,mem_fifo_temp 
-0x21b9 003584 call ui_ipc_send_event 
-0x21ba 003585 branch linkkey_set 
-:      003586 linkkey_set:
-0x21bb 003587 bpatch patch04_3 ,mem_patch04 
-0x21bc 003588 call context_traverse_linkkey 
-0x21bd 003589 fetch 1 ,mem_state 
-0x21be 003590 set1 state_linkkey ,pdata 
-0x21bf 003591 store 1 ,mem_state 
-0x21c0 003592 jam 1 ,mem_link_key_exists 
-0x21c1 003593 fetch 1 ,mem_conn_sm 
-0x21c2 003594 bne conn_sm_pairing ,linkkey_set_continue 
-:      003595 linkkey_set_continue:
-0x21c3 003596 rtn 
-:      003598 generate_linkkey_continue:
-0x21c4 003599 jam pairing_auth ,mem_pairing_auth 
-:      003600 clear_linkstate:
-0x21c5 003601 fetch 1 ,mem_state 
-0x21c6 003602 set0 state_linkkey ,pdata 
-0x21c7 003603 store 1 ,mem_state 
-0x21c8 003604 rtn 
-:      003608 role_switch_check:
-0x21c9 003609 bpatch patch04_4 ,mem_patch04 
-0x21ca 003610 disable user 
-0x21cb 003611 fetch 2 ,mem_tsniff 
-0x21cc 003612 arg 0xffff ,temp 
-0x21cd 003613 isub temp ,null 
-0x21ce 003614 nrtn zero 
-0x21cf 003615 fetch 4 ,mem_sniff_anchor 
-0x21d0 003616 branch role_switch_clkn ,clknt 
-0x21d1 003617 isub clke_bt ,pdata 
-0x21d2 003618 branch role_switch_clke 
-:      003619 role_switch_clkn:
-0x21d3 003620 isub clkn_bt ,pdata 
-:      003621 role_switch_clke:
-0x21d4 003622 sub pdata ,4 ,null 
-0x21d5 003623 nrtn positive 
-0x21d6 003624 force 0 ,pdata 
-0x21d7 003625 store 2 ,mem_tsniff 
-0x21d8 003626 branch enable_user 
-:      003630 role_switch_prepare:
-0x21d9 003631 copy pdata ,temp 
-0x21da 003632 bpatch patch04_5 ,mem_patch04 
-0x21db 003633 storet 4 ,mem_sniff_anchor 
-:      003634 role_switch_prepare0:
-0x21dc 003635 jam switch_flag_accept ,mem_switch_flag 
-0x21dd 003636 setarg 0xffff 
-0x21de 003637 store 2 ,mem_tsniff 
-0x21df 003638 jam 1 ,mem_sniff_attempt 
-0x21e0 003639 rtn 
-:      003642 role_switch_master:
-0x21e1 003643 bpatch patch04_6 ,mem_patch04 
-0x21e2 003644 call role_switch_check 
-0x21e3 003645 nrtn user 
-0x21e4 003646 disable user 
-0x21e5 003647 jam param_newconnto ,mem_newconnto_counter 
-0x21e6 003648 set0 mark_fhs_already_good ,mark 
-:      003649 roles_waitfhs_loop:
-0x21e7 003650 call rf_setup_time_master_slot 
-0x21e8 003651 call master_recv_packet 
-0x21e9 003652 bmark1 mark_fhs_already_good ,roles_replyto_fhs 
-0x21ea 003653 call new_conn_timeout 
-0x21eb 003654 nbranch roles_waitfhs_loop ,blank 
-:      003655 role_switch_fail_master:
-0x21ec 003656 bpatch patch04_7 ,mem_patch04 
-0x21ed 003657 disable user 
-0x21ee 003658 deposit clkn_bt 
-0x21ef 003659 store 4 ,mem_next_btclk 
-0x21f0 003660 enable clknt 
-0x21f1 003661 enable master 
-0x21f2 003662 jam bt_evt_switch_fail_master ,mem_fifo_temp 
-0x21f3 003663 branch ui_ipc_send_event 
-:      003665 roles_replyto_fhs:
-0x21f4 003666 bpatch patch05_0 ,mem_patch05 
-0x21f5 003667 call rf_setup_time_slave_slot 
-0x21f6 003668 arg type_id ,type 
-0x21f7 003669 call master_send_packet 
-0x21f8 003670 disable clknt 
-0x21f9 003671 disable master 
-0x21fa 003672 call apply_switch_clke 
-0x21fb 003673 call prepare_newconn 
-:      003674 roles_newconns_loop:
-0x21fc 003675 bpatch patch05_1 ,mem_patch05 
-0x21fd 003676 call slave_newconn_once 
-0x21fe 003677 branch roles_newconns_responded ,match 
-0x21ff 003678 call new_conn_timeout 
-0x2200 003679 nbranch roles_newconns_loop ,blank 
-0x2201 003680 branch role_switch_fail_master 
-:      003681 roles_newconns_responded:
-0x2202 003682 fetch 1 ,mem_mode 
-0x2203 003683 set0 mode_master ,pdata 
-0x2204 003684 store 1 ,mem_mode 
-0x2205 003685 call supervision_flush 
-0x2206 003686 call calc_clke_offset 
-0x2207 003687 enable user 
-0x2208 003688 jam bt_evt_switch_success_master ,mem_fifo_temp 
-0x2209 003689 branch ui_ipc_send_event 
-:      003694 context_load:
-0x220a 003695 bpatch patch05_2 ,mem_patch05 
-0x220b 003696 set1 mark_context ,mark 
-0x220c 003697 deposit rega 
-0x220d 003698 store 2 ,mem_context_ptr 
-0x220e 003699 force context_size ,loopcnt 
-0x220f 003700 arg mem_le_state ,contw 
-0x2210 003701 add rega ,coffset_mode ,contr 
-0x2211 003702 ifetch 1 ,contr 
-0x2212 003703 copy rega ,contr 
-0x2213 003704 bbit1 mode_le ,memcpy 
-0x2214 003705 arg mem_state ,contw 
-0x2215 003706 call memcpy 
-0x2216 003707 disable attempt 
-0x2217 003708 fetch 1 ,mem_amaddr 
-0x2218 003709 iforce am_addr 
-0x2219 003710 jam 1 ,mem_current_sniff_attempt 
-0x221a 003711 branch context_load_master ,master 
-0x221b 003712 jam 1 ,mem_current_sniff_attempt 
-:      003713 context_load_master:
-0x221c 003714 fetch 1 ,mem_state 
-0x221d 003715 rtnbit0 state_insniff 
-0x221e 003716 fetch 1 ,mem_sniff_attempt 
-0x221f 003717 store 1 ,mem_current_sniff_attempt 
-0x2220 003718 fetch 1 ,mem_sniff_timeout 
-0x2221 003719 store 1 ,mem_current_sniff_timeout 
-0x2222 003720 rtn 
-:      003722 context_save:
-0x2223 003723 bpatch patch05_3 ,mem_patch05 
-0x2224 003724 fetch 2 ,mem_context_ptr 
-0x2225 003725 iforce contw 
-0x2226 003726 force context_size ,loopcnt 
-0x2227 003727 arg mem_le_state ,contr 
-0x2228 003728 branch memcpy ,le 
-0x2229 003729 arg mem_state ,contr 
-0x222a 003730 branch memcpy 
-:      003734 context_get_next:
-0x222b 003735 arg context_num ,loopcnt 
-0x222c 003736 fetcht 1 ,mem_current_context 
-:      003737 context_get_next_loop:
-0x222d 003738 increase 1 ,temp 
-0x222e 003739 compare context_num ,temp ,0xff 
-0x222f 003740 nbranch context_get_next_cont ,true 
-0x2230 003741 arg 0 ,temp 
-:      003742 context_get_next_cont:
-0x2231 003743 storet 1 ,mem_current_context 
-0x2232 003744 mul32 temp ,context_size ,pdata 
-0x2233 003745 arg mem_context ,rega 
-0x2234 003746 iadd rega ,rega 
-0x2235 003747 ifetch 1 ,rega 
-0x2236 003748 bbit1 state_insniff ,context_get_next_sniff 
-0x2237 003749 rtnbit1 state_inconn 
-0x2238 003750 rtnbit1 state_inpage 
-:      003751 context_get_next_sniff:
-0x2239 003752 loop context_get_next_loop 
-0x223a 003753 rtn 
-:      003755 context_new:
-0x223b 003756 bpatch patch05_4 ,mem_patch05 
-0x223c 003757 arg context_search_empty ,regc 
-0x223d 003758 call context_search 
-0x223e 003759 nrtn zero 
-0x223f 003760 deposit rega 
-0x2240 003761 store 2 ,mem_context_ptr 
-0x2241 003762 force 0 ,null 
-0x2242 003763 rtn 
-:      003767 context_check_all_wack:
-0x2243 003768 call check_esco_amaddr 
-0x2244 003769 branch context_check_esco_wack ,true 
-0x2245 003770 fetch 2 ,mem_context_ptr 
-0x2246 003771 add pdata ,coffset_arq ,contw 
-0x2247 003772 fetch 1 ,mem_arq 
-0x2248 003773 istore 1 ,contw 
-0x2249 003774 arg context_check_a_wack ,regc 
-0x224a 003775 branch context_search 
-:      003777 context_check_esco_wack:
-0x224b 003778 fetch 1 ,mem_arq 
-0x224c 003779 isolate1 wack ,pdata 
-0x224d 003780 branch context_esco_wack ,true 
-0x224e 003781 force 1 ,null 
-0x224f 003782 rtn 
-:      003783 context_esco_wack:
-0x2250 003784 force 0 ,null 
-0x2251 003785 rtn 
-:      003788 context_check_idle:
-0x2252 003789 arg context_check_inconn ,regc 
-0x2253 003790 branch context_search 
-:      003792 context_traverse_linkkey:
-0x2254 003793 fetcht 2 ,mem_context_ptr 
-0x2255 003794 arg context_traverse_clearkey ,regc 
-0x2256 003795 branch context_search 
-:      003799 context_search_conn_handle:
-0x2257 003800 fetcht 1 ,mem_hci_conn_handle 
-:      003801 context_search_conn_handle2:
-0x2258 003802 arg context_search_handle ,regc 
-0x2259 003803 branch context_search 
-:      003805 context_search_plap:
-0x225a 003806 bpatch patch05_5 ,mem_patch05 
-0x225b 003807 fetcht 6 ,mem_hci_plap 
-:      003808 context_search_plap2:
-0x225c 003809 arg context_search_lap ,regc 
-0x225d 003810 branch context_search 
-:      003812 context_search_insniff:
-0x225e 003813 arg context_search_sniff ,regc 
-0x225f 003814 branch context_search 
-:      003816 context_search_sniff_window:
-0x2260 003817 arg context_search_window ,regc 
-:      003818 context_search:
-0x2261 003819 bpatch patch05_6 ,mem_patch05 
-0x2262 003820 arg mem_context ,rega 
-0x2263 003821 arg context_num ,loopcnt 
-:      003822 context_search_loop:
-0x2264 003823 ifetch 1 ,rega 
-0x2265 003824 copy regc ,pc 
-:      003825 context_search_next:
-0x2266 003826 increase context_size ,rega 
-0x2267 003827 loop context_search_loop 
-0x2268 003828 force 1 ,null 
-0x2269 003829 rtn 
-:      003831 context_search_empty:
-0x226a 003832 bbit1 state_inconn ,context_search_next 
-0x226b 003833 bbit1 state_inpage ,context_search_next 
-0x226c 003834 force 0 ,null 
-0x226d 003835 rtn 
-:      003837 context_search_lap:
-0x226e 003838 bbit1 state_inpage ,context_search_lap_cont 
-0x226f 003839 bbit0 state_inconn ,context_search_next 
-:      003840 context_search_lap_cont:
-0x2270 003841 add rega ,coffset_plap ,contr 
-0x2271 003842 ifetch 6 ,contr 
-0x2272 003843 isub temp ,null 
-0x2273 003844 rtn zero 
-0x2274 003845 branch context_search_next 
-:      003847 context_search_handle:
-0x2275 003848 bbit0 state_inconn ,context_search_next 
-0x2276 003849 add rega ,coffset_conn_handle ,contr 
-0x2277 003850 ifetch 1 ,contr 
-0x2278 003851 isub temp ,null 
-0x2279 003852 rtn zero 
-0x227a 003853 branch context_search_next 
-:      003855 context_search_sniff:
-0x227b 003856 bbit0 state_insniff ,context_search_next 
-:      003857 context_search_sniff_loop:
-0x227c 003858 call context_get_anchor 
-0x227d 003859 call sign_pdata_temp 
-0x227e 003860 isub temp ,pdata 
-0x227f 003861 increase 1 ,pdata 
-0x2280 003862 branch context_search_sniff_miss ,positive 
-0x2281 003863 copy contr ,regb 
-0x2282 003864 store 9 ,mem_temp 
-0x2283 003865 fetch 1 ,mem_le_sc_calc 
-0x2284 003866 nbranch context_search_sniff_sc ,blank 
-0x2285 003867 fetch 9 ,mem_temp 
-0x2286 003868 copy regb ,contr 
-0x2287 003869 increase 5 ,pdata 
-0x2288 003870 branch context_search_meet1 
-:      003871 context_search_sniff_sc:
-0x2289 003872 fetch 9 ,mem_temp 
-0x228a 003873 copy regb ,contr 
-0x228b 003874 increase 20 ,pdata 
-:      003875 context_search_meet1:
-0x228c 003876 nbranch context_search_next ,positive 
-:      003877 context_search_meet:
-0x228d 003878 copy temp ,bt_clk 
-0x228e 003879 call context_next_anchor 
-0x228f 003880 force 0 ,null 
-0x2290 003881 rtn 
-:      003884 context_search_sniff_miss:
-0x2291 003885 iforce regb 
-0x2292 003886 add rega ,coffset_tsniff ,contr 
-0x2293 003887 ifetch 2 ,contr 
-0x2294 003888 branch context_search_meet ,blank 
-0x2295 003889 call context_next_anchor 
-0x2296 003890 branch context_search_sniff_loop 
-:      003892 sign_pdata_temp:
-0x2297 003893 rshift16 pdata ,timeup 
-0x2298 003894 rshift8 timeup ,timeup 
-0x2299 003895 branch sign_pdata_temp_p0 ,zero 
-0x229a 003896 compare 0xf ,timeup ,0xf 
-0x229b 003897 nrtn true 
-0x229c 003898 rshift16 temp ,timeup 
-0x229d 003899 rshift8 timeup ,timeup 
-0x229e 003900 nrtn zero 
-0x229f 003901 set1 28 ,temp 
-0x22a0 003902 rtn 
-:      003903 sign_pdata_temp_p0:
-0x22a1 003904 rshift16 temp ,timeup 
-0x22a2 003905 rshift8 timeup ,timeup 
-0x22a3 003906 compare 0xf ,timeup ,0xf 
-0x22a4 003907 nrtn true 
-0x22a5 003908 set1 28 ,pdata 
-0x22a6 003909 rtn 
-:      003911 context_check_inconn:
-0x22a7 003912 bbit0 state_inconn ,context_search_next 
-0x22a8 003913 force 0 ,null 
-0x22a9 003914 rtn 
-:      003916 context_check_a_wack:
-0x22aa 003917 bbit0 state_inconn ,context_search_next 
-0x22ab 003918 add rega ,coffset_mode ,contr 
-0x22ac 003919 ifetch 1 ,contr 
-0x22ad 003920 bbit1 mode_le ,context_search_next 
-0x22ae 003921 add rega ,coffset_arq ,contr 
-0x22af 003922 ifetch 1 ,contr 
-0x22b0 003923 bbit0 wack ,context_search_next 
-0x22b1 003924 force 0 ,null 
-0x22b2 003925 rtn 
-:      003927 context_get_anchor:
-0x22b3 003928 add rega ,coffset_mode ,contr 
-0x22b4 003929 ifetcht 1 ,contr 
-0x22b5 003930 deposit clkn_bt 
-0x22b6 003931 isolate1 mode_master ,temp 
-0x22b7 003932 add rega ,coffset_sniff_anchor ,contr 
-0x22b8 003933 ifetcht 4 ,contr 
-0x22b9 003934 rtn true 
-0x22ba 003935 add rega ,coffset_clk_offset ,contr 
-0x22bb 003936 ifetch 6 ,contr 
-0x22bc 003937 call calc_clke2 
-0x22bd 003938 deposit clke_bt 
-0x22be 003939 rtn 
-:      003941 context_next_anchor:
-0x22bf 003942 add rega ,coffset_tsniff ,contr 
-0x22c0 003943 add rega ,coffset_sniff_anchor ,contw 
-0x22c1 003944 ifetch 2 ,contr 
-0x22c2 003945 iadd temp ,timeup 
-0x22c3 003946 deposit timeup 
-0x22c4 003947 istore 4 ,contw 
-0x22c5 003948 branch le_context_nexthop 
-:      003951 context_search_window:
-0x22c6 003952 bbit0 state_insniff ,context_search_next 
-0x22c7 003953 call context_get_anchor 
-0x22c8 003954 iadd stop_watch ,pdata 
-0x22c9 003955 iadd stop_watch ,pdata 
-0x22ca 003956 iadd queue ,pdata 
-0x22cb 003957 isub temp ,null 
-0x22cc 003958 nbranch context_search_next ,positive 
-0x22cd 003959 force 0 ,null 
-0x22ce 003960 rtn 
-:      003962 context_traverse_clearkey:
-0x22cf 003963 bbit0 state_inconn ,context_search_next 
-0x22d0 003964 deposit temp 
-0x22d1 003965 isub rega ,null 
-0x22d2 003966 branch context_search_next ,null 
-0x22d3 003967 add rega ,coffset_mode ,contr 
-0x22d4 003968 ifetch 1 ,contr 
-0x22d5 003969 bbit1 mode_le ,context_search_next 
-0x22d6 003970 ifetch 1 ,rega 
-0x22d7 003971 set0 state_linkkey ,pdata 
-0x22d8 003972 istore 1 ,rega 
-0x22d9 003973 branch context_search_next 
-:      003976 master_conn_send_packet:
-0x22da 003977 bpatch patch05_7 ,mem_patch05 
-0x22db 003978 call rf_setup_time_master_slot 
-:      003979 master_send_packet:
-0x22dc 003980 add clkn_bt ,1 ,bt_clk 
-0x22dd 003981 call fetch_self_bt_adr 
-0x22de 003982 force 0x03 ,freq_mode 
-0x22df 003983 call tx_radio_freq 
-0x22e0 003984 call start_transmitter 
-0x22e1 003985 call start_tx_native 
-0x22e2 003986 call send_access_word 
-0x22e3 003987 branch transmit_packet 
-:      003989 master_conn_recv_packet:
-0x22e4 003990 bpatch patch06_0 ,mem_patch06 
-0x22e5 003991 call rf_setup_time_slave_slot 
-:      003992 master_recv_packet:
-0x22e6 003993 add clkn_bt ,1 ,bt_clk 
-0x22e7 003994 call fetch_self_bt_adr 
-0x22e8 003995 force 0x03 ,freq_mode 
-0x22e9 003996 call rx_radio_freq 
-0x22ea 003997 call init_rx_packet_flags 
-0x22eb 003998 call prep_crypt 
-0x22ec 003999 call start_rx_native 
-0x22ed 004000 call start_receiver 
-:      004001 master_rx_conn_finish_packet:
-0x22ee 004002 call wait_access_clkn_rt 
-0x22ef 004003 nrtn sync 
-0x22f0 004004 call save_rssi 
-0x22f1 004005 branch receive_packet 
-:      004009 master_newconn_once:
-0x22f2 004010 bpatch patch06_1 ,mem_patch06 
-0x22f3 004011 fetch 1 ,mem_fhs_am_addr 
-0x22f4 004012 iforce am_addr 
-0x22f5 004013 force type_poll ,type 
-0x22f6 004014 call master_conn_send_packet 
-0x22f7 004015 branch master_conn_recv_packet 
-:      004026 inquiry_scan_dispatch:
-0x22f8 004027 fetch 1 ,mem_scan_mode 
-0x22f9 004028 rtnbit0 inq_scan_mode 
-0x22fa 004029 force iscan_interval_timer ,queue 
-0x22fb 004030 call timer_check 
-0x22fc 004031 nrtn blank 
-0x22fd 004032 fetcht 2 ,mem_iscan_window 
-0x22fe 004033 force 4 ,queue 
-0x22ff 004034 call sniff_check_window 
-0x2300 004035 rtn user 
-0x2301 004036 call inquiry_scan_start 
-0x2302 004037 force iscan_interval_timer ,queue 
-0x2303 004038 fetch 2 ,mem_iscan_interval 
-0x2304 004039 nbranch timer_init ,sync 
-0x2305 004040 random pdata 
-0x2306 004041 iand mask3ff ,pdata 
-0x2307 004042 branch timer_init 
-:      004045 inquiry_scan_start:
-0x2308 004046 bpatch patch06_2 ,mem_patch06 
-0x2309 004047 jam 0 ,mem_fhs_am_addr 
-0x230a 004048 disable clknt 
-0x230b 004049 disable attempt 
-0x230c 004050 call afh_clear 
-0x230d 004051 and clkn_bt ,0x1fc ,bt_clk 
-0x230e 004052 force 0x01 ,freq_mode 
-0x230f 004053 call fetch_giac 
-0x2310 004054 call rx_radio_freq 
-0x2311 004055 setflip mark_inquiry_state ,mark 
-0x2312 004056 fetch 1 ,mem_inquiryscan_waitcnt 
-0x2313 004057 increase 1 ,pdata 
-0x2314 004058 store 1 ,mem_inquiryscan_waitcnt 
-0x2315 004059 call fetch_diac 
-0x2316 004060 call start_receiver 
-0x2317 004061 call wait_access_forever 
-0x2318 004062 nrtn sync 
-0x2319 004063 bpatch patch06_3 ,mem_patch06 
-0x231a 004064 force 0 ,stop_watch 
-0x231b 004065 call shutdown_radio 
-0x231c 004066 fetch 1 ,mem_inquiryscan_rcvcnt 
-0x231d 004067 increase 1 ,pdata 
-0x231e 004068 store 1 ,mem_inquiryscan_rcvcnt 
-0x231f 004069 call fetch_giac 
-0x2320 004070 call rf_setup_time_slave_slot 
-0x2321 004071 or_into 0x002 ,bt_clk 
-0x2322 004072 force 0x01 ,freq_mode 
-0x2323 004073 call tx_radio_freq 
-0x2324 004074 call fetch_diac 
-0x2325 004075 call start_transmitter 
-0x2326 004076 call start_tx_external 
-0x2327 004077 deposit clkn_bt 
-0x2328 004078 store 4 ,mem_clkn_bt 
-0x2329 004079 call send_access_word 
-0x232a 004080 force type_fhs ,type 
-0x232b 004081 force 0 ,am_addr 
-0x232c 004082 call scan_mode_whiten 
-0x232d 004083 call transmit_packet_whitened 
-0x232e 004084 call send_eir 
-0x232f 004085 and_into 0x1fd ,bt_clk 
-0x2330 004086 increase 1 ,n_tx_slot 
-0x2331 004087 rtn 
-:      004089 send_eir:
-0x2332 004090 bpatch patch06_4 ,mem_patch06 
-0x2333 004091 fetch 1 ,mem_eir_enable 
-0x2334 004092 rtn blank 
-0x2335 004093 arg mem_eir ,contw 
-0x2336 004094 fetch 1 ,mem_local_name_length 
-0x2337 004095 copy pdata ,loopcnt 
-0x2338 004096 increase 1 ,pdata 
-0x2339 004097 istore 1 ,contw 
-0x233a 004098 copy contw ,temp 
-0x233b 004099 increase 1 ,pdata 
-0x233c 004100 store 2 ,mem_tx_len 
-0x233d 004101 copy temp ,contw 
-0x233e 004102 setarg 0x09 
-0x233f 004103 istore 1 ,contw 
-0x2340 004104 arg mem_local_name ,contr 
-0x2341 004105 call memcpy 
-0x2342 004107 arg mem_all_uuid_128bits ,regc 
-0x2343 004108 arg 4 ,loopcnt 
-0x2344 004109 call get_all_uuid 
-0x2345 004110 arg mem_all_uuid_16bits ,regc 
-0x2346 004111 arg 1 ,loopcnt 
-0x2347 004112 call get_all_uuid 
-0x2348 004114 force type_dm3 ,type 
-0x2349 004115 jam 2 ,mem_tx_lch 
-0x234a 004116 setarg mem_eir 
-0x234b 004117 store 2 ,mem_txptr 
-0x234c 004118 call rf_setup_time_slave_slot 
-0x234d 004119 call tx_radio_freq 
-0x234e 004120 call start_transmitter 
-0x234f 004121 call start_tx_external 
-0x2350 004122 call send_access_word 
-0x2351 004123 call scan_mode_whiten 
-0x2352 004124 call transmit_packet_whitened 
-0x2353 004125 rtn 
-:      004128 get_all_uuid:
-0x2354 004129 copy contw ,temp 
-0x2355 004130 copy regc ,contr 
-0x2356 004131 ifetch 1 ,contr 
-0x2357 004132 rtn blank 
-:      004133 lshift_loop:
-0x2358 004134 lshift pdata ,pdata 
-0x2359 004135 loop lshift_loop 
-0x235a 004136 copy pdata ,rega 
-0x235b 004137 increase 2 ,pdata 
-0x235c 004138 copy pdata ,queue 
-0x235d 004139 fetch 2 ,mem_tx_len 
-0x235e 004140 iadd queue ,pdata 
-0x235f 004141 store 2 ,mem_tx_len 
-0x2360 004142 copy temp ,contw 
-0x2361 004143 copy rega ,pdata 
-0x2362 004144 increase 1 ,pdata 
-0x2363 004145 istore 1 ,contw 
-0x2364 004146 copy regc ,contr 
-0x2365 004147 ifetch 1 ,contr 
-0x2366 004148 ifetch 1 ,contr 
-0x2367 004149 istore 1 ,contw 
-0x2368 004150 copy rega ,loopcnt 
-0x2369 004151 branch memcpy 
-:      004157 page_scan_dispatch:
-0x236a 004158 fetch 1 ,mem_scan_mode 
-0x236b 004159 rtnbit0 page_scan_mode 
-0x236c 004160 force pscan_interval_timer ,queue 
-0x236d 004161 call timer_check 
-0x236e 004162 nrtn blank 
-0x236f 004163 fetcht 2 ,mem_pscan_window 
-0x2370 004164 force 40 ,queue 
-0x2371 004165 call sniff_check_window 
-0x2372 004166 rtn user 
-0x2373 004167 force 0 ,am_addr 
-0x2374 004168 jam param_pagerespto ,mem_fhs_wait_counter 
-0x2375 004169 set0 mark_fhs_already_good ,mark 
-0x2376 004170 call page_scan_start 
-0x2377 004171 force pscan_interval_timer ,queue 
-0x2378 004172 fetch 2 ,mem_pscan_interval 
-0x2379 004173 branch timer_init 
-:      004176 page_scan_start:
-0x237a 004177 bpatch patch06_5 ,mem_patch06 
-0x237b 004178 disable clknt 
-0x237c 004179 call afh_clear 
-0x237d 004180 fetch 1 ,mem_pagescan_waitcnt 
-0x237e 004181 increase 1 ,pdata 
-0x237f 004182 store 1 ,mem_pagescan_waitcnt 
-0x2380 004183 force 0 ,n_tx_slot 
-0x2381 004184 call fetch_self_bt_adr 
-0x2382 004185 add clkn_bt ,1 ,bt_clk 
-0x2383 004186 force 0x02 ,freq_mode 
-0x2384 004187 bpatch patch06_6 ,mem_patch06 
-0x2385 004188 call rx_radio_freq 
-0x2386 004189 call start_receiver 
-0x2387 004190 call wait_access_forever 
-0x2388 004191 nrtn sync 
-0x2389 004192 call shutdown_radio 
-0x238a 004193 fetch 1 ,mem_pagescan_rcvcnt 
-0x238b 004194 increase 1 ,pdata 
-0x238c 004195 store 1 ,mem_pagescan_rcvcnt 
-0x238d 004196 force 0 ,stop_watch 
-0x238e 004197 call rf_setup_time_slave_slot 
-0x238f 004198 or_into 0x002 ,bt_clk 
-0x2390 004199 force 0x01 ,freq_mode 
-0x2391 004200 call tx_radio_freq 
-0x2392 004201 call start_transmitter 
-0x2393 004202 call start_tx_external 
-0x2394 004203 call send_access_word 
-0x2395 004204 call end_of_packet 
-0x2396 004205 force 0 ,am_addr 
-0x2397 004206 arg param_rf_setup ,timeup 
-0x2398 004207 until clke_rt ,meet 
-0x2399 004208 or_into 0x03 ,clke_bt 
-0x239a 004209 and_into 0x1fd ,bt_clk 
-:      004210 page_scan_wait_fhs_restart:
-0x239b 004211 bpatch patch06_7 ,mem_patch06 
-0x239c 004212 increase 1 ,n_tx_slot 
-0x239d 004213 call rx_radio_freq 
-0x239e 004214 call start_receiver 
-0x239f 004215 call wait_access_mhalfbnd 
-0x23a0 004216 nbranch page_scan_wait_fhs_again ,sync 
-0x23a1 004217 call scan_mode_whiten 
-0x23a2 004218 call receive_packet_whitened 
-0x23a3 004219 bmark1 mark_fhs_already_good ,page_scan_reply_to_fhs 
-:      004220 page_scan_wait_fhs_again:
-0x23a4 004221 bpatch patch07_0 ,mem_patch07 
-0x23a5 004222 fetch 1 ,mem_fhs_wait_counter 
-0x23a6 004223 rtn blank 
-0x23a7 004224 increase -1 ,pdata 
-0x23a8 004225 store 1 ,mem_fhs_wait_counter 
-0x23a9 004226 call rf_setup_time_master_slot 
-0x23aa 004227 branch page_scan_wait_fhs_restart 
-:      004230 page_scan_reply_to_fhs:
-0x23ab 004231 bpatch patch07_1 ,mem_patch07 
-0x23ac 004232 set0 1 ,clke_bt 
-0x23ad 004233 set1 0 ,clke_bt 
-0x23ae 004234 fetch 1 ,mem_pagescan_rcvfhscnt 
-0x23af 004235 increase 1 ,pdata 
-0x23b0 004236 store 1 ,mem_pagescan_rcvfhscnt 
-0x23b1 004237 call rf_setup_time_slave_slot 
-0x23b2 004238 or_into 0x02 ,bt_clk 
-0x23b3 004239 call tx_radio_freq 
-0x23b4 004240 call start_transmitter 
-0x23b5 004241 call start_tx_external 
-0x23b6 004242 call send_access_word 
-0x23b7 004243 call end_of_packet 
-:      004244 slave_apply_clke_bt:
-0x23b8 004245 compare 0x03 ,clke_bt ,0x03 
-0x23b9 004246 branch slave_apply_clke_bt_now ,true 
-0x23ba 004247 until null ,mhalfbnd 
-0x23bb 004248 branch slave_apply_clke_bt 
-:      004249 slave_apply_clke_bt_now:
-0x23bc 004250 fetch 4 ,mem_clke_bt 
-0x23bd 004251 or_into 0x03 ,pdata 
-0x23be 004252 icopy clke_bt 
-:      004254 start_slave_connection:
-0x23bf 004255 bpatch patch07_2 ,mem_patch07 
-0x23c0 004256 fetch 6 ,extm_lap 
-0x23c1 004257 store 6 ,mem_plap 
-0x23c2 004258 call prepare_newconn 
-:      004259 slave_newconn_loop:
-0x23c3 004260 call slave_newconn_once 
-0x23c4 004261 branch sconn_successful ,match 
-0x23c5 004262 call new_conn_timeout 
-0x23c6 004263 nbranch slave_newconn_loop ,blank 
-0x23c7 004264 rtn 
-:      004267 sconn_successful:
-0x23c8 004268 bpatch patch07_3 ,mem_patch07 
-0x23c9 004269 call newconn_init 
-0x23ca 004270 call context_new 
-0x23cb 004271 nrtn zero 
-0x23cc 004272 jam 0 ,mem_mode 
-0x23cd 004273 call calc_clke_offset 
-0x23ce 004274 branch context_save 
-:      004279 slave_dispatch:
-0x23cf 004280 bpatch patch07_4 ,mem_patch07 
-0x23d0 004281 call calc_clke 
-0x23d1 004282 call role_switch_slave 
-0x23d2 004283 rtn user 
-:      004284 slave_loop:
-0x23d3 004285 bpatch patch07_5 ,mem_patch07 
-0x23d4 004286 call check_bt_disabled 
-0x23d5 004287 call scheduler_process 
-0x23d6 004288 call slave_conn_recv_packet 
-0x23d7 004289 nbranch slave_notmatch ,match 
-0x23d8 004290 call supervision_flush 
-0x23d9 004291 call scheduler_tx_l2cap_pkt 
-0x23da 004292 call prepare_tx 
-0x23db 004293 call slave_conn_send_packet 
-0x23dc 004294 call parse_l2cap 
-0x23dd 004295 call parse_lmp 
-0x23de 004296 fetch 1 ,mem_slave_rcvcnt 
-0x23df 004297 increase 1 ,pdata 
-0x23e0 004298 store 1 ,mem_slave_rcvcnt 
-0x23e1 004299 call calc_clke_offset 
-:      004300 slave_notmatch:
-0x23e2 004301 bpatch patch07_6 ,mem_patch07 
-0x23e3 004302 call lpm_set_mult 
-0x23e4 004303 call supervision_update 
-0x23e5 004304 branch slave_disconnect ,positive 
-0x23e6 004305 call check_disconnect_timeout 
-0x23e7 004306 nbranch slave_disconnect ,user 
-0x23e8 004307 call check_attempt 
-0x23e9 004308 nbranch slave_loop ,blank 
-0x23ea 004309 rtn 
-:      004311 slave_disconnect:
-0x23eb 004312 bpatch patch07_7 ,mem_patch07 
-0x23ec 004313 jam 0 ,mem_tester_emulate 
-0x23ed 004314 jam 0 ,mem_debug_config 
-0x23ee 004315 call quit_connection 
-0x23ef 004316 set0 mark_testmode ,mark 
-0x23f0 004317 call test_enable_white 
-0x23f1 004318 fetch 1 ,mem_state 
-0x23f2 004319 rtn 
-:      004322 role_switch_slave:
-0x23f3 004323 bpatch patch08_0 ,mem_patch08 
-0x23f4 004324 call role_switch_check 
-0x23f5 004325 nrtn user 
-0x23f6 004326 copy am_addr ,temp 
-0x23f7 004327 call get_free_amaddr 
-0x23f8 004328 store 1 ,mem_fhs_am_addr 
-0x23f9 004329 copy temp ,am_addr 
-0x23fa 004330 jam param_newconnto ,mem_newconnto_counter 
-:      004331 roles_sendfhs_loop:
-0x23fb 004332 bpatch patch08_1 ,mem_patch08 
-0x23fc 004333 call rf_setup_time_master_slot 
-0x23fd 004334 force type_fhs ,type 
-0x23fe 004335 call slave_send_access 
-0x23ff 004336 deposit clkn_bt 
-0x2400 004337 store 4 ,mem_clkn_bt 
-0x2401 004338 call transmit_packet 
-0x2402 004339 call rf_setup_time_slave_slot 
-0x2403 004340 enable user3 
-0x2404 004341 call slave_receive_access 
-0x2405 004342 branch roles_got_fhs_reply ,sync 
-0x2406 004343 call shutdown_radio 
-0x2407 004344 call new_conn_timeout 
-0x2408 004345 nbranch roles_sendfhs_loop ,blank 
-0x2409 004346 rtnmark0 mark_accept_switch 
-0x240a 004347 jam lmp_slot_offset ,mem_lmo_opcode2 
-0x240b 004348 set1 mark_switch_initiated ,mark 
-0x240c 004349 rtn 
-:      004350 roles_got_fhs_reply:
-0x240d 004351 enable clknt 
-0x240e 004352 call prepare_newconn 
-0x240f 004353 call afh_clear 
-:      004354 roles_newconn_loop:
-0x2410 004355 bpatch patch08_2 ,mem_patch08 
-0x2411 004356 call master_newconn_once 
-0x2412 004357 branch roles_newconn_responded ,sync 
-0x2413 004358 call new_conn_timeout 
-0x2414 004359 nbranch roles_newconn_loop ,blank 
-0x2415 004360 disable clknt 
-0x2416 004361 deposit clke_bt 
-0x2417 004362 store 4 ,mem_next_btclk 
-0x2418 004363 rtn 
-:      004364 roles_newconn_responded:
-0x2419 004365 enable master 
-0x241a 004366 bmark0 mark_accept_switch ,roles_newconn_nolmp 
-0x241b 004367 set0 mark_accept_switch ,mark 
-0x241c 004368 jam lmp_accepted ,mem_lmo_opcode2 
-0x241d 004369 jam lmp_host_connection_req ,mem_lmi_opcode2 
-0x241e 004370 call tid_set_reply 
-:      004371 roles_newconn_nolmp:
-0x241f 004372 deposit am_addr 
-0x2420 004373 store 1 ,mem_amaddr 
-0x2421 004374 force 0 ,pdata 
-0x2422 004375 store 6 ,mem_clk_offset 
-0x2423 004376 fetch 1 ,mem_mode 
-0x2424 004377 set1 mode_master ,pdata 
-0x2425 004378 store 1 ,mem_mode 
-0x2426 004379 call supervision_flush 
-0x2427 004380 disable master 
-0x2428 004381 enable user 
-0x2429 004382 rtn 
-:      004386 init_rx_packet_flags:
-0x242a 004387 bpatch patch08_3 ,mem_patch08 
-0x242b 004388 disable match 
-0x242c 004389 set0 mark_loopback ,mark 
-0x242d 004390 set0 mark_am_addr_broadcast ,mark 
-0x242e 004391 set0 mark_longpacket ,mark 
-0x242f 004392 set0 mark_old_packet ,mark 
-0x2430 004393 fetch 1 ,mem_arq 
-0x2431 004394 set0 arqnx ,pdata 
-0x2432 004395 set1 flowx ,pdata 
-0x2433 004396 store 1 ,mem_arq 
-0x2434 004397 rtn 
-:      004399 prepare_newconn:
-0x2435 004400 bpatch patch08_4 ,mem_patch08 
-0x2436 004401 jam param_newconnto ,mem_newconnto_counter 
-0x2437 004402 jam param_newconn_arq ,mem_arq 
-0x2438 004403 fetch 2 ,mem_rx_window_init 
-0x2439 004404 store 2 ,mem_rx_window 
-0x243a 004405 deposit clkn_bt 
-0x243b 004406 store 4 ,mem_next_btclk 
-0x243c 004407 rtn clknt 
-0x243d 004408 deposit clke_bt 
-0x243e 004409 store 4 ,mem_next_btclk 
-0x243f 004410 rtn 
-:      004412 newconn_init:
-0x2440 004413 bpatch patch08_5 ,mem_patch08 
-0x2441 004414 call init_lmp_reinit 
-0x2442 004415 call new_conn_handle 
-0x2443 004416 store 1 ,mem_conn_handle 
-0x2444 004417 setarg 0 
-0x2445 004418 store 2 ,mem_l2cap_rxbuff1_len 
-0x2446 004419 setarg param_supervision_to 
-0x2447 004420 store 2 ,mem_supervision_to 
-0x2448 004421 fetch 1 ,mem_state 
-0x2449 004422 set1 state_inconn ,pdata 
-0x244a 004423 store 1 ,mem_state 
-0x244b 004424 jam 0 ,mem_op 
-0x244c 004425 jam 0 ,mem_state_map 
-0x244d 004426 jam 0 ,mem_lpm_current_mult 
-0x244e 004427 branch supervision_flush 
-:      004430 clear_linkkey:
-0x244f 004431 bpatch patch08_6 ,mem_patch08 
-0x2450 004432 force 0 ,pdata 
-0x2451 004433 store 8 ,mem_link_key 
-0x2452 004434 istore 8 ,contw 
-0x2453 004435 call clear_linkstate 
-0x2454 004436 branch context_traverse_linkkey 
-:      004438 new_conn_timeout:
-0x2455 004439 fetch 1 ,mem_newconnto_counter 
-0x2456 004440 increase -1 ,pdata 
-0x2457 004441 store 1 ,mem_newconnto_counter 
-0x2458 004442 rtn 
-:      004444 new_conn_handle:
-0x2459 004445 fetch 1 ,mem_handle_num 
-0x245a 004446 increase 1 ,pdata 
-0x245b 004447 store 1 ,mem_handle_num 
-0x245c 004448 rtn 
-:      004451 quit_connection:
-0x245d 004452 bpatch patch08_7 ,mem_patch08 
-0x245e 004453 fetch 1 ,mem_hci_cmd 
-0x245f 004454 beq hci_cmd_remote_name_req ,quit_connection_name 
-0x2460 004455 fetch 1 ,mem_lmp_to_send 
-0x2461 004456 bne lmp_name_req ,quit_connection_cont 
-:      004457 quit_connection_name:
-0x2462 004458 call cmd_check_plap 
-0x2463 004459 nbranch quit_connection_cont ,zero 
-0x2464 004460 call master_name_error 
-0x2465 004461 jam 0 ,mem_hci_cmd 
-:      004462 quit_connection_cont:
-0x2466 004463 bpatch patch09_0 ,mem_patch09 
-0x2467 004464 call app_disconn_reason_collect_bt 
-0x2468 004465 call sniff_exit 
-0x2469 004466 jam bt_evt_bb_disconnected ,mem_fifo_temp 
-0x246a 004467 call ui_ipc_send_event 
-0x246b 004468 call init_lmp_work 
-0x246c 004469 call l2cap_init_work 
-0x246d 004470 call sp_initialize 
-0x246e 004471 fetch 1 ,mem_state 
-0x246f 004472 set0 state_inconn 
-0x2470 004473 store 1 ,mem_state 
-0x2471 004474 jam 0 ,memui_reconnect_mode 
-0x2472 004476 fetch 1 ,mem_state_map 
-0x2473 004477 compare 0x0 ,pdata ,0xc0 
-0x2474 004478 branch quit_connection_not_clear_mark ,true 
-0x2475 004479 set0 mark_rxbuf_inuse ,mark 
-:      004480 quit_connection_not_clear_mark:
-0x2476 004481 fetch 1 ,mem_arq 
-0x2477 004482 bbit0 wack ,quit_connection_not_clear_tx 
-:      004483 quit_connection_not_clear_tx:
-0x2478 004484 fetch 1 ,mem_op 
-0x2479 004485 rtnbit0 op_txl2cap 
-0x247a 004486 set0 mark_tx_l2cap ,mark 
-0x247b 004487 rtn 
-:      004489 slave_newconn_once:
-0x247c 004490 bpatch patch09_1 ,mem_patch09 
-0x247d 004491 fetch 1 ,extm_newconn_am_addr 
-0x247e 004492 rtn blank 
-0x247f 004493 icopy am_addr 
-0x2480 004494 call slave_conn_recv_packet 
-0x2481 004495 nrtn match 
-0x2482 004496 force type_null ,type 
-0x2483 004497 call slave_conn_send_packet 
-0x2484 004498 deposit am_addr 
-0x2485 004499 store 1 ,mem_amaddr 
-0x2486 004500 force 0 ,pdata 
-0x2487 004501 store 1 ,extm_newconn_am_addr 
-0x2488 004502 rtn 
-:      004508 prepare_tx:
-0x2489 004509 bpatch patch09_2 ,mem_patch09 
-0x248a 004510 fetch 1 ,mem_state 
-0x248b 004511 bbit0 state_insco ,prepare_tx_not_sco 
-0x248c 004512 force type_hv3 ,type 
-0x248d 004513 bmark0 mark_esco ,prepare_tx_not_esco 
-0x248e 004514 call check_esco_amaddr 
-0x248f 004515 nbranch prepare_tx_not_sco ,true 
-0x2490 004516 branch prepare_tx_not_sco ,attempt 
-0x2491 004517 call set_wait_ack 
-0x2492 004518 setarg 2 
-0x2493 004519 store 2 ,mem_retransmission_cnt 
-0x2494 004520 rtn 
-:      004521 prepare_tx_not_esco:
-0x2495 004522 nrtn attempt 
-:      004523 prepare_tx_not_sco:
-0x2496 004524 bpatch patch09_3 ,mem_patch09 
-0x2497 004525 call context_check_all_wack 
-0x2498 004526 nbranch prepare_tx_no_retransmit ,zero 
-0x2499 004527 fetch 1 ,mem_arq 
-0x249a 004528 bbit0 wack ,prepare_tx_pollnull 
-:      004529 prepare_tx_retransmit:
-0x249b 004530 bmark1 mark_loopback ,prepare_tx_loopback 
-0x249c 004531 fetch 1 ,mem_debug_config 
-0x249d 004532 bbit1 debug_tx_pattern ,prepare_tx_txpat 
-0x249e 004533 fetch 2 ,mem_retransmission_cnt 
-0x249f 004534 increase -1 ,pdata 
-0x24a0 004535 store 2 ,mem_retransmission_cnt 
-0x24a1 004536 branch prepare_tx_nomore_retransmit ,blank 
-0x24a2 004537 fetch 1 ,mem_last_type 
-0x24a3 004538 iforce type 
-0x24a4 004539 rtn 
-:      004541 prepare_tx_nomore_retransmit:
-0x24a5 004542 bpatch patch09_4 ,mem_patch09 
-0x24a6 004543 call clear_got_tx 
-:      004544 prepare_tx_no_retransmit:
-0x24a7 004545 call check_esco_amaddr 
-0x24a8 004546 branch prepare_tx_pollnull ,true 
-0x24a9 004547 call send_lmp 
-0x24aa 004548 branch prepare_tx_sendlmp ,user 
-0x24ab 004549 fetch 1 ,mem_op 
-0x24ac 004550 bbit1 op_txl2cap ,prepare_tx_sendl2cap 
-0x24ad 004551 bmark1 mark_loopback ,prepare_tx_loopback 
-0x24ae 004552 fetch 1 ,mem_debug_config 
-0x24af 004553 bbit1 debug_tx_pattern ,prepare_tx_txpat 
-:      004554 prepare_tx_pollnull:
-0x24b0 004555 force type_poll ,type 
-0x24b1 004556 rtn master 
-0x24b2 004557 force type_null ,type 
-0x24b3 004558 rtn 
-:      004559 prepare_tx_loopback:
-0x24b4 004560 bpatch patch09_5 ,mem_patch09 
-0x24b5 004561 fetch 1 ,mem_rx_type 
-0x24b6 004562 iforce type 
-0x24b7 004563 rtnne 1 
-0x24b8 004564 force type_null ,type 
-0x24b9 004565 rtn 
-:      004566 prepare_tx_txpat:
-0x24ba 004567 fetch 1 ,test_mode_packet_type 
-0x24bb 004568 and pdata ,0xf ,type 
-0x24bc 004569 set1 mark_loopback ,mark 
-0x24bd 004570 rtn 
-:      004571 prepare_tx_sendlmp:
-0x24be 004572 force type_lmp ,type 
-0x24bf 004573 branch set_wait_ack 
-:      004574 prepare_tx_sendl2cap:
-0x24c0 004575 call tx_l2cap_type 
-:      004577 set_wait_ack:
-0x24c1 004578 bpatch patch09_6 ,mem_patch09 
-0x24c2 004579 fetcht 1 ,mem_arq 
-0x24c3 004580 set1 wack ,temp 
-0x24c4 004581 storet 1 ,mem_arq 
-0x24c5 004582 deposit type 
-0x24c6 004583 store 1 ,mem_last_type 
-0x24c7 004584 setarg 0xffff 
-0x24c8 004585 store 2 ,mem_retransmission_cnt 
-0x24c9 004586 rtn 
-:      004588 tx_l2cap_type:
-0x24ca 004589 bpatch patch09_7 ,mem_patch09 
-0x24cb 004590 fetch 1 ,mem_state_map 
-0x24cc 004591 isolate1 smap_edr ,pdata 
-0x24cd 004592 fetch 2 ,mem_tx_len 
-0x24ce 004593 branch tx_l2cap_type_edr ,true 
-0x24cf 004594 force type_dm1 ,type 
-0x24d0 004595 sub pdata ,17 ,null 
-0x24d1 004596 rtn positive 
-0x24d2 004597 force type_dh1 ,type 
-0x24d3 004598 sub pdata ,27 ,null 
-0x24d4 004599 rtn positive 
-0x24d5 004600 force type_dm3 ,type 
-0x24d6 004601 sub pdata ,121 ,null 
-0x24d7 004602 rtn positive 
-0x24d8 004603 force type_dh3 ,type 
-0x24d9 004604 sub pdata ,183 ,null 
-0x24da 004605 rtn positive 
-0x24db 004606 force type_dm5 ,type 
-0x24dc 004607 sub pdata ,224 ,null 
-0x24dd 004608 rtn positive 
-0x24de 004609 force type_dh5 ,type 
-0x24df 004610 rtn 
-:      004611 tx_l2cap_type_edr:
-0x24e0 004612 force type_dm1 ,type 
-0x24e1 004613 sub pdata ,17 ,null 
-0x24e2 004614 rtn positive 
-0x24e3 004615 force type_dh1 ,type 
-0x24e4 004616 sub pdata ,54 ,null 
-0x24e5 004617 rtn positive 
-0x24e6 004618 force type_dm3 ,type 
-0x24e7 004619 arg 367 ,temp 
-0x24e8 004620 isub temp ,null 
-0x24e9 004621 nrtn positive 
-0x24ea 004622 force type_dm5 ,type 
-0x24eb 004623 arg 679 ,temp 
-0x24ec 004624 isub temp ,null 
-0x24ed 004625 nrtn positive 
-0x24ee 004626 force type_dh5 ,type 
-0x24ef 004627 rtn 
-:      004636 slave_receive_master_slot:
-0x24f0 004637 fetch 1 ,mem_state 
-0x24f1 004638 bbit0 state_insniff ,slave_receive_notsniff 
-0x24f2 004639 fetch 2 ,mem_tsniff 
-0x24f3 004640 branch slave_receive_notsniff ,blank 
-0x24f4 004641 nbranch slave_receive_sniff ,attempt 
-:      004642 slave_receive_notsniff:
-0x24f5 004643 call rf_setup_time_master_slot 
-:      004644 slave_receive_access:
-0x24f6 004645 add clke_bt ,1 ,bt_clk 
-:      004646 slave_receive_sniff:
-0x24f7 004647 enable swfine 
-0x24f8 004648 fetch 2 ,mem_rx_window 
-0x24f9 004649 rshift pdata ,pdata 
-0x24fa 004650 arg param_pll_setup ,temp 
-0x24fb 004651 iadd temp ,pdata 
-0x24fc 004652 call ahead_window 
-0x24fd 004653 call fetch_extm_bt_adr 
-0x24fe 004654 force 0x03 ,freq_mode 
-0x24ff 004655 call rx_radio_freq 
-0x2500 004656 call init_rx_packet_flags 
-0x2501 004657 call prep_crypt 
-0x2502 004658 bpatch patch0a_0 ,mem_patch0a 
-0x2503 004659 fetch 2 ,mem_rx_window 
-0x2504 004660 rshift pdata ,pdata 
-0x2505 004661 call ahead_window 
-0x2506 004662 call start_receiver 
-0x2507 004663 enable decode_fec0 
-0x2508 004664 fetch 2 ,mem_rx_window 
-0x2509 004665 arg param_clke_cal ,temp 
-0x250a 004666 iadd temp ,stop_watch 
-0x250b 004667 correlate null ,timeout 
-0x250c 004668 copy clke ,temp 
-0x250d 004669 storet 6 ,mem_sync_clke 
-0x250e 004670 disable decode_fec0 
-0x250f 004671 nrtn sync 
-0x2510 004672 arg param_clke_cal ,clke_rt 
-0x2511 004673 copy bt_clk ,clke_bt 
-0x2512 004674 branch lpm_adjust_clk ,wake 
-0x2513 004675 rtn 
-:      004678 slave_conn_recv_packet:
-0x2514 004679 bpatch patch0a_1 ,mem_patch0a 
-0x2515 004680 call slave_receive_master_slot 
-0x2516 004681 nbranch shutdown_radio ,sync 
-0x2517 004682 call save_rssi 
-0x2518 004683 bmark0 mark_testmode ,receive_packet 
-0x2519 004684 fetch 2 ,mem_tst_pktcnt_sync 
-0x251a 004685 increase 1 ,pdata 
-0x251b 004686 store 2 ,mem_tst_pktcnt_sync 
-:      004687 receive_packet:
-0x251c 004688 rshift bt_clk ,temp 
-0x251d 004689 or temp ,0x40 ,white_init 
-:      004690 receive_packet_whitened:
-0x251e 004691 bpatch patch0a_2 ,mem_patch0a 
-0x251f 004692 enable enable_white 
-0x2520 004693 enable enable_hec 
-0x2521 004694 enable decode_fec1 
-0x2522 004695 parse demod ,bucket ,3 
-0x2523 004696 rshift8 pwindow ,pdata 
-0x2524 004697 store 1 ,mem_temp_am_addr 
-0x2525 004698 parse demod ,bucket ,4 
-0x2526 004699 inject bucket ,7 
-0x2527 004700 copy pwindow ,pdata 
-0x2528 004701 store 1 ,mem_rx_type 
-0x2529 004702 parse demod ,bucket ,3 
-0x252a 004703 rshift8 pwindow ,pdata 
-0x252b 004704 store 1 ,mem_temp_arq 
-0x252c 004705 fetch 1 ,mem_rx_type 
-0x252d 004706 sub pdata ,3 ,null 
-0x252e 004707 branch receive_packet_noedr ,positive 
-0x252f 004708 beq 7 ,receive_packet_noedr 
-0x2530 004709 fetch 1 ,mem_state_map 
-0x2531 004710 isolate1 smap_edr ,pdata 
-0x2532 004711 setflag true ,psk ,radio_ctrl 
-:      004712 receive_packet_noedr:
-0x2533 004713 bpatch patch0a_3 ,mem_patch0a 
-0x2534 004714 parse demod ,bucket ,8 
-0x2535 004715 disable decode_fec1 
-0x2536 004716 disable enable_hec 
-0x2537 004717 branch error_header ,crc_failed 
-0x2538 004718 bmark0 mark_testmode ,receive_packet_amchk 
-0x2539 004719 fetch 2 ,mem_tst_pktcnt_hec 
-0x253a 004720 increase 1 ,pdata 
-0x253b 004721 store 2 ,mem_tst_pktcnt_hec 
-:      004722 receive_packet_amchk:
-0x253c 004723 bpatch patch0a_4 ,mem_patch0a 
-0x253d 004724 fetch 1 ,mem_temp_am_addr 
-0x253e 004725 compare 0 ,pdata ,0x07 
-0x253f 004726 setflag true ,mark_am_addr_broadcast ,mark 
-0x2540 004727 branch am_addr_ok ,true 
-0x2541 004728 icompare 0x07 ,am_addr 
-0x2542 004729 branch am_addr_match ,true 
-0x2543 004730 bmark0 mark_esco ,end_of_packet 
-0x2544 004731 fetcht 1 ,mem_saved_amaddr 
-0x2545 004732 icompare 0x7 ,temp 
-0x2546 004733 nbranch end_of_packet ,true 
-0x2547 004734 fetch 1 ,mem_arq 
-0x2548 004735 set0 arqnx ,pdata 
-0x2549 004736 set1 flowx ,pdata 
-0x254a 004737 store 1 ,mem_arq 
-:      004738 am_addr_match:
-0x254b 004739 enable match 
-:      004740 am_addr_ok:
-0x254c 004741 bpatch patch0a_5 ,mem_patch0a 
-0x254d 004742 fetch 1 ,mem_rx_type 
-0x254e 004743 icopy type 
-0x254f 004744 bmark1 mark_am_addr_broadcast ,arqn_bypass 
-0x2550 004745 fetcht 1 ,mem_temp_arq 
-0x2551 004746 fetch 1 ,mem_arq 
-0x2552 004747 set0 flow ,pdata 
-0x2553 004748 isolate1 flow ,temp 
-0x2554 004749 setflag true ,flow ,pdata 
-0x2555 004750 isolate1 arqn ,temp 
-0x2556 004751 setflag true ,arqn ,pdata 
-0x2557 004752 store 1 ,mem_arq 
-0x2558 004753 isolate0 arqn ,temp 
-0x2559 004754 branch arqn_bypass ,true 
-0x255a 004755 call clear_got_tx 
-:      004756 arqn_bypass:
-0x255b 004757 bpatch patch0a_6 ,mem_patch0a 
-0x255c 004758 arg 0 ,temp 
-0x255d 004759 call reserve_slot 
-0x255e 004760 and type ,0xf ,pdata 
-0x255f 004761 beq type_poll ,process_poll 
-0x2560 004762 beq type_null ,end_of_packet 
-0x2561 004763 beq type_fhs ,process_fhs 
-0x2562 004764 fetcht 1 ,mem_temp_arq 
-0x2563 004765 fetch 1 ,mem_arq 
-0x2564 004766 icompare 0x04 ,temp 
-0x2565 004767 nbranch rx_type_dispatch ,true 
-0x2566 004768 bmark0 mark_am_addr_broadcast ,failed_seqn 
-0x2567 004769 bbit0 bcast1 ,rx_type_dispatch 
-:      004770 failed_seqn:
-0x2568 004771 set1 mark_old_packet ,mark 
-:      004772 rx_type_dispatch:
-0x2569 004773 bpatch patch0a_7 ,mem_patch0a 
-0x256a 004774 deposit type 
-0x256b 004775 beq type_dm1 ,process_dm1 
-0x256c 004776 beq type_dh1 ,process_dh1 
-0x256d 004777 beq type_hv3 ,process_hev 
-0x256e 004778 beq type_3dh1 ,process_3dh1 
-0x256f 004779 arg 4 ,temp 
-0x2570 004780 call reserve_slot 
-0x2571 004781 beq type_dm3 ,process_dm3 
-0x2572 004782 beq type_dh3 ,process_dh3 
-0x2573 004783 arg 8 ,temp 
-0x2574 004784 call reserve_slot 
-0x2575 004785 beq type_dm5 ,process_dm5 
-0x2576 004786 beq type_dh5 ,process_dh5 
-0x2577 004787 rtn 
-:      004790 process_hev:
-0x2578 004791 bpatch patch0b_0 ,mem_patch0b 
-0x2579 004792 enable decode_fec0 
-0x257a 004793 enable enable_crc 
-0x257b 004794 enable encrypt 
-0x257c 004795 arg mem_sco_ibuf ,contw 
-0x257d 004796 force 30 ,loopcnt 
-:      004797 process_hev_loop:
-0x257e 004798 parse demod ,bucket ,8 
-0x257f 004799 rshift3 pwindow ,pdata 
-0x2580 004800 istore 1 ,contw 
-0x2581 004801 loop process_hev_loop 
-0x2582 004802 bmark0 mark_esco ,end_of_packet 
-0x2583 004803 parse demod ,bucket ,16 
-0x2584 004804 nsetflag crc_failed ,mark_esco_rxok ,mark 
-0x2585 004805 branch error_payload ,crc_failed 
-0x2586 004806 branch ack_payload 
-:      004809 process_poll:
-0x2587 004810 branch end_of_packet 
-:      004812 process_dm3:
-:      004813 process_dm5:
-0x2588 004814 set1 mark_longpacket ,mark 
-:      004815 process_dm1:
-0x2589 004816 enable decode_fec2 
-0x258a 004817 branch process_dmh 
-:      004819 process_dh3:
-:      004820 process_dh5:
-0x258b 004821 set1 mark_longpacket ,mark 
-:      004822 process_3dh1:
-0x258c 004823 set1 psk3m ,radio_ctrl 
-:      004824 process_dh1:
-0x258d 004825 enable decode_fec0 
-:      004826 process_dmh:
-0x258e 004827 bpatch patch0b_1 ,mem_patch0b 
-0x258f 004828 bmark1 mark_rxbuf_inuse ,end_of_packet 
-0x2590 004829 isolate0 psk ,radio_ctrl 
-0x2591 004830 branch process_dmh_noedr ,true 
-0x2592 004831 disable enable_white 
-0x2593 004832 enable decode_fec0 
-0x2594 004833 disable decode_fec2 
-0x2595 004834 add clkn_bt ,2 ,timeup 
-0x2596 004835 correlate clkn_bt ,meet 
-0x2597 004836 nbranch error_payload ,sync 
-0x2598 004837 set1 mark_longpacket ,mark 
-0x2599 004838 enable enable_white 
-:      004839 process_dmh_noedr:
-0x259a 004840 bpatch patch0b_2 ,mem_patch0b 
-0x259b 004841 enable encrypt 
-0x259c 004842 enable enable_crc 
-0x259d 004843 parse demod ,bucket ,3 
-0x259e 004844 rshift8 pwindow ,pdata 
-0x259f 004845 store 1 ,mem_lch_code 
-0x25a0 004846 parse demod ,bucket ,5 
-0x25a1 004847 bmark1 mark_longpacket ,process_dmh_long 
-0x25a2 004848 rshift3 pwindow ,loopcnt 
-0x25a3 004849 rshift3 loopcnt ,loopcnt 
-0x25a4 004850 branch process_dmh_common 
-:      004851 process_dmh_long:
-0x25a5 004852 parse demod ,bucket ,5 
-0x25a6 004853 rshift pwindow ,loopcnt 
-0x25a7 004854 parse demod ,bucket ,3 
-:      004855 process_dmh_common:
-0x25a8 004856 bpatch patch0b_3 ,mem_patch0b 
-0x25a9 004857 deposit loopcnt 
-0x25aa 004858 store 2 ,mem_len 
-0x25ab 004859 branch process_dmh_data_end ,blank 
-0x25ac 004860 isub mask3ff ,null 
-0x25ad 004861 branch error_payload ,positive 
-0x25ae 004862 bpatch patch0b_4 ,mem_patch0b 
-0x25af 004863 set0 mark_fhs_eir ,mark 
-0x25b0 004864 fetch 1 ,mem_lch_code 
-0x25b1 004865 and_into 0x03 ,pdata 
-0x25b2 004866 arg mem_rxbuf ,contw 
-0x25b3 004867 beq llid_lmp ,process_lmp 
-0x25b4 004868 bmark1 mark_testmode ,process_dmh_data 
-0x25b5 004870 fetch 1 ,mem_lch_code 
-0x25b6 004871 and_into 0x03 ,pdata 
-0x25b7 004872 beq llid_l2cap_start ,process_dmh_data_l2cap_start_pkt 
-0x25b8 004873 beq llid_l2cap_cont ,process_dmh_data_l2cap_continue_pkt 
-0x25b9 004874 branch error_payload 
-:      004876 process_lmp:
-0x25ba 004877 fetch 2 ,mem_len 
-0x25bb 004878 sub pdata ,0x70 ,null 
-0x25bc 004879 nbranch error_payload ,positive 
-0x25bd 004880 bmark1 mark_old_packet ,ack_payload 
-0x25be 004881 branch process_dmh_data 
-:      004884 process_dmh_data_l2cap_start_pkt:
-0x25bf 004885 bpatch patch0b_5 ,mem_patch0b 
-0x25c0 004886 bmark1 mark_old_packet ,ack_payload 
-0x25c1 004887 fetch 2 ,mem_len 
-0x25c2 004888 arg 0x2e0 ,temp 
-0x25c3 004889 isub temp ,null 
-0x25c4 004890 branch error_payload ,positive 
-0x25c5 004891 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x25c6 004892 bbit0 l2cap_inuse_buff1 ,process_dmh_data_into_buff1 
-0x25c7 004893 bbit0 l2cap_inuse_buff2 ,process_dmh_data_into_buff2 
-0x25c8 004894 branch end_of_packet 
-:      004895 process_dmh_data_into_buff1:
-0x25c9 004896 jam 1 ,mem_l2cap_rxbuff_new 
-0x25ca 004897 fetch 2 ,mem_l2cap_rxbuff1_len 
-0x25cb 004898 bne 0 ,end_of_packet 
-0x25cc 004899 arg mem_l2cap_rxbuff1 ,contw 
-0x25cd 004900 branch process_dmh_data 
-:      004901 process_dmh_data_into_buff2:
-0x25ce 004902 jam 2 ,mem_l2cap_rxbuff_new 
-0x25cf 004903 fetch 2 ,mem_l2cap_rxbuff2_len 
-0x25d0 004904 bne 0 ,end_of_packet 
-0x25d1 004905 arg mem_l2cap_rxbuff2 ,contw 
-0x25d2 004906 branch process_dmh_data 
-:      004908 process_dmh_data_l2cap_continue_pkt:
-0x25d3 004909 bpatch patch0b_6 ,mem_patch0b 
-0x25d4 004910 bmark1 mark_old_packet ,ack_payload 
-0x25d5 004911 fetch 2 ,mem_len 
-0x25d6 004912 arg 0x2e0 ,temp 
-0x25d7 004913 isub temp ,null 
-0x25d8 004914 branch error_payload ,positive 
-0x25d9 004915 fetch 1 ,mem_l2cap_rxbuff_new 
-0x25da 004916 beq 1 ,process_dmh_data_l2cap_continue_pkt1 
-0x25db 004917 beq 2 ,process_dmh_data_l2cap_continue_pkt2 
-0x25dc 004918 branch end_of_packet 
-:      004919 process_dmh_data_l2cap_continue_pkt1:
-0x25dd 004920 arg mem_l2cap_rxbuff1 ,contw 
-0x25de 004921 fetch 2 ,mem_l2cap_rxbuff1_len 
-0x25df 004922 iadd contw ,contw 
-0x25e0 004923 branch process_dmh_data 
-:      004924 process_dmh_data_l2cap_continue_pkt2:
-0x25e1 004925 arg mem_l2cap_rxbuff2 ,contw 
-0x25e2 004926 fetch 2 ,mem_l2cap_rxbuff2_len 
-0x25e3 004927 iadd contw ,contw 
-:      004928 process_dmh_data:
-0x25e4 004929 parse demod ,bucket ,8 
-0x25e5 004930 rshift3 pwindow ,pdata 
-0x25e6 004931 istore 1 ,contw 
-0x25e7 004932 loop process_dmh_data 
-:      004933 process_dmh_data_end:
-0x25e8 004934 bpatch patch0b_7 ,mem_patch0b 
-0x25e9 004935 parse demod ,bucket ,16 
-0x25ea 004936 branch error_payload_crc ,crc_failed 
-0x25eb 004937 fetch 1 ,mem_l2cap_flow_ctrl_flag 
-0x25ec 004938 beq l2cap_flow_ctrl_enable ,end_of_packet 
-0x25ed 004939 bmark1 mark_testmode ,process_dmh_cont 
-0x25ee 004940 bmark1 mark_old_packet ,redundant_payload 
-0x25ef 004941 fetch 1 ,mem_lch_code 
-0x25f0 004942 compare 3 ,pdata ,3 
-0x25f1 004943 branch process_dmh_cont ,true 
-0x25f2 004944 fetch 2 ,mem_len 
-0x25f3 004945 branch process_dmh_cont ,blank 
-0x25f4 004946 bpatch patch0c_0 ,mem_patch0c 
-0x25f5 004947 fetch 1 ,mem_l2cap_rxbuff_new 
-0x25f6 004948 beq 1 ,process_l2cap_pass_crc_buff1 
-0x25f7 004949 beq 2 ,process_l2cap_pass_crc_buff2 
-0x25f8 004950 branch assert 
-:      004951 process_l2cap_pass_crc_buff1:
-0x25f9 004952 fetch 2 ,mem_l2cap_rxbuff1_len 
-0x25fa 004953 fetcht 2 ,mem_len 
-0x25fb 004954 iadd temp ,pdata 
-0x25fc 004955 store 2 ,mem_l2cap_rxbuff1_len 
-0x25fd 004956 beq 0 ,assert 
-0x25fe 004957 fetcht 2 ,mem_l2cap_rxbuff1 
-0x25ff 004958 increase 4 ,temp 
-0x2600 004959 isub temp ,null 
-0x2601 004960 call l2cap_buff1_inuse ,zero 
-0x2602 004961 branch process_dmh_cont 
-:      004962 process_l2cap_pass_crc_buff2:
-0x2603 004963 fetch 2 ,mem_l2cap_rxbuff2_len 
-0x2604 004964 fetcht 2 ,mem_len 
-0x2605 004965 iadd temp ,pdata 
-0x2606 004966 store 2 ,mem_l2cap_rxbuff2_len 
-0x2607 004967 beq 0 ,assert 
-0x2608 004968 fetcht 2 ,mem_l2cap_rxbuff2 
-0x2609 004969 add temp ,4 ,temp 
-0x260a 004970 isub temp ,null 
-0x260b 004971 call l2cap_buff2_inuse ,zero 
-0x260c 004972 branch process_dmh_cont 
-:      004973 process_dmh_cont:
-0x260d 004974 bpatch patch0c_1 ,mem_patch0c 
-0x260e 004975 fetcht 1 ,mem_state_map 
-0x260f 004976 fetch 1 ,mem_lch_code 
-0x2610 004977 compare 3 ,pdata ,0x03 
-0x2611 004978 setflag true ,smap_rxlmp ,temp 
-0x2612 004979 nsetflag true ,smap_rxl2cap ,temp 
-0x2613 004980 storet 1 ,mem_state_map 
-0x2614 004981 nbranch process_dmh_cont_rxbuf_not_use ,true 
-0x2615 004982 set1 mark_rxbuf_inuse ,mark 
-:      004983 process_dmh_cont_rxbuf_not_use:
-0x2616 004984 bmark0 mark_testmode ,ack_payload 
-0x2617 004985 isolate1 smap_rxlmp ,temp 
-0x2618 004986 branch ack_payload ,true 
-0x2619 004987 fetch 2 ,mem_tst_pktcnt_crc 
-0x261a 004988 increase 1 ,pdata 
-0x261b 004989 store 2 ,mem_tst_pktcnt_crc 
-0x261c 004990 set1 mark_loopback ,mark 
-0x261d 004991 set0 smap_rxl2cap ,temp 
-0x261e 004992 set0 mark_rxbuf_inuse ,mark 
-0x261f 004993 storet 1 ,mem_state_map 
-:      004994 ack_payload:
-0x2620 004995 bpatch patch0c_2 ,mem_patch0c 
-0x2621 004996 fetcht 1 ,mem_temp_arq 
-0x2622 004997 fetch 1 ,mem_arq 
-0x2623 004998 set1 arqnx ,pdata 
-0x2624 004999 isolate1 seqn ,temp 
-0x2625 005000 setflag true ,seqn ,pdata 
-0x2626 005001 isolate1 mark_am_addr_broadcast ,mark 
-0x2627 005002 setflag true ,bcast1 ,pdata 
-0x2628 005003 store 1 ,mem_arq 
-0x2629 005004 fetch 2 ,mem_len 
-0x262a 005005 nbranch end_of_packet ,blank 
-0x262b 005006 fetch 1 ,mem_state_map 
-0x262c 005007 set0 smap_rxl2cap ,pdata 
-0x262d 005008 store 1 ,mem_state_map 
-0x262e 005009 fetch 1 ,mem_lch_code 
-0x262f 005010 compare 0x01 ,pdata ,0x07 
-0x2630 005012 branch end_of_packet 
-:      005014 error_header:
-0x2631 005015 bpatch patch0c_3 ,mem_patch0c 
-0x2632 005016 disable match 
-0x2633 005017 fetch 2 ,mem_rx_hec_err 
-0x2634 005018 increase 1 ,pdata 
-0x2635 005019 store 2 ,mem_rx_hec_err 
-0x2636 005020 branch end_of_packet 
-:      005021 error_payload_crc:
-0x2637 005022 fetch 2 ,mem_rx_crc_err 
-0x2638 005023 increase 1 ,pdata 
-0x2639 005024 store 2 ,mem_rx_crc_err 
-0x263a 005025 call discard_pkt 
-0x263b 005026 bmark0 mark_testmode ,error_payload 
-0x263c 005027 set1 mark_loopback ,mark 
-:      005028 error_payload:
-0x263d 005029 branch end_of_packet 
-:      005031 discard_pkt:
-0x263e 005032 bpatch patch0c_4 ,mem_patch0c 
-0x263f 005033 fetch 1 ,mem_lch_code 
-0x2640 005034 compare 3 ,pdata ,0x03 
-0x2641 005035 nbranch discard_pkt_l2cap ,true 
-:      005036 discard_pkt_lmp:
-0x2642 005037 fetcht 1 ,mem_state_map 
-0x2643 005038 set0 smap_rxlmp ,temp 
-0x2644 005039 storet 1 ,mem_state_map 
-0x2645 005040 rtn 
-:      005041 discard_pkt_l2cap:
-0x2646 005044 fetcht 1 ,mem_state_map 
-0x2647 005045 set0 smap_rxl2cap ,temp 
-0x2648 005046 storet 1 ,mem_state_map 
-0x2649 005047 branch h4_send_acl_trigger_clear 
-:      005049 redundant_payload:
-0x264a 005050 fetch 1 ,mem_arq 
-0x264b 005051 set1 arqnx ,pdata 
-0x264c 005052 store 1 ,mem_arq 
-:      005053 end_of_packet:
-0x264d 005054 bpatch patch0c_5 ,mem_patch0c 
-0x264e 005055 disable encode_fec0 
-0x264f 005056 disable encode_fec2 
-0x2650 005057 disable decode_fec0 
-0x2651 005058 disable decode_fec2 
-0x2652 005059 disable enable_crc 
-0x2653 005060 disable encrypt 
-0x2654 005061 disable enable_white 
-0x2655 005062 branch shutdown_radio ,is_rx 
-0x2656 005063 until null ,tx_clear 
-0x2657 005064 nop 100 
-0x2658 005065 branch shutdown_radio 
-:      005067 process_fhs:
-0x2659 005068 bpatch patch0c_6 ,mem_patch0c 
-0x265a 005069 enable enable_crc 
-0x265b 005070 enable decode_fec2 
-0x265c 005071 parse demod ,bucket ,72 
-0x265d 005072 isolate1 58 ,pdata 
-0x265e 005073 setflag true ,mark_fhs_eir ,mark 
-0x265f 005074 copy bt_adr ,temp 
-0x2660 005075 ialigned bt_adr 
-0x2661 005076 ialigned fhs0 
-0x2662 005077 pulse recalc 
-0x2663 005078 setsect 2 ,0xfffff 
-0x2664 005079 setsect 3 ,0x0ffff 
-0x2665 005080 nop 32 
-0x2666 005081 iverify fhs_parity 
-0x2667 005082 deposit lap 
-0x2668 005083 store 3 ,extm_lap 
-0x2669 005084 deposit uap 
-0x266a 005085 store 1 ,extm_uap 
-0x266b 005086 copy temp ,bt_adr 
-0x266c 005087 branch fhs_parity_ok ,true 
-0x266d 005088 branch error_payload 
-:      005089 fhs_parity_ok:
-0x266e 005090 bpatch patch0c_7 ,mem_patch0c 
-0x266f 005091 parse demod ,bucket ,72 
-0x2670 005092 ialigned fhs1 
-0x2671 005093 ialigned am_addr 
-0x2672 005094 ialigned nap 
-0x2673 005095 ialigned regb 
-0x2674 005096 force 0 ,pdata 
-0x2675 005097 parse demod ,bucket ,16 
-0x2676 005098 branch error_payload ,crc_failed 
-0x2677 005099 setarg 0x0ffffffc 
-0x2678 005100 iand regb ,pdata 
-0x2679 005101 store 4 ,mem_clke_bt 
-0x267a 005102 deposit fhs_class 
-0x267b 005103 store 3 ,extm_class 
-0x267c 005104 deposit fhs_misc 
-0x267d 005105 store 1 ,extm_fhs_misc 
-0x267e 005106 deposit am_addr 
-0x267f 005107 store 1 ,extm_newconn_am_addr 
-0x2680 005108 deposit nap 
-0x2681 005109 store 2 ,extm_nap 
-0x2682 005110 deposit bt_clk 
-0x2683 005111 inject rxf ,32 
-0x2684 005112 compare type_fhs ,type ,0x0f 
-0x2685 005113 setflag true ,mark_fhs_already_good ,mark 
-0x2686 005114 branch end_of_packet 
-:      005116 clear_got_tx:
-0x2687 005117 bpatch patch0d_0 ,mem_patch0d 
-0x2688 005118 fetch 1 ,mem_arq 
-0x2689 005119 rtnbit0 wack 
-0x268a 005120 set0 wack ,pdata 
-0x268b 005121 setflip seqnx ,pdata 
-0x268c 005122 store 1 ,mem_arq 
-0x268d 005123 fetch 1 ,mem_last_type 
-0x268e 005124 beq type_lmp ,clear_got_txlmp 
-0x268f 005125 rtneq type_hv3 
-0x2690 005126 fetch 1 ,mem_op 
-0x2691 005127 rtnbit0 op_txl2cap ,pdata 
-0x2692 005128 set0 op_txl2cap ,pdata 
-0x2693 005129 set1 op_pkt_comp ,pdata 
-0x2694 005130 store 1 ,mem_op 
-0x2695 005131 set0 mark_tx_l2cap ,mark 
-0x2696 005132 fetch 2 ,mem_l2cap_tx_multi_offset 
-0x2697 005133 nrtn blank 
-0x2698 005134 fetch 1 ,mem_op 
-0x2699 005135 set0 op_pkt_comp ,pdata 
-0x269a 005136 store 1 ,mem_op 
-0x269b 005137 branch l2cap_malloc_free 
-:      005139 clear_got_txlmp:
-0x269c 005140 bpatch patch0d_1 ,mem_patch0d 
-0x269d 005141 fetch 1 ,mem_lmo_header_opcode 
-0x269e 005142 rshift pdata ,pdata 
-0x269f 005143 beq lmp_start_encryption_req ,start_encryption 
-0x26a0 005144 beq lmp_stop_encryption_req ,stop_encryption 
-0x26a1 005145 beq lmp_unsniff_req ,sniff_exit 
-0x26a2 005146 beq lmp_escape ,clear_lmp_escape 
-0x26a3 005147 rtnne lmp_accepted 
-0x26a4 005148 fetch 1 ,mem_lmo_payload 
-0x26a5 005149 beq lmp_sco_link_req ,sco_link_req_by_slave 
-0x26a6 005150 beq lmp_start_encryption_req ,clear_send_setup_complete 
-0x26a7 005151 rtn 
-:      005153 clear_lmp_escape:
-0x26a8 005154 fetch 1 ,mem_lmo_payload 
-0x26a9 005155 set1 7 ,pdata 
-0x26aa 005156 rtn 
-:      005157 clear_send_setup_complete:
-0x26ab 005158 rtn master 
-0x26ac 005159 fetch 1 ,mem_state 
-0x26ad 005160 rtnbit1 state_conn_comp 
-0x26ae 005161 jam lmp_setup_complete ,mem_lmo_opcode2 
-0x26af 005162 rtn 
-:      005165 sco_link_req_by_slave:
-0x26b0 005166 rtn master 
-0x26b1 005167 fetch 1 ,mem_mode 
-0x26b2 005168 isolate1 send_sco_when_slave ,pdata 
-0x26b3 005169 branch clean_mem_mode ,true 
-0x26b4 005171 rtn 
-:      005172 clean_mem_mode:
-0x26b5 005173 set0 send_sco_when_slave ,pdata 
-0x26b6 005174 store 1 ,mem_mode 
-0x26b7 005175 rtn 
-:      005177 start_encryption:
-0x26b8 005178 bpatch patch0d_2 ,mem_patch0d 
-0x26b9 005179 fetch 1 ,mem_state_map 
-0x26ba 005180 set1 smap_encryption ,pdata 
-0x26bb 005181 store 1 ,mem_state_map 
-0x26bc 005182 jam 1 ,core_encrypt 
-0x26bd 005183 fetch 1 ,mem_state 
-0x26be 005184 isolate1 state_conn_comp ,pdata 
-0x26bf 005185 rtn 
-:      005187 stop_encryption:
-0x26c0 005188 bpatch patch0d_3 ,mem_patch0d 
-0x26c1 005189 fetch 1 ,mem_state_map 
-0x26c2 005190 set0 smap_encryption ,pdata 
-0x26c3 005191 store 1 ,mem_state_map 
-0x26c4 005192 jam 0 ,core_encrypt 
-0x26c5 005193 rtn 
-:      005196 sniff_init:
-0x26c6 005197 bpatch patch0d_4 ,mem_patch0d 
-0x26c7 005198 copy clkn_bt ,pdata 
-0x26c8 005199 store 4 ,mem_lpm_delay_after_sniff 
-0x26c9 005200 add clkn_bt ,3 ,rega 
-0x26ca 005201 branch sniff_init_master ,master 
-0x26cb 005202 add clke_bt ,3 ,rega 
-:      005203 sniff_init_master:
-0x26cc 005204 fetcht 2 ,mem_tsniff 
-0x26cd 005205 deposit rega 
-0x26ce 005206 set0 27 ,pdata 
-0x26cf 005207 idiv temp 
-0x26d0 005208 fetch 2 ,mem_dsniff 
-0x26d1 005209 call wait_div_end 
-0x26d2 005210 remainder regc 
-0x26d3 005211 isub regc ,pdata 
-0x26d4 005212 branch sniff_init_nowrap ,positive 
-0x26d5 005213 iadd temp ,pdata 
-:      005214 sniff_init_nowrap:
-0x26d6 005215 iadd rega ,pdata 
-0x26d7 005216 store 4 ,mem_sniff_anchor 
-0x26d8 005217 jam switch_flag_init ,mem_switch_flag 
-0x26d9 005218 fetch 1 ,mem_state 
-0x26da 005219 set1 state_insniff ,pdata 
-0x26db 005220 store 1 ,mem_state 
-0x26dc 005221 fetch 1 ,mem_sniff_attempt 
-0x26dd 005222 store 1 ,mem_current_sniff_attempt 
-0x26de 005223 setarg 0 
-0x26df 005224 store 3 ,mem_sniff_rcv 
-0x26e0 005225 store 3 ,mem_sniff_lost 
-0x26e1 005226 store 1 ,mem_sniff_unint_lost 
-0x26e2 005227 jam bt_evt_enter_sniff ,mem_fifo_temp 
-0x26e3 005228 call ui_ipc_send_event 
-0x26e4 005229 fetch 2 ,mem_rx_window_sniff 
-0x26e5 005230 store 2 ,mem_rx_window 
-0x26e6 005231 nrtn master 
-0x26e7 005232 add am_addr ,-1 ,queue 
-0x26e8 005233 rtn 
-:      005235 sniff_exit:
-0x26e9 005236 bpatch patch0d_5 ,mem_patch0d 
-0x26ea 005237 fetch 1 ,mem_state 
-0x26eb 005238 rtnbit0 state_insniff 
-0x26ec 005239 set0 state_insniff ,pdata 
-0x26ed 005240 store 1 ,mem_state 
-0x26ee 005241 fetch 2 ,mem_rx_window_init 
-0x26ef 005242 store 2 ,mem_rx_window 
-0x26f0 005243 disable wake 
-0x26f1 005244 jam bt_evt_exit_sniff ,mem_fifo_temp 
-0x26f2 005245 branch ui_ipc_send_event 
-:      005248 check_attempt:
-0x26f3 005249 bpatch patch0d_6 ,mem_patch0d 
-0x26f4 005250 enable attempt 
-0x26f5 005251 fetch 1 ,mem_state 
-0x26f6 005252 bbit1 state_insniff ,check_attempt_sniff 
-0x26f7 005253 rtnmark1 mark_testmode 
-0x26f8 005254 fetch 1 ,mem_arq 
-0x26f9 005255 rtnbit1 wack 
-0x26fa 005256 fetch 1 ,mem_lmp_to_send 
-0x26fb 005257 nrtn blank 
-0x26fc 005258 fetch 1 ,mem_op 
-0x26fd 005259 rtnbit1 op_txl2cap 
-:      005260 check_attempt_nomore:
-0x26fe 005261 force 0 ,pdata 
-0x26ff 005262 rtn 
-:      005264 check_attempt_sniff:
-0x2700 005265 bbit0 state_insco ,check_attempt_not_sco 
-0x2701 005266 fetch 1 ,mem_current_sniff_attempt 
-0x2702 005267 beq 2 ,check_attempt_sniff_restore_sco 
-0x2703 005268 fetch 1 ,mem_arq 
-0x2704 005269 bbit1 wack ,check_attempt_notimeout 
-0x2705 005270 bmark0 mark_esco_rxok ,check_attempt_notimeout 
-:      005271 check_attempt_sniff_restore_sco:
-0x2706 005272 nbranch check_attempt_notimeout ,master 
-0x2707 005273 fetch 1 ,mem_lmp_to_send 
-0x2708 005274 nbranch check_attempt_notimeout ,blank 
-:      005275 check_attempt_sco_master:
-0x2709 005276 fetch 1 ,mem_sco_poll 
-0x270a 005277 increase -1 ,pdata 
-0x270b 005278 store 1 ,mem_sco_poll 
-0x270c 005279 nbranch check_attempt_nomore ,blank 
-0x270d 005280 jam param_sco_poll ,mem_sco_poll 
-0x270e 005281 branch check_attempt_notimeout 
-:      005288 check_attempt_not_sco:
-0x270f 005289 fetch 1 ,mem_current_sniff_attempt 
-0x2710 005290 bne 1 ,check_attempt_notimeout 
-0x2711 005291 fetch 1 ,mem_current_sniff_timeout 
-0x2712 005292 branch check_attempt_notimeout ,blank 
-0x2713 005293 increase -1 ,pdata 
-0x2714 005294 store 1 ,mem_current_sniff_timeout 
-0x2715 005295 fetch 1 ,mem_arq 
-0x2716 005296 rtnbit1 wack 
-0x2717 005297 nrtn match 
-:      005298 check_attempt_notimeout:
-0x2718 005299 fetch 1 ,mem_current_sniff_attempt 
-0x2719 005300 increase -1 ,pdata 
-0x271a 005301 store 1 ,mem_current_sniff_attempt 
-0x271b 005302 rtn 
-:      005313 sniff_check_window:
-0x271c 005314 bpatch patch0d_7 ,mem_patch0d 
-0x271d 005315 disable swfine 
-0x271e 005316 copy temp ,stop_watch 
-0x271f 005317 call context_search_sniff_window 
-0x2720 005318 disable user 
-0x2721 005319 nrtn zero 
-0x2722 005320 force 0 ,stop_watch 
-0x2723 005321 enable user 
-0x2724 005322 rtn 
-:      005325 check_esco_amaddr:
-0x2725 005326 fetch 1 ,mem_esco_addr 
-0x2726 005327 icompare 0xff ,am_addr 
-0x2727 005328 rtn 
-:      005331 parse_l2cap:
-0x2728 005332 bpatch patch0e_0 ,mem_patch0e 
-0x2729 005333 set0 mark_rxbuf_inuse ,mark 
-:      005334 parse_l2cap_cont:
-0x272a 005335 jam l2cap_rx_clear ,mem_l2cap_rx_done 
-0x272b 005336 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x272c 005337 rtn blank 
-0x272d 005338 isolate1 l2cap_inuse_buff1 ,pdata 
-0x272e 005339 arg mem_l2cap_rxbuff1 ,contr 
-0x272f 005340 call process_rx_l2cap_pkt ,true 
-0x2730 005341 bpatch patch0e_1 ,mem_patch0e 
-0x2731 005342 fetch 1 ,mem_l2cap_rx_done 
-0x2732 005343 beq l2cap_rx_done ,parse_l2cap_release_buff1 
-0x2733 005345 jam l2cap_rx_clear ,mem_l2cap_rx_done 
-0x2734 005346 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x2735 005347 rtnbit0 l2cap_inuse_buff2 
-0x2736 005348 arg mem_l2cap_rxbuff2 ,contr 
-0x2737 005349 call process_rx_l2cap_pkt 
-0x2738 005350 fetch 1 ,mem_l2cap_rx_done 
-0x2739 005351 beq l2cap_rx_done ,parse_l2cap_release_buff2 
-0x273a 005352 rtn 
-:      005354 parse_l2cap_release_buff1:
-0x273b 005355 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x273c 005356 set0 l2cap_inuse_buff1 ,pdata 
-0x273d 005357 store 1 ,mem_l2cap_rxbuff_inuse 
-0x273e 005358 setarg 0 
-0x273f 005359 store 2 ,mem_l2cap_rxbuff1_len 
-0x2740 005360 rtn 
-:      005361 parse_l2cap_release_buff2:
-0x2741 005362 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x2742 005363 set0 l2cap_inuse_buff2 ,pdata 
-0x2743 005364 store 1 ,mem_l2cap_rxbuff_inuse 
-0x2744 005365 setarg 0 
-0x2745 005366 store 2 ,mem_l2cap_rxbuff2_len 
-0x2746 005367 rtn 
-:      005369 l2cap_buff1_inuse:
-0x2747 005370 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x2748 005371 set1 l2cap_inuse_buff1 ,pdata 
-0x2749 005372 store 1 ,mem_l2cap_rxbuff_inuse 
-0x274a 005373 rtn 
-:      005375 l2cap_buff2_inuse:
-0x274b 005376 fetch 1 ,mem_l2cap_rxbuff_inuse 
-0x274c 005377 set1 l2cap_inuse_buff2 ,pdata 
-0x274d 005378 store 1 ,mem_l2cap_rxbuff_inuse 
-0x274e 005379 rtn 
-:      005385 slave_send_access:
-0x274f 005386 bpatch patch0e_2 ,mem_patch0e 
-0x2750 005387 add clke_bt ,1 ,bt_clk 
-0x2751 005388 call fetch_extm_bt_adr 
-0x2752 005389 force 0x03 ,freq_mode 
-0x2753 005390 call tx_radio_freq 
-0x2754 005391 call start_transmitter 
-0x2755 005392 call start_tx_external 
-0x2756 005393 branch send_access_word 
-:      005396 slave_conn_send_packet:
-0x2757 005397 bpatch patch0e_3 ,mem_patch0e 
-0x2758 005398 call rf_setup_time_slave_slot 
-0x2759 005399 deposit clke_bt 
-0x275a 005400 fetcht 4 ,mem_next_btclk 
-0x275b 005401 isub temp ,pdata 
-0x275c 005402 rtnne 1 
-0x275d 005403 compare type_null ,type ,0x1f 
-0x275e 005404 nbranch slave_conn_send_access ,true 
-0x275f 005405 fetch 1 ,mem_rx_type 
-0x2760 005406 rtn blank 
-:      005407 slave_conn_send_access:
-0x2761 005408 call slave_send_access 
-:      005409 transmit_packet:
-0x2762 005410 compare type_id ,type ,0x1f 
-0x2763 005411 branch end_of_packet ,true 
-0x2764 005412 rshift bt_clk ,temp 
-0x2765 005413 or temp ,0x40 ,white_init 
-:      005414 transmit_packet_whitened:
-0x2766 005415 bpatch patch0e_4 ,mem_patch0e 
-0x2767 005416 enable enable_white 
-0x2768 005417 enable enable_hec 
-0x2769 005418 enable encode_fec1 
-0x276a 005419 set0 mark_longpacket ,mark 
-0x276b 005420 deposit am_addr 
-0x276c 005421 inject mod ,3 
-0x276d 005422 deposit type 
-0x276e 005423 inject mod ,4 
-0x276f 005424 fetch 1 ,mem_arq 
-0x2770 005425 inject bucket ,4 
-0x2771 005426 inject mod ,3 
-0x2772 005427 enable enable_parity 
-0x2773 005428 inject mod ,8 
-0x2774 005429 disable encode_fec1 
-0x2775 005430 disable enable_parity 
-0x2776 005431 disable enable_hec 
-0x2777 005432 set0 psk3m ,radio_ctrl 
-0x2778 005433 arg 0 ,temp 
-0x2779 005434 call reserve_slot 
-0x277a 005435 bpatch patch0e_5 ,mem_patch0e 
-0x277b 005436 and type ,0x1f ,pdata 
-0x277c 005437 beq type_lmp ,transmit_lmp 
-0x277d 005438 beq type_null ,end_of_packet 
-0x277e 005439 beq type_poll ,end_of_packet 
-0x277f 005440 beq type_fhs ,transmit_fhs 
-0x2780 005441 beq type_dm1 ,transmit_dm1 
-0x2781 005442 beq type_dh1 ,transmit_dh1 
-0x2782 005443 beq type_hv3 ,transmit_hev 
-0x2783 005444 beq type_3dh1 ,transmit_3dh1 
-0x2784 005445 arg 4 ,temp 
-0x2785 005446 call reserve_slot 
-0x2786 005447 beq type_dm3 ,transmit_dm3 
-0x2787 005448 beq type_dh3 ,transmit_dh3 
-0x2788 005449 arg 8 ,temp 
-0x2789 005450 call reserve_slot 
-0x278a 005451 beq type_dh5 ,transmit_dh5 
-0x278b 005452 branch transmit_dm5 
-:      005455 transmit_hev:
-0x278c 005456 bpatch patch0e_6 ,mem_patch0e 
-0x278d 005457 enable encode_fec0 
-0x278e 005458 enable enable_crc 
-0x278f 005459 enable encrypt 
-0x2790 005460 force 30 ,loopcnt 
-0x2791 005461 arg mem_sco_obuf ,contr 
-:      005462 transmit_ev_loop:
-0x2792 005463 ifetch 1 ,contr 
-0x2793 005464 inject mod ,8 
-0x2794 005465 loop transmit_ev_loop 
-0x2795 005466 bmark1 mark_esco ,transmit_end 
-0x2796 005467 branch end_of_packet 
-:      005469 transmit_fhs:
-0x2797 005470 bpatch patch0e_7 ,mem_patch0e 
-0x2798 005471 fetch 1 ,mem_fhs_am_addr 
-0x2799 005472 icopy am_addr 
-0x279a 005473 fetch 1 ,mem_fhs_misc 
-0x279b 005474 icopy fhs_misc 
-0x279c 005475 fetch 3 ,mem_class 
-0x279d 005476 icopy fhs_class 
-0x279e 005477 fetch 2 ,mem_nap 
-0x279f 005478 icopy nap 
-0x27a0 005479 enable enable_crc 
-0x27a1 005480 enable encode_fec2 
-0x27a2 005481 copy bt_adr ,rega 
-0x27a3 005482 call fetch_self_bt_adr 
-0x27a4 005483 pulse recalc 
-0x27a5 005484 nop 32 
-0x27a6 005485 copy bt_clk ,timeup 
-0x27a7 005486 fetch 4 ,mem_clkn_bt 
-0x27a8 005487 icopy bt_clk 
-0x27a9 005488 preload fhs0 
-0x27aa 005489 set1 58 ,pdata 
-0x27ab 005490 inject mod ,72 
-0x27ac 005491 preload fhs1 
-0x27ad 005492 inject mod ,72 
-0x27ae 005493 copy timeup ,bt_clk 
-0x27af 005494 copy rega ,bt_adr 
-0x27b0 005495 enable enable_parity 
-0x27b1 005496 inject mod ,16 
-0x27b2 005497 disable enable_parity 
-0x27b3 005498 branch end_of_packet 
-:      005500 transmit_lmp:
-0x27b4 005501 bpatch patch0f_0 ,mem_patch0f 
-0x27b5 005502 enable encrypt 
-0x27b6 005503 enable enable_crc 
-0x27b7 005504 enable encode_fec2 
-0x27b8 005505 fetch 1 ,mem_lmo_header_length 
-0x27b9 005506 and pdata ,0x1f8 ,temp 
-0x27ba 005507 arg mem_lmo_header_length ,contr 
-0x27bb 005508 increase 8 ,temp 
-:      005509 transmit_lmp_loop:
-0x27bc 005510 add temp ,-72 ,regc 
-0x27bd 005511 nbranch transmit_lmp_finish ,positive 
-0x27be 005512 ifetch 9 ,contr 
-0x27bf 005513 inject mod ,72 
-0x27c0 005514 copy regc ,temp 
-0x27c1 005515 branch transmit_lmp_loop 
-:      005516 transmit_lmp_finish:
-0x27c2 005517 ifetch 9 ,contr 
-0x27c3 005518 iinject mod ,temp 
-0x27c4 005519 branch transmit_end 
-:      005521 transmit_dm1:
-0x27c5 005522 enable encode_fec2 
-0x27c6 005523 branch transmit_dmh 
-:      005524 transmit_dm3:
-:      005525 transmit_dm5:
-0x27c7 005526 enable encode_fec2 
-0x27c8 005527 set1 mark_longpacket ,mark 
-0x27c9 005528 branch transmit_dmh 
-:      005530 transmit_3dh1:
-0x27ca 005531 set1 psk3m ,radio_ctrl 
-:      005532 transmit_dh1:
-0x27cb 005533 enable encode_fec0 
-0x27cc 005534 branch transmit_dmh 
-:      005536 transmit_dh3:
-:      005537 transmit_dh5:
-0x27cd 005538 set1 psk3m ,radio_ctrl 
-0x27ce 005539 enable encode_fec0 
-0x27cf 005540 set1 mark_longpacket ,mark 
-:      005542 transmit_dmh:
-0x27d0 005543 bpatch patch0f_1 ,mem_patch0f 
-0x27d1 005544 fetch 1 ,mem_state_map 
-0x27d2 005545 bbit0 smap_edr ,transmit_noedr 
-0x27d3 005546 sub type ,3 ,null 
-0x27d4 005547 branch transmit_noedr ,positive 
-0x27d5 005548 disable encrypt 
-0x27d6 005549 disable encode_fec2 
-0x27d7 005550 enable encode_fec0 
-0x27d8 005551 disable enable_white 
-0x27d9 005552 set1 psk ,radio_ctrl 
-0x27da 005553 isolate1 psk3m ,radio_ctrl 
-0x27db 005554 branch transmit_edr3m ,true 
-0x27dc 005555 setarg 0xabeee 
-0x27dd 005556 inject mod ,20 
-0x27de 005557 branch transmit_edr_sync_end 
-:      005558 transmit_edr3m:
-0x27df 005559 setarg 0x5faeba 
-0x27e0 005560 inject mod ,24 
-0x27e1 005561 setarg 0x12 
-0x27e2 005562 inject mod ,6 
-:      005563 transmit_edr_sync_end:
-0x27e3 005564 enable enable_white 
-0x27e4 005565 set1 mark_longpacket ,mark 
-:      005566 transmit_noedr:
-0x27e5 005567 enable encrypt 
-0x27e6 005568 enable enable_crc 
-0x27e7 005569 bmark1 mark_loopback ,transmit_loopback 
-0x27e8 005570 fetch 1 ,mem_tx_lch 
-0x27e9 005571 inject mod ,3 
-0x27ea 005572 fetch 2 ,mem_tx_len 
-0x27eb 005573 iforce loopcnt 
-0x27ec 005574 bmark1 mark_longpacket ,transmit_long 
-0x27ed 005575 inject mod ,5 
-0x27ee 005576 branch transmit_stuff 
-:      005577 transmit_long:
-0x27ef 005578 inject mod ,13 
-:      005579 transmit_stuff:
-0x27f0 005580 deposit loopcnt 
-0x27f1 005581 branch transmit_end ,blank 
-0x27f2 005582 fetch 2 ,mem_txptr 
-0x27f3 005583 iforce contr 
-:      005584 transmit_stuff_loop:
-0x27f4 005585 ifetch 1 ,contr 
-0x27f5 005586 inject mod ,8 
-0x27f6 005587 loop transmit_stuff_loop 
-:      005590 transmit_end:
-0x27f7 005591 enable enable_parity 
-0x27f8 005592 inject mod ,16 
-0x27f9 005593 disable enable_parity 
-0x27fa 005594 call set_wait_ack 
-0x27fb 005595 fetch 1 ,mem_state_map 
-0x27fc 005596 bbit0 smap_edr ,end_of_packet 
-0x27fd 005597 force 0 ,pdata 
-0x27fe 005598 inject mod ,6 
-0x27ff 005599 branch end_of_packet 
-:      005602 transmit_loopback:
-0x2800 005603 bpatch patch0f_2 ,mem_patch0f 
-0x2801 005604 bmark1 mark_longpacket ,transmit_loopback_long 
-:      005605 transmit_loopback_short:
-0x2802 005606 fetch 1 ,mem_lch_code 
-0x2803 005607 inject mod ,3 
-0x2804 005608 fetch 1 ,mem_len 
-0x2805 005609 iforce regc 
-0x2806 005610 inject mod ,5 
-0x2807 005611 branch transmit_loopback_cont 
-:      005612 transmit_loopback_long:
-0x2808 005613 fetch 1 ,mem_lch_code 
-0x2809 005614 inject mod ,3 
-0x280a 005615 fetch 2 ,mem_len 
-0x280b 005616 iforce regc 
-0x280c 005617 inject mod ,13 
-:      005618 transmit_loopback_cont:
-0x280d 005619 arg mem_rxbuf ,contr 
-:      005620 transmit_loopback_loop:
-0x280e 005621 copy regc ,null 
-0x280f 005622 branch transmit_loopback_end ,zero 
-0x2810 005623 ifetch 1 ,contr 
-0x2811 005624 inject mod ,8 
-0x2812 005625 increase -1 ,regc 
-0x2813 005626 branch transmit_loopback_loop 
-:      005627 transmit_loopback_end:
-0x2814 005628 fetch 2 ,mem_tst_pktcnt_dmh 
-0x2815 005629 increase 1 ,pdata 
-0x2816 005630 store 2 ,mem_tst_pktcnt_dmh 
-0x2817 005631 branch transmit_end 
-:      005634 apply_switch_clke:
-0x2818 005635 fetch 4 ,mem_clke_bt 
-0x2819 005636 add pdata ,7 ,rega 
-0x281a 005637 fetch 2 ,mem_slot_offset 
-0x281b 005638 nbranch apply_switch_nozero ,blank 
-0x281c 005639 increase -3 ,rega 
-0x281d 005640 branch apply_switch_wait_loop 
-:      005641 apply_switch_nozero:
-0x281e 005642 mul32 pdata ,12 ,pdata 
-0x281f 005643 hfetcht 2 ,core_halfslot 
-0x2820 005644 increase 1 ,temp 
-:      005645 apply_switch_loop:
-0x2821 005646 isub temp ,pdata 
-0x2822 005647 nbranch apply_switch_bt ,positive 
-0x2823 005648 increase -1 ,rega 
-0x2824 005649 branch apply_switch_loop 
-:      005650 apply_switch_bt:
-0x2825 005651 sub pdata ,0 ,pdata 
-:      005652 apply_switch_wait_loop:
-0x2826 005653 until null ,oneslot 
-0x2827 005654 compare 0 ,clkn_bt ,3 
-0x2828 005655 nbranch apply_switch_wait_loop ,true 
-0x2829 005656 iforce clke_rt 
-0x282a 005657 copy rega ,clke_bt 
-0x282b 005658 iforce clke_rt 
-0x282c 005659 rtn 
-:      005662 calc_slot_offset:
-0x282d 005663 bpatch patch0f_3 ,mem_patch0f 
-0x282e 005664 until null ,halfslot 
-0x282f 005665 deposit clke 
-0x2830 005666 iforce contr 
-0x2831 005667 rshift16 ,pdata ,pdata 
-0x2832 005668 isub clkn_bt ,loopcnt 
-0x2833 005669 and_into 3 ,loopcnt 
-0x2834 005670 nbranch calc_bt_portion ,zero 
-0x2835 005671 force 0 ,pdata 
-0x2836 005672 branch calc_skip_bt 
-:      005673 calc_bt_portion:
-0x2837 005674 arg 3750 ,temp 
-0x2838 005675 force 0 ,pdata 
-:      005676 calc_slot_offset_loop:
-0x2839 005677 iadd temp ,pdata 
-0x283a 005678 loop calc_slot_offset_loop 
-:      005679 calc_skip_bt:
-0x283b 005680 iadd contr ,pdata 
-0x283c 005681 div pdata ,12 
-0x283d 005682 call wait_div_end 
-0x283e 005683 quotient pdata 
-0x283f 005684 store 2 ,mem_slot_offset 
-0x2840 005685 rtn 
-:      005687 calc_clke_offset:
-0x2841 005688 bpatch patch0f_4 ,mem_patch0f 
-0x2842 005689 deposit clke 
-0x2843 005690 copy clkn ,temp 
-0x2844 005691 isub temp ,null 
-0x2845 005692 nsetflag positive ,44 ,pdata 
-0x2846 005693 isub temp ,temp 
-0x2847 005694 setarg 3750 
-0x2848 005695 isolate0 15 ,temp 
-0x2849 005696 branch calc_clke_pos ,true 
-0x284a 005697 setarg -61786 
-0x284b 005698 iadd temp ,temp 
-:      005699 calc_clke_pos:
-0x284c 005700 storet 6 ,mem_le_clk_offset 
-0x284d 005701 rtn le 
-0x284e 005702 storet 6 ,mem_clk_offset 
-0x284f 005703 rtn 
-:      005705 calc_clke:
-0x2850 005706 disable clknt 
-0x2851 005707 fetch 6 ,mem_le_clk_offset 
-0x2852 005708 branch calc_clke2 ,le 
-0x2853 005709 fetch 6 ,mem_clk_offset 
-:      005710 calc_clke2:
-0x2854 005711 iadd clkn ,alarm 
-0x2855 005712 increase 10 ,alarm 
-0x2856 005713 setarg 3750 
-0x2857 005714 isub alarm ,pdata 
-0x2858 005715 isolate0 15 ,pdata 
-0x2859 005716 branch calc_clke_pos_adj ,true 
-0x285a 005717 setarg 0xf15a 
-0x285b 005718 iadd alarm ,alarm 
-:      005719 calc_clke_pos2:
-0x285c 005720 copy alarm ,clke 
-0x285d 005721 rtn 
-:      005722 calc_clke_pos_adj:
-0x285e 005723 force 0 ,null 
-0x285f 005724 branch calc_clke_pos2 
-:      005731 calc_radio_freq:
-0x2860 005732 bpatch patch0f_5 ,mem_patch0f 
-0x2861 005733 call set_sync_on 
-0x2862 005734 copy bt_clk ,pdata 
-0x2863 005735 and_into 0x180 ,pdata 
-0x2864 005736 compare 3 ,freq_mode ,0x07 
-0x2865 005737 nbranch freq_not_connection ,true 
-0x2866 005738 rshift3 pdata ,pdata 
-0x2867 005739 iadd freq_index ,pdata 
-0x2868 005740 branch do_hop_mod_now 
-:      005741 freq_not_connection:
-0x2869 005742 copy freq_index ,pdata 
-:      005743 do_hop_mod_now:
-0x286a 005744 div pdata ,79 
-0x286b 005745 pulse recalc 
-0x286c 005746 call wait_div_end 
-0x286d 005747 remainder rega 
-0x286e 005748 add rega ,-40 ,temp 
-0x286f 005749 branch odd_half ,positive 
-0x2870 005750 lshift rega ,temp 
-0x2871 005751 branch freq_result 
-:      005752 odd_half:
-0x2872 005753 lshift temp ,temp 
-0x2873 005754 increase 1 ,temp 
-:      005755 freq_result:
-0x2874 005756 bpatch patch0f_6 ,mem_patch0f 
-0x2875 005757 fetch 1 ,mem_mode 
-0x2876 005758 bbit0 afh_change ,afh_process_con 
-:      005759 afh_process_0:
-0x2877 005760 fetch 4 ,mem_afh_instant 
-0x2878 005761 isub bt_clk ,null 
-0x2879 005762 branch afh_process_con ,positive 
-0x287a 005763 call afh_clear 
-0x287b 005764 fetch 1 ,mem_afh_new_mod 
-0x287c 005765 rtn blank 
-0x287d 005766 fetch 1 ,mem_mode 
-0x287e 005767 set1 afh_enable ,pdata 
-0x287f 005768 store 1 ,mem_mode 
-0x2880 005769 fetch 5 ,mem_afh_map_new 
-0x2881 005770 store 5 ,mem_afh_map_lo 
-0x2882 005771 ifetch 5 ,contr 
-0x2883 005772 store 5 ,mem_afh_map_hi 
-0x2884 005773 call afh_process_freq_map 
-:      005774 afh_process_con:
-0x2885 005775 fetch 1 ,mem_mode 
-0x2886 005776 rtnbit0 afh_enable 
-0x2887 005777 isolate1 1 ,bt_clk 
-0x2888 005778 branch afh_same_channel ,true 
-0x2889 005779 rshift3 temp ,rega 
-0x288a 005780 and temp ,7 ,queue 
-0x288b 005781 setarg mem_afh_map_lo 
-0x288c 005782 iadd rega ,rega 
-0x288d 005783 ifetch 1 ,rega 
-0x288e 005784 qisolate0 pdata 
-0x288f 005785 branch afh_process_1 ,true 
-0x2890 005786 deposit temp 
-0x2891 005787 branch afh_process_end 
-:      005788 afh_process_1:
-0x2892 005789 fetch 1 ,mem_afh_used 
-0x2893 005790 iforce regb 
-0x2894 005791 deposit bt_clk 
-0x2895 005792 and_into 0x180 ,pdata 
-0x2896 005793 rshift3 pdata ,pdata 
-0x2897 005794 iadd freq_index ,pdata 
-0x2898 005795 idiv regb 
-0x2899 005796 setarg mem_afh_map 
-0x289a 005797 call wait_div_end 
-0x289b 005798 remainder rega 
-0x289c 005799 iadd rega ,contr 
-0x289d 005800 ifetch 1 ,contr 
-:      005801 afh_process_end:
-0x289e 005802 store 1 ,mem_afh_index 
-0x289f 005803 iforce temp 
-0x28a0 005804 rtn 
-:      005806 afh_same_channel:
-0x28a1 005807 fetch 1 ,mem_afh_index 
-0x28a2 005808 iforce temp 
-0x28a3 005809 rtn 
-:      005811 afh_clear:
-0x28a4 005812 fetch 1 ,mem_mode 
-0x28a5 005813 set0 afh_enable ,pdata 
-0x28a6 005814 set0 afh_change ,pdata 
-0x28a7 005815 store 1 ,mem_mode 
-0x28a8 005816 rtn 
-:      005822 afh_process_freq_map:
-0x28a9 005823 bpatch patch0f_7 ,mem_patch0f 
-0x28aa 005824 arg mem_afh_map ,contw 
-0x28ab 005825 force 10 ,loopcnt 
-0x28ac 005826 call memset0 
-0x28ad 005827 arg mem_afh_map ,contw 
-0x28ae 005828 force 0 ,regc 
-0x28af 005829 force 2 ,queue 
-:      005830 process_freq_3:
-0x28b0 005831 fetch 5 ,mem_afh_map_lo 
-0x28b1 005832 iforce temp 
-0x28b2 005833 compare 2 ,queue ,0xff 
-0x28b3 005834 branch process_freq_1 ,true 
-0x28b4 005835 rshift temp ,temp 
-:      005836 process_freq_1:
-0x28b5 005837 isolate0 0 ,temp 
-0x28b6 005838 branch process_freq_0 ,true 
-0x28b7 005839 deposit regc 
-0x28b8 005840 istore 1 ,contw 
-:      005841 process_freq_0:
-0x28b9 005842 rshift2 temp ,temp 
-0x28ba 005843 increase 2 ,regc 
-0x28bb 005844 compare 40 ,regc ,0xfe 
-0x28bc 005845 nbranch process_freq_2 ,true 
-0x28bd 005846 fetch 5 ,mem_afh_map_hi 
-0x28be 005847 iforce temp 
-0x28bf 005848 compare 2 ,queue ,0xff 
-0x28c0 005849 branch process_freq_2 ,true 
-0x28c1 005850 rshift temp ,temp 
-:      005851 process_freq_2:
-0x28c2 005852 sub regc ,78 ,null 
-0x28c3 005853 branch process_freq_1 ,positive 
-0x28c4 005854 force 1 ,regc 
-0x28c5 005855 increase -1 ,queue 
-0x28c6 005856 nbranch process_freq_3 ,zero 
-0x28c7 005857 arg mem_afh_map ,rega 
-0x28c8 005858 deposit contw 
-0x28c9 005859 isub rega ,pdata 
-0x28ca 005860 store 1 ,mem_afh_used 
-0x28cb 005861 rtn 
-:      005863 rx_radio_freq:
-0x28cc 005864 bpatch patch10_0 ,mem_patch10 
-0x28cd 005865 call calc_radio_freq 
-0x28ce 005866 fetch 1 ,mem_debug_config 
-0x28cf 005867 bbit0 debug_rx_fixed_freq ,rx_radio_freq_now 
-0x28d0 005868 fetcht 1 ,mem_rx_fixed_freq 
-:      005869 rx_radio_freq_now:
-0x28d1 005870 branch set_freq_rx 
-:      005873 tx_radio_freq:
-0x28d2 005874 bpatch patch10_1 ,mem_patch10 
-0x28d3 005875 call calc_radio_freq 
-0x28d4 005876 fetch 1 ,mem_debug_config 
-0x28d5 005877 bbit0 debug_tx_fixed_freq ,tx_radio_freq_now 
-0x28d6 005878 fetcht 1 ,mem_tx_fixed_freq 
-:      005879 tx_radio_freq_now:
-0x28d7 005880 branch set_freq_tx 
-:      005883 fetch_giac:
-0x28d8 005884 force 0 ,uap 
-0x28d9 005885 fetch 3 ,mem_glap 
-0x28da 005886 iforce lap 
-0x28db 005887 rtn 
-:      005889 fetch_page_bt_adr:
-0x28dc 005890 bpatch patch10_2 ,mem_patch10 
-0x28dd 005891 fetch 1 ,mem_hci_puap 
-0x28de 005892 icopy uap 
-0x28df 005893 fetch 3 ,mem_hci_plap 
-0x28e0 005894 icopy lap 
-0x28e1 005895 rtn 
-:      005897 fetch_self_bt_adr:
-0x28e2 005898 bpatch patch10_3 ,mem_patch10 
-0x28e3 005899 fetch 2 ,mem_nap 
-0x28e4 005900 icopy nap 
-0x28e5 005901 fetch 1 ,mem_uap 
-0x28e6 005902 icopy uap 
-0x28e7 005903 fetch 3 ,mem_lap 
-0x28e8 005904 icopy lap 
-0x28e9 005905 rtn 
-:      005907 fetch_extm_bt_adr:
-0x28ea 005908 bpatch patch10_4 ,mem_patch10 
-0x28eb 005909 fetch 2 ,mem_pnap 
-0x28ec 005910 icopy nap 
-0x28ed 005911 fetch 1 ,mem_puap 
-0x28ee 005912 icopy uap 
-0x28ef 005913 fetch 3 ,mem_plap 
-0x28f0 005914 icopy lap 
-0x28f1 005915 rtn 
-:      005918 fetch_diac:
-0x28f2 005919 bmark1 mark_all_diac ,fetch_diac_do 
-0x28f3 005920 rtnmark0 mark_inquiry_state 
-0x28f4 005921 rtnmark0 mark_periodical_diac 
-:      005922 fetch_diac_do:
-0x28f5 005923 and_into -256 ,lap 
-0x28f6 005924 pulse recalc 
-0x28f7 005925 nop 32 
-0x28f8 005926 rtn 
-:      005929 shutdown_radio:
-0x28f9 005930 bpatch patch10_5 ,mem_patch10 
-0x28fa 005931 branch shutdown_radio0 ,is_rx 
-0x28fb 005932 jam 0xd4 ,rf_tx_pa_ib 
-0x28fc 005933 nop 4 
-0x28fd 005934 jam 0xd2 ,rf_tx_pa_ib 
-0x28fe 005935 nop 4 
-0x28ff 005936 jam 0xd1 ,rf_tx_pa_ib 
-0x2900 005937 nop 4 
-0x2901 005938 fetch 1 ,mem_tx_power 
-0x2902 005939 beq tx_power_0db ,shutdown_radio_0db 
-0x2903 005940 beq tx_power_3db ,shutdown_radio_3db 
-0x2904 005941 beq tx_power_5db ,shutdown_radio_5db 
-0x2905 005942 beq tx_power_f3db ,shutdown_radio_f3db 
-0x2906 005943 beq tx_power_f5db ,shutdown_radio_f5db 
-0x2907 005944 beq tx_power_pair ,shutdown_radio_pair 
-:      005945 shutdown_radio_5db:
-:      005946 shutdown_radio_0db:
-0x2908 005947 jam 0xd0 ,rf_tx_pa_ib 
-0x2909 005948 jam 0xe0 ,rf_tx_pa_gc 
-:      005949 shutdown_radio0:
-0x290a 005950 force 0 ,radio_ctrl 
-0x290b 005951 disable is_rx 
-0x290c 005952 disable is_tx 
-0x290d 005953 pulse packet_end 
-0x290e 005954 jam 0x0 ,rfen_mdm 
-0x290f 005955 jam 0x0 ,rfen_tx 
-0x2910 005956 jam 0x0 ,rfen_rx 
-0x2911 005957 jam 0 ,rfen_sn 
-0x2912 005958 jam 0x70 ,rfen_msc 
-0x2913 005959 jam 0x0 ,rfen_adc 
-0x2914 005960 rtn 
-:      005962 shutdown_radio_pair:
-:      005963 shutdown_radio_f5db:
-:      005964 shutdown_radio_f3db:
-:      005965 shutdown_radio_3db:
-0x2915 005966 jam 0xd0 ,rf_tx_pa_ib 
-0x2916 005967 jam 0xc0 ,rf_tx_pa_gc 
-0x2917 005968 branch shutdown_radio0 
-:      005970 set_sync_on:
-0x2918 005971 bpatch patch10_6 ,mem_patch10 
-0x2919 005972 jam 0x0 ,rfen_mdm 
-0x291a 005973 jam 0x0 ,rfen_tx 
-0x291b 005974 jam 0x18 ,rfen_rx 
-0x291c 005975 jam 0xa7 ,rfen_sn 
-0x291d 005976 jam 0x7f ,rfen_msc 
-0x291e 005977 rtn 
-:      005979 set_freq_rx:
-0x291f 005980 bpatch patch10_7 ,mem_patch10 
-0x2920 005982 storet 1 ,mem_last_freq 
-0x2921 005983 add temp ,rx_freq_offset ,rega 
-0x2922 005984 jam 0x07 ,rf_balun_ctrim 
-0x2923 005985 branch rf_write_freq 
-:      005986 rf_rx_enable:
-0x2924 005987 bpatch patch11_0 ,mem_patch11 
-0x2925 005988 jam 0xcf ,rfen_tx 
-0x2926 005989 nop 10 
-0x2927 005990 jam 0xff ,rfen_rx 
-0x2928 005991 jam 0xaf ,rfen_sn 
-0x2929 005992 jam 0xff ,rfen_msc 
-0x292a 005993 nop 10 
-0x292b 005994 jam 0xa0 ,rfen_mdm 
-0x292c 005995 rtn 
-:      005997 set_freq_tx_offset:
-0x292d 005998 fetch 1 ,mem_250k_freq_enable 
-0x292e 005999 branch set_freq_tx_2m_offset ,blank 
-:      006000 set_freq_tx_0m_offset:
-0x292f 006001 add temp ,2 ,rega 
-0x2930 006002 rtn 
-:      006003 set_freq_tx_2m_offset:
-0x2931 006004 add temp ,0 ,rega 
-0x2932 006005 rtn 
-:      006007 set_freq_tx:
-0x2933 006008 bpatch patch11_1 ,mem_patch11 
-0x2934 006009 storet 1 ,mem_last_freq 
-0x2935 006010 call set_freq_tx_offset 
-0x2936 006011 call rf_write_freq 
-0x2937 006012 setarg param_pll_setup 
-0x2938 006013 call sleep 
-:      006014 txon:
-0x2939 006015 jam 0x1 ,rfen_adc 
-0x293a 006016 jam 0x3c ,rfen_rx 
-0x293b 006017 jam 0xe0 ,rfen_tx 
-0x293c 006018 jam 0x12 ,rf_balun_ctrim 
-0x293d 006019 nop 10 
-0x293e 006020 jam 0x01 ,rfen_mdm 
-0x293f 006021 jam 0x3d ,rfen_mdm 
-0x2940 006022 nop 10 
-0x2941 006023 jam 0xb7 ,rfen_sn 
-0x2942 006024 nop 10 
-0x2943 006025 jam 0x7f ,rfen_mdm 
-:      006026 txon_power_select:
-0x2944 006027 fetch 1 ,mem_tx_power 
-0x2945 006028 beq tx_power_0db ,set_tx_power_0db 
-0x2946 006029 beq tx_power_3db ,set_tx_power_3db 
-0x2947 006030 beq tx_power_5db ,set_tx_power_5db 
-0x2948 006031 beq tx_power_f3db ,set_tx_power_f3db 
-0x2949 006032 beq tx_power_f5db ,set_tx_power_f5db 
-0x294a 006033 beq tx_power_pair ,set_tx_power_pair 
-:      006034 set_tx_power_0db:
-0x294b 006035 jam 0xf0 ,rf_tx_pa_gc 
-0x294c 006036 call txon_common 
-0x294d 006037 jam 0xd8 ,rf_tx_pa_ib 
-0x294e 006038 rtn 
-:      006040 set_tx_power_3db:
-0x294f 006041 jam 0xdf ,rf_tx_pa_gc 
-0x2950 006042 call txon_common 
-0x2951 006043 jam 0xdf ,rf_tx_pa_ib 
-0x2952 006044 rtn 
-:      006046 set_tx_power_5db:
-0x2953 006047 jam 0xff ,rf_tx_pa_gc 
-0x2954 006048 call txon_common 
-0x2955 006049 jam 0xdf ,rf_tx_pa_ib 
-0x2956 006050 rtn 
-:      006051 set_tx_power_f3db:
-0x2957 006052 jam 0xce ,rf_tx_pa_gc 
-0x2958 006053 call txon_common 
-0x2959 006054 jam 0xd8 ,rf_tx_pa_ib 
-0x295a 006055 rtn 
-:      006057 set_tx_power_f5db:
-0x295b 006058 jam 0xcb ,rf_tx_pa_gc 
-0x295c 006059 call txon_common 
-0x295d 006060 jam 0xd8 ,rf_tx_pa_ib 
-0x295e 006061 rtn 
-:      006063 set_tx_power_pair:
-0x295f 006064 jam 0xd0 ,rf_tx_pa_ib 
-0x2960 006065 jam 0xc0 ,rf_tx_pa_gc 
-0x2961 006066 jam 0x4c ,0x8957 
-0x2962 006067 jam 0x6c ,0x8958 
-0x2963 006068 jam 0x50 ,0x8959 
-0x2964 006069 rtn 
-:      006071 txon_common:
-0x2965 006072 nop 4 
-0x2966 006073 jam 0xd1 ,rf_tx_pa_ib 
-0x2967 006074 nop 4 
-0x2968 006075 jam 0xd2 ,rf_tx_pa_ib 
-0x2969 006076 nop 4 
-0x296a 006077 jam 0xd4 ,rf_tx_pa_ib 
-0x296b 006078 rtn 
-:      006081 initialize_radio:
-0x296c 006082 jam clksel_rc ,core_clksel 
-:      006083 initialize_radio_wait:
-0x296d 006084 fetch 2 ,mem_rf_init_ptr 
-0x296e 006085 bbit0 14 ,initialize_radio_wait 
-0x296f 006086 iforce contr 
-0x2970 006087 arg 0x8900 ,temp 
-:      006088 initialize_radio_loop:
-0x2971 006089 ifetch 1 ,contr 
-0x2972 006090 beq 0xff ,initialize_radio_cont 
-0x2973 006091 ior temp ,contw 
-0x2974 006092 ifetch 1 ,contr 
-0x2975 006093 istore 1 ,contw 
-0x2976 006094 branch initialize_radio_loop 
-:      006095 initialize_radio_cont:
-0x2977 006096 bpatch patch11_2 ,mem_patch11 
-0x2978 006097 call lpm_cal_xtal_startup 
-0x2979 006098 call switchto_dpllclk 
-0x297a 006100 setarg param_dpll_start_delay 
-0x297b 006101 iadd clkn_bt ,pdata 
-0x297c 006102 store 4 ,mem_dpll_clkn 
-0x297d 006103 set1 reset ,radio_ctrl 
-0x297e 006104 force 0 ,radio_ctrl 
-0x297f 006105 ncall do_rccal ,wake 
-0x2980 006106 branch set_rccal 
-:      006109 rf_write_freq:
-0x2981 006110 bpatch patch11_3 ,mem_patch11 
-0x2982 006111 setarg 2400 
-0x2983 006112 iadd rega ,temp 
-0x2984 006113 fetch 1 ,mem_fcomp_mul 
-0x2985 006114 jam 0x04 ,rf_pll_rstn 
-0x2986 006115 imul32 temp ,pdata 
-0x2987 006116 fetcht 1 ,mem_fcomp_div 
-0x2988 006117 idiv temp 
-0x2989 006118 call wait_div_end 
-0x298a 006119 quotient rega 
-0x298b 006120 remainder pdata 
-0x298c 006121 lshift16 pdata ,pdata 
-0x298d 006122 lshift4 pdata ,pdata 
-0x298e 006123 idiv temp 
-0x298f 006124 call wait_div_end 
-0x2990 006125 quotient pdata 
-0x2991 006126 lshift8 pdata ,pdata 
-0x2992 006127 lshift pdata ,pdata 
-0x2993 006128 ior rega ,pdata 
-0x2994 006129 hstore 4 ,rf_pll_intg 
-0x2995 006130 jam 0x44 ,rf_pll_rstn 
-0x2996 006131 jam 0xc4 ,rf_pll_rstn 
-0x2997 006132 rtn 
-:      006135 do_rccal:
-0x2998 006136 bpatch patch11_4 ,mem_patch11 
-0x2999 006137 jam 0x02 ,rfen_adc 
-0x299a 006138 setarg 250000 
-0x299b 006139 call sleep 
-0x299c 006140 jam 0x7f ,rfen_rx 
-0x299d 006141 nop 130 
-0x299e 006142 jam 0x30 ,rf_rccal_ctrl 
-0x299f 006143 jam 0xd0 ,rfen_tx 
-0x29a0 006144 jam 0x70 ,rf_rccal_ctrl 
-0x29a1 006145 jam 0xf0 ,rf_rccal_ctrl 
-0x29a2 006146 force 50 ,loopcnt 
-:      006147 do_rccal_loop:
-0x29a3 006148 hfetch 1 ,rf_rccal_result 
-0x29a4 006149 bbit1 5 ,do_rccal_end 
-0x29a5 006150 loop do_rccal_loop 
-:      006151 do_rccal_end:
-0x29a6 006152 store 1 ,mem_rf_rccal 
-0x29a7 006153 jam 0 ,rfen_tx 
-0x29a8 006154 jam 0 ,rfen_rx 
-0x29a9 006155 jam 0x00 ,rfen_adc 
-0x29aa 006156 rtn 
-:      006158 set_rccal:
-0x29ab 006159 bpatch patch11_5 ,mem_patch11 
-0x29ac 006160 fetch 1 ,mem_rf_rccal 
-0x29ad 006161 set1 5 ,pdata 
-0x29ae 006162 hstore 1 ,rf_rccal_ctrl 
-0x29af 006163 hfetcht 1 ,rf_bpf_ctrim 
-0x29b0 006164 and_into 7 ,temp 
-0x29b1 006165 lshift3 pdata ,pdata 
-0x29b2 006166 ior temp ,pdata 
-0x29b3 006167 hstore 1 ,rf_bpf_ctrim 
-0x29b4 006168 hfetch 1 ,rf_bpf_ib 
-0x29b5 006169 set0 bpf_rccal ,pdata 
-0x29b6 006170 hstore 1 ,rf_bpf_ib 
-0x29b7 006171 hfetch 1 ,rf_adc_rccal 
-0x29b8 006172 set0 adc_rccal ,pdata 
-0x29b9 006173 hstore 1 ,rf_adc_rccal 
-0x29ba 006174 rtn 
-:      006176 save_rssi:
-0x29bb 006177 bpatch patch11_6 ,mem_patch11 
-0x29bc 006178 hfetch 2 ,rf_afc_d2a 
-0x29bd 006179 rshift4 pdata ,pdata 
-0x29be 006180 rshift3 pdata ,pdata 
-0x29bf 006181 sub pdata ,0 ,pdata 
-:      006182 bcd:
-0x29c0 006183 and_into 0xff ,pdata 
-0x29c1 006184 div pdata ,10 
-0x29c2 006185 call wait_div_end 
-0x29c3 006186 quotient pdata 
-0x29c4 006187 lshift4 pdata ,pdata 
-0x29c5 006188 remainder temp 
-0x29c6 006189 ior temp ,pdata 
-0x29c7 006190 store 1 ,mem_rssi 
-0x29c8 006191 rtn 
-:      006194 switchto_dpllclk:
-0x29c9 006195 jam clksel_rc ,core_clksel 
-0x29ca 006196 hfetch 1 ,rf_clkpll_frac + 2 
-0x29cb 006197 set0 4 ,pdata 
-0x29cc 006198 set0 5 ,pdata 
-0x29cd 006199 hstore 1 ,rf_clkpll_frac + 2 
-0x29ce 006200 jam 0x00 ,rfen_ck 
-0x29cf 006201 jam 0x00 ,rfen_msc 
-0x29d0 006202 jam 0x70 ,rfen_msc 
-0x29d1 006203 jam 0xff ,rfen_ck 
-0x29d2 006204 hfetch 1 ,rf_clkpll_frac + 2 
-0x29d3 006205 set1 4 ,pdata 
-0x29d4 006206 set1 5 ,pdata 
-0x29d5 006207 hstore 1 ,rf_clkpll_frac + 2 
-0x29d6 006208 call init_lpm_ctrl 
-0x29d7 006209 hfetch 1 ,rf_clkpll_int 
-0x29d8 006210 set1 7 ,pdata 
-0x29d9 006211 hstore 1 ,rf_clkpll_int 
-0x29da 006212 set0 7 ,pdata 
-0x29db 006213 hstore 1 ,rf_clkpll_int 
-0x29dc 006214 set1 7 ,pdata 
-0x29dd 006215 hstore 1 ,rf_clkpll_int 
-0x29de 006216 jam clksel_dpll ,core_clksel 
-0x29df 006217 nop 1 
-0x29e0 006218 jam clksel_xtal ,core_clksel 
-0x29e1 006219 hfetch 1 ,rf_clkpll_frac + 2 
-0x29e2 006220 and_into 0xcf ,pdata 
-0x29e3 006221 hstore 1 ,rf_clkpll_frac + 2 
-0x29e4 006222 or_into 0x30 ,pdata 
-0x29e5 006223 hstore 1 ,rf_clkpll_frac + 2 
-0x29e6 006224 rtn 
-:      006227 xtal_fast_wake:
-0x29e7 006228 setarg 0xf0f 
-0x29e8 006229 branch lpm_write_config 
-:      006231 init_lpm_ctrl:
-0x29e9 006232 setarg 0x80f 
-0x29ea 006233 branch lpm_write_config 
-:      006237 start_receiver:
-0x29eb 006238 bpatch patch11_7 ,mem_patch11 
-0x29ec 006239 call rf_rx_enable 
-0x29ed 006240 disable is_tx 
-0x29ee 006241 enable is_rx 
-0x29ef 006242 pulse init_encrypt 
-0x29f0 006243 rtn 
-:      006245 prep_crypt:
-0x29f1 006246 bpatch patch12_0 ,mem_patch12 
-0x29f2 006247 fetch 1 ,mem_state_map 
-0x29f3 006248 isolate1 smap_encryption ,pdata 
-0x29f4 006249 setflag true ,0 ,pdata 
-0x29f5 006250 hstore 1 ,core_encrypt 
-0x29f6 006251 arg mem_kc ,contr 
-0x29f7 006252 ifetch 9 ,contr 
-0x29f8 006253 iforce kc_ls 
-0x29f9 006254 ifetch 7 ,contr 
-0x29fa 006255 iforce kc_ms 
-0x29fb 006256 fetch 1 ,mem_key_size 
-0x29fc 006257 add pdata ,-1 ,g1l 
-0x29fd 006258 pulse kc_p_activate 
-0x29fe 006259 rtn 
-:      006261 wait_access_end:
-0x29ff 006262 deposit clke 
-0x2a00 006263 store 6 ,mem_sync_clke 
-0x2a01 006264 disable decode_fec0 
-0x2a02 006265 nbranch shutdown_radio ,sync 
-0x2a03 006266 arg param_clke_cal ,clke_rt 
-0x2a04 006267 increase 1 ,clke_bt 
-0x2a05 006268 and_into 0x1fc ,clke_bt 
-0x2a06 006269 rtn 
-:      006273 wait_access_mhalfbnd:
-0x2a07 006274 enable decode_fec0 
-:      006275 wait_access_mhalfbnd_correlate:
-0x2a08 006276 correlate null ,mhalfbnd 
-0x2a09 006277 branch wait_access_end ,sync 
-0x2a0a 006278 compare 0x02 ,clke_bt ,0x02 
-0x2a0b 006279 nbranch wait_access_mhalfbnd_correlate ,true 
-0x2a0c 006280 branch wait_access_end 
-:      006282 wait_access_clkn_rt:
-0x2a0d 006283 bpatch patch12_1 ,mem_patch12 
-0x2a0e 006284 arg param_conn_access ,timeup 
-0x2a0f 006285 enable decode_fec0 
-0x2a10 006286 correlate clkn_rt ,meet 
-0x2a11 006287 disable decode_fec0 
-0x2a12 006288 nbranch shutdown_radio ,sync 
-0x2a13 006289 rtn 
-:      006291 wait_access_forever:
-0x2a14 006292 bpatch patch12_2 ,mem_patch12 
-0x2a15 006293 enable decode_fec0 
-0x2a16 006294 correlate null ,timeout 
-0x2a17 006295 disable decode_fec0 
-0x2a18 006296 nbranch shutdown_radio ,sync 
-0x2a19 006297 arg param_clke_cal ,clke_rt 
-0x2a1a 006298 and_into 0x1fc ,clke_bt 
-0x2a1b 006299 rtn 
-:      006302 reserve_slot:
-0x2a1c 006303 bpatch patch12_3 ,mem_patch12 
-0x2a1d 006304 iforce rega 
-0x2a1e 006305 deposit bt_clk 
-0x2a1f 006306 iadd temp ,timeup 
-0x2a20 006307 copy timeup ,pdata 
-0x2a21 006308 store 4 ,mem_next_btclk 
-0x2a22 006309 deposit rega 
-0x2a23 006310 rtn 
-:      006313 ahead_window:
-0x2a24 006314 copy pdata ,temp 
-0x2a25 006315 bpatch patch12_4 ,mem_patch12 
-0x2a26 006316 copy temp ,pdata 
-0x2a27 006317 call clk2bt 
-0x2a28 006318 lshift16 bt_clk ,pdata 
-0x2a29 006319 set1 44 ,pdata 
-0x2a2a 006320 call clk_diff 
-0x2a2b 006321 set0 44 ,pdata 
-0x2a2c 006322 call get_clk 
-0x2a2d 006323 call clk_diff 
-0x2a2e 006324 rtn user 
-0x2a2f 006325 call clk2rt 
-0x2a30 006326 iforce stop_watch 
-0x2a31 006327 until null ,timeout 
-0x2a32 006328 rtn 
-:      006331 setup_clk:
-0x2a33 006332 bpatch patch12_5 ,mem_patch12 
-0x2a34 006333 branch setup_clkn ,clknt 
-0x2a35 006334 until clke_rt ,meet 
-:      006335 skip_setup_clke:
-0x2a36 006336 copy clke_bt ,temp 
-0x2a37 006337 branch setup_clknbt 
-:      006338 setup_clkn:
-0x2a38 006339 branch skip_setup_clkn ,attempt 
-0x2a39 006340 until clkn_rt ,meet 
-:      006341 skip_setup_clkn:
-0x2a3a 006342 copy clkn_bt ,temp 
-:      006343 setup_clknbt:
-0x2a3b 006344 branch setup_clk11 ,user 
-0x2a3c 006345 compare 1 ,temp ,3 
-0x2a3d 006346 nbranch setup_clk ,true 
-:      006347 setup_complete:
-0x2a3e 006348 bpatch patch12_6 ,mem_patch12 
-0x2a3f 006349 fetch 1 ,mem_state 
-0x2a40 006350 rtnbit0 state_inconn 
-0x2a41 006351 fetch 4 ,mem_next_btclk 
-0x2a42 006352 isub temp ,pdata 
-0x2a43 006353 nrtn positive 
-0x2a44 006354 sub pdata ,0xff ,null 
-0x2a45 006355 branch setup_clk ,positive 
-0x2a46 006356 rtn 
-:      006357 setup_clk11:
-0x2a47 006358 compare 3 ,temp ,3 
-0x2a48 006359 nbranch setup_clk ,true 
-0x2a49 006360 branch setup_complete 
-:      006362 rf_setup_time:
-0x2a4a 006363 bpatch patch12_7 ,mem_patch12 
-0x2a4b 006364 arg param_rf_setup ,timeup 
-0x2a4c 006365 branch setup_clk 
-:      006367 rf_setup_time_slave_slot:
-0x2a4d 006368 disable user 
-0x2a4e 006369 branch rf_setup_time 
-:      006371 rf_setup_time_master_slot:
-0x2a4f 006372 enable user 
-0x2a50 006373 branch rf_setup_time 
-:      006375 start_transmitter:
-0x2a51 006376 bpatch patch13_0 ,mem_patch13 
-0x2a52 006377 call prep_crypt 
-0x2a53 006378 disable is_rx 
-0x2a54 006379 enable is_tx 
-0x2a55 006380 rtn 
-:      006384 start_tx_native:
-0x2a56 006385 bpatch patch13_1 ,mem_patch13 
-0x2a57 006386 arg param_tx_setup ,timeup 
-0x2a58 006387 until clkn_rt ,meet 
-0x2a59 006388 pulse init_encrypt 
-0x2a5a 006389 rtn 
-:      006391 start_rx_native:
-0x2a5b 006392 bpatch patch13_2 ,mem_patch13 
-0x2a5c 006393 arg param_rx_setup ,timeup 
-0x2a5d 006394 until clkn_rt ,meet 
-0x2a5e 006395 rtn 
-:      006398 start_tx_external:
-0x2a5f 006399 bpatch patch13_3 ,mem_patch13 
-0x2a60 006400 arg param_tx_setup ,timeup 
-0x2a61 006401 until clke_rt ,meet 
-0x2a62 006402 pulse init_encrypt 
-0x2a63 006403 rtn 
-:      006405 send_access_word:
-0x2a64 006406 bpatch patch13_4 ,mem_patch13 
-0x2a65 006407 preload access 
-0x2a66 006408 enable encode_fec0 
-0x2a67 006409 set1 txgfsk ,radio_ctrl 
-0x2a68 006410 inject mod ,72 
-0x2a69 006411 disable encode_fec0 
-0x2a6a 006412 rtn 
-:      006415 scan_mode_whiten:
-0x2a6b 006416 copy xin ,temp 
-0x2a6c 006417 or_into 0x60 ,temp 
-0x2a6d 006418 copy temp ,white_init 
-0x2a6e 006419 rtn 
-:      006424 get_free_amaddr:
-0x2a6f 006425 bpatch patch13_5 ,mem_patch13 
-0x2a70 006426 fetch 1 ,mem_current_amaddr 
-0x2a71 006427 increase 1 ,pdata 
-0x2a72 006428 bne param_esco_addr ,get_free_amaddr_cont 
-0x2a73 006429 force 1 ,pdata 
-:      006430 get_free_amaddr_cont:
-0x2a74 006431 store 1 ,mem_current_amaddr 
-0x2a75 006432 iforce am_addr 
-0x2a76 006433 rtn 
-:      006435 get_clk:
-0x2a77 006436 copy clkn ,temp 
-0x2a78 006437 rtn master 
-0x2a79 006438 copy clke ,temp 
-0x2a7a 006439 rtn 
-:      006441 get_clkbt:
-0x2a7b 006442 deposit clkn_bt 
-0x2a7c 006443 rtn master 
-0x2a7d 006444 deposit clke_bt 
-0x2a7e 006445 rtn 
-:      006448 supervision_update:
-0x2a7f 006449 bpatch patch13_6 ,mem_patch13 
-0x2a80 006450 fetcht 4 ,mem_supervision_timer 
-0x2a81 006451 call get_clkbt 
-0x2a82 006452 isub temp ,timeup 
-0x2a83 006453 deposit timeup 
-0x2a84 006454 fetcht 2 ,mem_supervision_to 
-0x2a85 006455 lshift temp ,temp 
-0x2a86 006456 isub temp ,pdata 
-0x2a87 006457 rtn 
-:      006459 supervision_flush:
-0x2a88 006460 bpatch patch13_7 ,mem_patch13 
-0x2a89 006461 call get_clkbt 
-0x2a8a 006462 store 4 ,mem_supervision_timer 
-0x2a8b 006463 rtn 
-:      006465 assert:
-0x2a8c 006466 bpatch patch14_0 ,mem_patch14 
-0x2a8d 006467 branch assert 
-:      006469 loop:
-0x2a8e 006470 branch loop 
-:      006472 sleep:
-0x2a8f 006473 rtn blank 
-0x2a90 006475 rshift pdata ,pdata 
-0x2a91 006476 increase -3 ,pdata 
-:      006477 sleep_loop:
-0x2a92 006478 increase -1 ,pdata 
-0x2a93 006479 nbranch sleep_loop ,zero 
-0x2a94 006480 force 0 ,pdata 
-0x2a95 006481 rtn 
-:      006485 init_param:
-0x2a96 006487 arg 0x10 ,loopcnt 
-0x2a97 006488 arg 0 ,contw 
-0x2a98 006489 call memset0 
-0x2a99 006490 arg mem_le_state ,contw 
-0x2a9a 006491 arg 10 ,loopcnt 
-0x2a9b 006492 call memset0 
-0x2a9c 006493 jam 0 ,mem_sp_calc 
-0x2a9d 006494 jam 0 ,mem_fifo_temp 
-0x2a9e 006495 jam 0 ,mem_le_testtype 
-0x2a9f 006496 jam 0 ,mem_debug_config 
-0x2aa0 006497 jam 0 ,mem_lmp_conn_state 
-0x2aa1 006498 bpatch patch14_1 ,mem_patch14 
-0x2aa2 006499 jam 0 ,mem_connection_options 
-0x2aa3 006500 jam 0 ,mem_tester_emulate 
-0x2aa4 006501 jam 0 ,mem_tester_cnt 
-0x2aa5 006502 setarg param_glap 
-0x2aa6 006503 store 3 ,mem_glap 
-0x2aa7 006504 setarg param_acl_pktlen 
-0x2aa8 006505 store 2 ,mem_acl_pktlen 
-0x2aa9 006506 jam param_sco_pktlen ,mem_sco_pktlen 
-0x2aaa 006507 jam param_acl_pktcnt ,mem_acl_pktcnt 
-0x2aab 006508 jam param_sco_pktcnt ,mem_sco_pktcnt 
-0x2aac 006509 setarg param_hci_version 
-0x2aad 006510 store 3 ,mem_hci_version 
-0x2aae 006515 jam 0x60 ,mem_fhs_misc 
-0x2aaf 006516 jam param_max_slot ,mem_max_slot 
-0x2ab0 006517 jam 0x02 ,mem_fw_ver 
-0x2ab1 006518 fetch 1 ,mem_ssp_enable 
-0x2ab2 006519 ncall init_memp ,blank 
-0x2ab3 006520 fetch 1 ,mem_le_secure_connect_enable 
-0x2ab4 006521 ncall init_memp_256 ,blank 
-0x2ab5 006522 bpatch patch14_2 ,mem_patch14 
-0x2ab6 006523 rtn wake 
-0x2ab7 006524 setarg 0 
-0x2ab8 006525 store 2 ,mem_tx_len 
-0x2ab9 006526 rshift clkn_bt ,pdata 
-0x2aba 006527 store 4 ,mem_last_clkn 
-0x2abb 006528 rtn 
-:      006535 lpmstate:
-0x2abc 006536 setarg 0xee21 
-0x2abd 006537 hstore 2 ,core_clkoff 
-0x2abe 006538 hfetch 4 ,core_gpio_in 
-0x2abf 006539 store 4 ,mem_saved_gpio_in 
-0x2ac0 006540 hfetch 1 ,core_lpm_ldocnt 
-0x2ac1 006541 store 1 ,mem_wakup_from_power_flag 
-0x2ac2 006542 bbit0 gpio_latch ,loadcode 
-0x2ac3 006543 enable wake 
-0x2ac4 006544 bbit0 cold_wake ,lpmwake 
-0x2ac5 006545 disable wake 
-0x2ac6 006546 deposit auxcnt 
-0x2ac7 006547 nbranch lpmwake ,blank 
-0x2ac8 006548 hfetch 1 ,core_lpm_ctrl + 3 
-0x2ac9 006549 bbit1 reload_code ,lpmwake 
-0x2aca 006550 arg param_hibernate_clks ,temp 
-0x2acb 006551 branch lpm_enter_sleep 
-:      006552 lpmwake:
-0x2acc 006553 hfetch 3 ,core_lpm_xtalcnt 
-0x2acd 006554 hstore 3 ,core_lpm_reg 
-0x2ace 006555 ifetch 1 ,contr 
-0x2acf 006556 or_into isogate_mask ,pdata 
-0x2ad0 006557 istore 1 ,contw 
-0x2ad1 006558 call lpm_write_ctrl2 
-0x2ad2 006559 hfetch 1 ,core_lpm_isogate 
-0x2ad3 006560 set1 enable_retmem ,pdata 
-0x2ad4 006561 hstore 1 ,core_lpm_isogate 
-0x2ad5 006562 call lpm_write_ctrl2 
-0x2ad6 006563 call lpm_load_context ,wake 
-0x2ad7 006564 hfetch 1 ,core_lpm_reg + 2 
-0x2ad8 006565 set0 gpio_latch ,pdata 
-0x2ad9 006566 hstore 1 ,core_lpm_reg + 2 
-0x2ada 006567 call lpm_write_ctrl2 
-0x2adb 006568 nbranch loadcode ,wake 
-0x2adc 006569 rtnmark0 mark_otp_encrypt 
-0x2add 006570 jam lock_otp ,core_misc_ctrl 
-0x2ade 006571 rtn 
-:      006573 lpm_load_context:
-0x2adf 006574 fetch 1 ,mem_saved_spidctrl 
-0x2ae0 006575 hstore 1 ,core_spid_ctrl 
-0x2ae1 006576 fetch 3 ,mem_saved_gsel 
-0x2ae2 006577 hstore 3 ,core_gpio_sel 
-0x2ae3 006578 fetch 4 ,mem_saved_gpio + 4 
-0x2ae4 006579 hstore 4 ,core_gpio_out0 
-0x2ae5 006580 fetch 4 ,mem_saved_gpio 
-0x2ae6 006581 hstore 4 ,core_gpio_oe0 
-0x2ae7 006582 fetch 8 ,mem_saved_gpio + 8 
-0x2ae8 006583 hstore 8 ,core_gpio_pu0 
-0x2ae9 006584 fetch 8 ,mem_saved_mark 
-0x2aea 006585 iforce mark 
-0x2aeb 006586 hfetch 8 ,core_gpio_wakeup_low 
-0x2aec 006587 store 8 ,mem_gpio_wakeup_low 
-0x2aed 006588 call load_ucode 
-0x2aee 006589 rtn 
-:      006591 lpm_save_context:
-0x2aef 006592 deposit mark 
-0x2af0 006593 store 8 ,mem_saved_mark 
-0x2af1 006594 hfetch 8 ,core_gpio_oe0 
-0x2af2 006595 store 8 ,mem_saved_gpio 
-0x2af3 006596 ifetch 8 ,contr 
-0x2af4 006597 istore 8 ,contw 
-0x2af5 006598 hfetch 3 ,core_gpio_sel 
-0x2af6 006599 store 3 ,mem_saved_gsel 
-0x2af7 006600 hfetch 1 ,core_spid_ctrl 
-0x2af8 006601 store 1 ,mem_saved_spidctrl 
-0x2af9 006602 branch lpm_write_gpio_wakeup 
-:      006604 lpo_calibration:
-0x2afa 006605 hfetch 1 ,core_bist_ctrl 
-0x2afb 006606 nbranch lpo_cal_inited ,blank 
-0x2afc 006607 fetch 3 ,mem_clks_per_lpo 
-0x2afd 006608 nrtn blank 
-0x2afe 006609 jam 0xc0 ,core_bist_ctrl 
-0x2aff 006610 jam ccnt_start ,core_misc_ctrl 
-:      006611 lpo_cal_inited:
-0x2b00 006612 hfetch 1 ,core_perf_status 
-0x2b01 006613 rtnbit0 1 
-0x2b02 006614 hfetch 3 ,core_clk_counter 
-0x2b03 006615 store 3 ,mem_clks_per_lpo 
-0x2b04 006616 rtn 
-:      006620 lpm_adjust_clk:
-0x2b05 006621 bpatch patch14_3 ,mem_patch14 
-0x2b06 006622 deposit clke 
-0x2b07 006623 call clk_diff_rt 
-0x2b08 006624 fetcht 4 ,mem_sleep_counter_all 
-0x2b09 006625 sub temp ,0xff ,null 
-0x2b0a 006626 rtn positive 
-0x2b0b 006627 lshift8 pdata ,pdata 
-0x2b0c 006628 lshift4 pdata ,pdata 
-0x2b0d 006629 idiv temp 
-0x2b0e 006630 call wait_div_end 
-0x2b0f 006631 quotient pdata 
-0x2b10 006632 arg param_lpm_adjmax ,temp 
-0x2b11 006633 call ceiling 
-0x2b12 006634 store 1 ,mem_lpm_adjust 
-0x2b13 006635 nbranch lpm_adjust_positive ,user 
-0x2b14 006636 sub pdata ,0 ,pdata 
-:      006637 lpm_adjust_positive:
-0x2b15 006638 fetcht 3 ,mem_clks_per_lpo 
-0x2b16 006639 iadd temp ,pdata 
-0x2b17 006640 store 3 ,mem_clks_per_lpo 
-:      006641 lpm_clear_counter:
-0x2b18 006642 setarg 0 
-0x2b19 006643 store 4 ,mem_sleep_counter_all 
-0x2b1a 006644 rtn 
-:      006648 lpm_doze:
-0x2b1b 006649 fetch 1 ,mem_lpm_config + 2 
-0x2b1c 006650 set1 reload_code ,pdata 
-0x2b1d 006651 store 1 ,mem_lpm_config + 2 
-0x2b1e 006652 branch lpm_hibernate_normal 
-:      006656 lpm_hibernate:
-0x2b1f 006657 arg param_hibernate_clks ,temp 
-0x2b20 006658 fetch 1 ,mem_lpm_config + 1 
-0x2b21 006659 set0 7 ,pdata 
-0x2b22 006660 store 1 ,mem_lpm_config + 1 
-:      006661 lpm_hibernate_normal:
-0x2b23 006662 bpatch patch14_4 ,mem_patch14 
-0x2b24 006663 call lpm_write_gpio_wakeup 
-0x2b25 006664 fetch 1 ,mem_lpm_hibernate_switch 
-0x2b26 006665 store 1 ,mem_lpm_xtalcnt + 4 
-0x2b27 006666 fetch 1 ,mem_lpm_xtalcnt + 2 
-0x2b28 006667 set1 cold_wake ,pdata 
-0x2b29 006668 store 1 ,mem_lpm_xtalcnt + 2 
-:      006671 lpm_sleep:
-0x2b2a 006672 bpatch patch14_5 ,mem_patch14 
-0x2b2b 006673 call xtal_fast_wake 
-0x2b2c 006674 fetch 4 ,mem_sleep_counter_all 
-0x2b2d 006675 iadd temp ,pdata 
-0x2b2e 006676 store 4 ,mem_sleep_counter_all 
-0x2b2f 006677 call lpm_save_context 
-0x2b30 006678 fetch 5 ,mem_lpm_xtalcnt 
-0x2b31 006679 hstore 4 ,core_lpm_reg 
-0x2b32 006680 rshift32 pdata ,rega 
-0x2b33 006681 until null ,lpo_edge 
-0x2b34 006682 deposit clkn 
-0x2b35 006683 store 6 ,mem_sleep_clkn 
-0x2b36 006684 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
-0x2b37 006685 until null ,lpo_edge 
-0x2b38 006686 until null ,lpo_edge 
-0x2b39 006687 deposit rega 
-0x2b3a 006688 hstore 1 ,core_lpm_isogate 
-0x2b3b 006689 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
-:      006690 lpm_enter_sleep:
-0x2b3c 006691 until null ,lpo_edge 
-0x2b3d 006692 until null ,lpo_edge 
-0x2b3e 006693 hstoret 4 ,core_lpm_reg 
-0x2b3f 006694 jam lpmreg_sel_counter ,core_lpm_wr 
-0x2b40 006695 until null ,never 
-:      006700 lpm_recover_clk:
-0x2b41 006701 bpatch patch14_6 ,mem_patch14 
-0x2b42 006702 setarg 0 
-0x2b43 006703 copy auxcnt ,null 
-0x2b44 006704 branch lpm_recover_timeout ,zero 
-0x2b45 006705 hfetch 1 ,core_lpm_xtalcnt 
-0x2b46 006706 hfetcht 1 ,core_lpm_buckcnt 
-0x2b47 006707 isub temp ,null 
-0x2b48 006708 branch lpm_recover_xtal ,positive 
-0x2b49 006709 deposit temp 
-:      006710 lpm_recover_xtal:
-0x2b4a 006711 isub auxcnt ,pdata 
-0x2b4b 006712 increase 1 ,pdata 
-:      006713 lpm_recover_timeout:
-0x2b4c 006714 increase 8 ,pdata 
-0x2b4d 006715 until null ,lpo_edge 
-0x2b4e 006716 iadd lpo_time ,pdata 
-0x2b4f 006717 fetcht 4 ,mem_sleep_counter 
-0x2b50 006718 iadd temp ,pdata 
-0x2b51 006719 fetcht 3 ,mem_clks_per_lpo 
-0x2b52 006720 imul32 temp ,pdata 
-0x2b53 006721 rshift8 pdata ,pdata 
-0x2b54 006722 rshift4 pdata ,pdata 
-0x2b55 006723 increase param_lpm_fix ,pdata 
-0x2b56 006724 arg 3750 ,temp 
-0x2b57 006725 idiv temp 
-0x2b58 006726 call wait_div_end 
-0x2b59 006727 quotient pdata 
-0x2b5a 006728 lshift16 pdata ,pdata 
-0x2b5b 006729 remainder temp 
-0x2b5c 006730 ior temp ,pdata 
-0x2b5d 006731 fetcht 6 ,mem_sleep_clkn 
-0x2b5e 006732 call clk_add 
-0x2b5f 006733 copy temp ,clkn 
-0x2b60 006734 fetch 6 ,mem_context + coffset_clk_offset 
-0x2b61 006735 call calc_clke2 
-0x2b62 006736 deposit clke 
-0x2b63 006737 store 6 ,mem_pdatatemp 
-0x2b64 006738 deposit auxcnt 
-0x2b65 006739 istore 1 ,contw 
-0x2b66 006740 hfetch 1 ,core_gpio_in1 
-0x2b67 006741 or_into 0xf0 ,pdata 
-0x2b68 006742 istore 1 ,contw 
-0x2b69 006743 rtn 
-:      006745 lpm_dispatch:
-0x2b6a 006746 bpatch patch14_7 ,mem_patch14 
-0x2b6b 006747 call lpo_calibration 
-0x2b6c 006748 fetch 3 ,mem_clks_per_lpo 
-0x2b6d 006749 rtn blank 
-0x2b6e 006750 fetch 1 ,mem_lpm_mode 
-0x2b6f 006751 rtn blank 
-0x2b70 006752 fetch 1 ,mem_ssp_enable 
-0x2b71 006753 branch lpm_dispatch_next ,blank 
-0x2b72 006754 fetch 1 ,mem_sp_local_key_invalid 
-0x2b73 006755 rtn blank 
-:      006756 lpm_dispatch_next:
-0x2b74 006757 fetch 1 ,mem_le_sc_calc 
-0x2b75 006758 nrtn blank 
-0x2b76 006759 call lpm_check_wake_lock 
-0x2b77 006760 nrtn blank 
-0x2b78 006761 fetch 1 ,mem_context 
-0x2b79 006762 compare 3 ,pdata ,0x7 
-0x2b7a 006763 nbranch lpm_dispatch_unconn ,true 
-0x2b7b 006764 fetch 2 ,mem_context + coffset_tsniff 
-0x2b7c 006765 rtn blank 
-0x2b7d 006766 rtn wake 
-0x2b7e 006767 bpatch patch15_0 ,mem_patch15 
-:      006768 lpm_dispatch_next2:
-0x2b7f 006769 fetcht 1 ,mem_lpm_current_mult 
-0x2b80 006770 fetch 2 ,mem_context + coffset_tsniff 
-0x2b81 006771 imul32 temp ,pdata 
-0x2b82 006772 rshift4 temp ,temp 
-0x2b83 006773 rshift2 temp ,temp 
-0x2b84 006774 isub temp ,pdata 
-0x2b85 006775 fetcht 4 ,mem_context + coffset_sniff_anchor 
-0x2b86 006776 iadd temp ,pdata 
-0x2b87 006777 fetcht 1 ,mem_lpm_overhead 
-0x2b88 006778 isub temp ,pdata 
-0x2b89 006779 lshift16 pdata ,alarm 
-0x2b8a 006780 bpatch patch15_1 ,mem_patch15 
-0x2b8b 006781 fetch 2 ,mem_context + coffset_rx_window 
-0x2b8c 006782 rshift pdata ,pdata 
-0x2b8d 006783 call clk2bt 
-0x2b8e 006784 deposit alarm 
-0x2b8f 006785 call clk_diff 
-0x2b90 006786 copy clke ,temp 
-0x2b91 006787 call clk_diff_rt 
-0x2b92 006788 rtn user 
-:      006789 lpm_dispatch_sleep:
-0x2b93 006790 call clk2lpo 
-:      006791 lpm_dispatch_lpo:
-0x2b94 006792 bpatch patch15_2 ,mem_patch15 
-0x2b95 006793 fetch 1 ,mem_lpm_xtalcnt 
-0x2b96 006794 isub temp ,null 
-0x2b97 006795 branch lpm_clear_counter ,positive 
-0x2b98 006796 storet 4 ,mem_sleep_counter 
-0x2b99 006797 call app_will_enter_lpm 
-0x2b9a 006798 call l2cap_lpm_save_txbuf 
-0x2b9b 006799 fetcht 4 ,mem_sleep_counter 
-0x2b9c 006800 branch lpm_sleep 
-:      006802 lpm_dispatch_unconn:
-0x2b9d 006803 bpatch patch15_3 ,mem_patch15 
-0x2b9e 006804 fetch 1 ,mem_context 
-0x2b9f 006805 rtnbit1 state_inconn 
-0x2ba0 006806 rtnbit1 state_inpage 
-0x2ba1 006807 fetch 1 ,mem_ssp_enable 
-0x2ba2 006808 branch lpm_unconn_nossp ,blank 
-0x2ba3 006809 fetch 1 ,mem_sp_local_key_invalid 
-0x2ba4 006810 rtn blank 
-:      006811 lpm_unconn_nossp:
-0x2ba5 006812 bpatch patch15_4 ,mem_patch15 
-0x2ba6 006813 fetch 1 ,mem_le_adv_enable 
-0x2ba7 006814 nbranch lpm_unconn_cont ,blank 
-0x2ba8 006815 fetch 1 ,mem_scan_mode 
-0x2ba9 006816 rtn blank 
-:      006817 lpm_unconn_cont:
-0x2baa 006818 fetch 2 ,mem_lpm_interval 
-0x2bab 006819 rtn blank 
-:      006820 lpm_sleep_btclk:
-0x2bac 006821 fetcht 1 ,mem_lpm_overhead 
-0x2bad 006822 isub temp ,pdata 
-0x2bae 006823 arg 7500 ,temp 
-0x2baf 006824 imul32 temp ,pdata 
-0x2bb0 006825 branch lpm_dispatch_sleep 
-:      006827 lpm_set_mult:
-0x2bb1 006828 bpatch patch15_5 ,mem_patch15 
-0x2bb2 006829 disable wake 
-0x2bb3 006830 fetch 1 ,mem_state 
-0x2bb4 006831 rtnbit0 state_insniff 
-0x2bb5 006832 nbranch lpm_not_match ,match 
-0x2bb6 006833 call lpm_match 
-0x2bb7 006834 fetch 2 ,mem_rx_window_sniff 
-0x2bb8 006835 store 2 ,mem_rx_window 
-0x2bb9 006836 fetch 1 ,mem_arq 
-0x2bba 006837 bbit1 wack ,lpm_mult_short 
-0x2bbb 006838 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
-0x2bbc 006839 call l2cap_malloc_is_fifo_empty 
-0x2bbd 006840 nbranch lpm_mult_short ,blank 
-0x2bbe 006841 fetch 1 ,mem_classic_bt_flag 
-0x2bbf 006842 bbit1 short_mult_flag ,lpm_mult_short 
-:      006843 lpm_mult_wait_timeout:
-0x2bc0 006844 jam 0 ,mem_lpm_current_mult 
-0x2bc1 006845 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
-0x2bc2 006846 fetch 1 ,mem_lpm_mult_cnt 
-0x2bc3 006847 branch lpm_mult_long ,blank 
-0x2bc4 006848 increase -1 ,pdata 
-0x2bc5 006849 store 1 ,mem_lpm_mult_cnt 
-0x2bc6 006850 rtn 
-:      006853 classic_bt_set_mult_short_flag:
-0x2bc7 006854 arg short_mult_flag ,queue 
-0x2bc8 006855 branch classic_bluetooth_set_flag 
-:      006857 classic_bt_clr_mult_short_flag:
-0x2bc9 006858 arg short_mult_flag ,queue 
-0x2bca 006859 branch classic_bluetooth_clr_flag 
-:      006863 lpm_match:
-0x2bcb 006864 jam 0 ,mem_sniff_unint_lost 
-0x2bcc 006865 fetch 3 ,mem_sniff_rcv 
-0x2bcd 006866 increase 1 ,pdata 
-0x2bce 006867 store 3 ,mem_sniff_rcv 
-0x2bcf 006868 rtn 
-:      006870 lpm_not_match:
-0x2bd0 006871 bpatch patch15_6 ,mem_patch15 
-0x2bd1 006872 fetcht 2 ,mem_rx_window_sniff 
-0x2bd2 006873 rshift temp ,temp 
-0x2bd3 006874 fetch 2 ,mem_rx_window 
-0x2bd4 006875 iadd temp ,pdata 
-0x2bd5 006876 store 2 ,mem_rx_window 
-:      006877 lpm_lost:
-0x2bd6 006878 jam 0 ,mem_lpm_current_mult 
-0x2bd7 006879 fetch 3 ,mem_sniff_lost 
-0x2bd8 006880 increase 1 ,pdata 
-0x2bd9 006881 store 3 ,mem_sniff_lost 
-0x2bda 006882 fetch 1 ,mem_sniff_unint_lost 
-0x2bdb 006883 increase 1 ,pdata 
-0x2bdc 006884 store 1 ,mem_sniff_unint_lost 
-0x2bdd 006885 rtn 
-:      006887 lpm_mult_short:
-0x2bde 006888 jam 0 ,mem_lpm_current_mult 
-0x2bdf 006889 fetch 1 ,mem_lpm_mult_timeout 
-0x2be0 006890 store 1 ,mem_lpm_mult_cnt 
-0x2be1 006891 rtn 
-:      006893 lpm_mult_long:
-0x2be2 006894 fetcht 1 ,mem_lpm_mult 
-0x2be3 006895 storet 1 ,mem_lpm_current_mult 
-0x2be4 006896 rtn 
-:      006898 lpm_cal_xtal_startup:
-0x2be5 006899 bpatch patch15_7 ,mem_patch15 
-0x2be6 006900 fetch 1 ,mem_lpm_xtalcnt 
-0x2be7 006901 nrtn blank 
-0x2be8 006902 jam clksel_rc ,core_clksel 
-0x2be9 006903 setarg 0xf0c 
-0x2bea 006904 call lpm_write_config 
-0x2beb 006905 setarg 200000 
-0x2bec 006906 call sleep 
-0x2bed 006907 until null ,lpo_edge 
-0x2bee 006908 copy lpo_time ,alarm 
-0x2bef 006909 call xtal_fast_wake 
-0x2bf0 006910 jam clksel_xtal ,core_clksel 
-0x2bf1 006911 nop 10 
-0x2bf2 006912 until null ,lpo_edge 
-0x2bf3 006913 deposit lpo_time 
-0x2bf4 006914 isub alarm ,pdata 
-0x2bf5 006915 increase 0x30 ,pdata 
-0x2bf6 006916 arg 0xff ,temp 
-0x2bf7 006917 call ceiling 
-0x2bf8 006918 store 1 ,mem_lpm_xtalcnt 
-0x2bf9 006919 nop 30000 
-0x2bfa 006920 nop 30000 
-0x2bfb 006921 nop 30000 
-0x2bfc 006922 rtn 
-:      006924 lpm_cal_xtal_startup_by_snooze:
-0x2bfd 006925 fetch 1 ,mem_lpm_xtalcnt 
-0x2bfe 006926 nrtn blank 
-0x2bff 006927 jam 0xff ,core_xtal_stable_time 
-0x2c00 006928 jam clksel_rc ,core_clksel 
-0x2c01 006929 call xtal_fast_wake 
-0x2c02 006930 setarg 1000 
-0x2c03 006931 iadd lpo_time ,alarm 
-0x2c04 006932 snooze 
-0x2c05 006933 deposit lpo_time 
-0x2c06 006934 nop 12000 
-0x2c07 006935 nop 12000 
-0x2c08 006936 nop 12000 
-0x2c09 006937 nop 12000 
-0x2c0a 006938 nop 12000 
-0x2c0b 006939 nop 12000 
-0x2c0c 006940 nop 12000 
-0x2c0d 006941 nop 12000 
-0x2c0e 006942 nop 12000 
-0x2c0f 006943 isub alarm ,pdata 
-0x2c10 006944 add pdata ,0x30 ,pdata 
-0x2c11 006945 arg 0xff ,temp 
-0x2c12 006946 call ceiling 
-0x2c13 006947 store 1 ,mem_lpm_xtalcnt 
-0x2c14 006948 nop 30000 
-0x2c15 006949 nop 30000 
-0x2c16 006950 nop 30000 
-0x2c17 006951 rtn 
-:      006956 lpm_write_config:
-0x2c18 006957 arg 0xfff ,contw 
-0x2c19 006958 iand contw ,contw 
-0x2c1a 006959 fetch 1 ,mem_lpm_config 
-0x2c1b 006960 and_into 0xf0 ,pdata 
-0x2c1c 006961 lshift8 pdata ,pdata 
-0x2c1d 006962 ior contw ,pdata 
-0x2c1e 006963 hstore 2 ,core_lpm_reg 
-0x2c1f 006964 ifetch 2 ,contr 
-0x2c20 006965 istore 2 ,contw 
-:      006967 lpm_write_ctrl:
-0x2c21 006968 setarg lpmreg_sel_ctrl 
-0x2c22 006969 branch lpm_write 
-:      006971 lpm_write_ctrl2:
-0x2c23 006972 setarg lpmreg_sel_ctrl2 
-:      006973 lpm_write:
-0x2c24 006974 until null ,lpo_edge 
-0x2c25 006975 hstore 1 ,core_lpm_wr 
-0x2c26 006976 until null ,lpo_edge 
-0x2c27 006977 until null ,lpo_edge 
-0x2c28 006978 rtn 
-:      006981 lpm_write_gpio_wakeup:
-0x2c29 006982 bpatch patch16_0 ,mem_patch16 
-0x2c2a 006983 fetch 4 ,mem_gpio_wakeup_low 
-0x2c2b 006984 hstore 4 ,core_lpm_reg 
-0x2c2c 006985 setarg lpmreg_sel_gpiolow 
-0x2c2d 006986 call lpm_write 
-0x2c2e 006987 fetch 4 ,mem_gpio_wakeup_high 
-0x2c2f 006988 hstore 4 ,core_lpm_reg 
-0x2c30 006989 setarg lpmreg_sel_gpiohigh 
-0x2c31 006990 branch lpm_write 
-:      006992 lpm_get_wake_lock:
-0x2c32 006993 fetch 2 ,mem_lpm_wake_lock 
-0x2c33 006994 qset1 pdata 
-0x2c34 006995 store 2 ,mem_lpm_wake_lock 
-0x2c35 006996 rtn 
-:      006998 lpm_put_wake_lock:
-0x2c36 006999 fetch 2 ,mem_lpm_wake_lock 
-0x2c37 007000 qset0 pdata 
-0x2c38 007001 store 2 ,mem_lpm_wake_lock 
-0x2c39 007002 rtn 
-:      007006 lpm_check_wake_lock:
-0x2c3a 007007 bpatch patch16_1 ,mem_patch16 
-0x2c3b 007008 call app_check_wake_lock 
-0x2c3c 007009 fetch 2 ,mem_lpm_wake_lock 
-0x2c3d 007010 copy pdata ,rega 
-0x2c3e 007011 fetch 1 ,mem_state_map 
-0x2c3f 007012 isolate1 smap_rxlmp ,pdata 
-0x2c40 007013 setflag true ,wake_lock_lmp_rx ,rega 
-0x2c41 007014 fetch 1 ,mem_lmo_opcode1 
-0x2c42 007015 fetcht 1 ,mem_lmo_opcode2 
-0x2c43 007016 iadd temp ,pdata 
-0x2c44 007017 fetcht 1 ,mem_lmp_to_send 
-0x2c45 007018 iadd temp ,pdata 
-0x2c46 007019 nsetflag blank ,wake_lock_lmp_tx ,rega 
-0x2c47 007020 fetch 1 ,mem_le_tx_buff_used 
-0x2c48 007021 nsetflag blank ,wake_lock_ble_tx ,rega 
-0x2c49 007022 fetch 2 ,mem_l2cap_rxbuff1_len 
-0x2c4a 007023 fetcht 2 ,mem_l2cap_rxbuff2_len 
-0x2c4b 007024 iadd temp ,pdata 
-0x2c4c 007025 nsetflag blank ,wake_lock_l2cap_rx ,rega 
-0x2c4d 007026 fetch util_fifo_len ,mem_ipc_fifo_bt2c51 
-0x2c4e 007027 nsetflag blank ,wake_lock_ipc_bt2c51 ,rega 
-0x2c4f 007028 fetch util_fifo_len ,mem_ipc_fifo_c512bt 
-0x2c50 007029 nsetflag blank ,wake_lock_ipc_c512bt ,rega 
-0x2c51 007030 fetch 1 ,mem_hci_cmd 
-0x2c52 007031 nsetflag blank ,wake_lock_cmd ,rega 
-0x2c53 007032 fetch 1 ,mem_device_option 
-0x2c54 007033 compare dvc_op_module ,pdata ,0xff 
-0x2c55 007034 call lpm_uart_wake_lock ,true 
-0x2c56 007035 setarg -8 
-0x2c57 007036 iand rega ,rega 
-0x2c58 007037 copy rega ,pdata 
-0x2c59 007038 store 2 ,mem_lpm_wake_lock 
-0x2c5a 007039 rtn 
-:      007041 lpm_uart_wake_lock:
-0x2c5b 007042 hfetch 2 ,core_uart_rxitems 
-0x2c5c 007043 nsetflag blank ,wake_lock_uart_rx ,rega 
-0x2c5d 007044 hfetch 2 ,core_uart_txitems 
-0x2c5e 007045 nsetflag blank ,wake_lock_uart_tx ,rega 
-0x2c5f 007046 rtn 
-:      007048 lpm_shut_down:
-0x2c60 007049 hfetch 4 ,core_lpm_ctrl 
-0x2c61 007050 set0 27 ,pdata 
-0x2c62 007051 hstore 4 ,core_lpm_reg 
-0x2c63 007052 call lpm_write_ctrl 
-0x2c64 007053 branch assert 
-:      007055 lpm_disable_exen_output:
-0x2c65 007056 hfetch 4 ,core_lpm_xtalcnt 
-0x2c66 007057 set0 20 ,pdata 
-0x2c67 007058 hstore 4 ,core_lpm_reg 
-0x2c68 007059 branch lpm_write_ctrl2 
-:      007061 check_bt_disabled:
-0x2c69 007062 fetch 2 ,mem_chip_functions 
-0x2c6a 007063 bbit1 bt_disabled ,assert 
-0x2c6b 007064 rtn 
-:      007065 check_ble_disabled:
-0x2c6c 007066 fetch 2 ,mem_chip_functions 
-0x2c6d 007067 bbit1 ble_disabled ,assert 
-0x2c6e 007068 rtn 
-:      007069 check_module_disabled:
-0x2c6f 007070 fetch 2 ,mem_chip_functions 
-0x2c70 007071 bbit1 module_disable ,assert 
-0x2c71 007072 rtn 
-:      007133 g24_dispatch:
-0x2c72 007134 bpatch patch16_2 ,mem_patch16 
-0x2c73 007135 call g24_head_ptr2regc 
-0x2c74 007136 add regc ,offset_24g_mode ,regb 
-0x2c75 007137 ifetch 1 ,regb 
-0x2c76 007139 rtneq disable_24g 
-0x2c77 007140 beq tx_24g ,g24_transmit_process 
-0x2c78 007141 beq rx_24g ,g24_receive_process 
-0x2c79 007142 rtn 
-:      007144 g24_head_ptr2regc:
-0x2c7a 007145 fetcht 2 ,mem_24g_head_ptr 
-0x2c7b 007146 copy temp ,regc 
-0x2c7c 007147 rtn 
-:      007149 g24_receive_process_init:
-0x2c7d 007150 call g24_receive_init 
-0x2c7e 007151 branch g24_mode_switch_init 
-:      007153 g24_receive_process:
-0x2c7f 007154 call g24_mode_switch 
-0x2c80 007155 call g24_dongle_work_mode_auto 
-0x2c81 007156 call g24_dongle_bind_mode_auto 
-0x2c82 007157 branch g24_dongle_search_mode_auto 
-:      007160 g24_pair_init:
-0x2c83 007163 call g24_set0_mem_pid 
-0x2c84 007164 setarg g24_pair_ch 
-0x2c85 007165 call g24_store_mem_ch 
-0x2c86 007166 call g24_store_mem_pair_txpower 
-0x2c87 007169 add regc ,offset_24g_paring_addr ,rega 
-0x2c88 007170 ifetch 4 ,rega 
-0x2c89 007171 branch g24_store_mem_addr 
-:      007173 g24_ch:
-0x2c8a 007174 call g24_head_ptr2regc 
-0x2c8b 007175 add regc ,offset_24g_current_ch_number ,regb 
-0x2c8c 007176 ifetcht 1 ,regb 
-0x2c8d 007178 call g24_ch_temp_incre_size4 
-0x2c8e 007179 add regc ,offset_24g_current_ch_number ,contw 
-0x2c8f 007181 branch g24_contw_istoret_1byte 
-:      007183 g24_ch_temp_incre_size4:
-0x2c90 007184 call g24_ch_calc 
-0x2c91 007185 increase 1 ,temp 
-0x2c92 007186 and_into 3 ,temp 
-0x2c93 007187 rtn 
-:      007189 g24_ch_calc:
-0x2c94 007190 add regc ,offset_24g_addr ,regb 
-0x2c95 007191 ifetch 1 ,regb 
-0x2c96 007193 and_into 0x03 ,pdata 
-0x2c97 007194 mul32 pdata ,4 ,rega 
-0x2c98 007195 add regc ,offset_24g_ch_map1 ,pdata 
-0x2c99 007197 iadd rega ,pdata 
-0x2c9a 007198 iadd temp ,contr 
-0x2c9b 007199 ifetch 1 ,contr 
-0x2c9c 007201 branch g24_store_mem_ch 
-:      007203 g24_set_device_addr:
-0x2c9d 007204 call g24_store_mem_tx_power_temp 
-0x2c9e 007205 call otp_enable_chgpump 
-0x2c9f 007206 setarg 0x7e2 
-0x2ca0 007207 arg mem_temp ,rega 
-0x2ca1 007208 arg 4 ,temp 
-0x2ca2 007209 call otpd_read_data 
-0x2ca3 007210 call otp_disable_chgpump 
-0x2ca4 007211 fetch 4 ,mem_temp 
-0x2ca5 007212 call g24_store_mem_device_addr 
-0x2ca6 007214 nrtn blank 
-0x2ca7 007215 fetch 4 ,mem_lap 
-0x2ca8 007217 branch g24_store_mem_device_addr 
-:      007219 g24_transmit_rf_sta_init:
-0x2ca9 007220 call g24_set1_mem_rf_last_sta 
-0x2caa 007222 setarg 0 
-0x2cab 007223 call g24_store_mem_sync_cnt 
-:      007225 g24_transmit_rf_ctrl_clear:
-0x2cac 007226 call g24_fetch_mem_data_type 
-0x2cad 007228 and_into bits_data ,pdata 
-0x2cae 007230 branch g24_store_mem_data_type 
-:      007232 g24_hop_ch_enable:
-0x2caf 007233 call g24_fetch_mem_data_type 
-0x2cb0 007235 set1 bit_hop ,pdata 
-0x2cb1 007236 call g24_store_mem_data_type 
-0x2cb2 007239 branch g24_store_mem_txpayload 
-:      007241 g24_transmit_hop_pac_fail:
-0x2cb3 007242 call g24_fetch_mem_rf_work_stage 
-0x2cb4 007244 beq 1 ,g24_transmit_hop_pac_fail_wo_hop 
-0x2cb5 007245 beq 2 ,g24_transmit_hop_pac_fail_hop_stage2 
-0x2cb6 007246 rtn 
-:      007248 g24_transmit_hop_pac_fail_wo_hop:
-0x2cb7 007249 call g24_set2_mem_sync_cnt 
-:      007251 g24_transmit_hop_pac_fail_stage1:
-0x2cb8 007252 add regc ,offset_24g_hop_pac_retry ,contw 
-0x2cb9 007253 call g24_mem_set0 
-0x2cba 007255 call g24_store_mem_rf_last_sta 
-0x2cbb 007257 branch g24_transmit_rf_ctrl_clear 
-:      007259 g24_transmit_hop_pac_fail_hop_stage2:
-0x2cbc 007260 call g24_set0_mem_rf_hop_ch 
-0x2cbd 007262 branch g24_transmit_hop_pac_fail_stage1 
-:      007264 g24_transmit_pac_fail_hop_stage3:
-0x2cbe 007265 add regc ,offset_24g_txfail_cnt ,rega 
-0x2cbf 007266 ifetch 1 ,rega 
-0x2cc0 007268 increase 1 ,pdata 
-0x2cc1 007269 add regc ,offset_24g_txfail_cnt ,contw 
-0x2cc2 007270 istore 1 ,contw 
-0x2cc3 007272 beq 0x20 ,g24_tx_attempt_fail 
-0x2cc4 007273 call g24_fetch_mem_rf_hop_ch 
-0x2cc5 007275 beq 1 ,g24_rf_hop_fastly 
-0x2cc6 007276 setarg 1 
-0x2cc7 007277 call g24_store_mem_rf_hop_ch 
-:      007279 g24_rf_hop_attemp_again:
-0x2cc8 007280 call g24_fetch_mem_rf_hop_ch 
-0x2cc9 007282 bne 1 ,g24_transmit_rf_ctrl_clear 
-:      007283 g24_rf_hop_fastly:
-0x2cca 007284 add regc ,offset_24g_hop_fastly_cnt ,rega 
-0x2ccb 007285 ifetch 1 ,rega 
-0x2ccc 007287 increase 1 ,pdata 
-0x2ccd 007288 call g24_store_mem_hop_fastly_cnt 
-0x2cce 007290 beq 4 ,g24_rf_hop_fastly_exit 
-0x2ccf 007291 call g24_ch 
-0x2cd0 007292 call g24_set2_mem_max_retry 
-0x2cd1 007294 branch g24_transmit_packet 
-:      007296 g24_rf_hop_fastly_exit:
-0x2cd2 007297 call g24_set0_mem_hop_fastly_cnt 
-0x2cd3 007299 branch g24_transmit_rf_ctrl_clear 
-:      007301 g24_set0_mem_hop_fastly_cnt:
-0x2cd4 007302 setarg 0 
-:      007303 g24_store_mem_hop_fastly_cnt:
-0x2cd5 007304 add regc ,offset_24g_hop_fastly_cnt ,contw 
-0x2cd6 007305 branch g24_contw_istore_1byte 
-:      007307 g24_transmit_hop_pac_succ_wo_hop:
-0x2cd7 007308 call g24_set2_mem_sync_cnt 
-:      007310 g24_transmit_hop_pac_succ:
-0x2cd8 007311 call g24_set0_mem_rf_hop_ch 
-0x2cd9 007313 call g24_set1_mem_rf_last_sta 
-0x2cda 007315 branch g24_transmit_rf_ctrl_clear 
-:      007317 g24_transmit_succ_rf_config:
-0x2cdb 007318 call g24_fetch_mem_rf_work_stage 
-0x2cdc 007320 beq 3 ,g24_transmit_hop_pac_succ 
-0x2cdd 007321 call g24_fetch_mem_data_type 
-0x2cde 007323 isolate0 bit_hop ,pdata 
-0x2cdf 007324 branch g24_transmit_rf_sta_init ,true 
-0x2ce0 007325 call g24_fetch_mem_rf_work_stage 
-0x2ce1 007327 beq 1 ,g24_transmit_hop_pac_succ_wo_hop 
-0x2ce2 007328 beq 2 ,g24_transmit_hop_pac_succ 
-0x2ce3 007329 rtn 
-:      007331 g24_rf_sta_check:
-0x2ce4 007332 call g24_fetch_mem_pairing_sm 
-0x2ce5 007334 rtnne state_24g_pairing_success 
-0x2ce6 007335 call g24_rf_laststa_synccnt_check 
-0x2ce7 007336 ncall g24_rf_sync_cnt_check ,user2 
-0x2ce8 007337 rtn 
-:      007339 g24_rf_laststa_synccnt_check:
-0x2ce9 007340 disable user2 
-0x2cea 007341 add regc ,offset_24g_rf_last_sta ,rega 
-0x2ceb 007342 ifetch 1 ,rega 
-0x2cec 007344 rtnne 1 
-0x2ced 007345 add regc ,offset_24g_sync_cnt ,rega 
-0x2cee 007346 ifetch 1 ,rega 
-0x2cef 007348 rtnne 0 
-0x2cf0 007349 setarg 1 
-0x2cf1 007350 call g24_store_mem_rf_work_stage 
-0x2cf2 007352 call g24_set4_mem_max_retry 
-0x2cf3 007354 branch enable_user2 
-:      007356 g24_rf_sync_cnt_check:
-0x2cf4 007357 add regc ,offset_24g_sync_cnt ,rega 
-0x2cf5 007358 ifetch 1 ,rega 
-0x2cf6 007360 branch g24_rf_hop_attemp ,blank 
-0x2cf7 007361 increase -1 ,pdata 
-0x2cf8 007362 call g24_store_mem_sync_cnt 
-0x2cf9 007364 setarg 2 
-0x2cfa 007365 call g24_store_mem_rf_work_stage 
-0x2cfb 007367 call g24_ch 
-0x2cfc 007369 branch g24_set4_mem_max_retry 
-:      007371 g24_store_mem_rf_work_stage:
-0x2cfd 007372 add regc ,offset_24g_rf_work_stage ,contw 
-0x2cfe 007373 branch g24_contw_istore_1byte 
-:      007376 g24_rf_hop_attemp:
-0x2cff 007377 setarg 3 
-0x2d00 007378 call g24_store_mem_rf_work_stage 
-0x2d01 007380 call g24_fetch_mem_rf_hop_ch 
-0x2d02 007382 nbranch g24_rf_hop_attemp_again ,blank 
-0x2d03 007383 call g24_ch 
-:      007385 g24_set2_mem_max_retry:
-0x2d04 007386 setarg 2 
-0x2d05 007387 branch g24_store_mem_max_retry 
-:      007389 g24_transmit_process:
-0x2d06 007390 rtnmark0 mark_24g 
-0x2d07 007391 set1 mark_24g_conext ,mark 
-0x2d08 007392 bpatch patch16_3 ,mem_patch16 
-0x2d09 007393 add regc ,offset_24g_tx_without_int ,rega 
-0x2d0a 007394 ifetch 1 ,rega 
-0x2d0b 007396 beq 1 ,g24_transmit_without_int 
-0x2d0c 007397 call g24_timer_check 
-0x2d0d 007398 nbranch g24_transmit_exit ,user 
-0x2d0e 007399 call g24_interval_calibrate 
-:      007400 g24_transmit_without_int:
-0x2d0f 007401 add regc ,offset_24g_tx_without_int ,contw 
-0x2d10 007402 call g24_mem_set0 
-0x2d11 007404 call g24_txdata_prep 
-0x2d12 007405 nbranch g24_enter_lpm ,user 
-0x2d13 007406 call g24_rf_sta_check 
-:      007407 g24_transmit_start:
-0x2d14 007408 call g24_transmit_packet 
-0x2d15 007409 call g24_power_ctrl 
-:      007410 g24_transmit_exit:
-0x2d16 007411 set0 mark_24g_conext ,mark 
-0x2d17 007412 rtn 
-:      007414 g24_timer_timeout:
-0x2d18 007415 rtn zero 
-0x2d19 007416 set1 28 ,pdata 
-0x2d1a 007417 rtn 
-:      007419 g24_interval_calibrate:
-0x2d1b 007420 add regc ,offset_24g_pac_index ,rega 
-0x2d1c 007421 ifetch 1 ,rega 
-0x2d1d 007423 increase 1 ,pdata 
-0x2d1e 007424 add regc ,offset_24g_pac_index ,contw 
-0x2d1f 007425 istore 1 ,contw 
-0x2d20 007427 beq 4 ,g24_interval_max 
-0x2d21 007428 beq 5 ,g24_interval_min 
-0x2d22 007429 rtn 
-:      007430 g24_interval_max:
-0x2d23 007431 add regc ,offset_24g_interval_max ,rega 
-0x2d24 007432 ifetch 1 ,rega 
-:      007434 g24_interval_update:
-0x2d25 007436 add regc ,offset_24g_interval ,contw 
-0x2d26 007437 branch g24_contw_istore_1byte 
-:      007439 g24_interval_min:
-0x2d27 007440 add regc ,offset_24g_pac_index ,contw 
-0x2d28 007441 call g24_mem_set0 
-0x2d29 007443 add regc ,offset_24g_interval_min ,rega 
-0x2d2a 007444 ifetch 1 ,rega 
-0x2d2b 007446 branch g24_interval_update 
-:      007448 g24_txdata_prep:
-0x2d2c 007449 call g24_fetch_mem_pairing_sm 
-0x2d2d 007451 bne state_24g_pairing_success ,g24_pairing_sm 
-0x2d2e 007452 bpatch patch16_4 ,mem_patch16 
-0x2d2f 007453 call g24_package_data 
-0x2d30 007454 nbranch g24_txdata_last_pac ,user 
-0x2d31 007455 call g24_transmit_prep 
-0x2d32 007456 call g24_power_ctrl_pac_incrs 
-:      007457 g24_txdata_enable_tx:
-0x2d33 007459 setarg ensure_on_24g 
-:      007460 g24_store_mem_ensure:
-0x2d34 007461 add regc ,offset_24g_ensure ,contw 
-0x2d35 007462 branch g24_contw_istore_1byte 
-:      007464 g24_txdata_last_pac:
-0x2d36 007465 add regc ,offset_24g_ensure ,rega 
-0x2d37 007466 ifetch 1 ,rega 
-0x2d38 007468 beq ensure_on_24g ,enable_user 
-0x2d39 007469 rtn 
-:      007471 g24_package_data:
-0x2d3a 007473 add regc ,offset_24g_cb_data ,temp 
-0x2d3b 007474 ifetch 2 ,temp 
-0x2d3c 007476 call callback_func 
-0x2d3d 007477 nrtn user 
-0x2d3e 007478 copy rega ,pdata 
-0x2d3f 007479 store 1 ,mem_rega 
-0x2d40 007480 add regc ,offset_24g_abort_pac ,contw 
-0x2d41 007481 call g24_mem_set0 
-0x2d42 007483 call g24_transmit_rf_ctrl_clear 
-0x2d43 007484 store 1 ,mem_24g_common_temp 
-0x2d44 007485 fetch 1 ,mem_rega 
-0x2d45 007486 copy pdata ,rega 
-0x2d46 007487 add rega ,1 ,temp 
-0x2d47 007488 arg mem_24g_common_temp + 1 ,contw 
-0x2d48 007489 copy rega ,loopcnt 
-0x2d49 007490 copy regb ,contr 
-0x2d4a 007491 call memcpy 
-0x2d4b 007492 arg mem_24g_common_temp ,rega 
-:      007493 g24_put_data_in_buff:
-0x2d4c 007494 rtnmark0 mark_24g_conext 
-0x2d4d 007495 add regc ,offset_24g_datalen ,contw 
-0x2d4e 007496 istoret 1 ,contw 
-0x2d4f 007498 copy temp ,loopcnt 
-0x2d50 007499 add regc ,offset_24g_txbuf ,contw 
-0x2d51 007501 copy rega ,contr 
-0x2d52 007502 branch memcpy 
-:      007504 g24_transmit_prep:
-0x2d53 007506 add regc ,offset_24g_datalen ,rega 
-0x2d54 007507 ifetch 1 ,rega 
-0x2d55 007509 increase 2 ,pdata 
-0x2d56 007510 add regc ,offset_24g_txlen ,contw 
-0x2d57 007511 istore 1 ,contw 
-0x2d58 007514 call g24_fetch_mem_data_type 
-0x2d59 007516 call g24_store_mem_txpayload 
-0x2d5a 007519 add regc ,offset_24g_datalen ,rega 
-0x2d5b 007520 ifetch 1 ,rega 
-0x2d5c 007522 lshift3 pdata ,pdata 
-0x2d5d 007523 add regc ,offset_24g_pid ,rega 
-0x2d5e 007524 ifetcht 1 ,rega 
-0x2d5f 007526 and temp ,0x03 ,temp 
-0x2d60 007527 lshift temp ,temp 
-0x2d61 007528 ior temp ,pdata 
-0x2d62 007529 add regc ,offset_24g_no_ack ,rega 
-0x2d63 007530 ifetcht 1 ,rega 
-0x2d64 007532 iadd temp ,pdata 
-0x2d65 007533 istore 1 ,contw 
-0x2d66 007535 add regc ,offset_24g_datalen ,rega 
-0x2d67 007536 ifetch 1 ,rega 
-0x2d68 007538 iforce loopcnt 
-0x2d69 007539 add regc ,offset_24g_txbuf ,contr 
-0x2d6a 007541 branch memcpy 
-:      007543 g24_send_abort_packet:
-0x2d6b 007544 call g24_set1_mem_abort_pac 
-0x2d6c 007546 call g24_set0_mem_rf_hop_ch 
-0x2d6d 007548 call g24_power_ctrl_reinit 
-0x2d6e 007549 call g24_transmit_rf_ctrl_clear 
-0x2d6f 007550 store 1 ,mem_24g_common_temp 
-0x2d70 007551 call g24_put_data_in_buff_pre 
-0x2d71 007552 call g24_fetch_mem_data_type 
-0x2d72 007554 set1 bit_abort ,pdata 
-0x2d73 007555 call g24_store_mem_data_type 
-0x2d74 007557 call g24_transmit_prep 
-0x2d75 007558 call g24_txdata_enable_tx 
-0x2d76 007559 branch g24_transmit_start 
-:      007561 g24_put_data_in_buff_pre:
-0x2d77 007562 store 1 ,mem_24g_common_temp + 1 
-0x2d78 007563 call g24_fetch_mem_device_addr 
-0x2d79 007565 store 4 ,mem_24g_common_temp + 2 
-0x2d7a 007566 arg 6 ,temp 
-0x2d7b 007567 arg mem_24g_common_temp ,rega 
-0x2d7c 007568 branch g24_put_data_in_buff 
-:      007570 g24_enter_lpm:
-0x2d7d 007571 add regc ,offset_24g_abort_pac ,rega 
-0x2d7e 007572 ifetch 1 ,rega 
-0x2d7f 007574 branch g24_send_abort_packet ,blank 
-:      007575 g24_enter_lpm_prepare:
-0x2d80 007577 add regc ,offset_24g_cb_lpm_prepare ,rega 
-0x2d81 007578 ifetch 2 ,rega 
-0x2d82 007580 branch callback_func 
-:      007582 g24_lpm_long_sleep:
-0x2d83 007583 call g24_head_ptr2regc 
-0x2d84 007585 call lpo_calibration 
-0x2d85 007586 fetch 3 ,mem_clks_per_lpo 
-0x2d86 007587 rtn blank 
-0x2d87 007588 add regc ,offset_24g_cb_lpm_before ,temp 
-0x2d88 007589 ifetch 2 ,temp 
-0x2d89 007591 call callback_func 
-0x2d8a 007592 add regc ,offset_24g_enter_hibernate ,temp 
-0x2d8b 007593 ifetch 8 ,temp 
-0x2d8c 007594 call clk2lpo 
-0x2d8d 007595 storet 4 ,mem_sleep_counter 
-0x2d8e 007596 branch lpm_sleep 
-:      007598 g24_transmit_packet:
-0x2d8f 007599 call g24_head_ptr2regc 
-0x2d90 007600 add regc ,offset_24g_retry ,contw 
-0x2d91 007601 call g24_mem_set0 
-:      007603 g24_transmit_loop:
-0x2d92 007604 call g24_transmit_receive_ack 
-0x2d93 007605 nbranch g24_retransmit ,sync 
-0x2d94 007606 nbranch g24_retransmit ,user3 
-0x2d95 007607 call g24_ackpayload_parse 
-0x2d96 007608 call g24_power_ctrl_ack_incrs 
-:      007609 g24_transmit_next_packet:
-0x2d97 007610 call g24_head_ptr2regc 
-0x2d98 007611 add regc ,offset_24g_pid ,rega 
-0x2d99 007612 ifetch 1 ,rega 
-0x2d9a 007614 increase 1 ,pdata 
-0x2d9b 007615 call g24_store_mem_pid 
-0x2d9c 007617 call g24_fetch_mem_pairing_sm 
-0x2d9d 007619 bne state_24g_pairing_success ,g24_paring_mode 
-0x2d9e 007620 call g24_transmit_succ_rf_config 
-:      007621 g24_transmit_abandon:
-0x2d9f 007622 setarg 0 
-0x2da0 007623 add regc ,offset_24g_txfail_cnt ,contw 
-0x2da1 007624 istore 2 ,contw 
-0x2da2 007628 setarg ensure_off_24g 
-0x2da3 007629 branch g24_store_mem_ensure 
-:      007632 g24_transmit_receive_ack:
-0x2da4 007633 disable user3 
-0x2da5 007634 call g24_transmit 
-0x2da6 007635 call g24_head_ptr2regc 
-0x2da7 007636 add regc ,offset_24g_no_ack ,rega 
-0x2da8 007637 ifetch 1 ,rega 
-0x2da9 007639 beq no_ack_24g ,g24_transmit_no_ack 
-0x2daa 007640 call g24_receive_packet 
-0x2dab 007641 branch g24_end_of_packet 
-:      007642 g24_transmit_no_ack:
-0x2dac 007643 call g24_end_of_packet 
-0x2dad 007644 branch g24_transmit_next_packet 
-:      007647 g24_retransmit:
-0x2dae 007648 bpatch patch16_5 ,mem_patch16 
-0x2daf 007649 add regc ,offset_24g_get_ack_fail ,rega 
-0x2db0 007650 ifetch 1 ,rega 
-0x2db1 007652 increase 1 ,pdata 
-0x2db2 007653 add regc ,offset_24g_get_ack_fail ,contw 
-0x2db3 007654 istore 1 ,contw 
-0x2db4 007656 call g24_fetch_mem_pairing_sm 
-0x2db5 007658 bne state_24g_pairing_success ,g24_tx_paring_retry 
-0x2db6 007659 add regc ,offset_24g_retry ,rega 
-0x2db7 007660 ifetcht 1 ,rega 
-0x2db8 007662 increase 1 ,temp 
-0x2db9 007663 add regc ,offset_24g_retry ,contw 
-0x2dba 007664 istoret 1 ,contw 
-0x2dbb 007666 add regc ,offset_24g_max_retry ,rega 
-0x2dbc 007667 ifetch 1 ,rega 
-0x2dbd 007669 isub temp ,pdata 
-0x2dbe 007670 nbranch g24_transmit_loop ,blank 
-0x2dbf 007671 bpatch patch16_6 ,mem_patch16 
-0x2dc0 007672 call g24_fetch_mem_rf_work_stage 
-0x2dc1 007674 beq 3 ,g24_transmit_pac_fail_hop_stage3 
-0x2dc2 007675 add regc ,offset_24g_hop_pac_retry ,rega 
-0x2dc3 007676 ifetch 1 ,rega 
-0x2dc4 007678 increase 1 ,pdata 
-0x2dc5 007679 add regc ,offset_24g_hop_pac_retry ,contw 
-0x2dc6 007680 istore 1 ,contw 
-0x2dc7 007682 beq 2 ,g24_transmit_hop_pac_fail 
-0x2dc8 007683 call g24_hop_ch_enable 
-0x2dc9 007684 setarg 1 
-0x2dca 007685 call g24_store_mem_max_retry 
-0x2dcb 007687 branch g24_transmit_packet 
-:      007689 g24_tx_paring_retry:
-0x2dcc 007690 add regc ,offset_24g_get_ack_fail ,rega 
-0x2dcd 007691 ifetch 1 ,rega 
-0x2dce 007693 rtnne 0xff 
-0x2dcf 007694 add regc ,offset_24g_get_ack_fail ,contw 
-0x2dd0 007695 call g24_mem_set0 
-0x2dd1 007697 branch g24_stop_24g_mode 
-:      007699 g24_tx_attempt_fail:
-0x2dd2 007700 add regc ,offset_24g_txfail_cnt ,contw 
-0x2dd3 007701 call g24_mem_set0 
-:      007703 g24_stop_24g_mode:
-0x2dd4 007704 jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
-0x2dd5 007705 branch ui_ipc_send_event 
-:      007707 g24_ackpayload_parse:
-0x2dd6 007708 call g24_read_len_pid_crc 
-0x2dd7 007709 add regc ,offset_24g_rxdata_length ,rega 
-0x2dd8 007710 ifetch 1 ,rega 
-0x2dd9 007712 rtn blank 
-0x2dda 007713 iforce loopcnt 
-0x2ddb 007714 add regc ,offset_24g_rxbuf_add2 ,contr 
-0x2ddc 007716 add regc ,offset_24g_rxpayload ,contw 
-0x2ddd 007718 branch memcpy 
-:      007721 g24_read_len_pid_crc:
-0x2dde 007723 call g24_fetch_mem_rxbuf_add1 
-0x2ddf 007725 rshift3 pdata ,pdata 
-0x2de0 007726 add regc ,offset_24g_rxdata_length ,contw 
-0x2de1 007727 istore 1 ,contw 
-0x2de2 007730 increase 1 ,pdata 
-0x2de3 007731 add regc ,offset_24g_rxbuf_add1 ,contr 
-0x2de4 007733 iadd contr ,contr 
-0x2de5 007734 ifetch 3 ,contr 
-0x2de6 007735 add regc ,offset_24g_sta_crc ,contw 
-0x2de7 007736 istore 3 ,contw 
-0x2de8 007739 call g24_fetch_mem_rxbuf_add1 
-0x2de9 007741 rshift pdata ,pdata 
-0x2dea 007742 and pdata ,0x03 ,pdata 
-0x2deb 007743 add regc ,offset_24g_sta_pid ,contw 
-0x2dec 007744 istore 1 ,contw 
-0x2ded 007746 rtn 
-:      007748 g24_prep:
-0x2dee 007749 disable enable_crc 
-0x2def 007750 disable enable_white 
-0x2df0 007751 setarg 0x555555 
-0x2df1 007752 iforce crc24_init 
-0x2df2 007753 rtn 
-:      007755 g24_set_freq_tx:
-0x2df3 007756 call set_sync_on 
-0x2df4 007757 add regc ,offset_24g_ch ,rega 
-0x2df5 007758 ifetcht 1 ,rega 
-0x2df6 007760 branch set_freq_tx 
-:      007762 g24_transmit:
-0x2df7 007763 call g24_prep 
-0x2df8 007764 call g24_set_freq_tx 
-0x2df9 007765 set1 txgfsk ,radio_ctrl 
-0x2dfa 007766 enable encode_fec0 
-0x2dfb 007767 enable is_tx 
-0x2dfc 007768 disable is_rx 
-0x2dfd 007769 call le_enable 
-0x2dfe 007770 call g24_fetch_mem_addr 
-0x2dff 007772 iforce access 
-0x2e00 007773 inject mod ,32 
-0x2e01 007774 enable enable_crc 
-0x2e02 007775 add regc ,offset_24g_txlen ,rega 
-0x2e03 007776 ifetch 1 ,rega 
-0x2e04 007778 iforce loopcnt 
-0x2e05 007779 add regc ,offset_24g_txpayload ,contr 
-:      007781 g24tr_loop:
-0x2e06 007782 ifetch 1 ,contr 
-0x2e07 007783 inject mod ,8 
-0x2e08 007784 loop g24tr_loop 
-0x2e09 007785 enable enable_parity 
-0x2e0a 007786 inject mod ,24 
-0x2e0b 007787 disable enable_parity 
-0x2e0c 007788 until null ,tx_clear 
-0x2e0d 007789 bpatch patch16_7 ,mem_patch16 
-0x2e0e 007790 nop 100 
-0x2e0f 007791 disable encode_fec0 
-0x2e10 007792 rtn 
-:      007794 g24_receive_packet:
-0x2e11 007795 disable user3 
-0x2e12 007796 force 0 ,radio_ctrl 
-0x2e13 007797 add regc ,offset_24g_ch ,rega 
-0x2e14 007798 ifetcht 1 ,rega 
-0x2e15 007800 call set_freq_rx 
-0x2e16 007801 call rf_rx_enable 
-:      007802 g24_receive_rxon:
-0x2e17 007803 call g24_prep 
-0x2e18 007804 enable decode_fec0 
-0x2e19 007805 enable is_rx 
-0x2e1a 007806 disable is_tx 
-0x2e1b 007807 call le_enable 
-0x2e1c 007808 call g24_fetch_mem_addr 
-0x2e1d 007810 iforce access 
-0x2e1e 007811 enable swfine 
-0x2e1f 007812 add regc ,offset_24g_rx_window ,rega 
-0x2e20 007813 ifetch 2 ,rega 
-0x2e21 007815 iforce stop_watch 
-0x2e22 007816 correlate null ,timeout 
-0x2e23 007817 nbranch g24_sync_timeout ,sync 
-0x2e24 007818 enable enable_crc 
-0x2e25 007819 parse demod ,bucket ,8 
-0x2e26 007820 rshift3 pwindow ,pdata 
-0x2e27 007821 add regc ,offset_24g_rxbuf ,contw 
-0x2e28 007822 istore 1 ,contw 
-0x2e29 007824 add regc ,offset_24g_mode ,rega 
-0x2e2a 007825 ifetch 1 ,rega 
-0x2e2b 007827 beq rx_24g ,g24_receive_skip 
-0x2e2c 007828 bpatch patch17_0 ,mem_patch17 
-0x2e2d 007829 add regc ,offset_24g_rxbuf ,rega 
-0x2e2e 007830 ifetch 1 ,rega 
-0x2e2f 007832 add regc ,offset_24g_data_type ,rega 
-0x2e30 007833 ifetcht 1 ,rega 
-0x2e31 007835 icompare bits_data ,temp 
-0x2e32 007836 nbranch g24_end_of_packet ,true 
-:      007837 g24_receive_skip:
-0x2e33 007838 parse demod ,bucket ,8 
-0x2e34 007839 rshift3 pwindow ,pdata 
-0x2e35 007840 istore 1 ,contw 
-0x2e36 007841 rshift3 pdata ,pdata 
-0x2e37 007842 and pdata ,0x1f ,loopcnt 
-0x2e38 007843 branch g24rx_nopayload ,zero 
-:      007844 g24rx_loop:
-0x2e39 007845 parse demod ,bucket ,8 
-0x2e3a 007846 rshift3 pwindow ,pdata 
-0x2e3b 007847 istore 1 ,contw 
-0x2e3c 007848 loop g24rx_loop 
-:      007849 g24rx_nopayload:
-0x2e3d 007850 parse demod ,bucket ,24 
-0x2e3e 007851 rshift32 pdata ,pdata 
-0x2e3f 007852 rshift16 pdata ,pdata 
-0x2e40 007853 istore 3 ,contw 
-0x2e41 007854 branch g24_end_of_packet ,crc_failed 
-0x2e42 007855 enable user3 
-0x2e43 007856 disable decode_fec0 
-0x2e44 007857 rtn 
-:      007860 g24_end_of_packet:
-0x2e45 007861 disable encode_fec0 
-0x2e46 007862 disable decode_fec0 
-0x2e47 007863 disable enable_crc 
-0x2e48 007864 disable enable_white 
-0x2e49 007865 branch shutdown_radio ,is_rx 
-0x2e4a 007866 until null ,tx_clear 
-0x2e4b 007867 nop 100 
-0x2e4c 007868 branch shutdown_radio 
-:      007870 g24_sync_timeout:
-0x2e4d 007871 call rssi_noise 
-0x2e4e 007872 branch g24_end_of_packet 
-:      007874 rssi_noise:
-0x2e4f 007875 call save_rssi 
-0x2e50 007876 rtn blank 
-0x2e51 007877 add regc ,offset_rssi_noise_index ,rega 
-0x2e52 007878 ifetcht 1 ,rega 
-0x2e53 007880 arg mem_rssi_noise_buffer ,rega 
-0x2e54 007882 call rssi_noise_store 
-0x2e55 007883 add regc ,offset_rssi_noise_index ,contw 
-:      007885 g24_contw_istoret_1byte:
-0x2e56 007886 istoret 1 ,contw 
-0x2e57 007887 rtn 
-:      007889 rssi_noise_store:
-0x2e58 007890 arg rssi_buf_len_noise ,regb 
-0x2e59 007891 branch rssi_store 
-:      007909 rssi_store:
-0x2e5a 007910 copy rega ,pdata 
-0x2e5b 007911 iadd temp ,contw 
-0x2e5c 007912 fetch 1 ,mem_rssi 
-0x2e5d 007913 istore 1 ,contw 
-0x2e5e 007914 increase 1 ,temp 
-0x2e5f 007915 copy regb ,pdata 
-0x2e60 007916 iand_into temp 
-0x2e61 007917 rtn 
-:      007919 rssi_average:
-0x2e62 007920 arg 0 ,temp 
-0x2e63 007921 copy rega ,contr 
-:      007922 rssi_average_loop:
-0x2e64 007923 ifetch 1 ,contr 
-0x2e65 007924 iadd temp ,temp 
-0x2e66 007925 loop rssi_average_loop 
-0x2e67 007926 rshift8 temp ,temp 
-0x2e68 007927 rtn 
-:      007929 g24_power_ctrl_init:
-0x2e69 007930 call g24_head_ptr2regc 
-0x2e6a 007931 call g24_power_ctrl_incrs_level1 
-0x2e6b 007932 setarg 1 
-0x2e6c 007933 call g24_store_mem_power_ctrl_level 
-:      007935 g24_power_ctrl_reinit:
-0x2e6d 007936 setarg 0 
-0x2e6e 007937 call g24_store_mem_power_ctrl_pac 
-0x2e6f 007939 istore 1 ,contw 
-0x2e70 007941 rtn 
-:      007943 g24_power_ctrl_pac_incrs:
-0x2e71 007944 call g24_fetch_mem_power_ctrl_pac 
-0x2e72 007946 increase 1 ,pdata 
-:      007947 g24_store_mem_power_ctrl_pac:
-0x2e73 007949 add regc ,offset_power_ctrl_packet_cnt ,contw 
-0x2e74 007950 branch g24_contw_istore_1byte 
-:      007952 g24_power_ctrl_ack_incrs:
-0x2e75 007955 add regc ,offset_power_ctrl_ack_cnt ,rega 
-0x2e76 007956 ifetch 1 ,rega 
-0x2e77 007957 increase 1 ,pdata 
-0x2e78 007958 add regc ,offset_power_ctrl_ack_cnt ,contw 
-0x2e79 007959 branch g24_contw_istore_1byte 
-:      007961 g24_power_ctrl:
-0x2e7a 007962 bpatch patch17_1 ,mem_patch17 
-0x2e7b 007963 call g24_fetch_mem_power_ctrl_pac 
-0x2e7c 007965 sub pdata ,power_ctrl_max_packet_cnt ,null 
-0x2e7d 007966 rtn positive 
-0x2e7e 007967 add regc ,offset_power_ctrl_ack_cnt ,rega 
-0x2e7f 007968 ifetcht 1 ,rega 
-0x2e80 007970 isub temp ,temp 
-0x2e81 007971 call g24_power_ctrl_reinit 
-0x2e82 007972 setarg offset_power_ctrl_threshold_up 
-0x2e83 007973 iadd regc ,rega 
-0x2e84 007974 ifetch 1 ,rega 
-0x2e85 007976 isub temp ,null 
-0x2e86 007977 nbranch g24_power_ctrl_incrs ,positive 
-0x2e87 007978 setarg offset_power_ctrl_threshold_down 
-0x2e88 007979 iadd regc ,rega 
-0x2e89 007980 ifetch 1 ,rega 
-0x2e8a 007982 isub temp ,null 
-0x2e8b 007983 branch g24_power_ctrl_decrs ,positive 
-0x2e8c 007984 rtn 
-:      007986 g24_power_ctrl_incrs:
-0x2e8d 007987 add regc ,offset_power_ctrl_level ,rega 
-0x2e8e 007988 ifetch 1 ,rega 
-0x2e8f 007990 beq 2 ,g24_power_ctrl_incrs_level2 
-0x2e90 007991 increase 1 ,pdata 
-0x2e91 007992 call g24_store_mem_power_ctrl_level 
-0x2e92 007994 beq 1 ,g24_power_ctrl_incrs_level1 
-:      007995 g24_power_ctrl_incrs_level2:
-0x2e93 007996 setarg power_ctrl_losspac_thresh_up2 
-0x2e94 007997 call g24_store_mem_power_ctrl_threshold_up 
-0x2e95 007999 setarg power_ctrl_losspac_thresh_down2 
-0x2e96 008000 call g24_store_mem_power_ctrl_threshold_down 
-0x2e97 008003 add regc ,offset_power_ctrl_txpwr_level2 ,rega 
-0x2e98 008005 branch g24_ifetch_rega_store_mem_txpower 
-:      008007 g24_power_ctrl_decrs:
-0x2e99 008008 add regc ,offset_power_ctrl_level ,rega 
-0x2e9a 008009 ifetch 1 ,rega 
-0x2e9b 008011 beq 0 ,g24_power_ctrl_decrs_level0 
-0x2e9c 008012 increase -1 ,pdata 
-0x2e9d 008013 call g24_store_mem_power_ctrl_level 
-0x2e9e 008015 beq 0 ,g24_power_ctrl_decrs_level0 
-:      008016 g24_power_ctrl_decrs_level1:
-:      008019 g24_power_ctrl_incrs_level1:
-0x2e9f 008020 setarg power_ctrl_losspac_thresh_up1 
-0x2ea0 008021 call g24_store_mem_power_ctrl_threshold_up 
-0x2ea1 008023 setarg power_ctrl_losspac_thresh_down1 
-0x2ea2 008024 call g24_store_mem_power_ctrl_threshold_down 
-0x2ea3 008027 setarg offset_power_ctrl_txpwr_level1 
-:      008028 g24_iadd_offset_mem_txpower:
-0x2ea4 008029 iadd regc ,rega 
-:      008030 g24_ifetch_rega_store_mem_txpower:
-0x2ea5 008031 ifetch 1 ,rega 
-0x2ea6 008033 branch g24_store_mem_txpower 
-:      008035 g24_power_ctrl_decrs_level0:
-0x2ea7 008038 setarg power_ctrl_losspac_thresh_up0 
-0x2ea8 008039 call g24_store_mem_power_ctrl_threshold_up 
-0x2ea9 008041 setarg power_ctrl_losspac_thresh_down0 
-0x2eaa 008042 call g24_store_mem_power_ctrl_threshold_down 
-0x2eab 008045 setarg offset_power_ctrl_txpwr_level0 
-0x2eac 008047 branch g24_iadd_offset_mem_txpower 
-:      008061 g24_start_pairing_sm1:
-0x2ead 008062 set1 mark_24g ,mark 
-0x2eae 008063 call g24_pair_init 
-:      008064 g24_set_pairing_sm_1:
-0x2eaf 008066 setarg state_24g_pairing_1 
-0x2eb0 008067 branch g24_store_mem_pairing_sm 
-:      008069 g24_pairing_sm:
-0x2eb1 008070 add regc ,offset_24g_ensure ,rega 
-0x2eb2 008071 ifetch 1 ,rega 
-0x2eb3 008073 beq ensure_on_24g ,enable_user 
-0x2eb4 008074 call g24_fetch_mem_pairing_sm 
-0x2eb5 008076 beq state_24g_pairing_1 ,g24_pairing_sm_1 
-0x2eb6 008077 beq state_24g_pairing_2 ,g24_pairing_sm_2 
-0x2eb7 008078 beq state_24g_pairing_3 ,g24_pairing_sm_3 
-0x2eb8 008079 branch assert 
-:      008081 g24_pairing_sm_1:
-0x2eb9 008082 setarg state_24g_pairing_1_waiting_ack 
-0x2eba 008083 call g24_store_mem_pairing_sm 
-0x2ebb 008085 jam 0xaa ,mem_24g_common_temp 
-0x2ebc 008086 branch g24_pairing_sm_common 
-:      008087 g24_pairing_sm_2:
-0x2ebd 008088 setarg state_24g_pairing_2_waiting_ack 
-0x2ebe 008089 call g24_store_mem_pairing_sm 
-0x2ebf 008091 jam 0x55 ,mem_24g_common_temp 
-0x2ec0 008092 branch g24_pairing_sm_common 
-:      008093 g24_pairing_sm_3:
-0x2ec1 008094 setarg state_24g_pairing_3_waiting_ack 
-0x2ec2 008095 call g24_store_mem_pairing_sm 
-0x2ec3 008097 jam 0x22 ,mem_24g_common_temp 
-:      008098 g24_pairing_sm_common:
-0x2ec4 008099 call g24_fetch_mem_data_type 
-0x2ec5 008101 and_into bits_data ,pdata 
-0x2ec6 008102 store 1 ,mem_24g_common_temp + 1 
-0x2ec7 008103 call g24_fetch_mem_device_addr 
-0x2ec8 008105 store 4 ,mem_24g_common_temp + 2 
-:      008106 g24_put_pairing_data_in_buff:
-0x2ec9 008107 jam 0 ,mem_24g_common_temp + 6 
-0x2eca 008108 arg mem_24g_common_temp ,rega 
-0x2ecb 008109 arg 7 ,temp 
-0x2ecc 008110 call g24_put_data_in_buff 
-0x2ecd 008111 call g24_transmit_prep 
-0x2ece 008112 call g24_txdata_enable_tx 
-0x2ecf 008113 branch enable_user 
-:      008115 g24_paring_mode:
-0x2ed0 008116 call g24_fetch_mem_pairing_sm 
-0x2ed1 008118 rtneq state_24g_pairing_success 
-0x2ed2 008119 beq state_24g_pairing_1_waiting_ack ,g24_pairing_sm_1_waiting_ack 
-0x2ed3 008120 beq state_24g_pairing_2_waiting_ack ,g24_pairing_sm_2_waiting_ack 
-0x2ed4 008121 beq state_24g_pairing_3_waiting_ack ,g24_pairing_sm_3_waiting_ack 
-0x2ed5 008122 rtn 
-:      008124 g24_pairing_sm_1_waiting_ack:
-0x2ed6 008125 setarg state_24g_pairing_2 
-0x2ed7 008126 call g24_store_mem_pairing_sm 
-0x2ed8 008128 branch g24_transmit_abandon 
-:      008129 g24_pairing_sm_2_waiting_ack:
-0x2ed9 008130 setarg state_24g_pairing_3 
-0x2eda 008131 call g24_store_mem_pairing_sm 
-0x2edb 008133 branch g24_transmit_abandon 
-:      008134 g24_pairing_sm_3_waiting_ack:
-0x2edc 008135 setarg state_24g_pairing_success 
-0x2edd 008136 call g24_store_mem_pairing_sm 
-0x2ede 008138 jam bt_evt_24g_pairing_complete ,mem_fifo_temp 
-0x2edf 008139 call ui_ipc_send_event 
-0x2ee0 008140 add regc ,offset_24g_rxpayload_add2 ,rega 
-0x2ee1 008141 ifetch 4 ,rega 
-0x2ee2 008143 call g24_store_mem_addr 
-0x2ee3 008145 branch g24_transmit_abandon 
-:      008147 g24_auto_pair_start:
-0x2ee4 008148 set0 mark_24g ,mark 
-0x2ee5 008149 call g24_auto_pair_set_device_info 
-0x2ee6 008150 call g24_tx_attemp_data_prep 
-:      008151 g24_auto_pair_restart:
-0x2ee7 008152 call g24_set0_mem_check_dongle_times 
-:      008153 g24_auto_pair_start_loop:
-0x2ee8 008154 nop 2000 
-0x2ee9 008155 call g24_fetch_mem_check_dongle_times 
-0x2eea 008156 beq 0xff ,g24_stop_24g_mode 
-0x2eeb 008157 call g24_transmit_receive_ack 
-0x2eec 008158 nbranch g24_auto_pair_retry ,sync 
-0x2eed 008159 nbranch g24_auto_pair_retry ,user3 
-0x2eee 008160 call g24_ackpayload_parse 
-0x2eef 008161 call g24_head_ptr2regc 
-0x2ef0 008162 add regc ,offset_24g_paring_addr ,rega 
-0x2ef1 008163 ifetcht 4 ,rega 
-0x2ef2 008164 call g24_fetch_mem_addr_isub_temp 
-0x2ef3 008165 branch g24_start_pairing_sm1 ,zero 
-0x2ef4 008166 call g24_head_ptr2regc 
-0x2ef5 008167 add regc ,offset_24g_rxpayload_add2 ,rega 
-0x2ef6 008168 ifetch 4 ,rega 
-0x2ef7 008169 beq 0 ,g24_auto_pair_restart 
-0x2ef8 008170 call g24_store_mem_addr 
-0x2ef9 008171 branch g24_tx_attemp_dongle_succ 
-:      008173 g24_auto_pair_retry:
-0x2efa 008174 call g24_fetch_mem_check_dongle_times 
-0x2efb 008175 increase 1 ,pdata 
-0x2efc 008176 call g24_store_mem_check_dongle_times 
-0x2efd 008178 call g24_fetch_mem_auto_paring_switch 
-0x2efe 008179 increase 1 ,pdata 
-0x2eff 008180 and_into 1 ,pdata 
-0x2f00 008181 call g24_store_mem_auto_paring_switch 
-0x2f01 008182 beq 0 ,g24_auto_pair_device_attemp 
-0x2f02 008183 beq 1 ,g24_auto_pair_pair_attemp 
-0x2f03 008184 rtn 
-:      008186 g24_fetch_mem_auto_paring_switch:
-0x2f04 008187 setarg offset_24g_auto_pair_switch 
-0x2f05 008188 branch g24_set_rega_ifetch_1byte 
-:      008189 g24_store_mem_auto_paring_switch:
-0x2f06 008190 arg offset_24g_auto_pair_switch ,rega 
-0x2f07 008191 branch g24_set_contw_with_regb_store_1byte 
-:      008193 g24_auto_pair_set_device_info:
-0x2f08 008194 call g24_store_mem_tx_power 
-0x2f09 008195 call g24_fetch_mem_device_addr 
-0x2f0a 008196 call g24_store_mem_addr 
-0x2f0b 008197 branch g24_ch 
-:      008199 g24_auto_pair_device_attemp:
-0x2f0c 008200 call g24_auto_pair_set_device_info 
-0x2f0d 008201 branch g24_auto_pair_start_loop 
-:      008203 g24_auto_pair_pair_attemp:
-0x2f0e 008204 call g24_pair_init 
-0x2f0f 008205 branch g24_auto_pair_start_loop 
-:      008208 g24_start_24g_mode:
-0x2f10 008209 set0 mark_24g ,mark 
-0x2f11 008210 call g24_ch 
-0x2f12 008211 call g24_fetch_mem_pairing_sm 
-0x2f13 008213 rtnne state_24g_pairing_success 
-0x2f14 008214 call g24_tx_attemp_data_prep 
-0x2f15 008215 call g24_set0_mem_check_dongle_times 
-:      008217 g24_tx_attemp_dongle_loop:
-0x2f16 008218 nop 2000 
-0x2f17 008219 call g24_fetch_mem_check_dongle_times 
-0x2f18 008221 beq 0xff ,g24_stop_24g_mode 
-0x2f19 008222 call g24_transmit_receive_ack 
-0x2f1a 008223 nbranch g24_attemp_txdata_retry ,sync 
-0x2f1b 008224 nbranch g24_attemp_txdata_retry ,user3 
-:      008225 g24_tx_attemp_dongle_succ:
-0x2f1c 008226 set1 mark_24g ,mark 
-0x2f1d 008227 call g24_set0_mem_check_dongle_times 
-0x2f1e 008228 setarg state_24g_pairing_success 
-0x2f1f 008229 call g24_store_mem_pairing_sm 
-:      008231 g24_app_tx_attempt_success:
-0x2f20 008232 jam bt_evt_24g_attempt_success ,mem_fifo_temp 
-0x2f21 008233 branch ui_ipc_send_event 
-:      008235 g24_tx_attemp_data_prep:
-0x2f22 008236 set1 mark_24g_conext ,mark 
-0x2f23 008237 jam 0xff ,mem_24g_common_temp 
-0x2f24 008238 call g24_fetch_mem_data_type 
-0x2f25 008240 call g24_put_data_in_buff_pre 
-0x2f26 008241 branch g24_transmit_prep 
-:      008243 g24_attemp_txdata_retry:
-0x2f27 008244 call g24_fetch_mem_check_dongle_times 
-0x2f28 008246 increase 1 ,pdata 
-0x2f29 008247 call g24_store_mem_check_dongle_times 
-0x2f2a 008249 call g24_ch 
-0x2f2b 008250 branch g24_tx_attemp_dongle_loop 
-:      008252 g24_check_51cmd_start_24g:
-0x2f2c 008253 call g24_store_mem_tx_power 
-0x2f2d 008256 setarg state_24g_pairing_success 
-0x2f2e 008257 call g24_store_mem_pairing_sm 
-0x2f2f 008259 branch g24_start_24g_mode 
-:      008268 dongle_init:
-0x2f30 008269 bpatch patch17_2 ,mem_patch17 
-0x2f31 008270 call g24_head_ptr2regc 
-0x2f32 008271 setarg dongle_rxdata_type1 
-0x2f33 008272 add regc ,offset_24g_cb_rxdata_type1 ,contw 
-0x2f34 008273 istore 2 ,contw 
-0x2f35 008275 call g24_receive_init 
-0x2f36 008276 call usb_init 
-0x2f37 008277 call g24_fetch_mem_pair_mode 
-0x2f38 008279 bpatch patch17_3 ,mem_patch17 
-0x2f39 008280 beq 0x00 ,dongle_auto_bind 
-0x2f3a 008281 beq 0x01 ,dongle_pc_bind 
-0x2f3b 008282 beq 0x0f ,dongle_all_powerful 
-0x2f3c 008283 branch assert 
-:      008285 g24_receive_init:
-0x2f3d 008286 call g24_store_mem_tx_power_temp 
-0x2f3e 008287 arg 0x80 ,loopcnt 
-0x2f3f 008288 arg mem_rssi_noise_buffer ,contw 
-0x2f40 008289 branch memset0 
-:      008291 dongle_all_powerful:
-0x2f41 008292 call dongle_check_mode 
-:      008293 dongle_all_powerful_loop:
-0x2f42 008294 call g24_dongle_work_mode 
-0x2f43 008295 call usb_isr 
-0x2f44 008296 branch dongle_all_powerful_loop 
-:      008298 dongle_pc_bind:
-0x2f45 008299 bpatch patch17_4 ,mem_patch17 
-0x2f46 008300 call dongle_check_mode 
-:      008301 dongle_pc_bind_loop:
-0x2f47 008302 call g24_dongle_work_mode 
-0x2f48 008303 call g24_dongle_bind_mode 
-0x2f49 008304 call usb_isr 
-0x2f4a 008305 call dongle_usb_dispatch 
-0x2f4b 008306 branch dongle_pc_bind_loop 
-:      008308 dongle_check_mode:
-0x2f4c 008312 call g24_set_work_mem_dongle_work_mode 
-0x2f4d 008313 call g24_set0_mem_dongle_mode_init 
-0x2f4e 008314 branch g24_set0_mem_ackpayload_enable 
-:      008316 g24_dongle_work_mode:
-0x2f4f 008317 call g24_fetch_mem_dongle_work_mode 
-0x2f50 008319 rtnne dongle_work 
-:      008320 g24_dongle_work_mode_start:
-0x2f51 008321 call g24_dongle_work_init 
-0x2f52 008322 call g24_ch_process 
-0x2f53 008323 call g24_receive_packet_start 
-0x2f54 008324 branch g24_blank_data_process 
-:      008326 g24_dongle_work_init:
-0x2f55 008327 call g24_fetch_mem_dongle_mode_init 
-0x2f56 008329 rtnbit1 dongle_work 
-0x2f57 008330 set1 dongle_work ,pdata 
-0x2f58 008331 call g24_store_mem_dongle_mode_init 
-0x2f59 008333 call g24_store_mem_tx_power 
-0x2f5a 008336 call g24_set0_mem_ackpayload_enable 
-0x2f5b 008338 jam 0 ,mem_usb_tx_enable 
-0x2f5c 008339 call g24_set1_mem_abort_pac 
-0x2f5d 008341 call g24_dongle_init 
-:      008342 g24_rx_interrupt_clear:
-0x2f5e 008343 add regc ,offset_24g_rxbuf ,contw 
-0x2f5f 008345 arg 66 ,loopcnt 
-0x2f60 008346 branch clear_mem 
-:      008348 g24_dongle_init:
-0x2f61 008349 call g24_set0_mem_pid 
-0x2f62 008351 call g24_fetch_mem_rx_addr 
-0x2f63 008353 call g24_store_mem_addr 
-0x2f64 008355 branch g24_ch 
-:      008357 g24_ch_process:
-0x2f65 008358 bpatch patch17_5 ,mem_patch17 
-0x2f66 008359 call g24_fetch_mem_abort_pac 
-0x2f67 008361 beq 1 ,g24_noise_rssi 
-0x2f68 008362 call g24_fetch_mem_hop_pac 
-0x2f69 008364 beq 1 ,g24_ch 
-0x2f6a 008365 setarg offset_24g_hop_btclk 
-0x2f6b 008366 iadd regc ,rega 
-0x2f6c 008367 ifetcht 4 ,rega 
-0x2f6d 008369 copy clkn_bt ,pdata 
-0x2f6e 008370 isub temp ,null 
-0x2f6f 008371 ncall g24_timer_timeout ,positive 
-0x2f70 008372 copy pdata ,regb 
-0x2f71 008373 setarg offset_24g_hop_btclk 
-0x2f72 008374 iadd regc ,rega 
-0x2f73 008375 ifetch 4 ,rega 
-0x2f74 008376 copy pdata ,temp 
-0x2f75 008378 setarg offset_24g_hop_interval 
-0x2f76 008379 iadd regc ,rega 
-0x2f77 008380 copy temp ,pdata 
-0x2f78 008381 ifetcht 1 ,rega 
-0x2f79 008383 iadd temp ,temp 
-0x2f7a 008384 copy regb ,pdata 
-0x2f7b 008385 isub temp ,null 
-0x2f7c 008386 nrtn positive 
-0x2f7d 008387 set0 28 ,pdata 
-0x2f7e 008388 setarg offset_24g_hop_btclk 
-0x2f7f 008389 iadd regc ,contw 
-0x2f80 008390 istore 4 ,contw 
-:      008392 g24_ch_update:
-0x2f81 008393 call g24_ch 
-0x2f82 008394 call g24_fetch_mem_rf_laststa 
-0x2f83 008396 increase 1 ,pdata 
-0x2f84 008397 call g24_store_mem_rf_laststa 
-0x2f85 008399 rtnne 2 
-0x2f86 008400 call g24_set0_mem_rf_laststa 
-0x2f87 008404 branch g24_set1_mem_abort_pac 
-:      008406 g24_ch_timer_reinit:
-0x2f88 008407 copy clkn_bt ,pdata 
-0x2f89 008408 arg offset_24g_hop_btclk ,rega 
-0x2f8a 008409 call g24_set_contw_with_temp 
-0x2f8b 008410 istore 4 ,contw 
-0x2f8c 008414 branch g24_set0_mem_rf_laststa 
-:      008416 g24_noise_rssi:
-0x2f8d 008417 arg mem_rssi_noise_buffer ,rega 
-0x2f8e 008418 call g24_noise_rssi_average 
-0x2f8f 008419 add regc ,offset_rssi_noise_avg ,contw 
-0x2f90 008420 istoret 1 ,contw 
-0x2f91 008422 sub temp ,rssi_thresh_noise ,null 
-0x2f92 008423 nrtn positive 
-0x2f93 008424 branch g24_ch 
-:      008426 g24_noise_rssi_average:
-0x2f94 008427 arg rssi_buf_len_noise + 1 ,loopcnt 
-0x2f95 008428 branch rssi_average 
-:      008430 g24_blank_data_process:
-0x2f96 008431 call g24_ms_blank_data 
-0x2f97 008432 call g24_kb_blank_data 
-0x2f98 008433 branch g24_kb_mul_blank_data 
-:      008435 g24_ms_blank_data:
-0x2f99 008436 setarg offset_24g_ms_blank_data_enable 
-0x2f9a 008437 call g24_set_rega_ifetch_1byte 
-0x2f9b 008439 rtn blank 
-0x2f9c 008440 arg timer_ms_blank ,queue 
-0x2f9d 008441 call timer_check 
-0x2f9e 008442 nrtn blank 
-0x2f9f 008443 call g24_set0_mem_ms_blank_data_enable 
-:      008445 g24_ms_blank_data_2usb:
-0x2fa0 008446 setarg ms_report_id 
-0x2fa1 008447 store 1 ,mem_usb_mouse_data 
-0x2fa2 008448 setarg 0 
-0x2fa3 008449 istore 7 ,contw 
-0x2fa4 008450 branch g24_data_type1_usbtx_enable 
-:      008452 g24_kb_blank_data:
-0x2fa5 008453 setarg offset_24g_kb_blank_data_enable 
-0x2fa6 008454 call g24_set_rega_ifetch_1byte 
-0x2fa7 008456 rtn blank 
-0x2fa8 008457 arg timer_kb_blank ,queue 
-0x2fa9 008458 call timer_check 
-0x2faa 008459 nrtn blank 
-0x2fab 008460 call g24_set0_mem_kb_blank_data_enable 
-:      008462 g24_kb_blank_data_2usb:
-0x2fac 008463 arg mem_usb_kb_data ,contw 
-0x2fad 008464 arg 2 ,loopcnt 
-0x2fae 008465 call memset0 
-0x2faf 008466 jam kb_normal_report_id ,mem_usb_kb_data 
-0x2fb0 008467 branch g24_kb_data_into_ep1_fifo 
-:      008469 g24_kb_mul_blank_data:
-0x2fb1 008470 setarg offset_24g_kb_mul_blank_data_enable 
-0x2fb2 008471 call g24_set_rega_ifetch_1byte 
-0x2fb3 008473 rtn blank 
-0x2fb4 008474 arg timer_kb_mul_blank ,queue 
-0x2fb5 008475 call timer_check 
-0x2fb6 008476 nrtn blank 
-0x2fb7 008477 call g24_set0_mem_kb_mul_blank_data_enable 
-:      008479 g24_kb_mul_blank_data_2usb:
-0x2fb8 008480 arg mem_usb_kb_multikey ,contw 
-0x2fb9 008481 arg 2 ,loopcnt 
-0x2fba 008482 call memset0 
-0x2fbb 008483 jam kb_multikey_report_id ,mem_usb_kb_multikey 
-0x2fbc 008484 branch g24_kb_mul_data_into_ep2_fifo 
-:      008486 g24_dongle_bind_mode:
-0x2fbd 008487 call g24_fetch_mem_dongle_work_mode 
-0x2fbe 008489 rtnne dongle_bind 
-0x2fbf 008490 call g24_dongle_bind_init 
-0x2fc0 008491 branch g24_dongle_bind_data_process 
-:      008493 g24_dongle_bind_init:
-0x2fc1 008494 call g24_fetch_mem_dongle_mode_init 
-0x2fc2 008496 rtnbit1 dongle_bind 
-0x2fc3 008497 set1 dongle_bind ,pdata 
-0x2fc4 008498 call g24_store_mem_dongle_mode_init 
-0x2fc5 008500 call g24_set1_mem_ackpayload_enable 
-0x2fc6 008502 call g24_pair_init 
-0x2fc7 008503 setarg 0 
-0x2fc8 008504 arg offset_dongle_ms_bind_step ,rega 
-0x2fc9 008505 call g24_set_contw_with_temp 
-0x2fca 008507 branch g24_contw_istore_3byte 
-:      008509 g24_dongle_bind_data_process:
-0x2fcb 008510 call g24_receive_transmit_ack 
-0x2fcc 008511 nbranch g24_rx_interrupt_clear ,user3 
-0x2fcd 008512 add regc ,offset_24g_rxbuf ,contr 
-0x2fce 008513 setarg offset_24g_rxdata_temp 
-0x2fcf 008514 iadd regc ,contw 
-0x2fd0 008515 arg 8 ,loopcnt 
-0x2fd1 008516 call memcpy 
-0x2fd2 008517 setarg offset_24g_rxdata_temp_add2 
-0x2fd3 008518 call g24_set_rega_ifetch_1byte 
-0x2fd4 008519 beq datatype_bind ,g24_dongle_bind_first_step 
-0x2fd5 008520 beq datatype_config ,g24_dongle_bind_second_step 
-0x2fd6 008521 beq datatype_ok ,g24_dongle_bind_third_step 
-0x2fd7 008522 beq 0xff ,g24_data_attemp 
-0x2fd8 008523 branch g24_rx_interrupt_clear 
-:      008525 g24_dongle_bind_first_step:
-0x2fd9 008526 call g24_fetch_mem_rxdata_temp_add3_1byte 
-0x2fda 008527 beq bind_mouse ,g24_dongle_bind_first_step_mouse 
-0x2fdb 008528 beq bind_keyboard ,g24_dongle_bind_first_step_keyboard 
-0x2fdc 008529 rtn 
-:      008530 g24_dongle_bind_first_step_mouse:
-0x2fdd 008531 setarg 1 
-0x2fde 008532 call g24_store_mem_ms_bind_step 
-:      008534 g24_dongle_bind_ms_payload_cfg:
-0x2fdf 008535 setarg datatype_mouse 
-0x2fe0 008536 call g24_store_mem_bind_payload 
-:      008538 g24_dongle_bind_payload_cfg:
-0x2fe1 008539 setarg 0x80 
-0x2fe2 008540 arg offset_24g_bind_payload_add1 ,rega 
-0x2fe3 008541 call g24_set_contw_with_regb_store_1byte 
-0x2fe4 008543 call g24_fetch_mem_rx_addr 
-0x2fe5 008545 arg offset_24g_bind_payload_add2 ,rega 
-0x2fe6 008546 call g24_set_contw_with_temp 
-0x2fe7 008548 branch g24_contw_istore_4byte 
-:      008550 g24_dongle_bind_first_step_keyboard:
-0x2fe8 008551 setarg 1 
-0x2fe9 008552 call g24_store_mem_kb_bind_step 
-:      008554 g24_dongle_bind_kb_payload_cfg:
-0x2fea 008555 setarg datatype_keyboard 
-0x2feb 008556 call g24_store_mem_bind_payload 
-0x2fec 008558 branch g24_dongle_bind_payload_cfg 
-:      008560 g24_dongle_bind_second_step:
-0x2fed 008561 call g24_fetch_mem_rxdata_temp_add3_1byte 
-0x2fee 008562 beq bind_mouse ,g24_dongle_bind_second_step_mouse 
-0x2fef 008563 beq bind_keyboard ,g24_dongle_bind_second_step_keyboard 
-0x2ff0 008564 rtn 
-:      008565 g24_dongle_bind_second_step_mouse:
-0x2ff1 008566 call g24_dongle_bind_ms_payload_cfg 
-0x2ff2 008567 setarg offset_dongle_ms_bind_step 
-0x2ff3 008568 call g24_set_rega_ifetch_1byte 
-0x2ff4 008570 beq 1 ,g24_dongle_ms_bind_step_set2 
-0x2ff5 008571 rtn 
-:      008572 g24_dongle_ms_bind_step_set2:
-0x2ff6 008573 setarg 2 
-:      008575 g24_store_mem_ms_bind_step:
-0x2ff7 008576 arg offset_dongle_ms_bind_step ,rega 
-0x2ff8 008577 branch g24_set_contw_with_regb_store_1byte 
-:      008579 g24_dongle_bind_second_step_keyboard:
-0x2ff9 008580 call g24_dongle_bind_kb_payload_cfg 
-0x2ffa 008581 setarg offset_dongle_kb_bind_step 
-0x2ffb 008582 call g24_set_rega_ifetch_1byte 
-0x2ffc 008584 beq 1 ,g24_dongle_kb_bind_step_set2 
-0x2ffd 008585 rtn 
-:      008586 g24_dongle_kb_bind_step_set2:
-0x2ffe 008587 setarg 2 
-:      008589 g24_store_mem_kb_bind_step:
-0x2fff 008590 arg offset_dongle_kb_bind_step ,rega 
-0x3000 008591 branch g24_set_contw_with_regb_store_1byte 
-:      008593 g24_dongle_bind_third_step:
-0x3001 008594 call g24_fetch_mem_rxdata_temp_add3_1byte 
-0x3002 008595 beq bind_mouse ,g24_dongle_bind_third_step_mouse 
-0x3003 008596 beq bind_keyboard ,g24_dongle_bind_third_step_keyboard 
-0x3004 008597 rtn 
-:      008598 g24_dongle_bind_third_step_mouse:
-0x3005 008599 setarg offset_dongle_ms_bind_step 
-0x3006 008600 call g24_set_rega_ifetch_1byte 
-0x3007 008602 beq 2 ,g24_dongle_ms_bind_step_success 
-0x3008 008603 rtn 
-:      008604 g24_dongle_ms_bind_step_success:
-0x3009 008605 call g24_fetch_mem_bind_device_status 
-0x300a 008607 or_into 0x01 ,pdata 
-0x300b 008608 call g24_store_mem_bind_device_status 
-:      008610 g24_dongle_bind_exit:
-0x300c 008611 setarg 0 
-0x300d 008612 setarg offset_dongle_ms_bind_step 
-0x300e 008613 iadd regc ,contw 
-0x300f 008614 istore 2 ,contw 
-0x3010 008615 branch g24_rx_interrupt_clear 
-:      008617 g24_dongle_bind_third_step_keyboard:
-0x3011 008618 setarg offset_dongle_kb_bind_step 
-0x3012 008619 call g24_set_rega_ifetch_1byte 
-0x3013 008621 bne 0 ,g24_dongle_kb_bind_step_success 
-0x3014 008622 rtn 
-:      008623 g24_dongle_kb_bind_step_success:
-0x3015 008624 call g24_fetch_mem_bind_device_status 
-0x3016 008626 or_into 0x02 ,pdata 
-0x3017 008627 call g24_store_mem_bind_device_status 
-0x3018 008629 branch g24_dongle_bind_exit 
-:      008632 dongle_usb_dispatch:
-0x3019 008633 fetch 1 ,mem_usb0_get_set_report 
-0x301a 008634 rtn blank 
-0x301b 008635 jam 0 ,mem_usb0_get_set_report 
-0x301c 008636 fetch 2 ,mem_usb_setup_bvalue_temp 
-0x301d 008637 arg pc_set_report ,temp 
-0x301e 008638 isub temp ,null 
-0x301f 008639 nrtn zero 
-0x3020 008641 fetch 1 ,mem_usb0_set_report_data 
-0x3021 008642 rtnne pc_report_id 
-0x3022 008643 fetch 1 ,mem_usb0_set_report_data + 1 
-0x3023 008644 bpatch patch17_6 ,mem_patch17 
-0x3024 008645 beq command_mode ,dongle_dispose_cmd_mode 
-0x3025 008646 beq command_bind ,dongle_dispose_cmd_bind 
-0x3026 008647 beq command_current_project ,dongle_dispose_cmd_current_project 
-0x3027 008648 beq command_current_mode ,dongle_dispose_cmd_current_mode 
-0x3028 008649 beq command_current_fw_version ,dongle_dispose_cmd_current_fw_version 
-0x3029 008650 beq command_user_defined ,dongle_dispose_cmd_user_defined 
-:      008651 usb0_data_ready_report_set0:
-0x302a 008652 jam 0 ,mem_usb0_data_ready_report 
-0x302b 008653 rtn 
-:      008654 dongle_dispose_cmd_bind:
-0x302c 008655 fetch 1 ,mem_usb0_set_report_data + 2 
-0x302d 008656 beq com_bind_get ,dongle_dispose_cmd_get_bind 
-0x302e 008657 beq com_bind_exit ,dongle_dispose_cmd_exit_bind 
-0x302f 008658 beq com_read_mode ,dongle_dispose_cmd_read_mode 
-0x3030 008659 branch usb0_data_ready_report_set0 
-:      008660 dongle_dispose_cmd_get_bind:
-0x3031 008661 call g24_fetch_mem_bind_device_status 
-0x3032 008663 store 1 ,mem_usb0_get_report_data + 1 
-0x3033 008664 branch usb0_data_ready_report_set1 
-:      008665 dongle_dispose_cmd_exit_bind:
-0x3034 008666 call g24_set_work_mem_dongle_work_mode 
-0x3035 008668 call g24_set0_mem_dongle_mode_init 
-0x3036 008670 call g24_fetch_mem_bind_device_status 
-0x3037 008672 store 1 ,mem_usb0_get_report_data + 1 
-0x3038 008673 branch usb0_data_ready_report_set1 
-:      008675 dongle_dispose_cmd_read_mode:
-:      008676 dongle_dispose_in_bind_mode:
-0x3039 008677 jam command_bind ,mem_usb0_get_report_data + 1 
-0x303a 008678 branch usb0_data_ready_report_set1 
-:      008680 dongle_dispose_cmd_mode:
-0x303b 008681 fetch 1 ,mem_usb0_set_report_data + 2 
-0x303c 008682 beq com_mode_bind ,dongle_enter_bind_mode 
-0x303d 008684 branch usb0_data_ready_report_set0 
-:      008685 dongle_enter_bind_mode:
-0x303e 008688 call g24_bind_mode_enable 
-:      008689 usb0_data_ready_report_set1:
-0x303f 008690 jam 1 ,mem_usb0_data_ready_report 
-0x3040 008691 rtn 
-:      008696 dongle_dispose_cmd_current_project:
-0x3041 008697 jam product_id ,mem_usb0_get_report_data + 1 
-0x3042 008698 branch usb0_data_ready_report_set1 
-:      008700 dongle_dispose_cmd_current_mode:
-0x3043 008701 call g24_fetch_mem_dongle_work_mode 
-0x3044 008703 beq dongle_work ,dongle_dispose_in_work_mode 
-0x3045 008704 beq dongle_bind ,dongle_dispose_in_bind_mode 
-0x3046 008706 rtn 
-:      008707 dongle_dispose_in_work_mode:
-0x3047 008708 jam command_mode ,mem_usb0_get_report_data + 1 
-0x3048 008709 branch usb0_data_ready_report_set1 
-:      008714 dongle_dispose_cmd_current_fw_version:
-0x3049 008715 jam fw_version0 ,mem_usb0_get_report_data + 1 
-0x304a 008716 jam fw_version1 ,mem_usb0_get_report_data + 2 
-0x304b 008717 jam fw_version2 ,mem_usb0_get_report_data + 3 
-0x304c 008718 branch usb0_data_ready_report_set1 
-:      008720 dongle_dispose_cmd_user_defined:
-0x304d 008722 call g24_set1_mem_ackpayload_enable 
-0x304e 008723 fetch 1 ,mem_usb0_set_report_data + 2 
-0x304f 008724 increase 2 ,pdata 
-0x3050 008725 copy pdata ,loopcnt 
-0x3051 008726 arg mem_usb0_set_report_data ,contr 
-0x3052 008727 setarg offset_24g_ackpayload 
-0x3053 008728 iadd regc ,contw 
-0x3054 008729 branch memcpy 
-:      008732 dongle_auto_bind:
-0x3055 008733 bpatch patch17_7 ,mem_patch17 
-0x3056 008734 call g24_mode_switch_init 
-:      008735 dongle_auto_bind_loop:
-0x3057 008736 call g24_receive_process 
-0x3058 008737 call usb_isr 
-0x3059 008738 branch dongle_auto_bind_loop 
-:      008740 g24_dongle_work_mode_auto:
-0x305a 008741 call g24_fetch_mem_dongle_work_mode 
-0x305b 008743 rtnne dongle_work 
-0x305c 008744 call g24_dongle_work_mode_start 
-0x305d 008745 branch g24_rx_nodata_process 
-:      008747 g24_dongle_bind_mode_auto:
-0x305e 008748 call g24_fetch_mem_dongle_work_mode 
-0x305f 008750 rtnne dongle_bind 
-0x3060 008751 call g24_dongle_bind_init 
-0x3061 008752 call g24_dongle_bind_data_process 
-0x3062 008753 call g24_fetch_mem_bind_device_status 
-0x3063 008755 rtn blank 
-0x3064 008756 call g24_set0_mem_mode_switch 
-0x3065 008758 call dongle_check_mode 
-0x3066 008759 call g24_enable_nodata_timer 
-:      008760 g24_timer_init:
-0x3067 008761 setarg 0 
-0x3068 008762 add regc ,offset_24g_tx_btclk ,contw 
-0x3069 008764 branch g24_contw_istore_4byte 
-:      008766 g24_timer_check:
-0x306a 008767 call disable_user 
-0x306b 008768 add regc ,offset_24g_tx_btclk ,rega 
-0x306c 008769 ifetcht 4 ,rega 
-0x306d 008771 copy clkn_bt ,pdata 
-0x306e 008772 isub temp ,null 
-0x306f 008773 ncall g24_timer_timeout ,positive 
-0x3070 008774 copy pdata ,regb 
-0x3071 008775 add regc ,offset_24g_tx_btclk ,rega 
-0x3072 008776 ifetch 4 ,rega 
-0x3073 008778 add regc ,offset_24g_interval ,rega 
-0x3074 008779 ifetcht 1 ,rega 
-0x3075 008781 iadd temp ,temp 
-0x3076 008782 copy regb ,pdata 
-0x3077 008783 isub temp ,null 
-0x3078 008784 nrtn positive 
-0x3079 008785 set0 28 ,pdata 
-0x307a 008786 add regc ,offset_24g_tx_btclk ,contw 
-0x307b 008787 istore 4 ,contw 
-0x307c 008789 branch enable_user 
-:      008791 g24_mode_switch_init:
-0x307d 008792 setarg 1 
-0x307e 008793 call g24_store_mem_mode_switch 
-0x307f 008795 call g24_set0_mem_time_slice 
-0x3080 008797 setarg 0xff 
-0x3081 008798 add regc ,offset_24g_interval ,contw 
-0x3082 008799 istore 1 ,contw 
-0x3083 008801 branch g24_timer_init 
-:      008803 g24_mode_switch:
-0x3084 008804 setarg offset_24g_mode_switch 
-0x3085 008805 call g24_set_rega_ifetch_1byte 
-0x3086 008807 rtn blank 
-0x3087 008808 call g24_timer_check 
-0x3088 008809 nrtn user 
-0x3089 008810 call g24_fetch_mem_time_slice 
-0x308a 008812 increase 1 ,pdata 
-0x308b 008813 and_into 1 ,pdata 
-0x308c 008814 call g24_store_mem_time_slice 
-0x308d 008816 beq 0 ,dongle_check_mode 
-0x308e 008817 beq 1 ,g24_bind_mode_enable 
-0x308f 008818 rtn 
-:      008820 g24_bind_mode_enable:
-0x3090 008824 setarg dongle_bind 
-0x3091 008825 call g24_store_mem_dongle_work_mode 
-0x3092 008826 branch g24_set0_mem_dongle_mode_init 
-:      008828 g24_enable_nodata_timer:
-0x3093 008829 setarg 1 
-0x3094 008830 call g24_store_mem_nodata_timer_enable 
-:      008832 g24_enable_nodata_timer_init:
-0x3095 008833 setarg timer_nodata_delay 
-0x3096 008834 arg timer_nodata ,queue 
-0x3097 008835 branch timer_init 
-:      008837 g24_rx_nodata_process:
-0x3098 008838 call g24_fetch_mem_nodata_timer_enable 
-0x3099 008840 rtn blank 
-0x309a 008841 arg timer_nodata ,queue 
-0x309b 008842 call timer_check 
-0x309c 008843 nrtn blank 
-0x309d 008844 call g24_set0_mem_nodata_timer_enable 
-0x309e 008847 setarg dongle_search 
-0x309f 008848 call g24_store_mem_dongle_work_mode 
-0x30a0 008850 call g24_set0_mem_dongle_mode_init 
-0x30a1 008852 branch g24_rx_interrupt_clear 
-:      008854 g24_dongle_search_mode_auto:
-0x30a2 008855 bpatch patch18_0 ,mem_patch18 
-0x30a3 008856 call g24_fetch_mem_dongle_work_mode 
-0x30a4 008858 rtnne dongle_search 
-0x30a5 008859 call g24_dongle_search_mode_init 
-0x30a6 008860 call g24_rx_auto_addr_ch_search 
-0x30a7 008861 call g24_receive_transmit_ack 
-0x30a8 008862 nbranch g24_rx_interrupt_clear ,user3 
-0x30a9 008864 call g24_dongle_search_addr_check 
-0x30aa 008865 call g24_receive_packet_parse ,zero 
-0x30ab 008869 call dongle_check_mode 
-0x30ac 008870 call g24_fetch_mem_dongle_mode_init 
-0x30ad 008872 set1 dongle_work ,pdata 
-0x30ae 008873 call g24_store_mem_dongle_mode_init 
-0x30af 008875 call g24_rx_interrupt_clear 
-0x30b0 008876 call g24_enable_nodata_timer 
-0x30b1 008877 call g24_dongle_search_addr_check 
-0x30b2 008878 branch g24_dg_ch_num_reinit ,zero 
-0x30b3 008879 setarg offset_24g_kb_addr 
-0x30b4 008880 call g24_set_rega_ifetcht_4byte 
-0x30b5 008882 call g24_fetch_mem_addr_isub_temp 
-0x30b6 008883 branch g24_kb_ch_num_reinit ,zero 
-0x30b7 008884 setarg offset_24g_mouse_addr 
-0x30b8 008885 call g24_set_rega_ifetcht_4byte 
-0x30b9 008887 call g24_fetch_mem_addr_isub_temp 
-0x30ba 008888 branch g24_ms_ch_num_reinit ,zero 
-0x30bb 008889 rtn 
-:      008891 g24_dongle_search_addr_check:
-0x30bc 008892 setarg offset_24g_rx_addr 
-0x30bd 008893 call g24_set_rega_ifetcht_4byte 
-:      008895 g24_fetch_mem_addr_isub_temp:
-0x30be 008896 call g24_fetch_mem_addr 
-0x30bf 008898 isub temp ,null 
-0x30c0 008899 rtn 
-:      008901 g24_dg_ch_num_reinit:
-0x30c1 008902 setarg offset_24g_dg_ch_number 
-0x30c2 008903 call g24_set_rega_ifetch_1byte 
-:      008905 g24_current_ch_num_reinit:
-0x30c3 008907 add regc ,offset_24g_current_ch_number ,contw 
-0x30c4 008908 branch g24_contw_istore_1byte 
-:      008910 g24_kb_ch_num_reinit:
-0x30c5 008911 setarg offset_24g_kb_ch_number 
-0x30c6 008912 call g24_set_rega_ifetch_1byte 
-0x30c7 008914 branch g24_current_ch_num_reinit 
-:      008915 g24_ms_ch_num_reinit:
-0x30c8 008916 setarg offset_24g_ms_ch_number 
-0x30c9 008917 call g24_set_rega_ifetch_1byte 
-0x30ca 008919 branch g24_current_ch_num_reinit 
-:      008921 g24_dongle_search_mode_init:
-0x30cb 008922 call g24_fetch_mem_dongle_mode_init 
-0x30cc 008924 rtnbit1 dongle_search 
-0x30cd 008925 set1 dongle_search ,pdata 
-0x30ce 008926 call g24_store_mem_dongle_mode_init 
-0x30cf 008928 call g24_set0_mem_time_slice 
-0x30d0 008930 call g24_set1_mem_ackpayload_enable 
-0x30d1 008932 setarg 0 
-0x30d2 008933 add regc ,offset_rssi_noise_dg_index ,contw 
-0x30d3 008934 istore 3 ,contw 
-0x30d4 008936 arg offset_24g_dg_config_ch_once ,rega 
-0x30d5 008937 call g24_set_contw_with_temp 
-0x30d6 008938 istore 7 ,contw 
-0x30d7 008941 call g24_dongle_search_addr_check 
-0x30d8 008942 nrtn zero 
-0x30d9 008943 add regc ,offset_24g_current_ch_number ,rega 
-0x30da 008944 ifetch 1 ,rega 
-0x30db 008946 arg offset_24g_dg_ch_number ,rega 
-0x30dc 008947 call g24_set_contw_with_regb_store_1byte 
-0x30dd 008949 add regc ,offset_24g_ch ,rega 
-0x30de 008950 ifetch 1 ,rega 
-0x30df 008953 branch g24_store_mem_dg_last_ch 
-:      008955 g24_rx_auto_addr_ch_search:
-0x30e0 008956 bpatch patch18_1 ,mem_patch18 
-0x30e1 008957 call g24_fetch_mem_time_slice 
-0x30e2 008959 increase 1 ,pdata 
-0x30e3 008960 and_into 3 ,pdata 
-0x30e4 008961 call g24_store_mem_time_slice 
-0x30e5 008964 beq 0 ,g24_rx_auto_bind_config_kb 
-0x30e6 008965 beq 1 ,g24_rx_auto_bind_config_dongle 
-0x30e7 008966 beq 2 ,g24_rx_auto_bind_config_mouse 
-0x30e8 008967 beq 3 ,g24_rx_auto_bind_config_dongle 
-0x30e9 008968 rtn 
-:      008970 g24_rx_auto_bind_config_mouse:
-0x30ea 008971 call g24_dongle_bind_ms_payload_cfg 
-0x30eb 008972 setarg offset_24g_mouse_addr 
-0x30ec 008973 call g24_set_rega_ifetch_4byte 
-0x30ed 008975 branch g24_rx_auto_addr_ch_search ,blank 
-0x30ee 008976 call g24_store_mem_addr 
-0x30ef 008978 setarg offset_24g_ms_config_ch_once 
-0x30f0 008979 call g24_set_rega_ifetch_1byte 
-0x30f1 008981 call g24_ms_config_ch_once ,blank 
-0x30f2 008982 setarg offset_24g_ms_last_ch 
-0x30f3 008983 call g24_set_rega_ifetch_1byte 
-0x30f4 008985 call g24_store_mem_ch 
-0x30f5 008987 add regc ,offset_rssi_noise_ms_index ,rega 
-0x30f6 008988 ifetcht 1 ,rega 
-0x30f7 008990 arg mem_rssi_noise_ms_buffer ,rega 
-0x30f8 008991 call rssi_noise_store 
-0x30f9 008992 add regc ,offset_rssi_noise_ms_index ,contw 
-0x30fa 008993 istoret 1 ,contw 
-0x30fb 008995 call g24_noise_rssi_average 
-0x30fc 008996 add regc ,offset_rssi_noise_ms_avg ,contw 
-0x30fd 008997 istoret 1 ,contw 
-0x30fe 008999 sub temp ,rssi_thresh_noise ,null 
-0x30ff 009000 nrtn positive 
-0x3100 009001 setarg offset_24g_ms_ch_number 
-0x3101 009002 call g24_set_rega_ifetcht_1byte 
-0x3102 009004 call g24_ch_temp_incre_size4 
-0x3103 009005 arg offset_24g_ms_ch_number ,rega 
-0x3104 009006 call g24_set_contw_with_regb2 
-0x3105 009007 istoret 1 ,contw 
-:      009009 g24_store_mem_ms_last_ch:
-0x3106 009011 arg offset_24g_ms_last_ch ,rega 
-0x3107 009012 branch g24_set_contw_with_regb_store_1byte 
-:      009014 g24_ms_config_ch_once:
-0x3108 009015 setarg 1 
-0x3109 009016 arg offset_24g_ms_config_ch_once ,rega 
-0x310a 009017 call g24_set_contw_with_regb_store_1byte 
-0x310b 009019 arg 0 ,temp 
-0x310c 009020 call g24_ch_calc 
-0x310d 009023 branch g24_store_mem_ms_last_ch 
-:      009025 g24_rx_auto_bind_config_kb:
-0x310e 009026 call g24_dongle_bind_kb_payload_cfg 
-0x310f 009027 setarg offset_24g_kb_addr 
-0x3110 009028 call g24_set_rega_ifetch_4byte 
-0x3111 009030 branch g24_rx_auto_addr_ch_search ,blank 
-0x3112 009031 call g24_store_mem_addr 
-0x3113 009033 setarg offset_24g_kb_config_ch_once 
-0x3114 009034 call g24_set_rega_ifetch_1byte 
-0x3115 009036 call g24_kb_config_ch_once ,blank 
-0x3116 009037 setarg offset_24g_kb_last_ch 
-0x3117 009038 call g24_set_rega_ifetch_1byte 
-0x3118 009040 call g24_store_mem_ch 
-0x3119 009042 add regc ,offset_rssi_noise_kb_index ,rega 
-0x311a 009043 ifetcht 1 ,rega 
-0x311b 009045 arg mem_rssi_noise_kb_buffer ,rega 
-0x311c 009046 call rssi_noise_store 
-0x311d 009047 add regc ,offset_rssi_noise_kb_index ,contw 
-0x311e 009048 istoret 1 ,contw 
-0x311f 009050 call g24_noise_rssi_average 
-0x3120 009051 add regc ,offset_rssi_noise_kb_avg ,contw 
-0x3121 009052 istoret 1 ,contw 
-0x3122 009054 sub temp ,rssi_thresh_noise ,null 
-0x3123 009055 nrtn positive 
-0x3124 009056 setarg offset_24g_kb_ch_number 
-0x3125 009057 call g24_set_rega_ifetcht_1byte 
-0x3126 009059 call g24_ch_temp_incre_size4 
-0x3127 009060 arg offset_24g_kb_ch_number ,rega 
-0x3128 009061 call g24_set_contw_with_regb2 
-0x3129 009062 istoret 1 ,contw 
-:      009064 g24_store_mem_kb_last_ch:
-0x312a 009066 arg offset_24g_kb_last_ch ,rega 
-0x312b 009067 branch g24_set_contw_with_regb_store_1byte 
-:      009069 g24_kb_config_ch_once:
-0x312c 009070 setarg 1 
-0x312d 009071 arg offset_24g_kb_config_ch_once ,rega 
-0x312e 009072 call g24_set_contw_with_regb_store_1byte 
-0x312f 009074 arg 0 ,temp 
-0x3130 009075 call g24_ch_calc 
-0x3131 009078 branch g24_store_mem_kb_last_ch 
-:      009080 g24_rx_auto_bind_config_dongle:
-0x3132 009081 call g24_dongle_bind_ms_payload_cfg 
-0x3133 009082 call g24_fetch_mem_rx_addr 
-0x3134 009084 call g24_store_mem_addr 
-0x3135 009086 setarg offset_24g_dg_config_ch_once 
-0x3136 009087 call g24_set_rega_ifetch_1byte 
-0x3137 009089 call g24_dg_config_ch_once ,blank 
-0x3138 009090 call g24_dg_store_config_ch 
-0x3139 009091 add regc ,offset_rssi_noise_dg_index ,rega 
-0x313a 009092 ifetcht 1 ,rega 
-0x313b 009094 arg mem_rssi_noise_dg_buffer ,rega 
-0x313c 009095 call rssi_noise_store 
-0x313d 009096 add regc ,offset_rssi_noise_dg_index ,contw 
-0x313e 009097 istoret 1 ,contw 
-0x313f 009099 call g24_noise_rssi_average 
-0x3140 009100 add regc ,offset_rssi_noise_dg_avg ,contw 
-0x3141 009101 istoret 1 ,contw 
-0x3142 009103 sub temp ,rssi_thresh_noise ,null 
-0x3143 009104 nrtn positive 
-0x3144 009105 setarg offset_24g_dg_ch_number 
-0x3145 009106 call g24_set_rega_ifetcht_1byte 
-0x3146 009108 call g24_ch_temp_incre_size4 
-0x3147 009109 arg offset_24g_dg_ch_number ,rega 
-0x3148 009110 call g24_set_contw_with_regb2 
-0x3149 009111 istoret 1 ,contw 
-:      009113 g24_store_mem_dg_last_ch:
-0x314a 009116 arg offset_24g_dg_last_ch ,rega 
-0x314b 009117 branch g24_set_contw_with_regb_store_1byte 
-:      009120 g24_dg_config_ch_once:
-0x314c 009125 setarg 1 
-0x314d 009126 arg offset_24g_dg_config_ch_once ,rega 
-0x314e 009127 call g24_set_contw_with_regb_store_1byte 
-:      009128 g24_dg_store_config_ch:
-0x314f 009129 setarg offset_24g_dg_last_ch 
-0x3150 009130 call g24_set_rega_ifetch_1byte 
-0x3151 009131 branch g24_store_mem_ch 
-:      009134 g24_transmit_ack:
-0x3152 009136 add regc ,offset_24g_rxbuf ,rega 
-0x3153 009137 ifetch 1 ,rega 
-0x3154 009139 call g24_store_mem_data_type 
-0x3155 009142 call g24_read_len_pid_crc 
-0x3156 009144 call g24_fetch_mem_rxbuf_add1 
-0x3157 009146 isolate1 bit_ack_24g ,pdata 
-0x3158 009147 branch g24tx_no_ack ,true 
-:      009148 g24tx_with_ack:
-0x3159 009149 call g24_ackpayload_prep 
-0x315a 009150 call g24_transmit_prep 
-0x315b 009151 call g24_transmit 
-:      009152 g24tx_no_ack:
-0x315c 009153 branch g24_end_of_packet 
-:      009155 g24_ackpayload_prep:
-0x315d 009156 bpatch patch18_2 ,mem_patch18 
-0x315e 009157 add regc ,offset_24g_datalen ,contw 
-0x315f 009158 call g24_mem_set0 
-0x3160 009160 setarg offset_24g_ackpayload_enable 
-0x3161 009161 call g24_set_rega_ifetch_1byte 
-0x3162 009163 rtn blank 
-0x3163 009164 setarg 0x06 
-0x3164 009165 add regc ,offset_24g_datalen ,contw 
-0x3165 009166 istore 1 ,contw 
-0x3166 009168 arg 0x06 ,loopcnt 
-0x3167 009169 setarg offset_24g_bind_payload 
-0x3168 009170 iadd regc ,contr 
-0x3169 009172 add regc ,offset_24g_txbuf ,contw 
-0x316a 009174 branch memcpy 
-:      009177 g24_receive_packet_start:
-0x316b 009178 call g24_receive_transmit_ack 
-0x316c 009179 nbranch g24_rx_interrupt_clear ,user3 
-0x316d 009180 branch g24_receive_packet_parse 
-:      009182 g24_receive_transmit_ack:
-0x316e 009183 call g24_rx_interrupt_clear 
-0x316f 009184 call g24_receive_packet 
-0x3170 009185 nrtn user3 
-0x3171 009186 branch g24_transmit_ack 
-:      009188 g24_receive_packet_parse:
-0x3172 009189 bpatch patch18_3 ,mem_patch18 
-0x3173 009190 call g24_receive_packet_parse_pid_crc 
-0x3174 009191 nbranch g24_rx_interrupt_clear ,user 
-0x3175 009192 add regc ,offset_24g_rxdata_length ,rega 
-0x3176 009193 ifetch 1 ,rega 
-0x3177 009195 branch g24_rx_interrupt_clear ,blank 
-0x3178 009196 increase 2 ,pdata 
-0x3179 009197 iforce loopcnt 
-0x317a 009198 add regc ,offset_24g_rxbuf ,contr 
-0x317b 009200 setarg offset_24g_rxdata_temp 
-0x317c 009201 iadd regc ,contw 
-0x317d 009203 call memcpy 
-0x317e 009204 call g24_set0_mem_mode_switch 
-0x317f 009206 call g24_fetch_mem_pair_mode 
-0x3180 009208 call g24_enable_nodata_timer ,blank 
-0x3181 009209 setarg offset_24g_rxdata_temp_add2 
-0x3182 009210 call g24_set_rega_ifetch_1byte 
-0x3183 009212 beq 0x01 ,g24_data_type1 
-0x3184 009213 beq 0x02 ,g24_data_type2 
-0x3185 009214 beq 0x03 ,g24_data_type3 
-0x3186 009215 beq 0xff ,g24_data_attemp 
-0x3187 009216 branch g24_rx_interrupt_clear 
-:      009218 g24_receive_packet_parse_pid_crc:
-0x3188 009219 call g24_head_ptr2regc 
-0x3189 009220 call disable_user 
-0x318a 009221 add regc ,offset_24g_sta_pid ,rega 
-0x318b 009222 ifetch 1 ,rega 
-0x318c 009224 add regc ,offset_24g_last_pid ,rega 
-0x318d 009225 ifetcht 1 ,rega 
-0x318e 009227 isub temp ,null 
-0x318f 009228 ncall enable_user ,zero 
-0x3190 009229 add regc ,offset_24g_sta_pid ,rega 
-0x3191 009230 ifetch 1 ,rega 
-0x3192 009232 add regc ,offset_24g_last_pid ,contw 
-0x3193 009233 istore 1 ,contw 
-0x3194 009235 add regc ,offset_24g_sta_crc ,rega 
-0x3195 009236 ifetch 3 ,rega 
-0x3196 009238 add regc ,offset_24g_last_crc ,rega 
-0x3197 009239 ifetcht 3 ,rega 
-0x3198 009241 isub temp ,null 
-0x3199 009242 ncall enable_user ,zero 
-0x319a 009243 add regc ,offset_24g_sta_crc ,rega 
-0x319b 009244 ifetch 3 ,rega 
-0x319c 009246 add regc ,offset_24g_last_crc ,contw 
-0x319d 009248 branch g24_contw_istore_3byte 
-:      009250 g24_data_type1:
-0x319e 009251 call g24_ch_timer_reinit 
-0x319f 009252 call g24_fetch_mem_abort_pac 
-0x31a0 009253 store 1 ,mem_temp 
-0x31a1 009255 call g24_fetcht_mem_rxdata_temp 
-0x31a2 009256 fetch 1 ,mem_temp 
-0x31a3 009258 isolate1 bit_abort ,temp 
-0x31a4 009259 setflag true ,0 ,pdata 
-0x31a5 009260 add regc ,offset_24g_abort_pac ,contw 
-0x31a6 009261 istore 1 ,contw 
-0x31a7 009263 beq 1 ,g24_data_attemp_mouse 
-0x31a8 009264 call g24_fetch_mem_hop_pac 
-0x31a9 009266 call g24_fetcht_mem_rxdata_temp 
-0x31aa 009268 isolate1 bit_hop ,temp 
-0x31ab 009269 setflag true ,0 ,pdata 
-0x31ac 009270 call g24_store_mem_hop_pac 
-0x31ad 009272 add regc ,offset_24g_cb_rxdata_type1 ,rega 
-0x31ae 009273 ifetch 2 ,rega 
-0x31af 009275 branch callback_func 
-:      009277 dongle_rxdata_type1:
-0x31b0 009278 setarg ms_report_id 
-0x31b1 009279 store 1 ,mem_usb_mouse_data 
-0x31b2 009280 call g24_fetch_mem_rxdata_temp_add3_7byte 
-0x31b3 009282 istore 7 ,contw 
-0x31b4 009283 call g24_fetch_mem_rxdata_temp_add3_7byte 
-0x31b5 009285 ncall g24_ms_enable_blank_data_forcibly ,blank 
-0x31b6 009286 call g24_fetch_mem_rxdata_temp_add3_7byte 
-0x31b7 009288 call g24_ms_disable_blank_data_forcibly ,blank 
-:      009289 g24_data_type1_usbtx_enable:
-0x31b8 009290 jam usb_ep2_ms ,mem_usb_ep2_data 
-:      009291 g24_data_type1_usbtx_enable_ep2:
-0x31b9 009292 fetch 1 ,mem_usb_tx_enable 
-0x31ba 009293 set1 2 ,pdata 
-0x31bb 009294 store 1 ,mem_usb_tx_enable 
-0x31bc 009295 rtn 
-:      009297 g24_ms_enable_blank_data_forcibly:
-0x31bd 009298 setarg 1 
-0x31be 009299 call g24_store_mem_ms_blank_data_enable 
-:      009301 g24_ms_enable_blank_data_timer:
-0x31bf 009302 setarg timer_ms_blank_delay 
-0x31c0 009303 arg timer_ms_blank ,queue 
-0x31c1 009304 branch timer_init 
-:      009305 g24_ms_disable_blank_data_forcibly:
-0x31c2 009306 call g24_set0_mem_ms_blank_data_enable 
-:      009308 g24_ms_disable_blank_data_timer:
-0x31c3 009309 setarg 0 
-0x31c4 009310 arg timer_ms_blank ,queue 
-0x31c5 009311 branch timer_init 
-:      009313 g24_data_type2:
-0x31c6 009314 call g24_fetcht_mem_rxdata_temp 
-0x31c7 009316 isolate1 bit_abort ,temp 
-0x31c8 009317 branch g24_data_attemp_kbd ,true 
-0x31c9 009318 arg mem_usb_kb_data ,contw 
-0x31ca 009319 call g24_data_type2_reverse_data 
-0x31cb 009320 fetch 8 ,mem_usb_kb_data 
-0x31cc 009321 ncall g24_kb_enable_blank_data_forcibly ,blank 
-0x31cd 009322 fetch 8 ,mem_usb_kb_data 
-0x31ce 009323 call g24_kb_disable_blank_data_forcibly ,blank 
-0x31cf 009324 call g24_head_ptr2regc 
-0x31d0 009325 fetch 8 ,mem_usb_kb_data 
-0x31d1 009326 arg offset_24g_kb_data_sta_data ,rega 
-0x31d2 009327 call g24_set_contw_with_temp 
-0x31d3 009328 istore 8 ,contw 
-0x31d4 009330 setarg offset_24g_kb_data_last_data 
-0x31d5 009331 iadd regc ,rega 
-0x31d6 009332 ifetcht 8 ,rega 
-0x31d7 009334 isub temp ,null 
-0x31d8 009335 ncall g24_kb_data_dispose ,zero 
-0x31d9 009336 setarg offset_24g_kb_data_sta_data 
-0x31da 009337 iadd regc ,rega 
-0x31db 009338 ifetch 8 ,rega 
-0x31dc 009340 arg offset_24g_kb_data_last_data ,rega 
-0x31dd 009341 call g24_set_contw_with_temp 
-0x31de 009342 istore 8 ,contw 
-0x31df 009344 branch g24_rx_interrupt_clear 
-:      009346 g24_data_type2_reverse_data:
-0x31e0 009347 setarg offset_24g_rxdata_temp_add2 
-0x31e1 009348 iadd regc ,contr 
-0x31e2 009350 arg 9 ,loopcnt 
-0x31e3 009351 branch reverse_byte 
-:      009353 g24_kb_enable_blank_data_forcibly:
-0x31e4 009354 setarg 1 
-0x31e5 009355 call g24_store_mem_kb_blank_data_enable 
-:      009357 g24_kb_enable_blank_data_timer:
-0x31e6 009358 setarg timer_kb_blank_delay 
-0x31e7 009359 arg timer_kb_blank ,queue 
-0x31e8 009360 branch timer_init 
-:      009362 g24_kb_disable_blank_data_forcibly:
-0x31e9 009363 call g24_set0_mem_kb_blank_data_enable 
-:      009365 g24_kb_disable_blank_data_timer:
-0x31ea 009366 setarg 0 
-0x31eb 009367 arg timer_kb_blank ,queue 
-0x31ec 009368 branch timer_init 
-:      009370 g24_kb_data_dispose:
-:      009371 g24_kb_data_into_ep1_fifo:
-0x31ed 009372 jam usb_ep1_kb ,mem_usb_ep1_data 
-0x31ee 009373 fetch 1 ,mem_usb_tx_enable 
-0x31ef 009374 set1 1 ,pdata 
-0x31f0 009375 store 1 ,mem_usb_tx_enable 
-0x31f1 009376 rtn 
-:      009378 g24_data_type3:
-0x31f2 009379 arg mem_usb_kb_multikey ,contw 
-0x31f3 009380 call g24_data_type2_reverse_data 
-0x31f4 009381 fetch 2 ,mem_usb_kb_multikey + 1 
-0x31f5 009382 ncall g24_kb_mul_enable_blank_data_forcibly ,blank 
-0x31f6 009383 fetch 2 ,mem_usb_kb_multikey + 1 
-0x31f7 009384 call g24_kb_mul_disable_blank_data_forcibly ,blank 
-0x31f8 009385 call g24_head_ptr2regc 
-0x31f9 009386 fetch 3 ,mem_usb_kb_multikey 
-0x31fa 009387 arg offset_24g_kb_multikey_sta_data ,rega 
-0x31fb 009388 call g24_set_contw_with_temp_store_3byte 
-0x31fc 009390 setarg offset_24g_kb_multikey_last_data 
-0x31fd 009391 iadd regc ,rega 
-0x31fe 009392 ifetcht 3 ,rega 
-0x31ff 009394 isub temp ,null 
-0x3200 009395 ncall g24_kb_mul_data_into_ep2_fifo ,zero 
-0x3201 009396 setarg offset_24g_kb_multikey_sta_data 
-0x3202 009397 iadd regc ,rega 
-0x3203 009398 ifetch 3 ,rega 
-0x3204 009400 arg offset_24g_kb_multikey_last_data ,rega 
-0x3205 009401 call g24_set_contw_with_temp_store_3byte 
-0x3206 009403 branch g24_rx_interrupt_clear 
-:      009405 g24_kb_mul_data_into_ep2_fifo:
-0x3207 009406 jam usb_ep2_multikey ,mem_usb_ep2_data 
-0x3208 009407 branch g24_data_type1_usbtx_enable_ep2 
-:      009409 g24_kb_mul_enable_blank_data_forcibly:
-0x3209 009410 setarg 1 
-0x320a 009411 call g24_store_mem_kb_mul_blank_data_enable 
-:      009413 g24_kb_mul_enable_blank_data_timer:
-0x320b 009414 setarg timer_kb_mul_blank_delay 
-0x320c 009415 arg timer_kb_mul_blank ,queue 
-0x320d 009416 branch timer_init 
-:      009418 g24_kb_mul_disable_blank_data_forcibly:
-0x320e 009419 call g24_set0_mem_kb_mul_blank_data_enable 
-:      009421 g24_kb_mul_disable_blank_data_timer:
-0x320f 009422 setarg 0 
-0x3210 009423 arg timer_kb_mul_blank ,queue 
-0x3211 009424 branch timer_init 
-:      009426 g24_data_attemp:
-0x3212 009427 call g24_fetch_mem_rxdata_temp_add3_1byte 
-0x3213 009429 beq datatype_mouse ,g24_data_attemp_mouse 
-0x3214 009430 beq datatype_keyboard ,g24_data_attemp_kbd 
-0x3215 009431 rtn 
-:      009432 g24_data_attemp_mouse:
-0x3216 009433 setarg offset_24g_rxdata_temp_add4 
-0x3217 009434 call g24_set_rega_ifetch_4byte 
-0x3218 009435 arg offset_24g_mouse_addr ,rega 
-0x3219 009436 call g24_set_contw_with_temp 
-0x321a 009439 branch g24_contw_istore_4byte 
-:      009441 g24_data_attemp_kbd:
-0x321b 009442 setarg offset_24g_rxdata_temp_add4 
-0x321c 009443 call g24_set_rega_ifetch_4byte 
-0x321d 009444 arg offset_24g_kb_addr ,rega 
-0x321e 009445 call g24_set_contw_with_temp 
-0x321f 009448 branch g24_contw_istore_4byte 
-:      009450 g24_store_mem_24g_mode:
-0x3220 009451 call g24_head_ptr2regc 
-0x3221 009452 add regc ,offset_24g_mode ,contw 
-0x3222 009453 istore 1 ,contw 
-0x3223 009454 rtn 
-:      009456 g24_fetch_mem_device_addr:
-0x3224 009457 call g24_head_ptr2regc 
-0x3225 009458 add regc ,offset_24g_device_addr ,rega 
-0x3226 009459 branch g24_rega_ifetch_4byte 
-:      009460 g24_store_mem_device_addr:
-0x3227 009461 call g24_head_ptr2regc 
-0x3228 009462 add regc ,offset_24g_device_addr ,contw 
-0x3229 009463 branch g24_contw_istore_4byte 
-:      009465 g24_fetch_mem_addr:
-0x322a 009466 add regc ,offset_24g_addr ,rega 
-0x322b 009467 branch g24_rega_ifetch_4byte 
-:      009468 g24_store_mem_addr:
-0x322c 009469 add regc ,offset_24g_addr ,contw 
-:      009470 g24_contw_istore_4byte:
-0x322d 009471 istore 4 ,contw 
-0x322e 009472 rtn 
-:      009474 g24_store_mem_ch:
-0x322f 009475 add regc ,offset_24g_ch ,contw 
-0x3230 009476 branch g24_contw_istore_1byte 
-:      009478 g24_set0_mem_pid:
-0x3231 009479 setarg 0 
-:      009480 g24_store_mem_pid:
-0x3232 009481 call g24_head_ptr2regc 
-0x3233 009482 add regc ,offset_24g_pid ,contw 
-0x3234 009483 branch g24_contw_istore_1byte 
-:      009485 g24_store_mem_txpayload:
-0x3235 009486 add regc ,offset_24g_txpayload ,contw 
-0x3236 009487 branch g24_contw_istore_1byte 
-:      009489 g24_set4_mem_max_retry:
-0x3237 009490 setarg 4 
-:      009491 g24_store_mem_max_retry:
-0x3238 009492 add regc ,offset_24g_max_retry ,contw 
-0x3239 009493 branch g24_contw_istore_1byte 
-:      009495 g24_fetch_mem_data_type:
-0x323a 009496 add regc ,offset_24g_data_type ,rega 
-0x323b 009497 branch g24_rega_ifetch_1byte 
-:      009498 g24_store_mem_data_type:
-0x323c 009499 add regc ,offset_24g_data_type ,contw 
-0x323d 009500 branch g24_contw_istore_1byte 
-:      009502 g24_set2_mem_sync_cnt:
-0x323e 009503 setarg 2 
-:      009504 g24_store_mem_sync_cnt:
-0x323f 009505 add regc ,offset_24g_sync_cnt ,contw 
-0x3240 009506 branch g24_contw_istore_1byte 
-:      009508 g24_set1_mem_rf_last_sta:
-0x3241 009509 setarg 1 
-:      009510 g24_store_mem_rf_last_sta:
-0x3242 009511 call g24_head_ptr2regc 
-0x3243 009512 add regc ,offset_24g_rf_last_sta ,contw 
-0x3244 009513 branch g24_contw_istore_1byte 
-:      009515 g24_fetch_mem_hop_pac:
-0x3245 009516 call g24_head_ptr2regc 
-0x3246 009517 add regc ,offset_24g_hop_pac ,rega 
-0x3247 009518 branch g24_rega_ifetch_1byte 
-:      009519 g24_set1_mem_hop_pac:
-0x3248 009520 setarg 1 
-:      009521 g24_store_mem_hop_pac:
-0x3249 009522 call g24_head_ptr2regc 
-0x324a 009523 add regc ,offset_24g_hop_pac ,contw 
-0x324b 009524 branch g24_contw_istore_1byte 
-:      009526 g24_fetch_mem_abort_pac:
-0x324c 009527 call g24_head_ptr2regc 
-0x324d 009528 add regc ,offset_24g_abort_pac ,rega 
-0x324e 009529 branch g24_rega_ifetch_1byte 
-:      009530 g24_set1_mem_abort_pac:
-0x324f 009531 setarg 1 
-:      009532 g24_store_mem_abort_pac:
-0x3250 009533 call g24_head_ptr2regc 
-0x3251 009534 add regc ,offset_24g_abort_pac ,contw 
-0x3252 009535 branch g24_contw_istore_1byte 
-:      009537 g24_fetch_mem_pairing_sm:
-0x3253 009538 call g24_head_ptr2regc 
-0x3254 009539 add regc ,offset_24g_pairing_sm ,rega 
-0x3255 009540 branch g24_rega_ifetch_1byte 
-:      009541 g24_store_mem_pairing_sm:
-0x3256 009542 add regc ,offset_24g_pairing_sm ,contw 
-0x3257 009543 branch g24_contw_istore_1byte 
-:      009545 g24_fetch_mem_rf_hop_ch:
-0x3258 009546 add regc ,offset_24g_rf_hop_ch ,rega 
-0x3259 009547 branch g24_rega_ifetch_1byte 
-:      009548 g24_set0_mem_rf_hop_ch:
-0x325a 009549 setarg 0 
-:      009550 g24_store_mem_rf_hop_ch:
-0x325b 009551 add regc ,offset_24g_rf_hop_ch ,contw 
-0x325c 009552 branch g24_contw_istore_1byte 
-:      009554 g24_fetch_mem_rf_work_stage:
-0x325d 009555 add regc ,offset_24g_rf_work_stage ,rega 
-0x325e 009556 branch g24_rega_ifetch_1byte 
-:      009558 g24_fetch_mem_rxbuf_add1:
-0x325f 009559 add regc ,offset_24g_rxbuf_add1 ,rega 
-0x3260 009560 branch g24_rega_ifetch_1byte 
-:      009562 g24_fetch_mem_check_dongle_times:
-0x3261 009563 add regc ,offset_24g_check_dongle_times ,rega 
-0x3262 009564 branch g24_rega_ifetch_1byte 
-:      009565 g24_set0_mem_check_dongle_times:
-0x3263 009566 setarg 0 
-:      009567 g24_store_mem_check_dongle_times:
-0x3264 009568 call g24_head_ptr2regc 
-0x3265 009569 add regc ,offset_24g_check_dongle_times ,contw 
-0x3266 009570 branch g24_contw_istore_1byte 
-:      009572 g24_store_mem_tx_power:
-0x3267 009573 call g24_head_ptr2regc 
-0x3268 009574 add regc ,offset_tx_power_temp ,rega 
-0x3269 009575 ifetch 1 ,rega 
-:      009576 g24_store_mem_txpower:
-0x326a 009577 store 1 ,mem_tx_power 
-0x326b 009578 rtn 
-:      009580 g24_store_mem_tx_power_temp:
-0x326c 009581 call g24_head_ptr2regc 
-0x326d 009582 fetch 1 ,mem_tx_power 
-0x326e 009584 add regc ,offset_tx_power_temp ,contw 
-0x326f 009585 branch g24_contw_istore_1byte 
-:      009587 g24_fetch_mem_power_ctrl_pac:
-0x3270 009588 add regc ,offset_power_ctrl_packet_cnt ,rega 
-0x3271 009589 branch g24_rega_ifetch_1byte 
-:      009591 g24_store_mem_power_ctrl_level:
-0x3272 009592 add regc ,offset_power_ctrl_level ,contw 
-0x3273 009593 branch g24_contw_istore_1byte 
-:      009595 g24_fetcht_mem_rxdata_temp:
-0x3274 009596 setarg offset_24g_rxdata_temp 
-:      009597 g24_set_rega_ifetcht_1byte:
-0x3275 009598 iadd regc ,rega 
-0x3276 009599 ifetcht 1 ,rega 
-0x3277 009600 rtn 
-:      009602 g24_fetch_mem_rf_laststa:
-0x3278 009603 setarg offset_24g_rf_laststa 
-0x3279 009604 branch g24_set_rega_ifetch_1byte 
-:      009605 g24_set0_mem_rf_laststa:
-0x327a 009606 setarg 0 
-:      009607 g24_store_mem_rf_laststa:
-0x327b 009608 arg offset_24g_rf_laststa ,rega 
-0x327c 009609 branch g24_set_contw_with_regb_store_1byte 
-:      009611 g24_fetch_mem_rx_addr:
-0x327d 009612 setarg offset_24g_rx_addr 
-:      009613 g24_set_rega_ifetch_4byte:
-0x327e 009614 call g24_set_rega 
-:      009615 g24_rega_ifetch_4byte:
-0x327f 009616 ifetch 4 ,rega 
-0x3280 009617 rtn 
-:      009619 g24_fetch_mem_time_slice:
-0x3281 009620 setarg offset_24g_time_slice 
-0x3282 009621 branch g24_set_rega_ifetch_1byte 
-:      009622 g24_set0_mem_time_slice:
-0x3283 009623 setarg 0 
-:      009624 g24_store_mem_time_slice:
-0x3284 009625 arg offset_24g_time_slice ,rega 
-0x3285 009626 branch g24_set_contw_with_regb_store_1byte 
-:      009628 g24_set0_mem_mode_switch:
-0x3286 009629 setarg 0 
-:      009630 g24_store_mem_mode_switch:
-0x3287 009631 arg offset_24g_mode_switch ,rega 
-0x3288 009632 branch g24_set_contw_with_regb_store_1byte 
-:      009634 g24_store_mem_bind_payload:
-0x3289 009635 arg offset_24g_bind_payload ,rega 
-0x328a 009636 branch g24_set_contw_with_regb_store_1byte 
-:      009638 g24_fetch_mem_bind_device_status:
-0x328b 009639 setarg offset_dongle_bind_device_status 
-0x328c 009640 branch g24_set_rega_ifetch_1byte 
-:      009641 g24_store_mem_bind_device_status:
-0x328d 009642 arg offset_dongle_bind_device_status ,rega 
-0x328e 009643 branch g24_set_contw_with_regb_store_1byte 
-:      009645 g24_fetch_mem_dongle_work_mode:
-0x328f 009646 setarg offset_dongle_work_mode 
-0x3290 009647 branch g24_set_rega_ifetch_1byte 
-:      009648 g24_set_work_mem_dongle_work_mode:
-0x3291 009649 setarg dongle_work 
-:      009650 g24_store_mem_dongle_work_mode:
-0x3292 009651 arg offset_dongle_work_mode ,rega 
-0x3293 009652 branch g24_set_contw_with_regb_store_1byte 
-:      009654 g24_fetch_mem_dongle_mode_init:
-0x3294 009655 setarg offset_dongle_mode_init 
-0x3295 009656 branch g24_set_rega_ifetch_1byte 
-:      009657 g24_set0_mem_dongle_mode_init:
-0x3296 009658 setarg clear_init 
-:      009659 g24_store_mem_dongle_mode_init:
-0x3297 009660 arg offset_dongle_mode_init ,rega 
-0x3298 009661 branch g24_set_contw_with_regb_store_1byte 
-:      009663 g24_set0_mem_ackpayload_enable:
-0x3299 009664 setarg 0 
-:      009665 g24_store_mem_ackpayload_enable:
-0x329a 009666 arg offset_24g_ackpayload_enable ,rega 
-0x329b 009667 branch g24_set_contw_with_regb_store_1byte 
-:      009668 g24_set1_mem_ackpayload_enable:
-0x329c 009669 setarg 1 
-0x329d 009670 branch g24_store_mem_ackpayload_enable 
-:      009672 g24_fetch_mem_rxdata_temp_add3_7byte:
-0x329e 009673 setarg offset_24g_rxdata_temp_add3 
-0x329f 009674 call g24_set_rega 
-0x32a0 009675 ifetch 7 ,rega 
-0x32a1 009676 rtn 
-:      009678 g24_fetch_mem_nodata_timer_enable:
-0x32a2 009679 setarg offset_24g_nodata_timer_enable 
-0x32a3 009680 branch g24_set_rega_ifetch_1byte 
-:      009681 g24_set0_mem_nodata_timer_enable:
-0x32a4 009682 setarg 0 
-:      009683 g24_store_mem_nodata_timer_enable:
-0x32a5 009684 arg offset_24g_nodata_timer_enable ,rega 
-0x32a6 009685 branch g24_set_contw_with_regb_store_1byte 
-:      009687 g24_set0_mem_ms_blank_data_enable:
-0x32a7 009688 setarg 0 
-:      009689 g24_store_mem_ms_blank_data_enable:
-0x32a8 009690 arg offset_24g_ms_blank_data_enable ,rega 
-0x32a9 009691 branch g24_set_contw_with_regb_store_1byte 
-:      009693 g24_set0_mem_kb_blank_data_enable:
-0x32aa 009694 setarg 0 
-:      009695 g24_store_mem_kb_blank_data_enable:
-0x32ab 009696 arg offset_24g_kb_blank_data_enable ,rega 
-0x32ac 009697 branch g24_set_contw_with_regb_store_1byte 
-:      009699 g24_set0_mem_kb_mul_blank_data_enable:
-0x32ad 009700 setarg 0 
-:      009701 g24_store_mem_kb_mul_blank_data_enable:
-0x32ae 009702 arg offset_24g_kb_mul_blank_data_enable ,rega 
-0x32af 009703 branch g24_set_contw_with_regb_store_1byte 
-:      009705 g24_store_mem_power_ctrl_threshold_up:
-0x32b0 009706 arg offset_power_ctrl_threshold_up ,rega 
-0x32b1 009707 branch g24_set_contw_with_regb_store_1byte 
-:      009709 g24_store_mem_power_ctrl_threshold_down:
-0x32b2 009710 arg offset_power_ctrl_threshold_down ,rega 
-:      009711 g24_set_contw_with_regb_store_1byte:
-0x32b3 009712 call g24_set_contw_with_regb 
-:      009713 g24_contw_istore_1byte:
-0x32b4 009714 istore 1 ,contw 
-0x32b5 009715 rtn 
-:      009717 g24_fetch_mem_pair_mode:
-0x32b6 009718 setarg offset_24g_pair_mode 
-0x32b7 009719 branch g24_set_rega_ifetch_1byte 
-:      009721 g24_store_mem_pair_mode:
-0x32b8 009722 arg offset_24g_pair_mode ,rega 
-0x32b9 009723 branch g24_set_contw_with_regb_store_1byte 
-:      009725 g24_store_mem_pair_txpower:
-0x32ba 009726 setarg offset_24g_pair_txpower 
-0x32bb 009727 call g24_set_rega_ifetch_1byte 
-0x32bc 009728 branch g24_store_mem_txpower 
-:      009730 g24_fetch_mem_rxdata_temp_add3_1byte:
-0x32bd 009731 setarg offset_24g_rxdata_temp_add3 
-0x32be 009732 branch g24_set_rega_ifetch_1byte 
-:      009734 g24_set_contw_with_temp:
-0x32bf 009735 copy pdata ,temp 
-0x32c0 009736 copy rega ,pdata 
-0x32c1 009737 iadd regc ,contw 
-0x32c2 009738 copy temp ,pdata 
-0x32c3 009739 rtn 
-:      009741 g24_set_contw_with_temp_store_3byte:
-0x32c4 009742 call g24_set_contw_with_temp 
-:      009743 g24_contw_istore_3byte:
-0x32c5 009744 istore 3 ,contw 
-0x32c6 009745 rtn 
-:      009747 g24_set_contw_with_regb:
-0x32c7 009748 call g24_head_ptr2regc 
-:      009749 g24_set_contw_with_regb2:
-0x32c8 009750 copy pdata ,regb 
-0x32c9 009751 copy rega ,pdata 
-0x32ca 009752 iadd regc ,contw 
-0x32cb 009753 copy regb ,pdata 
-0x32cc 009754 rtn 
-:      009756 g24_set_rega:
-0x32cd 009757 call g24_head_ptr2regc 
-0x32ce 009758 iadd regc ,rega 
-0x32cf 009759 rtn 
-:      009761 g24_set_rega_ifetch_1byte:
-0x32d0 009762 call g24_set_rega 
-:      009763 g24_rega_ifetch_1byte:
-0x32d1 009764 ifetch 1 ,rega 
-0x32d2 009765 rtn 
-:      009767 g24_set_rega_ifetcht_4byte:
-0x32d3 009768 call g24_set_rega 
-0x32d4 009769 ifetcht 4 ,rega 
-0x32d5 009770 rtn 
-:      009772 g24_mem_set0:
-0x32d6 009773 setarg 0 
-0x32d7 009774 branch g24_contw_istore_1byte 
-:      009778 app_init:
-0x32d8 009779 bpatch patch18_4 ,mem_patch18 
-0x32d9 009780 fetch 1 ,mem_device_option 
-0x32da 009781 branch app_init ,blank 
-0x32db 009783 beq dvc_op_dongle ,dongle_init 
-0x32dc 009784 beq dvc_op_antilost ,antilost_init 
-0x32dd 009785 beq dvc_op_shutter ,shutter_init 
-0x32de 009786 beq dvc_op_module ,module_init 
-0x32df 009787 beq dvc_op_car ,car_init 
-0x32e0 009788 beq dvc_op_remote_car ,remote_car_init 
-0x32e1 009789 bbit1 dvc_op_mouse ,mouse_init 
-0x32e2 009790 rtn 
-:      009792 app_lpm_init:
-0x32e3 009793 bpatch patch18_5 ,mem_patch18 
-0x32e4 009794 jam 0 ,mem_tester_emulate 
-0x32e5 009795 jam 0 ,mem_debug_config 
-0x32e6 009796 jam 0 ,mem_lch_code 
-0x32e7 009797 setarg 0 
-0x32e8 009798 store 5 ,mem_sp_state_start 
-0x32e9 009799 fetch 1 ,mem_device_option 
-0x32ea 009800 branch app_lpm_init ,blank 
-0x32eb 009801 beq dvc_op_module ,module_lpm_init 
-:      009802 app_lpm_init0:
-0x32ec 009803 rtn 
-:      009806 app_process_idle:
-0x32ed 009807 call ui_dispatch 
-0x32ee 009808 call check_51cmd 
-0x32ef 009809 call app_process_bb_event 
-0x32f0 009810 fetch 2 ,mem_cb_idle_process 
-0x32f1 009811 branch callback_func 
-:      009813 app_process_bt:
-0x32f2 009814 fetch 2 ,mem_cb_bt_process 
-0x32f3 009815 branch callback_func 
-:      009817 app_process_ble:
-0x32f4 009818 fetch 2 ,mem_cb_le_process 
-0x32f5 009819 branch callback_func 
-:      009821 app_process_bb_event:
-0x32f6 009822 bpatch patch18_6 ,mem_patch18 
-0x32f7 009824 arg mem_ipc_fifo_bt2c51 ,rega 
-0x32f8 009825 call fifo_out 
-0x32f9 009826 rtn blank 
-0x32fa 009828 copy pdata ,regc 
-0x32fb 009829 call app_event_normal_process 
-0x32fc 009830 branch app_process_bb_event_priority 
-:      009832 app_discard_event:
-0x32fd 009833 arg 0 ,regc 
-0x32fe 009834 rtn 
-:      009839 app_event_normal_process:
-0x32ff 009840 beq bt_evt_bb_connected ,app_evt_bt_conn 
-0x3300 009841 beq bt_evt_button_long_pressed ,app_evt_button_long_pressed 
-0x3301 009842 beq bt_evt_setup_complete ,app_evt_setup_complete 
-0x3302 009843 beq bt_evt_hid_handshake ,app_evt_hid_handshake 
-0x3303 009844 beq bt_evt_hid_connected ,app_bb_event_hid_connected 
-0x3304 009845 beq bt_evt_reconn_failed ,app_bb_event_reconn_failed 
-0x3305 009846 beq bt_evt_bb_disconnected ,app_bb_event_bb_disconn 
-0x3306 009847 beq bt_evt_reconn_page_timeout ,app_bb_event_reconn_failed 
-0x3307 009848 beq bt_evt_le_connected ,app_le_event_bb_connected 
-0x3308 009849 beq bt_evt_le_disconnected ,app_le_event_bb_disconn 
-0x3309 009850 beq bt_evt_reconn_started ,app_event_reconn_start 
-0x330a 009851 beq bt_evt_enter_sniff ,app_event_enter_sniff 
-0x330b 009852 beq bt_evt_exit_sniff ,app_event_exit_sniff 
-0x330c 009854 beq bt_evt_ml2cap_conn_refused ,app_event_ml2cap_conn_refused 
-0x330d 009855 beq bt_evt_linkkey_generate ,app_event_linkkey_generate 
-0x330e 009856 beq bt_evt_switch_fail_master ,app_event_switch_fail_master 
-0x330f 009857 beq bt_evt_switch_success_master ,app_event_switch_success 
-0x3310 009858 rtn 
-:      009861 app_evt_bt_conn:
-0x3311 009862 fetch 2 ,mem_ui_state_map 
-0x3312 009863 set1 ui_state_bt_connected ,pdata 
-0x3313 009864 store 2 ,mem_ui_state_map 
-0x3314 009865 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3315 009866 set0 app_disc_by_button ,pdata 
-0x3316 009867 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3317 009868 rtn 
-:      009870 app_event_switch_success:
-0x3318 009871 jam 0 ,mem_switch_fail_master_count 
-0x3319 009872 rtn 
-:      009874 app_event_switch_fail_master:
-0x331a 009875 fetch 1 ,mem_switch_fail_master_count 
-0x331b 009876 increase 1 ,pdata 
-0x331c 009877 store 1 ,mem_switch_fail_master_count 
-0x331d 009878 sub pdata ,1 ,null 
-0x331e 009879 branch app_bt_role_switch ,positive 
-0x331f 009880 jam 0 ,mem_switch_fail_master_count 
-0x3320 009881 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3321 009882 set1 app_disc_switch_fail ,pdata 
-0x3322 009883 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3323 009884 branch app_bt_disconnect 
-:      009886 app_process_bb_event_priority:
-0x3324 009887 fetch 2 ,mem_cb_bb_event_process 
-0x3325 009888 branch callback_func 
-:      009890 app_check_wake_lock:
-0x3326 009891 fetch 2 ,mem_cb_check_wakelock 
-0x3327 009892 branch callback_func 
-:      009894 app_will_enter_lpm:
-0x3328 009895 fetch 2 ,mem_cb_before_lpm 
-0x3329 009896 branch callback_func 
-:      009898 app_event_linkkey_generate:
-0x332a 009899 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x332b 009900 set1 app_disc_after_pairing ,pdata 
-0x332c 009901 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x332d 009902 branch app_bt_store_reconn_info 
-:      009904 app_event_reconn_start:
-0x332e 009905 fetch 2 ,mem_ui_state_map 
-0x332f 009906 set1 ui_state_bt_reconnect ,pdata 
-0x3330 009907 store 2 ,mem_ui_state_map 
-0x3331 009908 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3332 009909 set1 app_disc_after_reconn ,pdata 
-0x3333 009910 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3334 009911 rtn 
-:      009913 app_evt_setup_complete:
-0x3335 009914 fetch 2 ,mem_ui_state_map 
-0x3336 009915 set1 ui_state_bt_setup_complete ,pdata 
-0x3337 009916 store 2 ,mem_ui_state_map 
-0x3338 009917 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3339 009918 set1 app_disc_after_setup_done ,pdata 
-0x333a 009919 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x333b 009920 rtn 
-:      009922 app_evt_hid_handshake:
-0x333c 009923 fetch 2 ,mem_ui_state_map 
-0x333d 009924 set1 ui_state_bt_hid_handshake ,pdata 
-0x333e 009925 store 2 ,mem_ui_state_map 
-0x333f 009926 rtn 
-:      009928 app_event_enter_sniff:
-0x3340 009929 fetch 2 ,mem_ui_state_map 
-0x3341 009930 set1 ui_state_bt_sniff ,pdata 
-0x3342 009931 store 2 ,mem_ui_state_map 
-0x3343 009932 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3344 009933 set1 app_disc_after_sniff ,pdata 
-0x3345 009934 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3346 009935 rtn 
-:      009937 app_event_exit_sniff:
-0x3347 009938 fetch 2 ,mem_ui_state_map 
-0x3348 009939 set0 ui_state_bt_sniff ,pdata 
-0x3349 009940 store 2 ,mem_ui_state_map 
-0x334a 009941 rtn 
-:      009943 app_le_event_bb_connected:
-0x334b 009944 fetch 2 ,mem_ui_state_map 
-0x334c 009945 set1 ui_state_ble_connected ,pdata 
-0x334d 009946 store 2 ,mem_ui_state_map 
-0x334e 009947 rtn 
-:      009949 app_le_event_bb_disconn:
-0x334f 009950 fetch 2 ,mem_ui_state_map 
-0x3350 009951 set0 ui_state_ble_connected ,pdata 
-0x3351 009952 store 2 ,mem_ui_state_map 
-0x3352 009953 branch app_lpm_mult_disable 
-:      009955 app_bb_event_hid_connected:
-0x3353 009956 fetch 2 ,mem_ui_state_map 
-0x3354 009957 set1 ui_state_bt_hid_conn ,pdata 
-0x3355 009958 store 2 ,mem_ui_state_map 
-0x3356 009959 rtn 
-:      009961 app_evt_button_long_pressed:
-0x3357 009962 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x3358 009963 set1 app_disc_by_button ,pdata 
-0x3359 009964 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x335a 009965 rtn 
-:      009967 app_event_ml2cap_conn_refused:
-0x335b 009968 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x335c 009969 set1 app_disc_l2cap_refused ,pdata 
-0x335d 009970 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x335e 009971 branch app_bt_disconnect 
-:      009974 app_evt_timer:
-0x335f 009975 bpatch patch18_7 ,mem_patch18 
-0x3360 009976 store 1 ,mem_app_evt_timer_count 
-:      009977 app_evt_100ms_loop:
-0x3361 009978 fetch 1 ,mem_app_evt_timer_count 
-0x3362 009979 rtn blank 
-0x3363 009980 increase -1 ,pdata 
-0x3364 009981 store 1 ,mem_app_evt_timer_count 
-0x3365 009982 call ui_button_polling 
-0x3366 009983 call app_lpm_wake_auto_lock_timer 
-0x3367 009984 call app_unsniff_delay_timer 
-0x3368 009985 call app_discovery_timer 
-0x3369 009986 call flash_write_spi_sm_timer 
-0x336a 009987 fetch 2 ,mem_cb_event_timer 
-0x336b 009988 call callback_func 
-0x336c 009989 branch app_evt_100ms_loop 
-:      009994 timer_single_step:
-0x336d 009995 ifetch 1 ,regc 
-0x336e 009996 rtn blank 
-0x336f 009997 pincrease -1 
-0x3370 009998 istore 1 ,regc 
-0x3371 009999 nrtn blank 
-0x3372 010000 copy regb ,pdata 
-0x3373 010001 branch callback_func 
-:      010005 timer_single_step_2b:
-0x3374 010006 ifetch 2 ,regc 
-0x3375 010007 rtn blank 
-0x3376 010008 pincrease -1 
-0x3377 010009 istore 2 ,regc 
-0x3378 010010 nrtn blank 
-0x3379 010011 copy regb ,pdata 
-0x337a 010012 branch callback_func 
-:      010014 app_power_timer:
-0x337b 010015 fetcht 2 ,mem_power_param_ptr 
-0x337c 010016 add temp ,power_timer_offset ,regc 
-0x337d 010017 arg app_power_timer_timeout ,regb 
-0x337e 010018 branch timer_single_step 
-:      010020 app_power_timer_timeout:
-0x337f 010021 call app_got_power_state_common 
-0x3380 010022 beq power_starting ,app_enter_power_stanby_state 
-:      010023 app_enter_power_off_state:
-0x3381 010024 branch app_enter_hibernate 
-:      010025 app_enter_power_stanby_state:
-0x3382 010026 setarg power_standby 
-0x3383 010027 istore 1 ,regc 
-0x3384 010028 add temp ,power_standby_cb_offset ,regb 
-:      010029 app_power_cb_common:
-0x3385 010030 ifetch 2 ,regb 
-0x3386 010031 branch callback_func 
-:      010033 app_unsniff_delay_timer:
-0x3387 010034 arg mem_unsniff2sniff_timer_count ,regc 
-0x3388 010035 arg app_unsniff_delay_timeout ,regb 
-0x3389 010036 branch timer_single_step 
-:      010038 app_unsniff_delay_timeout:
-0x338a 010039 call context_check_idle 
-0x338b 010040 branch app_bt_enter_sniff ,zero 
-0x338c 010041 rtn 
-:      010044 app_discovery_timer:
-0x338d 010045 arg mem_discovery_timeout_timer_count ,regc 
-0x338e 010046 arg app_discovery_timeout ,regb 
-0x338f 010047 branch timer_single_step_2b 
-:      010049 app_discovery_timeout:
-0x3390 010050 call app_bt_stop_discovery 
-0x3391 010051 call app_led_off 
-0x3392 010052 fetch 2 ,mem_cb_discovry_timeout 
-0x3393 010053 branch callback_func 
-:      010056 app_bb_event_reconn_failed:
-0x3394 010057 call app_disconn_reason_flag_clear 
-:      010058 app_clear_reconnect_flag:
-0x3395 010059 fetch 2 ,mem_ui_state_map 
-0x3396 010060 set0 ui_state_bt_reconnect ,pdata 
-0x3397 010061 store 2 ,mem_ui_state_map 
-0x3398 010062 rtn 
-:      010064 app_bb_event_bb_disconn:
-0x3399 010065 jam 0 ,mem_unsniff2sniff_timer_count 
-0x339a 010066 fetch 2 ,mem_ui_state_map 
-0x339b 010067 bbit1 ui_state_bt_reconnect ,app_bb_event_bb_reconn_disconn 
-0x339c 010068 isolate0 ui_state_bt_setup_complete ,pdata 
-0x339d 010069 call app_discard_event ,true 
-:      010070 app_bb_event_bb_reconn_disconn:
-0x339e 010071 bpatch patch19_0 ,mem_patch19 
-0x339f 010072 fetch 2 ,mem_ui_state_map 
-0x33a0 010073 set0 ui_state_bt_connected ,pdata 
-0x33a1 010074 set0 ui_state_bt_setup_complete ,pdata 
-0x33a2 010075 set0 ui_state_bt_hid_conn ,pdata 
-0x33a3 010076 set0 ui_state_bt_hid_handshake ,pdata 
-0x33a4 010077 set0 ui_state_bt_reconnect ,pdata 
-0x33a5 010078 store 2 ,mem_ui_state_map 
-0x33a6 010079 branch app_lpm_mult_disable 
-:      010081 app_bb_hibernate:
-0x33a7 010082 call app_disconn_reason_clear 
-0x33a8 010083 branch app_enter_hibernate 
-:      010086 app_disconn_reason_clear:
-0x33a9 010087 setarg 0 
-0x33aa 010088 store app_disc_rsn_size ,mem_app_disconn_reason 
-0x33ab 010089 rtn 
-:      010090 app_disconn_reason_flag_clear:
-0x33ac 010091 setarg 0 
-0x33ad 010092 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x33ae 010093 rtn 
-:      010095 app_disconn_reason_collect_bt:
-0x33af 010096 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x33b0 010097 store app_disc_rsn_size ,mem_app_disconn_reason 
-0x33b1 010098 setarg 0 
-0x33b2 010099 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x33b3 010100 rtn 
-:      010102 app_disconn_reason_collect_ble:
-0x33b4 010103 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x33b5 010104 set1 app_disc_ble ,pdata 
-0x33b6 010105 store app_disc_rsn_size ,mem_app_disconn_reason 
-0x33b7 010106 setarg 0 
-0x33b8 010107 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x33b9 010108 rtn 
-:      010116 app_check_sniff:
-0x33ba 010117 fetch 1 ,mem_ui_state_map 
-0x33bb 010118 isolate1 ui_state_bt_sniff ,pdata 
-0x33bc 010119 rtn 
-:      010127 app_initflag_store:
-0x33bd 010128 setarg eeprom_init_flag 
-:      010129 app_flag_store:
-0x33be 010130 store 2 ,mem_timeup 
-0x33bf 010131 bpatch patch19_1 ,mem_patch19 
-0x33c0 010132 arg 2 ,temp 
-0x33c1 010133 arg mem_timeup ,rega 
-0x33c2 010134 arg eeprom_module_init_flag ,regb 
-0x33c3 010135 branch iicd_write_eep_data 
-:      010138 app_initflag_check:
-0x33c4 010139 bpatch patch19_2 ,mem_patch19 
-0x33c5 010140 arg 2 ,temp 
-0x33c6 010141 arg mem_pdatatemp ,rega 
-0x33c7 010142 arg eeprom_module_init_flag ,regb 
-0x33c8 010143 call iicd_read_eep_data 
-0x33c9 010144 fetch 2 ,mem_pdatatemp 
-0x33ca 010145 arg eeprom_init_flag ,temp 
-0x33cb 010146 isub temp ,null 
-0x33cc 010147 rtn 
-:      010150 app_start_auto_sniff:
-0x33cd 010151 fetch 1 ,mem_unsniff2sniff_timer 
-0x33ce 010152 store 1 ,mem_unsniff2sniff_timer_count 
-0x33cf 010153 rtn 
-:      010155 app_get_lpm_wake_lock:
-0x33d0 010156 arg wake_lock_app ,queue 
-0x33d1 010157 branch lpm_get_wake_lock 
-:      010159 app_put_lpm_wake_lock:
-0x33d2 010160 arg wake_lock_app ,queue 
-0x33d3 010161 branch lpm_put_wake_lock 
-:      010163 app_lpm_wake_auto_lock:
-0x33d4 010164 jam lpm_wake_up_delay_timer ,mem_wake_up_delay_timer 
-0x33d5 010165 branch app_get_lpm_wake_lock 
-:      010167 app_lpm_wake_auto_lock_timer:
-0x33d6 010168 arg mem_wake_up_delay_timer ,regc 
-0x33d7 010169 arg app_put_lpm_wake_lock ,regb 
-0x33d8 010170 branch timer_single_step 
-:      010172 app_l2cap_flow_control_enable:
-0x33d9 010173 jam l2cap_flow_ctrl_enable ,mem_l2cap_flow_ctrl_flag 
-0x33da 010174 rtn 
-:      010176 app_l2cap_flow_control_disable:
-0x33db 010177 jam l2cap_flow_ctrl_disable ,mem_l2cap_flow_ctrl_flag 
-0x33dc 010178 rtn 
-:      010180 app_bt_set_pincode:
-0x33dd 010181 jam bt_cmd_set_pin_code ,mem_fifo_temp 
-0x33de 010182 branch ui_ipc_send_cmd 
-:      010184 app_bt_role_switch:
-0x33df 010185 jam bt_cmd_role_switch ,mem_fifo_temp 
-0x33e0 010186 branch ui_ipc_send_cmd 
-:      010188 app_bt_start_reconnect:
-0x33e1 010189 bpatch patch19_3 ,mem_patch19 
-0x33e2 010190 fetch 1 ,mem_app_connection_options 
-0x33e3 010191 store 1 ,mem_connection_options 
-0x33e4 010192 jam app_flag_reconnect ,mem_reconnect_flag 
-0x33e5 010193 jam bt_cmd_reconnect ,mem_fifo_temp 
-0x33e6 010194 branch ui_ipc_send_cmd 
-:      010196 app_bt_reconnect_cancel:
-0x33e7 010197 jam bt_cmd_bb_reconn_cancel ,mem_fifo_temp 
-0x33e8 010198 branch ui_ipc_send_cmd 
-:      010200 app_bt_disconnect:
-0x33e9 010201 jam bt_cmd_disconnect ,mem_fifo_temp 
-0x33ea 010202 branch ui_ipc_send_cmd 
-:      010204 app_bt_start_discovery_short:
-0x33eb 010205 fetch 2 ,mem_discovery_timeout 
-0x33ec 010206 store 2 ,mem_discovery_timeout_timer_count 
-:      010207 app_bt_start_discovery_led_blink:
-0x33ed 010208 call app_led_start_blink 
-:      010209 app_bt_start_discovery:
-0x33ee 010210 jam bt_cmd_start_discovery ,mem_fifo_temp 
-0x33ef 010211 branch ui_ipc_send_cmd 
-:      010213 app_bt_stop_discovery:
-0x33f0 010214 setarg 0 
-0x33f1 010215 store 2 ,mem_discovery_timeout_timer_count 
-0x33f2 010216 jam bt_cmd_stop_discovery ,mem_fifo_temp 
-0x33f3 010217 branch ui_ipc_send_cmd 
-:      010219 app_ble_start_direct_adv:
-0x33f4 010220 jam bt_cmd_start_direct_adv ,mem_fifo_temp 
-0x33f5 010221 branch ui_ipc_send_cmd 
-:      010223 app_ble_stop_direct_adv:
-0x33f6 010224 jam bt_cmd_stop_direct_adv ,mem_fifo_temp 
-0x33f7 010225 branch ui_ipc_send_cmd 
-:      010227 app_ble_stop_adv:
-0x33f8 010228 jam bt_cmd_stop_adv ,mem_fifo_temp 
-0x33f9 010229 branch ui_ipc_send_cmd 
-:      010231 app_ble_start_adv:
-0x33fa 010232 jam bt_cmd_start_adv ,mem_fifo_temp 
-0x33fb 010233 branch ui_ipc_send_cmd 
-:      010235 app_ble_start_scan:
-0x33fc 010236 jam bt_cmd_le_start_scan ,mem_fifo_temp 
-0x33fd 010237 branch ui_ipc_send_cmd 
-:      010239 app_ble_stop_scan:
-0x33fe 010240 jam bt_cmd_le_stop_scan ,mem_fifo_temp 
-0x33ff 010241 branch ui_ipc_send_cmd 
-:      010243 app_ble_start_conn:
-0x3400 010244 jam bt_cmd_le_start_conn ,mem_fifo_temp 
-0x3401 010245 branch ui_ipc_send_cmd 
-:      010247 app_ble_disconnect:
-0x3402 010248 jam bt_cmd_le_disconnect ,mem_fifo_temp 
-0x3403 010249 branch ui_ipc_send_cmd 
-:      010251 app_led_start_blink:
-0x3404 010252 jam bt_cmd_led_blink ,mem_fifo_temp 
-0x3405 010253 branch ui_ipc_send_cmd 
-:      010255 app_led_on:
-0x3406 010256 jam bt_cmd_led_on ,mem_fifo_temp 
-0x3407 010257 branch ui_ipc_send_cmd 
-:      010259 app_led_stop_blink:
-:      010260 app_led_off:
-0x3408 010261 jam bt_cmd_led_off ,mem_fifo_temp 
-0x3409 010262 branch ui_ipc_send_cmd 
-:      010264 app_enter_hibernate:
-0x340a 010265 jam bt_cmd_enter_hibernate ,mem_fifo_temp 
-0x340b 010266 branch ui_ipc_send_cmd 
-:      010268 app_bt_sniff_exit:
-0x340c 010269 jam bt_cmd_exit_sniff ,mem_fifo_temp 
-0x340d 010270 branch ui_ipc_send_cmd 
-:      010272 app_bt_enter_sniff:
-0x340e 010273 jam bt_cmd_enter_sniff ,mem_fifo_temp 
-0x340f 010274 branch ui_ipc_send_cmd 
-:      010276 app_ble_store_reconn_info:
-0x3410 010277 jam bt_cmd_store_reconn_info_le ,mem_fifo_temp 
-0x3411 010278 branch ui_ipc_send_cmd 
-:      010280 app_bt_store_reconn_info:
-0x3412 010281 jam bt_cmd_store_reconn_info_bt ,mem_fifo_temp 
-0x3413 010282 branch ui_ipc_send_cmd 
-:      010284 app_store_reconn_info:
-0x3414 010285 jam bt_cmd_store_reconn_info ,mem_fifo_temp 
-0x3415 010286 branch ui_ipc_send_cmd 
-:      010288 app_lpm_mult_enable:
-0x3416 010289 set1 mark_lpm_mult_enable ,mark 
-0x3417 010290 rtn 
-:      010292 app_lpm_mult_disable:
-0x3418 010293 set0 mark_lpm_mult_enable ,mark 
-0x3419 010294 rtn 
-:      010314 app_button_long_pressed:
-0x341a 010315 call app_got_power_state_common 
-0x341b 010316 beq power_standby ,app_power_shutting_down 
-:      010317 app_power_starting:
-0x341c 010318 setarg power_starting 
-0x341d 010319 istore 1 ,regc 
-0x341e 010320 add temp ,power_starting_timeout_offset ,rega 
-0x341f 010321 add temp ,power_starting_cb_offset ,regb 
-:      010322 app_power_common:
-0x3420 010323 ifetcht 1 ,rega 
-0x3421 010324 increase 1 ,regc 
-0x3422 010325 istoret 1 ,regc 
-0x3423 010326 branch app_power_cb_common 
-:      010328 app_power_shutting_down:
-0x3424 010329 setarg power_off 
-0x3425 010330 istore 1 ,regc 
-0x3426 010331 fetch 2 ,mem_ui_state_map 
-0x3427 010332 bbit0 ui_state_ble_connected ,app_power_off_end 
-0x3428 010333 call app_ble_disconnect 
-:      010334 app_power_off_end:
-0x3429 010335 fetcht 2 ,mem_power_param_ptr 
-0x342a 010336 add temp ,power_off_timeout_offset ,rega 
-0x342b 010337 add temp ,power_off_cb_offset ,regb 
-0x342c 010338 branch app_power_common 
-:      010340 app_got_power_state_common:
-0x342d 010341 fetcht 2 ,mem_power_param_ptr 
-0x342e 010342 add temp ,power_state_offset ,regc 
-0x342f 010343 ifetch 1 ,regc 
-0x3430 010344 rtn 
-:      010346 app_event_button_up:
-0x3431 010347 call app_got_power_state_common 
-0x3432 010348 bne power_off ,app_power_release 
-0x3433 010349 branch app_enter_hibernate 
-:      010350 app_power_release:
-0x3434 010351 add temp ,ui_butten_up_cb_offset ,regb 
-0x3435 010352 branch app_power_cb_common 
-:      010354 antilost_init:
-0x3436 010355 rtn wake 
-0x3437 010356 jam 0x00 ,core_gpio_sel1 
-0x3438 010357 setarg antilost_le_before_hibernate 
-0x3439 010358 store 2 ,mem_cb_before_hibernate 
-0x343a 010359 setarg keyscan_process_lpm_before 
-0x343b 010360 store 2 ,mem_cb_before_lpm 
-0x343c 010361 setarg antilost_idle_process 
-0x343d 010362 store 2 ,mem_cb_idle_process 
-0x343e 010363 setarg antilost_le_conn_process 
-0x343f 010364 store 2 ,mem_cb_le_process 
-0x3440 010365 setarg antilost_bb_event_process 
-0x3441 010366 store 2 ,mem_cb_bb_event_process 
-0x3442 010367 setarg antilost_le_bb_event_timer 
-0x3443 010368 store 2 ,mem_cb_event_timer 
-0x3444 010369 setarg antilost_le_notification 
-0x3445 010370 store 2 ,mem_cb_ble_transmit 
-0x3446 010371 setarg antilost_lpm_lock_process 
-0x3447 010372 store 2 ,mem_cb_check_wakelock 
-0x3448 010373 setarg antilost_le_receive_data_process 
-0x3449 010374 store 2 ,mem_cb_att_write 
-0x344a 010375 bpatch patch19_4 ,mem_patch19 
-0x344b 010376 call antilost_buzzer_pwm_init 
-0x344c 010377 call keyscan_key_init 
-0x344d 010378 call antilost_adc_init 
-0x344e 010379 call ui_led_init_global 
-0x344f 010380 call ui_button_init 
-0x3450 010381 setarg antilost_key_up_down 
-0x3451 010382 store 2 ,mem_cb_antl_key 
-0x3452 010383 setarg antilost_power_off_cb 
-0x3453 010384 store 2 ,mem_antl_power_off_cb 
-0x3454 010385 setarg antilost_power_starting_cb 
-0x3455 010386 store 2 ,mem_antl_power_starting_cb 
-0x3456 010387 setarg antilost_power_standby_cb 
-0x3457 010388 store 2 ,mem_antl_power_standby_cb 
-0x3458 010389 setarg antilost_led_on_cb 
-0x3459 010390 store 2 ,mem_antl_led_cb_on 
-0x345a 010391 setarg antilost_led_off_cb 
-0x345b 010392 store 2 ,mem_antl_led_cb_off 
-0x345c 010393 setarg antilost_buzzer_on 
-0x345d 010394 store 2 ,mem_antl_buzzer_cb_on 
-0x345e 010395 setarg antilost_buzzer_off 
-0x345f 010396 store 2 ,mem_antl_buzzer_cb_off 
-0x3460 010397 fetch 2 ,mem_ui_state_map 
-0x3461 010398 rtnbit1 ui_state_btn_down 
-0x3462 010399 branch app_enter_hibernate 
-:      010401 antilost_le_before_hibernate:
-0x3463 010402 call antilost_led_buzzer_stop_blink 
-0x3464 010403 branch app_enter_hibernate 
-:      010405 antilost_le_notification:
-0x3465 010406 call le_fifo_check_nearly_full 
-0x3466 010407 nrtn blank 
-0x3467 010408 arg mem_temp_block5 ,rega 
-0x3468 010409 call queue_pop 
-0x3469 010410 nrtn user 
-0x346a 010411 arg mem_temp_block5 ,contr 
-0x346b 010412 branch le_send_notify_from_list 
-:      010414 antilost_power_standby_cb:
-0x346c 010415 fetch 2 ,mem_antl_le_sleep_timeout 
-0x346d 010416 store 2 ,mem_antl_le_sleep_timer 
-0x346e 010417 jam 1 ,mem_antl_key_scan_enable 
-0x346f 010418 branch antilost_fast_adv_start 
-:      010420 antilost_lpm_lock_process:
-0x3470 010421 fetch 1 ,mem_antl_key_state 
-0x3471 010422 beq 1 ,antilost_lpm_ctrl_for_led_buzzer 
-0x3472 010423 fetch 2 ,mem_ui_state_map 
-0x3473 010424 bbit0 ui_state_ble_connected ,antilost_lpm_ctrl_for_led_buzzer 
-0x3474 010425 fetch 1 ,mem_antl_lost_mode 
-0x3475 010426 beq 1 ,app_get_lpm_wake_lock 
-0x3476 010427 fetch 1 ,mem_antl_queue_curr_num 
-0x3477 010428 nbranch app_get_lpm_wake_lock ,blank 
-0x3478 010429 branch app_put_lpm_wake_lock 
-:      010431 antilost_lpm_ctrl_for_led_buzzer:
-0x3479 010432 fetch 1 ,mem_antl_led_state 
-0x347a 010433 fetcht 1 ,mem_antl_buzzer_state 
-0x347b 010434 ior temp ,pdata 
-0x347c 010435 beq 1 ,app_get_lpm_wake_lock 
-0x347d 010436 branch app_put_lpm_wake_lock 
-:      010438 antilost_bb_event_process:
-0x347e 010439 copy regc ,pdata 
-0x347f 010440 beq bt_evt_button_up ,app_event_button_up 
-0x3480 010441 beq bt_evt_button_long_pressed ,app_button_long_pressed 
-0x3481 010442 beq bt_evt_le_connected ,antilost_le_process_conn 
-0x3482 010443 beq bt_evt_le_disconnected ,antilost_le_process_discon 
-0x3483 010444 beq bt_evt_le_parse_conn_papa_update_rsp ,antilost_le_conn_param_update_rsp_recieved 
-0x3484 010445 rtn 
-:      010446 antilost_le_conn_param_update_rsp_recieved:
-0x3485 010447 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
-0x3486 010448 beq ble_signaling_connect_parameter_update_rejected ,antilost_le_conn_param_rejected 
-:      010449 antilost_le_conn_param_accepted:
-0x3487 010450 fetch 2 ,mem_le_new_connslavelatency 
-0x3488 010451 branch antilost_master_nonsupport_latency ,blank 
-:      010452 antilost_le_conn_param_updata_procedure_sucsess:
-0x3489 010453 jam conn_param_updata_procedure_complete ,mem_antl_conn_updata_procedure_state 
-0x348a 010454 jam 60 ,mem_antl_conn_update_timer 
-0x348b 010455 rtn 
-:      010457 antilost_le_conn_param_rejected:
-0x348c 010458 fetch 2 ,mem_le_latency 
-0x348d 010459 branch antilost_conn_param_updata_procedure_faild ,blank 
-:      010460 antilost_conn_param_retransimiting:
-0x348e 010461 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
-0x348f 010462 fetcht 2 ,mem_interval_increment 
-0x3490 010463 fetch 2 ,mem_le_interval_min 
-0x3491 010464 iadd temp ,pdata 
-0x3492 010465 store 2 ,mem_le_interval_min 
-0x3493 010466 copy pdata ,rega 
-0x3494 010467 fetch 2 ,mem_le_interval_max 
-0x3495 010468 iadd temp ,pdata 
-0x3496 010469 store 2 ,mem_le_interval_max 
-0x3497 010470 iadd rega ,pdata 
-0x3498 010471 rshift pdata ,temp 
-0x3499 010472 fetch 2 ,mem_antl_le_unnormal_interval_max 
-0x349a 010473 idiv temp 
-0x349b 010474 call wait_div_end 
-0x349c 010475 quotient pdata 
-0x349d 010476 store 2 ,mem_le_latency 
-0x349e 010477 jam 1 ,mem_antl_send_updata_le_param_timer 
-0x349f 010478 rtn 
-:      010479 antilost_conn_param_updata_procedure_faild:
-0x34a0 010480 jam conn_param_updata_procedure_faild ,mem_antl_conn_updata_procedure_state 
-0x34a1 010481 rtn 
-:      010483 antilost_master_nonsupport_latency:
-0x34a2 010484 jam 0 ,mem_lpm_mult 
-0x34a3 010485 jam 0 ,mem_antl_send_updata_le_param_timer 
-0x34a4 010486 fetch 2 ,mem_le_new_conninterval 
-0x34a5 010487 fetcht 2 ,mem_antl_le_unnormal_interval_min 
-0x34a6 010488 isub temp ,null 
-0x34a7 010489 setflag positive ,0 ,rega 
-0x34a8 010490 fetch 2 ,mem_antl_le_unnormal_interval_max 
-0x34a9 010491 fetcht 2 ,mem_le_new_conninterval 
-0x34aa 010492 isub temp ,pdata 
-0x34ab 010493 setflag positive ,1 ,rega 
-0x34ac 010494 compare 0x03 ,rega ,0x03 
-0x34ad 010495 rtn true 
-0x34ae 010496 fetch 8 ,mem_antl_le_unnormal_interval_min 
-0x34af 010497 store 8 ,mem_le_interval_min 
-0x34b0 010498 jam 1 ,mem_antl_send_updata_le_param_timer 
-0x34b1 010499 rtn 
-:      010502 antilost_le_bb_event_timer:
-0x34b2 010504 call app_power_timer 
-0x34b3 010505 call antilost_double_click_timer 
-0x34b4 010506 call antilost_le_fast_adv_timer 
-0x34b5 010507 call antilost_le_sleep_timer 
-0x34b6 010508 call antilost_app_updata_le_param_timer 
-0x34b7 010509 call antilost_conn_update_timer 
-0x34b8 010510 branch antilost_adc_check_timer 
-:      010513 antilost_double_click_timer:
-0x34b9 010514 arg mem_double_click_timer ,regc 
-0x34ba 010515 arg antilost_double_click_timeout ,regb 
-0x34bb 010516 branch timer_single_step 
-:      010517 antilost_double_click_timeout:
-0x34bc 010518 jam 0 ,mem_butten_click_cnt 
-0x34bd 010519 rtn 
-:      010520 antilost_le_fast_adv_timer:
-0x34be 010521 arg mem_antl_fast_adv_timer ,regc 
-0x34bf 010522 arg antilost_le_fast_adv_timeout ,regb 
-0x34c0 010523 branch timer_single_step_2b 
-:      010524 antilost_le_fast_adv_timeout:
-0x34c1 010525 arg mem_antl_slow_adv_led_style ,regc 
-0x34c2 010526 arg mem_antl_slow_adv_lpm_interval ,regb 
-0x34c3 010527 branch antilost_adv_start_common 
-:      010530 antilost_conn_update_timer:
-0x34c4 010531 arg mem_antl_conn_update_timer ,regc 
-0x34c5 010532 arg antilost_conn_update_timer_time_out ,regb 
-0x34c6 010533 branch timer_single_step 
-:      010535 antilost_conn_update_timer_time_out:
-0x34c7 010536 fetch 2 ,mem_le_latency 
-0x34c8 010537 store 1 ,mem_lpm_mult 
-0x34c9 010538 rtn 
-:      010539 antilost_app_updata_le_param_timer:
-0x34ca 010540 arg mem_antl_send_updata_le_param_timer ,regc 
-0x34cb 010541 arg antilost_app_updata_le_param_timeout ,regb 
-0x34cc 010542 branch timer_single_step 
-:      010543 antilost_app_updata_le_param_timeout:
-0x34cd 010544 fetch 1 ,mem_le_state 
-0x34ce 010545 compare 0 ,pdata ,0x60 
-0x34cf 010546 nbranch antilost_wait_for_updata_param_instant_expire ,true 
-0x34d0 010547 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
-0x34d1 010548 call app_lpm_mult_enable 
-0x34d2 010549 branch le_l2cap_tx_update_req 
-:      010550 antilost_wait_for_updata_param_instant_expire:
-0x34d3 010551 jam 1 ,mem_antl_send_updata_le_param_timer 
-0x34d4 010552 rtn 
-:      010554 antilost_le_sleep_timer:
-0x34d5 010555 arg mem_antl_le_sleep_timer ,regc 
-0x34d6 010556 arg antilost_le_sleep_timer_timeout ,regb 
-0x34d7 010557 branch timer_single_step_2b 
-:      010560 antilost_le_sleep_timer_timeout:
-0x34d8 010561 branch app_button_long_pressed 
-:      010563 antilost_adc_check_timer:
-0x34d9 010566 arg mem_adc_timer ,regc 
-0x34da 010567 arg antilost_adc_check_timer_timeout ,regb 
-0x34db 010568 branch timer_single_step_2b 
-:      010569 antilost_adc_check_timer_timeout:
-0x34dc 010570 fetch 2 ,mem_adc_timeout 
-0x34dd 010571 store 2 ,mem_adc_timer 
-0x34de 010572 branch antilost_battery_process 
-:      010575 antilost_le_process_conn:
-0x34df 010576 fetch 2 ,mem_adc_timeout 
-0x34e0 010577 store 2 ,mem_adc_timer 
-0x34e1 010578 setarg 0 
-0x34e2 010579 store 2 ,mem_antl_fast_adv_timer 
-0x34e3 010580 store 2 ,mem_antl_le_sleep_timer 
-0x34e4 010581 call antilost_alert_off 
-0x34e5 010582 call antilost_led_buzzer_stop_blink 
-0x34e6 010583 jam 0 ,mem_lpm_mult 
-0x34e7 010584 branch app_ble_stop_adv 
-:      010587 antilost_le_process_discon:
-0x34e8 010590 setarg 0 
-0x34e9 010591 store 4 ,mem_adc_timer 
-0x34ea 010592 store 3 ,mem_antl_conn_updata_procedure_state 
-0x34eb 010593 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
-0x34ec 010595 jam 1 ,mem_alarm_config_notfy_cnt 
-0x34ed 010596 fetch 2 ,mem_antl_le_sleep_timeout 
-0x34ee 010597 store 2 ,mem_antl_le_sleep_timer 
-0x34ef 010598 call queue_init 
-0x34f0 010599 fetch 1 ,mem_antl_power_state 
-0x34f1 010600 rtneq power_off 
-0x34f2 010601 call antilost_fast_adv_start 
-0x34f3 010602 branch antilost_on_off_alarm_after_disconn 
-:      010605 antilost_le_conn_process:
-0x34f4 010607 branch antilost_key_process 
-:      010609 antilost_idle_process:
-0x34f5 010611 fetch 1 ,mem_antl_power_state 
-0x34f6 010612 rtnne power_standby 
-0x34f7 010613 branch antilost_key_process 
-:      010618 antilost_power_starting_cb:
-0x34f8 010619 arg mem_antl_power_starting_buzzer_style ,regc 
-0x34f9 010620 call antilost_buzzer_configuration 
-0x34fa 010621 arg mem_antl_power_starting_led_style ,regc 
-:      010622 antilost_power_common:
-0x34fb 010623 branch antilost_led_configuration 
-:      010625 antilost_power_off_cb:
-0x34fc 010626 jam off ,mem_le_adv_enable 
-0x34fd 010627 arg mem_antl_power_off_buzzer_style ,regc 
-0x34fe 010628 call antilost_buzzer_configuration 
-0x34ff 010629 arg mem_antl_power_off_led_style ,regc 
-0x3500 010630 branch antilost_power_common 
-:      010632 antilost_le_receive_data_process:
-0x3501 010633 fetch 1 ,mem_le_att_opcode 
-0x3502 010634 beq attop_write_request ,antilost_le_parse_att_write_request 
-0x3503 010635 rtn 
-:      010636 antilost_le_parse_att_write_request:
-0x3504 010637 fetch 2 ,mem_le_att_handle 
-0x3505 010639 beq new_spec_write_handle ,antilost_cmd_parse_for_application 
-0x3506 010640 beq new_spec_notification_enable_handle ,antilost_notify_alarm_config_first_time 
-0x3507 010641 rtn 
-:      010646 antilost_key_process:
-0x3508 010647 fetch 1 ,mem_antl_key_scan_enable 
-0x3509 010648 rtn blank 
-0x350a 010649 branch keyscan_key_process 
-:      010653 antilost_key_up_down:
-0x350b 010654 copy rega ,pdata 
-0x350c 010655 branch antilost_key_is_up ,blank 
-:      010656 antilost_key_is_down:
-0x350d 010657 copy queue ,pdata 
-0x350e 010658 beq 0 ,antilost_key0_down 
-0x350f 010659 rtn 
-:      010660 antilost_key_is_up:
-0x3510 010661 copy queue ,pdata 
-0x3511 010662 beq 0 ,antilost_key0_up 
-0x3512 010663 rtn 
-:      010665 antilost_key0_down:
-0x3513 010666 jam 1 ,mem_antl_key_state 
-0x3514 010667 arg mem_antl_key_buzzer_style ,regc 
-0x3515 010668 call antilost_buzzer_configuration 
-0x3516 010669 arg mem_antl_key_led_style ,regc 
-0x3517 010670 call antilost_led_configuration 
-0x3518 010671 fetch 2 ,mem_ui_state_map 
-0x3519 010672 bbit0 ui_state_ble_connected ,antilost_butten_down_while_disconn 
-0x351a 010673 branch antilost_butten_down_after_conn 
-:      010675 antilost_key0_up:
-0x351b 010676 jam 0 ,mem_antl_key_state 
-0x351c 010677 branch antilost_double_click_timer_init 
-:      010681 antilost_double_click_timer_init:
-0x351d 010682 fetch 1 ,mem_butten_click_cnt 
-0x351e 010683 rtnne 1 
-0x351f 010684 jam 5 ,mem_double_click_timer 
-0x3520 010685 rtn 
-:      010687 antilost_butten_down_after_conn:
-0x3521 010688 fetch 1 ,mem_butten_click_cnt 
-0x3522 010689 pincrease 1 
-0x3523 010690 store 1 ,mem_butten_click_cnt 
-0x3524 010691 beq 1 ,antilost_click_once 
-0x3525 010692 beq 2 ,antilost_click_twice 
-0x3526 010693 rtn 
-:      010694 antilost_click_once:
-0x3527 010695 call antilost_alert_off 
-0x3528 010696 jam opcode1_butten_click_once ,mem_antl_key0_press + 5 
-0x3529 010697 arg mem_antl_key0_press ,regc 
-0x352a 010698 branch antilost_prepare_data_and_send 
-:      010699 antilost_click_twice:
-0x352b 010700 jam 0 ,mem_butten_click_cnt 
-0x352c 010701 jam opcode2_butten_double_click ,mem_antl_key0_press + 5 
-0x352d 010702 arg mem_antl_key0_press ,regc 
-0x352e 010703 call antilost_prepare_data_and_send 
-0x352f 010704 fetch 1 ,mem_antl_lost_mode 
-0x3530 010705 beq 1 ,antilost_alert_on 
-0x3531 010706 rtn 
-:      010708 antilost_butten_down_while_disconn:
-0x3532 010709 fetch 2 ,mem_antl_le_sleep_timeout 
-0x3533 010710 store 2 ,mem_antl_le_sleep_timer 
-0x3534 010711 call antilost_alert_off 
-0x3535 010712 branch antilost_fast_adv_start 
-:      010715 antilost_cmd_parse_for_application:
-0x3536 010716 bpatch patch19_5 ,mem_patch19 
-0x3537 010717 call le_app_receive_data 
-0x3538 010718 ifetch 1 ,rega 
-0x3539 010719 beq opcode3_antl_start_alram ,antilost_on_of_alram 
-0x353a 010720 beq opcode7_antl_config_alram ,antilost_configuration_for_alram 
-0x353b 010721 rtn 
-:      010723 antilost_on_of_alram:
-0x353c 010724 fetch 1 ,mem_antl_lost_mode 
-0x353d 010725 beq anti_le_alarm_off ,antilost_alert_on 
-0x353e 010726 beq anti_le_alarm_on ,antilost_alert_off 
-0x353f 010727 rtn 
-:      010729 antilost_configuration_for_alram:
-0x3540 010730 ifetch 1 ,regb 
-0x3541 010731 beq 1 ,antilost_set_start_alarm_after_disconn 
-0x3542 010732 beq 0 ,antilost_set_no_alarm_after_disconn 
-0x3543 010733 rtn 
-:      010740 antilost_prepare_data_and_send:
-0x3544 010741 bpatch patch19_6 ,mem_patch19 
-0x3545 010742 fetch 1 ,mem_client_characteristic_configuration_descriptor 
-0x3546 010743 isolate1 notification_enable_bit ,pdata 
-0x3547 010744 nrtn true 
-0x3548 010745 add regc ,6 ,contr 
-0x3549 010746 ifetch 2 ,contr 
-0x354a 010747 byteswap pdata ,pdata 
-0x354b 010748 add pdata ,5 ,loopcnt 
-0x354c 010749 add regc ,3 ,contr 
-0x354d 010750 call calc_check_sum_start 
-0x354e 010751 istore 1 ,contr 
-0x354f 010752 copy regc ,rega 
-0x3550 010753 branch queue_push 
-:      010759 antilost_alert_on:
-0x3551 010760 fetch 1 ,mem_antl_power_state 
-0x3552 010761 rtn blank 
-0x3553 010762 jam 1 ,mem_antl_lost_mode 
-0x3554 010763 arg mem_antl_alert_buzzer_stlye ,regc 
-0x3555 010764 call antilost_buzzer_configuration 
-0x3556 010765 arg mem_antl_alert_led_stlye ,regc 
-0x3557 010766 call antilost_led_configuration 
-0x3558 010767 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
-0x3559 010768 jam 1 ,mem_antl_key0_release + 8 
-0x355a 010769 arg mem_antl_key0_release ,regc 
-0x355b 010770 branch antilost_prepare_data_and_send 
-:      010771 antilost_alert_off:
-0x355c 010772 fetch 1 ,mem_antl_lost_mode 
-0x355d 010773 rtn blank 
-0x355e 010774 jam 0 ,mem_antl_lost_mode 
-0x355f 010775 call antilost_led_buzzer_stop_blink 
-0x3560 010776 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
-0x3561 010777 jam 0 ,mem_antl_key0_release + 8 
-0x3562 010778 arg mem_antl_key0_release ,regc 
-0x3563 010779 branch antilost_prepare_data_and_send 
-:      010781 antilost_set_start_alarm_after_disconn:
-0x3564 010782 jam 1 ,mem_alarm_config 
-0x3565 010783 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
-0x3566 010784 jam 1 ,mem_antl_key0_release + 8 
-0x3567 010785 arg mem_antl_key0_release ,regc 
-0x3568 010786 branch antilost_prepare_data_and_send 
-:      010787 antilost_set_no_alarm_after_disconn:
-0x3569 010788 jam 0 ,mem_alarm_config 
-0x356a 010789 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
-0x356b 010790 jam 0 ,mem_antl_key0_release + 8 
-0x356c 010791 arg mem_antl_key0_release ,regc 
-0x356d 010792 branch antilost_prepare_data_and_send 
-:      010793 antilost_on_off_alarm_after_disconn:
-0x356e 010794 fetch 1 ,mem_alarm_config 
-0x356f 010795 rtn blank 
-0x3570 010796 branch antilost_alert_on 
-:      010798 antilost_notify_alarm_config_first_time:
-0x3571 010799 ifetch 2 ,rega 
-0x3572 010800 store 2 ,mem_client_characteristic_configuration_descriptor 
-0x3573 010801 isolate1 notification_enable_bit ,pdata 
-0x3574 010802 nrtn true 
-0x3575 010803 fetch 1 ,mem_alarm_config_notfy_cnt 
-0x3576 010804 rtn blank 
-0x3577 010805 jam 0 ,mem_alarm_config_notfy_cnt 
-0x3578 010806 fetch 8 ,mem_antl_le_interval_min 
-0x3579 010807 store 8 ,mem_le_interval_min 
-0x357a 010808 jam 2 ,mem_antl_send_updata_le_param_timer 
-0x357b 010809 call antilost_battery_process 
-0x357c 010810 call antilost_battery_calculate_end 
-0x357d 010811 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
-0x357e 010812 fetch 1 ,mem_alarm_config 
-0x357f 010813 store 1 ,mem_antl_key0_release + 8 
-0x3580 010814 arg mem_antl_key0_release ,regc 
-0x3581 010815 branch antilost_prepare_data_and_send 
-:      010819 antilost_buzzer_configuration:
-0x3582 010820 arg 1 ,rega 
-0x3583 010821 branch antilost_configuration_common 
-:      010822 antilost_led_configuration:
-0x3584 010823 arg 0 ,rega 
-:      010824 antilost_configuration_common:
-0x3585 010825 branch antilost_led_buzzer_style_configuration 
-:      010827 antilost_led_buzzer_stop_blink:
-0x3586 010828 arg 0 ,rega 
-0x3587 010829 call ui_led_blink_stop_global 
-0x3588 010830 arg 1 ,rega 
-0x3589 010831 call ui_led_blink_stop_global 
-0x358a 010832 fetch 1 ,mem_buzzer_pwm_conf 
-0x358b 010833 branch pwm_disable 
-:      010835 antilost_led_buzzer_style_configuration:
-0x358c 010836 call calc_curr_struct_prt 
-0x358d 010837 arg 7 ,loopcnt 
-0x358e 010838 branch ui_led_set_style_global + 2 
-:      010842 antilost_fast_adv_start:
-0x358f 010843 arg mem_antl_fast_adv_led_style ,regc 
-0x3590 010844 arg mem_antl_lpm_interval ,regb 
-:      010845 antilost_adv_start_common:
-0x3591 010846 call antilost_adv_interval_lpm_interval_set 
-0x3592 010847 call antilost_led_configuration 
-0x3593 010848 fetch 2 ,mem_antl_fast_adv_timeout 
-0x3594 010849 store 2 ,mem_antl_fast_adv_timer 
-0x3595 010850 branch app_ble_start_adv 
-:      010852 antilost_adv_interval_lpm_interval_set:
-0x3596 010853 ifetch 2 ,regb 
-0x3597 010854 store 2 ,mem_lpm_interval 
-0x3598 010855 ifetch 2 ,contr 
-0x3599 010856 store 2 ,mem_le_adv_interval 
-0x359a 010857 rtn 
-:      010859 antilost_buzzer_pwm_init:
-0x359b 010860 arg 0 ,rega 
-0x359c 010861 call pwm_init 
-0x359d 010862 fetch 6 ,mem_buzzer_pwm_conf 
-0x359e 010863 store 6 ,mem_pdatatemp 
-0x359f 010864 call pwm_out_set 
-0x35a0 010865 fetch 1 ,mem_buzzer_pwm_conf 
-0x35a1 010866 branch pwm_disable 
-:      010868 antilost_led_on_cb:
-0x35a2 010869 jam 1 ,mem_antl_led_state 
-0x35a3 010870 rtn 
-:      010871 antilost_led_off_cb:
-0x35a4 010872 jam 0 ,mem_antl_led_state 
-0x35a5 010873 rtn 
-:      010877 antilost_buzzer_off:
-0x35a6 010878 jam 0 ,mem_antl_buzzer_state 
-0x35a7 010879 fetch 1 ,mem_buzzer_pwm_conf 
-0x35a8 010880 branch pwm_disable 
-:      010882 antilost_buzzer_on:
-0x35a9 010883 jam 1 ,mem_antl_buzzer_state 
-0x35aa 010884 fetch 6 ,mem_buzzer_pwm_conf 
-0x35ab 010885 store 6 ,mem_pdatatemp 
-0x35ac 010886 branch pwm_out_set 
-:      010890 antilost_adc_init:
-0x35ad 010891 jam 0 ,mem_adc_config_flag 
-0x35ae 010892 branch adc_init_data 
-:      010894 antilost_battery_process:
-0x35af 010895 call adc_set_mode 
-0x35b0 010896 call vdd_calculate_by_mode 
-0x35b1 010897 store 2 ,mem_battery_current_voltage 
-0x35b2 010898 arg mem_battery_calculate_set ,rega 
-0x35b3 010899 call adc_bat_percent_lowpower_out 
-0x35b4 010900 store 1 ,mem_voltage_remain_percent 
-0x35b5 010901 beq 0 ,antilost_low_battery 
-0x35b6 010902 sub pdata ,0x64 ,null 
-0x35b7 010903 nbranch antilost_full_battery ,positive 
-0x35b8 010904 store 1 ,mem_antl_key0_release + 8 
-:      010905 antilost_battery_calculate_end:
-0x35b9 010906 jam opcode5_batter_information ,mem_antl_key0_release + 5 
-0x35ba 010907 arg mem_antl_key0_release ,regc 
-0x35bb 010908 branch antilost_prepare_data_and_send 
-:      010909 antilost_full_battery:
-0x35bc 010910 jam 100 ,mem_antl_key0_release + 8 
-0x35bd 010911 branch antilost_battery_calculate_end 
-:      010913 antilost_low_battery:
-0x35be 010914 branch app_button_long_pressed 
-:      010918 car_init:
-0x35bf 010919 rtn wake 
-0x35c0 010920 hfetch 1 ,core_gpio_sel1 
-0x35c1 010921 and_into 0xf0 ,pdata 
-0x35c2 010922 hstore 1 ,core_gpio_sel1 
-0x35c3 010923 setarg car_le_before_hibernate 
-0x35c4 010924 store 2 ,mem_cb_before_hibernate 
-0x35c5 010926 setarg car_le_process_lpm_before 
-0x35c6 010927 store 2 ,mem_cb_before_lpm 
-0x35c7 010929 setarg app_enter_hibernate 
-0x35c8 010930 store 2 ,mem_cb_discovry_timeout 
-0x35c9 010932 setarg car_scale_process_idle 
-0x35ca 010933 store 2 ,mem_cb_idle_process 
-0x35cb 010935 setarg car_scale_process_bb_event 
-0x35cc 010936 store 2 ,mem_cb_bb_event_process 
-0x35cd 010938 setarg app_get_lpm_wake_lock 
-0x35ce 010939 store 2 ,mem_cb_check_wakelock 
-0x35cf 010941 setarg car_le_receive_data 
-0x35d0 010942 store 2 ,mem_cb_att_write 
-0x35d1 010944 setarg car_le_bb_event_timer 
-0x35d2 010945 store 2 ,mem_cb_event_timer 
-0x35d3 010947 call g24_head_ptr2regc 
-0x35d4 010948 setarg car_24g_receive_data 
-0x35d5 010949 add regc ,offset_24g_cb_rxdata_type1 ,contw 
-0x35d6 010950 istore 2 ,contw 
-0x35d7 010952 setarg car_power_off_signal 
-0x35d8 010953 store 2 ,mem_remote_car_power_off_cb 
-0x35d9 010955 setarg car_soft_switch_power_on_signal 
-0x35da 010956 store 2 ,mem_remote_car_power_standby_cb 
-0x35db 010958 bpatch patch19_7 ,mem_patch19 
-0x35dc 010959 call car_init_environment 
-0x35dd 010960 call queue_init 
-0x35de 010961 jam 2 ,mem_lpm_mult 
-0x35df 010962 jam power_on ,mem_car_24g_received_pac 
-0x35e0 010963 fetch 1 ,mem_car_config_soft_switch_enable 
-0x35e1 010964 store 1 ,mem_car_hard_soft_switch 
-0x35e2 010965 beq hard_switch ,car_hard_switch_power_on_signal 
-0x35e3 010966 fetch 1 ,mem_car_config_soft_switch_gpio 
-0x35e4 010967 store 1 ,mem_ui_button_gpio 
-0x35e5 010968 jam off ,mem_le_adv_enable 
-:      010969 car_soft_switch_power_on_init:
-0x35e6 010970 call car_ui_led_init 
-0x35e7 010971 call ui_button_init 
-0x35e8 010972 call ui_button_polling 
-0x35e9 010973 jam power_starting ,mem_car_power_state 
-0x35ea 010974 fetch 2 ,mem_ui_state_map 
-0x35eb 010975 rtnbit1 ui_state_btn_down 
-0x35ec 010976 branch app_enter_hibernate 
-:      010978 car_power_off_signal:
-0x35ed 010979 branch car_ui_led_init 
-:      010981 car_hard_switch_power_on_signal:
-0x35ee 010982 jam power_standby ,mem_car_power_state 
-:      010983 car_soft_switch_power_on_signal:
-0x35ef 010984 jam on ,mem_le_adv_enable 
-0x35f0 010985 call car_ui_led_init 
-0x35f1 010986 arg 0 ,rega 
-0x35f2 010987 call ui_led_blink_start_global 
-0x35f3 010989 setarg fast_adv_interval_value_car 
-0x35f4 010990 call shutter_ble_adv_interval_set 
-:      010991 car_le_modified_name_adv:
-0x35f5 010992 arg mem_le_name + 7 ,contw 
-0x35f6 010993 fetch 1 ,mem_le_lap 
-:      010994 car_name_loop:
-0x35f7 010995 and pdata ,0xF0 ,temp 
-0x35f8 010996 rshift4 temp ,temp 
-0x35f9 010997 call car_hex_to_ascii 
-0x35fa 010998 istoret 1 ,contw 
-0x35fb 010999 and pdata ,0x0F ,temp 
-0x35fc 011000 call car_hex_to_ascii 
-0x35fd 011001 istoret 1 ,contw 
-0x35fe 011002 call le_modified_name_att_list 
-0x35ff 011003 fetcht 1 ,mem_le_name_len 
-0x3600 011004 copy temp ,loopcnt 
-0x3601 011005 arg mem_le_adv_data + 2 ,contw 
-0x3602 011006 arg mem_le_name ,contr 
-0x3603 011007 call memcpy 
-:      011008 car_le_modified_name_scan:
-0x3604 011009 fetcht 1 ,mem_le_name_len 
-0x3605 011010 copy temp ,loopcnt 
-0x3606 011011 arg mem_le_scan_data + 2 ,contw 
-0x3607 011012 arg mem_le_name ,contr 
-0x3608 011013 branch memcpy 
-:      011014 car_hex_to_ascii:
-0x3609 011015 sub temp ,9 ,null 
-0x360a 011016 branch car_hex_num ,positive 
-0x360b 011017 add temp ,55 ,temp 
-0x360c 011018 rtn 
-:      011019 car_hex_num:
-0x360d 011020 add temp ,48 ,temp 
-0x360e 011021 rtn 
-:      011023 car_ui_led_init:
-0x360f 011024 fetch 1 ,mem_car_config_blood_led1_gpio 
-0x3610 011025 bne invalid_pin_num ,car_blood_led_gpio_set 
-:      011026 car_ui_led_init_1:
-0x3611 011027 fetch 1 ,mem_car_config_pairing_led_gpio 
-0x3612 011028 bne invalid_pin_num ,car_pairing_led_gpio_set 
-:      011029 car_ui_led_init_2:
-0x3613 011030 fetch 1 ,mem_car_config_low_voltage_led_gpio 
-0x3614 011031 bne invalid_pin_num ,car_low_voltage_led_gpio_set 
-:      011032 car_ui_led_init_3:
-0x3615 011033 fetch 1 ,mem_car_led_num 
-0x3616 011034 copy pdata ,loopcnt 
-0x3617 011035 setarg mem_car_led_map 
-0x3618 011036 copy pdata ,rega 
-:      011037 car_in_lp1:
-0x3619 011038 copy rega ,contr 
-0x361a 011039 ifetch 1 ,contr 
-0x361b 011040 copy contr ,rega 
-0x361c 011041 beq invalid_pin_num ,car_in_lp1_end 
-0x361d 011042 copy pdata ,temp 
-0x361e 011043 call gpio_config_output 
-:      011044 car_in_lp1_end:
-0x361f 011045 loop car_in_lp1 
-:      011046 car_ui_led_init_end:
-0x3620 011047 rtn 
-:      011048 car_blood_led_gpio_set:
-0x3621 011049 fetch 8 ,mem_car_config_blood_led1_gpio 
-0x3622 011050 store 8 ,mem_car_led_map + 2 
-0x3623 011051 branch car_ui_led_init_1 
-:      011052 car_pairing_led_gpio_set:
-0x3624 011053 store 1 ,mem_car_led_map 
-0x3625 011054 branch car_ui_led_init_2 
-:      011055 car_low_voltage_led_gpio_set:
-0x3626 011056 store 1 ,mem_car_led_map + 1 
-0x3627 011057 branch car_ui_led_init_3 
-:      011060 car_init_environment:
-0x3628 011061 arg 0 ,rega 
-0x3629 011062 call pwm_init 
-0x362a 011063 call car_ir_rx_init 
-0x362b 011064 call g24_receive_process_init 
-0x362c 011065 branch car_init_adc_hvin 
-:      011067 car_init_adc_hvin:
-0x362d 011068 jam 100 ,mem_car_notify_vdd_value_last 
-0x362e 011069 fetch 1 ,mem_car_config_low_voltage_led_gpio 
-0x362f 011070 store 1 ,mem_car_style2_struct_led_gpio 
-0x3630 011071 branch adc_init_data 
-:      011073 car_le_before_hibernate:
-0x3631 011074 call gpio_set_before_lpm_common 
-0x3632 011075 branch keyscan_process_lpm_before 
-:      011077 car_le_process_lpm_before:
-0x3633 011078 branch keyscan_process_lpm_before 
-:      011080 car_key_scan_process:
-0x3634 011083 branch keyscan_key_process 
-:      011085 car_scale_process_idle:
-0x3635 011086 call car_le_send_packet 
-0x3636 011087 call car_ir_receive_process 
-0x3637 011088 call car_g24_status_process 
-0x3638 011089 branch car_key_scan_process 
-:      011091 car_g24_status_process:
-0x3639 011092 fetch 2 ,mem_ui_state_map 
-0x363a 011093 rtnbit1 ui_state_ble_connected 
-0x363b 011094 fetch 1 ,mem_car_24g_received_pac 
-0x363c 011095 beq work_paired ,car_g24_connected_event 
-0x363d 011096 rtn 
-:      011097 car_g24_connected_event:
-0x363e 011098 fetch 1 ,mem_car_24g_status 
-0x363f 011099 rtneq work_paired 
-0x3640 011100 jam work_paired ,mem_car_24g_status 
-0x3641 011101 branch car_g24_connected 
-:      011103 car_le_send_packet:
-0x3642 011104 fetch 2 ,mem_ui_state_map 
-0x3643 011105 rtnbit0 ui_state_ble_connected 
-0x3644 011106 call le_fifo_check_nearly_full 
-0x3645 011107 nrtn blank 
-0x3646 011108 arg mem_car_pop_queue_buff ,rega 
-0x3647 011109 call queue_pop 
-0x3648 011110 nrtn user 
-0x3649 011111 arg mem_car_pop_queue_buff ,contr 
-0x364a 011112 branch le_send_notify_from_list 
-:      011114 car_scale_process_bb_event:
-0x364b 011115 copy regc ,pdata 
-0x364c 011116 beq bt_evt_button_up ,app_event_button_up 
-0x364d 011117 beq bt_evt_button_long_pressed ,app_button_long_pressed 
-0x364e 011118 beq bt_evt_le_connected ,car_scale_event_le_conn 
-0x364f 011119 beq bt_evt_le_disconnected ,car_scale_event_le_discon 
-0x3650 011120 rtn 
-:      011122 car_scale_event_le_conn:
-0x3651 011123 setarg disable_24g 
-0x3652 011124 call g24_store_mem_24g_mode 
-0x3653 011125 branch car_scale_process_conn 
-:      011126 car_g24_connected:
-0x3654 011127 fetch 2 ,mem_car_24g_no_data_timeout_count 
-0x3655 011128 store 2 ,mem_car_24g_no_data_timeout_timer 
-:      011129 car_scale_process_conn:
-0x3656 011130 jam 0x14 ,mem_car_notify_vdd_timer 
-0x3657 011131 jam 0 ,mem_lpm_mode 
-0x3658 011132 call app_ble_stop_adv 
-0x3659 011133 call app_lpm_mult_enable 
-0x365a 011134 fetch 1 ,mem_car_config_pairing_led_conn_status 
-0x365b 011135 beq 0x01 ,car_pairing_led_conn_status_setting 
-:      011136 car_scale_process_conn_next:
-0x365c 011137 arg 0 ,rega 
-0x365d 011138 branch ui_led_on_global 
-:      011139 car_pairing_led_conn_status_setting:
-0x365e 011140 arg 0 ,rega 
-0x365f 011141 branch ui_led_blink_stop_global 
-:      011143 car_scale_event_le_discon:
-0x3660 011144 setarg rx_24g 
-0x3661 011145 call g24_store_mem_24g_mode 
-:      011146 car_g24_disconnect:
-0x3662 011147 setarg 0 
-0x3663 011148 store 5 ,mem_car_led_control 
-0x3664 011149 setarg 4 
-0x3665 011150 call pwm_disable 
-0x3666 011151 setarg 5 
-0x3667 011152 call pwm_disable 
-0x3668 011153 setarg 20 
-0x3669 011154 call pwm_disable 
-0x366a 011155 setarg 21 
-0x366b 011156 call pwm_disable 
-0x366c 011157 setarg 22 
-0x366d 011158 call pwm_disable 
-0x366e 011159 setarg 7 
-0x366f 011160 call pwm_disable 
-0x3670 011161 call queue_init 
-0x3671 011162 jam 10 ,mem_motor1_speed 
-0x3672 011163 jam 10 ,mem_motor2_speed 
-0x3673 011164 jam 10 ,mem_motor3_speed 
-0x3674 011166 jam 2 ,mem_lpm_mult 
-0x3675 011167 arg 0 ,rega 
-0x3676 011168 call ui_led_blink_start_global 
-0x3677 011170 setarg fast_adv_interval_value_car 
-0x3678 011171 call shutter_ble_adv_interval_set 
-0x3679 011172 branch app_ble_start_adv 
-:      011174 car_le_bb_event_timer:
-0x367a 011176 call car_moto1_blank_data_timer 
-0x367b 011177 call car_moto2_blank_data_timer 
-0x367c 011178 call car_moto3_blank_data_timer 
-0x367d 011179 call app_power_timer 
-0x367e 011180 call car_led_control_timer 
-0x367f 011181 call car_notify_vdd_timer 
-0x3680 011182 call car_24g_no_data_timeout_timer 
-0x3681 011183 call car_ir_breakdown_timer 
-0x3682 011184 branch car_attack_shake_timer 
-:      011186 car_ir_breakdown_timer:
-0x3683 011187 arg mem_car_ir_breakdown_check_timer ,regc 
-0x3684 011188 arg car_ir_breakdown_timeout ,regb 
-0x3685 011189 branch timer_single_step 
-:      011190 car_ir_breakdown_timeout:
-0x3686 011191 call car_ir_gpio_get_status 
-0x3687 011192 nrtn true 
-0x3688 011193 jam 1 ,mem_car_ir_breakdown_flag 
-0x3689 011194 rtn 
-:      011196 car_24g_no_data_timeout_timer:
-0x368a 011197 arg mem_car_24g_no_data_timeout_timer ,regc 
-0x368b 011198 arg car_24g_no_data_timer_timeout ,regb 
-0x368c 011199 branch timer_single_step_2b 
-:      011200 car_24g_no_data_timer_timeout:
-0x368d 011201 jam work_search ,mem_car_24g_status 
-0x368e 011202 branch car_g24_disconnect 
-:      011204 car_attack_shake_timer:
-0x368f 011205 arg mem_car_attack_shake_timer ,regc 
-0x3690 011206 arg car_attack_shake ,regb 
-0x3691 011207 branch timer_single_step 
-:      011208 car_attack_shake:
-0x3692 011209 fetch 1 ,mem_car_attack_shake_flag 
-0x3693 011210 branch car_attack_shake_stop ,blank 
-0x3694 011211 jam 2 ,mem_car_attack_shake_timer 
-0x3695 011212 jam 0 ,mem_car_attack_shake_flag 
-0x3696 011213 setarg 0x0a02 
-0x3697 011214 store 2 ,mem_le_receive_payload 
-0x3698 011215 fetch 1 ,mem_car_config_device_select 
-0x3699 011216 beq device_battle_tank ,car_attack_shake_front_battle_tank 
-:      011217 car_attack_shake_front_battle_car:
-0x369a 011218 branch car_motor_control 
-:      011219 car_attack_shake_front_battle_tank:
-0x369b 011220 setarg 0x0a02 
-0x369c 011221 store 2 ,mem_le_receive_payload + 2 
-0x369d 011222 branch car_motor_control 
-:      011223 car_attack_shake_stop:
-0x369e 011224 setarg 0 
-0x369f 011225 store 4 ,mem_le_receive_payload 
-0x36a0 011226 branch car_motor_control 
-:      011228 car_notify_vdd_timer:
-0x36a1 011229 fetch 1 ,mem_car_config_bat_notify_enable 
-0x36a2 011230 rtn blank 
-0x36a3 011231 fetch 2 ,mem_ui_state_map 
-0x36a4 011232 bbit0 ui_state_ble_connected ,car_low_bat_led_off 
-0x36a5 011233 arg mem_car_notify_vdd_timer ,regc 
-0x36a6 011234 arg car_notify_vdd ,regb 
-0x36a7 011235 branch timer_single_step 
-:      011236 car_notify_vdd:
-0x36a8 011237 fetch 1 ,mem_car_notify_vdd_count 
-0x36a9 011238 store 1 ,mem_car_notify_vdd_timer 
-0x36aa 011239 fetch 1 ,mem_car_working_flag 
-0x36ab 011240 nrtn blank 
-:      011241 car_read_hvin:
-0x36ac 011242 call adc_set_mode 
-0x36ad 011243 call vdd_calculate_by_mode 
-0x36ae 011244 store 2 ,mem_vdd_now_vol 
-0x36af 011245 arg mem_vdd_calculate_set ,rega 
-0x36b0 011246 call adc_bat_percent_lowpower_out 
-0x36b1 011247 fetcht 1 ,mem_car_notify_vdd_value_last 
-0x36b2 011248 isub temp ,null 
-0x36b3 011249 branch car_notify_vdd_next2 ,positive 
-0x36b4 011250 store 1 ,mem_car_notify_vdd_value_last 
-0x36b5 011251 copy pdata ,temp 
-:      011252 car_notify_vdd_next2:
-0x36b6 011253 storet 1 ,mem_car_notify_vdd_percent 
-0x36b7 011254 fetch 1 ,mem_car_config_low_voltage_percent 
-0x36b8 011255 isub temp ,null 
-0x36b9 011256 call car_enter_low_bat ,positive 
-0x36ba 011257 storet 1 ,mem_notify_bat_payload 
-0x36bb 011258 arg 6 ,loopcnt 
-0x36bc 011259 arg mem_notify_bat_head ,contr 
-0x36bd 011260 call calc_check_sum_start 
-0x36be 011261 store 1 ,mem_notify_bat_check_sum 
-0x36bf 011262 arg mem_notify_bat_packet ,rega 
-0x36c0 011263 branch queue_push 
-:      011264 car_enter_low_bat:
-0x36c1 011265 fetch 1 ,mem_low_bat_flag 
-0x36c2 011266 nrtn blank 
-0x36c3 011267 jam 1 ,mem_low_bat_flag 
-0x36c4 011268 arg 1 ,rega 
-0x36c5 011269 branch ui_led_blink_start_global 
-:      011270 car_low_bat_led_off:
-0x36c6 011271 arg 1 ,rega 
-0x36c7 011272 branch ui_led_blink_stop_global 
-:      011274 car_led_control_timer:
-0x36c8 011275 arg mem_car_led_control_timer ,regc 
-0x36c9 011276 arg car_led_control ,regb 
-0x36ca 011277 branch timer_single_step 
-:      011278 car_led_control:
-0x36cb 011279 jam 5 ,mem_car_led_control_timer 
-0x36cc 011280 jam 0 ,mem_car_led_no 
-0x36cd 011281 fetch 1 ,mem_car_led_blink_status 
-0x36ce 011282 beq led_on ,car_led_control_blink_off 
-0x36cf 011283 beq led_off ,car_led_control_blink_on 
-:      011284 car_led_control_set:
-0x36d0 011285 arg mem_car_led_control ,contr 
-0x36d1 011286 copy contr ,rega 
-0x36d2 011287 arg 8 ,loopcnt 
-:      011288 car_led_control_timer_next:
-0x36d3 011289 copy rega ,contr 
-0x36d4 011290 ifetch 1 ,contr 
-0x36d5 011291 copy contr ,rega 
-0x36d6 011292 beq led_off ,car_led_control_off 
-0x36d7 011293 beq led_on ,car_led_control_on 
-0x36d8 011294 beq led_blink ,car_led_control_blink 
-:      011295 car_led_control_timer_next_2:
-0x36d9 011296 fetch 1 ,mem_car_led_no 
-0x36da 011297 increase 1 ,pdata 
-0x36db 011298 store 1 ,mem_car_led_no 
-0x36dc 011299 loop car_led_control_timer_next 
-0x36dd 011300 rtn 
-:      011301 car_led_switch:
-0x36de 011302 fetch 1 ,mem_car_led_no 
-0x36df 011303 arg mem_car_config_blood_led_gpio ,regb 
-0x36e0 011304 iadd regb ,regb 
-0x36e1 011305 ifetcht 1 ,regb 
-0x36e2 011306 rtn 
-:      011307 car_led_control_off:
-0x36e3 011308 call car_led_switch 
-0x36e4 011309 call gpio_out_inactive 
-0x36e5 011310 branch car_led_control_timer_next_2 
-:      011311 car_led_control_on:
-0x36e6 011312 call car_led_switch 
-0x36e7 011313 call gpio_out_active 
-0x36e8 011314 branch car_led_control_timer_next_2 
-:      011315 car_led_control_blink:
-0x36e9 011316 fetch 1 ,mem_car_led_blink_status 
-0x36ea 011317 beq led_on ,car_led_control_off 
-0x36eb 011318 branch car_led_control_on 
-:      011319 car_led_control_blink_on:
-0x36ec 011320 jam led_on ,mem_car_led_blink_status 
-0x36ed 011321 branch car_led_control_set 
-:      011322 car_led_control_blink_off:
-0x36ee 011323 jam led_off ,mem_car_led_blink_status 
-0x36ef 011324 branch car_led_control_set 
-:      011328 calc_check_sum_start:
-0x36f0 011329 arg 0 ,rega 
-:      011330 calc_check_sum_loop:
-0x36f1 011331 ifetch 1 ,contr 
-0x36f2 011332 iadd rega ,rega 
-0x36f3 011333 loop calc_check_sum_loop 
-:      011334 calc_check_sum_and:
-0x36f4 011335 and rega ,0xff ,pdata 
-0x36f5 011336 rtn 
-:      011338 car_le_receive_data:
-0x36f6 011339 fetch 1 ,mem_le_att_opcode 
-0x36f7 011340 beq attop_write_request ,car_le_parse_att_write_request 
-0x36f8 011341 rtn 
-:      011342 car_le_parse_att_write_request:
-0x36f9 011343 fetch 2 ,mem_le_att_handle 
-0x36fa 011344 beq att_car_control_handle ,car_control_le_receive 
-0x36fb 011345 rtn 
-:      011357 le_app_receive_data:
-0x36fc 011358 bpatch patch1a_0 ,mem_patch1a 
-0x36fd 011359 ifetch 5 ,rega 
-0x36fe 011360 store 5 ,mem_app_receive_temp 
-0x36ff 011361 fetch 2 ,mem_app_receive_temp 
-0x3700 011362 arg le_receive_packet_head ,temp 
-0x3701 011363 isub temp ,null 
-0x3702 011364 nrtn zero 
-0x3703 011365 fetch 2 ,mem_app_receive_temp + 3 
-0x3704 011366 byteswap pdata ,pdata 
-0x3705 011367 store 2 ,mem_app_receive_temp + 3 
-0x3706 011368 copy pdata ,loopcnt 
-0x3707 011369 increase 5 ,rega 
-0x3708 011370 copy rega ,contr 
-0x3709 011371 arg mem_app_receive_temp + 5 ,contw 
-0x370a 011372 call memcpy 
-0x370b 011373 ifetch 1 ,contr 
-0x370c 011374 store 1 ,mem_app_receive_temp + 15 
-0x370d 011375 arg mem_app_receive_temp + 2 ,rega 
-0x370e 011376 arg mem_app_receive_temp + 5 ,regb 
-0x370f 011377 rtn 
-:      011379 car_control_le_receive:
-0x3710 011380 setarg 0 
-0x3711 011381 store 5 ,mem_le_receive_payload 
-0x3712 011382 store 5 ,mem_le_receive_payload + 5 
-0x3713 011383 call le_app_receive_data 
-0x3714 011384 copy regb ,contr 
-0x3715 011385 arg mem_le_receive_payload ,contw 
-0x3716 011386 arg 10 ,loopcnt 
-0x3717 011387 call memcpy 
-:      011388 car_receive_cmd_select:
-0x3718 011389 bpatch patch1a_1 ,mem_patch1a 
-0x3719 011390 ifetch 1 ,rega 
-0x371a 011391 beq car_cmd_old_car_control ,car_drive_old 
-0x371b 011392 beq car_cmd_old_speed_control ,car_speed_set_old 
-0x371c 011393 beq car_cmd_l_r_motor_control ,car_motor_control 
-0x371d 011394 beq car_cmd_f_b_motor_control ,car_motor_control 
-0x371e 011395 beq car_cmd_ir_control ,car_ir_data_rx_from_app 
-0x371f 011396 beq car_cmd_led_control ,car_led_control_receive 
-0x3720 011397 beq car_cmd_device_info ,car_info_request 
-0x3721 011398 rtn 
-:      011400 car_24g_receive_data:
-0x3722 011401 fetch 2 ,mem_ui_state_map 
-0x3723 011402 rtnbit1 ui_state_ble_connected 
-0x3724 011404 fetch 2 ,mem_car_24g_no_data_timeout_count 
-0x3725 011405 store 2 ,mem_car_24g_no_data_timeout_timer 
-0x3726 011407 jam work_paired ,mem_car_24g_received_pac 
-0x3727 011409 setarg offset_24g_rxdata_temp_add3 
-0x3728 011410 call g24_set_rega 
-0x3729 011411 call car_control_le_receive 
-0x372a 011413 fetch 1 ,mem_app_receive_temp + 2 
-0x372b 011414 beq car_cmd_l_r_motor_control ,car_24g_receive_data_next 
-0x372c 011415 beq car_cmd_f_b_motor_control ,car_24g_receive_data_next 
-0x372d 011416 rtn 
-:      011417 car_24g_receive_data_next:
-0x372e 011418 fetch 1 ,mem_le_receive_payload 
-0x372f 011419 ncall car_moto1_enable_blank_data_timer ,blank 
-0x3730 011420 fetch 1 ,mem_le_receive_payload + 2 
-0x3731 011421 ncall car_moto2_enable_blank_data_timer ,blank 
-0x3732 011422 fetch 1 ,mem_le_receive_payload + 4 
-0x3733 011423 ncall car_moto3_enable_blank_data_timer ,blank 
-0x3734 011424 rtn 
-:      011426 car_moto1_enable_blank_data_timer:
-0x3735 011427 jam 5 ,mem_car_moto1_blank_timer 
-0x3736 011428 rtn 
-:      011429 car_moto2_enable_blank_data_timer:
-0x3737 011430 jam 5 ,mem_car_moto2_blank_timer 
-0x3738 011431 rtn 
-:      011432 car_moto3_enable_blank_data_timer:
-0x3739 011433 jam 5 ,mem_car_moto3_blank_timer 
-0x373a 011434 rtn 
-:      011436 car_moto1_blank_data_timer:
-0x373b 011437 arg mem_car_moto1_blank_timer ,regc 
-0x373c 011438 arg car_moto1_blank_data ,regb 
-0x373d 011439 branch timer_single_step 
-:      011440 car_moto2_blank_data_timer:
-0x373e 011441 arg mem_car_moto2_blank_timer ,regc 
-0x373f 011442 arg car_moto2_blank_data ,regb 
-0x3740 011443 branch timer_single_step 
-:      011444 car_moto3_blank_data_timer:
-0x3741 011445 arg mem_car_moto3_blank_timer ,regc 
-0x3742 011446 arg car_moto3_blank_data ,regb 
-0x3743 011447 branch timer_single_step 
-:      011449 car_moto1_blank_data:
-0x3744 011450 jam 0 ,mem_le_receive_payload 
-0x3745 011451 branch car_motor_control 
-:      011452 car_moto2_blank_data:
-0x3746 011453 jam 0 ,mem_le_receive_payload + 2 
-0x3747 011454 branch car_motor_control 
-:      011455 car_moto3_blank_data:
-0x3748 011456 jam 0 ,mem_le_receive_payload + 4 
-0x3749 011457 branch car_motor_control 
-:      011462 car_drive_old:
-0x374a 011463 call car_left_right_control_old 
-0x374b 011464 branch car_front_back_control_old 
-:      011465 car_left_right_control_old:
-0x374c 011466 fetch 1 ,mem_le_receive_payload 
-0x374d 011467 store 1 ,mem_motor2_status 
-0x374e 011468 branch car_motor2_control 
-:      011469 car_front_back_control_old:
-0x374f 011470 fetch 1 ,mem_motor1_speed 
-0x3750 011471 call car_reset_old_speed 
-0x3751 011472 fetch 1 ,mem_le_receive_payload + 1 
-0x3752 011473 store 1 ,mem_motor1_status 
-0x3753 011474 branch car_motor1_control 
-:      011475 car_reset_old_speed:
-0x3754 011476 beq speed_level_2 ,car_reset_old_speed2 
-0x3755 011477 beq speed_level_3 ,car_reset_old_speed3 
-0x3756 011478 store 1 ,mem_motor1_speed 
-0x3757 011479 rtn 
-:      011480 car_reset_old_speed2:
-0x3758 011481 jam speed_level_5 ,mem_motor1_speed 
-0x3759 011482 rtn 
-:      011483 car_reset_old_speed3:
-0x375a 011484 jam speed_level_10 ,mem_motor1_speed 
-0x375b 011485 rtn 
-:      011486 car_speed_set_old:
-0x375c 011487 fetch 1 ,mem_le_receive_payload 
-0x375d 011488 call car_reset_old_speed 
-0x375e 011489 fetch 1 ,mem_motor1_speed 
-0x375f 011490 call car_motor_speed_duty_setting 
-0x3760 011491 call car_motor_speed_duty_transform 
-0x3761 011492 branch pwm_pwm0_duty_set 
-:      011494 car_motor_control:
-0x3762 011495 fetch 1 ,mem_car_24g_go_die_flag 
-0x3763 011496 nrtn blank 
-0x3764 011497 fetch 6 ,mem_le_receive_payload 
-0x3765 011498 store 6 ,mem_motor1_status 
-0x3766 011499 fetch 1 ,mem_motor1_speed 
-0x3767 011500 fetcht 1 ,mem_motor2_speed 
-0x3768 011501 iand temp ,pdata 
-0x3769 011502 fetcht 1 ,mem_motor3_speed 
-0x376a 011503 iand temp ,pdata 
-0x376b 011504 call car_motor_working_flag ,blank 
-0x376c 011505 bpatch patch1a_2 ,mem_patch1a 
-0x376d 011506 call car_motor1_control 
-0x376e 011507 call car_motor2_control 
-0x376f 011508 branch car_motor3_control 
-:      011509 car_motor1_control:
-0x3770 011510 arg mem_motor1_pwm_set ,regb 
-0x3771 011511 arg mem_motor1_status ,contr 
-0x3772 011512 branch car_motor_status_select 
-:      011513 car_motor2_control:
-0x3773 011514 arg mem_motor2_pwm_set ,regb 
-0x3774 011515 arg mem_motor2_status ,contr 
-0x3775 011516 branch car_motor_status_select 
-:      011517 car_motor3_control:
-0x3776 011518 arg mem_motor3_pwm_set ,regb 
-0x3777 011519 arg mem_motor3_status ,contr 
-0x3778 011520 branch car_motor_status_select 
-:      011521 car_motor_working_flag:
-0x3779 011522 jam 0 ,mem_car_working_flag 
-0x377a 011523 rtn 
-:      011525 car_motor_status_select:
-0x377b 011526 ifetch 1 ,contr 
-0x377c 011527 beq motor_stop ,car_motor_stop 
-0x377d 011528 beq go_front ,car_motor_positive 
-0x377e 011529 beq go_back ,car_motor_negative 
-0x377f 011530 rtn 
-:      011531 car_motor_positive:
-0x3780 011532 jam 0 ,mem_motor_select_p_n 
-0x3781 011533 branch car_motor_negative + 1 
-:      011534 car_motor_negative:
-0x3782 011535 jam 1 ,mem_motor_select_p_n 
-0x3783 011536 ifetch 1 ,contr 
-0x3784 011537 store 1 ,mem_car_motor_speed 
-0x3785 011538 ifetch 8 ,regb 
-0x3786 011539 branch car_motor_work 
-:      011541 car_motor_stop:
-0x3787 011542 ifetch 1 ,regb 
-0x3788 011543 call pwm_disable 
-0x3789 011544 increase 1 ,regb 
-0x378a 011545 ifetch 1 ,regb 
-0x378b 011546 branch pwm_disable 
-:      011547 car_motor_work:
-0x378c 011548 store 8 ,mem_motor_pwm_pin1_set 
-0x378d 011549 jam 1 ,mem_car_working_flag 
-0x378e 011550 fetch 1 ,mem_motor_select_p_n 
-0x378f 011551 beq 0 ,car_motor_select_positive 
-:      011552 car_motor_select_negative:
-0x3790 011553 fetch 1 ,mem_motor_pwm_pin2_set 
-0x3791 011554 store 1 ,mem_motor_pwm_pin_set 
-0x3792 011555 fetch 1 ,mem_motor_pwm_pin1_set 
-:      011556 car_motor_work_next:
-0x3793 011557 call pwm_disable 
-0x3794 011558 fetch 1 ,mem_car_motor_speed 
-0x3795 011559 call car_motor_speed_duty_setting 
-0x3796 011560 store 1 ,mem_motor_pwm_dute_set 
-0x3797 011561 fetch 6 ,mem_motor_pwm_pin_set 
-0x3798 011562 store 6 ,mem_pdatatemp 
-0x3799 011563 branch pwm_out_set 
-:      011564 car_motor_select_positive:
-0x379a 011565 fetch 1 ,mem_motor_pwm_pin1_set 
-0x379b 011566 store 1 ,mem_motor_pwm_pin_set 
-0x379c 011567 fetch 1 ,mem_motor_pwm_pin2_set 
-0x379d 011568 branch car_motor_work_next 
-:      011570 car_motor_speed_duty_setting:
-0x379e 011571 mul32 pdata ,5 ,pdata 
-0x379f 011572 add pdata ,50 ,pdata 
-0x37a0 011573 rtn 
-:      011574 car_motor_speed_duty_transform:
-0x37a1 011575 arg 12000 ,temp 
-0x37a2 011576 imul32 temp ,pdata 
-0x37a3 011577 div pdata ,100 
-0x37a4 011578 call wait_div_end 
-0x37a5 011579 quotient temp 
-0x37a6 011580 copy temp ,rega 
-0x37a7 011581 setarg 12000 
-0x37a8 011582 isub temp ,regb 
-0x37a9 011583 rtn 
-:      011586 car_ir_init:
-0x37aa 011587 hfetch 1 ,core_gpio_sel2 
-0x37ab 011588 set1 2 ,pdata 
-0x37ac 011589 hstore 1 ,core_gpio_sel2 
-0x37ad 011590 setarg 158 
-0x37ae 011591 hstore 2 ,core_pwm_pcnt4 
-0x37af 011592 hstore 2 ,core_pwm_ncnt4 
-0x37b0 011593 rtn 
-:      011595 car_ir_data_rx_from_app:
-0x37b1 011596 fetch 1 ,mem_car_24g_go_die_flag 
-0x37b2 011597 nrtn blank 
-0x37b3 011598 fetch 2 ,mem_le_receive_payload 
-0x37b4 011599 store 2 ,mem_ir_data 
-0x37b5 011600 fetch 1 ,mem_car_24g_status 
-0x37b6 011601 bne work_paired ,car_ir_data_tx 
-0x37b7 011602 fetch 2 ,mem_le_lap 
-0x37b8 011603 store 2 ,mem_ir_data 
-:      011604 car_ir_data_tx:
-0x37b9 011605 bpatch patch1a_3 ,mem_patch1a 
-0x37ba 011606 call car_ir_init 
-0x37bb 011607 call car_ir_enable 
-0x37bc 011608 setarg 48000 
-0x37bd 011609 call sleep 
-0x37be 011610 call car_ir_disable 
-0x37bf 011611 setarg 7200 
-0x37c0 011612 call sleep 
-0x37c1 011613 arg 16 ,loopcnt 
-:      011614 car_ir_send_loop:
-0x37c2 011615 call car_ir_enable 
-0x37c3 011616 fetch 2 ,mem_ir_data 
-0x37c4 011617 bbit1 0 ,car_ir_is_bit1 
-0x37c5 011618 setarg 7200 
-0x37c6 011619 call sleep 
-0x37c7 011620 call car_ir_disable 
-0x37c8 011621 branch car_ir_wait_finish 
-:      011623 car_ir_is_bit1:
-0x37c9 011624 setarg 14400 
-0x37ca 011625 call sleep 
-0x37cb 011626 call car_ir_disable 
-:      011627 car_ir_wait_finish:
-0x37cc 011628 setarg 7200 
-0x37cd 011629 call sleep 
-0x37ce 011630 fetch 2 ,mem_ir_data 
-0x37cf 011631 rshift pdata ,pdata 
-0x37d0 011632 store 2 ,mem_ir_data 
-0x37d1 011633 loop car_ir_send_loop 
-0x37d2 011635 jam 2 ,mem_car_attack_shake_timer 
-0x37d3 011636 jam 1 ,mem_car_attack_shake_flag 
-0x37d4 011637 setarg 0x0a01 
-0x37d5 011638 store 2 ,mem_le_receive_payload 
-0x37d6 011639 fetch 1 ,mem_car_config_device_select 
-0x37d7 011640 beq device_battle_tank ,car_attack_shake_back_battle_tank 
-:      011641 car_attack_shake_back_battle_car:
-0x37d8 011642 branch car_motor_control 
-:      011643 car_attack_shake_back_battle_tank:
-0x37d9 011644 setarg 0x0a01 
-0x37da 011645 store 2 ,mem_le_receive_payload + 2 
-0x37db 011646 branch car_motor_control 
-:      011648 car_ir_enable:
-0x37dc 011649 hfetch 1 ,core_gpio_key2 
-0x37dd 011650 or_into 0x40 ,pdata 
-0x37de 011651 hstore 1 ,core_gpio_key2 
-0x37df 011652 rtn 
-:      011653 car_ir_disable:
-0x37e0 011654 hfetch 1 ,core_gpio_key2 
-0x37e1 011655 and_into 0xbf ,pdata 
-0x37e2 011656 hstore 1 ,core_gpio_key2 
-0x37e3 011657 rtn 
-:      011659 car_ir_rx_init:
-0x37e4 011660 fetch 1 ,mem_car_config_ir_enable 
-0x37e5 011661 rtneq 0x00 
-0x37e6 011662 call lpm_disable_exen_output 
-0x37e7 011663 fetcht 1 ,mem_car_config_ir_rx_gpio 
-0x37e8 011664 storet 1 ,mem_ir_rx_gpio 
-0x37e9 011665 call gpio_config_input 
-0x37ea 011666 call car_ir_gpio_get_status 
-0x37eb 011667 nrtn true 
-0x37ec 011668 jam 1 ,mem_car_ir_breakdown_check_timer 
-0x37ed 011669 rtn 
-:      011671 car_ir_receive_process:
-0x37ee 011672 fetch 1 ,mem_car_config_ir_enable 
-0x37ef 011673 rtneq flag_ir_disable 
-0x37f0 011674 fetch 1 ,mem_car_ir_breakdown_flag 
-0x37f1 011675 nrtn blank 
-0x37f2 011676 fetch 2 ,mem_ui_state_map 
-0x37f3 011677 bbit1 ui_state_ble_connected ,car_ir_receive_process_next 
-0x37f4 011678 fetch 1 ,mem_car_24g_status 
-0x37f5 011679 rtnne work_paired 
-:      011680 car_ir_receive_process_next:
-0x37f6 011681 bpatch patch1a_4 ,mem_patch1a 
-0x37f7 011682 call car_ir_gpio_get_status 
-0x37f8 011683 nrtn true 
-0x37f9 011684 setarg 36000 
-0x37fa 011685 call sleep 
-0x37fb 011686 call car_ir_gpio_get_status 
-0x37fc 011687 nrtn true 
-0x37fd 011688 call car_ir_clk_get 
-:      011689 car_ir_packet_head_wait_end:
-0x37fe 011690 call car_ir_clk_check 
-0x37ff 011691 nrtn positive 
-0x3800 011692 call car_ir_gpio_get_status 
-0x3801 011693 branch car_ir_packet_head_wait_end ,true 
-0x3802 011694 arg 0 ,rega 
-0x3803 011695 arg 16 ,loopcnt 
-0x3804 011696 call car_ir_clk_get 
-:      011697 car_ir_receive_process_loop:
-0x3805 011698 call car_ir_clk_check 
-0x3806 011699 nrtn positive 
-0x3807 011700 call car_ir_gpio_get_status 
-0x3808 011701 nbranch car_ir_receive_process_loop ,true 
-0x3809 011702 setarg 10800 
-0x380a 011703 call sleep 
-0x380b 011704 call car_ir_gpio_get_status 
-0x380c 011705 branch car_ir_get_bit1 ,true 
-:      011706 car_ir_get_bit0:
-0x380d 011707 setarg 0 
-0x380e 011708 rshift rega ,rega 
-0x380f 011709 ior rega ,rega 
-0x3810 011710 loop car_ir_receive_process_loop 
-0x3811 011711 branch car_ir_receive_process_end 
-:      011712 car_ir_get_bit1:
-0x3812 011713 setarg 0x8000 
-0x3813 011714 rshift rega ,rega 
-0x3814 011715 ior rega ,rega 
-0x3815 011716 call car_ir_clk_get 
-:      011717 car_ir_get_bit1_wait_low_end:
-0x3816 011718 call car_ir_clk_check 
-0x3817 011719 nrtn positive 
-0x3818 011720 call car_ir_gpio_get_status 
-0x3819 011721 branch car_ir_get_bit1_wait_low_end ,true 
-0x381a 011722 loop car_ir_receive_process_loop 
-:      011723 car_ir_receive_process_end:
-0x381b 011724 bpatch patch1a_5 ,mem_patch1a 
-0x381c 011725 copy rega ,pdata 
-0x381d 011726 store 2 ,mem_ir_rx_buf 
-0x381e 011727 store 2 ,mem_ir_notify_data + 8 
-0x381f 011728 fetch 1 ,mem_car_24g_status 
-0x3820 011729 beq work_paired ,car_ir_24g_receive_attack 
-:      011730 car_ir_data_notify:
-0x3821 011731 arg 0x07 ,loopcnt 
-0x3822 011732 arg mem_ir_notify_data_head ,contr 
-0x3823 011733 call calc_check_sum_start 
-0x3824 011734 store 1 ,mem_ir_notify_data_check_sum 
-0x3825 011735 arg mem_ir_notify_data ,rega 
-0x3826 011736 branch queue_push 
-:      011738 car_ir_24g_receive_attack:
-0x3827 011739 fetch 1 ,mem_car_24g_ir_receive_attack_count 
-0x3828 011740 increase 1 ,pdata 
-0x3829 011741 store 1 ,mem_car_24g_ir_receive_attack_count 
-0x382a 011742 div pdata ,2 
-0x382b 011743 call wait_div_end 
-0x382c 011744 quotient temp 
-0x382d 011745 remainder pdata 
-0x382e 011746 nbranch car_ir_24g_receive_attack_blink ,blank 
-:      011747 car_ir_24g_receive_attack_off:
-0x382f 011748 fetch 1 ,mem_car_config_led_num 
-0x3830 011749 isub temp ,null 
-0x3831 011750 call car_ir_24g_go_die ,zero 
-0x3832 011751 arg mem_car_led_control ,pdata 
-0x3833 011752 increase -1 ,temp 
-0x3834 011753 iadd temp ,rega 
-0x3835 011754 arg 0 ,pdata 
-0x3836 011755 istore 1 ,rega 
-0x3837 011756 rtn 
-:      011757 car_ir_24g_receive_attack_blink:
-0x3838 011758 arg mem_car_led_control ,pdata 
-0x3839 011759 iadd temp ,rega 
-0x383a 011760 arg 2 ,pdata 
-0x383b 011761 istore 1 ,rega 
-0x383c 011762 rtn 
-:      011763 car_ir_24g_go_die:
-0x383d 011764 jam 1 ,mem_car_24g_go_die_flag 
-0x383e 011765 rtn 
-:      011766 car_ir_clk_get:
-0x383f 011767 copy clkn_bt ,pdata 
-0x3840 011768 store 4 ,mem_ir_receive_clkn 
-0x3841 011769 rtn 
-:      011770 car_ir_clk_check:
-0x3842 011771 copy clkn_bt ,pdata 
-0x3843 011772 fetcht 4 ,mem_ir_receive_clkn 
-0x3844 011773 isub temp ,pdata 
-0x3845 011774 sub pdata ,200 ,null 
-0x3846 011775 rtn 
-:      011777 car_ir_gpio_get_status:
-0x3847 011778 fetcht 1 ,mem_ir_rx_gpio 
-0x3848 011779 branch gpio_get_bit 
-:      011781 car_led_control_receive:
-0x3849 011782 fetch 8 ,mem_le_receive_payload 
-0x384a 011783 store 8 ,mem_car_led_control 
-0x384b 011784 rtn 
-:      011786 car_info_request:
-0x384c 011787 fetch 1 ,mem_car_config_device_select 
-0x384d 011788 store 1 ,mem_car_info_request_payload 
-0x384e 011789 fetch 1 ,mem_car_config_motor_layout 
-0x384f 011790 store 1 ,mem_car_info_request_payload + 1 
-0x3850 011791 fetch 1 ,mem_car_config_ir_enable 
-0x3851 011792 store 1 ,mem_car_info_request_payload + 2 
-0x3852 011793 arg 13 ,loopcnt 
-0x3853 011794 arg mem_car_info_request_head ,contr 
-0x3854 011795 call calc_check_sum_start 
-0x3855 011796 store 1 ,mem_car_info_request_checksum 
-0x3856 011797 arg mem_car_info_request ,rega 
-0x3857 011798 branch queue_push 
-:      011804 light_init:
-0x3858 011805 call clear_eeprom_size_2k 
-0x3859 011806 jam 0x7a ,mem_curr_packet_num 
-0x385a 011807 call light_load_controler_list 
-0x385b 011808 call light_init_crr_cmd_count 
-0x385c 011809 setarg light_pairing_timer 
-0x385d 011810 store 2 ,mem_cb_event_timer 
-0x385e 011811 arg 0 ,rega 
-0x385f 011812 branch pwm_init 
-:      011814 light_pairing_timer:
-0x3860 011815 fetch 2 ,mem_light_pairing_timer 
-0x3861 011816 rtn blank 
-0x3862 011817 increase -1 ,pdata 
-0x3863 011818 store 2 ,mem_light_pairing_timer 
-0x3864 011819 rtnne 0 
-0x3865 011820 jam 0 ,mem_light_pairing_enable 
-0x3866 011821 rtn 
-:      011823 light_init_crr_cmd_count:
-0x3867 011824 bpatch patch1a_6 ,mem_patch1a 
-0x3868 011825 fetch 1 ,mem_light_next_record 
-0x3869 011826 sub pdata ,40 ,null 
-0x386a 011827 rtn positive 
-0x386b 011828 jam 0 ,mem_light_next_record 
-0x386c 011829 rtn 
-:      011831 light_load_controler_list:
-0x386d 011832 arg mem_light_next_record ,rega 
-0x386e 011833 arg 0 ,regb 
-0x386f 011834 arg 81 ,temp 
-0x3870 011835 branch iicd_read_eep_data 
-:      011838 light_find_controler_pairing:
-0x3871 011839 disable user 
-0x3872 011840 fetch 1 ,mem_light_cnum 
-0x3873 011841 copy pdata ,loopcnt 
-0x3874 011843 arg mem_light_clist ,rega 
-0x3875 011844 copy regc ,regb 
-:      011845 light_find_controler_pairing_loop:
-0x3876 011846 bpatch patch1a_7 ,mem_patch1a 
-0x3877 011847 call light_compare_addr_record 
-0x3878 011848 branch enable_user ,zero 
-:      011849 light_find_single_pairing_diff:
-0x3879 011850 increase 4 ,rega 
-0x387a 011851 loop light_find_controler_pairing_loop 
-0x387b 011852 rtn 
-:      011855 light_compare_addr_record:
-0x387c 011856 bpatch patch1b_0 ,mem_patch1b 
-0x387d 011857 ifetch 3 ,rega 
-0x387e 011858 ifetcht 3 ,regb 
-0x387f 011859 isub temp ,null 
-0x3880 011860 rtn 
-:      011862 light_compare_single_record:
-0x3881 011863 bpatch patch1b_1 ,mem_patch1b 
-0x3882 011864 ifetch 3 ,rega 
-0x3883 011865 ifetcht 3 ,regb 
-0x3884 011866 isub temp ,null 
-0x3885 011867 nrtn zero 
-0x3886 011868 ifetch 1 ,contr 
-0x3887 011869 sub pdata ,0 ,null 
-0x3888 011870 rtn zero 
-0x3889 011871 add rega ,3 ,contr 
-0x388a 011872 ifetcht 1 ,contr 
-0x388b 011873 isub temp ,null 
-0x388c 011874 rtn 
-:      011877 light_find_controler_cmd:
-0x388d 011878 bpatch patch1b_2 ,mem_patch1b 
-0x388e 011879 disable user 
-0x388f 011880 fetch 1 ,mem_light_cnum 
-0x3890 011881 copy pdata ,loopcnt 
-0x3891 011883 arg mem_light_clist ,rega 
-0x3892 011884 copy regc ,regb 
-:      011885 light_find_controler_cmd_loop:
-0x3893 011886 call light_compare_single_record 
-0x3894 011887 branch enable_user ,zero 
-0x3895 011888 increase 4 ,rega 
-0x3896 011889 loop light_find_controler_cmd_loop 
-0x3897 011890 rtn 
-:      011893 light_recv_adv:
-0x3898 011894 fetch 1 ,mem_le_scanrsp_rcv 
-0x3899 011895 increase 1 ,pdata 
-0x389a 011896 store 1 ,mem_le_scanrsp_rcv 
-0x389b 011897 arg mem_le_rxbuf + 12 ,regc 
-:      011899 light_anylize_command:
-0x389c 011900 ifetch 2 ,regc 
-0x389d 011901 arg 0x55aa ,temp 
-0x389e 011902 isub temp ,null 
-0x389f 011903 nrtn zero 
-0x38a0 011904 copy contr ,regc 
-0x38a1 011905 ifetcht 3 ,regc 
-0x38a2 011906 setarg 0xffffff 
-0x38a3 011907 isub temp ,null 
-0x38a4 011908 branch light_parse_cmd ,zero 
-0x38a5 011909 call light_find_controler_cmd 
-0x38a6 011910 branch light_parse_cmd ,user 
-0x38a7 011911 rtn 
-:      011913 light_parse_cmd:
-0x38a8 011914 bpatch patch1b_3 ,mem_patch1b 
-0x38a9 011915 increase 4 ,regc 
-0x38aa 011916 ifetch 1 ,regc 
-0x38ab 011917 fetcht 1 ,mem_curr_packet_num 
-0x38ac 011918 isub temp ,null 
-0x38ad 011919 rtn zero 
-0x38ae 011920 store 1 ,mem_curr_packet_num 
-0x38af 011921 fetch 1 ,mem_le_req_rcv 
-0x38b0 011922 increase 1 ,pdata 
-0x38b1 011923 store 1 ,mem_le_req_rcv 
-0x38b2 011925 increase 1 ,regc 
-0x38b3 011926 ifetch 1 ,regc 
-0x38b4 011927 store 1 ,mem_light_crr_cmd_count 
-0x38b5 011928 copy pdata ,loopcnt 
-0x38b6 011929 rtn blank 
-:      011930 light_parse_cmd_loop:
-0x38b7 011931 ifetch 1 ,contr 
-0x38b8 011932 beq light_cmd_pwm0 ,light_parse_cmd_pwm0 
-0x38b9 011933 beq light_cmd_pwm1 ,light_parse_cmd_pwm1 
-0x38ba 011934 beq light_cmd_pwm2 ,light_parse_cmd_pwm2 
-0x38bb 011935 beq light_cmd_pwm3 ,light_parse_cmd_pwm3 
-0x38bc 011936 beq light_cmd_pwm4 ,light_parse_cmd_pwm4 
-0x38bd 011937 beq light_cmd_pwm5 ,light_parse_cmd_pwm5 
-0x38be 011938 beq light_cmd_auto_mode ,light_parse_auto_mode 
-0x38bf 011939 beq light_cmd_pairing ,light_parse_pairing 
-0x38c0 011940 loop light_parse_cmd_loop 
-0x38c1 011941 rtn 
-:      011943 light_parse_cmd_pwm0:
-0x38c2 011944 copy contr ,regc 
-0x38c3 011945 fetch 1 ,mem_light_pwm0 
-0x38c4 011946 store 1 ,mem_pdatatemp 
-0x38c5 011947 arg 0 ,temp 
-:      011948 light_parse_cmd_pwm_common:
-0x38c6 011949 storet 1 ,mem_pdatatemp + 1 
-0x38c7 011950 setarg 10000 
-0x38c8 011951 store 3 ,mem_pdatatemp + 2 
-0x38c9 011952 ifetch 1 ,regc 
-0x38ca 011953 store 1 ,mem_pdatatemp + 5 
-0x38cb 011954 call pwm_out_set 
-0x38cc 011955 and regc ,1 ,contr 
-0x38cd 011956 loop light_parse_cmd_loop 
-0x38ce 011957 rtn 
-:      011958 light_parse_cmd_pwm1:
-0x38cf 011959 copy regc ,contr 
-0x38d0 011960 fetch 1 ,mem_light_pwm1 
-0x38d1 011961 store 1 ,mem_pdatatemp 
-0x38d2 011962 arg 1 ,temp 
-0x38d3 011963 branch light_parse_cmd_pwm_common 
-:      011964 light_parse_cmd_pwm2:
-0x38d4 011965 copy regc ,contr 
-0x38d5 011966 fetch 1 ,mem_light_pwm2 
-0x38d6 011967 store 1 ,mem_pdatatemp 
-0x38d7 011968 arg 2 ,temp 
-0x38d8 011969 branch light_parse_cmd_pwm_common 
-:      011970 light_parse_cmd_pwm3:
-0x38d9 011971 copy regc ,contr 
-0x38da 011972 fetch 1 ,mem_light_pwm3 
-0x38db 011973 store 1 ,mem_pdatatemp 
-0x38dc 011974 arg 3 ,temp 
-0x38dd 011975 branch light_parse_cmd_pwm_common 
-:      011976 light_parse_cmd_pwm4:
-0x38de 011977 copy regc ,contr 
-0x38df 011978 fetch 1 ,mem_light_pwm4 
-0x38e0 011979 store 1 ,mem_pdatatemp 
-0x38e1 011980 arg 4 ,temp 
-0x38e2 011981 branch light_parse_cmd_pwm_common 
-:      011982 light_parse_cmd_pwm5:
-0x38e3 011983 copy regc ,contr 
-0x38e4 011984 fetch 1 ,mem_light_pwm5 
-0x38e5 011985 store 1 ,mem_pdatatemp 
-0x38e6 011986 arg 5 ,temp 
-0x38e7 011987 branch light_parse_cmd_pwm_common 
-:      011989 light_parse_auto_mode:
-0x38e8 011990 ifetch 1 ,contr 
-0x38e9 011991 rtn 
-:      011993 light_parse_pairing:
-0x38ea 011994 copy contr ,regc 
-0x38eb 011995 fetch 1 ,mem_light_pairing_enable 
-0x38ec 011996 bne 1 ,light_parse_pairing_abandon 
-0x38ed 011997 call update_controler_list 
-:      011998 light_parse_pairing_abandon:
-0x38ee 011999 and regc ,4 ,contr 
-0x38ef 012000 rtn 
-:      012001 update_controler_list:
-0x38f0 012002 bpatch patch1b_4 ,mem_patch1b 
-0x38f1 012003 call light_find_controler_pairing 
-0x38f2 012004 branch update_conrtoler_list_found ,user 
-0x38f3 012005 fetch 1 ,mem_light_next_record 
-0x38f4 012006 copy pdata ,temp 
-0x38f5 012007 increase 1 ,pdata 
-0x38f6 012008 store 1 ,mem_light_next_record 
-0x38f7 012009 call light_init_crr_cmd_count 
-0x38f8 012010 lshift2 temp ,temp 
-0x38f9 012011 setarg mem_light_clist 
-0x38fa 012012 iadd temp ,contw 
-0x38fb 012013 ifetch 4 ,regc 
-0x38fc 012014 istore 4 ,contw 
-0x38fd 012015 branch update_conrtoler_store_list 
-:      012016 update_conrtoler_list_found:
-0x38fe 012017 add regc ,3 ,contr 
-0x38ff 012018 ifetch 1 ,contr 
-0x3900 012019 rtn blank 
-0x3901 012020 ifetch 4 ,regc 
-0x3902 012021 istore 4 ,rega 
-:      012022 update_conrtoler_store_list:
-0x3903 012023 arg mem_light_next_record ,rega 
-0x3904 012024 arg 0 ,regb 
-0x3905 012025 arg 81 ,temp 
-0x3906 012026 branch iicd_write_eep_data 
-:      012030 lightc_init:
-0x3907 012034 fetcht 1 ,mem_lightc_led_gpio 
-0x3908 012035 call gpio_out_inactive 
-0x3909 012036 rtn 
-:      012039 lightc_dispatch:
-0x390a 012042 fetcht 1 ,mem_lightc_led_gpio 
-0x390b 012043 call gpio_out_active 
-0x390c 012046 fetcht 1 ,mem_lightc_led_gpio 
-0x390d 012047 call gpio_out_inactive 
-0x390e 012050 call lightc_start_adv 
-0x390f 012052 fetch 1 ,mem_adv_time 
-0x3910 012053 nrtn blank 
-0x3911 012055 call lpm_write_gpio_wakeup 
-0x3912 012056 hfetch 4 ,core_lpm_ctrl 
-0x3913 012057 set0 15 ,pdata 
-0x3914 012058 hstore 4 ,core_lpm_reg 
-0x3915 012059 call lpm_write_ctrl 
-0x3916 012060 arg param_hibernate_clks ,temp 
-0x3917 012061 branch lpm_sleep 
-:      012063 lightc_adv:
-0x3918 012064 fetch 1 ,mem_adv_time 
-0x3919 012065 branch le_adv_loop_tx ,blank 
-0x391a 012066 increase -1 ,pdata 
-0x391b 012067 store 1 ,mem_adv_time 
-0x391c 012068 branch le_adv_loop_tx 
-:      012070 lightc_start_adv:
-0x391d 012071 mul32 pdata ,20 ,pdata 
-0x391e 012072 arg mem_cmd0_string ,contr 
-0x391f 012073 iadd contr ,contr 
-0x3920 012074 ifetch 1 ,contr 
-0x3921 012075 rtn blank 
-0x3922 012076 copy pdata ,rega 
-0x3923 012077 copy rega ,loopcnt 
-0x3924 012078 arg mem_le_adv_data + 2 ,contw 
-0x3925 012079 call memcpy 
-0x3926 012080 copy rega ,pdata 
-0x3927 012081 increase 2 ,pdata 
-0x3928 012082 store 1 ,mem_le_adv_data_len 
-0x3929 012083 rtn 
-:      012090 module_init:
-0x392a 012092 rtn wake 
-0x392b 012093 call le_modified_name 
-0x392c 012094 call adc_init_data 
-0x392d 012095 setarg module_process_idle 
-0x392e 012096 store 2 ,mem_cb_idle_process 
-0x392f 012097 setarg module_bt_conn_process 
-0x3930 012098 store 2 ,mem_cb_bt_process 
-0x3931 012099 setarg module_process_bb_event 
-0x3932 012100 store 2 ,mem_cb_bb_event_process 
-0x3933 012101 setarg module_le_conn_process 
-0x3934 012102 store 2 ,mem_cb_le_process 
-0x3935 012103 setarg module_lpm_lock 
-0x3936 012104 store 2 ,mem_cb_check_wakelock 
-0x3937 012105 setarg module_hci_cmd_transmit_le_notify 
-0x3938 012106 store 2 ,mem_cb_ble_transmit 
-0x3939 012107 setarg module_hci_event_receive_spp_data 
-0x393a 012108 store 2 ,mem_cb_receive_spp_data 
-0x393b 012109 setarg module_le_receive_data 
-0x393c 012110 store 2 ,mem_cb_att_write 
-0x393d 012111 setarg module_bb_event_timer 
-0x393e 012112 store 2 ,mem_cb_event_timer 
-0x393f 012114 call module_spp_clear_last_transmite_clock 
-0x3940 012115 bpatch patch1b_5 ,mem_patch1b 
-0x3941 012116 call module_lpm_uart_init 
-0x3942 012117 call module_gpio_init 
-0x3943 012118 call check_module_disabled 
-0x3944 012119 branch module_hci_event_enter_standby_mode 
-:      012122 module_lpm_uart_init:
-0x3945 012123 fetch 4 ,mem_module_uart_rx_buffer 
-0x3946 012124 hstore 4 ,core_uart_rsaddr 
-0x3947 012126 fetch 4 ,mem_module_uart_tx_buffer 
-0x3948 012127 hstore 4 ,core_uart_tsaddr 
-0x3949 012129 hfetch 1 ,core_gpio_sel1 
-0x394a 012130 or_into 0x04 ,pdata 
-0x394b 012131 and_into 0xfc ,pdata 
-0x394c 012132 hstore 1 ,core_gpio_sel1 
-0x394d 012133 jam 0x00 ,core_uart_ctrl 
-0x394e 012135 fetch 2 ,mem_module_uart_rx_buffer 
-0x394f 012136 hstore 2 ,core_uart_rrptr 
-0x3950 012137 fetch 2 ,mem_module_uart_tx_buffer 
-0x3951 012138 hstore 2 ,core_uart_twptr 
-0x3952 012139 hstore 2 ,core_uart_trptrp 
-0x3953 012141 hfetch 4 ,core_gpio_pu0 
-0x3954 012142 set1 7 ,pdata 
-0x3955 012143 hstore 4 ,core_gpio_pu0 
-0x3956 012145 hfetch 2 ,core_clkoff 
-0x3957 012146 set0 clock_off_uart ,pdata 
-0x3958 012147 hstore 2 ,core_clkoff 
-0x3959 012148 call uart_set_baud_by_mem 
-0x395a 012149 jam uartclk_crystal ,core_uart_clksel 
-0x395b 012150 jam uart_ctrl_h4 ,core_uart_ctrl 
-0x395c 012152 fetch 1 ,mem_module_flag 
-0x395d 012153 isolate1 module_flag_uart_flow_control ,pdata 
-0x395e 012154 hfetcht 1 ,core_uart_ctrl 
-0x395f 012155 setflag true ,4 ,temp 
-0x3960 012156 hstoret 1 ,core_uart_ctrl 
-0x3961 012157 rtn 
-:      012161 module_lpm_init:
-0x3962 012162 call module_spp_clear_last_transmite_clock 
-0x3963 012163 branch module_lpm_uart_init 
-:      012166 module_gpio_init:
-0x3964 012171 fetcht 1 ,mem_module_connect_state_gpio 
-0x3965 012172 call gpio_config_output 
-0x3966 012173 call module_set_conn_pin_low 
-0x3967 012175 fetcht 1 ,mem_module_wake_up_gpio 
-0x3968 012176 branch gpio_config_input 
-:      012178 module_lpm_lock:
-0x3969 012179 fetcht 1 ,mem_module_wake_up_gpio 
-0x396a 012180 call gpio_get_bit 
-0x396b 012181 nbranch app_put_lpm_wake_lock ,true 
-0x396c 012182 branch app_get_lpm_wake_lock 
-:      012185 module_le_conn_process:
-0x396d 012186 rtn 
-:      012188 module_bt_conn_process:
-0x396e 012189 call module_spp_enter_sniff 
-0x396f 012190 branch module_control_air_flow 
-:      012192 module_spp_enter_sniff:
-0x3970 012193 fetch 1 ,mem_ui_state_map 
-0x3971 012194 bbit0 ui_state_bt_spp_conn ,module_spp_clear_last_transmite_clock 
-0x3972 012195 bpatch patch1b_6 ,mem_patch1b 
-0x3973 012196 setarg 0x3eff 
-0x3974 012197 fetcht 4 ,mem_last_transmite_clock 
-0x3975 012198 iadd temp ,temp 
-0x3976 012199 copy clkn_bt ,pdata 
-0x3977 012200 isub temp ,null 
-0x3978 012201 nrtn positive 
-0x3979 012202 fetch 2 ,mem_ui_state_map 
-0x397a 012203 bbit1 ui_state_bt_sniff ,module_spp_clear_last_transmite_clock 
-0x397b 012204 fetch 1 ,mem_module_flag 
-0x397c 012205 rtnbit1 moudle_task_sniff 
-0x397d 012206 call module_set_sniff_task_flag 
-0x397e 012207 call app_bt_enter_sniff 
-:      012208 module_spp_clear_last_transmite_clock:
-0x397f 012209 copy clkn_bt ,pdata 
-0x3980 012210 store 4 ,mem_last_transmite_clock 
-0x3981 012211 rtn 
-:      012214 module_process_idle:
-0x3982 012215 call module_control_air_flow 
-0x3983 012216 call l2cap_malloc_is_fifo_full 
-0x3984 012217 nrtn blank 
-0x3985 012218 branch module_process 
-:      012221 module_process_bb_event:
-0x3986 012222 copy regc ,pdata 
-0x3987 012223 beq bt_evt_bb_connected ,module_process_bb_conn 
-0x3988 012224 beq bt_evt_bb_disconnected ,module_process_bb_event_disconned 
-0x3989 012225 beq bt_evt_reconn_failed ,module_process_reconn_fail 
-0x398a 012226 beq bt_evt_setup_complete ,module_process_setup_complete 
-0x398b 012227 beq bt_evt_spp_connected ,module_process_spp_connected 
-0x398c 012228 beq bt_evt_spp_disconnected ,module_process_spp_disconnected 
-0x398d 012229 beq bt_evt_pincode_req ,module_process_evt_pincode_req 
-0x398e 012230 beq bt_evt_enter_sniff ,module_process_enter_sniff 
-0x398f 012231 beq bt_evt_exit_sniff ,module_process_exit_sniff 
-0x3990 012232 beq bt_evt_reconn_page_timeout ,module_process_page_time_out 
-0x3991 012233 beq bt_evt_le_connected ,module_process_le_conn 
-0x3992 012234 beq bt_evt_le_disconnected ,module_process_bb_even_le_disconn 
-0x3993 012235 beq bt_evt_sniff_not_accept ,module_process_sniff_not_accept 
-0x3994 012236 beq bt_evt_unsniff_accept ,module_process_unsniff_accept 
-0x3995 012237 beq bt_evt_unsniff_not_accept ,module_process_unsniff_not_accept 
-0x3996 012238 beq bt_evt_le_pairing_fail ,module_hci_event_le_pairing_fail 
-0x3997 012239 beq bt_evt_le_pairing_success ,module_hci_event_le_pairing_success 
-0x3998 012240 beq bt_evt_le_start_enc ,module_hci_event_start_enc 
-0x3999 012241 beq bt_evt_le_pause_enc ,module_hci_event_pause_enc 
-0x399a 012242 beq bt_evt_le_tk_generate ,module_hci_event_le_tk 
-0x399b 012243 beq bt_evt_bt_gkey_generate ,module_hci_event_gkey_generate 
-0x399c 012244 beq bt_evt_bt_get_passkey ,module_hci_event_passkey_entry_mode 
-0x399d 012245 beq bt_evt_bt_pairing_fail ,module_hci_event_bt_pairing_fail 
-0x399e 012246 beq bt_evt_bt_pairing_success ,module_hci_event_bt_pairing_success 
-0x399f 012247 beq bt_evt_le_gkey_generate ,module_hci_event_le_gkey 
-0x39a0 012248 beq bt_evt_store_nvram ,module_hci_event_store_device 
-0x39a1 012249 beq bt_evt_le_ltk_lost ,module_process_ble_ltk_lost 
-0x39a2 012250 rtn 
-:      012253 module_process_bb_event_disconned:
-0x39a3 012254 call module_spp_clear_last_transmite_clock 
-0x39a4 012255 fetch 1 ,mem_flag_pairing_state 
-0x39a5 012256 ncall module_hci_event_bt_pairing_fail ,blank 
-0x39a6 012257 call module_disconn_start 
-0x39a7 012258 fetch 2 ,mem_ui_state_map 
-0x39a8 012259 rtnbit0 ui_state_bt_spp_conn 
-0x39a9 012260 branch module_spp_disconnected 
-:      012262 module_process_spp_connected:
-0x39aa 012263 fetch 2 ,mem_ui_state_map 
-0x39ab 012264 set1 ui_state_bt_spp_conn ,pdata 
-0x39ac 012265 store 2 ,mem_ui_state_map 
-0x39ad 012266 fetch 1 ,mem_module_spp_lpm_mult 
-0x39ae 012267 store 1 ,mem_lpm_mult 
-0x39af 012268 call module_set_conn_pin_low 
-0x39b0 012269 branch module_hci_event_spp_connect 
-:      012271 module_process_spp_disconnected:
-:      012273 module_spp_disconnected:
-0x39b1 012274 fetch 2 ,mem_ui_state_map 
-0x39b2 012275 rtnbit0 ui_state_bt_spp_conn 
-0x39b3 012276 set0 ui_state_bt_spp_conn ,pdata 
-0x39b4 012277 store 2 ,mem_ui_state_map 
-0x39b5 012278 branch module_hci_event_spp_disconnect 
-:      012281 module_process_enter_sniff:
-:      012283 module_sniff_param_check:
-0x39b6 012284 call module_spp_clear_last_transmite_clock 
-0x39b7 012287 fetch 2 ,mem_context + coffset_tsniff 
-0x39b8 012288 rshift pdata ,pdata 
-0x39b9 012289 fetcht 2 ,mem_sniff_param_interval 
-0x39ba 012290 isub temp ,null 
-0x39bb 012291 nbranch module_sniff_param_check_unsniff ,zero 
-0x39bc 012292 branch app_lpm_mult_enable 
-:      012293 module_sniff_param_check_unsniff:
-0x39bd 012294 fetch 1 ,mem_module_flag 
-0x39be 012295 rtnbit1 moudle_task_unsniff 
-0x39bf 012296 hfetch 2 ,core_uart_rxitems 
-0x39c0 012297 ncall module_set_unsniff_task_flag ,blank 
-0x39c1 012298 branch app_bt_sniff_exit 
-:      012300 module_process_exit_sniff:
-0x39c2 012301 call module_clear_sniff_task_flag 
-0x39c3 012302 branch app_lpm_mult_disable 
-:      012304 module_process_setup_complete:
-0x39c4 012305 call module_spp_clear_last_transmite_clock 
-0x39c5 012306 branch module_conn_start 
-:      012308 module_process_bb_even_le_disconn:
-0x39c6 012309 call le_clr_config_more_data 
-0x39c7 012310 call module_disconn_start 
-0x39c8 012311 branch module_hci_event_le_disconnect 
-:      012313 module_process_evt_pincode_req:
-0x39c9 012314 branch app_bt_set_pincode 
-:      012317 module_process_sniff_not_accept:
-0x39ca 012318 branch module_clear_sniff_task_flag 
-:      012321 module_process_unsniff_accept:
-0x39cb 012322 fetch 1 ,mem_module_flag 
-0x39cc 012323 bbit0 moudle_task_unsniff ,app_bt_enter_sniff 
-0x39cd 012324 branch module_clear_unsniff_task_flag 
-:      012327 module_process_unsniff_not_accept:
-0x39ce 012328 branch module_clear_unsniff_task_flag 
-:      012331 module_process_le_conn:
-0x39cf 012332 call le_send_att_exchange_mtu_requset 
-0x39d0 012333 call module_conn_start 
-0x39d1 012334 fetch 1 ,mem_module_le_lpm_mult 
-0x39d2 012335 store 1 ,mem_lpm_mult 
-0x39d3 012336 branch module_hci_event_le_connect 
-:      012339 module_process_bb_conn:
-0x39d4 012340 jam 0 ,mem_flag_mode_ssp_pin 
-0x39d5 012341 call module_clear_sniff_task_flag 
-0x39d6 012342 branch module_clear_unsniff_task_flag 
-:      012344 module_process_page_time_out:
-:      012345 module_process_reconn_fail:
-:      012346 module_disconn_start:
-0x39d7 012347 call module_start_adv_discovery_by_command 
-0x39d8 012348 branch module_set_conn_pin_high 
-:      012351 module_process_ble_ltk_lost:
-0x39d9 012352 call le_send_reject_ind 
-0x39da 012353 branch le_send_smp_security_request 
-:      012356 module_set_conn_pin_high:
-0x39db 012357 fetcht 1 ,mem_module_connect_state_gpio 
-0x39dc 012358 branch gpio_out_active 
-:      012360 module_conn_start:
-0x39dd 012361 call module_stop_adv_discovery 
-0x39de 012362 branch module_set_conn_pin_low 
-:      012364 module_stop_adv_discovery:
-0x39df 012365 fetch 1 ,mem_module_state 
-0x39e0 012366 isolate1 moudle_state_bt_bit ,pdata 
-0x39e1 012367 call app_bt_stop_discovery ,true 
-0x39e2 012368 fetch 1 ,mem_module_state 
-0x39e3 012369 isolate1 moudle_state_ble_bit ,pdata 
-0x39e4 012370 call app_ble_stop_adv ,true 
-0x39e5 012371 rtn 
-:      012372 module_set_conn_pin_low:
-0x39e6 012373 fetcht 1 ,mem_module_connect_state_gpio 
-0x39e7 012374 branch gpio_out_inactive 
-:      012376 module_process_with_credit:
-0x39e8 012377 fetch 1 ,mem_credit_flag 
-0x39e9 012378 rtneq credit_disable 
-0x39ea 012379 branch rfcomm_send_uih_without_payload 
-:      012381 module_process:
-0x39eb 012382 hfetch 1 ,core_uart_status 
-0x39ec 012383 bbit1 uart_status_rx_fifo_empty ,module_process_with_credit 
-0x39ed 012384 call uartd_prepare_rx 
-0x39ee 012385 ifetch 1 ,contru 
-0x39ef 012386 bne 0x01 ,module_hci_in_excp 
-0x39f0 012387 hfetch 2 ,core_uart_rxitems 
-0x39f1 012388 sub pdata ,2 ,null 
-0x39f2 012389 rtn positive 
-0x39f3 012390 ifetch 1 ,contru 
-0x39f4 012391 store 1 ,mem_module_uart_opcode 
-0x39f5 012392 ifetcht 1 ,contru 
-0x39f6 012393 copy contru ,rega 
-0x39f7 012394 storet 1 ,mem_module_uart_len 
-0x39f8 012395 add temp ,3 ,temp 
-0x39f9 012396 hfetch 2 ,core_uart_rxitems 
-0x39fa 012397 isub temp ,temp 
-0x39fb 012398 nrtn positive 
-0x39fc 012399 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
-0x39fd 012400 call module_hci_cmd_control 
-0x39fe 012401 fetch 1 ,mem_module_temp_nl_discard_packet 
-0x39ff 012402 rtneq hci_not_discard_packet 
-0x3a00 012403 branch module_hci_dicard_packet 
-:      012405 module_hci_in_excp:
-0x3a01 012406 call delay_10ms 
-0x3a02 012407 call module_hci_event_invalid_packet 
-0x3a03 012408 branch module_hci_release_except 
-:      012411 module_hci_release_except:
-0x3a04 012412 bpatch patch1b_7 ,mem_patch1b 
-0x3a05 012413 hfetch 2 ,core_uart_rxitems 
-0x3a06 012414 rtn blank 
-0x3a07 012415 call uartd_prepare_rx 
-0x3a08 012416 ifetch 1 ,contru 
-0x3a09 012417 sub pdata ,0x01 ,null 
-0x3a0a 012418 ncall module_hci_dicard_bytes ,zero 
-0x3a0b 012419 nbranch module_hci_release_except ,zero 
-0x3a0c 012420 ifetch 1 ,contru 
-0x3a0d 012421 rtneq hci_cmd_spp_data_req 
-0x3a0e 012422 rtneq hci_cmd_set_credit_given 
-0x3a0f 012423 increase -1 ,contru 
-0x3a10 012424 call module_hci_dicard_bytes 
-0x3a11 012425 branch module_hci_release_except 
-:      012427 module_hci_dicard_packet:
-0x3a12 012428 call uartd_prepare_rx 
-0x3a13 012429 increase 2 ,contru 
-0x3a14 012430 ifetch 1 ,contru 
-0x3a15 012431 iadd contru ,contru 
-:      012432 module_hci_dicard_bytes:
-0x3a16 012433 branch uartd_rxdone 
-:      012436 module_hci_cmd_control:
-0x3a17 012437 bpatch patch1c_0 ,mem_patch1c 
-0x3a18 012438 fetch 1 ,mem_module_uart_opcode 
-0x3a19 012439 beq hci_cmd_set_bt_addr_req ,module_hci_cmd_set_bt_addr 
-0x3a1a 012440 beq hci_cmd_set_le_addr_req ,module_hci_cmd_set_le_addr 
-0x3a1b 012441 beq hci_cmd_set_visibility_req ,module_hci_cmd_set_visibility 
-0x3a1c 012442 beq hci_cmd_set_bt_name_req ,module_hci_cmd_set_bt_name 
-0x3a1d 012443 beq hci_cmd_set_le_name_req ,module_hci_cmd_set_le_name 
-0x3a1e 012444 beq hci_cmd_spp_data_req ,module_hci_cmd_receive_spp_data 
-0x3a1f 012445 beq hci_cmd_le_data_req ,module_hci_cmd_receive_le_data 
-0x3a20 012446 beq hci_cmd_status_irq ,module_hci_cmd_inquire_status 
-0x3a21 012447 beq hci_cmd_set_pairing_req ,module_hci_cmd_set_pairing_mode 
-0x3a22 012448 beq hci_cmd_set_pincode_req ,module_hci_cmd_set_pincode 
-0x3a23 012449 beq hci_cmd_set_uartcontrol_req ,module_hci_cmd_set_uart_control_mode 
-0x3a24 012450 beq hci_cmd_set_uart_baud_req ,module_hci_cmd_set_uart_baud 
-0x3a25 012451 beq hci_cmd_version_req ,module_hci_cmd_version_request 
-0x3a26 012452 beq hci_cmd_bt_disconnect ,module_hci_cmd_bt_disconnect 
-0x3a27 012453 beq hci_cmd_ble_disconnect ,module_hci_cmd_ble_disconnect 
-0x3a28 012454 beq hci_cmd_set_nvram_req ,module_hci_cmd_set_nvram 
-0x3a29 012455 beq hci_cmd_confirm_gkey ,module_hci_cmd_confirm_gkey 
-0x3a2a 012456 beq hci_cmd_set_credit_given ,module_hci_cmd_set_credit_given 
-0x3a2b 012457 beq hci_cmd_auto_adv_scan ,module_hci_cmd_auto_adv 
-0x3a2c 012458 beq hci_cmd_power_req ,module_hci_cmd_power_request 
-0x3a2d 012459 beq hci_cmd_power_set ,module_hci_cmd_power_set 
-0x3a2e 012460 beq hci_cmd_passkey_entry ,module_hci_cmd_passkey_entry 
-0x3a2f 012461 beq hci_cmd_set_gpio ,module_hci_cmd_set_gpio 
-0x3a30 012462 beq hci_cmd_read_gpio ,module_hci_cmd_read_gpio 
-0x3a31 012463 beq hci_cmd_le_set_pairing ,module_hci_cmd_le_set_pairing_mode 
-0x3a32 012464 beq hci_cmd_le_set_adv_data ,module_hci_cmd_le_set_adv_data 
-0x3a33 012465 beq hci_cmd_le_set_scan_data ,module_hci_cmd_le_set_scan_data 
-0x3a34 012466 beq hci_cmd_le_send_conn_update_req ,module_hci_cmd_le_send_conn_update_req 
-0x3a35 012467 beq hci_cmd_le_set_adv_parm ,module_hci_cmd_set_le_adv_parameter 
-0x3a36 012468 beq hci_cmd_le_start_pairing ,module_hci_cmd_le_start_pairing 
-0x3a37 012469 beq hci_cmd_set_wake_gpio ,module_hci_cmd_set_wake_gpio 
-0x3a38 012470 beq hci_cmd_set_tx_power ,module_hci_cmd_set_tx_power 
-0x3a39 012471 beq hci_cmd_le_confirm_gkey ,module_hci_cmd_le_confirm_gkey 
-0x3a3a 012472 beq hci_cmd_reject_justwork ,module_hci_cmd_set_reject_justwork_flag 
-0x3a3b 012473 beq hci_cmd_reset_chip_req ,module_hci_cmd_reset_chip 
-0x3a3c 012474 beq hci_cmd_le_set_fixed_passkey ,module_hci_cmd_le_set_fixed_passkey 
-0x3a3d 012475 beq hci_test_cmd_close_lpm ,module_hci_test_cmde_close_lpm 
-0x3a3e 012476 branch module_hci_event_receive_invalid_cmd 
-:      012481 module_hci_cmd_set_bt_addr:
-0x3a3f 012482 fetch 1 ,mem_module_uart_len 
-0x3a40 012483 bne 6 ,module_hci_event_receive_invalid_cmd 
-0x3a41 012484 ifetch 6 ,contru 
-0x3a42 012485 store 6 ,mem_lap 
-0x3a43 012486 branch module_hci_event_receive_valid_cmd 
-:      012489 module_hci_cmd_set_le_addr:
-0x3a44 012490 fetch 1 ,mem_module_uart_len 
-0x3a45 012491 bne 6 ,module_hci_event_receive_invalid_cmd 
-0x3a46 012492 ifetch 6 ,contru 
-0x3a47 012493 store 6 ,mem_le_lap 
-0x3a48 012494 branch module_hci_event_receive_valid_cmd 
-:      012498 module_hci_cmd_set_visibility:
-0x3a49 012499 fetch 1 ,mem_module_uart_len 
-0x3a4a 012500 bne 1 ,module_hci_event_receive_invalid_cmd 
-0x3a4b 012501 copy rega ,contru 
-0x3a4c 012502 call module_hci_event_receive_valid_cmd 
-0x3a4d 012503 ifetcht 1 ,contru 
-0x3a4e 012504 storet 1 ,mem_module_bluetooth_stauts_by_command 
-0x3a4f 012505 fetch 2 ,mem_ui_state_map 
-0x3a50 012506 rtnbit1 ui_state_ble_connected 
-0x3a51 012507 rtnbit1 ui_state_bt_connected 
-:      012508 module_start_adv_discovery_by_command:
-0x3a52 012509 fetch 1 ,mem_module_state 
-0x3a53 012510 isolate1 moudle_state_bt_bit ,pdata 
-0x3a54 012511 nbranch moudle_start_adv_by_command ,true 
-0x3a55 012512 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
-0x3a56 012513 and temp ,0x03 ,pdata 
-0x3a57 012514 store 1 ,mem_scan_mode 
-:      012515 moudle_start_adv_by_command:
-0x3a58 012516 fetch 1 ,mem_module_state 
-0x3a59 012517 isolate1 moudle_state_ble_bit ,pdata 
-0x3a5a 012518 nrtn true 
-0x3a5b 012519 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
-0x3a5c 012520 isolate1 2 ,temp 
-0x3a5d 012521 branch app_ble_start_adv ,true 
-0x3a5e 012522 branch app_ble_stop_adv 
-:      012526 module_hci_cmd_set_bt_name:
-0x3a5f 012527 fetch 1 ,mem_module_uart_len 
-0x3a60 012528 sub pdata ,67 ,null 
-0x3a61 012529 nbranch module_hci_event_receive_invalid_cmd ,positive 
-0x3a62 012530 store 1 ,mem_local_name_length 
-0x3a63 012531 arg 8 ,loopcnt 
-0x3a64 012532 call memset0 
-0x3a65 012533 fetch 1 ,mem_module_uart_len 
-0x3a66 012534 copy pdata ,loopcnt 
-0x3a67 012535 copy rega ,contru 
-0x3a68 012536 arg mem_local_name ,contw 
-0x3a69 012537 call uart_copy_rx_bytes_fast 
-0x3a6a 012538 branch module_hci_event_receive_valid_cmd 
-:      012542 module_hci_cmd_set_le_name:
-0x3a6b 012543 fetch 1 ,mem_module_uart_len 
-0x3a6c 012544 sub pdata ,29 ,null 
-0x3a6d 012545 nbranch module_hci_event_receive_invalid_cmd ,positive 
-0x3a6e 012546 store 1 ,mem_le_name_len 
-0x3a6f 012547 copy pdata ,loopcnt 
-0x3a70 012548 copy rega ,contru 
-0x3a71 012549 arg mem_le_name ,contw 
-0x3a72 012550 call uart_copy_rx_bytes_fast 
-0x3a73 012551 call le_modified_name 
-0x3a74 012552 branch module_hci_event_receive_valid_cmd 
-:      012556 module_hci_cmd_receive_spp_data:
-0x3a75 012557 fetch 1 ,mem_ui_state_map 
-0x3a76 012558 bbit0 ui_state_bt_spp_conn ,module_hci_event_receive_invalid_cmd 
-0x3a77 012559 call app_check_sniff 
-0x3a78 012560 branch module_hci_cmd_spp_exit_sniff ,true 
-0x3a79 012561 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3a7a 012563 call module_spp_clear_last_transmite_clock 
-0x3a7b 012564 fetch 1 ,mem_remote_credits 
-0x3a7c 012565 rtn blank 
-0x3a7d 012566 fetch 2 ,mem_nl_rx_len_all 
-0x3a7e 012567 bne 0 ,module_hci_cmd_pass_init_ng_rx_len_all 
-0x3a7f 012568 fetch 1 ,mem_module_uart_len 
-0x3a80 012569 store 2 ,mem_nl_rx_len_all 
-0x3a81 012571 copy rega ,contru 
-0x3a82 012574 copy contru ,pdata 
-0x3a83 012575 store 2 ,mem_nl_rx_data_src 
-:      012576 module_hci_cmd_pass_init_ng_rx_len_all:
-0x3a84 012577 call module_hci_cmd_get_current_packet_len_and_remain_len 
-0x3a85 012578 branch spp_tx_rfcomm_packet 
-:      012580 module_hci_cmd_spp_exit_sniff:
-0x3a86 012581 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3a87 012582 branch module_exit_sniff 
-:      012584 module_hci_cmd_get_current_packet_len_and_remain_len:
-0x3a88 012585 call module_hci_cmd_get_current_patcket_len 
-0x3a89 012586 fetch 2 ,mem_nl_rx_len_all 
-0x3a8a 012587 fetcht 2 ,mem_current_packet_length 
-0x3a8b 012588 isub temp ,pdata 
-0x3a8c 012589 store 2 ,mem_nl_rx_len_all 
-0x3a8d 012590 rtn 
-:      012592 module_hci_cmd_get_current_patcket_len:
-0x3a8e 012593 fetch 2 ,mem_nl_rx_len_all 
-0x3a8f 012594 arg dm_refcom_buff_len ,temp 
-0x3a90 012595 call not_greater_than 
-0x3a91 012596 fetcht 2 ,mem_rfcomm_max_frame_size 
-0x3a92 012597 call not_greater_than 
-0x3a93 012598 fetcht 2 ,mem_pn_max_frame_size 
-0x3a94 012599 call not_greater_than 
-0x3a95 012600 store 2 ,mem_current_packet_length 
-0x3a96 012601 rtn 
-:      012603 module_hci_command_tx_spp_tx_complete:
-0x3a97 012604 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3a98 012605 jam hci_cmd_spp_data_req ,mem_module_uart_opcode 
-0x3a99 012606 branch module_hci_event_receive_valid_cmd 
-:      012610 module_hci_cmd_receive_le_data:
-0x3a9a 012611 fetch 2 ,mem_ui_state_map 
-0x3a9b 012612 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
-0x3a9c 012613 call module_check_ble_encrypt_state 
-0x3a9d 012614 branch module_hci_event_receive_invalid_cmd ,user 
-0x3a9e 012615 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3a9f 012616 fetch 1 ,mem_module_flag 
-0x3aa0 012617 bbit1 module_flag_ble_data_finish ,module_hci_cmd_receive_le_data_finish 
-0x3aa1 012618 fetch 1 ,mem_module_hci_notify_len 
-0x3aa2 012619 nrtn blank 
-0x3aa3 012620 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3aa4 012621 ifetch 2 ,contru 
-0x3aa5 012622 store 2 ,mem_module_hci_notify_handle 
-0x3aa6 012623 copy contru ,pdata 
-0x3aa7 012624 store 2 ,mem_module_hci_nofiy_addr 
-0x3aa8 012625 fetch 1 ,mem_module_uart_len 
-0x3aa9 012626 pincrease -2 
-0x3aaa 012627 nbranch module_hci_event_receive_invalid_cmd ,positive 
-0x3aab 012628 branch module_hci_event_receive_invalid_cmd ,zero 
-0x3aac 012629 store 1 ,mem_module_hci_notify_len 
-0x3aad 012630 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3aae 012631 call le_set_config_more_data 
-0x3aaf 012632 call module_hci_cmd_transmit_le_notify 
-0x3ab0 012633 call module_hci_cmd_transmit_le_notify 
-0x3ab1 012634 call module_hci_cmd_transmit_le_notify 
-0x3ab2 012635 fetch 1 ,mem_module_flag 
-0x3ab3 012636 rtnbit0 module_flag_ble_data_finish 
-:      012637 module_hci_cmd_receive_le_data_finish:
-0x3ab4 012638 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
-0x3ab5 012639 call module_clear_le_tx_data_flag 
-0x3ab6 012640 branch module_hci_event_receive_valid_cmd 
-:      012642 module_hci_cmd_transmit_le_notify:
-0x3ab7 012643 fetch 1 ,mem_module_hci_notify_len 
-0x3ab8 012644 rtn blank 
-0x3ab9 012645 call le_fifo_check_nearly_full 
-0x3aba 012646 nrtn blank 
-0x3abb 012647 call module_get_le_remote_mtu 
-0x3abc 012648 bpatch patch1c_1 ,mem_patch1c 
-0x3abd 012649 add temp ,-3 ,pdata 
-0x3abe 012650 fetcht 1 ,mem_module_hci_notify_len 
-0x3abf 012651 call not_greater_than 
-0x3ac0 012652 copy pdata ,rega 
-0x3ac1 012653 copy temp ,pdata 
-0x3ac2 012654 isub rega ,pdata 
-0x3ac3 012655 store 1 ,mem_module_hci_notify_len 
-0x3ac4 012656 fetcht 2 ,mem_module_hci_notify_handle 
-0x3ac5 012657 call le_att_malloc_tx_notify 
-0x3ac6 012658 fetch 2 ,mem_module_hci_nofiy_addr 
-0x3ac7 012659 copy pdata ,contru 
-0x3ac8 012660 copy rega ,loopcnt 
-0x3ac9 012661 call uart_copy_rx_bytes_fast 
-0x3aca 012662 copy contru ,pdata 
-0x3acb 012663 store 2 ,mem_module_hci_nofiy_addr 
-0x3acc 012664 fetch 1 ,mem_module_hci_notify_len 
-0x3acd 012665 nrtn blank 
-0x3ace 012666 branch module_set_le_tx_data_flag 
-:      012670 module_get_le_remote_mtu:
-0x3acf 012671 arg 0x17 ,temp 
-0x3ad0 012672 fetch 1 ,mem_module_flag 
-0x3ad1 012673 rtnbit1 module_flag_ble_send_mtu23 
-0x3ad2 012674 fetcht 2 ,mem_le_remote_mtu 
-0x3ad3 012675 rtn 
-:      012677 module_check_ble_encrypt_state:
-0x3ad4 012678 fetch 1 ,mem_module_flag 
-0x3ad5 012679 bbit1 module_flag_ble_data_encrypt ,le_check_encrypt_state 
-0x3ad6 012680 branch disable_user 
-:      012684 module_hci_cmd_inquire_status:
-0x3ad7 012685 branch module_hci_event_status_res 
-:      012689 module_hci_cmd_set_pairing_mode:
-0x3ad8 012690 copy rega ,contru 
-0x3ad9 012691 ifetch 1 ,contru 
-0x3ada 012692 beq pairing_pincode ,module_hci_pairing_pincode_mode 
-0x3adb 012693 beq pairing_justwork ,module_hci_pairing_just_work_mode 
-0x3adc 012694 beq pairing_passkey ,module_hci_pairing_passkey 
-0x3add 012695 beq pairing_confirm ,module_hci_pairing_numeric_comparison 
-0x3ade 012696 branch module_hci_event_receive_invalid_cmd 
-:      012697 module_hci_pairing_pincode_mode:
-0x3adf 012698 call ssp_disable 
-0x3ae0 012699 jam 0 ,mem_ssp_enable 
-0x3ae1 012700 branch module_hci_event_receive_valid_cmd 
-:      012701 module_hci_pairing_just_work_mode:
-0x3ae2 012702 setarg ssp_mode_just_work_io_cap_data 
-:      012703 module_hci_sspairing_mode:
-0x3ae3 012704 store 3 ,mem_sp_iocap_local 
-0x3ae4 012705 store 1 ,mem_ssp_mode_flag 
-0x3ae5 012706 call ssp_enable 
-0x3ae6 012707 jam 1 ,mem_ssp_enable 
-0x3ae7 012708 branch module_hci_event_receive_valid_cmd 
-:      012709 module_hci_pairing_passkey:
-0x3ae8 012710 setarg ssp_mode_passkey_io_cap_data 
-0x3ae9 012711 branch module_hci_sspairing_mode 
-:      012713 module_hci_pairing_numeric_comparison:
-0x3aea 012714 setarg ssp_mode_ssp_pin_io_cap_data 
-0x3aeb 012715 branch module_hci_sspairing_mode 
-:      012718 module_hci_cmd_set_pincode:
-0x3aec 012719 fetch 1 ,mem_module_uart_len 
-0x3aed 012720 sub pdata ,16 ,null 
-0x3aee 012721 nbranch module_hci_event_receive_invalid_cmd ,positive 
-0x3aef 012722 store 1 ,mem_pin_length 
-0x3af0 012723 copy pdata ,loopcnt 
-0x3af1 012724 arg mem_pin ,contw 
-0x3af2 012725 call uart_copy_rx_bytes 
-0x3af3 012726 branch module_hci_event_receive_valid_cmd 
-:      012730 module_hci_cmd_set_uart_control_mode:
-0x3af4 012731 copy rega ,contru 
-0x3af5 012732 ifetch 1 ,contru 
-0x3af6 012733 hfetcht 1 ,core_uart_ctrl 
-0x3af7 012734 nsetflag blank ,4 ,temp 
-0x3af8 012735 hstoret 1 ,core_uart_ctrl 
-0x3af9 012736 branch module_hci_event_receive_valid_cmd 
-:      012740 module_hci_cmd_set_uart_baud:
-0x3afa 012741 fetch 1 ,mem_module_uart_len 
-0x3afb 012742 copy pdata ,loopcnt 
-0x3afc 012743 copy rega ,contru 
-0x3afd 012744 call string2dec_from_uart 
-0x3afe 012745 setarg uart_clk_24 
-0x3aff 012746 idiv temp 
-0x3b00 012747 call wait_div_end 
-0x3b01 012748 quotient pdata 
-:      012749 module_hci_cmd_set_uart_baud_ok:
-0x3b02 012750 store uart_baud_len ,mem_baud 
-0x3b03 012751 call module_hci_event_receive_valid_cmd 
-0x3b04 012752 call wait_uarttx 
-0x3b05 012753 branch uart_set_baud_by_mem 
-:      012757 module_hci_cmd_version_request:
-0x3b06 012758 arg 2 ,rega 
-0x3b07 012759 arg mem_soft_version_num ,regb 
-0x3b08 012760 arg 0 ,temp 
-0x3b09 012761 branch module_hci_event_set_cmd 
-:      012762 module_hci_event_set_cmd_send_response:
-0x3b0a 012763 store 2 ,mem_event_cmd_response_content 
-0x3b0b 012764 arg mem_event_cmd_response_content ,regb 
-0x3b0c 012765 arg 0 ,temp 
-0x3b0d 012766 branch module_hci_event_set_cmd 
-:      012770 module_hci_cmd_bt_disconnect:
-0x3b0e 012771 fetch 2 ,mem_ui_state_map 
-0x3b0f 012772 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
-:      012773 module_hci_cmd_bt_disconnect_doing:
-0x3b10 012774 call module_hci_event_receive_valid_cmd 
-0x3b11 012775 branch app_bt_disconnect 
-:      012779 module_hci_cmd_ble_disconnect:
-0x3b12 012780 fetch 2 ,mem_ui_state_map 
-0x3b13 012781 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
-:      012782 module_hci_cmd_ble_disconnect_doing:
-0x3b14 012783 call module_hci_event_receive_valid_cmd 
-0x3b15 012784 branch app_ble_disconnect 
-:      012790 module_hci_cmd_set_nvram:
-0x3b16 012791 fetch 1 ,mem_module_uart_len 
-0x3b17 012792 copy pdata ,loopcnt 
-0x3b18 012793 copy rega ,contru 
-0x3b19 012794 fetch 2 ,mem_nv_data_ptr 
-0x3b1a 012795 icopy contw 
-0x3b1b 012796 call uart_copy_rx_bytes_fast 
-0x3b1c 012797 branch module_hci_event_receive_valid_cmd 
-:      012801 module_hci_cmd_confirm_gkey:
-0x3b1d 012802 fetch 1 ,mem_ui_state_map 
-0x3b1e 012803 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
-0x3b1f 012804 ifetch 1 ,contru 
-0x3b20 012805 fetcht 1 ,mem_flag_mode_ssp_pin 
-0x3b21 012806 setflag blank ,flag_mode_ssp_pin_comparison_result_bit ,temp 
-0x3b22 012807 set1 flag_mode_ssp_pin_reviceve_comparison_bit ,temp 
-0x3b23 012808 storet 1 ,mem_flag_mode_ssp_pin 
-0x3b24 012810 call module_hci_event_receive_valid_cmd 
-0x3b25 012812 fetch 1 ,mem_flag_mode_ssp_pin 
-0x3b26 012813 bbit1 flag_mode_ssp_pin_recieve_dhkey_bit ,module_hci_cmd_spp_number_comparison_result_is1 
-0x3b27 012814 rtn 
-:      012816 dhkey_not_accept:
-0x3b28 012817 jam 0 ,mem_flag_mode_ssp_pin 
-0x3b29 012818 jam bt_cmd_dhkey_not_accept ,mem_fifo_temp 
-0x3b2a 012819 branch ui_ipc_send_cmd 
-:      012822 module_hci_cmd_spp_number_comparison_result_is1:
-0x3b2b 012823 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
-0x3b2c 012824 branch dhkey_not_accept 
-:      012828 module_hci_cmd_set_credit_given:
-0x3b2d 012829 fetch 1 ,mem_ui_state_map 
-0x3b2e 012830 rtnbit0 ui_state_bt_spp_conn 
-0x3b2f 012831 fetch 1 ,mem_credit_flag 
-0x3b30 012832 rtneq credit_disable 
-0x3b31 012833 ifetch 1 ,contru 
-0x3b32 012834 fetcht 1 ,mem_credit_given 
-0x3b33 012835 iadd temp ,temp 
-0x3b34 012836 storet 1 ,mem_credit_given 
-0x3b35 012837 rtn 
-:      012841 module_hci_cmd_auto_adv:
-0x3b36 012842 arg 0x40 ,loopcnt 
-0x3b37 012843 arg mem_le_adv_data_len ,contw 
-0x3b38 012844 call clear_mem 
-0x3b39 012845 setarg 0 
-0x3b3a 012846 store 1 ,mem_regb 
-0x3b3b 012847 copy rega ,contru 
-:      012848 module_hci_cmd_auto_adv_loop:
-0x3b3c 012849 copy contru ,pdata 
-0x3b3d 012850 store 2 ,mem_regc 
-0x3b3e 012851 call module_hci_cmd_auto_adv_adv_analys 
-0x3b3f 012853 fetch 1 ,mem_regb 
-0x3b40 012854 fetcht 1 ,mem_temp 
-0x3b41 012855 increase 1 ,temp 
-0x3b42 012856 iadd temp ,pdata 
-0x3b43 012857 store 1 ,mem_regb 
-0x3b44 012859 sub pdata ,31 ,null 
-0x3b45 012860 nbranch module_hci_cmd_auto_adv_store_scan ,positive 
-:      012861 module_hci_cmd_auto_adv_store_adv:
-0x3b46 012862 fetcht 1 ,mem_le_adv_data_len 
-0x3b47 012863 setarg mem_le_adv_data 
-0x3b48 012864 iadd temp ,pdata 
-0x3b49 012865 store 2 ,mem_contw 
-0x3b4a 012866 fetcht 1 ,mem_temp 
-0x3b4b 012867 increase 1 ,temp 
-0x3b4c 012868 fetch 1 ,mem_le_adv_data_len 
-0x3b4d 012869 iadd temp ,pdata 
-0x3b4e 012870 store 1 ,mem_le_adv_data_len 
-0x3b4f 012871 branch module_hci_cmd_auto_adv_store_common 
-:      012872 module_hci_cmd_auto_adv_store_scan:
-0x3b50 012873 fetcht 1 ,mem_le_scan_data_len 
-0x3b51 012874 setarg mem_le_scan_data 
-0x3b52 012875 iadd temp ,pdata 
-0x3b53 012876 store 2 ,mem_contw 
-0x3b54 012877 fetcht 1 ,mem_temp 
-0x3b55 012878 increase 1 ,temp 
-0x3b56 012879 fetch 1 ,mem_le_scan_data_len 
-0x3b57 012880 iadd temp ,pdata 
-0x3b58 012881 store 1 ,mem_le_scan_data_len 
-:      012882 module_hci_cmd_auto_adv_store_common:
-0x3b59 012883 fetch 2 ,mem_contw 
-0x3b5a 012884 copy pdata ,contw 
-0x3b5b 012885 fetch 2 ,mem_regc 
-0x3b5c 012886 copy pdata ,contru 
-0x3b5d 012888 copy temp ,loopcnt 
-0x3b5e 012889 call uart_copy_rx_bytes_fast 
-0x3b5f 012891 fetch 1 ,mem_module_uart_len 
-0x3b60 012892 fetcht 1 ,mem_regb 
-0x3b61 012893 isub temp ,null 
-0x3b62 012894 nbranch module_hci_cmd_auto_adv_loop ,zero 
-0x3b63 012895 branch module_hci_event_receive_valid_cmd 
-:      012898 module_hci_cmd_auto_adv_adv_analys:
-0x3b64 012899 ifetch 1 ,contru 
-0x3b65 012900 store 1 ,mem_temp 
-0x3b66 012901 ifetch 1 ,contru 
-0x3b67 012902 store 1 ,mem_rega 
-0x3b68 012903 rtn 
-:      012907 module_hci_cmd_power_request:
-0x3b69 012908 arg 0 ,temp 
-0x3b6a 012909 arg 2 ,rega 
-0x3b6b 012910 fetch 2 ,mem_module_vdd_quotient 
-0x3b6c 012911 store 2 ,mem_event_cmd_response_content 
-0x3b6d 012912 arg mem_event_cmd_response_content ,regb 
-0x3b6e 012913 branch module_hci_event_set_cmd 
-:      012917 module_hci_cmd_power_set:
-0x3b6f 012918 fetch 1 ,mem_module_uart_len 
-0x3b70 012919 bne 1 ,module_hci_event_receive_invalid_cmd 
-0x3b71 012920 ifetch 1 ,contru 
-0x3b72 012921 store 1 ,mem_module_read_vdd_flag 
-0x3b73 012922 setarg 0x00 
-0x3b74 012923 store 2 ,mem_module_vdd_quotient 
-0x3b75 012924 branch module_hci_event_receive_valid_cmd 
-:      012928 module_hci_cmd_passkey_entry:
-0x3b76 012929 ifetch 4 ,contru 
-0x3b77 012930 store 4 ,mem_pin 
-0x3b78 012931 jam 4 ,mem_pin_length 
-0x3b79 012932 jam 0 ,mem_authentication_passkey_times 
-0x3b7a 012933 call module_hci_event_receive_valid_cmd 
-0x3b7b 012934 branch authentication_passkey 
-:      012938 module_hci_cmd_set_gpio:
-0x3b7c 012939 fetch 1 ,mem_module_uart_len 
-0x3b7d 012940 bne 3 ,module_hci_event_receive_invalid_cmd 
-0x3b7e 012941 ifetch 1 ,contru 
-0x3b7f 012942 beq hci_cmd_config_gpio_input ,module_set_gpio_input 
-0x3b80 012943 beq hci_cmd_config_gpio_output ,module_set_gpio_output 
-0x3b81 012944 branch module_hci_event_receive_invalid_cmd 
-:      012946 module_set_gpio_input:
-0x3b82 012947 ifetcht 1 ,contru 
-0x3b83 012948 ifetch 1 ,contru 
-0x3b84 012949 beq gpio_input_high_impedance ,module_set_gpio_high_impedance 
-0x3b85 012950 nsetflag blank ,7 ,temp 
-0x3b86 012951 call gpio_config_input 
-0x3b87 012952 branch module_hci_event_receive_valid_cmd 
-:      012954 module_set_gpio_high_impedance:
-0x3b88 012955 call gpio_set_high_impedance 
-0x3b89 012956 branch module_hci_event_receive_valid_cmd 
-:      012958 module_set_gpio_output:
-0x3b8a 012959 ifetcht 1 ,contru 
-0x3b8b 012960 call gpio_config_output0 
-0x3b8c 012961 ifetch 1 ,contru 
-0x3b8d 012962 isolate1 0 ,pdata 
-0x3b8e 012963 call gpio_out_flag 
-0x3b8f 012964 branch module_hci_event_receive_valid_cmd 
-:      012968 module_hci_cmd_read_gpio:
-0x3b90 012969 fetch 1 ,mem_module_uart_len 
-0x3b91 012970 bne 1 ,module_hci_event_receive_invalid_cmd 
-0x3b92 012971 ifetcht 1 ,contru 
-0x3b93 012972 call gpio_get_bit 
-0x3b94 012973 setarg 0x0 
-0x3b95 012974 nsetflag true ,0 ,pdata 
-0x3b96 012975 arg 1 ,rega 
-0x3b97 012976 branch module_hci_event_set_cmd_send_response 
-:      012980 module_hci_cmd_le_set_pairing_mode:
-0x3b98 012981 copy rega ,contru 
-0x3b99 012982 ifetch 1 ,contru 
-0x3b9a 012983 copy pdata ,temp 
-0x3b9b 012984 beq le_pairing_mode_secure_connect_justwork ,module_le_set_pairing_mode_secure_justwork 
-0x3b9c 012985 beq le_pairing_mode_secure_connect_numeric ,module_le_set_pairing_mode_secure_numeric 
-0x3b9d 012986 beq le_pairing_mode_secure_connect_passkey ,module_le_set_pairing_mode_secure_passkey 
-0x3b9e 012987 store 1 ,mem_le_pairing_mode 
-0x3b9f 012988 beq le_pairing_mode_none ,module_le_set_no_pairing 
-0x3ba0 012989 beq le_pairing_mode_lagacy_justwork ,module_le_set_pairing_mode_lagacy_just_work 
-0x3ba1 012990 beq le_pairing_mode_lagacy_passkey ,module_le_set_pairing_mode_lagacy_passkey 
-0x3ba2 012991 branch module_hci_event_receive_invalid_cmd 
-:      012993 module_le_set_pairing_mode_secure_justwork:
-0x3ba3 012994 fetch 1 ,mem_le_secure_connect_enable 
-0x3ba4 012995 branch module_hci_event_receive_invalid_cmd ,blank 
-0x3ba5 012996 storet 1 ,mem_le_pairing_mode 
-0x3ba6 012997 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
-0x3ba7 012998 branch module_le_set_noinputnooutput 
-:      012999 module_le_set_pairing_mode_secure_numeric:
-0x3ba8 013000 fetch 1 ,mem_le_secure_connect_enable 
-0x3ba9 013001 branch module_hci_event_receive_invalid_cmd ,blank 
-0x3baa 013002 storet 1 ,mem_le_pairing_mode 
-0x3bab 013003 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
-0x3bac 013004 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
-0x3bad 013005 branch module_hci_event_receive_valid_cmd 
-:      013006 module_le_set_pairing_mode_secure_passkey:
-0x3bae 013007 fetch 1 ,mem_le_secure_connect_enable 
-0x3baf 013008 branch module_hci_event_receive_invalid_cmd ,blank 
-0x3bb0 013009 storet 1 ,mem_le_pairing_mode 
-0x3bb1 013010 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
-0x3bb2 013011 branch module_le_set_displayonly 
-:      013012 module_le_set_no_pairing:
-0x3bb3 013013 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
-:      013014 module_le_set_noinputnooutput:
-0x3bb4 013015 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
-0x3bb5 013016 branch module_hci_event_receive_valid_cmd 
-:      013017 module_le_set_pairing_mode_lagacy_just_work:
-0x3bb6 013018 jam flag_le_bonding_mitm ,mem_le_pres_auth 
-0x3bb7 013019 branch module_le_set_noinputnooutput 
-:      013020 module_le_set_pairing_mode_lagacy_passkey:
-0x3bb8 013021 jam flag_le_bonding_mitm ,mem_le_pres_auth 
-:      013022 module_le_set_displayonly:
-0x3bb9 013023 jam flag_iocap_displayonly ,mem_le_pres_iocap 
-0x3bba 013024 branch module_hci_event_receive_valid_cmd 
-:      013028 module_hci_cmd_le_set_adv_data:
-0x3bbb 013029 fetch 1 ,mem_module_uart_len 
-0x3bbc 013030 sub pdata ,31 ,null 
-0x3bbd 013031 nbranch module_hci_event_receive_invalid_cmd ,positive 
-0x3bbe 013032 store 1 ,mem_le_adv_data_len 
-0x3bbf 013033 copy pdata ,loopcnt 
-0x3bc0 013034 copy rega ,contru 
-0x3bc1 013035 arg mem_le_adv_data ,contw 
-0x3bc2 013036 call uart_copy_rx_bytes_fast 
-0x3bc3 013037 branch module_hci_event_receive_valid_cmd 
-:      013041 module_hci_cmd_le_set_scan_data:
-0x3bc4 013042 fetch 1 ,mem_module_uart_len 
-0x3bc5 013043 sub pdata ,31 ,null 
-0x3bc6 013044 nbranch module_hci_event_receive_invalid_cmd ,positive 
-0x3bc7 013045 store 1 ,mem_le_scan_data_len 
-0x3bc8 013046 copy pdata ,loopcnt 
-0x3bc9 013047 copy rega ,contru 
-0x3bca 013048 arg mem_le_scan_data ,contw 
-0x3bcb 013049 call uart_copy_rx_bytes_fast 
-0x3bcc 013050 branch module_hci_event_receive_valid_cmd 
-:      013054 module_hci_cmd_le_send_conn_update_req:
-0x3bcd 013055 fetch 2 ,mem_ui_state_map 
-0x3bce 013056 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
-0x3bcf 013057 fetch 1 ,mem_module_uart_len 
-0x3bd0 013058 bne 0x08 ,module_hci_event_receive_invalid_cmd 
-0x3bd1 013059 copy rega ,contru 
-0x3bd2 013060 ifetch 8 ,contru 
-0x3bd3 013061 store 8 ,mem_le_interval_min 
-0x3bd4 013062 jam bt_cmd_le_update_conn ,mem_fifo_temp 
-0x3bd5 013063 call ui_ipc_send_cmd 
-0x3bd6 013064 branch module_hci_event_receive_valid_cmd 
-:      013068 module_hci_cmd_set_le_adv_parameter:
-0x3bd7 013069 ifetch 2 ,contru 
-0x3bd8 013070 store 2 ,mem_le_adv_interval 
-0x3bd9 013071 branch module_hci_event_receive_valid_cmd 
-:      013075 module_hci_cmd_le_start_pairing:
-0x3bda 013076 fetch 1 ,mem_le_pairing_mode 
-0x3bdb 013077 branch module_hci_event_receive_invalid_cmd ,blank 
-0x3bdc 013078 fetch 1 ,mem_le_pairing_state 
-0x3bdd 013079 bne flag_le_pairing_null ,module_hci_event_receive_invalid_cmd 
-0x3bde 013080 fetch 1 ,mem_le_enc_state 
-0x3bdf 013081 bne flag_le_enc_null ,module_hci_event_receive_invalid_cmd 
-0x3be0 013082 call check_51cmd_le_smp_sec_req 
-0x3be1 013083 branch module_hci_event_receive_valid_cmd 
-:      013087 module_hci_cmd_set_wake_gpio:
-0x3be2 013088 fetch 1 ,mem_module_uart_len 
-0x3be3 013089 bne 5 ,module_hci_event_receive_invalid_cmd 
-0x3be4 013090 ifetch 1 ,contru 
-0x3be5 013091 store 1 ,mem_module_mcu_wake_pin 
-0x3be6 013092 ifetch 4 ,contru 
-0x3be7 013093 store 4 ,mem_module_mcu_wake_delay_us 
-0x3be8 013094 fetcht 1 ,mem_module_mcu_wake_pin 
-0x3be9 013095 call gpio_config_output 
-0x3bea 013096 call module_set_mcu_wake_pin_low 
-0x3beb 013097 branch module_hci_event_receive_valid_cmd 
-:      013101 module_hci_cmd_set_tx_power:
-0x3bec 013102 fetch 1 ,mem_module_uart_len 
-0x3bed 013103 bne 0x01 ,module_hci_event_receive_invalid_cmd 
-0x3bee 013104 ifetch 1 ,contru 
-0x3bef 013105 store 1 ,mem_tx_power 
-0x3bf0 013106 branch module_hci_event_receive_valid_cmd 
-:      013110 module_hci_cmd_le_confirm_gkey:
-0x3bf1 013111 ifetch 1 ,contru 
-0x3bf2 013112 beq 0x01 ,module_hci_cmd_le_confirm_gkey_fail 
-0x3bf3 013113 fetch 1 ,mem_le_secure_connect_state 
-0x3bf4 013114 beq le_sc_stat_send_public_key ,module_hci_cmd_le_confirm_gkey_ok 
-0x3bf5 013115 beq le_sc_stat_receive_dhkey ,module_hci_cmd_le_confirm_gkey_ok 
-0x3bf6 013116 beq le_sc_stat_wait_confirm_gkey ,module_hci_cmd_le_confirm_gkey_ok 
-0x3bf7 013117 branch module_hci_event_receive_invalid_cmd 
-:      013118 module_hci_cmd_le_confirm_gkey_ok:
-0x3bf8 013119 jam flag_le_sc_confrim_gkey_ok ,mem_le_sc_confirm_gkey_flag 
-0x3bf9 013120 branch module_hci_event_receive_valid_cmd 
-:      013122 module_hci_cmd_le_confirm_gkey_fail:
-0x3bfa 013123 call le_send_pairing_confirm_value_failed 
-0x3bfb 013124 branch module_hci_event_receive_valid_cmd 
-:      013128 module_hci_cmd_set_reject_justwork_flag:
-0x3bfc 013129 fetch 1 ,mem_module_uart_len 
-0x3bfd 013130 bne 0x01 ,module_hci_event_receive_invalid_cmd 
-0x3bfe 013131 call module_hci_event_receive_valid_cmd 
-0x3bff 013132 ifetch 1 ,contru 
-0x3c00 013133 branch classic_bt_clr_reject_justwork_flag ,blank 
-0x3c01 013134 branch classic_bt_set_reject_justwork_flag 
-:      013138 module_hci_cmd_reset_chip:
-0x3c02 013139 call module_hci_event_receive_valid_cmd 
-0x3c03 013140 call wait_uarttx 
-0x3c04 013141 jam 0x01 ,core_reset 
-0x3c05 013142 branch loop 
-:      013146 module_hci_cmd_le_set_fixed_passkey:
-0x3c06 013147 fetch 1 ,mem_module_uart_len 
-0x3c07 013148 beq 0 ,module_hci_event_receive_invalid_cmd 
-0x3c08 013149 ifetch 1 ,contru 
-0x3c09 013150 branch module_hci_cmd_le_set_random_passkey ,blank 
-0x3c0a 013151 fetch 1 ,mem_module_uart_len 
-0x3c0b 013152 bne 5 ,module_hci_event_receive_invalid_cmd 
-0x3c0c 013153 ifetch 4 ,contru 
-0x3c0d 013154 arg 1000000 ,temp 
-0x3c0e 013155 isub temp ,null 
-0x3c0f 013156 branch module_hci_event_receive_invalid_cmd ,positive 
-0x3c10 013157 store 4 ,mem_le_tk 
-0x3c11 013158 call le_set_config_fixed_tk 
-0x3c12 013159 branch module_hci_event_receive_valid_cmd 
-:      013161 module_hci_cmd_le_set_random_passkey:
-0x3c13 013162 call le_clr_config_fixed_tk 
-0x3c14 013163 branch module_hci_event_receive_valid_cmd 
-:      013167 module_hci_test_cmde_close_lpm:
-0x3c15 013168 jam 0 ,mem_lpm_mode 
-0x3c16 013169 branch module_hci_event_receive_valid_cmd 
-:      013174 module_hci_event_receive_invalid_cmd:
-0x3c17 013175 arg 1 ,temp 
-0x3c18 013176 arg 0 ,rega 
-0x3c19 013177 branch module_hci_event_set_cmd 
-:      013180 module_hci_event_receive_valid_cmd:
-0x3c1a 013181 arg 0 ,temp 
-0x3c1b 013182 arg 0 ,rega 
-0x3c1c 013183 branch module_hci_event_set_cmd 
-:      013187 module_hci_event_spp_connect:
-0x3c1d 013188 jam hci_event_spp_conn_rep ,mem_module_uart_opcode 
-0x3c1e 013189 branch module_hci_event_enter_standby_mode_len0 
-:      013193 module_hci_event_le_connect:
-0x3c1f 013194 jam hci_event_le_conn_rep ,mem_module_uart_opcode 
-0x3c20 013195 branch module_hci_event_enter_standby_mode_len0 
-:      013199 module_hci_event_spp_disconnect:
-0x3c21 013200 jam hci_event_spp_dis_rep ,mem_module_uart_opcode 
-0x3c22 013201 branch module_hci_event_enter_standby_mode_len0 
-:      013205 module_hci_event_le_disconnect:
-0x3c23 013206 jam hci_event_le_dis_rep ,mem_module_uart_opcode 
-0x3c24 013207 branch module_hci_event_enter_standby_mode_len0 
-:      013215 module_hci_event_set_cmd:
-0x3c25 013216 fetch 1 ,mem_module_uart_opcode 
-0x3c26 013217 copy pdata ,regc 
-0x3c27 013218 jam hci_event_cmd_res ,mem_module_uart_opcode 
-0x3c28 013219 setarg 2 
-0x3c29 013220 iadd rega ,pdata 
-0x3c2a 013221 call module_hci_prepare_tx 
-0x3c2b 013222 copy regc ,pdata 
-0x3c2c 013223 istore 1 ,contwu 
-0x3c2d 013224 istoret 1 ,contwu 
-0x3c2e 013225 copy rega ,loopcnt 
-0x3c2f 013226 copy regb ,contr 
-0x3c30 013227 call uart_copy_tx_bytes 
-0x3c31 013228 branch uartd_send 
-:      013232 module_hci_event_receive_spp_data:
-0x3c32 013234 call module_spp_clear_last_transmite_clock 
-0x3c33 013235 jam hci_event_spp_data_rep ,mem_module_uart_opcode 
-0x3c34 013236 fetch 1 ,mem_current_length 
-0x3c35 013237 rtn blank 
-0x3c36 013238 call module_hci_prepare_tx 
-0x3c37 013239 fetch 1 ,mem_current_length 
-0x3c38 013240 copy pdata ,loopcnt 
-0x3c39 013241 fetch 2 ,mem_rfcomm_uih_payload_ptr 
-0x3c3a 013242 copy pdata ,contr 
-0x3c3b 013243 call uart_copy_tx_bytes_fast 
-0x3c3c 013244 branch uartd_send 
-:      013248 module_hci_event_receive_le_data:
-0x3c3d 013249 jam hci_event_le_data_rep ,mem_module_uart_opcode 
-0x3c3e 013250 fetch 1 ,mem_module_le_rx_data_len 
-0x3c3f 013251 icopy loopcnt 
-0x3c40 013252 increase 2 ,pdata 
-0x3c41 013253 call module_hci_prepare_tx 
-0x3c42 013254 fetch 2 ,mem_module_le_rx_data_handle 
-0x3c43 013255 istore 2 ,contwu 
-0x3c44 013256 fetch 2 ,mem_module_le_rx_data_address 
-0x3c45 013257 icopy contr 
-0x3c46 013258 call uart_copy_tx_bytes_fast 
-0x3c47 013259 branch uartd_send 
-:      013263 module_hci_event_enter_standby_mode:
-0x3c48 013264 jam hci_event_standby_rep ,mem_module_uart_opcode 
-:      013265 module_hci_event_enter_standby_mode_len0:
-0x3c49 013266 setarg 0 
-0x3c4a 013267 call module_hci_prepare_tx 
-0x3c4b 013268 branch uartd_send 
-:      013272 module_hci_event_status_res:
-0x3c4c 013273 jam hci_event_status_res ,mem_module_uart_opcode 
-0x3c4d 013274 setarg 1 
-0x3c4e 013275 call module_hci_prepare_tx 
-0x3c4f 013277 call module_hci_read_bt_status 
-0x3c50 013279 fetch 2 ,mem_ui_state_map 
-0x3c51 013280 arg ui_state_bt_hid_conn ,queue 
-0x3c52 013281 qisolate1 pdata 
-0x3c53 013282 setflag true ,3 ,temp 
-0x3c54 013284 arg ui_state_ble_connected ,queue 
-0x3c55 013285 qisolate1 pdata 
-0x3c56 013286 setflag true ,5 ,temp 
-0x3c57 013288 fetch 1 ,mem_ui_state_map 
-0x3c58 013289 arg ui_state_bt_spp_conn ,queue 
-0x3c59 013290 qisolate1 pdata 
-0x3c5a 013291 setflag true ,4 ,temp 
-0x3c5b 013293 istoret 1 ,contwu 
-0x3c5c 013294 branch uartd_send 
-:      013298 module_hci_read_bt_status:
-0x3c5d 013299 arg 0 ,temp 
-0x3c5e 013300 fetch 1 ,mem_scan_mode 
-0x3c5f 013301 arg inq_scan_mode ,queue 
-0x3c60 013302 qisolate1 pdata 
-0x3c61 013303 setflag true ,0 ,temp 
-0x3c62 013304 arg page_scan_mode ,queue 
-0x3c63 013305 qisolate1 pdata 
-0x3c64 013306 setflag true ,1 ,temp 
-0x3c65 013308 fetch 1 ,mem_le_adv_enable 
-0x3c66 013309 arg 0 ,queue 
-0x3c67 013310 qisolate1 pdata 
-0x3c68 013311 setflag true ,2 ,temp 
-0x3c69 013312 rtn 
-:      013316 module_hci_event_store_device:
-0x3c6a 013317 jam hci_event_nvram_rep ,mem_module_uart_opcode 
-0x3c6b 013318 fetch 1 ,mem_nv_data_number 
-0x3c6c 013319 mul32 pdata ,34 ,pdata 
-0x3c6d 013320 icopy loopcnt 
-0x3c6e 013321 call module_hci_prepare_tx 
-0x3c6f 013322 fetch 2 ,mem_nv_data_ptr 
-0x3c70 013323 icopy contr 
-0x3c71 013324 call uart_copy_tx_bytes_fast 
-0x3c72 013325 branch uartd_send 
-:      013329 module_hci_event_gkey_generate:
-0x3c73 013330 jam hci_event_gkey ,mem_module_uart_opcode 
-0x3c74 013331 setarg 4 
-0x3c75 013332 call module_hci_prepare_tx 
-0x3c76 013333 fetch 4 ,mem_gkey 
-0x3c77 013334 istore 4 ,contwu 
-0x3c78 013335 branch uartd_send 
-:      013339 module_hci_event_invalid_packet:
-0x3c79 013340 jam hci_event_invalid_packet ,mem_module_uart_opcode 
-0x3c7a 013341 hfetch 2 ,core_uart_rxitems 
-0x3c7b 013342 arg 0xff ,temp 
-0x3c7c 013343 call not_greater_than 
-0x3c7d 013344 copy pdata ,loopcnt 
-0x3c7e 013345 call module_hci_prepare_tx 
-0x3c7f 013346 call uartd_prepare_rx 
-0x3c80 013347 call uart_copy_rx2tx 
-0x3c81 013348 branch uartd_send 
-:      013352 module_hci_event_passkey_entry_mode:
-0x3c82 013353 jam hci_event_get_passkey ,mem_module_uart_opcode 
-0x3c83 013354 branch module_hci_event_enter_standby_mode_len0 
-:      013358 module_hci_event_le_tk:
-0x3c84 013359 jam hci_event_le_tk ,mem_module_uart_opcode 
-0x3c85 013360 setarg 4 
-0x3c86 013361 call module_hci_prepare_tx 
-0x3c87 013362 fetch 4 ,mem_le_tk 
-0x3c88 013363 istore 4 ,contwu 
-0x3c89 013364 branch uartd_send 
-:      013368 module_hci_event_le_pairing_fail:
-0x3c8a 013369 arg flag_ble_pairing_fail ,rega 
-0x3c8b 013370 branch module_hci_event_pairing_completed 
-:      013372 module_hci_event_le_pairing_success:
-0x3c8c 013373 arg flag_ble_pairing_success ,rega 
-0x3c8d 013374 branch module_hci_event_pairing_completed 
-:      013376 module_hci_event_bt_pairing_fail:
-0x3c8e 013377 arg flag_bt_pairing_fail ,rega 
-0x3c8f 013378 branch module_hci_event_pairing_completed 
-:      013380 module_hci_event_bt_pairing_success:
-0x3c90 013381 arg flag_bt_pairing_success ,rega 
-:      013383 module_hci_event_pairing_completed:
-0x3c91 013384 jam 0 ,mem_flag_mode_ssp_pin 
-0x3c92 013385 jam hci_event_le_pairing_state ,mem_module_uart_opcode 
-0x3c93 013386 setarg 2 
-0x3c94 013387 call module_hci_prepare_tx 
-0x3c95 013388 copy rega ,pdata 
-0x3c96 013389 istore 2 ,contwu 
-0x3c97 013390 branch uartd_send 
-:      013394 module_hci_event_pause_enc:
-0x3c98 013395 arg flag_event_pause_enc ,regc 
-0x3c99 013396 branch module_hci_event_enc 
-:      013398 module_hci_event_start_enc:
-0x3c9a 013399 arg flag_event_start_enc ,regc 
-:      013401 module_hci_event_enc:
-0x3c9b 013402 jam hci_event_le_encryption_state ,mem_module_uart_opcode 
-0x3c9c 013403 setarg 1 
-0x3c9d 013404 call module_hci_prepare_tx 
-0x3c9e 013405 copy regc ,pdata 
-0x3c9f 013406 istore 1 ,contwu 
-0x3ca0 013407 branch uartd_send 
-:      013411 module_hci_event_le_gkey:
-0x3ca1 013412 jam hci_event_le_gkey ,mem_module_uart_opcode 
-0x3ca2 013413 setarg 4 
-0x3ca3 013414 call module_hci_prepare_tx 
-0x3ca4 013415 fetch 4 ,mem_gkey 
-0x3ca5 013416 istore 4 ,contwu 
-0x3ca6 013417 branch uartd_send 
-:      013428 module_hci_prepare_tx:
-0x3ca7 013429 jam 0x02 ,mem_module_uart_cmd 
-0x3ca8 013430 store 1 ,mem_module_uart_len 
-0x3ca9 013431 storet 8 ,mem_temp 
-0x3caa 013432 bpatch patch1c_2 ,mem_patch1c 
-0x3cab 013433 call module_set_mcu_wake_pin_high_delay 
-0x3cac 013434 fetcht 8 ,mem_temp 
-0x3cad 013435 call uartd_prepare_tx 
-0x3cae 013436 fetch 3 ,mem_module_uart_cmd 
-0x3caf 013437 istore 3 ,contwu 
-0x3cb0 013438 rtn 
-:      013441 module_set_mcu_wake_pin_high_delay:
-0x3cb1 013442 call module_check_mcu_wake_pin_high 
-0x3cb2 013443 rtn true 
-:      013444 module_set_mcu_wake_pin_h_delay:
-0x3cb3 013445 call module_set_mcu_wake_pin_high 
-0x3cb4 013446 fetch 4 ,mem_module_mcu_wake_delay_us 
-0x3cb5 013447 rshift2 pdata ,pdata 
-0x3cb6 013448 rtn blank 
-0x3cb7 013449 branch delay 
-:      013451 module_set_mcu_wake_pin_high:
-0x3cb8 013453 fetcht 1 ,mem_module_mcu_wake_pin 
-0x3cb9 013454 branch gpio_out_active 
-:      013456 module_check_mcu_wake_pin_high:
-0x3cba 013457 fetcht 1 ,mem_module_mcu_wake_pin 
-0x3cbb 013458 branch gpio_check_active 
-:      013460 module_set_mcu_wake_pin_low:
-0x3cbc 013461 fetcht 1 ,mem_module_mcu_wake_pin 
-0x3cbd 013462 branch gpio_out_inactive 
-:      013465 delay:
-0x3cbe 013466 increase -1 ,pdata 
-0x3cbf 013467 nop 38 
-0x3cc0 013468 nbranch delay ,blank 
-0x3cc1 013469 rtn 
-:      013478 module_le_receive_data:
-0x3cc2 013479 call module_check_ble_encrypt_state 
-0x3cc3 013480 rtn user 
-0x3cc4 013481 copy rega ,pdata 
-0x3cc5 013482 store 2 ,mem_module_le_rx_data_address 
-0x3cc6 013483 copy regb ,pdata 
-0x3cc7 013484 store 1 ,mem_module_le_rx_data_len 
-0x3cc8 013485 fetch 2 ,mem_le_att_handle 
-0x3cc9 013486 fetcht 2 ,mem_module_data_write_handle 
-0x3cca 013487 isub temp ,null 
-0x3ccb 013488 branch module_le_receive_data_ok ,zero 
-0x3ccc 013489 fetcht 2 ,mem_module_data_write_handle2 
-0x3ccd 013490 isub temp ,null 
-0x3cce 013491 nrtn zero 
-:      013492 module_le_receive_data_ok:
-0x3ccf 013493 store 2 ,mem_module_le_rx_data_handle 
-0x3cd0 013494 branch module_hci_event_receive_le_data 
-:      013499 module_exit_sniff:
-0x3cd1 013500 fetch 1 ,mem_module_flag 
-0x3cd2 013501 rtnbit1 moudle_task_unsniff 
-0x3cd3 013502 call module_set_unsniff_task_flag 
-0x3cd4 013503 branch app_bt_sniff_exit 
-:      013506 module_set_lpm_mult_2:
-0x3cd5 013507 jam 2 ,mem_lpm_mult 
-0x3cd6 013508 rtn 
-:      013512 module_bb_event_timer:
-0x3cd7 013513 branch module_read_vdd_timer 
-:      013515 module_read_vdd_timer:
-0x3cd8 013516 fetch 1 ,mem_module_read_vdd_flag 
-0x3cd9 013517 rtn blank 
-0x3cda 013518 fetch 1 ,mem_module_read_vdd_count 
-0x3cdb 013519 rtn blank 
-0x3cdc 013520 increase -1 ,pdata 
-0x3cdd 013521 store 1 ,mem_module_read_vdd_count 
-0x3cde 013522 nrtn blank 
-0x3cdf 013523 jam flag_module_read_vdd_count ,mem_module_read_vdd_count 
-0x3ce0 013524 call adc_set_mode 
-0x3ce1 013525 call vdd_calculate_by_mode 
-0x3ce2 013526 div pdata ,0x64 
-0x3ce3 013527 call wait_div_end 
-0x3ce4 013528 quotient pdata 
-0x3ce5 013529 remainder temp 
-0x3ce6 013530 store 1 ,mem_module_vdd_quotient 
-0x3ce7 013531 storet 1 ,mem_module_vdd_remainder 
-0x3ce8 013532 rtn 
-:      013535 module_control_air_flow:
-0x3ce9 013536 call check_uart_tx_buff 
-0x3cea 013537 branch app_l2cap_flow_control_enable ,positive 
-0x3ceb 013538 branch app_l2cap_flow_control_disable 
-:      013542 module_set_sniff_task_flag:
-0x3cec 013543 arg moudle_task_sniff ,queue 
-0x3ced 013544 branch module_set_state 
-:      013546 module_clear_sniff_task_flag:
-0x3cee 013547 arg moudle_task_sniff ,queue 
-0x3cef 013548 branch module_clr_state 
-:      013550 module_set_unsniff_task_flag:
-0x3cf0 013551 arg moudle_task_unsniff ,queue 
-0x3cf1 013552 branch module_set_state 
-:      013554 module_clear_unsniff_task_flag:
-0x3cf2 013555 arg moudle_task_unsniff ,queue 
-0x3cf3 013556 branch module_clr_state 
-:      013558 module_set_le_tx_data_flag:
-0x3cf4 013559 arg module_flag_ble_data_finish ,queue 
-0x3cf5 013560 branch module_set_state 
-:      013562 module_clear_le_tx_data_flag:
-0x3cf6 013563 arg module_flag_ble_data_finish ,queue 
-0x3cf7 013564 branch module_clr_state 
-:      013566 module_clr_state:
-0x3cf8 013567 fetch 1 ,mem_module_flag 
-0x3cf9 013568 qset0 pdata 
-0x3cfa 013569 store 1 ,mem_module_flag 
-0x3cfb 013570 rtn 
-:      013572 module_set_state:
-0x3cfc 013573 fetch 1 ,mem_module_flag 
-0x3cfd 013574 qset1 pdata 
-0x3cfe 013575 store 1 ,mem_module_flag 
-0x3cff 013576 rtn 
-:      013586 mouse_init:
-0x3d00 013587 call mouse_setting_config 
-0x3d01 013588 call spi_ncs_enable 
-0x3d02 013589 call mouse_init_sunt 
-0x3d03 013590 call mouse_dpi_config 
-0x3d04 013591 call spi_ncs_disable 
-0x3d05 013592 rtn wake 
-0x3d06 013593 call mouse_cheak_enable_usb 
-0x3d07 013594 call mouse_cb_fuction 
-0x3d08 013597 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d09 013598 rtnbit1 mouse_enable_usb 
-0x3d0a 013599 call mouse_wakeup_from_power 
-0x3d0b 013600 rtnmark1 mark_24g 
-0x3d0c 013601 fetch 2 ,mem_ui_state_map 
-0x3d0d 013602 bbit1 ui_state_btn_down ,mouse_start_discovery 
-0x3d0e 013603 branch mouse_check_reconn_target 
-:      013606 mouse_delay_4s:
-0x3d0f 013607 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d10 013608 rtnbit0 mouse_enable_init_delay 
-0x3d11 013609 arg 20 ,loopcnt 
-:      013610 mouse_delay_20ms:
-0x3d12 013611 setarg 200000 
-0x3d13 013612 call sleep 
-0x3d14 013613 loop delay_10ms 
-0x3d15 013614 rtn 
-:      013617 mouse_cheak_enable_usb:
-0x3d16 013618 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d17 013619 rtnbit0 mouse_enable_usb 
-0x3d18 013620 branch usb_init 
-:      013623 mouse_cb_fuction:
-0x3d19 013624 setarg mouse_le 
-0x3d1a 013625 store 2 ,mem_cb_le_process 
-0x3d1b 013626 setarg mouse_send_process 
-0x3d1c 013627 store 2 ,mem_cb_bt_process 
-0x3d1d 013628 setarg mouse_process_lpm_before 
-0x3d1e 013629 store 2 ,mem_cb_before_lpm 
-0x3d1f 013630 setarg mouse_priority_bb_event 
-0x3d20 013631 store 2 ,mem_cb_bb_event_process 
-0x3d21 013632 setarg mouse_idle 
-0x3d22 013633 store 2 ,mem_cb_idle_process 
-0x3d23 013634 setarg mouse_before_hibernate 
-0x3d24 013635 store 2 ,mem_cb_before_hibernate 
-0x3d25 013636 setarg le_mouse_bb_event_connect_complete 
-0x3d26 013637 store 2 ,mem_cb_att_write 
-0x3d27 013639 call g24_head_ptr2regc 
-0x3d28 013640 setarg mouse_g24_package_data 
-0x3d29 013641 add regc ,offset_24g_cb_data ,contw 
-0x3d2a 013642 istore 2 ,contw 
-0x3d2b 013643 setarg mouse_g24_enter_lpm 
-0x3d2c 013644 add regc ,offset_24g_cb_lpm_prepare ,contw 
-0x3d2d 013645 istore 2 ,contw 
-0x3d2e 013646 setarg mouse_lpm_before_common 
-0x3d2f 013647 add regc ,offset_24g_cb_lpm_before ,contw 
-0x3d30 013648 istore 2 ,contw 
-0x3d31 013650 setarg mouse_bb_event_timer 
-0x3d32 013651 store 2 ,mem_cb_event_timer 
-0x3d33 013652 setarg mouse_spi_write_flash_cb 
-0x3d34 013653 store 2 ,mem_cb_spi_flash_write_complate 
-0x3d35 013654 rtn 
-:      013655 mouse_spi_write_flash_cb:
-:      013656 mouse_spi_init:
-0x3d36 013657 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d37 013658 bbit0 mouse_enable_spi2 ,spid_init 
-0x3d38 013659 branch spid_init2 
-:      013661 mouse_setting_config:
-0x3d39 013662 rtn wake 
-0x3d3a 013663 call g24_set_device_addr 
-0x3d3b 013664 call mouse_gpio_init 
-0x3d3c 013665 call mouse_param_init 
-0x3d3d 013666 call mouse_adc_init 
-0x3d3e 013667 call le_set_config_fixed_ltk 
-0x3d3f 013668 call le_set_justwork 
-0x3d40 013669 call le_set_fixed_ltk 
-0x3d41 013670 call le_set_config_read_authentication 
-0x3d42 013671 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d43 013672 bbit1 mouse_enable_eeprom ,mouse_init_iic 
-0x3d44 013673 bbit1 mouse_enable_flash ,mouse_load_flash_info_cheak 
-0x3d45 013674 rtn 
-:      013676 mouse_init_iic:
-0x3d46 013677 call iic_init_390k 
-0x3d47 013678 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d48 013679 isolate1 mouse_enable_2k_eeprom ,pdata 
-0x3d49 013680 ncall clear_eeprom_size_2k ,true 
-0x3d4a 013681 call mouse_load_eeprom_dpi 
-0x3d4b 013682 call mouse_init_environment 
-0x3d4c 013683 call mouse_set_24g_addr_eeprom 
-0x3d4d 013684 branch iicd_read_eep_data 
-:      013686 mouse_wakeup_from_power:
-0x3d4e 013687 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d4f 013688 bbit0 mouse_enable_wakeup_from_power ,mouse_wakeup_no_from_power 
-0x3d50 013689 fetch 1 ,mem_wakup_from_power_flag 
-0x3d51 013690 isolate0 gpio_latch ,pdata 
-0x3d52 013691 nrtn true 
-:      013692 mouse_wakeup_no_from_power:
-0x3d53 013693 fetch 1 ,mem_reconn_times_init 
-0x3d54 013694 store 1 ,mem_reconn_times 
-0x3d55 013695 fetch 1 ,mem_config_function_enable 
-0x3d56 013696 rtnbit1 enable_select_device_by_switch 
-:      013697 mouse_start_24g_mode:
-0x3d57 013698 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d58 013699 rtnbit0 mouse_enable_24g 
-0x3d59 013700 bbit1 mouse_enable_auto_24g_paring ,g24_auto_pair_start 
-0x3d5a 013701 branch g24_check_51cmd_start_24g 
-:      013702 le_mouse_bb_event_connect_complete:
-0x3d5b 013703 fetch 1 ,mem_le_att_handle 
-0x3d5c 013704 sub pdata ,26 ,pdata 
-0x3d5d 013705 nrtn zero 
-0x3d5e 013706 jam bt_cmd_le_update_conn ,mem_fifo_temp 
-0x3d5f 013707 call ui_ipc_send_cmd 
-:      013708 mouse_le_write_enable:
-0x3d60 013709 arg write_req_enable_flag ,queue 
-0x3d61 013710 branch mouse_le_enable_connect_flag 
-:      013712 mouse_dpi_up:
-0x3d62 013713 fetch 1 ,mem_mouse_dpi_button_state 
-0x3d63 013714 rtneq dpi_button_state_up 
-0x3d64 013715 jam dpi_button_state_up ,mem_mouse_dpi_button_state 
-0x3d65 013716 rtn 
-:      013717 mouse_dpi_config:
-0x3d66 013718 fetch 1 ,mem_config_sensor_motion 
-0x3d67 013719 and pdata ,0x0f ,pdata 
-0x3d68 013720 store 1 ,mem_mouse_dpi 
-0x3d69 013721 branch mouse_seting_dpi + 2 
-:      013724 mouse_dpi_cheak:
-0x3d6a 013725 fetcht 1 ,mem_dpi_button_gpio 
-0x3d6b 013726 call gpio_get_bit 
-0x3d6c 013727 nbranch mouse_dpi_up ,true 
-:      013728 mouse_dpi_down:
-0x3d6d 013729 fetch 1 ,mem_mouse_dpi_button_state 
-0x3d6e 013730 rtneq dpi_button_state_down 
-0x3d6f 013731 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
-0x3d70 013732 fetch 1 ,mem_mouse_dpi 
-0x3d71 013733 increase 1 ,pdata 
-0x3d72 013734 and pdata ,0x03 ,pdata 
-0x3d73 013735 store 1 ,mem_mouse_dpi 
-0x3d74 013736 call mouse_seting_dpi 
-0x3d75 013737 fetch mouse_flag_len ,mem_mouse_flag 
-0x3d76 013738 bbit1 mouse_enable_eeprom ,mouse_store_eerpom_dpi 
-0x3d77 013739 bbit1 mouse_enable_flash ,mouse_before_store_flash_cpi 
-0x3d78 013740 rtn 
-:      013741 mouse_before_store_flash_cpi:
-0x3d79 013742 arg mouse_spi2_clk_gpio ,temp 
-0x3d7a 013743 call gpio_config_output 
-0x3d7b 013744 arg mouse_spi2_sdio_gpio ,temp 
-0x3d7c 013745 call gpio_config_output 
-0x3d7d 013746 branch mouse_store_flash_device_info 
-:      013748 mouse_seting_dpi:
-0x3d7e 013749 bpatch patch1c_3 ,mem_patch1c 
-0x3d7f 013750 call mosue_dpi_led_blink_init 
-0x3d80 013751 fetch 1 ,mem_config_sensor_type 
-0x3d81 013752 beq p3610 ,mouse_seting_3610_dpi 
-0x3d82 013753 beq p3212 ,mouse_seting_3212_dpi 
-0x3d83 013754 fetch 1 ,mem_mouse_dpi 
-0x3d84 013755 beq mouse_dpi_level1 ,mouse_set_cpi1 
-0x3d85 013756 beq mouse_dpi_level2 ,mouse_set_cpi2 
-0x3d86 013757 beq mouse_dpi_level3 ,mouse_set_cpi3 
-0x3d87 013758 beq mouse_dpi_level4 ,mouse_set_cpi4 
-:      013759 mouse_set_cpi2:
-0x3d88 013760 fetch 1 ,mem_320x_dpi_2 
-0x3d89 013761 branch mouse_p3205_dpi 
-:      013762 mouse_set_cpi1:
-0x3d8a 013763 fetch 1 ,mem_320x_dpi_1 
-0x3d8b 013764 branch mouse_p3205_dpi 
-:      013765 mouse_set_cpi3:
-0x3d8c 013766 fetch 1 ,mem_320x_dpi_3 
-0x3d8d 013767 branch mouse_p3205_dpi 
-:      013768 mouse_set_cpi4:
-0x3d8e 013769 fetch 1 ,mem_320x_dpi_4 
-0x3d8f 013770 branch mouse_p3205_dpi 
-:      013771 moue_seting_cpi_count:
-0x3d90 013772 fetch 1 ,mem_config_sensor_type 
-0x3d91 013773 rtneq p3065_xy 
-0x3d92 013774 fetch 1 ,mem_mouse_cpi_count 
-0x3d93 013775 increase 1 ,pdata 
-0x3d94 013776 store 1 ,mem_mouse_cpi_count 
-0x3d95 013777 rtn 
-:      013779 mouse_seting_3212_dpi:
-0x3d96 013780 fetch 1 ,mem_mouse_dpi 
-0x3d97 013781 beq mouse_dpi_level1 ,mouse_set_p3212_cpi1 
-0x3d98 013782 beq mouse_dpi_level2 ,mouse_set_p3212_cpi2 
-0x3d99 013783 beq mouse_dpi_level3 ,mouse_set_p3212_cpi3 
-0x3d9a 013784 beq mouse_dpi_level4 ,mouse_set_p3212_cpi4 
-:      013785 mouse_set_p3212_cpi2:
-0x3d9b 013786 fetch 1 ,mem_3212_dpi_2 
-0x3d9c 013787 branch mouse_p3212_dpi 
-:      013788 mouse_set_p3212_cpi1:
-0x3d9d 013789 fetch 1 ,mem_3212_dpi_1 
-0x3d9e 013790 branch mouse_p3212_dpi 
-:      013791 mouse_set_p3212_cpi3:
-0x3d9f 013792 fetch 1 ,mem_3212_dpi_3 
-0x3da0 013793 branch mouse_p3212_dpi 
-:      013794 mouse_set_p3212_cpi4:
-0x3da1 013795 fetch 1 ,mem_3212_dpi_4 
-:      013796 mouse_p3212_dpi:
-0x3da2 013797 store 1 ,mem_mouse_cpi_count 
-0x3da3 013798 lshift8 pdata ,pdata 
-0x3da4 013799 copy pdata ,rega 
-0x3da5 013800 add pdata ,mouse_p3212_dpi_xaddress ,pdata 
-0x3da6 013801 call twspi_write 
-0x3da7 013802 copy rega ,pdata 
-0x3da8 013803 add pdata ,mouse_p3212_dpi_yaddress ,pdata 
-0x3da9 013804 branch twspi_write 
-:      013806 mouse_seting_3610_dpi:
-0x3daa 013807 fetch 1 ,mem_mouse_dpi 
-0x3dab 013808 beq mouse_dpi_level1 ,mouse_set_p3610_cpi1 
-0x3dac 013809 beq mouse_dpi_level2 ,mouse_set_p3610_cpi2 
-0x3dad 013810 beq mouse_dpi_level3 ,mouse_set_p3610_cpi3 
-0x3dae 013811 beq mouse_dpi_level4 ,mouse_set_p3610_cpi4 
-:      013812 mouse_set_p3610_cpi2:
-0x3daf 013813 fetch 1 ,mem_3610_dpi_2 
-0x3db0 013814 branch mouse_p3610_dpi 
-:      013815 mouse_set_p3610_cpi1:
-0x3db1 013816 fetch 1 ,mem_3610_dpi_1 
-0x3db2 013817 branch mouse_p3610_dpi 
-:      013818 mouse_set_p3610_cpi3:
-0x3db3 013819 fetch 1 ,mem_3610_dpi_3 
-0x3db4 013820 branch mouse_p3610_dpi 
-:      013821 mouse_set_p3610_cpi4:
-0x3db5 013822 fetch 1 ,mem_3610_dpi_4 
-:      013823 mouse_p3610_dpi:
-0x3db6 013824 store 1 ,mem_mouse_cpi_count 
-0x3db7 013825 call mouse_spi_sdio_gpio_pollup 
-0x3db8 013826 fetch 1 ,mem_mouse_cpi_count 
-:      013827 mouse_reset_p3610_dpi:
-0x3db9 013828 add pdata ,0x80 ,pdata 
-0x3dba 013829 lshift8 pdata ,pdata 
-0x3dbb 013830 add pdata ,mouse_p3610_dpi_address ,pdata 
-0x3dbc 013831 copy pdata ,rega 
-0x3dbd 013832 branch mouse_set_sensor_reg 
-:      013834 mouse_p3205_dpi:
-0x3dbe 013835 store 1 ,mem_mouse_cpi_count 
-0x3dbf 013836 call moue_seting_cpi_count 
-0x3dc0 013837 fetch 1 ,mem_mouse_cpi_count 
-0x3dc1 013838 setarg mouse_dpi_address 
-0x3dc2 013839 call twspi_read 
-0x3dc3 013840 and pdata ,0xf8 ,temp 
-0x3dc4 013841 fetch 1 ,mem_mouse_cpi_count 
-0x3dc5 013842 iadd temp ,pdata 
-0x3dc6 013843 lshift8 pdata ,pdata 
-0x3dc7 013844 add pdata ,mouse_dpi_address ,pdata 
-0x3dc8 013845 branch twspi_write 
-:      013848 mouse_init_environment:
-0x3dc9 013849 call app_initflag_check 
-0x3dca 013850 branch mouse_eeprom_load_recon_info ,zero 
-0x3dcb 013851 call mouse_ble_init_address 
-0x3dcc 013852 call mouse_store_eeprom_device_info 
-0x3dcd 013853 branch app_initflag_store 
-:      013856 mouse_24g_pairing_button:
-0x3dce 013857 fetch 2 ,mem_24g_pairing_timer_count 
-0x3dcf 013858 rtn blank 
-0x3dd0 013859 fetch mouse_flag_len ,mem_mouse_flag 
-0x3dd1 013860 rtnbit0 mouse_enable_24g 
-0x3dd2 013861 rtnbit1 mosue_24g_pairing_flag 
-0x3dd3 013862 rtnmark1 mark_24g 
-0x3dd4 013863 call mouse_check_key_gpio 
-0x3dd5 013864 rtnne mouse_lmr_button 
-0x3dd6 013865 call mouse_devce_led_off 
-0x3dd7 013866 arg mosue_24g_pairing_flag ,queue 
-0x3dd8 013867 call mouse_enable_function_flag 
-0x3dd9 013868 setarg 0 
-0x3dda 013869 store 2 ,mem_mouse_direct_timer 
-0x3ddb 013870 store 1 ,mem_mouse_send_blank_timer 
-0x3ddc 013871 call g24_set0_mem_check_dongle_times 
-0x3ddd 013873 fetch 2 ,mem_ui_state_map 
-0x3dde 013874 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
-0x3ddf 013875 bbit1 ui_state_ble_connected ,app_ble_disconnect 
-0x3de0 013876 bbit1 ui_state_bt_connected ,app_bt_disconnect 
-0x3de1 013877 call mouse_stop_discovery 
-0x3de2 013878 branch g24_start_pairing_sm1 
-:      013881 mouse_idle:
-0x3de3 013882 call mouse_24g_pairing_button 
-0x3de4 013883 call ui_check_paring_button 
-0x3de5 013884 call mouse_dpi_cheak 
-0x3de6 013885 call mouse_usb_isr 
-0x3de7 013886 call mouse_wheel_check 
-0x3de8 013887 branch mouse_usb_mode 
-:      013888 mouse_usb_isr:
-0x3de9 013889 fetch mouse_flag_len ,mem_mouse_flag 
-0x3dea 013890 rtnbit0 mouse_enable_usb 
-0x3deb 013891 call usb_isr 
-0x3dec 013892 branch usb_offline_state 
-:      013894 mouse_cheak_usb:
-0x3ded 013895 hfetch 1 ,core_usb_addr 
-0x3dee 013896 bbit0 7 ,mouse_usb_no_exsit 
-0x3def 013897 bbit1 7 ,mouse_usb_exsit 
-0x3df0 013898 rtn 
-:      013899 mouse_usb_no_exsit:
-0x3df1 013900 fetch 1 ,mem_usb_addr 
-0x3df2 013901 rtnbit0 7 
-0x3df3 013902 branch soft_reset_chip 
-:      013903 mouse_usb_exsit:
-0x3df4 013904 fetch 1 ,mem_usb_addr 
-0x3df5 013905 rtnbit1 7 
-0x3df6 013906 branch mouse_stop_bluetooth_mode 
-:      013908 mouse_usb_mode:
-0x3df7 013909 call mouse_cheak_usb 
-0x3df8 013910 hfetch 1 ,core_usb_addr 
-0x3df9 013911 store 1 ,mem_usb_addr 
-0x3dfa 013912 rtnbit0 7 
-0x3dfb 013913 call mouse_clkn_check 
-0x3dfc 013914 fetch 4 ,mem_btclk_sensor 
-0x3dfd 013915 fetcht 1 ,mem_wire_usb_interval 
-0x3dfe 013916 iadd temp ,temp 
-0x3dff 013917 copy clkn_bt ,pdata 
-0x3e00 013918 isub temp ,null 
-0x3e01 013919 nrtn positive 
-0x3e02 013920 store 4 ,mem_btclk_sensor 
-0x3e03 013921 call mouse_motion 
-0x3e04 013922 nrtn user 
-0x3e05 013923 jam 4 ,mem_usb_tx_enable 
-0x3e06 013924 branch mouse_wired_to_usb 
-:      013926 mouse_clkn_check:
-0x3e07 013927 fetcht 4 ,mem_btclk_sensor 
-0x3e08 013928 copy clkn_bt ,pdata 
-0x3e09 013929 isub temp ,null 
-0x3e0a 013930 ncall mouse_clkn_timeout ,positive 
-0x3e0b 013931 rtn 
-:      013932 mouse_clkn_timeout:
-0x3e0c 013933 setarg 0 
-0x3e0d 013934 store 4 ,mem_btclk_sensor 
-0x3e0e 013935 rtn 
-:      013939 mouse_wired_to_usb:
-0x3e0f 013940 fetch 1 ,mem_usb_tx_enable 
-0x3e10 013941 rtnbit0 2 
-0x3e11 013942 branch mouse_data_push 
-:      013943 mouse_data_push:
-0x3e12 013944 hfetch 1 ,core_usb_addr 
-0x3e13 013945 rtnbit0 7 
-0x3e14 013946 jam usb_ep2_ms ,mem_usb_ep2_data 
-0x3e15 013947 setarg ms_report_id 
-0x3e16 013948 store 1 ,mem_usb_mouse_data 
-0x3e17 013949 fetch 7 ,mem_mouse_key 
-0x3e18 013950 istore 7 ,contw 
-0x3e19 013951 rtn 
-:      013954 mouse_enable_clock_qdecoder:
-0x3e1a 013955 hfetch 2 ,core_clkoff 
-0x3e1b 013956 set0 clock_off_qdecoder ,pdata 
-0x3e1c 013957 hstore 2 ,core_clkoff 
-0x3e1d 013958 rtn 
-:      013960 mouse_param_init:
-0x3e1e 013961 setarg 0x8c00 
-0x3e1f 013962 store 2 ,mem_ui_uuid_table 
-0x3e20 013963 setarg 0x8e7a 
-0x3e21 013964 store 2 ,mem_ui_le_uuid_table 
-0x3e22 013965 setarg 0x2402 
-0x3e23 013966 store 2 ,mem_fcomp_mul 
-0x3e24 013967 setarg 0x2580 
-0x3e25 013968 store 3 ,mem_class 
-0x3e26 013969 jam 3 ,mem_lpm_mult_timeout 
-0x3e27 013970 jam 8 ,mem_lpm_overhead 
-0x3e28 013971 jam dpi_button_state_up ,mem_select_device_button_statue 
-0x3e29 013972 setarg 0x0200 
-0x3e2a 013973 store 2 ,mem_lpm_interval 
-0x3e2b 013974 jam 0x17 ,mem_le_local_mtu 
-0x3e2c 013975 jam 0x17 ,mem_le_remote_mtu 
-0x3e2d 013977 setarg 0x0a77 
-0x3e2e 013978 store 2 ,mem_spi_init_clk 
-0x3e2f 013994 setsect 0 ,0x306 
-0x3e30 013995 setsect 1 ,0x4440 
-0x3e31 013996 setsect 2 ,0x10000 
-0x3e32 013997 setsect 3 ,0x4408 
-0x3e33 013998 store 9 ,mem_all_uuid_16bits 
-0x3e34 013999 setsect 0 ,0x1224 
-0x3e35 014000 setsect 1 ,0x4000 
-0x3e36 014001 setsect 2 ,0x0 
-0x3e37 014002 istore 5 ,contw 
-0x3e38 014004 setsect 0 ,0x3ffff 
-0x3e39 014005 setsect 1 ,0x2fe23 
-0x3e3a 014006 setsect 2 ,0x199d9 
-0x3e3b 014007 setsect 3 ,0x20d 
-0x3e3c 014008 store 8 ,mem_features 
-0x3e3d 014010 setarg 0x012c 
-0x3e3e 014011 store 2 ,mem_24g_pairing_timer_count 
-0x3e3f 014012 call le_modified_name 
-0x3e40 014013 fetch mouse_flag_len ,mem_mouse_flag 
-0x3e41 014014 rtnbit0 mouse_enable_gpio_control_adc_sensor 
-0x3e42 014015 call mouse_sensor_set_angle 
-0x3e43 014016 branch mouse_select_adc 
-:      014018 mouse_sensor_set_angle:
-0x3e44 014019 fetcht 1 ,mem_select_sensor_angle_gpio 
-0x3e45 014020 call gpio_config_input 
-0x3e46 014021 fetcht 1 ,mem_select_sensor_angle_gpio 
-0x3e47 014022 call gpio_get_bit 
-0x3e48 014023 jam mouse_3clk_angle ,mem_config_sensor_angle 
-0x3e49 014024 rtn true 
-0x3e4a 014025 jam mouse_12clk_angle ,mem_config_sensor_angle 
-0x3e4b 014026 rtn 
-:      014028 mouse_select_adc:
-0x3e4c 014029 fetcht 1 ,mem_select_adc_gpio 
-0x3e4d 014030 call gpio_config_input 
-0x3e4e 014031 fetcht 1 ,mem_select_adc_gpio 
-0x3e4f 014032 call gpio_get_bit 
-0x3e50 014033 jam adc_config_vinlpm ,mem_adc_config_flag 
-0x3e51 014034 rtn true 
-0x3e52 014035 jam adc_config_gpio ,mem_adc_config_flag 
-0x3e53 014036 rtn 
-:      014039 mouse_adc_init:
-0x3e54 014040 fetch 1 ,mem_adc_config_flag 
-0x3e55 014041 beq adc_config_vinlpm ,mouse_adc_init_data_vinlpm 
-0x3e56 014042 beq adc_config_hvin ,mouse_adc_init_data_hvin 
-0x3e57 014043 beq adc_config_gpio ,mouse_adc_init_data_io 
-0x3e58 014044 branch mouse_adc_init_data_vinlpm 
-:      014046 mouse_adc_init_data_vinlpm:
-0x3e59 014047 fetcht 2 ,mem_2v_adc_vinlpm_data 
-0x3e5a 014048 fetch 2 ,mem_3v_adc_vinlpm_data 
-0x3e5b 014049 isub temp ,pdata 
-0x3e5c 014050 mul32 pdata ,20 ,pdata 
-0x3e5d 014051 div pdata ,100 
-0x3e5e 014052 call wait_div_end 
-0x3e5f 014053 quotient pdata 
-0x3e60 014054 store 2 ,mem_adc_reference_voltage 
-0x3e61 014055 rtn 
-:      014056 mouse_adc_init_data_hvin:
-0x3e62 014057 fetcht 2 ,mem_1v_adc_hvin_data 
-0x3e63 014058 fetch 2 ,mem_5v_adc_hvin_data 
-0x3e64 014059 isub temp ,pdata 
-0x3e65 014060 mul32 pdata ,230 ,pdata 
-0x3e66 014061 div pdata ,400 
-0x3e67 014062 call wait_div_end 
-0x3e68 014063 quotient pdata 
-0x3e69 014064 store 2 ,mem_adc_reference_voltage 
-0x3e6a 014065 rtn 
-:      014066 mouse_adc_init_data_io:
-0x3e6b 014067 fetch 2 ,mem_1v_adc_io_data 
-0x3e6c 014068 store 2 ,mem_adc_reference_voltage 
-0x3e6d 014069 rtn 
-:      014070 mouse_gpio_init:
-0x3e6e 014071 fetcht 1 ,mem_eeprom_wp_gpio 
-0x3e6f 014072 call gpio_config_output 
-0x3e70 014073 call usb_offline_check_init 
-0x3e71 014074 fetcht 1 ,mem_lbutton_gpio 
-0x3e72 014075 call gpio_config_input 
-0x3e73 014076 fetcht 1 ,mem_rbutton_gpio 
-0x3e74 014077 call gpio_config_input 
-0x3e75 014078 fetcht 1 ,mem_mbutton_gpio 
-0x3e76 014079 call gpio_config_input 
-0x3e77 014080 fetcht 1 ,mem_sensor_data_gpio 
-0x3e78 014081 call gpio_config_input 
-0x3e79 014083 fetcht 1 ,mem_sensor_reset_gpio 
-0x3e7a 014084 call gpio_config_output 
-0x3e7b 014086 fetcht 1 ,mem_whee_a_data_gpio 
-0x3e7c 014087 call gpio_config_input 
-0x3e7d 014089 fetcht 1 ,mem_whee_b_data_gpio 
-0x3e7e 014090 call gpio_config_input 
-0x3e7f 014092 fetcht 1 ,mem_whee_ta_data_gpio 
-0x3e80 014093 call gpio_config_input 
-0x3e81 014094 fetcht 1 ,mem_whee_tb_data_gpio 
-0x3e82 014095 call gpio_config_input 
-0x3e83 014097 fetcht 1 ,mem_bk_button_gpio 
-0x3e84 014098 call gpio_config_input 
-0x3e85 014099 fetcht 1 ,mem_fw_button_gpio 
-0x3e86 014100 call gpio_config_input 
-0x3e87 014102 fetcht 1 ,mem_config_low_voltage_alarm_gpio 
-0x3e88 014103 call gpio_config_output 
-0x3e89 014105 fetcht 1 ,mem_config_device1_led_gpio 
-0x3e8a 014106 call gpio_config_output 
-0x3e8b 014108 fetcht 1 ,mem_config_device2_led_gpio 
-0x3e8c 014109 call gpio_config_output 
-0x3e8d 014111 fetcht 1 ,mem_config_device3_led_gpio 
-0x3e8e 014112 call gpio_config_output 
-0x3e8f 014114 fetcht 1 ,mem_dpi_led_gpio 
-0x3e90 014115 call gpio_config_output 
-0x3e91 014117 fetcht 1 ,mem_config_select_device_button_gpio 
-0x3e92 014118 call gpio_config_input 
-0x3e93 014120 fetcht 1 ,mem_config_bt_button_gpio 
-0x3e94 014121 call gpio_config_input 
-0x3e95 014123 fetcht 1 ,mem_dpi_button_gpio 
-0x3e96 014124 branch gpio_config_input 
-:      014126 mouse_wheel_gpio_set_wake:
-0x3e97 014127 fetcht 1 ,mem_whee_a_data_gpio 
-0x3e98 014128 call gpio_set_wake_by_current_state 
-0x3e99 014129 fetcht 1 ,mem_whee_b_data_gpio 
-0x3e9a 014130 call gpio_set_wake_by_current_state 
-0x3e9b 014131 fetcht 1 ,mem_whee_ta_data_gpio 
-0x3e9c 014132 call gpio_set_wake_by_current_state 
-0x3e9d 014133 fetcht 1 ,mem_whee_tb_data_gpio 
-0x3e9e 014134 branch gpio_set_wake_by_current_state 
-:      014136 mouse_before_hibernate_wheel_gpio_set:
-0x3e9f 014137 fetcht 1 ,mem_whee_a_data_gpio 
-0x3ea0 014138 call mouse_gpio_set_pupd_by_input 
-0x3ea1 014139 fetcht 1 ,mem_whee_b_data_gpio 
-0x3ea2 014140 call mouse_gpio_set_pupd_by_input 
-0x3ea3 014141 fetcht 1 ,mem_whee_ta_data_gpio 
-0x3ea4 014142 call mouse_gpio_set_pupd_by_input 
-0x3ea5 014143 fetcht 1 ,mem_whee_tb_data_gpio 
-0x3ea6 014144 branch mouse_gpio_set_pupd_by_input 
-:      014146 mouse_gpio_set_pupd_by_input:
-0x3ea7 014147 sub temp ,ui_button_gpio_disable ,null 
-0x3ea8 014148 rtn zero 
-0x3ea9 014149 and temp ,0x7f ,queue 
-0x3eaa 014150 hfetch 4 ,core_gpio_in 
-0x3eab 014151 qisolate1 pdata 
-0x3eac 014152 hfetch 4 ,core_gpio_pu0 
-0x3ead 014153 qsetflag true ,pdata 
-0x3eae 014154 hstore 4 ,core_gpio_pu0 
-0x3eaf 014155 hfetch 4 ,core_gpio_pd0 
-0x3eb0 014156 nqsetflag true ,pdata 
-0x3eb1 014157 hstore 4 ,core_gpio_pd0 
-0x3eb2 014158 rtn 
-:      014160 mouse_before_hibernate:
-0x3eb3 014161 enable user 
-0x3eb4 014162 hfetch 4 ,0x8138 
-0x3eb5 014163 setflag user ,26 ,pdata 
-0x3eb6 014164 hstore 4 ,core_lpm_reg 
-0x3eb7 014165 call lpm_write_ctrl 
-0x3eb8 014166 call mouse_devce_led_off 
-0x3eb9 014167 call mouse_before_hibernate_wheel_gpio_set 
-0x3eba 014169 branch mouse_lpm_before_common 
-:      014173 mouse_process_lpm_before:
-0x3ebb 014174 call mouse_lpm_before_common 
-0x3ebc 014175 fetch 1 ,mem_lpm_current_mult 
-0x3ebd 014176 nrtn blank 
-0x3ebe 014177 branch gpio_clr_wake 
-:      014179 mouse_lpm_before_common:
-0x3ebf 014180 call mouse_wheel_check 
-0x3ec0 014181 arg mouse_spi1_clk_gpio ,temp 
-0x3ec1 014182 fetch mouse_flag_len ,mem_mouse_flag 
-0x3ec2 014183 isolate1 mouse_enable_spi2 ,pdata 
-0x3ec3 014184 call mouse_spi_clk_gpio ,true 
-0x3ec4 014185 call gpio_config_output 
-0x3ec5 014186 call twspi_disable 
-0x3ec6 014190 fetcht 1 ,mem_lbutton_gpio 
-0x3ec7 014191 call gpio_set_wake_by_current_state 
-0x3ec8 014192 fetcht 1 ,mem_rbutton_gpio 
-0x3ec9 014193 call gpio_set_wake_by_current_state 
-0x3eca 014194 fetcht 1 ,mem_mbutton_gpio 
-0x3ecb 014195 call gpio_set_wake_by_current_state 
-0x3ecc 014197 fetcht 1 ,mem_bk_button_gpio 
-0x3ecd 014198 call gpio_set_wake_by_current_state 
-0x3ece 014199 fetcht 1 ,mem_fw_button_gpio 
-0x3ecf 014200 call gpio_set_wake_by_current_state 
-0x3ed0 014201 fetcht 1 ,mem_dpi_button_gpio 
-0x3ed1 014202 call gpio_set_wake_by_current_state 
-0x3ed2 014203 fetcht 1 ,mem_config_select_device_button_gpio 
-0x3ed3 014204 call gpio_set_wake_by_current_state 
-0x3ed4 014205 fetcht 1 ,mem_whee_a_data_gpio 
-0x3ed5 014206 call gpio_set_wake_by_current_state 
-0x3ed6 014207 fetcht 1 ,mem_whee_b_data_gpio 
-0x3ed7 014208 call gpio_set_wake_by_current_state 
-0x3ed8 014209 fetcht 1 ,mem_whee_ta_data_gpio 
-0x3ed9 014210 call gpio_set_wake_by_current_state 
-0x3eda 014211 fetcht 1 ,mem_whee_tb_data_gpio 
-0x3edb 014212 call gpio_set_wake_by_current_state 
-0x3edc 014213 fetcht 1 ,mem_sensor_data_gpio 
-0x3edd 014214 branch gpio_set_wake 
-:      014218 mouse_spi_clk_gpio:
-0x3ede 014219 arg mouse_spi2_clk_gpio ,temp 
-0x3edf 014220 rtn 
-:      014222 mouse_wheel_check:
-0x3ee0 014223 bpatch patch1c_4 ,mem_patch1c 
-0x3ee1 014224 call mouse_t_wheel_scan 
-0x3ee2 014225 call mouse_wheel_scan 
-0x3ee3 014226 fetch 1 ,mem_wheel_tb_new_pinlevel 
-0x3ee4 014227 fetcht 1 ,mem_wheel_tb_old_pinlevel 
-0x3ee5 014228 store 1 ,mem_wheel_tb_old_pinlevel 
-0x3ee6 014229 isub temp ,null 
-0x3ee7 014230 nbranch app_lpm_wake_auto_lock ,zero 
-0x3ee8 014231 fetch 1 ,mem_mwheel_b_new_pinlevel 
-0x3ee9 014232 fetcht 1 ,mem_mwheel_b_old_pinlevel 
-0x3eea 014233 store 1 ,mem_mwheel_b_old_pinlevel 
-0x3eeb 014234 isub temp ,null 
-0x3eec 014235 nbranch app_lpm_wake_auto_lock ,zero 
-0x3eed 014236 rtn 
-:      014237 mouse_t_wheel_scan:
-0x3eee 014238 fetch 1 ,mem_whee_ta_data_gpio 
-0x3eef 014239 rtneq gpio_disable 
-0x3ef0 014240 arg 0 ,rega 
-0x3ef1 014241 fetcht 1 ,mem_whee_ta_data_gpio 
-0x3ef2 014242 call gpio_get_bit 
-0x3ef3 014243 setflag true ,0 ,rega 
-0x3ef4 014244 fetcht 1 ,mem_whee_tb_data_gpio 
-0x3ef5 014245 call gpio_get_bit 
-0x3ef6 014246 setflag true ,1 ,rega 
-0x3ef7 014247 copy rega ,pdata 
-0x3ef8 014248 store 1 ,mem_wheel_tb_new_pinlevel 
-0x3ef9 014249 beq 0x01 ,mouse_t_wheel_scan_judge1 
-0x3efa 014250 beq 0x02 ,mouse_t_wheel_scan_judge2 
-0x3efb 014251 fetch 1 ,mem_wheel_tog 
-0x3efc 014252 bbit1 7 ,mouse_t_wheel_scan_judge3 
-0x3efd 014253 rtn 
-:      014255 mouse_t_wheel_scan_judge1:
-0x3efe 014256 fetch 1 ,mem_wheel_tb_old_pinlevel 
-0x3eff 014257 beq 0 ,mouse_t_wheel_scan_judge11 
-0x3f00 014258 beq 3 ,mouse_t_wheel_scan_judge12 
-0x3f01 014259 rtn 
-:      014260 mouse_t_wheel_scan_judge2:
-0x3f02 014261 fetch 1 ,mem_wheel_tb_old_pinlevel 
-0x3f03 014262 beq 0 ,mouse_t_wheel_scan_judge21 
-0x3f04 014263 beq 3 ,mouse_t_wheel_scan_judge22 
-0x3f05 014264 rtn 
-:      014265 mouse_t_wheel_scan_judge11:
-0x3f06 014266 jam 0x82 ,mem_wheel_tog 
-0x3f07 014267 rtn 
-:      014268 mouse_t_wheel_scan_judge12:
-0x3f08 014269 jam 0x81 ,mem_wheel_tog 
-0x3f09 014270 rtn 
-:      014271 mouse_t_wheel_scan_judge21:
-0x3f0a 014272 jam 0x80 ,mem_wheel_tog 
-0x3f0b 014273 rtn 
-:      014274 mouse_t_wheel_scan_judge22:
-0x3f0c 014275 jam 0x83 ,mem_wheel_tog 
-0x3f0d 014276 rtn 
-:      014277 mouse_t_wheel_scan_judge3:
-0x3f0e 014278 fetch 1 ,mem_wheel_tog 
-0x3f0f 014279 set0 7 ,pdata 
-0x3f10 014280 store 1 ,mem_wheel_tog 
-0x3f11 014281 beq 0 ,mouse_t_wheel_scan_judge30 
-0x3f12 014282 beq 1 ,mouse_t_wheel_scan_judge31 
-0x3f13 014283 beq 2 ,mouse_t_wheel_scan_judge32 
-0x3f14 014284 beq 3 ,mouse_t_wheel_scan_judge33 
-0x3f15 014285 rtn 
-:      014286 mouse_t_wheel_scan_judge30:
-0x3f16 014287 fetch 1 ,mem_wheel_tb_new_pinlevel 
-0x3f17 014288 beq 3 ,mouse_wheel_t_forward 
-0x3f18 014289 rtn 
-:      014290 mouse_t_wheel_scan_judge31:
-0x3f19 014291 fetch 1 ,mem_wheel_tb_new_pinlevel 
-0x3f1a 014292 beq 0 ,mouse_wheel_t_forward 
-0x3f1b 014293 rtn 
-:      014294 mouse_t_wheel_scan_judge32:
-0x3f1c 014295 fetch 1 ,mem_wheel_tb_new_pinlevel 
-0x3f1d 014296 beq 3 ,mouse_wheel_t_back 
-0x3f1e 014297 rtn 
-:      014298 mouse_t_wheel_scan_judge33:
-0x3f1f 014299 fetch 1 ,mem_wheel_tb_new_pinlevel 
-0x3f20 014300 beq 0 ,mouse_wheel_t_back 
-0x3f21 014301 rtn 
-:      014302 mouse_wheel_t_forward:
-0x3f22 014303 fetch 1 ,mem_mouse_tz_data_count1 
-0x3f23 014304 increase 1 ,pdata 
-0x3f24 014305 store 1 ,mem_mouse_tz_data_count1 
-0x3f25 014306 sub pdata ,1 ,null 
-0x3f26 014307 rtn positive 
-0x3f27 014308 jam 0 ,mem_mouse_tz_data_count1 
-0x3f28 014309 fetch 1 ,mem_mouse_tz_data 
-0x3f29 014310 increase 1 ,pdata 
-0x3f2a 014311 store 1 ,mem_mouse_tz_data 
-0x3f2b 014312 rtn 
-:      014313 mouse_wheel_t_back:
-0x3f2c 014314 fetch 1 ,mem_mouse_tz_data_count 
-0x3f2d 014315 increase 1 ,pdata 
-0x3f2e 014316 store 1 ,mem_mouse_tz_data_count 
-0x3f2f 014317 sub pdata ,1 ,null 
-0x3f30 014318 rtn positive 
-0x3f31 014319 jam 0 ,mem_mouse_tz_data_count 
-0x3f32 014320 fetch 1 ,mem_mouse_tz_data 
-0x3f33 014321 increase -1 ,pdata 
-0x3f34 014322 store 1 ,mem_mouse_tz_data 
-0x3f35 014323 rtn 
-:      014326 mouse_wheel_scan:
-0x3f36 014327 fetch 1 ,mem_whee_a_data_gpio 
-0x3f37 014328 rtneq gpio_disable 
-0x3f38 014329 arg 0 ,rega 
-0x3f39 014330 fetcht 1 ,mem_whee_a_data_gpio 
-0x3f3a 014331 call gpio_get_bit 
-0x3f3b 014332 setflag true ,0 ,rega 
-0x3f3c 014333 fetcht 1 ,mem_whee_b_data_gpio 
-0x3f3d 014334 call gpio_get_bit 
-0x3f3e 014335 setflag true ,1 ,rega 
-0x3f3f 014336 copy rega ,pdata 
-0x3f40 014337 store 1 ,mem_mwheel_b_new_pinlevel 
-0x3f41 014338 beq 0x01 ,mouse_wheel_scan_judge1 
-0x3f42 014339 beq 0x02 ,mouse_wheel_scan_judge2 
-0x3f43 014340 fetch 1 ,mem_mwheel_tog 
-0x3f44 014341 bbit1 7 ,mouse_wheel_scan_judge3 
-0x3f45 014342 rtn 
-:      014344 mouse_wheel_scan_judge1:
-0x3f46 014345 fetch 1 ,mem_mwheel_b_old_pinlevel 
-0x3f47 014346 beq 0 ,mouse_wheel_scan_judge11 
-0x3f48 014347 beq 3 ,mouse_wheel_scan_judge12 
-0x3f49 014348 rtn 
-:      014349 mouse_wheel_scan_judge2:
-0x3f4a 014350 fetch 1 ,mem_mwheel_b_old_pinlevel 
-0x3f4b 014351 beq 0 ,mouse_wheel_scan_judge21 
-0x3f4c 014352 beq 3 ,mouse_wheel_scan_judge22 
-0x3f4d 014353 rtn 
-:      014354 mouse_wheel_scan_judge11:
-0x3f4e 014355 jam 0x82 ,mem_mwheel_tog 
-0x3f4f 014356 rtn 
-:      014357 mouse_wheel_scan_judge12:
-0x3f50 014358 jam 0x81 ,mem_mwheel_tog 
-0x3f51 014359 rtn 
-:      014360 mouse_wheel_scan_judge21:
-0x3f52 014361 jam 0x80 ,mem_mwheel_tog 
-0x3f53 014362 rtn 
-:      014363 mouse_wheel_scan_judge22:
-0x3f54 014364 jam 0x83 ,mem_mwheel_tog 
-0x3f55 014365 rtn 
-:      014366 mouse_wheel_scan_judge3:
-0x3f56 014367 fetch 1 ,mem_mwheel_tog 
-0x3f57 014368 set0 7 ,pdata 
-0x3f58 014369 store 1 ,mem_mwheel_tog 
-0x3f59 014370 beq 0 ,mouse_wheel_scan_judge30 
-0x3f5a 014371 beq 1 ,mouse_wheel_scan_judge31 
-0x3f5b 014372 beq 2 ,mouse_wheel_scan_judge32 
-0x3f5c 014373 beq 3 ,mouse_wheel_scan_judge33 
-0x3f5d 014374 rtn 
-:      014375 mouse_wheel_scan_judge30:
-0x3f5e 014376 fetch 1 ,mem_mwheel_b_new_pinlevel 
-0x3f5f 014377 beq 3 ,mouse_wheel_forward 
-0x3f60 014378 rtn 
-:      014379 mouse_wheel_scan_judge31:
-0x3f61 014380 fetch 1 ,mem_mwheel_b_new_pinlevel 
-0x3f62 014381 beq 0 ,mouse_wheel_forward 
-0x3f63 014382 rtn 
-:      014383 mouse_wheel_scan_judge32:
-0x3f64 014384 fetch 1 ,mem_mwheel_b_new_pinlevel 
-0x3f65 014385 beq 3 ,mouse_wheel_back 
-0x3f66 014386 rtn 
-:      014387 mouse_wheel_scan_judge33:
-0x3f67 014388 fetch 1 ,mem_mwheel_b_new_pinlevel 
-0x3f68 014389 beq 0 ,mouse_wheel_back 
-0x3f69 014390 rtn 
-:      014391 mouse_wheel_forward:
-0x3f6a 014392 jam 0 ,mem_mouse_z_data_count1 
-0x3f6b 014393 fetch 1 ,mem_mouse_z_data 
-0x3f6c 014394 increase 1 ,pdata 
-0x3f6d 014395 store 1 ,mem_mouse_z_data 
-0x3f6e 014396 rtn 
-:      014397 mouse_wheel_back:
-0x3f6f 014398 jam 0 ,mem_mouse_z_data_count 
-0x3f70 014399 fetch 1 ,mem_mouse_z_data 
-0x3f71 014400 increase -1 ,pdata 
-0x3f72 014401 store 1 ,mem_mouse_z_data 
-0x3f73 014402 rtn 
-:      014405 mouse_hid_connected:
-0x3f74 014406 setarg hid_handshake_timeout 
-0x3f75 014407 store 1 ,mem_hid_handshake_timer_count 
-0x3f76 014408 rtn 
-:      014410 mouse_send_process:
-0x3f77 014411 fetch 1 ,mem_app_handshake_flag 
-0x3f78 014412 rtn blank 
-0x3f79 014413 call l2cap_malloc_is_fifo_nearly_full 
-0x3f7a 014414 nrtn blank 
-0x3f7b 014415 fetch mouse_flag_len ,mem_mouse_flag 
-0x3f7c 014416 bbit1 mosue_24g_pairing_flag ,mouse_send_empty_data 
-0x3f7d 014417 bbit1 mouse_select_device_flag ,mouse_send_empty_data 
-0x3f7e 014418 bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
-0x3f7f 014419 call mouse_motion 
-0x3f80 014420 nrtn user 
-:      014421 mouse_send_data:
-0x3f81 014422 arg 9 ,rega 
-0x3f82 014423 call hid_malloc_tx_buff 
-0x3f83 014424 fetch 2 ,mem_hid_int_remote_cid 
-0x3f84 014425 istore 2 ,contw 
-0x3f85 014426 setarg 0x02a1 
-0x3f86 014427 istore 2 ,contw 
-0x3f87 014428 fetch 7 ,mem_mouse_key 
-0x3f88 014429 istore 7 ,contw 
-0x3f89 014430 rtn 
-:      014433 mouse_send_empty_data:
-0x3f8a 014434 setarg 0 
-0x3f8b 014435 store 7 ,mem_mouse_key 
-0x3f8c 014436 branch mouse_send_data 
-:      014439 mouse_no_data_timer_init:
-0x3f8d 014440 fetch 2 ,mem_mouse_no_data_timeout 
-0x3f8e 014441 store 2 ,mem_mouse_no_data_timer 
-0x3f8f 014442 rtn 
-:      014445 mouse_fill_data_le:
-0x3f90 014446 bpatch patch1c_5 ,mem_patch1c 
-0x3f91 014447 arg 7 ,rega 
-0x3f92 014448 fetcht 2 ,mem_le_notify_handle 
-0x3f93 014449 call le_att_malloc_tx_notify 
-0x3f94 014450 fetch 7 ,mem_mouse_key 
-0x3f95 014451 istore 7 ,contw 
-0x3f96 014452 rtn 
-:      014454 mouse_motion:
-0x3f97 014455 bpatch patch1c_6 ,mem_patch1c 
-0x3f98 014456 disable user 
-0x3f99 014457 setarg 0 
-0x3f9a 014458 store 6 ,mem_mouse_x 
-0x3f9b 014459 call mouse_cheak_sensor_data 
-0x3f9c 014460 call mouse_zwheel 
-0x3f9d 014461 call mouse_t_zwheel 
-0x3f9e 014462 call mouse_key 
-0x3f9f 014463 nrtn user 
-0x3fa0 014464 call mouse_no_data_timer_init 
-0x3fa1 014465 arg mouse_statue_up_flag ,queue 
-0x3fa2 014466 branch mouse_enable_function_flag 
-:      014468 motion_6clk_direction_dispose:
-0x3fa3 014469 fetch 2 ,mem_mouse_x 
-0x3fa4 014470 sub pdata ,0 ,pdata 
-0x3fa5 014471 store 2 ,mem_mouse_x 
-0x3fa6 014472 branch enable_user 
-:      014473 motion_12clk_direction_dispose:
-0x3fa7 014474 fetch 2 ,mem_mouse_y 
-0x3fa8 014475 sub pdata ,0 ,pdata 
-0x3fa9 014476 store 2 ,mem_mouse_y 
-0x3faa 014477 branch enable_user 
-:      014478 motion_9clk_direction_dispose:
-0x3fab 014479 fetch 2 ,mem_mouse_y 
-0x3fac 014480 sub pdata ,0 ,pdata 
-0x3fad 014481 store 2 ,mem_mouse_y 
-0x3fae 014482 fetch 2 ,mem_mouse_x 
-0x3faf 014483 sub pdata ,0 ,pdata 
-0x3fb0 014484 store 2 ,mem_mouse_x 
-0x3fb1 014485 call mouse_sensor_data_swap_places 
-0x3fb2 014486 branch enable_user 
-:      014487 motion_3clk_direction_dispose:
-0x3fb3 014488 call mouse_sensor_data_swap_places 
-0x3fb4 014489 branch enable_user 
-:      014490 mouse_cheak_sensor_data:
-0x3fb5 014491 fetch 1 ,mem_spi_write_flash_sm 
-0x3fb6 014492 rtnne flash_sm_no_buys 
-0x3fb7 014493 fetch 1 ,mem_config_sensor_type 
-0x3fb8 014494 beq p3205 ,mouse_p32xx_sensor_motion 
-0x3fb9 014495 beq p3065 ,mouse_p32xx_sensor_motion 
-0x3fba 014496 beq ka8 ,mouse_p32xx_sensor_motion 
-0x3fbb 014497 beq p3204 ,mouse_p32xx_sensor_motion 
-0x3fbc 014498 beq p3212 ,mouse_p3212_sensor_motion 
-0x3fbd 014499 beq p3610 ,mouse_p3610_sensor_motion 
-0x3fbe 014500 beq p3065_xy ,mouse_p32xx_sensor_motion 
-0x3fbf 014501 branch mouse_p32xx_sensor_motion 
-:      014503 mouse_clear_sensor_data:
-0x3fc0 014504 fetch 1 ,mem_mouse_move_flag 
-0x3fc1 014505 call mouse_read_sensor_common ,blank 
-0x3fc2 014506 jam 1 ,mem_mouse_move_flag 
-0x3fc3 014507 rtn 
-:      014510 mouse_p3212_sensor_motion:
-0x3fc4 014511 call mouse_clear_sensor_data 
-0x3fc5 014512 fetcht 1 ,mem_sensor_data_gpio 
-0x3fc6 014513 call gpio_get_bit 
-0x3fc7 014514 nrtn true 
-:      014515 mouse_p3212_sensor_motion_1:
-0x3fc8 014516 setarg pan_reg_pid_l 
-0x3fc9 014517 call twspi_read 
-0x3fca 014518 bne p32xx_id1 ,mouse_twspi_reset 
-0x3fcb 014519 setarg pan_reg_motion_staus 
-0x3fcc 014520 call twspi_read 
-0x3fcd 014521 rtnbit0 7 
-0x3fce 014522 call mouse_read_sensor_common 
-0x3fcf 014523 call mouse_read_3212sensor_xy_high 
-0x3fd0 014524 store 1 ,mem_mouse_xy_h 
-0x3fd1 014525 rshift4 pdata ,pdata 
-0x3fd2 014526 call extsign_bit3 
-0x3fd3 014527 store 1 ,mem_mouse_x + 1 
-0x3fd4 014528 fetch 1 ,mem_mouse_xy_h 
-0x3fd5 014529 and pdata ,0x0f ,pdata 
-0x3fd6 014530 call extsign_bit3 
-0x3fd7 014531 store 1 ,mem_mouse_y + 1 
-0x3fd8 014532 fetch 1 ,mem_config_sensor_angle 
-0x3fd9 014533 beq mouse_6clk_angle ,motion_6clk_direction_dispose 
-0x3fda 014534 beq mouse_9clk_angle ,motion_9clk_direction_dispose 
-0x3fdb 014535 beq mouse_12clk_angle ,motion_12clk_direction_dispose 
-0x3fdc 014536 beq mouse_3clk_angle ,motion_3clk_direction_dispose 
-0x3fdd 014537 rtn 
-:      014539 mouse_read_3212sensor_xy_high:
-0x3fde 014540 setarg 0x12 
-0x3fdf 014541 branch twspi_read 
-:      014543 mouse_p3065_judge:
-0x3fe0 014544 beq p3065_id1 ,mouse_p32xx_sensor_motion_1 
-0x3fe1 014545 branch mouse_twspi_reset 
-:      014547 mouse_p32xx_sensor_motion:
-0x3fe2 014548 call mouse_clear_sensor_data 
-0x3fe3 014549 disable user 
-0x3fe4 014550 fetcht 1 ,mem_sensor_data_gpio 
-0x3fe5 014551 call gpio_get_bit 
-0x3fe6 014552 nrtn true 
-:      014553 mouse_p32xx_sensor_motion_2:
-0x3fe7 014554 setarg pan_reg_pid_l 
-0x3fe8 014555 call twspi_read 
-0x3fe9 014556 bne p32xx_id1 ,mouse_p3065_judge 
-:      014557 mouse_p32xx_sensor_motion_1:
-0x3fea 014558 setarg pan_reg_motion_staus 
-0x3feb 014559 call twspi_read 
-0x3fec 014560 rtnbit0 7 
-0x3fed 014561 call mouse_read_sensor_common 
-0x3fee 014562 fetch 1 ,mem_mouse_x 
-0x3fef 014563 call extsign 
-0x3ff0 014564 store 2 ,mem_mouse_x 
-0x3ff1 014565 fetch 1 ,mem_mouse_y 
-0x3ff2 014566 call extsign 
-0x3ff3 014567 store 2 ,mem_mouse_y 
-0x3ff4 014568 fetch 1 ,mem_config_sensor_angle 
-0x3ff5 014569 beq mouse_6clk_angle ,motion32xx_6clk_direction_selection 
-0x3ff6 014570 beq mouse_9clk_angle ,motion32xx_9clk_direction_selection 
-0x3ff7 014571 beq mouse_12clk_angle ,motion32xx_12clk_direction_selection 
-0x3ff8 014572 beq mouse_3clk_angle ,motion32xx_3clk_direction_selection 
-0x3ff9 014573 rtn 
-:      014575 motion32xx_6clk_direction_selection:
-0x3ffa 014576 call motion_6clk_direction_dispose 
-0x3ffb 014577 branch mouse_sensor_sdio_low 
-:      014578 motion32xx_9clk_direction_selection:
-0x3ffc 014579 call motion_9clk_direction_dispose 
-0x3ffd 014580 branch mouse_sensor_sdio_low 
-:      014581 motion32xx_12clk_direction_selection:
-0x3ffe 014582 call motion_12clk_direction_dispose 
-0x3fff 014583 branch mouse_sensor_sdio_low 
-:      014584 motion32xx_3clk_direction_selection:
-0x4000 014585 call motion_3clk_direction_dispose 
-0x4001 014586 branch mouse_sensor_sdio_low 
-:      014588 mouse_sensor_data_swap_places:
-0x4002 014589 fetch 2 ,mem_mouse_y 
-0x4003 014590 fetcht 2 ,mem_mouse_x 
-0x4004 014591 store 2 ,mem_mouse_x 
-0x4005 014592 storet 2 ,mem_mouse_y 
-0x4006 014593 rtn 
-:      014595 mouse_p3610sensor_read:
-0x4007 014596 call spi_ncs_enable 
-0x4008 014597 nop 100 
-0x4009 014598 copy regb ,pdata 
-0x400a 014599 call twspi_read 
-0x400b 014600 copy pdata ,regb 
-0x400c 014601 call spi_ncs_disable 
-0x400d 014602 nop 100 
-0x400e 014603 copy regb ,pdata 
-0x400f 014604 rtn 
-:      014605 mouse_p3610_sensor_motion:
-0x4010 014606 disable user 
-0x4011 014607 fetcht 1 ,mem_sensor_data_gpio 
-0x4012 014608 call gpio_get_bit 
-0x4013 014609 nrtn true 
-0x4014 014610 arg pan_reg_motion_staus ,regb 
-0x4015 014611 call mouse_p3610sensor_read 
-0x4016 014612 rtnbit0 7 
-0x4017 014613 arg pan_reg_pid_l ,regb 
-0x4018 014614 call mouse_p3610sensor_read 
-0x4019 014615 store 1 ,mem_sensor_id1 
-0x401a 014616 bne p3610_id1 ,mouse_init_3610sensor_reset 
-0x401b 014617 fetch 1 ,mem_mouse_move_flag 
-0x401c 014618 call mouse_read_sensor3610_data ,blank 
-0x401d 014619 jam 1 ,mem_mouse_move_flag 
-0x401e 014620 call mouse_read_sensor3610_data 
-0x401f 014621 fetch 1 ,mem_mouse_xy_h 
-0x4020 014622 rshift4 pdata ,pdata 
-0x4021 014623 call extsign_bit3 
-0x4022 014624 store 1 ,mem_mouse_x + 1 
-0x4023 014625 fetch 1 ,mem_mouse_xy_h 
-0x4024 014626 and pdata ,0x0f ,pdata 
-0x4025 014627 call extsign_bit3 
-0x4026 014628 store 1 ,mem_mouse_y + 1 
-0x4027 014629 fetch 1 ,mem_config_sensor_angle 
-0x4028 014630 beq 0 ,motion3610_6clk_direction_selection 
-0x4029 014631 beq 1 ,motion3610_9clk_direction_selection 
-0x402a 014632 beq 2 ,motion3610_12clk_direction_selection 
-0x402b 014633 beq 3 ,motion3610_3clk_direction_selection 
-0x402c 014634 rtn 
-:      014636 mouse_3610_smart_select:
-0x402d 014637 fetch 1 ,mem_sensor_smart_flag 
-0x402e 014638 beq p3610_smart_enable ,mouse_3610_smart_disable 
-0x402f 014639 beq p3610_smart_disable ,mouse_3610_smart_enable 
-0x4030 014640 rtn 
-:      014643 motion3610_6clk_direction_selection:
-0x4031 014644 call motion_6clk_direction_dispose 
-0x4032 014645 branch mouse_3610_smart_select 
-:      014647 motion3610_12clk_direction_selection:
-0x4033 014648 call motion_12clk_direction_dispose 
-0x4034 014649 branch mouse_3610_smart_select 
-:      014651 motion3610_9clk_direction_selection:
-0x4035 014652 call motion_9clk_direction_dispose 
-0x4036 014653 branch mouse_3610_smart_select 
-:      014655 motion3610_3clk_direction_selection:
-0x4037 014656 call motion_3clk_direction_dispose 
-0x4038 014657 branch mouse_3610_smart_select 
-:      014659 mouse_read_sensor3610_data:
-0x4039 014660 call spi_ncs_enable 
-0x403a 014661 call mouse_read_sensor_common 
-0x403b 014662 arg 5 ,pdata 
-0x403c 014663 call twspi_read 
-0x403d 014664 store 1 ,mem_mouse_xy_h 
-0x403e 014665 arg 7 ,pdata 
-0x403f 014666 call twspi_read 
-0x4040 014667 store 1 ,mem_sensor_shutter_hi 
-0x4041 014668 arg 8 ,pdata 
-0x4042 014669 call twspi_read 
-0x4043 014670 store 1 ,mem_sensor_shutter_lo 
-0x4044 014671 branch spi_ncs_disable 
-:      014674 mouse_3610_smart_enable:
-0x4045 014675 fetch 1 ,mem_sensor_shutter_hi 
-0x4046 014676 rtnne 0 
-0x4047 014677 fetch 1 ,mem_sensor_shutter_lo 
-0x4048 014678 sub pdata ,45 ,null 
-0x4049 014679 rtn positive 
-0x404a 014680 jam p3610_smart_enable ,mem_sensor_smart_flag 
-0x404b 014681 setarg 0xba41 
-0x404c 014682 call sensor_write 
-0x404d 014683 setarg 0x0032 
-0x404e 014684 call sensor_write 
-0x404f 014685 setarg 0xb541 
-0x4050 014686 branch sensor_write 
-:      014687 mouse_3610_smart_disable:
-0x4051 014688 fetch 1 ,mem_sensor_shutter_hi 
-0x4052 014689 rtnne 0 
-0x4053 014690 fetch 1 ,mem_sensor_shutter_lo 
-0x4054 014691 sub pdata ,45 ,null 
-0x4055 014692 nrtn positive 
-0x4056 014693 jam p3610_smart_disable ,mem_sensor_smart_flag 
-0x4057 014694 setarg 0xba41 
-0x4058 014695 call sensor_write 
-0x4059 014696 setarg 0x8032 
-0x405a 014697 call sensor_write 
-0x405b 014698 setarg 0xb541 
-0x405c 014699 branch sensor_write 
-:      014703 mouse_read_sensor_common:
-0x405d 014704 arg pan_reg_delta_x ,pdata 
-0x405e 014705 call twspi_read 
-0x405f 014706 store 2 ,mem_mouse_x 
-0x4060 014707 arg pan_reg_delta_y ,pdata 
-0x4061 014708 call twspi_read 
-0x4062 014709 store 2 ,mem_mouse_y 
-0x4063 014710 rtn 
-:      014712 mouse_set_qdecoder_x:
-0x4064 014713 arg mouse_default_xa_gpio ,temp 
-0x4065 014714 call gpio_config_input 
-0x4066 014715 arg mouse_default_xa_gpio ,temp 
-0x4067 014716 call gpio_get_bit 
-0x4068 014717 rtn true 
-0x4069 014718 hfetch 1 ,core_qdec_cntx 
-0x406a 014719 set1 4 ,pdata 
-0x406b 014720 hstore 1 ,core_qdec_cntx 
-0x406c 014721 rtn 
-:      014723 mouse_hardware_zwheel:
-0x406d 014724 fetcht 1 ,mem_mouse_z_data 
-0x406e 014725 hfetch 1 ,core_qdec_cntx 
-0x406f 014726 iadd temp ,pdata 
-0x4070 014727 rtn blank 
-0x4071 014728 store 1 ,mem_mouse_z 
-0x4072 014729 jam 0 ,mem_mouse_z_data 
-0x4073 014730 branch enable_user 
-:      014731 mouse_hardware_zwheel_beforelpm:
-0x4074 014732 fetcht 1 ,mem_mouse_z_data 
-0x4075 014733 hfetch 1 ,core_qdec_cntx 
-0x4076 014734 iadd temp ,pdata 
-0x4077 014735 store 1 ,mem_mouse_z_data 
-0x4078 014736 rtn 
-:      014737 mouse_zwheel:
-0x4079 014738 fetch 1 ,mem_mouse_z_data 
-0x407a 014739 rtn blank 
-0x407b 014740 store 1 ,mem_mouse_z 
-0x407c 014741 jam 0 ,mem_mouse_z_data 
-0x407d 014742 branch enable_user 
-:      014744 mouse_t_zwheel:
-0x407e 014745 fetch 1 ,mem_mouse_tz_data 
-0x407f 014746 rtn blank 
-0x4080 014747 store 1 ,mem_mouse_tz 
-0x4081 014748 jam 0 ,mem_mouse_tz_data 
-0x4082 014749 branch enable_user 
-:      014751 mouse_check_key_gpio:
-0x4083 014752 arg 0 ,rega 
-0x4084 014753 fetcht 1 ,mem_lbutton_gpio 
-0x4085 014754 call gpio_get_bit 
-0x4086 014755 setflag true ,0 ,rega 
-0x4087 014756 fetcht 1 ,mem_rbutton_gpio 
-0x4088 014757 call gpio_get_bit 
-0x4089 014758 setflag true ,1 ,rega 
-0x408a 014759 fetcht 1 ,mem_mbutton_gpio 
-0x408b 014760 call gpio_get_bit 
-0x408c 014761 setflag true ,2 ,rega 
-0x408d 014762 call mouse_check_s_key_gpio 
-:      014763 mouse_check_key_gpio_output:
-0x408e 014764 copy rega ,pdata 
-0x408f 014765 rtn 
-:      014766 mouse_check_s_key_gpio:
-0x4090 014767 fetch 1 ,mem_bk_button_gpio 
-0x4091 014768 rtneq gpio_disable 
-0x4092 014769 fetcht 1 ,mem_bk_button_gpio 
-0x4093 014770 call gpio_get_bit 
-0x4094 014771 setflag true ,3 ,rega 
-0x4095 014772 fetcht 1 ,mem_fw_button_gpio 
-0x4096 014773 call gpio_get_bit 
-0x4097 014774 setflag true ,4 ,rega 
-0x4098 014775 rtn 
-:      014777 mouse_key:
-0x4099 014778 call mouse_check_key_gpio 
-0x409a 014779 call mouse_set_mult 
-0x409b 014780 call mouse_24g_key 
-0x409c 014781 copy rega ,pdata 
-0x409d 014782 fetcht 1 ,mem_mouse_key 
-0x409e 014783 store 1 ,mem_mouse_key 
-0x409f 014784 ixor temp ,pdata 
-0x40a0 014785 sub pdata ,0 ,null 
-0x40a1 014786 rtn zero 
-0x40a2 014787 branch enable_user 
-:      014789 mouse_24g_key:
-0x40a3 014790 rtnmark0 mark_24g 
-0x40a4 014791 copy rega ,pdata 
-0x40a5 014792 rtn blank 
-0x40a6 014793 store 1 ,mem_mouse_key 
-0x40a7 014794 branch enable_user 
-:      014797 mouse_set_mult:
-0x40a8 014798 fetch 2 ,mem_ui_state_map 
-0x40a9 014799 bbit1 ui_state_ble_connected ,mouse_set_ble_mult 
-0x40aa 014800 fetch 2 ,mem_ui_state_map 
-0x40ab 014801 bbit1 ui_state_bt_connected ,mouse_set_bt_mult 
-0x40ac 014802 rtn 
-:      014803 mouse_set_ble_mult:
-0x40ad 014804 copy rega ,pdata 
-0x40ae 014805 nbranch le_set_config_short_mult ,blank 
-0x40af 014806 branch le_clr_config_short_mult 
-:      014807 mouse_set_bt_mult:
-0x40b0 014808 copy rega ,pdata 
-0x40b1 014809 nbranch classic_bt_set_mult_short_flag ,blank 
-0x40b2 014810 branch classic_bt_clr_mult_short_flag 
-:      014813 mouse_sensor_sdio_low:
-0x40b3 014814 bpatch patch1c_7 ,mem_patch1c 
-0x40b4 014815 arg mouse_spi1_sdio_gpio ,temp 
-0x40b5 014816 fetch mouse_flag_len ,mem_mouse_flag 
-0x40b6 014817 isolate1 mouse_enable_spi2 ,pdata 
-0x40b7 014818 call mouse_sensor_sdio_low2 ,true 
-0x40b8 014819 call gpio_get_bit 
-0x40b9 014820 rtn true 
-0x40ba 014821 setarg 0x0a 
-0x40bb 014822 call twspi_read 
-0x40bc 014823 nop 1000 
-0x40bd 014824 branch mouse_sensor_sdio_low 
-:      014825 mouse_sensor_sdio_low2:
-0x40be 014826 arg mouse_spi2_sdio_gpio ,temp 
-0x40bf 014827 rtn 
-:      014829 mouse_spi_sdio_gpio_pollup:
-0x40c0 014830 fetch mouse_flag_len ,mem_mouse_flag 
-0x40c1 014831 bbit1 mouse_enable_spi2 ,mouse_spi2_sdio_gpio_pollup 
-:      014832 mouse_spi1_sdio_gpio_pollup:
-0x40c2 014833 arg mouse_spi1_sdio_gpio ,temp 
-0x40c3 014834 branch gpio_config_input_without_wake 
-:      014835 mouse_spi2_sdio_gpio_pollup:
-0x40c4 014836 arg mouse_spi2_sdio_gpio ,temp 
-0x40c5 014837 branch gpio_config_input_without_wake 
-:      014840 mouse_init_sunt:
-0x40c6 014841 call mouse_spi_init 
-0x40c7 014842 rtn wake 
-0x40c8 014843 call mouse_spi_sdio_gpio_pollup 
-0x40c9 014844 fetch 1 ,mem_config_sensor_type 
-0x40ca 014845 beq p3610 ,mouse_init_3610sensor 
-:      014846 mouse_init_sensor:
-0x40cb 014847 call mouse_read_sensor_id 
-0x40cc 014848 beq p32xx_id1 ,mouse_init_p32xx_id2_judge 
-0x40cd 014849 beq p3065_id1 ,mouse_p3065_init_param 
-0x40ce 014850 call mouse_twspi_reset 
-0x40cf 014851 nop 1000 
-0x40d0 014852 branch mouse_init_sensor 
-:      014853 mouse_twspi_reset:
-0x40d1 014854 bpatch patch1d_0 ,mem_patch1d 
-0x40d2 014855 fetch mouse_flag_len ,mem_mouse_flag 
-0x40d3 014856 bbit1 mouse_enable_spi2 ,twspi_reset2 
-0x40d4 014857 branch twspi_reset 
-:      014859 mouse_init_3610sensor:
-0x40d5 014860 call mouse_read_sensor_id 
-0x40d6 014861 beq p3610_id1 ,mouse_init_p3610 
-0x40d7 014862 call mouse_init_3610sensor_reset 
-0x40d8 014863 branch mouse_init_3610sensor 
-:      014865 mouse_read_sensor_id:
-0x40d9 014866 setarg pan_reg_pid_h 
-0x40da 014867 call twspi_read 
-0x40db 014868 store 1 ,mem_sensor_id2 
-0x40dc 014869 setarg pan_reg_pid_l 
-0x40dd 014870 call twspi_read 
-0x40de 014871 store 1 ,mem_sensor_id1 
-0x40df 014872 rtn 
-:      014873 mouse_init_p32xx_id2_judge:
-0x40e0 014874 fetch 1 ,mem_sensor_id2 
-0x40e1 014875 beq p3205_tj3t_id2 ,mouse_3205_3t_init_param 
-0x40e2 014876 beq p3204_tj3l_id2 ,mouse_3204_3l_init_param 
-0x40e3 014877 beq p3212_id2 ,mouse_3212_init_param 
-0x40e4 014878 beq pka8_id2 ,mouse_ka8_init_param 
-0x40e5 014879 rtn 
-:      014880 mouse_ka8_init_param:
-0x40e6 014881 jam ka8 ,mem_config_sensor_type 
-0x40e7 014882 rtn 
-:      014883 mouse_p3065xy_init_param:
-0x40e8 014884 jam p3065_xy ,mem_config_sensor_type 
-0x40e9 014885 rtn 
-:      014886 mouse_p3065_init_param:
-0x40ea 014887 fetch 1 ,mem_sensor_id2 
-0x40eb 014888 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
-0x40ec 014889 jam p3065 ,mem_config_sensor_type 
-0x40ed 014890 rtn 
-:      014891 mouse_3212_init_param:
-0x40ee 014892 jam p3212 ,mem_config_sensor_type 
-0x40ef 014893 call mouse_sensor_disable_wp 
-0x40f0 014894 setarg 0x3426 
-0x40f1 014895 call twspi_write 
-0x40f2 014896 setarg 0x0419 
-0x40f3 014897 call twspi_write 
-:      014898 mouse_sensor_enable_wp:
-0x40f4 014899 setarg 0x0009 
-0x40f5 014900 branch twspi_write 
-:      014901 mouse_sensor_disable_wp:
-0x40f6 014902 setarg 0x5a09 
-0x40f7 014903 branch twspi_write 
-:      014905 mouse_3204_3l_init_param:
-0x40f8 014906 jam p3204 ,mem_config_sensor_type 
-0x40f9 014907 call mouse_sensor_disable_wp 
-0x40fa 014908 setarg 0x0f0d 
-0x40fb 014909 call twspi_write 
-0x40fc 014910 setarg 0xe31d 
-0x40fd 014911 call twspi_write 
-0x40fe 014912 setarg 0xd27d 
-0x40ff 014913 call twspi_write 
-0x4100 014914 call mouse_32xx_init_param 
-0x4101 014915 branch mouse_32xx_init_param_1 
-:      014917 mouse_32xx_init_param:
-0x4102 014918 setarg 0x351b 
-0x4103 014919 call twspi_write 
-0x4104 014920 setarg 0xb428 
-0x4105 014921 call twspi_write 
-0x4106 014922 setarg 0x4629 
-0x4107 014923 call twspi_write 
-0x4108 014924 setarg 0x962a 
-0x4109 014925 call twspi_write 
-0x410a 014926 setarg 0x8c2b 
-0x410b 014927 call twspi_write 
-0x410c 014928 setarg 0x6e2c 
-0x410d 014929 call twspi_write 
-0x410e 014930 setarg 0x642d 
-0x410f 014931 call twspi_write 
-0x4110 014932 setarg 0x5f38 
-0x4111 014933 call twspi_write 
-0x4112 014934 setarg 0x0f39 
-0x4113 014935 call twspi_write 
-0x4114 014936 setarg 0x323a 
-0x4115 014937 call twspi_write 
-0x4116 014938 setarg 0x473b 
-0x4117 014939 call twspi_write 
-0x4118 014940 setarg 0x1042 
-0x4119 014941 branch twspi_write 
-:      014942 mouse_32xx_init_param_1:
-0x411a 014943 setarg 0x2e54 
-0x411b 014944 call twspi_write 
-0x411c 014945 setarg 0xf255 
-0x411d 014946 call twspi_write 
-0x411e 014947 setarg 0xf461 
-0x411f 014948 call twspi_write 
-0x4120 014949 setarg 0x7063 
-0x4121 014950 call twspi_write 
-0x4122 014951 setarg 0x5275 
-0x4123 014952 call twspi_write 
-0x4124 014953 setarg 0x4176 
-0x4125 014954 call twspi_write 
-0x4126 014955 setarg 0xed77 
-0x4127 014956 call twspi_write 
-0x4128 014957 setarg 0x2378 
-0x4129 014958 call twspi_write 
-0x412a 014959 setarg 0x4679 
-0x412b 014960 call twspi_write 
-0x412c 014961 setarg 0xe57a 
-0x412d 014962 call twspi_write 
-0x412e 014963 setarg 0x487c 
-0x412f 014964 call twspi_write 
-0x4130 014965 setarg 0x777e 
-0x4131 014966 call twspi_write 
-0x4132 014967 setarg 0x017f 
-0x4133 014968 call twspi_write 
-0x4134 014969 setarg 0x000b 
-0x4135 014970 call twspi_write 
-0x4136 014971 setarg 0x007f 
-0x4137 014972 call twspi_write 
-0x4138 014973 branch mouse_sensor_enable_wp 
-:      014976 mouse_3205_3t_init_param:
-0x4139 014977 jam p3205 ,mem_config_sensor_type 
-0x413a 014978 call mouse_sensor_disable_wp 
-0x413b 014979 setarg 0x100d 
-0x413c 014980 call twspi_write 
-0x413d 014981 setarg 0xed1d 
-0x413e 014982 call twspi_write 
-0x413f 014983 setarg 0x807d 
-0x4140 014984 call twspi_write 
-0x4141 014985 call mouse_32xx_init_param 
-0x4142 014986 setarg 0x0943 
-0x4143 014987 call twspi_write 
-0x4144 014988 branch mouse_32xx_init_param_1 
-:      014991 mouse_init_3610sensor_reset:
-0x4145 014992 fetcht 1 ,mem_sensor_reset_gpio 
-0x4146 014993 call gpio_out_active 
-0x4147 014994 call delay_10ms 
-0x4148 014995 fetcht 1 ,mem_sensor_reset_gpio 
-0x4149 014996 call gpio_out_inactive 
-0x414a 014997 branch delay_10ms 
-:      014999 mouse_init_p3610:
-0x414b 015000 jam p3610 ,mem_config_sensor_type 
-0x414c 015001 setarg 0xba41 
-0x414d 015002 call sensor_write 
-0x414e 015003 setarg 0x0d11 
-0x414f 015004 call sensor_write 
-0x4150 015005 setarg 0x041b 
-0x4151 015006 call sensor_write 
-0x4152 015007 setarg 0x041c 
-0x4153 015008 call sensor_write 
-0x4154 015009 setarg 0x0f1d 
-0x4155 015010 call sensor_write 
-0x4156 015011 setarg 0x0032 
-0x4157 015012 call sensor_write 
-0x4158 015013 setarg 0xb541 
-0x4159 015014 branch sensor_write 
-:      015018 mouse_set_sensor_reg:
-0x415a 015019 setarg 0xba41 
-0x415b 015020 call sensor_write 
-0x415c 015021 nop 4000 
-0x415d 015022 setarg 0xff7f 
-0x415e 015023 call sensor_write 
-0x415f 015024 copy rega ,pdata 
-0x4160 015025 call sensor_write 
-0x4161 015026 setarg 0x007f 
-0x4162 015027 call sensor_write 
-0x4163 015028 setarg 0xb541 
-0x4164 015029 branch sensor_write 
-:      015031 extsign:
-0x4165 015032 rtnbit0 7 
-0x4166 015033 arg 0xff00 ,temp 
-0x4167 015034 ior temp ,pdata 
-0x4168 015035 rtn 
-:      015037 extsign_bit3:
-0x4169 015038 rtnbit0 3 
-0x416a 015039 arg 0xf0 ,temp 
-0x416b 015040 ior temp ,pdata 
-0x416c 015041 rtn 
-:      015044 mouse_le:
-0x416d 015045 call le_fifo_check_nearly_full 
-0x416e 015046 nrtn blank 
-0x416f 015047 fetch 1 ,mem_le_connect_status_flag 
-0x4170 015048 and pdata ,0x03 ,pdata 
-0x4171 015049 rtnne 0x03 
-0x4172 015050 fetch mouse_flag_len ,mem_mouse_flag 
-0x4173 015051 bbit1 mosue_24g_pairing_flag ,mouse_le_send_empty_packet 
-0x4174 015052 bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
-0x4175 015053 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
-0x4176 015054 call mouse_motion 
-0x4177 015055 nrtn user 
-0x4178 015056 branch mouse_fill_data_le 
-:      015058 mouse_le_send_empty_packet:
-0x4179 015059 setarg 0 
-0x417a 015060 store 7 ,mem_mouse_key 
-0x417b 015061 branch mouse_fill_data_le 
-:      015063 mouse_priority_bb_event:
-0x417c 015064 copy regc ,pdata 
-0x417d 015065 beq bt_evt_le_connected ,mouse_le_bb_event_connected 
-0x417e 015066 beq bt_evt_bb_connected ,mouse_stop_discovery 
-0x417f 015067 beq bt_evt_le_disconnected ,mouse_bb_disconnected 
-0x4180 015068 beq bt_evt_bb_disconnected ,mouse_bb_disconnected 
-0x4181 015069 beq bt_evt_setup_complete ,mouse_bt_event_setup_complete 
-0x4182 015070 beq bt_evt_button_long_pressed ,mouse_bb_event_discovery_btn 
-0x4183 015071 beq bt_evt_hid_handshake ,mouse_bt_hid_handshake 
-0x4184 015072 beq bt_evt_hid_connected ,mouse_bt_hid_connected 
-0x4185 015073 beq bt_evt_reconn_failed ,mouse_bb_event_reconn_failed 
-0x4186 015074 beq bt_evt_reconn_page_timeout ,mouse_bb_event_reconn_timeout 
-0x4187 015075 beq bt_evt_pincode_req ,mouse_bb_event_pincode 
-0x4188 015076 beq bt_evt_remote_unsniff ,app_start_auto_sniff 
-0x4189 015077 beq bt_evt_le_pairing_success ,mouse_le_pairing_success 
-0x418a 015078 beq bt_evt_le_start_enc ,mouse_le_ll_start_encryt 
-0x418b 015079 beq bt_evt_le_pairing_complete ,mouse_le_pairing_complete 
-0x418c 015080 beq bt_evt_virtual_cable_unplug ,mouse_irtual_cable_unplug 
-0x418d 015081 beq bt_evt_24g_pairing_complete ,mouse_24g_pairing_complete 
-0x418e 015082 beq bt_evt_24g_attempt_fail ,mouse_24g_attempt_fail 
-0x418f 015083 beq bt_evt_24g_attempt_success ,mouse_24g_attempt_success 
-0x4190 015084 rtn 
-:      015087 mouse_le_pairing_complete:
-0x4191 015088 branch app_ble_store_reconn_info 
-:      015090 mouse_24g_attempt_fail:
-0x4192 015091 jam 1 ,mem_mouse_24g_enter_lpm_enable 
-0x4193 015092 fetch 1 ,mem_reconn_times 
-0x4194 015093 nbranch mouse_polling_device ,blank 
-0x4195 015094 fetch 1 ,mem_device_flag 
-0x4196 015095 fetcht 1 ,mem_24g_device_number 
-0x4197 015096 isub temp ,null 
-0x4198 015097 branch app_enter_hibernate ,zero 
-0x4199 015098 rtn 
-:      015099 mouse_24g_attempt_success:
-0x419a 015100 jam 1 ,mem_mouse_24g_enter_lpm_enable 
-0x419b 015101 rtn 
-:      015102 mouse_24g_pairing_complete:
-0x419c 015103 jam 1 ,mem_mouse_24g_enter_lpm_enable 
-0x419d 015104 arg mosue_24g_pairing_flag ,queue 
-0x419e 015105 call mouse_disable_function_flag 
-0x419f 015106 setarg 0 
-0x41a0 015107 store 2 ,mem_24g_pairing_timer_count 
-0x41a1 015108 jam 0 ,mem_mouse_move_flag 
-0x41a2 015110 fetch 1 ,mem_config_sensor_type 
-0x41a3 015111 sub pdata ,p3610 ,null 
-0x41a4 015112 call mouse_read_sensor3610_data ,zero 
-0x41a5 015113 ncall mouse_read_sensor_common ,zero 
-0x41a6 015115 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
-0x41a7 015116 bbit1 mouse_enable_flash ,mouse_store_flash_24g_address 
-0x41a8 015117 call mouse_set_24g_addr_eeprom 
-0x41a9 015118 branch iicd_write_protect_eep_data 
-:      015120 mouse_set_24g_addr_eeprom:
-0x41aa 015121 call g24_head_ptr2regc 
-0x41ab 015122 add regc ,offset_24g_addr ,rega 
-0x41ac 015123 arg mouse_g24_addr_eeprom_offect ,regb 
-0x41ad 015124 arg 4 ,temp 
-0x41ae 015125 rtn 
-:      015127 mouse_store_flash_24g_address:
-0x41af 015128 call g24_head_ptr2regc 
-0x41b0 015129 add regc ,offset_24g_addr ,regb 
-0x41b1 015130 ifetch 1 ,regb 
-0x41b2 015131 store 1 ,mem_mouse_24g_addr 
-0x41b3 015132 branch mouse_store_flash_device_info 
-:      015135 mouse_le_pairing_success:
-0x41b4 015136 arg ll_pairing_success_flag ,queue 
-0x41b5 015137 branch mouse_le_enable_connect_flag 
-:      015138 mouse_le_ll_start_encryt:
-0x41b6 015139 jam 2 ,mem_le_start_encrypt_timer 
-0x41b7 015140 arg ll_start_enc_flag ,queue 
-0x41b8 015141 branch mouse_le_enable_connect_flag 
-:      015144 mouse_le_enable_connect_flag:
-0x41b9 015145 fetch 1 ,mem_le_connect_status_flag 
-0x41ba 015146 qset1 pdata 
-0x41bb 015147 store 1 ,mem_le_connect_status_flag 
-0x41bc 015148 rtn 
-:      015150 mouse_le_disable_connect_flag:
-0x41bd 015151 fetch 1 ,mem_le_connect_status_flag 
-0x41be 015152 qset0 pdata 
-0x41bf 015153 store 1 ,mem_le_connect_status_flag 
-0x41c0 015154 rtn 
-:      015155 mouse_le_clean_connect_flag:
-0x41c1 015156 jam 0 ,mem_le_connect_status_flag 
-0x41c2 015157 rtn 
-:      015159 mouse_le_bb_event_connected:
-0x41c3 015160 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x41c4 015161 set0 app_disc_by_button ,pdata 
-0x41c5 015162 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
-0x41c6 015163 setarg 0 
-0x41c7 015164 store 2 ,mem_mouse_direct_timer 
-0x41c8 015165 call mouse_no_data_timer_init 
-0x41c9 015166 branch mouse_stop_discovery 
-:      015168 mouse_bb_event_pincode:
-0x41ca 015169 call pincode_reinit 
-0x41cb 015170 branch app_bt_set_pincode 
-:      015171 mouse_bb_event_reconn_timeout:
-:      015172 mouse_bb_event_reconn_failed:
-0x41cc 015173 fetch 1 ,mem_reconn_times 
-0x41cd 015174 nbranch mouse_polling_device ,blank 
-0x41ce 015175 fetch 2 ,mem_ui_state_map 
-0x41cf 015176 bbit1 ui_state_btn_down ,mouse_start_discovery 
-0x41d0 015177 fetch mouse_flag_len ,mem_mouse_flag 
-0x41d1 015178 bbit1 mouse_select_device_flag ,mouse_soft_reset 
-0x41d2 015179 bbit1 mouse_bt_discovery_button_down_flag ,mouse_start_discovery 
-0x41d3 015180 bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
-0x41d4 015181 branch app_bb_hibernate 
-:      015184 mouse_bt_hid_connected:
-0x41d5 015185 branch mouse_hid_connected 
-:      015187 mouse_bt_event_setup_complete:
-0x41d6 015188 rtn 
-:      015190 mouse_soft_reset:
-0x41d7 015191 call mouse_select_device_enable 
-0x41d8 015192 branch soft_reset_chip 
-:      015194 mouse_bb_disconnected:
-0x41d9 015195 bpatch patch1d_1 ,mem_patch1d 
-0x41da 015196 call mouse_bb_discon_clear_stack 
-0x41db 015197 fetch mouse_flag_len ,mem_mouse_flag 
-0x41dc 015198 bbit1 mouse_select_device_flag ,mouse_soft_reset 
-0x41dd 015199 bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
-0x41de 015200 fetch 1 ,mem_reconn_times 
-0x41df 015201 nbranch mouse_polling_device ,blank 
-0x41e0 015202 fetch app_disc_rsn_size ,mem_app_disconn_reason 
-0x41e1 015203 bbit1 app_disc_ble ,mouse4_0_event_bb_disconn 
-0x41e2 015204 bbit1 app_disc_by_button ,app_disconn_reason_clear 
-0x41e3 015205 bbit1 app_disc_after_pairing ,mouse_event_light_state_pairing 
-0x41e4 015206 bbit1 app_disc_after_reconn ,mouse_event_light_state_hibernate 
-0x41e5 015207 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
-0x41e6 015208 branch mouse_start_discovery 
-:      015209 mouse_bb_discon_clear_stack:
-0x41e7 015210 setarg 0 
-0x41e8 015211 store 8 ,mem_wheel_tb_old_pinlevel 
-0x41e9 015212 istore 4 ,contw 
-0x41ea 015213 jam 0 ,mem_mouse_send_blank_timer 
-0x41eb 015214 jam 0 ,mem_mouse_move_flag 
-0x41ec 015215 jam app_handshake_null ,mem_app_handshake_flag 
-0x41ed 015216 jam 0 ,mem_ltk_exists 
-0x41ee 015217 rtn 
-:      015219 mouse_event_light_state_pairing:
-0x41ef 015220 bbit1 app_disc_after_handshake ,mouse_event_light_state_hibernate 
-0x41f0 015221 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
-0x41f1 015222 branch mouse_start_discovery 
-:      015223 mouse_event_light_state_hibernate:
-0x41f2 015224 fetch 2 ,mem_ui_state_map 
-0x41f3 015225 bbit1 ui_state_btn_down ,mouse_start_discovery 
-0x41f4 015226 branch app_bb_hibernate 
-:      015228 mouse4_0_event_bb_disconn:
-0x41f5 015229 call mouse_le_clean_connect_flag 
-0x41f6 015230 fetch app_disc_rsn_size ,mem_app_disconn_reason 
-0x41f7 015231 bbit1 app_disc_by_button ,app_disconn_reason_clear 
-0x41f8 015232 branch app_bb_hibernate 
-:      015234 mouse_bb_event_timer:
-0x41f9 015235 call mouse_adc_read 
-0x41fa 015236 call mouse_24g_delay_timer 
-0x41fb 015237 call mouse_ban_24g_pairing_timer 
-0x41fc 015238 call mouse_dpi_led_blink_delay_timer 
-0x41fd 015239 call mouse_statue_up_timer 
-0x41fe 015241 call mouse_statue_cheak_timer 
-0x41ff 015242 call mouse_select_device 
-0x4200 015243 call mouse_bt_discovery_cheak 
-0x4201 015244 call mouse_low_voltage_led_timer 
-0x4202 015245 call mouse_sensor_led_contrl_timer 
-0x4203 015246 call mouse_check_hid_handshake_timer 
-0x4204 015247 call mouse_check_discovery_timeout_timer 
-0x4205 015248 call mouse_check_direct_timeout_timer 
-0x4206 015249 call mouse_check_no_data_timeout_timer 
-0x4207 015250 call mouse_check_mouse_state_timer 
-0x4208 015251 branch mouse_le_enable_att_list_timer 
-:      015255 mouse_sensor_led_contrl_timer:
-0x4209 015256 fetch 1 ,mem_mouse_sensor_timer_count 
-0x420a 015257 rtn blank 
-0x420b 015258 increase -1 ,pdata 
-0x420c 015259 store 1 ,mem_mouse_sensor_timer_count 
-0x420d 015260 nrtn blank 
-0x420e 015261 branch mouse_sensor_led_contrl 
-:      015262 mouse_sensor_led_contrl:
-0x420f 015263 fetch 1 ,mem_sensor_led_style 
-0x4210 015264 rtneq ui_led_state_blink_stop 
-0x4211 015265 beq ui_led_state_blink_darking ,mouse_sensor_led_blink_state_darking 
-:      015266 mouse_sensor_led_blink_state_lighting:
-0x4212 015267 call mouse_sensor_led_on 
-0x4213 015268 jam ui_led_state_blink_darking ,mem_sensor_led_style 
-0x4214 015269 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
-0x4215 015270 rtn 
-:      015271 mouse_sensor_led_blink_state_darking:
-0x4216 015272 call mouse_sensor_led_off 
-0x4217 015273 jam ui_led_state_blink_lighting ,mem_sensor_led_style 
-0x4218 015274 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
-0x4219 015275 rtn 
-:      015277 mouse_sensor_led_blink_stop:
-:      015278 mouse_sensor_reset:
-0x421a 015279 setarg 0x8006 
-0x421b 015280 call twspi_write 
-0x421c 015281 nop 1000 
-0x421d 015282 jam 0x00 ,mem_mouse_sensor_timer_count 
-0x421e 015283 jam ui_led_state_blink_stop ,mem_sensor_led_style 
-0x421f 015284 branch mouse_init_p32xx_id2_judge 
-:      015286 mouse_p3212sensor_led_on:
-0x4220 015287 setarg 0xa006 
-0x4221 015288 call twspi_write 
-0x4222 015289 setarg 0xa005 
-0x4223 015290 branch twspi_write 
-:      015291 mouse_sensor_led_on_global:
-0x4224 015292 jam 0 ,mem_mouse_sensor_timer_count 
-:      015293 mouse_sensor_led_on:
-0x4225 015294 fetch 1 ,mem_config_sensor_type 
-0x4226 015295 beq p3212 ,mouse_p3212sensor_led_on 
-0x4227 015296 setarg 0x0106 
-0x4228 015297 call twspi_write 
-0x4229 015298 setarg 0xa105 
-0x422a 015299 branch twspi_write 
-:      015301 mouse_sensor_led_off_global:
-0x422b 015302 jam 0 ,mem_mouse_sensor_timer_count 
-:      015303 mouse_sensor_led_off:
-0x422c 015304 setarg 0x0906 
-0x422d 015305 branch twspi_write 
-:      015306 mouse_sensor_start_blink:
-0x422e 015307 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
-0x422f 015308 jam ui_led_state_blink_start ,mem_sensor_led_style 
-0x4230 015309 rtn 
-:      015311 mouse_check_hid_handshake_timer:
-0x4231 015312 arg mem_hid_handshake_timer_count ,regc 
-0x4232 015313 arg mouse_bt_hid_handshake ,regb 
-0x4233 015314 branch timer_single_step 
-:      015316 mouse_check_discovery_timeout_timer:
-0x4234 015317 arg mem_mouse_discovery_timer ,regc 
-0x4235 015318 arg mouse_check_discovery_timeout ,regb 
-0x4236 015319 branch timer_single_step_2b 
-:      015321 mouse_check_direct_timeout_timer:
-0x4237 015322 arg mem_mouse_direct_timer ,regc 
-0x4238 015323 arg mouse_check_direct_timeout ,regb 
-0x4239 015324 branch timer_single_step_2b 
-:      015326 mouse_check_no_data_timeout_timer:
-0x423a 015327 arg mem_mouse_no_data_timer ,regc 
-0x423b 015328 arg mouse_check_no_data_timeout ,regb 
-0x423c 015329 branch timer_single_step_2b 
-:      015331 mouse_check_mouse_state_timer:
-0x423d 015332 arg mem_mouse_statue_led_timer ,regc 
-0x423e 015333 arg mouse_statue_led_off ,regb 
-0x423f 015334 branch timer_single_step 
-:      015338 mouse_le_enable_att_list_timer:
-0x4240 015339 arg mem_le_start_encrypt_timer ,regc 
-0x4241 015340 arg mouse_le_enable_att_list ,regb 
-0x4242 015341 branch timer_single_step 
-:      015343 mouse_24g_delay_timer:
-0x4243 015344 arg mem_24g_enter_lpm_timer ,regc 
-0x4244 015345 arg mouse_24g_delay ,regb 
-0x4245 015346 branch timer_single_step 
-:      015348 mouse_ban_24g_pairing_timer:
-0x4246 015349 arg mem_24g_pairing_timer_count ,regc 
-0x4247 015350 arg mouse_ban_24g_pairing ,regb 
-0x4248 015351 branch timer_single_step_2b 
-:      015352 mouse_ban_24g_pairing:
-:      015353 mouse_24g_delay:
-0x4249 015354 rtn 
-:      015357 mosue_dpi_led_blink_init:
-0x424a 015358 fetch mouse_flag_len ,mem_mouse_flag 
-0x424b 015359 rtnbit0 mouse_enable_dpi_led_blink 
-0x424c 015360 jam 10 ,mem_mouse_dpi_led_delay_count 
-0x424d 015361 fetch 1 ,mem_dpi_led_gpio 
-0x424e 015362 store 1 ,mem_mouse_struct_led_gpio 
-0x424f 015363 rtn 
-:      015366 mouse_dpi_led_blink_delay_timer:
-0x4250 015367 arg mem_mouse_dpi_led_delay_count ,regc 
-0x4251 015368 arg mouse_dpi_led_setting ,regb 
-0x4252 015369 branch timer_single_step 
-:      015370 mouse_dpi_led_setting:
-0x4253 015371 fetch 1 ,mem_dpi_led_gpio 
-0x4254 015372 store 1 ,mem_mouse_struct_led_gpio 
-0x4255 015373 setarg led_dpi_blink 
-0x4256 015374 store 2 ,mem_mouse_on_time 
-0x4257 015375 store 2 ,mem_mouse_off_time 
-0x4258 015376 arg 0 ,rega 
-0x4259 015377 fetcht 1 ,mem_mouse_dpi 
-0x425a 015378 increase 1 ,temp 
-0x425b 015379 storet 1 ,mem_mouse_blink_count 
-0x425c 015380 jam ui_led_state_blink_start ,mem_mouse_led_type 
-0x425d 015381 rtn 
-:      015383 mouse_le_enable_att_list:
-0x425e 015384 fetch 1 ,mem_le_connect_status_flag 
-0x425f 015385 rtnbit1 ll_pairing_success_flag 
-0x4260 015386 jam bt_cmd_le_update_conn ,mem_fifo_temp 
-0x4261 015387 call ui_ipc_send_cmd 
-0x4262 015388 arg write_req_enable_flag ,queue 
-0x4263 015389 branch mouse_le_enable_connect_flag 
-:      015392 mouse_check_discovery_timeout:
-0x4264 015393 call mouse_stop_discovery 
-0x4265 015394 branch app_enter_hibernate 
-:      015396 mouse_check_direct_timeout:
-0x4266 015397 call app_ble_stop_direct_adv 
-0x4267 015398 fetch 1 ,mem_reconn_times 
-0x4268 015399 nbranch mouse_polling_device ,blank 
-0x4269 015400 branch app_enter_hibernate 
-:      015402 mouse_check_no_data_timeout:
-0x426a 015403 bmark1 mark_24g ,check_51cmd_hibernate 
-0x426b 015404 branch mouse_disconnect 
-:      015408 mouse_bb_event_discovery_btn:
-0x426c 015409 bpatch patch1d_2 ,mem_patch1d 
-0x426d 015410 jam 0 ,mem_mouse_send_blank_timer 
-0x426e 015411 call mouse_disconnect 
-0x426f 015412 call mouse_le_clean_connect_flag 
-0x4270 015413 branch mouse_start_discovery 
-:      015417 mouse3_0_check_reconn_target:
-0x4271 015418 fetch 6 ,mem_hci_plap 
-0x4272 015419 branch app_bt_start_discovery_short ,blank 
-0x4273 015420 call mouse_reconn_setting_led_gpio 
-0x4274 015421 jam 0x17 ,mem_connection_options 
-0x4275 015422 fetch 1 ,mem_ssp_enable 
-0x4276 015423 nbranch app_bt_start_reconnect ,blank 
-0x4277 015424 jam 0x04 ,mem_connection_options 
-0x4278 015425 branch app_bt_start_reconnect 
-:      015427 mouse4_0_check_reconn_target:
-0x4279 015428 fetch 2 ,mem_mouse_direct_timeout 
-0x427a 015429 store 2 ,mem_mouse_direct_timer 
-0x427b 015430 call mouse_reconn_setting_led_gpio 
-0x427c 015431 call app_lpm_mult_disable 
-0x427d 015432 branch check_51cmd_adv 
-:      015434 mouse_reconn_setting_led_gpio:
-0x427e 015435 setarg led_reconnect_blink 
-0x427f 015436 store 2 ,mem_mouse_on_time 
-0x4280 015437 store 2 ,mem_mouse_off_time 
-0x4281 015438 branch mouse_setting_led_gpio_comman 
-:      015440 mouse_discover_setting_led_gpio:
-0x4282 015441 setarg led_discovery_blink 
-0x4283 015442 store 2 ,mem_mouse_on_time 
-0x4284 015443 store 2 ,mem_mouse_off_time 
-:      015444 mouse_setting_led_gpio_comman:
-0x4285 015445 fetch 1 ,mem_device_flag 
-0x4286 015446 beq mode_bt_device1 ,mouse_device_led1 
-0x4287 015447 beq mode_bt_device2 ,mouse_device_led2 
-0x4288 015448 beq mode_bt_device3 ,mouse_device_led3 
-0x4289 015449 rtn 
-:      015450 mouse_device_led1:
-0x428a 015451 fetch 1 ,mem_config_device1_led_gpio 
-0x428b 015452 branch mouse_led_blink 
-:      015453 mouse_device_led2:
-0x428c 015454 fetch 1 ,mem_config_device2_led_gpio 
-0x428d 015455 branch mouse_led_blink 
-:      015456 mouse_device_led3:
-0x428e 015457 fetch 1 ,mem_config_device3_led_gpio 
-:      015458 mouse_led_blink:
-0x428f 015459 store 1 ,mem_temp 
-0x4290 015460 call mouse_devce_led_off 
-0x4291 015461 fetch 1 ,mem_temp 
-0x4292 015462 store 1 ,mem_mouse_struct_led_gpio 
-0x4293 015463 arg 0 ,rega 
-0x4294 015464 jam ui_led_state_blink_start ,mem_mouse_led_type 
-0x4295 015465 branch ui_led_blink_start_global 
-:      015467 mouse_led_off:
-0x4296 015468 arg 0 ,rega 
-0x4297 015469 branch ui_led_off_global 
-:      015470 mouse_led_on:
-0x4298 015471 arg 0 ,rega 
-0x4299 015472 branch ui_led_on_global 
-:      015474 mouse4_0_bb_event_discovery_btn:
-0x429a 015475 branch mouse_le_clean_connect_flag 
-:      015477 mouse_bt_hid_handshake:
-0x429b 015478 jam app_handshake_done ,mem_app_handshake_flag 
-0x429c 015479 call app_lpm_mult_enable 
-0x429d 015480 call app_bt_store_reconn_info 
-0x429e 015481 setarg 0 
-0x429f 015482 store 2 ,mem_discovery_timeout_timer_count 
-0x42a0 015483 store 1 ,mem_hid_handshake_timer_count 
-0x42a1 015484 branch app_bt_enter_sniff 
-:      015486 mouse_check_reconn_target:
-0x42a2 015487 call mouse_cheak_select_device_by_switch 
-0x42a3 015488 fetch 1 ,mem_device_flag 
-0x42a4 015489 fetcht 1 ,mem_24g_device_number 
-0x42a5 015490 isub temp ,null 
-0x42a6 015491 branch mouse_connect_24g_mode ,zero 
-0x42a7 015492 fetch 1 ,mem_xrecord_mode 
-0x42a8 015493 beq rec_3_mode ,mouse3_0_check_reconn_target 
-0x42a9 015494 beq rec_4_mode ,mouse4_0_check_reconn_target 
-0x42aa 015495 branch mouse_start_discovery 
-:      015496 mouse_connect_24g_mode:
-0x42ab 015497 call mouse_start_24g_mode 
-0x42ac 015498 rtnmark1 mark_24g 
-0x42ad 015499 fetch 1 ,mem_reconn_times 
-0x42ae 015500 nbranch mouse_polling_device ,blank 
-0x42af 015501 rtn 
-:      015503 mouse_start_discovery:
-0x42b0 015504 bpatch patch1d_3 ,mem_patch1d 
-0x42b1 015505 fetch 2 ,mem_ui_state_map 
-0x42b2 015506 bbit1 ui_state_ble_adv ,mouse_start_discovery_norandom 
-0x42b3 015507 fetch mouse_flag_len ,mem_mouse_flag 
-0x42b4 015508 bbit0 mouse_enable_ble_random_addre ,mouse_start_discovery_norandom 
-0x42b5 015509 random pdata 
-0x42b6 015510 store 1 ,mem_le_lap + 1 
-:      015511 mouse_start_discovery_norandom:
-0x42b7 015512 call app_lpm_mult_disable 
-0x42b8 015513 fetch 2 ,mem_discovery_timeout 
-0x42b9 015514 store 2 ,mem_mouse_discovery_timer 
-0x42ba 015515 jam 6 ,mem_connection_options 
-0x42bb 015516 setarg 0 
-0x42bc 015517 store 2 ,mem_mouse_no_data_timer 
-0x42bd 015518 store 2 ,mem_mouse_direct_timer 
-0x42be 015519 arg mouse_store_eeprom_flag ,queue 
-0x42bf 015520 call mouse_enable_function_flag 
-0x42c0 015521 call mouse_bt_discovery_button_down_disable 
-0x42c1 015522 fetch 1 ,mem_device_option 
-0x42c2 015523 isolate1 mode_4_mouse ,pdata 
-0x42c3 015524 call check_51cmd_adv ,true 
-0x42c4 015525 fetch 1 ,mem_device_option 
-0x42c5 015526 isolate1 mode_3_mouse ,pdata 
-0x42c6 015527 call check_51cmd_start_discovery ,true 
-0x42c7 015528 fetch mouse_flag_len ,mem_mouse_flag 
-0x42c8 015529 bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_start_blink 
-0x42c9 015530 branch mouse_discover_setting_led_gpio 
-:      015532 mouse_stop_discovery:
-0x42ca 015533 bpatch patch1d_4 ,mem_patch1d 
-0x42cb 015534 fetch 1 ,mem_device_option 
-0x42cc 015535 isolate1 mode_4_mouse ,pdata 
-0x42cd 015536 call mouse_stop_le_adv ,true 
-0x42ce 015537 fetch 1 ,mem_device_option 
-0x42cf 015538 isolate1 mode_3_mouse ,pdata 
-0x42d0 015539 call mouse_stop_bt3_discovery ,true 
-0x42d1 015540 fetch mouse_flag_len ,mem_mouse_flag 
-0x42d2 015541 bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_led_blink_stop 
-0x42d3 015542 branch mouse_devce_led_off 
-:      015543 mouse_stop_le_adv:
-0x42d4 015544 setarg 0 
-0x42d5 015545 store 2 ,mem_mouse_direct_timer 
-0x42d6 015546 branch check_51cmd_stop_adv 
-:      015547 mouse_stop_bt3_discovery:
-0x42d7 015548 setarg 0 
-0x42d8 015549 store 2 ,mem_mouse_discovery_timer 
-0x42d9 015550 branch check_51cmd_stop_discovery 
-:      015556 mouse_store_remote_bdaddr:
-0x42da 015557 fetch mouse_flag_len ,mem_mouse_flag 
-0x42db 015558 rtnbit0 mouse_store_eeprom_flag 
-0x42dc 015559 arg mouse_store_eeprom_flag ,queue 
-0x42dd 015560 call mouse_disable_function_flag 
-0x42de 015561 call mouse_check_device_addr 
-:      015562 mouse_unplug_clean_bdaddr:
-0x42df 015563 call mouse_before_store_reconn_info 
-0x42e0 015564 fetch mouse_flag_len ,mem_mouse_flag 
-0x42e1 015565 bbit1 mouse_enable_flash ,mouse_store_flash_device_info 
-0x42e2 015566 bbit1 mouse_enable_eeprom ,mouse_store_eeprom_device_info 
-0x42e3 015567 rtn 
-:      015568 mouse_store_eeprom_device_info:
-0x42e4 015569 arg 88 ,temp 
-0x42e5 015570 arg mem_device_flag ,rega 
-0x42e6 015571 arg mouse_info_eeprom_offect ,regb 
-0x42e7 015572 branch iicd_write_protect_eep_data 
-:      015574 mouse_check_device_addr:
-0x42e8 015575 fetch 1 ,mem_record_bt_mode 
-0x42e9 015576 beq rec_4_mode ,mouse_check_le_device_addr 
-0x42ea 015577 beq rec_3_mode ,mouse_check_bt_device_addr 
-0x42eb 015578 rtn 
-:      015579 mouse_check_le_device_addr:
-0x42ec 015580 store 1 ,mem_device_addr_temp 
-0x42ed 015581 fetch 6 ,mem_le_plap 
-0x42ee 015582 branch mouse_check_bt_device_addr_common 
-:      015583 mouse_check_bt_device_addr:
-0x42ef 015584 store 1 ,mem_device_addr_temp 
-0x42f0 015585 fetch 6 ,mem_plap 
-:      015586 mouse_check_bt_device_addr_common:
-0x42f1 015587 store 6 ,mem_device_addr_temp + 1 
-0x42f2 015588 fetch 7 ,mem_device_addr_temp 
-0x42f3 015589 arg mem_device1_type ,contr 
-0x42f4 015590 arg 3 ,loopcnt 
-:      015591 mouse_check_device_addr_end:
-0x42f5 015592 ifetcht 7 ,contr 
-0x42f6 015593 isub temp ,null 
-0x42f7 015594 branch mouse_clean_addr ,zero 
-0x42f8 015595 increase 22 ,contr 
-0x42f9 015596 loop mouse_check_device_addr_end 
-0x42fa 015597 rtn 
-:      015598 mouse_before_store_reconn_info:
-0x42fb 015599 arg mem_device1_type ,rega 
-0x42fc 015600 fetch 1 ,mem_device_flag 
-0x42fd 015601 increase -1 ,pdata 
-0x42fe 015602 mul32 pdata ,29 ,pdata 
-0x42ff 015603 iadd rega ,rega 
-0x4300 015604 fetch 1 ,mem_record_bt_mode 
-0x4301 015605 istore 1 ,rega 
-0x4302 015606 beq rec_4_mode ,mouse_store_le_device 
-0x4303 015607 beq rec_3_mode ,mouse_store_bt_device 
-0x4304 015608 rtn 
-:      015610 mouse_store_le_device:
-0x4305 015611 fetch 6 ,mem_le_plap 
-0x4306 015612 istore 6 ,contw 
-0x4307 015613 arg mem_le_ltk ,contr 
-0x4308 015614 call memcpy16 
-0x4309 015615 fetch 6 ,mem_le_lap 
-0x430a 015616 istore 6 ,contw 
-0x430b 015617 rtn 
-:      015618 mouse_store_bt_device:
-0x430c 015619 fetch 6 ,mem_plap 
-0x430d 015620 istore 6 ,contw 
-0x430e 015621 arg mem_link_key ,contr 
-0x430f 015622 branch memcpy16 
-:      015624 mouse_clean_addr:
-0x4310 015625 increase -6 ,contr 
-0x4311 015626 copy contr ,contw 
-0x4312 015627 fetcht 6 ,mem_device_addr_temp + 1 
-0x4313 015628 increase 3 ,temp 
-0x4314 015629 istoret 6 ,contw 
-0x4315 015630 rtn 
-:      015634 mouse_eeprom_load_recon_info:
-0x4316 015635 arg 88 ,temp 
-0x4317 015636 arg mem_device_flag ,rega 
-0x4318 015637 arg mouse_info_eeprom_offect ,regb 
-0x4319 015638 call iicd_read_eep_data 
-:      015639 mouse_select_reconn_device:
-0x431a 015640 arg mem_device1_type ,rega 
-0x431b 015641 fetch 1 ,mem_device_flag 
-0x431c 015642 fetcht 1 ,mem_24g_device_number 
-0x431d 015643 isub temp ,null 
-0x431e 015644 rtn zero 
-0x431f 015645 increase -1 ,pdata 
-0x4320 015646 mul32 pdata ,29 ,pdata 
-0x4321 015647 iadd rega ,rega 
-0x4322 015648 ifetch 1 ,rega 
-0x4323 015649 store 1 ,mem_xrecord_mode 
-0x4324 015650 beq rec_3_mode ,mouse_load_bt_device 
-0x4325 015651 beq rec_4_mode ,mouse_load_le_device 
-0x4326 015652 rtn 
-:      015654 mouse_load_bt_device:
-0x4327 015655 ifetch 6 ,contr 
-:      015656 mouse_load_bt_device_end:
-0x4328 015657 store 6 ,mem_hci_plap 
-0x4329 015658 arg mem_link_key ,contw 
-0x432a 015659 call memcpy16 
-0x432b 015660 branch check_link_key_load 
-:      015662 mouse_load_le_device:
-0x432c 015663 ifetch 6 ,contr 
-:      015664 mouse_load_le_device_end:
-0x432d 015665 store 6 ,mem_hci_plap 
-0x432e 015666 arg mem_le_ltk ,contw 
-0x432f 015667 call memcpy16 
-0x4330 015668 ifetch 6 ,contr 
-0x4331 015669 store 6 ,mem_le_lap 
-0x4332 015670 rtn 
-:      015673 mouse_select_device:
-0x4333 015674 fetch 1 ,mem_config_function_enable 
-0x4334 015675 bbit1 enable_select_device_by_gpio_button ,mouse_select_device_by_button 
-0x4335 015676 bbit1 enable_select_device_by_switch ,mouse_select_device_by_switch 
-0x4336 015677 branch mouse_select_device_by_combination_key 
-:      015679 mouse_select_device_by_combination_key:
-0x4337 015680 call mouse_check_key_gpio 
-0x4338 015681 beq mouse_rm_button ,mouse_select_device_commbination_key_down 
-:      015682 mouse_select_device_commbination_key_up:
-0x4339 015683 jam 30 ,mem_combination_select_device_count 
-0x433a 015684 fetch 1 ,mem_select_device_button_statue 
-0x433b 015685 rtneq dpi_button_state_up 
-0x433c 015686 jam dpi_button_state_up ,mem_select_device_button_statue 
-0x433d 015687 rtn 
-:      015689 mouse_select_device_commbination_key_down:
-0x433e 015690 call mouse_combination_select_device_timer 
-0x433f 015691 fetch 1 ,mem_select_device_button_statue 
-0x4340 015692 rtneq dpi_button_state_down 
-0x4341 015693 jam dpi_button_state_down ,mem_select_device_button_statue 
-0x4342 015694 branch mouse_select_device_enable 
-:      015696 mouse_combination_select_device_timer:
-0x4343 015697 fetch 1 ,mem_combination_select_device_count 
-0x4344 015698 rtn blank 
-0x4345 015699 pincrease -1 
-0x4346 015700 store 1 ,mem_combination_select_device_count 
-0x4347 015701 nrtn blank 
-0x4348 015702 branch mouse_ready_reconnection_by_button 
-:      015704 mouse_select_device_by_button:
-0x4349 015705 fetch 1 ,mem_config_select_device_button_gpio 
-0x434a 015706 rtneq gpio_disable 
-0x434b 015707 fetcht 1 ,mem_config_select_device_button_gpio 
-0x434c 015708 call gpio_get_bit 
-0x434d 015709 branch mouse_select_device_button_down ,true 
-:      015710 mouse_select_device_button_up:
-0x434e 015711 fetch 1 ,mem_select_device_button_statue 
-0x434f 015712 rtneq dpi_button_state_up 
-0x4350 015713 jam dpi_button_state_up ,mem_select_device_button_statue 
-0x4351 015714 fetch mouse_flag_len ,mem_mouse_flag 
-0x4352 015715 rtnbit1 mouse_long_bt_button_flag 
-0x4353 015716 branch mouse_ready_reconnection_by_button 
-:      015718 mouse_select_device_button_down:
-0x4354 015719 fetch 1 ,mem_select_device_button_statue 
-0x4355 015720 rtneq dpi_button_state_down 
-0x4356 015721 jam dpi_button_state_down ,mem_select_device_button_statue 
-0x4357 015722 arg mouse_long_bt_button_flag ,queue 
-0x4358 015723 branch mouse_disable_function_flag 
-:      015727 mouse_select_device_by_switch:
-0x4359 015728 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
-0x435a 015729 rtnbit0 enable_select_device_by_switch 
-0x435b 015730 fetch 1 ,mem_device_flag 
-0x435c 015731 beq mode_bt_device1 ,mouse_select1_device 
-0x435d 015732 beq mode_24g_device ,mouse_select2_device 
-0x435e 015733 rtn 
-:      015734 mouse_cheak_select_device_by_switch:
-0x435f 015735 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
-0x4360 015736 rtnbit0 enable_select_device_by_switch 
-0x4361 015737 fetcht 1 ,mem_config_select_device_button_gpio 
-0x4362 015738 call gpio_get_bit 
-0x4363 015739 branch mouse_cheak_select_24gdevice ,true 
-:      015740 mouse_select_btdevice:
-0x4364 015741 jam mode_bt_device1 ,mem_device_flag 
-0x4365 015742 rtn 
-:      015743 mouse_cheak_select_24gdevice:
-0x4366 015744 fetch 1 ,mem_24g_device_number 
-0x4367 015745 store 1 ,mem_device_flag 
-0x4368 015746 rtn 
-:      015747 mouse_select1_device:
-0x4369 015748 fetcht 1 ,mem_config_select_device_button_gpio 
-0x436a 015749 nbranch mouse_ready_reconnection_by_button ,true 
-0x436b 015750 rtn 
-:      015751 mouse_select2_device:
-0x436c 015752 fetcht 1 ,mem_config_select_device_button_gpio 
-0x436d 015753 call gpio_get_bit 
-0x436e 015754 branch mouse_select_device_button_down ,true 
-0x436f 015755 rtn 
-:      015760 mouse_ready_reconnection_by_button:
-0x4370 015761 fetcht 1 ,mem_device_flag 
-0x4371 015762 increase 1 ,temp 
-0x4372 015763 fetch 1 ,mem_device_number 
-0x4373 015764 isub temp ,null 
-0x4374 015765 ncall mouse_select_device_count_clean ,positive 
-0x4375 015766 storet 1 ,mem_device_flag 
-0x4376 015767 jam 0 ,mem_link_key_exists 
-0x4377 015768 call mouse_store_device_number2eeprom 
-0x4378 015769 call mouse_select_device_enable 
-0x4379 015771 branch mouse_set_reconnection 
-:      015773 mouse_store_device_number2eeprom:
-0x437a 015774 arg 1 ,temp 
-0x437b 015775 arg mem_device_flag ,rega 
-0x437c 015776 arg 0 ,regb 
-0x437d 015777 branch iicd_write_eep_data 
-:      015779 mouse_set_reconnection:
-0x437e 015780 call mouse_stop_bluetooth_mode 
-0x437f 015781 call mouse_select_device_disable 
-0x4380 015782 branch mouse_soft_reset 
-:      015783 mouse_stop_bluetooth_mode:
-0x4381 015784 fetch 2 ,mem_ui_state_map 
-0x4382 015785 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
-0x4383 015786 bbit1 ui_state_ble_connected ,app_ble_disconnect 
-0x4384 015787 bbit1 ui_state_bt_connected ,app_bt_disconnect 
-0x4385 015788 branch mouse_stop_discovery 
-:      015790 mouse_disconnect:
-0x4386 015791 bpatch patch1d_5 ,mem_patch1d 
-0x4387 015792 setarg 0 
-0x4388 015793 store 2 ,mem_mouse_no_data_timer 
-0x4389 015794 fetch 2 ,mem_ui_state_map 
-0x438a 015795 bbit1 ui_state_ble_connected ,app_ble_disconnect 
-0x438b 015796 fetch 2 ,mem_ui_state_map 
-0x438c 015797 bbit1 ui_state_bt_connected ,app_bt_disconnect 
-0x438d 015798 rtn 
-:      015800 mouse_irtual_cable_unplug:
-0x438e 015801 setarg 0x01 
-0x438f 015802 store 6 ,mem_plap 
-0x4390 015803 jam rec_3_mode ,mem_record_bt_mode 
-0x4391 015804 branch mouse_unplug_clean_bdaddr 
-:      015807 mouse_cancel_reconnect:
-0x4392 015808 call mouse_bt_cannel_reconn_enable 
-0x4393 015809 branch check_51cmd_bb_reconn_cancel 
-:      015811 mouse_bt_discovery_by_button:
-0x4394 015812 fetch 1 ,mem_config_bt_button_gpio 
-0x4395 015813 rtneq gpio_disable 
-0x4396 015814 fetcht 1 ,mem_config_bt_button_gpio 
-0x4397 015815 call gpio_get_bit 
-0x4398 015816 branch mouse_bt_discovery_button_down ,true 
-:      015817 mouse_bt_discovery_button_up:
-0x4399 015818 fetch 1 ,mem_ui_button_timeout 
-0x439a 015819 store 1 ,mem_combination_ui_button_count 
-0x439b 015820 fetch 1 ,mem_bt_discovey_button_statue 
-0x439c 015821 rtneq dpi_button_state_up 
-0x439d 015822 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
-0x439e 015823 branch mouse_bt_discovery_button_down_disable 
-:      015824 mouse_bt_discovery_button_down:
-0x439f 015825 call mouse_bt_discovry_timer 
-0x43a0 015826 fetch 1 ,mem_bt_discovey_button_statue 
-0x43a1 015827 rtneq dpi_button_state_down 
-0x43a2 015828 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
-0x43a3 015829 call check_51cmd_bb_reconn_cancel 
-0x43a4 015830 branch mouse_bt_discovery_button_down_enable 
-:      015833 mouse_bt_discovery_cheak:
-0x43a5 015834 fetch 1 ,mem_config_function_enable 
-0x43a6 015835 bbit1 enable_bt_button ,mouse_bt_discovery_by_button 
-:      015836 mouse_bt_discovery_commbination_key:
-0x43a7 015837 call mouse_check_key_gpio 
-0x43a8 015838 beq mouse_lmr_button ,mouse_bt_discovery_commbination_key_down 
-:      015839 mouse_bt_discovery_commbination_key_up:
-0x43a9 015840 fetch 1 ,mem_ui_button_timeout 
-0x43aa 015841 store 1 ,mem_combination_ui_button_count 
-0x43ab 015842 fetch 1 ,mem_bt_discovey_button_statue 
-0x43ac 015843 rtneq dpi_button_state_up 
-0x43ad 015844 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
-0x43ae 015845 branch mouse_bt_discovery_button_down_disable 
-:      015848 mouse_bt_discovery_commbination_key_down:
-0x43af 015849 call mouse_bt_discovry_timer 
-0x43b0 015850 fetch 1 ,mem_bt_discovey_button_statue 
-0x43b1 015851 rtneq dpi_button_state_down 
-0x43b2 015852 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
-0x43b3 015853 call check_51cmd_bb_reconn_cancel 
-0x43b4 015854 branch mouse_bt_discovery_button_down_enable 
-:      015856 mouse_bt_discovry_timer:
-0x43b5 015857 arg mem_combination_ui_button_count ,regc 
-0x43b6 015858 arg mouse_long_button_bt_discovry ,regb 
-0x43b7 015859 branch timer_single_step 
-:      015861 mouse_long_button_bt_discovry:
-0x43b8 015862 arg mouse_long_bt_button_flag ,queue 
-0x43b9 015863 call mouse_enable_function_flag 
-0x43ba 015864 call app_evt_button_long_pressed 
-0x43bb 015865 branch mouse_bb_event_discovery_btn 
-:      015868 mouse_cpi_enable:
-0x43bc 015869 arg mouse_cpi_flag ,queue 
-0x43bd 015870 branch mouse_enable_function_flag 
-:      015871 mouse_cpi_disable:
-0x43be 015872 arg mouse_cpi_flag ,queue 
-0x43bf 015873 branch mouse_disable_function_flag 
-:      015874 mouse_select_device_enable:
-0x43c0 015875 arg mouse_select_device_flag ,queue 
-0x43c1 015876 branch mouse_enable_function_flag 
-:      015877 mouse_select_device_disable:
-0x43c2 015878 arg mouse_select_device_flag ,queue 
-0x43c3 015879 branch mouse_disable_function_flag 
-:      015880 mouse_bt_cannel_reconn_enable:
-0x43c4 015881 arg mouse_bt_cannel_reconn_flag ,queue 
-0x43c5 015882 branch mouse_enable_function_flag 
-:      015883 mouse_bt_cannel_reconn_disable:
-0x43c6 015884 arg mouse_bt_cannel_reconn_flag ,queue 
-0x43c7 015885 branch mouse_disable_function_flag 
-:      015886 mouse_bt_discovery_button_down_enable:
-0x43c8 015887 arg mouse_bt_discovery_button_down_flag ,queue 
-0x43c9 015888 branch mouse_enable_function_flag 
-:      015889 mouse_bt_discovery_button_down_disable:
-0x43ca 015890 arg mouse_bt_discovery_button_down_flag ,queue 
-0x43cb 015891 branch mouse_disable_function_flag 
-:      015895 mouse_select_device_count_clean:
-0x43cc 015896 arg 1 ,temp 
-0x43cd 015897 rtn 
-:      015899 mouse_enable_function_flag:
-0x43ce 015900 fetch mouse_flag_len ,mem_mouse_flag 
-0x43cf 015901 qset1 pdata 
-0x43d0 015902 store mouse_flag_len ,mem_mouse_flag 
-0x43d1 015903 rtn 
-:      015905 mouse_disable_function_flag:
-0x43d2 015906 fetch mouse_flag_len ,mem_mouse_flag 
-0x43d3 015907 qset0 pdata 
-0x43d4 015908 store mouse_flag_len ,mem_mouse_flag 
-0x43d5 015909 rtn 
-:      015911 mouse_adc_read:
-0x43d6 015912 fetch mouse_flag_len ,mem_mouse_flag 
-0x43d7 015913 rtnbit0 mouse_enable_adc 
-0x43d8 015914 fetch 1 ,mem_adc_read_timer 
-0x43d9 015915 increase 1 ,pdata 
-0x43da 015916 store 1 ,mem_adc_read_timer 
-0x43db 015917 sub pdata ,10 ,null 
-0x43dc 015918 rtn positive 
-0x43dd 015919 jam 0 ,mem_adc_read_timer 
-0x43de 015920 call adc_set_mode 
-0x43df 015921 call vdd_calculate_by_mode 
-0x43e0 015922 store 2 ,mem_mouse_vdd_now_vol 
-0x43e1 015923 arg mem_mouse_vdd_calculate_set ,rega 
-0x43e2 015924 call adc_bat_percent_lowpower_out 
-0x43e3 015925 fetch 1 ,mem_adc_power_flag 
-0x43e4 015926 bbit1 1 ,mouse_power_down 
-0x43e5 015927 bbit0 0 ,mouse_adc_no_low_voltage 
-0x43e6 015928 branch mouse_adc_low_voltage 
-:      015929 mouse_adc_low_voltage:
-0x43e7 015930 arg mouse_low_voltage_flag ,queue 
-0x43e8 015931 branch mouse_enable_function_flag 
-:      015932 mouse_adc_no_low_voltage:
-0x43e9 015933 arg mouse_low_voltage_flag ,queue 
-0x43ea 015934 branch mouse_disable_function_flag 
-:      015936 mouse_low_voltage_led_timer:
-0x43eb 015937 fetch mouse_flag_len ,mem_mouse_flag 
-0x43ec 015938 rtnbit0 mouse_low_voltage_flag 
-0x43ed 015939 fetch 1 ,mem_config_low_voltage_alarm_gpio 
-0x43ee 015940 store 1 ,mem_mouse_struct_led_gpio 
-0x43ef 015941 fetch 1 ,mem_adc_low_volatage_led_timer_count 
-0x43f0 015942 pincrease 1 
-0x43f1 015943 store 1 ,mem_adc_low_volatage_led_timer_count 
-0x43f2 015944 sub pdata ,20 ,null 
-0x43f3 015945 ncall mouse_adc_low_volatage_led_timer_count_clean ,positive 
-0x43f4 015946 beq 2 ,mouse_low_voltage_led_on 
-0x43f5 015947 beq 4 ,mouse_low_voltage_led_off 
-0x43f6 015948 beq 6 ,mouse_low_voltage_led_on 
-0x43f7 015949 beq 8 ,mouse_low_voltage_led_off 
-0x43f8 015950 rtn 
-:      015951 mouse_adc_low_volatage_led_timer_count_clean:
-0x43f9 015952 jam 1 ,mem_adc_low_volatage_led_timer_count 
-0x43fa 015953 branch mouse_low_voltage_led_off 
-:      015954 mouse_low_voltage_led_on:
-0x43fb 015955 arg 0 ,rega 
-0x43fc 015956 jam ui_led_state_lighting ,mem_mouse_led_type 
-0x43fd 015957 branch ui_led_on_global 
-:      015958 mouse_low_voltage_led_off:
-0x43fe 015959 arg 0 ,rega 
-0x43ff 015960 jam ui_led_state_lighting ,mem_mouse_led_type 
-0x4400 015961 branch ui_led_off_global 
-:      015963 mouse_g24_package_data:
-0x4401 015964 call mouse_motion 
-0x4402 015965 nrtn user 
-0x4403 015966 arg 7 ,rega 
-0x4404 015967 arg mem_mouse_key ,regb 
-0x4405 015968 rtn 
-:      015970 mouse_g24_enter_lpm:
-0x4406 015971 fetch 1 ,mem_mouse_24g_enter_lpm_enable 
-0x4407 015972 rtn blank 
-0x4408 015974 fetcht 1 ,mem_dpi_button_gpio 
-0x4409 015975 call gpio_get_bit 
-0x440a 015976 call mouse_24g_dpi_delay_init ,true 
-0x440b 015977 fetch 1 ,mem_24g_enter_lpm_timer 
-0x440c 015978 nrtn blank 
-0x440d 015979 call mouse_check_key_gpio 
-0x440e 015980 nrtn blank 
-0x440f 015981 branch g24_lpm_long_sleep 
-:      015983 mouse_24g_dpi_delay_init:
-0x4410 015984 fetch 1 ,mem_dpi_button_gpio 
-0x4411 015985 rtneq ui_button_gpio_disable 
-0x4412 015986 jam 10 ,mem_24g_enter_lpm_timer 
-0x4413 015987 rtn 
-:      015990 mouse_load_flash_info_cheak:
-0x4414 015991 call mouse_load_flash_flag 
-0x4415 015992 fetch 2 ,mem_store_flag 
-0x4416 015993 arg eeprom_init_flag ,temp 
-0x4417 015994 isub temp ,null 
-0x4418 015995 branch mouse_load_flash_device_info ,zero 
-0x4419 015996 storet 2 ,mem_store_flag 
-0x441a 015997 call mouse_ble_init_address 
-0x441b 015998 branch mouse_store_flash_device_info 
-:      015999 mouse_ble_init_address:
-0x441c 016000 fetch 6 ,mem_le_lap 
-0x441d 016001 store 6 ,mem_device1_locall_addr 
-0x441e 016002 add pdata ,0x0100 ,pdata 
-0x441f 016003 store 6 ,mem_device2_locall_addr 
-0x4420 016004 add pdata ,0x0100 ,pdata 
-0x4421 016005 store 6 ,mem_device3_locall_addr 
-0x4422 016006 rtn 
-:      016009 mouse_load_flash_flag:
-0x4423 016010 setarg mem_store_flag 
-0x4424 016011 arg mem_mouse_information_start ,temp 
-0x4425 016012 isub temp ,temp 
-0x4426 016013 fetch 3 ,mem_flash_base 
-0x4427 016014 iadd temp ,pdata 
-0x4428 016015 arg 2 ,temp 
-0x4429 016016 arg mem_store_flag ,rega 
-0x442a 016017 branch spid_read_flash 
-:      016020 mouse_load_flash_device_info:
-0x442b 016021 setarg mem_mouse_information_end 
-0x442c 016022 arg mem_mouse_information_start ,temp 
-0x442d 016023 isub temp ,temp 
-0x442e 016024 fetch 3 ,mem_flash_base 
-0x442f 016025 arg mem_mouse_information_start ,rega 
-0x4430 016026 call spid_read_flash 
-0x4431 016027 call mouse_select_reconn_device 
-0x4432 016028 fetch 4 ,mem_mouse_24g_addr 
-0x4433 016029 call g24_head_ptr2regc 
-0x4434 016030 branch g24_store_mem_addr 
-:      016032 mouse_store_flash_device_info:
-0x4435 016033 setarg mem_mouse_information_end 
-0x4436 016034 arg mem_mouse_information_start ,temp 
-0x4437 016035 isub temp ,temp 
-0x4438 016036 arg mem_mouse_information_start ,rega 
-0x4439 016037 fetch 3 ,mem_flash_base 
-0x443a 016038 branch flash_write 
-:      016040 mouse_store_eerpom_dpi:
-0x443b 016041 arg 1 ,temp 
-0x443c 016042 arg mem_mouse_dpi ,rega 
-0x443d 016043 arg mouse_dpi_eeprom_offect ,regb 
-0x443e 016044 branch iicd_write_protect_eep_data 
-:      016046 mouse_load_eeprom_dpi:
-0x443f 016047 arg 1 ,temp 
-0x4440 016048 arg mem_mouse_dpi ,rega 
-0x4441 016049 arg mouse_dpi_eeprom_offect ,regb 
-0x4442 016050 branch iicd_read_eep_data 
-:      016052 mouse_statue_cheak_timer:
-0x4443 016053 rtnmark1 mark_24g 
-0x4444 016054 fetch mouse_flag_len ,mem_mouse_flag 
-0x4445 016055 rtnbit0 mouse_enable_statue_up 
-0x4446 016056 fetch 1 ,mem_mouse_1step_up_count 
-0x4447 016057 pincrease 1 
-0x4448 016058 and pdata ,0x07 ,pdata 
-0x4449 016059 store 1 ,mem_mouse_1step_up_count 
-0x444a 016060 rtnne 0x07 
-0x444b 016061 fetch 2 ,mem_ui_state_map 
-0x444c 016062 bbit1 ui_state_bt_connected ,mouse_check_statue_up 
-0x444d 016063 bbit1 ui_state_ble_connected ,mouse_check_statue_up 
-0x444e 016064 rtn 
-:      016069 mouse_check_statue_up:
-0x444f 016070 bpatch patch1d_6 ,mem_patch1d 
-0x4450 016071 fetch 1 ,mem_mouse_2step_up_count 
-0x4451 016072 nrtn blank 
-0x4452 016073 fetch mouse_flag_len ,mem_mouse_flag 
-0x4453 016074 rtnbit0 mouse_statue_up_flag 
-0x4454 016075 fetch 1 ,mem_sensor_squal_reg 
-0x4455 016076 call sensor_read 
-0x4456 016077 store 1 ,mem_sensor_iqc 
-0x4457 016078 sub pdata ,0x10 ,null 
-0x4458 016079 branch mouse_statue_up_timer_init ,positive 
-0x4459 016080 jam 0 ,mem_mouse_2step_up_count 
-0x445a 016081 rtn 
-:      016083 mouse_statue_up_timer_init:
-0x445b 016084 jam 30 ,mem_mouse_2step_up_count 
-0x445c 016085 rtn 
-:      016086 mouse_statue_up_timer:
-0x445d 016087 arg mem_mouse_2step_up_count ,regc 
-0x445e 016088 arg mouse_statue_up ,regb 
-0x445f 016089 branch timer_single_step 
-:      016091 mouse_statue_up:
-0x4460 016092 fetch 1 ,mem_sensor_squal_reg 
-0x4461 016093 call twspi_read 
-0x4462 016094 sub pdata ,0x10 ,null 
-0x4463 016095 nrtn positive 
-0x4464 016096 fetch mouse_flag_len ,mem_mouse_flag 
-0x4465 016097 rtnbit0 mouse_statue_up_flag 
-0x4466 016098 arg mouse_statue_up_flag ,queue 
-0x4467 016099 call mouse_disable_function_flag 
-0x4468 016100 jam 0 ,mem_lpm_mult 
-0x4469 016101 jam 30 ,mem_mouse_statue_led_timer 
-0x446a 016102 call mouse_devce_led_off 
-0x446b 016103 fetch mouse_flag_len ,mem_mouse_flag 
-0x446c 016104 bbit1 mouse_enable_statue_up_three_led ,mouse_three_device_statue_up 
-:      016105 mouse_two_device_statue_up:
-0x446d 016106 fetch 1 ,mem_device_flag 
-0x446e 016107 beq mode_bt_device1 ,mouse_device1_led_on 
-0x446f 016108 beq mode_bt_device2 ,mouse_device_blink_led_init 
-0x4470 016109 rtn 
-:      016110 mouse_three_device_statue_up:
-0x4471 016111 fetch 1 ,mem_device_flag 
-0x4472 016112 beq mode_bt_device1 ,mouse_device1_led_on 
-0x4473 016113 beq mode_bt_device2 ,mouse_device2_led_on 
-0x4474 016114 beq mode_bt_device3 ,mouse_device3_led_on 
-0x4475 016115 rtn 
-:      016117 mouse_device_blink_led_init:
-0x4476 016118 fetch 1 ,mem_config_device1_led_gpio 
-0x4477 016119 branch mouse_led_blink 
-:      016123 mouse_statue_led_off:
-0x4478 016124 jam 0x20 ,mem_lpm_mult 
-0x4479 016125 branch mouse_devce_led_off 
-:      016129 mouse_devce1_led_off:
-0x447a 016130 fetch 1 ,mem_config_device1_led_gpio 
-0x447b 016131 rtneq gpio_disable 
-0x447c 016132 store 1 ,mem_mouse_struct_led_gpio 
-0x447d 016133 branch mouse_led_off 
-:      016135 mouse_devce2_led_off:
-0x447e 016136 fetch 1 ,mem_config_device2_led_gpio 
-0x447f 016137 rtneq gpio_disable 
-0x4480 016138 store 1 ,mem_mouse_struct_led_gpio 
-0x4481 016139 branch mouse_led_off 
-:      016141 mouse_devce_led_off:
-0x4482 016142 call mouse_led_off 
-0x4483 016143 call mouse_devce1_led_off 
-0x4484 016144 call mouse_devce2_led_off 
-:      016145 mouse_devce3_led_off:
-0x4485 016146 fetch 1 ,mem_config_device3_led_gpio 
-0x4486 016147 rtneq gpio_disable 
-0x4487 016148 store 1 ,mem_mouse_struct_led_gpio 
-0x4488 016149 branch mouse_led_off 
-:      016151 mouse_device1_led_on:
-0x4489 016152 fetch 1 ,mem_config_device1_led_gpio 
-0x448a 016153 store 1 ,mem_mouse_struct_led_gpio 
-0x448b 016154 branch mouse_led_on 
-:      016155 mouse_device2_led_on:
-0x448c 016156 fetch 1 ,mem_config_device2_led_gpio 
-0x448d 016157 store 1 ,mem_mouse_struct_led_gpio 
-0x448e 016158 branch mouse_led_on 
-:      016159 mouse_device3_led_on:
-0x448f 016160 fetch 1 ,mem_config_device3_led_gpio 
-0x4490 016161 store 1 ,mem_mouse_struct_led_gpio 
-0x4491 016162 branch mouse_led_on 
-:      016166 mouse_polling_device:
-0x4492 016167 bpatch patch1d_7 ,mem_patch1d 
-0x4493 016168 fetch 1 ,mem_reconn_times 
-0x4494 016169 increase -1 ,pdata 
-0x4495 016170 store 1 ,mem_reconn_times 
-0x4496 016171 fetcht 1 ,mem_device_flag 
-0x4497 016172 increase 1 ,temp 
-0x4498 016173 fetch 1 ,mem_device_number 
-0x4499 016174 isub temp ,null 
-0x449a 016175 ncall mouse_select_device_count_clean ,positive 
-0x449b 016176 storet 1 ,mem_device_flag 
-0x449c 016177 jam 0 ,mem_link_key_exists 
-0x449d 016178 call mouse_store_device_number2eeprom 
-0x449e 016179 call mouse_before_store_reconn_info 
-0x449f 016180 branch mouse_check_reconn_target 
-:      016182 mouse_power_down:
-0x44a0 016183 call mouse_devce_led_off 
-0x44a1 016184 setarg 0 
-0x44a2 016185 store 8 ,mem_gpio_wakeup_low 
-0x44a3 016186 branch lpm_hibernate 
-:      016197 remote_car_init:
-0x44a4 016198 rtn wake 
-0x44a5 016199 hfetch 1 ,core_gpio_sel1 
-0x44a6 016200 and_into 0xf0 ,pdata 
-0x44a7 016201 hstore 1 ,core_gpio_sel1 
-0x44a8 016202 call keyscan_key_init 
-0x44a9 016203 setarg remote_car_le_before_hibernate 
-0x44aa 016204 store 2 ,mem_cb_before_hibernate 
-0x44ab 016206 setarg remote_car_process_lpm_before 
-0x44ac 016207 store 2 ,mem_cb_before_lpm 
-0x44ad 016209 setarg remote_car_scale_process_idle 
-0x44ae 016210 store 2 ,mem_cb_idle_process 
-0x44af 016212 setarg remote_car_scale_process_bb_event 
-0x44b0 016213 store 2 ,mem_cb_bb_event_process 
-0x44b1 016215 setarg app_get_lpm_wake_lock 
-0x44b2 016216 store 2 ,mem_cb_check_wakelock 
-0x44b3 016218 call g24_head_ptr2regc 
-0x44b4 016219 setarg remote_car_g24_package_data 
-0x44b5 016220 add regc ,offset_24g_cb_data ,contw 
-0x44b6 016221 istore 2 ,contw 
-0x44b7 016223 setarg remote_car_g24_enter_lpm 
-0x44b8 016224 add regc ,offset_24g_cb_lpm_prepare ,contw 
-0x44b9 016225 istore 2 ,contw 
-0x44ba 016227 setarg remote_car_process_lpm_before 
-0x44bb 016228 add regc ,offset_24g_cb_lpm_before ,contw 
-0x44bc 016229 istore 2 ,contw 
-0x44bd 016231 setarg remote_car_event_timer 
-0x44be 016232 store 2 ,mem_cb_event_timer 
-0x44bf 016234 setarg remote_car_power_off_signal 
-0x44c0 016235 store 2 ,mem_remote_car_power_off_cb 
-0x44c1 016237 setarg remote_car_soft_switch_power_on_signal 
-0x44c2 016238 store 2 ,mem_remote_car_power_standby_cb 
-0x44c3 016240 setarg remote_car_send_key_data 
-0x44c4 016241 store 2 ,mem_cb_remote_car_keyscan 
-0x44c5 016243 bpatch patch1e_0 ,mem_patch1e 
-0x44c6 016244 call remote_car_init_environment 
-0x44c7 016245 call queue_init 
-0x44c8 016246 jam 2 ,mem_lpm_mult 
-0x44c9 016247 fetch 1 ,mem_remote_car_config_soft_switch_enable 
-0x44ca 016248 store 1 ,mem_remote_car_hard_soft_switch 
-0x44cb 016249 beq hard_switch ,remote_car_hard_switch_power_on_signal 
-0x44cc 016250 fetch 1 ,mem_remote_car_config_soft_switch_gpio 
-0x44cd 016251 store 1 ,mem_ui_button_gpio 
-:      016252 remote_car_soft_switch_power_on_init:
-0x44ce 016253 call remote_car_ui_led_init 
-0x44cf 016254 call ui_button_init 
-0x44d0 016255 call ui_button_polling 
-0x44d1 016256 jam power_starting ,mem_remote_car_power_state 
-0x44d2 016257 fetch 2 ,mem_ui_state_map 
-0x44d3 016258 rtnbit1 ui_state_btn_down 
-0x44d4 016259 branch app_enter_hibernate 
-:      016263 remote_car_hard_switch_power_on_signal:
-0x44d5 016264 jam power_standby ,mem_remote_car_power_state 
-:      016265 remote_car_soft_switch_power_on_signal:
-0x44d6 016266 call remote_car_ui_led_init 
-0x44d7 016268 arg 0 ,rega 
-0x44d8 016269 call ui_led_blink_start_global 
-:      016270 remote_car_connect_24g_mode:
-0x44d9 016271 branch g24_auto_pair_start 
-:      016273 remote_car_power_off_signal:
-0x44da 016274 branch remote_car_ui_led_init 
-:      016276 remote_car_ui_led_init:
-0x44db 016277 bpatch patch1e_1 ,mem_patch1e 
-0x44dc 016278 fetch 1 ,mem_remote_car_config_connect_led_gpio 
-0x44dd 016279 bne invalid_pin_num ,remote_car_pairing_led_gpio_set 
-:      016280 remote_car_ui_led_init_1:
-0x44de 016281 fetcht 1 ,mem_remote_car_led_map 
-0x44df 016282 branch gpio_config_output 
-:      016283 remote_car_pairing_led_gpio_set:
-0x44e0 016284 store 1 ,mem_remote_car_led_map 
-0x44e1 016285 branch remote_car_ui_led_init_1 
-:      016288 remote_car_init_environment:
-0x44e2 016289 call g24_set_device_addr 
-0x44e3 016290 fetch 2 ,mem_remote_car_no_data_timeout 
-0x44e4 016291 store 2 ,mem_remote_car_no_data_timer 
-0x44e5 016292 branch remote_car_get_adc_default_data 
-:      016294 remote_car_le_before_hibernate:
-:      016299 remote_car_in_enter_hibernate:
-0x44e6 016300 call gpio_set_before_lpm_common 
-0x44e7 016301 call remote_car_process_lpm_before 
-0x44e8 016302 branch app_enter_hibernate 
-:      016304 remote_car_process_lpm_before:
-0x44e9 016305 branch keyscan_process_lpm_before 
-:      016307 remote_car_g24_enter_lpm:
-0x44ea 016308 fetch 1 ,mem_remote_car_24g_enter_lpm_enable 
-0x44eb 016309 rtn blank 
-0x44ec 016311 branch g24_lpm_long_sleep 
-:      016313 remote_car_process_auto_pair_exit:
-0x44ed 016314 rtn 
-:      016316 remote_car_key_scan_process:
-0x44ee 016317 branch keyscan_key_process 
-:      016319 remote_car_scale_process_idle:
-0x44ef 016320 call remote_car_rocker_process 
-0x44f0 016321 call remote_car_24g_status_process 
-0x44f1 016322 branch remote_car_key_scan_process 
-:      016324 remote_car_scale_process_bb_event:
-0x44f2 016325 copy regc ,pdata 
-0x44f3 016326 beq bt_evt_button_up ,app_event_button_up 
-0x44f4 016327 beq bt_evt_button_long_pressed ,app_button_long_pressed 
-0x44f5 016328 beq bt_evt_24g_pairing_complete ,remote_car_24g_pairing_complete 
-0x44f6 016329 beq bt_evt_24g_attempt_success ,remote_car_24g_attempt_success 
-0x44f7 016330 beq bt_evt_24g_attempt_fail ,remote_car_24g_attempt_fail 
-0x44f8 016331 rtn 
-:      016333 remote_car_24g_attempt_fail:
-0x44f9 016334 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
-0x44fa 016335 rtn 
-:      016337 remote_car_24g_pairing_complete:
-0x44fb 016338 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
-0x44fc 016339 jam work_paired ,mem_remote_car_24g_auto_work_step 
-0x44fd 016340 jam work_paired ,mem_remote_car_24g_pair_success_flag 
-0x44fe 016341 rtn 
-:      016343 remote_car_24g_attempt_success:
-0x44ff 016344 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
-0x4500 016345 jam work_paired ,mem_remote_car_24g_auto_work_step 
-0x4501 016346 jam work_paired ,mem_remote_car_24g_pair_success_flag 
-0x4502 016347 rtn 
-:      016349 remote_car_24g_status_process:
-0x4503 016350 fetch 1 ,mem_remote_car_24g_auto_work_step 
-0x4504 016351 rtneq power_on 
-0x4505 016352 fetch 1 ,mem_remote_car_24g_status 
-0x4506 016353 rtneq work_paired 
-0x4507 016354 jam work_paired ,mem_remote_car_24g_status 
-:      016355 remote_car_scale_process_paired:
-0x4508 016356 arg 0 ,rega 
-0x4509 016357 branch ui_led_off_global 
-:      016358 remote_car_scale_process_shutdown:
-0x450a 016359 arg 0 ,rega 
-0x450b 016360 call ui_led_off_global 
-0x450c 016361 call remote_car_ui_led_init 
-0x450d 016362 branch app_enter_hibernate 
-:      016364 remote_car_event_timer:
-0x450e 016365 call app_power_timer 
-0x450f 016366 branch remote_car_no_data_timer 
-:      016368 remote_car_no_data_timer:
-0x4510 016369 fetch 1 ,mem_remote_car_config_timeout_shutdown_enable 
-0x4511 016370 rtn blank 
-0x4512 016371 arg mem_remote_car_no_data_timer ,regc 
-0x4513 016372 arg remote_car_scale_process_shutdown ,regb 
-0x4514 016373 branch timer_single_step_2b 
-:      016376 remote_car_get_adc_default_data:
-0x4515 016377 call remote_car_rocker_get_x 
-0x4516 016378 storet 2 ,mem_current_vdd_value_default_mid_x 
-0x4517 016379 call remote_car_rocker_get_y 
-0x4518 016380 storet 2 ,mem_current_vdd_value_default_mid_y 
-0x4519 016381 rtn 
-:      016382 remote_car_rocker_data_get:
-:      016383 remote_car_rocker_get_x:
-0x451a 016384 fetch 2 ,mem_current_vdd_value_default_mid_x 
-0x451b 016385 store 2 ,mem_current_vdd_value_default_mid_temp 
-0x451c 016386 call remote_car_get_adc_from_gpio6 
-0x451d 016387 call remote_car_rocker_get_value 
-0x451e 016388 store 1 ,mem_rocker_status 
-:      016389 remote_car_rocker_get_y:
-0x451f 016390 fetch 2 ,mem_current_vdd_value_default_mid_y 
-0x4520 016391 store 2 ,mem_current_vdd_value_default_mid_temp 
-0x4521 016392 call remote_car_get_adc_from_gpio7 
-0x4522 016393 call remote_car_rocker_get_value 
-0x4523 016394 store 1 ,mem_rocker_status + 1 
-0x4524 016395 rtn 
-:      016396 remote_car_rocker_get_value:
-0x4525 016397 fetch 2 ,mem_current_vdd_default_range 
-0x4526 016398 copy pdata ,rega 
-0x4527 016399 fetch 2 ,mem_current_vdd_value_default_mid_temp 
-0x4528 016400 call remote_car_rocker_mid_value_adjust 
-0x4529 016401 fetch 1 ,mem_rocker_work_status 
-0x452a 016402 nbranch remote_car_rocker_translate_key ,blank 
-0x452b 016403 nrtn positive 
-0x452c 016404 fetcht 2 ,mem_current_vdd_value_default_mid_temp 
-0x452d 016405 rtn 
-:      016406 remote_car_rocker_mid_value_adjust:
-0x452e 016407 isub temp ,pdata 
-0x452f 016408 branch remote_car_rocker_mid_adjust_positive ,positive 
-0x4530 016409 sub pdata ,0 ,pdata 
-0x4531 016410 jam 1 ,mem_rocker_negative_flag 
-0x4532 016411 isub rega ,null 
-0x4533 016412 rtn 
-:      016413 remote_car_rocker_mid_adjust_positive:
-0x4534 016414 jam 0 ,mem_rocker_negative_flag 
-0x4535 016415 isub rega ,null 
-0x4536 016416 rtn 
-:      016417 remote_car_rocker_translate_key:
-0x4537 016418 nbranch remote_car_rocker_middle_key ,positive 
-0x4538 016419 fetch 1 ,mem_rocker_negative_flag 
-0x4539 016420 nbranch remote_car_rocker_negative_key ,blank 
-:      016421 remote_car_rocker_positive_key:
-0x453a 016422 setarg rocker_positive_key 
-0x453b 016423 rtn 
-:      016424 remote_car_rocker_negative_key:
-0x453c 016425 setarg rocker_negative_key 
-0x453d 016426 rtn 
-:      016427 remote_car_rocker_middle_key:
-0x453e 016428 setarg rocker_middle_key 
-0x453f 016429 rtn 
-:      016430 remote_car_get_adc_from_gpio6:
-0x4540 016431 jam 0x33 ,mem_adc_channel 
-0x4541 016432 branch adc_set_mode 
-:      016433 remote_car_get_adc_from_gpio7:
-0x4542 016434 jam 0x34 ,mem_adc_channel 
-0x4543 016435 branch adc_set_mode 
-:      016438 remote_car_rocker_process:
-0x4544 016439 fetch 1 ,mem_remote_car_config_check_way 
-0x4545 016440 rtnne car_remote_check_rocker 
-:      016441 remote_car_read_rocker_check_start:
-0x4546 016442 bpatch patch1e_2 ,mem_patch1e 
-0x4547 016443 jam 1 ,mem_rocker_work_status 
-0x4548 016444 call remote_car_rocker_data_get 
-0x4549 016445 fetch 2 ,mem_rocker_status 
-0x454a 016446 fetcht 2 ,mem_rocker_last_status 
-0x454b 016447 isub temp ,null 
-0x454c 016448 rtn zero 
-0x454d 016449 store 2 ,mem_rocker_last_status 
-0x454e 016450 call remote_car_rocker_x_to_key 
-0x454f 016451 branch remote_car_rocker_y_to_key 
-:      016453 remote_car_rocker_x_to_key:
-0x4550 016454 fetch 1 ,mem_rocker_x_status 
-0x4551 016455 branch rocker_to_queue_set_0 ,blank 
-0x4552 016456 increase -1 ,pdata 
-0x4553 016457 branch remote_car_rocker_to_key 
-:      016458 remote_car_rocker_y_to_key:
-0x4554 016459 fetch 1 ,mem_rocker_y_status 
-0x4555 016460 branch rocker_to_queue_set_2 ,blank 
-0x4556 016461 increase 1 ,pdata 
-:      016462 remote_car_rocker_to_key:
-0x4557 016463 copy pdata ,queue 
-0x4558 016464 arg 1 ,rega 
-0x4559 016465 branch remote_car_send_key_data 
-:      016467 rocker_to_queue_set_0:
-0x455a 016468 arg 0 ,queue 
-0x455b 016469 arg 0 ,rega 
-0x455c 016470 branch remote_car_send_key_data 
-:      016471 rocker_to_queue_set_2:
-0x455d 016472 arg 2 ,queue 
-0x455e 016473 arg 0 ,rega 
-0x455f 016474 branch remote_car_send_key_data 
-:      016476 remote_car_send_key_data:
-0x4560 016477 copy rega ,pdata 
-0x4561 016478 store 1 ,mem_remote_key_status 
-0x4562 016479 fetch 1 ,mem_remote_car_24g_auto_work_step 
-0x4563 016480 beq power_on ,g24_auto_pair_start 
-0x4564 016481 fetch 2 ,mem_remote_car_no_data_timeout 
-0x4565 016482 store 2 ,mem_remote_car_no_data_timer 
-0x4566 016483 fetch 1 ,mem_remote_key_status 
-0x4567 016484 branch remote_car_key_is_release ,blank 
-:      016485 remote_car_key_is_press:
-0x4568 016486 bpatch patch1e_3 ,mem_patch1e 
-0x4569 016487 arg 0 ,rega 
-0x456a 016488 call ui_led_on_global 
-:      016489 remote_car_attack_key_press:
-0x456b 016490 copy queue ,pdata 
-0x456c 016491 beq 4 ,remote_car_send_attack_key4_press 
-0x456d 016492 beq 5 ,remote_car_send_attack_key5_press 
-0x456e 016493 beq 6 ,remote_car_send_fire_key6_press 
-:      016496 remote_car_motor_key_press:
-0x456f 016497 call remote_car_device_layout_select 
-0x4570 016498 beq control_f_b_ten ,remote_car_single_motor_key_is_press 
-0x4571 016499 beq control_l_r_ten ,remote_car_double_motor_key_press 
-0x4572 016500 beq control_l_r_lr ,remote_car_single_motor_key_is_press 
-0x4573 016501 rtn 
-:      016503 remote_car_single_motor_key_is_press:
-0x4574 016504 copy queue ,pdata 
-0x4575 016505 beq 0 ,remote_car_send_motor1_key0_press 
-0x4576 016506 beq 1 ,remote_car_send_motor1_key1_press 
-0x4577 016507 beq 2 ,remote_car_send_motor2_key2_press 
-0x4578 016508 beq 3 ,remote_car_send_motor2_key3_press 
-0x4579 016509 rtn 
-:      016511 remote_car_double_motor_key_press:
-0x457a 016512 copy queue ,pdata 
-0x457b 016513 beq 0 ,remote_car_send_double_motor_key0_press 
-0x457c 016514 beq 1 ,remote_car_send_double_motor_key1_press 
-0x457d 016515 beq 2 ,remote_car_send_double_motor_key2_press 
-0x457e 016516 beq 3 ,remote_car_send_double_motor_key3_press 
-0x457f 016517 rtn 
-:      016519 remote_car_key_is_release:
-0x4580 016520 bpatch patch1e_4 ,mem_patch1e 
-0x4581 016521 arg 0 ,rega 
-0x4582 016522 call ui_led_off_global 
-:      016523 remote_car_attack_key_release:
-0x4583 016524 copy queue ,pdata 
-0x4584 016525 beq 4 ,remote_car_send_attack_key4_rel 
-0x4585 016526 beq 5 ,remote_car_send_attack_key5_rel 
-:      016529 remote_car_motor_key_release:
-0x4586 016530 call remote_car_device_layout_select 
-0x4587 016531 beq control_f_b_ten ,remote_car_single_motor_key_rel 
-0x4588 016532 beq control_l_r_ten ,remote_car_double_motor_key_rel 
-0x4589 016533 beq control_l_r_lr ,remote_car_single_motor_key_rel 
-0x458a 016534 rtn 
-:      016536 remote_car_device_layout_select:
-0x458b 016537 fetch 1 ,mem_remote_car_config_layout 
-0x458c 016538 fetcht 1 ,mem_remote_car_config_key_map 
-0x458d 016539 ior temp ,pdata 
-0x458e 016540 rtn 
-:      016543 remote_car_send_motor1_key0_press:
-0x458f 016544 jam motor_positive ,mem_remote_car_24g_motor1_payload 
-0x4590 016545 branch remote_car_send_key 
-:      016546 remote_car_send_motor1_key1_press:
-0x4591 016547 jam motor_negative ,mem_remote_car_24g_motor1_payload 
-0x4592 016548 branch remote_car_send_key 
-:      016549 remote_car_send_motor2_key2_press:
-0x4593 016550 jam motor_positive ,mem_remote_car_24g_motor2_payload 
-0x4594 016551 branch remote_car_send_key 
-:      016552 remote_car_send_motor2_key3_press:
-0x4595 016553 jam motor_negative ,mem_remote_car_24g_motor2_payload 
-0x4596 016554 branch remote_car_send_key 
-:      016557 remote_car_send_double_motor_key0_press:
-0x4597 016558 jam motor_positive ,mem_remote_car_24g_motor1_payload 
-0x4598 016559 jam motor_positive ,mem_remote_car_24g_motor2_payload 
-0x4599 016560 branch remote_car_send_key 
-:      016561 remote_car_send_double_motor_key1_press:
-0x459a 016562 jam motor_negative ,mem_remote_car_24g_motor1_payload 
-0x459b 016563 jam motor_negative ,mem_remote_car_24g_motor2_payload 
-0x459c 016564 branch remote_car_send_key 
-:      016565 remote_car_send_double_motor_key2_press:
-0x459d 016566 jam motor_negative ,mem_remote_car_24g_motor1_payload 
-0x459e 016567 jam motor_positive ,mem_remote_car_24g_motor2_payload 
-0x459f 016568 branch remote_car_send_key 
-:      016569 remote_car_send_double_motor_key3_press:
-0x45a0 016570 jam motor_positive ,mem_remote_car_24g_motor1_payload 
-0x45a1 016571 jam motor_negative ,mem_remote_car_24g_motor2_payload 
-0x45a2 016572 branch remote_car_send_key 
-:      016575 remote_car_send_attack_key4_press:
-0x45a3 016576 jam motor_positive ,mem_remote_car_24g_motor3_payload 
-0x45a4 016577 branch remote_car_send_key 
-:      016578 remote_car_send_attack_key5_press:
-0x45a5 016579 jam motor_negative ,mem_remote_car_24g_motor3_payload 
-0x45a6 016580 branch remote_car_send_key 
-:      016582 remote_car_send_fire_key6_press:
-0x45a7 016583 jam 0x01 ,mem_remote_car_24g_fire_send_payload 
-0x45a8 016584 branch remote_car_send_attack 
-:      016586 remote_car_single_motor_key_rel:
-0x45a9 016587 copy queue ,pdata 
-0x45aa 016588 beq 0 ,remote_car_send_motor1_key0_rel 
-0x45ab 016589 beq 1 ,remote_car_send_motor1_key1_rel 
-0x45ac 016590 beq 2 ,remote_car_send_motor2_key2_rel 
-0x45ad 016591 beq 3 ,remote_car_send_motor2_key3_rel 
-0x45ae 016592 rtn 
-:      016594 remote_car_double_motor_key_rel:
-0x45af 016595 copy queue ,pdata 
-0x45b0 016596 beq 0 ,remote_car_send_double_motor_key0_rel 
-0x45b1 016597 beq 1 ,remote_car_send_double_motor_key1_rel 
-0x45b2 016598 beq 2 ,remote_car_send_double_motor_key2_rel 
-0x45b3 016599 beq 3 ,remote_car_send_double_motor_key3_rel 
-0x45b4 016600 rtn 
-:      016602 remote_car_send_motor1_key0_rel:
-:      016603 remote_car_send_motor1_key1_rel:
-0x45b5 016604 jam motor_stop ,mem_remote_car_24g_motor1_payload 
-0x45b6 016605 branch remote_car_send_key 
-:      016606 remote_car_send_motor2_key2_rel:
-:      016607 remote_car_send_motor2_key3_rel:
-0x45b7 016608 jam motor_stop ,mem_remote_car_24g_motor2_payload 
-0x45b8 016609 branch remote_car_send_key 
-:      016611 remote_car_send_double_motor_key0_rel:
-:      016612 remote_car_send_double_motor_key1_rel:
-:      016613 remote_car_send_double_motor_key2_rel:
-:      016614 remote_car_send_double_motor_key3_rel:
-0x45b9 016615 jam motor_stop ,mem_remote_car_24g_motor1_payload 
-0x45ba 016616 jam motor_stop ,mem_remote_car_24g_motor2_payload 
-0x45bb 016617 branch remote_car_send_key 
-:      016619 remote_car_send_attack_key4_rel:
-:      016620 remote_car_send_attack_key5_rel:
-0x45bc 016621 jam motor_stop ,mem_remote_car_24g_motor3_payload 
-0x45bd 016622 branch remote_car_send_key 
-:      016624 remote_car_send_key:
-0x45be 016625 arg mem_remote_car_24g_motor_packet ,rega 
-0x45bf 016626 branch queue_push 
-:      016627 remote_car_send_attack:
-0x45c0 016628 arg mem_remote_car_24g_fire_packet ,rega 
-0x45c1 016629 branch queue_push 
-:      016631 remote_car_g24_package_data:
-0x45c2 016632 fetch 1 ,mem_remote_car_24g_pair_success_flag 
-0x45c3 016633 beq work_paired ,remote_car_g24_send_empty 
-0x45c4 016634 arg mem_remote_car_24g_tx_temp ,rega 
-0x45c5 016635 call queue_pop 
-0x45c6 016636 nbranch remote_car_moto_data ,user 
-:      016637 remote_car_g24_package_data_continue:
-0x45c7 016638 arg mem_remote_car_24g_tx_temp ,contr 
-0x45c8 016639 ifetch 1 ,contr 
-0x45c9 016640 copy pdata ,rega 
-0x45ca 016641 arg mem_remote_car_24g_tx_temp + 1 ,regb 
-0x45cb 016644 rtn 
-:      016646 remote_car_g24_send_empty:
-0x45cc 016647 jam 0 ,mem_remote_car_24g_pair_success_flag 
-0x45cd 016648 enable user 
-0x45ce 016649 arg 1 ,rega 
-0x45cf 016650 arg mem_remote_car_empty_packet ,regb 
-0x45d0 016651 rtn 
-:      016653 remote_car_moto_data:
-0x45d1 016654 fetch 1 ,mem_remote_car_24g_tx_temp + 3 
-0x45d2 016655 beq car_cmd_l_r_motor_control ,remote_car_moto_data_next 
-0x45d3 016656 beq car_cmd_f_b_motor_control ,remote_car_moto_data_next 
-0x45d4 016657 rtn 
-:      016658 remote_car_moto_data_next:
-0x45d5 016659 fetch 1 ,mem_remote_car_24g_tx_temp + 6 
-0x45d6 016660 nbranch remote_car_moto_data_enable_user ,blank 
-0x45d7 016661 fetch 1 ,mem_remote_car_24g_tx_temp + 8 
-0x45d8 016662 nbranch remote_car_moto_data_enable_user ,blank 
-0x45d9 016663 fetch 1 ,mem_remote_car_24g_tx_temp + 10 
-0x45da 016664 nbranch remote_car_moto_data_enable_user ,blank 
-0x45db 016665 rtn 
-:      016666 remote_car_moto_data_enable_user:
-0x45dc 016667 enable user 
-0x45dd 016668 branch remote_car_g24_package_data_continue 
-:      016676 shutter_init:
-0x45de 016677 rtn wake 
-0x45df 016678 hfetch 1 ,core_gpio_sel1 
-0x45e0 016679 and_into 0xfc ,pdata 
-0x45e1 016680 hstore 1 ,core_gpio_sel1 
-0x45e2 016681 setarg shutter_le_before_hibernate 
-0x45e3 016682 store 2 ,mem_cb_before_hibernate 
-0x45e4 016684 setarg shutter_process_lpm_before 
-0x45e5 016685 store 2 ,mem_cb_before_lpm 
-0x45e6 016687 setarg app_enter_hibernate 
-0x45e7 016688 store 2 ,mem_cb_discovry_timeout 
-0x45e8 016690 setarg shutter_process_idle 
-0x45e9 016691 store 2 ,mem_cb_idle_process 
-0x45ea 016693 setarg shutter_process_bb_event 
-0x45eb 016694 store 2 ,mem_cb_bb_event_process 
-0x45ec 016696 setarg shutter_le_scale_lpm_lock 
-0x45ed 016697 store 2 ,mem_cb_check_wakelock 
-0x45ee 016699 setarg ble_shutter_receive_data 
-0x45ef 016700 store 2 ,mem_cb_att_write 
-0x45f0 016702 setarg shutter_le_bb_event_timer 
-0x45f1 016703 store 2 ,mem_cb_event_timer 
-0x45f2 016705 setarg shutter_key_change 
-0x45f3 016706 store 2 ,mem_cb_shutter_keycan 
-0x45f4 016708 setarg shutter_soft_swtich_power_on 
-0x45f5 016709 store 2 ,mem_shutter_soft_switch_poweron_callback_function 
-0x45f6 016710 setarg shutter_soft_swtich_power_off 
-0x45f7 016711 store 2 ,mem_shutter_soft_switch_poweroff_callback_function 
-0x45f8 016713 call le_modified_name 
-0x45f9 016714 call shutter_load_bluetooth_config_by_user_config 
-0x45fa 016715 call shutter_init_bluetooth_config 
-0x45fb 016716 call shutter_init_param 
-0x45fc 016717 call keyscan_key_init 
-0x45fd 016718 call shutter_load_buffer_config_form_datarom 
-0x45fe 016719 call queue_init 
-0x45ff 016720 call ui_led_init_global 
-0x4600 016721 call shutter_load_bluetooth_config 
-0x4601 016722 call shutter_load_bluetooth_config_by_eeprom 
-0x4602 016724 bpatch patch1e_5 ,mem_patch1e 
-0x4603 016725 call classic_shutter_load_reconn_info 
-0x4604 016726 fetch 1 ,mem_shutter_hard_soft_switch_case 
-0x4605 016727 beq hard_switch ,shutter_hart_swtich_power_on 
-0x4606 016728 fetch 1 ,mem_shutter_soft_switch_button_gpio 
-0x4607 016729 store 1 ,mem_ui_button_gpio 
-0x4608 016730 branch ui_soft_swtich_init 
-:      016733 shutter_hart_swtich_power_on:
-0x4609 016734 jam ui_button_gpio_disable ,mem_ui_button_gpio 
-0x460a 016735 jam ss_state_power_on ,mem_shutter_soft_switch_power_state 
-0x460b 016736 branch shutter_start_reconnect 
-:      016740 shutter_le_scale_lpm_lock:
-0x460c 016741 fetch 1 ,mem_shutter_soft_switch_power_state 
-0x460d 016742 beq ss_state_power_off ,app_get_lpm_wake_lock 
-0x460e 016743 call l2cap_malloc_get_full_map 
-0x460f 016744 fetch 1 ,mem_used_map 
-0x4610 016745 nbranch app_get_lpm_wake_lock ,blank 
-0x4611 016746 branch app_put_lpm_wake_lock 
-:      016750 shutter_process_bb_event:
-0x4612 016751 copy regc ,pdata 
-0x4613 016753 beq bt_evt_bb_connected ,classic_shutter_process_baseband_connect 
-0x4614 016754 beq bt_evt_bb_disconnected ,classic_shutter_process_baseband_disconnect 
-0x4615 016755 beq bt_evt_reconn_failed ,classic_shutter_process_reconnect_failed 
-0x4616 016756 beq bt_evt_setup_complete ,classic_shutter_process_setup_complete 
-0x4617 016757 beq bt_evt_hid_connected ,classic_shutter_process_hid_connect 
-0x4618 016758 beq bt_evt_hid_disconnected ,classic_shutter_process_hid_disconnect 
-0x4619 016759 beq bt_evt_hid_handshake ,classic_shutter_process_hid_handshake 
-0x461a 016760 beq bt_evt_reconn_page_timeout ,classic_shutter_process_reconnect_page_timeout 
-0x461b 016761 beq bt_evt_virtual_cable_unplug ,classic_shutter_process_virtual_cable_unplug 
-0x461c 016762 beq bt_evt_remote_unsniff ,classic_shutter_process_remote_unsniff 
-0x461d 016763 beq bt_evt_store_nvram ,classic_shutter_process_store_reconnect_information 
-0x461e 016765 beq bt_evt_le_connected ,ble_shutter_process_baseband_connect 
-0x461f 016766 beq bt_evt_le_disconnected ,ble_shutter_process_baseband_disconnect 
-0x4620 016767 beq bt_evt_le_reconnect_complete ,ble_shutter_process_reconnect_complete 
-0x4621 016768 beq bt_evt_le_parse_conn_papa_update_rsp ,ble_shutter_process_parse_connect_parameter_update_response 
-0x4622 016770 beq bt_evt_button_long_pressed ,shutter_process_soft_swtich_button_long_press 
-0x4623 016771 beq bt_evt_button_down ,shutter_process_soft_swtich_button_down 
-0x4624 016772 beq bt_evt_button_up ,shutter_process_soft_swtich_button_up 
-0x4625 016773 rtn 
-:      016778 classic_shutter_process_baseband_connect:
-0x4626 016779 jam 0 ,mem_classic_shutter_hid_disconn_count 
-0x4627 016780 jam 0 ,mem_classic_shutter_cable_unplug_conut 
-0x4628 016781 rtn 
-:      016784 classic_shutter_process_baseband_disconnect:
-0x4629 016785 call classic_shutter_disconnect_clear_flag 
-0x462a 016786 branch classic_shutter_process_reconnect_failed 
-:      016788 classic_shutter_disconnect_clear_flag:
-0x462b 016789 jam app_handshake_null ,mem_app_handshake_flag 
-0x462c 016790 jam 0 ,mem_hid_handshake_timer_count 
-0x462d 016791 jam 0 ,mem_unsniff2sniff_timer_count 
-0x462e 016792 jam 0 ,mem_classic_shutter_cable_unplug_conut 
-0x462f 016793 jam 0 ,mem_classic_shutter_hid_disconn_count 
-0x4630 016794 branch queue_init 
-:      016797 classic_shutter_process_reconnect_failed:
-0x4631 016798 call app_disconn_reason_clear 
-0x4632 016799 branch shutter_start_bluetooth_discovery 
-:      016802 classic_shutter_process_setup_complete:
-0x4633 016803 call shutter_stop_bluetooth_discovery 
-0x4634 016804 branch app_led_stop_blink 
-:      016807 classic_shutter_process_hid_connect:
-0x4635 016808 setarg hid_handshake_timeout 
-0x4636 016809 store 1 ,mem_hid_handshake_timer_count 
-0x4637 016810 rtn 
-:      016813 classic_shutter_process_hid_disconnect:
-0x4638 016814 jam 0 ,mem_classic_shutter_cable_unplug_conut 
-0x4639 016815 setarg flag_shutter_hid_disconn_timeout 
-0x463a 016816 store 1 ,mem_classic_shutter_hid_disconn_count 
-0x463b 016817 rtn 
-:      016820 classic_shutter_process_hid_handshake:
-0x463c 016821 fetch 1 ,mem_app_handshake_flag 
-0x463d 016822 rtneq app_handshake_done 
-0x463e 016823 jam app_handshake_done ,mem_app_handshake_flag 
-0x463f 016824 call app_lpm_mult_enable 
-0x4640 016825 call app_store_reconn_info 
-0x4641 016826 call shutter_stop_bluetooth_discovery 
-0x4642 016827 call app_led_off 
-0x4643 016828 branch app_bt_enter_sniff 
-:      016831 classic_shutter_process_reconnect_page_timeout:
-0x4644 016832 branch classic_shutter_process_reconnect_failed 
-:      016835 classic_shutter_process_virtual_cable_unplug:
-0x4645 016836 setarg flag_shutter_cable_unplug_timeout 
-0x4646 016837 store 1 ,mem_classic_shutter_cable_unplug_conut 
-0x4647 016838 rtn 
-:      016841 classic_shutter_process_remote_unsniff:
-0x4648 016842 branch app_start_auto_sniff 
-:      016846 classic_shutter_process_store_reconnect_information:
-0x4649 016847 arg nvram_eeprom_offset ,regb 
-0x464a 016848 fetch 1 ,mem_nv_data_number 
-0x464b 016849 mul32 pdata ,34 ,temp 
-0x464c 016850 fetch 2 ,mem_nv_data_ptr 
-0x464d 016851 copy pdata ,rega 
-0x464e 016852 branch iicd_write_eep_data 
-:      016854 classic_shutter_load_reconn_info:
-0x464f 016855 arg nvram_eeprom_offset ,regb 
-0x4650 016856 fetch 1 ,mem_shutter_bluetooth_type 
-0x4651 016857 rtnbit0 classic_shutter 
-0x4652 016858 fetch 1 ,mem_nv_data_number 
-0x4653 016859 rtn blank 
-0x4654 016860 mul32 pdata ,34 ,temp 
-0x4655 016861 fetch 2 ,mem_nv_data_ptr 
-0x4656 016862 copy pdata ,rega 
-0x4657 016863 branch iicd_read_eep_data 
-:      016867 ble_shutter_process_baseband_connect:
-0x4658 016868 call shutter_stop_bluetooth_discovery 
-0x4659 016869 setarg 0 
-0x465a 016870 store 2 ,mem_ble_shutter_reconn_timer 
-0x465b 016871 branch app_led_off 
-:      016874 ble_shutter_process_baseband_disconnect:
-0x465c 016875 call queue_init 
-0x465d 016876 jam 0 ,mem_ble_shutter_enable_notify 
-0x465e 016877 branch shutter_start_reconnect 
-:      016880 ble_shutter_process_reconnect_complete:
-0x465f 016881 call queue_init 
-0x4660 016882 jam 1 ,mem_ble_shutter_enable_notify 
-0x4661 016883 fetch 8 ,mem_ble_shutter_interval_min 
-0x4662 016884 store 8 ,mem_le_interval_min 
-0x4663 016885 call app_lpm_mult_enable 
-0x4664 016886 branch le_l2cap_tx_update_req 
-:      016889 ble_shutter_process_parse_connect_parameter_update_response:
-0x4665 016890 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
-0x4666 016891 rtneq ble_signaling_connect_parameter_update_accepted 
-0x4667 016892 fetch 8 ,mem_ble_shutter_interval_min_new 
-0x4668 016893 rtn blank 
-0x4669 016894 store 8 ,mem_le_interval_min 
-0x466a 016895 branch le_l2cap_tx_update_req 
-:      016899 shutter_process_soft_swtich_button_long_press:
-0x466b 016900 branch ui_soft_switch_botton_long_press 
-:      016902 shutter_process_soft_swtich_button_down:
-0x466c 016903 fetch 1 ,mem_shutter_hard_soft_switch_case 
-0x466d 016904 rtneq hard_switch 
-0x466e 016905 fetch 1 ,mem_shutter_soft_switch_power_state 
-0x466f 016906 rtnne ss_state_power_on 
-0x4670 016907 call shutter_store_currenct_led_state 
-0x4671 016908 branch app_led_on 
-:      016910 shutter_store_currenct_led_state:
-0x4672 016911 jam 1 ,mem_shutter_soft_swtich_botton_down 
-0x4673 016912 arg 11 ,loopcnt 
-0x4674 016913 arg mem_shutter_soft_swtich_led_struct_temp ,contw 
-0x4675 016914 arg mem_shutter_led_struct_app_led ,contr 
-0x4676 016915 branch memcpy 
-:      016917 shutter_process_soft_swtich_button_up:
-0x4677 016918 fetch 1 ,mem_shutter_hard_soft_switch_case 
-0x4678 016919 rtneq hard_switch 
-0x4679 016920 fetch 1 ,mem_shutter_soft_switch_power_state 
-0x467a 016921 beq ss_state_power_on ,shutter_load_currenct_led_state 
-0x467b 016922 branch ui_soft_switch_botton_up 
-:      016924 shutter_load_currenct_led_state:
-0x467c 016925 fetch 1 ,mem_shutter_soft_swtich_botton_down 
-0x467d 016926 rtnne 1 
-0x467e 016927 jam 0 ,mem_shutter_soft_swtich_botton_down 
-0x467f 016928 fetch 2 ,mem_ui_state_map 
-0x4680 016929 bbit1 ui_state_bt_connected ,app_led_off 
-0x4681 016930 bbit1 ui_state_ble_connected ,app_led_off 
-0x4682 016931 arg 11 ,loopcnt 
-0x4683 016932 arg mem_shutter_soft_swtich_led_struct_temp ,contr 
-0x4684 016933 arg mem_shutter_led_struct_app_led ,contw 
-0x4685 016934 branch memcpy 
-:      016939 shutter_le_bb_event_timer:
-0x4686 016941 call shutter_check_sleep_timer 
-0x4687 016944 call shutter_check_power_off_timer 
-0x4688 016947 call classic_shutter_check_unplug_timer 
-0x4689 016948 call classic_shutter_hid_handshake_timer 
-0x468a 016949 call classic_shutter_hid_disconn_timer 
-0x468b 016952 branch ble_shutter_reconn_timer 
-:      016956 shutter_check_sleep_timer:
-0x468c 016957 arg mem_shutter_sleep_timer ,regc 
-0x468d 016958 arg shutter_sleep_timeout ,regb 
-0x468e 016959 branch timer_single_step_2b 
-:      016960 shutter_sleep_timeout:
-0x468f 016961 jam ss_state_power_off ,mem_shutter_soft_switch_power_state 
-0x4690 016962 call app_led_off 
-0x4691 016963 call shutter_disconnect_current_connection 
-0x4692 016964 branch shutter_wait_power_off 
-:      016967 shutter_check_power_off_timer:
-0x4693 016968 arg mem_shutter_power_off_timer ,regc 
-0x4694 016969 arg shutter_check_power_off_timeout ,regb 
-0x4695 016970 branch timer_single_step 
-:      016972 shutter_check_power_off_timeout:
-0x4696 016973 fetch 2 ,mem_ui_state_map 
-0x4697 016974 bbit1 ui_state_ble_connected ,shutter_wait_power_off 
-0x4698 016975 bbit1 ui_state_bt_connected ,shutter_wait_power_off 
-0x4699 016976 fetch 1 ,mem_shutter_led_struct_app_led_type 
-0x469a 016977 beq ui_led_state_blink_start ,shutter_wait_power_off 
-0x469b 016978 beq ui_led_state_blink_lighting ,shutter_wait_power_off 
-0x469c 016979 beq ui_led_state_blink_darking ,shutter_wait_power_off 
-0x469d 016980 branch app_enter_hibernate 
-:      016984 classic_shutter_check_unplug_timer:
-0x469e 016985 arg mem_classic_shutter_cable_unplug_conut ,regc 
-0x469f 016986 arg classic_shutter_unplug_timeout ,regb 
-0x46a0 016987 branch timer_single_step 
-:      016989 classic_shutter_unplug_timeout:
-0x46a1 016990 fetch 1 ,mem_control_tasks 
-0x46a2 016991 set1 l2cap_disconnect_interrupt ,pdata 
-0x46a3 016992 set1 l2cap_disconnect_control ,pdata 
-0x46a4 016993 store 1 ,mem_control_tasks 
-0x46a5 016994 rtn 
-:      016996 classic_shutter_hid_handshake_timer:
-0x46a6 016997 arg mem_hid_handshake_timer_count ,regc 
-0x46a7 016998 arg classic_shutter_process_hid_handshake ,regb 
-0x46a8 016999 branch timer_single_step 
-:      017001 classic_shutter_hid_disconn_timer:
-0x46a9 017002 arg mem_classic_shutter_hid_disconn_count ,regc 
-0x46aa 017003 arg app_bt_disconnect ,regb 
-0x46ab 017004 branch timer_single_step 
-:      017009 ble_shutter_reconn_timer:
-0x46ac 017010 fetch 1 ,mem_shutter_soft_switch_power_state 
-0x46ad 017011 rtnne ss_state_power_on 
-0x46ae 017012 arg mem_ble_shutter_reconn_timer ,regc 
-0x46af 017013 arg shutter_start_bluetooth_discovery ,regb 
-0x46b0 017014 branch timer_single_step_2b 
-:      017017 shutter_process_idle:
-0x46b1 017018 call shutter_send_data_to_master 
-0x46b2 017019 branch keyscan_key_process 
-:      017022 shutter_process_lpm_before:
-0x46b3 017023 branch keyscan_process_lpm_before 
-:      017025 shutter_le_before_hibernate:
-0x46b4 017026 call gpio_set_before_lpm_common 
-0x46b5 017027 branch shutter_process_lpm_before 
-:      017033 shutter_stop_bluetooth_discovery:
-0x46b6 017034 fetch 1 ,mem_shutter_bluetooth_type 
-0x46b7 017035 bbit1 classic_shutter ,classic_shutter_stop_bluetooth_discovery 
-0x46b8 017036 bbit1 ble_shutter ,ble_shutter_stop_bluetooth_discovery 
-0x46b9 017037 rtn 
-:      017039 ble_shutter_stop_bluetooth_discovery:
-0x46ba 017040 fetch 2 ,mem_ble_shutter_connect_timeout 
-0x46bb 017041 store 2 ,mem_shutter_sleep_timeout 
-0x46bc 017042 store 2 ,mem_shutter_sleep_timer 
-0x46bd 017043 branch app_ble_stop_adv 
-:      017045 classic_shutter_stop_bluetooth_discovery:
-0x46be 017046 fetch 2 ,mem_classic_shutter_connect_timeout 
-0x46bf 017047 store 2 ,mem_shutter_sleep_timeout 
-0x46c0 017048 store 2 ,mem_shutter_sleep_timer 
-0x46c1 017049 branch app_bt_stop_discovery 
-:      017051 shutter_start_bluetooth_discovery:
-0x46c2 017052 fetch 1 ,mem_shutter_soft_switch_power_state 
-0x46c3 017053 rtnne ss_state_power_on 
-0x46c4 017054 fetch 1 ,mem_shutter_bluetooth_type 
-0x46c5 017055 bbit1 classic_shutter ,classic_shutter_start_discovery 
-0x46c6 017056 bbit1 ble_shutter ,ble_shutter_start_discovery 
-0x46c7 017057 rtn 
-:      017059 classic_shutter_start_discovery:
-0x46c8 017060 fetch 2 ,mem_classic_shutter_discovery_timeout ,
-0x46c9 017061 store 2 ,mem_shutter_sleep_timeout 
-0x46ca 017062 store 2 ,mem_shutter_sleep_timer 
-0x46cb 017063 branch app_bt_start_discovery_short 
-:      017065 ble_shutter_start_discovery:
-0x46cc 017066 fetch 2 ,mem_ui_state_map 
-0x46cd 017067 rtnbit1 ui_state_ble_connected 
-0x46ce 017068 fetch 2 ,mem_ble_shutter_discovery_timeout 
-0x46cf 017069 store 2 ,mem_shutter_sleep_timeout 
-0x46d0 017070 store 2 ,mem_shutter_sleep_timer 
-0x46d1 017071 fetch 2 ,mem_ble_shutter_discovery_adv_interval 
-0x46d2 017072 call shutter_ble_adv_interval_set 
-0x46d3 017073 call app_led_start_blink 
-0x46d4 017074 fetch 4 ,mem_ble_shutter_discovery_blink_on_time 
-0x46d5 017075 store 4 ,mem_shutter_led_struct_app_led_on_time 
-0x46d6 017076 fetch 2 ,mem_ui_state_map 
-0x46d7 017077 rtnbit1 ui_state_ble_adv 
-0x46d8 017078 branch app_ble_start_adv 
-:      017081 shutter_start_reconnect:
-0x46d9 017082 fetch 1 ,mem_shutter_soft_switch_power_state 
-0x46da 017083 rtnne ss_state_power_on 
-0x46db 017084 fetch 1 ,mem_shutter_bluetooth_type 
-0x46dc 017085 bbit1 classic_shutter ,classic_shutter_start_reconnect 
-0x46dd 017086 bbit1 ble_shutter ,ble_shutter_start_reconnect 
-0x46de 017087 rtn 
-:      017089 classic_shutter_start_reconnect:
-0x46df 017090 call app_check_reconn_target 
-0x46e0 017091 branch shutter_start_bluetooth_discovery ,blank 
-0x46e1 017092 call app_led_on 
-0x46e2 017093 call app_bt_stop_discovery 
-0x46e3 017094 branch app_bt_start_reconnect 
-:      017096 ble_shutter_start_reconnect:
-0x46e4 017097 fetch 2 ,mem_ble_shutter_reconn_timer 
-0x46e5 017098 fetcht 2 ,mem_ble_shutter_reconn_timeout 
-0x46e6 017099 storet 2 ,mem_ble_shutter_reconn_timer 
-0x46e7 017100 nrtn blank 
-0x46e8 017101 fetch 2 ,mem_ble_shutter_reconn_dav_interval 
-0x46e9 017102 call shutter_ble_adv_interval_set 
-0x46ea 017103 call app_led_start_blink 
-0x46eb 017104 fetch 4 ,mem_ble_shutter_reconn_blink_on_time 
-0x46ec 017105 store 4 ,mem_shutter_led_struct_app_led_on_time 
-0x46ed 017106 fetch 2 ,mem_ui_state_map 
-0x46ee 017107 rtnbit1 ui_state_ble_adv 
-0x46ef 017108 branch app_ble_start_adv 
-:      017111 shutter_ble_adv_interval_set:
-0x46f0 017112 store 2 ,mem_lpm_interval 
-0x46f1 017113 increase -4 ,pdata 
-0x46f2 017114 store 2 ,mem_le_adv_interval 
-0x46f3 017115 rtn 
-:      017118 shutter_disconnect_current_connection:
-0x46f4 017119 fetch 2 ,mem_ui_state_map 
-0x46f5 017120 bbit1 ui_state_ble_connected ,app_ble_disconnect 
-0x46f6 017121 bbit1 ui_state_bt_connected ,app_bt_disconnect 
-0x46f7 017122 branch shutter_stop_bluetooth_discovery 
-:      017126 app_check_reconn_target:
-0x46f8 017127 fetch 1 ,mem_nv_data_number 
-0x46f9 017128 copy pdata ,loopcnt 
-0x46fa 017129 fetch 2 ,mem_nv_data_ptr 
-0x46fb 017130 copy pdata ,rega 
-:      017131 app_check_reconn_target_loop:
-0x46fc 017132 ifetch 2 ,rega 
-0x46fd 017133 beq 0 ,found_reconn_device 
-0x46fe 017134 increase nv_data_len ,rega 
-0x46ff 017135 loop app_check_reconn_target_loop 
-0x4700 017136 branch enable_blank 
-:      017138 found_reconn_device:
-0x4701 017139 ifetch 6 ,contr 
-0x4702 017140 store 6 ,mem_hci_plap 
-0x4703 017141 increase 10 ,contr 
-0x4704 017142 arg mem_link_key ,contw 
-0x4705 017143 call memcpy16 
-0x4706 017144 call check_link_key_load 
-0x4707 017145 branch disable_blank 
-:      017151 shutter_check_data_enable:
-0x4708 017152 call disable_user 
-0x4709 017153 fetch 2 ,mem_ui_state_map 
-0x470a 017154 bbit1 ui_state_bt_connected ,shutter_check_bt_data_enable 
-0x470b 017155 bbit1 ui_state_ble_connected ,shutter_check_ble_data_enable 
-0x470c 017156 rtn 
-:      017158 shutter_check_bt_data_enable:
-0x470d 017159 fetch 1 ,mem_hid_interrupt_state 
-0x470e 017160 rtnne 0x3f 
-0x470f 017161 branch enable_user 
-:      017163 shutter_check_ble_data_enable:
-0x4710 017164 fetch 1 ,mem_ble_shutter_enable_notify 
-0x4711 017165 rtn blank 
-0x4712 017166 branch enable_user 
-:      017171 shutter_check_bluetooth_conn:
-0x4713 017172 call disable_user 
-0x4714 017173 fetch 2 ,mem_ui_state_map 
-0x4715 017174 rtnbit1 ui_state_bt_connected 
-0x4716 017175 rtnbit1 ui_state_ble_connected 
-0x4717 017176 branch enable_user 
-:      017180 shutter_change_bluetooth_status_bt_disconn:
-0x4718 017181 fetch 1 ,mem_shutter_bluetooth_type 
-0x4719 017182 bbit1 classic_shutter ,classic_shutter_change_bluetooth_status_bt_disconn 
-0x471a 017183 bbit1 ble_shutter ,ble_shutter_change_bluetooth_status_bt_disconn 
-0x471b 017184 rtn 
-:      017186 classic_shutter_change_bluetooth_status_bt_disconn:
-0x471c 017187 fetch 1 ,mem_scan_mode 
-0x471d 017188 rtnne 0x03 
-0x471e 017189 branch shutter_start_reconnect 
-:      017191 ble_shutter_change_bluetooth_status_bt_disconn:
-0x471f 017192 branch shutter_start_reconnect 
-:      017195 shutter_check_send_data:
-0x4720 017196 disable user2 
-0x4721 017197 fetch 2 ,mem_shutter_sleep_timeout 
-0x4722 017198 store 2 ,mem_shutter_sleep_timer 
-0x4723 017200 call shutter_check_bluetooth_conn 
-0x4724 017201 branch shutter_change_bluetooth_status_bt_disconn ,user 
-0x4725 017203 call shutter_check_data_enable 
-0x4726 017204 nrtn user 
-0x4727 017205 enable user2 
-0x4728 017206 rtn 
-:      017210 shutter_key_change:
-0x4729 017211 call shutter_check_send_data 
-0x472a 017212 nrtn user2 
-0x472b 017213 deposit rega 
-0x472c 017214 branch shutter_key_release ,blank 
-:      017215 shutter_key_press:
-0x472d 017216 call app_led_on 
-0x472e 017217 arg mem_key0_press ,regc 
-0x472f 017218 branch push_queue_press_or_release 
-:      017220 shutter_key_release:
-0x4730 017221 call app_led_off 
-0x4731 017222 arg mem_key0_release ,regc 
-:      017224 push_queue_press_or_release:
-0x4732 017225 arg max_queue_num ,pdata 
-0x4733 017226 imul32 queue ,pdata 
-0x4734 017227 iadd regc ,regc 
-:      017230 push_buffer_in_queue:
-0x4735 017231 ifetch 1 ,regc 
-0x4736 017232 rtn blank 
-0x4737 017233 call queue_push_one_byte 
-0x4738 017234 increase 1 ,regc 
-0x4739 017235 branch push_buffer_in_queue 
-:      017238 shutter_send_data_to_master:
-0x473a 017239 fetch 2 ,mem_ui_state_map 
-0x473b 017240 bbit1 ui_state_ble_connected ,pop_queue_to_ble_data 
-0x473c 017241 bbit1 ui_state_bt_connected ,pop_queue_to_classic_data 
-0x473d 017242 rtn 
-:      017244 pop_queue_to_ble_data:
-0x473e 017245 call le_fifo_check_nearly_full 
-0x473f 017246 nrtn blank 
-0x4740 017247 call queue_pop_one_byte 
-0x4741 017248 nrtn user 
-0x4742 017249 pincrease -1 
-0x4743 017250 mul32 pdata ,shutter_ble_data_buffer ,pdata 
-0x4744 017251 arg mem_ble_data_buffer1 ,temp 
-0x4745 017252 iadd temp ,contr 
-:      017253 le_send_notify_from_list:
-0x4746 017254 ifetch 1 ,contr 
-0x4747 017255 copy pdata ,rega 
-0x4748 017256 ifetcht 2 ,contr 
-0x4749 017257 call store_contr 
-0x474a 017258 call le_att_malloc_tx_notify 
-0x474b 017259 copy rega ,loopcnt 
-0x474c 017260 call get_contr 
-0x474d 017261 branch memcpy 
-:      017264 pop_queue_to_classic_data:
-0x474e 017265 call l2cap_malloc_is_fifo_nearly_full 
-0x474f 017266 nrtn blank 
-0x4750 017267 call queue_pop_one_byte 
-0x4751 017268 nrtn user 
-0x4752 017269 pincrease -1 
-0x4753 017270 mul32 pdata ,shutter_classic_data_buffer ,pdata 
-0x4754 017271 arg mem_classic_data_buffer1 ,temp 
-0x4755 017272 iadd temp ,contr 
-0x4756 017273 ifetch 5 ,contr 
-0x4757 017274 store 5 ,mem_classic_data_buffer 
-:      017275 classic_send_hid_data:
-0x4758 017276 fetch 1 ,mem_classic_data_buffer 
-0x4759 017277 copy pdata ,rega 
-0x475a 017278 call hid_malloc_tx_buff 
-0x475b 017279 fetch 2 ,mem_hid_int_remote_cid 
-0x475c 017280 istore 2 ,contw 
-0x475d 017281 setarg 0xa1 
-0x475e 017282 istore 1 ,contw 
-0x475f 017283 fetch 4 ,mem_classic_data_buffer + 1 
-0x4760 017284 istore 9 ,contw 
-0x4761 017285 rtn 
-:      017289 queue_push_one_byte:
-0x4762 017290 store 1 ,mem_pdatatemp 
-0x4763 017291 arg mem_pdatatemp ,rega 
-0x4764 017292 branch queue_push 
-:      017294 queue_pop_one_byte:
-0x4765 017295 arg mem_pdatatemp ,rega 
-0x4766 017296 call queue_pop 
-0x4767 017297 nrtn user 
-0x4768 017298 fetch 1 ,mem_pdatatemp 
-0x4769 017299 rtn 
-:      017302 ble_shutter_receive_data:
-0x476a 017303 fetch 2 ,mem_le_att_handle 
-0x476b 017304 beq gatt_keyboard_write_handle ,ble_shutter_process_reconnect_complete 
-0x476c 017305 rtn 
-:      017307 shutter_init_param:
-0x476d 017308 setarg 0x02 
-0x476e 017309 store 1 ,mem_shutter_power_off_timeout 
-0x476f 017311 setarg 0x00200008 
-0x4770 017312 store 4 ,mem_ble_shutter_interval_min 
-0x4771 017313 setarg 0x012c0005 
-0x4772 017314 istore 4 ,contw 
-0x4773 017317 jam 0x17 ,mem_le_local_mtu 
-0x4774 017320 setarg 0x1b 
-0x4775 017321 store 2 ,mem_le_pairing_handle 
-0x4776 017322 call le_set_config_fixed_ltk 
-0x4777 017323 call le_set_fixed_ltk 
-0x4778 017324 call le_set_justwork 
-0x4779 017325 branch le_set_config_read_authentication 
-:      017328 shutter_load_buffer_config_form_datarom:
-0x477a 017330 arg ble_key_value_list_size ,loopcnt 
-0x477b 017331 arg mem_ble_data_buffer1 ,contw 
-0x477c 017332 arg ble_shutter_key_value_list ,contr 
-0x477d 017333 call memcpy_fast 
-0x477e 017334 arg bt_key_value_list_size ,loopcnt 
-0x477f 017335 arg mem_classic_data_buffer1 ,contw 
-0x4780 017336 arg classic_shutter_key_value_list ,contr 
-0x4781 017337 branch memcpy_fast 
-:      017340 shutter_load_ble_gatt_form_datarom:
-0x4782 017341 arg ble_gatt_list_size ,loopcnt 
-0x4783 017342 arg ble_shutter_gatt_list ,contr 
-0x4784 017343 branch memcpy_fast 
-:      017346 shutter_load_bt_sdp_form_datarom:
-0x4785 017347 arg bt_sdp_list_size ,loopcnt 
-0x4786 017348 arg classic_shutter_sdp_list ,contr 
-0x4787 017349 branch memcpy_fast 
-:      017353 shutter_init_bluetooth_config:
-0x4788 017354 call shutter_check_load_config_flag 
-0x4789 017355 nrtn user 
-0x478a 017356 fetch 1 ,mem_shutter_config_select_gpio1 
-0x478b 017357 call shutter_init_bluetooth_config_gpio_input 
-0x478c 017358 fetch 1 ,mem_shutter_config_select_gpio2 
-0x478d 017359 call shutter_init_bluetooth_config_gpio_input 
-0x478e 017360 fetch 1 ,mem_shutter_config_select_gpio3 
-0x478f 017361 branch shutter_init_bluetooth_config_gpio_input 
-:      017363 shutter_init_bluetooth_config_gpio_input:
-0x4790 017364 rtn blank 
-0x4791 017365 or pdata ,0x80 ,temp 
-0x4792 017366 branch gpio_config_input_nowake 
-:      017369 shutter_load_bluetooth_config:
-0x4793 017370 call shutter_check_load_config_flag 
-0x4794 017371 nrtn user 
-0x4795 017372 call shutter_load_bluetooth_config_label 
-0x4796 017373 branch shutter_load_bluetooth_config_by_otp 
-:      017375 shutter_load_bluetooth_config_label:
-0x4797 017376 arg 0 ,rega 
-0x4798 017377 fetch 1 ,mem_shutter_config_select_gpio1 
-0x4799 017378 call shutter_load_bluetooth_config_read_gpio_input 
-0x479a 017379 nsetflag blank ,0 ,rega 
-0x479b 017380 fetch 1 ,mem_shutter_config_select_gpio2 
-0x479c 017381 call shutter_load_bluetooth_config_read_gpio_input 
-0x479d 017382 nsetflag blank ,1 ,rega 
-0x479e 017383 fetch 1 ,mem_shutter_config_select_gpio3 
-0x479f 017384 call shutter_load_bluetooth_config_read_gpio_input 
-0x47a0 017385 nsetflag blank ,2 ,rega 
-0x47a1 017386 copy rega ,pdata 
-0x47a2 017387 store 1 ,mem_shutter_config_label 
-0x47a3 017388 fetch 1 ,mem_shutter_config_size 
-0x47a4 017389 imul32 rega ,pdata 
-0x47a5 017390 fetcht 2 ,mem_shutter_config_otp_base_address 
-0x47a6 017391 iadd temp ,pdata 
-0x47a7 017392 store 2 ,mem_shutter_config_otp_addr 
-0x47a8 017393 rtn 
-:      017395 shutter_load_bluetooth_config_read_gpio_input:
-0x47a9 017396 rtn blank 
-0x47aa 017397 or pdata ,0x80 ,temp 
-0x47ab 017398 call gpio_get_bit 
-0x47ac 017399 nbranch enable_blank ,true 
-0x47ad 017400 branch disable_blank 
-:      017403 shutter_check_load_config_flag:
-0x47ae 017404 call disable_user 
-0x47af 017405 fetch 1 ,mem_shutter_config_user_size 
-0x47b0 017406 nrtn blank 
-0x47b1 017407 fetch 1 ,mem_shutter_config_enable 
-0x47b2 017408 rtn blank 
-0x47b3 017409 branch enable_user 
-:      017412 shutter_load_bluetooth_config_by_otp:
-0x47b4 017413 call otp_enable_chgpump 
-0x47b5 017414 fetch 2 ,mem_shutter_config_otp_addr 
-0x47b6 017415 arg mem_shutter_config_data_temp ,rega 
-0x47b7 017416 fetcht 1 ,mem_shutter_config_size 
-0x47b8 017417 call otpd_read_data 
-0x47b9 017418 call otp_disable_chgpump 
-:      017419 shutter_load_bluetooth_config_store_name:
-0x47ba 017420 fetch 1 ,mem_shutter_config_data_temp 
-0x47bb 017421 copy pdata ,loopcnt 
-0x47bc 017422 store 1 ,mem_le_name_len 
-0x47bd 017423 call memcpy_fast 
-0x47be 017424 fetch 1 ,mem_shutter_config_data_temp 
-0x47bf 017425 copy pdata ,loopcnt 
-0x47c0 017426 store 1 ,mem_local_name_length 
-0x47c1 017427 call memcpy_fast 
-0x47c2 017428 ifetch 1 ,contr 
-0x47c3 017429 store 1 ,mem_shutter_key_num 
-0x47c4 017430 ifetch 1 ,contr 
-0x47c5 017431 store 1 ,mem_shutter_hard_soft_switch_case 
-0x47c6 017432 rtn 
-:      017435 shutter_load_bluetooth_config_by_eeprom:
-0x47c7 017436 fetch 1 ,mem_shutter_bluetooth_type 
-0x47c8 017437 rtnbit0 classic_shutter 
-0x47c9 017438 arg 3 ,temp 
-0x47ca 017439 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
-0x47cb 017440 copy pdata ,regb 
-0x47cc 017441 arg mem_shutter_config_eeprom_start_flag ,rega 
-0x47cd 017442 call iicd_read_eep_data 
-0x47ce 017443 fetcht 2 ,mem_shutter_config_eeprom_start_flag 
-0x47cf 017444 setarg shutter_eeprom_config_crc 
-0x47d0 017445 isub temp ,null 
-0x47d1 017446 nrtn zero 
-0x47d2 017447 fetch 1 ,mem_shutter_config_user_size 
-0x47d3 017448 rtn blank 
-0x47d4 017449 copy pdata ,temp 
-0x47d5 017450 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
-0x47d6 017451 add pdata ,3 ,regb 
-0x47d7 017452 arg mem_shutter_config_data_temp ,rega 
-0x47d8 017453 call iicd_read_eep_data 
-0x47d9 017454 branch shutter_store_config 
-:      017456 shutter_load_bluetooth_config_by_user_config:
-0x47da 017457 fetch 2 ,mem_shutter_config_user_otp_address 
-0x47db 017458 rtn blank 
-0x47dc 017459 call otp_enable_chgpump 
-0x47dd 017460 arg 1 ,temp 
-0x47de 017461 arg mem_shutter_config_user_size ,rega 
-0x47df 017462 call otpd_read_data 
-0x47e0 017464 fetch 1 ,mem_shutter_config_user_size 
-0x47e1 017465 rtn blank 
-0x47e2 017467 fetch 2 ,mem_shutter_config_user_otp_address 
-0x47e3 017468 pincrease 1 
-0x47e4 017469 arg mem_shutter_config_data_temp ,rega 
-0x47e5 017470 fetcht 1 ,mem_shutter_config_user_size 
-0x47e6 017471 call otpd_read_data 
-0x47e7 017472 call otp_disable_chgpump 
-:      017473 shutter_store_config:
-0x47e8 017474 call shutter_load_bluetooth_config_store_name 
-:      017475 shutter_load_bluetooth_config_custom:
-0x47e9 017476 ifetch 2 ,contr 
-0x47ea 017477 rtn blank 
-0x47eb 017478 copy pdata ,contw 
-0x47ec 017479 ifetcht 1 ,contr 
-0x47ed 017480 copy temp ,loopcnt 
-0x47ee 017481 call memcpy 
-0x47ef 017482 branch shutter_load_bluetooth_config_custom 
-:      017486 shutter_random_mac_addr:
-0x47f0 017487 fetch 1 ,mem_shutter_bluetooth_type 
-0x47f1 017488 rtnbit0 classic_shutter 
-0x47f2 017489 fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
-0x47f3 017490 copy pdata ,regb 
-0x47f4 017491 arg 4 ,temp 
-0x47f5 017492 arg mem_shutter_random_mac_data_temp ,rega 
-0x47f6 017493 call iicd_read_eep_data 
-0x47f7 017494 fetch 1 ,mem_shutter_random_mac_data_temp 
-0x47f8 017495 bne 1 ,shutter_write_random_mac_addr_to_eeprom 
-:      017496 shutter_write_random_mac_addr_to_eeprom:
-0x47f9 017497 setarg 1 
-0x47fa 017498 store 1 ,mem_shutter_random_mac_data_temp 
-0x47fb 017499 force 3 ,loopcnt 
-0x47fc 017500 call generate_random_loop 
-0x47fd 017501 fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
-0x47fe 017502 copy pdata ,regb 
-0x47ff 017503 arg 4 ,temp 
-0x4800 017504 arg mem_shutter_random_mac_data_temp ,rega 
-0x4801 017505 call iicd_write_eep_data 
-:      017506 shutter_write_random_mac_addr:
-0x4802 017507 fetch 3 ,mem_shutter_random_mac_data_temp + 1 
-0x4803 017508 store 3 ,mem_lap 
-0x4804 017509 store 3 ,mem_le_lap 
-0x4805 017510 rtn 
-:      017513 shutter_soft_swtich_power_on:
-0x4806 017514 branch shutter_start_reconnect 
-:      017517 shutter_soft_swtich_power_off:
-0x4807 017518 arg 0 ,rega 
-0x4808 017519 arg mem_shutter_power_off_led_style ,regc 
-0x4809 017520 call ui_led_set_style_global 
-0x480a 017521 call shutter_disconnect_current_connection 
-:      017522 shutter_wait_power_off:
-0x480b 017523 fetch 1 ,mem_shutter_power_off_timeout 
-0x480c 017524 store 1 ,mem_shutter_power_off_timer 
-0x480d 017525 rtn 
-:      017529 ui_soft_swtich_init:
-0x480e 017530 setarg ss_state_power_up 
-0x480f 017531 call ui_soft_swtich_init_power_on_time 
-0x4810 017532 jam ui_button_state_up ,mem_ui_button_last_state 
-0x4811 017533 call ui_button_init 
-0x4812 017534 call ui_button_polling 
-0x4813 017535 fetch 2 ,mem_ui_state_map 
-0x4814 017536 rtnbit1 ui_state_btn_down 
-0x4815 017537 branch app_enter_hibernate 
-:      017539 ui_soft_swtich_init_power_on_time:
-0x4816 017540 fetcht 2 ,mem_power_param_ptr 
-0x4817 017541 istore 1 ,temp 
-0x4818 017542 ifetch 1 ,contw 
-0x4819 017543 store 1 ,mem_ui_button_timeout 
-0x481a 017544 rtn 
-:      017547 ui_soft_switch_botton_up:
-0x481b 017548 fetch 2 ,mem_power_param_ptr 
-0x481c 017549 ifetch 1 ,pdata 
-0x481d 017550 rtnne ss_state_power_up 
-0x481e 017551 branch app_enter_hibernate 
-:      017554 ui_soft_switch_botton_long_press:
-0x481f 017555 fetcht 2 ,mem_power_param_ptr 
-0x4820 017556 ifetch 1 ,temp 
-0x4821 017557 beq ss_state_power_on ,ui_soft_switch_power_off 
-:      017558 ui_soft_switch_power_on:
-0x4822 017559 setarg ss_state_power_on 
-0x4823 017560 fetcht 2 ,mem_power_param_ptr 
-0x4824 017561 istore 1 ,temp 
-0x4825 017562 add temp ,ss_power_off_time ,contr 
-0x4826 017563 ifetch 1 ,contr 
-0x4827 017564 istore 1 ,mem_ui_button_timeout 
-0x4828 017565 ifetch 2 ,contr 
-0x4829 017566 branch callback_func 
-:      017568 ui_soft_switch_power_off:
-0x482a 017569 setarg ss_state_power_off 
-0x482b 017570 call ui_soft_swtich_init_power_on_time 
-0x482c 017571 add temp ,ss_power_off_cb ,contr 
-0x482d 017572 ifetch 2 ,contr 
-0x482e 017573 branch app_enter_hibernate ,blank 
-0x482f 017574 branch callback_func 
-:      017580 shutter_byteswap:
-0x4830 017581 store 6 ,mem_tmp_buffer 
-0x4831 017582 fetch 1 ,mem_tmp_buffer 
-0x4832 017583 store 1 ,mem_tmp_buffer + 11 
-0x4833 017584 ifetch 1 ,contr 
-0x4834 017585 store 1 ,mem_tmp_buffer + 10 
-0x4835 017586 ifetch 1 ,contr 
-0x4836 017587 store 1 ,mem_tmp_buffer + 9 
-0x4837 017588 ifetch 1 ,contr 
-0x4838 017589 store 1 ,mem_tmp_buffer + 8 
-0x4839 017590 ifetch 1 ,contr 
-0x483a 017591 store 1 ,mem_tmp_buffer + 7 
-0x483b 017592 ifetch 1 ,contr 
-0x483c 017593 store 1 ,mem_tmp_buffer + 6 
-0x483d 017594 fetch 6 ,mem_tmp_buffer + 6 
-0x483e 017595 rtn 
-:      017597 shutter_random_addr_by_otp:
-0x483f 017598 call load_adc_init 
-0x4840 017599 fetch 1 ,mem_1v_adc_io_data 
-0x4841 017600 store 1 ,mem_le_lap 
-0x4842 017601 fetch 1 ,mem_5v_adc_hvin_data 
-0x4843 017602 istore 1 ,contw 
-0x4844 017603 fetch 1 ,mem_3v_adc_vinlpm_data 
-0x4845 017604 istore 1 ,contw 
-0x4846 017605 fetch 3 ,mem_le_lap 
-0x4847 017606 store 3 ,mem_lap 
-0x4848 017607 rtn 
-:      017619 sim_iic_read_eep_data:
-0x4849 017620 fetch 2 ,mem_eeprom_base 
-0x484a 017621 iadd regb ,pdata 
-0x484b 017622 byteswap pdata ,pdata 
-0x484c 017623 store 2 ,mem_addr_mi 
-0x484d 017624 copy temp ,regb 
-0x484e 017626 call sim_iic_start 
-0x484f 017627 setarg 0xa0 
-0x4850 017628 call sim_iic_send_byte 
-0x4851 017629 fetch 1 ,mem_addr_mi 
-0x4852 017630 call sim_iic_send_byte 
-0x4853 017631 bmark1 mark_eeprom_size ,sim_iic_read_eep_data_2k 
-0x4854 017632 fetch 1 ,mem_addr_mi + 1 
-0x4855 017633 call sim_iic_send_byte 
-:      017634 sim_iic_read_eep_data_2k:
-0x4856 017635 call sim_iic_stop 
-0x4857 017637 call sim_iic_start 
-0x4858 017638 setarg 0xa1 
-0x4859 017639 call sim_iic_send_byte 
-:      017641 sim_iic_read_eep_data_loop:
-0x485a 017642 call sim_iic_read_byte 
-0x485b 017643 istore 1 ,rega 
-0x485c 017644 increase 1 ,rega 
-0x485d 017645 increase -1 ,regb 
-0x485e 017646 nbranch sim_iic_read_eep_data_loop ,zero 
-0x485f 017647 branch sim_iic_stop 
-:      017658 sim_iic_write_eep_data:
-0x4860 017659 byteswap regb ,pdata 
-0x4861 017660 store 2 ,mem_addr_mi 
-0x4862 017661 copy temp ,regb 
-0x4863 017663 call sim_iic_start 
-0x4864 017664 setarg 0xa0 
-0x4865 017665 call sim_iic_send_byte 
-0x4866 017667 fetch 1 ,mem_addr_mi 
-0x4867 017668 call sim_iic_send_byte 
-0x4868 017669 bmark1 mark_eeprom_size ,sim_iic_write_eep_data_loop 
-0x4869 017670 fetch 1 ,mem_addr_mi + 1 
-0x486a 017671 call sim_iic_send_byte 
-:      017672 sim_iic_write_eep_data_loop:
-0x486b 017673 ifetch 1 ,rega 
-0x486c 017674 call sim_iic_send_byte 
-0x486d 017675 increase 1 ,rega 
-0x486e 017676 increase -1 ,regb 
-0x486f 017677 nbranch sim_iic_write_eep_data_loop ,zero 
-0x4870 017678 branch sim_iic_stop 
-:      017682 sim_iic_wait_ack:
-0x4871 017683 arg 10 ,loopcnt 
-0x4872 017684 call sim_iic_release_sda 
-0x4873 017685 call sim_iic_scl_output_high 
-0x4874 017686 call sim_iic_delay 
-:      017687 sim_iic_wait_ack_loop:
-0x4875 017688 call sim_iic_read_sda_level 
-0x4876 017689 branch sim_iic_scl_output_low ,blank 
-0x4877 017690 loop sim_iic_wait_ack_loop 
-0x4878 017691 branch sim_iic_scl_output_low 
-:      017695 sim_iic_ack_slave:
-0x4879 017696 call sim_iic_scl_output_low 
-0x487a 017697 call sim_iic_sda_output_low 
-0x487b 017698 call sim_iic_delay 
-0x487c 017699 call sim_iic_scl_output_high 
-0x487d 017700 call sim_iic_delay 
-0x487e 017701 branch sim_iic_scl_output_low 
-:      017706 sim_iic_read_byte:
-0x487f 017707 arg 8 ,loopcnt 
-0x4880 017708 arg 0 ,regc 
-0x4881 017709 call sim_iic_release_sda 
-:      017710 sim_iic_read_byte_loop:
-0x4882 017711 call sim_iic_scl_output_high 
-0x4883 017712 call sim_iic_delay 
-0x4884 017713 lshift regc ,regc 
-0x4885 017714 call sim_iic_read_sda_level 
-0x4886 017715 iadd regc ,regc 
-0x4887 017716 call sim_iic_delay 
-0x4888 017717 call sim_iic_scl_output_low 
-0x4889 017718 loop sim_iic_read_byte_loop 
-0x488a 017719 call sim_iic_ack_slave 
-0x488b 017720 copy regc ,pdata 
-0x488c 017721 rtn 
-:      017725 sim_iic_send_byte:
-0x488d 017726 arg 8 ,loopcnt 
-0x488e 017727 copy pdata ,regc 
-0x488f 017728 call sim_iic_scl_output_low 
-:      017729 sim_iic_send_byte_loop:
-0x4890 017730 isolate1 7 ,regc 
-0x4891 017731 call sim_iic_sda_output_high ,true 
-0x4892 017732 ncall sim_iic_sda_output_low ,true 
-0x4893 017733 lshift regc ,regc 
-0x4894 017734 call sim_iic_delay 
-0x4895 017735 call sim_iic_scl_output_high 
-0x4896 017736 call sim_iic_delay 
-0x4897 017737 call sim_iic_scl_output_low 
-0x4898 017738 call sim_iic_delay 
-0x4899 017739 loop sim_iic_send_byte_loop 
-0x489a 017740 branch sim_iic_wait_ack 
-:      017744 sim_iic_start:
-0x489b 017745 call sim_iic_sda_output_high 
-0x489c 017746 call sim_iic_scl_output_high 
-0x489d 017747 call sim_iic_delay 
-0x489e 017748 call sim_iic_sda_output_low 
-0x489f 017749 call sim_iic_delay 
-0x48a0 017750 branch sim_iic_scl_output_low 
-:      017754 sim_iic_stop:
-0x48a1 017755 call sim_iic_sda_output_low 
-0x48a2 017756 call sim_iic_scl_output_high 
-0x48a3 017757 call sim_iic_delay 
-0x48a4 017758 call sim_iic_sda_output_high 
-0x48a5 017759 branch sim_iic_delay 
-:      017763 sim_iic_scl_output_high:
-0x48a6 017764 enable user 
-0x48a7 017765 fetch 1 ,sim_iic_scl_gpio_num 
-0x48a8 017766 branch sim_iic_config_gpio 
-:      017769 sim_iic_scl_output_low:
-0x48a9 017770 disable user 
-0x48aa 017771 fetch 1 ,sim_iic_scl_gpio_num 
-0x48ab 017772 branch sim_iic_config_gpio 
-:      017775 sim_iic_sda_output_high:
-0x48ac 017776 enable user 
-0x48ad 017777 fetch 1 ,sim_iic_sda_gpio_num 
-0x48ae 017778 branch sim_iic_config_gpio 
-:      017781 sim_iic_sda_output_low:
-0x48af 017782 disable user 
-0x48b0 017783 fetch 1 ,sim_iic_sda_gpio_num 
-0x48b1 017784 branch sim_iic_config_gpio 
-:      017789 sim_iic_config_gpio:
-0x48b2 017790 and pdata ,0x07 ,queue 
-0x48b3 017791 rshift3 pdata ,pdata 
-0x48b4 017792 arg core_gpio_oe0 ,temp 
-0x48b5 017793 iadd temp ,temp 
-0x48b6 017794 ifetch 1 ,temp 
-0x48b7 017795 qset1 pdata 
-0x48b8 017796 istore 1 ,temp 
-0x48b9 017797 increase 4 ,temp 
-0x48ba 017798 ifetch 1 ,temp 
-0x48bb 017799 qsetflag user ,pdata 
-0x48bc 017800 istore 1 ,temp 
-0x48bd 017801 rtn 
-:      017804 sim_iic_release_sda:
-0x48be 017805 fetch 1 ,sim_iic_sda_gpio_num 
-0x48bf 017806 and pdata ,0x07 ,queue 
-0x48c0 017807 rshift3 pdata ,pdata 
-0x48c1 017808 arg core_gpio_oe0 ,temp 
-0x48c2 017809 iadd temp ,temp 
-0x48c3 017810 ifetch 1 ,temp 
-0x48c4 017811 qset0 pdata 
-0x48c5 017812 istore 1 ,temp 
-0x48c6 017813 rtn 
-:      017818 sim_iic_read_sda_level:
-0x48c7 017819 nop 4 
-0x48c8 017820 fetch 1 ,sim_iic_sda_gpio_num 
-0x48c9 017821 and pdata ,0x07 ,queue 
-0x48ca 017822 rshift3 pdata ,pdata 
-0x48cb 017823 arg core_gpio_in ,temp 
-0x48cc 017824 iadd temp ,temp 
-0x48cd 017825 setarg 0 
-0x48ce 017826 ifetcht 1 ,temp 
-0x48cf 017827 qisolate1 temp 
-0x48d0 017828 setflag true ,0 ,pdata 
-0x48d1 017829 rtn 
-:      017832 sim_iic_delay:
-0x48d2 017834 rtn 
-:      017840 usb_isr:
-0x48d3 017841 bpatch patch1e_6 ,mem_patch1e 
-0x48d4 017842 hfetch 1 ,core_usb_status 
-0x48d5 017843 isolate1 7 ,pdata 
-0x48d6 017844 call usb_init ,true 
-0x48d7 017845 call usb_nak_state_judge 
-0x48d8 017846 hfetch 1 ,core_usb_status 
-0x48d9 017847 store 1 ,mem_usb_status 
-0x48da 017848 hfetch 1 ,core_usb_fifo_empty 
-0x48db 017849 store 1 ,mem_usb_fifo_empty 
-0x48dc 017850 hstore 1 ,core_usb_fifo_empty 
-0x48dd 017851 pinvert 
-0x48de 017852 fetcht 1 ,mem_usb_tx_wait 
-0x48df 017853 iand temp ,pdata 
-0x48e0 017854 store 1 ,mem_usb_tx_wait 
-0x48e1 017855 jam 0xe0 ,core_usb_status 
-0x48e2 017856 fetch 1 ,mem_usb_fifo_empty 
-0x48e3 017857 compare 0x1 ,pdata ,0x1 
-0x48e4 017858 call usb0_fifo_empty ,true 
-0x48e5 017859 fetch 1 ,mem_usb_status 
-0x48e6 017860 compare 0x1 ,pdata ,0x1 
-0x48e7 017861 call usb_status1 ,true 
-0x48e8 017862 call usb_tx 
-0x48e9 017863 branch usb_nak_state 
-:      017865 usb_init:
-0x48ea 017866 bpatch patch1e_7 ,mem_patch1e 
-0x48eb 017867 call usb_init_param 
-0x48ec 017868 jam 0x00 ,core_usb_config 
-0x48ed 017869 nop 10000 
-0x48ee 017870 jam 0xc0 ,core_usb_trig 
-0x48ef 017871 hfetch 2 ,core_clkoff 
-0x48f0 017872 set0 clock_off_usb ,pdata 
-0x48f1 017873 hstore 2 ,core_clkoff 
-0x48f2 017874 jam 0x3c ,core_usb_config 
-0x48f3 017875 jam 0xff ,core_usb_status 
-0x48f4 017876 jam 0xff ,core_usb_fifo_empty 
-0x48f5 017877 jam 0 ,core_usb_addr 
-0x48f6 017878 jam dev_default ,mem_usb0_state 
-0x48f7 017879 setarg mem_usb_clear_mem_end 
-0x48f8 017880 arg mem_usb_clear_mem_start ,contw 
-0x48f9 017881 isub contw ,loopcnt 
-0x48fa 017882 branch clear_mem 
-:      017884 usb_offline_check_init:
-0x48fb 017885 fetcht 1 ,mem_usb_offline_check_gpio 
-0x48fc 017886 branch gpio_config_input 
-:      017887 usb_offline_state:
-0x48fd 017888 fetch 1 ,mem_usb_device_enumeration_endflag 
-0x48fe 017889 rtn blank 
-0x48ff 017890 fetcht 1 ,mem_usb_offline_check_gpio 
-0x4900 017891 call gpio_get_bit 
-0x4901 017892 branch usb_init ,true 
-0x4902 017893 rtn 
-:      017896 usb_nak_state:
-0x4903 017897 arg timer_nak ,queue 
-0x4904 017898 call timer_check 
-0x4905 017899 nrtn blank 
-0x4906 017900 fetch 1 ,mem_usb_wakestate_onetime_flag 
-0x4907 017901 nrtn blank 
-0x4908 017902 fetch 1 ,mem_usb_device_enumeration_endflag 
-0x4909 017903 ncall usb_mac_wakeup_judge ,blank 
-0x490a 017904 rtn 
-:      017906 usb_mem_devicedesc_init:
-0x490b 017907 arg mem_devicedesc ,contw 
-0x490c 017908 setsect 0 ,0x11212 
-0x490d 017909 setsect 1 ,0x8000 
-0x490e 017910 setsect 2 ,0x0 
-0x490f 017911 setsect 3 ,0x10000 
-0x4910 017912 istore 9 ,contw 
-0x4911 017913 setsect 0 ,0x22412 
-0x4912 017914 setsect 1 ,0x8604 
-0x4913 017915 setsect 2 ,0x1000 
-0x4914 017916 setsect 3 ,0x8 
-0x4915 017917 istore 9 ,contw 
-0x4916 017918 setsect 0 ,0x1 
-0x4917 017919 istore 1 ,contw 
-0x4918 017920 rtn 
-:      017922 usb_init_param:
-0x4919 017923 jam 2 ,mem_usb0_state 
-0x491a 017924 setarg 0x0 
-0x491b 017925 store 1 ,mem_remain 
-0x491c 017926 store 2 ,mem_usb_zero_packet 
-0x491d 017927 pincrease 1 
-0x491e 017928 store 2 ,mem_usb_ones_packet 
-0x491f 017929 pincrease 1 
-0x4920 017930 store 2 ,mem_usb_two_packet 
-0x4921 017931 setarg hid_kbdata_addr 
-0x4922 017932 store 2 ,mem_hidreportdesc_kb 
-0x4923 017933 setarg hid_msdata_addr 
-0x4924 017934 store 2 ,mem_hidreportdesc_m 
-0x4925 017935 arg mem_confdesc ,contw 
-0x4926 017936 arg hid_confdata_addr ,contr 
-0x4927 017937 call memcpy64 
-0x4928 017938 fetch 1 ,mem_usb_tx_interval 
-0x4929 017939 ncall usb_tx_interval_config ,blank 
-0x492a 017940 branch usb_mem_devicedesc_init 
-:      017942 usb_tx_interval_config:
-0x492b 017943 store 1 ,mem_confdesc + 34 
-0x492c 017944 store 1 ,mem_confdesc + 59 
-0x492d 017945 rtn 
-:      017946 usb_nak_state_judge:
-0x492e 017947 hfetch 1 ,core_usb_status 
-0x492f 017948 bbit1 usb_status_nak ,usb_nak_state_timer_init 
-0x4930 017949 rtn 
-:      017951 usb_nak_state_timer_init:
-0x4931 017952 call usb0_attached_state_judge 
-0x4932 017953 call timer_reinit 
-0x4933 017954 setarg timer_nak_delay 
-0x4934 017955 arg timer_nak ,queue 
-0x4935 017956 branch timer_init 
-:      017958 usb0_attached_state_judge:
-0x4936 017959 fetch 1 ,mem_usb_state 
-0x4937 017960 bne usb_connected ,usb_clear_halt_dispose 
-0x4938 017961 jam 0 ,mem_usb_wakestate_onetime_flag 
-0x4939 017962 jam 0 ,mem_usb_mac_wakeup_trig 
-0x493a 017963 rtn 
-:      017964 usb_clear_halt_dispose:
-0x493b 017965 fetch 1 ,mem_usb_clear_halt 
-0x493c 017966 rtn blank 
-0x493d 017967 jam 0 ,mem_usb_clear_halt 
-0x493e 017968 jam usb_connected ,mem_usb_state 
-0x493f 017969 jam 1 ,mem_usb_device_enumeration_endflag 
-0x4940 017970 rtn 
-:      017972 usb0_fifo_empty:
-0x4941 017973 jam 0x1 ,core_usb_fifo_empty 
-0x4942 017974 branch usb0_tx 
-:      017976 usb_rx_no_data:
-0x4943 017977 fetch 1 ,mem_usb_status 
-0x4944 017978 bbit1 usb_status_setup ,usb_class_type 
-0x4945 017979 rtn 
-:      017981 usb_rx_read:
-0x4946 017982 hfetch 1 ,core_usb_ep 
-0x4947 017983 istore 1 ,contw 
-0x4948 017984 loop usb_rx_read 
-0x4949 017985 rtn 
-:      017987 usb_status1:
-0x494a 017988 bpatch patch1f_0 ,mem_patch1f 
-0x494b 017989 jam 0x11 ,core_usb_status 
-0x494c 017990 hfetch 1 ,core_usb_ep_len 
-0x494d 017991 store 1 ,mem_usb_read_len 
-0x494e 017992 copy pdata ,loopcnt 
-0x494f 017993 branch usb_rx_no_data ,blank 
-0x4950 017994 arg mem_usb_setup ,contw 
-0x4951 017995 call usb_rx_read 
-0x4952 017996 fetch 1 ,mem_usb_read_len 
-0x4953 017997 sub pdata ,7 ,null 
-0x4954 017998 rtn positive 
-:      017999 usb_class_type:
-0x4955 018000 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4956 018001 and_into 0x80 ,pdata 
-0x4957 018002 beq in_device ,usb_in_device 
-0x4958 018003 beq out_device ,usb_out_device 
-0x4959 018004 branch assert 
-:      018006 usb_in_device:
-0x495a 018007 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x495b 018008 rshift4 pdata ,pdata 
-0x495c 018009 rshift pdata ,pdata 
-0x495d 018010 and_into 0x03 ,pdata 
-0x495e 018011 beq standard_req ,usb_in_standard_req 
-0x495f 018012 beq class_req ,usb_in_class_req 
-0x4960 018013 beq manufacturer_req ,usb_in_manufacturer_req 
-0x4961 018014 branch assert 
-:      018016 usb_out_device:
-0x4962 018017 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4963 018018 rshift4 pdata ,pdata 
-0x4964 018019 rshift pdata ,pdata 
-0x4965 018020 and_into 0x03 ,pdata 
-0x4966 018021 beq standard_req ,usb_out_standard_req 
-0x4967 018022 beq class_req ,usb_out_class_req 
-0x4968 018023 beq manufacturer_req ,usb_out_manufacturer_req 
-0x4969 018024 branch assert 
-:      018026 usb_in_standard_req:
-0x496a 018027 fetch 1 ,mem_usb_setup_brequest 
-0x496b 018028 beq get_configuration ,usb0_request_get_configuration 
-0x496c 018029 beq get_descriptor ,usb0_request_get_descriptor 
-0x496d 018030 beq get_interface ,usb0_request_get_interface 
-0x496e 018031 beq get_status ,usb0_request_get_status 
-0x496f 018032 branch usb0_force_stall 
-:      018034 usb_in_class_req:
-0x4970 018035 fetch 1 ,mem_usb_setup_brequest 
-0x4971 018036 beq get_idle ,usb_get_idle 
-0x4972 018037 beq get_report ,usb_get_report 
-0x4973 018038 beq get_protocol ,usb_get_protocol_req 
-0x4974 018039 branch usb0_force_stall 
-:      018041 usb_in_manufacturer_req:
-0x4975 018042 branch usb0_force_stall 
-:      018044 usb_out_standard_req:
-0x4976 018045 fetch 1 ,mem_usb_setup_brequest 
-0x4977 018046 beq clear_feature ,usb0_request_clear_feature 
-0x4978 018047 beq set_feature ,usb0_request_set_feature 
-0x4979 018048 beq set_address ,usb0_request_set_address 
-0x497a 018049 beq set_configuration ,usb0_request_set_configuration 
-0x497b 018050 beq set_interface ,usb0_request_set_interface 
-0x497c 018051 beq set_descriptor ,usb0_force_stall 
-0x497d 018052 branch usb0_force_stall 
-:      018054 usb_out_class_req:
-0x497e 018055 fetch 1 ,mem_usb_setup_brequest 
-0x497f 018056 beq set_idle ,usb_set_idle 
-0x4980 018057 beq set_report ,usb_set_report 
-0x4981 018058 beq set_protocol ,usb_set_protocol_req 
-0x4982 018059 branch usb0_force_stall 
-:      018061 usb_out_manufacturer_req:
-0x4983 018062 branch usb0_force_stall 
-:      018064 usb0_force_stall:
-0x4984 018065 hfetch 1 ,core_usb_stall 
-0x4985 018066 set1 0 ,pdata 
-0x4986 018067 hstore 1 ,core_usb_stall 
-0x4987 018068 branch usb0_reply_zerolen 
-:      018070 usb0_reply_zerolen:
-0x4988 018071 jam 0x40 ,core_usb_clear 
-0x4989 018072 rtn 
-:      018074 usb0_request_get_configuration:
-0x498a 018075 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x498b 018076 bne in_device ,usb0_force_stall 
-0x498c 018077 fetch 1 ,mem_usb_setup_windex 
-0x498d 018078 bne 0 ,usb0_force_stall 
-0x498e 018079 fetch 1 ,mem_usb_setup_windex + 1 
-0x498f 018080 bne 0 ,usb0_force_stall 
-0x4990 018081 fetch 1 ,mem_usb_setup_blength 
-0x4991 018082 bne 1 ,usb0_force_stall 
-0x4992 018083 fetch 1 ,mem_usb_setup_blengthh 
-0x4993 018084 bne 0 ,usb0_force_stall 
-0x4994 018085 fetch 1 ,mem_usb_setup_bvalue 
-0x4995 018086 bne 0 ,usb0_force_stall 
-0x4996 018087 fetch 1 ,mem_usb_setup_bvalue + 1 
-0x4997 018088 bne 0 ,usb0_force_stall 
-0x4998 018089 fetch 1 ,mem_usb0_state 
-0x4999 018090 beq dev_configured ,usb0_request_get_cfg_dev_cfg 
-0x499a 018091 beq dev_address ,usb0_request_get_cfg_dev_addr 
-0x499b 018092 branch usb0_force_stall 
-:      018094 usb0_request_get_cfg_dev_cfg:
-0x499c 018095 arg 1 ,regb 
-0x499d 018096 branch usb_send_ones_packet 
-:      018098 usb0_request_get_cfg_dev_addr:
-0x499e 018099 arg 1 ,regb 
-0x499f 018100 branch usb_send_zero_packet 
-:      018102 usb0_request_get_descriptor:
-0x49a0 018103 bpatch patch1f_1 ,mem_patch1f 
-0x49a1 018104 set0 mark_isstr ,mark 
-0x49a2 018105 fetch 1 ,mem_usb_setup_bvalueh 
-0x49a3 018106 beq dsc_device ,dsc_device_info 
-0x49a4 018107 beq dsc_config ,dsc_config_info 
-0x49a5 018108 beq dsc_string ,dsc_string_info 
-0x49a6 018109 beq dsc_hid ,dsc_hid_info 
-0x49a7 018110 beq dsc_hid_report ,dsc_hid_report_info 
-0x49a8 018111 branch usb0_force_stall 
-:      018113 dsc_hid_info:
-0x49a9 018114 jam 0 ,mem_usb_get_protocol_flag 
-0x49aa 018115 fetch 1 ,mem_usb_setup_windex 
-0x49ab 018116 beq 0 ,dsc_hid_info_interface0 
-0x49ac 018117 beq 1 ,dsc_hid_info_interface1 
-0x49ad 018118 branch usb0_force_stall 
-:      018120 dsc_hid_info_interface0:
-0x49ae 018121 arg mem_confdesc + 19 ,rega 
-0x49af 018122 ifetch 1 ,rega 
-0x49b0 018123 iforce regb 
-0x49b1 018124 branch usb0_respond 
-:      018126 dsc_hid_info_interface1:
-0x49b2 018127 arg mem_confdesc + 44 ,rega 
-0x49b3 018128 ifetch 1 ,rega 
-0x49b4 018129 iforce regb 
-0x49b5 018130 branch usb0_respond 
-:      018132 dsc_device_info:
-0x49b6 018136 fetch 1 ,mem_usb_set_high_addr_flag 
-0x49b7 018137 ncall usb_set_high_addr ,blank 
-0x49b8 018138 setarg mem_devicedesc 
-0x49b9 018139 fetcht 1 ,mem_devicedesc 
-:      018140 dsc_info_set_data_len:
-0x49ba 018141 store 2 ,mem_dsc_info_data_pointer 
-0x49bb 018142 storet 1 ,mem_dsc_info_len 
-0x49bc 018143 fetch 1 ,mem_usb_setup_blength 
-0x49bd 018144 isub temp ,null 
-0x49be 018145 nbranch dsc_info_set_current_data_len ,positive 
-:      018146 dsc_info_set_initial_data_len:
-0x49bf 018147 fetch 1 ,mem_dsc_info_len 
-:      018148 dsc_info_set_data_size_completed:
-0x49c0 018149 iforce regb 
-0x49c1 018150 fetch 2 ,mem_dsc_info_data_pointer 
-0x49c2 018151 add pdata ,1 ,pdata 
-0x49c3 018152 iforce rega 
-0x49c4 018153 branch usb0_respond 
-:      018154 dsc_info_set_current_data_len:
-0x49c5 018155 fetch 1 ,mem_usb_setup_blength 
-0x49c6 018156 branch dsc_info_set_data_size_completed 
-:      018158 usb_set_high_addr:
-0x49c7 018159 hfetch 1 ,core_usb_addr 
-0x49c8 018160 ncall usb0_set_addr ,blank 
-0x49c9 018161 jam 0 ,mem_usb_set_high_addr_flag 
-0x49ca 018162 rtn 
-:      018163 usb0_set_addr:
-0x49cb 018164 hfetch 1 ,core_usb_addr 
-0x49cc 018165 set1 7 ,pdata 
-0x49cd 018166 hstore 1 ,core_usb_addr 
-0x49ce 018167 rtn 
-:      018169 dsc_config_info:
-0x49cf 018170 setarg mem_confdesc 
-0x49d0 018171 fetcht 1 ,mem_confdesc 
-0x49d1 018172 branch dsc_info_set_data_len 
-:      018174 dsc_string_info:
-0x49d2 018175 fetch 1 ,mem_usb_setup_bvalue 
-0x49d3 018176 sub pdata ,3 ,null 
-0x49d4 018177 nbranch usb0_force_stall ,positive 
-0x49d5 018178 fetch 1 ,mem_usb_setup_bvalue 
-0x49d6 018179 arg mem_string0 ,rega 
-0x49d7 018180 beq 0 ,usb0_respond_length 
-0x49d8 018181 set1 mark_isstr ,mark 
-0x49d9 018182 arg mem_string1 ,rega 
-0x49da 018183 beq 1 ,usb0_respond_length 
-0x49db 018184 arg mem_string2 ,rega 
-0x49dc 018185 beq 2 ,usb0_respond_length 
-0x49dd 018186 arg mem_string3 ,rega 
-0x49de 018187 beq 3 ,usb0_respond_length 
-0x49df 018188 rtn 
-:      018190 dsc_hid_report_info:
-0x49e0 018191 fetch 2 ,mem_usb_setup_windex 
-0x49e1 018192 beq 1 ,dsc_hid_report_info0 
-0x49e2 018193 fetch 2 ,mem_hidreportdesc_kb 
-0x49e3 018194 copy pdata ,rega 
-0x49e4 018196 branch usb0_respond_length 
-:      018197 dsc_hid_report_info0:
-0x49e5 018198 jam 1 ,mem_usb_device_enumeration_endflag 
-0x49e6 018199 jam usb_got_report_req ,mem_usb_state 
-0x49e7 018200 fetch 2 ,mem_hidreportdesc_m 
-0x49e8 018201 copy pdata ,rega 
-0x49e9 018203 branch usb0_respond_length 
-:      018206 usb0_request_get_interface:
-0x49ea 018207 fetch 1 ,mem_usb0_state 
-0x49eb 018208 bne dev_configured ,usb0_force_stall 
-0x49ec 018209 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x49ed 018210 bne in_interface ,usb0_force_stall 
-0x49ee 018211 fetch 1 ,mem_usb_setup_bvalue 
-0x49ef 018212 bne 0 ,usb0_force_stall 
-0x49f0 018213 fetch 1 ,mem_usb_setup_bvalueh 
-0x49f1 018214 bne 0 ,usb0_force_stall 
-0x49f2 018215 fetch 1 ,mem_usb_setup_blength 
-0x49f3 018216 bne 1 ,usb0_force_stall 
-0x49f4 018217 fetch 1 ,mem_usb_setup_blengthh 
-0x49f5 018218 bne 0 ,usb0_force_stall 
-0x49f6 018219 fetch 1 ,mem_usb_setup_windex 
-0x49f7 018220 bne 0 ,usb0_force_stall 
-0x49f8 018221 fetch 1 ,mem_usb_setup_windex + 1 
-0x49f9 018222 bne 0 ,usb0_force_stall 
-0x49fa 018223 arg 1 ,regb 
-0x49fb 018224 branch usb_send_zero_packet 
-:      018227 usb0_request_get_status:
-0x49fc 018228 fetch 1 ,mem_usb0_state 
-0x49fd 018229 beq dev_default ,usb0_force_stall 
-0x49fe 018230 fetch 1 ,mem_usb_setup_bvalue 
-0x49ff 018231 bne 0 ,usb0_force_stall 
-0x4a00 018232 fetch 1 ,mem_usb_setup_bvalueh 
-0x4a01 018233 bne 0 ,usb0_force_stall 
-0x4a02 018234 fetch 1 ,mem_usb_setup_blength 
-0x4a03 018235 bne 2 ,usb0_force_stall 
-0x4a04 018236 fetch 1 ,mem_usb_setup_blengthh 
-0x4a05 018237 bne 0 ,usb0_force_stall 
-0x4a06 018238 fetch 1 ,mem_usb_setup_windex + 1 
-0x4a07 018239 bne 0 ,usb0_force_stall 
-0x4a08 018240 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4a09 018241 beq in_device ,usb0_get_status_in_device 
-0x4a0a 018242 beq in_interface ,usb0_get_status_in_interface 
-0x4a0b 018243 beq in_endpoint ,usb0_get_status_in_endpoint 
-0x4a0c 018244 branch usb0_force_stall 
-:      018246 usb0_get_status_in_device:
-0x4a0d 018247 fetch 1 ,mem_usb_setup_windex 
-0x4a0e 018248 bne 0 ,usb0_force_stall 
-0x4a0f 018249 arg 2 ,regb 
-0x4a10 018250 fetch 1 ,mem_usb_remote_wakeup 
-0x4a11 018251 beq 0x01 ,usb_send_two_packet 
-:      018253 usb_send_zero_packet:
-0x4a12 018254 arg mem_usb_zero_packet ,rega 
-0x4a13 018255 branch usb0_respond 
-:      018256 usb_send_ones_packet:
-0x4a14 018257 arg mem_usb_ones_packet ,rega 
-0x4a15 018258 branch usb0_respond 
-:      018259 usb_send_two_packet:
-0x4a16 018260 arg mem_usb_two_packet ,rega 
-0x4a17 018261 branch usb0_respond 
-:      018263 usb0_get_status_in_interface:
-0x4a18 018264 fetch 1 ,mem_usb0_state 
-0x4a19 018265 bne dev_configured ,usb0_force_stall 
-0x4a1a 018266 arg 2 ,regb 
-0x4a1b 018267 branch usb_send_zero_packet 
-:      018269 usb0_get_status_in_endpoint:
-0x4a1c 018270 fetch 1 ,mem_usb0_state 
-0x4a1d 018271 bne dev_configured ,usb0_force_stall 
-0x4a1e 018272 fetch 1 ,mem_usb_setup_windex 
-0x4a1f 018273 beq in_ep1 ,usb0_get_status_in_ep_in_ep1 
-0x4a20 018274 beq in_ep2 ,usb0_get_status_in_ep_in_ep2 
-0x4a21 018275 beq in_ep3 ,usb0_get_status_in_ep_in_ep3 
-0x4a22 018276 and_into 0x7f ,pdata 
-0x4a23 018277 beq 0x00 ,usb0_get_status_in_ep_in_ep0 
-0x4a24 018278 branch usb0_force_stall 
-:      018280 usb0_get_status_in_ep_in_ep0:
-0x4a25 018281 fetch 1 ,mem_usb_ep0_stall_status 
-:      018282 usb0_get_status_in_ep_in_ack:
-0x4a26 018283 arg 2 ,regb 
-0x4a27 018284 beq 1 ,usb_send_ones_packet 
-0x4a28 018285 branch usb_send_zero_packet 
-:      018286 usb0_get_status_in_ep_in_ep1:
-0x4a29 018287 fetch 1 ,mem_usb_ep1_stall_status 
-0x4a2a 018288 branch usb0_get_status_in_ep_in_ack 
-:      018289 usb0_get_status_in_ep_in_ep2:
-0x4a2b 018290 fetch 1 ,mem_usb_ep2_stall_status 
-0x4a2c 018291 branch usb0_get_status_in_ep_in_ack 
-:      018292 usb0_get_status_in_ep_in_ep3:
-0x4a2d 018293 fetch 1 ,mem_usb_ep3_stall_status 
-0x4a2e 018294 branch usb0_get_status_in_ep_in_ack 
-:      018296 usb_get_idle:
-0x4a2f 018297 jam 1 ,mem_usb_idle_flag 
-0x4a30 018298 arg mem_usb_idle_rate ,rega 
-0x4a31 018299 arg 1 ,regb 
-0x4a32 018300 branch usb0_respond 
-:      018302 usb_get_report:
-0x4a33 018303 fetch 2 ,mem_usb_setup_bvalue 
-0x4a34 018304 arg pc_get_report ,temp 
-0x4a35 018305 isub temp ,null 
-0x4a36 018306 nbranch usb0_force_stall ,zero 
-0x4a37 018307 set0 mark_isstr ,mark 
-:      018308 usb_get_report_dispose:
-0x4a38 018309 fetch 1 ,mem_usb0_data_ready_report 
-0x4a39 018310 nbranch usb_get_report_data_success ,blank 
-0x4a3a 018311 jam pc_get_nondata ,mem_usb0_get_report_data 
-:      018312 usb_get_report_send_data:
-0x4a3b 018313 fetch 1 ,mem_usb_setup_blength 
-0x4a3c 018314 iforce regb 
-0x4a3d 018315 arg mem_usb0_get_report_data ,rega 
-0x4a3e 018316 call usb0_respond 
-:      018317 usb_get_report_data_release:
-0x4a3f 018318 arg mem_usb0_get_report_data ,contw 
-0x4a40 018319 arg 8 ,loopcnt 
-0x4a41 018320 branch memset0 
-:      018321 usb_get_report_data_success:
-0x4a42 018322 jam 0 ,mem_usb0_data_ready_report 
-0x4a43 018323 jam pc_get_data ,mem_usb0_get_report_data 
-0x4a44 018324 branch usb_get_report_send_data 
-:      018326 usb_get_protocol_req:
-0x4a45 018327 fetch 1 ,mem_usb_setup_blength 
-0x4a46 018328 bne 1 ,usb0_force_stall 
-0x4a47 018329 jam 1 ,mem_usb_get_protocol_flag 
-0x4a48 018330 arg 1 ,regb 
-0x4a49 018331 fetch 1 ,mem_usb_set_protocol_value 
-0x4a4a 018332 beq 0 ,usb_get_report_protocol 
-0x4a4b 018333 beq 1 ,usb_get_boot_protocol 
-0x4a4c 018334 branch usb_send_zero_packet 
-:      018335 usb_get_report_protocol:
-0x4a4d 018336 branch usb_send_ones_packet 
-:      018337 usb_get_boot_protocol:
-0x4a4e 018338 branch usb_send_zero_packet 
-:      018343 usb0_request_clear_feature:
-0x4a4f 018344 fetch 1 ,mem_usb0_state 
-0x4a50 018345 bne dev_configured ,usb0_force_stall 
-0x4a51 018346 fetch 1 ,mem_usb_setup_blength 
-0x4a52 018347 bne 0 ,usb0_force_stall 
-0x4a53 018348 fetch 1 ,mem_usb_setup_blengthh 
-0x4a54 018349 bne 0 ,usb0_force_stall 
-0x4a55 018350 fetch 1 ,mem_usb_setup_bvalueh 
-0x4a56 018351 bne 0 ,usb0_force_stall 
-0x4a57 018352 fetch 1 ,mem_usb_setup_windex + 1 
-0x4a58 018353 bne 0 ,usb0_force_stall 
-0x4a59 018354 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4a5a 018355 beq out_device ,usb0_request_clear_feature_out_device 
-0x4a5b 018356 beq out_interface ,usb0_request_clear_feature_out_interface 
-0x4a5c 018357 beq out_endpoint ,usb0_request_clear_feature_out_endpoint 
-0x4a5d 018358 branch usb0_force_stall 
-:      018360 usb0_request_clear_feature_out_device:
-0x4a5e 018361 fetch 1 ,mem_usb_setup_bvalue 
-0x4a5f 018362 bne device_remote_wakeup ,usb0_force_stall 
-0x4a60 018363 hfetch 1 ,core_usb_config 
-0x4a61 018364 set0 7 ,pdata 
-0x4a62 018365 hstore 1 ,core_usb_config 
-0x4a63 018366 jam 0 ,mem_usb_remote_wakeup 
-0x4a64 018367 jam 1 ,mem_usb_clear_remote_wakeup 
-0x4a65 018368 branch usb0_reply_zerolen 
-:      018370 usb0_request_clear_feature_out_interface:
-0x4a66 018371 branch usb0_force_stall 
-:      018373 usb0_request_clear_feature_out_endpoint:
-0x4a67 018374 fetch 1 ,mem_usb_setup_bvalue 
-0x4a68 018375 bne endpoint_halt ,usb0_force_stall 
-0x4a69 018376 fetch 1 ,mem_usb_setup_windex 
-0x4a6a 018377 beq in_ep1 ,usb0_force_stall_ep1_in_off 
-0x4a6b 018378 beq in_ep2 ,usb0_force_stall_ep2_in_off 
-0x4a6c 018379 beq in_ep3 ,usb0_force_stall_ep3_in_off 
-0x4a6d 018380 and_into 0x7f ,pdata 
-0x4a6e 018381 beq 0x00 ,usb0_force_stall_ep0_in_off 
-0x4a6f 018382 branch usb0_force_stall 
-:      018384 usb0_force_stall_ep0_in_off:
-0x4a70 018385 jam 0 ,mem_usb_ep0_stall_status 
-0x4a71 018386 branch usb0_reply_zerolen 
-:      018387 usb0_force_stall_ep1_in_off:
-0x4a72 018388 jam 0 ,mem_usb_ep1_stall_status 
-:      018389 usb0_force_stall_ep1_in_off_reply:
-0x4a73 018390 jam 1 ,mem_usb_clear_halt 
-0x4a74 018391 branch usb0_reply_zerolen 
-:      018392 usb0_force_stall_ep2_in_off:
-0x4a75 018393 jam 0 ,mem_usb_ep2_stall_status 
-0x4a76 018394 branch usb0_force_stall_ep1_in_off_reply 
-:      018395 usb0_force_stall_ep3_in_off:
-0x4a77 018396 jam 0 ,mem_usb_ep3_stall_status 
-0x4a78 018397 branch usb0_force_stall_ep1_in_off_reply 
-:      018400 usb0_request_set_feature:
-0x4a79 018401 fetch 1 ,mem_usb_setup_blength 
-0x4a7a 018402 bne 0 ,usb0_force_stall 
-0x4a7b 018403 fetch 1 ,mem_usb_setup_blengthh 
-0x4a7c 018404 bne 0 ,usb0_force_stall 
-0x4a7d 018405 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4a7e 018406 beq out_device ,usb0_request_set_feature_out_device 
-0x4a7f 018407 beq out_interface ,usb0_request_set_feature_out_interface 
-0x4a80 018408 beq out_endpoint ,usb0_request_set_feature_out_endpoint 
-0x4a81 018409 branch usb0_force_stall 
-:      018411 usb0_request_set_feature_out_device:
-0x4a82 018412 fetch 1 ,mem_usb_setup_bvalue 
-0x4a83 018413 bne device_remote_wakeup ,usb0_force_stall 
-0x4a84 018414 hfetch 1 ,core_usb_config 
-0x4a85 018415 set1 7 ,pdata 
-0x4a86 018416 hstore 1 ,core_usb_config 
-0x4a87 018417 jam 1 ,mem_usb_remote_wakeup 
-0x4a88 018418 jam usb_sleep ,mem_usb_state 
-0x4a89 018419 jam 0 ,mem_usb_tx_win_enable 
-0x4a8a 018420 call usb0_reply_zerolen 
-:      018421 usb_wakeup_timer_reinit:
-0x4a8b 018422 call timer_reinit 
-0x4a8c 018423 setarg timer_wakeup_delay 
-0x4a8d 018424 arg timer_wakeup ,queue 
-0x4a8e 018425 branch timer_init 
-:      018427 usb0_request_set_feature_out_interface:
-0x4a8f 018428 branch usb0_force_stall 
-:      018430 usb0_request_set_feature_out_endpoint:
-0x4a90 018431 fetch 1 ,mem_usb_setup_bvalue 
-0x4a91 018432 bne endpoint_halt ,usb0_force_stall 
-0x4a92 018433 fetch 1 ,mem_usb_setup_bvalueh 
-0x4a93 018434 bne 0 ,usb0_force_stall 
-0x4a94 018435 fetch 1 ,mem_usb_setup_windex 
-0x4a95 018436 beq in_ep1 ,usb0_force_stall_ep1_in_on 
-0x4a96 018437 beq in_ep2 ,usb0_force_stall_ep2_in_on 
-0x4a97 018438 beq in_ep3 ,usb0_force_stall_ep3_in_on 
-0x4a98 018439 and_into 0x7f ,pdata 
-0x4a99 018440 beq 0x00 ,usb0_force_stall_ep0_in_on 
-0x4a9a 018441 branch usb0_force_stall 
-:      018443 usb0_force_stall_ep0_in_on:
-0x4a9b 018444 jam 1 ,mem_usb_ep0_stall_status 
-0x4a9c 018445 branch usb0_reply_zerolen 
-:      018446 usb0_force_stall_ep1_in_on:
-0x4a9d 018447 jam 1 ,mem_usb_ep1_stall_status 
-0x4a9e 018448 branch usb0_reply_zerolen 
-:      018449 usb0_force_stall_ep2_in_on:
-0x4a9f 018450 jam 1 ,mem_usb_ep2_stall_status 
-0x4aa0 018451 branch usb0_reply_zerolen 
-:      018452 usb0_force_stall_ep3_in_on:
-0x4aa1 018453 jam 1 ,mem_usb_ep3_stall_status 
-0x4aa2 018454 branch usb0_reply_zerolen 
-:      018457 usb0_request_set_address:
-0x4aa3 018458 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4aa4 018459 bne out_device ,usb0_force_stall 
-0x4aa5 018460 fetch 1 ,mem_usb_setup_windex 
-0x4aa6 018461 bne 0 ,usb0_force_stall 
-0x4aa7 018462 fetch 1 ,mem_usb_setup_windex + 1 
-0x4aa8 018463 bne 0 ,usb0_force_stall 
-0x4aa9 018464 fetch 1 ,mem_usb_setup_blength 
-0x4aaa 018465 bne 0 ,usb0_force_stall 
-0x4aab 018466 fetch 1 ,mem_usb_setup_blengthh 
-0x4aac 018467 bne 0 ,usb0_force_stall 
-0x4aad 018468 fetch 1 ,mem_usb_setup_bvalueh 
-0x4aae 018469 bne 0 ,usb0_force_stall 
-0x4aaf 018470 fetch 1 ,mem_usb_setup_bvalue 
-0x4ab0 018471 and_into 0x80 ,pdata 
-0x4ab1 018472 bne 0 ,usb0_force_stall 
-0x4ab2 018473 fetch 1 ,mem_usb_setup_bvalue 
-0x4ab3 018474 bne 0 ,usb_usb0_state_set_dev_addr 
-:      018475 usb_usb0_state_set_dev_default:
-0x4ab4 018476 jam dev_default ,mem_usb0_state 
-:      018477 usb0_request_set_wait_address:
-0x4ab5 018478 fetch 1 ,mem_usb_setup_bvalue 
-0x4ab6 018479 hstore 1 ,core_usb_addr 
-0x4ab7 018480 call usb0_reply_zerolen 
-0x4ab8 018481 jam 1 ,mem_usb_set_high_addr_flag 
-0x4ab9 018482 rtn 
-:      018483 usb_usb0_state_set_dev_addr:
-0x4aba 018484 jam dev_address ,mem_usb0_state 
-0x4abb 018485 branch usb0_request_set_wait_address 
-:      018488 usb0_request_set_configuration:
-0x4abc 018489 fetch 1 ,mem_usb0_state 
-0x4abd 018490 beq dev_default ,usb0_force_stall 
-0x4abe 018491 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4abf 018492 bne out_device ,usb0_force_stall 
-0x4ac0 018493 fetch 1 ,mem_usb_setup_windex 
-0x4ac1 018494 bne 0 ,usb0_force_stall 
-0x4ac2 018495 fetch 1 ,mem_usb_setup_windex + 1 
-0x4ac3 018496 bne 0 ,usb0_force_stall 
-0x4ac4 018497 fetch 1 ,mem_usb_setup_blength 
-0x4ac5 018498 bne 0 ,usb0_force_stall 
-0x4ac6 018499 fetch 1 ,mem_usb_setup_blengthh 
-0x4ac7 018500 bne 0 ,usb0_force_stall 
-0x4ac8 018501 fetch 1 ,mem_usb_setup_bvalue + 1 
-0x4ac9 018502 bne 0 ,usb0_force_stall 
-0x4aca 018503 fetch 1 ,mem_usb_setup_bvalue 
-0x4acb 018504 sub pdata ,usb_max_num_cfg ,null 
-0x4acc 018505 nbranch usb0_force_stall ,positive 
-0x4acd 018506 fetch 1 ,mem_usb0_state 
-0x4ace 018507 beq dev_address ,usb0_request_set_cfg_addr_state 
-0x4acf 018508 beq dev_configured ,usb0_request_set_cfg_cfg_state 
-0x4ad0 018509 branch usb0_force_stall 
-:      018511 usb0_request_set_cfg_addr_state:
-:      018512 usb0_request_set_cfg_cfg_state:
-0x4ad1 018513 fetch 1 ,mem_usb_setup_bvalue 
-0x4ad2 018514 beq 0 ,usb0_request_set_cfg_stay_addr_state 
-0x4ad3 018515 jam dev_configured ,mem_usb0_state 
-0x4ad4 018516 branch usb0_reply_zerolen 
-:      018517 usb0_request_set_cfg_stay_addr_state:
-0x4ad5 018518 jam dev_address ,mem_usb0_state 
-0x4ad6 018519 branch usb0_reply_zerolen 
-:      018522 usb0_request_set_interface:
-0x4ad7 018523 fetch 1 ,mem_usb0_state 
-0x4ad8 018524 bne dev_configured ,usb0_force_stall 
-0x4ad9 018525 fetch 1 ,mem_usb_setup_bmrequesttype 
-0x4ada 018526 bne out_interface ,usb0_force_stall 
-0x4adb 018527 fetch 1 ,mem_usb_setup_bvalue 
-0x4adc 018528 bne 0 ,usb0_force_stall 
-0x4add 018529 fetch 1 ,mem_usb_setup_bvalueh 
-0x4ade 018530 bne 0 ,usb0_force_stall 
-0x4adf 018531 fetch 1 ,mem_usb_setup_blength 
-0x4ae0 018532 bne 0 ,usb0_force_stall 
-0x4ae1 018533 fetch 1 ,mem_usb_setup_blengthh 
-0x4ae2 018534 bne 0 ,usb0_force_stall 
-0x4ae3 018535 fetch 1 ,mem_usb_setup_windex 
-0x4ae4 018536 bne 0 ,usb0_force_stall 
-0x4ae5 018537 fetch 1 ,mem_usb_setup_windex + 1 
-0x4ae6 018538 bne 0 ,usb0_force_stall 
-0x4ae7 018539 branch usb0_reply_zerolen 
-:      018542 usb_set_idle:
-0x4ae8 018543 jam 1 ,mem_usb_idle_flag 
-0x4ae9 018544 fetch 1 ,mem_usb_setup_bvalueh 
-0x4aea 018545 store 1 ,mem_usb_idle_rate 
-0x4aeb 018546 fetch 1 ,mem_usb_setup_windex 
-0x4aec 018547 sub pdata ,1 ,null 
-0x4aed 018548 call usb_clear_remote_wakeup_set0 ,zero 
-0x4aee 018549 fetch 1 ,mem_usb_state 
-0x4aef 018550 bne usb_resume ,usb0_reply_zerolen 
-0x4af0 018551 jam usb_connected ,mem_usb_state 
-0x4af1 018552 call usb0_reply_zerolen 
-0x4af2 018553 nop 30000 
-0x4af3 018554 nop 30000 
-0x4af4 018555 rtn 
-:      018556 usb_clear_remote_wakeup_set0:
-0x4af5 018557 jam 1 ,mem_usb_device_enumeration_endflag 
-0x4af6 018558 jam 0 ,mem_usb_clear_remote_wakeup 
-0x4af7 018559 jam usb_resume ,mem_usb_state 
-0x4af8 018560 rtn 
-:      018563 usb_set_report:
-0x4af9 018564 jam 1 ,mem_usb0_get_set_report 
-0x4afa 018565 call usb_set_report_resume_judge 
-0x4afb 018566 fetch 2 ,mem_usb_setup_bvalue 
-0x4afc 018567 store 2 ,mem_usb_setup_bvalue_temp 
-0x4afd 018568 fetch 1 ,mem_usb_setup_blength 
-0x4afe 018569 iforce loopcnt 
-0x4aff 018570 arg mem_usb0_setup ,contr 
-0x4b00 018571 arg mem_usb0_set_report_data ,contw 
-0x4b01 018572 call memcpy 
-0x4b02 018573 branch usb0_reply_zerolen 
-:      018575 usb_set_report_resume_judge:
-0x4b03 018576 fetch 2 ,mem_usb_setup_bvalue 
-0x4b04 018577 arg pc_set_report_bvalue ,temp 
-0x4b05 018578 isub temp ,null 
-0x4b06 018579 nrtn zero 
-0x4b07 018580 fetch 2 ,mem_usb_setup_windex 
-0x4b08 018581 arg pc_set_report_windex ,temp 
-0x4b09 018582 isub temp ,null 
-0x4b0a 018583 nrtn zero 
-0x4b0b 018584 fetch 2 ,mem_usb_setup_blength 
-0x4b0c 018585 arg pc_set_report_blength ,temp 
-0x4b0d 018586 isub temp ,null 
-0x4b0e 018587 nrtn zero 
-0x4b0f 018588 jam 1 ,mem_usb_tx_win_enable 
-0x4b10 018589 rtn 
-:      018592 usb_set_protocol_req:
-0x4b11 018593 fetch 1 ,mem_usb_setup_blength 
-0x4b12 018594 bne 0 ,usb0_force_stall 
-0x4b13 018595 fetch 1 ,mem_usb_setup_bvalue 
-0x4b14 018596 beq boot_protocol ,usb_set_boot_protocol 
-0x4b15 018597 beq report_protocol ,usb_set_report_protocol 
-0x4b16 018598 branch usb0_force_stall 
-:      018599 usb_set_boot_protocol:
-0x4b17 018600 jam 0 ,mem_usb_set_protocol_status 
-0x4b18 018601 jam 1 ,mem_usb_set_protocol_value 
-0x4b19 018602 branch usb0_reply_zerolen 
-:      018603 usb_set_report_protocol:
-0x4b1a 018604 jam 1 ,mem_usb_tx_mac_enable 
-0x4b1b 018605 jam 1 ,mem_usb_set_protocol_status 
-0x4b1c 018606 jam 0 ,mem_usb_set_protocol_value 
-0x4b1d 018607 branch usb0_reply_zerolen 
-:      018610 usb0_respond_length:
-0x4b1e 018611 ifetch 1 ,rega 
-0x4b1f 018612 iforce regb 
-0x4b20 018613 increase 1 ,rega 
-:      018615 usb0_respond:
-0x4b21 018616 bpatch patch1f_2 ,mem_patch1f 
-0x4b22 018617 bmark0 mark_isstr ,usb0_respond0 
-0x4b23 018618 add regb ,1 ,pdata 
-0x4b24 018619 lshift pdata ,pdata 
-0x4b25 018620 hstore 1 ,core_usb_dfifo0 
-0x4b26 018621 jam 3 ,core_usb_dfifo0 
-0x4b27 018622 fetch 1 ,mem_usb_setup_blength 
-0x4b28 018623 increase -2 ,pdata 
-0x4b29 018624 rshift pdata ,pdata 
-0x4b2a 018625 store 1 ,mem_usb_setup_blength 
-0x4b2b 018626 beq 0 ,usb_no_respond_data 
-:      018627 usb0_respond0:
-0x4b2c 018628 fetch 2 ,mem_usb_setup_blength 
-0x4b2d 018629 isub regb ,null 
-0x4b2e 018630 branch usb0_respond1 ,positive 
-0x4b2f 018631 copy pdata ,regb 
-:      018632 usb0_respond1:
-0x4b30 018633 deposit rega 
-0x4b31 018634 store 2 ,mem_bufptr 
-0x4b32 018635 deposit regb 
-0x4b33 018636 store 1 ,mem_remain 
-0x4b34 018637 branch usb0_tx 
-:      018639 usb_no_respond_data:
-0x4b35 018640 arg 0 ,queue 
-0x4b36 018641 branch usb_trig 
-:      018644 usb0_tx:
-0x4b37 018645 bpatch patch1f_3 ,mem_patch1f 
-0x4b38 018646 fetch 1 ,mem_remain 
-0x4b39 018647 rtn blank 
-0x4b3a 018648 copy pdata ,loopcnt 
-0x4b3b 018649 sub pdata ,ep0_packet_size ,null 
-0x4b3c 018650 branch usb0_tx_info ,positive 
-0x4b3d 018651 arg ep0_packet_size ,loopcnt 
-:      018652 usb0_tx_info:
-0x4b3e 018653 fetch 1 ,mem_remain 
-0x4b3f 018654 isub loopcnt ,pdata 
-0x4b40 018655 store 1 ,mem_remain 
-0x4b41 018656 fetch 2 ,mem_bufptr 
-0x4b42 018657 copy pdata ,contr 
-:      018658 usb0_tx0:
-0x4b43 018659 ifetch 1 ,contr 
-0x4b44 018660 hstore 1 ,core_usb_dfifo0 
-0x4b45 018661 bmark0 mark_isstr ,usb0_tx1 
-0x4b46 018662 jam 0 ,core_usb_dfifo0 
-:      018663 usb0_tx1:
-0x4b47 018664 loop usb0_tx0 
-0x4b48 018665 copy contr ,pdata 
-0x4b49 018666 store 2 ,mem_bufptr 
-0x4b4a 018667 arg 0 ,queue 
-0x4b4b 018668 call usb_trig 
-0x4b4c 018669 fetch 1 ,mem_remain 
-0x4b4d 018670 nrtn blank 
-0x4b4e 018671 fetch 1 ,mem_usb_state 
-0x4b4f 018672 rtnne usb_got_report_req 
-0x4b50 018673 jam usb_connected ,mem_usb_state 
-0x4b51 018674 rtn 
-:      018677 usb_tx_ep1:
-0x4b52 018678 arg core_usb_dfifo1 ,rega 
-0x4b53 018679 arg 1 ,queue 
-:      018680 usb_tx_loop:
-0x4b54 018681 ifetch 1 ,contr 
-0x4b55 018682 istore 1 ,rega 
-0x4b56 018683 loop usb_tx_loop 
-:      018684 usb_trig:
-0x4b57 018685 setarg 0 
-0x4b58 018686 qset1 pdata 
-0x4b59 018687 hstore 1 ,core_usb_trig 
-0x4b5a 018688 fetcht 1 ,mem_usb_tx_wait 
-0x4b5b 018689 ior temp ,pdata 
-0x4b5c 018690 store 1 ,mem_usb_tx_wait 
-0x4b5d 018691 rtn 
-:      018693 usb_tx_ep2:
-0x4b5e 018694 arg 2 ,queue 
-0x4b5f 018695 arg core_usb_dfifo2 ,rega 
-0x4b60 018696 branch usb_tx_loop 
-:      018698 usb_tx:
-0x4b61 018699 bpatch patch1f_4 ,mem_patch1f 
-0x4b62 018700 fetch 1 ,mem_usb_tx_enable 
-0x4b63 018701 rtn blank 
-0x4b64 018702 fetch 1 ,mem_usb_tx_wait 
-0x4b65 018703 nbranch usb_inwake_state_tx_dispose ,blank 
-0x4b66 018704 fetch 1 ,mem_usb_device_enumeration_endflag 
-0x4b67 018705 branch usb_tx_fifo_release ,blank 
-0x4b68 018706 fetch 1 ,mem_usb_state 
-0x4b69 018707 beq usb_sleep ,usb_windows_wakeup 
-0x4b6a 018708 bne usb_connected ,usb_tx_fifo_release 
-0x4b6b 018709 fetch 1 ,mem_usb_clear_remote_wakeup 
-0x4b6c 018710 nbranch usb_tx_fifo_release ,blank 
-0x4b6d 018711 call usb_tx_data_ep1 
-0x4b6e 018712 branch usb_tx_data_ep2 
-:      018714 usb_tx_data_ep1:
-0x4b6f 018715 fetch 1 ,mem_usb_tx_enable 
-0x4b70 018716 rtnbit0 1 
-0x4b71 018717 fetch 1 ,mem_usb_tx_wait 
-0x4b72 018718 rtnbit1 1 
-0x4b73 018719 fetch 1 ,mem_usb_tx_enable 
-0x4b74 018720 set0 1 ,pdata 
-0x4b75 018721 store 1 ,mem_usb_tx_enable 
-0x4b76 018722 fetch 1 ,mem_usb_ep1_data 
-0x4b77 018723 rtn blank 
-0x4b78 018724 beq usb_ep1_kb ,usb_tx_kb_normal_data 
-0x4b79 018725 branch assert 
-:      018727 usb_tx_data_ep2:
-0x4b7a 018728 fetch 1 ,mem_usb_tx_enable 
-0x4b7b 018729 rtnbit0 2 
-0x4b7c 018730 fetch 1 ,mem_usb_tx_wait 
-0x4b7d 018731 rtnbit1 2 
-0x4b7e 018732 fetch 1 ,mem_usb_tx_enable 
-0x4b7f 018733 set0 2 ,pdata 
-0x4b80 018734 store 1 ,mem_usb_tx_enable 
-0x4b81 018735 fetch 1 ,mem_usb_ep2_data 
-0x4b82 018736 rtn blank 
-0x4b83 018737 beq usb_ep2_ms ,usb_tx_ms_data 
-0x4b84 018738 beq usb_ep2_multikey ,usb_tx_kb_multikey_data 
-0x4b85 018739 branch assert 
-:      018741 usb_tx_fifo_release:
-0x4b86 018743 arg mem_usb_mouse_data ,contw 
-0x4b87 018744 arg 6 ,loopcnt 
-0x4b88 018745 branch memset0 
-:      018747 usb_tx_ms_data:
-0x4b89 018748 fetch 1 ,mem_usb_idle_flag 
-0x4b8a 018749 fetcht 1 ,mem_usb_get_protocol_flag 
-0x4b8b 018750 iand temp ,pdata 
-0x4b8c 018751 branch usb_tx_ms_data_normal_mode ,blank 
-0x4b8d 018752 fetcht 1 ,mem_usb_set_protocol_status 
-0x4b8e 018753 iadd temp ,pdata 
-0x4b8f 018754 beq mac_boot_mode ,usb_tx_ms_data_mac_boot_mode 
-0x4b90 018755 branch usb_tx_ms_data_normal_mode 
-:      018757 usb_tx_ms_data_mac_boot_mode:
-0x4b91 018758 jam 0 ,mem_usb_ep2_data 
-:      018759 usb_tx_ms_data_mac_boot_regroup:
-0x4b92 018760 fetch 1 ,mem_usb_mouse_data + 1 
-0x4b93 018761 beq r_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
-0x4b94 018762 beq lr_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
-0x4b95 018763 fetch 1 ,mem_usb_mouse_data + 1 
-0x4b96 018764 store 1 ,mem_usb_mouse_data 
-0x4b97 018765 fetch 1 ,mem_usb_mouse_data + 2 
-0x4b98 018766 istore 1 ,contw 
-0x4b99 018767 fetch 1 ,mem_usb_mouse_data + 4 
-0x4b9a 018768 istore 1 ,contw 
-0x4b9b 018769 fetch 1 ,mem_usb_mouse_data + 6 
-0x4b9c 018770 istore 1 ,contw 
-0x4b9d 018771 arg 4 ,loopcnt 
-0x4b9e 018772 arg mem_usb_mouse_data ,contr 
-0x4b9f 018773 branch usb_tx_ep2 
-:      018775 usb_tx_ms_data_normal_mode:
-0x4ba0 018776 jam 0 ,mem_usb_ep2_data 
-:      018777 usb_tx_mac_boot_ms_regroup_r_or_lrkey:
-0x4ba1 018778 arg 8 ,loopcnt 
-0x4ba2 018779 arg mem_usb_mouse_data ,contr 
-0x4ba3 018780 branch usb_tx_ep2 
-:      018782 usb_tx_kb_multikey_data:
-0x4ba4 018783 jam 0 ,mem_usb_ep2_data 
-0x4ba5 018784 arg 3 ,loopcnt 
-0x4ba6 018785 arg mem_usb_kb_multikey ,contr 
-0x4ba7 018786 branch usb_tx_ep2 
-:      018788 usb_tx_kb_normal_data:
-0x4ba8 018789 jam 0 ,mem_usb_ep1_data 
-0x4ba9 018790 arg 8 ,loopcnt 
-0x4baa 018791 arg mem_usb_kb_data ,contr 
-0x4bab 018792 branch usb_tx_ep1 
-:      018794 usb_inwake_state_tx_dispose:
-0x4bac 018795 fetch 1 ,mem_usb_state 
-0x4bad 018796 beq usb_sleep ,usb_clear_tx_wait 
-0x4bae 018797 beq usb_connected ,usb_mac_wakeup_trig 
-0x4baf 018798 rtn 
-:      018799 usb_clear_tx_wait:
-0x4bb0 018800 jam 0 ,mem_usb_tx_wait 
-0x4bb1 018801 rtn 
-:      018802 usb_mac_wakeup_trig:
-0x4bb2 018803 hfetch 1 ,core_usb_config 
-0x4bb3 018804 set1 7 ,pdata 
-0x4bb4 018805 hstore 1 ,core_usb_config 
-0x4bb5 018806 jam 1 ,mem_usb_mac_wakeup_trig 
-0x4bb6 018807 rtn 
-:      018809 usb_mac_wakeup_judge:
-0x4bb7 018810 fetch 1 ,mem_usb_state 
-0x4bb8 018811 rtneq usb_sleep 
-0x4bb9 018812 beq usb_connected ,usb_mac_wakeup 
-0x4bba 018813 rtn 
-:      018814 usb_mac_wakeup:
-0x4bbb 018815 fetch 1 ,mem_usb_mac_wakeup_trig 
-0x4bbc 018816 rtn blank 
-0x4bbd 018817 jam 1 ,mem_usb_wakestate_onetime_flag 
-0x4bbe 018818 branch usb_wakeup 
-:      018820 usb_windows_wakeup:
-0x4bbf 018821 arg timer_wakeup ,queue 
-0x4bc0 018822 call timer_check 
-0x4bc1 018823 nrtn blank 
-:      018824 usb_wakeup:
-0x4bc2 018825 hfetch 1 ,core_usb_config 
-0x4bc3 018826 rtnbit0 7 
-0x4bc4 018827 jam 0xfc ,core_usb_config 
-0x4bc5 018828 nop 30000 
-0x4bc6 018829 jam 0x3c ,core_usb_config 
-0x4bc7 018830 rtn 
-:      018837 hci_rx_h4:
-0x4bc8 018838 bpatch patch1f_5 ,mem_patch1f 
-0x4bc9 018839 fetch 1 ,mem_hci_cmd 
-0x4bca 018840 nrtn blank 
-:      018841 hci_rx_h4_1:
-0x4bcb 018842 call hci_h4_parse_packet 
-0x4bcc 018843 ncall h4_rx_discard_packet ,user 
-0x4bcd 018844 rtn 
-:      018846 hci_h4_parse_packet:
-0x4bce 018847 bpatch patch1f_6 ,mem_patch1f 
-0x4bcf 018848 copy contru ,rega 
-0x4bd0 018849 arg 4 ,temp 
-0x4bd1 018850 ifetch 1 ,contru 
-0x4bd2 018851 beq hci_h4_type_cmd ,hci_h4_parse_packet_wait_len 
-0x4bd3 018852 increase 1 ,temp 
-0x4bd4 018853 beq hci_h4_type_acl ,hci_h4_parse_packet_wait_len 
-0x4bd5 018854 copy contru ,pdata 
-0x4bd6 018855 hstore 2 ,core_uart_rrptr 
-0x4bd7 018856 rtn 
-:      018857 hci_h4_parse_packet_wait_len:
-0x4bd8 018858 hfetch 2 ,core_uart_rxitems 
-0x4bd9 018859 isub temp ,null 
-0x4bda 018860 nbranch hci_h4_parse_packet_wait_len ,positive 
-0x4bdb 018862 disable user 
-0x4bdc 018863 copy rega ,contru 
-0x4bdd 018864 call h4_get_rx_payload_len 
-0x4bde 018865 iadd temp ,temp 
-:      018866 hci_h4_parse_packet_wait:
-0x4bdf 018867 hfetch 2 ,core_uart_rxitems 
-0x4be0 018868 isub temp ,null 
-0x4be1 018869 nbranch hci_h4_parse_packet_wait ,positive 
-0x4be2 018870 copy rega ,contru 
-0x4be3 018871 ifetch 1 ,contru 
-0x4be4 018872 beq hci_h4_type_cmd ,process_hci_cmd 
-0x4be5 018873 branch assert 
-:      018875 h4_rx_discard_packet:
-0x4be6 018876 bpatch patch1f_7 ,mem_patch1f 
-0x4be7 018877 hfetch 2 ,core_uart_rrptr 
-0x4be8 018878 iforce contru 
-0x4be9 018879 call h4_get_rx_payload_len 
-0x4bea 018880 iadd contru ,contru 
-0x4beb 018881 deposit contru 
-0x4bec 018882 hstore 2 ,core_uart_rrptr 
-0x4bed 018883 rtn 
-:      018888 h4_get_rx_payload_len:
-0x4bee 018889 ifetch 1 ,contru 
-0x4bef 018890 increase 2 ,contru 
-0x4bf0 018891 beq hci_h4_type_acl ,h4_get_rx_payload_len_acl 
-0x4bf1 018892 ifetch 1 ,contru 
-0x4bf2 018893 rtn 
-:      018894 h4_get_rx_payload_len_acl:
-0x4bf3 018895 ifetch 2 ,contru 
-0x4bf4 018896 rtn 
-:      018898 h4_get_tx_ptr:
-0x4bf5 018899 hfetch 2 ,core_uart_twptr 
-0x4bf6 018900 increase -5 ,contwu 
-0x4bf7 018901 iadd contwu ,contwu 
-0x4bf8 018902 rtn 
-:      018904 h4_send_packet_event:
-0x4bf9 018905 arg hci_h4_type_event ,temp 
-0x4bfa 018906 branch h4_send_packet 
-:      018907 h4_send_packet_acl:
-0x4bfb 018908 arg hci_h4_type_acl ,temp 
-:      018909 h4_send_packet:
-0x4bfc 018910 bpatchx patch20_0 ,mem_patch20 
-0x4bfd 018911 increase 1 ,loopcnt 
-0x4bfe 018912 hfetch 2 ,core_uart_twptr 
-0x4bff 018913 copy pdata ,contwu 
-0x4c00 018914 copy loopcnt ,pdata 
-0x4c01 018915 istoret 1 ,contwu 
-0x4c02 018916 increase -1 ,pdata 
-0x4c03 018917 iadd contwu ,contwu 
-0x4c04 018918 copy contwu ,pdata 
-0x4c05 018919 store 2 ,mem_hci_acl_tx_trigger_wptr 
-0x4c06 018920 copy temp ,pdata 
-0x4c07 018921 rtneq hci_h4_type_acl 
-0x4c08 018922 fetch 2 ,mem_hci_acl_tx_trigger_wptr 
-0x4c09 018923 hstore 2 ,core_uart_twptr 
-0x4c0a 018924 branch h4_send_acl_trigger_clear 
-:      018927 h4_send_acl_trigger_clear:
-0x4c0b 018928 setarg 0 
-0x4c0c 018929 store 2 ,mem_hci_acl_tx_trigger_wptr 
-0x4c0d 018930 rtn 
-:      018937 hci_init:
-0x4c0e 018938 rtn wake 
-0x4c0f 018939 setarg hci_idle_dispatch 
-0x4c10 018940 store 2 ,mem_cb_idle_process 
-0x4c11 018942 setarg uart_baud_115200 
-0x4c12 018943 store uart_baud_len ,mem_baud 
-:      018944 hci_lpm_init:
-0x4c13 018945 setarg mem_h5rx_buf 
-0x4c14 018946 hstore 2 ,core_uart_rsaddr 
-0x4c15 018947 setarg mem_h5rx_buf_end 
-0x4c16 018948 hstore 2 ,core_uart_readdr 
-0x4c17 018949 setarg mem_h5tx_buf 
-0x4c18 018950 hstore 2 ,core_uart_tsaddr 
-0x4c19 018951 call hci_sel_init 
-:      018952 hci_reinit:
-0x4c1a 018953 jam 0x0 ,core_uart_ctrl 
-0x4c1b 018954 setarg mem_h5tx_buf 
-0x4c1c 018955 hstore 2 ,core_uart_twptr 
-0x4c1d 018956 hstore 2 ,core_uart_trptrp 
-0x4c1e 018957 setarg mem_h5rx_buf 
-0x4c1f 018958 hstore 2 ,core_uart_rrptr 
-0x4c20 018959 store 2 ,mem_h5rx_rptr 
-:      018960 hci_init_common:
-0x4c21 018961 hfetch 2 ,core_clkoff 
-0x4c22 018962 set0 clock_off_uart ,pdata 
-0x4c23 018963 hstore 2 ,core_clkoff 
-0x4c24 018964 call uart_set_baud_by_mem 
-0x4c25 018965 jam uartclk_dpll ,core_uart_clksel 
-0x4c26 018966 jam uart_ctrl_h4 ,core_uart_ctrl 
-0x4c27 018967 rtn 
-:      018969 hci_sel_init:
-0x4c28 018970 setarg mem_h5tx_buf_end 
-0x4c29 018971 hstore 2 ,core_uart_teaddr 
-0x4c2a 018972 hfetch 1 ,core_gpio_sel1 
-0x4c2b 018973 or_into 0x07 ,pdata 
-0x4c2c 018974 hstore 1 ,core_gpio_sel1 
-0x4c2d 018975 rtn 
-:      018978 hci_rx_packet:
-0x4c2e 018979 bpatchx patch20_1 ,mem_patch20 
-0x4c2f 018980 hfetch 1 ,core_uart_status 
-0x4c30 018981 iforce regb 
-0x4c31 018982 bbit0 uart_status_rx_fifo_empty ,hci_rx_packet_cont 
-0x4c32 018983 hfetch 2 ,core_uart_rxitems 
-0x4c33 018984 iforce regc 
-0x4c34 018985 arg 0x44f ,temp 
-0x4c35 018986 isub temp ,null 
-0x4c36 018987 nrtn zero 
-:      018988 hci_rx_packet_cont:
-0x4c37 018989 hfetch 2 ,core_uart_rrptr 
-0x4c38 018990 iforce contru 
-0x4c39 018991 branch hci_rx_h4 
-:      018993 uart_send_byte:
-0x4c3a 018994 hfetcht 1 ,core_uart_status 
-0x4c3b 018995 isolate1 6 ,temp 
-0x4c3c 018996 branch uart_send_byte ,true 
-0x4c3d 018997 hstore 1 ,core_uart_txd 
-0x4c3e 018998 rtn 
-:      019000 process_hci_cmd:
-0x4c3f 019001 bpatchx patch20_2 ,mem_patch20 
-0x4c40 019002 fetch 1 ,mem_hci_cmd 
-0x4c41 019003 branch process_hci_cmd_cont ,blank 
-0x4c42 019004 enable user 
-0x4c43 019005 rtn 
-:      019006 process_hci_cmd_cont:
-0x4c44 019007 ifetch 2 ,contru 
-0x4c45 019008 iforce alarm 
-0x4c46 019009 iforce queue 
-0x4c47 019010 ifetch 1 ,contru 
-0x4c48 019011 iforce temp 
-0x4c49 019012 rshift2 alarm ,pdata 
-0x4c4a 019013 rshift8 pdata ,pdata 
-0x4c4b 019014 beq hci_ogf_vendor_specific ,phci_grp_vendor_specific 
-0x4c4c 019015 rtn 
-:      019018 phci_grp_vendor_specific:
-0x4c4d 019019 bpatchx patch20_3 ,mem_patch20 
-0x4c4e 019020 deposit queue 
-0x4c4f 019021 beq hci_vendor_cmd_reset ,hci_normal_reply 
-0x4c50 019022 beq hci_vendor_cmd_chipid ,phci_grp_vendor_chipid 
-0x4c51 019023 beq hci_vendor_cmd_baud ,phci_grp_vendor_baud 
-0x4c52 019024 beq hci_vendor_cmd_patch ,phci_grp_vendor_patch 
-0x4c53 019025 beq hci_vendor_cmd_patch_done ,phci_grp_vendor_done 
-0x4c54 019026 beq hci_vendor_cmd_echo ,hci_normal_reply 
-0x4c55 019027 beq hci_vendor_cmd_bdaddr ,phci_grp_vendor_bdaddr 
-0x4c56 019028 beq hci_vendor_cmd_enter_lpm ,phci_grp_vendor_enter_lpm 
-0x4c57 019030 beq hci_vendor_cmd_mem ,phci_grp_vendor_mem 
-0x4c58 019031 beq hci_vendor_cmd_eep ,phci_grp_vendor_eep 
-0x4c59 019032 beq hci_vendor_cmd_patch_sec_init ,phci_grp_vendor_patch_sec_init 
-0x4c5a 019033 beq hci_vendor_cmd_patch_sec ,phci_grp_vendor_patch_sec 
-0x4c5b 019034 branch hci_normal_reply 
-:      019036 phci_grp_vendor_enter_lpm:
-0x4c5c 019037 call hci_normal_reply 
-0x4c5d 019038 call wait_uarttx 
-0x4c5e 019039 call gpio_pu_uart_tx 
-:      019040 hci_enter_lpm:
-0x4c5f 019041 call app_put_lpm_wake_lock 
-0x4c60 019042 call app_l2cap_flow_control_enable 
-0x4c61 019043 branch gpio_rx_config_input_with_pu 
-:      019045 hci_exit_lpm:
-0x4c62 019046 jam hci_rx_ready ,mem_hci_lt_rx_state 
-0x4c63 019047 call app_get_lpm_wake_lock 
-0x4c64 019048 call hci_lpm_init 
-0x4c65 019049 branch app_l2cap_flow_control_disable 
-:      019051 phci_grp_vendor_chipid:
-0x4c66 019052 call hci_get_cmd_complete_ptr 
-0x4c67 019053 hfetch 2 ,core_chipid 
-0x4c68 019054 istore 2 ,contwu 
-0x4c69 019055 force 6 ,loopcnt 
-0x4c6a 019056 branch hci_command_complete 
-:      019058 phci_grp_vendor_baud:
-0x4c6b 019059 ifetch 2 ,contru 
-0x4c6c 019060 store 2 ,mem_baud 
-0x4c6d 019061 hstore 2 ,core_uart_baud 
-0x4c6e 019062 rtn 
-:      019065 phci_grp_vendor_patch_common:
-0x4c6f 019067 ifetch 1 ,contru 
-0x4c70 019068 copy pdata ,temp 
-0x4c71 019069 hstore 1 ,core_ucode_low 
-0x4c72 019070 ifetch 1 ,contru 
-0x4c73 019071 iadd temp ,temp 
-0x4c74 019072 set1 7 ,pdata 
-0x4c75 019073 hstore 1 ,core_ucode_ctrl 
-0x4c76 019074 ifetch 1 ,contru 
-0x4c77 019075 iadd temp ,temp 
-0x4c78 019076 copy pdata ,loopcnt 
-0x4c79 019077 rtn 
-:      019079 phci_grp_vendor_patch:
-0x4c7a 019080 bmark1 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
-0x4c7b 019081 call phci_grp_vendor_patch_common 
-:      019082 phci_grp_vendor_patch_loop:
-0x4c7c 019083 ifetch 1 ,contru 
-0x4c7d 019084 hstore 1 ,core_ucode_data 
-0x4c7e 019085 iadd temp ,temp 
-0x4c7f 019086 loop phci_grp_vendor_patch_loop 
-:      019087 phci_grp_vendor_patch_check_sum:
-0x4c80 019088 and temp ,0xff ,temp 
-0x4c81 019089 ifetch 1 ,contru 
-0x4c82 019090 isub temp ,null 
-0x4c83 019091 nbranch phci_grp_vendor_patch_bad ,zero 
-0x4c84 019092 branch hci_normal_reply 
-:      019095 phci_grp_vendor_patch_sec:
-0x4c85 019096 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
-0x4c86 019097 call phci_grp_vendor_patch_common 
-0x4c87 019098 store 8 ,mem_pdatatemp 
-:      019099 phci_grp_vendor_patch_sec_loop:
-0x4c88 019100 call do_aes_cbc 
-0x4c89 019101 arg 16 ,loopcnt 
-0x4c8a 019102 arg mem_temp_block0 ,contw 
-0x4c8b 019103 call load_uart_sum_loop 
-0x4c8c 019104 storet 8 ,mem_temp 
-0x4c8d 019105 arg mem_temp_block2 ,contw 
-0x4c8e 019106 call store_aes_result 
-0x4c8f 019107 arg mem_temp_block2 ,rega 
-0x4c90 019108 arg mem_temp_block0 ,regb 
-0x4c91 019109 arg mem_temp_block3 ,contw 
-0x4c92 019110 call xor16 
-0x4c93 019111 arg 16 ,loopcnt 
-0x4c94 019112 arg mem_temp_block3 ,contr 
-0x4c95 019113 call load_ucode_only_loop 
-0x4c96 019114 fetcht 8 ,mem_temp 
-0x4c97 019115 fetch 8 ,mem_pdatatemp 
-0x4c98 019116 increase -16 ,pdata 
-0x4c99 019117 store 8 ,mem_pdatatemp 
-0x4c9a 019118 nbranch phci_grp_vendor_patch_sec_loop ,blank 
-0x4c9b 019119 branch phci_grp_vendor_patch_check_sum 
-:      019121 load_ucode_only_loop:
-0x4c9c 019122 ifetch 1 ,contr 
-0x4c9d 019123 hstore 1 ,core_ucode_data 
-0x4c9e 019124 loop load_ucode_only_loop 
-0x4c9f 019125 rtn 
-:      019127 load_uart_sum_loop:
-0x4ca0 019128 ifetch 1 ,contru 
-0x4ca1 019129 istore 1 ,contw 
-0x4ca2 019130 iadd temp ,temp 
-0x4ca3 019131 loop load_uart_sum_loop 
-0x4ca4 019132 rtn 
-:      019134 phci_grp_vendor_patch_sec_init:
-0x4ca5 019135 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
-0x4ca6 019136 arg 0 ,temp 
-0x4ca7 019137 arg 16 ,loopcnt 
-0x4ca8 019138 arg mem_temp_block0 ,contw 
-0x4ca9 019139 call load_uart_sum_loop 
-0x4caa 019140 hfetch 1 ,core_gpio_key2 
-0x4cab 019141 and_into 0xfd ,pdata 
-0x4cac 019142 hstore 1 ,core_gpio_key2 
-0x4cad 019143 arg mem_temp_block0 ,contr 
-0x4cae 019144 arg 16 ,loopcnt 
-0x4caf 019145 call aes_load_data 
-0x4cb0 019146 call aes_init 
-0x4cb1 019147 call aes_clear_data 
-0x4cb2 019148 branch phci_grp_vendor_patch_check_sum 
-:      019151 phci_grp_vendor_done:
-0x4cb3 019152 arg 0x20 ,loopcnt 
-0x4cb4 019153 arg mem_patch00 ,contw 
-0x4cb5 019154 arg 0 ,temp 
-:      019155 phci_grp_vendor_done_loop:
-0x4cb6 019156 ifetch 1 ,contru 
-0x4cb7 019157 istore 1 ,contw 
-0x4cb8 019158 iadd temp ,temp 
-0x4cb9 019159 loop phci_grp_vendor_done_loop 
-0x4cba 019160 and temp ,0xff ,temp 
-0x4cbb 019161 ifetch 1 ,contru 
-0x4cbc 019162 isub temp ,null 
-0x4cbd 019163 nbranch phci_grp_vendor_patch_bad ,zero 
-0x4cbe 019164 jam 0 ,core_ucode_ctrl 
-0x4cbf 019165 call hci_normal_reply 
-0x4cc0 019166 call h4_rx_discard_packet 
-0x4cc1 019167 call clear_key_buf 
-0x4cc2 019168 call wait_uarttx 
-0x4cc3 019169 branch soft_reset 
-:      019171 phci_grp_vendor_patch_bad:
-0x4cc4 019172 jam 0 ,core_ucode_ctrl 
-0x4cc5 019173 branch start 
-:      019175 phci_grp_vendor_bdaddr:
-0x4cc6 019176 ifetch 6 ,contru 
-0x4cc7 019177 store 6 ,mem_lap 
-0x4cc8 019178 branch hci_normal_reply 
-:      019181 phci_grp_vendor_mem:
-0x4cc9 019182 ifetch 1 ,contru 
-0x4cca 019183 store 1 ,mem_hci_curr_len 
-0x4ccb 019184 copy pdata ,loopcnt 
-0x4ccc 019185 ifetch 2 ,contru 
-0x4ccd 019186 store 2 ,mem_hci_curr_target 
-0x4cce 019187 copy pdata ,contw 
-0x4ccf 019188 call uart_copy_rx_bytes 
-0x4cd0 019189 branch hci_normal_reply 
-:      019192 phci_grp_vendor_eep:
-0x4cd1 019193 ifetch 1 ,contru 
-0x4cd2 019194 store 1 ,mem_hci_curr_len 
-0x4cd3 019195 copy pdata ,loopcnt 
-0x4cd4 019196 ifetch 2 ,contru 
-0x4cd5 019197 store 2 ,mem_hci_curr_target 
-0x4cd6 019198 arg mem_l2cap_rxbuff1 ,contw 
-0x4cd7 019199 call uart_copy_rx_bytes 
-0x4cd8 019200 fetcht 1 ,mem_hci_curr_len 
-0x4cd9 019201 arg mem_l2cap_rxbuff1 ,rega 
-0x4cda 019202 fetch 2 ,mem_hci_curr_target 
-0x4cdb 019203 branch iicd_write_ota_data 
-:      019208 hci_normal_reply:
-0x4cdc 019209 force 4 ,loopcnt 
-:      019210 hci_command_complete:
-0x4cdd 019211 call hci_get_payload_ptr 
-0x4cde 019212 force 0x1 ,pdata 
-0x4cdf 019213 istore 1 ,contwu 
-0x4ce0 019214 deposit alarm 
-0x4ce1 019215 istore 3 ,contwu 
-0x4ce2 019216 force hci_event_command_complete ,queue 
-:      019217 hci_send_event:
-0x4ce3 019218 bpatchx patch20_4 ,mem_patch20 
-0x4ce4 019219 call hci_get_packet_ptr 
-0x4ce5 019220 deposit queue 
-0x4ce6 019221 istore 1 ,contwu 
-0x4ce7 019222 deposit loopcnt 
-0x4ce8 019223 istore 1 ,contwu 
-:      019224 hci_send_event_raw:
-0x4ce9 019225 force 5 ,queue 
-0x4cea 019226 increase 2 ,loopcnt 
-:      019227 hci_send_packet:
-0x4ceb 019228 branch h4_send_packet_event 
-:      019230 hci_send_commu_ready_event:
-0x4cec 019231 force hci_event_vendor_specific ,queue 
-0x4ced 019232 call hci_get_payload_ptr 
-0x4cee 019233 setarg hci_vendor_event_commu_ready 
-0x4cef 019234 istore 1 ,contwu 
-0x4cf0 019235 force 1 ,loopcnt 
-0x4cf1 019236 branch hci_send_event 
-:      019238 hci_get_cmd_complete_ptr:
-0x4cf2 019239 force 12 ,contwu 
-0x4cf3 019240 branch hci_get_tx_ptr 
-:      019242 hci_get_payload_ptr:
-0x4cf4 019243 force 8 ,contwu 
-0x4cf5 019244 branch hci_get_tx_ptr 
-:      019246 hci_get_packet_ptr:
-0x4cf6 019247 force 6 ,contwu 
-:      019248 hci_get_tx_ptr:
-0x4cf7 019249 branch h4_get_tx_ptr 
-:      019253 calc_tx_crc16:
-0x4cf8 019254 pulse crc16 
-0x4cf9 019255 enable enable_crc 
-:      019256 crcloop:
-0x4cfa 019257 ifetch 1 ,contwu 
-0x4cfb 019258 inject bucket ,8 
-0x4cfc 019259 loop crcloop 
-0x4cfd 019260 enable enable_parity 
-0x4cfe 019261 inject bucket ,16 
-0x4cff 019262 disable enable_parity 
-0x4d00 019263 disable enable_crc 
-0x4d01 019264 disable crc16 
-0x4d02 019265 byteswap pdata ,pdata 
-0x4d03 019266 rtn 
-:      019270 cmd_exit:
-0x4d04 019271 jam 0 ,mem_hci_cmd 
-0x4d05 019272 rtn 
-:      019273 cmd_check_plap:
-0x4d06 019274 fetch 6 ,mem_hci_plap 
-0x4d07 019275 fetcht 6 ,mem_plap 
-0x4d08 019276 isub temp ,null 
-0x4d09 019277 rtn 
-:      019282 cmd_pair:
-0x4d0a 019283 fetch 1 ,mem_op 
-0x4d0b 019284 bbit1 op_inrand_req ,cmd_pair_passive 
-0x4d0c 019285 call tid_initiate 
-0x4d0d 019286 jam lmp_in_rand ,mem_lmo_opcode2 
-0x4d0e 019287 branch cmd_exit 
-:      019288 cmd_pair_passive:
-0x4d0f 019289 set0 op_inrand_req ,pdata 
-0x4d10 019290 store 1 ,mem_op 
-0x4d11 019291 call lmp_accept_inrand 
-0x4d12 019292 setarg 0 
-0x4d13 019293 setflag master ,smap_lmptid ,pdata 
-0x4d14 019294 store 1 ,mem_lmo_tid2 
-0x4d15 019295 branch cmd_exit 
-0x4d16 019296 rtn 
-:      019297 cmd_in_sniff:
-0x4d17 019298 jam lmp_sniff_req ,mem_lmo_opcode2 
-0x4d18 019299 arg mem_sniff_payload ,contw 
-0x4d19 019300 setarg 0 
-0x4d1a 019301 isolate1 27 ,clke_bt 
-0x4d1b 019302 setflag true ,1 ,pdata 
-0x4d1c 019303 istore 1 ,contw 
-0x4d1d 019304 setarg 0 
-0x4d1e 019305 istore 2 ,contw 
-0x4d1f 019306 fetch 2 ,mem_sniff_param_interval 
-0x4d20 019307 istore 2 ,contw 
-0x4d21 019308 fetch 1 ,mem_sniff_param_attempt 
-0x4d22 019309 istore 2 ,contw 
-0x4d23 019310 fetch 1 ,mem_sniff_param_timeout 
-0x4d24 019311 istore 2 ,contw 
-0x4d25 019312 branch cmd_exit 
-:      019314 cmd_exit_sniff:
-0x4d26 019315 jam lmp_unsniff_req ,mem_lmo_opcode2 
-0x4d27 019316 branch cmd_exit 
-:      019318 hci_idle_dispatch:
-0x4d28 019319 call gpio_check_uart_state 
-0x4d29 019320 rtn true 
-0x4d2a 019321 arg uart_wakeup_rx ,temp 
-0x4d2b 019322 call gpio_get_bit 
-0x4d2c 019323 nbranch uart_wake_up ,true 
-0x4d2d 019324 jam hci_rx_wake ,mem_hci_lt_rx_state 
-0x4d2e 019325 rtn 
-:      019326 uart_wake_up:
-0x4d2f 019327 fetch 1 ,mem_hci_lt_rx_state 
-0x4d30 019328 rtnne hci_rx_wake 
-0x4d31 019329 call hci_exit_lpm 
-0x4d32 019330 branch hci_send_commu_ready_event 
-:      019344 hid_rx_process:
-0x4d33 019345 bpatchx patch20_5 ,mem_patch20 
-0x4d34 019346 fetch 2 ,mem_l2cap_payload_ptr 
-0x4d35 019347 copy pdata ,contr 
-0x4d36 019348 ifetch 1 ,contr 
-0x4d37 019349 and pdata ,0x0f ,temp 
-0x4d38 019350 rshift4 pdata ,pdata 
-0x4d39 019351 beq hid_type_set_idle ,hid_rx_process_handshake 
-0x4d3a 019352 beq hid_type_set_protocol ,hid_rx_process_handshake 
-0x4d3b 019353 beq hid_type_data ,hid_rx_process_data 
-0x4d3c 019354 beq hid_type_set_report ,hid_rx_process_set_report 
-0x4d3d 019355 beq hid_type_control ,hid_rx_process_hid_control 
-0x4d3e 019356 rtn 
-:      019358 hid_rx_process_hid_control:
-0x4d3f 019359 copy temp ,pdata 
-0x4d40 019360 beq hid_control_p_virtualcableunplug ,hid_rx_process_virtual_cable_unplug 
-0x4d41 019361 beq hid_control_p_suspend ,hid_rx_process_suspend 
-0x4d42 019362 rtn 
-:      019364 hid_rx_process_virtual_cable_unplug:
-0x4d43 019365 jam bt_evt_virtual_cable_unplug ,mem_fifo_temp 
-0x4d44 019366 call ui_ipc_send_event 
-0x4d45 019367 fetch 1 ,mem_device_option 
-0x4d46 019368 rtnbit0 dvc_op_mouse 
-0x4d47 019369 copy temp ,pdata 
-0x4d48 019370 beq hid_control_p_virtualcableunplug ,mouse_irtual_cable_unplug 
-0x4d49 019371 rtn 
-:      019372 hid_rx_process_suspend:
-0x4d4a 019373 rtn 
-:      019375 hid_rx_process_set_report:
-0x4d4b 019376 call hid_rx_process_data 
-0x4d4c 019377 arg 0x01 ,rega 
-0x4d4d 019378 call hid_malloc_tx_buff 
-0x4d4e 019379 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4d4f 019380 istore 2 ,contw 
-0x4d50 019381 setarg 0x00 
-0x4d51 019382 istore 1 ,contw 
-0x4d52 019383 rtn 
-:      019385 hid_rx_process_handshake:
-0x4d53 019386 arg 1 ,rega 
-0x4d54 019387 call hid_malloc_tx_buff 
-0x4d55 019388 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4d56 019389 istore 2 ,contw 
-0x4d57 019390 setarg 0 
-0x4d58 019391 istore 1 ,contw 
-0x4d59 019392 jam 1 ,mem_ui_data_txbuff_length 
-0x4d5a 019393 fetch 1 ,mem_hid_control_state 
-0x4d5b 019394 set1 l2cap_channel_hid_handshake_done 
-0x4d5c 019395 store 1 ,mem_hid_control_state 
-0x4d5d 019396 jam bt_evt_hid_handshake ,mem_fifo_temp 
-0x4d5e 019397 branch ui_ipc_send_event 
-:      019399 hid_rx_process_data:
-0x4d5f 019400 ifetch 1 ,contr 
-0x4d60 019401 beq hid_report_id_kb ,hid_rx_process_data_hid_kb 
-0x4d61 019402 rtn 
-:      019404 hid_rx_process_data_hid_kb:
-0x4d62 019405 rtn 
-:      019408 hid_malloc_tx_buff:
-0x4d63 019409 call l2cap_malloc 
-0x4d64 019410 copy rega ,temp 
-0x4d65 019411 storet 1 ,mem_ui_data_txbuff_length 
-0x4d66 019412 copy pdata ,contw 
-0x4d67 019413 copy rega ,pdata 
-0x4d68 019414 istore 2 ,contw 
-0x4d69 019415 rtn 
-:      019432 l2cap_init:
-0x4d6a 019433 branch l2cap_init_wake ,wake 
-:      019434 l2cap_init_work:
-0x4d6b 019435 setarg mem_l2cap_xmem_end 
-0x4d6c 019436 arg mem_l2cap_xmem_start ,contw 
-0x4d6d 019437 isub contw ,loopcnt 
-0x4d6e 019438 call clear_mem 
-:      019439 l2cap_init_wake:
-0x4d6f 019440 bpatchx patch20_6 ,mem_patch20 
-0x4d70 019441 setarg mem_sdp_mem_end 
-0x4d71 019442 arg mem_sdp_mem_start ,contw 
-0x4d72 019443 isub contw ,loopcnt 
-0x4d73 019444 call clear_mem 
-0x4d74 019445 setarg mem_l2cap_mem_end 
-0x4d75 019446 arg mem_l2cap_mem_start ,contw 
-0x4d76 019447 isub contw ,loopcnt 
-0x4d77 019448 call clear_mem 
-0x4d78 019449 branch l2cap_lpm_load_txbuf 
-:      019451 process_rx_l2cap_pkt:
-0x4d79 019452 bpatchx patch20_7 ,mem_patch20 
-0x4d7a 019453 copy contr ,temp 
-0x4d7b 019456 copy temp ,contr 
-0x4d7c 019457 ifetch 2 ,contr 
-0x4d7d 019458 store 2 ,mem_l2cap_rx_pkt_length 
-0x4d7e 019459 ifetch 2 ,contr 
-0x4d7f 019460 store 2 ,mem_l2cap_rx_cid 
-0x4d80 019461 deposit contr 
-0x4d81 019462 store 2 ,mem_l2cap_payload_ptr 
-0x4d82 019463 fetch 1 ,memui_reconnect_mode 
-0x4d83 019464 beq no_reconnection ,l2cap_rx_multiplexing 
-0x4d84 019465 branch ml2cap_rx_multiplexing 
-:      019467 l2cap_rx_multiplexing:
-0x4d85 019468 fetch 2 ,mem_l2cap_rx_pkt_length 
-0x4d86 019469 branch l2cap_rx_reset_state ,blank 
-0x4d87 019470 bpatchx patch21_0 ,mem_patch21 
-0x4d88 019471 fetch 1 ,mem_l2cap_rx_cid 
-0x4d89 019472 beq l2cap_signal_channel ,l2cap_call_proc_signal 
-:      019473 l2cap_rx_multiplexing0:
-0x4d8a 019474 beq l2cap_sdp_channel ,l2cap_call_proc_sdp 
-0x4d8b 019475 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
-0x4d8c 019476 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
-0x4d8d 019477 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
-0x4d8e 019478 branch l2cap_rx_reset_state 
-:      019480 l2cap_check_map:
-0x4d8f 019483 bpatchx patch21_1 ,mem_patch21 
-0x4d90 019484 call l2cap_malloc_get_full_map 
-0x4d91 019485 fetch 1 ,mem_used_map 
-0x4d92 019486 beq 0 ,set_pdata_0 
-0x4d93 019487 beq 1 ,set_pdata_0 
-0x4d94 019488 beq 2 ,set_pdata_0 
-0x4d95 019489 beq 3 ,set_pdata_0 
-0x4d96 019490 beq 0x81 ,set_pdata_0 
-0x4d97 019491 beq 0xc0 ,set_pdata_0 
-0x4d98 019492 beq 0x80 ,set_pdata_0 
-0x4d99 019493 beq 0x40 ,set_pdata_0 
-0x4d9a 019494 rtn 
-:      019496 set_pdata_0:
-0x4d9b 019497 setarg 0 
-0x4d9c 019498 rtn 
-:      019501 l2cap_call_proc_signal:
-0x4d9d 019502 call l2cap_check_map 
-0x4d9e 019503 nrtn blank 
-:      019504 l2cap_call_proc_signal0:
-0x4d9f 019505 call l2cap_malloc_signal_channel 
-0x4da0 019506 call l2cap_process_signal_pkt 
-0x4da1 019507 fetcht 2 ,mem_l2cap_signal_tx_length 
-0x4da2 019508 branch l2cap_call_proc_no_reply ,blank 
-0x4da3 019509 call l2cap_get_signal_tx_buff 
-0x4da4 019510 fetch 2 ,mem_l2cap_signal_tx_length 
-0x4da5 019511 istore 2 ,contw 
-0x4da6 019512 force l2cap_signal_channel ,pdata 
-0x4da7 019513 istore 2 ,contw 
-0x4da8 019514 branch l2cap_rx_reset_state 
-:      019516 l2cap_call_proc_sigal_pending:
-0x4da9 019517 fetch 1 ,mem_l2cap_pending_item 
-0x4daa 019518 rtn blank 
-0x4dab 019519 copy pdata ,rega 
-0x4dac 019520 bpatchx patch21_2 ,mem_patch21 
-0x4dad 019521 fetch 4 ,mem_l2cap_sdpres_delay_time 
-0x4dae 019522 arg 0x100 ,temp 
-0x4daf 019523 iadd temp ,temp 
-0x4db0 019524 copy clkn_bt ,pdata 
-0x4db1 019525 isub temp ,null 
-0x4db2 019526 nrtn positive 
-0x4db3 019527 jam 0 ,mem_l2cap_pending_item 
-0x4db4 019528 copy rega ,pdata 
-0x4db5 019529 beq l2cap_sdp_channel ,l2cap_sdp_conn_succ 
-0x4db6 019530 branch assert 
-:      019531 l2cap_sdp_conn_succ:
-0x4db7 019532 arg 0 ,debug 
-0x4db8 019533 call l2cap_malloc_signal_channel 
-0x4db9 019534 call restore_l2cap_req_param 
-0x4dba 019535 call l2cap_get_signal_tx_payload 
-0x4dbb 019536 call save_cont_pointers 
-0x4dbc 019537 call send_connection_sdp_res 
-0x4dbd 019538 call l2cap_get_signal_tx_buff 
-0x4dbe 019540 setarg 0x000c 
-0x4dbf 019541 istore 2 ,contw 
-0x4dc0 019542 force l2cap_signal_channel ,pdata 
-0x4dc1 019543 istore 2 ,contw 
-0x4dc2 019544 branch l2cap_rx_reset_state 
-:      019548 l2cap_reset_sdp_map:
-0x4dc3 019549 bpatchx patch21_3 ,mem_patch21 
-0x4dc4 019550 fetch 2 ,mem_sdp_tx_pkt_length 
-0x4dc5 019551 increase 4 ,pdata 
-0x4dc6 019552 rshift4 pdata ,pdata 
-0x4dc7 019553 rshift3 pdata ,pdata 
-0x4dc8 019554 add pdata ,1 ,temp 
-0x4dc9 019555 arg mem_tx_fifo3 ,contr 
-0x4dca 019556 ifetch 3 ,contr 
-0x4dcb 019557 rtn blank 
-0x4dcc 019558 store 3 ,mem_tx_fifo_map_temp 
-0x4dcd 019559 fetch 1 ,mem_tx_fifo_map_temp 
-0x4dce 019560 copy pdata ,rega 
-0x4dcf 019561 call check_l2cap_map 
-0x4dd0 019562 copy regb ,pdata 
-0x4dd1 019563 store 1 ,mem_tx_fifo3 
-0x4dd2 019564 rtn 
-:      019566 check_l2cap_map:
-0x4dd3 019567 arg 0 ,queue 
-0x4dd4 019568 arg 0 ,regb 
-:      019570 check_l2cap_map_loop:
-0x4dd5 019571 sub queue ,7 ,null 
-0x4dd6 019572 nrtn positive 
-0x4dd7 019573 qisolate1 rega 
-0x4dd8 019574 branch check_l2cap_map_used ,true 
-0x4dd9 019575 branch check_l2cap_map_used2 
-:      019577 check_l2cap_map_used:
-0x4dda 019578 copy temp ,pdata 
-0x4ddb 019579 branch check_l2cap_map_used2 ,blank 
-0x4ddc 019580 qset1 regb 
-0x4ddd 019581 increase -1 ,temp 
-:      019583 check_l2cap_map_used2:
-0x4dde 019584 increase 1 ,queue 
-0x4ddf 019585 branch check_l2cap_map_loop 
-:      019587 l2cap_call_proc_sdp:
-0x4de0 019588 call l2cap_malloc_is_fifo_empty 
-0x4de1 019589 nrtn blank 
-0x4de2 019590 call l2cap_check_map 
-0x4de3 019591 nrtn blank 
-0x4de4 019592 call l2cap_malloc_sdp_channel 
-0x4de5 019593 call sdp_process 
-0x4de6 019594 call l2cap_reset_sdp_map 
-0x4de7 019595 branch l2cap_call_proc_sdp_common 
-:      019598 ml2cap_call_proc_sdp:
-0x4de8 019599 call l2cap_malloc_is_fifo_empty 
-0x4de9 019600 nrtn blank 
-0x4dea 019601 call l2cap_malloc_sdp_channel 
-0x4deb 019602 call sdp_process 
-:      019603 l2cap_call_proc_sdp_common:
-0x4dec 019604 call l2cap_get_sdp_tx_buff 
-0x4ded 019605 fetch 2 ,mem_sdp_tx_pkt_length 
-0x4dee 019606 branch l2cap_call_proc_no_reply ,blank 
-0x4def 019607 istore 2 ,contw 
-0x4df0 019608 fetch 2 ,mem_sdp_remote_cid 
-0x4df1 019609 istore 2 ,contw 
-0x4df2 019610 branch l2cap_rx_reset_state 
-:      019612 l2cap_call_proc_hid:
-0x4df3 019613 call hid_rx_process 
-0x4df4 019614 branch l2cap_rx_reset_state 
-:      019616 l2cap_call_proc_rfcomm:
-0x4df5 019617 bpatchx patch21_4 ,mem_patch21 
-0x4df6 019618 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
-0x4df7 019619 call rfcomm_rx_process 
-0x4df8 019620 fetch 1 ,mem_rfcomm_malloc_fail_flag 
-0x4df9 019621 rtneq rfcomm_malloc_fail 
-0x4dfa 019622 branch l2cap_rx_reset_state 
-:      019623 l2cap_call_proc_no_reply:
-0x4dfb 019624 call l2cap_malloc_discard 
-:      019626 l2cap_rx_reset_state:
-0x4dfc 019627 setarg 0 
-0x4dfd 019628 store 2 ,mem_l2cap_rx_pkt_length 
-0x4dfe 019629 store 2 ,mem_l2cap_rx_cid 
-0x4dff 019630 jam l2cap_rx_done ,mem_l2cap_rx_done 
-0x4e00 019631 rtn 
-:      019633 l2cap_process_signal_pkt:
-0x4e01 019634 bpatchx patch21_5 ,mem_patch21 
-0x4e02 019635 call l2cap_get_signal_tx_payload 
-0x4e03 019636 force 0 ,regb 
-0x4e04 019637 fetch 2 ,mem_l2cap_rx_pkt_length 
-0x4e05 019638 copy pdata ,regc 
-0x4e06 019639 fetch 2 ,mem_l2cap_payload_ptr 
-0x4e07 019640 iforce contr 
-:      019641 l2cap_process_signal_pkt_loop:
-0x4e08 019642 call l2cap_process_one_signal 
-0x4e09 019643 deposit regc 
-0x4e0a 019644 increase -4 ,regc 
-0x4e0b 019645 increase -4 ,pdata 
-0x4e0c 019646 nbranch l2cap_process_signal_pkt_loop ,blank 
-0x4e0d 019647 copy regb ,pdata 
-0x4e0e 019648 store 2 ,mem_l2cap_signal_tx_length 
-0x4e0f 019649 rtn 
-:      019651 l2cap_process_one_signal:
-0x4e10 019652 bpatchx patch21_6 ,mem_patch21 
-0x4e11 019653 ifetch 1 ,contr 
-0x4e12 019654 beq signal_cmd_reject ,l2cap_proc_signal_cmd_reject 
-0x4e13 019655 beq signal_connect_req ,l2cap_proc_signal_connect_req 
-0x4e14 019656 beq signal_connect_rsp ,l2cap_proc_signal_connect_rsp 
-0x4e15 019657 beq signal_config_req ,l2cap_proc_signal_config_req 
-0x4e16 019658 beq signal_config_rsp ,l2cap_proc_signal_config_rsp 
-0x4e17 019659 beq signal_disconnect_req ,l2cap_proc_signal_disconnect_req 
-0x4e18 019660 beq signal_disconnect_rsp ,l2cap_proc_signal_disconnect_rsp 
-0x4e19 019661 beq signal_echo_req ,l2cap_proc_signal_echo_req 
-0x4e1a 019662 beq signal_echo_rsp ,l2cap_proc_signal_echo_rsp 
-0x4e1b 019663 beq signal_info_req ,l2cap_proc_signal_info_req 
-0x4e1c 019664 beq signal_info_rsp ,l2cap_proc_signal_info_rsp 
-0x4e1d 019665 call l2cap_reject_command 
-:      019666 l2cap_process_one_signal_rtn:
-0x4e1e 019667 rtn 
-:      019669 l2cap_proc_signal_info_req:
-0x4e1f 019670 ifetch 1 ,contr 
-0x4e20 019671 copy pdata ,queue 
-0x4e21 019672 ifetch 2 ,contr 
-0x4e22 019673 copy pdata ,rega 
-0x4e23 019674 copy regc ,pdata 
-0x4e24 019675 isub rega ,regc 
-0x4e25 019676 setarg signal_info_rsp 
-0x4e26 019677 istore 1 ,contw 
-0x4e27 019678 copy queue ,pdata 
-0x4e28 019679 istore 1 ,contw 
-0x4e29 019680 ifetch 2 ,contr 
-:      019681 l2cap_proc_signal_info_req_reply:
-0x4e2a 019682 beq l2cap_sig_ext_featrue ,l2cap_proc_signal_info_req_ext 
-0x4e2b 019683 beq l2cap_sig_fix_featrue ,l2cap_proc_signal_info_req_fix 
-0x4e2c 019684 rtn 
-:      019685 l2cap_proc_signal_info_req_ext:
-0x4e2d 019686 setarg 0x020008 
-0x4e2e 019687 istore 6 ,contw 
-0x4e2f 019688 setarg 0x0280 
-0x4e30 019689 istore 4 ,contw 
-0x4e31 019690 force 12 ,pdata 
-0x4e32 019691 branch l2cap_proc_signal_info_req_common 
-:      019692 l2cap_proc_signal_info_req_fix:
-0x4e33 019693 setarg 0x3000c 
-0x4e34 019694 istore 6 ,contw 
-0x4e35 019695 setarg 0x0006 
-0x4e36 019696 istore 8 ,contw 
-0x4e37 019697 force 16 ,pdata 
-:      019698 l2cap_proc_signal_info_req_common:
-0x4e38 019699 iadd regb ,regb 
-0x4e39 019700 branch l2cap_process_one_signal_rtn 
-:      019702 ml2cap_proc_signal_info_req:
-0x4e3a 019703 ifetch 1 ,contr 
-0x4e3b 019704 copy pdata ,queue 
-0x4e3c 019705 ifetch 2 ,contr 
-0x4e3d 019706 copy pdata ,rega 
-0x4e3e 019707 ifetch 2 ,contr 
-0x4e3f 019708 store 2 ,mem_temp 
-0x4e40 019709 copy regc ,pdata 
-0x4e41 019710 isub rega ,regc 
-0x4e42 019711 call l2cap_get_signal_tx_payload 
-0x4e43 019712 setarg signal_info_rsp 
-0x4e44 019713 istore 1 ,contw 
-0x4e45 019714 copy queue ,pdata 
-0x4e46 019715 istore 1 ,contw 
-0x4e47 019716 fetch 2 ,mem_temp 
-0x4e48 019717 branch l2cap_proc_signal_info_req_reply 
-:      019721 l2cap_proc_signal_cmd_reject:
-0x4e49 019722 ifetch 1 ,contr 
-0x4e4a 019723 copy pdata ,queue 
-0x4e4b 019724 ifetch 2 ,contr 
-0x4e4c 019725 copy pdata ,rega 
-0x4e4d 019726 iadd contr ,contr 
-0x4e4e 019727 copy regc ,pdata 
-0x4e4f 019728 isub rega ,regc 
-:      019729 l2cap_proc_signal_cmd_reject_rtn:
-0x4e50 019730 branch l2cap_process_one_signal_rtn 
-:      019732 l2cap_proc_signal_connect_req:
-0x4e51 019733 call save_cont_pointers 
-0x4e52 019736 call load_cont_pointers 
-0x4e53 019737 arg 0 ,debug 
-0x4e54 019738 ifetch 1 ,contr 
-0x4e55 019739 copy pdata ,queue 
-0x4e56 019740 ifetch 2 ,contr 
-0x4e57 019741 copy pdata ,rega 
-0x4e58 019742 ifetch 2 ,contr 
-0x4e59 019743 copy pdata ,temp 
-0x4e5a 019744 ifetch 2 ,contr 
-0x4e5b 019745 copy pdata ,timeup 
-0x4e5c 019746 bpatchx patch21_7 ,mem_patch21 
-0x4e5d 019747 copy temp ,pdata 
-0x4e5e 019748 beq psm_sdp ,l2cap_proc_signal_connect_req_sdp 
-0x4e5f 019749 beq psm_rfcomm ,l2cap_proc_signal_connect_req_rfcomm 
-0x4e60 019750 beq psm_hid_control ,l2cap_proc_signal_connect_req_hid_ctrl 
-0x4e61 019751 beq psm_hid_interrupt ,l2cap_proc_signal_connect_req_hid_int 
-0x4e62 019752 call l2cap_reject_command 
-0x4e63 019753 branch l2cap_proc_signal_connect_req_rtn 
-:      019755 l2cap_proc_signal_connect_req_sdp:
-0x4e64 019756 call save_cont_pointers 
-0x4e65 019757 arg l2cap_sdp_channel ,temp 
-0x4e66 019758 fetch 2 ,mem_sdp_remote_cid 
-0x4e67 019759 nbranch already_connected ,blank 
-0x4e68 019760 copy timeup ,pdata 
-0x4e69 019761 store 2 ,mem_sdp_remote_cid 
-0x4e6a 019762 copy clkn_bt ,pdata 
-0x4e6b 019763 store 4 ,mem_l2cap_sdpres_delay_time 
-0x4e6c 019764 call store_l2cap_req_param 
-0x4e6d 019765 branch send_connection_pending 
-:      019767 store_l2cap_req_param:
-0x4e6e 019768 storet 2 ,mem_psm 
-0x4e6f 019769 deposit timeup 
-0x4e70 019770 store 2 ,mem_scid 
-0x4e71 019771 deposit rega 
-0x4e72 019772 store 2 ,mem_cmd_length 
-0x4e73 019773 deposit regb 
-0x4e74 019774 store 2 ,mem_tt2 
-0x4e75 019775 deposit regc 
-0x4e76 019776 store 2 ,mem_tt3 
-0x4e77 019777 deposit queue 
-0x4e78 019778 store 2 ,mem_id 
-0x4e79 019779 rtn 
-:      019781 restore_l2cap_req_param:
-0x4e7a 019782 fetcht 2 ,mem_psm 
-0x4e7b 019783 fetch 2 ,mem_scid 
-0x4e7c 019784 copy pdata ,timeup 
-0x4e7d 019785 fetch 2 ,mem_cmd_length 
-0x4e7e 019786 copy pdata ,rega 
-0x4e7f 019787 fetch 2 ,mem_tt2 
-0x4e80 019788 copy pdata ,regb 
-0x4e81 019789 fetch 2 ,mem_tt3 
-0x4e82 019790 copy pdata ,regc 
-0x4e83 019791 fetch 2 ,mem_id 
-0x4e84 019792 copy pdata ,queue 
-0x4e85 019793 rtn 
-:      019795 l2cap_proc_signal_connect_req_rfcomm:
-0x4e86 019796 call save_cont_pointers 
-0x4e87 019797 setarg l2cap_rfcomm_channel 
-0x4e88 019798 arg l2cap_rfcomm_channel ,temp 
-0x4e89 019799 fetch 2 ,mem_rfcomm_remote_cid 
-0x4e8a 019800 nbranch already_connected ,blank 
-0x4e8b 019801 copy timeup ,pdata 
-0x4e8c 019802 store 2 ,mem_rfcomm_remote_cid 
-0x4e8d 019803 fetch 1 ,mem_rfcomm_state 
-0x4e8e 019804 set1 l2cap_channel_state_conn_req ,pdata 
-0x4e8f 019805 set1 l2cap_channel_state_conn_res ,pdata 
-0x4e90 019806 store 1 ,mem_rfcomm_state 
-0x4e91 019807 branch send_connection_res 
-:      019808 l2cap_proc_signal_connect_req_hid_ctrl:
-0x4e92 019809 call save_cont_pointers 
-0x4e93 019810 arg l2cap_hid_control_channel ,temp 
-0x4e94 019811 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4e95 019812 nbranch already_connected ,blank 
-0x4e96 019813 copy timeup ,pdata 
-0x4e97 019814 store 2 ,mem_hid_ctrl_remote_cid 
-0x4e98 019815 fetch 1 ,mem_hid_control_state 
-0x4e99 019816 set1 l2cap_channel_state_conn_req ,pdata 
-0x4e9a 019817 set1 l2cap_channel_state_conn_res ,pdata 
-0x4e9b 019818 store 1 ,mem_hid_control_state 
-0x4e9c 019819 branch send_connection_res 
-:      019820 l2cap_proc_signal_connect_req_hid_int:
-0x4e9d 019821 call save_cont_pointers 
-0x4e9e 019822 deposit clke 
-0x4e9f 019823 arg l2cap_hid_interrupt_channel ,temp 
-0x4ea0 019824 fetch 2 ,mem_hid_int_remote_cid 
-0x4ea1 019825 nbranch already_connected ,blank 
-0x4ea2 019826 copy timeup ,pdata 
-0x4ea3 019827 store 2 ,mem_hid_int_remote_cid 
-0x4ea4 019828 fetch 1 ,mem_hid_interrupt_state 
-0x4ea5 019829 set1 l2cap_channel_state_conn_req ,pdata 
-0x4ea6 019830 set1 l2cap_channel_state_conn_res ,pdata 
-0x4ea7 019831 store 1 ,mem_hid_interrupt_state 
-0x4ea8 019832 branch send_connection_res 
-:      019834 send_connection_pending:
-0x4ea9 019835 setarg l2cap_connect_pending 
-0x4eaa 019836 store 2 ,meml2cap_t1 
-0x4eab 019837 jam l2cap_sdp_channel ,mem_l2cap_pending_item 
-0x4eac 019838 branch send_connection_res0 
-:      019839 send_connection_sdp_res:
-0x4ead 019840 fetch 1 ,mem_sdp_state 
-0x4eae 019841 set1 l2cap_channel_state_conn_req ,pdata 
-0x4eaf 019842 set1 l2cap_channel_state_conn_res ,pdata 
-0x4eb0 019843 store 1 ,mem_sdp_state 
-:      019844 send_connection_res:
-0x4eb1 019845 setarg l2cap_connect_successful 
-0x4eb2 019846 store 2 ,meml2cap_t1 
-:      019847 send_connection_res0:
-0x4eb3 019848 bpatchx patch22_0 ,mem_patch22 
-0x4eb4 019849 call load_cont_pointers 
-0x4eb5 019850 setarg signal_connect_rsp 
-0x4eb6 019851 istore 1 ,contw 
-0x4eb7 019852 copy queue ,pdata 
-0x4eb8 019853 istore 1 ,contw 
-0x4eb9 019854 setarg 0x0008 
-0x4eba 019855 istore 2 ,contw 
-0x4ebb 019856 copy temp ,pdata 
-0x4ebc 019857 istore 2 ,contw 
-0x4ebd 019858 copy timeup ,pdata 
-0x4ebe 019859 istore 2 ,contw 
-0x4ebf 019860 fetch 2 ,meml2cap_t1 
-0x4ec0 019861 beq l2cap_connect_pending ,connect_pending 
-0x4ec1 019862 isolate0 0 ,debug 
-0x4ec2 019863 branch connect_suc ,true 
-0x4ec3 019864 setarg l2cap_connect_refused_no_resources 
-:      019865 connect_suc:
-0x4ec4 019866 istore 2 ,contw 
-0x4ec5 019867 force 0x0000 ,pdata 
-0x4ec6 019868 istore 2 ,contw 
-0x4ec7 019869 setarg 12 
-0x4ec8 019870 branch connect_req_update_byte_counts 
-:      019871 connect_pending:
-0x4ec9 019872 istore 2 ,contw 
-0x4eca 019873 force 0x0002 ,pdata 
-0x4ecb 019874 istore 2 ,contw 
-0x4ecc 019875 setarg 12 
-0x4ecd 019876 branch connect_req_update_byte_counts 
-:      019878 already_connected:
-0x4ece 019879 set1 0 ,debug 
-0x4ecf 019880 branch send_connection_res 
-:      019881 connect_req_update_byte_counts:
-0x4ed0 019882 iadd regb ,regb 
-0x4ed1 019883 copy regc ,pdata 
-0x4ed2 019884 isub rega ,regc 
-0x4ed3 019885 branch l2cap_proc_signal_connect_req_rtn 
-:      019886 l2cap_proc_signal_connect_req_rtn:
-0x4ed4 019887 branch l2cap_process_one_signal_rtn 
-:      019889 l2cap_proc_signal_connect_rsp:
-0x4ed5 019890 ifetch 1 ,contr 
-0x4ed6 019891 copy pdata ,queue 
-0x4ed7 019892 ifetch 2 ,contr 
-0x4ed8 019893 copy pdata ,rega 
-0x4ed9 019894 copy regc ,pdata 
-0x4eda 019895 isub rega ,regc 
-0x4edb 019896 ifetch 2 ,contr 
-0x4edc 019897 copy pdata ,timeup 
-0x4edd 019898 ifetch 2 ,contr 
-0x4ede 019899 copy pdata ,temp 
-0x4edf 019900 bpatchx patch22_1 ,mem_patch22 
-0x4ee0 019901 setarg l2cap_sdp_channel 
-0x4ee1 019902 isub temp ,null 
-0x4ee2 019903 branch l2cap_proc_signal_connect_rsp_sdp ,zero 
-0x4ee3 019904 setarg l2cap_rfcomm_channel 
-0x4ee4 019905 isub temp ,null 
-0x4ee5 019906 branch l2cap_proc_signal_connect_rsp_rfcomm ,zero 
-0x4ee6 019907 setarg l2cap_hid_control_channel 
-0x4ee7 019908 isub temp ,null 
-0x4ee8 019909 branch l2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
-0x4ee9 019910 setarg l2cap_hid_interrupt_channel 
-0x4eea 019911 isub temp ,null 
-0x4eeb 019912 branch l2cap_proc_signal_connect_rsp_hid_int ,zero 
-0x4eec 019913 rtn 
-:      019915 l2cap_proc_signal_connect_rsp_sdp:
-0x4eed 019916 copy timeup ,pdata 
-0x4eee 019917 store 2 ,mem_sdp_remote_cid 
-0x4eef 019918 fetch 1 ,mem_sdp_state 
-0x4ef0 019919 set1 l2cap_channel_state_conn_res ,pdata 
-0x4ef1 019920 store 1 ,mem_sdp_state 
-0x4ef2 019921 branch l2cap_process_one_signal_rtn 
-:      019922 l2cap_proc_signal_connect_rsp_rfcomm:
-0x4ef3 019923 copy timeup ,pdata 
-0x4ef4 019924 store 2 ,mem_rfcomm_remote_cid 
-0x4ef5 019925 fetch 1 ,mem_rfcomm_state 
-0x4ef6 019926 set1 l2cap_channel_state_conn_res ,pdata 
-0x4ef7 019927 store 1 ,mem_rfcomm_state 
-0x4ef8 019928 rtn 
-:      019929 l2cap_proc_signal_connect_rsp_hid_int:
-0x4ef9 019930 copy timeup ,pdata 
-0x4efa 019931 store 2 ,mem_hid_ctrl_remote_cid 
-0x4efb 019932 fetch 1 ,mem_hid_interrupt_state 
-0x4efc 019933 set1 l2cap_channel_state_conn_res ,pdata 
-0x4efd 019934 store 1 ,mem_hid_interrupt_state 
-0x4efe 019935 rtn 
-:      019936 l2cap_proc_signal_connect_rsp_hid_ctrl:
-0x4eff 019937 copy timeup ,pdata 
-0x4f00 019938 store 2 ,mem_hid_int_remote_cid 
-0x4f01 019939 fetch 1 ,mem_hid_control_state 
-0x4f02 019940 set1 l2cap_channel_state_conn_res ,pdata 
-0x4f03 019941 store 1 ,mem_hid_control_state 
-0x4f04 019942 rtn 
-:      019944 l2cap_proc_signal_config_req:
-0x4f05 019945 ifetch 1 ,contr 
-0x4f06 019946 copy pdata ,queue 
-0x4f07 019947 ifetch 2 ,contr 
-0x4f08 019948 copy pdata ,rega 
-0x4f09 019949 copy regc ,pdata 
-0x4f0a 019950 isub rega ,regc 
-0x4f0b 019951 ifetch 2 ,contr 
-0x4f0c 019952 copy pdata ,temp 
-0x4f0d 019953 copy temp ,rega 
-0x4f0e 019954 bpatchx patch22_2 ,mem_patch22 
-0x4f0f 019955 setarg l2cap_sdp_channel 
-0x4f10 019956 isub temp ,null 
-0x4f11 019957 branch l2cap_proc_signal_config_req_sdp ,zero 
-0x4f12 019958 setarg l2cap_rfcomm_channel 
-0x4f13 019959 isub temp ,null 
-0x4f14 019960 branch l2cap_proc_signal_config_req_rfcomm ,zero 
-0x4f15 019961 setarg l2cap_hid_control_channel 
-0x4f16 019962 isub temp ,null 
-0x4f17 019963 branch l2cap_proc_signal_config_req_hid_ctrl ,zero 
-0x4f18 019964 setarg l2cap_hid_interrupt_channel 
-0x4f19 019965 isub temp ,null 
-0x4f1a 019966 branch l2cap_proc_signal_config_req_hid_int ,zero 
-0x4f1b 019967 branch l2cap_reject_command 
-:      019969 l2cap_proc_signal_config_req_sdp:
-0x4f1c 019970 copy contw ,timeup 
-0x4f1d 019971 fetch 1 ,mem_sdp_state 
-0x4f1e 019972 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x4f1f 019973 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x4f20 019975 store 1 ,mem_sdp_state 
-0x4f21 019976 copy timeup ,contw 
-0x4f22 019977 arg l2cap_sdp_channel ,timeup 
-0x4f23 019978 fetch 2 ,mem_sdp_remote_cid 
-0x4f24 019979 copy pdata ,temp 
-0x4f25 019980 branch l2cap_send_config_rsp 
-:      019981 l2cap_proc_signal_config_req_hid_ctrl:
-0x4f26 019982 copy contw ,timeup 
-0x4f27 019983 fetch 1 ,mem_hid_control_state 
-0x4f28 019984 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x4f29 019985 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x4f2a 019987 store 1 ,mem_hid_control_state 
-0x4f2b 019988 copy timeup ,contw 
-0x4f2c 019989 arg l2cap_hid_control_channel ,timeup 
-0x4f2d 019990 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4f2e 019991 copy pdata ,temp 
-0x4f2f 019992 branch l2cap_send_config_rsp 
-:      019993 l2cap_proc_signal_config_req_hid_int:
-0x4f30 019994 copy contw ,timeup 
-0x4f31 019995 fetch 1 ,mem_hid_interrupt_state 
-0x4f32 019996 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x4f33 019997 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x4f34 019999 store 1 ,mem_hid_interrupt_state 
-0x4f35 020000 copy timeup ,contw 
-0x4f36 020001 arg l2cap_hid_interrupt_channel ,timeup 
-0x4f37 020002 fetch 2 ,mem_hid_int_remote_cid 
-0x4f38 020003 copy pdata ,temp 
-0x4f39 020004 branch l2cap_send_config_rsp 
-:      020005 l2cap_proc_signal_config_req_rfcomm:
-0x4f3a 020006 copy contw ,timeup 
-0x4f3b 020007 fetch 1 ,mem_rfcomm_state 
-0x4f3c 020008 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x4f3d 020009 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x4f3e 020011 store 1 ,mem_rfcomm_state 
-0x4f3f 020013 copy timeup ,contw 
-0x4f40 020014 arg l2cap_rfcomm_channel ,timeup 
-0x4f41 020015 fetch 2 ,mem_rfcomm_remote_cid 
-0x4f42 020016 copy pdata ,temp 
-:      020017 l2cap_send_config_rsp:
-0x4f43 020018 bpatchx patch22_3 ,mem_patch22 
-0x4f44 020019 setarg signal_config_rsp 
-0x4f45 020020 istore 1 ,contw 
-0x4f46 020021 copy queue ,pdata 
-0x4f47 020022 istore 1 ,contw 
-0x4f48 020023 setarg 0x0006 
-0x4f49 020024 istore 2 ,contw 
-0x4f4a 020025 copy temp ,pdata 
-0x4f4b 020026 istore 2 ,contw 
-0x4f4c 020027 force 0x00 ,pdata 
-0x4f4d 020028 istore 2 ,contw 
-0x4f4e 020029 force l2cap_config_success ,pdata 
-0x4f4f 020030 istore 2 ,contw 
-0x4f50 020031 force 10 ,pdata 
-0x4f51 020032 iadd regb ,regb 
-0x4f52 020034 storet 2 ,mem_config_req_dest_cid 
-0x4f53 020035 copy queue ,pdata 
-0x4f54 020036 store 1 ,mem_config_identifier 
-0x4f55 020037 force l2cap_sdp_channel ,pdata 
-0x4f56 020038 icompare 0xff ,timeup 
-0x4f57 020039 branch l2cap_send_config_rsp_is_sdp ,true 
-0x4f58 020040 increase 1 ,pdata 
-:      020041 l2cap_send_config_rsp_is_sdp:
-0x4f59 020043 rtn 
-:      020044 l2cap_check_channel_state:
-0x4f5a 020045 disable user 
-0x4f5b 020046 rtnbit1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x4f5c 020047 rtnbit0 l2cap_channel_state_conn_req ,pdata 
-0x4f5d 020048 rtnbit0 l2cap_channel_state_conn_res ,pdata 
-0x4f5e 020049 set1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x4f5f 020050 copy contr ,contw 
-0x4f60 020051 increase -1 ,contw 
-0x4f61 020052 istore 1 ,contw 
-0x4f62 020053 enable user 
-0x4f63 020054 rtn 
-:      020055 l2cap_send_config_req:
-:      020056 l2cap_send_config_req_sdp:
-0x4f64 020057 fetch 1 ,mem_sdp_state 
-0x4f65 020058 call l2cap_check_channel_state 
-0x4f66 020059 nbranch l2cap_send_config_req_rfcomm ,user 
-0x4f67 020060 jam l2cap_sdp_channel ,mem_send_config_req 
-0x4f68 020061 fetch 2 ,mem_sdp_remote_cid 
-0x4f69 020062 store 2 ,mem_config_req_dest_cid 
-0x4f6a 020063 branch l2cap_generate_config_req 
-:      020064 l2cap_send_config_req_rfcomm:
-0x4f6b 020065 fetch 1 ,mem_rfcomm_state 
-0x4f6c 020066 call l2cap_check_channel_state 
-0x4f6d 020067 nbranch l2cap_send_config_req_hid_ctrl ,user 
-0x4f6e 020068 jam l2cap_rfcomm_channel ,mem_send_config_req 
-0x4f6f 020069 fetch 2 ,mem_rfcomm_remote_cid 
-0x4f70 020070 store 2 ,mem_config_req_dest_cid 
-0x4f71 020071 branch l2cap_generate_config_req 
-:      020072 l2cap_send_config_req_hid_ctrl:
-0x4f72 020073 fetch 1 ,mem_hid_control_state 
-0x4f73 020074 call l2cap_check_channel_state 
-0x4f74 020075 nbranch l2cap_send_config_req_hid_int ,user 
-0x4f75 020076 jam l2cap_hid_control_channel ,mem_send_config_req 
-0x4f76 020077 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4f77 020078 store 2 ,mem_config_req_dest_cid 
-0x4f78 020079 branch l2cap_generate_config_req 
-:      020080 l2cap_send_config_req_hid_int:
-0x4f79 020081 fetch 1 ,mem_hid_interrupt_state 
-0x4f7a 020082 call l2cap_check_channel_state 
-0x4f7b 020083 nrtn user 
-0x4f7c 020084 jam l2cap_hid_interrupt_channel ,mem_send_config_req 
-0x4f7d 020085 fetch 2 ,mem_hid_int_remote_cid 
-0x4f7e 020086 store 2 ,mem_config_req_dest_cid 
-:      020089 l2cap_generate_config_req:
-0x4f7f 020090 bpatchx patch22_4 ,mem_patch22 
-0x4f80 020091 call l2cap_get_req_id 
-0x4f81 020092 call l2cap_malloc_signal_channel 
-0x4f82 020093 force 0 ,regb 
-0x4f83 020094 call l2cap_get_signal_tx_payload 
-0x4f84 020095 force signal_config_req ,pdata 
-0x4f85 020096 istore 1 ,contw 
-0x4f86 020097 fetch 1 ,mem_ml2cap_comm_id 
-0x4f87 020098 istore 1 ,contw 
-0x4f88 020099 setarg 0x0008 
-0x4f89 020100 istore 2 ,contw 
-0x4f8a 020101 fetch 2 ,mem_config_req_dest_cid 
-0x4f8b 020102 istore 2 ,contw 
-0x4f8c 020103 setarg 0x0000 
-0x4f8d 020104 istore 2 ,contw 
-0x4f8e 020105 force 1 ,pdata 
-0x4f8f 020106 istore 1 ,contw 
-0x4f90 020107 force 2 ,pdata 
-0x4f91 020108 istore 1 ,contw 
-0x4f92 020109 fetch 1 ,mem_send_config_req 
-0x4f93 020110 beq l2cap_rfcomm_channel ,l2cap_generate_config_req_rfcomm 
-0x4f94 020111 setarg l2cap_config_mtu_sdp 
-0x4f95 020112 istore 2 ,contw 
-0x4f96 020113 branch l2cap_generate_config_req_done 
-:      020114 l2cap_generate_config_req_rfcomm:
-0x4f97 020115 setarg l2cap_config_mtu_rfcomm 
-0x4f98 020116 istore 2 ,contw 
-:      020117 l2cap_generate_config_req_done:
-0x4f99 020118 arg 0x0c ,temp 
-0x4f9a 020119 storet 2 ,mem_l2cap_signal_tx_length 
-0x4f9b 020120 call l2cap_get_signal_tx_buff 
-0x4f9c 020121 fetch 2 ,mem_l2cap_signal_tx_length 
-0x4f9d 020122 istore 2 ,contw 
-0x4f9e 020123 force l2cap_signal_channel ,pdata 
-0x4f9f 020124 istore 2 ,contw 
-0x4fa0 020125 jam 0 ,mem_send_config_req 
-:      020126 l2cap_proc_signal_config_req_rtn:
-0x4fa1 020127 branch l2cap_process_one_signal_rtn 
-:      020129 l2cap_proc_signal_config_rsp:
-0x4fa2 020130 increase 1 ,contr 
-0x4fa3 020131 ifetch 2 ,contr 
-0x4fa4 020132 copy pdata ,rega 
-0x4fa5 020133 copy regc ,pdata 
-0x4fa6 020134 isub rega ,regc 
-0x4fa7 020135 ifetch 2 ,contr 
-0x4fa8 020136 copy pdata ,rega 
-0x4fa9 020137 bpatchx patch22_5 ,mem_patch22 
-0x4faa 020138 setarg l2cap_sdp_channel 
-0x4fab 020139 isub rega ,null 
-0x4fac 020140 branch l2cap_proc_signal_config_rsp_sdp ,zero 
-0x4fad 020141 setarg l2cap_rfcomm_channel 
-0x4fae 020142 isub rega ,null 
-0x4faf 020143 branch l2cap_proc_signal_config_rsp_rfcomm ,zero 
-0x4fb0 020144 setarg l2cap_hid_control_channel 
-0x4fb1 020145 isub rega ,null 
-0x4fb2 020146 branch l2cap_proc_signal_config_rsp_hid_ctrl ,zero 
-0x4fb3 020147 setarg l2cap_hid_interrupt_channel 
-0x4fb4 020148 isub rega ,null 
-0x4fb5 020149 branch l2cap_proc_signal_config_rsp_hid_int ,zero 
-0x4fb6 020150 increase 2 ,contr 
-0x4fb7 020151 ifetch 2 ,contr 
-0x4fb8 020152 iforce null 
-0x4fb9 020153 branch l2cap_process_one_signal_rtn 
-:      020154 l2cap_proc_signal_config_rsp_sdp:
-0x4fba 020155 fetch 1 ,mem_sdp_state 
-0x4fbb 020156 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
-0x4fbc 020157 store 1 ,mem_sdp_state 
-0x4fbd 020158 branch l2cap_process_one_signal_rtn 
-:      020159 l2cap_proc_signal_config_rsp_rfcomm:
-0x4fbe 020160 fetch 1 ,mem_rfcomm_state 
-0x4fbf 020161 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
-0x4fc0 020162 store 1 ,mem_rfcomm_state 
-0x4fc1 020163 branch l2cap_process_one_signal_rtn 
-:      020164 l2cap_proc_signal_config_rsp_hid_ctrl:
-0x4fc2 020165 fetch 1 ,mem_hid_control_state 
-0x4fc3 020166 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
-0x4fc4 020167 store 1 ,mem_hid_control_state 
-0x4fc5 020168 branch l2cap_process_one_signal_rtn 
-:      020169 l2cap_proc_signal_config_rsp_hid_int:
-0x4fc6 020170 fetch 1 ,mem_hid_interrupt_state 
-0x4fc7 020171 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
-0x4fc8 020172 store 1 ,mem_hid_interrupt_state 
-0x4fc9 020173 jam bt_evt_hid_connected ,mem_fifo_temp 
-0x4fca 020174 branch ui_ipc_send_event 
-:      020178 l2cap_proc_signal_disconnect_req:
-0x4fcb 020179 ifetch 1 ,contr 
-0x4fcc 020180 copy pdata ,queue 
-0x4fcd 020181 ifetch 2 ,contr 
-0x4fce 020182 copy pdata ,rega 
-0x4fcf 020183 copy regc ,pdata 
-0x4fd0 020184 isub rega ,regc 
-0x4fd1 020185 ifetch 2 ,contr 
-0x4fd2 020186 copy pdata ,rega 
-0x4fd3 020187 ifetch 2 ,contr 
-0x4fd4 020188 copy pdata ,timeup 
-0x4fd5 020189 copy rega ,temp 
-0x4fd6 020190 call save_cont_pointers 
-0x4fd7 020191 bpatchx patch22_6 ,mem_patch22 
-0x4fd8 020192 setarg l2cap_sdp_channel 
-0x4fd9 020193 isub temp ,null 
-0x4fda 020194 branch l2cap_proc_signal_disconnect_req_sdp ,zero 
-0x4fdb 020195 setarg l2cap_rfcomm_channel 
-0x4fdc 020196 isub temp ,null 
-0x4fdd 020197 branch l2cap_proc_signal_disconnect_req_rfcomm ,zero 
-0x4fde 020198 setarg l2cap_hid_control_channel 
-0x4fdf 020199 isub temp ,null 
-0x4fe0 020200 branch l2cap_proc_signal_disconnect_req_hid_ctrl ,zero 
-0x4fe1 020201 setarg l2cap_hid_interrupt_channel 
-0x4fe2 020202 isub temp ,null 
-0x4fe3 020203 branch l2cap_proc_signal_disconnect_req_hid_int ,zero 
-0x4fe4 020204 call l2cap_reject_command 
-0x4fe5 020205 branch l2cap_proc_signal_disconnect_req_err_rtn 
-:      020206 l2cap_proc_signal_disconnect_req_hid_ctrl:
-0x4fe6 020207 copy timeup ,temp 
-0x4fe7 020208 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4fe8 020209 isub temp ,null 
-0x4fe9 020210 branch l2cap_disconnect_hid_control_now ,zero 
-0x4fea 020211 call l2cap_reject_command 
-0x4feb 020212 branch l2cap_proc_signal_disconnect_req_err_rtn 
-:      020213 l2cap_proc_signal_disconnect_req_hid_int:
-0x4fec 020214 copy timeup ,temp 
-0x4fed 020215 fetch 2 ,mem_hid_int_remote_cid 
-0x4fee 020216 isub temp ,null 
-0x4fef 020217 branch l2cap_disconnect_hid_interrupt_now ,zero 
-0x4ff0 020218 call l2cap_reject_command 
-0x4ff1 020219 branch l2cap_proc_signal_disconnect_req_err_rtn 
-:      020221 l2cap_proc_signal_disconnect_req_sdp:
-0x4ff2 020222 copy timeup ,temp 
-0x4ff3 020223 fetch 2 ,mem_sdp_remote_cid 
-0x4ff4 020224 isub temp ,null 
-0x4ff5 020225 branch l2cap_disconnect_sdp_now ,zero 
-0x4ff6 020226 call l2cap_reject_command 
-0x4ff7 020227 branch l2cap_proc_signal_disconnect_req_err_rtn 
-:      020228 l2cap_disconnect_hid_control_now:
-0x4ff8 020229 call l2cap_reset_hid_ctrl_state 
-0x4ff9 020230 branch l2cap_send_disconnect_rsp_pkt 
-:      020231 l2cap_disconnect_hid_interrupt_now:
-0x4ffa 020232 call l2cap_reset_hid_int_state 
-0x4ffb 020233 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x4ffc 020234 branch l2cap_send_disconnect_rsp_pkt ,blank 
-0x4ffd 020242 branch l2cap_send_disconnect_rsp_pkt 
-:      020244 l2cap_disconnect_sdp_now:
-0x4ffe 020245 call l2cap_reset_sdp_channel_state 
-0x4fff 020246 fetch 1 ,mem_upper_sm_ss 
-0x5000 020247 nbranch l2cap_send_disconnect_rsp_pkt ,blank 
-0x5001 020250 branch l2cap_send_disconnect_rsp_pkt 
-:      020251 l2cap_proc_signal_disconnect_req_rfcomm:
-0x5002 020252 copy timeup ,temp 
-0x5003 020253 fetch 2 ,mem_rfcomm_remote_cid 
-0x5004 020254 isub temp ,null 
-0x5005 020255 branch l2cap_disconnect_rfcomm_now ,zero 
-0x5006 020256 call l2cap_reject_command 
-0x5007 020257 branch l2cap_proc_signal_disconnect_req_err_rtn 
-:      020258 l2cap_disconnect_rfcomm_now:
-0x5008 020259 call l2cap_reset_rfcomm_channel_state 
-0x5009 020260 branch l2cap_send_disconnect_rsp_pkt 
-:      020261 l2cap_send_disconnect_rsp_pkt:
-0x500a 020262 call load_cont_pointers 
-0x500b 020263 setarg signal_disconnect_rsp 
-0x500c 020264 istore 1 ,contw 
-0x500d 020265 copy queue ,pdata 
-0x500e 020266 istore 1 ,contw 
-0x500f 020267 setarg 0x0004 
-0x5010 020268 istore 2 ,contw 
-0x5011 020269 copy rega ,pdata 
-0x5012 020270 istore 2 ,contw 
-0x5013 020271 copy timeup ,pdata 
-0x5014 020272 istore 2 ,contw 
-0x5015 020273 force 8 ,pdata 
-0x5016 020274 branch l2cap_proc_signal_disconnect_req_rtn 
-:      020275 l2cap_proc_signal_disconnect_req_err_rtn:
-0x5017 020276 call load_cont_pointers 
-0x5018 020277 branch l2cap_proc_signal_disconnect_req_rtn 
-:      020278 l2cap_proc_signal_disconnect_req_rtn:
-0x5019 020279 iadd regb ,regb 
-0x501a 020280 branch l2cap_process_one_signal_rtn 
-:      020281 l2cap_proc_signal_disconnect_rsp:
-0x501b 020282 ifetch 1 ,contr 
-0x501c 020283 copy pdata ,queue 
-0x501d 020284 ifetch 2 ,contr 
-0x501e 020285 copy pdata ,rega 
-0x501f 020286 copy regc ,pdata 
-0x5020 020287 isub rega ,regc 
-0x5021 020288 ifetch 2 ,contr 
-0x5022 020289 copy pdata ,timeup 
-0x5023 020290 ifetch 2 ,contr 
-0x5024 020291 copy pdata ,temp 
-0x5025 020292 call save_cont_pointers 
-0x5026 020293 bpatchx patch22_7 ,mem_patch22 
-0x5027 020294 setarg l2cap_sdp_channel 
-0x5028 020295 isub temp ,null 
-0x5029 020296 branch l2cap_proc_signal_disconnect_rsp_sdp ,zero 
-0x502a 020297 setarg l2cap_rfcomm_channel 
-0x502b 020298 isub temp ,null 
-0x502c 020299 branch l2cap_proc_signal_disconnect_rsp_rfcomm ,zero 
-0x502d 020300 setarg l2cap_hid_control_channel 
-0x502e 020301 isub temp ,null 
-0x502f 020302 branch l2cap_proc_signal_disconnect_rsp_hid_ctrl ,zero 
-0x5030 020303 setarg l2cap_hid_interrupt_channel 
-0x5031 020304 isub temp ,null 
-0x5032 020305 branch l2cap_proc_signal_disconnect_rsp_hid_int ,zero 
-0x5033 020306 call l2cap_reject_command 
-0x5034 020307 branch l2cap_proc_signal_disconnect_rsp_err_rtn 
-:      020308 l2cap_proc_signal_disconnect_rsp_sdp:
-0x5035 020309 copy temp ,rega 
-0x5036 020310 copy timeup ,temp 
-0x5037 020311 fetch 2 ,mem_sdp_remote_cid 
-0x5038 020312 isub temp ,null 
-0x5039 020313 call l2cap_reset_sdp_channel_state ,zero 
-0x503a 020314 branch l2cap_proc_signal_disconnect_rsp_rtn 
-:      020315 l2cap_proc_signal_disconnect_rsp_rfcomm:
-0x503b 020316 copy temp ,rega 
-0x503c 020317 copy timeup ,temp 
-0x503d 020318 fetch 2 ,mem_rfcomm_remote_cid 
-0x503e 020319 isub temp ,null 
-0x503f 020320 call l2cap_reset_rfcomm_channel_state ,zero 
-0x5040 020321 branch l2cap_proc_signal_disconnect_rsp_rtn 
-:      020322 l2cap_proc_signal_disconnect_rsp_hid_ctrl:
-0x5041 020323 copy temp ,rega 
-0x5042 020324 copy timeup ,temp 
-0x5043 020325 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x5044 020326 isub temp ,null 
-0x5045 020327 call l2cap_reset_hid_ctrl_state ,zero 
-0x5046 020328 branch l2cap_proc_signal_disconnect_rsp_rtn 
-:      020329 l2cap_proc_signal_disconnect_rsp_hid_int:
-0x5047 020330 copy temp ,rega 
-0x5048 020331 copy timeup ,temp 
-0x5049 020332 fetch 2 ,mem_hid_int_remote_cid 
-0x504a 020333 isub temp ,null 
-0x504b 020334 call l2cap_reset_hid_int_state ,zero 
-0x504c 020335 branch l2cap_proc_signal_disconnect_rsp_rtn 
-:      020336 l2cap_proc_signal_disconnect_rsp_rtn:
-0x504d 020337 call load_cont_pointers 
-0x504e 020338 branch l2cap_process_one_signal_rtn 
-:      020339 l2cap_proc_signal_disconnect_rsp_err_rtn:
-0x504f 020340 branch l2cap_process_one_signal_rtn 
-:      020343 l2cap_proc_signal_echo_req:
-0x5050 020344 ifetch 1 ,contr 
-0x5051 020345 copy pdata ,queue 
-0x5052 020346 ifetch 2 ,contr 
-0x5053 020347 copy pdata ,rega 
-0x5054 020348 iadd contr ,contr 
-0x5055 020349 setarg 9 
-0x5056 020350 istore 1 ,contw 
-0x5057 020351 copy queue ,pdata 
-0x5058 020352 istore 1 ,contw 
-0x5059 020353 force 0x0000 ,pdata 
-0x505a 020354 istore 2 ,contw 
-0x505b 020355 force 4 ,pdata 
-0x505c 020356 iadd regb ,regb 
-0x505d 020357 copy regc ,pdata 
-0x505e 020358 isub rega ,regc 
-0x505f 020359 branch l2cap_process_one_signal_rtn 
-:      020360 l2cap_proc_signal_echo_rsp:
-0x5060 020361 branch l2cap_process_one_signal_rtn 
-:      020363 l2cap_proc_signal_info_rsp:
-0x5061 020364 branch l2cap_process_one_signal_rtn 
-:      020365 l2cap_reject_command:
-0x5062 020366 force 0 ,regb 
-0x5063 020367 call l2cap_get_signal_tx_payload 
-0x5064 020368 setarg signal_cmd_reject 
-0x5065 020369 istore 1 ,contw 
-0x5066 020370 copy queue ,pdata 
-0x5067 020371 istore 1 ,contw 
-0x5068 020372 setarg 2 
-0x5069 020373 istore 2 ,contw 
-0x506a 020374 setarg cmd_not_understood 
-0x506b 020375 istore 2 ,contw 
-0x506c 020376 increase 6 ,regb 
-0x506d 020377 arg 4 ,regc 
-0x506e 020378 branch l2cap_process_one_signal_rtn 
-:      020382 l2cap_reset_rfcomm_channel_state:
-0x506f 020383 setarg 0 
-0x5070 020384 store 2 ,mem_rfcomm_tx_pkt_length 
-0x5071 020385 store 2 ,mem_rfcomm_remote_cid 
-0x5072 020386 jam 0 ,mem_rfcomm_state 
-0x5073 020387 rtn 
-:      020388 l2cap_reset_sdp_channel_state:
-0x5074 020389 setarg 0 
-0x5075 020390 store 2 ,mem_sdp_tx_pkt_length 
-0x5076 020391 store 2 ,mem_sdp_remote_cid 
-0x5077 020392 jam 0 ,mem_sdp_state 
-0x5078 020393 rtn 
-:      020394 l2cap_reset_hid_ctrl_state:
-0x5079 020395 setarg 0 
-0x507a 020396 store 2 ,mem_hid_ctrl_remote_cid 
-0x507b 020397 jam 0 ,mem_hid_control_state 
-0x507c 020398 fetch 1 ,mem_hid_interrupt_state 
-0x507d 020399 beq 0 ,l2cap_reset_hid_disconnected 
-0x507e 020400 rtn 
-:      020402 l2cap_reset_hid_int_state:
-0x507f 020403 setarg 0 
-0x5080 020404 store 2 ,mem_hid_int_remote_cid 
-0x5081 020405 jam 0 ,mem_hid_interrupt_state 
-0x5082 020406 fetch 1 ,mem_hid_control_state 
-0x5083 020407 beq 0 ,l2cap_reset_hid_disconnected 
-0x5084 020408 rtn 
-:      020410 l2cap_reset_hid_disconnected:
-0x5085 020411 jam bt_evt_hid_disconnected ,mem_fifo_temp 
-0x5086 020412 branch ui_ipc_send_event 
-:      020414 l2cap_disconnect_interrupt_req:
-0x5087 020415 fetch 1 ,mem_control_tasks 
-0x5088 020416 set0 l2cap_disconnect_interrupt ,pdata 
-0x5089 020417 store 1 ,mem_control_tasks 
-0x508a 020418 fetch 2 ,mem_hid_int_remote_cid 
-0x508b 020419 rtn blank 
-0x508c 020420 call l2cap_malloc_signal_channel 
-0x508d 020421 fetch 2 ,mem_hid_int_remote_cid 
-0x508e 020422 copy pdata ,rega 
-0x508f 020423 force l2cap_hid_interrupt_channel ,regb 
-0x5090 020424 branch l2cap_generate_disconnect_req 
-:      020425 l2cap_disconnect_control_req:
-0x5091 020426 fetch 1 ,mem_control_tasks 
-0x5092 020427 set0 l2cap_disconnect_control ,pdata 
-0x5093 020428 store 1 ,mem_control_tasks 
-0x5094 020429 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x5095 020430 rtn blank 
-0x5096 020431 call l2cap_malloc_signal_channel 
-0x5097 020432 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x5098 020433 copy pdata ,rega 
-0x5099 020434 force l2cap_hid_control_channel ,regb 
-:      020435 l2cap_generate_disconnect_req:
-0x509a 020436 call l2cap_get_req_id 
-0x509b 020437 call l2cap_get_signal_tx_payload 
-0x509c 020438 force signal_disconnect_req ,pdata 
-0x509d 020439 istore 1 ,contw 
-0x509e 020440 fetch 1 ,mem_ml2cap_comm_id 
-0x509f 020441 istore 1 ,contw 
-0x50a0 020442 setarg 0x0004 
-0x50a1 020443 istore 2 ,contw 
-0x50a2 020444 copy rega ,pdata 
-0x50a3 020445 istore 2 ,contw 
-0x50a4 020446 copy regb ,pdata 
-0x50a5 020447 istore 2 ,contw 
-0x50a6 020448 force 0x08 ,temp 
-0x50a7 020449 branch ml2cap_send_signal 
-:      020451 ml2cap_send_signal_connect_req:
-0x50a8 020452 bpatchx patch23_0 ,mem_patch23 
-0x50a9 020453 call l2cap_get_req_id 
-0x50aa 020454 call l2cap_get_signal_tx_payload 
-0x50ab 020455 setarg signal_connect_req 
-0x50ac 020456 istore 1 ,contw 
-0x50ad 020457 fetch 1 ,mem_ml2cap_comm_id 
-0x50ae 020458 istore 1 ,contw 
-0x50af 020459 setarg 0x0004 
-0x50b0 020460 istore 2 ,contw 
-0x50b1 020461 copy temp ,pdata 
-0x50b2 020462 istore 2 ,contw 
-0x50b3 020463 copy timeup ,pdata 
-0x50b4 020464 istore 2 ,contw 
-0x50b5 020465 arg 8 ,temp 
-0x50b6 020466 branch ml2cap_send_signal 
-:      020467 ml2cap_send_signal_config_req:
-0x50b7 020468 bpatchx patch23_1 ,mem_patch23 
-0x50b8 020469 call l2cap_get_req_id 
-0x50b9 020470 call l2cap_get_signal_tx_payload 
-0x50ba 020471 setarg signal_config_req 
-0x50bb 020472 istore 1 ,contw 
-0x50bc 020473 fetch 1 ,mem_ml2cap_comm_id 
-0x50bd 020474 istore 1 ,contw 
-0x50be 020475 setarg 0x0008 
-0x50bf 020476 istore 2 ,contw 
-0x50c0 020478 copy temp ,pdata 
-0x50c1 020480 istore 2 ,contw 
-0x50c2 020481 setarg 0x0000 
-0x50c3 020482 istore 2 ,contw 
-0x50c4 020483 setarg 0x01 
-0x50c5 020484 istore 1 ,contw 
-0x50c6 020485 setarg 0x02 
-0x50c7 020486 istore 1 ,contw 
-0x50c8 020487 setarg l2cap_config_mtu_rfcomm 
-0x50c9 020488 istore 2 ,contw 
-0x50ca 020489 arg 0xc ,temp 
-0x50cb 020490 branch ml2cap_send_signal 
-:      020491 ml2cap_send_signal_disconn_req:
-0x50cc 020492 bpatchx patch23_2 ,mem_patch23 
-0x50cd 020493 call l2cap_get_req_id 
-0x50ce 020494 call l2cap_get_signal_tx_payload 
-0x50cf 020495 setarg signal_disconnect_req 
-0x50d0 020496 istore 1 ,contw 
-0x50d1 020497 fetch 1 ,mem_ml2cap_comm_id 
-0x50d2 020498 increase 1 ,pdata 
-0x50d3 020499 copy contw ,rega 
-0x50d4 020500 store 1 ,mem_ml2cap_comm_id 
-0x50d5 020501 copy rega ,contw 
-0x50d6 020502 istore 1 ,contw 
-0x50d7 020503 setarg 0x0004 
-0x50d8 020504 istore 2 ,contw 
-0x50d9 020505 copy temp ,pdata 
-0x50da 020506 istore 2 ,contw 
-0x50db 020507 copy timeup ,pdata 
-0x50dc 020508 istore 2 ,contw 
-0x50dd 020509 arg 0x8 ,temp 
-:      020512 ml2cap_send_signal:
-0x50de 020513 storet 2 ,mem_l2cap_signal_tx_length 
-0x50df 020514 copy temp ,pdata 
-0x50e0 020515 branch l2cap_malloc_discard ,blank 
-0x50e1 020516 call l2cap_get_signal_tx_buff 
-0x50e2 020517 fetch 2 ,mem_l2cap_signal_tx_length 
-0x50e3 020518 istore 2 ,contw 
-0x50e4 020519 force l2cap_signal_channel ,pdata 
-0x50e5 020520 istore 2 ,contw 
-0x50e6 020521 rtn 
-:      020523 msdp_send_req_done:
-0x50e7 020524 fetch 2 ,mem_sdp_tx_pkt_length 
-0x50e8 020525 branch assert ,blank 
-0x50e9 020526 call l2cap_get_sdp_tx_buff 
-0x50ea 020527 fetch 2 ,mem_sdp_tx_pkt_length 
-0x50eb 020528 istore 2 ,contw 
-0x50ec 020529 fetch 2 ,mem_sdp_remote_cid 
-0x50ed 020530 istore 2 ,contw 
-0x50ee 020531 rtn 
-:      020532 ml2cap_rx_multiplexing:
-0x50ef 020533 fetch 2 ,mem_l2cap_rx_pkt_length 
-0x50f0 020534 branch l2cap_rx_reset_state ,blank 
-0x50f1 020535 bpatchx patch23_3 ,mem_patch23 
-0x50f2 020536 fetch 1 ,mem_l2cap_rx_cid 
-0x50f3 020537 beq l2cap_signal_channel ,ml2cap_call_proc_signal 
-0x50f4 020538 beq l2cap_sdp_channel ,ml2cap_call_proc_sdp 
-0x50f5 020539 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
-0x50f6 020540 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
-0x50f7 020541 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
-0x50f8 020542 branch l2cap_rx_reset_state 
-:      020544 ml2cap_call_proc_signal:
-0x50f9 020545 bpatchx patch23_4 ,mem_patch23 
-0x50fa 020546 call l2cap_malloc_signal_channel 
-0x50fb 020547 force 0 ,regb 
-0x50fc 020548 call l2cap_get_signal_tx_payload 
-0x50fd 020549 copy pdata ,contw 
-0x50fe 020550 fetch 2 ,mem_l2cap_rx_pkt_length 
-0x50ff 020551 copy pdata ,regc 
-0x5100 020552 fetch 2 ,mem_l2cap_payload_ptr 
-0x5101 020553 iforce contr 
-:      020554 ml2cap_proc_one_comm_loop:
-0x5102 020555 call ml2cap_proc_one_comm 
-0x5103 020556 increase -4 ,regc 
-0x5104 020557 nbranch ml2cap_proc_one_comm_loop ,zero 
-0x5105 020558 copy regb ,temp 
-0x5106 020559 call ml2cap_send_signal 
-0x5107 020560 branch l2cap_rx_reset_state 
-:      020562 ml2cap_proc_one_comm:
-0x5108 020563 ifetch 1 ,contr 
-0x5109 020564 beq signal_connect_req ,ml2cap_proc_signal_connect_req 
-0x510a 020565 beq signal_cmd_reject ,ml2cap_proc_signal_cmd_reject 
-0x510b 020566 beq signal_connect_rsp ,ml2cap_proc_signal_connect_rsp 
-0x510c 020567 beq signal_config_rsp ,ml2cap_proc_signal_config_rsp 
-0x510d 020568 beq signal_config_req ,ml2cap_proc_signal_config_req 
-0x510e 020569 beq signal_disconnect_rsp ,ml2cap_proc_signal_disconn_rsp 
-0x510f 020570 beq signal_disconnect_req ,ml2cap_proc_signal_disconn_req 
-0x5110 020571 beq signal_echo_req ,l2cap_proc_signal_echo_req 
-0x5111 020572 beq signal_info_req ,ml2cap_proc_signal_info_req 
-0x5112 020573 branch ml2cap_proc_send_reject 
-:      020575 ml2cap_proc_signal_connect_req:
-0x5113 020576 call save_cont_pointers 
-0x5114 020578 call load_cont_pointers 
-0x5115 020579 branch l2cap_proc_signal_connect_req 
-:      020580 ml2cap_proc_signal_cmd_reject:
-0x5116 020581 ifetch 1 ,contr 
-0x5117 020582 copy pdata ,queue 
-0x5118 020583 ifetch 2 ,contr 
-0x5119 020584 copy pdata ,rega 
-0x511a 020585 copy regc ,pdata 
-0x511b 020586 isub rega ,regc 
-:      020587 mvptr:
-0x511c 020588 ifetch 1 ,contr 
-0x511d 020589 increase -1 ,rega 
-0x511e 020590 nbranch mvptr ,zero 
-0x511f 020591 rtn 
-:      020592 ml2cap_proc_signal_connect_rsp:
-0x5120 020593 ifetch 1 ,contr 
-0x5121 020594 copy pdata ,queue 
-0x5122 020595 ifetch 2 ,contr 
-0x5123 020596 copy pdata ,rega 
-0x5124 020597 ifetch 2 ,contr 
-0x5125 020598 copy pdata ,timeup 
-0x5126 020599 ifetch 2 ,contr 
-0x5127 020600 copy pdata ,temp 
-0x5128 020601 ifetch 2 ,contr 
-0x5129 020602 sub pdata ,0 ,null 
-0x512a 020603 branch ml2cap_proc_signal_connect_rsp_sucessful ,zero 
-0x512b 020604 beq l2cap_connect_refused_psm_unsupported ,ml2cap_proc_signal_connect_refused_result 
-0x512c 020605 beq l2cap_connect_refused_no_resources ,ml2cap_proc_signal_connect_refused_result 
-0x512d 020606 branch ml2cap_proc_signal_connect_rsp_mnosucc 
-:      020607 ml2cap_proc_signal_connect_refused_result:
-0x512e 020608 jam bt_evt_ml2cap_conn_refused ,mem_fifo_temp 
-0x512f 020609 call ui_ipc_send_event 
-:      020610 ml2cap_proc_signal_connect_rsp_mnosucc:
-0x5130 020611 ifetch 2 ,contr 
-0x5131 020612 branch mnosucc 
-:      020613 ml2cap_proc_signal_connect_rsp_sucessful:
-0x5132 020614 call save_cont_pointers 
-0x5133 020618 bpatchx patch23_5 ,mem_patch23 
-0x5134 020619 setarg l2cap_sdp_channel 
-0x5135 020620 isub temp ,null 
-0x5136 020621 branch ml2cap_proc_signal_connect_rsp_sdp ,zero 
-0x5137 020622 setarg l2cap_rfcomm_channel 
-0x5138 020623 isub temp ,null 
-0x5139 020624 branch ml2cap_proc_signal_connect_rsp_rfcomm ,zero 
-0x513a 020625 setarg l2cap_hid_interrupt_channel 
-0x513b 020626 isub temp ,null 
-0x513c 020627 branch ml2cap_proc_signal_connect_rsp_hid_int ,zero 
-0x513d 020628 setarg l2cap_hid_control_channel 
-0x513e 020629 isub temp ,null 
-0x513f 020630 branch ml2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
-0x5140 020631 branch mnosucc 
-:      020632 ml2cap_proc_signal_connect_rsp_sdp:
-0x5141 020633 copy timeup ,pdata 
-0x5142 020634 store 2 ,mem_sdp_remote_cid 
-0x5143 020635 fetch 1 ,mem_sdp_state 
-0x5144 020636 set1 l2cap_channel_state_conn_res 
-0x5145 020637 store 1 ,mem_sdp_state 
-0x5146 020638 branch mnosucc1 
-:      020639 ml2cap_proc_signal_connect_rsp_rfcomm:
-0x5147 020640 copy timeup ,pdata 
-0x5148 020641 store 2 ,mem_rfcomm_remote_cid 
-0x5149 020642 fetch 1 ,mem_rfcomm_state 
-0x514a 020643 set1 l2cap_channel_state_conn_res 
-0x514b 020644 store 1 ,mem_rfcomm_state 
-0x514c 020645 branch mnosucc1 
-:      020646 ml2cap_proc_signal_connect_rsp_hid_ctrl:
-0x514d 020647 copy timeup ,pdata 
-0x514e 020648 store 2 ,mem_hid_ctrl_remote_cid 
-0x514f 020649 fetch 1 ,mem_hid_control_state 
-0x5150 020650 set1 l2cap_channel_state_conn_res 
-0x5151 020651 store 1 ,mem_hid_control_state 
-0x5152 020652 branch mnosucc1 
-:      020653 ml2cap_proc_signal_connect_rsp_hid_int:
-0x5153 020654 copy timeup ,pdata 
-0x5154 020655 store 2 ,mem_hid_int_remote_cid 
-0x5155 020656 fetch 1 ,mem_hid_interrupt_state 
-0x5156 020657 set1 l2cap_channel_state_conn_res 
-0x5157 020658 store 1 ,mem_hid_interrupt_state 
-:      020661 mnosucc1:
-0x5158 020662 call load_cont_pointers 
-:      020663 mnosucc:
-0x5159 020664 copy regc ,pdata 
-0x515a 020665 isub rega ,regc 
-0x515b 020666 rtn 
-:      020668 ml2cap_proc_signal_config_rsp:
-0x515c 020669 ifetch 1 ,contr 
-0x515d 020670 copy pdata ,queue 
-0x515e 020671 ifetch 2 ,contr 
-0x515f 020672 copy pdata ,rega 
-0x5160 020673 copy regc ,pdata 
-0x5161 020674 isub rega ,regc 
-0x5162 020675 ifetch 2 ,contr 
-0x5163 020676 copy pdata ,timeup 
-0x5164 020677 ifetch 2 ,contr 
-0x5165 020678 ifetch 2 ,contr 
-0x5166 020679 nbranch mcrsdone1 ,blank 
-0x5167 020680 call save_cont_pointers 
-0x5168 020684 copy timeup ,temp 
-0x5169 020685 bpatchx patch23_6 ,mem_patch23 
-0x516a 020686 setarg l2cap_sdp_channel 
-0x516b 020687 isub temp ,null 
-0x516c 020688 branch ml2cap_proc_signal_config_rsp_sdp ,zero 
-0x516d 020689 setarg l2cap_rfcomm_channel 
-0x516e 020690 isub temp ,null 
-0x516f 020691 branch ml2cap_proc_signal_config_rsp_rfcomm ,zero 
-0x5170 020692 setarg l2cap_hid_control_channel 
-0x5171 020693 isub temp ,null 
-0x5172 020694 branch ml2cap_proc_signal_config_rsp_hid_ctrl ,zero 
-0x5173 020695 setarg l2cap_hid_interrupt_channel 
-0x5174 020696 isub temp ,null 
-0x5175 020697 branch ml2cap_proc_signal_config_rsp_hid_int ,zero 
-:      020698 ml2cap_proc_signal_config_rsp_sdp:
-0x5176 020699 fetch 1 ,mem_sdp_state 
-0x5177 020700 set1 l2cap_channel_state_rcv_cfg_res 
-0x5178 020701 store 1 ,mem_sdp_state 
-0x5179 020702 rtn 
-:      020703 ml2cap_proc_signal_config_rsp_rfcomm:
-0x517a 020704 fetch 1 ,mem_rfcomm_state 
-0x517b 020705 set1 l2cap_channel_state_rcv_cfg_res 
-0x517c 020706 store 1 ,mem_rfcomm_state 
-0x517d 020707 rtn 
-:      020708 ml2cap_proc_signal_config_rsp_hid_ctrl:
-0x517e 020709 fetch 1 ,mem_hid_control_state 
-0x517f 020710 set1 l2cap_channel_state_rcv_cfg_res 
-0x5180 020711 store 1 ,mem_hid_control_state 
-0x5181 020712 rtn 
-:      020713 ml2cap_proc_signal_config_rsp_hid_int:
-0x5182 020714 fetch 1 ,mem_hid_interrupt_state 
-0x5183 020715 set1 l2cap_channel_state_rcv_cfg_res 
-0x5184 020716 store 1 ,mem_hid_interrupt_state 
-0x5185 020717 jam bt_evt_hid_connected ,mem_fifo_temp 
-0x5186 020718 branch ui_ipc_send_event 
-:      020721 mcfrsdone:
-0x5187 020722 call load_cont_pointers 
-:      020723 mcrsdone1:
-0x5188 020724 increase -6 ,rega 
-:      020725 mloop2:
-0x5189 020726 branch mcrsdone ,zero 
-0x518a 020727 increase 1 ,contr 
-0x518b 020728 increase -1 ,rega 
-0x518c 020729 branch mloop2 
-:      020730 mcrsdone:
-0x518d 020731 rtn 
-:      020732 ml2cap_proc_signal_config_req:
-0x518e 020733 ifetch 1 ,contr 
-0x518f 020734 copy pdata ,queue 
-0x5190 020735 ifetch 2 ,contr 
-0x5191 020736 copy pdata ,rega 
-0x5192 020737 copy regc ,pdata 
-0x5193 020738 isub rega ,regc 
-0x5194 020739 ifetch 2 ,contr 
-0x5195 020740 increase 2 ,contr 
-0x5196 020741 copy pdata ,temp 
-0x5197 020742 setarg signal_config_rsp 
-0x5198 020743 istore 1 ,contw 
-0x5199 020744 copy queue ,pdata 
-0x519a 020745 istore 1 ,contw 
-0x519b 020746 increase 2 ,rega 
-0x519c 020747 copy rega ,pdata 
-0x519d 020748 istore 2 ,contw 
-0x519e 020749 call save_cont_pointers 
-0x519f 020750 bpatchx patch23_7 ,mem_patch23 
-0x51a0 020751 setarg l2cap_sdp_channel 
-0x51a1 020752 isub temp ,null 
-0x51a2 020753 branch ml2cap_proc_signal_config_req_sdp ,zero 
-0x51a3 020754 setarg l2cap_rfcomm_channel 
-0x51a4 020755 isub temp ,null 
-0x51a5 020756 branch ml2cap_proc_signal_config_req_rfcomm ,zero 
-0x51a6 020757 setarg l2cap_hid_control_channel 
-0x51a7 020758 isub temp ,null 
-0x51a8 020759 branch ml2cap_proc_signal_config_req_hid_ctrl ,zero 
-0x51a9 020760 setarg l2cap_hid_interrupt_channel 
-0x51aa 020761 isub temp ,null 
-0x51ab 020762 branch ml2cap_proc_signal_config_req_hid_int ,zero 
-0x51ac 020763 branch mcfgrq_done 
-:      020764 ml2cap_proc_signal_config_req_sdp:
-0x51ad 020765 fetch 1 ,mem_sdp_state 
-0x51ae 020766 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x51af 020767 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x51b0 020768 store 1 ,mem_sdp_state 
-0x51b1 020769 bbit1 l2cap_channel_state_snd_cfg_req ,ml2cap_proc_signal_config_req_sdp_nsndreq 
-0x51b2 020770 fetcht 1 ,mem_control_tasks 
-0x51b3 020771 set1 l2cap_init_config_req ,temp 
-0x51b4 020772 storet 1 ,mem_control_tasks 
-0x51b5 020773 copy queue ,pdata 
-0x51b6 020774 increase 1 ,pdata 
-0x51b7 020775 store 1 ,mem_config_identifier 
-0x51b8 020776 fetch 1 ,mem_sdp_state 
-0x51b9 020777 set1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x51ba 020778 store 1 ,mem_sdp_state 
-:      020779 ml2cap_proc_signal_config_req_sdp_nsndreq:
-0x51bb 020780 fetch 2 ,mem_sdp_remote_cid 
-0x51bc 020781 store 2 ,mem_config_req_dest_cid 
-0x51bd 020782 branch mcfgrq_done 
-:      020783 ml2cap_proc_signal_config_req_rfcomm:
-0x51be 020784 fetch 1 ,mem_rfcomm_state 
-0x51bf 020785 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x51c0 020786 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x51c1 020787 store 1 ,mem_rfcomm_state 
-0x51c2 020788 fetch 2 ,mem_rfcomm_remote_cid 
-0x51c3 020789 branch mcfgrq_done 
-:      020790 ml2cap_proc_signal_config_req_hid_ctrl:
-0x51c4 020791 fetch 1 ,mem_hid_control_state 
-0x51c5 020792 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x51c6 020793 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x51c7 020794 store 1 ,mem_hid_control_state 
-0x51c8 020795 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x51c9 020796 branch mcfgrq_done 
-:      020797 ml2cap_proc_signal_config_req_hid_int:
-0x51ca 020798 fetch 1 ,mem_hid_interrupt_state 
-0x51cb 020799 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
-0x51cc 020800 set1 l2cap_channel_state_snd_cfg_res ,pdata 
-0x51cd 020801 store 1 ,mem_hid_interrupt_state 
-0x51ce 020802 fetch 2 ,mem_hid_int_remote_cid 
-:      020805 mcfgrq_done:
-0x51cf 020806 copy pdata ,timeup 
-0x51d0 020807 call load_cont_pointers 
-0x51d1 020809 copy timeup ,pdata 
-0x51d2 020811 istore 2 ,contw 
-0x51d3 020812 force 0x0000 ,pdata 
-0x51d4 020813 istore 2 ,contw 
-0x51d5 020814 force 0x0000 ,pdata 
-0x51d6 020815 istore 2 ,contw 
-0x51d7 020816 force 10 ,pdata 
-0x51d8 020817 iadd regb ,regb 
-0x51d9 020818 increase -6 ,rega 
-:      020819 mloop1:
-0x51da 020820 branch mcrqdone ,zero 
-0x51db 020821 ifetch 1 ,contr 
-0x51dc 020822 istore 1 ,contw 
-0x51dd 020823 increase 1 ,regb 
-0x51de 020824 increase -1 ,rega 
-0x51df 020825 branch mloop1 
-:      020826 mcrqdone:
-0x51e0 020827 rtn 
-:      020828 ml2cap_proc_signal_disconn_req:
-0x51e1 020829 ifetch 1 ,contr 
-0x51e2 020830 copy pdata ,queue 
-0x51e3 020831 ifetch 2 ,contr 
-0x51e4 020832 copy pdata ,rega 
-0x51e5 020833 copy regc ,pdata 
-0x51e6 020834 isub rega ,regc 
-0x51e7 020836 ifetch 2 ,contr 
-0x51e8 020837 copy pdata ,rega 
-0x51e9 020838 ifetch 2 ,contr 
-0x51ea 020839 copy pdata ,timeup 
-0x51eb 020840 call save_cont_pointers 
-0x51ec 020841 bpatchx patch24_0 ,mem_patch24 
-0x51ed 020842 setarg l2cap_sdp_channel 
-0x51ee 020843 copy rega ,temp 
-0x51ef 020844 isub temp ,null 
-0x51f0 020845 branch ml2cap_proc_signal_disconn_sdp ,zero 
-0x51f1 020846 setarg l2cap_hid_control_channel 
-0x51f2 020847 copy rega ,temp 
-0x51f3 020848 isub temp ,null 
-0x51f4 020849 branch ml2cap_proc_signal_disconn_hid_ctrl ,zero 
-0x51f5 020850 setarg l2cap_hid_interrupt_channel 
-0x51f6 020851 copy rega ,temp 
-0x51f7 020852 isub temp ,null 
-0x51f8 020853 branch ml2cap_proc_signal_disconn_hid_int ,zero 
-0x51f9 020854 branch mclsrfc 
-:      020855 ml2cap_proc_signal_disconn_sdp:
-0x51fa 020856 setarg 0x0000 
-0x51fb 020857 store 2 ,mem_sdp_tx_pkt_length 
-0x51fc 020858 store 2 ,mem_sdp_remote_cid 
-0x51fd 020859 store 1 ,mem_sdp_state 
-0x51fe 020860 branch mclssdp 
-:      020861 ml2cap_proc_signal_disconn_hid_ctrl:
-0x51ff 020862 call l2cap_reset_hid_ctrl_state 
-0x5200 020863 branch mclssdp 
-:      020864 ml2cap_proc_signal_disconn_hid_int:
-0x5201 020865 call l2cap_reset_hid_int_state 
-0x5202 020871 branch mclssdp 
-:      020872 mclsrfc:
-0x5203 020873 setarg 0x0000 
-0x5204 020874 store 2 ,mem_rfcomm_tx_pkt_length 
-:      020875 mclssdp:
-0x5205 020876 call load_cont_pointers 
-0x5206 020877 setarg signal_disconnect_rsp 
-0x5207 020878 istore 1 ,contw 
-0x5208 020879 copy queue ,pdata 
-0x5209 020880 istore 1 ,contw 
-0x520a 020881 setarg 0x0004 
-0x520b 020882 istore 2 ,contw 
-0x520c 020883 copy rega ,pdata 
-0x520d 020884 istore 2 ,contw 
-0x520e 020885 copy timeup ,pdata 
-0x520f 020886 istore 2 ,contw 
-0x5210 020887 force 8 ,pdata 
-0x5211 020888 iadd regb ,regb 
-0x5212 020889 rtn 
-:      020891 ml2cap_proc_signal_disconn_rsp:
-0x5213 020892 ifetch 1 ,contr 
-0x5214 020893 copy pdata ,queue 
-0x5215 020894 ifetch 2 ,contr 
-0x5216 020895 copy pdata ,rega 
-0x5217 020896 ifetch 2 ,contr 
-0x5218 020897 copy pdata ,timeup 
-0x5219 020898 ifetch 2 ,contr 
-0x521a 020899 copy pdata ,temp 
-0x521b 020900 call save_cont_pointers 
-0x521c 020901 bpatchx patch24_1 ,mem_patch24 
-0x521d 020902 fetch 1 ,mem_ml2cap_comm_id 
-0x521e 020903 icompare 0xff ,queue 
-0x521f 020904 nbranch mdisdone ,true 
-0x5220 020905 setarg l2cap_sdp_channel 
-0x5221 020906 isub temp ,null 
-0x5222 020907 branch ml2cap_proc_signal_disconn_rsp_sdp ,zero 
-0x5223 020908 setarg l2cap_rfcomm_channel 
-0x5224 020909 isub temp ,null 
-0x5225 020910 branch ml2cap_proc_signal_disconn_rsp_rfcomm ,zero 
-0x5226 020911 branch mdisdone 
-:      020912 ml2cap_proc_signal_disconn_rsp_sdp:
-0x5227 020913 jam 0 ,mem_sdp_remote_cid 
-0x5228 020914 jam 0 ,mem_sdp_state 
-0x5229 020915 branch mdisdone 
-:      020916 ml2cap_proc_signal_disconn_rsp_rfcomm:
-:      020919 mdisdone:
-0x522a 020920 call load_cont_pointers 
-0x522b 020921 copy regc ,pdata 
-0x522c 020922 isub rega ,regc 
-0x522d 020923 rtn 
-:      020925 ml2cap_proc_send_reject:
-0x522e 020926 setarg signal_cmd_reject 
-0x522f 020927 istore 1 ,contw 
-0x5230 020928 ifetch 1 ,contr 
-0x5231 020929 istore 1 ,contw 
-0x5232 020930 setarg 0x0002 
-0x5233 020931 istore 2 ,contw 
-0x5234 020932 setarg 0x0000 
-0x5235 020933 istore 2 ,contw 
-0x5236 020934 setarg 0x0006 
-0x5237 020935 iadd regb ,regb 
-0x5238 020936 force 4 ,regc 
-0x5239 020937 rtn 
-:      020940 l2cap_get_req_id:
-0x523a 020941 fetch 1 ,mem_ml2cap_comm_id 
-0x523b 020942 increase 1 ,pdata 
-0x523c 020943 bne 0 ,l2cap_get_req_id_ok 
-0x523d 020944 increase 1 ,pdata 
-:      020945 l2cap_get_req_id_ok:
-0x523e 020946 store 1 ,mem_ml2cap_comm_id 
-0x523f 020947 rtn 
-:      020957 l2cap_malloc:
-0x5240 020958 bpatchx patch24_2 ,mem_patch24 
-0x5241 020959 arg 0 ,regb 
-0x5242 020960 call l2cap_malloc_is_fifo_full 
-0x5243 020961 nbranch assert ,blank 
-0x5244 020962 call l2cap_malloc_get_full_map 
-0x5245 020963 arg mem_tx_buff0 ,regb 
-0x5246 020964 arg 0 ,queue 
-:      020965 l2cap_malloc_loop:
-0x5247 020966 fetcht 1 ,mem_used_map 
-0x5248 020967 qisolate1 temp 
-0x5249 020968 branch l2cap_malloc_next ,true 
-0x524a 020969 call l2cap_malloc_enough 
-0x524b 020970 sub timeup ,0 ,null 
-0x524c 020971 branch l2cap_malloc_next ,positive 
-0x524d 020972 call l2cap_malloc_into_fifo 
-0x524e 020973 branch l2cap_malloc_rtn 
-:      020974 l2cap_malloc_next:
-0x524f 020975 increase 128 ,regb 
-0x5250 020976 increase 1 ,queue 
-0x5251 020977 setarg 8 
-0x5252 020978 isub queue ,null 
-0x5253 020979 branch l2cap_malloc_loop ,positive 
-0x5254 020980 arg 0 ,regb 
-:      020981 l2cap_malloc_rtn:
-0x5255 020982 copy regb ,pdata 
-0x5256 020983 branch assert ,blank 
-0x5257 020984 rtn 
-:      020992 l2cap_malloc_fifo_out:
-0x5258 020993 bpatchx patch24_3 ,mem_patch24 
-0x5259 020994 call l2cap_malloc_fifo_get_first_ptr 
-0x525a 020995 increase 1 ,contr 
-0x525b 020996 ifetch 2 ,contr 
-0x525c 020997 rtn 
-:      021003 l2cap_malloc_free:
-0x525d 021004 bpatchx patch24_4 ,mem_patch24 
-0x525e 021005 call l2cap_malloc_fifo_get_first_ptr 
-0x525f 021006 copy contr ,contw 
-0x5260 021007 copy contr ,temp 
-0x5261 021008 setarg 0 
-0x5262 021009 istore 3 ,contw 
-0x5263 021010 rtn 
-:      021015 l2cap_malloc_discard:
-0x5264 021016 bpatchx patch24_5 ,mem_patch24 
-0x5265 021017 call l2cap_malloc_is_fifo_empty 
-0x5266 021018 branch assert ,blank 
-0x5267 021019 fetch 3 ,mem_tx_fifo2 
-0x5268 021020 store 3 ,mem_tx_fifo3 
-0x5269 021021 fetch 3 ,mem_tx_fifo1 
-0x526a 021022 store 3 ,mem_tx_fifo2 
-0x526b 021023 fetch 3 ,mem_tx_fifo0 
-0x526c 021024 store 3 ,mem_tx_fifo1 
-0x526d 021025 rtn 
-:      021031 l2cap_malloc_is_fifo_full:
-0x526e 021032 bpatchx patch24_6 ,mem_patch24 
-0x526f 021033 fetch 3 ,mem_tx_fifo0 
-0x5270 021034 rtn 
-:      021040 l2cap_malloc_is_fifo_nearly_full:
-0x5271 021041 bpatchx patch24_7 ,mem_patch24 
-0x5272 021042 fetch 3 ,mem_tx_fifo1 
-0x5273 021043 rtn 
-:      021049 l2cap_malloc_is_fifo_empty:
-0x5274 021050 bpatchx patch25_0 ,mem_patch25 
-0x5275 021051 fetch 3 ,mem_tx_fifo3 
-0x5276 021052 rtn 
-:      021057 l2cap_malloc_fifo_get_first_ptr:
-0x5277 021058 call l2cap_malloc_is_fifo_empty 
-0x5278 021059 branch assert ,blank 
-0x5279 021060 arg mem_tx_fifo0 ,contr 
-:      021061 l2cap_malloc_free_loop:
-0x527a 021062 ifetch 3 ,contr 
-0x527b 021063 branch l2cap_malloc_free_loop ,blank 
-0x527c 021064 increase -3 ,contr 
-0x527d 021065 rtn 
-:      021072 l2cap_malloc_get_full_map:
-0x527e 021073 bpatchx patch25_1 ,mem_patch25 
-0x527f 021074 arg 4 ,loopcnt 
-0x5280 021075 arg mem_tx_fifo0_map ,contr 
-0x5281 021076 arg 0 ,temp 
-:      021077 l2cap_malloc_get_full_map_loop:
-0x5282 021078 ifetch 3 ,contr 
-0x5283 021079 and pdata ,0xff ,pdata 
-0x5284 021080 ior temp ,temp 
-0x5285 021081 loop l2cap_malloc_get_full_map_loop 
-0x5286 021082 storet 1 ,mem_used_map 
-0x5287 021083 rtn 
-:      021091 l2cap_malloc_into_fifo:
-0x5288 021092 bpatchx patch25_2 ,mem_patch25 
-0x5289 021093 call l2cap_malloc_is_fifo_full 
-0x528a 021094 nbranch assert ,blank 
-0x528b 021095 call l2cap_malloc_is_fifo_empty 
-0x528c 021096 branch l2cap_malloc_into_fifo_no_push ,blank 
-0x528d 021097 fetch 3 ,mem_tx_fifo1 
-0x528e 021098 store 3 ,mem_tx_fifo0 
-0x528f 021099 ifetch 3 ,contr 
-0x5290 021100 istore 3 ,contw 
-0x5291 021101 ifetch 3 ,contr 
-0x5292 021102 istore 3 ,contw 
-0x5293 021103 setarg 0 
-0x5294 021104 istore 3 ,contw 
-:      021105 l2cap_malloc_into_fifo_no_push:
-0x5295 021106 arg 0 ,temp 
-0x5296 021107 copy timeup ,pdata 
-0x5297 021108 iadd queue ,pdata 
-:      021109 l2cap_malloc_into_fifo_loop:
-0x5298 021110 qset1 temp 
-0x5299 021111 increase 1 ,queue 
-0x529a 021112 isub queue ,null 
-0x529b 021113 nbranch l2cap_malloc_into_fifo_loop ,zero 
-0x529c 021115 lshift8 regb ,pdata 
-0x529d 021116 ior temp ,pdata 
-0x529e 021117 store 3 ,mem_tx_fifo3 
-0x529f 021118 rtn 
-:      021128 l2cap_malloc_enough:
-0x52a0 021129 bpatchx patch25_3 ,mem_patch25 
-0x52a1 021130 call l2cap_malloc_get_full_map 
-0x52a2 021131 copy queue ,regc 
-0x52a3 021132 arg 0 ,temp 
-0x52a4 021133 arg 0 ,timeup 
-:      021135 l2cap_malloc_enough_loop:
-0x52a5 021136 copy queue ,pdata 
-0x52a6 021137 beq 8 ,l2cap_malloc_enough_end 
-0x52a7 021138 fetch 1 ,mem_used_map 
-0x52a8 021139 qisolate1 pdata 
-0x52a9 021140 branch l2cap_malloc_enough_end ,true 
-0x52aa 021141 increase 128 ,temp 
-0x52ab 021142 increase 1 ,queue 
-0x52ac 021143 copy rega ,pdata 
-0x52ad 021144 isub temp ,null 
-0x52ae 021145 branch l2cap_malloc_enough_end ,zero 
-0x52af 021146 branch l2cap_malloc_enough_loop ,positive 
-:      021147 l2cap_malloc_enough_end:
-0x52b0 021148 copy temp ,pdata 
-0x52b1 021149 isub rega ,null 
-0x52b2 021150 nbranch l2cap_malloc_enough_rtn ,positive 
-0x52b3 021151 copy queue ,pdata 
-0x52b4 021152 copy regc ,temp 
-0x52b5 021153 isub temp ,timeup 
-:      021154 l2cap_malloc_enough_rtn:
-0x52b6 021155 copy regc ,queue 
-0x52b7 021156 rtn 
-:      021159 l2cap_malloc_signal_channel:
-0x52b8 021160 bpatchx patch25_4 ,mem_patch25 
-0x52b9 021161 arg l2cap_signal_malloc_size ,rega 
-0x52ba 021162 call l2cap_malloc 
-0x52bb 021163 store 2 ,mem_l2cap_signal_tx_buff_ptr 
-0x52bc 021164 increase 4 ,pdata 
-0x52bd 021165 store 2 ,mem_l2cap_signal_tx_payload_ptr 
-0x52be 021166 setarg 0 
-0x52bf 021167 store 2 ,mem_l2cap_signal_tx_length 
-0x52c0 021168 rtn 
-:      021170 l2cap_get_signal_tx_buff:
-0x52c1 021171 fetch 2 ,mem_l2cap_signal_tx_buff_ptr 
-0x52c2 021172 branch l2cap_util_pdata_to_contw 
-:      021174 l2cap_get_signal_tx_payload:
-0x52c3 021175 fetch 2 ,mem_l2cap_signal_tx_payload_ptr 
-0x52c4 021176 branch l2cap_util_pdata_to_contw 
-:      021179 l2cap_malloc_sdp_channel:
-0x52c5 021180 bpatchx patch25_5 ,mem_patch25 
-0x52c6 021181 arg sdp_malloc_size ,rega 
-0x52c7 021182 call l2cap_malloc 
-0x52c8 021183 store 2 ,mem_sdp_tx_buff_ptr 
-0x52c9 021184 increase 4 ,pdata 
-0x52ca 021185 store 2 ,mem_sdp_tx_payload_ptr 
-0x52cb 021186 setarg 0 
-0x52cc 021187 store 2 ,mem_sdp_tx_pkt_length 
-0x52cd 021188 rtn 
-:      021190 l2cap_get_sdp_tx_buff:
-0x52ce 021191 fetch 2 ,mem_sdp_tx_buff_ptr 
-0x52cf 021192 branch l2cap_util_pdata_to_contw 
-:      021194 l2cap_get_sdp_tx_payload:
-0x52d0 021195 fetch 2 ,mem_sdp_tx_payload_ptr 
-0x52d1 021196 branch l2cap_util_pdata_to_contw 
-:      021199 l2cap_malloc_rfcomm_channel:
-0x52d2 021200 bpatchx patch25_6 ,mem_patch25 
-0x52d3 021201 call push_stack 
-0x52d4 021202 jam rfcomm_malloc_fail ,mem_rfcomm_malloc_fail_flag 
-0x52d5 021203 call l2cap_malloc_is_fifo_full 
-0x52d6 021204 nrtn blank 
-0x52d7 021205 arg rfcomm_malloc_size ,rega 
-0x52d8 021206 call l2cap_malloc 
-0x52d9 021207 store 2 ,mem_rfcomm_tx_buff_ptr 
-0x52da 021208 increase 4 ,pdata 
-0x52db 021209 store 2 ,mem_rfcomm_tx_payload_ptr 
-0x52dc 021210 setarg 0 
-0x52dd 021211 store 2 ,mem_rfcomm_tx_pkt_length 
-0x52de 021212 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
-0x52df 021213 branch pop_stack 
-:      021215 l2cap_get_rfcomm_tx_buff:
-0x52e0 021216 fetch 2 ,mem_rfcomm_tx_buff_ptr 
-0x52e1 021217 branch l2cap_util_pdata_to_contw 
-:      021219 l2cap_util_pdata_to_contw:
-0x52e2 021220 branch assert ,blank 
-0x52e3 021221 copy pdata ,contw 
-0x52e4 021222 rtn 
-:      021225 l2cap_lpm_save_calc_len:
-0x52e5 021226 bpatchx patch25_7 ,mem_patch25 
-0x52e6 021227 arg 0 ,regb 
-0x52e7 021228 arg mem_tx_fifo0_map ,rega 
-0x52e8 021229 increase -2 ,rega 
-:      021230 l2cap_lpm_save_calc_len_loop:
-0x52e9 021231 increase 2 ,rega 
-0x52ea 021232 setarg mem_tx_fifo_end 
-0x52eb 021233 isub rega ,null 
-0x52ec 021234 branch l2cap_lpm_save_calc_len_end ,zero 
-0x52ed 021235 ifetch 1 ,rega 
-0x52ee 021236 increase 1 ,rega 
-0x52ef 021237 branch l2cap_lpm_save_calc_len_loop ,blank 
-0x52f0 021238 ifetcht 2 ,rega 
-0x52f1 021239 ifetch 2 ,temp 
-0x52f2 021240 iadd regb ,regb 
-0x52f3 021241 increase 4 ,regb 
-0x52f4 021242 branch l2cap_lpm_save_calc_len_loop 
-:      021243 l2cap_lpm_save_calc_len_end:
-0x52f5 021244 copy regb ,pdata 
-0x52f6 021245 rtn 
-:      021248 l2cap_lpm_get_wake_lock:
-0x52f7 021249 arg wake_lock_l2cap_tx ,queue 
-0x52f8 021250 branch lpm_get_wake_lock 
-:      021252 l2cap_lpm_put_wake_lock:
-0x52f9 021253 arg wake_lock_l2cap_tx ,queue 
-0x52fa 021254 branch lpm_put_wake_lock 
-:      021256 l2cap_lpm_save_txbuf:
-0x52fb 021257 bpatchx patch26_0 ,mem_patch26 
-0x52fc 021258 call l2cap_malloc_get_full_map 
-0x52fd 021259 fetch 1 ,mem_used_map 
-0x52fe 021260 rtn blank 
-0x52ff 021261 call l2cap_lpm_save_calc_len 
-0x5300 021262 arg l2cap_lpm_txbuf_len ,temp 
-0x5301 021263 isub temp ,null 
-0x5302 021264 branch l2cap_lpm_get_wake_lock ,positive 
-0x5303 021265 call l2cap_lpm_put_wake_lock 
-0x5304 021266 arg mem_l2cap_lpm_txbuf ,contw 
-0x5305 021267 arg mem_tx_fifo0 ,rega 
-:      021268 l2cap_lpm_save_txbuf_loop:
-0x5306 021269 setarg mem_tx_fifo_end 
-0x5307 021270 isub rega ,null 
-0x5308 021271 rtn zero 
-0x5309 021272 ifetch 1 ,rega 
-0x530a 021273 increase 1 ,rega 
-0x530b 021274 nbranch l2cap_lpm_save_txbuf_nempty ,blank 
-0x530c 021275 istore 2 ,contw 
-0x530d 021276 increase 2 ,rega 
-0x530e 021277 branch l2cap_lpm_save_txbuf_loop 
-:      021278 l2cap_lpm_save_txbuf_nempty:
-0x530f 021279 ifetch 2 ,rega 
-0x5310 021280 increase 2 ,rega 
-0x5311 021281 copy pdata ,contr 
-0x5312 021282 ifetch 2 ,contr 
-0x5313 021283 istore 2 ,contw 
-0x5314 021284 copy pdata ,loopcnt 
-0x5315 021285 increase 2 ,loopcnt 
-0x5316 021286 call memcpy 
-0x5317 021287 branch l2cap_lpm_save_txbuf_loop 
-:      021289 l2cap_lpm_load_txbuf:
-0x5318 021290 bpatchx patch26_1 ,mem_patch26 
-0x5319 021291 call l2cap_malloc_get_full_map 
-0x531a 021292 fetch 1 ,mem_used_map 
-0x531b 021293 rtn blank 
-0x531c 021294 arg mem_tx_fifo0_ptr ,rega 
-0x531d 021295 increase -3 ,rega 
-0x531e 021296 arg mem_l2cap_lpm_txbuf ,contr 
-:      021297 l2cap_lpm_load_txbuf_loop:
-0x531f 021298 increase 3 ,rega 
-0x5320 021299 setarg mem_tx_fifo_end + 1 
-0x5321 021300 isub rega ,null 
-0x5322 021301 rtn zero 
-0x5323 021302 ifetch 2 ,contr 
-0x5324 021303 branch l2cap_lpm_load_txbuf_loop ,blank 
-0x5325 021304 increase 4 ,pdata 
-0x5326 021305 copy pdata ,loopcnt 
-0x5327 021306 copy contr ,regb 
-0x5328 021307 ifetch 2 ,rega 
-0x5329 021308 copy pdata ,contw 
-0x532a 021309 copy regb ,contr 
-0x532b 021310 increase -2 ,contr 
-0x532c 021311 call memcpy 
-0x532d 021312 branch l2cap_lpm_load_txbuf_loop 
-:      021322 le_init_conn:
-0x532e 021323 bpatchx patch26_2 ,mem_patch26 
-0x532f 021324 disable wake 
-0x5330 021325 jam 1 ,mem_le_conn_handle 
-0x5331 021326 jam 3 ,mem_le_state 
-0x5332 021327 jam 1 ,mem_le_arq 
-0x5333 021328 setarg -1 
-0x5334 021329 store 2 ,mem_le_event_count 
-0x5335 021330 force 0 ,pdata 
-0x5336 021331 store 1 ,mem_le_ch 
-0x5337 021332 store 1 ,mem_le_op 
-0x5338 021333 store 3 ,mem_sniff_rcv 
-0x5339 021334 store 3 ,mem_sniff_lost 
-0x533a 021335 store 5 ,mem_le_pcnt_tx 
-0x533b 021336 set1 39 ,pdata 
-0x533c 021337 store 5 ,mem_le_pcnt_rx 
-0x533d 021338 jam 1 ,mem_le_txheader 
-0x533e 021339 jam 0 ,mem_le_txlen 
-0x533f 021340 branch le_supervision_flush 
-:      021342 le_init_master:
-0x5340 021343 bpatchx patch26_3 ,mem_patch26 
-0x5341 021344 enable master 
-0x5342 021345 jam lemode_master ,mem_le_mode 
-0x5343 021346 jam 1 ,mem_le_att_handle 
-0x5344 021347 jam 1 ,mem_le_search_handle_start 
-0x5345 021348 setarg 0xffff 
-0x5346 021349 store 2 ,mem_le_search_handle_end 
-0x5347 021350 force 0 ,pdata 
-0x5348 021351 store 5 ,mem_le_pcnt_rx 
-0x5349 021352 set1 39 ,pdata 
-0x534a 021353 store 5 ,mem_le_pcnt_tx 
-0x534b 021354 branch le_init_conn 
-:      021357 le_init_slave:
-0x534c 021358 bpatchx patch26_4 ,mem_patch26 
-0x534d 021359 disable master 
-0x534e 021360 setarg 0x17 
-0x534f 021361 store 2 ,mem_le_remote_mtu 
-0x5350 021362 jam lemode_slave ,mem_le_mode 
-0x5351 021363 jam 0 ,mem_le_adv_enable 
-0x5352 021364 jam 0 ,mem_lpm_current_mult 
-0x5353 021365 jam flag_le_pairing_null ,mem_le_pairing_state 
-0x5354 021366 jam flag_le_enc_null ,mem_le_enc_state 
-0x5355 021367 fetch 2 ,mem_le_superto 
-0x5356 021368 store 2 ,mem_le_init_superto 
-0x5357 021369 fetch 2 ,mem_le_tsniff 
-0x5358 021370 mul32 pdata ,5 ,pdata 
-0x5359 021371 rshift4 pdata ,pdata 
-0x535a 021372 store 2 ,mem_le_superto 
-0x535b 021373 branch le_init_conn 
-:      021379 le_dispatch:
-0x535c 021380 call le_enable 
-0x535d 021381 call le_scan 
-0x535e 021382 call le_adv 
-0x535f 021383 branch le_disable 
-:      021385 le_conn_dispatch:
-0x5360 021386 bpatchx patch26_5 ,mem_patch26 
-0x5361 021387 call le_enable 
-0x5362 021388 call app_process_ble 
-0x5363 021389 fetch 1 ,mem_le_mode 
-0x5364 021390 beq lemode_master ,le_master_dispatch 
-0x5365 021391 branch le_slave_dispatch 
-:      021397 le_master_dispatch:
-0x5366 021398 bpatchx patch26_6 ,mem_patch26 
-0x5367 021399 enable master 
-0x5368 021400 call le_supervision_update 
-0x5369 021401 branch le_master_disconn ,positive 
-0x536a 021402 call check_ble_disabled 
-0x536b 021403 call le_setup 
-0x536c 021404 call le_prepare_tx 
-0x536d 021405 disable match 
-0x536e 021406 call le_transmit_receive_sifs 
-0x536f 021407 nrtn match 
-0x5370 021408 bpatchx patch26_7 ,mem_patch26 
-0x5371 021409 fetch 1 ,mem_le_conn_rcv 
-0x5372 021410 increase 1 ,pdata 
-0x5373 021411 store 1 ,mem_le_conn_rcv 
-0x5374 021412 call le_acknowledge 
-0x5375 021413 disable master 
-0x5376 021414 rtn 
-:      021416 le_master_disconn:
-0x5377 021417 call le_disconnect 
-0x5378 021418 disable master 
-0x5379 021419 rtn 
-:      021424 le_slave_dispatch:
-0x537a 021425 bpatchx patch27_0 ,mem_patch27 
-0x537b 021426 jam 0 ,mem_le_md_count 
-0x537c 021427 call sp_calc_sequence_256 
-0x537d 021428 call le_secure_connect_sm 
-0x537e 021429 disable attempt 
-0x537f 021430 call le_supervision_update 
-0x5380 021431 branch le_slave_disconn ,positive 
-0x5381 021432 call check_ble_disabled 
-0x5382 021433 call le_setup 
-0x5383 021434 call le_receive_slave 
-0x5384 021435 nbranch le_slave_unsync ,sync 
-0x5385 021436 call le_got_first_packet 
-0x5386 021437 branch le_slave_match ,match 
-0x5387 021438 branch le_slave_cont 
-:      021441 le_slave_match:
-0x5388 021442 bpatchx patch27_1 ,mem_patch27 
-0x5389 021443 fetch 1 ,mem_le_md_count 
-0x538a 021444 pincrease 1 
-0x538b 021445 store 1 ,mem_le_md_count 
-0x538c 021446 beq le_md_max_count ,le_slave_cont 
-0x538d 021447 call le_acknowledge 
-0x538e 021448 call le_prepare_tx 
-0x538f 021449 call le_transmit_norx 
-0x5390 021450 call le_parse 
-0x5391 021451 fetch 2 ,mem_cb_ble_transmit 
-0x5392 021452 call callback_func 
-0x5393 021453 call le_check_md 
-0x5394 021454 branch le_slave_more_data ,user 
-:      021455 le_slave_cont:
-0x5395 021456 bpatchx patch27_2 ,mem_patch27 
-0x5396 021457 call le_pairing_sm 
-0x5397 021458 call le_check_paring_time 
-0x5398 021459 call check_51cmd 
-0x5399 021460 fetch 1 ,mem_le_op 
-0x539a 021461 bbit1 op_disconn ,le_slave_disconn 
-:      021462 le_slave_unsync:
-0x539b 021463 bpatchx patch27_3 ,mem_patch27 
-0x539c 021464 call le_lpm_set_mult 
-0x539d 021465 call le_update_channel_map 
-0x539e 021466 call le_update_param 
-0x539f 021467 branch calc_clke_offset 
-:      021470 le_check_md:
-0x53a0 021471 disable user 
-0x53a1 021472 bmark1 mark_ble_rx_md ,enable_user 
-0x53a2 021473 bmark1 mark_ble_tx_md ,enable_user 
-0x53a3 021474 rtn 
-:      021477 le_slave_more_data:
-0x53a4 021478 bpatchx patch27_4 ,mem_patch27 
-0x53a5 021479 enable attempt 
-0x53a6 021480 call le_transmit_receive_sifs_notx 
-0x53a7 021481 branch le_slave_match ,match 
-0x53a8 021482 branch le_slave_cont 
-:      021484 le_slave_disconn:
-:      021487 le_disconnect:
-0x53a9 021488 bpatchx patch27_5 ,mem_patch27 
-0x53aa 021489 call le_clear_connection_info 
-0x53ab 021490 call app_disconn_reason_collect_ble 
-0x53ac 021491 call sp_initialize_256 
-0x53ad 021492 jam bt_evt_le_disconnected ,mem_fifo_temp 
-0x53ae 021493 branch ui_ipc_send_event 
-:      021495 le_clear_connection_info:
-0x53af 021496 setarg 0 
-0x53b0 021497 store 9 ,mem_le_tx_buff_used 
-0x53b1 021498 jam 0 ,mem_le_conn_handle 
-0x53b2 021499 jam lemode_idle ,mem_le_mode 
-0x53b3 021500 jam 0 ,mem_le_state 
-0x53b4 021501 jam flag_le_enc_null ,mem_le_enc_state 
-0x53b5 021502 jam flag_le_pairing_null ,mem_le_pairing_state 
-0x53b6 021503 rtn 
-:      021505 le_got_first_packet:
-0x53b7 021506 bpatchx patch27_6 ,mem_patch27 
-0x53b8 021507 fetch 1 ,mem_le_conn_rcv 
-0x53b9 021508 increase 1 ,pdata 
-0x53ba 021509 store 1 ,mem_le_conn_rcv 
-0x53bb 021510 fetch 1 ,mem_le_state 
-0x53bc 021511 rtnbit1 lestate_got_first_packet 
-0x53bd 021512 set1 lestate_got_first_packet 
-0x53be 021513 store 1 ,mem_le_state 
-0x53bf 021514 fetch 2 ,mem_le_init_superto 
-0x53c0 021515 store 2 ,mem_le_superto 
-0x53c1 021516 setarg 0 
-0x53c2 021517 store 4 ,mem_le_transmit_window 
-0x53c3 021518 rtn 
-:      021521 le_enable:
-0x53c4 021522 bpatchx patch27_7 ,mem_patch27 
-0x53c5 021523 jam 0x36 ,rf_adc_goff 
-0x53c6 021524 jam 0x5f ,rf_agc_nsat 
-0x53c7 021525 enable le 
-0x53c8 021526 jam 7 ,rfen_ulp 
-0x53c9 021527 call check_ble_disabled 
-0x53ca 021528 fetch 1 ,mem_250k_freq_enable 
-0x53cb 021529 rtn blank 
-0x53cc 021530 jam 0xb8 ,rf_iq_gain 
-0x53cd 021531 rtn 
-:      021533 le_disable:
-0x53ce 021534 bpatchx patch28_0 ,mem_patch28 
-0x53cf 021535 jam 0x2e ,rf_adc_goff 
-0x53d0 021536 jam 0xff ,rf_agc_nsat 
-0x53d1 021537 disable le 
-0x53d2 021538 jam 3 ,rfen_ulp 
-0x53d3 021539 arg 0 ,stop_watch 
-0x53d4 021540 rtn 
-:      021542 le_prep:
-0x53d5 021543 disable enable_crc 
-0x53d6 021544 disable enable_white 
-0x53d7 021545 fetch 3 ,mem_le_crcinit 
-0x53d8 021546 iforce crc24_init 
-0x53d9 021547 fetch 1 ,mem_le_ch_mapped 
-0x53da 021548 reverse pdata ,temp 
-0x53db 021549 set1 1 ,temp 
-0x53dc 021550 rshift temp ,white_init 
-0x53dd 021551 rtn 
-:      021554 lerx_setfreq:
-0x53de 021555 call le_setfreq 
-0x53df 021556 call set_freq_rx 
-0x53e0 021557 setarg param_pll_setup 
-0x53e1 021558 call sleep 
-0x53e2 021559 branch rf_rx_enable 
-:      021561 letx_setfreq:
-0x53e3 021562 branch txon ,match 
-:      021563 letx_setfreq0:
-0x53e4 021564 call le_setfreq 
-0x53e5 021565 branch set_freq_tx 
-:      021566 le_setfreq:
-0x53e6 021567 bpatchx patch28_1 ,mem_patch28 
-0x53e7 021568 call set_sync_on 
-0x53e8 021569 fetch 1 ,mem_le_testtype 
-0x53e9 021570 nbranch le_ctf_test ,blank 
-0x53ea 021571 fetch 1 ,mem_le_ch_mapped 
-0x53eb 021572 sub pdata ,36 ,null 
-0x53ec 021573 branch le_ctf_normal ,positive 
-0x53ed 021574 force 0 ,temp 
-0x53ee 021575 rtneq 37 
-0x53ef 021576 force 24 ,temp 
-0x53f0 021577 rtneq 38 
-0x53f1 021578 force 78 ,temp 
-0x53f2 021579 rtn 
-:      021581 le_ctf_normal:
-0x53f3 021582 sub pdata ,10 ,null 
-0x53f4 021583 branch le_ctf_low ,positive 
-0x53f5 021584 increase 1 ,pdata 
-:      021586 le_ctf_low:
-0x53f6 021587 lshift pdata ,pdata 
-0x53f7 021588 add pdata ,2 ,temp 
-0x53f8 021589 rtn 
-:      021591 le_ctf_test:
-0x53f9 021592 fetch 1 ,mem_le_ch_mapped 
-0x53fa 021593 lshift pdata ,temp 
-0x53fb 021594 rtn 
-:      021596 le_sca_map:
-0x53fc 021597 arg 500 ,temp 
-0x53fd 021598 rtn blank 
-0x53fe 021599 arg 250 ,temp 
-0x53ff 021600 rtneq 1 
-0x5400 021601 arg 150 ,temp 
-0x5401 021602 rtneq 2 
-0x5402 021603 arg 100 ,temp 
-0x5403 021604 rtneq 3 
-0x5404 021605 arg 75 ,temp 
-0x5405 021606 rtneq 4 
-0x5406 021607 arg 50 ,temp 
-0x5407 021608 rtneq 5 
-0x5408 021609 arg 40 ,temp 
-0x5409 021610 rtneq 6 
-0x540a 021611 arg 20 ,temp 
-0x540b 021612 rtn 
-:      021616 le_adv_access:
-0x540c 021617 setarg 0x8e89be 
-0x540d 021618 lshift8 pdata ,pdata 
-0x540e 021619 or_into 0xd6 ,pdata 
-0x540f 021620 iforce access 
-0x5410 021621 setarg 0x555555 
-0x5411 021622 store 3 ,mem_le_crcinit 
-0x5412 021623 rtn 
-:      021625 le_setup:
-0x5413 021626 bpatchx patch28_2 ,mem_patch28 
-0x5414 021627 enable swfine 
-0x5415 021628 fetch 4 ,mem_le_access 
-0x5416 021629 iforce access 
-0x5417 021630 call le_map_channel 
-0x5418 021631 setarg 0x200 
-0x5419 021632 branch le_setup_master ,master 
-0x541a 021633 fetch 2 ,mem_le_receive_window 
-0x541b 021634 rshift pdata ,pdata 
-:      021635 le_setup_master:
-0x541c 021636 arg param_pll_setup ,temp 
-0x541d 021637 iadd temp ,pdata 
-0x541e 021638 call ahead_window 
-0x541f 021639 deposit clke 
-0x5420 021640 store 6 ,mem_le_rxon_ts 
-0x5421 021641 rtn 
-:      021643 le_next_adv_channel:
-0x5422 021644 bpatchx patch28_3 ,mem_patch28 
-0x5423 021645 fetch 1 ,mem_le_ch_mapped 
-0x5424 021646 beq 37 ,le_next_adv_channel_curr_channel_37 
-0x5425 021647 beq 38 ,le_next_adv_channel_curr_channel_38 
-0x5426 021648 beq 39 ,le_next_adv_channel_curr_channel_39 
-0x5427 021649 branch le_next_adv_channel_curr_channel_39 
-:      021651 le_next_adv_channel_curr_channel_37:
-0x5428 021652 fetcht 1 ,mem_le_adv_channel_map 
-0x5429 021653 isolate1 bit_adv_channel_map_38 ,temp 
-0x542a 021654 branch set_le_next_adv_channel_38 ,true 
-0x542b 021655 isolate1 bit_adv_channel_map_39 ,temp 
-0x542c 021656 branch set_le_next_adv_channel_39 ,true 
-0x542d 021657 branch set_le_next_adv_channel_37 
-:      021660 le_next_adv_channel_curr_channel_38:
-0x542e 021661 fetcht 1 ,mem_le_adv_channel_map 
-0x542f 021662 isolate1 bit_adv_channel_map_39 ,temp 
-0x5430 021663 branch set_le_next_adv_channel_39 ,true 
-0x5431 021664 isolate1 bit_adv_channel_map_37 ,temp 
-0x5432 021665 branch set_le_next_adv_channel_37 ,true 
-0x5433 021666 branch set_le_next_adv_channel_38 
-:      021669 le_next_adv_channel_curr_channel_39:
-0x5434 021670 fetcht 1 ,mem_le_adv_channel_map 
-0x5435 021671 isolate1 bit_adv_channel_map_37 ,temp 
-0x5436 021672 branch set_le_next_adv_channel_37 ,true 
-0x5437 021673 isolate1 bit_adv_channel_map_38 ,temp 
-0x5438 021674 branch set_le_next_adv_channel_38 ,true 
-0x5439 021675 branch set_le_next_adv_channel_39 
-:      021679 set_le_next_adv_channel_37:
-0x543a 021680 jam 37 ,mem_le_ch_mapped 
-0x543b 021681 fetch 1 ,mem_le_adv_channel_map_temp 
-0x543c 021682 set1 bit_adv_channel_map_37 ,pdata 
-0x543d 021683 store 1 ,mem_le_adv_channel_map_temp 
-0x543e 021684 rtn 
-:      021686 set_le_next_adv_channel_38:
-0x543f 021687 jam 38 ,mem_le_ch_mapped 
-0x5440 021688 fetch 1 ,mem_le_adv_channel_map_temp 
-0x5441 021689 set1 bit_adv_channel_map_38 ,pdata 
-0x5442 021690 store 1 ,mem_le_adv_channel_map_temp 
-0x5443 021691 rtn 
-:      021693 set_le_next_adv_channel_39:
-0x5444 021694 jam 39 ,mem_le_ch_mapped 
-0x5445 021695 fetch 1 ,mem_le_adv_channel_map_temp 
-0x5446 021696 set1 bit_adv_channel_map_39 ,pdata 
-0x5447 021697 store 1 ,mem_le_adv_channel_map_temp 
-0x5448 021698 rtn 
-:      021702 le_context_nexthop:
-0x5449 021703 bpatchx patch28_4 ,mem_patch28 
-0x544a 021704 add rega ,coffset_mode ,contr 
-0x544b 021705 ifetch 1 ,contr 
-0x544c 021706 rtnbit0 mode_le 
-0x544d 021707 add rega ,coffset_le_event_cnt ,contw 
-0x544e 021708 ifetch 2 ,contw 
-0x544f 021709 increase 1 ,pdata 
-0x5450 021710 istore 2 ,contw 
-0x5451 021711 add rega ,coffset_le_hop ,contr 
-0x5452 021712 ifetch 1 ,contr 
-0x5453 021713 add rega ,coffset_le_ch ,contw 
-0x5454 021714 ifetcht 1 ,contw 
-0x5455 021715 iadd temp ,pdata 
-0x5456 021716 sub pdata ,36 ,null 
-0x5457 021717 branch le_nexthop_nowrap ,positive 
-0x5458 021718 increase -37 ,pdata 
-:      021719 le_nexthop_nowrap:
-0x5459 021720 istore 1 ,contw 
-0x545a 021721 rtn 
-:      021724 le_calc_channel_map:
-0x545b 021725 bpatchx patch28_5 ,mem_patch28 
-0x545c 021726 fetch 5 ,mem_le_channel_map 
-0x545d 021727 force 0 ,temp 
-0x545e 021728 force 37 ,loopcnt 
-:      021729 le_count_channels_loop:
-0x545f 021730 bbit0 0 ,le_count_channels_notused 
-0x5460 021731 increase 1 ,temp 
-:      021732 le_count_channels_notused:
-0x5461 021733 rshift pdata ,pdata 
-0x5462 021734 loop le_count_channels_loop 
-0x5463 021735 add temp ,-1 ,pdata 
-0x5464 021736 store 1 ,mem_le_channels 
-0x5465 021737 rtn 
-:      021739 le_map_channel:
-0x5466 021740 bpatchx patch28_6 ,mem_patch28 
-0x5467 021741 fetch 1 ,mem_le_ch 
-0x5468 021742 iforce queue 
-0x5469 021743 fetcht 5 ,mem_le_channel_map 
-0x546a 021744 qisolate1 temp 
-0x546b 021745 branch le_map_channel_end ,true 
-:      021746 le_map_channel_next:
-0x546c 021747 bpatchx patch28_7 ,mem_patch28 
-0x546d 021748 fetch 1 ,mem_le_channels 
-0x546e 021749 isub queue ,pdata 
-0x546f 021750 branch le_map_channel_cont ,positive 
-0x5470 021751 sub pdata ,-1 ,queue 
-0x5471 021752 branch le_map_channel_next 
-:      021753 le_map_channel_cont:
-0x5472 021754 copy queue ,loopcnt 
-0x5473 021755 force 0 ,queue 
-:      021756 le_map_channel_loop:
-0x5474 021757 qisolate1 temp 
-0x5475 021758 branch le_map_channel_skip ,true 
-0x5476 021759 increase 1 ,loopcnt 
-:      021760 le_map_channel_skip:
-0x5477 021761 deposit loopcnt 
-0x5478 021762 branch le_map_channel_end ,blank 
-0x5479 021763 increase 1 ,queue 
-0x547a 021764 increase -1 ,loopcnt 
-0x547b 021765 branch le_map_channel_loop 
-:      021766 le_map_channel_end:
-0x547c 021767 deposit queue 
-0x547d 021768 store 1 ,mem_le_ch_mapped 
-0x547e 021769 rtn 
-:      021772 le_wait_tx:
-0x547f 021773 branch le_wait_master ,master 
-0x5480 021774 until null ,timeout 
-0x5481 021775 rtn 
-:      021777 le_wait_master:
-0x5482 021778 arg 0xea0 ,timeup 
-0x5483 021779 until clkn_rt ,meet 
-0x5484 021780 rtn 
-:      021782 le_receive_adv:
-0x5485 021783 disable swfine 
-0x5486 021784 fetch 2 ,mem_le_scan_window 
-0x5487 021785 copy pdata ,timeup 
-0x5488 021786 branch le_receive_packet 
-:      021789 le_receive_slave:
-0x5489 021790 bpatchx patch29_0 ,mem_patch29 
-0x548a 021791 enable swfine 
-0x548b 021792 fetch 2 ,mem_le_receive_window 
-0x548c 021793 fetcht 4 ,mem_le_transmit_window 
-0x548d 021794 iadd temp ,timeup 
-:      021795 le_receive_packet:
-0x548e 021796 call lerx_setfreq 
-:      021797 le_receive_rxon:
-0x548f 021798 bpatchx patch29_1 ,mem_patch29 
-0x5490 021799 call le_prep 
-0x5491 021800 disable match 
-0x5492 021801 enable decode_fec0 
-0x5493 021802 enable is_rx 
-0x5494 021803 disable is_tx 
-0x5495 021804 copy timeup ,stop_watch 
-0x5496 021805 correlate null ,timeout 
-0x5497 021806 branch le_receive_on_attempt ,attempt 
-0x5498 021807 copy clke ,temp 
-0x5499 021808 storet 6 ,mem_sync_clke 
-:      021809 le_receive_on_attempt:
-0x549a 021810 nbranch end_of_packet ,sync 
-0x549b 021811 branch le_receive_skip ,attempt 
-0x549c 021812 arg param_clke_cal_le ,clke_rt 
-0x549d 021813 copy bt_clk ,clke_bt 
-0x549e 021814 fetch 1 ,mem_le_state 
-0x549f 021815 bbit0 lestate_got_first_packet ,le_receive_skip 
-0x54a0 021816 call lpm_adjust_clk ,wake 
-:      021817 le_receive_skip:
-0x54a1 021818 bpatchx patch29_2 ,mem_patch29 
-0x54a2 021819 call save_rssi 
-0x54a3 021820 enable enable_white 
-0x54a4 021821 enable enable_crc 
-0x54a5 021822 parse demod ,bucket ,8 
-0x54a6 021823 rshift3 pwindow ,pdata 
-0x54a7 021824 store 1 ,mem_le_rxbuf 
-0x54a8 021825 parse demod ,bucket ,8 
-0x54a9 021826 rshift3 pwindow ,pdata 
-0x54aa 021827 istore 1 ,contw 
-0x54ab 021828 and pdata ,0x3f ,loopcnt 
-0x54ac 021829 branch lerx_nopayload ,zero 
-:      021831 lerx_loop:
-0x54ad 021832 parse demod ,bucket ,8 
-0x54ae 021833 rshift3 pwindow ,pdata 
-0x54af 021834 istore 1 ,contw 
-0x54b0 021835 loop lerx_loop 
-:      021837 lerx_nopayload:
-0x54b1 021838 bpatchx patch29_3 ,mem_patch29 
-0x54b2 021839 parse demod ,bucket ,24 
-0x54b3 021840 enable swfine 
-0x54b4 021841 arg param_sifs ,stop_watch 
-0x54b5 021842 rshift32 pdata ,pdata 
-0x54b6 021843 rshift16 pdata ,pdata 
-0x54b7 021844 istore 3 ,contw 
-0x54b8 021845 branch end_of_packet ,crc_failed 
-0x54b9 021846 enable match 
-0x54ba 021847 fetch 1 ,mem_last_freq 
-0x54bb 021848 add pdata ,0 ,rega 
-0x54bc 021849 call rf_write_freq 
-0x54bd 021850 disable decode_fec0 
-0x54be 021851 branch set_sync_on 
-:      021853 le_transmit_receive_sifs:
-0x54bf 021854 bpatchx patch29_4 ,mem_patch29 
-0x54c0 021855 call le_transmit 
-:      021856 le_transmit_receive_sifs_notx:
-0x54c1 021857 fetcht 1 ,mem_last_freq 
-0x54c2 021858 call set_freq_rx 
-0x54c3 021859 call rf_rx_enable 
-0x54c4 021860 enable swfine 
-0x54c5 021861 arg 5500 ,timeup 
-0x54c6 021862 branch le_receive_rxon 
-:      021864 le_transmit_norx:
-0x54c7 021865 call le_transmit 
-0x54c8 021866 branch end_of_packet 
-:      021868 le_transmit:
-0x54c9 021869 bpatchx patch29_5 ,mem_patch29 
-0x54ca 021870 call le_prep 
-0x54cb 021871 call letx_setfreq 
-0x54cc 021872 branch le_transmit0 
-:      021874 le_transmit0:
-0x54cd 021875 set1 txgfsk ,radio_ctrl 
-0x54ce 021876 enable encode_fec0 
-0x54cf 021877 enable is_tx 
-0x54d0 021878 disable is_rx 
-0x54d1 021879 call le_wait_tx 
-0x54d2 021880 rshift16 access ,pdata 
-0x54d3 021881 rshift8 pdata ,pdata 
-0x54d4 021882 rshift4 pdata ,pdata 
-0x54d5 021883 inject mod ,40 
-0x54d6 021884 enable enable_white 
-0x54d7 021885 enable enable_crc 
-0x54d8 021886 bpatchx patch29_6 ,mem_patch29 
-0x54d9 021887 fetch 1 ,mem_le_txheader 
-0x54da 021888 inject mod ,8 
-0x54db 021889 ifetch 1 ,contr 
-0x54dc 021890 and pdata ,0x3f ,loopcnt 
-0x54dd 021891 inject mod ,8 
-0x54de 021892 branch letr_nopayload ,zero 
-:      021893 letr_loop:
-0x54df 021894 ifetch 1 ,contr 
-0x54e0 021895 inject mod ,8 
-0x54e1 021896 loop letr_loop 
-:      021898 letr_nopayload:
-0x54e2 021899 enable enable_parity 
-0x54e3 021900 inject mod ,24 
-0x54e4 021901 disable enable_parity 
-0x54e5 021902 until null ,tx_clear 
-0x54e6 021903 nop 100 
-0x54e7 021904 disable encode_fec0 
-0x54e8 021905 rtn 
-:      021907 le_send_adv_ind:
-0x54e9 021908 bpatchx patch29_7 ,mem_patch29 
-0x54ea 021909 fetch 1 ,mem_le_adv_type 
-0x54eb 021910 beq adv_direct_ind ,le_send_adv_direct_ind 
-0x54ec 021911 fetch 1 ,mem_le_adv_own_addr_type 
-0x54ed 021912 lshift4 pdata ,pdata 
-0x54ee 021913 lshift2 pdata ,pdata 
-0x54ef 021914 store 1 ,mem_le_txheader 
-0x54f0 021915 fetcht 1 ,mem_le_adv_data_len 
-0x54f1 021916 add temp ,6 ,pdata 
-0x54f2 021917 store 1 ,mem_le_txlen 
-0x54f3 021918 fetch 6 ,mem_le_lap 
-0x54f4 021919 store 6 ,mem_le_txpayload 
-0x54f5 021920 copy temp ,loopcnt 
-0x54f6 021921 arg mem_le_adv_data ,contr 
-0x54f7 021922 call memcpy_fast 
-0x54f8 021923 branch le_send_adv_transmit 
-:      021924 le_send_adv_direct_ind:
-0x54f9 021925 fetch 1 ,mem_le_adv_direct_addr_type 
-0x54fa 021926 lshift4 pdata ,pdata 
-0x54fb 021927 lshift2 pdata ,pdata 
-0x54fc 021928 increase 1 ,pdata 
-0x54fd 021929 store 1 ,mem_le_txheader 
-0x54fe 021930 setarg 12 
-0x54ff 021931 store 1 ,mem_le_txlen 
-0x5500 021932 fetch 6 ,mem_le_lap 
-0x5501 021933 store 6 ,mem_le_txpayload 
-0x5502 021934 fetch 6 ,mem_hci_plap 
-0x5503 021935 istore 6 ,contw 
-:      021936 le_send_adv_transmit:
-0x5504 021937 bpatchx patch2a_0 ,mem_patch2a 
-0x5505 021938 fetch 1 ,mem_le_adv_transmit 
-0x5506 021939 increase 1 ,pdata 
-0x5507 021940 store 1 ,mem_le_adv_transmit 
-0x5508 021941 arg 1800 ,stop_watch 
-0x5509 021942 disable match 
-0x550a 021943 branch le_transmit_receive_sifs 
-:      021945 le_send_scan_request:
-0x550b 021946 bpatchx patch2a_1 ,mem_patch2a 
-0x550c 021947 fetch 1 ,mem_le_scan_type 
-0x550d 021948 rtnne le_scan_type_active 
-0x550e 021949 fetch 1 ,mem_le_adv_transmit 
-0x550f 021950 increase 1 ,pdata 
-0x5510 021951 store 1 ,mem_le_adv_transmit 
-0x5511 021952 arg 0x0c03 ,temp 
-0x5512 021953 fetch 1 ,mem_le_scan_own_addr_type 
-0x5513 021954 nsetflag blank ,le_sender_addr_bit ,temp 
-0x5514 021955 copy rega ,pdata 
-0x5515 021956 nsetflag blank ,le_receiver_addr_bit ,temp 
-0x5516 021957 storet 2 ,mem_le_txheader 
-0x5517 021958 fetch 6 ,mem_le_lap 
-0x5518 021959 istore 6 ,contw 
-0x5519 021960 fetch 6 ,mem_le_plap 
-0x551a 021961 istore 6 ,contw 
-0x551b 021962 branch le_transmit_receive_sifs 
-:      021965 le_send_scan_response:
-0x551c 021966 bpatchx patch2a_2 ,mem_patch2a 
-0x551d 021967 arg scan_rsp ,temp 
-0x551e 021968 fetch 1 ,mem_le_adv_own_addr_type 
-0x551f 021969 nsetflag blank ,le_sender_addr_bit ,temp 
-0x5520 021970 storet 1 ,mem_le_txheader 
-0x5521 021971 fetcht 1 ,mem_le_scan_data_len 
-0x5522 021972 add temp ,6 ,pdata 
-0x5523 021973 store 1 ,mem_le_txlen 
-0x5524 021974 fetch 6 ,mem_le_lap 
-0x5525 021975 store 6 ,mem_le_txpayload 
-0x5526 021976 arg mem_le_scan_data ,contr 
-0x5527 021977 copy temp ,loopcnt 
-0x5528 021978 call memcpy_fast 
-0x5529 021979 call le_transmit_norx 
-0x552a 021980 branch le_adv_not_match 
-:      021982 le_connect_request:
-0x552b 021983 bpatchx patch2a_3 ,mem_patch2a 
-0x552c 021984 force -1 ,pdata 
-0x552d 021985 setsect 2 ,1 
-0x552e 021986 store 5 ,mem_le_channel_map 
-0x552f 021987 call le_calc_channel_map 
-0x5530 021988 force 4 ,loopcnt 
-0x5531 021989 arg mem_le_access ,contw 
-0x5532 021990 call generate_random_loop 
-0x5533 021991 fetch 2 ,mem_le_timeout 
-0x5534 021992 store 2 ,mem_le_superto 
-:      021993 le_con_req_hop_retry:
-0x5535 021994 random pdata 
-0x5536 021995 and_into 0xf ,pdata 
-0x5537 021996 sub pdata ,4 ,null 
-0x5538 021997 branch le_con_req_hop_retry ,positive 
-0x5539 021998 store 1 ,mem_le_hop 
-0x553a 021999 store 1 ,mem_tmp1 
-0x553b 022000 bpatchx patch2a_4 ,mem_patch2a 
-0x553c 022001 fetcht 2 ,mem_le_conn_interval 
-0x553d 022002 storet 2 ,mem_le_tsniff 
-0x553e 022003 copy temp ,regc 
-0x553f 022004 add clkn_bt ,7 ,pdata 
-0x5540 022005 idiv regc 
-0x5541 022006 call wait_div_end 
-0x5542 022007 remainder rega 
-0x5543 022008 isub rega ,pdata 
-0x5544 022009 iadd regc ,pdata 
-0x5545 022010 fetcht 2 ,mem_le_dsniff 
-0x5546 022011 iadd temp ,pdata 
-0x5547 022012 store 4 ,mem_le_anchor 
-0x5548 022013 isub clkn_bt ,rega 
-0x5549 022014 increase -6 ,rega 
-0x554a 022015 arg 0x2205 ,regb 
-0x554b 022016 fetch 1 ,mem_le_conn_own_addr_type 
-0x554c 022017 nsetflag blank ,le_sender_addr_bit ,regb 
-0x554d 022018 fetch 1 ,mem_le_conn_peer_addr_type 
-0x554e 022019 nsetflag blank ,le_receiver_addr_bit ,regb 
-0x554f 022020 copy regb ,pdata 
-0x5550 022021 store 2 ,mem_le_txheader 
-0x5551 022022 fetch 6 ,mem_le_lap 
-0x5552 022023 istore 6 ,contw 
-0x5553 022024 fetch 6 ,mem_le_plap 
-0x5554 022025 istore 6 ,contw 
-0x5555 022026 fetch 4 ,mem_le_access 
-0x5556 022027 istore 4 ,contw 
-0x5557 022028 random pdata 
-0x5558 022029 istore 2 ,contw 
-0x5559 022030 random pdata 
-0x555a 022031 istore 1 ,contw 
-0x555b 022032 force 2 ,pdata 
-0x555c 022033 istore 1 ,contw 
-0x555d 022034 rshift2 rega ,pdata 
-0x555e 022035 istore 2 ,contw 
-0x555f 022036 rshift2 regc ,pdata 
-0x5560 022037 istore 2 ,contw 
-0x5561 022038 bpatchx patch2a_5 ,mem_patch2a 
-0x5562 022039 setarg 0 
-0x5563 022040 istore 2 ,contw 
-0x5564 022041 fetch 2 ,mem_le_timeout 
-0x5565 022042 istore 2 ,contw 
-0x5566 022043 fetch 5 ,mem_le_channel_map 
-0x5567 022044 istore 5 ,contw 
-0x5568 022045 fetch 1 ,mem_le_hop 
-0x5569 022046 arg param_le_sca ,temp 
-0x556a 022047 ior temp ,pdata 
-0x556b 022048 istore 1 ,contw 
-0x556c 022049 call le_transmit_norx 
-0x556d 022050 setarg mem_le_txheader 
-0x556e 022051 add pdata ,18 ,contr 
-0x556f 022052 ifetch 3 ,contr 
-0x5570 022053 store 3 ,mem_le_crcinit 
-0x5571 022054 rtn 
-:      022056 le_init_adv:
-0x5572 022057 bpatchx patch2a_6 ,mem_patch2a 
-0x5573 022058 disable master 
-0x5574 022059 branch le_adv_access 
-:      022063 le_update_param:
-0x5575 022064 fetch 1 ,mem_le_state 
-0x5576 022065 rtnbit0 lestate_update_param 
-0x5577 022066 fetch 2 ,mem_le_event_count 
-0x5578 022067 fetcht 2 ,mem_le_instant 
-0x5579 022068 isub temp ,pdata 
-0x557a 022069 nrtn positive 
-0x557b 022070 store 2 ,mem_pdatatemp 
-0x557c 022071 bpatchx patch2a_7 ,mem_patch2a 
-0x557d 022072 fetch 1 ,mem_le_state 
-0x557e 022073 set0 lestate_update_param ,pdata 
-0x557f 022074 set0 lestate_got_first_packet ,pdata 
-0x5580 022075 store 1 ,mem_le_state 
-0x5581 022076 fetch 4 ,mem_le_anchor 
-0x5582 022077 fetcht 2 ,mem_le_tsniff 
-0x5583 022078 storet 2 ,mem_temp 
-0x5584 022079 isub temp ,rega 
-0x5585 022080 bpatchx patch2b_0 ,mem_patch2b 
-0x5586 022081 fetch 1 ,mem_le_new_param 
-0x5587 022082 store 1 ,mem_le_window_size 
-0x5588 022083 ifetcht 2 ,contr 
-0x5589 022084 ifetch 2 ,contr 
-0x558a 022085 lshift2 pdata ,pdata 
-0x558b 022086 store 2 ,mem_le_tsniff 
-0x558c 022087 lshift2 temp ,temp 
-0x558d 022088 iadd temp ,pdata 
-0x558e 022089 ifetcht 4 ,contr 
-0x558f 022090 storet 4 ,mem_le_slave_latency 
-0x5590 022091 iadd rega ,pdata 
-0x5591 022092 copy pdata ,regab 
-0x5592 022093 fetch 2 ,mem_le_tsniff 
-0x5593 022094 fetcht 2 ,mem_temp 
-0x5594 022095 isub temp ,pdata 
-0x5595 022096 fetcht 2 ,mem_pdatatemp 
-0x5596 022097 imul32 temp ,pdata 
-0x5597 022098 iadd regab ,pdata 
-0x5598 022099 store 4 ,mem_le_anchor 
-0x5599 022100 call le_receive_window_size 
-0x559a 022101 fetch 2 ,mem_le_superto 
-0x559b 022102 store 2 ,mem_le_init_superto 
-0x559c 022103 rtn 
-:      022106 le_update_channel_map:
-0x559d 022107 bpatchx patch2b_1 ,mem_patch2b 
-0x559e 022108 fetch 1 ,mem_le_state 
-0x559f 022109 rtnbit0 lestate_update_map 
-0x55a0 022110 fetch 2 ,mem_le_event_count 
-0x55a1 022111 fetcht 2 ,mem_le_instant 
-0x55a2 022112 isub temp ,pdata 
-0x55a3 022113 nrtn positive 
-0x55a4 022114 fetch 1 ,mem_le_state 
-0x55a5 022115 set0 lestate_update_map ,pdata 
-0x55a6 022116 store 1 ,mem_le_state 
-0x55a7 022117 fetch 5 ,mem_le_new_map 
-0x55a8 022118 store 5 ,mem_le_channel_map 
-0x55a9 022119 branch le_calc_channel_map 
-:      022122 le_acknowledge:
-0x55aa 022123 bpatchx patch2b_2 ,mem_patch2b 
-0x55ab 022124 call le_supervision_flush 
-0x55ac 022125 call le_check_wak 
-0x55ad 022126 fetch 1 ,mem_le_rxbuf 
-0x55ae 022127 isolate1 md ,pdata 
-0x55af 022128 setflag true ,mark_ble_rx_md ,mark 
-0x55b0 022129 rshift pdata ,pdata 
-0x55b1 022130 ixor temp ,pdata 
-0x55b2 022131 isolate1 nesn ,pdata 
-0x55b3 022132 setflag true ,mark_old_packet ,mark 
-0x55b4 022133 rtnmark1 mark_old_packet 
-0x55b5 022134 fetch 1 ,mem_le_rxbuf + 1 
-0x55b6 022135 branch le_ack_unenc ,blank 
-0x55b7 022136 fetch 1 ,mem_le_state 
-0x55b8 022137 bbit0 lestate_encryption ,le_ack_unenc 
-0x55b9 022138 call load_sk 
-0x55ba 022139 call le_decrypt 
-0x55bb 022140 nrtn blank 
-:      022141 le_ack_unenc:
-0x55bc 022142 fetcht 1 ,mem_le_arq 
-0x55bd 022143 setflip nesn ,temp 
-0x55be 022144 storet 1 ,mem_le_arq 
-0x55bf 022145 rtn 
-:      022148 le_check_wak:
-0x55c0 022149 bpatchx patch2b_3 ,mem_patch2b 
-0x55c1 022150 fetcht 1 ,mem_le_arq 
-0x55c2 022151 isolate0 wak ,temp 
-0x55c3 022152 rtn true 
-0x55c4 022153 fetch 1 ,mem_le_rxbuf 
-0x55c5 022154 lshift pdata ,pdata 
-0x55c6 022155 ixor temp ,pdata 
-0x55c7 022156 rtnbit0 sn 
-0x55c8 022157 set0 wak ,temp 
-0x55c9 022158 setflip sn ,temp 
-0x55ca 022159 storet 1 ,mem_le_arq 
-0x55cb 022160 compare 3 ,temp ,3 
-0x55cc 022161 nrtn true 
-0x55cd 022162 fetch 1 ,mem_le_txpayload 
-0x55ce 022163 beq ll_start_enc_req ,le_set_enc 
-0x55cf 022164 fetch 1 ,mem_le_enc_state 
-0x55d0 022165 beq flag_le_enc_pause ,le_clear_enc 
-0x55d1 022166 rtn 
-:      022169 le_set_enc:
-0x55d2 022170 fetch 1 ,mem_le_state 
-0x55d3 022171 set1 lestate_encryption ,pdata 
-0x55d4 022172 store 1 ,mem_le_state 
-0x55d5 022173 rtn 
-:      022175 le_clear_enc:
-0x55d6 022176 bpatchx patch2b_4 ,mem_patch2b 
-0x55d7 022177 jam flag_le_enc_null ,mem_le_enc_state 
-0x55d8 022178 arg 0 ,pdata 
-0x55d9 022179 store 4 ,mem_le_last_mic 
-0x55da 022180 store 5 ,mem_le_pcnt_tx 
-0x55db 022181 set1 39 ,pdata 
-0x55dc 022182 store 5 ,mem_le_pcnt_rx 
-0x55dd 022183 fetch 1 ,mem_le_state 
-0x55de 022184 set0 lestate_encryption ,pdata 
-0x55df 022185 store 1 ,mem_le_state 
-0x55e0 022186 rtn 
-:      022189 le_wait_adv:
-0x55e1 022190 bpatchx patch2b_5 ,mem_patch2b 
-0x55e2 022191 call le_next_adv_channel 
-0x55e3 022192 call le_receive_adv 
-0x55e4 022193 fetch 1 ,mem_le_adv_waitcnt 
-0x55e5 022194 increase 1 ,pdata 
-0x55e6 022195 store 1 ,mem_le_adv_waitcnt 
-0x55e7 022196 rtn 
-:      022199 le_scan:
-0x55e8 022200 bpatchx patch2b_6 ,mem_patch2b 
-0x55e9 022201 fetch 1 ,mem_le_scan_enable 
-0x55ea 022202 rtnne le_scan_enable 
-0x55eb 022203 arg le_scan_interval_timer ,queue 
-0x55ec 022204 call timer_check 
-0x55ed 022205 nrtn blank 
-0x55ee 022206 fetch 2 ,mem_le_scan_interval 
-0x55ef 022207 fetcht 2 ,mem_le_scan_window 
-0x55f0 022208 isub temp ,pdata 
-0x55f1 022209 arg le_scan_interval_timer ,queue 
-0x55f2 022210 call timer_init 
-0x55f3 022211 disable master 
-0x55f4 022212 call le_init_adv 
-0x55f5 022213 call le_wait_adv 
-0x55f6 022214 nrtn match 
-0x55f7 022215 bpatchx patch2b_7 ,mem_patch2b 
-0x55f8 022216 fetch 6 ,mem_le_rxbuf + 2 
-0x55f9 022217 store 6 ,mem_le_plap 
-0x55fa 022220 fetch 1 ,mem_le_adv_rcv 
-0x55fb 022221 increase 1 ,pdata 
-0x55fc 022222 store 1 ,mem_le_adv_rcv 
-0x55fd 022223 call le_create_conn 
-0x55fe 022224 rtn master 
-0x55ff 022225 call le_send_scan_request 
-0x5600 022226 nrtn match 
-0x5601 022227 bpatchx patch2c_0 ,mem_patch2c 
-0x5602 022228 fetch 1 ,mem_le_scanrsp_rcv 
-0x5603 022229 increase 1 ,pdata 
-0x5604 022230 store 1 ,mem_le_scanrsp_rcv 
-0x5605 022231 fetch 9 ,mem_le_rxbuf + 8 
-0x5606 022232 store 9 ,mem_tmp_buffer 
-0x5607 022233 rtn 
-:      022235 le_create_conn:
-0x5608 022236 bpatchx patch2c_1 ,mem_patch2c 
-0x5609 022237 fetch 1 ,mem_cmd_le_create_conn 
-0x560a 022238 rtnne hci_cmd_le_create_conn 
-0x560b 022239 fetch 6 ,mem_le_plap 
-0x560c 022240 fetcht 6 ,mem_le_conn_peer_addr 
-0x560d 022241 isub temp ,null 
-0x560e 022242 nrtn zero 
-0x560f 022243 call context_new 
-0x5610 022244 nrtn zero 
-0x5611 022245 call le_connect_request 
-0x5612 022246 call le_init_master 
-0x5613 022247 bpatchx patch2c_2 ,mem_patch2c 
-0x5614 022248 jam 0 ,mem_hci_cmd 
-0x5615 022249 jam 0 ,mem_le_peer_sca 
-0x5616 022250 jam 0 ,mem_le_scan_enable 
-0x5617 022251 jam 0 ,mem_cmd_le_create_conn 
-0x5618 022252 branch context_save 
-:      022254 le_scan_check_sender_addr_type:
-0x5619 022255 arg 1 ,rega 
-0x561a 022256 fetch 1 ,mem_le_rxbuf 
-0x561b 022257 rtnbit1 le_sender_addr_bit 
-0x561c 022258 arg 0 ,rega 
-0x561d 022259 rtn 
-:      022263 le_prepare_tx:
-0x561e 022264 bpatchx patch2c_3 ,mem_patch2c 
-0x561f 022265 fetch 1 ,mem_le_arq 
-0x5620 022266 rtnbit1 wak 
-0x5621 022267 call le_check_tx_md 
-0x5622 022268 call le_fifo_get_first_tx_ptr 
-0x5623 022269 branch le_send_empty ,blank 
-0x5624 022270 ifetch 1 ,contr 
-0x5625 022271 ifetcht 1 ,contr 
-0x5626 022272 copy temp ,rega 
-0x5627 022273 isub rega ,pdata 
-0x5628 022274 arg le_max_paket_len ,temp 
-0x5629 022275 call not_greater_than 
-0x562a 022276 copy pdata ,temp 
-0x562b 022277 ifetch 1 ,contr 
-0x562c 022278 copy pdata ,type 
-0x562d 022279 copy rega ,pdata 
-0x562e 022280 iadd contr ,contr 
-0x562f 022281 arg mem_le_txpayload ,contw 
-0x5630 022282 copy temp ,loopcnt 
-0x5631 022283 call memcpy 
-0x5632 022284 call le_update_tx_type 
-0x5633 022285 call le_send_packet 
-0x5634 022287 call le_fifo_get_first_tx_ptr 
-0x5635 022288 ifetch 1 ,contr 
-0x5636 022289 copy pdata ,rega 
-0x5637 022290 copy contr ,regc 
-0x5638 022291 ifetcht 1 ,contr 
-0x5639 022292 copy temp ,regb 
-0x563a 022293 isub regb ,pdata 
-0x563b 022294 arg le_max_paket_len ,temp 
-0x563c 022295 call not_greater_than 
-0x563d 022296 iadd regb ,pdata 
-0x563e 022297 istore 1 ,regc 
-0x563f 022298 isub rega ,null 
-0x5640 022299 nrtn zero 
-0x5641 022300 branch le_fifo_release_first_node 
-:      022303 le_check_tx_md:
-0x5642 022304 call le_check_continue 
-0x5643 022305 rtnmark1 mark_ble_tx_md 
-0x5644 022306 fetch 1 ,mem_le_configuration 
-0x5645 022307 bbit0 bit_ble_transmit_packet_by_md ,le_clear_md 
-0x5646 022308 call le_fifo_get_second_tx_ptr 
-0x5647 022309 branch le_clear_md ,blank 
-0x5648 022310 branch le_set_md 
-:      022313 le_check_continue:
-0x5649 022314 call le_fifo_get_first_tx_ptr 
-0x564a 022315 branch le_clear_md ,blank 
-0x564b 022316 ifetch 1 ,contr 
-0x564c 022317 ifetcht 1 ,contr 
-0x564d 022318 isub temp ,pdata 
-0x564e 022319 sub pdata ,le_max_paket_len ,null 
-0x564f 022320 branch le_clear_md ,positive 
-:      022321 le_set_md:
-0x5650 022322 set1 mark_ble_tx_md ,mark 
-0x5651 022323 rtn 
-:      022325 le_clear_md:
-0x5652 022326 set0 mark_ble_tx_md ,mark 
-0x5653 022327 rtn 
-:      022329 le_update_tx_type:
-0x5654 022330 copy rega ,pdata 
-0x5655 022331 rtn blank 
-0x5656 022332 arg llid_continue ,type 
-0x5657 022333 rtn 
-:      022336 le_att_check_notification_enable:
-0x5658 022337 bpatchx patch2c_4 ,mem_patch2c 
-0x5659 022338 increase 1 ,temp 
-0x565a 022339 call le_att_get_handle_ptr 
-0x565b 022340 increase -2 ,contr 
-0x565c 022341 ifetch 2 ,contr 
-0x565d 022342 arg client_charactertic_configuration ,temp 
-0x565e 022343 isub temp ,null 
-0x565f 022344 nrtn zero 
-0x5660 022345 increase 1 ,contr 
-0x5661 022346 copy contr ,rega 
-0x5662 022347 ifetch 1 ,contr 
-0x5663 022348 rtn 
-:      022351 le_send_empty:
-0x5664 022352 force 0 ,temp 
-0x5665 022353 force 1 ,type 
-:      022355 le_send_packet:
-0x5666 022356 bpatchx patch2c_5 ,mem_patch2c 
-0x5667 022357 storet 1 ,mem_le_txlen 
-0x5668 022358 fetcht 1 ,mem_le_arq 
-0x5669 022359 set1 wak ,temp 
-0x566a 022360 and temp ,0xfc ,pdata 
-0x566b 022361 ior type ,pdata 
-0x566c 022362 store 1 ,mem_le_arq 
-0x566d 022363 and_into 0x1f ,pdata 
-0x566e 022364 isolate1 mark_ble_tx_md ,mark 
-0x566f 022365 setflag true ,md ,pdata 
-0x5670 022366 store 1 ,mem_le_txheader 
-0x5671 022368 fetch 1 ,mem_le_txheader 
-0x5672 022369 compare 1 ,type ,3 
-0x5673 022370 nbranch le_send_no_txlen ,true 
-0x5674 022371 fetch 1 ,mem_le_txlen 
-0x5675 022372 rtn blank 
-:      022373 le_send_no_txlen:
-0x5676 022374 fetch 1 ,mem_le_state 
-0x5677 022375 rtnbit0 lestate_encryption 
-0x5678 022376 call load_sk 
-0x5679 022377 branch le_encrypt 
-:      022380 get_lpm_wake_ble_rx_lock:
-0x567a 022381 arg wake_lock_ble_rx ,queue 
-0x567b 022382 branch lpm_get_wake_lock 
-:      022384 put_lpm_wake_ble_rx_lock:
-0x567c 022385 arg wake_lock_ble_rx ,queue 
-0x567d 022386 branch lpm_put_wake_lock 
-:      022389 le_parse:
-0x567e 022390 bpatchx patch2c_6 ,mem_patch2c 
-0x567f 022391 rtnmark1 mark_old_packet 
-0x5680 022392 call le_fifo_check_full 
-0x5681 022393 nrtn blank 
-0x5682 022394 fetch 1 ,mem_le_rxbuf 
-0x5683 022395 and pdata ,0x3 ,pdata 
-0x5684 022396 store 1 ,mem_le_packet_llid 
-0x5685 022397 ifetch 1 ,contr 
-0x5686 022398 and pdata ,0x1f ,pdata 
-0x5687 022399 store 1 ,mem_le_packet_size 
-0x5688 022400 rtn blank 
-0x5689 022401 copy contr ,pdata 
-0x568a 022402 store 2 ,mem_le_payload_ptr 
-0x568b 022403 fetch 1 ,mem_le_packet_llid 
-0x568c 022404 beq llid_le_ll ,le_parse_ll 
-:      022405 le_parse_l2cap:
-0x568d 022406 call le_check_l2cap_complete 
-0x568e 022407 nbranch get_lpm_wake_ble_rx_lock ,user 
-0x568f 022408 call put_lpm_wake_ble_rx_lock 
-0x5690 022409 fetch 2 ,mem_le_payload_ptr 
-0x5691 022410 copy pdata ,contr 
-0x5692 022411 ifetch 2 ,contr 
-0x5693 022412 store 2 ,mem_le_l2cap_size 
-0x5694 022413 bpatchx patch2c_7 ,mem_patch2c 
-0x5695 022414 ifetch 2 ,contr 
-0x5696 022415 beq le_l2cap_cid_att ,le_parse_att 
-0x5697 022416 beq le_l2cap_cid_smp ,le_parse_smp 
-0x5698 022417 beq le_l2cap_cid_signal ,le_parse_signaling 
-0x5699 022418 rtn 
-:      022421 le_check_l2cap_complete:
-0x569a 022422 fetch 1 ,mem_le_packet_llid 
-0x569b 022423 beq llid_start ,le_check_l2cap_llid_start 
-0x569c 022424 beq llid_continue ,le_check_l2cap_llid_continue 
-0x569d 022425 rtn 
-:      022430 le_check_l2cap_cid_legal:
-0x569e 022431 call enable_user 
-0x569f 022432 arg le_l2cap_cid_att ,temp 
-0x56a0 022433 isub pdata ,null 
-0x56a1 022434 rtn zero 
-0x56a2 022435 arg le_l2cap_cid_signal ,temp 
-0x56a3 022436 isub pdata ,null 
-0x56a4 022437 rtn zero 
-0x56a5 022438 arg le_l2cap_cid_smp ,temp 
-0x56a6 022439 isub pdata ,null 
-0x56a7 022440 rtn zero 
-0x56a8 022441 branch disable_user 
-:      022444 le_check_l2cap_llid_start:
-0x56a9 022445 fetch 2 ,mem_le_payload_ptr 
-0x56aa 022446 copy pdata ,contr 
-0x56ab 022447 ifetch 2 ,contr 
-0x56ac 022448 store 2 ,mem_le_l2cap_size 
-0x56ad 022449 ifetch 2 ,contr 
-0x56ae 022450 call le_check_l2cap_cid_legal 
-0x56af 022451 nrtn user 
-0x56b0 022452 fetcht 1 ,mem_le_packet_size 
-0x56b1 022453 storet 1 ,mem_le_packet_len_recved 
-0x56b2 022454 fetch 2 ,mem_le_l2cap_size 
-0x56b3 022455 increase 4 ,pdata 
-0x56b4 022456 isub temp ,null 
-0x56b5 022457 branch enable_user ,zero 
-0x56b6 022458 fetch 1 ,mem_le_packet_size 
-0x56b7 022459 copy pdata ,loopcnt 
-0x56b8 022460 arg mem_le_l2capbuf ,contw 
-0x56b9 022461 fetch 2 ,mem_le_payload_ptr 
-0x56ba 022462 copy pdata ,contr 
-0x56bb 022463 call memcpy 
-0x56bc 022464 branch disable_user 
-:      022469 le_check_l2cap_continue_legal:
-0x56bd 022470 call enable_user 
-0x56be 022471 fetch 1 ,mem_le_packet_len_recved 
-0x56bf 022472 nrtn blank 
-0x56c0 022473 branch disable_user 
-:      022475 le_check_l2cap_llid_continue:
-0x56c1 022476 call le_check_l2cap_continue_legal 
-0x56c2 022477 nrtn user 
-0x56c3 022478 fetch 1 ,mem_le_packet_len_recved 
-0x56c4 022479 arg mem_le_l2capbuf ,contw 
-0x56c5 022480 iadd contw ,rega 
-0x56c6 022481 fetcht 1 ,mem_le_packet_size 
-0x56c7 022482 iadd temp ,pdata 
-0x56c8 022483 store 1 ,mem_le_packet_len_recved 
-0x56c9 022484 fetch 1 ,mem_le_packet_size 
-0x56ca 022485 copy pdata ,loopcnt 
-0x56cb 022486 copy rega ,contw 
-0x56cc 022487 fetch 2 ,mem_le_payload_ptr 
-0x56cd 022488 copy pdata ,contr 
-0x56ce 022489 call memcpy_fast 
-0x56cf 022490 setarg mem_le_l2capbuf 
-0x56d0 022491 store 2 ,mem_le_payload_ptr 
-0x56d1 022492 fetch 2 ,mem_le_l2cap_size 
-0x56d2 022493 increase 4 ,pdata 
-0x56d3 022494 fetcht 1 ,mem_le_packet_len_recved 
-0x56d4 022495 isub temp ,null 
-0x56d5 022496 branch enable_user ,zero 
-0x56d6 022497 branch disable_user 
-:      022503 le_get_search_att_type:
-0x56d7 022504 call store_contr 
-0x56d8 022505 arg mem_le_search_att_type_length ,contw 
-:      022506 le_get_search_common:
-0x56d9 022507 fetch 2 ,mem_le_l2cap_size 
-0x56da 022508 increase -5 ,pdata 
-:      022509 le_get_search_common2:
-0x56db 022510 istore 1 ,contw 
-0x56dc 022511 copy pdata ,loopcnt 
-0x56dd 022512 call get_contr 
-0x56de 022513 branch memcpy_fast 
-:      022515 le_get_search_att_uuid:
-0x56df 022516 call store_contr 
-0x56e0 022517 arg mem_le_search_uuid_length ,contw 
-0x56e1 022518 branch le_get_search_common 
-:      022522 le_writeatt_cb:
-0x56e2 022523 fetch 2 ,mem_cb_att_write 
-0x56e3 022524 branch callback_func 
-:      022526 le_supervision_update:
-0x56e4 022527 fetcht 4 ,mem_le_supervision_timer 
-0x56e5 022528 call get_clkbt 
-0x56e6 022529 isub temp ,timeup 
-0x56e7 022530 deposit timeup 
-0x56e8 022531 fetcht 2 ,mem_le_superto 
-0x56e9 022532 lshift4 temp ,temp 
-0x56ea 022533 lshift temp ,temp 
-0x56eb 022534 isub temp ,pdata 
-0x56ec 022535 rtn 
-:      022537 le_supervision_flush:
-0x56ed 022538 call get_clkbt 
-0x56ee 022539 store 4 ,mem_le_supervision_timer 
-0x56ef 022540 rtn 
-:      022543 le_adv:
-0x56f0 022544 jam 36 ,mem_le_ch_mapped 
-0x56f1 022545 jam 0 ,mem_le_adv_channel_map_temp 
-:      022546 le_adv_loop:
-0x56f2 022547 bpatchx patch2d_0 ,mem_patch2d 
-0x56f3 022548 fetch 1 ,mem_le_adv_enable 
-0x56f4 022549 rtn blank 
-0x56f5 022550 arg le_adv_interval_timer ,queue 
-0x56f6 022551 call timer_check 
-0x56f7 022552 nrtn blank 
-0x56f8 022553 bpatchx patch2d_1 ,mem_patch2d 
-:      022554 le_adv_loop_tx:
-0x56f9 022555 disable master 
-0x56fa 022556 enable swfine 
-0x56fb 022557 call le_init_adv 
-0x56fc 022558 call le_next_adv_channel 
-0x56fd 022559 call le_send_adv_ind 
-0x56fe 022560 nbranch le_adv_not_match ,match 
-0x56ff 022561 fetch 1 ,mem_le_req_rcv 
-0x5700 022562 increase 1 ,pdata 
-0x5701 022563 store 1 ,mem_le_req_rcv 
-0x5702 022564 fetch 1 ,mem_le_rxbuf 
-0x5703 022565 and pdata ,0x0f ,pdata 
-0x5704 022566 beq scan_req ,le_send_scan_response 
-0x5705 022567 beq connect_req ,le_parse_connect_req 
-:      022568 le_adv_not_match:
-0x5706 022569 bpatchx patch2d_2 ,mem_patch2d 
-0x5707 022570 random pdata 
-0x5708 022571 arg 0x1ff ,temp 
-0x5709 022572 iand temp ,pdata 
-0x570a 022573 add pdata ,250 ,pdata 
-0x570b 022574 call delay 
-0x570c 022575 fetch 1 ,mem_le_adv_channel_map_temp 
-0x570d 022576 fetcht 1 ,mem_le_adv_channel_map 
-0x570e 022577 isub temp ,null 
-0x570f 022578 nbranch le_adv_loop ,zero 
-0x5710 022579 arg le_adv_interval_timer ,queue 
-0x5711 022580 fetch 2 ,mem_le_adv_interval 
-0x5712 022581 branch timer_init 
-:      022584 le_receive_window_size:
-0x5713 022585 bpatchx patch2d_3 ,mem_patch2d 
-0x5714 022586 fetch 1 ,mem_le_peer_sca 
-0x5715 022587 call le_sca_map 
-0x5716 022588 fetch 2 ,mem_le_tsniff 
-0x5717 022589 imul32 temp ,pdata 
-0x5718 022590 arg 375 ,temp 
-0x5719 022591 imul32 temp ,pdata 
-0x571a 022592 arg 100000 ,temp 
-0x571b 022593 idiv temp 
-0x571c 022594 fetch 1 ,mem_le_window_size 
-0x571d 022595 arg 20000 ,temp 
-0x571e 022596 imul32 temp ,pdata 
-0x571f 022597 iadd temp ,pdata 
-0x5720 022598 store 4 ,mem_le_transmit_window 
-0x5721 022599 bpatchx patch2d_4 ,mem_patch2d 
-0x5722 022600 fetch 2 ,mem_rx_window_sniff 
-0x5723 022601 call wait_div_end 
-0x5724 022602 quotient temp 
-0x5725 022603 iadd temp ,pdata 
-0x5726 022604 store 2 ,mem_le_receive_window 
-0x5727 022605 rtn 
-:      022607 le_parse_connect_req:
-0x5728 022608 bpatchx patch2d_5 ,mem_patch2d 
-0x5729 022609 fetch 6 ,mem_le_rxbuf + 8 
-0x572a 022610 fetcht 6 ,mem_le_lap 
-0x572b 022611 isub temp ,null 
-0x572c 022612 nrtn zero 
-0x572d 022613 call le_scan_check_sender_addr_type 
-0x572e 022614 copy rega ,pdata 
-0x572f 022615 store 1 ,mem_le_conn_peer_addr_type 
-0x5730 022616 fetch 7 ,mem_le_rxbuf + 21 
-0x5731 022617 store 7 ,mem_tmp_buffer 
-0x5732 022618 ifetch 8 ,contr 
-0x5733 022619 istore 8 ,contw 
-0x5734 022620 fetch 6 ,mem_le_rxbuf + 2 
-0x5735 022621 store 6 ,mem_le_plap 
-0x5736 022622 increase 6 ,contr 
-0x5737 022623 ifetch 8 ,contr 
-0x5738 022624 store 8 ,mem_le_access 
-0x5739 022625 ifetcht 2 ,contr 
-0x573a 022626 bpatchx patch2d_6 ,mem_patch2d 
-0x573b 022627 lshift2 temp ,temp 
-0x573c 022628 ifetch 2 ,contr 
-0x573d 022629 lshift2 pdata ,pdata 
-0x573e 022630 store 2 ,mem_le_tsniff 
-0x573f 022631 store 4 ,mem_le_anchor 
-0x5740 022632 isub temp ,pdata 
-0x5741 022633 add pdata ,-2 ,clke_bt 
-0x5742 022634 ifetch 9 ,contr 
-0x5743 022635 store 9 ,mem_le_slave_latency 
-0x5744 022636 bpatchx patch2d_7 ,mem_patch2d 
-0x5745 022637 ifetch 1 ,contr 
-0x5746 022638 rshift4 pdata ,temp 
-0x5747 022639 rshift temp ,temp 
-0x5748 022640 storet 1 ,mem_le_peer_sca 
-0x5749 022641 and_into 0x1f ,pdata 
-0x574a 022642 store 1 ,mem_le_hop 
-0x574b 022643 call le_receive_window_size 
-0x574c 022644 call le_calc_channel_map 
-0x574d 022645 call le_init_slave 
-0x574e 022646 call context_new 
-0x574f 022647 nrtn zero 
-0x5750 022648 bpatchx patch2e_0 ,mem_patch2e 
-0x5751 022649 call calc_clke_offset 
-0x5752 022650 call le_l2cap_reset_signaling_identifier 
-0x5753 022651 jam bt_evt_le_connected ,mem_fifo_temp 
-0x5754 022652 call ui_ipc_send_event 
-0x5755 022653 branch context_save 
-:      022656 le_init_attlist_search:
-0x5756 022657 bpatchx patch2e_1 ,mem_patch2e 
-0x5757 022658 fetch 2 ,mem_le_search_handle_start 
-0x5758 022659 iforce regb 
-0x5759 022660 fetch 2 ,mem_le_search_handle_end 
-0x575a 022661 iforce regc 
-0x575b 022662 fetch 2 ,mem_ui_le_uuid_table 
-0x575c 022663 iforce contr 
-0x575d 022664 enable user 
-0x575e 022665 rtn 
-:      022668 le_att_handle_inrange:
-0x575f 022669 ifetch 2 ,contr 
-0x5760 022670 rtn blank 
-0x5761 022671 isub regb ,null 
-0x5762 022672 nrtn positive 
-0x5763 022673 isub regc ,null 
-0x5764 022674 rtn zero 
-0x5765 022675 branch le_att_handle_blank ,positive 
-0x5766 022676 force 1 ,null 
-0x5767 022677 rtn 
-:      022678 le_att_handle_blank:
-0x5768 022679 force 0 ,pdata 
-0x5769 022680 rtn 
-:      022684 le_att_get_handle_ptr:
-0x576a 022685 call le_att_get_handle_ptr2 
-0x576b 022686 branch le_att_get_handle_ptr_found ,zero 
-0x576c 022687 rtn 
-:      022689 le_att_get_handle_ptr2:
-0x576d 022690 bpatchx patch2e_2 ,mem_patch2e 
-0x576e 022691 fetch 2 ,mem_ui_le_uuid_table 
-0x576f 022692 iforce contr 
-:      022693 le_att_get_handle_loop1:
-0x5770 022694 ifetch 2 ,contr 
-0x5771 022695 rtn blank 
-0x5772 022696 isub temp ,null 
-0x5773 022697 rtn zero 
-0x5774 022698 ifetch 1 ,contr 
-0x5775 022699 iadd contr ,contr 
-0x5776 022700 ifetch 1 ,contr 
-0x5777 022701 iadd contr ,contr 
-0x5778 022702 branch le_att_get_handle_loop1 
-:      022703 le_att_get_handle_ptr_found:
-0x5779 022704 ifetch 1 ,contr 
-0x577a 022705 iadd contr ,contr 
-0x577b 022706 rtn 
-:      022710 le_att_get_short_uuid_ptr:
-0x577c 022711 bpatchx patch2e_3 ,mem_patch2e 
-0x577d 022712 fetch 2 ,mem_ui_le_uuid_table 
-0x577e 022713 iforce contr 
-:      022714 le_att_get_short_uuid_loop:
-0x577f 022715 ifetch 2 ,contr 
-0x5780 022716 rtn blank 
-0x5781 022717 ifetch 1 ,contr 
-0x5782 022718 iadd contr ,contr 
-0x5783 022719 increase -2 ,contr 
-0x5784 022720 ifetch 2 ,contr 
-0x5785 022721 isub temp ,null 
-0x5786 022722 rtn zero 
-0x5787 022723 ifetch 1 ,contr 
-0x5788 022724 iadd contr ,contr 
-0x5789 022725 branch le_att_get_short_uuid_loop 
-:      022729 le_att_get_handle_info_from_ptr:
-0x578a 022730 fetch 2 ,mem_le_cur_attlist_start_ptr 
-0x578b 022731 branch le_att_get_handle_info_fast 
-:      022733 le_att_get_handle_info:
-0x578c 022734 bpatchx patch2e_4 ,mem_patch2e 
-0x578d 022735 fetch 2 ,mem_ui_le_uuid_table 
-:      022736 le_att_get_handle_info_fast:
-0x578e 022737 iforce contr 
-0x578f 022738 copy temp ,rega 
-:      022739 le_att_get_handle_loop:
-0x5790 022740 ifetch 2 ,contr 
-0x5791 022741 branch le_att_unfind_handle ,blank 
-0x5792 022742 isub rega ,null 
-0x5793 022743 branch le_att_finded_handle ,zero 
-0x5794 022744 ifetch 1 ,contr 
-0x5795 022745 iadd contr ,contr 
-0x5796 022746 ifetch 1 ,contr 
-0x5797 022747 iadd contr ,contr 
-0x5798 022748 branch le_att_get_handle_loop 
-:      022749 le_att_unfind_handle:
-0x5799 022750 branch disable_blank 
-:      022752 le_att_finded_handle:
-0x579a 022753 ifetch 1 ,contr 
-0x579b 022754 store 1 ,mem_le_cur_uuid_length 
-0x579c 022755 copy pdata ,loopcnt 
-0x579d 022756 arg mem_le_cur_uuid ,contw 
-0x579e 022757 call memcpy_fast 
-0x579f 022758 ifetch 1 ,contr 
-0x57a0 022759 store 1 ,mem_le_curr_att_len 
-0x57a1 022760 call store_contr 
-0x57a2 022761 branch enable_blank 
-:      022764 le_modified_name:
-0x57a3 022765 bpatchx patch2e_5 ,mem_patch2e 
-0x57a4 022766 call le_modified_name_att_list 
-0x57a5 022767 branch le_modified_name_adv 
-:      022769 le_modified_name_att_list:
-0x57a6 022770 arg uuid_chrctr_device_name ,temp 
-0x57a7 022771 call le_att_get_short_uuid_ptr 
-0x57a8 022772 rtn blank 
-0x57a9 022773 ifetch 1 ,contr 
-0x57aa 022774 copy contr ,contw 
-0x57ab 022775 fetcht 1 ,mem_le_name_len 
-0x57ac 022776 copy temp ,loopcnt 
-0x57ad 022777 isub temp ,null 
-0x57ae 022778 nbranch le_name_length_longer_than_att ,positive 
-0x57af 022779 isub temp ,temp 
-0x57b0 022780 arg mem_le_name ,contr 
-0x57b1 022781 call memcpy 
-0x57b2 022782 copy temp ,loopcnt 
-0x57b3 022783 ncall memcpy_empty ,zero 
-0x57b4 022784 rtn 
-:      022785 le_name_length_longer_than_att:
-0x57b5 022786 copy pdata ,loopcnt 
-0x57b6 022787 arg mem_le_name ,contr 
-0x57b7 022788 branch memcpy_fast 
-:      022791 le_modified_name_adv:
-0x57b8 022792 arg mem_le_adv_data_len + 32 ,regc 
-0x57b9 022793 arg mem_le_adv_data ,rega 
-0x57ba 022794 call le_modified_name_adv_and_scan 
-0x57bb 022795 setarg 0 
-0x57bc 022796 setflag user ,0 ,pdata 
-0x57bd 022797 store 1 ,mem_pdatatemp 
-0x57be 022798 arg mem_le_scan_data_len + 32 ,regc 
-0x57bf 022799 arg mem_le_scan_data ,rega 
-0x57c0 022800 call le_modified_name_adv_and_scan 
-0x57c1 022801 rtn user 
-0x57c2 022802 fetch 1 ,mem_pdatatemp 
-0x57c3 022803 branch assert ,blank 
-0x57c4 022804 rtn 
-:      022807 le_modified_name_adv_and_scan:
-0x57c5 022808 bpatchx patch2e_6 ,mem_patch2e 
-0x57c6 022809 call enable_user 
-0x57c7 022810 call clear_temp_block 
-0x57c8 022811 arg 0 ,regb 
-0x57c9 022812 arg mem_le_data_temp ,contw 
-0x57ca 022813 call le_modified_name_adv_loop 
-0x57cb 022814 fetch 1 ,mem_le_name_len 
-0x57cc 022815 add pdata ,1 ,temp 
-0x57cd 022816 iadd regb ,rega 
-0x57ce 022817 increase 2 ,rega 
-0x57cf 022818 sub rega ,0x1f ,null 
-0x57d0 022819 nbranch le_modified_name_adv_and_scan_name_overflow ,positive 
-0x57d1 022820 istoret 1 ,contw 
-0x57d2 022821 arg gap_adtype_local_name_complete ,temp 
-0x57d3 022822 istoret 1 ,contw 
-0x57d4 022823 iforce loopcnt 
-0x57d5 022824 call memcpy_fast 
-0x57d6 022825 copy rega ,regb 
-:      022826 le_modified_name_adv_and_scan_store_data:
-0x57d7 022827 deposit regb 
-0x57d8 022828 store 1 ,mem_le_data_len_temp 
-0x57d9 022829 arg mem_le_data_len_temp ,contr 
-0x57da 022830 setarg -32 
-0x57db 022831 iadd regc ,contw 
-0x57dc 022832 branch memcpy32 
-:      022834 le_modified_name_adv_and_scan_name_overflow:
-0x57dd 022835 call disable_user 
-0x57de 022836 branch le_modified_name_adv_and_scan_store_data 
-:      022838 le_modified_name_adv_loop:
-0x57df 022839 ifetch 1 ,rega 
-0x57e0 022840 rtn blank 
-0x57e1 022841 pincrease 1 
-0x57e2 022842 ifetcht 1 ,contr 
-0x57e3 022843 sub temp ,gap_adtype_local_name_complete ,null 
-0x57e4 022844 branch le_modified_name_adv_found_name ,zero 
-0x57e5 022845 iadd regb ,regb 
-0x57e6 022846 copy rega ,contr 
-0x57e7 022847 iforce loopcnt 
-0x57e8 022848 call memcpy_fast 
-0x57e9 022849 copy contr ,rega 
-:      022850 le_modified_name_adv_loop2:
-0x57ea 022851 deposit rega 
-0x57eb 022852 isub regc ,null 
-0x57ec 022853 rtn positive 
-0x57ed 022854 branch le_modified_name_adv_loop 
-:      022856 le_modified_name_adv_found_name:
-0x57ee 022857 iadd rega ,rega 
-0x57ef 022858 branch le_modified_name_adv_loop2 
-:      022861 memcpy_empty:
-0x57f0 022862 setarg space 
-0x57f1 022863 istore 1 ,contw 
-0x57f2 022864 loop memcpy_empty 
-0x57f3 022865 rtn 
-:      022868 le_lpm_set_mult:
-0x57f4 022869 bpatchx patch2e_7 ,mem_patch2e 
-0x57f5 022870 disable wake 
-0x57f6 022871 branch le_lpm_set_mult_attempt ,attempt 
-0x57f7 022872 nbranch le_lpm_lost ,match 
-:      022873 le_lpm_set_mult_attempt:
-0x57f8 022874 call lpm_match 
-0x57f9 022875 fetch 2 ,mem_rx_window_sniff 
-0x57fa 022876 store 2 ,mem_le_receive_window 
-0x57fb 022878 nbranch lpm_mult_short ,match 
-0x57fc 022879 bmark1 mark_old_packet ,lpm_mult_short 
-0x57fd 022881 fetch 1 ,mem_le_packet_size 
-0x57fe 022882 nbranch lpm_mult_short ,blank 
-0x57ff 022883 fetch 1 ,mem_le_txlen 
-0x5800 022884 nbranch lpm_mult_short ,blank 
-0x5801 022886 fetch 1 ,mem_le_configuration 
-0x5802 022887 bbit1 bit_ble_short_mult ,lpm_mult_short 
-0x5803 022889 fetch 1 ,mem_le_state 
-0x5804 022890 bbit1 lestate_update_param ,lpm_mult_short 
-0x5805 022891 branch lpm_mult_wait_timeout 
-:      022893 le_lpm_lost:
-0x5806 022894 fetcht 2 ,mem_rx_window_sniff 
-0x5807 022895 rshift temp ,temp 
-0x5808 022896 fetch 2 ,mem_le_receive_window 
-0x5809 022897 iadd temp ,pdata 
-0x580a 022898 store 2 ,mem_le_receive_window 
-0x580b 022899 branch lpm_lost 
-:      022902 le_set_config_fixed_tk:
-0x580c 022903 arg bit_ble_passkey_fixed_key ,queue 
-0x580d 022904 branch le_set_config 
-:      022906 le_clr_config_fixed_tk:
-0x580e 022907 arg bit_ble_passkey_fixed_key ,queue 
-0x580f 022908 branch le_clr_config 
-:      022910 le_set_config_fixed_ltk:
-0x5810 022911 arg bit_ble_pairing_fixed_ltk ,queue 
-0x5811 022912 branch le_set_config 
-:      022914 le_clr_config_fixed_ltk:
-0x5812 022915 arg bit_ble_pairing_fixed_ltk ,queue 
-0x5813 022916 branch le_clr_config 
-:      022918 le_set_config_more_data:
-0x5814 022919 arg bit_ble_transmit_packet_by_md ,queue 
-0x5815 022920 branch le_set_config 
-:      022922 le_clr_config_more_data:
-0x5816 022923 arg bit_ble_transmit_packet_by_md ,queue 
-0x5817 022924 branch le_clr_config 
-:      022926 le_set_config_read_authentication:
-0x5818 022927 arg bit_ble_read_auth ,queue 
-0x5819 022928 branch le_set_config 
-:      022930 le_clr_config_read_authentication:
-0x581a 022931 arg bit_ble_read_auth ,queue 
-0x581b 022932 branch le_clr_config 
-:      022934 le_set_config_write_authentication:
-0x581c 022935 arg bit_ble_write_auth ,queue 
-0x581d 022936 branch le_set_config 
-:      022938 le_clr_config_write_authentication:
-0x581e 022939 arg bit_ble_write_auth ,queue 
-0x581f 022940 branch le_clr_config 
-:      022942 le_set_config_short_mult:
-0x5820 022943 arg bit_ble_short_mult ,queue 
-0x5821 022944 branch le_set_config 
-:      022946 le_clr_config_short_mult:
-0x5822 022947 arg bit_ble_short_mult ,queue 
-0x5823 022948 branch le_clr_config 
-:      022951 le_set_config:
-0x5824 022952 fetch 1 ,mem_le_configuration 
-0x5825 022953 qset1 pdata 
-0x5826 022954 store 1 ,mem_le_configuration 
-0x5827 022955 rtn 
-:      022957 le_clr_config:
-0x5828 022958 fetch 1 ,mem_le_configuration 
-0x5829 022959 qset0 pdata 
-0x582a 022960 store 1 ,mem_le_configuration 
-0x582b 022961 rtn 
-:      022963 le_set_fixed_ltk:
-0x582c 022964 setarg 0x112233 
-0x582d 022965 store 3 ,mem_le_fixed_ltk 
-0x582e 022966 setarg 0x445566 
-0x582f 022967 istore 3 ,contw 
-0x5830 022968 setarg 0x778899 
-0x5831 022969 istore 3 ,contw 
-0x5832 022970 setarg 0x001122 
-0x5833 022971 istore 3 ,contw 
-0x5834 022972 setarg 0x334455 
-0x5835 022973 istore 3 ,contw 
-0x5836 022974 setarg 0x66 
-0x5837 022975 istore 1 ,contw 
-0x5838 022976 rtn 
-:      022979 le_set_justwork:
-0x5839 022980 setarg 0x01000302 
-0x583a 022981 store 4 ,mem_le_pres 
-0x583b 022982 setarg 0x010010 
-0x583c 022983 store 3 ,mem_le_pres_max_keysize 
-0x583d 022984 jam 1 ,mem_le_pairing_mode 
-0x583e 022985 rtn 
-:      022989 le_fifo_malloc_tx_empty:
-0x583f 022990 arg 0 ,rega 
-0x5840 022991 arg llid_empty ,type 
-0x5841 022992 branch le_fifo_malloc_tx 
-:      022996 le_fifo_malloc_tx_ll:
-0x5842 022997 arg llid_le_ll ,type 
-0x5843 022998 call le_fifo_malloc_tx 
-0x5844 022999 copy regb ,pdata 
-0x5845 023000 istore 1 ,contw 
-0x5846 023001 rtn 
-:      023005 le_fifo_malloc_tx_l2cap:
-0x5847 023006 force llid_l2cap_start ,type 
-0x5848 023007 increase 4 ,rega 
-0x5849 023008 call le_fifo_malloc_tx 
-0x584a 023009 increase -4 ,rega 
-0x584b 023010 copy rega ,pdata 
-0x584c 023011 istore 2 ,contw 
-0x584d 023012 copy regb ,pdata 
-0x584e 023013 istore 2 ,contw 
-0x584f 023014 rtn 
-:      023018 le_fifo_malloc_tx:
-0x5850 023019 sub rega ,240 ,null 
-0x5851 023020 nbranch assert ,positive 
-0x5852 023021 fetch 1 ,mem_le_tx_buff_used 
-0x5853 023022 arg 1 ,temp 
-0x5854 023023 arg le_tx_buff_count ,loopcnt 
-:      023024 le_fifo_malloc_tx_loop:
-0x5855 023025 iand temp ,null 
-0x5856 023026 branch le_fifo_malloc_tx_got_empty ,zero 
-0x5857 023027 lshift temp ,temp 
-0x5858 023028 loop le_fifo_malloc_tx_loop 
-0x5859 023029 branch assert 
-:      023030 le_fifo_malloc_tx_got_empty:
-0x585a 023031 ixor temp ,pdata 
-0x585b 023032 store 1 ,mem_le_tx_buff_used 
-0x585c 023033 sub loopcnt ,le_tx_buff_count ,pdata 
-0x585d 023034 lshift4 pdata ,pdata 
-0x585e 023035 lshift4 pdata ,pdata 
-0x585f 023036 arg mem_le_tx_buffer0 ,temp 
-0x5860 023037 iadd temp ,temp 
-:      023038 le_fifo_tx_find_empty_ptr:
-0x5861 023039 arg 0 ,loopcnt 
-0x5862 023040 arg mem_le_tx_ptr0 ,contr 
-:      023041 le_fifo_tx_find_empty_ptr_loop:
-0x5863 023042 ifetch 2 ,contr 
-0x5864 023043 branch le_fifo_tx_found_empty_ptr ,blank 
-0x5865 023044 copy loopcnt ,pdata 
-0x5866 023045 increase 1 ,loopcnt 
-0x5867 023046 bne le_tx_buff_count ,le_fifo_tx_find_empty_ptr_loop 
-0x5868 023047 branch assert 
-:      023050 le_fifo_tx_found_empty_ptr:
-0x5869 023051 increase -2 ,contr 
-0x586a 023052 istoret 2 ,contr 
-0x586b 023053 copy temp ,contw 
-0x586c 023054 copy rega ,pdata 
-0x586d 023055 istore 1 ,contw 
-0x586e 023056 setarg 0 
-0x586f 023057 istore 1 ,contw 
-0x5870 023058 copy type ,pdata 
-0x5871 023059 istore 1 ,contw 
-0x5872 023060 rtn 
-:      023064 le_fifo_get_first_tx_ptr:
-0x5873 023065 fetch 2 ,mem_le_tx_ptr0 
-0x5874 023066 copy pdata ,contr 
-0x5875 023067 rtn 
-:      023069 le_fifo_get_second_tx_ptr:
-0x5876 023070 fetch 2 ,mem_le_tx_ptr1 
-0x5877 023071 copy pdata ,contr 
-0x5878 023072 rtn 
-:      023074 le_fifo_get_last_tx_ptr:
-0x5879 023075 call le_fifo_get_last_tx_ptr0 
-0x587a 023076 copy pdata ,contr 
-0x587b 023077 rtn 
-:      023078 le_fifo_get_last_tx_ptr0:
-0x587c 023079 fetch 2 ,mem_le_tx_ptr3 
-0x587d 023080 nrtn blank 
-0x587e 023081 fetch 2 ,mem_le_tx_ptr2 
-0x587f 023082 nrtn blank 
-0x5880 023083 fetch 2 ,mem_le_tx_ptr1 
-0x5881 023084 nrtn blank 
-0x5882 023085 fetch 2 ,mem_le_tx_ptr0 
-0x5883 023086 rtn 
-:      023088 le_fifo_get_first_l2cap_ptr:
-0x5884 023089 call le_fifo_get_first_tx_ptr 
-0x5885 023090 increase 3 ,contr 
-0x5886 023091 rtn 
-:      023093 le_fifo_get_first_att_ptr:
-0x5887 023094 call le_fifo_get_first_tx_ptr 
-0x5888 023095 increase 7 ,contr 
-0x5889 023096 rtn 
-:      023098 le_fifo_get_last_att_ptr:
-0x588a 023099 call le_fifo_get_last_tx_ptr 
-0x588b 023100 increase 7 ,contr 
-0x588c 023101 rtn 
-:      023103 le_fifo_get_last_l2cap_ptr:
-0x588d 023104 call le_fifo_get_last_tx_ptr 
-0x588e 023105 increase 3 ,contr 
-0x588f 023106 rtn 
-:      023110 le_fifo_check_full:
-0x5890 023111 fetch 2 ,mem_le_tx_ptr3 
-0x5891 023112 rtn 
-:      023115 le_fifo_check_nearly_full:
-0x5892 023116 fetch 2 ,mem_le_tx_ptr2 
-0x5893 023117 rtn 
-:      023120 le_fifo_check_empty:
-0x5894 023121 fetch 2 ,mem_le_tx_ptr0 
-0x5895 023122 rtn 
-:      023125 le_fifo_release_first_node:
-0x5896 023126 fetch 2 ,mem_le_tx_ptr0 
-0x5897 023127 arg mem_le_tx_buffer0 ,temp 
-0x5898 023128 isub temp ,pdata 
-0x5899 023129 rshift4 pdata ,pdata 
-0x589a 023130 rshift4 pdata ,queue 
-0x589b 023131 fetch 1 ,mem_le_tx_buff_used 
-0x589c 023132 qset0 pdata 
-0x589d 023133 store 1 ,mem_le_tx_buff_used 
-0x589e 023134 arg 0 ,loopcnt 
-:      023135 le_fifo_release_first_node_loop:
-0x589f 023136 lshift loopcnt ,pdata 
-0x58a0 023137 arg mem_le_tx_ptr1 ,temp 
-0x58a1 023138 iadd temp ,temp 
-0x58a2 023139 ifetch 2 ,temp 
-0x58a3 023140 increase -2 ,temp 
-0x58a4 023141 istore 2 ,temp 
-0x58a5 023142 copy loopcnt ,pdata 
-0x58a6 023143 increase 1 ,loopcnt 
-0x58a7 023144 bne le_tx_buff_update_loopcnt ,le_fifo_release_first_node_loop 
-0x58a8 023145 setarg 0 
-0x58a9 023146 istore 2 ,temp 
-0x58aa 023147 rtn 
-:      023153 le_parse_att:
-0x58ab 023154 ifetch 3 ,contr 
-0x58ac 023155 store 3 ,mem_le_att_opcode 
-0x58ad 023156 beq attop_exchange_mtu_request ,le_parse_att_exchange_mtu_request 
-0x58ae 023157 beq attop_exchange_mtu_response ,le_parse_att_exchange_mtu_response 
-0x58af 023158 beq attop_find_information_request ,le_parse_att_find_information_request 
-0x58b0 023159 beq attop_find_by_type_value_request ,le_parse_att_find_by_type_value_request 
-0x58b1 023160 beq attop_read_by_type_request ,le_parse_att_read_by_type_request 
-0x58b2 023161 beq attop_read_request ,le_parse_att_read_request 
-0x58b3 023162 beq attop_read_blob_request ,le_parse_att_read_blob_request 
-0x58b4 023163 beq attop_read_by_group_type_request ,le_parse_att_read_by_group_type_request 
-0x58b5 023164 beq attop_write_request ,le_parse_att_write_request 
-0x58b6 023165 beq attop_prepare_write_request ,le_parse_att_prepare_write_request 
-0x58b7 023166 beq attop_execute_write_request ,le_parse_att_execute_write_request 
-0x58b8 023167 beq attop_write_command ,le_parse_att_write_command 
-0x58b9 023168 rtn 
-:      023171 le_send_att_exchange_mtu_requset:
-0x58ba 023172 force 3 ,rega 
-0x58bb 023173 call le_fifo_malloc_tx_l2cap_gatt 
-0x58bc 023174 setarg attop_exchange_mtu_request 
-0x58bd 023175 istore 1 ,contw 
-0x58be 023176 fetch 2 ,mem_le_local_mtu 
-0x58bf 023177 istore 2 ,contw 
-0x58c0 023178 rtn 
-:      023181 le_parse_att_exchange_mtu_request:
-0x58c1 023182 call le_parse_att_exchange_mtu_response 
-:      023183 le_send_att_exchange_mtu_response:
-0x58c2 023184 force 3 ,rega 
-0x58c3 023185 call le_fifo_malloc_tx_l2cap_gatt 
-0x58c4 023186 setarg attop_exchange_mtu_response 
-0x58c5 023187 istore 1 ,contw 
-0x58c6 023188 fetch 2 ,mem_le_local_mtu 
-0x58c7 023189 istore 2 ,contw 
-0x58c8 023190 rtn 
-:      023192 le_parse_att_exchange_mtu_response:
-0x58c9 023193 rshift8 pdata ,pdata 
-0x58ca 023194 store 2 ,mem_le_remote_mtu 
-0x58cb 023195 rtn 
-:      023197 le_parse_att_find_information_request:
-0x58cc 023198 call le_get_search_handle_start_end_common 
-0x58cd 023199 call enable_user 
-0x58ce 023200 branch le_send_att_find_information_response 
-:      023202 le_send_att_find_information_response:
-0x58cf 023203 arg 3 ,timeup 
-0x58d0 023204 call le_init_attlist_search 
-:      023205 le_send_att_find_information_res_loop:
-0x58d1 023206 call le_att_handle_inrange 
-0x58d2 023207 branch le_send_att_find_information_res_end ,blank 
-0x58d3 023208 nbranch le_send_att_find_information_res_next ,positive 
-0x58d4 023209 increase -2 ,contr 
-0x58d5 023210 call store_contr 
-0x58d6 023211 call get_contw 
-0x58d7 023212 nbranch le_send_att_find_information_res_store_info ,user 
-0x58d8 023213 call push_stack_rega_b_c 
-0x58d9 023214 call disable_user 
-0x58da 023215 force 20 ,rega 
-0x58db 023216 call le_fifo_malloc_tx_l2cap_gatt 
-0x58dc 023217 call pop_stack_rega_b_c 
-0x58dd 023218 setarg attop_find_information_response 
-0x58de 023219 istore 1 ,contw 
-0x58df 023220 setarg uuid_size_16bit 
-0x58e0 023221 istore 1 ,contw 
-:      023222 le_send_att_find_information_res_store_info:
-0x58e1 023223 call get_contr 
-0x58e2 023224 ifetch 2 ,contr 
-0x58e3 023225 istore 2 ,contw 
-0x58e4 023226 ifetch 1 ,contr 
-0x58e5 023227 copy pdata ,loopcnt 
-0x58e6 023228 call memcpy 
-0x58e7 023229 call store_contw 
-0x58e8 023230 increase -1 ,timeup 
-0x58e9 023231 branch le_send_att_find_information_res_end ,zero 
-:      023232 le_send_att_find_information_res_cont:
-0x58ea 023233 ifetch 1 ,contr 
-0x58eb 023234 iadd contr ,contr 
-0x58ec 023235 branch le_send_att_find_information_res_loop 
-:      023236 le_send_att_find_information_res_next:
-0x58ed 023237 ifetch 1 ,contr 
-0x58ee 023238 iadd contr ,contr 
-0x58ef 023239 branch le_send_att_find_information_res_cont 
-:      023240 le_send_att_find_information_res_end:
-0x58f0 023241 branch le_send_att_error_response_notfound ,user 
-0x58f1 023242 branch le_send_auto_len_by_mem 
-:      023245 le_parse_att_find_by_type_value_request:
-0x58f2 023246 call le_get_search_handle_start_end_common 
-0x58f3 023247 ifetch 2 ,contr 
-0x58f4 023248 store 2 ,mem_le_search_uuid 
-0x58f5 023249 call store_contr 
-0x58f6 023250 arg mem_le_search_att_type_length ,contw 
-0x58f7 023251 fetch 2 ,mem_le_l2cap_size 
-0x58f8 023252 increase -7 ,pdata 
-0x58f9 023253 call le_get_search_common2 
-0x58fa 023254 branch le_send_att_find_by_type_value_response 
-:      023257 le_start_end_handle_check_1:
-0x58fb 023258 disable user 
-0x58fc 023259 fetcht 2 ,mem_le_search_handle_start 
-0x58fd 023260 fetch 2 ,mem_le_search_handle_end 
-0x58fe 023261 isub temp ,null 
-0x58ff 023262 nbranch le_start_end_handle_check_1_fail ,positive 
-0x5900 023263 deposit temp 
-0x5901 023264 rtnne 0 
-:      023265 le_start_end_handle_check_1_fail:
-0x5902 023266 enable user 
-0x5903 023267 jam att_err_invalid_handle ,mem_le_err_code 
-0x5904 023268 branch le_send_att_error_response 
-:      023271 le_send_att_find_by_type_value_response:
-0x5905 023272 call le_start_end_handle_check_1 
-0x5906 023273 rtn user 
-0x5907 023274 fetcht 2 ,mem_le_search_uuid 
-0x5908 023275 setarg uuid_gatt_primary_service 
-0x5909 023276 isub temp ,null 
-0x590a 023277 branch le_send_att_find_by_type_value_res_primary ,zero 
-0x590b 023278 branch le_send_att_error_response_notfound 
-:      023281 le_send_att_find_by_type_value_res_primary:
-0x590c 023282 jam le_find_by_type_val_res_not_found ,mem_le_search_res 
-0x590d 023283 fetcht 2 ,mem_le_search_handle_start 
-0x590e 023284 storet 2 ,mem_temp 
-0x590f 023285 call le_att_get_handle_info 
-0x5910 023286 nbranch le_send_att_error_response_notfound ,blank 
-:      023287 le_send_att_find_primary_search_loop:
-0x5911 023288 fetcht 2 ,mem_temp 
-0x5912 023289 call le_att_get_handle_info 
-0x5913 023290 nbranch le_send_att_error_response_notfound2 ,blank 
-0x5914 023291 copy contr ,rega 
-0x5915 023292 fetch 1 ,mem_le_curr_att_len 
-0x5916 023293 copy pdata ,loopcnt 
-0x5917 023294 fetcht 1 ,mem_le_search_att_type_length 
-0x5918 023295 isub temp ,null 
-0x5919 023296 nbranch le_send_att_find_primary_search_loop1 ,zero 
-0x591a 023297 arg mem_le_search_att_type ,regb 
-0x591b 023298 call string_compare 
-0x591c 023300 branch le_send_att_find_primary_search_end_start_handle_found ,zero 
-0x591d 023302 fetch 2 ,mem_le_cur_uuid 
-0x591e 023303 fetcht 2 ,mem_le_search_uuid 
-0x591f 023304 isub temp ,null 
-0x5920 023305 branch le_send_att_find_primary_search_end_ending_handle_found ,zero 
-:      023306 le_send_att_find_primary_search_loop1:
-0x5921 023307 fetch 2 ,mem_temp 
-0x5922 023308 increase 1 ,pdata 
-0x5923 023309 store 2 ,mem_temp 
-0x5924 023310 branch le_send_att_find_primary_search_loop 
-:      023312 le_send_att_error_response_notfound2:
-0x5925 023313 fetch 1 ,mem_le_search_res 
-0x5926 023314 beq le_find_by_type_val_res_found_starting_handle ,le_send_att_find_primary_search_end_ending_handle_found 
-0x5927 023315 branch le_send_att_error_response_notfound 
-:      023318 le_send_att_find_primary_search_end_start_handle_found:
-0x5928 023319 fetch 2 ,mem_le_cur_uuid 
-0x5929 023320 fetcht 2 ,mem_le_search_uuid 
-0x592a 023321 isub temp ,null 
-0x592b 023322 nbranch le_send_att_find_primary_search_loop1 ,zero 
-0x592c 023323 jam le_find_by_type_val_res_found_starting_handle ,mem_le_search_res 
-0x592d 023325 fetcht 2 ,mem_temp 
-0x592e 023326 storet 2 ,mem_le_cur_handle_start 
-0x592f 023327 branch le_send_att_find_primary_search_loop1 
-:      023329 le_send_att_find_primary_search_end_ending_handle_found:
-0x5930 023330 fetch 1 ,mem_le_search_res 
-0x5931 023331 beq le_find_by_type_val_res_not_found ,le_send_att_find_primary_search_loop1 
-0x5932 023332 jam le_find_by_type_val_res_found_ending_handle ,mem_le_search_res 
-0x5933 023333 fetcht 2 ,mem_temp 
-0x5934 023334 increase -1 ,temp 
-0x5935 023335 storet 2 ,mem_le_cur_handle_end 
-:      023337 le_send_att_find_primary_search_end:
-0x5936 023338 arg 5 ,rega 
-0x5937 023339 call le_fifo_malloc_tx_l2cap_gatt 
-0x5938 023340 setarg attop_find_by_type_value_response 
-0x5939 023341 istore 1 ,contw 
-0x593a 023342 fetch 2 ,mem_le_cur_handle_start 
-0x593b 023343 istore 2 ,contw 
-0x593c 023344 fetch 2 ,mem_le_cur_handle_end 
-0x593d 023345 istore 2 ,contw 
-0x593e 023346 rtn 
-:      023350 le_parse_att_read_by_type_request:
-0x593f 023351 call le_get_search_handle_start_end_common 
-0x5940 023352 call le_get_search_att_uuid 
-0x5941 023353 branch le_send_att_read_by_type_response 
-:      023355 le_send_att_read_by_type_response:
-0x5942 023356 fetcht 2 ,mem_le_search_handle_start 
-0x5943 023357 storet 2 ,mem_temp 
-0x5944 023358 call le_init_attlist_search 
-0x5945 023359 call le_att_get_handle_ptr2 
-0x5946 023360 increase -2 ,contr 
-0x5947 023361 copy contr ,pdata 
-0x5948 023362 store 2 ,mem_le_cur_attlist_start_ptr 
-0x5949 023364 fetcht 2 ,mem_le_search_uuid 
-0x594a 023365 setarg uuid_chrctr_device_name 
-0x594b 023366 isub temp ,null 
-0x594c 023367 branch le_send_att_read_by_type_res_device_name ,zero 
-0x594d 023368 setarg uuid_gatt_characteristic 
-0x594e 023369 isub temp ,null 
-0x594f 023370 nbranch le_send_att_read_by_type_res_not_characteristic ,zero 
-0x5950 023371 arg 2 ,timeup 
-:      023372 le_send_att_read_by_type_response_loop:
-0x5951 023373 call le_att_check_handle_end 
-0x5952 023374 nbranch le_send_att_read_by_type_response_end ,positive 
-0x5953 023375 fetcht 2 ,mem_temp 
-0x5954 023376 call le_att_get_handle_info_from_ptr 
-0x5955 023377 beq 1 ,le_send_att_read_by_type_response_end 
-0x5956 023378 call le_att_same_uuid 
-0x5957 023379 nbranch le_send_att_read_by_type_response_next_handle ,zero 
-0x5958 023380 nbranch le_send_att_read_by_type_res_found_next ,user 
-0x5959 023381 disable user 
-0x595a 023382 arg 20 ,rega 
-0x595b 023383 call le_fifo_malloc_tx_l2cap_gatt 
-0x595c 023384 setarg attop_read_by_type_response 
-0x595d 023385 istore 1 ,contw 
-0x595e 023386 copy contw ,alarm 
-0x595f 023387 increase 1 ,contw 
-0x5960 023389 call le_send_att_read_by_type_write_properties 
-0x5961 023390 call le_att_next_handle 
-0x5962 023391 call le_att_get_handle_info_from_ptr 
-0x5963 023392 call le_send_att_read_by_type_write_uuid 
-0x5964 023393 fetch 1 ,mem_le_cur_uuid_length 
-0x5965 023394 increase 5 ,pdata 
-0x5966 023395 istore 1 ,alarm 
-0x5967 023396 fetch 1 ,mem_le_cur_uuid_length 
-0x5968 023397 beq 16 ,le_send_att_read_by_type_response_end 
-0x5969 023398 increase -1 ,timeup 
-0x596a 023399 branch le_send_att_read_by_type_response_end ,zero 
-:      023400 le_send_att_read_by_type_response_next_handle:
-0x596b 023401 call le_att_next_handle 
-0x596c 023402 branch le_send_att_read_by_type_response_loop 
-:      023403 le_send_att_read_by_type_response_end:
-0x596d 023404 branch le_send_att_error_response_notfound ,user 
-0x596e 023405 branch le_send_auto_len_by_mem 
-:      023407 le_send_att_read_by_type_res_found_next:
-0x596f 023408 call le_store_att_record 
-0x5970 023409 call le_att_next_handle 
-0x5971 023410 call le_att_get_handle_info_from_ptr 
-0x5972 023411 fetch 1 ,mem_le_cur_uuid_length 
-0x5973 023412 beq 16 ,le_send_att_read_by_type_response_end 
-0x5974 023414 call get_contw 
-0x5975 023415 fetch 2 ,mem_temp 
-0x5976 023416 increase -1 ,pdata 
-0x5977 023417 istore 2 ,contw 
-0x5978 023418 call le_write_att_record_common 
-0x5979 023419 call le_send_att_read_by_type_write_uuid 
-0x597a 023420 increase -1 ,timeup 
-0x597b 023421 branch le_send_att_read_by_type_response_end ,zero 
-0x597c 023422 branch le_send_att_read_by_type_response_next_handle 
-:      023425 le_send_att_read_by_type_write_properties:
-0x597d 023426 fetch 2 ,mem_temp 
-0x597e 023427 istore 2 ,contw 
-0x597f 023429 fetch 1 ,mem_le_curr_att_len 
-0x5980 023430 copy pdata ,loopcnt 
-0x5981 023431 call get_contr 
-0x5982 023432 call memcpy_fast 
-0x5983 023433 branch store_contw 
-:      023434 le_send_att_read_by_type_write_uuid:
-0x5984 023435 call get_contw 
-0x5985 023436 fetch 2 ,mem_temp 
-0x5986 023437 istore 2 ,contw 
-0x5987 023438 call store_contw 
-0x5988 023439 fetch 1 ,mem_le_cur_uuid_length 
-0x5989 023440 copy pdata ,loopcnt 
-0x598a 023441 call get_contw 
-0x598b 023442 call get_contr 
-0x598c 023443 isub loopcnt ,contr 
-0x598d 023444 increase -1 ,contr 
-0x598e 023445 call memcpy_fast 
-0x598f 023446 branch store_contw 
-:      023450 le_send_att_read_by_type_res_not_characteristic:
-0x5990 023451 fetcht 2 ,mem_le_search_handle_start 
-0x5991 023452 storet 2 ,mem_temp 
-:      023453 le_send_att_read_by_type_res_not_char_loop:
-0x5992 023454 call le_att_check_handle_end 
-0x5993 023455 nbranch le_send_att_error_response_notfound ,positive 
-0x5994 023456 call le_att_get_handle_info_from_ptr 
-0x5995 023457 beq 1 ,le_send_att_error_response_notfound 
-0x5996 023458 call le_att_same_uuid 
-0x5997 023459 nbranch le_send_att_read_by_type_res_not_char_next ,zero 
-:      023461 le_send_att_read_by_type_res_not_char_common:
-0x5998 023462 arg 20 ,rega 
-0x5999 023463 call le_fifo_malloc_tx_l2cap_gatt 
-0x599a 023464 setarg attop_read_by_type_response 
-0x599b 023465 istore 1 ,contw 
-0x599c 023466 fetch 1 ,mem_le_curr_att_len 
-0x599d 023467 copy pdata ,loopcnt 
-0x599e 023468 increase 2 ,pdata 
-0x599f 023469 istore 1 ,contw 
-0x59a0 023470 fetch 2 ,mem_temp 
-0x59a1 023471 istore 2 ,contw 
-0x59a2 023472 call get_contr 
-0x59a3 023473 call memcpy_fast 
-0x59a4 023474 call store_contw 
-0x59a5 023475 branch le_send_auto_len_by_mem 
-:      023477 le_send_att_read_by_type_res_not_char_next:
-0x59a6 023478 call le_att_next_handle 
-0x59a7 023479 branch le_send_att_read_by_type_res_not_char_loop 
-:      023482 le_send_att_read_by_type_res_device_name:
-0x59a8 023483 arg uuid_chrctr_device_name ,temp 
-0x59a9 023484 call le_att_get_short_uuid_ptr 
-0x59aa 023485 rtn blank 
-0x59ab 023486 increase -5 ,contr 
-0x59ac 023487 ifetch 2 ,contr 
-0x59ad 023488 store 2 ,mem_temp 
-0x59ae 023489 arg 20 ,rega 
-0x59af 023490 call le_fifo_malloc_tx_l2cap_gatt 
-0x59b0 023491 setarg attop_read_by_type_response 
-0x59b1 023492 istore 1 ,contw 
-0x59b2 023493 fetch 1 ,mem_le_name_len 
-0x59b3 023494 copy pdata ,loopcnt 
-0x59b4 023495 increase 2 ,pdata 
-0x59b5 023496 istore 1 ,contw 
-0x59b6 023497 fetch 2 ,mem_temp 
-0x59b7 023498 istore 2 ,contw 
-0x59b8 023499 arg mem_le_name ,contr 
-0x59b9 023500 call memcpy_fast 
-0x59ba 023501 call store_contw 
-0x59bb 023502 branch le_send_auto_len_by_mem 
-:      023506 le_parse_att_read_request:
-0x59bc 023507 fetcht 2 ,mem_le_att_handle 
-0x59bd 023508 fetch 1 ,mem_le_configuration 
-0x59be 023509 bbit1 bit_ble_read_auth ,le_send_att_read_response_check_auth 
-:      023511 le_send_att_read_response:
-0x59bf 023512 call le_att_get_handle_ptr 
-0x59c0 023513 branch le_send_att_error_response_notfound ,blank 
-0x59c1 023514 increase -2 ,contr 
-0x59c2 023515 ifetch 2 ,contr 
-0x59c3 023516 arg uuid_chrctr_device_name ,temp 
-0x59c4 023517 isub temp ,null 
-0x59c5 023518 branch le_send_device_name ,zero 
-0x59c6 023519 ifetch 1 ,contr 
-0x59c7 023520 sub pdata ,22 ,null 
-0x59c8 023521 branch le_send_att_read_response_less ,positive 
-0x59c9 023522 force 22 ,pdata 
-:      023523 le_send_att_read_response_less:
-0x59ca 023524 copy pdata ,regc 
-0x59cb 023525 call store_contr 
-0x59cc 023526 add regc ,1 ,rega 
-0x59cd 023527 call le_fifo_malloc_tx_l2cap_gatt 
-0x59ce 023528 setarg attop_read_response 
-0x59cf 023529 istore 1 ,contw 
-0x59d0 023530 copy regc ,loopcnt 
-0x59d1 023531 call get_contr 
-0x59d2 023532 branch memcpy 
-:      023534 le_send_device_name:
-0x59d3 023535 call store_contr 
-0x59d4 023536 fetch 1 ,mem_le_name_len 
-0x59d5 023537 add pdata ,1 ,rega 
-0x59d6 023538 call le_fifo_malloc_tx_l2cap_gatt 
-0x59d7 023539 setarg attop_read_response 
-0x59d8 023540 istore 1 ,contw 
-0x59d9 023541 fetch 1 ,mem_le_name_len 
-0x59da 023542 copy pdata ,loopcnt 
-0x59db 023543 arg mem_le_name ,contr 
-0x59dc 023544 branch memcpy 
-:      023547 le_send_att_read_response_check_auth:
-0x59dd 023548 fetch 2 ,mem_le_pairing_handle 
-0x59de 023549 isub temp ,null 
-0x59df 023550 nbranch le_send_att_read_response ,zero 
-0x59e0 023552 call le_check_encrypt_state 
-0x59e1 023553 nbranch le_send_att_read_response ,user 
-0x59e2 023554 jam att_err_insufficient_authentication ,mem_le_err_code 
-0x59e3 023555 branch le_send_att_error_response 
-:      023558 le_parse_att_read_blob_request:
-0x59e4 023559 ifetch 2 ,contr 
-0x59e5 023560 store 2 ,mem_le_att_offset 
-:      023561 le_send_att_read_blob_response:
-0x59e6 023562 arg 20 ,rega 
-0x59e7 023563 call le_fifo_malloc_tx_l2cap_gatt 
-0x59e8 023564 setarg attop_read_blob_response 
-0x59e9 023565 istore 1 ,contw 
-0x59ea 023566 fetch 2 ,mem_le_att_offset 
-0x59eb 023567 iforce rega 
-0x59ec 023568 fetcht 2 ,mem_le_att_handle 
-0x59ed 023569 call le_att_get_handle_ptr 
-0x59ee 023570 branch le_send_att_error_response_notfound ,blank 
-0x59ef 023571 ifetch 1 ,contr 
-0x59f0 023572 isub rega ,loopcnt 
-0x59f1 023573 nbranch le_send_att_error_response_notfound ,positive 
-0x59f2 023574 sub loopcnt ,22 ,null 
-0x59f3 023575 branch le_send_att_read_blob_response_less ,positive 
-0x59f4 023576 force 22 ,loopcnt 
-:      023577 le_send_att_read_blob_response_less:
-0x59f5 023578 deposit rega 
-0x59f6 023579 iadd contr ,contr 
-0x59f7 023580 call memcpy_fast 
-0x59f8 023581 call store_contw 
-0x59f9 023582 branch le_send_auto_len_by_mem 
-:      023585 le_parse_att_read_by_group_type_request:
-0x59fa 023586 call le_get_search_handle_start_end_common 
-0x59fb 023587 call le_get_search_att_type 
-0x59fc 023588 branch le_send_att_read_by_group_type_response 
-:      023593 le_send_att_read_by_group_type_response:
-0x59fd 023594 arg 2 ,timeup 
-0x59fe 023595 fetcht 2 ,mem_le_search_handle_start 
-0x59ff 023599 storet 2 ,mem_temp 
-0x5a00 023600 call le_init_attlist_search 
-0x5a01 023601 call le_att_get_handle_ptr2 
-0x5a02 023602 increase -2 ,contr 
-0x5a03 023603 copy contr ,pdata 
-0x5a04 023604 store 2 ,mem_le_cur_attlist_start_ptr 
-:      023605 le_send_att_read_by_group_type_response_loop:
-0x5a05 023606 call le_att_check_handle_end 
-0x5a06 023607 nbranch le_send_att_read_by_group_type_end0 ,positive 
-0x5a07 023608 fetcht 2 ,mem_temp 
-0x5a08 023609 call le_att_get_handle_info_from_ptr 
-0x5a09 023610 beq 1 ,le_send_att_read_by_group_type_end1 
-0x5a0a 023612 call le_att_same_type 
-0x5a0b 023613 nbranch le_send_att_read_by_group_type_next_handle ,zero 
-0x5a0c 023614 copy timeup ,pdata 
-0x5a0d 023615 beq 0 ,le_send_att_read_by_group_type_end1 
-0x5a0e 023616 nbranch le_send_att_read_by_group_type_store_write_record ,user 
-0x5a0f 023617 disable user 
-0x5a10 023619 arg 20 ,rega 
-0x5a11 023620 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a12 023621 setarg attop_read_by_group_type_response 
-0x5a13 023622 istore 1 ,contw 
-0x5a14 023623 fetch 1 ,mem_le_curr_att_len 
-0x5a15 023624 increase 4 ,pdata 
-0x5a16 023625 istore 1 ,contw 
-0x5a17 023626 call store_contw 
-0x5a18 023627 branch le_send_att_read_by_group_type_store_record 
-:      023628 le_send_att_read_by_group_type_store_write_record:
-0x5a19 023629 fetch 1 ,mem_le_curr_att_len 
-0x5a1a 023630 beq 16 ,le_send_att_read_by_group_type_end1 
-0x5a1b 023631 fetch 2 ,mem_temp 
-0x5a1c 023632 increase -1 ,pdata 
-0x5a1d 023633 store 2 ,mem_le_cur_handle_end 
-0x5a1e 023634 call le_write_att_record 
-:      023635 le_send_att_read_by_group_type_store_record:
-0x5a1f 023636 fetch 2 ,mem_temp 
-0x5a20 023637 store 2 ,mem_le_cur_handle_start 
-0x5a21 023638 call le_store_att_record 
-0x5a22 023639 increase -1 ,timeup 
-:      023641 le_send_att_read_by_group_type_next_handle:
-0x5a23 023642 call le_att_next_handle 
-0x5a24 023643 branch le_send_att_read_by_group_type_response_loop 
-:      023645 le_send_att_read_by_group_type_end0:
-0x5a25 023646 fetch 2 ,mem_temp 
-0x5a26 023647 store 2 ,mem_le_cur_handle_end 
-0x5a27 023648 branch le_send_att_read_by_group_type_end_common 
-:      023649 le_send_att_read_by_group_type_end1:
-0x5a28 023650 fetch 2 ,mem_temp 
-0x5a29 023651 increase -1 ,pdata 
-0x5a2a 023652 store 2 ,mem_le_cur_handle_end 
-0x5a2b 023653 branch le_send_att_read_by_group_type_end_common 
-:      023654 le_send_att_read_by_group_type_end_common:
-0x5a2c 023655 branch le_send_att_error_response_notfound ,user 
-0x5a2d 023656 call le_write_att_record 
-0x5a2e 023657 branch le_send_auto_len_by_mem 
-:      023662 le_parse_att_write_request:
-0x5a2f 023663 copy contr ,rega 
-0x5a30 023664 fetch 2 ,mem_le_l2cap_size 
-0x5a31 023665 add pdata ,-3 ,regb 
-0x5a32 023666 call le_writeatt_cb 
-:      023667 le_send_att_write_response_check_auth:
-0x5a33 023668 fetch 1 ,mem_le_configuration 
-0x5a34 023669 bbit0 bit_ble_write_auth ,le_send_att_write_response 
-0x5a35 023671 fetcht 2 ,mem_le_att_handle 
-0x5a36 023672 fetch 2 ,mem_le_pairing_handle 
-0x5a37 023673 isub temp ,null 
-0x5a38 023674 nbranch le_send_att_write_response ,zero 
-0x5a39 023675 call le_check_encrypt_state 
-0x5a3a 023676 nbranch le_send_att_write_response ,user 
-0x5a3b 023677 jam att_err_insufficient_authentication ,mem_le_err_code 
-0x5a3c 023678 branch le_send_att_error_response 
-:      023680 le_send_att_write_response:
-0x5a3d 023681 force 1 ,rega 
-0x5a3e 023682 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a3f 023683 setarg attop_write_response 
-0x5a40 023684 istore 1 ,contw 
-0x5a41 023685 rtn 
-:      023687 le_check_encrypt_state:
-0x5a42 023688 call disable_user 
-0x5a43 023689 fetch 1 ,mem_le_pairing_mode 
-0x5a44 023690 rtneq le_pairing_mode_none 
-0x5a45 023691 fetch 1 ,mem_context 
-0x5a46 023692 rtnbit1 lestate_encryption 
-0x5a47 023693 branch enable_user 
-:      023696 le_parse_att_prepare_write_request:
-0x5a48 023697 add contr ,2 ,rega 
-0x5a49 023698 fetch 2 ,mem_le_l2cap_size 
-0x5a4a 023699 add pdata ,-5 ,regb 
-0x5a4b 023700 call le_writeatt_cb 
-0x5a4c 023701 branch le_send_att_prepare_write_response 
-:      023704 le_send_att_prepare_write_response:
-0x5a4d 023705 fetch 2 ,mem_le_l2cap_size 
-0x5a4e 023706 copy pdata ,rega 
-0x5a4f 023707 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a50 023708 setarg attop_prepare_write_response 
-0x5a51 023709 istore 1 ,contw 
-0x5a52 023710 fetch 2 ,mem_le_att_handle 
-0x5a53 023711 istore 2 ,contw 
-0x5a54 023712 fetch 2 ,mem_le_l2cap_size 
-0x5a55 023713 add pdata ,-5 ,loopcnt 
-0x5a56 023714 fetch 2 ,mem_le_payload_ptr 
-0x5a57 023715 add pdata ,7 ,contr 
-0x5a58 023716 ifetch 2 ,contr 
-0x5a59 023717 istore 2 ,contw 
-0x5a5a 023718 branch memcpy_fast 
-:      023722 le_parse_att_execute_write_request:
-:      023724 le_send_att_execute_write_response:
-0x5a5b 023725 force 1 ,rega 
-0x5a5c 023726 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a5d 023727 setarg attop_execute_write_response 
-0x5a5e 023728 istore 1 ,contw 
-0x5a5f 023729 rtn 
-:      023733 le_parse_att_write_command:
-0x5a60 023734 copy contr ,rega 
-0x5a61 023735 fetch 2 ,mem_le_l2cap_size 
-0x5a62 023736 add pdata ,-3 ,regb 
-0x5a63 023737 branch le_writeatt_cb 
-:      023742 le_att_malloc_tx_notify:
-0x5a64 023743 copy temp ,regc 
-0x5a65 023744 increase 3 ,rega 
-0x5a66 023745 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a67 023746 increase -3 ,rega 
-0x5a68 023747 setarg attop_handle_value_notification 
-0x5a69 023748 istore 1 ,contw 
-0x5a6a 023749 copy regc ,temp 
-0x5a6b 023750 istoret 2 ,contw 
-0x5a6c 023751 rtn 
-:      023754 le_att_malloc_tx_indication:
-0x5a6d 023755 copy temp ,regc 
-0x5a6e 023756 increase 3 ,rega 
-0x5a6f 023757 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a70 023758 increase -3 ,rega 
-0x5a71 023759 setarg attop_handle_value_indication 
-0x5a72 023760 istore 1 ,contw 
-0x5a73 023761 copy regc ,temp 
-0x5a74 023762 istoret 2 ,contw 
-0x5a75 023763 rtn 
-:      023768 le_send_att_error_response_notfound:
-0x5a76 023769 jam att_err_attribute_not_found ,mem_le_err_code 
-:      023770 le_send_att_error_response:
-0x5a77 023771 force 5 ,rega 
-0x5a78 023772 call le_fifo_malloc_tx_l2cap_gatt 
-0x5a79 023773 setarg attop_error_response 
-0x5a7a 023774 istore 1 ,contw 
-0x5a7b 023775 fetch 1 ,mem_le_att_opcode 
-0x5a7c 023776 istore 1 ,contw 
-0x5a7d 023777 fetch 2 ,mem_le_att_handle 
-0x5a7e 023778 istore 2 ,contw 
-0x5a7f 023779 fetch 1 ,mem_le_err_code 
-0x5a80 023780 istore 1 ,contw 
-0x5a81 023781 rtn 
-:      023784 le_fifo_malloc_tx_l2cap_gatt:
-0x5a82 023785 force le_l2cap_cid_att ,regb 
-0x5a83 023786 branch le_fifo_malloc_tx_l2cap 
-:      023789 le_att_next_handle:
-0x5a84 023790 fetcht 2 ,mem_temp 
-0x5a85 023791 increase 1 ,temp 
-0x5a86 023792 storet 2 ,mem_temp 
-0x5a87 023793 rtn 
-:      023795 le_att_check_handle_end:
-0x5a88 023796 fetcht 2 ,mem_temp 
-0x5a89 023797 fetch 2 ,mem_le_search_handle_end 
-0x5a8a 023798 isub temp ,null 
-0x5a8b 023799 rtn 
-:      023802 le_att_same_type:
-0x5a8c 023803 fetcht 1 ,mem_le_search_att_type_length 
-0x5a8d 023804 arg mem_le_search_att_type ,rega 
-:      023805 le_att_check_same_common:
-0x5a8e 023806 fetch 1 ,mem_le_cur_uuid_length 
-0x5a8f 023807 copy pdata ,loopcnt 
-0x5a90 023808 isub temp ,null 
-0x5a91 023809 nrtn zero 
-0x5a92 023810 arg mem_le_cur_uuid ,regb 
-0x5a93 023811 branch string_compare 
-:      023813 le_att_same_uuid:
-0x5a94 023814 fetcht 1 ,mem_le_search_uuid_length 
-0x5a95 023815 arg mem_le_search_uuid ,rega 
-0x5a96 023816 branch le_att_check_same_common 
-:      023819 le_store_att_record:
-0x5a97 023820 fetch 1 ,mem_le_curr_att_len 
-0x5a98 023821 store 1 ,mem_tmp_buffer 
-0x5a99 023822 copy pdata ,loopcnt 
-0x5a9a 023823 call get_contr 
-0x5a9b 023824 branch memcpy_fast 
-:      023827 le_write_att_record:
-0x5a9c 023828 call get_contw 
-0x5a9d 023829 fetch 2 ,mem_le_cur_handle_start 
-0x5a9e 023830 istore 2 ,contw 
-0x5a9f 023831 fetch 2 ,mem_le_cur_handle_end 
-0x5aa0 023832 istore 2 ,contw 
-:      023833 le_write_att_record_common:
-0x5aa1 023834 fetch 1 ,mem_tmp_buffer 
-0x5aa2 023835 copy pdata ,loopcnt 
-0x5aa3 023836 call memcpy_fast 
-0x5aa4 023837 branch store_contw 
-:      023841 le_send_auto_len_by_mem:
-0x5aa5 023842 call get_contw 
-0x5aa6 023843 call le_fifo_get_last_att_ptr 
-0x5aa7 023844 copy contw ,pdata 
-0x5aa8 023845 isub contr ,rega 
-0x5aa9 023846 call le_fifo_get_last_l2cap_ptr 
-0x5aaa 023847 copy rega ,pdata 
-0x5aab 023848 istore 2 ,contr 
-0x5aac 023849 increase 4 ,rega 
-0x5aad 023850 call le_fifo_get_last_tx_ptr 
-0x5aae 023851 copy rega ,pdata 
-0x5aaf 023852 istore 1 ,contr 
-0x5ab0 023853 rtn 
-:      023856 le_get_search_handle_start_end_common:
-0x5ab1 023857 rshift8 pdata ,pdata 
-0x5ab2 023858 store 2 ,mem_le_search_handle_start 
-0x5ab3 023859 ifetch 2 ,contr 
-0x5ab4 023860 store 2 ,mem_le_search_handle_end 
-0x5ab5 023861 rtn 
-:      023866 le_parse_signaling:
-0x5ab6 023867 ifetch 1 ,contr 
-0x5ab7 023868 ifetcht 1 ,contr 
-0x5ab8 023869 ifetcht 2 ,contr 
-0x5ab9 023870 beq l2cap_connection_parameter_update_response ,le_l2cap_parse_conn_parameter_update_rsp 
-0x5aba 023871 rtn 
-:      023872 le_l2cap_parse_conn_parameter_update_rsp:
-0x5abb 023873 ifetch 2 ,contr 
-0x5abc 023874 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
-0x5abd 023875 jam bt_evt_le_parse_conn_papa_update_rsp ,mem_fifo_temp 
-0x5abe 023876 branch ui_ipc_send_event 
-:      023882 le_l2cap_tx_update_req:
-0x5abf 023883 arg 0x0c ,rega 
-0x5ac0 023884 arg l2cap_connection_parameter_update_request ,regc 
-0x5ac1 023885 call le_fifo_malloc_tx_l2cap_signaling 
-0x5ac2 023886 setarg 0x08 
-0x5ac3 023887 istore 2 ,contw 
-0x5ac4 023888 fetch 8 ,mem_le_interval_min 
-0x5ac5 023889 istore 8 ,contw 
-0x5ac6 023890 rtn 
-:      023894 le_fifo_malloc_tx_l2cap_signaling:
-0x5ac7 023895 call le_l2cap_update_signaling_identifier 
-0x5ac8 023896 arg le_l2cap_cid_signal ,regb 
-0x5ac9 023897 call le_fifo_malloc_tx_l2cap 
-0x5aca 023898 copy regc ,pdata 
-0x5acb 023899 istore 1 ,contw 
-0x5acc 023900 fetch 1 ,mem_le_signaling_identifier 
-0x5acd 023901 istore 1 ,contw 
-0x5ace 023902 rtn 
-:      023905 le_l2cap_update_signaling_identifier:
-0x5acf 023906 fetch 1 ,mem_le_signaling_identifier 
-0x5ad0 023908 pincrease 1 
-0x5ad1 023909 store 1 ,mem_le_signaling_identifier 
-0x5ad2 023910 rtnne 0 
-:      023912 le_l2cap_reset_signaling_identifier:
-0x5ad3 023913 jam 1 ,mem_le_signaling_identifier 
-0x5ad4 023914 rtn 
-:      023919 le_pairing_mode_init:
-0x5ad5 023920 fetch 1 ,mem_le_pairing_mode 
-0x5ad6 023921 beq le_pairing_mode_none ,le_set_no_pairing 
-0x5ad7 023922 beq le_pairing_mode_lagacy_justwork ,le_set_pairing_mode_lagacy_just_work 
-0x5ad8 023923 beq le_pairing_mode_lagacy_passkey ,le_set_pairing_mode_lagacy_passkey 
-0x5ad9 023924 beq le_pairing_mode_secure_connect_justwork ,le_set_pairing_mode_secure_justwork 
-0x5ada 023925 beq le_pairing_mode_secure_connect_numeric ,le_set_pairing_mode_secure_numeric 
-0x5adb 023926 beq le_pairing_mode_secure_connect_passkey ,le_set_pairing_mode_secure_passkey 
-0x5adc 023927 rtn 
-:      023929 le_set_pairing_mode_secure_justwork:
-0x5add 023930 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
-0x5ade 023931 branch le_set_noinputnooutput 
-:      023932 le_set_pairing_mode_secure_numeric:
-0x5adf 023933 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
-0x5ae0 023934 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
-0x5ae1 023935 rtn 
-:      023936 le_set_pairing_mode_secure_passkey:
-0x5ae2 023937 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
-0x5ae3 023938 branch le_set_displayonly 
-:      023939 le_set_no_pairing:
-0x5ae4 023940 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
-:      023941 le_set_noinputnooutput:
-0x5ae5 023942 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
-0x5ae6 023943 rtn 
-:      023944 le_set_pairing_mode_lagacy_just_work:
-0x5ae7 023945 jam flag_le_bonding_mitm ,mem_le_pres_auth 
-0x5ae8 023946 branch le_set_noinputnooutput 
-:      023947 le_set_pairing_mode_lagacy_passkey:
-0x5ae9 023948 jam flag_le_bonding_mitm ,mem_le_pres_auth 
-:      023949 le_set_displayonly:
-0x5aea 023950 jam flag_iocap_displayonly ,mem_le_pres_iocap 
-0x5aeb 023951 rtn 
-:      023954 le_secure_connection_enable:
-0x5aec 023955 fetch 1 ,mem_le_pres_auth 
-0x5aed 023956 set1 le_auth_secure_connection_pairing_bit ,pdata 
-0x5aee 023957 store 1 ,mem_le_pres_auth 
-0x5aef 023958 rtn 
-:      023959 le_secure_connection_disable:
-0x5af0 023960 fetch 1 ,mem_le_pres_auth 
-0x5af1 023961 set0 le_auth_secure_connection_pairing_bit ,pdata 
-0x5af2 023962 store 1 ,mem_le_pres_auth 
-0x5af3 023963 rtn 
-:      023965 le_parse_smp:
-0x5af4 023966 ifetch 1 ,contr 
-0x5af5 023967 beq smp_pairing_request ,le_parse_smp_pairing_request 
-0x5af6 023969 beq smp_pairing_confirm ,le_parse_smp_pairing_confirm 
-0x5af7 023970 beq smp_pairing_random ,le_parse_smp_pairing_random 
-0x5af8 023971 beq smp_pairing_failed ,le_parse_smp_pairing_failed 
-0x5af9 023972 beq smp_encryption_information ,le_parse_smp_encryption_information 
-0x5afa 023973 beq smp_master_identification ,le_parse_smp_master_identification 
-0x5afb 023974 beq smp_identity_information ,le_parse_smp_identity_information 
-0x5afc 023975 beq smp_identity_address_information ,le_parse_smp_identity_address_information 
-0x5afd 023976 beq smp_signing_information ,le_parse_smp_signing_information 
-0x5afe 023977 beq smp_security_request ,le_parse_smp_security_request 
-0x5aff 023978 beq smp_pairing_public_key ,le_parse_smp_public_key 
-0x5b00 023979 beq smp_pairing_dhkey_check ,le_parse_smp_dhkey_check 
-0x5b01 023980 rtn 
-:      023984 le_send_smp_security_request:
-0x5b02 023985 force 2 ,rega 
-0x5b03 023986 call le_fifo_malloc_tx_l2cap_smp 
-0x5b04 023987 setarg smp_security_request 
-0x5b05 023988 istore 1 ,contw 
-0x5b06 023989 fetch 1 ,mem_le_pres_auth 
-0x5b07 023990 istore 1 ,contw 
-0x5b08 023991 rtn 
-:      023993 le_parse_smp_pairing_request:
-0x5b09 023994 store 1 ,mem_le_preq 
-0x5b0a 023995 ifetch 6 ,contr 
-0x5b0b 023996 istore 6 ,contw 
-0x5b0c 023997 fetch 1 ,mem_le_pairing_mode 
-0x5b0d 023998 beq le_pairing_mode_none ,le_smp_pairing_fail_reason_not_support_pairing 
-0x5b0e 023999 call le_send_smp_pairing_response 
-0x5b0f 024000 call le_check_master_support_secure_connect 
-0x5b10 024001 jam flag_le_pairing_rcv_pairing_req ,mem_le_pairing_state 
-0x5b11 024002 fetch 1 ,mem_le_preq_iocap 
-0x5b12 024003 beq flag_iocap_displayonly ,le_set_tk_0 
-0x5b13 024004 beq flag_iocap_displayyesno ,le_set_tk_0 
-0x5b14 024005 beq flag_iocap_noinputnooutput ,le_set_tk_0 
-0x5b15 024006 fetch 1 ,mem_le_pairing_mode 
-0x5b16 024007 beq le_pairing_mode_lagacy_passkey ,le_parse_smp_pairing_req_passkey 
-0x5b17 024008 rtneq le_pairing_mode_secure_connect_passkey 
-:      024009 le_set_tk_0:
-0x5b18 024010 arg 0 ,pdata 
-0x5b19 024011 store 4 ,mem_le_tk 
-0x5b1a 024012 rtn 
-:      024014 le_parse_smp_pairing_req_passkey:
-0x5b1b 024015 fetch 1 ,mem_le_configuration 
-0x5b1c 024016 bbit1 bit_ble_passkey_fixed_key ,le_parse_smp_pairing_req_fixed_passkey 
-:      024017 le_genernate_tk:
-0x5b1d 024018 arg mem_le_tk ,rega 
-0x5b1e 024019 copy rega ,contw 
-0x5b1f 024020 arg 3 ,loopcnt 
-0x5b20 024021 call generate_random_loop 
-0x5b21 024022 fetch 2 ,mem_le_tk + 2 
-0x5b22 024023 and_into 0x7 ,pdata 
-0x5b23 024024 store 2 ,mem_le_tk + 2 
-:      024025 le_parse_smp_pairing_req_fixed_passkey:
-0x5b24 024026 jam bt_evt_le_tk_generate ,mem_fifo_temp 
-0x5b25 024027 branch ui_ipc_send_event 
-:      024029 le_check_master_support_secure_connect:
-0x5b26 024030 fetch 1 ,mem_le_preq_auth 
-0x5b27 024031 rtnbit1 le_auth_secure_connection_pairing_bit 
-0x5b28 024032 fetch 1 ,mem_le_pairing_mode 
-0x5b29 024033 rtnbit0 le_pairing_mode_secure_connect_bit 
-0x5b2a 024034 branch app_ble_disconnect 
-:      024036 le_send_smp_pairing_response:
-0x5b2b 024037 force 7 ,rega 
-0x5b2c 024038 call le_fifo_malloc_tx_l2cap_smp 
-0x5b2d 024039 fetch 7 ,mem_le_pres 
-0x5b2e 024040 istore 7 ,contw 
-0x5b2f 024041 rtn 
-:      024044 le_parse_smp_pairing_confirm:
-0x5b30 024045 copy contr ,rega 
-0x5b31 024046 fetch 1 ,mem_le_pairing_mode 
-0x5b32 024047 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_confirm_secure_passkey 
-0x5b33 024048 copy rega ,contr 
-0x5b34 024049 arg mem_le_rconfirm ,contw 
-0x5b35 024050 call memcpy16 
-0x5b36 024051 branch le_send_smp_pairing_confirm 
-:      024052 le_parse_smp_pairing_confirm_secure_passkey:
-0x5b37 024053 copy rega ,contr 
-0x5b38 024054 arg mem_le_rconfirm ,contw 
-0x5b39 024055 call memcpy16 
-0x5b3a 024056 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5b3b 024057 jam le_sc_stat_passkey_wait_confirm ,mem_le_secure_connect_state 
-0x5b3c 024058 rtn 
-:      024061 le_send_smp_pairing_confirm:
-0x5b3d 024062 fetch 1 ,mem_le_pairing_mode 
-0x5b3e 024063 bbit1 le_pairing_mode_secure_connect_bit ,le_send_smp_pairing_confirm_sc 
-0x5b3f 024064 call generate_confirm 
-0x5b40 024065 force 17 ,rega 
-0x5b41 024066 call le_fifo_malloc_tx_l2cap_smp 
-0x5b42 024067 setarg smp_pairing_confirm 
-0x5b43 024068 istore 1 ,contw 
-0x5b44 024069 branch store_aes_result 
-:      024072 le_send_smp_pairing_confirm_sc:
-0x5b45 024073 arg mem_le_srand ,contw 
-0x5b46 024074 call generate_random 
-0x5b47 024075 call function_f4_cb 
-0x5b48 024076 force 17 ,rega 
-0x5b49 024077 call le_fifo_malloc_tx_l2cap_smp 
-0x5b4a 024078 setarg smp_pairing_confirm 
-0x5b4b 024079 istore 1 ,contw 
-0x5b4c 024080 branch load_inverse_result 
-:      024084 le_parse_smp_pairing_random:
-0x5b4d 024085 copy contr ,rega 
-0x5b4e 024086 fetch 1 ,mem_le_pairing_mode 
-0x5b4f 024087 bbit1 le_pairing_mode_secure_connect_bit ,le_parse_smp_pairing_random_sc 
-0x5b50 024088 copy rega ,contr 
-0x5b51 024089 call authenticate_rconfirm 
-0x5b52 024090 branch le_parse_smp_pairing_random_success ,zero 
-:      024091 le_send_pairing_confirm_value_failed:
-0x5b53 024092 jam pairing_failed_confirm_value_failed ,mem_le_ll_pairing_fail_reason 
-:      024093 le_send_pairing_failed:
-0x5b54 024094 force 2 ,rega 
-0x5b55 024095 call le_fifo_malloc_tx_l2cap_smp 
-0x5b56 024096 setarg smp_pairing_failed 
-0x5b57 024097 istore 1 ,contw 
-0x5b58 024098 fetch 1 ,mem_le_ll_pairing_fail_reason 
-0x5b59 024099 istore 1 ,contw 
-:      024100 le_parse_smp_pairing_failed:
-0x5b5a 024101 force smp_pairing_timer ,queue 
-0x5b5b 024102 call timer_stop 
-0x5b5c 024103 jam flag_le_pairing_null ,mem_le_pairing_state 
-0x5b5d 024104 jam bt_evt_le_pairing_fail ,mem_fifo_temp 
-0x5b5e 024105 branch ui_ipc_send_event 
-:      024107 le_smp_pairing_fail_reason_not_support_pairing:
-0x5b5f 024108 jam pairing_failed_pairing_not_supported ,mem_le_ll_pairing_fail_reason 
-0x5b60 024109 branch le_send_pairing_failed 
-:      024112 le_parse_smp_pairing_random_sc:
-0x5b61 024113 arg mem_le_mrand ,contw 
-0x5b62 024114 copy rega ,contr 
-0x5b63 024115 call memcpy16 
-0x5b64 024116 fetch 1 ,mem_le_pairing_mode 
-0x5b65 024117 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_random_sc_passkey 
-0x5b66 024118 call function_g2 
-0x5b67 024121 call le_send_smp_pairing_random 
-0x5b68 024122 fetch 1 ,mem_le_pairing_mode 
-0x5b69 024123 rtnne le_pairing_mode_secure_connect_numeric 
-0x5b6a 024124 jam bt_evt_le_gkey_generate ,mem_fifo_temp 
-0x5b6b 024125 branch ui_ipc_send_event 
-:      024127 le_parse_smp_pairing_random_sc_passkey:
-0x5b6c 024128 call function_f4_ca 
-0x5b6d 024129 arg mem_aes_cmac_temp ,contw 
-0x5b6e 024130 call load_inverse_result 
-0x5b6f 024131 arg mem_aes_cmac_temp ,rega 
-0x5b70 024132 arg mem_le_rconfirm ,regb 
-0x5b71 024133 arg 16 ,loopcnt 
-0x5b72 024134 call string_compare 
-0x5b73 024135 nbranch le_send_pairing_confirm_value_failed ,zero 
-0x5b74 024136 branch le_send_smp_pairing_random 
-:      024138 le_parse_smp_pairing_random_success:
-0x5b75 024139 call generate_stk 
-0x5b76 024140 jam bt_evt_le_pairing_success ,mem_fifo_temp 
-0x5b77 024141 call ui_ipc_send_event 
-0x5b78 024142 jam 1 ,mem_ltk_exists 
-0x5b79 024143 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
-:      024145 le_send_smp_pairing_random:
-0x5b7a 024146 force 17 ,rega 
-0x5b7b 024147 call le_fifo_malloc_tx_l2cap_smp 
-0x5b7c 024148 setarg smp_pairing_random 
-0x5b7d 024149 istore 1 ,contw 
-0x5b7e 024150 arg mem_le_srand ,contr 
-0x5b7f 024151 branch memcpy16 
-:      024153 le_parse_smp_encryption_information:
-0x5b80 024154 arg mem_le_peer_ltk ,contw 
-0x5b81 024155 branch memcpy16 
-:      024157 le_send_smp_encryption_information:
-0x5b82 024158 force 17 ,rega 
-0x5b83 024159 call le_fifo_malloc_tx_l2cap_smp 
-0x5b84 024160 setarg smp_encryption_information 
-0x5b85 024161 istore 1 ,contw 
-0x5b86 024162 fetch 1 ,mem_le_configuration 
-0x5b87 024163 bbit1 bit_ble_pairing_fixed_ltk ,le_send_fixed_ltk 
-0x5b88 024164 arg mem_le_ltk ,contr 
-0x5b89 024165 branch memcpy16 
-:      024167 le_send_fixed_ltk:
-0x5b8a 024168 arg mem_le_fixed_ltk ,contr 
-0x5b8b 024169 branch memcpy16 
-:      024172 le_send_smp_master_identification:
-0x5b8c 024173 arg mem_le_ediv ,contw 
-0x5b8d 024174 force 10 ,loopcnt 
-0x5b8e 024175 call generate_random_loop 
-0x5b8f 024176 force 11 ,rega 
-0x5b90 024177 call le_fifo_malloc_tx_l2cap_smp 
-0x5b91 024178 setarg smp_master_identification 
-0x5b92 024179 istore 1 ,contw 
-0x5b93 024180 fetch 2 ,mem_le_ediv 
-0x5b94 024181 istore 2 ,contw 
-0x5b95 024182 fetch 8 ,mem_le_rand 
-0x5b96 024183 istore 8 ,contw 
-0x5b97 024184 rtn 
-:      024186 le_send_smp_identity_information:
-0x5b98 024187 force 17 ,rega 
-0x5b99 024188 call le_fifo_malloc_tx_l2cap_smp 
-0x5b9a 024189 setarg smp_identity_information 
-0x5b9b 024190 istore 1 ,contw 
-0x5b9c 024191 setarg 0 
-0x5b9d 024192 istore 8 ,contw 
-0x5b9e 024193 istore 8 ,contw 
-0x5b9f 024194 rtn 
-:      024197 le_send_smp_identity_address_information:
-0x5ba0 024198 force 8 ,rega 
-0x5ba1 024199 call le_fifo_malloc_tx_l2cap_smp 
-0x5ba2 024200 setarg smp_identity_address_information 
-0x5ba3 024201 istore 1 ,contw 
-0x5ba4 024202 fetch 1 ,mem_le_conn_own_addr_type 
-0x5ba5 024203 istore 1 ,contw 
-0x5ba6 024204 fetch 6 ,mem_le_lap 
-0x5ba7 024205 istore 6 ,contw 
-0x5ba8 024206 rtn 
-:      024209 le_send_pairing_fail_unspecified_reason:
-0x5ba9 024210 jam pairing_failed_unspecified_reason ,mem_le_ll_pairing_fail_reason 
-0x5baa 024211 branch le_send_pairing_failed 
-:      024213 le_check_init_key_distribution:
-0x5bab 024214 fetch 1 ,mem_le_pres_init_key_distribution 
-0x5bac 024215 fetcht 1 ,mem_le_pres_init_key_distribution 
-0x5bad 024216 iand temp ,pdata 
-0x5bae 024217 rtn 
-:      024219 le_parse_smp_identity_information:
-0x5baf 024220 arg mem_le_irk ,contw 
-0x5bb0 024221 call memcpy16 
-0x5bb1 024222 call le_check_init_key_distribution 
-0x5bb2 024223 isolate0 le_initator_irk_bit ,pdata 
-0x5bb3 024224 branch le_send_pairing_fail_unspecified_reason ,true 
-0x5bb4 024225 fetch 1 ,mem_device_option 
-0x5bb5 024226 rtnne dvc_op_module 
-0x5bb6 024227 call le_check_master_addr_type 
-0x5bb7 024228 nrtn user 
-0x5bb8 024229 branch app_ble_store_reconn_info 
-:      024232 le_check_master_addr_type:
-0x5bb9 024233 call disable_user 
-0x5bba 024234 fetch 1 ,mem_le_conn_peer_addr_type 
-0x5bbb 024235 rtneq master_public_addr 
-0x5bbc 024236 fetch 1 ,mem_le_plap + 5 
-0x5bbd 024237 compare 0xc0 ,pdata ,0xc0 
-0x5bbe 024238 rtn true 
-0x5bbf 024239 branch enable_user 
-:      024241 le_parse_smp_identity_address_information:
-0x5bc0 024242 call le_check_init_key_distribution 
-0x5bc1 024243 isolate0 le_initator_irk_bit ,pdata 
-0x5bc2 024244 branch le_send_pairing_fail_unspecified_reason ,true 
-0x5bc3 024245 rtn 
-:      024247 le_parse_smp_master_identification:
-:      024248 le_parse_smp_signing_information:
-:      024249 le_parse_smp_security_request:
-0x5bc4 024250 rtn 
-:      024252 le_parse_smp_public_key:
-0x5bc5 024253 arg mem_le_pubkey_remote_x_256 ,contw 
-0x5bc6 024254 call memcpy64 
-0x5bc7 024255 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5bc8 024256 jam le_sc_stat_receive_public_key ,mem_le_secure_connect_state 
-0x5bc9 024257 rtn 
-:      024259 le_parse_smp_dhkey_check:
-0x5bca 024260 arg mem_sp_confirm_remote ,contw 
-0x5bcb 024261 call memcpy16 
-0x5bcc 024262 jam le_sc_stat_receive_dhkey ,mem_le_secure_connect_state 
-0x5bcd 024263 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5bce 024264 rtn 
-:      024266 le_send_smp_pairing_public_key:
-0x5bcf 024267 force 65 ,rega 
-0x5bd0 024268 call le_fifo_malloc_tx_l2cap_smp 
-0x5bd1 024269 setarg smp_pairing_public_key 
-0x5bd2 024270 istore 1 ,contw 
-0x5bd3 024271 arg mem_le_pubkey_local_x_256 ,contr 
-0x5bd4 024272 branch memcpy64 
-:      024274 le_send_smp_pairing_dhkey_check:
-0x5bd5 024275 call function_f6_eb 
-0x5bd6 024276 force 17 ,rega 
-0x5bd7 024277 call le_fifo_malloc_tx_l2cap_smp 
-0x5bd8 024278 setarg smp_pairing_dhkey_check 
-0x5bd9 024279 istore 1 ,contw 
-0x5bda 024280 branch load_inverse_result 
-:      024283 le_check_paring_time:
-0x5bdb 024284 fetch 1 ,mem_le_pairing_state 
-0x5bdc 024285 rtneq flag_le_pairing_end 
-0x5bdd 024286 arg flag_le_pairing_rcv_pairing_req ,temp 
-0x5bde 024287 isub temp ,null 
-0x5bdf 024288 nrtn positive 
-0x5be0 024289 arg smp_pairing_timer ,queue 
-0x5be1 024290 call timer_check 
-0x5be2 024291 nrtn blank 
-0x5be3 024292 branch le_send_pairing_fail_unspecified_reason 
-:      024294 le_pairing_sm:
-0x5be4 024295 bpatchx patch2f_0 ,mem_patch2f 
-0x5be5 024296 fetch 1 ,mem_le_pairing_state 
-0x5be6 024297 beq flag_le_pairing_null ,le_pairing_sm_null 
-0x5be7 024298 beq flag_le_pairing_start ,le_pairing_sm_start 
-0x5be8 024299 beq flag_le_pairing_send_recurity_req ,le_pairing_sm_send_sec_req 
-0x5be9 024300 beq flag_le_pairing_rcv_pairing_req ,le_pairing_sm_rcv_pairing_req 
-0x5bea 024301 beq flag_le_pairing_after_auth ,le_pairing_sm_after_auth 
-0x5beb 024302 beq flag_le_paring_send_enc_information ,le_pairng_sm_send_enc_information 
-0x5bec 024303 beq flag_le_paring_send_master_identification ,le_pairng_sm_send_master_indentification 
-0x5bed 024304 beq flag_le_paring_send_indentity_information ,le_pairng_sm_send_indentity_information 
-0x5bee 024305 rtn 
-:      024307 le_pairing_sm_null:
-:      024308 le_pairing_sm_send_sec_req:
-0x5bef 024309 fetch 1 ,mem_le_enc_state 
-0x5bf0 024310 rtnne flag_le_send_start_enc_rsp 
-0x5bf1 024311 jam flag_le_enc_end ,mem_le_enc_state 
-0x5bf2 024312 jam flag_le_pairing_end ,mem_le_pairing_state 
-0x5bf3 024313 jam bt_evt_le_reconnect_complete ,mem_fifo_temp 
-0x5bf4 024314 branch ui_ipc_send_event 
-:      024317 le_pairing_sm_start:
-0x5bf5 024318 jam flag_le_pairing_send_recurity_req ,mem_le_pairing_state 
-0x5bf6 024319 branch le_send_smp_security_request 
-:      024321 le_pairing_sm_rcv_pairing_req:
-0x5bf7 024322 jam flag_le_pairing_auth ,mem_le_pairing_state 
-0x5bf8 024323 setarg timer_smp_pairing_timeout 
-0x5bf9 024324 arg smp_pairing_timer ,queue 
-0x5bfa 024325 branch timer_init 
-:      024327 le_pairing_sm_after_auth:
-0x5bfb 024328 fetch 1 ,mem_le_enc_state 
-0x5bfc 024329 beq flag_le_send_start_enc_rsp ,le_pairing_sm_after_auth_start_enc 
-0x5bfd 024330 rtn 
-:      024332 le_pairing_sm_after_auth_start_enc:
-0x5bfe 024333 jam flag_le_paring_send_enc_information ,mem_le_pairing_state 
-0x5bff 024334 jam bt_evt_le_enc_info ,mem_fifo_temp 
-0x5c00 024335 call ui_ipc_send_event 
-0x5c01 024336 call le_send_smp_encryption_information 
-0x5c02 024337 fetch 1 ,mem_device_option 
-0x5c03 024338 rtnne dvc_op_module 
-0x5c04 024339 call le_check_master_addr_type 
-0x5c05 024340 rtn user 
-0x5c06 024341 branch app_ble_store_reconn_info 
-:      024344 le_pairng_sm_send_enc_information:
-0x5c07 024345 jam flag_le_paring_send_master_identification ,mem_le_pairing_state 
-0x5c08 024346 branch le_send_smp_master_identification 
-:      024348 le_pairng_sm_send_master_indentification:
-0x5c09 024349 fetch 1 ,mem_le_preq_resp_key_distribution 
-0x5c0a 024350 fetcht 1 ,mem_le_pres_resp_key_distribution 
-0x5c0b 024351 iand temp ,pdata 
-0x5c0c 024352 isolate0 le_initator_irk_bit ,pdata 
-0x5c0d 024353 branch le_parse_start_enc_rsp_after_auth_end ,true 
-0x5c0e 024354 jam flag_le_paring_send_indentity_information ,mem_le_pairing_state 
-0x5c0f 024355 branch le_send_smp_identity_information 
-:      024357 le_pairng_sm_send_indentity_information:
-0x5c10 024358 call le_send_smp_identity_address_information 
-0x5c11 024359 branch le_parse_start_enc_rsp_after_auth_end 
-:      024362 le_parse_start_enc_rsp_after_auth_end:
-0x5c12 024363 force smp_pairing_timer ,queue 
-0x5c13 024364 call timer_stop 
-0x5c14 024365 jam flag_le_enc_end ,mem_le_enc_state 
-0x5c15 024366 jam flag_le_pairing_end ,mem_le_pairing_state 
-0x5c16 024367 jam bt_evt_le_pairing_complete ,mem_fifo_temp 
-0x5c17 024368 branch ui_ipc_send_event 
-:      024372 le_secure_connect_sm:
-0x5c18 024373 bpatchx patch2f_1 ,mem_patch2f 
-0x5c19 024374 fetch 1 ,mem_le_pairing_mode 
-0x5c1a 024375 rtnbit0 le_pairing_mode_secure_connect_bit 
-0x5c1b 024376 fetch 1 ,mem_le_secure_connect_flag 
-0x5c1c 024377 rtnne le_sp_flag_commit_256 
-0x5c1d 024378 jam sp_flag_standby ,mem_le_secure_connect_flag 
-0x5c1e 024379 fetch 1 ,mem_le_secure_connect_state 
-0x5c1f 024380 beq le_sc_stat_receive_public_key ,le_sc_sm_receive_public_key 
-0x5c20 024381 beq le_sc_stat_wait_send_public_key ,le_sc_sm_wait_send_public_key 
-0x5c21 024382 beq le_sc_stat_send_public_key ,le_sc_sm_send_public_key 
-0x5c22 024383 beq le_sc_stat_receive_dhkey ,le_sc_sm_receive_dhkey 
-0x5c23 024384 beq le_sc_stat_wait_confirm_gkey ,le_sc_sm_wait_confirm_gkey 
-0x5c24 024385 beq le_sc_stat_passkey_wait_confirm ,le_sc_sm_passkey_wait_confirm 
-0x5c25 024386 rtn 
-:      024389 le_sc_sm_passkey_wait_confirm:
-0x5c26 024390 fetch 1 ,mem_authentication_passkey_times 
-0x5c27 024391 copy pdata ,queue 
-0x5c28 024392 increase 1 ,pdata 
-0x5c29 024393 store 1 ,mem_authentication_passkey_times 
-0x5c2a 024394 fetch 4 ,mem_le_tk 
-0x5c2b 024395 qisolate1 pdata 
-0x5c2c 024396 setarg 0x80 
-0x5c2d 024397 setflag true ,0 ,pdata 
-0x5c2e 024398 store 1 ,mem_passkey_1bit 
-0x5c2f 024399 branch le_sc_sm_ready_send_pairing_confirm 
-:      024401 le_sc_sm_wait_confirm_gkey:
-0x5c30 024402 fetch 1 ,mem_le_sc_confirm_gkey_flag 
-0x5c31 024403 jam flag_le_sc_confrim_null ,mem_le_sc_confirm_gkey_flag 
-0x5c32 024404 beq flag_le_sc_confrim_gkey_ok ,le_sc_confirm_gkey_ok 
-0x5c33 024405 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5c34 024406 rtn 
-:      024408 le_sc_confirm_gkey_ok:
-0x5c35 024409 jam bt_evt_le_pairing_success ,mem_fifo_temp 
-0x5c36 024410 call ui_ipc_send_event 
-0x5c37 024411 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
-0x5c38 024412 branch le_send_smp_pairing_dhkey_check 
-:      024414 le_sc_sm_receive_dhkey:
-0x5c39 024415 fetch 1 ,mem_sp_dhkey_invalid 
-0x5c3a 024416 beq sp_key_valid_256 ,le_dhkey_ready 
-0x5c3b 024417 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5c3c 024418 rtn 
-:      024420 le_dhkey_ready:
-0x5c3d 024421 call function_f5 
-0x5c3e 024425 fetch 1 ,mem_le_pairing_mode 
-0x5c3f 024426 beq le_pairing_mode_secure_connect_passkey ,le_dhkey_ready_common 
-0x5c40 024427 call le_set_tk_0 
-:      024428 le_dhkey_ready_common:
-0x5c41 024429 call function_f6_ea 
-0x5c42 024430 arg mem_aes_cmac_temp ,rega 
-0x5c43 024431 arg mem_sp_confirm_remote ,regb 
-0x5c44 024432 arg 16 ,loopcnt 
-0x5c45 024433 call string_compare 
-0x5c46 024434 branch le_dhkey_check_ok ,zero 
-:      024435 le_dhkey_check_fail:
-0x5c47 024436 jam pairing_failed_dhkey_check_failed ,mem_le_ll_pairing_fail_reason 
-0x5c48 024437 branch le_send_pairing_failed 
-:      024440 le_dhkey_check_ok:
-0x5c49 024441 call sp_calc_check_publickey_256 
-0x5c4a 024442 nbranch le_dhkey_check_fail ,zero 
-0x5c4b 024443 jam 1 ,mem_ltk_exists 
-0x5c4c 024444 fetch 1 ,mem_le_pairing_mode 
-0x5c4d 024445 beq le_pairing_mode_secure_connect_justwork ,le_sc_confirm_gkey_ok 
-0x5c4e 024446 beq le_pairing_mode_secure_connect_passkey ,le_sc_confirm_gkey_ok 
-0x5c4f 024447 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5c50 024448 jam le_sc_stat_wait_confirm_gkey ,mem_le_secure_connect_state 
-0x5c51 024449 rtn 
-:      024451 le_sc_sm_send_public_key:
-0x5c52 024452 fetch 1 ,mem_le_pairing_mode 
-0x5c53 024453 beq le_pairing_mode_secure_connect_passkey ,le_sc_sm_send_public_key_passkey 
-0x5c54 024454 jam 0 ,mem_passkey_1bit 
-:      024455 le_sc_sm_ready_send_pairing_confirm:
-0x5c55 024456 branch le_send_smp_pairing_confirm 
-:      024458 le_sc_sm_send_public_key_passkey:
-0x5c56 024462 jam 0 ,mem_authentication_passkey_times 
-0x5c57 024463 branch le_parse_smp_pairing_req_passkey 
-:      024466 le_sc_sm_receive_public_key:
-0x5c58 024467 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5c59 024468 fetch 1 ,mem_le_sc_local_key_invalid 
-0x5c5a 024469 beq sp_key_valid_256 ,le_public_key_ready 
-0x5c5b 024471 rtn 
-:      024473 le_public_key_ready:
-0x5c5c 024474 jam le_sc_stat_wait_send_public_key ,mem_le_secure_connect_state 
-0x5c5d 024475 jam sp_key_invalid ,mem_sp_dhkey_invalid 
-0x5c5e 024476 branch sp_dhkey_calc_256 
-:      024478 le_sc_sm_wait_send_public_key:
-0x5c5f 024479 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
-0x5c60 024480 jam le_sc_stat_send_public_key ,mem_le_secure_connect_state 
-0x5c61 024481 branch le_send_smp_pairing_public_key 
-:      024485 le_fifo_malloc_tx_l2cap_smp:
-0x5c62 024486 force le_l2cap_cid_smp ,regb 
-0x5c63 024487 branch le_fifo_malloc_tx_l2cap 
-:      024491 le_parse_ll:
-0x5c64 024492 fetch 1 ,mem_le_rxbuf + 2 
-0x5c65 024493 beq ll_connection_update_req ,le_parse_connection_update_req 
-0x5c66 024494 beq ll_channel_map_req ,le_parse_channel_map_req 
-0x5c67 024495 beq ll_terminate_ind ,le_parse_terminate_ind 
-0x5c68 024496 beq ll_enc_req ,le_parse_enc_req 
-0x5c69 024497 beq ll_enc_rsp ,le_parse_enc_rsp 
-0x5c6a 024498 beq ll_start_enc_req ,le_parse_start_enc_req 
-0x5c6b 024499 beq ll_start_enc_rsp ,le_parse_start_enc_rsp 
-0x5c6c 024500 beq ll_unknown_rsp ,le_parse_unknown_rsp 
-0x5c6d 024501 beq ll_feature_req ,le_parse_feature_req 
-0x5c6e 024502 beq ll_feature_rsp ,le_parse_feature_rsp 
-0x5c6f 024503 beq ll_pause_enc_req ,le_parse_pause_enc_req 
-0x5c70 024504 beq ll_pause_enc_rsp ,le_parse_pause_enc_rsp 
-0x5c71 024505 beq ll_version_ind ,le_parse_version_ind 
-0x5c72 024506 beq ll_reject_ind ,le_parse_reject_ind 
-0x5c73 024507 beq ll_ping_req ,le_parse_ping_req 
-0x5c74 024508 beq ll_ping_rsp ,le_parse_ping_rsp 
-0x5c75 024509 arg 2 ,rega 
-0x5c76 024510 arg ll_unknown_rsp ,regb 
-0x5c77 024511 call le_fifo_malloc_tx_ll 
-0x5c78 024512 fetch 1 ,mem_le_rxbuf + 2 
-0x5c79 024513 istore 1 ,contw 
-0x5c7a 024514 rtn 
-:      024517 le_parse_connection_update_req:
-0x5c7b 024518 ifetch 9 ,contr 
-0x5c7c 024519 store 9 ,mem_le_new_param 
-0x5c7d 024520 ifetch 2 ,contr 
-0x5c7e 024521 store 2 ,mem_le_instant 
-0x5c7f 024522 fetch 1 ,mem_le_state 
-0x5c80 024523 set1 lestate_update_param ,pdata 
-0x5c81 024524 store 1 ,mem_le_state 
-0x5c82 024525 rtn 
-:      024527 le_parse_channel_map_req:
-0x5c83 024528 ifetch 5 ,contr 
-0x5c84 024529 store 5 ,mem_le_new_map 
-0x5c85 024530 ifetch 2 ,contr 
-0x5c86 024531 store 2 ,mem_le_instant 
-0x5c87 024532 fetcht 2 ,mem_le_event_count 
-0x5c88 024533 isub temp ,null 
-0x5c89 024534 nbranch le_parse_terminate_ind ,positive 
-0x5c8a 024535 fetch 1 ,mem_le_state 
-0x5c8b 024536 set1 lestate_update_map ,pdata 
-0x5c8c 024537 store 1 ,mem_le_state 
-0x5c8d 024538 rtn 
-:      024541 le_parse_terminate_ind:
-0x5c8e 024542 setarg 20 
-0x5c8f 024543 store 2 ,mem_le_superto 
-0x5c90 024544 store 2 ,mem_le_init_superto 
-0x5c91 024545 rtn 
-:      024547 le_send_terminate_ind_user_terminated:
-0x5c92 024548 arg error_remote_user_terminated_connection ,regc 
-:      024551 le_send_terminate_ind:
-0x5c93 024552 arg 2 ,rega 
-0x5c94 024553 arg ll_terminate_ind ,regb 
-0x5c95 024554 call le_fifo_malloc_tx_ll 
-0x5c96 024555 copy regc ,pdata 
-0x5c97 024556 istore 1 ,contw 
-0x5c98 024557 rtn 
-:      024559 le_parse_feature_req:
-:      024561 le_send_feature_rsp:
-0x5c99 024562 arg 9 ,rega 
-0x5c9a 024563 arg ll_feature_rsp ,regb 
-0x5c9b 024564 call le_fifo_malloc_tx_ll 
-0x5c9c 024565 setarg param_le_features 
-0x5c9d 024566 istore 8 ,contw 
-0x5c9e 024567 rtn 
-:      024570 le_parse_version_ind:
-0x5c9f 024571 rtn master 
-:      024572 le_send_version_ind:
-0x5ca0 024573 arg 6 ,rega 
-0x5ca1 024574 arg ll_version_ind ,regb 
-0x5ca2 024575 call le_fifo_malloc_tx_ll 
-0x5ca3 024576 fetch 5 ,mem_lmp_version 
-0x5ca4 024577 istore 5 ,contw 
-0x5ca5 024578 rtn 
-:      024581 le_parse_ping_req:
-0x5ca6 024582 arg ll_ping_rsp ,regb 
-0x5ca7 024583 branch le_send_ll_one_lenth 
-:      024586 le_send_ll_one_lenth:
-0x5ca8 024587 arg 1 ,rega 
-0x5ca9 024588 branch le_fifo_malloc_tx_ll 
-:      024591 le_parse_enc_req:
-0x5caa 024592 ifetch 8 ,contr 
-0x5cab 024593 store 8 ,mem_le_rand 
-0x5cac 024594 ifetch 2 ,contr 
-0x5cad 024595 store 2 ,mem_le_ediv 
-0x5cae 024596 ifetch 8 ,contr 
-0x5caf 024597 store 8 ,mem_le_skdm 
-0x5cb0 024598 ifetch 4 ,contr 
-0x5cb1 024599 store 4 ,mem_le_ivm 
-0x5cb2 024600 call le_send_enc_rsp 
-0x5cb3 024601 bpatchx patch2f_2 ,mem_patch2f 
-0x5cb4 024602 fetch 1 ,mem_le_pairing_state 
-0x5cb5 024603 beq flag_le_pairing_after_auth ,le_parse_enc_req_after_auth 
-0x5cb6 024604 fetch 1 ,mem_le_configuration 
-0x5cb7 024605 bbit1 bit_ble_pairing_fixed_ltk ,le_parse_enc_req_fixed_ltk 
-0x5cb8 024606 fetch 1 ,mem_nv_data_number 
-0x5cb9 024607 ncall load_device_list_mode_4 ,blank 
-0x5cba 024608 fetch 1 ,mem_ltk_exists 
-0x5cbb 024609 beq 0 ,le_ltk_lost 
-:      024610 le_parse_enc_req_after_auth:
-0x5cbc 024611 jam flag_le_rcv_enc_start ,mem_le_enc_state 
-0x5cbd 024612 call le_send_start_enc_req 
-0x5cbe 024613 branch generate_sk 
-:      024615 le_parse_enc_req_fixed_ltk:
-0x5cbf 024616 jam 1 ,mem_ltk_exists 
-0x5cc0 024617 arg mem_le_fixed_ltk ,contr 
-0x5cc1 024618 arg mem_le_ltk ,contw 
-0x5cc2 024619 call memcpy16 
-0x5cc3 024620 branch le_parse_enc_req_after_auth 
-:      024623 le_ltk_lost:
-0x5cc4 024624 bpatchx patch2f_3 ,mem_patch2f 
-0x5cc5 024625 jam flag_le_enc_null ,mem_le_enc_state 
-0x5cc6 024626 jam flag_le_enc_null ,mem_le_pairing_state 
-0x5cc7 024627 jam bt_evt_le_ltk_lost ,mem_fifo_temp 
-0x5cc8 024628 branch ui_ipc_send_event 
-:      024630 le_send_reject_ind:
-0x5cc9 024631 arg 2 ,rega 
-0x5cca 024632 arg ll_reject_ind ,regb 
-0x5ccb 024633 call le_fifo_malloc_tx_ll 
-0x5ccc 024634 setarg le_err_pin_or_key_missing 
-0x5ccd 024635 istore 1 ,contw 
-0x5cce 024636 rtn 
-:      024638 le_send_enc_rsp:
-0x5ccf 024639 arg mem_le_skds ,contw 
-0x5cd0 024640 force 8 ,loopcnt 
-0x5cd1 024641 call generate_random_loop 
-0x5cd2 024642 arg mem_le_ivs ,contw 
-0x5cd3 024643 force 4 ,loopcnt 
-0x5cd4 024644 call generate_random_loop 
-0x5cd5 024645 arg 13 ,rega 
-0x5cd6 024646 arg ll_enc_rsp ,regb 
-0x5cd7 024647 call le_fifo_malloc_tx_ll 
-0x5cd8 024648 fetch 8 ,mem_le_skds 
-0x5cd9 024649 istore 8 ,contw 
-0x5cda 024650 fetch 4 ,mem_le_ivs 
-0x5cdb 024651 istore 4 ,contw 
-0x5cdc 024652 rtn 
-:      024654 le_send_start_enc_req:
-0x5cdd 024655 arg ll_start_enc_req ,regb 
-0x5cde 024656 branch le_send_ll_one_lenth 
-:      024658 le_send_start_enc_rsp:
-0x5cdf 024659 arg ll_start_enc_rsp ,regb 
-0x5ce0 024660 branch le_send_ll_one_lenth 
-:      024663 le_parse_enc_rsp:
-0x5ce1 024664 ifetch 8 ,contr 
-0x5ce2 024665 store 8 ,mem_le_skds 
-0x5ce3 024666 ifetch 4 ,contr 
-0x5ce4 024667 store 4 ,mem_le_ivs 
-0x5ce5 024668 branch generate_sk 
-:      024670 le_parse_start_enc_req:
-0x5ce6 024671 fetch 1 ,mem_le_state 
-0x5ce7 024672 set1 lestate_encryption ,pdata 
-0x5ce8 024673 store 1 ,mem_le_state 
-0x5ce9 024674 rtn 
-:      024676 le_parse_start_enc_rsp:
-0x5cea 024677 rtn master 
-0x5ceb 024678 jam bt_evt_le_start_enc ,mem_fifo_temp 
-0x5cec 024679 call ui_ipc_send_event 
-0x5ced 024680 jam flag_le_send_start_enc_rsp ,mem_le_enc_state 
-0x5cee 024681 branch le_send_start_enc_rsp 
-:      024683 le_parse_pause_enc_req:
-0x5cef 024684 jam flag_le_enc_pause ,mem_le_enc_state 
-0x5cf0 024685 call le_send_pause_enc_rsp 
-0x5cf1 024686 jam bt_evt_le_pause_enc ,mem_fifo_temp 
-0x5cf2 024687 branch ui_ipc_send_event 
-:      024689 le_send_pause_enc_rsp:
-0x5cf3 024690 arg ll_pause_enc_rsp ,regb 
-0x5cf4 024691 branch le_send_ll_one_lenth 
-:      024694 le_parse_feature_rsp:
-:      024695 le_parse_unknown_rsp:
-:      024696 le_parse_pause_enc_rsp:
-:      024697 le_parse_reject_ind:
-:      024698 le_parse_ping_rsp:
-0x5cf5 024699 rtn 
-:      024706 init_lmp:
-0x5cf6 024707 rtn wake 
-:      024708 init_lmp_work:
-0x5cf7 024709 bpatchx patch2f_4 ,mem_patch2f 
-0x5cf8 024710 setarg 0 
-0x5cf9 024711 store 1 ,mem_lmp_to_send 
-0x5cfa 024712 store 1 ,mem_conn_sm 
-0x5cfb 024713 store 1 ,mem_lmo_opcode1 
-0x5cfc 024714 store 1 ,mem_lmo_opcode2 
-0x5cfd 024715 store 1 ,mem_esco_addr 
-0x5cfe 024716 store 1 ,mem_auth_enable 
-0x5cff 024717 store 1 ,mem_connection_options 
-0x5d00 024718 store 1 ,mem_pairing_auth 
-0x5d01 024719 jam switch_flag_init ,mem_switch_flag 
-0x5d02 024720 jam 0 ,mem_switch_fail_master_count 
-0x5d03 024721 jam null_encryp ,mem_wait_encryption 
-:      024722 init_lmp_reinit:
-0x5d04 024723 jam 0 ,mem_pairing_auth 
-0x5d05 024724 jam 0 ,mem_sp_localsm 
-0x5d06 024725 jam 0 ,mem_lmp_conn_state 
-:      024727 parse_rx_done:
-0x5d07 024728 rtn 
-:      024730 parse_lmp:
-0x5d08 024731 bpatchx patch2f_5 ,mem_patch2f 
-0x5d09 024732 call setlocalsm_master ,master 
-0x5d0a 024733 ncall setlocalsm_slave ,master 
-0x5d0b 024734 call lmo_fifo_check 
-0x5d0c 024735 nrtn blank 
-0x5d0d 024736 fetch 1 ,mem_state_map 
-0x5d0e 024737 rtnbit0 smap_rxlmp 
-0x5d0f 024738 set0 smap_rxlmp ,pdata 
-0x5d10 024739 set0 mark_rxbuf_inuse ,mark 
-0x5d11 024740 store 1 ,mem_state_map 
-0x5d12 024741 fetch 1 ,mem_rxbuf 
-0x5d13 024742 fetcht 1 ,mem_state_map 
-0x5d14 024743 isolate1 smap_lmptidinit ,pdata 
-0x5d15 024744 setflag true ,smap_lmptid ,temp 
-0x5d16 024745 storet 1 ,mem_state_map 
-0x5d17 024746 and_into 0x2 ,temp 
-0x5d18 024747 storet 1 ,mem_lmo_tid2 
-0x5d19 024748 fetcht 1 ,mem_state_map 
-0x5d1a 024749 rshift pdata ,pdata 
-0x5d1b 024750 store 1 ,mem_lmi_opcode2 
-0x5d1c 024751 bpatchx patch2f_6 ,mem_patch2f 
-0x5d1d 024752 fetch 1 ,mem_lmi_opcode2 
-0x5d1e 024753 beq lmp_escape ,parse_lmp_escape 
-0x5d1f 024754 beq lmp_accepted ,parse_lmp_accepted 
-0x5d20 024755 beq lmp_not_accepted ,parse_lmp_not_accepted 
-0x5d21 024756 beq lmp_set_afh ,parse_lmp_set_afh 
-0x5d22 024757 beq lmp_clkoffset_req ,parse_lmp_clkoffset_req 
-0x5d23 024758 beq lmp_encryption_mode_req ,parse_lmp_encryption_mode_req 
-0x5d24 024759 beq lmp_encryption_key_size_req ,parse_lmp_crypt_key 
-0x5d25 024760 beq lmp_auto_rate ,parse_lmp_auto_rate 
-0x5d26 024761 beq lmp_test_control ,parse_lmp_test_control 
-0x5d27 024762 beq lmp_test_activate ,parse_lmp_test_activate 
-0x5d28 024763 beq lmp_setup_complete ,parse_lmp_setup_complete 
-0x5d29 024764 beq lmp_supervision_timeout ,parse_lmp_supervision_timeout 
-0x5d2a 024765 beq lmp_features_req ,parse_lmp_features_req 
-0x5d2b 024766 beq lmp_host_connection_req ,parse_lmp_conn_req 
-0x5d2c 024767 beq lmp_version_req ,parse_lmp_version_req 
-0x5d2d 024768 beq lmp_version_res ,parse_lmp_version_res 
-0x5d2e 024769 beq lmp_detach ,parse_lmp_detach 
-0x5d2f 024770 beq lmp_max_slot ,parse_lmp_max_slot 
-0x5d30 024771 beq lmp_max_slot_req ,parse_lmp_max_slot_req 
-0x5d31 024772 beq lmp_name_req ,parse_lmp_name_req 
-0x5d32 024773 beq lmp_name_res ,parse_lmp_name_res 
-0x5d33 024774 beq lmp_features_res ,parse_lmp_features_res 
-0x5d34 024775 beq lmp_comb_key ,parse_lmp_comb_key 
-0x5d35 024776 beq lmp_au_rand ,parse_lmp_au_rand 
-0x5d36 024777 beq lmp_in_rand ,parse_lmp_in_rand 
-0x5d37 024778 beq lmp_sres ,parse_lmp_sres 
-0x5d38 024779 beq lmp_incr_power_req ,parse_lmp_incr_power 
-0x5d39 024780 beq lmp_decr_power_req ,parse_lmp_decr_power 
-0x5d3a 024781 beq lmp_max_power ,parse_lmp_max_power 
-0x5d3b 024782 beq lmp_min_power ,parse_lmp_min_power 
-0x5d3c 024783 beq lmp_page_mode_req ,parse_lmp_page_mode_req 
-0x5d3d 024784 beq lmp_page_scan_mode_req ,parse_lmp_page_scan_mode_req 
-0x5d3e 024785 beq lmp_preferred_rate ,parse_lmp_preferred_rate 
-0x5d3f 024786 beq lmp_slot_offset ,parse_lmp_slot_offset 
-0x5d40 024787 beq lmp_sniff_req ,parse_lmp_sniff_req 
-0x5d41 024788 beq lmp_start_encryption_req ,parse_lmp_start_encryption_req 
-0x5d42 024789 beq lmp_stop_encryption_req ,parse_lmp_stop_encryption_req 
-0x5d43 024790 beq lmp_switch_req ,parse_lmp_switch_req 
-0x5d44 024791 beq lmp_temp_rand ,parse_lmp_temp_rand 
-0x5d45 024792 beq lmp_temp_key ,parse_lmp_temp_key 
-0x5d46 024793 beq lmp_timing_accuracy_req ,parse_lmp_timing_accuracy_req 
-0x5d47 024794 beq lmp_timing_accuracy_res ,parse_lmp_timing_accuracy_res 
-0x5d48 024795 beq lmp_unit_key ,parse_lmp_unit_key 
-0x5d49 024796 beq lmp_unsniff_req ,parse_lmp_unsniff_req 
-0x5d4a 024797 beq lmp_use_semi_permanent_key ,parse_lmp_use_semi_permanend_key 
-0x5d4b 024798 beq lmp_encapsulated_header ,parse_lmp_encapsulated_header 
-0x5d4c 024799 beq lmp_encapsulated_payload ,parse_lmp_encapsulated_payload 
-0x5d4d 024800 beq lmp_simple_pairing_confirm ,parse_simple_pairing_confirm 
-0x5d4e 024801 beq lmp_simple_pairing_number ,parse_lmp_simple_pairing_number 
-0x5d4f 024802 beq lmp_dhkey_check ,parse_dhkey_check 
-0x5d50 024803 beq lmp_clkoffset_res ,parse_lmp_clkoffset_res 
-0x5d51 024804 beq lmp_enc_key_size_mask_req ,parse_enc_key_size_mask_req 
-:      024807 reject_unknown_packet:
-0x5d52 024808 jam unknown_lmp_pdu ,mem_lmo_reason2 
-:      024809 reject_lmp_packet:
-0x5d53 024810 jam lmp_not_accepted ,mem_lmo_opcode2 
-0x5d54 024811 rtn 
-:      024813 parse_lmp_clkoffset_req:
-0x5d55 024814 jam lmp_clkoffset_res ,mem_lmo_opcode2 
-0x5d56 024815 rtn 
-:      024817 parse_enc_key_size_mask_req:
-0x5d57 024818 jam lmp_enc_key_size_mask_res ,mem_lmo_opcode2 
-0x5d58 024819 rtn 
-:      024821 parse_lmp_set_afh:
-0x5d59 024822 fetch 4 ,mem_rxbuf + 1 
-0x5d5a 024823 lshift pdata ,pdata 
-0x5d5b 024824 store 4 ,mem_afh_instant 
-0x5d5c 024825 fetch 1 ,mem_rxbuf + 5 
-0x5d5d 024826 store 1 ,mem_afh_new_mod 
-0x5d5e 024827 fetch 5 ,mem_rxbuf + 6 
-0x5d5f 024828 store 5 ,mem_afh_map_new 
-0x5d60 024829 fetch 5 ,mem_rxbuf + 11 
-0x5d61 024830 istore 5 ,contw 
-0x5d62 024831 fetch 1 ,mem_mode 
-0x5d63 024832 set1 afh_change ,pdata 
-0x5d64 024833 store 1 ,mem_mode 
-0x5d65 024834 rtn 
-:      024835 parse_lmp_escape:
-0x5d66 024836 bpatchx patch2f_7 ,mem_patch2f 
-0x5d67 024837 fetch 1 ,mem_rxbuf + 1 
-0x5d68 024838 set1 7 ,pdata 
-0x5d69 024839 store 1 ,mem_lmi_opcode2 
-0x5d6a 024840 beq lmp_ext_accepted ,parse_lmpext_accepted 
-0x5d6b 024841 beq lmp_not_accepted_ext ,parse_lmpext_not_accepted 
-0x5d6c 024842 beq lmp_sniff_subrating_req ,parse_lmp_sniff_subrating_req 
-0x5d6d 024843 beq lmp_sniff_subrating_res ,parse_lmp_sniff_subrating_res 
-0x5d6e 024844 beq lmp_packet_type_table_req ,parse_lmpext_packet_type_table_req 
-0x5d6f 024845 beq lmp_ext_features_req ,parse_lmpext_features_req 
-0x5d70 024846 beq lmp_ext_features_res ,parse_lmpext_features_res 
-0x5d71 024847 beq lmp_ext_chn_classification_req ,parse_lmpext_chn_classification_req 
-0x5d72 024848 beq lmp_pause_encryption_req ,parse_lmpext_pause_encrypt 
-0x5d73 024849 beq lmp_resume_encryption_req ,parse_lmpext_resume_encrypt 
-0x5d74 024850 beq lmp_io_cap_req ,parse_lmpext_iocap_req 
-0x5d75 024851 beq lmp_io_cap_res ,parse_lmpext_iocap_res 
-0x5d76 024852 rtneq lmp_ext_features_res 
-:      024855 reject_unknown_ext_packet:
-0x5d77 024856 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
-0x5d78 024857 jam unknown_lmp_pdu ,mem_lmo_reason2 
-0x5d79 024859 rtn 
-:      024860 parse_lmpext_chn_classification_req:
-0x5d7a 024861 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
-0x5d7b 024862 jam not_support_chn_classification ,mem_lmo_reason2 
-0x5d7c 024863 rtn 
-:      024865 parse_lmpext_iocap_req:
-0x5d7d 024866 call iocap_lmpext_load 
-0x5d7e 024867 jam lmp_io_cap_res ,mem_lmo_opcode2 
-0x5d7f 024868 rtn 
-:      024870 parse_lmpext_iocap_res:
-0x5d80 024871 call iocap_lmpext_load 
-0x5d81 024872 branch iocap_lmpext_common 
-:      024874 iocap_lmpext_load:
-0x5d82 024875 arg mem_sp_iocap_remote ,contw 
-0x5d83 024876 fetch 3 ,mem_rxbuf + 2 
-0x5d84 024877 istore 3 ,contw 
-0x5d85 024878 rtn 
-:      024880 iocap_lmpext_common:
-0x5d86 024881 branch master_set_mem_master_sp_flag ,true 
-0x5d87 024882 rtn 
-:      024883 parse_lmpext_accepted:
-0x5d88 024884 fetch 1 ,mem_rxbuf + 3 
-0x5d89 024885 set1 7 ,pdata 
-0x5d8a 024886 store 1 ,mem_lmi_accepted_opcode 
-0x5d8b 024887 beq lmp_packet_type_table_req ,parse_lmpext_accepted_ptt 
-0x5d8c 024888 rtn 
-:      024891 parse_lmpext_not_accepted:
-0x5d8d 024892 fetch 1 ,mem_rxbuf + 3 
-0x5d8e 024893 set1 7 ,pdata 
-0x5d8f 024894 store 1 ,mem_lmi_accepted_opcode 
-0x5d90 024895 beq lmp_packet_type_table_req ,parse_lmpext_not_accepted_ptt 
-0x5d91 024896 rtn 
-:      024898 parse_lmpext_accepted_ptt:
-0x5d92 024899 fetch 1 ,mem_ptt 
-0x5d93 024900 fetcht 1 ,mem_state_map 
-0x5d94 024901 nsetflag blank ,smap_edr ,temp 
-0x5d95 024902 storet 1 ,mem_state_map 
-:      024903 parse_lmpext_not_accepted_ptt:
-0x5d96 024904 fetch 1 ,mem_state 
-0x5d97 024905 rtnbit0 state_init_seq 
-0x5d98 024906 set0 state_init_seq ,pdata 
-0x5d99 024907 store 1 ,mem_state 
-0x5d9a 024908 fetch 1 ,mem_auth_enable 
-0x5d9b 024909 nrtn blank 
-0x5d9c 024910 jam lmp_setup_complete ,mem_lmo_opcode2 
-0x5d9d 024911 rtn 
-:      024913 parse_lmpext_pause_encrypt:
-0x5d9e 024914 nbranch parse_lmpext_pause_encrypt_slave ,master 
-0x5d9f 024915 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
-0x5da0 024916 branch tid_reply 
-:      024918 parse_lmpext_pause_encrypt_slave:
-0x5da1 024919 jam lmp_pause_encryption_req ,mem_lmo_opcode2 
-0x5da2 024920 rtn 
-:      024922 parse_lmpext_resume_encrypt:
-0x5da3 024925 call tid_reply 
-0x5da4 024926 branch lmp_start_encryption 
-:      024928 parse_lmpext_features_req:
-0x5da5 024929 jam lmp_ext_features_res ,mem_lmo_opcode2 
-0x5da6 024930 rtn 
-:      024932 parse_lmpext_features_res:
-0x5da7 024933 fetcht 1 ,mem_rxbuf + 4 
-0x5da8 024934 and temp ,0x1 ,temp 
-0x5da9 024935 storet 1 ,mem_remote_sppcap 
-0x5daa 024936 fetch 1 ,mem_hci_cmd 
-0x5dab 024937 bne hci_cmd_wait_remote_ext_feature ,parse_lmpext_features_res_not_hci 
-0x5dac 024938 jam 0 ,mem_hci_cmd 
-:      024939 parse_lmpext_features_res_not_hci:
-0x5dad 024940 fetch 1 ,mem_conn_sm 
-0x5dae 024941 rtnne conn_sm_wait_features_ext 
-0x5daf 024942 jam conn_sm_send_conn_req ,mem_conn_sm 
-0x5db0 024943 branch process_conn_sm 
-:      024945 parse_lmp_accepted:
-0x5db1 024946 bpatchx patch30_0 ,mem_patch30 
-0x5db2 024947 fetch 1 ,mem_rxbuf + 1 
-0x5db3 024948 store 1 ,mem_lmi_accepted_opcode 
-0x5db4 024949 beq lmp_host_connection_req ,parse_lmp_accepted_hostconn 
-0x5db5 024950 beq lmp_in_rand ,parse_lmp_accepted_inrand 
-0x5db6 024951 beq lmp_encryption_mode_req ,parse_lmp_accepted_enc_mode 
-0x5db7 024952 beq lmp_encryption_key_size_req ,parse_lmp_accepted_enc_keysize 
-0x5db8 024953 beq lmp_start_encryption_req ,parse_lmp_accepted_start_enc 
-0x5db9 024954 beq lmp_stop_encryption_req ,parse_lmp_accepted_stop_enc 
-0x5dba 024955 beq lmp_unsniff_req ,parse_lmp_accepted_unsniff_req 
-0x5dbb 024956 beq lmp_sniff_req ,parse_lmp_accepted_sniff_req 
-0x5dbc 024957 beq lmp_switch_req ,parse_lmp_accepted_switch 
-0x5dbd 024959 beq lmp_encapsulated_header ,parse_lmp_accepted_encapsulated_header 
-0x5dbe 024960 beq lmp_encapsulated_payload ,parse_lmp_accepted_encapsulated_payload 
-0x5dbf 024961 beq lmp_simple_pairing_number ,parse_lmp_accepted_simple_pairing_number 
-0x5dc0 024962 beq lmp_dhkey_check ,parse_lmp_accepted_dhkey_check 
-0x5dc1 024963 rtn 
-:      024965 parse_lmp_not_accepted:
-0x5dc2 024966 bpatchx patch30_1 ,mem_patch30 
-0x5dc3 024967 fetch 1 ,mem_rxbuf + 1 
-0x5dc4 024968 store 1 ,mem_lmi_accepted_opcode 
-0x5dc5 024969 beq lmp_name_req ,parse_lmp_not_accepted_name_req 
-0x5dc6 024970 beq lmp_host_connection_req ,parse_lmp_not_accepted_hostconn 
-0x5dc7 024971 beq lmp_au_rand ,parse_lmp_not_accepted_aurand 
-0x5dc8 024972 beq lmp_in_rand ,parse_lmp_not_accepted_inrand 
-0x5dc9 024973 beq lmp_switch_req ,parse_lmp_not_accepted_switch 
-0x5dca 024975 beq lmp_simple_pairing_number ,parse_lmp_not_accepted_simple_pairing_number 
-0x5dcb 024976 beq lmp_dhkey_check ,parse_lmp_not_accepted_dhkey_check 
-0x5dcc 024977 beq lmp_unsniff_req ,parse_lmp_not_accepted_unsniff_req 
-0x5dcd 024978 beq lmp_sniff_req ,parse_lmp_not_acdcept_sniff_req 
-0x5dce 024979 rtn 
-:      024981 parse_lmp_accepted_switch:
-0x5dcf 024982 jam bt_evt_switch_accept ,mem_fifo_temp 
-0x5dd0 024983 call ui_ipc_send_event 
-0x5dd1 024984 branch role_switch_prepare0 
-:      024985 parse_lmp_not_accepted_switch:
-0x5dd2 024986 jam bt_evt_switch_not_accept ,mem_fifo_temp 
-0x5dd3 024987 call ui_ipc_send_event 
-0x5dd4 024988 jam switch_flag_not_accept ,mem_switch_flag 
-0x5dd5 024989 setarg timer_switch_waite 
-0x5dd6 024990 arg switch_wait_timer ,queue 
-0x5dd7 024991 branch timer_init 
-:      024994 parse_lmp_accepted_hostconn:
-0x5dd8 024997 fetch 1 ,mem_lmp_conn_state 
-0x5dd9 024998 set1 received_conn_req ,pdata 
-0x5dda 024999 store 1 ,mem_lmp_conn_state 
-0x5ddb 025000 jam bt_evt_bb_connected ,mem_fifo_temp 
-0x5ddc 025001 call ui_ipc_send_event 
-0x5ddd 025002 jam lmp_packet_type_table_req ,mem_lmo_opcode2 
-:      025004 parse_lmp_accepted_hostconn_ctn:
-0x5dde 025006 fetch 1 ,mem_conn_sm 
-0x5ddf 025007 bne conn_sm_wait_conn_accept ,parse_rx_done 
-0x5de0 025010 jam conn_sm_auth_pair ,mem_conn_sm 
-0x5de1 025011 rtn 
-:      025019 parse_lmp_not_accepted_hostconn:
-0x5de2 025020 jam acl_connection_already_exists ,mem_disconn_reason_send 
-0x5de3 025021 jam lmp_detach ,mem_lmo_opcode2 
-0x5de4 025023 jam conn_sm_standby ,mem_conn_sm 
-0x5de5 025025 branch parse_rx_done ,true 
-0x5de6 025026 rtn 
-:      025028 parse_lmp_accepted_inrand:
-0x5de7 025029 fetch 1 ,mem_link_key_exists 
-0x5de8 025030 nrtn blank 
-0x5de9 025031 call clear_linkkey 
-0x5dea 025032 call lmp_generate_key 
-0x5deb 025033 rtn master 
-0x5dec 025034 set1 mark_slave_in_rand_accepted ,mark 
-0x5ded 025035 rtn 
-:      025037 parse_lmp_accepted_enc_mode:
-0x5dee 025038 nrtn master 
-0x5def 025039 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
-0x5df0 025040 fetch 1 ,mem_state_map 
-0x5df1 025041 rtnbit0 smap_encryption 
-0x5df2 025042 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
-0x5df3 025043 rtn 
-:      025045 parse_lmp_accepted_enc_keysize:
-0x5df4 025046 branch lmp_start_encryption 
-:      025048 parse_lmp_accepted_start_enc:
-0x5df5 025049 call send_create_conn_start_l2cap_timer_sm 
-0x5df6 025050 fetch 1 ,mem_state 
-0x5df7 025051 rtnbit1 state_conn_comp 
-0x5df8 025052 jam lmp_setup_complete ,mem_lmo_opcode2 
-0x5df9 025053 fetch 1 ,mem_conn_sm 
-0x5dfa 025054 rtnne conn_sm_encrypt_wait 
-0x5dfb 025055 jam conn_sm_encrypt_wait_clear ,mem_conn_sm 
-0x5dfc 025056 rtn 
-:      025058 parse_lmp_accepted_stop_enc:
-0x5dfd 025066 rtn 
-:      025068 parse_lmp_not_accepted_aurand:
-:      025069 parse_lmp_not_accepted_aurand_send_detach:
-0x5dfe 025070 jam lmp_detach ,mem_lmo_opcode2 
-0x5dff 025071 jam other_end_terminated ,mem_disconn_reason_send 
-0x5e00 025072 rtn 
-:      025074 parse_lmp_not_accepted_inrand:
-0x5e01 025075 fetch 1 ,mem_rxbuf + 2 
-0x5e02 025076 beq key_missing ,parse_lmp_inrand_key_missing 
-0x5e03 025077 rtnne pairing_not_allowed 
-0x5e04 025078 jam pairing_not_allowed ,mem_disconn_reason_send 
-0x5e05 025079 jam lmp_detach ,mem_lmo_opcode2 
-0x5e06 025080 rtn 
-:      025081 parse_lmp_inrand_key_missing:
-0x5e07 025082 jam key_missing ,mem_disconn_reason_send 
-0x5e08 025083 jam lmp_detach ,mem_lmo_opcode2 
-0x5e09 025084 rtn 
-:      025086 parse_lmp_not_accepted_name_req:
-0x5e0a 025087 rtn 
-:      025089 parse_lmp_not_accepted_simple_pairing_number:
-0x5e0b 025090 jam sp_stat_null ,mem_sp_state 
-0x5e0c 025091 jam lmp_detach ,mem_lmo_opcode2 
-0x5e0d 025092 branch parse_rx_done 
-:      025094 parse_lmp_not_accepted_dhkey_check:
-0x5e0e 025095 jam sp_stat_null ,mem_sp_state 
-0x5e0f 025096 jam lmp_detach ,mem_lmo_opcode2 
-0x5e10 025097 branch parse_rx_done 
-:      025098 parse_lmp_not_accepted_unsniff_req:
-0x5e11 025099 jam bt_evt_unsniff_not_accept ,mem_fifo_temp 
-0x5e12 025100 branch ui_ipc_send_event 
-:      025102 parse_lmp_accepted_unsniff_req:
-0x5e13 025103 jam bt_evt_unsniff_accept ,mem_fifo_temp 
-0x5e14 025104 call ui_ipc_send_event 
-0x5e15 025105 branch sniff_exit 
-:      025107 parse_lmp_accepted_sniff_req:
-0x5e16 025108 jam bt_evt_sniff_accept ,mem_fifo_temp 
-0x5e17 025109 call ui_ipc_send_event 
-0x5e18 025110 setarg 0 
-0x5e19 025111 store 2 ,mem_dsniff 
-0x5e1a 025112 fetch 2 ,mem_sniff_param_interval 
-0x5e1b 025113 lshift pdata ,pdata 
-0x5e1c 025114 store 2 ,mem_tsniff 
-0x5e1d 025115 fetch 1 ,mem_sniff_param_attempt 
-0x5e1e 025116 store 1 ,mem_sniff_attempt 
-0x5e1f 025117 fetch 1 ,mem_sniff_param_timeout 
-0x5e20 025118 store 1 ,mem_sniff_timeout 
-0x5e21 025119 branch sniff_init 
-:      025121 parse_lmp_not_acdcept_sniff_req:
-0x5e22 025122 jam bt_evt_sniff_not_accept ,mem_fifo_temp 
-0x5e23 025123 branch ui_ipc_send_event 
-:      025125 parse_lmp_crypt_key:
-0x5e24 025126 fetcht 1 ,mem_rxbuf + 1 
-0x5e25 025127 storet 1 ,mem_key_size 
-0x5e26 025128 branch accept_lmp_msg 
-:      025130 parse_lmp_setup_complete:
-0x5e27 025131 fetch 1 ,mem_lmp_conn_state 
-0x5e28 025132 set1 received_setup_complete ,pdata 
-0x5e29 025133 store 1 ,mem_lmp_conn_state 
-0x5e2a 025134 rtnbit1 sent_setup_complete 
-0x5e2b 025135 jam lmp_setup_complete ,mem_lmo_opcode2 
-0x5e2c 025136 branch parse_rx_done 
-:      025138 parse_lmp_max_slot:
-0x5e2d 025141 rtn 
-:      025143 parse_lmp_max_slot_req:
-0x5e2e 025144 fetch 1 ,mem_max_slot 
-0x5e2f 025145 fetcht 1 ,mem_rxbuf + 1 
-0x5e30 025146 isub temp ,null 
-0x5e31 025148 branch accept_lmp_msg ,positive 
-0x5e32 025149 jam lmp_not_accepted ,mem_lmo_opcode2 
-0x5e33 025150 jam unspecified_error ,mem_lmo_reason2 
-0x5e34 025151 jam lmp_max_slot_req ,mem_lmi_opcode2 
-0x5e35 025152 rtn 
-:      025154 parse_lmp_detach:
-0x5e36 025155 call prepare_disconnect 
-0x5e37 025156 branch accept_lmp_msg 
-:      025158 accept_lmp_msg:
-0x5e38 025159 jam lmp_accepted ,mem_lmo_opcode2 
-0x5e39 025160 rtn 
-:      025162 parse_lmp_incr_power:
-0x5e3a 025163 jam lmp_max_power ,mem_lmo_opcode2 
-0x5e3b 025164 rtn 
-:      025166 parse_lmp_decr_power:
-0x5e3c 025167 jam lmp_min_power ,mem_lmo_opcode2 
-0x5e3d 025168 rtn 
-:      025170 parse_lmp_version_res:
-0x5e3e 025171 fetch 1 ,mem_conn_sm 
-0x5e3f 025172 rtneq conn_sm_wait_version 
-0x5e40 025174 jam conn_sm_send_features ,mem_conn_sm 
-0x5e41 025176 rtn 
-:      025179 parse_lmp_auto_rate:
-0x5e42 025180 rtn 
-:      025182 parse_lmp_in_rand:
-0x5e43 025183 call lmp_copy_rand 
-0x5e44 025184 jam pincode_state_wait_pincode ,mem_pincode_state 
-0x5e45 025185 jam bt_evt_pincode_req ,mem_fifo_temp 
-0x5e46 025186 call ui_ipc_send_event 
-0x5e47 025188 call tid_check 
-0x5e48 025189 nbranch lmp_accept_inrand ,true 
-0x5e49 025191 nbranch parse_lmp_inrand_res ,master 
-0x5e4a 025192 jam lmp_not_accepted ,mem_lmo_opcode2 
-0x5e4b 025193 jam lmp_in_rand ,mem_lmi_opcode2 
-0x5e4c 025194 jam transaction_collision ,mem_lmo_reason2 
-0x5e4d 025195 rtn 
-:      025196 parse_lmp_inrand_res:
-0x5e4e 025197 fetch 1 ,mem_op 
-0x5e4f 025198 set1 op_inrand_req ,pdata 
-0x5e50 025199 store 1 ,mem_op 
-0x5e51 025200 rtn 
-:      025203 pop_tid_follow:
-0x5e52 025204 fetcht 1 ,mem_state_map 
-0x5e53 025205 nsetflag blank ,smap_lmptid ,temp 
-0x5e54 025206 storet 1 ,mem_state_map 
-0x5e55 025207 rtn 
-:      025210 push_tid_follow:
-0x5e56 025211 fetch 1 ,mem_lmo_tid2 
-0x5e57 025212 rshift pdata ,pdata 
-0x5e58 025213 and_into 1 ,pdata 
-0x5e59 025214 rtn 
-:      025216 parse_lmp_au_rand_moudle:
-0x5e5a 025217 fetch 1 ,mem_nv_data_number 
-0x5e5b 025218 rtn blank 
-0x5e5c 025219 fetch 1 ,mem_pairing_auth 
-0x5e5d 025220 call load_device_list ,blank 
-0x5e5e 025221 rtn 
-:      025223 parse_lmp_au_rand:
-0x5e5f 025224 call parse_lmp_au_rand_moudle 
-0x5e60 025225 call push_tid_follow 
-0x5e61 025226 store 1 ,mem_sres_tid 
-0x5e62 025227 call lmp_copy_rand 
-0x5e63 025228 jam lmp_sres ,mem_lmo_opcode2 
-0x5e64 025229 fetch 1 ,mem_link_key_exists 
-0x5e65 025230 nrtn blank 
-0x5e66 025231 fetch 1 ,mem_state 
-0x5e67 025232 rtnbit1 state_combkey 
-0x5e68 025233 jam key_missing ,mem_lmo_reason2 
-0x5e69 025234 branch reject_lmp_packet 
-:      025236 parse_lmp_sres:
-0x5e6a 025237 arg mem_plap ,rega 
-0x5e6b 025238 call function_e1 
-0x5e6c 025239 fetch 4 ,mem_rxbuf + 1 
-0x5e6d 025240 fetcht 4 ,mem_input_store 
-0x5e6e 025241 isub temp ,null 
-0x5e6f 025242 branch authentication_ok ,zero 
-0x5e70 025243 jam lmp_detach ,mem_lmo_opcode2 
-0x5e71 025244 jam authentication_failure_error ,mem_disconn_reason_send 
-0x5e72 025245 rtn 
-:      025246 authentication_ok:
-0x5e73 025247 call authentication_ok_common 
-0x5e74 025248 fetch 1 ,mem_ssp_enable 
-0x5e75 025249 branch pairing_success ,blank 
-0x5e76 025250 rtn 
-:      025253 authentication_ok_common:
-0x5e77 025254 call copy_aco 
-0x5e78 025255 call linkkey_ready 
-0x5e79 025256 fetch 1 ,mem_op 
-0x5e7a 025257 isolate1 op_auth_req ,pdata 
-0x5e7b 025258 set0 op_auth_req ,pdata 
-0x5e7c 025259 store 1 ,mem_op 
-0x5e7d 025260 fetch 1 ,mem_conn_sm 
-0x5e7e 025261 beq conn_sm_auth_wait ,authentication_ok_conn_sm 
-0x5e7f 025262 beq conn_sm_pairing_wait ,authentication_ok_conn_sm 
-0x5e80 025263 rtn 
-:      025264 authentication_ok_conn_sm:
-0x5e81 025265 fetch 1 ,mem_pairing_auth 
-0x5e82 025266 rtnne defalt_pairing_auth 
-0x5e83 025267 fetch 1 ,mem_state_map 
-0x5e84 025268 rtnbit1 smap_encryption 
-0x5e85 025269 branch host_create_conn_encrypt 
-:      025271 parse_lmp_comb_key:
-0x5e86 025272 arg mem_rxbuf + 1 ,rega 
-0x5e87 025273 arg mem_kinit ,regb 
-0x5e88 025274 arg mem_random_number ,contw 
-0x5e89 025275 call xor16 
-0x5e8a 025276 arg mem_plap ,rega 
-0x5e8b 025277 call generate_linkkey 
-0x5e8c 025278 jam lmp_au_rand ,mem_lmo_opcode2 
-0x5e8d 025279 fetch 1 ,mem_state 
-0x5e8e 025280 bbit0 state_combkey ,lmp_generate_key 
-0x5e8f 025281 rtn 
-:      025283 parse_lmp_name_res:
-0x5e90 025284 fetch 2 ,mem_len 
-0x5e91 025285 add pdata ,-3 ,loopcnt 
-0x5e92 025286 fetcht 1 ,mem_rxbuf + 1 
-0x5e93 025287 setarg mem_tmp_buffer 
-0x5e94 025288 iadd temp ,contw 
-0x5e95 025289 arg mem_rxbuf + 3 ,contr 
-0x5e96 025290 call memcpy 
-0x5e97 025291 fetcht 1 ,mem_name_offset 
-0x5e98 025292 fetch 1 ,mem_rxbuf + 2 
-0x5e99 025293 isub temp ,pdata 
-0x5e9a 025294 sub pdata ,14 ,null 
-0x5e9b 025295 branch parse_lmp_name_res_end ,positive 
-0x5e9c 025296 add temp ,14 ,pdata 
-0x5e9d 025297 store 1 ,mem_name_offset 
-0x5e9e 025298 jam lmp_name_req ,mem_lmo_opcode2 
-0x5e9f 025299 rtn 
-:      025300 parse_lmp_name_res_end:
-0x5ea0 025301 fetch 1 ,mem_state_map 
-0x5ea1 025302 set1 smap_name_res ,pdata 
-0x5ea2 025303 store 1 ,mem_state_map 
-0x5ea3 025304 bbit1 smap_name_req ,lmp_disconnect 
-0x5ea4 025305 rtn 
-:      025306 parse_lmp_name_req:
-0x5ea5 025307 fetch 1 ,mem_rxbuf + 1 
-0x5ea6 025308 store 1 ,mem_lmi_opcode2 
-0x5ea7 025309 jam lmp_name_res ,mem_lmo_opcode2 
-0x5ea8 025310 rtn 
-:      025312 parse_lmp_conn_req:
-0x5ea9 025313 branch accept_lmp_msg 
-:      025315 parse_lmp_timing_accuracy_req:
-0x5eaa 025316 jam lmp_timing_accuracy_res ,mem_lmo_opcode2 
-0x5eab 025317 rtn 
-:      025319 parse_lmp_features_req:
-0x5eac 025320 jam lmp_features_res ,mem_lmo_opcode2 
-0x5ead 025321 rtn 
-:      025323 parse_lmp_version_req:
-0x5eae 025324 jam lmp_version_res ,mem_lmo_opcode2 
-0x5eaf 025325 rtn 
-:      025327 parse_lmp_supervision_timeout:
-0x5eb0 025330 rtn 
-:      025334 parse_lmp_sniff_subrating_req:
-0x5eb1 025335 fetch 2 ,mem_tsniff 
-0x5eb2 025336 iforce temp 
-0x5eb3 025337 fetch 1 ,mem_rxbuf + 2 
-0x5eb4 025338 store 1 ,mem_subsniff_rate 
-0x5eb5 025339 imul32 temp ,temp 
-0x5eb6 025340 fetch 2 ,mem_rxbuf + 3 
-0x5eb7 025341 lshift pdata ,pdata 
-0x5eb8 025342 store 2 ,mem_subsniff_tcmax 
-0x5eb9 025343 fetch 4 ,mem_rxbuf + 5 
-0x5eba 025344 lshift pdata ,pdata 
-0x5ebb 025345 store 4 ,mem_subsniff_instant 
-0x5ebc 025347 deposit temp 
-0x5ebd 025348 store 2 ,mem_subsniff_tsniff 
-0x5ebe 025349 rtn 
-:      025350 parse_lmpext_packet_type_table_req:
-0x5ebf 025351 fetcht 1 ,mem_ptt 
-0x5ec0 025352 fetch 1 ,mem_rxbuf + 2 
-0x5ec1 025353 ixor temp ,null 
-0x5ec2 025354 nbranch reject_unknown_ext_packet ,zero 
-0x5ec3 025355 isolate1 0 ,pdata 
-0x5ec4 025356 fetch 1 ,mem_state_map 
-0x5ec5 025357 setflag true ,smap_edr ,pdata 
-0x5ec6 025358 store 1 ,mem_state_map 
-0x5ec7 025359 jam lmp_ext_accepted ,mem_lmo_opcode2 
-0x5ec8 025360 jam lmp_packet_type_table_req ,mem_lmi_opcode2 
-0x5ec9 025361 rtn 
-:      025364 parse_lmp_sniff_subrating_res:
-:      025365 parse_lmp_preferred_rate:
-:      025366 parse_lmp_max_power:
-:      025367 parse_lmp_min_power:
-0x5eca 025368 rtn 
-:      025369 parse_lmp_page_mode_req:
-0x5ecb 025371 branch accept_lmp_msg 
-:      025372 parse_lmp_page_scan_mode_req:
-0x5ecc 025375 branch accept_lmp_msg 
-:      025379 parse_lmp_slot_offset:
-0x5ecd 025380 fetch 2 ,mem_rxbuf + 1 
-0x5ece 025381 store 2 ,mem_slot_offset 
-0x5ecf 025382 rtn 
-:      025384 parse_lmp_sniff_req_check_sniff_para:
-0x5ed0 025385 fetch 2 ,mem_rxbuf + 4 
-0x5ed1 025386 fetcht 1 ,mem_lpm_mult 
-0x5ed2 025387 imul32 temp ,pdata 
-0x5ed3 025388 arg 0x640 ,temp 
-0x5ed4 025389 isub temp ,null 
-0x5ed5 025391 rtn 
-:      025393 parse_lmp_sniff_req:
-0x5ed6 025394 fetch 2 ,mem_rxbuf + 6 
-0x5ed7 025395 branch lmp_reject_sniff ,blank 
-0x5ed8 025396 call parse_lmp_sniff_req_check_sniff_para 
-0x5ed9 025397 branch lmp_reject_sniff ,positive 
-0x5eda 025398 fetch 1 ,mem_device_option 
-0x5edb 025399 sub pdata ,dvc_op_module ,null 
-0x5edc 025400 call module_set_lpm_mult_2 ,zero 
-0x5edd 025401 fetch 1 ,mem_state 
-0x5ede 025402 bbit1 state_insniff ,lmp_reject_sniff 
-0x5edf 025403 fetch 2 ,mem_rxbuf + 2 
-0x5ee0 025404 lshift pdata ,pdata 
-0x5ee1 025405 store 2 ,mem_dsniff 
-0x5ee2 025406 fetch 2 ,mem_rxbuf + 4 
-0x5ee3 025407 lshift pdata ,pdata 
-0x5ee4 025408 store 2 ,mem_tsniff 
-0x5ee5 025409 fetch 2 ,mem_rxbuf + 6 
-0x5ee6 025410 store 1 ,mem_sniff_attempt 
-0x5ee7 025411 iforce temp 
-0x5ee8 025412 fetch 2 ,mem_rxbuf + 8 
-0x5ee9 025413 store 1 ,mem_sniff_timeout 
-0x5eea 025414 isub temp ,null 
-0x5eeb 025415 nbranch set_big_value_to_attempt ,positive 
-0x5eec 025416 store 1 ,mem_sniff_attempt 
-:      025417 set_big_value_to_attempt:
-0x5eed 025419 jam lmp_accepted ,mem_lmo_opcode2 
-0x5eee 025420 jam lmp_sniff_req ,mem_lmi_opcode2 
-0x5eef 025421 rtn 
-:      025423 lmp_reject_sniff:
-0x5ef0 025424 jam pdu_not_allowed ,mem_lmo_reason2 
-0x5ef1 025425 branch reject_lmp_packet 
-:      025427 parse_lmp_start_encryption_req:
-0x5ef2 025428 call accept_lmp_msg 
-0x5ef3 025429 call lmp_copy_rand 
-0x5ef4 025430 call function_e3 
-0x5ef5 025431 branch start_encryption 
-:      025433 parse_lmp_stop_encryption_req:
-0x5ef6 025434 call accept_lmp_msg 
-0x5ef7 025435 branch stop_encryption 
-:      025438 parse_lmp_switch_req:
-0x5ef8 025439 fetch 4 ,mem_rxbuf + 1 
-0x5ef9 025440 lshift pdata ,pdata 
-0x5efa 025442 branch parse_lmp_switch_accept ,master 
-0x5efb 025443 fetcht 1 ,mem_link_key_exists 
-0x5efc 025444 nbranch parse_lmp_switch_req_clear_mark ,blank 
-:      025445 parse_lmp_switch_req_not_accept:
-0x5efd 025446 jam lmp_not_accepted ,mem_lmo_opcode2 
-0x5efe 025447 jam lmp_switch_req ,mem_lmi_opcode2 
-0x5eff 025448 jam pdu_not_allowed ,mem_lmo_reason2 
-0x5f00 025449 rtn 
-:      025450 parse_lmp_switch_req_clear_mark:
-0x5f01 025451 jam lmp_slot_offset ,mem_lmo_opcode2 
-0x5f02 025452 jam 0 ,mem_conn_sm 
-0x5f03 025453 branch role_switch_prepare 
-:      025455 parse_lmp_switch_accept:
-0x5f04 025456 call role_switch_prepare 
-0x5f05 025457 set1 mark_reconn_recieve_switch ,mark 
-0x5f06 025458 fetch 1 ,mem_connection_options 
-0x5f07 025459 set0 connection_switch ,pdata 
-0x5f08 025460 store 1 ,mem_connection_options 
-0x5f09 025461 branch accept_lmp_msg 
-:      025465 parse_lmp_temp_rand:
-:      025466 parse_lmp_temp_key:
-:      025467 parse_lmp_timing_accuracy_res:
-:      025468 parse_lmp_unit_key:
-:      025469 parse_lmp_use_semi_permanend_key:
-0x5f0a 025470 rtn 
-:      025473 parse_lmp_unsniff_req:
-0x5f0b 025474 jam lmp_accepted ,mem_lmo_opcode2 
-0x5f0c 025475 jam lmp_unsniff_req ,mem_lmi_opcode2 
-0x5f0d 025476 jam bt_evt_remote_unsniff ,mem_fifo_temp 
-0x5f0e 025477 call ui_ipc_send_event 
-0x5f0f 025478 branch sniff_exit 
-:      025480 parse_lmp_encapsulated_header:
-0x5f10 025481 fetch 1 ,mem_rxbuf + 1 
-0x5f11 025482 bne encapsulated_major_type_p192 ,parse_lmp_encapsulated_header_reject 
-0x5f12 025483 fetch 1 ,mem_rxbuf + 2 
-0x5f13 025484 bne encapsulated_minor_type_p192 ,parse_lmp_encapsulated_header_reject 
-0x5f14 025485 fetch 1 ,mem_rxbuf + 3 
-0x5f15 025486 bne encapsulated_len_p192 ,parse_lmp_encapsulated_header_reject 
-0x5f16 025487 call check_localsm 
-0x5f17 025488 branch parse_lmp_encapsulated_header_master ,true 
-0x5f18 025489 jam sp_stat_key_recv ,mem_sp_state 
-:      025490 parse_lmp_encapsulated_header_master:
-0x5f19 025491 jam lmp_accepted ,mem_lmo_opcode2 
-0x5f1a 025492 jam lmp_encapsulated_header ,mem_lmi_opcode2 
-0x5f1b 025493 branch parse_rx_done 
-:      025495 parse_lmp_encapsulated_header_reject:
-0x5f1c 025496 jam pdu_not_allowed ,mem_lmo_reason2 
-0x5f1d 025497 branch reject_lmp_packet 
-:      025499 parse_lmp_accepted_encapsulated_header:
-0x5f1e 025502 jam lmp_encapsulated_payload ,mem_lmo_opcode2 
-0x5f1f 025504 rtn 
-:      025505 parse_lmp_accepted_simple_pairing_number:
-0x5f20 025506 fetch 1 ,mem_ssp_mode_flag 
-0x5f21 025507 beq ssp_mode_ssp_pin_flag ,parse_lmp_accepted_simple_pairing_number_ssp_pin 
-0x5f22 025508 beq ssp_mode_passkey_entry_flag ,parse_lmp_accepted_simple_pairing_number_passkey 
-:      025509 parse_lmp_accepted_simple_pairing_number_common:
-0x5f23 025510 call check_localsm 
-0x5f24 025511 rtn true 
-0x5f25 025512 jam sp_stat_confirm_recv ,mem_sp_state 
-0x5f26 025513 rtn 
-:      025515 parse_lmp_accepted_simple_pairing_number_ssp_pin:
-0x5f27 025516 call g_noninit_number_confirm 
-0x5f28 025517 jam bt_evt_bt_gkey_generate ,mem_fifo_temp 
-0x5f29 025518 call ui_ipc_send_event 
-0x5f2a 025519 branch parse_lmp_accepted_simple_pairing_number_common 
-:      025522 parse_lmp_accepted_simple_pairing_number_passkey:
-0x5f2b 025523 call check_localsm 
-0x5f2c 025524 rtn true 
-0x5f2d 025525 fetch 1 ,mem_authentication_passkey_times 
-0x5f2e 025526 beq 19 ,authentication_passkey_end 
-0x5f2f 025527 increase 1 ,pdata 
-0x5f30 025528 store 1 ,mem_authentication_passkey_times 
-:      025531 authentication_passkey:
-0x5f31 025532 jam sp_flag_commit ,mem_sp_flag 
-0x5f32 025533 jam sp_stat_commit_calc ,mem_sp_state 
-0x5f33 025534 fetch 1 ,mem_authentication_passkey_times 
-0x5f34 025535 copy pdata ,queue 
-0x5f35 025536 fetch 6 ,mem_pin 
-0x5f36 025537 qisolate1 pdata 
-0x5f37 025538 setarg 0x80 
-0x5f38 025539 setflag true ,0 ,pdata 
-0x5f39 025540 store 1 ,mem_passkey_1bit 
-0x5f3a 025541 rtn 
-:      025543 authentication_passkey_end:
-0x5f3b 025544 jam sp_stat_confirm_recv ,mem_sp_state 
-0x5f3c 025545 rtn 
-:      025547 parse_lmp_accepted_dhkey_check:
-0x5f3d 025548 call parse_lmp_accepted_dhkey_check_common 
-:      025549 pairing_success:
-0x5f3e 025550 fetch 1 ,mem_flag_pairing_state 
-0x5f3f 025551 rtn blank 
-0x5f40 025552 jam flag_pairing_state_not_pairing ,mem_flag_pairing_state 
-0x5f41 025553 jam bt_evt_bt_pairing_success ,mem_fifo_temp 
-0x5f42 025554 branch ui_ipc_send_event 
-:      025557 parse_lmp_accepted_dhkey_check_common:
-0x5f43 025559 call check_localsm 
-0x5f44 025560 ncall g_noninit ,true 
-0x5f45 025561 call g_init ,true 
-0x5f46 025562 call check_localsm 
-0x5f47 025563 rtn true 
-0x5f48 025564 jam sp_stat_link_key_calc ,mem_sp_state 
-0x5f49 025565 jam sp_flag_commit ,mem_sp_flag 
-0x5f4a 025566 rtn 
-:      025568 parse_simple_pairing_confirm:
-0x5f4b 025569 arg mem_sp_confirm_remote ,contw 
-0x5f4c 025570 arg mem_rxbuf + 1 ,contr 
-0x5f4d 025571 call memcpy16 
-0x5f4e 025572 fetch 1 ,mem_ssp_mode_flag 
-0x5f4f 025573 rtneq ssp_mode_passkey_entry_flag 
-0x5f50 025574 branch master_set_mem_master_sp_flag 
-:      025576 parse_lmp_encapsulated_payload:
-0x5f51 025577 fetch 1 ,mem_master_sp_state 
-0x5f52 025578 beq sp_stat_random_send ,parse_encapsulated_payload_master 
-0x5f53 025579 fetch 1 ,mem_sp_state 
-0x5f54 025580 bne sp_stat_key_recv ,parse_lmp_encapsulated_payload_reject 
-:      025581 parse_encapsulated_payload_master:
-0x5f55 025582 fetch 1 ,mem_sp_remote_key_recv_count 
-0x5f56 025583 sub pdata ,0x20 ,contw 
-0x5f57 025584 nbranch parse_lmp_encapsulated_payload_reject ,positive 
-0x5f58 025585 arg mem_sp_pubkey_remote ,contw 
-0x5f59 025586 iadd contw ,contw 
-0x5f5a 025587 fetch 8 ,mem_rxbuf + 1 
-0x5f5b 025588 istore 8 ,contw 
-0x5f5c 025589 fetch 8 ,mem_rxbuf + 9 
-0x5f5d 025590 istore 8 ,contw 
-0x5f5e 025591 fetch 1 ,mem_sp_remote_key_recv_count 
-0x5f5f 025592 increase 16 ,pdata 
-0x5f60 025593 store 1 ,mem_sp_remote_key_recv_count 
-0x5f61 025594 bne encapsulated_len_p192 ,accept_lmp_msg 
-:      025595 parse_lmp_encapsulated_payload_completed:
-0x5f62 025596 call check_localsm 
-0x5f63 025597 branch accept_lmp_msg ,true 
-0x5f64 025598 jam sp_key_valid ,mem_sp_remote_key_invalid 
-0x5f65 025599 jam sp_stat_key_generate ,mem_sp_state 
-0x5f66 025600 jam sp_flag_commit ,mem_sp_flag 
-0x5f67 025601 branch accept_lmp_msg 
-:      025602 parse_lmp_encapsulated_payload_reject:
-0x5f68 025603 jam pdu_not_allowed ,mem_lmo_reason2 
-0x5f69 025604 branch reject_lmp_packet 
-:      025605 parse_lmp_accepted_encapsulated_payload:
-0x5f6a 025606 fetch 1 ,mem_sp_local_key_send_count 
-0x5f6b 025607 beq encapsulated_len_p192 ,parse_lmp_encapsulated_payload_all_accepted 
-0x5f6c 025608 jam lmp_encapsulated_payload ,mem_lmo_opcode2 
-0x5f6d 025609 branch parse_rx_done 
-:      025611 parse_lmp_encapsulated_payload_all_accepted:
-0x5f6e 025612 call check_localsm 
-0x5f6f 025613 branch parse_lmp_encapsulated_payload_all_accepted_master ,true 
-0x5f70 025614 fetch 1 ,mem_ssp_mode_flag 
-0x5f71 025615 beq ssp_mode_passkey_entry_flag ,parse_lmp_encapsulated_payload_all_accepted_get_passkey 
-0x5f72 025616 jam sp_flag_commit ,mem_sp_flag 
-0x5f73 025617 jam sp_stat_commit_calc ,mem_sp_state 
-0x5f74 025618 branch parse_rx_done 
-:      025620 parse_lmp_encapsulated_payload_all_accepted_get_passkey:
-0x5f75 025621 jam bt_evt_bt_get_passkey ,mem_fifo_temp 
-0x5f76 025622 branch ui_ipc_send_event 
-:      025625 parse_lmp_encapsulated_payload_all_accepted_master:
-0x5f77 025627 branch parse_rx_done 
-:      025629 parse_lmp_simple_pairing_number:
-0x5f78 025630 fetch 1 ,mem_master_sp_state 
-0x5f79 025631 beq sp_stat_random_send ,parse_lmp_simple_pairing_number_master 
-0x5f7a 025632 fetch 1 ,mem_sp_state 
-0x5f7b 025633 bne sp_stat_random_recv ,parse_lmp_simple_pairing_number_reject 
-:      025634 parse_lmp_simple_pairing_number_master:
-0x5f7c 025635 arg mem_sp_random_remote ,contw 
-0x5f7d 025636 fetch 8 ,mem_rxbuf + 1 
-0x5f7e 025637 istore 8 ,contw 
-0x5f7f 025638 fetch 8 ,mem_rxbuf + 9 
-0x5f80 025639 istore 8 ,contw 
-0x5f81 025640 call check_localsm 
-0x5f82 025641 branch parse_lmp_simple_pairing_number_master0 ,true 
-0x5f83 025642 jam sp_stat_random_send ,mem_sp_state 
-0x5f84 025643 jam sp_flag_commit ,mem_sp_flag 
-0x5f85 025644 branch accept_lmp_msg 
-:      025645 parse_lmp_simple_pairing_number_master0:
-0x5f86 025646 jam sp_stat_commit_calc ,mem_master_sp_state 
-0x5f87 025647 branch master_set_mem_master_sp_flag 
-:      025650 parse_lmp_simple_pairing_number_reject:
-0x5f88 025651 jam pdu_not_allowed ,mem_lmo_reason2 
-0x5f89 025652 branch reject_lmp_packet 
-:      025654 parse_dhkey_check:
-0x5f8a 025655 fetch 1 ,mem_master_sp_state 
-0x5f8b 025656 beq sp_stat_confirm_send ,parse_dhkey_check_master 
-0x5f8c 025657 fetch 1 ,mem_sp_state 
-0x5f8d 025658 bne sp_stat_confirm_recv ,parse_lmp_dhkey_check_reject 
-:      025659 parse_dhkey_check_master:
-0x5f8e 025660 arg mem_sp_check_result ,contw 
-0x5f8f 025661 arg mem_rxbuf + 1 ,contr 
-0x5f90 025662 call memcpy16 
-0x5f91 025663 call check_localsm 
-0x5f92 025664 branch parse_dhkey_check_master0 ,true 
-0x5f93 025665 fetch 1 ,mem_ssp_mode_flag 
-0x5f94 025666 beq ssp_mode_ssp_pin_flag ,number_comparison_mode 
-:      025667 number_comparison_successed:
-0x5f95 025668 jam 0 ,mem_flag_mode_ssp_pin 
-0x5f96 025669 jam sp_stat_confirm_check ,mem_sp_state 
-0x5f97 025670 jam sp_flag_commit ,mem_sp_flag 
-0x5f98 025671 jam lmp_dhkey_check ,mem_lmi_opcode2 
-0x5f99 025672 branch parse_rx_done 
-:      025674 parse_dhkey_check_master0:
-0x5f9a 025675 jam sp_stat_confirm_check ,mem_master_sp_state 
-0x5f9b 025676 jam sp_flag_commit ,mem_master_sp_flag 
-0x5f9c 025677 branch parse_rx_done 
-:      025678 parse_lmp_dhkey_check_reject:
-0x5f9d 025679 jam pdu_not_allowed ,mem_lmo_reason2 
-0x5f9e 025680 branch reject_lmp_packet 
-:      025682 number_comparison_mode:
-0x5f9f 025683 fetch 1 ,mem_flag_mode_ssp_pin 
-0x5fa0 025684 bbit1 flag_mode_ssp_pin_reviceve_comparison_bit ,comparison_result 
-0x5fa1 025685 set1 flag_mode_ssp_pin_recieve_dhkey_bit ,pdata 
-0x5fa2 025686 store 1 ,mem_flag_mode_ssp_pin 
-0x5fa3 025687 rtn 
-:      025689 comparison_result:
-0x5fa4 025690 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
-0x5fa5 025691 jam 0 ,mem_flag_mode_ssp_pin 
-0x5fa6 025692 branch parse_lmp_dhkey_check_reject 
-:      025695 parse_lmp_clkoffset_res:
-0x5fa7 025696 branch parse_rx_done 
-:      025698 parse_lmp_encryption_mode_req:
-0x5fa8 025699 fetch 1 ,mem_connection_options 
-0x5fa9 025700 set0 connection_encrypt 
-0x5faa 025701 store 1 ,mem_connection_options 
-0x5fab 025702 call accept_lmp_msg 
-0x5fac 025703 nrtn master 
-0x5fad 025704 fetch 1 ,mem_rxbuf + 1 
-0x5fae 025705 fetcht 1 ,mem_op 
-0x5faf 025706 setflag blank ,op_stop_enc ,temp 
-0x5fb0 025707 nsetflag blank ,op_start_enc ,temp 
-0x5fb1 025708 storet 1 ,mem_op 
-0x5fb2 025709 rtn 
-:      025711 parse_lmp_features_res:
-0x5fb3 025712 fetcht 8 ,mem_rxbuf + 1 
-:      025713 parse_lmp_features_res_not_hci:
-0x5fb4 025714 fetch 1 ,mem_conn_sm 
-0x5fb5 025715 rtnne conn_sm_wait_features_res 
-0x5fb6 025717 fetch 1 ,mem_connection_options 
-0x5fb7 025718 bbit0 connection_feature_ext ,parse_lmp_send_conn 
-0x5fb8 025720 jam conn_sm_send_features_ext ,mem_conn_sm 
-0x5fb9 025721 rtn 
-:      025722 parse_lmp_send_conn:
-0x5fba 025723 jam conn_sm_send_conn_req ,mem_conn_sm 
-0x5fbb 025724 rtn 
-:      025725 parse_lmp_test_activate:
-0x5fbc 025726 fetch 1 ,mem_debug_config 
-0x5fbd 025727 store 1 ,mem_test_mode_old_debug_config 
-0x5fbe 025728 jam lmp_accepted ,mem_lmo_opcode2 
-0x5fbf 025729 jam lmp_test_activate ,mem_lmi_opcode2 
-0x5fc0 025730 rtn 
-:      025731 parse_lmp_test_control:
-0x5fc1 025734 jam lmp_accepted ,mem_lmo_opcode2 
-0x5fc2 025735 jam lmp_test_control ,mem_lmi_opcode2 
-0x5fc3 025736 force 9 ,loopcnt 
-0x5fc4 025737 arg mem_rxbuf + 1 ,contr 
-0x5fc5 025738 arg mem_temp_payload ,contw 
-:      025739 parse_lmp_test_xor:
-0x5fc6 025740 ifetch 1 ,contr 
-0x5fc7 025741 xor_into 0x55 ,pdata 
-0x5fc8 025742 istore 1 ,contw 
-0x5fc9 025743 loop parse_lmp_test_xor 
-0x5fca 025744 fetch 1 ,test_mode_scenario 
-0x5fcb 025745 fetcht 1 ,mem_tester_emulate 
-0x5fcc 025746 set0 tester_no_whitening ,temp 
-0x5fcd 025747 set0 tester_pattern_test ,temp 
-0x5fce 025748 beq exit_test_mode ,parse_lmp_test_control_exit 
-0x5fcf 025749 beq pause_test_mode ,parse_lmp_test_control_pause 
-0x5fd0 025750 beq closed_loop_back_acl ,parse_lmp_test_control_loopback 
-0x5fd1 025751 beq acl_without_whitening ,parse_lmp_test_control_loopback_nowhite 
-0x5fd2 025752 beq closed_loop_back_sco ,parse_lmp_test_control_loopback 
-0x5fd3 025753 beq sco_without_whitening ,parse_lmp_test_control_loopback_nowhite 
-0x5fd4 025754 beq zero_pattern ,parse_lmp_test_control_pattern 
-0x5fd5 025755 beq one_pattern ,parse_lmp_test_control_pattern 
-0x5fd6 025756 beq alt_pattern ,parse_lmp_test_control_pattern 
-0x5fd7 025757 beq alt2_pattern ,parse_lmp_test_control_pattern 
-0x5fd8 025758 beq pseudorandom ,parse_lmp_test_control_pattern 
-0x5fd9 025759 rtn 
-:      025760 parse_lmp_test_control_exit:
-0x5fda 025762 fetch 1 ,mem_tester_emulate 
-0x5fdb 025763 set1 tester_exit ,pdata 
-0x5fdc 025764 set1 tester_change ,pdata 
-0x5fdd 025765 store 1 ,mem_tester_emulate 
-0x5fde 025766 rtn 
-:      025767 parse_lmp_test_control_pattern:
-0x5fdf 025768 set1 tester_pattern_test ,temp 
-0x5fe0 025769 jam 5 ,mem_lch_code 
-0x5fe1 025770 fetch 2 ,test_mode_data_length 
-0x5fe2 025771 iforce loopcnt 
-0x5fe3 025772 store 2 ,mem_len 
-0x5fe4 025773 arg mem_rxbuf ,contw 
-0x5fe5 025774 call pn9 
-:      025775 parse_lmp_test_control_loopback_nowhite:
-0x5fe6 025776 set1 tester_no_whitening ,temp 
-:      025777 parse_lmp_test_control_loopback:
-0x5fe7 025778 set1 tester_change ,temp 
-0x5fe8 025779 force 0 ,pdata 
-0x5fe9 025780 store 1 ,mem_slave_rcvcnt 
-0x5fea 025781 store 2 ,mem_tst_pktcnt_crc 
-0x5feb 025782 store 2 ,mem_tst_pktcnt_dmh 
-0x5fec 025783 store 2 ,mem_tst_pktcnt_hec 
-0x5fed 025784 store 2 ,mem_tst_pktcnt_sync 
-0x5fee 025785 fetch 1 ,test_mode_hopping_mode 
-0x5fef 025786 compare fixed_freq ,pdata ,0xff 
-0x5ff0 025787 setflag true ,tester_fixed_freq ,temp 
-0x5ff1 025788 storet 1 ,mem_tester_emulate 
-0x5ff2 025789 rtn 
-:      025791 parse_lmp_test_control_pause:
-0x5ff3 025792 set0 mark_testmode ,mark 
-0x5ff4 025793 jam 0 ,mem_tester_emulate 
-0x5ff5 025794 fetch 1 ,mem_debug_config 
-0x5ff6 025795 set0 debug_tx_pattern ,pdata 
-0x5ff7 025796 store 1 ,mem_debug_config 
-0x5ff8 025797 rtn 
-:      025803 lmp_copy_rand:
-0x5ff9 025804 arg mem_rxbuf + 1 ,contr 
-0x5ffa 025805 arg mem_random_number ,contw 
-0x5ffb 025806 branch memcpy16 
-:      025808 lmp_generate_key:
-0x5ffc 025809 jam lmp_comb_key ,mem_lmo_opcode2 
-0x5ffd 025810 rtn 
-:      025812 lmp_start_encryption:
-0x5ffe 025813 nrtn master 
-0x5fff 025814 jam lmp_start_encryption_req ,mem_lmo_opcode2 
-0x6000 025815 rtn 
-:      025817 lmp_accept_inrand:
-0x6001 025818 arg mem_lap ,rega 
-0x6002 025819 call generate_kinit 
-0x6003 025820 jam lmp_accepted ,mem_lmo_opcode2 
-0x6004 025821 jam lmp_in_rand ,mem_lmi_opcode2 
-0x6005 025822 rtn 
-:      025824 lmp_disconnect:
-0x6006 025825 jam 10 ,mem_conn_timer 
-0x6007 025826 jam lmp_detach ,mem_lmo_opcode2 
-0x6008 025827 jam local_host ,mem_disconn_reason_send 
-0x6009 025828 rtn 
-:      025834 send_lmp:
-0x600a 025835 bpatchx patch30_2 ,mem_patch30 
-0x600b 025836 disable user 
-0x600c 025837 call lmo_fifo_process 
-0x600d 025838 fetch 1 ,mem_lmp_to_send 
-0x600e 025839 rtn blank 
-0x600f 025844 bbit1 7 ,send_lmp_escape 
-:      025845 send_lmp0:
-0x6010 025846 beq lmp_name_req ,send_lmp_name_req 
-0x6011 025847 beq lmp_name_res ,send_lmp_name_res 
-0x6012 025848 beq lmp_accepted ,send_lmp_accepted 
-0x6013 025849 beq lmp_not_accepted ,send_lmp_not_accepted 
-0x6014 025850 beq lmp_features_req ,send_lmp_features_req 
-0x6015 025851 beq lmp_features_res ,send_lmp_features_res 
-0x6016 025852 beq lmp_timing_accuracy_res ,send_lmp_timing_accuracy_res 
-0x6017 025853 beq lmp_version_req ,send_lmp_version_req 
-0x6018 025854 beq lmp_version_res ,send_lmp_version_res 
-0x6019 025855 beq lmp_setup_complete ,send_lmp_setup_complete 
-0x601a 025856 beq lmp_supervision_timeout ,send_lmp_superto 
-0x601b 025857 beq lmp_host_connection_req ,send_lmp_no_payload 
-0x601c 025858 beq lmp_in_rand ,send_lmp_inrand 
-0x601d 025859 beq lmp_comb_key ,send_lmp_comb_key 
-0x601e 025860 beq lmp_au_rand ,send_lmp_aurand 
-0x601f 025861 beq lmp_sres ,send_lmp_sres 
-0x6020 025862 beq lmp_encryption_mode_req ,send_lmp_encryption_mode_req 
-0x6021 025863 beq lmp_encryption_key_size_req ,send_lmp_encryption_key_size_req 
-0x6022 025864 beq lmp_start_encryption_req ,send_lmp_start_encryption 
-0x6023 025865 beq lmp_detach ,send_lmp_detach 
-0x6024 025866 beq lmp_quality_of_service_req ,send_lmp_quality_of_service_req 
-0x6025 025867 beq lmp_unit_key ,send_lmp_unit_key 
-0x6026 025869 beq lmp_incr_power_req ,send_lmp_inc_power 
-0x6027 025870 beq lmp_clkoffset_res ,send_lmp_clkoffset_res 
-0x6028 025871 beq lmp_max_power ,send_lmp_nopayload_reply 
-0x6029 025872 beq lmp_max_slot ,send_lmp_max_slot 
-0x602a 025873 beq lmp_max_slot_req ,send_lmp_max_slot_req 
-0x602b 025874 beq lmp_min_power ,send_lmp_nopayload_reply 
-0x602c 025875 beq lmp_slot_offset ,send_lmp_slot_offset 
-0x602d 025876 beq lmp_switch_req ,send_lmp_switch_req 
-0x602e 025877 beq lmp_sniff_req ,send_lmp_sniff_req 
-0x602f 025878 beq lmp_stop_encryption_req ,send_lmp_stop_encryption_req 
-0x6030 025879 beq lmp_timing_accuracy_req ,send_lmp_timing_accuracy_req 
-0x6031 025880 beq lmp_unsniff_req ,send_lmp_unsniff_req 
-0x6032 025881 beq lmp_encapsulated_header ,send_lmp_encapsulated_header 
-0x6033 025882 beq lmp_encapsulated_payload ,send_lmp_encapsulated_payload 
-0x6034 025883 beq lmp_simple_pairing_confirm ,send_lmp_simple_pairing_comfirm 
-0x6035 025884 beq lmp_simple_pairing_number ,send_lmp_simple_pairing_number 
-0x6036 025885 beq lmp_dhkey_check ,send_lmp_dhkey_check 
-0x6037 025886 beq lmp_auto_rate ,send_lmp_auto_rate 
-0x6038 025887 beq lmp_enc_key_size_mask_res ,send_lmp_enc_key_size_mask_res 
-0x6039 025889 beq lmp_clkoffset_req ,send_lmp_clkoffset_req 
-0x603a 025890 beq lmp_quality_of_service ,send_lmp_quality_of_service 
-0x603b 025891 beq lmp_test_activate ,send_lmp_test_activate 
-0x603c 025892 beq lmp_test_control ,send_lmp_test_control 
-:      025893 send_lmp_error:
-0x603d 025894 branch assert 
-0x603e 025895 rtn 
-:      025896 send_lmp_escape:
-0x603f 025897 beq lmp_ext_accepted ,send_lmpext_accepted 
-0x6040 025898 beq lmp_ext_features_res ,send_lmpext_features_res 
-0x6041 025899 beq lmp_not_accepted_ext ,send_lmpext_not_accepted 
-0x6042 025900 beq lmp_ext_features_req ,send_lmpext_features_req 
-0x6043 025901 beq lmp_packet_type_table_req ,send_lmpext_packet_type_table_req 
-0x6044 025902 beq lmp_pause_encryption_req ,send_lmpext_pause_encryption_req 
-0x6045 025903 beq lmp_io_cap_req ,send_lmp_io_cap_req 
-0x6046 025904 beq lmp_io_cap_res ,send_lmpext_io_cap_res 
-0x6047 025905 beq lmp_sniff_subrating_req ,send_lmpext_sniff_subrating_req 
-0x6048 025906 beq lmp_sniff_subrating_res ,send_lmpext_sniff_subrating_res 
-0x6049 025907 branch assert 
-:      025913 send_lmp_accepted:
-0x604a 025914 force 2 ,pdata 
-0x604b 025915 call msg_send_lmp 
-0x604c 025916 fetch 1 ,mem_lmi_opcode 
-0x604d 025917 istore 1 ,contw 
-0x604e 025918 call send_lmp_follow 
-0x604f 025919 bpatchx patch30_3 ,mem_patch30 
-0x6050 025920 fetch 1 ,mem_lmi_opcode 
-0x6051 025921 beq lmp_in_rand ,send_lmp_accepted_inrand 
-0x6052 025922 beq lmp_encryption_mode_req ,send_lmp_accepted_enc_mode 
-0x6053 025923 beq lmp_encryption_key_size_req ,send_lmp_accepted_enc_key 
-0x6054 025924 beq lmp_sniff_req ,send_lmp_accept_sniff_req 
-0x6055 025925 beq lmp_host_connection_req ,send_lmp_accepted_connection 
-0x6056 025926 beq lmp_dhkey_check ,send_lmp_accept_dhkey_check 
-0x6057 025927 beq lmp_start_encryption_req ,send_create_conn_start_l2cap_timer_sm 
-0x6058 025928 rtn 
-:      025930 send_create_conn_start_l2cap_timer_sm:
-0x6059 025931 fetch 1 ,mem_conn_sm 
-0x605a 025932 rtn blank 
-0x605b 025933 jam conn_sm_wait_done ,mem_conn_sm 
-0x605c 025934 setarg timer_enpt_waite 
-0x605d 025935 arg enpt_delay_timer ,queue 
-0x605e 025936 branch timer_init 
-:      025938 send_lmp_accept_sniff_req:
-0x605f 025939 branch sniff_init 
-:      025940 send_lmp_not_accepted:
-0x6060 025941 force 3 ,pdata 
-0x6061 025942 call msg_send_lmp 
-0x6062 025943 fetch 1 ,mem_lmi_opcode 
-0x6063 025944 beq lmp_au_rand ,send_not_accept_aurand 
-0x6064 025945 istore 1 ,contw 
-0x6065 025946 fetch 1 ,mem_lmo_reason 
-0x6066 025947 istore 1 ,contw 
-0x6067 025948 branch send_lmp_follow 
-:      025950 send_not_accept_aurand:
-0x6068 025951 istore 1 ,contw 
-0x6069 025952 fetch 1 ,mem_lmo_reason 
-0x606a 025953 istore 1 ,contw 
-0x606b 025954 arg mem_sres_tid ,temp 
-0x606c 025955 branch special_tid_store 
-:      025957 send_lmpext_accepted:
-0x606d 025958 force 4 ,queue 
-0x606e 025959 call send_lmpext 
-0x606f 025960 setarg lmp_escape 
-0x6070 025961 istore 1 ,contw 
-0x6071 025962 fetch 1 ,mem_lmi_opcode 
-0x6072 025963 set0 7 ,pdata 
-0x6073 025964 istore 1 ,contw 
-0x6074 025965 fetch 1 ,mem_lmi_opcode 
-0x6075 025966 branch send_lmp_follow 
-:      025968 send_lmpext_not_accepted:
-0x6076 025969 force 5 ,queue 
-0x6077 025970 call send_lmpext 
-0x6078 025971 setarg lmp_escape 
-0x6079 025972 istore 1 ,contw 
-0x607a 025973 fetch 1 ,mem_lmi_opcode 
-0x607b 025974 set0 7 ,pdata 
-0x607c 025975 istore 1 ,contw 
-0x607d 025976 fetch 1 ,mem_lmo_reason 
-0x607e 025977 istore 1 ,contw 
-0x607f 025978 branch send_lmp_follow 
-:      025981 send_lmp_accepted_inrand:
-0x6080 025982 call clear_linkkey 
-0x6081 025983 call tid_check 
-0x6082 025984 rtn true 
-0x6083 025985 branch lmp_generate_key 
-:      025987 send_lmp_accepted_enc_mode:
-0x6084 025988 fetch 1 ,mem_op 
-0x6085 025989 bbit1 op_start_enc ,send_lmp_accepted_enc_start 
-0x6086 025990 rtnbit0 op_stop_enc 
-0x6087 025991 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
-0x6088 025992 set0 op_stop_enc ,pdata 
-0x6089 025993 call tid_reply 
-0x608a 025994 branch send_lmp_accepted_enc_exit 
-:      025995 send_lmp_accepted_enc_start:
-0x608b 025996 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
-0x608c 025997 set0 op_start_enc ,pdata 
-:      025998 send_lmp_accepted_enc_exit:
-0x608d 025999 store 1 ,mem_op 
-0x608e 026000 rtn 
-:      026002 send_lmp_accepted_enc_key:
-0x608f 026003 call check_localsm 
-0x6090 026004 branch lmp_start_encryption ,true 
-0x6091 026005 rtn 
-:      026007 send_lmp_accepted_connection:
-0x6092 026008 jam lmp_packet_type_table_req ,mem_lmo_opcode2 
-0x6093 026010 fetch 1 ,mem_lmp_conn_state 
-0x6094 026011 set1 received_conn_req ,pdata 
-0x6095 026012 store 1 ,mem_lmp_conn_state 
-0x6096 026013 jam bt_evt_bb_connected ,mem_fifo_temp 
-0x6097 026014 branch ui_ipc_send_event 
-:      026017 send_lmp_accept_dhkey_check:
-0x6098 026018 rtn 
-:      026022 send_lmpext_features_res:
-0x6099 026023 force 12 ,queue 
-0x609a 026024 call send_lmpext 
-0x609b 026025 setarg 0x01 
-0x609c 026026 istore 1 ,contw 
-0x609d 026027 fetch 2 ,mem_lmpext_ssp_enable 
-0x609e 026028 istore 2 ,contw 
-0x609f 026029 setarg 0 
-0x60a0 026030 istore 3 ,contw 
-0x60a1 026031 setarg 0x00 
-0x60a2 026032 istore 4 ,contw 
-0x60a3 026033 branch send_lmp_reply 
-:      026034 send_lmpext_io_cap_res:
-0x60a4 026035 force 5 ,queue 
-0x60a5 026036 call send_lmpext 
-0x60a6 026037 fetch 3 ,mem_sp_iocap_local 
-0x60a7 026038 istore 3 ,contw 
-0x60a8 026039 call send_lmp_reply 
-0x60a9 026040 jam flag_pairing_state_pairing ,mem_flag_pairing_state 
-0x60aa 026041 fetch 1 ,mem_sp_iocap_local 
-0x60ab 026042 beq display_yesno ,responder_iocap_display_yesno 
-0x60ac 026043 beq keyboard_only ,responder_iocap_keyboard_only 
-0x60ad 026044 beq no_input_no_output ,responder_iocap_no_input_no_output 
-0x60ae 026045 rtn 
-:      026047 responder_iocap_keyboard_only:
-0x60af 026048 fetch 1 ,mem_sp_iocap_remote 
-0x60b0 026049 beq display_only ,responder_iocap_keyboard_only_initiator_iocap_display_only 
-0x60b1 026050 beq display_yesno ,responder_iocap_keyboard_only_initiator_iocap_display_yesno 
-0x60b2 026051 beq keyboard_only ,responder_iocap_keyboard_only_initiator_iocap_keyboard_only 
-0x60b3 026052 beq no_input_no_output ,responder_iocap_keyboard_only_initiator_iocap_no_input_no_output 
-0x60b4 026053 rtn 
-:      026056 responder_iocap_display_yesno:
-0x60b5 026057 fetch 1 ,mem_sp_iocap_remote 
-0x60b6 026058 beq display_only ,responder_iocap_display_yesno_initiator_iocap_display_only 
-0x60b7 026059 beq display_yesno ,responder_iocap_display_yesno_initiator_iocap_display_yesno 
-0x60b8 026060 beq keyboard_only ,responder_iocap_display_yesno_initiator_iocap_keyboard_only 
-0x60b9 026061 beq no_input_no_output ,responder_iocap_display_yesno_initiator_iocap_no_input_no_output 
-0x60ba 026062 rtn 
-:      026065 responder_iocap_no_input_no_output:
-0x60bb 026066 fetch 1 ,mem_sp_iocap_remote 
-0x60bc 026067 beq display_only ,responder_iocap_no_input_no_output_initiator_iocap_display_only 
-0x60bd 026068 beq display_yesno ,responder_iocap_no_input_no_output_initiator_iocap_display_yesno 
-0x60be 026069 beq keyboard_only ,responder_iocap_no_input_no_output_initiator_iocap_keyboard_only 
-0x60bf 026070 beq no_input_no_output ,responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output 
-0x60c0 026071 rtn 
-:      026073 responder_iocap_keyboard_only_initiator_iocap_no_input_no_output:
-:      026074 responder_iocap_display_yesno_initiator_iocap_no_input_no_output:
-:      026075 responder_iocap_display_yesno_initiator_iocap_display_only:
-:      026076 responder_iocap_no_input_no_output_initiator_iocap_display_only:
-:      026077 responder_iocap_no_input_no_output_initiator_iocap_display_yesno:
-:      026078 responder_iocap_no_input_no_output_initiator_iocap_keyboard_only:
-:      026079 responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output:
-:      026080 set_ssp_mode_justwork:
-0x60c1 026081 jam ssp_mode_just_work_flag ,mem_ssp_mode_flag 
-0x60c2 026082 fetch 1 ,mem_classic_bt_flag 
-0x60c3 026083 bbit1 flag_ssp_reject_justwork ,app_bt_disconnect 
-0x60c4 026084 rtn 
-:      026086 responder_iocap_display_yesno_initiator_iocap_display_yesno:
-:      026087 set_ssp_mode_numeric_comparison:
-0x60c5 026088 jam ssp_mode_ssp_pin_flag ,mem_ssp_mode_flag 
-0x60c6 026089 rtn 
-:      026091 responder_iocap_keyboard_only_initiator_iocap_display_yesno:
-:      026092 responder_iocap_keyboard_only_initiator_iocap_keyboard_only:
-:      026093 responder_iocap_keyboard_only_initiator_iocap_display_only:
-:      026094 responder_iocap_display_yesno_initiator_iocap_keyboard_only:
-:      026095 set_ssp_mode_passkey:
-0x60c7 026096 jam ssp_mode_passkey_entry_flag ,mem_ssp_mode_flag 
-0x60c8 026097 rtn 
-:      026100 classic_bt_set_reject_justwork_flag:
-0x60c9 026101 arg flag_ssp_reject_justwork ,queue 
-0x60ca 026102 branch classic_bluetooth_set_flag 
-:      026104 classic_bt_clr_reject_justwork_flag:
-0x60cb 026105 arg flag_ssp_reject_justwork ,queue 
-0x60cc 026106 branch classic_bluetooth_clr_flag 
-:      026108 classic_bluetooth_set_flag:
-0x60cd 026109 fetch 1 ,mem_classic_bt_flag 
-0x60ce 026110 qset1 pdata 
-0x60cf 026111 store 1 ,mem_classic_bt_flag 
-0x60d0 026112 rtn 
-:      026114 classic_bluetooth_clr_flag:
-0x60d1 026115 fetch 1 ,mem_classic_bt_flag 
-0x60d2 026116 qset0 pdata 
-0x60d3 026117 store 1 ,mem_classic_bt_flag 
-0x60d4 026118 rtn 
-:      026121 send_lmp_io_cap_req:
-0x60d5 026122 force 5 ,queue 
-0x60d6 026123 call send_lmpext 
-0x60d7 026124 fetch 3 ,mem_sp_iocap_local 
-0x60d8 026125 istore 3 ,contw 
-0x60d9 026126 branch send_lmp_request 
-:      026129 send_lmpext_sniff_subrating_req:
-0x60da 026131 rtn 
-:      026132 send_lmpext_sniff_subrating_res:
-0x60db 026133 force 9 ,queue 
-0x60dc 026134 call send_lmpext 
-0x60dd 026135 fetch 1 ,mem_subsniff_rate 
-0x60de 026136 istore 1 ,contw 
-0x60df 026137 fetch 2 ,mem_subsniff_tcmax 
-0x60e0 026138 istore 2 ,contw 
-0x60e1 026139 fetch 4 ,mem_subsniff_instant 
-0x60e2 026140 istore 4 ,contw 
-0x60e3 026141 branch send_lmp_reply 
-:      026143 send_lmp_name_res:
-0x60e4 026144 force 17 ,pdata 
-0x60e5 026145 call msg_send_lmp 
-0x60e6 026146 fetch 1 ,mem_lmi_opcode 
-0x60e7 026147 copy pdata ,temp 
-0x60e8 026148 beq 0x00 ,send_lmp_name_res_offset_ok 
-0x60e9 026149 beq 0x0e ,send_lmp_name_res_offset_ok 
-0x60ea 026150 beq 0x1c ,send_lmp_name_res_offset_ok 
-0x60eb 026151 rtn 
-:      026152 send_lmp_name_res_offset_ok:
-0x60ec 026153 istore 1 ,contw 
-0x60ed 026154 fetch 1 ,mem_local_name_length 
-0x60ee 026155 istore 1 ,contw 
-0x60ef 026156 arg 14 ,loopcnt 
-0x60f0 026157 setarg mem_local_name 
-0x60f1 026158 iadd temp ,contr 
-0x60f2 026159 call memcpy 
-0x60f3 026160 branch send_lmp_reply 
-:      026163 send_lmp_timing_accuracy_res:
-0x60f4 026164 force 3 ,pdata 
-0x60f5 026165 call msg_send_lmp 
-0x60f6 026166 setarg 0x0114 
-0x60f7 026167 istore 2 ,contw 
-0x60f8 026168 branch send_lmp_reply 
-:      026170 send_lmp_clkoffset_res:
-0x60f9 026172 force 3 ,pdata 
-0x60fa 026173 call msg_send_lmp 
-0x60fb 026174 fetch 4 ,mem_clke_bt 
-0x60fc 026175 isub clkn_bt ,pdata 
-0x60fd 026176 branch send_lmp_clkoffset_res_master ,master 
-0x60fe 026177 sub pdata ,0 ,pdata 
-:      026178 send_lmp_clkoffset_res_master:
-0x60ff 026180 rshift2 pdata ,pdata 
-0x6100 026181 set0 15 ,pdata 
-0x6101 026182 istore 2 ,contw 
-0x6102 026183 branch send_lmp_reply 
-:      026185 send_lmp_version_res:
-0x6103 026186 force 6 ,pdata 
-0x6104 026187 call msg_send_lmp 
-0x6105 026188 fetch 5 ,mem_lmp_version 
-0x6106 026189 istore 5 ,contw 
-0x6107 026190 branch send_lmp_reply 
-:      026192 send_lmp_features_res:
-0x6108 026193 force 9 ,pdata 
-0x6109 026194 call msg_send_lmp 
-0x610a 026195 fetch 8 ,mem_features 
-0x610b 026196 istore 8 ,contw 
-0x610c 026197 branch send_lmp_reply 
-:      026204 send_lmpext_features_req:
-0x610d 026205 force 12 ,queue 
-0x610e 026206 call send_lmpext 
-0x610f 026207 setarg 0x01 
-0x6110 026208 istore 1 ,contw 
-0x6111 026209 fetch 2 ,mem_lmpext_ssp_enable 
-0x6112 026210 istore 2 ,contw 
-0x6113 026211 setarg 0 
-0x6114 026212 istore 3 ,contw 
-0x6115 026213 setarg 0x00 
-0x6116 026214 istore 4 ,contw 
-0x6117 026215 branch send_lmp_request 
-:      026217 send_lmpext_packet_type_table_req:
-0x6118 026218 force 3 ,queue 
-0x6119 026219 call send_lmpext 
-0x611a 026220 fetch 1 ,mem_ptt 
-0x611b 026221 istore 1 ,contw 
-0x611c 026222 disable user 
-0x611d 026223 call send_lmp_request 
-0x611e 026224 nrtn user 
-0x611f 026225 nrtn master 
-0x6120 026226 fetch 1 ,mem_afh_cfg 
-0x6121 026227 rtnbit0 afh_cfg_on 
-0x6122 026228 call afh_init 
-0x6123 026229 branch afh_open_all_channels 
-:      026232 ssp_enable:
-0x6124 026233 bpatchx patch30_4 ,mem_patch30 
-0x6125 026234 fetch 1 ,mem_features + 6 
-0x6126 026235 set1 param_featrue_ssp ,pdata 
-0x6127 026236 store 1 ,mem_features + 6 
-0x6128 026237 setarg param_lmpext_ssp_enable 
-0x6129 026238 store 2 ,mem_lmpext_ssp_enable 
-0x612a 026239 rtn 
-:      026241 ssp_disable:
-0x612b 026242 bpatchx patch30_5 ,mem_patch30 
-0x612c 026243 fetch 1 ,mem_features + 6 
-0x612d 026244 set0 param_featrue_ssp ,pdata 
-0x612e 026245 store 1 ,mem_features + 6 
-0x612f 026246 setarg 0 
-0x6130 026247 store 2 ,mem_lmpext_ssp_enable 
-0x6131 026248 rtn 
-:      026250 afh_init:
-0x6132 026251 jam 0x3 ,mem_afh_cfg 
-0x6133 026252 setarg 0 
-0x6134 026253 store 4 ,mem_afh_timer 
-0x6135 026254 arg mem_afh_map_lo ,contw 
-0x6136 026255 call afh_reset_map 
-0x6137 026256 arg mem_afh_map_new ,contw 
-0x6138 026257 call afh_reset_map 
-0x6139 026258 arg mem_afh_classify_channel_map ,contw 
-0x613a 026259 call afh_reset_map 
-0x613b 026260 branch afh_clear_error_counter 
-:      026261 afh_open_all_channels:
-0x613c 026262 arg mem_afh_map_new ,contw 
-0x613d 026263 call afh_reset_map 
-0x613e 026264 call afh_clear_error_counter 
-0x613f 026265 branch afh_set_send_flag 
-:      026268 afh_reset_map:
-0x6140 026269 setarg 0xffffff 
-0x6141 026270 istore 3 ,contw 
-0x6142 026271 istore 3 ,contw 
-0x6143 026272 istore 3 ,contw 
-0x6144 026273 setarg 0x7f 
-0x6145 026274 istore 1 ,contw 
-0x6146 026275 rtn 
-:      026276 afh_clear_error_counter:
-0x6147 026277 setarg 0 
-0x6148 026278 store 2 ,mem_afh_error_total 
-0x6149 026279 rtn 
-:      026280 afh_set_send_flag:
-0x614a 026281 fetch 1 ,mem_afh_cfg 
-0x614b 026282 set1 send_lmp_set_afh ,pdata 
-0x614c 026283 store 1 ,mem_afh_cfg 
-0x614d 026284 rtn 
-:      026287 send_lmpext_pause_encryption_req:
-0x614e 026288 force 2 ,queue 
-0x614f 026289 call send_lmpext 
-0x6150 026290 nbranch send_lmp_reply ,master 
-0x6151 026292 branch send_lmp_request 
-:      026296 send_lmp_detach:
-0x6152 026297 force 2 ,pdata 
-0x6153 026298 call msg_send_lmp 
-0x6154 026299 fetch 1 ,mem_disconn_reason_send 
-0x6155 026300 istore 1 ,contw 
-0x6156 026301 call send_lmp_request 
-:      026302 prepare_disconnect:
-0x6157 026303 fetch 1 ,mem_op 
-0x6158 026304 set1 op_disconn ,pdata 
-0x6159 026305 store 1 ,mem_op 
-0x615a 026306 jam 50 ,mem_conn_timer 
-0x615b 026307 rtn 
-:      026310 send_lmp_no_payload:
-0x615c 026311 force 1 ,pdata 
-0x615d 026312 call msg_send_lmp 
-0x615e 026313 branch send_lmp_request 
-:      026314 send_lmp_nopayload_reply:
-0x615f 026315 force 1 ,pdata 
-0x6160 026316 call msg_send_lmp 
-0x6161 026317 branch send_lmp_reply 
-:      026320 send_lmp_encryption_mode_req:
-0x6162 026321 force 2 ,pdata 
-0x6163 026322 call msg_send_lmp 
-0x6164 026323 fetch 1 ,mem_state_map 
-0x6165 026324 isolate0 smap_encryption ,pdata 
-0x6166 026325 setflag true ,0 ,pdata 
-0x6167 026326 and_into 1 ,pdata 
-0x6168 026327 istore 1 ,contw 
-0x6169 026328 branch send_lmp_request 
-:      026331 send_lmp_superto:
-0x616a 026332 force 3 ,pdata 
-0x616b 026333 call msg_send_lmp 
-0x616c 026334 fetch 2 ,mem_supervision_to 
-0x616d 026335 istore 2 ,contw 
-0x616e 026336 branch send_lmp_request 
-:      026338 send_lmp_name_req:
-0x616f 026339 jam 250 ,mem_conn_timer 
-0x6170 026340 force 2 ,pdata 
-0x6171 026341 call msg_send_lmp 
-0x6172 026342 fetch 1 ,mem_name_offset 
-0x6173 026343 istore 1 ,contw 
-0x6174 026344 branch send_lmp_request 
-:      026346 send_lmp_test_control:
-0x6175 026347 force 10 ,pdata 
-0x6176 026348 call msg_send_lmp 
-0x6177 026349 arg mem_temp_payload ,contr 
-0x6178 026350 force 9 ,loopcnt 
-:      026351 send_lmp_test_control_loop:
-0x6179 026352 ifetch 1 ,contr 
-0x617a 026353 xor_into 0x55 ,pdata 
-0x617b 026354 istore 1 ,contw 
-0x617c 026355 loop send_lmp_test_control_loop 
-0x617d 026356 branch send_lmp_request 
-:      026358 send_lmp_quality_of_service_req:
-0x617e 026359 branch send_lmp_request 
-:      026360 send_lmp_unit_key:
-0x617f 026361 branch send_lmp_request 
-:      026363 send_lmp_slot_offset:
-0x6180 026364 rtn master 
-0x6181 026365 call calc_slot_offset 
-0x6182 026366 force 9 ,pdata 
-0x6183 026367 call msg_send_lmp 
-0x6184 026368 fetch 2 ,mem_slot_offset 
-0x6185 026369 istore 2 ,contw 
-0x6186 026370 fetch 3 ,mem_lap 
-0x6187 026371 istore 3 ,contw 
-0x6188 026372 fetch 1 ,mem_uap 
-0x6189 026373 istore 1 ,contw 
-0x618a 026374 fetch 2 ,mem_nap 
-0x618b 026375 istore 2 ,contw 
-0x618c 026376 bmark0 mark_switch_initiated ,send_lmp_slot_offset_reply 
-0x618d 026377 set0 mark_switch_initiated ,mark 
-0x618e 026378 call send_lmp_request 
-0x618f 026379 jam lmp_switch_req ,mem_lmo_opcode2 
-0x6190 026380 rtn 
-:      026381 send_lmp_slot_offset_reply:
-0x6191 026382 call send_lmp_reply 
-0x6192 026383 jam lmp_accepted ,mem_lmo_opcode2 
-0x6193 026384 jam lmp_switch_req ,mem_lmi_opcode2 
-0x6194 026385 rtn 
-:      026387 send_lmp_switch_req:
-0x6195 026388 arg 0x200 ,temp 
-0x6196 026389 branch switch_on_native ,master 
-0x6197 026390 deposit clke_bt 
-0x6198 026391 branch switch_slack 
-:      026392 switch_on_native:
-0x6199 026393 deposit clkn_bt 
-:      026394 switch_slack:
-0x619a 026395 deposit bt_clk 
-0x619b 026396 iadd temp ,pdata 
-0x619c 026397 and_into 0x1fc ,pdata 
-0x619d 026398 store 4 ,mem_sniff_anchor 
-0x619e 026399 force 5 ,pdata 
-0x619f 026400 call msg_send_lmp 
-0x61a0 026401 fetch 4 ,mem_sniff_anchor 
-0x61a1 026402 rshift pdata ,pdata 
-0x61a2 026403 istore 4 ,contw 
-0x61a3 026404 branch send_lmp_request 
-:      026406 send_lmp_sniff_req:
-0x61a4 026407 force 10 ,pdata 
-0x61a5 026408 call msg_send_lmp 
-0x61a6 026409 arg mem_sniff_payload ,contr 
-0x61a7 026410 ifetch 9 ,contr 
-0x61a8 026411 istore 9 ,contw 
-0x61a9 026412 branch send_lmp_request 
-:      026415 send_lmp_timing_accuracy_req:
-0x61aa 026417 force 3 ,pdata 
-0x61ab 026418 call msg_send_lmp 
-0x61ac 026419 setarg 0x0114 
-0x61ad 026420 istore 2 ,contw 
-0x61ae 026421 branch send_lmp_request 
-:      026423 send_lmp_unsniff_req:
-0x61af 026425 force 1 ,pdata 
-0x61b0 026426 call msg_send_lmp 
-0x61b1 026435 branch send_lmp_request 
-:      026438 send_lmp_max_slot:
-0x61b2 026439 force 2 ,pdata 
-0x61b3 026440 call msg_send_lmp 
-0x61b4 026441 fetch 1 ,mem_max_slot 
-0x61b5 026442 istore 1 ,contw 
-0x61b6 026443 branch send_lmp_request 
-:      026446 send_lmp_max_slot_req:
-0x61b7 026447 force 2 ,pdata 
-0x61b8 026448 call msg_send_lmp 
-0x61b9 026449 setarg 0x05 
-0x61ba 026450 istore 1 ,contw 
-0x61bb 026451 branch send_lmp_request 
-:      026454 send_lmp_inc_power:
-0x61bc 026455 force 2 ,pdata 
-0x61bd 026456 call msg_send_lmp 
-0x61be 026457 setarg 0x00 
-0x61bf 026458 istore 1 ,contw 
-0x61c0 026459 branch send_lmp_request 
-:      026462 send_lmp_setup_complete_by_module:
-0x61c1 026463 jam lmp_max_slot_req ,mem_lmo_opcode2 
-0x61c2 026464 rtn 
-:      026465 send_lmp_setup_complete:
-0x61c3 026466 fetch 1 ,mem_device_option 
-0x61c4 026467 sub pdata ,dvc_op_module ,null 
-0x61c5 026468 call send_lmp_setup_complete_by_module ,zero 
-0x61c6 026469 fetch 1 ,mem_state 
-0x61c7 026470 set1 state_conn_comp ,pdata 
-0x61c8 026471 store 1 ,mem_state 
-0x61c9 026472 copy clkn_bt ,pdata 
-0x61ca 026473 store 4 ,mem_aurand_send_delay_time 
-0x61cb 026474 fetch 1 ,mem_lmp_conn_state 
-0x61cc 026475 bbit1 sent_setup_complete ,send_lmp_setup_complete_has_sent 
-0x61cd 026476 set1 sent_setup_complete ,pdata 
-0x61ce 026477 store 1 ,mem_lmp_conn_state 
-0x61cf 026478 jam bt_evt_setup_complete ,mem_fifo_temp 
-0x61d0 026479 call ui_ipc_send_event 
-0x61d1 026480 force 1 ,pdata 
-0x61d2 026481 call msg_send_lmp 
-0x61d3 026482 branch send_lmp_request 
-:      026483 send_lmp_setup_complete_has_sent:
-0x61d4 026484 jam 0 ,mem_lmp_to_send 
-0x61d5 026485 rtn 
-:      026487 send_lmp_version_req:
-0x61d6 026488 force 6 ,pdata 
-0x61d7 026489 call msg_send_lmp 
-0x61d8 026490 fetch 5 ,mem_lmp_version 
-0x61d9 026491 istore 5 ,contw 
-0x61da 026492 branch send_lmp_request 
-:      026494 send_lmp_features_req:
-0x61db 026495 force 9 ,pdata 
-0x61dc 026496 call msg_send_lmp 
-0x61dd 026497 fetch 8 ,mem_features 
-0x61de 026498 istore 8 ,contw 
-0x61df 026499 branch send_lmp_request 
-:      026501 sp_master_send_io_cap_get:
-0x61e0 026502 jam sp_flag_commit ,mem_master_sp_flag 
-0x61e1 026503 fetch 1 ,mem_sp_local_key_invalid 
-0x61e2 026504 rtnne sp_key_valid 
-0x61e3 026505 jam sp_master_stat_start_done ,mem_master_sp_state 
-0x61e4 026506 rtn 
-:      026508 sp_master_send_io_cap_send:
-0x61e5 026509 call tid_initiate 
-0x61e6 026510 jam lmp_io_cap_req ,mem_lmo_opcode2 
-0x61e7 026511 jam sp_stat_key_send ,mem_master_sp_state 
-0x61e8 026512 rtn 
-:      026515 sp_master_send_lmp_encapsulated_header:
-0x61e9 026516 call tid_initiate 
-0x61ea 026517 jam lmp_encapsulated_header ,mem_lmo_opcode2 
-0x61eb 026518 jam sp_stat_random_send ,mem_master_sp_state 
-0x61ec 026519 rtn 
-:      026521 sp_master_commitment_compare:
-0x61ed 026522 arg mem_sp_calc_result_high ,rega 
-0x61ee 026523 arg mem_sp_confirm_remote ,regb 
-0x61ef 026524 arg 16 ,loopcnt 
-0x61f0 026525 call string_compare 
-0x61f1 026526 branch sp_master_commitment_compare_success ,zero 
-0x61f2 026527 jam sp_stat_null ,mem_master_sp_state 
-0x61f3 026528 call master_clear_mem_master_sp_flag 
-0x61f4 026529 jam pdu_not_allowed ,mem_lmo_reason2 
-0x61f5 026530 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
-0x61f6 026531 branch reject_lmp_packet 
-:      026532 sp_master_commitment_compare_success:
-0x61f7 026533 jam sp_stat_confirm_calc ,mem_master_sp_state 
-0x61f8 026534 call master_set_mem_master_sp_flag 
-0x61f9 026535 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
-0x61fa 026536 branch accept_lmp_msg 
-:      026540 sp_master_send_lmp_simple_pairing_number:
-0x61fb 026541 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
-0x61fc 026542 rtn 
-:      026546 sp_send_lmp_encapsulated_header:
-0x61fd 026549 jam lmp_encapsulated_header ,mem_lmo_opcode2 
-0x61fe 026551 rtn 
-:      026557 send_lmp_encapsulated_header:
-0x61ff 026558 jam 0 ,mem_sp_local_key_send_count 
-0x6200 026559 force 4 ,pdata 
-0x6201 026560 call msg_send_lmp 
-0x6202 026561 force encapsulated_major_type_p192 ,pdata 
-0x6203 026562 istore 1 ,contw 
-0x6204 026563 force encapsulated_minor_type_p192 ,pdata 
-0x6205 026564 istore 1 ,contw 
-0x6206 026565 force encapsulated_len_p192 ,pdata 
-0x6207 026566 istore 1 ,contw 
-0x6208 026567 call check_localsm 
-0x6209 026568 branch send_lmp_request ,true 
-0x620a 026569 branch send_lmp_reply 
-:      026571 send_lmp_encapsulated_payload:
-0x620b 026573 force 17 ,pdata 
-0x620c 026574 call msg_send_lmp 
-0x620d 026575 fetch 1 ,mem_sp_local_key_send_count 
-0x620e 026576 arg mem_sp_pubkey_local ,contr 
-0x620f 026577 iadd contr ,contr 
-0x6210 026578 ifetch 8 ,contr 
-0x6211 026579 istore 8 ,contw 
-0x6212 026580 ifetch 8 ,contr 
-0x6213 026581 istore 8 ,contw 
-0x6214 026582 fetch 1 ,mem_sp_local_key_send_count 
-0x6215 026583 increase 16 ,pdata 
-0x6216 026584 store 1 ,mem_sp_local_key_send_count 
-0x6217 026585 call check_localsm 
-0x6218 026586 branch send_lmp_request ,true 
-0x6219 026587 branch send_lmp_reply 
-:      026590 sp_send_lmp_simple_pairing_comfirm:
-0x621a 026591 jam sp_stat_random_recv ,mem_sp_state 
-0x621b 026592 jam lmp_simple_pairing_confirm ,mem_lmo_opcode2 
-0x621c 026593 rtn 
-:      026594 send_lmp_simple_pairing_comfirm:
-0x621d 026597 force 17 ,pdata 
-0x621e 026598 call msg_send_lmp 
-0x621f 026599 arg mem_sp_calc_result_high ,contr 
-0x6220 026600 ifetch 8 ,contr 
-0x6221 026601 istore 8 ,contw 
-0x6222 026602 ifetch 8 ,contr 
-0x6223 026603 istore 8 ,contw 
-0x6224 026604 branch send_lmp_reply 
-:      026606 sp_send_lmp_simple_pairing_number:
-0x6225 026607 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
-0x6226 026608 rtn 
-:      026610 send_lmp_simple_pairing_number:
-0x6227 026612 call check_localsm 
-0x6228 026613 call sp_local_random_key_generator ,true 
-0x6229 026614 force 17 ,pdata 
-0x622a 026615 call msg_send_lmp 
-0x622b 026616 arg mem_sp_random_local ,contr 
-0x622c 026617 ifetch 8 ,contr 
-0x622d 026618 istore 8 ,contw 
-0x622e 026619 ifetch 8 ,contr 
-0x622f 026620 istore 8 ,contw 
-0x6230 026621 call check_localsm 
-0x6231 026622 nbranch send_lmp_reply ,true 
-0x6232 026623 branch send_lmp_request ,true 
-:      026625 master_sp_sm_end:
-0x6233 026627 jam sp_stat_done ,mem_master_sp_state 
-:      026628 sp_aurand_send:
-0x6234 026629 call tid_initiate 
-0x6235 026630 jam lmp_au_rand ,mem_lmo_opcode2 
-0x6236 026631 call check_localsm_master 
-0x6237 026632 branch sp_master_key_prarm_push ,true 
-0x6238 026633 branch sp_link_key_prarm_push 
-:      026634 master_sp_send_lmp_dhkey_check:
-0x6239 026635 call tid_reply 
-:      026636 sp_send_lmp_dhkey_check:
-0x623a 026637 jam lmp_dhkey_check ,mem_lmo_opcode2 
-0x623b 026638 rtn 
-:      026639 send_lmp_dhkey_check:
-0x623c 026641 force 17 ,pdata 
-0x623d 026642 call msg_send_lmp 
-0x623e 026643 arg mem_sp_calc_result_high ,contr 
-0x623f 026644 ifetch 8 ,contr 
-0x6240 026645 istore 8 ,contw 
-0x6241 026646 ifetch 8 ,contr 
-0x6242 026647 istore 8 ,contw 
-0x6243 026648 call check_localsm 
-0x6244 026649 nbranch send_lmp_reply ,true 
-0x6245 026650 branch send_lmp_request ,true 
-:      026652 send_lmp_enc_key_size_mask_res:
-0x6246 026653 force 3 ,pdata 
-0x6247 026654 call msg_send_lmp 
-0x6248 026655 setarg 0xfffe 
-0x6249 026656 istore 2 ,contw 
-0x624a 026657 branch send_lmp_reply 
-:      026659 send_lmp_auto_rate:
-0x624b 026660 branch send_lmp_request 
-:      026661 send_lmp_clkoffset_req:
-0x624c 026662 branch send_lmp_request 
-:      026663 send_lmp_quality_of_service:
-0x624d 026664 branch send_lmp_request 
-:      026665 send_lmp_test_activate:
-0x624e 026666 branch send_lmp_request 
-:      026671 send_lmp_comb_key:
-0x624f 026672 call generate_random_number 
-0x6250 026673 arg mem_lap ,rega 
-0x6251 026674 call generate_linkkey 
-0x6252 026675 force 17 ,pdata 
-0x6253 026676 call msg_send_lmp 
-0x6254 026677 arg mem_kinit ,rega 
-0x6255 026678 arg mem_random_number ,regb 
-0x6256 026679 call xor16 
-0x6257 026680 nbranch send_lmp_follow ,master 
-0x6258 026681 branch send_lmp_tid 
-:      026683 send_lmp_inrand:
-0x6259 026684 call generate_random_number 
-0x625a 026685 arg mem_plap ,rega 
-0x625b 026686 call generate_kinit 
-:      026687 send_lmp_rand:
-0x625c 026688 force 17 ,pdata 
-0x625d 026689 call msg_send_lmp 
-0x625e 026690 arg mem_random_number ,contr 
-0x625f 026691 call memcpy16 
-0x6260 026692 fetch 1 ,mem_conn_sm 
-0x6261 026693 beq conn_sm_auth_wait ,send_lmp_request 
-0x6262 026694 beq conn_sm_pairing_wait ,send_lmp_request 
-0x6263 026695 branch send_lmp_tid 
-:      026697 send_lmp_aurand:
-0x6264 026698 fetch 1 ,mem_pairing_auth 
-0x6265 026699 branch send_lmp_aurand_notpairing ,blank 
-0x6266 026700 call check_localsm 
-0x6267 026701 call tid_initiate ,true 
-0x6268 026702 ncall tid_reply ,true 
-0x6269 026703 branch send_lmp_aurand_common 
-:      026704 send_lmp_aurand_notpairing:
-0x626a 026705 call tid_initiate 
-:      026706 send_lmp_aurand_common:
-0x626b 026707 call generate_random_number 
-0x626c 026708 branch send_lmp_rand 
-:      026710 send_lmp_sres:
-0x626d 026711 arg mem_lap ,rega 
-0x626e 026712 call function_e1 
-0x626f 026713 force 5 ,pdata 
-0x6270 026714 call msg_send_lmp 
-0x6271 026715 fetch 4 ,mem_input_store 
-0x6272 026716 istore 4 ,contw 
-0x6273 026717 arg mem_sres_tid ,temp 
-0x6274 026718 call special_tid_store 
-0x6275 026719 call copy_aco 
-0x6276 026720 call check_localsm 
-0x6277 026721 branch send_lmp_sres_master ,true 
-0x6278 026722 jam done_encryp ,mem_wait_encryption 
-0x6279 026723 fetch 1 ,mem_pairing_auth 
-0x627a 026724 rtn blank 
-0x627b 026725 jam lmp_au_rand ,mem_lmo_opcode2 
-:      026726 send_lmp_sres_master:
-0x627c 026727 fetch 1 ,mem_link_key_exists 
-0x627d 026728 rtn blank 
-:      026729 send_lmp_sres_startenc:
-0x627e 026730 call check_localsm 
-0x627f 026731 nbranch send_lmp_sres_startenc_slave ,true 
-0x6280 026732 fetch 1 ,mem_auth_enable 
-0x6281 026733 rtn blank 
-0x6282 026734 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
-0x6283 026735 rtn 
-:      026736 send_lmp_sres_startenc_slave:
-0x6284 026737 rtnmark0 mark_slave_in_rand_accepted 
-0x6285 026738 set0 mark_slave_in_rand_accepted ,mark 
-0x6286 026739 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
-0x6287 026740 rtn 
-:      026744 send_lmp_start_encryption:
-0x6288 026745 call generate_random_number 
-0x6289 026746 call function_e3 
-0x628a 026747 force 17 ,pdata 
-0x628b 026748 call msg_send_lmp 
-0x628c 026749 arg mem_random_number ,contr 
-0x628d 026750 call memcpy16 
-0x628e 026751 branch send_lmp_tid 
-:      026753 send_lmp_stop_encryption_req:
-0x628f 026754 force 1 ,pdata 
-0x6290 026755 call msg_send_lmp 
-0x6291 026756 branch send_lmp_tid 
-:      026758 send_lmp_encryption_key_size_req:
-0x6292 026759 force 2 ,pdata 
-0x6293 026760 call msg_send_lmp 
-0x6294 026761 force 16 ,pdata 
-0x6295 026762 istore 1 ,contw 
-0x6296 026763 store 1 ,mem_key_size 
-0x6297 026764 branch send_lmp_tid 
-:      026766 msg_send_lmp:
-0x6298 026768 lshift3 pdata ,pdata 
-0x6299 026769 or_into 0x07 ,pdata 
-0x629a 026770 store 1 ,mem_lmo_header_length 
-0x629b 026771 arg 17 ,loopcnt 
-0x629c 026772 arg mem_lmo_payload ,contw 
-0x629d 026773 call clear_mem 
-0x629e 026774 arg mem_lmo_payload ,contw 
-0x629f 026775 rtn 
-:      026777 send_lmpext:
-0x62a0 026778 and pdata ,0x7f ,rega 
-0x62a1 026779 jam lmp_escape ,mem_lmp_to_send 
-0x62a2 026780 deposit queue 
-0x62a3 026781 call msg_send_lmp 
-0x62a4 026782 deposit rega 
-0x62a5 026783 istore 1 ,contw 
-0x62a6 026784 rtn 
-:      026786 send_lmp_follow:
-0x62a7 026787 fetch 1 ,mem_lmp_to_send 
-0x62a8 026788 lshift pdata ,pdata 
-0x62a9 026789 fetcht 1 ,mem_state_map 
-0x62aa 026790 isolate1 smap_lmptid ,temp 
-0x62ab 026791 setflag true ,0 ,pdata 
-0x62ac 026792 branch send_lmp_exit 
-:      026795 send_lmp_tid:
-0x62ad 026796 fetcht 1 ,mem_state_map 
-0x62ae 026797 and_into 1 ,temp 
-0x62af 026798 branch send_lmp_end 
-:      026800 send_lmp_reply:
-0x62b0 026801 force 0 ,temp 
-0x62b1 026802 branch send_lmp_end 
-:      026804 send_lmp_request:
-0x62b2 026805 force 1 ,temp 
-:      026806 send_lmp_end:
-0x62b3 026807 fetch 1 ,mem_lmp_to_send 
-0x62b4 026808 lshift pdata ,pdata 
-0x62b5 026809 setflag master ,0 ,pdata 
-0x62b6 026810 ixor temp ,pdata 
-:      026811 send_lmp_exit:
-0x62b7 026812 store 1 ,mem_lmo_header_opcode 
-0x62b8 026813 jam 0 ,mem_lmp_to_send 
-0x62b9 026814 call lmo_fifo_process_lmo0empty 
-0x62ba 026815 enable user 
-0x62bb 026816 rtn 
-:      026819 lmo_fifo_check:
-0x62bc 026820 fetch 1 ,mem_lmo_opcode2 
-0x62bd 026821 rtn blank 
-0x62be 026822 call lmo_fifo_process 
-0x62bf 026823 fetch 1 ,mem_lmo_opcode2 
-0x62c0 026824 rtn 
-:      026826 lmo_fifo_process:
-0x62c1 026827 bpatchx patch30_6 ,mem_patch30 
-0x62c2 026828 fetch 1 ,mem_lmp_to_send 
-0x62c3 026829 branch lmo_fifo_process_lmo0empty ,blank 
-0x62c4 026830 fetch 1 ,mem_lmo_opcode1 
-0x62c5 026831 nrtn blank 
-0x62c6 026832 branch lmo_fifo_process_lmo2to1 
-:      026833 lmo_fifo_process_lmo0empty:
-0x62c7 026834 fetch 1 ,mem_lmo_opcode1 
-0x62c8 026835 branch lmo_fifo_process_lmo1_empty ,blank 
-0x62c9 026836 fetch 3 ,mem_lmo_opcode1 
-0x62ca 026837 store 3 ,mem_lmp_to_send 
-0x62cb 026838 fetcht 1 ,mem_lmo_tid1 
-0x62cc 026839 fetch 1 ,mem_state_map 
-0x62cd 026840 set0 smap_lmptid ,pdata 
-0x62ce 026841 ior temp ,pdata 
-0x62cf 026842 store 1 ,mem_state_map 
-0x62d0 026843 jam 0 ,mem_lmo_opcode1 
-:      026844 lmo_fifo_process_lmo2to1:
-0x62d1 026845 fetch 1 ,mem_lmo_opcode2 
-0x62d2 026846 rtn blank 
-0x62d3 026847 fetch 4 ,mem_lmo_opcode2 
-0x62d4 026848 store 4 ,mem_lmo_opcode1 
-0x62d5 026849 jam 0 ,mem_lmo_opcode2 
-0x62d6 026850 rtn 
-:      026851 lmo_fifo_process_lmo1_empty:
-0x62d7 026852 fetch 1 ,mem_lmo_opcode2 
-0x62d8 026853 rtn blank 
-0x62d9 026854 fetch 3 ,mem_lmo_opcode2 
-0x62da 026855 store 3 ,mem_lmp_to_send 
-0x62db 026856 fetcht 1 ,mem_lmo_tid2 
-0x62dc 026857 fetch 1 ,mem_state_map 
-0x62dd 026858 set0 smap_lmptid ,pdata 
-0x62de 026859 ior temp ,pdata 
-0x62df 026860 store 1 ,mem_state_map 
-0x62e0 026861 jam 0 ,mem_lmo_opcode2 
-0x62e1 026862 rtn 
-:      026865 special_tid_store:
-0x62e2 026866 bpatchx patch30_7 ,mem_patch30 
-0x62e3 026867 fetch 1 ,mem_state_map 
-0x62e4 026868 copy pdata ,regc 
-0x62e5 026869 ifetch 1 ,temp 
-0x62e6 026870 call pop_tid_follow 
-0x62e7 026871 call send_lmp_follow 
-0x62e8 026872 copy regc ,pdata 
-0x62e9 026873 store 1 ,mem_state_map 
-0x62ea 026874 rtn 
-:      026876 tid_reply:
-0x62eb 026877 fetcht 1 ,mem_state_map 
-0x62ec 026878 set0 smap_lmptidinit ,temp 
-0x62ed 026879 storet 1 ,mem_state_map 
-0x62ee 026880 rtn 
-:      026882 tid_initiate:
-0x62ef 026883 fetcht 1 ,mem_state_map 
-0x62f0 026884 set1 smap_lmptidinit ,temp 
-0x62f1 026885 storet 1 ,mem_state_map 
-0x62f2 026886 rtn 
-:      026889 tid_check:
-0x62f3 026890 nsetflag master ,smap_lmptid ,pdata 
-0x62f4 026891 fetcht 1 ,mem_state_map 
-0x62f5 026892 ixor temp ,pdata 
-0x62f6 026893 isolate1 smap_lmptid ,pdata 
-0x62f7 026894 rtn 
-:      026897 tid_set_reply:
-0x62f8 026898 fetch 1 ,mem_state_map 
-0x62f9 026899 setflag master ,smap_lmptid ,pdata 
-0x62fa 026900 store 1 ,mem_state_map 
-0x62fb 026901 rtn 
-:      026904 check_localsm:
-0x62fc 026905 fetch 1 ,mem_sp_localsm 
-0x62fd 026906 compare local_statemachine ,pdata ,0x7f 
-0x62fe 026907 rtn 
-:      026908 setlocalsm_master:
-0x62ff 026909 fetch 1 ,mem_sp_localsm 
-0x6300 026910 set1 7 ,pdata 
-0x6301 026911 store 1 ,mem_sp_localsm 
-0x6302 026912 rtn 
-:      026913 setlocalsm_slave:
-0x6303 026914 fetch 1 ,mem_sp_localsm 
-0x6304 026915 set0 7 ,pdata 
-0x6305 026916 store 1 ,mem_sp_localsm 
-0x6306 026917 rtn 
-:      026918 check_localsm_master:
-0x6307 026919 fetch 1 ,mem_sp_localsm 
-0x6308 026920 isolate1 7 ,pdata 
-0x6309 026921 store 1 ,mem_sp_localsm 
-0x630a 026922 rtn 
-:      026924 generate_random_number:
-0x630b 026926 arg mem_random_number ,contw 
-:      026927 generate_random:
-0x630c 026928 force 16 ,loopcnt 
-:      026929 generate_random_another:
-:      026930 generate_random_loop:
-0x630d 026931 random pdata 
-0x630e 026932 istore 1 ,contw 
-0x630f 026933 loop generate_random_another 
-0x6310 026934 rtn 
-:      026936 generate_linkkey:
-0x6311 026937 call function_e21 
-0x6312 026938 arg mem_link_key ,rega 
-0x6313 026939 arg mem_input_store ,regb 
-0x6314 026940 ifetch 8 ,rega 
-0x6315 026941 fetcht 1 ,mem_state 
-0x6316 026942 nsetflag blank ,state_combkey ,temp 
-0x6317 026943 storet 1 ,mem_state 
-0x6318 026944 copy rega ,contw 
-0x6319 026945 call xor16 
-0x631a 026946 branch generate_linkkey_continue 
-:      026952 process_conn_sm:
-0x631b 026954 bpatchx patch31_0 ,mem_patch31 
-0x631c 026956 call lmo_fifo_check 
-0x631d 026957 nrtn blank 
-:      026958 process_conn_sm_continue:
-0x631e 026959 fetch 1 ,mem_conn_sm 
-0x631f 026960 rtn blank 
-0x6320 026964 beq conn_sm_send_conn_req ,host_create_conn_send_conn_req 
-0x6321 026965 beq conn_sm_wait_conn_accept ,host_create_conn_wait_accept 
-0x6322 026966 beq conn_sm_send_features ,host_create_conn_send_features 
-0x6323 026967 beq conn_sm_wait_features_res ,host_create_conn_waiting 
-0x6324 026968 beq conn_sm_send_switch ,host_create_conn_send_switch 
-0x6325 026969 beq conn_sm_auth_pair ,host_create_conn_auth_pair 
-0x6326 026970 beq conn_sm_auth_pair_wait ,host_create_conn_auth_pair_wait 
-0x6327 026971 beq conn_sm_encrypt ,host_create_conn_encrypt 
-0x6328 026972 beq conn_sm_encrypt_wait ,host_create_conn_encrypt_wait 
-0x6329 026973 beq conn_sm_encrypt_wait_clear ,host_create_conn_encrypt_wait_clear 
-0x632a 026974 beq conn_sm_send_setup_complete ,host_create_conn_send_setup_complete 
-0x632b 026975 beq conn_sm_wait_setup_complete ,host_create_conn_wait_setup_complete 
-0x632c 026976 beq conn_sm_detach_delay ,host_create_conn_master_detach 
-0x632d 026977 beq conn_sm_send_version ,host_create_conn_send_version 
-0x632e 026978 beq conn_sm_wait_version ,host_create_conn_waiting 
-0x632f 026979 beq conn_sm_wait_switch_after_host_connection ,host_creat_conn_wait_switch 
-0x6330 026980 beq conn_sm_send_features_ext ,host_creat_conn_send_feat_ext 
-0x6331 026981 beq conn_sm_wait_features_ext ,host_create_conn_waiting 
-0x6332 026982 beq conn_sm_pairing ,host_create_conn_pairing 
-0x6333 026983 beq conn_sm_pairing_wait ,host_create_conn_pairing_wait 
-0x6334 026984 beq conn_sm_auth ,host_create_conn_auth 
-0x6335 026985 beq conn_sm_auth_wait ,host_create_conn_auth_wait 
-0x6336 026986 beq conn_sm_done ,host_create_conn_done 
-0x6337 026987 beq conn_sm_wait_done ,host_create_conn_done_wait 
-0x6338 026988 jam conn_sm_standby ,mem_conn_sm 
-0x6339 026990 rtn 
-:      026991 host_create_conn_done:
-0x633a 026992 fetch 1 ,mem_lmp_conn_state 
-0x633b 026993 rtnbit0 received_setup_complete 
-0x633c 026994 rtnbit0 sent_setup_complete 
-0x633d 026995 jam conn_sm_standby ,mem_conn_sm 
-0x633e 026996 call host_conn_judge_encrypt 
-0x633f 026997 branch scheduler_start_upper_sm 
-:      026999 host_conn_judge_encrypt:
-0x6340 027000 fetch 1 ,mem_connection_options 
-0x6341 027001 rtnbit0 connection_encrypt 
-0x6342 027002 jam conn_sm_encrypt_wait ,mem_conn_sm 
-0x6343 027003 rtn 
-:      027005 host_create_conn_done_wait:
-0x6344 027006 arg enpt_delay_timer ,queue 
-0x6345 027007 call timer_check 
-0x6346 027008 nrtn blank 
-0x6347 027009 jam conn_sm_done ,mem_conn_sm 
-0x6348 027010 rtn 
-:      027012 host_create_conn_auth:
-0x6349 027013 fetch 1 ,mem_connection_options 
-0x634a 027014 set0 connection_auth ,pdata 
-0x634b 027015 store 1 ,mem_connection_options 
-0x634c 027016 jam conn_sm_auth_wait ,mem_conn_sm 
-0x634d 027017 jam lmp_au_rand ,mem_lmo_opcode2 
-0x634e 027018 rtn 
-:      027019 host_create_conn_auth_wait:
-0x634f 027020 rtn 
-:      027021 host_create_conn_pairing:
-0x6350 027022 fetch 1 ,mem_pincode_state 
-0x6351 027023 rtnne pincode_state_pincode_ready 
-0x6352 027024 call host_auth 
-0x6353 027025 jam conn_sm_pairing_wait ,mem_conn_sm 
-0x6354 027026 rtn 
-:      027028 host_create_conn_pairing_wait:
-0x6355 027029 rtn 
-:      027030 host_creat_conn_send_feat_ext:
-0x6356 027031 jam conn_sm_wait_features_ext ,mem_conn_sm 
-0x6357 027032 jam lmp_ext_features_req ,mem_lmo_opcode2 
-0x6358 027033 rtn 
-:      027034 host_create_conn_send_version:
-0x6359 027035 jam conn_sm_wait_version ,mem_conn_sm 
-0x635a 027036 jam lmp_version_req ,mem_lmo_opcode2 
-0x635b 027037 rtn 
-:      027039 host_creat_conn_wait_switch:
-0x635c 027040 fetch 1 ,mem_switch_flag 
-0x635d 027041 rtneq switch_flag_init 
-0x635e 027042 beq switch_flag_accept ,host_create_conn_switch_accept 
-0x635f 027043 arg switch_wait_timer ,queue 
-0x6360 027044 call timer_check 
-0x6361 027045 nrtn blank 
-0x6362 027046 jam switch_flag_init ,mem_switch_flag 
-0x6363 027047 branch host_create_conn_switch 
-:      027048 host_create_conn_switch_accept:
-0x6364 027049 rtn master 
-0x6365 027050 branch host_create_conn_auth_pair 
-:      027052 host_create_conn_send_features:
-0x6366 027053 jam conn_sm_wait_features_res ,mem_conn_sm 
-0x6367 027054 jam lmp_features_req ,mem_lmo_opcode2 
-0x6368 027055 rtn 
-:      027056 host_create_conn_send_switch:
-0x6369 027057 jam lmp_switch_req ,mem_lmo_opcode2 
-0x636a 027058 set1 mark_switch_initiated ,mark 
-0x636b 027059 jam conn_sm_wait_conn_accept ,mem_conn_sm 
-0x636c 027060 setarg 0x1ff 
-0x636d 027061 store 2 ,mem_soft_timer 
-0x636e 027062 rtn 
-:      027063 host_create_conn_send_conn_req:
-0x636f 027064 jam conn_sm_wait_conn_accept ,mem_conn_sm 
-0x6370 027065 jam 0xff ,mem_soft_timer 
-0x6371 027066 set0 mark_reconn_recieve_switch ,mark 
-0x6372 027067 jam lmp_host_connection_req ,mem_lmo_opcode2 
-0x6373 027068 branch init_lmp_reinit 
-:      027069 host_create_conn_wait_accept:
-0x6374 027070 rtnmark1 mark_reconn_recieve_switch 
-0x6375 027071 fetch 2 ,mem_soft_timer 
-0x6376 027072 sub pdata ,1 ,pdata 
-0x6377 027073 branch host_create_conn_resend ,zero 
-0x6378 027074 store 2 ,mem_soft_timer 
-0x6379 027075 rtn 
-:      027076 host_create_conn_resend:
-0x637a 027077 jam conn_sm_send_switch ,mem_conn_sm 
-0x637b 027078 rtn 
-:      027079 host_create_conn_waiting:
-0x637c 027081 rtn 
-:      027083 host_create_conn_switch:
-0x637d 027084 fetch 1 ,mem_lmp_conn_state 
-0x637e 027085 rtnbit0 sent_setup_complete 
-0x637f 027086 rtnbit0 received_setup_complete 
-0x6380 027087 fetch 1 ,mem_connection_options 
-0x6381 027088 set0 connection_switch ,pdata 
-0x6382 027089 store 1 ,mem_connection_options 
-0x6383 027090 jam lmp_switch_req ,mem_lmo_opcode2 
-0x6384 027091 jam conn_sm_wait_switch_after_host_connection ,mem_conn_sm 
-0x6385 027092 rtn 
-:      027094 host_create_conn_send_setup_complete:
-0x6386 027095 jam conn_sm_wait_setup_complete ,mem_conn_sm 
-0x6387 027096 jam lmp_setup_complete ,mem_lmo_opcode2 
-0x6388 027097 rtn 
-:      027099 host_create_conn_wait_setup_complete:
-0x6389 027100 fetch 1 ,mem_lmp_conn_state 
-0x638a 027101 rtnbit0 received_setup_complete 
-0x638b 027102 jam conn_sm_standby ,mem_conn_sm 
-0x638c 027104 rtn 
-:      027105 host_create_conn_wait_setup_complete_rtn:
-0x638d 027106 jam conn_sm_auth_pair ,mem_conn_sm 
-0x638e 027107 rtn 
-:      027109 host_create_conn_master_detach:
-0x638f 027110 fetch 1 ,mem_soft_timer 
-0x6390 027111 increase -1 ,pdata 
-0x6391 027112 branch host_create_conn_send_detach ,blank 
-0x6392 027113 store 1 ,mem_soft_timer 
-0x6393 027114 rtn 
-:      027115 host_create_conn_send_detach:
-0x6394 027116 jam lmp_detach ,mem_lmo_opcode2 
-0x6395 027117 jam local_host ,mem_disconn_reason_send 
-0x6396 027118 jam 0 ,mem_conn_sm 
-0x6397 027119 rtn 
-:      027120 host_create_conn_auth_pair:
-0x6398 027122 fetch 1 ,mem_connection_options 
-0x6399 027123 bbit1 connection_switch ,host_create_conn_switch 
-0x639a 027124 bbit1 connection_auth ,host_create_conn_auth_pair_true 
-:      027125 host_create_conn_sm_done:
-0x639b 027126 jam conn_sm_done ,mem_conn_sm 
-0x639c 027127 rtn 
-:      027128 host_create_conn_auth_pair_true:
-0x639d 027129 fetch 1 ,mem_link_key_exists 
-0x639e 027130 branch host_create_conn_auth_pair_nokey ,blank 
-0x639f 027131 fetch 1 ,mem_lmp_conn_state 
-0x63a0 027132 rtnbit0 sent_setup_complete 
-0x63a1 027133 rtnbit0 received_setup_complete 
-0x63a2 027134 fetch 4 ,mem_aurand_send_delay_time 
-0x63a3 027135 arg 100 ,temp 
-0x63a4 027136 iadd temp ,temp 
-0x63a5 027137 copy clkn_bt ,pdata 
-0x63a6 027138 isub temp ,null 
-0x63a7 027139 nrtn positive 
-0x63a8 027140 branch host_create_conn_auth 
-:      027144 host_create_conn_auth_pair_nokey:
-0x63a9 027145 jam conn_sm_pairing ,mem_conn_sm 
-0x63aa 027146 jam 4 ,mem_pin_length 
-0x63ab 027147 setarg 0x3030 
-0x63ac 027148 store 2 ,mem_pin 
-0x63ad 027149 istore 2 ,contw 
-0x63ae 027150 jam pincode_state_pincode_ready ,mem_pincode_state 
-0x63af 027151 branch host_create_conn_pairing 
-:      027153 host_create_conn_auth_pair_wait:
-0x63b0 027154 rtn 
-:      027155 host_create_conn_encrypt:
-0x63b1 027156 fetch 1 ,mem_connection_options 
-0x63b2 027157 bbit1 connection_encrypt ,host_create_conn_encrypt_start 
-0x63b3 027158 jam conn_sm_done ,mem_conn_sm 
-0x63b4 027159 rtn 
-:      027161 host_create_conn_encrypt_start:
-0x63b5 027162 fetch 1 ,mem_connection_options 
-0x63b6 027163 set0 connection_encrypt ,pdata 
-0x63b7 027164 store 1 ,mem_connection_options 
-0x63b8 027165 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
-0x63b9 027166 rtn 
-:      027168 host_create_conn_encrypt_wait:
-0x63ba 027169 fetch 1 ,mem_wait_encryption 
-0x63bb 027170 rtn blank 
-0x63bc 027171 jam conn_sm_standby ,mem_conn_sm 
-0x63bd 027172 branch host_create_conn_encrypt_start 
-:      027174 host_create_conn_encrypt_wait_clear:
-0x63be 027175 jam conn_sm_send_setup_complete ,mem_conn_sm 
-0x63bf 027176 rtn 
-:      027178 host_auth:
-0x63c0 027179 fetch 1 ,mem_op 
-0x63c1 027180 bbit1 op_inrand_req ,remote_auth 
-0x63c2 027181 call tid_initiate 
-0x63c3 027182 jam lmp_in_rand ,mem_lmo_opcode2 
-0x63c4 027183 branch cmd_exit 
-:      027184 remote_auth:
-0x63c5 027185 fetch 1 ,mem_op 
-0x63c6 027186 set0 op_inrand_req ,pdata 
-0x63c7 027187 store 1 ,mem_op 
-0x63c8 027188 call lmp_accept_inrand 
-0x63c9 027189 call tid_set_reply 
-0x63ca 027190 branch cmd_exit 
-:      027192 pincode_reinit:
-0x63cb 027193 setarg 4 
-0x63cc 027194 store 1 ,mem_pin_length 
-0x63cd 027195 setarg 0x3030 
-0x63ce 027196 istore 2 ,contw 
-0x63cf 027197 istore 2 ,contw 
-0x63d0 027198 rtn 
-:      027204 twspi_reset:
-0x63d1 027205 bpatchx patch31_4 ,mem_patch31 
-0x63d2 027206 hfetch 1 ,core_gpio_oe3 
-0x63d3 027207 arg 0x06 ,temp 
-0x63d4 027208 ior temp ,pdata 
-0x63d5 027209 hstore 1 ,core_gpio_oe3 
-0x63d6 027210 hfetch 1 ,core_gpio_out3 
-0x63d7 027211 ior temp ,pdata 
-0x63d8 027212 hstore 1 ,core_gpio_out3 
-0x63d9 027213 call twspi_disable 
-0x63da 027214 hfetch 1 ,core_gpio_out3 
-0x63db 027215 set0 1 ,pdata 
-0x63dc 027216 set0 2 ,pdata 
-0x63dd 027217 hstore 1 ,core_gpio_out3 
-0x63de 027218 nop 30 
-0x63df 027219 branch twspi_enable 
-:      027221 twspi_reset2:
-0x63e0 027222 hfetch 1 ,core_gpio_oe3 
-0x63e1 027223 arg 0xc0 ,temp 
-0x63e2 027224 ior temp ,pdata 
-0x63e3 027225 hstore 1 ,core_gpio_oe3 
-0x63e4 027226 hfetch 1 ,core_gpio_out3 
-0x63e5 027227 ior temp ,pdata 
-0x63e6 027228 hstore 1 ,core_gpio_out3 
-0x63e7 027229 call twspi_disable 
-0x63e8 027230 hfetch 1 ,core_gpio_out3 
-0x63e9 027231 set0 6 ,pdata 
-0x63ea 027232 set0 7 ,pdata 
-0x63eb 027233 hstore 1 ,core_gpio_out3 
-0x63ec 027234 nop 30 
-0x63ed 027235 branch twspi_enable2 
-:      027237 twspi_disable:
-0x63ee 027238 hfetch 1 ,core_gpio_sel1 
-0x63ef 027239 and pdata ,0xfc ,pdata 
-0x63f0 027240 hstore 1 ,core_gpio_sel1 
-0x63f1 027241 rtn 
-:      027242 twspi_enable:
-0x63f2 027243 hfetch 1 ,core_gpio_sel1 
-0x63f3 027244 or pdata ,0x01 ,pdata 
-0x63f4 027245 hstore 1 ,core_gpio_sel1 
-0x63f5 027246 rtn 
-:      027247 twspi_enable2:
-0x63f6 027248 hfetch 1 ,core_gpio_sel1 
-0x63f7 027249 or pdata ,0x03 ,pdata 
-0x63f8 027250 set0 4 ,pdata 
-0x63f9 027251 hstore 1 ,core_gpio_sel1 
-0x63fa 027252 rtn 
-:      027256 sensor_read:
-0x63fb 027257 copy pdata ,regb 
-0x63fc 027258 call spi_ncs_enable 
-0x63fd 027259 nop 100 
-0x63fe 027260 copy regb ,pdata 
-0x63ff 027261 call twspi_read 
-0x6400 027262 copy pdata ,regb 
-0x6401 027263 call spi_ncs_disable 
-0x6402 027264 nop 100 
-0x6403 027265 copy regb ,pdata 
-0x6404 027266 rtn 
-:      027268 sensor_write:
-0x6405 027269 copy pdata ,regb 
-0x6406 027270 call spi_ncs_enable 
-0x6407 027271 nop 100 
-0x6408 027272 copy regb ,pdata 
-0x6409 027273 call twspi_write 
-0x640a 027274 call spi_ncs_disable 
-0x640b 027275 nop 100 
-0x640c 027276 rtn 
-:      027279 spi_ncs_gpio_init:
-0x640d 027280 fetcht 1 ,mem_spi_ncs_gpio 
-0x640e 027281 branch gpio_config_output 
-:      027284 spi_ncs_enable:
-0x640f 027285 fetcht 1 ,mem_spi_ncs_gpio 
-0x6410 027286 branch gpio_out_active 
-:      027289 spi_ncs_disable:
-0x6411 027290 fetcht 1 ,mem_spi_ncs_gpio 
-0x6412 027291 branch gpio_out_inactive 
-:      027294 twspi_write:
-0x6413 027295 branch spid_write_reg 
-:      027297 twspi_read:
-0x6414 027298 branch spid_read_reg 
-:      027305 read_function_aes:
-0x6415 027306 nbranch read_function ,user 
-0x6416 027307 hfetch 1 ,core_gpio_key2 
-0x6417 027308 or_into 0x2 ,pdata 
-0x6418 027309 hstore 1 ,core_gpio_key2 
-:      027310 read_function:
-0x6419 027311 copy temp ,null 
-0x641a 027312 branch read_fuction_zero ,zero 
-0x641b 027313 copy regc ,pc 
-:      027314 read_fuction_zero:
-0x641c 027315 isolate0 0 ,null 
-0x641d 027316 branch set_ucode_status 
-:      027319 get_block_header:
-0x641e 027320 force 4 ,temp 
-:      027321 get_block_header0:
-0x641f 027322 arg mem_ucode_buf ,rega 
-0x6420 027323 hfetch 1 ,core_gpio_key2 
-0x6421 027324 and_into 0xfd ,pdata 
-0x6422 027325 hstore 1 ,core_gpio_key2 
-0x6423 027326 call read_function 
-0x6424 027327 arg 0x55aa ,rega 
-0x6425 027328 fetch 2 ,mem_ucode_buf 
-0x6426 027329 ifetcht 2 ,contr 
-0x6427 027330 isub rega ,null 
-0x6428 027331 rtn 
-:      027333 read_first_block:
-0x6429 027334 arg 2 ,temp 
-0x642a 027335 arg mem_ucode_ptr ,rega 
-0x642b 027336 call read_function 
-0x642c 027337 fetch 2 ,mem_ucode_ptr 
-0x642d 027338 store 2 ,mem_addr_mi 
-0x642e 027339 call get_iv ,user 
-0x642f 027340 rtn 
-:      027342 get_iv:
-0x6430 027343 arg 16 ,temp 
-0x6431 027344 arg mem_ucode_keybuf ,rega 
-0x6432 027345 hfetch 1 ,core_gpio_key2 
-0x6433 027346 and_into 0xfd ,pdata 
-0x6434 027347 hstore 1 ,core_gpio_key2 
-0x6435 027348 call read_function 
-0x6436 027349 arg mem_ucode_keybuf ,contr 
-0x6437 027350 arg 16 ,loopcnt 
-0x6438 027351 call aes_load_data 
-0x6439 027352 call aes_init 
-0x643a 027353 call aes_clear_data 
-0x643b 027354 branch do_aes_cbc 
-:      027356 load_storage:
-0x643c 027357 disable match 
-0x643d 027358 call get_block_header 
-0x643e 027359 nrtn zero 
-0x643f 027360 enable match 
-0x6440 027361 jam 0x80 ,core_ucode_ctrl 
-0x6441 027362 jam 0 ,core_ucode_hi 
-0x6442 027363 jam 0 ,core_ucode_low 
-0x6443 027364 arg core_ucode_data ,rega 
-0x6444 027365 call read_function_aes 
-0x6445 027366 jam 0x0 ,core_ucode_ctrl 
-:      027367 load_storage_loop:
-0x6446 027368 arg 6 ,temp 
-0x6447 027369 call get_block_header0 
-0x6448 027370 nrtn zero 
-0x6449 027371 ifetch 2 ,contr 
-0x644a 027372 iforce rega 
-0x644b 027373 call read_function 
-0x644c 027374 branch load_storage_loop 
-:      027378 reload_eeprom:
-0x644d 027379 call clean_mem 
-0x644e 027380 setarg 0x1000 
-0x644f 027381 store 2 ,mem_addr_mi 
-0x6450 027382 arg iicd_read_eep ,regc 
-0x6451 027383 arg 2 ,loopcnt 
-:      027384 reload_eeprom_loop:
-0x6452 027385 call get_block_header 
-0x6453 027386 nrtn zero 
-0x6454 027387 fetch 2 ,mem_addr_mi 
-0x6455 027388 byteswap pdata ,pdata 
-0x6456 027389 iadd temp ,pdata 
-0x6457 027390 byteswap pdata ,pdata 
-0x6458 027391 store 2 ,mem_addr_mi 
-0x6459 027392 loop reload_eeprom_loop 
-0x645a 027393 branch load_storage_loop 
-:      027395 loadcode:
-0x645b 027396 call clean_mem 
-0x645c 027397 disable user 
-0x645d 027398 call otp_enable_chgpump 
-0x645e 027399 setarg otp_ucode_flag 
-0x645f 027400 arg mem_otp_ucode_flag ,rega 
-0x6460 027401 arg 2 ,temp 
-0x6461 027402 call otpd_read_data 
-0x6462 027403 fetch 2 ,mem_otp_ucode_flag 
-0x6463 027404 bbit0 otp_uflag_aes ,loadcode_otp 
-0x6464 027405 jam 0x25 ,core_clkoff 
-0x6465 027406 setarg otp_ucode_aeskey 
-0x6466 027407 arg mem_ucode_keybuf ,rega 
-0x6467 027408 arg 16 ,temp 
-0x6468 027409 call otpd_read_data 
-0x6469 027410 jam lock_otp ,core_misc_ctrl 
-0x646a 027411 set1 mark_otp_encrypt ,mark 
-0x646b 027412 arg mem_ucode_keybuf ,contr 
-0x646c 027413 call load_key 
-0x646d 027414 enable user 
-:      027415 loadcode_otp:
-0x646e 027416 jam 0 ,mem_loadcode_times 
-:      027417 loadcode_otp_2:
-0x646f 027418 call loadcode_check_times 
-0x6470 027419 fetch 2 ,mem_otp_ucode_flag 
-0x6471 027420 byteswap pdata ,pdata 
-0x6472 027421 arg 0x7ff ,temp 
-0x6473 027422 iand temp ,pdata 
-0x6474 027423 branch loadcode_iic ,zero 
-0x6475 027424 call otp_set_addr 
-0x6476 027425 arg otpd_read_code ,regc 
-0x6477 027426 call get_iv ,user 
-0x6478 027427 call load_storage 
-0x6479 027428 fetch 1 ,mem_ucode_status 
-0x647a 027429 bbit0 0 ,loadcode_otp_2 
-:      027431 loadcode_iic:
-0x647b 027432 call otp_disable_chgpump 
-0x647c 027433 jam 0 ,mem_loadcode_times 
-:      027434 loadcode_iic_2:
-0x647d 027435 call loadcode_check_times 
-0x647e 027436 call clear_eeprom_size_2k 
-0x647f 027437 fetch 1 ,mem_otp_ucode_flag 
-0x6480 027438 bbit1 otp_uflag_skip_eep ,loadcode_spi 
-0x6481 027439 call loadcode_iic_by_eeprom 
-0x6482 027440 nbranch loadcode_iic_eeprom_2k ,match 
-0x6483 027441 fetch 1 ,mem_ucode_status 
-0x6484 027442 bbit0 0 ,loadcode_iic_2 
-0x6485 027443 branch loadcode_hci 
-:      027444 loadcode_iic_eeprom_2k:
-0x6486 027445 call set_eeprom_size_2k 
-0x6487 027446 fetch 1 ,mem_otp_ucode_flag 
-0x6488 027447 bbit1 otp_uflag_skip_eep ,loadcode_spi 
-0x6489 027448 call loadcode_iic_by_eeprom 
-0x648a 027449 nbranch loadcode_spi ,match 
-0x648b 027450 fetch 1 ,mem_ucode_status 
-0x648c 027451 bbit0 0 ,loadcode_iic_2 
-0x648d 027452 branch loadcode_hci 
-:      027454 loadcode_spi:
-0x648e 027455 jam 0 ,mem_loadcode_times 
-:      027456 loadcode_spi_2:
-0x648f 027457 call loadcode_check_times 
-0x6490 027458 fetch 1 ,mem_otp_ucode_flag 
-0x6491 027459 bbit1 otp_uflag_skip_flash ,loadcode_hci 
-0x6492 027460 setarg 0x0 
-0x6493 027461 store 3 ,mem_addr_hi 
-0x6494 027462 call spid_init_flash 
-0x6495 027463 arg spid_load_flash ,regc 
-0x6496 027464 call read_first_block 
-0x6497 027465 call load_storage 
-0x6498 027466 nbranch loadcode_hci ,match 
-0x6499 027467 fetch 1 ,mem_ucode_status 
-0x649a 027468 bbit0 0 ,loadcode_spi_2 
-:      027470 loadcode_hci:
-0x649b 027471 bmark1 mark_otp_encrypt ,loadcode_hci_enc 
-0x649c 027472 call clear_key_buf 
-:      027473 loadcode_hci_enc:
-0x649d 027474 fetch 1 ,mem_otp_ucode_flag 
-0x649e 027475 bbit0 otp_uflag_hci ,clear_key_buf 
-0x649f 027476 jam 0x21 ,core_clkoff 
-0x64a0 027477 call hci_init 
-:      027478 loadcode_hci_loop:
-0x64a1 027479 call hci_rx_packet 
-0x64a2 027480 branch loadcode_hci_loop 
-:      027482 clear_key_buf:
-0x64a3 027483 setarg 0 
-0x64a4 027484 store 8 ,mem_ucode_keybuf 
-0x64a5 027485 store 8 ,mem_ucode_keybuf + 8 
-0x64a6 027486 force regidx_key ,regext_index 
-0x64a7 027487 call aes_clear 
-0x64a8 027488 jam 0x21 ,core_clkoff 
-0x64a9 027489 rtn 
-:      027492 loadcode_iic_by_eeprom:
-0x64aa 027493 setarg 0x0 
-0x64ab 027494 store 2 ,mem_addr_mi 
-0x64ac 027495 arg iicd_read_eep ,regc 
-0x64ad 027496 call iicd_init_12m 
-0x64ae 027497 call read_first_block 
-0x64af 027498 branch load_storage 
-:      027501 loadcode_check_times:
-0x64b0 027502 fetch 1 ,mem_loadcode_times 
-0x64b1 027503 increase 1 ,pdata 
-0x64b2 027504 sub pdata ,3 ,null 
-0x64b3 027505 nbranch loadcode_error ,positive 
-0x64b4 027506 store 1 ,mem_loadcode_times 
-0x64b5 027507 rtn 
-:      027509 loadcode_error:
-0x64b6 027510 call clear_key_buf 
-0x64b7 027511 call ice_break 
-0x64b8 027512 rtn 
-:      027516 set_ucode_status:
-0x64b9 027517 fetch 1 ,mem_ucode_status 
-0x64ba 027518 lshift pdata ,pdata 
-0x64bb 027519 setflag true ,0 ,pdata 
-0x64bc 027520 isolate0 15 ,rega 
-0x64bd 027521 rtn true 
-0x64be 027522 store 1 ,mem_ucode_status 
-0x64bf 027523 rtn 
-:      027526 decrypt_code:
-0x64c0 027527 hfetch 1 ,core_gpio_key2 
-0x64c1 027528 rtnbit0 1 
-0x64c2 027529 branch decrypt_code_skip 
-:      027530 decrypt_code_loop:
-0x64c3 027531 hfetch 1 ,core_dma_status 
-0x64c4 027532 qisolate1 pdata 
-0x64c5 027533 rtn true 
-:      027534 decrypt_code_skip:
-0x64c6 027535 hfetch 1 ,core_misc_status 
-0x64c7 027536 bbit0 1 ,decrypt_code_loop 
-0x64c8 027537 call do_aes_cbc 
-0x64c9 027538 branch decrypt_code_loop 
-:      027542 load_ucode:
-0x64ca 027543 fetch 2 ,mem_patch_ptr 
-0x64cb 027544 rtn blank 
-0x64cc 027545 jam 0x80 ,core_ucode_ctrl 
-0x64cd 027546 jam 0 ,core_ucode_hi 
-0x64ce 027547 jam 0 ,core_ucode_low 
-0x64cf 027548 fetcht 2 ,mem_patch_len 
-0x64d0 027549 lshift2 temp ,loopcnt 
-0x64d1 027550 iforce contr 
-:      027551 load_ucode_loop:
-0x64d2 027552 ifetch 1 ,contr 
-0x64d3 027553 hstore 1 ,core_ucode_data 
-0x64d4 027554 loop load_ucode_loop 
-0x64d5 027555 jam 0x0 ,core_ucode_ctrl 
-0x64d6 027556 rtn 
-:      027561 spid_init:
-0x64d7 027562 bpatchx patch31_5 ,mem_patch31 
-0x64d8 027563 call spid_init_common 
-0x64d9 027564 branch twspi_enable 
-:      027566 spid_init2:
-0x64da 027567 call spid_init_common 
-0x64db 027568 call twspi_disable 
-0x64dc 027569 branch twspi_enable2 
-:      027571 spid_init_common:
-0x64dd 027572 fetch 1 ,mem_spi_init_clk 
-0x64de 027573 hstore 1 ,core_spid_ctrl 
-0x64df 027574 fetch 1 ,mem_spi_init_delay_time 
-0x64e0 027575 hstore 1 ,core_spid_delay 
-0x64e1 027576 setarg mem_spid_tbuf 
-0x64e2 027577 hstore 2 ,core_spid_txaddr 
-0x64e3 027578 setarg mem_spid_rbuf 
-0x64e4 027579 hstore 2 ,core_spid_rxaddr 
-0x64e5 027580 branch twspi_disable 
-:      027582 spid_reset:
-0x64e6 027583 hfetch 1 ,core_spid_ctrl 
-0x64e7 027584 set1 7 ,pdata 
-0x64e8 027585 hstore 1 ,core_spid_ctrl 
-0x64e9 027586 set0 7 ,pdata 
-0x64ea 027587 hstore 1 ,core_spid_ctrl 
-0x64eb 027588 rtn 
-:      027592 spid_write_reg:
-0x64ec 027593 set1 7 ,pdata 
-0x64ed 027594 store 2 ,mem_spid_tbuf 
-0x64ee 027595 bpatchx patch31_6 ,mem_patch31 
-0x64ef 027596 jam 2 ,core_spid_txlen 
-0x64f0 027597 jam 0 ,core_spid_rxlen 
-0x64f1 027598 jam spid_start ,core_misc_ctrl 
-0x64f2 027599 branch wait_spid_done 
-:      027602 spid_read_reg:
-0x64f3 027603 force 1 ,temp 
-:      027605 spid_read_regs:
-0x64f4 027607 store 1 ,mem_spid_tbuf 
-0x64f5 027608 bpatchx patch31_7 ,mem_patch31 
-0x64f6 027609 jam 1 ,core_spid_txlen 
-0x64f7 027610 hstoret 2 ,core_spid_rxlen 
-0x64f8 027611 jam spid_start ,core_misc_ctrl 
-0x64f9 027612 call wait_spid_done 
-0x64fa 027613 fetch 1 ,mem_spid_rbuf 
-0x64fb 027614 rtn 
-:      027616 wait_spid_done:
-0x64fc 027617 fetch 2 ,mem_afh_error_total 
-0x64fd 027618 increase 1 ,pdata 
-0x64fe 027619 store 2 ,mem_afh_error_total 
-0x64ff 027620 hfetch 1 ,core_dma_status 
-0x6500 027621 bbit0 spid_done ,wait_spid_done 
-0x6501 027622 rtn 
-:      027624 spid_init_flash:
-0x6502 027625 jam 0x40 ,core_spid_ctrl 
-0x6503 027626 jam 0x0 ,core_spid_delay 
-0x6504 027627 hfetch 1 ,core_gpio_sel1 
-0x6505 027628 set0 0 ,pdata 
-0x6506 027629 set1 1 ,pdata 
-0x6507 027630 hstore 1 ,core_gpio_sel1 
-0x6508 027631 setarg 0 
-0x6509 027632 store 4 ,mem_spid_tbuf 
-0x650a 027633 rtn 
-:      027636 spid_unlock_flash:
-0x650b 027637 setarg 0 
-0x650c 027638 hstore 2 ,core_spid_rxlen 
-0x650d 027639 setarg 1 
-0x650e 027640 hstore 2 ,core_spid_txlen 
-0x650f 027641 setarg mem_spid_tbuf 
-0x6510 027642 hstore 2 ,core_spid_txaddr 
-0x6511 027643 jam 6 ,mem_spid_tbuf 
-0x6512 027644 jam spid_start ,core_misc_ctrl 
-0x6513 027645 branch wait_spid_done 
-:      027660 flash_write:
-0x6514 027661 disable user 
-0x6515 027662 copy pdata ,regb 
-0x6516 027663 fetch 1 ,mem_spi_write_flash_sm 
-0x6517 027664 rtnne flash_sm_no_buys 
-0x6518 027665 enable user 
-0x6519 027666 copy regb ,pdata 
-0x651a 027667 branch flash_write_start 
-:      027670 flash_write_spi_sm_timer:
-0x651b 027671 fetch 1 ,mem_spi_write_flash_sm 
-0x651c 027672 beq flash_sm_start ,flash_write_start 
-0x651d 027673 beq flash_sm_erase_sector ,flash_erase_sector 
-0x651e 027674 beq flash_sm_wait_erase_sector ,flash_wait_erase_sector 
-0x651f 027675 beq flash_sm_write_data ,flash_write_data 
-0x6520 027676 beq flash_sm_wait_write_data ,flash_wait_write_data 
-0x6521 027677 rtn 
-:      027679 flash_write_start:
-0x6522 027680 store 3 ,mem_spi_write_addr 
-0x6523 027681 copy rega ,pdata 
-0x6524 027682 store 2 ,mem_spi_write_ptr 
-0x6525 027683 storet 2 ,mem_spi_write_len 
-0x6526 027684 jam flash_sm_erase_sector ,mem_spi_write_flash_sm 
-0x6527 027685 branch spid_init_flash 
-:      027686 flash_erase_sector:
-0x6528 027687 call spid_init_flash 
-0x6529 027688 jam flash_sm_wait_erase_sector ,mem_spi_write_flash_sm 
-0x652a 027689 call spid_unlock_flash 
-0x652b 027690 arg mem_spid_tbuf ,rega 
-0x652c 027691 fetch 3 ,mem_spi_write_addr 
-0x652d 027692 jam 4 ,core_spid_txlen 
-0x652e 027693 arg flash_command_sector_erase ,temp 
-0x652f 027694 branch spid_write_flash_common 
-:      027696 flash_wait_erase_sector:
-0x6530 027697 call spid_init_flash 
-0x6531 027698 call spid_unlock_flash 
-0x6532 027699 setarg flash_read_satus 
-0x6533 027700 call spid_read_reg 
-0x6534 027701 rtnbit1 flash_status_wip 
-0x6535 027702 jam flash_sm_write_data ,mem_spi_write_flash_sm 
-0x6536 027703 rtn 
-:      027704 flash_write_data:
-0x6537 027705 call spid_init_flash 
-0x6538 027706 jam flash_sm_wait_write_data ,mem_spi_write_flash_sm 
-0x6539 027707 call spid_unlock_flash 
-0x653a 027708 call flash_data_preserve 
-0x653b 027709 call spid_write_flash 
-0x653c 027710 branch flash_data_recover 
-:      027711 flash_wait_write_data:
-0x653d 027712 call spid_init_flash 
-0x653e 027713 call spid_unlock_flash 
-0x653f 027714 setarg flash_read_satus 
-0x6540 027715 call spid_read_reg 
-0x6541 027716 rtnbit1 flash_status_wip 
-0x6542 027717 jam flash_sm_no_buys ,mem_spi_write_flash_sm 
-0x6543 027718 fetch 2 ,mem_cb_spi_flash_write_complate 
-0x6544 027719 branch callback_func 
-:      027720 flash_data_recover:
-0x6545 027721 fetch 4 ,mem_temp 
-0x6546 027722 fetcht 2 ,mem_spi_write_ptr 
-0x6547 027723 increase -4 ,temp 
-0x6548 027724 istore 4 ,temp 
-0x6549 027725 rtn 
-:      027726 flash_data_preserve:
-0x654a 027727 fetcht 2 ,mem_spi_write_ptr 
-0x654b 027728 copy temp ,rega 
-0x654c 027729 increase -4 ,temp 
-0x654d 027730 ifetch 4 ,temp 
-0x654e 027731 store 4 ,mem_temp 
-0x654f 027732 fetcht 2 ,mem_spi_write_len 
-0x6550 027733 fetch 3 ,mem_spi_write_addr 
-0x6551 027734 rtn 
-:      027738 spid_write_flash:
-0x6552 027739 increase 4 ,temp 
-0x6553 027740 hstoret 2 ,core_spid_txlen 
-0x6554 027741 arg flash_command_write_data ,temp 
-0x6555 027742 increase -4 ,rega 
-:      027743 spid_write_flash_common:
-0x6556 027745 istoret 1 ,rega 
-0x6557 027746 rshift16 pdata ,temp 
-0x6558 027747 istoret 1 ,contw 
-0x6559 027748 rshift8 pdata ,temp 
-0x655a 027749 istoret 1 ,contw 
-0x655b 027750 istore 1 ,contw 
-0x655c 027751 deposit rega 
-0x655d 027752 hstore 2 ,core_spid_txaddr 
-0x655e 027753 setarg 0 
-0x655f 027754 hstore 2 ,core_spid_rxlen 
-0x6560 027755 jam spid_start ,core_misc_ctrl 
-0x6561 027756 branch wait_spid_done 
-:      027760 spid_read_flash:
-0x6562 027761 hstoret 2 ,core_spid_rxlen 
-0x6563 027762 rshift16 pdata ,temp 
-0x6564 027763 storet 1 ,mem_addr_hi 
-0x6565 027764 rshift8 pdata ,temp 
-0x6566 027765 storet 1 ,mem_addr_mi 
-0x6567 027766 store 1 ,mem_addr_lo 
-0x6568 027767 setarg 4 
-0x6569 027768 hstore 2 ,core_spid_txlen 
-0x656a 027769 jam flash_command_read_data ,mem_spid_tbuf 
-0x656b 027770 setarg mem_spid_tbuf 
-0x656c 027771 hstore 2 ,core_spid_txaddr 
-0x656d 027772 deposit rega 
-0x656e 027773 hstore 2 ,core_spid_rxaddr 
-0x656f 027774 hfetch 1 ,core_spid_ctrl 
-0x6570 027775 isolate0 15 ,rega 
-0x6571 027776 setflag true ,6 ,pdata 
-0x6572 027777 hstore 1 ,core_spid_ctrl 
-0x6573 027778 jam spid_start ,core_misc_ctrl 
-:      027779 spi_read_flash_wait:
-0x6574 027780 hfetch 1 ,core_dma_status 
-0x6575 027781 bbit1 7 ,spi_read_flash_wait 
-0x6576 027782 arg spid_done ,queue 
-0x6577 027783 branch wait_spid_done 
-:      027787 spid_load_flash:
-0x6578 027788 hstoret 2 ,core_spid_rxlen 
-0x6579 027789 setarg 4 
-0x657a 027790 hstore 2 ,core_spid_txlen 
-0x657b 027791 jam 3 ,mem_spid_tbuf 
-0x657c 027792 setarg mem_spid_tbuf 
-0x657d 027793 hstore 2 ,core_spid_txaddr 
-0x657e 027794 deposit rega 
-0x657f 027795 hstore 2 ,core_spid_rxaddr 
-0x6580 027796 hfetch 1 ,core_spid_ctrl 
-0x6581 027797 isolate0 15 ,rega 
-0x6582 027798 setflag true ,6 ,pdata 
-0x6583 027799 hstore 1 ,core_spid_ctrl 
-0x6584 027800 jam spid_start ,core_misc_ctrl 
-:      027801 spi_load_flash_wait:
-0x6585 027802 hfetch 1 ,core_dma_status 
-0x6586 027803 bbit1 7 ,spi_load_flash_wait 
-0x6587 027804 arg spid_done ,queue 
-0x6588 027805 call decrypt_code 
-0x6589 027806 call wait_spid_done 
-0x658a 027807 isolate1 spid_crcok ,pdata 
-0x658b 027808 call set_ucode_status 
-0x658c 027809 fetch 1 ,mem_addr_hi 
-0x658d 027810 lshift16 pdata ,regb 
-0x658e 027811 fetch 1 ,mem_addr_mi 
-0x658f 027812 lshift8 pdata ,pdata 
-0x6590 027813 ior regb ,regb 
-0x6591 027814 fetch 1 ,mem_addr_lo 
-0x6592 027815 ior regb ,pdata 
-0x6593 027816 iadd temp ,pdata 
-0x6594 027817 store 1 ,mem_addr_lo 
-0x6595 027818 rshift8 pdata ,pdata 
-0x6596 027819 store 1 ,mem_addr_mi 
-0x6597 027820 rshift8 pdata ,pdata 
-0x6598 027821 store 1 ,mem_addr_hi 
-0x6599 027822 rtn 
-:      027827 soft_reset_chip:
-0x659a 027828 jam 1 ,core_reset 
-0x659b 027829 rtn 
-:      027835 iic_init_390k:
-0x659c 027836 jam 12 ,core_iicd_scl_low 
-0x659d 027837 jam 13 ,core_iicd_scl_high 
-0x659e 027838 jam 13 ,core_iicd_start_setup 
-0x659f 027839 jam 13 ,core_iicd_start_hold 
-0x65a0 027840 jam 13 ,core_iicd_stop_setup 
-0x65a1 027841 jam 12 ,core_iicd_data_setup 
-0x65a2 027842 branch iicd_init_gpio 
-:      027845 iicd_init_12m:
-0x65a3 027846 jam 5 ,core_iicd_scl_low 
-0x65a4 027847 jam 7 ,core_iicd_scl_high 
-0x65a5 027848 jam 7 ,core_iicd_start_setup 
-0x65a6 027849 jam 7 ,core_iicd_start_hold 
-0x65a7 027850 jam 7 ,core_iicd_stop_setup 
-0x65a8 027851 jam 5 ,core_iicd_data_setup 
-:      027852 iicd_init_gpio:
-0x65a9 027853 hfetch 1 ,core_gpio_pu3 
-0x65aa 027854 or_into 0xc0 ,pdata 
-0x65ab 027855 hstore 1 ,core_gpio_pu3 
-0x65ac 027856 hfetch 1 ,core_gpio_sel1 
-0x65ad 027857 or_into 0x10 ,pdata 
-0x65ae 027858 hstore 1 ,core_gpio_sel1 
-0x65af 027859 rtn 
-:      027863 wait_iicd_done:
-0x65b0 027864 hfetch 1 ,core_dma_status 
-0x65b1 027865 bbit0 iicd_done ,wait_iicd_done 
-0x65b2 027866 rtn 
-:      027874 iicd_read_data:
-0x65b3 027875 hstore 2 ,core_iicd_txlen 
-0x65b4 027876 deposit rega 
-0x65b5 027877 hstore 2 ,core_iicd_txaddr 
-0x65b6 027878 deposit regb 
-0x65b7 027879 hstore 2 ,core_iicd_rxaddr 
-0x65b8 027880 deposit temp 
-0x65b9 027881 hstore 2 ,core_iicd_rxlen 
-0x65ba 027882 arg 1 ,temp 
-0x65bb 027883 nsetflag blank ,1 ,temp 
-0x65bc 027884 hstore 1 ,core_iicd_ctrl 
-0x65bd 027885 jam iicd_start ,core_misc_ctrl 
-0x65be 027886 branch wait_iicd_done 
-:      027889 set_eeprom_size_2k:
-0x65bf 027890 set1 mark_eeprom_size ,mark 
-0x65c0 027891 jam 0x08 ,mem_eeprom_block_size 
-0x65c1 027892 rtn 
-:      027894 clear_eeprom_size_2k:
-0x65c2 027895 set0 mark_eeprom_size ,mark 
-0x65c3 027896 jam 0x20 ,mem_eeprom_block_size 
-0x65c4 027897 rtn 
-:      027900 iicd_read_eep_data_size_2k:
-0x65c5 027901 fetch 1 ,mem_eeprom_base 
-0x65c6 027902 iadd regb ,pdata 
-0x65c7 027903 store 1 ,mem_addr_mi 
-0x65c8 027904 branch iicd_read_eep_size_2k 
-:      027906 iicd_read_eep_size_2k_lcadcode:
-0x65c9 027907 fetch 2 ,mem_addr_mi 
-0x65ca 027908 byteswap pdata ,pdata 
-0x65cb 027909 store 1 ,mem_addr_mi 
-:      027914 iicd_read_eep_size_2k:
-0x65cc 027915 setarg 3 
-0x65cd 027916 hstore 2 ,core_iicd_txlen 
-0x65ce 027917 jam 0xa0 ,mem_iicd_tbuf 
-0x65cf 027918 jam 0xa1 ,mem_iicd_tbuf + 2 
-0x65d0 027919 branch iicd_read_eep_common 
-:      027925 iicd_write_protect_eep_data:
-0x65d1 027926 storet 2 ,mem_temp 
-0x65d2 027927 call iicd_eeprom_write_enable 
-0x65d3 027928 fetcht 2 ,mem_temp 
-0x65d4 027929 call iicd_write_eep_data 
-0x65d5 027930 branch iicd_eeprom_write_disable 
-:      027932 iicd_eeprom_write_enable:
-0x65d6 027933 fetch 1 ,mem_eeprom_wp_gpio 
-0x65d7 027934 rtneq gpio_disable 
-0x65d8 027935 bbit0 6 ,iicd_wp_gpio_output_low 
-0x65d9 027936 setarg 150000 
-0x65da 027937 call sleep 
-:      027938 iicd_wp_gpio_output_low:
-0x65db 027939 fetcht 1 ,mem_eeprom_wp_gpio 
-0x65dc 027940 branch gpio_out_active 
-:      027942 iicd_eeprom_write_disable:
-0x65dd 027943 fetcht 1 ,mem_eeprom_wp_gpio 
-0x65de 027944 branch gpio_out_inactive 
-:      027949 iicd_read_eep_data:
-0x65df 027950 bpatchx patch32_0 ,mem_patch32 
-0x65e0 027951 bmark1 mark_eeprom_size ,iicd_read_eep_data_size_2k 
-0x65e1 027952 fetch 2 ,mem_eeprom_base 
-0x65e2 027953 iadd regb ,pdata 
-0x65e3 027954 byteswap pdata ,pdata 
-0x65e4 027955 store 2 ,mem_addr_mi 
-:      027958 iicd_read_eep:
-0x65e5 027959 bpatchx patch32_1 ,mem_patch32 
-0x65e6 027960 bmark1 mark_eeprom_size ,iicd_read_eep_size_2k_lcadcode 
-0x65e7 027961 setarg 4 
-0x65e8 027962 hstore 2 ,core_iicd_txlen 
-0x65e9 027963 jam 0xa0 ,mem_iicd_tbuf 
-0x65ea 027964 jam 0xa1 ,mem_iicd_tbuf + 3 
-:      027965 iicd_read_eep_common:
-0x65eb 027966 setarg mem_iicd_tbuf 
-0x65ec 027967 hstore 2 ,core_iicd_txaddr 
-0x65ed 027968 hstoret 2 ,core_iicd_rxlen 
-0x65ee 027969 deposit rega 
-0x65ef 027970 hstore 2 ,core_iicd_rxaddr 
-0x65f0 027971 setarg 2 
-0x65f1 027972 isolate0 15 ,rega 
-0x65f2 027973 setflag true ,0 ,pdata 
-0x65f3 027974 hstore 1 ,core_iicd_ctrl 
-0x65f4 027975 jam iicd_start ,core_misc_ctrl 
-0x65f5 027976 arg iicd_done ,queue 
-0x65f6 027977 call decrypt_code 
-0x65f7 027978 call wait_iicd_done 
-0x65f8 027979 isolate1 iicd_crcok ,pdata 
-0x65f9 027980 call set_ucode_status 
-0x65fa 027981 bmark1 mark_eeprom_size ,iicd_read_eep_load_code_size_2k 
-0x65fb 027982 fetch 2 ,mem_addr_mi 
-0x65fc 027983 byteswap pdata ,pdata 
-0x65fd 027984 iadd temp ,pdata 
-0x65fe 027985 byteswap pdata ,pdata 
-0x65ff 027986 store 2 ,mem_addr_mi 
-0x6600 027987 rtn 
-:      027989 iicd_read_eep_load_code_size_2k:
-0x6601 027990 fetch 1 ,mem_addr_mi 
-0x6602 027991 iadd temp ,pdata 
-0x6603 027992 byteswap pdata ,pdata 
-0x6604 027993 store 2 ,mem_addr_mi 
-0x6605 027994 rtn 
-:      028000 iicd_write_eep_data:
-0x6606 028001 fetch 2 ,mem_eeprom_base 
-0x6607 028002 iadd regb ,pdata 
-:      028005 iicd_write_ota_data:
-0x6608 028006 store 2 ,mem_pdatatemp 
-0x6609 028007 bpatchx patch32_2 ,mem_patch32 
-0x660a 028008 storet 2 ,mem_temp 
-0x660b 028009 copy rega ,pdata 
-0x660c 028010 store 2 ,mem_contr 
-:      028011 iicd_write_eep_loop:
-0x660d 028012 call iicd_eep_transparency 
-0x660e 028014 fetcht 2 ,mem_regb 
-0x660f 028015 fetch 2 ,mem_contr 
-0x6610 028016 copy pdata ,rega 
-0x6611 028017 fetch 2 ,mem_pdatatemp 
-0x6612 028019 call iicd_write_eep 
-0x6613 028021 fetch 2 ,mem_regb 
-0x6614 028022 fetcht 2 ,mem_contr 
-0x6615 028023 iadd temp ,temp 
-0x6616 028024 storet 2 ,mem_contr 
-0x6617 028025 fetcht 2 ,mem_pdatatemp 
-0x6618 028026 iadd temp ,temp 
-0x6619 028027 storet 2 ,mem_pdatatemp 
-0x661a 028028 fetch 2 ,mem_temp 
-0x661b 028029 nbranch iicd_write_eep_loop ,blank 
-0x661c 028030 rtn 
-:      028038 iicd_eep_transparency:
-0x661d 028039 bpatchx patch32_3 ,mem_patch32 
-0x661e 028040 fetch 1 ,mem_eeprom_block_size 
-0x661f 028041 increase -1 ,pdata 
-0x6620 028042 fetcht 2 ,mem_pdatatemp 
-0x6621 028043 ior temp ,pdata 
-0x6622 028044 increase 1 ,pdata 
-0x6623 028045 store 3 ,mem_regc 
-0x6624 028047 fetch 2 ,mem_temp 
-0x6625 028048 iadd temp ,pdata 
-0x6626 028050 fetcht 3 ,mem_regc 
-0x6627 028051 isub temp ,pdata 
-0x6628 028052 nbranch iicd_eep_deal_short_packet ,positive 
-0x6629 028053 store 2 ,mem_temp 
-0x662a 028054 fetch 3 ,mem_regc 
-0x662b 028055 fetcht 2 ,mem_pdatatemp 
-0x662c 028056 isub temp ,pdata 
-0x662d 028057 store 2 ,mem_regb 
-0x662e 028058 rtn 
-:      028059 iicd_eep_deal_short_packet:
-0x662f 028060 fetch 2 ,mem_temp 
-0x6630 028061 store 2 ,mem_regb 
-0x6631 028062 setarg 0 
-0x6632 028063 store 2 ,mem_temp 
-0x6633 028064 rtn 
-:      028066 iicd_write_eep_size_2k:
-0x6634 028067 increase 2 ,temp 
-0x6635 028068 hstoret 2 ,core_iicd_txlen 
-0x6636 028069 increase -2 ,rega 
-0x6637 028070 ifetcht 3 ,rega 
-0x6638 028071 copy temp ,regb 
-0x6639 028072 arg 0xa0 ,temp 
-0x663a 028073 istoret 1 ,rega 
-0x663b 028075 istore 1 ,contw 
-0x663c 028076 branch iicd_write_eep_common 
-:      028079 iicd_write_eep:
-0x663d 028080 copy pdata ,regb 
-0x663e 028081 bpatchx patch32_4 ,mem_patch32 
-0x663f 028082 bmark1 mark_eeprom_size ,iicd_write_eep_size_2k 
-0x6640 028083 copy regb ,pdata 
-0x6641 028084 increase 3 ,temp 
-0x6642 028085 hstoret 2 ,core_iicd_txlen 
-0x6643 028086 increase -3 ,rega 
-0x6644 028087 ifetcht 3 ,rega 
-0x6645 028088 copy temp ,regb 
-0x6646 028089 arg 0xa0 ,temp 
-0x6647 028090 istoret 1 ,rega 
-0x6648 028091 byteswap pdata ,pdata 
-0x6649 028092 istore 2 ,contw 
-:      028093 iicd_write_eep_common:
-0x664a 028094 deposit rega 
-0x664b 028095 hstore 2 ,core_iicd_txaddr 
-0x664c 028096 setarg 0 
-0x664d 028097 hstore 2 ,core_iicd_rxlen 
-0x664e 028098 jam 1 ,core_iicd_ctrl 
-0x664f 028099 jam iicd_start ,core_misc_ctrl 
-0x6650 028100 call wait_iicd_done 
-0x6651 028101 copy regb ,pdata 
-0x6652 028102 istore 3 ,rega 
-:      028104 iic_check_eeprom_standby:
-0x6653 028105 bpatchx patch32_5 ,mem_patch32 
-0x6654 028106 jam 0 ,mem_iicd_tbuf + 3 
-:      028107 iic_check_eeprom_standby_wait:
-0x6655 028108 setarg 1 
-0x6656 028109 hstore 2 ,core_iicd_txlen 
-0x6657 028110 jam 0xa0 ,mem_iicd_tbuf 
-0x6658 028111 setarg mem_iicd_tbuf 
-0x6659 028112 hstore 2 ,core_iicd_txaddr 
-0x665a 028113 setarg 0 
-0x665b 028114 hstore 2 ,core_iicd_rxlen 
-0x665c 028115 hstore 2 ,core_iicd_rxaddr 
-0x665d 028116 setarg 3 
-0x665e 028117 hstore 1 ,core_iicd_ctrl 
-0x665f 028118 jam iicd_start ,core_misc_ctrl 
-0x6660 028119 call wait_iicd_done 
-0x6661 028120 hfetch 1 ,core_dma_status 
-0x6662 028121 rtnbit0 iicd_ack 
-0x6663 028122 nop 1500 
-0x6664 028123 fetch 1 ,mem_iicd_tbuf + 3 
-0x6665 028124 increase 1 ,pdata 
-0x6666 028125 store 1 ,mem_iicd_tbuf + 3 
-0x6667 028126 sub pdata ,40 ,null 
-0x6668 028127 nrtn positive 
-0x6669 028128 branch iic_check_eeprom_standby_wait 
-:      028132 otp_enable_chgpump:
-0x666a 028133 jam 0x70 ,rfen_chgpump 
-0x666b 028134 nop param_chgpump_delay 
-0x666c 028135 rtn 
-:      028137 otp_disable_chgpump:
-0x666d 028138 jam 0x30 ,rfen_chgpump 
-0x666e 028139 rtn 
-:      028141 otp_set_addr:
-0x666f 028142 lshift3 pdata ,pdata 
-0x6670 028143 hstore 2 ,core_otp_addr 
-0x6671 028144 jam 0 ,core_otpd_ctrl 
-0x6672 028145 rtn 
-:      028148 otp_write:
-0x6673 028149 call otp_set_addr 
-0x6674 028150 call otp_ce 
-:      028151 otp_program:
-0x6675 028152 ifetcht 1 ,rega 
-0x6676 028153 increase 1 ,rega 
-0x6677 028154 force 0 ,queue 
-:      028155 otp_program_bit:
-0x6678 028156 qisolate0 temp 
-0x6679 028157 branch otp_skip_0 ,true 
-0x667a 028158 hfetch 1 ,core_otp_din 
-0x667b 028159 set1 6 ,pdata 
-0x667c 028160 set1 7 ,pdata 
-0x667d 028161 hstore 1 ,core_otp_din 
-0x667e 028162 jam 0x02 ,core_otp_ctrl 
-0x667f 028163 jam 0x82 ,core_otp_ctrl 
-0x6680 028164 set0 7 ,pdata 
-0x6681 028165 hstore 1 ,core_otp_din 
-0x6682 028166 jam 0x8a ,core_otp_ctrl 
-0x6683 028167 nop 11 
-0x6684 028168 jam 0xca ,core_otp_ctrl 
-0x6685 028169 nop 33 
-0x6686 028170 jam 0x4a ,core_otp_ctrl 
-0x6687 028171 nop 44 
-0x6688 028172 jam 0xca ,core_otp_ctrl 
-0x6689 028173 nop 22 
-0x668a 028174 jam 0x8a ,core_otp_ctrl 
-0x668b 028175 nop 33 
-0x668c 028176 jam 0x82 ,core_otp_ctrl 
-0x668d 028177 nop 1 
-0x668e 028178 jam 0x92 ,core_otp_ctrl 
-0x668f 028179 nop 10 
-0x6690 028180 jam 0xb2 ,core_otp_ctrl 
-0x6691 028181 hfetch 1 ,core_otp_rdata 
-0x6692 028182 jam 0x92 ,core_otp_ctrl 
-0x6693 028183 nop 1 
-0x6694 028184 jam 0x82 ,core_otp_ctrl 
-0x6695 028185 qisolate0 pdata 
-0x6696 028186 branch otp_program_bit ,true 
-:      028187 otp_skip_0:
-0x6697 028188 hfetch 2 ,core_otp_addr 
-0x6698 028189 increase 1 ,pdata 
-0x6699 028190 hstore 2 ,core_otp_addr 
-0x669a 028191 increase 1 ,queue 
-0x669b 028192 compare 8 ,queue ,0xf 
-0x669c 028193 nbranch otp_program_bit ,true 
-0x669d 028194 loop otp_program 
-0x669e 028195 jam 0x83 ,core_otp_ctrl 
-0x669f 028196 rtn 
-:      028198 otp_ce:
-0x66a0 028199 jam 0x82 ,core_otp_ctrl 
-0x66a1 028200 nop 12 
-0x66a2 028201 jam 0x80 ,core_otp_ctrl 
-0x66a3 028202 jam 0x82 ,core_otp_ctrl 
-0x66a4 028203 nop 150 
-0x66a5 028204 rtn 
-:      028207 otpd_read_init:
-0x66a6 028208 call otp_ce 
-0x66a7 028209 jam 0xa2 ,core_otp_ctrl 
-0x66a8 028210 deposit rega 
-0x66a9 028211 hstore 2 ,core_otpd_addr 
-0x66aa 028212 set1 11 ,temp 
-0x66ab 028213 isolate0 15 ,pdata 
-0x66ac 028214 setflag true ,15 ,temp 
-0x66ad 028215 hstoret 2 ,core_otpd_len 
-0x66ae 028216 jam otpd_start ,core_misc_ctrl 
-0x66af 028217 rtn 
-:      028219 otpd_wait_end:
-0x66b0 028220 hfetch 1 ,core_dma_status 
-0x66b1 028221 bbit0 otpd_done ,otpd_wait_end 
-0x66b2 028222 rtn 
-:      028225 otpd_read_data:
-0x66b3 028226 call otp_set_addr 
-0x66b4 028227 call otpd_read_init 
-0x66b5 028228 call otpd_wait_end 
-0x66b6 028229 jam 0x83 ,core_otp_ctrl 
-0x66b7 028230 rtn 
-:      028235 otpd_read_code:
-0x66b8 028236 hfetch 2 ,core_current_otp_addr 
-0x66b9 028237 hstore 2 ,core_otp_addr 
-0x66ba 028238 call otpd_read_init 
-0x66bb 028239 arg otpd_done ,queue 
-0x66bc 028240 call decrypt_code 
-0x66bd 028241 call otpd_wait_end 
-0x66be 028242 isolate1 otpd_crcok ,pdata 
-0x66bf 028243 call set_ucode_status 
-0x66c0 028244 jam 0x83 ,core_otp_ctrl 
-0x66c1 028245 rtn 
-:      028248 uartd_prepare_tx:
-0x66c2 028249 hfetch 2 ,core_uart_twptr 
-0x66c3 028250 iforce contwu 
-0x66c4 028251 rtn 
-:      028253 uartd_send:
-0x66c5 028254 deposit contwu 
-0x66c6 028255 hstore 2 ,core_uart_twptr 
-0x66c7 028256 rtn 
-:      028258 uartd_rxdone:
-0x66c8 028259 deposit contru 
-0x66c9 028260 hstore 2 ,core_uart_rrptr 
-0x66ca 028261 rtn 
-:      028263 uartd_prepare_rx:
-0x66cb 028264 hfetch 2 ,core_uart_rrptr 
-0x66cc 028265 copy pdata ,contru 
-0x66cd 028266 rtn 
-:      028268 uart_set_baud_by_mem:
-0x66ce 028269 fetch uart_baud_len ,mem_baud 
-0x66cf 028270 hstore uart_baud_len ,core_uart_baud 
-0x66d0 028271 rtn 
-:      028273 uart_copy_tx_bytes_fast:
-0x66d1 028274 deposit loopcnt 
-0x66d2 028275 rtn blank 
-:      028276 uart_copy_tx_bytes_fast_loop:
-0x66d3 028277 increase -8 ,loopcnt 
-0x66d4 028278 call uart_tx_8_bytes ,positive 
-0x66d5 028279 rtn zero 
-0x66d6 028280 branch uart_copy_tx_bytes_fast_loop ,positive 
-0x66d7 028281 increase 8 ,loopcnt 
-:      028282 uart_copy_tx_bytes_fast_loop_four:
-0x66d8 028283 increase -4 ,loopcnt 
-0x66d9 028284 call uart_tx_4_bytes ,positive 
-0x66da 028285 rtn zero 
-0x66db 028286 branch uart_copy_tx_bytes_fast_loop_four ,positive 
-0x66dc 028287 increase 4 ,loopcnt 
-0x66dd 028288 branch uart_copy_tx_bytes 
-:      028290 uart_tx_8_bytes:
-0x66de 028291 ifetch 8 ,contr 
-0x66df 028292 istore 8 ,contwu 
-0x66e0 028293 rtn 
-:      028295 uart_tx_4_bytes:
-0x66e1 028296 ifetch 4 ,contr 
-0x66e2 028297 istore 4 ,contwu 
-0x66e3 028298 rtn 
-:      028300 uart_copy_tx_bytes:
-0x66e4 028301 deposit loopcnt 
-0x66e5 028302 rtn blank 
-:      028303 uart_copy_tx_bytes_loop:
-0x66e6 028304 ifetch 1 ,contr 
-0x66e7 028305 istore 1 ,contwu 
-0x66e8 028306 loop uart_copy_tx_bytes_loop 
-0x66e9 028307 rtn 
-:      028309 uart_copy_rx_bytes_fast:
-0x66ea 028310 deposit loopcnt 
-0x66eb 028311 rtn blank 
-:      028312 uart_copy_rx_bytes_fast_loop:
-0x66ec 028313 increase -8 ,loopcnt 
-0x66ed 028314 call uart_rx_8_bytes ,positive 
-0x66ee 028315 rtn zero 
-0x66ef 028316 branch uart_copy_rx_bytes_fast_loop ,positive 
-0x66f0 028317 increase 8 ,loopcnt 
-:      028318 uart_copy_rx_bytes_fast_loop_four:
-0x66f1 028319 increase -4 ,loopcnt 
-0x66f2 028320 call uart_rx_4_bytes ,positive 
-0x66f3 028321 rtn zero 
-0x66f4 028322 branch uart_copy_rx_bytes_fast_loop_four ,positive 
-0x66f5 028323 increase 4 ,loopcnt 
-0x66f6 028324 branch uart_copy_rx_bytes 
-:      028326 uart_rx_8_bytes:
-0x66f7 028327 ifetch 8 ,contru 
-0x66f8 028328 istore 8 ,contw 
-0x66f9 028329 rtn 
-:      028331 uart_rx_4_bytes:
-0x66fa 028332 ifetch 4 ,contru 
-0x66fb 028333 istore 4 ,contw 
-0x66fc 028334 rtn 
-:      028337 uart_copy_rx_bytes:
-0x66fd 028338 deposit loopcnt 
-0x66fe 028339 rtn blank 
-:      028340 uart_copy_rx_bytes_loop:
-0x66ff 028341 ifetch 1 ,contru 
-0x6700 028342 istore 1 ,contw 
-0x6701 028343 loop uart_copy_rx_bytes_loop 
-0x6702 028344 rtn 
-:      028347 uart_copy_rx2tx:
-0x6703 028348 deposit loopcnt 
-0x6704 028349 rtn blank 
-:      028350 uart_copy_rx2tx_loop:
-0x6705 028351 ifetch 1 ,contru 
-0x6706 028352 istore 1 ,contwu 
-0x6707 028353 loop uart_copy_rx2tx_loop 
-0x6708 028354 rtn 
-:      028359 app_store_nvram_event:
-0x6709 028360 jam bt_evt_store_nvram ,mem_fifo_temp 
-0x670a 028361 branch ui_ipc_send_event 
-:      028363 check_51cmd_store_reconn_info:
-:      028364 check_51cmd_update_device_record:
-0x670b 028365 bpatchx patch32_6 ,mem_patch32 
-0x670c 028366 fetch 1 ,mem_nv_data_number 
-0x670d 028367 rtn blank 
-0x670e 028368 call check_nvram 
-0x670f 028369 call init_device_list ,zero 
-0x6710 028370 call nvram_find_addr_from_bd_list 
-:      028371 write_device_record:
-0x6711 028372 fetch 1 ,mem_nv_data_number 
-0x6712 028373 icopy regc 
-0x6713 028374 fetcht 2 ,mem_nv_data_ptr 
-0x6714 028375 storet 2 ,mem_list_item_ptr 
-:      028376 write_device_loop_find:
-0x6715 028377 copy regc ,pdata 
-0x6716 028378 branch app_store_nvram_event ,blank 
-0x6717 028379 increase -1 ,regc 
-0x6718 028380 copy temp ,rega 
-0x6719 028381 ifetch 1 ,rega 
-0x671a 028382 fetcht 1 ,mem_select_list_item 
-0x671b 028383 isub temp ,null 
-0x671c 028384 call set_index_finded_device ,zero 
-0x671d 028385 branch write_device_loop_find0 ,positive 
-0x671e 028386 ifetch 1 ,rega 
-0x671f 028387 increase 1 ,pdata 
-0x6720 028388 istore 1 ,rega 
-:      028389 write_device_loop_find0:
-0x6721 028390 fetcht 2 ,mem_list_item_ptr 
-0x6722 028391 increase nv_data_len ,temp 
-0x6723 028392 storet 2 ,mem_list_item_ptr 
-0x6724 028393 branch write_device_loop_find 
-:      028395 set_index_finded_device:
-0x6725 028396 setarg 0 
-0x6726 028397 istore 1 ,rega 
-0x6727 028398 fetch 1 ,mem_temp_reconn_record 
-0x6728 028399 istore 1 ,contw 
-0x6729 028400 bne rec_3_mode ,set_index_finded_device_ble_mode 
-0x672a 028401 arg mem_link_key ,regb 
-:      028402 set_index_find_device_master_addr:
-0x672b 028403 ifetch 6 ,contr 
-0x672c 028404 istore 8 ,contw 
-0x672d 028405 setarg 0 
-0x672e 028406 istore 8 ,contw 
-0x672f 028407 copy regb ,contr 
-:      028408 store_rec_data_common:
-0x6730 028409 call memcpy16 
-0x6731 028410 force 1 ,null 
-0x6732 028411 rtn 
-:      028413 set_index_finded_device_ble_mode:
-0x6733 028414 beq rec_4_mode_random_resolvable_private_address ,set_index_finded_device_irk 
-0x6734 028415 beq rec_4_mode_random_non_resolvable_private_address ,set_index_finded_device_ediv 
-0x6735 028416 arg mem_le_ltk ,regb 
-0x6736 028417 branch set_index_find_device_master_addr 
-:      028419 set_index_finded_device_irk:
-0x6737 028420 arg mem_le_irk ,contr 
-0x6738 028421 call memcpy16 
-:      028422 store_ble_rec_data_common:
-0x6739 028423 arg mem_le_ltk ,contr 
-0x673a 028424 branch store_rec_data_common 
-:      028426 set_index_finded_device_ediv:
-0x673b 028427 arg mem_le_rand ,contr 
-0x673c 028428 call memcpy16 
-0x673d 028429 branch store_ble_rec_data_common 
-:      028432 nvram_find_addr_from_bd_list:
-0x673e 028433 call disable_user 
-0x673f 028434 fetch 1 ,mem_nv_data_number 
-0x6740 028435 rtn blank 
-0x6741 028436 fetch 2 ,mem_ui_state_map 
-0x6742 028437 bbit1 ui_state_bt_connected ,find_addr_from_bd_list_spp_mode 
-:      028438 find_addr_from_bd_list_ble_mode:
-0x6743 028439 bpatchx patch32_7 ,mem_patch32 
-0x6744 028440 fetch 1 ,mem_le_conn_peer_addr_type 
-0x6745 028441 beq master_public_addr ,find_addr_from_bd_list_static_addr 
-0x6746 028442 fetch 1 ,mem_le_plap + 5 
-0x6747 028443 compare 0xc0 ,pdata ,0xc0 
-0x6748 028444 branch find_addr_from_bd_list_static_addr ,true 
-0x6749 028445 compare 0x40 ,pdata ,0xc0 
-0x674a 028446 branch find_addr_from_bd_list_random_addr ,true 
-0x674b 028447 compare 0x00 ,pdata ,0xc0 
-0x674c 028448 branch find_addr_from_bd_list_random_non_resolvable_private_address ,true 
-:      028449 find_addr_from_bd_list_static_addr:
-0x674d 028450 jam rec_4_mode_static_address ,mem_temp_reconn_record 
-0x674e 028451 fetch 6 ,mem_le_plap 
-0x674f 028452 branch find_addr_from_bd_list_common 
-:      028454 find_addr_from_bd_list_random_non_resolvable_private_address:
-0x6750 028455 jam rec_4_mode_random_non_resolvable_private_address ,mem_temp_reconn_record 
-0x6751 028456 branch find_addr_from_bd_list_common 
-:      028459 find_addr_from_bd_list_random_addr:
-0x6752 028460 jam rec_4_mode_random_resolvable_private_address ,mem_temp_reconn_record 
-0x6753 028461 branch find_addr_from_bd_list_common 
-:      028464 find_addr_from_bd_list_spp_mode:
-0x6754 028465 bpatchx patch33_0 ,mem_patch33 
-0x6755 028466 jam rec_3_mode ,mem_temp_reconn_record 
-0x6756 028467 fetch 6 ,mem_plap 
-:      028468 find_addr_from_bd_list_common:
-0x6757 028469 store 6 ,mem_temp_reconn_record + 1 
-0x6758 028470 fetch 2 ,mem_nv_data_ptr 
-0x6759 028471 ifetcht 1 ,pdata 
-0x675a 028472 pincrease 1 
-0x675b 028473 store 2 ,mem_list_item_ptr 
-0x675c 028474 storet 1 ,mem_select_list_item 
-0x675d 028475 fetch 1 ,mem_nv_data_number 
-0x675e 028476 icopy regc 
-:      028477 nvram_find_addr_from_list:
-0x675f 028478 fetch 2 ,mem_list_item_ptr 
-0x6760 028479 copy pdata ,rega 
-0x6761 028480 call nvram_find_addr_from_list_compare 
-0x6762 028481 rtn user 
-0x6763 028482 fetcht 2 ,mem_list_item_ptr 
-0x6764 028483 increase nv_data_len ,temp 
-0x6765 028484 storet 2 ,mem_list_item_ptr 
-0x6766 028485 increase -1 ,temp 
-0x6767 028486 ifetch 1 ,temp 
-0x6768 028487 store 1 ,mem_select_list_item 
-0x6769 028488 increase -1 ,regc 
-0x676a 028489 nbranch nvram_find_addr_from_list ,zero 
-0x676b 028490 fetch 1 ,mem_nv_data_number 
-0x676c 028491 pincrease decreased_one 
-0x676d 028492 store 1 ,mem_select_list_item 
-0x676e 028493 rtn 
-:      028494 nvram_find_addr_from_list_compare:
-0x676f 028495 fetch 1 ,mem_temp_reconn_record 
-0x6770 028496 bne rec_3_mode ,find_addr_from_list_compare_ble_mode 
-:      028497 find_master_addr_from_list_compare:
-0x6771 028498 arg mem_temp_reconn_record ,regb 
-0x6772 028499 arg 7 ,loopcnt 
-0x6773 028500 call string_compare 
-0x6774 028501 branch enable_user ,zero 
-0x6775 028502 rtn 
-:      028504 find_addr_from_list_compare_ble_mode:
-0x6776 028505 beq rec_4_mode_random_resolvable_private_address ,find_irk_form_list_compare 
-0x6777 028506 beq rec_4_mode_random_non_resolvable_private_address ,find_ediv_form_list_compare 
-0x6778 028507 branch find_master_addr_from_list_compare 
-:      028509 find_irk_form_list_compare:
-0x6779 028510 ifetcht 1 ,rega 
-0x677a 028511 isub temp ,null 
-0x677b 028512 nrtn zero 
-0x677c 028513 arg mem_le_prand ,contw 
-0x677d 028514 arg 16 ,loopcnt 
-0x677e 028515 call clear_mem 
-0x677f 028516 fetch 3 ,mem_le_plap + 3 
-0x6780 028517 store 3 ,mem_le_prand 
-0x6781 028518 call genernate_master_macaddress 
-0x6782 028519 fetch 2 ,mem_le_aes_128 + 13 
-0x6783 028520 byteswap pdata ,pdata 
-0x6784 028521 lshift8 pdata ,temp 
-0x6785 028522 ifetch 1 ,contr 
-0x6786 028523 iadd temp ,pdata 
-0x6787 028524 fetcht 3 ,mem_le_plap 
-0x6788 028525 isub temp ,null 
-0x6789 028526 branch enable_user ,zero 
-0x678a 028527 rtn 
-:      028530 genernate_master_macaddress:
-0x678b 028531 arg mem_le_prand ,contr 
-0x678c 028532 call load_data128 
-0x678d 028534 ifetch 1 ,rega 
-0x678e 028535 call load_regext 
-0x678f 028536 force 0x38 ,aes_ctrl 
-0x6790 028537 force 0x0 ,aes_ctrl 
-0x6791 028538 call wait_aes 
-0x6792 028539 arg mem_le_aes_128 ,contw 
-0x6793 028540 branch store_aes_result 
-:      028542 find_ediv_form_list_compare:
-0x6794 028543 ifetcht 1 ,rega 
-0x6795 028544 isub temp ,null 
-0x6796 028545 nrtn zero 
-0x6797 028546 copy contr ,rega 
-0x6798 028547 add contr ,8 ,regc 
-0x6799 028548 arg mem_le_rand ,regb 
-0x679a 028549 arg 8 ,loopcnt 
-0x679b 028550 call string_compare 
-0x679c 028551 branch enable_user ,zero 
-0x679d 028552 copy regc ,rega 
-0x679e 028553 arg mem_le_irk ,regb 
-0x679f 028554 arg 8 ,loopcnt 
-0x67a0 028555 call string_compare 
-0x67a1 028556 branch enable_user ,zero 
-0x67a2 028557 rtn 
-:      028559 check_nvram:
-0x67a3 028560 fetch 2 ,mem_nv_data_ptr 
-0x67a4 028561 ifetcht 1 ,pdata 
-0x67a5 028562 pincrease nv_data_len 
-0x67a6 028563 ifetch 1 ,pdata 
-0x67a7 028564 isub temp ,null 
-0x67a8 028565 rtn 
-:      028567 init_device_list:
-0x67a9 028568 fetch 1 ,mem_nv_data_number 
-0x67aa 028569 icopy loopcnt 
-0x67ab 028570 fetcht 2 ,mem_nv_data_ptr 
-0x67ac 028571 setarg 0 
-:      028572 init_device_list_loop:
-0x67ad 028573 istore 1 ,temp 
-0x67ae 028574 increase nv_data_len ,temp 
-0x67af 028575 pincrease 1 
-0x67b0 028576 loop init_device_list_loop 
-0x67b1 028577 rtn 
-:      028579 load_device_list:
-0x67b2 028580 bpatchx patch33_1 ,mem_patch33 
-0x67b3 028581 call nvram_find_addr_from_bd_list 
-0x67b4 028582 fetch 1 ,mem_state 
-0x67b5 028583 setflag user ,state_combkey ,pdata 
-0x67b6 028584 store 1 ,mem_state 
-0x67b7 028585 nbranch clear_key_exists ,user 
-0x67b8 028586 add rega ,10 ,contr 
-0x67b9 028588 arg mem_link_key ,contw 
-0x67ba 028589 call memcpy16 
-0x67bb 028590 branch check_link_key_load 
-:      028591 clear_key_exists:
-0x67bc 028592 jam 0 ,mem_link_key_exists 
-0x67bd 028593 rtn 
-:      028595 load_device_list_mode_4:
-0x67be 028596 fetch 9 ,mem_le_ediv 
-0x67bf 028597 branch clear_ltk_exists ,blank 
-0x67c0 028598 call nvram_find_addr_from_bd_list 
-0x67c1 028599 nbranch clear_ltk_exists ,user 
-0x67c2 028600 fetch 2 ,mem_list_item_ptr 
-0x67c3 028601 add pdata ,1 ,contr 
-0x67c4 028602 arg mem_le_irk ,contw 
-0x67c5 028603 call memcpy16 
-0x67c6 028604 arg mem_le_ltk ,contw 
-0x67c7 028605 call memcpy16 
-0x67c8 028606 jam 1 ,mem_ltk_exists 
-0x67c9 028607 rtn 
-:      028609 clear_ltk_exists:
-0x67ca 028610 jam 0 ,mem_ltk_exists 
-0x67cb 028611 rtn 
-:      028614 eeprom_store_le_reconn_info:
-0x67cc 028615 fetch 6 ,mem_le_plap 
-0x67cd 028616 store 6 ,mem_temp_lap 
-0x67ce 028617 jam rec_4_mode ,mem_record_bt_mode 
-0x67cf 028618 branch eeprom_store_reconn_info 
-:      028619 eeprom_store_bd_reconn_info:
-0x67d0 028620 fetch 6 ,mem_plap 
-0x67d1 028621 store 6 ,mem_temp_lap 
-0x67d2 028622 jam rec_3_mode ,mem_record_bt_mode 
-:      028623 eeprom_store_reconn_info:
-0x67d3 028624 fetch 1 ,mem_device_option 
-0x67d4 028625 beq dvc_op_module ,check_51cmd_update_device_record 
-0x67d5 028626 bbit1 dvc_op_mouse ,mouse_store_remote_bdaddr 
-0x67d6 028627 rtn 
-:      028630 check_link_key_load:
-0x67d7 028631 fetch 8 ,mem_link_key 
-0x67d8 028632 fetcht 8 ,mem_link_key + 8 
-0x67d9 028633 ior temp ,pdata 
-0x67da 028634 rtn blank 
-0x67db 028635 jam 1 ,mem_link_key_exists 
-0x67dc 028636 rtn 
-:      028643 gpio_set_wake_by_current_state:
-0x67dd 028644 bpatchx patch33_2 ,mem_patch33 
-0x67de 028645 set1 7 ,temp 
-0x67df 028646 call gpio_get_bit 
-0x67e0 028647 nsetflag true ,7 ,temp 
-:      028652 gpio_set_wake:
-0x67e1 028653 bpatchx patch33_3 ,mem_patch33 
-0x67e2 028654 sub temp ,ui_button_gpio_disable ,null 
-0x67e3 028655 rtn zero 
-0x67e4 028656 isolate0 7 ,temp 
-0x67e5 028657 and temp ,0x1f ,queue 
-0x67e6 028658 fetch 4 ,mem_gpio_wakeup_low 
-0x67e7 028659 qsetflag true ,pdata 
-0x67e8 028660 store 4 ,mem_gpio_wakeup_low 
-0x67e9 028661 fetch 4 ,mem_gpio_wakeup_high 
-0x67ea 028662 nqsetflag true ,pdata 
-0x67eb 028663 store 4 ,mem_gpio_wakeup_high 
-0x67ec 028664 rtn 
-:      028667 gpio_clr_wake:
-0x67ed 028668 bpatchx patch33_4 ,mem_patch33 
-0x67ee 028669 sub temp ,ui_button_gpio_disable ,null 
-0x67ef 028670 rtn zero 
-0x67f0 028671 isolate0 7 ,temp 
-0x67f1 028672 and temp ,0x1f ,queue 
-0x67f2 028673 fetch 4 ,mem_gpio_wakeup_low 
-0x67f3 028674 qset0 pdata 
-0x67f4 028675 store 4 ,mem_gpio_wakeup_low 
-0x67f5 028676 fetch 4 ,mem_gpio_wakeup_high 
-0x67f6 028677 qset0 pdata 
-0x67f7 028678 store 4 ,mem_gpio_wakeup_high 
-0x67f8 028679 rtn 
-:      028682 gpio_config_input_nowake:
-0x67f9 028683 call gpio_clr_wake 
-0x67fa 028684 branch gpio_config_input_without_wake 
-:      028687 gpio_config_input:
-0x67fb 028688 sub temp ,ui_button_gpio_disable ,null 
-0x67fc 028689 rtn zero 
-0x67fd 028690 ncall gpio_set_wake ,wake 
-:      028692 gpio_config_input_without_wake:
-0x67fe 028693 arg core_gpio_pd0 ,contw 
-0x67ff 028694 call gpio_set_bit 
-0x6800 028695 setflip gpio_active_bit ,temp 
-0x6801 028696 arg core_gpio_pu0 ,contw 
-0x6802 028697 call gpio_set_bit 
-0x6803 028698 set0 gpio_active_bit ,temp 
-0x6804 028699 arg core_gpio_oe0 ,contw 
-0x6805 028700 branch gpio_set_bit 
-:      028703 gpio_set_high_impedance:
-0x6806 028704 arg core_gpio_pd0 ,contw 
-0x6807 028705 call gpio_set_bit 
-0x6808 028706 set0 gpio_active_bit ,temp 
-0x6809 028707 arg core_gpio_pu0 ,contw 
-0x680a 028708 call gpio_set_bit 
-0x680b 028709 set0 gpio_active_bit ,temp 
-0x680c 028710 arg core_gpio_oe0 ,contw 
-0x680d 028711 branch gpio_set_bit 
-:      028715 gpio_config_output:
-0x680e 028716 sub temp ,ui_button_gpio_disable ,null 
-0x680f 028717 rtn zero 
-0x6810 028718 setflip gpio_active_bit ,temp 
-0x6811 028719 call gpio_out 
-:      028720 gpio_config_output0:
-0x6812 028721 set1 gpio_active_bit ,temp 
-0x6813 028722 arg core_gpio_oe0 ,contw 
-0x6814 028723 branch gpio_set_bit 
-:      028725 gpio_common:
-0x6815 028726 and temp ,0x07 ,queue 
-0x6816 028727 rshift3 temp ,pdata 
-0x6817 028728 and_into 3 ,pdata 
-0x6818 028729 iadd contw ,contw 
-0x6819 028730 ifetch 1 ,contw 
-0x681a 028731 rtn 
-:      028733 gpio_check_active:
-0x681b 028734 arg core_gpio_out0 ,contw 
-0x681c 028735 branch get_bit_common 
-:      028739 gpio_get_bit:
-0x681d 028740 arg core_gpio_in ,contw 
-:      028741 get_bit_common:
-0x681e 028742 call gpio_common 
-0x681f 028743 isolate1 gpio_active_bit ,temp 
-0x6820 028744 branch gpio_get_bit_reverse ,true 
-0x6821 028745 qisolate0 pdata 
-0x6822 028746 rtn 
-:      028747 gpio_get_bit_reverse:
-0x6823 028748 qisolate1 pdata 
-0x6824 028749 rtn 
-:      028751 gpio_out_inactive:
-0x6825 028752 sub temp ,ui_button_gpio_disable ,null 
-0x6826 028753 rtn zero 
-0x6827 028754 isolate1 7 ,null 
-0x6828 028755 branch gpio_out_flag 
-:      028757 gpio_out_active:
-0x6829 028758 sub temp ,ui_button_gpio_disable ,null 
-0x682a 028759 rtn zero 
-0x682b 028760 isolate0 7 ,null 
-:      028763 gpio_out_flag:
-0x682c 028764 setarg 0 
-0x682d 028765 nsetflag true ,gpio_active_bit ,pdata 
-0x682e 028766 ixor temp ,temp 
-:      028769 gpio_out:
-0x682f 028770 arg core_gpio_out0 ,contw 
-:      028773 gpio_set_bit:
-0x6830 028774 call gpio_common 
-0x6831 028775 isolate1 gpio_active_bit ,temp 
-0x6832 028776 qsetflag true ,pdata 
-0x6833 028777 istore 1 ,contw 
-0x6834 028778 rtn 
-:      028780 gpio_set_before_lpm_common:
-0x6835 028781 arg -1 ,rega 
-0x6836 028782 hfetch 1 ,core_gpio_sel1 
-0x6837 028783 compare 0x02 ,pdata ,0x03 
-0x6838 028784 call neglact4_from_23_pin ,true 
-0x6839 028786 compare 0x01 ,pdata ,0x03 
-0x683a 028787 call neglact2_form_25_pin ,true 
-0x683b 028789 compare 0x03 ,pdata ,0x03 
-0x683c 028790 call neglact2_form_25_pin ,true 
-0x683d 028792 isolate1 2 ,pdata 
-0x683e 028793 call neglect2_from_6_pin ,true 
-0x683f 028795 isolate1 3 ,pdata 
-0x6840 028796 call neglect4_from_9_pin ,true 
-0x6841 028798 isolate1 4 ,pdata 
-0x6842 028799 call neglact2_form_30_pin ,true 
-0x6843 028801 isolate1 6 ,pdata 
-0x6844 028802 nsetflag true ,04 ,rega 
-0x6845 028804 isolate1 7 ,pdata 
-0x6846 028805 nsetflag true ,05 ,rega 
-0x6847 028807 hfetch 1 ,core_gpio_sel2 
-0x6848 028808 isolate1 0 ,pdata 
-0x6849 028809 nsetflag true ,27 ,rega 
-0x684a 028810 isolate1 1 ,pdata 
-0x684b 028811 nsetflag true ,28 ,rega 
-0x684c 028812 isolate1 2 ,pdata 
-0x684d 028813 nsetflag true ,03 ,rega 
-0x684e 028814 isolate1 3 ,pdata 
-0x684f 028815 nsetflag true ,08 ,rega 
-0x6850 028816 isolate1 4 ,pdata 
-0x6851 028817 nsetflag true ,20 ,rega 
-0x6852 028818 isolate1 5 ,pdata 
-0x6853 028819 nsetflag true ,21 ,rega 
-0x6854 028820 isolate1 6 ,pdata 
-0x6855 028821 nsetflag true ,22 ,rega 
-0x6856 028822 isolate1 7 ,pdata 
-0x6857 028823 nsetflag true ,23 ,rega 
-0x6858 028825 hfetch 1 ,core_gpio_sel 
-0x6859 028826 isolate1 0 ,pdata 
-0x685a 028827 nsetflag true ,05 ,rega 
-0x685b 028828 isolate1 1 ,pdata 
-0x685c 028829 nsetflag true ,06 ,rega 
-0x685d 028830 isolate1 2 ,pdata 
-0x685e 028831 nsetflag true ,07 ,rega 
-0x685f 028832 isolate1 3 ,pdata 
-0x6860 028833 nsetflag true ,18 ,rega 
-0x6861 028834 isolate1 4 ,pdata 
-0x6862 028835 nsetflag true ,19 ,rega 
-0x6863 028836 isolate1 5 ,pdata 
-0x6864 028837 nsetflag true ,20 ,rega 
-0x6865 028838 isolate1 6 ,pdata 
-0x6866 028839 nsetflag true ,21 ,rega 
-0x6867 028840 isolate1 7 ,pdata 
-0x6868 028841 nsetflag true ,22 ,rega 
-0x6869 028843 hfetch 1 ,core_uart_ctrl 
-0x686a 028844 isolate1 4 ,pdata 
-0x686b 028845 call neglact2_form_2_pin ,true 
-0x686c 028846 bpatchx patch33_5 ,mem_patch33 
-0x686d 028848 hfetch 4 ,core_gpio_pu0 
-0x686e 028849 hfetcht 4 ,core_gpio_pd0 
-0x686f 028850 ior temp ,pdata 
-0x6870 028851 invert pdata ,pdata 
-0x6871 028852 iand rega ,pdata 
-0x6872 028854 hstore 4 ,core_gpio_oe0 
-0x6873 028855 rtn 
-:      028858 neglect2_from_6_pin:
-0x6874 028859 arg 6 ,queue 
-0x6875 028860 branch neglect_2_pin 
-:      028861 neglect4_from_9_pin:
-0x6876 028862 arg 9 ,queue 
-0x6877 028863 branch neglact_4_pin 
-:      028864 neglact4_from_23_pin:
-0x6878 028865 arg 23 ,queue 
-0x6879 028866 branch neglact_4_pin 
-:      028867 neglact2_form_25_pin:
-0x687a 028868 arg 25 ,queue 
-0x687b 028869 branch neglect_2_pin 
-:      028870 neglact2_form_30_pin:
-0x687c 028871 arg 30 ,queue 
-0x687d 028872 branch neglect_2_pin 
-:      028873 neglact2_form_2_pin:
-0x687e 028874 arg 2 ,queue 
-0x687f 028875 branch neglect_2_pin 
-:      028876 neglact_1_pin:
-0x6880 028877 arg 1 ,loopcnt 
-0x6881 028878 branch neglect_pin_loop 
-:      028879 neglact_4_pin:
-0x6882 028880 arg 4 ,loopcnt 
-0x6883 028881 branch neglect_pin_loop 
-:      028882 neglect_2_pin:
-0x6884 028883 arg 2 ,loopcnt 
-:      028884 neglect_pin_loop:
-0x6885 028885 qset0 rega 
-0x6886 028886 increase 1 ,queue 
-0x6887 028887 loop neglect_pin_loop 
-0x6888 028888 rtn 
-:      028896 gpio_cfg_uart_tx_output:
-0x6889 028897 call gpio_uart2gpio 
-0x688a 028898 arg uart_wakeup_tx ,temp 
-0x688b 028899 branch gpio_config_output 
-:      028901 gpio_pu_uart_tx:
-0x688c 028902 call gpio_cfg_uart_tx_output 
-0x688d 028903 arg uart_wakeup_tx ,temp 
-0x688e 028904 branch gpio_out_inactive 
-:      028908 gpio_rx_config_input_with_pu:
-0x688f 028909 call gpio_uart2gpio 
-0x6890 028910 hfetch 1 ,core_gpio_pu0 
-0x6891 028911 set1 uart_wakeup_rx ,pdata 
-0x6892 028912 hstore 1 ,core_gpio_pu0 
-0x6893 028913 arg uart_wakeup_rx ,temp 
-0x6894 028914 branch gpio_config_input 
-:      028916 gpio_uart2gpio:
-0x6895 028917 hfetch 1 ,core_gpio_sel1 
-0x6896 028918 and_into 0xfb ,pdata 
-0x6897 028919 hstore 1 ,core_gpio_sel1 
-0x6898 028920 rtn 
-:      028922 gpio_check_uart_state:
-0x6899 028923 hfetch 1 ,core_gpio_sel1 
-0x689a 028924 isolate1 2 ,pdata 
-0x689b 028925 rtn 
-:      028927 load_chip_option:
-0x689c 028928 call otp_enable_chgpump 
-0x689d 028929 setarg otp_chip_functions 
-0x689e 028930 arg mem_chip_functions ,rega 
-0x689f 028931 arg 0x02 ,temp 
-0x68a0 028932 call otpd_read_data 
-0x68a1 028933 branch otp_disable_chgpump 
-:      028936 load_adc_init:
-0x68a2 028937 call otp_enable_chgpump 
-0x68a3 028938 setarg otp_adc_io_0_5v_addr 
-0x68a4 028939 arg mem_0_5_adc_io_data ,rega 
-0x68a5 028940 arg 14 ,temp 
-0x68a6 028941 call otpd_read_data 
-0x68a7 028942 branch otp_disable_chgpump 
-:      028946 adc_init_data:
-0x68a8 028947 bpatchx patch33_6 ,mem_patch33 
-0x68a9 028949 call load_adc_init 
-0x68aa 028951 fetch 1 ,mem_adc_config_flag 
-0x68ab 028952 beq adc_config_vinlpm ,adc_init_data_vinlpm 
-0x68ac 028953 beq adc_config_hvin ,adc_init_data_hvin 
-0x68ad 028954 beq adc_config_gpio ,adc_init_data_io 
-0x68ae 028955 rtn 
-:      028957 adc_init_data_vinlpm:
-0x68af 028958 fetcht 2 ,mem_otp_adc_flag 
-0x68b0 028959 setarg otp_adc_flag 
-0x68b1 028960 isub temp ,null 
-0x68b2 028961 branch adc_check_data_vinlpm ,zero 
-0x68b3 028962 setarg 0x4dfa 
-0x68b4 028963 store 2 ,mem_3v_adc_vinlpm_data 
-0x68b5 028964 setarg 0x4894 
-0x68b6 028965 store 2 ,mem_2v_adc_vinlpm_data 
-0x68b7 028966 branch set_vdd_reference_voltage_1v 
-:      028968 adc_check_data_vinlpm:
-0x68b8 028969 fetch 2 ,mem_3v_adc_vinlpm_data 
-0x68b9 028970 nbranch adc_check_2v_vinlpm ,blank 
-0x68ba 028971 setarg 0x4dfa 
-0x68bb 028972 store 2 ,mem_3v_adc_vinlpm_data 
-:      028973 adc_check_2v_vinlpm:
-0x68bc 028974 fetch 2 ,mem_2v_adc_vinlpm_data 
-0x68bd 028975 nbranch set_vdd_reference_voltage_1v ,blank 
-0x68be 028976 setarg 0x4894 
-0x68bf 028977 store 2 ,mem_2v_adc_vinlpm_data 
-:      028978 set_vdd_reference_voltage_1v:
-0x68c0 028979 setarg 100 
-0x68c1 028980 store 2 ,mem_reference_voltage 
-0x68c2 028981 rtn 
-:      028983 adc_init_data_hvin:
-0x68c3 028984 fetcht 2 ,mem_otp_adc_flag 
-0x68c4 028985 setarg otp_adc_flag 
-0x68c5 028986 isub temp ,null 
-0x68c6 028987 branch adc_check_data_hvin ,zero 
-0x68c7 028988 setarg 0x5932 
-0x68c8 028989 store 2 ,mem_5v_adc_hvin_data 
-0x68c9 028990 setarg 0x4323 
-0x68ca 028991 store 2 ,mem_1v_adc_hvin_data 
-0x68cb 028992 branch set_vdd_reference_voltage_4v 
-:      028994 adc_check_data_hvin:
-0x68cc 028995 fetch 2 ,mem_5v_adc_hvin_data 
-0x68cd 028996 nbranch adc_check_1v_hvin ,blank 
-0x68ce 028997 setarg 0x5932 
-0x68cf 028998 store 2 ,mem_5v_adc_hvin_data 
-:      028999 adc_check_1v_hvin:
-0x68d0 029000 fetch 2 ,mem_1v_adc_hvin_data 
-0x68d1 029001 nbranch set_vdd_reference_voltage_4v ,blank 
-0x68d2 029002 setarg 0x4323 
-0x68d3 029003 store 2 ,mem_1v_adc_hvin_data 
-:      029004 set_vdd_reference_voltage_4v:
-0x68d4 029005 setarg 400 
-0x68d5 029006 store 2 ,mem_reference_voltage 
-0x68d6 029007 rtn 
-:      029009 adc_init_data_io:
-0x68d7 029010 fetcht 2 ,mem_otp_adc_flag 
-0x68d8 029011 setarg otp_adc_flag 
-0x68d9 029012 isub temp ,null 
-0x68da 029013 branch adc_check_data_io ,zero 
-0x68db 029014 setarg 0x6946 
-0x68dc 029015 store 2 ,mem_1v_adc_io_data 
-0x68dd 029016 setarg 0x5377 
-0x68de 029017 store 2 ,mem_0_5_adc_io_data 
-0x68df 029018 branch set_vdd_reference_voltage_0_5v 
-:      029020 adc_check_data_io:
-0x68e0 029021 fetch 2 ,mem_1v_adc_io_data 
-0x68e1 029022 nbranch adc_check_0_5v_io ,blank 
-0x68e2 029023 setarg 0x6946 
-0x68e3 029024 store 2 ,mem_1v_adc_io_data 
-:      029025 adc_check_0_5v_io:
-0x68e4 029026 fetch 2 ,mem_0_5_adc_io_data 
-0x68e5 029027 nbranch set_vdd_reference_voltage_0_5v ,blank 
-0x68e6 029028 setarg 0x5377 
-0x68e7 029029 store 2 ,mem_0_5_adc_io_data 
-:      029030 set_vdd_reference_voltage_0_5v:
-0x68e8 029031 setarg 50 
-0x68e9 029032 store 2 ,mem_reference_voltage 
-0x68ea 029033 rtn 
-:      029036 adc_set_mode:
-0x68eb 029037 fetch 1 ,mem_adc_config_flag 
-0x68ec 029038 beq adc_config_vinlpm ,adc_check_vinlpm 
-0x68ed 029039 beq adc_config_hvin ,adc_check_hvin 
-0x68ee 029040 beq adc_config_gpio ,adc_check_gpio 
-0x68ef 029041 rtn 
-:      029042 adc_check_vinlpm:
-0x68f0 029043 jam 0xbf ,rf_adc_mode 
-0x68f1 029044 branch read_adc 
-:      029045 adc_check_hvin:
-0x68f2 029046 jam 0xaf ,rf_adc_mode 
-0x68f3 029047 branch read_adc 
-:      029048 adc_check_gpio:
-0x68f4 029049 jam 0x8f ,rf_adc_mode 
-0x68f5 029050 fetch 1 ,mem_adc_channel 
-0x68f6 029051 hstore 1 ,rf_adc_ch 
-0x68f7 029052 branch read_adc 
-:      029053 read_adc:
-0x68f8 029054 bpatchx patch33_7 ,mem_patch33 
-0x68f9 029055 hfetch 1 ,core_uart_baud + 1 
-0x68fa 029056 set1 7 ,pdata 
-0x68fb 029057 hstore 1 ,core_uart_baud + 1 
-0x68fc 029058 hfetch 1 ,rf_adc_ch 
-0x68fd 029059 or_into 0x30 ,pdata 
-0x68fe 029060 hstore 1 ,rf_adc_ch 
-0x68ff 029061 jam 0x7c ,rfen_adc 
-0x6900 029062 jam 0xaa ,rf_adc_gc 
-0x6901 029063 nop 5000 
-0x6902 029064 hfetcht 2 ,core_adc_sum 
-0x6903 029065 hfetch 1 ,core_uart_baud + 1 
-0x6904 029066 set0 7 ,pdata 
-0x6905 029067 hstore 1 ,core_uart_baud + 1 
-0x6906 029068 storet 2 ,mem_adc_current_value 
-0x6907 029069 rtn 
-:      029071 vdd_calculate_by_mode:
-0x6908 029072 bpatchx patch34_0 ,mem_patch34 
-0x6909 029073 fetch 1 ,mem_adc_config_flag 
-0x690a 029074 beq adc_config_vinlpm ,vdd_calculate_vinlpm 
-0x690b 029075 beq adc_config_hvin ,vdd_calculate_hvin 
-0x690c 029076 beq adc_config_gpio ,vdd_calculate_io 
-0x690d 029077 rtn 
-:      029079 vdd_calculate_vinlpm:
-0x690e 029080 fetch 2 ,mem_3v_adc_vinlpm_data 
-0x690f 029081 fetcht 2 ,mem_2v_adc_vinlpm_data 
-0x6910 029082 arg 200 ,regc 
-0x6911 029083 branch vdd_calculate 
-:      029085 vdd_calculate_hvin:
-0x6912 029086 fetch 2 ,mem_5v_adc_hvin_data 
-0x6913 029087 fetcht 2 ,mem_1v_adc_hvin_data 
-0x6914 029088 arg 100 ,regc 
-0x6915 029089 branch vdd_calculate 
-:      029091 vdd_calculate_io:
-0x6916 029092 fetch 2 ,mem_1v_adc_io_data 
-0x6917 029093 fetcht 2 ,mem_0_5_adc_io_data 
-0x6918 029094 arg 50 ,regc 
-0x6919 029095 branch vdd_calculate 
-:      029097 vdd_calculate:
-0x691a 029098 isub temp ,rega 
-0x691b 029099 fetch 2 ,mem_adc_current_value 
-0x691c 029100 isub temp ,pdata 
-0x691d 029101 nbranch vdd_calculate1 ,positive 
-0x691e 029102 fetcht 2 ,mem_reference_voltage 
-0x691f 029103 imul32 temp ,regb 
-0x6920 029104 copy regc ,pdata 
-0x6921 029105 imul32 rega ,pdata 
-0x6922 029106 iadd regb ,pdata 
-:      029107 vdd_calculate2:
-0x6923 029108 idiv rega 
-0x6924 029109 call wait_div_end 
-0x6925 029110 quotient pdata 
-0x6926 029111 rtn 
-:      029113 vdd_calculate1:
-0x6927 029114 copy temp ,pdata 
-0x6928 029115 fetcht 2 ,mem_adc_current_value 
-0x6929 029116 isub temp ,pdata 
-0x692a 029117 fetcht 2 ,mem_reference_voltage 
-0x692b 029118 imul32 temp ,regb 
-0x692c 029119 copy regc ,pdata 
-0x692d 029120 imul32 rega ,pdata 
-0x692e 029121 isub regb ,pdata 
-0x692f 029122 branch vdd_calculate2 
-:      029133 adc_bat_percent_lowpower_out:
-0x6930 029134 ifetch 8 ,rega 
-0x6931 029135 store 8 ,mem_pdatatemp 
-0x6932 029136 fetch 2 ,mem_pdatatemp 
-0x6933 029137 fetcht 2 ,mem_pdatatemp + 2 
-0x6934 029138 isub temp ,rega 
-0x6935 029139 fetch 2 ,mem_pdatatemp + 6 
-0x6936 029140 isub temp ,regb 
-0x6937 029141 fetcht 2 ,mem_pdatatemp + 4 
-0x6938 029142 isub temp ,null 
-0x6939 029143 ncall adc_set_low_power_flag ,positive 
-0x693a 029144 mul32 regb ,100 ,pdata 
-0x693b 029145 idiv rega 
-0x693c 029146 call wait_div_end 
-0x693d 029147 quotient pdata 
-0x693e 029148 call adc_set_no_power_flag ,blank 
-0x693f 029149 rtn 
-:      029150 adc_set_low_power_flag:
-0x6940 029151 fetch 1 ,mem_adc_power_flag 
-0x6941 029152 set1 0 ,pdata 
-0x6942 029153 store 1 ,mem_adc_power_flag 
-0x6943 029154 rtn 
-:      029155 adc_set_no_power_flag:
-0x6944 029156 fetcht 1 ,mem_adc_power_flag 
-0x6945 029157 set1 1 ,temp 
-0x6946 029158 storet 1 ,mem_adc_power_flag 
-0x6947 029159 rtn 
-:      029164 keyscan_key_init:
-0x6948 029165 fetch 2 ,mem_key_num_ptr 
-0x6949 029166 ifetch 1 ,pdata 
-:      029167 keyscan_key_init_next:
-0x694a 029168 rtn blank 
-0x694b 029169 copy pdata ,loopcnt 
-0x694c 029171 fetch 2 ,mem_keyscan_ptr 
-0x694d 029172 increase 3 ,pdata 
-0x694e 029173 copy pdata ,rega 
-:      029174 keyscan_key_init_lp1:
-0x694f 029175 ifetcht 1 ,rega 
-0x6950 029176 call gpio_config_input 
-0x6951 029177 increase key_conf_struct_len ,rega 
-0x6952 029178 loop keyscan_key_init_lp1 
-:      029179 keyscan_key_init_end:
-0x6953 029180 rtn 
-:      029182 keyscan_scan_key:
-0x6954 029183 fetch 2 ,mem_keyscan_ptr 
-0x6955 029184 increase 3 ,pdata 
-0x6956 029185 copy pdata ,rega 
-0x6957 029187 force 0 ,regb 
-0x6958 029188 jam 0 ,mem_key_value_temp 
-:      029189 keyscan_scan_key_lp1:
-0x6959 029190 ifetcht 1 ,rega 
-0x695a 029191 call gpio_get_bit 
-0x695b 029192 bpatchx patch34_1 ,mem_patch34 
-0x695c 029193 fetch 2 ,mem_key_value_temp 
-0x695d 029194 copy regb ,queue 
-0x695e 029195 qsetflag true ,pdata 
-0x695f 029196 store 2 ,mem_key_value_temp 
-0x6960 029197 increase key_conf_struct_len ,rega 
-0x6961 029198 increase 1 ,regb 
-0x6962 029199 fetch 2 ,mem_key_num_ptr 
-0x6963 029200 ifetch 1 ,pdata 
-:      029201 keyscan_scan_key_lp1_next:
-0x6964 029202 ixor regb ,null 
-0x6965 029203 nbranch keyscan_scan_key_lp1 ,zero 
-0x6966 029204 fetch 2 ,mem_key_value_temp 
-0x6967 029205 fetcht 2 ,mem_key_value 
-0x6968 029206 ixor temp ,null 
-0x6969 029207 rtn zero 
-0x696a 029208 enable user 
-0x696b 029209 rtn 
-:      029211 keyscan_process_lpm_before:
-0x696c 029212 fetch 2 ,mem_key_num_ptr 
-0x696d 029213 ifetch 1 ,pdata 
-:      029214 keyscan_process_lpm_before_next:
-0x696e 029215 rtn blank 
-0x696f 029216 copy pdata ,loopcnt 
-0x6970 029217 fetch 2 ,mem_keyscan_ptr 
-0x6971 029218 increase 3 ,pdata 
-0x6972 029219 copy pdata ,rega 
-:      029220 keyscan_process_lpm_before_lp1:
-0x6973 029221 ifetcht 1 ,rega 
-0x6974 029222 call gpio_set_wake_by_current_state 
-0x6975 029223 increase key_conf_struct_len ,rega 
-0x6976 029224 loop keyscan_process_lpm_before_lp1 
-:      029225 keyscan_process_lpm_before_end:
-0x6977 029226 rtn 
-:      029228 keyscan_key_process:
-0x6978 029229 arg key_scan_timer ,queue 
-0x6979 029230 call timer_check 
-0x697a 029231 nrtn blank 
-0x697b 029232 setarg 0x20 
-0x697c 029233 arg key_scan_timer ,queue 
-0x697d 029234 call timer_init 
-0x697e 029235 disable user 
-0x697f 029236 call keyscan_process_lpm_before 
-0x6980 029237 bpatchx patch34_2 ,mem_patch34 
-0x6981 029238 fetch 2 ,mem_key_num_ptr 
-0x6982 029239 ifetch 1 ,pdata 
-:      029240 keyscan_key_process_next:
-0x6983 029241 rtn blank 
-0x6984 029242 call keyscan_scan_key 
-0x6985 029243 nbranch lpm_button_clean_wake_lock ,user 
-0x6986 029244 call lpm_button_get_wake_lock 
-0x6987 029245 disable user 
-0x6988 029246 fetch 2 ,mem_key_value_temp 
-0x6989 029247 store 2 ,mem_key_value_temp4 
-0x698a 029248 jam 0 ,mem_key_value_temp6 
-0x698b 029249 force 0 ,queue 
-:      029250 keyscan_key_lp1:
-0x698c 029251 fetch 2 ,mem_key_value 
-0x698d 029252 rshift pdata ,temp 
-0x698e 029253 storet 2 ,mem_key_value 
-0x698f 029254 and pdata ,0x01 ,pdata 
-0x6990 029255 fetcht 2 ,mem_key_value_temp4 
-0x6991 029256 and temp ,0x01 ,rega 
-0x6992 029257 rshift temp ,temp 
-0x6993 029258 storet 2 ,mem_key_value_temp4 
-0x6994 029259 ixor rega ,null 
-0x6995 029260 ncall keyscan_send_key_data ,zero 
-0x6996 029261 fetch 2 ,mem_key_num_ptr 
-0x6997 029262 ifetch 1 ,pdata 
-:      029263 keyscan_key_lp1_next:
-0x6998 029264 fetcht 1 ,mem_key_value_temp6 
-0x6999 029265 increase 1 ,temp 
-0x699a 029266 storet 1 ,mem_key_value_temp6 
-0x699b 029267 copy temp ,queue 
-0x699c 029268 ixor queue ,null 
-0x699d 029269 nbranch keyscan_key_lp1 ,zero 
-0x699e 029270 fetch 2 ,mem_key_value_temp 
-0x699f 029271 store 2 ,mem_key_value 
-0x69a0 029272 rtn 
-:      029273 keyscan_send_key_data:
-0x69a1 029274 bpatchx patch34_3 ,mem_patch34 
-0x69a2 029275 fetch 2 ,mem_keyscan_ptr 
-0x69a3 029276 increase 1 ,pdata 
-0x69a4 029277 ifetch 2 ,pdata 
-0x69a5 029278 branch callback_func 
-:      029289 pwm_init:
-0x69a6 029290 hfetch 1 ,core_clksel 
-0x69a7 029291 ior rega ,pdata 
-0x69a8 029292 hstore 1 ,core_clksel 
-0x69a9 029293 hfetch 2 ,core_clkoff 
-0x69aa 029294 set0 clock_off_pwm ,pdata 
-0x69ab 029295 hstore 2 ,core_clkoff 
-:      029296 delay_nop100:
-0x69ac 029297 nop 100 
-0x69ad 029298 rtn 
-:      029309 pwm_out_set:
-0x69ae 029310 fetcht 3 ,mem_pdatatemp + 2 
-0x69af 029311 setarg pwm_12mhz 
-0x69b0 029312 idiv temp 
-0x69b1 029313 call wait_div_end 
-0x69b2 029314 quotient temp 
-0x69b3 029315 fetch 1 ,mem_pdatatemp + 5 
-0x69b4 029316 imul32 temp ,pdata 
-0x69b5 029317 div pdata ,100 
-0x69b6 029318 call wait_div_end 
-0x69b7 029319 quotient rega 
-0x69b8 029320 copy temp ,pdata 
-0x69b9 029321 isub rega ,regb 
-0x69ba 029322 fetch 1 ,mem_pdatatemp + 1 
-0x69bb 029323 call pwm_duty_cycle_set 
-0x69bc 029324 fetch 1 ,mem_pdatatemp 
-0x69bd 029325 branch pwm_enable 
-:      029328 pwm_duty_cycle_set:
-0x69be 029329 beq 0 ,pwm_pwm0_duty_set 
-0x69bf 029330 beq 1 ,pwm_pwm1_duty_set 
-0x69c0 029331 beq 2 ,pwm_pwm2_duty_set 
-0x69c1 029332 beq 3 ,pwm_pwm3_duty_set 
-0x69c2 029333 beq 4 ,pwm_pwm4_duty_set 
-0x69c3 029334 beq 5 ,pwm_pwm5_duty_set 
-:      029335 pwm_pwm0_duty_set:
-0x69c4 029336 arg core_pwm_pcnt0 ,contw 
-0x69c5 029337 branch pwm_set_pncnt 
-:      029338 pwm_pwm1_duty_set:
-0x69c6 029339 arg core_pwm_pcnt1 ,contw 
-0x69c7 029340 branch pwm_set_pncnt 
-:      029341 pwm_pwm2_duty_set:
-0x69c8 029342 arg core_pwm_pcnt2 ,contw 
-0x69c9 029343 branch pwm_set_pncnt 
-:      029344 pwm_pwm3_duty_set:
-0x69ca 029345 arg core_pwm_pcnt3 ,contw 
-0x69cb 029346 branch pwm_set_pncnt 
-:      029347 pwm_pwm4_duty_set:
-0x69cc 029348 arg core_pwm_pcnt4 ,contw 
-0x69cd 029349 branch pwm_set_pncnt 
-:      029350 pwm_pwm5_duty_set:
-0x69ce 029351 arg core_pwm_pcnt5 ,contw 
-0x69cf 029352 branch pwm_set_pncnt 
-:      029353 pwm_set_pncnt:
-0x69d0 029354 copy rega ,pdata 
-0x69d1 029355 istore 2 ,contw 
-0x69d2 029356 copy regb ,pdata 
-0x69d3 029357 istore 2 ,contw 
-0x69d4 029358 rtn 
-:      029362 pwm_enable:
-0x69d5 029363 enable user 
-0x69d6 029364 branch pwm_gpio_set 
-:      029365 pwm_disable:
-0x69d7 029366 disable user 
-:      029367 pwm_gpio_set:
-0x69d8 029368 beq 4 ,pwm_gpio4_set 
-0x69d9 029369 beq 5 ,pwm_gpio5_set 
-0x69da 029370 beq 27 ,pwm_gpio27_set 
-0x69db 029371 beq 28 ,pwm_gpio28_set 
-0x69dc 029372 beq 3 ,pwm_gpio3_set 
-0x69dd 029373 beq 8 ,pwm_gpio8_set 
-0x69de 029374 beq 20 ,pwm_gpio20_set 
-0x69df 029375 beq 21 ,pwm_gpio21_set 
-0x69e0 029376 beq 22 ,pwm_gpio22_set 
-0x69e1 029377 beq 23 ,pwm_gpio23_set 
-0x69e2 029378 rtn 
-:      029381 pwm_gpio4_set:
-0x69e3 029382 arg 6 ,queue 
-0x69e4 029383 branch pwm_one_set_select 
-:      029384 pwm_gpio5_set:
-0x69e5 029385 arg 7 ,queue 
-0x69e6 029386 branch pwm_one_set_select 
-:      029387 pwm_gpio27_set:
-0x69e7 029388 arg 8 ,queue 
-0x69e8 029389 branch pwm_one_set_select 
-:      029390 pwm_gpio28_set:
-0x69e9 029391 arg 9 ,queue 
-0x69ea 029392 branch pwm_one_set_select 
-:      029393 pwm_gpio3_set:
-0x69eb 029394 arg 10 ,queue 
-0x69ec 029395 branch pwm_one_set_select 
-:      029396 pwm_gpio8_set:
-0x69ed 029397 arg 11 ,queue 
-0x69ee 029398 branch pwm_one_set_select 
-:      029399 pwm_gpio20_set:
-0x69ef 029400 arg 12 ,queue 
-0x69f0 029401 branch pwm_tw0_set_select 
-:      029402 pwm_gpio21_set:
-0x69f1 029403 arg 13 ,queue 
-0x69f2 029404 branch pwm_tw0_set_select 
-:      029405 pwm_gpio22_set:
-0x69f3 029406 arg 14 ,queue 
-0x69f4 029407 branch pwm_tw0_set_select 
-:      029408 pwm_gpio23_set:
-0x69f5 029409 arg 15 ,queue 
-0x69f6 029410 branch pwm_tw0_set_select 
-:      029412 pwm_set_select:
-0x69f7 029413 hfetch 2 ,core_gpio_sel1 
-0x69f8 029414 qsetflag user ,pdata 
-0x69f9 029415 hstore 2 ,core_gpio_sel1 
-0x69fa 029416 copy rega ,queue 
-0x69fb 029417 hfetch 1 ,core_gpio_key2 
-0x69fc 029418 qsetflag user ,pdata 
-0x69fd 029419 hstore 1 ,core_gpio_key2 
-0x69fe 029420 rtn 
-:      029422 pwm_one_set_select:
-0x69ff 029423 add queue ,-4 ,rega 
-0x6a00 029424 branch pwm_set_select 
-:      029426 pwm_tw0_set_select:
-0x6a01 029427 add queue ,-10 ,rega 
-0x6a02 029428 branch pwm_set_select 
-:      029433 rfcomm_init:
-0x6a03 029434 rtn wake 
-0x6a04 029435 jam 0 ,mem_rfcomm_send_more_pkt 
-0x6a05 029436 jam bits9600 ,memremoterpnbitrate 
-0x6a06 029437 jam databits8 ,memremoteprndatabits 
-0x6a07 029438 jam 0x11 ,memremoteprnxon 
-0x6a08 029439 jam 0x13 ,memremoteprnxoff 
-0x6a09 029440 setarg 0 
-0x6a0a 029441 store 3 ,memremoteprnstopbit 
-0x6a0b 029442 store 1 ,mem_spp_state 
-0x6a0c 029443 jam 0 ,memui_reconnect_mode 
-:      029445 rfcomm_init_spp:
-0x6a0d 029446 bpatchx patch34_4 ,mem_patch34 
-0x6a0e 029447 setarg 0 
-0x6a0f 029448 store 1 ,mem_spp_state 
-0x6a10 029449 store 1 ,mem_remote_spp_channel 
-0x6a11 029450 store 1 ,mem_pn_dlci 
-0x6a12 029451 fetch 1 ,mem_credit_flag 
-0x6a13 029452 beq credit_enable ,rfcomm_init_spp_with_credit 
-0x6a14 029453 jam 0x50 ,mem_credit_given 
-0x6a15 029454 rtn 
-:      029456 rfcomm_init_spp_with_credit:
-0x6a16 029457 jam 0x00 ,mem_credit_given 
-0x6a17 029458 rtn 
-:      029460 set_cr_bit:
-0x6a18 029461 or_into 0x02 ,temp 
-0x6a19 029462 rtn 
-:      029474 rfcomm_calculate_fcs_sabm:
-0x6a1a 029475 copy temp ,pdata 
-0x6a1b 029476 reverse pdata ,pdata 
-0x6a1c 029477 store 1 ,memfcstemp3 
-0x6a1d 029478 force ini_tx_sabm ,pdata 
-0x6a1e 029479 reverse pdata ,pdata 
-0x6a1f 029480 store 1 ,memfcstemp2 
-0x6a20 029481 force 0x01 ,pdata 
-0x6a21 029482 reverse pdata ,pdata 
-0x6a22 029483 store 1 ,memfcstemp1 
-0x6a23 029484 call caculate_fcs 
-0x6a24 029485 copy temp ,pdata 
-0x6a25 029486 rtn 
-:      029487 rfcomm_calculate_fcs_ua:
-0x6a26 029488 reverse pdata ,pdata 
-0x6a27 029489 store 1 ,memfcstemp3 
-0x6a28 029490 force rsp_tx_ua ,pdata 
-0x6a29 029491 reverse pdata ,pdata 
-0x6a2a 029492 store 1 ,memfcstemp2 
-0x6a2b 029493 force 0x01 ,pdata 
-0x6a2c 029494 reverse pdata ,pdata 
-0x6a2d 029495 store 1 ,memfcstemp1 
-0x6a2e 029496 branch caculate_fcs 
-:      029498 rfcomm_calculate_fcs_dlci0:
-0x6a2f 029499 fetch 1 ,mem_rfcomm_initiator 
-0x6a30 029500 branch rfcomm_calculate_fcs_dlci0_res ,blank 
-0x6a31 029501 setarg 0x70 
-0x6a32 029502 rtn 
-:      029503 rfcomm_calculate_fcs_dlci0_res:
-0x6a33 029504 setarg 0xaa 
-0x6a34 029505 rtn 
-:      029507 rfcomm_save_fcs_uih:
-0x6a35 029508 reverse pdata ,pdata 
-0x6a36 029509 store 1 ,memfcstemp3 
-0x6a37 029510 force rsp_rx_uih ,pdata 
-0x6a38 029511 call caculate_uihdata_fcs 
-0x6a39 029512 fetcht 2 ,mem_contw_temp 
-0x6a3a 029513 copy temp ,contw 
-0x6a3b 029514 istore 1 ,contw 
-0x6a3c 029515 copy contw ,temp 
-0x6a3d 029516 storet 2 ,mem_contw_temp 
-0x6a3e 029517 force rsp_rx_uih_wdata ,pdata 
-0x6a3f 029518 call caculate_uihdata_fcs 
-0x6a40 029519 fetcht 2 ,mem_contw_temp 
-0x6a41 029520 copy temp ,contw 
-0x6a42 029521 istore 1 ,contw 
-0x6a43 029522 rtn 
-:      029531 caculate_uihdata_fcs:
-0x6a44 029532 reverse pdata ,pdata 
-0x6a45 029533 store 1 ,memfcstemp2 
-0x6a46 029534 fetch 2 ,memfcstemp2 
-0x6a47 029535 lshift8 pdata ,pdata 
-0x6a48 029536 store 3 ,mem_mod2div_temp 
-0x6a49 029537 arg 0x107 ,rega 
-0x6a4a 029538 arg 0xf ,regb 
-0x6a4b 029539 call mod2div 
-0x6a4c 029540 xor_into 0xd7 ,pdata 
-0x6a4d 029541 invert pdata ,pdata 
-0x6a4e 029542 reverse pdata ,pdata 
-0x6a4f 029543 rtn 
-:      029553 caculate_fcs:
-0x6a50 029554 fetch 3 ,memfcstemp1 
-0x6a51 029555 store 3 ,mem_mod2div_temp 
-0x6a52 029556 arg 0x107 ,rega 
-0x6a53 029557 arg 0xf ,regb 
-0x6a54 029558 call mod2div 
-0x6a55 029559 lshift8 pdata ,pdata 
-0x6a56 029560 arg 0x7 ,regb 
-0x6a57 029561 call mod2div 
-0x6a58 029562 xor_into 0x2b ,pdata 
-0x6a59 029563 invert pdata ,pdata 
-0x6a5a 029564 reverse pdata ,pdata 
-0x6a5b 029565 copy pdata ,temp 
-0x6a5c 029566 rtn 
-:      029568 mod2div:
-0x6a5d 029569 arg 0 ,regc 
-0x6a5e 029570 copy regb ,loopcnt 
-0x6a5f 029571 call right_shift_n 
-0x6a60 029572 icopy temp 
-:      029573 mod2div_loop:
-0x6a61 029578 copy temp ,pdata 
-0x6a62 029579 lshift regc ,regc 
-0x6a63 029580 bbit0 8 ,mod2div_not_enough_reduction 
-0x6a64 029581 ixor rega ,temp 
-0x6a65 029582 increase 1 ,regc 
-:      029583 mod2div_not_enough_reduction:
-0x6a66 029584 lshift temp ,temp 
-0x6a67 029585 fetch 3 ,mem_mod2div_temp 
-0x6a68 029586 increase -1 ,regb 
-0x6a69 029587 compare 0xff ,regb ,0xff 
-0x6a6a 029588 branch mod2div_end ,true 
-0x6a6b 029589 copy regb ,loopcnt 
-0x6a6c 029590 call right_shift_n 
-0x6a6d 029591 isolate1 0 ,pdata 
-0x6a6e 029592 setflag true ,0 ,temp 
-0x6a6f 029593 branch mod2div_loop 
-:      029594 mod2div_end:
-0x6a70 029596 rshift temp ,pdata 
-0x6a71 029597 rtn 
-:      029599 get_rfcomm_snd_adss:
-0x6a72 029600 fetcht 1 ,mem_pn_dlci 
-:      029601 dlci_to_address_cmd:
-0x6a73 029603 lshift2 temp ,temp 
-0x6a74 029604 set1 rfcomm_address_ext_len ,temp 
-0x6a75 029605 fetch 1 ,mem_rfcomm_initiator 
-0x6a76 029606 ncall set_cr_bit ,blank 
-0x6a77 029607 storet 1 ,mem_rfcomm_send_adss 
-0x6a78 029608 rtn 
-:      029610 channel_to_dlci:
-0x6a79 029612 lshift temp ,temp 
-0x6a7a 029613 fetch 1 ,mem_rfcomm_initiator 
-0x6a7b 029614 setflag blank ,0 ,temp 
-0x6a7c 029616 rtn 
-:      029617 rfcomm_rx_process_dlci0_sabm:
-0x6a7d 029618 fetcht 1 ,mem_current_channel 
-0x6a7e 029619 jam 0xd7 ,mem_current_fcs 
-0x6a7f 029620 call rfcomm_send_ua 
-0x6a80 029621 fetch 1 ,mem_rfcomm_state 
-0x6a81 029622 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
-0x6a82 029623 set1 l2cap_channel_rfcomm_only_ua ,pdata 
-0x6a83 029624 store 1 ,mem_rfcomm_state 
-0x6a84 029625 jam 0 ,mem_rfcomm_initiator 
-0x6a85 029626 branch rfcomm_rx_process_end 
-:      029627 rfcomm_rx_process_dlci0_ua:
-0x6a86 029628 fetch 1 ,mem_rfcomm_state 
-0x6a87 029629 set1 l2cap_channel_rfcomm_only_ua ,pdata 
-0x6a88 029630 store 1 ,mem_rfcomm_state 
-0x6a89 029631 branch rfcomm_rx_process_end 
-:      029634 rfcomm_rx_process:
-0x6a8a 029635 bpatchx patch34_5 ,mem_patch34 
-0x6a8b 029636 fetch 1 ,memui_reconnect_mode 
-0x6a8c 029637 beq no_reconnection ,rfcomm_rx_process_remote_page 
-0x6a8d 029638 branch rfcomm_rx_process_reconn 
-:      029640 rfcomm_rx_process_remote_page:
-0x6a8e 029641 fetch 2 ,mem_l2cap_payload_ptr 
-0x6a8f 029642 copy pdata ,contr 
-0x6a90 029643 call get_rfcomm_head_struct 
-0x6a91 029644 fetch 1 ,mem_current_channel 
-0x6a92 029645 beq 0 ,parse_dlci0_rp 
-0x6a93 029646 branch parse_uih_rp 
-:      029647 parse_dlci0_rp:
-0x6a94 029648 bpatchx patch34_6 ,mem_patch34 
-0x6a95 029649 fetch 1 ,mem_current_frame_type 
-0x6a96 029650 beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
-0x6a97 029651 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
-0x6a98 029652 beq rfcomm_frame_type_uih ,parse_dlci0_rp_uih 
-0x6a99 029653 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn_send_event 
-0x6a9a 029654 rtn 
-:      029657 parse_dlci0_rp_uih:
-0x6a9b 029658 fetch 2 ,mem_rfcomm_uih_payload_ptr 
-0x6a9c 029659 copy pdata ,contr 
-0x6a9d 029660 call get_rfcomm_uih_head_struct 
-0x6a9e 029661 fetch 1 ,mem_uih_cmd_type 
-0x6a9f 029662 beq uih_param_neg_cmd ,parse_dlci0_rp_uih_pn_cmd 
-0x6aa0 029663 beq uih_param_neg_res ,parse_dlci0_rp_uih_pn_res 
-0x6aa1 029664 beq uih_modem_status_cmd ,parse_dlci0_rp_uih_ms_cmd 
-0x6aa2 029665 beq uih_modem_status_res ,parse_dlci0_rp_uih_ms_res 
-0x6aa3 029666 beq uih_param_cmd_remove_port ,parse_dlci0_rp_uih_cmd_port 
-0x6aa4 029667 branch rfcomm_rx_process_end 
-:      029669 parse_dlci0_rp_uih_pn_cmd:
-0x6aa5 029670 call parse_dlci0_rp_uih_pn_res_common 
-0x6aa6 029672 branch parse_dlci0_rp_uih_pn_cmd_spp 
-:      029674 parse_dlci0_rp_uih_pn_cmd_spp:
-0x6aa7 029675 fetch 1 ,mem_spp_state 
-0x6aa8 029676 set1 rfcomm_channel_state_pn_cmd ,pdata 
-0x6aa9 029677 set1 rfcomm_channel_state_pn_res ,pdata 
-0x6aaa 029678 store 1 ,mem_spp_state 
-0x6aab 029679 call rfcomm_send_param_neg_res 
-0x6aac 029680 branch rfcomm_rx_process_end 
-:      029682 parse_dlci0_rp_uih_pn_res:
-0x6aad 029683 call parse_dlci0_rp_uih_pn_res_common 
-0x6aae 029684 branch rfcomm_rx_process_end 
-:      029686 parse_dlci0_rp_uih_pn_res_common:
-0x6aaf 029687 call get_param_payload_ptr 
-0x6ab0 029688 branch get_rfcomm_prarmer_negotiation 
-:      029690 get_rfcomm_param_modem_status:
-0x6ab1 029691 call get_param_payload_ptr 
-0x6ab2 029692 ifetch 1 ,contr 
-0x6ab3 029693 rshift3 pdata ,pdata 
-0x6ab4 029694 store 1 ,mem_ms_channel 
-0x6ab5 029695 ifetch 1 ,contr 
-0x6ab6 029696 store 1 ,mem_ms_param 
-0x6ab7 029697 rtn 
-:      029700 get_rfcomm_head_struct:
-0x6ab8 029701 ifetch 1 ,contr 
-0x6ab9 029702 store 1 ,mem_current_adss 
-0x6aba 029703 rshift3 pdata ,pdata 
-0x6abb 029704 store 1 ,mem_current_channel 
-0x6abc 029705 ifetch 1 ,contr 
-0x6abd 029706 store 1 ,mem_current_frame_type 
-:      029707 get_rfcomm_current_length:
-0x6abe 029708 call get_rfcomm_length_common 
-0x6abf 029709 storet 2 ,mem_current_length 
-0x6ac0 029710 copy contr ,pdata 
-0x6ac1 029711 store 2 ,mem_rfcomm_uih_payload_ptr 
-0x6ac2 029712 rtn 
-:      029714 get_rfcomm_uih_head_struct:
-0x6ac3 029715 ifetch 1 ,contr 
-0x6ac4 029716 rshift pdata ,pdata 
-0x6ac5 029717 store 1 ,mem_uih_cmd_type 
-0x6ac6 029718 call get_rfcomm_length_common 
-0x6ac7 029719 storet 2 ,mem_uih_length 
-0x6ac8 029720 copy contr ,pdata 
-0x6ac9 029721 store 2 ,mem_param_payload_ptr 
-0x6aca 029722 rtn 
-:      029725 get_param_payload_ptr:
-0x6acb 029726 fetch 2 ,mem_param_payload_ptr 
-0x6acc 029727 copy pdata ,contr 
-0x6acd 029728 rtn 
-:      029730 get_rfcomm_length_common:
-0x6ace 029731 ifetch 1 ,contr 
-0x6acf 029732 copy pdata ,temp 
-0x6ad0 029733 rshift temp ,temp 
-0x6ad1 029734 rtnbit1 0 
-0x6ad2 029735 ifetch 1 ,contr 
-0x6ad3 029736 lshift3 pdata ,pdata 
-0x6ad4 029737 lshift4 pdata ,pdata 
-0x6ad5 029738 iadd temp ,temp 
-0x6ad6 029739 rtn 
-:      029741 get_rfcomm_prarmer_negotiation:
-0x6ad7 029742 ifetch 1 ,contr 
-0x6ad8 029743 store 1 ,mem_pn_dlci 
-0x6ad9 029744 ifetch 1 ,contr 
-0x6ada 029745 store 1 ,mem_pn_credit_flow_type_info 
-0x6adb 029746 ifetch 1 ,contr 
-0x6adc 029747 store 1 ,mem_pn_priority 
-0x6add 029748 ifetch 1 ,contr 
-0x6ade 029749 store 1 ,mem_pn_acknowledg_timer 
-0x6adf 029750 ifetch 2 ,contr 
-0x6ae0 029751 store 2 ,mem_pn_max_frame_size 
-0x6ae1 029752 ifetch 1 ,contr 
-0x6ae2 029753 store 1 ,mem_pn_max_retrans 
-0x6ae3 029754 ifetch 1 ,contr 
-0x6ae4 029755 store 1 ,mem_remote_credits 
-0x6ae5 029756 rtn 
-:      029759 parse_dlci0_rp_uih_ms_cmd:
-0x6ae6 029760 call get_rfcomm_param_modem_status 
-0x6ae7 029762 branch parse_dlci0_rp_uih_ms_cmd_spp 
-:      029764 parse_dlci0_rp_uih_ms_cmd_spp:
-0x6ae8 029765 fetch 1 ,mem_spp_state 
-0x6ae9 029766 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
-0x6aea 029767 set1 rfcomm_channel_state_snd_ms_res ,pdata 
-0x6aeb 029768 store 1 ,mem_spp_state 
-0x6aec 029769 fetcht 1 ,mem_pn_dlci 
-0x6aed 029770 lshift2 temp ,temp 
-0x6aee 029771 or_into 3 ,temp 
-0x6aef 029772 call rfcomm_send_modem_status_res 
-0x6af0 029773 jam more_pkt_msc_cmd_spp ,mem_rfcomm_send_more_pkt 
-0x6af1 029774 branch rfcomm_rx_process_end 
-:      029776 parse_dlci0_rp_uih_ms_res:
-0x6af2 029777 jam bt_evt_spp_connected ,mem_fifo_temp 
-0x6af3 029778 call ui_ipc_send_event 
-0x6af4 029779 call get_rfcomm_param_modem_status 
-0x6af5 029780 fetch 1 ,mem_ms_channel 
-0x6af6 029781 sub pdata ,1 ,null 
-0x6af7 029782 branch parse_dlci0_rp_uih_ms_res_spp ,zero 
-0x6af8 029783 branch assert 
-:      029784 parse_dlci0_rp_uih_ms_res_spp:
-0x6af9 029785 fetch 1 ,mem_spp_state 
-0x6afa 029786 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
-0x6afb 029787 store 1 ,mem_spp_state 
-0x6afc 029788 branch rfcomm_rx_process_end 
-:      029790 parse_dlci0_rp_uih_cmd_port:
-0x6afd 029791 call get_param_payload_ptr 
-0x6afe 029792 ifetch 1 ,contr 
-0x6aff 029793 store 1 ,mem_rpn_dlci 
-0x6b00 029794 call l2cap_malloc_rfcomm_channel 
-0x6b01 029795 call l2cap_get_rfcomm_tx_buff 
-0x6b02 029796 setarg 0x000e 
-0x6b03 029797 istore 2 ,contw 
-0x6b04 029798 fetch 2 ,mem_rfcomm_remote_cid 
-0x6b05 029799 istore 2 ,contw 
-0x6b06 029800 fetch 1 ,mem_rfcomm_initiator 
-0x6b07 029802 lshift pdata ,pdata 
-0x6b08 029803 set1 0 ,pdata 
-0x6b09 029804 istore 1 ,contw 
-0x6b0a 029805 bpatchx patch34_7 ,mem_patch34 
-0x6b0b 029806 setarg 0x15ef 
-0x6b0c 029807 istore 2 ,contw 
-0x6b0d 029808 setarg 0x1191 
-0x6b0e 029809 istore 2 ,contw 
-0x6b0f 029812 fetch 1 ,mem_rpn_dlci 
-0x6b10 029813 istore 1 ,contw 
-0x6b11 029814 setarg 0x000007 
-0x6b12 029815 istore 5 ,contw 
-0x6b13 029818 setarg 0x01 
-0x6b14 029819 istore 2 ,contw 
-0x6b15 029822 call rfcomm_calculate_fcs_dlci0 
-0x6b16 029823 istore 1 ,contw 
-0x6b17 029824 rtn 
-:      029828 parse_uih_rp:
-0x6b18 029829 branch parse_uih_rp_spp 
-:      029831 parse_uih_rp_spp:
-0x6b19 029832 bpatchx patch35_0 ,mem_patch35 
-0x6b1a 029833 fetch 1 ,mem_current_frame_type 
-0x6b1b 029834 beq rfcomm_frame_type_ua ,parse_uih_rp_spp_ua 
-0x6b1c 029835 beq rfcomm_frame_type_sabm ,parse_uih_rp_spp_sabm 
-0x6b1d 029836 beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
-0x6b1e 029837 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
-0x6b1f 029838 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn 
-0x6b20 029839 rtn 
-:      029840 parse_uih_rp_spp_ua:
-0x6b21 029841 fetch 1 ,mem_spp_state 
-0x6b22 029842 set1 rfcomm_channel_state_ua ,pdata 
-0x6b23 029843 store 1 ,mem_spp_state 
-0x6b24 029844 branch rfcomm_rx_process_end 
-:      029845 parse_uih_rp_spp_sabm:
-0x6b25 029846 fetch 1 ,mem_spp_state 
-0x6b26 029847 set1 rfcomm_channel_state_ua ,pdata 
-0x6b27 029848 set1 rfcomm_channel_state_sabm ,pdata 
-0x6b28 029849 store 1 ,mem_spp_state 
-0x6b29 029850 fetch 1 ,mem_current_adss 
-0x6b2a 029851 call rfcomm_calculate_fcs_ua 
-0x6b2b 029852 store 1 ,mem_current_fcs 
-0x6b2c 029853 call rfcomm_send_ua 
-0x6b2d 029854 fetch 1 ,mem_current_adss 
-0x6b2e 029855 rshift2 pdata ,pdata 
-0x6b2f 029856 store 1 ,mem_pn_dlci 
-0x6b30 029857 lshift2 pdata ,pdata 
-0x6b31 029858 set0 rfcomm_address_cr ,pdata 
-0x6b32 029859 set1 rfcomm_address_ext_len ,pdata 
-0x6b33 029860 arg mem_hiufcs_spp ,temp 
-0x6b34 029861 storet 2 ,mem_contw_temp 
-0x6b35 029862 call rfcomm_save_fcs_uih 
-0x6b36 029863 branch rfcomm_rx_process_end 
-:      029865 parse_uih_spp_uih_credits:
-0x6b37 029866 fetch 2 ,mem_rfcomm_uih_payload_ptr 
-0x6b38 029867 copy pdata ,contr 
-0x6b39 029868 increase 1 ,pdata 
-0x6b3a 029869 store 2 ,mem_rfcomm_uih_payload_ptr 
-0x6b3b 029870 ifetch 1 ,contr 
-0x6b3c 029871 fetcht 1 ,mem_remote_credits 
-0x6b3d 029872 iadd temp ,pdata 
-0x6b3e 029873 store 1 ,mem_remote_credits 
-:      029874 parse_uih_spp_uih:
-0x6b3f 029875 call rfcomm_increase_credit_given 
-:      029876 parse_uih_spp_uih_cont:
-0x6b40 029877 call get_rfcomm_snd_adss 
-0x6b41 029878 call rfcomm_send_uih_without_payload 
-0x6b42 029879 call spp_process_rx_data 
-0x6b43 029880 branch rfcomm_rx_process_end 
-:      029882 parse_uih_rp_spp_disconn_send_event:
-0x6b44 029883 jam bt_evt_spp_disconnected ,mem_fifo_temp 
-0x6b45 029884 call ui_ipc_send_event 
-:      029885 parse_uih_rp_spp_disconn:
-0x6b46 029886 call rfcomm_init_spp 
-0x6b47 029887 fetch 1 ,mem_current_adss 
-0x6b48 029888 call rfcomm_calculate_fcs_ua 
-0x6b49 029889 store 1 ,mem_current_fcs 
-0x6b4a 029890 call rfcomm_send_ua 
-0x6b4b 029891 branch rfcomm_rx_process_end 
-:      029896 rfcomm_rx_process_reconn:
-0x6b4c 029897 fetch 2 ,mem_l2cap_payload_ptr 
-0x6b4d 029898 copy pdata ,contr 
-0x6b4e 029899 call get_rfcomm_head_struct 
-0x6b4f 029900 fetch 1 ,mem_current_channel 
-0x6b50 029901 beq 0 ,parse_dlci0_reconn 
-0x6b51 029902 branch parse_uih_reconn 
-:      029904 parse_dlci0_reconn:
-0x6b52 029905 bpatchx patch35_1 ,mem_patch35 
-0x6b53 029906 fetch 1 ,mem_current_frame_type 
-0x6b54 029907 beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
-0x6b55 029908 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
-0x6b56 029909 beq rfcomm_frame_type_uih ,parse_dlci0_reconn_uih 
-0x6b57 029910 branch rfcomm_rx_process_end 
-:      029911 parse_dlci0_reconn_uih:
-0x6b58 029912 fetch 2 ,mem_rfcomm_uih_payload_ptr 
-0x6b59 029913 copy pdata ,contr 
-0x6b5a 029914 call get_rfcomm_uih_head_struct 
-0x6b5b 029915 fetch 1 ,mem_uih_cmd_type 
-0x6b5c 029916 beq uih_param_neg_cmd ,parse_dlci0_reconn_uih_pn_cmd 
-0x6b5d 029917 beq uih_param_neg_res ,parse_dlci0_reconn_uih_pn_cmd 
-0x6b5e 029918 beq uih_modem_status_cmd ,parse_dlci0_reconn_uih_ms_cmd 
-0x6b5f 029919 beq uih_modem_status_res ,parse_dlci0_reconn_uih_ms_res 
-0x6b60 029920 branch rfcomm_rx_process_end 
-:      029922 parse_dlci0_reconn_uih_pn_cmd:
-0x6b61 029923 call parse_dlci0_rp_uih_pn_res_common 
-0x6b62 029924 fetch 1 ,mem_pn_dlci 
-0x6b63 029925 rshift pdata ,pdata 
-0x6b64 029926 fetcht 1 ,mem_remote_spp_channel 
-0x6b65 029927 isub temp ,null 
-0x6b66 029928 branch parse_dlci0_reconn_uih_pn_cmd_spp ,zero 
-0x6b67 029929 branch assert 
-:      029930 parse_dlci0_reconn_uih_pn_cmd_spp:
-0x6b68 029931 fetch 1 ,mem_spp_state 
-0x6b69 029932 set1 rfcomm_channel_state_pn_res ,pdata 
-0x6b6a 029933 store 1 ,mem_spp_state 
-0x6b6b 029934 branch rfcomm_rx_process_end 
-:      029936 parse_dlci0_reconn_uih_ms_cmd:
-0x6b6c 029937 call get_rfcomm_param_modem_status 
-0x6b6d 029938 fetch 1 ,mem_ms_channel 
-0x6b6e 029939 fetcht 1 ,mem_remote_spp_channel 
-0x6b6f 029940 isub temp ,null 
-0x6b70 029941 branch parse_dlci0_reconn_uih_ms_cmd_spp ,zero 
-0x6b71 029942 branch assert 
-0x6b72 029943 branch rfcomm_rx_process_end 
-:      029944 parse_dlci0_reconn_uih_ms_cmd_spp:
-0x6b73 029945 fetch 1 ,mem_spp_state 
-0x6b74 029946 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
-0x6b75 029947 set1 rfcomm_channel_state_snd_ms_res ,pdata 
-0x6b76 029948 store 1 ,mem_spp_state 
-0x6b77 029949 fetcht 1 ,mem_pn_dlci 
-0x6b78 029950 lshift2 temp ,temp 
-0x6b79 029951 or_into 3 ,temp 
-0x6b7a 029952 call rfcomm_send_modem_status_res 
-0x6b7b 029953 branch rfcomm_rx_process_end 
-:      029955 parse_dlci0_reconn_uih_ms_res:
-0x6b7c 029956 call get_rfcomm_param_modem_status 
-0x6b7d 029957 fetch 1 ,mem_ms_channel 
-0x6b7e 029958 fetcht 1 ,mem_remote_spp_channel 
-0x6b7f 029959 isub temp ,null 
-0x6b80 029960 branch parse_dlci0_reconn_uih_ms_res_spp ,zero 
-0x6b81 029961 branch assert 
-:      029962 parse_dlci0_reconn_uih_ms_res_spp:
-0x6b82 029963 fetch 1 ,mem_spp_state 
-0x6b83 029964 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
-0x6b84 029965 store 1 ,mem_spp_state 
-0x6b85 029966 branch rfcomm_rx_process_end 
-:      029968 parse_uih_reconn:
-0x6b86 029969 fetch 1 ,mem_current_channel 
-0x6b87 029970 fetcht 1 ,mem_remote_spp_channel 
-0x6b88 029971 isub temp ,null 
-0x6b89 029972 branch parse_uih_reconn_spp ,zero 
-0x6b8a 029973 branch assert 
-0x6b8b 029974 branch rfcomm_rx_process_end 
-:      029976 parse_uih_reconn_spp:
-0x6b8c 029977 fetch 1 ,mem_current_frame_type 
-0x6b8d 029978 beq rfcomm_frame_type_ua ,parse_uih_reconn_spp_ua 
-0x6b8e 029979 beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
-0x6b8f 029980 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
-0x6b90 029981 beq rfcomm_frame_type_disconn ,parse_uih_reconn_spp_disconn 
-:      029982 parse_uih_reconn_spp_ua:
-0x6b91 029983 fetch 1 ,mem_spp_state 
-0x6b92 029984 set1 rfcomm_channel_state_ua ,pdata 
-0x6b93 029985 store 1 ,mem_spp_state 
-0x6b94 029986 branch rfcomm_rx_process_end 
-:      029987 parse_uih_reconn_spp_sabm:
-0x6b95 029988 branch parse_uih_reconn_spp_sabm 
-:      029989 parse_uih_reconn_spp_disconn:
-0x6b96 029990 branch parse_uih_rp_spp_disconn 
-:      029991 rfcomm_rx_process_end:
-0x6b97 029992 rtn 
-:      029994 rfcomm_send_more_pkt:
-0x6b98 029995 fetch 1 ,mem_rfcomm_send_more_pkt 
-0x6b99 029996 rtn blank 
-0x6b9a 029997 beq more_pkt_msc_cmd_spp ,rfcomm_send_more_pkt_msc_cmd_spp 
-0x6b9b 029998 branch assert 
-:      030000 rfcomm_send_more_pkt_msc_cmd_spp:
-0x6b9c 030001 jam 0 ,mem_rfcomm_send_more_pkt 
-0x6b9d 030002 call l2cap_malloc_rfcomm_channel 
-0x6b9e 030003 arg spp_slave_channel ,temp 
-0x6b9f 030004 fetcht 1 ,mem_pn_dlci 
-0x6ba0 030005 lshift2 temp ,temp 
-:      030006 rfcomm_send_more_pkt_msc_cmd_spp0:
-0x6ba1 030007 or_into 0x03 ,temp 
-0x6ba2 030008 arg 0xaa ,rega 
-0x6ba3 030009 call rfcomm_send_modem_status_cmd 
-0x6ba4 030010 call l2cap_get_rfcomm_tx_buff 
-0x6ba5 030011 copy contw ,contr 
-0x6ba6 030012 ifetch 2 ,contr 
-0x6ba7 030013 branch assert ,blank 
-0x6ba8 030014 rtn 
-:      030016 rfcomm_send_sabm:
-0x6ba9 030017 call l2cap_get_rfcomm_tx_buff 
-0x6baa 030018 setarg 0x0004 
-0x6bab 030019 istore 2 ,contw 
-0x6bac 030020 fetch 2 ,mem_rfcomm_remote_cid 
-0x6bad 030021 istore 2 ,contw 
-0x6bae 030022 fetch 1 ,mem_current_adss 
-0x6baf 030023 istore 1 ,contw 
-0x6bb0 030024 bpatchx patch35_2 ,mem_patch35 
-0x6bb1 030025 setarg 0x013f 
-0x6bb2 030026 istore 2 ,contw 
-0x6bb3 030027 fetch 1 ,mem_current_fcs 
-0x6bb4 030028 istore 1 ,contw 
-0x6bb5 030029 rtn 
-:      030030 rfcomm_send_ua:
-0x6bb6 030031 call l2cap_malloc_rfcomm_channel 
-0x6bb7 030032 call l2cap_get_rfcomm_tx_buff 
-0x6bb8 030033 setarg 0x0004 
-0x6bb9 030034 istore 2 ,contw 
-0x6bba 030035 fetch 2 ,mem_rfcomm_remote_cid 
-0x6bbb 030036 istore 2 ,contw 
-0x6bbc 030037 fetch 1 ,mem_current_adss 
-0x6bbd 030038 istore 1 ,contw 
-0x6bbe 030039 bpatchx patch35_3 ,mem_patch35 
-0x6bbf 030040 setarg 0x0173 
-0x6bc0 030041 istore 2 ,contw 
-0x6bc1 030042 fetch 1 ,mem_current_fcs 
-0x6bc2 030043 istore 1 ,contw 
-0x6bc3 030044 rtn 
-:      030045 rfcomm_send_param_neg_cmd:
-0x6bc4 030046 call l2cap_get_rfcomm_tx_buff 
-0x6bc5 030047 setarg 0x000e 
-0x6bc6 030048 istore 2 ,contw 
-0x6bc7 030049 fetch 2 ,mem_rfcomm_remote_cid 
-0x6bc8 030050 istore 2 ,contw 
-0x6bc9 030051 fetch 1 ,mem_rfcomm_initiator 
-0x6bca 030052 lshift pdata ,pdata 
-0x6bcb 030053 set1 0 ,pdata 
-0x6bcc 030054 istore 1 ,contw 
-0x6bcd 030055 bpatchx patch35_4 ,mem_patch35 
-0x6bce 030056 setarg 0x15ef 
-0x6bcf 030057 istore 2 ,contw 
-0x6bd0 030058 setarg 0x1183 
-0x6bd1 030059 istore 2 ,contw 
-0x6bd2 030060 copy temp ,pdata 
-0x6bd3 030061 istore 1 ,contw 
-0x6bd4 030062 setarg 0x0000f0 
-0x6bd5 030063 istore 3 ,contw 
-0x6bd6 030064 setarg rfcomm_max_frame_size 
-0x6bd7 030065 istore 2 ,contw 
-0x6bd8 030066 setarg 0 
-0x6bd9 030067 istore 1 ,contw 
-0x6bda 030068 setarg 0x01 
-0x6bdb 030069 istore 1 ,contw 
-0x6bdc 030070 call rfcomm_calculate_fcs_dlci0 
-0x6bdd 030071 istore 1 ,contw 
-0x6bde 030072 jam 0x10 ,mem_credit_given 
-0x6bdf 030073 rtn 
-:      030074 rfcomm_send_param_neg_res:
-0x6be0 030075 call l2cap_malloc_rfcomm_channel 
-0x6be1 030076 call l2cap_get_rfcomm_tx_buff 
-0x6be2 030077 setarg 0x000e 
-0x6be3 030078 istore 2 ,contw 
-0x6be4 030079 fetch 2 ,mem_rfcomm_remote_cid 
-0x6be5 030080 istore 2 ,contw 
-0x6be6 030081 fetch 1 ,mem_rfcomm_initiator 
-0x6be7 030082 lshift pdata ,pdata 
-0x6be8 030083 set1 0 ,pdata 
-0x6be9 030084 istore 1 ,contw 
-0x6bea 030085 bpatchx patch35_5 ,mem_patch35 
-0x6beb 030086 setarg 0x15ef 
-0x6bec 030087 istore 2 ,contw 
-0x6bed 030088 setarg 0x1181 
-0x6bee 030089 istore 2 ,contw 
-0x6bef 030090 fetch 1 ,mem_pn_dlci 
-0x6bf0 030091 istore 1 ,contw 
-0x6bf1 030092 setarg 0x0000e0 
-0x6bf2 030093 istore 3 ,contw 
-0x6bf3 030094 fetch 2 ,mem_rfcomm_max_frame_size 
-0x6bf4 030095 istore 2 ,contw 
-0x6bf5 030096 setarg 0x00 
-0x6bf6 030097 istore 1 ,contw 
-0x6bf7 030098 fetch 1 ,mem_rfcomm_credit_init_data 
-0x6bf8 030099 istore 1 ,contw 
-0x6bf9 030100 call rfcomm_calculate_fcs_dlci0 
-0x6bfa 030101 istore 1 ,contw 
-0x6bfb 030102 rtn 
-:      030103 rfcomm_send_modem_status_cmd:
-0x6bfc 030104 call l2cap_get_rfcomm_tx_buff 
-0x6bfd 030105 setarg 0x0008 
-0x6bfe 030106 istore 2 ,contw 
-0x6bff 030107 fetch 2 ,mem_rfcomm_remote_cid 
-0x6c00 030108 istore 2 ,contw 
-0x6c01 030109 fetch 1 ,mem_rfcomm_initiator 
-0x6c02 030110 lshift pdata ,pdata 
-0x6c03 030111 set1 0 ,pdata 
-0x6c04 030112 istore 1 ,contw 
-0x6c05 030113 bpatchx patch35_6 ,mem_patch35 
-0x6c06 030114 setarg 0x09ef 
-0x6c07 030115 istore 2 ,contw 
-0x6c08 030116 setarg 0x05e3 
-0x6c09 030117 istore 2 ,contw 
-0x6c0a 030118 copy temp ,pdata 
-0x6c0b 030119 istore 1 ,contw 
-0x6c0c 030120 setarg 0x8d 
-0x6c0d 030121 istore 1 ,contw 
-0x6c0e 030122 call rfcomm_calculate_fcs_dlci0 
-0x6c0f 030123 istore 1 ,contw 
-0x6c10 030124 rtn 
-:      030126 rfcomm_send_modem_status_res:
-0x6c11 030127 call l2cap_malloc_rfcomm_channel 
-0x6c12 030128 call l2cap_get_rfcomm_tx_buff 
-0x6c13 030129 setarg 0x0008 
-0x6c14 030130 istore 2 ,contw 
-0x6c15 030131 fetch 2 ,mem_rfcomm_remote_cid 
-0x6c16 030132 istore 2 ,contw 
-0x6c17 030133 copy temp ,timeup 
-0x6c18 030134 fetch 1 ,mem_rfcomm_initiator 
-0x6c19 030135 lshift pdata ,pdata 
-0x6c1a 030136 set1 0 ,pdata 
-0x6c1b 030137 istore 1 ,contw 
-0x6c1c 030138 bpatchx patch35_7 ,mem_patch35 
-0x6c1d 030139 setarg 0x09ef 
-0x6c1e 030140 istore 2 ,contw 
-0x6c1f 030141 setarg 0x05e1 
-0x6c20 030142 istore 2 ,contw 
-0x6c21 030143 copy timeup ,pdata 
-0x6c22 030144 istore 1 ,contw 
-0x6c23 030145 setarg 0x8d 
-0x6c24 030146 istore 1 ,contw 
-0x6c25 030147 call rfcomm_calculate_fcs_dlci0 
-0x6c26 030148 istore 1 ,contw 
-0x6c27 030149 rtn 
-:      030151 rfcomm_send_uih_without_payload:
-0x6c28 030152 bpatchx patch36_0 ,mem_patch36 
-0x6c29 030153 fetch 1 ,mem_credit_given 
-0x6c2a 030154 rtn blank 
-0x6c2b 030155 hfetch 2 ,core_uart_rxitems 
-0x6c2c 030156 nrtn blank 
-0x6c2d 030157 copy rega ,pdata 
-0x6c2e 030158 store 1 ,mem_pdatatemp + 1 
-0x6c2f 030159 storet 1 ,mem_pdatatemp 
-0x6c30 030160 call l2cap_malloc_is_fifo_full 
-0x6c31 030161 nrtn blank 
-0x6c32 030162 call l2cap_malloc_rfcomm_channel 
-0x6c33 030163 call l2cap_get_rfcomm_tx_buff 
-0x6c34 030164 setarg 0x05 
-0x6c35 030165 istore 2 ,contw 
-0x6c36 030166 fetch 2 ,mem_rfcomm_remote_cid 
-0x6c37 030167 istore 2 ,contw 
-0x6c38 030168 fetch 1 ,mem_rfcomm_send_adss 
-0x6c39 030169 istore 1 ,contw 
-0x6c3a 030170 setarg 0x01ff 
-0x6c3b 030171 istore 2 ,contw 
-0x6c3c 030172 fetch 1 ,mem_credit_given 
-0x6c3d 030173 istore 1 ,contw 
-0x6c3e 030174 fetch 1 ,mem_hiufcs_spp_wcredits 
-0x6c3f 030175 istore 1 ,contw 
-0x6c40 030176 jam 0 ,mem_credit_given 
-0x6c41 030177 rtn 
-:      030179 rfcomm_increase_credit_given:
-0x6c42 030180 bpatchx patch36_1 ,mem_patch36 
-0x6c43 030181 fetch 1 ,mem_credit_flag 
-0x6c44 030182 rtneq credit_enable 
-0x6c45 030183 fetch 2 ,mem_current_length 
-0x6c46 030184 rtn blank 
-0x6c47 030185 fetch 1 ,mem_credit_given 
-0x6c48 030186 increase 1 ,pdata 
-0x6c49 030187 store 1 ,mem_credit_given 
-0x6c4a 030188 rtn 
-:      030190 spp_process_rx_data:
-0x6c4b 030191 fetch 2 ,mem_cb_receive_spp_data 
-0x6c4c 030192 branch callback_func 
-:      030194 spp_tx_rfcomm_packet:
-0x6c4d 030195 bpatchx patch36_2 ,mem_patch36 
-0x6c4e 030197 fetch 1 ,mem_remote_credits 
-0x6c4f 030198 rtn blank 
-0x6c50 030199 increase -1 ,pdata 
-0x6c51 030200 store 1 ,mem_remote_credits 
-0x6c52 030201 fetch 2 ,mem_pn_max_frame_size 
-0x6c53 030202 fetcht 2 ,mem_current_packet_length 
-0x6c54 030203 isub temp ,null 
-0x6c55 030204 branch ssp_tx_rfcomm_from_uart ,positive 
-0x6c56 030205 store 2 ,mem_current_packet_length 
-:      030206 ssp_tx_rfcomm_from_uart:
-0x6c57 030207 fetch 1 ,mem_credit_given 
-0x6c58 030208 branch ssp_tx_rfcomm_from_uart_without_credit ,blank 
-0x6c59 030209 jam 1 ,mem_rfcomm_send_offset 
-0x6c5a 030210 fetch 1 ,mem_hiufcs_spp_wcredits 
-0x6c5b 030211 store 1 ,mem_rfcomm_send_fcs 
-0x6c5c 030212 setarg rsp_rx_uih_wdata 
-0x6c5d 030213 store 1 ,mem_rfcomm_send_frame_type 
-0x6c5e 030214 branch ssp_tx_rfcomm_from_uart_common 
-:      030215 ssp_tx_rfcomm_from_uart_without_credit:
-0x6c5f 030216 jam 0 ,mem_rfcomm_send_offset 
-0x6c60 030217 fetch 1 ,mem_hiufcs_spp 
-0x6c61 030218 store 1 ,mem_rfcomm_send_fcs 
-0x6c62 030219 setarg rsp_tx_uih 
-0x6c63 030220 store 1 ,mem_rfcomm_send_frame_type 
-:      030221 ssp_tx_rfcomm_from_uart_common:
-0x6c64 030222 bpatchx patch36_3 ,mem_patch36 
-0x6c65 030223 fetch 2 ,mem_current_packet_length 
-0x6c66 030224 sub pdata ,127 ,null 
-0x6c67 030225 branch ssp_tx_rfcomm_from_uart_common0 ,positive 
-0x6c68 030226 fetch 1 ,mem_rfcomm_send_offset 
-0x6c69 030227 increase 1 ,pdata 
-0x6c6a 030228 store 1 ,mem_rfcomm_send_offset 
-:      030229 ssp_tx_rfcomm_from_uart_common0:
-0x6c6b 030230 call get_rfcomm_snd_adss 
-0x6c6c 030231 fetch 2 ,mem_current_packet_length 
-0x6c6d 030232 increase 8 ,pdata 
-0x6c6e 030233 fetcht 1 ,mem_rfcomm_send_offset 
-0x6c6f 030234 iadd temp ,rega 
-0x6c70 030236 call l2cap_malloc 
-0x6c71 030237 store 2 ,mem_rfcomm_tx_buff_ptr 
-0x6c72 030238 increase 4 ,pdata 
-0x6c73 030239 store 2 ,mem_rfcomm_tx_payload_ptr 
-0x6c74 030240 copy pdata ,contw 
-0x6c75 030241 fetch 1 ,mem_rfcomm_send_adss 
-0x6c76 030242 istore 1 ,contw 
-0x6c77 030243 fetch 1 ,mem_rfcomm_send_frame_type 
-0x6c78 030244 istore 1 ,contw 
-0x6c79 030245 call ssp_tx_write_length 
-0x6c7a 030246 call ssp_tx_write_given_credit 
-0x6c7b 030247 bpatchx patch36_4 ,mem_patch36 
-0x6c7c 030248 fetch 2 ,mem_nl_rx_data_src 
-0x6c7d 030249 copy pdata ,contru 
-0x6c7e 030250 fetch 2 ,mem_current_packet_length 
-0x6c7f 030251 copy pdata ,loopcnt 
-0x6c80 030252 call uart_copy_rx_bytes_fast 
-0x6c81 030253 copy contw ,temp 
-0x6c82 030254 copy contru ,pdata 
-0x6c83 030255 store 2 ,mem_nl_rx_data_src 
-0x6c84 030256 copy temp ,contw 
-0x6c85 030257 fetch 1 ,mem_rfcomm_send_fcs 
-0x6c86 030258 istore 1 ,contw 
-0x6c87 030259 fetch 2 ,mem_rfcomm_tx_buff_ptr 
-0x6c88 030260 copy pdata ,contw 
-0x6c89 030261 fetch 2 ,mem_current_packet_length 
-0x6c8a 030262 fetcht 1 ,mem_rfcomm_send_offset 
-0x6c8b 030263 iadd temp ,pdata 
-0x6c8c 030264 increase 4 ,pdata 
-0x6c8d 030265 istore 2 ,contw 
-0x6c8e 030266 fetch 2 ,mem_rfcomm_remote_cid 
-0x6c8f 030267 istore 2 ,contw 
-0x6c90 030268 jam 0 ,mem_credit_given 
-0x6c91 030269 fetch 2 ,mem_nl_rx_len_all 
-0x6c92 030270 beq 0 ,module_hci_command_tx_spp_tx_complete 
-0x6c93 030271 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
-0x6c94 030272 rtn 
-:      030274 ssp_tx_write_length:
-0x6c95 030275 bpatchx patch36_5 ,mem_patch36 
-0x6c96 030276 fetch 2 ,mem_current_packet_length 
-0x6c97 030277 sub pdata ,0x7f ,null 
-0x6c98 030278 nbranch ssp_tx_write_long_packet ,positive 
-0x6c99 030279 lshift pdata ,pdata 
-0x6c9a 030280 set1 0 ,pdata 
-0x6c9b 030281 istore 1 ,contw 
-0x6c9c 030282 rtn 
-:      030283 ssp_tx_write_long_packet:
-0x6c9d 030284 fetch 2 ,mem_current_packet_length 
-0x6c9e 030285 rshift3 pdata ,pdata 
-0x6c9f 030286 rshift4 pdata ,temp 
-0x6ca0 030287 and_into 0x7f ,pdata 
-0x6ca1 030288 lshift pdata ,pdata 
-0x6ca2 030289 set0 0 ,pdata 
-0x6ca3 030290 istore 1 ,contw 
-0x6ca4 030291 istoret 1 ,contw 
-0x6ca5 030292 rtn 
-:      030293 ssp_tx_write_given_credit:
-0x6ca6 030294 fetch 1 ,mem_credit_given 
-0x6ca7 030295 rtn blank 
-0x6ca8 030296 istore 1 ,contw 
-0x6ca9 030297 rtn 
-:      030302 scheduler_process:
-0x6caa 030303 bpatchx patch36_6 ,mem_patch36 
-0x6cab 030304 call check_51cmd 
-0x6cac 030305 call app_process_bb_event 
-0x6cad 030306 call process_conn_sm 
-0x6cae 030308 bpatchx patch36_7 ,mem_patch36 
-0x6caf 030309 call sp_calc_sequence 
-0x6cb0 030310 call simple_pairing_sequence 
-0x6cb1 030311 call master_simple_paring_sequence 
-0x6cb2 030314 call l2cap_malloc_is_fifo_full 
-0x6cb3 030315 nrtn blank 
-0x6cb4 030317 call l2cap_call_proc_sigal_pending 
-0x6cb5 030318 call l2cap_malloc_is_fifo_full 
-0x6cb6 030319 nrtn blank 
-0x6cb7 030320 bpatchx patch37_0 ,mem_patch37 
-0x6cb8 030322 call process_upper_sm 
-0x6cb9 030323 call l2cap_send_config_req 
-0x6cba 030324 call rfcomm_send_more_pkt 
-:      030325 scheduler_process0:
-0x6cbb 030326 call scheduler_tx_disconnect_hid 
-0x6cbc 030327 bpatchx patch37_1 ,mem_patch37 
-0x6cbd 030330 branch app_process_bt 
-:      030332 scheduler_tx_disconnect_hid:
-0x6cbe 030333 fetch 1 ,mem_control_tasks 
-0x6cbf 030334 bbit1 l2cap_disconnect_interrupt ,l2cap_disconnect_interrupt_req 
-0x6cc0 030335 bbit1 l2cap_disconnect_control ,l2cap_disconnect_control_req 
-0x6cc1 030336 rtn 
-:      030338 scheduler_tx_l2cap_pkt:
-0x6cc2 030339 bpatchx patch37_2 ,mem_patch37 
-0x6cc3 030340 call l2cap_malloc_is_fifo_empty 
-0x6cc4 030341 rtn blank 
-0x6cc5 030342 fetch 1 ,mem_op 
-0x6cc6 030343 rtnbit1 op_txl2cap 
-0x6cc7 030344 call l2cap_malloc_fifo_out 
-0x6cc8 030345 store 2 ,mem_txptr 
-0x6cc9 030346 copy pdata ,contr 
-0x6cca 030347 ifetch 2 ,contr 
-0x6ccb 030348 increase 4 ,pdata 
-0x6ccc 030349 store 2 ,mem_tx_len 
-0x6ccd 030350 jam 6 ,mem_tx_lch 
-0x6cce 030351 bpatchx patch37_3 ,mem_patch37 
-0x6ccf 030352 fetch 2 ,mem_l2cap_tx_multi_offset 
-0x6cd0 030353 branch scheduler_tx_l2cap_start_pkt ,blank 
-0x6cd1 030354 fetch 1 ,mem_op 
-0x6cd2 030355 rtnbit0 op_pkt_comp 
-0x6cd3 030356 set0 op_pkt_comp ,pdata 
-0x6cd4 030357 store 1 ,mem_op 
-0x6cd5 030358 jam 5 ,mem_tx_lch 
-0x6cd6 030359 fetcht 2 ,mem_l2cap_tx_multi_offset 
-0x6cd7 030360 fetch 2 ,mem_txptr 
-0x6cd8 030361 iadd temp ,pdata 
-0x6cd9 030362 store 2 ,mem_txptr 
-0x6cda 030363 fetch 2 ,mem_tx_len 
-0x6cdb 030364 isub temp ,pdata 
-0x6cdc 030365 store 2 ,mem_tx_len 
-:      030366 scheduler_tx_l2cap_start_pkt:
-0x6cdd 030367 bpatchx patch37_4 ,mem_patch37 
-0x6cde 030368 fetch 2 ,mem_tx_len 
-0x6cdf 030369 branch assert ,blank 
-0x6ce0 030370 arg l2cap_max_pkt_len ,temp 
-0x6ce1 030371 isub temp ,pdata 
-0x6ce2 030372 nbranch scheduler_tx_l2cap_last_pkt ,positive 
-0x6ce3 030373 bpatchx patch37_5 ,mem_patch37 
-0x6ce4 030374 storet 2 ,mem_tx_len 
-0x6ce5 030375 fetch 2 ,mem_l2cap_tx_multi_offset 
-0x6ce6 030376 iadd temp ,pdata 
-0x6ce7 030377 store 2 ,mem_l2cap_tx_multi_offset 
-0x6ce8 030378 branch scheduler_tx_l2cap_pkt_end 
-:      030379 scheduler_tx_l2cap_last_pkt:
-0x6ce9 030380 setarg 0 
-0x6cea 030381 store 2 ,mem_l2cap_tx_multi_offset 
-:      030382 scheduler_tx_l2cap_pkt_end:
-0x6ceb 030383 fetch 1 ,mem_op 
-0x6cec 030384 set1 op_txl2cap ,pdata 
-0x6ced 030385 store 1 ,mem_op 
-0x6cee 030386 rtn 
-:      030388 scheduler_start_upper_sm:
-0x6cef 030389 fetch 1 ,mem_ui_profile_supported 
-0x6cf0 030390 bbit1 support_hid ,scheduler_start_upper_sm_hid 
-0x6cf1 030391 jam uppersm_reconn_sdp_conn ,mem_upper_sm_reconn 
-0x6cf2 030392 rtn 
-:      030393 scheduler_start_upper_sm_hid:
-0x6cf3 030394 jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
-0x6cf4 030395 rtn 
-:      030397 process_upper_sm:
-0x6cf5 030398 fetch 1 ,memui_reconnect_mode 
-0x6cf6 030399 nbranch process_upper_sm_reconn ,blank 
-:      030400 process_upper_sm_remote_page:
-0x6cf7 030401 fetch 1 ,mem_upper_sm_remote_page 
-0x6cf8 030403 rtn blank 
-0x6cf9 030405 jam 0 ,mem_upper_sm_remote_page 
-:      030406 process_upper_sm_rp_wait:
-0x6cfa 030407 rtn 
-:      030410 process_upper_sm_reconn:
-0x6cfb 030411 bpatchx patch37_6 ,mem_patch37 
-0x6cfc 030412 fetch 1 ,mem_upper_sm_reconn 
-0x6cfd 030413 rtn blank 
-0x6cfe 030414 beq uppersm_reconn_sdp_conn ,process_upper_sm_reconn_sdp_conn 
-0x6cff 030415 beq uppersm_reconn_sdp_conn_wait ,process_upper_sm_reconn_sdp_conn_wait 
-0x6d00 030416 beq uppersm_reconn_sdp_cfg ,process_upper_sm_reconn_sdp_cfg 
-0x6d01 030417 beq uppersm_reconn_sdp_cfg_wait ,process_upper_sm_reconn_sdp_cfg_wait 
-0x6d02 030418 beq uppersm_reconn_ss_spp ,process_upper_sm_reconn_ss_spp 
-0x6d03 030419 beq uppersm_reconn_ss_spp_wait ,process_upper_sm_reconn_ss_spp_wait 
-0x6d04 030420 beq uppersm_reconn_sdp_disconn ,process_upper_sm_reconn_sdp_disconn 
-0x6d05 030421 beq uppersm_reconn_sdp_disconn_wait ,process_upper_sm_reconn_sdp_disconn_wait 
-0x6d06 030422 beq uppersm_reconn_hid_ctrl_conn ,process_upper_sm_reconn_hid_ctrl_conn 
-0x6d07 030423 beq uppersm_reconn_hid_ctrl_conn_wait ,process_upper_sm_reconn_hid_ctrl_conn_wait 
-0x6d08 030424 beq uppersm_reconn_hid_ctrl_cfg ,process_upper_sm_reconn_hid_ctrl_cfg 
-0x6d09 030425 beq uppersm_reconn_hid_ctrl_cfg_wait ,process_upper_sm_reconn_hid_ctrl_cfg_wait 
-0x6d0a 030426 beq uppersm_reconn_hid_int_conn ,process_upper_sm_reconn_hid_int_conn 
-0x6d0b 030427 beq uppersm_reconn_hid_int_conn_wait ,process_upper_sm_reconn_hid_int_conn_wait 
-0x6d0c 030428 beq uppersm_reconn_hid_int_cfg ,process_upper_sm_reconn_hid_int_cfg 
-0x6d0d 030429 beq uppersm_reconn_hid_int_cfg_wait ,process_upper_sm_reconn_hid_int_cfg_wait 
-0x6d0e 030430 beq uppersm_reconn_rfcomm_conn ,process_upper_sm_reconn_rfcomm_conn 
-0x6d0f 030431 beq uppersm_reconn_rfcomm_conn_wait ,process_upper_sm_reconn_rfcomm_conn_wait 
-0x6d10 030432 beq uppersm_reconn_rfcomm_cfg ,process_upper_sm_reconn_rfcomm_cfg 
-0x6d11 030433 beq uppersm_reconn_rfcomm_cfg_wait ,process_upper_sm_reconn_rfcomm_cfg_wait 
-0x6d12 030434 beq uppersm_reconn_rfcomm_sabm ,process_upper_sm_reconn_rfcomm_sabm 
-0x6d13 030435 beq uppersm_reconn_rfcomm_sabm_wait ,process_upper_sm_reconn_rfcomm_sabm_wait 
-0x6d14 030436 beq uppersm_reconn_spp_cmd_pn ,process_upper_sm_reconn_spp_cmd_pn 
-0x6d15 030437 beq uppersm_reconn_spp_cmd_pn_wait ,process_upper_sm_reconn_spp_cmd_pn_wait 
-0x6d16 030438 beq uppersm_reconn_spp_sabm ,process_upper_sm_reconn_spp_sabm 
-0x6d17 030439 beq uppersm_reconn_spp_sabm_wait ,process_upper_sm_reconn_spp_sabm_wait 
-0x6d18 030440 beq uppersm_reconn_spp_cmd_ms ,process_upper_sm_reconn_spp_cmd_ms 
-0x6d19 030441 beq uppersm_reconn_spp_cmd_ms_wait ,process_upper_sm_reconn_spp_cmd_ms_wait 
-:      030442 process_upper_sm_reconn_wait:
-0x6d1a 030443 rtn 
-:      030444 process_upper_sm_reconn_sdp_conn:
-0x6d1b 030445 call upper_sm_send_sdp_conn 
-0x6d1c 030446 jam uppersm_reconn_sdp_conn_wait ,mem_upper_sm_reconn 
-0x6d1d 030447 fetch 1 ,mem_sdp_state 
-0x6d1e 030448 set1 l2cap_channel_state_conn_req ,pdata 
-0x6d1f 030449 store 1 ,mem_sdp_state 
-0x6d20 030450 rtn 
-:      030451 process_upper_sm_reconn_sdp_cfg:
-0x6d21 030452 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
-0x6d22 030453 fetch 1 ,mem_sdp_state 
-0x6d23 030454 rtnbit1 l2cap_channel_state_snd_cfg_req 
-0x6d24 030455 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
-0x6d25 030456 call upper_sm_send_sdp_cfg 
-0x6d26 030457 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
-0x6d27 030458 fetch 1 ,mem_sdp_state 
-0x6d28 030459 set1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x6d29 030460 store 1 ,mem_sdp_state 
-0x6d2a 030461 rtn 
-:      030462 process_upper_sm_reconn_ss_spp:
-0x6d2b 030463 call l2cap_malloc_is_fifo_empty 
-0x6d2c 030464 nrtn blank 
-0x6d2d 030465 call upper_sm_send_ss_spp 
-0x6d2e 030466 jam uppersm_reconn_ss_spp_wait ,mem_upper_sm_reconn 
-0x6d2f 030467 rtn 
-:      030468 process_upper_sm_reconn_sdp_disconn:
-0x6d30 030469 call upper_sm_send_sdp_disconn 
-0x6d31 030470 jam uppersm_reconn_sdp_disconn_wait ,mem_upper_sm_reconn 
-0x6d32 030471 rtn 
-:      030472 process_upper_sm_reconn_hid_ctrl_conn:
-0x6d33 030473 call upper_sm_send_hid_ctrl_conn 
-0x6d34 030474 jam uppersm_reconn_hid_ctrl_conn_wait ,mem_upper_sm_reconn 
-0x6d35 030475 fetch 1 ,mem_hid_control_state 
-0x6d36 030476 set1 l2cap_channel_state_conn_req ,pdata 
-0x6d37 030477 store 1 ,mem_hid_control_state 
-0x6d38 030478 rtn 
-:      030479 process_upper_sm_reconn_hid_ctrl_cfg:
-0x6d39 030480 call upper_sm_send_hid_ctrl_cfg 
-0x6d3a 030481 jam uppersm_reconn_hid_ctrl_cfg_wait ,mem_upper_sm_reconn 
-0x6d3b 030482 fetch 1 ,mem_hid_control_state 
-0x6d3c 030483 set1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x6d3d 030484 store 1 ,mem_hid_control_state 
-0x6d3e 030485 rtn 
-:      030486 process_upper_sm_reconn_hid_int_conn:
-0x6d3f 030487 call upper_sm_send_hid_int_conn 
-0x6d40 030488 jam uppersm_reconn_hid_int_conn_wait ,mem_upper_sm_reconn 
-0x6d41 030489 fetch 1 ,mem_hid_interrupt_state 
-0x6d42 030490 set1 l2cap_channel_state_conn_req ,pdata 
-0x6d43 030491 store 1 ,mem_hid_interrupt_state 
-0x6d44 030492 rtn 
-:      030493 process_upper_sm_reconn_hid_int_cfg:
-0x6d45 030494 call upper_sm_send_hid_int_cfg 
-0x6d46 030495 jam uppersm_reconn_hid_int_cfg_wait ,mem_upper_sm_reconn 
-0x6d47 030496 fetch 1 ,mem_hid_interrupt_state 
-0x6d48 030497 set1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x6d49 030498 store 1 ,mem_hid_interrupt_state 
-0x6d4a 030499 rtn 
-:      030500 process_upper_sm_reconn_rfcomm_conn:
-0x6d4b 030501 call upper_sm_send_rfcomm_conn 
-0x6d4c 030502 jam uppersm_reconn_rfcomm_conn_wait ,mem_upper_sm_reconn 
-0x6d4d 030503 fetch 1 ,mem_rfcomm_state 
-0x6d4e 030504 set1 l2cap_channel_state_conn_req ,pdata 
-0x6d4f 030505 store 1 ,mem_rfcomm_state 
-0x6d50 030506 rtn 
-:      030507 process_upper_sm_reconn_rfcomm_cfg:
-0x6d51 030508 call upper_sm_send_rfcomm_cfg 
-0x6d52 030509 jam uppersm_reconn_rfcomm_cfg_wait ,mem_upper_sm_reconn 
-0x6d53 030510 fetch 1 ,mem_rfcomm_state 
-0x6d54 030511 set1 l2cap_channel_state_snd_cfg_req ,pdata 
-0x6d55 030512 store 1 ,mem_rfcomm_state 
-0x6d56 030513 rtn 
-:      030514 process_upper_sm_reconn_rfcomm_sabm:
-0x6d57 030515 call upper_sm_send_rfcomm_sabm 
-0x6d58 030516 jam uppersm_reconn_rfcomm_sabm_wait ,mem_upper_sm_reconn 
-0x6d59 030517 fetch 1 ,mem_rfcomm_state 
-0x6d5a 030518 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
-0x6d5b 030519 store 1 ,mem_rfcomm_state 
-0x6d5c 030520 rtn 
-:      030521 process_upper_sm_reconn_spp_cmd_pn:
-0x6d5d 030522 call upper_sm_send_spp_cmd_pn 
-0x6d5e 030523 fetch 1 ,mem_spp_state 
-0x6d5f 030524 set1 rfcomm_channel_state_pn_cmd 
-0x6d60 030525 store 1 ,mem_spp_state 
-0x6d61 030526 jam uppersm_reconn_spp_cmd_pn_wait ,mem_upper_sm_reconn 
-0x6d62 030527 rtn 
-:      030528 process_upper_sm_reconn_spp_sabm:
-0x6d63 030529 call upper_sm_send_spp_sabm 
-0x6d64 030530 fetch 1 ,mem_spp_state 
-0x6d65 030531 set1 rfcomm_channel_state_sabm 
-0x6d66 030532 store 1 ,mem_spp_state 
-0x6d67 030533 jam uppersm_reconn_spp_sabm_wait ,mem_upper_sm_reconn 
-0x6d68 030534 fetch 1 ,mem_remote_spp_channel 
-0x6d69 030535 lshift3 pdata ,pdata 
-0x6d6a 030536 or_into 3 ,pdata 
-0x6d6b 030537 arg mem_hiufcs_spp ,temp 
-0x6d6c 030538 storet 2 ,mem_contw_temp 
-0x6d6d 030539 branch rfcomm_save_fcs_uih 
-:      030540 process_upper_sm_reconn_spp_cmd_ms:
-0x6d6e 030541 call upper_sm_send_spp_cmd_ms 
-0x6d6f 030542 fetch 1 ,mem_spp_state 
-0x6d70 030543 set1 rfcomm_channel_state_snd_ms_cmd 
-0x6d71 030544 store 1 ,mem_spp_state 
-0x6d72 030545 jam uppersm_reconn_spp_cmd_ms_wait ,mem_upper_sm_reconn 
-0x6d73 030546 rtn 
-:      030548 process_upper_sm_reconn_sdp_conn_wait:
-0x6d74 030549 fetch 1 ,mem_sdp_state 
-0x6d75 030550 rtnbit0 l2cap_channel_state_conn_res 
-0x6d76 030551 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
-0x6d77 030552 branch process_upper_sm_reconn 
-:      030553 process_upper_sm_reconn_sdp_cfg_wait:
-0x6d78 030554 fetch 1 ,mem_sdp_state 
-0x6d79 030555 rtnne l2cap_channel_setup_complete 
-0x6d7a 030556 jam uppersm_reconn_ss_spp ,mem_upper_sm_reconn 
-:      030557 process_upper_sm_reconn_ss_spp_wait:
-0x6d7b 030558 fetch 1 ,mem_message_to_uppersm 
-0x6d7c 030559 rtnne recieve_ss_reasult_hf 
-0x6d7d 030560 jam 0 ,mem_message_to_uppersm 
-0x6d7e 030561 jam uppersm_reconn_sdp_disconn ,mem_upper_sm_reconn 
-0x6d7f 030562 branch process_upper_sm_reconn 
-:      030563 process_upper_sm_reconn_sdp_disconn_wait:
-0x6d80 030564 fetch 1 ,mem_sdp_state 
-0x6d81 030565 nrtn blank 
-0x6d82 030566 fetch 1 ,mem_ui_profile_supported 
-0x6d83 030567 bbit1 support_hid ,process_upper_sm_reconn_setup_hid 
-0x6d84 030568 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
-0x6d85 030569 branch process_upper_sm_reconn_termination 
-:      030570 process_upper_sm_reconn_hid_ctrl_conn_wait:
-0x6d86 030571 fetch 1 ,mem_hid_control_state 
-0x6d87 030572 rtnbit0 l2cap_channel_state_conn_res 
-0x6d88 030573 jam uppersm_reconn_hid_ctrl_cfg ,mem_upper_sm_reconn 
-0x6d89 030574 branch process_upper_sm_reconn 
-:      030575 process_upper_sm_reconn_hid_ctrl_cfg_wait:
-0x6d8a 030576 fetch 1 ,mem_hid_control_state 
-0x6d8b 030577 rtnne l2cap_channel_setup_complete 
-0x6d8c 030578 jam uppersm_reconn_hid_int_conn ,mem_upper_sm_reconn 
-0x6d8d 030579 branch process_upper_sm_reconn 
-:      030580 process_upper_sm_reconn_hid_int_conn_wait:
-0x6d8e 030581 fetch 1 ,mem_hid_interrupt_state 
-0x6d8f 030582 rtnbit0 l2cap_channel_state_conn_res 
-0x6d90 030583 jam uppersm_reconn_hid_int_cfg ,mem_upper_sm_reconn 
-0x6d91 030584 branch process_upper_sm_reconn 
-:      030585 process_upper_sm_reconn_hid_int_cfg_wait:
-0x6d92 030586 fetch 1 ,mem_hid_interrupt_state 
-0x6d93 030587 rtnne l2cap_channel_setup_complete 
-0x6d94 030588 fetch 1 ,mem_ui_profile_supported 
-0x6d95 030589 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
-0x6d96 030590 branch process_upper_sm_reconn_termination 
-:      030591 process_upper_sm_reconn_rfcomm_conn_wait:
-0x6d97 030592 fetch 1 ,mem_rfcomm_state 
-0x6d98 030593 rtnbit0 l2cap_channel_state_conn_res 
-0x6d99 030594 jam uppersm_reconn_rfcomm_cfg ,mem_upper_sm_reconn 
-0x6d9a 030595 branch process_upper_sm_reconn 
-:      030596 process_upper_sm_reconn_rfcomm_cfg_wait:
-0x6d9b 030597 fetch 1 ,mem_rfcomm_state 
-0x6d9c 030598 rtnne l2cap_channel_setup_complete 
-0x6d9d 030599 jam uppersm_reconn_rfcomm_sabm ,mem_upper_sm_reconn 
-0x6d9e 030600 branch process_upper_sm_reconn 
-:      030601 process_upper_sm_reconn_rfcomm_sabm_wait:
-0x6d9f 030602 fetch 1 ,mem_rfcomm_state 
-0x6da0 030603 rtnne l2cap_channel_rfcomm_dlci0_opened 
-0x6da1 030604 fetch 1 ,mem_ui_profile_supported 
-0x6da2 030605 bbit1 support_spp ,process_upper_sm_reconn_setup_spp 
-0x6da3 030606 branch process_upper_sm_reconn_termination 
-:      030607 process_upper_sm_reconn_spp_cmd_pn_wait:
-0x6da4 030608 fetch 1 ,mem_spp_state 
-0x6da5 030609 rtnbit0 rfcomm_channel_state_pn_res 
-0x6da6 030610 jam uppersm_reconn_spp_sabm ,mem_upper_sm_reconn 
-0x6da7 030611 branch process_upper_sm_reconn 
-:      030612 process_upper_sm_reconn_spp_sabm_wait:
-0x6da8 030613 fetch 1 ,mem_spp_state 
-0x6da9 030614 rtnbit0 rfcomm_channel_state_ua 
-0x6daa 030615 jam uppersm_reconn_spp_cmd_ms ,mem_upper_sm_reconn 
-0x6dab 030616 branch process_upper_sm_reconn 
-:      030617 process_upper_sm_reconn_spp_cmd_ms_wait:
-0x6dac 030618 fetch 1 ,mem_spp_state 
-0x6dad 030619 rtnne rfcomm_channel_setup_complete 
-0x6dae 030620 branch process_upper_sm_reconn_termination 
-:      030622 process_upper_sm_reconn_setup_hid:
-0x6daf 030623 jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
-0x6db0 030624 branch process_upper_sm_reconn 
-:      030626 process_upper_sm_reconn_setup_rfcomm:
-0x6db1 030627 jam uppersm_reconn_rfcomm_conn ,mem_upper_sm_reconn 
-0x6db2 030628 branch process_upper_sm_reconn 
-:      030629 process_upper_sm_reconn_setup_spp:
-0x6db3 030630 jam uppersm_reconn_spp_cmd_pn ,mem_upper_sm_reconn 
-0x6db4 030631 branch process_upper_sm_reconn 
-:      030635 process_upper_sm_reconn_termination:
-0x6db5 030636 jam 0 ,mem_upper_sm_reconn 
-0x6db6 030637 rtn 
-:      030638 upper_sm_send_sdp_conn:
-0x6db7 030639 bpatchx patch37_7 ,mem_patch37 
-0x6db8 030640 call l2cap_malloc_signal_channel 
-0x6db9 030641 setarg psm_sdp 
-0x6dba 030642 copy pdata ,temp 
-0x6dbb 030643 setarg l2cap_sdp_channel 
-0x6dbc 030644 copy pdata ,timeup 
-0x6dbd 030645 branch ml2cap_send_signal_connect_req 
-:      030647 upper_sm_send_sdp_cfg:
-0x6dbe 030648 bpatchx patch38_0 ,mem_patch38 
-0x6dbf 030649 call l2cap_malloc_signal_channel 
-0x6dc0 030650 fetch 2 ,mem_sdp_remote_cid 
-0x6dc1 030651 copy pdata ,temp 
-0x6dc2 030652 branch ml2cap_send_signal_config_req 
-:      030654 upper_sm_send_sdp_disconn:
-0x6dc3 030655 bpatchx patch38_1 ,mem_patch38 
-0x6dc4 030656 call l2cap_malloc_signal_channel 
-0x6dc5 030657 fetch 2 ,mem_sdp_remote_cid 
-0x6dc6 030658 copy pdata ,temp 
-0x6dc7 030659 arg l2cap_sdp_channel ,timeup 
-0x6dc8 030660 call ml2cap_send_signal_disconn_req 
-0x6dc9 030661 fetch 1 ,mem_sdp_state 
-0x6dca 030662 set0 l2cap_channel_state_rcv_cfg_res ,pdata 
-0x6dcb 030663 store 1 ,mem_sdp_state 
-0x6dcc 030664 rtn 
-:      030666 upper_sm_send_ss_spp:
-0x6dcd 030667 bpatchx patch38_2 ,mem_patch38 
-0x6dce 030668 call l2cap_malloc_sdp_channel 
-0x6dcf 030669 call sdp_send_spp_request 
-0x6dd0 030670 branch msdp_send_req_done 
-:      030672 upper_sm_send_rfcomm_conn:
-0x6dd1 030673 bpatchx patch38_3 ,mem_patch38 
-0x6dd2 030674 call l2cap_malloc_signal_channel 
-0x6dd3 030675 setarg psm_rfcomm 
-0x6dd4 030676 copy pdata ,temp 
-0x6dd5 030677 setarg l2cap_rfcomm_channel 
-0x6dd6 030678 copy pdata ,timeup 
-0x6dd7 030679 branch ml2cap_send_signal_connect_req 
-:      030681 upper_sm_send_rfcomm_cfg:
-0x6dd8 030682 bpatchx patch38_4 ,mem_patch38 
-0x6dd9 030683 call l2cap_malloc_signal_channel 
-0x6dda 030684 fetch 2 ,mem_rfcomm_remote_cid 
-0x6ddb 030685 copy pdata ,temp 
-0x6ddc 030686 branch ml2cap_send_signal_config_req 
-:      030688 upper_sm_send_hid_ctrl_conn:
-0x6ddd 030689 bpatchx patch38_5 ,mem_patch38 
-0x6dde 030690 call l2cap_malloc_signal_channel 
-0x6ddf 030691 setarg psm_hid_control 
-0x6de0 030692 copy pdata ,temp 
-0x6de1 030693 setarg l2cap_hid_control_channel 
-0x6de2 030694 copy pdata ,timeup 
-0x6de3 030695 branch ml2cap_send_signal_connect_req 
-:      030697 upper_sm_send_hid_ctrl_cfg:
-0x6de4 030698 bpatchx patch38_6 ,mem_patch38 
-0x6de5 030699 call l2cap_malloc_signal_channel 
-0x6de6 030700 fetch 2 ,mem_hid_ctrl_remote_cid 
-0x6de7 030701 copy pdata ,temp 
-0x6de8 030702 branch ml2cap_send_signal_config_req 
-:      030704 upper_sm_send_hid_int_conn:
-0x6de9 030705 bpatchx patch38_7 ,mem_patch38 
-0x6dea 030706 call l2cap_malloc_signal_channel 
-0x6deb 030707 setarg psm_hid_interrupt 
-0x6dec 030708 copy pdata ,temp 
-0x6ded 030709 setarg l2cap_hid_interrupt_channel 
-0x6dee 030710 copy pdata ,timeup 
-0x6def 030711 branch ml2cap_send_signal_connect_req 
-:      030713 upper_sm_send_hid_int_cfg:
-0x6df0 030714 bpatchx patch39_0 ,mem_patch39 
-0x6df1 030715 call l2cap_malloc_signal_channel 
-0x6df2 030716 fetch 2 ,mem_hid_int_remote_cid 
-0x6df3 030717 copy pdata ,temp 
-0x6df4 030718 branch ml2cap_send_signal_config_req 
-:      030720 upper_sm_send_rfcomm_sabm:
-0x6df5 030721 bpatchx patch39_1 ,mem_patch39 
-0x6df6 030722 call l2cap_malloc_rfcomm_channel 
-0x6df7 030724 jam 3 ,mem_current_adss 
-0x6df8 030725 jam 0x1c ,mem_current_fcs 
-0x6df9 030726 call rfcomm_send_sabm 
-0x6dfa 030727 jam 1 ,mem_rfcomm_initiator 
-0x6dfb 030728 rtn 
-:      030730 upper_sm_send_spp_cmd_pn:
-0x6dfc 030731 bpatchx patch39_2 ,mem_patch39 
-0x6dfd 030732 call l2cap_malloc_rfcomm_channel 
-0x6dfe 030733 fetcht 1 ,mem_remote_spp_channel 
-0x6dff 030734 call channel_to_dlci 
-0x6e00 030735 storet 1 ,mem_pn_dlci 
-0x6e01 030736 branch rfcomm_send_param_neg_cmd 
-:      030738 upper_sm_send_spp_sabm:
-0x6e02 030739 bpatchx patch39_3 ,mem_patch39 
-0x6e03 030740 call l2cap_malloc_rfcomm_channel 
-0x6e04 030741 fetcht 1 ,mem_pn_dlci 
-0x6e05 030742 call dlci_to_address_cmd 
-0x6e06 030743 call rfcomm_calculate_fcs_sabm 
-0x6e07 030744 store 1 ,mem_current_fcs 
-0x6e08 030745 fetcht 1 ,mem_pn_dlci 
-0x6e09 030746 call dlci_to_address_cmd 
-0x6e0a 030747 storet 1 ,mem_current_adss 
-0x6e0b 030748 branch rfcomm_send_sabm 
-:      030750 upper_sm_send_spp_cmd_ms:
-0x6e0c 030751 bpatchx patch39_4 ,mem_patch39 
-0x6e0d 030752 call l2cap_malloc_rfcomm_channel 
-0x6e0e 030753 fetcht 1 ,mem_pn_dlci 
-0x6e0f 030754 call dlci_to_address_cmd 
-0x6e10 030755 branch rfcomm_send_modem_status_cmd 
-:      030768 sdp_process:
-0x6e11 030769 bpatchx patch39_5 ,mem_patch39 
-0x6e12 030770 fetch 2 ,mem_l2cap_payload_ptr 
-0x6e13 030771 iforce contr 
-0x6e14 030774 ifetch 1 ,contr 
-0x6e15 030775 copy pdata ,regb 
-0x6e16 030776 store 1 ,mem_sdp_pduid 
-0x6e17 030777 ifetch 2 ,contr 
-0x6e18 030778 store 2 ,mem_sdp_transactionid 
-0x6e19 030779 ifetch 1 ,contr 
-0x6e1a 030780 lshift8 pdata ,timeup 
-0x6e1b 030781 ifetch 1 ,contr 
-0x6e1c 030782 iadd timeup ,timeup 
-0x6e1d 030783 bpatchx patch39_6 ,mem_patch39 
-0x6e1e 030784 copy contr ,temp 
-0x6e1f 030785 arg 4 ,loopcnt 
-0x6e20 030786 arg mem_sdp_handle_list ,contw 
-0x6e21 030787 call memset0 
-0x6e22 030788 copy temp ,contr 
-0x6e23 030789 deposit regb 
-0x6e24 030790 beq sdp_error_res ,sdp_process_error_res 
-0x6e25 030791 beq sdp_search_req ,sdp_process_ss_req 
-0x6e26 030792 beq sdp_search_res ,sdp_process_ss_res 
-0x6e27 030793 beq sdp_attribute_req ,sdp_process_sa_req 
-0x6e28 030794 beq sdp_attribute_res ,sdp_process_sa_res 
-0x6e29 030795 beq sdp_searchattrib_req ,sdp_process_ssa_req 
-0x6e2a 030796 beq sdp_searchattrib_res ,sdp_process_ssa_res 
-0x6e2b 030797 branch sdp_insufficient_resource 
-:      030808 sdp_process_ss_req:
-0x6e2c 030809 bpatchx patch39_7 ,mem_patch39 
-0x6e2d 030810 call ask_serviceclassid 
-0x6e2e 030811 compare 1 ,temp ,0xff 
-0x6e2f 030812 branch ss_empty_rsp ,true 
-0x6e30 030813 compare 0xff ,temp ,0xff 
-0x6e31 030814 branch sdp_invalid_request_syntax ,true 
-0x6e32 030816 ifetch 2 ,contr 
-0x6e33 030817 store 2 ,mem_sdp_record_maxcnt 
-0x6e34 030818 increase -2 ,timeup 
-0x6e35 030820 increase -1 ,timeup 
-0x6e36 030821 nbranch sdp_invalid_pdu_size ,zero 
-0x6e37 030822 arg mem_sdp_uuid_search_ptr ,timeup 
-0x6e38 030823 ifetch 2 ,timeup 
-0x6e39 030824 rtn blank 
-0x6e3a 030825 call search_all_uuid 
-0x6e3b 030826 call l2cap_get_sdp_tx_payload 
-0x6e3c 030827 force 3 ,pdata 
-0x6e3d 030828 istore 1 ,contw 
-0x6e3e 030829 fetch 2 ,mem_sdp_transactionid 
-0x6e3f 030830 istore 2 ,contw 
-0x6e40 030831 lshift2 queue ,pdata 
-0x6e41 030832 add pdata ,5 ,pdata 
-0x6e42 030833 add pdata ,5 ,regc 
-0x6e43 030834 byteswap pdata ,pdata 
-0x6e44 030835 istore 2 ,contw 
-0x6e45 030836 deposit queue 
-0x6e46 030837 byteswap pdata ,pdata 
-0x6e47 030838 istore 2 ,contw 
-0x6e48 030839 istore 2 ,contw 
-0x6e49 030840 arg mem_sdp_handle_list ,contr 
-0x6e4a 030841 copy queue ,loopcnt 
-0x6e4b 030842 branch ss_req_blank ,zero 
-:      030843 ss_req_loop:
-0x6e4c 030844 ifetch 4 ,contr 
-0x6e4d 030845 istore 4 ,contw 
-0x6e4e 030846 loop ss_req_loop 
-:      030847 ss_req_blank:
-0x6e4f 030848 force 0 ,pdata 
-0x6e50 030849 istore 1 ,contw 
-0x6e51 030850 deposit regc 
-0x6e52 030851 store 2 ,mem_sdp_tx_pkt_length 
-0x6e53 030853 rtn 
-:      030864 sdp_process_sa_req:
-0x6e54 030865 bpatchx patch3a_0 ,mem_patch3a 
-0x6e55 030866 ifetch 4 ,contr 
-0x6e56 030867 store 4 ,mem_sdp_record_handle 
-0x6e57 030868 increase -4 ,timeup 
-0x6e58 030869 call sdp_store_maxbyte 
-0x6e59 030870 store 2 ,mem_sdp_attribute_maxbyte 
-0x6e5a 030871 increase -2 ,timeup 
-0x6e5b 030872 call dataelementtype6 
-0x6e5c 030873 branch sdp_invalid_request_syntax ,zero 
-0x6e5d 030874 compare 5 ,rega ,0xff 
-0x6e5e 030876 branch sa_judge_wholerange ,true 
-:      030877 sa_isnot_wholerange:
-0x6e5f 030878 arg mem_sdp_attrib_list ,contw 
-0x6e60 030879 force 0 ,queue 
-0x6e61 030880 branch sa_req_loop 
-:      030881 sa_judge_wholerange:
-0x6e62 030882 ifetch 1 ,contr 
-0x6e63 030883 bne sdp_attribute_range ,sdp_invalid_request_syntax 
-0x6e64 030884 ifetch 2 ,contr 
-0x6e65 030885 nbranch sa_judge_wholerange_false1 ,blank 
-0x6e66 030886 ifetch 1 ,contr 
-0x6e67 030887 bne 0xff ,sa_judge_wholerange_false2 
-0x6e68 030888 ifetch 1 ,contr 
-0x6e69 030889 bne 0xff ,sa_judge_wholerange_false3 
-0x6e6a 030890 branch sa_req_all 
-:      030891 sa_judge_wholerange_false3:
-0x6e6b 030892 increase -5 ,contr 
-0x6e6c 030893 branch sa_isnot_wholerange 
-:      030894 sa_judge_wholerange_false2:
-0x6e6d 030895 increase -4 ,contr 
-0x6e6e 030896 branch sa_isnot_wholerange 
-:      030897 sa_judge_wholerange_false1:
-0x6e6f 030898 increase -3 ,contr 
-0x6e70 030899 branch sa_isnot_wholerange 
-:      030900 sa_req_loop:
-0x6e71 030901 ifetch 1 ,contr 
-0x6e72 030902 beq sdp_attribute_id ,sa_req_one_id 
-0x6e73 030903 beq sdp_attribute_range ,sa_req_range 
-:      030904 sa_req_range:
-0x6e74 030905 ifetch 2 ,contr 
-0x6e75 030906 istore 2 ,contw 
-0x6e76 030907 increase 1 ,queue 
-0x6e77 030908 byteswap pdata ,regb 
-0x6e78 030909 ifetch 2 ,contr 
-0x6e79 030910 byteswap pdata ,pdata 
-:      030911 sa_req_range_id_increase:
-0x6e7a 030912 increase 1 ,regb 
-0x6e7b 030913 isub regb ,null 
-0x6e7c 030914 nbranch sa_req_range_id_finish ,positive 
-0x6e7d 030915 copy pdata ,regc 
-0x6e7e 030916 byteswap regb ,pdata 
-0x6e7f 030917 istore 2 ,contw 
-0x6e80 030918 increase 1 ,queue 
-0x6e81 030919 copy regc ,pdata 
-0x6e82 030920 branch sa_req_range_id_increase 
-:      030921 sa_req_range_id_finish:
-0x6e83 030922 increase -5 ,timeup 
-0x6e84 030923 increase -5 ,rega 
-0x6e85 030924 branch sa_req_check_next_id 
-:      030925 sa_req_one_id:
-0x6e86 030926 ifetch 2 ,contr 
-0x6e87 030927 istore 2 ,contw 
-0x6e88 030928 increase 1 ,queue 
-0x6e89 030929 increase -3 ,timeup 
-0x6e8a 030930 increase -3 ,rega 
-:      030931 sa_req_check_next_id:
-0x6e8b 030932 nbranch sdp_invalid_request_syntax ,positive 
-0x6e8c 030933 nbranch sa_req_loop ,zero 
-0x6e8d 030934 increase -1 ,timeup 
-0x6e8e 030935 nbranch sdp_invalid_request_syntax ,zero 
-0x6e8f 030937 call l2cap_get_sdp_tx_payload 
-0x6e90 030938 increase 10 ,contw 
-0x6e91 030939 arg mem_sdp_attrib_list ,rega 
-:      030940 sa_req_handle_attributelist_next:
-0x6e92 030941 copy queue ,pdata 
-0x6e93 030942 branch sa_req_handle_attributelist_end ,blank 
-0x6e94 030943 ifetch 2 ,rega 
-0x6e95 030944 branch sa_req_handle_attributelist_end ,blank 
-0x6e96 030945 iforce regb 
-0x6e97 030946 fetch 4 ,mem_sdp_record_handle 
-0x6e98 030947 iforce temp 
-0x6e99 030948 call search_handle_attrib 
-0x6e9a 030949 copy contr ,pdata 
-0x6e9b 030950 branch sa_req_handle_attributelist_notfound ,blank 
-0x6e9c 030951 increase -3 ,contr 
-0x6e9d 030952 ifetch 3 ,contr 
-0x6e9e 030953 istore 3 ,contw 
-0x6e9f 030954 call sdp_data_len 
-0x6ea0 030955 iforce loopcnt 
-0x6ea1 030956 call memcpy 
-:      030957 sa_req_handle_attributelist_notfound:
-0x6ea2 030958 increase 2 ,rega 
-0x6ea3 030959 increase -1 ,queue 
-0x6ea4 030960 branch sa_req_handle_attributelist_next 
-:      030962 sa_req_handle_attributelist_end:
-0x6ea5 030963 arg sdp_attribute_res ,rega 
-0x6ea6 030964 call ssa_req_range_lastfreg_common 
-0x6ea7 030965 fetch 2 ,mem_sdp_tx_pkt_length 
-0x6ea8 030966 beq 11 ,sa_empty_rsp 
-0x6ea9 030967 branch ssa_req_range_attrbutes_length_no_continue 
-:      030970 sdp_store_continue_common:
-0x6eaa 030971 ifetch 1 ,contr 
-0x6eab 030972 beq 0 ,sdp_store_continue_0byte 
-0x6eac 030973 beq 1 ,sdp_store_continue_1byte 
-0x6ead 030974 beq 2 ,sdp_store_continue_2byte 
-:      030975 sdp_store_continue_0byte:
-0x6eae 030976 increase -1 ,timeup 
-0x6eaf 030977 branch sdp_store_continue_end 
-:      030978 sdp_store_continue_1byte:
-0x6eb0 030979 ifetch 1 ,contr 
-0x6eb1 030980 increase -2 ,timeup 
-0x6eb2 030981 branch sdp_store_continue_end 
-:      030982 sdp_store_continue_2byte:
-0x6eb3 030983 ifetch 2 ,contr 
-0x6eb4 030984 byteswap pdata ,pdata 
-0x6eb5 030985 increase -3 ,timeup 
-:      030986 sdp_store_continue_end:
-0x6eb6 030987 store 2 ,mem_sdp_continue_byte 
-0x6eb7 030988 rtn 
-:      030990 sa_req_all:
-0x6eb8 030991 increase -5 ,timeup 
-0x6eb9 030992 call sdp_store_continue_common 
-0x6eba 030993 nbranch sdp_invalid_pdu_size ,zero 
-0x6ebb 030994 fetcht 4 ,mem_sdp_record_handle 
-0x6ebc 030995 call search_handle 
-0x6ebd 030996 nbranch sdp_invalid_service_record_handle ,zero 
-0x6ebe 030997 copy contr ,rega 
-0x6ebf 030998 call l2cap_get_sdp_tx_payload 
-0x6ec0 030999 copy rega ,contr 
-0x6ec1 031000 increase 3 ,contw 
-0x6ec2 031001 copy contr ,timeup 
-0x6ec3 031002 call sdp_get_data 
-0x6ec4 031003 copy pdata ,rega 
-0x6ec5 031005 fetch 2 ,mem_sdp_continue_byte 
-0x6ec6 031006 copy pdata ,regb 
-0x6ec7 031007 copy rega ,pdata 
-0x6ec8 031008 isub regb ,regb 
-0x6ec9 031009 fetch 2 ,mem_sdp_attribute_maxbyte 
-0x6eca 031010 isub regb ,null 
-0x6ecb 031011 nbranch sa_req_all_fragment_sdp ,positive 
-0x6ecc 031013 disable user 
-0x6ecd 031014 fetch 2 ,mem_sdp_continue_byte 
-0x6ece 031015 branch sa_req_all_fisrt_fragment ,blank 
-0x6ecf 031016 iadd timeup ,contr 
-0x6ed0 031017 increase 3 ,regb 
-0x6ed1 031018 copy regb ,loopcnt 
-0x6ed2 031019 copy loopcnt ,pdata 
-0x6ed3 031020 increase 3 ,pdata 
-0x6ed4 031021 byteswap pdata ,pdata 
-0x6ed5 031022 istore 2 ,contw 
-0x6ed6 031023 copy loopcnt ,pdata 
-0x6ed7 031024 byteswap pdata ,pdata 
-0x6ed8 031025 istore 2 ,contw 
-0x6ed9 031026 branch sa_req_all_answer_attributelist_full_loop 
-:      031027 sa_req_all_fisrt_fragment:
-0x6eda 031028 add rega ,6 ,loopcnt 
-0x6edb 031029 branch sa_req_all_parlength_continue_byte ,user 
-0x6edc 031030 byteswap loopcnt ,pdata 
-0x6edd 031031 branch sa_req_all_parlength_continue_byte_end 
-:      031032 sa_req_all_parlength_continue_byte:
-0x6ede 031033 copy loopcnt ,pdata 
-0x6edf 031034 increase 2 ,pdata 
-0x6ee0 031035 byteswap pdata ,pdata 
-:      031036 sa_req_all_parlength_continue_byte_end:
-0x6ee1 031037 istore 2 ,contw 
-0x6ee2 031038 increase -3 ,loopcnt 
-0x6ee3 031039 byteswap loopcnt ,pdata 
-0x6ee4 031040 istore 2 ,contw 
-0x6ee5 031041 copy timeup ,contr 
-0x6ee6 031042 branch sa_req_all_answer_attributelist_full_loop 
-:      031043 sa_req_all_fragment_sdp:
-0x6ee7 031044 enable user 
-0x6ee8 031046 fetch 2 ,mem_sdp_attribute_maxbyte 
-0x6ee9 031047 copy pdata ,rega 
-0x6eea 031048 copy rega ,loopcnt 
-0x6eeb 031049 fetch 2 ,mem_sdp_continue_byte 
-0x6eec 031050 branch sa_req_all_fisrt_fragment ,blank 
-0x6eed 031051 iadd timeup ,contr 
-0x6eee 031052 copy rega ,pdata 
-0x6eef 031053 increase 5 ,pdata 
-0x6ef0 031054 byteswap pdata ,pdata 
-0x6ef1 031055 istore 2 ,contw 
-0x6ef2 031056 copy rega ,pdata 
-0x6ef3 031057 byteswap pdata ,pdata 
-0x6ef4 031058 istore 2 ,contw 
-:      031059 sa_req_all_answer_attributelist_full_loop:
-0x6ef5 031060 call memcpy 
-0x6ef6 031061 nbranch sa_req_all_last_frag_continue ,user 
-0x6ef7 031062 force 2 ,pdata 
-0x6ef8 031063 istore 1 ,contw 
-0x6ef9 031064 copy contr ,pdata 
-0x6efa 031065 isub timeup ,pdata 
-0x6efb 031066 byteswap pdata ,pdata 
-0x6efc 031067 istore 2 ,contw 
-0x6efd 031068 branch sa_req_all_frag_end 
-:      031069 sa_req_all_last_frag_continue:
-0x6efe 031070 force 0 ,pdata 
-0x6eff 031071 istore 1 ,contw 
-:      031072 sa_req_all_frag_end:
-0x6f00 031073 arg sdp_attribute_res ,rega 
-0x6f01 031074 branch ssa_req_range_common 
-:      031085 sdp_process_ssa_req:
-0x6f02 031086 bpatchx patch3a_1 ,mem_patch3a 
-0x6f03 031087 call ask_serviceclassid 
-0x6f04 031088 compare 0xff ,temp ,0xff 
-0x6f05 031089 branch sdp_invalid_request_syntax ,true 
-0x6f06 031090 call sdp_store_maxbyte 
-0x6f07 031091 store 2 ,mem_sdp_attribute_maxbyte 
-0x6f08 031092 increase -2 ,timeup 
-0x6f09 031093 call dataelementtype6 
-0x6f0a 031094 arg mem_sdp_attrib_list ,contw 
-0x6f0b 031095 force 0 ,queue 
-:      031096 ssa_req_loop:
-0x6f0c 031097 ifetch 1 ,contr 
-0x6f0d 031098 beq sdp_attribute_range ,ssa_req_range 
-0x6f0e 031099 ifetch 2 ,contr 
-0x6f0f 031100 istore 2 ,contw 
-0x6f10 031101 increase 1 ,queue 
-0x6f11 031102 increase -3 ,timeup 
-0x6f12 031103 increase -3 ,rega 
-0x6f13 031104 nbranch sdp_invalid_request_syntax ,positive 
-0x6f14 031105 nbranch ssa_req_loop ,zero 
-0x6f15 031106 increase -1 ,timeup 
-0x6f16 031107 nbranch sdp_invalid_request_syntax ,zero 
-0x6f17 031108 call l2cap_get_sdp_tx_payload 
-0x6f18 031109 increase 13 ,contw 
-0x6f19 031110 fetch 2 ,mem_sdp_uuid_search_ptr 
-0x6f1a 031111 iforce regc 
-0x6f1b 031112 arg mem_sdp_attrib_list ,rega 
-:      031113 ssa_req_attributelist_next:
-0x6f1c 031114 ifetch 2 ,rega 
-0x6f1d 031115 branch ssa_req_attributelist_end ,blank 
-0x6f1e 031116 iforce regb 
-0x6f1f 031117 call search_attrib 
-0x6f20 031118 branch ssa_req_attributelist_notfound ,blank 
-0x6f21 031119 increase -3 ,contr 
-0x6f22 031120 ifetch 3 ,contr 
-0x6f23 031121 istore 3 ,contw 
-0x6f24 031122 call sdp_data_len 
-0x6f25 031123 iforce loopcnt 
-0x6f26 031124 call memcpy 
-:      031125 ssa_req_attributelist_notfound:
-0x6f27 031126 increase 2 ,rega 
-0x6f28 031127 branch ssa_req_attributelist_next 
-:      031129 ssa_req_attributelist_end:
-0x6f29 031130 call ssa_req_range_lastfreg 
-0x6f2a 031131 fetch 2 ,mem_sdp_tx_pkt_length 
-0x6f2b 031132 beq 14 ,ssa_empty_rsp 
-0x6f2c 031133 call ssa_req_range_attrbutes_length_no_continue 
-0x6f2d 031134 branch ssa_req_range_attrbutes_length_no_continue 
-:      031137 sdp_store_maxbyte:
-0x6f2e 031138 ifetch 2 ,contr 
-0x6f2f 031139 byteswap pdata ,pdata 
-0x6f30 031140 increase -3 ,pdata 
-0x6f31 031141 arg 200 ,temp 
-0x6f32 031142 isub temp ,null 
-0x6f33 031143 nrtn positive 
-0x6f34 031144 setarg 200 
-0x6f35 031145 rtn 
-:      031148 ssa_req_range:
-0x6f36 031149 increase 4 ,contr 
-0x6f37 031150 increase -5 ,timeup 
-0x6f38 031151 increase -5 ,rega 
-0x6f39 031152 nbranch sdp_invalid_request_syntax ,zero 
-0x6f3a 031153 call sdp_store_continue_common 
-0x6f3b 031154 nbranch sdp_invalid_pdu_size ,zero 
-0x6f3c 031155 arg mem_sdp_uuid_search_ptr ,timeup 
-0x6f3d 031156 call search_all_uuid 
-0x6f3e 031157 deposit queue 
-0x6f3f 031158 branch ssa_empty_rsp ,blank 
-0x6f40 031159 store 1 ,mem_handle_humber 
-0x6f41 031161 copy regb ,pdata 
-0x6f42 031162 store 2 ,mem_sdp_all_length 
-0x6f43 031163 arg 0 ,queue 
-0x6f44 031164 arg 0 ,rega 
-0x6f45 031165 call l2cap_get_sdp_tx_payload 
-0x6f46 031166 increase 10 ,contw 
-:      031167 ssa_req_range_find_handle:
-0x6f47 031168 call ssa_req_range_get_length 
-0x6f48 031169 nbranch assert ,user 
-0x6f49 031170 copy contr ,timeup 
-0x6f4a 031171 copy pdata ,regc 
-0x6f4b 031172 iadd rega ,rega 
-0x6f4c 031175 fetch 2 ,mem_sdp_continue_byte 
-0x6f4d 031176 copy pdata ,regb 
-0x6f4e 031177 branch ssa_req_range_first_freg ,blank 
-:      031178 ssa_req_range_later_freg_with_continue:
-0x6f4f 031179 copy rega ,pdata 
-0x6f50 031180 isub regb ,regb 
-0x6f51 031181 branch ssa_req_range_next_handle ,zero 
-0x6f52 031182 nbranch ssa_req_range_next_handle ,positive 
-0x6f53 031183 fetch 2 ,mem_sdp_attribute_maxbyte 
-0x6f54 031184 isub regb ,null 
-0x6f55 031185 branch ssa_req_range_maxbyte_with_continue ,zero 
-0x6f56 031186 nbranch ssa_req_range_maxbyte_with_continue ,positive 
-:      031189 ssa_req_range_send_not_maxbyte:
-0x6f57 031190 copy regb ,loopcnt 
-0x6f58 031191 call ssa_req_range_maxbyte_with_continue_cpy 
-0x6f59 031192 fetch 1 ,mem_handle_humber 
-0x6f5a 031193 increase 1 ,queue 
-0x6f5b 031194 isub queue ,null 
-0x6f5c 031195 branch ssa_req_range_lastfreg ,zero 
-0x6f5d 031196 branch ssa_req_range_freg_with_continue 
-:      031198 ssa_req_range_maxbyte_with_continue:
-0x6f5e 031199 copy pdata ,loopcnt 
-0x6f5f 031200 call ssa_req_range_maxbyte_with_continue_cpy 
-0x6f60 031201 branch ssa_req_range_freg_with_continue 
-:      031203 ssa_req_range_maxbyte_with_continue_cpy:
-0x6f61 031204 increase -3 ,contw 
-0x6f62 031205 copy loopcnt ,temp 
-0x6f63 031206 copy regc ,pdata 
-0x6f64 031207 isub regb ,pdata 
-0x6f65 031208 iadd timeup ,contr 
-0x6f66 031209 branch memcpy 
-:      031211 ssa_req_range_next_handle:
-0x6f67 031212 fetch 1 ,mem_handle_humber 
-0x6f68 031213 increase 1 ,queue 
-0x6f69 031214 isub queue ,null 
-0x6f6a 031215 rtn zero 
-0x6f6b 031216 branch ssa_req_range_find_handle 
-:      031218 ssa_req_range_get_length:
-0x6f6c 031219 call disable_user 
-0x6f6d 031220 arg mem_sdp_handle_list ,contr 
-0x6f6e 031221 lshift2 queue ,pdata 
-0x6f6f 031222 iadd contr ,contr 
-0x6f70 031223 ifetcht 4 ,contr 
-0x6f71 031224 call search_handle 
-0x6f72 031225 nrtn zero 
-0x6f73 031226 call sdp_data_len 
-0x6f74 031227 branch enable_user 
-:      031229 ssa_req_range_first_freg:
-0x6f75 031230 fetch 2 ,mem_sdp_attribute_maxbyte 
-0x6f76 031231 isub rega ,null 
-0x6f77 031232 nbranch ssa_req_range_firstfreg_maxbyte_with_continue ,positive 
-0x6f78 031233 copy rega ,loopcnt 
-0x6f79 031234 copy loopcnt ,temp 
-0x6f7a 031235 copy timeup ,contr 
-0x6f7b 031236 call memcpy 
-0x6f7c 031237 fetch 2 ,mem_sdp_all_length 
-0x6f7d 031238 isub rega ,null 
-0x6f7e 031239 branch ssa_req_range_freg_no_continue ,zero 
-:      031240 ssa_req_range_firstfreg_not_maxbyte_with_continue:
-0x6f7f 031241 call ssa_req_range_freg_with_continue 
-0x6f80 031242 branch ssa_req_range_attrbutes_length 
-:      031244 ssa_req_range_freg_no_continue:
-0x6f81 031245 call ssa_req_range_lastfreg 
-0x6f82 031246 branch ssa_req_range_attrbutes_length 
-:      031248 ssa_req_range_lastfreg:
-0x6f83 031249 arg sdp_searchattrib_res ,rega 
-:      031250 ssa_req_range_lastfreg_common:
-0x6f84 031251 force 0 ,pdata 
-0x6f85 031252 istore 1 ,contw 
-0x6f86 031253 call ssa_req_range_common 
-0x6f87 031254 fetcht 2 ,mem_sdp_tx_pkt_length 
-0x6f88 031255 increase -5 ,temp 
-0x6f89 031256 byteswap temp ,pdata 
-0x6f8a 031257 istore 2 ,contw 
-0x6f8b 031258 increase -3 ,temp 
-0x6f8c 031259 byteswap temp ,pdata 
-0x6f8d 031260 istore 2 ,contw 
-0x6f8e 031261 rtn 
-:      031263 ssa_req_range_firstfreg_maxbyte_with_continue:
-0x6f8f 031264 copy pdata ,loopcnt 
-0x6f90 031265 copy loopcnt ,temp 
-0x6f91 031266 copy timeup ,contr 
-0x6f92 031267 call memcpy 
-0x6f93 031268 call ssa_req_range_freg_with_continue 
-:      031269 ssa_req_range_attrbutes_length:
-0x6f94 031270 setarg 0x36 
-0x6f95 031271 istore 1 ,contw 
-0x6f96 031272 fetch 2 ,mem_sdp_all_length 
-0x6f97 031273 byteswap pdata ,pdata 
-0x6f98 031274 istore 2 ,contw 
-0x6f99 031275 rtn 
-:      031277 ssa_req_range_attrbutes_length_no_continue:
-0x6f9a 031278 setarg 0x36 
-0x6f9b 031279 istore 1 ,contw 
-0x6f9c 031280 increase -3 ,temp 
-0x6f9d 031281 byteswap temp ,pdata 
-0x6f9e 031282 istore 2 ,contw 
-0x6f9f 031283 rtn 
-:      031285 ssa_req_range_freg_with_continue:
-0x6fa0 031286 arg sdp_searchattrib_res ,rega 
-0x6fa1 031287 setarg 2 
-0x6fa2 031288 istore 1 ,contw 
-0x6fa3 031289 fetch 2 ,mem_sdp_continue_byte 
-0x6fa4 031290 iadd temp ,temp 
-0x6fa5 031291 byteswap temp ,pdata 
-0x6fa6 031292 istore 2 ,contw 
-0x6fa7 031293 call ssa_req_range_common 
-0x6fa8 031294 fetcht 2 ,mem_sdp_tx_pkt_length 
-0x6fa9 031295 increase -5 ,temp 
-0x6faa 031296 byteswap temp ,pdata 
-0x6fab 031297 istore 2 ,contw 
-0x6fac 031298 increase -5 ,temp 
-0x6fad 031299 byteswap temp ,pdata 
-0x6fae 031300 istore 2 ,contw 
-0x6faf 031301 rtn 
-:      031303 ssa_req_range_common:
-0x6fb0 031304 fetch 2 ,mem_sdp_tx_payload_ptr 
-0x6fb1 031305 isub contw ,pdata 
-0x6fb2 031306 sub pdata ,0 ,pdata 
-0x6fb3 031307 store 2 ,mem_sdp_tx_pkt_length 
-0x6fb4 031308 call l2cap_get_sdp_tx_payload 
-0x6fb5 031309 copy rega ,pdata 
-0x6fb6 031310 istore 1 ,contw 
-0x6fb7 031311 fetch 2 ,mem_sdp_transactionid 
-0x6fb8 031312 istore 2 ,contw 
-0x6fb9 031313 rtn 
-:      031326 sdp_process_ssa_res:
-:      031327 sdp_process_ss_res:
-:      031328 sdp_process_sa_res:
-:      031329 sdp_process_error_res:
-0x6fba 031330 rtn 
-:      031363 sdp_invalid_service_record_handle:
-0x6fbb 031364 setarg 0x0200 
-0x6fbc 031365 store 2 ,mem_sdp_error_code 
-0x6fbd 031366 branch sdp_error_response 
-:      031367 sdp_invalid_pdu_size:
-0x6fbe 031368 setarg 0x0400 
-0x6fbf 031369 store 2 ,mem_sdp_error_code 
-0x6fc0 031370 branch sdp_error_response 
-:      031371 sdp_insufficient_resource:
-0x6fc1 031372 setarg 0x0600 
-0x6fc2 031373 store 2 ,mem_sdp_error_code 
-0x6fc3 031374 branch sdp_error_response 
-:      031375 sdp_invalid_request_syntax:
-0x6fc4 031376 setarg 0x0300 
-0x6fc5 031377 store 2 ,mem_sdp_error_code 
-:      031378 sdp_error_response:
-0x6fc6 031379 call l2cap_get_sdp_tx_payload 
-0x6fc7 031380 istore 1 ,contw 
-0x6fc8 031381 fetch 2 ,mem_sdp_transactionid 
-0x6fc9 031382 istore 2 ,contw 
-0x6fca 031383 setarg 0x0200 
-0x6fcb 031384 istore 2 ,contw 
-0x6fcc 031385 fetch 2 ,mem_sdp_error_code 
-0x6fcd 031386 istore 2 ,contw 
-0x6fce 031387 jam 7 ,mem_sdp_tx_pkt_length 
-0x6fcf 031388 rtn 
-:      031393 ask_serviceclassid:
-0x6fd0 031394 arg 0 ,regb 
-0x6fd1 031395 force 0 ,temp 
-0x6fd2 031396 arg mem_sdp_uuid_search_ptr ,contw 
-0x6fd3 031397 call dataelementtype6 
-0x6fd4 031398 branch asksrv_error ,zero 
-:      031399 classidloop:
-0x6fd5 031400 increase 1 ,regb 
-0x6fd6 031401 ifetch 1 ,contr 
-0x6fd7 031402 increase -1 ,rega 
-0x6fd8 031403 increase -1 ,timeup 
-0x6fd9 031404 compare 0x18 ,pdata ,0xf8 
-0x6fda 031405 nbranch asksrv_error ,true 
-0x6fdb 031406 compare 0x04 ,pdata ,0x07 
-0x6fdc 031407 nbranch cmp032 ,true 
-0x6fdd 031408 force 1 ,temp 
-:      031409 skip2bytes:
-0x6fde 031410 ifetch 1 ,contr 
-0x6fdf 031411 increase -1 ,rega 
-0x6fe0 031412 increase -1 ,timeup 
-0x6fe1 031413 bne 0x00 ,frstbwrong 
-0x6fe2 031414 ifetch 1 ,contr 
-0x6fe3 031415 increase -1 ,rega 
-0x6fe4 031416 increase -1 ,timeup 
-0x6fe5 031417 beq 0x00 ,cmpuuid 
-0x6fe6 031418 branch scndbwrong 
-:      031419 frstbwrong:
-0x6fe7 031420 increase 1 ,contr 
-0x6fe8 031421 increase -1 ,rega 
-0x6fe9 031422 increase -1 ,timeup 
-:      031423 scndbwrong:
-0x6fea 031424 increase 2 ,contr 
-0x6feb 031425 increase -2 ,rega 
-0x6fec 031426 increase -2 ,timeup 
-0x6fed 031427 compare 0x00 ,temp ,0xff 
-0x6fee 031428 branch loopornot ,true 
-0x6fef 031429 increase 12 ,contr 
-0x6ff0 031430 increase -12 ,rega 
-0x6ff1 031431 increase -12 ,timeup 
-0x6ff2 031432 branch loopornot 
-:      031433 cmp032:
-0x6ff3 031434 compare 0x02 ,pdata ,0x07 
-0x6ff4 031435 nbranch cmp016 ,true 
-0x6ff5 031436 branch skip2bytes 
-:      031437 cmp016:
-0x6ff6 031438 compare 0x01 ,pdata ,0x07 
-0x6ff7 031439 nbranch asksrv_error ,true 
-:      031440 cmpuuid:
-0x6ff8 031441 increase -2 ,rega 
-0x6ff9 031442 increase -2 ,timeup 
-0x6ffa 031443 ifetch 2 ,contr 
-0x6ffb 031444 sub regb ,4 ,null 
-0x6ffc 031445 branch uuidsize ,zero 
-0x6ffd 031446 istore 2 ,contw 
-:      031447 uuidsize:
-0x6ffe 031448 compare 0x00 ,temp ,0xff 
-0x6fff 031449 branch loopornot ,true 
-0x7000 031450 copy contr ,temp 
-0x7001 031451 ifetch 1 ,contr 
-0x7002 031452 bne 0x00 ,wrong12b 
-0x7003 031453 ifetch 1 ,contr 
-0x7004 031454 bne 0x00 ,wrong12b 
-0x7005 031455 ifetch 1 ,contr 
-0x7006 031456 bne 0x10 ,wrong12b 
-0x7007 031457 ifetch 1 ,contr 
-0x7008 031458 bne 0x00 ,wrong12b 
-0x7009 031459 ifetch 1 ,contr 
-0x700a 031460 bne 0x80 ,wrong12b 
-0x700b 031461 ifetch 1 ,contr 
-0x700c 031462 bne 0x00 ,wrong12b 
-0x700d 031463 ifetch 1 ,contr 
-0x700e 031464 bne 0x00 ,wrong12b 
-0x700f 031465 ifetch 1 ,contr 
-0x7010 031466 bne 0x80 ,wrong12b 
-0x7011 031467 ifetch 1 ,contr 
-0x7012 031468 bne 0x5f ,wrong12b 
-0x7013 031469 ifetch 1 ,contr 
-0x7014 031470 bne 0x9b ,wrong12b 
-0x7015 031471 ifetch 1 ,contr 
-0x7016 031472 bne 0x34 ,wrong12b 
-0x7017 031473 ifetch 1 ,contr 
-0x7018 031474 beq 0xfb ,chck12dn 
-:      031475 wrong12b:
-0x7019 031476 copy temp ,contr 
-:      031477 wrong12b1:
-0x701a 031478 increase 12 ,contr 
-0x701b 031479 force 0x00 ,queue 
-0x701c 031480 force 0x00 ,temp 
-0x701d 031481 branch chck12dn 
-:      031483 chck12dn:
-0x701e 031484 increase -12 ,timeup 
-0x701f 031485 increase -12 ,rega 
-:      031486 loopornot:
-0x7020 031487 force 0x00 ,temp 
-0x7021 031488 compare 0x00 ,rega ,0xff 
-0x7022 031489 nbranch classidloop ,true 
-0x7023 031490 force 0 ,pdata 
-0x7024 031491 istore 2 ,contw 
-0x7025 031492 rtn 
-:      031493 asksrv_error:
-0x7026 031494 arg 0xff ,temp 
-0x7027 031495 rtn 
-:      031505 dataelementtype6:
-0x7028 031506 bpatchx patch3a_4 ,mem_patch3a 
-0x7029 031507 ifetch 1 ,contr 
-0x702a 031508 increase -1 ,timeup 
-0x702b 031509 compare 0x30 ,pdata ,0xf8 
-0x702c 031510 nbranch dsize_error ,true 
-0x702d 031511 compare 0x07 ,pdata ,0x07 
-0x702e 031512 branch dsize32 ,true 
-0x702f 031513 compare 0x06 ,pdata ,0x07 
-0x7030 031514 branch dsize16 ,true 
-0x7031 031515 compare 0x05 ,pdata ,0x07 
-0x7032 031516 nbranch dsize_error ,true 
-0x7033 031518 ifetch 1 ,contr 
-0x7034 031519 copy pdata ,rega 
-0x7035 031520 increase -1 ,timeup 
-0x7036 031521 branch dsize 
-:      031522 dsize32:
-0x7037 031523 increase 2 ,contr 
-0x7038 031524 increase -2 ,timeup 
-:      031525 dsize16:
-0x7039 031526 ifetch 2 ,contr 
-0x703a 031527 byteswap pdata ,rega 
-0x703b 031528 increase -2 ,timeup 
-:      031529 dsize:
-0x703c 031530 force 0x01 ,pdata 
-0x703d 031531 rtn 
-:      031532 dsize_error:
-0x703e 031533 force 0x00 ,pdata 
-0x703f 031534 rtn 
-:      031544 ss_empty_rsp:
-0x7040 031545 setarg sdp_search_res 
-0x7041 031546 store 1 ,mem_sdp_pduid 
-0x7042 031547 branch empty_response 
-:      031548 sa_empty_rsp:
-0x7043 031549 setarg sdp_attribute_res 
-0x7044 031550 store 1 ,mem_sdp_pduid 
-0x7045 031551 branch empty_response 
-:      031552 ssa_empty_rsp:
-0x7046 031553 setarg sdp_searchattrib_res 
-0x7047 031554 store 1 ,mem_sdp_pduid 
-:      031555 empty_response:
-0x7048 031556 call l2cap_get_sdp_tx_payload 
-0x7049 031559 fetch 1 ,mem_sdp_pduid 
-0x704a 031560 copy pdata ,regb 
-0x704b 031561 istore 1 ,contw 
-0x704c 031562 fetch 2 ,mem_sdp_transactionid 
-0x704d 031563 istore 2 ,contw 
-0x704e 031564 setarg 0x0500 
-0x704f 031565 istore 2 ,contw 
-0x7050 031566 compare sdp_attribute_res ,regb ,0xff 
-0x7051 031567 branch fullsearch ,true 
-0x7052 031568 compare sdp_searchattrib_res ,regb ,0xff 
-0x7053 031569 branch fullsearch ,true 
-0x7054 031570 setarg 0x000000 
-0x7055 031571 istore 5 ,contw 
-0x7056 031572 branch outempty 
-:      031574 fullsearch:
-0x7057 031575 setarg 0x350200 
-0x7058 031576 istore 5 ,contw 
-:      031577 outempty:
-0x7059 031578 jam 10 ,mem_sdp_tx_pkt_length 
-0x705a 031579 rtn 
-:      031582 sdp_data_len:
-0x705b 031583 call store_contw 
-0x705c 031584 call store_contr 
-0x705d 031585 call sdp_get_data 
-0x705e 031586 call get_contw 
-0x705f 031587 call get_contr 
-0x7060 031588 copy temp ,pdata 
-0x7061 031589 rtn 
-:      031592 sdp_get_data:
-0x7062 031593 ifetch 1 ,contr 
-0x7063 031594 and pdata ,0x7 ,loopcnt 
-0x7064 031595 rshift3 pdata ,pdata 
-0x7065 031596 bne 0 ,sdp_get_data_type_not0 
-:      031597 sdp_get_data_type0:
-0x7066 031598 force 1 ,pdata 
-0x7067 031599 force 1 ,temp 
-0x7068 031600 rtn 
-:      031602 sdp_get_data_type_not0_sizeindex01234:
-0x7069 031603 call left_shift_n 
-0x706a 031604 add pdata ,1 ,temp 
-0x706b 031605 rtn 
-:      031606 sdp_get_data_type_not0:
-0x706c 031607 deposit loopcnt 
-0x706d 031608 sub pdata ,4 ,null 
-0x706e 031609 branch sdp_get_data_type_not0_sizeindex01234 ,positive 
-0x706f 031610 beq 5 ,sdp_get_data_type_not0_sizeindex5 
-0x7070 031611 beq 6 ,sdp_get_data_type_not0_sizeindex6 
-0x7071 031612 beq 7 ,sdp_get_data_type_not0_sizeindex7 
-0x7072 031613 rtn 
-:      031615 sdp_get_data_type_not0_sizeindex5:
-0x7073 031616 ifetch 1 ,contr 
-0x7074 031617 add pdata ,2 ,temp 
-0x7075 031618 rtn 
-:      031619 sdp_get_data_type_not0_sizeindex6:
-0x7076 031620 ifetch 2 ,contr 
-0x7077 031621 byteswap pdata ,pdata 
-0x7078 031622 add pdata ,3 ,temp 
-0x7079 031623 rtn 
-:      031624 sdp_get_data_type_not0_sizeindex7:
-0x707a 031625 ifetch 2 ,contr 
-0x707b 031626 byteswap pdata ,pdata 
-0x707c 031627 ifetcht 2 ,contr 
-0x707d 031628 byteswap temp ,temp 
-0x707e 031629 lshift16 temp ,temp 
-0x707f 031630 iadd temp ,pdata 
-0x7080 031631 add pdata ,5 ,temp 
-0x7081 031632 rtn 
-:      031638 search_all_uuid:
-0x7082 031639 bpatchx patch3a_5 ,mem_patch3a 
-0x7083 031640 force 0 ,queue 
-0x7084 031641 arg 0 ,regb 
-0x7085 031642 arg mem_sdp_handle_list ,contw 
-:      031643 search_all_uuid_llop:
-0x7086 031644 ifetch 2 ,timeup 
-0x7087 031645 rtn blank 
-0x7088 031646 call search_uuid 
-0x7089 031647 copy queue ,pdata 
-0x708a 031648 rtneq sdp_max_handle_number 
-0x708b 031649 increase 2 ,timeup 
-0x708c 031650 branch search_all_uuid_llop 
-:      031652 search_uuid:
-0x708d 031654 iforce regc 
-0x708e 031656 fetch 2 ,mem_ui_uuid_table 
-0x708f 031657 iforce contr 
-:      031658 search_uuid_next:
-0x7090 031659 copy queue ,pdata 
-0x7091 031660 rtneq sdp_max_handle_number 
-0x7092 031661 disable user 
-0x7093 031662 ifetch 1 ,contr 
-0x7094 031663 rtn blank 
-0x7095 031664 iforce loopcnt 
-:      031665 search_uuid_loop:
-0x7096 031666 ifetch 2 ,contr 
-0x7097 031667 isub regc ,null 
-0x7098 031668 nbranch search_uuid_not_found ,zero 
-0x7099 031669 enable user 
-:      031670 search_uuid_not_found:
-0x709a 031671 loop search_uuid_loop 
-0x709b 031672 ifetcht 4 ,contr 
-0x709c 031673 copy contr ,rega 
-0x709d 031674 nbranch search_uuid_nomatch ,user 
-0x709e 031675 arg mem_sdp_handle_list ,contr 
-0x709f 031676 arg sdp_max_handle_number ,loopcnt 
-:      031677 search_uuid_check_same_handle:
-0x70a0 031678 ifetch 4 ,contr 
-0x70a1 031679 branch search_uuid_store_handle ,blank 
-0x70a2 031680 isub temp ,null 
-0x70a3 031681 branch search_uuid_nomatch ,zero 
-0x70a4 031682 loop search_uuid_check_same_handle 
-0x70a5 031683 rtn 
-:      031684 search_uuid_store_handle:
-0x70a6 031685 istoret 4 ,contw 
-0x70a7 031686 increase 1 ,queue 
-0x70a8 031687 copy rega ,contr 
-0x70a9 031688 call sdp_data_len 
-0x70aa 031689 iadd regb ,regb 
-0x70ab 031690 iadd contr ,contr 
-0x70ac 031691 branch search_uuid_next 
-:      031692 search_uuid_nomatch:
-0x70ad 031693 copy rega ,contr 
-0x70ae 031694 call sdp_get_data 
-0x70af 031695 iadd contr ,contr 
-0x70b0 031696 branch search_uuid_next 
-:      031702 search_handle:
-0x70b1 031703 bpatchx patch3a_6 ,mem_patch3a 
-0x70b2 031704 fetch 2 ,mem_ui_uuid_table 
-0x70b3 031705 iforce contr 
-:      031706 search_handle_loop:
-0x70b4 031707 ifetch 1 ,contr 
-0x70b5 031708 branch disable_zero ,blank 
-0x70b6 031709 lshift pdata ,pdata 
-0x70b7 031710 iadd contr ,contr 
-0x70b8 031711 ifetch 4 ,contr 
-0x70b9 031712 isub temp ,null 
-0x70ba 031713 rtn zero 
-0x70bb 031714 deposit contw 
-0x70bc 031715 store 2 ,mem_contw 
-0x70bd 031716 storet 8 ,mem_temp 
-0x70be 031717 call sdp_get_data 
-0x70bf 031718 iadd contr ,contr 
-0x70c0 031719 copy contr ,pdata 
-0x70c1 031720 fetcht 2 ,mem_contw 
-0x70c2 031721 copy temp ,contw 
-0x70c3 031722 fetcht 8 ,mem_temp 
-0x70c4 031723 copy pdata ,contr 
-0x70c5 031724 branch search_handle_loop 
-:      031730 search_attrib:
-0x70c6 031731 bpatchx patch3a_7 ,mem_patch3a 
-0x70c7 031732 fetch 2 ,mem_ui_uuid_table 
-0x70c8 031733 iforce contr 
-:      031734 search_attrib_next:
-0x70c9 031735 ifetch 1 ,contr 
-0x70ca 031736 branch search_attrib_end ,blank 
-0x70cb 031737 iforce loopcnt 
-:      031738 search_attrib_loop:
-0x70cc 031739 ifetch 2 ,contr 
-0x70cd 031740 isub regc ,null 
-0x70ce 031741 branch search_attrib_found_uuid ,zero 
-0x70cf 031742 loop search_attrib_loop 
-0x70d0 031743 increase 4 ,contr 
-0x70d1 031744 call sdp_get_data 
-0x70d2 031745 iadd contr ,contr 
-0x70d3 031746 branch search_attrib_next 
-:      031747 search_attrib_found_uuid:
-0x70d4 031748 increase -1 ,loopcnt 
-0x70d5 031749 lshift loopcnt ,pdata 
-0x70d6 031750 iadd contr ,contr 
-0x70d7 031751 increase 4 ,contr 
-0x70d8 031752 call sdp_get_data 
-0x70d9 031753 iadd contr ,timeup 
-:      031754 search_attrib_loop_attribs:
-0x70da 031755 increase 1 ,contr 
-0x70db 031756 ifetch 2 ,contr 
-0x70dc 031757 isub regb ,null 
-0x70dd 031761 branch disable_blank ,zero 
-0x70de 031762 call sdp_data_len 
-0x70df 031763 iadd contr ,contr 
-0x70e0 031764 deposit timeup 
-0x70e1 031765 isub contr ,null 
-0x70e2 031766 branch search_attrib_end ,zero 
-0x70e3 031767 branch search_attrib_loop_attribs 
-:      031768 search_attrib_end:
-0x70e4 031769 force 0 ,contr 
-0x70e5 031770 force 0 ,pdata 
-0x70e6 031771 rtn 
-:      031777 search_handle_attrib:
-0x70e7 031778 bpatchx patch3b_0 ,mem_patch3b 
-0x70e8 031779 fetch 2 ,mem_ui_uuid_table 
-0x70e9 031780 iforce contr 
-:      031781 search_handle_attrib_next:
-0x70ea 031782 ifetch 1 ,contr 
-0x70eb 031783 branch search_handle_attrib_end ,blank 
-0x70ec 031784 lshift pdata ,pdata 
-0x70ed 031785 iadd contr ,contr 
-0x70ee 031786 ifetch 4 ,contr 
-0x70ef 031787 isub temp ,null 
-0x70f0 031788 branch search_handl_attrib_found_handle ,zero 
-0x70f1 031789 call sdp_get_data 
-0x70f2 031790 iadd contr ,contr 
-0x70f3 031791 branch search_handle_attrib_next 
-:      031792 search_handl_attrib_found_handle:
-0x70f4 031793 call sdp_get_data 
-0x70f5 031794 iadd contr ,timeup 
-:      031795 search_handle_attrib_loop_attribs:
-0x70f6 031796 increase 1 ,contr 
-0x70f7 031797 ifetch 2 ,contr 
-0x70f8 031798 isub regb ,null 
-0x70f9 031799 rtn zero 
-0x70fa 031800 call sdp_data_len 
-0x70fb 031801 iadd contr ,contr 
-0x70fc 031802 deposit timeup 
-0x70fd 031803 isub contr ,null 
-0x70fe 031804 branch search_handle_attrib_end ,zero 
-0x70ff 031805 branch search_handle_attrib_loop_attribs 
-:      031806 search_handle_attrib_end:
-0x7100 031807 force 0 ,contr 
-0x7101 031808 rtn 
-:      031812 search_rfcomm_cn:
-0x7102 031813 arg 0x0400 ,regb 
-0x7103 031814 call search_handl_attrib_found_handle 
-0x7104 031815 arg 0x0300 ,regb 
-0x7105 031816 call search_uuid_in_data 
-0x7106 031817 nrtn user 
-0x7107 031818 sub rega ,3 ,null 
-0x7108 031819 branch disable_user ,positive 
-0x7109 031820 ifetch 1 ,contr 
-0x710a 031821 bne 0x08 ,disable_user 
-0x710b 031822 ifetch 1 ,contr 
-0x710c 031823 rtn 
-:      031828 search_uuid_in_data:
-0x710d 031829 bpatchx patch3b_1 ,mem_patch3b 
-0x710e 031830 call sdp_get_data 
-0x710f 031831 copy pdata ,rega 
-:      031832 search_uuid_in_data_loop:
-0x7110 031833 ifetch 1 ,contr 
-0x7111 031834 and pdata ,0x7 ,loopcnt 
-0x7112 031835 rshift3 pdata ,pdata 
-0x7113 031836 sub pdata ,3 ,null 
-0x7114 031837 branch search_uuid_in_data_found_uuid ,zero 
-0x7115 031838 copy loopcnt ,pdata 
-0x7116 031839 beq 5 ,search_uuid_in_data_found_element_index5 
-0x7117 031840 beq 6 ,search_uuid_in_data_found_element_index6 
-0x7118 031841 beq 7 ,search_uuid_in_data_found_element_index7 
-0x7119 031842 increase -1 ,contr 
-0x711a 031843 call sdp_get_data 
-0x711b 031844 iadd contr ,contr 
-0x711c 031845 copy rega ,pdata 
-0x711d 031846 isub temp ,rega 
-0x711e 031847 branch disable_user ,zero 
-0x711f 031848 branch search_uuid_in_data_loop 
-:      031850 search_uuid_in_data_found_element_index5:
-0x7120 031851 increase -2 ,rega 
-0x7121 031852 increase 1 ,contr 
-0x7122 031853 branch search_uuid_in_data_loop 
-:      031854 search_uuid_in_data_found_element_index6:
-0x7123 031855 increase -3 ,rega 
-0x7124 031856 increase 2 ,contr 
-0x7125 031857 branch search_uuid_in_data_loop 
-:      031858 search_uuid_in_data_found_element_index7:
-0x7126 031859 increase -5 ,rega 
-0x7127 031860 increase 4 ,contr 
-0x7128 031861 branch search_uuid_in_data_loop 
-:      031863 search_uuid_in_data_found_uuid:
-0x7129 031864 increase -1 ,rega 
-0x712a 031865 copy loopcnt ,pdata 
-0x712b 031866 beq 1 ,search_uuid_in_data_type_uuid_16 
-0x712c 031867 beq 2 ,search_uuid_in_data_type_uuid_32 
-0x712d 031868 beq 4 ,search_uuid_in_data_type_uuid_128 
-0x712e 031869 branch disable_user 
-:      031870 search_uuid_in_data_type_uuid_128:
-0x712f 031871 increase -12 ,rega 
-:      031872 search_uuid_in_data_type_uuid_32:
-0x7130 031873 ifetch 2 ,contr 
-0x7131 031874 increase -2 ,rega 
-:      031875 search_uuid_in_data_type_uuid_16:
-0x7132 031876 ifetch 2 ,contr 
-0x7133 031877 isub regb ,null 
-0x7134 031878 branch enable_user ,zero 
-0x7135 031879 increase -2 ,rega 
-0x7136 031880 branch disable_user ,zero 
-0x7137 031881 branch search_uuid_in_data_loop 
-:      031940 sdp_send_spp_request:
-0x7138 031941 call l2cap_get_sdp_tx_payload 
-0x7139 031942 copy pdata ,contw 
-0x713a 031943 setarg 6 
-0x713b 031944 istore 1 ,contw 
-0x713c 031945 setarg sdp_tid_spp 
-0x713d 031946 istore 2 ,contw 
-0x713e 031947 setarg 0x0f00 
-0x713f 031948 istore 2 ,contw 
-0x7140 031949 setarg 0x1a0535 
-0x7141 031950 istore 3 ,contw 
-0x7142 031951 setarg 0x0111 
-0x7143 031952 lshift16 pdata ,pdata 
-0x7144 031953 istore 4 ,contw 
-0x7145 031954 setarg 0x2600 
-0x7146 031955 istore 2 ,contw 
-0x7147 031956 setarg 0x0335 
-0x7148 031957 istore 2 ,contw 
-0x7149 031958 setarg 0x0009 
-0x714a 031959 istore 2 ,contw 
-0x714b 031960 setarg 0x0004 
-0x714c 031961 istore 2 ,contw 
-0x714d 031962 jam 0x14 ,mem_sdp_tx_pkt_length 
-0x714e 031963 rtn 
-:      031967 function_g2:
-0x714f 031968 bpatchx patch3b_2 ,mem_patch3b 
-0x7150 031969 jam 80 ,mem_aes_cmac_data_length 
-0x7151 031970 arg memdat ,contw 
-0x7152 031971 arg mem_le_srand ,contr 
-0x7153 031972 call memcpy16 
-0x7154 031973 arg mem_le_pubkey_local_x_256 ,contr 
-0x7155 031974 call memcpy32 
-0x7156 031975 arg mem_le_pubkey_remote_x_256 ,contr 
-0x7157 031976 call memcpy32 
-0x7158 031977 call inverse_memdat 
-0x7159 031978 arg mem_le_mrand ,contr 
-0x715a 031979 call store_inverse_k 
-0x715b 031980 call function_aes_cmac 
-0x715c 031982 arg mem_aes_cmac_temp ,contw 
-0x715d 031983 call load_inverse_result 
-0x715e 031984 setarg 1000000 
-0x715f 031985 copy pdata ,rega 
-0x7160 031986 fetch 4 ,mem_aes_cmac_temp 
-0x7161 031987 idiv rega 
-0x7162 031988 call wait_div_end 
-0x7163 031989 remainder pdata 
-0x7164 031990 store 4 ,mem_gkey 
-0x7165 031992 rtn 
-:      031994 function_f6_eb:
-0x7166 031995 jam 65 ,mem_aes_cmac_data_length 
-0x7167 031996 arg memdat ,contw 
-0x7168 031997 call store_addr_common_a 
-0x7169 031998 call store_addr_common_b 
-0x716a 031999 fetch 3 ,mem_le_pres + 1 
-0x716b 032000 istore 3 ,contw 
-0x716c 032003 call get_r 
-0x716d 032005 arg mem_le_mrand ,contr 
-0x716e 032006 call memcpy16 
-0x716f 032007 arg mem_le_srand ,contr 
-0x7170 032008 call memcpy16 
-0x7171 032009 call inverse_memdat 
-0x7172 032010 arg mem_le_mackey ,contr 
-0x7173 032011 arg mem_aes_cmac_k ,contw 
-0x7174 032012 call memcpy16 
-0x7175 032014 branch function_aes_cmac 
-:      032018 get_r:
-0x7176 032019 fetch 4 ,mem_le_tk 
-0x7177 032020 istore 4 ,contw 
-0x7178 032021 call memset0_4 
-0x7179 032022 branch memset0_8 
-:      032024 function_f6_ea:
-0x717a 032025 bpatchx patch3b_3 ,mem_patch3b 
-0x717b 032026 jam 65 ,mem_aes_cmac_data_length 
-0x717c 032027 arg memdat ,contw 
-0x717d 032028 call store_addr_common_b 
-0x717e 032029 call store_addr_common_a 
-0x717f 032030 fetch 3 ,mem_le_preq + 1 
-0x7180 032031 istore 3 ,contw 
-0x7181 032034 call get_r 
-0x7182 032035 arg mem_le_srand ,contr 
-0x7183 032036 call memcpy16 
-0x7184 032037 arg mem_le_mrand ,contr 
-0x7185 032038 call memcpy16 
-0x7186 032039 call inverse_memdat 
-0x7187 032040 arg mem_le_mackey ,contr 
-0x7188 032041 arg mem_aes_cmac_k ,contw 
-0x7189 032042 call memcpy16 
-0x718a 032044 call function_aes_cmac 
-0x718b 032045 arg mem_aes_cmac_temp ,contw 
-0x718c 032046 branch load_inverse_result 
-:      032048 function_f5:
-0x718d 032049 jam 32 ,mem_aes_cmac_data_length 
-0x718e 032050 arg mem_le_dhkey_256 ,contr 
-0x718f 032051 arg memdat ,contw 
-0x7190 032052 call memcpy32 
-0x7191 032053 call inverse_memdat 
-0x7192 032054 arg mem_le_slat ,contr 
-0x7193 032055 call store_inverse_k 
-0x7194 032056 call function_aes_cmac 
-0x7195 032057 arg mem_aes_cmac_k ,contw 
-0x7196 032058 call store_aes_result 
-0x7197 032059 arg 1 ,temp 
-0x7198 032060 call function_f5_common 
-0x7199 032061 arg mem_le_ltk ,contw 
-0x719a 032062 call load_inverse_result 
-0x719b 032063 arg 0 ,temp 
-0x719c 032064 call function_f5_common 
-0x719d 032065 arg mem_le_mackey ,contw 
-0x719e 032067 branch store_aes_result 
-:      032070 function_f5_common:
-0x719f 032071 bpatchx patch3b_4 ,mem_patch3b 
-0x71a0 032072 jam 53 ,mem_aes_cmac_data_length 
-0x71a1 032073 setarg 0x100 
-0x71a2 032074 store 2 ,memdat 
-0x71a3 032075 call store_addr_common_b 
-0x71a4 032076 call store_addr_common_a 
-0x71a5 032077 arg mem_le_srand ,contr 
-0x71a6 032078 call memcpy16 
-0x71a7 032079 arg mem_le_mrand ,contr 
-0x71a8 032080 call memcpy16 
-0x71a9 032082 setarg 0x6c65 
-0x71aa 032083 istore 2 ,contw 
-0x71ab 032084 setarg 0x6274 
-0x71ac 032085 istore 2 ,contw 
-0x71ad 032086 istoret 1 ,contw 
-0x71ae 032087 call inverse_memdat 
-0x71af 032088 branch function_aes_cmac 
-:      032090 store_addr_common_b:
-0x71b0 032091 fetch 6 ,mem_le_lap 
-0x71b1 032092 istore 6 ,contw 
-0x71b2 032093 fetch 1 ,mem_le_conn_own_addr_type 
-0x71b3 032094 istore 1 ,contw 
-0x71b4 032095 rtn 
-:      032097 store_addr_common_a:
-0x71b5 032098 fetch 6 ,mem_le_plap 
-0x71b6 032099 istore 6 ,contw 
-0x71b7 032104 fetch 1 ,mem_le_conn_peer_addr_type 
-0x71b8 032105 istore 1 ,contw 
-0x71b9 032106 rtn 
-:      032108 function_f4_ca:
-0x71ba 032109 jam 65 ,mem_aes_cmac_data_length 
-0x71bb 032110 fetch 1 ,mem_passkey_1bit 
-0x71bc 032111 store 1 ,memdat 
-0x71bd 032112 arg mem_le_pubkey_local_x_256 ,contr 
-0x71be 032113 call memcpy32 
-0x71bf 032114 arg mem_le_pubkey_remote_x_256 ,contr 
-0x71c0 032115 call memcpy32 
-0x71c1 032116 call inverse_memdat 
-0x71c2 032117 arg mem_le_mrand ,contr 
-0x71c3 032118 call store_inverse_k 
-0x71c4 032119 branch function_aes_cmac 
-:      032122 function_f4_cb:
-0x71c5 032123 jam 65 ,mem_aes_cmac_data_length 
-0x71c6 032124 fetch 1 ,mem_passkey_1bit 
-0x71c7 032125 store 1 ,memdat 
-0x71c8 032126 arg mem_le_pubkey_remote_x_256 ,contr 
-0x71c9 032127 call memcpy32 
-0x71ca 032128 arg mem_le_pubkey_local_x_256 ,contr 
-0x71cb 032129 call memcpy32 
-0x71cc 032130 call inverse_memdat 
-0x71cd 032131 arg mem_le_srand ,contr 
-0x71ce 032132 call store_inverse_k 
-0x71cf 032133 branch function_aes_cmac 
-:      032135 function_aes_cmac:
-0x71d0 032136 bpatchx patch3b_5 ,mem_patch3b 
-0x71d1 032137 call function_aes_cmac_generate_subkey 
-0x71d2 032141 fetch 1 ,mem_aes_cmac_data_length 
-0x71d3 032142 copy pdata ,temp 
-:      032143 function_ceil16:
-0x71d4 032144 increase 15 ,pdata 
-0x71d5 032145 rshift4 pdata ,pdata 
-0x71d6 032146 copy pdata ,regb 
-0x71d7 032147 branch function_aes_cmac_set_flag_0_balnk ,blank 
-0x71d8 032148 and temp ,0x0f ,pdata 
-0x71d9 032149 nbranch function_aes_cmac_set_flag_0 ,blank 
-0x71da 032151 arg mem_aes_cmac_k1 ,regc 
-0x71db 032152 arg memdat ,pdata 
-0x71dc 032153 increase -16 ,pdata 
-0x71dd 032156 iadd temp ,rega 
-0x71de 032157 arg mem_aes_cmac_m_last ,contw 
-0x71df 032158 arg 4 ,loopcnt 
-0x71e0 032159 call xor_loop 
-0x71e1 032163 branch function_aes_cmac_aes 
-:      032165 function_aes_cmac_set_flag_0_balnk:
-0x71e2 032166 arg 1 ,regb 
-0x71e3 032167 arg 0 ,rega 
-0x71e4 032169 branch function_aes_cmac_set_flag_0_common 
-:      032172 function_aes_cmac_set_flag_0:
-0x71e5 032174 and temp ,0x0f ,rega 
-:      032175 function_aes_cmac_set_flag_0_common:
-0x71e6 032176 arg memdat ,pdata 
-0x71e7 032177 iadd temp ,pdata 
-0x71e8 032178 isub rega ,contr 
-0x71e9 032180 arg mem_aes_cmac_temp ,contw 
-0x71ea 032181 call function_aes_cmac_padding 
-0x71eb 032183 arg mem_aes_cmac_k2 ,regc 
-0x71ec 032184 arg mem_aes_cmac_temp ,rega 
-0x71ed 032185 arg mem_aes_cmac_m_last ,contw 
-0x71ee 032186 arg 4 ,loopcnt 
-0x71ef 032187 call xor_loop 
-:      032194 function_aes_cmac_aes:
-0x71f0 032199 call aes_clear_data 
-0x71f1 032200 call aes_init 
-0x71f2 032203 arg memdat ,contr 
-:      032204 function_aes_cmac_aes_loop:
-0x71f3 032206 increase -1 ,regb 
-0x71f4 032207 deposit regb 
-0x71f5 032208 branch function_aes_cmac_aes_loop_end ,blank 
-0x71f6 032209 call load_data128 
-0x71f7 032210 call do_aes_cbc 
-0x71f8 032211 branch function_aes_cmac_aes_loop 
-:      032213 function_aes_cmac_aes_loop_end:
-0x71f9 032214 arg mem_aes_cmac_temp ,contw 
-0x71fa 032215 call store_aes_result 
-0x71fb 032216 arg mem_aes_cmac_m_last ,contr 
-0x71fc 032217 call load_data128 
-0x71fd 032218 call aes_init 
-0x71fe 032219 arg mem_aes_cmac_temp ,contr 
-0x71ff 032220 call load_data128 
-0x7200 032221 branch do_aes_cbc 
-:      032225 load_inverse_result:
-0x7201 032227 copy contw ,rega 
-0x7202 032228 call store_aes_result 
-0x7203 032230 arg 16 ,loopcnt 
-0x7204 032231 branch inverse_data 
-:      032233 store_inverse_k:
-0x7205 032234 arg mem_aes_cmac_k ,contw 
-0x7206 032235 call memcpy16 
-:      032236 inverse_k:
-0x7207 032237 arg 16 ,loopcnt 
-0x7208 032238 arg mem_aes_cmac_k ,rega 
-0x7209 032239 branch inverse_data 
-:      032241 inverse_memdat:
-0x720a 032242 fetch 1 ,mem_aes_cmac_data_length 
-0x720b 032243 copy pdata ,loopcnt 
-0x720c 032244 arg memdat ,rega 
-0x720d 032245 branch inverse_data 
-:      032247 bn_lshift_0_inverse:
-0x720e 032248 ifetch 1 ,rega 
-0x720f 032249 lshift pdata ,pdata 
-0x7210 032250 isolate1 0 ,regc 
-0x7211 032251 setflag true ,0 ,pdata 
-0x7212 032252 isolate1 8 ,pdata 
-0x7213 032253 setflag true ,0 ,regc 
-0x7214 032254 istore 1 ,rega 
-0x7215 032255 increase -1 ,rega 
-0x7216 032256 loop bn_lshift_0_inverse 
-0x7217 032257 rtn 
-:      032259 function_aes_cmac_k1_inverse:
-0x7218 032260 arg mem_aes_cmac_k1 ,rega 
-:      032261 function_aes_cmac_inverse_common:
-0x7219 032262 increase 15 ,rega 
-0x721a 032263 force 16 ,loopcnt 
-0x721b 032264 force 0 ,regc 
-0x721c 032265 branch bn_lshift_0_inverse 
-:      032267 function_aes_cmac_k2_inverse:
-0x721d 032268 arg mem_aes_cmac_k2 ,rega 
-0x721e 032269 branch function_aes_cmac_inverse_common 
-:      032272 function_aes_cmac_generate_subkey:
-0x721f 032273 arg mem_aes_cmac_k ,contr 
-0x7220 032274 call load_key 
-0x7221 032277 force regidx_xor ,regext_index 
-0x7222 032278 call aes_clear 
-0x7223 032279 call aes_clear_data 
-0x7224 032280 call do_aes_ocb 
-0x7225 032285 arg mem_aes_cmac_k1 ,contw 
-0x7226 032286 call store_aes_result 
-:      032287 function_aes_cmac_k1:
-0x7227 032288 bpatchx patch3b_6 ,mem_patch3b 
-0x7228 032289 fetch 1 ,mem_aes_cmac_k1 
-0x7229 032290 isolate1 7 ,pdata 
-0x722a 032291 nbranch function_aes_cmac_k1_0 ,true 
-0x722b 032292 call function_aes_cmac_k1_inverse 
-0x722c 032295 arg mem_aes_cmac_k1 ,regc 
-0x722d 032297 arg mem_aes_cmac_k1 ,contw 
-0x722e 032300 call function_aes_cmac_xor_rb 
-0x722f 032301 branch function_aes_cmac_k2 
-:      032302 function_aes_cmac_k1_0:
-0x7230 032303 call function_aes_cmac_k1_inverse 
-:      032304 function_aes_cmac_k2:
-0x7231 032306 arg mem_aes_cmac_k1 ,contr 
-0x7232 032307 arg mem_aes_cmac_k2 ,contw 
-0x7233 032308 call memcpy16 
-0x7234 032309 fetch 1 ,mem_aes_cmac_k2 
-0x7235 032310 isolate1 7 ,pdata 
-0x7236 032311 nbranch function_aes_cmac_k2_inverse ,true 
-0x7237 032312 call function_aes_cmac_k2_inverse 
-0x7238 032314 arg mem_aes_cmac_k2 ,regc 
-0x7239 032316 arg mem_aes_cmac_k2 ,contw 
-:      032322 function_aes_cmac_xor_rb:
-0x723a 032323 arg 3 ,loopcnt 
-:      032324 function_aes_cmac_xor_rb_loop:
-0x723b 032325 arg 0 ,temp 
-0x723c 032326 call function_aes_cmac_xor_loop_common 
-0x723d 032327 increase 4 ,regc 
-0x723e 032328 loop function_aes_cmac_xor_rb_loop 
-0x723f 032329 arg 0x8700 ,temp 
-0x7240 032330 lshift16 temp ,temp 
-:      032331 function_aes_cmac_xor_loop_common:
-0x7241 032332 ifetch 4 ,regc 
-0x7242 032333 ixor temp ,pdata 
-0x7243 032334 istore 4 ,contw 
-0x7244 032335 rtn 
-:      032341 function_aes_cmac_padding:
-0x7245 032342 bpatchx patch3b_7 ,mem_patch3b 
-0x7246 032343 arg 16 ,loopcnt 
-0x7247 032344 arg 0 ,pdata 
-:      032345 function_aes_cmac_padding_loop:
-0x7248 032346 isub rega ,null 
-0x7249 032347 branch function_aes_cmac_padding_beq_length ,zero 
-0x724a 032348 branch function_aes_cmac_padding_big_length ,positive 
-0x724b 032349 ifetcht 1 ,contr 
-0x724c 032350 istoret 1 ,contw 
-:      032351 function_aes_cmac_padding_loop2:
-0x724d 032352 increase 1 ,pdata 
-0x724e 032353 loop function_aes_cmac_padding_loop 
-0x724f 032354 rtn 
-:      032355 function_aes_cmac_padding_beq_length:
-0x7250 032356 arg 0x80 ,temp 
-:      032357 function_aes_cmac_padding_common:
-0x7251 032358 istoret 1 ,contw 
-0x7252 032359 branch function_aes_cmac_padding_loop2 
-:      032361 function_aes_cmac_padding_big_length:
-0x7253 032362 arg 0 ,temp 
-0x7254 032363 branch function_aes_cmac_padding_common 
-:      032366 generate_kinit:
-0x7255 032367 call function_e22 
-0x7256 032368 arg mem_input_store ,contr 
-0x7257 032369 arg mem_kinit ,contw 
-0x7258 032370 branch memcpy16 
-:      032373 function_e21:
-0x7259 032374 disable user 
-0x725a 032375 call function_expand 
-0x725b 032376 arg mem_random_number ,contr 
-0x725c 032377 arg mem_x ,contw 
-0x725d 032378 force 15 ,loopcnt 
-0x725e 032379 call memcpy 
-0x725f 032380 ifetch 1 ,contr 
-0x7260 032381 xor_into 6 ,pdata 
-0x7261 032382 istore 1 ,contw 
-0x7262 032383 setarg mem_y 
-0x7263 032384 store 2 ,memp_ar_input 
-0x7264 032385 setarg mem_x 
-0x7265 032386 store 2 ,memp_ar_key 
-0x7266 032387 set1 mark_ar2 ,mark 
-0x7267 032388 branch function_ar 
-:      032392 function_e22:
-0x7268 032393 fetcht 1 ,mem_pin_length 
-0x7269 032394 force 16 ,regb 
-0x726a 032395 add temp ,6 ,regc 
-0x726b 032396 sub regc ,16 ,null 
-0x726c 032397 branch function_e22_pin_init ,positive 
-0x726d 032398 force 16 ,regc 
-:      032399 function_e22_pin_init:
-0x726e 032400 arg mem_x ,contw 
-:      032401 function_e22_genx_pin:
-0x726f 032402 arg mem_pin ,contr 
-0x7270 032403 copy temp ,loopcnt 
-0x7271 032404 disable user 
-:      032405 function_e22_genx_loop:
-0x7272 032406 ifetch 1 ,contr 
-0x7273 032407 istore 1 ,contw 
-0x7274 032408 increase -1 ,regb 
-0x7275 032409 branch function_e22_genx_end ,zero 
-0x7276 032410 loop function_e22_genx_loop 
-0x7277 032411 branch function_e22_genx_pin ,user 
-0x7278 032412 enable user 
-0x7279 032413 force 6 ,loopcnt 
-0x727a 032414 copy rega ,contr 
-0x727b 032415 branch function_e22_genx_loop 
-:      032416 function_e22_genx_end:
-0x727c 032417 arg mem_random_number ,contr 
-0x727d 032418 arg mem_y ,contw 
-0x727e 032419 call memcpy16 
-0x727f 032420 fetch 1 ,mem_y15 
-0x7280 032421 ixor regc ,pdata 
-0x7281 032422 store 1 ,mem_y15 
-0x7282 032423 setarg mem_y 
-0x7283 032424 store 2 ,memp_ar_input 
-0x7284 032425 setarg mem_x 
-0x7285 032426 store 2 ,memp_ar_key 
-0x7286 032427 set1 mark_ar2 ,mark 
-0x7287 032428 branch function_ar 
-:      032433 function_e1:
-0x7288 032434 disable user 
-0x7289 032435 call function_expand 
-0x728a 032436 branch function_hash 
-:      032438 function_e3:
-0x728b 032439 arg mem_aco ,rega 
-0x728c 032440 enable user 
-0x728d 032441 call function_expand 
-0x728e 032442 call function_hash 
-0x728f 032443 arg mem_input_store ,contr 
-0x7290 032444 arg mem_kc ,contw 
-0x7291 032445 branch memcpy16 
-:      032448 function_hash:
-0x7292 032449 setarg mem_random_number 
-0x7293 032450 store 2 ,memp_ar_input 
-0x7294 032451 setarg mem_link_key 
-0x7295 032452 store 2 ,memp_ar_key 
-0x7296 032453 set0 mark_ar2 ,mark 
-0x7297 032454 call function_ar 
-0x7298 032455 arg mem_input_store ,rega 
-0x7299 032456 arg mem_random_number ,regb 
-0x729a 032457 arg mem_x ,contw 
-0x729b 032458 call xor16 
-0x729c 032459 arg mem_x ,rega 
-0x729d 032460 arg mem_y ,regb 
-0x729e 032461 copy regb ,contw 
-0x729f 032462 enable user 
-0x72a0 032463 call add16 
-0x72a1 032464 call key_offset 
-0x72a2 032465 setarg mem_y 
-0x72a3 032466 store 2 ,memp_ar_input 
-0x72a4 032467 setarg mem_x 
-0x72a5 032468 store 2 ,memp_ar_key 
-0x72a6 032469 set1 mark_ar2 ,mark 
-0x72a7 032470 branch function_ar 
-:      032474 function_ar:
-0x72a8 032475 jam 0 ,mem_ar_hround 
-0x72a9 032476 fetch 2 ,memp_ar_key 
-0x72aa 032477 iforce contr 
-0x72ab 032478 arg mem_key_store ,contw 
-0x72ac 032479 call memcpy16 
-0x72ad 032480 fetch 2 ,memp_ar_input 
-0x72ae 032481 iforce contr 
-0x72af 032482 arg mem_input_store ,contw 
-0x72b0 032483 call memcpy16 
-:      032485 function_ar_loop:
-0x72b1 032486 call key_scheduling 
-0x72b2 032487 disable user 
-0x72b3 032488 bmark0 mark_ar2 ,function_ar_original 
-0x72b4 032489 fetch 1 ,mem_ar_hround 
-0x72b5 032490 bne 4 ,function_ar_original 
-0x72b6 032491 fetch 2 ,memp_ar_input 
-0x72b7 032492 iforce regb 
-0x72b8 032493 call xor_mod32_ar2 
-:      032494 function_ar_original:
-0x72b9 032495 call xor_mod32 
-0x72ba 032496 call el_boxes 
-0x72bb 032497 fetch 1 ,mem_ar_hround 
-0x72bc 032498 increase 1 ,pdata 
-0x72bd 032499 store 1 ,mem_ar_hround 
-0x72be 032501 call key_scheduling 
-0x72bf 032502 enable user 
-0x72c0 032503 call xor_mod32 
-0x72c1 032504 call pht 
-0x72c2 032505 call permute 
-0x72c3 032506 call pht 
-0x72c4 032507 call permute 
-0x72c5 032508 call pht 
-0x72c6 032509 call permute 
-0x72c7 032510 call pht 
-0x72c8 032511 fetch 1 ,mem_ar_hround 
-0x72c9 032512 increase 1 ,pdata 
-0x72ca 032513 store 1 ,mem_ar_hround 
-0x72cb 032514 bne 16 ,function_ar_loop 
-0x72cc 032515 call key_scheduling 
-0x72cd 032516 disable user 
-0x72ce 032517 branch xor_mod32 
-:      032521 key_scheduling:
-0x72cf 032522 fetch 1 ,mem_ar_hround 
-0x72d0 032523 arg mem_key_store ,contr 
-0x72d1 032524 branch key_sched_zero ,blank 
-0x72d2 032525 iforce regb 
-0x72d3 032526 force 17 ,loopcnt 
-0x72d4 032527 copy contr ,contw 
-:      032528 key_rotateloop:
-0x72d5 032529 ifetch 1 ,contr 
-0x72d6 032530 lshift3 pdata ,temp 
-0x72d7 032531 rshift2 pdata ,pdata 
-0x72d8 032532 rshift3 pdata ,pdata 
-0x72d9 032533 ior temp ,pdata 
-0x72da 032534 istore 1 ,contw 
-0x72db 032535 loop key_rotateloop 
-0x72dc 032536 setarg mem_key_store 
-0x72dd 032537 iadd regb ,contr 
-0x72de 032538 force 16 ,loopcnt 
-0x72df 032539 arg mem_round_key ,contw 
-:      032540 key_select_octet_loop:
-0x72e0 032541 ifetch 1 ,contr 
-0x72e1 032542 istore 1 ,contw 
-0x72e2 032543 compare mem_key_store_end ,contr ,0xff 
-0x72e3 032544 nbranch key_select_octet_nwrap ,true 
-0x72e4 032545 increase -17 ,contr 
-:      032546 key_select_octet_nwrap:
-0x72e5 032547 loop key_select_octet_loop 
-0x72e6 032548 force 0 ,rega 
-0x72e7 032549 add regb ,-1 ,regc 
-0x72e8 032550 lshift2 regc ,regc 
-0x72e9 032551 lshift2 regc ,regc 
-0x72ea 032552 call enable_authrom 
-0x72eb 032553 setarg mem_b_box 
-0x72ec 032554 iadd regc ,regc 
-0x72ed 032555 arg mem_round_key ,contw 
-0x72ee 032556 force 16 ,loopcnt 
-:      032557 bias_round_key_loop:
-0x72ef 032558 ifetcht 1 ,regc 
-0x72f0 032559 ifetch 1 ,contw 
-0x72f1 032560 iadd temp ,pdata 
-0x72f2 032561 istore 1 ,contw 
-0x72f3 032562 increase 1 ,regc 
-0x72f4 032563 loop bias_round_key_loop 
-0x72f5 032564 branch disable_authrom 
-:      032566 key_sched_zero:
-0x72f6 032567 force 16 ,loopcnt 
-0x72f7 032568 force 0 ,temp 
-:      032569 create_byte_16_loop:
-0x72f8 032570 ifetch 1 ,contr 
-0x72f9 032571 ixor temp ,temp 
-0x72fa 032572 loop create_byte_16_loop 
-0x72fb 032573 deposit temp 
-0x72fc 032574 istore 1 ,contr 
-0x72fd 032575 arg mem_key_store ,contr 
-0x72fe 032576 arg mem_round_key ,contw 
-0x72ff 032577 branch memcpy16 
-:      032579 xor_mod32:
-0x7300 032580 arg mem_round_key ,regb 
-:      032581 xor_mod32_ar2:
-0x7301 032582 force 16 ,loopcnt 
-0x7302 032583 arg mem_input_store ,rega 
-0x7303 032584 copy rega ,contw 
-:      032585 xor_mod32_loop:
-0x7304 032586 ifetcht 1 ,rega 
-0x7305 032587 ifetch 1 ,regb 
-0x7306 032588 ixor temp ,alarm 
-0x7307 032589 and loopcnt ,3 ,regc 
-0x7308 032590 nbranch xor_mod32_invert ,user 
-0x7309 032591 xor_into 3 ,regc 
-:      032592 xor_mod32_invert:
-0x730a 032593 sub regc ,1 ,regc 
-0x730b 032594 branch xor_even ,positive 
-0x730c 032595 iadd temp ,alarm 
-:      032596 xor_even:
-0x730d 032597 deposit alarm 
-0x730e 032598 istore 1 ,contw 
-0x730f 032599 increase 1 ,rega 
-0x7310 032600 increase 1 ,regb 
-0x7311 032601 loop xor_mod32_loop 
-0x7312 032602 rtn 
-:      032604 el_boxes:
-0x7313 032605 call enable_authrom 
-0x7314 032606 force 16 ,loopcnt 
-0x7315 032607 arg mem_input_store ,rega 
-:      032608 el_box_loop:
-0x7316 032609 ifetch 1 ,rega 
-0x7317 032610 arg mem_e_box ,contr 
-0x7318 032611 and loopcnt ,3 ,regc 
-0x7319 032612 sub regc ,1 ,null 
-0x731a 032613 branch e_boxes ,positive 
-0x731b 032614 arg mem_l_box ,contr 
-:      032615 e_boxes:
-0x731c 032616 iadd contr ,contr 
-0x731d 032617 ifetch 1 ,contr 
-0x731e 032618 istore 1 ,rega 
-0x731f 032619 increase 1 ,rega 
-0x7320 032620 loop el_box_loop 
-0x7321 032621 branch disable_authrom 
-:      032623 pht:
-0x7322 032624 force 8 ,loopcnt 
-0x7323 032625 arg mem_input_store ,contr 
-0x7324 032626 copy contr ,contw 
-:      032627 pht_loop:
-0x7325 032628 ifetch 1 ,contr 
-0x7326 032629 iforce rega 
-0x7327 032630 ifetch 1 ,contr 
-0x7328 032631 iforce regb 
-0x7329 032632 lshift rega ,pdata 
-0x732a 032633 iadd regb ,pdata 
-0x732b 032634 istore 1 ,contw 
-0x732c 032635 deposit rega 
-0x732d 032636 iadd regb ,pdata 
-0x732e 032637 istore 1 ,contw 
-0x732f 032638 loop pht_loop 
-0x7330 032639 rtn 
-:      032642 permute:
-0x7331 032643 setarg 0x8ae42c 
-0x7332 032644 iforce temp 
-0x7333 032645 force 7 ,loopcnt 
-0x7334 032646 call permute_exchange 
-0x7335 032647 setarg 0xd751b 
-0x7336 032648 iforce temp 
-0x7337 032649 force 5 ,loopcnt 
-0x7338 032650 call permute_exchange 
-0x7339 032651 fetch 1 ,mem_input_store + 15 
-0x733a 032652 iforce rega 
-0x733b 032653 fetch 1 ,mem_input_store + 3 
-0x733c 032654 store 1 ,mem_input_store + 15 
-0x733d 032655 deposit rega 
-0x733e 032656 store 1 ,mem_input_store + 3 
-0x733f 032657 rtn 
-:      032659 permute_exchange:
-0x7340 032660 and temp ,0xf ,regb 
-:      032661 permute_loop:
-0x7341 032662 and temp ,0xf ,pdata 
-0x7342 032663 arg mem_input_store ,contw 
-0x7343 032664 iadd contw ,contw 
-0x7344 032665 ifetch 1 ,contw 
-0x7345 032666 iforce regc 
-0x7346 032667 deposit rega 
-0x7347 032668 istore 1 ,contw 
-0x7348 032669 copy regc ,rega 
-0x7349 032670 rshift4 temp ,temp 
-0x734a 032671 loop permute_loop 
-0x734b 032672 setarg mem_input_store 
-0x734c 032673 iadd regb ,contw 
-0x734d 032674 deposit rega 
-0x734e 032675 istore 1 ,contw 
-0x734f 032676 rtn 
-:      032678 add16:
-0x7350 032679 enable user 
-0x7351 032680 branch xor_add16 
-:      032682 xor16:
-0x7352 032683 disable user 
-:      032684 xor_add16:
-0x7353 032685 force 16 ,loopcnt 
-:      032686 xoradd_loop:
-0x7354 032687 ifetcht 1 ,rega 
-0x7355 032688 ifetch 1 ,regb 
-0x7356 032689 branch xoradd_add ,user 
-0x7357 032690 ixor temp ,pdata 
-0x7358 032691 branch xoradd_store 
-:      032692 xoradd_add:
-0x7359 032693 iadd temp ,pdata 
-:      032694 xoradd_store:
-0x735a 032695 istore 1 ,contw 
-0x735b 032696 increase 1 ,rega 
-0x735c 032697 increase 1 ,regb 
-0x735d 032698 loop xoradd_loop 
-0x735e 032699 rtn 
-:      032702 function_expand:
-0x735f 032703 arg mem_y ,contw 
-0x7360 032704 ifetch 6 ,rega 
-0x7361 032705 istore 6 ,contw 
-0x7362 032706 branch expand_12 ,user 
-0x7363 032707 ifetch 6 ,rega 
-0x7364 032708 branch expand_cont 
-:      032709 expand_12:
-0x7365 032710 ifetch 6 ,contr 
-:      032711 expand_cont:
-0x7366 032712 istore 6 ,contw 
-0x7367 032713 ifetch 4 ,rega 
-0x7368 032714 istore 4 ,contw 
-0x7369 032715 rtn 
-:      032717 key_offset:
-0x736a 032718 arg mem_link_key ,contr 
-0x736b 032719 arg mem_x ,contw 
-0x736c 032720 arg 0 ,temp 
-0x736d 032721 setarg 0x8395a7 
-0x736e 032722 call concatenate_temp24 
-0x736f 032723 setarg 0xb3c1df 
-0x7370 032724 call concatenate_temp24 
-0x7371 032725 setarg 0xe5e9 
-0x7372 032726 call concatenate_temp16 
-0x7373 032727 copy temp ,regab 
-0x7374 032728 disable user 
-0x7375 032729 call key_addxor 
-0x7376 032730 copy regab ,temp 
-0x7377 032731 enable user 
-0x7378 032732 branch key_addxor 
-:      032734 key_addxor:
-0x7379 032735 force 8 ,loopcnt 
-:      032736 key_addxor_loop:
-0x737a 032737 ifetch 1 ,contr 
-0x737b 032738 compare 1 ,loopcnt ,1 
-0x737c 032739 branch key_high ,user 
-0x737d 032740 branch key_xor ,true 
-:      032741 key_add:
-0x737e 032742 iadd temp ,pdata 
-0x737f 032743 branch key_store 
-:      032744 key_high:
-0x7380 032745 branch key_add ,true 
-:      032746 key_xor:
-0x7381 032747 ixor temp ,pdata 
-:      032748 key_store:
-0x7382 032749 istore 1 ,contw 
-0x7383 032750 rshift8 temp ,temp 
-0x7384 032751 loop key_addxor_loop 
-0x7385 032752 rtn 
-:      032754 copy_aco:
-0x7386 032755 fetch 6 ,mem_input_store + 4 
-0x7387 032756 store 6 ,mem_aco 
-0x7388 032757 ifetch 6 ,contr 
-0x7389 032758 istore 6 ,contw 
-0x738a 032759 rtn 
-:      032761 concatenate_temp24:
-0x738b 032762 lshift8 temp ,temp 
-:      032763 concatenate_temp16:
-0x738c 032764 lshift16 temp ,temp 
-0x738d 032765 ior temp ,temp 
-0x738e 032766 rtn 
-:      032770 loop1:
-0x738f 032771 branch loop1 
-:      032775 generate_stk:
-0x7390 032776 bpatchx patch3c_0 ,mem_patch3c 
-0x7391 032777 call function_s1 
-0x7392 032778 arg mem_le_ltk ,contw 
-0x7393 032779 branch store_aes_result 
-:      032782 authenticate_rconfirm:
-0x7394 032783 arg mem_le_srand ,contw 
-0x7395 032784 branch authenticate_mconfirm ,master 
-0x7396 032785 arg mem_le_mrand ,contw 
-:      032786 authenticate_mconfirm:
-0x7397 032787 copy contr ,rega 
-0x7398 032788 call memcpy16 
-0x7399 032789 call function_c1 
-0x739a 032790 arg mem_le_rconfirm ,contr 
-0x739b 032791 branch compare_res 
-:      032793 generate_confirm:
-0x739c 032794 arg mem_le_mrand ,rega 
-0x739d 032795 branch generate_mrand ,master 
-0x739e 032796 arg mem_le_srand ,rega 
-:      032797 generate_mrand:
-0x739f 032798 copy rega ,contw 
-0x73a0 032799 call generate_random 
-0x73a1 032800 branch function_c1 
-:      032802 generate_sk:
-0x73a2 032803 arg mem_le_skdm ,contr 
-0x73a3 032804 call load_data128 
-0x73a4 032805 arg mem_le_ltk ,contr 
-0x73a5 032806 call load_regext 
-0x73a6 032807 force 0x38 ,aes_ctrl 
-0x73a7 032808 force 0x0 ,aes_ctrl 
-0x73a8 032809 call wait_aes 
-0x73a9 032810 arg mem_le_sk ,contw 
-0x73aa 032811 branch store_aes_result 
-:      032814 first_block_counter:
-0x73ab 032815 force 0x49 ,pdata 
-0x73ac 032816 branch first_block 
-:      032817 first_block_data:
-0x73ad 032818 force 1 ,pdata 
-:      032819 first_block:
-0x73ae 032820 force regidx_data ,regext_index 
-0x73af 032821 lshift8 temp ,regext 
-0x73b0 032822 ior regext ,regext 
-0x73b1 032823 increase 1 ,regext_index 
-0x73b2 032824 rshift8 temp ,regext 
-0x73b3 032825 rshift16 regext ,regext 
-0x73b4 032826 fetch 2 ,mem_le_ivm 
-0x73b5 032827 lshift16 ,pdata ,pdata 
-0x73b6 032828 ior regext ,regext 
-0x73b7 032829 increase 1 ,regext_index 
-0x73b8 032830 ifetch 4 ,contr 
-0x73b9 032831 iforce regext 
-0x73ba 032832 increase 1 ,regext_index 
-0x73bb 032833 ifetch 2 ,contr 
-0x73bc 032834 byteswap rega ,regext 
-0x73bd 032835 lshift16 regext ,regext 
-0x73be 032836 ior regext ,regext 
-0x73bf 032837 increase 1 ,regext_index 
-0x73c0 032838 rtn 
-:      032842 generate_mic:
-0x73c1 032843 add regc ,1 ,contr 
-0x73c2 032844 ifetch 1 ,contr 
-0x73c3 032845 iforce rega 
-0x73c4 032846 call first_block_counter 
-0x73c5 032847 call do_aes_ocb 
-0x73c6 032849 force regidx_data ,regext_index 
-0x73c7 032850 ifetch 1 ,regc 
-0x73c8 032851 and_into 0x3 ,pdata 
-0x73c9 032852 lshift16 pdata ,regext 
-0x73ca 032853 set1 8 ,regext 
-0x73cb 032854 call clear_hidata 
-0x73cc 032855 call do_aes_cbc 
-0x73cd 032857 copy rega ,loopcnt 
-0x73ce 032858 add regc ,2 ,contr 
-0x73cf 032859 call padding_data 
-:      032860 generate_mic_loop:
-0x73d0 032861 call aes_load_data 
-0x73d1 032862 call do_aes_cbc 
-0x73d2 032863 deposit loopcnt 
-0x73d3 032864 branch generate_mic_end ,blank 
-0x73d4 032865 branch generate_mic_loop 
-:      032866 generate_mic_end:
-0x73d5 032867 force regidx_result ,regext_index 
-0x73d6 032868 deposit regext 
-0x73d7 032869 store 4 ,mem_le_mic 
-0x73d8 032870 rtn 
-:      032872 aes_crypt_data:
-0x73d9 032873 increase 1 ,rega 
-0x73da 032874 call first_block_data 
-0x73db 032875 copy regc ,contr 
-0x73dc 032876 call aes_load_xor 
-0x73dd 032877 call do_aes_ctr 
-0x73de 032878 call store_enc_data 
-0x73df 032879 increase 16 ,regc 
-0x73e0 032880 increase -16 ,regb 
-0x73e1 032881 branch aes_crypt_data ,positive 
-0x73e2 032882 rtn 
-:      032884 le_encrypt:
-0x73e3 032885 bpatchx patch3c_1 ,mem_patch3c 
-0x73e4 032886 arg mem_le_txheader ,regc 
-0x73e5 032887 fetcht 5 ,mem_le_pcnt_tx 
-0x73e6 032888 call generate_mic 
-0x73e7 032889 force regidx_xor ,regext_index 
-0x73e8 032890 iforce regext 
-0x73e9 032891 force 0 ,rega 
-0x73ea 032892 call first_block_data 
-0x73eb 032893 call do_aes_ctr 
-0x73ec 032894 arg mem_le_txpayload ,regc 
-0x73ed 032895 fetch 1 ,mem_le_txlen 
-0x73ee 032896 add pdata ,-1 ,regb 
-0x73ef 032897 iadd regc ,contw 
-0x73f0 032898 force regidx_result ,regext_index 
-0x73f1 032899 deposit regext 
-0x73f2 032900 istore 4 ,contw 
-0x73f3 032901 call aes_crypt_data 
-0x73f4 032902 fetch 1 ,mem_le_txlen 
-0x73f5 032903 increase 4 ,pdata 
-0x73f6 032904 store 1 ,mem_le_txlen 
-0x73f7 032905 fetcht 5 ,mem_le_pcnt_tx 
-0x73f8 032906 increase 1 ,temp 
-0x73f9 032907 storet 5 ,mem_le_pcnt_tx 
-0x73fa 032908 rtn 
-:      032910 le_decrypt:
-0x73fb 032911 bpatchx patch3c_2 ,mem_patch3c 
-0x73fc 032912 fetch 1 ,mem_le_rxbuf + 1 
-0x73fd 032913 sub pdata ,20 ,null 
-0x73fe 032914 branch le_dec_cont ,positive 
-:      032915 le_dec_cont:
-0x73ff 032916 arg mem_le_rxbuf + 2 ,regc 
-0x7400 032917 add pdata ,-1 ,regb 
-0x7401 032918 increase -4 ,pdata 
-0x7402 032919 store 1 ,mem_le_rxbuf + 1 
-0x7403 032920 iadd regc ,contr 
-0x7404 032921 ifetch 4 ,contr 
-0x7405 032922 force regidx_xor ,regext_index 
-0x7406 032923 iforce regext 
-0x7407 032924 force 0 ,rega 
-0x7408 032925 fetcht 5 ,mem_le_pcnt_rx 
-0x7409 032926 call first_block_data 
-0x740a 032927 call do_aes_ctr 
-0x740b 032928 force regidx_result ,regext_index 
-0x740c 032929 deposit regext 
-0x740d 032930 store 4 ,mem_le_peer_mic 
-0x740e 032931 call aes_crypt_data 
-0x740f 032932 arg mem_le_rxbuf ,regc 
-0x7410 032933 call generate_mic 
-0x7411 032934 fetcht 4 ,mem_le_peer_mic 
-0x7412 032935 isub temp ,pdata 
-0x7413 032936 nrtn blank 
-0x7414 032937 fetch 4 ,mem_le_last_mic 
-0x7415 032938 isub temp ,pdata 
-0x7416 032939 rtn blank 
-0x7417 032940 storet 4 ,mem_le_last_mic 
-0x7418 032941 fetch 5 ,mem_le_pcnt_rx 
-0x7419 032942 increase 1 ,pdata 
-0x741a 032943 store 5 ,mem_le_pcnt_rx 
-0x741b 032944 force 0 ,pdata 
-0x741c 032945 rtn 
-:      032947 wait_aes:
-0x741d 032948 nbranch wait_aes ,aes_ready 
-0x741e 032949 rtn 
-:      032951 do_aes_ocb:
-0x741f 032952 force 0x30 ,aes_ctrl 
-0x7420 032953 force 0x0 ,aes_ctrl 
-0x7421 032954 branch wait_aes 
-:      032956 do_aes_cbc:
-0x7422 032957 force 0x32 ,aes_ctrl 
-0x7423 032958 force 0x2 ,aes_ctrl 
-0x7424 032959 branch wait_aes 
-:      032961 do_aes_ctr:
-0x7425 032962 force 0x34 ,aes_ctrl 
-0x7426 032963 force 0x4 ,aes_ctrl 
-0x7427 032964 branch wait_aes 
-:      032967 aes_init:
-0x7428 032968 force 1 ,aes_ctrl 
-0x7429 032969 force 0 ,aes_ctrl 
-0x742a 032970 rtn 
-:      032971 function_s1:
-0x742b 032972 force regidx_data ,regext_index 
-0x742c 032973 fetch 4 ,mem_le_mrand 
-0x742d 032974 iforce regext 
-0x742e 032975 increase 1 ,regext_index 
-0x742f 032976 ifetch 4 ,contr 
-0x7430 032977 iforce regext 
-0x7431 032978 increase 1 ,regext_index 
-0x7432 032979 fetch 4 ,mem_le_srand 
-0x7433 032980 iforce regext 
-0x7434 032981 increase 1 ,regext_index 
-0x7435 032982 ifetch 4 ,contr 
-0x7436 032983 iforce regext 
-0x7437 032984 increase 1 ,regext_index 
-0x7438 032985 call aes_clear 
-0x7439 032986 increase -4 ,regext_index 
-0x743a 032987 fetch 4 ,mem_le_tk 
-0x743b 032988 copy pdata ,regext 
-0x743c 032989 increase 4 ,regext_index 
-0x743d 032990 force 0x38 ,aes_ctrl 
-0x743e 032991 force 0x8 ,aes_ctrl 
-0x743f 032992 branch wait_aes 
-:      032995 function_c1:
-0x7440 032996 bpatchx patch3c_3 ,mem_patch3c 
-0x7441 032997 fetch 6 ,mem_le_lap 
-0x7442 032998 fetcht 6 ,mem_le_plap 
-0x7443 032999 branch function_c1_master ,master 
-0x7444 033000 fetch 6 ,mem_le_plap 
-0x7445 033001 fetcht 6 ,mem_le_lap 
-:      033002 function_c1_master:
-0x7446 033003 force regidx_xor ,regext_index 
-0x7447 033004 copy temp ,regext 
-0x7448 033005 increase 1 ,regext_index 
-0x7449 033006 rshift32 temp ,regext 
-0x744a 033007 lshift16 pdata ,pdata 
-0x744b 033008 ior regext ,regext 
-0x744c 033009 increase 1 ,regext_index 
-0x744d 033010 rshift32 pdata ,regext 
-0x744e 033011 increase 1 ,regext_index 
-0x744f 033012 force 0 ,regext 
-0x7450 033013 force 0 ,pdata 
-0x7451 033014 fetch 1 ,mem_le_conn_peer_addr_type 
-0x7452 033015 fetcht 1 ,mem_le_adv_own_addr_type 
-0x7453 033016 nbranch function_c1_irat ,master 
-0x7454 033018 fetch 1 ,mem_le_conn_own_addr_type 
-0x7455 033019 fetcht 1 ,mem_le_conn_peer_addr_type 
-:      033020 function_c1_irat:
-0x7456 033021 store 1 ,mem_le_iat 
-0x7457 033022 storet 1 ,mem_le_rat 
-0x7458 033023 force regidx_data ,regext_index 
-0x7459 033024 arg mem_le_iat ,regb 
-0x745a 033025 force 4 ,loopcnt 
-:      033026 function_c1_loop1:
-0x745b 033027 ifetch 4 ,rega 
-0x745c 033028 ifetcht 4 ,regb 
-0x745d 033029 ixor temp ,regext 
-0x745e 033030 increase 1 ,regext_index 
-0x745f 033031 increase 4 ,rega 
-0x7460 033032 increase 4 ,regb 
-0x7461 033033 loop function_c1_loop1 
-0x7462 033034 call aes_clear 
-0x7463 033035 increase -4 ,regext_index 
-0x7464 033036 fetch 4 ,mem_le_tk 
-0x7465 033037 copy pdata ,regext 
-0x7466 033038 increase 4 ,regext_index 
-0x7467 033039 force 0x38 ,aes_ctrl 
-0x7468 033040 force 0xc ,aes_ctrl 
-0x7469 033041 call wait_aes 
-0x746a 033043 call aes_clear_data 
-0x746b 033044 force 0x3a ,aes_ctrl 
-0x746c 033045 force 0x8 ,aes_ctrl 
-0x746d 033046 branch wait_aes 
-:      033048 padding_data:
-0x746e 033049 compare 0 ,loopcnt ,3 
-0x746f 033050 rtn true 
-0x7470 033051 deposit contr 
-0x7471 033052 iadd loopcnt ,contw 
-0x7472 033053 force 0 ,pdata 
-:      033054 padding_loop:
-0x7473 033055 istore 1 ,contw 
-0x7474 033056 increase 1 ,loopcnt 
-0x7475 033057 compare 0 ,loopcnt ,3 
-0x7476 033058 rtn true 
-0x7477 033059 branch padding_loop 
-:      033061 aes_load_data:
-0x7478 033062 force regidx_data ,regext_index 
-:      033063 load_data_loop:
-0x7479 033064 deposit loopcnt 
-0x747a 033065 branch load_data_padding ,blank 
-0x747b 033066 ifetch 4 ,contr 
-0x747c 033067 increase -4 ,loopcnt 
-:      033068 load_data_padding:
-0x747d 033069 iforce regext 
-0x747e 033070 increase 1 ,regext_index 
-0x747f 033071 compare regidx_key ,regext_index ,0xf 
-0x7480 033072 rtn true 
-0x7481 033073 branch load_data_loop 
-:      033075 aes_load_xor:
-0x7482 033076 force regidx_xor ,regext_index 
-0x7483 033077 branch load_regext 
-:      033078 load_key:
-0x7484 033079 force regidx_key ,regext_index 
-0x7485 033080 branch load_regext 
-:      033081 load_data128:
-0x7486 033082 force regidx_data ,regext_index 
-:      033083 load_regext:
-0x7487 033084 force 4 ,loopcnt 
-:      033085 load_regext_loop:
-0x7488 033086 ifetch 4 ,contr 
-0x7489 033087 iforce regext 
-0x748a 033088 increase 1 ,regext_index 
-0x748b 033089 loop load_regext_loop 
-0x748c 033090 rtn 
-:      033092 load_sk:
-0x748d 033093 arg mem_le_sk ,contr 
-0x748e 033094 branch load_key 
-:      033096 clear_hidata:
-0x748f 033097 force 4 ,loopcnt 
-0x7490 033098 branch clear_data_rest 
-:      033100 aes_clear_data:
-0x7491 033101 force regidx_data ,regext_index 
-:      033102 aes_clear:
-0x7492 033103 force 4 ,loopcnt 
-:      033104 clear_loop:
-0x7493 033105 force 0 ,regext 
-:      033106 clear_data_rest:
-0x7494 033107 increase 1 ,regext_index 
-0x7495 033108 loop clear_loop 
-0x7496 033109 rtn 
-:      033111 store_aes_result:
-0x7497 033112 force regidx_result ,regext_index 
-0x7498 033113 force 4 ,loopcnt 
-:      033114 send_aes_result_loop:
-0x7499 033115 deposit regext 
-0x749a 033116 istore 4 ,contw 
-0x749b 033117 increase 1 ,regext_index 
-0x749c 033118 loop send_aes_result_loop 
-0x749d 033119 rtn 
-:      033121 store_enc_data:
-0x749e 033122 force regidx_result ,regext_index 
-0x749f 033123 copy regc ,contw 
-0x74a0 033124 add regb ,1 ,loopcnt 
-0x74a1 033125 sub loopcnt ,15 ,null 
-0x74a2 033126 branch store_enc_loop ,positive 
-0x74a3 033127 force 16 ,loopcnt 
-:      033128 store_enc_loop:
-0x74a4 033129 deposit regext 
-0x74a5 033130 sub loopcnt ,3 ,null 
-0x74a6 033131 branch store_enc_byte ,positive 
-0x74a7 033132 istore 4 ,contw 
-0x74a8 033133 increase -4 ,loopcnt 
-0x74a9 033134 rtn zero 
-0x74aa 033135 increase 1 ,regext_index 
-0x74ab 033136 branch store_enc_loop 
-:      033137 store_enc_byte:
-0x74ac 033138 istore 1 ,contw 
-0x74ad 033139 rshift8 pdata ,pdata 
-0x74ae 033140 loop store_enc_byte 
-0x74af 033141 rtn 
-:      033144 compare_res:
-0x74b0 033145 force regidx_result ,regext_index 
-0x74b1 033146 force 4 ,loopcnt 
-:      033147 compare_res_loop:
-0x74b2 033148 ifetch 4 ,contr 
-0x74b3 033149 isub regext ,null 
-0x74b4 033150 nrtn zero 
-0x74b5 033151 increase 1 ,regext_index 
-0x74b6 033152 loop compare_res_loop 
-0x74b7 033153 force 0 ,null 
-0x74b8 033154 rtn 
-:      033156 enable_authrom:
-0x74b9 033157 hfetch 1 ,core_clkoff 
-0x74ba 033158 set0 clock_off_auth_rom ,pdata 
-0x74bb 033159 hstore 1 ,core_clkoff 
-0x74bc 033160 rtn 
-:      033162 disable_authrom:
-0x74bd 033163 hfetch 1 ,core_clkoff 
-0x74be 033164 set1 clock_off_auth_rom ,pdata 
-0x74bf 033165 hstore 1 ,core_clkoff 
-0x74c0 033166 rtn 
-:      033168 init_memp:
-0x74c1 033169 arg mem_p ,contw 
-0x74c2 033170 setsect 0 ,0x3ffff 
-0x74c3 033171 setsect 1 ,0x3ffff 
-0x74c4 033172 setsect 2 ,0x3ffff 
-0x74c5 033173 setsect 3 ,0x3fbff 
-0x74c6 033174 istore 9 ,contw 
-0x74c7 033175 setsect 0 ,0x3ffff 
-0x74c8 033176 setsect 1 ,0x3ffff 
-0x74c9 033177 setsect 2 ,0x3ffff 
-0x74ca 033178 setsect 3 ,0x3ffff 
-0x74cb 033179 istore 9 ,contw 
-0x74cc 033180 setsect 0 ,0x3ffff 
-0x74cd 033181 setsect 1 ,0x3ffff 
-0x74ce 033182 setsect 2 ,0x3cfff 
-0x74cf 033183 setsect 3 ,0x3ffff 
-0x74d0 033184 istore 9 ,contw 
-0x74d1 033185 setsect 0 ,0x3ffff 
-0x74d2 033186 setsect 1 ,0x3ffff 
-0x74d3 033187 setsect 2 ,0x3ffef 
-0x74d4 033188 setsect 3 ,0x3ffff 
-0x74d5 033189 istore 9 ,contw 
-0x74d6 033190 setsect 0 ,0x3ffff 
-0x74d7 033191 setsect 1 ,0x3ffff 
-0x74d8 033192 setsect 2 ,0x3ffff 
-0x74d9 033193 setsect 3 ,0x3ffff 
-0x74da 033194 istore 9 ,contw 
-0x74db 033195 setsect 0 ,0x3ffff 
-0x74dc 033196 setsect 1 ,0x26c7f 
-0x74dd 033197 setsect 2 ,0x146b 
-0x74de 033198 setsect 3 ,0x37bb3 
-0x74df 033199 istore 9 ,contw 
-0x74e0 033200 setsect 0 ,0x1feb8 
-0x74e1 033201 setsect 1 ,0x10c12 
-0x74e2 033202 setsect 2 ,0x2b722 
-0x74e3 033203 setsect 3 ,0x29fa6 
-0x74e4 033204 istore 9 ,contw 
-0x74e5 033205 setsect 0 ,0xe70f 
-0x74e6 033206 setsect 1 ,0x16720 
-0x74e7 033207 setsect 2 ,0x519e 
-0x74e8 033208 setsect 3 ,0x19084 
-0x74e9 033209 istore 9 ,contw 
-0x74ea 033210 setsect 0 ,0x31012 
-0x74eb 033211 setsect 1 ,0x360bf 
-0x74ec 033212 setsect 2 ,0x3f0af 
-0x74ed 033213 setsect 3 ,0x3d3 
-0x74ee 033214 istore 9 ,contw 
-0x74ef 033215 setsect 0 ,0x3a188 
-0x74f0 033216 setsect 1 ,0x3ad0 
-0x74f1 033217 setsect 2 ,0x3cbf2 
-0x74f2 033218 setsect 3 ,0x243d9 
-0x74f3 033219 istore 9 ,contw 
-0x74f4 033220 setsect 0 ,0x2b030 
-0x74f5 033221 setsect 1 ,0x36a03 
-0x74f6 033222 setsect 2 ,0x11188 
-0x74f7 033223 setsect 3 ,0x1e520 
-0x74f8 033224 istore 9 ,contw 
-0x74f9 033225 setsect 0 ,0x3a11e 
-0x74fa 033226 setsect 1 ,0xfe5d 
-0x74fb 033227 setsect 2 ,0xdd57 
-0x74fc 033228 setsect 3 ,0x1ac93 
-0x74fd 033229 istore 9 ,contw 
-0x74fe 033230 setsect 0 ,0x11ed 
-0x74ff 033231 setsect 1 ,0x218c4 
-0x7500 033232 setsect 2 ,0x8da7 
-0x7501 033233 setsect 3 ,0x257ff 
-0x7502 033234 istore 9 ,contw 
-0x7503 033235 setsect 0 ,0x3192b 
-0x7504 033236 setsect 1 ,0x34641 
-0x7505 033237 setsect 2 ,0x1be0c 
-0x7506 033238 setsect 3 ,0x366ad 
-0x7507 033239 istore 9 ,contw 
-0x7508 033240 setsect 0 ,0x1f83 
-0x7509 033241 setsect 1 ,0x15a23 
-0x750a 033242 setsect 2 ,0x3f9b0 
-0x750b 033243 setsect 3 ,0x3949 
-0x750c 033244 istore 9 ,contw 
-0x750d 033245 setsect 0 ,0x13a51 
-0x750e 033246 setsect 1 ,0x153fd 
-0x750f 033247 setsect 2 ,0x3372a 
-0x7510 033248 setsect 3 ,0xf1bb 
-0x7511 033249 istore 9 ,contw 
-0x7512 033250 setsect 0 ,0x3ae85 
-0x7513 033251 setsect 1 ,0x1eed9 
-0x7514 033252 setsect 2 ,0x9e66 
-0x7515 033253 setsect 3 ,0x1a8 
-0x7516 033254 istore 8 ,contw 
-0x7517 033255 rtn 
-:      033259 init_memp_256:
-0x7518 033260 arg mem_p_256 ,contw 
-0x7519 033261 setsect 0 ,0x3ffff 
-0x751a 033262 setsect 1 ,0x3ffff 
-0x751b 033263 setsect 2 ,0x3ffff 
-0x751c 033264 setsect 3 ,0x3ffff 
-0x751d 033265 istore 9 ,contw 
-0x751e 033266 setsect 0 ,0x3ffff 
-0x751f 033267 setsect 1 ,0x3f 
-0x7520 033268 setsect 2 ,0x0 
-0x7521 033269 setsect 3 ,0x0 
-0x7522 033270 istore 9 ,contw 
-0x7523 033271 setsect 0 ,0x0 
-0x7524 033272 setsect 1 ,0x0 
-0x7525 033273 setsect 2 ,0x1000 
-0x7526 033274 setsect 3 ,0x0 
-0x7527 033275 istore 9 ,contw 
-0x7528 033276 setsect 0 ,0x3ff00 
-0x7529 033277 setsect 1 ,0x3ffff 
-0x752a 033278 setsect 2 ,0x3ffcf 
-0x752b 033279 setsect 3 ,0x3ffff 
-0x752c 033280 istore 9 ,contw 
-0x752d 033281 setsect 0 ,0x3ffff 
-0x752e 033282 setsect 1 ,0x3ffff 
-0x752f 033283 setsect 2 ,0x3ffff 
-0x7530 033284 setsect 3 ,0x3ff 
-0x7531 033285 istore 9 ,contw 
-0x7532 033286 setsect 0 ,0x0 
-0x7533 033287 setsect 1 ,0x0 
-0x7534 033288 setsect 2 ,0x0 
-0x7535 033289 setsect 3 ,0x0 
-0x7536 033290 istore 9 ,contw 
-0x7537 033291 setsect 0 ,0x10000 
-0x7538 033292 setsect 1 ,0x0 
-0x7539 033293 setsect 2 ,0x3f000 
-0x753a 033294 setsect 3 ,0x3ffff 
-0x753b 033295 istore 9 ,contw 
-0x753c 033296 setsect 0 ,0x296ff 
-0x753d 033297 setsect 1 ,0x22630 
-0x753e 033298 setsect 2 ,0x3945d 
-0x753f 033299 setsect 3 ,0x3d284 
-0x7540 033300 istore 9 ,contw 
-0x7541 033301 setsect 0 ,0x333a0 
-0x7542 033302 setsect 1 ,0x4b7a 
-0x7543 033303 setsect 2 ,0x37d8 
-0x7544 033304 setsect 3 ,0x3c9dc 
-0x7545 033305 istore 9 ,contw 
-0x7546 033306 setsect 0 ,0x3a440 
-0x7547 033307 setsect 1 ,0x1b958 
-0x7548 033308 setsect 2 ,0x38bce 
-0x7549 033309 setsect 3 ,0x1091f 
-0x754a 033310 istore 9 ,contw 
-0x754b 033311 setsect 0 ,0x2e12c 
-0x754c 033312 setsect 1 ,0x1f47c 
-0x754d 033313 setsect 2 ,0x356b1 
-0x754e 033314 setsect 3 ,0x2fd47 
-0x754f 033315 istore 9 ,contw 
-0x7550 033316 setsect 0 ,0x6837 
-0x7551 033317 setsect 1 ,0x2ed90 
-0x7552 033318 setsect 2 ,0x1ecec 
-0x7553 033319 setsect 3 ,0x1acc5 
-0x7554 033320 istore 9 ,contw 
-0x7555 033321 setsect 0 ,0x23357 
-0x7556 033322 setsect 1 ,0x18af3 
-0x7557 033323 setsect 2 ,0xf9e1 
-0x7558 033324 setsect 3 ,0x129f0 
-0x7559 033325 istore 9 ,contw 
-0x755a 033326 setsect 0 ,0x2e7eb 
-0x755b 033327 setsect 1 ,0x3e6e3 
-0x755c 033328 setsect 2 ,0x3e1a7 
-0x755d 033329 setsect 3 ,0x10b8b 
-0x755e 033330 istore 9 ,contw 
-0x755f 033331 setsect 0 ,0x24fe3 
-0x7560 033332 setsect 1 ,0x20ef 
-0x7561 033333 setsect 2 ,0x1b5a6 
-0x7562 033334 setsect 3 ,0xdc2f 
-0x7563 033335 istore 9 ,contw 
-0x7564 033336 setsect 0 ,0x13860 
-0x7565 033337 setsect 1 ,0x2bd69 
-0x7566 033338 setsect 2 ,0x391a 
-0x7567 033339 setsect 3 ,0x1b222 
-0x7568 033340 istore 9 ,contw 
-0x7569 033341 rtn 
-:      033344 publickey_init:
-0x756a 033345 fetch 1 ,mem_ssp_enable 
-0x756b 033346 nbranch sp_initialize ,blank 
-0x756c 033347 branch sp_initialize_256 
-:      033349 sp_calc_sequence_256_check:
-0x756d 033350 bpatchx patch3c_4 ,mem_patch3c 
-0x756e 033351 fetch 1 ,mem_ssp_enable 
-0x756f 033352 rtn blank 
-0x7570 033353 fetch 1 ,mem_sp_local_key_invalid 
-0x7571 033354 rtnne sp_key_valid 
-0x7572 033355 fetch 1 ,mem_le_secure_connect_enable 
-0x7573 033356 rtn blank 
-0x7574 033357 fetch 1 ,mem_le_sc_local_key_invalid 
-0x7575 033358 rtneq sp_key_valid_256 
-0x7576 033359 fetch 2 ,mem_ui_state_map 
-0x7577 033360 bbit1 ui_state_bt_connected ,stop_publickey_calc_256 
-0x7578 033361 fetch 1 ,mem_le_sc_calc 
-0x7579 033362 beq sp_calc_standby ,sp_initialize_256 
-0x757a 033363 rtn 
-:      033364 stop_publickey_calc_256:
-0x757b 033365 jam sp_calc_standby ,mem_le_sc_calc 
-0x757c 033366 rtn 
-:      033369 sp_initialize:
-0x757d 033370 bpatchx patch3c_5 ,mem_patch3c 
-0x757e 033371 fetch 1 ,mem_ssp_enable 
-0x757f 033372 branch ssp_disable ,blank 
-0x7580 033373 call ssp_enable 
-0x7581 033374 call sp_clear_flags 
-0x7582 033375 branch sp_pubkey_calc 
-:      033377 sp_clear_flags:
-0x7583 033378 setarg 0 
-0x7584 033379 store 8 ,mem_sp_state_start 
-0x7585 033380 store 4 ,mem_sp_flag_start 
-0x7586 033381 store 7 ,mem_sp_iocap_remote 
-0x7587 033382 rtn 
-:      033384 sp_generate_local_key:
-0x7588 033385 jam sp_flag_commit ,mem_sp_flag 
-0x7589 033386 branch sp_generate_local_key0 
-:      033387 sp_master_generate_local_key:
-0x758a 033388 fetch 1 ,mem_sp_local_key_invalid 
-0x758b 033389 beq sp_key_valid ,sp_dhkey_calc 
-0x758c 033390 branch assert 
-:      033391 sp_generate_local_key0:
-0x758d 033392 fetch 1 ,mem_sp_local_key_invalid 
-0x758e 033393 beq sp_key_valid ,sp_start_send_pubkey 
-0x758f 033394 branch sp_pubkey_calc 
-:      033396 sp_start_send_pubkey:
-0x7590 033397 call sp_dhkey_calc 
-0x7591 033398 fetch 1 ,mem_master_sp_state 
-0x7592 033399 nrtn blank 
-0x7593 033400 jam sp_stat_key_send ,mem_sp_state 
-0x7594 033401 rtn 
-:      033404 sp_calc_check_publickey_256:
-0x7595 033405 call sp_calc_b256 
-0x7596 033406 arg mem_le_pubkey_remote_y_256 ,rega 
-0x7597 033407 arg mem_t7_256 ,contw 
-0x7598 033408 call bn_sqrmod_256 
-0x7599 033409 arg mem_le_pubkey_remote_x_256 ,rega 
-0x759a 033410 arg mem_t2_256 ,contw 
-0x759b 033411 call bn_sqrmod_256 
-0x759c 033412 arg mem_t2_256 ,rega 
-0x759d 033413 arg mem_le_pubkey_remote_x_256 ,regb 
-0x759e 033414 arg mem_t2_256 ,contw 
-0x759f 033415 call bn_mulmod_256 
-0x75a0 033416 arg mem_a_256 ,rega 
-0x75a1 033417 arg mem_le_pubkey_remote_x_256 ,regb 
-0x75a2 033418 arg mem_t3_256 ,contw 
-0x75a3 033419 call bn_mulmod_256 
-0x75a4 033420 arg mem_t3_256 ,rega 
-0x75a5 033421 arg mem_t2_256 ,regb 
-0x75a6 033422 arg mem_t2_256 ,contw 
-0x75a7 033423 call bn_addmod_256 
-0x75a8 033424 arg mem_t0_256 ,rega 
-0x75a9 033425 arg mem_t2_256 ,regb 
-0x75aa 033426 arg mem_t0_256 ,contw 
-0x75ab 033427 call bn_addmod_256 
-0x75ac 033428 arg 32 ,loopcnt 
-0x75ad 033429 arg mem_t7_256 ,rega 
-0x75ae 033430 arg mem_t0_256 ,regb 
-0x75af 033431 branch string_compare 
-:      033433 sp_calc_b256:
-0x75b0 033434 arg mem_gy_256 ,rega 
-0x75b1 033435 arg mem_t0_256 ,contw 
-0x75b2 033436 call bn_sqrmod_256 
-0x75b3 033437 arg mem_gx_256 ,rega 
-0x75b4 033438 arg mem_t2_256 ,contw 
-0x75b5 033439 call bn_sqrmod_256 
-0x75b6 033440 arg mem_t2_256 ,rega 
-0x75b7 033441 arg mem_gx_256 ,regb 
-0x75b8 033442 arg mem_t2_256 ,contw 
-0x75b9 033443 call bn_mulmod_256 
-0x75ba 033444 arg mem_a_256 ,rega 
-0x75bb 033445 arg mem_gx_256 ,regb 
-0x75bc 033446 arg mem_t3_256 ,contw 
-0x75bd 033447 call bn_mulmod_256 
-0x75be 033448 arg mem_t3_256 ,rega 
-0x75bf 033449 arg mem_t2_256 ,regb 
-0x75c0 033450 arg mem_t2_256 ,contw 
-0x75c1 033451 call bn_addmod_256 
-0x75c2 033452 arg mem_t0_256 ,rega 
-0x75c3 033453 arg mem_t2_256 ,regb 
-0x75c4 033454 arg mem_t0_256 ,contw 
-0x75c5 033455 branch bn_submod_256 
-:      033457 sp_calc_check_publickey:
-0x75c6 033458 call sp_calc_b 
-0x75c7 033459 arg mem_sp_pubkey_remote_y ,rega 
-0x75c8 033460 arg mem_t7_256 ,contw 
-0x75c9 033461 call bn_sqrmod 
-0x75ca 033462 arg mem_sp_pubkey_remote_x ,rega 
-0x75cb 033463 arg mem_t2_256 ,contw 
-0x75cc 033464 call bn_sqrmod 
-0x75cd 033465 arg mem_t2_256 ,rega 
-0x75ce 033466 arg mem_sp_pubkey_remote_x ,regb 
-0x75cf 033467 arg mem_t2_256 ,contw 
-0x75d0 033468 call bn_mulmod 
-0x75d1 033469 arg mem_a ,rega 
-0x75d2 033470 arg mem_sp_pubkey_remote_x ,regb 
-0x75d3 033471 arg mem_t3_256 ,contw 
-0x75d4 033472 call bn_mulmod 
-0x75d5 033473 arg mem_t3_256 ,rega 
-0x75d6 033474 arg mem_t2_256 ,regb 
-0x75d7 033475 arg mem_t2_256 ,contw 
-0x75d8 033476 call bn_addmod 
-0x75d9 033477 arg mem_t0_256 ,rega 
-0x75da 033478 arg mem_t2_256 ,regb 
-0x75db 033479 arg mem_t0_256 ,contw 
-0x75dc 033480 call bn_addmod 
-0x75dd 033481 arg 24 ,loopcnt 
-0x75de 033482 arg mem_t7_256 ,rega 
-0x75df 033483 arg mem_t0_256 ,regb 
-0x75e0 033484 branch string_compare 
-:      033486 sp_calc_b:
-0x75e1 033487 arg mem_gy ,rega 
-0x75e2 033488 arg mem_t0_256 ,contw 
-0x75e3 033489 call bn_sqrmod 
-0x75e4 033490 arg mem_gx ,rega 
-0x75e5 033491 arg mem_t2_256 ,contw 
-0x75e6 033492 call bn_sqrmod 
-0x75e7 033493 arg mem_t2_256 ,rega 
-0x75e8 033494 arg mem_gx ,regb 
-0x75e9 033495 arg mem_t2_256 ,contw 
-0x75ea 033496 call bn_mulmod 
-0x75eb 033497 arg mem_a ,rega 
-0x75ec 033498 arg mem_gx ,regb 
-0x75ed 033499 arg mem_t3_256 ,contw 
-0x75ee 033500 call bn_mulmod 
-0x75ef 033501 arg mem_t3_256 ,rega 
-0x75f0 033502 arg mem_t2_256 ,regb 
-0x75f1 033503 arg mem_t2_256 ,contw 
-0x75f2 033504 call bn_addmod 
-0x75f3 033505 arg mem_t0_256 ,rega 
-0x75f4 033506 arg mem_t2_256 ,regb 
-0x75f5 033507 arg mem_t0_256 ,contw 
-0x75f6 033508 branch bn_submod 
-:      033511 sp_calculate_commitment:
-0x75f7 033512 fetch 1 ,mem_sp_calc 
-0x75f8 033513 bne sp_calc_standby ,sp_calculate_commitment_wait_dhkey_calc 
-0x75f9 033514 call sp_local_random_key_generator 
-0x75fa 033515 arg mem_sp_prarm_stack ,contw 
-0x75fb 033516 setarg mem_sp_random_local_end 
-0x75fc 033517 istore 2 ,contw 
-0x75fd 033518 setarg mem_sp_pubkey_local_x_end 
-0x75fe 033519 istore 2 ,contw 
-0x75ff 033520 setarg mem_sp_pubkey_remote_x_end 
-0x7600 033521 istore 2 ,contw 
-0x7601 033522 branch sp_calculate_commitment0 
-:      033523 master_sp_calculate_commitment:
-0x7602 033524 arg mem_sp_prarm_stack ,contw 
-0x7603 033525 setarg mem_sp_random_remote_end 
-0x7604 033526 istore 2 ,contw 
-0x7605 033527 setarg mem_sp_pubkey_remote_x_end 
-0x7606 033528 istore 2 ,contw 
-0x7607 033529 setarg mem_sp_pubkey_local_x_end 
-0x7608 033530 istore 2 ,contw 
-:      033531 sp_calculate_commitment0:
-0x7609 033532 call function_f1 
-0x760a 033533 fetch 1 ,mem_master_sp_state 
-0x760b 033534 beq sp_stat_commit_calc ,master_sp_calculate_commitment0 
-0x760c 033535 jam sp_flag_commit ,mem_sp_flag 
-0x760d 033536 jam sp_stat_commit_send ,mem_sp_state 
-0x760e 033537 rtn 
-:      033538 master_sp_calculate_commitment0:
-0x760f 033539 jam sp_stat_commitment_compare ,mem_master_sp_state 
-0x7610 033540 call sp_master_generate_local_key 
-0x7611 033541 branch master_set_mem_master_sp_flag 
-:      033543 sp_local_random_key_generator:
-0x7612 033544 arg mem_sp_random_local ,contw 
-0x7613 033545 force 8 ,queue 
-0x7614 033546 branch random_generator 
-:      033548 sp_calculate_commitment_wait_dhkey_calc:
-0x7615 033549 jam sp_flag_commit ,mem_sp_flag 
-0x7616 033550 rtn 
-:      033552 sp_confirm_check:
-0x7617 033554 bpatchx patch3c_6 ,mem_patch3c 
-0x7618 033555 arg mem_addr_value ,contw 
-0x7619 033556 fetch 6 ,mem_lap 
-0x761a 033557 istore 6 ,contw 
-0x761b 033558 fetch 6 ,mem_plap 
-0x761c 033559 istore 6 ,contw 
-0x761d 033560 fetch 3 ,mem_sp_iocap_remote 
-0x761e 033561 istore 3 ,contw 
-0x761f 033563 call function_f3a 
-0x7620 033565 arg mem_sp_calc_result_high ,rega 
-0x7621 033566 arg mem_sp_check_result ,regb 
-0x7622 033567 force 4 ,queue 
-0x7623 033568 call compare4 
-0x7624 033569 nbranch sp_confirm_check_failed ,true 
-0x7625 033571 call sp_confirm_check_success 
-0x7626 033572 jam lmp_dhkey_check ,mem_lmi_opcode2 
-0x7627 033573 branch tid_set_reply 
-:      033575 sp_confirm_check_success:
-0x7628 033576 fetch 1 ,mem_master_sp_state 
-0x7629 033577 beq sp_stat_confirm_check ,sp_confirm_check_success_master 
-0x762a 033578 jam sp_stat_confirm_calc ,mem_sp_state 
-0x762b 033579 jam sp_flag_commit ,mem_sp_flag 
-0x762c 033580 jam lmp_accepted ,mem_lmo_opcode2 
-0x762d 033581 rtn 
-:      033582 sp_confirm_check_success_master:
-0x762e 033583 jam lmp_accepted ,mem_lmo_opcode2 
-0x762f 033584 jam sp_state_end ,mem_master_sp_state 
-0x7630 033585 branch master_set_mem_master_sp_flag 
-:      033588 sp_confirm_check_failed:
-0x7631 033589 fetch 1 ,mem_master_sp_state 
-0x7632 033590 beq sp_stat_confirm_check ,sp_confirm_check_failed_master 
-0x7633 033591 jam sp_stat_null ,mem_sp_state 
-0x7634 033592 jam lmp_not_accepted ,mem_lmo_opcode2 
-0x7635 033594 jam authentication_failure_error ,mem_lmo_reason2 
-0x7636 033595 rtn 
-:      033596 sp_confirm_check_failed_master:
-0x7637 033597 jam lmp_not_accepted ,mem_lmo_opcode2 
-0x7638 033598 jam sp_stat_null ,mem_master_sp_state 
-0x7639 033599 rtn 
-:      033601 sp_confirm_calc:
-0x763a 033602 fetch 1 ,mem_sp_dh_ready 
-0x763b 033603 beq sp_flag_commit ,sp_confirm_calc_ready 
-0x763c 033604 jam sp_stat_confirm_calc ,mem_master_sp_state 
-0x763d 033605 branch master_set_mem_master_sp_flag 
-:      033606 sp_confirm_calc_ready:
-0x763e 033607 arg mem_addr_value ,contw 
-0x763f 033608 fetch 6 ,mem_plap 
-0x7640 033609 istore 6 ,contw 
-0x7641 033610 fetch 6 ,mem_lap 
-0x7642 033611 istore 6 ,contw 
-0x7643 033612 fetch 3 ,mem_sp_iocap_local 
-0x7644 033613 istore 3 ,contw 
-0x7645 033615 call function_f3b 
-0x7646 033616 fetch 1 ,mem_master_sp_state 
-0x7647 033617 beq sp_stat_confirm_calc ,sp_confirm_calc_master 
-0x7648 033618 jam sp_stat_confirm_send ,mem_sp_state 
-0x7649 033619 jam sp_flag_commit ,mem_sp_flag 
-0x764a 033620 rtn 
-:      033621 sp_confirm_calc_master:
-0x764b 033622 jam sp_stat_confirm_send ,mem_master_sp_state 
-0x764c 033623 jam sp_flag_commit ,mem_master_sp_flag 
-0x764d 033624 rtn 
-:      033626 sp_master_key_prarm_push:
-0x764e 033627 arg mem_sp_prarm_stack ,contw 
-0x764f 033628 fetch 6 ,mem_plap 
-0x7650 033629 istore 6 ,contw 
-0x7651 033630 fetch 6 ,mem_lap 
-0x7652 033631 istore 6 ,contw 
-0x7653 033632 setarg mem_sp_random_local_end 
-0x7654 033633 istore 2 ,contw 
-0x7655 033634 setarg mem_sp_random_remote_end 
-0x7656 033635 istore 2 ,contw 
-0x7657 033636 branch sp_link_key_calc 
-:      033637 sp_link_key_prarm_push:
-0x7658 033638 jam sp_stat_done ,mem_sp_state 
-0x7659 033639 arg mem_sp_prarm_stack ,contw 
-0x765a 033640 fetch 6 ,mem_lap 
-0x765b 033641 istore 6 ,contw 
-0x765c 033642 fetch 6 ,mem_plap 
-0x765d 033643 istore 6 ,contw 
-0x765e 033644 setarg mem_sp_random_remote_end 
-0x765f 033645 istore 2 ,contw 
-0x7660 033646 setarg mem_sp_random_local_end 
-0x7661 033647 istore 2 ,contw 
-:      033648 sp_link_key_calc:
-0x7662 033650 arg mem_addr_value ,contw 
-0x7663 033651 fetch 6 ,mem_sp_prarm_stack 
-0x7664 033652 istore 6 ,contw 
-0x7665 033653 fetch 6 ,mem_sp_prarm_stack + 6 
-0x7666 033654 istore 6 ,contw 
-0x7667 033656 call function_f2 
-0x7668 033659 jam 1 ,mem_link_key_exists 
-0x7669 033660 arg mem_link_key ,contw 
-0x766a 033661 arg mem_sp_calc_result_high ,contr 
-0x766b 033662 call memcpy16 
-0x766c 033663 branch generate_linkkey_continue 
-:      033666 sp_pubkey_calc:
-0x766d 033667 bpatchx patch3c_7 ,mem_patch3c 
-0x766e 033668 fetch 1 ,mem_sp_local_key_invalid 
-0x766f 033669 rtnne sp_key_invalid 
-0x7670 033670 fetch 1 ,mem_sp_calc 
-0x7671 033671 rtnne sp_calc_standby 
-0x7672 033672 arg mem_sp_private_key ,contw 
-0x7673 033673 force 11 ,queue 
-0x7674 033674 call random_generator 
-0x7675 033675 random pdata 
-0x7676 033676 rshift pdata ,pdata 
-0x7677 033677 istore 2 ,contw 
-0x7678 033679 arg mem_k ,contw 
-0x7679 033680 arg mem_sp_private_key ,contr 
-0x767a 033681 call memcpy24 
-0x767b 033683 arg mem_ax ,contw 
-0x767c 033684 arg mem_gx ,contr 
-0x767d 033685 call memcpy48 
-0x767e 033687 arg mem_az ,contw 
-0x767f 033688 call bn_zero 
-0x7680 033689 jam 1 ,mem_az 
-0x7681 033691 call eckp_calc_init 
-0x7682 033692 jam sp_calc_pubkey ,mem_sp_calc 
-0x7683 033693 rtn 
-:      033695 sp_pubkey_generated:
-0x7684 033696 arg mem_sp_pubkey_local ,contw 
-0x7685 033697 arg mem_bx ,contr 
-0x7686 033698 call memcpy48 
-0x7687 033699 jam sp_key_valid ,mem_sp_local_key_invalid 
-0x7688 033700 jam sp_calc_standby ,mem_sp_calc 
-0x7689 033701 rtn 
-:      033703 sp_dhkey_calc:
-0x768a 033704 bpatchx patch3d_0 ,mem_patch3d 
-0x768b 033705 fetch 1 ,mem_sp_dhkey_invalid 
-0x768c 033706 rtnne sp_key_invalid 
-0x768d 033707 fetch 1 ,mem_sp_calc 
-0x768e 033708 rtnne sp_calc_standby 
-0x768f 033710 arg mem_k ,contw 
-0x7690 033711 arg mem_sp_private_key ,contr 
-0x7691 033712 call memcpy24 
-0x7692 033714 arg mem_ax ,contw 
-0x7693 033715 arg mem_sp_pubkey_remote ,contr 
-0x7694 033716 call memcpy48 
-0x7695 033718 arg mem_az ,contw 
-0x7696 033719 call bn_zero 
-0x7697 033720 jam 1 ,mem_az 
-0x7698 033722 call eckp_calc_init 
-0x7699 033723 jam sp_calc_dhkey ,mem_sp_calc 
-0x769a 033724 rtn 
-:      033726 sp_dhkey_generated:
-0x769b 033727 jam sp_flag_commit ,mem_sp_dh_ready 
-0x769c 033728 arg mem_sp_dhkey ,contw 
-0x769d 033729 arg mem_bx ,contr 
-0x769e 033730 call memcpy24 
-0x769f 033731 jam sp_key_valid ,mem_sp_dhkey_invalid 
-0x76a0 033732 jam sp_calc_standby ,mem_sp_calc 
-0x76a1 033733 rtn 
-:      033735 random_generator:
-0x76a2 033736 increase -1 ,queue 
-0x76a3 033737 nrtn positive 
-0x76a4 033738 random pdata 
-0x76a5 033739 istore 2 ,contw 
-0x76a6 033740 branch random_generator 
-:      033741 compare4:
-0x76a7 033742 increase -1 ,queue 
-0x76a8 033743 nbranch compare4_success ,positive 
-0x76a9 033744 ifetch 4 ,rega 
-0x76aa 033745 copy pdata ,temp 
-0x76ab 033746 ifetch 4 ,regb 
-0x76ac 033747 iflip temp ,pdata 
-0x76ad 033748 nbranch compare4_failed ,zero 
-0x76ae 033749 increase 4 ,rega 
-0x76af 033750 increase 4 ,regb 
-0x76b0 033751 branch compare4 
-:      033752 compare4_failed:
-0x76b1 033753 disable true 
-0x76b2 033754 rtn 
-:      033755 compare4_success:
-0x76b3 033756 enable true 
-0x76b4 033757 rtn 
-:      033764 simple_pairing_sequence:
-0x76b5 033765 bpatchx patch3d_1 ,mem_patch3d 
-0x76b6 033766 fetch 1 ,mem_sp_flag 
-0x76b7 033767 rtn blank 
-0x76b8 033768 call lmo_fifo_check 
-0x76b9 033769 nrtn blank 
-0x76ba 033770 jam sp_flag_standby ,mem_sp_flag 
-0x76bb 033771 fetch 1 ,mem_sp_state 
-0x76bc 033772 beq sp_stat_key_send ,sp_send_lmp_encapsulated_header 
-0x76bd 033773 beq sp_stat_commit_send ,sp_send_lmp_simple_pairing_comfirm 
-0x76be 033774 beq sp_stat_random_send ,sp_send_lmp_simple_pairing_number 
-0x76bf 033775 beq sp_stat_confirm_send ,sp_send_lmp_dhkey_check 
-0x76c0 033776 beq sp_stat_key_generate ,sp_generate_local_key 
-0x76c1 033777 beq sp_stat_commit_calc ,sp_calculate_commitment 
-0x76c2 033778 beq sp_stat_confirm_check ,sp_confirm_check 
-0x76c3 033779 beq sp_stat_confirm_calc ,sp_confirm_calc 
-0x76c4 033780 beq sp_stat_link_key_calc ,sp_link_key_prarm_push 
-0x76c5 033782 rtn 
-:      033784 master_simple_paring_sequence:
-0x76c6 033785 bpatchx patch3d_2 ,mem_patch3d 
-0x76c7 033786 fetch 1 ,mem_master_sp_flag 
-0x76c8 033787 rtn blank 
-0x76c9 033788 call lmo_fifo_check 
-0x76ca 033789 nrtn blank 
-0x76cb 033790 jam sp_flag_standby ,mem_master_sp_flag 
-0x76cc 033791 fetch 1 ,mem_master_sp_state 
-0x76cd 033792 beq sp_master_stat_start_skip ,sp_master_send_io_cap_get 
-0x76ce 033793 beq sp_master_stat_start_done ,sp_master_send_io_cap_send 
-0x76cf 033794 beq sp_stat_key_send ,sp_master_send_lmp_encapsulated_header 
-0x76d0 033795 beq sp_stat_commit_calc ,master_sp_calculate_commitment 
-0x76d1 033796 beq sp_stat_commitment_compare ,sp_master_commitment_compare 
-0x76d2 033797 beq sp_stat_random_send ,sp_master_send_lmp_simple_pairing_number 
-0x76d3 033798 beq sp_stat_confirm_calc ,sp_confirm_calc 
-0x76d4 033799 beq sp_stat_confirm_send ,master_sp_send_lmp_dhkey_check 
-0x76d5 033800 beq sp_stat_confirm_check ,sp_confirm_check 
-0x76d6 033801 beq sp_state_end ,master_sp_sm_end 
-0x76d7 033802 rtn 
-:      033804 master_set_mem_master_sp_flag:
-0x76d8 033805 jam sp_flag_commit ,mem_master_sp_flag 
-0x76d9 033806 rtn 
-:      033808 master_clear_mem_master_sp_flag:
-0x76da 033809 jam sp_flag_standby ,mem_master_sp_flag 
-0x76db 033810 rtn 
-:      033811 sp_calc_sequence:
-0x76dc 033812 bpatchx patch3d_3 ,mem_patch3d 
-0x76dd 033813 fetch 1 ,mem_ssp_enable 
-0x76de 033814 rtn blank 
-0x76df 033815 fetch 1 ,mem_sp_calc 
-0x76e0 033816 rtn blank 
-0x76e1 033817 increase 0x80 ,pdata 
-0x76e2 033818 store 1 ,mem_sp_calc 
-0x76e3 033819 rtnbit1 7 
-0x76e4 033820 fetch 1 ,mem_ec_loopc 
-0x76e5 033821 branch sp_calc_sequence_done ,blank 
-0x76e6 033822 branch eckp_calc 
-:      033824 sp_calc_sequence_done:
-0x76e7 033825 call ecunmapz 
-0x76e8 033826 fetch 1 ,mem_sp_calc 
-0x76e9 033827 beq sp_calc_pubkey ,sp_pubkey_generated 
-0x76ea 033828 beq sp_calc_dhkey ,sp_dhkey_generated 
-0x76eb 033829 rtn 
-:      033832 bn_testbit:
-0x76ec 033833 and pdata ,7 ,queue 
-0x76ed 033834 rshift3 pdata ,pdata 
-0x76ee 033835 iadd contr ,contr 
-0x76ef 033836 ifetch 1 ,contr 
-0x76f0 033837 qisolate0 pdata 
-0x76f1 033838 rtn 
-:      033841 ec_copy:
-0x76f2 033842 call memcpy24 
-0x76f3 033843 call memcpy24 
-0x76f4 033844 branch memcpy24 
-:      033847 bn_eq_zero:
-0x76f5 033848 ifetch 8 ,contr 
-0x76f6 033849 nrtn blank 
-0x76f7 033850 ifetch 8 ,contr 
-0x76f8 033851 nrtn blank 
-0x76f9 033852 ifetch 8 ,contr 
-0x76fa 033853 rtn 
-:      033858 bn_eq_0:
-0x76fb 033859 ifetch 4 ,rega 
-0x76fc 033860 iforce temp 
-0x76fd 033861 ifetch 4 ,regb 
-0x76fe 033862 isub temp ,null 
-0x76ff 033863 nrtn zero 
-0x7700 033864 increase 4 ,rega 
-0x7701 033865 increase 4 ,regb 
-0x7702 033866 loop bn_eq_0 
-0x7703 033867 rtn 
-:      033870 bn_bigeq:
-0x7704 033871 force 6 ,loopcnt 
-0x7705 033872 increase 20 ,rega 
-0x7706 033873 increase 20 ,regb 
-:      033874 bn_bigeq_0:
-0x7707 033875 ifetch 4 ,regb 
-0x7708 033876 iforce temp 
-0x7709 033877 ifetch 4 ,rega 
-0x770a 033878 isub temp ,pdata 
-0x770b 033879 nrtn positive 
-0x770c 033880 nrtn blank 
-0x770d 033881 increase -4 ,rega 
-0x770e 033882 increase -4 ,regb 
-0x770f 033883 loop bn_bigeq_0 
-0x7710 033884 rtn 
-:      033886 bn_add:
-0x7711 033887 force 6 ,loopcnt 
-0x7712 033888 force 0 ,regc 
-:      033889 bn_add_0:
-0x7713 033890 ifetch 4 ,rega 
-0x7714 033891 iforce temp 
-0x7715 033892 ifetch 4 ,regb 
-0x7716 033893 iadd temp ,pdata 
-0x7717 033894 iadd regc ,pdata 
-0x7718 033895 istore 4 ,contw 
-0x7719 033896 isolate1 32 ,pdata 
-0x771a 033897 setflag true ,0 ,regc 
-0x771b 033898 increase 4 ,rega 
-0x771c 033899 increase 4 ,regb 
-0x771d 033900 loop bn_add_0 
-0x771e 033901 rtn 
-:      033903 bn_sub:
-0x771f 033904 force 6 ,loopcnt 
-0x7720 033905 force 0 ,regc 
-:      033906 bn_sub_0:
-0x7721 033907 ifetch 4 ,regb 
-0x7722 033908 iforce temp 
-0x7723 033909 ifetch 4 ,rega 
-0x7724 033910 isub temp ,pdata 
-0x7725 033911 isub regc ,pdata 
-0x7726 033912 istore 4 ,contw 
-0x7727 033913 isolate1 32 ,pdata 
-0x7728 033914 setflag true ,0 ,regc 
-0x7729 033915 increase 4 ,rega 
-0x772a 033916 increase 4 ,regb 
-0x772b 033917 loop bn_sub_0 
-0x772c 033918 rtn 
-:      033920 bn_rshift6:
-0x772d 033921 force 6 ,loopcnt 
-0x772e 033922 increase 20 ,rega 
-:      033923 bn_rshift:
-0x772f 033924 force 0 ,regc 
-:      033925 bn_rshift_0:
-0x7730 033926 ifetch 4 ,rega 
-0x7731 033927 isolate1 0 ,pdata 
-0x7732 033928 setflag true ,1 ,regc 
-0x7733 033929 rshift pdata ,pdata 
-0x7734 033930 isolate1 0 ,regc 
-0x7735 033931 setflag true ,31 ,pdata 
-0x7736 033932 istore 4 ,rega 
-0x7737 033933 increase -4 ,rega 
-0x7738 033934 rshift regc ,regc 
-0x7739 033935 loop bn_rshift_0 
-0x773a 033936 rtn 
-:      033938 bn_lshift:
-0x773b 033939 force 6 ,loopcnt 
-0x773c 033940 force 0 ,regc 
-:      033941 bn_lshift_0:
-0x773d 033942 ifetch 4 ,rega 
-0x773e 033943 isolate1 31 ,pdata 
-0x773f 033944 setflag true ,1 ,regc 
-0x7740 033945 lshift pdata ,pdata 
-0x7741 033946 isolate1 0 ,regc 
-0x7742 033947 setflag true ,0 ,pdata 
-0x7743 033948 istore 4 ,rega 
-0x7744 033949 increase 4 ,rega 
-0x7745 033950 rshift regc ,regc 
-0x7746 033951 loop bn_lshift_0 
-0x7747 033952 rtn 
-:      033954 bn_lshiftmod:
-0x7748 033955 call bn_lshift 
-:      033956 bn_lshiftmod_ismod:
-0x7749 033957 isolate1 0 ,regc 
-0x774a 033958 branch bn_lshiftmod_0 ,true 
-0x774b 033959 arg mem_p ,regb 
-0x774c 033960 copy rega ,regc 
-0x774d 033961 increase -24 ,rega 
-0x774e 033962 call bn_bigeq 
-0x774f 033963 nrtn positive 
-0x7750 033964 copy regc ,rega 
-:      033965 bn_lshiftmod_0:
-0x7751 033966 increase -24 ,rega 
-0x7752 033967 arg mem_p ,regb 
-0x7753 033968 copy rega ,contw 
-0x7754 033969 branch bn_sub 
-:      033972 bn_addmod:
-0x7755 033973 call bn_add 
-0x7756 033974 copy contw ,rega 
-0x7757 033975 branch bn_lshiftmod_ismod 
-:      033977 bn_submod:
-0x7758 033978 call bn_sub 
-0x7759 033979 isolate0 0 ,regc 
-0x775a 033980 rtn true 
-0x775b 033981 arg mem_p ,regb 
-0x775c 033982 add contw ,-24 ,rega 
-0x775d 033983 copy rega ,contw 
-0x775e 033984 branch bn_add 
-:      033987 bn_p192mod:
-0x775f 033988 copy contw ,timeup 
-0x7760 033989 copy rega ,alarm 
-0x7761 033990 arg mem_tmp2 ,regb 
-0x7762 033991 copy regb ,contw 
-0x7763 033992 add rega ,24 ,contr 
-0x7764 033993 ifetch 8 ,contr 
-0x7765 033994 istore 8 ,contw 
-0x7766 033995 istore 8 ,contw 
-0x7767 033996 force 0 ,pdata 
-0x7768 033997 istore 8 ,contw 
-0x7769 033998 copy timeup ,contw 
-0x776a 033999 call bn_addmod 
-0x776b 034000 arg mem_tmp2 ,regb 
-0x776c 034001 copy regb ,contw 
-0x776d 034002 force 0 ,pdata 
-0x776e 034003 istore 8 ,contw 
-0x776f 034004 add alarm ,32 ,contr 
-0x7770 034005 ifetch 8 ,contr 
-0x7771 034006 istore 8 ,contw 
-0x7772 034007 istore 8 ,contw 
-0x7773 034008 copy timeup ,rega 
-0x7774 034009 copy rega ,contw 
-0x7775 034010 call bn_addmod 
-0x7776 034011 arg mem_tmp2 ,regb 
-0x7777 034012 copy regb ,contw 
-0x7778 034013 add alarm ,40 ,contr 
-0x7779 034014 ifetch 8 ,contr 
-0x777a 034015 istore 8 ,contw 
-0x777b 034016 istore 8 ,contw 
-0x777c 034017 istore 8 ,contw 
-0x777d 034018 copy timeup ,rega 
-0x777e 034019 copy rega ,contw 
-0x777f 034020 branch bn_addmod 
-:      034023 bn_load:
-0x7780 034024 force 6 ,loopcnt 
-:      034025 bn_load_0:
-0x7781 034026 ifetch 4 ,contr 
-0x7782 034027 iforce regext 
-0x7783 034028 increase 1 ,regext_index 
-0x7784 034029 loop bn_load_0 
-0x7785 034030 rtn 
-:      034034 bn_mulmod:
-0x7786 034035 copy contw ,timeup 
-0x7787 034036 arg mem_tmp1 ,contw 
-0x7788 034037 call bn_zero 
-0x7789 034038 arg mem_tmp1 ,contw 
-0x778a 034039 copy rega ,contr 
-0x778b 034040 force 0 ,regext_index 
-0x778c 034041 call bn_load 
-0x778d 034042 copy regb ,contr 
-0x778e 034043 call bn_load 
-0x778f 034044 force 0 ,regb 
-:      034045 bn_mulmod_1:
-0x7790 034046 force 0 ,temp 
-0x7791 034047 force 6 ,regc 
-:      034048 bn_mulmod_0:
-0x7792 034049 ifetch 4 ,contw 
-0x7793 034050 iforce rega 
-0x7794 034051 copy regb ,regext_index 
-0x7795 034052 deposit regext 
-0x7796 034053 copy regc ,regext_index 
-0x7797 034054 imul32 regext ,pdata 
-0x7798 034055 iadd rega ,pdata 
-0x7799 034056 iadd temp ,pdata 
-0x779a 034057 istore 4 ,contw 
-0x779b 034058 rshift32 pdata ,temp 
-0x779c 034059 increase 1 ,regc 
-0x779d 034060 compare 12 ,regc ,0xff 
-0x779e 034061 nbranch bn_mulmod_0 ,true 
-0x779f 034062 deposit temp 
-0x77a0 034063 istore 4 ,contw 
-0x77a1 034064 increase -24 ,contw 
-0x77a2 034065 increase 1 ,regb 
-0x77a3 034066 compare 6 ,regb ,0xff 
-0x77a4 034067 nbranch bn_mulmod_1 ,true 
-0x77a5 034068 arg mem_tmp1 ,rega 
-0x77a6 034069 copy timeup ,contw 
-0x77a7 034070 branch bn_p192mod 
-:      034073 bn_sqrmod:
-0x77a8 034074 copy rega ,regb 
-0x77a9 034075 branch bn_mulmod 
-:      034077 bn_rshifteven:
-0x77aa 034078 copy rega ,alarm 
-:      034079 bn_rshifteven_1:
-0x77ab 034080 copy alarm ,rega 
-0x77ac 034081 ifetch 1 ,rega 
-0x77ad 034082 isolate1 0 ,pdata 
-0x77ae 034083 rtn true 
-0x77af 034084 call bn_rshift6 
-0x77b0 034085 ifetch 1 ,regb 
-0x77b1 034086 isolate0 0 ,pdata 
-0x77b2 034087 branch bn_rshifteven_0 ,true 
-0x77b3 034088 arg mem_p ,rega 
-0x77b4 034089 copy regb ,contw 
-0x77b5 034090 call bn_add 
-0x77b6 034091 ifetch 1 ,regb 
-0x77b7 034092 iadd regc ,pdata 
-0x77b8 034093 istore 1 ,regb 
-0x77b9 034094 increase -24 ,regb 
-:      034095 bn_rshifteven_0:
-0x77ba 034096 add regb ,24 ,rega 
-0x77bb 034097 force 7 ,loopcnt 
-0x77bc 034098 call bn_rshift 
-0x77bd 034099 branch bn_rshifteven_1 
-:      034102 bn_invmod:
-0x77be 034103 copy contw ,timeup 
-0x77bf 034104 arg mem_tmp0 ,contw 
-0x77c0 034105 call bn_zero 
-0x77c1 034106 force 0 ,pdata 
-0x77c2 034107 store 4 ,mem_tmp5 
-0x77c3 034108 store 4 ,mem_t2 
-0x77c4 034109 jam 1 ,mem_tmp0 
-0x77c5 034110 arg mem_tmp1 ,contw 
-0x77c6 034111 call bn_zero 
-0x77c7 034112 arg mem_p ,contr 
-0x77c8 034113 arg mem_tmp2 ,contw 
-0x77c9 034114 call memcpy24 
-0x77ca 034115 copy rega ,contr 
-0x77cb 034116 arg mem_tmp3 ,contw 
-0x77cc 034117 call memcpy24 
-:      034118 bn_invmod_2:
-0x77cd 034119 arg mem_tmp3 ,contr 
-0x77ce 034120 call bn_eq_zero 
-0x77cf 034121 branch bn_invmod_0 ,blank 
-0x77d0 034122 arg mem_tmp3 ,rega 
-0x77d1 034123 arg mem_tmp0 ,regb 
-0x77d2 034124 call bn_rshifteven 
-0x77d3 034126 arg mem_tmp2 ,rega 
-0x77d4 034127 arg mem_tmp1 ,regb 
-0x77d5 034128 call bn_rshifteven 
-0x77d6 034129 arg mem_tmp3 ,rega 
-0x77d7 034130 arg mem_tmp2 ,regb 
-0x77d8 034131 call bn_bigeq 
-0x77d9 034132 branch bn_invmod_1 ,positive 
-0x77da 034133 arg mem_tmp2 ,rega 
-0x77db 034134 arg mem_tmp3 ,regb 
-0x77dc 034135 copy rega ,contw 
-0x77dd 034136 call bn_sub 
-0x77de 034137 arg mem_tmp0 ,rega 
-0x77df 034138 arg mem_tmp1 ,regb 
-0x77e0 034139 copy regb ,contw 
-0x77e1 034140 call bn_add 
-0x77e2 034141 ifetch 1 ,rega 
-0x77e3 034142 iadd regc ,regc 
-0x77e4 034143 ifetch 1 ,regb 
-0x77e5 034144 iadd regc ,pdata 
-0x77e6 034145 istore 1 ,regb 
-0x77e7 034146 branch bn_invmod_2 
-:      034147 bn_invmod_1:
-0x77e8 034148 arg mem_tmp3 ,rega 
-0x77e9 034149 arg mem_tmp2 ,regb 
-0x77ea 034150 copy rega ,contw 
-0x77eb 034151 call bn_sub 
-0x77ec 034152 arg mem_tmp1 ,rega 
-0x77ed 034153 arg mem_tmp0 ,regb 
-0x77ee 034154 copy regb ,contw 
-0x77ef 034155 call bn_add 
-0x77f0 034156 ifetch 1 ,rega 
-0x77f1 034157 iadd regc ,regc 
-0x77f2 034158 ifetch 1 ,regb 
-0x77f3 034159 iadd regc ,pdata 
-0x77f4 034160 istore 1 ,regb 
-0x77f5 034161 branch bn_invmod_2 
-:      034162 bn_invmod_0:
-0x77f6 034163 arg mem_tmp0 ,contw 
-0x77f7 034164 call bn_zero 
-0x77f8 034165 fetch 1 ,mem_tmp5 
-0x77f9 034166 store 1 ,mem_tmp0 
-0x77fa 034167 store 1 ,mem_tmp0a 
-0x77fb 034168 arg mem_tmp0 ,rega 
-0x77fc 034169 arg mem_tmp1 ,regb 
-0x77fd 034170 copy regb ,contw 
-0x77fe 034171 call bn_addmod 
-0x77ff 034172 arg mem_p ,rega 
-0x7800 034173 arg mem_tmp1 ,regb 
-0x7801 034174 copy timeup ,contw 
-0x7802 034175 branch bn_submod 
-:      034180 ecdbl:
-0x7803 034181 arg mem_cz ,rega 
-0x7804 034182 arg mem_t2 ,contw 
-0x7805 034183 call bn_sqrmod 
-0x7806 034184 arg mem_t2 ,rega 
-0x7807 034185 arg mem_t3 ,contw 
-0x7808 034186 call bn_sqrmod 
-0x7809 034187 arg mem_a ,rega 
-0x780a 034188 arg mem_t3 ,regb 
-0x780b 034189 arg mem_t3 ,contw 
-0x780c 034190 call bn_mulmod 
-0x780d 034191 arg mem_cx ,rega 
-0x780e 034192 arg mem_t2 ,contw 
-0x780f 034193 call bn_sqrmod 
-0x7810 034194 arg mem_t2 ,contr 
-0x7811 034195 arg mem_t1 ,contw 
-0x7812 034196 call memcpy24 
-0x7813 034197 arg mem_t1 ,rega 
-0x7814 034198 call bn_lshiftmod 
-0x7815 034199 arg mem_t2 ,rega 
-0x7816 034200 arg mem_t1 ,regb 
-0x7817 034201 arg mem_t2 ,contw 
-0x7818 034202 call bn_addmod 
-0x7819 034203 arg mem_t2 ,rega 
-0x781a 034204 arg mem_t3 ,regb 
-0x781b 034205 arg mem_t2 ,contw 
-0x781c 034206 call bn_addmod 
-0x781d 034207 arg mem_cx ,contr 
-0x781e 034208 arg mem_t1 ,contw 
-0x781f 034209 call memcpy24 
-0x7820 034210 arg mem_cy ,rega 
-0x7821 034211 arg mem_t3 ,contw 
-0x7822 034212 call bn_sqrmod 
-0x7823 034213 arg mem_t1 ,rega 
-0x7824 034214 call bn_lshiftmod 
-0x7825 034215 arg mem_t1 ,rega 
-0x7826 034216 call bn_lshiftmod 
-0x7827 034217 arg mem_t1 ,rega 
-0x7828 034218 arg mem_t3 ,regb 
-0x7829 034219 arg mem_t1 ,contw 
-0x782a 034220 call bn_mulmod 
-0x782b 034221 arg mem_t3 ,rega 
-0x782c 034222 arg mem_t0 ,contw 
-0x782d 034223 call bn_sqrmod 
-0x782e 034224 arg mem_t0 ,rega 
-0x782f 034225 call bn_lshiftmod 
-0x7830 034226 arg mem_t0 ,rega 
-0x7831 034227 call bn_lshiftmod 
-0x7832 034228 arg mem_t0 ,rega 
-0x7833 034229 call bn_lshiftmod 
-0x7834 034230 arg mem_cy ,contr 
-0x7835 034231 arg mem_t3 ,contw 
-0x7836 034232 call memcpy24 
-0x7837 034233 arg mem_t3 ,rega 
-0x7838 034234 call bn_lshiftmod 
-0x7839 034235 arg mem_t3 ,rega 
-0x783a 034236 arg mem_cz ,regb 
-0x783b 034237 arg mem_cz ,contw 
-0x783c 034238 call bn_mulmod 
-0x783d 034239 arg mem_t2 ,rega 
-0x783e 034240 arg mem_t3 ,contw 
-0x783f 034241 call bn_sqrmod 
-0x7840 034242 arg mem_t3 ,rega 
-0x7841 034243 arg mem_t1 ,regb 
-0x7842 034244 arg mem_t3 ,contw 
-0x7843 034245 call bn_submod 
-0x7844 034246 arg mem_t3 ,rega 
-0x7845 034247 arg mem_t1 ,regb 
-0x7846 034248 arg mem_cx ,contw 
-0x7847 034249 call bn_submod 
-0x7848 034250 arg mem_t1 ,rega 
-0x7849 034251 arg mem_cx ,regb 
-0x784a 034252 arg mem_t3 ,contw 
-0x784b 034253 call bn_submod 
-0x784c 034254 arg mem_t3 ,rega 
-0x784d 034255 arg mem_t2 ,regb 
-0x784e 034256 arg mem_t3 ,contw 
-0x784f 034257 call bn_mulmod 
-0x7850 034258 arg mem_t3 ,rega 
-0x7851 034259 arg mem_t0 ,regb 
-0x7852 034260 arg mem_cy ,contw 
-0x7853 034261 branch bn_submod 
-:      034265 ecadd:
-0x7854 034266 arg mem_az ,rega 
-0x7855 034267 arg mem_t7 ,contw 
-0x7856 034268 call bn_sqrmod 
-0x7857 034269 arg mem_cx ,rega 
-0x7858 034270 arg mem_t7 ,regb 
-0x7859 034271 arg mem_t0 ,contw 
-0x785a 034272 call bn_mulmod 
-0x785b 034273 arg mem_az ,rega 
-0x785c 034274 arg mem_t7 ,regb 
-0x785d 034275 arg mem_t7 ,contw 
-0x785e 034276 call bn_mulmod 
-0x785f 034277 arg mem_cy ,rega 
-0x7860 034278 arg mem_t7 ,regb 
-0x7861 034279 arg mem_t1 ,contw 
-0x7862 034280 call bn_mulmod 
-0x7863 034281 arg mem_cz ,rega 
-0x7864 034282 arg mem_t7 ,contw 
-0x7865 034283 call bn_sqrmod 
-0x7866 034284 arg mem_ax ,rega 
-0x7867 034285 arg mem_t7 ,regb 
-0x7868 034286 arg mem_t2 ,contw 
-0x7869 034287 call bn_mulmod 
-0x786a 034288 arg mem_cz ,rega 
-0x786b 034289 arg mem_t7 ,regb 
-0x786c 034290 arg mem_t7 ,contw 
-0x786d 034291 call bn_mulmod 
-0x786e 034292 arg mem_ay ,rega 
-0x786f 034293 arg mem_t7 ,regb 
-0x7870 034294 arg mem_t3 ,contw 
-0x7871 034295 call bn_mulmod 
-0x7872 034296 arg mem_t0 ,rega 
-0x7873 034297 arg mem_t2 ,regb 
-0x7874 034298 arg mem_t7 ,contw 
-0x7875 034299 call bn_submod 
-0x7876 034300 arg mem_t0 ,rega 
-0x7877 034301 arg mem_t2 ,regb 
-0x7878 034302 arg mem_t0 ,contw 
-0x7879 034303 call bn_addmod 
-0x787a 034304 arg mem_t1 ,rega 
-0x787b 034305 arg mem_t3 ,regb 
-0x787c 034306 arg mem_t2 ,contw 
-0x787d 034307 call bn_submod 
-0x787e 034308 arg mem_t1 ,rega 
-0x787f 034309 arg mem_t3 ,regb 
-0x7880 034310 arg mem_t1 ,contw 
-0x7881 034311 call bn_addmod 
-0x7882 034312 arg mem_t1 ,rega 
-0x7883 034313 arg mem_t7 ,regb 
-0x7884 034314 arg mem_t1 ,contw 
-0x7885 034315 call bn_mulmod 
-0x7886 034316 arg mem_cz ,rega 
-0x7887 034317 arg mem_az ,regb 
-0x7888 034318 arg mem_t3 ,contw 
-0x7889 034319 call bn_mulmod 
-0x788a 034320 arg mem_t3 ,rega 
-0x788b 034321 arg mem_t7 ,regb 
-0x788c 034322 arg mem_cz ,contw 
-0x788d 034323 call bn_mulmod 
-0x788e 034324 arg mem_t7 ,rega 
-0x788f 034325 arg mem_t7 ,contw 
-0x7890 034326 call bn_sqrmod 
-0x7891 034327 arg mem_t7 ,rega 
-0x7892 034328 arg mem_t0 ,regb 
-0x7893 034329 arg mem_t3 ,contw 
-0x7894 034330 call bn_mulmod 
-0x7895 034331 arg mem_t7 ,rega 
-0x7896 034332 arg mem_t1 ,regb 
-0x7897 034333 arg mem_t1 ,contw 
-0x7898 034334 call bn_mulmod 
-0x7899 034335 arg mem_t2 ,rega 
-0x789a 034336 arg mem_cx ,contw 
-0x789b 034337 call bn_sqrmod 
-0x789c 034338 arg mem_cx ,rega 
-0x789d 034339 arg mem_t3 ,regb 
-0x789e 034340 arg mem_cx ,contw 
-0x789f 034341 call bn_submod 
-0x78a0 034342 arg mem_cx ,contr 
-0x78a1 034343 arg mem_t7 ,contw 
-0x78a2 034344 call memcpy24 
-0x78a3 034345 arg mem_t7 ,rega 
-0x78a4 034346 call bn_lshiftmod 
-0x78a5 034347 arg mem_t3 ,rega 
-0x78a6 034348 arg mem_t7 ,regb 
-0x78a7 034349 arg mem_t3 ,contw 
-0x78a8 034350 call bn_submod 
-0x78a9 034351 arg mem_t3 ,rega 
-0x78aa 034352 arg mem_t2 ,regb 
-0x78ab 034353 arg mem_t2 ,contw 
-0x78ac 034354 call bn_mulmod 
-0x78ad 034355 arg mem_t2 ,rega 
-0x78ae 034356 arg mem_t1 ,regb 
-0x78af 034357 arg mem_cy ,contw 
-0x78b0 034358 call bn_submod 
-0x78b1 034359 arg mem_cy ,rega 
-0x78b2 034360 arg mem_p ,regb 
-0x78b3 034361 arg mem_cy ,contw 
-0x78b4 034362 force 0 ,regc 
-0x78b5 034363 fetch 1 ,mem_cy 
-0x78b6 034364 isolate1 0 ,pdata 
-0x78b7 034365 call bn_add ,true 
-0x78b8 034366 copy regc ,alarm 
-0x78b9 034367 arg mem_cy ,rega 
-0x78ba 034368 call bn_rshift6 
-0x78bb 034369 fetch 1 ,mem_cy5 
-0x78bc 034370 isolate1 0 ,alarm 
-0x78bd 034371 setflag true ,7 ,pdata 
-0x78be 034372 store 1 ,mem_cy5 
-0x78bf 034373 rtn 
-:      034377 eckp_0:
-0x78c0 034378 fetch 1 ,mem_ec_loopc 
-0x78c1 034379 increase -1 ,pdata 
-0x78c2 034380 nrtn positive 
-0x78c3 034381 store 1 ,mem_ec_loopc 
-0x78c4 034382 fetch 1 ,mem_ec_infinite 
-0x78c5 034383 call ecdbl ,blank 
-0x78c6 034384 fetch 1 ,mem_ec_loopc 
-0x78c7 034385 arg mem_k ,contr 
-0x78c8 034386 call bn_testbit 
-0x78c9 034387 branch eckp_0 ,true 
-0x78ca 034388 fetch 1 ,mem_ec_infinite 
-0x78cb 034389 nbranch eckp_1 ,blank 
-0x78cc 034390 call ecadd 
-0x78cd 034391 branch eckp_0 
-:      034392 eckp_1:
-0x78ce 034393 jam 0 ,mem_ec_infinite 
-0x78cf 034394 arg mem_ax ,contr 
-0x78d0 034395 arg mem_cx ,contw 
-0x78d1 034396 call ec_copy 
-0x78d2 034397 branch eckp_0 
-:      034400 ecunmapz:
-0x78d3 034401 arg mem_cz ,rega 
-0x78d4 034402 arg mem_t3 ,contw 
-0x78d5 034403 call bn_invmod 
-0x78d6 034404 arg mem_t3 ,rega 
-0x78d7 034405 arg mem_t1 ,contw 
-0x78d8 034406 call bn_sqrmod 
-0x78d9 034407 arg mem_cx ,rega 
-0x78da 034408 arg mem_t1 ,regb 
-0x78db 034409 arg mem_bx ,contw 
-0x78dc 034410 call bn_mulmod 
-0x78dd 034411 arg mem_t3 ,rega 
-0x78de 034412 arg mem_t1 ,regb 
-0x78df 034413 arg mem_t2 ,contw 
-0x78e0 034414 call bn_mulmod 
-0x78e1 034415 arg mem_cy ,rega 
-0x78e2 034416 arg mem_t2 ,regb 
-0x78e3 034417 arg mem_by ,contw 
-0x78e4 034418 branch bn_mulmod 
-:      034422 sha_endian_swap2:
-0x78e5 034423 ifetch 4 ,contr 
-0x78e6 034424 force 4 ,rega 
-0x78e7 034425 increase 3 ,contw 
-:      034426 sha_endian_loop:
-0x78e8 034427 istore 1 ,contw 
-0x78e9 034428 rshift8 pdata ,pdata 
-0x78ea 034429 increase -2 ,contw 
-0x78eb 034430 increase -1 ,rega 
-0x78ec 034431 nbranch sha_endian_loop ,zero 
-0x78ed 034432 increase 5 ,contw 
-0x78ee 034433 loop sha_endian_swap2 
-0x78ef 034434 rtn 
-:      034437 sha_getw:
-0x78f0 034438 lshift2 queue ,pdata 
-0x78f1 034439 iadd timeup ,contr 
-0x78f2 034440 ifetch 4 ,contr 
-0x78f3 034441 rtn 
-:      034443 sha_r:
-0x78f4 034444 force 16 ,alarm 
-0x78f5 034445 arg memdat ,timeup 
-:      034446 sha_r_loop:
-0x78f6 034447 add alarm ,-7 ,queue 
-0x78f7 034448 call sha_getw 
-0x78f8 034449 iforce temp 
-0x78f9 034450 add alarm ,-16 ,queue 
-0x78fa 034451 call sha_getw 
-0x78fb 034452 iadd temp ,temp 
-0x78fc 034453 add alarm ,-2 ,queue 
-0x78fd 034454 call sha_getw 
-0x78fe 034455 shasx pdata ,1 ,pdata 
-0x78ff 034456 iadd temp ,temp 
-0x7900 034457 add alarm ,-15 ,queue 
-0x7901 034458 call sha_getw 
-0x7902 034459 shasx pdata ,0 ,pdata 
-0x7903 034460 iadd temp ,temp 
-0x7904 034461 lshift2 alarm ,pdata 
-0x7905 034462 iadd timeup ,contw 
-0x7906 034463 istoret 4 ,contw 
-0x7907 034464 increase 1 ,alarm 
-0x7908 034465 compare 64 ,alarm ,0xff 
-0x7909 034466 nbranch sha_r_loop ,true 
-0x790a 034467 rtn 
-:      034470 sha_init:
-0x790b 034471 arg memh0 ,contr 
-0x790c 034472 force 7 ,regext_index 
-:      034473 sha_init_0:
-0x790d 034474 ifetch 4 ,contr 
-0x790e 034475 iforce regext 
-0x790f 034476 increase -1 ,regext_index 
-0x7910 034477 branch sha_init_0 ,positive 
-0x7911 034478 rtn 
-:      034480 sha:
-0x7912 034481 bpatchx patch3d_4 ,mem_patch3d 
-0x7913 034482 call sha_r 
-0x7914 034483 arg memahbak ,contw 
-0x7915 034484 force 0 ,regext_index 
-:      034485 sha_0:
-0x7916 034486 deposit regext 
-0x7917 034487 istore 4 ,contw 
-0x7918 034488 increase 1 ,regext_index 
-0x7919 034489 compare 8 ,regext_index ,0xff 
-0x791a 034490 nbranch sha_0 ,true 
-0x791b 034491 call enable_authrom 
-0x791c 034492 arg memk ,timeup 
-0x791d 034493 arg memdat ,alarm 
-0x791e 034494 force 64 ,loopcnt 
-:      034495 sha_loop:
-0x791f 034496 ifetcht 4 ,alarm 
-0x7920 034497 ifetch 4 ,timeup 
-0x7921 034498 increase 4 ,timeup 
-0x7922 034499 increase 4 ,alarm 
-0x7923 034500 iadd temp ,pdata 
-0x7924 034501 force 7 ,regext_index 
-0x7925 034502 iadd regext ,temp 
-0x7926 034503 force 4 ,regext_index 
-0x7927 034504 shasx regext ,3 ,pdata 
-0x7928 034505 iadd temp ,temp 
-0x7929 034506 force 5 ,regext_index 
-0x792a 034507 deposit regext 
-0x792b 034508 force 6 ,regext_index 
-0x792c 034509 ixor regext ,pdata 
-0x792d 034510 force 4 ,regext_index 
-0x792e 034511 iand regext ,pdata 
-0x792f 034512 force 6 ,regext_index 
-0x7930 034513 ixor regext ,pdata 
-0x7931 034514 iadd temp ,temp 
-0x7932 034515 force 7 ,regext_index 
-0x7933 034516 copy temp ,regext 
-0x7934 034517 force 3 ,regext_index 
-0x7935 034518 deposit regext 
-0x7936 034519 iadd temp ,regext 
-0x7937 034520 force 0 ,regext_index 
-0x7938 034521 deposit regext 
-0x7939 034522 force 1 ,regext_index 
-0x793a 034523 iand regext ,temp 
-0x793b 034524 ior regext ,pdata 
-0x793c 034525 force 2 ,regext_index 
-0x793d 034526 iand regext ,pdata 
-0x793e 034527 ior temp ,temp 
-0x793f 034528 force 0 ,regext_index 
-0x7940 034529 shasx regext ,2 ,pdata 
-0x7941 034530 iadd temp ,pdata 
-0x7942 034531 force 7 ,regext_index 
-0x7943 034532 iadd regext ,regext 
-0x7944 034533 regexrot 
-0x7945 034534 loop sha_loop 
-0x7946 034535 arg memahbak ,contr 
-0x7947 034536 force 0 ,regext_index 
-:      034537 sha_1:
-0x7948 034538 ifetch 4 ,contr 
-0x7949 034539 iadd regext ,regext 
-0x794a 034540 increase 1 ,regext_index 
-0x794b 034541 compare 8 ,regext_index ,0xff 
-0x794c 034542 nbranch sha_1 ,true 
-0x794d 034543 branch disable_authrom 
-:      034546 sha_result:
-0x794e 034547 arg memresult ,contw 
-0x794f 034548 force 7 ,regext_index 
-:      034549 sha_regext_save:
-0x7950 034550 deposit regext 
-0x7951 034551 istore 4 ,contw 
-0x7952 034552 increase -1 ,regext_index 
-0x7953 034553 branch sha_regext_save ,positive 
-0x7954 034554 rtn 
-:      034556 pad_xor:
-0x7955 034558 arg memdat ,contw 
-0x7956 034559 increase -4 ,contr 
-0x7957 034560 sub loopcnt ,16 ,rega 
-:      034561 pad_xor_0:
-0x7958 034562 ifetch 4 ,contr 
-0x7959 034563 ixor temp ,pdata 
-0x795a 034564 istore 4 ,contw 
-0x795b 034565 increase -8 ,contr 
-0x795c 034566 loop pad_xor_0 
-0x795d 034567 copy rega ,loopcnt 
-0x795e 034568 deposit temp 
-:      034569 pad_xor_1:
-0x795f 034570 istore 4 ,contw 
-0x7960 034571 loop pad_xor_1 
-0x7961 034572 rtn 
-:      034574 g_noninit_number_confirm:
-0x7962 034575 call g_noninit0 
-0x7963 034576 call sha_result 
-0x7964 034577 branch g_common0 
-:      034579 g_noninit:
-0x7965 034580 call g_noninit0 
-0x7966 034581 branch g_common0 
-:      034583 g_noninit0:
-0x7967 034584 arg mem_sp_pubkey_remote_x_end ,contr 
-0x7968 034585 arg memdat ,contw 
-0x7969 034586 force 6 ,loopcnt 
-0x796a 034587 call memcpy_dword_swap 
-0x796b 034588 arg mem_sp_pubkey_local_x_end ,contr 
-0x796c 034589 force 6 ,loopcnt 
-0x796d 034590 call memcpy_dword_swap 
-0x796e 034591 arg mem_sp_random_remote_end ,contr 
-0x796f 034592 call memcpy_dword_swap4 
-0x7970 034593 call sha_init 
-0x7971 034594 call sha 
-0x7972 034595 arg mem_sp_random_local_end ,contr 
-0x7973 034596 arg memdat ,contw 
-0x7974 034597 branch g_common 
-:      034599 g_init:
-0x7975 034600 arg mem_sp_pubkey_local_x_end ,contr 
-0x7976 034601 arg memdat ,contw 
-0x7977 034602 force 6 ,loopcnt 
-0x7978 034603 call memcpy_dword_swap 
-0x7979 034604 arg mem_sp_pubkey_remote_x_end ,contr 
-0x797a 034605 force 6 ,loopcnt 
-0x797b 034606 call memcpy_dword_swap 
-0x797c 034607 arg mem_sp_random_local_end ,contr 
-0x797d 034608 call memcpy_dword_swap4 
-0x797e 034609 call sha_init 
-0x797f 034610 call sha 
-0x7980 034611 arg mem_sp_random_remote_end ,contr 
-0x7981 034612 arg memdat ,contw 
-0x7982 034613 call g_common 
-0x7983 034614 branch g_common0 
-:      034616 g_common:
-0x7984 034617 call memcpy_dword_swap4 
-0x7985 034618 setarg 0x800000 
-0x7986 034619 lshift8 pdata ,pdata 
-0x7987 034620 istore 4 ,contw 
-0x7988 034621 force 5 ,loopcnt 
-0x7989 034622 call memset0 
-0x798a 034623 setarg 640 
-0x798b 034624 istore 4 ,contw 
-0x798c 034625 branch sha 
-:      034626 g_common0:
-0x798d 034627 fetch 4 ,memresult 
-0x798e 034629 arg 1000 ,rega 
-0x798f 034630 idiv rega 
-0x7990 034631 call wait_div_end 
-0x7991 034632 remainder pdata 
-0x7992 034633 store 4 ,mem_gkey 
-0x7993 034634 quotient pdata 
-0x7994 034635 arg 1000 ,rega 
-0x7995 034636 idiv rega 
-0x7996 034637 call wait_div_end 
-0x7997 034638 remainder pdata 
-0x7998 034639 arg 1000 ,rega 
-0x7999 034640 imul32 rega ,pdata 
-0x799a 034641 fetcht 4 ,mem_gkey 
-0x799b 034642 iadd temp ,pdata 
-0x799c 034643 store 4 ,mem_gkey 
-0x799d 034644 rtn 
-:      034646 function_f1_no_key:
-0x799e 034647 jam 0 ,mem_passkey_1bit 
-0x799f 034648 branch function_f1_common 
-:      034650 function_f1:
-0x79a0 034651 fetch 1 ,mem_ssp_mode_flag 
-0x79a1 034652 bne ssp_mode_passkey_entry_flag ,function_f1_no_key 
-:      034653 function_f1_common:
-0x79a2 034654 bpatchx patch3d_5 ,mem_patch3d 
-0x79a3 034655 setarg 0x363636 
-0x79a4 034656 lshift8 pdata ,temp 
-0x79a5 034657 or_into 0x36 ,temp 
-0x79a6 034658 fetch 2 ,mem_sp_prarm_stack 
-0x79a7 034659 copy pdata ,contr 
-0x79a8 034660 force 4 ,loopcnt 
-0x79a9 034661 call pad_xor 
-0x79aa 034662 call sha_init 
-0x79ab 034663 call sha 
-0x79ac 034664 fetch 2 ,mem_sp_prarm_stack + 2 
-0x79ad 034665 copy pdata ,contr 
-0x79ae 034666 arg memdat ,contw 
-0x79af 034667 force 6 ,loopcnt 
-0x79b0 034668 call memcpy_dword_swap 
-0x79b1 034669 fetch 2 ,mem_sp_prarm_stack + 4 
-0x79b2 034670 copy pdata ,contr 
-0x79b3 034671 force 6 ,loopcnt 
-0x79b4 034672 call memcpy_dword_swap 
-0x79b5 034673 setarg 0x800000 
-0x79b6 034674 istore 3 ,contw 
-0x79b7 034676 fetch 1 ,mem_passkey_1bit 
-0x79b8 034678 istore 1 ,contw 
-0x79b9 034679 force 0 ,pdata 
-0x79ba 034680 istore 8 ,contw 
-0x79bb 034681 setarg 0x0388 
-0x79bc 034682 istore 4 ,contw 
-0x79bd 034683 call sha 
-0x79be 034684 call sha_result 
-0x79bf 034685 arg memresult ,contr 
-0x79c0 034686 arg memahsave ,contw 
-0x79c1 034687 call memcpy32 
-0x79c2 034689 setarg 0x5c5c5c 
-0x79c3 034690 lshift8 pdata ,temp 
-0x79c4 034691 or_into 0x5c ,temp 
-0x79c5 034692 fetch 2 ,mem_sp_prarm_stack 
-0x79c6 034693 copy pdata ,contr 
-0x79c7 034694 force 4 ,loopcnt 
-0x79c8 034695 call pad_xor 
-0x79c9 034696 call sha_init 
-0x79ca 034697 call sha 
-0x79cb 034698 arg memahsave_end ,contr 
-0x79cc 034699 arg memdat ,contw 
-0x79cd 034700 force 8 ,loopcnt 
-0x79ce 034701 call memcpy_dword_swap 
-0x79cf 034702 setarg 0x800000 
-0x79d0 034703 lshift8 pdata ,pdata 
-0x79d1 034704 istore 4 ,contw 
-0x79d2 034705 call bn_zero 
-0x79d3 034706 setarg 0x0300 
-0x79d4 034707 istore 4 ,contw 
-0x79d5 034708 call sha 
-0x79d6 034709 branch sha_result 
-:      034712 function_f2:
-0x79d7 034713 setarg 0x363636 
-0x79d8 034714 lshift8 pdata ,temp 
-0x79d9 034715 or_into 0x36 ,temp 
-0x79da 034716 arg mem_sp_dhkey_end ,contr 
-0x79db 034717 force 6 ,loopcnt 
-0x79dc 034718 call pad_xor 
-0x79dd 034719 call sha_init 
-0x79de 034720 call sha 
-0x79df 034721 fetch 2 ,mem_sp_prarm_stack + 12 
-0x79e0 034722 copy pdata ,contr 
-0x79e1 034723 arg memdat ,contw 
-0x79e2 034724 call memcpy_dword_swap4 
-0x79e3 034725 fetch 2 ,mem_sp_prarm_stack + 14 
-0x79e4 034726 copy pdata ,contr 
-0x79e5 034727 call memcpy_dword_swap4 
-0x79e6 034729 setarg 0x62746c 
-0x79e7 034730 lshift8 pdata ,pdata 
-0x79e8 034731 or_into 0x6b ,pdata 
-0x79e9 034732 istore 4 ,contw 
-0x79ea 034733 arg mem_addr_value_end ,contr 
-0x79eb 034734 force 3 ,loopcnt 
-0x79ec 034735 call memcpy_dword_swap 
-0x79ed 034737 setarg 0x800000 
-0x79ee 034738 lshift8 pdata ,pdata 
-0x79ef 034739 istore 4 ,contw 
-0x79f0 034740 force 0 ,pdata 
-0x79f1 034741 istore 8 ,contw 
-0x79f2 034742 setarg 0x0380 
-0x79f3 034743 istore 4 ,contw 
-0x79f4 034744 call sha 
-0x79f5 034746 call sha_result 
-0x79f6 034747 arg memresult ,contr 
-0x79f7 034748 arg memahsave ,contw 
-0x79f8 034749 call memcpy32 
-0x79f9 034751 setarg 0x5c5c5c 
-0x79fa 034752 lshift8 pdata ,temp 
-0x79fb 034753 or_into 0x5c ,temp 
-0x79fc 034754 arg mem_sp_dhkey_end ,contr 
-0x79fd 034755 force 6 ,loopcnt 
-0x79fe 034756 call pad_xor 
-0x79ff 034757 call sha_init 
-0x7a00 034758 call sha 
-0x7a01 034759 arg memahsave_end ,contr 
-0x7a02 034760 arg memdat ,contw 
-0x7a03 034761 force 8 ,loopcnt 
-0x7a04 034762 call memcpy_dword_swap 
-0x7a05 034763 setarg 0x800000 
-0x7a06 034764 lshift8 pdata ,pdata 
-0x7a07 034765 istore 4 ,contw 
-0x7a08 034766 call bn_zero 
-0x7a09 034767 setarg 0x0300 
-0x7a0a 034768 istore 4 ,contw 
-0x7a0b 034769 call sha 
-0x7a0c 034770 branch sha_result 
-:      034773 function_f3a:
-0x7a0d 034774 fetch 1 ,mem_ssp_mode_flag 
-0x7a0e 034775 bne ssp_mode_passkey_entry_flag ,function_f3a_no_pin 
-:      034776 function_f3a_common:
-0x7a0f 034777 bpatchx patch3d_6 ,mem_patch3d 
-0x7a10 034778 setarg 0x363636 
-0x7a11 034779 lshift8 pdata ,temp 
-0x7a12 034780 or_into 0x36 ,temp 
-0x7a13 034781 arg mem_sp_dhkey_end ,contr 
-0x7a14 034782 force 6 ,loopcnt 
-0x7a15 034783 call pad_xor 
-0x7a16 034784 call sha_init 
-0x7a17 034785 call sha 
-0x7a18 034786 arg mem_sp_random_remote_end ,contr 
-0x7a19 034787 arg memdat ,contw 
-0x7a1a 034788 call memcpy_dword_swap4 
-0x7a1b 034789 arg mem_sp_random_local_end ,contr 
-0x7a1c 034790 call memcpy_dword_swap4 
-0x7a1d 034791 branch function_f3_common 
-:      034793 function_f3a_no_pin:
-0x7a1e 034794 setarg 0 
-0x7a1f 034795 store 4 ,mem_pin 
-0x7a20 034796 branch function_f3a_common 
-:      034798 function_f3b_no_pin:
-0x7a21 034799 setarg 0 
-0x7a22 034800 store 4 ,mem_pin 
-0x7a23 034801 branch function_f3b_common 
-:      034804 function_f3b:
-0x7a24 034805 fetch 1 ,mem_ssp_mode_flag 
-0x7a25 034806 bne ssp_mode_passkey_entry_flag ,function_f3b_no_pin 
-:      034807 function_f3b_common:
-0x7a26 034808 setarg 0x363636 
-0x7a27 034809 lshift8 pdata ,temp 
-0x7a28 034810 or_into 0x36 ,temp 
-0x7a29 034811 arg mem_sp_dhkey_end ,contr 
-0x7a2a 034812 force 6 ,loopcnt 
-0x7a2b 034813 call pad_xor 
-0x7a2c 034814 call sha_init 
-0x7a2d 034815 call sha 
-0x7a2e 034817 arg mem_sp_random_local_end ,contr 
-0x7a2f 034818 arg memdat ,contw 
-0x7a30 034819 call memcpy_dword_swap4 
-0x7a31 034820 arg mem_sp_random_remote_end ,contr 
-0x7a32 034821 call memcpy_dword_swap4 
-:      034822 function_f3_common:
-0x7a33 034823 setarg 0x0 
-0x7a34 034824 istore 8 ,contw 
-0x7a35 034825 istore 4 ,contw 
-0x7a36 034826 fetch 4 ,mem_pin 
-0x7a37 034827 istore 4 ,contw 
-0x7a38 034829 copy contw ,temp 
-0x7a39 034830 jam 0x80 ,mem_addr_padding 
-0x7a3a 034831 copy temp ,contw 
-0x7a3b 034832 arg mem_addr_iocap_end ,contr 
-0x7a3c 034833 call memcpy_dword_swap4 
-0x7a3d 034835 call sha 
-0x7a3e 034837 arg memdat ,contw 
-0x7a3f 034838 force 7 ,loopcnt 
-0x7a40 034839 call memset0 
-0x7a41 034840 istore 4 ,contw 
-0x7a42 034841 setarg 0x03F8 
-0x7a43 034842 istore 4 ,contw 
-0x7a44 034843 call sha 
-0x7a45 034844 call sha_result 
-0x7a46 034846 arg memresult ,contr 
-0x7a47 034847 arg memahsave ,contw 
-0x7a48 034848 call memcpy32 
-0x7a49 034850 setarg 0x5c5c5c 
-0x7a4a 034851 lshift8 pdata ,temp 
-0x7a4b 034852 or_into 0x5c ,temp 
-0x7a4c 034853 arg mem_sp_dhkey_end ,contr 
-0x7a4d 034854 force 6 ,loopcnt 
-0x7a4e 034855 call pad_xor 
-0x7a4f 034856 call sha_init 
-0x7a50 034857 call sha 
-0x7a51 034858 arg memahsave_end ,contr 
-0x7a52 034859 arg memdat ,contw 
-0x7a53 034860 force 8 ,loopcnt 
-0x7a54 034861 call memcpy_dword_swap 
-0x7a55 034862 setarg 0x800000 
-0x7a56 034863 lshift8 pdata ,pdata 
-0x7a57 034864 istore 4 ,contw 
-0x7a58 034865 call bn_zero 
-0x7a59 034866 setarg 0x0300 
-0x7a5a 034867 istore 4 ,contw 
-0x7a5b 034868 call sha 
-0x7a5c 034869 branch sha_result 
-:      034876 eckp_calc_init:
-0x7a5d 034877 jam 192 ,mem_ec_loopc 
-:      034878 eckp_calc_init_1:
-0x7a5e 034879 fetch 1 ,mem_ec_loopc 
-0x7a5f 034880 rtn blank 
-0x7a60 034881 increase -1 ,pdata 
-0x7a61 034882 store 1 ,mem_ec_loopc 
-0x7a62 034883 arg mem_k ,contr 
-0x7a63 034884 call bn_testbit 
-0x7a64 034885 branch eckp_calc_init_1 ,true 
-0x7a65 034886 arg mem_ax ,contr 
-0x7a66 034887 arg mem_cx ,contw 
-0x7a67 034888 branch ec_copy 
-:      034890 eckp_calc:
-0x7a68 034891 call ecdbl 
-0x7a69 034892 fetch 1 ,mem_ec_loopc 
-0x7a6a 034893 increase -1 ,pdata 
-0x7a6b 034894 store 1 ,mem_ec_loopc 
-0x7a6c 034895 arg mem_k ,contr 
-0x7a6d 034896 call bn_testbit 
-0x7a6e 034897 rtn true 
-0x7a6f 034898 branch ecadd 
-:      034900 memcpy_dword_swap4:
-0x7a70 034901 force 4 ,loopcnt 
-:      034902 memcpy_dword_swap:
-0x7a71 034903 increase -4 ,contr 
-:      034904 memcpy_dword_swap_loop:
-0x7a72 034905 ifetch 4 ,contr 
-0x7a73 034906 istore 4 ,contw 
-0x7a74 034907 increase -8 ,contr 
-0x7a75 034908 loop memcpy_dword_swap_loop 
-0x7a76 034909 rtn 
-:      034914 sp_initialize_256:
-0x7a77 034915 bpatchx patch3d_7 ,mem_patch3d 
-0x7a78 034916 fetch 1 ,mem_le_secure_connect_enable 
-0x7a79 034917 branch le_secure_connection_disable ,blank 
-0x7a7a 034918 call le_secure_connection_enable 
-0x7a7b 034919 call sp_clear_flags 
-0x7a7c 034921 branch sp_pubkey_calc_256 
-:      034926 sp_pubkey_calc_256:
-0x7a7d 034927 fetch 1 ,mem_le_sc_local_key_invalid 
-0x7a7e 034928 rtnne sp_key_invalid 
-0x7a7f 034929 fetch 1 ,mem_le_sc_calc 
-0x7a80 034930 rtnne sp_calc_standby 
-0x7a81 034932 arg mem_le_private_key_256 ,contw 
-0x7a82 034933 force 15 ,queue 
-0x7a83 034934 call random_generator 
-0x7a84 034935 random pdata 
-0x7a85 034936 rshift pdata ,pdata 
-0x7a86 034937 istore 2 ,contw 
-0x7a87 034939 arg mem_k_256 ,contw 
-0x7a88 034940 arg mem_le_private_key_256 ,contr 
-0x7a89 034941 call memcpy32 
-0x7a8a 034943 arg mem_ax_256 ,contw 
-0x7a8b 034944 arg mem_gx_256 ,contr 
-0x7a8c 034945 call memcpy64 
-0x7a8d 034947 arg mem_az_256 ,contw 
-0x7a8e 034948 call clear_mem_256 
-0x7a8f 034949 jam 1 ,mem_az_256 
-0x7a90 034951 call eckp_calc_init_256 
-0x7a91 034952 jam sp_calc_pubkey_256 ,mem_le_sc_calc 
-0x7a92 034953 rtn 
-:      034955 sp_pubkey_generated_256:
-0x7a93 034956 arg mem_le_pubkey_local_x_256 ,contw 
-0x7a94 034957 arg mem_bx_256 ,contr 
-0x7a95 034958 call memcpy64 
-0x7a96 034959 jam sp_key_valid_256 ,mem_le_sc_local_key_invalid 
-0x7a97 034960 jam sp_calc_standby ,mem_le_sc_calc 
-0x7a98 034961 rtn 
-:      034965 sp_dhkey_calc_256:
-0x7a99 034966 fetch 1 ,mem_sp_dhkey_invalid 
-0x7a9a 034967 rtnne sp_key_invalid 
-0x7a9b 034968 fetch 1 ,mem_le_sc_calc 
-0x7a9c 034969 rtnne sp_calc_standby 
-0x7a9d 034971 arg mem_k_256 ,contw 
-0x7a9e 034972 arg mem_le_private_key_256 ,contr 
-0x7a9f 034973 call memcpy32 
-0x7aa0 034975 arg mem_ax_256 ,contw 
-0x7aa1 034976 arg mem_le_pubkey_remote_x_256 ,contr 
-0x7aa2 034977 call memcpy64 
-0x7aa3 034979 arg mem_az_256 ,contw 
-0x7aa4 034980 call clear_mem_256 
-0x7aa5 034981 jam 1 ,mem_az_256 
-0x7aa6 034983 call eckp_calc_init_256 
-0x7aa7 034984 jam sp_calc_dhkey_256 ,mem_le_sc_calc 
-0x7aa8 034985 rtn 
-:      034988 sp_dhkey_generated_256:
-0x7aa9 034990 arg mem_le_dhkey_256 ,contw 
-0x7aaa 034991 arg mem_bx_256 ,contr 
-0x7aab 034992 call memcpy32 
-0x7aac 034993 jam sp_key_valid_256 ,mem_sp_dhkey_invalid 
-0x7aad 034994 jam sp_calc_standby ,mem_le_sc_calc 
-0x7aae 034995 rtn 
-:      034999 sp_calc_sequence_256:
-0x7aaf 035000 fetch 1 ,mem_le_secure_connect_enable 
-0x7ab0 035001 rtn blank 
-0x7ab1 035002 fetch 1 ,mem_le_sc_calc 
-0x7ab2 035003 rtn blank 
-0x7ab3 035004 increase 0x80 ,pdata 
-0x7ab4 035005 store 1 ,mem_le_sc_calc 
-0x7ab5 035006 rtnbit1 7 
-0x7ab6 035007 fetch 2 ,mem_ec_loopc 
-0x7ab7 035008 branch sp_calc_sequence_done_256 ,blank 
-0x7ab8 035009 branch eckp_calc_256 
-:      035011 sp_calc_sequence_done_256:
-0x7ab9 035012 bpatchx patch3e_0 ,mem_patch3e 
-0x7aba 035013 call ecunmapz_256 
-0x7abb 035014 fetch 1 ,mem_le_sc_calc 
-0x7abc 035015 beq sp_calc_pubkey_256 ,sp_pubkey_generated_256 
-0x7abd 035016 beq sp_calc_dhkey_256 ,sp_dhkey_generated_256 
-0x7abe 035017 rtn 
-:      035020 eckp_calc_256:
-0x7abf 035021 call ecdbl_256 
-0x7ac0 035022 fetch 2 ,mem_ec_loopc 
-0x7ac1 035023 increase -1 ,pdata 
-0x7ac2 035024 store 2 ,mem_ec_loopc 
-0x7ac3 035025 arg mem_k_256 ,contr 
-0x7ac4 035026 call bn_testbit 
-0x7ac5 035027 rtn true 
-0x7ac6 035028 branch ecadd_256 
-:      035030 eckp_calc_init_256:
-0x7ac7 035031 bpatchx patch3e_1 ,mem_patch3e 
-0x7ac8 035032 setarg 256 ,pdata 
-0x7ac9 035033 store 2 ,mem_ec_loopc 
-:      035034 eckp_calc_init_256_1:
-0x7aca 035035 fetch 2 ,mem_ec_loopc 
-0x7acb 035036 rtn blank 
-0x7acc 035037 increase -1 ,pdata 
-0x7acd 035038 store 2 ,mem_ec_loopc 
-0x7ace 035039 arg mem_k_256 ,contr 
-0x7acf 035040 call bn_testbit 
-0x7ad0 035041 branch eckp_calc_init_256_1 ,true 
-0x7ad1 035042 arg mem_ax_256 ,contr 
-0x7ad2 035043 arg mem_cx_256 ,contw 
-0x7ad3 035044 branch memcpy96 
-:      035047 ecunmapz_256:
-0x7ad4 035048 arg mem_cz_256 ,rega 
-0x7ad5 035049 arg mem_t3_256 ,contw 
-0x7ad6 035050 call bn_invmod_256 
-0x7ad7 035051 arg mem_t3_256 ,rega 
-0x7ad8 035052 arg mem_t1_256 ,contw 
-0x7ad9 035053 call bn_sqrmod_256 
-0x7ada 035054 arg mem_cx_256 ,rega 
-0x7adb 035055 arg mem_t1_256 ,regb 
-0x7adc 035056 arg mem_bx_256 ,contw 
-0x7add 035057 call bn_mulmod_256 
-0x7ade 035058 arg mem_t3_256 ,rega 
-0x7adf 035059 arg mem_t1_256 ,regb 
-0x7ae0 035060 arg mem_t2_256 ,contw 
-0x7ae1 035061 call bn_mulmod_256 
-0x7ae2 035062 arg mem_cy_256 ,rega 
-0x7ae3 035063 arg mem_t2_256 ,regb 
-0x7ae4 035064 arg mem_by_256 ,contw 
-0x7ae5 035065 branch bn_mulmod_256 
-:      035067 ecdbl_256:
-0x7ae6 035068 arg mem_cz_256 ,rega 
-0x7ae7 035069 arg mem_t2_256 ,contw 
-0x7ae8 035070 call bn_sqrmod_256 
-0x7ae9 035071 arg mem_t2_256 ,rega 
-0x7aea 035072 arg mem_t3_256 ,contw 
-0x7aeb 035073 call bn_sqrmod_256 
-0x7aec 035075 arg mem_a_256 ,rega 
-0x7aed 035076 arg mem_t3_256 ,regb 
-0x7aee 035077 arg mem_t3_256 ,contw 
-0x7aef 035078 call bn_mulmod_256 
-0x7af0 035079 arg mem_cx_256 ,rega 
-0x7af1 035080 arg mem_t2_256 ,contw 
-0x7af2 035081 call bn_sqrmod_256 
-0x7af3 035083 arg mem_t2_256 ,contr 
-0x7af4 035084 arg mem_t1_256 ,contw 
-0x7af5 035085 call memcpy32 
-0x7af6 035086 arg mem_t1_256 ,rega 
-0x7af7 035087 call bn_lshiftmod_256 
-0x7af8 035088 arg mem_t2_256 ,rega 
-0x7af9 035089 arg mem_t1_256 ,regb 
-0x7afa 035090 arg mem_t2_256 ,contw 
-0x7afb 035091 call bn_addmod_256 
-0x7afc 035093 arg mem_t2_256 ,rega 
-0x7afd 035094 arg mem_t3_256 ,regb 
-0x7afe 035095 arg mem_t2_256 ,contw 
-0x7aff 035096 call bn_addmod_256 
-0x7b00 035098 arg mem_cx_256 ,contr 
-0x7b01 035099 arg mem_t1_256 ,contw 
-0x7b02 035100 call memcpy32 
-0x7b03 035101 arg mem_cy_256 ,rega 
-0x7b04 035102 arg mem_t3_256 ,contw 
-0x7b05 035103 call bn_sqrmod_256 
-0x7b06 035104 arg mem_t1_256 ,rega 
-0x7b07 035105 call bn_lshiftmod_256 
-0x7b08 035106 arg mem_t1_256 ,rega 
-0x7b09 035107 call bn_lshiftmod_256 
-0x7b0a 035108 arg mem_t1_256 ,rega 
-0x7b0b 035109 arg mem_t3_256 ,regb 
-0x7b0c 035110 arg mem_t1_256 ,contw 
-0x7b0d 035111 call bn_mulmod_256 
-0x7b0e 035112 arg mem_t3_256 ,rega 
-0x7b0f 035113 arg mem_t0_256 ,contw 
-0x7b10 035114 call bn_sqrmod_256 
-0x7b11 035115 arg mem_t0_256 ,rega 
-0x7b12 035116 call bn_lshiftmod_256 
-0x7b13 035117 arg mem_t0_256 ,rega 
-0x7b14 035118 call bn_lshiftmod_256 
-0x7b15 035119 arg mem_t0_256 ,rega 
-0x7b16 035120 call bn_lshiftmod_256 
-0x7b17 035121 arg mem_cy_256 ,contr 
-0x7b18 035122 arg mem_t3_256 ,contw 
-0x7b19 035123 call memcpy32 
-0x7b1a 035124 arg mem_t3_256 ,rega 
-0x7b1b 035125 call bn_lshiftmod_256 
-0x7b1c 035126 arg mem_t3_256 ,rega 
-0x7b1d 035127 arg mem_cz_256 ,regb 
-0x7b1e 035128 arg mem_cz_256 ,contw 
-0x7b1f 035129 call bn_mulmod_256 
-0x7b20 035132 arg mem_t2_256 ,rega 
-0x7b21 035133 arg mem_t3_256 ,contw 
-0x7b22 035134 call bn_sqrmod_256 
-0x7b23 035136 arg mem_t3_256 ,rega 
-0x7b24 035137 arg mem_t1_256 ,regb 
-0x7b25 035138 arg mem_t3_256 ,contw 
-0x7b26 035139 call bn_submod_256 
-0x7b27 035140 arg mem_t3_256 ,rega 
-0x7b28 035141 arg mem_t1_256 ,regb 
-0x7b29 035142 arg mem_cx_256 ,contw 
-0x7b2a 035143 call bn_submod_256 
-0x7b2b 035144 arg mem_t1_256 ,rega 
-0x7b2c 035145 arg mem_cx_256 ,regb 
-0x7b2d 035146 arg mem_t3_256 ,contw 
-0x7b2e 035147 call bn_submod_256 
-0x7b2f 035148 arg mem_t3_256 ,rega 
-0x7b30 035149 arg mem_t2_256 ,regb 
-0x7b31 035150 arg mem_t3_256 ,contw 
-0x7b32 035151 call bn_mulmod_256 
-0x7b33 035152 arg mem_t3_256 ,rega 
-0x7b34 035153 arg mem_t0_256 ,regb 
-0x7b35 035154 arg mem_cy_256 ,contw 
-0x7b36 035155 branch bn_submod_256 
-:      035157 ecadd_256:
-0x7b37 035159 arg mem_az_256 ,rega 
-0x7b38 035160 arg mem_t7_256 ,contw 
-0x7b39 035161 call bn_sqrmod_256 
-0x7b3a 035162 arg mem_cx_256 ,rega 
-0x7b3b 035163 arg mem_t7_256 ,regb 
-0x7b3c 035164 arg mem_t0_256 ,contw 
-0x7b3d 035165 call bn_mulmod_256 
-0x7b3e 035168 arg mem_az_256 ,rega 
-0x7b3f 035169 arg mem_t7_256 ,regb 
-0x7b40 035170 arg mem_t7_256 ,contw 
-0x7b41 035171 call bn_mulmod_256 
-0x7b42 035172 arg mem_cy_256 ,rega 
-0x7b43 035173 arg mem_t7_256 ,regb 
-0x7b44 035174 arg mem_t1_256 ,contw 
-0x7b45 035175 call bn_mulmod_256 
-0x7b46 035178 arg mem_cz_256 ,rega 
-0x7b47 035179 arg mem_t7_256 ,contw 
-0x7b48 035180 call bn_sqrmod_256 
-0x7b49 035181 arg mem_ax_256 ,rega 
-0x7b4a 035182 arg mem_t7_256 ,regb 
-0x7b4b 035183 arg mem_t2_256 ,contw 
-0x7b4c 035184 call bn_mulmod_256 
-0x7b4d 035186 arg mem_cz_256 ,rega 
-0x7b4e 035187 arg mem_t7_256 ,regb 
-0x7b4f 035188 arg mem_t7_256 ,contw 
-0x7b50 035189 call bn_mulmod_256 
-0x7b51 035190 arg mem_ay_256 ,rega 
-0x7b52 035191 arg mem_t7_256 ,regb 
-0x7b53 035192 arg mem_t3_256 ,contw 
-0x7b54 035193 call bn_mulmod_256 
-0x7b55 035198 arg mem_t0_256 ,regb 
-0x7b56 035199 arg mem_t2_256 ,rega 
-0x7b57 035200 arg mem_t7_256 ,contw 
-0x7b58 035201 call bn_submod_256 
-0x7b59 035202 arg mem_t0_256 ,rega 
-0x7b5a 035203 arg mem_t2_256 ,regb 
-0x7b5b 035204 arg mem_t0_256 ,contw 
-0x7b5c 035205 call bn_addmod_256 
-0x7b5d 035208 arg mem_t1_256 ,regb 
-0x7b5e 035209 arg mem_t3_256 ,rega 
-0x7b5f 035210 arg mem_t2_256 ,contw 
-0x7b60 035211 call bn_submod_256 
-0x7b61 035212 arg mem_t1_256 ,rega 
-0x7b62 035213 arg mem_t3_256 ,regb 
-0x7b63 035214 arg mem_t1_256 ,contw 
-0x7b64 035215 call bn_addmod_256 
-0x7b65 035216 arg mem_t1_256 ,rega 
-0x7b66 035217 arg mem_t7_256 ,regb 
-0x7b67 035218 arg mem_t1_256 ,contw 
-0x7b68 035219 call bn_mulmod_256 
-0x7b69 035220 arg mem_cz_256 ,rega 
-0x7b6a 035221 arg mem_az_256 ,regb 
-0x7b6b 035222 arg mem_t3_256 ,contw 
-0x7b6c 035223 call bn_mulmod_256 
-0x7b6d 035224 arg mem_t3_256 ,rega 
-0x7b6e 035225 arg mem_t7_256 ,regb 
-0x7b6f 035226 arg mem_cz_256 ,contw 
-0x7b70 035227 call bn_mulmod_256 
-0x7b71 035229 arg mem_t7_256 ,rega 
-0x7b72 035230 arg mem_t7_256 ,contw 
-0x7b73 035231 call bn_sqrmod_256 
-0x7b74 035232 arg mem_t7_256 ,rega 
-0x7b75 035233 arg mem_t0_256 ,regb 
-0x7b76 035234 arg mem_t3_256 ,contw 
-0x7b77 035235 call bn_mulmod_256 
-0x7b78 035236 arg mem_t7_256 ,rega 
-0x7b79 035237 arg mem_t1_256 ,regb 
-0x7b7a 035238 arg mem_t1_256 ,contw 
-0x7b7b 035239 call bn_mulmod_256 
-0x7b7c 035240 arg mem_t2_256 ,rega 
-0x7b7d 035241 arg mem_cx_256 ,contw 
-0x7b7e 035242 call bn_sqrmod_256 
-0x7b7f 035243 arg mem_cx_256 ,rega 
-0x7b80 035244 arg mem_t3_256 ,regb 
-0x7b81 035245 arg mem_cx_256 ,contw 
-0x7b82 035246 call bn_submod_256 
-0x7b83 035247 arg mem_cx_256 ,contr 
-0x7b84 035248 arg mem_t7_256 ,contw 
-0x7b85 035249 call memcpy32 
-0x7b86 035250 arg mem_t7_256 ,rega 
-0x7b87 035251 call bn_lshiftmod_256 
-0x7b88 035252 arg mem_t3_256 ,rega 
-0x7b89 035253 arg mem_t7_256 ,regb 
-0x7b8a 035254 arg mem_t3_256 ,contw 
-0x7b8b 035255 call bn_submod_256 
-0x7b8c 035256 arg mem_t3_256 ,rega 
-0x7b8d 035257 arg mem_t2_256 ,regb 
-0x7b8e 035258 arg mem_t2_256 ,contw 
-0x7b8f 035259 call bn_mulmod_256 
-0x7b90 035260 arg mem_t2_256 ,rega 
-0x7b91 035261 arg mem_t1_256 ,regb 
-0x7b92 035262 arg mem_cy_256 ,contw 
-0x7b93 035263 call bn_submod_256 
-0x7b94 035264 arg mem_cy_256 ,rega 
-0x7b95 035265 arg mem_p_256 ,regb 
-0x7b96 035266 arg mem_cy_256 ,contw 
-0x7b97 035267 force 0 ,regc 
-0x7b98 035268 fetch 1 ,mem_cy_256 
-0x7b99 035269 isolate1 0 ,pdata 
-0x7b9a 035270 call bn_add_256 ,true 
-0x7b9b 035271 copy regc ,alarm 
-0x7b9c 035272 arg mem_cy_256 ,rega 
-0x7b9d 035273 call bn_rshift_256 
-0x7b9e 035274 fetch 1 ,mem_cy5_256 
-0x7b9f 035275 isolate1 0 ,alarm 
-0x7ba0 035276 setflag true ,7 ,pdata 
-0x7ba1 035277 store 1 ,mem_cy5_256 
-0x7ba2 035278 rtn 
-:      035280 bn_invmod_256:
-0x7ba3 035281 copy contw ,timeup 
-0x7ba4 035282 arg mem_tmp0_256 ,contw 
-0x7ba5 035283 call clear_mem_256 
-0x7ba6 035284 force 0 ,pdata 
-0x7ba7 035286 store 4 ,mem_t2_256 
-0x7ba8 035287 jam 1 ,mem_tmp0_256 
-0x7ba9 035288 arg mem_tmp1_256 ,contw 
-0x7baa 035289 call clear_mem_512 
-0x7bab 035290 arg mem_p_256 ,contr 
-0x7bac 035291 arg mem_tmp2_256 ,contw 
-0x7bad 035292 call memcpy32 
-0x7bae 035293 copy rega ,contr 
-0x7baf 035294 arg mem_tmp3_256 ,contw 
-0x7bb0 035295 call memcpy32 
-:      035301 bn_invmod_256_2:
-0x7bb1 035302 arg mem_tmp3_256 ,contr 
-0x7bb2 035303 call bn_eq_zero_256 
-0x7bb3 035304 branch bn_invmod_256_0 ,blank 
-0x7bb4 035309 arg mem_tmp3_256 ,rega 
-0x7bb5 035310 arg mem_tmp0_256 ,regb 
-0x7bb6 035311 call bn_rshifteven_256 
-0x7bb7 035312 arg mem_tmp2_256 ,rega 
-0x7bb8 035313 arg mem_tmp1_256 ,regb 
-0x7bb9 035314 call bn_rshifteven_256 
-0x7bba 035316 arg mem_tmp3_256 ,rega 
-0x7bbb 035317 arg mem_tmp2_256 ,regb 
-0x7bbc 035318 call bn_bigeq_256 
-0x7bbd 035319 branch bn_invmod_256_1 ,positive 
-0x7bbe 035320 arg mem_tmp2_256 ,rega 
-0x7bbf 035321 arg mem_tmp3_256 ,regb 
-0x7bc0 035322 copy rega ,contw 
-0x7bc1 035323 call bn_sub_256 
-0x7bc2 035324 arg mem_tmp0_256 ,rega 
-0x7bc3 035325 arg mem_tmp1_256 ,regb 
-0x7bc4 035326 copy regb ,contw 
-0x7bc5 035327 call bn_add_256 
-0x7bc6 035328 ifetch 1 ,rega 
-0x7bc7 035329 iadd regc ,regc 
-0x7bc8 035330 ifetch 1 ,regb 
-0x7bc9 035331 iadd regc ,pdata 
-0x7bca 035332 istore 1 ,regb 
-0x7bcb 035333 branch bn_invmod_256_2 
-:      035334 bn_invmod_256_1:
-0x7bcc 035335 arg mem_tmp3_256 ,rega 
-0x7bcd 035336 arg mem_tmp2_256 ,regb 
-0x7bce 035337 copy rega ,contw 
-0x7bcf 035338 call bn_sub_256 
-0x7bd0 035339 arg mem_tmp1_256 ,rega 
-0x7bd1 035340 arg mem_tmp0_256 ,regb 
-0x7bd2 035341 copy regb ,contw 
-0x7bd3 035342 call bn_add_256 
-0x7bd4 035343 ifetch 1 ,rega 
-0x7bd5 035344 iadd regc ,regc 
-0x7bd6 035345 ifetch 1 ,regb 
-0x7bd7 035346 iadd regc ,pdata 
-0x7bd8 035347 istore 1 ,regb 
-0x7bd9 035348 branch bn_invmod_256_2 
-:      035349 bn_invmod_256_0:
-0x7bda 035351 arg mem_tmp1_256 ,rega 
-0x7bdb 035352 copy timeup ,contw 
-0x7bdc 035353 call bn_p256mod 
-0x7bdd 035355 arg mem_p_256 ,rega 
-0x7bde 035356 copy timeup ,regb 
-0x7bdf 035357 copy timeup ,contw 
-0x7be0 035358 branch bn_submod_256 
-:      035361 bn_mulmod_256:
-0x7be1 035362 copy contw ,timeup 
-0x7be2 035364 force 0 ,regext_index 
-0x7be3 035366 arg mem_tmp1_256 ,contw 
-0x7be4 035367 call clear_mem_512 
-0x7be5 035368 arg mem_regext ,contw 
-0x7be6 035369 call clear_mem_512 
-0x7be7 035373 copy rega ,contr 
-0x7be8 035375 jam 0 ,mem_regext 
-0x7be9 035376 setarg 0 
-0x7bea 035377 call bn_load_mem 
-0x7beb 035378 copy regb ,contr 
-0x7bec 035379 call bn_load_256 
-0x7bed 035382 force 0 ,queue 
-0x7bee 035383 arg mem_tmp1_256 ,contw 
-:      035384 bn_mulmod_256_1:
-0x7bef 035387 arg mem_regext ,temp 
-0x7bf0 035388 copy queue ,regb 
-0x7bf1 035389 lshift2 regb ,pdata 
-0x7bf2 035391 iadd temp ,regb 
-0x7bf3 035392 force 0 ,temp 
-0x7bf4 035393 force 0 ,regc 
-:      035394 bn_mulmod_256_0:
-0x7bf5 035399 ifetch 4 ,contw 
-0x7bf6 035400 iforce rega 
-0x7bf7 035403 ifetch 4 ,regb 
-0x7bf8 035404 copy regc ,regext_index 
-0x7bf9 035405 imul32 regext ,pdata 
-0x7bfa 035406 iadd rega ,pdata 
-0x7bfb 035407 iadd temp ,pdata 
-0x7bfc 035408 istore 4 ,contw 
-0x7bfd 035409 rshift32 pdata ,temp 
-0x7bfe 035410 increase 1 ,regc 
-0x7bff 035411 compare 8 ,regc ,0xff 
-0x7c00 035412 nbranch bn_mulmod_256_0 ,true 
-0x7c01 035414 deposit temp 
-0x7c02 035415 istore 4 ,contw 
-0x7c03 035416 increase -32 ,contw 
-0x7c04 035419 increase 1 ,queue 
-0x7c05 035420 compare 8 ,queue ,0xff 
-0x7c06 035421 nbranch bn_mulmod_256_1 ,true 
-0x7c07 035422 arg mem_tmp1_256 ,rega 
-0x7c08 035423 copy timeup ,contw 
-0x7c09 035424 branch bn_p256mod 
-:      035426 bn_p256mod:
-0x7c0a 035427 bpatchx patch3e_2 ,mem_patch3e 
-0x7c0b 035428 copy contw ,timeup 
-0x7c0c 035429 copy rega ,alarm 
-0x7c0d 035430 arg mem_tmp2_256 ,regb 
-0x7c0e 035431 copy regb ,contw 
-0x7c0f 035432 call memset0_4 
-0x7c10 035433 istore 8 ,contw 
-0x7c11 035434 add rega ,44 ,contr 
-0x7c12 035435 call memcpy8 
-0x7c13 035436 call memcpy12 
-0x7c14 035437 copy regb ,rega 
-0x7c15 035438 call bn_lshiftmod_256 
-0x7c16 035439 arg mem_tmp2_256 ,regb 
-0x7c17 035440 copy alarm ,rega 
-0x7c18 035441 copy timeup ,contw 
-0x7c19 035442 call bn_addmod_256 
-0x7c1a 035444 arg mem_tmp2_256 ,regb 
-0x7c1b 035445 copy regb ,contw 
-0x7c1c 035446 call memset0_4 
-0x7c1d 035447 istore 8 ,contw 
-0x7c1e 035448 add alarm ,48 ,contr 
-0x7c1f 035449 call memcpy16 
-0x7c20 035450 call memset0_4 
-0x7c21 035451 copy regb ,rega 
-0x7c22 035452 call bn_lshiftmod_256 
-0x7c23 035456 arg mem_tmp2_256 ,regb 
-0x7c24 035457 copy timeup ,rega 
-0x7c25 035458 copy rega ,contw 
-0x7c26 035459 call bn_addmod_256 
-0x7c27 035463 arg mem_tmp2_256 ,regb 
-0x7c28 035464 copy regb ,contw 
-0x7c29 035465 add alarm ,32 ,contr 
-0x7c2a 035466 call memcpy12 
-0x7c2b 035467 call memset0_4 
-0x7c2c 035468 istore 8 ,contw 
-0x7c2d 035469 add alarm ,56 ,contr 
-0x7c2e 035470 call memcpy8 
-0x7c2f 035471 copy timeup ,rega 
-0x7c30 035472 copy rega ,contw 
-0x7c31 035473 call bn_addmod_256 
-0x7c32 035477 arg mem_tmp2_256 ,regb 
-0x7c33 035478 copy regb ,contw 
-0x7c34 035479 add alarm ,36 ,contr 
-0x7c35 035480 call memcpy12 
-0x7c36 035481 add alarm ,52 ,contr 
-0x7c37 035482 call memcpy12 
-0x7c38 035483 add alarm ,52 ,contr 
-0x7c39 035484 call memcpy4 
-0x7c3a 035485 add alarm ,32 ,contr 
-0x7c3b 035486 call memcpy4 
-0x7c3c 035487 copy timeup ,rega 
-0x7c3d 035488 copy rega ,contw 
-0x7c3e 035489 call bn_addmod_256 
-0x7c3f 035492 arg mem_tmp2_256 ,regb 
-0x7c40 035493 copy regb ,contw 
-0x7c41 035494 add alarm ,44 ,contr 
-0x7c42 035495 call memcpy12 
-0x7c43 035496 call memset0_4 
-0x7c44 035497 istore 8 ,contw 
-0x7c45 035498 add alarm ,32 ,contr 
-0x7c46 035499 call memcpy4 
-0x7c47 035500 add alarm ,40 ,contr 
-0x7c48 035501 call memcpy4 
-0x7c49 035502 copy timeup ,rega 
-0x7c4a 035503 copy rega ,contw 
-0x7c4b 035504 call bn_submod_256 
-0x7c4c 035507 arg mem_tmp2_256 ,regb 
-0x7c4d 035508 copy regb ,contw 
-0x7c4e 035509 add alarm ,48 ,contr 
-0x7c4f 035510 call memcpy8 
-0x7c50 035511 call memcpy8 
-0x7c51 035512 force 0 ,pdata 
-0x7c52 035513 istore 8 ,contw 
-0x7c53 035514 add alarm ,36 ,contr 
-0x7c54 035515 call memcpy4 
-0x7c55 035516 add alarm ,44 ,contr 
-0x7c56 035517 call memcpy4 
-0x7c57 035518 copy timeup ,rega 
-0x7c58 035519 copy rega ,contw 
-0x7c59 035520 call bn_submod_256 
-0x7c5a 035523 arg mem_tmp2_256 ,regb 
-0x7c5b 035524 copy regb ,contw 
-0x7c5c 035525 add alarm ,52 ,contr 
-0x7c5d 035526 call memcpy12 
-0x7c5e 035527 add alarm ,32 ,contr 
-0x7c5f 035528 call memcpy12 
-0x7c60 035529 call memset0_4 
-0x7c61 035530 add alarm ,48 ,contr 
-0x7c62 035531 call memcpy4 
-0x7c63 035532 copy timeup ,rega 
-0x7c64 035533 copy rega ,contw 
-0x7c65 035534 call bn_submod_256 
-0x7c66 035537 arg mem_tmp2_256 ,regb 
-0x7c67 035538 copy regb ,contw 
-0x7c68 035539 add alarm ,56 ,contr 
-0x7c69 035540 call memcpy8 
-0x7c6a 035541 call memset0_4 
-0x7c6b 035542 add alarm ,36 ,contr 
-0x7c6c 035543 call memcpy12 
-0x7c6d 035544 call memset0_4 
-0x7c6e 035545 add alarm ,52 ,contr 
-0x7c6f 035546 call memcpy4 
-0x7c70 035547 copy timeup ,rega 
-0x7c71 035548 copy rega ,contw 
-0x7c72 035549 branch bn_submod_256 
-:      035552 bn_load_mem:
-0x7c73 035553 force 32 ,loopcnt 
-0x7c74 035554 arg mem_regext ,contw 
-0x7c75 035555 iadd contw ,contw 
-0x7c76 035556 branch memcpy 
-:      035558 bn_load_256:
-0x7c77 035559 force 8 ,loopcnt 
-0x7c78 035560 branch bn_load_0 
-:      035562 bn_sqrmod_256:
-0x7c79 035563 copy rega ,regb 
-0x7c7a 035564 branch bn_mulmod_256 
-:      035566 bn_add_256:
-0x7c7b 035567 force 8 ,loopcnt 
-0x7c7c 035568 branch bn_add + 1 
-:      035570 bn_addmod_256:
-0x7c7d 035571 call bn_add_256 
-0x7c7e 035572 copy contw ,rega 
-0x7c7f 035573 branch bn_lshiftmod_ismod_256 
-:      035575 bn_lshiftmod_256:
-0x7c80 035576 call bn_lshift_256 
-:      035577 bn_lshiftmod_ismod_256:
-0x7c81 035578 isolate1 0 ,regc 
-0x7c82 035579 branch bn_lshiftmod_p_256 ,true 
-0x7c83 035580 arg mem_p_256 ,regb 
-0x7c84 035581 copy rega ,regc 
-0x7c85 035582 increase -32 ,rega 
-0x7c86 035583 call bn_bigeq_256 
-0x7c87 035584 nrtn positive 
-0x7c88 035585 copy regc ,rega 
-0x7c89 035586 branch sub_p2_256 
-:      035588 bn_lshiftmod_p_256:
-0x7c8a 035589 call sub_p2_256 
-0x7c8b 035591 copy rega ,regc 
-0x7c8c 035592 increase -32 ,rega 
-0x7c8d 035593 arg mem_p_256 ,regb 
-0x7c8e 035594 call bn_bigeq_256 
-0x7c8f 035595 nrtn positive 
-0x7c90 035596 copy regc ,rega 
-0x7c91 035597 branch sub_p2_256 
-:      035600 sub_p2_256:
-0x7c92 035601 increase -32 ,rega 
-0x7c93 035602 arg mem_p_256 ,regb 
-0x7c94 035603 copy rega ,contw 
-0x7c95 035604 branch bn_sub_256 
-:      035609 bn_submod_256:
-0x7c96 035610 call bn_sub_256 
-0x7c97 035612 branch bn_submod_256_np ,true 
-0x7c98 035615 add contw ,-32 ,rega 
-0x7c99 035616 arg mem_p_256 ,regb 
-0x7c9a 035617 call bn_bigeq_256 
-0x7c9b 035618 nrtn positive 
-0x7c9c 035619 arg mem_p_256 ,regb 
-0x7c9d 035620 add contw ,-32 ,rega 
-0x7c9e 035622 copy rega ,contw 
-0x7c9f 035623 branch bn_sub_256 
-:      035624 bn_submod_256_np:
-0x7ca0 035625 add contw ,-32 ,rega 
-0x7ca1 035626 arg mem_p_256 ,regb 
-0x7ca2 035627 copy rega ,contw 
-0x7ca3 035628 call bn_add_256 
-0x7ca4 035630 rtn true 
-0x7ca5 035631 add contw ,-32 ,rega 
-0x7ca6 035632 arg mem_p_256 ,regb 
-0x7ca7 035633 copy rega ,contw 
-0x7ca8 035634 branch bn_add_256 
-:      035638 bn_sub_256:
-0x7ca9 035639 force 8 ,loopcnt 
-0x7caa 035640 branch bn_sub + 1 
-:      035642 bn_rshift_256:
-0x7cab 035643 force 8 ,loopcnt 
-0x7cac 035644 increase 28 ,rega 
-0x7cad 035645 branch bn_rshift 
-:      035647 bn_lshift_256:
-0x7cae 035648 force 8 ,loopcnt 
-0x7caf 035649 force 0 ,regc 
-0x7cb0 035650 branch bn_lshift_0 
-:      035652 bn_bigeq_256:
-0x7cb1 035653 force 8 ,loopcnt 
-0x7cb2 035654 increase 28 ,rega 
-0x7cb3 035655 increase 28 ,regb 
-0x7cb4 035656 branch bn_bigeq_0 
-:      035659 bn_eq_zero_256:
-0x7cb5 035660 ifetch 8 ,contr 
-0x7cb6 035661 nrtn blank 
-0x7cb7 035662 branch bn_eq_zero 
-:      035667 bn_rshifteven_256:
-0x7cb8 035668 copy rega ,alarm 
-:      035669 bn_rshifteven_256_1:
-0x7cb9 035670 copy alarm ,rega 
-0x7cba 035671 ifetch 1 ,rega 
-0x7cbb 035672 isolate1 0 ,pdata 
-0x7cbc 035673 rtn true 
-0x7cbd 035674 call bn_rshift_256 
-0x7cbe 035675 ifetch 1 ,regb 
-0x7cbf 035676 isolate0 0 ,pdata 
-0x7cc0 035677 branch bn_rshifteven_256_0 ,true 
-0x7cc1 035678 arg mem_p_256 ,rega 
-0x7cc2 035679 copy regb ,contw 
-0x7cc3 035680 call bn_add_256 
-0x7cc4 035681 ifetch 1 ,regb 
-0x7cc5 035682 iadd regc ,pdata 
-0x7cc6 035683 istore 1 ,regb 
-0x7cc7 035684 increase -32 ,regb 
-:      035685 bn_rshifteven_256_0:
-0x7cc8 035686 add regb ,32 ,rega 
-0x7cc9 035687 force 9 ,loopcnt 
-0x7cca 035688 call bn_rshift 
-0x7ccb 035689 branch bn_rshifteven_256_1 
-:      035693 ui_init:
-0x7ccc 035694 call lpm_disable_exen_output 
-0x7ccd 035695 rtn wake 
-0x7cce 035696 call ui_button_init 
-0x7ccf 035697 call ui_timer_init 
-0x7cd0 035698 branch ui_led_init_global 
-:      035700 ui_dispatch:
-0x7cd1 035701 call ui_led_dispatch 
-0x7cd2 035703 branch ui_timer_check 
-:      035705 ui_button_init:
-0x7cd3 035706 fetch 1 ,mem_ui_button_gpio 
-0x7cd4 035707 rtneq ui_button_gpio_disable 
-0x7cd5 035708 iforce temp 
-0x7cd6 035709 call gpio_config_output 
-0x7cd7 035710 fetcht 1 ,mem_ui_button_gpio 
-0x7cd8 035711 call gpio_out_inactive 
-0x7cd9 035712 nop 100 
-0x7cda 035713 fetcht 1 ,mem_ui_button_gpio 
-0x7cdb 035714 call gpio_config_input 
-0x7cdc 035715 branch ui_button_polling 
-:      035719 ui_button_polling:
-0x7cdd 035720 bpatchx patch3e_3 ,mem_patch3e 
-0x7cde 035721 fetch 1 ,mem_ui_button_gpio 
-0x7cdf 035722 rtneq ui_button_gpio_disable 
-0x7ce0 035723 copy pdata ,temp 
-0x7ce1 035724 call gpio_get_bit 
-0x7ce2 035725 nbranch ui_button_up ,true 
-:      035727 ui_button_down:
-0x7ce3 035728 call ui_button_check_long_press 
-0x7ce4 035729 fetch 2 ,mem_ui_state_map 
-0x7ce5 035730 set1 ui_state_btn_down 
-0x7ce6 035731 store 2 ,mem_ui_state_map 
-0x7ce7 035732 fetch 1 ,mem_ui_button_last_state 
-0x7ce8 035733 rtneq ui_button_state_down 
-0x7ce9 035734 jam ui_button_state_down ,mem_ui_button_last_state 
-0x7cea 035736 fetch 1 ,mem_ui_button_timeout 
-0x7ceb 035737 store 1 ,mem_ui_button_timer 
-0x7cec 035738 call lpm_button_get_wake_lock 
-0x7ced 035739 jam bt_evt_button_down ,mem_fifo_temp 
-0x7cee 035740 branch ui_ipc_send_event 
-:      035741 ui_button_up:
-0x7cef 035742 fetch 2 ,mem_ui_state_map 
-0x7cf0 035743 set0 ui_state_btn_down 
-0x7cf1 035744 store 2 ,mem_ui_state_map 
-0x7cf2 035745 fetch 1 ,mem_ui_button_last_state 
-0x7cf3 035746 rtneq ui_button_state_up 
-0x7cf4 035747 jam ui_button_state_up ,mem_ui_button_last_state 
-0x7cf5 035749 jam 0 ,mem_ui_button_timer 
-0x7cf6 035750 call lpm_button_clean_wake_lock 
-0x7cf7 035751 jam bt_evt_button_up ,mem_fifo_temp 
-0x7cf8 035752 branch ui_ipc_send_event 
-:      035754 ui_button_check_long_press:
-0x7cf9 035755 fetch 1 ,mem_ui_button_timer 
-0x7cfa 035756 rtn blank 
-0x7cfb 035757 increase -1 ,pdata 
-0x7cfc 035758 store 1 ,mem_ui_button_timer 
-0x7cfd 035759 nrtn blank 
-0x7cfe 035761 jam bt_evt_button_long_pressed ,mem_fifo_temp 
-0x7cff 035762 branch ui_ipc_send_event 
-:      035764 lpm_button_get_wake_lock:
-0x7d00 035765 arg wake_lock_button ,queue 
-0x7d01 035766 branch lpm_get_wake_lock 
-:      035768 lpm_button_clean_wake_lock:
-0x7d02 035769 arg wake_lock_button ,queue 
-0x7d03 035770 branch lpm_put_wake_lock 
-:      035792 calc_curr_struct_prt:
-0x7d04 035793 fetch 2 ,mem_ui_led_struct_ptr 
-0x7d05 035794 mul32 rega ,led_offset_length ,regb 
-0x7d06 035795 iadd regb ,regb 
-0x7d07 035796 rtn 
-:      035799 ui_led_init_global:
-0x7d08 035800 fetch 1 ,mem_ui_led_struct_num 
-0x7d09 035801 rtn blank 
-0x7d0a 035802 copy pdata ,loopcnt 
-0x7d0b 035803 fetch 2 ,mem_ui_led_struct_ptr 
-0x7d0c 035804 copy pdata ,regb 
-:      035805 ui_led_init_loop:
-0x7d0d 035806 add regb ,led_offset_led_gpio ,regc 
-0x7d0e 035807 ifetcht 1 ,regc 
-0x7d0f 035808 call gpio_config_output 
-0x7d10 035809 call ui_led_off_static 
-0x7d11 035810 increase led_offset_length ,regb 
-0x7d12 035811 loop ui_led_init_loop 
-0x7d13 035812 rtn 
-:      035816 ui_led_on_global:
-0x7d14 035817 call calc_curr_struct_prt 
-0x7d15 035818 setarg ui_led_state_lighting 
-0x7d16 035819 istore 1 ,regb 
-0x7d17 035820 call ui_led_stop_timer 
-0x7d18 035821 branch ui_led_on_static 
-:      035825 ui_led_blink_stop_global:
-:      035826 ui_led_off_global:
-0x7d19 035827 call calc_curr_struct_prt 
-0x7d1a 035828 setarg ui_led_state_darking 
-0x7d1b 035829 istore 1 ,regb 
-0x7d1c 035830 call ui_led_stop_timer 
-0x7d1d 035831 branch ui_led_off_static 
-:      035835 ui_led_blink_start_global:
-0x7d1e 035836 call calc_curr_struct_prt 
-0x7d1f 035837 setarg ui_led_state_blink_start 
-0x7d20 035838 istore 1 ,regb 
-0x7d21 035839 setarg led_infinite_flash_num 
-0x7d22 035840 istore 1 ,contw 
-0x7d23 035841 branch ui_led_off_static 
-:      035846 ui_led_set_style_global:
-0x7d24 035847 call calc_curr_struct_prt 
-0x7d25 035848 arg led_offset_length ,loopcnt 
-0x7d26 035849 copy regc ,contr 
-0x7d27 035850 copy regb ,contw 
-0x7d28 035851 branch memcpy_fast 
-:      035855 ui_led_dispatch:
-0x7d29 035856 fetch 1 ,mem_ui_led_struct_num 
-0x7d2a 035857 rtn blank 
-0x7d2b 035858 arg 0 ,rega 
-:      035859 ui_led_blink_polling:
-0x7d2c 035860 call ui_led_change_style_by_type 
-0x7d2d 035861 increase 1 ,rega 
-0x7d2e 035862 fetch 1 ,mem_ui_led_struct_num 
-0x7d2f 035863 isub rega ,null 
-0x7d30 035864 rtn zero 
-0x7d31 035865 branch ui_led_blink_polling 
-:      035868 ui_led_off_static:
-0x7d32 035869 add regb ,led_offset_led_gpio ,regc 
-0x7d33 035870 ifetcht 1 ,regc 
-0x7d34 035871 branch gpio_out_inactive 
-:      035874 ui_led_on_static:
-0x7d35 035875 add regb ,led_offset_led_gpio ,regc 
-0x7d36 035876 ifetcht 1 ,regc 
-0x7d37 035877 branch gpio_out_active 
-:      035881 ui_led_change_style_by_type:
-0x7d38 035882 add rega ,ui_led_blink ,queue 
-0x7d39 035883 call timer_check 
-0x7d3a 035884 nrtn blank 
-0x7d3b 035886 call calc_curr_struct_prt 
-0x7d3c 035888 ifetch 1 ,regb 
-0x7d3d 035890 beq ui_led_state_lighting ,ui_led_on_static 
-0x7d3e 035891 beq ui_led_state_darking ,ui_led_off_static 
-0x7d3f 035892 beq ui_led_state_blink_stop ,ui_led_off_static 
-0x7d40 035893 beq ui_led_state_blink_darking ,ui_led_blink_state_darking 
-:      035894 ui_led_blink_state_lighting:
-0x7d41 035895 call ui_led_on_static 
-0x7d42 035896 add regb ,led_offset_cb_ledon ,regc 
-0x7d43 035897 call push_stack 
-0x7d44 035898 ifetch 2 ,regc 
-0x7d45 035899 call callback_func 
-0x7d46 035900 call pop_stack 
-0x7d47 035901 setarg ui_led_state_blink_darking 
-0x7d48 035902 istore 1 ,regb 
-0x7d49 035903 add regb ,led_offset_on_time ,regc 
-0x7d4a 035904 ifetch 2 ,regc 
-0x7d4b 035905 branch ui_led_blink_timer_start 
-:      035908 ui_led_blink_state_darking:
-0x7d4c 035909 call ui_led_off_static 
-0x7d4d 035910 add regb ,led_offset_cb_ledoff ,regc 
-0x7d4e 035911 call push_stack 
-0x7d4f 035912 ifetch 2 ,regc 
-0x7d50 035913 call callback_func 
-0x7d51 035914 call pop_stack 
-0x7d52 035916 add regb ,led_offset_blink_count ,regc 
-0x7d53 035917 ifetch 1 ,regc 
-0x7d54 035918 beq led_infinite_flash_num ,ui_led_blink_infinite 
-0x7d55 035919 increase -1 ,pdata 
-0x7d56 035920 istore 1 ,regc 
-0x7d57 035921 branch ui_led_blink_stop_global ,blank 
-:      035922 ui_led_blink_infinite:
-0x7d58 035923 setarg ui_led_state_blink_lighting 
-0x7d59 035924 istore 1 ,regb 
-0x7d5a 035925 add regb ,led_offset_off_time ,regc 
-0x7d5b 035926 ifetch 2 ,regc 
-:      035927 ui_led_blink_timer_start:
-0x7d5c 035928 add rega ,ui_led_blink ,queue 
-0x7d5d 035929 branch timer_init 
-:      035931 ui_led_stop_timer:
-0x7d5e 035932 setarg 0 
-0x7d5f 035933 branch ui_led_blink_timer_start 
-:      035939 ui_timer_timeout:
-0x7d60 035940 setarg 0x1000 
-0x7d61 035941 lshift16 pdata ,pdata 
-0x7d62 035942 iadd regb ,regb 
-0x7d63 035943 rtn 
-:      035945 ui_timer_check:
-0x7d64 035946 bpatchx patch3e_4 ,mem_patch3e 
-0x7d65 035947 arg 0 ,rega 
-0x7d66 035948 fetcht 4 ,mem_ui_timer_last_btclk 
-0x7d67 035949 copy clkn_bt ,regb 
-0x7d68 035950 copy regb ,pdata 
-0x7d69 035951 isub temp ,null 
-0x7d6a 035952 ncall ui_timer_timeout ,positive 
-:      035954 ui_timer_check_loop:
-0x7d6b 035955 copy regb ,pdata 
-0x7d6c 035956 increase 160 ,temp 
-0x7d6d 035957 increase 160 ,temp 
-0x7d6e 035958 isub temp ,null 
-0x7d6f 035959 nbranch ui_timer_check_end ,positive 
-0x7d70 035960 increase 1 ,rega 
-0x7d71 035961 and rega ,0x0f ,pdata 
-0x7d72 035962 nbranch ui_timer_check_loop ,blank 
-0x7d73 035963 arg 0 ,rega 
-0x7d74 035964 call ui_timer_check_send_evt 
-:      035965 ui_timer_init:
-0x7d75 035966 copy clkn_bt ,pdata 
-0x7d76 035967 store 4 ,mem_ui_timer_last_btclk 
-0x7d77 035968 rtn 
-:      035969 ui_timer_check_end:
-0x7d78 035970 bpatchx patch3e_5 ,mem_patch3e 
-0x7d79 035971 copy rega ,pdata 
-0x7d7a 035972 rtn blank 
-0x7d7b 035973 increase -160 ,temp 
-0x7d7c 035974 increase -160 ,temp 
-0x7d7d 035975 set0 28 ,temp 
-0x7d7e 035976 storet 4 ,mem_ui_timer_last_btclk 
-:      035977 ui_timer_check_send_evt:
-0x7d7f 035978 branch app_evt_timer 
-:      035985 ui_ipc_get_lock:
-0x7d80 035986 jam 1 ,mem_ipc_lock_bt 
-:      035987 ui_ipc_get_lock_wait:
-0x7d81 035988 fetch 1 ,mem_ipc_lock_c51 
-0x7d82 035989 nbranch ui_ipc_get_lock_wait ,blank 
-0x7d83 035990 rtn 
-:      035992 ui_ipc_put_lock:
-0x7d84 035993 jam 0 ,mem_ipc_lock_bt 
-0x7d85 035994 rtn 
-:      035998 ui_ipc_send_event:
-0x7d86 035999 bpatchx patch3e_6 ,mem_patch3e 
-0x7d87 036000 call ui_ipc_get_lock 
-0x7d88 036001 copy rega ,pdata 
-0x7d89 036002 store 4 ,mem_ipc_rega_temp 
-0x7d8a 036003 arg mem_ipc_fifo_bt2c51 ,rega 
-0x7d8b 036004 call fifo_in 
-0x7d8c 036005 fetch 4 ,mem_ipc_rega_temp 
-0x7d8d 036006 copy pdata ,rega 
-0x7d8e 036007 branch ui_ipc_put_lock 
-:      036009 ui_ipc_send_cmd:
-0x7d8f 036010 bpatchx patch3e_7 ,mem_patch3e 
-0x7d90 036011 call ui_ipc_get_lock 
-0x7d91 036012 copy rega ,pdata 
-0x7d92 036013 store 4 ,mem_ipc_rega_temp 
-0x7d93 036014 arg mem_ipc_fifo_c512bt ,rega 
-0x7d94 036015 call fifo_in 
-0x7d95 036016 fetch 4 ,mem_ipc_rega_temp 
-0x7d96 036017 copy pdata ,rega 
-0x7d97 036018 branch ui_ipc_put_lock 
-:      036020 ui_ipc_clean_all_fifo:
-0x7d98 036021 setarg 0 
-0x7d99 036022 store util_fifo_len ,mem_ipc_fifo_c512bt 
-0x7d9a 036023 store util_fifo_len ,mem_ipc_fifo_bt2c51 
-0x7d9b 036024 rtn 
-:      036026 check_51cmd:
-0x7d9c 036027 bpatchx patch3f_0 ,mem_patch3f 
-0x7d9d 036028 fetch 1 ,mem_hci_cmd 
-0x7d9e 036029 nrtn blank 
-0x7d9f 036030 arg mem_ipc_fifo_c512bt ,rega 
-0x7da0 036031 call fifo_is_empty 
-0x7da1 036032 rtn blank 
-0x7da2 036033 jam ipc_continue_process ,mem_ipc_skip_continue_proc 
-0x7da3 036034 call check_51cmd_once 
-0x7da4 036035 fetch 1 ,mem_ipc_skip_continue_proc 
-0x7da5 036036 branch check_51cmd ,blank 
-0x7da6 036037 rtn 
-:      036039 check_51cmd_once:
-0x7da7 036040 call ui_ipc_get_lock 
-0x7da8 036041 arg mem_ipc_fifo_c512bt ,rega 
-0x7da9 036042 call fifo_out 
-0x7daa 036043 copy pdata ,temp 
-0x7dab 036044 call ui_ipc_put_lock 
-0x7dac 036045 bpatchx patch3f_1 ,mem_patch3f 
-0x7dad 036046 copy temp ,pdata 
-0x7dae 036047 rtn blank 
-0x7daf 036048 beq bt_cmd_start_discovery ,check_51cmd_start_discovery 
-0x7db0 036049 beq bt_cmd_stop_discovery ,check_51cmd_stop_discovery 
-0x7db1 036050 beq bt_cmd_reconnect ,check_51cmd_reconnect 
-0x7db2 036051 beq bt_cmd_enter_sniff_subrating ,check_51cmd_enter_sniff_subrating 
-0x7db3 036052 beq bt_cmd_exit_sniff_subrating ,check_51cmd_exit_sniff_subrating 
-0x7db4 036053 beq bt_cmd_sniff_test ,check_51cmd_sniff_test 
-0x7db5 036054 beq bt_cmd_start_inquiry ,check_51cmd_inq 
-0x7db6 036055 beq bt_cmd_stop_inquiry ,check_51cmd_stop_inq 
-0x7db7 036056 beq bt_cmd_start_adv ,check_51cmd_adv 
-0x7db8 036057 beq bt_cmd_stop_adv ,check_51cmd_stop_adv 
-0x7db9 036058 beq bt_cmd_start_direct_adv ,check_51cmd_direct_adv 
-0x7dba 036059 beq bt_cmd_stop_direct_adv ,check_51cmd_stop_direct_adv 
-0x7dbb 036060 beq bt_cmd_led_off ,check_51cmd_led_off 
-0x7dbc 036061 beq bt_cmd_led_on ,check_51cmd_led_on 
-0x7dbd 036062 beq bt_cmd_led_blink ,check_51cmd_led_start_blink 
-0x7dbe 036063 beq bt_cmd_le_start_conn ,check_51cmd_le_start_con 
-0x7dbf 036064 beq bt_cmd_le_start_scan ,check_51cmd_start_scan 
-0x7dc0 036065 beq bt_cmd_le_stop_scan ,check_51cmd_stop_scan 
-0x7dc1 036066 beq bt_cmd_enter_hibernate ,check_51cmd_hibernate 
-0x7dc2 036067 beq bt_cmd_le_smp_security_request ,check_51cmd_le_smp_sec_req 
-0x7dc3 036068 beq bt_cmd_bb_reconn_cancel ,check_51cmd_bb_reconn_cancel 
-0x7dc4 036070 store 1 ,mem_fifo_temp 
-0x7dc5 036071 bpatchx patch3f_2 ,mem_patch3f 
-0x7dc6 036072 call lmo_fifo_check 
-0x7dc7 036073 nbranch check_51cmd_restore ,blank 
-:      036074 check_51cmd_once_continue:
-0x7dc8 036075 fetch 1 ,mem_fifo_temp 
-0x7dc9 036076 bmark0 mark_context ,check_51cmd_check_idle 
-0x7dca 036077 beq bt_cmd_disconnect ,check_51cmd_disconnect 
-0x7dcb 036078 beq bt_cmd_enter_sniff ,cmd_in_sniff 
-0x7dcc 036079 beq bt_cmd_exit_sniff ,cmd_exit_sniff 
-0x7dcd 036080 beq bt_cmd_set_pin_code ,check_51cmd_pincode 
-0x7dce 036081 beq bt_cmd_le_disconnect ,check_51cmd_le_disconnect 
-0x7dcf 036082 beq bt_cmd_le_update_conn ,check_51cmd_ble_update_connect_param 
-0x7dd0 036083 beq bt_cmd_role_switch ,check_51cmd_role_switch 
-0x7dd1 036084 beq bt_cmd_store_reconn_info_le ,eeprom_store_le_reconn_info 
-0x7dd2 036085 beq bt_cmd_store_reconn_info_bt ,eeprom_store_bd_reconn_info 
-0x7dd3 036086 beq bt_cmd_dhkey_not_accept ,check_51cmd_dhkey_not_accept 
-0x7dd4 036087 beq bt_cmd_store_reconn_info ,check_51cmd_store_reconn_info 
-0x7dd5 036088 rtn 
-:      036090 check_51cmd_check_idle:
-0x7dd6 036091 store 1 ,mem_fifo_temp 
-0x7dd7 036092 call context_check_idle 
-0x7dd8 036093 branch check_51cmd_restore ,zero 
-0x7dd9 036094 call context_search_plap 
-0x7dda 036095 nrtn zero 
-:      036096 check_51cmd_restore:
-0x7ddb 036097 jam ipc_skip_continue_process ,mem_ipc_skip_continue_proc 
-0x7ddc 036098 branch ui_ipc_send_cmd 
-:      036103 check_51cmd_start_discovery:
-0x7ddd 036104 fetch 2 ,mem_ui_state_map 
-0x7dde 036105 set1 ui_state_bt_discovery 
-0x7ddf 036106 store 2 ,mem_ui_state_map 
-0x7de0 036107 jam 3 ,mem_scan_mode 
-0x7de1 036108 rtn 
-:      036112 check_51cmd_stop_discovery:
-0x7de2 036113 jam 0 ,mem_hid_handshake_timer_count 
-0x7de3 036114 jam 0 ,mem_scan_mode 
-0x7de4 036115 fetch 2 ,mem_ui_state_map 
-0x7de5 036116 set0 ui_state_bt_discovery 
-0x7de6 036117 store 2 ,mem_ui_state_map 
-0x7de7 036118 rtn 
-:      036122 check_51cmd_reconnect:
-0x7de8 036123 jam hci_cmd_create_conn ,mem_hci_cmd 
-0x7de9 036124 rtn 
-:      036128 check_51cmd_disconnect:
-0x7dea 036129 jam lmp_detach ,mem_lmo_opcode2 
-0x7deb 036130 jam other_end_terminated ,mem_disconn_reason_send 
-0x7dec 036131 rtn 
-:      036135 check_51cmd_enter_sniff_subrating:
-0x7ded 036136 rtn 
-:      036140 check_51cmd_exit_sniff_subrating:
-0x7dee 036141 rtn 
-:      036145 check_51cmd_sniff_test:
-0x7def 036146 rtn 
-:      036150 check_51cmd_pincode:
-0x7df0 036151 jam pincode_state_pincode_ready ,mem_pincode_state 
-0x7df1 036152 branch cmd_pair 
-:      036156 check_51cmd_inq:
-0x7df2 036157 rtn 
-:      036161 check_51cmd_stop_inq:
-0x7df3 036162 rtn 
-:      036166 check_51cmd_adv:
-0x7df4 036167 jam on ,mem_le_adv_enable 
-0x7df5 036168 jam adv_ind ,mem_le_adv_type 
-0x7df6 036169 fetch 2 ,mem_ui_state_map 
-0x7df7 036170 set1 ui_state_ble_adv ,pdata 
-0x7df8 036171 store 2 ,mem_ui_state_map 
-0x7df9 036172 rtn 
-:      036176 check_51cmd_stop_adv:
-0x7dfa 036177 fetch 2 ,mem_ui_state_map 
-0x7dfb 036178 set0 ui_state_ble_adv ,pdata 
-0x7dfc 036179 store 2 ,mem_ui_state_map 
-0x7dfd 036180 jam off ,mem_le_adv_enable 
-0x7dfe 036181 rtn 
-:      036185 check_51cmd_direct_adv:
-0x7dff 036186 jam on ,mem_le_adv_enable 
-0x7e00 036187 jam adv_direct_ind ,mem_le_adv_type 
-0x7e01 036188 fetch 2 ,mem_ui_state_map 
-0x7e02 036189 set1 ui_state_ble_adv ,pdata 
-0x7e03 036190 store 2 ,mem_ui_state_map 
-0x7e04 036191 rtn 
-:      036195 check_51cmd_stop_direct_adv:
-0x7e05 036196 fetch 2 ,mem_ui_state_map 
-0x7e06 036197 set0 ui_state_ble_adv ,pdata 
-0x7e07 036198 store 2 ,mem_ui_state_map 
-0x7e08 036199 jam off ,mem_le_adv_enable 
-0x7e09 036200 rtn 
-:      036204 check_51cmd_le_disconnect:
-0x7e0a 036205 setarg 20 
-0x7e0b 036206 store 2 ,mem_le_superto 
-0x7e0c 036207 store 2 ,mem_le_init_superto 
-0x7e0d 036208 branch le_send_terminate_ind_user_terminated 
-:      036212 check_51cmd_ble_update_connect_param:
-0x7e0e 036213 branch le_l2cap_tx_update_req 
-:      036217 check_51cmd_led_off:
-0x7e0f 036218 arg 0 ,rega 
-0x7e10 036219 branch ui_led_off_global 
-:      036223 check_51cmd_led_on:
-0x7e11 036224 arg 0 ,rega 
-0x7e12 036225 branch ui_led_on_global 
-:      036229 check_51cmd_led_start_blink:
-0x7e13 036230 arg 0 ,rega 
-0x7e14 036231 branch ui_led_blink_start_global 
-:      036235 check_51cmd_le_start_con:
-0x7e15 036236 jam on ,mem_le_scan_enable 
-0x7e16 036237 jam hci_cmd_le_create_conn ,mem_hci_cmd 
-0x7e17 036240 rtn 
-:      036244 check_51cmd_start_scan:
-0x7e18 036245 jam on ,mem_le_scan_enable 
-0x7e19 036246 rtn 
-:      036250 check_51cmd_stop_scan:
-0x7e1a 036251 jam off ,mem_le_scan_enable 
-0x7e1b 036252 jam 0 ,mem_hci_cmd 
-0x7e1c 036253 rtn 
-:      036257 check_51cmd_hibernate:
-0x7e1d 036258 fetch 2 ,mem_cb_before_hibernate 
-0x7e1e 036259 call callback_func 
-0x7e1f 036260 fetch 1 ,mem_ui_button_gpio 
-0x7e20 036261 beq ui_button_gpio_disable ,check_51cmd_hibernate_btn_disabled 
-0x7e21 036262 copy pdata ,temp 
-0x7e22 036263 call gpio_config_input 
-:      036264 check_51cmd_hibernate_btn_disabled:
-0x7e23 036265 call ui_ipc_clean_all_fifo 
-0x7e24 036266 branch lpm_hibernate 
-:      036270 check_51cmd_le_smp_sec_req:
-0x7e25 036271 branch le_send_smp_security_request 
-:      036275 check_51cmd_role_switch:
-0x7e26 036276 jam lmp_slot_offset ,mem_lmo_opcode2 
-0x7e27 036277 set1 mark_switch_initiated ,mark 
-0x7e28 036278 nrtn master 
-0x7e29 036279 jam switch_flag_init ,mem_switch_flag 
-0x7e2a 036280 jam lmp_switch_req ,mem_lmo_opcode2 
-0x7e2b 036281 fetch 1 ,mem_connection_options 
-0x7e2c 036282 set0 connection_switch ,pdata 
-0x7e2d 036283 store 1 ,mem_connection_options 
-0x7e2e 036284 rtn 
-:      036288 check_51cmd_bb_reconn_cancel:
-0x7e2f 036289 force page_length_timer ,queue 
-0x7e30 036290 branch timer_stop 
-:      036294 check_51cmd_dhkey_not_accept:
-0x7e31 036295 call tid_set_reply 
-0x7e32 036296 jam lmp_dhkey_check ,mem_lmi_opcode2 
-0x7e33 036297 branch parse_lmp_dhkey_check_reject 
-:      036300 ui_check_paring_button:
-0x7e34 036301 fetch 1 ,mem_ui_state_map 
-0x7e35 036302 rtnbit0 ui_state_btn_down 
-0x7e36 036303 rtnbit0 ui_state_bt_reconnect 
-0x7e37 036304 branch check_51cmd_bb_reconn_cancel 
-:      036309 queue_init:
-0x7e38 036310 fetch 2 ,mem_queue_ptr 
-0x7e39 036311 add pdata ,queue_offset_curr_num ,contw 
-0x7e3a 036312 setarg 0 
-0x7e3b 036313 istore 3 ,contw 
-0x7e3c 036314 rtn 
-:      036318 queue_push:
-0x7e3d 036319 call disable_user 
-0x7e3e 036320 call queue_full 
-0x7e3f 036321 rtn blank 
-0x7e40 036322 fetch 2 ,mem_queue_ptr 
-0x7e41 036323 add pdata ,queue_offset_curr_num ,regb 
-0x7e42 036324 ifetcht 1 ,regb 
-0x7e43 036325 increase 1 ,temp 
-0x7e44 036326 istoret 1 ,regb 
-0x7e45 036328 ifetcht 1 ,pdata 
-0x7e46 036329 copy temp ,loopcnt 
-0x7e47 036330 add pdata ,queue_offset_write_ptr ,regb 
-0x7e48 036331 ifetch 1 ,regb 
-0x7e49 036332 imul32 temp ,pdata 
-0x7e4a 036333 iadd contr ,contw 
-0x7e4b 036334 copy rega ,contr 
-:      036335 calc_queue_next_ptr:
-0x7e4c 036336 call memcpy 
-0x7e4d 036337 call queue_get_size 
-0x7e4e 036338 pincrease -1 
-0x7e4f 036339 ifetcht 1 ,regb 
-0x7e50 036340 increase 1 ,temp 
-0x7e51 036341 iand temp ,temp 
-0x7e52 036342 istoret 1 ,regb 
-0x7e53 036343 branch enable_user 
-:      036348 queue_pop:
-0x7e54 036349 call disable_user 
-0x7e55 036350 call queue_empty 
-0x7e56 036351 rtn blank 
-0x7e57 036352 fetch 2 ,mem_queue_ptr 
-0x7e58 036353 add pdata ,queue_offset_curr_num ,regb 
-0x7e59 036354 ifetcht 1 ,regb 
-0x7e5a 036355 increase -1 ,temp 
-0x7e5b 036356 istoret 1 ,regb 
-0x7e5c 036357 ifetcht 1 ,pdata 
-0x7e5d 036358 copy temp ,loopcnt 
-0x7e5e 036359 add pdata ,queue_offset_read_ptr ,regb 
-0x7e5f 036360 ifetch 1 ,regb 
-0x7e60 036361 imul32 temp ,pdata 
-0x7e61 036362 iadd contr ,contr 
-0x7e62 036363 increase 1 ,contr 
-0x7e63 036364 copy rega ,contw 
-0x7e64 036365 branch calc_queue_next_ptr 
-:      036369 queue_empty:
-0x7e65 036370 fetch 2 ,mem_queue_ptr 
-0x7e66 036371 add pdata ,queue_offset_curr_num ,contr 
-0x7e67 036372 ifetch 1 ,contr 
-0x7e68 036373 rtn 
-:      036376 queue_full:
-0x7e69 036377 call queue_get_size 
-0x7e6a 036378 ifetcht 1 ,contr 
-0x7e6b 036379 isub temp ,pdata 
-0x7e6c 036380 rtn 
-:      036383 queue_get_size:
-0x7e6d 036384 fetch 2 ,mem_queue_ptr 
-0x7e6e 036385 add pdata ,queue_offset_length ,contr 
-0x7e6f 036386 ifetch 1 ,contr 
-0x7e70 036387 rtn 
-:      036395 right_shift_n:
-0x7e71 036396 sub loopcnt ,0 ,null 
-0x7e72 036397 rtn zero 
-:      036398 right_shift_n_loop:
-0x7e73 036399 rshift pdata ,pdata 
-0x7e74 036400 loop right_shift_n_loop 
-0x7e75 036401 rtn 
-:      036404 left_shift_n:
-0x7e76 036405 force 1 ,pdata 
-0x7e77 036406 sub loopcnt ,0 ,null 
-0x7e78 036407 rtn zero 
-:      036408 left_shift_n_loop:
-0x7e79 036409 lshift pdata ,pdata 
-0x7e7a 036410 loop left_shift_n_loop 
-0x7e7b 036411 rtn 
-:      036412 push_stack:
-0x7e7c 036413 deposit contw 
-0x7e7d 036414 store 2 ,mem_contw 
-0x7e7e 036415 storet 8 ,mem_temp 
-0x7e7f 036416 deposit timeup 
-0x7e80 036417 store 4 ,mem_timeup 
-0x7e81 036418 call push_stack_rega_b_c 
-0x7e82 036419 deposit contr 
-0x7e83 036420 store 2 ,mem_contr 
-0x7e84 036421 rtn 
-:      036423 push_stack_rega_b_c:
-0x7e85 036424 deposit rega 
-0x7e86 036425 store 4 ,mem_rega 
-0x7e87 036426 deposit regb 
-0x7e88 036427 store 4 ,mem_regb 
-0x7e89 036428 deposit regc 
-0x7e8a 036429 store 3 ,mem_regc 
-0x7e8b 036430 rtn 
-:      036432 pop_stack:
-0x7e8c 036433 fetcht 8 ,mem_temp 
-0x7e8d 036434 fetch 4 ,mem_timeup 
-0x7e8e 036435 iforce timeup 
-0x7e8f 036436 call pop_stack_rega_b_c 
-0x7e90 036437 fetch 2 ,mem_contw 
-0x7e91 036438 iforce contw 
-0x7e92 036439 fetch 2 ,mem_contr 
-0x7e93 036440 iforce contr 
-0x7e94 036441 rtn 
-:      036443 pop_stack_rega_b_c:
-0x7e95 036444 fetch 4 ,mem_rega 
-0x7e96 036445 iforce rega 
-0x7e97 036446 fetch 4 ,mem_regb 
-0x7e98 036447 iforce regb 
-0x7e99 036448 fetch 3 ,mem_regc 
-0x7e9a 036449 iforce regc 
-0x7e9b 036450 rtn 
-:      036452 get_contw:
-0x7e9c 036453 fetch 2 ,mem_contw 
-0x7e9d 036454 copy pdata ,contw 
-0x7e9e 036455 rtn 
-:      036456 get_contr:
-0x7e9f 036457 fetch 2 ,mem_contr 
-0x7ea0 036458 copy pdata ,contr 
-0x7ea1 036459 rtn 
-:      036460 store_contw:
-0x7ea2 036461 copy contw ,pdata 
-0x7ea3 036462 store 2 ,mem_contw 
-0x7ea4 036463 rtn 
-:      036464 store_contr:
-0x7ea5 036465 copy contr ,pdata 
-0x7ea6 036466 store 2 ,mem_contr 
-0x7ea7 036467 rtn 
-:      036471 save_cont_pointers:
-0x7ea8 036472 copy contw ,pdata 
-0x7ea9 036473 store 2 ,mem_hold_contw 
-0x7eaa 036474 copy contr ,pdata 
-0x7eab 036475 store 2 ,mem_hold_contr 
-0x7eac 036476 rtn 
-:      036477 load_cont_pointers:
-0x7ead 036478 fetch 2 ,mem_hold_contw 
-0x7eae 036479 copy pdata ,contw 
-0x7eaf 036480 fetch 2 ,mem_hold_contr 
-0x7eb0 036481 copy pdata ,contr 
-0x7eb1 036482 rtn 
-:      036484 memcpy96:
-0x7eb2 036485 call memcpy32 
-:      036486 memcpy64:
-0x7eb3 036487 call memcpy32 
-0x7eb4 036488 branch memcpy32 
-:      036489 memcpy12:
-0x7eb5 036490 call memcpy8 
-:      036491 memcpy4:
-0x7eb6 036492 ifetch 4 ,contr 
-0x7eb7 036493 istore 4 ,contw 
-0x7eb8 036494 rtn 
-:      036495 memcpy8:
-0x7eb9 036496 ifetch 8 ,contr 
-0x7eba 036497 istore 8 ,contw 
-0x7ebb 036498 rtn 
-:      036500 memcpy48:
-0x7ebc 036501 call memcpy16 
-:      036502 memcpy32:
-0x7ebd 036503 call memcpy8 
-:      036504 memcpy24:
-0x7ebe 036505 call memcpy8 
-:      036506 memcpy16:
-0x7ebf 036507 call memcpy8 
-0x7ec0 036508 branch memcpy8 
-:      036512 delay_10ms:
-0x7ec1 036513 arg 10 ,loopcnt 
-:      036514 delay_ms_wait:
-0x7ec2 036515 nop 12000 
-0x7ec3 036516 loop delay_ms_wait 
-0x7ec4 036517 rtn 
-:      036519 bn_zero:
-0x7ec5 036520 force 3 ,loopcnt 
-:      036521 memset0:
-0x7ec6 036522 force 0 ,pdata 
-:      036523 memset8:
-0x7ec7 036524 istore 8 ,contw 
-0x7ec8 036525 loop memset8 
-0x7ec9 036526 rtn 
-:      036528 memset0_8:
-0x7eca 036529 force 0 ,pdata 
-0x7ecb 036530 istore 8 ,contw 
-0x7ecc 036531 rtn 
-:      036532 memset0_4:
-0x7ecd 036533 force 0 ,pdata 
-0x7ece 036534 istore 4 ,contw 
-0x7ecf 036535 rtn 
-:      036537 clear_mem_256:
-0x7ed0 036538 force 4 ,loopcnt 
-0x7ed1 036539 branch memset0 
-:      036540 clear_mem_512:
-0x7ed2 036541 force 8 ,loopcnt 
-0x7ed3 036542 branch memset0 
-:      036544 clear_mem:
-0x7ed4 036545 deposit loopcnt 
-0x7ed5 036546 rtn blank 
-0x7ed6 036547 setarg 0 
-:      036548 clear_mem_loop:
-0x7ed7 036549 istore 1 ,contw 
-0x7ed8 036550 loop clear_mem_loop 
-0x7ed9 036551 rtn 
-:      036554 clear_temp_block:
-0x7eda 036555 arg 32 ,loopcnt 
-0x7edb 036556 arg mem_temp_block0 ,contw 
-0x7edc 036557 branch clear_mem 
-:      036559 xor_loop:
-0x7edd 036560 ifetch 4 ,regc 
-0x7ede 036561 ifetcht 4 ,rega 
-0x7edf 036562 ixor temp ,pdata 
-0x7ee0 036563 istore 4 ,contw 
-0x7ee1 036564 increase 4 ,rega 
-0x7ee2 036565 increase 4 ,regc 
-0x7ee3 036566 loop xor_loop 
-0x7ee4 036567 rtn 
-:      036571 inverse_data:
-0x7ee5 036572 bpatchx patch3f_3 ,mem_patch3f 
-0x7ee6 036573 copy loopcnt ,pdata 
-0x7ee7 036574 sub pdata ,1 ,null 
-0x7ee8 036575 rtn positive 
-0x7ee9 036576 iadd rega ,regb 
-0x7eea 036577 increase -1 ,regb 
-0x7eeb 036578 rshift loopcnt ,loopcnt 
-:      036579 inverse_loop:
-0x7eec 036580 ifetcht 1 ,rega 
-0x7eed 036581 ifetch 1 ,regb 
-0x7eee 036582 istore 1 ,rega 
-0x7eef 036583 istoret 1 ,regb 
-0x7ef0 036584 increase -1 ,regb 
-0x7ef1 036585 increase 1 ,rega 
-0x7ef2 036586 loop inverse_loop 
-0x7ef3 036587 rtn 
-:      036590 memcpy_fast:
-0x7ef4 036591 deposit loopcnt 
-0x7ef5 036592 rtn blank 
-:      036593 memcpy_fast_loop:
-0x7ef6 036594 increase -8 ,loopcnt 
-0x7ef7 036595 call memcpy8 ,positive 
-0x7ef8 036596 rtn zero 
-0x7ef9 036597 branch memcpy_fast_loop ,positive 
-0x7efa 036598 increase 8 ,loopcnt 
-:      036599 memcpy_fast_loop_four:
-0x7efb 036600 increase -4 ,loopcnt 
-0x7efc 036601 call memcpy4 ,positive 
-0x7efd 036602 rtn zero 
-0x7efe 036603 branch memcpy_fast_loop_four ,positive 
-0x7eff 036604 increase 4 ,loopcnt 
-0x7f00 036605 branch memcpy 
-:      036607 memcpy:
-0x7f01 036608 deposit loopcnt 
-0x7f02 036609 rtn blank 
-:      036610 memcpy_loop:
-0x7f03 036611 ifetch 1 ,contr 
-0x7f04 036612 istore 1 ,contw 
-0x7f05 036613 loop memcpy_loop 
-0x7f06 036614 rtn 
-:      036616 timer_stop:
-0x7f07 036617 setarg 0 
-:      036618 timer_init:
-0x7f08 036619 rshift clkn_bt ,temp 
-0x7f09 036620 storet 4 ,mem_last_clkn 
-0x7f0a 036621 arg mem_timers ,contw 
-0x7f0b 036622 iforce temp 
-0x7f0c 036623 lshift queue ,pdata 
-0x7f0d 036624 iadd contw ,contw 
-0x7f0e 036625 istoret 2 ,contw 
-0x7f0f 036626 bpatchx patch3f_4 ,mem_patch3f 
-0x7f10 036627 rtn 
-:      036629 timer_check_timeout:
-0x7f11 036630 arg 0x800 ,timeup 
-0x7f12 036631 lshift16 timeup ,timeup 
-0x7f13 036632 iadd timeup ,pdata 
-0x7f14 036633 rtn 
-:      036636 timer_reinit:
-0x7f15 036637 arg 0 ,queue 
-:      036638 timer_check:
-0x7f16 036639 bpatchx patch3f_5 ,mem_patch3f 
-0x7f17 036640 fetcht 4 ,mem_last_clkn 
-0x7f18 036641 rshift clkn_bt ,pdata 
-0x7f19 036642 store 4 ,mem_last_clkn 
-0x7f1a 036643 isub temp ,null 
-0x7f1b 036644 ncall timer_check_timeout ,positive 
-0x7f1c 036645 isub temp ,timeup 
-0x7f1d 036646 copy timeup ,temp 
-0x7f1e 036647 arg mem_timers ,contr 
-0x7f1f 036648 copy contr ,contw 
-0x7f20 036649 arg 16 ,loopcnt 
-:      036650 timer_loop:
-0x7f21 036651 ifetch 2 ,contr 
-0x7f22 036652 isub temp ,pdata 
-0x7f23 036653 branch timer_counting ,positive 
-0x7f24 036654 force 0 ,pdata 
-:      036655 timer_counting:
-0x7f25 036656 istore 2 ,contw 
-0x7f26 036657 loop timer_loop 
-0x7f27 036658 arg mem_timers ,contr 
-0x7f28 036659 lshift queue ,pdata 
-0x7f29 036660 iadd contr ,contr 
-0x7f2a 036661 ifetch 2 ,contr 
-0x7f2b 036662 rtn 
-:      036667 clk_add:
-0x7f2c 036668 iadd temp ,temp 
-0x7f2d 036669 copy temp ,loopcnt 
-0x7f2e 036670 setarg 3750 
-0x7f2f 036671 isub loopcnt ,pdata 
-0x7f30 036672 rtn positive 
-0x7f31 036673 sub pdata ,0 ,pdata 
-0x7f32 036674 rshift16 temp ,temp 
-0x7f33 036675 increase 1 ,temp 
-0x7f34 036676 lshift16 temp ,temp 
-0x7f35 036677 ior temp ,temp 
-0x7f36 036678 rtn 
-:      036680 clk_diff_rt:
-0x7f37 036681 call clk_diff 
-0x7f38 036682 branch clk2rt 
-:      036685 clk_diff:
-0x7f39 036686 disable user 
-0x7f3a 036687 isub temp ,pdata 
-0x7f3b 036688 branch clk_diff_pos ,positive 
-0x7f3c 036689 enable user 
-0x7f3d 036690 sub pdata ,0 ,pdata 
-:      036691 clk_diff_pos:
-0x7f3e 036692 rtnbit0 15 
-0x7f3f 036693 arg -61786 ,temp 
-0x7f40 036694 iadd temp ,pdata 
-0x7f41 036695 set0 64 ,pdata 
-0x7f42 036696 rtn 
-:      036698 clk2rt:
-0x7f43 036699 iforce contr 
-0x7f44 036700 rshift16 pdata ,pdata 
-0x7f45 036701 arg 3750 ,temp 
-0x7f46 036702 imul32 temp ,pdata 
-0x7f47 036703 iadd contr ,pdata 
-0x7f48 036704 rtn 
-:      036707 clk2lpo:
-0x7f49 036708 lshift8 pdata ,pdata 
-0x7f4a 036709 lshift4 pdata ,pdata 
-0x7f4b 036710 fetcht 3 ,mem_clks_per_lpo 
-0x7f4c 036711 idiv temp 
-0x7f4d 036712 call wait_div_end 
-0x7f4e 036713 quotient temp 
-0x7f4f 036714 rtn 
-:      036717 clk2bt:
-0x7f50 036718 arg 3750 ,temp 
-0x7f51 036719 idiv temp 
-0x7f52 036720 call wait_div_end 
-0x7f53 036721 quotient pdata 
-0x7f54 036722 lshift16 pdata ,pdata 
-0x7f55 036723 remainder temp 
-0x7f56 036724 ior temp ,temp 
-0x7f57 036725 rtn 
-:      036732 string2dec_from_uart:
-0x7f58 036733 arg 0 ,temp 
-:      036734 string2dec_from_uart_done:
-0x7f59 036735 copy temp ,regc 
-0x7f5a 036736 ifetch 1 ,contru 
-0x7f5b 036737 call uchar2dialog 
-0x7f5c 036738 copy regc ,temp 
-0x7f5d 036739 call swap 
-0x7f5e 036740 arg 10 ,regb 
-0x7f5f 036741 imul32 regb ,pdata 
-0x7f60 036742 iadd temp ,pdata 
-0x7f61 036743 copy pdata ,temp 
-0x7f62 036744 loop string2dec_from_uart_done 
-0x7f63 036745 rtn 
-:      036749 uchar2dialog:
-0x7f64 036750 arg 0x3a ,temp 
-0x7f65 036751 isub temp ,null 
-0x7f66 036752 nbranch uchar2dialog_number ,positive 
-0x7f67 036753 arg 0x61 ,temp 
-0x7f68 036754 isub temp ,null 
-0x7f69 036755 branch uchar2dialog_a2f ,positive 
-0x7f6a 036756 arg 0x37 ,temp 
-0x7f6b 036757 isub temp ,pdata 
-0x7f6c 036758 rtn 
-:      036759 uchar2dialog_number:
-0x7f6d 036760 arg 0x30 ,temp 
-0x7f6e 036761 isub temp ,pdata 
-0x7f6f 036762 rtn 
-:      036763 uchar2dialog_a2f:
-0x7f70 036764 arg 0x57 ,temp 
-0x7f71 036765 isub temp ,pdata 
-0x7f72 036766 rtn 
-:      036768 pn9:
-0x7f73 036769 copy temp ,alarm 
-0x7f74 036770 setarg 0x1ff 
-0x7f75 036771 force 0 ,regb 
-:      036772 pn9_loop:
-0x7f76 036773 rshift3 pdata ,rega 
-0x7f77 036774 rshift rega ,rega 
-0x7f78 036775 ixor rega ,rega 
-0x7f79 036776 isolate1 0 ,rega 
-0x7f7a 036777 setflag true ,9 ,pdata 
-0x7f7b 036778 rshift temp ,temp 
-0x7f7c 036779 isolate1 0 ,pdata 
-0x7f7d 036780 setflag true ,7 ,temp 
-0x7f7e 036781 rshift pdata ,pdata 
-0x7f7f 036782 increase 1 ,regb 
-0x7f80 036783 compare 0 ,regb ,0x7 
-0x7f81 036784 nbranch pn9_loop ,true 
-0x7f82 036785 istoret 1 ,contw 
-0x7f83 036786 loop pn9_loop 
-0x7f84 036787 copy alarm ,temp 
-0x7f85 036788 rtn 
-:      036791 wait_div_end:
-0x7f86 036792 rtn modone 
-0x7f87 036793 branch wait_div_end 
-:      036803 compare_loop:
-:      036804 string_compare:
-0x7f88 036805 ifetch 1 ,rega 
-0x7f89 036806 ifetcht 1 ,regb 
-0x7f8a 036807 isub temp ,null 
-0x7f8b 036808 nrtn zero 
-0x7f8c 036809 increase 1 ,rega 
-0x7f8d 036810 increase 1 ,regb 
-0x7f8e 036811 loop string_compare 
-0x7f8f 036812 force 0 ,null 
-0x7f90 036813 rtn 
-:      036816 ceiling:
-0x7f91 036817 isub temp ,null 
-0x7f92 036818 nrtn positive 
-0x7f93 036819 deposit temp 
-0x7f94 036820 rtn 
-:      036822 swap:
-0x7f95 036823 iadd temp ,pdata 
-0x7f96 036824 isub temp ,temp 
-0x7f97 036825 isub temp ,pdata 
-0x7f98 036826 rtn 
-:      036828 clean_mem:
-0x7f99 036829 arg 0x200 ,loopcnt 
-0x7f9a 036830 arg 0x4000 ,contw 
-0x7f9b 036831 branch memset0 
-:      036834 callback_func:
-0x7f9c 036835 rtn blank 
-0x7f9d 036836 copy pdata ,pc 
-:      036839 wait_uarttx:
-0x7f9e 036840 hfetch 2 ,core_uart_txitems 
-0x7f9f 036841 nbranch wait_uarttx ,blank 
-0x7fa0 036842 rtn 
-:      036844 ice_break:
-0x7fa1 036845 jam 0x1 ,core_ice_ctrl 
-0x7fa2 036846 rtn 
-:      036848 ice_setbp:
-0x7fa3 036849 hstore 2 ,core_ice_break0 
-0x7fa4 036850 hfetch 1 ,core_ice_ctrl 
-0x7fa5 036851 set1 4 ,pdata 
-0x7fa6 036852 hstore 1 ,core_ice_ctrl 
-0x7fa7 036853 rtn 
-:      036854 ice_setbp2:
-0x7fa8 036855 hstore 2 ,core_ice_break1 
-0x7fa9 036856 hfetch 1 ,core_ice_ctrl 
-0x7faa 036857 set1 6 ,pdata 
-0x7fab 036858 hstore 1 ,core_ice_ctrl 
-0x7fac 036859 rtn 
-:      036861 ice_set_write_bp:
-0x7fad 036862 hstore 2 ,core_ice_break0 
-0x7fae 036863 jam 0x30 ,core_ice_ctrl 
-0x7faf 036864 rtn 
-:      036868 test_enable_white:
-0x7fb0 036869 hfetch 1 ,core_config 
-0x7fb1 036870 set0 whiteoff_bit ,pdata 
-0x7fb2 036871 hstore 1 ,core_config 
-0x7fb3 036872 rtn 
-:      036874 check_uart_tx_buff:
-0x7fb4 036875 hfetch 2 ,core_uart_txitems 
-0x7fb5 036876 arg uart_air_control_threshold ,temp 
-:      036877 pdata_sub_temp:
-0x7fb6 036878 isub temp ,null 
-0x7fb7 036879 rtn 
-:      036885 fifo_in:
-0x7fb8 036886 bpatchx patch3f_6 ,mem_patch3f 
-0x7fb9 036887 ifetcht util_fifo_len ,rega 
-0x7fba 036888 and temp ,0xff ,pdata 
-0x7fbb 036889 nbranch fifo_in_push ,blank 
-0x7fbc 036890 rshift8 temp ,pdata 
-0x7fbd 036891 istore util_fifo_len ,rega 
-:      036892 fifo_in_push:
-0x7fbe 036893 increase util_fifo_len + util_fifo_offset ,rega 
-0x7fbf 036894 ifetch 1 ,rega 
-0x7fc0 036895 nbranch assert ,blank 
-0x7fc1 036896 fetch 1 ,mem_fifo_temp 
-0x7fc2 036897 istore 1 ,rega 
-0x7fc3 036898 rtn 
-:      036903 fifo_out:
-0x7fc4 036904 bpatchx patch3f_7 ,mem_patch3f 
-0x7fc5 036905 arg util_fifo_len ,loopcnt 
-0x7fc6 036906 ifetch util_fifo_len ,rega 
-0x7fc7 036907 rtn blank 
-:      036908 fifo_out_loop:
-0x7fc8 036909 ifetch 1 ,rega 
-0x7fc9 036910 nbranch fifo_out_end ,blank 
-0x7fca 036911 increase 1 ,rega 
-0x7fcb 036912 loop fifo_out_loop 
-0x7fcc 036913 branch assert 
-:      036914 fifo_out_end:
-0x7fcd 036915 arg 0 ,temp 
-0x7fce 036916 istoret 1 ,rega 
-0x7fcf 036917 rtn 
-:      036922 fifo_is_empty:
-0x7fd0 036923 ifetch util_fifo_len ,rega 
-0x7fd1 036924 rtn 
-:      036929 fifo_is_full:
-0x7fd2 036930 ifetch 1 ,rega 
-0x7fd3 036931 rtn 
-:      036934 fifo_is_near_full:
-0x7fd4 036935 ifetch 2 ,rega 
-0x7fd5 036936 rtn 
-:      036940 fifo_content_count:
-0x7fd6 036941 arg 0 ,temp 
-:      036942 fifo_content_count_loop:
-0x7fd7 036943 fetch 1 ,contr 
-0x7fd8 036944 loop fifo_content_count_loop ,blank 
-0x7fd9 036945 increase 1 ,temp 
-0x7fda 036946 loop fifo_content_count_loop 
-0x7fdb 036947 copy temp ,pdata 
-0x7fdc 036948 rtn 
-:      036950 not_greater_than:
-0x7fdd 036951 isub temp ,null 
-0x7fde 036952 nrtn positive 
-0x7fdf 036953 copy temp ,pdata 
-0x7fe0 036954 rtn 
-:      036957 disable_positive:
-0x7fe1 036958 force -1 ,null 
-0x7fe2 036959 rtn 
-:      036960 enable_positive:
-:      036961 disable_zero:
-0x7fe3 036962 force 1 ,null 
-0x7fe4 036963 rtn 
-:      036964 enable_zero:
-0x7fe5 036965 force 0 ,null 
-0x7fe6 036966 rtn 
-:      036968 enable_user:
-0x7fe7 036969 enable user 
-0x7fe8 036970 rtn 
-:      036972 disable_user:
-0x7fe9 036973 disable user 
-0x7fea 036974 rtn 
-:      036976 enable_user2:
-0x7feb 036977 enable user2 
-0x7fec 036978 rtn 
-:      036980 disable_user2:
-0x7fed 036981 disable user2 
-0x7fee 036982 rtn 
-:      036984 disable_blank:
-0x7fef 036985 setarg 1 
-0x7ff0 036986 rtn 
-:      036988 enable_blank:
-0x7ff1 036989 setarg 0 
-0x7ff2 036990 rtn 
-:      036993 reverse_byte:
-0x7ff3 036994 copy loopcnt ,pdata 
-0x7ff4 036995 rtn blank 
-0x7ff5 036996 copy contr ,pdata 
-0x7ff6 036997 iadd loopcnt ,pdata 
-0x7ff7 036998 increase -1 ,pdata 
-0x7ff8 036999 copy pdata ,contr 
-:      037000 reverse_loop:
-0x7ff9 037001 ifetch 1 ,contr 
-0x7ffa 037002 increase -2 ,contr 
-0x7ffb 037003 istore 1 ,contw 
-0x7ffc 037004 loop reverse_loop 
-0x7ffd 037005 rtn 
+:      003132 start:
+0x2000 003133 call lpmstate 
+:      003135 soft_reset:
+0x2001 003136 bpatch patch00_0 ,mem_patch00 
+0x2002 003137 clear_stack 
+0x2003 003138 call spi_ncs_gpio_init 
+0x2004 003139 call initialize_radio 
+0x2005 003140 call iicd_init_12m 
+0x2006 003141 call init_param 
+0x2007 003142 call l2cap_init 
+0x2008 003143 bpatch patch00_1 ,mem_patch00 
+0x2009 003144 call rfcomm_init 
+0x200a 003145 call init_lmp 
+0x200b 003146 call ui_init 
+0x200c 003147 call app_init 
+0x200d 003148 ncall load_chip_option ,wake 
+0x200e 003149 bpatch patch00_2 ,mem_patch00 
+0x200f 003150 call app_lpm_init ,wake 
+0x2010 003151 call publickey_init 
+0x2011 003152 call lpm_recover_clk ,wake 
+:      003153 main_loop:
+0x2012 003154 bpatch patch00_3 ,mem_patch00 
+0x2013 003155 call sp_calc_sequence 
+0x2014 003156 call sp_calc_sequence_256 
+0x2015 003157 call sp_calc_sequence_256_check 
+0x2016 003158 call le_dispatch 
+0x2017 003159 bpatch patch00_4 ,mem_patch00 
+0x2018 003160 call idle_dispatch 
+0x2019 003161 call app_process_idle 
+0x201a 003162 call inquiry_dispatch 
+0x201b 003163 call inquiry_scan_dispatch 
+0x201c 003164 call page_scan_dispatch 
+0x201d 003165 call connection_dispatch 
+0x201e 003166 call lpm_dispatch 
+0x201f 003167 call g24_dispatch 
+0x2020 003168 branch main_loop 
+:      003170 connection_dispatch:
+0x2021 003171 call connection_incontext 
+0x2022 003172 rtnmark0 mark_context 
+0x2023 003173 set0 mark_context ,mark 
+0x2024 003174 call context_save 
+0x2025 003175 branch le_disable 
+:      003177 connection_incontext:
+0x2026 003178 bpatch patch00_5 ,mem_patch00 
+0x2027 003179 call context_search_insniff 
+0x2028 003180 nbranch connection_nosniff ,zero 
+0x2029 003181 call context_load 
+0x202a 003182 add rega ,coffset_mode ,contr 
+0x202b 003183 ifetch 1 ,contr 
+0x202c 003184 bbit1 mode_le ,le_conn_dispatch 
+0x202d 003185 bbit1 mode_master ,master_dispatch 
+0x202e 003186 branch slave_dispatch 
+:      003187 connection_nosniff:
+0x202f 003188 call context_get_next 
+0x2030 003189 copy loopcnt ,null 
+0x2031 003190 rtn zero 
+0x2032 003191 call context_load 
+0x2033 003192 fetch 1 ,mem_state 
+0x2034 003193 bbit1 state_inpage ,master_page 
+0x2035 003194 fetch 1 ,mem_mode 
+0x2036 003195 bbit1 mode_master ,master_dispatch 
+0x2037 003196 branch slave_dispatch 
+:      003204 idle_dispatch:
+0x2038 003205 fetch 1 ,mem_hci_cmd 
+0x2039 003206 rtn blank 
+0x203a 003207 beq hci_cmd_inquiry ,idle_inquiry 
+0x203b 003208 beq hci_cmd_inquiry_cancel ,idle_inquiry_cancel 
+0x203c 003209 beq hci_cmd_remote_name_req ,idle_remote_name_req 
+0x203d 003210 beq hci_cmd_create_conn ,idle_create_conn 
+0x203e 003211 beq hci_cmd_le_create_conn ,idle_le_create_conn 
+0x203f 003212 call context_search_conn_handle 
+0x2040 003213 rtn zero 
+0x2041 003214 call context_search_plap 
+0x2042 003215 rtn zero 
+:      003216 idle_exit:
+0x2043 003217 jam 0 ,mem_hci_cmd 
+0x2044 003218 rtn 
+:      003220 idle_le_create_conn:
+0x2045 003221 jam hci_cmd_le_create_conn ,mem_cmd_le_create_conn 
+0x2046 003222 jam 0 ,mem_hci_cmd 
+0x2047 003223 rtn 
+:      003225 idle_inquiry:
+0x2048 003226 set1 mark_inquiry_on ,mark 
+0x2049 003227 set0 mark_inquiry_trainb ,mark 
+0x204a 003228 jam param_ninquiry ,mem_ninqy_index 
+0x204b 003229 jam 31 ,mem_nfreq_index_inq 
+0x204c 003230 branch idle_exit 
+:      003232 idle_inquiry_cancel:
+0x204d 003233 set0 mark_inquiry_on ,mark 
+0x204e 003234 force 0 ,stop_watch 
+0x204f 003235 branch idle_exit 
+:      003237 idle_remote_name_req:
+0x2050 003238 call context_search_plap 
+0x2051 003239 rtn zero 
+0x2052 003240 force lmp_name_req ,temp 
+0x2053 003241 jam 5 ,mem_nameres_cnt 
+0x2054 003242 branch idle_start_page 
+:      003244 idle_create_conn:
+0x2055 003245 bpatch patch00_6 ,mem_patch00 
+:      003246 idle_create_conn_device:
+0x2056 003247 fetch 6 ,mem_hci_plap 
+0x2057 003248 branch idle_exit ,blank 
+0x2058 003249 jam reconnect_hid ,memui_reconnect_mode 
+0x2059 003251 jam conn_sm_wait_features_res ,mem_conn_sm 
+0x205a 003252 branch idle_create_conn_cont 
+:      003254 idle_create_conn_cont:
+0x205b 003255 force lmp_version_req ,temp 
+:      003256 idle_start_page:
+0x205c 003257 bpatch patch00_7 ,mem_patch00 
+0x205d 003258 fetch 1 ,mem_page_mode 
+0x205e 003259 branch idle_page_mode_r0 ,blank 
+0x205f 003260 lshift3 pdata ,pdata 
+0x2060 003261 lshift4 pdata ,pdata 
+0x2061 003262 increase -1 ,pdata 
+:      003263 idle_page_mode_r0:
+0x2062 003264 store 1 ,mem_npage 
+0x2063 003265 store 1 ,mem_npage_index 
+0x2064 003266 jam 31 ,mem_nfreq_index_page 
+0x2065 003267 set0 mark_page_trainb ,mark 
+0x2066 003268 call context_new 
+0x2067 003269 nbranch idle_page_fail ,zero 
+0x2068 003270 call get_free_amaddr 
+0x2069 003271 store 1 ,mem_amaddr 
+0x206a 003272 storet 1 ,mem_lmo_opcode2 
+0x206b 003273 fetch 6 ,mem_hci_plap 
+0x206c 003274 store 6 ,mem_plap 
+0x206d 003275 bpatch patch01_0 ,mem_patch01 
+0x206e 003276 call timer_reinit 
+0x206f 003277 force 0 ,pdata 
+0x2070 003278 compare lmp_name_req ,temp ,0xff 
+0x2071 003279 nsetflag true ,state_init_seq ,pdata 
+0x2072 003280 set1 state_inpage ,pdata 
+0x2073 003281 store 1 ,mem_state 
+0x2074 003282 jam bt_evt_reconn_started ,mem_fifo_temp 
+0x2075 003283 call ui_ipc_send_event 
+0x2076 003284 force 0 ,pdata 
+0x2077 003285 setflag true ,smap_name_req ,pdata 
+0x2078 003286 store 1 ,mem_state_map 
+0x2079 003287 setarg 0 
+0x207a 003288 set1 mode_master ,pdata 
+0x207b 003289 store 1 ,mem_mode 
+0x207c 003290 enable master 
+0x207d 003291 call context_save 
+0x207e 003292 disable master 
+0x207f 003293 force page_length_timer ,queue 
+0x2080 003294 fetch 2 ,mem_page_to 
+0x2081 003295 call timer_init 
+0x2082 003296 branch idle_exit 
+:      003297 idle_page_fail:
+0x2083 003298 bpatch patch01_1 ,mem_patch01 
+0x2084 003299 fetch 6 ,mem_hci_plap 
+0x2085 003300 store 6 ,mem_plap 
+0x2086 003301 compare lmp_name_req ,temp ,0xff 
+0x2087 003302 branch idle_name_fail ,true 
+0x2088 003303 branch idle_exit 
+:      003304 idle_name_fail:
+0x2089 003305 arg mem_tmp_buffer ,contw 
+0x208a 003306 arg 8 ,loopcnt 
+0x208b 003307 call memset0 
+0x208c 003308 jam bt_evt_reconn_failed ,mem_fifo_temp 
+0x208d 003309 call ui_ipc_send_event 
+0x208e 003310 branch idle_exit 
+:      003317 inquiry_dispatch:
+0x208f 003318 rtnmark0 mark_inquiry_on 
+0x2090 003319 force inquiry_length_timer ,queue 
+0x2091 003320 call timer_check 
+0x2092 003321 nsetflag blank ,mark_inquiry_on ,mark 
+0x2093 003322 nbranch inquiry_start ,blank 
+0x2094 003323 rtn 
+:      003327 inquiry_start:
+0x2095 003328 bpatch patch01_2 ,mem_patch01 
+0x2096 003329 fetcht 2 ,mem_inq_window 
+0x2097 003330 force 4 ,queue 
+0x2098 003331 call sniff_check_window 
+0x2099 003332 rtn user 
+0x209a 003333 call afh_clear 
+0x209b 003334 force 0 ,freq_mode 
+:      003335 inquiry_restart:
+0x209c 003336 rtn timeout 
+0x209d 003337 set0 mark_fhs_already_good ,mark 
+0x209e 003338 set0 mark_fhs_eir ,mark 
+:      003339 inquiry_rx_restart:
+0x209f 003340 add clkn_bt ,1 ,bt_clk 
+0x20a0 003341 isolate1 mark_inquiry_trainb ,mark 
+0x20a1 003342 setflag true ,2 ,freq_mode 
+0x20a2 003343 compare 0x00 ,bt_clk ,0x02 
+0x20a3 003344 nbranch inquiry_receive ,true 
+:      003346 inquiry_transmit:
+0x20a4 003347 bpatch patch01_3 ,mem_patch01 
+0x20a5 003348 fetch 1 ,mem_inquiry_transmit 
+0x20a6 003349 increase 1 ,pdata 
+0x20a7 003350 store 1 ,mem_inquiry_transmit 
+0x20a8 003351 call fetch_giac 
+0x20a9 003352 call tx_radio_freq 
+0x20aa 003353 call fetch_diac 
+0x20ab 003354 call start_transmitter 
+0x20ac 003355 call start_tx_native 
+0x20ad 003356 call send_access_word 
+0x20ae 003357 call end_of_packet 
+0x20af 003358 call inquiry_check_train 
+0x20b0 003359 branch inquiry_restart 
+:      003361 inquiry_check_train:
+0x20b1 003362 bpatch patch01_4 ,mem_patch01 
+0x20b2 003363 fetch 1 ,mem_nfreq_index_inq 
+0x20b3 003364 increase -1 ,pdata 
+0x20b4 003365 store 1 ,mem_nfreq_index_inq 
+0x20b5 003366 rtn positive 
+0x20b6 003367 jam 31 ,mem_nfreq_index_inq 
+0x20b7 003368 fetch 1 ,mem_ninqy_index 
+0x20b8 003369 increase -1 ,pdata 
+0x20b9 003370 store 1 ,mem_ninqy_index 
+0x20ba 003371 rtn positive 
+0x20bb 003372 setflip mark_inquiry_trainb ,mark 
+0x20bc 003373 jam param_ninquiry ,mem_ninqy_index 
+0x20bd 003374 rtn 
+:      003376 inquiry_receive:
+0x20be 003377 bpatch patch01_5 ,mem_patch01 
+0x20bf 003378 call fetch_giac 
+0x20c0 003379 call rx_radio_freq 
+0x20c1 003380 call fetch_diac 
+0x20c2 003381 call start_rx_native 
+0x20c3 003382 call start_receiver 
+0x20c4 003383 call wait_access_clkn_rt 
+0x20c5 003384 branch inquiry_sync ,sync 
+0x20c6 003385 call inquiry_check_train 
+0x20c7 003386 branch inquiry_rx_restart 
+:      003387 inquiry_sync:
+0x20c8 003388 bpatch patch01_6 ,mem_patch01 
+0x20c9 003389 call save_rssi 
+0x20ca 003390 call scan_mode_whiten 
+0x20cb 003391 call receive_packet_whitened 
+0x20cc 003392 set0 mark_rxbuf_inuse ,mark 
+0x20cd 003393 rtnmark0 mark_fhs_already_good 
+:      003394 inquiry_receive_rtn:
+0x20ce 003395 bpatch patch01_7 ,mem_patch01 
+:      003396 inquiry_receive_eir_rtn:
+0x20cf 003397 fetch 1 ,mem_inquiry_rcv 
+0x20d0 003398 increase 1 ,pdata 
+0x20d1 003399 store 1 ,mem_inquiry_rcv 
+0x20d2 003400 rtn 
+:      003408 master_page:
+0x20d3 003409 bpatch patch02_0 ,mem_patch02 
+0x20d4 003410 enable master 
+0x20d5 003411 enable clknt 
+0x20d6 003412 fetch 2 ,mem_page_interval 
+0x20d7 003413 branch master_page_no_interval ,blank 
+0x20d8 003414 force page_interval_timer ,queue 
+0x20d9 003415 call timer_check 
+0x20da 003416 nrtn blank 
+:      003417 master_page_no_interval:
+0x20db 003418 bpatch patch02_1 ,mem_patch02 
+0x20dc 003419 fetcht 2 ,mem_page_window 
+0x20dd 003420 force 40 ,queue 
+0x20de 003421 call sniff_check_window 
+0x20df 003422 branch page_exit ,user 
+0x20e0 003423 force page_length_timer ,queue 
+0x20e1 003424 call timer_check 
+0x20e2 003425 nbranch page_start ,blank 
+0x20e3 003426 fetch 1 ,mem_state_map 
+0x20e4 003427 bbit1 smap_name_req ,master_npage_timeout 
+0x20e5 003428 branch master_page_timeout 
+:      003429 master_npage_timeout:
+0x20e6 003430 arg mem_tmp_buffer ,contw 
+0x20e7 003431 arg 8 ,loopcnt 
+0x20e8 003432 call memset0 
+:      003433 master_page_timeout:
+0x20e9 003434 bpatch patch02_2 ,mem_patch02 
+0x20ea 003435 jam 0 ,mem_state 
+0x20eb 003436 call init_lmp_work 
+0x20ec 003437 jam 0 ,memui_reconnect_mode 
+0x20ed 003438 jam bt_evt_reconn_page_timeout ,mem_fifo_temp 
+0x20ee 003439 call ui_ipc_send_event 
+0x20ef 003440 branch page_exit 
+:      003442 page_start:
+0x20f0 003443 bpatch patch02_3 ,mem_patch02 
+0x20f1 003444 force 0 ,timeup 
+0x20f2 003445 until clkn_rt ,meet 
+0x20f3 003446 fetch 1 ,mem_page_clk 
+0x20f4 003447 increase -1 ,pdata 
+0x20f5 003448 ixor clkn_bt ,pdata 
+0x20f6 003449 compare 0 ,pdata ,3 
+0x20f7 003450 nbranch page_start ,true 
+0x20f8 003451 deposit am_addr 
+0x20f9 003452 store 1 ,mem_fhs_am_addr 
+0x20fa 003453 force 0 ,n_tx_slot 
+0x20fb 003454 force 0 ,freq_mode 
+:      003456 page_restart:
+0x20fc 003457 bpatch patch02_4 ,mem_patch02 
+0x20fd 003458 branch page_exit ,timeout 
+0x20fe 003459 call fetch_page_bt_adr 
+0x20ff 003460 arg param_rf_setup ,timeup 
+0x2100 003461 until clkn_rt ,meet 
+:      003462 page_rx_restart:
+0x2101 003463 bpatch patch02_5 ,mem_patch02 
+0x2102 003464 fetch 4 ,mem_page_clk 
+0x2103 003465 iforce bt_clk 
+0x2104 003466 increase 1 ,pdata 
+0x2105 003467 store 4 ,mem_page_clk 
+0x2106 003468 isolate1 mark_page_trainb ,mark 
+0x2107 003469 setflag true ,2 ,freq_mode 
+0x2108 003470 compare 0x00 ,bt_clk ,0x02 
+0x2109 003471 nbranch page_receive ,true 
+0x210a 003472 fetch 1 ,mem_page_transmit 
+0x210b 003473 increase 1 ,pdata 
+0x210c 003474 store 1 ,mem_page_transmit 
+0x210d 003475 call tx_radio_freq 
+0x210e 003476 call start_transmitter 
+0x210f 003477 call start_tx_native 
+0x2110 003478 call send_access_word 
+0x2111 003479 call end_of_packet 
+0x2112 003480 call page_check_train 
+0x2113 003481 branch page_restart 
+:      003482 page_exit:
+0x2114 003483 bpatch patch02_6 ,mem_patch02 
+0x2115 003484 disable master 
+0x2116 003485 fetch 2 ,mem_page_interval 
+0x2117 003486 rtn blank 
+0x2118 003487 force page_interval_timer ,queue 
+0x2119 003488 branch timer_init 
+:      003490 page_check_train:
+0x211a 003491 bpatch patch02_7 ,mem_patch02 
+0x211b 003492 fetch 1 ,mem_nfreq_index_page 
+0x211c 003493 increase -1 ,pdata 
+0x211d 003494 store 1 ,mem_nfreq_index_page 
+0x211e 003495 rtn positive 
+0x211f 003496 jam 31 ,mem_nfreq_index_page 
+0x2120 003497 fetch 1 ,mem_npage_index 
+0x2121 003498 increase -1 ,pdata 
+0x2122 003499 store 1 ,mem_npage_index 
+0x2123 003500 rtn positive 
+0x2124 003501 setflip mark_page_trainb ,mark 
+0x2125 003502 fetch 1 ,mem_npage 
+0x2126 003503 store 1 ,mem_npage_index 
+0x2127 003504 rtn 
+:      003506 page_receive:
+0x2128 003507 bpatch patch03_0 ,mem_patch03 
+0x2129 003508 call rx_radio_freq 
+0x212a 003509 call start_rx_native 
+0x212b 003510 call start_receiver 
+0x212c 003511 call wait_access_clkn_rt 
+0x212d 003512 branch page_sync ,sync 
+0x212e 003513 call page_check_train 
+0x212f 003514 branch page_rx_restart 
+:      003515 page_sync:
+0x2130 003516 call end_of_packet 
+0x2131 003517 fetch 1 ,mem_page_rcv 
+0x2132 003518 increase 1 ,pdata 
+0x2133 003519 store 1 ,mem_page_rcv 
+0x2134 003520 force 0 ,stop_watch 
+0x2135 003521 fetch 4 ,mem_page_clk 
+:      003522 page_send_fhs:
+0x2136 003523 bpatch patch03_1 ,mem_patch03 
+0x2137 003524 call rf_setup_time_master_slot 
+0x2138 003525 call fetch_page_bt_adr 
+0x2139 003526 increase 1 ,n_tx_slot 
+:      003527 page_send_fhs_continue:
+0x213a 003528 and_into 0x1fd ,bt_clk 
+0x213b 003529 and_into 0x1fc ,freq_mode 
+0x213c 003530 call tx_radio_freq 
+0x213d 003531 call start_transmitter 
+0x213e 003532 call start_tx_native 
+0x213f 003533 call send_access_word 
+0x2140 003534 deposit clkn_bt 
+0x2141 003535 store 4 ,mem_clkn_bt 
+0x2142 003536 force 0 ,am_addr 
+0x2143 003537 force type_fhs ,type 
+0x2144 003538 call scan_mode_whiten 
+0x2145 003539 call transmit_packet_whitened 
+:      003540 page_wait_fhs_reply:
+0x2146 003541 bpatch patch03_2 ,mem_patch03 
+0x2147 003542 call rf_setup_time_slave_slot 
+0x2148 003543 or_into 0x02 ,bt_clk 
+0x2149 003544 and_into 0x1fc ,freq_mode 
+0x214a 003545 call rx_radio_freq 
+0x214b 003546 call start_rx_native 
+0x214c 003547 call start_receiver 
+0x214d 003548 call wait_access_clkn_rt 
+0x214e 003549 call end_of_packet ,sync 
+0x214f 003550 branch page_wait_fhs_reply_ok ,sync 
+0x2150 003551 fetch 1 ,mem_fhs_wait_counter 
+0x2151 003552 branch page_restart ,blank 
+0x2152 003553 increase -1 ,pdata 
+0x2153 003554 store 1 ,mem_fhs_wait_counter 
+0x2154 003555 branch page_send_fhs 
+:      003557 page_wait_fhs_reply_ok:
+0x2155 003558 bpatch patch03_3 ,mem_patch03 
+0x2156 003559 fetch 1 ,mem_page_rcv_fhs 
+0x2157 003560 increase 1 ,pdata 
+0x2158 003561 store 1 ,mem_page_rcv_fhs 
+0x2159 003562 call prepare_newconn 
+:      003563 master_newconn_loop:
+0x215a 003564 call master_newconn_once 
+0x215b 003565 branch newconn_poll_responded ,sync 
+0x215c 003566 call new_conn_timeout 
+0x215d 003567 nbranch master_newconn_loop ,blank 
+0x215e 003568 branch page_restart 
+:      003570 newconn_poll_responded:
+0x215f 003571 bpatch patch03_4 ,mem_patch03 
+0x2160 003572 fetch 1 ,mem_state 
+0x2161 003573 set0 state_inpage ,pdata 
+0x2162 003574 store 1 ,mem_state 
+0x2163 003575 call newconn_init 
+0x2164 003576 disable master 
+0x2165 003577 rtn 
+:      003580 master_dispatch:
+0x2166 003581 bpatch patch03_5 ,mem_patch03 
+0x2167 003582 enable master 
+0x2168 003583 enable clknt 
+0x2169 003584 call role_switch_master 
+0x216a 003585 rtn user 
+0x216b 003586 call check_bt_disabled 
+0x216c 003587 call rf_setup_time_master_slot 
+0x216d 003588 add clkn_bt ,1 ,bt_clk 
+0x216e 003589 call fetch_self_bt_adr 
+0x216f 003590 force 0x03 ,freq_mode 
+0x2170 003591 call scheduler_tx_l2cap_pkt 
+0x2171 003592 call prepare_tx 
+0x2172 003593 call tx_radio_freq 
+0x2173 003594 call start_transmitter 
+0x2174 003595 call start_tx_native 
+0x2175 003596 call send_access_word 
+0x2176 003597 call transmit_packet 
+:      003598 master_loop:
+0x2177 003599 bpatch patch03_6 ,mem_patch03 
+0x2178 003600 call parse_lmp 
+0x2179 003601 call master_conn_recv_packet 
+0x217a 003602 nbranch master_notmatch ,match 
+0x217b 003603 call supervision_flush 
+0x217c 003604 call parse_l2cap 
+0x217d 003605 fetch 1 ,mem_master_rcvcnt 
+0x217e 003606 increase 1 ,pdata 
+0x217f 003607 store 1 ,mem_master_rcvcnt 
+:      003608 master_notmatch:
+0x2180 003609 bpatch patch03_7 ,mem_patch03 
+0x2181 003610 call scheduler_process 
+0x2182 003611 call check_master_disconnect 
+0x2183 003612 nrtn master 
+0x2184 003613 call check_attempt 
+0x2185 003614 nbranch master_attempt ,blank 
+:      003615 master_exit:
+0x2186 003616 disable master 
+0x2187 003617 rtn 
+:      003619 master_attempt:
+0x2188 003620 call prepare_tx 
+0x2189 003621 call master_conn_send_packet 
+0x218a 003622 branch master_loop 
+:      003625 check_master_disconnect:
+0x218b 003626 branch check_master_match ,match 
+0x218c 003627 call supervision_update 
+0x218d 003628 branch master_disconnect ,positive 
+:      003629 check_master_match:
+0x218e 003630 call check_disconnect_timeout 
+0x218f 003631 nbranch master_disconnect ,user 
+0x2190 003632 fetch 1 ,mem_state_map 
+0x2191 003633 rtnbit0 smap_name_req 
+0x2192 003634 rtnbit1 smap_name_res 
+0x2193 003635 fetch 1 ,mem_op 
+0x2194 003636 rtnbit1 op_disconn 
+0x2195 003637 call conn_timer_expired 
+0x2196 003638 nrtn blank 
+0x2197 003639 fetch 1 ,mem_nameres_cnt 
+0x2198 003640 increase -1 ,pdata 
+0x2199 003641 store 1 ,mem_nameres_cnt 
+0x219a 003642 nrtn blank 
+0x219b 003643 branch lmp_disconnect 
+:      003645 master_disconnect:
+0x219c 003646 bpatch patch04_0 ,mem_patch04 
+0x219d 003647 call quit_connection 
+0x219e 003648 disable master 
+0x219f 003649 fetch 1 ,mem_state_map 
+0x21a0 003650 bbit1 smap_name_req ,master_name_disconnect 
+0x21a1 003651 rtn 
+:      003653 master_name_disconnect:
+0x21a2 003654 fetch 1 ,mem_state_map 
+0x21a3 003655 rtnbit1 smap_name_res 
+:      003656 master_name_error:
+0x21a4 003657 arg mem_tmp_buffer ,contw 
+0x21a5 003658 arg 8 ,loopcnt 
+0x21a6 003659 branch memset0 
+:      003661 check_disconnect_timeout:
+0x21a7 003662 bpatch patch04_1 ,mem_patch04 
+0x21a8 003663 enable user 
+0x21a9 003664 fetch 1 ,mem_op 
+0x21aa 003665 rtnbit0 op_disconn 
+0x21ab 003666 call conn_timer_expired 
+0x21ac 003667 nrtn blank 
+0x21ad 003668 branch disable_user 
+:      003670 conn_timer_expired:
+0x21ae 003671 fetch 1 ,mem_conn_timer 
+0x21af 003672 increase -1 ,pdata 
+0x21b0 003673 store 1 ,mem_conn_timer 
+0x21b1 003674 rtn 
+:      003676 linkkey_ready:
+0x21b2 003677 bpatch patch04_2 ,mem_patch04 
+0x21b3 003678 fetch 1 ,mem_state 
+0x21b4 003679 bbit1 state_linkkey ,linkkey_set 
+0x21b5 003680 fetch 1 ,mem_pairing_auth 
+0x21b6 003681 branch linkkey_set ,blank 
+0x21b7 003682 jam defalt_pairing_auth ,mem_pairing_auth 
+0x21b8 003683 jam bt_evt_linkkey_generate ,mem_fifo_temp 
+0x21b9 003684 call ui_ipc_send_event 
+0x21ba 003685 branch linkkey_set 
+:      003686 linkkey_set:
+0x21bb 003687 bpatch patch04_3 ,mem_patch04 
+0x21bc 003688 call context_traverse_linkkey 
+0x21bd 003689 fetch 1 ,mem_state 
+0x21be 003690 set1 state_linkkey ,pdata 
+0x21bf 003691 store 1 ,mem_state 
+0x21c0 003692 jam 1 ,mem_link_key_exists 
+0x21c1 003693 fetch 1 ,mem_conn_sm 
+0x21c2 003694 bne conn_sm_pairing ,linkkey_set_continue 
+:      003695 linkkey_set_continue:
+0x21c3 003696 rtn 
+:      003698 generate_linkkey_continue:
+0x21c4 003699 jam pairing_auth ,mem_pairing_auth 
+:      003700 clear_linkstate:
+0x21c5 003701 fetch 1 ,mem_state 
+0x21c6 003702 set0 state_linkkey ,pdata 
+0x21c7 003703 store 1 ,mem_state 
+0x21c8 003704 rtn 
+:      003708 role_switch_check:
+0x21c9 003709 bpatch patch04_4 ,mem_patch04 
+0x21ca 003710 disable user 
+0x21cb 003711 fetch 2 ,mem_tsniff 
+0x21cc 003712 arg 0xffff ,temp 
+0x21cd 003713 isub temp ,null 
+0x21ce 003714 nrtn zero 
+0x21cf 003715 fetch 4 ,mem_sniff_anchor 
+0x21d0 003716 branch role_switch_clkn ,clknt 
+0x21d1 003717 isub clke_bt ,pdata 
+0x21d2 003718 branch role_switch_clke 
+:      003719 role_switch_clkn:
+0x21d3 003720 isub clkn_bt ,pdata 
+:      003721 role_switch_clke:
+0x21d4 003722 sub pdata ,4 ,null 
+0x21d5 003723 nrtn positive 
+0x21d6 003724 force 0 ,pdata 
+0x21d7 003725 store 2 ,mem_tsniff 
+0x21d8 003726 branch enable_user 
+:      003730 role_switch_prepare:
+0x21d9 003731 copy pdata ,temp 
+0x21da 003732 bpatch patch04_5 ,mem_patch04 
+0x21db 003733 storet 4 ,mem_sniff_anchor 
+:      003734 role_switch_prepare0:
+0x21dc 003735 jam switch_flag_accept ,mem_switch_flag 
+0x21dd 003736 setarg 0xffff 
+0x21de 003737 store 2 ,mem_tsniff 
+0x21df 003738 jam 1 ,mem_sniff_attempt 
+0x21e0 003739 rtn 
+:      003742 role_switch_master:
+0x21e1 003743 bpatch patch04_6 ,mem_patch04 
+0x21e2 003744 call role_switch_check 
+0x21e3 003745 nrtn user 
+0x21e4 003746 disable user 
+0x21e5 003747 jam param_newconnto ,mem_newconnto_counter 
+0x21e6 003748 set0 mark_fhs_already_good ,mark 
+:      003749 roles_waitfhs_loop:
+0x21e7 003750 call rf_setup_time_master_slot 
+0x21e8 003751 call master_recv_packet 
+0x21e9 003752 bmark1 mark_fhs_already_good ,roles_replyto_fhs 
+0x21ea 003753 call new_conn_timeout 
+0x21eb 003754 nbranch roles_waitfhs_loop ,blank 
+:      003755 role_switch_fail_master:
+0x21ec 003756 bpatch patch04_7 ,mem_patch04 
+0x21ed 003757 disable user 
+0x21ee 003758 deposit clkn_bt 
+0x21ef 003759 store 4 ,mem_next_btclk 
+0x21f0 003760 enable clknt 
+0x21f1 003761 enable master 
+0x21f2 003762 jam bt_evt_switch_fail_master ,mem_fifo_temp 
+0x21f3 003763 branch ui_ipc_send_event 
+:      003765 roles_replyto_fhs:
+0x21f4 003766 bpatch patch05_0 ,mem_patch05 
+0x21f5 003767 call rf_setup_time_slave_slot 
+0x21f6 003768 arg type_id ,type 
+0x21f7 003769 call master_send_packet 
+0x21f8 003770 disable clknt 
+0x21f9 003771 disable master 
+0x21fa 003772 call apply_switch_clke 
+0x21fb 003773 call prepare_newconn 
+:      003774 roles_newconns_loop:
+0x21fc 003775 bpatch patch05_1 ,mem_patch05 
+0x21fd 003776 call slave_newconn_once 
+0x21fe 003777 branch roles_newconns_responded ,match 
+0x21ff 003778 call new_conn_timeout 
+0x2200 003779 nbranch roles_newconns_loop ,blank 
+0x2201 003780 branch role_switch_fail_master 
+:      003781 roles_newconns_responded:
+0x2202 003782 fetch 1 ,mem_mode 
+0x2203 003783 set0 mode_master ,pdata 
+0x2204 003784 store 1 ,mem_mode 
+0x2205 003785 call supervision_flush 
+0x2206 003786 call calc_clke_offset 
+0x2207 003787 enable user 
+0x2208 003788 jam bt_evt_switch_success_master ,mem_fifo_temp 
+0x2209 003789 branch ui_ipc_send_event 
+:      003794 context_load:
+0x220a 003795 bpatch patch05_2 ,mem_patch05 
+0x220b 003796 set1 mark_context ,mark 
+0x220c 003797 deposit rega 
+0x220d 003798 store 2 ,mem_context_ptr 
+0x220e 003799 force context_size ,loopcnt 
+0x220f 003800 arg mem_le_state ,contw 
+0x2210 003801 add rega ,coffset_mode ,contr 
+0x2211 003802 ifetch 1 ,contr 
+0x2212 003803 copy rega ,contr 
+0x2213 003804 bbit1 mode_le ,memcpy 
+0x2214 003805 arg mem_state ,contw 
+0x2215 003806 call memcpy 
+0x2216 003807 disable attempt 
+0x2217 003808 fetch 1 ,mem_amaddr 
+0x2218 003809 iforce am_addr 
+0x2219 003810 jam 1 ,mem_current_sniff_attempt 
+0x221a 003811 branch context_load_master ,master 
+0x221b 003812 jam 1 ,mem_current_sniff_attempt 
+:      003813 context_load_master:
+0x221c 003814 fetch 1 ,mem_state 
+0x221d 003815 rtnbit0 state_insniff 
+0x221e 003816 fetch 1 ,mem_sniff_attempt 
+0x221f 003817 store 1 ,mem_current_sniff_attempt 
+0x2220 003818 fetch 1 ,mem_sniff_timeout 
+0x2221 003819 store 1 ,mem_current_sniff_timeout 
+0x2222 003820 rtn 
+:      003822 context_save:
+0x2223 003823 bpatch patch05_3 ,mem_patch05 
+0x2224 003824 fetch 2 ,mem_context_ptr 
+0x2225 003825 iforce contw 
+0x2226 003826 force context_size ,loopcnt 
+0x2227 003827 arg mem_le_state ,contr 
+0x2228 003828 branch memcpy ,le 
+0x2229 003829 arg mem_state ,contr 
+0x222a 003830 branch memcpy 
+:      003834 context_get_next:
+0x222b 003835 arg context_num ,loopcnt 
+0x222c 003836 fetcht 1 ,mem_current_context 
+:      003837 context_get_next_loop:
+0x222d 003838 increase 1 ,temp 
+0x222e 003839 compare context_num ,temp ,0xff 
+0x222f 003840 nbranch context_get_next_cont ,true 
+0x2230 003841 arg 0 ,temp 
+:      003842 context_get_next_cont:
+0x2231 003843 storet 1 ,mem_current_context 
+0x2232 003844 mul32 temp ,context_size ,pdata 
+0x2233 003845 arg mem_context ,rega 
+0x2234 003846 iadd rega ,rega 
+0x2235 003847 ifetch 1 ,rega 
+0x2236 003848 bbit1 state_insniff ,context_get_next_sniff 
+0x2237 003849 rtnbit1 state_inconn 
+0x2238 003850 rtnbit1 state_inpage 
+:      003851 context_get_next_sniff:
+0x2239 003852 loop context_get_next_loop 
+0x223a 003853 rtn 
+:      003855 context_new:
+0x223b 003856 bpatch patch05_4 ,mem_patch05 
+0x223c 003857 arg context_search_empty ,regc 
+0x223d 003858 call context_search 
+0x223e 003859 nrtn zero 
+0x223f 003860 deposit rega 
+0x2240 003861 store 2 ,mem_context_ptr 
+0x2241 003862 force 0 ,null 
+0x2242 003863 rtn 
+:      003867 context_check_all_wack:
+0x2243 003868 call check_esco_amaddr 
+0x2244 003869 branch context_check_esco_wack ,true 
+0x2245 003870 fetch 2 ,mem_context_ptr 
+0x2246 003871 add pdata ,coffset_arq ,contw 
+0x2247 003872 fetch 1 ,mem_arq 
+0x2248 003873 istore 1 ,contw 
+0x2249 003874 arg context_check_a_wack ,regc 
+0x224a 003875 branch context_search 
+:      003877 context_check_esco_wack:
+0x224b 003878 fetch 1 ,mem_arq 
+0x224c 003879 isolate1 wack ,pdata 
+0x224d 003880 branch context_esco_wack ,true 
+0x224e 003881 force 1 ,null 
+0x224f 003882 rtn 
+:      003883 context_esco_wack:
+0x2250 003884 force 0 ,null 
+0x2251 003885 rtn 
+:      003888 context_check_idle:
+0x2252 003889 arg context_check_inconn ,regc 
+0x2253 003890 branch context_search 
+:      003892 context_traverse_linkkey:
+0x2254 003893 fetcht 2 ,mem_context_ptr 
+0x2255 003894 arg context_traverse_clearkey ,regc 
+0x2256 003895 branch context_search 
+:      003899 context_search_conn_handle:
+0x2257 003900 fetcht 1 ,mem_hci_conn_handle 
+:      003901 context_search_conn_handle2:
+0x2258 003902 arg context_search_handle ,regc 
+0x2259 003903 branch context_search 
+:      003905 context_search_plap:
+0x225a 003906 bpatch patch05_5 ,mem_patch05 
+0x225b 003907 fetcht 6 ,mem_hci_plap 
+:      003908 context_search_plap2:
+0x225c 003909 arg context_search_lap ,regc 
+0x225d 003910 branch context_search 
+:      003912 context_search_insniff:
+0x225e 003913 arg context_search_sniff ,regc 
+0x225f 003914 branch context_search 
+:      003916 context_search_sniff_window:
+0x2260 003917 arg context_search_window ,regc 
+:      003918 context_search:
+0x2261 003919 bpatch patch05_6 ,mem_patch05 
+0x2262 003920 arg mem_context ,rega 
+0x2263 003921 arg context_num ,loopcnt 
+:      003922 context_search_loop:
+0x2264 003923 ifetch 1 ,rega 
+0x2265 003924 copy regc ,pc 
+:      003925 context_search_next:
+0x2266 003926 increase context_size ,rega 
+0x2267 003927 loop context_search_loop 
+0x2268 003928 force 1 ,null 
+0x2269 003929 rtn 
+:      003931 context_search_empty:
+0x226a 003932 bbit1 state_inconn ,context_search_next 
+0x226b 003933 bbit1 state_inpage ,context_search_next 
+0x226c 003934 force 0 ,null 
+0x226d 003935 rtn 
+:      003937 context_search_lap:
+0x226e 003938 bbit1 state_inpage ,context_search_lap_cont 
+0x226f 003939 bbit0 state_inconn ,context_search_next 
+:      003940 context_search_lap_cont:
+0x2270 003941 add rega ,coffset_plap ,contr 
+0x2271 003942 ifetch 6 ,contr 
+0x2272 003943 isub temp ,null 
+0x2273 003944 rtn zero 
+0x2274 003945 branch context_search_next 
+:      003947 context_search_handle:
+0x2275 003948 bbit0 state_inconn ,context_search_next 
+0x2276 003949 add rega ,coffset_conn_handle ,contr 
+0x2277 003950 ifetch 1 ,contr 
+0x2278 003951 isub temp ,null 
+0x2279 003952 rtn zero 
+0x227a 003953 branch context_search_next 
+:      003955 context_search_sniff:
+0x227b 003956 bbit0 state_insniff ,context_search_next 
+:      003957 context_search_sniff_loop:
+0x227c 003958 call context_get_anchor 
+0x227d 003959 call sign_pdata_temp 
+0x227e 003960 isub temp ,pdata 
+0x227f 003961 increase 1 ,pdata 
+0x2280 003962 branch context_search_sniff_miss ,positive 
+0x2281 003963 copy contr ,regb 
+0x2282 003964 store 9 ,mem_temp 
+0x2283 003965 fetch 1 ,mem_le_sc_calc 
+0x2284 003966 nbranch context_search_sniff_sc ,blank 
+0x2285 003967 fetch 9 ,mem_temp 
+0x2286 003968 copy regb ,contr 
+0x2287 003969 increase 5 ,pdata 
+0x2288 003970 branch context_search_meet1 
+:      003971 context_search_sniff_sc:
+0x2289 003972 fetch 9 ,mem_temp 
+0x228a 003973 copy regb ,contr 
+0x228b 003974 increase 20 ,pdata 
+:      003975 context_search_meet1:
+0x228c 003976 nbranch context_search_next ,positive 
+:      003977 context_search_meet:
+0x228d 003978 copy temp ,bt_clk 
+0x228e 003979 call context_next_anchor 
+0x228f 003980 force 0 ,null 
+0x2290 003981 rtn 
+:      003984 context_search_sniff_miss:
+0x2291 003985 iforce regb 
+0x2292 003986 add rega ,coffset_tsniff ,contr 
+0x2293 003987 ifetch 2 ,contr 
+0x2294 003988 branch context_search_meet ,blank 
+0x2295 003989 call context_next_anchor 
+0x2296 003990 branch context_search_sniff_loop 
+:      003992 sign_pdata_temp:
+0x2297 003993 rshift16 pdata ,timeup 
+0x2298 003994 rshift8 timeup ,timeup 
+0x2299 003995 branch sign_pdata_temp_p0 ,zero 
+0x229a 003996 compare 0xf ,timeup ,0xf 
+0x229b 003997 nrtn true 
+0x229c 003998 rshift16 temp ,timeup 
+0x229d 003999 rshift8 timeup ,timeup 
+0x229e 004000 nrtn zero 
+0x229f 004001 set1 28 ,temp 
+0x22a0 004002 rtn 
+:      004003 sign_pdata_temp_p0:
+0x22a1 004004 rshift16 temp ,timeup 
+0x22a2 004005 rshift8 timeup ,timeup 
+0x22a3 004006 compare 0xf ,timeup ,0xf 
+0x22a4 004007 nrtn true 
+0x22a5 004008 set1 28 ,pdata 
+0x22a6 004009 rtn 
+:      004011 context_check_inconn:
+0x22a7 004012 bbit0 state_inconn ,context_search_next 
+0x22a8 004013 force 0 ,null 
+0x22a9 004014 rtn 
+:      004016 context_check_a_wack:
+0x22aa 004017 bbit0 state_inconn ,context_search_next 
+0x22ab 004018 add rega ,coffset_mode ,contr 
+0x22ac 004019 ifetch 1 ,contr 
+0x22ad 004020 bbit1 mode_le ,context_search_next 
+0x22ae 004021 add rega ,coffset_arq ,contr 
+0x22af 004022 ifetch 1 ,contr 
+0x22b0 004023 bbit0 wack ,context_search_next 
+0x22b1 004024 force 0 ,null 
+0x22b2 004025 rtn 
+:      004027 context_get_anchor:
+0x22b3 004028 add rega ,coffset_mode ,contr 
+0x22b4 004029 ifetcht 1 ,contr 
+0x22b5 004030 deposit clkn_bt 
+0x22b6 004031 isolate1 mode_master ,temp 
+0x22b7 004032 add rega ,coffset_sniff_anchor ,contr 
+0x22b8 004033 ifetcht 4 ,contr 
+0x22b9 004034 rtn true 
+0x22ba 004035 add rega ,coffset_clk_offset ,contr 
+0x22bb 004036 ifetch 6 ,contr 
+0x22bc 004037 call calc_clke2 
+0x22bd 004038 deposit clke_bt 
+0x22be 004039 rtn 
+:      004041 context_next_anchor:
+0x22bf 004042 add rega ,coffset_tsniff ,contr 
+0x22c0 004043 add rega ,coffset_sniff_anchor ,contw 
+0x22c1 004044 ifetch 2 ,contr 
+0x22c2 004045 iadd temp ,timeup 
+0x22c3 004046 deposit timeup 
+0x22c4 004047 istore 4 ,contw 
+0x22c5 004048 branch le_context_nexthop 
+:      004051 context_search_window:
+0x22c6 004052 bbit0 state_insniff ,context_search_next 
+0x22c7 004053 call context_get_anchor 
+0x22c8 004054 iadd stop_watch ,pdata 
+0x22c9 004055 iadd stop_watch ,pdata 
+0x22ca 004056 iadd queue ,pdata 
+0x22cb 004057 isub temp ,null 
+0x22cc 004058 nbranch context_search_next ,positive 
+0x22cd 004059 force 0 ,null 
+0x22ce 004060 rtn 
+:      004062 context_traverse_clearkey:
+0x22cf 004063 bbit0 state_inconn ,context_search_next 
+0x22d0 004064 deposit temp 
+0x22d1 004065 isub rega ,null 
+0x22d2 004066 branch context_search_next ,null 
+0x22d3 004067 add rega ,coffset_mode ,contr 
+0x22d4 004068 ifetch 1 ,contr 
+0x22d5 004069 bbit1 mode_le ,context_search_next 
+0x22d6 004070 ifetch 1 ,rega 
+0x22d7 004071 set0 state_linkkey ,pdata 
+0x22d8 004072 istore 1 ,rega 
+0x22d9 004073 branch context_search_next 
+:      004076 master_conn_send_packet:
+0x22da 004077 bpatch patch05_7 ,mem_patch05 
+0x22db 004078 call rf_setup_time_master_slot 
+:      004079 master_send_packet:
+0x22dc 004080 add clkn_bt ,1 ,bt_clk 
+0x22dd 004081 call fetch_self_bt_adr 
+0x22de 004082 force 0x03 ,freq_mode 
+0x22df 004083 call tx_radio_freq 
+0x22e0 004084 call start_transmitter 
+0x22e1 004085 call start_tx_native 
+0x22e2 004086 call send_access_word 
+0x22e3 004087 branch transmit_packet 
+:      004089 master_conn_recv_packet:
+0x22e4 004090 bpatch patch06_0 ,mem_patch06 
+0x22e5 004091 call rf_setup_time_slave_slot 
+:      004092 master_recv_packet:
+0x22e6 004093 add clkn_bt ,1 ,bt_clk 
+0x22e7 004094 call fetch_self_bt_adr 
+0x22e8 004095 force 0x03 ,freq_mode 
+0x22e9 004096 call rx_radio_freq 
+0x22ea 004097 call init_rx_packet_flags 
+0x22eb 004098 call prep_crypt 
+0x22ec 004099 call start_rx_native 
+0x22ed 004100 call start_receiver 
+:      004101 master_rx_conn_finish_packet:
+0x22ee 004102 call wait_access_clkn_rt 
+0x22ef 004103 nrtn sync 
+0x22f0 004104 call save_rssi 
+0x22f1 004105 branch receive_packet 
+:      004109 master_newconn_once:
+0x22f2 004110 bpatch patch06_1 ,mem_patch06 
+0x22f3 004111 fetch 1 ,mem_fhs_am_addr 
+0x22f4 004112 iforce am_addr 
+0x22f5 004113 force type_poll ,type 
+0x22f6 004114 call master_conn_send_packet 
+0x22f7 004115 branch master_conn_recv_packet 
+:      004126 inquiry_scan_dispatch:
+0x22f8 004127 fetch 1 ,mem_scan_mode 
+0x22f9 004128 rtnbit0 inq_scan_mode 
+0x22fa 004129 force iscan_interval_timer ,queue 
+0x22fb 004130 call timer_check 
+0x22fc 004131 nrtn blank 
+0x22fd 004132 fetcht 2 ,mem_iscan_window 
+0x22fe 004133 force 4 ,queue 
+0x22ff 004134 call sniff_check_window 
+0x2300 004135 rtn user 
+0x2301 004136 call inquiry_scan_start 
+0x2302 004137 force iscan_interval_timer ,queue 
+0x2303 004138 fetch 2 ,mem_iscan_interval 
+0x2304 004139 nbranch timer_init ,sync 
+0x2305 004140 random pdata 
+0x2306 004141 iand mask3ff ,pdata 
+0x2307 004142 branch timer_init 
+:      004145 inquiry_scan_start:
+0x2308 004146 bpatch patch06_2 ,mem_patch06 
+0x2309 004147 jam 0 ,mem_fhs_am_addr 
+0x230a 004148 disable clknt 
+0x230b 004149 disable attempt 
+0x230c 004150 call afh_clear 
+0x230d 004151 and clkn_bt ,0x1fc ,bt_clk 
+0x230e 004152 force 0x01 ,freq_mode 
+0x230f 004153 call fetch_giac 
+0x2310 004154 call rx_radio_freq 
+0x2311 004155 setflip mark_inquiry_state ,mark 
+0x2312 004156 fetch 1 ,mem_inquiryscan_waitcnt 
+0x2313 004157 increase 1 ,pdata 
+0x2314 004158 store 1 ,mem_inquiryscan_waitcnt 
+0x2315 004159 call fetch_diac 
+0x2316 004160 call start_receiver 
+0x2317 004161 call wait_access_forever 
+0x2318 004162 nrtn sync 
+0x2319 004163 bpatch patch06_3 ,mem_patch06 
+0x231a 004164 force 0 ,stop_watch 
+0x231b 004165 call shutdown_radio 
+0x231c 004166 fetch 1 ,mem_inquiryscan_rcvcnt 
+0x231d 004167 increase 1 ,pdata 
+0x231e 004168 store 1 ,mem_inquiryscan_rcvcnt 
+0x231f 004169 call fetch_giac 
+0x2320 004170 call rf_setup_time_slave_slot 
+0x2321 004171 or_into 0x002 ,bt_clk 
+0x2322 004172 force 0x01 ,freq_mode 
+0x2323 004173 call tx_radio_freq 
+0x2324 004174 call fetch_diac 
+0x2325 004175 call start_transmitter 
+0x2326 004176 call start_tx_external 
+0x2327 004177 deposit clkn_bt 
+0x2328 004178 store 4 ,mem_clkn_bt 
+0x2329 004179 call send_access_word 
+0x232a 004180 force type_fhs ,type 
+0x232b 004181 force 0 ,am_addr 
+0x232c 004182 call scan_mode_whiten 
+0x232d 004183 call transmit_packet_whitened 
+0x232e 004184 call send_eir 
+0x232f 004185 and_into 0x1fd ,bt_clk 
+0x2330 004186 increase 1 ,n_tx_slot 
+0x2331 004187 rtn 
+:      004189 send_eir:
+0x2332 004190 bpatch patch06_4 ,mem_patch06 
+0x2333 004191 fetch 1 ,mem_eir_enable 
+0x2334 004192 rtn blank 
+0x2335 004193 arg mem_eir ,contw 
+0x2336 004194 fetch 1 ,mem_local_name_length 
+0x2337 004195 copy pdata ,loopcnt 
+0x2338 004196 increase 1 ,pdata 
+0x2339 004197 istore 1 ,contw 
+0x233a 004198 copy contw ,temp 
+0x233b 004199 increase 1 ,pdata 
+0x233c 004200 store 2 ,mem_tx_len 
+0x233d 004201 copy temp ,contw 
+0x233e 004202 setarg 0x09 
+0x233f 004203 istore 1 ,contw 
+0x2340 004204 arg mem_local_name ,contr 
+0x2341 004205 call memcpy 
+0x2342 004207 arg mem_all_uuid_128bits ,regc 
+0x2343 004208 arg 4 ,loopcnt 
+0x2344 004209 call get_all_uuid 
+0x2345 004210 arg mem_all_uuid_16bits ,regc 
+0x2346 004211 arg 1 ,loopcnt 
+0x2347 004212 call get_all_uuid 
+0x2348 004214 force type_dm3 ,type 
+0x2349 004215 jam 2 ,mem_tx_lch 
+0x234a 004216 setarg mem_eir 
+0x234b 004217 store 2 ,mem_txptr 
+0x234c 004218 call rf_setup_time_slave_slot 
+0x234d 004219 call tx_radio_freq 
+0x234e 004220 call start_transmitter 
+0x234f 004221 call start_tx_external 
+0x2350 004222 call send_access_word 
+0x2351 004223 call scan_mode_whiten 
+0x2352 004224 call transmit_packet_whitened 
+0x2353 004225 rtn 
+:      004228 get_all_uuid:
+0x2354 004229 copy contw ,temp 
+0x2355 004230 copy regc ,contr 
+0x2356 004231 ifetch 1 ,contr 
+0x2357 004232 rtn blank 
+:      004233 lshift_loop:
+0x2358 004234 lshift pdata ,pdata 
+0x2359 004235 loop lshift_loop 
+0x235a 004236 copy pdata ,rega 
+0x235b 004237 increase 2 ,pdata 
+0x235c 004238 copy pdata ,queue 
+0x235d 004239 fetch 2 ,mem_tx_len 
+0x235e 004240 iadd queue ,pdata 
+0x235f 004241 store 2 ,mem_tx_len 
+0x2360 004242 copy temp ,contw 
+0x2361 004243 copy rega ,pdata 
+0x2362 004244 increase 1 ,pdata 
+0x2363 004245 istore 1 ,contw 
+0x2364 004246 copy regc ,contr 
+0x2365 004247 ifetch 1 ,contr 
+0x2366 004248 ifetch 1 ,contr 
+0x2367 004249 istore 1 ,contw 
+0x2368 004250 copy rega ,loopcnt 
+0x2369 004251 branch memcpy 
+:      004257 page_scan_dispatch:
+0x236a 004258 fetch 1 ,mem_scan_mode 
+0x236b 004259 rtnbit0 page_scan_mode 
+0x236c 004260 force pscan_interval_timer ,queue 
+0x236d 004261 call timer_check 
+0x236e 004262 nrtn blank 
+0x236f 004263 fetcht 2 ,mem_pscan_window 
+0x2370 004264 force 40 ,queue 
+0x2371 004265 call sniff_check_window 
+0x2372 004266 rtn user 
+0x2373 004267 force 0 ,am_addr 
+0x2374 004268 jam param_pagerespto ,mem_fhs_wait_counter 
+0x2375 004269 set0 mark_fhs_already_good ,mark 
+0x2376 004270 call page_scan_start 
+0x2377 004271 force pscan_interval_timer ,queue 
+0x2378 004272 fetch 2 ,mem_pscan_interval 
+0x2379 004273 branch timer_init 
+:      004276 page_scan_start:
+0x237a 004277 bpatch patch06_5 ,mem_patch06 
+0x237b 004278 disable clknt 
+0x237c 004279 call afh_clear 
+0x237d 004280 fetch 1 ,mem_pagescan_waitcnt 
+0x237e 004281 increase 1 ,pdata 
+0x237f 004282 store 1 ,mem_pagescan_waitcnt 
+0x2380 004283 force 0 ,n_tx_slot 
+0x2381 004284 call fetch_self_bt_adr 
+0x2382 004285 add clkn_bt ,1 ,bt_clk 
+0x2383 004286 force 0x02 ,freq_mode 
+0x2384 004287 bpatch patch06_6 ,mem_patch06 
+0x2385 004288 call rx_radio_freq 
+0x2386 004289 call start_receiver 
+0x2387 004290 call wait_access_forever 
+0x2388 004291 nrtn sync 
+0x2389 004292 call shutdown_radio 
+0x238a 004293 fetch 1 ,mem_pagescan_rcvcnt 
+0x238b 004294 increase 1 ,pdata 
+0x238c 004295 store 1 ,mem_pagescan_rcvcnt 
+0x238d 004296 force 0 ,stop_watch 
+0x238e 004297 call rf_setup_time_slave_slot 
+0x238f 004298 or_into 0x002 ,bt_clk 
+0x2390 004299 force 0x01 ,freq_mode 
+0x2391 004300 call tx_radio_freq 
+0x2392 004301 call start_transmitter 
+0x2393 004302 call start_tx_external 
+0x2394 004303 call send_access_word 
+0x2395 004304 call end_of_packet 
+0x2396 004305 force 0 ,am_addr 
+0x2397 004306 arg param_rf_setup ,timeup 
+0x2398 004307 until clke_rt ,meet 
+0x2399 004308 or_into 0x03 ,clke_bt 
+0x239a 004309 and_into 0x1fd ,bt_clk 
+:      004310 page_scan_wait_fhs_restart:
+0x239b 004311 bpatch patch06_7 ,mem_patch06 
+0x239c 004312 increase 1 ,n_tx_slot 
+0x239d 004313 call rx_radio_freq 
+0x239e 004314 call start_receiver 
+0x239f 004315 call wait_access_mhalfbnd 
+0x23a0 004316 nbranch page_scan_wait_fhs_again ,sync 
+0x23a1 004317 call scan_mode_whiten 
+0x23a2 004318 call receive_packet_whitened 
+0x23a3 004319 bmark1 mark_fhs_already_good ,page_scan_reply_to_fhs 
+:      004320 page_scan_wait_fhs_again:
+0x23a4 004321 bpatch patch07_0 ,mem_patch07 
+0x23a5 004322 fetch 1 ,mem_fhs_wait_counter 
+0x23a6 004323 rtn blank 
+0x23a7 004324 increase -1 ,pdata 
+0x23a8 004325 store 1 ,mem_fhs_wait_counter 
+0x23a9 004326 call rf_setup_time_master_slot 
+0x23aa 004327 branch page_scan_wait_fhs_restart 
+:      004330 page_scan_reply_to_fhs:
+0x23ab 004331 bpatch patch07_1 ,mem_patch07 
+0x23ac 004332 set0 1 ,clke_bt 
+0x23ad 004333 set1 0 ,clke_bt 
+0x23ae 004334 fetch 1 ,mem_pagescan_rcvfhscnt 
+0x23af 004335 increase 1 ,pdata 
+0x23b0 004336 store 1 ,mem_pagescan_rcvfhscnt 
+0x23b1 004337 call rf_setup_time_slave_slot 
+0x23b2 004338 or_into 0x02 ,bt_clk 
+0x23b3 004339 call tx_radio_freq 
+0x23b4 004340 call start_transmitter 
+0x23b5 004341 call start_tx_external 
+0x23b6 004342 call send_access_word 
+0x23b7 004343 call end_of_packet 
+:      004344 slave_apply_clke_bt:
+0x23b8 004345 compare 0x03 ,clke_bt ,0x03 
+0x23b9 004346 branch slave_apply_clke_bt_now ,true 
+0x23ba 004347 until null ,mhalfbnd 
+0x23bb 004348 branch slave_apply_clke_bt 
+:      004349 slave_apply_clke_bt_now:
+0x23bc 004350 fetch 4 ,mem_clke_bt 
+0x23bd 004351 or_into 0x03 ,pdata 
+0x23be 004352 icopy clke_bt 
+:      004354 start_slave_connection:
+0x23bf 004355 bpatch patch07_2 ,mem_patch07 
+0x23c0 004356 fetch 6 ,extm_lap 
+0x23c1 004357 store 6 ,mem_plap 
+0x23c2 004358 call prepare_newconn 
+:      004359 slave_newconn_loop:
+0x23c3 004360 call slave_newconn_once 
+0x23c4 004361 branch sconn_successful ,match 
+0x23c5 004362 call new_conn_timeout 
+0x23c6 004363 nbranch slave_newconn_loop ,blank 
+0x23c7 004364 rtn 
+:      004367 sconn_successful:
+0x23c8 004368 bpatch patch07_3 ,mem_patch07 
+0x23c9 004369 call newconn_init 
+0x23ca 004370 call context_new 
+0x23cb 004371 nrtn zero 
+0x23cc 004372 jam 0 ,mem_mode 
+0x23cd 004373 call calc_clke_offset 
+0x23ce 004374 branch context_save 
+:      004379 slave_dispatch:
+0x23cf 004380 bpatch patch07_4 ,mem_patch07 
+0x23d0 004381 call calc_clke 
+0x23d1 004382 call role_switch_slave 
+0x23d2 004383 rtn user 
+:      004384 slave_loop:
+0x23d3 004385 bpatch patch07_5 ,mem_patch07 
+0x23d4 004386 call check_bt_disabled 
+0x23d5 004387 call scheduler_process 
+0x23d6 004388 call slave_conn_recv_packet 
+0x23d7 004389 nbranch slave_notmatch ,match 
+0x23d8 004390 call supervision_flush 
+0x23d9 004391 call scheduler_tx_l2cap_pkt 
+0x23da 004392 call prepare_tx 
+0x23db 004393 call slave_conn_send_packet 
+0x23dc 004394 call parse_l2cap 
+0x23dd 004395 call parse_lmp 
+0x23de 004396 fetch 1 ,mem_slave_rcvcnt 
+0x23df 004397 increase 1 ,pdata 
+0x23e0 004398 store 1 ,mem_slave_rcvcnt 
+0x23e1 004399 call calc_clke_offset 
+:      004400 slave_notmatch:
+0x23e2 004401 bpatch patch07_6 ,mem_patch07 
+0x23e3 004402 call lpm_set_mult 
+0x23e4 004403 call supervision_update 
+0x23e5 004404 branch slave_disconnect ,positive 
+0x23e6 004405 call check_disconnect_timeout 
+0x23e7 004406 nbranch slave_disconnect ,user 
+0x23e8 004407 call check_attempt 
+0x23e9 004408 nbranch slave_loop ,blank 
+0x23ea 004409 rtn 
+:      004411 slave_disconnect:
+0x23eb 004412 bpatch patch07_7 ,mem_patch07 
+0x23ec 004413 jam 0 ,mem_tester_emulate 
+0x23ed 004414 jam 0 ,mem_debug_config 
+0x23ee 004415 call quit_connection 
+0x23ef 004416 set0 mark_testmode ,mark 
+0x23f0 004417 call test_enable_white 
+0x23f1 004418 fetch 1 ,mem_state 
+0x23f2 004419 rtn 
+:      004422 role_switch_slave:
+0x23f3 004423 bpatch patch08_0 ,mem_patch08 
+0x23f4 004424 call role_switch_check 
+0x23f5 004425 nrtn user 
+0x23f6 004426 copy am_addr ,temp 
+0x23f7 004427 call get_free_amaddr 
+0x23f8 004428 store 1 ,mem_fhs_am_addr 
+0x23f9 004429 copy temp ,am_addr 
+0x23fa 004430 jam param_newconnto ,mem_newconnto_counter 
+:      004431 roles_sendfhs_loop:
+0x23fb 004432 bpatch patch08_1 ,mem_patch08 
+0x23fc 004433 call rf_setup_time_master_slot 
+0x23fd 004434 force type_fhs ,type 
+0x23fe 004435 call slave_send_access 
+0x23ff 004436 deposit clkn_bt 
+0x2400 004437 store 4 ,mem_clkn_bt 
+0x2401 004438 call transmit_packet 
+0x2402 004439 call rf_setup_time_slave_slot 
+0x2403 004440 enable user3 
+0x2404 004441 call slave_receive_access 
+0x2405 004442 branch roles_got_fhs_reply ,sync 
+0x2406 004443 call shutdown_radio 
+0x2407 004444 call new_conn_timeout 
+0x2408 004445 nbranch roles_sendfhs_loop ,blank 
+0x2409 004446 rtnmark0 mark_accept_switch 
+0x240a 004447 jam lmp_slot_offset ,mem_lmo_opcode2 
+0x240b 004448 set1 mark_switch_initiated ,mark 
+0x240c 004449 rtn 
+:      004450 roles_got_fhs_reply:
+0x240d 004451 enable clknt 
+0x240e 004452 call prepare_newconn 
+0x240f 004453 call afh_clear 
+:      004454 roles_newconn_loop:
+0x2410 004455 bpatch patch08_2 ,mem_patch08 
+0x2411 004456 call master_newconn_once 
+0x2412 004457 branch roles_newconn_responded ,sync 
+0x2413 004458 call new_conn_timeout 
+0x2414 004459 nbranch roles_newconn_loop ,blank 
+0x2415 004460 disable clknt 
+0x2416 004461 deposit clke_bt 
+0x2417 004462 store 4 ,mem_next_btclk 
+0x2418 004463 rtn 
+:      004464 roles_newconn_responded:
+0x2419 004465 enable master 
+0x241a 004466 bmark0 mark_accept_switch ,roles_newconn_nolmp 
+0x241b 004467 set0 mark_accept_switch ,mark 
+0x241c 004468 jam lmp_accepted ,mem_lmo_opcode2 
+0x241d 004469 jam lmp_host_connection_req ,mem_lmi_opcode2 
+0x241e 004470 call tid_set_reply 
+:      004471 roles_newconn_nolmp:
+0x241f 004472 deposit am_addr 
+0x2420 004473 store 1 ,mem_amaddr 
+0x2421 004474 force 0 ,pdata 
+0x2422 004475 store 6 ,mem_clk_offset 
+0x2423 004476 fetch 1 ,mem_mode 
+0x2424 004477 set1 mode_master ,pdata 
+0x2425 004478 store 1 ,mem_mode 
+0x2426 004479 call supervision_flush 
+0x2427 004480 disable master 
+0x2428 004481 enable user 
+0x2429 004482 rtn 
+:      004486 init_rx_packet_flags:
+0x242a 004487 bpatch patch08_3 ,mem_patch08 
+0x242b 004488 disable match 
+0x242c 004489 set0 mark_loopback ,mark 
+0x242d 004490 set0 mark_am_addr_broadcast ,mark 
+0x242e 004491 set0 mark_longpacket ,mark 
+0x242f 004492 set0 mark_old_packet ,mark 
+0x2430 004493 fetch 1 ,mem_arq 
+0x2431 004494 set0 arqnx ,pdata 
+0x2432 004495 set1 flowx ,pdata 
+0x2433 004496 store 1 ,mem_arq 
+0x2434 004497 rtn 
+:      004499 prepare_newconn:
+0x2435 004500 bpatch patch08_4 ,mem_patch08 
+0x2436 004501 jam param_newconnto ,mem_newconnto_counter 
+0x2437 004502 jam param_newconn_arq ,mem_arq 
+0x2438 004503 fetch 2 ,mem_rx_window_init 
+0x2439 004504 store 2 ,mem_rx_window 
+0x243a 004505 deposit clkn_bt 
+0x243b 004506 store 4 ,mem_next_btclk 
+0x243c 004507 rtn clknt 
+0x243d 004508 deposit clke_bt 
+0x243e 004509 store 4 ,mem_next_btclk 
+0x243f 004510 rtn 
+:      004512 newconn_init:
+0x2440 004513 bpatch patch08_5 ,mem_patch08 
+0x2441 004514 call init_lmp_reinit 
+0x2442 004515 call new_conn_handle 
+0x2443 004516 store 1 ,mem_conn_handle 
+0x2444 004517 setarg 0 
+0x2445 004518 store 2 ,mem_l2cap_rxbuff1_len 
+0x2446 004519 setarg param_supervision_to 
+0x2447 004520 store 2 ,mem_supervision_to 
+0x2448 004521 fetch 1 ,mem_state 
+0x2449 004522 set1 state_inconn ,pdata 
+0x244a 004523 store 1 ,mem_state 
+0x244b 004524 jam 0 ,mem_op 
+0x244c 004525 jam 0 ,mem_state_map 
+0x244d 004526 jam 0 ,mem_lpm_current_mult 
+0x244e 004527 branch supervision_flush 
+:      004530 clear_linkkey:
+0x244f 004531 bpatch patch08_6 ,mem_patch08 
+0x2450 004532 force 0 ,pdata 
+0x2451 004533 store 8 ,mem_link_key 
+0x2452 004534 istore 8 ,contw 
+0x2453 004535 call clear_linkstate 
+0x2454 004536 branch context_traverse_linkkey 
+:      004538 new_conn_timeout:
+0x2455 004539 fetch 1 ,mem_newconnto_counter 
+0x2456 004540 increase -1 ,pdata 
+0x2457 004541 store 1 ,mem_newconnto_counter 
+0x2458 004542 rtn 
+:      004544 new_conn_handle:
+0x2459 004545 fetch 1 ,mem_handle_num 
+0x245a 004546 increase 1 ,pdata 
+0x245b 004547 store 1 ,mem_handle_num 
+0x245c 004548 rtn 
+:      004551 quit_connection:
+0x245d 004552 bpatch patch08_7 ,mem_patch08 
+0x245e 004553 fetch 1 ,mem_hci_cmd 
+0x245f 004554 beq hci_cmd_remote_name_req ,quit_connection_name 
+0x2460 004555 fetch 1 ,mem_lmp_to_send 
+0x2461 004556 bne lmp_name_req ,quit_connection_cont 
+:      004557 quit_connection_name:
+0x2462 004558 call cmd_check_plap 
+0x2463 004559 nbranch quit_connection_cont ,zero 
+0x2464 004560 call master_name_error 
+0x2465 004561 jam 0 ,mem_hci_cmd 
+:      004562 quit_connection_cont:
+0x2466 004563 bpatch patch09_0 ,mem_patch09 
+0x2467 004564 call app_disconn_reason_collect_bt 
+0x2468 004565 call sniff_exit 
+0x2469 004566 jam bt_evt_bb_disconnected ,mem_fifo_temp 
+0x246a 004567 call ui_ipc_send_event 
+0x246b 004568 call init_lmp_work 
+0x246c 004569 call l2cap_init_work 
+0x246d 004570 call sp_initialize 
+0x246e 004571 fetch 1 ,mem_state 
+0x246f 004572 set0 state_inconn 
+0x2470 004573 store 1 ,mem_state 
+0x2471 004574 jam 0 ,memui_reconnect_mode 
+0x2472 004576 fetch 1 ,mem_state_map 
+0x2473 004577 compare 0x0 ,pdata ,0xc0 
+0x2474 004578 branch quit_connection_not_clear_mark ,true 
+0x2475 004579 set0 mark_rxbuf_inuse ,mark 
+:      004580 quit_connection_not_clear_mark:
+0x2476 004581 fetch 1 ,mem_arq 
+0x2477 004582 bbit0 wack ,quit_connection_not_clear_tx 
+:      004583 quit_connection_not_clear_tx:
+0x2478 004584 fetch 1 ,mem_op 
+0x2479 004585 rtnbit0 op_txl2cap 
+0x247a 004586 set0 mark_tx_l2cap ,mark 
+0x247b 004587 rtn 
+:      004589 slave_newconn_once:
+0x247c 004590 bpatch patch09_1 ,mem_patch09 
+0x247d 004591 fetch 1 ,extm_newconn_am_addr 
+0x247e 004592 rtn blank 
+0x247f 004593 icopy am_addr 
+0x2480 004594 call slave_conn_recv_packet 
+0x2481 004595 nrtn match 
+0x2482 004596 force type_null ,type 
+0x2483 004597 call slave_conn_send_packet 
+0x2484 004598 deposit am_addr 
+0x2485 004599 store 1 ,mem_amaddr 
+0x2486 004600 force 0 ,pdata 
+0x2487 004601 store 1 ,extm_newconn_am_addr 
+0x2488 004602 rtn 
+:      004608 prepare_tx:
+0x2489 004609 bpatch patch09_2 ,mem_patch09 
+0x248a 004610 fetch 1 ,mem_state 
+0x248b 004611 bbit0 state_insco ,prepare_tx_not_sco 
+0x248c 004612 force type_hv3 ,type 
+0x248d 004613 bmark0 mark_esco ,prepare_tx_not_esco 
+0x248e 004614 call check_esco_amaddr 
+0x248f 004615 nbranch prepare_tx_not_sco ,true 
+0x2490 004616 branch prepare_tx_not_sco ,attempt 
+0x2491 004617 call set_wait_ack 
+0x2492 004618 setarg 2 
+0x2493 004619 store 2 ,mem_retransmission_cnt 
+0x2494 004620 rtn 
+:      004621 prepare_tx_not_esco:
+0x2495 004622 nrtn attempt 
+:      004623 prepare_tx_not_sco:
+0x2496 004624 bpatch patch09_3 ,mem_patch09 
+0x2497 004625 call context_check_all_wack 
+0x2498 004626 nbranch prepare_tx_no_retransmit ,zero 
+0x2499 004627 fetch 1 ,mem_arq 
+0x249a 004628 bbit0 wack ,prepare_tx_pollnull 
+:      004629 prepare_tx_retransmit:
+0x249b 004630 bmark1 mark_loopback ,prepare_tx_loopback 
+0x249c 004631 fetch 1 ,mem_debug_config 
+0x249d 004632 bbit1 debug_tx_pattern ,prepare_tx_txpat 
+0x249e 004633 fetch 2 ,mem_retransmission_cnt 
+0x249f 004634 increase -1 ,pdata 
+0x24a0 004635 store 2 ,mem_retransmission_cnt 
+0x24a1 004636 branch prepare_tx_nomore_retransmit ,blank 
+0x24a2 004637 fetch 1 ,mem_last_type 
+0x24a3 004638 iforce type 
+0x24a4 004639 rtn 
+:      004641 prepare_tx_nomore_retransmit:
+0x24a5 004642 bpatch patch09_4 ,mem_patch09 
+0x24a6 004643 call clear_got_tx 
+:      004644 prepare_tx_no_retransmit:
+0x24a7 004645 call check_esco_amaddr 
+0x24a8 004646 branch prepare_tx_pollnull ,true 
+0x24a9 004647 call send_lmp 
+0x24aa 004648 branch prepare_tx_sendlmp ,user 
+0x24ab 004649 fetch 1 ,mem_op 
+0x24ac 004650 bbit1 op_txl2cap ,prepare_tx_sendl2cap 
+0x24ad 004651 bmark1 mark_loopback ,prepare_tx_loopback 
+0x24ae 004652 fetch 1 ,mem_debug_config 
+0x24af 004653 bbit1 debug_tx_pattern ,prepare_tx_txpat 
+:      004654 prepare_tx_pollnull:
+0x24b0 004655 force type_poll ,type 
+0x24b1 004656 rtn master 
+0x24b2 004657 force type_null ,type 
+0x24b3 004658 rtn 
+:      004659 prepare_tx_loopback:
+0x24b4 004660 bpatch patch09_5 ,mem_patch09 
+0x24b5 004661 fetch 1 ,mem_rx_type 
+0x24b6 004662 iforce type 
+0x24b7 004663 rtnne 1 
+0x24b8 004664 force type_null ,type 
+0x24b9 004665 rtn 
+:      004666 prepare_tx_txpat:
+0x24ba 004667 fetch 1 ,test_mode_packet_type 
+0x24bb 004668 and pdata ,0xf ,type 
+0x24bc 004669 set1 mark_loopback ,mark 
+0x24bd 004670 rtn 
+:      004671 prepare_tx_sendlmp:
+0x24be 004672 force type_lmp ,type 
+0x24bf 004673 branch set_wait_ack 
+:      004674 prepare_tx_sendl2cap:
+0x24c0 004675 call tx_l2cap_type 
+:      004677 set_wait_ack:
+0x24c1 004678 bpatch patch09_6 ,mem_patch09 
+0x24c2 004679 fetcht 1 ,mem_arq 
+0x24c3 004680 set1 wack ,temp 
+0x24c4 004681 storet 1 ,mem_arq 
+0x24c5 004682 deposit type 
+0x24c6 004683 store 1 ,mem_last_type 
+0x24c7 004684 setarg 0xffff 
+0x24c8 004685 store 2 ,mem_retransmission_cnt 
+0x24c9 004686 rtn 
+:      004688 tx_l2cap_type:
+0x24ca 004689 bpatch patch09_7 ,mem_patch09 
+0x24cb 004690 fetch 1 ,mem_state_map 
+0x24cc 004691 isolate1 smap_edr ,pdata 
+0x24cd 004692 fetch 2 ,mem_tx_len 
+0x24ce 004693 branch tx_l2cap_type_edr ,true 
+0x24cf 004694 force type_dm1 ,type 
+0x24d0 004695 sub pdata ,17 ,null 
+0x24d1 004696 rtn positive 
+0x24d2 004697 force type_dh1 ,type 
+0x24d3 004698 sub pdata ,27 ,null 
+0x24d4 004699 rtn positive 
+0x24d5 004700 force type_dm3 ,type 
+0x24d6 004701 sub pdata ,121 ,null 
+0x24d7 004702 rtn positive 
+0x24d8 004703 force type_dh3 ,type 
+0x24d9 004704 sub pdata ,183 ,null 
+0x24da 004705 rtn positive 
+0x24db 004706 force type_dm5 ,type 
+0x24dc 004707 sub pdata ,224 ,null 
+0x24dd 004708 rtn positive 
+0x24de 004709 force type_dh5 ,type 
+0x24df 004710 rtn 
+:      004711 tx_l2cap_type_edr:
+0x24e0 004712 force type_dm1 ,type 
+0x24e1 004713 sub pdata ,17 ,null 
+0x24e2 004714 rtn positive 
+0x24e3 004715 force type_dh1 ,type 
+0x24e4 004716 sub pdata ,54 ,null 
+0x24e5 004717 rtn positive 
+0x24e6 004718 force type_dm3 ,type 
+0x24e7 004719 arg 367 ,temp 
+0x24e8 004720 isub temp ,null 
+0x24e9 004721 nrtn positive 
+0x24ea 004722 force type_dm5 ,type 
+0x24eb 004723 arg 679 ,temp 
+0x24ec 004724 isub temp ,null 
+0x24ed 004725 nrtn positive 
+0x24ee 004726 force type_dh5 ,type 
+0x24ef 004727 rtn 
+:      004736 slave_receive_master_slot:
+0x24f0 004737 fetch 1 ,mem_state 
+0x24f1 004738 bbit0 state_insniff ,slave_receive_notsniff 
+0x24f2 004739 fetch 2 ,mem_tsniff 
+0x24f3 004740 branch slave_receive_notsniff ,blank 
+0x24f4 004741 nbranch slave_receive_sniff ,attempt 
+:      004742 slave_receive_notsniff:
+0x24f5 004743 call rf_setup_time_master_slot 
+:      004744 slave_receive_access:
+0x24f6 004745 add clke_bt ,1 ,bt_clk 
+:      004746 slave_receive_sniff:
+0x24f7 004747 enable swfine 
+0x24f8 004748 fetch 2 ,mem_rx_window 
+0x24f9 004749 rshift pdata ,pdata 
+0x24fa 004750 arg param_pll_setup ,temp 
+0x24fb 004751 iadd temp ,pdata 
+0x24fc 004752 call ahead_window 
+0x24fd 004753 call fetch_extm_bt_adr 
+0x24fe 004754 force 0x03 ,freq_mode 
+0x24ff 004755 call rx_radio_freq 
+0x2500 004756 call init_rx_packet_flags 
+0x2501 004757 call prep_crypt 
+0x2502 004758 bpatch patch0a_0 ,mem_patch0a 
+0x2503 004759 fetch 2 ,mem_rx_window 
+0x2504 004760 rshift pdata ,pdata 
+0x2505 004761 call ahead_window 
+0x2506 004762 call start_receiver 
+0x2507 004763 enable decode_fec0 
+0x2508 004764 fetch 2 ,mem_rx_window 
+0x2509 004765 arg param_clke_cal ,temp 
+0x250a 004766 iadd temp ,stop_watch 
+0x250b 004767 correlate null ,timeout 
+0x250c 004768 copy clke ,temp 
+0x250d 004769 storet 6 ,mem_sync_clke 
+0x250e 004770 disable decode_fec0 
+0x250f 004771 nrtn sync 
+0x2510 004772 arg param_clke_cal ,clke_rt 
+0x2511 004773 copy bt_clk ,clke_bt 
+0x2512 004774 branch lpm_adjust_clk ,wake 
+0x2513 004775 rtn 
+:      004778 slave_conn_recv_packet:
+0x2514 004779 bpatch patch0a_1 ,mem_patch0a 
+0x2515 004780 call slave_receive_master_slot 
+0x2516 004781 nbranch shutdown_radio ,sync 
+0x2517 004782 call save_rssi 
+0x2518 004783 bmark0 mark_testmode ,receive_packet 
+0x2519 004784 fetch 2 ,mem_tst_pktcnt_sync 
+0x251a 004785 increase 1 ,pdata 
+0x251b 004786 store 2 ,mem_tst_pktcnt_sync 
+:      004787 receive_packet:
+0x251c 004788 rshift bt_clk ,temp 
+0x251d 004789 or temp ,0x40 ,white_init 
+:      004790 receive_packet_whitened:
+0x251e 004791 bpatch patch0a_2 ,mem_patch0a 
+0x251f 004792 enable enable_white 
+0x2520 004793 enable enable_hec 
+0x2521 004794 enable decode_fec1 
+0x2522 004795 parse demod ,bucket ,3 
+0x2523 004796 rshift8 pwindow ,pdata 
+0x2524 004797 store 1 ,mem_temp_am_addr 
+0x2525 004798 parse demod ,bucket ,4 
+0x2526 004799 inject bucket ,7 
+0x2527 004800 copy pwindow ,pdata 
+0x2528 004801 store 1 ,mem_rx_type 
+0x2529 004802 parse demod ,bucket ,3 
+0x252a 004803 rshift8 pwindow ,pdata 
+0x252b 004804 store 1 ,mem_temp_arq 
+0x252c 004805 fetch 1 ,mem_rx_type 
+0x252d 004806 sub pdata ,3 ,null 
+0x252e 004807 branch receive_packet_noedr ,positive 
+0x252f 004808 beq 7 ,receive_packet_noedr 
+0x2530 004809 fetch 1 ,mem_state_map 
+0x2531 004810 isolate1 smap_edr ,pdata 
+0x2532 004811 setflag true ,psk ,radio_ctrl 
+:      004812 receive_packet_noedr:
+0x2533 004813 bpatch patch0a_3 ,mem_patch0a 
+0x2534 004814 parse demod ,bucket ,8 
+0x2535 004815 disable decode_fec1 
+0x2536 004816 disable enable_hec 
+0x2537 004817 branch error_header ,crc_failed 
+0x2538 004818 bmark0 mark_testmode ,receive_packet_amchk 
+0x2539 004819 fetch 2 ,mem_tst_pktcnt_hec 
+0x253a 004820 increase 1 ,pdata 
+0x253b 004821 store 2 ,mem_tst_pktcnt_hec 
+:      004822 receive_packet_amchk:
+0x253c 004823 bpatch patch0a_4 ,mem_patch0a 
+0x253d 004824 fetch 1 ,mem_temp_am_addr 
+0x253e 004825 compare 0 ,pdata ,0x07 
+0x253f 004826 setflag true ,mark_am_addr_broadcast ,mark 
+0x2540 004827 branch am_addr_ok ,true 
+0x2541 004828 icompare 0x07 ,am_addr 
+0x2542 004829 branch am_addr_match ,true 
+0x2543 004830 bmark0 mark_esco ,end_of_packet 
+0x2544 004831 fetcht 1 ,mem_saved_amaddr 
+0x2545 004832 icompare 0x7 ,temp 
+0x2546 004833 nbranch end_of_packet ,true 
+0x2547 004834 fetch 1 ,mem_arq 
+0x2548 004835 set0 arqnx ,pdata 
+0x2549 004836 set1 flowx ,pdata 
+0x254a 004837 store 1 ,mem_arq 
+:      004838 am_addr_match:
+0x254b 004839 enable match 
+:      004840 am_addr_ok:
+0x254c 004841 bpatch patch0a_5 ,mem_patch0a 
+0x254d 004842 fetch 1 ,mem_rx_type 
+0x254e 004843 icopy type 
+0x254f 004844 bmark1 mark_am_addr_broadcast ,arqn_bypass 
+0x2550 004845 fetcht 1 ,mem_temp_arq 
+0x2551 004846 fetch 1 ,mem_arq 
+0x2552 004847 set0 flow ,pdata 
+0x2553 004848 isolate1 flow ,temp 
+0x2554 004849 setflag true ,flow ,pdata 
+0x2555 004850 isolate1 arqn ,temp 
+0x2556 004851 setflag true ,arqn ,pdata 
+0x2557 004852 store 1 ,mem_arq 
+0x2558 004853 isolate0 arqn ,temp 
+0x2559 004854 branch arqn_bypass ,true 
+0x255a 004855 call clear_got_tx 
+:      004856 arqn_bypass:
+0x255b 004857 bpatch patch0a_6 ,mem_patch0a 
+0x255c 004858 arg 0 ,temp 
+0x255d 004859 call reserve_slot 
+0x255e 004860 and type ,0xf ,pdata 
+0x255f 004861 beq type_poll ,process_poll 
+0x2560 004862 beq type_null ,end_of_packet 
+0x2561 004863 beq type_fhs ,process_fhs 
+0x2562 004864 fetcht 1 ,mem_temp_arq 
+0x2563 004865 fetch 1 ,mem_arq 
+0x2564 004866 icompare 0x04 ,temp 
+0x2565 004867 nbranch rx_type_dispatch ,true 
+0x2566 004868 bmark0 mark_am_addr_broadcast ,failed_seqn 
+0x2567 004869 bbit0 bcast1 ,rx_type_dispatch 
+:      004870 failed_seqn:
+0x2568 004871 set1 mark_old_packet ,mark 
+:      004872 rx_type_dispatch:
+0x2569 004873 bpatch patch0a_7 ,mem_patch0a 
+0x256a 004874 deposit type 
+0x256b 004875 beq type_dm1 ,process_dm1 
+0x256c 004876 beq type_dh1 ,process_dh1 
+0x256d 004877 beq type_hv3 ,process_hev 
+0x256e 004878 beq type_3dh1 ,process_3dh1 
+0x256f 004879 arg 4 ,temp 
+0x2570 004880 call reserve_slot 
+0x2571 004881 beq type_dm3 ,process_dm3 
+0x2572 004882 beq type_dh3 ,process_dh3 
+0x2573 004883 arg 8 ,temp 
+0x2574 004884 call reserve_slot 
+0x2575 004885 beq type_dm5 ,process_dm5 
+0x2576 004886 beq type_dh5 ,process_dh5 
+0x2577 004887 rtn 
+:      004890 process_hev:
+0x2578 004891 bpatch patch0b_0 ,mem_patch0b 
+0x2579 004892 enable decode_fec0 
+0x257a 004893 enable enable_crc 
+0x257b 004894 enable encrypt 
+0x257c 004895 arg mem_sco_ibuf ,contw 
+0x257d 004896 force 30 ,loopcnt 
+:      004897 process_hev_loop:
+0x257e 004898 parse demod ,bucket ,8 
+0x257f 004899 rshift3 pwindow ,pdata 
+0x2580 004900 istore 1 ,contw 
+0x2581 004901 loop process_hev_loop 
+0x2582 004902 bmark0 mark_esco ,end_of_packet 
+0x2583 004903 parse demod ,bucket ,16 
+0x2584 004904 nsetflag crc_failed ,mark_esco_rxok ,mark 
+0x2585 004905 branch error_payload ,crc_failed 
+0x2586 004906 branch ack_payload 
+:      004909 process_poll:
+0x2587 004910 branch end_of_packet 
+:      004912 process_dm3:
+:      004913 process_dm5:
+0x2588 004914 set1 mark_longpacket ,mark 
+:      004915 process_dm1:
+0x2589 004916 enable decode_fec2 
+0x258a 004917 branch process_dmh 
+:      004919 process_dh3:
+:      004920 process_dh5:
+0x258b 004921 set1 mark_longpacket ,mark 
+:      004922 process_3dh1:
+0x258c 004923 set1 psk3m ,radio_ctrl 
+:      004924 process_dh1:
+0x258d 004925 enable decode_fec0 
+:      004926 process_dmh:
+0x258e 004927 bpatch patch0b_1 ,mem_patch0b 
+0x258f 004928 bmark1 mark_rxbuf_inuse ,end_of_packet 
+0x2590 004929 isolate0 psk ,radio_ctrl 
+0x2591 004930 branch process_dmh_noedr ,true 
+0x2592 004931 disable enable_white 
+0x2593 004932 enable decode_fec0 
+0x2594 004933 disable decode_fec2 
+0x2595 004934 add clkn_bt ,2 ,timeup 
+0x2596 004935 correlate clkn_bt ,meet 
+0x2597 004936 nbranch error_payload ,sync 
+0x2598 004937 set1 mark_longpacket ,mark 
+0x2599 004938 enable enable_white 
+:      004939 process_dmh_noedr:
+0x259a 004940 bpatch patch0b_2 ,mem_patch0b 
+0x259b 004941 enable encrypt 
+0x259c 004942 enable enable_crc 
+0x259d 004943 parse demod ,bucket ,3 
+0x259e 004944 rshift8 pwindow ,pdata 
+0x259f 004945 store 1 ,mem_lch_code 
+0x25a0 004946 parse demod ,bucket ,5 
+0x25a1 004947 bmark1 mark_longpacket ,process_dmh_long 
+0x25a2 004948 rshift3 pwindow ,loopcnt 
+0x25a3 004949 rshift3 loopcnt ,loopcnt 
+0x25a4 004950 branch process_dmh_common 
+:      004951 process_dmh_long:
+0x25a5 004952 parse demod ,bucket ,5 
+0x25a6 004953 rshift pwindow ,loopcnt 
+0x25a7 004954 parse demod ,bucket ,3 
+:      004955 process_dmh_common:
+0x25a8 004956 bpatch patch0b_3 ,mem_patch0b 
+0x25a9 004957 deposit loopcnt 
+0x25aa 004958 store 2 ,mem_len 
+0x25ab 004959 branch process_dmh_data_end ,blank 
+0x25ac 004960 isub mask3ff ,null 
+0x25ad 004961 branch error_payload ,positive 
+0x25ae 004962 bpatch patch0b_4 ,mem_patch0b 
+0x25af 004963 set0 mark_fhs_eir ,mark 
+0x25b0 004964 fetch 1 ,mem_lch_code 
+0x25b1 004965 and_into 0x03 ,pdata 
+0x25b2 004966 arg mem_rxbuf ,contw 
+0x25b3 004967 beq llid_lmp ,process_lmp 
+0x25b4 004968 bmark1 mark_testmode ,process_dmh_data 
+0x25b5 004970 fetch 1 ,mem_lch_code 
+0x25b6 004971 and_into 0x03 ,pdata 
+0x25b7 004972 beq llid_l2cap_start ,process_dmh_data_l2cap_start_pkt 
+0x25b8 004973 beq llid_l2cap_cont ,process_dmh_data_l2cap_continue_pkt 
+0x25b9 004974 branch error_payload 
+:      004976 process_lmp:
+0x25ba 004977 fetch 2 ,mem_len 
+0x25bb 004978 sub pdata ,0x70 ,null 
+0x25bc 004979 nbranch error_payload ,positive 
+0x25bd 004980 bmark1 mark_old_packet ,ack_payload 
+0x25be 004981 branch process_dmh_data 
+:      004984 process_dmh_data_l2cap_start_pkt:
+0x25bf 004985 bpatch patch0b_5 ,mem_patch0b 
+0x25c0 004986 bmark1 mark_old_packet ,ack_payload 
+0x25c1 004987 fetch 2 ,mem_len 
+0x25c2 004988 arg 0x2e0 ,temp 
+0x25c3 004989 isub temp ,null 
+0x25c4 004990 branch error_payload ,positive 
+0x25c5 004991 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x25c6 004992 bbit0 l2cap_inuse_buff1 ,process_dmh_data_into_buff1 
+0x25c7 004993 bbit0 l2cap_inuse_buff2 ,process_dmh_data_into_buff2 
+0x25c8 004994 branch end_of_packet 
+:      004995 process_dmh_data_into_buff1:
+0x25c9 004996 jam 1 ,mem_l2cap_rxbuff_new 
+0x25ca 004997 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x25cb 004998 bne 0 ,end_of_packet 
+0x25cc 004999 arg mem_l2cap_rxbuff1 ,contw 
+0x25cd 005000 branch process_dmh_data 
+:      005001 process_dmh_data_into_buff2:
+0x25ce 005002 jam 2 ,mem_l2cap_rxbuff_new 
+0x25cf 005003 fetch 2 ,mem_l2cap_rxbuff2_len 
+0x25d0 005004 bne 0 ,end_of_packet 
+0x25d1 005005 arg mem_l2cap_rxbuff2 ,contw 
+0x25d2 005006 branch process_dmh_data 
+:      005008 process_dmh_data_l2cap_continue_pkt:
+0x25d3 005009 bpatch patch0b_6 ,mem_patch0b 
+0x25d4 005010 bmark1 mark_old_packet ,ack_payload 
+0x25d5 005011 fetch 2 ,mem_len 
+0x25d6 005012 arg 0x2e0 ,temp 
+0x25d7 005013 isub temp ,null 
+0x25d8 005014 branch error_payload ,positive 
+0x25d9 005015 fetch 1 ,mem_l2cap_rxbuff_new 
+0x25da 005016 beq 1 ,process_dmh_data_l2cap_continue_pkt1 
+0x25db 005017 beq 2 ,process_dmh_data_l2cap_continue_pkt2 
+0x25dc 005018 branch end_of_packet 
+:      005019 process_dmh_data_l2cap_continue_pkt1:
+0x25dd 005020 arg mem_l2cap_rxbuff1 ,contw 
+0x25de 005021 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x25df 005022 iadd contw ,contw 
+0x25e0 005023 branch process_dmh_data 
+:      005024 process_dmh_data_l2cap_continue_pkt2:
+0x25e1 005025 arg mem_l2cap_rxbuff2 ,contw 
+0x25e2 005026 fetch 2 ,mem_l2cap_rxbuff2_len 
+0x25e3 005027 iadd contw ,contw 
+:      005028 process_dmh_data:
+0x25e4 005029 parse demod ,bucket ,8 
+0x25e5 005030 rshift3 pwindow ,pdata 
+0x25e6 005031 istore 1 ,contw 
+0x25e7 005032 loop process_dmh_data 
+:      005033 process_dmh_data_end:
+0x25e8 005034 bpatch patch0b_7 ,mem_patch0b 
+0x25e9 005035 parse demod ,bucket ,16 
+0x25ea 005036 branch error_payload_crc ,crc_failed 
+0x25eb 005037 fetch 1 ,mem_l2cap_flow_ctrl_flag 
+0x25ec 005038 beq l2cap_flow_ctrl_enable ,end_of_packet 
+0x25ed 005039 bmark1 mark_testmode ,process_dmh_cont 
+0x25ee 005040 bmark1 mark_old_packet ,redundant_payload 
+0x25ef 005041 fetch 1 ,mem_lch_code 
+0x25f0 005042 compare 3 ,pdata ,3 
+0x25f1 005043 branch process_dmh_cont ,true 
+0x25f2 005044 fetch 2 ,mem_len 
+0x25f3 005045 branch process_dmh_cont ,blank 
+0x25f4 005046 bpatch patch0c_0 ,mem_patch0c 
+0x25f5 005047 fetch 1 ,mem_l2cap_rxbuff_new 
+0x25f6 005048 beq 1 ,process_l2cap_pass_crc_buff1 
+0x25f7 005049 beq 2 ,process_l2cap_pass_crc_buff2 
+0x25f8 005050 branch assert 
+:      005051 process_l2cap_pass_crc_buff1:
+0x25f9 005052 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x25fa 005053 fetcht 2 ,mem_len 
+0x25fb 005054 iadd temp ,pdata 
+0x25fc 005055 store 2 ,mem_l2cap_rxbuff1_len 
+0x25fd 005056 beq 0 ,assert 
+0x25fe 005057 fetcht 2 ,mem_l2cap_rxbuff1 
+0x25ff 005058 increase 4 ,temp 
+0x2600 005059 isub temp ,null 
+0x2601 005060 call l2cap_buff1_inuse ,zero 
+0x2602 005061 branch process_dmh_cont 
+:      005062 process_l2cap_pass_crc_buff2:
+0x2603 005063 fetch 2 ,mem_l2cap_rxbuff2_len 
+0x2604 005064 fetcht 2 ,mem_len 
+0x2605 005065 iadd temp ,pdata 
+0x2606 005066 store 2 ,mem_l2cap_rxbuff2_len 
+0x2607 005067 beq 0 ,assert 
+0x2608 005068 fetcht 2 ,mem_l2cap_rxbuff2 
+0x2609 005069 add temp ,4 ,temp 
+0x260a 005070 isub temp ,null 
+0x260b 005071 call l2cap_buff2_inuse ,zero 
+0x260c 005072 branch process_dmh_cont 
+:      005073 process_dmh_cont:
+0x260d 005074 bpatch patch0c_1 ,mem_patch0c 
+0x260e 005075 fetcht 1 ,mem_state_map 
+0x260f 005076 fetch 1 ,mem_lch_code 
+0x2610 005077 compare 3 ,pdata ,0x03 
+0x2611 005078 setflag true ,smap_rxlmp ,temp 
+0x2612 005079 nsetflag true ,smap_rxl2cap ,temp 
+0x2613 005080 storet 1 ,mem_state_map 
+0x2614 005081 nbranch process_dmh_cont_rxbuf_not_use ,true 
+0x2615 005082 set1 mark_rxbuf_inuse ,mark 
+:      005083 process_dmh_cont_rxbuf_not_use:
+0x2616 005084 bmark0 mark_testmode ,ack_payload 
+0x2617 005085 isolate1 smap_rxlmp ,temp 
+0x2618 005086 branch ack_payload ,true 
+0x2619 005087 fetch 2 ,mem_tst_pktcnt_crc 
+0x261a 005088 increase 1 ,pdata 
+0x261b 005089 store 2 ,mem_tst_pktcnt_crc 
+0x261c 005090 set1 mark_loopback ,mark 
+0x261d 005091 set0 smap_rxl2cap ,temp 
+0x261e 005092 set0 mark_rxbuf_inuse ,mark 
+0x261f 005093 storet 1 ,mem_state_map 
+:      005094 ack_payload:
+0x2620 005095 bpatch patch0c_2 ,mem_patch0c 
+0x2621 005096 fetcht 1 ,mem_temp_arq 
+0x2622 005097 fetch 1 ,mem_arq 
+0x2623 005098 set1 arqnx ,pdata 
+0x2624 005099 isolate1 seqn ,temp 
+0x2625 005100 setflag true ,seqn ,pdata 
+0x2626 005101 isolate1 mark_am_addr_broadcast ,mark 
+0x2627 005102 setflag true ,bcast1 ,pdata 
+0x2628 005103 store 1 ,mem_arq 
+0x2629 005104 fetch 2 ,mem_len 
+0x262a 005105 nbranch end_of_packet ,blank 
+0x262b 005106 fetch 1 ,mem_state_map 
+0x262c 005107 set0 smap_rxl2cap ,pdata 
+0x262d 005108 store 1 ,mem_state_map 
+0x262e 005109 fetch 1 ,mem_lch_code 
+0x262f 005110 compare 0x01 ,pdata ,0x07 
+0x2630 005112 branch end_of_packet 
+:      005114 error_header:
+0x2631 005115 bpatch patch0c_3 ,mem_patch0c 
+0x2632 005116 disable match 
+0x2633 005117 fetch 2 ,mem_rx_hec_err 
+0x2634 005118 increase 1 ,pdata 
+0x2635 005119 store 2 ,mem_rx_hec_err 
+0x2636 005120 branch end_of_packet 
+:      005121 error_payload_crc:
+0x2637 005122 fetch 2 ,mem_rx_crc_err 
+0x2638 005123 increase 1 ,pdata 
+0x2639 005124 store 2 ,mem_rx_crc_err 
+0x263a 005125 call discard_pkt 
+0x263b 005126 bmark0 mark_testmode ,error_payload 
+0x263c 005127 set1 mark_loopback ,mark 
+:      005128 error_payload:
+0x263d 005129 branch end_of_packet 
+:      005131 discard_pkt:
+0x263e 005132 bpatch patch0c_4 ,mem_patch0c 
+0x263f 005133 fetch 1 ,mem_lch_code 
+0x2640 005134 compare 3 ,pdata ,0x03 
+0x2641 005135 nbranch discard_pkt_l2cap ,true 
+:      005136 discard_pkt_lmp:
+0x2642 005137 fetcht 1 ,mem_state_map 
+0x2643 005138 set0 smap_rxlmp ,temp 
+0x2644 005139 storet 1 ,mem_state_map 
+0x2645 005140 rtn 
+:      005141 discard_pkt_l2cap:
+0x2646 005144 fetcht 1 ,mem_state_map 
+0x2647 005145 set0 smap_rxl2cap ,temp 
+0x2648 005146 storet 1 ,mem_state_map 
+0x2649 005147 branch h4_send_acl_trigger_clear 
+:      005149 redundant_payload:
+0x264a 005150 fetch 1 ,mem_arq 
+0x264b 005151 set1 arqnx ,pdata 
+0x264c 005152 store 1 ,mem_arq 
+:      005153 end_of_packet:
+0x264d 005154 bpatch patch0c_5 ,mem_patch0c 
+0x264e 005155 disable encode_fec0 
+0x264f 005156 disable encode_fec2 
+0x2650 005157 disable decode_fec0 
+0x2651 005158 disable decode_fec2 
+0x2652 005159 disable enable_crc 
+0x2653 005160 disable encrypt 
+0x2654 005161 disable enable_white 
+0x2655 005162 branch shutdown_radio ,is_rx 
+0x2656 005163 until null ,tx_clear 
+0x2657 005164 nop 100 
+0x2658 005165 branch shutdown_radio 
+:      005167 process_fhs:
+0x2659 005168 bpatch patch0c_6 ,mem_patch0c 
+0x265a 005169 enable enable_crc 
+0x265b 005170 enable decode_fec2 
+0x265c 005171 parse demod ,bucket ,72 
+0x265d 005172 isolate1 58 ,pdata 
+0x265e 005173 setflag true ,mark_fhs_eir ,mark 
+0x265f 005174 copy bt_adr ,temp 
+0x2660 005175 ialigned bt_adr 
+0x2661 005176 ialigned fhs0 
+0x2662 005177 pulse recalc 
+0x2663 005178 setsect 2 ,0xfffff 
+0x2664 005179 setsect 3 ,0x0ffff 
+0x2665 005180 nop 32 
+0x2666 005181 iverify fhs_parity 
+0x2667 005182 deposit lap 
+0x2668 005183 store 3 ,extm_lap 
+0x2669 005184 deposit uap 
+0x266a 005185 store 1 ,extm_uap 
+0x266b 005186 copy temp ,bt_adr 
+0x266c 005187 branch fhs_parity_ok ,true 
+0x266d 005188 branch error_payload 
+:      005189 fhs_parity_ok:
+0x266e 005190 bpatch patch0c_7 ,mem_patch0c 
+0x266f 005191 parse demod ,bucket ,72 
+0x2670 005192 ialigned fhs1 
+0x2671 005193 ialigned am_addr 
+0x2672 005194 ialigned nap 
+0x2673 005195 ialigned regb 
+0x2674 005196 force 0 ,pdata 
+0x2675 005197 parse demod ,bucket ,16 
+0x2676 005198 branch error_payload ,crc_failed 
+0x2677 005199 setarg 0x0ffffffc 
+0x2678 005200 iand regb ,pdata 
+0x2679 005201 store 4 ,mem_clke_bt 
+0x267a 005202 deposit fhs_class 
+0x267b 005203 store 3 ,extm_class 
+0x267c 005204 deposit fhs_misc 
+0x267d 005205 store 1 ,extm_fhs_misc 
+0x267e 005206 deposit am_addr 
+0x267f 005207 store 1 ,extm_newconn_am_addr 
+0x2680 005208 deposit nap 
+0x2681 005209 store 2 ,extm_nap 
+0x2682 005210 deposit bt_clk 
+0x2683 005211 inject rxf ,32 
+0x2684 005212 compare type_fhs ,type ,0x0f 
+0x2685 005213 setflag true ,mark_fhs_already_good ,mark 
+0x2686 005214 branch end_of_packet 
+:      005216 clear_got_tx:
+0x2687 005217 bpatch patch0d_0 ,mem_patch0d 
+0x2688 005218 fetch 1 ,mem_arq 
+0x2689 005219 rtnbit0 wack 
+0x268a 005220 set0 wack ,pdata 
+0x268b 005221 setflip seqnx ,pdata 
+0x268c 005222 store 1 ,mem_arq 
+0x268d 005223 fetch 1 ,mem_last_type 
+0x268e 005224 beq type_lmp ,clear_got_txlmp 
+0x268f 005225 rtneq type_hv3 
+0x2690 005226 fetch 1 ,mem_op 
+0x2691 005227 rtnbit0 op_txl2cap ,pdata 
+0x2692 005228 set0 op_txl2cap ,pdata 
+0x2693 005229 set1 op_pkt_comp ,pdata 
+0x2694 005230 store 1 ,mem_op 
+0x2695 005231 set0 mark_tx_l2cap ,mark 
+0x2696 005232 fetch 2 ,mem_l2cap_tx_multi_offset 
+0x2697 005233 nrtn blank 
+0x2698 005234 fetch 1 ,mem_op 
+0x2699 005235 set0 op_pkt_comp ,pdata 
+0x269a 005236 store 1 ,mem_op 
+0x269b 005237 branch l2cap_malloc_free 
+:      005239 clear_got_txlmp:
+0x269c 005240 bpatch patch0d_1 ,mem_patch0d 
+0x269d 005241 fetch 1 ,mem_lmo_header_opcode 
+0x269e 005242 rshift pdata ,pdata 
+0x269f 005243 beq lmp_start_encryption_req ,start_encryption 
+0x26a0 005244 beq lmp_stop_encryption_req ,stop_encryption 
+0x26a1 005245 beq lmp_unsniff_req ,sniff_exit 
+0x26a2 005246 beq lmp_escape ,clear_lmp_escape 
+0x26a3 005247 rtnne lmp_accepted 
+0x26a4 005248 fetch 1 ,mem_lmo_payload 
+0x26a5 005249 beq lmp_sco_link_req ,sco_link_req_by_slave 
+0x26a6 005250 beq lmp_start_encryption_req ,clear_send_setup_complete 
+0x26a7 005251 rtn 
+:      005253 clear_lmp_escape:
+0x26a8 005254 fetch 1 ,mem_lmo_payload 
+0x26a9 005255 set1 7 ,pdata 
+0x26aa 005256 rtn 
+:      005257 clear_send_setup_complete:
+0x26ab 005258 rtn master 
+0x26ac 005259 fetch 1 ,mem_state 
+0x26ad 005260 rtnbit1 state_conn_comp 
+0x26ae 005261 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x26af 005262 rtn 
+:      005265 sco_link_req_by_slave:
+0x26b0 005266 rtn master 
+0x26b1 005267 fetch 1 ,mem_mode 
+0x26b2 005268 isolate1 send_sco_when_slave ,pdata 
+0x26b3 005269 branch clean_mem_mode ,true 
+0x26b4 005271 rtn 
+:      005272 clean_mem_mode:
+0x26b5 005273 set0 send_sco_when_slave ,pdata 
+0x26b6 005274 store 1 ,mem_mode 
+0x26b7 005275 rtn 
+:      005277 start_encryption:
+0x26b8 005278 bpatch patch0d_2 ,mem_patch0d 
+0x26b9 005279 fetch 1 ,mem_state_map 
+0x26ba 005280 set1 smap_encryption ,pdata 
+0x26bb 005281 store 1 ,mem_state_map 
+0x26bc 005282 jam 1 ,core_encrypt 
+0x26bd 005283 fetch 1 ,mem_state 
+0x26be 005284 isolate1 state_conn_comp ,pdata 
+0x26bf 005285 rtn 
+:      005287 stop_encryption:
+0x26c0 005288 bpatch patch0d_3 ,mem_patch0d 
+0x26c1 005289 fetch 1 ,mem_state_map 
+0x26c2 005290 set0 smap_encryption ,pdata 
+0x26c3 005291 store 1 ,mem_state_map 
+0x26c4 005292 jam 0 ,core_encrypt 
+0x26c5 005293 rtn 
+:      005296 sniff_init:
+0x26c6 005297 bpatch patch0d_4 ,mem_patch0d 
+0x26c7 005298 copy clkn_bt ,pdata 
+0x26c8 005299 store 4 ,mem_lpm_delay_after_sniff 
+0x26c9 005300 add clkn_bt ,3 ,rega 
+0x26ca 005301 branch sniff_init_master ,master 
+0x26cb 005302 add clke_bt ,3 ,rega 
+:      005303 sniff_init_master:
+0x26cc 005304 fetcht 2 ,mem_tsniff 
+0x26cd 005305 deposit rega 
+0x26ce 005306 set0 27 ,pdata 
+0x26cf 005307 idiv temp 
+0x26d0 005308 fetch 2 ,mem_dsniff 
+0x26d1 005309 call wait_div_end 
+0x26d2 005310 remainder regc 
+0x26d3 005311 isub regc ,pdata 
+0x26d4 005312 branch sniff_init_nowrap ,positive 
+0x26d5 005313 iadd temp ,pdata 
+:      005314 sniff_init_nowrap:
+0x26d6 005315 iadd rega ,pdata 
+0x26d7 005316 store 4 ,mem_sniff_anchor 
+0x26d8 005317 jam switch_flag_init ,mem_switch_flag 
+0x26d9 005318 fetch 1 ,mem_state 
+0x26da 005319 set1 state_insniff ,pdata 
+0x26db 005320 store 1 ,mem_state 
+0x26dc 005321 fetch 1 ,mem_sniff_attempt 
+0x26dd 005322 store 1 ,mem_current_sniff_attempt 
+0x26de 005323 setarg 0 
+0x26df 005324 store 3 ,mem_sniff_rcv 
+0x26e0 005325 store 3 ,mem_sniff_lost 
+0x26e1 005326 store 1 ,mem_sniff_unint_lost 
+0x26e2 005327 jam bt_evt_enter_sniff ,mem_fifo_temp 
+0x26e3 005328 call ui_ipc_send_event 
+0x26e4 005329 fetch 2 ,mem_rx_window_sniff 
+0x26e5 005330 store 2 ,mem_rx_window 
+0x26e6 005331 nrtn master 
+0x26e7 005332 add am_addr ,-1 ,queue 
+0x26e8 005333 rtn 
+:      005335 sniff_exit:
+0x26e9 005336 bpatch patch0d_5 ,mem_patch0d 
+0x26ea 005337 fetch 1 ,mem_state 
+0x26eb 005338 rtnbit0 state_insniff 
+0x26ec 005339 set0 state_insniff ,pdata 
+0x26ed 005340 store 1 ,mem_state 
+0x26ee 005341 fetch 2 ,mem_rx_window_init 
+0x26ef 005342 store 2 ,mem_rx_window 
+0x26f0 005343 disable wake 
+0x26f1 005344 jam bt_evt_exit_sniff ,mem_fifo_temp 
+0x26f2 005345 branch ui_ipc_send_event 
+:      005348 check_attempt:
+0x26f3 005349 bpatch patch0d_6 ,mem_patch0d 
+0x26f4 005350 enable attempt 
+0x26f5 005351 fetch 1 ,mem_state 
+0x26f6 005352 bbit1 state_insniff ,check_attempt_sniff 
+0x26f7 005353 rtnmark1 mark_testmode 
+0x26f8 005354 fetch 1 ,mem_arq 
+0x26f9 005355 rtnbit1 wack 
+0x26fa 005356 fetch 1 ,mem_lmp_to_send 
+0x26fb 005357 nrtn blank 
+0x26fc 005358 fetch 1 ,mem_op 
+0x26fd 005359 rtnbit1 op_txl2cap 
+:      005360 check_attempt_nomore:
+0x26fe 005361 force 0 ,pdata 
+0x26ff 005362 rtn 
+:      005364 check_attempt_sniff:
+0x2700 005365 bbit0 state_insco ,check_attempt_not_sco 
+0x2701 005366 fetch 1 ,mem_current_sniff_attempt 
+0x2702 005367 beq 2 ,check_attempt_sniff_restore_sco 
+0x2703 005368 fetch 1 ,mem_arq 
+0x2704 005369 bbit1 wack ,check_attempt_notimeout 
+0x2705 005370 bmark0 mark_esco_rxok ,check_attempt_notimeout 
+:      005371 check_attempt_sniff_restore_sco:
+0x2706 005372 nbranch check_attempt_notimeout ,master 
+0x2707 005373 fetch 1 ,mem_lmp_to_send 
+0x2708 005374 nbranch check_attempt_notimeout ,blank 
+:      005375 check_attempt_sco_master:
+0x2709 005376 fetch 1 ,mem_sco_poll 
+0x270a 005377 increase -1 ,pdata 
+0x270b 005378 store 1 ,mem_sco_poll 
+0x270c 005379 nbranch check_attempt_nomore ,blank 
+0x270d 005380 jam param_sco_poll ,mem_sco_poll 
+0x270e 005381 branch check_attempt_notimeout 
+:      005388 check_attempt_not_sco:
+0x270f 005389 fetch 1 ,mem_current_sniff_attempt 
+0x2710 005390 bne 1 ,check_attempt_notimeout 
+0x2711 005391 fetch 1 ,mem_current_sniff_timeout 
+0x2712 005392 branch check_attempt_notimeout ,blank 
+0x2713 005393 increase -1 ,pdata 
+0x2714 005394 store 1 ,mem_current_sniff_timeout 
+0x2715 005395 fetch 1 ,mem_arq 
+0x2716 005396 rtnbit1 wack 
+0x2717 005397 nrtn match 
+:      005398 check_attempt_notimeout:
+0x2718 005399 fetch 1 ,mem_current_sniff_attempt 
+0x2719 005400 increase -1 ,pdata 
+0x271a 005401 store 1 ,mem_current_sniff_attempt 
+0x271b 005402 rtn 
+:      005413 sniff_check_window:
+0x271c 005414 bpatch patch0d_7 ,mem_patch0d 
+0x271d 005415 disable swfine 
+0x271e 005416 copy temp ,stop_watch 
+0x271f 005417 call context_search_sniff_window 
+0x2720 005418 disable user 
+0x2721 005419 nrtn zero 
+0x2722 005420 force 0 ,stop_watch 
+0x2723 005421 enable user 
+0x2724 005422 rtn 
+:      005425 check_esco_amaddr:
+0x2725 005426 fetch 1 ,mem_esco_addr 
+0x2726 005427 icompare 0xff ,am_addr 
+0x2727 005428 rtn 
+:      005431 parse_l2cap:
+0x2728 005432 bpatch patch0e_0 ,mem_patch0e 
+0x2729 005433 set0 mark_rxbuf_inuse ,mark 
+:      005434 parse_l2cap_cont:
+0x272a 005435 jam l2cap_rx_clear ,mem_l2cap_rx_done 
+0x272b 005436 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x272c 005437 rtn blank 
+0x272d 005438 isolate1 l2cap_inuse_buff1 ,pdata 
+0x272e 005439 arg mem_l2cap_rxbuff1 ,contr 
+0x272f 005440 call process_rx_l2cap_pkt ,true 
+0x2730 005441 bpatch patch0e_1 ,mem_patch0e 
+0x2731 005442 fetch 1 ,mem_l2cap_rx_done 
+0x2732 005443 beq l2cap_rx_done ,parse_l2cap_release_buff1 
+0x2733 005445 jam l2cap_rx_clear ,mem_l2cap_rx_done 
+0x2734 005446 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x2735 005447 rtnbit0 l2cap_inuse_buff2 
+0x2736 005448 arg mem_l2cap_rxbuff2 ,contr 
+0x2737 005449 call process_rx_l2cap_pkt 
+0x2738 005450 fetch 1 ,mem_l2cap_rx_done 
+0x2739 005451 beq l2cap_rx_done ,parse_l2cap_release_buff2 
+0x273a 005452 rtn 
+:      005454 parse_l2cap_release_buff1:
+0x273b 005455 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x273c 005456 set0 l2cap_inuse_buff1 ,pdata 
+0x273d 005457 store 1 ,mem_l2cap_rxbuff_inuse 
+0x273e 005458 setarg 0 
+0x273f 005459 store 2 ,mem_l2cap_rxbuff1_len 
+0x2740 005460 rtn 
+:      005461 parse_l2cap_release_buff2:
+0x2741 005462 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x2742 005463 set0 l2cap_inuse_buff2 ,pdata 
+0x2743 005464 store 1 ,mem_l2cap_rxbuff_inuse 
+0x2744 005465 setarg 0 
+0x2745 005466 store 2 ,mem_l2cap_rxbuff2_len 
+0x2746 005467 rtn 
+:      005469 l2cap_buff1_inuse:
+0x2747 005470 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x2748 005471 set1 l2cap_inuse_buff1 ,pdata 
+0x2749 005472 store 1 ,mem_l2cap_rxbuff_inuse 
+0x274a 005473 rtn 
+:      005475 l2cap_buff2_inuse:
+0x274b 005476 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x274c 005477 set1 l2cap_inuse_buff2 ,pdata 
+0x274d 005478 store 1 ,mem_l2cap_rxbuff_inuse 
+0x274e 005479 rtn 
+:      005485 slave_send_access:
+0x274f 005486 bpatch patch0e_2 ,mem_patch0e 
+0x2750 005487 add clke_bt ,1 ,bt_clk 
+0x2751 005488 call fetch_extm_bt_adr 
+0x2752 005489 force 0x03 ,freq_mode 
+0x2753 005490 call tx_radio_freq 
+0x2754 005491 call start_transmitter 
+0x2755 005492 call start_tx_external 
+0x2756 005493 branch send_access_word 
+:      005496 slave_conn_send_packet:
+0x2757 005497 bpatch patch0e_3 ,mem_patch0e 
+0x2758 005498 call rf_setup_time_slave_slot 
+0x2759 005499 deposit clke_bt 
+0x275a 005500 fetcht 4 ,mem_next_btclk 
+0x275b 005501 isub temp ,pdata 
+0x275c 005502 rtnne 1 
+0x275d 005503 compare type_null ,type ,0x1f 
+0x275e 005504 nbranch slave_conn_send_access ,true 
+0x275f 005505 fetch 1 ,mem_rx_type 
+0x2760 005506 rtn blank 
+:      005507 slave_conn_send_access:
+0x2761 005508 call slave_send_access 
+:      005509 transmit_packet:
+0x2762 005510 compare type_id ,type ,0x1f 
+0x2763 005511 branch end_of_packet ,true 
+0x2764 005512 rshift bt_clk ,temp 
+0x2765 005513 or temp ,0x40 ,white_init 
+:      005514 transmit_packet_whitened:
+0x2766 005515 bpatch patch0e_4 ,mem_patch0e 
+0x2767 005516 enable enable_white 
+0x2768 005517 enable enable_hec 
+0x2769 005518 enable encode_fec1 
+0x276a 005519 set0 mark_longpacket ,mark 
+0x276b 005520 deposit am_addr 
+0x276c 005521 inject mod ,3 
+0x276d 005522 deposit type 
+0x276e 005523 inject mod ,4 
+0x276f 005524 fetch 1 ,mem_arq 
+0x2770 005525 inject bucket ,4 
+0x2771 005526 inject mod ,3 
+0x2772 005527 enable enable_parity 
+0x2773 005528 inject mod ,8 
+0x2774 005529 disable encode_fec1 
+0x2775 005530 disable enable_parity 
+0x2776 005531 disable enable_hec 
+0x2777 005532 set0 psk3m ,radio_ctrl 
+0x2778 005533 arg 0 ,temp 
+0x2779 005534 call reserve_slot 
+0x277a 005535 bpatch patch0e_5 ,mem_patch0e 
+0x277b 005536 and type ,0x1f ,pdata 
+0x277c 005537 beq type_lmp ,transmit_lmp 
+0x277d 005538 beq type_null ,end_of_packet 
+0x277e 005539 beq type_poll ,end_of_packet 
+0x277f 005540 beq type_fhs ,transmit_fhs 
+0x2780 005541 beq type_dm1 ,transmit_dm1 
+0x2781 005542 beq type_dh1 ,transmit_dh1 
+0x2782 005543 beq type_hv3 ,transmit_hev 
+0x2783 005544 beq type_3dh1 ,transmit_3dh1 
+0x2784 005545 arg 4 ,temp 
+0x2785 005546 call reserve_slot 
+0x2786 005547 beq type_dm3 ,transmit_dm3 
+0x2787 005548 beq type_dh3 ,transmit_dh3 
+0x2788 005549 arg 8 ,temp 
+0x2789 005550 call reserve_slot 
+0x278a 005551 beq type_dh5 ,transmit_dh5 
+0x278b 005552 branch transmit_dm5 
+:      005555 transmit_hev:
+0x278c 005556 bpatch patch0e_6 ,mem_patch0e 
+0x278d 005557 enable encode_fec0 
+0x278e 005558 enable enable_crc 
+0x278f 005559 enable encrypt 
+0x2790 005560 force 30 ,loopcnt 
+0x2791 005561 arg mem_sco_obuf ,contr 
+:      005562 transmit_ev_loop:
+0x2792 005563 ifetch 1 ,contr 
+0x2793 005564 inject mod ,8 
+0x2794 005565 loop transmit_ev_loop 
+0x2795 005566 bmark1 mark_esco ,transmit_end 
+0x2796 005567 branch end_of_packet 
+:      005569 transmit_fhs:
+0x2797 005570 bpatch patch0e_7 ,mem_patch0e 
+0x2798 005571 fetch 1 ,mem_fhs_am_addr 
+0x2799 005572 icopy am_addr 
+0x279a 005573 fetch 1 ,mem_fhs_misc 
+0x279b 005574 icopy fhs_misc 
+0x279c 005575 fetch 3 ,mem_class 
+0x279d 005576 icopy fhs_class 
+0x279e 005577 fetch 2 ,mem_nap 
+0x279f 005578 icopy nap 
+0x27a0 005579 enable enable_crc 
+0x27a1 005580 enable encode_fec2 
+0x27a2 005581 copy bt_adr ,rega 
+0x27a3 005582 call fetch_self_bt_adr 
+0x27a4 005583 pulse recalc 
+0x27a5 005584 nop 32 
+0x27a6 005585 copy bt_clk ,timeup 
+0x27a7 005586 fetch 4 ,mem_clkn_bt 
+0x27a8 005587 icopy bt_clk 
+0x27a9 005588 preload fhs0 
+0x27aa 005589 set1 58 ,pdata 
+0x27ab 005590 inject mod ,72 
+0x27ac 005591 preload fhs1 
+0x27ad 005592 inject mod ,72 
+0x27ae 005593 copy timeup ,bt_clk 
+0x27af 005594 copy rega ,bt_adr 
+0x27b0 005595 enable enable_parity 
+0x27b1 005596 inject mod ,16 
+0x27b2 005597 disable enable_parity 
+0x27b3 005598 branch end_of_packet 
+:      005600 transmit_lmp:
+0x27b4 005601 bpatch patch0f_0 ,mem_patch0f 
+0x27b5 005602 enable encrypt 
+0x27b6 005603 enable enable_crc 
+0x27b7 005604 enable encode_fec2 
+0x27b8 005605 fetch 1 ,mem_lmo_header_length 
+0x27b9 005606 and pdata ,0x1f8 ,temp 
+0x27ba 005607 arg mem_lmo_header_length ,contr 
+0x27bb 005608 increase 8 ,temp 
+:      005609 transmit_lmp_loop:
+0x27bc 005610 add temp ,-72 ,regc 
+0x27bd 005611 nbranch transmit_lmp_finish ,positive 
+0x27be 005612 ifetch 9 ,contr 
+0x27bf 005613 inject mod ,72 
+0x27c0 005614 copy regc ,temp 
+0x27c1 005615 branch transmit_lmp_loop 
+:      005616 transmit_lmp_finish:
+0x27c2 005617 ifetch 9 ,contr 
+0x27c3 005618 iinject mod ,temp 
+0x27c4 005619 branch transmit_end 
+:      005621 transmit_dm1:
+0x27c5 005622 enable encode_fec2 
+0x27c6 005623 branch transmit_dmh 
+:      005624 transmit_dm3:
+:      005625 transmit_dm5:
+0x27c7 005626 enable encode_fec2 
+0x27c8 005627 set1 mark_longpacket ,mark 
+0x27c9 005628 branch transmit_dmh 
+:      005630 transmit_3dh1:
+0x27ca 005631 set1 psk3m ,radio_ctrl 
+:      005632 transmit_dh1:
+0x27cb 005633 enable encode_fec0 
+0x27cc 005634 branch transmit_dmh 
+:      005636 transmit_dh3:
+:      005637 transmit_dh5:
+0x27cd 005638 set1 psk3m ,radio_ctrl 
+0x27ce 005639 enable encode_fec0 
+0x27cf 005640 set1 mark_longpacket ,mark 
+:      005642 transmit_dmh:
+0x27d0 005643 bpatch patch0f_1 ,mem_patch0f 
+0x27d1 005644 fetch 1 ,mem_state_map 
+0x27d2 005645 bbit0 smap_edr ,transmit_noedr 
+0x27d3 005646 sub type ,3 ,null 
+0x27d4 005647 branch transmit_noedr ,positive 
+0x27d5 005648 disable encrypt 
+0x27d6 005649 disable encode_fec2 
+0x27d7 005650 enable encode_fec0 
+0x27d8 005651 disable enable_white 
+0x27d9 005652 set1 psk ,radio_ctrl 
+0x27da 005653 isolate1 psk3m ,radio_ctrl 
+0x27db 005654 branch transmit_edr3m ,true 
+0x27dc 005655 setarg 0xabeee 
+0x27dd 005656 inject mod ,20 
+0x27de 005657 branch transmit_edr_sync_end 
+:      005658 transmit_edr3m:
+0x27df 005659 setarg 0x5faeba 
+0x27e0 005660 inject mod ,24 
+0x27e1 005661 setarg 0x12 
+0x27e2 005662 inject mod ,6 
+:      005663 transmit_edr_sync_end:
+0x27e3 005664 enable enable_white 
+0x27e4 005665 set1 mark_longpacket ,mark 
+:      005666 transmit_noedr:
+0x27e5 005667 enable encrypt 
+0x27e6 005668 enable enable_crc 
+0x27e7 005669 bmark1 mark_loopback ,transmit_loopback 
+0x27e8 005670 fetch 1 ,mem_tx_lch 
+0x27e9 005671 inject mod ,3 
+0x27ea 005672 fetch 2 ,mem_tx_len 
+0x27eb 005673 iforce loopcnt 
+0x27ec 005674 bmark1 mark_longpacket ,transmit_long 
+0x27ed 005675 inject mod ,5 
+0x27ee 005676 branch transmit_stuff 
+:      005677 transmit_long:
+0x27ef 005678 inject mod ,13 
+:      005679 transmit_stuff:
+0x27f0 005680 deposit loopcnt 
+0x27f1 005681 branch transmit_end ,blank 
+0x27f2 005682 fetch 2 ,mem_txptr 
+0x27f3 005683 iforce contr 
+:      005684 transmit_stuff_loop:
+0x27f4 005685 ifetch 1 ,contr 
+0x27f5 005686 inject mod ,8 
+0x27f6 005687 loop transmit_stuff_loop 
+:      005690 transmit_end:
+0x27f7 005691 enable enable_parity 
+0x27f8 005692 inject mod ,16 
+0x27f9 005693 disable enable_parity 
+0x27fa 005694 call set_wait_ack 
+0x27fb 005695 fetch 1 ,mem_state_map 
+0x27fc 005696 bbit0 smap_edr ,end_of_packet 
+0x27fd 005697 force 0 ,pdata 
+0x27fe 005698 inject mod ,6 
+0x27ff 005699 branch end_of_packet 
+:      005702 transmit_loopback:
+0x2800 005703 bpatch patch0f_2 ,mem_patch0f 
+0x2801 005704 bmark1 mark_longpacket ,transmit_loopback_long 
+:      005705 transmit_loopback_short:
+0x2802 005706 fetch 1 ,mem_lch_code 
+0x2803 005707 inject mod ,3 
+0x2804 005708 fetch 1 ,mem_len 
+0x2805 005709 iforce regc 
+0x2806 005710 inject mod ,5 
+0x2807 005711 branch transmit_loopback_cont 
+:      005712 transmit_loopback_long:
+0x2808 005713 fetch 1 ,mem_lch_code 
+0x2809 005714 inject mod ,3 
+0x280a 005715 fetch 2 ,mem_len 
+0x280b 005716 iforce regc 
+0x280c 005717 inject mod ,13 
+:      005718 transmit_loopback_cont:
+0x280d 005719 arg mem_rxbuf ,contr 
+:      005720 transmit_loopback_loop:
+0x280e 005721 copy regc ,null 
+0x280f 005722 branch transmit_loopback_end ,zero 
+0x2810 005723 ifetch 1 ,contr 
+0x2811 005724 inject mod ,8 
+0x2812 005725 increase -1 ,regc 
+0x2813 005726 branch transmit_loopback_loop 
+:      005727 transmit_loopback_end:
+0x2814 005728 fetch 2 ,mem_tst_pktcnt_dmh 
+0x2815 005729 increase 1 ,pdata 
+0x2816 005730 store 2 ,mem_tst_pktcnt_dmh 
+0x2817 005731 branch transmit_end 
+:      005734 apply_switch_clke:
+0x2818 005735 fetch 4 ,mem_clke_bt 
+0x2819 005736 add pdata ,7 ,rega 
+0x281a 005737 fetch 2 ,mem_slot_offset 
+0x281b 005738 nbranch apply_switch_nozero ,blank 
+0x281c 005739 increase -3 ,rega 
+0x281d 005740 branch apply_switch_wait_loop 
+:      005741 apply_switch_nozero:
+0x281e 005742 mul32 pdata ,12 ,pdata 
+0x281f 005743 hfetcht 2 ,core_halfslot 
+0x2820 005744 increase 1 ,temp 
+:      005745 apply_switch_loop:
+0x2821 005746 isub temp ,pdata 
+0x2822 005747 nbranch apply_switch_bt ,positive 
+0x2823 005748 increase -1 ,rega 
+0x2824 005749 branch apply_switch_loop 
+:      005750 apply_switch_bt:
+0x2825 005751 sub pdata ,0 ,pdata 
+:      005752 apply_switch_wait_loop:
+0x2826 005753 until null ,oneslot 
+0x2827 005754 compare 0 ,clkn_bt ,3 
+0x2828 005755 nbranch apply_switch_wait_loop ,true 
+0x2829 005756 iforce clke_rt 
+0x282a 005757 copy rega ,clke_bt 
+0x282b 005758 iforce clke_rt 
+0x282c 005759 rtn 
+:      005762 calc_slot_offset:
+0x282d 005763 bpatch patch0f_3 ,mem_patch0f 
+0x282e 005764 until null ,halfslot 
+0x282f 005765 deposit clke 
+0x2830 005766 iforce contr 
+0x2831 005767 rshift16 ,pdata ,pdata 
+0x2832 005768 isub clkn_bt ,loopcnt 
+0x2833 005769 and_into 3 ,loopcnt 
+0x2834 005770 nbranch calc_bt_portion ,zero 
+0x2835 005771 force 0 ,pdata 
+0x2836 005772 branch calc_skip_bt 
+:      005773 calc_bt_portion:
+0x2837 005774 arg 3750 ,temp 
+0x2838 005775 force 0 ,pdata 
+:      005776 calc_slot_offset_loop:
+0x2839 005777 iadd temp ,pdata 
+0x283a 005778 loop calc_slot_offset_loop 
+:      005779 calc_skip_bt:
+0x283b 005780 iadd contr ,pdata 
+0x283c 005781 div pdata ,12 
+0x283d 005782 call wait_div_end 
+0x283e 005783 quotient pdata 
+0x283f 005784 store 2 ,mem_slot_offset 
+0x2840 005785 rtn 
+:      005787 calc_clke_offset:
+0x2841 005788 bpatch patch0f_4 ,mem_patch0f 
+0x2842 005789 deposit clke 
+0x2843 005790 copy clkn ,temp 
+0x2844 005791 isub temp ,null 
+0x2845 005792 nsetflag positive ,44 ,pdata 
+0x2846 005793 isub temp ,temp 
+0x2847 005794 setarg 3750 
+0x2848 005795 isolate0 15 ,temp 
+0x2849 005796 branch calc_clke_pos ,true 
+0x284a 005797 setarg -61786 
+0x284b 005798 iadd temp ,temp 
+:      005799 calc_clke_pos:
+0x284c 005800 storet 6 ,mem_le_clk_offset 
+0x284d 005801 rtn le 
+0x284e 005802 storet 6 ,mem_clk_offset 
+0x284f 005803 rtn 
+:      005805 calc_clke:
+0x2850 005806 disable clknt 
+0x2851 005807 fetch 6 ,mem_le_clk_offset 
+0x2852 005808 branch calc_clke2 ,le 
+0x2853 005809 fetch 6 ,mem_clk_offset 
+:      005810 calc_clke2:
+0x2854 005811 iadd clkn ,alarm 
+0x2855 005812 increase 10 ,alarm 
+0x2856 005813 setarg 3750 
+0x2857 005814 isub alarm ,pdata 
+0x2858 005815 isolate0 15 ,pdata 
+0x2859 005816 branch calc_clke_pos_adj ,true 
+0x285a 005817 setarg 0xf15a 
+0x285b 005818 iadd alarm ,alarm 
+:      005819 calc_clke_pos2:
+0x285c 005820 copy alarm ,clke 
+0x285d 005821 rtn 
+:      005822 calc_clke_pos_adj:
+0x285e 005823 force 0 ,null 
+0x285f 005824 branch calc_clke_pos2 
+:      005831 calc_radio_freq:
+0x2860 005832 bpatch patch0f_5 ,mem_patch0f 
+0x2861 005833 call set_sync_on 
+0x2862 005834 copy bt_clk ,pdata 
+0x2863 005835 and_into 0x180 ,pdata 
+0x2864 005836 compare 3 ,freq_mode ,0x07 
+0x2865 005837 nbranch freq_not_connection ,true 
+0x2866 005838 rshift3 pdata ,pdata 
+0x2867 005839 iadd freq_index ,pdata 
+0x2868 005840 branch do_hop_mod_now 
+:      005841 freq_not_connection:
+0x2869 005842 copy freq_index ,pdata 
+:      005843 do_hop_mod_now:
+0x286a 005844 div pdata ,79 
+0x286b 005845 pulse recalc 
+0x286c 005846 call wait_div_end 
+0x286d 005847 remainder rega 
+0x286e 005848 add rega ,-40 ,temp 
+0x286f 005849 branch odd_half ,positive 
+0x2870 005850 lshift rega ,temp 
+0x2871 005851 branch freq_result 
+:      005852 odd_half:
+0x2872 005853 lshift temp ,temp 
+0x2873 005854 increase 1 ,temp 
+:      005855 freq_result:
+0x2874 005856 bpatch patch0f_6 ,mem_patch0f 
+0x2875 005857 fetch 1 ,mem_mode 
+0x2876 005858 bbit0 afh_change ,afh_process_con 
+:      005859 afh_process_0:
+0x2877 005860 fetch 4 ,mem_afh_instant 
+0x2878 005861 isub bt_clk ,null 
+0x2879 005862 branch afh_process_con ,positive 
+0x287a 005863 call afh_clear 
+0x287b 005864 fetch 1 ,mem_afh_new_mod 
+0x287c 005865 rtn blank 
+0x287d 005866 fetch 1 ,mem_mode 
+0x287e 005867 set1 afh_enable ,pdata 
+0x287f 005868 store 1 ,mem_mode 
+0x2880 005869 fetch 5 ,mem_afh_map_new 
+0x2881 005870 store 5 ,mem_afh_map_lo 
+0x2882 005871 ifetch 5 ,contr 
+0x2883 005872 store 5 ,mem_afh_map_hi 
+0x2884 005873 call afh_process_freq_map 
+:      005874 afh_process_con:
+0x2885 005875 fetch 1 ,mem_mode 
+0x2886 005876 rtnbit0 afh_enable 
+0x2887 005877 isolate1 1 ,bt_clk 
+0x2888 005878 branch afh_same_channel ,true 
+0x2889 005879 rshift3 temp ,rega 
+0x288a 005880 and temp ,7 ,queue 
+0x288b 005881 setarg mem_afh_map_lo 
+0x288c 005882 iadd rega ,rega 
+0x288d 005883 ifetch 1 ,rega 
+0x288e 005884 qisolate0 pdata 
+0x288f 005885 branch afh_process_1 ,true 
+0x2890 005886 deposit temp 
+0x2891 005887 branch afh_process_end 
+:      005888 afh_process_1:
+0x2892 005889 fetch 1 ,mem_afh_used 
+0x2893 005890 iforce regb 
+0x2894 005891 deposit bt_clk 
+0x2895 005892 and_into 0x180 ,pdata 
+0x2896 005893 rshift3 pdata ,pdata 
+0x2897 005894 iadd freq_index ,pdata 
+0x2898 005895 idiv regb 
+0x2899 005896 setarg mem_afh_map 
+0x289a 005897 call wait_div_end 
+0x289b 005898 remainder rega 
+0x289c 005899 iadd rega ,contr 
+0x289d 005900 ifetch 1 ,contr 
+:      005901 afh_process_end:
+0x289e 005902 store 1 ,mem_afh_index 
+0x289f 005903 iforce temp 
+0x28a0 005904 rtn 
+:      005906 afh_same_channel:
+0x28a1 005907 fetch 1 ,mem_afh_index 
+0x28a2 005908 iforce temp 
+0x28a3 005909 rtn 
+:      005911 afh_clear:
+0x28a4 005912 fetch 1 ,mem_mode 
+0x28a5 005913 set0 afh_enable ,pdata 
+0x28a6 005914 set0 afh_change ,pdata 
+0x28a7 005915 store 1 ,mem_mode 
+0x28a8 005916 rtn 
+:      005922 afh_process_freq_map:
+0x28a9 005923 bpatch patch0f_7 ,mem_patch0f 
+0x28aa 005924 arg mem_afh_map ,contw 
+0x28ab 005925 force 10 ,loopcnt 
+0x28ac 005926 call memset0 
+0x28ad 005927 arg mem_afh_map ,contw 
+0x28ae 005928 force 0 ,regc 
+0x28af 005929 force 2 ,queue 
+:      005930 process_freq_3:
+0x28b0 005931 fetch 5 ,mem_afh_map_lo 
+0x28b1 005932 iforce temp 
+0x28b2 005933 compare 2 ,queue ,0xff 
+0x28b3 005934 branch process_freq_1 ,true 
+0x28b4 005935 rshift temp ,temp 
+:      005936 process_freq_1:
+0x28b5 005937 isolate0 0 ,temp 
+0x28b6 005938 branch process_freq_0 ,true 
+0x28b7 005939 deposit regc 
+0x28b8 005940 istore 1 ,contw 
+:      005941 process_freq_0:
+0x28b9 005942 rshift2 temp ,temp 
+0x28ba 005943 increase 2 ,regc 
+0x28bb 005944 compare 40 ,regc ,0xfe 
+0x28bc 005945 nbranch process_freq_2 ,true 
+0x28bd 005946 fetch 5 ,mem_afh_map_hi 
+0x28be 005947 iforce temp 
+0x28bf 005948 compare 2 ,queue ,0xff 
+0x28c0 005949 branch process_freq_2 ,true 
+0x28c1 005950 rshift temp ,temp 
+:      005951 process_freq_2:
+0x28c2 005952 sub regc ,78 ,null 
+0x28c3 005953 branch process_freq_1 ,positive 
+0x28c4 005954 force 1 ,regc 
+0x28c5 005955 increase -1 ,queue 
+0x28c6 005956 nbranch process_freq_3 ,zero 
+0x28c7 005957 arg mem_afh_map ,rega 
+0x28c8 005958 deposit contw 
+0x28c9 005959 isub rega ,pdata 
+0x28ca 005960 store 1 ,mem_afh_used 
+0x28cb 005961 rtn 
+:      005963 rx_radio_freq:
+0x28cc 005964 bpatch patch10_0 ,mem_patch10 
+0x28cd 005965 call calc_radio_freq 
+0x28ce 005966 fetch 1 ,mem_debug_config 
+0x28cf 005967 bbit0 debug_rx_fixed_freq ,rx_radio_freq_now 
+0x28d0 005968 fetcht 1 ,mem_rx_fixed_freq 
+:      005969 rx_radio_freq_now:
+0x28d1 005970 branch set_freq_rx 
+:      005973 tx_radio_freq:
+0x28d2 005974 bpatch patch10_1 ,mem_patch10 
+0x28d3 005975 call calc_radio_freq 
+0x28d4 005976 fetch 1 ,mem_debug_config 
+0x28d5 005977 bbit0 debug_tx_fixed_freq ,tx_radio_freq_now 
+0x28d6 005978 fetcht 1 ,mem_tx_fixed_freq 
+:      005979 tx_radio_freq_now:
+0x28d7 005980 branch set_freq_tx 
+:      005983 fetch_giac:
+0x28d8 005984 force 0 ,uap 
+0x28d9 005985 fetch 3 ,mem_glap 
+0x28da 005986 iforce lap 
+0x28db 005987 rtn 
+:      005989 fetch_page_bt_adr:
+0x28dc 005990 bpatch patch10_2 ,mem_patch10 
+0x28dd 005991 fetch 1 ,mem_hci_puap 
+0x28de 005992 icopy uap 
+0x28df 005993 fetch 3 ,mem_hci_plap 
+0x28e0 005994 icopy lap 
+0x28e1 005995 rtn 
+:      005997 fetch_self_bt_adr:
+0x28e2 005998 bpatch patch10_3 ,mem_patch10 
+0x28e3 005999 fetch 2 ,mem_nap 
+0x28e4 006000 icopy nap 
+0x28e5 006001 fetch 1 ,mem_uap 
+0x28e6 006002 icopy uap 
+0x28e7 006003 fetch 3 ,mem_lap 
+0x28e8 006004 icopy lap 
+0x28e9 006005 rtn 
+:      006007 fetch_extm_bt_adr:
+0x28ea 006008 bpatch patch10_4 ,mem_patch10 
+0x28eb 006009 fetch 2 ,mem_pnap 
+0x28ec 006010 icopy nap 
+0x28ed 006011 fetch 1 ,mem_puap 
+0x28ee 006012 icopy uap 
+0x28ef 006013 fetch 3 ,mem_plap 
+0x28f0 006014 icopy lap 
+0x28f1 006015 rtn 
+:      006018 fetch_diac:
+0x28f2 006019 bmark1 mark_all_diac ,fetch_diac_do 
+0x28f3 006020 rtnmark0 mark_inquiry_state 
+0x28f4 006021 rtnmark0 mark_periodical_diac 
+:      006022 fetch_diac_do:
+0x28f5 006023 and_into -256 ,lap 
+0x28f6 006024 pulse recalc 
+0x28f7 006025 nop 32 
+0x28f8 006026 rtn 
+:      006029 shutdown_radio:
+0x28f9 006030 bpatch patch10_5 ,mem_patch10 
+0x28fa 006031 branch shutdown_radio0 ,is_rx 
+0x28fb 006032 jam 0xd4 ,rf_tx_pa_ib 
+0x28fc 006033 nop 4 
+0x28fd 006034 jam 0xd2 ,rf_tx_pa_ib 
+0x28fe 006035 nop 4 
+0x28ff 006036 jam 0xd1 ,rf_tx_pa_ib 
+0x2900 006037 nop 4 
+0x2901 006038 fetch 1 ,mem_tx_power 
+0x2902 006039 beq tx_power_0db ,shutdown_radio_0db 
+0x2903 006040 beq tx_power_3db ,shutdown_radio_3db 
+0x2904 006041 beq tx_power_5db ,shutdown_radio_5db 
+0x2905 006042 beq tx_power_f3db ,shutdown_radio_f3db 
+0x2906 006043 beq tx_power_f5db ,shutdown_radio_f5db 
+0x2907 006044 beq tx_power_pair ,shutdown_radio_pair 
+:      006045 shutdown_radio_5db:
+:      006046 shutdown_radio_0db:
+0x2908 006047 jam 0xd0 ,rf_tx_pa_ib 
+0x2909 006048 jam 0xe0 ,rf_tx_pa_gc 
+:      006049 shutdown_radio0:
+0x290a 006050 force 0 ,radio_ctrl 
+0x290b 006051 disable is_rx 
+0x290c 006052 disable is_tx 
+0x290d 006053 pulse packet_end 
+0x290e 006054 jam 0x0 ,rfen_mdm 
+0x290f 006055 jam 0x0 ,rfen_tx 
+0x2910 006056 jam 0x0 ,rfen_rx 
+0x2911 006057 jam 0 ,rfen_sn 
+0x2912 006058 jam 0x70 ,rfen_msc 
+0x2913 006059 jam 0x0 ,rfen_adc 
+0x2914 006060 rtn 
+:      006062 shutdown_radio_pair:
+:      006063 shutdown_radio_f5db:
+:      006064 shutdown_radio_f3db:
+:      006065 shutdown_radio_3db:
+0x2915 006066 jam 0xd0 ,rf_tx_pa_ib 
+0x2916 006067 jam 0xc0 ,rf_tx_pa_gc 
+0x2917 006068 branch shutdown_radio0 
+:      006070 set_sync_on:
+0x2918 006071 bpatch patch10_6 ,mem_patch10 
+0x2919 006072 jam 0x0 ,rfen_mdm 
+0x291a 006073 jam 0x0 ,rfen_tx 
+0x291b 006074 jam 0x18 ,rfen_rx 
+0x291c 006075 jam 0xa7 ,rfen_sn 
+0x291d 006076 jam 0x7f ,rfen_msc 
+0x291e 006077 rtn 
+:      006079 set_freq_rx:
+0x291f 006080 bpatch patch10_7 ,mem_patch10 
+0x2920 006082 storet 1 ,mem_last_freq 
+0x2921 006083 add temp ,rx_freq_offset ,rega 
+0x2922 006084 jam 0x07 ,rf_balun_ctrim 
+0x2923 006085 branch rf_write_freq 
+:      006086 rf_rx_enable:
+0x2924 006087 bpatch patch11_0 ,mem_patch11 
+0x2925 006088 jam 0xcf ,rfen_tx 
+0x2926 006089 nop 10 
+0x2927 006090 jam 0xff ,rfen_rx 
+0x2928 006091 jam 0xaf ,rfen_sn 
+0x2929 006092 jam 0xff ,rfen_msc 
+0x292a 006093 nop 10 
+0x292b 006094 jam 0xa0 ,rfen_mdm 
+0x292c 006095 rtn 
+:      006097 set_freq_tx_offset:
+0x292d 006098 fetch 1 ,mem_250k_freq_enable 
+0x292e 006099 branch set_freq_tx_2m_offset ,blank 
+:      006100 set_freq_tx_0m_offset:
+0x292f 006101 add temp ,2 ,rega 
+0x2930 006102 rtn 
+:      006103 set_freq_tx_2m_offset:
+0x2931 006104 add temp ,0 ,rega 
+0x2932 006105 rtn 
+:      006107 set_freq_tx:
+0x2933 006108 bpatch patch11_1 ,mem_patch11 
+0x2934 006109 storet 1 ,mem_last_freq 
+0x2935 006110 call set_freq_tx_offset 
+0x2936 006111 call rf_write_freq 
+0x2937 006112 setarg param_pll_setup 
+0x2938 006113 call sleep 
+:      006114 txon:
+0x2939 006115 jam 0x1 ,rfen_adc 
+0x293a 006116 jam 0x3c ,rfen_rx 
+0x293b 006117 jam 0xe0 ,rfen_tx 
+0x293c 006118 jam 0x12 ,rf_balun_ctrim 
+0x293d 006119 nop 10 
+0x293e 006120 jam 0x01 ,rfen_mdm 
+0x293f 006121 jam 0x3d ,rfen_mdm 
+0x2940 006122 nop 10 
+0x2941 006123 jam 0xb7 ,rfen_sn 
+0x2942 006124 nop 10 
+0x2943 006125 jam 0x7f ,rfen_mdm 
+:      006126 txon_power_select:
+0x2944 006127 fetch 1 ,mem_tx_power 
+0x2945 006128 beq tx_power_0db ,set_tx_power_0db 
+0x2946 006129 beq tx_power_3db ,set_tx_power_3db 
+0x2947 006130 beq tx_power_5db ,set_tx_power_5db 
+0x2948 006131 beq tx_power_f3db ,set_tx_power_f3db 
+0x2949 006132 beq tx_power_f5db ,set_tx_power_f5db 
+0x294a 006133 beq tx_power_pair ,set_tx_power_pair 
+:      006134 set_tx_power_0db:
+0x294b 006135 jam 0xf0 ,rf_tx_pa_gc 
+0x294c 006136 call txon_common 
+0x294d 006137 jam 0xd8 ,rf_tx_pa_ib 
+0x294e 006138 rtn 
+:      006140 set_tx_power_3db:
+0x294f 006141 jam 0xdf ,rf_tx_pa_gc 
+0x2950 006142 call txon_common 
+0x2951 006143 jam 0xdf ,rf_tx_pa_ib 
+0x2952 006144 rtn 
+:      006146 set_tx_power_5db:
+0x2953 006147 jam 0xff ,rf_tx_pa_gc 
+0x2954 006148 call txon_common 
+0x2955 006149 jam 0xdf ,rf_tx_pa_ib 
+0x2956 006150 rtn 
+:      006151 set_tx_power_f3db:
+0x2957 006152 jam 0xce ,rf_tx_pa_gc 
+0x2958 006153 call txon_common 
+0x2959 006154 jam 0xd8 ,rf_tx_pa_ib 
+0x295a 006155 rtn 
+:      006157 set_tx_power_f5db:
+0x295b 006158 jam 0xcb ,rf_tx_pa_gc 
+0x295c 006159 call txon_common 
+0x295d 006160 jam 0xd8 ,rf_tx_pa_ib 
+0x295e 006161 rtn 
+:      006163 set_tx_power_pair:
+0x295f 006164 jam 0xd0 ,rf_tx_pa_ib 
+0x2960 006165 jam 0xc0 ,rf_tx_pa_gc 
+0x2961 006166 jam 0x4c ,0x8957 
+0x2962 006167 jam 0x6c ,0x8958 
+0x2963 006168 jam 0x50 ,0x8959 
+0x2964 006169 rtn 
+:      006171 txon_common:
+0x2965 006172 nop 4 
+0x2966 006173 jam 0xd1 ,rf_tx_pa_ib 
+0x2967 006174 nop 4 
+0x2968 006175 jam 0xd2 ,rf_tx_pa_ib 
+0x2969 006176 nop 4 
+0x296a 006177 jam 0xd4 ,rf_tx_pa_ib 
+0x296b 006178 rtn 
+:      006181 initialize_radio:
+0x296c 006182 jam clksel_rc ,core_clksel 
+:      006183 initialize_radio_wait:
+0x296d 006184 fetch 2 ,mem_rf_init_ptr 
+0x296e 006185 bbit0 14 ,initialize_radio_wait 
+0x296f 006186 iforce contr 
+0x2970 006187 arg 0x8900 ,temp 
+:      006188 initialize_radio_loop:
+0x2971 006189 ifetch 1 ,contr 
+0x2972 006190 beq 0xff ,initialize_radio_cont 
+0x2973 006191 ior temp ,contw 
+0x2974 006192 ifetch 1 ,contr 
+0x2975 006193 istore 1 ,contw 
+0x2976 006194 branch initialize_radio_loop 
+:      006195 initialize_radio_cont:
+0x2977 006196 bpatch patch11_2 ,mem_patch11 
+0x2978 006197 call lpm_cal_xtal_startup 
+0x2979 006198 call switchto_dpllclk 
+0x297a 006200 setarg param_dpll_start_delay 
+0x297b 006201 iadd clkn_bt ,pdata 
+0x297c 006202 store 4 ,mem_dpll_clkn 
+0x297d 006203 set1 reset ,radio_ctrl 
+0x297e 006204 force 0 ,radio_ctrl 
+0x297f 006205 ncall do_rccal ,wake 
+0x2980 006206 branch set_rccal 
+:      006209 rf_write_freq:
+0x2981 006210 bpatch patch11_3 ,mem_patch11 
+0x2982 006211 setarg 2400 
+0x2983 006212 iadd rega ,temp 
+0x2984 006213 fetch 1 ,mem_fcomp_mul 
+0x2985 006214 jam 0x04 ,rf_pll_rstn 
+0x2986 006215 imul32 temp ,pdata 
+0x2987 006216 fetcht 1 ,mem_fcomp_div 
+0x2988 006217 idiv temp 
+0x2989 006218 call wait_div_end 
+0x298a 006219 quotient rega 
+0x298b 006220 remainder pdata 
+0x298c 006221 lshift16 pdata ,pdata 
+0x298d 006222 lshift4 pdata ,pdata 
+0x298e 006223 idiv temp 
+0x298f 006224 call wait_div_end 
+0x2990 006225 quotient pdata 
+0x2991 006226 lshift8 pdata ,pdata 
+0x2992 006227 lshift pdata ,pdata 
+0x2993 006228 ior rega ,pdata 
+0x2994 006229 hstore 4 ,rf_pll_intg 
+0x2995 006230 jam 0x44 ,rf_pll_rstn 
+0x2996 006231 jam 0xc4 ,rf_pll_rstn 
+0x2997 006232 rtn 
+:      006235 do_rccal:
+0x2998 006236 bpatch patch11_4 ,mem_patch11 
+0x2999 006237 jam 0x02 ,rfen_adc 
+0x299a 006238 setarg 250000 
+0x299b 006239 call sleep 
+0x299c 006240 jam 0x7f ,rfen_rx 
+0x299d 006241 nop 130 
+0x299e 006242 jam 0x30 ,rf_rccal_ctrl 
+0x299f 006243 jam 0xd0 ,rfen_tx 
+0x29a0 006244 jam 0x70 ,rf_rccal_ctrl 
+0x29a1 006245 jam 0xf0 ,rf_rccal_ctrl 
+0x29a2 006246 force 50 ,loopcnt 
+:      006247 do_rccal_loop:
+0x29a3 006248 hfetch 1 ,rf_rccal_result 
+0x29a4 006249 bbit1 5 ,do_rccal_end 
+0x29a5 006250 loop do_rccal_loop 
+:      006251 do_rccal_end:
+0x29a6 006252 store 1 ,mem_rf_rccal 
+0x29a7 006253 jam 0 ,rfen_tx 
+0x29a8 006254 jam 0 ,rfen_rx 
+0x29a9 006255 jam 0x00 ,rfen_adc 
+0x29aa 006256 rtn 
+:      006258 set_rccal:
+0x29ab 006259 bpatch patch11_5 ,mem_patch11 
+0x29ac 006260 fetch 1 ,mem_rf_rccal 
+0x29ad 006261 set1 5 ,pdata 
+0x29ae 006262 hstore 1 ,rf_rccal_ctrl 
+0x29af 006263 hfetcht 1 ,rf_bpf_ctrim 
+0x29b0 006264 and_into 7 ,temp 
+0x29b1 006265 lshift3 pdata ,pdata 
+0x29b2 006266 ior temp ,pdata 
+0x29b3 006267 hstore 1 ,rf_bpf_ctrim 
+0x29b4 006268 hfetch 1 ,rf_bpf_ib 
+0x29b5 006269 set0 bpf_rccal ,pdata 
+0x29b6 006270 hstore 1 ,rf_bpf_ib 
+0x29b7 006271 hfetch 1 ,rf_adc_rccal 
+0x29b8 006272 set0 adc_rccal ,pdata 
+0x29b9 006273 hstore 1 ,rf_adc_rccal 
+0x29ba 006274 rtn 
+:      006276 save_rssi:
+0x29bb 006277 bpatch patch11_6 ,mem_patch11 
+0x29bc 006278 hfetch 2 ,rf_afc_d2a 
+0x29bd 006279 rshift4 pdata ,pdata 
+0x29be 006280 rshift3 pdata ,pdata 
+0x29bf 006281 sub pdata ,0 ,pdata 
+:      006282 bcd:
+0x29c0 006283 and_into 0xff ,pdata 
+0x29c1 006284 div pdata ,10 
+0x29c2 006285 call wait_div_end 
+0x29c3 006286 quotient pdata 
+0x29c4 006287 lshift4 pdata ,pdata 
+0x29c5 006288 remainder temp 
+0x29c6 006289 ior temp ,pdata 
+0x29c7 006290 store 1 ,mem_rssi 
+0x29c8 006291 rtn 
+:      006294 switchto_dpllclk:
+0x29c9 006295 jam clksel_rc ,core_clksel 
+0x29ca 006296 hfetch 1 ,rf_clkpll_frac + 2 
+0x29cb 006297 set0 4 ,pdata 
+0x29cc 006298 set0 5 ,pdata 
+0x29cd 006299 hstore 1 ,rf_clkpll_frac + 2 
+0x29ce 006300 jam 0x00 ,rfen_ck 
+0x29cf 006301 jam 0x00 ,rfen_msc 
+0x29d0 006302 jam 0x70 ,rfen_msc 
+0x29d1 006303 jam 0xff ,rfen_ck 
+0x29d2 006304 hfetch 1 ,rf_clkpll_frac + 2 
+0x29d3 006305 set1 4 ,pdata 
+0x29d4 006306 set1 5 ,pdata 
+0x29d5 006307 hstore 1 ,rf_clkpll_frac + 2 
+0x29d6 006308 call init_lpm_ctrl 
+0x29d7 006309 hfetch 1 ,rf_clkpll_int 
+0x29d8 006310 set1 7 ,pdata 
+0x29d9 006311 hstore 1 ,rf_clkpll_int 
+0x29da 006312 set0 7 ,pdata 
+0x29db 006313 hstore 1 ,rf_clkpll_int 
+0x29dc 006314 set1 7 ,pdata 
+0x29dd 006315 hstore 1 ,rf_clkpll_int 
+0x29de 006316 jam clksel_dpll ,core_clksel 
+0x29df 006317 nop 1 
+0x29e0 006318 jam clksel_xtal ,core_clksel 
+0x29e1 006319 hfetch 1 ,rf_clkpll_frac + 2 
+0x29e2 006320 and_into 0xcf ,pdata 
+0x29e3 006321 hstore 1 ,rf_clkpll_frac + 2 
+0x29e4 006322 or_into 0x30 ,pdata 
+0x29e5 006323 hstore 1 ,rf_clkpll_frac + 2 
+0x29e6 006324 rtn 
+:      006327 xtal_fast_wake:
+0x29e7 006328 setarg 0xf0f 
+0x29e8 006329 branch lpm_write_config 
+:      006331 init_lpm_ctrl:
+0x29e9 006332 setarg 0x80f 
+0x29ea 006333 branch lpm_write_config 
+:      006337 start_receiver:
+0x29eb 006338 bpatch patch11_7 ,mem_patch11 
+0x29ec 006339 call rf_rx_enable 
+0x29ed 006340 disable is_tx 
+0x29ee 006341 enable is_rx 
+0x29ef 006342 pulse init_encrypt 
+0x29f0 006343 rtn 
+:      006345 prep_crypt:
+0x29f1 006346 bpatch patch12_0 ,mem_patch12 
+0x29f2 006347 fetch 1 ,mem_state_map 
+0x29f3 006348 isolate1 smap_encryption ,pdata 
+0x29f4 006349 setflag true ,0 ,pdata 
+0x29f5 006350 hstore 1 ,core_encrypt 
+0x29f6 006351 arg mem_kc ,contr 
+0x29f7 006352 ifetch 9 ,contr 
+0x29f8 006353 iforce kc_ls 
+0x29f9 006354 ifetch 7 ,contr 
+0x29fa 006355 iforce kc_ms 
+0x29fb 006356 fetch 1 ,mem_key_size 
+0x29fc 006357 add pdata ,-1 ,g1l 
+0x29fd 006358 pulse kc_p_activate 
+0x29fe 006359 rtn 
+:      006361 wait_access_end:
+0x29ff 006362 deposit clke 
+0x2a00 006363 store 6 ,mem_sync_clke 
+0x2a01 006364 disable decode_fec0 
+0x2a02 006365 nbranch shutdown_radio ,sync 
+0x2a03 006366 arg param_clke_cal ,clke_rt 
+0x2a04 006367 increase 1 ,clke_bt 
+0x2a05 006368 and_into 0x1fc ,clke_bt 
+0x2a06 006369 rtn 
+:      006373 wait_access_mhalfbnd:
+0x2a07 006374 enable decode_fec0 
+:      006375 wait_access_mhalfbnd_correlate:
+0x2a08 006376 correlate null ,mhalfbnd 
+0x2a09 006377 branch wait_access_end ,sync 
+0x2a0a 006378 compare 0x02 ,clke_bt ,0x02 
+0x2a0b 006379 nbranch wait_access_mhalfbnd_correlate ,true 
+0x2a0c 006380 branch wait_access_end 
+:      006382 wait_access_clkn_rt:
+0x2a0d 006383 bpatch patch12_1 ,mem_patch12 
+0x2a0e 006384 arg param_conn_access ,timeup 
+0x2a0f 006385 enable decode_fec0 
+0x2a10 006386 correlate clkn_rt ,meet 
+0x2a11 006387 disable decode_fec0 
+0x2a12 006388 nbranch shutdown_radio ,sync 
+0x2a13 006389 rtn 
+:      006391 wait_access_forever:
+0x2a14 006392 bpatch patch12_2 ,mem_patch12 
+0x2a15 006393 enable decode_fec0 
+0x2a16 006394 correlate null ,timeout 
+0x2a17 006395 disable decode_fec0 
+0x2a18 006396 nbranch shutdown_radio ,sync 
+0x2a19 006397 arg param_clke_cal ,clke_rt 
+0x2a1a 006398 and_into 0x1fc ,clke_bt 
+0x2a1b 006399 rtn 
+:      006402 reserve_slot:
+0x2a1c 006403 bpatch patch12_3 ,mem_patch12 
+0x2a1d 006404 iforce rega 
+0x2a1e 006405 deposit bt_clk 
+0x2a1f 006406 iadd temp ,timeup 
+0x2a20 006407 copy timeup ,pdata 
+0x2a21 006408 store 4 ,mem_next_btclk 
+0x2a22 006409 deposit rega 
+0x2a23 006410 rtn 
+:      006413 ahead_window:
+0x2a24 006414 copy pdata ,temp 
+0x2a25 006415 bpatch patch12_4 ,mem_patch12 
+0x2a26 006416 copy temp ,pdata 
+0x2a27 006417 call clk2bt 
+0x2a28 006418 lshift16 bt_clk ,pdata 
+0x2a29 006419 set1 44 ,pdata 
+0x2a2a 006420 call clk_diff 
+0x2a2b 006421 set0 44 ,pdata 
+0x2a2c 006422 call get_clk 
+0x2a2d 006423 call clk_diff 
+0x2a2e 006424 rtn user 
+0x2a2f 006425 call clk2rt 
+0x2a30 006426 iforce stop_watch 
+0x2a31 006427 until null ,timeout 
+0x2a32 006428 rtn 
+:      006431 setup_clk:
+0x2a33 006432 bpatch patch12_5 ,mem_patch12 
+0x2a34 006433 branch setup_clkn ,clknt 
+0x2a35 006434 until clke_rt ,meet 
+:      006435 skip_setup_clke:
+0x2a36 006436 copy clke_bt ,temp 
+0x2a37 006437 branch setup_clknbt 
+:      006438 setup_clkn:
+0x2a38 006439 branch skip_setup_clkn ,attempt 
+0x2a39 006440 until clkn_rt ,meet 
+:      006441 skip_setup_clkn:
+0x2a3a 006442 copy clkn_bt ,temp 
+:      006443 setup_clknbt:
+0x2a3b 006444 branch setup_clk11 ,user 
+0x2a3c 006445 compare 1 ,temp ,3 
+0x2a3d 006446 nbranch setup_clk ,true 
+:      006447 setup_complete:
+0x2a3e 006448 bpatch patch12_6 ,mem_patch12 
+0x2a3f 006449 fetch 1 ,mem_state 
+0x2a40 006450 rtnbit0 state_inconn 
+0x2a41 006451 fetch 4 ,mem_next_btclk 
+0x2a42 006452 isub temp ,pdata 
+0x2a43 006453 nrtn positive 
+0x2a44 006454 sub pdata ,0xff ,null 
+0x2a45 006455 branch setup_clk ,positive 
+0x2a46 006456 rtn 
+:      006457 setup_clk11:
+0x2a47 006458 compare 3 ,temp ,3 
+0x2a48 006459 nbranch setup_clk ,true 
+0x2a49 006460 branch setup_complete 
+:      006462 rf_setup_time:
+0x2a4a 006463 bpatch patch12_7 ,mem_patch12 
+0x2a4b 006464 arg param_rf_setup ,timeup 
+0x2a4c 006465 branch setup_clk 
+:      006467 rf_setup_time_slave_slot:
+0x2a4d 006468 disable user 
+0x2a4e 006469 branch rf_setup_time 
+:      006471 rf_setup_time_master_slot:
+0x2a4f 006472 enable user 
+0x2a50 006473 branch rf_setup_time 
+:      006475 start_transmitter:
+0x2a51 006476 bpatch patch13_0 ,mem_patch13 
+0x2a52 006477 call prep_crypt 
+0x2a53 006478 disable is_rx 
+0x2a54 006479 enable is_tx 
+0x2a55 006480 rtn 
+:      006484 start_tx_native:
+0x2a56 006485 bpatch patch13_1 ,mem_patch13 
+0x2a57 006486 arg param_tx_setup ,timeup 
+0x2a58 006487 until clkn_rt ,meet 
+0x2a59 006488 pulse init_encrypt 
+0x2a5a 006489 rtn 
+:      006491 start_rx_native:
+0x2a5b 006492 bpatch patch13_2 ,mem_patch13 
+0x2a5c 006493 arg param_rx_setup ,timeup 
+0x2a5d 006494 until clkn_rt ,meet 
+0x2a5e 006495 rtn 
+:      006498 start_tx_external:
+0x2a5f 006499 bpatch patch13_3 ,mem_patch13 
+0x2a60 006500 arg param_tx_setup ,timeup 
+0x2a61 006501 until clke_rt ,meet 
+0x2a62 006502 pulse init_encrypt 
+0x2a63 006503 rtn 
+:      006505 send_access_word:
+0x2a64 006506 bpatch patch13_4 ,mem_patch13 
+0x2a65 006507 preload access 
+0x2a66 006508 enable encode_fec0 
+0x2a67 006509 set1 txgfsk ,radio_ctrl 
+0x2a68 006510 inject mod ,72 
+0x2a69 006511 disable encode_fec0 
+0x2a6a 006512 rtn 
+:      006515 scan_mode_whiten:
+0x2a6b 006516 copy xin ,temp 
+0x2a6c 006517 or_into 0x60 ,temp 
+0x2a6d 006518 copy temp ,white_init 
+0x2a6e 006519 rtn 
+:      006524 get_free_amaddr:
+0x2a6f 006525 bpatch patch13_5 ,mem_patch13 
+0x2a70 006526 fetch 1 ,mem_current_amaddr 
+0x2a71 006527 increase 1 ,pdata 
+0x2a72 006528 bne param_esco_addr ,get_free_amaddr_cont 
+0x2a73 006529 force 1 ,pdata 
+:      006530 get_free_amaddr_cont:
+0x2a74 006531 store 1 ,mem_current_amaddr 
+0x2a75 006532 iforce am_addr 
+0x2a76 006533 rtn 
+:      006535 get_clk:
+0x2a77 006536 copy clkn ,temp 
+0x2a78 006537 rtn master 
+0x2a79 006538 copy clke ,temp 
+0x2a7a 006539 rtn 
+:      006541 get_clkbt:
+0x2a7b 006542 deposit clkn_bt 
+0x2a7c 006543 rtn master 
+0x2a7d 006544 deposit clke_bt 
+0x2a7e 006545 rtn 
+:      006548 supervision_update:
+0x2a7f 006549 bpatch patch13_6 ,mem_patch13 
+0x2a80 006550 fetcht 4 ,mem_supervision_timer 
+0x2a81 006551 call get_clkbt 
+0x2a82 006552 isub temp ,timeup 
+0x2a83 006553 deposit timeup 
+0x2a84 006554 fetcht 2 ,mem_supervision_to 
+0x2a85 006555 lshift temp ,temp 
+0x2a86 006556 isub temp ,pdata 
+0x2a87 006557 rtn 
+:      006559 supervision_flush:
+0x2a88 006560 bpatch patch13_7 ,mem_patch13 
+0x2a89 006561 call get_clkbt 
+0x2a8a 006562 store 4 ,mem_supervision_timer 
+0x2a8b 006563 rtn 
+:      006565 assert:
+0x2a8c 006566 bpatch patch14_0 ,mem_patch14 
+0x2a8d 006567 branch assert 
+:      006569 loop:
+0x2a8e 006570 branch loop 
+:      006572 sleep:
+0x2a8f 006573 rtn blank 
+0x2a90 006575 rshift pdata ,pdata 
+0x2a91 006576 increase -3 ,pdata 
+:      006577 sleep_loop:
+0x2a92 006578 increase -1 ,pdata 
+0x2a93 006579 nbranch sleep_loop ,zero 
+0x2a94 006580 force 0 ,pdata 
+0x2a95 006581 rtn 
+:      006585 init_param:
+0x2a96 006587 arg 0x10 ,loopcnt 
+0x2a97 006588 arg 0 ,contw 
+0x2a98 006589 call memset0 
+0x2a99 006590 arg mem_le_state ,contw 
+0x2a9a 006591 arg 10 ,loopcnt 
+0x2a9b 006592 call memset0 
+0x2a9c 006593 jam 0 ,mem_sp_calc 
+0x2a9d 006594 jam 0 ,mem_fifo_temp 
+0x2a9e 006595 jam 0 ,mem_le_testtype 
+0x2a9f 006596 jam 0 ,mem_debug_config 
+0x2aa0 006597 jam 0 ,mem_lmp_conn_state 
+0x2aa1 006598 bpatch patch14_1 ,mem_patch14 
+0x2aa2 006599 jam 0 ,mem_connection_options 
+0x2aa3 006600 jam 0 ,mem_tester_emulate 
+0x2aa4 006601 jam 0 ,mem_tester_cnt 
+0x2aa5 006602 setarg param_glap 
+0x2aa6 006603 store 3 ,mem_glap 
+0x2aa7 006604 setarg param_acl_pktlen 
+0x2aa8 006605 store 2 ,mem_acl_pktlen 
+0x2aa9 006606 jam param_sco_pktlen ,mem_sco_pktlen 
+0x2aaa 006607 jam param_acl_pktcnt ,mem_acl_pktcnt 
+0x2aab 006608 jam param_sco_pktcnt ,mem_sco_pktcnt 
+0x2aac 006609 setarg param_hci_version 
+0x2aad 006610 store 3 ,mem_hci_version 
+0x2aae 006615 jam 0x60 ,mem_fhs_misc 
+0x2aaf 006616 jam param_max_slot ,mem_max_slot 
+0x2ab0 006617 jam 0x02 ,mem_fw_ver 
+0x2ab1 006618 fetch 1 ,mem_ssp_enable 
+0x2ab2 006619 ncall init_memp ,blank 
+0x2ab3 006620 fetch 1 ,mem_le_secure_connect_enable 
+0x2ab4 006621 ncall init_memp_256 ,blank 
+0x2ab5 006622 bpatch patch14_2 ,mem_patch14 
+0x2ab6 006623 rtn wake 
+0x2ab7 006624 setarg 0 
+0x2ab8 006625 store 2 ,mem_tx_len 
+0x2ab9 006626 rshift clkn_bt ,pdata 
+0x2aba 006627 store 4 ,mem_last_clkn 
+0x2abb 006628 rtn 
+:      006635 lpmstate:
+0x2abc 006636 setarg 0xee21 
+0x2abd 006637 hstore 2 ,core_clkoff 
+0x2abe 006638 hfetch 4 ,core_gpio_in 
+0x2abf 006639 store 4 ,mem_saved_gpio_in 
+0x2ac0 006640 hfetch 1 ,core_lpm_ldocnt 
+0x2ac1 006641 store 1 ,mem_wakup_from_power_flag 
+0x2ac2 006642 bbit0 gpio_latch ,loadcode 
+0x2ac3 006643 enable wake 
+0x2ac4 006644 bbit0 cold_wake ,lpmwake 
+0x2ac5 006645 disable wake 
+0x2ac6 006646 deposit auxcnt 
+0x2ac7 006647 nbranch lpmwake ,blank 
+0x2ac8 006648 hfetch 1 ,core_lpm_ctrl + 3 
+0x2ac9 006649 bbit1 reload_code ,lpmwake 
+0x2aca 006650 arg param_hibernate_clks ,temp 
+0x2acb 006651 branch lpm_enter_sleep 
+:      006652 lpmwake:
+0x2acc 006653 hfetch 3 ,core_lpm_xtalcnt 
+0x2acd 006654 hstore 3 ,core_lpm_reg 
+0x2ace 006655 ifetch 1 ,contr 
+0x2acf 006656 or_into isogate_mask ,pdata 
+0x2ad0 006657 istore 1 ,contw 
+0x2ad1 006658 call lpm_write_ctrl2 
+0x2ad2 006659 hfetch 1 ,core_lpm_isogate 
+0x2ad3 006660 set1 enable_retmem ,pdata 
+0x2ad4 006661 hstore 1 ,core_lpm_isogate 
+0x2ad5 006662 call lpm_write_ctrl2 
+0x2ad6 006663 call lpm_load_context ,wake 
+0x2ad7 006664 hfetch 1 ,core_lpm_reg + 2 
+0x2ad8 006665 set0 gpio_latch ,pdata 
+0x2ad9 006666 hstore 1 ,core_lpm_reg + 2 
+0x2ada 006667 call lpm_write_ctrl2 
+0x2adb 006668 nbranch loadcode ,wake 
+0x2adc 006669 rtnmark0 mark_otp_encrypt 
+0x2add 006670 jam lock_otp ,core_misc_ctrl 
+0x2ade 006671 rtn 
+:      006673 lpm_load_context:
+0x2adf 006674 fetch 1 ,mem_saved_spidctrl 
+0x2ae0 006675 hstore 1 ,core_spid_ctrl 
+0x2ae1 006676 fetch 3 ,mem_saved_gsel 
+0x2ae2 006677 hstore 3 ,core_gpio_sel 
+0x2ae3 006678 fetch 4 ,mem_saved_gpio + 4 
+0x2ae4 006679 hstore 4 ,core_gpio_out0 
+0x2ae5 006680 fetch 4 ,mem_saved_gpio 
+0x2ae6 006681 hstore 4 ,core_gpio_oe0 
+0x2ae7 006682 fetch 8 ,mem_saved_gpio + 8 
+0x2ae8 006683 hstore 8 ,core_gpio_pu0 
+0x2ae9 006684 fetch 8 ,mem_saved_mark 
+0x2aea 006685 iforce mark 
+0x2aeb 006686 hfetch 8 ,core_gpio_wakeup_low 
+0x2aec 006687 store 8 ,mem_gpio_wakeup_low 
+0x2aed 006688 call load_ucode 
+0x2aee 006689 rtn 
+:      006691 lpm_save_context:
+0x2aef 006692 deposit mark 
+0x2af0 006693 store 8 ,mem_saved_mark 
+0x2af1 006694 hfetch 8 ,core_gpio_oe0 
+0x2af2 006695 store 8 ,mem_saved_gpio 
+0x2af3 006696 ifetch 8 ,contr 
+0x2af4 006697 istore 8 ,contw 
+0x2af5 006698 hfetch 3 ,core_gpio_sel 
+0x2af6 006699 store 3 ,mem_saved_gsel 
+0x2af7 006700 hfetch 1 ,core_spid_ctrl 
+0x2af8 006701 store 1 ,mem_saved_spidctrl 
+0x2af9 006702 branch lpm_write_gpio_wakeup 
+:      006704 lpo_calibration:
+0x2afa 006705 hfetch 1 ,core_bist_ctrl 
+0x2afb 006706 nbranch lpo_cal_inited ,blank 
+0x2afc 006707 fetch 3 ,mem_clks_per_lpo 
+0x2afd 006708 nrtn blank 
+0x2afe 006709 jam 0xc0 ,core_bist_ctrl 
+0x2aff 006710 jam ccnt_start ,core_misc_ctrl 
+:      006711 lpo_cal_inited:
+0x2b00 006712 hfetch 1 ,core_perf_status 
+0x2b01 006713 rtnbit0 1 
+0x2b02 006714 hfetch 3 ,core_clk_counter 
+0x2b03 006715 store 3 ,mem_clks_per_lpo 
+0x2b04 006716 rtn 
+:      006720 lpm_adjust_clk:
+0x2b05 006721 bpatch patch14_3 ,mem_patch14 
+0x2b06 006722 deposit clke 
+0x2b07 006723 call clk_diff_rt 
+0x2b08 006724 fetcht 4 ,mem_sleep_counter_all 
+0x2b09 006725 sub temp ,0xff ,null 
+0x2b0a 006726 rtn positive 
+0x2b0b 006727 lshift8 pdata ,pdata 
+0x2b0c 006728 lshift4 pdata ,pdata 
+0x2b0d 006729 idiv temp 
+0x2b0e 006730 call wait_div_end 
+0x2b0f 006731 quotient pdata 
+0x2b10 006732 arg param_lpm_adjmax ,temp 
+0x2b11 006733 call ceiling 
+0x2b12 006734 store 1 ,mem_lpm_adjust 
+0x2b13 006735 nbranch lpm_adjust_positive ,user 
+0x2b14 006736 sub pdata ,0 ,pdata 
+:      006737 lpm_adjust_positive:
+0x2b15 006738 fetcht 3 ,mem_clks_per_lpo 
+0x2b16 006739 iadd temp ,pdata 
+0x2b17 006740 store 3 ,mem_clks_per_lpo 
+:      006741 lpm_clear_counter:
+0x2b18 006742 setarg 0 
+0x2b19 006743 store 4 ,mem_sleep_counter_all 
+0x2b1a 006744 rtn 
+:      006748 lpm_doze:
+0x2b1b 006749 fetch 1 ,mem_lpm_config + 2 
+0x2b1c 006750 set1 reload_code ,pdata 
+0x2b1d 006751 store 1 ,mem_lpm_config + 2 
+0x2b1e 006752 branch lpm_hibernate_normal 
+:      006756 lpm_hibernate:
+0x2b1f 006757 arg param_hibernate_clks ,temp 
+0x2b20 006758 fetch 1 ,mem_lpm_config + 1 
+0x2b21 006759 set0 7 ,pdata 
+0x2b22 006760 store 1 ,mem_lpm_config + 1 
+:      006761 lpm_hibernate_normal:
+0x2b23 006762 bpatch patch14_4 ,mem_patch14 
+0x2b24 006763 call lpm_write_gpio_wakeup 
+0x2b25 006764 fetch 1 ,mem_lpm_hibernate_switch 
+0x2b26 006765 store 1 ,mem_lpm_xtalcnt + 4 
+0x2b27 006766 fetch 1 ,mem_lpm_xtalcnt + 2 
+0x2b28 006767 set1 cold_wake ,pdata 
+0x2b29 006768 store 1 ,mem_lpm_xtalcnt + 2 
+:      006771 lpm_sleep:
+0x2b2a 006772 bpatch patch14_5 ,mem_patch14 
+0x2b2b 006773 call xtal_fast_wake 
+0x2b2c 006774 fetch 4 ,mem_sleep_counter_all 
+0x2b2d 006775 iadd temp ,pdata 
+0x2b2e 006776 store 4 ,mem_sleep_counter_all 
+0x2b2f 006777 call lpm_save_context 
+0x2b30 006778 fetch 5 ,mem_lpm_xtalcnt 
+0x2b31 006779 hstore 4 ,core_lpm_reg 
+0x2b32 006780 rshift32 pdata ,rega 
+0x2b33 006781 until null ,lpo_edge 
+0x2b34 006782 deposit clkn 
+0x2b35 006783 store 6 ,mem_sleep_clkn 
+0x2b36 006784 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
+0x2b37 006785 until null ,lpo_edge 
+0x2b38 006786 until null ,lpo_edge 
+0x2b39 006787 deposit rega 
+0x2b3a 006788 hstore 1 ,core_lpm_isogate 
+0x2b3b 006789 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
+:      006790 lpm_enter_sleep:
+0x2b3c 006791 until null ,lpo_edge 
+0x2b3d 006792 until null ,lpo_edge 
+0x2b3e 006793 hstoret 4 ,core_lpm_reg 
+0x2b3f 006794 jam lpmreg_sel_counter ,core_lpm_wr 
+0x2b40 006795 until null ,never 
+:      006800 lpm_recover_clk:
+0x2b41 006801 bpatch patch14_6 ,mem_patch14 
+0x2b42 006802 setarg 0 
+0x2b43 006803 copy auxcnt ,null 
+0x2b44 006804 branch lpm_recover_timeout ,zero 
+0x2b45 006805 hfetch 1 ,core_lpm_xtalcnt 
+0x2b46 006806 hfetcht 1 ,core_lpm_buckcnt 
+0x2b47 006807 isub temp ,null 
+0x2b48 006808 branch lpm_recover_xtal ,positive 
+0x2b49 006809 deposit temp 
+:      006810 lpm_recover_xtal:
+0x2b4a 006811 isub auxcnt ,pdata 
+0x2b4b 006812 increase 1 ,pdata 
+:      006813 lpm_recover_timeout:
+0x2b4c 006814 increase 8 ,pdata 
+0x2b4d 006815 until null ,lpo_edge 
+0x2b4e 006816 iadd lpo_time ,pdata 
+0x2b4f 006817 fetcht 4 ,mem_sleep_counter 
+0x2b50 006818 iadd temp ,pdata 
+0x2b51 006819 fetcht 3 ,mem_clks_per_lpo 
+0x2b52 006820 imul32 temp ,pdata 
+0x2b53 006821 rshift8 pdata ,pdata 
+0x2b54 006822 rshift4 pdata ,pdata 
+0x2b55 006823 increase param_lpm_fix ,pdata 
+0x2b56 006824 arg 3750 ,temp 
+0x2b57 006825 idiv temp 
+0x2b58 006826 call wait_div_end 
+0x2b59 006827 quotient pdata 
+0x2b5a 006828 lshift16 pdata ,pdata 
+0x2b5b 006829 remainder temp 
+0x2b5c 006830 ior temp ,pdata 
+0x2b5d 006831 fetcht 6 ,mem_sleep_clkn 
+0x2b5e 006832 call clk_add 
+0x2b5f 006833 copy temp ,clkn 
+0x2b60 006834 fetch 6 ,mem_context + coffset_clk_offset 
+0x2b61 006835 call calc_clke2 
+0x2b62 006836 deposit clke 
+0x2b63 006837 store 6 ,mem_pdatatemp 
+0x2b64 006838 deposit auxcnt 
+0x2b65 006839 istore 1 ,contw 
+0x2b66 006840 hfetch 1 ,core_gpio_in1 
+0x2b67 006841 or_into 0xf0 ,pdata 
+0x2b68 006842 istore 1 ,contw 
+0x2b69 006843 rtn 
+:      006845 lpm_dispatch:
+0x2b6a 006846 bpatch patch14_7 ,mem_patch14 
+0x2b6b 006847 call lpo_calibration 
+0x2b6c 006848 fetch 3 ,mem_clks_per_lpo 
+0x2b6d 006849 rtn blank 
+0x2b6e 006850 fetch 1 ,mem_lpm_mode 
+0x2b6f 006851 rtn blank 
+0x2b70 006852 fetch 1 ,mem_ssp_enable 
+0x2b71 006853 branch lpm_dispatch_next ,blank 
+0x2b72 006854 fetch 1 ,mem_sp_local_key_invalid 
+0x2b73 006855 rtn blank 
+:      006856 lpm_dispatch_next:
+0x2b74 006857 fetch 1 ,mem_le_sc_calc 
+0x2b75 006858 nrtn blank 
+0x2b76 006859 call lpm_check_wake_lock 
+0x2b77 006860 nrtn blank 
+0x2b78 006861 fetch 1 ,mem_context 
+0x2b79 006862 compare 3 ,pdata ,0x7 
+0x2b7a 006863 nbranch lpm_dispatch_unconn ,true 
+0x2b7b 006864 fetch 2 ,mem_context + coffset_tsniff 
+0x2b7c 006865 rtn blank 
+0x2b7d 006866 rtn wake 
+0x2b7e 006867 bpatch patch15_0 ,mem_patch15 
+:      006868 lpm_dispatch_next2:
+0x2b7f 006869 fetcht 1 ,mem_lpm_current_mult 
+0x2b80 006870 fetch 2 ,mem_context + coffset_tsniff 
+0x2b81 006871 imul32 temp ,pdata 
+0x2b82 006872 rshift4 temp ,temp 
+0x2b83 006873 rshift2 temp ,temp 
+0x2b84 006874 isub temp ,pdata 
+0x2b85 006875 fetcht 4 ,mem_context + coffset_sniff_anchor 
+0x2b86 006876 iadd temp ,pdata 
+0x2b87 006877 fetcht 1 ,mem_lpm_overhead 
+0x2b88 006878 isub temp ,pdata 
+0x2b89 006879 lshift16 pdata ,alarm 
+0x2b8a 006880 bpatch patch15_1 ,mem_patch15 
+0x2b8b 006881 fetch 2 ,mem_context + coffset_rx_window 
+0x2b8c 006882 rshift pdata ,pdata 
+0x2b8d 006883 call clk2bt 
+0x2b8e 006884 deposit alarm 
+0x2b8f 006885 call clk_diff 
+0x2b90 006886 copy clke ,temp 
+0x2b91 006887 call clk_diff_rt 
+0x2b92 006888 rtn user 
+:      006889 lpm_dispatch_sleep:
+0x2b93 006890 call clk2lpo 
+:      006891 lpm_dispatch_lpo:
+0x2b94 006892 bpatch patch15_2 ,mem_patch15 
+0x2b95 006893 fetch 1 ,mem_lpm_xtalcnt 
+0x2b96 006894 isub temp ,null 
+0x2b97 006895 branch lpm_clear_counter ,positive 
+0x2b98 006896 storet 4 ,mem_sleep_counter 
+0x2b99 006897 call app_will_enter_lpm 
+0x2b9a 006898 call l2cap_lpm_save_txbuf 
+0x2b9b 006899 fetcht 4 ,mem_sleep_counter 
+0x2b9c 006900 branch lpm_sleep 
+:      006902 lpm_dispatch_unconn:
+0x2b9d 006903 bpatch patch15_3 ,mem_patch15 
+0x2b9e 006904 fetch 1 ,mem_context 
+0x2b9f 006905 rtnbit1 state_inconn 
+0x2ba0 006906 rtnbit1 state_inpage 
+0x2ba1 006907 fetch 1 ,mem_ssp_enable 
+0x2ba2 006908 branch lpm_unconn_nossp ,blank 
+0x2ba3 006909 fetch 1 ,mem_sp_local_key_invalid 
+0x2ba4 006910 rtn blank 
+:      006911 lpm_unconn_nossp:
+0x2ba5 006912 bpatch patch15_4 ,mem_patch15 
+0x2ba6 006913 fetch 1 ,mem_le_adv_enable 
+0x2ba7 006914 nbranch lpm_unconn_cont ,blank 
+0x2ba8 006915 fetch 1 ,mem_scan_mode 
+0x2ba9 006916 rtn blank 
+:      006917 lpm_unconn_cont:
+0x2baa 006918 fetch 2 ,mem_lpm_interval 
+0x2bab 006919 rtn blank 
+:      006920 lpm_sleep_btclk:
+0x2bac 006921 fetcht 1 ,mem_lpm_overhead 
+0x2bad 006922 isub temp ,pdata 
+0x2bae 006923 arg 7500 ,temp 
+0x2baf 006924 imul32 temp ,pdata 
+0x2bb0 006925 branch lpm_dispatch_sleep 
+:      006927 lpm_set_mult:
+0x2bb1 006928 bpatch patch15_5 ,mem_patch15 
+0x2bb2 006929 disable wake 
+0x2bb3 006930 fetch 1 ,mem_state 
+0x2bb4 006931 rtnbit0 state_insniff 
+0x2bb5 006932 nbranch lpm_not_match ,match 
+0x2bb6 006933 call lpm_match 
+0x2bb7 006934 fetch 2 ,mem_rx_window_sniff 
+0x2bb8 006935 store 2 ,mem_rx_window 
+0x2bb9 006936 fetch 1 ,mem_arq 
+0x2bba 006937 bbit1 wack ,lpm_mult_short 
+0x2bbb 006938 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0x2bbc 006939 call l2cap_malloc_is_fifo_empty 
+0x2bbd 006940 nbranch lpm_mult_short ,blank 
+0x2bbe 006941 fetch 1 ,mem_classic_bt_flag 
+0x2bbf 006942 bbit1 short_mult_flag ,lpm_mult_short 
+:      006943 lpm_mult_wait_timeout:
+0x2bc0 006944 jam 0 ,mem_lpm_current_mult 
+0x2bc1 006945 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0x2bc2 006946 fetch 1 ,mem_lpm_mult_cnt 
+0x2bc3 006947 branch lpm_mult_long ,blank 
+0x2bc4 006948 increase -1 ,pdata 
+0x2bc5 006949 store 1 ,mem_lpm_mult_cnt 
+0x2bc6 006950 rtn 
+:      006953 classic_bt_set_mult_short_flag:
+0x2bc7 006954 arg short_mult_flag ,queue 
+0x2bc8 006955 branch classic_bluetooth_set_flag 
+:      006957 classic_bt_clr_mult_short_flag:
+0x2bc9 006958 arg short_mult_flag ,queue 
+0x2bca 006959 branch classic_bluetooth_clr_flag 
+:      006963 lpm_match:
+0x2bcb 006964 jam 0 ,mem_sniff_unint_lost 
+0x2bcc 006965 fetch 3 ,mem_sniff_rcv 
+0x2bcd 006966 increase 1 ,pdata 
+0x2bce 006967 store 3 ,mem_sniff_rcv 
+0x2bcf 006968 rtn 
+:      006970 lpm_not_match:
+0x2bd0 006971 bpatch patch15_6 ,mem_patch15 
+0x2bd1 006972 fetcht 2 ,mem_rx_window_sniff 
+0x2bd2 006973 rshift temp ,temp 
+0x2bd3 006974 fetch 2 ,mem_rx_window 
+0x2bd4 006975 iadd temp ,pdata 
+0x2bd5 006976 store 2 ,mem_rx_window 
+:      006977 lpm_lost:
+0x2bd6 006978 jam 0 ,mem_lpm_current_mult 
+0x2bd7 006979 fetch 3 ,mem_sniff_lost 
+0x2bd8 006980 increase 1 ,pdata 
+0x2bd9 006981 store 3 ,mem_sniff_lost 
+0x2bda 006982 fetch 1 ,mem_sniff_unint_lost 
+0x2bdb 006983 increase 1 ,pdata 
+0x2bdc 006984 store 1 ,mem_sniff_unint_lost 
+0x2bdd 006985 rtn 
+:      006987 lpm_mult_short:
+0x2bde 006988 jam 0 ,mem_lpm_current_mult 
+0x2bdf 006989 fetch 1 ,mem_lpm_mult_timeout 
+0x2be0 006990 store 1 ,mem_lpm_mult_cnt 
+0x2be1 006991 rtn 
+:      006993 lpm_mult_long:
+0x2be2 006994 fetcht 1 ,mem_lpm_mult 
+0x2be3 006995 storet 1 ,mem_lpm_current_mult 
+0x2be4 006996 rtn 
+:      006998 lpm_cal_xtal_startup:
+0x2be5 006999 bpatch patch15_7 ,mem_patch15 
+0x2be6 007000 fetch 1 ,mem_lpm_xtalcnt 
+0x2be7 007001 nrtn blank 
+0x2be8 007002 jam clksel_rc ,core_clksel 
+0x2be9 007003 setarg 0xf0c 
+0x2bea 007004 call lpm_write_config 
+0x2beb 007005 setarg 200000 
+0x2bec 007006 call sleep 
+0x2bed 007007 until null ,lpo_edge 
+0x2bee 007008 copy lpo_time ,alarm 
+0x2bef 007009 call xtal_fast_wake 
+0x2bf0 007010 jam clksel_xtal ,core_clksel 
+0x2bf1 007011 nop 10 
+0x2bf2 007012 until null ,lpo_edge 
+0x2bf3 007013 deposit lpo_time 
+0x2bf4 007014 isub alarm ,pdata 
+0x2bf5 007015 increase 0x30 ,pdata 
+0x2bf6 007016 arg 0xff ,temp 
+0x2bf7 007017 call ceiling 
+0x2bf8 007018 store 1 ,mem_lpm_xtalcnt 
+0x2bf9 007019 nop 30000 
+0x2bfa 007020 nop 30000 
+0x2bfb 007021 nop 30000 
+0x2bfc 007022 rtn 
+:      007024 lpm_cal_xtal_startup_by_snooze:
+0x2bfd 007025 fetch 1 ,mem_lpm_xtalcnt 
+0x2bfe 007026 nrtn blank 
+0x2bff 007027 jam 0xff ,core_xtal_stable_time 
+0x2c00 007028 jam clksel_rc ,core_clksel 
+0x2c01 007029 call xtal_fast_wake 
+0x2c02 007030 setarg 1000 
+0x2c03 007031 iadd lpo_time ,alarm 
+0x2c04 007032 snooze 
+0x2c05 007033 deposit lpo_time 
+0x2c06 007034 nop 12000 
+0x2c07 007035 nop 12000 
+0x2c08 007036 nop 12000 
+0x2c09 007037 nop 12000 
+0x2c0a 007038 nop 12000 
+0x2c0b 007039 nop 12000 
+0x2c0c 007040 nop 12000 
+0x2c0d 007041 nop 12000 
+0x2c0e 007042 nop 12000 
+0x2c0f 007043 isub alarm ,pdata 
+0x2c10 007044 add pdata ,0x30 ,pdata 
+0x2c11 007045 arg 0xff ,temp 
+0x2c12 007046 call ceiling 
+0x2c13 007047 store 1 ,mem_lpm_xtalcnt 
+0x2c14 007048 nop 30000 
+0x2c15 007049 nop 30000 
+0x2c16 007050 nop 30000 
+0x2c17 007051 rtn 
+:      007056 lpm_write_config:
+0x2c18 007057 arg 0xfff ,contw 
+0x2c19 007058 iand contw ,contw 
+0x2c1a 007059 fetch 1 ,mem_lpm_config 
+0x2c1b 007060 and_into 0xf0 ,pdata 
+0x2c1c 007061 lshift8 pdata ,pdata 
+0x2c1d 007062 ior contw ,pdata 
+0x2c1e 007063 hstore 2 ,core_lpm_reg 
+0x2c1f 007064 ifetch 2 ,contr 
+0x2c20 007065 istore 2 ,contw 
+:      007067 lpm_write_ctrl:
+0x2c21 007068 setarg lpmreg_sel_ctrl 
+0x2c22 007069 branch lpm_write 
+:      007071 lpm_write_ctrl2:
+0x2c23 007072 setarg lpmreg_sel_ctrl2 
+:      007073 lpm_write:
+0x2c24 007074 until null ,lpo_edge 
+0x2c25 007075 hstore 1 ,core_lpm_wr 
+0x2c26 007076 until null ,lpo_edge 
+0x2c27 007077 until null ,lpo_edge 
+0x2c28 007078 rtn 
+:      007081 lpm_write_gpio_wakeup:
+0x2c29 007082 bpatch patch16_0 ,mem_patch16 
+0x2c2a 007083 fetch 4 ,mem_gpio_wakeup_low 
+0x2c2b 007084 hstore 4 ,core_lpm_reg 
+0x2c2c 007085 setarg lpmreg_sel_gpiolow 
+0x2c2d 007086 call lpm_write 
+0x2c2e 007087 fetch 4 ,mem_gpio_wakeup_high 
+0x2c2f 007088 hstore 4 ,core_lpm_reg 
+0x2c30 007089 setarg lpmreg_sel_gpiohigh 
+0x2c31 007090 branch lpm_write 
+:      007092 lpm_get_wake_lock:
+0x2c32 007093 fetch 2 ,mem_lpm_wake_lock 
+0x2c33 007094 qset1 pdata 
+0x2c34 007095 store 2 ,mem_lpm_wake_lock 
+0x2c35 007096 rtn 
+:      007098 lpm_put_wake_lock:
+0x2c36 007099 fetch 2 ,mem_lpm_wake_lock 
+0x2c37 007100 qset0 pdata 
+0x2c38 007101 store 2 ,mem_lpm_wake_lock 
+0x2c39 007102 rtn 
+:      007106 lpm_check_wake_lock:
+0x2c3a 007107 bpatch patch16_1 ,mem_patch16 
+0x2c3b 007108 call app_check_wake_lock 
+0x2c3c 007109 fetch 2 ,mem_lpm_wake_lock 
+0x2c3d 007110 copy pdata ,rega 
+0x2c3e 007111 fetch 1 ,mem_state_map 
+0x2c3f 007112 isolate1 smap_rxlmp ,pdata 
+0x2c40 007113 setflag true ,wake_lock_lmp_rx ,rega 
+0x2c41 007114 fetch 1 ,mem_lmo_opcode1 
+0x2c42 007115 fetcht 1 ,mem_lmo_opcode2 
+0x2c43 007116 iadd temp ,pdata 
+0x2c44 007117 fetcht 1 ,mem_lmp_to_send 
+0x2c45 007118 iadd temp ,pdata 
+0x2c46 007119 nsetflag blank ,wake_lock_lmp_tx ,rega 
+0x2c47 007120 fetch 1 ,mem_le_tx_buff_used 
+0x2c48 007121 nsetflag blank ,wake_lock_ble_tx ,rega 
+0x2c49 007122 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x2c4a 007123 fetcht 2 ,mem_l2cap_rxbuff2_len 
+0x2c4b 007124 iadd temp ,pdata 
+0x2c4c 007125 nsetflag blank ,wake_lock_l2cap_rx ,rega 
+0x2c4d 007126 fetch util_fifo_len ,mem_ipc_fifo_bt2c51 
+0x2c4e 007127 nsetflag blank ,wake_lock_ipc_bt2c51 ,rega 
+0x2c4f 007128 fetch util_fifo_len ,mem_ipc_fifo_c512bt 
+0x2c50 007129 nsetflag blank ,wake_lock_ipc_c512bt ,rega 
+0x2c51 007130 fetch 1 ,mem_hci_cmd 
+0x2c52 007131 nsetflag blank ,wake_lock_cmd ,rega 
+0x2c53 007132 fetch 1 ,mem_device_option 
+0x2c54 007133 compare dvc_op_module ,pdata ,0xff 
+0x2c55 007134 call lpm_uart_wake_lock ,true 
+0x2c56 007135 setarg -8 
+0x2c57 007136 iand rega ,rega 
+0x2c58 007137 copy rega ,pdata 
+0x2c59 007138 store 2 ,mem_lpm_wake_lock 
+0x2c5a 007139 rtn 
+:      007141 lpm_uart_wake_lock:
+0x2c5b 007142 hfetch 2 ,core_uart_rxitems 
+0x2c5c 007143 nsetflag blank ,wake_lock_uart_rx ,rega 
+0x2c5d 007144 hfetch 2 ,core_uart_txitems 
+0x2c5e 007145 nsetflag blank ,wake_lock_uart_tx ,rega 
+0x2c5f 007146 rtn 
+:      007148 lpm_shut_down:
+0x2c60 007149 hfetch 4 ,core_lpm_ctrl 
+0x2c61 007150 set0 27 ,pdata 
+0x2c62 007151 hstore 4 ,core_lpm_reg 
+0x2c63 007152 call lpm_write_ctrl 
+0x2c64 007153 branch assert 
+:      007155 lpm_disable_exen_output:
+0x2c65 007156 hfetch 4 ,core_lpm_xtalcnt 
+0x2c66 007157 set0 20 ,pdata 
+0x2c67 007158 hstore 4 ,core_lpm_reg 
+0x2c68 007159 branch lpm_write_ctrl2 
+:      007161 check_bt_disabled:
+0x2c69 007162 fetch 2 ,mem_chip_functions 
+0x2c6a 007163 bbit1 bt_disabled ,assert 
+0x2c6b 007164 rtn 
+:      007165 check_ble_disabled:
+0x2c6c 007166 fetch 2 ,mem_chip_functions 
+0x2c6d 007167 bbit1 ble_disabled ,assert 
+0x2c6e 007168 rtn 
+:      007169 check_module_disabled:
+0x2c6f 007170 fetch 2 ,mem_chip_functions 
+0x2c70 007171 bbit1 module_disable ,assert 
+0x2c71 007172 rtn 
+:      007233 g24_dispatch:
+0x2c72 007234 bpatch patch16_2 ,mem_patch16 
+0x2c73 007235 call g24_head_ptr2regc 
+0x2c74 007236 add regc ,offset_24g_mode ,regb 
+0x2c75 007237 ifetch 1 ,regb 
+0x2c76 007239 rtneq disable_24g 
+0x2c77 007240 beq tx_24g ,g24_transmit_process 
+0x2c78 007241 beq rx_24g ,g24_receive_process 
+0x2c79 007242 rtn 
+:      007244 g24_head_ptr2regc:
+0x2c7a 007245 fetcht 2 ,mem_24g_head_ptr 
+0x2c7b 007246 copy temp ,regc 
+0x2c7c 007247 rtn 
+:      007249 g24_receive_process_init:
+0x2c7d 007250 call g24_receive_init 
+0x2c7e 007251 branch g24_mode_switch_init 
+:      007253 g24_receive_process:
+0x2c7f 007254 call g24_mode_switch 
+0x2c80 007255 call g24_dongle_work_mode_auto 
+0x2c81 007256 call g24_dongle_bind_mode_auto 
+0x2c82 007257 branch g24_dongle_search_mode_auto 
+:      007260 g24_pair_init:
+0x2c83 007263 call g24_set0_mem_pid 
+0x2c84 007264 setarg g24_pair_ch 
+0x2c85 007265 call g24_store_mem_ch 
+0x2c86 007266 call g24_store_mem_pair_txpower 
+0x2c87 007269 add regc ,offset_24g_paring_addr ,rega 
+0x2c88 007270 ifetch 4 ,rega 
+0x2c89 007271 branch g24_store_mem_addr 
+:      007273 g24_ch:
+0x2c8a 007274 call g24_head_ptr2regc 
+0x2c8b 007275 add regc ,offset_24g_current_ch_number ,regb 
+0x2c8c 007276 ifetcht 1 ,regb 
+0x2c8d 007278 call g24_ch_temp_incre_size4 
+0x2c8e 007279 add regc ,offset_24g_current_ch_number ,contw 
+0x2c8f 007281 branch g24_contw_istoret_1byte 
+:      007283 g24_ch_temp_incre_size4:
+0x2c90 007284 call g24_ch_calc 
+0x2c91 007285 increase 1 ,temp 
+0x2c92 007286 and_into 3 ,temp 
+0x2c93 007287 rtn 
+:      007289 g24_ch_calc:
+0x2c94 007290 add regc ,offset_24g_addr ,regb 
+0x2c95 007291 ifetch 1 ,regb 
+0x2c96 007293 and_into 0x03 ,pdata 
+0x2c97 007294 mul32 pdata ,4 ,rega 
+0x2c98 007295 add regc ,offset_24g_ch_map1 ,pdata 
+0x2c99 007297 iadd rega ,pdata 
+0x2c9a 007298 iadd temp ,contr 
+0x2c9b 007299 ifetch 1 ,contr 
+0x2c9c 007301 branch g24_store_mem_ch 
+:      007303 g24_set_device_addr:
+0x2c9d 007304 call g24_store_mem_tx_power_temp 
+0x2c9e 007305 call otp_enable_chgpump 
+0x2c9f 007306 setarg 0x7e2 
+0x2ca0 007307 arg mem_temp ,rega 
+0x2ca1 007308 arg 4 ,temp 
+0x2ca2 007309 call otpd_read_data 
+0x2ca3 007310 call otp_disable_chgpump 
+0x2ca4 007311 fetch 4 ,mem_temp 
+0x2ca5 007312 call g24_store_mem_device_addr 
+0x2ca6 007314 nrtn blank 
+0x2ca7 007315 fetch 4 ,mem_lap 
+0x2ca8 007317 branch g24_store_mem_device_addr 
+:      007319 g24_transmit_rf_sta_init:
+0x2ca9 007320 call g24_set1_mem_rf_last_sta 
+0x2caa 007322 setarg 0 
+0x2cab 007323 call g24_store_mem_sync_cnt 
+:      007325 g24_transmit_rf_ctrl_clear:
+0x2cac 007326 call g24_fetch_mem_data_type 
+0x2cad 007328 and_into bits_data ,pdata 
+0x2cae 007330 branch g24_store_mem_data_type 
+:      007332 g24_hop_ch_enable:
+0x2caf 007333 call g24_fetch_mem_data_type 
+0x2cb0 007335 set1 bit_hop ,pdata 
+0x2cb1 007336 call g24_store_mem_data_type 
+0x2cb2 007339 branch g24_store_mem_txpayload 
+:      007341 g24_transmit_hop_pac_fail:
+0x2cb3 007342 call g24_fetch_mem_rf_work_stage 
+0x2cb4 007344 beq 1 ,g24_transmit_hop_pac_fail_wo_hop 
+0x2cb5 007345 beq 2 ,g24_transmit_hop_pac_fail_hop_stage2 
+0x2cb6 007346 rtn 
+:      007348 g24_transmit_hop_pac_fail_wo_hop:
+0x2cb7 007349 call g24_set2_mem_sync_cnt 
+:      007351 g24_transmit_hop_pac_fail_stage1:
+0x2cb8 007352 add regc ,offset_24g_hop_pac_retry ,contw 
+0x2cb9 007353 call g24_mem_set0 
+0x2cba 007355 call g24_store_mem_rf_last_sta 
+0x2cbb 007357 branch g24_transmit_rf_ctrl_clear 
+:      007359 g24_transmit_hop_pac_fail_hop_stage2:
+0x2cbc 007360 call g24_set0_mem_rf_hop_ch 
+0x2cbd 007362 branch g24_transmit_hop_pac_fail_stage1 
+:      007364 g24_transmit_pac_fail_hop_stage3:
+0x2cbe 007365 add regc ,offset_24g_txfail_cnt ,rega 
+0x2cbf 007366 ifetch 1 ,rega 
+0x2cc0 007368 increase 1 ,pdata 
+0x2cc1 007369 add regc ,offset_24g_txfail_cnt ,contw 
+0x2cc2 007370 istore 1 ,contw 
+0x2cc3 007372 beq 0x20 ,g24_tx_attempt_fail 
+0x2cc4 007373 call g24_fetch_mem_rf_hop_ch 
+0x2cc5 007375 beq 1 ,g24_rf_hop_fastly 
+0x2cc6 007376 setarg 1 
+0x2cc7 007377 call g24_store_mem_rf_hop_ch 
+:      007379 g24_rf_hop_attemp_again:
+0x2cc8 007380 call g24_fetch_mem_rf_hop_ch 
+0x2cc9 007382 bne 1 ,g24_transmit_rf_ctrl_clear 
+:      007383 g24_rf_hop_fastly:
+0x2cca 007384 add regc ,offset_24g_hop_fastly_cnt ,rega 
+0x2ccb 007385 ifetch 1 ,rega 
+0x2ccc 007387 increase 1 ,pdata 
+0x2ccd 007388 call g24_store_mem_hop_fastly_cnt 
+0x2cce 007390 beq 4 ,g24_rf_hop_fastly_exit 
+0x2ccf 007391 call g24_ch 
+0x2cd0 007392 call g24_set2_mem_max_retry 
+0x2cd1 007394 branch g24_transmit_packet 
+:      007396 g24_rf_hop_fastly_exit:
+0x2cd2 007397 call g24_set0_mem_hop_fastly_cnt 
+0x2cd3 007399 branch g24_transmit_rf_ctrl_clear 
+:      007401 g24_set0_mem_hop_fastly_cnt:
+0x2cd4 007402 setarg 0 
+:      007403 g24_store_mem_hop_fastly_cnt:
+0x2cd5 007404 add regc ,offset_24g_hop_fastly_cnt ,contw 
+0x2cd6 007405 branch g24_contw_istore_1byte 
+:      007407 g24_transmit_hop_pac_succ_wo_hop:
+0x2cd7 007408 call g24_set2_mem_sync_cnt 
+:      007410 g24_transmit_hop_pac_succ:
+0x2cd8 007411 call g24_set0_mem_rf_hop_ch 
+0x2cd9 007413 call g24_set1_mem_rf_last_sta 
+0x2cda 007415 branch g24_transmit_rf_ctrl_clear 
+:      007417 g24_transmit_succ_rf_config:
+0x2cdb 007418 call g24_fetch_mem_rf_work_stage 
+0x2cdc 007420 beq 3 ,g24_transmit_hop_pac_succ 
+0x2cdd 007421 call g24_fetch_mem_data_type 
+0x2cde 007423 isolate0 bit_hop ,pdata 
+0x2cdf 007424 branch g24_transmit_rf_sta_init ,true 
+0x2ce0 007425 call g24_fetch_mem_rf_work_stage 
+0x2ce1 007427 beq 1 ,g24_transmit_hop_pac_succ_wo_hop 
+0x2ce2 007428 beq 2 ,g24_transmit_hop_pac_succ 
+0x2ce3 007429 rtn 
+:      007431 g24_rf_sta_check:
+0x2ce4 007432 call g24_fetch_mem_pairing_sm 
+0x2ce5 007434 rtnne state_24g_pairing_success 
+0x2ce6 007435 call g24_rf_laststa_synccnt_check 
+0x2ce7 007436 ncall g24_rf_sync_cnt_check ,user2 
+0x2ce8 007437 rtn 
+:      007439 g24_rf_laststa_synccnt_check:
+0x2ce9 007440 disable user2 
+0x2cea 007441 add regc ,offset_24g_rf_last_sta ,rega 
+0x2ceb 007442 ifetch 1 ,rega 
+0x2cec 007444 rtnne 1 
+0x2ced 007445 add regc ,offset_24g_sync_cnt ,rega 
+0x2cee 007446 ifetch 1 ,rega 
+0x2cef 007448 rtnne 0 
+0x2cf0 007449 setarg 1 
+0x2cf1 007450 call g24_store_mem_rf_work_stage 
+0x2cf2 007452 call g24_set4_mem_max_retry 
+0x2cf3 007454 branch enable_user2 
+:      007456 g24_rf_sync_cnt_check:
+0x2cf4 007457 add regc ,offset_24g_sync_cnt ,rega 
+0x2cf5 007458 ifetch 1 ,rega 
+0x2cf6 007460 branch g24_rf_hop_attemp ,blank 
+0x2cf7 007461 increase -1 ,pdata 
+0x2cf8 007462 call g24_store_mem_sync_cnt 
+0x2cf9 007464 setarg 2 
+0x2cfa 007465 call g24_store_mem_rf_work_stage 
+0x2cfb 007467 call g24_ch 
+0x2cfc 007469 branch g24_set4_mem_max_retry 
+:      007471 g24_store_mem_rf_work_stage:
+0x2cfd 007472 add regc ,offset_24g_rf_work_stage ,contw 
+0x2cfe 007473 branch g24_contw_istore_1byte 
+:      007476 g24_rf_hop_attemp:
+0x2cff 007477 setarg 3 
+0x2d00 007478 call g24_store_mem_rf_work_stage 
+0x2d01 007480 call g24_fetch_mem_rf_hop_ch 
+0x2d02 007482 nbranch g24_rf_hop_attemp_again ,blank 
+0x2d03 007483 call g24_ch 
+:      007485 g24_set2_mem_max_retry:
+0x2d04 007486 setarg 2 
+0x2d05 007487 branch g24_store_mem_max_retry 
+:      007489 g24_transmit_process:
+0x2d06 007490 rtnmark0 mark_24g 
+0x2d07 007491 set1 mark_24g_conext ,mark 
+0x2d08 007492 bpatch patch16_3 ,mem_patch16 
+0x2d09 007493 add regc ,offset_24g_tx_without_int ,rega 
+0x2d0a 007494 ifetch 1 ,rega 
+0x2d0b 007496 beq 1 ,g24_transmit_without_int 
+0x2d0c 007497 call g24_timer_check 
+0x2d0d 007498 nbranch g24_transmit_exit ,user 
+0x2d0e 007499 call g24_interval_calibrate 
+:      007500 g24_transmit_without_int:
+0x2d0f 007501 add regc ,offset_24g_tx_without_int ,contw 
+0x2d10 007502 call g24_mem_set0 
+0x2d11 007504 call g24_txdata_prep 
+0x2d12 007505 nbranch g24_enter_lpm ,user 
+0x2d13 007506 call g24_rf_sta_check 
+:      007507 g24_transmit_start:
+0x2d14 007508 call g24_transmit_packet 
+0x2d15 007509 call g24_power_ctrl 
+:      007510 g24_transmit_exit:
+0x2d16 007511 set0 mark_24g_conext ,mark 
+0x2d17 007512 rtn 
+:      007514 g24_timer_timeout:
+0x2d18 007515 rtn zero 
+0x2d19 007516 set1 28 ,pdata 
+0x2d1a 007517 rtn 
+:      007519 g24_interval_calibrate:
+0x2d1b 007520 add regc ,offset_24g_pac_index ,rega 
+0x2d1c 007521 ifetch 1 ,rega 
+0x2d1d 007523 increase 1 ,pdata 
+0x2d1e 007524 add regc ,offset_24g_pac_index ,contw 
+0x2d1f 007525 istore 1 ,contw 
+0x2d20 007527 beq 4 ,g24_interval_max 
+0x2d21 007528 beq 5 ,g24_interval_min 
+0x2d22 007529 rtn 
+:      007530 g24_interval_max:
+0x2d23 007531 add regc ,offset_24g_interval_max ,rega 
+0x2d24 007532 ifetch 1 ,rega 
+:      007534 g24_interval_update:
+0x2d25 007536 add regc ,offset_24g_interval ,contw 
+0x2d26 007537 branch g24_contw_istore_1byte 
+:      007539 g24_interval_min:
+0x2d27 007540 add regc ,offset_24g_pac_index ,contw 
+0x2d28 007541 call g24_mem_set0 
+0x2d29 007543 add regc ,offset_24g_interval_min ,rega 
+0x2d2a 007544 ifetch 1 ,rega 
+0x2d2b 007546 branch g24_interval_update 
+:      007548 g24_txdata_prep:
+0x2d2c 007549 call g24_fetch_mem_pairing_sm 
+0x2d2d 007551 bne state_24g_pairing_success ,g24_pairing_sm 
+0x2d2e 007552 bpatch patch16_4 ,mem_patch16 
+0x2d2f 007553 call g24_package_data 
+0x2d30 007554 nbranch g24_txdata_last_pac ,user 
+0x2d31 007555 call g24_transmit_prep 
+0x2d32 007556 call g24_power_ctrl_pac_incrs 
+:      007557 g24_txdata_enable_tx:
+0x2d33 007559 setarg ensure_on_24g 
+:      007560 g24_store_mem_ensure:
+0x2d34 007561 add regc ,offset_24g_ensure ,contw 
+0x2d35 007562 branch g24_contw_istore_1byte 
+:      007564 g24_txdata_last_pac:
+0x2d36 007565 add regc ,offset_24g_ensure ,rega 
+0x2d37 007566 ifetch 1 ,rega 
+0x2d38 007568 beq ensure_on_24g ,enable_user 
+0x2d39 007569 rtn 
+:      007571 g24_package_data:
+0x2d3a 007573 add regc ,offset_24g_cb_data ,temp 
+0x2d3b 007574 ifetch 2 ,temp 
+0x2d3c 007576 call callback_func 
+0x2d3d 007577 nrtn user 
+0x2d3e 007578 copy rega ,pdata 
+0x2d3f 007579 store 1 ,mem_rega 
+0x2d40 007580 add regc ,offset_24g_abort_pac ,contw 
+0x2d41 007581 call g24_mem_set0 
+0x2d42 007583 call g24_transmit_rf_ctrl_clear 
+0x2d43 007584 store 1 ,mem_24g_common_temp 
+0x2d44 007585 fetch 1 ,mem_rega 
+0x2d45 007586 copy pdata ,rega 
+0x2d46 007587 add rega ,1 ,temp 
+0x2d47 007588 arg mem_24g_common_temp + 1 ,contw 
+0x2d48 007589 copy rega ,loopcnt 
+0x2d49 007590 copy regb ,contr 
+0x2d4a 007591 call memcpy 
+0x2d4b 007592 arg mem_24g_common_temp ,rega 
+:      007593 g24_put_data_in_buff:
+0x2d4c 007594 rtnmark0 mark_24g_conext 
+0x2d4d 007595 add regc ,offset_24g_datalen ,contw 
+0x2d4e 007596 istoret 1 ,contw 
+0x2d4f 007598 copy temp ,loopcnt 
+0x2d50 007599 add regc ,offset_24g_txbuf ,contw 
+0x2d51 007601 copy rega ,contr 
+0x2d52 007602 branch memcpy 
+:      007604 g24_transmit_prep:
+0x2d53 007606 add regc ,offset_24g_datalen ,rega 
+0x2d54 007607 ifetch 1 ,rega 
+0x2d55 007609 increase 2 ,pdata 
+0x2d56 007610 add regc ,offset_24g_txlen ,contw 
+0x2d57 007611 istore 1 ,contw 
+0x2d58 007614 call g24_fetch_mem_data_type 
+0x2d59 007616 call g24_store_mem_txpayload 
+0x2d5a 007619 add regc ,offset_24g_datalen ,rega 
+0x2d5b 007620 ifetch 1 ,rega 
+0x2d5c 007622 lshift3 pdata ,pdata 
+0x2d5d 007623 add regc ,offset_24g_pid ,rega 
+0x2d5e 007624 ifetcht 1 ,rega 
+0x2d5f 007626 and temp ,0x03 ,temp 
+0x2d60 007627 lshift temp ,temp 
+0x2d61 007628 ior temp ,pdata 
+0x2d62 007629 add regc ,offset_24g_no_ack ,rega 
+0x2d63 007630 ifetcht 1 ,rega 
+0x2d64 007632 iadd temp ,pdata 
+0x2d65 007633 istore 1 ,contw 
+0x2d66 007635 add regc ,offset_24g_datalen ,rega 
+0x2d67 007636 ifetch 1 ,rega 
+0x2d68 007638 iforce loopcnt 
+0x2d69 007639 add regc ,offset_24g_txbuf ,contr 
+0x2d6a 007641 branch memcpy 
+:      007643 g24_send_abort_packet:
+0x2d6b 007644 call g24_set1_mem_abort_pac 
+0x2d6c 007646 call g24_set0_mem_rf_hop_ch 
+0x2d6d 007648 call g24_power_ctrl_reinit 
+0x2d6e 007649 call g24_transmit_rf_ctrl_clear 
+0x2d6f 007650 store 1 ,mem_24g_common_temp 
+0x2d70 007651 call g24_put_data_in_buff_pre 
+0x2d71 007652 call g24_fetch_mem_data_type 
+0x2d72 007654 set1 bit_abort ,pdata 
+0x2d73 007655 call g24_store_mem_data_type 
+0x2d74 007657 call g24_transmit_prep 
+0x2d75 007658 call g24_txdata_enable_tx 
+0x2d76 007659 branch g24_transmit_start 
+:      007661 g24_put_data_in_buff_pre:
+0x2d77 007662 store 1 ,mem_24g_common_temp + 1 
+0x2d78 007663 call g24_fetch_mem_device_addr 
+0x2d79 007665 store 4 ,mem_24g_common_temp + 2 
+0x2d7a 007666 arg 6 ,temp 
+0x2d7b 007667 arg mem_24g_common_temp ,rega 
+0x2d7c 007668 branch g24_put_data_in_buff 
+:      007670 g24_enter_lpm:
+0x2d7d 007671 add regc ,offset_24g_abort_pac ,rega 
+0x2d7e 007672 ifetch 1 ,rega 
+0x2d7f 007674 branch g24_send_abort_packet ,blank 
+:      007675 g24_enter_lpm_prepare:
+0x2d80 007677 add regc ,offset_24g_cb_lpm_prepare ,rega 
+0x2d81 007678 ifetch 2 ,rega 
+0x2d82 007680 branch callback_func 
+:      007682 g24_lpm_long_sleep:
+0x2d83 007683 call g24_head_ptr2regc 
+0x2d84 007685 call lpo_calibration 
+0x2d85 007686 fetch 3 ,mem_clks_per_lpo 
+0x2d86 007687 rtn blank 
+0x2d87 007688 add regc ,offset_24g_cb_lpm_before ,temp 
+0x2d88 007689 ifetch 2 ,temp 
+0x2d89 007691 call callback_func 
+0x2d8a 007692 add regc ,offset_24g_enter_hibernate ,temp 
+0x2d8b 007693 ifetch 8 ,temp 
+0x2d8c 007694 call clk2lpo 
+0x2d8d 007695 storet 4 ,mem_sleep_counter 
+0x2d8e 007696 branch lpm_sleep 
+:      007698 g24_transmit_packet:
+0x2d8f 007699 call g24_head_ptr2regc 
+0x2d90 007700 add regc ,offset_24g_retry ,contw 
+0x2d91 007701 call g24_mem_set0 
+:      007703 g24_transmit_loop:
+0x2d92 007704 call g24_transmit_receive_ack 
+0x2d93 007705 nbranch g24_retransmit ,sync 
+0x2d94 007706 nbranch g24_retransmit ,user3 
+0x2d95 007707 call g24_ackpayload_parse 
+0x2d96 007708 call g24_power_ctrl_ack_incrs 
+:      007709 g24_transmit_next_packet:
+0x2d97 007710 call g24_head_ptr2regc 
+0x2d98 007711 add regc ,offset_24g_pid ,rega 
+0x2d99 007712 ifetch 1 ,rega 
+0x2d9a 007714 increase 1 ,pdata 
+0x2d9b 007715 call g24_store_mem_pid 
+0x2d9c 007717 call g24_fetch_mem_pairing_sm 
+0x2d9d 007719 bne state_24g_pairing_success ,g24_paring_mode 
+0x2d9e 007720 call g24_transmit_succ_rf_config 
+:      007721 g24_transmit_abandon:
+0x2d9f 007722 setarg 0 
+0x2da0 007723 add regc ,offset_24g_txfail_cnt ,contw 
+0x2da1 007724 istore 2 ,contw 
+0x2da2 007728 setarg ensure_off_24g 
+0x2da3 007729 branch g24_store_mem_ensure 
+:      007732 g24_transmit_receive_ack:
+0x2da4 007733 disable user3 
+0x2da5 007734 call g24_transmit 
+0x2da6 007735 call g24_head_ptr2regc 
+0x2da7 007736 add regc ,offset_24g_no_ack ,rega 
+0x2da8 007737 ifetch 1 ,rega 
+0x2da9 007739 beq no_ack_24g ,g24_transmit_no_ack 
+0x2daa 007740 call g24_receive_packet 
+0x2dab 007741 branch g24_end_of_packet 
+:      007742 g24_transmit_no_ack:
+0x2dac 007743 call g24_end_of_packet 
+0x2dad 007744 branch g24_transmit_next_packet 
+:      007747 g24_retransmit:
+0x2dae 007748 bpatch patch16_5 ,mem_patch16 
+0x2daf 007749 add regc ,offset_24g_get_ack_fail ,rega 
+0x2db0 007750 ifetch 1 ,rega 
+0x2db1 007752 increase 1 ,pdata 
+0x2db2 007753 add regc ,offset_24g_get_ack_fail ,contw 
+0x2db3 007754 istore 1 ,contw 
+0x2db4 007756 call g24_fetch_mem_pairing_sm 
+0x2db5 007758 bne state_24g_pairing_success ,g24_tx_paring_retry 
+0x2db6 007759 add regc ,offset_24g_retry ,rega 
+0x2db7 007760 ifetcht 1 ,rega 
+0x2db8 007762 increase 1 ,temp 
+0x2db9 007763 add regc ,offset_24g_retry ,contw 
+0x2dba 007764 istoret 1 ,contw 
+0x2dbb 007766 add regc ,offset_24g_max_retry ,rega 
+0x2dbc 007767 ifetch 1 ,rega 
+0x2dbd 007769 isub temp ,pdata 
+0x2dbe 007770 nbranch g24_transmit_loop ,blank 
+0x2dbf 007771 bpatch patch16_6 ,mem_patch16 
+0x2dc0 007772 call g24_fetch_mem_rf_work_stage 
+0x2dc1 007774 beq 3 ,g24_transmit_pac_fail_hop_stage3 
+0x2dc2 007775 add regc ,offset_24g_hop_pac_retry ,rega 
+0x2dc3 007776 ifetch 1 ,rega 
+0x2dc4 007778 increase 1 ,pdata 
+0x2dc5 007779 add regc ,offset_24g_hop_pac_retry ,contw 
+0x2dc6 007780 istore 1 ,contw 
+0x2dc7 007782 beq 2 ,g24_transmit_hop_pac_fail 
+0x2dc8 007783 call g24_hop_ch_enable 
+0x2dc9 007784 setarg 1 
+0x2dca 007785 call g24_store_mem_max_retry 
+0x2dcb 007787 branch g24_transmit_packet 
+:      007789 g24_tx_paring_retry:
+0x2dcc 007790 add regc ,offset_24g_get_ack_fail ,rega 
+0x2dcd 007791 ifetch 1 ,rega 
+0x2dce 007793 rtnne 0xff 
+0x2dcf 007794 add regc ,offset_24g_get_ack_fail ,contw 
+0x2dd0 007795 call g24_mem_set0 
+0x2dd1 007797 branch g24_stop_24g_mode 
+:      007799 g24_tx_attempt_fail:
+0x2dd2 007800 add regc ,offset_24g_txfail_cnt ,contw 
+0x2dd3 007801 call g24_mem_set0 
+:      007803 g24_stop_24g_mode:
+0x2dd4 007804 jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
+0x2dd5 007805 branch ui_ipc_send_event 
+:      007807 g24_ackpayload_parse:
+0x2dd6 007808 call g24_read_len_pid_crc 
+0x2dd7 007809 add regc ,offset_24g_rxdata_length ,rega 
+0x2dd8 007810 ifetch 1 ,rega 
+0x2dd9 007812 rtn blank 
+0x2dda 007813 iforce loopcnt 
+0x2ddb 007814 add regc ,offset_24g_rxbuf_add2 ,contr 
+0x2ddc 007816 add regc ,offset_24g_rxpayload ,contw 
+0x2ddd 007818 branch memcpy 
+:      007821 g24_read_len_pid_crc:
+0x2dde 007823 call g24_fetch_mem_rxbuf_add1 
+0x2ddf 007825 rshift3 pdata ,pdata 
+0x2de0 007826 add regc ,offset_24g_rxdata_length ,contw 
+0x2de1 007827 istore 1 ,contw 
+0x2de2 007830 increase 1 ,pdata 
+0x2de3 007831 add regc ,offset_24g_rxbuf_add1 ,contr 
+0x2de4 007833 iadd contr ,contr 
+0x2de5 007834 ifetch 3 ,contr 
+0x2de6 007835 add regc ,offset_24g_sta_crc ,contw 
+0x2de7 007836 istore 3 ,contw 
+0x2de8 007839 call g24_fetch_mem_rxbuf_add1 
+0x2de9 007841 rshift pdata ,pdata 
+0x2dea 007842 and pdata ,0x03 ,pdata 
+0x2deb 007843 add regc ,offset_24g_sta_pid ,contw 
+0x2dec 007844 istore 1 ,contw 
+0x2ded 007846 rtn 
+:      007848 g24_prep:
+0x2dee 007849 disable enable_crc 
+0x2def 007850 disable enable_white 
+0x2df0 007851 setarg 0x555555 
+0x2df1 007852 iforce crc24_init 
+0x2df2 007853 rtn 
+:      007855 g24_set_freq_tx:
+0x2df3 007856 call set_sync_on 
+0x2df4 007857 add regc ,offset_24g_ch ,rega 
+0x2df5 007858 ifetcht 1 ,rega 
+0x2df6 007860 branch set_freq_tx 
+:      007862 g24_transmit:
+0x2df7 007863 call g24_prep 
+0x2df8 007864 call g24_set_freq_tx 
+0x2df9 007865 set1 txgfsk ,radio_ctrl 
+0x2dfa 007866 enable encode_fec0 
+0x2dfb 007867 enable is_tx 
+0x2dfc 007868 disable is_rx 
+0x2dfd 007869 call le_enable 
+0x2dfe 007870 call g24_fetch_mem_addr 
+0x2dff 007872 iforce access 
+0x2e00 007873 inject mod ,32 
+0x2e01 007874 enable enable_crc 
+0x2e02 007875 add regc ,offset_24g_txlen ,rega 
+0x2e03 007876 ifetch 1 ,rega 
+0x2e04 007878 iforce loopcnt 
+0x2e05 007879 add regc ,offset_24g_txpayload ,contr 
+:      007881 g24tr_loop:
+0x2e06 007882 ifetch 1 ,contr 
+0x2e07 007883 inject mod ,8 
+0x2e08 007884 loop g24tr_loop 
+0x2e09 007885 enable enable_parity 
+0x2e0a 007886 inject mod ,24 
+0x2e0b 007887 disable enable_parity 
+0x2e0c 007888 until null ,tx_clear 
+0x2e0d 007889 bpatch patch16_7 ,mem_patch16 
+0x2e0e 007890 nop 100 
+0x2e0f 007891 disable encode_fec0 
+0x2e10 007892 rtn 
+:      007894 g24_receive_packet:
+0x2e11 007895 disable user3 
+0x2e12 007896 force 0 ,radio_ctrl 
+0x2e13 007897 add regc ,offset_24g_ch ,rega 
+0x2e14 007898 ifetcht 1 ,rega 
+0x2e15 007900 call set_freq_rx 
+0x2e16 007901 call rf_rx_enable 
+:      007902 g24_receive_rxon:
+0x2e17 007903 call g24_prep 
+0x2e18 007904 enable decode_fec0 
+0x2e19 007905 enable is_rx 
+0x2e1a 007906 disable is_tx 
+0x2e1b 007907 call le_enable 
+0x2e1c 007908 call g24_fetch_mem_addr 
+0x2e1d 007910 iforce access 
+0x2e1e 007911 enable swfine 
+0x2e1f 007912 add regc ,offset_24g_rx_window ,rega 
+0x2e20 007913 ifetch 2 ,rega 
+0x2e21 007915 iforce stop_watch 
+0x2e22 007916 correlate null ,timeout 
+0x2e23 007917 nbranch g24_sync_timeout ,sync 
+0x2e24 007918 enable enable_crc 
+0x2e25 007919 parse demod ,bucket ,8 
+0x2e26 007920 rshift3 pwindow ,pdata 
+0x2e27 007921 add regc ,offset_24g_rxbuf ,contw 
+0x2e28 007922 istore 1 ,contw 
+0x2e29 007924 add regc ,offset_24g_mode ,rega 
+0x2e2a 007925 ifetch 1 ,rega 
+0x2e2b 007927 beq rx_24g ,g24_receive_skip 
+0x2e2c 007928 bpatch patch17_0 ,mem_patch17 
+0x2e2d 007929 add regc ,offset_24g_rxbuf ,rega 
+0x2e2e 007930 ifetch 1 ,rega 
+0x2e2f 007932 add regc ,offset_24g_data_type ,rega 
+0x2e30 007933 ifetcht 1 ,rega 
+0x2e31 007935 icompare bits_data ,temp 
+0x2e32 007936 nbranch g24_end_of_packet ,true 
+:      007937 g24_receive_skip:
+0x2e33 007938 parse demod ,bucket ,8 
+0x2e34 007939 rshift3 pwindow ,pdata 
+0x2e35 007940 istore 1 ,contw 
+0x2e36 007941 rshift3 pdata ,pdata 
+0x2e37 007942 and pdata ,0x1f ,loopcnt 
+0x2e38 007943 branch g24rx_nopayload ,zero 
+:      007944 g24rx_loop:
+0x2e39 007945 parse demod ,bucket ,8 
+0x2e3a 007946 rshift3 pwindow ,pdata 
+0x2e3b 007947 istore 1 ,contw 
+0x2e3c 007948 loop g24rx_loop 
+:      007949 g24rx_nopayload:
+0x2e3d 007950 parse demod ,bucket ,24 
+0x2e3e 007951 rshift32 pdata ,pdata 
+0x2e3f 007952 rshift16 pdata ,pdata 
+0x2e40 007953 istore 3 ,contw 
+0x2e41 007954 branch g24_end_of_packet ,crc_failed 
+0x2e42 007955 enable user3 
+0x2e43 007956 disable decode_fec0 
+0x2e44 007957 rtn 
+:      007960 g24_end_of_packet:
+0x2e45 007961 disable encode_fec0 
+0x2e46 007962 disable decode_fec0 
+0x2e47 007963 disable enable_crc 
+0x2e48 007964 disable enable_white 
+0x2e49 007965 branch shutdown_radio ,is_rx 
+0x2e4a 007966 until null ,tx_clear 
+0x2e4b 007967 nop 100 
+0x2e4c 007968 branch shutdown_radio 
+:      007970 g24_sync_timeout:
+0x2e4d 007971 call rssi_noise 
+0x2e4e 007972 branch g24_end_of_packet 
+:      007974 rssi_noise:
+0x2e4f 007975 call save_rssi 
+0x2e50 007976 rtn blank 
+0x2e51 007977 add regc ,offset_rssi_noise_index ,rega 
+0x2e52 007978 ifetcht 1 ,rega 
+0x2e53 007980 arg mem_rssi_noise_buffer ,rega 
+0x2e54 007982 call rssi_noise_store 
+0x2e55 007983 add regc ,offset_rssi_noise_index ,contw 
+:      007985 g24_contw_istoret_1byte:
+0x2e56 007986 istoret 1 ,contw 
+0x2e57 007987 rtn 
+:      007989 rssi_noise_store:
+0x2e58 007990 arg rssi_buf_len_noise ,regb 
+0x2e59 007991 branch rssi_store 
+:      008009 rssi_store:
+0x2e5a 008010 copy rega ,pdata 
+0x2e5b 008011 iadd temp ,contw 
+0x2e5c 008012 fetch 1 ,mem_rssi 
+0x2e5d 008013 istore 1 ,contw 
+0x2e5e 008014 increase 1 ,temp 
+0x2e5f 008015 copy regb ,pdata 
+0x2e60 008016 iand_into temp 
+0x2e61 008017 rtn 
+:      008019 rssi_average:
+0x2e62 008020 arg 0 ,temp 
+0x2e63 008021 copy rega ,contr 
+:      008022 rssi_average_loop:
+0x2e64 008023 ifetch 1 ,contr 
+0x2e65 008024 iadd temp ,temp 
+0x2e66 008025 loop rssi_average_loop 
+0x2e67 008026 rshift8 temp ,temp 
+0x2e68 008027 rtn 
+:      008029 g24_power_ctrl_init:
+0x2e69 008030 call g24_head_ptr2regc 
+0x2e6a 008031 call g24_power_ctrl_incrs_level1 
+0x2e6b 008032 setarg 1 
+0x2e6c 008033 call g24_store_mem_power_ctrl_level 
+:      008035 g24_power_ctrl_reinit:
+0x2e6d 008036 setarg 0 
+0x2e6e 008037 call g24_store_mem_power_ctrl_pac 
+0x2e6f 008039 istore 1 ,contw 
+0x2e70 008041 rtn 
+:      008043 g24_power_ctrl_pac_incrs:
+0x2e71 008044 call g24_fetch_mem_power_ctrl_pac 
+0x2e72 008046 increase 1 ,pdata 
+:      008047 g24_store_mem_power_ctrl_pac:
+0x2e73 008049 add regc ,offset_power_ctrl_packet_cnt ,contw 
+0x2e74 008050 branch g24_contw_istore_1byte 
+:      008052 g24_power_ctrl_ack_incrs:
+0x2e75 008055 add regc ,offset_power_ctrl_ack_cnt ,rega 
+0x2e76 008056 ifetch 1 ,rega 
+0x2e77 008057 increase 1 ,pdata 
+0x2e78 008058 add regc ,offset_power_ctrl_ack_cnt ,contw 
+0x2e79 008059 branch g24_contw_istore_1byte 
+:      008061 g24_power_ctrl:
+0x2e7a 008062 bpatch patch17_1 ,mem_patch17 
+0x2e7b 008063 call g24_fetch_mem_power_ctrl_pac 
+0x2e7c 008065 sub pdata ,power_ctrl_max_packet_cnt ,null 
+0x2e7d 008066 rtn positive 
+0x2e7e 008067 add regc ,offset_power_ctrl_ack_cnt ,rega 
+0x2e7f 008068 ifetcht 1 ,rega 
+0x2e80 008070 isub temp ,temp 
+0x2e81 008071 call g24_power_ctrl_reinit 
+0x2e82 008072 setarg offset_power_ctrl_threshold_up 
+0x2e83 008073 iadd regc ,rega 
+0x2e84 008074 ifetch 1 ,rega 
+0x2e85 008076 isub temp ,null 
+0x2e86 008077 nbranch g24_power_ctrl_incrs ,positive 
+0x2e87 008078 setarg offset_power_ctrl_threshold_down 
+0x2e88 008079 iadd regc ,rega 
+0x2e89 008080 ifetch 1 ,rega 
+0x2e8a 008082 isub temp ,null 
+0x2e8b 008083 branch g24_power_ctrl_decrs ,positive 
+0x2e8c 008084 rtn 
+:      008086 g24_power_ctrl_incrs:
+0x2e8d 008087 add regc ,offset_power_ctrl_level ,rega 
+0x2e8e 008088 ifetch 1 ,rega 
+0x2e8f 008090 beq 2 ,g24_power_ctrl_incrs_level2 
+0x2e90 008091 increase 1 ,pdata 
+0x2e91 008092 call g24_store_mem_power_ctrl_level 
+0x2e92 008094 beq 1 ,g24_power_ctrl_incrs_level1 
+:      008095 g24_power_ctrl_incrs_level2:
+0x2e93 008096 setarg power_ctrl_losspac_thresh_up2 
+0x2e94 008097 call g24_store_mem_power_ctrl_threshold_up 
+0x2e95 008099 setarg power_ctrl_losspac_thresh_down2 
+0x2e96 008100 call g24_store_mem_power_ctrl_threshold_down 
+0x2e97 008103 add regc ,offset_power_ctrl_txpwr_level2 ,rega 
+0x2e98 008105 branch g24_ifetch_rega_store_mem_txpower 
+:      008107 g24_power_ctrl_decrs:
+0x2e99 008108 add regc ,offset_power_ctrl_level ,rega 
+0x2e9a 008109 ifetch 1 ,rega 
+0x2e9b 008111 beq 0 ,g24_power_ctrl_decrs_level0 
+0x2e9c 008112 increase -1 ,pdata 
+0x2e9d 008113 call g24_store_mem_power_ctrl_level 
+0x2e9e 008115 beq 0 ,g24_power_ctrl_decrs_level0 
+:      008116 g24_power_ctrl_decrs_level1:
+:      008119 g24_power_ctrl_incrs_level1:
+0x2e9f 008120 setarg power_ctrl_losspac_thresh_up1 
+0x2ea0 008121 call g24_store_mem_power_ctrl_threshold_up 
+0x2ea1 008123 setarg power_ctrl_losspac_thresh_down1 
+0x2ea2 008124 call g24_store_mem_power_ctrl_threshold_down 
+0x2ea3 008127 setarg offset_power_ctrl_txpwr_level1 
+:      008128 g24_iadd_offset_mem_txpower:
+0x2ea4 008129 iadd regc ,rega 
+:      008130 g24_ifetch_rega_store_mem_txpower:
+0x2ea5 008131 ifetch 1 ,rega 
+0x2ea6 008133 branch g24_store_mem_txpower 
+:      008135 g24_power_ctrl_decrs_level0:
+0x2ea7 008138 setarg power_ctrl_losspac_thresh_up0 
+0x2ea8 008139 call g24_store_mem_power_ctrl_threshold_up 
+0x2ea9 008141 setarg power_ctrl_losspac_thresh_down0 
+0x2eaa 008142 call g24_store_mem_power_ctrl_threshold_down 
+0x2eab 008145 setarg offset_power_ctrl_txpwr_level0 
+0x2eac 008147 branch g24_iadd_offset_mem_txpower 
+:      008161 g24_start_pairing_sm1:
+0x2ead 008162 set1 mark_24g ,mark 
+0x2eae 008163 call g24_pair_init 
+:      008164 g24_set_pairing_sm_1:
+0x2eaf 008166 setarg state_24g_pairing_1 
+0x2eb0 008167 branch g24_store_mem_pairing_sm 
+:      008169 g24_pairing_sm:
+0x2eb1 008170 add regc ,offset_24g_ensure ,rega 
+0x2eb2 008171 ifetch 1 ,rega 
+0x2eb3 008173 beq ensure_on_24g ,enable_user 
+0x2eb4 008174 call g24_fetch_mem_pairing_sm 
+0x2eb5 008176 beq state_24g_pairing_1 ,g24_pairing_sm_1 
+0x2eb6 008177 beq state_24g_pairing_2 ,g24_pairing_sm_2 
+0x2eb7 008178 beq state_24g_pairing_3 ,g24_pairing_sm_3 
+0x2eb8 008179 branch assert 
+:      008181 g24_pairing_sm_1:
+0x2eb9 008182 setarg state_24g_pairing_1_waiting_ack 
+0x2eba 008183 call g24_store_mem_pairing_sm 
+0x2ebb 008185 jam 0xaa ,mem_24g_common_temp 
+0x2ebc 008186 branch g24_pairing_sm_common 
+:      008187 g24_pairing_sm_2:
+0x2ebd 008188 setarg state_24g_pairing_2_waiting_ack 
+0x2ebe 008189 call g24_store_mem_pairing_sm 
+0x2ebf 008191 jam 0x55 ,mem_24g_common_temp 
+0x2ec0 008192 branch g24_pairing_sm_common 
+:      008193 g24_pairing_sm_3:
+0x2ec1 008194 setarg state_24g_pairing_3_waiting_ack 
+0x2ec2 008195 call g24_store_mem_pairing_sm 
+0x2ec3 008197 jam 0x22 ,mem_24g_common_temp 
+:      008198 g24_pairing_sm_common:
+0x2ec4 008199 call g24_fetch_mem_data_type 
+0x2ec5 008201 and_into bits_data ,pdata 
+0x2ec6 008202 store 1 ,mem_24g_common_temp + 1 
+0x2ec7 008203 call g24_fetch_mem_device_addr 
+0x2ec8 008205 store 4 ,mem_24g_common_temp + 2 
+:      008206 g24_put_pairing_data_in_buff:
+0x2ec9 008207 jam 0 ,mem_24g_common_temp + 6 
+0x2eca 008208 arg mem_24g_common_temp ,rega 
+0x2ecb 008209 arg 7 ,temp 
+0x2ecc 008210 call g24_put_data_in_buff 
+0x2ecd 008211 call g24_transmit_prep 
+0x2ece 008212 call g24_txdata_enable_tx 
+0x2ecf 008213 branch enable_user 
+:      008215 g24_paring_mode:
+0x2ed0 008216 call g24_fetch_mem_pairing_sm 
+0x2ed1 008218 rtneq state_24g_pairing_success 
+0x2ed2 008219 beq state_24g_pairing_1_waiting_ack ,g24_pairing_sm_1_waiting_ack 
+0x2ed3 008220 beq state_24g_pairing_2_waiting_ack ,g24_pairing_sm_2_waiting_ack 
+0x2ed4 008221 beq state_24g_pairing_3_waiting_ack ,g24_pairing_sm_3_waiting_ack 
+0x2ed5 008222 rtn 
+:      008224 g24_pairing_sm_1_waiting_ack:
+0x2ed6 008225 setarg state_24g_pairing_2 
+0x2ed7 008226 call g24_store_mem_pairing_sm 
+0x2ed8 008228 branch g24_transmit_abandon 
+:      008229 g24_pairing_sm_2_waiting_ack:
+0x2ed9 008230 setarg state_24g_pairing_3 
+0x2eda 008231 call g24_store_mem_pairing_sm 
+0x2edb 008233 branch g24_transmit_abandon 
+:      008234 g24_pairing_sm_3_waiting_ack:
+0x2edc 008235 setarg state_24g_pairing_success 
+0x2edd 008236 call g24_store_mem_pairing_sm 
+0x2ede 008238 jam bt_evt_24g_pairing_complete ,mem_fifo_temp 
+0x2edf 008239 call ui_ipc_send_event 
+0x2ee0 008240 add regc ,offset_24g_rxpayload_add2 ,rega 
+0x2ee1 008241 ifetch 4 ,rega 
+0x2ee2 008243 call g24_store_mem_addr 
+0x2ee3 008245 branch g24_transmit_abandon 
+:      008247 g24_auto_pair_start:
+0x2ee4 008248 set0 mark_24g ,mark 
+0x2ee5 008249 call g24_auto_pair_set_device_info 
+0x2ee6 008250 call g24_tx_attemp_data_prep 
+:      008251 g24_auto_pair_restart:
+0x2ee7 008252 call g24_set0_mem_check_dongle_times 
+:      008253 g24_auto_pair_start_loop:
+0x2ee8 008254 nop 2000 
+0x2ee9 008255 call g24_fetch_mem_check_dongle_times 
+0x2eea 008256 beq 0xff ,g24_stop_24g_mode 
+0x2eeb 008257 call g24_transmit_receive_ack 
+0x2eec 008258 nbranch g24_auto_pair_retry ,sync 
+0x2eed 008259 nbranch g24_auto_pair_retry ,user3 
+0x2eee 008260 call g24_ackpayload_parse 
+0x2eef 008261 call g24_head_ptr2regc 
+0x2ef0 008262 add regc ,offset_24g_paring_addr ,rega 
+0x2ef1 008263 ifetcht 4 ,rega 
+0x2ef2 008264 call g24_fetch_mem_addr_isub_temp 
+0x2ef3 008265 branch g24_start_pairing_sm1 ,zero 
+0x2ef4 008266 call g24_head_ptr2regc 
+0x2ef5 008267 add regc ,offset_24g_rxpayload_add2 ,rega 
+0x2ef6 008268 ifetch 4 ,rega 
+0x2ef7 008269 beq 0 ,g24_auto_pair_restart 
+0x2ef8 008270 call g24_store_mem_addr 
+0x2ef9 008271 branch g24_tx_attemp_dongle_succ 
+:      008273 g24_auto_pair_retry:
+0x2efa 008274 call g24_fetch_mem_check_dongle_times 
+0x2efb 008275 increase 1 ,pdata 
+0x2efc 008276 call g24_store_mem_check_dongle_times 
+0x2efd 008278 call g24_fetch_mem_auto_paring_switch 
+0x2efe 008279 increase 1 ,pdata 
+0x2eff 008280 and_into 1 ,pdata 
+0x2f00 008281 call g24_store_mem_auto_paring_switch 
+0x2f01 008282 beq 0 ,g24_auto_pair_device_attemp 
+0x2f02 008283 beq 1 ,g24_auto_pair_pair_attemp 
+0x2f03 008284 rtn 
+:      008286 g24_fetch_mem_auto_paring_switch:
+0x2f04 008287 setarg offset_24g_auto_pair_switch 
+0x2f05 008288 branch g24_set_rega_ifetch_1byte 
+:      008289 g24_store_mem_auto_paring_switch:
+0x2f06 008290 arg offset_24g_auto_pair_switch ,rega 
+0x2f07 008291 branch g24_set_contw_with_regb_store_1byte 
+:      008293 g24_auto_pair_set_device_info:
+0x2f08 008294 call g24_store_mem_tx_power 
+0x2f09 008295 call g24_fetch_mem_device_addr 
+0x2f0a 008296 call g24_store_mem_addr 
+0x2f0b 008297 branch g24_ch 
+:      008299 g24_auto_pair_device_attemp:
+0x2f0c 008300 call g24_auto_pair_set_device_info 
+0x2f0d 008301 branch g24_auto_pair_start_loop 
+:      008303 g24_auto_pair_pair_attemp:
+0x2f0e 008304 call g24_pair_init 
+0x2f0f 008305 branch g24_auto_pair_start_loop 
+:      008308 g24_start_24g_mode:
+0x2f10 008309 set0 mark_24g ,mark 
+0x2f11 008310 call g24_ch 
+0x2f12 008311 call g24_fetch_mem_pairing_sm 
+0x2f13 008313 rtnne state_24g_pairing_success 
+0x2f14 008314 call g24_tx_attemp_data_prep 
+0x2f15 008315 call g24_set0_mem_check_dongle_times 
+:      008317 g24_tx_attemp_dongle_loop:
+0x2f16 008318 nop 2000 
+0x2f17 008319 call g24_fetch_mem_check_dongle_times 
+0x2f18 008321 beq 0xff ,g24_stop_24g_mode 
+0x2f19 008322 call g24_transmit_receive_ack 
+0x2f1a 008323 nbranch g24_attemp_txdata_retry ,sync 
+0x2f1b 008324 nbranch g24_attemp_txdata_retry ,user3 
+:      008325 g24_tx_attemp_dongle_succ:
+0x2f1c 008326 set1 mark_24g ,mark 
+0x2f1d 008327 call g24_set0_mem_check_dongle_times 
+0x2f1e 008328 setarg state_24g_pairing_success 
+0x2f1f 008329 call g24_store_mem_pairing_sm 
+:      008331 g24_app_tx_attempt_success:
+0x2f20 008332 jam bt_evt_24g_attempt_success ,mem_fifo_temp 
+0x2f21 008333 branch ui_ipc_send_event 
+:      008335 g24_tx_attemp_data_prep:
+0x2f22 008336 set1 mark_24g_conext ,mark 
+0x2f23 008337 jam 0xff ,mem_24g_common_temp 
+0x2f24 008338 call g24_fetch_mem_data_type 
+0x2f25 008340 call g24_put_data_in_buff_pre 
+0x2f26 008341 branch g24_transmit_prep 
+:      008343 g24_attemp_txdata_retry:
+0x2f27 008344 call g24_fetch_mem_check_dongle_times 
+0x2f28 008346 increase 1 ,pdata 
+0x2f29 008347 call g24_store_mem_check_dongle_times 
+0x2f2a 008349 call g24_ch 
+0x2f2b 008350 branch g24_tx_attemp_dongle_loop 
+:      008352 g24_check_51cmd_start_24g:
+0x2f2c 008353 call g24_store_mem_tx_power 
+0x2f2d 008356 setarg state_24g_pairing_success 
+0x2f2e 008357 call g24_store_mem_pairing_sm 
+0x2f2f 008359 branch g24_start_24g_mode 
+:      008368 dongle_init:
+0x2f30 008369 bpatch patch17_2 ,mem_patch17 
+0x2f31 008370 call g24_head_ptr2regc 
+0x2f32 008371 setarg dongle_rxdata_type1 
+0x2f33 008372 add regc ,offset_24g_cb_rxdata_type1 ,contw 
+0x2f34 008373 istore 2 ,contw 
+0x2f35 008375 call g24_receive_init 
+0x2f36 008376 call usb_init 
+0x2f37 008377 call g24_fetch_mem_pair_mode 
+0x2f38 008379 bpatch patch17_3 ,mem_patch17 
+0x2f39 008380 beq 0x00 ,dongle_auto_bind 
+0x2f3a 008381 beq 0x01 ,dongle_pc_bind 
+0x2f3b 008382 beq 0x0f ,dongle_all_powerful 
+0x2f3c 008383 branch assert 
+:      008385 g24_receive_init:
+0x2f3d 008386 call g24_store_mem_tx_power_temp 
+0x2f3e 008387 arg 0x80 ,loopcnt 
+0x2f3f 008388 arg mem_rssi_noise_buffer ,contw 
+0x2f40 008389 branch memset0 
+:      008391 dongle_all_powerful:
+0x2f41 008392 call dongle_check_mode 
+:      008393 dongle_all_powerful_loop:
+0x2f42 008394 call g24_dongle_work_mode 
+0x2f43 008395 call usb_isr 
+0x2f44 008396 branch dongle_all_powerful_loop 
+:      008398 dongle_pc_bind:
+0x2f45 008399 bpatch patch17_4 ,mem_patch17 
+0x2f46 008400 call dongle_check_mode 
+:      008401 dongle_pc_bind_loop:
+0x2f47 008402 call g24_dongle_work_mode 
+0x2f48 008403 call g24_dongle_bind_mode 
+0x2f49 008404 call usb_isr 
+0x2f4a 008405 call dongle_usb_dispatch 
+0x2f4b 008406 branch dongle_pc_bind_loop 
+:      008408 dongle_check_mode:
+0x2f4c 008412 call g24_set_work_mem_dongle_work_mode 
+0x2f4d 008413 call g24_set0_mem_dongle_mode_init 
+0x2f4e 008414 branch g24_set0_mem_ackpayload_enable 
+:      008416 g24_dongle_work_mode:
+0x2f4f 008417 call g24_fetch_mem_dongle_work_mode 
+0x2f50 008419 rtnne dongle_work 
+:      008420 g24_dongle_work_mode_start:
+0x2f51 008421 call g24_dongle_work_init 
+0x2f52 008422 call g24_ch_process 
+0x2f53 008423 call g24_receive_packet_start 
+0x2f54 008424 branch g24_blank_data_process 
+:      008426 g24_dongle_work_init:
+0x2f55 008427 call g24_fetch_mem_dongle_mode_init 
+0x2f56 008429 rtnbit1 dongle_work 
+0x2f57 008430 set1 dongle_work ,pdata 
+0x2f58 008431 call g24_store_mem_dongle_mode_init 
+0x2f59 008433 call g24_store_mem_tx_power 
+0x2f5a 008436 call g24_set0_mem_ackpayload_enable 
+0x2f5b 008438 jam 0 ,mem_usb_tx_enable 
+0x2f5c 008439 call g24_set1_mem_abort_pac 
+0x2f5d 008441 call g24_dongle_init 
+:      008442 g24_rx_interrupt_clear:
+0x2f5e 008443 add regc ,offset_24g_rxbuf ,contw 
+0x2f5f 008445 arg 66 ,loopcnt 
+0x2f60 008446 branch clear_mem 
+:      008448 g24_dongle_init:
+0x2f61 008449 call g24_set0_mem_pid 
+0x2f62 008451 call g24_fetch_mem_rx_addr 
+0x2f63 008453 call g24_store_mem_addr 
+0x2f64 008455 branch g24_ch 
+:      008457 g24_ch_process:
+0x2f65 008458 bpatch patch17_5 ,mem_patch17 
+0x2f66 008459 call g24_fetch_mem_abort_pac 
+0x2f67 008461 beq 1 ,g24_noise_rssi 
+0x2f68 008462 call g24_fetch_mem_hop_pac 
+0x2f69 008464 beq 1 ,g24_ch 
+0x2f6a 008465 setarg offset_24g_hop_btclk 
+0x2f6b 008466 iadd regc ,rega 
+0x2f6c 008467 ifetcht 4 ,rega 
+0x2f6d 008469 copy clkn_bt ,pdata 
+0x2f6e 008470 isub temp ,null 
+0x2f6f 008471 ncall g24_timer_timeout ,positive 
+0x2f70 008472 copy pdata ,regb 
+0x2f71 008473 setarg offset_24g_hop_btclk 
+0x2f72 008474 iadd regc ,rega 
+0x2f73 008475 ifetch 4 ,rega 
+0x2f74 008476 copy pdata ,temp 
+0x2f75 008478 setarg offset_24g_hop_interval 
+0x2f76 008479 iadd regc ,rega 
+0x2f77 008480 copy temp ,pdata 
+0x2f78 008481 ifetcht 1 ,rega 
+0x2f79 008483 iadd temp ,temp 
+0x2f7a 008484 copy regb ,pdata 
+0x2f7b 008485 isub temp ,null 
+0x2f7c 008486 nrtn positive 
+0x2f7d 008487 set0 28 ,pdata 
+0x2f7e 008488 setarg offset_24g_hop_btclk 
+0x2f7f 008489 iadd regc ,contw 
+0x2f80 008490 istore 4 ,contw 
+:      008492 g24_ch_update:
+0x2f81 008493 call g24_ch 
+0x2f82 008494 call g24_fetch_mem_rf_laststa 
+0x2f83 008496 increase 1 ,pdata 
+0x2f84 008497 call g24_store_mem_rf_laststa 
+0x2f85 008499 rtnne 2 
+0x2f86 008500 call g24_set0_mem_rf_laststa 
+0x2f87 008504 branch g24_set1_mem_abort_pac 
+:      008506 g24_ch_timer_reinit:
+0x2f88 008507 copy clkn_bt ,pdata 
+0x2f89 008508 arg offset_24g_hop_btclk ,rega 
+0x2f8a 008509 call g24_set_contw_with_temp 
+0x2f8b 008510 istore 4 ,contw 
+0x2f8c 008514 branch g24_set0_mem_rf_laststa 
+:      008516 g24_noise_rssi:
+0x2f8d 008517 arg mem_rssi_noise_buffer ,rega 
+0x2f8e 008518 call g24_noise_rssi_average 
+0x2f8f 008519 add regc ,offset_rssi_noise_avg ,contw 
+0x2f90 008520 istoret 1 ,contw 
+0x2f91 008522 sub temp ,rssi_thresh_noise ,null 
+0x2f92 008523 nrtn positive 
+0x2f93 008524 branch g24_ch 
+:      008526 g24_noise_rssi_average:
+0x2f94 008527 arg rssi_buf_len_noise + 1 ,loopcnt 
+0x2f95 008528 branch rssi_average 
+:      008530 g24_blank_data_process:
+0x2f96 008531 call g24_ms_blank_data 
+0x2f97 008532 call g24_kb_blank_data 
+0x2f98 008533 branch g24_kb_mul_blank_data 
+:      008535 g24_ms_blank_data:
+0x2f99 008536 setarg offset_24g_ms_blank_data_enable 
+0x2f9a 008537 call g24_set_rega_ifetch_1byte 
+0x2f9b 008539 rtn blank 
+0x2f9c 008540 arg timer_ms_blank ,queue 
+0x2f9d 008541 call timer_check 
+0x2f9e 008542 nrtn blank 
+0x2f9f 008543 call g24_set0_mem_ms_blank_data_enable 
+:      008545 g24_ms_blank_data_2usb:
+0x2fa0 008546 setarg ms_report_id 
+0x2fa1 008547 store 1 ,mem_usb_mouse_data 
+0x2fa2 008548 setarg 0 
+0x2fa3 008549 istore 7 ,contw 
+0x2fa4 008550 branch g24_data_type1_usbtx_enable 
+:      008552 g24_kb_blank_data:
+0x2fa5 008553 setarg offset_24g_kb_blank_data_enable 
+0x2fa6 008554 call g24_set_rega_ifetch_1byte 
+0x2fa7 008556 rtn blank 
+0x2fa8 008557 arg timer_kb_blank ,queue 
+0x2fa9 008558 call timer_check 
+0x2faa 008559 nrtn blank 
+0x2fab 008560 call g24_set0_mem_kb_blank_data_enable 
+:      008562 g24_kb_blank_data_2usb:
+0x2fac 008563 arg mem_usb_kb_data ,contw 
+0x2fad 008564 arg 2 ,loopcnt 
+0x2fae 008565 call memset0 
+0x2faf 008566 jam kb_normal_report_id ,mem_usb_kb_data 
+0x2fb0 008567 branch g24_kb_data_into_ep1_fifo 
+:      008569 g24_kb_mul_blank_data:
+0x2fb1 008570 setarg offset_24g_kb_mul_blank_data_enable 
+0x2fb2 008571 call g24_set_rega_ifetch_1byte 
+0x2fb3 008573 rtn blank 
+0x2fb4 008574 arg timer_kb_mul_blank ,queue 
+0x2fb5 008575 call timer_check 
+0x2fb6 008576 nrtn blank 
+0x2fb7 008577 call g24_set0_mem_kb_mul_blank_data_enable 
+:      008579 g24_kb_mul_blank_data_2usb:
+0x2fb8 008580 arg mem_usb_kb_multikey ,contw 
+0x2fb9 008581 arg 2 ,loopcnt 
+0x2fba 008582 call memset0 
+0x2fbb 008583 jam kb_multikey_report_id ,mem_usb_kb_multikey 
+0x2fbc 008584 branch g24_kb_mul_data_into_ep2_fifo 
+:      008586 g24_dongle_bind_mode:
+0x2fbd 008587 call g24_fetch_mem_dongle_work_mode 
+0x2fbe 008589 rtnne dongle_bind 
+0x2fbf 008590 call g24_dongle_bind_init 
+0x2fc0 008591 branch g24_dongle_bind_data_process 
+:      008593 g24_dongle_bind_init:
+0x2fc1 008594 call g24_fetch_mem_dongle_mode_init 
+0x2fc2 008596 rtnbit1 dongle_bind 
+0x2fc3 008597 set1 dongle_bind ,pdata 
+0x2fc4 008598 call g24_store_mem_dongle_mode_init 
+0x2fc5 008600 call g24_set1_mem_ackpayload_enable 
+0x2fc6 008602 call g24_pair_init 
+0x2fc7 008603 setarg 0 
+0x2fc8 008604 arg offset_dongle_ms_bind_step ,rega 
+0x2fc9 008605 call g24_set_contw_with_temp 
+0x2fca 008607 branch g24_contw_istore_3byte 
+:      008609 g24_dongle_bind_data_process:
+0x2fcb 008610 call g24_receive_transmit_ack 
+0x2fcc 008611 nbranch g24_rx_interrupt_clear ,user3 
+0x2fcd 008612 add regc ,offset_24g_rxbuf ,contr 
+0x2fce 008613 setarg offset_24g_rxdata_temp 
+0x2fcf 008614 iadd regc ,contw 
+0x2fd0 008615 arg 8 ,loopcnt 
+0x2fd1 008616 call memcpy 
+0x2fd2 008617 setarg offset_24g_rxdata_temp_add2 
+0x2fd3 008618 call g24_set_rega_ifetch_1byte 
+0x2fd4 008619 beq datatype_bind ,g24_dongle_bind_first_step 
+0x2fd5 008620 beq datatype_config ,g24_dongle_bind_second_step 
+0x2fd6 008621 beq datatype_ok ,g24_dongle_bind_third_step 
+0x2fd7 008622 beq 0xff ,g24_data_attemp 
+0x2fd8 008623 branch g24_rx_interrupt_clear 
+:      008625 g24_dongle_bind_first_step:
+0x2fd9 008626 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x2fda 008627 beq bind_mouse ,g24_dongle_bind_first_step_mouse 
+0x2fdb 008628 beq bind_keyboard ,g24_dongle_bind_first_step_keyboard 
+0x2fdc 008629 rtn 
+:      008630 g24_dongle_bind_first_step_mouse:
+0x2fdd 008631 setarg 1 
+0x2fde 008632 call g24_store_mem_ms_bind_step 
+:      008634 g24_dongle_bind_ms_payload_cfg:
+0x2fdf 008635 setarg datatype_mouse 
+0x2fe0 008636 call g24_store_mem_bind_payload 
+:      008638 g24_dongle_bind_payload_cfg:
+0x2fe1 008639 setarg 0x80 
+0x2fe2 008640 arg offset_24g_bind_payload_add1 ,rega 
+0x2fe3 008641 call g24_set_contw_with_regb_store_1byte 
+0x2fe4 008643 call g24_fetch_mem_rx_addr 
+0x2fe5 008645 arg offset_24g_bind_payload_add2 ,rega 
+0x2fe6 008646 call g24_set_contw_with_temp 
+0x2fe7 008648 branch g24_contw_istore_4byte 
+:      008650 g24_dongle_bind_first_step_keyboard:
+0x2fe8 008651 setarg 1 
+0x2fe9 008652 call g24_store_mem_kb_bind_step 
+:      008654 g24_dongle_bind_kb_payload_cfg:
+0x2fea 008655 setarg datatype_keyboard 
+0x2feb 008656 call g24_store_mem_bind_payload 
+0x2fec 008658 branch g24_dongle_bind_payload_cfg 
+:      008660 g24_dongle_bind_second_step:
+0x2fed 008661 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x2fee 008662 beq bind_mouse ,g24_dongle_bind_second_step_mouse 
+0x2fef 008663 beq bind_keyboard ,g24_dongle_bind_second_step_keyboard 
+0x2ff0 008664 rtn 
+:      008665 g24_dongle_bind_second_step_mouse:
+0x2ff1 008666 call g24_dongle_bind_ms_payload_cfg 
+0x2ff2 008667 setarg offset_dongle_ms_bind_step 
+0x2ff3 008668 call g24_set_rega_ifetch_1byte 
+0x2ff4 008670 beq 1 ,g24_dongle_ms_bind_step_set2 
+0x2ff5 008671 rtn 
+:      008672 g24_dongle_ms_bind_step_set2:
+0x2ff6 008673 setarg 2 
+:      008675 g24_store_mem_ms_bind_step:
+0x2ff7 008676 arg offset_dongle_ms_bind_step ,rega 
+0x2ff8 008677 branch g24_set_contw_with_regb_store_1byte 
+:      008679 g24_dongle_bind_second_step_keyboard:
+0x2ff9 008680 call g24_dongle_bind_kb_payload_cfg 
+0x2ffa 008681 setarg offset_dongle_kb_bind_step 
+0x2ffb 008682 call g24_set_rega_ifetch_1byte 
+0x2ffc 008684 beq 1 ,g24_dongle_kb_bind_step_set2 
+0x2ffd 008685 rtn 
+:      008686 g24_dongle_kb_bind_step_set2:
+0x2ffe 008687 setarg 2 
+:      008689 g24_store_mem_kb_bind_step:
+0x2fff 008690 arg offset_dongle_kb_bind_step ,rega 
+0x3000 008691 branch g24_set_contw_with_regb_store_1byte 
+:      008693 g24_dongle_bind_third_step:
+0x3001 008694 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x3002 008695 beq bind_mouse ,g24_dongle_bind_third_step_mouse 
+0x3003 008696 beq bind_keyboard ,g24_dongle_bind_third_step_keyboard 
+0x3004 008697 rtn 
+:      008698 g24_dongle_bind_third_step_mouse:
+0x3005 008699 setarg offset_dongle_ms_bind_step 
+0x3006 008700 call g24_set_rega_ifetch_1byte 
+0x3007 008702 beq 2 ,g24_dongle_ms_bind_step_success 
+0x3008 008703 rtn 
+:      008704 g24_dongle_ms_bind_step_success:
+0x3009 008705 call g24_fetch_mem_bind_device_status 
+0x300a 008707 or_into 0x01 ,pdata 
+0x300b 008708 call g24_store_mem_bind_device_status 
+:      008710 g24_dongle_bind_exit:
+0x300c 008711 setarg 0 
+0x300d 008712 setarg offset_dongle_ms_bind_step 
+0x300e 008713 iadd regc ,contw 
+0x300f 008714 istore 2 ,contw 
+0x3010 008715 branch g24_rx_interrupt_clear 
+:      008717 g24_dongle_bind_third_step_keyboard:
+0x3011 008718 setarg offset_dongle_kb_bind_step 
+0x3012 008719 call g24_set_rega_ifetch_1byte 
+0x3013 008721 bne 0 ,g24_dongle_kb_bind_step_success 
+0x3014 008722 rtn 
+:      008723 g24_dongle_kb_bind_step_success:
+0x3015 008724 call g24_fetch_mem_bind_device_status 
+0x3016 008726 or_into 0x02 ,pdata 
+0x3017 008727 call g24_store_mem_bind_device_status 
+0x3018 008729 branch g24_dongle_bind_exit 
+:      008732 dongle_usb_dispatch:
+0x3019 008733 fetch 1 ,mem_usb0_get_set_report 
+0x301a 008734 rtn blank 
+0x301b 008735 jam 0 ,mem_usb0_get_set_report 
+0x301c 008736 fetch 2 ,mem_usb_setup_bvalue_temp 
+0x301d 008737 arg pc_set_report ,temp 
+0x301e 008738 isub temp ,null 
+0x301f 008739 nrtn zero 
+0x3020 008741 fetch 1 ,mem_usb0_set_report_data 
+0x3021 008742 rtnne pc_report_id 
+0x3022 008743 fetch 1 ,mem_usb0_set_report_data + 1 
+0x3023 008744 bpatch patch17_6 ,mem_patch17 
+0x3024 008745 beq command_mode ,dongle_dispose_cmd_mode 
+0x3025 008746 beq command_bind ,dongle_dispose_cmd_bind 
+0x3026 008747 beq command_current_project ,dongle_dispose_cmd_current_project 
+0x3027 008748 beq command_current_mode ,dongle_dispose_cmd_current_mode 
+0x3028 008749 beq command_current_fw_version ,dongle_dispose_cmd_current_fw_version 
+0x3029 008750 beq command_user_defined ,dongle_dispose_cmd_user_defined 
+:      008751 usb0_data_ready_report_set0:
+0x302a 008752 jam 0 ,mem_usb0_data_ready_report 
+0x302b 008753 rtn 
+:      008754 dongle_dispose_cmd_bind:
+0x302c 008755 fetch 1 ,mem_usb0_set_report_data + 2 
+0x302d 008756 beq com_bind_get ,dongle_dispose_cmd_get_bind 
+0x302e 008757 beq com_bind_exit ,dongle_dispose_cmd_exit_bind 
+0x302f 008758 beq com_read_mode ,dongle_dispose_cmd_read_mode 
+0x3030 008759 branch usb0_data_ready_report_set0 
+:      008760 dongle_dispose_cmd_get_bind:
+0x3031 008761 call g24_fetch_mem_bind_device_status 
+0x3032 008763 store 1 ,mem_usb0_get_report_data + 1 
+0x3033 008764 branch usb0_data_ready_report_set1 
+:      008765 dongle_dispose_cmd_exit_bind:
+0x3034 008766 call g24_set_work_mem_dongle_work_mode 
+0x3035 008768 call g24_set0_mem_dongle_mode_init 
+0x3036 008770 call g24_fetch_mem_bind_device_status 
+0x3037 008772 store 1 ,mem_usb0_get_report_data + 1 
+0x3038 008773 branch usb0_data_ready_report_set1 
+:      008775 dongle_dispose_cmd_read_mode:
+:      008776 dongle_dispose_in_bind_mode:
+0x3039 008777 jam command_bind ,mem_usb0_get_report_data + 1 
+0x303a 008778 branch usb0_data_ready_report_set1 
+:      008780 dongle_dispose_cmd_mode:
+0x303b 008781 fetch 1 ,mem_usb0_set_report_data + 2 
+0x303c 008782 beq com_mode_bind ,dongle_enter_bind_mode 
+0x303d 008784 branch usb0_data_ready_report_set0 
+:      008785 dongle_enter_bind_mode:
+0x303e 008788 call g24_bind_mode_enable 
+:      008789 usb0_data_ready_report_set1:
+0x303f 008790 jam 1 ,mem_usb0_data_ready_report 
+0x3040 008791 rtn 
+:      008796 dongle_dispose_cmd_current_project:
+0x3041 008797 jam product_id ,mem_usb0_get_report_data + 1 
+0x3042 008798 branch usb0_data_ready_report_set1 
+:      008800 dongle_dispose_cmd_current_mode:
+0x3043 008801 call g24_fetch_mem_dongle_work_mode 
+0x3044 008803 beq dongle_work ,dongle_dispose_in_work_mode 
+0x3045 008804 beq dongle_bind ,dongle_dispose_in_bind_mode 
+0x3046 008806 rtn 
+:      008807 dongle_dispose_in_work_mode:
+0x3047 008808 jam command_mode ,mem_usb0_get_report_data + 1 
+0x3048 008809 branch usb0_data_ready_report_set1 
+:      008814 dongle_dispose_cmd_current_fw_version:
+0x3049 008815 jam fw_version0 ,mem_usb0_get_report_data + 1 
+0x304a 008816 jam fw_version1 ,mem_usb0_get_report_data + 2 
+0x304b 008817 jam fw_version2 ,mem_usb0_get_report_data + 3 
+0x304c 008818 branch usb0_data_ready_report_set1 
+:      008820 dongle_dispose_cmd_user_defined:
+0x304d 008822 call g24_set1_mem_ackpayload_enable 
+0x304e 008823 fetch 1 ,mem_usb0_set_report_data + 2 
+0x304f 008824 increase 2 ,pdata 
+0x3050 008825 copy pdata ,loopcnt 
+0x3051 008826 arg mem_usb0_set_report_data ,contr 
+0x3052 008827 setarg offset_24g_ackpayload 
+0x3053 008828 iadd regc ,contw 
+0x3054 008829 branch memcpy 
+:      008832 dongle_auto_bind:
+0x3055 008833 bpatch patch17_7 ,mem_patch17 
+0x3056 008834 call g24_mode_switch_init 
+:      008835 dongle_auto_bind_loop:
+0x3057 008836 call g24_receive_process 
+0x3058 008837 call usb_isr 
+0x3059 008838 branch dongle_auto_bind_loop 
+:      008840 g24_dongle_work_mode_auto:
+0x305a 008841 call g24_fetch_mem_dongle_work_mode 
+0x305b 008843 rtnne dongle_work 
+0x305c 008844 call g24_dongle_work_mode_start 
+0x305d 008845 branch g24_rx_nodata_process 
+:      008847 g24_dongle_bind_mode_auto:
+0x305e 008848 call g24_fetch_mem_dongle_work_mode 
+0x305f 008850 rtnne dongle_bind 
+0x3060 008851 call g24_dongle_bind_init 
+0x3061 008852 call g24_dongle_bind_data_process 
+0x3062 008853 call g24_fetch_mem_bind_device_status 
+0x3063 008855 rtn blank 
+0x3064 008856 call g24_set0_mem_mode_switch 
+0x3065 008858 call dongle_check_mode 
+0x3066 008859 call g24_enable_nodata_timer 
+:      008860 g24_timer_init:
+0x3067 008861 setarg 0 
+0x3068 008862 add regc ,offset_24g_tx_btclk ,contw 
+0x3069 008864 branch g24_contw_istore_4byte 
+:      008866 g24_timer_check:
+0x306a 008867 call disable_user 
+0x306b 008868 add regc ,offset_24g_tx_btclk ,rega 
+0x306c 008869 ifetcht 4 ,rega 
+0x306d 008871 copy clkn_bt ,pdata 
+0x306e 008872 isub temp ,null 
+0x306f 008873 ncall g24_timer_timeout ,positive 
+0x3070 008874 copy pdata ,regb 
+0x3071 008875 add regc ,offset_24g_tx_btclk ,rega 
+0x3072 008876 ifetch 4 ,rega 
+0x3073 008878 add regc ,offset_24g_interval ,rega 
+0x3074 008879 ifetcht 1 ,rega 
+0x3075 008881 iadd temp ,temp 
+0x3076 008882 copy regb ,pdata 
+0x3077 008883 isub temp ,null 
+0x3078 008884 nrtn positive 
+0x3079 008885 set0 28 ,pdata 
+0x307a 008886 add regc ,offset_24g_tx_btclk ,contw 
+0x307b 008887 istore 4 ,contw 
+0x307c 008889 branch enable_user 
+:      008891 g24_mode_switch_init:
+0x307d 008892 setarg 1 
+0x307e 008893 call g24_store_mem_mode_switch 
+0x307f 008895 call g24_set0_mem_time_slice 
+0x3080 008897 setarg 0xff 
+0x3081 008898 add regc ,offset_24g_interval ,contw 
+0x3082 008899 istore 1 ,contw 
+0x3083 008901 branch g24_timer_init 
+:      008903 g24_mode_switch:
+0x3084 008904 setarg offset_24g_mode_switch 
+0x3085 008905 call g24_set_rega_ifetch_1byte 
+0x3086 008907 rtn blank 
+0x3087 008908 call g24_timer_check 
+0x3088 008909 nrtn user 
+0x3089 008910 call g24_fetch_mem_time_slice 
+0x308a 008912 increase 1 ,pdata 
+0x308b 008913 and_into 1 ,pdata 
+0x308c 008914 call g24_store_mem_time_slice 
+0x308d 008916 beq 0 ,dongle_check_mode 
+0x308e 008917 beq 1 ,g24_bind_mode_enable 
+0x308f 008918 rtn 
+:      008920 g24_bind_mode_enable:
+0x3090 008924 setarg dongle_bind 
+0x3091 008925 call g24_store_mem_dongle_work_mode 
+0x3092 008926 branch g24_set0_mem_dongle_mode_init 
+:      008928 g24_enable_nodata_timer:
+0x3093 008929 setarg 1 
+0x3094 008930 call g24_store_mem_nodata_timer_enable 
+:      008932 g24_enable_nodata_timer_init:
+0x3095 008933 setarg timer_nodata_delay 
+0x3096 008934 arg timer_nodata ,queue 
+0x3097 008935 branch timer_init 
+:      008937 g24_rx_nodata_process:
+0x3098 008938 call g24_fetch_mem_nodata_timer_enable 
+0x3099 008940 rtn blank 
+0x309a 008941 arg timer_nodata ,queue 
+0x309b 008942 call timer_check 
+0x309c 008943 nrtn blank 
+0x309d 008944 call g24_set0_mem_nodata_timer_enable 
+0x309e 008947 setarg dongle_search 
+0x309f 008948 call g24_store_mem_dongle_work_mode 
+0x30a0 008950 call g24_set0_mem_dongle_mode_init 
+0x30a1 008952 branch g24_rx_interrupt_clear 
+:      008954 g24_dongle_search_mode_auto:
+0x30a2 008955 bpatch patch18_0 ,mem_patch18 
+0x30a3 008956 call g24_fetch_mem_dongle_work_mode 
+0x30a4 008958 rtnne dongle_search 
+0x30a5 008959 call g24_dongle_search_mode_init 
+0x30a6 008960 call g24_rx_auto_addr_ch_search 
+0x30a7 008961 call g24_receive_transmit_ack 
+0x30a8 008962 nbranch g24_rx_interrupt_clear ,user3 
+0x30a9 008964 call g24_dongle_search_addr_check 
+0x30aa 008965 call g24_receive_packet_parse ,zero 
+0x30ab 008969 call dongle_check_mode 
+0x30ac 008970 call g24_fetch_mem_dongle_mode_init 
+0x30ad 008972 set1 dongle_work ,pdata 
+0x30ae 008973 call g24_store_mem_dongle_mode_init 
+0x30af 008975 call g24_rx_interrupt_clear 
+0x30b0 008976 call g24_enable_nodata_timer 
+0x30b1 008977 call g24_dongle_search_addr_check 
+0x30b2 008978 branch g24_dg_ch_num_reinit ,zero 
+0x30b3 008979 setarg offset_24g_kb_addr 
+0x30b4 008980 call g24_set_rega_ifetcht_4byte 
+0x30b5 008982 call g24_fetch_mem_addr_isub_temp 
+0x30b6 008983 branch g24_kb_ch_num_reinit ,zero 
+0x30b7 008984 setarg offset_24g_mouse_addr 
+0x30b8 008985 call g24_set_rega_ifetcht_4byte 
+0x30b9 008987 call g24_fetch_mem_addr_isub_temp 
+0x30ba 008988 branch g24_ms_ch_num_reinit ,zero 
+0x30bb 008989 rtn 
+:      008991 g24_dongle_search_addr_check:
+0x30bc 008992 setarg offset_24g_rx_addr 
+0x30bd 008993 call g24_set_rega_ifetcht_4byte 
+:      008995 g24_fetch_mem_addr_isub_temp:
+0x30be 008996 call g24_fetch_mem_addr 
+0x30bf 008998 isub temp ,null 
+0x30c0 008999 rtn 
+:      009001 g24_dg_ch_num_reinit:
+0x30c1 009002 setarg offset_24g_dg_ch_number 
+0x30c2 009003 call g24_set_rega_ifetch_1byte 
+:      009005 g24_current_ch_num_reinit:
+0x30c3 009007 add regc ,offset_24g_current_ch_number ,contw 
+0x30c4 009008 branch g24_contw_istore_1byte 
+:      009010 g24_kb_ch_num_reinit:
+0x30c5 009011 setarg offset_24g_kb_ch_number 
+0x30c6 009012 call g24_set_rega_ifetch_1byte 
+0x30c7 009014 branch g24_current_ch_num_reinit 
+:      009015 g24_ms_ch_num_reinit:
+0x30c8 009016 setarg offset_24g_ms_ch_number 
+0x30c9 009017 call g24_set_rega_ifetch_1byte 
+0x30ca 009019 branch g24_current_ch_num_reinit 
+:      009021 g24_dongle_search_mode_init:
+0x30cb 009022 call g24_fetch_mem_dongle_mode_init 
+0x30cc 009024 rtnbit1 dongle_search 
+0x30cd 009025 set1 dongle_search ,pdata 
+0x30ce 009026 call g24_store_mem_dongle_mode_init 
+0x30cf 009028 call g24_set0_mem_time_slice 
+0x30d0 009030 call g24_set1_mem_ackpayload_enable 
+0x30d1 009032 setarg 0 
+0x30d2 009033 add regc ,offset_rssi_noise_dg_index ,contw 
+0x30d3 009034 istore 3 ,contw 
+0x30d4 009036 arg offset_24g_dg_config_ch_once ,rega 
+0x30d5 009037 call g24_set_contw_with_temp 
+0x30d6 009038 istore 7 ,contw 
+0x30d7 009041 call g24_dongle_search_addr_check 
+0x30d8 009042 nrtn zero 
+0x30d9 009043 add regc ,offset_24g_current_ch_number ,rega 
+0x30da 009044 ifetch 1 ,rega 
+0x30db 009046 arg offset_24g_dg_ch_number ,rega 
+0x30dc 009047 call g24_set_contw_with_regb_store_1byte 
+0x30dd 009049 add regc ,offset_24g_ch ,rega 
+0x30de 009050 ifetch 1 ,rega 
+0x30df 009053 branch g24_store_mem_dg_last_ch 
+:      009055 g24_rx_auto_addr_ch_search:
+0x30e0 009056 bpatch patch18_1 ,mem_patch18 
+0x30e1 009057 call g24_fetch_mem_time_slice 
+0x30e2 009059 increase 1 ,pdata 
+0x30e3 009060 and_into 3 ,pdata 
+0x30e4 009061 call g24_store_mem_time_slice 
+0x30e5 009064 beq 0 ,g24_rx_auto_bind_config_kb 
+0x30e6 009065 beq 1 ,g24_rx_auto_bind_config_dongle 
+0x30e7 009066 beq 2 ,g24_rx_auto_bind_config_mouse 
+0x30e8 009067 beq 3 ,g24_rx_auto_bind_config_dongle 
+0x30e9 009068 rtn 
+:      009070 g24_rx_auto_bind_config_mouse:
+0x30ea 009071 call g24_dongle_bind_ms_payload_cfg 
+0x30eb 009072 setarg offset_24g_mouse_addr 
+0x30ec 009073 call g24_set_rega_ifetch_4byte 
+0x30ed 009075 branch g24_rx_auto_addr_ch_search ,blank 
+0x30ee 009076 call g24_store_mem_addr 
+0x30ef 009078 setarg offset_24g_ms_config_ch_once 
+0x30f0 009079 call g24_set_rega_ifetch_1byte 
+0x30f1 009081 call g24_ms_config_ch_once ,blank 
+0x30f2 009082 setarg offset_24g_ms_last_ch 
+0x30f3 009083 call g24_set_rega_ifetch_1byte 
+0x30f4 009085 call g24_store_mem_ch 
+0x30f5 009087 add regc ,offset_rssi_noise_ms_index ,rega 
+0x30f6 009088 ifetcht 1 ,rega 
+0x30f7 009090 arg mem_rssi_noise_ms_buffer ,rega 
+0x30f8 009091 call rssi_noise_store 
+0x30f9 009092 add regc ,offset_rssi_noise_ms_index ,contw 
+0x30fa 009093 istoret 1 ,contw 
+0x30fb 009095 call g24_noise_rssi_average 
+0x30fc 009096 add regc ,offset_rssi_noise_ms_avg ,contw 
+0x30fd 009097 istoret 1 ,contw 
+0x30fe 009099 sub temp ,rssi_thresh_noise ,null 
+0x30ff 009100 nrtn positive 
+0x3100 009101 setarg offset_24g_ms_ch_number 
+0x3101 009102 call g24_set_rega_ifetcht_1byte 
+0x3102 009104 call g24_ch_temp_incre_size4 
+0x3103 009105 arg offset_24g_ms_ch_number ,rega 
+0x3104 009106 call g24_set_contw_with_regb2 
+0x3105 009107 istoret 1 ,contw 
+:      009109 g24_store_mem_ms_last_ch:
+0x3106 009111 arg offset_24g_ms_last_ch ,rega 
+0x3107 009112 branch g24_set_contw_with_regb_store_1byte 
+:      009114 g24_ms_config_ch_once:
+0x3108 009115 setarg 1 
+0x3109 009116 arg offset_24g_ms_config_ch_once ,rega 
+0x310a 009117 call g24_set_contw_with_regb_store_1byte 
+0x310b 009119 arg 0 ,temp 
+0x310c 009120 call g24_ch_calc 
+0x310d 009123 branch g24_store_mem_ms_last_ch 
+:      009125 g24_rx_auto_bind_config_kb:
+0x310e 009126 call g24_dongle_bind_kb_payload_cfg 
+0x310f 009127 setarg offset_24g_kb_addr 
+0x3110 009128 call g24_set_rega_ifetch_4byte 
+0x3111 009130 branch g24_rx_auto_addr_ch_search ,blank 
+0x3112 009131 call g24_store_mem_addr 
+0x3113 009133 setarg offset_24g_kb_config_ch_once 
+0x3114 009134 call g24_set_rega_ifetch_1byte 
+0x3115 009136 call g24_kb_config_ch_once ,blank 
+0x3116 009137 setarg offset_24g_kb_last_ch 
+0x3117 009138 call g24_set_rega_ifetch_1byte 
+0x3118 009140 call g24_store_mem_ch 
+0x3119 009142 add regc ,offset_rssi_noise_kb_index ,rega 
+0x311a 009143 ifetcht 1 ,rega 
+0x311b 009145 arg mem_rssi_noise_kb_buffer ,rega 
+0x311c 009146 call rssi_noise_store 
+0x311d 009147 add regc ,offset_rssi_noise_kb_index ,contw 
+0x311e 009148 istoret 1 ,contw 
+0x311f 009150 call g24_noise_rssi_average 
+0x3120 009151 add regc ,offset_rssi_noise_kb_avg ,contw 
+0x3121 009152 istoret 1 ,contw 
+0x3122 009154 sub temp ,rssi_thresh_noise ,null 
+0x3123 009155 nrtn positive 
+0x3124 009156 setarg offset_24g_kb_ch_number 
+0x3125 009157 call g24_set_rega_ifetcht_1byte 
+0x3126 009159 call g24_ch_temp_incre_size4 
+0x3127 009160 arg offset_24g_kb_ch_number ,rega 
+0x3128 009161 call g24_set_contw_with_regb2 
+0x3129 009162 istoret 1 ,contw 
+:      009164 g24_store_mem_kb_last_ch:
+0x312a 009166 arg offset_24g_kb_last_ch ,rega 
+0x312b 009167 branch g24_set_contw_with_regb_store_1byte 
+:      009169 g24_kb_config_ch_once:
+0x312c 009170 setarg 1 
+0x312d 009171 arg offset_24g_kb_config_ch_once ,rega 
+0x312e 009172 call g24_set_contw_with_regb_store_1byte 
+0x312f 009174 arg 0 ,temp 
+0x3130 009175 call g24_ch_calc 
+0x3131 009178 branch g24_store_mem_kb_last_ch 
+:      009180 g24_rx_auto_bind_config_dongle:
+0x3132 009181 call g24_dongle_bind_ms_payload_cfg 
+0x3133 009182 call g24_fetch_mem_rx_addr 
+0x3134 009184 call g24_store_mem_addr 
+0x3135 009186 setarg offset_24g_dg_config_ch_once 
+0x3136 009187 call g24_set_rega_ifetch_1byte 
+0x3137 009189 call g24_dg_config_ch_once ,blank 
+0x3138 009190 call g24_dg_store_config_ch 
+0x3139 009191 add regc ,offset_rssi_noise_dg_index ,rega 
+0x313a 009192 ifetcht 1 ,rega 
+0x313b 009194 arg mem_rssi_noise_dg_buffer ,rega 
+0x313c 009195 call rssi_noise_store 
+0x313d 009196 add regc ,offset_rssi_noise_dg_index ,contw 
+0x313e 009197 istoret 1 ,contw 
+0x313f 009199 call g24_noise_rssi_average 
+0x3140 009200 add regc ,offset_rssi_noise_dg_avg ,contw 
+0x3141 009201 istoret 1 ,contw 
+0x3142 009203 sub temp ,rssi_thresh_noise ,null 
+0x3143 009204 nrtn positive 
+0x3144 009205 setarg offset_24g_dg_ch_number 
+0x3145 009206 call g24_set_rega_ifetcht_1byte 
+0x3146 009208 call g24_ch_temp_incre_size4 
+0x3147 009209 arg offset_24g_dg_ch_number ,rega 
+0x3148 009210 call g24_set_contw_with_regb2 
+0x3149 009211 istoret 1 ,contw 
+:      009213 g24_store_mem_dg_last_ch:
+0x314a 009216 arg offset_24g_dg_last_ch ,rega 
+0x314b 009217 branch g24_set_contw_with_regb_store_1byte 
+:      009220 g24_dg_config_ch_once:
+0x314c 009225 setarg 1 
+0x314d 009226 arg offset_24g_dg_config_ch_once ,rega 
+0x314e 009227 call g24_set_contw_with_regb_store_1byte 
+:      009228 g24_dg_store_config_ch:
+0x314f 009229 setarg offset_24g_dg_last_ch 
+0x3150 009230 call g24_set_rega_ifetch_1byte 
+0x3151 009231 branch g24_store_mem_ch 
+:      009234 g24_transmit_ack:
+0x3152 009236 add regc ,offset_24g_rxbuf ,rega 
+0x3153 009237 ifetch 1 ,rega 
+0x3154 009239 call g24_store_mem_data_type 
+0x3155 009242 call g24_read_len_pid_crc 
+0x3156 009244 call g24_fetch_mem_rxbuf_add1 
+0x3157 009246 isolate1 bit_ack_24g ,pdata 
+0x3158 009247 branch g24tx_no_ack ,true 
+:      009248 g24tx_with_ack:
+0x3159 009249 call g24_ackpayload_prep 
+0x315a 009250 call g24_transmit_prep 
+0x315b 009251 call g24_transmit 
+:      009252 g24tx_no_ack:
+0x315c 009253 branch g24_end_of_packet 
+:      009255 g24_ackpayload_prep:
+0x315d 009256 bpatch patch18_2 ,mem_patch18 
+0x315e 009257 add regc ,offset_24g_datalen ,contw 
+0x315f 009258 call g24_mem_set0 
+0x3160 009260 setarg offset_24g_ackpayload_enable 
+0x3161 009261 call g24_set_rega_ifetch_1byte 
+0x3162 009263 rtn blank 
+0x3163 009264 setarg 0x06 
+0x3164 009265 add regc ,offset_24g_datalen ,contw 
+0x3165 009266 istore 1 ,contw 
+0x3166 009268 arg 0x06 ,loopcnt 
+0x3167 009269 setarg offset_24g_bind_payload 
+0x3168 009270 iadd regc ,contr 
+0x3169 009272 add regc ,offset_24g_txbuf ,contw 
+0x316a 009274 branch memcpy 
+:      009277 g24_receive_packet_start:
+0x316b 009278 call g24_receive_transmit_ack 
+0x316c 009279 nbranch g24_rx_interrupt_clear ,user3 
+0x316d 009280 branch g24_receive_packet_parse 
+:      009282 g24_receive_transmit_ack:
+0x316e 009283 call g24_rx_interrupt_clear 
+0x316f 009284 call g24_receive_packet 
+0x3170 009285 nrtn user3 
+0x3171 009286 branch g24_transmit_ack 
+:      009288 g24_receive_packet_parse:
+0x3172 009289 bpatch patch18_3 ,mem_patch18 
+0x3173 009290 call g24_receive_packet_parse_pid_crc 
+0x3174 009291 nbranch g24_rx_interrupt_clear ,user 
+0x3175 009292 add regc ,offset_24g_rxdata_length ,rega 
+0x3176 009293 ifetch 1 ,rega 
+0x3177 009295 branch g24_rx_interrupt_clear ,blank 
+0x3178 009296 increase 2 ,pdata 
+0x3179 009297 iforce loopcnt 
+0x317a 009298 add regc ,offset_24g_rxbuf ,contr 
+0x317b 009300 setarg offset_24g_rxdata_temp 
+0x317c 009301 iadd regc ,contw 
+0x317d 009303 call memcpy 
+0x317e 009304 call g24_set0_mem_mode_switch 
+0x317f 009306 call g24_fetch_mem_pair_mode 
+0x3180 009308 call g24_enable_nodata_timer ,blank 
+0x3181 009309 setarg offset_24g_rxdata_temp_add2 
+0x3182 009310 call g24_set_rega_ifetch_1byte 
+0x3183 009312 beq 0x01 ,g24_data_type1 
+0x3184 009313 beq 0x02 ,g24_data_type2 
+0x3185 009314 beq 0x03 ,g24_data_type3 
+0x3186 009315 beq 0xff ,g24_data_attemp 
+0x3187 009316 branch g24_rx_interrupt_clear 
+:      009318 g24_receive_packet_parse_pid_crc:
+0x3188 009319 call g24_head_ptr2regc 
+0x3189 009320 call disable_user 
+0x318a 009321 add regc ,offset_24g_sta_pid ,rega 
+0x318b 009322 ifetch 1 ,rega 
+0x318c 009324 add regc ,offset_24g_last_pid ,rega 
+0x318d 009325 ifetcht 1 ,rega 
+0x318e 009327 isub temp ,null 
+0x318f 009328 ncall enable_user ,zero 
+0x3190 009329 add regc ,offset_24g_sta_pid ,rega 
+0x3191 009330 ifetch 1 ,rega 
+0x3192 009332 add regc ,offset_24g_last_pid ,contw 
+0x3193 009333 istore 1 ,contw 
+0x3194 009335 add regc ,offset_24g_sta_crc ,rega 
+0x3195 009336 ifetch 3 ,rega 
+0x3196 009338 add regc ,offset_24g_last_crc ,rega 
+0x3197 009339 ifetcht 3 ,rega 
+0x3198 009341 isub temp ,null 
+0x3199 009342 ncall enable_user ,zero 
+0x319a 009343 add regc ,offset_24g_sta_crc ,rega 
+0x319b 009344 ifetch 3 ,rega 
+0x319c 009346 add regc ,offset_24g_last_crc ,contw 
+0x319d 009348 branch g24_contw_istore_3byte 
+:      009350 g24_data_type1:
+0x319e 009351 call g24_ch_timer_reinit 
+0x319f 009352 call g24_fetch_mem_abort_pac 
+0x31a0 009353 store 1 ,mem_temp 
+0x31a1 009355 call g24_fetcht_mem_rxdata_temp 
+0x31a2 009356 fetch 1 ,mem_temp 
+0x31a3 009358 isolate1 bit_abort ,temp 
+0x31a4 009359 setflag true ,0 ,pdata 
+0x31a5 009360 add regc ,offset_24g_abort_pac ,contw 
+0x31a6 009361 istore 1 ,contw 
+0x31a7 009363 beq 1 ,g24_data_attemp_mouse 
+0x31a8 009364 call g24_fetch_mem_hop_pac 
+0x31a9 009366 call g24_fetcht_mem_rxdata_temp 
+0x31aa 009368 isolate1 bit_hop ,temp 
+0x31ab 009369 setflag true ,0 ,pdata 
+0x31ac 009370 call g24_store_mem_hop_pac 
+0x31ad 009372 add regc ,offset_24g_cb_rxdata_type1 ,rega 
+0x31ae 009373 ifetch 2 ,rega 
+0x31af 009375 branch callback_func 
+:      009377 dongle_rxdata_type1:
+0x31b0 009378 setarg ms_report_id 
+0x31b1 009379 store 1 ,mem_usb_mouse_data 
+0x31b2 009380 call g24_fetch_mem_rxdata_temp_add3_7byte 
+0x31b3 009382 istore 7 ,contw 
+0x31b4 009383 call g24_fetch_mem_rxdata_temp_add3_7byte 
+0x31b5 009385 ncall g24_ms_enable_blank_data_forcibly ,blank 
+0x31b6 009386 call g24_fetch_mem_rxdata_temp_add3_7byte 
+0x31b7 009388 call g24_ms_disable_blank_data_forcibly ,blank 
+:      009389 g24_data_type1_usbtx_enable:
+0x31b8 009390 jam usb_ep2_ms ,mem_usb_ep2_data 
+:      009391 g24_data_type1_usbtx_enable_ep2:
+0x31b9 009392 fetch 1 ,mem_usb_tx_enable 
+0x31ba 009393 set1 2 ,pdata 
+0x31bb 009394 store 1 ,mem_usb_tx_enable 
+0x31bc 009395 rtn 
+:      009397 g24_ms_enable_blank_data_forcibly:
+0x31bd 009398 setarg 1 
+0x31be 009399 call g24_store_mem_ms_blank_data_enable 
+:      009401 g24_ms_enable_blank_data_timer:
+0x31bf 009402 setarg timer_ms_blank_delay 
+0x31c0 009403 arg timer_ms_blank ,queue 
+0x31c1 009404 branch timer_init 
+:      009405 g24_ms_disable_blank_data_forcibly:
+0x31c2 009406 call g24_set0_mem_ms_blank_data_enable 
+:      009408 g24_ms_disable_blank_data_timer:
+0x31c3 009409 setarg 0 
+0x31c4 009410 arg timer_ms_blank ,queue 
+0x31c5 009411 branch timer_init 
+:      009413 g24_data_type2:
+0x31c6 009414 call g24_fetcht_mem_rxdata_temp 
+0x31c7 009416 isolate1 bit_abort ,temp 
+0x31c8 009417 branch g24_data_attemp_kbd ,true 
+0x31c9 009418 arg mem_usb_kb_data ,contw 
+0x31ca 009419 call g24_data_type2_reverse_data 
+0x31cb 009420 fetch 8 ,mem_usb_kb_data 
+0x31cc 009421 ncall g24_kb_enable_blank_data_forcibly ,blank 
+0x31cd 009422 fetch 8 ,mem_usb_kb_data 
+0x31ce 009423 call g24_kb_disable_blank_data_forcibly ,blank 
+0x31cf 009424 call g24_head_ptr2regc 
+0x31d0 009425 fetch 8 ,mem_usb_kb_data 
+0x31d1 009426 arg offset_24g_kb_data_sta_data ,rega 
+0x31d2 009427 call g24_set_contw_with_temp 
+0x31d3 009428 istore 8 ,contw 
+0x31d4 009430 setarg offset_24g_kb_data_last_data 
+0x31d5 009431 iadd regc ,rega 
+0x31d6 009432 ifetcht 8 ,rega 
+0x31d7 009434 isub temp ,null 
+0x31d8 009435 ncall g24_kb_data_dispose ,zero 
+0x31d9 009436 setarg offset_24g_kb_data_sta_data 
+0x31da 009437 iadd regc ,rega 
+0x31db 009438 ifetch 8 ,rega 
+0x31dc 009440 arg offset_24g_kb_data_last_data ,rega 
+0x31dd 009441 call g24_set_contw_with_temp 
+0x31de 009442 istore 8 ,contw 
+0x31df 009444 branch g24_rx_interrupt_clear 
+:      009446 g24_data_type2_reverse_data:
+0x31e0 009447 setarg offset_24g_rxdata_temp_add2 
+0x31e1 009448 iadd regc ,contr 
+0x31e2 009450 arg 9 ,loopcnt 
+0x31e3 009451 branch reverse_byte 
+:      009453 g24_kb_enable_blank_data_forcibly:
+0x31e4 009454 setarg 1 
+0x31e5 009455 call g24_store_mem_kb_blank_data_enable 
+:      009457 g24_kb_enable_blank_data_timer:
+0x31e6 009458 setarg timer_kb_blank_delay 
+0x31e7 009459 arg timer_kb_blank ,queue 
+0x31e8 009460 branch timer_init 
+:      009462 g24_kb_disable_blank_data_forcibly:
+0x31e9 009463 call g24_set0_mem_kb_blank_data_enable 
+:      009465 g24_kb_disable_blank_data_timer:
+0x31ea 009466 setarg 0 
+0x31eb 009467 arg timer_kb_blank ,queue 
+0x31ec 009468 branch timer_init 
+:      009470 g24_kb_data_dispose:
+:      009471 g24_kb_data_into_ep1_fifo:
+0x31ed 009472 jam usb_ep1_kb ,mem_usb_ep1_data 
+0x31ee 009473 fetch 1 ,mem_usb_tx_enable 
+0x31ef 009474 set1 1 ,pdata 
+0x31f0 009475 store 1 ,mem_usb_tx_enable 
+0x31f1 009476 rtn 
+:      009478 g24_data_type3:
+0x31f2 009479 arg mem_usb_kb_multikey ,contw 
+0x31f3 009480 call g24_data_type2_reverse_data 
+0x31f4 009481 fetch 2 ,mem_usb_kb_multikey + 1 
+0x31f5 009482 ncall g24_kb_mul_enable_blank_data_forcibly ,blank 
+0x31f6 009483 fetch 2 ,mem_usb_kb_multikey + 1 
+0x31f7 009484 call g24_kb_mul_disable_blank_data_forcibly ,blank 
+0x31f8 009485 call g24_head_ptr2regc 
+0x31f9 009486 fetch 3 ,mem_usb_kb_multikey 
+0x31fa 009487 arg offset_24g_kb_multikey_sta_data ,rega 
+0x31fb 009488 call g24_set_contw_with_temp_store_3byte 
+0x31fc 009490 setarg offset_24g_kb_multikey_last_data 
+0x31fd 009491 iadd regc ,rega 
+0x31fe 009492 ifetcht 3 ,rega 
+0x31ff 009494 isub temp ,null 
+0x3200 009495 ncall g24_kb_mul_data_into_ep2_fifo ,zero 
+0x3201 009496 setarg offset_24g_kb_multikey_sta_data 
+0x3202 009497 iadd regc ,rega 
+0x3203 009498 ifetch 3 ,rega 
+0x3204 009500 arg offset_24g_kb_multikey_last_data ,rega 
+0x3205 009501 call g24_set_contw_with_temp_store_3byte 
+0x3206 009503 branch g24_rx_interrupt_clear 
+:      009505 g24_kb_mul_data_into_ep2_fifo:
+0x3207 009506 jam usb_ep2_multikey ,mem_usb_ep2_data 
+0x3208 009507 branch g24_data_type1_usbtx_enable_ep2 
+:      009509 g24_kb_mul_enable_blank_data_forcibly:
+0x3209 009510 setarg 1 
+0x320a 009511 call g24_store_mem_kb_mul_blank_data_enable 
+:      009513 g24_kb_mul_enable_blank_data_timer:
+0x320b 009514 setarg timer_kb_mul_blank_delay 
+0x320c 009515 arg timer_kb_mul_blank ,queue 
+0x320d 009516 branch timer_init 
+:      009518 g24_kb_mul_disable_blank_data_forcibly:
+0x320e 009519 call g24_set0_mem_kb_mul_blank_data_enable 
+:      009521 g24_kb_mul_disable_blank_data_timer:
+0x320f 009522 setarg 0 
+0x3210 009523 arg timer_kb_mul_blank ,queue 
+0x3211 009524 branch timer_init 
+:      009526 g24_data_attemp:
+0x3212 009527 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x3213 009529 beq datatype_mouse ,g24_data_attemp_mouse 
+0x3214 009530 beq datatype_keyboard ,g24_data_attemp_kbd 
+0x3215 009531 rtn 
+:      009532 g24_data_attemp_mouse:
+0x3216 009533 setarg offset_24g_rxdata_temp_add4 
+0x3217 009534 call g24_set_rega_ifetch_4byte 
+0x3218 009535 arg offset_24g_mouse_addr ,rega 
+0x3219 009536 call g24_set_contw_with_temp 
+0x321a 009539 branch g24_contw_istore_4byte 
+:      009541 g24_data_attemp_kbd:
+0x321b 009542 setarg offset_24g_rxdata_temp_add4 
+0x321c 009543 call g24_set_rega_ifetch_4byte 
+0x321d 009544 arg offset_24g_kb_addr ,rega 
+0x321e 009545 call g24_set_contw_with_temp 
+0x321f 009548 branch g24_contw_istore_4byte 
+:      009550 g24_store_mem_24g_mode:
+0x3220 009551 call g24_head_ptr2regc 
+0x3221 009552 add regc ,offset_24g_mode ,contw 
+0x3222 009553 istore 1 ,contw 
+0x3223 009554 rtn 
+:      009556 g24_fetch_mem_device_addr:
+0x3224 009557 call g24_head_ptr2regc 
+0x3225 009558 add regc ,offset_24g_device_addr ,rega 
+0x3226 009559 branch g24_rega_ifetch_4byte 
+:      009560 g24_store_mem_device_addr:
+0x3227 009561 call g24_head_ptr2regc 
+0x3228 009562 add regc ,offset_24g_device_addr ,contw 
+0x3229 009563 branch g24_contw_istore_4byte 
+:      009565 g24_fetch_mem_addr:
+0x322a 009566 add regc ,offset_24g_addr ,rega 
+0x322b 009567 branch g24_rega_ifetch_4byte 
+:      009568 g24_store_mem_addr:
+0x322c 009569 add regc ,offset_24g_addr ,contw 
+:      009570 g24_contw_istore_4byte:
+0x322d 009571 istore 4 ,contw 
+0x322e 009572 rtn 
+:      009574 g24_store_mem_ch:
+0x322f 009575 add regc ,offset_24g_ch ,contw 
+0x3230 009576 branch g24_contw_istore_1byte 
+:      009578 g24_set0_mem_pid:
+0x3231 009579 setarg 0 
+:      009580 g24_store_mem_pid:
+0x3232 009581 call g24_head_ptr2regc 
+0x3233 009582 add regc ,offset_24g_pid ,contw 
+0x3234 009583 branch g24_contw_istore_1byte 
+:      009585 g24_store_mem_txpayload:
+0x3235 009586 add regc ,offset_24g_txpayload ,contw 
+0x3236 009587 branch g24_contw_istore_1byte 
+:      009589 g24_set4_mem_max_retry:
+0x3237 009590 setarg 4 
+:      009591 g24_store_mem_max_retry:
+0x3238 009592 add regc ,offset_24g_max_retry ,contw 
+0x3239 009593 branch g24_contw_istore_1byte 
+:      009595 g24_fetch_mem_data_type:
+0x323a 009596 add regc ,offset_24g_data_type ,rega 
+0x323b 009597 branch g24_rega_ifetch_1byte 
+:      009598 g24_store_mem_data_type:
+0x323c 009599 add regc ,offset_24g_data_type ,contw 
+0x323d 009600 branch g24_contw_istore_1byte 
+:      009602 g24_set2_mem_sync_cnt:
+0x323e 009603 setarg 2 
+:      009604 g24_store_mem_sync_cnt:
+0x323f 009605 add regc ,offset_24g_sync_cnt ,contw 
+0x3240 009606 branch g24_contw_istore_1byte 
+:      009608 g24_set1_mem_rf_last_sta:
+0x3241 009609 setarg 1 
+:      009610 g24_store_mem_rf_last_sta:
+0x3242 009611 call g24_head_ptr2regc 
+0x3243 009612 add regc ,offset_24g_rf_last_sta ,contw 
+0x3244 009613 branch g24_contw_istore_1byte 
+:      009615 g24_fetch_mem_hop_pac:
+0x3245 009616 call g24_head_ptr2regc 
+0x3246 009617 add regc ,offset_24g_hop_pac ,rega 
+0x3247 009618 branch g24_rega_ifetch_1byte 
+:      009619 g24_set1_mem_hop_pac:
+0x3248 009620 setarg 1 
+:      009621 g24_store_mem_hop_pac:
+0x3249 009622 call g24_head_ptr2regc 
+0x324a 009623 add regc ,offset_24g_hop_pac ,contw 
+0x324b 009624 branch g24_contw_istore_1byte 
+:      009626 g24_fetch_mem_abort_pac:
+0x324c 009627 call g24_head_ptr2regc 
+0x324d 009628 add regc ,offset_24g_abort_pac ,rega 
+0x324e 009629 branch g24_rega_ifetch_1byte 
+:      009630 g24_set1_mem_abort_pac:
+0x324f 009631 setarg 1 
+:      009632 g24_store_mem_abort_pac:
+0x3250 009633 call g24_head_ptr2regc 
+0x3251 009634 add regc ,offset_24g_abort_pac ,contw 
+0x3252 009635 branch g24_contw_istore_1byte 
+:      009637 g24_fetch_mem_pairing_sm:
+0x3253 009638 call g24_head_ptr2regc 
+0x3254 009639 add regc ,offset_24g_pairing_sm ,rega 
+0x3255 009640 branch g24_rega_ifetch_1byte 
+:      009641 g24_store_mem_pairing_sm:
+0x3256 009642 add regc ,offset_24g_pairing_sm ,contw 
+0x3257 009643 branch g24_contw_istore_1byte 
+:      009645 g24_fetch_mem_rf_hop_ch:
+0x3258 009646 add regc ,offset_24g_rf_hop_ch ,rega 
+0x3259 009647 branch g24_rega_ifetch_1byte 
+:      009648 g24_set0_mem_rf_hop_ch:
+0x325a 009649 setarg 0 
+:      009650 g24_store_mem_rf_hop_ch:
+0x325b 009651 add regc ,offset_24g_rf_hop_ch ,contw 
+0x325c 009652 branch g24_contw_istore_1byte 
+:      009654 g24_fetch_mem_rf_work_stage:
+0x325d 009655 add regc ,offset_24g_rf_work_stage ,rega 
+0x325e 009656 branch g24_rega_ifetch_1byte 
+:      009658 g24_fetch_mem_rxbuf_add1:
+0x325f 009659 add regc ,offset_24g_rxbuf_add1 ,rega 
+0x3260 009660 branch g24_rega_ifetch_1byte 
+:      009662 g24_fetch_mem_check_dongle_times:
+0x3261 009663 add regc ,offset_24g_check_dongle_times ,rega 
+0x3262 009664 branch g24_rega_ifetch_1byte 
+:      009665 g24_set0_mem_check_dongle_times:
+0x3263 009666 setarg 0 
+:      009667 g24_store_mem_check_dongle_times:
+0x3264 009668 call g24_head_ptr2regc 
+0x3265 009669 add regc ,offset_24g_check_dongle_times ,contw 
+0x3266 009670 branch g24_contw_istore_1byte 
+:      009672 g24_store_mem_tx_power:
+0x3267 009673 call g24_head_ptr2regc 
+0x3268 009674 add regc ,offset_tx_power_temp ,rega 
+0x3269 009675 ifetch 1 ,rega 
+:      009676 g24_store_mem_txpower:
+0x326a 009677 store 1 ,mem_tx_power 
+0x326b 009678 rtn 
+:      009680 g24_store_mem_tx_power_temp:
+0x326c 009681 call g24_head_ptr2regc 
+0x326d 009682 fetch 1 ,mem_tx_power 
+0x326e 009684 add regc ,offset_tx_power_temp ,contw 
+0x326f 009685 branch g24_contw_istore_1byte 
+:      009687 g24_fetch_mem_power_ctrl_pac:
+0x3270 009688 add regc ,offset_power_ctrl_packet_cnt ,rega 
+0x3271 009689 branch g24_rega_ifetch_1byte 
+:      009691 g24_store_mem_power_ctrl_level:
+0x3272 009692 add regc ,offset_power_ctrl_level ,contw 
+0x3273 009693 branch g24_contw_istore_1byte 
+:      009695 g24_fetcht_mem_rxdata_temp:
+0x3274 009696 setarg offset_24g_rxdata_temp 
+:      009697 g24_set_rega_ifetcht_1byte:
+0x3275 009698 iadd regc ,rega 
+0x3276 009699 ifetcht 1 ,rega 
+0x3277 009700 rtn 
+:      009702 g24_fetch_mem_rf_laststa:
+0x3278 009703 setarg offset_24g_rf_laststa 
+0x3279 009704 branch g24_set_rega_ifetch_1byte 
+:      009705 g24_set0_mem_rf_laststa:
+0x327a 009706 setarg 0 
+:      009707 g24_store_mem_rf_laststa:
+0x327b 009708 arg offset_24g_rf_laststa ,rega 
+0x327c 009709 branch g24_set_contw_with_regb_store_1byte 
+:      009711 g24_fetch_mem_rx_addr:
+0x327d 009712 setarg offset_24g_rx_addr 
+:      009713 g24_set_rega_ifetch_4byte:
+0x327e 009714 call g24_set_rega 
+:      009715 g24_rega_ifetch_4byte:
+0x327f 009716 ifetch 4 ,rega 
+0x3280 009717 rtn 
+:      009719 g24_fetch_mem_time_slice:
+0x3281 009720 setarg offset_24g_time_slice 
+0x3282 009721 branch g24_set_rega_ifetch_1byte 
+:      009722 g24_set0_mem_time_slice:
+0x3283 009723 setarg 0 
+:      009724 g24_store_mem_time_slice:
+0x3284 009725 arg offset_24g_time_slice ,rega 
+0x3285 009726 branch g24_set_contw_with_regb_store_1byte 
+:      009728 g24_set0_mem_mode_switch:
+0x3286 009729 setarg 0 
+:      009730 g24_store_mem_mode_switch:
+0x3287 009731 arg offset_24g_mode_switch ,rega 
+0x3288 009732 branch g24_set_contw_with_regb_store_1byte 
+:      009734 g24_store_mem_bind_payload:
+0x3289 009735 arg offset_24g_bind_payload ,rega 
+0x328a 009736 branch g24_set_contw_with_regb_store_1byte 
+:      009738 g24_fetch_mem_bind_device_status:
+0x328b 009739 setarg offset_dongle_bind_device_status 
+0x328c 009740 branch g24_set_rega_ifetch_1byte 
+:      009741 g24_store_mem_bind_device_status:
+0x328d 009742 arg offset_dongle_bind_device_status ,rega 
+0x328e 009743 branch g24_set_contw_with_regb_store_1byte 
+:      009745 g24_fetch_mem_dongle_work_mode:
+0x328f 009746 setarg offset_dongle_work_mode 
+0x3290 009747 branch g24_set_rega_ifetch_1byte 
+:      009748 g24_set_work_mem_dongle_work_mode:
+0x3291 009749 setarg dongle_work 
+:      009750 g24_store_mem_dongle_work_mode:
+0x3292 009751 arg offset_dongle_work_mode ,rega 
+0x3293 009752 branch g24_set_contw_with_regb_store_1byte 
+:      009754 g24_fetch_mem_dongle_mode_init:
+0x3294 009755 setarg offset_dongle_mode_init 
+0x3295 009756 branch g24_set_rega_ifetch_1byte 
+:      009757 g24_set0_mem_dongle_mode_init:
+0x3296 009758 setarg clear_init 
+:      009759 g24_store_mem_dongle_mode_init:
+0x3297 009760 arg offset_dongle_mode_init ,rega 
+0x3298 009761 branch g24_set_contw_with_regb_store_1byte 
+:      009763 g24_set0_mem_ackpayload_enable:
+0x3299 009764 setarg 0 
+:      009765 g24_store_mem_ackpayload_enable:
+0x329a 009766 arg offset_24g_ackpayload_enable ,rega 
+0x329b 009767 branch g24_set_contw_with_regb_store_1byte 
+:      009768 g24_set1_mem_ackpayload_enable:
+0x329c 009769 setarg 1 
+0x329d 009770 branch g24_store_mem_ackpayload_enable 
+:      009772 g24_fetch_mem_rxdata_temp_add3_7byte:
+0x329e 009773 setarg offset_24g_rxdata_temp_add3 
+0x329f 009774 call g24_set_rega 
+0x32a0 009775 ifetch 7 ,rega 
+0x32a1 009776 rtn 
+:      009778 g24_fetch_mem_nodata_timer_enable:
+0x32a2 009779 setarg offset_24g_nodata_timer_enable 
+0x32a3 009780 branch g24_set_rega_ifetch_1byte 
+:      009781 g24_set0_mem_nodata_timer_enable:
+0x32a4 009782 setarg 0 
+:      009783 g24_store_mem_nodata_timer_enable:
+0x32a5 009784 arg offset_24g_nodata_timer_enable ,rega 
+0x32a6 009785 branch g24_set_contw_with_regb_store_1byte 
+:      009787 g24_set0_mem_ms_blank_data_enable:
+0x32a7 009788 setarg 0 
+:      009789 g24_store_mem_ms_blank_data_enable:
+0x32a8 009790 arg offset_24g_ms_blank_data_enable ,rega 
+0x32a9 009791 branch g24_set_contw_with_regb_store_1byte 
+:      009793 g24_set0_mem_kb_blank_data_enable:
+0x32aa 009794 setarg 0 
+:      009795 g24_store_mem_kb_blank_data_enable:
+0x32ab 009796 arg offset_24g_kb_blank_data_enable ,rega 
+0x32ac 009797 branch g24_set_contw_with_regb_store_1byte 
+:      009799 g24_set0_mem_kb_mul_blank_data_enable:
+0x32ad 009800 setarg 0 
+:      009801 g24_store_mem_kb_mul_blank_data_enable:
+0x32ae 009802 arg offset_24g_kb_mul_blank_data_enable ,rega 
+0x32af 009803 branch g24_set_contw_with_regb_store_1byte 
+:      009805 g24_store_mem_power_ctrl_threshold_up:
+0x32b0 009806 arg offset_power_ctrl_threshold_up ,rega 
+0x32b1 009807 branch g24_set_contw_with_regb_store_1byte 
+:      009809 g24_store_mem_power_ctrl_threshold_down:
+0x32b2 009810 arg offset_power_ctrl_threshold_down ,rega 
+:      009811 g24_set_contw_with_regb_store_1byte:
+0x32b3 009812 call g24_set_contw_with_regb 
+:      009813 g24_contw_istore_1byte:
+0x32b4 009814 istore 1 ,contw 
+0x32b5 009815 rtn 
+:      009817 g24_fetch_mem_pair_mode:
+0x32b6 009818 setarg offset_24g_pair_mode 
+0x32b7 009819 branch g24_set_rega_ifetch_1byte 
+:      009821 g24_store_mem_pair_mode:
+0x32b8 009822 arg offset_24g_pair_mode ,rega 
+0x32b9 009823 branch g24_set_contw_with_regb_store_1byte 
+:      009825 g24_store_mem_pair_txpower:
+0x32ba 009826 setarg offset_24g_pair_txpower 
+0x32bb 009827 call g24_set_rega_ifetch_1byte 
+0x32bc 009828 branch g24_store_mem_txpower 
+:      009830 g24_fetch_mem_rxdata_temp_add3_1byte:
+0x32bd 009831 setarg offset_24g_rxdata_temp_add3 
+0x32be 009832 branch g24_set_rega_ifetch_1byte 
+:      009834 g24_set_contw_with_temp:
+0x32bf 009835 copy pdata ,temp 
+0x32c0 009836 copy rega ,pdata 
+0x32c1 009837 iadd regc ,contw 
+0x32c2 009838 copy temp ,pdata 
+0x32c3 009839 rtn 
+:      009841 g24_set_contw_with_temp_store_3byte:
+0x32c4 009842 call g24_set_contw_with_temp 
+:      009843 g24_contw_istore_3byte:
+0x32c5 009844 istore 3 ,contw 
+0x32c6 009845 rtn 
+:      009847 g24_set_contw_with_regb:
+0x32c7 009848 call g24_head_ptr2regc 
+:      009849 g24_set_contw_with_regb2:
+0x32c8 009850 copy pdata ,regb 
+0x32c9 009851 copy rega ,pdata 
+0x32ca 009852 iadd regc ,contw 
+0x32cb 009853 copy regb ,pdata 
+0x32cc 009854 rtn 
+:      009856 g24_set_rega:
+0x32cd 009857 call g24_head_ptr2regc 
+0x32ce 009858 iadd regc ,rega 
+0x32cf 009859 rtn 
+:      009861 g24_set_rega_ifetch_1byte:
+0x32d0 009862 call g24_set_rega 
+:      009863 g24_rega_ifetch_1byte:
+0x32d1 009864 ifetch 1 ,rega 
+0x32d2 009865 rtn 
+:      009867 g24_set_rega_ifetcht_4byte:
+0x32d3 009868 call g24_set_rega 
+0x32d4 009869 ifetcht 4 ,rega 
+0x32d5 009870 rtn 
+:      009872 g24_mem_set0:
+0x32d6 009873 setarg 0 
+0x32d7 009874 branch g24_contw_istore_1byte 
+:      009878 app_init:
+0x32d8 009879 bpatch patch18_4 ,mem_patch18 
+0x32d9 009880 fetch 1 ,mem_device_option 
+0x32da 009881 branch app_init ,blank 
+0x32db 009883 beq dvc_op_dongle ,dongle_init 
+0x32dc 009884 beq dvc_op_antilost ,antilost_init 
+0x32dd 009885 beq dvc_op_shutter ,shutter_init 
+0x32de 009886 beq dvc_op_module ,module_init 
+0x32df 009887 beq dvc_op_car ,car_init 
+0x32e0 009888 beq dvc_op_remote_car ,remote_car_init 
+0x32e1 009889 bbit1 dvc_op_mouse ,mouse_init 
+0x32e2 009890 rtn 
+:      009892 app_lpm_init:
+0x32e3 009893 bpatch patch18_5 ,mem_patch18 
+0x32e4 009894 jam 0 ,mem_tester_emulate 
+0x32e5 009895 jam 0 ,mem_debug_config 
+0x32e6 009896 jam 0 ,mem_lch_code 
+0x32e7 009897 setarg 0 
+0x32e8 009898 store 5 ,mem_sp_state_start 
+0x32e9 009899 fetch 1 ,mem_device_option 
+0x32ea 009900 branch app_lpm_init ,blank 
+0x32eb 009901 beq dvc_op_module ,module_lpm_init 
+:      009902 app_lpm_init0:
+0x32ec 009903 rtn 
+:      009906 app_process_idle:
+0x32ed 009907 call ui_dispatch 
+0x32ee 009908 call check_51cmd 
+0x32ef 009909 call app_process_bb_event 
+0x32f0 009910 fetch 2 ,mem_cb_idle_process 
+0x32f1 009911 branch callback_func 
+:      009913 app_process_bt:
+0x32f2 009914 fetch 2 ,mem_cb_bt_process 
+0x32f3 009915 branch callback_func 
+:      009917 app_process_ble:
+0x32f4 009918 fetch 2 ,mem_cb_le_process 
+0x32f5 009919 branch callback_func 
+:      009921 app_process_bb_event:
+0x32f6 009922 bpatch patch18_6 ,mem_patch18 
+0x32f7 009924 arg mem_ipc_fifo_bt2c51 ,rega 
+0x32f8 009925 call fifo_out 
+0x32f9 009926 rtn blank 
+0x32fa 009928 copy pdata ,regc 
+0x32fb 009929 call app_event_normal_process 
+0x32fc 009930 branch app_process_bb_event_priority 
+:      009932 app_discard_event:
+0x32fd 009933 arg 0 ,regc 
+0x32fe 009934 rtn 
+:      009939 app_event_normal_process:
+0x32ff 009940 beq bt_evt_bb_connected ,app_evt_bt_conn 
+0x3300 009941 beq bt_evt_button_long_pressed ,app_evt_button_long_pressed 
+0x3301 009942 beq bt_evt_setup_complete ,app_evt_setup_complete 
+0x3302 009943 beq bt_evt_hid_handshake ,app_evt_hid_handshake 
+0x3303 009944 beq bt_evt_hid_connected ,app_bb_event_hid_connected 
+0x3304 009945 beq bt_evt_reconn_failed ,app_bb_event_reconn_failed 
+0x3305 009946 beq bt_evt_bb_disconnected ,app_bb_event_bb_disconn 
+0x3306 009947 beq bt_evt_reconn_page_timeout ,app_bb_event_reconn_failed 
+0x3307 009948 beq bt_evt_le_connected ,app_le_event_bb_connected 
+0x3308 009949 beq bt_evt_le_disconnected ,app_le_event_bb_disconn 
+0x3309 009950 beq bt_evt_reconn_started ,app_event_reconn_start 
+0x330a 009951 beq bt_evt_enter_sniff ,app_event_enter_sniff 
+0x330b 009952 beq bt_evt_exit_sniff ,app_event_exit_sniff 
+0x330c 009954 beq bt_evt_ml2cap_conn_refused ,app_event_ml2cap_conn_refused 
+0x330d 009955 beq bt_evt_linkkey_generate ,app_event_linkkey_generate 
+0x330e 009956 beq bt_evt_switch_fail_master ,app_event_switch_fail_master 
+0x330f 009957 beq bt_evt_switch_success_master ,app_event_switch_success 
+0x3310 009958 rtn 
+:      009961 app_evt_bt_conn:
+0x3311 009962 fetch 2 ,mem_ui_state_map 
+0x3312 009963 set1 ui_state_bt_connected ,pdata 
+0x3313 009964 store 2 ,mem_ui_state_map 
+0x3314 009965 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3315 009966 set0 app_disc_by_button ,pdata 
+0x3316 009967 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3317 009968 rtn 
+:      009970 app_event_switch_success:
+0x3318 009971 jam 0 ,mem_switch_fail_master_count 
+0x3319 009972 rtn 
+:      009974 app_event_switch_fail_master:
+0x331a 009975 fetch 1 ,mem_switch_fail_master_count 
+0x331b 009976 increase 1 ,pdata 
+0x331c 009977 store 1 ,mem_switch_fail_master_count 
+0x331d 009978 sub pdata ,1 ,null 
+0x331e 009979 branch app_bt_role_switch ,positive 
+0x331f 009980 jam 0 ,mem_switch_fail_master_count 
+0x3320 009981 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3321 009982 set1 app_disc_switch_fail ,pdata 
+0x3322 009983 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3323 009984 branch app_bt_disconnect 
+:      009986 app_process_bb_event_priority:
+0x3324 009987 fetch 2 ,mem_cb_bb_event_process 
+0x3325 009988 branch callback_func 
+:      009990 app_check_wake_lock:
+0x3326 009991 fetch 2 ,mem_cb_check_wakelock 
+0x3327 009992 branch callback_func 
+:      009994 app_will_enter_lpm:
+0x3328 009995 fetch 2 ,mem_cb_before_lpm 
+0x3329 009996 branch callback_func 
+:      009998 app_event_linkkey_generate:
+0x332a 009999 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x332b 010000 set1 app_disc_after_pairing ,pdata 
+0x332c 010001 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x332d 010002 branch app_bt_store_reconn_info 
+:      010004 app_event_reconn_start:
+0x332e 010005 fetch 2 ,mem_ui_state_map 
+0x332f 010006 set1 ui_state_bt_reconnect ,pdata 
+0x3330 010007 store 2 ,mem_ui_state_map 
+0x3331 010008 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3332 010009 set1 app_disc_after_reconn ,pdata 
+0x3333 010010 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3334 010011 rtn 
+:      010013 app_evt_setup_complete:
+0x3335 010014 fetch 2 ,mem_ui_state_map 
+0x3336 010015 set1 ui_state_bt_setup_complete ,pdata 
+0x3337 010016 store 2 ,mem_ui_state_map 
+0x3338 010017 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3339 010018 set1 app_disc_after_setup_done ,pdata 
+0x333a 010019 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x333b 010020 rtn 
+:      010022 app_evt_hid_handshake:
+0x333c 010023 fetch 2 ,mem_ui_state_map 
+0x333d 010024 set1 ui_state_bt_hid_handshake ,pdata 
+0x333e 010025 store 2 ,mem_ui_state_map 
+0x333f 010026 rtn 
+:      010028 app_event_enter_sniff:
+0x3340 010029 fetch 2 ,mem_ui_state_map 
+0x3341 010030 set1 ui_state_bt_sniff ,pdata 
+0x3342 010031 store 2 ,mem_ui_state_map 
+0x3343 010032 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3344 010033 set1 app_disc_after_sniff ,pdata 
+0x3345 010034 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3346 010035 rtn 
+:      010037 app_event_exit_sniff:
+0x3347 010038 fetch 2 ,mem_ui_state_map 
+0x3348 010039 set0 ui_state_bt_sniff ,pdata 
+0x3349 010040 store 2 ,mem_ui_state_map 
+0x334a 010041 rtn 
+:      010043 app_le_event_bb_connected:
+0x334b 010044 fetch 2 ,mem_ui_state_map 
+0x334c 010045 set1 ui_state_ble_connected ,pdata 
+0x334d 010046 store 2 ,mem_ui_state_map 
+0x334e 010047 rtn 
+:      010049 app_le_event_bb_disconn:
+0x334f 010050 fetch 2 ,mem_ui_state_map 
+0x3350 010051 set0 ui_state_ble_connected ,pdata 
+0x3351 010052 store 2 ,mem_ui_state_map 
+0x3352 010053 branch app_lpm_mult_disable 
+:      010055 app_bb_event_hid_connected:
+0x3353 010056 fetch 2 ,mem_ui_state_map 
+0x3354 010057 set1 ui_state_bt_hid_conn ,pdata 
+0x3355 010058 store 2 ,mem_ui_state_map 
+0x3356 010059 rtn 
+:      010061 app_evt_button_long_pressed:
+0x3357 010062 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3358 010063 set1 app_disc_by_button ,pdata 
+0x3359 010064 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x335a 010065 rtn 
+:      010067 app_event_ml2cap_conn_refused:
+0x335b 010068 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x335c 010069 set1 app_disc_l2cap_refused ,pdata 
+0x335d 010070 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x335e 010071 branch app_bt_disconnect 
+:      010074 app_evt_timer:
+0x335f 010075 bpatch patch18_7 ,mem_patch18 
+0x3360 010076 store 1 ,mem_app_evt_timer_count 
+:      010077 app_evt_100ms_loop:
+0x3361 010078 fetch 1 ,mem_app_evt_timer_count 
+0x3362 010079 rtn blank 
+0x3363 010080 increase -1 ,pdata 
+0x3364 010081 store 1 ,mem_app_evt_timer_count 
+0x3365 010082 call ui_button_polling 
+0x3366 010083 call app_lpm_wake_auto_lock_timer 
+0x3367 010084 call app_unsniff_delay_timer 
+0x3368 010085 call app_discovery_timer 
+0x3369 010086 call flash_write_spi_sm_timer 
+0x336a 010087 fetch 2 ,mem_cb_event_timer 
+0x336b 010088 call callback_func 
+0x336c 010089 branch app_evt_100ms_loop 
+:      010094 timer_single_step:
+0x336d 010095 ifetch 1 ,regc 
+0x336e 010096 rtn blank 
+0x336f 010097 pincrease -1 
+0x3370 010098 istore 1 ,regc 
+0x3371 010099 nrtn blank 
+0x3372 010100 copy regb ,pdata 
+0x3373 010101 branch callback_func 
+:      010105 timer_single_step_2b:
+0x3374 010106 ifetch 2 ,regc 
+0x3375 010107 rtn blank 
+0x3376 010108 pincrease -1 
+0x3377 010109 istore 2 ,regc 
+0x3378 010110 nrtn blank 
+0x3379 010111 copy regb ,pdata 
+0x337a 010112 branch callback_func 
+:      010114 app_power_timer:
+0x337b 010115 fetcht 2 ,mem_power_param_ptr 
+0x337c 010116 add temp ,power_timer_offset ,regc 
+0x337d 010117 arg app_power_timer_timeout ,regb 
+0x337e 010118 branch timer_single_step 
+:      010120 app_power_timer_timeout:
+0x337f 010121 call app_got_power_state_common 
+0x3380 010122 beq power_starting ,app_enter_power_stanby_state 
+:      010123 app_enter_power_off_state:
+0x3381 010124 branch app_enter_hibernate 
+:      010125 app_enter_power_stanby_state:
+0x3382 010126 setarg power_standby 
+0x3383 010127 istore 1 ,regc 
+0x3384 010128 add temp ,power_standby_cb_offset ,regb 
+:      010129 app_power_cb_common:
+0x3385 010130 ifetch 2 ,regb 
+0x3386 010131 branch callback_func 
+:      010133 app_unsniff_delay_timer:
+0x3387 010134 arg mem_unsniff2sniff_timer_count ,regc 
+0x3388 010135 arg app_unsniff_delay_timeout ,regb 
+0x3389 010136 branch timer_single_step 
+:      010138 app_unsniff_delay_timeout:
+0x338a 010139 call context_check_idle 
+0x338b 010140 branch app_bt_enter_sniff ,zero 
+0x338c 010141 rtn 
+:      010144 app_discovery_timer:
+0x338d 010145 arg mem_discovery_timeout_timer_count ,regc 
+0x338e 010146 arg app_discovery_timeout ,regb 
+0x338f 010147 branch timer_single_step_2b 
+:      010149 app_discovery_timeout:
+0x3390 010150 call app_bt_stop_discovery 
+0x3391 010151 call app_led_off 
+0x3392 010152 fetch 2 ,mem_cb_discovry_timeout 
+0x3393 010153 branch callback_func 
+:      010156 app_bb_event_reconn_failed:
+0x3394 010157 call app_disconn_reason_flag_clear 
+:      010158 app_clear_reconnect_flag:
+0x3395 010159 fetch 2 ,mem_ui_state_map 
+0x3396 010160 set0 ui_state_bt_reconnect ,pdata 
+0x3397 010161 store 2 ,mem_ui_state_map 
+0x3398 010162 rtn 
+:      010164 app_bb_event_bb_disconn:
+0x3399 010165 jam 0 ,mem_unsniff2sniff_timer_count 
+0x339a 010166 fetch 2 ,mem_ui_state_map 
+0x339b 010167 bbit1 ui_state_bt_reconnect ,app_bb_event_bb_reconn_disconn 
+0x339c 010168 isolate0 ui_state_bt_setup_complete ,pdata 
+0x339d 010169 call app_discard_event ,true 
+:      010170 app_bb_event_bb_reconn_disconn:
+0x339e 010171 bpatch patch19_0 ,mem_patch19 
+0x339f 010172 fetch 2 ,mem_ui_state_map 
+0x33a0 010173 set0 ui_state_bt_connected ,pdata 
+0x33a1 010174 set0 ui_state_bt_setup_complete ,pdata 
+0x33a2 010175 set0 ui_state_bt_hid_conn ,pdata 
+0x33a3 010176 set0 ui_state_bt_hid_handshake ,pdata 
+0x33a4 010177 set0 ui_state_bt_reconnect ,pdata 
+0x33a5 010178 store 2 ,mem_ui_state_map 
+0x33a6 010179 branch app_lpm_mult_disable 
+:      010181 app_bb_hibernate:
+0x33a7 010182 call app_disconn_reason_clear 
+0x33a8 010183 branch app_enter_hibernate 
+:      010186 app_disconn_reason_clear:
+0x33a9 010187 setarg 0 
+0x33aa 010188 store app_disc_rsn_size ,mem_app_disconn_reason 
+0x33ab 010189 rtn 
+:      010190 app_disconn_reason_flag_clear:
+0x33ac 010191 setarg 0 
+0x33ad 010192 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33ae 010193 rtn 
+:      010195 app_disconn_reason_collect_bt:
+0x33af 010196 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b0 010197 store app_disc_rsn_size ,mem_app_disconn_reason 
+0x33b1 010198 setarg 0 
+0x33b2 010199 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b3 010200 rtn 
+:      010202 app_disconn_reason_collect_ble:
+0x33b4 010203 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b5 010204 set1 app_disc_ble ,pdata 
+0x33b6 010205 store app_disc_rsn_size ,mem_app_disconn_reason 
+0x33b7 010206 setarg 0 
+0x33b8 010207 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b9 010208 rtn 
+:      010216 app_check_sniff:
+0x33ba 010217 fetch 1 ,mem_ui_state_map 
+0x33bb 010218 isolate1 ui_state_bt_sniff ,pdata 
+0x33bc 010219 rtn 
+:      010227 app_initflag_store:
+0x33bd 010228 setarg eeprom_init_flag 
+:      010229 app_flag_store:
+0x33be 010230 store 2 ,mem_timeup 
+0x33bf 010231 bpatch patch19_1 ,mem_patch19 
+0x33c0 010232 arg 2 ,temp 
+0x33c1 010233 arg mem_timeup ,rega 
+0x33c2 010234 arg eeprom_module_init_flag ,regb 
+0x33c3 010235 branch iicd_write_eep_data 
+:      010238 app_initflag_check:
+0x33c4 010239 bpatch patch19_2 ,mem_patch19 
+0x33c5 010240 arg 2 ,temp 
+0x33c6 010241 arg mem_pdatatemp ,rega 
+0x33c7 010242 arg eeprom_module_init_flag ,regb 
+0x33c8 010243 call iicd_read_eep_data 
+0x33c9 010244 fetch 2 ,mem_pdatatemp 
+0x33ca 010245 arg eeprom_init_flag ,temp 
+0x33cb 010246 isub temp ,null 
+0x33cc 010247 rtn 
+:      010250 app_start_auto_sniff:
+0x33cd 010251 fetch 1 ,mem_unsniff2sniff_timer 
+0x33ce 010252 store 1 ,mem_unsniff2sniff_timer_count 
+0x33cf 010253 rtn 
+:      010255 app_get_lpm_wake_lock:
+0x33d0 010256 arg wake_lock_app ,queue 
+0x33d1 010257 branch lpm_get_wake_lock 
+:      010259 app_put_lpm_wake_lock:
+0x33d2 010260 arg wake_lock_app ,queue 
+0x33d3 010261 branch lpm_put_wake_lock 
+:      010263 app_lpm_wake_auto_lock:
+0x33d4 010264 jam lpm_wake_up_delay_timer ,mem_wake_up_delay_timer 
+0x33d5 010265 branch app_get_lpm_wake_lock 
+:      010267 app_lpm_wake_auto_lock_timer:
+0x33d6 010268 arg mem_wake_up_delay_timer ,regc 
+0x33d7 010269 arg app_put_lpm_wake_lock ,regb 
+0x33d8 010270 branch timer_single_step 
+:      010272 app_l2cap_flow_control_enable:
+0x33d9 010273 jam l2cap_flow_ctrl_enable ,mem_l2cap_flow_ctrl_flag 
+0x33da 010274 rtn 
+:      010276 app_l2cap_flow_control_disable:
+0x33db 010277 jam l2cap_flow_ctrl_disable ,mem_l2cap_flow_ctrl_flag 
+0x33dc 010278 rtn 
+:      010280 app_bt_set_pincode:
+0x33dd 010281 jam bt_cmd_set_pin_code ,mem_fifo_temp 
+0x33de 010282 branch ui_ipc_send_cmd 
+:      010284 app_bt_role_switch:
+0x33df 010285 jam bt_cmd_role_switch ,mem_fifo_temp 
+0x33e0 010286 branch ui_ipc_send_cmd 
+:      010288 app_bt_start_reconnect:
+0x33e1 010289 bpatch patch19_3 ,mem_patch19 
+0x33e2 010290 fetch 1 ,mem_app_connection_options 
+0x33e3 010291 store 1 ,mem_connection_options 
+0x33e4 010292 jam app_flag_reconnect ,mem_reconnect_flag 
+0x33e5 010293 jam bt_cmd_reconnect ,mem_fifo_temp 
+0x33e6 010294 branch ui_ipc_send_cmd 
+:      010296 app_bt_reconnect_cancel:
+0x33e7 010297 jam bt_cmd_bb_reconn_cancel ,mem_fifo_temp 
+0x33e8 010298 branch ui_ipc_send_cmd 
+:      010300 app_bt_disconnect:
+0x33e9 010301 jam bt_cmd_disconnect ,mem_fifo_temp 
+0x33ea 010302 branch ui_ipc_send_cmd 
+:      010304 app_bt_start_discovery_short:
+0x33eb 010305 fetch 2 ,mem_discovery_timeout 
+0x33ec 010306 store 2 ,mem_discovery_timeout_timer_count 
+:      010307 app_bt_start_discovery_led_blink:
+0x33ed 010308 call app_led_start_blink 
+:      010309 app_bt_start_discovery:
+0x33ee 010310 jam bt_cmd_start_discovery ,mem_fifo_temp 
+0x33ef 010311 branch ui_ipc_send_cmd 
+:      010313 app_bt_stop_discovery:
+0x33f0 010314 setarg 0 
+0x33f1 010315 store 2 ,mem_discovery_timeout_timer_count 
+0x33f2 010316 jam bt_cmd_stop_discovery ,mem_fifo_temp 
+0x33f3 010317 branch ui_ipc_send_cmd 
+:      010319 app_ble_start_direct_adv:
+0x33f4 010320 jam bt_cmd_start_direct_adv ,mem_fifo_temp 
+0x33f5 010321 branch ui_ipc_send_cmd 
+:      010323 app_ble_stop_direct_adv:
+0x33f6 010324 jam bt_cmd_stop_direct_adv ,mem_fifo_temp 
+0x33f7 010325 branch ui_ipc_send_cmd 
+:      010327 app_ble_stop_adv:
+0x33f8 010328 jam bt_cmd_stop_adv ,mem_fifo_temp 
+0x33f9 010329 branch ui_ipc_send_cmd 
+:      010331 app_ble_start_adv:
+0x33fa 010332 jam bt_cmd_start_adv ,mem_fifo_temp 
+0x33fb 010333 branch ui_ipc_send_cmd 
+:      010335 app_ble_start_scan:
+0x33fc 010336 jam bt_cmd_le_start_scan ,mem_fifo_temp 
+0x33fd 010337 branch ui_ipc_send_cmd 
+:      010339 app_ble_stop_scan:
+0x33fe 010340 jam bt_cmd_le_stop_scan ,mem_fifo_temp 
+0x33ff 010341 branch ui_ipc_send_cmd 
+:      010343 app_ble_start_conn:
+0x3400 010344 jam bt_cmd_le_start_conn ,mem_fifo_temp 
+0x3401 010345 branch ui_ipc_send_cmd 
+:      010347 app_ble_disconnect:
+0x3402 010348 jam bt_cmd_le_disconnect ,mem_fifo_temp 
+0x3403 010349 branch ui_ipc_send_cmd 
+:      010351 app_led_start_blink:
+0x3404 010352 jam bt_cmd_led_blink ,mem_fifo_temp 
+0x3405 010353 branch ui_ipc_send_cmd 
+:      010355 app_led_on:
+0x3406 010356 jam bt_cmd_led_on ,mem_fifo_temp 
+0x3407 010357 branch ui_ipc_send_cmd 
+:      010359 app_led_stop_blink:
+:      010360 app_led_off:
+0x3408 010361 jam bt_cmd_led_off ,mem_fifo_temp 
+0x3409 010362 branch ui_ipc_send_cmd 
+:      010364 app_enter_hibernate:
+0x340a 010365 jam bt_cmd_enter_hibernate ,mem_fifo_temp 
+0x340b 010366 branch ui_ipc_send_cmd 
+:      010368 app_bt_sniff_exit:
+0x340c 010369 jam bt_cmd_exit_sniff ,mem_fifo_temp 
+0x340d 010370 branch ui_ipc_send_cmd 
+:      010372 app_bt_enter_sniff:
+0x340e 010373 jam bt_cmd_enter_sniff ,mem_fifo_temp 
+0x340f 010374 branch ui_ipc_send_cmd 
+:      010376 app_ble_store_reconn_info:
+0x3410 010377 jam bt_cmd_store_reconn_info_le ,mem_fifo_temp 
+0x3411 010378 branch ui_ipc_send_cmd 
+:      010380 app_bt_store_reconn_info:
+0x3412 010381 jam bt_cmd_store_reconn_info_bt ,mem_fifo_temp 
+0x3413 010382 branch ui_ipc_send_cmd 
+:      010384 app_store_reconn_info:
+0x3414 010385 jam bt_cmd_store_reconn_info ,mem_fifo_temp 
+0x3415 010386 branch ui_ipc_send_cmd 
+:      010388 app_lpm_mult_enable:
+0x3416 010389 set1 mark_lpm_mult_enable ,mark 
+0x3417 010390 rtn 
+:      010392 app_lpm_mult_disable:
+0x3418 010393 set0 mark_lpm_mult_enable ,mark 
+0x3419 010394 rtn 
+:      010414 app_button_long_pressed:
+0x341a 010415 call app_got_power_state_common 
+0x341b 010416 beq power_standby ,app_power_shutting_down 
+:      010417 app_power_starting:
+0x341c 010418 setarg power_starting 
+0x341d 010419 istore 1 ,regc 
+0x341e 010420 add temp ,power_starting_timeout_offset ,rega 
+0x341f 010421 add temp ,power_starting_cb_offset ,regb 
+:      010422 app_power_common:
+0x3420 010423 ifetcht 1 ,rega 
+0x3421 010424 increase 1 ,regc 
+0x3422 010425 istoret 1 ,regc 
+0x3423 010426 branch app_power_cb_common 
+:      010428 app_power_shutting_down:
+0x3424 010429 setarg power_off 
+0x3425 010430 istore 1 ,regc 
+0x3426 010431 fetch 2 ,mem_ui_state_map 
+0x3427 010432 bbit0 ui_state_ble_connected ,app_power_off_end 
+0x3428 010433 call app_ble_disconnect 
+:      010434 app_power_off_end:
+0x3429 010435 fetcht 2 ,mem_power_param_ptr 
+0x342a 010436 add temp ,power_off_timeout_offset ,rega 
+0x342b 010437 add temp ,power_off_cb_offset ,regb 
+0x342c 010438 branch app_power_common 
+:      010440 app_got_power_state_common:
+0x342d 010441 fetcht 2 ,mem_power_param_ptr 
+0x342e 010442 add temp ,power_state_offset ,regc 
+0x342f 010443 ifetch 1 ,regc 
+0x3430 010444 rtn 
+:      010446 app_event_button_up:
+0x3431 010447 call app_got_power_state_common 
+0x3432 010448 bne power_off ,app_power_release 
+0x3433 010449 branch app_enter_hibernate 
+:      010450 app_power_release:
+0x3434 010451 add temp ,ui_butten_up_cb_offset ,regb 
+0x3435 010452 branch app_power_cb_common 
+:      010454 antilost_init:
+0x3436 010455 rtn wake 
+0x3437 010456 jam 0x00 ,core_gpio_sel1 
+0x3438 010457 setarg antilost_le_before_hibernate 
+0x3439 010458 store 2 ,mem_cb_before_hibernate 
+0x343a 010459 setarg keyscan_process_lpm_before 
+0x343b 010460 store 2 ,mem_cb_before_lpm 
+0x343c 010461 setarg antilost_idle_process 
+0x343d 010462 store 2 ,mem_cb_idle_process 
+0x343e 010463 setarg antilost_le_conn_process 
+0x343f 010464 store 2 ,mem_cb_le_process 
+0x3440 010465 setarg antilost_bb_event_process 
+0x3441 010466 store 2 ,mem_cb_bb_event_process 
+0x3442 010467 setarg antilost_le_bb_event_timer 
+0x3443 010468 store 2 ,mem_cb_event_timer 
+0x3444 010469 setarg antilost_le_notification 
+0x3445 010470 store 2 ,mem_cb_ble_transmit 
+0x3446 010471 setarg antilost_lpm_lock_process 
+0x3447 010472 store 2 ,mem_cb_check_wakelock 
+0x3448 010473 setarg antilost_le_receive_data_process 
+0x3449 010474 store 2 ,mem_cb_att_write 
+0x344a 010475 bpatch patch19_4 ,mem_patch19 
+0x344b 010476 call antilost_buzzer_pwm_init 
+0x344c 010477 call keyscan_key_init 
+0x344d 010478 call antilost_adc_init 
+0x344e 010479 call ui_led_init_global 
+0x344f 010480 call ui_button_init 
+0x3450 010481 setarg antilost_key_up_down 
+0x3451 010482 store 2 ,mem_cb_antl_key 
+0x3452 010483 setarg antilost_power_off_cb 
+0x3453 010484 store 2 ,mem_antl_power_off_cb 
+0x3454 010485 setarg antilost_power_starting_cb 
+0x3455 010486 store 2 ,mem_antl_power_starting_cb 
+0x3456 010487 setarg antilost_power_standby_cb 
+0x3457 010488 store 2 ,mem_antl_power_standby_cb 
+0x3458 010489 setarg antilost_led_on_cb 
+0x3459 010490 store 2 ,mem_antl_led_cb_on 
+0x345a 010491 setarg antilost_led_off_cb 
+0x345b 010492 store 2 ,mem_antl_led_cb_off 
+0x345c 010493 setarg antilost_buzzer_on 
+0x345d 010494 store 2 ,mem_antl_buzzer_cb_on 
+0x345e 010495 setarg antilost_buzzer_off 
+0x345f 010496 store 2 ,mem_antl_buzzer_cb_off 
+0x3460 010497 fetch 2 ,mem_ui_state_map 
+0x3461 010498 rtnbit1 ui_state_btn_down 
+0x3462 010499 branch app_enter_hibernate 
+:      010501 antilost_le_before_hibernate:
+0x3463 010502 call antilost_led_buzzer_stop_blink 
+0x3464 010503 branch app_enter_hibernate 
+:      010505 antilost_le_notification:
+0x3465 010506 call le_fifo_check_nearly_full 
+0x3466 010507 nrtn blank 
+0x3467 010508 arg mem_temp_block5 ,rega 
+0x3468 010509 call queue_pop 
+0x3469 010510 nrtn user 
+0x346a 010511 arg mem_temp_block5 ,contr 
+0x346b 010512 branch le_send_notify_from_list 
+:      010514 antilost_power_standby_cb:
+0x346c 010515 fetch 2 ,mem_antl_le_sleep_timeout 
+0x346d 010516 store 2 ,mem_antl_le_sleep_timer 
+0x346e 010517 jam 1 ,mem_antl_key_scan_enable 
+0x346f 010518 branch antilost_fast_adv_start 
+:      010520 antilost_lpm_lock_process:
+0x3470 010521 fetch 1 ,mem_antl_key_state 
+0x3471 010522 beq 1 ,antilost_lpm_ctrl_for_led_buzzer 
+0x3472 010523 fetch 2 ,mem_ui_state_map 
+0x3473 010524 bbit0 ui_state_ble_connected ,antilost_lpm_ctrl_for_led_buzzer 
+0x3474 010525 fetch 1 ,mem_antl_lost_mode 
+0x3475 010526 beq 1 ,app_get_lpm_wake_lock 
+0x3476 010527 fetch 1 ,mem_antl_queue_curr_num 
+0x3477 010528 nbranch app_get_lpm_wake_lock ,blank 
+0x3478 010529 branch app_put_lpm_wake_lock 
+:      010531 antilost_lpm_ctrl_for_led_buzzer:
+0x3479 010532 fetch 1 ,mem_antl_led_state 
+0x347a 010533 fetcht 1 ,mem_antl_buzzer_state 
+0x347b 010534 ior temp ,pdata 
+0x347c 010535 beq 1 ,app_get_lpm_wake_lock 
+0x347d 010536 branch app_put_lpm_wake_lock 
+:      010538 antilost_bb_event_process:
+0x347e 010539 copy regc ,pdata 
+0x347f 010540 beq bt_evt_button_up ,app_event_button_up 
+0x3480 010541 beq bt_evt_button_long_pressed ,app_button_long_pressed 
+0x3481 010542 beq bt_evt_le_connected ,antilost_le_process_conn 
+0x3482 010543 beq bt_evt_le_disconnected ,antilost_le_process_discon 
+0x3483 010544 beq bt_evt_le_parse_conn_papa_update_rsp ,antilost_le_conn_param_update_rsp_recieved 
+0x3484 010545 rtn 
+:      010546 antilost_le_conn_param_update_rsp_recieved:
+0x3485 010547 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x3486 010548 beq ble_signaling_connect_parameter_update_rejected ,antilost_le_conn_param_rejected 
+:      010549 antilost_le_conn_param_accepted:
+0x3487 010550 fetch 2 ,mem_le_new_connslavelatency 
+0x3488 010551 branch antilost_master_nonsupport_latency ,blank 
+:      010552 antilost_le_conn_param_updata_procedure_sucsess:
+0x3489 010553 jam conn_param_updata_procedure_complete ,mem_antl_conn_updata_procedure_state 
+0x348a 010554 jam 60 ,mem_antl_conn_update_timer 
+0x348b 010555 rtn 
+:      010557 antilost_le_conn_param_rejected:
+0x348c 010558 fetch 2 ,mem_le_latency 
+0x348d 010559 branch antilost_conn_param_updata_procedure_faild ,blank 
+:      010560 antilost_conn_param_retransimiting:
+0x348e 010561 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
+0x348f 010562 fetcht 2 ,mem_interval_increment 
+0x3490 010563 fetch 2 ,mem_le_interval_min 
+0x3491 010564 iadd temp ,pdata 
+0x3492 010565 store 2 ,mem_le_interval_min 
+0x3493 010566 copy pdata ,rega 
+0x3494 010567 fetch 2 ,mem_le_interval_max 
+0x3495 010568 iadd temp ,pdata 
+0x3496 010569 store 2 ,mem_le_interval_max 
+0x3497 010570 iadd rega ,pdata 
+0x3498 010571 rshift pdata ,temp 
+0x3499 010572 fetch 2 ,mem_antl_le_unnormal_interval_max 
+0x349a 010573 idiv temp 
+0x349b 010574 call wait_div_end 
+0x349c 010575 quotient pdata 
+0x349d 010576 store 2 ,mem_le_latency 
+0x349e 010577 jam 1 ,mem_antl_send_updata_le_param_timer 
+0x349f 010578 rtn 
+:      010579 antilost_conn_param_updata_procedure_faild:
+0x34a0 010580 jam conn_param_updata_procedure_faild ,mem_antl_conn_updata_procedure_state 
+0x34a1 010581 rtn 
+:      010583 antilost_master_nonsupport_latency:
+0x34a2 010584 jam 0 ,mem_lpm_mult 
+0x34a3 010585 jam 0 ,mem_antl_send_updata_le_param_timer 
+0x34a4 010586 fetch 2 ,mem_le_new_conninterval 
+0x34a5 010587 fetcht 2 ,mem_antl_le_unnormal_interval_min 
+0x34a6 010588 isub temp ,null 
+0x34a7 010589 setflag positive ,0 ,rega 
+0x34a8 010590 fetch 2 ,mem_antl_le_unnormal_interval_max 
+0x34a9 010591 fetcht 2 ,mem_le_new_conninterval 
+0x34aa 010592 isub temp ,pdata 
+0x34ab 010593 setflag positive ,1 ,rega 
+0x34ac 010594 compare 0x03 ,rega ,0x03 
+0x34ad 010595 rtn true 
+0x34ae 010596 fetch 8 ,mem_antl_le_unnormal_interval_min 
+0x34af 010597 store 8 ,mem_le_interval_min 
+0x34b0 010598 jam 1 ,mem_antl_send_updata_le_param_timer 
+0x34b1 010599 rtn 
+:      010602 antilost_le_bb_event_timer:
+0x34b2 010604 call app_power_timer 
+0x34b3 010605 call antilost_double_click_timer 
+0x34b4 010606 call antilost_le_fast_adv_timer 
+0x34b5 010607 call antilost_le_sleep_timer 
+0x34b6 010608 call antilost_app_updata_le_param_timer 
+0x34b7 010609 call antilost_conn_update_timer 
+0x34b8 010610 branch antilost_adc_check_timer 
+:      010613 antilost_double_click_timer:
+0x34b9 010614 arg mem_double_click_timer ,regc 
+0x34ba 010615 arg antilost_double_click_timeout ,regb 
+0x34bb 010616 branch timer_single_step 
+:      010617 antilost_double_click_timeout:
+0x34bc 010618 jam 0 ,mem_butten_click_cnt 
+0x34bd 010619 rtn 
+:      010620 antilost_le_fast_adv_timer:
+0x34be 010621 arg mem_antl_fast_adv_timer ,regc 
+0x34bf 010622 arg antilost_le_fast_adv_timeout ,regb 
+0x34c0 010623 branch timer_single_step_2b 
+:      010624 antilost_le_fast_adv_timeout:
+0x34c1 010625 arg mem_antl_slow_adv_led_style ,regc 
+0x34c2 010626 arg mem_antl_slow_adv_lpm_interval ,regb 
+0x34c3 010627 branch antilost_adv_start_common 
+:      010630 antilost_conn_update_timer:
+0x34c4 010631 arg mem_antl_conn_update_timer ,regc 
+0x34c5 010632 arg antilost_conn_update_timer_time_out ,regb 
+0x34c6 010633 branch timer_single_step 
+:      010635 antilost_conn_update_timer_time_out:
+0x34c7 010636 fetch 2 ,mem_le_latency 
+0x34c8 010637 store 1 ,mem_lpm_mult 
+0x34c9 010638 rtn 
+:      010639 antilost_app_updata_le_param_timer:
+0x34ca 010640 arg mem_antl_send_updata_le_param_timer ,regc 
+0x34cb 010641 arg antilost_app_updata_le_param_timeout ,regb 
+0x34cc 010642 branch timer_single_step 
+:      010643 antilost_app_updata_le_param_timeout:
+0x34cd 010644 fetch 1 ,mem_le_state 
+0x34ce 010645 compare 0 ,pdata ,0x60 
+0x34cf 010646 nbranch antilost_wait_for_updata_param_instant_expire ,true 
+0x34d0 010647 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
+0x34d1 010648 call app_lpm_mult_enable 
+0x34d2 010649 branch le_l2cap_tx_update_req 
+:      010650 antilost_wait_for_updata_param_instant_expire:
+0x34d3 010651 jam 1 ,mem_antl_send_updata_le_param_timer 
+0x34d4 010652 rtn 
+:      010654 antilost_le_sleep_timer:
+0x34d5 010655 arg mem_antl_le_sleep_timer ,regc 
+0x34d6 010656 arg antilost_le_sleep_timer_timeout ,regb 
+0x34d7 010657 branch timer_single_step_2b 
+:      010660 antilost_le_sleep_timer_timeout:
+0x34d8 010661 branch app_button_long_pressed 
+:      010663 antilost_adc_check_timer:
+0x34d9 010666 arg mem_adc_timer ,regc 
+0x34da 010667 arg antilost_adc_check_timer_timeout ,regb 
+0x34db 010668 branch timer_single_step_2b 
+:      010669 antilost_adc_check_timer_timeout:
+0x34dc 010670 fetch 2 ,mem_adc_timeout 
+0x34dd 010671 store 2 ,mem_adc_timer 
+0x34de 010672 branch antilost_battery_process 
+:      010675 antilost_le_process_conn:
+0x34df 010676 fetch 2 ,mem_adc_timeout 
+0x34e0 010677 store 2 ,mem_adc_timer 
+0x34e1 010678 setarg 0 
+0x34e2 010679 store 2 ,mem_antl_fast_adv_timer 
+0x34e3 010680 store 2 ,mem_antl_le_sleep_timer 
+0x34e4 010681 call antilost_alert_off 
+0x34e5 010682 call antilost_led_buzzer_stop_blink 
+0x34e6 010683 jam 0 ,mem_lpm_mult 
+0x34e7 010684 branch app_ble_stop_adv 
+:      010687 antilost_le_process_discon:
+0x34e8 010690 setarg 0 
+0x34e9 010691 store 4 ,mem_adc_timer 
+0x34ea 010692 store 3 ,mem_antl_conn_updata_procedure_state 
+0x34eb 010693 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x34ec 010695 jam 1 ,mem_alarm_config_notfy_cnt 
+0x34ed 010696 fetch 2 ,mem_antl_le_sleep_timeout 
+0x34ee 010697 store 2 ,mem_antl_le_sleep_timer 
+0x34ef 010698 call queue_init 
+0x34f0 010699 fetch 1 ,mem_antl_power_state 
+0x34f1 010700 rtneq power_off 
+0x34f2 010701 call antilost_fast_adv_start 
+0x34f3 010702 branch antilost_on_off_alarm_after_disconn 
+:      010705 antilost_le_conn_process:
+0x34f4 010707 branch antilost_key_process 
+:      010709 antilost_idle_process:
+0x34f5 010711 fetch 1 ,mem_antl_power_state 
+0x34f6 010712 rtnne power_standby 
+0x34f7 010713 branch antilost_key_process 
+:      010718 antilost_power_starting_cb:
+0x34f8 010719 arg mem_antl_power_starting_buzzer_style ,regc 
+0x34f9 010720 call antilost_buzzer_configuration 
+0x34fa 010721 arg mem_antl_power_starting_led_style ,regc 
+:      010722 antilost_power_common:
+0x34fb 010723 branch antilost_led_configuration 
+:      010725 antilost_power_off_cb:
+0x34fc 010726 jam off ,mem_le_adv_enable 
+0x34fd 010727 arg mem_antl_power_off_buzzer_style ,regc 
+0x34fe 010728 call antilost_buzzer_configuration 
+0x34ff 010729 arg mem_antl_power_off_led_style ,regc 
+0x3500 010730 branch antilost_power_common 
+:      010732 antilost_le_receive_data_process:
+0x3501 010733 fetch 1 ,mem_le_att_opcode 
+0x3502 010734 beq attop_write_request ,antilost_le_parse_att_write_request 
+0x3503 010735 rtn 
+:      010736 antilost_le_parse_att_write_request:
+0x3504 010737 fetch 2 ,mem_le_att_handle 
+0x3505 010739 beq new_spec_write_handle ,antilost_cmd_parse_for_application 
+0x3506 010740 beq new_spec_notification_enable_handle ,antilost_notify_alarm_config_first_time 
+0x3507 010741 rtn 
+:      010746 antilost_key_process:
+0x3508 010747 fetch 1 ,mem_antl_key_scan_enable 
+0x3509 010748 rtn blank 
+0x350a 010749 branch keyscan_key_process 
+:      010753 antilost_key_up_down:
+0x350b 010754 copy rega ,pdata 
+0x350c 010755 branch antilost_key_is_up ,blank 
+:      010756 antilost_key_is_down:
+0x350d 010757 copy queue ,pdata 
+0x350e 010758 beq 0 ,antilost_key0_down 
+0x350f 010759 rtn 
+:      010760 antilost_key_is_up:
+0x3510 010761 copy queue ,pdata 
+0x3511 010762 beq 0 ,antilost_key0_up 
+0x3512 010763 rtn 
+:      010765 antilost_key0_down:
+0x3513 010766 jam 1 ,mem_antl_key_state 
+0x3514 010767 arg mem_antl_key_buzzer_style ,regc 
+0x3515 010768 call antilost_buzzer_configuration 
+0x3516 010769 arg mem_antl_key_led_style ,regc 
+0x3517 010770 call antilost_led_configuration 
+0x3518 010771 fetch 2 ,mem_ui_state_map 
+0x3519 010772 bbit0 ui_state_ble_connected ,antilost_butten_down_while_disconn 
+0x351a 010773 branch antilost_butten_down_after_conn 
+:      010775 antilost_key0_up:
+0x351b 010776 jam 0 ,mem_antl_key_state 
+0x351c 010777 branch antilost_double_click_timer_init 
+:      010781 antilost_double_click_timer_init:
+0x351d 010782 fetch 1 ,mem_butten_click_cnt 
+0x351e 010783 rtnne 1 
+0x351f 010784 jam 5 ,mem_double_click_timer 
+0x3520 010785 rtn 
+:      010787 antilost_butten_down_after_conn:
+0x3521 010788 fetch 1 ,mem_butten_click_cnt 
+0x3522 010789 pincrease 1 
+0x3523 010790 store 1 ,mem_butten_click_cnt 
+0x3524 010791 beq 1 ,antilost_click_once 
+0x3525 010792 beq 2 ,antilost_click_twice 
+0x3526 010793 rtn 
+:      010794 antilost_click_once:
+0x3527 010795 call antilost_alert_off 
+0x3528 010796 jam opcode1_butten_click_once ,mem_antl_key0_press + 5 
+0x3529 010797 arg mem_antl_key0_press ,regc 
+0x352a 010798 branch antilost_prepare_data_and_send 
+:      010799 antilost_click_twice:
+0x352b 010800 jam 0 ,mem_butten_click_cnt 
+0x352c 010801 jam opcode2_butten_double_click ,mem_antl_key0_press + 5 
+0x352d 010802 arg mem_antl_key0_press ,regc 
+0x352e 010803 call antilost_prepare_data_and_send 
+0x352f 010804 fetch 1 ,mem_antl_lost_mode 
+0x3530 010805 beq 1 ,antilost_alert_on 
+0x3531 010806 rtn 
+:      010808 antilost_butten_down_while_disconn:
+0x3532 010809 fetch 2 ,mem_antl_le_sleep_timeout 
+0x3533 010810 store 2 ,mem_antl_le_sleep_timer 
+0x3534 010811 call antilost_alert_off 
+0x3535 010812 branch antilost_fast_adv_start 
+:      010815 antilost_cmd_parse_for_application:
+0x3536 010816 bpatch patch19_5 ,mem_patch19 
+0x3537 010817 call le_app_receive_data 
+0x3538 010818 ifetch 1 ,rega 
+0x3539 010819 beq opcode3_antl_start_alram ,antilost_on_of_alram 
+0x353a 010820 beq opcode7_antl_config_alram ,antilost_configuration_for_alram 
+0x353b 010821 rtn 
+:      010823 antilost_on_of_alram:
+0x353c 010824 fetch 1 ,mem_antl_lost_mode 
+0x353d 010825 beq anti_le_alarm_off ,antilost_alert_on 
+0x353e 010826 beq anti_le_alarm_on ,antilost_alert_off 
+0x353f 010827 rtn 
+:      010829 antilost_configuration_for_alram:
+0x3540 010830 ifetch 1 ,regb 
+0x3541 010831 beq 1 ,antilost_set_start_alarm_after_disconn 
+0x3542 010832 beq 0 ,antilost_set_no_alarm_after_disconn 
+0x3543 010833 rtn 
+:      010840 antilost_prepare_data_and_send:
+0x3544 010841 bpatch patch19_6 ,mem_patch19 
+0x3545 010842 fetch 1 ,mem_client_characteristic_configuration_descriptor 
+0x3546 010843 isolate1 notification_enable_bit ,pdata 
+0x3547 010844 nrtn true 
+0x3548 010845 add regc ,6 ,contr 
+0x3549 010846 ifetch 2 ,contr 
+0x354a 010847 byteswap pdata ,pdata 
+0x354b 010848 add pdata ,5 ,loopcnt 
+0x354c 010849 add regc ,3 ,contr 
+0x354d 010850 call calc_check_sum_start 
+0x354e 010851 istore 1 ,contr 
+0x354f 010852 copy regc ,rega 
+0x3550 010853 branch queue_push 
+:      010859 antilost_alert_on:
+0x3551 010860 fetch 1 ,mem_antl_power_state 
+0x3552 010861 rtn blank 
+0x3553 010862 jam 1 ,mem_antl_lost_mode 
+0x3554 010863 arg mem_antl_alert_buzzer_stlye ,regc 
+0x3555 010864 call antilost_buzzer_configuration 
+0x3556 010865 arg mem_antl_alert_led_stlye ,regc 
+0x3557 010866 call antilost_led_configuration 
+0x3558 010867 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
+0x3559 010868 jam 1 ,mem_antl_key0_release + 8 
+0x355a 010869 arg mem_antl_key0_release ,regc 
+0x355b 010870 branch antilost_prepare_data_and_send 
+:      010871 antilost_alert_off:
+0x355c 010872 fetch 1 ,mem_antl_lost_mode 
+0x355d 010873 rtn blank 
+0x355e 010874 jam 0 ,mem_antl_lost_mode 
+0x355f 010875 call antilost_led_buzzer_stop_blink 
+0x3560 010876 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
+0x3561 010877 jam 0 ,mem_antl_key0_release + 8 
+0x3562 010878 arg mem_antl_key0_release ,regc 
+0x3563 010879 branch antilost_prepare_data_and_send 
+:      010881 antilost_set_start_alarm_after_disconn:
+0x3564 010882 jam 1 ,mem_alarm_config 
+0x3565 010883 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+0x3566 010884 jam 1 ,mem_antl_key0_release + 8 
+0x3567 010885 arg mem_antl_key0_release ,regc 
+0x3568 010886 branch antilost_prepare_data_and_send 
+:      010887 antilost_set_no_alarm_after_disconn:
+0x3569 010888 jam 0 ,mem_alarm_config 
+0x356a 010889 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+0x356b 010890 jam 0 ,mem_antl_key0_release + 8 
+0x356c 010891 arg mem_antl_key0_release ,regc 
+0x356d 010892 branch antilost_prepare_data_and_send 
+:      010893 antilost_on_off_alarm_after_disconn:
+0x356e 010894 fetch 1 ,mem_alarm_config 
+0x356f 010895 rtn blank 
+0x3570 010896 branch antilost_alert_on 
+:      010898 antilost_notify_alarm_config_first_time:
+0x3571 010899 ifetch 2 ,rega 
+0x3572 010900 store 2 ,mem_client_characteristic_configuration_descriptor 
+0x3573 010901 isolate1 notification_enable_bit ,pdata 
+0x3574 010902 nrtn true 
+0x3575 010903 fetch 1 ,mem_alarm_config_notfy_cnt 
+0x3576 010904 rtn blank 
+0x3577 010905 jam 0 ,mem_alarm_config_notfy_cnt 
+0x3578 010906 fetch 8 ,mem_antl_le_interval_min 
+0x3579 010907 store 8 ,mem_le_interval_min 
+0x357a 010908 jam 2 ,mem_antl_send_updata_le_param_timer 
+0x357b 010909 call antilost_battery_process 
+0x357c 010910 call antilost_battery_calculate_end 
+0x357d 010911 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+0x357e 010912 fetch 1 ,mem_alarm_config 
+0x357f 010913 store 1 ,mem_antl_key0_release + 8 
+0x3580 010914 arg mem_antl_key0_release ,regc 
+0x3581 010915 branch antilost_prepare_data_and_send 
+:      010919 antilost_buzzer_configuration:
+0x3582 010920 arg 1 ,rega 
+0x3583 010921 branch antilost_configuration_common 
+:      010922 antilost_led_configuration:
+0x3584 010923 arg 0 ,rega 
+:      010924 antilost_configuration_common:
+0x3585 010925 branch antilost_led_buzzer_style_configuration 
+:      010927 antilost_led_buzzer_stop_blink:
+0x3586 010928 arg 0 ,rega 
+0x3587 010929 call ui_led_blink_stop_global 
+0x3588 010930 arg 1 ,rega 
+0x3589 010931 call ui_led_blink_stop_global 
+0x358a 010932 fetch 1 ,mem_buzzer_pwm_conf 
+0x358b 010933 branch pwm_disable 
+:      010935 antilost_led_buzzer_style_configuration:
+0x358c 010936 call calc_curr_struct_prt 
+0x358d 010937 arg 7 ,loopcnt 
+0x358e 010938 branch ui_led_set_style_global + 2 
+:      010942 antilost_fast_adv_start:
+0x358f 010943 arg mem_antl_fast_adv_led_style ,regc 
+0x3590 010944 arg mem_antl_lpm_interval ,regb 
+:      010945 antilost_adv_start_common:
+0x3591 010946 call antilost_adv_interval_lpm_interval_set 
+0x3592 010947 call antilost_led_configuration 
+0x3593 010948 fetch 2 ,mem_antl_fast_adv_timeout 
+0x3594 010949 store 2 ,mem_antl_fast_adv_timer 
+0x3595 010950 branch app_ble_start_adv 
+:      010952 antilost_adv_interval_lpm_interval_set:
+0x3596 010953 ifetch 2 ,regb 
+0x3597 010954 store 2 ,mem_lpm_interval 
+0x3598 010955 ifetch 2 ,contr 
+0x3599 010956 store 2 ,mem_le_adv_interval 
+0x359a 010957 rtn 
+:      010959 antilost_buzzer_pwm_init:
+0x359b 010960 arg 0 ,rega 
+0x359c 010961 call pwm_init 
+0x359d 010962 fetch 6 ,mem_buzzer_pwm_conf 
+0x359e 010963 store 6 ,mem_pdatatemp 
+0x359f 010964 call pwm_out_set 
+0x35a0 010965 fetch 1 ,mem_buzzer_pwm_conf 
+0x35a1 010966 branch pwm_disable 
+:      010968 antilost_led_on_cb:
+0x35a2 010969 jam 1 ,mem_antl_led_state 
+0x35a3 010970 rtn 
+:      010971 antilost_led_off_cb:
+0x35a4 010972 jam 0 ,mem_antl_led_state 
+0x35a5 010973 rtn 
+:      010977 antilost_buzzer_off:
+0x35a6 010978 jam 0 ,mem_antl_buzzer_state 
+0x35a7 010979 fetch 1 ,mem_buzzer_pwm_conf 
+0x35a8 010980 branch pwm_disable 
+:      010982 antilost_buzzer_on:
+0x35a9 010983 jam 1 ,mem_antl_buzzer_state 
+0x35aa 010984 fetch 6 ,mem_buzzer_pwm_conf 
+0x35ab 010985 store 6 ,mem_pdatatemp 
+0x35ac 010986 branch pwm_out_set 
+:      010990 antilost_adc_init:
+0x35ad 010991 jam 0 ,mem_adc_config_flag 
+0x35ae 010992 branch adc_init_data 
+:      010994 antilost_battery_process:
+0x35af 010995 call adc_set_mode 
+0x35b0 010996 call vdd_calculate_by_mode 
+0x35b1 010997 store 2 ,mem_battery_current_voltage 
+0x35b2 010998 arg mem_battery_calculate_set ,rega 
+0x35b3 010999 call adc_bat_percent_lowpower_out 
+0x35b4 011000 store 1 ,mem_voltage_remain_percent 
+0x35b5 011001 beq 0 ,antilost_low_battery 
+0x35b6 011002 sub pdata ,0x64 ,null 
+0x35b7 011003 nbranch antilost_full_battery ,positive 
+0x35b8 011004 store 1 ,mem_antl_key0_release + 8 
+:      011005 antilost_battery_calculate_end:
+0x35b9 011006 jam opcode5_batter_information ,mem_antl_key0_release + 5 
+0x35ba 011007 arg mem_antl_key0_release ,regc 
+0x35bb 011008 branch antilost_prepare_data_and_send 
+:      011009 antilost_full_battery:
+0x35bc 011010 jam 100 ,mem_antl_key0_release + 8 
+0x35bd 011011 branch antilost_battery_calculate_end 
+:      011013 antilost_low_battery:
+0x35be 011014 branch app_button_long_pressed 
+:      011018 car_init:
+0x35bf 011019 rtn wake 
+0x35c0 011020 hfetch 1 ,core_gpio_sel1 
+0x35c1 011021 and_into 0xf0 ,pdata 
+0x35c2 011022 hstore 1 ,core_gpio_sel1 
+0x35c3 011023 setarg car_le_before_hibernate 
+0x35c4 011024 store 2 ,mem_cb_before_hibernate 
+0x35c5 011026 setarg car_le_process_lpm_before 
+0x35c6 011027 store 2 ,mem_cb_before_lpm 
+0x35c7 011029 setarg app_enter_hibernate 
+0x35c8 011030 store 2 ,mem_cb_discovry_timeout 
+0x35c9 011032 setarg car_scale_process_idle 
+0x35ca 011033 store 2 ,mem_cb_idle_process 
+0x35cb 011035 setarg car_scale_process_bb_event 
+0x35cc 011036 store 2 ,mem_cb_bb_event_process 
+0x35cd 011038 setarg app_get_lpm_wake_lock 
+0x35ce 011039 store 2 ,mem_cb_check_wakelock 
+0x35cf 011041 setarg car_le_receive_data 
+0x35d0 011042 store 2 ,mem_cb_att_write 
+0x35d1 011044 setarg car_le_bb_event_timer 
+0x35d2 011045 store 2 ,mem_cb_event_timer 
+0x35d3 011047 call g24_head_ptr2regc 
+0x35d4 011048 setarg car_24g_receive_data 
+0x35d5 011049 add regc ,offset_24g_cb_rxdata_type1 ,contw 
+0x35d6 011050 istore 2 ,contw 
+0x35d7 011052 setarg car_power_off_signal 
+0x35d8 011053 store 2 ,mem_remote_car_power_off_cb 
+0x35d9 011055 setarg car_soft_switch_power_on_signal 
+0x35da 011056 store 2 ,mem_remote_car_power_standby_cb 
+0x35db 011058 bpatch patch19_7 ,mem_patch19 
+0x35dc 011059 call car_init_environment 
+0x35dd 011060 call queue_init 
+0x35de 011061 jam 2 ,mem_lpm_mult 
+0x35df 011062 jam power_on ,mem_car_24g_received_pac 
+0x35e0 011063 fetch 1 ,mem_car_config_soft_switch_enable 
+0x35e1 011064 store 1 ,mem_car_hard_soft_switch 
+0x35e2 011065 beq hard_switch ,car_hard_switch_power_on_signal 
+0x35e3 011066 fetch 1 ,mem_car_config_soft_switch_gpio 
+0x35e4 011067 store 1 ,mem_ui_button_gpio 
+0x35e5 011068 jam off ,mem_le_adv_enable 
+:      011069 car_soft_switch_power_on_init:
+0x35e6 011070 call car_ui_led_init 
+0x35e7 011071 call ui_button_init 
+0x35e8 011072 call ui_button_polling 
+0x35e9 011073 jam power_starting ,mem_car_power_state 
+0x35ea 011074 fetch 2 ,mem_ui_state_map 
+0x35eb 011075 rtnbit1 ui_state_btn_down 
+0x35ec 011076 branch app_enter_hibernate 
+:      011078 car_power_off_signal:
+0x35ed 011079 branch car_ui_led_init 
+:      011081 car_hard_switch_power_on_signal:
+0x35ee 011082 jam power_standby ,mem_car_power_state 
+:      011083 car_soft_switch_power_on_signal:
+0x35ef 011084 jam on ,mem_le_adv_enable 
+0x35f0 011085 call car_ui_led_init 
+0x35f1 011086 arg 0 ,rega 
+0x35f2 011087 call ui_led_blink_start_global 
+0x35f3 011089 setarg fast_adv_interval_value_car 
+0x35f4 011090 call shutter_ble_adv_interval_set 
+:      011091 car_le_modified_name_adv:
+0x35f5 011092 arg mem_le_name + 7 ,contw 
+0x35f6 011093 fetch 1 ,mem_le_lap 
+:      011094 car_name_loop:
+0x35f7 011095 and pdata ,0xF0 ,temp 
+0x35f8 011096 rshift4 temp ,temp 
+0x35f9 011097 call car_hex_to_ascii 
+0x35fa 011098 istoret 1 ,contw 
+0x35fb 011099 and pdata ,0x0F ,temp 
+0x35fc 011100 call car_hex_to_ascii 
+0x35fd 011101 istoret 1 ,contw 
+0x35fe 011102 call le_modified_name_att_list 
+0x35ff 011103 fetcht 1 ,mem_le_name_len 
+0x3600 011104 copy temp ,loopcnt 
+0x3601 011105 arg mem_le_adv_data + 2 ,contw 
+0x3602 011106 arg mem_le_name ,contr 
+0x3603 011107 call memcpy 
+:      011108 car_le_modified_name_scan:
+0x3604 011109 fetcht 1 ,mem_le_name_len 
+0x3605 011110 copy temp ,loopcnt 
+0x3606 011111 arg mem_le_scan_data + 2 ,contw 
+0x3607 011112 arg mem_le_name ,contr 
+0x3608 011113 branch memcpy 
+:      011114 car_hex_to_ascii:
+0x3609 011115 sub temp ,9 ,null 
+0x360a 011116 branch car_hex_num ,positive 
+0x360b 011117 add temp ,55 ,temp 
+0x360c 011118 rtn 
+:      011119 car_hex_num:
+0x360d 011120 add temp ,48 ,temp 
+0x360e 011121 rtn 
+:      011123 car_ui_led_init:
+0x360f 011124 fetch 1 ,mem_car_config_blood_led1_gpio 
+0x3610 011125 bne invalid_pin_num ,car_blood_led_gpio_set 
+:      011126 car_ui_led_init_1:
+0x3611 011127 fetch 1 ,mem_car_config_pairing_led_gpio 
+0x3612 011128 bne invalid_pin_num ,car_pairing_led_gpio_set 
+:      011129 car_ui_led_init_2:
+0x3613 011130 fetch 1 ,mem_car_config_low_voltage_led_gpio 
+0x3614 011131 bne invalid_pin_num ,car_low_voltage_led_gpio_set 
+:      011132 car_ui_led_init_3:
+0x3615 011133 fetch 1 ,mem_car_led_num 
+0x3616 011134 copy pdata ,loopcnt 
+0x3617 011135 setarg mem_car_led_map 
+0x3618 011136 copy pdata ,rega 
+:      011137 car_in_lp1:
+0x3619 011138 copy rega ,contr 
+0x361a 011139 ifetch 1 ,contr 
+0x361b 011140 copy contr ,rega 
+0x361c 011141 beq invalid_pin_num ,car_in_lp1_end 
+0x361d 011142 copy pdata ,temp 
+0x361e 011143 call gpio_config_output 
+:      011144 car_in_lp1_end:
+0x361f 011145 loop car_in_lp1 
+:      011146 car_ui_led_init_end:
+0x3620 011147 rtn 
+:      011148 car_blood_led_gpio_set:
+0x3621 011149 fetch 8 ,mem_car_config_blood_led1_gpio 
+0x3622 011150 store 8 ,mem_car_led_map + 2 
+0x3623 011151 branch car_ui_led_init_1 
+:      011152 car_pairing_led_gpio_set:
+0x3624 011153 store 1 ,mem_car_led_map 
+0x3625 011154 branch car_ui_led_init_2 
+:      011155 car_low_voltage_led_gpio_set:
+0x3626 011156 store 1 ,mem_car_led_map + 1 
+0x3627 011157 branch car_ui_led_init_3 
+:      011160 car_init_environment:
+0x3628 011161 arg 0 ,rega 
+0x3629 011162 call pwm_init 
+0x362a 011163 call car_ir_rx_init 
+0x362b 011164 call g24_receive_process_init 
+0x362c 011165 branch car_init_adc_hvin 
+:      011167 car_init_adc_hvin:
+0x362d 011168 jam 100 ,mem_car_notify_vdd_value_last 
+0x362e 011169 fetch 1 ,mem_car_config_low_voltage_led_gpio 
+0x362f 011170 store 1 ,mem_car_style2_struct_led_gpio 
+0x3630 011171 branch adc_init_data 
+:      011173 car_le_before_hibernate:
+0x3631 011174 call gpio_set_before_lpm_common 
+0x3632 011175 branch keyscan_process_lpm_before 
+:      011177 car_le_process_lpm_before:
+0x3633 011178 branch keyscan_process_lpm_before 
+:      011180 car_key_scan_process:
+0x3634 011183 branch keyscan_key_process 
+:      011185 car_scale_process_idle:
+0x3635 011186 call car_le_send_packet 
+0x3636 011187 call car_ir_receive_process 
+0x3637 011188 call car_g24_status_process 
+0x3638 011189 branch car_key_scan_process 
+:      011191 car_g24_status_process:
+0x3639 011192 fetch 2 ,mem_ui_state_map 
+0x363a 011193 rtnbit1 ui_state_ble_connected 
+0x363b 011194 fetch 1 ,mem_car_24g_received_pac 
+0x363c 011195 beq work_paired ,car_g24_connected_event 
+0x363d 011196 rtn 
+:      011197 car_g24_connected_event:
+0x363e 011198 fetch 1 ,mem_car_24g_status 
+0x363f 011199 rtneq work_paired 
+0x3640 011200 jam work_paired ,mem_car_24g_status 
+0x3641 011201 branch car_g24_connected 
+:      011203 car_le_send_packet:
+0x3642 011204 fetch 2 ,mem_ui_state_map 
+0x3643 011205 rtnbit0 ui_state_ble_connected 
+0x3644 011206 call le_fifo_check_nearly_full 
+0x3645 011207 nrtn blank 
+0x3646 011208 arg mem_car_pop_queue_buff ,rega 
+0x3647 011209 call queue_pop 
+0x3648 011210 nrtn user 
+0x3649 011211 arg mem_car_pop_queue_buff ,contr 
+0x364a 011212 branch le_send_notify_from_list 
+:      011214 car_scale_process_bb_event:
+0x364b 011215 copy regc ,pdata 
+0x364c 011216 beq bt_evt_button_up ,app_event_button_up 
+0x364d 011217 beq bt_evt_button_long_pressed ,app_button_long_pressed 
+0x364e 011218 beq bt_evt_le_connected ,car_scale_event_le_conn 
+0x364f 011219 beq bt_evt_le_disconnected ,car_scale_event_le_discon 
+0x3650 011220 rtn 
+:      011222 car_scale_event_le_conn:
+0x3651 011223 setarg disable_24g 
+0x3652 011224 call g24_store_mem_24g_mode 
+0x3653 011225 branch car_scale_process_conn 
+:      011226 car_g24_connected:
+0x3654 011227 fetch 2 ,mem_car_24g_no_data_timeout_count 
+0x3655 011228 store 2 ,mem_car_24g_no_data_timeout_timer 
+:      011229 car_scale_process_conn:
+0x3656 011230 jam 0x14 ,mem_car_notify_vdd_timer 
+0x3657 011231 jam 0 ,mem_lpm_mode 
+0x3658 011232 call app_ble_stop_adv 
+0x3659 011233 call app_lpm_mult_enable 
+0x365a 011234 fetch 1 ,mem_car_config_pairing_led_conn_status 
+0x365b 011235 beq 0x01 ,car_pairing_led_conn_status_setting 
+:      011236 car_scale_process_conn_next:
+0x365c 011237 arg 0 ,rega 
+0x365d 011238 branch ui_led_on_global 
+:      011239 car_pairing_led_conn_status_setting:
+0x365e 011240 arg 0 ,rega 
+0x365f 011241 branch ui_led_blink_stop_global 
+:      011243 car_scale_event_le_discon:
+0x3660 011244 setarg rx_24g 
+0x3661 011245 call g24_store_mem_24g_mode 
+:      011246 car_g24_disconnect:
+0x3662 011247 setarg 0 
+0x3663 011248 store 5 ,mem_car_led_control 
+0x3664 011249 setarg 4 
+0x3665 011250 call pwm_disable 
+0x3666 011251 setarg 5 
+0x3667 011252 call pwm_disable 
+0x3668 011253 setarg 20 
+0x3669 011254 call pwm_disable 
+0x366a 011255 setarg 21 
+0x366b 011256 call pwm_disable 
+0x366c 011257 setarg 22 
+0x366d 011258 call pwm_disable 
+0x366e 011259 setarg 7 
+0x366f 011260 call pwm_disable 
+0x3670 011261 call queue_init 
+0x3671 011262 jam 10 ,mem_motor1_speed 
+0x3672 011263 jam 10 ,mem_motor2_speed 
+0x3673 011264 jam 10 ,mem_motor3_speed 
+0x3674 011266 jam 2 ,mem_lpm_mult 
+0x3675 011267 arg 0 ,rega 
+0x3676 011268 call ui_led_blink_start_global 
+0x3677 011270 setarg fast_adv_interval_value_car 
+0x3678 011271 call shutter_ble_adv_interval_set 
+0x3679 011272 branch app_ble_start_adv 
+:      011274 car_le_bb_event_timer:
+0x367a 011276 call car_moto1_blank_data_timer 
+0x367b 011277 call car_moto2_blank_data_timer 
+0x367c 011278 call car_moto3_blank_data_timer 
+0x367d 011279 call app_power_timer 
+0x367e 011280 call car_led_control_timer 
+0x367f 011281 call car_notify_vdd_timer 
+0x3680 011282 call car_24g_no_data_timeout_timer 
+0x3681 011283 call car_ir_breakdown_timer 
+0x3682 011284 branch car_attack_shake_timer 
+:      011286 car_ir_breakdown_timer:
+0x3683 011287 arg mem_car_ir_breakdown_check_timer ,regc 
+0x3684 011288 arg car_ir_breakdown_timeout ,regb 
+0x3685 011289 branch timer_single_step 
+:      011290 car_ir_breakdown_timeout:
+0x3686 011291 call car_ir_gpio_get_status 
+0x3687 011292 nrtn true 
+0x3688 011293 jam 1 ,mem_car_ir_breakdown_flag 
+0x3689 011294 rtn 
+:      011296 car_24g_no_data_timeout_timer:
+0x368a 011297 arg mem_car_24g_no_data_timeout_timer ,regc 
+0x368b 011298 arg car_24g_no_data_timer_timeout ,regb 
+0x368c 011299 branch timer_single_step_2b 
+:      011300 car_24g_no_data_timer_timeout:
+0x368d 011301 jam work_search ,mem_car_24g_status 
+0x368e 011302 branch car_g24_disconnect 
+:      011304 car_attack_shake_timer:
+0x368f 011305 arg mem_car_attack_shake_timer ,regc 
+0x3690 011306 arg car_attack_shake ,regb 
+0x3691 011307 branch timer_single_step 
+:      011308 car_attack_shake:
+0x3692 011309 fetch 1 ,mem_car_attack_shake_flag 
+0x3693 011310 branch car_attack_shake_stop ,blank 
+0x3694 011311 jam 2 ,mem_car_attack_shake_timer 
+0x3695 011312 jam 0 ,mem_car_attack_shake_flag 
+0x3696 011313 setarg 0x0a02 
+0x3697 011314 store 2 ,mem_le_receive_payload 
+0x3698 011315 fetch 1 ,mem_car_config_device_select 
+0x3699 011316 beq device_battle_tank ,car_attack_shake_front_battle_tank 
+:      011317 car_attack_shake_front_battle_car:
+0x369a 011318 branch car_motor_control 
+:      011319 car_attack_shake_front_battle_tank:
+0x369b 011320 setarg 0x0a02 
+0x369c 011321 store 2 ,mem_le_receive_payload + 2 
+0x369d 011322 branch car_motor_control 
+:      011323 car_attack_shake_stop:
+0x369e 011324 setarg 0 
+0x369f 011325 store 4 ,mem_le_receive_payload 
+0x36a0 011326 branch car_motor_control 
+:      011328 car_notify_vdd_timer:
+0x36a1 011329 fetch 1 ,mem_car_config_bat_notify_enable 
+0x36a2 011330 rtn blank 
+0x36a3 011331 fetch 2 ,mem_ui_state_map 
+0x36a4 011332 bbit0 ui_state_ble_connected ,car_low_bat_led_off 
+0x36a5 011333 arg mem_car_notify_vdd_timer ,regc 
+0x36a6 011334 arg car_notify_vdd ,regb 
+0x36a7 011335 branch timer_single_step 
+:      011336 car_notify_vdd:
+0x36a8 011337 fetch 1 ,mem_car_notify_vdd_count 
+0x36a9 011338 store 1 ,mem_car_notify_vdd_timer 
+0x36aa 011339 fetch 1 ,mem_car_working_flag 
+0x36ab 011340 nrtn blank 
+:      011341 car_read_hvin:
+0x36ac 011342 call adc_set_mode 
+0x36ad 011343 call vdd_calculate_by_mode 
+0x36ae 011344 store 2 ,mem_vdd_now_vol 
+0x36af 011345 arg mem_vdd_calculate_set ,rega 
+0x36b0 011346 call adc_bat_percent_lowpower_out 
+0x36b1 011347 fetcht 1 ,mem_car_notify_vdd_value_last 
+0x36b2 011348 isub temp ,null 
+0x36b3 011349 branch car_notify_vdd_next2 ,positive 
+0x36b4 011350 store 1 ,mem_car_notify_vdd_value_last 
+0x36b5 011351 copy pdata ,temp 
+:      011352 car_notify_vdd_next2:
+0x36b6 011353 storet 1 ,mem_car_notify_vdd_percent 
+0x36b7 011354 fetch 1 ,mem_car_config_low_voltage_percent 
+0x36b8 011355 isub temp ,null 
+0x36b9 011356 call car_enter_low_bat ,positive 
+0x36ba 011357 storet 1 ,mem_notify_bat_payload 
+0x36bb 011358 arg 6 ,loopcnt 
+0x36bc 011359 arg mem_notify_bat_head ,contr 
+0x36bd 011360 call calc_check_sum_start 
+0x36be 011361 store 1 ,mem_notify_bat_check_sum 
+0x36bf 011362 arg mem_notify_bat_packet ,rega 
+0x36c0 011363 branch queue_push 
+:      011364 car_enter_low_bat:
+0x36c1 011365 fetch 1 ,mem_low_bat_flag 
+0x36c2 011366 nrtn blank 
+0x36c3 011367 jam 1 ,mem_low_bat_flag 
+0x36c4 011368 arg 1 ,rega 
+0x36c5 011369 branch ui_led_blink_start_global 
+:      011370 car_low_bat_led_off:
+0x36c6 011371 arg 1 ,rega 
+0x36c7 011372 branch ui_led_blink_stop_global 
+:      011374 car_led_control_timer:
+0x36c8 011375 arg mem_car_led_control_timer ,regc 
+0x36c9 011376 arg car_led_control ,regb 
+0x36ca 011377 branch timer_single_step 
+:      011378 car_led_control:
+0x36cb 011379 jam 5 ,mem_car_led_control_timer 
+0x36cc 011380 jam 0 ,mem_car_led_no 
+0x36cd 011381 fetch 1 ,mem_car_led_blink_status 
+0x36ce 011382 beq led_on ,car_led_control_blink_off 
+0x36cf 011383 beq led_off ,car_led_control_blink_on 
+:      011384 car_led_control_set:
+0x36d0 011385 arg mem_car_led_control ,contr 
+0x36d1 011386 copy contr ,rega 
+0x36d2 011387 arg 8 ,loopcnt 
+:      011388 car_led_control_timer_next:
+0x36d3 011389 copy rega ,contr 
+0x36d4 011390 ifetch 1 ,contr 
+0x36d5 011391 copy contr ,rega 
+0x36d6 011392 beq led_off ,car_led_control_off 
+0x36d7 011393 beq led_on ,car_led_control_on 
+0x36d8 011394 beq led_blink ,car_led_control_blink 
+:      011395 car_led_control_timer_next_2:
+0x36d9 011396 fetch 1 ,mem_car_led_no 
+0x36da 011397 increase 1 ,pdata 
+0x36db 011398 store 1 ,mem_car_led_no 
+0x36dc 011399 loop car_led_control_timer_next 
+0x36dd 011400 rtn 
+:      011401 car_led_switch:
+0x36de 011402 fetch 1 ,mem_car_led_no 
+0x36df 011403 arg mem_car_config_blood_led_gpio ,regb 
+0x36e0 011404 iadd regb ,regb 
+0x36e1 011405 ifetcht 1 ,regb 
+0x36e2 011406 rtn 
+:      011407 car_led_control_off:
+0x36e3 011408 call car_led_switch 
+0x36e4 011409 call gpio_out_inactive 
+0x36e5 011410 branch car_led_control_timer_next_2 
+:      011411 car_led_control_on:
+0x36e6 011412 call car_led_switch 
+0x36e7 011413 call gpio_out_active 
+0x36e8 011414 branch car_led_control_timer_next_2 
+:      011415 car_led_control_blink:
+0x36e9 011416 fetch 1 ,mem_car_led_blink_status 
+0x36ea 011417 beq led_on ,car_led_control_off 
+0x36eb 011418 branch car_led_control_on 
+:      011419 car_led_control_blink_on:
+0x36ec 011420 jam led_on ,mem_car_led_blink_status 
+0x36ed 011421 branch car_led_control_set 
+:      011422 car_led_control_blink_off:
+0x36ee 011423 jam led_off ,mem_car_led_blink_status 
+0x36ef 011424 branch car_led_control_set 
+:      011428 calc_check_sum_start:
+0x36f0 011429 arg 0 ,rega 
+:      011430 calc_check_sum_loop:
+0x36f1 011431 ifetch 1 ,contr 
+0x36f2 011432 iadd rega ,rega 
+0x36f3 011433 loop calc_check_sum_loop 
+:      011434 calc_check_sum_and:
+0x36f4 011435 and rega ,0xff ,pdata 
+0x36f5 011436 rtn 
+:      011438 car_le_receive_data:
+0x36f6 011439 fetch 1 ,mem_le_att_opcode 
+0x36f7 011440 beq attop_write_request ,car_le_parse_att_write_request 
+0x36f8 011441 rtn 
+:      011442 car_le_parse_att_write_request:
+0x36f9 011443 fetch 2 ,mem_le_att_handle 
+0x36fa 011444 beq att_car_control_handle ,car_control_le_receive 
+0x36fb 011445 rtn 
+:      011457 le_app_receive_data:
+0x36fc 011458 bpatch patch1a_0 ,mem_patch1a 
+0x36fd 011459 ifetch 5 ,rega 
+0x36fe 011460 store 5 ,mem_app_receive_temp 
+0x36ff 011461 fetch 2 ,mem_app_receive_temp 
+0x3700 011462 arg le_receive_packet_head ,temp 
+0x3701 011463 isub temp ,null 
+0x3702 011464 nrtn zero 
+0x3703 011465 fetch 2 ,mem_app_receive_temp + 3 
+0x3704 011466 byteswap pdata ,pdata 
+0x3705 011467 store 2 ,mem_app_receive_temp + 3 
+0x3706 011468 copy pdata ,loopcnt 
+0x3707 011469 increase 5 ,rega 
+0x3708 011470 copy rega ,contr 
+0x3709 011471 arg mem_app_receive_temp + 5 ,contw 
+0x370a 011472 call memcpy 
+0x370b 011473 ifetch 1 ,contr 
+0x370c 011474 store 1 ,mem_app_receive_temp + 15 
+0x370d 011475 arg mem_app_receive_temp + 2 ,rega 
+0x370e 011476 arg mem_app_receive_temp + 5 ,regb 
+0x370f 011477 rtn 
+:      011479 car_control_le_receive:
+0x3710 011480 setarg 0 
+0x3711 011481 store 5 ,mem_le_receive_payload 
+0x3712 011482 store 5 ,mem_le_receive_payload + 5 
+0x3713 011483 call le_app_receive_data 
+0x3714 011484 copy regb ,contr 
+0x3715 011485 arg mem_le_receive_payload ,contw 
+0x3716 011486 arg 10 ,loopcnt 
+0x3717 011487 call memcpy 
+:      011488 car_receive_cmd_select:
+0x3718 011489 bpatch patch1a_1 ,mem_patch1a 
+0x3719 011490 ifetch 1 ,rega 
+0x371a 011491 beq car_cmd_old_car_control ,car_drive_old 
+0x371b 011492 beq car_cmd_old_speed_control ,car_speed_set_old 
+0x371c 011493 beq car_cmd_l_r_motor_control ,car_motor_control 
+0x371d 011494 beq car_cmd_f_b_motor_control ,car_motor_control 
+0x371e 011495 beq car_cmd_ir_control ,car_ir_data_rx_from_app 
+0x371f 011496 beq car_cmd_led_control ,car_led_control_receive 
+0x3720 011497 beq car_cmd_device_info ,car_info_request 
+0x3721 011498 rtn 
+:      011500 car_24g_receive_data:
+0x3722 011501 fetch 2 ,mem_ui_state_map 
+0x3723 011502 rtnbit1 ui_state_ble_connected 
+0x3724 011504 fetch 2 ,mem_car_24g_no_data_timeout_count 
+0x3725 011505 store 2 ,mem_car_24g_no_data_timeout_timer 
+0x3726 011507 jam work_paired ,mem_car_24g_received_pac 
+0x3727 011509 setarg offset_24g_rxdata_temp_add3 
+0x3728 011510 call g24_set_rega 
+0x3729 011511 call car_control_le_receive 
+0x372a 011513 fetch 1 ,mem_app_receive_temp + 2 
+0x372b 011514 beq car_cmd_l_r_motor_control ,car_24g_receive_data_next 
+0x372c 011515 beq car_cmd_f_b_motor_control ,car_24g_receive_data_next 
+0x372d 011516 rtn 
+:      011517 car_24g_receive_data_next:
+0x372e 011518 fetch 1 ,mem_le_receive_payload 
+0x372f 011519 ncall car_moto1_enable_blank_data_timer ,blank 
+0x3730 011520 fetch 1 ,mem_le_receive_payload + 2 
+0x3731 011521 ncall car_moto2_enable_blank_data_timer ,blank 
+0x3732 011522 fetch 1 ,mem_le_receive_payload + 4 
+0x3733 011523 ncall car_moto3_enable_blank_data_timer ,blank 
+0x3734 011524 rtn 
+:      011526 car_moto1_enable_blank_data_timer:
+0x3735 011527 jam 5 ,mem_car_moto1_blank_timer 
+0x3736 011528 rtn 
+:      011529 car_moto2_enable_blank_data_timer:
+0x3737 011530 jam 5 ,mem_car_moto2_blank_timer 
+0x3738 011531 rtn 
+:      011532 car_moto3_enable_blank_data_timer:
+0x3739 011533 jam 5 ,mem_car_moto3_blank_timer 
+0x373a 011534 rtn 
+:      011536 car_moto1_blank_data_timer:
+0x373b 011537 arg mem_car_moto1_blank_timer ,regc 
+0x373c 011538 arg car_moto1_blank_data ,regb 
+0x373d 011539 branch timer_single_step 
+:      011540 car_moto2_blank_data_timer:
+0x373e 011541 arg mem_car_moto2_blank_timer ,regc 
+0x373f 011542 arg car_moto2_blank_data ,regb 
+0x3740 011543 branch timer_single_step 
+:      011544 car_moto3_blank_data_timer:
+0x3741 011545 arg mem_car_moto3_blank_timer ,regc 
+0x3742 011546 arg car_moto3_blank_data ,regb 
+0x3743 011547 branch timer_single_step 
+:      011549 car_moto1_blank_data:
+0x3744 011550 jam 0 ,mem_le_receive_payload 
+0x3745 011551 branch car_motor_control 
+:      011552 car_moto2_blank_data:
+0x3746 011553 jam 0 ,mem_le_receive_payload + 2 
+0x3747 011554 branch car_motor_control 
+:      011555 car_moto3_blank_data:
+0x3748 011556 jam 0 ,mem_le_receive_payload + 4 
+0x3749 011557 branch car_motor_control 
+:      011562 car_drive_old:
+0x374a 011563 call car_left_right_control_old 
+0x374b 011564 branch car_front_back_control_old 
+:      011565 car_left_right_control_old:
+0x374c 011566 fetch 1 ,mem_le_receive_payload 
+0x374d 011567 store 1 ,mem_motor2_status 
+0x374e 011568 branch car_motor2_control 
+:      011569 car_front_back_control_old:
+0x374f 011570 fetch 1 ,mem_motor1_speed 
+0x3750 011571 call car_reset_old_speed 
+0x3751 011572 fetch 1 ,mem_le_receive_payload + 1 
+0x3752 011573 store 1 ,mem_motor1_status 
+0x3753 011574 branch car_motor1_control 
+:      011575 car_reset_old_speed:
+0x3754 011576 beq speed_level_2 ,car_reset_old_speed2 
+0x3755 011577 beq speed_level_3 ,car_reset_old_speed3 
+0x3756 011578 store 1 ,mem_motor1_speed 
+0x3757 011579 rtn 
+:      011580 car_reset_old_speed2:
+0x3758 011581 jam speed_level_5 ,mem_motor1_speed 
+0x3759 011582 rtn 
+:      011583 car_reset_old_speed3:
+0x375a 011584 jam speed_level_10 ,mem_motor1_speed 
+0x375b 011585 rtn 
+:      011586 car_speed_set_old:
+0x375c 011587 fetch 1 ,mem_le_receive_payload 
+0x375d 011588 call car_reset_old_speed 
+0x375e 011589 fetch 1 ,mem_motor1_speed 
+0x375f 011590 call car_motor_speed_duty_setting 
+0x3760 011591 call car_motor_speed_duty_transform 
+0x3761 011592 branch pwm_pwm0_duty_set 
+:      011594 car_motor_control:
+0x3762 011595 fetch 1 ,mem_car_24g_go_die_flag 
+0x3763 011596 nrtn blank 
+0x3764 011597 fetch 6 ,mem_le_receive_payload 
+0x3765 011598 store 6 ,mem_motor1_status 
+0x3766 011599 fetch 1 ,mem_motor1_speed 
+0x3767 011600 fetcht 1 ,mem_motor2_speed 
+0x3768 011601 iand temp ,pdata 
+0x3769 011602 fetcht 1 ,mem_motor3_speed 
+0x376a 011603 iand temp ,pdata 
+0x376b 011604 call car_motor_working_flag ,blank 
+0x376c 011605 bpatch patch1a_2 ,mem_patch1a 
+0x376d 011606 call car_motor1_control 
+0x376e 011607 call car_motor2_control 
+0x376f 011608 branch car_motor3_control 
+:      011609 car_motor1_control:
+0x3770 011610 arg mem_motor1_pwm_set ,regb 
+0x3771 011611 arg mem_motor1_status ,contr 
+0x3772 011612 branch car_motor_status_select 
+:      011613 car_motor2_control:
+0x3773 011614 arg mem_motor2_pwm_set ,regb 
+0x3774 011615 arg mem_motor2_status ,contr 
+0x3775 011616 branch car_motor_status_select 
+:      011617 car_motor3_control:
+0x3776 011618 arg mem_motor3_pwm_set ,regb 
+0x3777 011619 arg mem_motor3_status ,contr 
+0x3778 011620 branch car_motor_status_select 
+:      011621 car_motor_working_flag:
+0x3779 011622 jam 0 ,mem_car_working_flag 
+0x377a 011623 rtn 
+:      011625 car_motor_status_select:
+0x377b 011626 ifetch 1 ,contr 
+0x377c 011627 beq motor_stop ,car_motor_stop 
+0x377d 011628 beq go_front ,car_motor_positive 
+0x377e 011629 beq go_back ,car_motor_negative 
+0x377f 011630 rtn 
+:      011631 car_motor_positive:
+0x3780 011632 jam 0 ,mem_motor_select_p_n 
+0x3781 011633 branch car_motor_negative + 1 
+:      011634 car_motor_negative:
+0x3782 011635 jam 1 ,mem_motor_select_p_n 
+0x3783 011636 ifetch 1 ,contr 
+0x3784 011637 store 1 ,mem_car_motor_speed 
+0x3785 011638 ifetch 8 ,regb 
+0x3786 011639 branch car_motor_work 
+:      011641 car_motor_stop:
+0x3787 011642 ifetch 1 ,regb 
+0x3788 011643 call pwm_disable 
+0x3789 011644 increase 1 ,regb 
+0x378a 011645 ifetch 1 ,regb 
+0x378b 011646 branch pwm_disable 
+:      011647 car_motor_work:
+0x378c 011648 store 8 ,mem_motor_pwm_pin1_set 
+0x378d 011649 jam 1 ,mem_car_working_flag 
+0x378e 011650 fetch 1 ,mem_motor_select_p_n 
+0x378f 011651 beq 0 ,car_motor_select_positive 
+:      011652 car_motor_select_negative:
+0x3790 011653 fetch 1 ,mem_motor_pwm_pin2_set 
+0x3791 011654 store 1 ,mem_motor_pwm_pin_set 
+0x3792 011655 fetch 1 ,mem_motor_pwm_pin1_set 
+:      011656 car_motor_work_next:
+0x3793 011657 call pwm_disable 
+0x3794 011658 fetch 1 ,mem_car_motor_speed 
+0x3795 011659 call car_motor_speed_duty_setting 
+0x3796 011660 store 1 ,mem_motor_pwm_dute_set 
+0x3797 011661 fetch 6 ,mem_motor_pwm_pin_set 
+0x3798 011662 store 6 ,mem_pdatatemp 
+0x3799 011663 branch pwm_out_set 
+:      011664 car_motor_select_positive:
+0x379a 011665 fetch 1 ,mem_motor_pwm_pin1_set 
+0x379b 011666 store 1 ,mem_motor_pwm_pin_set 
+0x379c 011667 fetch 1 ,mem_motor_pwm_pin2_set 
+0x379d 011668 branch car_motor_work_next 
+:      011670 car_motor_speed_duty_setting:
+0x379e 011671 mul32 pdata ,5 ,pdata 
+0x379f 011672 add pdata ,50 ,pdata 
+0x37a0 011673 rtn 
+:      011674 car_motor_speed_duty_transform:
+0x37a1 011675 arg 12000 ,temp 
+0x37a2 011676 imul32 temp ,pdata 
+0x37a3 011677 div pdata ,100 
+0x37a4 011678 call wait_div_end 
+0x37a5 011679 quotient temp 
+0x37a6 011680 copy temp ,rega 
+0x37a7 011681 setarg 12000 
+0x37a8 011682 isub temp ,regb 
+0x37a9 011683 rtn 
+:      011686 car_ir_init:
+0x37aa 011687 hfetch 1 ,core_gpio_sel2 
+0x37ab 011688 set1 2 ,pdata 
+0x37ac 011689 hstore 1 ,core_gpio_sel2 
+0x37ad 011690 setarg 158 
+0x37ae 011691 hstore 2 ,core_pwm_pcnt4 
+0x37af 011692 hstore 2 ,core_pwm_ncnt4 
+0x37b0 011693 rtn 
+:      011695 car_ir_data_rx_from_app:
+0x37b1 011696 fetch 1 ,mem_car_24g_go_die_flag 
+0x37b2 011697 nrtn blank 
+0x37b3 011698 fetch 2 ,mem_le_receive_payload 
+0x37b4 011699 store 2 ,mem_ir_data 
+0x37b5 011700 fetch 1 ,mem_car_24g_status 
+0x37b6 011701 bne work_paired ,car_ir_data_tx 
+0x37b7 011702 fetch 2 ,mem_le_lap 
+0x37b8 011703 store 2 ,mem_ir_data 
+:      011704 car_ir_data_tx:
+0x37b9 011705 bpatch patch1a_3 ,mem_patch1a 
+0x37ba 011706 call car_ir_init 
+0x37bb 011707 call car_ir_enable 
+0x37bc 011708 setarg 48000 
+0x37bd 011709 call sleep 
+0x37be 011710 call car_ir_disable 
+0x37bf 011711 setarg 7200 
+0x37c0 011712 call sleep 
+0x37c1 011713 arg 16 ,loopcnt 
+:      011714 car_ir_send_loop:
+0x37c2 011715 call car_ir_enable 
+0x37c3 011716 fetch 2 ,mem_ir_data 
+0x37c4 011717 bbit1 0 ,car_ir_is_bit1 
+0x37c5 011718 setarg 7200 
+0x37c6 011719 call sleep 
+0x37c7 011720 call car_ir_disable 
+0x37c8 011721 branch car_ir_wait_finish 
+:      011723 car_ir_is_bit1:
+0x37c9 011724 setarg 14400 
+0x37ca 011725 call sleep 
+0x37cb 011726 call car_ir_disable 
+:      011727 car_ir_wait_finish:
+0x37cc 011728 setarg 7200 
+0x37cd 011729 call sleep 
+0x37ce 011730 fetch 2 ,mem_ir_data 
+0x37cf 011731 rshift pdata ,pdata 
+0x37d0 011732 store 2 ,mem_ir_data 
+0x37d1 011733 loop car_ir_send_loop 
+0x37d2 011735 jam 2 ,mem_car_attack_shake_timer 
+0x37d3 011736 jam 1 ,mem_car_attack_shake_flag 
+0x37d4 011737 setarg 0x0a01 
+0x37d5 011738 store 2 ,mem_le_receive_payload 
+0x37d6 011739 fetch 1 ,mem_car_config_device_select 
+0x37d7 011740 beq device_battle_tank ,car_attack_shake_back_battle_tank 
+:      011741 car_attack_shake_back_battle_car:
+0x37d8 011742 branch car_motor_control 
+:      011743 car_attack_shake_back_battle_tank:
+0x37d9 011744 setarg 0x0a01 
+0x37da 011745 store 2 ,mem_le_receive_payload + 2 
+0x37db 011746 branch car_motor_control 
+:      011748 car_ir_enable:
+0x37dc 011749 hfetch 1 ,core_gpio_key2 
+0x37dd 011750 or_into 0x40 ,pdata 
+0x37de 011751 hstore 1 ,core_gpio_key2 
+0x37df 011752 rtn 
+:      011753 car_ir_disable:
+0x37e0 011754 hfetch 1 ,core_gpio_key2 
+0x37e1 011755 and_into 0xbf ,pdata 
+0x37e2 011756 hstore 1 ,core_gpio_key2 
+0x37e3 011757 rtn 
+:      011759 car_ir_rx_init:
+0x37e4 011760 fetch 1 ,mem_car_config_ir_enable 
+0x37e5 011761 rtneq 0x00 
+0x37e6 011762 call lpm_disable_exen_output 
+0x37e7 011763 fetcht 1 ,mem_car_config_ir_rx_gpio 
+0x37e8 011764 storet 1 ,mem_ir_rx_gpio 
+0x37e9 011765 call gpio_config_input 
+0x37ea 011766 call car_ir_gpio_get_status 
+0x37eb 011767 nrtn true 
+0x37ec 011768 jam 1 ,mem_car_ir_breakdown_check_timer 
+0x37ed 011769 rtn 
+:      011771 car_ir_receive_process:
+0x37ee 011772 fetch 1 ,mem_car_config_ir_enable 
+0x37ef 011773 rtneq flag_ir_disable 
+0x37f0 011774 fetch 1 ,mem_car_ir_breakdown_flag 
+0x37f1 011775 nrtn blank 
+0x37f2 011776 fetch 2 ,mem_ui_state_map 
+0x37f3 011777 bbit1 ui_state_ble_connected ,car_ir_receive_process_next 
+0x37f4 011778 fetch 1 ,mem_car_24g_status 
+0x37f5 011779 rtnne work_paired 
+:      011780 car_ir_receive_process_next:
+0x37f6 011781 bpatch patch1a_4 ,mem_patch1a 
+0x37f7 011782 call car_ir_gpio_get_status 
+0x37f8 011783 nrtn true 
+0x37f9 011784 setarg 36000 
+0x37fa 011785 call sleep 
+0x37fb 011786 call car_ir_gpio_get_status 
+0x37fc 011787 nrtn true 
+0x37fd 011788 call car_ir_clk_get 
+:      011789 car_ir_packet_head_wait_end:
+0x37fe 011790 call car_ir_clk_check 
+0x37ff 011791 nrtn positive 
+0x3800 011792 call car_ir_gpio_get_status 
+0x3801 011793 branch car_ir_packet_head_wait_end ,true 
+0x3802 011794 arg 0 ,rega 
+0x3803 011795 arg 16 ,loopcnt 
+0x3804 011796 call car_ir_clk_get 
+:      011797 car_ir_receive_process_loop:
+0x3805 011798 call car_ir_clk_check 
+0x3806 011799 nrtn positive 
+0x3807 011800 call car_ir_gpio_get_status 
+0x3808 011801 nbranch car_ir_receive_process_loop ,true 
+0x3809 011802 setarg 10800 
+0x380a 011803 call sleep 
+0x380b 011804 call car_ir_gpio_get_status 
+0x380c 011805 branch car_ir_get_bit1 ,true 
+:      011806 car_ir_get_bit0:
+0x380d 011807 setarg 0 
+0x380e 011808 rshift rega ,rega 
+0x380f 011809 ior rega ,rega 
+0x3810 011810 loop car_ir_receive_process_loop 
+0x3811 011811 branch car_ir_receive_process_end 
+:      011812 car_ir_get_bit1:
+0x3812 011813 setarg 0x8000 
+0x3813 011814 rshift rega ,rega 
+0x3814 011815 ior rega ,rega 
+0x3815 011816 call car_ir_clk_get 
+:      011817 car_ir_get_bit1_wait_low_end:
+0x3816 011818 call car_ir_clk_check 
+0x3817 011819 nrtn positive 
+0x3818 011820 call car_ir_gpio_get_status 
+0x3819 011821 branch car_ir_get_bit1_wait_low_end ,true 
+0x381a 011822 loop car_ir_receive_process_loop 
+:      011823 car_ir_receive_process_end:
+0x381b 011824 bpatch patch1a_5 ,mem_patch1a 
+0x381c 011825 copy rega ,pdata 
+0x381d 011826 store 2 ,mem_ir_rx_buf 
+0x381e 011827 store 2 ,mem_ir_notify_data + 8 
+0x381f 011828 fetch 1 ,mem_car_24g_status 
+0x3820 011829 beq work_paired ,car_ir_24g_receive_attack 
+:      011830 car_ir_data_notify:
+0x3821 011831 arg 0x07 ,loopcnt 
+0x3822 011832 arg mem_ir_notify_data_head ,contr 
+0x3823 011833 call calc_check_sum_start 
+0x3824 011834 store 1 ,mem_ir_notify_data_check_sum 
+0x3825 011835 arg mem_ir_notify_data ,rega 
+0x3826 011836 branch queue_push 
+:      011838 car_ir_24g_receive_attack:
+0x3827 011839 fetch 1 ,mem_car_24g_ir_receive_attack_count 
+0x3828 011840 increase 1 ,pdata 
+0x3829 011841 store 1 ,mem_car_24g_ir_receive_attack_count 
+0x382a 011842 div pdata ,2 
+0x382b 011843 call wait_div_end 
+0x382c 011844 quotient temp 
+0x382d 011845 remainder pdata 
+0x382e 011846 nbranch car_ir_24g_receive_attack_blink ,blank 
+:      011847 car_ir_24g_receive_attack_off:
+0x382f 011848 fetch 1 ,mem_car_config_led_num 
+0x3830 011849 isub temp ,null 
+0x3831 011850 call car_ir_24g_go_die ,zero 
+0x3832 011851 arg mem_car_led_control ,pdata 
+0x3833 011852 increase -1 ,temp 
+0x3834 011853 iadd temp ,rega 
+0x3835 011854 arg 0 ,pdata 
+0x3836 011855 istore 1 ,rega 
+0x3837 011856 rtn 
+:      011857 car_ir_24g_receive_attack_blink:
+0x3838 011858 arg mem_car_led_control ,pdata 
+0x3839 011859 iadd temp ,rega 
+0x383a 011860 arg 2 ,pdata 
+0x383b 011861 istore 1 ,rega 
+0x383c 011862 rtn 
+:      011863 car_ir_24g_go_die:
+0x383d 011864 jam 1 ,mem_car_24g_go_die_flag 
+0x383e 011865 rtn 
+:      011866 car_ir_clk_get:
+0x383f 011867 copy clkn_bt ,pdata 
+0x3840 011868 store 4 ,mem_ir_receive_clkn 
+0x3841 011869 rtn 
+:      011870 car_ir_clk_check:
+0x3842 011871 copy clkn_bt ,pdata 
+0x3843 011872 fetcht 4 ,mem_ir_receive_clkn 
+0x3844 011873 isub temp ,pdata 
+0x3845 011874 sub pdata ,200 ,null 
+0x3846 011875 rtn 
+:      011877 car_ir_gpio_get_status:
+0x3847 011878 fetcht 1 ,mem_ir_rx_gpio 
+0x3848 011879 branch gpio_get_bit 
+:      011881 car_led_control_receive:
+0x3849 011882 fetch 8 ,mem_le_receive_payload 
+0x384a 011883 store 8 ,mem_car_led_control 
+0x384b 011884 rtn 
+:      011886 car_info_request:
+0x384c 011887 fetch 1 ,mem_car_config_device_select 
+0x384d 011888 store 1 ,mem_car_info_request_payload 
+0x384e 011889 fetch 1 ,mem_car_config_motor_layout 
+0x384f 011890 store 1 ,mem_car_info_request_payload + 1 
+0x3850 011891 fetch 1 ,mem_car_config_ir_enable 
+0x3851 011892 store 1 ,mem_car_info_request_payload + 2 
+0x3852 011893 arg 13 ,loopcnt 
+0x3853 011894 arg mem_car_info_request_head ,contr 
+0x3854 011895 call calc_check_sum_start 
+0x3855 011896 store 1 ,mem_car_info_request_checksum 
+0x3856 011897 arg mem_car_info_request ,rega 
+0x3857 011898 branch queue_push 
+:      011904 light_init:
+0x3858 011905 call clear_eeprom_size_2k 
+0x3859 011906 jam 0x7a ,mem_curr_packet_num 
+0x385a 011907 call light_load_controler_list 
+0x385b 011908 call light_init_crr_cmd_count 
+0x385c 011909 setarg light_pairing_timer 
+0x385d 011910 store 2 ,mem_cb_event_timer 
+0x385e 011911 arg 0 ,rega 
+0x385f 011912 branch pwm_init 
+:      011914 light_pairing_timer:
+0x3860 011915 fetch 2 ,mem_light_pairing_timer 
+0x3861 011916 rtn blank 
+0x3862 011917 increase -1 ,pdata 
+0x3863 011918 store 2 ,mem_light_pairing_timer 
+0x3864 011919 rtnne 0 
+0x3865 011920 jam 0 ,mem_light_pairing_enable 
+0x3866 011921 rtn 
+:      011923 light_init_crr_cmd_count:
+0x3867 011924 bpatch patch1a_6 ,mem_patch1a 
+0x3868 011925 fetch 1 ,mem_light_next_record 
+0x3869 011926 sub pdata ,40 ,null 
+0x386a 011927 rtn positive 
+0x386b 011928 jam 0 ,mem_light_next_record 
+0x386c 011929 rtn 
+:      011931 light_load_controler_list:
+0x386d 011932 arg mem_light_next_record ,rega 
+0x386e 011933 arg 0 ,regb 
+0x386f 011934 arg 81 ,temp 
+0x3870 011935 branch iicd_read_eep_data 
+:      011938 light_find_controler_pairing:
+0x3871 011939 disable user 
+0x3872 011940 fetch 1 ,mem_light_cnum 
+0x3873 011941 copy pdata ,loopcnt 
+0x3874 011943 arg mem_light_clist ,rega 
+0x3875 011944 copy regc ,regb 
+:      011945 light_find_controler_pairing_loop:
+0x3876 011946 bpatch patch1a_7 ,mem_patch1a 
+0x3877 011947 call light_compare_addr_record 
+0x3878 011948 branch enable_user ,zero 
+:      011949 light_find_single_pairing_diff:
+0x3879 011950 increase 4 ,rega 
+0x387a 011951 loop light_find_controler_pairing_loop 
+0x387b 011952 rtn 
+:      011955 light_compare_addr_record:
+0x387c 011956 bpatch patch1b_0 ,mem_patch1b 
+0x387d 011957 ifetch 3 ,rega 
+0x387e 011958 ifetcht 3 ,regb 
+0x387f 011959 isub temp ,null 
+0x3880 011960 rtn 
+:      011962 light_compare_single_record:
+0x3881 011963 bpatch patch1b_1 ,mem_patch1b 
+0x3882 011964 ifetch 3 ,rega 
+0x3883 011965 ifetcht 3 ,regb 
+0x3884 011966 isub temp ,null 
+0x3885 011967 nrtn zero 
+0x3886 011968 ifetch 1 ,contr 
+0x3887 011969 sub pdata ,0 ,null 
+0x3888 011970 rtn zero 
+0x3889 011971 add rega ,3 ,contr 
+0x388a 011972 ifetcht 1 ,contr 
+0x388b 011973 isub temp ,null 
+0x388c 011974 rtn 
+:      011977 light_find_controler_cmd:
+0x388d 011978 bpatch patch1b_2 ,mem_patch1b 
+0x388e 011979 disable user 
+0x388f 011980 fetch 1 ,mem_light_cnum 
+0x3890 011981 copy pdata ,loopcnt 
+0x3891 011983 arg mem_light_clist ,rega 
+0x3892 011984 copy regc ,regb 
+:      011985 light_find_controler_cmd_loop:
+0x3893 011986 call light_compare_single_record 
+0x3894 011987 branch enable_user ,zero 
+0x3895 011988 increase 4 ,rega 
+0x3896 011989 loop light_find_controler_cmd_loop 
+0x3897 011990 rtn 
+:      011993 light_recv_adv:
+0x3898 011994 fetch 1 ,mem_le_scanrsp_rcv 
+0x3899 011995 increase 1 ,pdata 
+0x389a 011996 store 1 ,mem_le_scanrsp_rcv 
+0x389b 011997 arg mem_le_rxbuf + 12 ,regc 
+:      011999 light_anylize_command:
+0x389c 012000 ifetch 2 ,regc 
+0x389d 012001 arg 0x55aa ,temp 
+0x389e 012002 isub temp ,null 
+0x389f 012003 nrtn zero 
+0x38a0 012004 copy contr ,regc 
+0x38a1 012005 ifetcht 3 ,regc 
+0x38a2 012006 setarg 0xffffff 
+0x38a3 012007 isub temp ,null 
+0x38a4 012008 branch light_parse_cmd ,zero 
+0x38a5 012009 call light_find_controler_cmd 
+0x38a6 012010 branch light_parse_cmd ,user 
+0x38a7 012011 rtn 
+:      012013 light_parse_cmd:
+0x38a8 012014 bpatch patch1b_3 ,mem_patch1b 
+0x38a9 012015 increase 4 ,regc 
+0x38aa 012016 ifetch 1 ,regc 
+0x38ab 012017 fetcht 1 ,mem_curr_packet_num 
+0x38ac 012018 isub temp ,null 
+0x38ad 012019 rtn zero 
+0x38ae 012020 store 1 ,mem_curr_packet_num 
+0x38af 012021 fetch 1 ,mem_le_req_rcv 
+0x38b0 012022 increase 1 ,pdata 
+0x38b1 012023 store 1 ,mem_le_req_rcv 
+0x38b2 012025 increase 1 ,regc 
+0x38b3 012026 ifetch 1 ,regc 
+0x38b4 012027 store 1 ,mem_light_crr_cmd_count 
+0x38b5 012028 copy pdata ,loopcnt 
+0x38b6 012029 rtn blank 
+:      012030 light_parse_cmd_loop:
+0x38b7 012031 ifetch 1 ,contr 
+0x38b8 012032 beq light_cmd_pwm0 ,light_parse_cmd_pwm0 
+0x38b9 012033 beq light_cmd_pwm1 ,light_parse_cmd_pwm1 
+0x38ba 012034 beq light_cmd_pwm2 ,light_parse_cmd_pwm2 
+0x38bb 012035 beq light_cmd_pwm3 ,light_parse_cmd_pwm3 
+0x38bc 012036 beq light_cmd_pwm4 ,light_parse_cmd_pwm4 
+0x38bd 012037 beq light_cmd_pwm5 ,light_parse_cmd_pwm5 
+0x38be 012038 beq light_cmd_auto_mode ,light_parse_auto_mode 
+0x38bf 012039 beq light_cmd_pairing ,light_parse_pairing 
+0x38c0 012040 loop light_parse_cmd_loop 
+0x38c1 012041 rtn 
+:      012043 light_parse_cmd_pwm0:
+0x38c2 012044 copy contr ,regc 
+0x38c3 012045 fetch 1 ,mem_light_pwm0 
+0x38c4 012046 store 1 ,mem_pdatatemp 
+0x38c5 012047 arg 0 ,temp 
+:      012048 light_parse_cmd_pwm_common:
+0x38c6 012049 storet 1 ,mem_pdatatemp + 1 
+0x38c7 012050 setarg 10000 
+0x38c8 012051 store 3 ,mem_pdatatemp + 2 
+0x38c9 012052 ifetch 1 ,regc 
+0x38ca 012053 store 1 ,mem_pdatatemp + 5 
+0x38cb 012054 call pwm_out_set 
+0x38cc 012055 and regc ,1 ,contr 
+0x38cd 012056 loop light_parse_cmd_loop 
+0x38ce 012057 rtn 
+:      012058 light_parse_cmd_pwm1:
+0x38cf 012059 copy regc ,contr 
+0x38d0 012060 fetch 1 ,mem_light_pwm1 
+0x38d1 012061 store 1 ,mem_pdatatemp 
+0x38d2 012062 arg 1 ,temp 
+0x38d3 012063 branch light_parse_cmd_pwm_common 
+:      012064 light_parse_cmd_pwm2:
+0x38d4 012065 copy regc ,contr 
+0x38d5 012066 fetch 1 ,mem_light_pwm2 
+0x38d6 012067 store 1 ,mem_pdatatemp 
+0x38d7 012068 arg 2 ,temp 
+0x38d8 012069 branch light_parse_cmd_pwm_common 
+:      012070 light_parse_cmd_pwm3:
+0x38d9 012071 copy regc ,contr 
+0x38da 012072 fetch 1 ,mem_light_pwm3 
+0x38db 012073 store 1 ,mem_pdatatemp 
+0x38dc 012074 arg 3 ,temp 
+0x38dd 012075 branch light_parse_cmd_pwm_common 
+:      012076 light_parse_cmd_pwm4:
+0x38de 012077 copy regc ,contr 
+0x38df 012078 fetch 1 ,mem_light_pwm4 
+0x38e0 012079 store 1 ,mem_pdatatemp 
+0x38e1 012080 arg 4 ,temp 
+0x38e2 012081 branch light_parse_cmd_pwm_common 
+:      012082 light_parse_cmd_pwm5:
+0x38e3 012083 copy regc ,contr 
+0x38e4 012084 fetch 1 ,mem_light_pwm5 
+0x38e5 012085 store 1 ,mem_pdatatemp 
+0x38e6 012086 arg 5 ,temp 
+0x38e7 012087 branch light_parse_cmd_pwm_common 
+:      012089 light_parse_auto_mode:
+0x38e8 012090 ifetch 1 ,contr 
+0x38e9 012091 rtn 
+:      012093 light_parse_pairing:
+0x38ea 012094 copy contr ,regc 
+0x38eb 012095 fetch 1 ,mem_light_pairing_enable 
+0x38ec 012096 bne 1 ,light_parse_pairing_abandon 
+0x38ed 012097 call update_controler_list 
+:      012098 light_parse_pairing_abandon:
+0x38ee 012099 and regc ,4 ,contr 
+0x38ef 012100 rtn 
+:      012101 update_controler_list:
+0x38f0 012102 bpatch patch1b_4 ,mem_patch1b 
+0x38f1 012103 call light_find_controler_pairing 
+0x38f2 012104 branch update_conrtoler_list_found ,user 
+0x38f3 012105 fetch 1 ,mem_light_next_record 
+0x38f4 012106 copy pdata ,temp 
+0x38f5 012107 increase 1 ,pdata 
+0x38f6 012108 store 1 ,mem_light_next_record 
+0x38f7 012109 call light_init_crr_cmd_count 
+0x38f8 012110 lshift2 temp ,temp 
+0x38f9 012111 setarg mem_light_clist 
+0x38fa 012112 iadd temp ,contw 
+0x38fb 012113 ifetch 4 ,regc 
+0x38fc 012114 istore 4 ,contw 
+0x38fd 012115 branch update_conrtoler_store_list 
+:      012116 update_conrtoler_list_found:
+0x38fe 012117 add regc ,3 ,contr 
+0x38ff 012118 ifetch 1 ,contr 
+0x3900 012119 rtn blank 
+0x3901 012120 ifetch 4 ,regc 
+0x3902 012121 istore 4 ,rega 
+:      012122 update_conrtoler_store_list:
+0x3903 012123 arg mem_light_next_record ,rega 
+0x3904 012124 arg 0 ,regb 
+0x3905 012125 arg 81 ,temp 
+0x3906 012126 branch iicd_write_eep_data 
+:      012130 lightc_init:
+0x3907 012134 fetcht 1 ,mem_lightc_led_gpio 
+0x3908 012135 call gpio_out_inactive 
+0x3909 012136 rtn 
+:      012139 lightc_dispatch:
+0x390a 012142 fetcht 1 ,mem_lightc_led_gpio 
+0x390b 012143 call gpio_out_active 
+0x390c 012146 fetcht 1 ,mem_lightc_led_gpio 
+0x390d 012147 call gpio_out_inactive 
+0x390e 012150 call lightc_start_adv 
+0x390f 012152 fetch 1 ,mem_adv_time 
+0x3910 012153 nrtn blank 
+0x3911 012155 call lpm_write_gpio_wakeup 
+0x3912 012156 hfetch 4 ,core_lpm_ctrl 
+0x3913 012157 set0 15 ,pdata 
+0x3914 012158 hstore 4 ,core_lpm_reg 
+0x3915 012159 call lpm_write_ctrl 
+0x3916 012160 arg param_hibernate_clks ,temp 
+0x3917 012161 branch lpm_sleep 
+:      012163 lightc_adv:
+0x3918 012164 fetch 1 ,mem_adv_time 
+0x3919 012165 branch le_adv_loop_tx ,blank 
+0x391a 012166 increase -1 ,pdata 
+0x391b 012167 store 1 ,mem_adv_time 
+0x391c 012168 branch le_adv_loop_tx 
+:      012170 lightc_start_adv:
+0x391d 012171 mul32 pdata ,20 ,pdata 
+0x391e 012172 arg mem_cmd0_string ,contr 
+0x391f 012173 iadd contr ,contr 
+0x3920 012174 ifetch 1 ,contr 
+0x3921 012175 rtn blank 
+0x3922 012176 copy pdata ,rega 
+0x3923 012177 copy rega ,loopcnt 
+0x3924 012178 arg mem_le_adv_data + 2 ,contw 
+0x3925 012179 call memcpy 
+0x3926 012180 copy rega ,pdata 
+0x3927 012181 increase 2 ,pdata 
+0x3928 012182 store 1 ,mem_le_adv_data_len 
+0x3929 012183 rtn 
+:      012190 module_init:
+0x392a 012192 rtn wake 
+0x392b 012193 call le_modified_name 
+0x392c 012194 call adc_init_data 
+0x392d 012195 setarg module_process_idle 
+0x392e 012196 store 2 ,mem_cb_idle_process 
+0x392f 012197 setarg module_bt_conn_process 
+0x3930 012198 store 2 ,mem_cb_bt_process 
+0x3931 012199 setarg module_process_bb_event 
+0x3932 012200 store 2 ,mem_cb_bb_event_process 
+0x3933 012201 setarg module_le_conn_process 
+0x3934 012202 store 2 ,mem_cb_le_process 
+0x3935 012203 setarg module_lpm_lock 
+0x3936 012204 store 2 ,mem_cb_check_wakelock 
+0x3937 012205 setarg module_hci_cmd_transmit_le_notify 
+0x3938 012206 store 2 ,mem_cb_ble_transmit 
+0x3939 012207 setarg module_hci_event_receive_spp_data 
+0x393a 012208 store 2 ,mem_cb_receive_spp_data 
+0x393b 012209 setarg module_le_receive_data 
+0x393c 012210 store 2 ,mem_cb_att_write 
+0x393d 012211 setarg module_bb_event_timer 
+0x393e 012212 store 2 ,mem_cb_event_timer 
+0x393f 012214 call module_spp_clear_last_transmite_clock 
+0x3940 012215 bpatch patch1b_5 ,mem_patch1b 
+0x3941 012216 call module_lpm_uart_init 
+0x3942 012217 call module_gpio_init 
+0x3943 012218 call check_module_disabled 
+0x3944 012219 branch module_hci_event_enter_standby_mode 
+:      012222 module_lpm_uart_init:
+0x3945 012223 fetch 4 ,mem_module_uart_rx_buffer 
+0x3946 012224 hstore 4 ,core_uart_rsaddr 
+0x3947 012226 fetch 4 ,mem_module_uart_tx_buffer 
+0x3948 012227 hstore 4 ,core_uart_tsaddr 
+0x3949 012229 hfetch 1 ,core_gpio_sel1 
+0x394a 012230 or_into 0x04 ,pdata 
+0x394b 012231 and_into 0xfc ,pdata 
+0x394c 012232 hstore 1 ,core_gpio_sel1 
+0x394d 012233 jam 0x00 ,core_uart_ctrl 
+0x394e 012235 fetch 2 ,mem_module_uart_rx_buffer 
+0x394f 012236 hstore 2 ,core_uart_rrptr 
+0x3950 012237 fetch 2 ,mem_module_uart_tx_buffer 
+0x3951 012238 hstore 2 ,core_uart_twptr 
+0x3952 012239 hstore 2 ,core_uart_trptrp 
+0x3953 012241 hfetch 4 ,core_gpio_pu0 
+0x3954 012242 set1 7 ,pdata 
+0x3955 012243 hstore 4 ,core_gpio_pu0 
+0x3956 012245 hfetch 2 ,core_clkoff 
+0x3957 012246 set0 clock_off_uart ,pdata 
+0x3958 012247 hstore 2 ,core_clkoff 
+0x3959 012248 call uart_set_baud_by_mem 
+0x395a 012249 jam uartclk_crystal ,core_uart_clksel 
+0x395b 012250 jam uart_ctrl_h4 ,core_uart_ctrl 
+0x395c 012252 fetch 1 ,mem_module_flag 
+0x395d 012253 isolate1 module_flag_uart_flow_control ,pdata 
+0x395e 012254 hfetcht 1 ,core_uart_ctrl 
+0x395f 012255 setflag true ,4 ,temp 
+0x3960 012256 hstoret 1 ,core_uart_ctrl 
+0x3961 012257 rtn 
+:      012261 module_lpm_init:
+0x3962 012262 call module_spp_clear_last_transmite_clock 
+0x3963 012263 branch module_lpm_uart_init 
+:      012266 module_gpio_init:
+0x3964 012271 fetcht 1 ,mem_module_connect_state_gpio 
+0x3965 012272 call gpio_config_output 
+0x3966 012273 call module_set_conn_pin_low 
+0x3967 012275 fetcht 1 ,mem_module_wake_up_gpio 
+0x3968 012276 branch gpio_config_input 
+:      012278 module_lpm_lock:
+0x3969 012279 fetcht 1 ,mem_module_wake_up_gpio 
+0x396a 012280 call gpio_get_bit 
+0x396b 012281 nbranch app_put_lpm_wake_lock ,true 
+0x396c 012282 branch app_get_lpm_wake_lock 
+:      012285 module_le_conn_process:
+0x396d 012286 rtn 
+:      012288 module_bt_conn_process:
+0x396e 012289 call module_spp_enter_sniff 
+0x396f 012290 branch module_control_air_flow 
+:      012292 module_spp_enter_sniff:
+0x3970 012293 fetch 1 ,mem_ui_state_map 
+0x3971 012294 bbit0 ui_state_bt_spp_conn ,module_spp_clear_last_transmite_clock 
+0x3972 012295 bpatch patch1b_6 ,mem_patch1b 
+0x3973 012296 setarg 0x3eff 
+0x3974 012297 fetcht 4 ,mem_last_transmite_clock 
+0x3975 012298 iadd temp ,temp 
+0x3976 012299 copy clkn_bt ,pdata 
+0x3977 012300 isub temp ,null 
+0x3978 012301 nrtn positive 
+0x3979 012302 fetch 2 ,mem_ui_state_map 
+0x397a 012303 bbit1 ui_state_bt_sniff ,module_spp_clear_last_transmite_clock 
+0x397b 012304 fetch 1 ,mem_module_flag 
+0x397c 012305 rtnbit1 moudle_task_sniff 
+0x397d 012306 call module_set_sniff_task_flag 
+0x397e 012307 call app_bt_enter_sniff 
+:      012308 module_spp_clear_last_transmite_clock:
+0x397f 012309 copy clkn_bt ,pdata 
+0x3980 012310 store 4 ,mem_last_transmite_clock 
+0x3981 012311 rtn 
+:      012314 module_process_idle:
+0x3982 012315 call module_control_air_flow 
+0x3983 012316 call l2cap_malloc_is_fifo_full 
+0x3984 012317 nrtn blank 
+0x3985 012318 branch module_process 
+:      012321 module_process_bb_event:
+0x3986 012322 copy regc ,pdata 
+0x3987 012323 beq bt_evt_bb_connected ,module_process_bb_conn 
+0x3988 012324 beq bt_evt_bb_disconnected ,module_process_bb_event_disconned 
+0x3989 012325 beq bt_evt_reconn_failed ,module_process_reconn_fail 
+0x398a 012326 beq bt_evt_setup_complete ,module_process_setup_complete 
+0x398b 012327 beq bt_evt_spp_connected ,module_process_spp_connected 
+0x398c 012328 beq bt_evt_spp_disconnected ,module_process_spp_disconnected 
+0x398d 012329 beq bt_evt_pincode_req ,module_process_evt_pincode_req 
+0x398e 012330 beq bt_evt_enter_sniff ,module_process_enter_sniff 
+0x398f 012331 beq bt_evt_exit_sniff ,module_process_exit_sniff 
+0x3990 012332 beq bt_evt_reconn_page_timeout ,module_process_page_time_out 
+0x3991 012333 beq bt_evt_le_connected ,module_process_le_conn 
+0x3992 012334 beq bt_evt_le_disconnected ,module_process_bb_even_le_disconn 
+0x3993 012335 beq bt_evt_sniff_not_accept ,module_process_sniff_not_accept 
+0x3994 012336 beq bt_evt_unsniff_accept ,module_process_unsniff_accept 
+0x3995 012337 beq bt_evt_unsniff_not_accept ,module_process_unsniff_not_accept 
+0x3996 012338 beq bt_evt_le_pairing_fail ,module_hci_event_le_pairing_fail 
+0x3997 012339 beq bt_evt_le_pairing_success ,module_hci_event_le_pairing_success 
+0x3998 012340 beq bt_evt_le_start_enc ,module_hci_event_start_enc 
+0x3999 012341 beq bt_evt_le_pause_enc ,module_hci_event_pause_enc 
+0x399a 012342 beq bt_evt_le_tk_generate ,module_hci_event_le_tk 
+0x399b 012343 beq bt_evt_bt_gkey_generate ,module_hci_event_gkey_generate 
+0x399c 012344 beq bt_evt_bt_get_passkey ,module_hci_event_passkey_entry_mode 
+0x399d 012345 beq bt_evt_bt_pairing_fail ,module_hci_event_bt_pairing_fail 
+0x399e 012346 beq bt_evt_bt_pairing_success ,module_hci_event_bt_pairing_success 
+0x399f 012347 beq bt_evt_le_gkey_generate ,module_hci_event_le_gkey 
+0x39a0 012348 beq bt_evt_store_nvram ,module_hci_event_store_device 
+0x39a1 012349 beq bt_evt_le_ltk_lost ,module_process_ble_ltk_lost 
+0x39a2 012350 rtn 
+:      012353 module_process_bb_event_disconned:
+0x39a3 012354 call module_spp_clear_last_transmite_clock 
+0x39a4 012355 fetch 1 ,mem_flag_pairing_state 
+0x39a5 012356 ncall module_hci_event_bt_pairing_fail ,blank 
+0x39a6 012357 call module_disconn_start 
+0x39a7 012358 fetch 2 ,mem_ui_state_map 
+0x39a8 012359 rtnbit0 ui_state_bt_spp_conn 
+0x39a9 012360 branch module_spp_disconnected 
+:      012362 module_process_spp_connected:
+0x39aa 012363 fetch 2 ,mem_ui_state_map 
+0x39ab 012364 set1 ui_state_bt_spp_conn ,pdata 
+0x39ac 012365 store 2 ,mem_ui_state_map 
+0x39ad 012366 fetch 1 ,mem_module_spp_lpm_mult 
+0x39ae 012367 store 1 ,mem_lpm_mult 
+0x39af 012368 call module_set_conn_pin_low 
+0x39b0 012369 branch module_hci_event_spp_connect 
+:      012371 module_process_spp_disconnected:
+:      012373 module_spp_disconnected:
+0x39b1 012374 fetch 2 ,mem_ui_state_map 
+0x39b2 012375 rtnbit0 ui_state_bt_spp_conn 
+0x39b3 012376 set0 ui_state_bt_spp_conn ,pdata 
+0x39b4 012377 store 2 ,mem_ui_state_map 
+0x39b5 012378 branch module_hci_event_spp_disconnect 
+:      012381 module_process_enter_sniff:
+:      012383 module_sniff_param_check:
+0x39b6 012384 call module_spp_clear_last_transmite_clock 
+0x39b7 012387 fetch 2 ,mem_context + coffset_tsniff 
+0x39b8 012388 rshift pdata ,pdata 
+0x39b9 012389 fetcht 2 ,mem_sniff_param_interval 
+0x39ba 012390 isub temp ,null 
+0x39bb 012391 nbranch module_sniff_param_check_unsniff ,zero 
+0x39bc 012392 branch app_lpm_mult_enable 
+:      012393 module_sniff_param_check_unsniff:
+0x39bd 012394 fetch 1 ,mem_module_flag 
+0x39be 012395 rtnbit1 moudle_task_unsniff 
+0x39bf 012396 hfetch 2 ,core_uart_rxitems 
+0x39c0 012397 ncall module_set_unsniff_task_flag ,blank 
+0x39c1 012398 branch app_bt_sniff_exit 
+:      012400 module_process_exit_sniff:
+0x39c2 012401 call module_clear_sniff_task_flag 
+0x39c3 012402 branch app_lpm_mult_disable 
+:      012404 module_process_setup_complete:
+0x39c4 012405 call module_spp_clear_last_transmite_clock 
+0x39c5 012406 branch module_conn_start 
+:      012408 module_process_bb_even_le_disconn:
+0x39c6 012409 call le_clr_config_more_data 
+0x39c7 012410 call module_disconn_start 
+0x39c8 012411 branch module_hci_event_le_disconnect 
+:      012413 module_process_evt_pincode_req:
+0x39c9 012414 branch app_bt_set_pincode 
+:      012417 module_process_sniff_not_accept:
+0x39ca 012418 branch module_clear_sniff_task_flag 
+:      012421 module_process_unsniff_accept:
+0x39cb 012422 fetch 1 ,mem_module_flag 
+0x39cc 012423 bbit0 moudle_task_unsniff ,app_bt_enter_sniff 
+0x39cd 012424 branch module_clear_unsniff_task_flag 
+:      012427 module_process_unsniff_not_accept:
+0x39ce 012428 branch module_clear_unsniff_task_flag 
+:      012431 module_process_le_conn:
+0x39cf 012432 call le_send_att_exchange_mtu_requset 
+0x39d0 012433 call module_conn_start 
+0x39d1 012434 fetch 1 ,mem_module_le_lpm_mult 
+0x39d2 012435 store 1 ,mem_lpm_mult 
+0x39d3 012436 branch module_hci_event_le_connect 
+:      012439 module_process_bb_conn:
+0x39d4 012440 jam 0 ,mem_flag_mode_ssp_pin 
+0x39d5 012441 call module_clear_sniff_task_flag 
+0x39d6 012442 branch module_clear_unsniff_task_flag 
+:      012444 module_process_page_time_out:
+:      012445 module_process_reconn_fail:
+:      012446 module_disconn_start:
+0x39d7 012447 call module_start_adv_discovery_by_command 
+0x39d8 012448 branch module_set_conn_pin_high 
+:      012451 module_process_ble_ltk_lost:
+0x39d9 012452 call le_send_reject_ind 
+0x39da 012453 branch le_send_smp_security_request 
+:      012456 module_set_conn_pin_high:
+0x39db 012457 fetcht 1 ,mem_module_connect_state_gpio 
+0x39dc 012458 branch gpio_out_active 
+:      012460 module_conn_start:
+0x39dd 012461 call module_stop_adv_discovery 
+0x39de 012462 branch module_set_conn_pin_low 
+:      012464 module_stop_adv_discovery:
+0x39df 012465 fetch 1 ,mem_module_state 
+0x39e0 012466 isolate1 moudle_state_bt_bit ,pdata 
+0x39e1 012467 call app_bt_stop_discovery ,true 
+0x39e2 012468 fetch 1 ,mem_module_state 
+0x39e3 012469 isolate1 moudle_state_ble_bit ,pdata 
+0x39e4 012470 call app_ble_stop_adv ,true 
+0x39e5 012471 rtn 
+:      012472 module_set_conn_pin_low:
+0x39e6 012473 fetcht 1 ,mem_module_connect_state_gpio 
+0x39e7 012474 branch gpio_out_inactive 
+:      012476 module_process_with_credit:
+0x39e8 012477 fetch 1 ,mem_credit_flag 
+0x39e9 012478 rtneq credit_disable 
+0x39ea 012479 branch rfcomm_send_uih_without_payload 
+:      012481 module_process:
+0x39eb 012482 hfetch 1 ,core_uart_status 
+0x39ec 012483 bbit1 uart_status_rx_fifo_empty ,module_process_with_credit 
+0x39ed 012484 call uartd_prepare_rx 
+0x39ee 012485 ifetch 1 ,contru 
+0x39ef 012486 bne 0x01 ,module_hci_in_excp 
+0x39f0 012487 hfetch 2 ,core_uart_rxitems 
+0x39f1 012488 sub pdata ,2 ,null 
+0x39f2 012489 rtn positive 
+0x39f3 012490 ifetch 1 ,contru 
+0x39f4 012491 store 1 ,mem_module_uart_opcode 
+0x39f5 012492 ifetcht 1 ,contru 
+0x39f6 012493 copy contru ,rega 
+0x39f7 012494 storet 1 ,mem_module_uart_len 
+0x39f8 012495 add temp ,3 ,temp 
+0x39f9 012496 hfetch 2 ,core_uart_rxitems 
+0x39fa 012497 isub temp ,temp 
+0x39fb 012498 nrtn positive 
+0x39fc 012499 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x39fd 012500 call module_hci_cmd_control 
+0x39fe 012501 fetch 1 ,mem_module_temp_nl_discard_packet 
+0x39ff 012502 rtneq hci_not_discard_packet 
+0x3a00 012503 branch module_hci_dicard_packet 
+:      012505 module_hci_in_excp:
+0x3a01 012506 call delay_10ms 
+0x3a02 012507 call module_hci_event_invalid_packet 
+0x3a03 012508 branch module_hci_release_except 
+:      012511 module_hci_release_except:
+0x3a04 012512 bpatch patch1b_7 ,mem_patch1b 
+0x3a05 012513 hfetch 2 ,core_uart_rxitems 
+0x3a06 012514 rtn blank 
+0x3a07 012515 call uartd_prepare_rx 
+0x3a08 012516 ifetch 1 ,contru 
+0x3a09 012517 sub pdata ,0x01 ,null 
+0x3a0a 012518 ncall module_hci_dicard_bytes ,zero 
+0x3a0b 012519 nbranch module_hci_release_except ,zero 
+0x3a0c 012520 ifetch 1 ,contru 
+0x3a0d 012521 rtneq hci_cmd_spp_data_req 
+0x3a0e 012522 rtneq hci_cmd_set_credit_given 
+0x3a0f 012523 increase -1 ,contru 
+0x3a10 012524 call module_hci_dicard_bytes 
+0x3a11 012525 branch module_hci_release_except 
+:      012527 module_hci_dicard_packet:
+0x3a12 012528 call uartd_prepare_rx 
+0x3a13 012529 increase 2 ,contru 
+0x3a14 012530 ifetch 1 ,contru 
+0x3a15 012531 iadd contru ,contru 
+:      012532 module_hci_dicard_bytes:
+0x3a16 012533 branch uartd_rxdone 
+:      012536 module_hci_cmd_control:
+0x3a17 012537 bpatch patch1c_0 ,mem_patch1c 
+0x3a18 012538 fetch 1 ,mem_module_uart_opcode 
+0x3a19 012539 beq hci_cmd_set_bt_addr_req ,module_hci_cmd_set_bt_addr 
+0x3a1a 012540 beq hci_cmd_set_le_addr_req ,module_hci_cmd_set_le_addr 
+0x3a1b 012541 beq hci_cmd_set_visibility_req ,module_hci_cmd_set_visibility 
+0x3a1c 012542 beq hci_cmd_set_bt_name_req ,module_hci_cmd_set_bt_name 
+0x3a1d 012543 beq hci_cmd_set_le_name_req ,module_hci_cmd_set_le_name 
+0x3a1e 012544 beq hci_cmd_spp_data_req ,module_hci_cmd_receive_spp_data 
+0x3a1f 012545 beq hci_cmd_le_data_req ,module_hci_cmd_receive_le_data 
+0x3a20 012546 beq hci_cmd_status_irq ,module_hci_cmd_inquire_status 
+0x3a21 012547 beq hci_cmd_set_pairing_req ,module_hci_cmd_set_pairing_mode 
+0x3a22 012548 beq hci_cmd_set_pincode_req ,module_hci_cmd_set_pincode 
+0x3a23 012549 beq hci_cmd_set_uartcontrol_req ,module_hci_cmd_set_uart_control_mode 
+0x3a24 012550 beq hci_cmd_set_uart_baud_req ,module_hci_cmd_set_uart_baud 
+0x3a25 012551 beq hci_cmd_version_req ,module_hci_cmd_version_request 
+0x3a26 012552 beq hci_cmd_bt_disconnect ,module_hci_cmd_bt_disconnect 
+0x3a27 012553 beq hci_cmd_ble_disconnect ,module_hci_cmd_ble_disconnect 
+0x3a28 012554 beq hci_cmd_set_nvram_req ,module_hci_cmd_set_nvram 
+0x3a29 012555 beq hci_cmd_confirm_gkey ,module_hci_cmd_confirm_gkey 
+0x3a2a 012556 beq hci_cmd_set_credit_given ,module_hci_cmd_set_credit_given 
+0x3a2b 012557 beq hci_cmd_auto_adv_scan ,module_hci_cmd_auto_adv 
+0x3a2c 012558 beq hci_cmd_power_req ,module_hci_cmd_power_request 
+0x3a2d 012559 beq hci_cmd_power_set ,module_hci_cmd_power_set 
+0x3a2e 012560 beq hci_cmd_passkey_entry ,module_hci_cmd_passkey_entry 
+0x3a2f 012561 beq hci_cmd_set_gpio ,module_hci_cmd_set_gpio 
+0x3a30 012562 beq hci_cmd_read_gpio ,module_hci_cmd_read_gpio 
+0x3a31 012563 beq hci_cmd_le_set_pairing ,module_hci_cmd_le_set_pairing_mode 
+0x3a32 012564 beq hci_cmd_le_set_adv_data ,module_hci_cmd_le_set_adv_data 
+0x3a33 012565 beq hci_cmd_le_set_scan_data ,module_hci_cmd_le_set_scan_data 
+0x3a34 012566 beq hci_cmd_le_send_conn_update_req ,module_hci_cmd_le_send_conn_update_req 
+0x3a35 012567 beq hci_cmd_le_set_adv_parm ,module_hci_cmd_set_le_adv_parameter 
+0x3a36 012568 beq hci_cmd_le_start_pairing ,module_hci_cmd_le_start_pairing 
+0x3a37 012569 beq hci_cmd_set_wake_gpio ,module_hci_cmd_set_wake_gpio 
+0x3a38 012570 beq hci_cmd_set_tx_power ,module_hci_cmd_set_tx_power 
+0x3a39 012571 beq hci_cmd_le_confirm_gkey ,module_hci_cmd_le_confirm_gkey 
+0x3a3a 012572 beq hci_cmd_reject_justwork ,module_hci_cmd_set_reject_justwork_flag 
+0x3a3b 012573 beq hci_cmd_reset_chip_req ,module_hci_cmd_reset_chip 
+0x3a3c 012574 beq hci_cmd_le_set_fixed_passkey ,module_hci_cmd_le_set_fixed_passkey 
+0x3a3d 012575 beq hci_test_cmd_close_lpm ,module_hci_test_cmde_close_lpm 
+0x3a3e 012576 branch module_hci_event_receive_invalid_cmd 
+:      012581 module_hci_cmd_set_bt_addr:
+0x3a3f 012582 fetch 1 ,mem_module_uart_len 
+0x3a40 012583 bne 6 ,module_hci_event_receive_invalid_cmd 
+0x3a41 012584 ifetch 6 ,contru 
+0x3a42 012585 store 6 ,mem_lap 
+0x3a43 012586 branch module_hci_event_receive_valid_cmd 
+:      012589 module_hci_cmd_set_le_addr:
+0x3a44 012590 fetch 1 ,mem_module_uart_len 
+0x3a45 012591 bne 6 ,module_hci_event_receive_invalid_cmd 
+0x3a46 012592 ifetch 6 ,contru 
+0x3a47 012593 store 6 ,mem_le_lap 
+0x3a48 012594 branch module_hci_event_receive_valid_cmd 
+:      012598 module_hci_cmd_set_visibility:
+0x3a49 012599 fetch 1 ,mem_module_uart_len 
+0x3a4a 012600 bne 1 ,module_hci_event_receive_invalid_cmd 
+0x3a4b 012601 copy rega ,contru 
+0x3a4c 012602 call module_hci_event_receive_valid_cmd 
+0x3a4d 012603 ifetcht 1 ,contru 
+0x3a4e 012604 storet 1 ,mem_module_bluetooth_stauts_by_command 
+0x3a4f 012605 fetch 2 ,mem_ui_state_map 
+0x3a50 012606 rtnbit1 ui_state_ble_connected 
+0x3a51 012607 rtnbit1 ui_state_bt_connected 
+:      012608 module_start_adv_discovery_by_command:
+0x3a52 012609 fetch 1 ,mem_module_state 
+0x3a53 012610 isolate1 moudle_state_bt_bit ,pdata 
+0x3a54 012611 nbranch moudle_start_adv_by_command ,true 
+0x3a55 012612 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
+0x3a56 012613 and temp ,0x03 ,pdata 
+0x3a57 012614 store 1 ,mem_scan_mode 
+:      012615 moudle_start_adv_by_command:
+0x3a58 012616 fetch 1 ,mem_module_state 
+0x3a59 012617 isolate1 moudle_state_ble_bit ,pdata 
+0x3a5a 012618 nrtn true 
+0x3a5b 012619 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
+0x3a5c 012620 isolate1 2 ,temp 
+0x3a5d 012621 branch app_ble_start_adv ,true 
+0x3a5e 012622 branch app_ble_stop_adv 
+:      012626 module_hci_cmd_set_bt_name:
+0x3a5f 012627 fetch 1 ,mem_module_uart_len 
+0x3a60 012628 sub pdata ,67 ,null 
+0x3a61 012629 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3a62 012630 store 1 ,mem_local_name_length 
+0x3a63 012631 arg 8 ,loopcnt 
+0x3a64 012632 call memset0 
+0x3a65 012633 fetch 1 ,mem_module_uart_len 
+0x3a66 012634 copy pdata ,loopcnt 
+0x3a67 012635 copy rega ,contru 
+0x3a68 012636 arg mem_local_name ,contw 
+0x3a69 012637 call uart_copy_rx_bytes_fast 
+0x3a6a 012638 branch module_hci_event_receive_valid_cmd 
+:      012642 module_hci_cmd_set_le_name:
+0x3a6b 012643 fetch 1 ,mem_module_uart_len 
+0x3a6c 012644 sub pdata ,29 ,null 
+0x3a6d 012645 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3a6e 012646 store 1 ,mem_le_name_len 
+0x3a6f 012647 copy pdata ,loopcnt 
+0x3a70 012648 copy rega ,contru 
+0x3a71 012649 arg mem_le_name ,contw 
+0x3a72 012650 call uart_copy_rx_bytes_fast 
+0x3a73 012651 call le_modified_name 
+0x3a74 012652 branch module_hci_event_receive_valid_cmd 
+:      012656 module_hci_cmd_receive_spp_data:
+0x3a75 012657 fetch 1 ,mem_ui_state_map 
+0x3a76 012658 bbit0 ui_state_bt_spp_conn ,module_hci_event_receive_invalid_cmd 
+0x3a77 012659 call app_check_sniff 
+0x3a78 012660 branch module_hci_cmd_spp_exit_sniff ,true 
+0x3a79 012661 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a7a 012663 call module_spp_clear_last_transmite_clock 
+0x3a7b 012664 fetch 1 ,mem_remote_credits 
+0x3a7c 012665 rtn blank 
+0x3a7d 012666 fetch 2 ,mem_nl_rx_len_all 
+0x3a7e 012667 bne 0 ,module_hci_cmd_pass_init_ng_rx_len_all 
+0x3a7f 012668 fetch 1 ,mem_module_uart_len 
+0x3a80 012669 store 2 ,mem_nl_rx_len_all 
+0x3a81 012671 copy rega ,contru 
+0x3a82 012674 copy contru ,pdata 
+0x3a83 012675 store 2 ,mem_nl_rx_data_src 
+:      012676 module_hci_cmd_pass_init_ng_rx_len_all:
+0x3a84 012677 call module_hci_cmd_get_current_packet_len_and_remain_len 
+0x3a85 012678 branch spp_tx_rfcomm_packet 
+:      012680 module_hci_cmd_spp_exit_sniff:
+0x3a86 012681 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a87 012682 branch module_exit_sniff 
+:      012684 module_hci_cmd_get_current_packet_len_and_remain_len:
+0x3a88 012685 call module_hci_cmd_get_current_patcket_len 
+0x3a89 012686 fetch 2 ,mem_nl_rx_len_all 
+0x3a8a 012687 fetcht 2 ,mem_current_packet_length 
+0x3a8b 012688 isub temp ,pdata 
+0x3a8c 012689 store 2 ,mem_nl_rx_len_all 
+0x3a8d 012690 rtn 
+:      012692 module_hci_cmd_get_current_patcket_len:
+0x3a8e 012693 fetch 2 ,mem_nl_rx_len_all 
+0x3a8f 012694 arg dm_refcom_buff_len ,temp 
+0x3a90 012695 call not_greater_than 
+0x3a91 012696 fetcht 2 ,mem_rfcomm_max_frame_size 
+0x3a92 012697 call not_greater_than 
+0x3a93 012698 fetcht 2 ,mem_pn_max_frame_size 
+0x3a94 012699 call not_greater_than 
+0x3a95 012700 store 2 ,mem_current_packet_length 
+0x3a96 012701 rtn 
+:      012703 module_hci_command_tx_spp_tx_complete:
+0x3a97 012704 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a98 012705 jam hci_cmd_spp_data_req ,mem_module_uart_opcode 
+0x3a99 012706 branch module_hci_event_receive_valid_cmd 
+:      012710 module_hci_cmd_receive_le_data:
+0x3a9a 012711 fetch 2 ,mem_ui_state_map 
+0x3a9b 012712 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+0x3a9c 012713 call module_check_ble_encrypt_state 
+0x3a9d 012714 branch module_hci_event_receive_invalid_cmd ,user 
+0x3a9e 012715 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a9f 012716 fetch 1 ,mem_module_flag 
+0x3aa0 012717 bbit1 module_flag_ble_data_finish ,module_hci_cmd_receive_le_data_finish 
+0x3aa1 012718 fetch 1 ,mem_module_hci_notify_len 
+0x3aa2 012719 nrtn blank 
+0x3aa3 012720 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3aa4 012721 ifetch 2 ,contru 
+0x3aa5 012722 store 2 ,mem_module_hci_notify_handle 
+0x3aa6 012723 copy contru ,pdata 
+0x3aa7 012724 store 2 ,mem_module_hci_nofiy_addr 
+0x3aa8 012725 fetch 1 ,mem_module_uart_len 
+0x3aa9 012726 pincrease -2 
+0x3aaa 012727 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3aab 012728 branch module_hci_event_receive_invalid_cmd ,zero 
+0x3aac 012729 store 1 ,mem_module_hci_notify_len 
+0x3aad 012730 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3aae 012731 call le_set_config_more_data 
+0x3aaf 012732 call module_hci_cmd_transmit_le_notify 
+0x3ab0 012733 call module_hci_cmd_transmit_le_notify 
+0x3ab1 012734 call module_hci_cmd_transmit_le_notify 
+0x3ab2 012735 fetch 1 ,mem_module_flag 
+0x3ab3 012736 rtnbit0 module_flag_ble_data_finish 
+:      012737 module_hci_cmd_receive_le_data_finish:
+0x3ab4 012738 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3ab5 012739 call module_clear_le_tx_data_flag 
+0x3ab6 012740 branch module_hci_event_receive_valid_cmd 
+:      012742 module_hci_cmd_transmit_le_notify:
+0x3ab7 012743 fetch 1 ,mem_module_hci_notify_len 
+0x3ab8 012744 rtn blank 
+0x3ab9 012745 call le_fifo_check_nearly_full 
+0x3aba 012746 nrtn blank 
+0x3abb 012747 call module_get_le_remote_mtu 
+0x3abc 012748 bpatch patch1c_1 ,mem_patch1c 
+0x3abd 012749 add temp ,-3 ,pdata 
+0x3abe 012750 fetcht 1 ,mem_module_hci_notify_len 
+0x3abf 012751 call not_greater_than 
+0x3ac0 012752 copy pdata ,rega 
+0x3ac1 012753 copy temp ,pdata 
+0x3ac2 012754 isub rega ,pdata 
+0x3ac3 012755 store 1 ,mem_module_hci_notify_len 
+0x3ac4 012756 fetcht 2 ,mem_module_hci_notify_handle 
+0x3ac5 012757 call le_att_malloc_tx_notify 
+0x3ac6 012758 fetch 2 ,mem_module_hci_nofiy_addr 
+0x3ac7 012759 copy pdata ,contru 
+0x3ac8 012760 copy rega ,loopcnt 
+0x3ac9 012761 call uart_copy_rx_bytes_fast 
+0x3aca 012762 copy contru ,pdata 
+0x3acb 012763 store 2 ,mem_module_hci_nofiy_addr 
+0x3acc 012764 fetch 1 ,mem_module_hci_notify_len 
+0x3acd 012765 nrtn blank 
+0x3ace 012766 branch module_set_le_tx_data_flag 
+:      012770 module_get_le_remote_mtu:
+0x3acf 012771 arg 0x17 ,temp 
+0x3ad0 012772 fetch 1 ,mem_module_flag 
+0x3ad1 012773 rtnbit1 module_flag_ble_send_mtu23 
+0x3ad2 012774 fetcht 2 ,mem_le_remote_mtu 
+0x3ad3 012775 rtn 
+:      012777 module_check_ble_encrypt_state:
+0x3ad4 012778 fetch 1 ,mem_module_flag 
+0x3ad5 012779 bbit1 module_flag_ble_data_encrypt ,le_check_encrypt_state 
+0x3ad6 012780 branch disable_user 
+:      012784 module_hci_cmd_inquire_status:
+0x3ad7 012785 branch module_hci_event_status_res 
+:      012789 module_hci_cmd_set_pairing_mode:
+0x3ad8 012790 copy rega ,contru 
+0x3ad9 012791 ifetch 1 ,contru 
+0x3ada 012792 beq pairing_pincode ,module_hci_pairing_pincode_mode 
+0x3adb 012793 beq pairing_justwork ,module_hci_pairing_just_work_mode 
+0x3adc 012794 beq pairing_passkey ,module_hci_pairing_passkey 
+0x3add 012795 beq pairing_confirm ,module_hci_pairing_numeric_comparison 
+0x3ade 012796 branch module_hci_event_receive_invalid_cmd 
+:      012797 module_hci_pairing_pincode_mode:
+0x3adf 012798 call ssp_disable 
+0x3ae0 012799 jam 0 ,mem_ssp_enable 
+0x3ae1 012800 branch module_hci_event_receive_valid_cmd 
+:      012801 module_hci_pairing_just_work_mode:
+0x3ae2 012802 setarg ssp_mode_just_work_io_cap_data 
+:      012803 module_hci_sspairing_mode:
+0x3ae3 012804 store 3 ,mem_sp_iocap_local 
+0x3ae4 012805 store 1 ,mem_ssp_mode_flag 
+0x3ae5 012806 call ssp_enable 
+0x3ae6 012807 jam 1 ,mem_ssp_enable 
+0x3ae7 012808 branch module_hci_event_receive_valid_cmd 
+:      012809 module_hci_pairing_passkey:
+0x3ae8 012810 setarg ssp_mode_passkey_io_cap_data 
+0x3ae9 012811 branch module_hci_sspairing_mode 
+:      012813 module_hci_pairing_numeric_comparison:
+0x3aea 012814 setarg ssp_mode_ssp_pin_io_cap_data 
+0x3aeb 012815 branch module_hci_sspairing_mode 
+:      012818 module_hci_cmd_set_pincode:
+0x3aec 012819 fetch 1 ,mem_module_uart_len 
+0x3aed 012820 sub pdata ,16 ,null 
+0x3aee 012821 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3aef 012822 store 1 ,mem_pin_length 
+0x3af0 012823 copy pdata ,loopcnt 
+0x3af1 012824 arg mem_pin ,contw 
+0x3af2 012825 call uart_copy_rx_bytes 
+0x3af3 012826 branch module_hci_event_receive_valid_cmd 
+:      012830 module_hci_cmd_set_uart_control_mode:
+0x3af4 012831 copy rega ,contru 
+0x3af5 012832 ifetch 1 ,contru 
+0x3af6 012833 hfetcht 1 ,core_uart_ctrl 
+0x3af7 012834 nsetflag blank ,4 ,temp 
+0x3af8 012835 hstoret 1 ,core_uart_ctrl 
+0x3af9 012836 branch module_hci_event_receive_valid_cmd 
+:      012840 module_hci_cmd_set_uart_baud:
+0x3afa 012841 fetch 1 ,mem_module_uart_len 
+0x3afb 012842 copy pdata ,loopcnt 
+0x3afc 012843 copy rega ,contru 
+0x3afd 012844 call string2dec_from_uart 
+0x3afe 012845 setarg uart_clk_24 
+0x3aff 012846 idiv temp 
+0x3b00 012847 call wait_div_end 
+0x3b01 012848 quotient pdata 
+:      012849 module_hci_cmd_set_uart_baud_ok:
+0x3b02 012850 store uart_baud_len ,mem_baud 
+0x3b03 012851 call module_hci_event_receive_valid_cmd 
+0x3b04 012852 call wait_uarttx 
+0x3b05 012853 branch uart_set_baud_by_mem 
+:      012857 module_hci_cmd_version_request:
+0x3b06 012858 arg 2 ,rega 
+0x3b07 012859 arg mem_soft_version_num ,regb 
+0x3b08 012860 arg 0 ,temp 
+0x3b09 012861 branch module_hci_event_set_cmd 
+:      012862 module_hci_event_set_cmd_send_response:
+0x3b0a 012863 store 2 ,mem_event_cmd_response_content 
+0x3b0b 012864 arg mem_event_cmd_response_content ,regb 
+0x3b0c 012865 arg 0 ,temp 
+0x3b0d 012866 branch module_hci_event_set_cmd 
+:      012870 module_hci_cmd_bt_disconnect:
+0x3b0e 012871 fetch 2 ,mem_ui_state_map 
+0x3b0f 012872 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
+:      012873 module_hci_cmd_bt_disconnect_doing:
+0x3b10 012874 call module_hci_event_receive_valid_cmd 
+0x3b11 012875 branch app_bt_disconnect 
+:      012879 module_hci_cmd_ble_disconnect:
+0x3b12 012880 fetch 2 ,mem_ui_state_map 
+0x3b13 012881 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+:      012882 module_hci_cmd_ble_disconnect_doing:
+0x3b14 012883 call module_hci_event_receive_valid_cmd 
+0x3b15 012884 branch app_ble_disconnect 
+:      012890 module_hci_cmd_set_nvram:
+0x3b16 012891 fetch 1 ,mem_module_uart_len 
+0x3b17 012892 copy pdata ,loopcnt 
+0x3b18 012893 copy rega ,contru 
+0x3b19 012894 fetch 2 ,mem_nv_data_ptr 
+0x3b1a 012895 icopy contw 
+0x3b1b 012896 call uart_copy_rx_bytes_fast 
+0x3b1c 012897 branch module_hci_event_receive_valid_cmd 
+:      012901 module_hci_cmd_confirm_gkey:
+0x3b1d 012902 fetch 1 ,mem_ui_state_map 
+0x3b1e 012903 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
+0x3b1f 012904 ifetch 1 ,contru 
+0x3b20 012905 fetcht 1 ,mem_flag_mode_ssp_pin 
+0x3b21 012906 setflag blank ,flag_mode_ssp_pin_comparison_result_bit ,temp 
+0x3b22 012907 set1 flag_mode_ssp_pin_reviceve_comparison_bit ,temp 
+0x3b23 012908 storet 1 ,mem_flag_mode_ssp_pin 
+0x3b24 012910 call module_hci_event_receive_valid_cmd 
+0x3b25 012912 fetch 1 ,mem_flag_mode_ssp_pin 
+0x3b26 012913 bbit1 flag_mode_ssp_pin_recieve_dhkey_bit ,module_hci_cmd_spp_number_comparison_result_is1 
+0x3b27 012914 rtn 
+:      012916 dhkey_not_accept:
+0x3b28 012917 jam 0 ,mem_flag_mode_ssp_pin 
+0x3b29 012918 jam bt_cmd_dhkey_not_accept ,mem_fifo_temp 
+0x3b2a 012919 branch ui_ipc_send_cmd 
+:      012922 module_hci_cmd_spp_number_comparison_result_is1:
+0x3b2b 012923 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
+0x3b2c 012924 branch dhkey_not_accept 
+:      012928 module_hci_cmd_set_credit_given:
+0x3b2d 012929 fetch 1 ,mem_ui_state_map 
+0x3b2e 012930 rtnbit0 ui_state_bt_spp_conn 
+0x3b2f 012931 fetch 1 ,mem_credit_flag 
+0x3b30 012932 rtneq credit_disable 
+0x3b31 012933 ifetch 1 ,contru 
+0x3b32 012934 fetcht 1 ,mem_credit_given 
+0x3b33 012935 iadd temp ,temp 
+0x3b34 012936 storet 1 ,mem_credit_given 
+0x3b35 012937 rtn 
+:      012941 module_hci_cmd_auto_adv:
+0x3b36 012942 arg 0x40 ,loopcnt 
+0x3b37 012943 arg mem_le_adv_data_len ,contw 
+0x3b38 012944 call clear_mem 
+0x3b39 012945 setarg 0 
+0x3b3a 012946 store 1 ,mem_regb 
+0x3b3b 012947 copy rega ,contru 
+:      012948 module_hci_cmd_auto_adv_loop:
+0x3b3c 012949 copy contru ,pdata 
+0x3b3d 012950 store 2 ,mem_regc 
+0x3b3e 012951 call module_hci_cmd_auto_adv_adv_analys 
+0x3b3f 012953 fetch 1 ,mem_regb 
+0x3b40 012954 fetcht 1 ,mem_temp 
+0x3b41 012955 increase 1 ,temp 
+0x3b42 012956 iadd temp ,pdata 
+0x3b43 012957 store 1 ,mem_regb 
+0x3b44 012959 sub pdata ,31 ,null 
+0x3b45 012960 nbranch module_hci_cmd_auto_adv_store_scan ,positive 
+:      012961 module_hci_cmd_auto_adv_store_adv:
+0x3b46 012962 fetcht 1 ,mem_le_adv_data_len 
+0x3b47 012963 setarg mem_le_adv_data 
+0x3b48 012964 iadd temp ,pdata 
+0x3b49 012965 store 2 ,mem_contw 
+0x3b4a 012966 fetcht 1 ,mem_temp 
+0x3b4b 012967 increase 1 ,temp 
+0x3b4c 012968 fetch 1 ,mem_le_adv_data_len 
+0x3b4d 012969 iadd temp ,pdata 
+0x3b4e 012970 store 1 ,mem_le_adv_data_len 
+0x3b4f 012971 branch module_hci_cmd_auto_adv_store_common 
+:      012972 module_hci_cmd_auto_adv_store_scan:
+0x3b50 012973 fetcht 1 ,mem_le_scan_data_len 
+0x3b51 012974 setarg mem_le_scan_data 
+0x3b52 012975 iadd temp ,pdata 
+0x3b53 012976 store 2 ,mem_contw 
+0x3b54 012977 fetcht 1 ,mem_temp 
+0x3b55 012978 increase 1 ,temp 
+0x3b56 012979 fetch 1 ,mem_le_scan_data_len 
+0x3b57 012980 iadd temp ,pdata 
+0x3b58 012981 store 1 ,mem_le_scan_data_len 
+:      012982 module_hci_cmd_auto_adv_store_common:
+0x3b59 012983 fetch 2 ,mem_contw 
+0x3b5a 012984 copy pdata ,contw 
+0x3b5b 012985 fetch 2 ,mem_regc 
+0x3b5c 012986 copy pdata ,contru 
+0x3b5d 012988 copy temp ,loopcnt 
+0x3b5e 012989 call uart_copy_rx_bytes_fast 
+0x3b5f 012991 fetch 1 ,mem_module_uart_len 
+0x3b60 012992 fetcht 1 ,mem_regb 
+0x3b61 012993 isub temp ,null 
+0x3b62 012994 nbranch module_hci_cmd_auto_adv_loop ,zero 
+0x3b63 012995 branch module_hci_event_receive_valid_cmd 
+:      012998 module_hci_cmd_auto_adv_adv_analys:
+0x3b64 012999 ifetch 1 ,contru 
+0x3b65 013000 store 1 ,mem_temp 
+0x3b66 013001 ifetch 1 ,contru 
+0x3b67 013002 store 1 ,mem_rega 
+0x3b68 013003 rtn 
+:      013007 module_hci_cmd_power_request:
+0x3b69 013008 arg 0 ,temp 
+0x3b6a 013009 arg 2 ,rega 
+0x3b6b 013010 fetch 2 ,mem_module_vdd_quotient 
+0x3b6c 013011 store 2 ,mem_event_cmd_response_content 
+0x3b6d 013012 arg mem_event_cmd_response_content ,regb 
+0x3b6e 013013 branch module_hci_event_set_cmd 
+:      013017 module_hci_cmd_power_set:
+0x3b6f 013018 fetch 1 ,mem_module_uart_len 
+0x3b70 013019 bne 1 ,module_hci_event_receive_invalid_cmd 
+0x3b71 013020 ifetch 1 ,contru 
+0x3b72 013021 store 1 ,mem_module_read_vdd_flag 
+0x3b73 013022 setarg 0x00 
+0x3b74 013023 store 2 ,mem_module_vdd_quotient 
+0x3b75 013024 branch module_hci_event_receive_valid_cmd 
+:      013028 module_hci_cmd_passkey_entry:
+0x3b76 013029 ifetch 4 ,contru 
+0x3b77 013030 store 4 ,mem_pin 
+0x3b78 013031 jam 4 ,mem_pin_length 
+0x3b79 013032 jam 0 ,mem_authentication_passkey_times 
+0x3b7a 013033 call module_hci_event_receive_valid_cmd 
+0x3b7b 013034 branch authentication_passkey 
+:      013038 module_hci_cmd_set_gpio:
+0x3b7c 013039 fetch 1 ,mem_module_uart_len 
+0x3b7d 013040 bne 3 ,module_hci_event_receive_invalid_cmd 
+0x3b7e 013041 ifetch 1 ,contru 
+0x3b7f 013042 beq hci_cmd_config_gpio_input ,module_set_gpio_input 
+0x3b80 013043 beq hci_cmd_config_gpio_output ,module_set_gpio_output 
+0x3b81 013044 branch module_hci_event_receive_invalid_cmd 
+:      013046 module_set_gpio_input:
+0x3b82 013047 ifetcht 1 ,contru 
+0x3b83 013048 ifetch 1 ,contru 
+0x3b84 013049 beq gpio_input_high_impedance ,module_set_gpio_high_impedance 
+0x3b85 013050 nsetflag blank ,7 ,temp 
+0x3b86 013051 call gpio_config_input 
+0x3b87 013052 branch module_hci_event_receive_valid_cmd 
+:      013054 module_set_gpio_high_impedance:
+0x3b88 013055 call gpio_set_high_impedance 
+0x3b89 013056 branch module_hci_event_receive_valid_cmd 
+:      013058 module_set_gpio_output:
+0x3b8a 013059 ifetcht 1 ,contru 
+0x3b8b 013060 call gpio_config_output0 
+0x3b8c 013061 ifetch 1 ,contru 
+0x3b8d 013062 isolate1 0 ,pdata 
+0x3b8e 013063 call gpio_out_flag 
+0x3b8f 013064 branch module_hci_event_receive_valid_cmd 
+:      013068 module_hci_cmd_read_gpio:
+0x3b90 013069 fetch 1 ,mem_module_uart_len 
+0x3b91 013070 bne 1 ,module_hci_event_receive_invalid_cmd 
+0x3b92 013071 ifetcht 1 ,contru 
+0x3b93 013072 call gpio_get_bit 
+0x3b94 013073 setarg 0x0 
+0x3b95 013074 nsetflag true ,0 ,pdata 
+0x3b96 013075 arg 1 ,rega 
+0x3b97 013076 branch module_hci_event_set_cmd_send_response 
+:      013080 module_hci_cmd_le_set_pairing_mode:
+0x3b98 013081 copy rega ,contru 
+0x3b99 013082 ifetch 1 ,contru 
+0x3b9a 013083 copy pdata ,temp 
+0x3b9b 013084 beq le_pairing_mode_secure_connect_justwork ,module_le_set_pairing_mode_secure_justwork 
+0x3b9c 013085 beq le_pairing_mode_secure_connect_numeric ,module_le_set_pairing_mode_secure_numeric 
+0x3b9d 013086 beq le_pairing_mode_secure_connect_passkey ,module_le_set_pairing_mode_secure_passkey 
+0x3b9e 013087 store 1 ,mem_le_pairing_mode 
+0x3b9f 013088 beq le_pairing_mode_none ,module_le_set_no_pairing 
+0x3ba0 013089 beq le_pairing_mode_lagacy_justwork ,module_le_set_pairing_mode_lagacy_just_work 
+0x3ba1 013090 beq le_pairing_mode_lagacy_passkey ,module_le_set_pairing_mode_lagacy_passkey 
+0x3ba2 013091 branch module_hci_event_receive_invalid_cmd 
+:      013093 module_le_set_pairing_mode_secure_justwork:
+0x3ba3 013094 fetch 1 ,mem_le_secure_connect_enable 
+0x3ba4 013095 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3ba5 013096 storet 1 ,mem_le_pairing_mode 
+0x3ba6 013097 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x3ba7 013098 branch module_le_set_noinputnooutput 
+:      013099 module_le_set_pairing_mode_secure_numeric:
+0x3ba8 013100 fetch 1 ,mem_le_secure_connect_enable 
+0x3ba9 013101 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3baa 013102 storet 1 ,mem_le_pairing_mode 
+0x3bab 013103 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x3bac 013104 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
+0x3bad 013105 branch module_hci_event_receive_valid_cmd 
+:      013106 module_le_set_pairing_mode_secure_passkey:
+0x3bae 013107 fetch 1 ,mem_le_secure_connect_enable 
+0x3baf 013108 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3bb0 013109 storet 1 ,mem_le_pairing_mode 
+0x3bb1 013110 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x3bb2 013111 branch module_le_set_displayonly 
+:      013112 module_le_set_no_pairing:
+0x3bb3 013113 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
+:      013114 module_le_set_noinputnooutput:
+0x3bb4 013115 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
+0x3bb5 013116 branch module_hci_event_receive_valid_cmd 
+:      013117 module_le_set_pairing_mode_lagacy_just_work:
+0x3bb6 013118 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+0x3bb7 013119 branch module_le_set_noinputnooutput 
+:      013120 module_le_set_pairing_mode_lagacy_passkey:
+0x3bb8 013121 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+:      013122 module_le_set_displayonly:
+0x3bb9 013123 jam flag_iocap_displayonly ,mem_le_pres_iocap 
+0x3bba 013124 branch module_hci_event_receive_valid_cmd 
+:      013128 module_hci_cmd_le_set_adv_data:
+0x3bbb 013129 fetch 1 ,mem_module_uart_len 
+0x3bbc 013130 sub pdata ,31 ,null 
+0x3bbd 013131 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3bbe 013132 store 1 ,mem_le_adv_data_len 
+0x3bbf 013133 copy pdata ,loopcnt 
+0x3bc0 013134 copy rega ,contru 
+0x3bc1 013135 arg mem_le_adv_data ,contw 
+0x3bc2 013136 call uart_copy_rx_bytes_fast 
+0x3bc3 013137 branch module_hci_event_receive_valid_cmd 
+:      013141 module_hci_cmd_le_set_scan_data:
+0x3bc4 013142 fetch 1 ,mem_module_uart_len 
+0x3bc5 013143 sub pdata ,31 ,null 
+0x3bc6 013144 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3bc7 013145 store 1 ,mem_le_scan_data_len 
+0x3bc8 013146 copy pdata ,loopcnt 
+0x3bc9 013147 copy rega ,contru 
+0x3bca 013148 arg mem_le_scan_data ,contw 
+0x3bcb 013149 call uart_copy_rx_bytes_fast 
+0x3bcc 013150 branch module_hci_event_receive_valid_cmd 
+:      013154 module_hci_cmd_le_send_conn_update_req:
+0x3bcd 013155 fetch 2 ,mem_ui_state_map 
+0x3bce 013156 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+0x3bcf 013157 fetch 1 ,mem_module_uart_len 
+0x3bd0 013158 bne 0x08 ,module_hci_event_receive_invalid_cmd 
+0x3bd1 013159 copy rega ,contru 
+0x3bd2 013160 ifetch 8 ,contru 
+0x3bd3 013161 store 8 ,mem_le_interval_min 
+0x3bd4 013162 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x3bd5 013163 call ui_ipc_send_cmd 
+0x3bd6 013164 branch module_hci_event_receive_valid_cmd 
+:      013168 module_hci_cmd_set_le_adv_parameter:
+0x3bd7 013169 ifetch 2 ,contru 
+0x3bd8 013170 store 2 ,mem_le_adv_interval 
+0x3bd9 013171 branch module_hci_event_receive_valid_cmd 
+:      013175 module_hci_cmd_le_start_pairing:
+0x3bda 013176 fetch 1 ,mem_le_pairing_mode 
+0x3bdb 013177 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3bdc 013178 fetch 1 ,mem_le_pairing_state 
+0x3bdd 013179 bne flag_le_pairing_null ,module_hci_event_receive_invalid_cmd 
+0x3bde 013180 fetch 1 ,mem_le_enc_state 
+0x3bdf 013181 bne flag_le_enc_null ,module_hci_event_receive_invalid_cmd 
+0x3be0 013182 call check_51cmd_le_smp_sec_req 
+0x3be1 013183 branch module_hci_event_receive_valid_cmd 
+:      013187 module_hci_cmd_set_wake_gpio:
+0x3be2 013188 fetch 1 ,mem_module_uart_len 
+0x3be3 013189 bne 5 ,module_hci_event_receive_invalid_cmd 
+0x3be4 013190 ifetch 1 ,contru 
+0x3be5 013191 store 1 ,mem_module_mcu_wake_pin 
+0x3be6 013192 ifetch 4 ,contru 
+0x3be7 013193 store 4 ,mem_module_mcu_wake_delay_us 
+0x3be8 013194 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3be9 013195 call gpio_config_output 
+0x3bea 013196 call module_set_mcu_wake_pin_low 
+0x3beb 013197 branch module_hci_event_receive_valid_cmd 
+:      013201 module_hci_cmd_set_tx_power:
+0x3bec 013202 fetch 1 ,mem_module_uart_len 
+0x3bed 013203 bne 0x01 ,module_hci_event_receive_invalid_cmd 
+0x3bee 013204 ifetch 1 ,contru 
+0x3bef 013205 store 1 ,mem_tx_power 
+0x3bf0 013206 branch module_hci_event_receive_valid_cmd 
+:      013210 module_hci_cmd_le_confirm_gkey:
+0x3bf1 013211 ifetch 1 ,contru 
+0x3bf2 013212 beq 0x01 ,module_hci_cmd_le_confirm_gkey_fail 
+0x3bf3 013213 fetch 1 ,mem_le_secure_connect_state 
+0x3bf4 013214 beq le_sc_stat_send_public_key ,module_hci_cmd_le_confirm_gkey_ok 
+0x3bf5 013215 beq le_sc_stat_receive_dhkey ,module_hci_cmd_le_confirm_gkey_ok 
+0x3bf6 013216 beq le_sc_stat_wait_confirm_gkey ,module_hci_cmd_le_confirm_gkey_ok 
+0x3bf7 013217 branch module_hci_event_receive_invalid_cmd 
+:      013218 module_hci_cmd_le_confirm_gkey_ok:
+0x3bf8 013219 jam flag_le_sc_confrim_gkey_ok ,mem_le_sc_confirm_gkey_flag 
+0x3bf9 013220 branch module_hci_event_receive_valid_cmd 
+:      013222 module_hci_cmd_le_confirm_gkey_fail:
+0x3bfa 013223 call le_send_pairing_confirm_value_failed 
+0x3bfb 013224 branch module_hci_event_receive_valid_cmd 
+:      013228 module_hci_cmd_set_reject_justwork_flag:
+0x3bfc 013229 fetch 1 ,mem_module_uart_len 
+0x3bfd 013230 bne 0x01 ,module_hci_event_receive_invalid_cmd 
+0x3bfe 013231 call module_hci_event_receive_valid_cmd 
+0x3bff 013232 ifetch 1 ,contru 
+0x3c00 013233 branch classic_bt_clr_reject_justwork_flag ,blank 
+0x3c01 013234 branch classic_bt_set_reject_justwork_flag 
+:      013238 module_hci_cmd_reset_chip:
+0x3c02 013239 call module_hci_event_receive_valid_cmd 
+0x3c03 013240 call wait_uarttx 
+0x3c04 013241 jam 0x01 ,core_reset 
+0x3c05 013242 branch loop 
+:      013246 module_hci_cmd_le_set_fixed_passkey:
+0x3c06 013247 fetch 1 ,mem_module_uart_len 
+0x3c07 013248 beq 0 ,module_hci_event_receive_invalid_cmd 
+0x3c08 013249 ifetch 1 ,contru 
+0x3c09 013250 branch module_hci_cmd_le_set_random_passkey ,blank 
+0x3c0a 013251 fetch 1 ,mem_module_uart_len 
+0x3c0b 013252 bne 5 ,module_hci_event_receive_invalid_cmd 
+0x3c0c 013253 ifetch 4 ,contru 
+0x3c0d 013254 arg 1000000 ,temp 
+0x3c0e 013255 isub temp ,null 
+0x3c0f 013256 branch module_hci_event_receive_invalid_cmd ,positive 
+0x3c10 013257 store 4 ,mem_le_tk 
+0x3c11 013258 call le_set_config_fixed_tk 
+0x3c12 013259 branch module_hci_event_receive_valid_cmd 
+:      013261 module_hci_cmd_le_set_random_passkey:
+0x3c13 013262 call le_clr_config_fixed_tk 
+0x3c14 013263 branch module_hci_event_receive_valid_cmd 
+:      013267 module_hci_test_cmde_close_lpm:
+0x3c15 013268 jam 0 ,mem_lpm_mode 
+0x3c16 013269 branch module_hci_event_receive_valid_cmd 
+:      013274 module_hci_event_receive_invalid_cmd:
+0x3c17 013275 arg 1 ,temp 
+0x3c18 013276 arg 0 ,rega 
+0x3c19 013277 branch module_hci_event_set_cmd 
+:      013280 module_hci_event_receive_valid_cmd:
+0x3c1a 013281 arg 0 ,temp 
+0x3c1b 013282 arg 0 ,rega 
+0x3c1c 013283 branch module_hci_event_set_cmd 
+:      013287 module_hci_event_spp_connect:
+0x3c1d 013288 jam hci_event_spp_conn_rep ,mem_module_uart_opcode 
+0x3c1e 013289 branch module_hci_event_enter_standby_mode_len0 
+:      013293 module_hci_event_le_connect:
+0x3c1f 013294 jam hci_event_le_conn_rep ,mem_module_uart_opcode 
+0x3c20 013295 branch module_hci_event_enter_standby_mode_len0 
+:      013299 module_hci_event_spp_disconnect:
+0x3c21 013300 jam hci_event_spp_dis_rep ,mem_module_uart_opcode 
+0x3c22 013301 branch module_hci_event_enter_standby_mode_len0 
+:      013305 module_hci_event_le_disconnect:
+0x3c23 013306 jam hci_event_le_dis_rep ,mem_module_uart_opcode 
+0x3c24 013307 branch module_hci_event_enter_standby_mode_len0 
+:      013315 module_hci_event_set_cmd:
+0x3c25 013316 fetch 1 ,mem_module_uart_opcode 
+0x3c26 013317 copy pdata ,regc 
+0x3c27 013318 jam hci_event_cmd_res ,mem_module_uart_opcode 
+0x3c28 013319 setarg 2 
+0x3c29 013320 iadd rega ,pdata 
+0x3c2a 013321 call module_hci_prepare_tx 
+0x3c2b 013322 copy regc ,pdata 
+0x3c2c 013323 istore 1 ,contwu 
+0x3c2d 013324 istoret 1 ,contwu 
+0x3c2e 013325 copy rega ,loopcnt 
+0x3c2f 013326 copy regb ,contr 
+0x3c30 013327 call uart_copy_tx_bytes 
+0x3c31 013328 branch uartd_send 
+:      013332 module_hci_event_receive_spp_data:
+0x3c32 013334 call module_spp_clear_last_transmite_clock 
+0x3c33 013335 jam hci_event_spp_data_rep ,mem_module_uart_opcode 
+0x3c34 013336 fetch 1 ,mem_current_length 
+0x3c35 013337 rtn blank 
+0x3c36 013338 call module_hci_prepare_tx 
+0x3c37 013339 fetch 1 ,mem_current_length 
+0x3c38 013340 copy pdata ,loopcnt 
+0x3c39 013341 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+0x3c3a 013342 copy pdata ,contr 
+0x3c3b 013343 call uart_copy_tx_bytes_fast 
+0x3c3c 013344 branch uartd_send 
+:      013348 module_hci_event_receive_le_data:
+0x3c3d 013349 jam hci_event_le_data_rep ,mem_module_uart_opcode 
+0x3c3e 013350 fetch 1 ,mem_module_le_rx_data_len 
+0x3c3f 013351 icopy loopcnt 
+0x3c40 013352 increase 2 ,pdata 
+0x3c41 013353 call module_hci_prepare_tx 
+0x3c42 013354 fetch 2 ,mem_module_le_rx_data_handle 
+0x3c43 013355 istore 2 ,contwu 
+0x3c44 013356 fetch 2 ,mem_module_le_rx_data_address 
+0x3c45 013357 icopy contr 
+0x3c46 013358 call uart_copy_tx_bytes_fast 
+0x3c47 013359 branch uartd_send 
+:      013363 module_hci_event_enter_standby_mode:
+0x3c48 013364 jam hci_event_standby_rep ,mem_module_uart_opcode 
+:      013365 module_hci_event_enter_standby_mode_len0:
+0x3c49 013366 setarg 0 
+0x3c4a 013367 call module_hci_prepare_tx 
+0x3c4b 013368 branch uartd_send 
+:      013372 module_hci_event_status_res:
+0x3c4c 013373 jam hci_event_status_res ,mem_module_uart_opcode 
+0x3c4d 013374 setarg 1 
+0x3c4e 013375 call module_hci_prepare_tx 
+0x3c4f 013377 call module_hci_read_bt_status 
+0x3c50 013379 fetch 2 ,mem_ui_state_map 
+0x3c51 013380 arg ui_state_bt_hid_conn ,queue 
+0x3c52 013381 qisolate1 pdata 
+0x3c53 013382 setflag true ,3 ,temp 
+0x3c54 013384 arg ui_state_ble_connected ,queue 
+0x3c55 013385 qisolate1 pdata 
+0x3c56 013386 setflag true ,5 ,temp 
+0x3c57 013388 fetch 1 ,mem_ui_state_map 
+0x3c58 013389 arg ui_state_bt_spp_conn ,queue 
+0x3c59 013390 qisolate1 pdata 
+0x3c5a 013391 setflag true ,4 ,temp 
+0x3c5b 013393 istoret 1 ,contwu 
+0x3c5c 013394 branch uartd_send 
+:      013398 module_hci_read_bt_status:
+0x3c5d 013399 arg 0 ,temp 
+0x3c5e 013400 fetch 1 ,mem_scan_mode 
+0x3c5f 013401 arg inq_scan_mode ,queue 
+0x3c60 013402 qisolate1 pdata 
+0x3c61 013403 setflag true ,0 ,temp 
+0x3c62 013404 arg page_scan_mode ,queue 
+0x3c63 013405 qisolate1 pdata 
+0x3c64 013406 setflag true ,1 ,temp 
+0x3c65 013408 fetch 1 ,mem_le_adv_enable 
+0x3c66 013409 arg 0 ,queue 
+0x3c67 013410 qisolate1 pdata 
+0x3c68 013411 setflag true ,2 ,temp 
+0x3c69 013412 rtn 
+:      013416 module_hci_event_store_device:
+0x3c6a 013417 jam hci_event_nvram_rep ,mem_module_uart_opcode 
+0x3c6b 013418 fetch 1 ,mem_nv_data_number 
+0x3c6c 013419 mul32 pdata ,34 ,pdata 
+0x3c6d 013420 icopy loopcnt 
+0x3c6e 013421 call module_hci_prepare_tx 
+0x3c6f 013422 fetch 2 ,mem_nv_data_ptr 
+0x3c70 013423 icopy contr 
+0x3c71 013424 call uart_copy_tx_bytes_fast 
+0x3c72 013425 branch uartd_send 
+:      013429 module_hci_event_gkey_generate:
+0x3c73 013430 jam hci_event_gkey ,mem_module_uart_opcode 
+0x3c74 013431 setarg 4 
+0x3c75 013432 call module_hci_prepare_tx 
+0x3c76 013433 fetch 4 ,mem_gkey 
+0x3c77 013434 istore 4 ,contwu 
+0x3c78 013435 branch uartd_send 
+:      013439 module_hci_event_invalid_packet:
+0x3c79 013440 jam hci_event_invalid_packet ,mem_module_uart_opcode 
+0x3c7a 013441 hfetch 2 ,core_uart_rxitems 
+0x3c7b 013442 arg 0xff ,temp 
+0x3c7c 013443 call not_greater_than 
+0x3c7d 013444 copy pdata ,loopcnt 
+0x3c7e 013445 call module_hci_prepare_tx 
+0x3c7f 013446 call uartd_prepare_rx 
+0x3c80 013447 call uart_copy_rx2tx 
+0x3c81 013448 branch uartd_send 
+:      013452 module_hci_event_passkey_entry_mode:
+0x3c82 013453 jam hci_event_get_passkey ,mem_module_uart_opcode 
+0x3c83 013454 branch module_hci_event_enter_standby_mode_len0 
+:      013458 module_hci_event_le_tk:
+0x3c84 013459 jam hci_event_le_tk ,mem_module_uart_opcode 
+0x3c85 013460 setarg 4 
+0x3c86 013461 call module_hci_prepare_tx 
+0x3c87 013462 fetch 4 ,mem_le_tk 
+0x3c88 013463 istore 4 ,contwu 
+0x3c89 013464 branch uartd_send 
+:      013468 module_hci_event_le_pairing_fail:
+0x3c8a 013469 arg flag_ble_pairing_fail ,rega 
+0x3c8b 013470 branch module_hci_event_pairing_completed 
+:      013472 module_hci_event_le_pairing_success:
+0x3c8c 013473 arg flag_ble_pairing_success ,rega 
+0x3c8d 013474 branch module_hci_event_pairing_completed 
+:      013476 module_hci_event_bt_pairing_fail:
+0x3c8e 013477 arg flag_bt_pairing_fail ,rega 
+0x3c8f 013478 branch module_hci_event_pairing_completed 
+:      013480 module_hci_event_bt_pairing_success:
+0x3c90 013481 arg flag_bt_pairing_success ,rega 
+:      013483 module_hci_event_pairing_completed:
+0x3c91 013484 jam 0 ,mem_flag_mode_ssp_pin 
+0x3c92 013485 jam hci_event_le_pairing_state ,mem_module_uart_opcode 
+0x3c93 013486 setarg 2 
+0x3c94 013487 call module_hci_prepare_tx 
+0x3c95 013488 copy rega ,pdata 
+0x3c96 013489 istore 2 ,contwu 
+0x3c97 013490 branch uartd_send 
+:      013494 module_hci_event_pause_enc:
+0x3c98 013495 arg flag_event_pause_enc ,regc 
+0x3c99 013496 branch module_hci_event_enc 
+:      013498 module_hci_event_start_enc:
+0x3c9a 013499 arg flag_event_start_enc ,regc 
+:      013501 module_hci_event_enc:
+0x3c9b 013502 jam hci_event_le_encryption_state ,mem_module_uart_opcode 
+0x3c9c 013503 setarg 1 
+0x3c9d 013504 call module_hci_prepare_tx 
+0x3c9e 013505 copy regc ,pdata 
+0x3c9f 013506 istore 1 ,contwu 
+0x3ca0 013507 branch uartd_send 
+:      013511 module_hci_event_le_gkey:
+0x3ca1 013512 jam hci_event_le_gkey ,mem_module_uart_opcode 
+0x3ca2 013513 setarg 4 
+0x3ca3 013514 call module_hci_prepare_tx 
+0x3ca4 013515 fetch 4 ,mem_gkey 
+0x3ca5 013516 istore 4 ,contwu 
+0x3ca6 013517 branch uartd_send 
+:      013528 module_hci_prepare_tx:
+0x3ca7 013529 jam 0x02 ,mem_module_uart_cmd 
+0x3ca8 013530 store 1 ,mem_module_uart_len 
+0x3ca9 013531 storet 8 ,mem_temp 
+0x3caa 013532 bpatch patch1c_2 ,mem_patch1c 
+0x3cab 013533 call module_set_mcu_wake_pin_high_delay 
+0x3cac 013534 fetcht 8 ,mem_temp 
+0x3cad 013535 call uartd_prepare_tx 
+0x3cae 013536 fetch 3 ,mem_module_uart_cmd 
+0x3caf 013537 istore 3 ,contwu 
+0x3cb0 013538 rtn 
+:      013541 module_set_mcu_wake_pin_high_delay:
+0x3cb1 013542 call module_check_mcu_wake_pin_high 
+0x3cb2 013543 rtn true 
+:      013544 module_set_mcu_wake_pin_h_delay:
+0x3cb3 013545 call module_set_mcu_wake_pin_high 
+0x3cb4 013546 fetch 4 ,mem_module_mcu_wake_delay_us 
+0x3cb5 013547 rshift2 pdata ,pdata 
+0x3cb6 013548 rtn blank 
+0x3cb7 013549 branch delay 
+:      013551 module_set_mcu_wake_pin_high:
+0x3cb8 013553 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3cb9 013554 branch gpio_out_active 
+:      013556 module_check_mcu_wake_pin_high:
+0x3cba 013557 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3cbb 013558 branch gpio_check_active 
+:      013560 module_set_mcu_wake_pin_low:
+0x3cbc 013561 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3cbd 013562 branch gpio_out_inactive 
+:      013565 delay:
+0x3cbe 013566 increase -1 ,pdata 
+0x3cbf 013567 nop 38 
+0x3cc0 013568 nbranch delay ,blank 
+0x3cc1 013569 rtn 
+:      013578 module_le_receive_data:
+0x3cc2 013579 call module_check_ble_encrypt_state 
+0x3cc3 013580 rtn user 
+0x3cc4 013581 copy rega ,pdata 
+0x3cc5 013582 store 2 ,mem_module_le_rx_data_address 
+0x3cc6 013583 copy regb ,pdata 
+0x3cc7 013584 store 1 ,mem_module_le_rx_data_len 
+0x3cc8 013585 fetch 2 ,mem_le_att_handle 
+0x3cc9 013586 fetcht 2 ,mem_module_data_write_handle 
+0x3cca 013587 isub temp ,null 
+0x3ccb 013588 branch module_le_receive_data_ok ,zero 
+0x3ccc 013589 fetcht 2 ,mem_module_data_write_handle2 
+0x3ccd 013590 isub temp ,null 
+0x3cce 013591 nrtn zero 
+:      013592 module_le_receive_data_ok:
+0x3ccf 013593 store 2 ,mem_module_le_rx_data_handle 
+0x3cd0 013594 branch module_hci_event_receive_le_data 
+:      013599 module_exit_sniff:
+0x3cd1 013600 fetch 1 ,mem_module_flag 
+0x3cd2 013601 rtnbit1 moudle_task_unsniff 
+0x3cd3 013602 call module_set_unsniff_task_flag 
+0x3cd4 013603 branch app_bt_sniff_exit 
+:      013606 module_set_lpm_mult_2:
+0x3cd5 013607 jam 2 ,mem_lpm_mult 
+0x3cd6 013608 rtn 
+:      013612 module_bb_event_timer:
+0x3cd7 013613 branch module_read_vdd_timer 
+:      013615 module_read_vdd_timer:
+0x3cd8 013616 fetch 1 ,mem_module_read_vdd_flag 
+0x3cd9 013617 rtn blank 
+0x3cda 013618 fetch 1 ,mem_module_read_vdd_count 
+0x3cdb 013619 rtn blank 
+0x3cdc 013620 increase -1 ,pdata 
+0x3cdd 013621 store 1 ,mem_module_read_vdd_count 
+0x3cde 013622 nrtn blank 
+0x3cdf 013623 jam flag_module_read_vdd_count ,mem_module_read_vdd_count 
+0x3ce0 013624 call adc_set_mode 
+0x3ce1 013625 call vdd_calculate_by_mode 
+0x3ce2 013626 div pdata ,0x64 
+0x3ce3 013627 call wait_div_end 
+0x3ce4 013628 quotient pdata 
+0x3ce5 013629 remainder temp 
+0x3ce6 013630 store 1 ,mem_module_vdd_quotient 
+0x3ce7 013631 storet 1 ,mem_module_vdd_remainder 
+0x3ce8 013632 rtn 
+:      013635 module_control_air_flow:
+0x3ce9 013636 call check_uart_tx_buff 
+0x3cea 013637 branch app_l2cap_flow_control_enable ,positive 
+0x3ceb 013638 branch app_l2cap_flow_control_disable 
+:      013642 module_set_sniff_task_flag:
+0x3cec 013643 arg moudle_task_sniff ,queue 
+0x3ced 013644 branch module_set_state 
+:      013646 module_clear_sniff_task_flag:
+0x3cee 013647 arg moudle_task_sniff ,queue 
+0x3cef 013648 branch module_clr_state 
+:      013650 module_set_unsniff_task_flag:
+0x3cf0 013651 arg moudle_task_unsniff ,queue 
+0x3cf1 013652 branch module_set_state 
+:      013654 module_clear_unsniff_task_flag:
+0x3cf2 013655 arg moudle_task_unsniff ,queue 
+0x3cf3 013656 branch module_clr_state 
+:      013658 module_set_le_tx_data_flag:
+0x3cf4 013659 arg module_flag_ble_data_finish ,queue 
+0x3cf5 013660 branch module_set_state 
+:      013662 module_clear_le_tx_data_flag:
+0x3cf6 013663 arg module_flag_ble_data_finish ,queue 
+0x3cf7 013664 branch module_clr_state 
+:      013666 module_clr_state:
+0x3cf8 013667 fetch 1 ,mem_module_flag 
+0x3cf9 013668 qset0 pdata 
+0x3cfa 013669 store 1 ,mem_module_flag 
+0x3cfb 013670 rtn 
+:      013672 module_set_state:
+0x3cfc 013673 fetch 1 ,mem_module_flag 
+0x3cfd 013674 qset1 pdata 
+0x3cfe 013675 store 1 ,mem_module_flag 
+0x3cff 013676 rtn 
+:      013686 mouse_init:
+0x3d00 013687 call mouse_setting_config 
+0x3d01 013688 call spi_ncs_enable 
+0x3d02 013689 call mouse_init_sunt 
+0x3d03 013690 call mouse_dpi_config 
+0x3d04 013691 call spi_ncs_disable 
+0x3d05 013692 rtn wake 
+0x3d06 013693 call mouse_cheak_enable_usb 
+0x3d07 013694 call mouse_cb_fuction 
+0x3d08 013697 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d09 013698 rtnbit1 mouse_enable_usb 
+0x3d0a 013699 call mouse_wakeup_from_power 
+0x3d0b 013700 rtnmark1 mark_24g 
+0x3d0c 013701 fetch 2 ,mem_ui_state_map 
+0x3d0d 013702 bbit1 ui_state_btn_down ,mouse_start_discovery 
+0x3d0e 013703 branch mouse_check_reconn_target 
+:      013706 mouse_delay_4s:
+0x3d0f 013707 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d10 013708 rtnbit0 mouse_enable_init_delay 
+0x3d11 013709 arg 20 ,loopcnt 
+:      013710 mouse_delay_20ms:
+0x3d12 013711 setarg 200000 
+0x3d13 013712 call sleep 
+0x3d14 013713 loop delay_10ms 
+0x3d15 013714 rtn 
+:      013717 mouse_cheak_enable_usb:
+0x3d16 013718 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d17 013719 rtnbit0 mouse_enable_usb 
+0x3d18 013720 branch usb_init 
+:      013723 mouse_cb_fuction:
+0x3d19 013724 setarg mouse_le 
+0x3d1a 013725 store 2 ,mem_cb_le_process 
+0x3d1b 013726 setarg mouse_send_process 
+0x3d1c 013727 store 2 ,mem_cb_bt_process 
+0x3d1d 013728 setarg mouse_process_lpm_before 
+0x3d1e 013729 store 2 ,mem_cb_before_lpm 
+0x3d1f 013730 setarg mouse_priority_bb_event 
+0x3d20 013731 store 2 ,mem_cb_bb_event_process 
+0x3d21 013732 setarg mouse_idle 
+0x3d22 013733 store 2 ,mem_cb_idle_process 
+0x3d23 013734 setarg mouse_before_hibernate 
+0x3d24 013735 store 2 ,mem_cb_before_hibernate 
+0x3d25 013736 setarg le_mouse_bb_event_connect_complete 
+0x3d26 013737 store 2 ,mem_cb_att_write 
+0x3d27 013739 call g24_head_ptr2regc 
+0x3d28 013740 setarg mouse_g24_package_data 
+0x3d29 013741 add regc ,offset_24g_cb_data ,contw 
+0x3d2a 013742 istore 2 ,contw 
+0x3d2b 013743 setarg mouse_g24_enter_lpm 
+0x3d2c 013744 add regc ,offset_24g_cb_lpm_prepare ,contw 
+0x3d2d 013745 istore 2 ,contw 
+0x3d2e 013746 setarg mouse_lpm_before_common 
+0x3d2f 013747 add regc ,offset_24g_cb_lpm_before ,contw 
+0x3d30 013748 istore 2 ,contw 
+0x3d31 013750 setarg mouse_bb_event_timer 
+0x3d32 013751 store 2 ,mem_cb_event_timer 
+0x3d33 013752 setarg mouse_spi_write_flash_cb 
+0x3d34 013753 store 2 ,mem_cb_spi_flash_write_complate 
+0x3d35 013754 rtn 
+:      013755 mouse_spi_write_flash_cb:
+:      013756 mouse_spi_init:
+0x3d36 013757 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d37 013758 bbit0 mouse_enable_spi2 ,spid_init 
+0x3d38 013759 branch spid_init2 
+:      013761 mouse_setting_config:
+0x3d39 013762 rtn wake 
+0x3d3a 013763 call g24_set_device_addr 
+0x3d3b 013764 call mouse_gpio_init 
+0x3d3c 013765 call mouse_param_init 
+0x3d3d 013766 call mouse_adc_init 
+0x3d3e 013767 call le_set_config_fixed_ltk 
+0x3d3f 013768 call le_set_justwork 
+0x3d40 013769 call le_set_fixed_ltk 
+0x3d41 013770 call le_set_config_read_authentication 
+0x3d42 013771 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d43 013772 bbit1 mouse_enable_eeprom ,mouse_init_iic 
+0x3d44 013773 bbit1 mouse_enable_flash ,mouse_load_flash_info_cheak 
+0x3d45 013774 rtn 
+:      013776 mouse_init_iic:
+0x3d46 013777 call iic_init_390k 
+0x3d47 013778 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d48 013779 isolate1 mouse_enable_2k_eeprom ,pdata 
+0x3d49 013780 ncall clear_eeprom_size_2k ,true 
+0x3d4a 013781 call mouse_load_eeprom_dpi 
+0x3d4b 013782 call mouse_init_environment 
+0x3d4c 013783 call mouse_set_24g_addr_eeprom 
+0x3d4d 013784 branch iicd_read_eep_data 
+:      013786 mouse_wakeup_from_power:
+0x3d4e 013787 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d4f 013788 bbit0 mouse_enable_wakeup_from_power ,mouse_wakeup_no_from_power 
+0x3d50 013789 fetch 1 ,mem_wakup_from_power_flag 
+0x3d51 013790 isolate0 gpio_latch ,pdata 
+0x3d52 013791 nrtn true 
+:      013792 mouse_wakeup_no_from_power:
+0x3d53 013793 fetch 1 ,mem_reconn_times_init 
+0x3d54 013794 store 1 ,mem_reconn_times 
+0x3d55 013795 fetch 1 ,mem_config_function_enable 
+0x3d56 013796 rtnbit1 enable_select_device_by_switch 
+:      013797 mouse_start_24g_mode:
+0x3d57 013798 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d58 013799 rtnbit0 mouse_enable_24g 
+0x3d59 013800 bbit1 mouse_enable_auto_24g_paring ,g24_auto_pair_start 
+0x3d5a 013801 branch g24_check_51cmd_start_24g 
+:      013802 le_mouse_bb_event_connect_complete:
+0x3d5b 013803 fetch 1 ,mem_le_att_handle 
+0x3d5c 013804 sub pdata ,26 ,pdata 
+0x3d5d 013805 nrtn zero 
+0x3d5e 013806 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x3d5f 013807 call ui_ipc_send_cmd 
+:      013808 mouse_le_write_enable:
+0x3d60 013809 arg write_req_enable_flag ,queue 
+0x3d61 013810 branch mouse_le_enable_connect_flag 
+:      013812 mouse_dpi_up:
+0x3d62 013813 fetch 1 ,mem_mouse_dpi_button_state 
+0x3d63 013814 rtneq dpi_button_state_up 
+0x3d64 013815 jam dpi_button_state_up ,mem_mouse_dpi_button_state 
+0x3d65 013816 rtn 
+:      013817 mouse_dpi_config:
+0x3d66 013818 fetch 1 ,mem_config_sensor_motion 
+0x3d67 013819 and pdata ,0x0f ,pdata 
+0x3d68 013820 store 1 ,mem_mouse_dpi 
+0x3d69 013821 branch mouse_seting_dpi + 2 
+:      013824 mouse_dpi_cheak:
+0x3d6a 013825 fetcht 1 ,mem_dpi_button_gpio 
+0x3d6b 013826 call gpio_get_bit 
+0x3d6c 013827 nbranch mouse_dpi_up ,true 
+:      013828 mouse_dpi_down:
+0x3d6d 013829 fetch 1 ,mem_mouse_dpi_button_state 
+0x3d6e 013830 rtneq dpi_button_state_down 
+0x3d6f 013831 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
+0x3d70 013832 fetch 1 ,mem_mouse_dpi 
+0x3d71 013833 increase 1 ,pdata 
+0x3d72 013834 and pdata ,0x03 ,pdata 
+0x3d73 013835 store 1 ,mem_mouse_dpi 
+0x3d74 013836 call mouse_seting_dpi 
+0x3d75 013837 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d76 013838 bbit1 mouse_enable_eeprom ,mouse_store_eerpom_dpi 
+0x3d77 013839 bbit1 mouse_enable_flash ,mouse_before_store_flash_cpi 
+0x3d78 013840 rtn 
+:      013841 mouse_before_store_flash_cpi:
+0x3d79 013842 arg mouse_spi2_clk_gpio ,temp 
+0x3d7a 013843 call gpio_config_output 
+0x3d7b 013844 arg mouse_spi2_sdio_gpio ,temp 
+0x3d7c 013845 call gpio_config_output 
+0x3d7d 013846 branch mouse_store_flash_device_info 
+:      013848 mouse_seting_dpi:
+0x3d7e 013849 bpatch patch1c_3 ,mem_patch1c 
+0x3d7f 013850 call mosue_dpi_led_blink_init 
+0x3d80 013851 fetch 1 ,mem_config_sensor_type 
+0x3d81 013852 beq p3610 ,mouse_seting_3610_dpi 
+0x3d82 013853 beq p3212 ,mouse_seting_3212_dpi 
+0x3d83 013854 fetch 1 ,mem_mouse_dpi 
+0x3d84 013855 beq mouse_dpi_level1 ,mouse_set_cpi1 
+0x3d85 013856 beq mouse_dpi_level2 ,mouse_set_cpi2 
+0x3d86 013857 beq mouse_dpi_level3 ,mouse_set_cpi3 
+0x3d87 013858 beq mouse_dpi_level4 ,mouse_set_cpi4 
+:      013859 mouse_set_cpi2:
+0x3d88 013860 fetch 1 ,mem_320x_dpi_2 
+0x3d89 013861 branch mouse_p3205_dpi 
+:      013862 mouse_set_cpi1:
+0x3d8a 013863 fetch 1 ,mem_320x_dpi_1 
+0x3d8b 013864 branch mouse_p3205_dpi 
+:      013865 mouse_set_cpi3:
+0x3d8c 013866 fetch 1 ,mem_320x_dpi_3 
+0x3d8d 013867 branch mouse_p3205_dpi 
+:      013868 mouse_set_cpi4:
+0x3d8e 013869 fetch 1 ,mem_320x_dpi_4 
+0x3d8f 013870 branch mouse_p3205_dpi 
+:      013871 moue_seting_cpi_count:
+0x3d90 013872 fetch 1 ,mem_config_sensor_type 
+0x3d91 013873 rtneq p3065_xy 
+0x3d92 013874 fetch 1 ,mem_mouse_cpi_count 
+0x3d93 013875 increase 1 ,pdata 
+0x3d94 013876 store 1 ,mem_mouse_cpi_count 
+0x3d95 013877 rtn 
+:      013879 mouse_seting_3212_dpi:
+0x3d96 013880 fetch 1 ,mem_mouse_dpi 
+0x3d97 013881 beq mouse_dpi_level1 ,mouse_set_p3212_cpi1 
+0x3d98 013882 beq mouse_dpi_level2 ,mouse_set_p3212_cpi2 
+0x3d99 013883 beq mouse_dpi_level3 ,mouse_set_p3212_cpi3 
+0x3d9a 013884 beq mouse_dpi_level4 ,mouse_set_p3212_cpi4 
+:      013885 mouse_set_p3212_cpi2:
+0x3d9b 013886 fetch 1 ,mem_3212_dpi_2 
+0x3d9c 013887 branch mouse_p3212_dpi 
+:      013888 mouse_set_p3212_cpi1:
+0x3d9d 013889 fetch 1 ,mem_3212_dpi_1 
+0x3d9e 013890 branch mouse_p3212_dpi 
+:      013891 mouse_set_p3212_cpi3:
+0x3d9f 013892 fetch 1 ,mem_3212_dpi_3 
+0x3da0 013893 branch mouse_p3212_dpi 
+:      013894 mouse_set_p3212_cpi4:
+0x3da1 013895 fetch 1 ,mem_3212_dpi_4 
+:      013896 mouse_p3212_dpi:
+0x3da2 013897 store 1 ,mem_mouse_cpi_count 
+0x3da3 013898 lshift8 pdata ,pdata 
+0x3da4 013899 copy pdata ,rega 
+0x3da5 013900 add pdata ,mouse_p3212_dpi_xaddress ,pdata 
+0x3da6 013901 call twspi_write 
+0x3da7 013902 copy rega ,pdata 
+0x3da8 013903 add pdata ,mouse_p3212_dpi_yaddress ,pdata 
+0x3da9 013904 branch twspi_write 
+:      013906 mouse_seting_3610_dpi:
+0x3daa 013907 fetch 1 ,mem_mouse_dpi 
+0x3dab 013908 beq mouse_dpi_level1 ,mouse_set_p3610_cpi1 
+0x3dac 013909 beq mouse_dpi_level2 ,mouse_set_p3610_cpi2 
+0x3dad 013910 beq mouse_dpi_level3 ,mouse_set_p3610_cpi3 
+0x3dae 013911 beq mouse_dpi_level4 ,mouse_set_p3610_cpi4 
+:      013912 mouse_set_p3610_cpi2:
+0x3daf 013913 fetch 1 ,mem_3610_dpi_2 
+0x3db0 013914 branch mouse_p3610_dpi 
+:      013915 mouse_set_p3610_cpi1:
+0x3db1 013916 fetch 1 ,mem_3610_dpi_1 
+0x3db2 013917 branch mouse_p3610_dpi 
+:      013918 mouse_set_p3610_cpi3:
+0x3db3 013919 fetch 1 ,mem_3610_dpi_3 
+0x3db4 013920 branch mouse_p3610_dpi 
+:      013921 mouse_set_p3610_cpi4:
+0x3db5 013922 fetch 1 ,mem_3610_dpi_4 
+:      013923 mouse_p3610_dpi:
+0x3db6 013924 store 1 ,mem_mouse_cpi_count 
+0x3db7 013925 call mouse_spi_sdio_gpio_pollup 
+0x3db8 013926 fetch 1 ,mem_mouse_cpi_count 
+:      013927 mouse_reset_p3610_dpi:
+0x3db9 013928 add pdata ,0x80 ,pdata 
+0x3dba 013929 lshift8 pdata ,pdata 
+0x3dbb 013930 add pdata ,mouse_p3610_dpi_address ,pdata 
+0x3dbc 013931 copy pdata ,rega 
+0x3dbd 013932 branch mouse_set_sensor_reg 
+:      013934 mouse_p3205_dpi:
+0x3dbe 013935 store 1 ,mem_mouse_cpi_count 
+0x3dbf 013936 call moue_seting_cpi_count 
+0x3dc0 013937 fetch 1 ,mem_mouse_cpi_count 
+0x3dc1 013938 setarg mouse_dpi_address 
+0x3dc2 013939 call twspi_read 
+0x3dc3 013940 and pdata ,0xf8 ,temp 
+0x3dc4 013941 fetch 1 ,mem_mouse_cpi_count 
+0x3dc5 013942 iadd temp ,pdata 
+0x3dc6 013943 lshift8 pdata ,pdata 
+0x3dc7 013944 add pdata ,mouse_dpi_address ,pdata 
+0x3dc8 013945 branch twspi_write 
+:      013948 mouse_init_environment:
+0x3dc9 013949 call app_initflag_check 
+0x3dca 013950 branch mouse_eeprom_load_recon_info ,zero 
+0x3dcb 013951 call mouse_ble_init_address 
+0x3dcc 013952 call mouse_store_eeprom_device_info 
+0x3dcd 013953 branch app_initflag_store 
+:      013956 mouse_24g_pairing_button:
+0x3dce 013957 fetch 2 ,mem_24g_pairing_timer_count 
+0x3dcf 013958 rtn blank 
+0x3dd0 013959 fetch mouse_flag_len ,mem_mouse_flag 
+0x3dd1 013960 rtnbit0 mouse_enable_24g 
+0x3dd2 013961 rtnbit1 mosue_24g_pairing_flag 
+0x3dd3 013962 rtnmark1 mark_24g 
+0x3dd4 013963 call mouse_check_key_gpio 
+0x3dd5 013964 rtnne mouse_lmr_button 
+0x3dd6 013965 call mouse_devce_led_off 
+0x3dd7 013966 arg mosue_24g_pairing_flag ,queue 
+0x3dd8 013967 call mouse_enable_function_flag 
+0x3dd9 013968 setarg 0 
+0x3dda 013969 store 2 ,mem_mouse_direct_timer 
+0x3ddb 013970 store 1 ,mem_mouse_send_blank_timer 
+0x3ddc 013971 call g24_set0_mem_check_dongle_times 
+0x3ddd 013973 fetch 2 ,mem_ui_state_map 
+0x3dde 013974 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
+0x3ddf 013975 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x3de0 013976 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x3de1 013977 call mouse_stop_discovery 
+0x3de2 013978 branch g24_start_pairing_sm1 
+:      013981 mouse_idle:
+0x3de3 013982 call mouse_24g_pairing_button 
+0x3de4 013983 call ui_check_paring_button 
+0x3de5 013984 call mouse_dpi_cheak 
+0x3de6 013985 call mouse_usb_isr 
+0x3de7 013986 call mouse_wheel_check 
+0x3de8 013987 branch mouse_usb_mode 
+:      013988 mouse_usb_isr:
+0x3de9 013989 fetch mouse_flag_len ,mem_mouse_flag 
+0x3dea 013990 rtnbit0 mouse_enable_usb 
+0x3deb 013991 call usb_isr 
+0x3dec 013992 branch usb_offline_state 
+:      013994 mouse_cheak_usb:
+0x3ded 013995 hfetch 1 ,core_usb_addr 
+0x3dee 013996 bbit0 7 ,mouse_usb_no_exsit 
+0x3def 013997 bbit1 7 ,mouse_usb_exsit 
+0x3df0 013998 rtn 
+:      013999 mouse_usb_no_exsit:
+0x3df1 014000 fetch 1 ,mem_usb_addr 
+0x3df2 014001 rtnbit0 7 
+0x3df3 014002 branch soft_reset_chip 
+:      014003 mouse_usb_exsit:
+0x3df4 014004 fetch 1 ,mem_usb_addr 
+0x3df5 014005 rtnbit1 7 
+0x3df6 014006 branch mouse_stop_bluetooth_mode 
+:      014008 mouse_usb_mode:
+0x3df7 014009 call mouse_cheak_usb 
+0x3df8 014010 hfetch 1 ,core_usb_addr 
+0x3df9 014011 store 1 ,mem_usb_addr 
+0x3dfa 014012 rtnbit0 7 
+0x3dfb 014013 call mouse_clkn_check 
+0x3dfc 014014 fetch 4 ,mem_btclk_sensor 
+0x3dfd 014015 fetcht 1 ,mem_wire_usb_interval 
+0x3dfe 014016 iadd temp ,temp 
+0x3dff 014017 copy clkn_bt ,pdata 
+0x3e00 014018 isub temp ,null 
+0x3e01 014019 nrtn positive 
+0x3e02 014020 store 4 ,mem_btclk_sensor 
+0x3e03 014021 call mouse_motion 
+0x3e04 014022 nrtn user 
+0x3e05 014023 jam 4 ,mem_usb_tx_enable 
+0x3e06 014024 branch mouse_wired_to_usb 
+:      014026 mouse_clkn_check:
+0x3e07 014027 fetcht 4 ,mem_btclk_sensor 
+0x3e08 014028 copy clkn_bt ,pdata 
+0x3e09 014029 isub temp ,null 
+0x3e0a 014030 ncall mouse_clkn_timeout ,positive 
+0x3e0b 014031 rtn 
+:      014032 mouse_clkn_timeout:
+0x3e0c 014033 setarg 0 
+0x3e0d 014034 store 4 ,mem_btclk_sensor 
+0x3e0e 014035 rtn 
+:      014039 mouse_wired_to_usb:
+0x3e0f 014040 fetch 1 ,mem_usb_tx_enable 
+0x3e10 014041 rtnbit0 2 
+0x3e11 014042 branch mouse_data_push 
+:      014043 mouse_data_push:
+0x3e12 014044 hfetch 1 ,core_usb_addr 
+0x3e13 014045 rtnbit0 7 
+0x3e14 014046 jam usb_ep2_ms ,mem_usb_ep2_data 
+0x3e15 014047 setarg ms_report_id 
+0x3e16 014048 store 1 ,mem_usb_mouse_data 
+0x3e17 014049 fetch 7 ,mem_mouse_key 
+0x3e18 014050 istore 7 ,contw 
+0x3e19 014051 rtn 
+:      014054 mouse_enable_clock_qdecoder:
+0x3e1a 014055 hfetch 2 ,core_clkoff 
+0x3e1b 014056 set0 clock_off_qdecoder ,pdata 
+0x3e1c 014057 hstore 2 ,core_clkoff 
+0x3e1d 014058 rtn 
+:      014060 mouse_param_init:
+0x3e1e 014061 setarg 0x8c00 
+0x3e1f 014062 store 2 ,mem_ui_uuid_table 
+0x3e20 014063 setarg 0x8e7a 
+0x3e21 014064 store 2 ,mem_ui_le_uuid_table 
+0x3e22 014065 setarg 0x2402 
+0x3e23 014066 store 2 ,mem_fcomp_mul 
+0x3e24 014067 setarg 0x2580 
+0x3e25 014068 store 3 ,mem_class 
+0x3e26 014069 jam 3 ,mem_lpm_mult_timeout 
+0x3e27 014070 jam 8 ,mem_lpm_overhead 
+0x3e28 014071 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x3e29 014072 setarg 0x0200 
+0x3e2a 014073 store 2 ,mem_lpm_interval 
+0x3e2b 014074 jam 0x17 ,mem_le_local_mtu 
+0x3e2c 014075 jam 0x17 ,mem_le_remote_mtu 
+0x3e2d 014077 setarg 0x0a77 
+0x3e2e 014078 store 2 ,mem_spi_init_clk 
+0x3e2f 014094 setsect 0 ,0x306 
+0x3e30 014095 setsect 1 ,0x4440 
+0x3e31 014096 setsect 2 ,0x10000 
+0x3e32 014097 setsect 3 ,0x4408 
+0x3e33 014098 store 9 ,mem_all_uuid_16bits 
+0x3e34 014099 setsect 0 ,0x1224 
+0x3e35 014100 setsect 1 ,0x4000 
+0x3e36 014101 setsect 2 ,0x0 
+0x3e37 014102 istore 5 ,contw 
+0x3e38 014104 setsect 0 ,0x3ffff 
+0x3e39 014105 setsect 1 ,0x2fe23 
+0x3e3a 014106 setsect 2 ,0x199d9 
+0x3e3b 014107 setsect 3 ,0x20d 
+0x3e3c 014108 store 8 ,mem_features 
+0x3e3d 014110 setarg 0x012c 
+0x3e3e 014111 store 2 ,mem_24g_pairing_timer_count 
+0x3e3f 014112 call le_modified_name 
+0x3e40 014113 fetch mouse_flag_len ,mem_mouse_flag 
+0x3e41 014114 rtnbit0 mouse_enable_gpio_control_adc_sensor 
+0x3e42 014115 call mouse_sensor_set_angle 
+0x3e43 014116 branch mouse_select_adc 
+:      014118 mouse_sensor_set_angle:
+0x3e44 014119 fetcht 1 ,mem_select_sensor_angle_gpio 
+0x3e45 014120 call gpio_config_input 
+0x3e46 014121 fetcht 1 ,mem_select_sensor_angle_gpio 
+0x3e47 014122 call gpio_get_bit 
+0x3e48 014123 jam mouse_3clk_angle ,mem_config_sensor_angle 
+0x3e49 014124 rtn true 
+0x3e4a 014125 jam mouse_12clk_angle ,mem_config_sensor_angle 
+0x3e4b 014126 rtn 
+:      014128 mouse_select_adc:
+0x3e4c 014129 fetcht 1 ,mem_select_adc_gpio 
+0x3e4d 014130 call gpio_config_input 
+0x3e4e 014131 fetcht 1 ,mem_select_adc_gpio 
+0x3e4f 014132 call gpio_get_bit 
+0x3e50 014133 jam adc_config_vinlpm ,mem_adc_config_flag 
+0x3e51 014134 rtn true 
+0x3e52 014135 jam adc_config_gpio ,mem_adc_config_flag 
+0x3e53 014136 rtn 
+:      014139 mouse_adc_init:
+0x3e54 014140 fetch 1 ,mem_adc_config_flag 
+0x3e55 014141 beq adc_config_vinlpm ,mouse_adc_init_data_vinlpm 
+0x3e56 014142 beq adc_config_hvin ,mouse_adc_init_data_hvin 
+0x3e57 014143 beq adc_config_gpio ,mouse_adc_init_data_io 
+0x3e58 014144 branch mouse_adc_init_data_vinlpm 
+:      014146 mouse_adc_init_data_vinlpm:
+0x3e59 014147 fetcht 2 ,mem_2v_adc_vinlpm_data 
+0x3e5a 014148 fetch 2 ,mem_3v_adc_vinlpm_data 
+0x3e5b 014149 isub temp ,pdata 
+0x3e5c 014150 mul32 pdata ,20 ,pdata 
+0x3e5d 014151 div pdata ,100 
+0x3e5e 014152 call wait_div_end 
+0x3e5f 014153 quotient pdata 
+0x3e60 014154 store 2 ,mem_adc_reference_voltage 
+0x3e61 014155 rtn 
+:      014156 mouse_adc_init_data_hvin:
+0x3e62 014157 fetcht 2 ,mem_1v_adc_hvin_data 
+0x3e63 014158 fetch 2 ,mem_5v_adc_hvin_data 
+0x3e64 014159 isub temp ,pdata 
+0x3e65 014160 mul32 pdata ,230 ,pdata 
+0x3e66 014161 div pdata ,400 
+0x3e67 014162 call wait_div_end 
+0x3e68 014163 quotient pdata 
+0x3e69 014164 store 2 ,mem_adc_reference_voltage 
+0x3e6a 014165 rtn 
+:      014166 mouse_adc_init_data_io:
+0x3e6b 014167 fetch 2 ,mem_1v_adc_io_data 
+0x3e6c 014168 store 2 ,mem_adc_reference_voltage 
+0x3e6d 014169 rtn 
+:      014170 mouse_gpio_init:
+0x3e6e 014171 fetcht 1 ,mem_eeprom_wp_gpio 
+0x3e6f 014172 call gpio_config_output 
+0x3e70 014173 call usb_offline_check_init 
+0x3e71 014174 fetcht 1 ,mem_lbutton_gpio 
+0x3e72 014175 call gpio_config_input 
+0x3e73 014176 fetcht 1 ,mem_rbutton_gpio 
+0x3e74 014177 call gpio_config_input 
+0x3e75 014178 fetcht 1 ,mem_mbutton_gpio 
+0x3e76 014179 call gpio_config_input 
+0x3e77 014180 fetcht 1 ,mem_sensor_data_gpio 
+0x3e78 014181 call gpio_config_input 
+0x3e79 014183 fetcht 1 ,mem_sensor_reset_gpio 
+0x3e7a 014184 call gpio_config_output 
+0x3e7b 014186 fetcht 1 ,mem_whee_a_data_gpio 
+0x3e7c 014187 call gpio_config_input 
+0x3e7d 014189 fetcht 1 ,mem_whee_b_data_gpio 
+0x3e7e 014190 call gpio_config_input 
+0x3e7f 014192 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3e80 014193 call gpio_config_input 
+0x3e81 014194 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3e82 014195 call gpio_config_input 
+0x3e83 014197 fetcht 1 ,mem_bk_button_gpio 
+0x3e84 014198 call gpio_config_input 
+0x3e85 014199 fetcht 1 ,mem_fw_button_gpio 
+0x3e86 014200 call gpio_config_input 
+0x3e87 014202 fetcht 1 ,mem_config_low_voltage_alarm_gpio 
+0x3e88 014203 call gpio_config_output 
+0x3e89 014205 fetcht 1 ,mem_config_device1_led_gpio 
+0x3e8a 014206 call gpio_config_output 
+0x3e8b 014208 fetcht 1 ,mem_config_device2_led_gpio 
+0x3e8c 014209 call gpio_config_output 
+0x3e8d 014211 fetcht 1 ,mem_config_device3_led_gpio 
+0x3e8e 014212 call gpio_config_output 
+0x3e8f 014214 fetcht 1 ,mem_dpi_led_gpio 
+0x3e90 014215 call gpio_config_output 
+0x3e91 014217 fetcht 1 ,mem_config_select_device_button_gpio 
+0x3e92 014218 call gpio_config_input 
+0x3e93 014220 fetcht 1 ,mem_config_bt_button_gpio 
+0x3e94 014221 call gpio_config_input 
+0x3e95 014223 fetcht 1 ,mem_dpi_button_gpio 
+0x3e96 014224 branch gpio_config_input 
+:      014226 mouse_wheel_gpio_set_wake:
+0x3e97 014227 fetcht 1 ,mem_whee_a_data_gpio 
+0x3e98 014228 call gpio_set_wake_by_current_state 
+0x3e99 014229 fetcht 1 ,mem_whee_b_data_gpio 
+0x3e9a 014230 call gpio_set_wake_by_current_state 
+0x3e9b 014231 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3e9c 014232 call gpio_set_wake_by_current_state 
+0x3e9d 014233 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3e9e 014234 branch gpio_set_wake_by_current_state 
+:      014236 mouse_before_hibernate_wheel_gpio_set:
+0x3e9f 014237 fetcht 1 ,mem_whee_a_data_gpio 
+0x3ea0 014238 call mouse_gpio_set_pupd_by_input 
+0x3ea1 014239 fetcht 1 ,mem_whee_b_data_gpio 
+0x3ea2 014240 call mouse_gpio_set_pupd_by_input 
+0x3ea3 014241 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3ea4 014242 call mouse_gpio_set_pupd_by_input 
+0x3ea5 014243 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3ea6 014244 branch mouse_gpio_set_pupd_by_input 
+:      014246 mouse_gpio_set_pupd_by_input:
+0x3ea7 014247 sub temp ,ui_button_gpio_disable ,null 
+0x3ea8 014248 rtn zero 
+0x3ea9 014249 and temp ,0x7f ,queue 
+0x3eaa 014250 hfetch 4 ,core_gpio_in 
+0x3eab 014251 qisolate1 pdata 
+0x3eac 014252 hfetch 4 ,core_gpio_pu0 
+0x3ead 014253 qsetflag true ,pdata 
+0x3eae 014254 hstore 4 ,core_gpio_pu0 
+0x3eaf 014255 hfetch 4 ,core_gpio_pd0 
+0x3eb0 014256 nqsetflag true ,pdata 
+0x3eb1 014257 hstore 4 ,core_gpio_pd0 
+0x3eb2 014258 rtn 
+:      014260 mouse_before_hibernate:
+0x3eb3 014261 enable user 
+0x3eb4 014262 hfetch 4 ,0x8138 
+0x3eb5 014263 setflag user ,26 ,pdata 
+0x3eb6 014264 hstore 4 ,core_lpm_reg 
+0x3eb7 014265 call lpm_write_ctrl 
+0x3eb8 014266 call mouse_devce_led_off 
+0x3eb9 014267 call mouse_before_hibernate_wheel_gpio_set 
+0x3eba 014269 branch mouse_lpm_before_common 
+:      014273 mouse_process_lpm_before:
+0x3ebb 014274 call mouse_lpm_before_common 
+0x3ebc 014275 fetch 1 ,mem_lpm_current_mult 
+0x3ebd 014276 nrtn blank 
+0x3ebe 014277 branch gpio_clr_wake 
+:      014279 mouse_lpm_before_common:
+0x3ebf 014280 call mouse_wheel_check 
+0x3ec0 014281 arg mouse_spi1_clk_gpio ,temp 
+0x3ec1 014282 fetch mouse_flag_len ,mem_mouse_flag 
+0x3ec2 014283 isolate1 mouse_enable_spi2 ,pdata 
+0x3ec3 014284 call mouse_spi_clk_gpio ,true 
+0x3ec4 014285 call gpio_config_output 
+0x3ec5 014286 call twspi_disable 
+0x3ec6 014290 fetcht 1 ,mem_lbutton_gpio 
+0x3ec7 014291 call gpio_set_wake_by_current_state 
+0x3ec8 014292 fetcht 1 ,mem_rbutton_gpio 
+0x3ec9 014293 call gpio_set_wake_by_current_state 
+0x3eca 014294 fetcht 1 ,mem_mbutton_gpio 
+0x3ecb 014295 call gpio_set_wake_by_current_state 
+0x3ecc 014297 fetcht 1 ,mem_bk_button_gpio 
+0x3ecd 014298 call gpio_set_wake_by_current_state 
+0x3ece 014299 fetcht 1 ,mem_fw_button_gpio 
+0x3ecf 014300 call gpio_set_wake_by_current_state 
+0x3ed0 014301 fetcht 1 ,mem_dpi_button_gpio 
+0x3ed1 014302 call gpio_set_wake_by_current_state 
+0x3ed2 014303 fetcht 1 ,mem_config_select_device_button_gpio 
+0x3ed3 014304 call gpio_set_wake_by_current_state 
+0x3ed4 014305 fetcht 1 ,mem_whee_a_data_gpio 
+0x3ed5 014306 call gpio_set_wake_by_current_state 
+0x3ed6 014307 fetcht 1 ,mem_whee_b_data_gpio 
+0x3ed7 014308 call gpio_set_wake_by_current_state 
+0x3ed8 014309 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3ed9 014310 call gpio_set_wake_by_current_state 
+0x3eda 014311 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3edb 014312 call gpio_set_wake_by_current_state 
+0x3edc 014313 fetcht 1 ,mem_sensor_data_gpio 
+0x3edd 014314 branch gpio_set_wake 
+:      014318 mouse_spi_clk_gpio:
+0x3ede 014319 arg mouse_spi2_clk_gpio ,temp 
+0x3edf 014320 rtn 
+:      014322 mouse_wheel_check:
+0x3ee0 014323 bpatch patch1c_4 ,mem_patch1c 
+0x3ee1 014324 call mouse_t_wheel_scan 
+0x3ee2 014325 call mouse_wheel_scan 
+0x3ee3 014326 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3ee4 014327 fetcht 1 ,mem_wheel_tb_old_pinlevel 
+0x3ee5 014328 store 1 ,mem_wheel_tb_old_pinlevel 
+0x3ee6 014329 isub temp ,null 
+0x3ee7 014330 nbranch app_lpm_wake_auto_lock ,zero 
+0x3ee8 014331 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3ee9 014332 fetcht 1 ,mem_mwheel_b_old_pinlevel 
+0x3eea 014333 store 1 ,mem_mwheel_b_old_pinlevel 
+0x3eeb 014334 isub temp ,null 
+0x3eec 014335 nbranch app_lpm_wake_auto_lock ,zero 
+0x3eed 014336 rtn 
+:      014337 mouse_t_wheel_scan:
+0x3eee 014338 fetch 1 ,mem_whee_ta_data_gpio 
+0x3eef 014339 rtneq gpio_disable 
+0x3ef0 014340 arg 0 ,rega 
+0x3ef1 014341 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3ef2 014342 call gpio_get_bit 
+0x3ef3 014343 setflag true ,0 ,rega 
+0x3ef4 014344 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3ef5 014345 call gpio_get_bit 
+0x3ef6 014346 setflag true ,1 ,rega 
+0x3ef7 014347 copy rega ,pdata 
+0x3ef8 014348 store 1 ,mem_wheel_tb_new_pinlevel 
+0x3ef9 014349 beq 0x01 ,mouse_t_wheel_scan_judge1 
+0x3efa 014350 beq 0x02 ,mouse_t_wheel_scan_judge2 
+0x3efb 014351 fetch 1 ,mem_wheel_tog 
+0x3efc 014352 bbit1 7 ,mouse_t_wheel_scan_judge3 
+0x3efd 014353 rtn 
+:      014355 mouse_t_wheel_scan_judge1:
+0x3efe 014356 fetch 1 ,mem_wheel_tb_old_pinlevel 
+0x3eff 014357 beq 0 ,mouse_t_wheel_scan_judge11 
+0x3f00 014358 beq 3 ,mouse_t_wheel_scan_judge12 
+0x3f01 014359 rtn 
+:      014360 mouse_t_wheel_scan_judge2:
+0x3f02 014361 fetch 1 ,mem_wheel_tb_old_pinlevel 
+0x3f03 014362 beq 0 ,mouse_t_wheel_scan_judge21 
+0x3f04 014363 beq 3 ,mouse_t_wheel_scan_judge22 
+0x3f05 014364 rtn 
+:      014365 mouse_t_wheel_scan_judge11:
+0x3f06 014366 jam 0x82 ,mem_wheel_tog 
+0x3f07 014367 rtn 
+:      014368 mouse_t_wheel_scan_judge12:
+0x3f08 014369 jam 0x81 ,mem_wheel_tog 
+0x3f09 014370 rtn 
+:      014371 mouse_t_wheel_scan_judge21:
+0x3f0a 014372 jam 0x80 ,mem_wheel_tog 
+0x3f0b 014373 rtn 
+:      014374 mouse_t_wheel_scan_judge22:
+0x3f0c 014375 jam 0x83 ,mem_wheel_tog 
+0x3f0d 014376 rtn 
+:      014377 mouse_t_wheel_scan_judge3:
+0x3f0e 014378 fetch 1 ,mem_wheel_tog 
+0x3f0f 014379 set0 7 ,pdata 
+0x3f10 014380 store 1 ,mem_wheel_tog 
+0x3f11 014381 beq 0 ,mouse_t_wheel_scan_judge30 
+0x3f12 014382 beq 1 ,mouse_t_wheel_scan_judge31 
+0x3f13 014383 beq 2 ,mouse_t_wheel_scan_judge32 
+0x3f14 014384 beq 3 ,mouse_t_wheel_scan_judge33 
+0x3f15 014385 rtn 
+:      014386 mouse_t_wheel_scan_judge30:
+0x3f16 014387 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f17 014388 beq 3 ,mouse_wheel_t_forward 
+0x3f18 014389 rtn 
+:      014390 mouse_t_wheel_scan_judge31:
+0x3f19 014391 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f1a 014392 beq 0 ,mouse_wheel_t_forward 
+0x3f1b 014393 rtn 
+:      014394 mouse_t_wheel_scan_judge32:
+0x3f1c 014395 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f1d 014396 beq 3 ,mouse_wheel_t_back 
+0x3f1e 014397 rtn 
+:      014398 mouse_t_wheel_scan_judge33:
+0x3f1f 014399 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f20 014400 beq 0 ,mouse_wheel_t_back 
+0x3f21 014401 rtn 
+:      014402 mouse_wheel_t_forward:
+0x3f22 014403 fetch 1 ,mem_mouse_tz_data_count1 
+0x3f23 014404 increase 1 ,pdata 
+0x3f24 014405 store 1 ,mem_mouse_tz_data_count1 
+0x3f25 014406 sub pdata ,1 ,null 
+0x3f26 014407 rtn positive 
+0x3f27 014408 jam 0 ,mem_mouse_tz_data_count1 
+0x3f28 014409 fetch 1 ,mem_mouse_tz_data 
+0x3f29 014410 increase 1 ,pdata 
+0x3f2a 014411 store 1 ,mem_mouse_tz_data 
+0x3f2b 014412 rtn 
+:      014413 mouse_wheel_t_back:
+0x3f2c 014414 fetch 1 ,mem_mouse_tz_data_count 
+0x3f2d 014415 increase 1 ,pdata 
+0x3f2e 014416 store 1 ,mem_mouse_tz_data_count 
+0x3f2f 014417 sub pdata ,1 ,null 
+0x3f30 014418 rtn positive 
+0x3f31 014419 jam 0 ,mem_mouse_tz_data_count 
+0x3f32 014420 fetch 1 ,mem_mouse_tz_data 
+0x3f33 014421 increase -1 ,pdata 
+0x3f34 014422 store 1 ,mem_mouse_tz_data 
+0x3f35 014423 rtn 
+:      014426 mouse_wheel_scan:
+0x3f36 014427 fetch 1 ,mem_whee_a_data_gpio 
+0x3f37 014428 rtneq gpio_disable 
+0x3f38 014429 arg 0 ,rega 
+0x3f39 014430 fetcht 1 ,mem_whee_a_data_gpio 
+0x3f3a 014431 call gpio_get_bit 
+0x3f3b 014432 setflag true ,0 ,rega 
+0x3f3c 014433 fetcht 1 ,mem_whee_b_data_gpio 
+0x3f3d 014434 call gpio_get_bit 
+0x3f3e 014435 setflag true ,1 ,rega 
+0x3f3f 014436 copy rega ,pdata 
+0x3f40 014437 store 1 ,mem_mwheel_b_new_pinlevel 
+0x3f41 014438 beq 0x01 ,mouse_wheel_scan_judge1 
+0x3f42 014439 beq 0x02 ,mouse_wheel_scan_judge2 
+0x3f43 014440 fetch 1 ,mem_mwheel_tog 
+0x3f44 014441 bbit1 7 ,mouse_wheel_scan_judge3 
+0x3f45 014442 rtn 
+:      014444 mouse_wheel_scan_judge1:
+0x3f46 014445 fetch 1 ,mem_mwheel_b_old_pinlevel 
+0x3f47 014446 beq 0 ,mouse_wheel_scan_judge11 
+0x3f48 014447 beq 3 ,mouse_wheel_scan_judge12 
+0x3f49 014448 rtn 
+:      014449 mouse_wheel_scan_judge2:
+0x3f4a 014450 fetch 1 ,mem_mwheel_b_old_pinlevel 
+0x3f4b 014451 beq 0 ,mouse_wheel_scan_judge21 
+0x3f4c 014452 beq 3 ,mouse_wheel_scan_judge22 
+0x3f4d 014453 rtn 
+:      014454 mouse_wheel_scan_judge11:
+0x3f4e 014455 jam 0x82 ,mem_mwheel_tog 
+0x3f4f 014456 rtn 
+:      014457 mouse_wheel_scan_judge12:
+0x3f50 014458 jam 0x81 ,mem_mwheel_tog 
+0x3f51 014459 rtn 
+:      014460 mouse_wheel_scan_judge21:
+0x3f52 014461 jam 0x80 ,mem_mwheel_tog 
+0x3f53 014462 rtn 
+:      014463 mouse_wheel_scan_judge22:
+0x3f54 014464 jam 0x83 ,mem_mwheel_tog 
+0x3f55 014465 rtn 
+:      014466 mouse_wheel_scan_judge3:
+0x3f56 014467 fetch 1 ,mem_mwheel_tog 
+0x3f57 014468 set0 7 ,pdata 
+0x3f58 014469 store 1 ,mem_mwheel_tog 
+0x3f59 014470 beq 0 ,mouse_wheel_scan_judge30 
+0x3f5a 014471 beq 1 ,mouse_wheel_scan_judge31 
+0x3f5b 014472 beq 2 ,mouse_wheel_scan_judge32 
+0x3f5c 014473 beq 3 ,mouse_wheel_scan_judge33 
+0x3f5d 014474 rtn 
+:      014475 mouse_wheel_scan_judge30:
+0x3f5e 014476 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f5f 014477 beq 3 ,mouse_wheel_forward 
+0x3f60 014478 rtn 
+:      014479 mouse_wheel_scan_judge31:
+0x3f61 014480 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f62 014481 beq 0 ,mouse_wheel_forward 
+0x3f63 014482 rtn 
+:      014483 mouse_wheel_scan_judge32:
+0x3f64 014484 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f65 014485 beq 3 ,mouse_wheel_back 
+0x3f66 014486 rtn 
+:      014487 mouse_wheel_scan_judge33:
+0x3f67 014488 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f68 014489 beq 0 ,mouse_wheel_back 
+0x3f69 014490 rtn 
+:      014491 mouse_wheel_forward:
+0x3f6a 014492 jam 0 ,mem_mouse_z_data_count1 
+0x3f6b 014493 fetch 1 ,mem_mouse_z_data 
+0x3f6c 014494 increase 1 ,pdata 
+0x3f6d 014495 store 1 ,mem_mouse_z_data 
+0x3f6e 014496 rtn 
+:      014497 mouse_wheel_back:
+0x3f6f 014498 jam 0 ,mem_mouse_z_data_count 
+0x3f70 014499 fetch 1 ,mem_mouse_z_data 
+0x3f71 014500 increase -1 ,pdata 
+0x3f72 014501 store 1 ,mem_mouse_z_data 
+0x3f73 014502 rtn 
+:      014505 mouse_hid_connected:
+0x3f74 014506 setarg hid_handshake_timeout 
+0x3f75 014507 store 1 ,mem_hid_handshake_timer_count 
+0x3f76 014508 rtn 
+:      014510 mouse_send_process:
+0x3f77 014511 fetch 1 ,mem_app_handshake_flag 
+0x3f78 014512 rtn blank 
+0x3f79 014513 call l2cap_malloc_is_fifo_nearly_full 
+0x3f7a 014514 nrtn blank 
+0x3f7b 014515 fetch mouse_flag_len ,mem_mouse_flag 
+0x3f7c 014516 bbit1 mosue_24g_pairing_flag ,mouse_send_empty_data 
+0x3f7d 014517 bbit1 mouse_select_device_flag ,mouse_send_empty_data 
+0x3f7e 014518 bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
+0x3f7f 014519 call mouse_motion 
+0x3f80 014520 nrtn user 
+:      014521 mouse_send_data:
+0x3f81 014522 arg 9 ,rega 
+0x3f82 014523 call hid_malloc_tx_buff 
+0x3f83 014524 fetch 2 ,mem_hid_int_remote_cid 
+0x3f84 014525 istore 2 ,contw 
+0x3f85 014526 setarg 0x02a1 
+0x3f86 014527 istore 2 ,contw 
+0x3f87 014528 fetch 7 ,mem_mouse_key 
+0x3f88 014529 istore 7 ,contw 
+0x3f89 014530 rtn 
+:      014533 mouse_send_empty_data:
+0x3f8a 014534 setarg 0 
+0x3f8b 014535 store 7 ,mem_mouse_key 
+0x3f8c 014536 branch mouse_send_data 
+:      014539 mouse_no_data_timer_init:
+0x3f8d 014540 fetch 2 ,mem_mouse_no_data_timeout 
+0x3f8e 014541 store 2 ,mem_mouse_no_data_timer 
+0x3f8f 014542 rtn 
+:      014545 mouse_fill_data_le:
+0x3f90 014546 bpatch patch1c_5 ,mem_patch1c 
+0x3f91 014547 arg 7 ,rega 
+0x3f92 014548 fetcht 2 ,mem_le_notify_handle 
+0x3f93 014549 call le_att_malloc_tx_notify 
+0x3f94 014550 fetch 7 ,mem_mouse_key 
+0x3f95 014551 istore 7 ,contw 
+0x3f96 014552 rtn 
+:      014554 mouse_motion:
+0x3f97 014555 bpatch patch1c_6 ,mem_patch1c 
+0x3f98 014556 disable user 
+0x3f99 014557 setarg 0 
+0x3f9a 014558 store 6 ,mem_mouse_x 
+0x3f9b 014559 call mouse_cheak_sensor_data 
+0x3f9c 014560 call mouse_zwheel 
+0x3f9d 014561 call mouse_t_zwheel 
+0x3f9e 014562 call mouse_key 
+0x3f9f 014563 nrtn user 
+0x3fa0 014564 call mouse_no_data_timer_init 
+0x3fa1 014565 arg mouse_statue_up_flag ,queue 
+0x3fa2 014566 branch mouse_enable_function_flag 
+:      014568 motion_6clk_direction_dispose:
+0x3fa3 014569 fetch 2 ,mem_mouse_x 
+0x3fa4 014570 sub pdata ,0 ,pdata 
+0x3fa5 014571 store 2 ,mem_mouse_x 
+0x3fa6 014572 branch enable_user 
+:      014573 motion_12clk_direction_dispose:
+0x3fa7 014574 fetch 2 ,mem_mouse_y 
+0x3fa8 014575 sub pdata ,0 ,pdata 
+0x3fa9 014576 store 2 ,mem_mouse_y 
+0x3faa 014577 branch enable_user 
+:      014578 motion_9clk_direction_dispose:
+0x3fab 014579 fetch 2 ,mem_mouse_y 
+0x3fac 014580 sub pdata ,0 ,pdata 
+0x3fad 014581 store 2 ,mem_mouse_y 
+0x3fae 014582 fetch 2 ,mem_mouse_x 
+0x3faf 014583 sub pdata ,0 ,pdata 
+0x3fb0 014584 store 2 ,mem_mouse_x 
+0x3fb1 014585 call mouse_sensor_data_swap_places 
+0x3fb2 014586 branch enable_user 
+:      014587 motion_3clk_direction_dispose:
+0x3fb3 014588 call mouse_sensor_data_swap_places 
+0x3fb4 014589 branch enable_user 
+:      014590 mouse_cheak_sensor_data:
+0x3fb5 014591 fetch 1 ,mem_spi_write_flash_sm 
+0x3fb6 014592 rtnne flash_sm_no_buys 
+0x3fb7 014593 fetch 1 ,mem_config_sensor_type 
+0x3fb8 014594 beq p3205 ,mouse_p32xx_sensor_motion 
+0x3fb9 014595 beq p3065 ,mouse_p32xx_sensor_motion 
+0x3fba 014596 beq ka8 ,mouse_p32xx_sensor_motion 
+0x3fbb 014597 beq p3204 ,mouse_p32xx_sensor_motion 
+0x3fbc 014598 beq p3212 ,mouse_p3212_sensor_motion 
+0x3fbd 014599 beq p3610 ,mouse_p3610_sensor_motion 
+0x3fbe 014600 beq p3065_xy ,mouse_p32xx_sensor_motion 
+0x3fbf 014601 branch mouse_p32xx_sensor_motion 
+:      014603 mouse_clear_sensor_data:
+0x3fc0 014604 fetch 1 ,mem_mouse_move_flag 
+0x3fc1 014605 call mouse_read_sensor_common ,blank 
+0x3fc2 014606 jam 1 ,mem_mouse_move_flag 
+0x3fc3 014607 rtn 
+:      014610 mouse_p3212_sensor_motion:
+0x3fc4 014611 call mouse_clear_sensor_data 
+0x3fc5 014612 fetcht 1 ,mem_sensor_data_gpio 
+0x3fc6 014613 call gpio_get_bit 
+0x3fc7 014614 nrtn true 
+:      014615 mouse_p3212_sensor_motion_1:
+0x3fc8 014616 setarg pan_reg_pid_l 
+0x3fc9 014617 call twspi_read 
+0x3fca 014618 bne p32xx_id1 ,mouse_twspi_reset 
+0x3fcb 014619 setarg pan_reg_motion_staus 
+0x3fcc 014620 call twspi_read 
+0x3fcd 014621 rtnbit0 7 
+0x3fce 014622 call mouse_read_sensor_common 
+0x3fcf 014623 call mouse_read_3212sensor_xy_high 
+0x3fd0 014624 store 1 ,mem_mouse_xy_h 
+0x3fd1 014625 rshift4 pdata ,pdata 
+0x3fd2 014626 call extsign_bit3 
+0x3fd3 014627 store 1 ,mem_mouse_x + 1 
+0x3fd4 014628 fetch 1 ,mem_mouse_xy_h 
+0x3fd5 014629 and pdata ,0x0f ,pdata 
+0x3fd6 014630 call extsign_bit3 
+0x3fd7 014631 store 1 ,mem_mouse_y + 1 
+0x3fd8 014632 fetch 1 ,mem_config_sensor_angle 
+0x3fd9 014633 beq mouse_6clk_angle ,motion_6clk_direction_dispose 
+0x3fda 014634 beq mouse_9clk_angle ,motion_9clk_direction_dispose 
+0x3fdb 014635 beq mouse_12clk_angle ,motion_12clk_direction_dispose 
+0x3fdc 014636 beq mouse_3clk_angle ,motion_3clk_direction_dispose 
+0x3fdd 014637 rtn 
+:      014639 mouse_read_3212sensor_xy_high:
+0x3fde 014640 setarg 0x12 
+0x3fdf 014641 branch twspi_read 
+:      014643 mouse_p3065_judge:
+0x3fe0 014644 beq p3065_id1 ,mouse_p32xx_sensor_motion_1 
+0x3fe1 014645 branch mouse_twspi_reset 
+:      014647 mouse_p32xx_sensor_motion:
+0x3fe2 014648 call mouse_clear_sensor_data 
+0x3fe3 014649 disable user 
+0x3fe4 014650 fetcht 1 ,mem_sensor_data_gpio 
+0x3fe5 014651 call gpio_get_bit 
+0x3fe6 014652 nrtn true 
+:      014653 mouse_p32xx_sensor_motion_2:
+0x3fe7 014654 setarg pan_reg_pid_l 
+0x3fe8 014655 call twspi_read 
+0x3fe9 014656 bne p32xx_id1 ,mouse_p3065_judge 
+:      014657 mouse_p32xx_sensor_motion_1:
+0x3fea 014658 setarg pan_reg_motion_staus 
+0x3feb 014659 call twspi_read 
+0x3fec 014660 rtnbit0 7 
+0x3fed 014661 call mouse_read_sensor_common 
+0x3fee 014662 fetch 1 ,mem_mouse_x 
+0x3fef 014663 call extsign 
+0x3ff0 014664 store 2 ,mem_mouse_x 
+0x3ff1 014665 fetch 1 ,mem_mouse_y 
+0x3ff2 014666 call extsign 
+0x3ff3 014667 store 2 ,mem_mouse_y 
+0x3ff4 014668 fetch 1 ,mem_config_sensor_angle 
+0x3ff5 014669 beq mouse_6clk_angle ,motion32xx_6clk_direction_selection 
+0x3ff6 014670 beq mouse_9clk_angle ,motion32xx_9clk_direction_selection 
+0x3ff7 014671 beq mouse_12clk_angle ,motion32xx_12clk_direction_selection 
+0x3ff8 014672 beq mouse_3clk_angle ,motion32xx_3clk_direction_selection 
+0x3ff9 014673 rtn 
+:      014675 motion32xx_6clk_direction_selection:
+0x3ffa 014676 call motion_6clk_direction_dispose 
+0x3ffb 014677 branch mouse_sensor_sdio_low 
+:      014678 motion32xx_9clk_direction_selection:
+0x3ffc 014679 call motion_9clk_direction_dispose 
+0x3ffd 014680 branch mouse_sensor_sdio_low 
+:      014681 motion32xx_12clk_direction_selection:
+0x3ffe 014682 call motion_12clk_direction_dispose 
+0x3fff 014683 branch mouse_sensor_sdio_low 
+:      014684 motion32xx_3clk_direction_selection:
+0x4000 014685 call motion_3clk_direction_dispose 
+0x4001 014686 branch mouse_sensor_sdio_low 
+:      014688 mouse_sensor_data_swap_places:
+0x4002 014689 fetch 2 ,mem_mouse_y 
+0x4003 014690 fetcht 2 ,mem_mouse_x 
+0x4004 014691 store 2 ,mem_mouse_x 
+0x4005 014692 storet 2 ,mem_mouse_y 
+0x4006 014693 rtn 
+:      014695 mouse_p3610sensor_read:
+0x4007 014696 call spi_ncs_enable 
+0x4008 014697 nop 100 
+0x4009 014698 copy regb ,pdata 
+0x400a 014699 call twspi_read 
+0x400b 014700 copy pdata ,regb 
+0x400c 014701 call spi_ncs_disable 
+0x400d 014702 nop 100 
+0x400e 014703 copy regb ,pdata 
+0x400f 014704 rtn 
+:      014705 mouse_p3610_sensor_motion:
+0x4010 014706 disable user 
+0x4011 014707 fetcht 1 ,mem_sensor_data_gpio 
+0x4012 014708 call gpio_get_bit 
+0x4013 014709 nrtn true 
+0x4014 014710 arg pan_reg_motion_staus ,regb 
+0x4015 014711 call mouse_p3610sensor_read 
+0x4016 014712 rtnbit0 7 
+0x4017 014713 arg pan_reg_pid_l ,regb 
+0x4018 014714 call mouse_p3610sensor_read 
+0x4019 014715 store 1 ,mem_sensor_id1 
+0x401a 014716 bne p3610_id1 ,mouse_init_3610sensor_reset 
+0x401b 014717 fetch 1 ,mem_mouse_move_flag 
+0x401c 014718 call mouse_read_sensor3610_data ,blank 
+0x401d 014719 jam 1 ,mem_mouse_move_flag 
+0x401e 014720 call mouse_read_sensor3610_data 
+0x401f 014721 fetch 1 ,mem_mouse_xy_h 
+0x4020 014722 rshift4 pdata ,pdata 
+0x4021 014723 call extsign_bit3 
+0x4022 014724 store 1 ,mem_mouse_x + 1 
+0x4023 014725 fetch 1 ,mem_mouse_xy_h 
+0x4024 014726 and pdata ,0x0f ,pdata 
+0x4025 014727 call extsign_bit3 
+0x4026 014728 store 1 ,mem_mouse_y + 1 
+0x4027 014729 fetch 1 ,mem_config_sensor_angle 
+0x4028 014730 beq 0 ,motion3610_6clk_direction_selection 
+0x4029 014731 beq 1 ,motion3610_9clk_direction_selection 
+0x402a 014732 beq 2 ,motion3610_12clk_direction_selection 
+0x402b 014733 beq 3 ,motion3610_3clk_direction_selection 
+0x402c 014734 rtn 
+:      014736 mouse_3610_smart_select:
+0x402d 014737 fetch 1 ,mem_sensor_smart_flag 
+0x402e 014738 beq p3610_smart_enable ,mouse_3610_smart_disable 
+0x402f 014739 beq p3610_smart_disable ,mouse_3610_smart_enable 
+0x4030 014740 rtn 
+:      014743 motion3610_6clk_direction_selection:
+0x4031 014744 call motion_6clk_direction_dispose 
+0x4032 014745 branch mouse_3610_smart_select 
+:      014747 motion3610_12clk_direction_selection:
+0x4033 014748 call motion_12clk_direction_dispose 
+0x4034 014749 branch mouse_3610_smart_select 
+:      014751 motion3610_9clk_direction_selection:
+0x4035 014752 call motion_9clk_direction_dispose 
+0x4036 014753 branch mouse_3610_smart_select 
+:      014755 motion3610_3clk_direction_selection:
+0x4037 014756 call motion_3clk_direction_dispose 
+0x4038 014757 branch mouse_3610_smart_select 
+:      014759 mouse_read_sensor3610_data:
+0x4039 014760 call spi_ncs_enable 
+0x403a 014761 call mouse_read_sensor_common 
+0x403b 014762 arg 5 ,pdata 
+0x403c 014763 call twspi_read 
+0x403d 014764 store 1 ,mem_mouse_xy_h 
+0x403e 014765 arg 7 ,pdata 
+0x403f 014766 call twspi_read 
+0x4040 014767 store 1 ,mem_sensor_shutter_hi 
+0x4041 014768 arg 8 ,pdata 
+0x4042 014769 call twspi_read 
+0x4043 014770 store 1 ,mem_sensor_shutter_lo 
+0x4044 014771 branch spi_ncs_disable 
+:      014774 mouse_3610_smart_enable:
+0x4045 014775 fetch 1 ,mem_sensor_shutter_hi 
+0x4046 014776 rtnne 0 
+0x4047 014777 fetch 1 ,mem_sensor_shutter_lo 
+0x4048 014778 sub pdata ,45 ,null 
+0x4049 014779 rtn positive 
+0x404a 014780 jam p3610_smart_enable ,mem_sensor_smart_flag 
+0x404b 014781 setarg 0xba41 
+0x404c 014782 call sensor_write 
+0x404d 014783 setarg 0x0032 
+0x404e 014784 call sensor_write 
+0x404f 014785 setarg 0xb541 
+0x4050 014786 branch sensor_write 
+:      014787 mouse_3610_smart_disable:
+0x4051 014788 fetch 1 ,mem_sensor_shutter_hi 
+0x4052 014789 rtnne 0 
+0x4053 014790 fetch 1 ,mem_sensor_shutter_lo 
+0x4054 014791 sub pdata ,45 ,null 
+0x4055 014792 nrtn positive 
+0x4056 014793 jam p3610_smart_disable ,mem_sensor_smart_flag 
+0x4057 014794 setarg 0xba41 
+0x4058 014795 call sensor_write 
+0x4059 014796 setarg 0x8032 
+0x405a 014797 call sensor_write 
+0x405b 014798 setarg 0xb541 
+0x405c 014799 branch sensor_write 
+:      014803 mouse_read_sensor_common:
+0x405d 014804 arg pan_reg_delta_x ,pdata 
+0x405e 014805 call twspi_read 
+0x405f 014806 store 2 ,mem_mouse_x 
+0x4060 014807 arg pan_reg_delta_y ,pdata 
+0x4061 014808 call twspi_read 
+0x4062 014809 store 2 ,mem_mouse_y 
+0x4063 014810 rtn 
+:      014812 mouse_set_qdecoder_x:
+0x4064 014813 arg mouse_default_xa_gpio ,temp 
+0x4065 014814 call gpio_config_input 
+0x4066 014815 arg mouse_default_xa_gpio ,temp 
+0x4067 014816 call gpio_get_bit 
+0x4068 014817 rtn true 
+0x4069 014818 hfetch 1 ,core_qdec_cntx 
+0x406a 014819 set1 4 ,pdata 
+0x406b 014820 hstore 1 ,core_qdec_cntx 
+0x406c 014821 rtn 
+:      014823 mouse_hardware_zwheel:
+0x406d 014824 fetcht 1 ,mem_mouse_z_data 
+0x406e 014825 hfetch 1 ,core_qdec_cntx 
+0x406f 014826 iadd temp ,pdata 
+0x4070 014827 rtn blank 
+0x4071 014828 store 1 ,mem_mouse_z 
+0x4072 014829 jam 0 ,mem_mouse_z_data 
+0x4073 014830 branch enable_user 
+:      014831 mouse_hardware_zwheel_beforelpm:
+0x4074 014832 fetcht 1 ,mem_mouse_z_data 
+0x4075 014833 hfetch 1 ,core_qdec_cntx 
+0x4076 014834 iadd temp ,pdata 
+0x4077 014835 store 1 ,mem_mouse_z_data 
+0x4078 014836 rtn 
+:      014837 mouse_zwheel:
+0x4079 014838 fetch 1 ,mem_mouse_z_data 
+0x407a 014839 rtn blank 
+0x407b 014840 store 1 ,mem_mouse_z 
+0x407c 014841 jam 0 ,mem_mouse_z_data 
+0x407d 014842 branch enable_user 
+:      014844 mouse_t_zwheel:
+0x407e 014845 fetch 1 ,mem_mouse_tz_data 
+0x407f 014846 rtn blank 
+0x4080 014847 store 1 ,mem_mouse_tz 
+0x4081 014848 jam 0 ,mem_mouse_tz_data 
+0x4082 014849 branch enable_user 
+:      014851 mouse_check_key_gpio:
+0x4083 014852 arg 0 ,rega 
+0x4084 014853 fetcht 1 ,mem_lbutton_gpio 
+0x4085 014854 call gpio_get_bit 
+0x4086 014855 setflag true ,0 ,rega 
+0x4087 014856 fetcht 1 ,mem_rbutton_gpio 
+0x4088 014857 call gpio_get_bit 
+0x4089 014858 setflag true ,1 ,rega 
+0x408a 014859 fetcht 1 ,mem_mbutton_gpio 
+0x408b 014860 call gpio_get_bit 
+0x408c 014861 setflag true ,2 ,rega 
+0x408d 014862 call mouse_check_s_key_gpio 
+:      014863 mouse_check_key_gpio_output:
+0x408e 014864 copy rega ,pdata 
+0x408f 014865 rtn 
+:      014866 mouse_check_s_key_gpio:
+0x4090 014867 fetch 1 ,mem_bk_button_gpio 
+0x4091 014868 rtneq gpio_disable 
+0x4092 014869 fetcht 1 ,mem_bk_button_gpio 
+0x4093 014870 call gpio_get_bit 
+0x4094 014871 setflag true ,3 ,rega 
+0x4095 014872 fetcht 1 ,mem_fw_button_gpio 
+0x4096 014873 call gpio_get_bit 
+0x4097 014874 setflag true ,4 ,rega 
+0x4098 014875 rtn 
+:      014877 mouse_key:
+0x4099 014878 call mouse_check_key_gpio 
+0x409a 014879 call mouse_set_mult 
+0x409b 014880 call mouse_24g_key 
+0x409c 014881 copy rega ,pdata 
+0x409d 014882 fetcht 1 ,mem_mouse_key 
+0x409e 014883 store 1 ,mem_mouse_key 
+0x409f 014884 ixor temp ,pdata 
+0x40a0 014885 sub pdata ,0 ,null 
+0x40a1 014886 rtn zero 
+0x40a2 014887 branch enable_user 
+:      014889 mouse_24g_key:
+0x40a3 014890 rtnmark0 mark_24g 
+0x40a4 014891 copy rega ,pdata 
+0x40a5 014892 rtn blank 
+0x40a6 014893 store 1 ,mem_mouse_key 
+0x40a7 014894 branch enable_user 
+:      014897 mouse_set_mult:
+0x40a8 014898 fetch 2 ,mem_ui_state_map 
+0x40a9 014899 bbit1 ui_state_ble_connected ,mouse_set_ble_mult 
+0x40aa 014900 fetch 2 ,mem_ui_state_map 
+0x40ab 014901 bbit1 ui_state_bt_connected ,mouse_set_bt_mult 
+0x40ac 014902 rtn 
+:      014903 mouse_set_ble_mult:
+0x40ad 014904 copy rega ,pdata 
+0x40ae 014905 nbranch le_set_config_short_mult ,blank 
+0x40af 014906 branch le_clr_config_short_mult 
+:      014907 mouse_set_bt_mult:
+0x40b0 014908 copy rega ,pdata 
+0x40b1 014909 nbranch classic_bt_set_mult_short_flag ,blank 
+0x40b2 014910 branch classic_bt_clr_mult_short_flag 
+:      014913 mouse_sensor_sdio_low:
+0x40b3 014914 bpatch patch1c_7 ,mem_patch1c 
+0x40b4 014915 arg mouse_spi1_sdio_gpio ,temp 
+0x40b5 014916 fetch mouse_flag_len ,mem_mouse_flag 
+0x40b6 014917 isolate1 mouse_enable_spi2 ,pdata 
+0x40b7 014918 call mouse_sensor_sdio_low2 ,true 
+0x40b8 014919 call gpio_get_bit 
+0x40b9 014920 rtn true 
+0x40ba 014921 setarg 0x0a 
+0x40bb 014922 call twspi_read 
+0x40bc 014923 nop 1000 
+0x40bd 014924 branch mouse_sensor_sdio_low 
+:      014925 mouse_sensor_sdio_low2:
+0x40be 014926 arg mouse_spi2_sdio_gpio ,temp 
+0x40bf 014927 rtn 
+:      014929 mouse_spi_sdio_gpio_pollup:
+0x40c0 014930 fetch mouse_flag_len ,mem_mouse_flag 
+0x40c1 014931 bbit1 mouse_enable_spi2 ,mouse_spi2_sdio_gpio_pollup 
+:      014932 mouse_spi1_sdio_gpio_pollup:
+0x40c2 014933 arg mouse_spi1_sdio_gpio ,temp 
+0x40c3 014934 branch gpio_config_input_without_wake 
+:      014935 mouse_spi2_sdio_gpio_pollup:
+0x40c4 014936 arg mouse_spi2_sdio_gpio ,temp 
+0x40c5 014937 branch gpio_config_input_without_wake 
+:      014940 mouse_init_sunt:
+0x40c6 014941 call mouse_spi_init 
+0x40c7 014942 rtn wake 
+0x40c8 014943 call mouse_spi_sdio_gpio_pollup 
+0x40c9 014944 fetch 1 ,mem_config_sensor_type 
+0x40ca 014945 beq p3610 ,mouse_init_3610sensor 
+:      014946 mouse_init_sensor:
+0x40cb 014947 call mouse_read_sensor_id 
+0x40cc 014948 beq p32xx_id1 ,mouse_init_p32xx_id2_judge 
+0x40cd 014949 beq p3065_id1 ,mouse_p3065_init_param 
+0x40ce 014950 call mouse_twspi_reset 
+0x40cf 014951 nop 1000 
+0x40d0 014952 branch mouse_init_sensor 
+:      014953 mouse_twspi_reset:
+0x40d1 014954 bpatch patch1d_0 ,mem_patch1d 
+0x40d2 014955 fetch mouse_flag_len ,mem_mouse_flag 
+0x40d3 014956 bbit1 mouse_enable_spi2 ,twspi_reset2 
+0x40d4 014957 branch twspi_reset 
+:      014959 mouse_init_3610sensor:
+0x40d5 014960 call mouse_read_sensor_id 
+0x40d6 014961 beq p3610_id1 ,mouse_init_p3610 
+0x40d7 014962 call mouse_init_3610sensor_reset 
+0x40d8 014963 branch mouse_init_3610sensor 
+:      014965 mouse_read_sensor_id:
+0x40d9 014966 setarg pan_reg_pid_h 
+0x40da 014967 call twspi_read 
+0x40db 014968 store 1 ,mem_sensor_id2 
+0x40dc 014969 setarg pan_reg_pid_l 
+0x40dd 014970 call twspi_read 
+0x40de 014971 store 1 ,mem_sensor_id1 
+0x40df 014972 rtn 
+:      014973 mouse_init_p32xx_id2_judge:
+0x40e0 014974 fetch 1 ,mem_sensor_id2 
+0x40e1 014975 beq p3205_tj3t_id2 ,mouse_3205_3t_init_param 
+0x40e2 014976 beq p3204_tj3l_id2 ,mouse_3204_3l_init_param 
+0x40e3 014977 beq p3212_id2 ,mouse_3212_init_param 
+0x40e4 014978 beq pka8_id2 ,mouse_ka8_init_param 
+0x40e5 014979 rtn 
+:      014980 mouse_ka8_init_param:
+0x40e6 014981 jam ka8 ,mem_config_sensor_type 
+0x40e7 014982 rtn 
+:      014983 mouse_p3065xy_init_param:
+0x40e8 014984 jam p3065_xy ,mem_config_sensor_type 
+0x40e9 014985 rtn 
+:      014986 mouse_p3065_init_param:
+0x40ea 014987 fetch 1 ,mem_sensor_id2 
+0x40eb 014988 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
+0x40ec 014989 jam p3065 ,mem_config_sensor_type 
+0x40ed 014990 rtn 
+:      014991 mouse_3212_init_param:
+0x40ee 014992 jam p3212 ,mem_config_sensor_type 
+0x40ef 014993 call mouse_sensor_disable_wp 
+0x40f0 014994 setarg 0x3426 
+0x40f1 014995 call twspi_write 
+0x40f2 014996 setarg 0x0419 
+0x40f3 014997 call twspi_write 
+:      014998 mouse_sensor_enable_wp:
+0x40f4 014999 setarg 0x0009 
+0x40f5 015000 branch twspi_write 
+:      015001 mouse_sensor_disable_wp:
+0x40f6 015002 setarg 0x5a09 
+0x40f7 015003 branch twspi_write 
+:      015005 mouse_3204_3l_init_param:
+0x40f8 015006 jam p3204 ,mem_config_sensor_type 
+0x40f9 015007 call mouse_sensor_disable_wp 
+0x40fa 015008 setarg 0x0f0d 
+0x40fb 015009 call twspi_write 
+0x40fc 015010 setarg 0xe31d 
+0x40fd 015011 call twspi_write 
+0x40fe 015012 setarg 0xd27d 
+0x40ff 015013 call twspi_write 
+0x4100 015014 call mouse_32xx_init_param 
+0x4101 015015 branch mouse_32xx_init_param_1 
+:      015017 mouse_32xx_init_param:
+0x4102 015018 setarg 0x351b 
+0x4103 015019 call twspi_write 
+0x4104 015020 setarg 0xb428 
+0x4105 015021 call twspi_write 
+0x4106 015022 setarg 0x4629 
+0x4107 015023 call twspi_write 
+0x4108 015024 setarg 0x962a 
+0x4109 015025 call twspi_write 
+0x410a 015026 setarg 0x8c2b 
+0x410b 015027 call twspi_write 
+0x410c 015028 setarg 0x6e2c 
+0x410d 015029 call twspi_write 
+0x410e 015030 setarg 0x642d 
+0x410f 015031 call twspi_write 
+0x4110 015032 setarg 0x5f38 
+0x4111 015033 call twspi_write 
+0x4112 015034 setarg 0x0f39 
+0x4113 015035 call twspi_write 
+0x4114 015036 setarg 0x323a 
+0x4115 015037 call twspi_write 
+0x4116 015038 setarg 0x473b 
+0x4117 015039 call twspi_write 
+0x4118 015040 setarg 0x1042 
+0x4119 015041 branch twspi_write 
+:      015042 mouse_32xx_init_param_1:
+0x411a 015043 setarg 0x2e54 
+0x411b 015044 call twspi_write 
+0x411c 015045 setarg 0xf255 
+0x411d 015046 call twspi_write 
+0x411e 015047 setarg 0xf461 
+0x411f 015048 call twspi_write 
+0x4120 015049 setarg 0x7063 
+0x4121 015050 call twspi_write 
+0x4122 015051 setarg 0x5275 
+0x4123 015052 call twspi_write 
+0x4124 015053 setarg 0x4176 
+0x4125 015054 call twspi_write 
+0x4126 015055 setarg 0xed77 
+0x4127 015056 call twspi_write 
+0x4128 015057 setarg 0x2378 
+0x4129 015058 call twspi_write 
+0x412a 015059 setarg 0x4679 
+0x412b 015060 call twspi_write 
+0x412c 015061 setarg 0xe57a 
+0x412d 015062 call twspi_write 
+0x412e 015063 setarg 0x487c 
+0x412f 015064 call twspi_write 
+0x4130 015065 setarg 0x777e 
+0x4131 015066 call twspi_write 
+0x4132 015067 setarg 0x017f 
+0x4133 015068 call twspi_write 
+0x4134 015069 setarg 0x000b 
+0x4135 015070 call twspi_write 
+0x4136 015071 setarg 0x007f 
+0x4137 015072 call twspi_write 
+0x4138 015073 branch mouse_sensor_enable_wp 
+:      015076 mouse_3205_3t_init_param:
+0x4139 015077 jam p3205 ,mem_config_sensor_type 
+0x413a 015078 call mouse_sensor_disable_wp 
+0x413b 015079 setarg 0x100d 
+0x413c 015080 call twspi_write 
+0x413d 015081 setarg 0xed1d 
+0x413e 015082 call twspi_write 
+0x413f 015083 setarg 0x807d 
+0x4140 015084 call twspi_write 
+0x4141 015085 call mouse_32xx_init_param 
+0x4142 015086 setarg 0x0943 
+0x4143 015087 call twspi_write 
+0x4144 015088 branch mouse_32xx_init_param_1 
+:      015091 mouse_init_3610sensor_reset:
+0x4145 015092 fetcht 1 ,mem_sensor_reset_gpio 
+0x4146 015093 call gpio_out_active 
+0x4147 015094 call delay_10ms 
+0x4148 015095 fetcht 1 ,mem_sensor_reset_gpio 
+0x4149 015096 call gpio_out_inactive 
+0x414a 015097 branch delay_10ms 
+:      015099 mouse_init_p3610:
+0x414b 015100 jam p3610 ,mem_config_sensor_type 
+0x414c 015101 setarg 0xba41 
+0x414d 015102 call sensor_write 
+0x414e 015103 setarg 0x0d11 
+0x414f 015104 call sensor_write 
+0x4150 015105 setarg 0x041b 
+0x4151 015106 call sensor_write 
+0x4152 015107 setarg 0x041c 
+0x4153 015108 call sensor_write 
+0x4154 015109 setarg 0x0f1d 
+0x4155 015110 call sensor_write 
+0x4156 015111 setarg 0x0032 
+0x4157 015112 call sensor_write 
+0x4158 015113 setarg 0xb541 
+0x4159 015114 branch sensor_write 
+:      015118 mouse_set_sensor_reg:
+0x415a 015119 setarg 0xba41 
+0x415b 015120 call sensor_write 
+0x415c 015121 nop 4000 
+0x415d 015122 setarg 0xff7f 
+0x415e 015123 call sensor_write 
+0x415f 015124 copy rega ,pdata 
+0x4160 015125 call sensor_write 
+0x4161 015126 setarg 0x007f 
+0x4162 015127 call sensor_write 
+0x4163 015128 setarg 0xb541 
+0x4164 015129 branch sensor_write 
+:      015131 extsign:
+0x4165 015132 rtnbit0 7 
+0x4166 015133 arg 0xff00 ,temp 
+0x4167 015134 ior temp ,pdata 
+0x4168 015135 rtn 
+:      015137 extsign_bit3:
+0x4169 015138 rtnbit0 3 
+0x416a 015139 arg 0xf0 ,temp 
+0x416b 015140 ior temp ,pdata 
+0x416c 015141 rtn 
+:      015144 mouse_le:
+0x416d 015145 call le_fifo_check_nearly_full 
+0x416e 015146 nrtn blank 
+0x416f 015147 fetch 1 ,mem_le_connect_status_flag 
+0x4170 015148 and pdata ,0x03 ,pdata 
+0x4171 015149 rtnne 0x03 
+0x4172 015150 fetch mouse_flag_len ,mem_mouse_flag 
+0x4173 015151 bbit1 mosue_24g_pairing_flag ,mouse_le_send_empty_packet 
+0x4174 015152 bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
+0x4175 015153 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+0x4176 015154 call mouse_motion 
+0x4177 015155 nrtn user 
+0x4178 015156 branch mouse_fill_data_le 
+:      015158 mouse_le_send_empty_packet:
+0x4179 015159 setarg 0 
+0x417a 015160 store 7 ,mem_mouse_key 
+0x417b 015161 branch mouse_fill_data_le 
+:      015163 mouse_priority_bb_event:
+0x417c 015164 copy regc ,pdata 
+0x417d 015165 beq bt_evt_le_connected ,mouse_le_bb_event_connected 
+0x417e 015166 beq bt_evt_bb_connected ,mouse_stop_discovery 
+0x417f 015167 beq bt_evt_le_disconnected ,mouse_bb_disconnected 
+0x4180 015168 beq bt_evt_bb_disconnected ,mouse_bb_disconnected 
+0x4181 015169 beq bt_evt_setup_complete ,mouse_bt_event_setup_complete 
+0x4182 015170 beq bt_evt_button_long_pressed ,mouse_bb_event_discovery_btn 
+0x4183 015171 beq bt_evt_hid_handshake ,mouse_bt_hid_handshake 
+0x4184 015172 beq bt_evt_hid_connected ,mouse_bt_hid_connected 
+0x4185 015173 beq bt_evt_reconn_failed ,mouse_bb_event_reconn_failed 
+0x4186 015174 beq bt_evt_reconn_page_timeout ,mouse_bb_event_reconn_timeout 
+0x4187 015175 beq bt_evt_pincode_req ,mouse_bb_event_pincode 
+0x4188 015176 beq bt_evt_remote_unsniff ,app_start_auto_sniff 
+0x4189 015177 beq bt_evt_le_pairing_success ,mouse_le_pairing_success 
+0x418a 015178 beq bt_evt_le_start_enc ,mouse_le_ll_start_encryt 
+0x418b 015179 beq bt_evt_le_pairing_complete ,mouse_le_pairing_complete 
+0x418c 015180 beq bt_evt_virtual_cable_unplug ,mouse_irtual_cable_unplug 
+0x418d 015181 beq bt_evt_24g_pairing_complete ,mouse_24g_pairing_complete 
+0x418e 015182 beq bt_evt_24g_attempt_fail ,mouse_24g_attempt_fail 
+0x418f 015183 beq bt_evt_24g_attempt_success ,mouse_24g_attempt_success 
+0x4190 015184 rtn 
+:      015187 mouse_le_pairing_complete:
+0x4191 015188 branch app_ble_store_reconn_info 
+:      015190 mouse_24g_attempt_fail:
+0x4192 015191 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+0x4193 015192 fetch 1 ,mem_reconn_times 
+0x4194 015193 nbranch mouse_polling_device ,blank 
+0x4195 015194 fetch 1 ,mem_device_flag 
+0x4196 015195 fetcht 1 ,mem_24g_device_number 
+0x4197 015196 isub temp ,null 
+0x4198 015197 branch app_enter_hibernate ,zero 
+0x4199 015198 rtn 
+:      015199 mouse_24g_attempt_success:
+0x419a 015200 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+0x419b 015201 rtn 
+:      015202 mouse_24g_pairing_complete:
+0x419c 015203 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+0x419d 015204 arg mosue_24g_pairing_flag ,queue 
+0x419e 015205 call mouse_disable_function_flag 
+0x419f 015206 setarg 0 
+0x41a0 015207 store 2 ,mem_24g_pairing_timer_count 
+0x41a1 015208 jam 0 ,mem_mouse_move_flag 
+0x41a2 015210 fetch 1 ,mem_config_sensor_type 
+0x41a3 015211 sub pdata ,p3610 ,null 
+0x41a4 015212 call mouse_read_sensor3610_data ,zero 
+0x41a5 015213 ncall mouse_read_sensor_common ,zero 
+0x41a6 015215 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+0x41a7 015216 bbit1 mouse_enable_flash ,mouse_store_flash_24g_address 
+0x41a8 015217 call mouse_set_24g_addr_eeprom 
+0x41a9 015218 branch iicd_write_protect_eep_data 
+:      015220 mouse_set_24g_addr_eeprom:
+0x41aa 015221 call g24_head_ptr2regc 
+0x41ab 015222 add regc ,offset_24g_addr ,rega 
+0x41ac 015223 arg mouse_g24_addr_eeprom_offect ,regb 
+0x41ad 015224 arg 4 ,temp 
+0x41ae 015225 rtn 
+:      015227 mouse_store_flash_24g_address:
+0x41af 015228 call g24_head_ptr2regc 
+0x41b0 015229 add regc ,offset_24g_addr ,regb 
+0x41b1 015230 ifetch 1 ,regb 
+0x41b2 015231 store 1 ,mem_mouse_24g_addr 
+0x41b3 015232 branch mouse_store_flash_device_info 
+:      015235 mouse_le_pairing_success:
+0x41b4 015236 arg ll_pairing_success_flag ,queue 
+0x41b5 015237 branch mouse_le_enable_connect_flag 
+:      015238 mouse_le_ll_start_encryt:
+0x41b6 015239 jam 2 ,mem_le_start_encrypt_timer 
+0x41b7 015240 arg ll_start_enc_flag ,queue 
+0x41b8 015241 branch mouse_le_enable_connect_flag 
+:      015244 mouse_le_enable_connect_flag:
+0x41b9 015245 fetch 1 ,mem_le_connect_status_flag 
+0x41ba 015246 qset1 pdata 
+0x41bb 015247 store 1 ,mem_le_connect_status_flag 
+0x41bc 015248 rtn 
+:      015250 mouse_le_disable_connect_flag:
+0x41bd 015251 fetch 1 ,mem_le_connect_status_flag 
+0x41be 015252 qset0 pdata 
+0x41bf 015253 store 1 ,mem_le_connect_status_flag 
+0x41c0 015254 rtn 
+:      015255 mouse_le_clean_connect_flag:
+0x41c1 015256 jam 0 ,mem_le_connect_status_flag 
+0x41c2 015257 rtn 
+:      015259 mouse_le_bb_event_connected:
+0x41c3 015260 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x41c4 015261 set0 app_disc_by_button ,pdata 
+0x41c5 015262 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x41c6 015263 setarg 0 
+0x41c7 015264 store 2 ,mem_mouse_direct_timer 
+0x41c8 015265 call mouse_no_data_timer_init 
+0x41c9 015266 branch mouse_stop_discovery 
+:      015268 mouse_bb_event_pincode:
+0x41ca 015269 call pincode_reinit 
+0x41cb 015270 branch app_bt_set_pincode 
+:      015271 mouse_bb_event_reconn_timeout:
+:      015272 mouse_bb_event_reconn_failed:
+0x41cc 015273 fetch 1 ,mem_reconn_times 
+0x41cd 015274 nbranch mouse_polling_device ,blank 
+0x41ce 015275 fetch 2 ,mem_ui_state_map 
+0x41cf 015276 bbit1 ui_state_btn_down ,mouse_start_discovery 
+0x41d0 015277 fetch mouse_flag_len ,mem_mouse_flag 
+0x41d1 015278 bbit1 mouse_select_device_flag ,mouse_soft_reset 
+0x41d2 015279 bbit1 mouse_bt_discovery_button_down_flag ,mouse_start_discovery 
+0x41d3 015280 bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
+0x41d4 015281 branch app_bb_hibernate 
+:      015284 mouse_bt_hid_connected:
+0x41d5 015285 branch mouse_hid_connected 
+:      015287 mouse_bt_event_setup_complete:
+0x41d6 015288 rtn 
+:      015290 mouse_soft_reset:
+0x41d7 015291 call mouse_select_device_enable 
+0x41d8 015292 branch soft_reset_chip 
+:      015294 mouse_bb_disconnected:
+0x41d9 015295 bpatch patch1d_1 ,mem_patch1d 
+0x41da 015296 call mouse_bb_discon_clear_stack 
+0x41db 015297 fetch mouse_flag_len ,mem_mouse_flag 
+0x41dc 015298 bbit1 mouse_select_device_flag ,mouse_soft_reset 
+0x41dd 015299 bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
+0x41de 015300 fetch 1 ,mem_reconn_times 
+0x41df 015301 nbranch mouse_polling_device ,blank 
+0x41e0 015302 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0x41e1 015303 bbit1 app_disc_ble ,mouse4_0_event_bb_disconn 
+0x41e2 015304 bbit1 app_disc_by_button ,app_disconn_reason_clear 
+0x41e3 015305 bbit1 app_disc_after_pairing ,mouse_event_light_state_pairing 
+0x41e4 015306 bbit1 app_disc_after_reconn ,mouse_event_light_state_hibernate 
+0x41e5 015307 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
+0x41e6 015308 branch mouse_start_discovery 
+:      015309 mouse_bb_discon_clear_stack:
+0x41e7 015310 setarg 0 
+0x41e8 015311 store 8 ,mem_wheel_tb_old_pinlevel 
+0x41e9 015312 istore 4 ,contw 
+0x41ea 015313 jam 0 ,mem_mouse_send_blank_timer 
+0x41eb 015314 jam 0 ,mem_mouse_move_flag 
+0x41ec 015315 jam app_handshake_null ,mem_app_handshake_flag 
+0x41ed 015316 jam 0 ,mem_ltk_exists 
+0x41ee 015317 rtn 
+:      015319 mouse_event_light_state_pairing:
+0x41ef 015320 bbit1 app_disc_after_handshake ,mouse_event_light_state_hibernate 
+0x41f0 015321 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
+0x41f1 015322 branch mouse_start_discovery 
+:      015323 mouse_event_light_state_hibernate:
+0x41f2 015324 fetch 2 ,mem_ui_state_map 
+0x41f3 015325 bbit1 ui_state_btn_down ,mouse_start_discovery 
+0x41f4 015326 branch app_bb_hibernate 
+:      015328 mouse4_0_event_bb_disconn:
+0x41f5 015329 call mouse_le_clean_connect_flag 
+0x41f6 015330 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0x41f7 015331 bbit1 app_disc_by_button ,app_disconn_reason_clear 
+0x41f8 015332 branch app_bb_hibernate 
+:      015334 mouse_bb_event_timer:
+0x41f9 015335 call mouse_adc_read 
+0x41fa 015336 call mouse_24g_delay_timer 
+0x41fb 015337 call mouse_ban_24g_pairing_timer 
+0x41fc 015338 call mouse_dpi_led_blink_delay_timer 
+0x41fd 015339 call mouse_statue_up_timer 
+0x41fe 015341 call mouse_statue_cheak_timer 
+0x41ff 015342 call mouse_select_device 
+0x4200 015343 call mouse_bt_discovery_cheak 
+0x4201 015344 call mouse_low_voltage_led_timer 
+0x4202 015345 call mouse_sensor_led_contrl_timer 
+0x4203 015346 call mouse_check_hid_handshake_timer 
+0x4204 015347 call mouse_check_discovery_timeout_timer 
+0x4205 015348 call mouse_check_direct_timeout_timer 
+0x4206 015349 call mouse_check_no_data_timeout_timer 
+0x4207 015350 call mouse_check_mouse_state_timer 
+0x4208 015351 branch mouse_le_enable_att_list_timer 
+:      015355 mouse_sensor_led_contrl_timer:
+0x4209 015356 fetch 1 ,mem_mouse_sensor_timer_count 
+0x420a 015357 rtn blank 
+0x420b 015358 increase -1 ,pdata 
+0x420c 015359 store 1 ,mem_mouse_sensor_timer_count 
+0x420d 015360 nrtn blank 
+0x420e 015361 branch mouse_sensor_led_contrl 
+:      015362 mouse_sensor_led_contrl:
+0x420f 015363 fetch 1 ,mem_sensor_led_style 
+0x4210 015364 rtneq ui_led_state_blink_stop 
+0x4211 015365 beq ui_led_state_blink_darking ,mouse_sensor_led_blink_state_darking 
+:      015366 mouse_sensor_led_blink_state_lighting:
+0x4212 015367 call mouse_sensor_led_on 
+0x4213 015368 jam ui_led_state_blink_darking ,mem_sensor_led_style 
+0x4214 015369 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+0x4215 015370 rtn 
+:      015371 mouse_sensor_led_blink_state_darking:
+0x4216 015372 call mouse_sensor_led_off 
+0x4217 015373 jam ui_led_state_blink_lighting ,mem_sensor_led_style 
+0x4218 015374 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+0x4219 015375 rtn 
+:      015377 mouse_sensor_led_blink_stop:
+:      015378 mouse_sensor_reset:
+0x421a 015379 setarg 0x8006 
+0x421b 015380 call twspi_write 
+0x421c 015381 nop 1000 
+0x421d 015382 jam 0x00 ,mem_mouse_sensor_timer_count 
+0x421e 015383 jam ui_led_state_blink_stop ,mem_sensor_led_style 
+0x421f 015384 branch mouse_init_p32xx_id2_judge 
+:      015386 mouse_p3212sensor_led_on:
+0x4220 015387 setarg 0xa006 
+0x4221 015388 call twspi_write 
+0x4222 015389 setarg 0xa005 
+0x4223 015390 branch twspi_write 
+:      015391 mouse_sensor_led_on_global:
+0x4224 015392 jam 0 ,mem_mouse_sensor_timer_count 
+:      015393 mouse_sensor_led_on:
+0x4225 015394 fetch 1 ,mem_config_sensor_type 
+0x4226 015395 beq p3212 ,mouse_p3212sensor_led_on 
+0x4227 015396 setarg 0x0106 
+0x4228 015397 call twspi_write 
+0x4229 015398 setarg 0xa105 
+0x422a 015399 branch twspi_write 
+:      015401 mouse_sensor_led_off_global:
+0x422b 015402 jam 0 ,mem_mouse_sensor_timer_count 
+:      015403 mouse_sensor_led_off:
+0x422c 015404 setarg 0x0906 
+0x422d 015405 branch twspi_write 
+:      015406 mouse_sensor_start_blink:
+0x422e 015407 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+0x422f 015408 jam ui_led_state_blink_start ,mem_sensor_led_style 
+0x4230 015409 rtn 
+:      015411 mouse_check_hid_handshake_timer:
+0x4231 015412 arg mem_hid_handshake_timer_count ,regc 
+0x4232 015413 arg mouse_bt_hid_handshake ,regb 
+0x4233 015414 branch timer_single_step 
+:      015416 mouse_check_discovery_timeout_timer:
+0x4234 015417 arg mem_mouse_discovery_timer ,regc 
+0x4235 015418 arg mouse_check_discovery_timeout ,regb 
+0x4236 015419 branch timer_single_step_2b 
+:      015421 mouse_check_direct_timeout_timer:
+0x4237 015422 arg mem_mouse_direct_timer ,regc 
+0x4238 015423 arg mouse_check_direct_timeout ,regb 
+0x4239 015424 branch timer_single_step_2b 
+:      015426 mouse_check_no_data_timeout_timer:
+0x423a 015427 arg mem_mouse_no_data_timer ,regc 
+0x423b 015428 arg mouse_check_no_data_timeout ,regb 
+0x423c 015429 branch timer_single_step_2b 
+:      015431 mouse_check_mouse_state_timer:
+0x423d 015432 arg mem_mouse_statue_led_timer ,regc 
+0x423e 015433 arg mouse_statue_led_off ,regb 
+0x423f 015434 branch timer_single_step 
+:      015438 mouse_le_enable_att_list_timer:
+0x4240 015439 arg mem_le_start_encrypt_timer ,regc 
+0x4241 015440 arg mouse_le_enable_att_list ,regb 
+0x4242 015441 branch timer_single_step 
+:      015443 mouse_24g_delay_timer:
+0x4243 015444 arg mem_24g_enter_lpm_timer ,regc 
+0x4244 015445 arg mouse_24g_delay ,regb 
+0x4245 015446 branch timer_single_step 
+:      015448 mouse_ban_24g_pairing_timer:
+0x4246 015449 arg mem_24g_pairing_timer_count ,regc 
+0x4247 015450 arg mouse_ban_24g_pairing ,regb 
+0x4248 015451 branch timer_single_step_2b 
+:      015452 mouse_ban_24g_pairing:
+:      015453 mouse_24g_delay:
+0x4249 015454 rtn 
+:      015457 mosue_dpi_led_blink_init:
+0x424a 015458 fetch mouse_flag_len ,mem_mouse_flag 
+0x424b 015459 rtnbit0 mouse_enable_dpi_led_blink 
+0x424c 015460 jam 10 ,mem_mouse_dpi_led_delay_count 
+0x424d 015461 fetch 1 ,mem_dpi_led_gpio 
+0x424e 015462 store 1 ,mem_mouse_struct_led_gpio 
+0x424f 015463 rtn 
+:      015466 mouse_dpi_led_blink_delay_timer:
+0x4250 015467 arg mem_mouse_dpi_led_delay_count ,regc 
+0x4251 015468 arg mouse_dpi_led_setting ,regb 
+0x4252 015469 branch timer_single_step 
+:      015470 mouse_dpi_led_setting:
+0x4253 015471 fetch 1 ,mem_dpi_led_gpio 
+0x4254 015472 store 1 ,mem_mouse_struct_led_gpio 
+0x4255 015473 setarg led_dpi_blink 
+0x4256 015474 store 2 ,mem_mouse_on_time 
+0x4257 015475 store 2 ,mem_mouse_off_time 
+0x4258 015476 arg 0 ,rega 
+0x4259 015477 fetcht 1 ,mem_mouse_dpi 
+0x425a 015478 increase 1 ,temp 
+0x425b 015479 storet 1 ,mem_mouse_blink_count 
+0x425c 015480 jam ui_led_state_blink_start ,mem_mouse_led_type 
+0x425d 015481 rtn 
+:      015483 mouse_le_enable_att_list:
+0x425e 015484 fetch 1 ,mem_le_connect_status_flag 
+0x425f 015485 rtnbit1 ll_pairing_success_flag 
+0x4260 015486 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x4261 015487 call ui_ipc_send_cmd 
+0x4262 015488 arg write_req_enable_flag ,queue 
+0x4263 015489 branch mouse_le_enable_connect_flag 
+:      015492 mouse_check_discovery_timeout:
+0x4264 015493 call mouse_stop_discovery 
+0x4265 015494 branch app_enter_hibernate 
+:      015496 mouse_check_direct_timeout:
+0x4266 015497 call app_ble_stop_direct_adv 
+0x4267 015498 fetch 1 ,mem_reconn_times 
+0x4268 015499 nbranch mouse_polling_device ,blank 
+0x4269 015500 branch app_enter_hibernate 
+:      015502 mouse_check_no_data_timeout:
+0x426a 015503 bmark1 mark_24g ,check_51cmd_hibernate 
+0x426b 015504 branch mouse_disconnect 
+:      015508 mouse_bb_event_discovery_btn:
+0x426c 015509 bpatch patch1d_2 ,mem_patch1d 
+0x426d 015510 jam 0 ,mem_mouse_send_blank_timer 
+0x426e 015511 call mouse_disconnect 
+0x426f 015512 call mouse_le_clean_connect_flag 
+0x4270 015513 branch mouse_start_discovery 
+:      015517 mouse3_0_check_reconn_target:
+0x4271 015518 fetch 6 ,mem_hci_plap 
+0x4272 015519 branch app_bt_start_discovery_short ,blank 
+0x4273 015520 call mouse_reconn_setting_led_gpio 
+0x4274 015521 jam 0x17 ,mem_connection_options 
+0x4275 015522 fetch 1 ,mem_ssp_enable 
+0x4276 015523 nbranch app_bt_start_reconnect ,blank 
+0x4277 015524 jam 0x04 ,mem_connection_options 
+0x4278 015525 branch app_bt_start_reconnect 
+:      015527 mouse4_0_check_reconn_target:
+0x4279 015528 fetch 2 ,mem_mouse_direct_timeout 
+0x427a 015529 store 2 ,mem_mouse_direct_timer 
+0x427b 015530 call mouse_reconn_setting_led_gpio 
+0x427c 015531 call app_lpm_mult_disable 
+0x427d 015532 branch check_51cmd_adv 
+:      015534 mouse_reconn_setting_led_gpio:
+0x427e 015535 setarg led_reconnect_blink 
+0x427f 015536 store 2 ,mem_mouse_on_time 
+0x4280 015537 store 2 ,mem_mouse_off_time 
+0x4281 015538 branch mouse_setting_led_gpio_comman 
+:      015540 mouse_discover_setting_led_gpio:
+0x4282 015541 setarg led_discovery_blink 
+0x4283 015542 store 2 ,mem_mouse_on_time 
+0x4284 015543 store 2 ,mem_mouse_off_time 
+:      015544 mouse_setting_led_gpio_comman:
+0x4285 015545 fetch 1 ,mem_device_flag 
+0x4286 015546 beq mode_bt_device1 ,mouse_device_led1 
+0x4287 015547 beq mode_bt_device2 ,mouse_device_led2 
+0x4288 015548 beq mode_bt_device3 ,mouse_device_led3 
+0x4289 015549 rtn 
+:      015550 mouse_device_led1:
+0x428a 015551 fetch 1 ,mem_config_device1_led_gpio 
+0x428b 015552 branch mouse_led_blink 
+:      015553 mouse_device_led2:
+0x428c 015554 fetch 1 ,mem_config_device2_led_gpio 
+0x428d 015555 branch mouse_led_blink 
+:      015556 mouse_device_led3:
+0x428e 015557 fetch 1 ,mem_config_device3_led_gpio 
+:      015558 mouse_led_blink:
+0x428f 015559 store 1 ,mem_temp 
+0x4290 015560 call mouse_devce_led_off 
+0x4291 015561 fetch 1 ,mem_temp 
+0x4292 015562 store 1 ,mem_mouse_struct_led_gpio 
+0x4293 015563 arg 0 ,rega 
+0x4294 015564 jam ui_led_state_blink_start ,mem_mouse_led_type 
+0x4295 015565 branch ui_led_blink_start_global 
+:      015567 mouse_led_off:
+0x4296 015568 arg 0 ,rega 
+0x4297 015569 branch ui_led_off_global 
+:      015570 mouse_led_on:
+0x4298 015571 arg 0 ,rega 
+0x4299 015572 branch ui_led_on_global 
+:      015574 mouse4_0_bb_event_discovery_btn:
+0x429a 015575 branch mouse_le_clean_connect_flag 
+:      015577 mouse_bt_hid_handshake:
+0x429b 015578 jam app_handshake_done ,mem_app_handshake_flag 
+0x429c 015579 call app_lpm_mult_enable 
+0x429d 015580 call app_bt_store_reconn_info 
+0x429e 015581 setarg 0 
+0x429f 015582 store 2 ,mem_discovery_timeout_timer_count 
+0x42a0 015583 store 1 ,mem_hid_handshake_timer_count 
+0x42a1 015584 branch app_bt_enter_sniff 
+:      015586 mouse_check_reconn_target:
+0x42a2 015587 call mouse_cheak_select_device_by_switch 
+0x42a3 015588 fetch 1 ,mem_device_flag 
+0x42a4 015589 fetcht 1 ,mem_24g_device_number 
+0x42a5 015590 isub temp ,null 
+0x42a6 015591 branch mouse_connect_24g_mode ,zero 
+0x42a7 015592 fetch 1 ,mem_xrecord_mode 
+0x42a8 015593 beq rec_3_mode ,mouse3_0_check_reconn_target 
+0x42a9 015594 beq rec_4_mode ,mouse4_0_check_reconn_target 
+0x42aa 015595 branch mouse_start_discovery 
+:      015596 mouse_connect_24g_mode:
+0x42ab 015597 call mouse_start_24g_mode 
+0x42ac 015598 rtnmark1 mark_24g 
+0x42ad 015599 fetch 1 ,mem_reconn_times 
+0x42ae 015600 nbranch mouse_polling_device ,blank 
+0x42af 015601 rtn 
+:      015603 mouse_start_discovery:
+0x42b0 015604 bpatch patch1d_3 ,mem_patch1d 
+0x42b1 015605 fetch 2 ,mem_ui_state_map 
+0x42b2 015606 bbit1 ui_state_ble_adv ,mouse_start_discovery_norandom 
+0x42b3 015607 fetch mouse_flag_len ,mem_mouse_flag 
+0x42b4 015608 bbit0 mouse_enable_ble_random_addre ,mouse_start_discovery_norandom 
+0x42b5 015609 random pdata 
+0x42b6 015610 store 1 ,mem_le_lap + 1 
+:      015611 mouse_start_discovery_norandom:
+0x42b7 015612 call app_lpm_mult_disable 
+0x42b8 015613 fetch 2 ,mem_discovery_timeout 
+0x42b9 015614 store 2 ,mem_mouse_discovery_timer 
+0x42ba 015615 jam 6 ,mem_connection_options 
+0x42bb 015616 setarg 0 
+0x42bc 015617 store 2 ,mem_mouse_no_data_timer 
+0x42bd 015618 store 2 ,mem_mouse_direct_timer 
+0x42be 015619 arg mouse_store_eeprom_flag ,queue 
+0x42bf 015620 call mouse_enable_function_flag 
+0x42c0 015621 call mouse_bt_discovery_button_down_disable 
+0x42c1 015622 fetch 1 ,mem_device_option 
+0x42c2 015623 isolate1 mode_4_mouse ,pdata 
+0x42c3 015624 call check_51cmd_adv ,true 
+0x42c4 015625 fetch 1 ,mem_device_option 
+0x42c5 015626 isolate1 mode_3_mouse ,pdata 
+0x42c6 015627 call check_51cmd_start_discovery ,true 
+0x42c7 015628 fetch mouse_flag_len ,mem_mouse_flag 
+0x42c8 015629 bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_start_blink 
+0x42c9 015630 branch mouse_discover_setting_led_gpio 
+:      015632 mouse_stop_discovery:
+0x42ca 015633 bpatch patch1d_4 ,mem_patch1d 
+0x42cb 015634 fetch 1 ,mem_device_option 
+0x42cc 015635 isolate1 mode_4_mouse ,pdata 
+0x42cd 015636 call mouse_stop_le_adv ,true 
+0x42ce 015637 fetch 1 ,mem_device_option 
+0x42cf 015638 isolate1 mode_3_mouse ,pdata 
+0x42d0 015639 call mouse_stop_bt3_discovery ,true 
+0x42d1 015640 fetch mouse_flag_len ,mem_mouse_flag 
+0x42d2 015641 bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_led_blink_stop 
+0x42d3 015642 branch mouse_devce_led_off 
+:      015643 mouse_stop_le_adv:
+0x42d4 015644 setarg 0 
+0x42d5 015645 store 2 ,mem_mouse_direct_timer 
+0x42d6 015646 branch check_51cmd_stop_adv 
+:      015647 mouse_stop_bt3_discovery:
+0x42d7 015648 setarg 0 
+0x42d8 015649 store 2 ,mem_mouse_discovery_timer 
+0x42d9 015650 branch check_51cmd_stop_discovery 
+:      015656 mouse_store_remote_bdaddr:
+0x42da 015657 fetch mouse_flag_len ,mem_mouse_flag 
+0x42db 015658 rtnbit0 mouse_store_eeprom_flag 
+0x42dc 015659 arg mouse_store_eeprom_flag ,queue 
+0x42dd 015660 call mouse_disable_function_flag 
+0x42de 015661 call mouse_check_device_addr 
+:      015662 mouse_unplug_clean_bdaddr:
+0x42df 015663 call mouse_before_store_reconn_info 
+0x42e0 015664 fetch mouse_flag_len ,mem_mouse_flag 
+0x42e1 015665 bbit1 mouse_enable_flash ,mouse_store_flash_device_info 
+0x42e2 015666 bbit1 mouse_enable_eeprom ,mouse_store_eeprom_device_info 
+0x42e3 015667 rtn 
+:      015668 mouse_store_eeprom_device_info:
+0x42e4 015669 arg 88 ,temp 
+0x42e5 015670 arg mem_device_flag ,rega 
+0x42e6 015671 arg mouse_info_eeprom_offect ,regb 
+0x42e7 015672 branch iicd_write_protect_eep_data 
+:      015674 mouse_check_device_addr:
+0x42e8 015675 fetch 1 ,mem_record_bt_mode 
+0x42e9 015676 beq rec_4_mode ,mouse_check_le_device_addr 
+0x42ea 015677 beq rec_3_mode ,mouse_check_bt_device_addr 
+0x42eb 015678 rtn 
+:      015679 mouse_check_le_device_addr:
+0x42ec 015680 store 1 ,mem_device_addr_temp 
+0x42ed 015681 fetch 6 ,mem_le_plap 
+0x42ee 015682 branch mouse_check_bt_device_addr_common 
+:      015683 mouse_check_bt_device_addr:
+0x42ef 015684 store 1 ,mem_device_addr_temp 
+0x42f0 015685 fetch 6 ,mem_plap 
+:      015686 mouse_check_bt_device_addr_common:
+0x42f1 015687 store 6 ,mem_device_addr_temp + 1 
+0x42f2 015688 fetch 7 ,mem_device_addr_temp 
+0x42f3 015689 arg mem_device1_type ,contr 
+0x42f4 015690 arg 3 ,loopcnt 
+:      015691 mouse_check_device_addr_end:
+0x42f5 015692 ifetcht 7 ,contr 
+0x42f6 015693 isub temp ,null 
+0x42f7 015694 branch mouse_clean_addr ,zero 
+0x42f8 015695 increase 22 ,contr 
+0x42f9 015696 loop mouse_check_device_addr_end 
+0x42fa 015697 rtn 
+:      015698 mouse_before_store_reconn_info:
+0x42fb 015699 arg mem_device1_type ,rega 
+0x42fc 015700 fetch 1 ,mem_device_flag 
+0x42fd 015701 increase -1 ,pdata 
+0x42fe 015702 mul32 pdata ,29 ,pdata 
+0x42ff 015703 iadd rega ,rega 
+0x4300 015704 fetch 1 ,mem_record_bt_mode 
+0x4301 015705 istore 1 ,rega 
+0x4302 015706 beq rec_4_mode ,mouse_store_le_device 
+0x4303 015707 beq rec_3_mode ,mouse_store_bt_device 
+0x4304 015708 rtn 
+:      015710 mouse_store_le_device:
+0x4305 015711 fetch 6 ,mem_le_plap 
+0x4306 015712 istore 6 ,contw 
+0x4307 015713 arg mem_le_ltk ,contr 
+0x4308 015714 call memcpy16 
+0x4309 015715 fetch 6 ,mem_le_lap 
+0x430a 015716 istore 6 ,contw 
+0x430b 015717 rtn 
+:      015718 mouse_store_bt_device:
+0x430c 015719 fetch 6 ,mem_plap 
+0x430d 015720 istore 6 ,contw 
+0x430e 015721 arg mem_link_key ,contr 
+0x430f 015722 branch memcpy16 
+:      015724 mouse_clean_addr:
+0x4310 015725 increase -6 ,contr 
+0x4311 015726 copy contr ,contw 
+0x4312 015727 fetcht 6 ,mem_device_addr_temp + 1 
+0x4313 015728 increase 3 ,temp 
+0x4314 015729 istoret 6 ,contw 
+0x4315 015730 rtn 
+:      015734 mouse_eeprom_load_recon_info:
+0x4316 015735 arg 88 ,temp 
+0x4317 015736 arg mem_device_flag ,rega 
+0x4318 015737 arg mouse_info_eeprom_offect ,regb 
+0x4319 015738 call iicd_read_eep_data 
+:      015739 mouse_select_reconn_device:
+0x431a 015740 arg mem_device1_type ,rega 
+0x431b 015741 fetch 1 ,mem_device_flag 
+0x431c 015742 fetcht 1 ,mem_24g_device_number 
+0x431d 015743 isub temp ,null 
+0x431e 015744 rtn zero 
+0x431f 015745 increase -1 ,pdata 
+0x4320 015746 mul32 pdata ,29 ,pdata 
+0x4321 015747 iadd rega ,rega 
+0x4322 015748 ifetch 1 ,rega 
+0x4323 015749 store 1 ,mem_xrecord_mode 
+0x4324 015750 beq rec_3_mode ,mouse_load_bt_device 
+0x4325 015751 beq rec_4_mode ,mouse_load_le_device 
+0x4326 015752 rtn 
+:      015754 mouse_load_bt_device:
+0x4327 015755 ifetch 6 ,contr 
+:      015756 mouse_load_bt_device_end:
+0x4328 015757 store 6 ,mem_hci_plap 
+0x4329 015758 arg mem_link_key ,contw 
+0x432a 015759 call memcpy16 
+0x432b 015760 branch check_link_key_load 
+:      015762 mouse_load_le_device:
+0x432c 015763 ifetch 6 ,contr 
+:      015764 mouse_load_le_device_end:
+0x432d 015765 store 6 ,mem_hci_plap 
+0x432e 015766 arg mem_le_ltk ,contw 
+0x432f 015767 call memcpy16 
+0x4330 015768 ifetch 6 ,contr 
+0x4331 015769 store 6 ,mem_le_lap 
+0x4332 015770 rtn 
+:      015773 mouse_select_device:
+0x4333 015774 fetch 1 ,mem_config_function_enable 
+0x4334 015775 bbit1 enable_select_device_by_gpio_button ,mouse_select_device_by_button 
+0x4335 015776 bbit1 enable_select_device_by_switch ,mouse_select_device_by_switch 
+0x4336 015777 branch mouse_select_device_by_combination_key 
+:      015779 mouse_select_device_by_combination_key:
+0x4337 015780 call mouse_check_key_gpio 
+0x4338 015781 beq mouse_rm_button ,mouse_select_device_commbination_key_down 
+:      015782 mouse_select_device_commbination_key_up:
+0x4339 015783 jam 30 ,mem_combination_select_device_count 
+0x433a 015784 fetch 1 ,mem_select_device_button_statue 
+0x433b 015785 rtneq dpi_button_state_up 
+0x433c 015786 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x433d 015787 rtn 
+:      015789 mouse_select_device_commbination_key_down:
+0x433e 015790 call mouse_combination_select_device_timer 
+0x433f 015791 fetch 1 ,mem_select_device_button_statue 
+0x4340 015792 rtneq dpi_button_state_down 
+0x4341 015793 jam dpi_button_state_down ,mem_select_device_button_statue 
+0x4342 015794 branch mouse_select_device_enable 
+:      015796 mouse_combination_select_device_timer:
+0x4343 015797 fetch 1 ,mem_combination_select_device_count 
+0x4344 015798 rtn blank 
+0x4345 015799 pincrease -1 
+0x4346 015800 store 1 ,mem_combination_select_device_count 
+0x4347 015801 nrtn blank 
+0x4348 015802 branch mouse_ready_reconnection_by_button 
+:      015804 mouse_select_device_by_button:
+0x4349 015805 fetch 1 ,mem_config_select_device_button_gpio 
+0x434a 015806 rtneq gpio_disable 
+0x434b 015807 fetcht 1 ,mem_config_select_device_button_gpio 
+0x434c 015808 call gpio_get_bit 
+0x434d 015809 branch mouse_select_device_button_down ,true 
+:      015810 mouse_select_device_button_up:
+0x434e 015811 fetch 1 ,mem_select_device_button_statue 
+0x434f 015812 rtneq dpi_button_state_up 
+0x4350 015813 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x4351 015814 fetch mouse_flag_len ,mem_mouse_flag 
+0x4352 015815 rtnbit1 mouse_long_bt_button_flag 
+0x4353 015816 branch mouse_ready_reconnection_by_button 
+:      015818 mouse_select_device_button_down:
+0x4354 015819 fetch 1 ,mem_select_device_button_statue 
+0x4355 015820 rtneq dpi_button_state_down 
+0x4356 015821 jam dpi_button_state_down ,mem_select_device_button_statue 
+0x4357 015822 arg mouse_long_bt_button_flag ,queue 
+0x4358 015823 branch mouse_disable_function_flag 
+:      015827 mouse_select_device_by_switch:
+0x4359 015828 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+0x435a 015829 rtnbit0 enable_select_device_by_switch 
+0x435b 015830 fetch 1 ,mem_device_flag 
+0x435c 015831 beq mode_bt_device1 ,mouse_select1_device 
+0x435d 015832 beq mode_24g_device ,mouse_select2_device 
+0x435e 015833 rtn 
+:      015834 mouse_cheak_select_device_by_switch:
+0x435f 015835 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+0x4360 015836 rtnbit0 enable_select_device_by_switch 
+0x4361 015837 fetcht 1 ,mem_config_select_device_button_gpio 
+0x4362 015838 call gpio_get_bit 
+0x4363 015839 branch mouse_cheak_select_24gdevice ,true 
+:      015840 mouse_select_btdevice:
+0x4364 015841 jam mode_bt_device1 ,mem_device_flag 
+0x4365 015842 rtn 
+:      015843 mouse_cheak_select_24gdevice:
+0x4366 015844 fetch 1 ,mem_24g_device_number 
+0x4367 015845 store 1 ,mem_device_flag 
+0x4368 015846 rtn 
+:      015847 mouse_select1_device:
+0x4369 015848 fetcht 1 ,mem_config_select_device_button_gpio 
+0x436a 015849 nbranch mouse_ready_reconnection_by_button ,true 
+0x436b 015850 rtn 
+:      015851 mouse_select2_device:
+0x436c 015852 fetcht 1 ,mem_config_select_device_button_gpio 
+0x436d 015853 call gpio_get_bit 
+0x436e 015854 branch mouse_select_device_button_down ,true 
+0x436f 015855 rtn 
+:      015860 mouse_ready_reconnection_by_button:
+0x4370 015861 fetcht 1 ,mem_device_flag 
+0x4371 015862 increase 1 ,temp 
+0x4372 015863 fetch 1 ,mem_device_number 
+0x4373 015864 isub temp ,null 
+0x4374 015865 ncall mouse_select_device_count_clean ,positive 
+0x4375 015866 storet 1 ,mem_device_flag 
+0x4376 015867 jam 0 ,mem_link_key_exists 
+0x4377 015868 call mouse_store_device_number2eeprom 
+0x4378 015869 call mouse_select_device_enable 
+0x4379 015871 branch mouse_set_reconnection 
+:      015873 mouse_store_device_number2eeprom:
+0x437a 015874 arg 1 ,temp 
+0x437b 015875 arg mem_device_flag ,rega 
+0x437c 015876 arg 0 ,regb 
+0x437d 015877 branch iicd_write_eep_data 
+:      015879 mouse_set_reconnection:
+0x437e 015880 call mouse_stop_bluetooth_mode 
+0x437f 015881 call mouse_select_device_disable 
+0x4380 015882 branch mouse_soft_reset 
+:      015883 mouse_stop_bluetooth_mode:
+0x4381 015884 fetch 2 ,mem_ui_state_map 
+0x4382 015885 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
+0x4383 015886 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x4384 015887 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x4385 015888 branch mouse_stop_discovery 
+:      015890 mouse_disconnect:
+0x4386 015891 bpatch patch1d_5 ,mem_patch1d 
+0x4387 015892 setarg 0 
+0x4388 015893 store 2 ,mem_mouse_no_data_timer 
+0x4389 015894 fetch 2 ,mem_ui_state_map 
+0x438a 015895 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x438b 015896 fetch 2 ,mem_ui_state_map 
+0x438c 015897 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x438d 015898 rtn 
+:      015900 mouse_irtual_cable_unplug:
+0x438e 015901 setarg 0x01 
+0x438f 015902 store 6 ,mem_plap 
+0x4390 015903 jam rec_3_mode ,mem_record_bt_mode 
+0x4391 015904 branch mouse_unplug_clean_bdaddr 
+:      015907 mouse_cancel_reconnect:
+0x4392 015908 call mouse_bt_cannel_reconn_enable 
+0x4393 015909 branch check_51cmd_bb_reconn_cancel 
+:      015911 mouse_bt_discovery_by_button:
+0x4394 015912 fetch 1 ,mem_config_bt_button_gpio 
+0x4395 015913 rtneq gpio_disable 
+0x4396 015914 fetcht 1 ,mem_config_bt_button_gpio 
+0x4397 015915 call gpio_get_bit 
+0x4398 015916 branch mouse_bt_discovery_button_down ,true 
+:      015917 mouse_bt_discovery_button_up:
+0x4399 015918 fetch 1 ,mem_ui_button_timeout 
+0x439a 015919 store 1 ,mem_combination_ui_button_count 
+0x439b 015920 fetch 1 ,mem_bt_discovey_button_statue 
+0x439c 015921 rtneq dpi_button_state_up 
+0x439d 015922 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
+0x439e 015923 branch mouse_bt_discovery_button_down_disable 
+:      015924 mouse_bt_discovery_button_down:
+0x439f 015925 call mouse_bt_discovry_timer 
+0x43a0 015926 fetch 1 ,mem_bt_discovey_button_statue 
+0x43a1 015927 rtneq dpi_button_state_down 
+0x43a2 015928 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
+0x43a3 015929 call check_51cmd_bb_reconn_cancel 
+0x43a4 015930 branch mouse_bt_discovery_button_down_enable 
+:      015933 mouse_bt_discovery_cheak:
+0x43a5 015934 fetch 1 ,mem_config_function_enable 
+0x43a6 015935 bbit1 enable_bt_button ,mouse_bt_discovery_by_button 
+:      015936 mouse_bt_discovery_commbination_key:
+0x43a7 015937 call mouse_check_key_gpio 
+0x43a8 015938 beq mouse_lmr_button ,mouse_bt_discovery_commbination_key_down 
+:      015939 mouse_bt_discovery_commbination_key_up:
+0x43a9 015940 fetch 1 ,mem_ui_button_timeout 
+0x43aa 015941 store 1 ,mem_combination_ui_button_count 
+0x43ab 015942 fetch 1 ,mem_bt_discovey_button_statue 
+0x43ac 015943 rtneq dpi_button_state_up 
+0x43ad 015944 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
+0x43ae 015945 branch mouse_bt_discovery_button_down_disable 
+:      015948 mouse_bt_discovery_commbination_key_down:
+0x43af 015949 call mouse_bt_discovry_timer 
+0x43b0 015950 fetch 1 ,mem_bt_discovey_button_statue 
+0x43b1 015951 rtneq dpi_button_state_down 
+0x43b2 015952 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
+0x43b3 015953 call check_51cmd_bb_reconn_cancel 
+0x43b4 015954 branch mouse_bt_discovery_button_down_enable 
+:      015956 mouse_bt_discovry_timer:
+0x43b5 015957 arg mem_combination_ui_button_count ,regc 
+0x43b6 015958 arg mouse_long_button_bt_discovry ,regb 
+0x43b7 015959 branch timer_single_step 
+:      015961 mouse_long_button_bt_discovry:
+0x43b8 015962 arg mouse_long_bt_button_flag ,queue 
+0x43b9 015963 call mouse_enable_function_flag 
+0x43ba 015964 call app_evt_button_long_pressed 
+0x43bb 015965 branch mouse_bb_event_discovery_btn 
+:      015968 mouse_cpi_enable:
+0x43bc 015969 arg mouse_cpi_flag ,queue 
+0x43bd 015970 branch mouse_enable_function_flag 
+:      015971 mouse_cpi_disable:
+0x43be 015972 arg mouse_cpi_flag ,queue 
+0x43bf 015973 branch mouse_disable_function_flag 
+:      015974 mouse_select_device_enable:
+0x43c0 015975 arg mouse_select_device_flag ,queue 
+0x43c1 015976 branch mouse_enable_function_flag 
+:      015977 mouse_select_device_disable:
+0x43c2 015978 arg mouse_select_device_flag ,queue 
+0x43c3 015979 branch mouse_disable_function_flag 
+:      015980 mouse_bt_cannel_reconn_enable:
+0x43c4 015981 arg mouse_bt_cannel_reconn_flag ,queue 
+0x43c5 015982 branch mouse_enable_function_flag 
+:      015983 mouse_bt_cannel_reconn_disable:
+0x43c6 015984 arg mouse_bt_cannel_reconn_flag ,queue 
+0x43c7 015985 branch mouse_disable_function_flag 
+:      015986 mouse_bt_discovery_button_down_enable:
+0x43c8 015987 arg mouse_bt_discovery_button_down_flag ,queue 
+0x43c9 015988 branch mouse_enable_function_flag 
+:      015989 mouse_bt_discovery_button_down_disable:
+0x43ca 015990 arg mouse_bt_discovery_button_down_flag ,queue 
+0x43cb 015991 branch mouse_disable_function_flag 
+:      015995 mouse_select_device_count_clean:
+0x43cc 015996 arg 1 ,temp 
+0x43cd 015997 rtn 
+:      015999 mouse_enable_function_flag:
+0x43ce 016000 fetch mouse_flag_len ,mem_mouse_flag 
+0x43cf 016001 qset1 pdata 
+0x43d0 016002 store mouse_flag_len ,mem_mouse_flag 
+0x43d1 016003 rtn 
+:      016005 mouse_disable_function_flag:
+0x43d2 016006 fetch mouse_flag_len ,mem_mouse_flag 
+0x43d3 016007 qset0 pdata 
+0x43d4 016008 store mouse_flag_len ,mem_mouse_flag 
+0x43d5 016009 rtn 
+:      016011 mouse_adc_read:
+0x43d6 016012 fetch mouse_flag_len ,mem_mouse_flag 
+0x43d7 016013 rtnbit0 mouse_enable_adc 
+0x43d8 016014 fetch 1 ,mem_adc_read_timer 
+0x43d9 016015 increase 1 ,pdata 
+0x43da 016016 store 1 ,mem_adc_read_timer 
+0x43db 016017 sub pdata ,10 ,null 
+0x43dc 016018 rtn positive 
+0x43dd 016019 jam 0 ,mem_adc_read_timer 
+0x43de 016020 call adc_set_mode 
+0x43df 016021 call vdd_calculate_by_mode 
+0x43e0 016022 store 2 ,mem_mouse_vdd_now_vol 
+0x43e1 016023 arg mem_mouse_vdd_calculate_set ,rega 
+0x43e2 016024 call adc_bat_percent_lowpower_out 
+0x43e3 016025 fetch 1 ,mem_adc_power_flag 
+0x43e4 016026 bbit1 1 ,mouse_power_down 
+0x43e5 016027 bbit0 0 ,mouse_adc_no_low_voltage 
+0x43e6 016028 branch mouse_adc_low_voltage 
+:      016029 mouse_adc_low_voltage:
+0x43e7 016030 arg mouse_low_voltage_flag ,queue 
+0x43e8 016031 branch mouse_enable_function_flag 
+:      016032 mouse_adc_no_low_voltage:
+0x43e9 016033 arg mouse_low_voltage_flag ,queue 
+0x43ea 016034 branch mouse_disable_function_flag 
+:      016036 mouse_low_voltage_led_timer:
+0x43eb 016037 fetch mouse_flag_len ,mem_mouse_flag 
+0x43ec 016038 rtnbit0 mouse_low_voltage_flag 
+0x43ed 016039 fetch 1 ,mem_config_low_voltage_alarm_gpio 
+0x43ee 016040 store 1 ,mem_mouse_struct_led_gpio 
+0x43ef 016041 fetch 1 ,mem_adc_low_volatage_led_timer_count 
+0x43f0 016042 pincrease 1 
+0x43f1 016043 store 1 ,mem_adc_low_volatage_led_timer_count 
+0x43f2 016044 sub pdata ,20 ,null 
+0x43f3 016045 ncall mouse_adc_low_volatage_led_timer_count_clean ,positive 
+0x43f4 016046 beq 2 ,mouse_low_voltage_led_on 
+0x43f5 016047 beq 4 ,mouse_low_voltage_led_off 
+0x43f6 016048 beq 6 ,mouse_low_voltage_led_on 
+0x43f7 016049 beq 8 ,mouse_low_voltage_led_off 
+0x43f8 016050 rtn 
+:      016051 mouse_adc_low_volatage_led_timer_count_clean:
+0x43f9 016052 jam 1 ,mem_adc_low_volatage_led_timer_count 
+0x43fa 016053 branch mouse_low_voltage_led_off 
+:      016054 mouse_low_voltage_led_on:
+0x43fb 016055 arg 0 ,rega 
+0x43fc 016056 jam ui_led_state_lighting ,mem_mouse_led_type 
+0x43fd 016057 branch ui_led_on_global 
+:      016058 mouse_low_voltage_led_off:
+0x43fe 016059 arg 0 ,rega 
+0x43ff 016060 jam ui_led_state_lighting ,mem_mouse_led_type 
+0x4400 016061 branch ui_led_off_global 
+:      016063 mouse_g24_package_data:
+0x4401 016064 call mouse_motion 
+0x4402 016065 nrtn user 
+0x4403 016066 arg 7 ,rega 
+0x4404 016067 arg mem_mouse_key ,regb 
+0x4405 016068 rtn 
+:      016070 mouse_g24_enter_lpm:
+0x4406 016071 fetch 1 ,mem_mouse_24g_enter_lpm_enable 
+0x4407 016072 rtn blank 
+0x4408 016074 fetcht 1 ,mem_dpi_button_gpio 
+0x4409 016075 call gpio_get_bit 
+0x440a 016076 call mouse_24g_dpi_delay_init ,true 
+0x440b 016077 fetch 1 ,mem_24g_enter_lpm_timer 
+0x440c 016078 nrtn blank 
+0x440d 016079 call mouse_check_key_gpio 
+0x440e 016080 nrtn blank 
+0x440f 016081 branch g24_lpm_long_sleep 
+:      016083 mouse_24g_dpi_delay_init:
+0x4410 016084 fetch 1 ,mem_dpi_button_gpio 
+0x4411 016085 rtneq ui_button_gpio_disable 
+0x4412 016086 jam 10 ,mem_24g_enter_lpm_timer 
+0x4413 016087 rtn 
+:      016090 mouse_load_flash_info_cheak:
+0x4414 016091 call mouse_load_flash_flag 
+0x4415 016092 fetch 2 ,mem_store_flag 
+0x4416 016093 arg eeprom_init_flag ,temp 
+0x4417 016094 isub temp ,null 
+0x4418 016095 branch mouse_load_flash_device_info ,zero 
+0x4419 016096 storet 2 ,mem_store_flag 
+0x441a 016097 call mouse_ble_init_address 
+0x441b 016098 branch mouse_store_flash_device_info 
+:      016099 mouse_ble_init_address:
+0x441c 016100 fetch 6 ,mem_le_lap 
+0x441d 016101 store 6 ,mem_device1_locall_addr 
+0x441e 016102 add pdata ,0x0100 ,pdata 
+0x441f 016103 store 6 ,mem_device2_locall_addr 
+0x4420 016104 add pdata ,0x0100 ,pdata 
+0x4421 016105 store 6 ,mem_device3_locall_addr 
+0x4422 016106 rtn 
+:      016109 mouse_load_flash_flag:
+0x4423 016110 setarg mem_store_flag 
+0x4424 016111 arg mem_mouse_information_start ,temp 
+0x4425 016112 isub temp ,temp 
+0x4426 016113 fetch 3 ,mem_flash_base 
+0x4427 016114 iadd temp ,pdata 
+0x4428 016115 arg 2 ,temp 
+0x4429 016116 arg mem_store_flag ,rega 
+0x442a 016117 branch spid_read_flash 
+:      016120 mouse_load_flash_device_info:
+0x442b 016121 setarg mem_mouse_information_end 
+0x442c 016122 arg mem_mouse_information_start ,temp 
+0x442d 016123 isub temp ,temp 
+0x442e 016124 fetch 3 ,mem_flash_base 
+0x442f 016125 arg mem_mouse_information_start ,rega 
+0x4430 016126 call spid_read_flash 
+0x4431 016127 call mouse_select_reconn_device 
+0x4432 016128 fetch 4 ,mem_mouse_24g_addr 
+0x4433 016129 call g24_head_ptr2regc 
+0x4434 016130 branch g24_store_mem_addr 
+:      016132 mouse_store_flash_device_info:
+0x4435 016133 setarg mem_mouse_information_end 
+0x4436 016134 arg mem_mouse_information_start ,temp 
+0x4437 016135 isub temp ,temp 
+0x4438 016136 arg mem_mouse_information_start ,rega 
+0x4439 016137 fetch 3 ,mem_flash_base 
+0x443a 016138 branch flash_write 
+:      016140 mouse_store_eerpom_dpi:
+0x443b 016141 arg 1 ,temp 
+0x443c 016142 arg mem_mouse_dpi ,rega 
+0x443d 016143 arg mouse_dpi_eeprom_offect ,regb 
+0x443e 016144 branch iicd_write_protect_eep_data 
+:      016146 mouse_load_eeprom_dpi:
+0x443f 016147 arg 1 ,temp 
+0x4440 016148 arg mem_mouse_dpi ,rega 
+0x4441 016149 arg mouse_dpi_eeprom_offect ,regb 
+0x4442 016150 branch iicd_read_eep_data 
+:      016152 mouse_statue_cheak_timer:
+0x4443 016153 rtnmark1 mark_24g 
+0x4444 016154 fetch mouse_flag_len ,mem_mouse_flag 
+0x4445 016155 rtnbit0 mouse_enable_statue_up 
+0x4446 016156 fetch 1 ,mem_mouse_1step_up_count 
+0x4447 016157 pincrease 1 
+0x4448 016158 and pdata ,0x07 ,pdata 
+0x4449 016159 store 1 ,mem_mouse_1step_up_count 
+0x444a 016160 rtnne 0x07 
+0x444b 016161 fetch 2 ,mem_ui_state_map 
+0x444c 016162 bbit1 ui_state_bt_connected ,mouse_check_statue_up 
+0x444d 016163 bbit1 ui_state_ble_connected ,mouse_check_statue_up 
+0x444e 016164 rtn 
+:      016169 mouse_check_statue_up:
+0x444f 016170 bpatch patch1d_6 ,mem_patch1d 
+0x4450 016171 fetch 1 ,mem_mouse_2step_up_count 
+0x4451 016172 nrtn blank 
+0x4452 016173 fetch mouse_flag_len ,mem_mouse_flag 
+0x4453 016174 rtnbit0 mouse_statue_up_flag 
+0x4454 016175 fetch 1 ,mem_sensor_squal_reg 
+0x4455 016176 call sensor_read 
+0x4456 016177 store 1 ,mem_sensor_iqc 
+0x4457 016178 sub pdata ,0x10 ,null 
+0x4458 016179 branch mouse_statue_up_timer_init ,positive 
+0x4459 016180 jam 0 ,mem_mouse_2step_up_count 
+0x445a 016181 rtn 
+:      016183 mouse_statue_up_timer_init:
+0x445b 016184 jam 30 ,mem_mouse_2step_up_count 
+0x445c 016185 rtn 
+:      016186 mouse_statue_up_timer:
+0x445d 016187 arg mem_mouse_2step_up_count ,regc 
+0x445e 016188 arg mouse_statue_up ,regb 
+0x445f 016189 branch timer_single_step 
+:      016191 mouse_statue_up:
+0x4460 016192 fetch 1 ,mem_sensor_squal_reg 
+0x4461 016193 call twspi_read 
+0x4462 016194 sub pdata ,0x10 ,null 
+0x4463 016195 nrtn positive 
+0x4464 016196 fetch mouse_flag_len ,mem_mouse_flag 
+0x4465 016197 rtnbit0 mouse_statue_up_flag 
+0x4466 016198 arg mouse_statue_up_flag ,queue 
+0x4467 016199 call mouse_disable_function_flag 
+0x4468 016200 jam 0 ,mem_lpm_mult 
+0x4469 016201 jam 30 ,mem_mouse_statue_led_timer 
+0x446a 016202 call mouse_devce_led_off 
+0x446b 016203 fetch mouse_flag_len ,mem_mouse_flag 
+0x446c 016204 bbit1 mouse_enable_statue_up_three_led ,mouse_three_device_statue_up 
+:      016205 mouse_two_device_statue_up:
+0x446d 016206 fetch 1 ,mem_device_flag 
+0x446e 016207 beq mode_bt_device1 ,mouse_device1_led_on 
+0x446f 016208 beq mode_bt_device2 ,mouse_device_blink_led_init 
+0x4470 016209 rtn 
+:      016210 mouse_three_device_statue_up:
+0x4471 016211 fetch 1 ,mem_device_flag 
+0x4472 016212 beq mode_bt_device1 ,mouse_device1_led_on 
+0x4473 016213 beq mode_bt_device2 ,mouse_device2_led_on 
+0x4474 016214 beq mode_bt_device3 ,mouse_device3_led_on 
+0x4475 016215 rtn 
+:      016217 mouse_device_blink_led_init:
+0x4476 016218 fetch 1 ,mem_config_device1_led_gpio 
+0x4477 016219 branch mouse_led_blink 
+:      016223 mouse_statue_led_off:
+0x4478 016224 jam 0x20 ,mem_lpm_mult 
+0x4479 016225 branch mouse_devce_led_off 
+:      016229 mouse_devce1_led_off:
+0x447a 016230 fetch 1 ,mem_config_device1_led_gpio 
+0x447b 016231 rtneq gpio_disable 
+0x447c 016232 store 1 ,mem_mouse_struct_led_gpio 
+0x447d 016233 branch mouse_led_off 
+:      016235 mouse_devce2_led_off:
+0x447e 016236 fetch 1 ,mem_config_device2_led_gpio 
+0x447f 016237 rtneq gpio_disable 
+0x4480 016238 store 1 ,mem_mouse_struct_led_gpio 
+0x4481 016239 branch mouse_led_off 
+:      016241 mouse_devce_led_off:
+0x4482 016242 call mouse_led_off 
+0x4483 016243 call mouse_devce1_led_off 
+0x4484 016244 call mouse_devce2_led_off 
+:      016245 mouse_devce3_led_off:
+0x4485 016246 fetch 1 ,mem_config_device3_led_gpio 
+0x4486 016247 rtneq gpio_disable 
+0x4487 016248 store 1 ,mem_mouse_struct_led_gpio 
+0x4488 016249 branch mouse_led_off 
+:      016251 mouse_device1_led_on:
+0x4489 016252 fetch 1 ,mem_config_device1_led_gpio 
+0x448a 016253 store 1 ,mem_mouse_struct_led_gpio 
+0x448b 016254 branch mouse_led_on 
+:      016255 mouse_device2_led_on:
+0x448c 016256 fetch 1 ,mem_config_device2_led_gpio 
+0x448d 016257 store 1 ,mem_mouse_struct_led_gpio 
+0x448e 016258 branch mouse_led_on 
+:      016259 mouse_device3_led_on:
+0x448f 016260 fetch 1 ,mem_config_device3_led_gpio 
+0x4490 016261 store 1 ,mem_mouse_struct_led_gpio 
+0x4491 016262 branch mouse_led_on 
+:      016266 mouse_polling_device:
+0x4492 016267 bpatch patch1d_7 ,mem_patch1d 
+0x4493 016268 fetch 1 ,mem_reconn_times 
+0x4494 016269 increase -1 ,pdata 
+0x4495 016270 store 1 ,mem_reconn_times 
+0x4496 016271 fetcht 1 ,mem_device_flag 
+0x4497 016272 increase 1 ,temp 
+0x4498 016273 fetch 1 ,mem_device_number 
+0x4499 016274 isub temp ,null 
+0x449a 016275 ncall mouse_select_device_count_clean ,positive 
+0x449b 016276 storet 1 ,mem_device_flag 
+0x449c 016277 jam 0 ,mem_link_key_exists 
+0x449d 016278 call mouse_store_device_number2eeprom 
+0x449e 016279 call mouse_before_store_reconn_info 
+0x449f 016280 branch mouse_check_reconn_target 
+:      016282 mouse_power_down:
+0x44a0 016283 call mouse_devce_led_off 
+0x44a1 016284 setarg 0 
+0x44a2 016285 store 8 ,mem_gpio_wakeup_low 
+0x44a3 016286 branch lpm_hibernate 
+:      016297 remote_car_init:
+0x44a4 016298 rtn wake 
+0x44a5 016299 hfetch 1 ,core_gpio_sel1 
+0x44a6 016300 and_into 0xf0 ,pdata 
+0x44a7 016301 hstore 1 ,core_gpio_sel1 
+0x44a8 016302 call keyscan_key_init 
+0x44a9 016303 setarg remote_car_le_before_hibernate 
+0x44aa 016304 store 2 ,mem_cb_before_hibernate 
+0x44ab 016306 setarg remote_car_process_lpm_before 
+0x44ac 016307 store 2 ,mem_cb_before_lpm 
+0x44ad 016309 setarg remote_car_scale_process_idle 
+0x44ae 016310 store 2 ,mem_cb_idle_process 
+0x44af 016312 setarg remote_car_scale_process_bb_event 
+0x44b0 016313 store 2 ,mem_cb_bb_event_process 
+0x44b1 016315 setarg app_get_lpm_wake_lock 
+0x44b2 016316 store 2 ,mem_cb_check_wakelock 
+0x44b3 016318 call g24_head_ptr2regc 
+0x44b4 016319 setarg remote_car_g24_package_data 
+0x44b5 016320 add regc ,offset_24g_cb_data ,contw 
+0x44b6 016321 istore 2 ,contw 
+0x44b7 016323 setarg remote_car_g24_enter_lpm 
+0x44b8 016324 add regc ,offset_24g_cb_lpm_prepare ,contw 
+0x44b9 016325 istore 2 ,contw 
+0x44ba 016327 setarg remote_car_process_lpm_before 
+0x44bb 016328 add regc ,offset_24g_cb_lpm_before ,contw 
+0x44bc 016329 istore 2 ,contw 
+0x44bd 016331 setarg remote_car_event_timer 
+0x44be 016332 store 2 ,mem_cb_event_timer 
+0x44bf 016334 setarg remote_car_power_off_signal 
+0x44c0 016335 store 2 ,mem_remote_car_power_off_cb 
+0x44c1 016337 setarg remote_car_soft_switch_power_on_signal 
+0x44c2 016338 store 2 ,mem_remote_car_power_standby_cb 
+0x44c3 016340 setarg remote_car_send_key_data 
+0x44c4 016341 store 2 ,mem_cb_remote_car_keyscan 
+0x44c5 016343 bpatch patch1e_0 ,mem_patch1e 
+0x44c6 016344 call remote_car_init_environment 
+0x44c7 016345 call queue_init 
+0x44c8 016346 jam 2 ,mem_lpm_mult 
+0x44c9 016347 fetch 1 ,mem_remote_car_config_soft_switch_enable 
+0x44ca 016348 store 1 ,mem_remote_car_hard_soft_switch 
+0x44cb 016349 beq hard_switch ,remote_car_hard_switch_power_on_signal 
+0x44cc 016350 fetch 1 ,mem_remote_car_config_soft_switch_gpio 
+0x44cd 016351 store 1 ,mem_ui_button_gpio 
+:      016352 remote_car_soft_switch_power_on_init:
+0x44ce 016353 call remote_car_ui_led_init 
+0x44cf 016354 call ui_button_init 
+0x44d0 016355 call ui_button_polling 
+0x44d1 016356 jam power_starting ,mem_remote_car_power_state 
+0x44d2 016357 fetch 2 ,mem_ui_state_map 
+0x44d3 016358 rtnbit1 ui_state_btn_down 
+0x44d4 016359 branch app_enter_hibernate 
+:      016363 remote_car_hard_switch_power_on_signal:
+0x44d5 016364 jam power_standby ,mem_remote_car_power_state 
+:      016365 remote_car_soft_switch_power_on_signal:
+0x44d6 016366 call remote_car_ui_led_init 
+0x44d7 016368 arg 0 ,rega 
+0x44d8 016369 call ui_led_blink_start_global 
+:      016370 remote_car_connect_24g_mode:
+0x44d9 016371 branch g24_auto_pair_start 
+:      016373 remote_car_power_off_signal:
+0x44da 016374 branch remote_car_ui_led_init 
+:      016376 remote_car_ui_led_init:
+0x44db 016377 bpatch patch1e_1 ,mem_patch1e 
+0x44dc 016378 fetch 1 ,mem_remote_car_config_connect_led_gpio 
+0x44dd 016379 bne invalid_pin_num ,remote_car_pairing_led_gpio_set 
+:      016380 remote_car_ui_led_init_1:
+0x44de 016381 fetcht 1 ,mem_remote_car_led_map 
+0x44df 016382 branch gpio_config_output 
+:      016383 remote_car_pairing_led_gpio_set:
+0x44e0 016384 store 1 ,mem_remote_car_led_map 
+0x44e1 016385 branch remote_car_ui_led_init_1 
+:      016388 remote_car_init_environment:
+0x44e2 016389 call g24_set_device_addr 
+0x44e3 016390 fetch 2 ,mem_remote_car_no_data_timeout 
+0x44e4 016391 store 2 ,mem_remote_car_no_data_timer 
+0x44e5 016392 branch remote_car_get_adc_default_data 
+:      016394 remote_car_le_before_hibernate:
+:      016399 remote_car_in_enter_hibernate:
+0x44e6 016400 call gpio_set_before_lpm_common 
+0x44e7 016401 call remote_car_process_lpm_before 
+0x44e8 016402 branch app_enter_hibernate 
+:      016404 remote_car_process_lpm_before:
+0x44e9 016405 branch keyscan_process_lpm_before 
+:      016407 remote_car_g24_enter_lpm:
+0x44ea 016408 fetch 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x44eb 016409 rtn blank 
+0x44ec 016411 branch g24_lpm_long_sleep 
+:      016413 remote_car_process_auto_pair_exit:
+0x44ed 016414 rtn 
+:      016416 remote_car_key_scan_process:
+0x44ee 016417 branch keyscan_key_process 
+:      016419 remote_car_scale_process_idle:
+0x44ef 016420 call remote_car_rocker_process 
+0x44f0 016421 call remote_car_24g_status_process 
+0x44f1 016422 branch remote_car_key_scan_process 
+:      016424 remote_car_scale_process_bb_event:
+0x44f2 016425 copy regc ,pdata 
+0x44f3 016426 beq bt_evt_button_up ,app_event_button_up 
+0x44f4 016427 beq bt_evt_button_long_pressed ,app_button_long_pressed 
+0x44f5 016428 beq bt_evt_24g_pairing_complete ,remote_car_24g_pairing_complete 
+0x44f6 016429 beq bt_evt_24g_attempt_success ,remote_car_24g_attempt_success 
+0x44f7 016430 beq bt_evt_24g_attempt_fail ,remote_car_24g_attempt_fail 
+0x44f8 016431 rtn 
+:      016433 remote_car_24g_attempt_fail:
+0x44f9 016434 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x44fa 016435 rtn 
+:      016437 remote_car_24g_pairing_complete:
+0x44fb 016438 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x44fc 016439 jam work_paired ,mem_remote_car_24g_auto_work_step 
+0x44fd 016440 jam work_paired ,mem_remote_car_24g_pair_success_flag 
+0x44fe 016441 rtn 
+:      016443 remote_car_24g_attempt_success:
+0x44ff 016444 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x4500 016445 jam work_paired ,mem_remote_car_24g_auto_work_step 
+0x4501 016446 jam work_paired ,mem_remote_car_24g_pair_success_flag 
+0x4502 016447 rtn 
+:      016449 remote_car_24g_status_process:
+0x4503 016450 fetch 1 ,mem_remote_car_24g_auto_work_step 
+0x4504 016451 rtneq power_on 
+0x4505 016452 fetch 1 ,mem_remote_car_24g_status 
+0x4506 016453 rtneq work_paired 
+0x4507 016454 jam work_paired ,mem_remote_car_24g_status 
+:      016455 remote_car_scale_process_paired:
+0x4508 016456 arg 0 ,rega 
+0x4509 016457 branch ui_led_off_global 
+:      016458 remote_car_scale_process_shutdown:
+0x450a 016459 arg 0 ,rega 
+0x450b 016460 call ui_led_off_global 
+0x450c 016461 call remote_car_ui_led_init 
+0x450d 016462 branch app_enter_hibernate 
+:      016464 remote_car_event_timer:
+0x450e 016465 call app_power_timer 
+0x450f 016466 branch remote_car_no_data_timer 
+:      016468 remote_car_no_data_timer:
+0x4510 016469 fetch 1 ,mem_remote_car_config_timeout_shutdown_enable 
+0x4511 016470 rtn blank 
+0x4512 016471 arg mem_remote_car_no_data_timer ,regc 
+0x4513 016472 arg remote_car_scale_process_shutdown ,regb 
+0x4514 016473 branch timer_single_step_2b 
+:      016476 remote_car_get_adc_default_data:
+0x4515 016477 call remote_car_rocker_get_x 
+0x4516 016478 storet 2 ,mem_current_vdd_value_default_mid_x 
+0x4517 016479 call remote_car_rocker_get_y 
+0x4518 016480 storet 2 ,mem_current_vdd_value_default_mid_y 
+0x4519 016481 rtn 
+:      016482 remote_car_rocker_data_get:
+:      016483 remote_car_rocker_get_x:
+0x451a 016484 fetch 2 ,mem_current_vdd_value_default_mid_x 
+0x451b 016485 store 2 ,mem_current_vdd_value_default_mid_temp 
+0x451c 016486 call remote_car_get_adc_from_gpio6 
+0x451d 016487 call remote_car_rocker_get_value 
+0x451e 016488 store 1 ,mem_rocker_status 
+:      016489 remote_car_rocker_get_y:
+0x451f 016490 fetch 2 ,mem_current_vdd_value_default_mid_y 
+0x4520 016491 store 2 ,mem_current_vdd_value_default_mid_temp 
+0x4521 016492 call remote_car_get_adc_from_gpio7 
+0x4522 016493 call remote_car_rocker_get_value 
+0x4523 016494 store 1 ,mem_rocker_status + 1 
+0x4524 016495 rtn 
+:      016496 remote_car_rocker_get_value:
+0x4525 016497 fetch 2 ,mem_current_vdd_default_range 
+0x4526 016498 copy pdata ,rega 
+0x4527 016499 fetch 2 ,mem_current_vdd_value_default_mid_temp 
+0x4528 016500 call remote_car_rocker_mid_value_adjust 
+0x4529 016501 fetch 1 ,mem_rocker_work_status 
+0x452a 016502 nbranch remote_car_rocker_translate_key ,blank 
+0x452b 016503 nrtn positive 
+0x452c 016504 fetcht 2 ,mem_current_vdd_value_default_mid_temp 
+0x452d 016505 rtn 
+:      016506 remote_car_rocker_mid_value_adjust:
+0x452e 016507 isub temp ,pdata 
+0x452f 016508 branch remote_car_rocker_mid_adjust_positive ,positive 
+0x4530 016509 sub pdata ,0 ,pdata 
+0x4531 016510 jam 1 ,mem_rocker_negative_flag 
+0x4532 016511 isub rega ,null 
+0x4533 016512 rtn 
+:      016513 remote_car_rocker_mid_adjust_positive:
+0x4534 016514 jam 0 ,mem_rocker_negative_flag 
+0x4535 016515 isub rega ,null 
+0x4536 016516 rtn 
+:      016517 remote_car_rocker_translate_key:
+0x4537 016518 nbranch remote_car_rocker_middle_key ,positive 
+0x4538 016519 fetch 1 ,mem_rocker_negative_flag 
+0x4539 016520 nbranch remote_car_rocker_negative_key ,blank 
+:      016521 remote_car_rocker_positive_key:
+0x453a 016522 setarg rocker_positive_key 
+0x453b 016523 rtn 
+:      016524 remote_car_rocker_negative_key:
+0x453c 016525 setarg rocker_negative_key 
+0x453d 016526 rtn 
+:      016527 remote_car_rocker_middle_key:
+0x453e 016528 setarg rocker_middle_key 
+0x453f 016529 rtn 
+:      016530 remote_car_get_adc_from_gpio6:
+0x4540 016531 jam 0x33 ,mem_adc_channel 
+0x4541 016532 branch adc_set_mode 
+:      016533 remote_car_get_adc_from_gpio7:
+0x4542 016534 jam 0x34 ,mem_adc_channel 
+0x4543 016535 branch adc_set_mode 
+:      016538 remote_car_rocker_process:
+0x4544 016539 fetch 1 ,mem_remote_car_config_check_way 
+0x4545 016540 rtnne car_remote_check_rocker 
+:      016541 remote_car_read_rocker_check_start:
+0x4546 016542 bpatch patch1e_2 ,mem_patch1e 
+0x4547 016543 jam 1 ,mem_rocker_work_status 
+0x4548 016544 call remote_car_rocker_data_get 
+0x4549 016545 fetch 2 ,mem_rocker_status 
+0x454a 016546 fetcht 2 ,mem_rocker_last_status 
+0x454b 016547 isub temp ,null 
+0x454c 016548 rtn zero 
+0x454d 016549 store 2 ,mem_rocker_last_status 
+0x454e 016550 call remote_car_rocker_x_to_key 
+0x454f 016551 branch remote_car_rocker_y_to_key 
+:      016553 remote_car_rocker_x_to_key:
+0x4550 016554 fetch 1 ,mem_rocker_x_status 
+0x4551 016555 branch rocker_to_queue_set_0 ,blank 
+0x4552 016556 increase -1 ,pdata 
+0x4553 016557 branch remote_car_rocker_to_key 
+:      016558 remote_car_rocker_y_to_key:
+0x4554 016559 fetch 1 ,mem_rocker_y_status 
+0x4555 016560 branch rocker_to_queue_set_2 ,blank 
+0x4556 016561 increase 1 ,pdata 
+:      016562 remote_car_rocker_to_key:
+0x4557 016563 copy pdata ,queue 
+0x4558 016564 arg 1 ,rega 
+0x4559 016565 branch remote_car_send_key_data 
+:      016567 rocker_to_queue_set_0:
+0x455a 016568 arg 0 ,queue 
+0x455b 016569 arg 0 ,rega 
+0x455c 016570 branch remote_car_send_key_data 
+:      016571 rocker_to_queue_set_2:
+0x455d 016572 arg 2 ,queue 
+0x455e 016573 arg 0 ,rega 
+0x455f 016574 branch remote_car_send_key_data 
+:      016576 remote_car_send_key_data:
+0x4560 016577 copy rega ,pdata 
+0x4561 016578 store 1 ,mem_remote_key_status 
+0x4562 016579 fetch 1 ,mem_remote_car_24g_auto_work_step 
+0x4563 016580 beq power_on ,g24_auto_pair_start 
+0x4564 016581 fetch 2 ,mem_remote_car_no_data_timeout 
+0x4565 016582 store 2 ,mem_remote_car_no_data_timer 
+0x4566 016583 fetch 1 ,mem_remote_key_status 
+0x4567 016584 branch remote_car_key_is_release ,blank 
+:      016585 remote_car_key_is_press:
+0x4568 016586 bpatch patch1e_3 ,mem_patch1e 
+0x4569 016587 arg 0 ,rega 
+0x456a 016588 call ui_led_on_global 
+:      016589 remote_car_attack_key_press:
+0x456b 016590 copy queue ,pdata 
+0x456c 016591 beq 4 ,remote_car_send_attack_key4_press 
+0x456d 016592 beq 5 ,remote_car_send_attack_key5_press 
+0x456e 016593 beq 6 ,remote_car_send_fire_key6_press 
+:      016596 remote_car_motor_key_press:
+0x456f 016597 call remote_car_device_layout_select 
+0x4570 016598 beq control_f_b_ten ,remote_car_single_motor_key_is_press 
+0x4571 016599 beq control_l_r_ten ,remote_car_double_motor_key_press 
+0x4572 016600 beq control_l_r_lr ,remote_car_single_motor_key_is_press 
+0x4573 016601 rtn 
+:      016603 remote_car_single_motor_key_is_press:
+0x4574 016604 copy queue ,pdata 
+0x4575 016605 beq 0 ,remote_car_send_motor1_key0_press 
+0x4576 016606 beq 1 ,remote_car_send_motor1_key1_press 
+0x4577 016607 beq 2 ,remote_car_send_motor2_key2_press 
+0x4578 016608 beq 3 ,remote_car_send_motor2_key3_press 
+0x4579 016609 rtn 
+:      016611 remote_car_double_motor_key_press:
+0x457a 016612 copy queue ,pdata 
+0x457b 016613 beq 0 ,remote_car_send_double_motor_key0_press 
+0x457c 016614 beq 1 ,remote_car_send_double_motor_key1_press 
+0x457d 016615 beq 2 ,remote_car_send_double_motor_key2_press 
+0x457e 016616 beq 3 ,remote_car_send_double_motor_key3_press 
+0x457f 016617 rtn 
+:      016619 remote_car_key_is_release:
+0x4580 016620 bpatch patch1e_4 ,mem_patch1e 
+0x4581 016621 arg 0 ,rega 
+0x4582 016622 call ui_led_off_global 
+:      016623 remote_car_attack_key_release:
+0x4583 016624 copy queue ,pdata 
+0x4584 016625 beq 4 ,remote_car_send_attack_key4_rel 
+0x4585 016626 beq 5 ,remote_car_send_attack_key5_rel 
+:      016629 remote_car_motor_key_release:
+0x4586 016630 call remote_car_device_layout_select 
+0x4587 016631 beq control_f_b_ten ,remote_car_single_motor_key_rel 
+0x4588 016632 beq control_l_r_ten ,remote_car_double_motor_key_rel 
+0x4589 016633 beq control_l_r_lr ,remote_car_single_motor_key_rel 
+0x458a 016634 rtn 
+:      016636 remote_car_device_layout_select:
+0x458b 016637 fetch 1 ,mem_remote_car_config_layout 
+0x458c 016638 fetcht 1 ,mem_remote_car_config_key_map 
+0x458d 016639 ior temp ,pdata 
+0x458e 016640 rtn 
+:      016643 remote_car_send_motor1_key0_press:
+0x458f 016644 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+0x4590 016645 branch remote_car_send_key 
+:      016646 remote_car_send_motor1_key1_press:
+0x4591 016647 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+0x4592 016648 branch remote_car_send_key 
+:      016649 remote_car_send_motor2_key2_press:
+0x4593 016650 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+0x4594 016651 branch remote_car_send_key 
+:      016652 remote_car_send_motor2_key3_press:
+0x4595 016653 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+0x4596 016654 branch remote_car_send_key 
+:      016657 remote_car_send_double_motor_key0_press:
+0x4597 016658 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+0x4598 016659 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+0x4599 016660 branch remote_car_send_key 
+:      016661 remote_car_send_double_motor_key1_press:
+0x459a 016662 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+0x459b 016663 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+0x459c 016664 branch remote_car_send_key 
+:      016665 remote_car_send_double_motor_key2_press:
+0x459d 016666 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+0x459e 016667 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+0x459f 016668 branch remote_car_send_key 
+:      016669 remote_car_send_double_motor_key3_press:
+0x45a0 016670 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+0x45a1 016671 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+0x45a2 016672 branch remote_car_send_key 
+:      016675 remote_car_send_attack_key4_press:
+0x45a3 016676 jam motor_positive ,mem_remote_car_24g_motor3_payload 
+0x45a4 016677 branch remote_car_send_key 
+:      016678 remote_car_send_attack_key5_press:
+0x45a5 016679 jam motor_negative ,mem_remote_car_24g_motor3_payload 
+0x45a6 016680 branch remote_car_send_key 
+:      016682 remote_car_send_fire_key6_press:
+0x45a7 016683 jam 0x01 ,mem_remote_car_24g_fire_send_payload 
+0x45a8 016684 branch remote_car_send_attack 
+:      016686 remote_car_single_motor_key_rel:
+0x45a9 016687 copy queue ,pdata 
+0x45aa 016688 beq 0 ,remote_car_send_motor1_key0_rel 
+0x45ab 016689 beq 1 ,remote_car_send_motor1_key1_rel 
+0x45ac 016690 beq 2 ,remote_car_send_motor2_key2_rel 
+0x45ad 016691 beq 3 ,remote_car_send_motor2_key3_rel 
+0x45ae 016692 rtn 
+:      016694 remote_car_double_motor_key_rel:
+0x45af 016695 copy queue ,pdata 
+0x45b0 016696 beq 0 ,remote_car_send_double_motor_key0_rel 
+0x45b1 016697 beq 1 ,remote_car_send_double_motor_key1_rel 
+0x45b2 016698 beq 2 ,remote_car_send_double_motor_key2_rel 
+0x45b3 016699 beq 3 ,remote_car_send_double_motor_key3_rel 
+0x45b4 016700 rtn 
+:      016702 remote_car_send_motor1_key0_rel:
+:      016703 remote_car_send_motor1_key1_rel:
+0x45b5 016704 jam motor_stop ,mem_remote_car_24g_motor1_payload 
+0x45b6 016705 branch remote_car_send_key 
+:      016706 remote_car_send_motor2_key2_rel:
+:      016707 remote_car_send_motor2_key3_rel:
+0x45b7 016708 jam motor_stop ,mem_remote_car_24g_motor2_payload 
+0x45b8 016709 branch remote_car_send_key 
+:      016711 remote_car_send_double_motor_key0_rel:
+:      016712 remote_car_send_double_motor_key1_rel:
+:      016713 remote_car_send_double_motor_key2_rel:
+:      016714 remote_car_send_double_motor_key3_rel:
+0x45b9 016715 jam motor_stop ,mem_remote_car_24g_motor1_payload 
+0x45ba 016716 jam motor_stop ,mem_remote_car_24g_motor2_payload 
+0x45bb 016717 branch remote_car_send_key 
+:      016719 remote_car_send_attack_key4_rel:
+:      016720 remote_car_send_attack_key5_rel:
+0x45bc 016721 jam motor_stop ,mem_remote_car_24g_motor3_payload 
+0x45bd 016722 branch remote_car_send_key 
+:      016724 remote_car_send_key:
+0x45be 016725 arg mem_remote_car_24g_motor_packet ,rega 
+0x45bf 016726 branch queue_push 
+:      016727 remote_car_send_attack:
+0x45c0 016728 arg mem_remote_car_24g_fire_packet ,rega 
+0x45c1 016729 branch queue_push 
+:      016731 remote_car_g24_package_data:
+0x45c2 016732 fetch 1 ,mem_remote_car_24g_pair_success_flag 
+0x45c3 016733 beq work_paired ,remote_car_g24_send_empty 
+0x45c4 016734 arg mem_remote_car_24g_tx_temp ,rega 
+0x45c5 016735 call queue_pop 
+0x45c6 016736 nbranch remote_car_moto_data ,user 
+:      016737 remote_car_g24_package_data_continue:
+0x45c7 016738 arg mem_remote_car_24g_tx_temp ,contr 
+0x45c8 016739 ifetch 1 ,contr 
+0x45c9 016740 copy pdata ,rega 
+0x45ca 016741 arg mem_remote_car_24g_tx_temp + 1 ,regb 
+0x45cb 016744 rtn 
+:      016746 remote_car_g24_send_empty:
+0x45cc 016747 jam 0 ,mem_remote_car_24g_pair_success_flag 
+0x45cd 016748 enable user 
+0x45ce 016749 arg 1 ,rega 
+0x45cf 016750 arg mem_remote_car_empty_packet ,regb 
+0x45d0 016751 rtn 
+:      016753 remote_car_moto_data:
+0x45d1 016754 fetch 1 ,mem_remote_car_24g_tx_temp + 3 
+0x45d2 016755 beq car_cmd_l_r_motor_control ,remote_car_moto_data_next 
+0x45d3 016756 beq car_cmd_f_b_motor_control ,remote_car_moto_data_next 
+0x45d4 016757 rtn 
+:      016758 remote_car_moto_data_next:
+0x45d5 016759 fetch 1 ,mem_remote_car_24g_tx_temp + 6 
+0x45d6 016760 nbranch remote_car_moto_data_enable_user ,blank 
+0x45d7 016761 fetch 1 ,mem_remote_car_24g_tx_temp + 8 
+0x45d8 016762 nbranch remote_car_moto_data_enable_user ,blank 
+0x45d9 016763 fetch 1 ,mem_remote_car_24g_tx_temp + 10 
+0x45da 016764 nbranch remote_car_moto_data_enable_user ,blank 
+0x45db 016765 rtn 
+:      016766 remote_car_moto_data_enable_user:
+0x45dc 016767 enable user 
+0x45dd 016768 branch remote_car_g24_package_data_continue 
+:      016776 shutter_init:
+0x45de 016777 rtn wake 
+0x45df 016778 hfetch 1 ,core_gpio_sel1 
+0x45e0 016779 and_into 0xfc ,pdata 
+0x45e1 016780 hstore 1 ,core_gpio_sel1 
+0x45e2 016781 setarg shutter_le_before_hibernate 
+0x45e3 016782 store 2 ,mem_cb_before_hibernate 
+0x45e4 016784 setarg shutter_process_lpm_before 
+0x45e5 016785 store 2 ,mem_cb_before_lpm 
+0x45e6 016787 setarg app_enter_hibernate 
+0x45e7 016788 store 2 ,mem_cb_discovry_timeout 
+0x45e8 016790 setarg shutter_process_idle 
+0x45e9 016791 store 2 ,mem_cb_idle_process 
+0x45ea 016793 setarg shutter_process_bb_event 
+0x45eb 016794 store 2 ,mem_cb_bb_event_process 
+0x45ec 016796 setarg shutter_le_scale_lpm_lock 
+0x45ed 016797 store 2 ,mem_cb_check_wakelock 
+0x45ee 016799 setarg ble_shutter_receive_data 
+0x45ef 016800 store 2 ,mem_cb_att_write 
+0x45f0 016802 setarg shutter_le_bb_event_timer 
+0x45f1 016803 store 2 ,mem_cb_event_timer 
+0x45f2 016805 setarg shutter_key_change 
+0x45f3 016806 store 2 ,mem_cb_shutter_keycan 
+0x45f4 016808 setarg shutter_soft_swtich_power_on 
+0x45f5 016809 store 2 ,mem_shutter_soft_switch_poweron_callback_function 
+0x45f6 016810 setarg shutter_soft_swtich_power_off 
+0x45f7 016811 store 2 ,mem_shutter_soft_switch_poweroff_callback_function 
+0x45f8 016813 call le_modified_name 
+0x45f9 016814 call shutter_load_bluetooth_config_by_user_config 
+0x45fa 016815 call shutter_init_bluetooth_config 
+0x45fb 016816 call shutter_init_param 
+0x45fc 016817 call keyscan_key_init 
+0x45fd 016818 call shutter_load_buffer_config_form_datarom 
+0x45fe 016819 call queue_init 
+0x45ff 016820 call ui_led_init_global 
+0x4600 016821 call shutter_load_bluetooth_config 
+0x4601 016822 call shutter_load_bluetooth_config_by_eeprom 
+0x4602 016824 bpatch patch1e_5 ,mem_patch1e 
+0x4603 016825 call classic_shutter_load_reconn_info 
+0x4604 016826 fetch 1 ,mem_shutter_hard_soft_switch_case 
+0x4605 016827 beq hard_switch ,shutter_hart_swtich_power_on 
+0x4606 016828 fetch 1 ,mem_shutter_soft_switch_button_gpio 
+0x4607 016829 store 1 ,mem_ui_button_gpio 
+0x4608 016830 branch ui_soft_swtich_init 
+:      016833 shutter_hart_swtich_power_on:
+0x4609 016834 jam ui_button_gpio_disable ,mem_ui_button_gpio 
+0x460a 016835 jam ss_state_power_on ,mem_shutter_soft_switch_power_state 
+0x460b 016836 branch shutter_start_reconnect 
+:      016840 shutter_le_scale_lpm_lock:
+0x460c 016841 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x460d 016842 beq ss_state_power_off ,app_get_lpm_wake_lock 
+0x460e 016843 call l2cap_malloc_get_full_map 
+0x460f 016844 fetch 1 ,mem_used_map 
+0x4610 016845 nbranch app_get_lpm_wake_lock ,blank 
+0x4611 016846 branch app_put_lpm_wake_lock 
+:      016850 shutter_process_bb_event:
+0x4612 016851 copy regc ,pdata 
+0x4613 016853 beq bt_evt_bb_connected ,classic_shutter_process_baseband_connect 
+0x4614 016854 beq bt_evt_bb_disconnected ,classic_shutter_process_baseband_disconnect 
+0x4615 016855 beq bt_evt_reconn_failed ,classic_shutter_process_reconnect_failed 
+0x4616 016856 beq bt_evt_setup_complete ,classic_shutter_process_setup_complete 
+0x4617 016857 beq bt_evt_hid_connected ,classic_shutter_process_hid_connect 
+0x4618 016858 beq bt_evt_hid_disconnected ,classic_shutter_process_hid_disconnect 
+0x4619 016859 beq bt_evt_hid_handshake ,classic_shutter_process_hid_handshake 
+0x461a 016860 beq bt_evt_reconn_page_timeout ,classic_shutter_process_reconnect_page_timeout 
+0x461b 016861 beq bt_evt_virtual_cable_unplug ,classic_shutter_process_virtual_cable_unplug 
+0x461c 016862 beq bt_evt_remote_unsniff ,classic_shutter_process_remote_unsniff 
+0x461d 016863 beq bt_evt_store_nvram ,classic_shutter_process_store_reconnect_information 
+0x461e 016865 beq bt_evt_le_connected ,ble_shutter_process_baseband_connect 
+0x461f 016866 beq bt_evt_le_disconnected ,ble_shutter_process_baseband_disconnect 
+0x4620 016867 beq bt_evt_le_reconnect_complete ,ble_shutter_process_reconnect_complete 
+0x4621 016868 beq bt_evt_le_parse_conn_papa_update_rsp ,ble_shutter_process_parse_connect_parameter_update_response 
+0x4622 016870 beq bt_evt_button_long_pressed ,shutter_process_soft_swtich_button_long_press 
+0x4623 016871 beq bt_evt_button_down ,shutter_process_soft_swtich_button_down 
+0x4624 016872 beq bt_evt_button_up ,shutter_process_soft_swtich_button_up 
+0x4625 016873 rtn 
+:      016878 classic_shutter_process_baseband_connect:
+0x4626 016879 jam 0 ,mem_classic_shutter_hid_disconn_count 
+0x4627 016880 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+0x4628 016881 rtn 
+:      016884 classic_shutter_process_baseband_disconnect:
+0x4629 016885 call classic_shutter_disconnect_clear_flag 
+0x462a 016886 branch classic_shutter_process_reconnect_failed 
+:      016888 classic_shutter_disconnect_clear_flag:
+0x462b 016889 jam app_handshake_null ,mem_app_handshake_flag 
+0x462c 016890 jam 0 ,mem_hid_handshake_timer_count 
+0x462d 016891 jam 0 ,mem_unsniff2sniff_timer_count 
+0x462e 016892 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+0x462f 016893 jam 0 ,mem_classic_shutter_hid_disconn_count 
+0x4630 016894 branch queue_init 
+:      016897 classic_shutter_process_reconnect_failed:
+0x4631 016898 call app_disconn_reason_clear 
+0x4632 016899 branch shutter_start_bluetooth_discovery 
+:      016902 classic_shutter_process_setup_complete:
+0x4633 016903 call shutter_stop_bluetooth_discovery 
+0x4634 016904 branch app_led_stop_blink 
+:      016907 classic_shutter_process_hid_connect:
+0x4635 016908 setarg hid_handshake_timeout 
+0x4636 016909 store 1 ,mem_hid_handshake_timer_count 
+0x4637 016910 rtn 
+:      016913 classic_shutter_process_hid_disconnect:
+0x4638 016914 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+0x4639 016915 setarg flag_shutter_hid_disconn_timeout 
+0x463a 016916 store 1 ,mem_classic_shutter_hid_disconn_count 
+0x463b 016917 rtn 
+:      016920 classic_shutter_process_hid_handshake:
+0x463c 016921 fetch 1 ,mem_app_handshake_flag 
+0x463d 016922 rtneq app_handshake_done 
+0x463e 016923 jam app_handshake_done ,mem_app_handshake_flag 
+0x463f 016924 call app_lpm_mult_enable 
+0x4640 016925 call app_store_reconn_info 
+0x4641 016926 call shutter_stop_bluetooth_discovery 
+0x4642 016927 call app_led_off 
+0x4643 016928 branch app_bt_enter_sniff 
+:      016931 classic_shutter_process_reconnect_page_timeout:
+0x4644 016932 branch classic_shutter_process_reconnect_failed 
+:      016935 classic_shutter_process_virtual_cable_unplug:
+0x4645 016936 setarg flag_shutter_cable_unplug_timeout 
+0x4646 016937 store 1 ,mem_classic_shutter_cable_unplug_conut 
+0x4647 016938 rtn 
+:      016941 classic_shutter_process_remote_unsniff:
+0x4648 016942 branch app_start_auto_sniff 
+:      016946 classic_shutter_process_store_reconnect_information:
+0x4649 016947 arg nvram_eeprom_offset ,regb 
+0x464a 016948 fetch 1 ,mem_nv_data_number 
+0x464b 016949 mul32 pdata ,34 ,temp 
+0x464c 016950 fetch 2 ,mem_nv_data_ptr 
+0x464d 016951 copy pdata ,rega 
+0x464e 016952 branch iicd_write_eep_data 
+:      016954 classic_shutter_load_reconn_info:
+0x464f 016955 arg nvram_eeprom_offset ,regb 
+0x4650 016956 fetch 1 ,mem_shutter_bluetooth_type 
+0x4651 016957 rtnbit0 classic_shutter 
+0x4652 016958 fetch 1 ,mem_nv_data_number 
+0x4653 016959 rtn blank 
+0x4654 016960 mul32 pdata ,34 ,temp 
+0x4655 016961 fetch 2 ,mem_nv_data_ptr 
+0x4656 016962 copy pdata ,rega 
+0x4657 016963 branch iicd_read_eep_data 
+:      016967 ble_shutter_process_baseband_connect:
+0x4658 016968 call shutter_stop_bluetooth_discovery 
+0x4659 016969 setarg 0 
+0x465a 016970 store 2 ,mem_ble_shutter_reconn_timer 
+0x465b 016971 branch app_led_off 
+:      016974 ble_shutter_process_baseband_disconnect:
+0x465c 016975 call queue_init 
+0x465d 016976 jam 0 ,mem_ble_shutter_enable_notify 
+0x465e 016977 branch shutter_start_reconnect 
+:      016980 ble_shutter_process_reconnect_complete:
+0x465f 016981 call queue_init 
+0x4660 016982 jam 1 ,mem_ble_shutter_enable_notify 
+0x4661 016983 fetch 8 ,mem_ble_shutter_interval_min 
+0x4662 016984 store 8 ,mem_le_interval_min 
+0x4663 016985 call app_lpm_mult_enable 
+0x4664 016986 branch le_l2cap_tx_update_req 
+:      016989 ble_shutter_process_parse_connect_parameter_update_response:
+0x4665 016990 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x4666 016991 rtneq ble_signaling_connect_parameter_update_accepted 
+0x4667 016992 fetch 8 ,mem_ble_shutter_interval_min_new 
+0x4668 016993 rtn blank 
+0x4669 016994 store 8 ,mem_le_interval_min 
+0x466a 016995 branch le_l2cap_tx_update_req 
+:      016999 shutter_process_soft_swtich_button_long_press:
+0x466b 017000 branch ui_soft_switch_botton_long_press 
+:      017002 shutter_process_soft_swtich_button_down:
+0x466c 017003 fetch 1 ,mem_shutter_hard_soft_switch_case 
+0x466d 017004 rtneq hard_switch 
+0x466e 017005 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x466f 017006 rtnne ss_state_power_on 
+0x4670 017007 call shutter_store_currenct_led_state 
+0x4671 017008 branch app_led_on 
+:      017010 shutter_store_currenct_led_state:
+0x4672 017011 jam 1 ,mem_shutter_soft_swtich_botton_down 
+0x4673 017012 arg 11 ,loopcnt 
+0x4674 017013 arg mem_shutter_soft_swtich_led_struct_temp ,contw 
+0x4675 017014 arg mem_shutter_led_struct_app_led ,contr 
+0x4676 017015 branch memcpy 
+:      017017 shutter_process_soft_swtich_button_up:
+0x4677 017018 fetch 1 ,mem_shutter_hard_soft_switch_case 
+0x4678 017019 rtneq hard_switch 
+0x4679 017020 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x467a 017021 beq ss_state_power_on ,shutter_load_currenct_led_state 
+0x467b 017022 branch ui_soft_switch_botton_up 
+:      017024 shutter_load_currenct_led_state:
+0x467c 017025 fetch 1 ,mem_shutter_soft_swtich_botton_down 
+0x467d 017026 rtnne 1 
+0x467e 017027 jam 0 ,mem_shutter_soft_swtich_botton_down 
+0x467f 017028 fetch 2 ,mem_ui_state_map 
+0x4680 017029 bbit1 ui_state_bt_connected ,app_led_off 
+0x4681 017030 bbit1 ui_state_ble_connected ,app_led_off 
+0x4682 017031 arg 11 ,loopcnt 
+0x4683 017032 arg mem_shutter_soft_swtich_led_struct_temp ,contr 
+0x4684 017033 arg mem_shutter_led_struct_app_led ,contw 
+0x4685 017034 branch memcpy 
+:      017039 shutter_le_bb_event_timer:
+0x4686 017041 call shutter_check_sleep_timer 
+0x4687 017044 call shutter_check_power_off_timer 
+0x4688 017047 call classic_shutter_check_unplug_timer 
+0x4689 017048 call classic_shutter_hid_handshake_timer 
+0x468a 017049 call classic_shutter_hid_disconn_timer 
+0x468b 017052 branch ble_shutter_reconn_timer 
+:      017056 shutter_check_sleep_timer:
+0x468c 017057 arg mem_shutter_sleep_timer ,regc 
+0x468d 017058 arg shutter_sleep_timeout ,regb 
+0x468e 017059 branch timer_single_step_2b 
+:      017060 shutter_sleep_timeout:
+0x468f 017061 jam ss_state_power_off ,mem_shutter_soft_switch_power_state 
+0x4690 017062 call app_led_off 
+0x4691 017063 call shutter_disconnect_current_connection 
+0x4692 017064 branch shutter_wait_power_off 
+:      017067 shutter_check_power_off_timer:
+0x4693 017068 arg mem_shutter_power_off_timer ,regc 
+0x4694 017069 arg shutter_check_power_off_timeout ,regb 
+0x4695 017070 branch timer_single_step 
+:      017072 shutter_check_power_off_timeout:
+0x4696 017073 fetch 2 ,mem_ui_state_map 
+0x4697 017074 bbit1 ui_state_ble_connected ,shutter_wait_power_off 
+0x4698 017075 bbit1 ui_state_bt_connected ,shutter_wait_power_off 
+0x4699 017076 fetch 1 ,mem_shutter_led_struct_app_led_type 
+0x469a 017077 beq ui_led_state_blink_start ,shutter_wait_power_off 
+0x469b 017078 beq ui_led_state_blink_lighting ,shutter_wait_power_off 
+0x469c 017079 beq ui_led_state_blink_darking ,shutter_wait_power_off 
+0x469d 017080 branch app_enter_hibernate 
+:      017084 classic_shutter_check_unplug_timer:
+0x469e 017085 arg mem_classic_shutter_cable_unplug_conut ,regc 
+0x469f 017086 arg classic_shutter_unplug_timeout ,regb 
+0x46a0 017087 branch timer_single_step 
+:      017089 classic_shutter_unplug_timeout:
+0x46a1 017090 fetch 1 ,mem_control_tasks 
+0x46a2 017091 set1 l2cap_disconnect_interrupt ,pdata 
+0x46a3 017092 set1 l2cap_disconnect_control ,pdata 
+0x46a4 017093 store 1 ,mem_control_tasks 
+0x46a5 017094 rtn 
+:      017096 classic_shutter_hid_handshake_timer:
+0x46a6 017097 arg mem_hid_handshake_timer_count ,regc 
+0x46a7 017098 arg classic_shutter_process_hid_handshake ,regb 
+0x46a8 017099 branch timer_single_step 
+:      017101 classic_shutter_hid_disconn_timer:
+0x46a9 017102 arg mem_classic_shutter_hid_disconn_count ,regc 
+0x46aa 017103 arg app_bt_disconnect ,regb 
+0x46ab 017104 branch timer_single_step 
+:      017109 ble_shutter_reconn_timer:
+0x46ac 017110 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x46ad 017111 rtnne ss_state_power_on 
+0x46ae 017112 arg mem_ble_shutter_reconn_timer ,regc 
+0x46af 017113 arg shutter_start_bluetooth_discovery ,regb 
+0x46b0 017114 branch timer_single_step_2b 
+:      017117 shutter_process_idle:
+0x46b1 017118 call shutter_send_data_to_master 
+0x46b2 017119 branch keyscan_key_process 
+:      017122 shutter_process_lpm_before:
+0x46b3 017123 branch keyscan_process_lpm_before 
+:      017125 shutter_le_before_hibernate:
+0x46b4 017126 call gpio_set_before_lpm_common 
+0x46b5 017127 branch shutter_process_lpm_before 
+:      017133 shutter_stop_bluetooth_discovery:
+0x46b6 017134 fetch 1 ,mem_shutter_bluetooth_type 
+0x46b7 017135 bbit1 classic_shutter ,classic_shutter_stop_bluetooth_discovery 
+0x46b8 017136 bbit1 ble_shutter ,ble_shutter_stop_bluetooth_discovery 
+0x46b9 017137 rtn 
+:      017139 ble_shutter_stop_bluetooth_discovery:
+0x46ba 017140 fetch 2 ,mem_ble_shutter_connect_timeout 
+0x46bb 017141 store 2 ,mem_shutter_sleep_timeout 
+0x46bc 017142 store 2 ,mem_shutter_sleep_timer 
+0x46bd 017143 branch app_ble_stop_adv 
+:      017145 classic_shutter_stop_bluetooth_discovery:
+0x46be 017146 fetch 2 ,mem_classic_shutter_connect_timeout 
+0x46bf 017147 store 2 ,mem_shutter_sleep_timeout 
+0x46c0 017148 store 2 ,mem_shutter_sleep_timer 
+0x46c1 017149 branch app_bt_stop_discovery 
+:      017151 shutter_start_bluetooth_discovery:
+0x46c2 017152 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x46c3 017153 rtnne ss_state_power_on 
+0x46c4 017154 fetch 1 ,mem_shutter_bluetooth_type 
+0x46c5 017155 bbit1 classic_shutter ,classic_shutter_start_discovery 
+0x46c6 017156 bbit1 ble_shutter ,ble_shutter_start_discovery 
+0x46c7 017157 rtn 
+:      017159 classic_shutter_start_discovery:
+0x46c8 017160 fetch 2 ,mem_classic_shutter_discovery_timeout ,
+0x46c9 017161 store 2 ,mem_shutter_sleep_timeout 
+0x46ca 017162 store 2 ,mem_shutter_sleep_timer 
+0x46cb 017163 branch app_bt_start_discovery_short 
+:      017165 ble_shutter_start_discovery:
+0x46cc 017166 fetch 2 ,mem_ui_state_map 
+0x46cd 017167 rtnbit1 ui_state_ble_connected 
+0x46ce 017168 fetch 2 ,mem_ble_shutter_discovery_timeout 
+0x46cf 017169 store 2 ,mem_shutter_sleep_timeout 
+0x46d0 017170 store 2 ,mem_shutter_sleep_timer 
+0x46d1 017171 fetch 2 ,mem_ble_shutter_discovery_adv_interval 
+0x46d2 017172 call shutter_ble_adv_interval_set 
+0x46d3 017173 call app_led_start_blink 
+0x46d4 017174 fetch 4 ,mem_ble_shutter_discovery_blink_on_time 
+0x46d5 017175 store 4 ,mem_shutter_led_struct_app_led_on_time 
+0x46d6 017176 fetch 2 ,mem_ui_state_map 
+0x46d7 017177 rtnbit1 ui_state_ble_adv 
+0x46d8 017178 branch app_ble_start_adv 
+:      017181 shutter_start_reconnect:
+0x46d9 017182 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x46da 017183 rtnne ss_state_power_on 
+0x46db 017184 fetch 1 ,mem_shutter_bluetooth_type 
+0x46dc 017185 bbit1 classic_shutter ,classic_shutter_start_reconnect 
+0x46dd 017186 bbit1 ble_shutter ,ble_shutter_start_reconnect 
+0x46de 017187 rtn 
+:      017189 classic_shutter_start_reconnect:
+0x46df 017190 call app_check_reconn_target 
+0x46e0 017191 branch shutter_start_bluetooth_discovery ,blank 
+0x46e1 017192 call app_led_on 
+0x46e2 017193 call app_bt_stop_discovery 
+0x46e3 017194 branch app_bt_start_reconnect 
+:      017196 ble_shutter_start_reconnect:
+0x46e4 017197 fetch 2 ,mem_ble_shutter_reconn_timer 
+0x46e5 017198 fetcht 2 ,mem_ble_shutter_reconn_timeout 
+0x46e6 017199 storet 2 ,mem_ble_shutter_reconn_timer 
+0x46e7 017200 nrtn blank 
+0x46e8 017201 fetch 2 ,mem_ble_shutter_reconn_dav_interval 
+0x46e9 017202 call shutter_ble_adv_interval_set 
+0x46ea 017203 call app_led_start_blink 
+0x46eb 017204 fetch 4 ,mem_ble_shutter_reconn_blink_on_time 
+0x46ec 017205 store 4 ,mem_shutter_led_struct_app_led_on_time 
+0x46ed 017206 fetch 2 ,mem_ui_state_map 
+0x46ee 017207 rtnbit1 ui_state_ble_adv 
+0x46ef 017208 branch app_ble_start_adv 
+:      017211 shutter_ble_adv_interval_set:
+0x46f0 017212 store 2 ,mem_lpm_interval 
+0x46f1 017213 increase -4 ,pdata 
+0x46f2 017214 store 2 ,mem_le_adv_interval 
+0x46f3 017215 rtn 
+:      017218 shutter_disconnect_current_connection:
+0x46f4 017219 fetch 2 ,mem_ui_state_map 
+0x46f5 017220 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x46f6 017221 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x46f7 017222 branch shutter_stop_bluetooth_discovery 
+:      017226 app_check_reconn_target:
+0x46f8 017227 fetch 1 ,mem_nv_data_number 
+0x46f9 017228 copy pdata ,loopcnt 
+0x46fa 017229 fetch 2 ,mem_nv_data_ptr 
+0x46fb 017230 copy pdata ,rega 
+:      017231 app_check_reconn_target_loop:
+0x46fc 017232 ifetch 2 ,rega 
+0x46fd 017233 beq 0 ,found_reconn_device 
+0x46fe 017234 increase nv_data_len ,rega 
+0x46ff 017235 loop app_check_reconn_target_loop 
+0x4700 017236 branch enable_blank 
+:      017238 found_reconn_device:
+0x4701 017239 ifetch 6 ,contr 
+0x4702 017240 store 6 ,mem_hci_plap 
+0x4703 017241 increase 10 ,contr 
+0x4704 017242 arg mem_link_key ,contw 
+0x4705 017243 call memcpy16 
+0x4706 017244 call check_link_key_load 
+0x4707 017245 branch disable_blank 
+:      017251 shutter_check_data_enable:
+0x4708 017252 call disable_user 
+0x4709 017253 fetch 2 ,mem_ui_state_map 
+0x470a 017254 bbit1 ui_state_bt_connected ,shutter_check_bt_data_enable 
+0x470b 017255 bbit1 ui_state_ble_connected ,shutter_check_ble_data_enable 
+0x470c 017256 rtn 
+:      017258 shutter_check_bt_data_enable:
+0x470d 017259 fetch 1 ,mem_hid_interrupt_state 
+0x470e 017260 rtnne 0x3f 
+0x470f 017261 branch enable_user 
+:      017263 shutter_check_ble_data_enable:
+0x4710 017264 fetch 1 ,mem_ble_shutter_enable_notify 
+0x4711 017265 rtn blank 
+0x4712 017266 branch enable_user 
+:      017271 shutter_check_bluetooth_conn:
+0x4713 017272 call disable_user 
+0x4714 017273 fetch 2 ,mem_ui_state_map 
+0x4715 017274 rtnbit1 ui_state_bt_connected 
+0x4716 017275 rtnbit1 ui_state_ble_connected 
+0x4717 017276 branch enable_user 
+:      017280 shutter_change_bluetooth_status_bt_disconn:
+0x4718 017281 fetch 1 ,mem_shutter_bluetooth_type 
+0x4719 017282 bbit1 classic_shutter ,classic_shutter_change_bluetooth_status_bt_disconn 
+0x471a 017283 bbit1 ble_shutter ,ble_shutter_change_bluetooth_status_bt_disconn 
+0x471b 017284 rtn 
+:      017286 classic_shutter_change_bluetooth_status_bt_disconn:
+0x471c 017287 fetch 1 ,mem_scan_mode 
+0x471d 017288 rtnne 0x03 
+0x471e 017289 branch shutter_start_reconnect 
+:      017291 ble_shutter_change_bluetooth_status_bt_disconn:
+0x471f 017292 branch shutter_start_reconnect 
+:      017295 shutter_check_send_data:
+0x4720 017296 disable user2 
+0x4721 017297 fetch 2 ,mem_shutter_sleep_timeout 
+0x4722 017298 store 2 ,mem_shutter_sleep_timer 
+0x4723 017300 call shutter_check_bluetooth_conn 
+0x4724 017301 branch shutter_change_bluetooth_status_bt_disconn ,user 
+0x4725 017303 call shutter_check_data_enable 
+0x4726 017304 nrtn user 
+0x4727 017305 enable user2 
+0x4728 017306 rtn 
+:      017310 shutter_key_change:
+0x4729 017311 call shutter_check_send_data 
+0x472a 017312 nrtn user2 
+0x472b 017313 deposit rega 
+0x472c 017314 branch shutter_key_release ,blank 
+:      017315 shutter_key_press:
+0x472d 017316 call app_led_on 
+0x472e 017317 arg mem_key0_press ,regc 
+0x472f 017318 branch push_queue_press_or_release 
+:      017320 shutter_key_release:
+0x4730 017321 call app_led_off 
+0x4731 017322 arg mem_key0_release ,regc 
+:      017324 push_queue_press_or_release:
+0x4732 017325 arg max_queue_num ,pdata 
+0x4733 017326 imul32 queue ,pdata 
+0x4734 017327 iadd regc ,regc 
+:      017330 push_buffer_in_queue:
+0x4735 017331 ifetch 1 ,regc 
+0x4736 017332 rtn blank 
+0x4737 017333 call queue_push_one_byte 
+0x4738 017334 increase 1 ,regc 
+0x4739 017335 branch push_buffer_in_queue 
+:      017338 shutter_send_data_to_master:
+0x473a 017339 fetch 2 ,mem_ui_state_map 
+0x473b 017340 bbit1 ui_state_ble_connected ,pop_queue_to_ble_data 
+0x473c 017341 bbit1 ui_state_bt_connected ,pop_queue_to_classic_data 
+0x473d 017342 rtn 
+:      017344 pop_queue_to_ble_data:
+0x473e 017345 call le_fifo_check_nearly_full 
+0x473f 017346 nrtn blank 
+0x4740 017347 call queue_pop_one_byte 
+0x4741 017348 nrtn user 
+0x4742 017349 pincrease -1 
+0x4743 017350 mul32 pdata ,shutter_ble_data_buffer ,pdata 
+0x4744 017351 arg mem_ble_data_buffer1 ,temp 
+0x4745 017352 iadd temp ,contr 
+:      017353 le_send_notify_from_list:
+0x4746 017354 ifetch 1 ,contr 
+0x4747 017355 copy pdata ,rega 
+0x4748 017356 ifetcht 2 ,contr 
+0x4749 017357 call store_contr 
+0x474a 017358 call le_att_malloc_tx_notify 
+0x474b 017359 copy rega ,loopcnt 
+0x474c 017360 call get_contr 
+0x474d 017361 branch memcpy 
+:      017364 pop_queue_to_classic_data:
+0x474e 017365 call l2cap_malloc_is_fifo_nearly_full 
+0x474f 017366 nrtn blank 
+0x4750 017367 call queue_pop_one_byte 
+0x4751 017368 nrtn user 
+0x4752 017369 pincrease -1 
+0x4753 017370 mul32 pdata ,shutter_classic_data_buffer ,pdata 
+0x4754 017371 arg mem_classic_data_buffer1 ,temp 
+0x4755 017372 iadd temp ,contr 
+0x4756 017373 ifetch 5 ,contr 
+0x4757 017374 store 5 ,mem_classic_data_buffer 
+:      017375 classic_send_hid_data:
+0x4758 017376 fetch 1 ,mem_classic_data_buffer 
+0x4759 017377 copy pdata ,rega 
+0x475a 017378 call hid_malloc_tx_buff 
+0x475b 017379 fetch 2 ,mem_hid_int_remote_cid 
+0x475c 017380 istore 2 ,contw 
+0x475d 017381 setarg 0xa1 
+0x475e 017382 istore 1 ,contw 
+0x475f 017383 fetch 4 ,mem_classic_data_buffer + 1 
+0x4760 017384 istore 9 ,contw 
+0x4761 017385 rtn 
+:      017389 queue_push_one_byte:
+0x4762 017390 store 1 ,mem_pdatatemp 
+0x4763 017391 arg mem_pdatatemp ,rega 
+0x4764 017392 branch queue_push 
+:      017394 queue_pop_one_byte:
+0x4765 017395 arg mem_pdatatemp ,rega 
+0x4766 017396 call queue_pop 
+0x4767 017397 nrtn user 
+0x4768 017398 fetch 1 ,mem_pdatatemp 
+0x4769 017399 rtn 
+:      017402 ble_shutter_receive_data:
+0x476a 017403 fetch 2 ,mem_le_att_handle 
+0x476b 017404 beq gatt_keyboard_write_handle ,ble_shutter_process_reconnect_complete 
+0x476c 017405 rtn 
+:      017407 shutter_init_param:
+0x476d 017408 setarg 0x02 
+0x476e 017409 store 1 ,mem_shutter_power_off_timeout 
+0x476f 017411 setarg 0x00200008 
+0x4770 017412 store 4 ,mem_ble_shutter_interval_min 
+0x4771 017413 setarg 0x012c0005 
+0x4772 017414 istore 4 ,contw 
+0x4773 017417 jam 0x17 ,mem_le_local_mtu 
+0x4774 017420 setarg 0x1b 
+0x4775 017421 store 2 ,mem_le_pairing_handle 
+0x4776 017422 call le_set_config_fixed_ltk 
+0x4777 017423 call le_set_fixed_ltk 
+0x4778 017424 call le_set_justwork 
+0x4779 017425 branch le_set_config_read_authentication 
+:      017428 shutter_load_buffer_config_form_datarom:
+0x477a 017430 arg ble_key_value_list_size ,loopcnt 
+0x477b 017431 arg mem_ble_data_buffer1 ,contw 
+0x477c 017432 arg ble_shutter_key_value_list ,contr 
+0x477d 017433 call memcpy_fast 
+0x477e 017434 arg bt_key_value_list_size ,loopcnt 
+0x477f 017435 arg mem_classic_data_buffer1 ,contw 
+0x4780 017436 arg classic_shutter_key_value_list ,contr 
+0x4781 017437 branch memcpy_fast 
+:      017440 shutter_load_ble_gatt_form_datarom:
+0x4782 017441 arg ble_gatt_list_size ,loopcnt 
+0x4783 017442 arg ble_shutter_gatt_list ,contr 
+0x4784 017443 branch memcpy_fast 
+:      017446 shutter_load_bt_sdp_form_datarom:
+0x4785 017447 arg bt_sdp_list_size ,loopcnt 
+0x4786 017448 arg classic_shutter_sdp_list ,contr 
+0x4787 017449 branch memcpy_fast 
+:      017453 shutter_init_bluetooth_config:
+0x4788 017454 call shutter_check_load_config_flag 
+0x4789 017455 nrtn user 
+0x478a 017456 fetch 1 ,mem_shutter_config_select_gpio1 
+0x478b 017457 call shutter_init_bluetooth_config_gpio_input 
+0x478c 017458 fetch 1 ,mem_shutter_config_select_gpio2 
+0x478d 017459 call shutter_init_bluetooth_config_gpio_input 
+0x478e 017460 fetch 1 ,mem_shutter_config_select_gpio3 
+0x478f 017461 branch shutter_init_bluetooth_config_gpio_input 
+:      017463 shutter_init_bluetooth_config_gpio_input:
+0x4790 017464 rtn blank 
+0x4791 017465 or pdata ,0x80 ,temp 
+0x4792 017466 branch gpio_config_input_nowake 
+:      017469 shutter_load_bluetooth_config:
+0x4793 017470 call shutter_check_load_config_flag 
+0x4794 017471 nrtn user 
+0x4795 017472 call shutter_load_bluetooth_config_label 
+0x4796 017473 branch shutter_load_bluetooth_config_by_otp 
+:      017475 shutter_load_bluetooth_config_label:
+0x4797 017476 arg 0 ,rega 
+0x4798 017477 fetch 1 ,mem_shutter_config_select_gpio1 
+0x4799 017478 call shutter_load_bluetooth_config_read_gpio_input 
+0x479a 017479 nsetflag blank ,0 ,rega 
+0x479b 017480 fetch 1 ,mem_shutter_config_select_gpio2 
+0x479c 017481 call shutter_load_bluetooth_config_read_gpio_input 
+0x479d 017482 nsetflag blank ,1 ,rega 
+0x479e 017483 fetch 1 ,mem_shutter_config_select_gpio3 
+0x479f 017484 call shutter_load_bluetooth_config_read_gpio_input 
+0x47a0 017485 nsetflag blank ,2 ,rega 
+0x47a1 017486 copy rega ,pdata 
+0x47a2 017487 store 1 ,mem_shutter_config_label 
+0x47a3 017488 fetch 1 ,mem_shutter_config_size 
+0x47a4 017489 imul32 rega ,pdata 
+0x47a5 017490 fetcht 2 ,mem_shutter_config_otp_base_address 
+0x47a6 017491 iadd temp ,pdata 
+0x47a7 017492 store 2 ,mem_shutter_config_otp_addr 
+0x47a8 017493 rtn 
+:      017495 shutter_load_bluetooth_config_read_gpio_input:
+0x47a9 017496 rtn blank 
+0x47aa 017497 or pdata ,0x80 ,temp 
+0x47ab 017498 call gpio_get_bit 
+0x47ac 017499 nbranch enable_blank ,true 
+0x47ad 017500 branch disable_blank 
+:      017503 shutter_check_load_config_flag:
+0x47ae 017504 call disable_user 
+0x47af 017505 fetch 1 ,mem_shutter_config_user_size 
+0x47b0 017506 nrtn blank 
+0x47b1 017507 fetch 1 ,mem_shutter_config_enable 
+0x47b2 017508 rtn blank 
+0x47b3 017509 branch enable_user 
+:      017512 shutter_load_bluetooth_config_by_otp:
+0x47b4 017513 call otp_enable_chgpump 
+0x47b5 017514 fetch 2 ,mem_shutter_config_otp_addr 
+0x47b6 017515 arg mem_shutter_config_data_temp ,rega 
+0x47b7 017516 fetcht 1 ,mem_shutter_config_size 
+0x47b8 017517 call otpd_read_data 
+0x47b9 017518 call otp_disable_chgpump 
+:      017519 shutter_load_bluetooth_config_store_name:
+0x47ba 017520 fetch 1 ,mem_shutter_config_data_temp 
+0x47bb 017521 copy pdata ,loopcnt 
+0x47bc 017522 store 1 ,mem_le_name_len 
+0x47bd 017523 call memcpy_fast 
+0x47be 017524 fetch 1 ,mem_shutter_config_data_temp 
+0x47bf 017525 copy pdata ,loopcnt 
+0x47c0 017526 store 1 ,mem_local_name_length 
+0x47c1 017527 call memcpy_fast 
+0x47c2 017528 ifetch 1 ,contr 
+0x47c3 017529 store 1 ,mem_shutter_key_num 
+0x47c4 017530 ifetch 1 ,contr 
+0x47c5 017531 store 1 ,mem_shutter_hard_soft_switch_case 
+0x47c6 017532 rtn 
+:      017535 shutter_load_bluetooth_config_by_eeprom:
+0x47c7 017536 fetch 1 ,mem_shutter_bluetooth_type 
+0x47c8 017537 rtnbit0 classic_shutter 
+0x47c9 017538 arg 3 ,temp 
+0x47ca 017539 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
+0x47cb 017540 copy pdata ,regb 
+0x47cc 017541 arg mem_shutter_config_eeprom_start_flag ,rega 
+0x47cd 017542 call iicd_read_eep_data 
+0x47ce 017543 fetcht 2 ,mem_shutter_config_eeprom_start_flag 
+0x47cf 017544 setarg shutter_eeprom_config_crc 
+0x47d0 017545 isub temp ,null 
+0x47d1 017546 nrtn zero 
+0x47d2 017547 fetch 1 ,mem_shutter_config_user_size 
+0x47d3 017548 rtn blank 
+0x47d4 017549 copy pdata ,temp 
+0x47d5 017550 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
+0x47d6 017551 add pdata ,3 ,regb 
+0x47d7 017552 arg mem_shutter_config_data_temp ,rega 
+0x47d8 017553 call iicd_read_eep_data 
+0x47d9 017554 branch shutter_store_config 
+:      017556 shutter_load_bluetooth_config_by_user_config:
+0x47da 017557 fetch 2 ,mem_shutter_config_user_otp_address 
+0x47db 017558 rtn blank 
+0x47dc 017559 call otp_enable_chgpump 
+0x47dd 017560 arg 1 ,temp 
+0x47de 017561 arg mem_shutter_config_user_size ,rega 
+0x47df 017562 call otpd_read_data 
+0x47e0 017564 fetch 1 ,mem_shutter_config_user_size 
+0x47e1 017565 rtn blank 
+0x47e2 017567 fetch 2 ,mem_shutter_config_user_otp_address 
+0x47e3 017568 pincrease 1 
+0x47e4 017569 arg mem_shutter_config_data_temp ,rega 
+0x47e5 017570 fetcht 1 ,mem_shutter_config_user_size 
+0x47e6 017571 call otpd_read_data 
+0x47e7 017572 call otp_disable_chgpump 
+:      017573 shutter_store_config:
+0x47e8 017574 call shutter_load_bluetooth_config_store_name 
+:      017575 shutter_load_bluetooth_config_custom:
+0x47e9 017576 ifetch 2 ,contr 
+0x47ea 017577 rtn blank 
+0x47eb 017578 copy pdata ,contw 
+0x47ec 017579 ifetcht 1 ,contr 
+0x47ed 017580 copy temp ,loopcnt 
+0x47ee 017581 call memcpy 
+0x47ef 017582 branch shutter_load_bluetooth_config_custom 
+:      017586 shutter_random_mac_addr:
+0x47f0 017587 fetch 1 ,mem_shutter_bluetooth_type 
+0x47f1 017588 rtnbit0 classic_shutter 
+0x47f2 017589 fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
+0x47f3 017590 copy pdata ,regb 
+0x47f4 017591 arg 4 ,temp 
+0x47f5 017592 arg mem_shutter_random_mac_data_temp ,rega 
+0x47f6 017593 call iicd_read_eep_data 
+0x47f7 017594 fetch 1 ,mem_shutter_random_mac_data_temp 
+0x47f8 017595 bne 1 ,shutter_write_random_mac_addr_to_eeprom 
+:      017596 shutter_write_random_mac_addr_to_eeprom:
+0x47f9 017597 setarg 1 
+0x47fa 017598 store 1 ,mem_shutter_random_mac_data_temp 
+0x47fb 017599 force 3 ,loopcnt 
+0x47fc 017600 call generate_random_loop 
+0x47fd 017601 fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
+0x47fe 017602 copy pdata ,regb 
+0x47ff 017603 arg 4 ,temp 
+0x4800 017604 arg mem_shutter_random_mac_data_temp ,rega 
+0x4801 017605 call iicd_write_eep_data 
+:      017606 shutter_write_random_mac_addr:
+0x4802 017607 fetch 3 ,mem_shutter_random_mac_data_temp + 1 
+0x4803 017608 store 3 ,mem_lap 
+0x4804 017609 store 3 ,mem_le_lap 
+0x4805 017610 rtn 
+:      017613 shutter_soft_swtich_power_on:
+0x4806 017614 branch shutter_start_reconnect 
+:      017617 shutter_soft_swtich_power_off:
+0x4807 017618 arg 0 ,rega 
+0x4808 017619 arg mem_shutter_power_off_led_style ,regc 
+0x4809 017620 call ui_led_set_style_global 
+0x480a 017621 call shutter_disconnect_current_connection 
+:      017622 shutter_wait_power_off:
+0x480b 017623 fetch 1 ,mem_shutter_power_off_timeout 
+0x480c 017624 store 1 ,mem_shutter_power_off_timer 
+0x480d 017625 rtn 
+:      017629 ui_soft_swtich_init:
+0x480e 017630 setarg ss_state_power_up 
+0x480f 017631 call ui_soft_swtich_init_power_on_time 
+0x4810 017632 jam ui_button_state_up ,mem_ui_button_last_state 
+0x4811 017633 call ui_button_init 
+0x4812 017634 call ui_button_polling 
+0x4813 017635 fetch 2 ,mem_ui_state_map 
+0x4814 017636 rtnbit1 ui_state_btn_down 
+0x4815 017637 branch app_enter_hibernate 
+:      017639 ui_soft_swtich_init_power_on_time:
+0x4816 017640 fetcht 2 ,mem_power_param_ptr 
+0x4817 017641 istore 1 ,temp 
+0x4818 017642 ifetch 1 ,contw 
+0x4819 017643 store 1 ,mem_ui_button_timeout 
+0x481a 017644 rtn 
+:      017647 ui_soft_switch_botton_up:
+0x481b 017648 fetch 2 ,mem_power_param_ptr 
+0x481c 017649 ifetch 1 ,pdata 
+0x481d 017650 rtnne ss_state_power_up 
+0x481e 017651 branch app_enter_hibernate 
+:      017654 ui_soft_switch_botton_long_press:
+0x481f 017655 fetcht 2 ,mem_power_param_ptr 
+0x4820 017656 ifetch 1 ,temp 
+0x4821 017657 beq ss_state_power_on ,ui_soft_switch_power_off 
+:      017658 ui_soft_switch_power_on:
+0x4822 017659 setarg ss_state_power_on 
+0x4823 017660 fetcht 2 ,mem_power_param_ptr 
+0x4824 017661 istore 1 ,temp 
+0x4825 017662 add temp ,ss_power_off_time ,contr 
+0x4826 017663 ifetch 1 ,contr 
+0x4827 017664 istore 1 ,mem_ui_button_timeout 
+0x4828 017665 ifetch 2 ,contr 
+0x4829 017666 branch callback_func 
+:      017668 ui_soft_switch_power_off:
+0x482a 017669 setarg ss_state_power_off 
+0x482b 017670 call ui_soft_swtich_init_power_on_time 
+0x482c 017671 add temp ,ss_power_off_cb ,contr 
+0x482d 017672 ifetch 2 ,contr 
+0x482e 017673 branch app_enter_hibernate ,blank 
+0x482f 017674 branch callback_func 
+:      017680 shutter_byteswap:
+0x4830 017681 store 6 ,mem_tmp_buffer 
+0x4831 017682 fetch 1 ,mem_tmp_buffer 
+0x4832 017683 store 1 ,mem_tmp_buffer + 11 
+0x4833 017684 ifetch 1 ,contr 
+0x4834 017685 store 1 ,mem_tmp_buffer + 10 
+0x4835 017686 ifetch 1 ,contr 
+0x4836 017687 store 1 ,mem_tmp_buffer + 9 
+0x4837 017688 ifetch 1 ,contr 
+0x4838 017689 store 1 ,mem_tmp_buffer + 8 
+0x4839 017690 ifetch 1 ,contr 
+0x483a 017691 store 1 ,mem_tmp_buffer + 7 
+0x483b 017692 ifetch 1 ,contr 
+0x483c 017693 store 1 ,mem_tmp_buffer + 6 
+0x483d 017694 fetch 6 ,mem_tmp_buffer + 6 
+0x483e 017695 rtn 
+:      017697 shutter_random_addr_by_otp:
+0x483f 017698 call load_adc_init 
+0x4840 017699 fetch 1 ,mem_1v_adc_io_data 
+0x4841 017700 store 1 ,mem_le_lap 
+0x4842 017701 fetch 1 ,mem_5v_adc_hvin_data 
+0x4843 017702 istore 1 ,contw 
+0x4844 017703 fetch 1 ,mem_3v_adc_vinlpm_data 
+0x4845 017704 istore 1 ,contw 
+0x4846 017705 fetch 3 ,mem_le_lap 
+0x4847 017706 store 3 ,mem_lap 
+0x4848 017707 rtn 
+:      017719 sim_iic_read_eep_data:
+0x4849 017720 fetch 2 ,mem_eeprom_base 
+0x484a 017721 iadd regb ,pdata 
+0x484b 017722 byteswap pdata ,pdata 
+0x484c 017723 store 2 ,mem_addr_mi 
+0x484d 017724 copy temp ,regb 
+0x484e 017726 call sim_iic_start 
+0x484f 017727 setarg 0xa0 
+0x4850 017728 call sim_iic_send_byte 
+0x4851 017729 fetch 1 ,mem_addr_mi 
+0x4852 017730 call sim_iic_send_byte 
+0x4853 017731 bmark1 mark_eeprom_size ,sim_iic_read_eep_data_2k 
+0x4854 017732 fetch 1 ,mem_addr_mi + 1 
+0x4855 017733 call sim_iic_send_byte 
+:      017734 sim_iic_read_eep_data_2k:
+0x4856 017735 call sim_iic_stop 
+0x4857 017737 call sim_iic_start 
+0x4858 017738 setarg 0xa1 
+0x4859 017739 call sim_iic_send_byte 
+:      017741 sim_iic_read_eep_data_loop:
+0x485a 017742 call sim_iic_read_byte 
+0x485b 017743 istore 1 ,rega 
+0x485c 017744 increase 1 ,rega 
+0x485d 017745 increase -1 ,regb 
+0x485e 017746 nbranch sim_iic_read_eep_data_loop ,zero 
+0x485f 017747 branch sim_iic_stop 
+:      017758 sim_iic_write_eep_data:
+0x4860 017759 byteswap regb ,pdata 
+0x4861 017760 store 2 ,mem_addr_mi 
+0x4862 017761 copy temp ,regb 
+0x4863 017763 call sim_iic_start 
+0x4864 017764 setarg 0xa0 
+0x4865 017765 call sim_iic_send_byte 
+0x4866 017767 fetch 1 ,mem_addr_mi 
+0x4867 017768 call sim_iic_send_byte 
+0x4868 017769 bmark1 mark_eeprom_size ,sim_iic_write_eep_data_loop 
+0x4869 017770 fetch 1 ,mem_addr_mi + 1 
+0x486a 017771 call sim_iic_send_byte 
+:      017772 sim_iic_write_eep_data_loop:
+0x486b 017773 ifetch 1 ,rega 
+0x486c 017774 call sim_iic_send_byte 
+0x486d 017775 increase 1 ,rega 
+0x486e 017776 increase -1 ,regb 
+0x486f 017777 nbranch sim_iic_write_eep_data_loop ,zero 
+0x4870 017778 branch sim_iic_stop 
+:      017782 sim_iic_wait_ack:
+0x4871 017783 arg 10 ,loopcnt 
+0x4872 017784 call sim_iic_release_sda 
+0x4873 017785 call sim_iic_scl_output_high 
+0x4874 017786 call sim_iic_delay 
+:      017787 sim_iic_wait_ack_loop:
+0x4875 017788 call sim_iic_read_sda_level 
+0x4876 017789 branch sim_iic_scl_output_low ,blank 
+0x4877 017790 loop sim_iic_wait_ack_loop 
+0x4878 017791 branch sim_iic_scl_output_low 
+:      017795 sim_iic_ack_slave:
+0x4879 017796 call sim_iic_scl_output_low 
+0x487a 017797 call sim_iic_sda_output_low 
+0x487b 017798 call sim_iic_delay 
+0x487c 017799 call sim_iic_scl_output_high 
+0x487d 017800 call sim_iic_delay 
+0x487e 017801 branch sim_iic_scl_output_low 
+:      017806 sim_iic_read_byte:
+0x487f 017807 arg 8 ,loopcnt 
+0x4880 017808 arg 0 ,regc 
+0x4881 017809 call sim_iic_release_sda 
+:      017810 sim_iic_read_byte_loop:
+0x4882 017811 call sim_iic_scl_output_high 
+0x4883 017812 call sim_iic_delay 
+0x4884 017813 lshift regc ,regc 
+0x4885 017814 call sim_iic_read_sda_level 
+0x4886 017815 iadd regc ,regc 
+0x4887 017816 call sim_iic_delay 
+0x4888 017817 call sim_iic_scl_output_low 
+0x4889 017818 loop sim_iic_read_byte_loop 
+0x488a 017819 call sim_iic_ack_slave 
+0x488b 017820 copy regc ,pdata 
+0x488c 017821 rtn 
+:      017825 sim_iic_send_byte:
+0x488d 017826 arg 8 ,loopcnt 
+0x488e 017827 copy pdata ,regc 
+0x488f 017828 call sim_iic_scl_output_low 
+:      017829 sim_iic_send_byte_loop:
+0x4890 017830 isolate1 7 ,regc 
+0x4891 017831 call sim_iic_sda_output_high ,true 
+0x4892 017832 ncall sim_iic_sda_output_low ,true 
+0x4893 017833 lshift regc ,regc 
+0x4894 017834 call sim_iic_delay 
+0x4895 017835 call sim_iic_scl_output_high 
+0x4896 017836 call sim_iic_delay 
+0x4897 017837 call sim_iic_scl_output_low 
+0x4898 017838 call sim_iic_delay 
+0x4899 017839 loop sim_iic_send_byte_loop 
+0x489a 017840 branch sim_iic_wait_ack 
+:      017844 sim_iic_start:
+0x489b 017845 call sim_iic_sda_output_high 
+0x489c 017846 call sim_iic_scl_output_high 
+0x489d 017847 call sim_iic_delay 
+0x489e 017848 call sim_iic_sda_output_low 
+0x489f 017849 call sim_iic_delay 
+0x48a0 017850 branch sim_iic_scl_output_low 
+:      017854 sim_iic_stop:
+0x48a1 017855 call sim_iic_sda_output_low 
+0x48a2 017856 call sim_iic_scl_output_high 
+0x48a3 017857 call sim_iic_delay 
+0x48a4 017858 call sim_iic_sda_output_high 
+0x48a5 017859 branch sim_iic_delay 
+:      017863 sim_iic_scl_output_high:
+0x48a6 017864 enable user 
+0x48a7 017865 fetch 1 ,sim_iic_scl_gpio_num 
+0x48a8 017866 branch sim_iic_config_gpio 
+:      017869 sim_iic_scl_output_low:
+0x48a9 017870 disable user 
+0x48aa 017871 fetch 1 ,sim_iic_scl_gpio_num 
+0x48ab 017872 branch sim_iic_config_gpio 
+:      017875 sim_iic_sda_output_high:
+0x48ac 017876 enable user 
+0x48ad 017877 fetch 1 ,sim_iic_sda_gpio_num 
+0x48ae 017878 branch sim_iic_config_gpio 
+:      017881 sim_iic_sda_output_low:
+0x48af 017882 disable user 
+0x48b0 017883 fetch 1 ,sim_iic_sda_gpio_num 
+0x48b1 017884 branch sim_iic_config_gpio 
+:      017889 sim_iic_config_gpio:
+0x48b2 017890 and pdata ,0x07 ,queue 
+0x48b3 017891 rshift3 pdata ,pdata 
+0x48b4 017892 arg core_gpio_oe0 ,temp 
+0x48b5 017893 iadd temp ,temp 
+0x48b6 017894 ifetch 1 ,temp 
+0x48b7 017895 qset1 pdata 
+0x48b8 017896 istore 1 ,temp 
+0x48b9 017897 increase 4 ,temp 
+0x48ba 017898 ifetch 1 ,temp 
+0x48bb 017899 qsetflag user ,pdata 
+0x48bc 017900 istore 1 ,temp 
+0x48bd 017901 rtn 
+:      017904 sim_iic_release_sda:
+0x48be 017905 fetch 1 ,sim_iic_sda_gpio_num 
+0x48bf 017906 and pdata ,0x07 ,queue 
+0x48c0 017907 rshift3 pdata ,pdata 
+0x48c1 017908 arg core_gpio_oe0 ,temp 
+0x48c2 017909 iadd temp ,temp 
+0x48c3 017910 ifetch 1 ,temp 
+0x48c4 017911 qset0 pdata 
+0x48c5 017912 istore 1 ,temp 
+0x48c6 017913 rtn 
+:      017918 sim_iic_read_sda_level:
+0x48c7 017919 nop 4 
+0x48c8 017920 fetch 1 ,sim_iic_sda_gpio_num 
+0x48c9 017921 and pdata ,0x07 ,queue 
+0x48ca 017922 rshift3 pdata ,pdata 
+0x48cb 017923 arg core_gpio_in ,temp 
+0x48cc 017924 iadd temp ,temp 
+0x48cd 017925 setarg 0 
+0x48ce 017926 ifetcht 1 ,temp 
+0x48cf 017927 qisolate1 temp 
+0x48d0 017928 setflag true ,0 ,pdata 
+0x48d1 017929 rtn 
+:      017932 sim_iic_delay:
+0x48d2 017934 rtn 
+:      017940 usb_isr:
+0x48d3 017941 bpatch patch1e_6 ,mem_patch1e 
+0x48d4 017942 hfetch 1 ,core_usb_status 
+0x48d5 017943 isolate1 7 ,pdata 
+0x48d6 017944 call usb_init ,true 
+0x48d7 017945 call usb_nak_state_judge 
+0x48d8 017946 hfetch 1 ,core_usb_status 
+0x48d9 017947 store 1 ,mem_usb_status 
+0x48da 017948 hfetch 1 ,core_usb_fifo_empty 
+0x48db 017949 store 1 ,mem_usb_fifo_empty 
+0x48dc 017950 hstore 1 ,core_usb_fifo_empty 
+0x48dd 017951 pinvert 
+0x48de 017952 fetcht 1 ,mem_usb_tx_wait 
+0x48df 017953 iand temp ,pdata 
+0x48e0 017954 store 1 ,mem_usb_tx_wait 
+0x48e1 017955 jam 0xe0 ,core_usb_status 
+0x48e2 017956 fetch 1 ,mem_usb_fifo_empty 
+0x48e3 017957 compare 0x1 ,pdata ,0x1 
+0x48e4 017958 call usb0_fifo_empty ,true 
+0x48e5 017959 fetch 1 ,mem_usb_status 
+0x48e6 017960 compare 0x1 ,pdata ,0x1 
+0x48e7 017961 call usb_status1 ,true 
+0x48e8 017962 call usb_tx 
+0x48e9 017963 branch usb_nak_state 
+:      017965 usb_init:
+0x48ea 017966 bpatch patch1e_7 ,mem_patch1e 
+0x48eb 017967 call usb_init_param 
+0x48ec 017968 jam 0x00 ,core_usb_config 
+0x48ed 017969 nop 10000 
+0x48ee 017970 jam 0xc0 ,core_usb_trig 
+0x48ef 017971 hfetch 2 ,core_clkoff 
+0x48f0 017972 set0 clock_off_usb ,pdata 
+0x48f1 017973 hstore 2 ,core_clkoff 
+0x48f2 017974 jam 0x3c ,core_usb_config 
+0x48f3 017975 jam 0xff ,core_usb_status 
+0x48f4 017976 jam 0xff ,core_usb_fifo_empty 
+0x48f5 017977 jam 0 ,core_usb_addr 
+0x48f6 017978 jam dev_default ,mem_usb0_state 
+0x48f7 017979 setarg mem_usb_clear_mem_end 
+0x48f8 017980 arg mem_usb_clear_mem_start ,contw 
+0x48f9 017981 isub contw ,loopcnt 
+0x48fa 017982 branch clear_mem 
+:      017984 usb_offline_check_init:
+0x48fb 017985 fetcht 1 ,mem_usb_offline_check_gpio 
+0x48fc 017986 branch gpio_config_input 
+:      017987 usb_offline_state:
+0x48fd 017988 fetch 1 ,mem_usb_device_enumeration_endflag 
+0x48fe 017989 rtn blank 
+0x48ff 017990 fetcht 1 ,mem_usb_offline_check_gpio 
+0x4900 017991 call gpio_get_bit 
+0x4901 017992 branch usb_init ,true 
+0x4902 017993 rtn 
+:      017996 usb_nak_state:
+0x4903 017997 arg timer_nak ,queue 
+0x4904 017998 call timer_check 
+0x4905 017999 nrtn blank 
+0x4906 018000 fetch 1 ,mem_usb_wakestate_onetime_flag 
+0x4907 018001 nrtn blank 
+0x4908 018002 fetch 1 ,mem_usb_device_enumeration_endflag 
+0x4909 018003 ncall usb_mac_wakeup_judge ,blank 
+0x490a 018004 rtn 
+:      018006 usb_mem_devicedesc_init:
+0x490b 018007 arg mem_devicedesc ,contw 
+0x490c 018008 setsect 0 ,0x11212 
+0x490d 018009 setsect 1 ,0x8000 
+0x490e 018010 setsect 2 ,0x0 
+0x490f 018011 setsect 3 ,0x10000 
+0x4910 018012 istore 9 ,contw 
+0x4911 018013 setsect 0 ,0x22412 
+0x4912 018014 setsect 1 ,0x8604 
+0x4913 018015 setsect 2 ,0x1000 
+0x4914 018016 setsect 3 ,0x8 
+0x4915 018017 istore 9 ,contw 
+0x4916 018018 setsect 0 ,0x1 
+0x4917 018019 istore 1 ,contw 
+0x4918 018020 rtn 
+:      018022 usb_init_param:
+0x4919 018023 jam 2 ,mem_usb0_state 
+0x491a 018024 setarg 0x0 
+0x491b 018025 store 1 ,mem_remain 
+0x491c 018026 store 2 ,mem_usb_zero_packet 
+0x491d 018027 pincrease 1 
+0x491e 018028 store 2 ,mem_usb_ones_packet 
+0x491f 018029 pincrease 1 
+0x4920 018030 store 2 ,mem_usb_two_packet 
+0x4921 018031 setarg hid_kbdata_addr 
+0x4922 018032 store 2 ,mem_hidreportdesc_kb 
+0x4923 018033 setarg hid_msdata_addr 
+0x4924 018034 store 2 ,mem_hidreportdesc_m 
+0x4925 018035 arg mem_confdesc ,contw 
+0x4926 018036 arg hid_confdata_addr ,contr 
+0x4927 018037 call memcpy64 
+0x4928 018038 fetch 1 ,mem_usb_tx_interval 
+0x4929 018039 ncall usb_tx_interval_config ,blank 
+0x492a 018040 branch usb_mem_devicedesc_init 
+:      018042 usb_tx_interval_config:
+0x492b 018043 store 1 ,mem_confdesc + 34 
+0x492c 018044 store 1 ,mem_confdesc + 59 
+0x492d 018045 rtn 
+:      018046 usb_nak_state_judge:
+0x492e 018047 hfetch 1 ,core_usb_status 
+0x492f 018048 bbit1 usb_status_nak ,usb_nak_state_timer_init 
+0x4930 018049 rtn 
+:      018051 usb_nak_state_timer_init:
+0x4931 018052 call usb0_attached_state_judge 
+0x4932 018053 call timer_reinit 
+0x4933 018054 setarg timer_nak_delay 
+0x4934 018055 arg timer_nak ,queue 
+0x4935 018056 branch timer_init 
+:      018058 usb0_attached_state_judge:
+0x4936 018059 fetch 1 ,mem_usb_state 
+0x4937 018060 bne usb_connected ,usb_clear_halt_dispose 
+0x4938 018061 jam 0 ,mem_usb_wakestate_onetime_flag 
+0x4939 018062 jam 0 ,mem_usb_mac_wakeup_trig 
+0x493a 018063 rtn 
+:      018064 usb_clear_halt_dispose:
+0x493b 018065 fetch 1 ,mem_usb_clear_halt 
+0x493c 018066 rtn blank 
+0x493d 018067 jam 0 ,mem_usb_clear_halt 
+0x493e 018068 jam usb_connected ,mem_usb_state 
+0x493f 018069 jam 1 ,mem_usb_device_enumeration_endflag 
+0x4940 018070 rtn 
+:      018072 usb0_fifo_empty:
+0x4941 018073 jam 0x1 ,core_usb_fifo_empty 
+0x4942 018074 branch usb0_tx 
+:      018076 usb_rx_no_data:
+0x4943 018077 fetch 1 ,mem_usb_status 
+0x4944 018078 bbit1 usb_status_setup ,usb_class_type 
+0x4945 018079 rtn 
+:      018081 usb_rx_read:
+0x4946 018082 hfetch 1 ,core_usb_ep 
+0x4947 018083 istore 1 ,contw 
+0x4948 018084 loop usb_rx_read 
+0x4949 018085 rtn 
+:      018087 usb_status1:
+0x494a 018088 bpatch patch1f_0 ,mem_patch1f 
+0x494b 018089 jam 0x11 ,core_usb_status 
+0x494c 018090 hfetch 1 ,core_usb_ep_len 
+0x494d 018091 store 1 ,mem_usb_read_len 
+0x494e 018092 copy pdata ,loopcnt 
+0x494f 018093 branch usb_rx_no_data ,blank 
+0x4950 018094 arg mem_usb_setup ,contw 
+0x4951 018095 call usb_rx_read 
+0x4952 018096 fetch 1 ,mem_usb_read_len 
+0x4953 018097 sub pdata ,7 ,null 
+0x4954 018098 rtn positive 
+:      018099 usb_class_type:
+0x4955 018100 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4956 018101 and_into 0x80 ,pdata 
+0x4957 018102 beq in_device ,usb_in_device 
+0x4958 018103 beq out_device ,usb_out_device 
+0x4959 018104 branch assert 
+:      018106 usb_in_device:
+0x495a 018107 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x495b 018108 rshift4 pdata ,pdata 
+0x495c 018109 rshift pdata ,pdata 
+0x495d 018110 and_into 0x03 ,pdata 
+0x495e 018111 beq standard_req ,usb_in_standard_req 
+0x495f 018112 beq class_req ,usb_in_class_req 
+0x4960 018113 beq manufacturer_req ,usb_in_manufacturer_req 
+0x4961 018114 branch assert 
+:      018116 usb_out_device:
+0x4962 018117 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4963 018118 rshift4 pdata ,pdata 
+0x4964 018119 rshift pdata ,pdata 
+0x4965 018120 and_into 0x03 ,pdata 
+0x4966 018121 beq standard_req ,usb_out_standard_req 
+0x4967 018122 beq class_req ,usb_out_class_req 
+0x4968 018123 beq manufacturer_req ,usb_out_manufacturer_req 
+0x4969 018124 branch assert 
+:      018126 usb_in_standard_req:
+0x496a 018127 fetch 1 ,mem_usb_setup_brequest 
+0x496b 018128 beq get_configuration ,usb0_request_get_configuration 
+0x496c 018129 beq get_descriptor ,usb0_request_get_descriptor 
+0x496d 018130 beq get_interface ,usb0_request_get_interface 
+0x496e 018131 beq get_status ,usb0_request_get_status 
+0x496f 018132 branch usb0_force_stall 
+:      018134 usb_in_class_req:
+0x4970 018135 fetch 1 ,mem_usb_setup_brequest 
+0x4971 018136 beq get_idle ,usb_get_idle 
+0x4972 018137 beq get_report ,usb_get_report 
+0x4973 018138 beq get_protocol ,usb_get_protocol_req 
+0x4974 018139 branch usb0_force_stall 
+:      018141 usb_in_manufacturer_req:
+0x4975 018142 branch usb0_force_stall 
+:      018144 usb_out_standard_req:
+0x4976 018145 fetch 1 ,mem_usb_setup_brequest 
+0x4977 018146 beq clear_feature ,usb0_request_clear_feature 
+0x4978 018147 beq set_feature ,usb0_request_set_feature 
+0x4979 018148 beq set_address ,usb0_request_set_address 
+0x497a 018149 beq set_configuration ,usb0_request_set_configuration 
+0x497b 018150 beq set_interface ,usb0_request_set_interface 
+0x497c 018151 beq set_descriptor ,usb0_force_stall 
+0x497d 018152 branch usb0_force_stall 
+:      018154 usb_out_class_req:
+0x497e 018155 fetch 1 ,mem_usb_setup_brequest 
+0x497f 018156 beq set_idle ,usb_set_idle 
+0x4980 018157 beq set_report ,usb_set_report 
+0x4981 018158 beq set_protocol ,usb_set_protocol_req 
+0x4982 018159 branch usb0_force_stall 
+:      018161 usb_out_manufacturer_req:
+0x4983 018162 branch usb0_force_stall 
+:      018164 usb0_force_stall:
+0x4984 018165 hfetch 1 ,core_usb_stall 
+0x4985 018166 set1 0 ,pdata 
+0x4986 018167 hstore 1 ,core_usb_stall 
+0x4987 018168 branch usb0_reply_zerolen 
+:      018170 usb0_reply_zerolen:
+0x4988 018171 jam 0x40 ,core_usb_clear 
+0x4989 018172 rtn 
+:      018174 usb0_request_get_configuration:
+0x498a 018175 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x498b 018176 bne in_device ,usb0_force_stall 
+0x498c 018177 fetch 1 ,mem_usb_setup_windex 
+0x498d 018178 bne 0 ,usb0_force_stall 
+0x498e 018179 fetch 1 ,mem_usb_setup_windex + 1 
+0x498f 018180 bne 0 ,usb0_force_stall 
+0x4990 018181 fetch 1 ,mem_usb_setup_blength 
+0x4991 018182 bne 1 ,usb0_force_stall 
+0x4992 018183 fetch 1 ,mem_usb_setup_blengthh 
+0x4993 018184 bne 0 ,usb0_force_stall 
+0x4994 018185 fetch 1 ,mem_usb_setup_bvalue 
+0x4995 018186 bne 0 ,usb0_force_stall 
+0x4996 018187 fetch 1 ,mem_usb_setup_bvalue + 1 
+0x4997 018188 bne 0 ,usb0_force_stall 
+0x4998 018189 fetch 1 ,mem_usb0_state 
+0x4999 018190 beq dev_configured ,usb0_request_get_cfg_dev_cfg 
+0x499a 018191 beq dev_address ,usb0_request_get_cfg_dev_addr 
+0x499b 018192 branch usb0_force_stall 
+:      018194 usb0_request_get_cfg_dev_cfg:
+0x499c 018195 arg 1 ,regb 
+0x499d 018196 branch usb_send_ones_packet 
+:      018198 usb0_request_get_cfg_dev_addr:
+0x499e 018199 arg 1 ,regb 
+0x499f 018200 branch usb_send_zero_packet 
+:      018202 usb0_request_get_descriptor:
+0x49a0 018203 bpatch patch1f_1 ,mem_patch1f 
+0x49a1 018204 set0 mark_isstr ,mark 
+0x49a2 018205 fetch 1 ,mem_usb_setup_bvalueh 
+0x49a3 018206 beq dsc_device ,dsc_device_info 
+0x49a4 018207 beq dsc_config ,dsc_config_info 
+0x49a5 018208 beq dsc_string ,dsc_string_info 
+0x49a6 018209 beq dsc_hid ,dsc_hid_info 
+0x49a7 018210 beq dsc_hid_report ,dsc_hid_report_info 
+0x49a8 018211 branch usb0_force_stall 
+:      018213 dsc_hid_info:
+0x49a9 018214 jam 0 ,mem_usb_get_protocol_flag 
+0x49aa 018215 fetch 1 ,mem_usb_setup_windex 
+0x49ab 018216 beq 0 ,dsc_hid_info_interface0 
+0x49ac 018217 beq 1 ,dsc_hid_info_interface1 
+0x49ad 018218 branch usb0_force_stall 
+:      018220 dsc_hid_info_interface0:
+0x49ae 018221 arg mem_confdesc + 19 ,rega 
+0x49af 018222 ifetch 1 ,rega 
+0x49b0 018223 iforce regb 
+0x49b1 018224 branch usb0_respond 
+:      018226 dsc_hid_info_interface1:
+0x49b2 018227 arg mem_confdesc + 44 ,rega 
+0x49b3 018228 ifetch 1 ,rega 
+0x49b4 018229 iforce regb 
+0x49b5 018230 branch usb0_respond 
+:      018232 dsc_device_info:
+0x49b6 018236 fetch 1 ,mem_usb_set_high_addr_flag 
+0x49b7 018237 ncall usb_set_high_addr ,blank 
+0x49b8 018238 setarg mem_devicedesc 
+0x49b9 018239 fetcht 1 ,mem_devicedesc 
+:      018240 dsc_info_set_data_len:
+0x49ba 018241 store 2 ,mem_dsc_info_data_pointer 
+0x49bb 018242 storet 1 ,mem_dsc_info_len 
+0x49bc 018243 fetch 1 ,mem_usb_setup_blength 
+0x49bd 018244 isub temp ,null 
+0x49be 018245 nbranch dsc_info_set_current_data_len ,positive 
+:      018246 dsc_info_set_initial_data_len:
+0x49bf 018247 fetch 1 ,mem_dsc_info_len 
+:      018248 dsc_info_set_data_size_completed:
+0x49c0 018249 iforce regb 
+0x49c1 018250 fetch 2 ,mem_dsc_info_data_pointer 
+0x49c2 018251 add pdata ,1 ,pdata 
+0x49c3 018252 iforce rega 
+0x49c4 018253 branch usb0_respond 
+:      018254 dsc_info_set_current_data_len:
+0x49c5 018255 fetch 1 ,mem_usb_setup_blength 
+0x49c6 018256 branch dsc_info_set_data_size_completed 
+:      018258 usb_set_high_addr:
+0x49c7 018259 hfetch 1 ,core_usb_addr 
+0x49c8 018260 ncall usb0_set_addr ,blank 
+0x49c9 018261 jam 0 ,mem_usb_set_high_addr_flag 
+0x49ca 018262 rtn 
+:      018263 usb0_set_addr:
+0x49cb 018264 hfetch 1 ,core_usb_addr 
+0x49cc 018265 set1 7 ,pdata 
+0x49cd 018266 hstore 1 ,core_usb_addr 
+0x49ce 018267 rtn 
+:      018269 dsc_config_info:
+0x49cf 018270 setarg mem_confdesc 
+0x49d0 018271 fetcht 1 ,mem_confdesc 
+0x49d1 018272 branch dsc_info_set_data_len 
+:      018274 dsc_string_info:
+0x49d2 018275 fetch 1 ,mem_usb_setup_bvalue 
+0x49d3 018276 sub pdata ,3 ,null 
+0x49d4 018277 nbranch usb0_force_stall ,positive 
+0x49d5 018278 fetch 1 ,mem_usb_setup_bvalue 
+0x49d6 018279 arg mem_string0 ,rega 
+0x49d7 018280 beq 0 ,usb0_respond_length 
+0x49d8 018281 set1 mark_isstr ,mark 
+0x49d9 018282 arg mem_string1 ,rega 
+0x49da 018283 beq 1 ,usb0_respond_length 
+0x49db 018284 arg mem_string2 ,rega 
+0x49dc 018285 beq 2 ,usb0_respond_length 
+0x49dd 018286 arg mem_string3 ,rega 
+0x49de 018287 beq 3 ,usb0_respond_length 
+0x49df 018288 rtn 
+:      018290 dsc_hid_report_info:
+0x49e0 018291 fetch 2 ,mem_usb_setup_windex 
+0x49e1 018292 beq 1 ,dsc_hid_report_info0 
+0x49e2 018293 fetch 2 ,mem_hidreportdesc_kb 
+0x49e3 018294 copy pdata ,rega 
+0x49e4 018296 branch usb0_respond_length 
+:      018297 dsc_hid_report_info0:
+0x49e5 018298 jam 1 ,mem_usb_device_enumeration_endflag 
+0x49e6 018299 jam usb_got_report_req ,mem_usb_state 
+0x49e7 018300 fetch 2 ,mem_hidreportdesc_m 
+0x49e8 018301 copy pdata ,rega 
+0x49e9 018303 branch usb0_respond_length 
+:      018306 usb0_request_get_interface:
+0x49ea 018307 fetch 1 ,mem_usb0_state 
+0x49eb 018308 bne dev_configured ,usb0_force_stall 
+0x49ec 018309 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x49ed 018310 bne in_interface ,usb0_force_stall 
+0x49ee 018311 fetch 1 ,mem_usb_setup_bvalue 
+0x49ef 018312 bne 0 ,usb0_force_stall 
+0x49f0 018313 fetch 1 ,mem_usb_setup_bvalueh 
+0x49f1 018314 bne 0 ,usb0_force_stall 
+0x49f2 018315 fetch 1 ,mem_usb_setup_blength 
+0x49f3 018316 bne 1 ,usb0_force_stall 
+0x49f4 018317 fetch 1 ,mem_usb_setup_blengthh 
+0x49f5 018318 bne 0 ,usb0_force_stall 
+0x49f6 018319 fetch 1 ,mem_usb_setup_windex 
+0x49f7 018320 bne 0 ,usb0_force_stall 
+0x49f8 018321 fetch 1 ,mem_usb_setup_windex + 1 
+0x49f9 018322 bne 0 ,usb0_force_stall 
+0x49fa 018323 arg 1 ,regb 
+0x49fb 018324 branch usb_send_zero_packet 
+:      018327 usb0_request_get_status:
+0x49fc 018328 fetch 1 ,mem_usb0_state 
+0x49fd 018329 beq dev_default ,usb0_force_stall 
+0x49fe 018330 fetch 1 ,mem_usb_setup_bvalue 
+0x49ff 018331 bne 0 ,usb0_force_stall 
+0x4a00 018332 fetch 1 ,mem_usb_setup_bvalueh 
+0x4a01 018333 bne 0 ,usb0_force_stall 
+0x4a02 018334 fetch 1 ,mem_usb_setup_blength 
+0x4a03 018335 bne 2 ,usb0_force_stall 
+0x4a04 018336 fetch 1 ,mem_usb_setup_blengthh 
+0x4a05 018337 bne 0 ,usb0_force_stall 
+0x4a06 018338 fetch 1 ,mem_usb_setup_windex + 1 
+0x4a07 018339 bne 0 ,usb0_force_stall 
+0x4a08 018340 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4a09 018341 beq in_device ,usb0_get_status_in_device 
+0x4a0a 018342 beq in_interface ,usb0_get_status_in_interface 
+0x4a0b 018343 beq in_endpoint ,usb0_get_status_in_endpoint 
+0x4a0c 018344 branch usb0_force_stall 
+:      018346 usb0_get_status_in_device:
+0x4a0d 018347 fetch 1 ,mem_usb_setup_windex 
+0x4a0e 018348 bne 0 ,usb0_force_stall 
+0x4a0f 018349 arg 2 ,regb 
+0x4a10 018350 fetch 1 ,mem_usb_remote_wakeup 
+0x4a11 018351 beq 0x01 ,usb_send_two_packet 
+:      018353 usb_send_zero_packet:
+0x4a12 018354 arg mem_usb_zero_packet ,rega 
+0x4a13 018355 branch usb0_respond 
+:      018356 usb_send_ones_packet:
+0x4a14 018357 arg mem_usb_ones_packet ,rega 
+0x4a15 018358 branch usb0_respond 
+:      018359 usb_send_two_packet:
+0x4a16 018360 arg mem_usb_two_packet ,rega 
+0x4a17 018361 branch usb0_respond 
+:      018363 usb0_get_status_in_interface:
+0x4a18 018364 fetch 1 ,mem_usb0_state 
+0x4a19 018365 bne dev_configured ,usb0_force_stall 
+0x4a1a 018366 arg 2 ,regb 
+0x4a1b 018367 branch usb_send_zero_packet 
+:      018369 usb0_get_status_in_endpoint:
+0x4a1c 018370 fetch 1 ,mem_usb0_state 
+0x4a1d 018371 bne dev_configured ,usb0_force_stall 
+0x4a1e 018372 fetch 1 ,mem_usb_setup_windex 
+0x4a1f 018373 beq in_ep1 ,usb0_get_status_in_ep_in_ep1 
+0x4a20 018374 beq in_ep2 ,usb0_get_status_in_ep_in_ep2 
+0x4a21 018375 beq in_ep3 ,usb0_get_status_in_ep_in_ep3 
+0x4a22 018376 and_into 0x7f ,pdata 
+0x4a23 018377 beq 0x00 ,usb0_get_status_in_ep_in_ep0 
+0x4a24 018378 branch usb0_force_stall 
+:      018380 usb0_get_status_in_ep_in_ep0:
+0x4a25 018381 fetch 1 ,mem_usb_ep0_stall_status 
+:      018382 usb0_get_status_in_ep_in_ack:
+0x4a26 018383 arg 2 ,regb 
+0x4a27 018384 beq 1 ,usb_send_ones_packet 
+0x4a28 018385 branch usb_send_zero_packet 
+:      018386 usb0_get_status_in_ep_in_ep1:
+0x4a29 018387 fetch 1 ,mem_usb_ep1_stall_status 
+0x4a2a 018388 branch usb0_get_status_in_ep_in_ack 
+:      018389 usb0_get_status_in_ep_in_ep2:
+0x4a2b 018390 fetch 1 ,mem_usb_ep2_stall_status 
+0x4a2c 018391 branch usb0_get_status_in_ep_in_ack 
+:      018392 usb0_get_status_in_ep_in_ep3:
+0x4a2d 018393 fetch 1 ,mem_usb_ep3_stall_status 
+0x4a2e 018394 branch usb0_get_status_in_ep_in_ack 
+:      018396 usb_get_idle:
+0x4a2f 018397 jam 1 ,mem_usb_idle_flag 
+0x4a30 018398 arg mem_usb_idle_rate ,rega 
+0x4a31 018399 arg 1 ,regb 
+0x4a32 018400 branch usb0_respond 
+:      018402 usb_get_report:
+0x4a33 018403 fetch 2 ,mem_usb_setup_bvalue 
+0x4a34 018404 arg pc_get_report ,temp 
+0x4a35 018405 isub temp ,null 
+0x4a36 018406 nbranch usb0_force_stall ,zero 
+0x4a37 018407 set0 mark_isstr ,mark 
+:      018408 usb_get_report_dispose:
+0x4a38 018409 fetch 1 ,mem_usb0_data_ready_report 
+0x4a39 018410 nbranch usb_get_report_data_success ,blank 
+0x4a3a 018411 jam pc_get_nondata ,mem_usb0_get_report_data 
+:      018412 usb_get_report_send_data:
+0x4a3b 018413 fetch 1 ,mem_usb_setup_blength 
+0x4a3c 018414 iforce regb 
+0x4a3d 018415 arg mem_usb0_get_report_data ,rega 
+0x4a3e 018416 call usb0_respond 
+:      018417 usb_get_report_data_release:
+0x4a3f 018418 arg mem_usb0_get_report_data ,contw 
+0x4a40 018419 arg 8 ,loopcnt 
+0x4a41 018420 branch memset0 
+:      018421 usb_get_report_data_success:
+0x4a42 018422 jam 0 ,mem_usb0_data_ready_report 
+0x4a43 018423 jam pc_get_data ,mem_usb0_get_report_data 
+0x4a44 018424 branch usb_get_report_send_data 
+:      018426 usb_get_protocol_req:
+0x4a45 018427 fetch 1 ,mem_usb_setup_blength 
+0x4a46 018428 bne 1 ,usb0_force_stall 
+0x4a47 018429 jam 1 ,mem_usb_get_protocol_flag 
+0x4a48 018430 arg 1 ,regb 
+0x4a49 018431 fetch 1 ,mem_usb_set_protocol_value 
+0x4a4a 018432 beq 0 ,usb_get_report_protocol 
+0x4a4b 018433 beq 1 ,usb_get_boot_protocol 
+0x4a4c 018434 branch usb_send_zero_packet 
+:      018435 usb_get_report_protocol:
+0x4a4d 018436 branch usb_send_ones_packet 
+:      018437 usb_get_boot_protocol:
+0x4a4e 018438 branch usb_send_zero_packet 
+:      018443 usb0_request_clear_feature:
+0x4a4f 018444 fetch 1 ,mem_usb0_state 
+0x4a50 018445 bne dev_configured ,usb0_force_stall 
+0x4a51 018446 fetch 1 ,mem_usb_setup_blength 
+0x4a52 018447 bne 0 ,usb0_force_stall 
+0x4a53 018448 fetch 1 ,mem_usb_setup_blengthh 
+0x4a54 018449 bne 0 ,usb0_force_stall 
+0x4a55 018450 fetch 1 ,mem_usb_setup_bvalueh 
+0x4a56 018451 bne 0 ,usb0_force_stall 
+0x4a57 018452 fetch 1 ,mem_usb_setup_windex + 1 
+0x4a58 018453 bne 0 ,usb0_force_stall 
+0x4a59 018454 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4a5a 018455 beq out_device ,usb0_request_clear_feature_out_device 
+0x4a5b 018456 beq out_interface ,usb0_request_clear_feature_out_interface 
+0x4a5c 018457 beq out_endpoint ,usb0_request_clear_feature_out_endpoint 
+0x4a5d 018458 branch usb0_force_stall 
+:      018460 usb0_request_clear_feature_out_device:
+0x4a5e 018461 fetch 1 ,mem_usb_setup_bvalue 
+0x4a5f 018462 bne device_remote_wakeup ,usb0_force_stall 
+0x4a60 018463 hfetch 1 ,core_usb_config 
+0x4a61 018464 set0 7 ,pdata 
+0x4a62 018465 hstore 1 ,core_usb_config 
+0x4a63 018466 jam 0 ,mem_usb_remote_wakeup 
+0x4a64 018467 jam 1 ,mem_usb_clear_remote_wakeup 
+0x4a65 018468 branch usb0_reply_zerolen 
+:      018470 usb0_request_clear_feature_out_interface:
+0x4a66 018471 branch usb0_force_stall 
+:      018473 usb0_request_clear_feature_out_endpoint:
+0x4a67 018474 fetch 1 ,mem_usb_setup_bvalue 
+0x4a68 018475 bne endpoint_halt ,usb0_force_stall 
+0x4a69 018476 fetch 1 ,mem_usb_setup_windex 
+0x4a6a 018477 beq in_ep1 ,usb0_force_stall_ep1_in_off 
+0x4a6b 018478 beq in_ep2 ,usb0_force_stall_ep2_in_off 
+0x4a6c 018479 beq in_ep3 ,usb0_force_stall_ep3_in_off 
+0x4a6d 018480 and_into 0x7f ,pdata 
+0x4a6e 018481 beq 0x00 ,usb0_force_stall_ep0_in_off 
+0x4a6f 018482 branch usb0_force_stall 
+:      018484 usb0_force_stall_ep0_in_off:
+0x4a70 018485 jam 0 ,mem_usb_ep0_stall_status 
+0x4a71 018486 branch usb0_reply_zerolen 
+:      018487 usb0_force_stall_ep1_in_off:
+0x4a72 018488 jam 0 ,mem_usb_ep1_stall_status 
+:      018489 usb0_force_stall_ep1_in_off_reply:
+0x4a73 018490 jam 1 ,mem_usb_clear_halt 
+0x4a74 018491 branch usb0_reply_zerolen 
+:      018492 usb0_force_stall_ep2_in_off:
+0x4a75 018493 jam 0 ,mem_usb_ep2_stall_status 
+0x4a76 018494 branch usb0_force_stall_ep1_in_off_reply 
+:      018495 usb0_force_stall_ep3_in_off:
+0x4a77 018496 jam 0 ,mem_usb_ep3_stall_status 
+0x4a78 018497 branch usb0_force_stall_ep1_in_off_reply 
+:      018500 usb0_request_set_feature:
+0x4a79 018501 fetch 1 ,mem_usb_setup_blength 
+0x4a7a 018502 bne 0 ,usb0_force_stall 
+0x4a7b 018503 fetch 1 ,mem_usb_setup_blengthh 
+0x4a7c 018504 bne 0 ,usb0_force_stall 
+0x4a7d 018505 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4a7e 018506 beq out_device ,usb0_request_set_feature_out_device 
+0x4a7f 018507 beq out_interface ,usb0_request_set_feature_out_interface 
+0x4a80 018508 beq out_endpoint ,usb0_request_set_feature_out_endpoint 
+0x4a81 018509 branch usb0_force_stall 
+:      018511 usb0_request_set_feature_out_device:
+0x4a82 018512 fetch 1 ,mem_usb_setup_bvalue 
+0x4a83 018513 bne device_remote_wakeup ,usb0_force_stall 
+0x4a84 018514 hfetch 1 ,core_usb_config 
+0x4a85 018515 set1 7 ,pdata 
+0x4a86 018516 hstore 1 ,core_usb_config 
+0x4a87 018517 jam 1 ,mem_usb_remote_wakeup 
+0x4a88 018518 jam usb_sleep ,mem_usb_state 
+0x4a89 018519 jam 0 ,mem_usb_tx_win_enable 
+0x4a8a 018520 call usb0_reply_zerolen 
+:      018521 usb_wakeup_timer_reinit:
+0x4a8b 018522 call timer_reinit 
+0x4a8c 018523 setarg timer_wakeup_delay 
+0x4a8d 018524 arg timer_wakeup ,queue 
+0x4a8e 018525 branch timer_init 
+:      018527 usb0_request_set_feature_out_interface:
+0x4a8f 018528 branch usb0_force_stall 
+:      018530 usb0_request_set_feature_out_endpoint:
+0x4a90 018531 fetch 1 ,mem_usb_setup_bvalue 
+0x4a91 018532 bne endpoint_halt ,usb0_force_stall 
+0x4a92 018533 fetch 1 ,mem_usb_setup_bvalueh 
+0x4a93 018534 bne 0 ,usb0_force_stall 
+0x4a94 018535 fetch 1 ,mem_usb_setup_windex 
+0x4a95 018536 beq in_ep1 ,usb0_force_stall_ep1_in_on 
+0x4a96 018537 beq in_ep2 ,usb0_force_stall_ep2_in_on 
+0x4a97 018538 beq in_ep3 ,usb0_force_stall_ep3_in_on 
+0x4a98 018539 and_into 0x7f ,pdata 
+0x4a99 018540 beq 0x00 ,usb0_force_stall_ep0_in_on 
+0x4a9a 018541 branch usb0_force_stall 
+:      018543 usb0_force_stall_ep0_in_on:
+0x4a9b 018544 jam 1 ,mem_usb_ep0_stall_status 
+0x4a9c 018545 branch usb0_reply_zerolen 
+:      018546 usb0_force_stall_ep1_in_on:
+0x4a9d 018547 jam 1 ,mem_usb_ep1_stall_status 
+0x4a9e 018548 branch usb0_reply_zerolen 
+:      018549 usb0_force_stall_ep2_in_on:
+0x4a9f 018550 jam 1 ,mem_usb_ep2_stall_status 
+0x4aa0 018551 branch usb0_reply_zerolen 
+:      018552 usb0_force_stall_ep3_in_on:
+0x4aa1 018553 jam 1 ,mem_usb_ep3_stall_status 
+0x4aa2 018554 branch usb0_reply_zerolen 
+:      018557 usb0_request_set_address:
+0x4aa3 018558 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4aa4 018559 bne out_device ,usb0_force_stall 
+0x4aa5 018560 fetch 1 ,mem_usb_setup_windex 
+0x4aa6 018561 bne 0 ,usb0_force_stall 
+0x4aa7 018562 fetch 1 ,mem_usb_setup_windex + 1 
+0x4aa8 018563 bne 0 ,usb0_force_stall 
+0x4aa9 018564 fetch 1 ,mem_usb_setup_blength 
+0x4aaa 018565 bne 0 ,usb0_force_stall 
+0x4aab 018566 fetch 1 ,mem_usb_setup_blengthh 
+0x4aac 018567 bne 0 ,usb0_force_stall 
+0x4aad 018568 fetch 1 ,mem_usb_setup_bvalueh 
+0x4aae 018569 bne 0 ,usb0_force_stall 
+0x4aaf 018570 fetch 1 ,mem_usb_setup_bvalue 
+0x4ab0 018571 and_into 0x80 ,pdata 
+0x4ab1 018572 bne 0 ,usb0_force_stall 
+0x4ab2 018573 fetch 1 ,mem_usb_setup_bvalue 
+0x4ab3 018574 bne 0 ,usb_usb0_state_set_dev_addr 
+:      018575 usb_usb0_state_set_dev_default:
+0x4ab4 018576 jam dev_default ,mem_usb0_state 
+:      018577 usb0_request_set_wait_address:
+0x4ab5 018578 fetch 1 ,mem_usb_setup_bvalue 
+0x4ab6 018579 hstore 1 ,core_usb_addr 
+0x4ab7 018580 call usb0_reply_zerolen 
+0x4ab8 018581 jam 1 ,mem_usb_set_high_addr_flag 
+0x4ab9 018582 rtn 
+:      018583 usb_usb0_state_set_dev_addr:
+0x4aba 018584 jam dev_address ,mem_usb0_state 
+0x4abb 018585 branch usb0_request_set_wait_address 
+:      018588 usb0_request_set_configuration:
+0x4abc 018589 fetch 1 ,mem_usb0_state 
+0x4abd 018590 beq dev_default ,usb0_force_stall 
+0x4abe 018591 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4abf 018592 bne out_device ,usb0_force_stall 
+0x4ac0 018593 fetch 1 ,mem_usb_setup_windex 
+0x4ac1 018594 bne 0 ,usb0_force_stall 
+0x4ac2 018595 fetch 1 ,mem_usb_setup_windex + 1 
+0x4ac3 018596 bne 0 ,usb0_force_stall 
+0x4ac4 018597 fetch 1 ,mem_usb_setup_blength 
+0x4ac5 018598 bne 0 ,usb0_force_stall 
+0x4ac6 018599 fetch 1 ,mem_usb_setup_blengthh 
+0x4ac7 018600 bne 0 ,usb0_force_stall 
+0x4ac8 018601 fetch 1 ,mem_usb_setup_bvalue + 1 
+0x4ac9 018602 bne 0 ,usb0_force_stall 
+0x4aca 018603 fetch 1 ,mem_usb_setup_bvalue 
+0x4acb 018604 sub pdata ,usb_max_num_cfg ,null 
+0x4acc 018605 nbranch usb0_force_stall ,positive 
+0x4acd 018606 fetch 1 ,mem_usb0_state 
+0x4ace 018607 beq dev_address ,usb0_request_set_cfg_addr_state 
+0x4acf 018608 beq dev_configured ,usb0_request_set_cfg_cfg_state 
+0x4ad0 018609 branch usb0_force_stall 
+:      018611 usb0_request_set_cfg_addr_state:
+:      018612 usb0_request_set_cfg_cfg_state:
+0x4ad1 018613 fetch 1 ,mem_usb_setup_bvalue 
+0x4ad2 018614 beq 0 ,usb0_request_set_cfg_stay_addr_state 
+0x4ad3 018615 jam dev_configured ,mem_usb0_state 
+0x4ad4 018616 branch usb0_reply_zerolen 
+:      018617 usb0_request_set_cfg_stay_addr_state:
+0x4ad5 018618 jam dev_address ,mem_usb0_state 
+0x4ad6 018619 branch usb0_reply_zerolen 
+:      018622 usb0_request_set_interface:
+0x4ad7 018623 fetch 1 ,mem_usb0_state 
+0x4ad8 018624 bne dev_configured ,usb0_force_stall 
+0x4ad9 018625 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4ada 018626 bne out_interface ,usb0_force_stall 
+0x4adb 018627 fetch 1 ,mem_usb_setup_bvalue 
+0x4adc 018628 bne 0 ,usb0_force_stall 
+0x4add 018629 fetch 1 ,mem_usb_setup_bvalueh 
+0x4ade 018630 bne 0 ,usb0_force_stall 
+0x4adf 018631 fetch 1 ,mem_usb_setup_blength 
+0x4ae0 018632 bne 0 ,usb0_force_stall 
+0x4ae1 018633 fetch 1 ,mem_usb_setup_blengthh 
+0x4ae2 018634 bne 0 ,usb0_force_stall 
+0x4ae3 018635 fetch 1 ,mem_usb_setup_windex 
+0x4ae4 018636 bne 0 ,usb0_force_stall 
+0x4ae5 018637 fetch 1 ,mem_usb_setup_windex + 1 
+0x4ae6 018638 bne 0 ,usb0_force_stall 
+0x4ae7 018639 branch usb0_reply_zerolen 
+:      018642 usb_set_idle:
+0x4ae8 018643 jam 1 ,mem_usb_idle_flag 
+0x4ae9 018644 fetch 1 ,mem_usb_setup_bvalueh 
+0x4aea 018645 store 1 ,mem_usb_idle_rate 
+0x4aeb 018646 fetch 1 ,mem_usb_setup_windex 
+0x4aec 018647 sub pdata ,1 ,null 
+0x4aed 018648 call usb_clear_remote_wakeup_set0 ,zero 
+0x4aee 018649 fetch 1 ,mem_usb_state 
+0x4aef 018650 bne usb_resume ,usb0_reply_zerolen 
+0x4af0 018651 jam usb_connected ,mem_usb_state 
+0x4af1 018652 call usb0_reply_zerolen 
+0x4af2 018653 nop 30000 
+0x4af3 018654 nop 30000 
+0x4af4 018655 rtn 
+:      018656 usb_clear_remote_wakeup_set0:
+0x4af5 018657 jam 1 ,mem_usb_device_enumeration_endflag 
+0x4af6 018658 jam 0 ,mem_usb_clear_remote_wakeup 
+0x4af7 018659 jam usb_resume ,mem_usb_state 
+0x4af8 018660 rtn 
+:      018663 usb_set_report:
+0x4af9 018664 jam 1 ,mem_usb0_get_set_report 
+0x4afa 018665 call usb_set_report_resume_judge 
+0x4afb 018666 fetch 2 ,mem_usb_setup_bvalue 
+0x4afc 018667 store 2 ,mem_usb_setup_bvalue_temp 
+0x4afd 018668 fetch 1 ,mem_usb_setup_blength 
+0x4afe 018669 iforce loopcnt 
+0x4aff 018670 arg mem_usb0_setup ,contr 
+0x4b00 018671 arg mem_usb0_set_report_data ,contw 
+0x4b01 018672 call memcpy 
+0x4b02 018673 branch usb0_reply_zerolen 
+:      018675 usb_set_report_resume_judge:
+0x4b03 018676 fetch 2 ,mem_usb_setup_bvalue 
+0x4b04 018677 arg pc_set_report_bvalue ,temp 
+0x4b05 018678 isub temp ,null 
+0x4b06 018679 nrtn zero 
+0x4b07 018680 fetch 2 ,mem_usb_setup_windex 
+0x4b08 018681 arg pc_set_report_windex ,temp 
+0x4b09 018682 isub temp ,null 
+0x4b0a 018683 nrtn zero 
+0x4b0b 018684 fetch 2 ,mem_usb_setup_blength 
+0x4b0c 018685 arg pc_set_report_blength ,temp 
+0x4b0d 018686 isub temp ,null 
+0x4b0e 018687 nrtn zero 
+0x4b0f 018688 jam 1 ,mem_usb_tx_win_enable 
+0x4b10 018689 rtn 
+:      018692 usb_set_protocol_req:
+0x4b11 018693 fetch 1 ,mem_usb_setup_blength 
+0x4b12 018694 bne 0 ,usb0_force_stall 
+0x4b13 018695 fetch 1 ,mem_usb_setup_bvalue 
+0x4b14 018696 beq boot_protocol ,usb_set_boot_protocol 
+0x4b15 018697 beq report_protocol ,usb_set_report_protocol 
+0x4b16 018698 branch usb0_force_stall 
+:      018699 usb_set_boot_protocol:
+0x4b17 018700 jam 0 ,mem_usb_set_protocol_status 
+0x4b18 018701 jam 1 ,mem_usb_set_protocol_value 
+0x4b19 018702 branch usb0_reply_zerolen 
+:      018703 usb_set_report_protocol:
+0x4b1a 018704 jam 1 ,mem_usb_tx_mac_enable 
+0x4b1b 018705 jam 1 ,mem_usb_set_protocol_status 
+0x4b1c 018706 jam 0 ,mem_usb_set_protocol_value 
+0x4b1d 018707 branch usb0_reply_zerolen 
+:      018710 usb0_respond_length:
+0x4b1e 018711 ifetch 1 ,rega 
+0x4b1f 018712 iforce regb 
+0x4b20 018713 increase 1 ,rega 
+:      018715 usb0_respond:
+0x4b21 018716 bpatch patch1f_2 ,mem_patch1f 
+0x4b22 018717 bmark0 mark_isstr ,usb0_respond0 
+0x4b23 018718 add regb ,1 ,pdata 
+0x4b24 018719 lshift pdata ,pdata 
+0x4b25 018720 hstore 1 ,core_usb_dfifo0 
+0x4b26 018721 jam 3 ,core_usb_dfifo0 
+0x4b27 018722 fetch 1 ,mem_usb_setup_blength 
+0x4b28 018723 increase -2 ,pdata 
+0x4b29 018724 rshift pdata ,pdata 
+0x4b2a 018725 store 1 ,mem_usb_setup_blength 
+0x4b2b 018726 beq 0 ,usb_no_respond_data 
+:      018727 usb0_respond0:
+0x4b2c 018728 fetch 2 ,mem_usb_setup_blength 
+0x4b2d 018729 isub regb ,null 
+0x4b2e 018730 branch usb0_respond1 ,positive 
+0x4b2f 018731 copy pdata ,regb 
+:      018732 usb0_respond1:
+0x4b30 018733 deposit rega 
+0x4b31 018734 store 2 ,mem_bufptr 
+0x4b32 018735 deposit regb 
+0x4b33 018736 store 1 ,mem_remain 
+0x4b34 018737 branch usb0_tx 
+:      018739 usb_no_respond_data:
+0x4b35 018740 arg 0 ,queue 
+0x4b36 018741 branch usb_trig 
+:      018744 usb0_tx:
+0x4b37 018745 bpatch patch1f_3 ,mem_patch1f 
+0x4b38 018746 fetch 1 ,mem_remain 
+0x4b39 018747 rtn blank 
+0x4b3a 018748 copy pdata ,loopcnt 
+0x4b3b 018749 sub pdata ,ep0_packet_size ,null 
+0x4b3c 018750 branch usb0_tx_info ,positive 
+0x4b3d 018751 arg ep0_packet_size ,loopcnt 
+:      018752 usb0_tx_info:
+0x4b3e 018753 fetch 1 ,mem_remain 
+0x4b3f 018754 isub loopcnt ,pdata 
+0x4b40 018755 store 1 ,mem_remain 
+0x4b41 018756 fetch 2 ,mem_bufptr 
+0x4b42 018757 copy pdata ,contr 
+:      018758 usb0_tx0:
+0x4b43 018759 ifetch 1 ,contr 
+0x4b44 018760 hstore 1 ,core_usb_dfifo0 
+0x4b45 018761 bmark0 mark_isstr ,usb0_tx1 
+0x4b46 018762 jam 0 ,core_usb_dfifo0 
+:      018763 usb0_tx1:
+0x4b47 018764 loop usb0_tx0 
+0x4b48 018765 copy contr ,pdata 
+0x4b49 018766 store 2 ,mem_bufptr 
+0x4b4a 018767 arg 0 ,queue 
+0x4b4b 018768 call usb_trig 
+0x4b4c 018769 fetch 1 ,mem_remain 
+0x4b4d 018770 nrtn blank 
+0x4b4e 018771 fetch 1 ,mem_usb_state 
+0x4b4f 018772 rtnne usb_got_report_req 
+0x4b50 018773 jam usb_connected ,mem_usb_state 
+0x4b51 018774 rtn 
+:      018777 usb_tx_ep1:
+0x4b52 018778 arg core_usb_dfifo1 ,rega 
+0x4b53 018779 arg 1 ,queue 
+:      018780 usb_tx_loop:
+0x4b54 018781 ifetch 1 ,contr 
+0x4b55 018782 istore 1 ,rega 
+0x4b56 018783 loop usb_tx_loop 
+:      018784 usb_trig:
+0x4b57 018785 setarg 0 
+0x4b58 018786 qset1 pdata 
+0x4b59 018787 hstore 1 ,core_usb_trig 
+0x4b5a 018788 fetcht 1 ,mem_usb_tx_wait 
+0x4b5b 018789 ior temp ,pdata 
+0x4b5c 018790 store 1 ,mem_usb_tx_wait 
+0x4b5d 018791 rtn 
+:      018793 usb_tx_ep2:
+0x4b5e 018794 arg 2 ,queue 
+0x4b5f 018795 arg core_usb_dfifo2 ,rega 
+0x4b60 018796 branch usb_tx_loop 
+:      018798 usb_tx:
+0x4b61 018799 bpatch patch1f_4 ,mem_patch1f 
+0x4b62 018800 fetch 1 ,mem_usb_tx_enable 
+0x4b63 018801 rtn blank 
+0x4b64 018802 fetch 1 ,mem_usb_tx_wait 
+0x4b65 018803 nbranch usb_inwake_state_tx_dispose ,blank 
+0x4b66 018804 fetch 1 ,mem_usb_device_enumeration_endflag 
+0x4b67 018805 branch usb_tx_fifo_release ,blank 
+0x4b68 018806 fetch 1 ,mem_usb_state 
+0x4b69 018807 beq usb_sleep ,usb_windows_wakeup 
+0x4b6a 018808 bne usb_connected ,usb_tx_fifo_release 
+0x4b6b 018809 fetch 1 ,mem_usb_clear_remote_wakeup 
+0x4b6c 018810 nbranch usb_tx_fifo_release ,blank 
+0x4b6d 018811 call usb_tx_data_ep1 
+0x4b6e 018812 branch usb_tx_data_ep2 
+:      018814 usb_tx_data_ep1:
+0x4b6f 018815 fetch 1 ,mem_usb_tx_enable 
+0x4b70 018816 rtnbit0 1 
+0x4b71 018817 fetch 1 ,mem_usb_tx_wait 
+0x4b72 018818 rtnbit1 1 
+0x4b73 018819 fetch 1 ,mem_usb_tx_enable 
+0x4b74 018820 set0 1 ,pdata 
+0x4b75 018821 store 1 ,mem_usb_tx_enable 
+0x4b76 018822 fetch 1 ,mem_usb_ep1_data 
+0x4b77 018823 rtn blank 
+0x4b78 018824 beq usb_ep1_kb ,usb_tx_kb_normal_data 
+0x4b79 018825 branch assert 
+:      018827 usb_tx_data_ep2:
+0x4b7a 018828 fetch 1 ,mem_usb_tx_enable 
+0x4b7b 018829 rtnbit0 2 
+0x4b7c 018830 fetch 1 ,mem_usb_tx_wait 
+0x4b7d 018831 rtnbit1 2 
+0x4b7e 018832 fetch 1 ,mem_usb_tx_enable 
+0x4b7f 018833 set0 2 ,pdata 
+0x4b80 018834 store 1 ,mem_usb_tx_enable 
+0x4b81 018835 fetch 1 ,mem_usb_ep2_data 
+0x4b82 018836 rtn blank 
+0x4b83 018837 beq usb_ep2_ms ,usb_tx_ms_data 
+0x4b84 018838 beq usb_ep2_multikey ,usb_tx_kb_multikey_data 
+0x4b85 018839 branch assert 
+:      018841 usb_tx_fifo_release:
+0x4b86 018843 arg mem_usb_mouse_data ,contw 
+0x4b87 018844 arg 6 ,loopcnt 
+0x4b88 018845 branch memset0 
+:      018847 usb_tx_ms_data:
+0x4b89 018848 fetch 1 ,mem_usb_idle_flag 
+0x4b8a 018849 fetcht 1 ,mem_usb_get_protocol_flag 
+0x4b8b 018850 iand temp ,pdata 
+0x4b8c 018851 branch usb_tx_ms_data_normal_mode ,blank 
+0x4b8d 018852 fetcht 1 ,mem_usb_set_protocol_status 
+0x4b8e 018853 iadd temp ,pdata 
+0x4b8f 018854 beq mac_boot_mode ,usb_tx_ms_data_mac_boot_mode 
+0x4b90 018855 branch usb_tx_ms_data_normal_mode 
+:      018857 usb_tx_ms_data_mac_boot_mode:
+0x4b91 018858 jam 0 ,mem_usb_ep2_data 
+:      018859 usb_tx_ms_data_mac_boot_regroup:
+0x4b92 018860 fetch 1 ,mem_usb_mouse_data + 1 
+0x4b93 018861 beq r_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
+0x4b94 018862 beq lr_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
+0x4b95 018863 fetch 1 ,mem_usb_mouse_data + 1 
+0x4b96 018864 store 1 ,mem_usb_mouse_data 
+0x4b97 018865 fetch 1 ,mem_usb_mouse_data + 2 
+0x4b98 018866 istore 1 ,contw 
+0x4b99 018867 fetch 1 ,mem_usb_mouse_data + 4 
+0x4b9a 018868 istore 1 ,contw 
+0x4b9b 018869 fetch 1 ,mem_usb_mouse_data + 6 
+0x4b9c 018870 istore 1 ,contw 
+0x4b9d 018871 arg 4 ,loopcnt 
+0x4b9e 018872 arg mem_usb_mouse_data ,contr 
+0x4b9f 018873 branch usb_tx_ep2 
+:      018875 usb_tx_ms_data_normal_mode:
+0x4ba0 018876 jam 0 ,mem_usb_ep2_data 
+:      018877 usb_tx_mac_boot_ms_regroup_r_or_lrkey:
+0x4ba1 018878 arg 8 ,loopcnt 
+0x4ba2 018879 arg mem_usb_mouse_data ,contr 
+0x4ba3 018880 branch usb_tx_ep2 
+:      018882 usb_tx_kb_multikey_data:
+0x4ba4 018883 jam 0 ,mem_usb_ep2_data 
+0x4ba5 018884 arg 3 ,loopcnt 
+0x4ba6 018885 arg mem_usb_kb_multikey ,contr 
+0x4ba7 018886 branch usb_tx_ep2 
+:      018888 usb_tx_kb_normal_data:
+0x4ba8 018889 jam 0 ,mem_usb_ep1_data 
+0x4ba9 018890 arg 8 ,loopcnt 
+0x4baa 018891 arg mem_usb_kb_data ,contr 
+0x4bab 018892 branch usb_tx_ep1 
+:      018894 usb_inwake_state_tx_dispose:
+0x4bac 018895 fetch 1 ,mem_usb_state 
+0x4bad 018896 beq usb_sleep ,usb_clear_tx_wait 
+0x4bae 018897 beq usb_connected ,usb_mac_wakeup_trig 
+0x4baf 018898 rtn 
+:      018899 usb_clear_tx_wait:
+0x4bb0 018900 jam 0 ,mem_usb_tx_wait 
+0x4bb1 018901 rtn 
+:      018902 usb_mac_wakeup_trig:
+0x4bb2 018903 hfetch 1 ,core_usb_config 
+0x4bb3 018904 set1 7 ,pdata 
+0x4bb4 018905 hstore 1 ,core_usb_config 
+0x4bb5 018906 jam 1 ,mem_usb_mac_wakeup_trig 
+0x4bb6 018907 rtn 
+:      018909 usb_mac_wakeup_judge:
+0x4bb7 018910 fetch 1 ,mem_usb_state 
+0x4bb8 018911 rtneq usb_sleep 
+0x4bb9 018912 beq usb_connected ,usb_mac_wakeup 
+0x4bba 018913 rtn 
+:      018914 usb_mac_wakeup:
+0x4bbb 018915 fetch 1 ,mem_usb_mac_wakeup_trig 
+0x4bbc 018916 rtn blank 
+0x4bbd 018917 jam 1 ,mem_usb_wakestate_onetime_flag 
+0x4bbe 018918 branch usb_wakeup 
+:      018920 usb_windows_wakeup:
+0x4bbf 018921 arg timer_wakeup ,queue 
+0x4bc0 018922 call timer_check 
+0x4bc1 018923 nrtn blank 
+:      018924 usb_wakeup:
+0x4bc2 018925 hfetch 1 ,core_usb_config 
+0x4bc3 018926 rtnbit0 7 
+0x4bc4 018927 jam 0xfc ,core_usb_config 
+0x4bc5 018928 nop 30000 
+0x4bc6 018929 jam 0x3c ,core_usb_config 
+0x4bc7 018930 rtn 
+:      018937 hci_rx_h4:
+0x4bc8 018938 bpatch patch1f_5 ,mem_patch1f 
+0x4bc9 018939 fetch 1 ,mem_hci_cmd 
+0x4bca 018940 nrtn blank 
+:      018941 hci_rx_h4_1:
+0x4bcb 018942 call hci_h4_parse_packet 
+0x4bcc 018943 ncall h4_rx_discard_packet ,user 
+0x4bcd 018944 rtn 
+:      018946 hci_h4_parse_packet:
+0x4bce 018947 bpatch patch1f_6 ,mem_patch1f 
+0x4bcf 018948 copy contru ,rega 
+0x4bd0 018949 arg 4 ,temp 
+0x4bd1 018950 ifetch 1 ,contru 
+0x4bd2 018951 beq hci_h4_type_cmd ,hci_h4_parse_packet_wait_len 
+0x4bd3 018952 increase 1 ,temp 
+0x4bd4 018953 beq hci_h4_type_acl ,hci_h4_parse_packet_wait_len 
+0x4bd5 018954 copy contru ,pdata 
+0x4bd6 018955 hstore 2 ,core_uart_rrptr 
+0x4bd7 018956 rtn 
+:      018957 hci_h4_parse_packet_wait_len:
+0x4bd8 018958 hfetch 2 ,core_uart_rxitems 
+0x4bd9 018959 isub temp ,null 
+0x4bda 018960 nbranch hci_h4_parse_packet_wait_len ,positive 
+0x4bdb 018962 disable user 
+0x4bdc 018963 copy rega ,contru 
+0x4bdd 018964 call h4_get_rx_payload_len 
+0x4bde 018965 iadd temp ,temp 
+:      018966 hci_h4_parse_packet_wait:
+0x4bdf 018967 hfetch 2 ,core_uart_rxitems 
+0x4be0 018968 isub temp ,null 
+0x4be1 018969 nbranch hci_h4_parse_packet_wait ,positive 
+0x4be2 018970 copy rega ,contru 
+0x4be3 018971 ifetch 1 ,contru 
+0x4be4 018972 beq hci_h4_type_cmd ,process_hci_cmd 
+0x4be5 018973 branch assert 
+:      018975 h4_rx_discard_packet:
+0x4be6 018976 bpatch patch1f_7 ,mem_patch1f 
+0x4be7 018977 hfetch 2 ,core_uart_rrptr 
+0x4be8 018978 iforce contru 
+0x4be9 018979 call h4_get_rx_payload_len 
+0x4bea 018980 iadd contru ,contru 
+0x4beb 018981 deposit contru 
+0x4bec 018982 hstore 2 ,core_uart_rrptr 
+0x4bed 018983 rtn 
+:      018988 h4_get_rx_payload_len:
+0x4bee 018989 ifetch 1 ,contru 
+0x4bef 018990 increase 2 ,contru 
+0x4bf0 018991 beq hci_h4_type_acl ,h4_get_rx_payload_len_acl 
+0x4bf1 018992 ifetch 1 ,contru 
+0x4bf2 018993 rtn 
+:      018994 h4_get_rx_payload_len_acl:
+0x4bf3 018995 ifetch 2 ,contru 
+0x4bf4 018996 rtn 
+:      018998 h4_get_tx_ptr:
+0x4bf5 018999 hfetch 2 ,core_uart_twptr 
+0x4bf6 019000 increase -5 ,contwu 
+0x4bf7 019001 iadd contwu ,contwu 
+0x4bf8 019002 rtn 
+:      019004 h4_send_packet_event:
+0x4bf9 019005 arg hci_h4_type_event ,temp 
+0x4bfa 019006 branch h4_send_packet 
+:      019007 h4_send_packet_acl:
+0x4bfb 019008 arg hci_h4_type_acl ,temp 
+:      019009 h4_send_packet:
+0x4bfc 019010 bpatchx patch20_0 ,mem_patch20 
+0x4bfd 019011 increase 1 ,loopcnt 
+0x4bfe 019012 hfetch 2 ,core_uart_twptr 
+0x4bff 019013 copy pdata ,contwu 
+0x4c00 019014 copy loopcnt ,pdata 
+0x4c01 019015 istoret 1 ,contwu 
+0x4c02 019016 increase -1 ,pdata 
+0x4c03 019017 iadd contwu ,contwu 
+0x4c04 019018 copy contwu ,pdata 
+0x4c05 019019 store 2 ,mem_hci_acl_tx_trigger_wptr 
+0x4c06 019020 copy temp ,pdata 
+0x4c07 019021 rtneq hci_h4_type_acl 
+0x4c08 019022 fetch 2 ,mem_hci_acl_tx_trigger_wptr 
+0x4c09 019023 hstore 2 ,core_uart_twptr 
+0x4c0a 019024 branch h4_send_acl_trigger_clear 
+:      019027 h4_send_acl_trigger_clear:
+0x4c0b 019028 setarg 0 
+0x4c0c 019029 store 2 ,mem_hci_acl_tx_trigger_wptr 
+0x4c0d 019030 rtn 
+:      019037 hci_init:
+0x4c0e 019038 rtn wake 
+0x4c0f 019039 setarg hci_idle_dispatch 
+0x4c10 019040 store 2 ,mem_cb_idle_process 
+0x4c11 019042 setarg uart_baud_115200 
+0x4c12 019043 store uart_baud_len ,mem_baud 
+:      019044 hci_lpm_init:
+0x4c13 019045 setarg mem_h5rx_buf 
+0x4c14 019046 hstore 2 ,core_uart_rsaddr 
+0x4c15 019047 setarg mem_h5rx_buf_end 
+0x4c16 019048 hstore 2 ,core_uart_readdr 
+0x4c17 019049 setarg mem_h5tx_buf 
+0x4c18 019050 hstore 2 ,core_uart_tsaddr 
+0x4c19 019051 call hci_sel_init 
+:      019052 hci_reinit:
+0x4c1a 019053 jam 0x0 ,core_uart_ctrl 
+0x4c1b 019054 setarg mem_h5tx_buf 
+0x4c1c 019055 hstore 2 ,core_uart_twptr 
+0x4c1d 019056 hstore 2 ,core_uart_trptrp 
+0x4c1e 019057 setarg mem_h5rx_buf 
+0x4c1f 019058 hstore 2 ,core_uart_rrptr 
+0x4c20 019059 store 2 ,mem_h5rx_rptr 
+:      019060 hci_init_common:
+0x4c21 019061 hfetch 2 ,core_clkoff 
+0x4c22 019062 set0 clock_off_uart ,pdata 
+0x4c23 019063 hstore 2 ,core_clkoff 
+0x4c24 019064 call uart_set_baud_by_mem 
+0x4c25 019065 jam uartclk_dpll ,core_uart_clksel 
+0x4c26 019066 jam uart_ctrl_h4 ,core_uart_ctrl 
+0x4c27 019067 rtn 
+:      019069 hci_sel_init:
+0x4c28 019070 setarg mem_h5tx_buf_end 
+0x4c29 019071 hstore 2 ,core_uart_teaddr 
+0x4c2a 019072 hfetch 1 ,core_gpio_sel1 
+0x4c2b 019073 or_into 0x07 ,pdata 
+0x4c2c 019074 hstore 1 ,core_gpio_sel1 
+0x4c2d 019075 rtn 
+:      019078 hci_rx_packet:
+0x4c2e 019079 bpatchx patch20_1 ,mem_patch20 
+0x4c2f 019080 hfetch 1 ,core_uart_status 
+0x4c30 019081 iforce regb 
+0x4c31 019082 bbit0 uart_status_rx_fifo_empty ,hci_rx_packet_cont 
+0x4c32 019083 hfetch 2 ,core_uart_rxitems 
+0x4c33 019084 iforce regc 
+0x4c34 019085 arg 0x44f ,temp 
+0x4c35 019086 isub temp ,null 
+0x4c36 019087 nrtn zero 
+:      019088 hci_rx_packet_cont:
+0x4c37 019089 hfetch 2 ,core_uart_rrptr 
+0x4c38 019090 iforce contru 
+0x4c39 019091 branch hci_rx_h4 
+:      019093 uart_send_byte:
+0x4c3a 019094 hfetcht 1 ,core_uart_status 
+0x4c3b 019095 isolate1 6 ,temp 
+0x4c3c 019096 branch uart_send_byte ,true 
+0x4c3d 019097 hstore 1 ,core_uart_txd 
+0x4c3e 019098 rtn 
+:      019100 process_hci_cmd:
+0x4c3f 019101 bpatchx patch20_2 ,mem_patch20 
+0x4c40 019102 fetch 1 ,mem_hci_cmd 
+0x4c41 019103 branch process_hci_cmd_cont ,blank 
+0x4c42 019104 enable user 
+0x4c43 019105 rtn 
+:      019106 process_hci_cmd_cont:
+0x4c44 019107 ifetch 2 ,contru 
+0x4c45 019108 iforce alarm 
+0x4c46 019109 iforce queue 
+0x4c47 019110 ifetch 1 ,contru 
+0x4c48 019111 iforce temp 
+0x4c49 019112 rshift2 alarm ,pdata 
+0x4c4a 019113 rshift8 pdata ,pdata 
+0x4c4b 019114 beq hci_ogf_vendor_specific ,phci_grp_vendor_specific 
+0x4c4c 019115 rtn 
+:      019118 phci_grp_vendor_specific:
+0x4c4d 019119 bpatchx patch20_3 ,mem_patch20 
+0x4c4e 019120 deposit queue 
+0x4c4f 019121 beq hci_vendor_cmd_reset ,hci_normal_reply 
+0x4c50 019122 beq hci_vendor_cmd_chipid ,phci_grp_vendor_chipid 
+0x4c51 019123 beq hci_vendor_cmd_baud ,phci_grp_vendor_baud 
+0x4c52 019124 beq hci_vendor_cmd_patch ,phci_grp_vendor_patch 
+0x4c53 019125 beq hci_vendor_cmd_patch_done ,phci_grp_vendor_done 
+0x4c54 019126 beq hci_vendor_cmd_echo ,hci_normal_reply 
+0x4c55 019127 beq hci_vendor_cmd_bdaddr ,phci_grp_vendor_bdaddr 
+0x4c56 019128 beq hci_vendor_cmd_enter_lpm ,phci_grp_vendor_enter_lpm 
+0x4c57 019130 beq hci_vendor_cmd_mem ,phci_grp_vendor_mem 
+0x4c58 019131 beq hci_vendor_cmd_eep ,phci_grp_vendor_eep 
+0x4c59 019132 beq hci_vendor_cmd_patch_sec_init ,phci_grp_vendor_patch_sec_init 
+0x4c5a 019133 beq hci_vendor_cmd_patch_sec ,phci_grp_vendor_patch_sec 
+0x4c5b 019134 branch hci_normal_reply 
+:      019136 phci_grp_vendor_enter_lpm:
+0x4c5c 019137 call hci_normal_reply 
+0x4c5d 019138 call wait_uarttx 
+0x4c5e 019139 call gpio_pu_uart_tx 
+:      019140 hci_enter_lpm:
+0x4c5f 019141 call app_put_lpm_wake_lock 
+0x4c60 019142 call app_l2cap_flow_control_enable 
+0x4c61 019143 branch gpio_rx_config_input_with_pu 
+:      019145 hci_exit_lpm:
+0x4c62 019146 jam hci_rx_ready ,mem_hci_lt_rx_state 
+0x4c63 019147 call app_get_lpm_wake_lock 
+0x4c64 019148 call hci_lpm_init 
+0x4c65 019149 branch app_l2cap_flow_control_disable 
+:      019151 phci_grp_vendor_chipid:
+0x4c66 019152 call hci_get_cmd_complete_ptr 
+0x4c67 019153 hfetch 2 ,core_chipid 
+0x4c68 019154 istore 2 ,contwu 
+0x4c69 019155 force 6 ,loopcnt 
+0x4c6a 019156 branch hci_command_complete 
+:      019158 phci_grp_vendor_baud:
+0x4c6b 019159 ifetch 2 ,contru 
+0x4c6c 019160 store 2 ,mem_baud 
+0x4c6d 019161 hstore 2 ,core_uart_baud 
+0x4c6e 019162 rtn 
+:      019165 phci_grp_vendor_patch_common:
+0x4c6f 019167 ifetch 1 ,contru 
+0x4c70 019168 copy pdata ,temp 
+0x4c71 019169 hstore 1 ,core_ucode_low 
+0x4c72 019170 ifetch 1 ,contru 
+0x4c73 019171 iadd temp ,temp 
+0x4c74 019172 set1 7 ,pdata 
+0x4c75 019173 hstore 1 ,core_ucode_ctrl 
+0x4c76 019174 ifetch 1 ,contru 
+0x4c77 019175 iadd temp ,temp 
+0x4c78 019176 copy pdata ,loopcnt 
+0x4c79 019177 rtn 
+:      019179 phci_grp_vendor_patch:
+0x4c7a 019180 bmark1 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+0x4c7b 019181 call phci_grp_vendor_patch_common 
+:      019182 phci_grp_vendor_patch_loop:
+0x4c7c 019183 ifetch 1 ,contru 
+0x4c7d 019184 hstore 1 ,core_ucode_data 
+0x4c7e 019185 iadd temp ,temp 
+0x4c7f 019186 loop phci_grp_vendor_patch_loop 
+:      019187 phci_grp_vendor_patch_check_sum:
+0x4c80 019188 and temp ,0xff ,temp 
+0x4c81 019189 ifetch 1 ,contru 
+0x4c82 019190 isub temp ,null 
+0x4c83 019191 nbranch phci_grp_vendor_patch_bad ,zero 
+0x4c84 019192 branch hci_normal_reply 
+:      019195 phci_grp_vendor_patch_sec:
+0x4c85 019196 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+0x4c86 019197 call phci_grp_vendor_patch_common 
+0x4c87 019198 store 8 ,mem_pdatatemp 
+:      019199 phci_grp_vendor_patch_sec_loop:
+0x4c88 019200 call do_aes_cbc 
+0x4c89 019201 arg 16 ,loopcnt 
+0x4c8a 019202 arg mem_temp_block0 ,contw 
+0x4c8b 019203 call load_uart_sum_loop 
+0x4c8c 019204 storet 8 ,mem_temp 
+0x4c8d 019205 arg mem_temp_block2 ,contw 
+0x4c8e 019206 call store_aes_result 
+0x4c8f 019207 arg mem_temp_block2 ,rega 
+0x4c90 019208 arg mem_temp_block0 ,regb 
+0x4c91 019209 arg mem_temp_block3 ,contw 
+0x4c92 019210 call xor16 
+0x4c93 019211 arg 16 ,loopcnt 
+0x4c94 019212 arg mem_temp_block3 ,contr 
+0x4c95 019213 call load_ucode_only_loop 
+0x4c96 019214 fetcht 8 ,mem_temp 
+0x4c97 019215 fetch 8 ,mem_pdatatemp 
+0x4c98 019216 increase -16 ,pdata 
+0x4c99 019217 store 8 ,mem_pdatatemp 
+0x4c9a 019218 nbranch phci_grp_vendor_patch_sec_loop ,blank 
+0x4c9b 019219 branch phci_grp_vendor_patch_check_sum 
+:      019221 load_ucode_only_loop:
+0x4c9c 019222 ifetch 1 ,contr 
+0x4c9d 019223 hstore 1 ,core_ucode_data 
+0x4c9e 019224 loop load_ucode_only_loop 
+0x4c9f 019225 rtn 
+:      019227 load_uart_sum_loop:
+0x4ca0 019228 ifetch 1 ,contru 
+0x4ca1 019229 istore 1 ,contw 
+0x4ca2 019230 iadd temp ,temp 
+0x4ca3 019231 loop load_uart_sum_loop 
+0x4ca4 019232 rtn 
+:      019234 phci_grp_vendor_patch_sec_init:
+0x4ca5 019235 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+0x4ca6 019236 arg 0 ,temp 
+0x4ca7 019237 arg 16 ,loopcnt 
+0x4ca8 019238 arg mem_temp_block0 ,contw 
+0x4ca9 019239 call load_uart_sum_loop 
+0x4caa 019240 hfetch 1 ,core_gpio_key2 
+0x4cab 019241 and_into 0xfd ,pdata 
+0x4cac 019242 hstore 1 ,core_gpio_key2 
+0x4cad 019243 arg mem_temp_block0 ,contr 
+0x4cae 019244 arg 16 ,loopcnt 
+0x4caf 019245 call aes_load_data 
+0x4cb0 019246 call aes_init 
+0x4cb1 019247 call aes_clear_data 
+0x4cb2 019248 branch phci_grp_vendor_patch_check_sum 
+:      019251 phci_grp_vendor_done:
+0x4cb3 019252 arg 0x20 ,loopcnt 
+0x4cb4 019253 arg mem_patch00 ,contw 
+0x4cb5 019254 arg 0 ,temp 
+:      019255 phci_grp_vendor_done_loop:
+0x4cb6 019256 ifetch 1 ,contru 
+0x4cb7 019257 istore 1 ,contw 
+0x4cb8 019258 iadd temp ,temp 
+0x4cb9 019259 loop phci_grp_vendor_done_loop 
+0x4cba 019260 and temp ,0xff ,temp 
+0x4cbb 019261 ifetch 1 ,contru 
+0x4cbc 019262 isub temp ,null 
+0x4cbd 019263 nbranch phci_grp_vendor_patch_bad ,zero 
+0x4cbe 019264 jam 0 ,core_ucode_ctrl 
+0x4cbf 019265 call hci_normal_reply 
+0x4cc0 019266 call h4_rx_discard_packet 
+0x4cc1 019267 call clear_key_buf 
+0x4cc2 019268 call wait_uarttx 
+0x4cc3 019269 branch soft_reset 
+:      019271 phci_grp_vendor_patch_bad:
+0x4cc4 019272 jam 0 ,core_ucode_ctrl 
+0x4cc5 019273 branch start 
+:      019275 phci_grp_vendor_bdaddr:
+0x4cc6 019276 ifetch 6 ,contru 
+0x4cc7 019277 store 6 ,mem_lap 
+0x4cc8 019278 branch hci_normal_reply 
+:      019281 phci_grp_vendor_mem:
+0x4cc9 019282 ifetch 1 ,contru 
+0x4cca 019283 store 1 ,mem_hci_curr_len 
+0x4ccb 019284 copy pdata ,loopcnt 
+0x4ccc 019285 ifetch 2 ,contru 
+0x4ccd 019286 store 2 ,mem_hci_curr_target 
+0x4cce 019287 copy pdata ,contw 
+0x4ccf 019288 call uart_copy_rx_bytes 
+0x4cd0 019289 branch hci_normal_reply 
+:      019292 phci_grp_vendor_eep:
+0x4cd1 019293 ifetch 1 ,contru 
+0x4cd2 019294 store 1 ,mem_hci_curr_len 
+0x4cd3 019295 copy pdata ,loopcnt 
+0x4cd4 019296 ifetch 2 ,contru 
+0x4cd5 019297 store 2 ,mem_hci_curr_target 
+0x4cd6 019298 arg mem_l2cap_rxbuff1 ,contw 
+0x4cd7 019299 call uart_copy_rx_bytes 
+0x4cd8 019300 fetcht 1 ,mem_hci_curr_len 
+0x4cd9 019301 arg mem_l2cap_rxbuff1 ,rega 
+0x4cda 019302 fetch 2 ,mem_hci_curr_target 
+0x4cdb 019303 branch iicd_write_ota_data 
+:      019308 hci_normal_reply:
+0x4cdc 019309 force 4 ,loopcnt 
+:      019310 hci_command_complete:
+0x4cdd 019311 call hci_get_payload_ptr 
+0x4cde 019312 force 0x1 ,pdata 
+0x4cdf 019313 istore 1 ,contwu 
+0x4ce0 019314 deposit alarm 
+0x4ce1 019315 istore 3 ,contwu 
+0x4ce2 019316 force hci_event_command_complete ,queue 
+:      019317 hci_send_event:
+0x4ce3 019318 bpatchx patch20_4 ,mem_patch20 
+0x4ce4 019319 call hci_get_packet_ptr 
+0x4ce5 019320 deposit queue 
+0x4ce6 019321 istore 1 ,contwu 
+0x4ce7 019322 deposit loopcnt 
+0x4ce8 019323 istore 1 ,contwu 
+:      019324 hci_send_event_raw:
+0x4ce9 019325 force 5 ,queue 
+0x4cea 019326 increase 2 ,loopcnt 
+:      019327 hci_send_packet:
+0x4ceb 019328 branch h4_send_packet_event 
+:      019330 hci_send_commu_ready_event:
+0x4cec 019331 force hci_event_vendor_specific ,queue 
+0x4ced 019332 call hci_get_payload_ptr 
+0x4cee 019333 setarg hci_vendor_event_commu_ready 
+0x4cef 019334 istore 1 ,contwu 
+0x4cf0 019335 force 1 ,loopcnt 
+0x4cf1 019336 branch hci_send_event 
+:      019338 hci_get_cmd_complete_ptr:
+0x4cf2 019339 force 12 ,contwu 
+0x4cf3 019340 branch hci_get_tx_ptr 
+:      019342 hci_get_payload_ptr:
+0x4cf4 019343 force 8 ,contwu 
+0x4cf5 019344 branch hci_get_tx_ptr 
+:      019346 hci_get_packet_ptr:
+0x4cf6 019347 force 6 ,contwu 
+:      019348 hci_get_tx_ptr:
+0x4cf7 019349 branch h4_get_tx_ptr 
+:      019353 calc_tx_crc16:
+0x4cf8 019354 pulse crc16 
+0x4cf9 019355 enable enable_crc 
+:      019356 crcloop:
+0x4cfa 019357 ifetch 1 ,contwu 
+0x4cfb 019358 inject bucket ,8 
+0x4cfc 019359 loop crcloop 
+0x4cfd 019360 enable enable_parity 
+0x4cfe 019361 inject bucket ,16 
+0x4cff 019362 disable enable_parity 
+0x4d00 019363 disable enable_crc 
+0x4d01 019364 disable crc16 
+0x4d02 019365 byteswap pdata ,pdata 
+0x4d03 019366 rtn 
+:      019370 cmd_exit:
+0x4d04 019371 jam 0 ,mem_hci_cmd 
+0x4d05 019372 rtn 
+:      019373 cmd_check_plap:
+0x4d06 019374 fetch 6 ,mem_hci_plap 
+0x4d07 019375 fetcht 6 ,mem_plap 
+0x4d08 019376 isub temp ,null 
+0x4d09 019377 rtn 
+:      019382 cmd_pair:
+0x4d0a 019383 fetch 1 ,mem_op 
+0x4d0b 019384 bbit1 op_inrand_req ,cmd_pair_passive 
+0x4d0c 019385 call tid_initiate 
+0x4d0d 019386 jam lmp_in_rand ,mem_lmo_opcode2 
+0x4d0e 019387 branch cmd_exit 
+:      019388 cmd_pair_passive:
+0x4d0f 019389 set0 op_inrand_req ,pdata 
+0x4d10 019390 store 1 ,mem_op 
+0x4d11 019391 call lmp_accept_inrand 
+0x4d12 019392 setarg 0 
+0x4d13 019393 setflag master ,smap_lmptid ,pdata 
+0x4d14 019394 store 1 ,mem_lmo_tid2 
+0x4d15 019395 branch cmd_exit 
+0x4d16 019396 rtn 
+:      019397 cmd_in_sniff:
+0x4d17 019398 jam lmp_sniff_req ,mem_lmo_opcode2 
+0x4d18 019399 arg mem_sniff_payload ,contw 
+0x4d19 019400 setarg 0 
+0x4d1a 019401 isolate1 27 ,clke_bt 
+0x4d1b 019402 setflag true ,1 ,pdata 
+0x4d1c 019403 istore 1 ,contw 
+0x4d1d 019404 setarg 0 
+0x4d1e 019405 istore 2 ,contw 
+0x4d1f 019406 fetch 2 ,mem_sniff_param_interval 
+0x4d20 019407 istore 2 ,contw 
+0x4d21 019408 fetch 1 ,mem_sniff_param_attempt 
+0x4d22 019409 istore 2 ,contw 
+0x4d23 019410 fetch 1 ,mem_sniff_param_timeout 
+0x4d24 019411 istore 2 ,contw 
+0x4d25 019412 branch cmd_exit 
+:      019414 cmd_exit_sniff:
+0x4d26 019415 jam lmp_unsniff_req ,mem_lmo_opcode2 
+0x4d27 019416 branch cmd_exit 
+:      019418 hci_idle_dispatch:
+0x4d28 019419 call gpio_check_uart_state 
+0x4d29 019420 rtn true 
+0x4d2a 019421 arg uart_wakeup_rx ,temp 
+0x4d2b 019422 call gpio_get_bit 
+0x4d2c 019423 nbranch uart_wake_up ,true 
+0x4d2d 019424 jam hci_rx_wake ,mem_hci_lt_rx_state 
+0x4d2e 019425 rtn 
+:      019426 uart_wake_up:
+0x4d2f 019427 fetch 1 ,mem_hci_lt_rx_state 
+0x4d30 019428 rtnne hci_rx_wake 
+0x4d31 019429 call hci_exit_lpm 
+0x4d32 019430 branch hci_send_commu_ready_event 
+:      019444 hid_rx_process:
+0x4d33 019445 bpatchx patch20_5 ,mem_patch20 
+0x4d34 019446 fetch 2 ,mem_l2cap_payload_ptr 
+0x4d35 019447 copy pdata ,contr 
+0x4d36 019448 ifetch 1 ,contr 
+0x4d37 019449 and pdata ,0x0f ,temp 
+0x4d38 019450 rshift4 pdata ,pdata 
+0x4d39 019451 beq hid_type_set_idle ,hid_rx_process_handshake 
+0x4d3a 019452 beq hid_type_set_protocol ,hid_rx_process_handshake 
+0x4d3b 019453 beq hid_type_data ,hid_rx_process_data 
+0x4d3c 019454 beq hid_type_set_report ,hid_rx_process_set_report 
+0x4d3d 019455 beq hid_type_control ,hid_rx_process_hid_control 
+0x4d3e 019456 rtn 
+:      019458 hid_rx_process_hid_control:
+0x4d3f 019459 copy temp ,pdata 
+0x4d40 019460 beq hid_control_p_virtualcableunplug ,hid_rx_process_virtual_cable_unplug 
+0x4d41 019461 beq hid_control_p_suspend ,hid_rx_process_suspend 
+0x4d42 019462 rtn 
+:      019464 hid_rx_process_virtual_cable_unplug:
+0x4d43 019465 jam bt_evt_virtual_cable_unplug ,mem_fifo_temp 
+0x4d44 019466 call ui_ipc_send_event 
+0x4d45 019467 fetch 1 ,mem_device_option 
+0x4d46 019468 rtnbit0 dvc_op_mouse 
+0x4d47 019469 copy temp ,pdata 
+0x4d48 019470 beq hid_control_p_virtualcableunplug ,mouse_irtual_cable_unplug 
+0x4d49 019471 rtn 
+:      019472 hid_rx_process_suspend:
+0x4d4a 019473 rtn 
+:      019475 hid_rx_process_set_report:
+0x4d4b 019476 call hid_rx_process_data 
+0x4d4c 019477 arg 0x01 ,rega 
+0x4d4d 019478 call hid_malloc_tx_buff 
+0x4d4e 019479 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4d4f 019480 istore 2 ,contw 
+0x4d50 019481 setarg 0x00 
+0x4d51 019482 istore 1 ,contw 
+0x4d52 019483 rtn 
+:      019485 hid_rx_process_handshake:
+0x4d53 019486 arg 1 ,rega 
+0x4d54 019487 call hid_malloc_tx_buff 
+0x4d55 019488 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4d56 019489 istore 2 ,contw 
+0x4d57 019490 setarg 0 
+0x4d58 019491 istore 1 ,contw 
+0x4d59 019492 jam 1 ,mem_ui_data_txbuff_length 
+0x4d5a 019493 fetch 1 ,mem_hid_control_state 
+0x4d5b 019494 set1 l2cap_channel_hid_handshake_done 
+0x4d5c 019495 store 1 ,mem_hid_control_state 
+0x4d5d 019496 jam bt_evt_hid_handshake ,mem_fifo_temp 
+0x4d5e 019497 branch ui_ipc_send_event 
+:      019499 hid_rx_process_data:
+0x4d5f 019500 ifetch 1 ,contr 
+0x4d60 019501 beq hid_report_id_kb ,hid_rx_process_data_hid_kb 
+0x4d61 019502 rtn 
+:      019504 hid_rx_process_data_hid_kb:
+0x4d62 019505 rtn 
+:      019508 hid_malloc_tx_buff:
+0x4d63 019509 call l2cap_malloc 
+0x4d64 019510 copy rega ,temp 
+0x4d65 019511 storet 1 ,mem_ui_data_txbuff_length 
+0x4d66 019512 copy pdata ,contw 
+0x4d67 019513 copy rega ,pdata 
+0x4d68 019514 istore 2 ,contw 
+0x4d69 019515 rtn 
+:      019532 l2cap_init:
+0x4d6a 019533 branch l2cap_init_wake ,wake 
+:      019534 l2cap_init_work:
+0x4d6b 019535 setarg mem_l2cap_xmem_end 
+0x4d6c 019536 arg mem_l2cap_xmem_start ,contw 
+0x4d6d 019537 isub contw ,loopcnt 
+0x4d6e 019538 call clear_mem 
+:      019539 l2cap_init_wake:
+0x4d6f 019540 bpatchx patch20_6 ,mem_patch20 
+0x4d70 019541 setarg mem_sdp_mem_end 
+0x4d71 019542 arg mem_sdp_mem_start ,contw 
+0x4d72 019543 isub contw ,loopcnt 
+0x4d73 019544 call clear_mem 
+0x4d74 019545 setarg mem_l2cap_mem_end 
+0x4d75 019546 arg mem_l2cap_mem_start ,contw 
+0x4d76 019547 isub contw ,loopcnt 
+0x4d77 019548 call clear_mem 
+0x4d78 019549 branch l2cap_lpm_load_txbuf 
+:      019551 process_rx_l2cap_pkt:
+0x4d79 019552 bpatchx patch20_7 ,mem_patch20 
+0x4d7a 019553 copy contr ,temp 
+0x4d7b 019556 copy temp ,contr 
+0x4d7c 019557 ifetch 2 ,contr 
+0x4d7d 019558 store 2 ,mem_l2cap_rx_pkt_length 
+0x4d7e 019559 ifetch 2 ,contr 
+0x4d7f 019560 store 2 ,mem_l2cap_rx_cid 
+0x4d80 019561 deposit contr 
+0x4d81 019562 store 2 ,mem_l2cap_payload_ptr 
+0x4d82 019563 fetch 1 ,memui_reconnect_mode 
+0x4d83 019564 beq no_reconnection ,l2cap_rx_multiplexing 
+0x4d84 019565 branch ml2cap_rx_multiplexing 
+:      019567 l2cap_rx_multiplexing:
+0x4d85 019568 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x4d86 019569 branch l2cap_rx_reset_state ,blank 
+0x4d87 019570 bpatchx patch21_0 ,mem_patch21 
+0x4d88 019571 fetch 1 ,mem_l2cap_rx_cid 
+0x4d89 019572 beq l2cap_signal_channel ,l2cap_call_proc_signal 
+:      019573 l2cap_rx_multiplexing0:
+0x4d8a 019574 beq l2cap_sdp_channel ,l2cap_call_proc_sdp 
+0x4d8b 019575 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
+0x4d8c 019576 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
+0x4d8d 019577 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
+0x4d8e 019578 branch l2cap_rx_reset_state 
+:      019580 l2cap_check_map:
+0x4d8f 019583 bpatchx patch21_1 ,mem_patch21 
+0x4d90 019584 call l2cap_malloc_get_full_map 
+0x4d91 019585 fetch 1 ,mem_used_map 
+0x4d92 019586 beq 0 ,set_pdata_0 
+0x4d93 019587 beq 1 ,set_pdata_0 
+0x4d94 019588 beq 2 ,set_pdata_0 
+0x4d95 019589 beq 3 ,set_pdata_0 
+0x4d96 019590 beq 0x81 ,set_pdata_0 
+0x4d97 019591 beq 0xc0 ,set_pdata_0 
+0x4d98 019592 beq 0x80 ,set_pdata_0 
+0x4d99 019593 beq 0x40 ,set_pdata_0 
+0x4d9a 019594 rtn 
+:      019596 set_pdata_0:
+0x4d9b 019597 setarg 0 
+0x4d9c 019598 rtn 
+:      019601 l2cap_call_proc_signal:
+0x4d9d 019602 call l2cap_check_map 
+0x4d9e 019603 nrtn blank 
+:      019604 l2cap_call_proc_signal0:
+0x4d9f 019605 call l2cap_malloc_signal_channel 
+0x4da0 019606 call l2cap_process_signal_pkt 
+0x4da1 019607 fetcht 2 ,mem_l2cap_signal_tx_length 
+0x4da2 019608 branch l2cap_call_proc_no_reply ,blank 
+0x4da3 019609 call l2cap_get_signal_tx_buff 
+0x4da4 019610 fetch 2 ,mem_l2cap_signal_tx_length 
+0x4da5 019611 istore 2 ,contw 
+0x4da6 019612 force l2cap_signal_channel ,pdata 
+0x4da7 019613 istore 2 ,contw 
+0x4da8 019614 branch l2cap_rx_reset_state 
+:      019616 l2cap_call_proc_sigal_pending:
+0x4da9 019617 fetch 1 ,mem_l2cap_pending_item 
+0x4daa 019618 rtn blank 
+0x4dab 019619 copy pdata ,rega 
+0x4dac 019620 bpatchx patch21_2 ,mem_patch21 
+0x4dad 019621 fetch 4 ,mem_l2cap_sdpres_delay_time 
+0x4dae 019622 arg 0x100 ,temp 
+0x4daf 019623 iadd temp ,temp 
+0x4db0 019624 copy clkn_bt ,pdata 
+0x4db1 019625 isub temp ,null 
+0x4db2 019626 nrtn positive 
+0x4db3 019627 jam 0 ,mem_l2cap_pending_item 
+0x4db4 019628 copy rega ,pdata 
+0x4db5 019629 beq l2cap_sdp_channel ,l2cap_sdp_conn_succ 
+0x4db6 019630 branch assert 
+:      019631 l2cap_sdp_conn_succ:
+0x4db7 019632 arg 0 ,debug 
+0x4db8 019633 call l2cap_malloc_signal_channel 
+0x4db9 019634 call restore_l2cap_req_param 
+0x4dba 019635 call l2cap_get_signal_tx_payload 
+0x4dbb 019636 call save_cont_pointers 
+0x4dbc 019637 call send_connection_sdp_res 
+0x4dbd 019638 call l2cap_get_signal_tx_buff 
+0x4dbe 019640 setarg 0x000c 
+0x4dbf 019641 istore 2 ,contw 
+0x4dc0 019642 force l2cap_signal_channel ,pdata 
+0x4dc1 019643 istore 2 ,contw 
+0x4dc2 019644 branch l2cap_rx_reset_state 
+:      019648 l2cap_reset_sdp_map:
+0x4dc3 019649 bpatchx patch21_3 ,mem_patch21 
+0x4dc4 019650 fetch 2 ,mem_sdp_tx_pkt_length 
+0x4dc5 019651 increase 4 ,pdata 
+0x4dc6 019652 rshift4 pdata ,pdata 
+0x4dc7 019653 rshift3 pdata ,pdata 
+0x4dc8 019654 add pdata ,1 ,temp 
+0x4dc9 019655 arg mem_tx_fifo3 ,contr 
+0x4dca 019656 ifetch 3 ,contr 
+0x4dcb 019657 rtn blank 
+0x4dcc 019658 store 3 ,mem_tx_fifo_map_temp 
+0x4dcd 019659 fetch 1 ,mem_tx_fifo_map_temp 
+0x4dce 019660 copy pdata ,rega 
+0x4dcf 019661 call check_l2cap_map 
+0x4dd0 019662 copy regb ,pdata 
+0x4dd1 019663 store 1 ,mem_tx_fifo3 
+0x4dd2 019664 rtn 
+:      019666 check_l2cap_map:
+0x4dd3 019667 arg 0 ,queue 
+0x4dd4 019668 arg 0 ,regb 
+:      019670 check_l2cap_map_loop:
+0x4dd5 019671 sub queue ,7 ,null 
+0x4dd6 019672 nrtn positive 
+0x4dd7 019673 qisolate1 rega 
+0x4dd8 019674 branch check_l2cap_map_used ,true 
+0x4dd9 019675 branch check_l2cap_map_used2 
+:      019677 check_l2cap_map_used:
+0x4dda 019678 copy temp ,pdata 
+0x4ddb 019679 branch check_l2cap_map_used2 ,blank 
+0x4ddc 019680 qset1 regb 
+0x4ddd 019681 increase -1 ,temp 
+:      019683 check_l2cap_map_used2:
+0x4dde 019684 increase 1 ,queue 
+0x4ddf 019685 branch check_l2cap_map_loop 
+:      019687 l2cap_call_proc_sdp:
+0x4de0 019688 call l2cap_malloc_is_fifo_empty 
+0x4de1 019689 nrtn blank 
+0x4de2 019690 call l2cap_check_map 
+0x4de3 019691 nrtn blank 
+0x4de4 019692 call l2cap_malloc_sdp_channel 
+0x4de5 019693 call sdp_process 
+0x4de6 019694 call l2cap_reset_sdp_map 
+0x4de7 019695 branch l2cap_call_proc_sdp_common 
+:      019698 ml2cap_call_proc_sdp:
+0x4de8 019699 call l2cap_malloc_is_fifo_empty 
+0x4de9 019700 nrtn blank 
+0x4dea 019701 call l2cap_malloc_sdp_channel 
+0x4deb 019702 call sdp_process 
+:      019703 l2cap_call_proc_sdp_common:
+0x4dec 019704 call l2cap_get_sdp_tx_buff 
+0x4ded 019705 fetch 2 ,mem_sdp_tx_pkt_length 
+0x4dee 019706 branch l2cap_call_proc_no_reply ,blank 
+0x4def 019707 istore 2 ,contw 
+0x4df0 019708 fetch 2 ,mem_sdp_remote_cid 
+0x4df1 019709 istore 2 ,contw 
+0x4df2 019710 branch l2cap_rx_reset_state 
+:      019712 l2cap_call_proc_hid:
+0x4df3 019713 call hid_rx_process 
+0x4df4 019714 branch l2cap_rx_reset_state 
+:      019716 l2cap_call_proc_rfcomm:
+0x4df5 019717 bpatchx patch21_4 ,mem_patch21 
+0x4df6 019718 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
+0x4df7 019719 call rfcomm_rx_process 
+0x4df8 019720 fetch 1 ,mem_rfcomm_malloc_fail_flag 
+0x4df9 019721 rtneq rfcomm_malloc_fail 
+0x4dfa 019722 branch l2cap_rx_reset_state 
+:      019723 l2cap_call_proc_no_reply:
+0x4dfb 019724 call l2cap_malloc_discard 
+:      019726 l2cap_rx_reset_state:
+0x4dfc 019727 setarg 0 
+0x4dfd 019728 store 2 ,mem_l2cap_rx_pkt_length 
+0x4dfe 019729 store 2 ,mem_l2cap_rx_cid 
+0x4dff 019730 jam l2cap_rx_done ,mem_l2cap_rx_done 
+0x4e00 019731 rtn 
+:      019733 l2cap_process_signal_pkt:
+0x4e01 019734 bpatchx patch21_5 ,mem_patch21 
+0x4e02 019735 call l2cap_get_signal_tx_payload 
+0x4e03 019736 force 0 ,regb 
+0x4e04 019737 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x4e05 019738 copy pdata ,regc 
+0x4e06 019739 fetch 2 ,mem_l2cap_payload_ptr 
+0x4e07 019740 iforce contr 
+:      019741 l2cap_process_signal_pkt_loop:
+0x4e08 019742 call l2cap_process_one_signal 
+0x4e09 019743 deposit regc 
+0x4e0a 019744 increase -4 ,regc 
+0x4e0b 019745 increase -4 ,pdata 
+0x4e0c 019746 nbranch l2cap_process_signal_pkt_loop ,blank 
+0x4e0d 019747 copy regb ,pdata 
+0x4e0e 019748 store 2 ,mem_l2cap_signal_tx_length 
+0x4e0f 019749 rtn 
+:      019751 l2cap_process_one_signal:
+0x4e10 019752 bpatchx patch21_6 ,mem_patch21 
+0x4e11 019753 ifetch 1 ,contr 
+0x4e12 019754 beq signal_cmd_reject ,l2cap_proc_signal_cmd_reject 
+0x4e13 019755 beq signal_connect_req ,l2cap_proc_signal_connect_req 
+0x4e14 019756 beq signal_connect_rsp ,l2cap_proc_signal_connect_rsp 
+0x4e15 019757 beq signal_config_req ,l2cap_proc_signal_config_req 
+0x4e16 019758 beq signal_config_rsp ,l2cap_proc_signal_config_rsp 
+0x4e17 019759 beq signal_disconnect_req ,l2cap_proc_signal_disconnect_req 
+0x4e18 019760 beq signal_disconnect_rsp ,l2cap_proc_signal_disconnect_rsp 
+0x4e19 019761 beq signal_echo_req ,l2cap_proc_signal_echo_req 
+0x4e1a 019762 beq signal_echo_rsp ,l2cap_proc_signal_echo_rsp 
+0x4e1b 019763 beq signal_info_req ,l2cap_proc_signal_info_req 
+0x4e1c 019764 beq signal_info_rsp ,l2cap_proc_signal_info_rsp 
+0x4e1d 019765 call l2cap_reject_command 
+:      019766 l2cap_process_one_signal_rtn:
+0x4e1e 019767 rtn 
+:      019769 l2cap_proc_signal_info_req:
+0x4e1f 019770 ifetch 1 ,contr 
+0x4e20 019771 copy pdata ,queue 
+0x4e21 019772 ifetch 2 ,contr 
+0x4e22 019773 copy pdata ,rega 
+0x4e23 019774 copy regc ,pdata 
+0x4e24 019775 isub rega ,regc 
+0x4e25 019776 setarg signal_info_rsp 
+0x4e26 019777 istore 1 ,contw 
+0x4e27 019778 copy queue ,pdata 
+0x4e28 019779 istore 1 ,contw 
+0x4e29 019780 ifetch 2 ,contr 
+:      019781 l2cap_proc_signal_info_req_reply:
+0x4e2a 019782 beq l2cap_sig_ext_featrue ,l2cap_proc_signal_info_req_ext 
+0x4e2b 019783 beq l2cap_sig_fix_featrue ,l2cap_proc_signal_info_req_fix 
+0x4e2c 019784 rtn 
+:      019785 l2cap_proc_signal_info_req_ext:
+0x4e2d 019786 setarg 0x020008 
+0x4e2e 019787 istore 6 ,contw 
+0x4e2f 019788 setarg 0x0280 
+0x4e30 019789 istore 4 ,contw 
+0x4e31 019790 force 12 ,pdata 
+0x4e32 019791 branch l2cap_proc_signal_info_req_common 
+:      019792 l2cap_proc_signal_info_req_fix:
+0x4e33 019793 setarg 0x3000c 
+0x4e34 019794 istore 6 ,contw 
+0x4e35 019795 setarg 0x0006 
+0x4e36 019796 istore 8 ,contw 
+0x4e37 019797 force 16 ,pdata 
+:      019798 l2cap_proc_signal_info_req_common:
+0x4e38 019799 iadd regb ,regb 
+0x4e39 019800 branch l2cap_process_one_signal_rtn 
+:      019802 ml2cap_proc_signal_info_req:
+0x4e3a 019803 ifetch 1 ,contr 
+0x4e3b 019804 copy pdata ,queue 
+0x4e3c 019805 ifetch 2 ,contr 
+0x4e3d 019806 copy pdata ,rega 
+0x4e3e 019807 ifetch 2 ,contr 
+0x4e3f 019808 store 2 ,mem_temp 
+0x4e40 019809 copy regc ,pdata 
+0x4e41 019810 isub rega ,regc 
+0x4e42 019811 call l2cap_get_signal_tx_payload 
+0x4e43 019812 setarg signal_info_rsp 
+0x4e44 019813 istore 1 ,contw 
+0x4e45 019814 copy queue ,pdata 
+0x4e46 019815 istore 1 ,contw 
+0x4e47 019816 fetch 2 ,mem_temp 
+0x4e48 019817 branch l2cap_proc_signal_info_req_reply 
+:      019821 l2cap_proc_signal_cmd_reject:
+0x4e49 019822 ifetch 1 ,contr 
+0x4e4a 019823 copy pdata ,queue 
+0x4e4b 019824 ifetch 2 ,contr 
+0x4e4c 019825 copy pdata ,rega 
+0x4e4d 019826 iadd contr ,contr 
+0x4e4e 019827 copy regc ,pdata 
+0x4e4f 019828 isub rega ,regc 
+:      019829 l2cap_proc_signal_cmd_reject_rtn:
+0x4e50 019830 branch l2cap_process_one_signal_rtn 
+:      019832 l2cap_proc_signal_connect_req:
+0x4e51 019833 call save_cont_pointers 
+0x4e52 019836 call load_cont_pointers 
+0x4e53 019837 arg 0 ,debug 
+0x4e54 019838 ifetch 1 ,contr 
+0x4e55 019839 copy pdata ,queue 
+0x4e56 019840 ifetch 2 ,contr 
+0x4e57 019841 copy pdata ,rega 
+0x4e58 019842 ifetch 2 ,contr 
+0x4e59 019843 copy pdata ,temp 
+0x4e5a 019844 ifetch 2 ,contr 
+0x4e5b 019845 copy pdata ,timeup 
+0x4e5c 019846 bpatchx patch21_7 ,mem_patch21 
+0x4e5d 019847 copy temp ,pdata 
+0x4e5e 019848 beq psm_sdp ,l2cap_proc_signal_connect_req_sdp 
+0x4e5f 019849 beq psm_rfcomm ,l2cap_proc_signal_connect_req_rfcomm 
+0x4e60 019850 beq psm_hid_control ,l2cap_proc_signal_connect_req_hid_ctrl 
+0x4e61 019851 beq psm_hid_interrupt ,l2cap_proc_signal_connect_req_hid_int 
+0x4e62 019852 call l2cap_reject_command 
+0x4e63 019853 branch l2cap_proc_signal_connect_req_rtn 
+:      019855 l2cap_proc_signal_connect_req_sdp:
+0x4e64 019856 call save_cont_pointers 
+0x4e65 019857 arg l2cap_sdp_channel ,temp 
+0x4e66 019858 fetch 2 ,mem_sdp_remote_cid 
+0x4e67 019859 nbranch already_connected ,blank 
+0x4e68 019860 copy timeup ,pdata 
+0x4e69 019861 store 2 ,mem_sdp_remote_cid 
+0x4e6a 019862 copy clkn_bt ,pdata 
+0x4e6b 019863 store 4 ,mem_l2cap_sdpres_delay_time 
+0x4e6c 019864 call store_l2cap_req_param 
+0x4e6d 019865 branch send_connection_pending 
+:      019867 store_l2cap_req_param:
+0x4e6e 019868 storet 2 ,mem_psm 
+0x4e6f 019869 deposit timeup 
+0x4e70 019870 store 2 ,mem_scid 
+0x4e71 019871 deposit rega 
+0x4e72 019872 store 2 ,mem_cmd_length 
+0x4e73 019873 deposit regb 
+0x4e74 019874 store 2 ,mem_tt2 
+0x4e75 019875 deposit regc 
+0x4e76 019876 store 2 ,mem_tt3 
+0x4e77 019877 deposit queue 
+0x4e78 019878 store 2 ,mem_id 
+0x4e79 019879 rtn 
+:      019881 restore_l2cap_req_param:
+0x4e7a 019882 fetcht 2 ,mem_psm 
+0x4e7b 019883 fetch 2 ,mem_scid 
+0x4e7c 019884 copy pdata ,timeup 
+0x4e7d 019885 fetch 2 ,mem_cmd_length 
+0x4e7e 019886 copy pdata ,rega 
+0x4e7f 019887 fetch 2 ,mem_tt2 
+0x4e80 019888 copy pdata ,regb 
+0x4e81 019889 fetch 2 ,mem_tt3 
+0x4e82 019890 copy pdata ,regc 
+0x4e83 019891 fetch 2 ,mem_id 
+0x4e84 019892 copy pdata ,queue 
+0x4e85 019893 rtn 
+:      019895 l2cap_proc_signal_connect_req_rfcomm:
+0x4e86 019896 call save_cont_pointers 
+0x4e87 019897 setarg l2cap_rfcomm_channel 
+0x4e88 019898 arg l2cap_rfcomm_channel ,temp 
+0x4e89 019899 fetch 2 ,mem_rfcomm_remote_cid 
+0x4e8a 019900 nbranch already_connected ,blank 
+0x4e8b 019901 copy timeup ,pdata 
+0x4e8c 019902 store 2 ,mem_rfcomm_remote_cid 
+0x4e8d 019903 fetch 1 ,mem_rfcomm_state 
+0x4e8e 019904 set1 l2cap_channel_state_conn_req ,pdata 
+0x4e8f 019905 set1 l2cap_channel_state_conn_res ,pdata 
+0x4e90 019906 store 1 ,mem_rfcomm_state 
+0x4e91 019907 branch send_connection_res 
+:      019908 l2cap_proc_signal_connect_req_hid_ctrl:
+0x4e92 019909 call save_cont_pointers 
+0x4e93 019910 arg l2cap_hid_control_channel ,temp 
+0x4e94 019911 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4e95 019912 nbranch already_connected ,blank 
+0x4e96 019913 copy timeup ,pdata 
+0x4e97 019914 store 2 ,mem_hid_ctrl_remote_cid 
+0x4e98 019915 fetch 1 ,mem_hid_control_state 
+0x4e99 019916 set1 l2cap_channel_state_conn_req ,pdata 
+0x4e9a 019917 set1 l2cap_channel_state_conn_res ,pdata 
+0x4e9b 019918 store 1 ,mem_hid_control_state 
+0x4e9c 019919 branch send_connection_res 
+:      019920 l2cap_proc_signal_connect_req_hid_int:
+0x4e9d 019921 call save_cont_pointers 
+0x4e9e 019922 deposit clke 
+0x4e9f 019923 arg l2cap_hid_interrupt_channel ,temp 
+0x4ea0 019924 fetch 2 ,mem_hid_int_remote_cid 
+0x4ea1 019925 nbranch already_connected ,blank 
+0x4ea2 019926 copy timeup ,pdata 
+0x4ea3 019927 store 2 ,mem_hid_int_remote_cid 
+0x4ea4 019928 fetch 1 ,mem_hid_interrupt_state 
+0x4ea5 019929 set1 l2cap_channel_state_conn_req ,pdata 
+0x4ea6 019930 set1 l2cap_channel_state_conn_res ,pdata 
+0x4ea7 019931 store 1 ,mem_hid_interrupt_state 
+0x4ea8 019932 branch send_connection_res 
+:      019934 send_connection_pending:
+0x4ea9 019935 setarg l2cap_connect_pending 
+0x4eaa 019936 store 2 ,meml2cap_t1 
+0x4eab 019937 jam l2cap_sdp_channel ,mem_l2cap_pending_item 
+0x4eac 019938 branch send_connection_res0 
+:      019939 send_connection_sdp_res:
+0x4ead 019940 fetch 1 ,mem_sdp_state 
+0x4eae 019941 set1 l2cap_channel_state_conn_req ,pdata 
+0x4eaf 019942 set1 l2cap_channel_state_conn_res ,pdata 
+0x4eb0 019943 store 1 ,mem_sdp_state 
+:      019944 send_connection_res:
+0x4eb1 019945 setarg l2cap_connect_successful 
+0x4eb2 019946 store 2 ,meml2cap_t1 
+:      019947 send_connection_res0:
+0x4eb3 019948 bpatchx patch22_0 ,mem_patch22 
+0x4eb4 019949 call load_cont_pointers 
+0x4eb5 019950 setarg signal_connect_rsp 
+0x4eb6 019951 istore 1 ,contw 
+0x4eb7 019952 copy queue ,pdata 
+0x4eb8 019953 istore 1 ,contw 
+0x4eb9 019954 setarg 0x0008 
+0x4eba 019955 istore 2 ,contw 
+0x4ebb 019956 copy temp ,pdata 
+0x4ebc 019957 istore 2 ,contw 
+0x4ebd 019958 copy timeup ,pdata 
+0x4ebe 019959 istore 2 ,contw 
+0x4ebf 019960 fetch 2 ,meml2cap_t1 
+0x4ec0 019961 beq l2cap_connect_pending ,connect_pending 
+0x4ec1 019962 isolate0 0 ,debug 
+0x4ec2 019963 branch connect_suc ,true 
+0x4ec3 019964 setarg l2cap_connect_refused_no_resources 
+:      019965 connect_suc:
+0x4ec4 019966 istore 2 ,contw 
+0x4ec5 019967 force 0x0000 ,pdata 
+0x4ec6 019968 istore 2 ,contw 
+0x4ec7 019969 setarg 12 
+0x4ec8 019970 branch connect_req_update_byte_counts 
+:      019971 connect_pending:
+0x4ec9 019972 istore 2 ,contw 
+0x4eca 019973 force 0x0002 ,pdata 
+0x4ecb 019974 istore 2 ,contw 
+0x4ecc 019975 setarg 12 
+0x4ecd 019976 branch connect_req_update_byte_counts 
+:      019978 already_connected:
+0x4ece 019979 set1 0 ,debug 
+0x4ecf 019980 branch send_connection_res 
+:      019981 connect_req_update_byte_counts:
+0x4ed0 019982 iadd regb ,regb 
+0x4ed1 019983 copy regc ,pdata 
+0x4ed2 019984 isub rega ,regc 
+0x4ed3 019985 branch l2cap_proc_signal_connect_req_rtn 
+:      019986 l2cap_proc_signal_connect_req_rtn:
+0x4ed4 019987 branch l2cap_process_one_signal_rtn 
+:      019989 l2cap_proc_signal_connect_rsp:
+0x4ed5 019990 ifetch 1 ,contr 
+0x4ed6 019991 copy pdata ,queue 
+0x4ed7 019992 ifetch 2 ,contr 
+0x4ed8 019993 copy pdata ,rega 
+0x4ed9 019994 copy regc ,pdata 
+0x4eda 019995 isub rega ,regc 
+0x4edb 019996 ifetch 2 ,contr 
+0x4edc 019997 copy pdata ,timeup 
+0x4edd 019998 ifetch 2 ,contr 
+0x4ede 019999 copy pdata ,temp 
+0x4edf 020000 bpatchx patch22_1 ,mem_patch22 
+0x4ee0 020001 setarg l2cap_sdp_channel 
+0x4ee1 020002 isub temp ,null 
+0x4ee2 020003 branch l2cap_proc_signal_connect_rsp_sdp ,zero 
+0x4ee3 020004 setarg l2cap_rfcomm_channel 
+0x4ee4 020005 isub temp ,null 
+0x4ee5 020006 branch l2cap_proc_signal_connect_rsp_rfcomm ,zero 
+0x4ee6 020007 setarg l2cap_hid_control_channel 
+0x4ee7 020008 isub temp ,null 
+0x4ee8 020009 branch l2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
+0x4ee9 020010 setarg l2cap_hid_interrupt_channel 
+0x4eea 020011 isub temp ,null 
+0x4eeb 020012 branch l2cap_proc_signal_connect_rsp_hid_int ,zero 
+0x4eec 020013 rtn 
+:      020015 l2cap_proc_signal_connect_rsp_sdp:
+0x4eed 020016 copy timeup ,pdata 
+0x4eee 020017 store 2 ,mem_sdp_remote_cid 
+0x4eef 020018 fetch 1 ,mem_sdp_state 
+0x4ef0 020019 set1 l2cap_channel_state_conn_res ,pdata 
+0x4ef1 020020 store 1 ,mem_sdp_state 
+0x4ef2 020021 branch l2cap_process_one_signal_rtn 
+:      020022 l2cap_proc_signal_connect_rsp_rfcomm:
+0x4ef3 020023 copy timeup ,pdata 
+0x4ef4 020024 store 2 ,mem_rfcomm_remote_cid 
+0x4ef5 020025 fetch 1 ,mem_rfcomm_state 
+0x4ef6 020026 set1 l2cap_channel_state_conn_res ,pdata 
+0x4ef7 020027 store 1 ,mem_rfcomm_state 
+0x4ef8 020028 rtn 
+:      020029 l2cap_proc_signal_connect_rsp_hid_int:
+0x4ef9 020030 copy timeup ,pdata 
+0x4efa 020031 store 2 ,mem_hid_ctrl_remote_cid 
+0x4efb 020032 fetch 1 ,mem_hid_interrupt_state 
+0x4efc 020033 set1 l2cap_channel_state_conn_res ,pdata 
+0x4efd 020034 store 1 ,mem_hid_interrupt_state 
+0x4efe 020035 rtn 
+:      020036 l2cap_proc_signal_connect_rsp_hid_ctrl:
+0x4eff 020037 copy timeup ,pdata 
+0x4f00 020038 store 2 ,mem_hid_int_remote_cid 
+0x4f01 020039 fetch 1 ,mem_hid_control_state 
+0x4f02 020040 set1 l2cap_channel_state_conn_res ,pdata 
+0x4f03 020041 store 1 ,mem_hid_control_state 
+0x4f04 020042 rtn 
+:      020044 l2cap_proc_signal_config_req:
+0x4f05 020045 ifetch 1 ,contr 
+0x4f06 020046 copy pdata ,queue 
+0x4f07 020047 ifetch 2 ,contr 
+0x4f08 020048 copy pdata ,rega 
+0x4f09 020049 copy regc ,pdata 
+0x4f0a 020050 isub rega ,regc 
+0x4f0b 020051 ifetch 2 ,contr 
+0x4f0c 020052 copy pdata ,temp 
+0x4f0d 020053 copy temp ,rega 
+0x4f0e 020054 bpatchx patch22_2 ,mem_patch22 
+0x4f0f 020055 setarg l2cap_sdp_channel 
+0x4f10 020056 isub temp ,null 
+0x4f11 020057 branch l2cap_proc_signal_config_req_sdp ,zero 
+0x4f12 020058 setarg l2cap_rfcomm_channel 
+0x4f13 020059 isub temp ,null 
+0x4f14 020060 branch l2cap_proc_signal_config_req_rfcomm ,zero 
+0x4f15 020061 setarg l2cap_hid_control_channel 
+0x4f16 020062 isub temp ,null 
+0x4f17 020063 branch l2cap_proc_signal_config_req_hid_ctrl ,zero 
+0x4f18 020064 setarg l2cap_hid_interrupt_channel 
+0x4f19 020065 isub temp ,null 
+0x4f1a 020066 branch l2cap_proc_signal_config_req_hid_int ,zero 
+0x4f1b 020067 branch l2cap_reject_command 
+:      020069 l2cap_proc_signal_config_req_sdp:
+0x4f1c 020070 copy contw ,timeup 
+0x4f1d 020071 fetch 1 ,mem_sdp_state 
+0x4f1e 020072 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f1f 020073 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f20 020075 store 1 ,mem_sdp_state 
+0x4f21 020076 copy timeup ,contw 
+0x4f22 020077 arg l2cap_sdp_channel ,timeup 
+0x4f23 020078 fetch 2 ,mem_sdp_remote_cid 
+0x4f24 020079 copy pdata ,temp 
+0x4f25 020080 branch l2cap_send_config_rsp 
+:      020081 l2cap_proc_signal_config_req_hid_ctrl:
+0x4f26 020082 copy contw ,timeup 
+0x4f27 020083 fetch 1 ,mem_hid_control_state 
+0x4f28 020084 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f29 020085 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f2a 020087 store 1 ,mem_hid_control_state 
+0x4f2b 020088 copy timeup ,contw 
+0x4f2c 020089 arg l2cap_hid_control_channel ,timeup 
+0x4f2d 020090 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4f2e 020091 copy pdata ,temp 
+0x4f2f 020092 branch l2cap_send_config_rsp 
+:      020093 l2cap_proc_signal_config_req_hid_int:
+0x4f30 020094 copy contw ,timeup 
+0x4f31 020095 fetch 1 ,mem_hid_interrupt_state 
+0x4f32 020096 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f33 020097 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f34 020099 store 1 ,mem_hid_interrupt_state 
+0x4f35 020100 copy timeup ,contw 
+0x4f36 020101 arg l2cap_hid_interrupt_channel ,timeup 
+0x4f37 020102 fetch 2 ,mem_hid_int_remote_cid 
+0x4f38 020103 copy pdata ,temp 
+0x4f39 020104 branch l2cap_send_config_rsp 
+:      020105 l2cap_proc_signal_config_req_rfcomm:
+0x4f3a 020106 copy contw ,timeup 
+0x4f3b 020107 fetch 1 ,mem_rfcomm_state 
+0x4f3c 020108 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f3d 020109 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f3e 020111 store 1 ,mem_rfcomm_state 
+0x4f3f 020113 copy timeup ,contw 
+0x4f40 020114 arg l2cap_rfcomm_channel ,timeup 
+0x4f41 020115 fetch 2 ,mem_rfcomm_remote_cid 
+0x4f42 020116 copy pdata ,temp 
+:      020117 l2cap_send_config_rsp:
+0x4f43 020118 bpatchx patch22_3 ,mem_patch22 
+0x4f44 020119 setarg signal_config_rsp 
+0x4f45 020120 istore 1 ,contw 
+0x4f46 020121 copy queue ,pdata 
+0x4f47 020122 istore 1 ,contw 
+0x4f48 020123 setarg 0x0006 
+0x4f49 020124 istore 2 ,contw 
+0x4f4a 020125 copy temp ,pdata 
+0x4f4b 020126 istore 2 ,contw 
+0x4f4c 020127 force 0x00 ,pdata 
+0x4f4d 020128 istore 2 ,contw 
+0x4f4e 020129 force l2cap_config_success ,pdata 
+0x4f4f 020130 istore 2 ,contw 
+0x4f50 020131 force 10 ,pdata 
+0x4f51 020132 iadd regb ,regb 
+0x4f52 020134 storet 2 ,mem_config_req_dest_cid 
+0x4f53 020135 copy queue ,pdata 
+0x4f54 020136 store 1 ,mem_config_identifier 
+0x4f55 020137 force l2cap_sdp_channel ,pdata 
+0x4f56 020138 icompare 0xff ,timeup 
+0x4f57 020139 branch l2cap_send_config_rsp_is_sdp ,true 
+0x4f58 020140 increase 1 ,pdata 
+:      020141 l2cap_send_config_rsp_is_sdp:
+0x4f59 020143 rtn 
+:      020144 l2cap_check_channel_state:
+0x4f5a 020145 disable user 
+0x4f5b 020146 rtnbit1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x4f5c 020147 rtnbit0 l2cap_channel_state_conn_req ,pdata 
+0x4f5d 020148 rtnbit0 l2cap_channel_state_conn_res ,pdata 
+0x4f5e 020149 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x4f5f 020150 copy contr ,contw 
+0x4f60 020151 increase -1 ,contw 
+0x4f61 020152 istore 1 ,contw 
+0x4f62 020153 enable user 
+0x4f63 020154 rtn 
+:      020155 l2cap_send_config_req:
+:      020156 l2cap_send_config_req_sdp:
+0x4f64 020157 fetch 1 ,mem_sdp_state 
+0x4f65 020158 call l2cap_check_channel_state 
+0x4f66 020159 nbranch l2cap_send_config_req_rfcomm ,user 
+0x4f67 020160 jam l2cap_sdp_channel ,mem_send_config_req 
+0x4f68 020161 fetch 2 ,mem_sdp_remote_cid 
+0x4f69 020162 store 2 ,mem_config_req_dest_cid 
+0x4f6a 020163 branch l2cap_generate_config_req 
+:      020164 l2cap_send_config_req_rfcomm:
+0x4f6b 020165 fetch 1 ,mem_rfcomm_state 
+0x4f6c 020166 call l2cap_check_channel_state 
+0x4f6d 020167 nbranch l2cap_send_config_req_hid_ctrl ,user 
+0x4f6e 020168 jam l2cap_rfcomm_channel ,mem_send_config_req 
+0x4f6f 020169 fetch 2 ,mem_rfcomm_remote_cid 
+0x4f70 020170 store 2 ,mem_config_req_dest_cid 
+0x4f71 020171 branch l2cap_generate_config_req 
+:      020172 l2cap_send_config_req_hid_ctrl:
+0x4f72 020173 fetch 1 ,mem_hid_control_state 
+0x4f73 020174 call l2cap_check_channel_state 
+0x4f74 020175 nbranch l2cap_send_config_req_hid_int ,user 
+0x4f75 020176 jam l2cap_hid_control_channel ,mem_send_config_req 
+0x4f76 020177 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4f77 020178 store 2 ,mem_config_req_dest_cid 
+0x4f78 020179 branch l2cap_generate_config_req 
+:      020180 l2cap_send_config_req_hid_int:
+0x4f79 020181 fetch 1 ,mem_hid_interrupt_state 
+0x4f7a 020182 call l2cap_check_channel_state 
+0x4f7b 020183 nrtn user 
+0x4f7c 020184 jam l2cap_hid_interrupt_channel ,mem_send_config_req 
+0x4f7d 020185 fetch 2 ,mem_hid_int_remote_cid 
+0x4f7e 020186 store 2 ,mem_config_req_dest_cid 
+:      020189 l2cap_generate_config_req:
+0x4f7f 020190 bpatchx patch22_4 ,mem_patch22 
+0x4f80 020191 call l2cap_get_req_id 
+0x4f81 020192 call l2cap_malloc_signal_channel 
+0x4f82 020193 force 0 ,regb 
+0x4f83 020194 call l2cap_get_signal_tx_payload 
+0x4f84 020195 force signal_config_req ,pdata 
+0x4f85 020196 istore 1 ,contw 
+0x4f86 020197 fetch 1 ,mem_ml2cap_comm_id 
+0x4f87 020198 istore 1 ,contw 
+0x4f88 020199 setarg 0x0008 
+0x4f89 020200 istore 2 ,contw 
+0x4f8a 020201 fetch 2 ,mem_config_req_dest_cid 
+0x4f8b 020202 istore 2 ,contw 
+0x4f8c 020203 setarg 0x0000 
+0x4f8d 020204 istore 2 ,contw 
+0x4f8e 020205 force 1 ,pdata 
+0x4f8f 020206 istore 1 ,contw 
+0x4f90 020207 force 2 ,pdata 
+0x4f91 020208 istore 1 ,contw 
+0x4f92 020209 fetch 1 ,mem_send_config_req 
+0x4f93 020210 beq l2cap_rfcomm_channel ,l2cap_generate_config_req_rfcomm 
+0x4f94 020211 setarg l2cap_config_mtu_sdp 
+0x4f95 020212 istore 2 ,contw 
+0x4f96 020213 branch l2cap_generate_config_req_done 
+:      020214 l2cap_generate_config_req_rfcomm:
+0x4f97 020215 setarg l2cap_config_mtu_rfcomm 
+0x4f98 020216 istore 2 ,contw 
+:      020217 l2cap_generate_config_req_done:
+0x4f99 020218 arg 0x0c ,temp 
+0x4f9a 020219 storet 2 ,mem_l2cap_signal_tx_length 
+0x4f9b 020220 call l2cap_get_signal_tx_buff 
+0x4f9c 020221 fetch 2 ,mem_l2cap_signal_tx_length 
+0x4f9d 020222 istore 2 ,contw 
+0x4f9e 020223 force l2cap_signal_channel ,pdata 
+0x4f9f 020224 istore 2 ,contw 
+0x4fa0 020225 jam 0 ,mem_send_config_req 
+:      020226 l2cap_proc_signal_config_req_rtn:
+0x4fa1 020227 branch l2cap_process_one_signal_rtn 
+:      020229 l2cap_proc_signal_config_rsp:
+0x4fa2 020230 increase 1 ,contr 
+0x4fa3 020231 ifetch 2 ,contr 
+0x4fa4 020232 copy pdata ,rega 
+0x4fa5 020233 copy regc ,pdata 
+0x4fa6 020234 isub rega ,regc 
+0x4fa7 020235 ifetch 2 ,contr 
+0x4fa8 020236 copy pdata ,rega 
+0x4fa9 020237 bpatchx patch22_5 ,mem_patch22 
+0x4faa 020238 setarg l2cap_sdp_channel 
+0x4fab 020239 isub rega ,null 
+0x4fac 020240 branch l2cap_proc_signal_config_rsp_sdp ,zero 
+0x4fad 020241 setarg l2cap_rfcomm_channel 
+0x4fae 020242 isub rega ,null 
+0x4faf 020243 branch l2cap_proc_signal_config_rsp_rfcomm ,zero 
+0x4fb0 020244 setarg l2cap_hid_control_channel 
+0x4fb1 020245 isub rega ,null 
+0x4fb2 020246 branch l2cap_proc_signal_config_rsp_hid_ctrl ,zero 
+0x4fb3 020247 setarg l2cap_hid_interrupt_channel 
+0x4fb4 020248 isub rega ,null 
+0x4fb5 020249 branch l2cap_proc_signal_config_rsp_hid_int ,zero 
+0x4fb6 020250 increase 2 ,contr 
+0x4fb7 020251 ifetch 2 ,contr 
+0x4fb8 020252 iforce null 
+0x4fb9 020253 branch l2cap_process_one_signal_rtn 
+:      020254 l2cap_proc_signal_config_rsp_sdp:
+0x4fba 020255 fetch 1 ,mem_sdp_state 
+0x4fbb 020256 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fbc 020257 store 1 ,mem_sdp_state 
+0x4fbd 020258 branch l2cap_process_one_signal_rtn 
+:      020259 l2cap_proc_signal_config_rsp_rfcomm:
+0x4fbe 020260 fetch 1 ,mem_rfcomm_state 
+0x4fbf 020261 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fc0 020262 store 1 ,mem_rfcomm_state 
+0x4fc1 020263 branch l2cap_process_one_signal_rtn 
+:      020264 l2cap_proc_signal_config_rsp_hid_ctrl:
+0x4fc2 020265 fetch 1 ,mem_hid_control_state 
+0x4fc3 020266 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fc4 020267 store 1 ,mem_hid_control_state 
+0x4fc5 020268 branch l2cap_process_one_signal_rtn 
+:      020269 l2cap_proc_signal_config_rsp_hid_int:
+0x4fc6 020270 fetch 1 ,mem_hid_interrupt_state 
+0x4fc7 020271 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fc8 020272 store 1 ,mem_hid_interrupt_state 
+0x4fc9 020273 jam bt_evt_hid_connected ,mem_fifo_temp 
+0x4fca 020274 branch ui_ipc_send_event 
+:      020278 l2cap_proc_signal_disconnect_req:
+0x4fcb 020279 ifetch 1 ,contr 
+0x4fcc 020280 copy pdata ,queue 
+0x4fcd 020281 ifetch 2 ,contr 
+0x4fce 020282 copy pdata ,rega 
+0x4fcf 020283 copy regc ,pdata 
+0x4fd0 020284 isub rega ,regc 
+0x4fd1 020285 ifetch 2 ,contr 
+0x4fd2 020286 copy pdata ,rega 
+0x4fd3 020287 ifetch 2 ,contr 
+0x4fd4 020288 copy pdata ,timeup 
+0x4fd5 020289 copy rega ,temp 
+0x4fd6 020290 call save_cont_pointers 
+0x4fd7 020291 bpatchx patch22_6 ,mem_patch22 
+0x4fd8 020292 setarg l2cap_sdp_channel 
+0x4fd9 020293 isub temp ,null 
+0x4fda 020294 branch l2cap_proc_signal_disconnect_req_sdp ,zero 
+0x4fdb 020295 setarg l2cap_rfcomm_channel 
+0x4fdc 020296 isub temp ,null 
+0x4fdd 020297 branch l2cap_proc_signal_disconnect_req_rfcomm ,zero 
+0x4fde 020298 setarg l2cap_hid_control_channel 
+0x4fdf 020299 isub temp ,null 
+0x4fe0 020300 branch l2cap_proc_signal_disconnect_req_hid_ctrl ,zero 
+0x4fe1 020301 setarg l2cap_hid_interrupt_channel 
+0x4fe2 020302 isub temp ,null 
+0x4fe3 020303 branch l2cap_proc_signal_disconnect_req_hid_int ,zero 
+0x4fe4 020304 call l2cap_reject_command 
+0x4fe5 020305 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020306 l2cap_proc_signal_disconnect_req_hid_ctrl:
+0x4fe6 020307 copy timeup ,temp 
+0x4fe7 020308 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4fe8 020309 isub temp ,null 
+0x4fe9 020310 branch l2cap_disconnect_hid_control_now ,zero 
+0x4fea 020311 call l2cap_reject_command 
+0x4feb 020312 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020313 l2cap_proc_signal_disconnect_req_hid_int:
+0x4fec 020314 copy timeup ,temp 
+0x4fed 020315 fetch 2 ,mem_hid_int_remote_cid 
+0x4fee 020316 isub temp ,null 
+0x4fef 020317 branch l2cap_disconnect_hid_interrupt_now ,zero 
+0x4ff0 020318 call l2cap_reject_command 
+0x4ff1 020319 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020321 l2cap_proc_signal_disconnect_req_sdp:
+0x4ff2 020322 copy timeup ,temp 
+0x4ff3 020323 fetch 2 ,mem_sdp_remote_cid 
+0x4ff4 020324 isub temp ,null 
+0x4ff5 020325 branch l2cap_disconnect_sdp_now ,zero 
+0x4ff6 020326 call l2cap_reject_command 
+0x4ff7 020327 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020328 l2cap_disconnect_hid_control_now:
+0x4ff8 020329 call l2cap_reset_hid_ctrl_state 
+0x4ff9 020330 branch l2cap_send_disconnect_rsp_pkt 
+:      020331 l2cap_disconnect_hid_interrupt_now:
+0x4ffa 020332 call l2cap_reset_hid_int_state 
+0x4ffb 020333 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4ffc 020334 branch l2cap_send_disconnect_rsp_pkt ,blank 
+0x4ffd 020342 branch l2cap_send_disconnect_rsp_pkt 
+:      020344 l2cap_disconnect_sdp_now:
+0x4ffe 020345 call l2cap_reset_sdp_channel_state 
+0x4fff 020346 fetch 1 ,mem_upper_sm_ss 
+0x5000 020347 nbranch l2cap_send_disconnect_rsp_pkt ,blank 
+0x5001 020350 branch l2cap_send_disconnect_rsp_pkt 
+:      020351 l2cap_proc_signal_disconnect_req_rfcomm:
+0x5002 020352 copy timeup ,temp 
+0x5003 020353 fetch 2 ,mem_rfcomm_remote_cid 
+0x5004 020354 isub temp ,null 
+0x5005 020355 branch l2cap_disconnect_rfcomm_now ,zero 
+0x5006 020356 call l2cap_reject_command 
+0x5007 020357 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020358 l2cap_disconnect_rfcomm_now:
+0x5008 020359 call l2cap_reset_rfcomm_channel_state 
+0x5009 020360 branch l2cap_send_disconnect_rsp_pkt 
+:      020361 l2cap_send_disconnect_rsp_pkt:
+0x500a 020362 call load_cont_pointers 
+0x500b 020363 setarg signal_disconnect_rsp 
+0x500c 020364 istore 1 ,contw 
+0x500d 020365 copy queue ,pdata 
+0x500e 020366 istore 1 ,contw 
+0x500f 020367 setarg 0x0004 
+0x5010 020368 istore 2 ,contw 
+0x5011 020369 copy rega ,pdata 
+0x5012 020370 istore 2 ,contw 
+0x5013 020371 copy timeup ,pdata 
+0x5014 020372 istore 2 ,contw 
+0x5015 020373 force 8 ,pdata 
+0x5016 020374 branch l2cap_proc_signal_disconnect_req_rtn 
+:      020375 l2cap_proc_signal_disconnect_req_err_rtn:
+0x5017 020376 call load_cont_pointers 
+0x5018 020377 branch l2cap_proc_signal_disconnect_req_rtn 
+:      020378 l2cap_proc_signal_disconnect_req_rtn:
+0x5019 020379 iadd regb ,regb 
+0x501a 020380 branch l2cap_process_one_signal_rtn 
+:      020381 l2cap_proc_signal_disconnect_rsp:
+0x501b 020382 ifetch 1 ,contr 
+0x501c 020383 copy pdata ,queue 
+0x501d 020384 ifetch 2 ,contr 
+0x501e 020385 copy pdata ,rega 
+0x501f 020386 copy regc ,pdata 
+0x5020 020387 isub rega ,regc 
+0x5021 020388 ifetch 2 ,contr 
+0x5022 020389 copy pdata ,timeup 
+0x5023 020390 ifetch 2 ,contr 
+0x5024 020391 copy pdata ,temp 
+0x5025 020392 call save_cont_pointers 
+0x5026 020393 bpatchx patch22_7 ,mem_patch22 
+0x5027 020394 setarg l2cap_sdp_channel 
+0x5028 020395 isub temp ,null 
+0x5029 020396 branch l2cap_proc_signal_disconnect_rsp_sdp ,zero 
+0x502a 020397 setarg l2cap_rfcomm_channel 
+0x502b 020398 isub temp ,null 
+0x502c 020399 branch l2cap_proc_signal_disconnect_rsp_rfcomm ,zero 
+0x502d 020400 setarg l2cap_hid_control_channel 
+0x502e 020401 isub temp ,null 
+0x502f 020402 branch l2cap_proc_signal_disconnect_rsp_hid_ctrl ,zero 
+0x5030 020403 setarg l2cap_hid_interrupt_channel 
+0x5031 020404 isub temp ,null 
+0x5032 020405 branch l2cap_proc_signal_disconnect_rsp_hid_int ,zero 
+0x5033 020406 call l2cap_reject_command 
+0x5034 020407 branch l2cap_proc_signal_disconnect_rsp_err_rtn 
+:      020408 l2cap_proc_signal_disconnect_rsp_sdp:
+0x5035 020409 copy temp ,rega 
+0x5036 020410 copy timeup ,temp 
+0x5037 020411 fetch 2 ,mem_sdp_remote_cid 
+0x5038 020412 isub temp ,null 
+0x5039 020413 call l2cap_reset_sdp_channel_state ,zero 
+0x503a 020414 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020415 l2cap_proc_signal_disconnect_rsp_rfcomm:
+0x503b 020416 copy temp ,rega 
+0x503c 020417 copy timeup ,temp 
+0x503d 020418 fetch 2 ,mem_rfcomm_remote_cid 
+0x503e 020419 isub temp ,null 
+0x503f 020420 call l2cap_reset_rfcomm_channel_state ,zero 
+0x5040 020421 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020422 l2cap_proc_signal_disconnect_rsp_hid_ctrl:
+0x5041 020423 copy temp ,rega 
+0x5042 020424 copy timeup ,temp 
+0x5043 020425 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x5044 020426 isub temp ,null 
+0x5045 020427 call l2cap_reset_hid_ctrl_state ,zero 
+0x5046 020428 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020429 l2cap_proc_signal_disconnect_rsp_hid_int:
+0x5047 020430 copy temp ,rega 
+0x5048 020431 copy timeup ,temp 
+0x5049 020432 fetch 2 ,mem_hid_int_remote_cid 
+0x504a 020433 isub temp ,null 
+0x504b 020434 call l2cap_reset_hid_int_state ,zero 
+0x504c 020435 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020436 l2cap_proc_signal_disconnect_rsp_rtn:
+0x504d 020437 call load_cont_pointers 
+0x504e 020438 branch l2cap_process_one_signal_rtn 
+:      020439 l2cap_proc_signal_disconnect_rsp_err_rtn:
+0x504f 020440 branch l2cap_process_one_signal_rtn 
+:      020443 l2cap_proc_signal_echo_req:
+0x5050 020444 ifetch 1 ,contr 
+0x5051 020445 copy pdata ,queue 
+0x5052 020446 ifetch 2 ,contr 
+0x5053 020447 copy pdata ,rega 
+0x5054 020448 iadd contr ,contr 
+0x5055 020449 setarg 9 
+0x5056 020450 istore 1 ,contw 
+0x5057 020451 copy queue ,pdata 
+0x5058 020452 istore 1 ,contw 
+0x5059 020453 force 0x0000 ,pdata 
+0x505a 020454 istore 2 ,contw 
+0x505b 020455 force 4 ,pdata 
+0x505c 020456 iadd regb ,regb 
+0x505d 020457 copy regc ,pdata 
+0x505e 020458 isub rega ,regc 
+0x505f 020459 branch l2cap_process_one_signal_rtn 
+:      020460 l2cap_proc_signal_echo_rsp:
+0x5060 020461 branch l2cap_process_one_signal_rtn 
+:      020463 l2cap_proc_signal_info_rsp:
+0x5061 020464 branch l2cap_process_one_signal_rtn 
+:      020465 l2cap_reject_command:
+0x5062 020466 force 0 ,regb 
+0x5063 020467 call l2cap_get_signal_tx_payload 
+0x5064 020468 setarg signal_cmd_reject 
+0x5065 020469 istore 1 ,contw 
+0x5066 020470 copy queue ,pdata 
+0x5067 020471 istore 1 ,contw 
+0x5068 020472 setarg 2 
+0x5069 020473 istore 2 ,contw 
+0x506a 020474 setarg cmd_not_understood 
+0x506b 020475 istore 2 ,contw 
+0x506c 020476 increase 6 ,regb 
+0x506d 020477 arg 4 ,regc 
+0x506e 020478 branch l2cap_process_one_signal_rtn 
+:      020482 l2cap_reset_rfcomm_channel_state:
+0x506f 020483 setarg 0 
+0x5070 020484 store 2 ,mem_rfcomm_tx_pkt_length 
+0x5071 020485 store 2 ,mem_rfcomm_remote_cid 
+0x5072 020486 jam 0 ,mem_rfcomm_state 
+0x5073 020487 rtn 
+:      020488 l2cap_reset_sdp_channel_state:
+0x5074 020489 setarg 0 
+0x5075 020490 store 2 ,mem_sdp_tx_pkt_length 
+0x5076 020491 store 2 ,mem_sdp_remote_cid 
+0x5077 020492 jam 0 ,mem_sdp_state 
+0x5078 020493 rtn 
+:      020494 l2cap_reset_hid_ctrl_state:
+0x5079 020495 setarg 0 
+0x507a 020496 store 2 ,mem_hid_ctrl_remote_cid 
+0x507b 020497 jam 0 ,mem_hid_control_state 
+0x507c 020498 fetch 1 ,mem_hid_interrupt_state 
+0x507d 020499 beq 0 ,l2cap_reset_hid_disconnected 
+0x507e 020500 rtn 
+:      020502 l2cap_reset_hid_int_state:
+0x507f 020503 setarg 0 
+0x5080 020504 store 2 ,mem_hid_int_remote_cid 
+0x5081 020505 jam 0 ,mem_hid_interrupt_state 
+0x5082 020506 fetch 1 ,mem_hid_control_state 
+0x5083 020507 beq 0 ,l2cap_reset_hid_disconnected 
+0x5084 020508 rtn 
+:      020510 l2cap_reset_hid_disconnected:
+0x5085 020511 jam bt_evt_hid_disconnected ,mem_fifo_temp 
+0x5086 020512 branch ui_ipc_send_event 
+:      020514 l2cap_disconnect_interrupt_req:
+0x5087 020515 fetch 1 ,mem_control_tasks 
+0x5088 020516 set0 l2cap_disconnect_interrupt ,pdata 
+0x5089 020517 store 1 ,mem_control_tasks 
+0x508a 020518 fetch 2 ,mem_hid_int_remote_cid 
+0x508b 020519 rtn blank 
+0x508c 020520 call l2cap_malloc_signal_channel 
+0x508d 020521 fetch 2 ,mem_hid_int_remote_cid 
+0x508e 020522 copy pdata ,rega 
+0x508f 020523 force l2cap_hid_interrupt_channel ,regb 
+0x5090 020524 branch l2cap_generate_disconnect_req 
+:      020525 l2cap_disconnect_control_req:
+0x5091 020526 fetch 1 ,mem_control_tasks 
+0x5092 020527 set0 l2cap_disconnect_control ,pdata 
+0x5093 020528 store 1 ,mem_control_tasks 
+0x5094 020529 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x5095 020530 rtn blank 
+0x5096 020531 call l2cap_malloc_signal_channel 
+0x5097 020532 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x5098 020533 copy pdata ,rega 
+0x5099 020534 force l2cap_hid_control_channel ,regb 
+:      020535 l2cap_generate_disconnect_req:
+0x509a 020536 call l2cap_get_req_id 
+0x509b 020537 call l2cap_get_signal_tx_payload 
+0x509c 020538 force signal_disconnect_req ,pdata 
+0x509d 020539 istore 1 ,contw 
+0x509e 020540 fetch 1 ,mem_ml2cap_comm_id 
+0x509f 020541 istore 1 ,contw 
+0x50a0 020542 setarg 0x0004 
+0x50a1 020543 istore 2 ,contw 
+0x50a2 020544 copy rega ,pdata 
+0x50a3 020545 istore 2 ,contw 
+0x50a4 020546 copy regb ,pdata 
+0x50a5 020547 istore 2 ,contw 
+0x50a6 020548 force 0x08 ,temp 
+0x50a7 020549 branch ml2cap_send_signal 
+:      020551 ml2cap_send_signal_connect_req:
+0x50a8 020552 bpatchx patch23_0 ,mem_patch23 
+0x50a9 020553 call l2cap_get_req_id 
+0x50aa 020554 call l2cap_get_signal_tx_payload 
+0x50ab 020555 setarg signal_connect_req 
+0x50ac 020556 istore 1 ,contw 
+0x50ad 020557 fetch 1 ,mem_ml2cap_comm_id 
+0x50ae 020558 istore 1 ,contw 
+0x50af 020559 setarg 0x0004 
+0x50b0 020560 istore 2 ,contw 
+0x50b1 020561 copy temp ,pdata 
+0x50b2 020562 istore 2 ,contw 
+0x50b3 020563 copy timeup ,pdata 
+0x50b4 020564 istore 2 ,contw 
+0x50b5 020565 arg 8 ,temp 
+0x50b6 020566 branch ml2cap_send_signal 
+:      020567 ml2cap_send_signal_config_req:
+0x50b7 020568 bpatchx patch23_1 ,mem_patch23 
+0x50b8 020569 call l2cap_get_req_id 
+0x50b9 020570 call l2cap_get_signal_tx_payload 
+0x50ba 020571 setarg signal_config_req 
+0x50bb 020572 istore 1 ,contw 
+0x50bc 020573 fetch 1 ,mem_ml2cap_comm_id 
+0x50bd 020574 istore 1 ,contw 
+0x50be 020575 setarg 0x0008 
+0x50bf 020576 istore 2 ,contw 
+0x50c0 020578 copy temp ,pdata 
+0x50c1 020580 istore 2 ,contw 
+0x50c2 020581 setarg 0x0000 
+0x50c3 020582 istore 2 ,contw 
+0x50c4 020583 setarg 0x01 
+0x50c5 020584 istore 1 ,contw 
+0x50c6 020585 setarg 0x02 
+0x50c7 020586 istore 1 ,contw 
+0x50c8 020587 setarg l2cap_config_mtu_rfcomm 
+0x50c9 020588 istore 2 ,contw 
+0x50ca 020589 arg 0xc ,temp 
+0x50cb 020590 branch ml2cap_send_signal 
+:      020591 ml2cap_send_signal_disconn_req:
+0x50cc 020592 bpatchx patch23_2 ,mem_patch23 
+0x50cd 020593 call l2cap_get_req_id 
+0x50ce 020594 call l2cap_get_signal_tx_payload 
+0x50cf 020595 setarg signal_disconnect_req 
+0x50d0 020596 istore 1 ,contw 
+0x50d1 020597 fetch 1 ,mem_ml2cap_comm_id 
+0x50d2 020598 increase 1 ,pdata 
+0x50d3 020599 copy contw ,rega 
+0x50d4 020600 store 1 ,mem_ml2cap_comm_id 
+0x50d5 020601 copy rega ,contw 
+0x50d6 020602 istore 1 ,contw 
+0x50d7 020603 setarg 0x0004 
+0x50d8 020604 istore 2 ,contw 
+0x50d9 020605 copy temp ,pdata 
+0x50da 020606 istore 2 ,contw 
+0x50db 020607 copy timeup ,pdata 
+0x50dc 020608 istore 2 ,contw 
+0x50dd 020609 arg 0x8 ,temp 
+:      020612 ml2cap_send_signal:
+0x50de 020613 storet 2 ,mem_l2cap_signal_tx_length 
+0x50df 020614 copy temp ,pdata 
+0x50e0 020615 branch l2cap_malloc_discard ,blank 
+0x50e1 020616 call l2cap_get_signal_tx_buff 
+0x50e2 020617 fetch 2 ,mem_l2cap_signal_tx_length 
+0x50e3 020618 istore 2 ,contw 
+0x50e4 020619 force l2cap_signal_channel ,pdata 
+0x50e5 020620 istore 2 ,contw 
+0x50e6 020621 rtn 
+:      020623 msdp_send_req_done:
+0x50e7 020624 fetch 2 ,mem_sdp_tx_pkt_length 
+0x50e8 020625 branch assert ,blank 
+0x50e9 020626 call l2cap_get_sdp_tx_buff 
+0x50ea 020627 fetch 2 ,mem_sdp_tx_pkt_length 
+0x50eb 020628 istore 2 ,contw 
+0x50ec 020629 fetch 2 ,mem_sdp_remote_cid 
+0x50ed 020630 istore 2 ,contw 
+0x50ee 020631 rtn 
+:      020632 ml2cap_rx_multiplexing:
+0x50ef 020633 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x50f0 020634 branch l2cap_rx_reset_state ,blank 
+0x50f1 020635 bpatchx patch23_3 ,mem_patch23 
+0x50f2 020636 fetch 1 ,mem_l2cap_rx_cid 
+0x50f3 020637 beq l2cap_signal_channel ,ml2cap_call_proc_signal 
+0x50f4 020638 beq l2cap_sdp_channel ,ml2cap_call_proc_sdp 
+0x50f5 020639 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
+0x50f6 020640 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
+0x50f7 020641 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
+0x50f8 020642 branch l2cap_rx_reset_state 
+:      020644 ml2cap_call_proc_signal:
+0x50f9 020645 bpatchx patch23_4 ,mem_patch23 
+0x50fa 020646 call l2cap_malloc_signal_channel 
+0x50fb 020647 force 0 ,regb 
+0x50fc 020648 call l2cap_get_signal_tx_payload 
+0x50fd 020649 copy pdata ,contw 
+0x50fe 020650 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x50ff 020651 copy pdata ,regc 
+0x5100 020652 fetch 2 ,mem_l2cap_payload_ptr 
+0x5101 020653 iforce contr 
+:      020654 ml2cap_proc_one_comm_loop:
+0x5102 020655 call ml2cap_proc_one_comm 
+0x5103 020656 increase -4 ,regc 
+0x5104 020657 nbranch ml2cap_proc_one_comm_loop ,zero 
+0x5105 020658 copy regb ,temp 
+0x5106 020659 call ml2cap_send_signal 
+0x5107 020660 branch l2cap_rx_reset_state 
+:      020662 ml2cap_proc_one_comm:
+0x5108 020663 ifetch 1 ,contr 
+0x5109 020664 beq signal_connect_req ,ml2cap_proc_signal_connect_req 
+0x510a 020665 beq signal_cmd_reject ,ml2cap_proc_signal_cmd_reject 
+0x510b 020666 beq signal_connect_rsp ,ml2cap_proc_signal_connect_rsp 
+0x510c 020667 beq signal_config_rsp ,ml2cap_proc_signal_config_rsp 
+0x510d 020668 beq signal_config_req ,ml2cap_proc_signal_config_req 
+0x510e 020669 beq signal_disconnect_rsp ,ml2cap_proc_signal_disconn_rsp 
+0x510f 020670 beq signal_disconnect_req ,ml2cap_proc_signal_disconn_req 
+0x5110 020671 beq signal_echo_req ,l2cap_proc_signal_echo_req 
+0x5111 020672 beq signal_info_req ,ml2cap_proc_signal_info_req 
+0x5112 020673 branch ml2cap_proc_send_reject 
+:      020675 ml2cap_proc_signal_connect_req:
+0x5113 020676 call save_cont_pointers 
+0x5114 020678 call load_cont_pointers 
+0x5115 020679 branch l2cap_proc_signal_connect_req 
+:      020680 ml2cap_proc_signal_cmd_reject:
+0x5116 020681 ifetch 1 ,contr 
+0x5117 020682 copy pdata ,queue 
+0x5118 020683 ifetch 2 ,contr 
+0x5119 020684 copy pdata ,rega 
+0x511a 020685 copy regc ,pdata 
+0x511b 020686 isub rega ,regc 
+:      020687 mvptr:
+0x511c 020688 ifetch 1 ,contr 
+0x511d 020689 increase -1 ,rega 
+0x511e 020690 nbranch mvptr ,zero 
+0x511f 020691 rtn 
+:      020692 ml2cap_proc_signal_connect_rsp:
+0x5120 020693 ifetch 1 ,contr 
+0x5121 020694 copy pdata ,queue 
+0x5122 020695 ifetch 2 ,contr 
+0x5123 020696 copy pdata ,rega 
+0x5124 020697 ifetch 2 ,contr 
+0x5125 020698 copy pdata ,timeup 
+0x5126 020699 ifetch 2 ,contr 
+0x5127 020700 copy pdata ,temp 
+0x5128 020701 ifetch 2 ,contr 
+0x5129 020702 sub pdata ,0 ,null 
+0x512a 020703 branch ml2cap_proc_signal_connect_rsp_sucessful ,zero 
+0x512b 020704 beq l2cap_connect_refused_psm_unsupported ,ml2cap_proc_signal_connect_refused_result 
+0x512c 020705 beq l2cap_connect_refused_no_resources ,ml2cap_proc_signal_connect_refused_result 
+0x512d 020706 branch ml2cap_proc_signal_connect_rsp_mnosucc 
+:      020707 ml2cap_proc_signal_connect_refused_result:
+0x512e 020708 jam bt_evt_ml2cap_conn_refused ,mem_fifo_temp 
+0x512f 020709 call ui_ipc_send_event 
+:      020710 ml2cap_proc_signal_connect_rsp_mnosucc:
+0x5130 020711 ifetch 2 ,contr 
+0x5131 020712 branch mnosucc 
+:      020713 ml2cap_proc_signal_connect_rsp_sucessful:
+0x5132 020714 call save_cont_pointers 
+0x5133 020718 bpatchx patch23_5 ,mem_patch23 
+0x5134 020719 setarg l2cap_sdp_channel 
+0x5135 020720 isub temp ,null 
+0x5136 020721 branch ml2cap_proc_signal_connect_rsp_sdp ,zero 
+0x5137 020722 setarg l2cap_rfcomm_channel 
+0x5138 020723 isub temp ,null 
+0x5139 020724 branch ml2cap_proc_signal_connect_rsp_rfcomm ,zero 
+0x513a 020725 setarg l2cap_hid_interrupt_channel 
+0x513b 020726 isub temp ,null 
+0x513c 020727 branch ml2cap_proc_signal_connect_rsp_hid_int ,zero 
+0x513d 020728 setarg l2cap_hid_control_channel 
+0x513e 020729 isub temp ,null 
+0x513f 020730 branch ml2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
+0x5140 020731 branch mnosucc 
+:      020732 ml2cap_proc_signal_connect_rsp_sdp:
+0x5141 020733 copy timeup ,pdata 
+0x5142 020734 store 2 ,mem_sdp_remote_cid 
+0x5143 020735 fetch 1 ,mem_sdp_state 
+0x5144 020736 set1 l2cap_channel_state_conn_res 
+0x5145 020737 store 1 ,mem_sdp_state 
+0x5146 020738 branch mnosucc1 
+:      020739 ml2cap_proc_signal_connect_rsp_rfcomm:
+0x5147 020740 copy timeup ,pdata 
+0x5148 020741 store 2 ,mem_rfcomm_remote_cid 
+0x5149 020742 fetch 1 ,mem_rfcomm_state 
+0x514a 020743 set1 l2cap_channel_state_conn_res 
+0x514b 020744 store 1 ,mem_rfcomm_state 
+0x514c 020745 branch mnosucc1 
+:      020746 ml2cap_proc_signal_connect_rsp_hid_ctrl:
+0x514d 020747 copy timeup ,pdata 
+0x514e 020748 store 2 ,mem_hid_ctrl_remote_cid 
+0x514f 020749 fetch 1 ,mem_hid_control_state 
+0x5150 020750 set1 l2cap_channel_state_conn_res 
+0x5151 020751 store 1 ,mem_hid_control_state 
+0x5152 020752 branch mnosucc1 
+:      020753 ml2cap_proc_signal_connect_rsp_hid_int:
+0x5153 020754 copy timeup ,pdata 
+0x5154 020755 store 2 ,mem_hid_int_remote_cid 
+0x5155 020756 fetch 1 ,mem_hid_interrupt_state 
+0x5156 020757 set1 l2cap_channel_state_conn_res 
+0x5157 020758 store 1 ,mem_hid_interrupt_state 
+:      020761 mnosucc1:
+0x5158 020762 call load_cont_pointers 
+:      020763 mnosucc:
+0x5159 020764 copy regc ,pdata 
+0x515a 020765 isub rega ,regc 
+0x515b 020766 rtn 
+:      020768 ml2cap_proc_signal_config_rsp:
+0x515c 020769 ifetch 1 ,contr 
+0x515d 020770 copy pdata ,queue 
+0x515e 020771 ifetch 2 ,contr 
+0x515f 020772 copy pdata ,rega 
+0x5160 020773 copy regc ,pdata 
+0x5161 020774 isub rega ,regc 
+0x5162 020775 ifetch 2 ,contr 
+0x5163 020776 copy pdata ,timeup 
+0x5164 020777 ifetch 2 ,contr 
+0x5165 020778 ifetch 2 ,contr 
+0x5166 020779 nbranch mcrsdone1 ,blank 
+0x5167 020780 call save_cont_pointers 
+0x5168 020784 copy timeup ,temp 
+0x5169 020785 bpatchx patch23_6 ,mem_patch23 
+0x516a 020786 setarg l2cap_sdp_channel 
+0x516b 020787 isub temp ,null 
+0x516c 020788 branch ml2cap_proc_signal_config_rsp_sdp ,zero 
+0x516d 020789 setarg l2cap_rfcomm_channel 
+0x516e 020790 isub temp ,null 
+0x516f 020791 branch ml2cap_proc_signal_config_rsp_rfcomm ,zero 
+0x5170 020792 setarg l2cap_hid_control_channel 
+0x5171 020793 isub temp ,null 
+0x5172 020794 branch ml2cap_proc_signal_config_rsp_hid_ctrl ,zero 
+0x5173 020795 setarg l2cap_hid_interrupt_channel 
+0x5174 020796 isub temp ,null 
+0x5175 020797 branch ml2cap_proc_signal_config_rsp_hid_int ,zero 
+:      020798 ml2cap_proc_signal_config_rsp_sdp:
+0x5176 020799 fetch 1 ,mem_sdp_state 
+0x5177 020800 set1 l2cap_channel_state_rcv_cfg_res 
+0x5178 020801 store 1 ,mem_sdp_state 
+0x5179 020802 rtn 
+:      020803 ml2cap_proc_signal_config_rsp_rfcomm:
+0x517a 020804 fetch 1 ,mem_rfcomm_state 
+0x517b 020805 set1 l2cap_channel_state_rcv_cfg_res 
+0x517c 020806 store 1 ,mem_rfcomm_state 
+0x517d 020807 rtn 
+:      020808 ml2cap_proc_signal_config_rsp_hid_ctrl:
+0x517e 020809 fetch 1 ,mem_hid_control_state 
+0x517f 020810 set1 l2cap_channel_state_rcv_cfg_res 
+0x5180 020811 store 1 ,mem_hid_control_state 
+0x5181 020812 rtn 
+:      020813 ml2cap_proc_signal_config_rsp_hid_int:
+0x5182 020814 fetch 1 ,mem_hid_interrupt_state 
+0x5183 020815 set1 l2cap_channel_state_rcv_cfg_res 
+0x5184 020816 store 1 ,mem_hid_interrupt_state 
+0x5185 020817 jam bt_evt_hid_connected ,mem_fifo_temp 
+0x5186 020818 branch ui_ipc_send_event 
+:      020821 mcfrsdone:
+0x5187 020822 call load_cont_pointers 
+:      020823 mcrsdone1:
+0x5188 020824 increase -6 ,rega 
+:      020825 mloop2:
+0x5189 020826 branch mcrsdone ,zero 
+0x518a 020827 increase 1 ,contr 
+0x518b 020828 increase -1 ,rega 
+0x518c 020829 branch mloop2 
+:      020830 mcrsdone:
+0x518d 020831 rtn 
+:      020832 ml2cap_proc_signal_config_req:
+0x518e 020833 ifetch 1 ,contr 
+0x518f 020834 copy pdata ,queue 
+0x5190 020835 ifetch 2 ,contr 
+0x5191 020836 copy pdata ,rega 
+0x5192 020837 copy regc ,pdata 
+0x5193 020838 isub rega ,regc 
+0x5194 020839 ifetch 2 ,contr 
+0x5195 020840 increase 2 ,contr 
+0x5196 020841 copy pdata ,temp 
+0x5197 020842 setarg signal_config_rsp 
+0x5198 020843 istore 1 ,contw 
+0x5199 020844 copy queue ,pdata 
+0x519a 020845 istore 1 ,contw 
+0x519b 020846 increase 2 ,rega 
+0x519c 020847 copy rega ,pdata 
+0x519d 020848 istore 2 ,contw 
+0x519e 020849 call save_cont_pointers 
+0x519f 020850 bpatchx patch23_7 ,mem_patch23 
+0x51a0 020851 setarg l2cap_sdp_channel 
+0x51a1 020852 isub temp ,null 
+0x51a2 020853 branch ml2cap_proc_signal_config_req_sdp ,zero 
+0x51a3 020854 setarg l2cap_rfcomm_channel 
+0x51a4 020855 isub temp ,null 
+0x51a5 020856 branch ml2cap_proc_signal_config_req_rfcomm ,zero 
+0x51a6 020857 setarg l2cap_hid_control_channel 
+0x51a7 020858 isub temp ,null 
+0x51a8 020859 branch ml2cap_proc_signal_config_req_hid_ctrl ,zero 
+0x51a9 020860 setarg l2cap_hid_interrupt_channel 
+0x51aa 020861 isub temp ,null 
+0x51ab 020862 branch ml2cap_proc_signal_config_req_hid_int ,zero 
+0x51ac 020863 branch mcfgrq_done 
+:      020864 ml2cap_proc_signal_config_req_sdp:
+0x51ad 020865 fetch 1 ,mem_sdp_state 
+0x51ae 020866 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51af 020867 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51b0 020868 store 1 ,mem_sdp_state 
+0x51b1 020869 bbit1 l2cap_channel_state_snd_cfg_req ,ml2cap_proc_signal_config_req_sdp_nsndreq 
+0x51b2 020870 fetcht 1 ,mem_control_tasks 
+0x51b3 020871 set1 l2cap_init_config_req ,temp 
+0x51b4 020872 storet 1 ,mem_control_tasks 
+0x51b5 020873 copy queue ,pdata 
+0x51b6 020874 increase 1 ,pdata 
+0x51b7 020875 store 1 ,mem_config_identifier 
+0x51b8 020876 fetch 1 ,mem_sdp_state 
+0x51b9 020877 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x51ba 020878 store 1 ,mem_sdp_state 
+:      020879 ml2cap_proc_signal_config_req_sdp_nsndreq:
+0x51bb 020880 fetch 2 ,mem_sdp_remote_cid 
+0x51bc 020881 store 2 ,mem_config_req_dest_cid 
+0x51bd 020882 branch mcfgrq_done 
+:      020883 ml2cap_proc_signal_config_req_rfcomm:
+0x51be 020884 fetch 1 ,mem_rfcomm_state 
+0x51bf 020885 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51c0 020886 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51c1 020887 store 1 ,mem_rfcomm_state 
+0x51c2 020888 fetch 2 ,mem_rfcomm_remote_cid 
+0x51c3 020889 branch mcfgrq_done 
+:      020890 ml2cap_proc_signal_config_req_hid_ctrl:
+0x51c4 020891 fetch 1 ,mem_hid_control_state 
+0x51c5 020892 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51c6 020893 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51c7 020894 store 1 ,mem_hid_control_state 
+0x51c8 020895 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x51c9 020896 branch mcfgrq_done 
+:      020897 ml2cap_proc_signal_config_req_hid_int:
+0x51ca 020898 fetch 1 ,mem_hid_interrupt_state 
+0x51cb 020899 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51cc 020900 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51cd 020901 store 1 ,mem_hid_interrupt_state 
+0x51ce 020902 fetch 2 ,mem_hid_int_remote_cid 
+:      020905 mcfgrq_done:
+0x51cf 020906 copy pdata ,timeup 
+0x51d0 020907 call load_cont_pointers 
+0x51d1 020909 copy timeup ,pdata 
+0x51d2 020911 istore 2 ,contw 
+0x51d3 020912 force 0x0000 ,pdata 
+0x51d4 020913 istore 2 ,contw 
+0x51d5 020914 force 0x0000 ,pdata 
+0x51d6 020915 istore 2 ,contw 
+0x51d7 020916 force 10 ,pdata 
+0x51d8 020917 iadd regb ,regb 
+0x51d9 020918 increase -6 ,rega 
+:      020919 mloop1:
+0x51da 020920 branch mcrqdone ,zero 
+0x51db 020921 ifetch 1 ,contr 
+0x51dc 020922 istore 1 ,contw 
+0x51dd 020923 increase 1 ,regb 
+0x51de 020924 increase -1 ,rega 
+0x51df 020925 branch mloop1 
+:      020926 mcrqdone:
+0x51e0 020927 rtn 
+:      020928 ml2cap_proc_signal_disconn_req:
+0x51e1 020929 ifetch 1 ,contr 
+0x51e2 020930 copy pdata ,queue 
+0x51e3 020931 ifetch 2 ,contr 
+0x51e4 020932 copy pdata ,rega 
+0x51e5 020933 copy regc ,pdata 
+0x51e6 020934 isub rega ,regc 
+0x51e7 020936 ifetch 2 ,contr 
+0x51e8 020937 copy pdata ,rega 
+0x51e9 020938 ifetch 2 ,contr 
+0x51ea 020939 copy pdata ,timeup 
+0x51eb 020940 call save_cont_pointers 
+0x51ec 020941 bpatchx patch24_0 ,mem_patch24 
+0x51ed 020942 setarg l2cap_sdp_channel 
+0x51ee 020943 copy rega ,temp 
+0x51ef 020944 isub temp ,null 
+0x51f0 020945 branch ml2cap_proc_signal_disconn_sdp ,zero 
+0x51f1 020946 setarg l2cap_hid_control_channel 
+0x51f2 020947 copy rega ,temp 
+0x51f3 020948 isub temp ,null 
+0x51f4 020949 branch ml2cap_proc_signal_disconn_hid_ctrl ,zero 
+0x51f5 020950 setarg l2cap_hid_interrupt_channel 
+0x51f6 020951 copy rega ,temp 
+0x51f7 020952 isub temp ,null 
+0x51f8 020953 branch ml2cap_proc_signal_disconn_hid_int ,zero 
+0x51f9 020954 branch mclsrfc 
+:      020955 ml2cap_proc_signal_disconn_sdp:
+0x51fa 020956 setarg 0x0000 
+0x51fb 020957 store 2 ,mem_sdp_tx_pkt_length 
+0x51fc 020958 store 2 ,mem_sdp_remote_cid 
+0x51fd 020959 store 1 ,mem_sdp_state 
+0x51fe 020960 branch mclssdp 
+:      020961 ml2cap_proc_signal_disconn_hid_ctrl:
+0x51ff 020962 call l2cap_reset_hid_ctrl_state 
+0x5200 020963 branch mclssdp 
+:      020964 ml2cap_proc_signal_disconn_hid_int:
+0x5201 020965 call l2cap_reset_hid_int_state 
+0x5202 020971 branch mclssdp 
+:      020972 mclsrfc:
+0x5203 020973 setarg 0x0000 
+0x5204 020974 store 2 ,mem_rfcomm_tx_pkt_length 
+:      020975 mclssdp:
+0x5205 020976 call load_cont_pointers 
+0x5206 020977 setarg signal_disconnect_rsp 
+0x5207 020978 istore 1 ,contw 
+0x5208 020979 copy queue ,pdata 
+0x5209 020980 istore 1 ,contw 
+0x520a 020981 setarg 0x0004 
+0x520b 020982 istore 2 ,contw 
+0x520c 020983 copy rega ,pdata 
+0x520d 020984 istore 2 ,contw 
+0x520e 020985 copy timeup ,pdata 
+0x520f 020986 istore 2 ,contw 
+0x5210 020987 force 8 ,pdata 
+0x5211 020988 iadd regb ,regb 
+0x5212 020989 rtn 
+:      020991 ml2cap_proc_signal_disconn_rsp:
+0x5213 020992 ifetch 1 ,contr 
+0x5214 020993 copy pdata ,queue 
+0x5215 020994 ifetch 2 ,contr 
+0x5216 020995 copy pdata ,rega 
+0x5217 020996 ifetch 2 ,contr 
+0x5218 020997 copy pdata ,timeup 
+0x5219 020998 ifetch 2 ,contr 
+0x521a 020999 copy pdata ,temp 
+0x521b 021000 call save_cont_pointers 
+0x521c 021001 bpatchx patch24_1 ,mem_patch24 
+0x521d 021002 fetch 1 ,mem_ml2cap_comm_id 
+0x521e 021003 icompare 0xff ,queue 
+0x521f 021004 nbranch mdisdone ,true 
+0x5220 021005 setarg l2cap_sdp_channel 
+0x5221 021006 isub temp ,null 
+0x5222 021007 branch ml2cap_proc_signal_disconn_rsp_sdp ,zero 
+0x5223 021008 setarg l2cap_rfcomm_channel 
+0x5224 021009 isub temp ,null 
+0x5225 021010 branch ml2cap_proc_signal_disconn_rsp_rfcomm ,zero 
+0x5226 021011 branch mdisdone 
+:      021012 ml2cap_proc_signal_disconn_rsp_sdp:
+0x5227 021013 jam 0 ,mem_sdp_remote_cid 
+0x5228 021014 jam 0 ,mem_sdp_state 
+0x5229 021015 branch mdisdone 
+:      021016 ml2cap_proc_signal_disconn_rsp_rfcomm:
+:      021019 mdisdone:
+0x522a 021020 call load_cont_pointers 
+0x522b 021021 copy regc ,pdata 
+0x522c 021022 isub rega ,regc 
+0x522d 021023 rtn 
+:      021025 ml2cap_proc_send_reject:
+0x522e 021026 setarg signal_cmd_reject 
+0x522f 021027 istore 1 ,contw 
+0x5230 021028 ifetch 1 ,contr 
+0x5231 021029 istore 1 ,contw 
+0x5232 021030 setarg 0x0002 
+0x5233 021031 istore 2 ,contw 
+0x5234 021032 setarg 0x0000 
+0x5235 021033 istore 2 ,contw 
+0x5236 021034 setarg 0x0006 
+0x5237 021035 iadd regb ,regb 
+0x5238 021036 force 4 ,regc 
+0x5239 021037 rtn 
+:      021040 l2cap_get_req_id:
+0x523a 021041 fetch 1 ,mem_ml2cap_comm_id 
+0x523b 021042 increase 1 ,pdata 
+0x523c 021043 bne 0 ,l2cap_get_req_id_ok 
+0x523d 021044 increase 1 ,pdata 
+:      021045 l2cap_get_req_id_ok:
+0x523e 021046 store 1 ,mem_ml2cap_comm_id 
+0x523f 021047 rtn 
+:      021057 l2cap_malloc:
+0x5240 021058 bpatchx patch24_2 ,mem_patch24 
+0x5241 021059 arg 0 ,regb 
+0x5242 021060 call l2cap_malloc_is_fifo_full 
+0x5243 021061 nbranch assert ,blank 
+0x5244 021062 call l2cap_malloc_get_full_map 
+0x5245 021063 arg mem_tx_buff0 ,regb 
+0x5246 021064 arg 0 ,queue 
+:      021065 l2cap_malloc_loop:
+0x5247 021066 fetcht 1 ,mem_used_map 
+0x5248 021067 qisolate1 temp 
+0x5249 021068 branch l2cap_malloc_next ,true 
+0x524a 021069 call l2cap_malloc_enough 
+0x524b 021070 sub timeup ,0 ,null 
+0x524c 021071 branch l2cap_malloc_next ,positive 
+0x524d 021072 call l2cap_malloc_into_fifo 
+0x524e 021073 branch l2cap_malloc_rtn 
+:      021074 l2cap_malloc_next:
+0x524f 021075 increase 128 ,regb 
+0x5250 021076 increase 1 ,queue 
+0x5251 021077 setarg 8 
+0x5252 021078 isub queue ,null 
+0x5253 021079 branch l2cap_malloc_loop ,positive 
+0x5254 021080 arg 0 ,regb 
+:      021081 l2cap_malloc_rtn:
+0x5255 021082 copy regb ,pdata 
+0x5256 021083 branch assert ,blank 
+0x5257 021084 rtn 
+:      021092 l2cap_malloc_fifo_out:
+0x5258 021093 bpatchx patch24_3 ,mem_patch24 
+0x5259 021094 call l2cap_malloc_fifo_get_first_ptr 
+0x525a 021095 increase 1 ,contr 
+0x525b 021096 ifetch 2 ,contr 
+0x525c 021097 rtn 
+:      021103 l2cap_malloc_free:
+0x525d 021104 bpatchx patch24_4 ,mem_patch24 
+0x525e 021105 call l2cap_malloc_fifo_get_first_ptr 
+0x525f 021106 copy contr ,contw 
+0x5260 021107 copy contr ,temp 
+0x5261 021108 setarg 0 
+0x5262 021109 istore 3 ,contw 
+0x5263 021110 rtn 
+:      021115 l2cap_malloc_discard:
+0x5264 021116 bpatchx patch24_5 ,mem_patch24 
+0x5265 021117 call l2cap_malloc_is_fifo_empty 
+0x5266 021118 branch assert ,blank 
+0x5267 021119 fetch 3 ,mem_tx_fifo2 
+0x5268 021120 store 3 ,mem_tx_fifo3 
+0x5269 021121 fetch 3 ,mem_tx_fifo1 
+0x526a 021122 store 3 ,mem_tx_fifo2 
+0x526b 021123 fetch 3 ,mem_tx_fifo0 
+0x526c 021124 store 3 ,mem_tx_fifo1 
+0x526d 021125 rtn 
+:      021131 l2cap_malloc_is_fifo_full:
+0x526e 021132 bpatchx patch24_6 ,mem_patch24 
+0x526f 021133 fetch 3 ,mem_tx_fifo0 
+0x5270 021134 rtn 
+:      021140 l2cap_malloc_is_fifo_nearly_full:
+0x5271 021141 bpatchx patch24_7 ,mem_patch24 
+0x5272 021142 fetch 3 ,mem_tx_fifo1 
+0x5273 021143 rtn 
+:      021149 l2cap_malloc_is_fifo_empty:
+0x5274 021150 bpatchx patch25_0 ,mem_patch25 
+0x5275 021151 fetch 3 ,mem_tx_fifo3 
+0x5276 021152 rtn 
+:      021157 l2cap_malloc_fifo_get_first_ptr:
+0x5277 021158 call l2cap_malloc_is_fifo_empty 
+0x5278 021159 branch assert ,blank 
+0x5279 021160 arg mem_tx_fifo0 ,contr 
+:      021161 l2cap_malloc_free_loop:
+0x527a 021162 ifetch 3 ,contr 
+0x527b 021163 branch l2cap_malloc_free_loop ,blank 
+0x527c 021164 increase -3 ,contr 
+0x527d 021165 rtn 
+:      021172 l2cap_malloc_get_full_map:
+0x527e 021173 bpatchx patch25_1 ,mem_patch25 
+0x527f 021174 arg 4 ,loopcnt 
+0x5280 021175 arg mem_tx_fifo0_map ,contr 
+0x5281 021176 arg 0 ,temp 
+:      021177 l2cap_malloc_get_full_map_loop:
+0x5282 021178 ifetch 3 ,contr 
+0x5283 021179 and pdata ,0xff ,pdata 
+0x5284 021180 ior temp ,temp 
+0x5285 021181 loop l2cap_malloc_get_full_map_loop 
+0x5286 021182 storet 1 ,mem_used_map 
+0x5287 021183 rtn 
+:      021191 l2cap_malloc_into_fifo:
+0x5288 021192 bpatchx patch25_2 ,mem_patch25 
+0x5289 021193 call l2cap_malloc_is_fifo_full 
+0x528a 021194 nbranch assert ,blank 
+0x528b 021195 call l2cap_malloc_is_fifo_empty 
+0x528c 021196 branch l2cap_malloc_into_fifo_no_push ,blank 
+0x528d 021197 fetch 3 ,mem_tx_fifo1 
+0x528e 021198 store 3 ,mem_tx_fifo0 
+0x528f 021199 ifetch 3 ,contr 
+0x5290 021200 istore 3 ,contw 
+0x5291 021201 ifetch 3 ,contr 
+0x5292 021202 istore 3 ,contw 
+0x5293 021203 setarg 0 
+0x5294 021204 istore 3 ,contw 
+:      021205 l2cap_malloc_into_fifo_no_push:
+0x5295 021206 arg 0 ,temp 
+0x5296 021207 copy timeup ,pdata 
+0x5297 021208 iadd queue ,pdata 
+:      021209 l2cap_malloc_into_fifo_loop:
+0x5298 021210 qset1 temp 
+0x5299 021211 increase 1 ,queue 
+0x529a 021212 isub queue ,null 
+0x529b 021213 nbranch l2cap_malloc_into_fifo_loop ,zero 
+0x529c 021215 lshift8 regb ,pdata 
+0x529d 021216 ior temp ,pdata 
+0x529e 021217 store 3 ,mem_tx_fifo3 
+0x529f 021218 rtn 
+:      021228 l2cap_malloc_enough:
+0x52a0 021229 bpatchx patch25_3 ,mem_patch25 
+0x52a1 021230 call l2cap_malloc_get_full_map 
+0x52a2 021231 copy queue ,regc 
+0x52a3 021232 arg 0 ,temp 
+0x52a4 021233 arg 0 ,timeup 
+:      021235 l2cap_malloc_enough_loop:
+0x52a5 021236 copy queue ,pdata 
+0x52a6 021237 beq 8 ,l2cap_malloc_enough_end 
+0x52a7 021238 fetch 1 ,mem_used_map 
+0x52a8 021239 qisolate1 pdata 
+0x52a9 021240 branch l2cap_malloc_enough_end ,true 
+0x52aa 021241 increase 128 ,temp 
+0x52ab 021242 increase 1 ,queue 
+0x52ac 021243 copy rega ,pdata 
+0x52ad 021244 isub temp ,null 
+0x52ae 021245 branch l2cap_malloc_enough_end ,zero 
+0x52af 021246 branch l2cap_malloc_enough_loop ,positive 
+:      021247 l2cap_malloc_enough_end:
+0x52b0 021248 copy temp ,pdata 
+0x52b1 021249 isub rega ,null 
+0x52b2 021250 nbranch l2cap_malloc_enough_rtn ,positive 
+0x52b3 021251 copy queue ,pdata 
+0x52b4 021252 copy regc ,temp 
+0x52b5 021253 isub temp ,timeup 
+:      021254 l2cap_malloc_enough_rtn:
+0x52b6 021255 copy regc ,queue 
+0x52b7 021256 rtn 
+:      021259 l2cap_malloc_signal_channel:
+0x52b8 021260 bpatchx patch25_4 ,mem_patch25 
+0x52b9 021261 arg l2cap_signal_malloc_size ,rega 
+0x52ba 021262 call l2cap_malloc 
+0x52bb 021263 store 2 ,mem_l2cap_signal_tx_buff_ptr 
+0x52bc 021264 increase 4 ,pdata 
+0x52bd 021265 store 2 ,mem_l2cap_signal_tx_payload_ptr 
+0x52be 021266 setarg 0 
+0x52bf 021267 store 2 ,mem_l2cap_signal_tx_length 
+0x52c0 021268 rtn 
+:      021270 l2cap_get_signal_tx_buff:
+0x52c1 021271 fetch 2 ,mem_l2cap_signal_tx_buff_ptr 
+0x52c2 021272 branch l2cap_util_pdata_to_contw 
+:      021274 l2cap_get_signal_tx_payload:
+0x52c3 021275 fetch 2 ,mem_l2cap_signal_tx_payload_ptr 
+0x52c4 021276 branch l2cap_util_pdata_to_contw 
+:      021279 l2cap_malloc_sdp_channel:
+0x52c5 021280 bpatchx patch25_5 ,mem_patch25 
+0x52c6 021281 arg sdp_malloc_size ,rega 
+0x52c7 021282 call l2cap_malloc 
+0x52c8 021283 store 2 ,mem_sdp_tx_buff_ptr 
+0x52c9 021284 increase 4 ,pdata 
+0x52ca 021285 store 2 ,mem_sdp_tx_payload_ptr 
+0x52cb 021286 setarg 0 
+0x52cc 021287 store 2 ,mem_sdp_tx_pkt_length 
+0x52cd 021288 rtn 
+:      021290 l2cap_get_sdp_tx_buff:
+0x52ce 021291 fetch 2 ,mem_sdp_tx_buff_ptr 
+0x52cf 021292 branch l2cap_util_pdata_to_contw 
+:      021294 l2cap_get_sdp_tx_payload:
+0x52d0 021295 fetch 2 ,mem_sdp_tx_payload_ptr 
+0x52d1 021296 branch l2cap_util_pdata_to_contw 
+:      021299 l2cap_malloc_rfcomm_channel:
+0x52d2 021300 bpatchx patch25_6 ,mem_patch25 
+0x52d3 021301 call push_stack 
+0x52d4 021302 jam rfcomm_malloc_fail ,mem_rfcomm_malloc_fail_flag 
+0x52d5 021303 call l2cap_malloc_is_fifo_full 
+0x52d6 021304 nrtn blank 
+0x52d7 021305 arg rfcomm_malloc_size ,rega 
+0x52d8 021306 call l2cap_malloc 
+0x52d9 021307 store 2 ,mem_rfcomm_tx_buff_ptr 
+0x52da 021308 increase 4 ,pdata 
+0x52db 021309 store 2 ,mem_rfcomm_tx_payload_ptr 
+0x52dc 021310 setarg 0 
+0x52dd 021311 store 2 ,mem_rfcomm_tx_pkt_length 
+0x52de 021312 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
+0x52df 021313 branch pop_stack 
+:      021315 l2cap_get_rfcomm_tx_buff:
+0x52e0 021316 fetch 2 ,mem_rfcomm_tx_buff_ptr 
+0x52e1 021317 branch l2cap_util_pdata_to_contw 
+:      021319 l2cap_util_pdata_to_contw:
+0x52e2 021320 branch assert ,blank 
+0x52e3 021321 copy pdata ,contw 
+0x52e4 021322 rtn 
+:      021325 l2cap_lpm_save_calc_len:
+0x52e5 021326 bpatchx patch25_7 ,mem_patch25 
+0x52e6 021327 arg 0 ,regb 
+0x52e7 021328 arg mem_tx_fifo0_map ,rega 
+0x52e8 021329 increase -2 ,rega 
+:      021330 l2cap_lpm_save_calc_len_loop:
+0x52e9 021331 increase 2 ,rega 
+0x52ea 021332 setarg mem_tx_fifo_end 
+0x52eb 021333 isub rega ,null 
+0x52ec 021334 branch l2cap_lpm_save_calc_len_end ,zero 
+0x52ed 021335 ifetch 1 ,rega 
+0x52ee 021336 increase 1 ,rega 
+0x52ef 021337 branch l2cap_lpm_save_calc_len_loop ,blank 
+0x52f0 021338 ifetcht 2 ,rega 
+0x52f1 021339 ifetch 2 ,temp 
+0x52f2 021340 iadd regb ,regb 
+0x52f3 021341 increase 4 ,regb 
+0x52f4 021342 branch l2cap_lpm_save_calc_len_loop 
+:      021343 l2cap_lpm_save_calc_len_end:
+0x52f5 021344 copy regb ,pdata 
+0x52f6 021345 rtn 
+:      021348 l2cap_lpm_get_wake_lock:
+0x52f7 021349 arg wake_lock_l2cap_tx ,queue 
+0x52f8 021350 branch lpm_get_wake_lock 
+:      021352 l2cap_lpm_put_wake_lock:
+0x52f9 021353 arg wake_lock_l2cap_tx ,queue 
+0x52fa 021354 branch lpm_put_wake_lock 
+:      021356 l2cap_lpm_save_txbuf:
+0x52fb 021357 bpatchx patch26_0 ,mem_patch26 
+0x52fc 021358 call l2cap_malloc_get_full_map 
+0x52fd 021359 fetch 1 ,mem_used_map 
+0x52fe 021360 rtn blank 
+0x52ff 021361 call l2cap_lpm_save_calc_len 
+0x5300 021362 arg l2cap_lpm_txbuf_len ,temp 
+0x5301 021363 isub temp ,null 
+0x5302 021364 branch l2cap_lpm_get_wake_lock ,positive 
+0x5303 021365 call l2cap_lpm_put_wake_lock 
+0x5304 021366 arg mem_l2cap_lpm_txbuf ,contw 
+0x5305 021367 arg mem_tx_fifo0 ,rega 
+:      021368 l2cap_lpm_save_txbuf_loop:
+0x5306 021369 setarg mem_tx_fifo_end 
+0x5307 021370 isub rega ,null 
+0x5308 021371 rtn zero 
+0x5309 021372 ifetch 1 ,rega 
+0x530a 021373 increase 1 ,rega 
+0x530b 021374 nbranch l2cap_lpm_save_txbuf_nempty ,blank 
+0x530c 021375 istore 2 ,contw 
+0x530d 021376 increase 2 ,rega 
+0x530e 021377 branch l2cap_lpm_save_txbuf_loop 
+:      021378 l2cap_lpm_save_txbuf_nempty:
+0x530f 021379 ifetch 2 ,rega 
+0x5310 021380 increase 2 ,rega 
+0x5311 021381 copy pdata ,contr 
+0x5312 021382 ifetch 2 ,contr 
+0x5313 021383 istore 2 ,contw 
+0x5314 021384 copy pdata ,loopcnt 
+0x5315 021385 increase 2 ,loopcnt 
+0x5316 021386 call memcpy 
+0x5317 021387 branch l2cap_lpm_save_txbuf_loop 
+:      021389 l2cap_lpm_load_txbuf:
+0x5318 021390 bpatchx patch26_1 ,mem_patch26 
+0x5319 021391 call l2cap_malloc_get_full_map 
+0x531a 021392 fetch 1 ,mem_used_map 
+0x531b 021393 rtn blank 
+0x531c 021394 arg mem_tx_fifo0_ptr ,rega 
+0x531d 021395 increase -3 ,rega 
+0x531e 021396 arg mem_l2cap_lpm_txbuf ,contr 
+:      021397 l2cap_lpm_load_txbuf_loop:
+0x531f 021398 increase 3 ,rega 
+0x5320 021399 setarg mem_tx_fifo_end + 1 
+0x5321 021400 isub rega ,null 
+0x5322 021401 rtn zero 
+0x5323 021402 ifetch 2 ,contr 
+0x5324 021403 branch l2cap_lpm_load_txbuf_loop ,blank 
+0x5325 021404 increase 4 ,pdata 
+0x5326 021405 copy pdata ,loopcnt 
+0x5327 021406 copy contr ,regb 
+0x5328 021407 ifetch 2 ,rega 
+0x5329 021408 copy pdata ,contw 
+0x532a 021409 copy regb ,contr 
+0x532b 021410 increase -2 ,contr 
+0x532c 021411 call memcpy 
+0x532d 021412 branch l2cap_lpm_load_txbuf_loop 
+:      021422 le_init_conn:
+0x532e 021423 bpatchx patch26_2 ,mem_patch26 
+0x532f 021424 disable wake 
+0x5330 021425 jam 1 ,mem_le_conn_handle 
+0x5331 021426 jam 3 ,mem_le_state 
+0x5332 021427 jam 1 ,mem_le_arq 
+0x5333 021428 setarg -1 
+0x5334 021429 store 2 ,mem_le_event_count 
+0x5335 021430 force 0 ,pdata 
+0x5336 021431 store 1 ,mem_le_ch 
+0x5337 021432 store 1 ,mem_le_op 
+0x5338 021433 store 3 ,mem_sniff_rcv 
+0x5339 021434 store 3 ,mem_sniff_lost 
+0x533a 021435 store 5 ,mem_le_pcnt_tx 
+0x533b 021436 set1 39 ,pdata 
+0x533c 021437 store 5 ,mem_le_pcnt_rx 
+0x533d 021438 jam 1 ,mem_le_txheader 
+0x533e 021439 jam 0 ,mem_le_txlen 
+0x533f 021440 branch le_supervision_flush 
+:      021442 le_init_master:
+0x5340 021443 bpatchx patch26_3 ,mem_patch26 
+0x5341 021444 enable master 
+0x5342 021445 jam lemode_master ,mem_le_mode 
+0x5343 021446 jam 1 ,mem_le_att_handle 
+0x5344 021447 jam 1 ,mem_le_search_handle_start 
+0x5345 021448 setarg 0xffff 
+0x5346 021449 store 2 ,mem_le_search_handle_end 
+0x5347 021450 force 0 ,pdata 
+0x5348 021451 store 5 ,mem_le_pcnt_rx 
+0x5349 021452 set1 39 ,pdata 
+0x534a 021453 store 5 ,mem_le_pcnt_tx 
+0x534b 021454 branch le_init_conn 
+:      021457 le_init_slave:
+0x534c 021458 bpatchx patch26_4 ,mem_patch26 
+0x534d 021459 disable master 
+0x534e 021460 setarg 0x17 
+0x534f 021461 store 2 ,mem_le_remote_mtu 
+0x5350 021462 jam lemode_slave ,mem_le_mode 
+0x5351 021463 jam 0 ,mem_le_adv_enable 
+0x5352 021464 jam 0 ,mem_lpm_current_mult 
+0x5353 021465 jam flag_le_pairing_null ,mem_le_pairing_state 
+0x5354 021466 jam flag_le_enc_null ,mem_le_enc_state 
+0x5355 021467 fetch 2 ,mem_le_superto 
+0x5356 021468 store 2 ,mem_le_init_superto 
+0x5357 021469 fetch 2 ,mem_le_tsniff 
+0x5358 021470 mul32 pdata ,5 ,pdata 
+0x5359 021471 rshift4 pdata ,pdata 
+0x535a 021472 store 2 ,mem_le_superto 
+0x535b 021473 branch le_init_conn 
+:      021479 le_dispatch:
+0x535c 021480 call le_enable 
+0x535d 021481 call le_scan 
+0x535e 021482 call le_adv 
+0x535f 021483 branch le_disable 
+:      021485 le_conn_dispatch:
+0x5360 021486 bpatchx patch26_5 ,mem_patch26 
+0x5361 021487 call le_enable 
+0x5362 021488 call app_process_ble 
+0x5363 021489 fetch 1 ,mem_le_mode 
+0x5364 021490 beq lemode_master ,le_master_dispatch 
+0x5365 021491 branch le_slave_dispatch 
+:      021497 le_master_dispatch:
+0x5366 021498 bpatchx patch26_6 ,mem_patch26 
+0x5367 021499 enable master 
+0x5368 021500 call le_supervision_update 
+0x5369 021501 branch le_master_disconn ,positive 
+0x536a 021502 call check_ble_disabled 
+0x536b 021503 call le_setup 
+0x536c 021504 call le_prepare_tx 
+0x536d 021505 disable match 
+0x536e 021506 call le_transmit_receive_sifs 
+0x536f 021507 nrtn match 
+0x5370 021508 bpatchx patch26_7 ,mem_patch26 
+0x5371 021509 fetch 1 ,mem_le_conn_rcv 
+0x5372 021510 increase 1 ,pdata 
+0x5373 021511 store 1 ,mem_le_conn_rcv 
+0x5374 021512 call le_acknowledge 
+0x5375 021513 disable master 
+0x5376 021514 rtn 
+:      021516 le_master_disconn:
+0x5377 021517 call le_disconnect 
+0x5378 021518 disable master 
+0x5379 021519 rtn 
+:      021524 le_slave_dispatch:
+0x537a 021525 bpatchx patch27_0 ,mem_patch27 
+0x537b 021526 jam 0 ,mem_le_md_count 
+0x537c 021527 call sp_calc_sequence_256 
+0x537d 021528 call le_secure_connect_sm 
+0x537e 021529 disable attempt 
+0x537f 021530 call le_supervision_update 
+0x5380 021531 branch le_slave_disconn ,positive 
+0x5381 021532 call check_ble_disabled 
+0x5382 021533 call le_setup 
+0x5383 021534 call le_receive_slave 
+0x5384 021535 nbranch le_slave_unsync ,sync 
+0x5385 021536 call le_got_first_packet 
+0x5386 021537 branch le_slave_match ,match 
+0x5387 021538 branch le_slave_cont 
+:      021541 le_slave_match:
+0x5388 021542 bpatchx patch27_1 ,mem_patch27 
+0x5389 021543 fetch 1 ,mem_le_md_count 
+0x538a 021544 pincrease 1 
+0x538b 021545 store 1 ,mem_le_md_count 
+0x538c 021546 beq le_md_max_count ,le_slave_cont 
+0x538d 021547 call le_acknowledge 
+0x538e 021548 call le_prepare_tx 
+0x538f 021549 call le_transmit_norx 
+0x5390 021550 call le_parse 
+0x5391 021551 fetch 2 ,mem_cb_ble_transmit 
+0x5392 021552 call callback_func 
+0x5393 021553 call le_check_md 
+0x5394 021554 branch le_slave_more_data ,user 
+:      021555 le_slave_cont:
+0x5395 021556 bpatchx patch27_2 ,mem_patch27 
+0x5396 021557 call le_pairing_sm 
+0x5397 021558 call le_check_paring_time 
+0x5398 021559 call check_51cmd 
+0x5399 021560 fetch 1 ,mem_le_op 
+0x539a 021561 bbit1 op_disconn ,le_slave_disconn 
+:      021562 le_slave_unsync:
+0x539b 021563 bpatchx patch27_3 ,mem_patch27 
+0x539c 021564 call le_lpm_set_mult 
+0x539d 021565 call le_update_channel_map 
+0x539e 021566 call le_update_param 
+0x539f 021567 branch calc_clke_offset 
+:      021570 le_check_md:
+0x53a0 021571 disable user 
+0x53a1 021572 bmark1 mark_ble_rx_md ,enable_user 
+0x53a2 021573 bmark1 mark_ble_tx_md ,enable_user 
+0x53a3 021574 rtn 
+:      021577 le_slave_more_data:
+0x53a4 021578 bpatchx patch27_4 ,mem_patch27 
+0x53a5 021579 enable attempt 
+0x53a6 021580 call le_transmit_receive_sifs_notx 
+0x53a7 021581 branch le_slave_match ,match 
+0x53a8 021582 branch le_slave_cont 
+:      021584 le_slave_disconn:
+:      021587 le_disconnect:
+0x53a9 021588 bpatchx patch27_5 ,mem_patch27 
+0x53aa 021589 call le_clear_connection_info 
+0x53ab 021590 call app_disconn_reason_collect_ble 
+0x53ac 021591 call sp_initialize_256 
+0x53ad 021592 jam bt_evt_le_disconnected ,mem_fifo_temp 
+0x53ae 021593 branch ui_ipc_send_event 
+:      021595 le_clear_connection_info:
+0x53af 021596 setarg 0 
+0x53b0 021597 store 9 ,mem_le_tx_buff_used 
+0x53b1 021598 jam 0 ,mem_le_conn_handle 
+0x53b2 021599 jam lemode_idle ,mem_le_mode 
+0x53b3 021600 jam 0 ,mem_le_state 
+0x53b4 021601 jam flag_le_enc_null ,mem_le_enc_state 
+0x53b5 021602 jam flag_le_pairing_null ,mem_le_pairing_state 
+0x53b6 021603 rtn 
+:      021605 le_got_first_packet:
+0x53b7 021606 bpatchx patch27_6 ,mem_patch27 
+0x53b8 021607 fetch 1 ,mem_le_conn_rcv 
+0x53b9 021608 increase 1 ,pdata 
+0x53ba 021609 store 1 ,mem_le_conn_rcv 
+0x53bb 021610 fetch 1 ,mem_le_state 
+0x53bc 021611 rtnbit1 lestate_got_first_packet 
+0x53bd 021612 set1 lestate_got_first_packet 
+0x53be 021613 store 1 ,mem_le_state 
+0x53bf 021614 fetch 2 ,mem_le_init_superto 
+0x53c0 021615 store 2 ,mem_le_superto 
+0x53c1 021616 setarg 0 
+0x53c2 021617 store 4 ,mem_le_transmit_window 
+0x53c3 021618 rtn 
+:      021621 le_enable:
+0x53c4 021622 bpatchx patch27_7 ,mem_patch27 
+0x53c5 021623 jam 0x36 ,rf_adc_goff 
+0x53c6 021624 jam 0x5f ,rf_agc_nsat 
+0x53c7 021625 enable le 
+0x53c8 021626 jam 7 ,rfen_ulp 
+0x53c9 021627 call check_ble_disabled 
+0x53ca 021628 fetch 1 ,mem_250k_freq_enable 
+0x53cb 021629 rtn blank 
+0x53cc 021630 jam 0xb8 ,rf_iq_gain 
+0x53cd 021631 rtn 
+:      021633 le_disable:
+0x53ce 021634 bpatchx patch28_0 ,mem_patch28 
+0x53cf 021635 jam 0x2e ,rf_adc_goff 
+0x53d0 021636 jam 0xff ,rf_agc_nsat 
+0x53d1 021637 disable le 
+0x53d2 021638 jam 3 ,rfen_ulp 
+0x53d3 021639 arg 0 ,stop_watch 
+0x53d4 021640 rtn 
+:      021642 le_prep:
+0x53d5 021643 disable enable_crc 
+0x53d6 021644 disable enable_white 
+0x53d7 021645 fetch 3 ,mem_le_crcinit 
+0x53d8 021646 iforce crc24_init 
+0x53d9 021647 fetch 1 ,mem_le_ch_mapped 
+0x53da 021648 reverse pdata ,temp 
+0x53db 021649 set1 1 ,temp 
+0x53dc 021650 rshift temp ,white_init 
+0x53dd 021651 rtn 
+:      021654 lerx_setfreq:
+0x53de 021655 call le_setfreq 
+0x53df 021656 call set_freq_rx 
+0x53e0 021657 setarg param_pll_setup 
+0x53e1 021658 call sleep 
+0x53e2 021659 branch rf_rx_enable 
+:      021661 letx_setfreq:
+0x53e3 021662 branch txon ,match 
+:      021663 letx_setfreq0:
+0x53e4 021664 call le_setfreq 
+0x53e5 021665 branch set_freq_tx 
+:      021666 le_setfreq:
+0x53e6 021667 bpatchx patch28_1 ,mem_patch28 
+0x53e7 021668 call set_sync_on 
+0x53e8 021669 fetch 1 ,mem_le_testtype 
+0x53e9 021670 nbranch le_ctf_test ,blank 
+0x53ea 021671 fetch 1 ,mem_le_ch_mapped 
+0x53eb 021672 sub pdata ,36 ,null 
+0x53ec 021673 branch le_ctf_normal ,positive 
+0x53ed 021674 force 0 ,temp 
+0x53ee 021675 rtneq 37 
+0x53ef 021676 force 24 ,temp 
+0x53f0 021677 rtneq 38 
+0x53f1 021678 force 78 ,temp 
+0x53f2 021679 rtn 
+:      021681 le_ctf_normal:
+0x53f3 021682 sub pdata ,10 ,null 
+0x53f4 021683 branch le_ctf_low ,positive 
+0x53f5 021684 increase 1 ,pdata 
+:      021686 le_ctf_low:
+0x53f6 021687 lshift pdata ,pdata 
+0x53f7 021688 add pdata ,2 ,temp 
+0x53f8 021689 rtn 
+:      021691 le_ctf_test:
+0x53f9 021692 fetch 1 ,mem_le_ch_mapped 
+0x53fa 021693 lshift pdata ,temp 
+0x53fb 021694 rtn 
+:      021696 le_sca_map:
+0x53fc 021697 arg 500 ,temp 
+0x53fd 021698 rtn blank 
+0x53fe 021699 arg 250 ,temp 
+0x53ff 021700 rtneq 1 
+0x5400 021701 arg 150 ,temp 
+0x5401 021702 rtneq 2 
+0x5402 021703 arg 100 ,temp 
+0x5403 021704 rtneq 3 
+0x5404 021705 arg 75 ,temp 
+0x5405 021706 rtneq 4 
+0x5406 021707 arg 50 ,temp 
+0x5407 021708 rtneq 5 
+0x5408 021709 arg 40 ,temp 
+0x5409 021710 rtneq 6 
+0x540a 021711 arg 20 ,temp 
+0x540b 021712 rtn 
+:      021716 le_adv_access:
+0x540c 021717 setarg 0x8e89be 
+0x540d 021718 lshift8 pdata ,pdata 
+0x540e 021719 or_into 0xd6 ,pdata 
+0x540f 021720 iforce access 
+0x5410 021721 setarg 0x555555 
+0x5411 021722 store 3 ,mem_le_crcinit 
+0x5412 021723 rtn 
+:      021725 le_setup:
+0x5413 021726 bpatchx patch28_2 ,mem_patch28 
+0x5414 021727 enable swfine 
+0x5415 021728 fetch 4 ,mem_le_access 
+0x5416 021729 iforce access 
+0x5417 021730 call le_map_channel 
+0x5418 021731 setarg 0x200 
+0x5419 021732 branch le_setup_master ,master 
+0x541a 021733 fetch 2 ,mem_le_receive_window 
+0x541b 021734 rshift pdata ,pdata 
+:      021735 le_setup_master:
+0x541c 021736 arg param_pll_setup ,temp 
+0x541d 021737 iadd temp ,pdata 
+0x541e 021738 call ahead_window 
+0x541f 021739 deposit clke 
+0x5420 021740 store 6 ,mem_le_rxon_ts 
+0x5421 021741 rtn 
+:      021743 le_next_adv_channel:
+0x5422 021744 bpatchx patch28_3 ,mem_patch28 
+0x5423 021745 fetch 1 ,mem_le_ch_mapped 
+0x5424 021746 beq 37 ,le_next_adv_channel_curr_channel_37 
+0x5425 021747 beq 38 ,le_next_adv_channel_curr_channel_38 
+0x5426 021748 beq 39 ,le_next_adv_channel_curr_channel_39 
+0x5427 021749 branch le_next_adv_channel_curr_channel_39 
+:      021751 le_next_adv_channel_curr_channel_37:
+0x5428 021752 fetcht 1 ,mem_le_adv_channel_map 
+0x5429 021753 isolate1 bit_adv_channel_map_38 ,temp 
+0x542a 021754 branch set_le_next_adv_channel_38 ,true 
+0x542b 021755 isolate1 bit_adv_channel_map_39 ,temp 
+0x542c 021756 branch set_le_next_adv_channel_39 ,true 
+0x542d 021757 branch set_le_next_adv_channel_37 
+:      021760 le_next_adv_channel_curr_channel_38:
+0x542e 021761 fetcht 1 ,mem_le_adv_channel_map 
+0x542f 021762 isolate1 bit_adv_channel_map_39 ,temp 
+0x5430 021763 branch set_le_next_adv_channel_39 ,true 
+0x5431 021764 isolate1 bit_adv_channel_map_37 ,temp 
+0x5432 021765 branch set_le_next_adv_channel_37 ,true 
+0x5433 021766 branch set_le_next_adv_channel_38 
+:      021769 le_next_adv_channel_curr_channel_39:
+0x5434 021770 fetcht 1 ,mem_le_adv_channel_map 
+0x5435 021771 isolate1 bit_adv_channel_map_37 ,temp 
+0x5436 021772 branch set_le_next_adv_channel_37 ,true 
+0x5437 021773 isolate1 bit_adv_channel_map_38 ,temp 
+0x5438 021774 branch set_le_next_adv_channel_38 ,true 
+0x5439 021775 branch set_le_next_adv_channel_39 
+:      021779 set_le_next_adv_channel_37:
+0x543a 021780 jam 37 ,mem_le_ch_mapped 
+0x543b 021781 fetch 1 ,mem_le_adv_channel_map_temp 
+0x543c 021782 set1 bit_adv_channel_map_37 ,pdata 
+0x543d 021783 store 1 ,mem_le_adv_channel_map_temp 
+0x543e 021784 rtn 
+:      021786 set_le_next_adv_channel_38:
+0x543f 021787 jam 38 ,mem_le_ch_mapped 
+0x5440 021788 fetch 1 ,mem_le_adv_channel_map_temp 
+0x5441 021789 set1 bit_adv_channel_map_38 ,pdata 
+0x5442 021790 store 1 ,mem_le_adv_channel_map_temp 
+0x5443 021791 rtn 
+:      021793 set_le_next_adv_channel_39:
+0x5444 021794 jam 39 ,mem_le_ch_mapped 
+0x5445 021795 fetch 1 ,mem_le_adv_channel_map_temp 
+0x5446 021796 set1 bit_adv_channel_map_39 ,pdata 
+0x5447 021797 store 1 ,mem_le_adv_channel_map_temp 
+0x5448 021798 rtn 
+:      021802 le_context_nexthop:
+0x5449 021803 bpatchx patch28_4 ,mem_patch28 
+0x544a 021804 add rega ,coffset_mode ,contr 
+0x544b 021805 ifetch 1 ,contr 
+0x544c 021806 rtnbit0 mode_le 
+0x544d 021807 add rega ,coffset_le_event_cnt ,contw 
+0x544e 021808 ifetch 2 ,contw 
+0x544f 021809 increase 1 ,pdata 
+0x5450 021810 istore 2 ,contw 
+0x5451 021811 add rega ,coffset_le_hop ,contr 
+0x5452 021812 ifetch 1 ,contr 
+0x5453 021813 add rega ,coffset_le_ch ,contw 
+0x5454 021814 ifetcht 1 ,contw 
+0x5455 021815 iadd temp ,pdata 
+0x5456 021816 sub pdata ,36 ,null 
+0x5457 021817 branch le_nexthop_nowrap ,positive 
+0x5458 021818 increase -37 ,pdata 
+:      021819 le_nexthop_nowrap:
+0x5459 021820 istore 1 ,contw 
+0x545a 021821 rtn 
+:      021824 le_calc_channel_map:
+0x545b 021825 bpatchx patch28_5 ,mem_patch28 
+0x545c 021826 fetch 5 ,mem_le_channel_map 
+0x545d 021827 force 0 ,temp 
+0x545e 021828 force 37 ,loopcnt 
+:      021829 le_count_channels_loop:
+0x545f 021830 bbit0 0 ,le_count_channels_notused 
+0x5460 021831 increase 1 ,temp 
+:      021832 le_count_channels_notused:
+0x5461 021833 rshift pdata ,pdata 
+0x5462 021834 loop le_count_channels_loop 
+0x5463 021835 add temp ,-1 ,pdata 
+0x5464 021836 store 1 ,mem_le_channels 
+0x5465 021837 rtn 
+:      021839 le_map_channel:
+0x5466 021840 bpatchx patch28_6 ,mem_patch28 
+0x5467 021841 fetch 1 ,mem_le_ch 
+0x5468 021842 iforce queue 
+0x5469 021843 fetcht 5 ,mem_le_channel_map 
+0x546a 021844 qisolate1 temp 
+0x546b 021845 branch le_map_channel_end ,true 
+:      021846 le_map_channel_next:
+0x546c 021847 bpatchx patch28_7 ,mem_patch28 
+0x546d 021848 fetch 1 ,mem_le_channels 
+0x546e 021849 isub queue ,pdata 
+0x546f 021850 branch le_map_channel_cont ,positive 
+0x5470 021851 sub pdata ,-1 ,queue 
+0x5471 021852 branch le_map_channel_next 
+:      021853 le_map_channel_cont:
+0x5472 021854 copy queue ,loopcnt 
+0x5473 021855 force 0 ,queue 
+:      021856 le_map_channel_loop:
+0x5474 021857 qisolate1 temp 
+0x5475 021858 branch le_map_channel_skip ,true 
+0x5476 021859 increase 1 ,loopcnt 
+:      021860 le_map_channel_skip:
+0x5477 021861 deposit loopcnt 
+0x5478 021862 branch le_map_channel_end ,blank 
+0x5479 021863 increase 1 ,queue 
+0x547a 021864 increase -1 ,loopcnt 
+0x547b 021865 branch le_map_channel_loop 
+:      021866 le_map_channel_end:
+0x547c 021867 deposit queue 
+0x547d 021868 store 1 ,mem_le_ch_mapped 
+0x547e 021869 rtn 
+:      021872 le_wait_tx:
+0x547f 021873 branch le_wait_master ,master 
+0x5480 021874 until null ,timeout 
+0x5481 021875 rtn 
+:      021877 le_wait_master:
+0x5482 021878 arg 0xea0 ,timeup 
+0x5483 021879 until clkn_rt ,meet 
+0x5484 021880 rtn 
+:      021882 le_receive_adv:
+0x5485 021883 disable swfine 
+0x5486 021884 fetch 2 ,mem_le_scan_window 
+0x5487 021885 copy pdata ,timeup 
+0x5488 021886 branch le_receive_packet 
+:      021889 le_receive_slave:
+0x5489 021890 bpatchx patch29_0 ,mem_patch29 
+0x548a 021891 enable swfine 
+0x548b 021892 fetch 2 ,mem_le_receive_window 
+0x548c 021893 fetcht 4 ,mem_le_transmit_window 
+0x548d 021894 iadd temp ,timeup 
+:      021895 le_receive_packet:
+0x548e 021896 call lerx_setfreq 
+:      021897 le_receive_rxon:
+0x548f 021898 bpatchx patch29_1 ,mem_patch29 
+0x5490 021899 call le_prep 
+0x5491 021900 disable match 
+0x5492 021901 enable decode_fec0 
+0x5493 021902 enable is_rx 
+0x5494 021903 disable is_tx 
+0x5495 021904 copy timeup ,stop_watch 
+0x5496 021905 correlate null ,timeout 
+0x5497 021906 branch le_receive_on_attempt ,attempt 
+0x5498 021907 copy clke ,temp 
+0x5499 021908 storet 6 ,mem_sync_clke 
+:      021909 le_receive_on_attempt:
+0x549a 021910 nbranch end_of_packet ,sync 
+0x549b 021911 branch le_receive_skip ,attempt 
+0x549c 021912 arg param_clke_cal_le ,clke_rt 
+0x549d 021913 copy bt_clk ,clke_bt 
+0x549e 021914 fetch 1 ,mem_le_state 
+0x549f 021915 bbit0 lestate_got_first_packet ,le_receive_skip 
+0x54a0 021916 call lpm_adjust_clk ,wake 
+:      021917 le_receive_skip:
+0x54a1 021918 bpatchx patch29_2 ,mem_patch29 
+0x54a2 021919 call save_rssi 
+0x54a3 021920 enable enable_white 
+0x54a4 021921 enable enable_crc 
+0x54a5 021922 parse demod ,bucket ,8 
+0x54a6 021923 rshift3 pwindow ,pdata 
+0x54a7 021924 store 1 ,mem_le_rxbuf 
+0x54a8 021925 parse demod ,bucket ,8 
+0x54a9 021926 rshift3 pwindow ,pdata 
+0x54aa 021927 istore 1 ,contw 
+0x54ab 021928 and pdata ,0x3f ,loopcnt 
+0x54ac 021929 branch lerx_nopayload ,zero 
+:      021931 lerx_loop:
+0x54ad 021932 parse demod ,bucket ,8 
+0x54ae 021933 rshift3 pwindow ,pdata 
+0x54af 021934 istore 1 ,contw 
+0x54b0 021935 loop lerx_loop 
+:      021937 lerx_nopayload:
+0x54b1 021938 bpatchx patch29_3 ,mem_patch29 
+0x54b2 021939 parse demod ,bucket ,24 
+0x54b3 021940 enable swfine 
+0x54b4 021941 arg param_sifs ,stop_watch 
+0x54b5 021942 rshift32 pdata ,pdata 
+0x54b6 021943 rshift16 pdata ,pdata 
+0x54b7 021944 istore 3 ,contw 
+0x54b8 021945 branch end_of_packet ,crc_failed 
+0x54b9 021946 enable match 
+0x54ba 021947 fetch 1 ,mem_last_freq 
+0x54bb 021948 add pdata ,0 ,rega 
+0x54bc 021949 call rf_write_freq 
+0x54bd 021950 disable decode_fec0 
+0x54be 021951 branch set_sync_on 
+:      021953 le_transmit_receive_sifs:
+0x54bf 021954 bpatchx patch29_4 ,mem_patch29 
+0x54c0 021955 call le_transmit 
+:      021956 le_transmit_receive_sifs_notx:
+0x54c1 021957 fetcht 1 ,mem_last_freq 
+0x54c2 021958 call set_freq_rx 
+0x54c3 021959 call rf_rx_enable 
+0x54c4 021960 enable swfine 
+0x54c5 021961 arg 5500 ,timeup 
+0x54c6 021962 branch le_receive_rxon 
+:      021964 le_transmit_norx:
+0x54c7 021965 call le_transmit 
+0x54c8 021966 branch end_of_packet 
+:      021968 le_transmit:
+0x54c9 021969 bpatchx patch29_5 ,mem_patch29 
+0x54ca 021970 call le_prep 
+0x54cb 021971 call letx_setfreq 
+0x54cc 021972 branch le_transmit0 
+:      021974 le_transmit0:
+0x54cd 021975 set1 txgfsk ,radio_ctrl 
+0x54ce 021976 enable encode_fec0 
+0x54cf 021977 enable is_tx 
+0x54d0 021978 disable is_rx 
+0x54d1 021979 call le_wait_tx 
+0x54d2 021980 rshift16 access ,pdata 
+0x54d3 021981 rshift8 pdata ,pdata 
+0x54d4 021982 rshift4 pdata ,pdata 
+0x54d5 021983 inject mod ,40 
+0x54d6 021984 enable enable_white 
+0x54d7 021985 enable enable_crc 
+0x54d8 021986 bpatchx patch29_6 ,mem_patch29 
+0x54d9 021987 fetch 1 ,mem_le_txheader 
+0x54da 021988 inject mod ,8 
+0x54db 021989 ifetch 1 ,contr 
+0x54dc 021990 and pdata ,0x3f ,loopcnt 
+0x54dd 021991 inject mod ,8 
+0x54de 021992 branch letr_nopayload ,zero 
+:      021993 letr_loop:
+0x54df 021994 ifetch 1 ,contr 
+0x54e0 021995 inject mod ,8 
+0x54e1 021996 loop letr_loop 
+:      021998 letr_nopayload:
+0x54e2 021999 enable enable_parity 
+0x54e3 022000 inject mod ,24 
+0x54e4 022001 disable enable_parity 
+0x54e5 022002 until null ,tx_clear 
+0x54e6 022003 nop 100 
+0x54e7 022004 disable encode_fec0 
+0x54e8 022005 rtn 
+:      022007 le_send_adv_ind:
+0x54e9 022008 bpatchx patch29_7 ,mem_patch29 
+0x54ea 022009 fetch 1 ,mem_le_adv_type 
+0x54eb 022010 beq adv_direct_ind ,le_send_adv_direct_ind 
+0x54ec 022011 fetch 1 ,mem_le_adv_own_addr_type 
+0x54ed 022012 lshift4 pdata ,pdata 
+0x54ee 022013 lshift2 pdata ,pdata 
+0x54ef 022014 store 1 ,mem_le_txheader 
+0x54f0 022015 fetcht 1 ,mem_le_adv_data_len 
+0x54f1 022016 add temp ,6 ,pdata 
+0x54f2 022017 store 1 ,mem_le_txlen 
+0x54f3 022018 fetch 6 ,mem_le_lap 
+0x54f4 022019 store 6 ,mem_le_txpayload 
+0x54f5 022020 copy temp ,loopcnt 
+0x54f6 022021 arg mem_le_adv_data ,contr 
+0x54f7 022022 call memcpy_fast 
+0x54f8 022023 branch le_send_adv_transmit 
+:      022024 le_send_adv_direct_ind:
+0x54f9 022025 fetch 1 ,mem_le_adv_direct_addr_type 
+0x54fa 022026 lshift4 pdata ,pdata 
+0x54fb 022027 lshift2 pdata ,pdata 
+0x54fc 022028 increase 1 ,pdata 
+0x54fd 022029 store 1 ,mem_le_txheader 
+0x54fe 022030 setarg 12 
+0x54ff 022031 store 1 ,mem_le_txlen 
+0x5500 022032 fetch 6 ,mem_le_lap 
+0x5501 022033 store 6 ,mem_le_txpayload 
+0x5502 022034 fetch 6 ,mem_hci_plap 
+0x5503 022035 istore 6 ,contw 
+:      022036 le_send_adv_transmit:
+0x5504 022037 bpatchx patch2a_0 ,mem_patch2a 
+0x5505 022038 fetch 1 ,mem_le_adv_transmit 
+0x5506 022039 increase 1 ,pdata 
+0x5507 022040 store 1 ,mem_le_adv_transmit 
+0x5508 022041 arg 1800 ,stop_watch 
+0x5509 022042 disable match 
+0x550a 022043 branch le_transmit_receive_sifs 
+:      022045 le_send_scan_request:
+0x550b 022046 bpatchx patch2a_1 ,mem_patch2a 
+0x550c 022047 fetch 1 ,mem_le_scan_type 
+0x550d 022048 rtnne le_scan_type_active 
+0x550e 022049 fetch 1 ,mem_le_adv_transmit 
+0x550f 022050 increase 1 ,pdata 
+0x5510 022051 store 1 ,mem_le_adv_transmit 
+0x5511 022052 arg 0x0c03 ,temp 
+0x5512 022053 fetch 1 ,mem_le_scan_own_addr_type 
+0x5513 022054 nsetflag blank ,le_sender_addr_bit ,temp 
+0x5514 022055 copy rega ,pdata 
+0x5515 022056 nsetflag blank ,le_receiver_addr_bit ,temp 
+0x5516 022057 storet 2 ,mem_le_txheader 
+0x5517 022058 fetch 6 ,mem_le_lap 
+0x5518 022059 istore 6 ,contw 
+0x5519 022060 fetch 6 ,mem_le_plap 
+0x551a 022061 istore 6 ,contw 
+0x551b 022062 branch le_transmit_receive_sifs 
+:      022065 le_send_scan_response:
+0x551c 022066 bpatchx patch2a_2 ,mem_patch2a 
+0x551d 022067 arg scan_rsp ,temp 
+0x551e 022068 fetch 1 ,mem_le_adv_own_addr_type 
+0x551f 022069 nsetflag blank ,le_sender_addr_bit ,temp 
+0x5520 022070 storet 1 ,mem_le_txheader 
+0x5521 022071 fetcht 1 ,mem_le_scan_data_len 
+0x5522 022072 add temp ,6 ,pdata 
+0x5523 022073 store 1 ,mem_le_txlen 
+0x5524 022074 fetch 6 ,mem_le_lap 
+0x5525 022075 store 6 ,mem_le_txpayload 
+0x5526 022076 arg mem_le_scan_data ,contr 
+0x5527 022077 copy temp ,loopcnt 
+0x5528 022078 call memcpy_fast 
+0x5529 022079 call le_transmit_norx 
+0x552a 022080 branch le_adv_not_match 
+:      022082 le_connect_request:
+0x552b 022083 bpatchx patch2a_3 ,mem_patch2a 
+0x552c 022084 force -1 ,pdata 
+0x552d 022085 setsect 2 ,1 
+0x552e 022086 store 5 ,mem_le_channel_map 
+0x552f 022087 call le_calc_channel_map 
+0x5530 022088 force 4 ,loopcnt 
+0x5531 022089 arg mem_le_access ,contw 
+0x5532 022090 call generate_random_loop 
+0x5533 022091 fetch 2 ,mem_le_timeout 
+0x5534 022092 store 2 ,mem_le_superto 
+:      022093 le_con_req_hop_retry:
+0x5535 022094 random pdata 
+0x5536 022095 and_into 0xf ,pdata 
+0x5537 022096 sub pdata ,4 ,null 
+0x5538 022097 branch le_con_req_hop_retry ,positive 
+0x5539 022098 store 1 ,mem_le_hop 
+0x553a 022099 store 1 ,mem_tmp1 
+0x553b 022100 bpatchx patch2a_4 ,mem_patch2a 
+0x553c 022101 fetcht 2 ,mem_le_conn_interval 
+0x553d 022102 storet 2 ,mem_le_tsniff 
+0x553e 022103 copy temp ,regc 
+0x553f 022104 add clkn_bt ,7 ,pdata 
+0x5540 022105 idiv regc 
+0x5541 022106 call wait_div_end 
+0x5542 022107 remainder rega 
+0x5543 022108 isub rega ,pdata 
+0x5544 022109 iadd regc ,pdata 
+0x5545 022110 fetcht 2 ,mem_le_dsniff 
+0x5546 022111 iadd temp ,pdata 
+0x5547 022112 store 4 ,mem_le_anchor 
+0x5548 022113 isub clkn_bt ,rega 
+0x5549 022114 increase -6 ,rega 
+0x554a 022115 arg 0x2205 ,regb 
+0x554b 022116 fetch 1 ,mem_le_conn_own_addr_type 
+0x554c 022117 nsetflag blank ,le_sender_addr_bit ,regb 
+0x554d 022118 fetch 1 ,mem_le_conn_peer_addr_type 
+0x554e 022119 nsetflag blank ,le_receiver_addr_bit ,regb 
+0x554f 022120 copy regb ,pdata 
+0x5550 022121 store 2 ,mem_le_txheader 
+0x5551 022122 fetch 6 ,mem_le_lap 
+0x5552 022123 istore 6 ,contw 
+0x5553 022124 fetch 6 ,mem_le_plap 
+0x5554 022125 istore 6 ,contw 
+0x5555 022126 fetch 4 ,mem_le_access 
+0x5556 022127 istore 4 ,contw 
+0x5557 022128 random pdata 
+0x5558 022129 istore 2 ,contw 
+0x5559 022130 random pdata 
+0x555a 022131 istore 1 ,contw 
+0x555b 022132 force 2 ,pdata 
+0x555c 022133 istore 1 ,contw 
+0x555d 022134 rshift2 rega ,pdata 
+0x555e 022135 istore 2 ,contw 
+0x555f 022136 rshift2 regc ,pdata 
+0x5560 022137 istore 2 ,contw 
+0x5561 022138 bpatchx patch2a_5 ,mem_patch2a 
+0x5562 022139 setarg 0 
+0x5563 022140 istore 2 ,contw 
+0x5564 022141 fetch 2 ,mem_le_timeout 
+0x5565 022142 istore 2 ,contw 
+0x5566 022143 fetch 5 ,mem_le_channel_map 
+0x5567 022144 istore 5 ,contw 
+0x5568 022145 fetch 1 ,mem_le_hop 
+0x5569 022146 arg param_le_sca ,temp 
+0x556a 022147 ior temp ,pdata 
+0x556b 022148 istore 1 ,contw 
+0x556c 022149 call le_transmit_norx 
+0x556d 022150 setarg mem_le_txheader 
+0x556e 022151 add pdata ,18 ,contr 
+0x556f 022152 ifetch 3 ,contr 
+0x5570 022153 store 3 ,mem_le_crcinit 
+0x5571 022154 rtn 
+:      022156 le_init_adv:
+0x5572 022157 bpatchx patch2a_6 ,mem_patch2a 
+0x5573 022158 disable master 
+0x5574 022159 branch le_adv_access 
+:      022163 le_update_param:
+0x5575 022164 fetch 1 ,mem_le_state 
+0x5576 022165 rtnbit0 lestate_update_param 
+0x5577 022166 fetch 2 ,mem_le_event_count 
+0x5578 022167 fetcht 2 ,mem_le_instant 
+0x5579 022168 isub temp ,pdata 
+0x557a 022169 nrtn positive 
+0x557b 022170 store 2 ,mem_pdatatemp 
+0x557c 022171 bpatchx patch2a_7 ,mem_patch2a 
+0x557d 022172 fetch 1 ,mem_le_state 
+0x557e 022173 set0 lestate_update_param ,pdata 
+0x557f 022174 set0 lestate_got_first_packet ,pdata 
+0x5580 022175 store 1 ,mem_le_state 
+0x5581 022176 fetch 4 ,mem_le_anchor 
+0x5582 022177 fetcht 2 ,mem_le_tsniff 
+0x5583 022178 storet 2 ,mem_temp 
+0x5584 022179 isub temp ,rega 
+0x5585 022180 bpatchx patch2b_0 ,mem_patch2b 
+0x5586 022181 fetch 1 ,mem_le_new_param 
+0x5587 022182 store 1 ,mem_le_window_size 
+0x5588 022183 ifetcht 2 ,contr 
+0x5589 022184 ifetch 2 ,contr 
+0x558a 022185 lshift2 pdata ,pdata 
+0x558b 022186 store 2 ,mem_le_tsniff 
+0x558c 022187 lshift2 temp ,temp 
+0x558d 022188 iadd temp ,pdata 
+0x558e 022189 ifetcht 4 ,contr 
+0x558f 022190 storet 4 ,mem_le_slave_latency 
+0x5590 022191 iadd rega ,pdata 
+0x5591 022192 copy pdata ,regab 
+0x5592 022193 fetch 2 ,mem_le_tsniff 
+0x5593 022194 fetcht 2 ,mem_temp 
+0x5594 022195 isub temp ,pdata 
+0x5595 022196 fetcht 2 ,mem_pdatatemp 
+0x5596 022197 imul32 temp ,pdata 
+0x5597 022198 iadd regab ,pdata 
+0x5598 022199 store 4 ,mem_le_anchor 
+0x5599 022200 call le_receive_window_size 
+0x559a 022201 fetch 2 ,mem_le_superto 
+0x559b 022202 store 2 ,mem_le_init_superto 
+0x559c 022203 rtn 
+:      022206 le_update_channel_map:
+0x559d 022207 bpatchx patch2b_1 ,mem_patch2b 
+0x559e 022208 fetch 1 ,mem_le_state 
+0x559f 022209 rtnbit0 lestate_update_map 
+0x55a0 022210 fetch 2 ,mem_le_event_count 
+0x55a1 022211 fetcht 2 ,mem_le_instant 
+0x55a2 022212 isub temp ,pdata 
+0x55a3 022213 nrtn positive 
+0x55a4 022214 fetch 1 ,mem_le_state 
+0x55a5 022215 set0 lestate_update_map ,pdata 
+0x55a6 022216 store 1 ,mem_le_state 
+0x55a7 022217 fetch 5 ,mem_le_new_map 
+0x55a8 022218 store 5 ,mem_le_channel_map 
+0x55a9 022219 branch le_calc_channel_map 
+:      022222 le_acknowledge:
+0x55aa 022223 bpatchx patch2b_2 ,mem_patch2b 
+0x55ab 022224 call le_supervision_flush 
+0x55ac 022225 call le_check_wak 
+0x55ad 022226 fetch 1 ,mem_le_rxbuf 
+0x55ae 022227 isolate1 md ,pdata 
+0x55af 022228 setflag true ,mark_ble_rx_md ,mark 
+0x55b0 022229 rshift pdata ,pdata 
+0x55b1 022230 ixor temp ,pdata 
+0x55b2 022231 isolate1 nesn ,pdata 
+0x55b3 022232 setflag true ,mark_old_packet ,mark 
+0x55b4 022233 rtnmark1 mark_old_packet 
+0x55b5 022234 fetch 1 ,mem_le_rxbuf + 1 
+0x55b6 022235 branch le_ack_unenc ,blank 
+0x55b7 022236 fetch 1 ,mem_le_state 
+0x55b8 022237 bbit0 lestate_encryption ,le_ack_unenc 
+0x55b9 022238 call load_sk 
+0x55ba 022239 call le_decrypt 
+0x55bb 022240 nrtn blank 
+:      022241 le_ack_unenc:
+0x55bc 022242 fetcht 1 ,mem_le_arq 
+0x55bd 022243 setflip nesn ,temp 
+0x55be 022244 storet 1 ,mem_le_arq 
+0x55bf 022245 rtn 
+:      022248 le_check_wak:
+0x55c0 022249 bpatchx patch2b_3 ,mem_patch2b 
+0x55c1 022250 fetcht 1 ,mem_le_arq 
+0x55c2 022251 isolate0 wak ,temp 
+0x55c3 022252 rtn true 
+0x55c4 022253 fetch 1 ,mem_le_rxbuf 
+0x55c5 022254 lshift pdata ,pdata 
+0x55c6 022255 ixor temp ,pdata 
+0x55c7 022256 rtnbit0 sn 
+0x55c8 022257 set0 wak ,temp 
+0x55c9 022258 setflip sn ,temp 
+0x55ca 022259 storet 1 ,mem_le_arq 
+0x55cb 022260 compare 3 ,temp ,3 
+0x55cc 022261 nrtn true 
+0x55cd 022262 fetch 1 ,mem_le_txpayload 
+0x55ce 022263 beq ll_start_enc_req ,le_set_enc 
+0x55cf 022264 fetch 1 ,mem_le_enc_state 
+0x55d0 022265 beq flag_le_enc_pause ,le_clear_enc 
+0x55d1 022266 rtn 
+:      022269 le_set_enc:
+0x55d2 022270 fetch 1 ,mem_le_state 
+0x55d3 022271 set1 lestate_encryption ,pdata 
+0x55d4 022272 store 1 ,mem_le_state 
+0x55d5 022273 rtn 
+:      022275 le_clear_enc:
+0x55d6 022276 bpatchx patch2b_4 ,mem_patch2b 
+0x55d7 022277 jam flag_le_enc_null ,mem_le_enc_state 
+0x55d8 022278 arg 0 ,pdata 
+0x55d9 022279 store 4 ,mem_le_last_mic 
+0x55da 022280 store 5 ,mem_le_pcnt_tx 
+0x55db 022281 set1 39 ,pdata 
+0x55dc 022282 store 5 ,mem_le_pcnt_rx 
+0x55dd 022283 fetch 1 ,mem_le_state 
+0x55de 022284 set0 lestate_encryption ,pdata 
+0x55df 022285 store 1 ,mem_le_state 
+0x55e0 022286 rtn 
+:      022289 le_wait_adv:
+0x55e1 022290 bpatchx patch2b_5 ,mem_patch2b 
+0x55e2 022291 call le_next_adv_channel 
+0x55e3 022292 call le_receive_adv 
+0x55e4 022293 fetch 1 ,mem_le_adv_waitcnt 
+0x55e5 022294 increase 1 ,pdata 
+0x55e6 022295 store 1 ,mem_le_adv_waitcnt 
+0x55e7 022296 rtn 
+:      022299 le_scan:
+0x55e8 022300 bpatchx patch2b_6 ,mem_patch2b 
+0x55e9 022301 fetch 1 ,mem_le_scan_enable 
+0x55ea 022302 rtnne le_scan_enable 
+0x55eb 022303 arg le_scan_interval_timer ,queue 
+0x55ec 022304 call timer_check 
+0x55ed 022305 nrtn blank 
+0x55ee 022306 fetch 2 ,mem_le_scan_interval 
+0x55ef 022307 fetcht 2 ,mem_le_scan_window 
+0x55f0 022308 isub temp ,pdata 
+0x55f1 022309 arg le_scan_interval_timer ,queue 
+0x55f2 022310 call timer_init 
+0x55f3 022311 disable master 
+0x55f4 022312 call le_init_adv 
+0x55f5 022313 call le_wait_adv 
+0x55f6 022314 nrtn match 
+0x55f7 022315 bpatchx patch2b_7 ,mem_patch2b 
+0x55f8 022316 fetch 6 ,mem_le_rxbuf + 2 
+0x55f9 022317 store 6 ,mem_le_plap 
+0x55fa 022320 fetch 1 ,mem_le_adv_rcv 
+0x55fb 022321 increase 1 ,pdata 
+0x55fc 022322 store 1 ,mem_le_adv_rcv 
+0x55fd 022323 call le_create_conn 
+0x55fe 022324 rtn master 
+0x55ff 022325 call le_send_scan_request 
+0x5600 022326 nrtn match 
+0x5601 022327 bpatchx patch2c_0 ,mem_patch2c 
+0x5602 022328 fetch 1 ,mem_le_scanrsp_rcv 
+0x5603 022329 increase 1 ,pdata 
+0x5604 022330 store 1 ,mem_le_scanrsp_rcv 
+0x5605 022331 fetch 9 ,mem_le_rxbuf + 8 
+0x5606 022332 store 9 ,mem_tmp_buffer 
+0x5607 022333 rtn 
+:      022335 le_create_conn:
+0x5608 022336 bpatchx patch2c_1 ,mem_patch2c 
+0x5609 022337 fetch 1 ,mem_cmd_le_create_conn 
+0x560a 022338 rtnne hci_cmd_le_create_conn 
+0x560b 022339 fetch 6 ,mem_le_plap 
+0x560c 022340 fetcht 6 ,mem_le_conn_peer_addr 
+0x560d 022341 isub temp ,null 
+0x560e 022342 nrtn zero 
+0x560f 022343 call context_new 
+0x5610 022344 nrtn zero 
+0x5611 022345 call le_connect_request 
+0x5612 022346 call le_init_master 
+0x5613 022347 bpatchx patch2c_2 ,mem_patch2c 
+0x5614 022348 jam 0 ,mem_hci_cmd 
+0x5615 022349 jam 0 ,mem_le_peer_sca 
+0x5616 022350 jam 0 ,mem_le_scan_enable 
+0x5617 022351 jam 0 ,mem_cmd_le_create_conn 
+0x5618 022352 branch context_save 
+:      022354 le_scan_check_sender_addr_type:
+0x5619 022355 arg 1 ,rega 
+0x561a 022356 fetch 1 ,mem_le_rxbuf 
+0x561b 022357 rtnbit1 le_sender_addr_bit 
+0x561c 022358 arg 0 ,rega 
+0x561d 022359 rtn 
+:      022363 le_prepare_tx:
+0x561e 022364 bpatchx patch2c_3 ,mem_patch2c 
+0x561f 022365 fetch 1 ,mem_le_arq 
+0x5620 022366 rtnbit1 wak 
+0x5621 022367 call le_check_tx_md 
+0x5622 022368 call le_fifo_get_first_tx_ptr 
+0x5623 022369 branch le_send_empty ,blank 
+0x5624 022370 ifetch 1 ,contr 
+0x5625 022371 ifetcht 1 ,contr 
+0x5626 022372 copy temp ,rega 
+0x5627 022373 isub rega ,pdata 
+0x5628 022374 arg le_max_paket_len ,temp 
+0x5629 022375 call not_greater_than 
+0x562a 022376 copy pdata ,temp 
+0x562b 022377 ifetch 1 ,contr 
+0x562c 022378 copy pdata ,type 
+0x562d 022379 copy rega ,pdata 
+0x562e 022380 iadd contr ,contr 
+0x562f 022381 arg mem_le_txpayload ,contw 
+0x5630 022382 copy temp ,loopcnt 
+0x5631 022383 call memcpy 
+0x5632 022384 call le_update_tx_type 
+0x5633 022385 call le_send_packet 
+0x5634 022387 call le_fifo_get_first_tx_ptr 
+0x5635 022388 ifetch 1 ,contr 
+0x5636 022389 copy pdata ,rega 
+0x5637 022390 copy contr ,regc 
+0x5638 022391 ifetcht 1 ,contr 
+0x5639 022392 copy temp ,regb 
+0x563a 022393 isub regb ,pdata 
+0x563b 022394 arg le_max_paket_len ,temp 
+0x563c 022395 call not_greater_than 
+0x563d 022396 iadd regb ,pdata 
+0x563e 022397 istore 1 ,regc 
+0x563f 022398 isub rega ,null 
+0x5640 022399 nrtn zero 
+0x5641 022400 branch le_fifo_release_first_node 
+:      022403 le_check_tx_md:
+0x5642 022404 call le_check_continue 
+0x5643 022405 rtnmark1 mark_ble_tx_md 
+0x5644 022406 fetch 1 ,mem_le_configuration 
+0x5645 022407 bbit0 bit_ble_transmit_packet_by_md ,le_clear_md 
+0x5646 022408 call le_fifo_get_second_tx_ptr 
+0x5647 022409 branch le_clear_md ,blank 
+0x5648 022410 branch le_set_md 
+:      022413 le_check_continue:
+0x5649 022414 call le_fifo_get_first_tx_ptr 
+0x564a 022415 branch le_clear_md ,blank 
+0x564b 022416 ifetch 1 ,contr 
+0x564c 022417 ifetcht 1 ,contr 
+0x564d 022418 isub temp ,pdata 
+0x564e 022419 sub pdata ,le_max_paket_len ,null 
+0x564f 022420 branch le_clear_md ,positive 
+:      022421 le_set_md:
+0x5650 022422 set1 mark_ble_tx_md ,mark 
+0x5651 022423 rtn 
+:      022425 le_clear_md:
+0x5652 022426 set0 mark_ble_tx_md ,mark 
+0x5653 022427 rtn 
+:      022429 le_update_tx_type:
+0x5654 022430 copy rega ,pdata 
+0x5655 022431 rtn blank 
+0x5656 022432 arg llid_continue ,type 
+0x5657 022433 rtn 
+:      022436 le_att_check_notification_enable:
+0x5658 022437 bpatchx patch2c_4 ,mem_patch2c 
+0x5659 022438 increase 1 ,temp 
+0x565a 022439 call le_att_get_handle_ptr 
+0x565b 022440 increase -2 ,contr 
+0x565c 022441 ifetch 2 ,contr 
+0x565d 022442 arg client_charactertic_configuration ,temp 
+0x565e 022443 isub temp ,null 
+0x565f 022444 nrtn zero 
+0x5660 022445 increase 1 ,contr 
+0x5661 022446 copy contr ,rega 
+0x5662 022447 ifetch 1 ,contr 
+0x5663 022448 rtn 
+:      022451 le_send_empty:
+0x5664 022452 force 0 ,temp 
+0x5665 022453 force 1 ,type 
+:      022455 le_send_packet:
+0x5666 022456 bpatchx patch2c_5 ,mem_patch2c 
+0x5667 022457 storet 1 ,mem_le_txlen 
+0x5668 022458 fetcht 1 ,mem_le_arq 
+0x5669 022459 set1 wak ,temp 
+0x566a 022460 and temp ,0xfc ,pdata 
+0x566b 022461 ior type ,pdata 
+0x566c 022462 store 1 ,mem_le_arq 
+0x566d 022463 and_into 0x1f ,pdata 
+0x566e 022464 isolate1 mark_ble_tx_md ,mark 
+0x566f 022465 setflag true ,md ,pdata 
+0x5670 022466 store 1 ,mem_le_txheader 
+0x5671 022468 fetch 1 ,mem_le_txheader 
+0x5672 022469 compare 1 ,type ,3 
+0x5673 022470 nbranch le_send_no_txlen ,true 
+0x5674 022471 fetch 1 ,mem_le_txlen 
+0x5675 022472 rtn blank 
+:      022473 le_send_no_txlen:
+0x5676 022474 fetch 1 ,mem_le_state 
+0x5677 022475 rtnbit0 lestate_encryption 
+0x5678 022476 call load_sk 
+0x5679 022477 branch le_encrypt 
+:      022480 get_lpm_wake_ble_rx_lock:
+0x567a 022481 arg wake_lock_ble_rx ,queue 
+0x567b 022482 branch lpm_get_wake_lock 
+:      022484 put_lpm_wake_ble_rx_lock:
+0x567c 022485 arg wake_lock_ble_rx ,queue 
+0x567d 022486 branch lpm_put_wake_lock 
+:      022489 le_parse:
+0x567e 022490 bpatchx patch2c_6 ,mem_patch2c 
+0x567f 022491 rtnmark1 mark_old_packet 
+0x5680 022492 call le_fifo_check_full 
+0x5681 022493 nrtn blank 
+0x5682 022494 fetch 1 ,mem_le_rxbuf 
+0x5683 022495 and pdata ,0x3 ,pdata 
+0x5684 022496 store 1 ,mem_le_packet_llid 
+0x5685 022497 ifetch 1 ,contr 
+0x5686 022498 and pdata ,0x1f ,pdata 
+0x5687 022499 store 1 ,mem_le_packet_size 
+0x5688 022500 rtn blank 
+0x5689 022501 copy contr ,pdata 
+0x568a 022502 store 2 ,mem_le_payload_ptr 
+0x568b 022503 fetch 1 ,mem_le_packet_llid 
+0x568c 022504 beq llid_le_ll ,le_parse_ll 
+:      022505 le_parse_l2cap:
+0x568d 022506 call le_check_l2cap_complete 
+0x568e 022507 nbranch get_lpm_wake_ble_rx_lock ,user 
+0x568f 022508 call put_lpm_wake_ble_rx_lock 
+0x5690 022509 fetch 2 ,mem_le_payload_ptr 
+0x5691 022510 copy pdata ,contr 
+0x5692 022511 ifetch 2 ,contr 
+0x5693 022512 store 2 ,mem_le_l2cap_size 
+0x5694 022513 bpatchx patch2c_7 ,mem_patch2c 
+0x5695 022514 ifetch 2 ,contr 
+0x5696 022515 beq le_l2cap_cid_att ,le_parse_att 
+0x5697 022516 beq le_l2cap_cid_smp ,le_parse_smp 
+0x5698 022517 beq le_l2cap_cid_signal ,le_parse_signaling 
+0x5699 022518 rtn 
+:      022521 le_check_l2cap_complete:
+0x569a 022522 fetch 1 ,mem_le_packet_llid 
+0x569b 022523 beq llid_start ,le_check_l2cap_llid_start 
+0x569c 022524 beq llid_continue ,le_check_l2cap_llid_continue 
+0x569d 022525 rtn 
+:      022530 le_check_l2cap_cid_legal:
+0x569e 022531 call enable_user 
+0x569f 022532 arg le_l2cap_cid_att ,temp 
+0x56a0 022533 isub pdata ,null 
+0x56a1 022534 rtn zero 
+0x56a2 022535 arg le_l2cap_cid_signal ,temp 
+0x56a3 022536 isub pdata ,null 
+0x56a4 022537 rtn zero 
+0x56a5 022538 arg le_l2cap_cid_smp ,temp 
+0x56a6 022539 isub pdata ,null 
+0x56a7 022540 rtn zero 
+0x56a8 022541 branch disable_user 
+:      022544 le_check_l2cap_llid_start:
+0x56a9 022545 fetch 2 ,mem_le_payload_ptr 
+0x56aa 022546 copy pdata ,contr 
+0x56ab 022547 ifetch 2 ,contr 
+0x56ac 022548 store 2 ,mem_le_l2cap_size 
+0x56ad 022549 ifetch 2 ,contr 
+0x56ae 022550 call le_check_l2cap_cid_legal 
+0x56af 022551 nrtn user 
+0x56b0 022552 fetcht 1 ,mem_le_packet_size 
+0x56b1 022553 storet 1 ,mem_le_packet_len_recved 
+0x56b2 022554 fetch 2 ,mem_le_l2cap_size 
+0x56b3 022555 increase 4 ,pdata 
+0x56b4 022556 isub temp ,null 
+0x56b5 022557 branch enable_user ,zero 
+0x56b6 022558 fetch 1 ,mem_le_packet_size 
+0x56b7 022559 copy pdata ,loopcnt 
+0x56b8 022560 arg mem_le_l2capbuf ,contw 
+0x56b9 022561 fetch 2 ,mem_le_payload_ptr 
+0x56ba 022562 copy pdata ,contr 
+0x56bb 022563 call memcpy 
+0x56bc 022564 branch disable_user 
+:      022569 le_check_l2cap_continue_legal:
+0x56bd 022570 call enable_user 
+0x56be 022571 fetch 1 ,mem_le_packet_len_recved 
+0x56bf 022572 nrtn blank 
+0x56c0 022573 branch disable_user 
+:      022575 le_check_l2cap_llid_continue:
+0x56c1 022576 call le_check_l2cap_continue_legal 
+0x56c2 022577 nrtn user 
+0x56c3 022578 fetch 1 ,mem_le_packet_len_recved 
+0x56c4 022579 arg mem_le_l2capbuf ,contw 
+0x56c5 022580 iadd contw ,rega 
+0x56c6 022581 fetcht 1 ,mem_le_packet_size 
+0x56c7 022582 iadd temp ,pdata 
+0x56c8 022583 store 1 ,mem_le_packet_len_recved 
+0x56c9 022584 fetch 1 ,mem_le_packet_size 
+0x56ca 022585 copy pdata ,loopcnt 
+0x56cb 022586 copy rega ,contw 
+0x56cc 022587 fetch 2 ,mem_le_payload_ptr 
+0x56cd 022588 copy pdata ,contr 
+0x56ce 022589 call memcpy_fast 
+0x56cf 022590 setarg mem_le_l2capbuf 
+0x56d0 022591 store 2 ,mem_le_payload_ptr 
+0x56d1 022592 fetch 2 ,mem_le_l2cap_size 
+0x56d2 022593 increase 4 ,pdata 
+0x56d3 022594 fetcht 1 ,mem_le_packet_len_recved 
+0x56d4 022595 isub temp ,null 
+0x56d5 022596 branch enable_user ,zero 
+0x56d6 022597 branch disable_user 
+:      022603 le_get_search_att_type:
+0x56d7 022604 call store_contr 
+0x56d8 022605 arg mem_le_search_att_type_length ,contw 
+:      022606 le_get_search_common:
+0x56d9 022607 fetch 2 ,mem_le_l2cap_size 
+0x56da 022608 increase -5 ,pdata 
+:      022609 le_get_search_common2:
+0x56db 022610 istore 1 ,contw 
+0x56dc 022611 copy pdata ,loopcnt 
+0x56dd 022612 call get_contr 
+0x56de 022613 branch memcpy_fast 
+:      022615 le_get_search_att_uuid:
+0x56df 022616 call store_contr 
+0x56e0 022617 arg mem_le_search_uuid_length ,contw 
+0x56e1 022618 branch le_get_search_common 
+:      022622 le_writeatt_cb:
+0x56e2 022623 fetch 2 ,mem_cb_att_write 
+0x56e3 022624 branch callback_func 
+:      022626 le_supervision_update:
+0x56e4 022627 fetcht 4 ,mem_le_supervision_timer 
+0x56e5 022628 call get_clkbt 
+0x56e6 022629 isub temp ,timeup 
+0x56e7 022630 deposit timeup 
+0x56e8 022631 fetcht 2 ,mem_le_superto 
+0x56e9 022632 lshift4 temp ,temp 
+0x56ea 022633 lshift temp ,temp 
+0x56eb 022634 isub temp ,pdata 
+0x56ec 022635 rtn 
+:      022637 le_supervision_flush:
+0x56ed 022638 call get_clkbt 
+0x56ee 022639 store 4 ,mem_le_supervision_timer 
+0x56ef 022640 rtn 
+:      022643 le_adv:
+0x56f0 022644 jam 36 ,mem_le_ch_mapped 
+0x56f1 022645 jam 0 ,mem_le_adv_channel_map_temp 
+:      022646 le_adv_loop:
+0x56f2 022647 bpatchx patch2d_0 ,mem_patch2d 
+0x56f3 022648 fetch 1 ,mem_le_adv_enable 
+0x56f4 022649 rtn blank 
+0x56f5 022650 arg le_adv_interval_timer ,queue 
+0x56f6 022651 call timer_check 
+0x56f7 022652 nrtn blank 
+0x56f8 022653 bpatchx patch2d_1 ,mem_patch2d 
+:      022654 le_adv_loop_tx:
+0x56f9 022655 disable master 
+0x56fa 022656 enable swfine 
+0x56fb 022657 call le_init_adv 
+0x56fc 022658 call le_next_adv_channel 
+0x56fd 022659 call le_send_adv_ind 
+0x56fe 022660 nbranch le_adv_not_match ,match 
+0x56ff 022661 fetch 1 ,mem_le_req_rcv 
+0x5700 022662 increase 1 ,pdata 
+0x5701 022663 store 1 ,mem_le_req_rcv 
+0x5702 022664 fetch 1 ,mem_le_rxbuf 
+0x5703 022665 and pdata ,0x0f ,pdata 
+0x5704 022666 beq scan_req ,le_send_scan_response 
+0x5705 022667 beq connect_req ,le_parse_connect_req 
+:      022668 le_adv_not_match:
+0x5706 022669 bpatchx patch2d_2 ,mem_patch2d 
+0x5707 022670 random pdata 
+0x5708 022671 arg 0x1ff ,temp 
+0x5709 022672 iand temp ,pdata 
+0x570a 022673 add pdata ,250 ,pdata 
+0x570b 022674 call delay 
+0x570c 022675 fetch 1 ,mem_le_adv_channel_map_temp 
+0x570d 022676 fetcht 1 ,mem_le_adv_channel_map 
+0x570e 022677 isub temp ,null 
+0x570f 022678 nbranch le_adv_loop ,zero 
+0x5710 022679 arg le_adv_interval_timer ,queue 
+0x5711 022680 fetch 2 ,mem_le_adv_interval 
+0x5712 022681 branch timer_init 
+:      022684 le_receive_window_size:
+0x5713 022685 bpatchx patch2d_3 ,mem_patch2d 
+0x5714 022686 fetch 1 ,mem_le_peer_sca 
+0x5715 022687 call le_sca_map 
+0x5716 022688 fetch 2 ,mem_le_tsniff 
+0x5717 022689 imul32 temp ,pdata 
+0x5718 022690 arg 375 ,temp 
+0x5719 022691 imul32 temp ,pdata 
+0x571a 022692 arg 100000 ,temp 
+0x571b 022693 idiv temp 
+0x571c 022694 fetch 1 ,mem_le_window_size 
+0x571d 022695 arg 20000 ,temp 
+0x571e 022696 imul32 temp ,pdata 
+0x571f 022697 iadd temp ,pdata 
+0x5720 022698 store 4 ,mem_le_transmit_window 
+0x5721 022699 bpatchx patch2d_4 ,mem_patch2d 
+0x5722 022700 fetch 2 ,mem_rx_window_sniff 
+0x5723 022701 call wait_div_end 
+0x5724 022702 quotient temp 
+0x5725 022703 iadd temp ,pdata 
+0x5726 022704 store 2 ,mem_le_receive_window 
+0x5727 022705 rtn 
+:      022707 le_parse_connect_req:
+0x5728 022708 bpatchx patch2d_5 ,mem_patch2d 
+0x5729 022709 fetch 6 ,mem_le_rxbuf + 8 
+0x572a 022710 fetcht 6 ,mem_le_lap 
+0x572b 022711 isub temp ,null 
+0x572c 022712 nrtn zero 
+0x572d 022713 call le_scan_check_sender_addr_type 
+0x572e 022714 copy rega ,pdata 
+0x572f 022715 store 1 ,mem_le_conn_peer_addr_type 
+0x5730 022716 fetch 7 ,mem_le_rxbuf + 21 
+0x5731 022717 store 7 ,mem_tmp_buffer 
+0x5732 022718 ifetch 8 ,contr 
+0x5733 022719 istore 8 ,contw 
+0x5734 022720 fetch 6 ,mem_le_rxbuf + 2 
+0x5735 022721 store 6 ,mem_le_plap 
+0x5736 022722 increase 6 ,contr 
+0x5737 022723 ifetch 8 ,contr 
+0x5738 022724 store 8 ,mem_le_access 
+0x5739 022725 ifetcht 2 ,contr 
+0x573a 022726 bpatchx patch2d_6 ,mem_patch2d 
+0x573b 022727 lshift2 temp ,temp 
+0x573c 022728 ifetch 2 ,contr 
+0x573d 022729 lshift2 pdata ,pdata 
+0x573e 022730 store 2 ,mem_le_tsniff 
+0x573f 022731 store 4 ,mem_le_anchor 
+0x5740 022732 isub temp ,pdata 
+0x5741 022733 add pdata ,-2 ,clke_bt 
+0x5742 022734 ifetch 9 ,contr 
+0x5743 022735 store 9 ,mem_le_slave_latency 
+0x5744 022736 bpatchx patch2d_7 ,mem_patch2d 
+0x5745 022737 ifetch 1 ,contr 
+0x5746 022738 rshift4 pdata ,temp 
+0x5747 022739 rshift temp ,temp 
+0x5748 022740 storet 1 ,mem_le_peer_sca 
+0x5749 022741 and_into 0x1f ,pdata 
+0x574a 022742 store 1 ,mem_le_hop 
+0x574b 022743 call le_receive_window_size 
+0x574c 022744 call le_calc_channel_map 
+0x574d 022745 call le_init_slave 
+0x574e 022746 call context_new 
+0x574f 022747 nrtn zero 
+0x5750 022748 bpatchx patch2e_0 ,mem_patch2e 
+0x5751 022749 call calc_clke_offset 
+0x5752 022750 call le_l2cap_reset_signaling_identifier 
+0x5753 022751 jam bt_evt_le_connected ,mem_fifo_temp 
+0x5754 022752 call ui_ipc_send_event 
+0x5755 022753 branch context_save 
+:      022756 le_init_attlist_search:
+0x5756 022757 bpatchx patch2e_1 ,mem_patch2e 
+0x5757 022758 fetch 2 ,mem_le_search_handle_start 
+0x5758 022759 iforce regb 
+0x5759 022760 fetch 2 ,mem_le_search_handle_end 
+0x575a 022761 iforce regc 
+0x575b 022762 fetch 2 ,mem_ui_le_uuid_table 
+0x575c 022763 iforce contr 
+0x575d 022764 enable user 
+0x575e 022765 rtn 
+:      022768 le_att_handle_inrange:
+0x575f 022769 ifetch 2 ,contr 
+0x5760 022770 rtn blank 
+0x5761 022771 isub regb ,null 
+0x5762 022772 nrtn positive 
+0x5763 022773 isub regc ,null 
+0x5764 022774 rtn zero 
+0x5765 022775 branch le_att_handle_blank ,positive 
+0x5766 022776 force 1 ,null 
+0x5767 022777 rtn 
+:      022778 le_att_handle_blank:
+0x5768 022779 force 0 ,pdata 
+0x5769 022780 rtn 
+:      022784 le_att_get_handle_ptr:
+0x576a 022785 call le_att_get_handle_ptr2 
+0x576b 022786 branch le_att_get_handle_ptr_found ,zero 
+0x576c 022787 rtn 
+:      022789 le_att_get_handle_ptr2:
+0x576d 022790 bpatchx patch2e_2 ,mem_patch2e 
+0x576e 022791 fetch 2 ,mem_ui_le_uuid_table 
+0x576f 022792 iforce contr 
+:      022793 le_att_get_handle_loop1:
+0x5770 022794 ifetch 2 ,contr 
+0x5771 022795 rtn blank 
+0x5772 022796 isub temp ,null 
+0x5773 022797 rtn zero 
+0x5774 022798 ifetch 1 ,contr 
+0x5775 022799 iadd contr ,contr 
+0x5776 022800 ifetch 1 ,contr 
+0x5777 022801 iadd contr ,contr 
+0x5778 022802 branch le_att_get_handle_loop1 
+:      022803 le_att_get_handle_ptr_found:
+0x5779 022804 ifetch 1 ,contr 
+0x577a 022805 iadd contr ,contr 
+0x577b 022806 rtn 
+:      022810 le_att_get_short_uuid_ptr:
+0x577c 022811 bpatchx patch2e_3 ,mem_patch2e 
+0x577d 022812 fetch 2 ,mem_ui_le_uuid_table 
+0x577e 022813 iforce contr 
+:      022814 le_att_get_short_uuid_loop:
+0x577f 022815 ifetch 2 ,contr 
+0x5780 022816 rtn blank 
+0x5781 022817 ifetch 1 ,contr 
+0x5782 022818 iadd contr ,contr 
+0x5783 022819 increase -2 ,contr 
+0x5784 022820 ifetch 2 ,contr 
+0x5785 022821 isub temp ,null 
+0x5786 022822 rtn zero 
+0x5787 022823 ifetch 1 ,contr 
+0x5788 022824 iadd contr ,contr 
+0x5789 022825 branch le_att_get_short_uuid_loop 
+:      022829 le_att_get_handle_info_from_ptr:
+0x578a 022830 fetch 2 ,mem_le_cur_attlist_start_ptr 
+0x578b 022831 branch le_att_get_handle_info_fast 
+:      022833 le_att_get_handle_info:
+0x578c 022834 bpatchx patch2e_4 ,mem_patch2e 
+0x578d 022835 fetch 2 ,mem_ui_le_uuid_table 
+:      022836 le_att_get_handle_info_fast:
+0x578e 022837 iforce contr 
+0x578f 022838 copy temp ,rega 
+:      022839 le_att_get_handle_loop:
+0x5790 022840 ifetch 2 ,contr 
+0x5791 022841 branch le_att_unfind_handle ,blank 
+0x5792 022842 isub rega ,null 
+0x5793 022843 branch le_att_finded_handle ,zero 
+0x5794 022844 ifetch 1 ,contr 
+0x5795 022845 iadd contr ,contr 
+0x5796 022846 ifetch 1 ,contr 
+0x5797 022847 iadd contr ,contr 
+0x5798 022848 branch le_att_get_handle_loop 
+:      022849 le_att_unfind_handle:
+0x5799 022850 branch disable_blank 
+:      022852 le_att_finded_handle:
+0x579a 022853 ifetch 1 ,contr 
+0x579b 022854 store 1 ,mem_le_cur_uuid_length 
+0x579c 022855 copy pdata ,loopcnt 
+0x579d 022856 arg mem_le_cur_uuid ,contw 
+0x579e 022857 call memcpy_fast 
+0x579f 022858 ifetch 1 ,contr 
+0x57a0 022859 store 1 ,mem_le_curr_att_len 
+0x57a1 022860 call store_contr 
+0x57a2 022861 branch enable_blank 
+:      022864 le_modified_name:
+0x57a3 022865 bpatchx patch2e_5 ,mem_patch2e 
+0x57a4 022866 call le_modified_name_att_list 
+0x57a5 022867 branch le_modified_name_adv 
+:      022869 le_modified_name_att_list:
+0x57a6 022870 arg uuid_chrctr_device_name ,temp 
+0x57a7 022871 call le_att_get_short_uuid_ptr 
+0x57a8 022872 rtn blank 
+0x57a9 022873 ifetch 1 ,contr 
+0x57aa 022874 copy contr ,contw 
+0x57ab 022875 fetcht 1 ,mem_le_name_len 
+0x57ac 022876 copy temp ,loopcnt 
+0x57ad 022877 isub temp ,null 
+0x57ae 022878 nbranch le_name_length_longer_than_att ,positive 
+0x57af 022879 isub temp ,temp 
+0x57b0 022880 arg mem_le_name ,contr 
+0x57b1 022881 call memcpy 
+0x57b2 022882 copy temp ,loopcnt 
+0x57b3 022883 ncall memcpy_empty ,zero 
+0x57b4 022884 rtn 
+:      022885 le_name_length_longer_than_att:
+0x57b5 022886 copy pdata ,loopcnt 
+0x57b6 022887 arg mem_le_name ,contr 
+0x57b7 022888 branch memcpy_fast 
+:      022891 le_modified_name_adv:
+0x57b8 022892 arg mem_le_adv_data_len + 32 ,regc 
+0x57b9 022893 arg mem_le_adv_data ,rega 
+0x57ba 022894 call le_modified_name_adv_and_scan 
+0x57bb 022895 setarg 0 
+0x57bc 022896 setflag user ,0 ,pdata 
+0x57bd 022897 store 1 ,mem_pdatatemp 
+0x57be 022898 arg mem_le_scan_data_len + 32 ,regc 
+0x57bf 022899 arg mem_le_scan_data ,rega 
+0x57c0 022900 call le_modified_name_adv_and_scan 
+0x57c1 022901 rtn user 
+0x57c2 022902 fetch 1 ,mem_pdatatemp 
+0x57c3 022903 branch assert ,blank 
+0x57c4 022904 rtn 
+:      022907 le_modified_name_adv_and_scan:
+0x57c5 022908 bpatchx patch2e_6 ,mem_patch2e 
+0x57c6 022909 call enable_user 
+0x57c7 022910 call clear_temp_block 
+0x57c8 022911 arg 0 ,regb 
+0x57c9 022912 arg mem_le_data_temp ,contw 
+0x57ca 022913 call le_modified_name_adv_loop 
+0x57cb 022914 fetch 1 ,mem_le_name_len 
+0x57cc 022915 add pdata ,1 ,temp 
+0x57cd 022916 iadd regb ,rega 
+0x57ce 022917 increase 2 ,rega 
+0x57cf 022918 sub rega ,0x1f ,null 
+0x57d0 022919 nbranch le_modified_name_adv_and_scan_name_overflow ,positive 
+0x57d1 022920 istoret 1 ,contw 
+0x57d2 022921 arg gap_adtype_local_name_complete ,temp 
+0x57d3 022922 istoret 1 ,contw 
+0x57d4 022923 iforce loopcnt 
+0x57d5 022924 call memcpy_fast 
+0x57d6 022925 copy rega ,regb 
+:      022926 le_modified_name_adv_and_scan_store_data:
+0x57d7 022927 deposit regb 
+0x57d8 022928 store 1 ,mem_le_data_len_temp 
+0x57d9 022929 arg mem_le_data_len_temp ,contr 
+0x57da 022930 setarg -32 
+0x57db 022931 iadd regc ,contw 
+0x57dc 022932 branch memcpy32 
+:      022934 le_modified_name_adv_and_scan_name_overflow:
+0x57dd 022935 call disable_user 
+0x57de 022936 branch le_modified_name_adv_and_scan_store_data 
+:      022938 le_modified_name_adv_loop:
+0x57df 022939 ifetch 1 ,rega 
+0x57e0 022940 rtn blank 
+0x57e1 022941 pincrease 1 
+0x57e2 022942 ifetcht 1 ,contr 
+0x57e3 022943 sub temp ,gap_adtype_local_name_complete ,null 
+0x57e4 022944 branch le_modified_name_adv_found_name ,zero 
+0x57e5 022945 iadd regb ,regb 
+0x57e6 022946 copy rega ,contr 
+0x57e7 022947 iforce loopcnt 
+0x57e8 022948 call memcpy_fast 
+0x57e9 022949 copy contr ,rega 
+:      022950 le_modified_name_adv_loop2:
+0x57ea 022951 deposit rega 
+0x57eb 022952 isub regc ,null 
+0x57ec 022953 rtn positive 
+0x57ed 022954 branch le_modified_name_adv_loop 
+:      022956 le_modified_name_adv_found_name:
+0x57ee 022957 iadd rega ,rega 
+0x57ef 022958 branch le_modified_name_adv_loop2 
+:      022961 memcpy_empty:
+0x57f0 022962 setarg space 
+0x57f1 022963 istore 1 ,contw 
+0x57f2 022964 loop memcpy_empty 
+0x57f3 022965 rtn 
+:      022968 le_lpm_set_mult:
+0x57f4 022969 bpatchx patch2e_7 ,mem_patch2e 
+0x57f5 022970 disable wake 
+0x57f6 022971 branch le_lpm_set_mult_attempt ,attempt 
+0x57f7 022972 nbranch le_lpm_lost ,match 
+:      022973 le_lpm_set_mult_attempt:
+0x57f8 022974 call lpm_match 
+0x57f9 022975 fetch 2 ,mem_rx_window_sniff 
+0x57fa 022976 store 2 ,mem_le_receive_window 
+0x57fb 022978 nbranch lpm_mult_short ,match 
+0x57fc 022979 bmark1 mark_old_packet ,lpm_mult_short 
+0x57fd 022981 fetch 1 ,mem_le_packet_size 
+0x57fe 022982 nbranch lpm_mult_short ,blank 
+0x57ff 022983 fetch 1 ,mem_le_txlen 
+0x5800 022984 nbranch lpm_mult_short ,blank 
+0x5801 022986 fetch 1 ,mem_le_configuration 
+0x5802 022987 bbit1 bit_ble_short_mult ,lpm_mult_short 
+0x5803 022989 fetch 1 ,mem_le_state 
+0x5804 022990 bbit1 lestate_update_param ,lpm_mult_short 
+0x5805 022991 branch lpm_mult_wait_timeout 
+:      022993 le_lpm_lost:
+0x5806 022994 fetcht 2 ,mem_rx_window_sniff 
+0x5807 022995 rshift temp ,temp 
+0x5808 022996 fetch 2 ,mem_le_receive_window 
+0x5809 022997 iadd temp ,pdata 
+0x580a 022998 store 2 ,mem_le_receive_window 
+0x580b 022999 branch lpm_lost 
+:      023002 le_set_config_fixed_tk:
+0x580c 023003 arg bit_ble_passkey_fixed_key ,queue 
+0x580d 023004 branch le_set_config 
+:      023006 le_clr_config_fixed_tk:
+0x580e 023007 arg bit_ble_passkey_fixed_key ,queue 
+0x580f 023008 branch le_clr_config 
+:      023010 le_set_config_fixed_ltk:
+0x5810 023011 arg bit_ble_pairing_fixed_ltk ,queue 
+0x5811 023012 branch le_set_config 
+:      023014 le_clr_config_fixed_ltk:
+0x5812 023015 arg bit_ble_pairing_fixed_ltk ,queue 
+0x5813 023016 branch le_clr_config 
+:      023018 le_set_config_more_data:
+0x5814 023019 arg bit_ble_transmit_packet_by_md ,queue 
+0x5815 023020 branch le_set_config 
+:      023022 le_clr_config_more_data:
+0x5816 023023 arg bit_ble_transmit_packet_by_md ,queue 
+0x5817 023024 branch le_clr_config 
+:      023026 le_set_config_read_authentication:
+0x5818 023027 arg bit_ble_read_auth ,queue 
+0x5819 023028 branch le_set_config 
+:      023030 le_clr_config_read_authentication:
+0x581a 023031 arg bit_ble_read_auth ,queue 
+0x581b 023032 branch le_clr_config 
+:      023034 le_set_config_write_authentication:
+0x581c 023035 arg bit_ble_write_auth ,queue 
+0x581d 023036 branch le_set_config 
+:      023038 le_clr_config_write_authentication:
+0x581e 023039 arg bit_ble_write_auth ,queue 
+0x581f 023040 branch le_clr_config 
+:      023042 le_set_config_short_mult:
+0x5820 023043 arg bit_ble_short_mult ,queue 
+0x5821 023044 branch le_set_config 
+:      023046 le_clr_config_short_mult:
+0x5822 023047 arg bit_ble_short_mult ,queue 
+0x5823 023048 branch le_clr_config 
+:      023051 le_set_config:
+0x5824 023052 fetch 1 ,mem_le_configuration 
+0x5825 023053 qset1 pdata 
+0x5826 023054 store 1 ,mem_le_configuration 
+0x5827 023055 rtn 
+:      023057 le_clr_config:
+0x5828 023058 fetch 1 ,mem_le_configuration 
+0x5829 023059 qset0 pdata 
+0x582a 023060 store 1 ,mem_le_configuration 
+0x582b 023061 rtn 
+:      023063 le_set_fixed_ltk:
+0x582c 023064 setarg 0x112233 
+0x582d 023065 store 3 ,mem_le_fixed_ltk 
+0x582e 023066 setarg 0x445566 
+0x582f 023067 istore 3 ,contw 
+0x5830 023068 setarg 0x778899 
+0x5831 023069 istore 3 ,contw 
+0x5832 023070 setarg 0x001122 
+0x5833 023071 istore 3 ,contw 
+0x5834 023072 setarg 0x334455 
+0x5835 023073 istore 3 ,contw 
+0x5836 023074 setarg 0x66 
+0x5837 023075 istore 1 ,contw 
+0x5838 023076 rtn 
+:      023079 le_set_justwork:
+0x5839 023080 setarg 0x01000302 
+0x583a 023081 store 4 ,mem_le_pres 
+0x583b 023082 setarg 0x010010 
+0x583c 023083 store 3 ,mem_le_pres_max_keysize 
+0x583d 023084 jam 1 ,mem_le_pairing_mode 
+0x583e 023085 rtn 
+:      023089 le_fifo_malloc_tx_empty:
+0x583f 023090 arg 0 ,rega 
+0x5840 023091 arg llid_empty ,type 
+0x5841 023092 branch le_fifo_malloc_tx 
+:      023096 le_fifo_malloc_tx_ll:
+0x5842 023097 arg llid_le_ll ,type 
+0x5843 023098 call le_fifo_malloc_tx 
+0x5844 023099 copy regb ,pdata 
+0x5845 023100 istore 1 ,contw 
+0x5846 023101 rtn 
+:      023105 le_fifo_malloc_tx_l2cap:
+0x5847 023106 force llid_l2cap_start ,type 
+0x5848 023107 increase 4 ,rega 
+0x5849 023108 call le_fifo_malloc_tx 
+0x584a 023109 increase -4 ,rega 
+0x584b 023110 copy rega ,pdata 
+0x584c 023111 istore 2 ,contw 
+0x584d 023112 copy regb ,pdata 
+0x584e 023113 istore 2 ,contw 
+0x584f 023114 rtn 
+:      023118 le_fifo_malloc_tx:
+0x5850 023119 sub rega ,240 ,null 
+0x5851 023120 nbranch assert ,positive 
+0x5852 023121 fetch 1 ,mem_le_tx_buff_used 
+0x5853 023122 arg 1 ,temp 
+0x5854 023123 arg le_tx_buff_count ,loopcnt 
+:      023124 le_fifo_malloc_tx_loop:
+0x5855 023125 iand temp ,null 
+0x5856 023126 branch le_fifo_malloc_tx_got_empty ,zero 
+0x5857 023127 lshift temp ,temp 
+0x5858 023128 loop le_fifo_malloc_tx_loop 
+0x5859 023129 branch assert 
+:      023130 le_fifo_malloc_tx_got_empty:
+0x585a 023131 ixor temp ,pdata 
+0x585b 023132 store 1 ,mem_le_tx_buff_used 
+0x585c 023133 sub loopcnt ,le_tx_buff_count ,pdata 
+0x585d 023134 lshift4 pdata ,pdata 
+0x585e 023135 lshift4 pdata ,pdata 
+0x585f 023136 arg mem_le_tx_buffer0 ,temp 
+0x5860 023137 iadd temp ,temp 
+:      023138 le_fifo_tx_find_empty_ptr:
+0x5861 023139 arg 0 ,loopcnt 
+0x5862 023140 arg mem_le_tx_ptr0 ,contr 
+:      023141 le_fifo_tx_find_empty_ptr_loop:
+0x5863 023142 ifetch 2 ,contr 
+0x5864 023143 branch le_fifo_tx_found_empty_ptr ,blank 
+0x5865 023144 copy loopcnt ,pdata 
+0x5866 023145 increase 1 ,loopcnt 
+0x5867 023146 bne le_tx_buff_count ,le_fifo_tx_find_empty_ptr_loop 
+0x5868 023147 branch assert 
+:      023150 le_fifo_tx_found_empty_ptr:
+0x5869 023151 increase -2 ,contr 
+0x586a 023152 istoret 2 ,contr 
+0x586b 023153 copy temp ,contw 
+0x586c 023154 copy rega ,pdata 
+0x586d 023155 istore 1 ,contw 
+0x586e 023156 setarg 0 
+0x586f 023157 istore 1 ,contw 
+0x5870 023158 copy type ,pdata 
+0x5871 023159 istore 1 ,contw 
+0x5872 023160 rtn 
+:      023164 le_fifo_get_first_tx_ptr:
+0x5873 023165 fetch 2 ,mem_le_tx_ptr0 
+0x5874 023166 copy pdata ,contr 
+0x5875 023167 rtn 
+:      023169 le_fifo_get_second_tx_ptr:
+0x5876 023170 fetch 2 ,mem_le_tx_ptr1 
+0x5877 023171 copy pdata ,contr 
+0x5878 023172 rtn 
+:      023174 le_fifo_get_last_tx_ptr:
+0x5879 023175 call le_fifo_get_last_tx_ptr0 
+0x587a 023176 copy pdata ,contr 
+0x587b 023177 rtn 
+:      023178 le_fifo_get_last_tx_ptr0:
+0x587c 023179 fetch 2 ,mem_le_tx_ptr3 
+0x587d 023180 nrtn blank 
+0x587e 023181 fetch 2 ,mem_le_tx_ptr2 
+0x587f 023182 nrtn blank 
+0x5880 023183 fetch 2 ,mem_le_tx_ptr1 
+0x5881 023184 nrtn blank 
+0x5882 023185 fetch 2 ,mem_le_tx_ptr0 
+0x5883 023186 rtn 
+:      023188 le_fifo_get_first_l2cap_ptr:
+0x5884 023189 call le_fifo_get_first_tx_ptr 
+0x5885 023190 increase 3 ,contr 
+0x5886 023191 rtn 
+:      023193 le_fifo_get_first_att_ptr:
+0x5887 023194 call le_fifo_get_first_tx_ptr 
+0x5888 023195 increase 7 ,contr 
+0x5889 023196 rtn 
+:      023198 le_fifo_get_last_att_ptr:
+0x588a 023199 call le_fifo_get_last_tx_ptr 
+0x588b 023200 increase 7 ,contr 
+0x588c 023201 rtn 
+:      023203 le_fifo_get_last_l2cap_ptr:
+0x588d 023204 call le_fifo_get_last_tx_ptr 
+0x588e 023205 increase 3 ,contr 
+0x588f 023206 rtn 
+:      023210 le_fifo_check_full:
+0x5890 023211 fetch 2 ,mem_le_tx_ptr3 
+0x5891 023212 rtn 
+:      023215 le_fifo_check_nearly_full:
+0x5892 023216 fetch 2 ,mem_le_tx_ptr2 
+0x5893 023217 rtn 
+:      023220 le_fifo_check_empty:
+0x5894 023221 fetch 2 ,mem_le_tx_ptr0 
+0x5895 023222 rtn 
+:      023225 le_fifo_release_first_node:
+0x5896 023226 fetch 2 ,mem_le_tx_ptr0 
+0x5897 023227 arg mem_le_tx_buffer0 ,temp 
+0x5898 023228 isub temp ,pdata 
+0x5899 023229 rshift4 pdata ,pdata 
+0x589a 023230 rshift4 pdata ,queue 
+0x589b 023231 fetch 1 ,mem_le_tx_buff_used 
+0x589c 023232 qset0 pdata 
+0x589d 023233 store 1 ,mem_le_tx_buff_used 
+0x589e 023234 arg 0 ,loopcnt 
+:      023235 le_fifo_release_first_node_loop:
+0x589f 023236 lshift loopcnt ,pdata 
+0x58a0 023237 arg mem_le_tx_ptr1 ,temp 
+0x58a1 023238 iadd temp ,temp 
+0x58a2 023239 ifetch 2 ,temp 
+0x58a3 023240 increase -2 ,temp 
+0x58a4 023241 istore 2 ,temp 
+0x58a5 023242 copy loopcnt ,pdata 
+0x58a6 023243 increase 1 ,loopcnt 
+0x58a7 023244 bne le_tx_buff_update_loopcnt ,le_fifo_release_first_node_loop 
+0x58a8 023245 setarg 0 
+0x58a9 023246 istore 2 ,temp 
+0x58aa 023247 rtn 
+:      023253 le_parse_att:
+0x58ab 023254 ifetch 3 ,contr 
+0x58ac 023255 store 3 ,mem_le_att_opcode 
+0x58ad 023256 beq attop_exchange_mtu_request ,le_parse_att_exchange_mtu_request 
+0x58ae 023257 beq attop_exchange_mtu_response ,le_parse_att_exchange_mtu_response 
+0x58af 023258 beq attop_find_information_request ,le_parse_att_find_information_request 
+0x58b0 023259 beq attop_find_by_type_value_request ,le_parse_att_find_by_type_value_request 
+0x58b1 023260 beq attop_read_by_type_request ,le_parse_att_read_by_type_request 
+0x58b2 023261 beq attop_read_request ,le_parse_att_read_request 
+0x58b3 023262 beq attop_read_blob_request ,le_parse_att_read_blob_request 
+0x58b4 023263 beq attop_read_by_group_type_request ,le_parse_att_read_by_group_type_request 
+0x58b5 023264 beq attop_write_request ,le_parse_att_write_request 
+0x58b6 023265 beq attop_prepare_write_request ,le_parse_att_prepare_write_request 
+0x58b7 023266 beq attop_execute_write_request ,le_parse_att_execute_write_request 
+0x58b8 023267 beq attop_write_command ,le_parse_att_write_command 
+0x58b9 023268 rtn 
+:      023271 le_send_att_exchange_mtu_requset:
+0x58ba 023272 force 3 ,rega 
+0x58bb 023273 call le_fifo_malloc_tx_l2cap_gatt 
+0x58bc 023274 setarg attop_exchange_mtu_request 
+0x58bd 023275 istore 1 ,contw 
+0x58be 023276 fetch 2 ,mem_le_local_mtu 
+0x58bf 023277 istore 2 ,contw 
+0x58c0 023278 rtn 
+:      023281 le_parse_att_exchange_mtu_request:
+0x58c1 023282 call le_parse_att_exchange_mtu_response 
+:      023283 le_send_att_exchange_mtu_response:
+0x58c2 023284 force 3 ,rega 
+0x58c3 023285 call le_fifo_malloc_tx_l2cap_gatt 
+0x58c4 023286 setarg attop_exchange_mtu_response 
+0x58c5 023287 istore 1 ,contw 
+0x58c6 023288 fetch 2 ,mem_le_local_mtu 
+0x58c7 023289 istore 2 ,contw 
+0x58c8 023290 rtn 
+:      023292 le_parse_att_exchange_mtu_response:
+0x58c9 023293 rshift8 pdata ,pdata 
+0x58ca 023294 store 2 ,mem_le_remote_mtu 
+0x58cb 023295 rtn 
+:      023297 le_parse_att_find_information_request:
+0x58cc 023298 call le_get_search_handle_start_end_common 
+0x58cd 023299 call enable_user 
+0x58ce 023300 branch le_send_att_find_information_response 
+:      023302 le_send_att_find_information_response:
+0x58cf 023303 arg 3 ,timeup 
+0x58d0 023304 call le_init_attlist_search 
+:      023305 le_send_att_find_information_res_loop:
+0x58d1 023306 call le_att_handle_inrange 
+0x58d2 023307 branch le_send_att_find_information_res_end ,blank 
+0x58d3 023308 nbranch le_send_att_find_information_res_next ,positive 
+0x58d4 023309 increase -2 ,contr 
+0x58d5 023310 call store_contr 
+0x58d6 023311 call get_contw 
+0x58d7 023312 nbranch le_send_att_find_information_res_store_info ,user 
+0x58d8 023313 call push_stack_rega_b_c 
+0x58d9 023314 call disable_user 
+0x58da 023315 force 20 ,rega 
+0x58db 023316 call le_fifo_malloc_tx_l2cap_gatt 
+0x58dc 023317 call pop_stack_rega_b_c 
+0x58dd 023318 setarg attop_find_information_response 
+0x58de 023319 istore 1 ,contw 
+0x58df 023320 setarg uuid_size_16bit 
+0x58e0 023321 istore 1 ,contw 
+:      023322 le_send_att_find_information_res_store_info:
+0x58e1 023323 call get_contr 
+0x58e2 023324 ifetch 2 ,contr 
+0x58e3 023325 istore 2 ,contw 
+0x58e4 023326 ifetch 1 ,contr 
+0x58e5 023327 copy pdata ,loopcnt 
+0x58e6 023328 call memcpy 
+0x58e7 023329 call store_contw 
+0x58e8 023330 increase -1 ,timeup 
+0x58e9 023331 branch le_send_att_find_information_res_end ,zero 
+:      023332 le_send_att_find_information_res_cont:
+0x58ea 023333 ifetch 1 ,contr 
+0x58eb 023334 iadd contr ,contr 
+0x58ec 023335 branch le_send_att_find_information_res_loop 
+:      023336 le_send_att_find_information_res_next:
+0x58ed 023337 ifetch 1 ,contr 
+0x58ee 023338 iadd contr ,contr 
+0x58ef 023339 branch le_send_att_find_information_res_cont 
+:      023340 le_send_att_find_information_res_end:
+0x58f0 023341 branch le_send_att_error_response_notfound ,user 
+0x58f1 023342 branch le_send_auto_len_by_mem 
+:      023345 le_parse_att_find_by_type_value_request:
+0x58f2 023346 call le_get_search_handle_start_end_common 
+0x58f3 023347 ifetch 2 ,contr 
+0x58f4 023348 store 2 ,mem_le_search_uuid 
+0x58f5 023349 call store_contr 
+0x58f6 023350 arg mem_le_search_att_type_length ,contw 
+0x58f7 023351 fetch 2 ,mem_le_l2cap_size 
+0x58f8 023352 increase -7 ,pdata 
+0x58f9 023353 call le_get_search_common2 
+0x58fa 023354 branch le_send_att_find_by_type_value_response 
+:      023357 le_start_end_handle_check_1:
+0x58fb 023358 disable user 
+0x58fc 023359 fetcht 2 ,mem_le_search_handle_start 
+0x58fd 023360 fetch 2 ,mem_le_search_handle_end 
+0x58fe 023361 isub temp ,null 
+0x58ff 023362 nbranch le_start_end_handle_check_1_fail ,positive 
+0x5900 023363 deposit temp 
+0x5901 023364 rtnne 0 
+:      023365 le_start_end_handle_check_1_fail:
+0x5902 023366 enable user 
+0x5903 023367 jam att_err_invalid_handle ,mem_le_err_code 
+0x5904 023368 branch le_send_att_error_response 
+:      023371 le_send_att_find_by_type_value_response:
+0x5905 023372 call le_start_end_handle_check_1 
+0x5906 023373 rtn user 
+0x5907 023374 fetcht 2 ,mem_le_search_uuid 
+0x5908 023375 setarg uuid_gatt_primary_service 
+0x5909 023376 isub temp ,null 
+0x590a 023377 branch le_send_att_find_by_type_value_res_primary ,zero 
+0x590b 023378 branch le_send_att_error_response_notfound 
+:      023381 le_send_att_find_by_type_value_res_primary:
+0x590c 023382 jam le_find_by_type_val_res_not_found ,mem_le_search_res 
+0x590d 023383 fetcht 2 ,mem_le_search_handle_start 
+0x590e 023384 storet 2 ,mem_temp 
+0x590f 023385 call le_att_get_handle_info 
+0x5910 023386 nbranch le_send_att_error_response_notfound ,blank 
+:      023387 le_send_att_find_primary_search_loop:
+0x5911 023388 fetcht 2 ,mem_temp 
+0x5912 023389 call le_att_get_handle_info 
+0x5913 023390 nbranch le_send_att_error_response_notfound2 ,blank 
+0x5914 023391 copy contr ,rega 
+0x5915 023392 fetch 1 ,mem_le_curr_att_len 
+0x5916 023393 copy pdata ,loopcnt 
+0x5917 023394 fetcht 1 ,mem_le_search_att_type_length 
+0x5918 023395 isub temp ,null 
+0x5919 023396 nbranch le_send_att_find_primary_search_loop1 ,zero 
+0x591a 023397 arg mem_le_search_att_type ,regb 
+0x591b 023398 call string_compare 
+0x591c 023400 branch le_send_att_find_primary_search_end_start_handle_found ,zero 
+0x591d 023402 fetch 2 ,mem_le_cur_uuid 
+0x591e 023403 fetcht 2 ,mem_le_search_uuid 
+0x591f 023404 isub temp ,null 
+0x5920 023405 branch le_send_att_find_primary_search_end_ending_handle_found ,zero 
+:      023406 le_send_att_find_primary_search_loop1:
+0x5921 023407 fetch 2 ,mem_temp 
+0x5922 023408 increase 1 ,pdata 
+0x5923 023409 store 2 ,mem_temp 
+0x5924 023410 branch le_send_att_find_primary_search_loop 
+:      023412 le_send_att_error_response_notfound2:
+0x5925 023413 fetch 1 ,mem_le_search_res 
+0x5926 023414 beq le_find_by_type_val_res_found_starting_handle ,le_send_att_find_primary_search_end_ending_handle_found 
+0x5927 023415 branch le_send_att_error_response_notfound 
+:      023418 le_send_att_find_primary_search_end_start_handle_found:
+0x5928 023419 fetch 2 ,mem_le_cur_uuid 
+0x5929 023420 fetcht 2 ,mem_le_search_uuid 
+0x592a 023421 isub temp ,null 
+0x592b 023422 nbranch le_send_att_find_primary_search_loop1 ,zero 
+0x592c 023423 jam le_find_by_type_val_res_found_starting_handle ,mem_le_search_res 
+0x592d 023425 fetcht 2 ,mem_temp 
+0x592e 023426 storet 2 ,mem_le_cur_handle_start 
+0x592f 023427 branch le_send_att_find_primary_search_loop1 
+:      023429 le_send_att_find_primary_search_end_ending_handle_found:
+0x5930 023430 fetch 1 ,mem_le_search_res 
+0x5931 023431 beq le_find_by_type_val_res_not_found ,le_send_att_find_primary_search_loop1 
+0x5932 023432 jam le_find_by_type_val_res_found_ending_handle ,mem_le_search_res 
+0x5933 023433 fetcht 2 ,mem_temp 
+0x5934 023434 increase -1 ,temp 
+0x5935 023435 storet 2 ,mem_le_cur_handle_end 
+:      023437 le_send_att_find_primary_search_end:
+0x5936 023438 arg 5 ,rega 
+0x5937 023439 call le_fifo_malloc_tx_l2cap_gatt 
+0x5938 023440 setarg attop_find_by_type_value_response 
+0x5939 023441 istore 1 ,contw 
+0x593a 023442 fetch 2 ,mem_le_cur_handle_start 
+0x593b 023443 istore 2 ,contw 
+0x593c 023444 fetch 2 ,mem_le_cur_handle_end 
+0x593d 023445 istore 2 ,contw 
+0x593e 023446 rtn 
+:      023450 le_parse_att_read_by_type_request:
+0x593f 023451 call le_get_search_handle_start_end_common 
+0x5940 023452 call le_get_search_att_uuid 
+0x5941 023453 branch le_send_att_read_by_type_response 
+:      023455 le_send_att_read_by_type_response:
+0x5942 023456 fetcht 2 ,mem_le_search_handle_start 
+0x5943 023457 storet 2 ,mem_temp 
+0x5944 023458 call le_init_attlist_search 
+0x5945 023459 call le_att_get_handle_ptr2 
+0x5946 023460 increase -2 ,contr 
+0x5947 023461 copy contr ,pdata 
+0x5948 023462 store 2 ,mem_le_cur_attlist_start_ptr 
+0x5949 023464 fetcht 2 ,mem_le_search_uuid 
+0x594a 023465 setarg uuid_chrctr_device_name 
+0x594b 023466 isub temp ,null 
+0x594c 023467 branch le_send_att_read_by_type_res_device_name ,zero 
+0x594d 023468 setarg uuid_gatt_characteristic 
+0x594e 023469 isub temp ,null 
+0x594f 023470 nbranch le_send_att_read_by_type_res_not_characteristic ,zero 
+0x5950 023471 arg 2 ,timeup 
+:      023472 le_send_att_read_by_type_response_loop:
+0x5951 023473 call le_att_check_handle_end 
+0x5952 023474 nbranch le_send_att_read_by_type_response_end ,positive 
+0x5953 023475 fetcht 2 ,mem_temp 
+0x5954 023476 call le_att_get_handle_info_from_ptr 
+0x5955 023477 beq 1 ,le_send_att_read_by_type_response_end 
+0x5956 023478 call le_att_same_uuid 
+0x5957 023479 nbranch le_send_att_read_by_type_response_next_handle ,zero 
+0x5958 023480 nbranch le_send_att_read_by_type_res_found_next ,user 
+0x5959 023481 disable user 
+0x595a 023482 arg 20 ,rega 
+0x595b 023483 call le_fifo_malloc_tx_l2cap_gatt 
+0x595c 023484 setarg attop_read_by_type_response 
+0x595d 023485 istore 1 ,contw 
+0x595e 023486 copy contw ,alarm 
+0x595f 023487 increase 1 ,contw 
+0x5960 023489 call le_send_att_read_by_type_write_properties 
+0x5961 023490 call le_att_next_handle 
+0x5962 023491 call le_att_get_handle_info_from_ptr 
+0x5963 023492 call le_send_att_read_by_type_write_uuid 
+0x5964 023493 fetch 1 ,mem_le_cur_uuid_length 
+0x5965 023494 increase 5 ,pdata 
+0x5966 023495 istore 1 ,alarm 
+0x5967 023496 fetch 1 ,mem_le_cur_uuid_length 
+0x5968 023497 beq 16 ,le_send_att_read_by_type_response_end 
+0x5969 023498 increase -1 ,timeup 
+0x596a 023499 branch le_send_att_read_by_type_response_end ,zero 
+:      023500 le_send_att_read_by_type_response_next_handle:
+0x596b 023501 call le_att_next_handle 
+0x596c 023502 branch le_send_att_read_by_type_response_loop 
+:      023503 le_send_att_read_by_type_response_end:
+0x596d 023504 branch le_send_att_error_response_notfound ,user 
+0x596e 023505 branch le_send_auto_len_by_mem 
+:      023507 le_send_att_read_by_type_res_found_next:
+0x596f 023508 call le_store_att_record 
+0x5970 023509 call le_att_next_handle 
+0x5971 023510 call le_att_get_handle_info_from_ptr 
+0x5972 023511 fetch 1 ,mem_le_cur_uuid_length 
+0x5973 023512 beq 16 ,le_send_att_read_by_type_response_end 
+0x5974 023514 call get_contw 
+0x5975 023515 fetch 2 ,mem_temp 
+0x5976 023516 increase -1 ,pdata 
+0x5977 023517 istore 2 ,contw 
+0x5978 023518 call le_write_att_record_common 
+0x5979 023519 call le_send_att_read_by_type_write_uuid 
+0x597a 023520 increase -1 ,timeup 
+0x597b 023521 branch le_send_att_read_by_type_response_end ,zero 
+0x597c 023522 branch le_send_att_read_by_type_response_next_handle 
+:      023525 le_send_att_read_by_type_write_properties:
+0x597d 023526 fetch 2 ,mem_temp 
+0x597e 023527 istore 2 ,contw 
+0x597f 023529 fetch 1 ,mem_le_curr_att_len 
+0x5980 023530 copy pdata ,loopcnt 
+0x5981 023531 call get_contr 
+0x5982 023532 call memcpy_fast 
+0x5983 023533 branch store_contw 
+:      023534 le_send_att_read_by_type_write_uuid:
+0x5984 023535 call get_contw 
+0x5985 023536 fetch 2 ,mem_temp 
+0x5986 023537 istore 2 ,contw 
+0x5987 023538 call store_contw 
+0x5988 023539 fetch 1 ,mem_le_cur_uuid_length 
+0x5989 023540 copy pdata ,loopcnt 
+0x598a 023541 call get_contw 
+0x598b 023542 call get_contr 
+0x598c 023543 isub loopcnt ,contr 
+0x598d 023544 increase -1 ,contr 
+0x598e 023545 call memcpy_fast 
+0x598f 023546 branch store_contw 
+:      023550 le_send_att_read_by_type_res_not_characteristic:
+0x5990 023551 fetcht 2 ,mem_le_search_handle_start 
+0x5991 023552 storet 2 ,mem_temp 
+:      023553 le_send_att_read_by_type_res_not_char_loop:
+0x5992 023554 call le_att_check_handle_end 
+0x5993 023555 nbranch le_send_att_error_response_notfound ,positive 
+0x5994 023556 call le_att_get_handle_info_from_ptr 
+0x5995 023557 beq 1 ,le_send_att_error_response_notfound 
+0x5996 023558 call le_att_same_uuid 
+0x5997 023559 nbranch le_send_att_read_by_type_res_not_char_next ,zero 
+:      023561 le_send_att_read_by_type_res_not_char_common:
+0x5998 023562 arg 20 ,rega 
+0x5999 023563 call le_fifo_malloc_tx_l2cap_gatt 
+0x599a 023564 setarg attop_read_by_type_response 
+0x599b 023565 istore 1 ,contw 
+0x599c 023566 fetch 1 ,mem_le_curr_att_len 
+0x599d 023567 copy pdata ,loopcnt 
+0x599e 023568 increase 2 ,pdata 
+0x599f 023569 istore 1 ,contw 
+0x59a0 023570 fetch 2 ,mem_temp 
+0x59a1 023571 istore 2 ,contw 
+0x59a2 023572 call get_contr 
+0x59a3 023573 call memcpy_fast 
+0x59a4 023574 call store_contw 
+0x59a5 023575 branch le_send_auto_len_by_mem 
+:      023577 le_send_att_read_by_type_res_not_char_next:
+0x59a6 023578 call le_att_next_handle 
+0x59a7 023579 branch le_send_att_read_by_type_res_not_char_loop 
+:      023582 le_send_att_read_by_type_res_device_name:
+0x59a8 023583 arg uuid_chrctr_device_name ,temp 
+0x59a9 023584 call le_att_get_short_uuid_ptr 
+0x59aa 023585 rtn blank 
+0x59ab 023586 increase -5 ,contr 
+0x59ac 023587 ifetch 2 ,contr 
+0x59ad 023588 store 2 ,mem_temp 
+0x59ae 023589 arg 20 ,rega 
+0x59af 023590 call le_fifo_malloc_tx_l2cap_gatt 
+0x59b0 023591 setarg attop_read_by_type_response 
+0x59b1 023592 istore 1 ,contw 
+0x59b2 023593 fetch 1 ,mem_le_name_len 
+0x59b3 023594 copy pdata ,loopcnt 
+0x59b4 023595 increase 2 ,pdata 
+0x59b5 023596 istore 1 ,contw 
+0x59b6 023597 fetch 2 ,mem_temp 
+0x59b7 023598 istore 2 ,contw 
+0x59b8 023599 arg mem_le_name ,contr 
+0x59b9 023600 call memcpy_fast 
+0x59ba 023601 call store_contw 
+0x59bb 023602 branch le_send_auto_len_by_mem 
+:      023606 le_parse_att_read_request:
+0x59bc 023607 fetcht 2 ,mem_le_att_handle 
+0x59bd 023608 fetch 1 ,mem_le_configuration 
+0x59be 023609 bbit1 bit_ble_read_auth ,le_send_att_read_response_check_auth 
+:      023611 le_send_att_read_response:
+0x59bf 023612 call le_att_get_handle_ptr 
+0x59c0 023613 branch le_send_att_error_response_notfound ,blank 
+0x59c1 023614 increase -2 ,contr 
+0x59c2 023615 ifetch 2 ,contr 
+0x59c3 023616 arg uuid_chrctr_device_name ,temp 
+0x59c4 023617 isub temp ,null 
+0x59c5 023618 branch le_send_device_name ,zero 
+0x59c6 023619 ifetch 1 ,contr 
+0x59c7 023620 sub pdata ,22 ,null 
+0x59c8 023621 branch le_send_att_read_response_less ,positive 
+0x59c9 023622 force 22 ,pdata 
+:      023623 le_send_att_read_response_less:
+0x59ca 023624 copy pdata ,regc 
+0x59cb 023625 call store_contr 
+0x59cc 023626 add regc ,1 ,rega 
+0x59cd 023627 call le_fifo_malloc_tx_l2cap_gatt 
+0x59ce 023628 setarg attop_read_response 
+0x59cf 023629 istore 1 ,contw 
+0x59d0 023630 copy regc ,loopcnt 
+0x59d1 023631 call get_contr 
+0x59d2 023632 branch memcpy 
+:      023634 le_send_device_name:
+0x59d3 023635 call store_contr 
+0x59d4 023636 fetch 1 ,mem_le_name_len 
+0x59d5 023637 add pdata ,1 ,rega 
+0x59d6 023638 call le_fifo_malloc_tx_l2cap_gatt 
+0x59d7 023639 setarg attop_read_response 
+0x59d8 023640 istore 1 ,contw 
+0x59d9 023641 fetch 1 ,mem_le_name_len 
+0x59da 023642 copy pdata ,loopcnt 
+0x59db 023643 arg mem_le_name ,contr 
+0x59dc 023644 branch memcpy 
+:      023647 le_send_att_read_response_check_auth:
+0x59dd 023648 fetch 2 ,mem_le_pairing_handle 
+0x59de 023649 isub temp ,null 
+0x59df 023650 nbranch le_send_att_read_response ,zero 
+0x59e0 023652 call le_check_encrypt_state 
+0x59e1 023653 nbranch le_send_att_read_response ,user 
+0x59e2 023654 jam att_err_insufficient_authentication ,mem_le_err_code 
+0x59e3 023655 branch le_send_att_error_response 
+:      023658 le_parse_att_read_blob_request:
+0x59e4 023659 ifetch 2 ,contr 
+0x59e5 023660 store 2 ,mem_le_att_offset 
+:      023661 le_send_att_read_blob_response:
+0x59e6 023662 arg 20 ,rega 
+0x59e7 023663 call le_fifo_malloc_tx_l2cap_gatt 
+0x59e8 023664 setarg attop_read_blob_response 
+0x59e9 023665 istore 1 ,contw 
+0x59ea 023666 fetch 2 ,mem_le_att_offset 
+0x59eb 023667 iforce rega 
+0x59ec 023668 fetcht 2 ,mem_le_att_handle 
+0x59ed 023669 call le_att_get_handle_ptr 
+0x59ee 023670 branch le_send_att_error_response_notfound ,blank 
+0x59ef 023671 ifetch 1 ,contr 
+0x59f0 023672 isub rega ,loopcnt 
+0x59f1 023673 nbranch le_send_att_error_response_notfound ,positive 
+0x59f2 023674 sub loopcnt ,22 ,null 
+0x59f3 023675 branch le_send_att_read_blob_response_less ,positive 
+0x59f4 023676 force 22 ,loopcnt 
+:      023677 le_send_att_read_blob_response_less:
+0x59f5 023678 deposit rega 
+0x59f6 023679 iadd contr ,contr 
+0x59f7 023680 call memcpy_fast 
+0x59f8 023681 call store_contw 
+0x59f9 023682 branch le_send_auto_len_by_mem 
+:      023685 le_parse_att_read_by_group_type_request:
+0x59fa 023686 call le_get_search_handle_start_end_common 
+0x59fb 023687 call le_get_search_att_type 
+0x59fc 023688 branch le_send_att_read_by_group_type_response 
+:      023693 le_send_att_read_by_group_type_response:
+0x59fd 023694 arg 2 ,timeup 
+0x59fe 023695 fetcht 2 ,mem_le_search_handle_start 
+0x59ff 023699 storet 2 ,mem_temp 
+0x5a00 023700 call le_init_attlist_search 
+0x5a01 023701 call le_att_get_handle_ptr2 
+0x5a02 023702 increase -2 ,contr 
+0x5a03 023703 copy contr ,pdata 
+0x5a04 023704 store 2 ,mem_le_cur_attlist_start_ptr 
+:      023705 le_send_att_read_by_group_type_response_loop:
+0x5a05 023706 call le_att_check_handle_end 
+0x5a06 023707 nbranch le_send_att_read_by_group_type_end0 ,positive 
+0x5a07 023708 fetcht 2 ,mem_temp 
+0x5a08 023709 call le_att_get_handle_info_from_ptr 
+0x5a09 023710 beq 1 ,le_send_att_read_by_group_type_end1 
+0x5a0a 023712 call le_att_same_type 
+0x5a0b 023713 nbranch le_send_att_read_by_group_type_next_handle ,zero 
+0x5a0c 023714 copy timeup ,pdata 
+0x5a0d 023715 beq 0 ,le_send_att_read_by_group_type_end1 
+0x5a0e 023716 nbranch le_send_att_read_by_group_type_store_write_record ,user 
+0x5a0f 023717 disable user 
+0x5a10 023719 arg 20 ,rega 
+0x5a11 023720 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a12 023721 setarg attop_read_by_group_type_response 
+0x5a13 023722 istore 1 ,contw 
+0x5a14 023723 fetch 1 ,mem_le_curr_att_len 
+0x5a15 023724 increase 4 ,pdata 
+0x5a16 023725 istore 1 ,contw 
+0x5a17 023726 call store_contw 
+0x5a18 023727 branch le_send_att_read_by_group_type_store_record 
+:      023728 le_send_att_read_by_group_type_store_write_record:
+0x5a19 023729 fetch 1 ,mem_le_curr_att_len 
+0x5a1a 023730 beq 16 ,le_send_att_read_by_group_type_end1 
+0x5a1b 023731 fetch 2 ,mem_temp 
+0x5a1c 023732 increase -1 ,pdata 
+0x5a1d 023733 store 2 ,mem_le_cur_handle_end 
+0x5a1e 023734 call le_write_att_record 
+:      023735 le_send_att_read_by_group_type_store_record:
+0x5a1f 023736 fetch 2 ,mem_temp 
+0x5a20 023737 store 2 ,mem_le_cur_handle_start 
+0x5a21 023738 call le_store_att_record 
+0x5a22 023739 increase -1 ,timeup 
+:      023741 le_send_att_read_by_group_type_next_handle:
+0x5a23 023742 call le_att_next_handle 
+0x5a24 023743 branch le_send_att_read_by_group_type_response_loop 
+:      023745 le_send_att_read_by_group_type_end0:
+0x5a25 023746 fetch 2 ,mem_temp 
+0x5a26 023747 store 2 ,mem_le_cur_handle_end 
+0x5a27 023748 branch le_send_att_read_by_group_type_end_common 
+:      023749 le_send_att_read_by_group_type_end1:
+0x5a28 023750 fetch 2 ,mem_temp 
+0x5a29 023751 increase -1 ,pdata 
+0x5a2a 023752 store 2 ,mem_le_cur_handle_end 
+0x5a2b 023753 branch le_send_att_read_by_group_type_end_common 
+:      023754 le_send_att_read_by_group_type_end_common:
+0x5a2c 023755 branch le_send_att_error_response_notfound ,user 
+0x5a2d 023756 call le_write_att_record 
+0x5a2e 023757 branch le_send_auto_len_by_mem 
+:      023762 le_parse_att_write_request:
+0x5a2f 023763 copy contr ,rega 
+0x5a30 023764 fetch 2 ,mem_le_l2cap_size 
+0x5a31 023765 add pdata ,-3 ,regb 
+0x5a32 023766 call le_writeatt_cb 
+:      023767 le_send_att_write_response_check_auth:
+0x5a33 023768 fetch 1 ,mem_le_configuration 
+0x5a34 023769 bbit0 bit_ble_write_auth ,le_send_att_write_response 
+0x5a35 023771 fetcht 2 ,mem_le_att_handle 
+0x5a36 023772 fetch 2 ,mem_le_pairing_handle 
+0x5a37 023773 isub temp ,null 
+0x5a38 023774 nbranch le_send_att_write_response ,zero 
+0x5a39 023775 call le_check_encrypt_state 
+0x5a3a 023776 nbranch le_send_att_write_response ,user 
+0x5a3b 023777 jam att_err_insufficient_authentication ,mem_le_err_code 
+0x5a3c 023778 branch le_send_att_error_response 
+:      023780 le_send_att_write_response:
+0x5a3d 023781 force 1 ,rega 
+0x5a3e 023782 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a3f 023783 setarg attop_write_response 
+0x5a40 023784 istore 1 ,contw 
+0x5a41 023785 rtn 
+:      023787 le_check_encrypt_state:
+0x5a42 023788 call disable_user 
+0x5a43 023789 fetch 1 ,mem_le_pairing_mode 
+0x5a44 023790 rtneq le_pairing_mode_none 
+0x5a45 023791 fetch 1 ,mem_context 
+0x5a46 023792 rtnbit1 lestate_encryption 
+0x5a47 023793 branch enable_user 
+:      023796 le_parse_att_prepare_write_request:
+0x5a48 023797 add contr ,2 ,rega 
+0x5a49 023798 fetch 2 ,mem_le_l2cap_size 
+0x5a4a 023799 add pdata ,-5 ,regb 
+0x5a4b 023800 call le_writeatt_cb 
+0x5a4c 023801 branch le_send_att_prepare_write_response 
+:      023804 le_send_att_prepare_write_response:
+0x5a4d 023805 fetch 2 ,mem_le_l2cap_size 
+0x5a4e 023806 copy pdata ,rega 
+0x5a4f 023807 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a50 023808 setarg attop_prepare_write_response 
+0x5a51 023809 istore 1 ,contw 
+0x5a52 023810 fetch 2 ,mem_le_att_handle 
+0x5a53 023811 istore 2 ,contw 
+0x5a54 023812 fetch 2 ,mem_le_l2cap_size 
+0x5a55 023813 add pdata ,-5 ,loopcnt 
+0x5a56 023814 fetch 2 ,mem_le_payload_ptr 
+0x5a57 023815 add pdata ,7 ,contr 
+0x5a58 023816 ifetch 2 ,contr 
+0x5a59 023817 istore 2 ,contw 
+0x5a5a 023818 branch memcpy_fast 
+:      023822 le_parse_att_execute_write_request:
+:      023824 le_send_att_execute_write_response:
+0x5a5b 023825 force 1 ,rega 
+0x5a5c 023826 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a5d 023827 setarg attop_execute_write_response 
+0x5a5e 023828 istore 1 ,contw 
+0x5a5f 023829 rtn 
+:      023833 le_parse_att_write_command:
+0x5a60 023834 copy contr ,rega 
+0x5a61 023835 fetch 2 ,mem_le_l2cap_size 
+0x5a62 023836 add pdata ,-3 ,regb 
+0x5a63 023837 branch le_writeatt_cb 
+:      023842 le_att_malloc_tx_notify:
+0x5a64 023843 copy temp ,regc 
+0x5a65 023844 increase 3 ,rega 
+0x5a66 023845 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a67 023846 increase -3 ,rega 
+0x5a68 023847 setarg attop_handle_value_notification 
+0x5a69 023848 istore 1 ,contw 
+0x5a6a 023849 copy regc ,temp 
+0x5a6b 023850 istoret 2 ,contw 
+0x5a6c 023851 rtn 
+:      023854 le_att_malloc_tx_indication:
+0x5a6d 023855 copy temp ,regc 
+0x5a6e 023856 increase 3 ,rega 
+0x5a6f 023857 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a70 023858 increase -3 ,rega 
+0x5a71 023859 setarg attop_handle_value_indication 
+0x5a72 023860 istore 1 ,contw 
+0x5a73 023861 copy regc ,temp 
+0x5a74 023862 istoret 2 ,contw 
+0x5a75 023863 rtn 
+:      023868 le_send_att_error_response_notfound:
+0x5a76 023869 jam att_err_attribute_not_found ,mem_le_err_code 
+:      023870 le_send_att_error_response:
+0x5a77 023871 force 5 ,rega 
+0x5a78 023872 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a79 023873 setarg attop_error_response 
+0x5a7a 023874 istore 1 ,contw 
+0x5a7b 023875 fetch 1 ,mem_le_att_opcode 
+0x5a7c 023876 istore 1 ,contw 
+0x5a7d 023877 fetch 2 ,mem_le_att_handle 
+0x5a7e 023878 istore 2 ,contw 
+0x5a7f 023879 fetch 1 ,mem_le_err_code 
+0x5a80 023880 istore 1 ,contw 
+0x5a81 023881 rtn 
+:      023884 le_fifo_malloc_tx_l2cap_gatt:
+0x5a82 023885 force le_l2cap_cid_att ,regb 
+0x5a83 023886 branch le_fifo_malloc_tx_l2cap 
+:      023889 le_att_next_handle:
+0x5a84 023890 fetcht 2 ,mem_temp 
+0x5a85 023891 increase 1 ,temp 
+0x5a86 023892 storet 2 ,mem_temp 
+0x5a87 023893 rtn 
+:      023895 le_att_check_handle_end:
+0x5a88 023896 fetcht 2 ,mem_temp 
+0x5a89 023897 fetch 2 ,mem_le_search_handle_end 
+0x5a8a 023898 isub temp ,null 
+0x5a8b 023899 rtn 
+:      023902 le_att_same_type:
+0x5a8c 023903 fetcht 1 ,mem_le_search_att_type_length 
+0x5a8d 023904 arg mem_le_search_att_type ,rega 
+:      023905 le_att_check_same_common:
+0x5a8e 023906 fetch 1 ,mem_le_cur_uuid_length 
+0x5a8f 023907 copy pdata ,loopcnt 
+0x5a90 023908 isub temp ,null 
+0x5a91 023909 nrtn zero 
+0x5a92 023910 arg mem_le_cur_uuid ,regb 
+0x5a93 023911 branch string_compare 
+:      023913 le_att_same_uuid:
+0x5a94 023914 fetcht 1 ,mem_le_search_uuid_length 
+0x5a95 023915 arg mem_le_search_uuid ,rega 
+0x5a96 023916 branch le_att_check_same_common 
+:      023919 le_store_att_record:
+0x5a97 023920 fetch 1 ,mem_le_curr_att_len 
+0x5a98 023921 store 1 ,mem_tmp_buffer 
+0x5a99 023922 copy pdata ,loopcnt 
+0x5a9a 023923 call get_contr 
+0x5a9b 023924 branch memcpy_fast 
+:      023927 le_write_att_record:
+0x5a9c 023928 call get_contw 
+0x5a9d 023929 fetch 2 ,mem_le_cur_handle_start 
+0x5a9e 023930 istore 2 ,contw 
+0x5a9f 023931 fetch 2 ,mem_le_cur_handle_end 
+0x5aa0 023932 istore 2 ,contw 
+:      023933 le_write_att_record_common:
+0x5aa1 023934 fetch 1 ,mem_tmp_buffer 
+0x5aa2 023935 copy pdata ,loopcnt 
+0x5aa3 023936 call memcpy_fast 
+0x5aa4 023937 branch store_contw 
+:      023941 le_send_auto_len_by_mem:
+0x5aa5 023942 call get_contw 
+0x5aa6 023943 call le_fifo_get_last_att_ptr 
+0x5aa7 023944 copy contw ,pdata 
+0x5aa8 023945 isub contr ,rega 
+0x5aa9 023946 call le_fifo_get_last_l2cap_ptr 
+0x5aaa 023947 copy rega ,pdata 
+0x5aab 023948 istore 2 ,contr 
+0x5aac 023949 increase 4 ,rega 
+0x5aad 023950 call le_fifo_get_last_tx_ptr 
+0x5aae 023951 copy rega ,pdata 
+0x5aaf 023952 istore 1 ,contr 
+0x5ab0 023953 rtn 
+:      023956 le_get_search_handle_start_end_common:
+0x5ab1 023957 rshift8 pdata ,pdata 
+0x5ab2 023958 store 2 ,mem_le_search_handle_start 
+0x5ab3 023959 ifetch 2 ,contr 
+0x5ab4 023960 store 2 ,mem_le_search_handle_end 
+0x5ab5 023961 rtn 
+:      023966 le_parse_signaling:
+0x5ab6 023967 ifetch 1 ,contr 
+0x5ab7 023968 ifetcht 1 ,contr 
+0x5ab8 023969 ifetcht 2 ,contr 
+0x5ab9 023970 beq l2cap_connection_parameter_update_response ,le_l2cap_parse_conn_parameter_update_rsp 
+0x5aba 023971 rtn 
+:      023972 le_l2cap_parse_conn_parameter_update_rsp:
+0x5abb 023973 ifetch 2 ,contr 
+0x5abc 023974 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x5abd 023975 jam bt_evt_le_parse_conn_papa_update_rsp ,mem_fifo_temp 
+0x5abe 023976 branch ui_ipc_send_event 
+:      023982 le_l2cap_tx_update_req:
+0x5abf 023983 arg 0x0c ,rega 
+0x5ac0 023984 arg l2cap_connection_parameter_update_request ,regc 
+0x5ac1 023985 call le_fifo_malloc_tx_l2cap_signaling 
+0x5ac2 023986 setarg 0x08 
+0x5ac3 023987 istore 2 ,contw 
+0x5ac4 023988 fetch 8 ,mem_le_interval_min 
+0x5ac5 023989 istore 8 ,contw 
+0x5ac6 023990 rtn 
+:      023994 le_fifo_malloc_tx_l2cap_signaling:
+0x5ac7 023995 call le_l2cap_update_signaling_identifier 
+0x5ac8 023996 arg le_l2cap_cid_signal ,regb 
+0x5ac9 023997 call le_fifo_malloc_tx_l2cap 
+0x5aca 023998 copy regc ,pdata 
+0x5acb 023999 istore 1 ,contw 
+0x5acc 024000 fetch 1 ,mem_le_signaling_identifier 
+0x5acd 024001 istore 1 ,contw 
+0x5ace 024002 rtn 
+:      024005 le_l2cap_update_signaling_identifier:
+0x5acf 024006 fetch 1 ,mem_le_signaling_identifier 
+0x5ad0 024008 pincrease 1 
+0x5ad1 024009 store 1 ,mem_le_signaling_identifier 
+0x5ad2 024010 rtnne 0 
+:      024012 le_l2cap_reset_signaling_identifier:
+0x5ad3 024013 jam 1 ,mem_le_signaling_identifier 
+0x5ad4 024014 rtn 
+:      024019 le_pairing_mode_init:
+0x5ad5 024020 fetch 1 ,mem_le_pairing_mode 
+0x5ad6 024021 beq le_pairing_mode_none ,le_set_no_pairing 
+0x5ad7 024022 beq le_pairing_mode_lagacy_justwork ,le_set_pairing_mode_lagacy_just_work 
+0x5ad8 024023 beq le_pairing_mode_lagacy_passkey ,le_set_pairing_mode_lagacy_passkey 
+0x5ad9 024024 beq le_pairing_mode_secure_connect_justwork ,le_set_pairing_mode_secure_justwork 
+0x5ada 024025 beq le_pairing_mode_secure_connect_numeric ,le_set_pairing_mode_secure_numeric 
+0x5adb 024026 beq le_pairing_mode_secure_connect_passkey ,le_set_pairing_mode_secure_passkey 
+0x5adc 024027 rtn 
+:      024029 le_set_pairing_mode_secure_justwork:
+0x5add 024030 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x5ade 024031 branch le_set_noinputnooutput 
+:      024032 le_set_pairing_mode_secure_numeric:
+0x5adf 024033 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x5ae0 024034 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
+0x5ae1 024035 rtn 
+:      024036 le_set_pairing_mode_secure_passkey:
+0x5ae2 024037 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x5ae3 024038 branch le_set_displayonly 
+:      024039 le_set_no_pairing:
+0x5ae4 024040 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
+:      024041 le_set_noinputnooutput:
+0x5ae5 024042 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
+0x5ae6 024043 rtn 
+:      024044 le_set_pairing_mode_lagacy_just_work:
+0x5ae7 024045 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+0x5ae8 024046 branch le_set_noinputnooutput 
+:      024047 le_set_pairing_mode_lagacy_passkey:
+0x5ae9 024048 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+:      024049 le_set_displayonly:
+0x5aea 024050 jam flag_iocap_displayonly ,mem_le_pres_iocap 
+0x5aeb 024051 rtn 
+:      024054 le_secure_connection_enable:
+0x5aec 024055 fetch 1 ,mem_le_pres_auth 
+0x5aed 024056 set1 le_auth_secure_connection_pairing_bit ,pdata 
+0x5aee 024057 store 1 ,mem_le_pres_auth 
+0x5aef 024058 rtn 
+:      024059 le_secure_connection_disable:
+0x5af0 024060 fetch 1 ,mem_le_pres_auth 
+0x5af1 024061 set0 le_auth_secure_connection_pairing_bit ,pdata 
+0x5af2 024062 store 1 ,mem_le_pres_auth 
+0x5af3 024063 rtn 
+:      024065 le_parse_smp:
+0x5af4 024066 ifetch 1 ,contr 
+0x5af5 024067 beq smp_pairing_request ,le_parse_smp_pairing_request 
+0x5af6 024069 beq smp_pairing_confirm ,le_parse_smp_pairing_confirm 
+0x5af7 024070 beq smp_pairing_random ,le_parse_smp_pairing_random 
+0x5af8 024071 beq smp_pairing_failed ,le_parse_smp_pairing_failed 
+0x5af9 024072 beq smp_encryption_information ,le_parse_smp_encryption_information 
+0x5afa 024073 beq smp_master_identification ,le_parse_smp_master_identification 
+0x5afb 024074 beq smp_identity_information ,le_parse_smp_identity_information 
+0x5afc 024075 beq smp_identity_address_information ,le_parse_smp_identity_address_information 
+0x5afd 024076 beq smp_signing_information ,le_parse_smp_signing_information 
+0x5afe 024077 beq smp_security_request ,le_parse_smp_security_request 
+0x5aff 024078 beq smp_pairing_public_key ,le_parse_smp_public_key 
+0x5b00 024079 beq smp_pairing_dhkey_check ,le_parse_smp_dhkey_check 
+0x5b01 024080 rtn 
+:      024084 le_send_smp_security_request:
+0x5b02 024085 force 2 ,rega 
+0x5b03 024086 call le_fifo_malloc_tx_l2cap_smp 
+0x5b04 024087 setarg smp_security_request 
+0x5b05 024088 istore 1 ,contw 
+0x5b06 024089 fetch 1 ,mem_le_pres_auth 
+0x5b07 024090 istore 1 ,contw 
+0x5b08 024091 rtn 
+:      024093 le_parse_smp_pairing_request:
+0x5b09 024094 store 1 ,mem_le_preq 
+0x5b0a 024095 ifetch 6 ,contr 
+0x5b0b 024096 istore 6 ,contw 
+0x5b0c 024097 fetch 1 ,mem_le_pairing_mode 
+0x5b0d 024098 beq le_pairing_mode_none ,le_smp_pairing_fail_reason_not_support_pairing 
+0x5b0e 024099 call le_send_smp_pairing_response 
+0x5b0f 024100 call le_check_master_support_secure_connect 
+0x5b10 024101 jam flag_le_pairing_rcv_pairing_req ,mem_le_pairing_state 
+0x5b11 024102 fetch 1 ,mem_le_preq_iocap 
+0x5b12 024103 beq flag_iocap_displayonly ,le_set_tk_0 
+0x5b13 024104 beq flag_iocap_displayyesno ,le_set_tk_0 
+0x5b14 024105 beq flag_iocap_noinputnooutput ,le_set_tk_0 
+0x5b15 024106 fetch 1 ,mem_le_pairing_mode 
+0x5b16 024107 beq le_pairing_mode_lagacy_passkey ,le_parse_smp_pairing_req_passkey 
+0x5b17 024108 rtneq le_pairing_mode_secure_connect_passkey 
+:      024109 le_set_tk_0:
+0x5b18 024110 arg 0 ,pdata 
+0x5b19 024111 store 4 ,mem_le_tk 
+0x5b1a 024112 rtn 
+:      024114 le_parse_smp_pairing_req_passkey:
+0x5b1b 024115 fetch 1 ,mem_le_configuration 
+0x5b1c 024116 bbit1 bit_ble_passkey_fixed_key ,le_parse_smp_pairing_req_fixed_passkey 
+:      024117 le_genernate_tk:
+0x5b1d 024118 arg mem_le_tk ,rega 
+0x5b1e 024119 copy rega ,contw 
+0x5b1f 024120 arg 3 ,loopcnt 
+0x5b20 024121 call generate_random_loop 
+0x5b21 024122 fetch 2 ,mem_le_tk + 2 
+0x5b22 024123 and_into 0x7 ,pdata 
+0x5b23 024124 store 2 ,mem_le_tk + 2 
+:      024125 le_parse_smp_pairing_req_fixed_passkey:
+0x5b24 024126 jam bt_evt_le_tk_generate ,mem_fifo_temp 
+0x5b25 024127 branch ui_ipc_send_event 
+:      024129 le_check_master_support_secure_connect:
+0x5b26 024130 fetch 1 ,mem_le_preq_auth 
+0x5b27 024131 rtnbit1 le_auth_secure_connection_pairing_bit 
+0x5b28 024132 fetch 1 ,mem_le_pairing_mode 
+0x5b29 024133 rtnbit0 le_pairing_mode_secure_connect_bit 
+0x5b2a 024134 branch app_ble_disconnect 
+:      024136 le_send_smp_pairing_response:
+0x5b2b 024137 force 7 ,rega 
+0x5b2c 024138 call le_fifo_malloc_tx_l2cap_smp 
+0x5b2d 024139 fetch 7 ,mem_le_pres 
+0x5b2e 024140 istore 7 ,contw 
+0x5b2f 024141 rtn 
+:      024144 le_parse_smp_pairing_confirm:
+0x5b30 024145 copy contr ,rega 
+0x5b31 024146 fetch 1 ,mem_le_pairing_mode 
+0x5b32 024147 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_confirm_secure_passkey 
+0x5b33 024148 copy rega ,contr 
+0x5b34 024149 arg mem_le_rconfirm ,contw 
+0x5b35 024150 call memcpy16 
+0x5b36 024151 branch le_send_smp_pairing_confirm 
+:      024152 le_parse_smp_pairing_confirm_secure_passkey:
+0x5b37 024153 copy rega ,contr 
+0x5b38 024154 arg mem_le_rconfirm ,contw 
+0x5b39 024155 call memcpy16 
+0x5b3a 024156 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5b3b 024157 jam le_sc_stat_passkey_wait_confirm ,mem_le_secure_connect_state 
+0x5b3c 024158 rtn 
+:      024161 le_send_smp_pairing_confirm:
+0x5b3d 024162 fetch 1 ,mem_le_pairing_mode 
+0x5b3e 024163 bbit1 le_pairing_mode_secure_connect_bit ,le_send_smp_pairing_confirm_sc 
+0x5b3f 024164 call generate_confirm 
+0x5b40 024165 force 17 ,rega 
+0x5b41 024166 call le_fifo_malloc_tx_l2cap_smp 
+0x5b42 024167 setarg smp_pairing_confirm 
+0x5b43 024168 istore 1 ,contw 
+0x5b44 024169 branch store_aes_result 
+:      024172 le_send_smp_pairing_confirm_sc:
+0x5b45 024173 arg mem_le_srand ,contw 
+0x5b46 024174 call generate_random 
+0x5b47 024175 call function_f4_cb 
+0x5b48 024176 force 17 ,rega 
+0x5b49 024177 call le_fifo_malloc_tx_l2cap_smp 
+0x5b4a 024178 setarg smp_pairing_confirm 
+0x5b4b 024179 istore 1 ,contw 
+0x5b4c 024180 branch load_inverse_result 
+:      024184 le_parse_smp_pairing_random:
+0x5b4d 024185 copy contr ,rega 
+0x5b4e 024186 fetch 1 ,mem_le_pairing_mode 
+0x5b4f 024187 bbit1 le_pairing_mode_secure_connect_bit ,le_parse_smp_pairing_random_sc 
+0x5b50 024188 copy rega ,contr 
+0x5b51 024189 call authenticate_rconfirm 
+0x5b52 024190 branch le_parse_smp_pairing_random_success ,zero 
+:      024191 le_send_pairing_confirm_value_failed:
+0x5b53 024192 jam pairing_failed_confirm_value_failed ,mem_le_ll_pairing_fail_reason 
+:      024193 le_send_pairing_failed:
+0x5b54 024194 force 2 ,rega 
+0x5b55 024195 call le_fifo_malloc_tx_l2cap_smp 
+0x5b56 024196 setarg smp_pairing_failed 
+0x5b57 024197 istore 1 ,contw 
+0x5b58 024198 fetch 1 ,mem_le_ll_pairing_fail_reason 
+0x5b59 024199 istore 1 ,contw 
+:      024200 le_parse_smp_pairing_failed:
+0x5b5a 024201 force smp_pairing_timer ,queue 
+0x5b5b 024202 call timer_stop 
+0x5b5c 024203 jam flag_le_pairing_null ,mem_le_pairing_state 
+0x5b5d 024204 jam bt_evt_le_pairing_fail ,mem_fifo_temp 
+0x5b5e 024205 branch ui_ipc_send_event 
+:      024207 le_smp_pairing_fail_reason_not_support_pairing:
+0x5b5f 024208 jam pairing_failed_pairing_not_supported ,mem_le_ll_pairing_fail_reason 
+0x5b60 024209 branch le_send_pairing_failed 
+:      024212 le_parse_smp_pairing_random_sc:
+0x5b61 024213 arg mem_le_mrand ,contw 
+0x5b62 024214 copy rega ,contr 
+0x5b63 024215 call memcpy16 
+0x5b64 024216 fetch 1 ,mem_le_pairing_mode 
+0x5b65 024217 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_random_sc_passkey 
+0x5b66 024218 call function_g2 
+0x5b67 024221 call le_send_smp_pairing_random 
+0x5b68 024222 fetch 1 ,mem_le_pairing_mode 
+0x5b69 024223 rtnne le_pairing_mode_secure_connect_numeric 
+0x5b6a 024224 jam bt_evt_le_gkey_generate ,mem_fifo_temp 
+0x5b6b 024225 branch ui_ipc_send_event 
+:      024227 le_parse_smp_pairing_random_sc_passkey:
+0x5b6c 024228 call function_f4_ca 
+0x5b6d 024229 arg mem_aes_cmac_temp ,contw 
+0x5b6e 024230 call load_inverse_result 
+0x5b6f 024231 arg mem_aes_cmac_temp ,rega 
+0x5b70 024232 arg mem_le_rconfirm ,regb 
+0x5b71 024233 arg 16 ,loopcnt 
+0x5b72 024234 call string_compare 
+0x5b73 024235 nbranch le_send_pairing_confirm_value_failed ,zero 
+0x5b74 024236 branch le_send_smp_pairing_random 
+:      024238 le_parse_smp_pairing_random_success:
+0x5b75 024239 call generate_stk 
+0x5b76 024240 jam bt_evt_le_pairing_success ,mem_fifo_temp 
+0x5b77 024241 call ui_ipc_send_event 
+0x5b78 024242 jam 1 ,mem_ltk_exists 
+0x5b79 024243 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
+:      024245 le_send_smp_pairing_random:
+0x5b7a 024246 force 17 ,rega 
+0x5b7b 024247 call le_fifo_malloc_tx_l2cap_smp 
+0x5b7c 024248 setarg smp_pairing_random 
+0x5b7d 024249 istore 1 ,contw 
+0x5b7e 024250 arg mem_le_srand ,contr 
+0x5b7f 024251 branch memcpy16 
+:      024253 le_parse_smp_encryption_information:
+0x5b80 024254 arg mem_le_peer_ltk ,contw 
+0x5b81 024255 branch memcpy16 
+:      024257 le_send_smp_encryption_information:
+0x5b82 024258 force 17 ,rega 
+0x5b83 024259 call le_fifo_malloc_tx_l2cap_smp 
+0x5b84 024260 setarg smp_encryption_information 
+0x5b85 024261 istore 1 ,contw 
+0x5b86 024262 fetch 1 ,mem_le_configuration 
+0x5b87 024263 bbit1 bit_ble_pairing_fixed_ltk ,le_send_fixed_ltk 
+0x5b88 024264 arg mem_le_ltk ,contr 
+0x5b89 024265 branch memcpy16 
+:      024267 le_send_fixed_ltk:
+0x5b8a 024268 arg mem_le_fixed_ltk ,contr 
+0x5b8b 024269 branch memcpy16 
+:      024272 le_send_smp_master_identification:
+0x5b8c 024273 arg mem_le_ediv ,contw 
+0x5b8d 024274 force 10 ,loopcnt 
+0x5b8e 024275 call generate_random_loop 
+0x5b8f 024276 force 11 ,rega 
+0x5b90 024277 call le_fifo_malloc_tx_l2cap_smp 
+0x5b91 024278 setarg smp_master_identification 
+0x5b92 024279 istore 1 ,contw 
+0x5b93 024280 fetch 2 ,mem_le_ediv 
+0x5b94 024281 istore 2 ,contw 
+0x5b95 024282 fetch 8 ,mem_le_rand 
+0x5b96 024283 istore 8 ,contw 
+0x5b97 024284 rtn 
+:      024286 le_send_smp_identity_information:
+0x5b98 024287 force 17 ,rega 
+0x5b99 024288 call le_fifo_malloc_tx_l2cap_smp 
+0x5b9a 024289 setarg smp_identity_information 
+0x5b9b 024290 istore 1 ,contw 
+0x5b9c 024291 setarg 0 
+0x5b9d 024292 istore 8 ,contw 
+0x5b9e 024293 istore 8 ,contw 
+0x5b9f 024294 rtn 
+:      024297 le_send_smp_identity_address_information:
+0x5ba0 024298 force 8 ,rega 
+0x5ba1 024299 call le_fifo_malloc_tx_l2cap_smp 
+0x5ba2 024300 setarg smp_identity_address_information 
+0x5ba3 024301 istore 1 ,contw 
+0x5ba4 024302 fetch 1 ,mem_le_conn_own_addr_type 
+0x5ba5 024303 istore 1 ,contw 
+0x5ba6 024304 fetch 6 ,mem_le_lap 
+0x5ba7 024305 istore 6 ,contw 
+0x5ba8 024306 rtn 
+:      024309 le_send_pairing_fail_unspecified_reason:
+0x5ba9 024310 jam pairing_failed_unspecified_reason ,mem_le_ll_pairing_fail_reason 
+0x5baa 024311 branch le_send_pairing_failed 
+:      024313 le_check_init_key_distribution:
+0x5bab 024314 fetch 1 ,mem_le_pres_init_key_distribution 
+0x5bac 024315 fetcht 1 ,mem_le_pres_init_key_distribution 
+0x5bad 024316 iand temp ,pdata 
+0x5bae 024317 rtn 
+:      024319 le_parse_smp_identity_information:
+0x5baf 024320 arg mem_le_irk ,contw 
+0x5bb0 024321 call memcpy16 
+0x5bb1 024322 call le_check_init_key_distribution 
+0x5bb2 024323 isolate0 le_initator_irk_bit ,pdata 
+0x5bb3 024324 branch le_send_pairing_fail_unspecified_reason ,true 
+0x5bb4 024325 fetch 1 ,mem_device_option 
+0x5bb5 024326 rtnne dvc_op_module 
+0x5bb6 024327 call le_check_master_addr_type 
+0x5bb7 024328 nrtn user 
+0x5bb8 024329 branch app_ble_store_reconn_info 
+:      024332 le_check_master_addr_type:
+0x5bb9 024333 call disable_user 
+0x5bba 024334 fetch 1 ,mem_le_conn_peer_addr_type 
+0x5bbb 024335 rtneq master_public_addr 
+0x5bbc 024336 fetch 1 ,mem_le_plap + 5 
+0x5bbd 024337 compare 0xc0 ,pdata ,0xc0 
+0x5bbe 024338 rtn true 
+0x5bbf 024339 branch enable_user 
+:      024341 le_parse_smp_identity_address_information:
+0x5bc0 024342 call le_check_init_key_distribution 
+0x5bc1 024343 isolate0 le_initator_irk_bit ,pdata 
+0x5bc2 024344 branch le_send_pairing_fail_unspecified_reason ,true 
+0x5bc3 024345 rtn 
+:      024347 le_parse_smp_master_identification:
+:      024348 le_parse_smp_signing_information:
+:      024349 le_parse_smp_security_request:
+0x5bc4 024350 rtn 
+:      024352 le_parse_smp_public_key:
+0x5bc5 024353 arg mem_le_pubkey_remote_x_256 ,contw 
+0x5bc6 024354 call memcpy64 
+0x5bc7 024355 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5bc8 024356 jam le_sc_stat_receive_public_key ,mem_le_secure_connect_state 
+0x5bc9 024357 rtn 
+:      024359 le_parse_smp_dhkey_check:
+0x5bca 024360 arg mem_sp_confirm_remote ,contw 
+0x5bcb 024361 call memcpy16 
+0x5bcc 024362 jam le_sc_stat_receive_dhkey ,mem_le_secure_connect_state 
+0x5bcd 024363 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5bce 024364 rtn 
+:      024366 le_send_smp_pairing_public_key:
+0x5bcf 024367 force 65 ,rega 
+0x5bd0 024368 call le_fifo_malloc_tx_l2cap_smp 
+0x5bd1 024369 setarg smp_pairing_public_key 
+0x5bd2 024370 istore 1 ,contw 
+0x5bd3 024371 arg mem_le_pubkey_local_x_256 ,contr 
+0x5bd4 024372 branch memcpy64 
+:      024374 le_send_smp_pairing_dhkey_check:
+0x5bd5 024375 call function_f6_eb 
+0x5bd6 024376 force 17 ,rega 
+0x5bd7 024377 call le_fifo_malloc_tx_l2cap_smp 
+0x5bd8 024378 setarg smp_pairing_dhkey_check 
+0x5bd9 024379 istore 1 ,contw 
+0x5bda 024380 branch load_inverse_result 
+:      024383 le_check_paring_time:
+0x5bdb 024384 fetch 1 ,mem_le_pairing_state 
+0x5bdc 024385 rtneq flag_le_pairing_end 
+0x5bdd 024386 arg flag_le_pairing_rcv_pairing_req ,temp 
+0x5bde 024387 isub temp ,null 
+0x5bdf 024388 nrtn positive 
+0x5be0 024389 arg smp_pairing_timer ,queue 
+0x5be1 024390 call timer_check 
+0x5be2 024391 nrtn blank 
+0x5be3 024392 branch le_send_pairing_fail_unspecified_reason 
+:      024394 le_pairing_sm:
+0x5be4 024395 bpatchx patch2f_0 ,mem_patch2f 
+0x5be5 024396 fetch 1 ,mem_le_pairing_state 
+0x5be6 024397 beq flag_le_pairing_null ,le_pairing_sm_null 
+0x5be7 024398 beq flag_le_pairing_start ,le_pairing_sm_start 
+0x5be8 024399 beq flag_le_pairing_send_recurity_req ,le_pairing_sm_send_sec_req 
+0x5be9 024400 beq flag_le_pairing_rcv_pairing_req ,le_pairing_sm_rcv_pairing_req 
+0x5bea 024401 beq flag_le_pairing_after_auth ,le_pairing_sm_after_auth 
+0x5beb 024402 beq flag_le_paring_send_enc_information ,le_pairng_sm_send_enc_information 
+0x5bec 024403 beq flag_le_paring_send_master_identification ,le_pairng_sm_send_master_indentification 
+0x5bed 024404 beq flag_le_paring_send_indentity_information ,le_pairng_sm_send_indentity_information 
+0x5bee 024405 rtn 
+:      024407 le_pairing_sm_null:
+:      024408 le_pairing_sm_send_sec_req:
+0x5bef 024409 fetch 1 ,mem_le_enc_state 
+0x5bf0 024410 rtnne flag_le_send_start_enc_rsp 
+0x5bf1 024411 jam flag_le_enc_end ,mem_le_enc_state 
+0x5bf2 024412 jam flag_le_pairing_end ,mem_le_pairing_state 
+0x5bf3 024413 jam bt_evt_le_reconnect_complete ,mem_fifo_temp 
+0x5bf4 024414 branch ui_ipc_send_event 
+:      024417 le_pairing_sm_start:
+0x5bf5 024418 jam flag_le_pairing_send_recurity_req ,mem_le_pairing_state 
+0x5bf6 024419 branch le_send_smp_security_request 
+:      024421 le_pairing_sm_rcv_pairing_req:
+0x5bf7 024422 jam flag_le_pairing_auth ,mem_le_pairing_state 
+0x5bf8 024423 setarg timer_smp_pairing_timeout 
+0x5bf9 024424 arg smp_pairing_timer ,queue 
+0x5bfa 024425 branch timer_init 
+:      024427 le_pairing_sm_after_auth:
+0x5bfb 024428 fetch 1 ,mem_le_enc_state 
+0x5bfc 024429 beq flag_le_send_start_enc_rsp ,le_pairing_sm_after_auth_start_enc 
+0x5bfd 024430 rtn 
+:      024432 le_pairing_sm_after_auth_start_enc:
+0x5bfe 024433 jam flag_le_paring_send_enc_information ,mem_le_pairing_state 
+0x5bff 024434 jam bt_evt_le_enc_info ,mem_fifo_temp 
+0x5c00 024435 call ui_ipc_send_event 
+0x5c01 024436 call le_send_smp_encryption_information 
+0x5c02 024437 fetch 1 ,mem_device_option 
+0x5c03 024438 rtnne dvc_op_module 
+0x5c04 024439 call le_check_master_addr_type 
+0x5c05 024440 rtn user 
+0x5c06 024441 branch app_ble_store_reconn_info 
+:      024444 le_pairng_sm_send_enc_information:
+0x5c07 024445 jam flag_le_paring_send_master_identification ,mem_le_pairing_state 
+0x5c08 024446 branch le_send_smp_master_identification 
+:      024448 le_pairng_sm_send_master_indentification:
+0x5c09 024449 fetch 1 ,mem_le_preq_resp_key_distribution 
+0x5c0a 024450 fetcht 1 ,mem_le_pres_resp_key_distribution 
+0x5c0b 024451 iand temp ,pdata 
+0x5c0c 024452 isolate0 le_initator_irk_bit ,pdata 
+0x5c0d 024453 branch le_parse_start_enc_rsp_after_auth_end ,true 
+0x5c0e 024454 jam flag_le_paring_send_indentity_information ,mem_le_pairing_state 
+0x5c0f 024455 branch le_send_smp_identity_information 
+:      024457 le_pairng_sm_send_indentity_information:
+0x5c10 024458 call le_send_smp_identity_address_information 
+0x5c11 024459 branch le_parse_start_enc_rsp_after_auth_end 
+:      024462 le_parse_start_enc_rsp_after_auth_end:
+0x5c12 024463 force smp_pairing_timer ,queue 
+0x5c13 024464 call timer_stop 
+0x5c14 024465 jam flag_le_enc_end ,mem_le_enc_state 
+0x5c15 024466 jam flag_le_pairing_end ,mem_le_pairing_state 
+0x5c16 024467 jam bt_evt_le_pairing_complete ,mem_fifo_temp 
+0x5c17 024468 branch ui_ipc_send_event 
+:      024472 le_secure_connect_sm:
+0x5c18 024473 bpatchx patch2f_1 ,mem_patch2f 
+0x5c19 024474 fetch 1 ,mem_le_pairing_mode 
+0x5c1a 024475 rtnbit0 le_pairing_mode_secure_connect_bit 
+0x5c1b 024476 fetch 1 ,mem_le_secure_connect_flag 
+0x5c1c 024477 rtnne le_sp_flag_commit_256 
+0x5c1d 024478 jam sp_flag_standby ,mem_le_secure_connect_flag 
+0x5c1e 024479 fetch 1 ,mem_le_secure_connect_state 
+0x5c1f 024480 beq le_sc_stat_receive_public_key ,le_sc_sm_receive_public_key 
+0x5c20 024481 beq le_sc_stat_wait_send_public_key ,le_sc_sm_wait_send_public_key 
+0x5c21 024482 beq le_sc_stat_send_public_key ,le_sc_sm_send_public_key 
+0x5c22 024483 beq le_sc_stat_receive_dhkey ,le_sc_sm_receive_dhkey 
+0x5c23 024484 beq le_sc_stat_wait_confirm_gkey ,le_sc_sm_wait_confirm_gkey 
+0x5c24 024485 beq le_sc_stat_passkey_wait_confirm ,le_sc_sm_passkey_wait_confirm 
+0x5c25 024486 rtn 
+:      024489 le_sc_sm_passkey_wait_confirm:
+0x5c26 024490 fetch 1 ,mem_authentication_passkey_times 
+0x5c27 024491 copy pdata ,queue 
+0x5c28 024492 increase 1 ,pdata 
+0x5c29 024493 store 1 ,mem_authentication_passkey_times 
+0x5c2a 024494 fetch 4 ,mem_le_tk 
+0x5c2b 024495 qisolate1 pdata 
+0x5c2c 024496 setarg 0x80 
+0x5c2d 024497 setflag true ,0 ,pdata 
+0x5c2e 024498 store 1 ,mem_passkey_1bit 
+0x5c2f 024499 branch le_sc_sm_ready_send_pairing_confirm 
+:      024501 le_sc_sm_wait_confirm_gkey:
+0x5c30 024502 fetch 1 ,mem_le_sc_confirm_gkey_flag 
+0x5c31 024503 jam flag_le_sc_confrim_null ,mem_le_sc_confirm_gkey_flag 
+0x5c32 024504 beq flag_le_sc_confrim_gkey_ok ,le_sc_confirm_gkey_ok 
+0x5c33 024505 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c34 024506 rtn 
+:      024508 le_sc_confirm_gkey_ok:
+0x5c35 024509 jam bt_evt_le_pairing_success ,mem_fifo_temp 
+0x5c36 024510 call ui_ipc_send_event 
+0x5c37 024511 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
+0x5c38 024512 branch le_send_smp_pairing_dhkey_check 
+:      024514 le_sc_sm_receive_dhkey:
+0x5c39 024515 fetch 1 ,mem_sp_dhkey_invalid 
+0x5c3a 024516 beq sp_key_valid_256 ,le_dhkey_ready 
+0x5c3b 024517 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c3c 024518 rtn 
+:      024520 le_dhkey_ready:
+0x5c3d 024521 call function_f5 
+0x5c3e 024525 fetch 1 ,mem_le_pairing_mode 
+0x5c3f 024526 beq le_pairing_mode_secure_connect_passkey ,le_dhkey_ready_common 
+0x5c40 024527 call le_set_tk_0 
+:      024528 le_dhkey_ready_common:
+0x5c41 024529 call function_f6_ea 
+0x5c42 024530 arg mem_aes_cmac_temp ,rega 
+0x5c43 024531 arg mem_sp_confirm_remote ,regb 
+0x5c44 024532 arg 16 ,loopcnt 
+0x5c45 024533 call string_compare 
+0x5c46 024534 branch le_dhkey_check_ok ,zero 
+:      024535 le_dhkey_check_fail:
+0x5c47 024536 jam pairing_failed_dhkey_check_failed ,mem_le_ll_pairing_fail_reason 
+0x5c48 024537 branch le_send_pairing_failed 
+:      024540 le_dhkey_check_ok:
+0x5c49 024541 call sp_calc_check_publickey_256 
+0x5c4a 024542 nbranch le_dhkey_check_fail ,zero 
+0x5c4b 024543 jam 1 ,mem_ltk_exists 
+0x5c4c 024544 fetch 1 ,mem_le_pairing_mode 
+0x5c4d 024545 beq le_pairing_mode_secure_connect_justwork ,le_sc_confirm_gkey_ok 
+0x5c4e 024546 beq le_pairing_mode_secure_connect_passkey ,le_sc_confirm_gkey_ok 
+0x5c4f 024547 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c50 024548 jam le_sc_stat_wait_confirm_gkey ,mem_le_secure_connect_state 
+0x5c51 024549 rtn 
+:      024551 le_sc_sm_send_public_key:
+0x5c52 024552 fetch 1 ,mem_le_pairing_mode 
+0x5c53 024553 beq le_pairing_mode_secure_connect_passkey ,le_sc_sm_send_public_key_passkey 
+0x5c54 024554 jam 0 ,mem_passkey_1bit 
+:      024555 le_sc_sm_ready_send_pairing_confirm:
+0x5c55 024556 branch le_send_smp_pairing_confirm 
+:      024558 le_sc_sm_send_public_key_passkey:
+0x5c56 024562 jam 0 ,mem_authentication_passkey_times 
+0x5c57 024563 branch le_parse_smp_pairing_req_passkey 
+:      024566 le_sc_sm_receive_public_key:
+0x5c58 024567 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c59 024568 fetch 1 ,mem_le_sc_local_key_invalid 
+0x5c5a 024569 beq sp_key_valid_256 ,le_public_key_ready 
+0x5c5b 024571 rtn 
+:      024573 le_public_key_ready:
+0x5c5c 024574 jam le_sc_stat_wait_send_public_key ,mem_le_secure_connect_state 
+0x5c5d 024575 jam sp_key_invalid ,mem_sp_dhkey_invalid 
+0x5c5e 024576 branch sp_dhkey_calc_256 
+:      024578 le_sc_sm_wait_send_public_key:
+0x5c5f 024579 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c60 024580 jam le_sc_stat_send_public_key ,mem_le_secure_connect_state 
+0x5c61 024581 branch le_send_smp_pairing_public_key 
+:      024585 le_fifo_malloc_tx_l2cap_smp:
+0x5c62 024586 force le_l2cap_cid_smp ,regb 
+0x5c63 024587 branch le_fifo_malloc_tx_l2cap 
+:      024591 le_parse_ll:
+0x5c64 024592 fetch 1 ,mem_le_rxbuf + 2 
+0x5c65 024593 beq ll_connection_update_req ,le_parse_connection_update_req 
+0x5c66 024594 beq ll_channel_map_req ,le_parse_channel_map_req 
+0x5c67 024595 beq ll_terminate_ind ,le_parse_terminate_ind 
+0x5c68 024596 beq ll_enc_req ,le_parse_enc_req 
+0x5c69 024597 beq ll_enc_rsp ,le_parse_enc_rsp 
+0x5c6a 024598 beq ll_start_enc_req ,le_parse_start_enc_req 
+0x5c6b 024599 beq ll_start_enc_rsp ,le_parse_start_enc_rsp 
+0x5c6c 024600 beq ll_unknown_rsp ,le_parse_unknown_rsp 
+0x5c6d 024601 beq ll_feature_req ,le_parse_feature_req 
+0x5c6e 024602 beq ll_feature_rsp ,le_parse_feature_rsp 
+0x5c6f 024603 beq ll_pause_enc_req ,le_parse_pause_enc_req 
+0x5c70 024604 beq ll_pause_enc_rsp ,le_parse_pause_enc_rsp 
+0x5c71 024605 beq ll_version_ind ,le_parse_version_ind 
+0x5c72 024606 beq ll_reject_ind ,le_parse_reject_ind 
+0x5c73 024607 beq ll_ping_req ,le_parse_ping_req 
+0x5c74 024608 beq ll_ping_rsp ,le_parse_ping_rsp 
+0x5c75 024609 arg 2 ,rega 
+0x5c76 024610 arg ll_unknown_rsp ,regb 
+0x5c77 024611 call le_fifo_malloc_tx_ll 
+0x5c78 024612 fetch 1 ,mem_le_rxbuf + 2 
+0x5c79 024613 istore 1 ,contw 
+0x5c7a 024614 rtn 
+:      024617 le_parse_connection_update_req:
+0x5c7b 024618 ifetch 9 ,contr 
+0x5c7c 024619 store 9 ,mem_le_new_param 
+0x5c7d 024620 ifetch 2 ,contr 
+0x5c7e 024621 store 2 ,mem_le_instant 
+0x5c7f 024622 fetch 1 ,mem_le_state 
+0x5c80 024623 set1 lestate_update_param ,pdata 
+0x5c81 024624 store 1 ,mem_le_state 
+0x5c82 024625 rtn 
+:      024627 le_parse_channel_map_req:
+0x5c83 024628 ifetch 5 ,contr 
+0x5c84 024629 store 5 ,mem_le_new_map 
+0x5c85 024630 ifetch 2 ,contr 
+0x5c86 024631 store 2 ,mem_le_instant 
+0x5c87 024632 fetcht 2 ,mem_le_event_count 
+0x5c88 024633 isub temp ,null 
+0x5c89 024634 nbranch le_parse_terminate_ind ,positive 
+0x5c8a 024635 fetch 1 ,mem_le_state 
+0x5c8b 024636 set1 lestate_update_map ,pdata 
+0x5c8c 024637 store 1 ,mem_le_state 
+0x5c8d 024638 rtn 
+:      024641 le_parse_terminate_ind:
+0x5c8e 024642 setarg 20 
+0x5c8f 024643 store 2 ,mem_le_superto 
+0x5c90 024644 store 2 ,mem_le_init_superto 
+0x5c91 024645 rtn 
+:      024647 le_send_terminate_ind_user_terminated:
+0x5c92 024648 arg error_remote_user_terminated_connection ,regc 
+:      024651 le_send_terminate_ind:
+0x5c93 024652 arg 2 ,rega 
+0x5c94 024653 arg ll_terminate_ind ,regb 
+0x5c95 024654 call le_fifo_malloc_tx_ll 
+0x5c96 024655 copy regc ,pdata 
+0x5c97 024656 istore 1 ,contw 
+0x5c98 024657 rtn 
+:      024659 le_parse_feature_req:
+:      024661 le_send_feature_rsp:
+0x5c99 024662 arg 9 ,rega 
+0x5c9a 024663 arg ll_feature_rsp ,regb 
+0x5c9b 024664 call le_fifo_malloc_tx_ll 
+0x5c9c 024665 setarg param_le_features 
+0x5c9d 024666 istore 8 ,contw 
+0x5c9e 024667 rtn 
+:      024670 le_parse_version_ind:
+0x5c9f 024671 rtn master 
+:      024672 le_send_version_ind:
+0x5ca0 024673 arg 6 ,rega 
+0x5ca1 024674 arg ll_version_ind ,regb 
+0x5ca2 024675 call le_fifo_malloc_tx_ll 
+0x5ca3 024676 fetch 5 ,mem_lmp_version 
+0x5ca4 024677 istore 5 ,contw 
+0x5ca5 024678 rtn 
+:      024681 le_parse_ping_req:
+0x5ca6 024682 arg ll_ping_rsp ,regb 
+0x5ca7 024683 branch le_send_ll_one_lenth 
+:      024686 le_send_ll_one_lenth:
+0x5ca8 024687 arg 1 ,rega 
+0x5ca9 024688 branch le_fifo_malloc_tx_ll 
+:      024691 le_parse_enc_req:
+0x5caa 024692 ifetch 8 ,contr 
+0x5cab 024693 store 8 ,mem_le_rand 
+0x5cac 024694 ifetch 2 ,contr 
+0x5cad 024695 store 2 ,mem_le_ediv 
+0x5cae 024696 ifetch 8 ,contr 
+0x5caf 024697 store 8 ,mem_le_skdm 
+0x5cb0 024698 ifetch 4 ,contr 
+0x5cb1 024699 store 4 ,mem_le_ivm 
+0x5cb2 024700 call le_send_enc_rsp 
+0x5cb3 024701 bpatchx patch2f_2 ,mem_patch2f 
+0x5cb4 024702 fetch 1 ,mem_le_pairing_state 
+0x5cb5 024703 beq flag_le_pairing_after_auth ,le_parse_enc_req_after_auth 
+0x5cb6 024704 fetch 1 ,mem_le_configuration 
+0x5cb7 024705 bbit1 bit_ble_pairing_fixed_ltk ,le_parse_enc_req_fixed_ltk 
+0x5cb8 024706 fetch 1 ,mem_nv_data_number 
+0x5cb9 024707 ncall load_device_list_mode_4 ,blank 
+0x5cba 024708 fetch 1 ,mem_ltk_exists 
+0x5cbb 024709 beq 0 ,le_ltk_lost 
+:      024710 le_parse_enc_req_after_auth:
+0x5cbc 024711 jam flag_le_rcv_enc_start ,mem_le_enc_state 
+0x5cbd 024712 call le_send_start_enc_req 
+0x5cbe 024713 branch generate_sk 
+:      024715 le_parse_enc_req_fixed_ltk:
+0x5cbf 024716 jam 1 ,mem_ltk_exists 
+0x5cc0 024717 arg mem_le_fixed_ltk ,contr 
+0x5cc1 024718 arg mem_le_ltk ,contw 
+0x5cc2 024719 call memcpy16 
+0x5cc3 024720 branch le_parse_enc_req_after_auth 
+:      024723 le_ltk_lost:
+0x5cc4 024724 bpatchx patch2f_3 ,mem_patch2f 
+0x5cc5 024725 jam flag_le_enc_null ,mem_le_enc_state 
+0x5cc6 024726 jam flag_le_enc_null ,mem_le_pairing_state 
+0x5cc7 024727 jam bt_evt_le_ltk_lost ,mem_fifo_temp 
+0x5cc8 024728 branch ui_ipc_send_event 
+:      024730 le_send_reject_ind:
+0x5cc9 024731 arg 2 ,rega 
+0x5cca 024732 arg ll_reject_ind ,regb 
+0x5ccb 024733 call le_fifo_malloc_tx_ll 
+0x5ccc 024734 setarg le_err_pin_or_key_missing 
+0x5ccd 024735 istore 1 ,contw 
+0x5cce 024736 rtn 
+:      024738 le_send_enc_rsp:
+0x5ccf 024739 arg mem_le_skds ,contw 
+0x5cd0 024740 force 8 ,loopcnt 
+0x5cd1 024741 call generate_random_loop 
+0x5cd2 024742 arg mem_le_ivs ,contw 
+0x5cd3 024743 force 4 ,loopcnt 
+0x5cd4 024744 call generate_random_loop 
+0x5cd5 024745 arg 13 ,rega 
+0x5cd6 024746 arg ll_enc_rsp ,regb 
+0x5cd7 024747 call le_fifo_malloc_tx_ll 
+0x5cd8 024748 fetch 8 ,mem_le_skds 
+0x5cd9 024749 istore 8 ,contw 
+0x5cda 024750 fetch 4 ,mem_le_ivs 
+0x5cdb 024751 istore 4 ,contw 
+0x5cdc 024752 rtn 
+:      024754 le_send_start_enc_req:
+0x5cdd 024755 arg ll_start_enc_req ,regb 
+0x5cde 024756 branch le_send_ll_one_lenth 
+:      024758 le_send_start_enc_rsp:
+0x5cdf 024759 arg ll_start_enc_rsp ,regb 
+0x5ce0 024760 branch le_send_ll_one_lenth 
+:      024763 le_parse_enc_rsp:
+0x5ce1 024764 ifetch 8 ,contr 
+0x5ce2 024765 store 8 ,mem_le_skds 
+0x5ce3 024766 ifetch 4 ,contr 
+0x5ce4 024767 store 4 ,mem_le_ivs 
+0x5ce5 024768 branch generate_sk 
+:      024770 le_parse_start_enc_req:
+0x5ce6 024771 fetch 1 ,mem_le_state 
+0x5ce7 024772 set1 lestate_encryption ,pdata 
+0x5ce8 024773 store 1 ,mem_le_state 
+0x5ce9 024774 rtn 
+:      024776 le_parse_start_enc_rsp:
+0x5cea 024777 rtn master 
+0x5ceb 024778 jam bt_evt_le_start_enc ,mem_fifo_temp 
+0x5cec 024779 call ui_ipc_send_event 
+0x5ced 024780 jam flag_le_send_start_enc_rsp ,mem_le_enc_state 
+0x5cee 024781 branch le_send_start_enc_rsp 
+:      024783 le_parse_pause_enc_req:
+0x5cef 024784 jam flag_le_enc_pause ,mem_le_enc_state 
+0x5cf0 024785 call le_send_pause_enc_rsp 
+0x5cf1 024786 jam bt_evt_le_pause_enc ,mem_fifo_temp 
+0x5cf2 024787 branch ui_ipc_send_event 
+:      024789 le_send_pause_enc_rsp:
+0x5cf3 024790 arg ll_pause_enc_rsp ,regb 
+0x5cf4 024791 branch le_send_ll_one_lenth 
+:      024794 le_parse_feature_rsp:
+:      024795 le_parse_unknown_rsp:
+:      024796 le_parse_pause_enc_rsp:
+:      024797 le_parse_reject_ind:
+:      024798 le_parse_ping_rsp:
+0x5cf5 024799 rtn 
+:      024806 init_lmp:
+0x5cf6 024807 rtn wake 
+:      024808 init_lmp_work:
+0x5cf7 024809 bpatchx patch2f_4 ,mem_patch2f 
+0x5cf8 024810 setarg 0 
+0x5cf9 024811 store 1 ,mem_lmp_to_send 
+0x5cfa 024812 store 1 ,mem_conn_sm 
+0x5cfb 024813 store 1 ,mem_lmo_opcode1 
+0x5cfc 024814 store 1 ,mem_lmo_opcode2 
+0x5cfd 024815 store 1 ,mem_esco_addr 
+0x5cfe 024816 store 1 ,mem_auth_enable 
+0x5cff 024817 store 1 ,mem_connection_options 
+0x5d00 024818 store 1 ,mem_pairing_auth 
+0x5d01 024819 jam switch_flag_init ,mem_switch_flag 
+0x5d02 024820 jam 0 ,mem_switch_fail_master_count 
+0x5d03 024821 jam null_encryp ,mem_wait_encryption 
+:      024822 init_lmp_reinit:
+0x5d04 024823 jam 0 ,mem_pairing_auth 
+0x5d05 024824 jam 0 ,mem_sp_localsm 
+0x5d06 024825 jam 0 ,mem_lmp_conn_state 
+:      024827 parse_rx_done:
+0x5d07 024828 rtn 
+:      024830 parse_lmp:
+0x5d08 024831 bpatchx patch2f_5 ,mem_patch2f 
+0x5d09 024832 call setlocalsm_master ,master 
+0x5d0a 024833 ncall setlocalsm_slave ,master 
+0x5d0b 024834 call lmo_fifo_check 
+0x5d0c 024835 nrtn blank 
+0x5d0d 024836 fetch 1 ,mem_state_map 
+0x5d0e 024837 rtnbit0 smap_rxlmp 
+0x5d0f 024838 set0 smap_rxlmp ,pdata 
+0x5d10 024839 set0 mark_rxbuf_inuse ,mark 
+0x5d11 024840 store 1 ,mem_state_map 
+0x5d12 024841 fetch 1 ,mem_rxbuf 
+0x5d13 024842 fetcht 1 ,mem_state_map 
+0x5d14 024843 isolate1 smap_lmptidinit ,pdata 
+0x5d15 024844 setflag true ,smap_lmptid ,temp 
+0x5d16 024845 storet 1 ,mem_state_map 
+0x5d17 024846 and_into 0x2 ,temp 
+0x5d18 024847 storet 1 ,mem_lmo_tid2 
+0x5d19 024848 fetcht 1 ,mem_state_map 
+0x5d1a 024849 rshift pdata ,pdata 
+0x5d1b 024850 store 1 ,mem_lmi_opcode2 
+0x5d1c 024851 bpatchx patch2f_6 ,mem_patch2f 
+0x5d1d 024852 fetch 1 ,mem_lmi_opcode2 
+0x5d1e 024853 beq lmp_escape ,parse_lmp_escape 
+0x5d1f 024854 beq lmp_accepted ,parse_lmp_accepted 
+0x5d20 024855 beq lmp_not_accepted ,parse_lmp_not_accepted 
+0x5d21 024856 beq lmp_set_afh ,parse_lmp_set_afh 
+0x5d22 024857 beq lmp_clkoffset_req ,parse_lmp_clkoffset_req 
+0x5d23 024858 beq lmp_encryption_mode_req ,parse_lmp_encryption_mode_req 
+0x5d24 024859 beq lmp_encryption_key_size_req ,parse_lmp_crypt_key 
+0x5d25 024860 beq lmp_auto_rate ,parse_lmp_auto_rate 
+0x5d26 024861 beq lmp_test_control ,parse_lmp_test_control 
+0x5d27 024862 beq lmp_test_activate ,parse_lmp_test_activate 
+0x5d28 024863 beq lmp_setup_complete ,parse_lmp_setup_complete 
+0x5d29 024864 beq lmp_supervision_timeout ,parse_lmp_supervision_timeout 
+0x5d2a 024865 beq lmp_features_req ,parse_lmp_features_req 
+0x5d2b 024866 beq lmp_host_connection_req ,parse_lmp_conn_req 
+0x5d2c 024867 beq lmp_version_req ,parse_lmp_version_req 
+0x5d2d 024868 beq lmp_version_res ,parse_lmp_version_res 
+0x5d2e 024869 beq lmp_detach ,parse_lmp_detach 
+0x5d2f 024870 beq lmp_max_slot ,parse_lmp_max_slot 
+0x5d30 024871 beq lmp_max_slot_req ,parse_lmp_max_slot_req 
+0x5d31 024872 beq lmp_name_req ,parse_lmp_name_req 
+0x5d32 024873 beq lmp_name_res ,parse_lmp_name_res 
+0x5d33 024874 beq lmp_features_res ,parse_lmp_features_res 
+0x5d34 024875 beq lmp_comb_key ,parse_lmp_comb_key 
+0x5d35 024876 beq lmp_au_rand ,parse_lmp_au_rand 
+0x5d36 024877 beq lmp_in_rand ,parse_lmp_in_rand 
+0x5d37 024878 beq lmp_sres ,parse_lmp_sres 
+0x5d38 024879 beq lmp_incr_power_req ,parse_lmp_incr_power 
+0x5d39 024880 beq lmp_decr_power_req ,parse_lmp_decr_power 
+0x5d3a 024881 beq lmp_max_power ,parse_lmp_max_power 
+0x5d3b 024882 beq lmp_min_power ,parse_lmp_min_power 
+0x5d3c 024883 beq lmp_page_mode_req ,parse_lmp_page_mode_req 
+0x5d3d 024884 beq lmp_page_scan_mode_req ,parse_lmp_page_scan_mode_req 
+0x5d3e 024885 beq lmp_preferred_rate ,parse_lmp_preferred_rate 
+0x5d3f 024886 beq lmp_slot_offset ,parse_lmp_slot_offset 
+0x5d40 024887 beq lmp_sniff_req ,parse_lmp_sniff_req 
+0x5d41 024888 beq lmp_start_encryption_req ,parse_lmp_start_encryption_req 
+0x5d42 024889 beq lmp_stop_encryption_req ,parse_lmp_stop_encryption_req 
+0x5d43 024890 beq lmp_switch_req ,parse_lmp_switch_req 
+0x5d44 024891 beq lmp_temp_rand ,parse_lmp_temp_rand 
+0x5d45 024892 beq lmp_temp_key ,parse_lmp_temp_key 
+0x5d46 024893 beq lmp_timing_accuracy_req ,parse_lmp_timing_accuracy_req 
+0x5d47 024894 beq lmp_timing_accuracy_res ,parse_lmp_timing_accuracy_res 
+0x5d48 024895 beq lmp_unit_key ,parse_lmp_unit_key 
+0x5d49 024896 beq lmp_unsniff_req ,parse_lmp_unsniff_req 
+0x5d4a 024897 beq lmp_use_semi_permanent_key ,parse_lmp_use_semi_permanend_key 
+0x5d4b 024898 beq lmp_encapsulated_header ,parse_lmp_encapsulated_header 
+0x5d4c 024899 beq lmp_encapsulated_payload ,parse_lmp_encapsulated_payload 
+0x5d4d 024900 beq lmp_simple_pairing_confirm ,parse_simple_pairing_confirm 
+0x5d4e 024901 beq lmp_simple_pairing_number ,parse_lmp_simple_pairing_number 
+0x5d4f 024902 beq lmp_dhkey_check ,parse_dhkey_check 
+0x5d50 024903 beq lmp_clkoffset_res ,parse_lmp_clkoffset_res 
+0x5d51 024904 beq lmp_enc_key_size_mask_req ,parse_enc_key_size_mask_req 
+:      024907 reject_unknown_packet:
+0x5d52 024908 jam unknown_lmp_pdu ,mem_lmo_reason2 
+:      024909 reject_lmp_packet:
+0x5d53 024910 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5d54 024911 rtn 
+:      024913 parse_lmp_clkoffset_req:
+0x5d55 024914 jam lmp_clkoffset_res ,mem_lmo_opcode2 
+0x5d56 024915 rtn 
+:      024917 parse_enc_key_size_mask_req:
+0x5d57 024918 jam lmp_enc_key_size_mask_res ,mem_lmo_opcode2 
+0x5d58 024919 rtn 
+:      024921 parse_lmp_set_afh:
+0x5d59 024922 fetch 4 ,mem_rxbuf + 1 
+0x5d5a 024923 lshift pdata ,pdata 
+0x5d5b 024924 store 4 ,mem_afh_instant 
+0x5d5c 024925 fetch 1 ,mem_rxbuf + 5 
+0x5d5d 024926 store 1 ,mem_afh_new_mod 
+0x5d5e 024927 fetch 5 ,mem_rxbuf + 6 
+0x5d5f 024928 store 5 ,mem_afh_map_new 
+0x5d60 024929 fetch 5 ,mem_rxbuf + 11 
+0x5d61 024930 istore 5 ,contw 
+0x5d62 024931 fetch 1 ,mem_mode 
+0x5d63 024932 set1 afh_change ,pdata 
+0x5d64 024933 store 1 ,mem_mode 
+0x5d65 024934 rtn 
+:      024935 parse_lmp_escape:
+0x5d66 024936 bpatchx patch2f_7 ,mem_patch2f 
+0x5d67 024937 fetch 1 ,mem_rxbuf + 1 
+0x5d68 024938 set1 7 ,pdata 
+0x5d69 024939 store 1 ,mem_lmi_opcode2 
+0x5d6a 024940 beq lmp_ext_accepted ,parse_lmpext_accepted 
+0x5d6b 024941 beq lmp_not_accepted_ext ,parse_lmpext_not_accepted 
+0x5d6c 024942 beq lmp_sniff_subrating_req ,parse_lmp_sniff_subrating_req 
+0x5d6d 024943 beq lmp_sniff_subrating_res ,parse_lmp_sniff_subrating_res 
+0x5d6e 024944 beq lmp_packet_type_table_req ,parse_lmpext_packet_type_table_req 
+0x5d6f 024945 beq lmp_ext_features_req ,parse_lmpext_features_req 
+0x5d70 024946 beq lmp_ext_features_res ,parse_lmpext_features_res 
+0x5d71 024947 beq lmp_ext_chn_classification_req ,parse_lmpext_chn_classification_req 
+0x5d72 024948 beq lmp_pause_encryption_req ,parse_lmpext_pause_encrypt 
+0x5d73 024949 beq lmp_resume_encryption_req ,parse_lmpext_resume_encrypt 
+0x5d74 024950 beq lmp_io_cap_req ,parse_lmpext_iocap_req 
+0x5d75 024951 beq lmp_io_cap_res ,parse_lmpext_iocap_res 
+0x5d76 024952 rtneq lmp_ext_features_res 
+:      024955 reject_unknown_ext_packet:
+0x5d77 024956 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
+0x5d78 024957 jam unknown_lmp_pdu ,mem_lmo_reason2 
+0x5d79 024959 rtn 
+:      024960 parse_lmpext_chn_classification_req:
+0x5d7a 024961 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
+0x5d7b 024962 jam not_support_chn_classification ,mem_lmo_reason2 
+0x5d7c 024963 rtn 
+:      024965 parse_lmpext_iocap_req:
+0x5d7d 024966 call iocap_lmpext_load 
+0x5d7e 024967 jam lmp_io_cap_res ,mem_lmo_opcode2 
+0x5d7f 024968 rtn 
+:      024970 parse_lmpext_iocap_res:
+0x5d80 024971 call iocap_lmpext_load 
+0x5d81 024972 branch iocap_lmpext_common 
+:      024974 iocap_lmpext_load:
+0x5d82 024975 arg mem_sp_iocap_remote ,contw 
+0x5d83 024976 fetch 3 ,mem_rxbuf + 2 
+0x5d84 024977 istore 3 ,contw 
+0x5d85 024978 rtn 
+:      024980 iocap_lmpext_common:
+0x5d86 024981 branch master_set_mem_master_sp_flag ,true 
+0x5d87 024982 rtn 
+:      024983 parse_lmpext_accepted:
+0x5d88 024984 fetch 1 ,mem_rxbuf + 3 
+0x5d89 024985 set1 7 ,pdata 
+0x5d8a 024986 store 1 ,mem_lmi_accepted_opcode 
+0x5d8b 024987 beq lmp_packet_type_table_req ,parse_lmpext_accepted_ptt 
+0x5d8c 024988 rtn 
+:      024991 parse_lmpext_not_accepted:
+0x5d8d 024992 fetch 1 ,mem_rxbuf + 3 
+0x5d8e 024993 set1 7 ,pdata 
+0x5d8f 024994 store 1 ,mem_lmi_accepted_opcode 
+0x5d90 024995 beq lmp_packet_type_table_req ,parse_lmpext_not_accepted_ptt 
+0x5d91 024996 rtn 
+:      024998 parse_lmpext_accepted_ptt:
+0x5d92 024999 fetch 1 ,mem_ptt 
+0x5d93 025000 fetcht 1 ,mem_state_map 
+0x5d94 025001 nsetflag blank ,smap_edr ,temp 
+0x5d95 025002 storet 1 ,mem_state_map 
+:      025003 parse_lmpext_not_accepted_ptt:
+0x5d96 025004 fetch 1 ,mem_state 
+0x5d97 025005 rtnbit0 state_init_seq 
+0x5d98 025006 set0 state_init_seq ,pdata 
+0x5d99 025007 store 1 ,mem_state 
+0x5d9a 025008 fetch 1 ,mem_auth_enable 
+0x5d9b 025009 nrtn blank 
+0x5d9c 025010 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x5d9d 025011 rtn 
+:      025013 parse_lmpext_pause_encrypt:
+0x5d9e 025014 nbranch parse_lmpext_pause_encrypt_slave ,master 
+0x5d9f 025015 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+0x5da0 025016 branch tid_reply 
+:      025018 parse_lmpext_pause_encrypt_slave:
+0x5da1 025019 jam lmp_pause_encryption_req ,mem_lmo_opcode2 
+0x5da2 025020 rtn 
+:      025022 parse_lmpext_resume_encrypt:
+0x5da3 025025 call tid_reply 
+0x5da4 025026 branch lmp_start_encryption 
+:      025028 parse_lmpext_features_req:
+0x5da5 025029 jam lmp_ext_features_res ,mem_lmo_opcode2 
+0x5da6 025030 rtn 
+:      025032 parse_lmpext_features_res:
+0x5da7 025033 fetcht 1 ,mem_rxbuf + 4 
+0x5da8 025034 and temp ,0x1 ,temp 
+0x5da9 025035 storet 1 ,mem_remote_sppcap 
+0x5daa 025036 fetch 1 ,mem_hci_cmd 
+0x5dab 025037 bne hci_cmd_wait_remote_ext_feature ,parse_lmpext_features_res_not_hci 
+0x5dac 025038 jam 0 ,mem_hci_cmd 
+:      025039 parse_lmpext_features_res_not_hci:
+0x5dad 025040 fetch 1 ,mem_conn_sm 
+0x5dae 025041 rtnne conn_sm_wait_features_ext 
+0x5daf 025042 jam conn_sm_send_conn_req ,mem_conn_sm 
+0x5db0 025043 branch process_conn_sm 
+:      025045 parse_lmp_accepted:
+0x5db1 025046 bpatchx patch30_0 ,mem_patch30 
+0x5db2 025047 fetch 1 ,mem_rxbuf + 1 
+0x5db3 025048 store 1 ,mem_lmi_accepted_opcode 
+0x5db4 025049 beq lmp_host_connection_req ,parse_lmp_accepted_hostconn 
+0x5db5 025050 beq lmp_in_rand ,parse_lmp_accepted_inrand 
+0x5db6 025051 beq lmp_encryption_mode_req ,parse_lmp_accepted_enc_mode 
+0x5db7 025052 beq lmp_encryption_key_size_req ,parse_lmp_accepted_enc_keysize 
+0x5db8 025053 beq lmp_start_encryption_req ,parse_lmp_accepted_start_enc 
+0x5db9 025054 beq lmp_stop_encryption_req ,parse_lmp_accepted_stop_enc 
+0x5dba 025055 beq lmp_unsniff_req ,parse_lmp_accepted_unsniff_req 
+0x5dbb 025056 beq lmp_sniff_req ,parse_lmp_accepted_sniff_req 
+0x5dbc 025057 beq lmp_switch_req ,parse_lmp_accepted_switch 
+0x5dbd 025059 beq lmp_encapsulated_header ,parse_lmp_accepted_encapsulated_header 
+0x5dbe 025060 beq lmp_encapsulated_payload ,parse_lmp_accepted_encapsulated_payload 
+0x5dbf 025061 beq lmp_simple_pairing_number ,parse_lmp_accepted_simple_pairing_number 
+0x5dc0 025062 beq lmp_dhkey_check ,parse_lmp_accepted_dhkey_check 
+0x5dc1 025063 rtn 
+:      025065 parse_lmp_not_accepted:
+0x5dc2 025066 bpatchx patch30_1 ,mem_patch30 
+0x5dc3 025067 fetch 1 ,mem_rxbuf + 1 
+0x5dc4 025068 store 1 ,mem_lmi_accepted_opcode 
+0x5dc5 025069 beq lmp_name_req ,parse_lmp_not_accepted_name_req 
+0x5dc6 025070 beq lmp_host_connection_req ,parse_lmp_not_accepted_hostconn 
+0x5dc7 025071 beq lmp_au_rand ,parse_lmp_not_accepted_aurand 
+0x5dc8 025072 beq lmp_in_rand ,parse_lmp_not_accepted_inrand 
+0x5dc9 025073 beq lmp_switch_req ,parse_lmp_not_accepted_switch 
+0x5dca 025075 beq lmp_simple_pairing_number ,parse_lmp_not_accepted_simple_pairing_number 
+0x5dcb 025076 beq lmp_dhkey_check ,parse_lmp_not_accepted_dhkey_check 
+0x5dcc 025077 beq lmp_unsniff_req ,parse_lmp_not_accepted_unsniff_req 
+0x5dcd 025078 beq lmp_sniff_req ,parse_lmp_not_acdcept_sniff_req 
+0x5dce 025079 rtn 
+:      025081 parse_lmp_accepted_switch:
+0x5dcf 025082 jam bt_evt_switch_accept ,mem_fifo_temp 
+0x5dd0 025083 call ui_ipc_send_event 
+0x5dd1 025084 branch role_switch_prepare0 
+:      025085 parse_lmp_not_accepted_switch:
+0x5dd2 025086 jam bt_evt_switch_not_accept ,mem_fifo_temp 
+0x5dd3 025087 call ui_ipc_send_event 
+0x5dd4 025088 jam switch_flag_not_accept ,mem_switch_flag 
+0x5dd5 025089 setarg timer_switch_waite 
+0x5dd6 025090 arg switch_wait_timer ,queue 
+0x5dd7 025091 branch timer_init 
+:      025094 parse_lmp_accepted_hostconn:
+0x5dd8 025097 fetch 1 ,mem_lmp_conn_state 
+0x5dd9 025098 set1 received_conn_req ,pdata 
+0x5dda 025099 store 1 ,mem_lmp_conn_state 
+0x5ddb 025100 jam bt_evt_bb_connected ,mem_fifo_temp 
+0x5ddc 025101 call ui_ipc_send_event 
+0x5ddd 025102 jam lmp_packet_type_table_req ,mem_lmo_opcode2 
+:      025104 parse_lmp_accepted_hostconn_ctn:
+0x5dde 025106 fetch 1 ,mem_conn_sm 
+0x5ddf 025107 bne conn_sm_wait_conn_accept ,parse_rx_done 
+0x5de0 025110 jam conn_sm_auth_pair ,mem_conn_sm 
+0x5de1 025111 rtn 
+:      025119 parse_lmp_not_accepted_hostconn:
+0x5de2 025120 jam acl_connection_already_exists ,mem_disconn_reason_send 
+0x5de3 025121 jam lmp_detach ,mem_lmo_opcode2 
+0x5de4 025123 jam conn_sm_standby ,mem_conn_sm 
+0x5de5 025125 branch parse_rx_done ,true 
+0x5de6 025126 rtn 
+:      025128 parse_lmp_accepted_inrand:
+0x5de7 025129 fetch 1 ,mem_link_key_exists 
+0x5de8 025130 nrtn blank 
+0x5de9 025131 call clear_linkkey 
+0x5dea 025132 call lmp_generate_key 
+0x5deb 025133 rtn master 
+0x5dec 025134 set1 mark_slave_in_rand_accepted ,mark 
+0x5ded 025135 rtn 
+:      025137 parse_lmp_accepted_enc_mode:
+0x5dee 025138 nrtn master 
+0x5def 025139 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
+0x5df0 025140 fetch 1 ,mem_state_map 
+0x5df1 025141 rtnbit0 smap_encryption 
+0x5df2 025142 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+0x5df3 025143 rtn 
+:      025145 parse_lmp_accepted_enc_keysize:
+0x5df4 025146 branch lmp_start_encryption 
+:      025148 parse_lmp_accepted_start_enc:
+0x5df5 025149 call send_create_conn_start_l2cap_timer_sm 
+0x5df6 025150 fetch 1 ,mem_state 
+0x5df7 025151 rtnbit1 state_conn_comp 
+0x5df8 025152 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x5df9 025153 fetch 1 ,mem_conn_sm 
+0x5dfa 025154 rtnne conn_sm_encrypt_wait 
+0x5dfb 025155 jam conn_sm_encrypt_wait_clear ,mem_conn_sm 
+0x5dfc 025156 rtn 
+:      025158 parse_lmp_accepted_stop_enc:
+0x5dfd 025166 rtn 
+:      025168 parse_lmp_not_accepted_aurand:
+:      025169 parse_lmp_not_accepted_aurand_send_detach:
+0x5dfe 025170 jam lmp_detach ,mem_lmo_opcode2 
+0x5dff 025171 jam other_end_terminated ,mem_disconn_reason_send 
+0x5e00 025172 rtn 
+:      025174 parse_lmp_not_accepted_inrand:
+0x5e01 025175 fetch 1 ,mem_rxbuf + 2 
+0x5e02 025176 beq key_missing ,parse_lmp_inrand_key_missing 
+0x5e03 025177 rtnne pairing_not_allowed 
+0x5e04 025178 jam pairing_not_allowed ,mem_disconn_reason_send 
+0x5e05 025179 jam lmp_detach ,mem_lmo_opcode2 
+0x5e06 025180 rtn 
+:      025181 parse_lmp_inrand_key_missing:
+0x5e07 025182 jam key_missing ,mem_disconn_reason_send 
+0x5e08 025183 jam lmp_detach ,mem_lmo_opcode2 
+0x5e09 025184 rtn 
+:      025186 parse_lmp_not_accepted_name_req:
+0x5e0a 025187 rtn 
+:      025189 parse_lmp_not_accepted_simple_pairing_number:
+0x5e0b 025190 jam sp_stat_null ,mem_sp_state 
+0x5e0c 025191 jam lmp_detach ,mem_lmo_opcode2 
+0x5e0d 025192 branch parse_rx_done 
+:      025194 parse_lmp_not_accepted_dhkey_check:
+0x5e0e 025195 jam sp_stat_null ,mem_sp_state 
+0x5e0f 025196 jam lmp_detach ,mem_lmo_opcode2 
+0x5e10 025197 branch parse_rx_done 
+:      025198 parse_lmp_not_accepted_unsniff_req:
+0x5e11 025199 jam bt_evt_unsniff_not_accept ,mem_fifo_temp 
+0x5e12 025200 branch ui_ipc_send_event 
+:      025202 parse_lmp_accepted_unsniff_req:
+0x5e13 025203 jam bt_evt_unsniff_accept ,mem_fifo_temp 
+0x5e14 025204 call ui_ipc_send_event 
+0x5e15 025205 branch sniff_exit 
+:      025207 parse_lmp_accepted_sniff_req:
+0x5e16 025208 jam bt_evt_sniff_accept ,mem_fifo_temp 
+0x5e17 025209 call ui_ipc_send_event 
+0x5e18 025210 setarg 0 
+0x5e19 025211 store 2 ,mem_dsniff 
+0x5e1a 025212 fetch 2 ,mem_sniff_param_interval 
+0x5e1b 025213 lshift pdata ,pdata 
+0x5e1c 025214 store 2 ,mem_tsniff 
+0x5e1d 025215 fetch 1 ,mem_sniff_param_attempt 
+0x5e1e 025216 store 1 ,mem_sniff_attempt 
+0x5e1f 025217 fetch 1 ,mem_sniff_param_timeout 
+0x5e20 025218 store 1 ,mem_sniff_timeout 
+0x5e21 025219 branch sniff_init 
+:      025221 parse_lmp_not_acdcept_sniff_req:
+0x5e22 025222 jam bt_evt_sniff_not_accept ,mem_fifo_temp 
+0x5e23 025223 branch ui_ipc_send_event 
+:      025225 parse_lmp_crypt_key:
+0x5e24 025226 fetcht 1 ,mem_rxbuf + 1 
+0x5e25 025227 storet 1 ,mem_key_size 
+0x5e26 025228 branch accept_lmp_msg 
+:      025230 parse_lmp_setup_complete:
+0x5e27 025231 fetch 1 ,mem_lmp_conn_state 
+0x5e28 025232 set1 received_setup_complete ,pdata 
+0x5e29 025233 store 1 ,mem_lmp_conn_state 
+0x5e2a 025234 rtnbit1 sent_setup_complete 
+0x5e2b 025235 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x5e2c 025236 branch parse_rx_done 
+:      025238 parse_lmp_max_slot:
+0x5e2d 025241 rtn 
+:      025243 parse_lmp_max_slot_req:
+0x5e2e 025244 fetch 1 ,mem_max_slot 
+0x5e2f 025245 fetcht 1 ,mem_rxbuf + 1 
+0x5e30 025246 isub temp ,null 
+0x5e31 025248 branch accept_lmp_msg ,positive 
+0x5e32 025249 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5e33 025250 jam unspecified_error ,mem_lmo_reason2 
+0x5e34 025251 jam lmp_max_slot_req ,mem_lmi_opcode2 
+0x5e35 025252 rtn 
+:      025254 parse_lmp_detach:
+0x5e36 025255 call prepare_disconnect 
+0x5e37 025256 branch accept_lmp_msg 
+:      025258 accept_lmp_msg:
+0x5e38 025259 jam lmp_accepted ,mem_lmo_opcode2 
+0x5e39 025260 rtn 
+:      025262 parse_lmp_incr_power:
+0x5e3a 025263 jam lmp_max_power ,mem_lmo_opcode2 
+0x5e3b 025264 rtn 
+:      025266 parse_lmp_decr_power:
+0x5e3c 025267 jam lmp_min_power ,mem_lmo_opcode2 
+0x5e3d 025268 rtn 
+:      025270 parse_lmp_version_res:
+0x5e3e 025271 fetch 1 ,mem_conn_sm 
+0x5e3f 025272 rtneq conn_sm_wait_version 
+0x5e40 025274 jam conn_sm_send_features ,mem_conn_sm 
+0x5e41 025276 rtn 
+:      025279 parse_lmp_auto_rate:
+0x5e42 025280 rtn 
+:      025282 parse_lmp_in_rand:
+0x5e43 025283 call lmp_copy_rand 
+0x5e44 025284 jam pincode_state_wait_pincode ,mem_pincode_state 
+0x5e45 025285 jam bt_evt_pincode_req ,mem_fifo_temp 
+0x5e46 025286 call ui_ipc_send_event 
+0x5e47 025288 call tid_check 
+0x5e48 025289 nbranch lmp_accept_inrand ,true 
+0x5e49 025291 nbranch parse_lmp_inrand_res ,master 
+0x5e4a 025292 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5e4b 025293 jam lmp_in_rand ,mem_lmi_opcode2 
+0x5e4c 025294 jam transaction_collision ,mem_lmo_reason2 
+0x5e4d 025295 rtn 
+:      025296 parse_lmp_inrand_res:
+0x5e4e 025297 fetch 1 ,mem_op 
+0x5e4f 025298 set1 op_inrand_req ,pdata 
+0x5e50 025299 store 1 ,mem_op 
+0x5e51 025300 rtn 
+:      025303 pop_tid_follow:
+0x5e52 025304 fetcht 1 ,mem_state_map 
+0x5e53 025305 nsetflag blank ,smap_lmptid ,temp 
+0x5e54 025306 storet 1 ,mem_state_map 
+0x5e55 025307 rtn 
+:      025310 push_tid_follow:
+0x5e56 025311 fetch 1 ,mem_lmo_tid2 
+0x5e57 025312 rshift pdata ,pdata 
+0x5e58 025313 and_into 1 ,pdata 
+0x5e59 025314 rtn 
+:      025316 parse_lmp_au_rand_moudle:
+0x5e5a 025317 fetch 1 ,mem_nv_data_number 
+0x5e5b 025318 rtn blank 
+0x5e5c 025319 fetch 1 ,mem_pairing_auth 
+0x5e5d 025320 call load_device_list ,blank 
+0x5e5e 025321 rtn 
+:      025323 parse_lmp_au_rand:
+0x5e5f 025324 call parse_lmp_au_rand_moudle 
+0x5e60 025325 call push_tid_follow 
+0x5e61 025326 store 1 ,mem_sres_tid 
+0x5e62 025327 call lmp_copy_rand 
+0x5e63 025328 jam lmp_sres ,mem_lmo_opcode2 
+0x5e64 025329 fetch 1 ,mem_link_key_exists 
+0x5e65 025330 nrtn blank 
+0x5e66 025331 fetch 1 ,mem_state 
+0x5e67 025332 rtnbit1 state_combkey 
+0x5e68 025333 jam key_missing ,mem_lmo_reason2 
+0x5e69 025334 branch reject_lmp_packet 
+:      025336 parse_lmp_sres:
+0x5e6a 025337 arg mem_plap ,rega 
+0x5e6b 025338 call function_e1 
+0x5e6c 025339 fetch 4 ,mem_rxbuf + 1 
+0x5e6d 025340 fetcht 4 ,mem_input_store 
+0x5e6e 025341 isub temp ,null 
+0x5e6f 025342 branch authentication_ok ,zero 
+0x5e70 025343 jam lmp_detach ,mem_lmo_opcode2 
+0x5e71 025344 jam authentication_failure_error ,mem_disconn_reason_send 
+0x5e72 025345 rtn 
+:      025346 authentication_ok:
+0x5e73 025347 call authentication_ok_common 
+0x5e74 025348 fetch 1 ,mem_ssp_enable 
+0x5e75 025349 branch pairing_success ,blank 
+0x5e76 025350 rtn 
+:      025353 authentication_ok_common:
+0x5e77 025354 call copy_aco 
+0x5e78 025355 call linkkey_ready 
+0x5e79 025356 fetch 1 ,mem_op 
+0x5e7a 025357 isolate1 op_auth_req ,pdata 
+0x5e7b 025358 set0 op_auth_req ,pdata 
+0x5e7c 025359 store 1 ,mem_op 
+0x5e7d 025360 fetch 1 ,mem_conn_sm 
+0x5e7e 025361 beq conn_sm_auth_wait ,authentication_ok_conn_sm 
+0x5e7f 025362 beq conn_sm_pairing_wait ,authentication_ok_conn_sm 
+0x5e80 025363 rtn 
+:      025364 authentication_ok_conn_sm:
+0x5e81 025365 fetch 1 ,mem_pairing_auth 
+0x5e82 025366 rtnne defalt_pairing_auth 
+0x5e83 025367 fetch 1 ,mem_state_map 
+0x5e84 025368 rtnbit1 smap_encryption 
+0x5e85 025369 branch host_create_conn_encrypt 
+:      025371 parse_lmp_comb_key:
+0x5e86 025372 arg mem_rxbuf + 1 ,rega 
+0x5e87 025373 arg mem_kinit ,regb 
+0x5e88 025374 arg mem_random_number ,contw 
+0x5e89 025375 call xor16 
+0x5e8a 025376 arg mem_plap ,rega 
+0x5e8b 025377 call generate_linkkey 
+0x5e8c 025378 jam lmp_au_rand ,mem_lmo_opcode2 
+0x5e8d 025379 fetch 1 ,mem_state 
+0x5e8e 025380 bbit0 state_combkey ,lmp_generate_key 
+0x5e8f 025381 rtn 
+:      025383 parse_lmp_name_res:
+0x5e90 025384 fetch 2 ,mem_len 
+0x5e91 025385 add pdata ,-3 ,loopcnt 
+0x5e92 025386 fetcht 1 ,mem_rxbuf + 1 
+0x5e93 025387 setarg mem_tmp_buffer 
+0x5e94 025388 iadd temp ,contw 
+0x5e95 025389 arg mem_rxbuf + 3 ,contr 
+0x5e96 025390 call memcpy 
+0x5e97 025391 fetcht 1 ,mem_name_offset 
+0x5e98 025392 fetch 1 ,mem_rxbuf + 2 
+0x5e99 025393 isub temp ,pdata 
+0x5e9a 025394 sub pdata ,14 ,null 
+0x5e9b 025395 branch parse_lmp_name_res_end ,positive 
+0x5e9c 025396 add temp ,14 ,pdata 
+0x5e9d 025397 store 1 ,mem_name_offset 
+0x5e9e 025398 jam lmp_name_req ,mem_lmo_opcode2 
+0x5e9f 025399 rtn 
+:      025400 parse_lmp_name_res_end:
+0x5ea0 025401 fetch 1 ,mem_state_map 
+0x5ea1 025402 set1 smap_name_res ,pdata 
+0x5ea2 025403 store 1 ,mem_state_map 
+0x5ea3 025404 bbit1 smap_name_req ,lmp_disconnect 
+0x5ea4 025405 rtn 
+:      025406 parse_lmp_name_req:
+0x5ea5 025407 fetch 1 ,mem_rxbuf + 1 
+0x5ea6 025408 store 1 ,mem_lmi_opcode2 
+0x5ea7 025409 jam lmp_name_res ,mem_lmo_opcode2 
+0x5ea8 025410 rtn 
+:      025412 parse_lmp_conn_req:
+0x5ea9 025413 branch accept_lmp_msg 
+:      025415 parse_lmp_timing_accuracy_req:
+0x5eaa 025416 jam lmp_timing_accuracy_res ,mem_lmo_opcode2 
+0x5eab 025417 rtn 
+:      025419 parse_lmp_features_req:
+0x5eac 025420 jam lmp_features_res ,mem_lmo_opcode2 
+0x5ead 025421 rtn 
+:      025423 parse_lmp_version_req:
+0x5eae 025424 jam lmp_version_res ,mem_lmo_opcode2 
+0x5eaf 025425 rtn 
+:      025427 parse_lmp_supervision_timeout:
+0x5eb0 025430 rtn 
+:      025434 parse_lmp_sniff_subrating_req:
+0x5eb1 025435 fetch 2 ,mem_tsniff 
+0x5eb2 025436 iforce temp 
+0x5eb3 025437 fetch 1 ,mem_rxbuf + 2 
+0x5eb4 025438 store 1 ,mem_subsniff_rate 
+0x5eb5 025439 imul32 temp ,temp 
+0x5eb6 025440 fetch 2 ,mem_rxbuf + 3 
+0x5eb7 025441 lshift pdata ,pdata 
+0x5eb8 025442 store 2 ,mem_subsniff_tcmax 
+0x5eb9 025443 fetch 4 ,mem_rxbuf + 5 
+0x5eba 025444 lshift pdata ,pdata 
+0x5ebb 025445 store 4 ,mem_subsniff_instant 
+0x5ebc 025447 deposit temp 
+0x5ebd 025448 store 2 ,mem_subsniff_tsniff 
+0x5ebe 025449 rtn 
+:      025450 parse_lmpext_packet_type_table_req:
+0x5ebf 025451 fetcht 1 ,mem_ptt 
+0x5ec0 025452 fetch 1 ,mem_rxbuf + 2 
+0x5ec1 025453 ixor temp ,null 
+0x5ec2 025454 nbranch reject_unknown_ext_packet ,zero 
+0x5ec3 025455 isolate1 0 ,pdata 
+0x5ec4 025456 fetch 1 ,mem_state_map 
+0x5ec5 025457 setflag true ,smap_edr ,pdata 
+0x5ec6 025458 store 1 ,mem_state_map 
+0x5ec7 025459 jam lmp_ext_accepted ,mem_lmo_opcode2 
+0x5ec8 025460 jam lmp_packet_type_table_req ,mem_lmi_opcode2 
+0x5ec9 025461 rtn 
+:      025464 parse_lmp_sniff_subrating_res:
+:      025465 parse_lmp_preferred_rate:
+:      025466 parse_lmp_max_power:
+:      025467 parse_lmp_min_power:
+0x5eca 025468 rtn 
+:      025469 parse_lmp_page_mode_req:
+0x5ecb 025471 branch accept_lmp_msg 
+:      025472 parse_lmp_page_scan_mode_req:
+0x5ecc 025475 branch accept_lmp_msg 
+:      025479 parse_lmp_slot_offset:
+0x5ecd 025480 fetch 2 ,mem_rxbuf + 1 
+0x5ece 025481 store 2 ,mem_slot_offset 
+0x5ecf 025482 rtn 
+:      025484 parse_lmp_sniff_req_check_sniff_para:
+0x5ed0 025485 fetch 2 ,mem_rxbuf + 4 
+0x5ed1 025486 fetcht 1 ,mem_lpm_mult 
+0x5ed2 025487 imul32 temp ,pdata 
+0x5ed3 025488 arg 0x640 ,temp 
+0x5ed4 025489 isub temp ,null 
+0x5ed5 025491 rtn 
+:      025493 parse_lmp_sniff_req:
+0x5ed6 025494 fetch 2 ,mem_rxbuf + 6 
+0x5ed7 025495 branch lmp_reject_sniff ,blank 
+0x5ed8 025496 call parse_lmp_sniff_req_check_sniff_para 
+0x5ed9 025497 branch lmp_reject_sniff ,positive 
+0x5eda 025498 fetch 1 ,mem_device_option 
+0x5edb 025499 sub pdata ,dvc_op_module ,null 
+0x5edc 025500 call module_set_lpm_mult_2 ,zero 
+0x5edd 025501 fetch 1 ,mem_state 
+0x5ede 025502 bbit1 state_insniff ,lmp_reject_sniff 
+0x5edf 025503 fetch 2 ,mem_rxbuf + 2 
+0x5ee0 025504 lshift pdata ,pdata 
+0x5ee1 025505 store 2 ,mem_dsniff 
+0x5ee2 025506 fetch 2 ,mem_rxbuf + 4 
+0x5ee3 025507 lshift pdata ,pdata 
+0x5ee4 025508 store 2 ,mem_tsniff 
+0x5ee5 025509 fetch 2 ,mem_rxbuf + 6 
+0x5ee6 025510 store 1 ,mem_sniff_attempt 
+0x5ee7 025511 iforce temp 
+0x5ee8 025512 fetch 2 ,mem_rxbuf + 8 
+0x5ee9 025513 store 1 ,mem_sniff_timeout 
+0x5eea 025514 isub temp ,null 
+0x5eeb 025515 nbranch set_big_value_to_attempt ,positive 
+0x5eec 025516 store 1 ,mem_sniff_attempt 
+:      025517 set_big_value_to_attempt:
+0x5eed 025519 jam lmp_accepted ,mem_lmo_opcode2 
+0x5eee 025520 jam lmp_sniff_req ,mem_lmi_opcode2 
+0x5eef 025521 rtn 
+:      025523 lmp_reject_sniff:
+0x5ef0 025524 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5ef1 025525 branch reject_lmp_packet 
+:      025527 parse_lmp_start_encryption_req:
+0x5ef2 025528 call accept_lmp_msg 
+0x5ef3 025529 call lmp_copy_rand 
+0x5ef4 025530 call function_e3 
+0x5ef5 025531 branch start_encryption 
+:      025533 parse_lmp_stop_encryption_req:
+0x5ef6 025534 call accept_lmp_msg 
+0x5ef7 025535 branch stop_encryption 
+:      025538 parse_lmp_switch_req:
+0x5ef8 025539 fetch 4 ,mem_rxbuf + 1 
+0x5ef9 025540 lshift pdata ,pdata 
+0x5efa 025542 branch parse_lmp_switch_accept ,master 
+0x5efb 025543 fetcht 1 ,mem_link_key_exists 
+0x5efc 025544 nbranch parse_lmp_switch_req_clear_mark ,blank 
+:      025545 parse_lmp_switch_req_not_accept:
+0x5efd 025546 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5efe 025547 jam lmp_switch_req ,mem_lmi_opcode2 
+0x5eff 025548 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f00 025549 rtn 
+:      025550 parse_lmp_switch_req_clear_mark:
+0x5f01 025551 jam lmp_slot_offset ,mem_lmo_opcode2 
+0x5f02 025552 jam 0 ,mem_conn_sm 
+0x5f03 025553 branch role_switch_prepare 
+:      025555 parse_lmp_switch_accept:
+0x5f04 025556 call role_switch_prepare 
+0x5f05 025557 set1 mark_reconn_recieve_switch ,mark 
+0x5f06 025558 fetch 1 ,mem_connection_options 
+0x5f07 025559 set0 connection_switch ,pdata 
+0x5f08 025560 store 1 ,mem_connection_options 
+0x5f09 025561 branch accept_lmp_msg 
+:      025565 parse_lmp_temp_rand:
+:      025566 parse_lmp_temp_key:
+:      025567 parse_lmp_timing_accuracy_res:
+:      025568 parse_lmp_unit_key:
+:      025569 parse_lmp_use_semi_permanend_key:
+0x5f0a 025570 rtn 
+:      025573 parse_lmp_unsniff_req:
+0x5f0b 025574 jam lmp_accepted ,mem_lmo_opcode2 
+0x5f0c 025575 jam lmp_unsniff_req ,mem_lmi_opcode2 
+0x5f0d 025576 jam bt_evt_remote_unsniff ,mem_fifo_temp 
+0x5f0e 025577 call ui_ipc_send_event 
+0x5f0f 025578 branch sniff_exit 
+:      025580 parse_lmp_encapsulated_header:
+0x5f10 025581 fetch 1 ,mem_rxbuf + 1 
+0x5f11 025582 bne encapsulated_major_type_p192 ,parse_lmp_encapsulated_header_reject 
+0x5f12 025583 fetch 1 ,mem_rxbuf + 2 
+0x5f13 025584 bne encapsulated_minor_type_p192 ,parse_lmp_encapsulated_header_reject 
+0x5f14 025585 fetch 1 ,mem_rxbuf + 3 
+0x5f15 025586 bne encapsulated_len_p192 ,parse_lmp_encapsulated_header_reject 
+0x5f16 025587 call check_localsm 
+0x5f17 025588 branch parse_lmp_encapsulated_header_master ,true 
+0x5f18 025589 jam sp_stat_key_recv ,mem_sp_state 
+:      025590 parse_lmp_encapsulated_header_master:
+0x5f19 025591 jam lmp_accepted ,mem_lmo_opcode2 
+0x5f1a 025592 jam lmp_encapsulated_header ,mem_lmi_opcode2 
+0x5f1b 025593 branch parse_rx_done 
+:      025595 parse_lmp_encapsulated_header_reject:
+0x5f1c 025596 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f1d 025597 branch reject_lmp_packet 
+:      025599 parse_lmp_accepted_encapsulated_header:
+0x5f1e 025602 jam lmp_encapsulated_payload ,mem_lmo_opcode2 
+0x5f1f 025604 rtn 
+:      025605 parse_lmp_accepted_simple_pairing_number:
+0x5f20 025606 fetch 1 ,mem_ssp_mode_flag 
+0x5f21 025607 beq ssp_mode_ssp_pin_flag ,parse_lmp_accepted_simple_pairing_number_ssp_pin 
+0x5f22 025608 beq ssp_mode_passkey_entry_flag ,parse_lmp_accepted_simple_pairing_number_passkey 
+:      025609 parse_lmp_accepted_simple_pairing_number_common:
+0x5f23 025610 call check_localsm 
+0x5f24 025611 rtn true 
+0x5f25 025612 jam sp_stat_confirm_recv ,mem_sp_state 
+0x5f26 025613 rtn 
+:      025615 parse_lmp_accepted_simple_pairing_number_ssp_pin:
+0x5f27 025616 call g_noninit_number_confirm 
+0x5f28 025617 jam bt_evt_bt_gkey_generate ,mem_fifo_temp 
+0x5f29 025618 call ui_ipc_send_event 
+0x5f2a 025619 branch parse_lmp_accepted_simple_pairing_number_common 
+:      025622 parse_lmp_accepted_simple_pairing_number_passkey:
+0x5f2b 025623 call check_localsm 
+0x5f2c 025624 rtn true 
+0x5f2d 025625 fetch 1 ,mem_authentication_passkey_times 
+0x5f2e 025626 beq 19 ,authentication_passkey_end 
+0x5f2f 025627 increase 1 ,pdata 
+0x5f30 025628 store 1 ,mem_authentication_passkey_times 
+:      025631 authentication_passkey:
+0x5f31 025632 jam sp_flag_commit ,mem_sp_flag 
+0x5f32 025633 jam sp_stat_commit_calc ,mem_sp_state 
+0x5f33 025634 fetch 1 ,mem_authentication_passkey_times 
+0x5f34 025635 copy pdata ,queue 
+0x5f35 025636 fetch 6 ,mem_pin 
+0x5f36 025637 qisolate1 pdata 
+0x5f37 025638 setarg 0x80 
+0x5f38 025639 setflag true ,0 ,pdata 
+0x5f39 025640 store 1 ,mem_passkey_1bit 
+0x5f3a 025641 rtn 
+:      025643 authentication_passkey_end:
+0x5f3b 025644 jam sp_stat_confirm_recv ,mem_sp_state 
+0x5f3c 025645 rtn 
+:      025647 parse_lmp_accepted_dhkey_check:
+0x5f3d 025648 call parse_lmp_accepted_dhkey_check_common 
+:      025649 pairing_success:
+0x5f3e 025650 fetch 1 ,mem_flag_pairing_state 
+0x5f3f 025651 rtn blank 
+0x5f40 025652 jam flag_pairing_state_not_pairing ,mem_flag_pairing_state 
+0x5f41 025653 jam bt_evt_bt_pairing_success ,mem_fifo_temp 
+0x5f42 025654 branch ui_ipc_send_event 
+:      025657 parse_lmp_accepted_dhkey_check_common:
+0x5f43 025659 call check_localsm 
+0x5f44 025660 ncall g_noninit ,true 
+0x5f45 025661 call g_init ,true 
+0x5f46 025662 call check_localsm 
+0x5f47 025663 rtn true 
+0x5f48 025664 jam sp_stat_link_key_calc ,mem_sp_state 
+0x5f49 025665 jam sp_flag_commit ,mem_sp_flag 
+0x5f4a 025666 rtn 
+:      025668 parse_simple_pairing_confirm:
+0x5f4b 025669 arg mem_sp_confirm_remote ,contw 
+0x5f4c 025670 arg mem_rxbuf + 1 ,contr 
+0x5f4d 025671 call memcpy16 
+0x5f4e 025672 fetch 1 ,mem_ssp_mode_flag 
+0x5f4f 025673 rtneq ssp_mode_passkey_entry_flag 
+0x5f50 025674 branch master_set_mem_master_sp_flag 
+:      025676 parse_lmp_encapsulated_payload:
+0x5f51 025677 fetch 1 ,mem_master_sp_state 
+0x5f52 025678 beq sp_stat_random_send ,parse_encapsulated_payload_master 
+0x5f53 025679 fetch 1 ,mem_sp_state 
+0x5f54 025680 bne sp_stat_key_recv ,parse_lmp_encapsulated_payload_reject 
+:      025681 parse_encapsulated_payload_master:
+0x5f55 025682 fetch 1 ,mem_sp_remote_key_recv_count 
+0x5f56 025683 sub pdata ,0x20 ,contw 
+0x5f57 025684 nbranch parse_lmp_encapsulated_payload_reject ,positive 
+0x5f58 025685 arg mem_sp_pubkey_remote ,contw 
+0x5f59 025686 iadd contw ,contw 
+0x5f5a 025687 fetch 8 ,mem_rxbuf + 1 
+0x5f5b 025688 istore 8 ,contw 
+0x5f5c 025689 fetch 8 ,mem_rxbuf + 9 
+0x5f5d 025690 istore 8 ,contw 
+0x5f5e 025691 fetch 1 ,mem_sp_remote_key_recv_count 
+0x5f5f 025692 increase 16 ,pdata 
+0x5f60 025693 store 1 ,mem_sp_remote_key_recv_count 
+0x5f61 025694 bne encapsulated_len_p192 ,accept_lmp_msg 
+:      025695 parse_lmp_encapsulated_payload_completed:
+0x5f62 025696 call check_localsm 
+0x5f63 025697 branch accept_lmp_msg ,true 
+0x5f64 025698 jam sp_key_valid ,mem_sp_remote_key_invalid 
+0x5f65 025699 jam sp_stat_key_generate ,mem_sp_state 
+0x5f66 025700 jam sp_flag_commit ,mem_sp_flag 
+0x5f67 025701 branch accept_lmp_msg 
+:      025702 parse_lmp_encapsulated_payload_reject:
+0x5f68 025703 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f69 025704 branch reject_lmp_packet 
+:      025705 parse_lmp_accepted_encapsulated_payload:
+0x5f6a 025706 fetch 1 ,mem_sp_local_key_send_count 
+0x5f6b 025707 beq encapsulated_len_p192 ,parse_lmp_encapsulated_payload_all_accepted 
+0x5f6c 025708 jam lmp_encapsulated_payload ,mem_lmo_opcode2 
+0x5f6d 025709 branch parse_rx_done 
+:      025711 parse_lmp_encapsulated_payload_all_accepted:
+0x5f6e 025712 call check_localsm 
+0x5f6f 025713 branch parse_lmp_encapsulated_payload_all_accepted_master ,true 
+0x5f70 025714 fetch 1 ,mem_ssp_mode_flag 
+0x5f71 025715 beq ssp_mode_passkey_entry_flag ,parse_lmp_encapsulated_payload_all_accepted_get_passkey 
+0x5f72 025716 jam sp_flag_commit ,mem_sp_flag 
+0x5f73 025717 jam sp_stat_commit_calc ,mem_sp_state 
+0x5f74 025718 branch parse_rx_done 
+:      025720 parse_lmp_encapsulated_payload_all_accepted_get_passkey:
+0x5f75 025721 jam bt_evt_bt_get_passkey ,mem_fifo_temp 
+0x5f76 025722 branch ui_ipc_send_event 
+:      025725 parse_lmp_encapsulated_payload_all_accepted_master:
+0x5f77 025727 branch parse_rx_done 
+:      025729 parse_lmp_simple_pairing_number:
+0x5f78 025730 fetch 1 ,mem_master_sp_state 
+0x5f79 025731 beq sp_stat_random_send ,parse_lmp_simple_pairing_number_master 
+0x5f7a 025732 fetch 1 ,mem_sp_state 
+0x5f7b 025733 bne sp_stat_random_recv ,parse_lmp_simple_pairing_number_reject 
+:      025734 parse_lmp_simple_pairing_number_master:
+0x5f7c 025735 arg mem_sp_random_remote ,contw 
+0x5f7d 025736 fetch 8 ,mem_rxbuf + 1 
+0x5f7e 025737 istore 8 ,contw 
+0x5f7f 025738 fetch 8 ,mem_rxbuf + 9 
+0x5f80 025739 istore 8 ,contw 
+0x5f81 025740 call check_localsm 
+0x5f82 025741 branch parse_lmp_simple_pairing_number_master0 ,true 
+0x5f83 025742 jam sp_stat_random_send ,mem_sp_state 
+0x5f84 025743 jam sp_flag_commit ,mem_sp_flag 
+0x5f85 025744 branch accept_lmp_msg 
+:      025745 parse_lmp_simple_pairing_number_master0:
+0x5f86 025746 jam sp_stat_commit_calc ,mem_master_sp_state 
+0x5f87 025747 branch master_set_mem_master_sp_flag 
+:      025750 parse_lmp_simple_pairing_number_reject:
+0x5f88 025751 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f89 025752 branch reject_lmp_packet 
+:      025754 parse_dhkey_check:
+0x5f8a 025755 fetch 1 ,mem_master_sp_state 
+0x5f8b 025756 beq sp_stat_confirm_send ,parse_dhkey_check_master 
+0x5f8c 025757 fetch 1 ,mem_sp_state 
+0x5f8d 025758 bne sp_stat_confirm_recv ,parse_lmp_dhkey_check_reject 
+:      025759 parse_dhkey_check_master:
+0x5f8e 025760 arg mem_sp_check_result ,contw 
+0x5f8f 025761 arg mem_rxbuf + 1 ,contr 
+0x5f90 025762 call memcpy16 
+0x5f91 025763 call check_localsm 
+0x5f92 025764 branch parse_dhkey_check_master0 ,true 
+0x5f93 025765 fetch 1 ,mem_ssp_mode_flag 
+0x5f94 025766 beq ssp_mode_ssp_pin_flag ,number_comparison_mode 
+:      025767 number_comparison_successed:
+0x5f95 025768 jam 0 ,mem_flag_mode_ssp_pin 
+0x5f96 025769 jam sp_stat_confirm_check ,mem_sp_state 
+0x5f97 025770 jam sp_flag_commit ,mem_sp_flag 
+0x5f98 025771 jam lmp_dhkey_check ,mem_lmi_opcode2 
+0x5f99 025772 branch parse_rx_done 
+:      025774 parse_dhkey_check_master0:
+0x5f9a 025775 jam sp_stat_confirm_check ,mem_master_sp_state 
+0x5f9b 025776 jam sp_flag_commit ,mem_master_sp_flag 
+0x5f9c 025777 branch parse_rx_done 
+:      025778 parse_lmp_dhkey_check_reject:
+0x5f9d 025779 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f9e 025780 branch reject_lmp_packet 
+:      025782 number_comparison_mode:
+0x5f9f 025783 fetch 1 ,mem_flag_mode_ssp_pin 
+0x5fa0 025784 bbit1 flag_mode_ssp_pin_reviceve_comparison_bit ,comparison_result 
+0x5fa1 025785 set1 flag_mode_ssp_pin_recieve_dhkey_bit ,pdata 
+0x5fa2 025786 store 1 ,mem_flag_mode_ssp_pin 
+0x5fa3 025787 rtn 
+:      025789 comparison_result:
+0x5fa4 025790 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
+0x5fa5 025791 jam 0 ,mem_flag_mode_ssp_pin 
+0x5fa6 025792 branch parse_lmp_dhkey_check_reject 
+:      025795 parse_lmp_clkoffset_res:
+0x5fa7 025796 branch parse_rx_done 
+:      025798 parse_lmp_encryption_mode_req:
+0x5fa8 025799 fetch 1 ,mem_connection_options 
+0x5fa9 025800 set0 connection_encrypt 
+0x5faa 025801 store 1 ,mem_connection_options 
+0x5fab 025802 call accept_lmp_msg 
+0x5fac 025803 nrtn master 
+0x5fad 025804 fetch 1 ,mem_rxbuf + 1 
+0x5fae 025805 fetcht 1 ,mem_op 
+0x5faf 025806 setflag blank ,op_stop_enc ,temp 
+0x5fb0 025807 nsetflag blank ,op_start_enc ,temp 
+0x5fb1 025808 storet 1 ,mem_op 
+0x5fb2 025809 rtn 
+:      025811 parse_lmp_features_res:
+0x5fb3 025812 fetcht 8 ,mem_rxbuf + 1 
+:      025813 parse_lmp_features_res_not_hci:
+0x5fb4 025814 fetch 1 ,mem_conn_sm 
+0x5fb5 025815 rtnne conn_sm_wait_features_res 
+0x5fb6 025817 fetch 1 ,mem_connection_options 
+0x5fb7 025818 bbit0 connection_feature_ext ,parse_lmp_send_conn 
+0x5fb8 025820 jam conn_sm_send_features_ext ,mem_conn_sm 
+0x5fb9 025821 rtn 
+:      025822 parse_lmp_send_conn:
+0x5fba 025823 jam conn_sm_send_conn_req ,mem_conn_sm 
+0x5fbb 025824 rtn 
+:      025825 parse_lmp_test_activate:
+0x5fbc 025826 fetch 1 ,mem_debug_config 
+0x5fbd 025827 store 1 ,mem_test_mode_old_debug_config 
+0x5fbe 025828 jam lmp_accepted ,mem_lmo_opcode2 
+0x5fbf 025829 jam lmp_test_activate ,mem_lmi_opcode2 
+0x5fc0 025830 rtn 
+:      025831 parse_lmp_test_control:
+0x5fc1 025834 jam lmp_accepted ,mem_lmo_opcode2 
+0x5fc2 025835 jam lmp_test_control ,mem_lmi_opcode2 
+0x5fc3 025836 force 9 ,loopcnt 
+0x5fc4 025837 arg mem_rxbuf + 1 ,contr 
+0x5fc5 025838 arg mem_temp_payload ,contw 
+:      025839 parse_lmp_test_xor:
+0x5fc6 025840 ifetch 1 ,contr 
+0x5fc7 025841 xor_into 0x55 ,pdata 
+0x5fc8 025842 istore 1 ,contw 
+0x5fc9 025843 loop parse_lmp_test_xor 
+0x5fca 025844 fetch 1 ,test_mode_scenario 
+0x5fcb 025845 fetcht 1 ,mem_tester_emulate 
+0x5fcc 025846 set0 tester_no_whitening ,temp 
+0x5fcd 025847 set0 tester_pattern_test ,temp 
+0x5fce 025848 beq exit_test_mode ,parse_lmp_test_control_exit 
+0x5fcf 025849 beq pause_test_mode ,parse_lmp_test_control_pause 
+0x5fd0 025850 beq closed_loop_back_acl ,parse_lmp_test_control_loopback 
+0x5fd1 025851 beq acl_without_whitening ,parse_lmp_test_control_loopback_nowhite 
+0x5fd2 025852 beq closed_loop_back_sco ,parse_lmp_test_control_loopback 
+0x5fd3 025853 beq sco_without_whitening ,parse_lmp_test_control_loopback_nowhite 
+0x5fd4 025854 beq zero_pattern ,parse_lmp_test_control_pattern 
+0x5fd5 025855 beq one_pattern ,parse_lmp_test_control_pattern 
+0x5fd6 025856 beq alt_pattern ,parse_lmp_test_control_pattern 
+0x5fd7 025857 beq alt2_pattern ,parse_lmp_test_control_pattern 
+0x5fd8 025858 beq pseudorandom ,parse_lmp_test_control_pattern 
+0x5fd9 025859 rtn 
+:      025860 parse_lmp_test_control_exit:
+0x5fda 025862 fetch 1 ,mem_tester_emulate 
+0x5fdb 025863 set1 tester_exit ,pdata 
+0x5fdc 025864 set1 tester_change ,pdata 
+0x5fdd 025865 store 1 ,mem_tester_emulate 
+0x5fde 025866 rtn 
+:      025867 parse_lmp_test_control_pattern:
+0x5fdf 025868 set1 tester_pattern_test ,temp 
+0x5fe0 025869 jam 5 ,mem_lch_code 
+0x5fe1 025870 fetch 2 ,test_mode_data_length 
+0x5fe2 025871 iforce loopcnt 
+0x5fe3 025872 store 2 ,mem_len 
+0x5fe4 025873 arg mem_rxbuf ,contw 
+0x5fe5 025874 call pn9 
+:      025875 parse_lmp_test_control_loopback_nowhite:
+0x5fe6 025876 set1 tester_no_whitening ,temp 
+:      025877 parse_lmp_test_control_loopback:
+0x5fe7 025878 set1 tester_change ,temp 
+0x5fe8 025879 force 0 ,pdata 
+0x5fe9 025880 store 1 ,mem_slave_rcvcnt 
+0x5fea 025881 store 2 ,mem_tst_pktcnt_crc 
+0x5feb 025882 store 2 ,mem_tst_pktcnt_dmh 
+0x5fec 025883 store 2 ,mem_tst_pktcnt_hec 
+0x5fed 025884 store 2 ,mem_tst_pktcnt_sync 
+0x5fee 025885 fetch 1 ,test_mode_hopping_mode 
+0x5fef 025886 compare fixed_freq ,pdata ,0xff 
+0x5ff0 025887 setflag true ,tester_fixed_freq ,temp 
+0x5ff1 025888 storet 1 ,mem_tester_emulate 
+0x5ff2 025889 rtn 
+:      025891 parse_lmp_test_control_pause:
+0x5ff3 025892 set0 mark_testmode ,mark 
+0x5ff4 025893 jam 0 ,mem_tester_emulate 
+0x5ff5 025894 fetch 1 ,mem_debug_config 
+0x5ff6 025895 set0 debug_tx_pattern ,pdata 
+0x5ff7 025896 store 1 ,mem_debug_config 
+0x5ff8 025897 rtn 
+:      025903 lmp_copy_rand:
+0x5ff9 025904 arg mem_rxbuf + 1 ,contr 
+0x5ffa 025905 arg mem_random_number ,contw 
+0x5ffb 025906 branch memcpy16 
+:      025908 lmp_generate_key:
+0x5ffc 025909 jam lmp_comb_key ,mem_lmo_opcode2 
+0x5ffd 025910 rtn 
+:      025912 lmp_start_encryption:
+0x5ffe 025913 nrtn master 
+0x5fff 025914 jam lmp_start_encryption_req ,mem_lmo_opcode2 
+0x6000 025915 rtn 
+:      025917 lmp_accept_inrand:
+0x6001 025918 arg mem_lap ,rega 
+0x6002 025919 call generate_kinit 
+0x6003 025920 jam lmp_accepted ,mem_lmo_opcode2 
+0x6004 025921 jam lmp_in_rand ,mem_lmi_opcode2 
+0x6005 025922 rtn 
+:      025924 lmp_disconnect:
+0x6006 025925 jam 10 ,mem_conn_timer 
+0x6007 025926 jam lmp_detach ,mem_lmo_opcode2 
+0x6008 025927 jam local_host ,mem_disconn_reason_send 
+0x6009 025928 rtn 
+:      025934 send_lmp:
+0x600a 025935 bpatchx patch30_2 ,mem_patch30 
+0x600b 025936 disable user 
+0x600c 025937 call lmo_fifo_process 
+0x600d 025938 fetch 1 ,mem_lmp_to_send 
+0x600e 025939 rtn blank 
+0x600f 025944 bbit1 7 ,send_lmp_escape 
+:      025945 send_lmp0:
+0x6010 025946 beq lmp_name_req ,send_lmp_name_req 
+0x6011 025947 beq lmp_name_res ,send_lmp_name_res 
+0x6012 025948 beq lmp_accepted ,send_lmp_accepted 
+0x6013 025949 beq lmp_not_accepted ,send_lmp_not_accepted 
+0x6014 025950 beq lmp_features_req ,send_lmp_features_req 
+0x6015 025951 beq lmp_features_res ,send_lmp_features_res 
+0x6016 025952 beq lmp_timing_accuracy_res ,send_lmp_timing_accuracy_res 
+0x6017 025953 beq lmp_version_req ,send_lmp_version_req 
+0x6018 025954 beq lmp_version_res ,send_lmp_version_res 
+0x6019 025955 beq lmp_setup_complete ,send_lmp_setup_complete 
+0x601a 025956 beq lmp_supervision_timeout ,send_lmp_superto 
+0x601b 025957 beq lmp_host_connection_req ,send_lmp_no_payload 
+0x601c 025958 beq lmp_in_rand ,send_lmp_inrand 
+0x601d 025959 beq lmp_comb_key ,send_lmp_comb_key 
+0x601e 025960 beq lmp_au_rand ,send_lmp_aurand 
+0x601f 025961 beq lmp_sres ,send_lmp_sres 
+0x6020 025962 beq lmp_encryption_mode_req ,send_lmp_encryption_mode_req 
+0x6021 025963 beq lmp_encryption_key_size_req ,send_lmp_encryption_key_size_req 
+0x6022 025964 beq lmp_start_encryption_req ,send_lmp_start_encryption 
+0x6023 025965 beq lmp_detach ,send_lmp_detach 
+0x6024 025966 beq lmp_quality_of_service_req ,send_lmp_quality_of_service_req 
+0x6025 025967 beq lmp_unit_key ,send_lmp_unit_key 
+0x6026 025969 beq lmp_incr_power_req ,send_lmp_inc_power 
+0x6027 025970 beq lmp_clkoffset_res ,send_lmp_clkoffset_res 
+0x6028 025971 beq lmp_max_power ,send_lmp_nopayload_reply 
+0x6029 025972 beq lmp_max_slot ,send_lmp_max_slot 
+0x602a 025973 beq lmp_max_slot_req ,send_lmp_max_slot_req 
+0x602b 025974 beq lmp_min_power ,send_lmp_nopayload_reply 
+0x602c 025975 beq lmp_slot_offset ,send_lmp_slot_offset 
+0x602d 025976 beq lmp_switch_req ,send_lmp_switch_req 
+0x602e 025977 beq lmp_sniff_req ,send_lmp_sniff_req 
+0x602f 025978 beq lmp_stop_encryption_req ,send_lmp_stop_encryption_req 
+0x6030 025979 beq lmp_timing_accuracy_req ,send_lmp_timing_accuracy_req 
+0x6031 025980 beq lmp_unsniff_req ,send_lmp_unsniff_req 
+0x6032 025981 beq lmp_encapsulated_header ,send_lmp_encapsulated_header 
+0x6033 025982 beq lmp_encapsulated_payload ,send_lmp_encapsulated_payload 
+0x6034 025983 beq lmp_simple_pairing_confirm ,send_lmp_simple_pairing_comfirm 
+0x6035 025984 beq lmp_simple_pairing_number ,send_lmp_simple_pairing_number 
+0x6036 025985 beq lmp_dhkey_check ,send_lmp_dhkey_check 
+0x6037 025986 beq lmp_auto_rate ,send_lmp_auto_rate 
+0x6038 025987 beq lmp_enc_key_size_mask_res ,send_lmp_enc_key_size_mask_res 
+0x6039 025989 beq lmp_clkoffset_req ,send_lmp_clkoffset_req 
+0x603a 025990 beq lmp_quality_of_service ,send_lmp_quality_of_service 
+0x603b 025991 beq lmp_test_activate ,send_lmp_test_activate 
+0x603c 025992 beq lmp_test_control ,send_lmp_test_control 
+:      025993 send_lmp_error:
+0x603d 025994 branch assert 
+0x603e 025995 rtn 
+:      025996 send_lmp_escape:
+0x603f 025997 beq lmp_ext_accepted ,send_lmpext_accepted 
+0x6040 025998 beq lmp_ext_features_res ,send_lmpext_features_res 
+0x6041 025999 beq lmp_not_accepted_ext ,send_lmpext_not_accepted 
+0x6042 026000 beq lmp_ext_features_req ,send_lmpext_features_req 
+0x6043 026001 beq lmp_packet_type_table_req ,send_lmpext_packet_type_table_req 
+0x6044 026002 beq lmp_pause_encryption_req ,send_lmpext_pause_encryption_req 
+0x6045 026003 beq lmp_io_cap_req ,send_lmp_io_cap_req 
+0x6046 026004 beq lmp_io_cap_res ,send_lmpext_io_cap_res 
+0x6047 026005 beq lmp_sniff_subrating_req ,send_lmpext_sniff_subrating_req 
+0x6048 026006 beq lmp_sniff_subrating_res ,send_lmpext_sniff_subrating_res 
+0x6049 026007 branch assert 
+:      026013 send_lmp_accepted:
+0x604a 026014 force 2 ,pdata 
+0x604b 026015 call msg_send_lmp 
+0x604c 026016 fetch 1 ,mem_lmi_opcode 
+0x604d 026017 istore 1 ,contw 
+0x604e 026018 call send_lmp_follow 
+0x604f 026019 bpatchx patch30_3 ,mem_patch30 
+0x6050 026020 fetch 1 ,mem_lmi_opcode 
+0x6051 026021 beq lmp_in_rand ,send_lmp_accepted_inrand 
+0x6052 026022 beq lmp_encryption_mode_req ,send_lmp_accepted_enc_mode 
+0x6053 026023 beq lmp_encryption_key_size_req ,send_lmp_accepted_enc_key 
+0x6054 026024 beq lmp_sniff_req ,send_lmp_accept_sniff_req 
+0x6055 026025 beq lmp_host_connection_req ,send_lmp_accepted_connection 
+0x6056 026026 beq lmp_dhkey_check ,send_lmp_accept_dhkey_check 
+0x6057 026027 beq lmp_start_encryption_req ,send_create_conn_start_l2cap_timer_sm 
+0x6058 026028 rtn 
+:      026030 send_create_conn_start_l2cap_timer_sm:
+0x6059 026031 fetch 1 ,mem_conn_sm 
+0x605a 026032 rtn blank 
+0x605b 026033 jam conn_sm_wait_done ,mem_conn_sm 
+0x605c 026034 setarg timer_enpt_waite 
+0x605d 026035 arg enpt_delay_timer ,queue 
+0x605e 026036 branch timer_init 
+:      026038 send_lmp_accept_sniff_req:
+0x605f 026039 branch sniff_init 
+:      026040 send_lmp_not_accepted:
+0x6060 026041 force 3 ,pdata 
+0x6061 026042 call msg_send_lmp 
+0x6062 026043 fetch 1 ,mem_lmi_opcode 
+0x6063 026044 beq lmp_au_rand ,send_not_accept_aurand 
+0x6064 026045 istore 1 ,contw 
+0x6065 026046 fetch 1 ,mem_lmo_reason 
+0x6066 026047 istore 1 ,contw 
+0x6067 026048 branch send_lmp_follow 
+:      026050 send_not_accept_aurand:
+0x6068 026051 istore 1 ,contw 
+0x6069 026052 fetch 1 ,mem_lmo_reason 
+0x606a 026053 istore 1 ,contw 
+0x606b 026054 arg mem_sres_tid ,temp 
+0x606c 026055 branch special_tid_store 
+:      026057 send_lmpext_accepted:
+0x606d 026058 force 4 ,queue 
+0x606e 026059 call send_lmpext 
+0x606f 026060 setarg lmp_escape 
+0x6070 026061 istore 1 ,contw 
+0x6071 026062 fetch 1 ,mem_lmi_opcode 
+0x6072 026063 set0 7 ,pdata 
+0x6073 026064 istore 1 ,contw 
+0x6074 026065 fetch 1 ,mem_lmi_opcode 
+0x6075 026066 branch send_lmp_follow 
+:      026068 send_lmpext_not_accepted:
+0x6076 026069 force 5 ,queue 
+0x6077 026070 call send_lmpext 
+0x6078 026071 setarg lmp_escape 
+0x6079 026072 istore 1 ,contw 
+0x607a 026073 fetch 1 ,mem_lmi_opcode 
+0x607b 026074 set0 7 ,pdata 
+0x607c 026075 istore 1 ,contw 
+0x607d 026076 fetch 1 ,mem_lmo_reason 
+0x607e 026077 istore 1 ,contw 
+0x607f 026078 branch send_lmp_follow 
+:      026081 send_lmp_accepted_inrand:
+0x6080 026082 call clear_linkkey 
+0x6081 026083 call tid_check 
+0x6082 026084 rtn true 
+0x6083 026085 branch lmp_generate_key 
+:      026087 send_lmp_accepted_enc_mode:
+0x6084 026088 fetch 1 ,mem_op 
+0x6085 026089 bbit1 op_start_enc ,send_lmp_accepted_enc_start 
+0x6086 026090 rtnbit0 op_stop_enc 
+0x6087 026091 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+0x6088 026092 set0 op_stop_enc ,pdata 
+0x6089 026093 call tid_reply 
+0x608a 026094 branch send_lmp_accepted_enc_exit 
+:      026095 send_lmp_accepted_enc_start:
+0x608b 026096 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
+0x608c 026097 set0 op_start_enc ,pdata 
+:      026098 send_lmp_accepted_enc_exit:
+0x608d 026099 store 1 ,mem_op 
+0x608e 026100 rtn 
+:      026102 send_lmp_accepted_enc_key:
+0x608f 026103 call check_localsm 
+0x6090 026104 branch lmp_start_encryption ,true 
+0x6091 026105 rtn 
+:      026107 send_lmp_accepted_connection:
+0x6092 026108 jam lmp_packet_type_table_req ,mem_lmo_opcode2 
+0x6093 026110 fetch 1 ,mem_lmp_conn_state 
+0x6094 026111 set1 received_conn_req ,pdata 
+0x6095 026112 store 1 ,mem_lmp_conn_state 
+0x6096 026113 jam bt_evt_bb_connected ,mem_fifo_temp 
+0x6097 026114 branch ui_ipc_send_event 
+:      026117 send_lmp_accept_dhkey_check:
+0x6098 026118 rtn 
+:      026122 send_lmpext_features_res:
+0x6099 026123 force 12 ,queue 
+0x609a 026124 call send_lmpext 
+0x609b 026125 setarg 0x01 
+0x609c 026126 istore 1 ,contw 
+0x609d 026127 fetch 2 ,mem_lmpext_ssp_enable 
+0x609e 026128 istore 2 ,contw 
+0x609f 026129 setarg 0 
+0x60a0 026130 istore 3 ,contw 
+0x60a1 026131 setarg 0x00 
+0x60a2 026132 istore 4 ,contw 
+0x60a3 026133 branch send_lmp_reply 
+:      026134 send_lmpext_io_cap_res:
+0x60a4 026135 force 5 ,queue 
+0x60a5 026136 call send_lmpext 
+0x60a6 026137 fetch 3 ,mem_sp_iocap_local 
+0x60a7 026138 istore 3 ,contw 
+0x60a8 026139 call send_lmp_reply 
+0x60a9 026140 jam flag_pairing_state_pairing ,mem_flag_pairing_state 
+0x60aa 026141 fetch 1 ,mem_sp_iocap_local 
+0x60ab 026142 beq display_yesno ,responder_iocap_display_yesno 
+0x60ac 026143 beq keyboard_only ,responder_iocap_keyboard_only 
+0x60ad 026144 beq no_input_no_output ,responder_iocap_no_input_no_output 
+0x60ae 026145 rtn 
+:      026147 responder_iocap_keyboard_only:
+0x60af 026148 fetch 1 ,mem_sp_iocap_remote 
+0x60b0 026149 beq display_only ,responder_iocap_keyboard_only_initiator_iocap_display_only 
+0x60b1 026150 beq display_yesno ,responder_iocap_keyboard_only_initiator_iocap_display_yesno 
+0x60b2 026151 beq keyboard_only ,responder_iocap_keyboard_only_initiator_iocap_keyboard_only 
+0x60b3 026152 beq no_input_no_output ,responder_iocap_keyboard_only_initiator_iocap_no_input_no_output 
+0x60b4 026153 rtn 
+:      026156 responder_iocap_display_yesno:
+0x60b5 026157 fetch 1 ,mem_sp_iocap_remote 
+0x60b6 026158 beq display_only ,responder_iocap_display_yesno_initiator_iocap_display_only 
+0x60b7 026159 beq display_yesno ,responder_iocap_display_yesno_initiator_iocap_display_yesno 
+0x60b8 026160 beq keyboard_only ,responder_iocap_display_yesno_initiator_iocap_keyboard_only 
+0x60b9 026161 beq no_input_no_output ,responder_iocap_display_yesno_initiator_iocap_no_input_no_output 
+0x60ba 026162 rtn 
+:      026165 responder_iocap_no_input_no_output:
+0x60bb 026166 fetch 1 ,mem_sp_iocap_remote 
+0x60bc 026167 beq display_only ,responder_iocap_no_input_no_output_initiator_iocap_display_only 
+0x60bd 026168 beq display_yesno ,responder_iocap_no_input_no_output_initiator_iocap_display_yesno 
+0x60be 026169 beq keyboard_only ,responder_iocap_no_input_no_output_initiator_iocap_keyboard_only 
+0x60bf 026170 beq no_input_no_output ,responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output 
+0x60c0 026171 rtn 
+:      026173 responder_iocap_keyboard_only_initiator_iocap_no_input_no_output:
+:      026174 responder_iocap_display_yesno_initiator_iocap_no_input_no_output:
+:      026175 responder_iocap_display_yesno_initiator_iocap_display_only:
+:      026176 responder_iocap_no_input_no_output_initiator_iocap_display_only:
+:      026177 responder_iocap_no_input_no_output_initiator_iocap_display_yesno:
+:      026178 responder_iocap_no_input_no_output_initiator_iocap_keyboard_only:
+:      026179 responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output:
+:      026180 set_ssp_mode_justwork:
+0x60c1 026181 jam ssp_mode_just_work_flag ,mem_ssp_mode_flag 
+0x60c2 026182 fetch 1 ,mem_classic_bt_flag 
+0x60c3 026183 bbit1 flag_ssp_reject_justwork ,app_bt_disconnect 
+0x60c4 026184 rtn 
+:      026186 responder_iocap_display_yesno_initiator_iocap_display_yesno:
+:      026187 set_ssp_mode_numeric_comparison:
+0x60c5 026188 jam ssp_mode_ssp_pin_flag ,mem_ssp_mode_flag 
+0x60c6 026189 rtn 
+:      026191 responder_iocap_keyboard_only_initiator_iocap_display_yesno:
+:      026192 responder_iocap_keyboard_only_initiator_iocap_keyboard_only:
+:      026193 responder_iocap_keyboard_only_initiator_iocap_display_only:
+:      026194 responder_iocap_display_yesno_initiator_iocap_keyboard_only:
+:      026195 set_ssp_mode_passkey:
+0x60c7 026196 jam ssp_mode_passkey_entry_flag ,mem_ssp_mode_flag 
+0x60c8 026197 rtn 
+:      026200 classic_bt_set_reject_justwork_flag:
+0x60c9 026201 arg flag_ssp_reject_justwork ,queue 
+0x60ca 026202 branch classic_bluetooth_set_flag 
+:      026204 classic_bt_clr_reject_justwork_flag:
+0x60cb 026205 arg flag_ssp_reject_justwork ,queue 
+0x60cc 026206 branch classic_bluetooth_clr_flag 
+:      026208 classic_bluetooth_set_flag:
+0x60cd 026209 fetch 1 ,mem_classic_bt_flag 
+0x60ce 026210 qset1 pdata 
+0x60cf 026211 store 1 ,mem_classic_bt_flag 
+0x60d0 026212 rtn 
+:      026214 classic_bluetooth_clr_flag:
+0x60d1 026215 fetch 1 ,mem_classic_bt_flag 
+0x60d2 026216 qset0 pdata 
+0x60d3 026217 store 1 ,mem_classic_bt_flag 
+0x60d4 026218 rtn 
+:      026221 send_lmp_io_cap_req:
+0x60d5 026222 force 5 ,queue 
+0x60d6 026223 call send_lmpext 
+0x60d7 026224 fetch 3 ,mem_sp_iocap_local 
+0x60d8 026225 istore 3 ,contw 
+0x60d9 026226 branch send_lmp_request 
+:      026229 send_lmpext_sniff_subrating_req:
+0x60da 026231 rtn 
+:      026232 send_lmpext_sniff_subrating_res:
+0x60db 026233 force 9 ,queue 
+0x60dc 026234 call send_lmpext 
+0x60dd 026235 fetch 1 ,mem_subsniff_rate 
+0x60de 026236 istore 1 ,contw 
+0x60df 026237 fetch 2 ,mem_subsniff_tcmax 
+0x60e0 026238 istore 2 ,contw 
+0x60e1 026239 fetch 4 ,mem_subsniff_instant 
+0x60e2 026240 istore 4 ,contw 
+0x60e3 026241 branch send_lmp_reply 
+:      026243 send_lmp_name_res:
+0x60e4 026244 force 17 ,pdata 
+0x60e5 026245 call msg_send_lmp 
+0x60e6 026246 fetch 1 ,mem_lmi_opcode 
+0x60e7 026247 copy pdata ,temp 
+0x60e8 026248 beq 0x00 ,send_lmp_name_res_offset_ok 
+0x60e9 026249 beq 0x0e ,send_lmp_name_res_offset_ok 
+0x60ea 026250 beq 0x1c ,send_lmp_name_res_offset_ok 
+0x60eb 026251 rtn 
+:      026252 send_lmp_name_res_offset_ok:
+0x60ec 026253 istore 1 ,contw 
+0x60ed 026254 fetch 1 ,mem_local_name_length 
+0x60ee 026255 istore 1 ,contw 
+0x60ef 026256 arg 14 ,loopcnt 
+0x60f0 026257 setarg mem_local_name 
+0x60f1 026258 iadd temp ,contr 
+0x60f2 026259 call memcpy 
+0x60f3 026260 branch send_lmp_reply 
+:      026263 send_lmp_timing_accuracy_res:
+0x60f4 026264 force 3 ,pdata 
+0x60f5 026265 call msg_send_lmp 
+0x60f6 026266 setarg 0x0114 
+0x60f7 026267 istore 2 ,contw 
+0x60f8 026268 branch send_lmp_reply 
+:      026270 send_lmp_clkoffset_res:
+0x60f9 026272 force 3 ,pdata 
+0x60fa 026273 call msg_send_lmp 
+0x60fb 026274 fetch 4 ,mem_clke_bt 
+0x60fc 026275 isub clkn_bt ,pdata 
+0x60fd 026276 branch send_lmp_clkoffset_res_master ,master 
+0x60fe 026277 sub pdata ,0 ,pdata 
+:      026278 send_lmp_clkoffset_res_master:
+0x60ff 026280 rshift2 pdata ,pdata 
+0x6100 026281 set0 15 ,pdata 
+0x6101 026282 istore 2 ,contw 
+0x6102 026283 branch send_lmp_reply 
+:      026285 send_lmp_version_res:
+0x6103 026286 force 6 ,pdata 
+0x6104 026287 call msg_send_lmp 
+0x6105 026288 fetch 5 ,mem_lmp_version 
+0x6106 026289 istore 5 ,contw 
+0x6107 026290 branch send_lmp_reply 
+:      026292 send_lmp_features_res:
+0x6108 026293 force 9 ,pdata 
+0x6109 026294 call msg_send_lmp 
+0x610a 026295 fetch 8 ,mem_features 
+0x610b 026296 istore 8 ,contw 
+0x610c 026297 branch send_lmp_reply 
+:      026304 send_lmpext_features_req:
+0x610d 026305 force 12 ,queue 
+0x610e 026306 call send_lmpext 
+0x610f 026307 setarg 0x01 
+0x6110 026308 istore 1 ,contw 
+0x6111 026309 fetch 2 ,mem_lmpext_ssp_enable 
+0x6112 026310 istore 2 ,contw 
+0x6113 026311 setarg 0 
+0x6114 026312 istore 3 ,contw 
+0x6115 026313 setarg 0x00 
+0x6116 026314 istore 4 ,contw 
+0x6117 026315 branch send_lmp_request 
+:      026317 send_lmpext_packet_type_table_req:
+0x6118 026318 force 3 ,queue 
+0x6119 026319 call send_lmpext 
+0x611a 026320 fetch 1 ,mem_ptt 
+0x611b 026321 istore 1 ,contw 
+0x611c 026322 disable user 
+0x611d 026323 call send_lmp_request 
+0x611e 026324 nrtn user 
+0x611f 026325 nrtn master 
+0x6120 026326 fetch 1 ,mem_afh_cfg 
+0x6121 026327 rtnbit0 afh_cfg_on 
+0x6122 026328 call afh_init 
+0x6123 026329 branch afh_open_all_channels 
+:      026332 ssp_enable:
+0x6124 026333 bpatchx patch30_4 ,mem_patch30 
+0x6125 026334 fetch 1 ,mem_features + 6 
+0x6126 026335 set1 param_featrue_ssp ,pdata 
+0x6127 026336 store 1 ,mem_features + 6 
+0x6128 026337 setarg param_lmpext_ssp_enable 
+0x6129 026338 store 2 ,mem_lmpext_ssp_enable 
+0x612a 026339 rtn 
+:      026341 ssp_disable:
+0x612b 026342 bpatchx patch30_5 ,mem_patch30 
+0x612c 026343 fetch 1 ,mem_features + 6 
+0x612d 026344 set0 param_featrue_ssp ,pdata 
+0x612e 026345 store 1 ,mem_features + 6 
+0x612f 026346 setarg 0 
+0x6130 026347 store 2 ,mem_lmpext_ssp_enable 
+0x6131 026348 rtn 
+:      026350 afh_init:
+0x6132 026351 jam 0x3 ,mem_afh_cfg 
+0x6133 026352 setarg 0 
+0x6134 026353 store 4 ,mem_afh_timer 
+0x6135 026354 arg mem_afh_map_lo ,contw 
+0x6136 026355 call afh_reset_map 
+0x6137 026356 arg mem_afh_map_new ,contw 
+0x6138 026357 call afh_reset_map 
+0x6139 026358 arg mem_afh_classify_channel_map ,contw 
+0x613a 026359 call afh_reset_map 
+0x613b 026360 branch afh_clear_error_counter 
+:      026361 afh_open_all_channels:
+0x613c 026362 arg mem_afh_map_new ,contw 
+0x613d 026363 call afh_reset_map 
+0x613e 026364 call afh_clear_error_counter 
+0x613f 026365 branch afh_set_send_flag 
+:      026368 afh_reset_map:
+0x6140 026369 setarg 0xffffff 
+0x6141 026370 istore 3 ,contw 
+0x6142 026371 istore 3 ,contw 
+0x6143 026372 istore 3 ,contw 
+0x6144 026373 setarg 0x7f 
+0x6145 026374 istore 1 ,contw 
+0x6146 026375 rtn 
+:      026376 afh_clear_error_counter:
+0x6147 026377 setarg 0 
+0x6148 026378 store 2 ,mem_afh_error_total 
+0x6149 026379 rtn 
+:      026380 afh_set_send_flag:
+0x614a 026381 fetch 1 ,mem_afh_cfg 
+0x614b 026382 set1 send_lmp_set_afh ,pdata 
+0x614c 026383 store 1 ,mem_afh_cfg 
+0x614d 026384 rtn 
+:      026387 send_lmpext_pause_encryption_req:
+0x614e 026388 force 2 ,queue 
+0x614f 026389 call send_lmpext 
+0x6150 026390 nbranch send_lmp_reply ,master 
+0x6151 026392 branch send_lmp_request 
+:      026396 send_lmp_detach:
+0x6152 026397 force 2 ,pdata 
+0x6153 026398 call msg_send_lmp 
+0x6154 026399 fetch 1 ,mem_disconn_reason_send 
+0x6155 026400 istore 1 ,contw 
+0x6156 026401 call send_lmp_request 
+:      026402 prepare_disconnect:
+0x6157 026403 fetch 1 ,mem_op 
+0x6158 026404 set1 op_disconn ,pdata 
+0x6159 026405 store 1 ,mem_op 
+0x615a 026406 jam 50 ,mem_conn_timer 
+0x615b 026407 rtn 
+:      026410 send_lmp_no_payload:
+0x615c 026411 force 1 ,pdata 
+0x615d 026412 call msg_send_lmp 
+0x615e 026413 branch send_lmp_request 
+:      026414 send_lmp_nopayload_reply:
+0x615f 026415 force 1 ,pdata 
+0x6160 026416 call msg_send_lmp 
+0x6161 026417 branch send_lmp_reply 
+:      026420 send_lmp_encryption_mode_req:
+0x6162 026421 force 2 ,pdata 
+0x6163 026422 call msg_send_lmp 
+0x6164 026423 fetch 1 ,mem_state_map 
+0x6165 026424 isolate0 smap_encryption ,pdata 
+0x6166 026425 setflag true ,0 ,pdata 
+0x6167 026426 and_into 1 ,pdata 
+0x6168 026427 istore 1 ,contw 
+0x6169 026428 branch send_lmp_request 
+:      026431 send_lmp_superto:
+0x616a 026432 force 3 ,pdata 
+0x616b 026433 call msg_send_lmp 
+0x616c 026434 fetch 2 ,mem_supervision_to 
+0x616d 026435 istore 2 ,contw 
+0x616e 026436 branch send_lmp_request 
+:      026438 send_lmp_name_req:
+0x616f 026439 jam 250 ,mem_conn_timer 
+0x6170 026440 force 2 ,pdata 
+0x6171 026441 call msg_send_lmp 
+0x6172 026442 fetch 1 ,mem_name_offset 
+0x6173 026443 istore 1 ,contw 
+0x6174 026444 branch send_lmp_request 
+:      026446 send_lmp_test_control:
+0x6175 026447 force 10 ,pdata 
+0x6176 026448 call msg_send_lmp 
+0x6177 026449 arg mem_temp_payload ,contr 
+0x6178 026450 force 9 ,loopcnt 
+:      026451 send_lmp_test_control_loop:
+0x6179 026452 ifetch 1 ,contr 
+0x617a 026453 xor_into 0x55 ,pdata 
+0x617b 026454 istore 1 ,contw 
+0x617c 026455 loop send_lmp_test_control_loop 
+0x617d 026456 branch send_lmp_request 
+:      026458 send_lmp_quality_of_service_req:
+0x617e 026459 branch send_lmp_request 
+:      026460 send_lmp_unit_key:
+0x617f 026461 branch send_lmp_request 
+:      026463 send_lmp_slot_offset:
+0x6180 026464 rtn master 
+0x6181 026465 call calc_slot_offset 
+0x6182 026466 force 9 ,pdata 
+0x6183 026467 call msg_send_lmp 
+0x6184 026468 fetch 2 ,mem_slot_offset 
+0x6185 026469 istore 2 ,contw 
+0x6186 026470 fetch 3 ,mem_lap 
+0x6187 026471 istore 3 ,contw 
+0x6188 026472 fetch 1 ,mem_uap 
+0x6189 026473 istore 1 ,contw 
+0x618a 026474 fetch 2 ,mem_nap 
+0x618b 026475 istore 2 ,contw 
+0x618c 026476 bmark0 mark_switch_initiated ,send_lmp_slot_offset_reply 
+0x618d 026477 set0 mark_switch_initiated ,mark 
+0x618e 026478 call send_lmp_request 
+0x618f 026479 jam lmp_switch_req ,mem_lmo_opcode2 
+0x6190 026480 rtn 
+:      026481 send_lmp_slot_offset_reply:
+0x6191 026482 call send_lmp_reply 
+0x6192 026483 jam lmp_accepted ,mem_lmo_opcode2 
+0x6193 026484 jam lmp_switch_req ,mem_lmi_opcode2 
+0x6194 026485 rtn 
+:      026487 send_lmp_switch_req:
+0x6195 026488 arg 0x200 ,temp 
+0x6196 026489 branch switch_on_native ,master 
+0x6197 026490 deposit clke_bt 
+0x6198 026491 branch switch_slack 
+:      026492 switch_on_native:
+0x6199 026493 deposit clkn_bt 
+:      026494 switch_slack:
+0x619a 026495 deposit bt_clk 
+0x619b 026496 iadd temp ,pdata 
+0x619c 026497 and_into 0x1fc ,pdata 
+0x619d 026498 store 4 ,mem_sniff_anchor 
+0x619e 026499 force 5 ,pdata 
+0x619f 026500 call msg_send_lmp 
+0x61a0 026501 fetch 4 ,mem_sniff_anchor 
+0x61a1 026502 rshift pdata ,pdata 
+0x61a2 026503 istore 4 ,contw 
+0x61a3 026504 branch send_lmp_request 
+:      026506 send_lmp_sniff_req:
+0x61a4 026507 force 10 ,pdata 
+0x61a5 026508 call msg_send_lmp 
+0x61a6 026509 arg mem_sniff_payload ,contr 
+0x61a7 026510 ifetch 9 ,contr 
+0x61a8 026511 istore 9 ,contw 
+0x61a9 026512 branch send_lmp_request 
+:      026515 send_lmp_timing_accuracy_req:
+0x61aa 026517 force 3 ,pdata 
+0x61ab 026518 call msg_send_lmp 
+0x61ac 026519 setarg 0x0114 
+0x61ad 026520 istore 2 ,contw 
+0x61ae 026521 branch send_lmp_request 
+:      026523 send_lmp_unsniff_req:
+0x61af 026525 force 1 ,pdata 
+0x61b0 026526 call msg_send_lmp 
+0x61b1 026535 branch send_lmp_request 
+:      026538 send_lmp_max_slot:
+0x61b2 026539 force 2 ,pdata 
+0x61b3 026540 call msg_send_lmp 
+0x61b4 026541 fetch 1 ,mem_max_slot 
+0x61b5 026542 istore 1 ,contw 
+0x61b6 026543 branch send_lmp_request 
+:      026546 send_lmp_max_slot_req:
+0x61b7 026547 force 2 ,pdata 
+0x61b8 026548 call msg_send_lmp 
+0x61b9 026549 setarg 0x05 
+0x61ba 026550 istore 1 ,contw 
+0x61bb 026551 branch send_lmp_request 
+:      026554 send_lmp_inc_power:
+0x61bc 026555 force 2 ,pdata 
+0x61bd 026556 call msg_send_lmp 
+0x61be 026557 setarg 0x00 
+0x61bf 026558 istore 1 ,contw 
+0x61c0 026559 branch send_lmp_request 
+:      026562 send_lmp_setup_complete_by_module:
+0x61c1 026563 jam lmp_max_slot_req ,mem_lmo_opcode2 
+0x61c2 026564 rtn 
+:      026565 send_lmp_setup_complete:
+0x61c3 026566 fetch 1 ,mem_device_option 
+0x61c4 026567 sub pdata ,dvc_op_module ,null 
+0x61c5 026568 call send_lmp_setup_complete_by_module ,zero 
+0x61c6 026569 fetch 1 ,mem_state 
+0x61c7 026570 set1 state_conn_comp ,pdata 
+0x61c8 026571 store 1 ,mem_state 
+0x61c9 026572 copy clkn_bt ,pdata 
+0x61ca 026573 store 4 ,mem_aurand_send_delay_time 
+0x61cb 026574 fetch 1 ,mem_lmp_conn_state 
+0x61cc 026575 bbit1 sent_setup_complete ,send_lmp_setup_complete_has_sent 
+0x61cd 026576 set1 sent_setup_complete ,pdata 
+0x61ce 026577 store 1 ,mem_lmp_conn_state 
+0x61cf 026578 jam bt_evt_setup_complete ,mem_fifo_temp 
+0x61d0 026579 call ui_ipc_send_event 
+0x61d1 026580 force 1 ,pdata 
+0x61d2 026581 call msg_send_lmp 
+0x61d3 026582 branch send_lmp_request 
+:      026583 send_lmp_setup_complete_has_sent:
+0x61d4 026584 jam 0 ,mem_lmp_to_send 
+0x61d5 026585 rtn 
+:      026587 send_lmp_version_req:
+0x61d6 026588 force 6 ,pdata 
+0x61d7 026589 call msg_send_lmp 
+0x61d8 026590 fetch 5 ,mem_lmp_version 
+0x61d9 026591 istore 5 ,contw 
+0x61da 026592 branch send_lmp_request 
+:      026594 send_lmp_features_req:
+0x61db 026595 force 9 ,pdata 
+0x61dc 026596 call msg_send_lmp 
+0x61dd 026597 fetch 8 ,mem_features 
+0x61de 026598 istore 8 ,contw 
+0x61df 026599 branch send_lmp_request 
+:      026601 sp_master_send_io_cap_get:
+0x61e0 026602 jam sp_flag_commit ,mem_master_sp_flag 
+0x61e1 026603 fetch 1 ,mem_sp_local_key_invalid 
+0x61e2 026604 rtnne sp_key_valid 
+0x61e3 026605 jam sp_master_stat_start_done ,mem_master_sp_state 
+0x61e4 026606 rtn 
+:      026608 sp_master_send_io_cap_send:
+0x61e5 026609 call tid_initiate 
+0x61e6 026610 jam lmp_io_cap_req ,mem_lmo_opcode2 
+0x61e7 026611 jam sp_stat_key_send ,mem_master_sp_state 
+0x61e8 026612 rtn 
+:      026615 sp_master_send_lmp_encapsulated_header:
+0x61e9 026616 call tid_initiate 
+0x61ea 026617 jam lmp_encapsulated_header ,mem_lmo_opcode2 
+0x61eb 026618 jam sp_stat_random_send ,mem_master_sp_state 
+0x61ec 026619 rtn 
+:      026621 sp_master_commitment_compare:
+0x61ed 026622 arg mem_sp_calc_result_high ,rega 
+0x61ee 026623 arg mem_sp_confirm_remote ,regb 
+0x61ef 026624 arg 16 ,loopcnt 
+0x61f0 026625 call string_compare 
+0x61f1 026626 branch sp_master_commitment_compare_success ,zero 
+0x61f2 026627 jam sp_stat_null ,mem_master_sp_state 
+0x61f3 026628 call master_clear_mem_master_sp_flag 
+0x61f4 026629 jam pdu_not_allowed ,mem_lmo_reason2 
+0x61f5 026630 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
+0x61f6 026631 branch reject_lmp_packet 
+:      026632 sp_master_commitment_compare_success:
+0x61f7 026633 jam sp_stat_confirm_calc ,mem_master_sp_state 
+0x61f8 026634 call master_set_mem_master_sp_flag 
+0x61f9 026635 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
+0x61fa 026636 branch accept_lmp_msg 
+:      026640 sp_master_send_lmp_simple_pairing_number:
+0x61fb 026641 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
+0x61fc 026642 rtn 
+:      026646 sp_send_lmp_encapsulated_header:
+0x61fd 026649 jam lmp_encapsulated_header ,mem_lmo_opcode2 
+0x61fe 026651 rtn 
+:      026657 send_lmp_encapsulated_header:
+0x61ff 026658 jam 0 ,mem_sp_local_key_send_count 
+0x6200 026659 force 4 ,pdata 
+0x6201 026660 call msg_send_lmp 
+0x6202 026661 force encapsulated_major_type_p192 ,pdata 
+0x6203 026662 istore 1 ,contw 
+0x6204 026663 force encapsulated_minor_type_p192 ,pdata 
+0x6205 026664 istore 1 ,contw 
+0x6206 026665 force encapsulated_len_p192 ,pdata 
+0x6207 026666 istore 1 ,contw 
+0x6208 026667 call check_localsm 
+0x6209 026668 branch send_lmp_request ,true 
+0x620a 026669 branch send_lmp_reply 
+:      026671 send_lmp_encapsulated_payload:
+0x620b 026673 force 17 ,pdata 
+0x620c 026674 call msg_send_lmp 
+0x620d 026675 fetch 1 ,mem_sp_local_key_send_count 
+0x620e 026676 arg mem_sp_pubkey_local ,contr 
+0x620f 026677 iadd contr ,contr 
+0x6210 026678 ifetch 8 ,contr 
+0x6211 026679 istore 8 ,contw 
+0x6212 026680 ifetch 8 ,contr 
+0x6213 026681 istore 8 ,contw 
+0x6214 026682 fetch 1 ,mem_sp_local_key_send_count 
+0x6215 026683 increase 16 ,pdata 
+0x6216 026684 store 1 ,mem_sp_local_key_send_count 
+0x6217 026685 call check_localsm 
+0x6218 026686 branch send_lmp_request ,true 
+0x6219 026687 branch send_lmp_reply 
+:      026690 sp_send_lmp_simple_pairing_comfirm:
+0x621a 026691 jam sp_stat_random_recv ,mem_sp_state 
+0x621b 026692 jam lmp_simple_pairing_confirm ,mem_lmo_opcode2 
+0x621c 026693 rtn 
+:      026694 send_lmp_simple_pairing_comfirm:
+0x621d 026697 force 17 ,pdata 
+0x621e 026698 call msg_send_lmp 
+0x621f 026699 arg mem_sp_calc_result_high ,contr 
+0x6220 026700 ifetch 8 ,contr 
+0x6221 026701 istore 8 ,contw 
+0x6222 026702 ifetch 8 ,contr 
+0x6223 026703 istore 8 ,contw 
+0x6224 026704 branch send_lmp_reply 
+:      026706 sp_send_lmp_simple_pairing_number:
+0x6225 026707 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
+0x6226 026708 rtn 
+:      026710 send_lmp_simple_pairing_number:
+0x6227 026712 call check_localsm 
+0x6228 026713 call sp_local_random_key_generator ,true 
+0x6229 026714 force 17 ,pdata 
+0x622a 026715 call msg_send_lmp 
+0x622b 026716 arg mem_sp_random_local ,contr 
+0x622c 026717 ifetch 8 ,contr 
+0x622d 026718 istore 8 ,contw 
+0x622e 026719 ifetch 8 ,contr 
+0x622f 026720 istore 8 ,contw 
+0x6230 026721 call check_localsm 
+0x6231 026722 nbranch send_lmp_reply ,true 
+0x6232 026723 branch send_lmp_request ,true 
+:      026725 master_sp_sm_end:
+0x6233 026727 jam sp_stat_done ,mem_master_sp_state 
+:      026728 sp_aurand_send:
+0x6234 026729 call tid_initiate 
+0x6235 026730 jam lmp_au_rand ,mem_lmo_opcode2 
+0x6236 026731 call check_localsm_master 
+0x6237 026732 branch sp_master_key_prarm_push ,true 
+0x6238 026733 branch sp_link_key_prarm_push 
+:      026734 master_sp_send_lmp_dhkey_check:
+0x6239 026735 call tid_reply 
+:      026736 sp_send_lmp_dhkey_check:
+0x623a 026737 jam lmp_dhkey_check ,mem_lmo_opcode2 
+0x623b 026738 rtn 
+:      026739 send_lmp_dhkey_check:
+0x623c 026741 force 17 ,pdata 
+0x623d 026742 call msg_send_lmp 
+0x623e 026743 arg mem_sp_calc_result_high ,contr 
+0x623f 026744 ifetch 8 ,contr 
+0x6240 026745 istore 8 ,contw 
+0x6241 026746 ifetch 8 ,contr 
+0x6242 026747 istore 8 ,contw 
+0x6243 026748 call check_localsm 
+0x6244 026749 nbranch send_lmp_reply ,true 
+0x6245 026750 branch send_lmp_request ,true 
+:      026752 send_lmp_enc_key_size_mask_res:
+0x6246 026753 force 3 ,pdata 
+0x6247 026754 call msg_send_lmp 
+0x6248 026755 setarg 0xfffe 
+0x6249 026756 istore 2 ,contw 
+0x624a 026757 branch send_lmp_reply 
+:      026759 send_lmp_auto_rate:
+0x624b 026760 branch send_lmp_request 
+:      026761 send_lmp_clkoffset_req:
+0x624c 026762 branch send_lmp_request 
+:      026763 send_lmp_quality_of_service:
+0x624d 026764 branch send_lmp_request 
+:      026765 send_lmp_test_activate:
+0x624e 026766 branch send_lmp_request 
+:      026771 send_lmp_comb_key:
+0x624f 026772 call generate_random_number 
+0x6250 026773 arg mem_lap ,rega 
+0x6251 026774 call generate_linkkey 
+0x6252 026775 force 17 ,pdata 
+0x6253 026776 call msg_send_lmp 
+0x6254 026777 arg mem_kinit ,rega 
+0x6255 026778 arg mem_random_number ,regb 
+0x6256 026779 call xor16 
+0x6257 026780 nbranch send_lmp_follow ,master 
+0x6258 026781 branch send_lmp_tid 
+:      026783 send_lmp_inrand:
+0x6259 026784 call generate_random_number 
+0x625a 026785 arg mem_plap ,rega 
+0x625b 026786 call generate_kinit 
+:      026787 send_lmp_rand:
+0x625c 026788 force 17 ,pdata 
+0x625d 026789 call msg_send_lmp 
+0x625e 026790 arg mem_random_number ,contr 
+0x625f 026791 call memcpy16 
+0x6260 026792 fetch 1 ,mem_conn_sm 
+0x6261 026793 beq conn_sm_auth_wait ,send_lmp_request 
+0x6262 026794 beq conn_sm_pairing_wait ,send_lmp_request 
+0x6263 026795 branch send_lmp_tid 
+:      026797 send_lmp_aurand:
+0x6264 026798 fetch 1 ,mem_pairing_auth 
+0x6265 026799 branch send_lmp_aurand_notpairing ,blank 
+0x6266 026800 call check_localsm 
+0x6267 026801 call tid_initiate ,true 
+0x6268 026802 ncall tid_reply ,true 
+0x6269 026803 branch send_lmp_aurand_common 
+:      026804 send_lmp_aurand_notpairing:
+0x626a 026805 call tid_initiate 
+:      026806 send_lmp_aurand_common:
+0x626b 026807 call generate_random_number 
+0x626c 026808 branch send_lmp_rand 
+:      026810 send_lmp_sres:
+0x626d 026811 arg mem_lap ,rega 
+0x626e 026812 call function_e1 
+0x626f 026813 force 5 ,pdata 
+0x6270 026814 call msg_send_lmp 
+0x6271 026815 fetch 4 ,mem_input_store 
+0x6272 026816 istore 4 ,contw 
+0x6273 026817 arg mem_sres_tid ,temp 
+0x6274 026818 call special_tid_store 
+0x6275 026819 call copy_aco 
+0x6276 026820 call check_localsm 
+0x6277 026821 branch send_lmp_sres_master ,true 
+0x6278 026822 jam done_encryp ,mem_wait_encryption 
+0x6279 026823 fetch 1 ,mem_pairing_auth 
+0x627a 026824 rtn blank 
+0x627b 026825 jam lmp_au_rand ,mem_lmo_opcode2 
+:      026826 send_lmp_sres_master:
+0x627c 026827 fetch 1 ,mem_link_key_exists 
+0x627d 026828 rtn blank 
+:      026829 send_lmp_sres_startenc:
+0x627e 026830 call check_localsm 
+0x627f 026831 nbranch send_lmp_sres_startenc_slave ,true 
+0x6280 026832 fetch 1 ,mem_auth_enable 
+0x6281 026833 rtn blank 
+0x6282 026834 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+0x6283 026835 rtn 
+:      026836 send_lmp_sres_startenc_slave:
+0x6284 026837 rtnmark0 mark_slave_in_rand_accepted 
+0x6285 026838 set0 mark_slave_in_rand_accepted ,mark 
+0x6286 026839 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+0x6287 026840 rtn 
+:      026844 send_lmp_start_encryption:
+0x6288 026845 call generate_random_number 
+0x6289 026846 call function_e3 
+0x628a 026847 force 17 ,pdata 
+0x628b 026848 call msg_send_lmp 
+0x628c 026849 arg mem_random_number ,contr 
+0x628d 026850 call memcpy16 
+0x628e 026851 branch send_lmp_tid 
+:      026853 send_lmp_stop_encryption_req:
+0x628f 026854 force 1 ,pdata 
+0x6290 026855 call msg_send_lmp 
+0x6291 026856 branch send_lmp_tid 
+:      026858 send_lmp_encryption_key_size_req:
+0x6292 026859 force 2 ,pdata 
+0x6293 026860 call msg_send_lmp 
+0x6294 026861 force 16 ,pdata 
+0x6295 026862 istore 1 ,contw 
+0x6296 026863 store 1 ,mem_key_size 
+0x6297 026864 branch send_lmp_tid 
+:      026866 msg_send_lmp:
+0x6298 026868 lshift3 pdata ,pdata 
+0x6299 026869 or_into 0x07 ,pdata 
+0x629a 026870 store 1 ,mem_lmo_header_length 
+0x629b 026871 arg 17 ,loopcnt 
+0x629c 026872 arg mem_lmo_payload ,contw 
+0x629d 026873 call clear_mem 
+0x629e 026874 arg mem_lmo_payload ,contw 
+0x629f 026875 rtn 
+:      026877 send_lmpext:
+0x62a0 026878 and pdata ,0x7f ,rega 
+0x62a1 026879 jam lmp_escape ,mem_lmp_to_send 
+0x62a2 026880 deposit queue 
+0x62a3 026881 call msg_send_lmp 
+0x62a4 026882 deposit rega 
+0x62a5 026883 istore 1 ,contw 
+0x62a6 026884 rtn 
+:      026886 send_lmp_follow:
+0x62a7 026887 fetch 1 ,mem_lmp_to_send 
+0x62a8 026888 lshift pdata ,pdata 
+0x62a9 026889 fetcht 1 ,mem_state_map 
+0x62aa 026890 isolate1 smap_lmptid ,temp 
+0x62ab 026891 setflag true ,0 ,pdata 
+0x62ac 026892 branch send_lmp_exit 
+:      026895 send_lmp_tid:
+0x62ad 026896 fetcht 1 ,mem_state_map 
+0x62ae 026897 and_into 1 ,temp 
+0x62af 026898 branch send_lmp_end 
+:      026900 send_lmp_reply:
+0x62b0 026901 force 0 ,temp 
+0x62b1 026902 branch send_lmp_end 
+:      026904 send_lmp_request:
+0x62b2 026905 force 1 ,temp 
+:      026906 send_lmp_end:
+0x62b3 026907 fetch 1 ,mem_lmp_to_send 
+0x62b4 026908 lshift pdata ,pdata 
+0x62b5 026909 setflag master ,0 ,pdata 
+0x62b6 026910 ixor temp ,pdata 
+:      026911 send_lmp_exit:
+0x62b7 026912 store 1 ,mem_lmo_header_opcode 
+0x62b8 026913 jam 0 ,mem_lmp_to_send 
+0x62b9 026914 call lmo_fifo_process_lmo0empty 
+0x62ba 026915 enable user 
+0x62bb 026916 rtn 
+:      026919 lmo_fifo_check:
+0x62bc 026920 fetch 1 ,mem_lmo_opcode2 
+0x62bd 026921 rtn blank 
+0x62be 026922 call lmo_fifo_process 
+0x62bf 026923 fetch 1 ,mem_lmo_opcode2 
+0x62c0 026924 rtn 
+:      026926 lmo_fifo_process:
+0x62c1 026927 bpatchx patch30_6 ,mem_patch30 
+0x62c2 026928 fetch 1 ,mem_lmp_to_send 
+0x62c3 026929 branch lmo_fifo_process_lmo0empty ,blank 
+0x62c4 026930 fetch 1 ,mem_lmo_opcode1 
+0x62c5 026931 nrtn blank 
+0x62c6 026932 branch lmo_fifo_process_lmo2to1 
+:      026933 lmo_fifo_process_lmo0empty:
+0x62c7 026934 fetch 1 ,mem_lmo_opcode1 
+0x62c8 026935 branch lmo_fifo_process_lmo1_empty ,blank 
+0x62c9 026936 fetch 3 ,mem_lmo_opcode1 
+0x62ca 026937 store 3 ,mem_lmp_to_send 
+0x62cb 026938 fetcht 1 ,mem_lmo_tid1 
+0x62cc 026939 fetch 1 ,mem_state_map 
+0x62cd 026940 set0 smap_lmptid ,pdata 
+0x62ce 026941 ior temp ,pdata 
+0x62cf 026942 store 1 ,mem_state_map 
+0x62d0 026943 jam 0 ,mem_lmo_opcode1 
+:      026944 lmo_fifo_process_lmo2to1:
+0x62d1 026945 fetch 1 ,mem_lmo_opcode2 
+0x62d2 026946 rtn blank 
+0x62d3 026947 fetch 4 ,mem_lmo_opcode2 
+0x62d4 026948 store 4 ,mem_lmo_opcode1 
+0x62d5 026949 jam 0 ,mem_lmo_opcode2 
+0x62d6 026950 rtn 
+:      026951 lmo_fifo_process_lmo1_empty:
+0x62d7 026952 fetch 1 ,mem_lmo_opcode2 
+0x62d8 026953 rtn blank 
+0x62d9 026954 fetch 3 ,mem_lmo_opcode2 
+0x62da 026955 store 3 ,mem_lmp_to_send 
+0x62db 026956 fetcht 1 ,mem_lmo_tid2 
+0x62dc 026957 fetch 1 ,mem_state_map 
+0x62dd 026958 set0 smap_lmptid ,pdata 
+0x62de 026959 ior temp ,pdata 
+0x62df 026960 store 1 ,mem_state_map 
+0x62e0 026961 jam 0 ,mem_lmo_opcode2 
+0x62e1 026962 rtn 
+:      026965 special_tid_store:
+0x62e2 026966 bpatchx patch30_7 ,mem_patch30 
+0x62e3 026967 fetch 1 ,mem_state_map 
+0x62e4 026968 copy pdata ,regc 
+0x62e5 026969 ifetch 1 ,temp 
+0x62e6 026970 call pop_tid_follow 
+0x62e7 026971 call send_lmp_follow 
+0x62e8 026972 copy regc ,pdata 
+0x62e9 026973 store 1 ,mem_state_map 
+0x62ea 026974 rtn 
+:      026976 tid_reply:
+0x62eb 026977 fetcht 1 ,mem_state_map 
+0x62ec 026978 set0 smap_lmptidinit ,temp 
+0x62ed 026979 storet 1 ,mem_state_map 
+0x62ee 026980 rtn 
+:      026982 tid_initiate:
+0x62ef 026983 fetcht 1 ,mem_state_map 
+0x62f0 026984 set1 smap_lmptidinit ,temp 
+0x62f1 026985 storet 1 ,mem_state_map 
+0x62f2 026986 rtn 
+:      026989 tid_check:
+0x62f3 026990 nsetflag master ,smap_lmptid ,pdata 
+0x62f4 026991 fetcht 1 ,mem_state_map 
+0x62f5 026992 ixor temp ,pdata 
+0x62f6 026993 isolate1 smap_lmptid ,pdata 
+0x62f7 026994 rtn 
+:      026997 tid_set_reply:
+0x62f8 026998 fetch 1 ,mem_state_map 
+0x62f9 026999 setflag master ,smap_lmptid ,pdata 
+0x62fa 027000 store 1 ,mem_state_map 
+0x62fb 027001 rtn 
+:      027004 check_localsm:
+0x62fc 027005 fetch 1 ,mem_sp_localsm 
+0x62fd 027006 compare local_statemachine ,pdata ,0x7f 
+0x62fe 027007 rtn 
+:      027008 setlocalsm_master:
+0x62ff 027009 fetch 1 ,mem_sp_localsm 
+0x6300 027010 set1 7 ,pdata 
+0x6301 027011 store 1 ,mem_sp_localsm 
+0x6302 027012 rtn 
+:      027013 setlocalsm_slave:
+0x6303 027014 fetch 1 ,mem_sp_localsm 
+0x6304 027015 set0 7 ,pdata 
+0x6305 027016 store 1 ,mem_sp_localsm 
+0x6306 027017 rtn 
+:      027018 check_localsm_master:
+0x6307 027019 fetch 1 ,mem_sp_localsm 
+0x6308 027020 isolate1 7 ,pdata 
+0x6309 027021 store 1 ,mem_sp_localsm 
+0x630a 027022 rtn 
+:      027024 generate_random_number:
+0x630b 027026 arg mem_random_number ,contw 
+:      027027 generate_random:
+0x630c 027028 force 16 ,loopcnt 
+:      027029 generate_random_another:
+:      027030 generate_random_loop:
+0x630d 027031 random pdata 
+0x630e 027032 istore 1 ,contw 
+0x630f 027033 loop generate_random_another 
+0x6310 027034 rtn 
+:      027036 generate_linkkey:
+0x6311 027037 call function_e21 
+0x6312 027038 arg mem_link_key ,rega 
+0x6313 027039 arg mem_input_store ,regb 
+0x6314 027040 ifetch 8 ,rega 
+0x6315 027041 fetcht 1 ,mem_state 
+0x6316 027042 nsetflag blank ,state_combkey ,temp 
+0x6317 027043 storet 1 ,mem_state 
+0x6318 027044 copy rega ,contw 
+0x6319 027045 call xor16 
+0x631a 027046 branch generate_linkkey_continue 
+:      027052 process_conn_sm:
+0x631b 027054 bpatchx patch31_0 ,mem_patch31 
+0x631c 027056 call lmo_fifo_check 
+0x631d 027057 nrtn blank 
+:      027058 process_conn_sm_continue:
+0x631e 027059 fetch 1 ,mem_conn_sm 
+0x631f 027060 rtn blank 
+0x6320 027064 beq conn_sm_send_conn_req ,host_create_conn_send_conn_req 
+0x6321 027065 beq conn_sm_wait_conn_accept ,host_create_conn_wait_accept 
+0x6322 027066 beq conn_sm_send_features ,host_create_conn_send_features 
+0x6323 027067 beq conn_sm_wait_features_res ,host_create_conn_waiting 
+0x6324 027068 beq conn_sm_send_switch ,host_create_conn_send_switch 
+0x6325 027069 beq conn_sm_auth_pair ,host_create_conn_auth_pair 
+0x6326 027070 beq conn_sm_auth_pair_wait ,host_create_conn_auth_pair_wait 
+0x6327 027071 beq conn_sm_encrypt ,host_create_conn_encrypt 
+0x6328 027072 beq conn_sm_encrypt_wait ,host_create_conn_encrypt_wait 
+0x6329 027073 beq conn_sm_encrypt_wait_clear ,host_create_conn_encrypt_wait_clear 
+0x632a 027074 beq conn_sm_send_setup_complete ,host_create_conn_send_setup_complete 
+0x632b 027075 beq conn_sm_wait_setup_complete ,host_create_conn_wait_setup_complete 
+0x632c 027076 beq conn_sm_detach_delay ,host_create_conn_master_detach 
+0x632d 027077 beq conn_sm_send_version ,host_create_conn_send_version 
+0x632e 027078 beq conn_sm_wait_version ,host_create_conn_waiting 
+0x632f 027079 beq conn_sm_wait_switch_after_host_connection ,host_creat_conn_wait_switch 
+0x6330 027080 beq conn_sm_send_features_ext ,host_creat_conn_send_feat_ext 
+0x6331 027081 beq conn_sm_wait_features_ext ,host_create_conn_waiting 
+0x6332 027082 beq conn_sm_pairing ,host_create_conn_pairing 
+0x6333 027083 beq conn_sm_pairing_wait ,host_create_conn_pairing_wait 
+0x6334 027084 beq conn_sm_auth ,host_create_conn_auth 
+0x6335 027085 beq conn_sm_auth_wait ,host_create_conn_auth_wait 
+0x6336 027086 beq conn_sm_done ,host_create_conn_done 
+0x6337 027087 beq conn_sm_wait_done ,host_create_conn_done_wait 
+0x6338 027088 jam conn_sm_standby ,mem_conn_sm 
+0x6339 027090 rtn 
+:      027091 host_create_conn_done:
+0x633a 027092 fetch 1 ,mem_lmp_conn_state 
+0x633b 027093 rtnbit0 received_setup_complete 
+0x633c 027094 rtnbit0 sent_setup_complete 
+0x633d 027095 jam conn_sm_standby ,mem_conn_sm 
+0x633e 027096 call host_conn_judge_encrypt 
+0x633f 027097 branch scheduler_start_upper_sm 
+:      027099 host_conn_judge_encrypt:
+0x6340 027100 fetch 1 ,mem_connection_options 
+0x6341 027101 rtnbit0 connection_encrypt 
+0x6342 027102 jam conn_sm_encrypt_wait ,mem_conn_sm 
+0x6343 027103 rtn 
+:      027105 host_create_conn_done_wait:
+0x6344 027106 arg enpt_delay_timer ,queue 
+0x6345 027107 call timer_check 
+0x6346 027108 nrtn blank 
+0x6347 027109 jam conn_sm_done ,mem_conn_sm 
+0x6348 027110 rtn 
+:      027112 host_create_conn_auth:
+0x6349 027113 fetch 1 ,mem_connection_options 
+0x634a 027114 set0 connection_auth ,pdata 
+0x634b 027115 store 1 ,mem_connection_options 
+0x634c 027116 jam conn_sm_auth_wait ,mem_conn_sm 
+0x634d 027117 jam lmp_au_rand ,mem_lmo_opcode2 
+0x634e 027118 rtn 
+:      027119 host_create_conn_auth_wait:
+0x634f 027120 rtn 
+:      027121 host_create_conn_pairing:
+0x6350 027122 fetch 1 ,mem_pincode_state 
+0x6351 027123 rtnne pincode_state_pincode_ready 
+0x6352 027124 call host_auth 
+0x6353 027125 jam conn_sm_pairing_wait ,mem_conn_sm 
+0x6354 027126 rtn 
+:      027128 host_create_conn_pairing_wait:
+0x6355 027129 rtn 
+:      027130 host_creat_conn_send_feat_ext:
+0x6356 027131 jam conn_sm_wait_features_ext ,mem_conn_sm 
+0x6357 027132 jam lmp_ext_features_req ,mem_lmo_opcode2 
+0x6358 027133 rtn 
+:      027134 host_create_conn_send_version:
+0x6359 027135 jam conn_sm_wait_version ,mem_conn_sm 
+0x635a 027136 jam lmp_version_req ,mem_lmo_opcode2 
+0x635b 027137 rtn 
+:      027139 host_creat_conn_wait_switch:
+0x635c 027140 fetch 1 ,mem_switch_flag 
+0x635d 027141 rtneq switch_flag_init 
+0x635e 027142 beq switch_flag_accept ,host_create_conn_switch_accept 
+0x635f 027143 arg switch_wait_timer ,queue 
+0x6360 027144 call timer_check 
+0x6361 027145 nrtn blank 
+0x6362 027146 jam switch_flag_init ,mem_switch_flag 
+0x6363 027147 branch host_create_conn_switch 
+:      027148 host_create_conn_switch_accept:
+0x6364 027149 rtn master 
+0x6365 027150 branch host_create_conn_auth_pair 
+:      027152 host_create_conn_send_features:
+0x6366 027153 jam conn_sm_wait_features_res ,mem_conn_sm 
+0x6367 027154 jam lmp_features_req ,mem_lmo_opcode2 
+0x6368 027155 rtn 
+:      027156 host_create_conn_send_switch:
+0x6369 027157 jam lmp_switch_req ,mem_lmo_opcode2 
+0x636a 027158 set1 mark_switch_initiated ,mark 
+0x636b 027159 jam conn_sm_wait_conn_accept ,mem_conn_sm 
+0x636c 027160 setarg 0x1ff 
+0x636d 027161 store 2 ,mem_soft_timer 
+0x636e 027162 rtn 
+:      027163 host_create_conn_send_conn_req:
+0x636f 027164 jam conn_sm_wait_conn_accept ,mem_conn_sm 
+0x6370 027165 jam 0xff ,mem_soft_timer 
+0x6371 027166 set0 mark_reconn_recieve_switch ,mark 
+0x6372 027167 jam lmp_host_connection_req ,mem_lmo_opcode2 
+0x6373 027168 branch init_lmp_reinit 
+:      027169 host_create_conn_wait_accept:
+0x6374 027170 rtnmark1 mark_reconn_recieve_switch 
+0x6375 027171 fetch 2 ,mem_soft_timer 
+0x6376 027172 sub pdata ,1 ,pdata 
+0x6377 027173 branch host_create_conn_resend ,zero 
+0x6378 027174 store 2 ,mem_soft_timer 
+0x6379 027175 rtn 
+:      027176 host_create_conn_resend:
+0x637a 027177 jam conn_sm_send_switch ,mem_conn_sm 
+0x637b 027178 rtn 
+:      027179 host_create_conn_waiting:
+0x637c 027181 rtn 
+:      027183 host_create_conn_switch:
+0x637d 027184 fetch 1 ,mem_lmp_conn_state 
+0x637e 027185 rtnbit0 sent_setup_complete 
+0x637f 027186 rtnbit0 received_setup_complete 
+0x6380 027187 fetch 1 ,mem_connection_options 
+0x6381 027188 set0 connection_switch ,pdata 
+0x6382 027189 store 1 ,mem_connection_options 
+0x6383 027190 jam lmp_switch_req ,mem_lmo_opcode2 
+0x6384 027191 jam conn_sm_wait_switch_after_host_connection ,mem_conn_sm 
+0x6385 027192 rtn 
+:      027194 host_create_conn_send_setup_complete:
+0x6386 027195 jam conn_sm_wait_setup_complete ,mem_conn_sm 
+0x6387 027196 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x6388 027197 rtn 
+:      027199 host_create_conn_wait_setup_complete:
+0x6389 027200 fetch 1 ,mem_lmp_conn_state 
+0x638a 027201 rtnbit0 received_setup_complete 
+0x638b 027202 jam conn_sm_standby ,mem_conn_sm 
+0x638c 027204 rtn 
+:      027205 host_create_conn_wait_setup_complete_rtn:
+0x638d 027206 jam conn_sm_auth_pair ,mem_conn_sm 
+0x638e 027207 rtn 
+:      027209 host_create_conn_master_detach:
+0x638f 027210 fetch 1 ,mem_soft_timer 
+0x6390 027211 increase -1 ,pdata 
+0x6391 027212 branch host_create_conn_send_detach ,blank 
+0x6392 027213 store 1 ,mem_soft_timer 
+0x6393 027214 rtn 
+:      027215 host_create_conn_send_detach:
+0x6394 027216 jam lmp_detach ,mem_lmo_opcode2 
+0x6395 027217 jam local_host ,mem_disconn_reason_send 
+0x6396 027218 jam 0 ,mem_conn_sm 
+0x6397 027219 rtn 
+:      027220 host_create_conn_auth_pair:
+0x6398 027222 fetch 1 ,mem_connection_options 
+0x6399 027223 bbit1 connection_switch ,host_create_conn_switch 
+0x639a 027224 bbit1 connection_auth ,host_create_conn_auth_pair_true 
+:      027225 host_create_conn_sm_done:
+0x639b 027226 jam conn_sm_done ,mem_conn_sm 
+0x639c 027227 rtn 
+:      027228 host_create_conn_auth_pair_true:
+0x639d 027229 fetch 1 ,mem_link_key_exists 
+0x639e 027230 branch host_create_conn_auth_pair_nokey ,blank 
+0x639f 027231 fetch 1 ,mem_lmp_conn_state 
+0x63a0 027232 rtnbit0 sent_setup_complete 
+0x63a1 027233 rtnbit0 received_setup_complete 
+0x63a2 027234 fetch 4 ,mem_aurand_send_delay_time 
+0x63a3 027235 arg 100 ,temp 
+0x63a4 027236 iadd temp ,temp 
+0x63a5 027237 copy clkn_bt ,pdata 
+0x63a6 027238 isub temp ,null 
+0x63a7 027239 nrtn positive 
+0x63a8 027240 branch host_create_conn_auth 
+:      027244 host_create_conn_auth_pair_nokey:
+0x63a9 027245 jam conn_sm_pairing ,mem_conn_sm 
+0x63aa 027246 jam 4 ,mem_pin_length 
+0x63ab 027247 setarg 0x3030 
+0x63ac 027248 store 2 ,mem_pin 
+0x63ad 027249 istore 2 ,contw 
+0x63ae 027250 jam pincode_state_pincode_ready ,mem_pincode_state 
+0x63af 027251 branch host_create_conn_pairing 
+:      027253 host_create_conn_auth_pair_wait:
+0x63b0 027254 rtn 
+:      027255 host_create_conn_encrypt:
+0x63b1 027256 fetch 1 ,mem_connection_options 
+0x63b2 027257 bbit1 connection_encrypt ,host_create_conn_encrypt_start 
+0x63b3 027258 jam conn_sm_done ,mem_conn_sm 
+0x63b4 027259 rtn 
+:      027261 host_create_conn_encrypt_start:
+0x63b5 027262 fetch 1 ,mem_connection_options 
+0x63b6 027263 set0 connection_encrypt ,pdata 
+0x63b7 027264 store 1 ,mem_connection_options 
+0x63b8 027265 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+0x63b9 027266 rtn 
+:      027268 host_create_conn_encrypt_wait:
+0x63ba 027269 fetch 1 ,mem_wait_encryption 
+0x63bb 027270 rtn blank 
+0x63bc 027271 jam conn_sm_standby ,mem_conn_sm 
+0x63bd 027272 branch host_create_conn_encrypt_start 
+:      027274 host_create_conn_encrypt_wait_clear:
+0x63be 027275 jam conn_sm_send_setup_complete ,mem_conn_sm 
+0x63bf 027276 rtn 
+:      027278 host_auth:
+0x63c0 027279 fetch 1 ,mem_op 
+0x63c1 027280 bbit1 op_inrand_req ,remote_auth 
+0x63c2 027281 call tid_initiate 
+0x63c3 027282 jam lmp_in_rand ,mem_lmo_opcode2 
+0x63c4 027283 branch cmd_exit 
+:      027284 remote_auth:
+0x63c5 027285 fetch 1 ,mem_op 
+0x63c6 027286 set0 op_inrand_req ,pdata 
+0x63c7 027287 store 1 ,mem_op 
+0x63c8 027288 call lmp_accept_inrand 
+0x63c9 027289 call tid_set_reply 
+0x63ca 027290 branch cmd_exit 
+:      027292 pincode_reinit:
+0x63cb 027293 setarg 4 
+0x63cc 027294 store 1 ,mem_pin_length 
+0x63cd 027295 setarg 0x3030 
+0x63ce 027296 istore 2 ,contw 
+0x63cf 027297 istore 2 ,contw 
+0x63d0 027298 rtn 
+:      027304 twspi_reset:
+0x63d1 027305 bpatchx patch31_4 ,mem_patch31 
+0x63d2 027306 hfetch 1 ,core_gpio_oe3 
+0x63d3 027307 arg 0x06 ,temp 
+0x63d4 027308 ior temp ,pdata 
+0x63d5 027309 hstore 1 ,core_gpio_oe3 
+0x63d6 027310 hfetch 1 ,core_gpio_out3 
+0x63d7 027311 ior temp ,pdata 
+0x63d8 027312 hstore 1 ,core_gpio_out3 
+0x63d9 027313 call twspi_disable 
+0x63da 027314 hfetch 1 ,core_gpio_out3 
+0x63db 027315 set0 1 ,pdata 
+0x63dc 027316 set0 2 ,pdata 
+0x63dd 027317 hstore 1 ,core_gpio_out3 
+0x63de 027318 nop 30 
+0x63df 027319 branch twspi_enable 
+:      027321 twspi_reset2:
+0x63e0 027322 hfetch 1 ,core_gpio_oe3 
+0x63e1 027323 arg 0xc0 ,temp 
+0x63e2 027324 ior temp ,pdata 
+0x63e3 027325 hstore 1 ,core_gpio_oe3 
+0x63e4 027326 hfetch 1 ,core_gpio_out3 
+0x63e5 027327 ior temp ,pdata 
+0x63e6 027328 hstore 1 ,core_gpio_out3 
+0x63e7 027329 call twspi_disable 
+0x63e8 027330 hfetch 1 ,core_gpio_out3 
+0x63e9 027331 set0 6 ,pdata 
+0x63ea 027332 set0 7 ,pdata 
+0x63eb 027333 hstore 1 ,core_gpio_out3 
+0x63ec 027334 nop 30 
+0x63ed 027335 branch twspi_enable2 
+:      027337 twspi_disable:
+0x63ee 027338 hfetch 1 ,core_gpio_sel1 
+0x63ef 027339 and pdata ,0xfc ,pdata 
+0x63f0 027340 hstore 1 ,core_gpio_sel1 
+0x63f1 027341 rtn 
+:      027342 twspi_enable:
+0x63f2 027343 hfetch 1 ,core_gpio_sel1 
+0x63f3 027344 or pdata ,0x01 ,pdata 
+0x63f4 027345 hstore 1 ,core_gpio_sel1 
+0x63f5 027346 rtn 
+:      027347 twspi_enable2:
+0x63f6 027348 hfetch 1 ,core_gpio_sel1 
+0x63f7 027349 or pdata ,0x03 ,pdata 
+0x63f8 027350 set0 4 ,pdata 
+0x63f9 027351 hstore 1 ,core_gpio_sel1 
+0x63fa 027352 rtn 
+:      027356 sensor_read:
+0x63fb 027357 copy pdata ,regb 
+0x63fc 027358 call spi_ncs_enable 
+0x63fd 027359 nop 100 
+0x63fe 027360 copy regb ,pdata 
+0x63ff 027361 call twspi_read 
+0x6400 027362 copy pdata ,regb 
+0x6401 027363 call spi_ncs_disable 
+0x6402 027364 nop 100 
+0x6403 027365 copy regb ,pdata 
+0x6404 027366 rtn 
+:      027368 sensor_write:
+0x6405 027369 copy pdata ,regb 
+0x6406 027370 call spi_ncs_enable 
+0x6407 027371 nop 100 
+0x6408 027372 copy regb ,pdata 
+0x6409 027373 call twspi_write 
+0x640a 027374 call spi_ncs_disable 
+0x640b 027375 nop 100 
+0x640c 027376 rtn 
+:      027379 spi_ncs_gpio_init:
+0x640d 027380 fetcht 1 ,mem_spi_ncs_gpio 
+0x640e 027381 branch gpio_config_output 
+:      027384 spi_ncs_enable:
+0x640f 027385 fetcht 1 ,mem_spi_ncs_gpio 
+0x6410 027386 branch gpio_out_active 
+:      027389 spi_ncs_disable:
+0x6411 027390 fetcht 1 ,mem_spi_ncs_gpio 
+0x6412 027391 branch gpio_out_inactive 
+:      027394 twspi_write:
+0x6413 027395 branch spid_write_reg 
+:      027397 twspi_read:
+0x6414 027398 branch spid_read_reg 
+:      027405 read_function_aes:
+0x6415 027406 nbranch read_function ,user 
+0x6416 027407 hfetch 1 ,core_gpio_key2 
+0x6417 027408 or_into 0x2 ,pdata 
+0x6418 027409 hstore 1 ,core_gpio_key2 
+:      027410 read_function:
+0x6419 027411 copy temp ,null 
+0x641a 027412 branch read_fuction_zero ,zero 
+0x641b 027413 copy regc ,pc 
+:      027414 read_fuction_zero:
+0x641c 027415 isolate0 0 ,null 
+0x641d 027416 branch set_ucode_status 
+:      027419 get_block_header:
+0x641e 027420 force 4 ,temp 
+:      027421 get_block_header0:
+0x641f 027422 arg mem_ucode_buf ,rega 
+0x6420 027423 hfetch 1 ,core_gpio_key2 
+0x6421 027424 and_into 0xfd ,pdata 
+0x6422 027425 hstore 1 ,core_gpio_key2 
+0x6423 027426 call read_function 
+0x6424 027427 arg 0x55aa ,rega 
+0x6425 027428 fetch 2 ,mem_ucode_buf 
+0x6426 027429 ifetcht 2 ,contr 
+0x6427 027430 isub rega ,null 
+0x6428 027431 rtn 
+:      027433 read_first_block:
+0x6429 027434 arg 2 ,temp 
+0x642a 027435 arg mem_ucode_ptr ,rega 
+0x642b 027436 call read_function 
+0x642c 027437 fetch 2 ,mem_ucode_ptr 
+0x642d 027438 store 2 ,mem_addr_mi 
+0x642e 027439 call get_iv ,user 
+0x642f 027440 rtn 
+:      027442 get_iv:
+0x6430 027443 arg 16 ,temp 
+0x6431 027444 arg mem_ucode_keybuf ,rega 
+0x6432 027445 hfetch 1 ,core_gpio_key2 
+0x6433 027446 and_into 0xfd ,pdata 
+0x6434 027447 hstore 1 ,core_gpio_key2 
+0x6435 027448 call read_function 
+0x6436 027449 arg mem_ucode_keybuf ,contr 
+0x6437 027450 arg 16 ,loopcnt 
+0x6438 027451 call aes_load_data 
+0x6439 027452 call aes_init 
+0x643a 027453 call aes_clear_data 
+0x643b 027454 branch do_aes_cbc 
+:      027456 load_storage:
+0x643c 027457 disable match 
+0x643d 027458 call get_block_header 
+0x643e 027459 nrtn zero 
+0x643f 027460 enable match 
+0x6440 027461 jam 0x80 ,core_ucode_ctrl 
+0x6441 027462 jam 0 ,core_ucode_hi 
+0x6442 027463 jam 0 ,core_ucode_low 
+0x6443 027464 arg core_ucode_data ,rega 
+0x6444 027465 call read_function_aes 
+0x6445 027466 jam 0x0 ,core_ucode_ctrl 
+:      027467 load_storage_loop:
+0x6446 027468 arg 6 ,temp 
+0x6447 027469 call get_block_header0 
+0x6448 027470 nrtn zero 
+0x6449 027471 ifetch 2 ,contr 
+0x644a 027472 iforce rega 
+0x644b 027473 call read_function 
+0x644c 027474 branch load_storage_loop 
+:      027478 reload_eeprom:
+0x644d 027479 call clean_mem 
+0x644e 027480 setarg 0x1000 
+0x644f 027481 store 2 ,mem_addr_mi 
+0x6450 027482 arg iicd_read_eep ,regc 
+0x6451 027483 arg 2 ,loopcnt 
+:      027484 reload_eeprom_loop:
+0x6452 027485 call get_block_header 
+0x6453 027486 nrtn zero 
+0x6454 027487 fetch 2 ,mem_addr_mi 
+0x6455 027488 byteswap pdata ,pdata 
+0x6456 027489 iadd temp ,pdata 
+0x6457 027490 byteswap pdata ,pdata 
+0x6458 027491 store 2 ,mem_addr_mi 
+0x6459 027492 loop reload_eeprom_loop 
+0x645a 027493 branch load_storage_loop 
+:      027495 loadcode:
+0x645b 027496 call clean_mem 
+0x645c 027497 disable user 
+0x645d 027498 call otp_enable_chgpump 
+0x645e 027499 setarg otp_ucode_flag 
+0x645f 027500 arg mem_otp_ucode_flag ,rega 
+0x6460 027501 arg 2 ,temp 
+0x6461 027502 call otpd_read_data 
+0x6462 027503 fetch 2 ,mem_otp_ucode_flag 
+0x6463 027504 bbit0 otp_uflag_aes ,loadcode_otp 
+0x6464 027505 jam 0x25 ,core_clkoff 
+0x6465 027506 setarg otp_ucode_aeskey 
+0x6466 027507 arg mem_ucode_keybuf ,rega 
+0x6467 027508 arg 16 ,temp 
+0x6468 027509 call otpd_read_data 
+0x6469 027510 jam lock_otp ,core_misc_ctrl 
+0x646a 027511 set1 mark_otp_encrypt ,mark 
+0x646b 027512 arg mem_ucode_keybuf ,contr 
+0x646c 027513 call load_key 
+0x646d 027514 enable user 
+:      027515 loadcode_otp:
+0x646e 027516 jam 0 ,mem_loadcode_times 
+:      027517 loadcode_otp_2:
+0x646f 027518 call loadcode_check_times 
+0x6470 027519 fetch 2 ,mem_otp_ucode_flag 
+0x6471 027520 byteswap pdata ,pdata 
+0x6472 027521 arg 0x7ff ,temp 
+0x6473 027522 iand temp ,pdata 
+0x6474 027523 branch loadcode_iic ,zero 
+0x6475 027524 call otp_set_addr 
+0x6476 027525 arg otpd_read_code ,regc 
+0x6477 027526 call get_iv ,user 
+0x6478 027527 call load_storage 
+0x6479 027528 fetch 1 ,mem_ucode_status 
+0x647a 027529 bbit0 0 ,loadcode_otp_2 
+:      027531 loadcode_iic:
+0x647b 027532 call otp_disable_chgpump 
+0x647c 027533 jam 0 ,mem_loadcode_times 
+:      027534 loadcode_iic_2:
+0x647d 027535 call loadcode_check_times 
+0x647e 027536 call clear_eeprom_size_2k 
+0x647f 027537 fetch 1 ,mem_otp_ucode_flag 
+0x6480 027538 bbit1 otp_uflag_skip_eep ,loadcode_spi 
+0x6481 027539 call loadcode_iic_by_eeprom 
+0x6482 027540 nbranch loadcode_iic_eeprom_2k ,match 
+0x6483 027541 fetch 1 ,mem_ucode_status 
+0x6484 027542 bbit0 0 ,loadcode_iic_2 
+0x6485 027543 branch loadcode_hci 
+:      027544 loadcode_iic_eeprom_2k:
+0x6486 027545 call set_eeprom_size_2k 
+0x6487 027546 fetch 1 ,mem_otp_ucode_flag 
+0x6488 027547 bbit1 otp_uflag_skip_eep ,loadcode_spi 
+0x6489 027548 call loadcode_iic_by_eeprom 
+0x648a 027549 nbranch loadcode_spi ,match 
+0x648b 027550 fetch 1 ,mem_ucode_status 
+0x648c 027551 bbit0 0 ,loadcode_iic_2 
+0x648d 027552 branch loadcode_hci 
+:      027554 loadcode_spi:
+0x648e 027555 jam 0 ,mem_loadcode_times 
+:      027556 loadcode_spi_2:
+0x648f 027557 call loadcode_check_times 
+0x6490 027558 fetch 1 ,mem_otp_ucode_flag 
+0x6491 027559 bbit1 otp_uflag_skip_flash ,loadcode_hci 
+0x6492 027560 setarg 0x0 
+0x6493 027561 store 3 ,mem_addr_hi 
+0x6494 027562 call spid_init_flash 
+0x6495 027563 arg spid_load_flash ,regc 
+0x6496 027564 call read_first_block 
+0x6497 027565 call load_storage 
+0x6498 027566 nbranch loadcode_hci ,match 
+0x6499 027567 fetch 1 ,mem_ucode_status 
+0x649a 027568 bbit0 0 ,loadcode_spi_2 
+:      027570 loadcode_hci:
+0x649b 027571 bmark1 mark_otp_encrypt ,loadcode_hci_enc 
+0x649c 027572 call clear_key_buf 
+:      027573 loadcode_hci_enc:
+0x649d 027574 fetch 1 ,mem_otp_ucode_flag 
+0x649e 027575 bbit0 otp_uflag_hci ,clear_key_buf 
+0x649f 027576 jam 0x21 ,core_clkoff 
+0x64a0 027577 call hci_init 
+:      027578 loadcode_hci_loop:
+0x64a1 027579 call hci_rx_packet 
+0x64a2 027580 branch loadcode_hci_loop 
+:      027582 clear_key_buf:
+0x64a3 027583 setarg 0 
+0x64a4 027584 store 8 ,mem_ucode_keybuf 
+0x64a5 027585 store 8 ,mem_ucode_keybuf + 8 
+0x64a6 027586 force regidx_key ,regext_index 
+0x64a7 027587 call aes_clear 
+0x64a8 027588 jam 0x21 ,core_clkoff 
+0x64a9 027589 rtn 
+:      027592 loadcode_iic_by_eeprom:
+0x64aa 027593 setarg 0x0 
+0x64ab 027594 store 2 ,mem_addr_mi 
+0x64ac 027595 arg iicd_read_eep ,regc 
+0x64ad 027596 call iicd_init_12m 
+0x64ae 027597 call read_first_block 
+0x64af 027598 branch load_storage 
+:      027601 loadcode_check_times:
+0x64b0 027602 fetch 1 ,mem_loadcode_times 
+0x64b1 027603 increase 1 ,pdata 
+0x64b2 027604 sub pdata ,3 ,null 
+0x64b3 027605 nbranch loadcode_error ,positive 
+0x64b4 027606 store 1 ,mem_loadcode_times 
+0x64b5 027607 rtn 
+:      027609 loadcode_error:
+0x64b6 027610 call clear_key_buf 
+0x64b7 027611 call ice_break 
+0x64b8 027612 rtn 
+:      027616 set_ucode_status:
+0x64b9 027617 fetch 1 ,mem_ucode_status 
+0x64ba 027618 lshift pdata ,pdata 
+0x64bb 027619 setflag true ,0 ,pdata 
+0x64bc 027620 isolate0 15 ,rega 
+0x64bd 027621 rtn true 
+0x64be 027622 store 1 ,mem_ucode_status 
+0x64bf 027623 rtn 
+:      027626 decrypt_code:
+0x64c0 027627 hfetch 1 ,core_gpio_key2 
+0x64c1 027628 rtnbit0 1 
+0x64c2 027629 branch decrypt_code_skip 
+:      027630 decrypt_code_loop:
+0x64c3 027631 hfetch 1 ,core_dma_status 
+0x64c4 027632 qisolate1 pdata 
+0x64c5 027633 rtn true 
+:      027634 decrypt_code_skip:
+0x64c6 027635 hfetch 1 ,core_misc_status 
+0x64c7 027636 bbit0 1 ,decrypt_code_loop 
+0x64c8 027637 call do_aes_cbc 
+0x64c9 027638 branch decrypt_code_loop 
+:      027642 load_ucode:
+0x64ca 027643 fetch 2 ,mem_patch_ptr 
+0x64cb 027644 rtn blank 
+0x64cc 027645 jam 0x80 ,core_ucode_ctrl 
+0x64cd 027646 jam 0 ,core_ucode_hi 
+0x64ce 027647 jam 0 ,core_ucode_low 
+0x64cf 027648 fetcht 2 ,mem_patch_len 
+0x64d0 027649 lshift2 temp ,loopcnt 
+0x64d1 027650 iforce contr 
+:      027651 load_ucode_loop:
+0x64d2 027652 ifetch 1 ,contr 
+0x64d3 027653 hstore 1 ,core_ucode_data 
+0x64d4 027654 loop load_ucode_loop 
+0x64d5 027655 jam 0x0 ,core_ucode_ctrl 
+0x64d6 027656 rtn 
+:      027661 spid_init:
+0x64d7 027662 bpatchx patch31_5 ,mem_patch31 
+0x64d8 027663 call spid_init_common 
+0x64d9 027664 branch twspi_enable 
+:      027666 spid_init2:
+0x64da 027667 call spid_init_common 
+0x64db 027668 call twspi_disable 
+0x64dc 027669 branch twspi_enable2 
+:      027671 spid_init_common:
+0x64dd 027672 fetch 1 ,mem_spi_init_clk 
+0x64de 027673 hstore 1 ,core_spid_ctrl 
+0x64df 027674 fetch 1 ,mem_spi_init_delay_time 
+0x64e0 027675 hstore 1 ,core_spid_delay 
+0x64e1 027676 setarg mem_spid_tbuf 
+0x64e2 027677 hstore 2 ,core_spid_txaddr 
+0x64e3 027678 setarg mem_spid_rbuf 
+0x64e4 027679 hstore 2 ,core_spid_rxaddr 
+0x64e5 027680 branch twspi_disable 
+:      027682 spid_reset:
+0x64e6 027683 hfetch 1 ,core_spid_ctrl 
+0x64e7 027684 set1 7 ,pdata 
+0x64e8 027685 hstore 1 ,core_spid_ctrl 
+0x64e9 027686 set0 7 ,pdata 
+0x64ea 027687 hstore 1 ,core_spid_ctrl 
+0x64eb 027688 rtn 
+:      027692 spid_write_reg:
+0x64ec 027693 set1 7 ,pdata 
+0x64ed 027694 store 2 ,mem_spid_tbuf 
+0x64ee 027695 bpatchx patch31_6 ,mem_patch31 
+0x64ef 027696 jam 2 ,core_spid_txlen 
+0x64f0 027697 jam 0 ,core_spid_rxlen 
+0x64f1 027698 jam spid_start ,core_misc_ctrl 
+0x64f2 027699 branch wait_spid_done 
+:      027702 spid_read_reg:
+0x64f3 027703 force 1 ,temp 
+:      027705 spid_read_regs:
+0x64f4 027707 store 1 ,mem_spid_tbuf 
+0x64f5 027708 bpatchx patch31_7 ,mem_patch31 
+0x64f6 027709 jam 1 ,core_spid_txlen 
+0x64f7 027710 hstoret 2 ,core_spid_rxlen 
+0x64f8 027711 jam spid_start ,core_misc_ctrl 
+0x64f9 027712 call wait_spid_done 
+0x64fa 027713 fetch 1 ,mem_spid_rbuf 
+0x64fb 027714 rtn 
+:      027716 wait_spid_done:
+0x64fc 027717 fetch 2 ,mem_afh_error_total 
+0x64fd 027718 increase 1 ,pdata 
+0x64fe 027719 store 2 ,mem_afh_error_total 
+0x64ff 027720 hfetch 1 ,core_dma_status 
+0x6500 027721 bbit0 spid_done ,wait_spid_done 
+0x6501 027722 rtn 
+:      027724 spid_init_flash:
+0x6502 027725 jam 0x40 ,core_spid_ctrl 
+0x6503 027726 jam 0x0 ,core_spid_delay 
+0x6504 027727 hfetch 1 ,core_gpio_sel1 
+0x6505 027728 set0 0 ,pdata 
+0x6506 027729 set1 1 ,pdata 
+0x6507 027730 hstore 1 ,core_gpio_sel1 
+0x6508 027731 setarg 0 
+0x6509 027732 store 4 ,mem_spid_tbuf 
+0x650a 027733 rtn 
+:      027736 spid_unlock_flash:
+0x650b 027737 setarg 0 
+0x650c 027738 hstore 2 ,core_spid_rxlen 
+0x650d 027739 setarg 1 
+0x650e 027740 hstore 2 ,core_spid_txlen 
+0x650f 027741 setarg mem_spid_tbuf 
+0x6510 027742 hstore 2 ,core_spid_txaddr 
+0x6511 027743 jam 6 ,mem_spid_tbuf 
+0x6512 027744 jam spid_start ,core_misc_ctrl 
+0x6513 027745 branch wait_spid_done 
+:      027760 flash_write:
+0x6514 027761 disable user 
+0x6515 027762 copy pdata ,regb 
+0x6516 027763 fetch 1 ,mem_spi_write_flash_sm 
+0x6517 027764 rtnne flash_sm_no_buys 
+0x6518 027765 enable user 
+0x6519 027766 copy regb ,pdata 
+0x651a 027767 branch flash_write_start 
+:      027770 flash_write_spi_sm_timer:
+0x651b 027771 fetch 1 ,mem_spi_write_flash_sm 
+0x651c 027772 beq flash_sm_start ,flash_write_start 
+0x651d 027773 beq flash_sm_erase_sector ,flash_erase_sector 
+0x651e 027774 beq flash_sm_wait_erase_sector ,flash_wait_erase_sector 
+0x651f 027775 beq flash_sm_write_data ,flash_write_data 
+0x6520 027776 beq flash_sm_wait_write_data ,flash_wait_write_data 
+0x6521 027777 rtn 
+:      027779 flash_write_start:
+0x6522 027780 store 3 ,mem_spi_write_addr 
+0x6523 027781 copy rega ,pdata 
+0x6524 027782 store 2 ,mem_spi_write_ptr 
+0x6525 027783 storet 2 ,mem_spi_write_len 
+0x6526 027784 jam flash_sm_erase_sector ,mem_spi_write_flash_sm 
+0x6527 027785 branch spid_init_flash 
+:      027786 flash_erase_sector:
+0x6528 027787 call spid_init_flash 
+0x6529 027788 jam flash_sm_wait_erase_sector ,mem_spi_write_flash_sm 
+0x652a 027789 call spid_unlock_flash 
+0x652b 027790 arg mem_spid_tbuf ,rega 
+0x652c 027791 fetch 3 ,mem_spi_write_addr 
+0x652d 027792 jam 4 ,core_spid_txlen 
+0x652e 027793 arg flash_command_sector_erase ,temp 
+0x652f 027794 branch spid_write_flash_common 
+:      027796 flash_wait_erase_sector:
+0x6530 027797 call spid_init_flash 
+0x6531 027798 call spid_unlock_flash 
+0x6532 027799 setarg flash_read_satus 
+0x6533 027800 call spid_read_reg 
+0x6534 027801 rtnbit1 flash_status_wip 
+0x6535 027802 jam flash_sm_write_data ,mem_spi_write_flash_sm 
+0x6536 027803 rtn 
+:      027804 flash_write_data:
+0x6537 027805 call spid_init_flash 
+0x6538 027806 jam flash_sm_wait_write_data ,mem_spi_write_flash_sm 
+0x6539 027807 call spid_unlock_flash 
+0x653a 027808 call flash_data_preserve 
+0x653b 027809 call spid_write_flash 
+0x653c 027810 branch flash_data_recover 
+:      027811 flash_wait_write_data:
+0x653d 027812 call spid_init_flash 
+0x653e 027813 call spid_unlock_flash 
+0x653f 027814 setarg flash_read_satus 
+0x6540 027815 call spid_read_reg 
+0x6541 027816 rtnbit1 flash_status_wip 
+0x6542 027817 jam flash_sm_no_buys ,mem_spi_write_flash_sm 
+0x6543 027818 fetch 2 ,mem_cb_spi_flash_write_complate 
+0x6544 027819 branch callback_func 
+:      027820 flash_data_recover:
+0x6545 027821 fetch 4 ,mem_temp 
+0x6546 027822 fetcht 2 ,mem_spi_write_ptr 
+0x6547 027823 increase -4 ,temp 
+0x6548 027824 istore 4 ,temp 
+0x6549 027825 rtn 
+:      027826 flash_data_preserve:
+0x654a 027827 fetcht 2 ,mem_spi_write_ptr 
+0x654b 027828 copy temp ,rega 
+0x654c 027829 increase -4 ,temp 
+0x654d 027830 ifetch 4 ,temp 
+0x654e 027831 store 4 ,mem_temp 
+0x654f 027832 fetcht 2 ,mem_spi_write_len 
+0x6550 027833 fetch 3 ,mem_spi_write_addr 
+0x6551 027834 rtn 
+:      027838 spid_write_flash:
+0x6552 027839 increase 4 ,temp 
+0x6553 027840 hstoret 2 ,core_spid_txlen 
+0x6554 027841 arg flash_command_write_data ,temp 
+0x6555 027842 increase -4 ,rega 
+:      027843 spid_write_flash_common:
+0x6556 027845 istoret 1 ,rega 
+0x6557 027846 rshift16 pdata ,temp 
+0x6558 027847 istoret 1 ,contw 
+0x6559 027848 rshift8 pdata ,temp 
+0x655a 027849 istoret 1 ,contw 
+0x655b 027850 istore 1 ,contw 
+0x655c 027851 deposit rega 
+0x655d 027852 hstore 2 ,core_spid_txaddr 
+0x655e 027853 setarg 0 
+0x655f 027854 hstore 2 ,core_spid_rxlen 
+0x6560 027855 jam spid_start ,core_misc_ctrl 
+0x6561 027856 branch wait_spid_done 
+:      027860 spid_read_flash:
+0x6562 027861 hstoret 2 ,core_spid_rxlen 
+0x6563 027862 rshift16 pdata ,temp 
+0x6564 027863 storet 1 ,mem_addr_hi 
+0x6565 027864 rshift8 pdata ,temp 
+0x6566 027865 storet 1 ,mem_addr_mi 
+0x6567 027866 store 1 ,mem_addr_lo 
+0x6568 027867 setarg 4 
+0x6569 027868 hstore 2 ,core_spid_txlen 
+0x656a 027869 jam flash_command_read_data ,mem_spid_tbuf 
+0x656b 027870 setarg mem_spid_tbuf 
+0x656c 027871 hstore 2 ,core_spid_txaddr 
+0x656d 027872 deposit rega 
+0x656e 027873 hstore 2 ,core_spid_rxaddr 
+0x656f 027874 hfetch 1 ,core_spid_ctrl 
+0x6570 027875 isolate0 15 ,rega 
+0x6571 027876 setflag true ,6 ,pdata 
+0x6572 027877 hstore 1 ,core_spid_ctrl 
+0x6573 027878 jam spid_start ,core_misc_ctrl 
+:      027879 spi_read_flash_wait:
+0x6574 027880 hfetch 1 ,core_dma_status 
+0x6575 027881 bbit1 7 ,spi_read_flash_wait 
+0x6576 027882 arg spid_done ,queue 
+0x6577 027883 branch wait_spid_done 
+:      027887 spid_load_flash:
+0x6578 027888 hstoret 2 ,core_spid_rxlen 
+0x6579 027889 setarg 4 
+0x657a 027890 hstore 2 ,core_spid_txlen 
+0x657b 027891 jam 3 ,mem_spid_tbuf 
+0x657c 027892 setarg mem_spid_tbuf 
+0x657d 027893 hstore 2 ,core_spid_txaddr 
+0x657e 027894 deposit rega 
+0x657f 027895 hstore 2 ,core_spid_rxaddr 
+0x6580 027896 hfetch 1 ,core_spid_ctrl 
+0x6581 027897 isolate0 15 ,rega 
+0x6582 027898 setflag true ,6 ,pdata 
+0x6583 027899 hstore 1 ,core_spid_ctrl 
+0x6584 027900 jam spid_start ,core_misc_ctrl 
+:      027901 spi_load_flash_wait:
+0x6585 027902 hfetch 1 ,core_dma_status 
+0x6586 027903 bbit1 7 ,spi_load_flash_wait 
+0x6587 027904 arg spid_done ,queue 
+0x6588 027905 call decrypt_code 
+0x6589 027906 call wait_spid_done 
+0x658a 027907 isolate1 spid_crcok ,pdata 
+0x658b 027908 call set_ucode_status 
+0x658c 027909 fetch 1 ,mem_addr_hi 
+0x658d 027910 lshift16 pdata ,regb 
+0x658e 027911 fetch 1 ,mem_addr_mi 
+0x658f 027912 lshift8 pdata ,pdata 
+0x6590 027913 ior regb ,regb 
+0x6591 027914 fetch 1 ,mem_addr_lo 
+0x6592 027915 ior regb ,pdata 
+0x6593 027916 iadd temp ,pdata 
+0x6594 027917 store 1 ,mem_addr_lo 
+0x6595 027918 rshift8 pdata ,pdata 
+0x6596 027919 store 1 ,mem_addr_mi 
+0x6597 027920 rshift8 pdata ,pdata 
+0x6598 027921 store 1 ,mem_addr_hi 
+0x6599 027922 rtn 
+:      027927 soft_reset_chip:
+0x659a 027928 jam 1 ,core_reset 
+0x659b 027929 rtn 
+:      027935 iic_init_390k:
+0x659c 027936 jam 12 ,core_iicd_scl_low 
+0x659d 027937 jam 13 ,core_iicd_scl_high 
+0x659e 027938 jam 13 ,core_iicd_start_setup 
+0x659f 027939 jam 13 ,core_iicd_start_hold 
+0x65a0 027940 jam 13 ,core_iicd_stop_setup 
+0x65a1 027941 jam 12 ,core_iicd_data_setup 
+0x65a2 027942 branch iicd_init_gpio 
+:      027945 iicd_init_12m:
+0x65a3 027946 jam 5 ,core_iicd_scl_low 
+0x65a4 027947 jam 7 ,core_iicd_scl_high 
+0x65a5 027948 jam 7 ,core_iicd_start_setup 
+0x65a6 027949 jam 7 ,core_iicd_start_hold 
+0x65a7 027950 jam 7 ,core_iicd_stop_setup 
+0x65a8 027951 jam 5 ,core_iicd_data_setup 
+:      027952 iicd_init_gpio:
+0x65a9 027953 hfetch 1 ,core_gpio_pu3 
+0x65aa 027954 or_into 0xc0 ,pdata 
+0x65ab 027955 hstore 1 ,core_gpio_pu3 
+0x65ac 027956 hfetch 1 ,core_gpio_sel1 
+0x65ad 027957 or_into 0x10 ,pdata 
+0x65ae 027958 hstore 1 ,core_gpio_sel1 
+0x65af 027959 rtn 
+:      027963 wait_iicd_done:
+0x65b0 027964 hfetch 1 ,core_dma_status 
+0x65b1 027965 bbit0 iicd_done ,wait_iicd_done 
+0x65b2 027966 rtn 
+:      027974 iicd_read_data:
+0x65b3 027975 hstore 2 ,core_iicd_txlen 
+0x65b4 027976 deposit rega 
+0x65b5 027977 hstore 2 ,core_iicd_txaddr 
+0x65b6 027978 deposit regb 
+0x65b7 027979 hstore 2 ,core_iicd_rxaddr 
+0x65b8 027980 deposit temp 
+0x65b9 027981 hstore 2 ,core_iicd_rxlen 
+0x65ba 027982 arg 1 ,temp 
+0x65bb 027983 nsetflag blank ,1 ,temp 
+0x65bc 027984 hstore 1 ,core_iicd_ctrl 
+0x65bd 027985 jam iicd_start ,core_misc_ctrl 
+0x65be 027986 branch wait_iicd_done 
+:      027989 set_eeprom_size_2k:
+0x65bf 027990 set1 mark_eeprom_size ,mark 
+0x65c0 027991 jam 0x08 ,mem_eeprom_block_size 
+0x65c1 027992 rtn 
+:      027994 clear_eeprom_size_2k:
+0x65c2 027995 set0 mark_eeprom_size ,mark 
+0x65c3 027996 jam 0x20 ,mem_eeprom_block_size 
+0x65c4 027997 rtn 
+:      028000 iicd_read_eep_data_size_2k:
+0x65c5 028001 fetch 1 ,mem_eeprom_base 
+0x65c6 028002 iadd regb ,pdata 
+0x65c7 028003 store 1 ,mem_addr_mi 
+0x65c8 028004 branch iicd_read_eep_size_2k 
+:      028006 iicd_read_eep_size_2k_lcadcode:
+0x65c9 028007 fetch 2 ,mem_addr_mi 
+0x65ca 028008 byteswap pdata ,pdata 
+0x65cb 028009 store 1 ,mem_addr_mi 
+:      028014 iicd_read_eep_size_2k:
+0x65cc 028015 setarg 3 
+0x65cd 028016 hstore 2 ,core_iicd_txlen 
+0x65ce 028017 jam 0xa0 ,mem_iicd_tbuf 
+0x65cf 028018 jam 0xa1 ,mem_iicd_tbuf + 2 
+0x65d0 028019 branch iicd_read_eep_common 
+:      028025 iicd_write_protect_eep_data:
+0x65d1 028026 storet 2 ,mem_temp 
+0x65d2 028027 call iicd_eeprom_write_enable 
+0x65d3 028028 fetcht 2 ,mem_temp 
+0x65d4 028029 call iicd_write_eep_data 
+0x65d5 028030 branch iicd_eeprom_write_disable 
+:      028032 iicd_eeprom_write_enable:
+0x65d6 028033 fetch 1 ,mem_eeprom_wp_gpio 
+0x65d7 028034 rtneq gpio_disable 
+0x65d8 028035 bbit0 6 ,iicd_wp_gpio_output_low 
+0x65d9 028036 setarg 150000 
+0x65da 028037 call sleep 
+:      028038 iicd_wp_gpio_output_low:
+0x65db 028039 fetcht 1 ,mem_eeprom_wp_gpio 
+0x65dc 028040 branch gpio_out_active 
+:      028042 iicd_eeprom_write_disable:
+0x65dd 028043 fetcht 1 ,mem_eeprom_wp_gpio 
+0x65de 028044 branch gpio_out_inactive 
+:      028049 iicd_read_eep_data:
+0x65df 028050 bpatchx patch32_0 ,mem_patch32 
+0x65e0 028051 bmark1 mark_eeprom_size ,iicd_read_eep_data_size_2k 
+0x65e1 028052 fetch 2 ,mem_eeprom_base 
+0x65e2 028053 iadd regb ,pdata 
+0x65e3 028054 byteswap pdata ,pdata 
+0x65e4 028055 store 2 ,mem_addr_mi 
+:      028058 iicd_read_eep:
+0x65e5 028059 bpatchx patch32_1 ,mem_patch32 
+0x65e6 028060 bmark1 mark_eeprom_size ,iicd_read_eep_size_2k_lcadcode 
+0x65e7 028061 setarg 4 
+0x65e8 028062 hstore 2 ,core_iicd_txlen 
+0x65e9 028063 jam 0xa0 ,mem_iicd_tbuf 
+0x65ea 028064 jam 0xa1 ,mem_iicd_tbuf + 3 
+:      028065 iicd_read_eep_common:
+0x65eb 028066 setarg mem_iicd_tbuf 
+0x65ec 028067 hstore 2 ,core_iicd_txaddr 
+0x65ed 028068 hstoret 2 ,core_iicd_rxlen 
+0x65ee 028069 deposit rega 
+0x65ef 028070 hstore 2 ,core_iicd_rxaddr 
+0x65f0 028071 setarg 2 
+0x65f1 028072 isolate0 15 ,rega 
+0x65f2 028073 setflag true ,0 ,pdata 
+0x65f3 028074 hstore 1 ,core_iicd_ctrl 
+0x65f4 028075 jam iicd_start ,core_misc_ctrl 
+0x65f5 028076 arg iicd_done ,queue 
+0x65f6 028077 call decrypt_code 
+0x65f7 028078 call wait_iicd_done 
+0x65f8 028079 isolate1 iicd_crcok ,pdata 
+0x65f9 028080 call set_ucode_status 
+0x65fa 028081 bmark1 mark_eeprom_size ,iicd_read_eep_load_code_size_2k 
+0x65fb 028082 fetch 2 ,mem_addr_mi 
+0x65fc 028083 byteswap pdata ,pdata 
+0x65fd 028084 iadd temp ,pdata 
+0x65fe 028085 byteswap pdata ,pdata 
+0x65ff 028086 store 2 ,mem_addr_mi 
+0x6600 028087 rtn 
+:      028089 iicd_read_eep_load_code_size_2k:
+0x6601 028090 fetch 1 ,mem_addr_mi 
+0x6602 028091 iadd temp ,pdata 
+0x6603 028092 byteswap pdata ,pdata 
+0x6604 028093 store 2 ,mem_addr_mi 
+0x6605 028094 rtn 
+:      028100 iicd_write_eep_data:
+0x6606 028101 fetch 2 ,mem_eeprom_base 
+0x6607 028102 iadd regb ,pdata 
+:      028105 iicd_write_ota_data:
+0x6608 028106 store 2 ,mem_pdatatemp 
+0x6609 028107 bpatchx patch32_2 ,mem_patch32 
+0x660a 028108 storet 2 ,mem_temp 
+0x660b 028109 copy rega ,pdata 
+0x660c 028110 store 2 ,mem_contr 
+:      028111 iicd_write_eep_loop:
+0x660d 028112 call iicd_eep_transparency 
+0x660e 028114 fetcht 2 ,mem_regb 
+0x660f 028115 fetch 2 ,mem_contr 
+0x6610 028116 copy pdata ,rega 
+0x6611 028117 fetch 2 ,mem_pdatatemp 
+0x6612 028119 call iicd_write_eep 
+0x6613 028121 fetch 2 ,mem_regb 
+0x6614 028122 fetcht 2 ,mem_contr 
+0x6615 028123 iadd temp ,temp 
+0x6616 028124 storet 2 ,mem_contr 
+0x6617 028125 fetcht 2 ,mem_pdatatemp 
+0x6618 028126 iadd temp ,temp 
+0x6619 028127 storet 2 ,mem_pdatatemp 
+0x661a 028128 fetch 2 ,mem_temp 
+0x661b 028129 nbranch iicd_write_eep_loop ,blank 
+0x661c 028130 rtn 
+:      028138 iicd_eep_transparency:
+0x661d 028139 bpatchx patch32_3 ,mem_patch32 
+0x661e 028140 fetch 1 ,mem_eeprom_block_size 
+0x661f 028141 increase -1 ,pdata 
+0x6620 028142 fetcht 2 ,mem_pdatatemp 
+0x6621 028143 ior temp ,pdata 
+0x6622 028144 increase 1 ,pdata 
+0x6623 028145 store 3 ,mem_regc 
+0x6624 028147 fetch 2 ,mem_temp 
+0x6625 028148 iadd temp ,pdata 
+0x6626 028150 fetcht 3 ,mem_regc 
+0x6627 028151 isub temp ,pdata 
+0x6628 028152 nbranch iicd_eep_deal_short_packet ,positive 
+0x6629 028153 store 2 ,mem_temp 
+0x662a 028154 fetch 3 ,mem_regc 
+0x662b 028155 fetcht 2 ,mem_pdatatemp 
+0x662c 028156 isub temp ,pdata 
+0x662d 028157 store 2 ,mem_regb 
+0x662e 028158 rtn 
+:      028159 iicd_eep_deal_short_packet:
+0x662f 028160 fetch 2 ,mem_temp 
+0x6630 028161 store 2 ,mem_regb 
+0x6631 028162 setarg 0 
+0x6632 028163 store 2 ,mem_temp 
+0x6633 028164 rtn 
+:      028166 iicd_write_eep_size_2k:
+0x6634 028167 increase 2 ,temp 
+0x6635 028168 hstoret 2 ,core_iicd_txlen 
+0x6636 028169 increase -2 ,rega 
+0x6637 028170 ifetcht 3 ,rega 
+0x6638 028171 copy temp ,regb 
+0x6639 028172 arg 0xa0 ,temp 
+0x663a 028173 istoret 1 ,rega 
+0x663b 028175 istore 1 ,contw 
+0x663c 028176 branch iicd_write_eep_common 
+:      028179 iicd_write_eep:
+0x663d 028180 copy pdata ,regb 
+0x663e 028181 bpatchx patch32_4 ,mem_patch32 
+0x663f 028182 bmark1 mark_eeprom_size ,iicd_write_eep_size_2k 
+0x6640 028183 copy regb ,pdata 
+0x6641 028184 increase 3 ,temp 
+0x6642 028185 hstoret 2 ,core_iicd_txlen 
+0x6643 028186 increase -3 ,rega 
+0x6644 028187 ifetcht 3 ,rega 
+0x6645 028188 copy temp ,regb 
+0x6646 028189 arg 0xa0 ,temp 
+0x6647 028190 istoret 1 ,rega 
+0x6648 028191 byteswap pdata ,pdata 
+0x6649 028192 istore 2 ,contw 
+:      028193 iicd_write_eep_common:
+0x664a 028194 deposit rega 
+0x664b 028195 hstore 2 ,core_iicd_txaddr 
+0x664c 028196 setarg 0 
+0x664d 028197 hstore 2 ,core_iicd_rxlen 
+0x664e 028198 jam 1 ,core_iicd_ctrl 
+0x664f 028199 jam iicd_start ,core_misc_ctrl 
+0x6650 028200 call wait_iicd_done 
+0x6651 028201 copy regb ,pdata 
+0x6652 028202 istore 3 ,rega 
+:      028204 iic_check_eeprom_standby:
+0x6653 028205 bpatchx patch32_5 ,mem_patch32 
+0x6654 028206 jam 0 ,mem_iicd_tbuf + 3 
+:      028207 iic_check_eeprom_standby_wait:
+0x6655 028208 setarg 1 
+0x6656 028209 hstore 2 ,core_iicd_txlen 
+0x6657 028210 jam 0xa0 ,mem_iicd_tbuf 
+0x6658 028211 setarg mem_iicd_tbuf 
+0x6659 028212 hstore 2 ,core_iicd_txaddr 
+0x665a 028213 setarg 0 
+0x665b 028214 hstore 2 ,core_iicd_rxlen 
+0x665c 028215 hstore 2 ,core_iicd_rxaddr 
+0x665d 028216 setarg 3 
+0x665e 028217 hstore 1 ,core_iicd_ctrl 
+0x665f 028218 jam iicd_start ,core_misc_ctrl 
+0x6660 028219 call wait_iicd_done 
+0x6661 028220 hfetch 1 ,core_dma_status 
+0x6662 028221 rtnbit0 iicd_ack 
+0x6663 028222 nop 1500 
+0x6664 028223 fetch 1 ,mem_iicd_tbuf + 3 
+0x6665 028224 increase 1 ,pdata 
+0x6666 028225 store 1 ,mem_iicd_tbuf + 3 
+0x6667 028226 sub pdata ,40 ,null 
+0x6668 028227 nrtn positive 
+0x6669 028228 branch iic_check_eeprom_standby_wait 
+:      028232 otp_enable_chgpump:
+0x666a 028233 jam 0x70 ,rfen_chgpump 
+0x666b 028234 nop param_chgpump_delay 
+0x666c 028235 rtn 
+:      028237 otp_disable_chgpump:
+0x666d 028238 jam 0x30 ,rfen_chgpump 
+0x666e 028239 rtn 
+:      028241 otp_set_addr:
+0x666f 028242 lshift3 pdata ,pdata 
+0x6670 028243 hstore 2 ,core_otp_addr 
+0x6671 028244 jam 0 ,core_otpd_ctrl 
+0x6672 028245 rtn 
+:      028248 otp_write:
+0x6673 028249 call otp_set_addr 
+0x6674 028250 call otp_ce 
+:      028251 otp_program:
+0x6675 028252 ifetcht 1 ,rega 
+0x6676 028253 increase 1 ,rega 
+0x6677 028254 force 0 ,queue 
+:      028255 otp_program_bit:
+0x6678 028256 qisolate0 temp 
+0x6679 028257 branch otp_skip_0 ,true 
+0x667a 028258 hfetch 1 ,core_otp_din 
+0x667b 028259 set1 6 ,pdata 
+0x667c 028260 set1 7 ,pdata 
+0x667d 028261 hstore 1 ,core_otp_din 
+0x667e 028262 jam 0x02 ,core_otp_ctrl 
+0x667f 028263 jam 0x82 ,core_otp_ctrl 
+0x6680 028264 set0 7 ,pdata 
+0x6681 028265 hstore 1 ,core_otp_din 
+0x6682 028266 jam 0x8a ,core_otp_ctrl 
+0x6683 028267 nop 11 
+0x6684 028268 jam 0xca ,core_otp_ctrl 
+0x6685 028269 nop 33 
+0x6686 028270 jam 0x4a ,core_otp_ctrl 
+0x6687 028271 nop 44 
+0x6688 028272 jam 0xca ,core_otp_ctrl 
+0x6689 028273 nop 22 
+0x668a 028274 jam 0x8a ,core_otp_ctrl 
+0x668b 028275 nop 33 
+0x668c 028276 jam 0x82 ,core_otp_ctrl 
+0x668d 028277 nop 1 
+0x668e 028278 jam 0x92 ,core_otp_ctrl 
+0x668f 028279 nop 10 
+0x6690 028280 jam 0xb2 ,core_otp_ctrl 
+0x6691 028281 hfetch 1 ,core_otp_rdata 
+0x6692 028282 jam 0x92 ,core_otp_ctrl 
+0x6693 028283 nop 1 
+0x6694 028284 jam 0x82 ,core_otp_ctrl 
+0x6695 028285 qisolate0 pdata 
+0x6696 028286 branch otp_program_bit ,true 
+:      028287 otp_skip_0:
+0x6697 028288 hfetch 2 ,core_otp_addr 
+0x6698 028289 increase 1 ,pdata 
+0x6699 028290 hstore 2 ,core_otp_addr 
+0x669a 028291 increase 1 ,queue 
+0x669b 028292 compare 8 ,queue ,0xf 
+0x669c 028293 nbranch otp_program_bit ,true 
+0x669d 028294 loop otp_program 
+0x669e 028295 jam 0x83 ,core_otp_ctrl 
+0x669f 028296 rtn 
+:      028298 otp_ce:
+0x66a0 028299 jam 0x82 ,core_otp_ctrl 
+0x66a1 028300 nop 12 
+0x66a2 028301 jam 0x80 ,core_otp_ctrl 
+0x66a3 028302 jam 0x82 ,core_otp_ctrl 
+0x66a4 028303 nop 150 
+0x66a5 028304 rtn 
+:      028307 otpd_read_init:
+0x66a6 028308 call otp_ce 
+0x66a7 028309 jam 0xa2 ,core_otp_ctrl 
+0x66a8 028310 deposit rega 
+0x66a9 028311 hstore 2 ,core_otpd_addr 
+0x66aa 028312 set1 11 ,temp 
+0x66ab 028313 isolate0 15 ,pdata 
+0x66ac 028314 setflag true ,15 ,temp 
+0x66ad 028315 hstoret 2 ,core_otpd_len 
+0x66ae 028316 jam otpd_start ,core_misc_ctrl 
+0x66af 028317 rtn 
+:      028319 otpd_wait_end:
+0x66b0 028320 hfetch 1 ,core_dma_status 
+0x66b1 028321 bbit0 otpd_done ,otpd_wait_end 
+0x66b2 028322 rtn 
+:      028325 otpd_read_data:
+0x66b3 028326 call otp_set_addr 
+0x66b4 028327 call otpd_read_init 
+0x66b5 028328 call otpd_wait_end 
+0x66b6 028329 jam 0x83 ,core_otp_ctrl 
+0x66b7 028330 rtn 
+:      028335 otpd_read_code:
+0x66b8 028336 hfetch 2 ,core_current_otp_addr 
+0x66b9 028337 hstore 2 ,core_otp_addr 
+0x66ba 028338 call otpd_read_init 
+0x66bb 028339 arg otpd_done ,queue 
+0x66bc 028340 call decrypt_code 
+0x66bd 028341 call otpd_wait_end 
+0x66be 028342 isolate1 otpd_crcok ,pdata 
+0x66bf 028343 call set_ucode_status 
+0x66c0 028344 jam 0x83 ,core_otp_ctrl 
+0x66c1 028345 rtn 
+:      028348 uartd_prepare_tx:
+0x66c2 028349 hfetch 2 ,core_uart_twptr 
+0x66c3 028350 iforce contwu 
+0x66c4 028351 rtn 
+:      028353 uartd_send:
+0x66c5 028354 deposit contwu 
+0x66c6 028355 hstore 2 ,core_uart_twptr 
+0x66c7 028356 rtn 
+:      028358 uartd_rxdone:
+0x66c8 028359 deposit contru 
+0x66c9 028360 hstore 2 ,core_uart_rrptr 
+0x66ca 028361 rtn 
+:      028363 uartd_prepare_rx:
+0x66cb 028364 hfetch 2 ,core_uart_rrptr 
+0x66cc 028365 copy pdata ,contru 
+0x66cd 028366 rtn 
+:      028368 uart_set_baud_by_mem:
+0x66ce 028369 fetch uart_baud_len ,mem_baud 
+0x66cf 028370 hstore uart_baud_len ,core_uart_baud 
+0x66d0 028371 rtn 
+:      028373 uart_copy_tx_bytes_fast:
+0x66d1 028374 deposit loopcnt 
+0x66d2 028375 rtn blank 
+:      028376 uart_copy_tx_bytes_fast_loop:
+0x66d3 028377 increase -8 ,loopcnt 
+0x66d4 028378 call uart_tx_8_bytes ,positive 
+0x66d5 028379 rtn zero 
+0x66d6 028380 branch uart_copy_tx_bytes_fast_loop ,positive 
+0x66d7 028381 increase 8 ,loopcnt 
+:      028382 uart_copy_tx_bytes_fast_loop_four:
+0x66d8 028383 increase -4 ,loopcnt 
+0x66d9 028384 call uart_tx_4_bytes ,positive 
+0x66da 028385 rtn zero 
+0x66db 028386 branch uart_copy_tx_bytes_fast_loop_four ,positive 
+0x66dc 028387 increase 4 ,loopcnt 
+0x66dd 028388 branch uart_copy_tx_bytes 
+:      028390 uart_tx_8_bytes:
+0x66de 028391 ifetch 8 ,contr 
+0x66df 028392 istore 8 ,contwu 
+0x66e0 028393 rtn 
+:      028395 uart_tx_4_bytes:
+0x66e1 028396 ifetch 4 ,contr 
+0x66e2 028397 istore 4 ,contwu 
+0x66e3 028398 rtn 
+:      028400 uart_copy_tx_bytes:
+0x66e4 028401 deposit loopcnt 
+0x66e5 028402 rtn blank 
+:      028403 uart_copy_tx_bytes_loop:
+0x66e6 028404 ifetch 1 ,contr 
+0x66e7 028405 istore 1 ,contwu 
+0x66e8 028406 loop uart_copy_tx_bytes_loop 
+0x66e9 028407 rtn 
+:      028409 uart_copy_rx_bytes_fast:
+0x66ea 028410 deposit loopcnt 
+0x66eb 028411 rtn blank 
+:      028412 uart_copy_rx_bytes_fast_loop:
+0x66ec 028413 increase -8 ,loopcnt 
+0x66ed 028414 call uart_rx_8_bytes ,positive 
+0x66ee 028415 rtn zero 
+0x66ef 028416 branch uart_copy_rx_bytes_fast_loop ,positive 
+0x66f0 028417 increase 8 ,loopcnt 
+:      028418 uart_copy_rx_bytes_fast_loop_four:
+0x66f1 028419 increase -4 ,loopcnt 
+0x66f2 028420 call uart_rx_4_bytes ,positive 
+0x66f3 028421 rtn zero 
+0x66f4 028422 branch uart_copy_rx_bytes_fast_loop_four ,positive 
+0x66f5 028423 increase 4 ,loopcnt 
+0x66f6 028424 branch uart_copy_rx_bytes 
+:      028426 uart_rx_8_bytes:
+0x66f7 028427 ifetch 8 ,contru 
+0x66f8 028428 istore 8 ,contw 
+0x66f9 028429 rtn 
+:      028431 uart_rx_4_bytes:
+0x66fa 028432 ifetch 4 ,contru 
+0x66fb 028433 istore 4 ,contw 
+0x66fc 028434 rtn 
+:      028437 uart_copy_rx_bytes:
+0x66fd 028438 deposit loopcnt 
+0x66fe 028439 rtn blank 
+:      028440 uart_copy_rx_bytes_loop:
+0x66ff 028441 ifetch 1 ,contru 
+0x6700 028442 istore 1 ,contw 
+0x6701 028443 loop uart_copy_rx_bytes_loop 
+0x6702 028444 rtn 
+:      028447 uart_copy_rx2tx:
+0x6703 028448 deposit loopcnt 
+0x6704 028449 rtn blank 
+:      028450 uart_copy_rx2tx_loop:
+0x6705 028451 ifetch 1 ,contru 
+0x6706 028452 istore 1 ,contwu 
+0x6707 028453 loop uart_copy_rx2tx_loop 
+0x6708 028454 rtn 
+:      028459 app_store_nvram_event:
+0x6709 028460 jam bt_evt_store_nvram ,mem_fifo_temp 
+0x670a 028461 branch ui_ipc_send_event 
+:      028463 check_51cmd_store_reconn_info:
+:      028464 check_51cmd_update_device_record:
+0x670b 028465 bpatchx patch32_6 ,mem_patch32 
+0x670c 028466 fetch 1 ,mem_nv_data_number 
+0x670d 028467 rtn blank 
+0x670e 028468 call check_nvram 
+0x670f 028469 call init_device_list ,zero 
+0x6710 028470 call nvram_find_addr_from_bd_list 
+:      028471 write_device_record:
+0x6711 028472 fetch 1 ,mem_nv_data_number 
+0x6712 028473 icopy regc 
+0x6713 028474 fetcht 2 ,mem_nv_data_ptr 
+0x6714 028475 storet 2 ,mem_list_item_ptr 
+:      028476 write_device_loop_find:
+0x6715 028477 copy regc ,pdata 
+0x6716 028478 branch app_store_nvram_event ,blank 
+0x6717 028479 increase -1 ,regc 
+0x6718 028480 copy temp ,rega 
+0x6719 028481 ifetch 1 ,rega 
+0x671a 028482 fetcht 1 ,mem_select_list_item 
+0x671b 028483 isub temp ,null 
+0x671c 028484 call set_index_finded_device ,zero 
+0x671d 028485 branch write_device_loop_find0 ,positive 
+0x671e 028486 ifetch 1 ,rega 
+0x671f 028487 increase 1 ,pdata 
+0x6720 028488 istore 1 ,rega 
+:      028489 write_device_loop_find0:
+0x6721 028490 fetcht 2 ,mem_list_item_ptr 
+0x6722 028491 increase nv_data_len ,temp 
+0x6723 028492 storet 2 ,mem_list_item_ptr 
+0x6724 028493 branch write_device_loop_find 
+:      028495 set_index_finded_device:
+0x6725 028496 setarg 0 
+0x6726 028497 istore 1 ,rega 
+0x6727 028498 fetch 1 ,mem_temp_reconn_record 
+0x6728 028499 istore 1 ,contw 
+0x6729 028500 bne rec_3_mode ,set_index_finded_device_ble_mode 
+0x672a 028501 arg mem_link_key ,regb 
+:      028502 set_index_find_device_master_addr:
+0x672b 028503 ifetch 6 ,contr 
+0x672c 028504 istore 8 ,contw 
+0x672d 028505 setarg 0 
+0x672e 028506 istore 8 ,contw 
+0x672f 028507 copy regb ,contr 
+:      028508 store_rec_data_common:
+0x6730 028509 call memcpy16 
+0x6731 028510 force 1 ,null 
+0x6732 028511 rtn 
+:      028513 set_index_finded_device_ble_mode:
+0x6733 028514 beq rec_4_mode_random_resolvable_private_address ,set_index_finded_device_irk 
+0x6734 028515 beq rec_4_mode_random_non_resolvable_private_address ,set_index_finded_device_ediv 
+0x6735 028516 arg mem_le_ltk ,regb 
+0x6736 028517 branch set_index_find_device_master_addr 
+:      028519 set_index_finded_device_irk:
+0x6737 028520 arg mem_le_irk ,contr 
+0x6738 028521 call memcpy16 
+:      028522 store_ble_rec_data_common:
+0x6739 028523 arg mem_le_ltk ,contr 
+0x673a 028524 branch store_rec_data_common 
+:      028526 set_index_finded_device_ediv:
+0x673b 028527 arg mem_le_rand ,contr 
+0x673c 028528 call memcpy16 
+0x673d 028529 branch store_ble_rec_data_common 
+:      028532 nvram_find_addr_from_bd_list:
+0x673e 028533 call disable_user 
+0x673f 028534 fetch 1 ,mem_nv_data_number 
+0x6740 028535 rtn blank 
+0x6741 028536 fetch 2 ,mem_ui_state_map 
+0x6742 028537 bbit1 ui_state_bt_connected ,find_addr_from_bd_list_spp_mode 
+:      028538 find_addr_from_bd_list_ble_mode:
+0x6743 028539 bpatchx patch32_7 ,mem_patch32 
+0x6744 028540 fetch 1 ,mem_le_conn_peer_addr_type 
+0x6745 028541 beq master_public_addr ,find_addr_from_bd_list_static_addr 
+0x6746 028542 fetch 1 ,mem_le_plap + 5 
+0x6747 028543 compare 0xc0 ,pdata ,0xc0 
+0x6748 028544 branch find_addr_from_bd_list_static_addr ,true 
+0x6749 028545 compare 0x40 ,pdata ,0xc0 
+0x674a 028546 branch find_addr_from_bd_list_random_addr ,true 
+0x674b 028547 compare 0x00 ,pdata ,0xc0 
+0x674c 028548 branch find_addr_from_bd_list_random_non_resolvable_private_address ,true 
+:      028549 find_addr_from_bd_list_static_addr:
+0x674d 028550 jam rec_4_mode_static_address ,mem_temp_reconn_record 
+0x674e 028551 fetch 6 ,mem_le_plap 
+0x674f 028552 branch find_addr_from_bd_list_common 
+:      028554 find_addr_from_bd_list_random_non_resolvable_private_address:
+0x6750 028555 jam rec_4_mode_random_non_resolvable_private_address ,mem_temp_reconn_record 
+0x6751 028556 branch find_addr_from_bd_list_common 
+:      028559 find_addr_from_bd_list_random_addr:
+0x6752 028560 jam rec_4_mode_random_resolvable_private_address ,mem_temp_reconn_record 
+0x6753 028561 branch find_addr_from_bd_list_common 
+:      028564 find_addr_from_bd_list_spp_mode:
+0x6754 028565 bpatchx patch33_0 ,mem_patch33 
+0x6755 028566 jam rec_3_mode ,mem_temp_reconn_record 
+0x6756 028567 fetch 6 ,mem_plap 
+:      028568 find_addr_from_bd_list_common:
+0x6757 028569 store 6 ,mem_temp_reconn_record + 1 
+0x6758 028570 fetch 2 ,mem_nv_data_ptr 
+0x6759 028571 ifetcht 1 ,pdata 
+0x675a 028572 pincrease 1 
+0x675b 028573 store 2 ,mem_list_item_ptr 
+0x675c 028574 storet 1 ,mem_select_list_item 
+0x675d 028575 fetch 1 ,mem_nv_data_number 
+0x675e 028576 icopy regc 
+:      028577 nvram_find_addr_from_list:
+0x675f 028578 fetch 2 ,mem_list_item_ptr 
+0x6760 028579 copy pdata ,rega 
+0x6761 028580 call nvram_find_addr_from_list_compare 
+0x6762 028581 rtn user 
+0x6763 028582 fetcht 2 ,mem_list_item_ptr 
+0x6764 028583 increase nv_data_len ,temp 
+0x6765 028584 storet 2 ,mem_list_item_ptr 
+0x6766 028585 increase -1 ,temp 
+0x6767 028586 ifetch 1 ,temp 
+0x6768 028587 store 1 ,mem_select_list_item 
+0x6769 028588 increase -1 ,regc 
+0x676a 028589 nbranch nvram_find_addr_from_list ,zero 
+0x676b 028590 fetch 1 ,mem_nv_data_number 
+0x676c 028591 pincrease decreased_one 
+0x676d 028592 store 1 ,mem_select_list_item 
+0x676e 028593 rtn 
+:      028594 nvram_find_addr_from_list_compare:
+0x676f 028595 fetch 1 ,mem_temp_reconn_record 
+0x6770 028596 bne rec_3_mode ,find_addr_from_list_compare_ble_mode 
+:      028597 find_master_addr_from_list_compare:
+0x6771 028598 arg mem_temp_reconn_record ,regb 
+0x6772 028599 arg 7 ,loopcnt 
+0x6773 028600 call string_compare 
+0x6774 028601 branch enable_user ,zero 
+0x6775 028602 rtn 
+:      028604 find_addr_from_list_compare_ble_mode:
+0x6776 028605 beq rec_4_mode_random_resolvable_private_address ,find_irk_form_list_compare 
+0x6777 028606 beq rec_4_mode_random_non_resolvable_private_address ,find_ediv_form_list_compare 
+0x6778 028607 branch find_master_addr_from_list_compare 
+:      028609 find_irk_form_list_compare:
+0x6779 028610 ifetcht 1 ,rega 
+0x677a 028611 isub temp ,null 
+0x677b 028612 nrtn zero 
+0x677c 028613 arg mem_le_prand ,contw 
+0x677d 028614 arg 16 ,loopcnt 
+0x677e 028615 call clear_mem 
+0x677f 028616 fetch 3 ,mem_le_plap + 3 
+0x6780 028617 store 3 ,mem_le_prand 
+0x6781 028618 call genernate_master_macaddress 
+0x6782 028619 fetch 2 ,mem_le_aes_128 + 13 
+0x6783 028620 byteswap pdata ,pdata 
+0x6784 028621 lshift8 pdata ,temp 
+0x6785 028622 ifetch 1 ,contr 
+0x6786 028623 iadd temp ,pdata 
+0x6787 028624 fetcht 3 ,mem_le_plap 
+0x6788 028625 isub temp ,null 
+0x6789 028626 branch enable_user ,zero 
+0x678a 028627 rtn 
+:      028630 genernate_master_macaddress:
+0x678b 028631 arg mem_le_prand ,contr 
+0x678c 028632 call load_data128 
+0x678d 028634 ifetch 1 ,rega 
+0x678e 028635 call load_regext 
+0x678f 028636 force 0x38 ,aes_ctrl 
+0x6790 028637 force 0x0 ,aes_ctrl 
+0x6791 028638 call wait_aes 
+0x6792 028639 arg mem_le_aes_128 ,contw 
+0x6793 028640 branch store_aes_result 
+:      028642 find_ediv_form_list_compare:
+0x6794 028643 ifetcht 1 ,rega 
+0x6795 028644 isub temp ,null 
+0x6796 028645 nrtn zero 
+0x6797 028646 copy contr ,rega 
+0x6798 028647 add contr ,8 ,regc 
+0x6799 028648 arg mem_le_rand ,regb 
+0x679a 028649 arg 8 ,loopcnt 
+0x679b 028650 call string_compare 
+0x679c 028651 branch enable_user ,zero 
+0x679d 028652 copy regc ,rega 
+0x679e 028653 arg mem_le_irk ,regb 
+0x679f 028654 arg 8 ,loopcnt 
+0x67a0 028655 call string_compare 
+0x67a1 028656 branch enable_user ,zero 
+0x67a2 028657 rtn 
+:      028659 check_nvram:
+0x67a3 028660 fetch 2 ,mem_nv_data_ptr 
+0x67a4 028661 ifetcht 1 ,pdata 
+0x67a5 028662 pincrease nv_data_len 
+0x67a6 028663 ifetch 1 ,pdata 
+0x67a7 028664 isub temp ,null 
+0x67a8 028665 rtn 
+:      028667 init_device_list:
+0x67a9 028668 fetch 1 ,mem_nv_data_number 
+0x67aa 028669 icopy loopcnt 
+0x67ab 028670 fetcht 2 ,mem_nv_data_ptr 
+0x67ac 028671 setarg 0 
+:      028672 init_device_list_loop:
+0x67ad 028673 istore 1 ,temp 
+0x67ae 028674 increase nv_data_len ,temp 
+0x67af 028675 pincrease 1 
+0x67b0 028676 loop init_device_list_loop 
+0x67b1 028677 rtn 
+:      028679 load_device_list:
+0x67b2 028680 bpatchx patch33_1 ,mem_patch33 
+0x67b3 028681 call nvram_find_addr_from_bd_list 
+0x67b4 028682 fetch 1 ,mem_state 
+0x67b5 028683 setflag user ,state_combkey ,pdata 
+0x67b6 028684 store 1 ,mem_state 
+0x67b7 028685 nbranch clear_key_exists ,user 
+0x67b8 028686 add rega ,10 ,contr 
+0x67b9 028688 arg mem_link_key ,contw 
+0x67ba 028689 call memcpy16 
+0x67bb 028690 branch check_link_key_load 
+:      028691 clear_key_exists:
+0x67bc 028692 jam 0 ,mem_link_key_exists 
+0x67bd 028693 rtn 
+:      028695 load_device_list_mode_4:
+0x67be 028696 fetch 9 ,mem_le_ediv 
+0x67bf 028697 branch clear_ltk_exists ,blank 
+0x67c0 028698 call nvram_find_addr_from_bd_list 
+0x67c1 028699 nbranch clear_ltk_exists ,user 
+0x67c2 028700 fetch 2 ,mem_list_item_ptr 
+0x67c3 028701 add pdata ,1 ,contr 
+0x67c4 028702 arg mem_le_irk ,contw 
+0x67c5 028703 call memcpy16 
+0x67c6 028704 arg mem_le_ltk ,contw 
+0x67c7 028705 call memcpy16 
+0x67c8 028706 jam 1 ,mem_ltk_exists 
+0x67c9 028707 rtn 
+:      028709 clear_ltk_exists:
+0x67ca 028710 jam 0 ,mem_ltk_exists 
+0x67cb 028711 rtn 
+:      028714 eeprom_store_le_reconn_info:
+0x67cc 028715 fetch 6 ,mem_le_plap 
+0x67cd 028716 store 6 ,mem_temp_lap 
+0x67ce 028717 jam rec_4_mode ,mem_record_bt_mode 
+0x67cf 028718 branch eeprom_store_reconn_info 
+:      028719 eeprom_store_bd_reconn_info:
+0x67d0 028720 fetch 6 ,mem_plap 
+0x67d1 028721 store 6 ,mem_temp_lap 
+0x67d2 028722 jam rec_3_mode ,mem_record_bt_mode 
+:      028723 eeprom_store_reconn_info:
+0x67d3 028724 fetch 1 ,mem_device_option 
+0x67d4 028725 beq dvc_op_module ,check_51cmd_update_device_record 
+0x67d5 028726 bbit1 dvc_op_mouse ,mouse_store_remote_bdaddr 
+0x67d6 028727 rtn 
+:      028730 check_link_key_load:
+0x67d7 028731 fetch 8 ,mem_link_key 
+0x67d8 028732 fetcht 8 ,mem_link_key + 8 
+0x67d9 028733 ior temp ,pdata 
+0x67da 028734 rtn blank 
+0x67db 028735 jam 1 ,mem_link_key_exists 
+0x67dc 028736 rtn 
+:      028743 gpio_set_wake_by_current_state:
+0x67dd 028744 bpatchx patch33_2 ,mem_patch33 
+0x67de 028745 set1 7 ,temp 
+0x67df 028746 call gpio_get_bit 
+0x67e0 028747 nsetflag true ,7 ,temp 
+:      028752 gpio_set_wake:
+0x67e1 028753 bpatchx patch33_3 ,mem_patch33 
+0x67e2 028754 sub temp ,ui_button_gpio_disable ,null 
+0x67e3 028755 rtn zero 
+0x67e4 028756 isolate0 7 ,temp 
+0x67e5 028757 and temp ,0x1f ,queue 
+0x67e6 028758 fetch 4 ,mem_gpio_wakeup_low 
+0x67e7 028759 qsetflag true ,pdata 
+0x67e8 028760 store 4 ,mem_gpio_wakeup_low 
+0x67e9 028761 fetch 4 ,mem_gpio_wakeup_high 
+0x67ea 028762 nqsetflag true ,pdata 
+0x67eb 028763 store 4 ,mem_gpio_wakeup_high 
+0x67ec 028764 rtn 
+:      028767 gpio_clr_wake:
+0x67ed 028768 bpatchx patch33_4 ,mem_patch33 
+0x67ee 028769 sub temp ,ui_button_gpio_disable ,null 
+0x67ef 028770 rtn zero 
+0x67f0 028771 isolate0 7 ,temp 
+0x67f1 028772 and temp ,0x1f ,queue 
+0x67f2 028773 fetch 4 ,mem_gpio_wakeup_low 
+0x67f3 028774 qset0 pdata 
+0x67f4 028775 store 4 ,mem_gpio_wakeup_low 
+0x67f5 028776 fetch 4 ,mem_gpio_wakeup_high 
+0x67f6 028777 qset0 pdata 
+0x67f7 028778 store 4 ,mem_gpio_wakeup_high 
+0x67f8 028779 rtn 
+:      028782 gpio_config_input_nowake:
+0x67f9 028783 call gpio_clr_wake 
+0x67fa 028784 branch gpio_config_input_without_wake 
+:      028787 gpio_config_input:
+0x67fb 028788 sub temp ,ui_button_gpio_disable ,null 
+0x67fc 028789 rtn zero 
+0x67fd 028790 ncall gpio_set_wake ,wake 
+:      028792 gpio_config_input_without_wake:
+0x67fe 028793 arg core_gpio_pd0 ,contw 
+0x67ff 028794 call gpio_set_bit 
+0x6800 028795 setflip gpio_active_bit ,temp 
+0x6801 028796 arg core_gpio_pu0 ,contw 
+0x6802 028797 call gpio_set_bit 
+0x6803 028798 set0 gpio_active_bit ,temp 
+0x6804 028799 arg core_gpio_oe0 ,contw 
+0x6805 028800 branch gpio_set_bit 
+:      028803 gpio_set_high_impedance:
+0x6806 028804 arg core_gpio_pd0 ,contw 
+0x6807 028805 call gpio_set_bit 
+0x6808 028806 set0 gpio_active_bit ,temp 
+0x6809 028807 arg core_gpio_pu0 ,contw 
+0x680a 028808 call gpio_set_bit 
+0x680b 028809 set0 gpio_active_bit ,temp 
+0x680c 028810 arg core_gpio_oe0 ,contw 
+0x680d 028811 branch gpio_set_bit 
+:      028815 gpio_config_output:
+0x680e 028816 sub temp ,ui_button_gpio_disable ,null 
+0x680f 028817 rtn zero 
+0x6810 028818 setflip gpio_active_bit ,temp 
+0x6811 028819 call gpio_out 
+:      028820 gpio_config_output0:
+0x6812 028821 set1 gpio_active_bit ,temp 
+0x6813 028822 arg core_gpio_oe0 ,contw 
+0x6814 028823 branch gpio_set_bit 
+:      028825 gpio_common:
+0x6815 028826 and temp ,0x07 ,queue 
+0x6816 028827 rshift3 temp ,pdata 
+0x6817 028828 and_into 3 ,pdata 
+0x6818 028829 iadd contw ,contw 
+0x6819 028830 ifetch 1 ,contw 
+0x681a 028831 rtn 
+:      028833 gpio_check_active:
+0x681b 028834 arg core_gpio_out0 ,contw 
+0x681c 028835 branch get_bit_common 
+:      028839 gpio_get_bit:
+0x681d 028840 arg core_gpio_in ,contw 
+:      028841 get_bit_common:
+0x681e 028842 call gpio_common 
+0x681f 028843 isolate1 gpio_active_bit ,temp 
+0x6820 028844 branch gpio_get_bit_reverse ,true 
+0x6821 028845 qisolate0 pdata 
+0x6822 028846 rtn 
+:      028847 gpio_get_bit_reverse:
+0x6823 028848 qisolate1 pdata 
+0x6824 028849 rtn 
+:      028851 gpio_out_inactive:
+0x6825 028852 sub temp ,ui_button_gpio_disable ,null 
+0x6826 028853 rtn zero 
+0x6827 028854 isolate1 7 ,null 
+0x6828 028855 branch gpio_out_flag 
+:      028857 gpio_out_active:
+0x6829 028858 sub temp ,ui_button_gpio_disable ,null 
+0x682a 028859 rtn zero 
+0x682b 028860 isolate0 7 ,null 
+:      028863 gpio_out_flag:
+0x682c 028864 setarg 0 
+0x682d 028865 nsetflag true ,gpio_active_bit ,pdata 
+0x682e 028866 ixor temp ,temp 
+:      028869 gpio_out:
+0x682f 028870 arg core_gpio_out0 ,contw 
+:      028873 gpio_set_bit:
+0x6830 028874 call gpio_common 
+0x6831 028875 isolate1 gpio_active_bit ,temp 
+0x6832 028876 qsetflag true ,pdata 
+0x6833 028877 istore 1 ,contw 
+0x6834 028878 rtn 
+:      028880 gpio_set_before_lpm_common:
+0x6835 028881 arg -1 ,rega 
+0x6836 028882 hfetch 1 ,core_gpio_sel1 
+0x6837 028883 compare 0x02 ,pdata ,0x03 
+0x6838 028884 call neglact4_from_23_pin ,true 
+0x6839 028886 compare 0x01 ,pdata ,0x03 
+0x683a 028887 call neglact2_form_25_pin ,true 
+0x683b 028889 compare 0x03 ,pdata ,0x03 
+0x683c 028890 call neglact2_form_25_pin ,true 
+0x683d 028892 isolate1 2 ,pdata 
+0x683e 028893 call neglect2_from_6_pin ,true 
+0x683f 028895 isolate1 3 ,pdata 
+0x6840 028896 call neglect4_from_9_pin ,true 
+0x6841 028898 isolate1 4 ,pdata 
+0x6842 028899 call neglact2_form_30_pin ,true 
+0x6843 028901 isolate1 6 ,pdata 
+0x6844 028902 nsetflag true ,04 ,rega 
+0x6845 028904 isolate1 7 ,pdata 
+0x6846 028905 nsetflag true ,05 ,rega 
+0x6847 028907 hfetch 1 ,core_gpio_sel2 
+0x6848 028908 isolate1 0 ,pdata 
+0x6849 028909 nsetflag true ,27 ,rega 
+0x684a 028910 isolate1 1 ,pdata 
+0x684b 028911 nsetflag true ,28 ,rega 
+0x684c 028912 isolate1 2 ,pdata 
+0x684d 028913 nsetflag true ,03 ,rega 
+0x684e 028914 isolate1 3 ,pdata 
+0x684f 028915 nsetflag true ,08 ,rega 
+0x6850 028916 isolate1 4 ,pdata 
+0x6851 028917 nsetflag true ,20 ,rega 
+0x6852 028918 isolate1 5 ,pdata 
+0x6853 028919 nsetflag true ,21 ,rega 
+0x6854 028920 isolate1 6 ,pdata 
+0x6855 028921 nsetflag true ,22 ,rega 
+0x6856 028922 isolate1 7 ,pdata 
+0x6857 028923 nsetflag true ,23 ,rega 
+0x6858 028925 hfetch 1 ,core_gpio_sel 
+0x6859 028926 isolate1 0 ,pdata 
+0x685a 028927 nsetflag true ,05 ,rega 
+0x685b 028928 isolate1 1 ,pdata 
+0x685c 028929 nsetflag true ,06 ,rega 
+0x685d 028930 isolate1 2 ,pdata 
+0x685e 028931 nsetflag true ,07 ,rega 
+0x685f 028932 isolate1 3 ,pdata 
+0x6860 028933 nsetflag true ,18 ,rega 
+0x6861 028934 isolate1 4 ,pdata 
+0x6862 028935 nsetflag true ,19 ,rega 
+0x6863 028936 isolate1 5 ,pdata 
+0x6864 028937 nsetflag true ,20 ,rega 
+0x6865 028938 isolate1 6 ,pdata 
+0x6866 028939 nsetflag true ,21 ,rega 
+0x6867 028940 isolate1 7 ,pdata 
+0x6868 028941 nsetflag true ,22 ,rega 
+0x6869 028943 hfetch 1 ,core_uart_ctrl 
+0x686a 028944 isolate1 4 ,pdata 
+0x686b 028945 call neglact2_form_2_pin ,true 
+0x686c 028946 bpatchx patch33_5 ,mem_patch33 
+0x686d 028948 hfetch 4 ,core_gpio_pu0 
+0x686e 028949 hfetcht 4 ,core_gpio_pd0 
+0x686f 028950 ior temp ,pdata 
+0x6870 028951 invert pdata ,pdata 
+0x6871 028952 iand rega ,pdata 
+0x6872 028954 hstore 4 ,core_gpio_oe0 
+0x6873 028955 rtn 
+:      028958 neglect2_from_6_pin:
+0x6874 028959 arg 6 ,queue 
+0x6875 028960 branch neglect_2_pin 
+:      028961 neglect4_from_9_pin:
+0x6876 028962 arg 9 ,queue 
+0x6877 028963 branch neglact_4_pin 
+:      028964 neglact4_from_23_pin:
+0x6878 028965 arg 23 ,queue 
+0x6879 028966 branch neglact_4_pin 
+:      028967 neglact2_form_25_pin:
+0x687a 028968 arg 25 ,queue 
+0x687b 028969 branch neglect_2_pin 
+:      028970 neglact2_form_30_pin:
+0x687c 028971 arg 30 ,queue 
+0x687d 028972 branch neglect_2_pin 
+:      028973 neglact2_form_2_pin:
+0x687e 028974 arg 2 ,queue 
+0x687f 028975 branch neglect_2_pin 
+:      028976 neglact_1_pin:
+0x6880 028977 arg 1 ,loopcnt 
+0x6881 028978 branch neglect_pin_loop 
+:      028979 neglact_4_pin:
+0x6882 028980 arg 4 ,loopcnt 
+0x6883 028981 branch neglect_pin_loop 
+:      028982 neglect_2_pin:
+0x6884 028983 arg 2 ,loopcnt 
+:      028984 neglect_pin_loop:
+0x6885 028985 qset0 rega 
+0x6886 028986 increase 1 ,queue 
+0x6887 028987 loop neglect_pin_loop 
+0x6888 028988 rtn 
+:      028996 gpio_cfg_uart_tx_output:
+0x6889 028997 call gpio_uart2gpio 
+0x688a 028998 arg uart_wakeup_tx ,temp 
+0x688b 028999 branch gpio_config_output 
+:      029001 gpio_pu_uart_tx:
+0x688c 029002 call gpio_cfg_uart_tx_output 
+0x688d 029003 arg uart_wakeup_tx ,temp 
+0x688e 029004 branch gpio_out_inactive 
+:      029008 gpio_rx_config_input_with_pu:
+0x688f 029009 call gpio_uart2gpio 
+0x6890 029010 hfetch 1 ,core_gpio_pu0 
+0x6891 029011 set1 uart_wakeup_rx ,pdata 
+0x6892 029012 hstore 1 ,core_gpio_pu0 
+0x6893 029013 arg uart_wakeup_rx ,temp 
+0x6894 029014 branch gpio_config_input 
+:      029016 gpio_uart2gpio:
+0x6895 029017 hfetch 1 ,core_gpio_sel1 
+0x6896 029018 and_into 0xfb ,pdata 
+0x6897 029019 hstore 1 ,core_gpio_sel1 
+0x6898 029020 rtn 
+:      029022 gpio_check_uart_state:
+0x6899 029023 hfetch 1 ,core_gpio_sel1 
+0x689a 029024 isolate1 2 ,pdata 
+0x689b 029025 rtn 
+:      029027 load_chip_option:
+0x689c 029028 call otp_enable_chgpump 
+0x689d 029029 setarg otp_chip_functions 
+0x689e 029030 arg mem_chip_functions ,rega 
+0x689f 029031 arg 0x02 ,temp 
+0x68a0 029032 call otpd_read_data 
+0x68a1 029033 branch otp_disable_chgpump 
+:      029036 load_adc_init:
+0x68a2 029037 call otp_enable_chgpump 
+0x68a3 029038 setarg otp_adc_io_0_5v_addr 
+0x68a4 029039 arg mem_0_5_adc_io_data ,rega 
+0x68a5 029040 arg 14 ,temp 
+0x68a6 029041 call otpd_read_data 
+0x68a7 029042 branch otp_disable_chgpump 
+:      029046 adc_init_data:
+0x68a8 029047 bpatchx patch33_6 ,mem_patch33 
+0x68a9 029049 call load_adc_init 
+0x68aa 029051 fetch 1 ,mem_adc_config_flag 
+0x68ab 029052 beq adc_config_vinlpm ,adc_init_data_vinlpm 
+0x68ac 029053 beq adc_config_hvin ,adc_init_data_hvin 
+0x68ad 029054 beq adc_config_gpio ,adc_init_data_io 
+0x68ae 029055 rtn 
+:      029057 adc_init_data_vinlpm:
+0x68af 029058 fetcht 2 ,mem_otp_adc_flag 
+0x68b0 029059 setarg otp_adc_flag 
+0x68b1 029060 isub temp ,null 
+0x68b2 029061 branch adc_check_data_vinlpm ,zero 
+0x68b3 029062 setarg 0x4dfa 
+0x68b4 029063 store 2 ,mem_3v_adc_vinlpm_data 
+0x68b5 029064 setarg 0x4894 
+0x68b6 029065 store 2 ,mem_2v_adc_vinlpm_data 
+0x68b7 029066 branch set_vdd_reference_voltage_1v 
+:      029068 adc_check_data_vinlpm:
+0x68b8 029069 fetch 2 ,mem_3v_adc_vinlpm_data 
+0x68b9 029070 nbranch adc_check_2v_vinlpm ,blank 
+0x68ba 029071 setarg 0x4dfa 
+0x68bb 029072 store 2 ,mem_3v_adc_vinlpm_data 
+:      029073 adc_check_2v_vinlpm:
+0x68bc 029074 fetch 2 ,mem_2v_adc_vinlpm_data 
+0x68bd 029075 nbranch set_vdd_reference_voltage_1v ,blank 
+0x68be 029076 setarg 0x4894 
+0x68bf 029077 store 2 ,mem_2v_adc_vinlpm_data 
+:      029078 set_vdd_reference_voltage_1v:
+0x68c0 029079 setarg 100 
+0x68c1 029080 store 2 ,mem_reference_voltage 
+0x68c2 029081 rtn 
+:      029083 adc_init_data_hvin:
+0x68c3 029084 fetcht 2 ,mem_otp_adc_flag 
+0x68c4 029085 setarg otp_adc_flag 
+0x68c5 029086 isub temp ,null 
+0x68c6 029087 branch adc_check_data_hvin ,zero 
+0x68c7 029088 setarg 0x5932 
+0x68c8 029089 store 2 ,mem_5v_adc_hvin_data 
+0x68c9 029090 setarg 0x4323 
+0x68ca 029091 store 2 ,mem_1v_adc_hvin_data 
+0x68cb 029092 branch set_vdd_reference_voltage_4v 
+:      029094 adc_check_data_hvin:
+0x68cc 029095 fetch 2 ,mem_5v_adc_hvin_data 
+0x68cd 029096 nbranch adc_check_1v_hvin ,blank 
+0x68ce 029097 setarg 0x5932 
+0x68cf 029098 store 2 ,mem_5v_adc_hvin_data 
+:      029099 adc_check_1v_hvin:
+0x68d0 029100 fetch 2 ,mem_1v_adc_hvin_data 
+0x68d1 029101 nbranch set_vdd_reference_voltage_4v ,blank 
+0x68d2 029102 setarg 0x4323 
+0x68d3 029103 store 2 ,mem_1v_adc_hvin_data 
+:      029104 set_vdd_reference_voltage_4v:
+0x68d4 029105 setarg 400 
+0x68d5 029106 store 2 ,mem_reference_voltage 
+0x68d6 029107 rtn 
+:      029109 adc_init_data_io:
+0x68d7 029110 fetcht 2 ,mem_otp_adc_flag 
+0x68d8 029111 setarg otp_adc_flag 
+0x68d9 029112 isub temp ,null 
+0x68da 029113 branch adc_check_data_io ,zero 
+0x68db 029114 setarg 0x6946 
+0x68dc 029115 store 2 ,mem_1v_adc_io_data 
+0x68dd 029116 setarg 0x5377 
+0x68de 029117 store 2 ,mem_0_5_adc_io_data 
+0x68df 029118 branch set_vdd_reference_voltage_0_5v 
+:      029120 adc_check_data_io:
+0x68e0 029121 fetch 2 ,mem_1v_adc_io_data 
+0x68e1 029122 nbranch adc_check_0_5v_io ,blank 
+0x68e2 029123 setarg 0x6946 
+0x68e3 029124 store 2 ,mem_1v_adc_io_data 
+:      029125 adc_check_0_5v_io:
+0x68e4 029126 fetch 2 ,mem_0_5_adc_io_data 
+0x68e5 029127 nbranch set_vdd_reference_voltage_0_5v ,blank 
+0x68e6 029128 setarg 0x5377 
+0x68e7 029129 store 2 ,mem_0_5_adc_io_data 
+:      029130 set_vdd_reference_voltage_0_5v:
+0x68e8 029131 setarg 50 
+0x68e9 029132 store 2 ,mem_reference_voltage 
+0x68ea 029133 rtn 
+:      029136 adc_set_mode:
+0x68eb 029137 fetch 1 ,mem_adc_config_flag 
+0x68ec 029138 beq adc_config_vinlpm ,adc_check_vinlpm 
+0x68ed 029139 beq adc_config_hvin ,adc_check_hvin 
+0x68ee 029140 beq adc_config_gpio ,adc_check_gpio 
+0x68ef 029141 rtn 
+:      029142 adc_check_vinlpm:
+0x68f0 029143 jam 0xbf ,rf_adc_mode 
+0x68f1 029144 branch read_adc 
+:      029145 adc_check_hvin:
+0x68f2 029146 jam 0xaf ,rf_adc_mode 
+0x68f3 029147 branch read_adc 
+:      029148 adc_check_gpio:
+0x68f4 029149 jam 0x8f ,rf_adc_mode 
+0x68f5 029150 fetch 1 ,mem_adc_channel 
+0x68f6 029151 hstore 1 ,rf_adc_ch 
+0x68f7 029152 branch read_adc 
+:      029153 read_adc:
+0x68f8 029154 bpatchx patch33_7 ,mem_patch33 
+0x68f9 029155 hfetch 1 ,core_uart_baud + 1 
+0x68fa 029156 set1 7 ,pdata 
+0x68fb 029157 hstore 1 ,core_uart_baud + 1 
+0x68fc 029158 hfetch 1 ,rf_adc_ch 
+0x68fd 029159 or_into 0x30 ,pdata 
+0x68fe 029160 hstore 1 ,rf_adc_ch 
+0x68ff 029161 jam 0x7c ,rfen_adc 
+0x6900 029162 jam 0xaa ,rf_adc_gc 
+0x6901 029163 nop 5000 
+0x6902 029164 hfetcht 2 ,core_adc_sum 
+0x6903 029165 hfetch 1 ,core_uart_baud + 1 
+0x6904 029166 set0 7 ,pdata 
+0x6905 029167 hstore 1 ,core_uart_baud + 1 
+0x6906 029168 storet 2 ,mem_adc_current_value 
+0x6907 029169 rtn 
+:      029171 vdd_calculate_by_mode:
+0x6908 029172 bpatchx patch34_0 ,mem_patch34 
+0x6909 029173 fetch 1 ,mem_adc_config_flag 
+0x690a 029174 beq adc_config_vinlpm ,vdd_calculate_vinlpm 
+0x690b 029175 beq adc_config_hvin ,vdd_calculate_hvin 
+0x690c 029176 beq adc_config_gpio ,vdd_calculate_io 
+0x690d 029177 rtn 
+:      029179 vdd_calculate_vinlpm:
+0x690e 029180 fetch 2 ,mem_3v_adc_vinlpm_data 
+0x690f 029181 fetcht 2 ,mem_2v_adc_vinlpm_data 
+0x6910 029182 arg 200 ,regc 
+0x6911 029183 branch vdd_calculate 
+:      029185 vdd_calculate_hvin:
+0x6912 029186 fetch 2 ,mem_5v_adc_hvin_data 
+0x6913 029187 fetcht 2 ,mem_1v_adc_hvin_data 
+0x6914 029188 arg 100 ,regc 
+0x6915 029189 branch vdd_calculate 
+:      029191 vdd_calculate_io:
+0x6916 029192 fetch 2 ,mem_1v_adc_io_data 
+0x6917 029193 fetcht 2 ,mem_0_5_adc_io_data 
+0x6918 029194 arg 50 ,regc 
+0x6919 029195 branch vdd_calculate 
+:      029197 vdd_calculate:
+0x691a 029198 isub temp ,rega 
+0x691b 029199 fetch 2 ,mem_adc_current_value 
+0x691c 029200 isub temp ,pdata 
+0x691d 029201 nbranch vdd_calculate1 ,positive 
+0x691e 029202 fetcht 2 ,mem_reference_voltage 
+0x691f 029203 imul32 temp ,regb 
+0x6920 029204 copy regc ,pdata 
+0x6921 029205 imul32 rega ,pdata 
+0x6922 029206 iadd regb ,pdata 
+:      029207 vdd_calculate2:
+0x6923 029208 idiv rega 
+0x6924 029209 call wait_div_end 
+0x6925 029210 quotient pdata 
+0x6926 029211 rtn 
+:      029213 vdd_calculate1:
+0x6927 029214 copy temp ,pdata 
+0x6928 029215 fetcht 2 ,mem_adc_current_value 
+0x6929 029216 isub temp ,pdata 
+0x692a 029217 fetcht 2 ,mem_reference_voltage 
+0x692b 029218 imul32 temp ,regb 
+0x692c 029219 copy regc ,pdata 
+0x692d 029220 imul32 rega ,pdata 
+0x692e 029221 isub regb ,pdata 
+0x692f 029222 branch vdd_calculate2 
+:      029233 adc_bat_percent_lowpower_out:
+0x6930 029234 ifetch 8 ,rega 
+0x6931 029235 store 8 ,mem_pdatatemp 
+0x6932 029236 fetch 2 ,mem_pdatatemp 
+0x6933 029237 fetcht 2 ,mem_pdatatemp + 2 
+0x6934 029238 isub temp ,rega 
+0x6935 029239 fetch 2 ,mem_pdatatemp + 6 
+0x6936 029240 isub temp ,regb 
+0x6937 029241 fetcht 2 ,mem_pdatatemp + 4 
+0x6938 029242 isub temp ,null 
+0x6939 029243 ncall adc_set_low_power_flag ,positive 
+0x693a 029244 mul32 regb ,100 ,pdata 
+0x693b 029245 idiv rega 
+0x693c 029246 call wait_div_end 
+0x693d 029247 quotient pdata 
+0x693e 029248 call adc_set_no_power_flag ,blank 
+0x693f 029249 rtn 
+:      029250 adc_set_low_power_flag:
+0x6940 029251 fetch 1 ,mem_adc_power_flag 
+0x6941 029252 set1 0 ,pdata 
+0x6942 029253 store 1 ,mem_adc_power_flag 
+0x6943 029254 rtn 
+:      029255 adc_set_no_power_flag:
+0x6944 029256 fetcht 1 ,mem_adc_power_flag 
+0x6945 029257 set1 1 ,temp 
+0x6946 029258 storet 1 ,mem_adc_power_flag 
+0x6947 029259 rtn 
+:      029264 keyscan_key_init:
+0x6948 029265 fetch 2 ,mem_key_num_ptr 
+0x6949 029266 ifetch 1 ,pdata 
+:      029267 keyscan_key_init_next:
+0x694a 029268 rtn blank 
+0x694b 029269 copy pdata ,loopcnt 
+0x694c 029271 fetch 2 ,mem_keyscan_ptr 
+0x694d 029272 increase 3 ,pdata 
+0x694e 029273 copy pdata ,rega 
+:      029274 keyscan_key_init_lp1:
+0x694f 029275 ifetcht 1 ,rega 
+0x6950 029276 call gpio_config_input 
+0x6951 029277 increase key_conf_struct_len ,rega 
+0x6952 029278 loop keyscan_key_init_lp1 
+:      029279 keyscan_key_init_end:
+0x6953 029280 rtn 
+:      029282 keyscan_scan_key:
+0x6954 029283 fetch 2 ,mem_keyscan_ptr 
+0x6955 029284 increase 3 ,pdata 
+0x6956 029285 copy pdata ,rega 
+0x6957 029287 force 0 ,regb 
+0x6958 029288 jam 0 ,mem_key_value_temp 
+:      029289 keyscan_scan_key_lp1:
+0x6959 029290 ifetcht 1 ,rega 
+0x695a 029291 call gpio_get_bit 
+0x695b 029292 bpatchx patch34_1 ,mem_patch34 
+0x695c 029293 fetch 2 ,mem_key_value_temp 
+0x695d 029294 copy regb ,queue 
+0x695e 029295 qsetflag true ,pdata 
+0x695f 029296 store 2 ,mem_key_value_temp 
+0x6960 029297 increase key_conf_struct_len ,rega 
+0x6961 029298 increase 1 ,regb 
+0x6962 029299 fetch 2 ,mem_key_num_ptr 
+0x6963 029300 ifetch 1 ,pdata 
+:      029301 keyscan_scan_key_lp1_next:
+0x6964 029302 ixor regb ,null 
+0x6965 029303 nbranch keyscan_scan_key_lp1 ,zero 
+0x6966 029304 fetch 2 ,mem_key_value_temp 
+0x6967 029305 fetcht 2 ,mem_key_value 
+0x6968 029306 ixor temp ,null 
+0x6969 029307 rtn zero 
+0x696a 029308 enable user 
+0x696b 029309 rtn 
+:      029311 keyscan_process_lpm_before:
+0x696c 029312 fetch 2 ,mem_key_num_ptr 
+0x696d 029313 ifetch 1 ,pdata 
+:      029314 keyscan_process_lpm_before_next:
+0x696e 029315 rtn blank 
+0x696f 029316 copy pdata ,loopcnt 
+0x6970 029317 fetch 2 ,mem_keyscan_ptr 
+0x6971 029318 increase 3 ,pdata 
+0x6972 029319 copy pdata ,rega 
+:      029320 keyscan_process_lpm_before_lp1:
+0x6973 029321 ifetcht 1 ,rega 
+0x6974 029322 call gpio_set_wake_by_current_state 
+0x6975 029323 increase key_conf_struct_len ,rega 
+0x6976 029324 loop keyscan_process_lpm_before_lp1 
+:      029325 keyscan_process_lpm_before_end:
+0x6977 029326 rtn 
+:      029328 keyscan_key_process:
+0x6978 029329 arg key_scan_timer ,queue 
+0x6979 029330 call timer_check 
+0x697a 029331 nrtn blank 
+0x697b 029332 setarg 0x20 
+0x697c 029333 arg key_scan_timer ,queue 
+0x697d 029334 call timer_init 
+0x697e 029335 disable user 
+0x697f 029336 call keyscan_process_lpm_before 
+0x6980 029337 bpatchx patch34_2 ,mem_patch34 
+0x6981 029338 fetch 2 ,mem_key_num_ptr 
+0x6982 029339 ifetch 1 ,pdata 
+:      029340 keyscan_key_process_next:
+0x6983 029341 rtn blank 
+0x6984 029342 call keyscan_scan_key 
+0x6985 029343 nbranch lpm_button_clean_wake_lock ,user 
+0x6986 029344 call lpm_button_get_wake_lock 
+0x6987 029345 disable user 
+0x6988 029346 fetch 2 ,mem_key_value_temp 
+0x6989 029347 store 2 ,mem_key_value_temp4 
+0x698a 029348 jam 0 ,mem_key_value_temp6 
+0x698b 029349 force 0 ,queue 
+:      029350 keyscan_key_lp1:
+0x698c 029351 fetch 2 ,mem_key_value 
+0x698d 029352 rshift pdata ,temp 
+0x698e 029353 storet 2 ,mem_key_value 
+0x698f 029354 and pdata ,0x01 ,pdata 
+0x6990 029355 fetcht 2 ,mem_key_value_temp4 
+0x6991 029356 and temp ,0x01 ,rega 
+0x6992 029357 rshift temp ,temp 
+0x6993 029358 storet 2 ,mem_key_value_temp4 
+0x6994 029359 ixor rega ,null 
+0x6995 029360 ncall keyscan_send_key_data ,zero 
+0x6996 029361 fetch 2 ,mem_key_num_ptr 
+0x6997 029362 ifetch 1 ,pdata 
+:      029363 keyscan_key_lp1_next:
+0x6998 029364 fetcht 1 ,mem_key_value_temp6 
+0x6999 029365 increase 1 ,temp 
+0x699a 029366 storet 1 ,mem_key_value_temp6 
+0x699b 029367 copy temp ,queue 
+0x699c 029368 ixor queue ,null 
+0x699d 029369 nbranch keyscan_key_lp1 ,zero 
+0x699e 029370 fetch 2 ,mem_key_value_temp 
+0x699f 029371 store 2 ,mem_key_value 
+0x69a0 029372 rtn 
+:      029373 keyscan_send_key_data:
+0x69a1 029374 bpatchx patch34_3 ,mem_patch34 
+0x69a2 029375 fetch 2 ,mem_keyscan_ptr 
+0x69a3 029376 increase 1 ,pdata 
+0x69a4 029377 ifetch 2 ,pdata 
+0x69a5 029378 branch callback_func 
+:      029389 pwm_init:
+0x69a6 029390 hfetch 1 ,core_clksel 
+0x69a7 029391 ior rega ,pdata 
+0x69a8 029392 hstore 1 ,core_clksel 
+0x69a9 029393 hfetch 2 ,core_clkoff 
+0x69aa 029394 set0 clock_off_pwm ,pdata 
+0x69ab 029395 hstore 2 ,core_clkoff 
+:      029396 delay_nop100:
+0x69ac 029397 nop 100 
+0x69ad 029398 rtn 
+:      029409 pwm_out_set:
+0x69ae 029410 fetcht 3 ,mem_pdatatemp + 2 
+0x69af 029411 setarg pwm_12mhz 
+0x69b0 029412 idiv temp 
+0x69b1 029413 call wait_div_end 
+0x69b2 029414 quotient temp 
+0x69b3 029415 fetch 1 ,mem_pdatatemp + 5 
+0x69b4 029416 imul32 temp ,pdata 
+0x69b5 029417 div pdata ,100 
+0x69b6 029418 call wait_div_end 
+0x69b7 029419 quotient rega 
+0x69b8 029420 copy temp ,pdata 
+0x69b9 029421 isub rega ,regb 
+0x69ba 029422 fetch 1 ,mem_pdatatemp + 1 
+0x69bb 029423 call pwm_duty_cycle_set 
+0x69bc 029424 fetch 1 ,mem_pdatatemp 
+0x69bd 029425 branch pwm_enable 
+:      029428 pwm_duty_cycle_set:
+0x69be 029429 beq 0 ,pwm_pwm0_duty_set 
+0x69bf 029430 beq 1 ,pwm_pwm1_duty_set 
+0x69c0 029431 beq 2 ,pwm_pwm2_duty_set 
+0x69c1 029432 beq 3 ,pwm_pwm3_duty_set 
+0x69c2 029433 beq 4 ,pwm_pwm4_duty_set 
+0x69c3 029434 beq 5 ,pwm_pwm5_duty_set 
+:      029435 pwm_pwm0_duty_set:
+0x69c4 029436 arg core_pwm_pcnt0 ,contw 
+0x69c5 029437 branch pwm_set_pncnt 
+:      029438 pwm_pwm1_duty_set:
+0x69c6 029439 arg core_pwm_pcnt1 ,contw 
+0x69c7 029440 branch pwm_set_pncnt 
+:      029441 pwm_pwm2_duty_set:
+0x69c8 029442 arg core_pwm_pcnt2 ,contw 
+0x69c9 029443 branch pwm_set_pncnt 
+:      029444 pwm_pwm3_duty_set:
+0x69ca 029445 arg core_pwm_pcnt3 ,contw 
+0x69cb 029446 branch pwm_set_pncnt 
+:      029447 pwm_pwm4_duty_set:
+0x69cc 029448 arg core_pwm_pcnt4 ,contw 
+0x69cd 029449 branch pwm_set_pncnt 
+:      029450 pwm_pwm5_duty_set:
+0x69ce 029451 arg core_pwm_pcnt5 ,contw 
+0x69cf 029452 branch pwm_set_pncnt 
+:      029453 pwm_set_pncnt:
+0x69d0 029454 copy rega ,pdata 
+0x69d1 029455 istore 2 ,contw 
+0x69d2 029456 copy regb ,pdata 
+0x69d3 029457 istore 2 ,contw 
+0x69d4 029458 rtn 
+:      029462 pwm_enable:
+0x69d5 029463 enable user 
+0x69d6 029464 branch pwm_gpio_set 
+:      029465 pwm_disable:
+0x69d7 029466 disable user 
+:      029467 pwm_gpio_set:
+0x69d8 029468 beq 4 ,pwm_gpio4_set 
+0x69d9 029469 beq 5 ,pwm_gpio5_set 
+0x69da 029470 beq 27 ,pwm_gpio27_set 
+0x69db 029471 beq 28 ,pwm_gpio28_set 
+0x69dc 029472 beq 3 ,pwm_gpio3_set 
+0x69dd 029473 beq 8 ,pwm_gpio8_set 
+0x69de 029474 beq 20 ,pwm_gpio20_set 
+0x69df 029475 beq 21 ,pwm_gpio21_set 
+0x69e0 029476 beq 22 ,pwm_gpio22_set 
+0x69e1 029477 beq 23 ,pwm_gpio23_set 
+0x69e2 029478 rtn 
+:      029481 pwm_gpio4_set:
+0x69e3 029482 arg 6 ,queue 
+0x69e4 029483 branch pwm_one_set_select 
+:      029484 pwm_gpio5_set:
+0x69e5 029485 arg 7 ,queue 
+0x69e6 029486 branch pwm_one_set_select 
+:      029487 pwm_gpio27_set:
+0x69e7 029488 arg 8 ,queue 
+0x69e8 029489 branch pwm_one_set_select 
+:      029490 pwm_gpio28_set:
+0x69e9 029491 arg 9 ,queue 
+0x69ea 029492 branch pwm_one_set_select 
+:      029493 pwm_gpio3_set:
+0x69eb 029494 arg 10 ,queue 
+0x69ec 029495 branch pwm_one_set_select 
+:      029496 pwm_gpio8_set:
+0x69ed 029497 arg 11 ,queue 
+0x69ee 029498 branch pwm_one_set_select 
+:      029499 pwm_gpio20_set:
+0x69ef 029500 arg 12 ,queue 
+0x69f0 029501 branch pwm_tw0_set_select 
+:      029502 pwm_gpio21_set:
+0x69f1 029503 arg 13 ,queue 
+0x69f2 029504 branch pwm_tw0_set_select 
+:      029505 pwm_gpio22_set:
+0x69f3 029506 arg 14 ,queue 
+0x69f4 029507 branch pwm_tw0_set_select 
+:      029508 pwm_gpio23_set:
+0x69f5 029509 arg 15 ,queue 
+0x69f6 029510 branch pwm_tw0_set_select 
+:      029512 pwm_set_select:
+0x69f7 029513 hfetch 2 ,core_gpio_sel1 
+0x69f8 029514 qsetflag user ,pdata 
+0x69f9 029515 hstore 2 ,core_gpio_sel1 
+0x69fa 029516 copy rega ,queue 
+0x69fb 029517 hfetch 1 ,core_gpio_key2 
+0x69fc 029518 qsetflag user ,pdata 
+0x69fd 029519 hstore 1 ,core_gpio_key2 
+0x69fe 029520 rtn 
+:      029522 pwm_one_set_select:
+0x69ff 029523 add queue ,-4 ,rega 
+0x6a00 029524 branch pwm_set_select 
+:      029526 pwm_tw0_set_select:
+0x6a01 029527 add queue ,-10 ,rega 
+0x6a02 029528 branch pwm_set_select 
+:      029533 rfcomm_init:
+0x6a03 029534 rtn wake 
+0x6a04 029535 jam 0 ,mem_rfcomm_send_more_pkt 
+0x6a05 029536 jam bits9600 ,memremoterpnbitrate 
+0x6a06 029537 jam databits8 ,memremoteprndatabits 
+0x6a07 029538 jam 0x11 ,memremoteprnxon 
+0x6a08 029539 jam 0x13 ,memremoteprnxoff 
+0x6a09 029540 setarg 0 
+0x6a0a 029541 store 3 ,memremoteprnstopbit 
+0x6a0b 029542 store 1 ,mem_spp_state 
+0x6a0c 029543 jam 0 ,memui_reconnect_mode 
+:      029545 rfcomm_init_spp:
+0x6a0d 029546 bpatchx patch34_4 ,mem_patch34 
+0x6a0e 029547 setarg 0 
+0x6a0f 029548 store 1 ,mem_spp_state 
+0x6a10 029549 store 1 ,mem_remote_spp_channel 
+0x6a11 029550 store 1 ,mem_pn_dlci 
+0x6a12 029551 fetch 1 ,mem_credit_flag 
+0x6a13 029552 beq credit_enable ,rfcomm_init_spp_with_credit 
+0x6a14 029553 jam 0x50 ,mem_credit_given 
+0x6a15 029554 rtn 
+:      029556 rfcomm_init_spp_with_credit:
+0x6a16 029557 jam 0x00 ,mem_credit_given 
+0x6a17 029558 rtn 
+:      029560 set_cr_bit:
+0x6a18 029561 or_into 0x02 ,temp 
+0x6a19 029562 rtn 
+:      029574 rfcomm_calculate_fcs_sabm:
+0x6a1a 029575 copy temp ,pdata 
+0x6a1b 029576 reverse pdata ,pdata 
+0x6a1c 029577 store 1 ,memfcstemp3 
+0x6a1d 029578 force ini_tx_sabm ,pdata 
+0x6a1e 029579 reverse pdata ,pdata 
+0x6a1f 029580 store 1 ,memfcstemp2 
+0x6a20 029581 force 0x01 ,pdata 
+0x6a21 029582 reverse pdata ,pdata 
+0x6a22 029583 store 1 ,memfcstemp1 
+0x6a23 029584 call caculate_fcs 
+0x6a24 029585 copy temp ,pdata 
+0x6a25 029586 rtn 
+:      029587 rfcomm_calculate_fcs_ua:
+0x6a26 029588 reverse pdata ,pdata 
+0x6a27 029589 store 1 ,memfcstemp3 
+0x6a28 029590 force rsp_tx_ua ,pdata 
+0x6a29 029591 reverse pdata ,pdata 
+0x6a2a 029592 store 1 ,memfcstemp2 
+0x6a2b 029593 force 0x01 ,pdata 
+0x6a2c 029594 reverse pdata ,pdata 
+0x6a2d 029595 store 1 ,memfcstemp1 
+0x6a2e 029596 branch caculate_fcs 
+:      029598 rfcomm_calculate_fcs_dlci0:
+0x6a2f 029599 fetch 1 ,mem_rfcomm_initiator 
+0x6a30 029600 branch rfcomm_calculate_fcs_dlci0_res ,blank 
+0x6a31 029601 setarg 0x70 
+0x6a32 029602 rtn 
+:      029603 rfcomm_calculate_fcs_dlci0_res:
+0x6a33 029604 setarg 0xaa 
+0x6a34 029605 rtn 
+:      029607 rfcomm_save_fcs_uih:
+0x6a35 029608 reverse pdata ,pdata 
+0x6a36 029609 store 1 ,memfcstemp3 
+0x6a37 029610 force rsp_rx_uih ,pdata 
+0x6a38 029611 call caculate_uihdata_fcs 
+0x6a39 029612 fetcht 2 ,mem_contw_temp 
+0x6a3a 029613 copy temp ,contw 
+0x6a3b 029614 istore 1 ,contw 
+0x6a3c 029615 copy contw ,temp 
+0x6a3d 029616 storet 2 ,mem_contw_temp 
+0x6a3e 029617 force rsp_rx_uih_wdata ,pdata 
+0x6a3f 029618 call caculate_uihdata_fcs 
+0x6a40 029619 fetcht 2 ,mem_contw_temp 
+0x6a41 029620 copy temp ,contw 
+0x6a42 029621 istore 1 ,contw 
+0x6a43 029622 rtn 
+:      029631 caculate_uihdata_fcs:
+0x6a44 029632 reverse pdata ,pdata 
+0x6a45 029633 store 1 ,memfcstemp2 
+0x6a46 029634 fetch 2 ,memfcstemp2 
+0x6a47 029635 lshift8 pdata ,pdata 
+0x6a48 029636 store 3 ,mem_mod2div_temp 
+0x6a49 029637 arg 0x107 ,rega 
+0x6a4a 029638 arg 0xf ,regb 
+0x6a4b 029639 call mod2div 
+0x6a4c 029640 xor_into 0xd7 ,pdata 
+0x6a4d 029641 invert pdata ,pdata 
+0x6a4e 029642 reverse pdata ,pdata 
+0x6a4f 029643 rtn 
+:      029653 caculate_fcs:
+0x6a50 029654 fetch 3 ,memfcstemp1 
+0x6a51 029655 store 3 ,mem_mod2div_temp 
+0x6a52 029656 arg 0x107 ,rega 
+0x6a53 029657 arg 0xf ,regb 
+0x6a54 029658 call mod2div 
+0x6a55 029659 lshift8 pdata ,pdata 
+0x6a56 029660 arg 0x7 ,regb 
+0x6a57 029661 call mod2div 
+0x6a58 029662 xor_into 0x2b ,pdata 
+0x6a59 029663 invert pdata ,pdata 
+0x6a5a 029664 reverse pdata ,pdata 
+0x6a5b 029665 copy pdata ,temp 
+0x6a5c 029666 rtn 
+:      029668 mod2div:
+0x6a5d 029669 arg 0 ,regc 
+0x6a5e 029670 copy regb ,loopcnt 
+0x6a5f 029671 call right_shift_n 
+0x6a60 029672 icopy temp 
+:      029673 mod2div_loop:
+0x6a61 029678 copy temp ,pdata 
+0x6a62 029679 lshift regc ,regc 
+0x6a63 029680 bbit0 8 ,mod2div_not_enough_reduction 
+0x6a64 029681 ixor rega ,temp 
+0x6a65 029682 increase 1 ,regc 
+:      029683 mod2div_not_enough_reduction:
+0x6a66 029684 lshift temp ,temp 
+0x6a67 029685 fetch 3 ,mem_mod2div_temp 
+0x6a68 029686 increase -1 ,regb 
+0x6a69 029687 compare 0xff ,regb ,0xff 
+0x6a6a 029688 branch mod2div_end ,true 
+0x6a6b 029689 copy regb ,loopcnt 
+0x6a6c 029690 call right_shift_n 
+0x6a6d 029691 isolate1 0 ,pdata 
+0x6a6e 029692 setflag true ,0 ,temp 
+0x6a6f 029693 branch mod2div_loop 
+:      029694 mod2div_end:
+0x6a70 029696 rshift temp ,pdata 
+0x6a71 029697 rtn 
+:      029699 get_rfcomm_snd_adss:
+0x6a72 029700 fetcht 1 ,mem_pn_dlci 
+:      029701 dlci_to_address_cmd:
+0x6a73 029703 lshift2 temp ,temp 
+0x6a74 029704 set1 rfcomm_address_ext_len ,temp 
+0x6a75 029705 fetch 1 ,mem_rfcomm_initiator 
+0x6a76 029706 ncall set_cr_bit ,blank 
+0x6a77 029707 storet 1 ,mem_rfcomm_send_adss 
+0x6a78 029708 rtn 
+:      029710 channel_to_dlci:
+0x6a79 029712 lshift temp ,temp 
+0x6a7a 029713 fetch 1 ,mem_rfcomm_initiator 
+0x6a7b 029714 setflag blank ,0 ,temp 
+0x6a7c 029716 rtn 
+:      029717 rfcomm_rx_process_dlci0_sabm:
+0x6a7d 029718 fetcht 1 ,mem_current_channel 
+0x6a7e 029719 jam 0xd7 ,mem_current_fcs 
+0x6a7f 029720 call rfcomm_send_ua 
+0x6a80 029721 fetch 1 ,mem_rfcomm_state 
+0x6a81 029722 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
+0x6a82 029723 set1 l2cap_channel_rfcomm_only_ua ,pdata 
+0x6a83 029724 store 1 ,mem_rfcomm_state 
+0x6a84 029725 jam 0 ,mem_rfcomm_initiator 
+0x6a85 029726 branch rfcomm_rx_process_end 
+:      029727 rfcomm_rx_process_dlci0_ua:
+0x6a86 029728 fetch 1 ,mem_rfcomm_state 
+0x6a87 029729 set1 l2cap_channel_rfcomm_only_ua ,pdata 
+0x6a88 029730 store 1 ,mem_rfcomm_state 
+0x6a89 029731 branch rfcomm_rx_process_end 
+:      029734 rfcomm_rx_process:
+0x6a8a 029735 bpatchx patch34_5 ,mem_patch34 
+0x6a8b 029736 fetch 1 ,memui_reconnect_mode 
+0x6a8c 029737 beq no_reconnection ,rfcomm_rx_process_remote_page 
+0x6a8d 029738 branch rfcomm_rx_process_reconn 
+:      029740 rfcomm_rx_process_remote_page:
+0x6a8e 029741 fetch 2 ,mem_l2cap_payload_ptr 
+0x6a8f 029742 copy pdata ,contr 
+0x6a90 029743 call get_rfcomm_head_struct 
+0x6a91 029744 fetch 1 ,mem_current_channel 
+0x6a92 029745 beq 0 ,parse_dlci0_rp 
+0x6a93 029746 branch parse_uih_rp 
+:      029747 parse_dlci0_rp:
+0x6a94 029748 bpatchx patch34_6 ,mem_patch34 
+0x6a95 029749 fetch 1 ,mem_current_frame_type 
+0x6a96 029750 beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
+0x6a97 029751 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
+0x6a98 029752 beq rfcomm_frame_type_uih ,parse_dlci0_rp_uih 
+0x6a99 029753 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn_send_event 
+0x6a9a 029754 rtn 
+:      029757 parse_dlci0_rp_uih:
+0x6a9b 029758 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+0x6a9c 029759 copy pdata ,contr 
+0x6a9d 029760 call get_rfcomm_uih_head_struct 
+0x6a9e 029761 fetch 1 ,mem_uih_cmd_type 
+0x6a9f 029762 beq uih_param_neg_cmd ,parse_dlci0_rp_uih_pn_cmd 
+0x6aa0 029763 beq uih_param_neg_res ,parse_dlci0_rp_uih_pn_res 
+0x6aa1 029764 beq uih_modem_status_cmd ,parse_dlci0_rp_uih_ms_cmd 
+0x6aa2 029765 beq uih_modem_status_res ,parse_dlci0_rp_uih_ms_res 
+0x6aa3 029766 beq uih_param_cmd_remove_port ,parse_dlci0_rp_uih_cmd_port 
+0x6aa4 029767 branch rfcomm_rx_process_end 
+:      029769 parse_dlci0_rp_uih_pn_cmd:
+0x6aa5 029770 call parse_dlci0_rp_uih_pn_res_common 
+0x6aa6 029772 branch parse_dlci0_rp_uih_pn_cmd_spp 
+:      029774 parse_dlci0_rp_uih_pn_cmd_spp:
+0x6aa7 029775 fetch 1 ,mem_spp_state 
+0x6aa8 029776 set1 rfcomm_channel_state_pn_cmd ,pdata 
+0x6aa9 029777 set1 rfcomm_channel_state_pn_res ,pdata 
+0x6aaa 029778 store 1 ,mem_spp_state 
+0x6aab 029779 call rfcomm_send_param_neg_res 
+0x6aac 029780 branch rfcomm_rx_process_end 
+:      029782 parse_dlci0_rp_uih_pn_res:
+0x6aad 029783 call parse_dlci0_rp_uih_pn_res_common 
+0x6aae 029784 branch rfcomm_rx_process_end 
+:      029786 parse_dlci0_rp_uih_pn_res_common:
+0x6aaf 029787 call get_param_payload_ptr 
+0x6ab0 029788 branch get_rfcomm_prarmer_negotiation 
+:      029790 get_rfcomm_param_modem_status:
+0x6ab1 029791 call get_param_payload_ptr 
+0x6ab2 029792 ifetch 1 ,contr 
+0x6ab3 029793 rshift3 pdata ,pdata 
+0x6ab4 029794 store 1 ,mem_ms_channel 
+0x6ab5 029795 ifetch 1 ,contr 
+0x6ab6 029796 store 1 ,mem_ms_param 
+0x6ab7 029797 rtn 
+:      029800 get_rfcomm_head_struct:
+0x6ab8 029801 ifetch 1 ,contr 
+0x6ab9 029802 store 1 ,mem_current_adss 
+0x6aba 029803 rshift3 pdata ,pdata 
+0x6abb 029804 store 1 ,mem_current_channel 
+0x6abc 029805 ifetch 1 ,contr 
+0x6abd 029806 store 1 ,mem_current_frame_type 
+:      029807 get_rfcomm_current_length:
+0x6abe 029808 call get_rfcomm_length_common 
+0x6abf 029809 storet 2 ,mem_current_length 
+0x6ac0 029810 copy contr ,pdata 
+0x6ac1 029811 store 2 ,mem_rfcomm_uih_payload_ptr 
+0x6ac2 029812 rtn 
+:      029814 get_rfcomm_uih_head_struct:
+0x6ac3 029815 ifetch 1 ,contr 
+0x6ac4 029816 rshift pdata ,pdata 
+0x6ac5 029817 store 1 ,mem_uih_cmd_type 
+0x6ac6 029818 call get_rfcomm_length_common 
+0x6ac7 029819 storet 2 ,mem_uih_length 
+0x6ac8 029820 copy contr ,pdata 
+0x6ac9 029821 store 2 ,mem_param_payload_ptr 
+0x6aca 029822 rtn 
+:      029825 get_param_payload_ptr:
+0x6acb 029826 fetch 2 ,mem_param_payload_ptr 
+0x6acc 029827 copy pdata ,contr 
+0x6acd 029828 rtn 
+:      029830 get_rfcomm_length_common:
+0x6ace 029831 ifetch 1 ,contr 
+0x6acf 029832 copy pdata ,temp 
+0x6ad0 029833 rshift temp ,temp 
+0x6ad1 029834 rtnbit1 0 
+0x6ad2 029835 ifetch 1 ,contr 
+0x6ad3 029836 lshift3 pdata ,pdata 
+0x6ad4 029837 lshift4 pdata ,pdata 
+0x6ad5 029838 iadd temp ,temp 
+0x6ad6 029839 rtn 
+:      029841 get_rfcomm_prarmer_negotiation:
+0x6ad7 029842 ifetch 1 ,contr 
+0x6ad8 029843 store 1 ,mem_pn_dlci 
+0x6ad9 029844 ifetch 1 ,contr 
+0x6ada 029845 store 1 ,mem_pn_credit_flow_type_info 
+0x6adb 029846 ifetch 1 ,contr 
+0x6adc 029847 store 1 ,mem_pn_priority 
+0x6add 029848 ifetch 1 ,contr 
+0x6ade 029849 store 1 ,mem_pn_acknowledg_timer 
+0x6adf 029850 ifetch 2 ,contr 
+0x6ae0 029851 store 2 ,mem_pn_max_frame_size 
+0x6ae1 029852 ifetch 1 ,contr 
+0x6ae2 029853 store 1 ,mem_pn_max_retrans 
+0x6ae3 029854 ifetch 1 ,contr 
+0x6ae4 029855 store 1 ,mem_remote_credits 
+0x6ae5 029856 rtn 
+:      029859 parse_dlci0_rp_uih_ms_cmd:
+0x6ae6 029860 call get_rfcomm_param_modem_status 
+0x6ae7 029862 branch parse_dlci0_rp_uih_ms_cmd_spp 
+:      029864 parse_dlci0_rp_uih_ms_cmd_spp:
+0x6ae8 029865 fetch 1 ,mem_spp_state 
+0x6ae9 029866 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
+0x6aea 029867 set1 rfcomm_channel_state_snd_ms_res ,pdata 
+0x6aeb 029868 store 1 ,mem_spp_state 
+0x6aec 029869 fetcht 1 ,mem_pn_dlci 
+0x6aed 029870 lshift2 temp ,temp 
+0x6aee 029871 or_into 3 ,temp 
+0x6aef 029872 call rfcomm_send_modem_status_res 
+0x6af0 029873 jam more_pkt_msc_cmd_spp ,mem_rfcomm_send_more_pkt 
+0x6af1 029874 branch rfcomm_rx_process_end 
+:      029876 parse_dlci0_rp_uih_ms_res:
+0x6af2 029877 jam bt_evt_spp_connected ,mem_fifo_temp 
+0x6af3 029878 call ui_ipc_send_event 
+0x6af4 029879 call get_rfcomm_param_modem_status 
+0x6af5 029880 fetch 1 ,mem_ms_channel 
+0x6af6 029881 sub pdata ,1 ,null 
+0x6af7 029882 branch parse_dlci0_rp_uih_ms_res_spp ,zero 
+0x6af8 029883 branch assert 
+:      029884 parse_dlci0_rp_uih_ms_res_spp:
+0x6af9 029885 fetch 1 ,mem_spp_state 
+0x6afa 029886 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
+0x6afb 029887 store 1 ,mem_spp_state 
+0x6afc 029888 branch rfcomm_rx_process_end 
+:      029890 parse_dlci0_rp_uih_cmd_port:
+0x6afd 029891 call get_param_payload_ptr 
+0x6afe 029892 ifetch 1 ,contr 
+0x6aff 029893 store 1 ,mem_rpn_dlci 
+0x6b00 029894 call l2cap_malloc_rfcomm_channel 
+0x6b01 029895 call l2cap_get_rfcomm_tx_buff 
+0x6b02 029896 setarg 0x000e 
+0x6b03 029897 istore 2 ,contw 
+0x6b04 029898 fetch 2 ,mem_rfcomm_remote_cid 
+0x6b05 029899 istore 2 ,contw 
+0x6b06 029900 fetch 1 ,mem_rfcomm_initiator 
+0x6b07 029902 lshift pdata ,pdata 
+0x6b08 029903 set1 0 ,pdata 
+0x6b09 029904 istore 1 ,contw 
+0x6b0a 029905 bpatchx patch34_7 ,mem_patch34 
+0x6b0b 029906 setarg 0x15ef 
+0x6b0c 029907 istore 2 ,contw 
+0x6b0d 029908 setarg 0x1191 
+0x6b0e 029909 istore 2 ,contw 
+0x6b0f 029912 fetch 1 ,mem_rpn_dlci 
+0x6b10 029913 istore 1 ,contw 
+0x6b11 029914 setarg 0x000007 
+0x6b12 029915 istore 5 ,contw 
+0x6b13 029918 setarg 0x01 
+0x6b14 029919 istore 2 ,contw 
+0x6b15 029922 call rfcomm_calculate_fcs_dlci0 
+0x6b16 029923 istore 1 ,contw 
+0x6b17 029924 rtn 
+:      029928 parse_uih_rp:
+0x6b18 029929 branch parse_uih_rp_spp 
+:      029931 parse_uih_rp_spp:
+0x6b19 029932 bpatchx patch35_0 ,mem_patch35 
+0x6b1a 029933 fetch 1 ,mem_current_frame_type 
+0x6b1b 029934 beq rfcomm_frame_type_ua ,parse_uih_rp_spp_ua 
+0x6b1c 029935 beq rfcomm_frame_type_sabm ,parse_uih_rp_spp_sabm 
+0x6b1d 029936 beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
+0x6b1e 029937 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
+0x6b1f 029938 beq rfcomm_frame_type_disconn ,parse_uih_rp_spp_disconn 
+0x6b20 029939 rtn 
+:      029940 parse_uih_rp_spp_ua:
+0x6b21 029941 fetch 1 ,mem_spp_state 
+0x6b22 029942 set1 rfcomm_channel_state_ua ,pdata 
+0x6b23 029943 store 1 ,mem_spp_state 
+0x6b24 029944 branch rfcomm_rx_process_end 
+:      029945 parse_uih_rp_spp_sabm:
+0x6b25 029946 fetch 1 ,mem_spp_state 
+0x6b26 029947 set1 rfcomm_channel_state_ua ,pdata 
+0x6b27 029948 set1 rfcomm_channel_state_sabm ,pdata 
+0x6b28 029949 store 1 ,mem_spp_state 
+0x6b29 029950 fetch 1 ,mem_current_adss 
+0x6b2a 029951 call rfcomm_calculate_fcs_ua 
+0x6b2b 029952 store 1 ,mem_current_fcs 
+0x6b2c 029953 call rfcomm_send_ua 
+0x6b2d 029954 fetch 1 ,mem_current_adss 
+0x6b2e 029955 rshift2 pdata ,pdata 
+0x6b2f 029956 store 1 ,mem_pn_dlci 
+0x6b30 029957 lshift2 pdata ,pdata 
+0x6b31 029958 set0 rfcomm_address_cr ,pdata 
+0x6b32 029959 set1 rfcomm_address_ext_len ,pdata 
+0x6b33 029960 arg mem_hiufcs_spp ,temp 
+0x6b34 029961 storet 2 ,mem_contw_temp 
+0x6b35 029962 call rfcomm_save_fcs_uih 
+0x6b36 029963 branch rfcomm_rx_process_end 
+:      029965 parse_uih_spp_uih_credits:
+0x6b37 029966 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+0x6b38 029967 copy pdata ,contr 
+0x6b39 029968 increase 1 ,pdata 
+0x6b3a 029969 store 2 ,mem_rfcomm_uih_payload_ptr 
+0x6b3b 029970 ifetch 1 ,contr 
+0x6b3c 029971 fetcht 1 ,mem_remote_credits 
+0x6b3d 029972 iadd temp ,pdata 
+0x6b3e 029973 store 1 ,mem_remote_credits 
+:      029974 parse_uih_spp_uih:
+0x6b3f 029975 call rfcomm_increase_credit_given 
+:      029976 parse_uih_spp_uih_cont:
+0x6b40 029977 call get_rfcomm_snd_adss 
+0x6b41 029978 call rfcomm_send_uih_without_payload 
+0x6b42 029979 call spp_process_rx_data 
+0x6b43 029980 branch rfcomm_rx_process_end 
+:      029982 parse_uih_rp_spp_disconn_send_event:
+0x6b44 029983 jam bt_evt_spp_disconnected ,mem_fifo_temp 
+0x6b45 029984 call ui_ipc_send_event 
+:      029985 parse_uih_rp_spp_disconn:
+0x6b46 029986 call rfcomm_init_spp 
+0x6b47 029987 fetch 1 ,mem_current_adss 
+0x6b48 029988 call rfcomm_calculate_fcs_ua 
+0x6b49 029989 store 1 ,mem_current_fcs 
+0x6b4a 029990 call rfcomm_send_ua 
+0x6b4b 029991 branch rfcomm_rx_process_end 
+:      029996 rfcomm_rx_process_reconn:
+0x6b4c 029997 fetch 2 ,mem_l2cap_payload_ptr 
+0x6b4d 029998 copy pdata ,contr 
+0x6b4e 029999 call get_rfcomm_head_struct 
+0x6b4f 030000 fetch 1 ,mem_current_channel 
+0x6b50 030001 beq 0 ,parse_dlci0_reconn 
+0x6b51 030002 branch parse_uih_reconn 
+:      030004 parse_dlci0_reconn:
+0x6b52 030005 bpatchx patch35_1 ,mem_patch35 
+0x6b53 030006 fetch 1 ,mem_current_frame_type 
+0x6b54 030007 beq rfcomm_frame_type_sabm ,rfcomm_rx_process_dlci0_sabm 
+0x6b55 030008 beq rfcomm_frame_type_ua ,rfcomm_rx_process_dlci0_ua 
+0x6b56 030009 beq rfcomm_frame_type_uih ,parse_dlci0_reconn_uih 
+0x6b57 030010 branch rfcomm_rx_process_end 
+:      030011 parse_dlci0_reconn_uih:
+0x6b58 030012 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+0x6b59 030013 copy pdata ,contr 
+0x6b5a 030014 call get_rfcomm_uih_head_struct 
+0x6b5b 030015 fetch 1 ,mem_uih_cmd_type 
+0x6b5c 030016 beq uih_param_neg_cmd ,parse_dlci0_reconn_uih_pn_cmd 
+0x6b5d 030017 beq uih_param_neg_res ,parse_dlci0_reconn_uih_pn_cmd 
+0x6b5e 030018 beq uih_modem_status_cmd ,parse_dlci0_reconn_uih_ms_cmd 
+0x6b5f 030019 beq uih_modem_status_res ,parse_dlci0_reconn_uih_ms_res 
+0x6b60 030020 branch rfcomm_rx_process_end 
+:      030022 parse_dlci0_reconn_uih_pn_cmd:
+0x6b61 030023 call parse_dlci0_rp_uih_pn_res_common 
+0x6b62 030024 fetch 1 ,mem_pn_dlci 
+0x6b63 030025 rshift pdata ,pdata 
+0x6b64 030026 fetcht 1 ,mem_remote_spp_channel 
+0x6b65 030027 isub temp ,null 
+0x6b66 030028 branch parse_dlci0_reconn_uih_pn_cmd_spp ,zero 
+0x6b67 030029 branch assert 
+:      030030 parse_dlci0_reconn_uih_pn_cmd_spp:
+0x6b68 030031 fetch 1 ,mem_spp_state 
+0x6b69 030032 set1 rfcomm_channel_state_pn_res ,pdata 
+0x6b6a 030033 store 1 ,mem_spp_state 
+0x6b6b 030034 branch rfcomm_rx_process_end 
+:      030036 parse_dlci0_reconn_uih_ms_cmd:
+0x6b6c 030037 call get_rfcomm_param_modem_status 
+0x6b6d 030038 fetch 1 ,mem_ms_channel 
+0x6b6e 030039 fetcht 1 ,mem_remote_spp_channel 
+0x6b6f 030040 isub temp ,null 
+0x6b70 030041 branch parse_dlci0_reconn_uih_ms_cmd_spp ,zero 
+0x6b71 030042 branch assert 
+0x6b72 030043 branch rfcomm_rx_process_end 
+:      030044 parse_dlci0_reconn_uih_ms_cmd_spp:
+0x6b73 030045 fetch 1 ,mem_spp_state 
+0x6b74 030046 set1 rfcomm_channel_state_rcv_ms_cmd ,pdata 
+0x6b75 030047 set1 rfcomm_channel_state_snd_ms_res ,pdata 
+0x6b76 030048 store 1 ,mem_spp_state 
+0x6b77 030049 fetcht 1 ,mem_pn_dlci 
+0x6b78 030050 lshift2 temp ,temp 
+0x6b79 030051 or_into 3 ,temp 
+0x6b7a 030052 call rfcomm_send_modem_status_res 
+0x6b7b 030053 branch rfcomm_rx_process_end 
+:      030055 parse_dlci0_reconn_uih_ms_res:
+0x6b7c 030056 call get_rfcomm_param_modem_status 
+0x6b7d 030057 fetch 1 ,mem_ms_channel 
+0x6b7e 030058 fetcht 1 ,mem_remote_spp_channel 
+0x6b7f 030059 isub temp ,null 
+0x6b80 030060 branch parse_dlci0_reconn_uih_ms_res_spp ,zero 
+0x6b81 030061 branch assert 
+:      030062 parse_dlci0_reconn_uih_ms_res_spp:
+0x6b82 030063 fetch 1 ,mem_spp_state 
+0x6b83 030064 set1 rfcomm_channel_state_rcv_ms_res ,pdata 
+0x6b84 030065 store 1 ,mem_spp_state 
+0x6b85 030066 branch rfcomm_rx_process_end 
+:      030068 parse_uih_reconn:
+0x6b86 030069 fetch 1 ,mem_current_channel 
+0x6b87 030070 fetcht 1 ,mem_remote_spp_channel 
+0x6b88 030071 isub temp ,null 
+0x6b89 030072 branch parse_uih_reconn_spp ,zero 
+0x6b8a 030073 branch assert 
+0x6b8b 030074 branch rfcomm_rx_process_end 
+:      030076 parse_uih_reconn_spp:
+0x6b8c 030077 fetch 1 ,mem_current_frame_type 
+0x6b8d 030078 beq rfcomm_frame_type_ua ,parse_uih_reconn_spp_ua 
+0x6b8e 030079 beq rfcomm_frame_type_uih ,parse_uih_spp_uih 
+0x6b8f 030080 beq rfcomm_frame_type_uih_credits ,parse_uih_spp_uih_credits 
+0x6b90 030081 beq rfcomm_frame_type_disconn ,parse_uih_reconn_spp_disconn 
+:      030082 parse_uih_reconn_spp_ua:
+0x6b91 030083 fetch 1 ,mem_spp_state 
+0x6b92 030084 set1 rfcomm_channel_state_ua ,pdata 
+0x6b93 030085 store 1 ,mem_spp_state 
+0x6b94 030086 branch rfcomm_rx_process_end 
+:      030087 parse_uih_reconn_spp_sabm:
+0x6b95 030088 branch parse_uih_reconn_spp_sabm 
+:      030089 parse_uih_reconn_spp_disconn:
+0x6b96 030090 branch parse_uih_rp_spp_disconn 
+:      030091 rfcomm_rx_process_end:
+0x6b97 030092 rtn 
+:      030094 rfcomm_send_more_pkt:
+0x6b98 030095 fetch 1 ,mem_rfcomm_send_more_pkt 
+0x6b99 030096 rtn blank 
+0x6b9a 030097 beq more_pkt_msc_cmd_spp ,rfcomm_send_more_pkt_msc_cmd_spp 
+0x6b9b 030098 branch assert 
+:      030100 rfcomm_send_more_pkt_msc_cmd_spp:
+0x6b9c 030101 jam 0 ,mem_rfcomm_send_more_pkt 
+0x6b9d 030102 call l2cap_malloc_rfcomm_channel 
+0x6b9e 030103 arg spp_slave_channel ,temp 
+0x6b9f 030104 fetcht 1 ,mem_pn_dlci 
+0x6ba0 030105 lshift2 temp ,temp 
+:      030106 rfcomm_send_more_pkt_msc_cmd_spp0:
+0x6ba1 030107 or_into 0x03 ,temp 
+0x6ba2 030108 arg 0xaa ,rega 
+0x6ba3 030109 call rfcomm_send_modem_status_cmd 
+0x6ba4 030110 call l2cap_get_rfcomm_tx_buff 
+0x6ba5 030111 copy contw ,contr 
+0x6ba6 030112 ifetch 2 ,contr 
+0x6ba7 030113 branch assert ,blank 
+0x6ba8 030114 rtn 
+:      030116 rfcomm_send_sabm:
+0x6ba9 030117 call l2cap_get_rfcomm_tx_buff 
+0x6baa 030118 setarg 0x0004 
+0x6bab 030119 istore 2 ,contw 
+0x6bac 030120 fetch 2 ,mem_rfcomm_remote_cid 
+0x6bad 030121 istore 2 ,contw 
+0x6bae 030122 fetch 1 ,mem_current_adss 
+0x6baf 030123 istore 1 ,contw 
+0x6bb0 030124 bpatchx patch35_2 ,mem_patch35 
+0x6bb1 030125 setarg 0x013f 
+0x6bb2 030126 istore 2 ,contw 
+0x6bb3 030127 fetch 1 ,mem_current_fcs 
+0x6bb4 030128 istore 1 ,contw 
+0x6bb5 030129 rtn 
+:      030130 rfcomm_send_ua:
+0x6bb6 030131 call l2cap_malloc_rfcomm_channel 
+0x6bb7 030132 call l2cap_get_rfcomm_tx_buff 
+0x6bb8 030133 setarg 0x0004 
+0x6bb9 030134 istore 2 ,contw 
+0x6bba 030135 fetch 2 ,mem_rfcomm_remote_cid 
+0x6bbb 030136 istore 2 ,contw 
+0x6bbc 030137 fetch 1 ,mem_current_adss 
+0x6bbd 030138 istore 1 ,contw 
+0x6bbe 030139 bpatchx patch35_3 ,mem_patch35 
+0x6bbf 030140 setarg 0x0173 
+0x6bc0 030141 istore 2 ,contw 
+0x6bc1 030142 fetch 1 ,mem_current_fcs 
+0x6bc2 030143 istore 1 ,contw 
+0x6bc3 030144 rtn 
+:      030145 rfcomm_send_param_neg_cmd:
+0x6bc4 030146 call l2cap_get_rfcomm_tx_buff 
+0x6bc5 030147 setarg 0x000e 
+0x6bc6 030148 istore 2 ,contw 
+0x6bc7 030149 fetch 2 ,mem_rfcomm_remote_cid 
+0x6bc8 030150 istore 2 ,contw 
+0x6bc9 030151 fetch 1 ,mem_rfcomm_initiator 
+0x6bca 030152 lshift pdata ,pdata 
+0x6bcb 030153 set1 0 ,pdata 
+0x6bcc 030154 istore 1 ,contw 
+0x6bcd 030155 bpatchx patch35_4 ,mem_patch35 
+0x6bce 030156 setarg 0x15ef 
+0x6bcf 030157 istore 2 ,contw 
+0x6bd0 030158 setarg 0x1183 
+0x6bd1 030159 istore 2 ,contw 
+0x6bd2 030160 copy temp ,pdata 
+0x6bd3 030161 istore 1 ,contw 
+0x6bd4 030162 setarg 0x0000f0 
+0x6bd5 030163 istore 3 ,contw 
+0x6bd6 030164 setarg rfcomm_max_frame_size 
+0x6bd7 030165 istore 2 ,contw 
+0x6bd8 030166 setarg 0 
+0x6bd9 030167 istore 1 ,contw 
+0x6bda 030168 setarg 0x01 
+0x6bdb 030169 istore 1 ,contw 
+0x6bdc 030170 call rfcomm_calculate_fcs_dlci0 
+0x6bdd 030171 istore 1 ,contw 
+0x6bde 030172 jam 0x10 ,mem_credit_given 
+0x6bdf 030173 rtn 
+:      030174 rfcomm_send_param_neg_res:
+0x6be0 030175 call l2cap_malloc_rfcomm_channel 
+0x6be1 030176 call l2cap_get_rfcomm_tx_buff 
+0x6be2 030177 setarg 0x000e 
+0x6be3 030178 istore 2 ,contw 
+0x6be4 030179 fetch 2 ,mem_rfcomm_remote_cid 
+0x6be5 030180 istore 2 ,contw 
+0x6be6 030181 fetch 1 ,mem_rfcomm_initiator 
+0x6be7 030182 lshift pdata ,pdata 
+0x6be8 030183 set1 0 ,pdata 
+0x6be9 030184 istore 1 ,contw 
+0x6bea 030185 bpatchx patch35_5 ,mem_patch35 
+0x6beb 030186 setarg 0x15ef 
+0x6bec 030187 istore 2 ,contw 
+0x6bed 030188 setarg 0x1181 
+0x6bee 030189 istore 2 ,contw 
+0x6bef 030190 fetch 1 ,mem_pn_dlci 
+0x6bf0 030191 istore 1 ,contw 
+0x6bf1 030192 setarg 0x0000e0 
+0x6bf2 030193 istore 3 ,contw 
+0x6bf3 030194 fetch 2 ,mem_rfcomm_max_frame_size 
+0x6bf4 030195 istore 2 ,contw 
+0x6bf5 030196 setarg 0x00 
+0x6bf6 030197 istore 1 ,contw 
+0x6bf7 030198 fetch 1 ,mem_rfcomm_credit_init_data 
+0x6bf8 030199 istore 1 ,contw 
+0x6bf9 030200 call rfcomm_calculate_fcs_dlci0 
+0x6bfa 030201 istore 1 ,contw 
+0x6bfb 030202 rtn 
+:      030203 rfcomm_send_modem_status_cmd:
+0x6bfc 030204 call l2cap_get_rfcomm_tx_buff 
+0x6bfd 030205 setarg 0x0008 
+0x6bfe 030206 istore 2 ,contw 
+0x6bff 030207 fetch 2 ,mem_rfcomm_remote_cid 
+0x6c00 030208 istore 2 ,contw 
+0x6c01 030209 fetch 1 ,mem_rfcomm_initiator 
+0x6c02 030210 lshift pdata ,pdata 
+0x6c03 030211 set1 0 ,pdata 
+0x6c04 030212 istore 1 ,contw 
+0x6c05 030213 bpatchx patch35_6 ,mem_patch35 
+0x6c06 030214 setarg 0x09ef 
+0x6c07 030215 istore 2 ,contw 
+0x6c08 030216 setarg 0x05e3 
+0x6c09 030217 istore 2 ,contw 
+0x6c0a 030218 copy temp ,pdata 
+0x6c0b 030219 istore 1 ,contw 
+0x6c0c 030220 setarg 0x8d 
+0x6c0d 030221 istore 1 ,contw 
+0x6c0e 030222 call rfcomm_calculate_fcs_dlci0 
+0x6c0f 030223 istore 1 ,contw 
+0x6c10 030224 rtn 
+:      030226 rfcomm_send_modem_status_res:
+0x6c11 030227 call l2cap_malloc_rfcomm_channel 
+0x6c12 030228 call l2cap_get_rfcomm_tx_buff 
+0x6c13 030229 setarg 0x0008 
+0x6c14 030230 istore 2 ,contw 
+0x6c15 030231 fetch 2 ,mem_rfcomm_remote_cid 
+0x6c16 030232 istore 2 ,contw 
+0x6c17 030233 copy temp ,timeup 
+0x6c18 030234 fetch 1 ,mem_rfcomm_initiator 
+0x6c19 030235 lshift pdata ,pdata 
+0x6c1a 030236 set1 0 ,pdata 
+0x6c1b 030237 istore 1 ,contw 
+0x6c1c 030238 bpatchx patch35_7 ,mem_patch35 
+0x6c1d 030239 setarg 0x09ef 
+0x6c1e 030240 istore 2 ,contw 
+0x6c1f 030241 setarg 0x05e1 
+0x6c20 030242 istore 2 ,contw 
+0x6c21 030243 copy timeup ,pdata 
+0x6c22 030244 istore 1 ,contw 
+0x6c23 030245 setarg 0x8d 
+0x6c24 030246 istore 1 ,contw 
+0x6c25 030247 call rfcomm_calculate_fcs_dlci0 
+0x6c26 030248 istore 1 ,contw 
+0x6c27 030249 rtn 
+:      030251 rfcomm_send_uih_without_payload:
+0x6c28 030252 bpatchx patch36_0 ,mem_patch36 
+0x6c29 030253 fetch 1 ,mem_credit_given 
+0x6c2a 030254 rtn blank 
+0x6c2b 030255 hfetch 2 ,core_uart_rxitems 
+0x6c2c 030256 nrtn blank 
+0x6c2d 030257 copy rega ,pdata 
+0x6c2e 030258 store 1 ,mem_pdatatemp + 1 
+0x6c2f 030259 storet 1 ,mem_pdatatemp 
+0x6c30 030260 call l2cap_malloc_is_fifo_full 
+0x6c31 030261 nrtn blank 
+0x6c32 030262 call l2cap_malloc_rfcomm_channel 
+0x6c33 030263 call l2cap_get_rfcomm_tx_buff 
+0x6c34 030264 setarg 0x05 
+0x6c35 030265 istore 2 ,contw 
+0x6c36 030266 fetch 2 ,mem_rfcomm_remote_cid 
+0x6c37 030267 istore 2 ,contw 
+0x6c38 030268 fetch 1 ,mem_rfcomm_send_adss 
+0x6c39 030269 istore 1 ,contw 
+0x6c3a 030270 setarg 0x01ff 
+0x6c3b 030271 istore 2 ,contw 
+0x6c3c 030272 fetch 1 ,mem_credit_given 
+0x6c3d 030273 istore 1 ,contw 
+0x6c3e 030274 fetch 1 ,mem_hiufcs_spp_wcredits 
+0x6c3f 030275 istore 1 ,contw 
+0x6c40 030276 jam 0 ,mem_credit_given 
+0x6c41 030277 rtn 
+:      030279 rfcomm_increase_credit_given:
+0x6c42 030280 bpatchx patch36_1 ,mem_patch36 
+0x6c43 030281 fetch 1 ,mem_credit_flag 
+0x6c44 030282 rtneq credit_enable 
+0x6c45 030283 fetch 2 ,mem_current_length 
+0x6c46 030284 rtn blank 
+0x6c47 030285 fetch 1 ,mem_credit_given 
+0x6c48 030286 increase 1 ,pdata 
+0x6c49 030287 store 1 ,mem_credit_given 
+0x6c4a 030288 rtn 
+:      030290 spp_process_rx_data:
+0x6c4b 030291 fetch 2 ,mem_cb_receive_spp_data 
+0x6c4c 030292 branch callback_func 
+:      030294 spp_tx_rfcomm_packet:
+0x6c4d 030295 bpatchx patch36_2 ,mem_patch36 
+0x6c4e 030297 fetch 1 ,mem_remote_credits 
+0x6c4f 030298 rtn blank 
+0x6c50 030299 increase -1 ,pdata 
+0x6c51 030300 store 1 ,mem_remote_credits 
+0x6c52 030301 fetch 2 ,mem_pn_max_frame_size 
+0x6c53 030302 fetcht 2 ,mem_current_packet_length 
+0x6c54 030303 isub temp ,null 
+0x6c55 030304 branch ssp_tx_rfcomm_from_uart ,positive 
+0x6c56 030305 store 2 ,mem_current_packet_length 
+:      030306 ssp_tx_rfcomm_from_uart:
+0x6c57 030307 fetch 1 ,mem_credit_given 
+0x6c58 030308 branch ssp_tx_rfcomm_from_uart_without_credit ,blank 
+0x6c59 030309 jam 1 ,mem_rfcomm_send_offset 
+0x6c5a 030310 fetch 1 ,mem_hiufcs_spp_wcredits 
+0x6c5b 030311 store 1 ,mem_rfcomm_send_fcs 
+0x6c5c 030312 setarg rsp_rx_uih_wdata 
+0x6c5d 030313 store 1 ,mem_rfcomm_send_frame_type 
+0x6c5e 030314 branch ssp_tx_rfcomm_from_uart_common 
+:      030315 ssp_tx_rfcomm_from_uart_without_credit:
+0x6c5f 030316 jam 0 ,mem_rfcomm_send_offset 
+0x6c60 030317 fetch 1 ,mem_hiufcs_spp 
+0x6c61 030318 store 1 ,mem_rfcomm_send_fcs 
+0x6c62 030319 setarg rsp_tx_uih 
+0x6c63 030320 store 1 ,mem_rfcomm_send_frame_type 
+:      030321 ssp_tx_rfcomm_from_uart_common:
+0x6c64 030322 bpatchx patch36_3 ,mem_patch36 
+0x6c65 030323 fetch 2 ,mem_current_packet_length 
+0x6c66 030324 sub pdata ,127 ,null 
+0x6c67 030325 branch ssp_tx_rfcomm_from_uart_common0 ,positive 
+0x6c68 030326 fetch 1 ,mem_rfcomm_send_offset 
+0x6c69 030327 increase 1 ,pdata 
+0x6c6a 030328 store 1 ,mem_rfcomm_send_offset 
+:      030329 ssp_tx_rfcomm_from_uart_common0:
+0x6c6b 030330 call get_rfcomm_snd_adss 
+0x6c6c 030331 fetch 2 ,mem_current_packet_length 
+0x6c6d 030332 increase 8 ,pdata 
+0x6c6e 030333 fetcht 1 ,mem_rfcomm_send_offset 
+0x6c6f 030334 iadd temp ,rega 
+0x6c70 030336 call l2cap_malloc 
+0x6c71 030337 store 2 ,mem_rfcomm_tx_buff_ptr 
+0x6c72 030338 increase 4 ,pdata 
+0x6c73 030339 store 2 ,mem_rfcomm_tx_payload_ptr 
+0x6c74 030340 copy pdata ,contw 
+0x6c75 030341 fetch 1 ,mem_rfcomm_send_adss 
+0x6c76 030342 istore 1 ,contw 
+0x6c77 030343 fetch 1 ,mem_rfcomm_send_frame_type 
+0x6c78 030344 istore 1 ,contw 
+0x6c79 030345 call ssp_tx_write_length 
+0x6c7a 030346 call ssp_tx_write_given_credit 
+0x6c7b 030347 bpatchx patch36_4 ,mem_patch36 
+0x6c7c 030348 fetch 2 ,mem_nl_rx_data_src 
+0x6c7d 030349 copy pdata ,contru 
+0x6c7e 030350 fetch 2 ,mem_current_packet_length 
+0x6c7f 030351 copy pdata ,loopcnt 
+0x6c80 030352 call uart_copy_rx_bytes_fast 
+0x6c81 030353 copy contw ,temp 
+0x6c82 030354 copy contru ,pdata 
+0x6c83 030355 store 2 ,mem_nl_rx_data_src 
+0x6c84 030356 copy temp ,contw 
+0x6c85 030357 fetch 1 ,mem_rfcomm_send_fcs 
+0x6c86 030358 istore 1 ,contw 
+0x6c87 030359 fetch 2 ,mem_rfcomm_tx_buff_ptr 
+0x6c88 030360 copy pdata ,contw 
+0x6c89 030361 fetch 2 ,mem_current_packet_length 
+0x6c8a 030362 fetcht 1 ,mem_rfcomm_send_offset 
+0x6c8b 030363 iadd temp ,pdata 
+0x6c8c 030364 increase 4 ,pdata 
+0x6c8d 030365 istore 2 ,contw 
+0x6c8e 030366 fetch 2 ,mem_rfcomm_remote_cid 
+0x6c8f 030367 istore 2 ,contw 
+0x6c90 030368 jam 0 ,mem_credit_given 
+0x6c91 030369 fetch 2 ,mem_nl_rx_len_all 
+0x6c92 030370 beq 0 ,module_hci_command_tx_spp_tx_complete 
+0x6c93 030371 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x6c94 030372 rtn 
+:      030374 ssp_tx_write_length:
+0x6c95 030375 bpatchx patch36_5 ,mem_patch36 
+0x6c96 030376 fetch 2 ,mem_current_packet_length 
+0x6c97 030377 sub pdata ,0x7f ,null 
+0x6c98 030378 nbranch ssp_tx_write_long_packet ,positive 
+0x6c99 030379 lshift pdata ,pdata 
+0x6c9a 030380 set1 0 ,pdata 
+0x6c9b 030381 istore 1 ,contw 
+0x6c9c 030382 rtn 
+:      030383 ssp_tx_write_long_packet:
+0x6c9d 030384 fetch 2 ,mem_current_packet_length 
+0x6c9e 030385 rshift3 pdata ,pdata 
+0x6c9f 030386 rshift4 pdata ,temp 
+0x6ca0 030387 and_into 0x7f ,pdata 
+0x6ca1 030388 lshift pdata ,pdata 
+0x6ca2 030389 set0 0 ,pdata 
+0x6ca3 030390 istore 1 ,contw 
+0x6ca4 030391 istoret 1 ,contw 
+0x6ca5 030392 rtn 
+:      030393 ssp_tx_write_given_credit:
+0x6ca6 030394 fetch 1 ,mem_credit_given 
+0x6ca7 030395 rtn blank 
+0x6ca8 030396 istore 1 ,contw 
+0x6ca9 030397 rtn 
+:      030402 scheduler_process:
+0x6caa 030403 bpatchx patch36_6 ,mem_patch36 
+0x6cab 030404 call check_51cmd 
+0x6cac 030405 call app_process_bb_event 
+0x6cad 030406 call process_conn_sm 
+0x6cae 030408 bpatchx patch36_7 ,mem_patch36 
+0x6caf 030409 call sp_calc_sequence 
+0x6cb0 030410 call simple_pairing_sequence 
+0x6cb1 030411 call master_simple_paring_sequence 
+0x6cb2 030414 call l2cap_malloc_is_fifo_full 
+0x6cb3 030415 nrtn blank 
+0x6cb4 030417 call l2cap_call_proc_sigal_pending 
+0x6cb5 030418 call l2cap_malloc_is_fifo_full 
+0x6cb6 030419 nrtn blank 
+0x6cb7 030420 bpatchx patch37_0 ,mem_patch37 
+0x6cb8 030422 call process_upper_sm 
+0x6cb9 030423 call l2cap_send_config_req 
+0x6cba 030424 call rfcomm_send_more_pkt 
+:      030425 scheduler_process0:
+0x6cbb 030426 call scheduler_tx_disconnect_hid 
+0x6cbc 030427 bpatchx patch37_1 ,mem_patch37 
+0x6cbd 030430 branch app_process_bt 
+:      030432 scheduler_tx_disconnect_hid:
+0x6cbe 030433 fetch 1 ,mem_control_tasks 
+0x6cbf 030434 bbit1 l2cap_disconnect_interrupt ,l2cap_disconnect_interrupt_req 
+0x6cc0 030435 bbit1 l2cap_disconnect_control ,l2cap_disconnect_control_req 
+0x6cc1 030436 rtn 
+:      030438 scheduler_tx_l2cap_pkt:
+0x6cc2 030439 bpatchx patch37_2 ,mem_patch37 
+0x6cc3 030440 call l2cap_malloc_is_fifo_empty 
+0x6cc4 030441 rtn blank 
+0x6cc5 030442 fetch 1 ,mem_op 
+0x6cc6 030443 rtnbit1 op_txl2cap 
+0x6cc7 030444 call l2cap_malloc_fifo_out 
+0x6cc8 030445 store 2 ,mem_txptr 
+0x6cc9 030446 copy pdata ,contr 
+0x6cca 030447 ifetch 2 ,contr 
+0x6ccb 030448 increase 4 ,pdata 
+0x6ccc 030449 store 2 ,mem_tx_len 
+0x6ccd 030450 jam 6 ,mem_tx_lch 
+0x6cce 030451 bpatchx patch37_3 ,mem_patch37 
+0x6ccf 030452 fetch 2 ,mem_l2cap_tx_multi_offset 
+0x6cd0 030453 branch scheduler_tx_l2cap_start_pkt ,blank 
+0x6cd1 030454 fetch 1 ,mem_op 
+0x6cd2 030455 rtnbit0 op_pkt_comp 
+0x6cd3 030456 set0 op_pkt_comp ,pdata 
+0x6cd4 030457 store 1 ,mem_op 
+0x6cd5 030458 jam 5 ,mem_tx_lch 
+0x6cd6 030459 fetcht 2 ,mem_l2cap_tx_multi_offset 
+0x6cd7 030460 fetch 2 ,mem_txptr 
+0x6cd8 030461 iadd temp ,pdata 
+0x6cd9 030462 store 2 ,mem_txptr 
+0x6cda 030463 fetch 2 ,mem_tx_len 
+0x6cdb 030464 isub temp ,pdata 
+0x6cdc 030465 store 2 ,mem_tx_len 
+:      030466 scheduler_tx_l2cap_start_pkt:
+0x6cdd 030467 bpatchx patch37_4 ,mem_patch37 
+0x6cde 030468 fetch 2 ,mem_tx_len 
+0x6cdf 030469 branch assert ,blank 
+0x6ce0 030470 arg l2cap_max_pkt_len ,temp 
+0x6ce1 030471 isub temp ,pdata 
+0x6ce2 030472 nbranch scheduler_tx_l2cap_last_pkt ,positive 
+0x6ce3 030473 bpatchx patch37_5 ,mem_patch37 
+0x6ce4 030474 storet 2 ,mem_tx_len 
+0x6ce5 030475 fetch 2 ,mem_l2cap_tx_multi_offset 
+0x6ce6 030476 iadd temp ,pdata 
+0x6ce7 030477 store 2 ,mem_l2cap_tx_multi_offset 
+0x6ce8 030478 branch scheduler_tx_l2cap_pkt_end 
+:      030479 scheduler_tx_l2cap_last_pkt:
+0x6ce9 030480 setarg 0 
+0x6cea 030481 store 2 ,mem_l2cap_tx_multi_offset 
+:      030482 scheduler_tx_l2cap_pkt_end:
+0x6ceb 030483 fetch 1 ,mem_op 
+0x6cec 030484 set1 op_txl2cap ,pdata 
+0x6ced 030485 store 1 ,mem_op 
+0x6cee 030486 rtn 
+:      030488 scheduler_start_upper_sm:
+0x6cef 030489 fetch 1 ,mem_ui_profile_supported 
+0x6cf0 030490 bbit1 support_hid ,scheduler_start_upper_sm_hid 
+0x6cf1 030491 jam uppersm_reconn_sdp_conn ,mem_upper_sm_reconn 
+0x6cf2 030492 rtn 
+:      030493 scheduler_start_upper_sm_hid:
+0x6cf3 030494 jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
+0x6cf4 030495 rtn 
+:      030497 process_upper_sm:
+0x6cf5 030498 fetch 1 ,memui_reconnect_mode 
+0x6cf6 030499 nbranch process_upper_sm_reconn ,blank 
+:      030500 process_upper_sm_remote_page:
+0x6cf7 030501 fetch 1 ,mem_upper_sm_remote_page 
+0x6cf8 030503 rtn blank 
+0x6cf9 030505 jam 0 ,mem_upper_sm_remote_page 
+:      030506 process_upper_sm_rp_wait:
+0x6cfa 030507 rtn 
+:      030510 process_upper_sm_reconn:
+0x6cfb 030511 bpatchx patch37_6 ,mem_patch37 
+0x6cfc 030512 fetch 1 ,mem_upper_sm_reconn 
+0x6cfd 030513 rtn blank 
+0x6cfe 030514 beq uppersm_reconn_sdp_conn ,process_upper_sm_reconn_sdp_conn 
+0x6cff 030515 beq uppersm_reconn_sdp_conn_wait ,process_upper_sm_reconn_sdp_conn_wait 
+0x6d00 030516 beq uppersm_reconn_sdp_cfg ,process_upper_sm_reconn_sdp_cfg 
+0x6d01 030517 beq uppersm_reconn_sdp_cfg_wait ,process_upper_sm_reconn_sdp_cfg_wait 
+0x6d02 030518 beq uppersm_reconn_ss_spp ,process_upper_sm_reconn_ss_spp 
+0x6d03 030519 beq uppersm_reconn_ss_spp_wait ,process_upper_sm_reconn_ss_spp_wait 
+0x6d04 030520 beq uppersm_reconn_sdp_disconn ,process_upper_sm_reconn_sdp_disconn 
+0x6d05 030521 beq uppersm_reconn_sdp_disconn_wait ,process_upper_sm_reconn_sdp_disconn_wait 
+0x6d06 030522 beq uppersm_reconn_hid_ctrl_conn ,process_upper_sm_reconn_hid_ctrl_conn 
+0x6d07 030523 beq uppersm_reconn_hid_ctrl_conn_wait ,process_upper_sm_reconn_hid_ctrl_conn_wait 
+0x6d08 030524 beq uppersm_reconn_hid_ctrl_cfg ,process_upper_sm_reconn_hid_ctrl_cfg 
+0x6d09 030525 beq uppersm_reconn_hid_ctrl_cfg_wait ,process_upper_sm_reconn_hid_ctrl_cfg_wait 
+0x6d0a 030526 beq uppersm_reconn_hid_int_conn ,process_upper_sm_reconn_hid_int_conn 
+0x6d0b 030527 beq uppersm_reconn_hid_int_conn_wait ,process_upper_sm_reconn_hid_int_conn_wait 
+0x6d0c 030528 beq uppersm_reconn_hid_int_cfg ,process_upper_sm_reconn_hid_int_cfg 
+0x6d0d 030529 beq uppersm_reconn_hid_int_cfg_wait ,process_upper_sm_reconn_hid_int_cfg_wait 
+0x6d0e 030530 beq uppersm_reconn_rfcomm_conn ,process_upper_sm_reconn_rfcomm_conn 
+0x6d0f 030531 beq uppersm_reconn_rfcomm_conn_wait ,process_upper_sm_reconn_rfcomm_conn_wait 
+0x6d10 030532 beq uppersm_reconn_rfcomm_cfg ,process_upper_sm_reconn_rfcomm_cfg 
+0x6d11 030533 beq uppersm_reconn_rfcomm_cfg_wait ,process_upper_sm_reconn_rfcomm_cfg_wait 
+0x6d12 030534 beq uppersm_reconn_rfcomm_sabm ,process_upper_sm_reconn_rfcomm_sabm 
+0x6d13 030535 beq uppersm_reconn_rfcomm_sabm_wait ,process_upper_sm_reconn_rfcomm_sabm_wait 
+0x6d14 030536 beq uppersm_reconn_spp_cmd_pn ,process_upper_sm_reconn_spp_cmd_pn 
+0x6d15 030537 beq uppersm_reconn_spp_cmd_pn_wait ,process_upper_sm_reconn_spp_cmd_pn_wait 
+0x6d16 030538 beq uppersm_reconn_spp_sabm ,process_upper_sm_reconn_spp_sabm 
+0x6d17 030539 beq uppersm_reconn_spp_sabm_wait ,process_upper_sm_reconn_spp_sabm_wait 
+0x6d18 030540 beq uppersm_reconn_spp_cmd_ms ,process_upper_sm_reconn_spp_cmd_ms 
+0x6d19 030541 beq uppersm_reconn_spp_cmd_ms_wait ,process_upper_sm_reconn_spp_cmd_ms_wait 
+:      030542 process_upper_sm_reconn_wait:
+0x6d1a 030543 rtn 
+:      030544 process_upper_sm_reconn_sdp_conn:
+0x6d1b 030545 call upper_sm_send_sdp_conn 
+0x6d1c 030546 jam uppersm_reconn_sdp_conn_wait ,mem_upper_sm_reconn 
+0x6d1d 030547 fetch 1 ,mem_sdp_state 
+0x6d1e 030548 set1 l2cap_channel_state_conn_req ,pdata 
+0x6d1f 030549 store 1 ,mem_sdp_state 
+0x6d20 030550 rtn 
+:      030551 process_upper_sm_reconn_sdp_cfg:
+0x6d21 030552 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
+0x6d22 030553 fetch 1 ,mem_sdp_state 
+0x6d23 030554 rtnbit1 l2cap_channel_state_snd_cfg_req 
+0x6d24 030555 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
+0x6d25 030556 call upper_sm_send_sdp_cfg 
+0x6d26 030557 jam uppersm_reconn_sdp_cfg_wait ,mem_upper_sm_reconn 
+0x6d27 030558 fetch 1 ,mem_sdp_state 
+0x6d28 030559 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x6d29 030560 store 1 ,mem_sdp_state 
+0x6d2a 030561 rtn 
+:      030562 process_upper_sm_reconn_ss_spp:
+0x6d2b 030563 call l2cap_malloc_is_fifo_empty 
+0x6d2c 030564 nrtn blank 
+0x6d2d 030565 call upper_sm_send_ss_spp 
+0x6d2e 030566 jam uppersm_reconn_ss_spp_wait ,mem_upper_sm_reconn 
+0x6d2f 030567 rtn 
+:      030568 process_upper_sm_reconn_sdp_disconn:
+0x6d30 030569 call upper_sm_send_sdp_disconn 
+0x6d31 030570 jam uppersm_reconn_sdp_disconn_wait ,mem_upper_sm_reconn 
+0x6d32 030571 rtn 
+:      030572 process_upper_sm_reconn_hid_ctrl_conn:
+0x6d33 030573 call upper_sm_send_hid_ctrl_conn 
+0x6d34 030574 jam uppersm_reconn_hid_ctrl_conn_wait ,mem_upper_sm_reconn 
+0x6d35 030575 fetch 1 ,mem_hid_control_state 
+0x6d36 030576 set1 l2cap_channel_state_conn_req ,pdata 
+0x6d37 030577 store 1 ,mem_hid_control_state 
+0x6d38 030578 rtn 
+:      030579 process_upper_sm_reconn_hid_ctrl_cfg:
+0x6d39 030580 call upper_sm_send_hid_ctrl_cfg 
+0x6d3a 030581 jam uppersm_reconn_hid_ctrl_cfg_wait ,mem_upper_sm_reconn 
+0x6d3b 030582 fetch 1 ,mem_hid_control_state 
+0x6d3c 030583 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x6d3d 030584 store 1 ,mem_hid_control_state 
+0x6d3e 030585 rtn 
+:      030586 process_upper_sm_reconn_hid_int_conn:
+0x6d3f 030587 call upper_sm_send_hid_int_conn 
+0x6d40 030588 jam uppersm_reconn_hid_int_conn_wait ,mem_upper_sm_reconn 
+0x6d41 030589 fetch 1 ,mem_hid_interrupt_state 
+0x6d42 030590 set1 l2cap_channel_state_conn_req ,pdata 
+0x6d43 030591 store 1 ,mem_hid_interrupt_state 
+0x6d44 030592 rtn 
+:      030593 process_upper_sm_reconn_hid_int_cfg:
+0x6d45 030594 call upper_sm_send_hid_int_cfg 
+0x6d46 030595 jam uppersm_reconn_hid_int_cfg_wait ,mem_upper_sm_reconn 
+0x6d47 030596 fetch 1 ,mem_hid_interrupt_state 
+0x6d48 030597 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x6d49 030598 store 1 ,mem_hid_interrupt_state 
+0x6d4a 030599 rtn 
+:      030600 process_upper_sm_reconn_rfcomm_conn:
+0x6d4b 030601 call upper_sm_send_rfcomm_conn 
+0x6d4c 030602 jam uppersm_reconn_rfcomm_conn_wait ,mem_upper_sm_reconn 
+0x6d4d 030603 fetch 1 ,mem_rfcomm_state 
+0x6d4e 030604 set1 l2cap_channel_state_conn_req ,pdata 
+0x6d4f 030605 store 1 ,mem_rfcomm_state 
+0x6d50 030606 rtn 
+:      030607 process_upper_sm_reconn_rfcomm_cfg:
+0x6d51 030608 call upper_sm_send_rfcomm_cfg 
+0x6d52 030609 jam uppersm_reconn_rfcomm_cfg_wait ,mem_upper_sm_reconn 
+0x6d53 030610 fetch 1 ,mem_rfcomm_state 
+0x6d54 030611 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x6d55 030612 store 1 ,mem_rfcomm_state 
+0x6d56 030613 rtn 
+:      030614 process_upper_sm_reconn_rfcomm_sabm:
+0x6d57 030615 call upper_sm_send_rfcomm_sabm 
+0x6d58 030616 jam uppersm_reconn_rfcomm_sabm_wait ,mem_upper_sm_reconn 
+0x6d59 030617 fetch 1 ,mem_rfcomm_state 
+0x6d5a 030618 set1 l2cap_channel_rfcomm_only_sabm ,pdata 
+0x6d5b 030619 store 1 ,mem_rfcomm_state 
+0x6d5c 030620 rtn 
+:      030621 process_upper_sm_reconn_spp_cmd_pn:
+0x6d5d 030622 call upper_sm_send_spp_cmd_pn 
+0x6d5e 030623 fetch 1 ,mem_spp_state 
+0x6d5f 030624 set1 rfcomm_channel_state_pn_cmd 
+0x6d60 030625 store 1 ,mem_spp_state 
+0x6d61 030626 jam uppersm_reconn_spp_cmd_pn_wait ,mem_upper_sm_reconn 
+0x6d62 030627 rtn 
+:      030628 process_upper_sm_reconn_spp_sabm:
+0x6d63 030629 call upper_sm_send_spp_sabm 
+0x6d64 030630 fetch 1 ,mem_spp_state 
+0x6d65 030631 set1 rfcomm_channel_state_sabm 
+0x6d66 030632 store 1 ,mem_spp_state 
+0x6d67 030633 jam uppersm_reconn_spp_sabm_wait ,mem_upper_sm_reconn 
+0x6d68 030634 fetch 1 ,mem_remote_spp_channel 
+0x6d69 030635 lshift3 pdata ,pdata 
+0x6d6a 030636 or_into 3 ,pdata 
+0x6d6b 030637 arg mem_hiufcs_spp ,temp 
+0x6d6c 030638 storet 2 ,mem_contw_temp 
+0x6d6d 030639 branch rfcomm_save_fcs_uih 
+:      030640 process_upper_sm_reconn_spp_cmd_ms:
+0x6d6e 030641 call upper_sm_send_spp_cmd_ms 
+0x6d6f 030642 fetch 1 ,mem_spp_state 
+0x6d70 030643 set1 rfcomm_channel_state_snd_ms_cmd 
+0x6d71 030644 store 1 ,mem_spp_state 
+0x6d72 030645 jam uppersm_reconn_spp_cmd_ms_wait ,mem_upper_sm_reconn 
+0x6d73 030646 rtn 
+:      030648 process_upper_sm_reconn_sdp_conn_wait:
+0x6d74 030649 fetch 1 ,mem_sdp_state 
+0x6d75 030650 rtnbit0 l2cap_channel_state_conn_res 
+0x6d76 030651 jam uppersm_reconn_sdp_cfg ,mem_upper_sm_reconn 
+0x6d77 030652 branch process_upper_sm_reconn 
+:      030653 process_upper_sm_reconn_sdp_cfg_wait:
+0x6d78 030654 fetch 1 ,mem_sdp_state 
+0x6d79 030655 rtnne l2cap_channel_setup_complete 
+0x6d7a 030656 jam uppersm_reconn_ss_spp ,mem_upper_sm_reconn 
+:      030657 process_upper_sm_reconn_ss_spp_wait:
+0x6d7b 030658 fetch 1 ,mem_message_to_uppersm 
+0x6d7c 030659 rtnne recieve_ss_reasult_hf 
+0x6d7d 030660 jam 0 ,mem_message_to_uppersm 
+0x6d7e 030661 jam uppersm_reconn_sdp_disconn ,mem_upper_sm_reconn 
+0x6d7f 030662 branch process_upper_sm_reconn 
+:      030663 process_upper_sm_reconn_sdp_disconn_wait:
+0x6d80 030664 fetch 1 ,mem_sdp_state 
+0x6d81 030665 nrtn blank 
+0x6d82 030666 fetch 1 ,mem_ui_profile_supported 
+0x6d83 030667 bbit1 support_hid ,process_upper_sm_reconn_setup_hid 
+0x6d84 030668 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
+0x6d85 030669 branch process_upper_sm_reconn_termination 
+:      030670 process_upper_sm_reconn_hid_ctrl_conn_wait:
+0x6d86 030671 fetch 1 ,mem_hid_control_state 
+0x6d87 030672 rtnbit0 l2cap_channel_state_conn_res 
+0x6d88 030673 jam uppersm_reconn_hid_ctrl_cfg ,mem_upper_sm_reconn 
+0x6d89 030674 branch process_upper_sm_reconn 
+:      030675 process_upper_sm_reconn_hid_ctrl_cfg_wait:
+0x6d8a 030676 fetch 1 ,mem_hid_control_state 
+0x6d8b 030677 rtnne l2cap_channel_setup_complete 
+0x6d8c 030678 jam uppersm_reconn_hid_int_conn ,mem_upper_sm_reconn 
+0x6d8d 030679 branch process_upper_sm_reconn 
+:      030680 process_upper_sm_reconn_hid_int_conn_wait:
+0x6d8e 030681 fetch 1 ,mem_hid_interrupt_state 
+0x6d8f 030682 rtnbit0 l2cap_channel_state_conn_res 
+0x6d90 030683 jam uppersm_reconn_hid_int_cfg ,mem_upper_sm_reconn 
+0x6d91 030684 branch process_upper_sm_reconn 
+:      030685 process_upper_sm_reconn_hid_int_cfg_wait:
+0x6d92 030686 fetch 1 ,mem_hid_interrupt_state 
+0x6d93 030687 rtnne l2cap_channel_setup_complete 
+0x6d94 030688 fetch 1 ,mem_ui_profile_supported 
+0x6d95 030689 bbit1 support_spp ,process_upper_sm_reconn_setup_rfcomm 
+0x6d96 030690 branch process_upper_sm_reconn_termination 
+:      030691 process_upper_sm_reconn_rfcomm_conn_wait:
+0x6d97 030692 fetch 1 ,mem_rfcomm_state 
+0x6d98 030693 rtnbit0 l2cap_channel_state_conn_res 
+0x6d99 030694 jam uppersm_reconn_rfcomm_cfg ,mem_upper_sm_reconn 
+0x6d9a 030695 branch process_upper_sm_reconn 
+:      030696 process_upper_sm_reconn_rfcomm_cfg_wait:
+0x6d9b 030697 fetch 1 ,mem_rfcomm_state 
+0x6d9c 030698 rtnne l2cap_channel_setup_complete 
+0x6d9d 030699 jam uppersm_reconn_rfcomm_sabm ,mem_upper_sm_reconn 
+0x6d9e 030700 branch process_upper_sm_reconn 
+:      030701 process_upper_sm_reconn_rfcomm_sabm_wait:
+0x6d9f 030702 fetch 1 ,mem_rfcomm_state 
+0x6da0 030703 rtnne l2cap_channel_rfcomm_dlci0_opened 
+0x6da1 030704 fetch 1 ,mem_ui_profile_supported 
+0x6da2 030705 bbit1 support_spp ,process_upper_sm_reconn_setup_spp 
+0x6da3 030706 branch process_upper_sm_reconn_termination 
+:      030707 process_upper_sm_reconn_spp_cmd_pn_wait:
+0x6da4 030708 fetch 1 ,mem_spp_state 
+0x6da5 030709 rtnbit0 rfcomm_channel_state_pn_res 
+0x6da6 030710 jam uppersm_reconn_spp_sabm ,mem_upper_sm_reconn 
+0x6da7 030711 branch process_upper_sm_reconn 
+:      030712 process_upper_sm_reconn_spp_sabm_wait:
+0x6da8 030713 fetch 1 ,mem_spp_state 
+0x6da9 030714 rtnbit0 rfcomm_channel_state_ua 
+0x6daa 030715 jam uppersm_reconn_spp_cmd_ms ,mem_upper_sm_reconn 
+0x6dab 030716 branch process_upper_sm_reconn 
+:      030717 process_upper_sm_reconn_spp_cmd_ms_wait:
+0x6dac 030718 fetch 1 ,mem_spp_state 
+0x6dad 030719 rtnne rfcomm_channel_setup_complete 
+0x6dae 030720 branch process_upper_sm_reconn_termination 
+:      030722 process_upper_sm_reconn_setup_hid:
+0x6daf 030723 jam uppersm_reconn_hid_ctrl_conn ,mem_upper_sm_reconn 
+0x6db0 030724 branch process_upper_sm_reconn 
+:      030726 process_upper_sm_reconn_setup_rfcomm:
+0x6db1 030727 jam uppersm_reconn_rfcomm_conn ,mem_upper_sm_reconn 
+0x6db2 030728 branch process_upper_sm_reconn 
+:      030729 process_upper_sm_reconn_setup_spp:
+0x6db3 030730 jam uppersm_reconn_spp_cmd_pn ,mem_upper_sm_reconn 
+0x6db4 030731 branch process_upper_sm_reconn 
+:      030735 process_upper_sm_reconn_termination:
+0x6db5 030736 jam 0 ,mem_upper_sm_reconn 
+0x6db6 030737 rtn 
+:      030738 upper_sm_send_sdp_conn:
+0x6db7 030739 bpatchx patch37_7 ,mem_patch37 
+0x6db8 030740 call l2cap_malloc_signal_channel 
+0x6db9 030741 setarg psm_sdp 
+0x6dba 030742 copy pdata ,temp 
+0x6dbb 030743 setarg l2cap_sdp_channel 
+0x6dbc 030744 copy pdata ,timeup 
+0x6dbd 030745 branch ml2cap_send_signal_connect_req 
+:      030747 upper_sm_send_sdp_cfg:
+0x6dbe 030748 bpatchx patch38_0 ,mem_patch38 
+0x6dbf 030749 call l2cap_malloc_signal_channel 
+0x6dc0 030750 fetch 2 ,mem_sdp_remote_cid 
+0x6dc1 030751 copy pdata ,temp 
+0x6dc2 030752 branch ml2cap_send_signal_config_req 
+:      030754 upper_sm_send_sdp_disconn:
+0x6dc3 030755 bpatchx patch38_1 ,mem_patch38 
+0x6dc4 030756 call l2cap_malloc_signal_channel 
+0x6dc5 030757 fetch 2 ,mem_sdp_remote_cid 
+0x6dc6 030758 copy pdata ,temp 
+0x6dc7 030759 arg l2cap_sdp_channel ,timeup 
+0x6dc8 030760 call ml2cap_send_signal_disconn_req 
+0x6dc9 030761 fetch 1 ,mem_sdp_state 
+0x6dca 030762 set0 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x6dcb 030763 store 1 ,mem_sdp_state 
+0x6dcc 030764 rtn 
+:      030766 upper_sm_send_ss_spp:
+0x6dcd 030767 bpatchx patch38_2 ,mem_patch38 
+0x6dce 030768 call l2cap_malloc_sdp_channel 
+0x6dcf 030769 call sdp_send_spp_request 
+0x6dd0 030770 branch msdp_send_req_done 
+:      030772 upper_sm_send_rfcomm_conn:
+0x6dd1 030773 bpatchx patch38_3 ,mem_patch38 
+0x6dd2 030774 call l2cap_malloc_signal_channel 
+0x6dd3 030775 setarg psm_rfcomm 
+0x6dd4 030776 copy pdata ,temp 
+0x6dd5 030777 setarg l2cap_rfcomm_channel 
+0x6dd6 030778 copy pdata ,timeup 
+0x6dd7 030779 branch ml2cap_send_signal_connect_req 
+:      030781 upper_sm_send_rfcomm_cfg:
+0x6dd8 030782 bpatchx patch38_4 ,mem_patch38 
+0x6dd9 030783 call l2cap_malloc_signal_channel 
+0x6dda 030784 fetch 2 ,mem_rfcomm_remote_cid 
+0x6ddb 030785 copy pdata ,temp 
+0x6ddc 030786 branch ml2cap_send_signal_config_req 
+:      030788 upper_sm_send_hid_ctrl_conn:
+0x6ddd 030789 bpatchx patch38_5 ,mem_patch38 
+0x6dde 030790 call l2cap_malloc_signal_channel 
+0x6ddf 030791 setarg psm_hid_control 
+0x6de0 030792 copy pdata ,temp 
+0x6de1 030793 setarg l2cap_hid_control_channel 
+0x6de2 030794 copy pdata ,timeup 
+0x6de3 030795 branch ml2cap_send_signal_connect_req 
+:      030797 upper_sm_send_hid_ctrl_cfg:
+0x6de4 030798 bpatchx patch38_6 ,mem_patch38 
+0x6de5 030799 call l2cap_malloc_signal_channel 
+0x6de6 030800 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x6de7 030801 copy pdata ,temp 
+0x6de8 030802 branch ml2cap_send_signal_config_req 
+:      030804 upper_sm_send_hid_int_conn:
+0x6de9 030805 bpatchx patch38_7 ,mem_patch38 
+0x6dea 030806 call l2cap_malloc_signal_channel 
+0x6deb 030807 setarg psm_hid_interrupt 
+0x6dec 030808 copy pdata ,temp 
+0x6ded 030809 setarg l2cap_hid_interrupt_channel 
+0x6dee 030810 copy pdata ,timeup 
+0x6def 030811 branch ml2cap_send_signal_connect_req 
+:      030813 upper_sm_send_hid_int_cfg:
+0x6df0 030814 bpatchx patch39_0 ,mem_patch39 
+0x6df1 030815 call l2cap_malloc_signal_channel 
+0x6df2 030816 fetch 2 ,mem_hid_int_remote_cid 
+0x6df3 030817 copy pdata ,temp 
+0x6df4 030818 branch ml2cap_send_signal_config_req 
+:      030820 upper_sm_send_rfcomm_sabm:
+0x6df5 030821 bpatchx patch39_1 ,mem_patch39 
+0x6df6 030822 call l2cap_malloc_rfcomm_channel 
+0x6df7 030824 jam 3 ,mem_current_adss 
+0x6df8 030825 jam 0x1c ,mem_current_fcs 
+0x6df9 030826 call rfcomm_send_sabm 
+0x6dfa 030827 jam 1 ,mem_rfcomm_initiator 
+0x6dfb 030828 rtn 
+:      030830 upper_sm_send_spp_cmd_pn:
+0x6dfc 030831 bpatchx patch39_2 ,mem_patch39 
+0x6dfd 030832 call l2cap_malloc_rfcomm_channel 
+0x6dfe 030833 fetcht 1 ,mem_remote_spp_channel 
+0x6dff 030834 call channel_to_dlci 
+0x6e00 030835 storet 1 ,mem_pn_dlci 
+0x6e01 030836 branch rfcomm_send_param_neg_cmd 
+:      030838 upper_sm_send_spp_sabm:
+0x6e02 030839 bpatchx patch39_3 ,mem_patch39 
+0x6e03 030840 call l2cap_malloc_rfcomm_channel 
+0x6e04 030841 fetcht 1 ,mem_pn_dlci 
+0x6e05 030842 call dlci_to_address_cmd 
+0x6e06 030843 call rfcomm_calculate_fcs_sabm 
+0x6e07 030844 store 1 ,mem_current_fcs 
+0x6e08 030845 fetcht 1 ,mem_pn_dlci 
+0x6e09 030846 call dlci_to_address_cmd 
+0x6e0a 030847 storet 1 ,mem_current_adss 
+0x6e0b 030848 branch rfcomm_send_sabm 
+:      030850 upper_sm_send_spp_cmd_ms:
+0x6e0c 030851 bpatchx patch39_4 ,mem_patch39 
+0x6e0d 030852 call l2cap_malloc_rfcomm_channel 
+0x6e0e 030853 fetcht 1 ,mem_pn_dlci 
+0x6e0f 030854 call dlci_to_address_cmd 
+0x6e10 030855 branch rfcomm_send_modem_status_cmd 
+:      030868 sdp_process:
+0x6e11 030869 bpatchx patch39_5 ,mem_patch39 
+0x6e12 030870 fetch 2 ,mem_l2cap_payload_ptr 
+0x6e13 030871 iforce contr 
+0x6e14 030874 ifetch 1 ,contr 
+0x6e15 030875 copy pdata ,regb 
+0x6e16 030876 store 1 ,mem_sdp_pduid 
+0x6e17 030877 ifetch 2 ,contr 
+0x6e18 030878 store 2 ,mem_sdp_transactionid 
+0x6e19 030879 ifetch 1 ,contr 
+0x6e1a 030880 lshift8 pdata ,timeup 
+0x6e1b 030881 ifetch 1 ,contr 
+0x6e1c 030882 iadd timeup ,timeup 
+0x6e1d 030883 bpatchx patch39_6 ,mem_patch39 
+0x6e1e 030884 copy contr ,temp 
+0x6e1f 030885 arg 4 ,loopcnt 
+0x6e20 030886 arg mem_sdp_handle_list ,contw 
+0x6e21 030887 call memset0 
+0x6e22 030888 copy temp ,contr 
+0x6e23 030889 deposit regb 
+0x6e24 030890 beq sdp_error_res ,sdp_process_error_res 
+0x6e25 030891 beq sdp_search_req ,sdp_process_ss_req 
+0x6e26 030892 beq sdp_search_res ,sdp_process_ss_res 
+0x6e27 030893 beq sdp_attribute_req ,sdp_process_sa_req 
+0x6e28 030894 beq sdp_attribute_res ,sdp_process_sa_res 
+0x6e29 030895 beq sdp_searchattrib_req ,sdp_process_ssa_req 
+0x6e2a 030896 beq sdp_searchattrib_res ,sdp_process_ssa_res 
+0x6e2b 030897 branch sdp_insufficient_resource 
+:      030908 sdp_process_ss_req:
+0x6e2c 030909 bpatchx patch39_7 ,mem_patch39 
+0x6e2d 030910 call ask_serviceclassid 
+0x6e2e 030911 compare 1 ,temp ,0xff 
+0x6e2f 030912 branch ss_empty_rsp ,true 
+0x6e30 030913 compare 0xff ,temp ,0xff 
+0x6e31 030914 branch sdp_invalid_request_syntax ,true 
+0x6e32 030916 ifetch 2 ,contr 
+0x6e33 030917 store 2 ,mem_sdp_record_maxcnt 
+0x6e34 030918 increase -2 ,timeup 
+0x6e35 030920 increase -1 ,timeup 
+0x6e36 030921 nbranch sdp_invalid_pdu_size ,zero 
+0x6e37 030922 arg mem_sdp_uuid_search_ptr ,timeup 
+0x6e38 030923 ifetch 2 ,timeup 
+0x6e39 030924 rtn blank 
+0x6e3a 030925 call search_all_uuid 
+0x6e3b 030926 call l2cap_get_sdp_tx_payload 
+0x6e3c 030927 force 3 ,pdata 
+0x6e3d 030928 istore 1 ,contw 
+0x6e3e 030929 fetch 2 ,mem_sdp_transactionid 
+0x6e3f 030930 istore 2 ,contw 
+0x6e40 030931 lshift2 queue ,pdata 
+0x6e41 030932 add pdata ,5 ,pdata 
+0x6e42 030933 add pdata ,5 ,regc 
+0x6e43 030934 byteswap pdata ,pdata 
+0x6e44 030935 istore 2 ,contw 
+0x6e45 030936 deposit queue 
+0x6e46 030937 byteswap pdata ,pdata 
+0x6e47 030938 istore 2 ,contw 
+0x6e48 030939 istore 2 ,contw 
+0x6e49 030940 arg mem_sdp_handle_list ,contr 
+0x6e4a 030941 copy queue ,loopcnt 
+0x6e4b 030942 branch ss_req_blank ,zero 
+:      030943 ss_req_loop:
+0x6e4c 030944 ifetch 4 ,contr 
+0x6e4d 030945 istore 4 ,contw 
+0x6e4e 030946 loop ss_req_loop 
+:      030947 ss_req_blank:
+0x6e4f 030948 force 0 ,pdata 
+0x6e50 030949 istore 1 ,contw 
+0x6e51 030950 deposit regc 
+0x6e52 030951 store 2 ,mem_sdp_tx_pkt_length 
+0x6e53 030953 rtn 
+:      030964 sdp_process_sa_req:
+0x6e54 030965 bpatchx patch3a_0 ,mem_patch3a 
+0x6e55 030966 ifetch 4 ,contr 
+0x6e56 030967 store 4 ,mem_sdp_record_handle 
+0x6e57 030968 increase -4 ,timeup 
+0x6e58 030969 call sdp_store_maxbyte 
+0x6e59 030970 store 2 ,mem_sdp_attribute_maxbyte 
+0x6e5a 030971 increase -2 ,timeup 
+0x6e5b 030972 call dataelementtype6 
+0x6e5c 030973 branch sdp_invalid_request_syntax ,zero 
+0x6e5d 030974 compare 5 ,rega ,0xff 
+0x6e5e 030976 branch sa_judge_wholerange ,true 
+:      030977 sa_isnot_wholerange:
+0x6e5f 030978 arg mem_sdp_attrib_list ,contw 
+0x6e60 030979 force 0 ,queue 
+0x6e61 030980 branch sa_req_loop 
+:      030981 sa_judge_wholerange:
+0x6e62 030982 ifetch 1 ,contr 
+0x6e63 030983 bne sdp_attribute_range ,sdp_invalid_request_syntax 
+0x6e64 030984 ifetch 2 ,contr 
+0x6e65 030985 nbranch sa_judge_wholerange_false1 ,blank 
+0x6e66 030986 ifetch 1 ,contr 
+0x6e67 030987 bne 0xff ,sa_judge_wholerange_false2 
+0x6e68 030988 ifetch 1 ,contr 
+0x6e69 030989 bne 0xff ,sa_judge_wholerange_false3 
+0x6e6a 030990 branch sa_req_all 
+:      030991 sa_judge_wholerange_false3:
+0x6e6b 030992 increase -5 ,contr 
+0x6e6c 030993 branch sa_isnot_wholerange 
+:      030994 sa_judge_wholerange_false2:
+0x6e6d 030995 increase -4 ,contr 
+0x6e6e 030996 branch sa_isnot_wholerange 
+:      030997 sa_judge_wholerange_false1:
+0x6e6f 030998 increase -3 ,contr 
+0x6e70 030999 branch sa_isnot_wholerange 
+:      031000 sa_req_loop:
+0x6e71 031001 ifetch 1 ,contr 
+0x6e72 031002 beq sdp_attribute_id ,sa_req_one_id 
+0x6e73 031003 beq sdp_attribute_range ,sa_req_range 
+:      031004 sa_req_range:
+0x6e74 031005 ifetch 2 ,contr 
+0x6e75 031006 istore 2 ,contw 
+0x6e76 031007 increase 1 ,queue 
+0x6e77 031008 byteswap pdata ,regb 
+0x6e78 031009 ifetch 2 ,contr 
+0x6e79 031010 byteswap pdata ,pdata 
+:      031011 sa_req_range_id_increase:
+0x6e7a 031012 increase 1 ,regb 
+0x6e7b 031013 isub regb ,null 
+0x6e7c 031014 nbranch sa_req_range_id_finish ,positive 
+0x6e7d 031015 copy pdata ,regc 
+0x6e7e 031016 byteswap regb ,pdata 
+0x6e7f 031017 istore 2 ,contw 
+0x6e80 031018 increase 1 ,queue 
+0x6e81 031019 copy regc ,pdata 
+0x6e82 031020 branch sa_req_range_id_increase 
+:      031021 sa_req_range_id_finish:
+0x6e83 031022 increase -5 ,timeup 
+0x6e84 031023 increase -5 ,rega 
+0x6e85 031024 branch sa_req_check_next_id 
+:      031025 sa_req_one_id:
+0x6e86 031026 ifetch 2 ,contr 
+0x6e87 031027 istore 2 ,contw 
+0x6e88 031028 increase 1 ,queue 
+0x6e89 031029 increase -3 ,timeup 
+0x6e8a 031030 increase -3 ,rega 
+:      031031 sa_req_check_next_id:
+0x6e8b 031032 nbranch sdp_invalid_request_syntax ,positive 
+0x6e8c 031033 nbranch sa_req_loop ,zero 
+0x6e8d 031034 increase -1 ,timeup 
+0x6e8e 031035 nbranch sdp_invalid_request_syntax ,zero 
+0x6e8f 031037 call l2cap_get_sdp_tx_payload 
+0x6e90 031038 increase 10 ,contw 
+0x6e91 031039 arg mem_sdp_attrib_list ,rega 
+:      031040 sa_req_handle_attributelist_next:
+0x6e92 031041 copy queue ,pdata 
+0x6e93 031042 branch sa_req_handle_attributelist_end ,blank 
+0x6e94 031043 ifetch 2 ,rega 
+0x6e95 031044 branch sa_req_handle_attributelist_end ,blank 
+0x6e96 031045 iforce regb 
+0x6e97 031046 fetch 4 ,mem_sdp_record_handle 
+0x6e98 031047 iforce temp 
+0x6e99 031048 call search_handle_attrib 
+0x6e9a 031049 copy contr ,pdata 
+0x6e9b 031050 branch sa_req_handle_attributelist_notfound ,blank 
+0x6e9c 031051 increase -3 ,contr 
+0x6e9d 031052 ifetch 3 ,contr 
+0x6e9e 031053 istore 3 ,contw 
+0x6e9f 031054 call sdp_data_len 
+0x6ea0 031055 iforce loopcnt 
+0x6ea1 031056 call memcpy 
+:      031057 sa_req_handle_attributelist_notfound:
+0x6ea2 031058 increase 2 ,rega 
+0x6ea3 031059 increase -1 ,queue 
+0x6ea4 031060 branch sa_req_handle_attributelist_next 
+:      031062 sa_req_handle_attributelist_end:
+0x6ea5 031063 arg sdp_attribute_res ,rega 
+0x6ea6 031064 call ssa_req_range_lastfreg_common 
+0x6ea7 031065 fetch 2 ,mem_sdp_tx_pkt_length 
+0x6ea8 031066 beq 11 ,sa_empty_rsp 
+0x6ea9 031067 branch ssa_req_range_attrbutes_length_no_continue 
+:      031070 sdp_store_continue_common:
+0x6eaa 031071 ifetch 1 ,contr 
+0x6eab 031072 beq 0 ,sdp_store_continue_0byte 
+0x6eac 031073 beq 1 ,sdp_store_continue_1byte 
+0x6ead 031074 beq 2 ,sdp_store_continue_2byte 
+:      031075 sdp_store_continue_0byte:
+0x6eae 031076 increase -1 ,timeup 
+0x6eaf 031077 branch sdp_store_continue_end 
+:      031078 sdp_store_continue_1byte:
+0x6eb0 031079 ifetch 1 ,contr 
+0x6eb1 031080 increase -2 ,timeup 
+0x6eb2 031081 branch sdp_store_continue_end 
+:      031082 sdp_store_continue_2byte:
+0x6eb3 031083 ifetch 2 ,contr 
+0x6eb4 031084 byteswap pdata ,pdata 
+0x6eb5 031085 increase -3 ,timeup 
+:      031086 sdp_store_continue_end:
+0x6eb6 031087 store 2 ,mem_sdp_continue_byte 
+0x6eb7 031088 rtn 
+:      031090 sa_req_all:
+0x6eb8 031091 increase -5 ,timeup 
+0x6eb9 031092 call sdp_store_continue_common 
+0x6eba 031093 nbranch sdp_invalid_pdu_size ,zero 
+0x6ebb 031094 fetcht 4 ,mem_sdp_record_handle 
+0x6ebc 031095 call search_handle 
+0x6ebd 031096 nbranch sdp_invalid_service_record_handle ,zero 
+0x6ebe 031097 copy contr ,rega 
+0x6ebf 031098 call l2cap_get_sdp_tx_payload 
+0x6ec0 031099 copy rega ,contr 
+0x6ec1 031100 increase 3 ,contw 
+0x6ec2 031101 copy contr ,timeup 
+0x6ec3 031102 call sdp_get_data 
+0x6ec4 031103 copy pdata ,rega 
+0x6ec5 031105 fetch 2 ,mem_sdp_continue_byte 
+0x6ec6 031106 copy pdata ,regb 
+0x6ec7 031107 copy rega ,pdata 
+0x6ec8 031108 isub regb ,regb 
+0x6ec9 031109 fetch 2 ,mem_sdp_attribute_maxbyte 
+0x6eca 031110 isub regb ,null 
+0x6ecb 031111 nbranch sa_req_all_fragment_sdp ,positive 
+0x6ecc 031113 disable user 
+0x6ecd 031114 fetch 2 ,mem_sdp_continue_byte 
+0x6ece 031115 branch sa_req_all_fisrt_fragment ,blank 
+0x6ecf 031116 iadd timeup ,contr 
+0x6ed0 031117 increase 3 ,regb 
+0x6ed1 031118 copy regb ,loopcnt 
+0x6ed2 031119 copy loopcnt ,pdata 
+0x6ed3 031120 increase 3 ,pdata 
+0x6ed4 031121 byteswap pdata ,pdata 
+0x6ed5 031122 istore 2 ,contw 
+0x6ed6 031123 copy loopcnt ,pdata 
+0x6ed7 031124 byteswap pdata ,pdata 
+0x6ed8 031125 istore 2 ,contw 
+0x6ed9 031126 branch sa_req_all_answer_attributelist_full_loop 
+:      031127 sa_req_all_fisrt_fragment:
+0x6eda 031128 add rega ,6 ,loopcnt 
+0x6edb 031129 branch sa_req_all_parlength_continue_byte ,user 
+0x6edc 031130 byteswap loopcnt ,pdata 
+0x6edd 031131 branch sa_req_all_parlength_continue_byte_end 
+:      031132 sa_req_all_parlength_continue_byte:
+0x6ede 031133 copy loopcnt ,pdata 
+0x6edf 031134 increase 2 ,pdata 
+0x6ee0 031135 byteswap pdata ,pdata 
+:      031136 sa_req_all_parlength_continue_byte_end:
+0x6ee1 031137 istore 2 ,contw 
+0x6ee2 031138 increase -3 ,loopcnt 
+0x6ee3 031139 byteswap loopcnt ,pdata 
+0x6ee4 031140 istore 2 ,contw 
+0x6ee5 031141 copy timeup ,contr 
+0x6ee6 031142 branch sa_req_all_answer_attributelist_full_loop 
+:      031143 sa_req_all_fragment_sdp:
+0x6ee7 031144 enable user 
+0x6ee8 031146 fetch 2 ,mem_sdp_attribute_maxbyte 
+0x6ee9 031147 copy pdata ,rega 
+0x6eea 031148 copy rega ,loopcnt 
+0x6eeb 031149 fetch 2 ,mem_sdp_continue_byte 
+0x6eec 031150 branch sa_req_all_fisrt_fragment ,blank 
+0x6eed 031151 iadd timeup ,contr 
+0x6eee 031152 copy rega ,pdata 
+0x6eef 031153 increase 5 ,pdata 
+0x6ef0 031154 byteswap pdata ,pdata 
+0x6ef1 031155 istore 2 ,contw 
+0x6ef2 031156 copy rega ,pdata 
+0x6ef3 031157 byteswap pdata ,pdata 
+0x6ef4 031158 istore 2 ,contw 
+:      031159 sa_req_all_answer_attributelist_full_loop:
+0x6ef5 031160 call memcpy 
+0x6ef6 031161 nbranch sa_req_all_last_frag_continue ,user 
+0x6ef7 031162 force 2 ,pdata 
+0x6ef8 031163 istore 1 ,contw 
+0x6ef9 031164 copy contr ,pdata 
+0x6efa 031165 isub timeup ,pdata 
+0x6efb 031166 byteswap pdata ,pdata 
+0x6efc 031167 istore 2 ,contw 
+0x6efd 031168 branch sa_req_all_frag_end 
+:      031169 sa_req_all_last_frag_continue:
+0x6efe 031170 force 0 ,pdata 
+0x6eff 031171 istore 1 ,contw 
+:      031172 sa_req_all_frag_end:
+0x6f00 031173 arg sdp_attribute_res ,rega 
+0x6f01 031174 branch ssa_req_range_common 
+:      031185 sdp_process_ssa_req:
+0x6f02 031186 bpatchx patch3a_1 ,mem_patch3a 
+0x6f03 031187 call ask_serviceclassid 
+0x6f04 031188 compare 0xff ,temp ,0xff 
+0x6f05 031189 branch sdp_invalid_request_syntax ,true 
+0x6f06 031190 call sdp_store_maxbyte 
+0x6f07 031191 store 2 ,mem_sdp_attribute_maxbyte 
+0x6f08 031192 increase -2 ,timeup 
+0x6f09 031193 call dataelementtype6 
+0x6f0a 031194 arg mem_sdp_attrib_list ,contw 
+0x6f0b 031195 force 0 ,queue 
+:      031196 ssa_req_loop:
+0x6f0c 031197 ifetch 1 ,contr 
+0x6f0d 031198 beq sdp_attribute_range ,ssa_req_range 
+0x6f0e 031199 ifetch 2 ,contr 
+0x6f0f 031200 istore 2 ,contw 
+0x6f10 031201 increase 1 ,queue 
+0x6f11 031202 increase -3 ,timeup 
+0x6f12 031203 increase -3 ,rega 
+0x6f13 031204 nbranch sdp_invalid_request_syntax ,positive 
+0x6f14 031205 nbranch ssa_req_loop ,zero 
+0x6f15 031206 increase -1 ,timeup 
+0x6f16 031207 nbranch sdp_invalid_request_syntax ,zero 
+0x6f17 031208 call l2cap_get_sdp_tx_payload 
+0x6f18 031209 increase 13 ,contw 
+0x6f19 031210 fetch 2 ,mem_sdp_uuid_search_ptr 
+0x6f1a 031211 iforce regc 
+0x6f1b 031212 arg mem_sdp_attrib_list ,rega 
+:      031213 ssa_req_attributelist_next:
+0x6f1c 031214 ifetch 2 ,rega 
+0x6f1d 031215 branch ssa_req_attributelist_end ,blank 
+0x6f1e 031216 iforce regb 
+0x6f1f 031217 call search_attrib 
+0x6f20 031218 branch ssa_req_attributelist_notfound ,blank 
+0x6f21 031219 increase -3 ,contr 
+0x6f22 031220 ifetch 3 ,contr 
+0x6f23 031221 istore 3 ,contw 
+0x6f24 031222 call sdp_data_len 
+0x6f25 031223 iforce loopcnt 
+0x6f26 031224 call memcpy 
+:      031225 ssa_req_attributelist_notfound:
+0x6f27 031226 increase 2 ,rega 
+0x6f28 031227 branch ssa_req_attributelist_next 
+:      031229 ssa_req_attributelist_end:
+0x6f29 031230 call ssa_req_range_lastfreg 
+0x6f2a 031231 fetch 2 ,mem_sdp_tx_pkt_length 
+0x6f2b 031232 beq 14 ,ssa_empty_rsp 
+0x6f2c 031233 call ssa_req_range_attrbutes_length_no_continue 
+0x6f2d 031234 branch ssa_req_range_attrbutes_length_no_continue 
+:      031237 sdp_store_maxbyte:
+0x6f2e 031238 ifetch 2 ,contr 
+0x6f2f 031239 byteswap pdata ,pdata 
+0x6f30 031240 increase -3 ,pdata 
+0x6f31 031241 arg 200 ,temp 
+0x6f32 031242 isub temp ,null 
+0x6f33 031243 nrtn positive 
+0x6f34 031244 setarg 200 
+0x6f35 031245 rtn 
+:      031248 ssa_req_range:
+0x6f36 031249 increase 4 ,contr 
+0x6f37 031250 increase -5 ,timeup 
+0x6f38 031251 increase -5 ,rega 
+0x6f39 031252 nbranch sdp_invalid_request_syntax ,zero 
+0x6f3a 031253 call sdp_store_continue_common 
+0x6f3b 031254 nbranch sdp_invalid_pdu_size ,zero 
+0x6f3c 031255 arg mem_sdp_uuid_search_ptr ,timeup 
+0x6f3d 031256 call search_all_uuid 
+0x6f3e 031257 deposit queue 
+0x6f3f 031258 branch ssa_empty_rsp ,blank 
+0x6f40 031259 store 1 ,mem_handle_humber 
+0x6f41 031261 copy regb ,pdata 
+0x6f42 031262 store 2 ,mem_sdp_all_length 
+0x6f43 031263 arg 0 ,queue 
+0x6f44 031264 arg 0 ,rega 
+0x6f45 031265 call l2cap_get_sdp_tx_payload 
+0x6f46 031266 increase 10 ,contw 
+:      031267 ssa_req_range_find_handle:
+0x6f47 031268 call ssa_req_range_get_length 
+0x6f48 031269 nbranch assert ,user 
+0x6f49 031270 copy contr ,timeup 
+0x6f4a 031271 copy pdata ,regc 
+0x6f4b 031272 iadd rega ,rega 
+0x6f4c 031275 fetch 2 ,mem_sdp_continue_byte 
+0x6f4d 031276 copy pdata ,regb 
+0x6f4e 031277 branch ssa_req_range_first_freg ,blank 
+:      031278 ssa_req_range_later_freg_with_continue:
+0x6f4f 031279 copy rega ,pdata 
+0x6f50 031280 isub regb ,regb 
+0x6f51 031281 branch ssa_req_range_next_handle ,zero 
+0x6f52 031282 nbranch ssa_req_range_next_handle ,positive 
+0x6f53 031283 fetch 2 ,mem_sdp_attribute_maxbyte 
+0x6f54 031284 isub regb ,null 
+0x6f55 031285 branch ssa_req_range_maxbyte_with_continue ,zero 
+0x6f56 031286 nbranch ssa_req_range_maxbyte_with_continue ,positive 
+:      031289 ssa_req_range_send_not_maxbyte:
+0x6f57 031290 copy regb ,loopcnt 
+0x6f58 031291 call ssa_req_range_maxbyte_with_continue_cpy 
+0x6f59 031292 fetch 1 ,mem_handle_humber 
+0x6f5a 031293 increase 1 ,queue 
+0x6f5b 031294 isub queue ,null 
+0x6f5c 031295 branch ssa_req_range_lastfreg ,zero 
+0x6f5d 031296 branch ssa_req_range_freg_with_continue 
+:      031298 ssa_req_range_maxbyte_with_continue:
+0x6f5e 031299 copy pdata ,loopcnt 
+0x6f5f 031300 call ssa_req_range_maxbyte_with_continue_cpy 
+0x6f60 031301 branch ssa_req_range_freg_with_continue 
+:      031303 ssa_req_range_maxbyte_with_continue_cpy:
+0x6f61 031304 increase -3 ,contw 
+0x6f62 031305 copy loopcnt ,temp 
+0x6f63 031306 copy regc ,pdata 
+0x6f64 031307 isub regb ,pdata 
+0x6f65 031308 iadd timeup ,contr 
+0x6f66 031309 branch memcpy 
+:      031311 ssa_req_range_next_handle:
+0x6f67 031312 fetch 1 ,mem_handle_humber 
+0x6f68 031313 increase 1 ,queue 
+0x6f69 031314 isub queue ,null 
+0x6f6a 031315 rtn zero 
+0x6f6b 031316 branch ssa_req_range_find_handle 
+:      031318 ssa_req_range_get_length:
+0x6f6c 031319 call disable_user 
+0x6f6d 031320 arg mem_sdp_handle_list ,contr 
+0x6f6e 031321 lshift2 queue ,pdata 
+0x6f6f 031322 iadd contr ,contr 
+0x6f70 031323 ifetcht 4 ,contr 
+0x6f71 031324 call search_handle 
+0x6f72 031325 nrtn zero 
+0x6f73 031326 call sdp_data_len 
+0x6f74 031327 branch enable_user 
+:      031329 ssa_req_range_first_freg:
+0x6f75 031330 fetch 2 ,mem_sdp_attribute_maxbyte 
+0x6f76 031331 isub rega ,null 
+0x6f77 031332 nbranch ssa_req_range_firstfreg_maxbyte_with_continue ,positive 
+0x6f78 031333 copy rega ,loopcnt 
+0x6f79 031334 copy loopcnt ,temp 
+0x6f7a 031335 copy timeup ,contr 
+0x6f7b 031336 call memcpy 
+0x6f7c 031337 fetch 2 ,mem_sdp_all_length 
+0x6f7d 031338 isub rega ,null 
+0x6f7e 031339 branch ssa_req_range_freg_no_continue ,zero 
+:      031340 ssa_req_range_firstfreg_not_maxbyte_with_continue:
+0x6f7f 031341 call ssa_req_range_freg_with_continue 
+0x6f80 031342 branch ssa_req_range_attrbutes_length 
+:      031344 ssa_req_range_freg_no_continue:
+0x6f81 031345 call ssa_req_range_lastfreg 
+0x6f82 031346 branch ssa_req_range_attrbutes_length 
+:      031348 ssa_req_range_lastfreg:
+0x6f83 031349 arg sdp_searchattrib_res ,rega 
+:      031350 ssa_req_range_lastfreg_common:
+0x6f84 031351 force 0 ,pdata 
+0x6f85 031352 istore 1 ,contw 
+0x6f86 031353 call ssa_req_range_common 
+0x6f87 031354 fetcht 2 ,mem_sdp_tx_pkt_length 
+0x6f88 031355 increase -5 ,temp 
+0x6f89 031356 byteswap temp ,pdata 
+0x6f8a 031357 istore 2 ,contw 
+0x6f8b 031358 increase -3 ,temp 
+0x6f8c 031359 byteswap temp ,pdata 
+0x6f8d 031360 istore 2 ,contw 
+0x6f8e 031361 rtn 
+:      031363 ssa_req_range_firstfreg_maxbyte_with_continue:
+0x6f8f 031364 copy pdata ,loopcnt 
+0x6f90 031365 copy loopcnt ,temp 
+0x6f91 031366 copy timeup ,contr 
+0x6f92 031367 call memcpy 
+0x6f93 031368 call ssa_req_range_freg_with_continue 
+:      031369 ssa_req_range_attrbutes_length:
+0x6f94 031370 setarg 0x36 
+0x6f95 031371 istore 1 ,contw 
+0x6f96 031372 fetch 2 ,mem_sdp_all_length 
+0x6f97 031373 byteswap pdata ,pdata 
+0x6f98 031374 istore 2 ,contw 
+0x6f99 031375 rtn 
+:      031377 ssa_req_range_attrbutes_length_no_continue:
+0x6f9a 031378 setarg 0x36 
+0x6f9b 031379 istore 1 ,contw 
+0x6f9c 031380 increase -3 ,temp 
+0x6f9d 031381 byteswap temp ,pdata 
+0x6f9e 031382 istore 2 ,contw 
+0x6f9f 031383 rtn 
+:      031385 ssa_req_range_freg_with_continue:
+0x6fa0 031386 arg sdp_searchattrib_res ,rega 
+0x6fa1 031387 setarg 2 
+0x6fa2 031388 istore 1 ,contw 
+0x6fa3 031389 fetch 2 ,mem_sdp_continue_byte 
+0x6fa4 031390 iadd temp ,temp 
+0x6fa5 031391 byteswap temp ,pdata 
+0x6fa6 031392 istore 2 ,contw 
+0x6fa7 031393 call ssa_req_range_common 
+0x6fa8 031394 fetcht 2 ,mem_sdp_tx_pkt_length 
+0x6fa9 031395 increase -5 ,temp 
+0x6faa 031396 byteswap temp ,pdata 
+0x6fab 031397 istore 2 ,contw 
+0x6fac 031398 increase -5 ,temp 
+0x6fad 031399 byteswap temp ,pdata 
+0x6fae 031400 istore 2 ,contw 
+0x6faf 031401 rtn 
+:      031403 ssa_req_range_common:
+0x6fb0 031404 fetch 2 ,mem_sdp_tx_payload_ptr 
+0x6fb1 031405 isub contw ,pdata 
+0x6fb2 031406 sub pdata ,0 ,pdata 
+0x6fb3 031407 store 2 ,mem_sdp_tx_pkt_length 
+0x6fb4 031408 call l2cap_get_sdp_tx_payload 
+0x6fb5 031409 copy rega ,pdata 
+0x6fb6 031410 istore 1 ,contw 
+0x6fb7 031411 fetch 2 ,mem_sdp_transactionid 
+0x6fb8 031412 istore 2 ,contw 
+0x6fb9 031413 rtn 
+:      031426 sdp_process_ssa_res:
+:      031427 sdp_process_ss_res:
+:      031428 sdp_process_sa_res:
+:      031429 sdp_process_error_res:
+0x6fba 031430 rtn 
+:      031463 sdp_invalid_service_record_handle:
+0x6fbb 031464 setarg 0x0200 
+0x6fbc 031465 store 2 ,mem_sdp_error_code 
+0x6fbd 031466 branch sdp_error_response 
+:      031467 sdp_invalid_pdu_size:
+0x6fbe 031468 setarg 0x0400 
+0x6fbf 031469 store 2 ,mem_sdp_error_code 
+0x6fc0 031470 branch sdp_error_response 
+:      031471 sdp_insufficient_resource:
+0x6fc1 031472 setarg 0x0600 
+0x6fc2 031473 store 2 ,mem_sdp_error_code 
+0x6fc3 031474 branch sdp_error_response 
+:      031475 sdp_invalid_request_syntax:
+0x6fc4 031476 setarg 0x0300 
+0x6fc5 031477 store 2 ,mem_sdp_error_code 
+:      031478 sdp_error_response:
+0x6fc6 031479 call l2cap_get_sdp_tx_payload 
+0x6fc7 031480 istore 1 ,contw 
+0x6fc8 031481 fetch 2 ,mem_sdp_transactionid 
+0x6fc9 031482 istore 2 ,contw 
+0x6fca 031483 setarg 0x0200 
+0x6fcb 031484 istore 2 ,contw 
+0x6fcc 031485 fetch 2 ,mem_sdp_error_code 
+0x6fcd 031486 istore 2 ,contw 
+0x6fce 031487 jam 7 ,mem_sdp_tx_pkt_length 
+0x6fcf 031488 rtn 
+:      031493 ask_serviceclassid:
+0x6fd0 031494 arg 0 ,regb 
+0x6fd1 031495 force 0 ,temp 
+0x6fd2 031496 arg mem_sdp_uuid_search_ptr ,contw 
+0x6fd3 031497 call dataelementtype6 
+0x6fd4 031498 branch asksrv_error ,zero 
+:      031499 classidloop:
+0x6fd5 031500 increase 1 ,regb 
+0x6fd6 031501 ifetch 1 ,contr 
+0x6fd7 031502 increase -1 ,rega 
+0x6fd8 031503 increase -1 ,timeup 
+0x6fd9 031504 compare 0x18 ,pdata ,0xf8 
+0x6fda 031505 nbranch asksrv_error ,true 
+0x6fdb 031506 compare 0x04 ,pdata ,0x07 
+0x6fdc 031507 nbranch cmp032 ,true 
+0x6fdd 031508 force 1 ,temp 
+:      031509 skip2bytes:
+0x6fde 031510 ifetch 1 ,contr 
+0x6fdf 031511 increase -1 ,rega 
+0x6fe0 031512 increase -1 ,timeup 
+0x6fe1 031513 bne 0x00 ,frstbwrong 
+0x6fe2 031514 ifetch 1 ,contr 
+0x6fe3 031515 increase -1 ,rega 
+0x6fe4 031516 increase -1 ,timeup 
+0x6fe5 031517 beq 0x00 ,cmpuuid 
+0x6fe6 031518 branch scndbwrong 
+:      031519 frstbwrong:
+0x6fe7 031520 increase 1 ,contr 
+0x6fe8 031521 increase -1 ,rega 
+0x6fe9 031522 increase -1 ,timeup 
+:      031523 scndbwrong:
+0x6fea 031524 increase 2 ,contr 
+0x6feb 031525 increase -2 ,rega 
+0x6fec 031526 increase -2 ,timeup 
+0x6fed 031527 compare 0x00 ,temp ,0xff 
+0x6fee 031528 branch loopornot ,true 
+0x6fef 031529 increase 12 ,contr 
+0x6ff0 031530 increase -12 ,rega 
+0x6ff1 031531 increase -12 ,timeup 
+0x6ff2 031532 branch loopornot 
+:      031533 cmp032:
+0x6ff3 031534 compare 0x02 ,pdata ,0x07 
+0x6ff4 031535 nbranch cmp016 ,true 
+0x6ff5 031536 branch skip2bytes 
+:      031537 cmp016:
+0x6ff6 031538 compare 0x01 ,pdata ,0x07 
+0x6ff7 031539 nbranch asksrv_error ,true 
+:      031540 cmpuuid:
+0x6ff8 031541 increase -2 ,rega 
+0x6ff9 031542 increase -2 ,timeup 
+0x6ffa 031543 ifetch 2 ,contr 
+0x6ffb 031544 sub regb ,4 ,null 
+0x6ffc 031545 branch uuidsize ,zero 
+0x6ffd 031546 istore 2 ,contw 
+:      031547 uuidsize:
+0x6ffe 031548 compare 0x00 ,temp ,0xff 
+0x6fff 031549 branch loopornot ,true 
+0x7000 031550 copy contr ,temp 
+0x7001 031551 ifetch 1 ,contr 
+0x7002 031552 bne 0x00 ,wrong12b 
+0x7003 031553 ifetch 1 ,contr 
+0x7004 031554 bne 0x00 ,wrong12b 
+0x7005 031555 ifetch 1 ,contr 
+0x7006 031556 bne 0x10 ,wrong12b 
+0x7007 031557 ifetch 1 ,contr 
+0x7008 031558 bne 0x00 ,wrong12b 
+0x7009 031559 ifetch 1 ,contr 
+0x700a 031560 bne 0x80 ,wrong12b 
+0x700b 031561 ifetch 1 ,contr 
+0x700c 031562 bne 0x00 ,wrong12b 
+0x700d 031563 ifetch 1 ,contr 
+0x700e 031564 bne 0x00 ,wrong12b 
+0x700f 031565 ifetch 1 ,contr 
+0x7010 031566 bne 0x80 ,wrong12b 
+0x7011 031567 ifetch 1 ,contr 
+0x7012 031568 bne 0x5f ,wrong12b 
+0x7013 031569 ifetch 1 ,contr 
+0x7014 031570 bne 0x9b ,wrong12b 
+0x7015 031571 ifetch 1 ,contr 
+0x7016 031572 bne 0x34 ,wrong12b 
+0x7017 031573 ifetch 1 ,contr 
+0x7018 031574 beq 0xfb ,chck12dn 
+:      031575 wrong12b:
+0x7019 031576 copy temp ,contr 
+:      031577 wrong12b1:
+0x701a 031578 increase 12 ,contr 
+0x701b 031579 force 0x00 ,queue 
+0x701c 031580 force 0x00 ,temp 
+0x701d 031581 branch chck12dn 
+:      031583 chck12dn:
+0x701e 031584 increase -12 ,timeup 
+0x701f 031585 increase -12 ,rega 
+:      031586 loopornot:
+0x7020 031587 force 0x00 ,temp 
+0x7021 031588 compare 0x00 ,rega ,0xff 
+0x7022 031589 nbranch classidloop ,true 
+0x7023 031590 force 0 ,pdata 
+0x7024 031591 istore 2 ,contw 
+0x7025 031592 rtn 
+:      031593 asksrv_error:
+0x7026 031594 arg 0xff ,temp 
+0x7027 031595 rtn 
+:      031605 dataelementtype6:
+0x7028 031606 bpatchx patch3a_4 ,mem_patch3a 
+0x7029 031607 ifetch 1 ,contr 
+0x702a 031608 increase -1 ,timeup 
+0x702b 031609 compare 0x30 ,pdata ,0xf8 
+0x702c 031610 nbranch dsize_error ,true 
+0x702d 031611 compare 0x07 ,pdata ,0x07 
+0x702e 031612 branch dsize32 ,true 
+0x702f 031613 compare 0x06 ,pdata ,0x07 
+0x7030 031614 branch dsize16 ,true 
+0x7031 031615 compare 0x05 ,pdata ,0x07 
+0x7032 031616 nbranch dsize_error ,true 
+0x7033 031618 ifetch 1 ,contr 
+0x7034 031619 copy pdata ,rega 
+0x7035 031620 increase -1 ,timeup 
+0x7036 031621 branch dsize 
+:      031622 dsize32:
+0x7037 031623 increase 2 ,contr 
+0x7038 031624 increase -2 ,timeup 
+:      031625 dsize16:
+0x7039 031626 ifetch 2 ,contr 
+0x703a 031627 byteswap pdata ,rega 
+0x703b 031628 increase -2 ,timeup 
+:      031629 dsize:
+0x703c 031630 force 0x01 ,pdata 
+0x703d 031631 rtn 
+:      031632 dsize_error:
+0x703e 031633 force 0x00 ,pdata 
+0x703f 031634 rtn 
+:      031644 ss_empty_rsp:
+0x7040 031645 setarg sdp_search_res 
+0x7041 031646 store 1 ,mem_sdp_pduid 
+0x7042 031647 branch empty_response 
+:      031648 sa_empty_rsp:
+0x7043 031649 setarg sdp_attribute_res 
+0x7044 031650 store 1 ,mem_sdp_pduid 
+0x7045 031651 branch empty_response 
+:      031652 ssa_empty_rsp:
+0x7046 031653 setarg sdp_searchattrib_res 
+0x7047 031654 store 1 ,mem_sdp_pduid 
+:      031655 empty_response:
+0x7048 031656 call l2cap_get_sdp_tx_payload 
+0x7049 031659 fetch 1 ,mem_sdp_pduid 
+0x704a 031660 copy pdata ,regb 
+0x704b 031661 istore 1 ,contw 
+0x704c 031662 fetch 2 ,mem_sdp_transactionid 
+0x704d 031663 istore 2 ,contw 
+0x704e 031664 setarg 0x0500 
+0x704f 031665 istore 2 ,contw 
+0x7050 031666 compare sdp_attribute_res ,regb ,0xff 
+0x7051 031667 branch fullsearch ,true 
+0x7052 031668 compare sdp_searchattrib_res ,regb ,0xff 
+0x7053 031669 branch fullsearch ,true 
+0x7054 031670 setarg 0x000000 
+0x7055 031671 istore 5 ,contw 
+0x7056 031672 branch outempty 
+:      031674 fullsearch:
+0x7057 031675 setarg 0x350200 
+0x7058 031676 istore 5 ,contw 
+:      031677 outempty:
+0x7059 031678 jam 10 ,mem_sdp_tx_pkt_length 
+0x705a 031679 rtn 
+:      031682 sdp_data_len:
+0x705b 031683 call store_contw 
+0x705c 031684 call store_contr 
+0x705d 031685 call sdp_get_data 
+0x705e 031686 call get_contw 
+0x705f 031687 call get_contr 
+0x7060 031688 copy temp ,pdata 
+0x7061 031689 rtn 
+:      031692 sdp_get_data:
+0x7062 031693 ifetch 1 ,contr 
+0x7063 031694 and pdata ,0x7 ,loopcnt 
+0x7064 031695 rshift3 pdata ,pdata 
+0x7065 031696 bne 0 ,sdp_get_data_type_not0 
+:      031697 sdp_get_data_type0:
+0x7066 031698 force 1 ,pdata 
+0x7067 031699 force 1 ,temp 
+0x7068 031700 rtn 
+:      031702 sdp_get_data_type_not0_sizeindex01234:
+0x7069 031703 call left_shift_n 
+0x706a 031704 add pdata ,1 ,temp 
+0x706b 031705 rtn 
+:      031706 sdp_get_data_type_not0:
+0x706c 031707 deposit loopcnt 
+0x706d 031708 sub pdata ,4 ,null 
+0x706e 031709 branch sdp_get_data_type_not0_sizeindex01234 ,positive 
+0x706f 031710 beq 5 ,sdp_get_data_type_not0_sizeindex5 
+0x7070 031711 beq 6 ,sdp_get_data_type_not0_sizeindex6 
+0x7071 031712 beq 7 ,sdp_get_data_type_not0_sizeindex7 
+0x7072 031713 rtn 
+:      031715 sdp_get_data_type_not0_sizeindex5:
+0x7073 031716 ifetch 1 ,contr 
+0x7074 031717 add pdata ,2 ,temp 
+0x7075 031718 rtn 
+:      031719 sdp_get_data_type_not0_sizeindex6:
+0x7076 031720 ifetch 2 ,contr 
+0x7077 031721 byteswap pdata ,pdata 
+0x7078 031722 add pdata ,3 ,temp 
+0x7079 031723 rtn 
+:      031724 sdp_get_data_type_not0_sizeindex7:
+0x707a 031725 ifetch 2 ,contr 
+0x707b 031726 byteswap pdata ,pdata 
+0x707c 031727 ifetcht 2 ,contr 
+0x707d 031728 byteswap temp ,temp 
+0x707e 031729 lshift16 temp ,temp 
+0x707f 031730 iadd temp ,pdata 
+0x7080 031731 add pdata ,5 ,temp 
+0x7081 031732 rtn 
+:      031738 search_all_uuid:
+0x7082 031739 bpatchx patch3a_5 ,mem_patch3a 
+0x7083 031740 force 0 ,queue 
+0x7084 031741 arg 0 ,regb 
+0x7085 031742 arg mem_sdp_handle_list ,contw 
+:      031743 search_all_uuid_llop:
+0x7086 031744 ifetch 2 ,timeup 
+0x7087 031745 rtn blank 
+0x7088 031746 call search_uuid 
+0x7089 031747 copy queue ,pdata 
+0x708a 031748 rtneq sdp_max_handle_number 
+0x708b 031749 increase 2 ,timeup 
+0x708c 031750 branch search_all_uuid_llop 
+:      031752 search_uuid:
+0x708d 031754 iforce regc 
+0x708e 031756 fetch 2 ,mem_ui_uuid_table 
+0x708f 031757 iforce contr 
+:      031758 search_uuid_next:
+0x7090 031759 copy queue ,pdata 
+0x7091 031760 rtneq sdp_max_handle_number 
+0x7092 031761 disable user 
+0x7093 031762 ifetch 1 ,contr 
+0x7094 031763 rtn blank 
+0x7095 031764 iforce loopcnt 
+:      031765 search_uuid_loop:
+0x7096 031766 ifetch 2 ,contr 
+0x7097 031767 isub regc ,null 
+0x7098 031768 nbranch search_uuid_not_found ,zero 
+0x7099 031769 enable user 
+:      031770 search_uuid_not_found:
+0x709a 031771 loop search_uuid_loop 
+0x709b 031772 ifetcht 4 ,contr 
+0x709c 031773 copy contr ,rega 
+0x709d 031774 nbranch search_uuid_nomatch ,user 
+0x709e 031775 arg mem_sdp_handle_list ,contr 
+0x709f 031776 arg sdp_max_handle_number ,loopcnt 
+:      031777 search_uuid_check_same_handle:
+0x70a0 031778 ifetch 4 ,contr 
+0x70a1 031779 branch search_uuid_store_handle ,blank 
+0x70a2 031780 isub temp ,null 
+0x70a3 031781 branch search_uuid_nomatch ,zero 
+0x70a4 031782 loop search_uuid_check_same_handle 
+0x70a5 031783 rtn 
+:      031784 search_uuid_store_handle:
+0x70a6 031785 istoret 4 ,contw 
+0x70a7 031786 increase 1 ,queue 
+0x70a8 031787 copy rega ,contr 
+0x70a9 031788 call sdp_data_len 
+0x70aa 031789 iadd regb ,regb 
+0x70ab 031790 iadd contr ,contr 
+0x70ac 031791 branch search_uuid_next 
+:      031792 search_uuid_nomatch:
+0x70ad 031793 copy rega ,contr 
+0x70ae 031794 call sdp_get_data 
+0x70af 031795 iadd contr ,contr 
+0x70b0 031796 branch search_uuid_next 
+:      031802 search_handle:
+0x70b1 031803 bpatchx patch3a_6 ,mem_patch3a 
+0x70b2 031804 fetch 2 ,mem_ui_uuid_table 
+0x70b3 031805 iforce contr 
+:      031806 search_handle_loop:
+0x70b4 031807 ifetch 1 ,contr 
+0x70b5 031808 branch disable_zero ,blank 
+0x70b6 031809 lshift pdata ,pdata 
+0x70b7 031810 iadd contr ,contr 
+0x70b8 031811 ifetch 4 ,contr 
+0x70b9 031812 isub temp ,null 
+0x70ba 031813 rtn zero 
+0x70bb 031814 deposit contw 
+0x70bc 031815 store 2 ,mem_contw 
+0x70bd 031816 storet 8 ,mem_temp 
+0x70be 031817 call sdp_get_data 
+0x70bf 031818 iadd contr ,contr 
+0x70c0 031819 copy contr ,pdata 
+0x70c1 031820 fetcht 2 ,mem_contw 
+0x70c2 031821 copy temp ,contw 
+0x70c3 031822 fetcht 8 ,mem_temp 
+0x70c4 031823 copy pdata ,contr 
+0x70c5 031824 branch search_handle_loop 
+:      031830 search_attrib:
+0x70c6 031831 bpatchx patch3a_7 ,mem_patch3a 
+0x70c7 031832 fetch 2 ,mem_ui_uuid_table 
+0x70c8 031833 iforce contr 
+:      031834 search_attrib_next:
+0x70c9 031835 ifetch 1 ,contr 
+0x70ca 031836 branch search_attrib_end ,blank 
+0x70cb 031837 iforce loopcnt 
+:      031838 search_attrib_loop:
+0x70cc 031839 ifetch 2 ,contr 
+0x70cd 031840 isub regc ,null 
+0x70ce 031841 branch search_attrib_found_uuid ,zero 
+0x70cf 031842 loop search_attrib_loop 
+0x70d0 031843 increase 4 ,contr 
+0x70d1 031844 call sdp_get_data 
+0x70d2 031845 iadd contr ,contr 
+0x70d3 031846 branch search_attrib_next 
+:      031847 search_attrib_found_uuid:
+0x70d4 031848 increase -1 ,loopcnt 
+0x70d5 031849 lshift loopcnt ,pdata 
+0x70d6 031850 iadd contr ,contr 
+0x70d7 031851 increase 4 ,contr 
+0x70d8 031852 call sdp_get_data 
+0x70d9 031853 iadd contr ,timeup 
+:      031854 search_attrib_loop_attribs:
+0x70da 031855 increase 1 ,contr 
+0x70db 031856 ifetch 2 ,contr 
+0x70dc 031857 isub regb ,null 
+0x70dd 031861 branch disable_blank ,zero 
+0x70de 031862 call sdp_data_len 
+0x70df 031863 iadd contr ,contr 
+0x70e0 031864 deposit timeup 
+0x70e1 031865 isub contr ,null 
+0x70e2 031866 branch search_attrib_end ,zero 
+0x70e3 031867 branch search_attrib_loop_attribs 
+:      031868 search_attrib_end:
+0x70e4 031869 force 0 ,contr 
+0x70e5 031870 force 0 ,pdata 
+0x70e6 031871 rtn 
+:      031877 search_handle_attrib:
+0x70e7 031878 bpatchx patch3b_0 ,mem_patch3b 
+0x70e8 031879 fetch 2 ,mem_ui_uuid_table 
+0x70e9 031880 iforce contr 
+:      031881 search_handle_attrib_next:
+0x70ea 031882 ifetch 1 ,contr 
+0x70eb 031883 branch search_handle_attrib_end ,blank 
+0x70ec 031884 lshift pdata ,pdata 
+0x70ed 031885 iadd contr ,contr 
+0x70ee 031886 ifetch 4 ,contr 
+0x70ef 031887 isub temp ,null 
+0x70f0 031888 branch search_handl_attrib_found_handle ,zero 
+0x70f1 031889 call sdp_get_data 
+0x70f2 031890 iadd contr ,contr 
+0x70f3 031891 branch search_handle_attrib_next 
+:      031892 search_handl_attrib_found_handle:
+0x70f4 031893 call sdp_get_data 
+0x70f5 031894 iadd contr ,timeup 
+:      031895 search_handle_attrib_loop_attribs:
+0x70f6 031896 increase 1 ,contr 
+0x70f7 031897 ifetch 2 ,contr 
+0x70f8 031898 isub regb ,null 
+0x70f9 031899 rtn zero 
+0x70fa 031900 call sdp_data_len 
+0x70fb 031901 iadd contr ,contr 
+0x70fc 031902 deposit timeup 
+0x70fd 031903 isub contr ,null 
+0x70fe 031904 branch search_handle_attrib_end ,zero 
+0x70ff 031905 branch search_handle_attrib_loop_attribs 
+:      031906 search_handle_attrib_end:
+0x7100 031907 force 0 ,contr 
+0x7101 031908 rtn 
+:      031912 search_rfcomm_cn:
+0x7102 031913 arg 0x0400 ,regb 
+0x7103 031914 call search_handl_attrib_found_handle 
+0x7104 031915 arg 0x0300 ,regb 
+0x7105 031916 call search_uuid_in_data 
+0x7106 031917 nrtn user 
+0x7107 031918 sub rega ,3 ,null 
+0x7108 031919 branch disable_user ,positive 
+0x7109 031920 ifetch 1 ,contr 
+0x710a 031921 bne 0x08 ,disable_user 
+0x710b 031922 ifetch 1 ,contr 
+0x710c 031923 rtn 
+:      031928 search_uuid_in_data:
+0x710d 031929 bpatchx patch3b_1 ,mem_patch3b 
+0x710e 031930 call sdp_get_data 
+0x710f 031931 copy pdata ,rega 
+:      031932 search_uuid_in_data_loop:
+0x7110 031933 ifetch 1 ,contr 
+0x7111 031934 and pdata ,0x7 ,loopcnt 
+0x7112 031935 rshift3 pdata ,pdata 
+0x7113 031936 sub pdata ,3 ,null 
+0x7114 031937 branch search_uuid_in_data_found_uuid ,zero 
+0x7115 031938 copy loopcnt ,pdata 
+0x7116 031939 beq 5 ,search_uuid_in_data_found_element_index5 
+0x7117 031940 beq 6 ,search_uuid_in_data_found_element_index6 
+0x7118 031941 beq 7 ,search_uuid_in_data_found_element_index7 
+0x7119 031942 increase -1 ,contr 
+0x711a 031943 call sdp_get_data 
+0x711b 031944 iadd contr ,contr 
+0x711c 031945 copy rega ,pdata 
+0x711d 031946 isub temp ,rega 
+0x711e 031947 branch disable_user ,zero 
+0x711f 031948 branch search_uuid_in_data_loop 
+:      031950 search_uuid_in_data_found_element_index5:
+0x7120 031951 increase -2 ,rega 
+0x7121 031952 increase 1 ,contr 
+0x7122 031953 branch search_uuid_in_data_loop 
+:      031954 search_uuid_in_data_found_element_index6:
+0x7123 031955 increase -3 ,rega 
+0x7124 031956 increase 2 ,contr 
+0x7125 031957 branch search_uuid_in_data_loop 
+:      031958 search_uuid_in_data_found_element_index7:
+0x7126 031959 increase -5 ,rega 
+0x7127 031960 increase 4 ,contr 
+0x7128 031961 branch search_uuid_in_data_loop 
+:      031963 search_uuid_in_data_found_uuid:
+0x7129 031964 increase -1 ,rega 
+0x712a 031965 copy loopcnt ,pdata 
+0x712b 031966 beq 1 ,search_uuid_in_data_type_uuid_16 
+0x712c 031967 beq 2 ,search_uuid_in_data_type_uuid_32 
+0x712d 031968 beq 4 ,search_uuid_in_data_type_uuid_128 
+0x712e 031969 branch disable_user 
+:      031970 search_uuid_in_data_type_uuid_128:
+0x712f 031971 increase -12 ,rega 
+:      031972 search_uuid_in_data_type_uuid_32:
+0x7130 031973 ifetch 2 ,contr 
+0x7131 031974 increase -2 ,rega 
+:      031975 search_uuid_in_data_type_uuid_16:
+0x7132 031976 ifetch 2 ,contr 
+0x7133 031977 isub regb ,null 
+0x7134 031978 branch enable_user ,zero 
+0x7135 031979 increase -2 ,rega 
+0x7136 031980 branch disable_user ,zero 
+0x7137 031981 branch search_uuid_in_data_loop 
+:      032040 sdp_send_spp_request:
+0x7138 032041 call l2cap_get_sdp_tx_payload 
+0x7139 032042 copy pdata ,contw 
+0x713a 032043 setarg 6 
+0x713b 032044 istore 1 ,contw 
+0x713c 032045 setarg sdp_tid_spp 
+0x713d 032046 istore 2 ,contw 
+0x713e 032047 setarg 0x0f00 
+0x713f 032048 istore 2 ,contw 
+0x7140 032049 setarg 0x1a0535 
+0x7141 032050 istore 3 ,contw 
+0x7142 032051 setarg 0x0111 
+0x7143 032052 lshift16 pdata ,pdata 
+0x7144 032053 istore 4 ,contw 
+0x7145 032054 setarg 0x2600 
+0x7146 032055 istore 2 ,contw 
+0x7147 032056 setarg 0x0335 
+0x7148 032057 istore 2 ,contw 
+0x7149 032058 setarg 0x0009 
+0x714a 032059 istore 2 ,contw 
+0x714b 032060 setarg 0x0004 
+0x714c 032061 istore 2 ,contw 
+0x714d 032062 jam 0x14 ,mem_sdp_tx_pkt_length 
+0x714e 032063 rtn 
+:      032067 function_g2:
+0x714f 032068 bpatchx patch3b_2 ,mem_patch3b 
+0x7150 032069 jam 80 ,mem_aes_cmac_data_length 
+0x7151 032070 arg memdat ,contw 
+0x7152 032071 arg mem_le_srand ,contr 
+0x7153 032072 call memcpy16 
+0x7154 032073 arg mem_le_pubkey_local_x_256 ,contr 
+0x7155 032074 call memcpy32 
+0x7156 032075 arg mem_le_pubkey_remote_x_256 ,contr 
+0x7157 032076 call memcpy32 
+0x7158 032077 call inverse_memdat 
+0x7159 032078 arg mem_le_mrand ,contr 
+0x715a 032079 call store_inverse_k 
+0x715b 032080 call function_aes_cmac 
+0x715c 032082 arg mem_aes_cmac_temp ,contw 
+0x715d 032083 call load_inverse_result 
+0x715e 032084 setarg 1000000 
+0x715f 032085 copy pdata ,rega 
+0x7160 032086 fetch 4 ,mem_aes_cmac_temp 
+0x7161 032087 idiv rega 
+0x7162 032088 call wait_div_end 
+0x7163 032089 remainder pdata 
+0x7164 032090 store 4 ,mem_gkey 
+0x7165 032092 rtn 
+:      032094 function_f6_eb:
+0x7166 032095 jam 65 ,mem_aes_cmac_data_length 
+0x7167 032096 arg memdat ,contw 
+0x7168 032097 call store_addr_common_a 
+0x7169 032098 call store_addr_common_b 
+0x716a 032099 fetch 3 ,mem_le_pres + 1 
+0x716b 032100 istore 3 ,contw 
+0x716c 032103 call get_r 
+0x716d 032105 arg mem_le_mrand ,contr 
+0x716e 032106 call memcpy16 
+0x716f 032107 arg mem_le_srand ,contr 
+0x7170 032108 call memcpy16 
+0x7171 032109 call inverse_memdat 
+0x7172 032110 arg mem_le_mackey ,contr 
+0x7173 032111 arg mem_aes_cmac_k ,contw 
+0x7174 032112 call memcpy16 
+0x7175 032114 branch function_aes_cmac 
+:      032118 get_r:
+0x7176 032119 fetch 4 ,mem_le_tk 
+0x7177 032120 istore 4 ,contw 
+0x7178 032121 call memset0_4 
+0x7179 032122 branch memset0_8 
+:      032124 function_f6_ea:
+0x717a 032125 bpatchx patch3b_3 ,mem_patch3b 
+0x717b 032126 jam 65 ,mem_aes_cmac_data_length 
+0x717c 032127 arg memdat ,contw 
+0x717d 032128 call store_addr_common_b 
+0x717e 032129 call store_addr_common_a 
+0x717f 032130 fetch 3 ,mem_le_preq + 1 
+0x7180 032131 istore 3 ,contw 
+0x7181 032134 call get_r 
+0x7182 032135 arg mem_le_srand ,contr 
+0x7183 032136 call memcpy16 
+0x7184 032137 arg mem_le_mrand ,contr 
+0x7185 032138 call memcpy16 
+0x7186 032139 call inverse_memdat 
+0x7187 032140 arg mem_le_mackey ,contr 
+0x7188 032141 arg mem_aes_cmac_k ,contw 
+0x7189 032142 call memcpy16 
+0x718a 032144 call function_aes_cmac 
+0x718b 032145 arg mem_aes_cmac_temp ,contw 
+0x718c 032146 branch load_inverse_result 
+:      032148 function_f5:
+0x718d 032149 jam 32 ,mem_aes_cmac_data_length 
+0x718e 032150 arg mem_le_dhkey_256 ,contr 
+0x718f 032151 arg memdat ,contw 
+0x7190 032152 call memcpy32 
+0x7191 032153 call inverse_memdat 
+0x7192 032154 arg mem_le_slat ,contr 
+0x7193 032155 call store_inverse_k 
+0x7194 032156 call function_aes_cmac 
+0x7195 032157 arg mem_aes_cmac_k ,contw 
+0x7196 032158 call store_aes_result 
+0x7197 032159 arg 1 ,temp 
+0x7198 032160 call function_f5_common 
+0x7199 032161 arg mem_le_ltk ,contw 
+0x719a 032162 call load_inverse_result 
+0x719b 032163 arg 0 ,temp 
+0x719c 032164 call function_f5_common 
+0x719d 032165 arg mem_le_mackey ,contw 
+0x719e 032167 branch store_aes_result 
+:      032170 function_f5_common:
+0x719f 032171 bpatchx patch3b_4 ,mem_patch3b 
+0x71a0 032172 jam 53 ,mem_aes_cmac_data_length 
+0x71a1 032173 setarg 0x100 
+0x71a2 032174 store 2 ,memdat 
+0x71a3 032175 call store_addr_common_b 
+0x71a4 032176 call store_addr_common_a 
+0x71a5 032177 arg mem_le_srand ,contr 
+0x71a6 032178 call memcpy16 
+0x71a7 032179 arg mem_le_mrand ,contr 
+0x71a8 032180 call memcpy16 
+0x71a9 032182 setarg 0x6c65 
+0x71aa 032183 istore 2 ,contw 
+0x71ab 032184 setarg 0x6274 
+0x71ac 032185 istore 2 ,contw 
+0x71ad 032186 istoret 1 ,contw 
+0x71ae 032187 call inverse_memdat 
+0x71af 032188 branch function_aes_cmac 
+:      032190 store_addr_common_b:
+0x71b0 032191 fetch 6 ,mem_le_lap 
+0x71b1 032192 istore 6 ,contw 
+0x71b2 032193 fetch 1 ,mem_le_conn_own_addr_type 
+0x71b3 032194 istore 1 ,contw 
+0x71b4 032195 rtn 
+:      032197 store_addr_common_a:
+0x71b5 032198 fetch 6 ,mem_le_plap 
+0x71b6 032199 istore 6 ,contw 
+0x71b7 032204 fetch 1 ,mem_le_conn_peer_addr_type 
+0x71b8 032205 istore 1 ,contw 
+0x71b9 032206 rtn 
+:      032208 function_f4_ca:
+0x71ba 032209 jam 65 ,mem_aes_cmac_data_length 
+0x71bb 032210 fetch 1 ,mem_passkey_1bit 
+0x71bc 032211 store 1 ,memdat 
+0x71bd 032212 arg mem_le_pubkey_local_x_256 ,contr 
+0x71be 032213 call memcpy32 
+0x71bf 032214 arg mem_le_pubkey_remote_x_256 ,contr 
+0x71c0 032215 call memcpy32 
+0x71c1 032216 call inverse_memdat 
+0x71c2 032217 arg mem_le_mrand ,contr 
+0x71c3 032218 call store_inverse_k 
+0x71c4 032219 branch function_aes_cmac 
+:      032222 function_f4_cb:
+0x71c5 032223 jam 65 ,mem_aes_cmac_data_length 
+0x71c6 032224 fetch 1 ,mem_passkey_1bit 
+0x71c7 032225 store 1 ,memdat 
+0x71c8 032226 arg mem_le_pubkey_remote_x_256 ,contr 
+0x71c9 032227 call memcpy32 
+0x71ca 032228 arg mem_le_pubkey_local_x_256 ,contr 
+0x71cb 032229 call memcpy32 
+0x71cc 032230 call inverse_memdat 
+0x71cd 032231 arg mem_le_srand ,contr 
+0x71ce 032232 call store_inverse_k 
+0x71cf 032233 branch function_aes_cmac 
+:      032235 function_aes_cmac:
+0x71d0 032236 bpatchx patch3b_5 ,mem_patch3b 
+0x71d1 032237 call function_aes_cmac_generate_subkey 
+0x71d2 032241 fetch 1 ,mem_aes_cmac_data_length 
+0x71d3 032242 copy pdata ,temp 
+:      032243 function_ceil16:
+0x71d4 032244 increase 15 ,pdata 
+0x71d5 032245 rshift4 pdata ,pdata 
+0x71d6 032246 copy pdata ,regb 
+0x71d7 032247 branch function_aes_cmac_set_flag_0_balnk ,blank 
+0x71d8 032248 and temp ,0x0f ,pdata 
+0x71d9 032249 nbranch function_aes_cmac_set_flag_0 ,blank 
+0x71da 032251 arg mem_aes_cmac_k1 ,regc 
+0x71db 032252 arg memdat ,pdata 
+0x71dc 032253 increase -16 ,pdata 
+0x71dd 032256 iadd temp ,rega 
+0x71de 032257 arg mem_aes_cmac_m_last ,contw 
+0x71df 032258 arg 4 ,loopcnt 
+0x71e0 032259 call xor_loop 
+0x71e1 032263 branch function_aes_cmac_aes 
+:      032265 function_aes_cmac_set_flag_0_balnk:
+0x71e2 032266 arg 1 ,regb 
+0x71e3 032267 arg 0 ,rega 
+0x71e4 032269 branch function_aes_cmac_set_flag_0_common 
+:      032272 function_aes_cmac_set_flag_0:
+0x71e5 032274 and temp ,0x0f ,rega 
+:      032275 function_aes_cmac_set_flag_0_common:
+0x71e6 032276 arg memdat ,pdata 
+0x71e7 032277 iadd temp ,pdata 
+0x71e8 032278 isub rega ,contr 
+0x71e9 032280 arg mem_aes_cmac_temp ,contw 
+0x71ea 032281 call function_aes_cmac_padding 
+0x71eb 032283 arg mem_aes_cmac_k2 ,regc 
+0x71ec 032284 arg mem_aes_cmac_temp ,rega 
+0x71ed 032285 arg mem_aes_cmac_m_last ,contw 
+0x71ee 032286 arg 4 ,loopcnt 
+0x71ef 032287 call xor_loop 
+:      032294 function_aes_cmac_aes:
+0x71f0 032299 call aes_clear_data 
+0x71f1 032300 call aes_init 
+0x71f2 032303 arg memdat ,contr 
+:      032304 function_aes_cmac_aes_loop:
+0x71f3 032306 increase -1 ,regb 
+0x71f4 032307 deposit regb 
+0x71f5 032308 branch function_aes_cmac_aes_loop_end ,blank 
+0x71f6 032309 call load_data128 
+0x71f7 032310 call do_aes_cbc 
+0x71f8 032311 branch function_aes_cmac_aes_loop 
+:      032313 function_aes_cmac_aes_loop_end:
+0x71f9 032314 arg mem_aes_cmac_temp ,contw 
+0x71fa 032315 call store_aes_result 
+0x71fb 032316 arg mem_aes_cmac_m_last ,contr 
+0x71fc 032317 call load_data128 
+0x71fd 032318 call aes_init 
+0x71fe 032319 arg mem_aes_cmac_temp ,contr 
+0x71ff 032320 call load_data128 
+0x7200 032321 branch do_aes_cbc 
+:      032325 load_inverse_result:
+0x7201 032327 copy contw ,rega 
+0x7202 032328 call store_aes_result 
+0x7203 032330 arg 16 ,loopcnt 
+0x7204 032331 branch inverse_data 
+:      032333 store_inverse_k:
+0x7205 032334 arg mem_aes_cmac_k ,contw 
+0x7206 032335 call memcpy16 
+:      032336 inverse_k:
+0x7207 032337 arg 16 ,loopcnt 
+0x7208 032338 arg mem_aes_cmac_k ,rega 
+0x7209 032339 branch inverse_data 
+:      032341 inverse_memdat:
+0x720a 032342 fetch 1 ,mem_aes_cmac_data_length 
+0x720b 032343 copy pdata ,loopcnt 
+0x720c 032344 arg memdat ,rega 
+0x720d 032345 branch inverse_data 
+:      032347 bn_lshift_0_inverse:
+0x720e 032348 ifetch 1 ,rega 
+0x720f 032349 lshift pdata ,pdata 
+0x7210 032350 isolate1 0 ,regc 
+0x7211 032351 setflag true ,0 ,pdata 
+0x7212 032352 isolate1 8 ,pdata 
+0x7213 032353 setflag true ,0 ,regc 
+0x7214 032354 istore 1 ,rega 
+0x7215 032355 increase -1 ,rega 
+0x7216 032356 loop bn_lshift_0_inverse 
+0x7217 032357 rtn 
+:      032359 function_aes_cmac_k1_inverse:
+0x7218 032360 arg mem_aes_cmac_k1 ,rega 
+:      032361 function_aes_cmac_inverse_common:
+0x7219 032362 increase 15 ,rega 
+0x721a 032363 force 16 ,loopcnt 
+0x721b 032364 force 0 ,regc 
+0x721c 032365 branch bn_lshift_0_inverse 
+:      032367 function_aes_cmac_k2_inverse:
+0x721d 032368 arg mem_aes_cmac_k2 ,rega 
+0x721e 032369 branch function_aes_cmac_inverse_common 
+:      032372 function_aes_cmac_generate_subkey:
+0x721f 032373 arg mem_aes_cmac_k ,contr 
+0x7220 032374 call load_key 
+0x7221 032377 force regidx_xor ,regext_index 
+0x7222 032378 call aes_clear 
+0x7223 032379 call aes_clear_data 
+0x7224 032380 call do_aes_ocb 
+0x7225 032385 arg mem_aes_cmac_k1 ,contw 
+0x7226 032386 call store_aes_result 
+:      032387 function_aes_cmac_k1:
+0x7227 032388 bpatchx patch3b_6 ,mem_patch3b 
+0x7228 032389 fetch 1 ,mem_aes_cmac_k1 
+0x7229 032390 isolate1 7 ,pdata 
+0x722a 032391 nbranch function_aes_cmac_k1_0 ,true 
+0x722b 032392 call function_aes_cmac_k1_inverse 
+0x722c 032395 arg mem_aes_cmac_k1 ,regc 
+0x722d 032397 arg mem_aes_cmac_k1 ,contw 
+0x722e 032400 call function_aes_cmac_xor_rb 
+0x722f 032401 branch function_aes_cmac_k2 
+:      032402 function_aes_cmac_k1_0:
+0x7230 032403 call function_aes_cmac_k1_inverse 
+:      032404 function_aes_cmac_k2:
+0x7231 032406 arg mem_aes_cmac_k1 ,contr 
+0x7232 032407 arg mem_aes_cmac_k2 ,contw 
+0x7233 032408 call memcpy16 
+0x7234 032409 fetch 1 ,mem_aes_cmac_k2 
+0x7235 032410 isolate1 7 ,pdata 
+0x7236 032411 nbranch function_aes_cmac_k2_inverse ,true 
+0x7237 032412 call function_aes_cmac_k2_inverse 
+0x7238 032414 arg mem_aes_cmac_k2 ,regc 
+0x7239 032416 arg mem_aes_cmac_k2 ,contw 
+:      032422 function_aes_cmac_xor_rb:
+0x723a 032423 arg 3 ,loopcnt 
+:      032424 function_aes_cmac_xor_rb_loop:
+0x723b 032425 arg 0 ,temp 
+0x723c 032426 call function_aes_cmac_xor_loop_common 
+0x723d 032427 increase 4 ,regc 
+0x723e 032428 loop function_aes_cmac_xor_rb_loop 
+0x723f 032429 arg 0x8700 ,temp 
+0x7240 032430 lshift16 temp ,temp 
+:      032431 function_aes_cmac_xor_loop_common:
+0x7241 032432 ifetch 4 ,regc 
+0x7242 032433 ixor temp ,pdata 
+0x7243 032434 istore 4 ,contw 
+0x7244 032435 rtn 
+:      032441 function_aes_cmac_padding:
+0x7245 032442 bpatchx patch3b_7 ,mem_patch3b 
+0x7246 032443 arg 16 ,loopcnt 
+0x7247 032444 arg 0 ,pdata 
+:      032445 function_aes_cmac_padding_loop:
+0x7248 032446 isub rega ,null 
+0x7249 032447 branch function_aes_cmac_padding_beq_length ,zero 
+0x724a 032448 branch function_aes_cmac_padding_big_length ,positive 
+0x724b 032449 ifetcht 1 ,contr 
+0x724c 032450 istoret 1 ,contw 
+:      032451 function_aes_cmac_padding_loop2:
+0x724d 032452 increase 1 ,pdata 
+0x724e 032453 loop function_aes_cmac_padding_loop 
+0x724f 032454 rtn 
+:      032455 function_aes_cmac_padding_beq_length:
+0x7250 032456 arg 0x80 ,temp 
+:      032457 function_aes_cmac_padding_common:
+0x7251 032458 istoret 1 ,contw 
+0x7252 032459 branch function_aes_cmac_padding_loop2 
+:      032461 function_aes_cmac_padding_big_length:
+0x7253 032462 arg 0 ,temp 
+0x7254 032463 branch function_aes_cmac_padding_common 
+:      032466 generate_kinit:
+0x7255 032467 call function_e22 
+0x7256 032468 arg mem_input_store ,contr 
+0x7257 032469 arg mem_kinit ,contw 
+0x7258 032470 branch memcpy16 
+:      032473 function_e21:
+0x7259 032474 disable user 
+0x725a 032475 call function_expand 
+0x725b 032476 arg mem_random_number ,contr 
+0x725c 032477 arg mem_x ,contw 
+0x725d 032478 force 15 ,loopcnt 
+0x725e 032479 call memcpy 
+0x725f 032480 ifetch 1 ,contr 
+0x7260 032481 xor_into 6 ,pdata 
+0x7261 032482 istore 1 ,contw 
+0x7262 032483 setarg mem_y 
+0x7263 032484 store 2 ,memp_ar_input 
+0x7264 032485 setarg mem_x 
+0x7265 032486 store 2 ,memp_ar_key 
+0x7266 032487 set1 mark_ar2 ,mark 
+0x7267 032488 branch function_ar 
+:      032492 function_e22:
+0x7268 032493 fetcht 1 ,mem_pin_length 
+0x7269 032494 force 16 ,regb 
+0x726a 032495 add temp ,6 ,regc 
+0x726b 032496 sub regc ,16 ,null 
+0x726c 032497 branch function_e22_pin_init ,positive 
+0x726d 032498 force 16 ,regc 
+:      032499 function_e22_pin_init:
+0x726e 032500 arg mem_x ,contw 
+:      032501 function_e22_genx_pin:
+0x726f 032502 arg mem_pin ,contr 
+0x7270 032503 copy temp ,loopcnt 
+0x7271 032504 disable user 
+:      032505 function_e22_genx_loop:
+0x7272 032506 ifetch 1 ,contr 
+0x7273 032507 istore 1 ,contw 
+0x7274 032508 increase -1 ,regb 
+0x7275 032509 branch function_e22_genx_end ,zero 
+0x7276 032510 loop function_e22_genx_loop 
+0x7277 032511 branch function_e22_genx_pin ,user 
+0x7278 032512 enable user 
+0x7279 032513 force 6 ,loopcnt 
+0x727a 032514 copy rega ,contr 
+0x727b 032515 branch function_e22_genx_loop 
+:      032516 function_e22_genx_end:
+0x727c 032517 arg mem_random_number ,contr 
+0x727d 032518 arg mem_y ,contw 
+0x727e 032519 call memcpy16 
+0x727f 032520 fetch 1 ,mem_y15 
+0x7280 032521 ixor regc ,pdata 
+0x7281 032522 store 1 ,mem_y15 
+0x7282 032523 setarg mem_y 
+0x7283 032524 store 2 ,memp_ar_input 
+0x7284 032525 setarg mem_x 
+0x7285 032526 store 2 ,memp_ar_key 
+0x7286 032527 set1 mark_ar2 ,mark 
+0x7287 032528 branch function_ar 
+:      032533 function_e1:
+0x7288 032534 disable user 
+0x7289 032535 call function_expand 
+0x728a 032536 branch function_hash 
+:      032538 function_e3:
+0x728b 032539 arg mem_aco ,rega 
+0x728c 032540 enable user 
+0x728d 032541 call function_expand 
+0x728e 032542 call function_hash 
+0x728f 032543 arg mem_input_store ,contr 
+0x7290 032544 arg mem_kc ,contw 
+0x7291 032545 branch memcpy16 
+:      032548 function_hash:
+0x7292 032549 setarg mem_random_number 
+0x7293 032550 store 2 ,memp_ar_input 
+0x7294 032551 setarg mem_link_key 
+0x7295 032552 store 2 ,memp_ar_key 
+0x7296 032553 set0 mark_ar2 ,mark 
+0x7297 032554 call function_ar 
+0x7298 032555 arg mem_input_store ,rega 
+0x7299 032556 arg mem_random_number ,regb 
+0x729a 032557 arg mem_x ,contw 
+0x729b 032558 call xor16 
+0x729c 032559 arg mem_x ,rega 
+0x729d 032560 arg mem_y ,regb 
+0x729e 032561 copy regb ,contw 
+0x729f 032562 enable user 
+0x72a0 032563 call add16 
+0x72a1 032564 call key_offset 
+0x72a2 032565 setarg mem_y 
+0x72a3 032566 store 2 ,memp_ar_input 
+0x72a4 032567 setarg mem_x 
+0x72a5 032568 store 2 ,memp_ar_key 
+0x72a6 032569 set1 mark_ar2 ,mark 
+0x72a7 032570 branch function_ar 
+:      032574 function_ar:
+0x72a8 032575 jam 0 ,mem_ar_hround 
+0x72a9 032576 fetch 2 ,memp_ar_key 
+0x72aa 032577 iforce contr 
+0x72ab 032578 arg mem_key_store ,contw 
+0x72ac 032579 call memcpy16 
+0x72ad 032580 fetch 2 ,memp_ar_input 
+0x72ae 032581 iforce contr 
+0x72af 032582 arg mem_input_store ,contw 
+0x72b0 032583 call memcpy16 
+:      032585 function_ar_loop:
+0x72b1 032586 call key_scheduling 
+0x72b2 032587 disable user 
+0x72b3 032588 bmark0 mark_ar2 ,function_ar_original 
+0x72b4 032589 fetch 1 ,mem_ar_hround 
+0x72b5 032590 bne 4 ,function_ar_original 
+0x72b6 032591 fetch 2 ,memp_ar_input 
+0x72b7 032592 iforce regb 
+0x72b8 032593 call xor_mod32_ar2 
+:      032594 function_ar_original:
+0x72b9 032595 call xor_mod32 
+0x72ba 032596 call el_boxes 
+0x72bb 032597 fetch 1 ,mem_ar_hround 
+0x72bc 032598 increase 1 ,pdata 
+0x72bd 032599 store 1 ,mem_ar_hround 
+0x72be 032601 call key_scheduling 
+0x72bf 032602 enable user 
+0x72c0 032603 call xor_mod32 
+0x72c1 032604 call pht 
+0x72c2 032605 call permute 
+0x72c3 032606 call pht 
+0x72c4 032607 call permute 
+0x72c5 032608 call pht 
+0x72c6 032609 call permute 
+0x72c7 032610 call pht 
+0x72c8 032611 fetch 1 ,mem_ar_hround 
+0x72c9 032612 increase 1 ,pdata 
+0x72ca 032613 store 1 ,mem_ar_hround 
+0x72cb 032614 bne 16 ,function_ar_loop 
+0x72cc 032615 call key_scheduling 
+0x72cd 032616 disable user 
+0x72ce 032617 branch xor_mod32 
+:      032621 key_scheduling:
+0x72cf 032622 fetch 1 ,mem_ar_hround 
+0x72d0 032623 arg mem_key_store ,contr 
+0x72d1 032624 branch key_sched_zero ,blank 
+0x72d2 032625 iforce regb 
+0x72d3 032626 force 17 ,loopcnt 
+0x72d4 032627 copy contr ,contw 
+:      032628 key_rotateloop:
+0x72d5 032629 ifetch 1 ,contr 
+0x72d6 032630 lshift3 pdata ,temp 
+0x72d7 032631 rshift2 pdata ,pdata 
+0x72d8 032632 rshift3 pdata ,pdata 
+0x72d9 032633 ior temp ,pdata 
+0x72da 032634 istore 1 ,contw 
+0x72db 032635 loop key_rotateloop 
+0x72dc 032636 setarg mem_key_store 
+0x72dd 032637 iadd regb ,contr 
+0x72de 032638 force 16 ,loopcnt 
+0x72df 032639 arg mem_round_key ,contw 
+:      032640 key_select_octet_loop:
+0x72e0 032641 ifetch 1 ,contr 
+0x72e1 032642 istore 1 ,contw 
+0x72e2 032643 compare mem_key_store_end ,contr ,0xff 
+0x72e3 032644 nbranch key_select_octet_nwrap ,true 
+0x72e4 032645 increase -17 ,contr 
+:      032646 key_select_octet_nwrap:
+0x72e5 032647 loop key_select_octet_loop 
+0x72e6 032648 force 0 ,rega 
+0x72e7 032649 add regb ,-1 ,regc 
+0x72e8 032650 lshift2 regc ,regc 
+0x72e9 032651 lshift2 regc ,regc 
+0x72ea 032652 call enable_authrom 
+0x72eb 032653 setarg mem_b_box 
+0x72ec 032654 iadd regc ,regc 
+0x72ed 032655 arg mem_round_key ,contw 
+0x72ee 032656 force 16 ,loopcnt 
+:      032657 bias_round_key_loop:
+0x72ef 032658 ifetcht 1 ,regc 
+0x72f0 032659 ifetch 1 ,contw 
+0x72f1 032660 iadd temp ,pdata 
+0x72f2 032661 istore 1 ,contw 
+0x72f3 032662 increase 1 ,regc 
+0x72f4 032663 loop bias_round_key_loop 
+0x72f5 032664 branch disable_authrom 
+:      032666 key_sched_zero:
+0x72f6 032667 force 16 ,loopcnt 
+0x72f7 032668 force 0 ,temp 
+:      032669 create_byte_16_loop:
+0x72f8 032670 ifetch 1 ,contr 
+0x72f9 032671 ixor temp ,temp 
+0x72fa 032672 loop create_byte_16_loop 
+0x72fb 032673 deposit temp 
+0x72fc 032674 istore 1 ,contr 
+0x72fd 032675 arg mem_key_store ,contr 
+0x72fe 032676 arg mem_round_key ,contw 
+0x72ff 032677 branch memcpy16 
+:      032679 xor_mod32:
+0x7300 032680 arg mem_round_key ,regb 
+:      032681 xor_mod32_ar2:
+0x7301 032682 force 16 ,loopcnt 
+0x7302 032683 arg mem_input_store ,rega 
+0x7303 032684 copy rega ,contw 
+:      032685 xor_mod32_loop:
+0x7304 032686 ifetcht 1 ,rega 
+0x7305 032687 ifetch 1 ,regb 
+0x7306 032688 ixor temp ,alarm 
+0x7307 032689 and loopcnt ,3 ,regc 
+0x7308 032690 nbranch xor_mod32_invert ,user 
+0x7309 032691 xor_into 3 ,regc 
+:      032692 xor_mod32_invert:
+0x730a 032693 sub regc ,1 ,regc 
+0x730b 032694 branch xor_even ,positive 
+0x730c 032695 iadd temp ,alarm 
+:      032696 xor_even:
+0x730d 032697 deposit alarm 
+0x730e 032698 istore 1 ,contw 
+0x730f 032699 increase 1 ,rega 
+0x7310 032700 increase 1 ,regb 
+0x7311 032701 loop xor_mod32_loop 
+0x7312 032702 rtn 
+:      032704 el_boxes:
+0x7313 032705 call enable_authrom 
+0x7314 032706 force 16 ,loopcnt 
+0x7315 032707 arg mem_input_store ,rega 
+:      032708 el_box_loop:
+0x7316 032709 ifetch 1 ,rega 
+0x7317 032710 arg mem_e_box ,contr 
+0x7318 032711 and loopcnt ,3 ,regc 
+0x7319 032712 sub regc ,1 ,null 
+0x731a 032713 branch e_boxes ,positive 
+0x731b 032714 arg mem_l_box ,contr 
+:      032715 e_boxes:
+0x731c 032716 iadd contr ,contr 
+0x731d 032717 ifetch 1 ,contr 
+0x731e 032718 istore 1 ,rega 
+0x731f 032719 increase 1 ,rega 
+0x7320 032720 loop el_box_loop 
+0x7321 032721 branch disable_authrom 
+:      032723 pht:
+0x7322 032724 force 8 ,loopcnt 
+0x7323 032725 arg mem_input_store ,contr 
+0x7324 032726 copy contr ,contw 
+:      032727 pht_loop:
+0x7325 032728 ifetch 1 ,contr 
+0x7326 032729 iforce rega 
+0x7327 032730 ifetch 1 ,contr 
+0x7328 032731 iforce regb 
+0x7329 032732 lshift rega ,pdata 
+0x732a 032733 iadd regb ,pdata 
+0x732b 032734 istore 1 ,contw 
+0x732c 032735 deposit rega 
+0x732d 032736 iadd regb ,pdata 
+0x732e 032737 istore 1 ,contw 
+0x732f 032738 loop pht_loop 
+0x7330 032739 rtn 
+:      032742 permute:
+0x7331 032743 setarg 0x8ae42c 
+0x7332 032744 iforce temp 
+0x7333 032745 force 7 ,loopcnt 
+0x7334 032746 call permute_exchange 
+0x7335 032747 setarg 0xd751b 
+0x7336 032748 iforce temp 
+0x7337 032749 force 5 ,loopcnt 
+0x7338 032750 call permute_exchange 
+0x7339 032751 fetch 1 ,mem_input_store + 15 
+0x733a 032752 iforce rega 
+0x733b 032753 fetch 1 ,mem_input_store + 3 
+0x733c 032754 store 1 ,mem_input_store + 15 
+0x733d 032755 deposit rega 
+0x733e 032756 store 1 ,mem_input_store + 3 
+0x733f 032757 rtn 
+:      032759 permute_exchange:
+0x7340 032760 and temp ,0xf ,regb 
+:      032761 permute_loop:
+0x7341 032762 and temp ,0xf ,pdata 
+0x7342 032763 arg mem_input_store ,contw 
+0x7343 032764 iadd contw ,contw 
+0x7344 032765 ifetch 1 ,contw 
+0x7345 032766 iforce regc 
+0x7346 032767 deposit rega 
+0x7347 032768 istore 1 ,contw 
+0x7348 032769 copy regc ,rega 
+0x7349 032770 rshift4 temp ,temp 
+0x734a 032771 loop permute_loop 
+0x734b 032772 setarg mem_input_store 
+0x734c 032773 iadd regb ,contw 
+0x734d 032774 deposit rega 
+0x734e 032775 istore 1 ,contw 
+0x734f 032776 rtn 
+:      032778 add16:
+0x7350 032779 enable user 
+0x7351 032780 branch xor_add16 
+:      032782 xor16:
+0x7352 032783 disable user 
+:      032784 xor_add16:
+0x7353 032785 force 16 ,loopcnt 
+:      032786 xoradd_loop:
+0x7354 032787 ifetcht 1 ,rega 
+0x7355 032788 ifetch 1 ,regb 
+0x7356 032789 branch xoradd_add ,user 
+0x7357 032790 ixor temp ,pdata 
+0x7358 032791 branch xoradd_store 
+:      032792 xoradd_add:
+0x7359 032793 iadd temp ,pdata 
+:      032794 xoradd_store:
+0x735a 032795 istore 1 ,contw 
+0x735b 032796 increase 1 ,rega 
+0x735c 032797 increase 1 ,regb 
+0x735d 032798 loop xoradd_loop 
+0x735e 032799 rtn 
+:      032802 function_expand:
+0x735f 032803 arg mem_y ,contw 
+0x7360 032804 ifetch 6 ,rega 
+0x7361 032805 istore 6 ,contw 
+0x7362 032806 branch expand_12 ,user 
+0x7363 032807 ifetch 6 ,rega 
+0x7364 032808 branch expand_cont 
+:      032809 expand_12:
+0x7365 032810 ifetch 6 ,contr 
+:      032811 expand_cont:
+0x7366 032812 istore 6 ,contw 
+0x7367 032813 ifetch 4 ,rega 
+0x7368 032814 istore 4 ,contw 
+0x7369 032815 rtn 
+:      032817 key_offset:
+0x736a 032818 arg mem_link_key ,contr 
+0x736b 032819 arg mem_x ,contw 
+0x736c 032820 arg 0 ,temp 
+0x736d 032821 setarg 0x8395a7 
+0x736e 032822 call concatenate_temp24 
+0x736f 032823 setarg 0xb3c1df 
+0x7370 032824 call concatenate_temp24 
+0x7371 032825 setarg 0xe5e9 
+0x7372 032826 call concatenate_temp16 
+0x7373 032827 copy temp ,regab 
+0x7374 032828 disable user 
+0x7375 032829 call key_addxor 
+0x7376 032830 copy regab ,temp 
+0x7377 032831 enable user 
+0x7378 032832 branch key_addxor 
+:      032834 key_addxor:
+0x7379 032835 force 8 ,loopcnt 
+:      032836 key_addxor_loop:
+0x737a 032837 ifetch 1 ,contr 
+0x737b 032838 compare 1 ,loopcnt ,1 
+0x737c 032839 branch key_high ,user 
+0x737d 032840 branch key_xor ,true 
+:      032841 key_add:
+0x737e 032842 iadd temp ,pdata 
+0x737f 032843 branch key_store 
+:      032844 key_high:
+0x7380 032845 branch key_add ,true 
+:      032846 key_xor:
+0x7381 032847 ixor temp ,pdata 
+:      032848 key_store:
+0x7382 032849 istore 1 ,contw 
+0x7383 032850 rshift8 temp ,temp 
+0x7384 032851 loop key_addxor_loop 
+0x7385 032852 rtn 
+:      032854 copy_aco:
+0x7386 032855 fetch 6 ,mem_input_store + 4 
+0x7387 032856 store 6 ,mem_aco 
+0x7388 032857 ifetch 6 ,contr 
+0x7389 032858 istore 6 ,contw 
+0x738a 032859 rtn 
+:      032861 concatenate_temp24:
+0x738b 032862 lshift8 temp ,temp 
+:      032863 concatenate_temp16:
+0x738c 032864 lshift16 temp ,temp 
+0x738d 032865 ior temp ,temp 
+0x738e 032866 rtn 
+:      032870 loop1:
+0x738f 032871 branch loop1 
+:      032875 generate_stk:
+0x7390 032876 bpatchx patch3c_0 ,mem_patch3c 
+0x7391 032877 call function_s1 
+0x7392 032878 arg mem_le_ltk ,contw 
+0x7393 032879 branch store_aes_result 
+:      032882 authenticate_rconfirm:
+0x7394 032883 arg mem_le_srand ,contw 
+0x7395 032884 branch authenticate_mconfirm ,master 
+0x7396 032885 arg mem_le_mrand ,contw 
+:      032886 authenticate_mconfirm:
+0x7397 032887 copy contr ,rega 
+0x7398 032888 call memcpy16 
+0x7399 032889 call function_c1 
+0x739a 032890 arg mem_le_rconfirm ,contr 
+0x739b 032891 branch compare_res 
+:      032893 generate_confirm:
+0x739c 032894 arg mem_le_mrand ,rega 
+0x739d 032895 branch generate_mrand ,master 
+0x739e 032896 arg mem_le_srand ,rega 
+:      032897 generate_mrand:
+0x739f 032898 copy rega ,contw 
+0x73a0 032899 call generate_random 
+0x73a1 032900 branch function_c1 
+:      032902 generate_sk:
+0x73a2 032903 arg mem_le_skdm ,contr 
+0x73a3 032904 call load_data128 
+0x73a4 032905 arg mem_le_ltk ,contr 
+0x73a5 032906 call load_regext 
+0x73a6 032907 force 0x38 ,aes_ctrl 
+0x73a7 032908 force 0x0 ,aes_ctrl 
+0x73a8 032909 call wait_aes 
+0x73a9 032910 arg mem_le_sk ,contw 
+0x73aa 032911 branch store_aes_result 
+:      032914 first_block_counter:
+0x73ab 032915 force 0x49 ,pdata 
+0x73ac 032916 branch first_block 
+:      032917 first_block_data:
+0x73ad 032918 force 1 ,pdata 
+:      032919 first_block:
+0x73ae 032920 force regidx_data ,regext_index 
+0x73af 032921 lshift8 temp ,regext 
+0x73b0 032922 ior regext ,regext 
+0x73b1 032923 increase 1 ,regext_index 
+0x73b2 032924 rshift8 temp ,regext 
+0x73b3 032925 rshift16 regext ,regext 
+0x73b4 032926 fetch 2 ,mem_le_ivm 
+0x73b5 032927 lshift16 ,pdata ,pdata 
+0x73b6 032928 ior regext ,regext 
+0x73b7 032929 increase 1 ,regext_index 
+0x73b8 032930 ifetch 4 ,contr 
+0x73b9 032931 iforce regext 
+0x73ba 032932 increase 1 ,regext_index 
+0x73bb 032933 ifetch 2 ,contr 
+0x73bc 032934 byteswap rega ,regext 
+0x73bd 032935 lshift16 regext ,regext 
+0x73be 032936 ior regext ,regext 
+0x73bf 032937 increase 1 ,regext_index 
+0x73c0 032938 rtn 
+:      032942 generate_mic:
+0x73c1 032943 add regc ,1 ,contr 
+0x73c2 032944 ifetch 1 ,contr 
+0x73c3 032945 iforce rega 
+0x73c4 032946 call first_block_counter 
+0x73c5 032947 call do_aes_ocb 
+0x73c6 032949 force regidx_data ,regext_index 
+0x73c7 032950 ifetch 1 ,regc 
+0x73c8 032951 and_into 0x3 ,pdata 
+0x73c9 032952 lshift16 pdata ,regext 
+0x73ca 032953 set1 8 ,regext 
+0x73cb 032954 call clear_hidata 
+0x73cc 032955 call do_aes_cbc 
+0x73cd 032957 copy rega ,loopcnt 
+0x73ce 032958 add regc ,2 ,contr 
+0x73cf 032959 call padding_data 
+:      032960 generate_mic_loop:
+0x73d0 032961 call aes_load_data 
+0x73d1 032962 call do_aes_cbc 
+0x73d2 032963 deposit loopcnt 
+0x73d3 032964 branch generate_mic_end ,blank 
+0x73d4 032965 branch generate_mic_loop 
+:      032966 generate_mic_end:
+0x73d5 032967 force regidx_result ,regext_index 
+0x73d6 032968 deposit regext 
+0x73d7 032969 store 4 ,mem_le_mic 
+0x73d8 032970 rtn 
+:      032972 aes_crypt_data:
+0x73d9 032973 increase 1 ,rega 
+0x73da 032974 call first_block_data 
+0x73db 032975 copy regc ,contr 
+0x73dc 032976 call aes_load_xor 
+0x73dd 032977 call do_aes_ctr 
+0x73de 032978 call store_enc_data 
+0x73df 032979 increase 16 ,regc 
+0x73e0 032980 increase -16 ,regb 
+0x73e1 032981 branch aes_crypt_data ,positive 
+0x73e2 032982 rtn 
+:      032984 le_encrypt:
+0x73e3 032985 bpatchx patch3c_1 ,mem_patch3c 
+0x73e4 032986 arg mem_le_txheader ,regc 
+0x73e5 032987 fetcht 5 ,mem_le_pcnt_tx 
+0x73e6 032988 call generate_mic 
+0x73e7 032989 force regidx_xor ,regext_index 
+0x73e8 032990 iforce regext 
+0x73e9 032991 force 0 ,rega 
+0x73ea 032992 call first_block_data 
+0x73eb 032993 call do_aes_ctr 
+0x73ec 032994 arg mem_le_txpayload ,regc 
+0x73ed 032995 fetch 1 ,mem_le_txlen 
+0x73ee 032996 add pdata ,-1 ,regb 
+0x73ef 032997 iadd regc ,contw 
+0x73f0 032998 force regidx_result ,regext_index 
+0x73f1 032999 deposit regext 
+0x73f2 033000 istore 4 ,contw 
+0x73f3 033001 call aes_crypt_data 
+0x73f4 033002 fetch 1 ,mem_le_txlen 
+0x73f5 033003 increase 4 ,pdata 
+0x73f6 033004 store 1 ,mem_le_txlen 
+0x73f7 033005 fetcht 5 ,mem_le_pcnt_tx 
+0x73f8 033006 increase 1 ,temp 
+0x73f9 033007 storet 5 ,mem_le_pcnt_tx 
+0x73fa 033008 rtn 
+:      033010 le_decrypt:
+0x73fb 033011 bpatchx patch3c_2 ,mem_patch3c 
+0x73fc 033012 fetch 1 ,mem_le_rxbuf + 1 
+0x73fd 033013 sub pdata ,20 ,null 
+0x73fe 033014 branch le_dec_cont ,positive 
+:      033015 le_dec_cont:
+0x73ff 033016 arg mem_le_rxbuf + 2 ,regc 
+0x7400 033017 add pdata ,-1 ,regb 
+0x7401 033018 increase -4 ,pdata 
+0x7402 033019 store 1 ,mem_le_rxbuf + 1 
+0x7403 033020 iadd regc ,contr 
+0x7404 033021 ifetch 4 ,contr 
+0x7405 033022 force regidx_xor ,regext_index 
+0x7406 033023 iforce regext 
+0x7407 033024 force 0 ,rega 
+0x7408 033025 fetcht 5 ,mem_le_pcnt_rx 
+0x7409 033026 call first_block_data 
+0x740a 033027 call do_aes_ctr 
+0x740b 033028 force regidx_result ,regext_index 
+0x740c 033029 deposit regext 
+0x740d 033030 store 4 ,mem_le_peer_mic 
+0x740e 033031 call aes_crypt_data 
+0x740f 033032 arg mem_le_rxbuf ,regc 
+0x7410 033033 call generate_mic 
+0x7411 033034 fetcht 4 ,mem_le_peer_mic 
+0x7412 033035 isub temp ,pdata 
+0x7413 033036 nrtn blank 
+0x7414 033037 fetch 4 ,mem_le_last_mic 
+0x7415 033038 isub temp ,pdata 
+0x7416 033039 rtn blank 
+0x7417 033040 storet 4 ,mem_le_last_mic 
+0x7418 033041 fetch 5 ,mem_le_pcnt_rx 
+0x7419 033042 increase 1 ,pdata 
+0x741a 033043 store 5 ,mem_le_pcnt_rx 
+0x741b 033044 force 0 ,pdata 
+0x741c 033045 rtn 
+:      033047 wait_aes:
+0x741d 033048 nbranch wait_aes ,aes_ready 
+0x741e 033049 rtn 
+:      033051 do_aes_ocb:
+0x741f 033052 force 0x30 ,aes_ctrl 
+0x7420 033053 force 0x0 ,aes_ctrl 
+0x7421 033054 branch wait_aes 
+:      033056 do_aes_cbc:
+0x7422 033057 force 0x32 ,aes_ctrl 
+0x7423 033058 force 0x2 ,aes_ctrl 
+0x7424 033059 branch wait_aes 
+:      033061 do_aes_ctr:
+0x7425 033062 force 0x34 ,aes_ctrl 
+0x7426 033063 force 0x4 ,aes_ctrl 
+0x7427 033064 branch wait_aes 
+:      033067 aes_init:
+0x7428 033068 force 1 ,aes_ctrl 
+0x7429 033069 force 0 ,aes_ctrl 
+0x742a 033070 rtn 
+:      033071 function_s1:
+0x742b 033072 force regidx_data ,regext_index 
+0x742c 033073 fetch 4 ,mem_le_mrand 
+0x742d 033074 iforce regext 
+0x742e 033075 increase 1 ,regext_index 
+0x742f 033076 ifetch 4 ,contr 
+0x7430 033077 iforce regext 
+0x7431 033078 increase 1 ,regext_index 
+0x7432 033079 fetch 4 ,mem_le_srand 
+0x7433 033080 iforce regext 
+0x7434 033081 increase 1 ,regext_index 
+0x7435 033082 ifetch 4 ,contr 
+0x7436 033083 iforce regext 
+0x7437 033084 increase 1 ,regext_index 
+0x7438 033085 call aes_clear 
+0x7439 033086 increase -4 ,regext_index 
+0x743a 033087 fetch 4 ,mem_le_tk 
+0x743b 033088 copy pdata ,regext 
+0x743c 033089 increase 4 ,regext_index 
+0x743d 033090 force 0x38 ,aes_ctrl 
+0x743e 033091 force 0x8 ,aes_ctrl 
+0x743f 033092 branch wait_aes 
+:      033095 function_c1:
+0x7440 033096 bpatchx patch3c_3 ,mem_patch3c 
+0x7441 033097 fetch 6 ,mem_le_lap 
+0x7442 033098 fetcht 6 ,mem_le_plap 
+0x7443 033099 branch function_c1_master ,master 
+0x7444 033100 fetch 6 ,mem_le_plap 
+0x7445 033101 fetcht 6 ,mem_le_lap 
+:      033102 function_c1_master:
+0x7446 033103 force regidx_xor ,regext_index 
+0x7447 033104 copy temp ,regext 
+0x7448 033105 increase 1 ,regext_index 
+0x7449 033106 rshift32 temp ,regext 
+0x744a 033107 lshift16 pdata ,pdata 
+0x744b 033108 ior regext ,regext 
+0x744c 033109 increase 1 ,regext_index 
+0x744d 033110 rshift32 pdata ,regext 
+0x744e 033111 increase 1 ,regext_index 
+0x744f 033112 force 0 ,regext 
+0x7450 033113 force 0 ,pdata 
+0x7451 033114 fetch 1 ,mem_le_conn_peer_addr_type 
+0x7452 033115 fetcht 1 ,mem_le_adv_own_addr_type 
+0x7453 033116 nbranch function_c1_irat ,master 
+0x7454 033118 fetch 1 ,mem_le_conn_own_addr_type 
+0x7455 033119 fetcht 1 ,mem_le_conn_peer_addr_type 
+:      033120 function_c1_irat:
+0x7456 033121 store 1 ,mem_le_iat 
+0x7457 033122 storet 1 ,mem_le_rat 
+0x7458 033123 force regidx_data ,regext_index 
+0x7459 033124 arg mem_le_iat ,regb 
+0x745a 033125 force 4 ,loopcnt 
+:      033126 function_c1_loop1:
+0x745b 033127 ifetch 4 ,rega 
+0x745c 033128 ifetcht 4 ,regb 
+0x745d 033129 ixor temp ,regext 
+0x745e 033130 increase 1 ,regext_index 
+0x745f 033131 increase 4 ,rega 
+0x7460 033132 increase 4 ,regb 
+0x7461 033133 loop function_c1_loop1 
+0x7462 033134 call aes_clear 
+0x7463 033135 increase -4 ,regext_index 
+0x7464 033136 fetch 4 ,mem_le_tk 
+0x7465 033137 copy pdata ,regext 
+0x7466 033138 increase 4 ,regext_index 
+0x7467 033139 force 0x38 ,aes_ctrl 
+0x7468 033140 force 0xc ,aes_ctrl 
+0x7469 033141 call wait_aes 
+0x746a 033143 call aes_clear_data 
+0x746b 033144 force 0x3a ,aes_ctrl 
+0x746c 033145 force 0x8 ,aes_ctrl 
+0x746d 033146 branch wait_aes 
+:      033148 padding_data:
+0x746e 033149 compare 0 ,loopcnt ,3 
+0x746f 033150 rtn true 
+0x7470 033151 deposit contr 
+0x7471 033152 iadd loopcnt ,contw 
+0x7472 033153 force 0 ,pdata 
+:      033154 padding_loop:
+0x7473 033155 istore 1 ,contw 
+0x7474 033156 increase 1 ,loopcnt 
+0x7475 033157 compare 0 ,loopcnt ,3 
+0x7476 033158 rtn true 
+0x7477 033159 branch padding_loop 
+:      033161 aes_load_data:
+0x7478 033162 force regidx_data ,regext_index 
+:      033163 load_data_loop:
+0x7479 033164 deposit loopcnt 
+0x747a 033165 branch load_data_padding ,blank 
+0x747b 033166 ifetch 4 ,contr 
+0x747c 033167 increase -4 ,loopcnt 
+:      033168 load_data_padding:
+0x747d 033169 iforce regext 
+0x747e 033170 increase 1 ,regext_index 
+0x747f 033171 compare regidx_key ,regext_index ,0xf 
+0x7480 033172 rtn true 
+0x7481 033173 branch load_data_loop 
+:      033175 aes_load_xor:
+0x7482 033176 force regidx_xor ,regext_index 
+0x7483 033177 branch load_regext 
+:      033178 load_key:
+0x7484 033179 force regidx_key ,regext_index 
+0x7485 033180 branch load_regext 
+:      033181 load_data128:
+0x7486 033182 force regidx_data ,regext_index 
+:      033183 load_regext:
+0x7487 033184 force 4 ,loopcnt 
+:      033185 load_regext_loop:
+0x7488 033186 ifetch 4 ,contr 
+0x7489 033187 iforce regext 
+0x748a 033188 increase 1 ,regext_index 
+0x748b 033189 loop load_regext_loop 
+0x748c 033190 rtn 
+:      033192 load_sk:
+0x748d 033193 arg mem_le_sk ,contr 
+0x748e 033194 branch load_key 
+:      033196 clear_hidata:
+0x748f 033197 force 4 ,loopcnt 
+0x7490 033198 branch clear_data_rest 
+:      033200 aes_clear_data:
+0x7491 033201 force regidx_data ,regext_index 
+:      033202 aes_clear:
+0x7492 033203 force 4 ,loopcnt 
+:      033204 clear_loop:
+0x7493 033205 force 0 ,regext 
+:      033206 clear_data_rest:
+0x7494 033207 increase 1 ,regext_index 
+0x7495 033208 loop clear_loop 
+0x7496 033209 rtn 
+:      033211 store_aes_result:
+0x7497 033212 force regidx_result ,regext_index 
+0x7498 033213 force 4 ,loopcnt 
+:      033214 send_aes_result_loop:
+0x7499 033215 deposit regext 
+0x749a 033216 istore 4 ,contw 
+0x749b 033217 increase 1 ,regext_index 
+0x749c 033218 loop send_aes_result_loop 
+0x749d 033219 rtn 
+:      033221 store_enc_data:
+0x749e 033222 force regidx_result ,regext_index 
+0x749f 033223 copy regc ,contw 
+0x74a0 033224 add regb ,1 ,loopcnt 
+0x74a1 033225 sub loopcnt ,15 ,null 
+0x74a2 033226 branch store_enc_loop ,positive 
+0x74a3 033227 force 16 ,loopcnt 
+:      033228 store_enc_loop:
+0x74a4 033229 deposit regext 
+0x74a5 033230 sub loopcnt ,3 ,null 
+0x74a6 033231 branch store_enc_byte ,positive 
+0x74a7 033232 istore 4 ,contw 
+0x74a8 033233 increase -4 ,loopcnt 
+0x74a9 033234 rtn zero 
+0x74aa 033235 increase 1 ,regext_index 
+0x74ab 033236 branch store_enc_loop 
+:      033237 store_enc_byte:
+0x74ac 033238 istore 1 ,contw 
+0x74ad 033239 rshift8 pdata ,pdata 
+0x74ae 033240 loop store_enc_byte 
+0x74af 033241 rtn 
+:      033244 compare_res:
+0x74b0 033245 force regidx_result ,regext_index 
+0x74b1 033246 force 4 ,loopcnt 
+:      033247 compare_res_loop:
+0x74b2 033248 ifetch 4 ,contr 
+0x74b3 033249 isub regext ,null 
+0x74b4 033250 nrtn zero 
+0x74b5 033251 increase 1 ,regext_index 
+0x74b6 033252 loop compare_res_loop 
+0x74b7 033253 force 0 ,null 
+0x74b8 033254 rtn 
+:      033256 enable_authrom:
+0x74b9 033257 hfetch 1 ,core_clkoff 
+0x74ba 033258 set0 clock_off_auth_rom ,pdata 
+0x74bb 033259 hstore 1 ,core_clkoff 
+0x74bc 033260 rtn 
+:      033262 disable_authrom:
+0x74bd 033263 hfetch 1 ,core_clkoff 
+0x74be 033264 set1 clock_off_auth_rom ,pdata 
+0x74bf 033265 hstore 1 ,core_clkoff 
+0x74c0 033266 rtn 
+:      033268 init_memp:
+0x74c1 033269 arg mem_p ,contw 
+0x74c2 033270 setsect 0 ,0x3ffff 
+0x74c3 033271 setsect 1 ,0x3ffff 
+0x74c4 033272 setsect 2 ,0x3ffff 
+0x74c5 033273 setsect 3 ,0x3fbff 
+0x74c6 033274 istore 9 ,contw 
+0x74c7 033275 setsect 0 ,0x3ffff 
+0x74c8 033276 setsect 1 ,0x3ffff 
+0x74c9 033277 setsect 2 ,0x3ffff 
+0x74ca 033278 setsect 3 ,0x3ffff 
+0x74cb 033279 istore 9 ,contw 
+0x74cc 033280 setsect 0 ,0x3ffff 
+0x74cd 033281 setsect 1 ,0x3ffff 
+0x74ce 033282 setsect 2 ,0x3cfff 
+0x74cf 033283 setsect 3 ,0x3ffff 
+0x74d0 033284 istore 9 ,contw 
+0x74d1 033285 setsect 0 ,0x3ffff 
+0x74d2 033286 setsect 1 ,0x3ffff 
+0x74d3 033287 setsect 2 ,0x3ffef 
+0x74d4 033288 setsect 3 ,0x3ffff 
+0x74d5 033289 istore 9 ,contw 
+0x74d6 033290 setsect 0 ,0x3ffff 
+0x74d7 033291 setsect 1 ,0x3ffff 
+0x74d8 033292 setsect 2 ,0x3ffff 
+0x74d9 033293 setsect 3 ,0x3ffff 
+0x74da 033294 istore 9 ,contw 
+0x74db 033295 setsect 0 ,0x3ffff 
+0x74dc 033296 setsect 1 ,0x26c7f 
+0x74dd 033297 setsect 2 ,0x146b 
+0x74de 033298 setsect 3 ,0x37bb3 
+0x74df 033299 istore 9 ,contw 
+0x74e0 033300 setsect 0 ,0x1feb8 
+0x74e1 033301 setsect 1 ,0x10c12 
+0x74e2 033302 setsect 2 ,0x2b722 
+0x74e3 033303 setsect 3 ,0x29fa6 
+0x74e4 033304 istore 9 ,contw 
+0x74e5 033305 setsect 0 ,0xe70f 
+0x74e6 033306 setsect 1 ,0x16720 
+0x74e7 033307 setsect 2 ,0x519e 
+0x74e8 033308 setsect 3 ,0x19084 
+0x74e9 033309 istore 9 ,contw 
+0x74ea 033310 setsect 0 ,0x31012 
+0x74eb 033311 setsect 1 ,0x360bf 
+0x74ec 033312 setsect 2 ,0x3f0af 
+0x74ed 033313 setsect 3 ,0x3d3 
+0x74ee 033314 istore 9 ,contw 
+0x74ef 033315 setsect 0 ,0x3a188 
+0x74f0 033316 setsect 1 ,0x3ad0 
+0x74f1 033317 setsect 2 ,0x3cbf2 
+0x74f2 033318 setsect 3 ,0x243d9 
+0x74f3 033319 istore 9 ,contw 
+0x74f4 033320 setsect 0 ,0x2b030 
+0x74f5 033321 setsect 1 ,0x36a03 
+0x74f6 033322 setsect 2 ,0x11188 
+0x74f7 033323 setsect 3 ,0x1e520 
+0x74f8 033324 istore 9 ,contw 
+0x74f9 033325 setsect 0 ,0x3a11e 
+0x74fa 033326 setsect 1 ,0xfe5d 
+0x74fb 033327 setsect 2 ,0xdd57 
+0x74fc 033328 setsect 3 ,0x1ac93 
+0x74fd 033329 istore 9 ,contw 
+0x74fe 033330 setsect 0 ,0x11ed 
+0x74ff 033331 setsect 1 ,0x218c4 
+0x7500 033332 setsect 2 ,0x8da7 
+0x7501 033333 setsect 3 ,0x257ff 
+0x7502 033334 istore 9 ,contw 
+0x7503 033335 setsect 0 ,0x3192b 
+0x7504 033336 setsect 1 ,0x34641 
+0x7505 033337 setsect 2 ,0x1be0c 
+0x7506 033338 setsect 3 ,0x366ad 
+0x7507 033339 istore 9 ,contw 
+0x7508 033340 setsect 0 ,0x1f83 
+0x7509 033341 setsect 1 ,0x15a23 
+0x750a 033342 setsect 2 ,0x3f9b0 
+0x750b 033343 setsect 3 ,0x3949 
+0x750c 033344 istore 9 ,contw 
+0x750d 033345 setsect 0 ,0x13a51 
+0x750e 033346 setsect 1 ,0x153fd 
+0x750f 033347 setsect 2 ,0x3372a 
+0x7510 033348 setsect 3 ,0xf1bb 
+0x7511 033349 istore 9 ,contw 
+0x7512 033350 setsect 0 ,0x3ae85 
+0x7513 033351 setsect 1 ,0x1eed9 
+0x7514 033352 setsect 2 ,0x9e66 
+0x7515 033353 setsect 3 ,0x1a8 
+0x7516 033354 istore 8 ,contw 
+0x7517 033355 rtn 
+:      033359 init_memp_256:
+0x7518 033360 arg mem_p_256 ,contw 
+0x7519 033361 setsect 0 ,0x3ffff 
+0x751a 033362 setsect 1 ,0x3ffff 
+0x751b 033363 setsect 2 ,0x3ffff 
+0x751c 033364 setsect 3 ,0x3ffff 
+0x751d 033365 istore 9 ,contw 
+0x751e 033366 setsect 0 ,0x3ffff 
+0x751f 033367 setsect 1 ,0x3f 
+0x7520 033368 setsect 2 ,0x0 
+0x7521 033369 setsect 3 ,0x0 
+0x7522 033370 istore 9 ,contw 
+0x7523 033371 setsect 0 ,0x0 
+0x7524 033372 setsect 1 ,0x0 
+0x7525 033373 setsect 2 ,0x1000 
+0x7526 033374 setsect 3 ,0x0 
+0x7527 033375 istore 9 ,contw 
+0x7528 033376 setsect 0 ,0x3ff00 
+0x7529 033377 setsect 1 ,0x3ffff 
+0x752a 033378 setsect 2 ,0x3ffcf 
+0x752b 033379 setsect 3 ,0x3ffff 
+0x752c 033380 istore 9 ,contw 
+0x752d 033381 setsect 0 ,0x3ffff 
+0x752e 033382 setsect 1 ,0x3ffff 
+0x752f 033383 setsect 2 ,0x3ffff 
+0x7530 033384 setsect 3 ,0x3ff 
+0x7531 033385 istore 9 ,contw 
+0x7532 033386 setsect 0 ,0x0 
+0x7533 033387 setsect 1 ,0x0 
+0x7534 033388 setsect 2 ,0x0 
+0x7535 033389 setsect 3 ,0x0 
+0x7536 033390 istore 9 ,contw 
+0x7537 033391 setsect 0 ,0x10000 
+0x7538 033392 setsect 1 ,0x0 
+0x7539 033393 setsect 2 ,0x3f000 
+0x753a 033394 setsect 3 ,0x3ffff 
+0x753b 033395 istore 9 ,contw 
+0x753c 033396 setsect 0 ,0x296ff 
+0x753d 033397 setsect 1 ,0x22630 
+0x753e 033398 setsect 2 ,0x3945d 
+0x753f 033399 setsect 3 ,0x3d284 
+0x7540 033400 istore 9 ,contw 
+0x7541 033401 setsect 0 ,0x333a0 
+0x7542 033402 setsect 1 ,0x4b7a 
+0x7543 033403 setsect 2 ,0x37d8 
+0x7544 033404 setsect 3 ,0x3c9dc 
+0x7545 033405 istore 9 ,contw 
+0x7546 033406 setsect 0 ,0x3a440 
+0x7547 033407 setsect 1 ,0x1b958 
+0x7548 033408 setsect 2 ,0x38bce 
+0x7549 033409 setsect 3 ,0x1091f 
+0x754a 033410 istore 9 ,contw 
+0x754b 033411 setsect 0 ,0x2e12c 
+0x754c 033412 setsect 1 ,0x1f47c 
+0x754d 033413 setsect 2 ,0x356b1 
+0x754e 033414 setsect 3 ,0x2fd47 
+0x754f 033415 istore 9 ,contw 
+0x7550 033416 setsect 0 ,0x6837 
+0x7551 033417 setsect 1 ,0x2ed90 
+0x7552 033418 setsect 2 ,0x1ecec 
+0x7553 033419 setsect 3 ,0x1acc5 
+0x7554 033420 istore 9 ,contw 
+0x7555 033421 setsect 0 ,0x23357 
+0x7556 033422 setsect 1 ,0x18af3 
+0x7557 033423 setsect 2 ,0xf9e1 
+0x7558 033424 setsect 3 ,0x129f0 
+0x7559 033425 istore 9 ,contw 
+0x755a 033426 setsect 0 ,0x2e7eb 
+0x755b 033427 setsect 1 ,0x3e6e3 
+0x755c 033428 setsect 2 ,0x3e1a7 
+0x755d 033429 setsect 3 ,0x10b8b 
+0x755e 033430 istore 9 ,contw 
+0x755f 033431 setsect 0 ,0x24fe3 
+0x7560 033432 setsect 1 ,0x20ef 
+0x7561 033433 setsect 2 ,0x1b5a6 
+0x7562 033434 setsect 3 ,0xdc2f 
+0x7563 033435 istore 9 ,contw 
+0x7564 033436 setsect 0 ,0x13860 
+0x7565 033437 setsect 1 ,0x2bd69 
+0x7566 033438 setsect 2 ,0x391a 
+0x7567 033439 setsect 3 ,0x1b222 
+0x7568 033440 istore 9 ,contw 
+0x7569 033441 rtn 
+:      033444 publickey_init:
+0x756a 033445 fetch 1 ,mem_ssp_enable 
+0x756b 033446 nbranch sp_initialize ,blank 
+0x756c 033447 branch sp_initialize_256 
+:      033449 sp_calc_sequence_256_check:
+0x756d 033450 bpatchx patch3c_4 ,mem_patch3c 
+0x756e 033451 fetch 1 ,mem_ssp_enable 
+0x756f 033452 rtn blank 
+0x7570 033453 fetch 1 ,mem_sp_local_key_invalid 
+0x7571 033454 rtnne sp_key_valid 
+0x7572 033455 fetch 1 ,mem_le_secure_connect_enable 
+0x7573 033456 rtn blank 
+0x7574 033457 fetch 1 ,mem_le_sc_local_key_invalid 
+0x7575 033458 rtneq sp_key_valid_256 
+0x7576 033459 fetch 2 ,mem_ui_state_map 
+0x7577 033460 bbit1 ui_state_bt_connected ,stop_publickey_calc_256 
+0x7578 033461 fetch 1 ,mem_le_sc_calc 
+0x7579 033462 beq sp_calc_standby ,sp_initialize_256 
+0x757a 033463 rtn 
+:      033464 stop_publickey_calc_256:
+0x757b 033465 jam sp_calc_standby ,mem_le_sc_calc 
+0x757c 033466 rtn 
+:      033469 sp_initialize:
+0x757d 033470 bpatchx patch3c_5 ,mem_patch3c 
+0x757e 033471 fetch 1 ,mem_ssp_enable 
+0x757f 033472 branch ssp_disable ,blank 
+0x7580 033473 call ssp_enable 
+0x7581 033474 call sp_clear_flags 
+0x7582 033475 branch sp_pubkey_calc 
+:      033477 sp_clear_flags:
+0x7583 033478 setarg 0 
+0x7584 033479 store 8 ,mem_sp_state_start 
+0x7585 033480 store 4 ,mem_sp_flag_start 
+0x7586 033481 store 7 ,mem_sp_iocap_remote 
+0x7587 033482 rtn 
+:      033484 sp_generate_local_key:
+0x7588 033485 jam sp_flag_commit ,mem_sp_flag 
+0x7589 033486 branch sp_generate_local_key0 
+:      033487 sp_master_generate_local_key:
+0x758a 033488 fetch 1 ,mem_sp_local_key_invalid 
+0x758b 033489 beq sp_key_valid ,sp_dhkey_calc 
+0x758c 033490 branch assert 
+:      033491 sp_generate_local_key0:
+0x758d 033492 fetch 1 ,mem_sp_local_key_invalid 
+0x758e 033493 beq sp_key_valid ,sp_start_send_pubkey 
+0x758f 033494 branch sp_pubkey_calc 
+:      033496 sp_start_send_pubkey:
+0x7590 033497 call sp_dhkey_calc 
+0x7591 033498 fetch 1 ,mem_master_sp_state 
+0x7592 033499 nrtn blank 
+0x7593 033500 jam sp_stat_key_send ,mem_sp_state 
+0x7594 033501 rtn 
+:      033504 sp_calc_check_publickey_256:
+0x7595 033505 call sp_calc_b256 
+0x7596 033506 arg mem_le_pubkey_remote_y_256 ,rega 
+0x7597 033507 arg mem_t7_256 ,contw 
+0x7598 033508 call bn_sqrmod_256 
+0x7599 033509 arg mem_le_pubkey_remote_x_256 ,rega 
+0x759a 033510 arg mem_t2_256 ,contw 
+0x759b 033511 call bn_sqrmod_256 
+0x759c 033512 arg mem_t2_256 ,rega 
+0x759d 033513 arg mem_le_pubkey_remote_x_256 ,regb 
+0x759e 033514 arg mem_t2_256 ,contw 
+0x759f 033515 call bn_mulmod_256 
+0x75a0 033516 arg mem_a_256 ,rega 
+0x75a1 033517 arg mem_le_pubkey_remote_x_256 ,regb 
+0x75a2 033518 arg mem_t3_256 ,contw 
+0x75a3 033519 call bn_mulmod_256 
+0x75a4 033520 arg mem_t3_256 ,rega 
+0x75a5 033521 arg mem_t2_256 ,regb 
+0x75a6 033522 arg mem_t2_256 ,contw 
+0x75a7 033523 call bn_addmod_256 
+0x75a8 033524 arg mem_t0_256 ,rega 
+0x75a9 033525 arg mem_t2_256 ,regb 
+0x75aa 033526 arg mem_t0_256 ,contw 
+0x75ab 033527 call bn_addmod_256 
+0x75ac 033528 arg 32 ,loopcnt 
+0x75ad 033529 arg mem_t7_256 ,rega 
+0x75ae 033530 arg mem_t0_256 ,regb 
+0x75af 033531 branch string_compare 
+:      033533 sp_calc_b256:
+0x75b0 033534 arg mem_gy_256 ,rega 
+0x75b1 033535 arg mem_t0_256 ,contw 
+0x75b2 033536 call bn_sqrmod_256 
+0x75b3 033537 arg mem_gx_256 ,rega 
+0x75b4 033538 arg mem_t2_256 ,contw 
+0x75b5 033539 call bn_sqrmod_256 
+0x75b6 033540 arg mem_t2_256 ,rega 
+0x75b7 033541 arg mem_gx_256 ,regb 
+0x75b8 033542 arg mem_t2_256 ,contw 
+0x75b9 033543 call bn_mulmod_256 
+0x75ba 033544 arg mem_a_256 ,rega 
+0x75bb 033545 arg mem_gx_256 ,regb 
+0x75bc 033546 arg mem_t3_256 ,contw 
+0x75bd 033547 call bn_mulmod_256 
+0x75be 033548 arg mem_t3_256 ,rega 
+0x75bf 033549 arg mem_t2_256 ,regb 
+0x75c0 033550 arg mem_t2_256 ,contw 
+0x75c1 033551 call bn_addmod_256 
+0x75c2 033552 arg mem_t0_256 ,rega 
+0x75c3 033553 arg mem_t2_256 ,regb 
+0x75c4 033554 arg mem_t0_256 ,contw 
+0x75c5 033555 branch bn_submod_256 
+:      033557 sp_calc_check_publickey:
+0x75c6 033558 call sp_calc_b 
+0x75c7 033559 arg mem_sp_pubkey_remote_y ,rega 
+0x75c8 033560 arg mem_t7_256 ,contw 
+0x75c9 033561 call bn_sqrmod 
+0x75ca 033562 arg mem_sp_pubkey_remote_x ,rega 
+0x75cb 033563 arg mem_t2_256 ,contw 
+0x75cc 033564 call bn_sqrmod 
+0x75cd 033565 arg mem_t2_256 ,rega 
+0x75ce 033566 arg mem_sp_pubkey_remote_x ,regb 
+0x75cf 033567 arg mem_t2_256 ,contw 
+0x75d0 033568 call bn_mulmod 
+0x75d1 033569 arg mem_a ,rega 
+0x75d2 033570 arg mem_sp_pubkey_remote_x ,regb 
+0x75d3 033571 arg mem_t3_256 ,contw 
+0x75d4 033572 call bn_mulmod 
+0x75d5 033573 arg mem_t3_256 ,rega 
+0x75d6 033574 arg mem_t2_256 ,regb 
+0x75d7 033575 arg mem_t2_256 ,contw 
+0x75d8 033576 call bn_addmod 
+0x75d9 033577 arg mem_t0_256 ,rega 
+0x75da 033578 arg mem_t2_256 ,regb 
+0x75db 033579 arg mem_t0_256 ,contw 
+0x75dc 033580 call bn_addmod 
+0x75dd 033581 arg 24 ,loopcnt 
+0x75de 033582 arg mem_t7_256 ,rega 
+0x75df 033583 arg mem_t0_256 ,regb 
+0x75e0 033584 branch string_compare 
+:      033586 sp_calc_b:
+0x75e1 033587 arg mem_gy ,rega 
+0x75e2 033588 arg mem_t0_256 ,contw 
+0x75e3 033589 call bn_sqrmod 
+0x75e4 033590 arg mem_gx ,rega 
+0x75e5 033591 arg mem_t2_256 ,contw 
+0x75e6 033592 call bn_sqrmod 
+0x75e7 033593 arg mem_t2_256 ,rega 
+0x75e8 033594 arg mem_gx ,regb 
+0x75e9 033595 arg mem_t2_256 ,contw 
+0x75ea 033596 call bn_mulmod 
+0x75eb 033597 arg mem_a ,rega 
+0x75ec 033598 arg mem_gx ,regb 
+0x75ed 033599 arg mem_t3_256 ,contw 
+0x75ee 033600 call bn_mulmod 
+0x75ef 033601 arg mem_t3_256 ,rega 
+0x75f0 033602 arg mem_t2_256 ,regb 
+0x75f1 033603 arg mem_t2_256 ,contw 
+0x75f2 033604 call bn_addmod 
+0x75f3 033605 arg mem_t0_256 ,rega 
+0x75f4 033606 arg mem_t2_256 ,regb 
+0x75f5 033607 arg mem_t0_256 ,contw 
+0x75f6 033608 branch bn_submod 
+:      033611 sp_calculate_commitment:
+0x75f7 033612 fetch 1 ,mem_sp_calc 
+0x75f8 033613 bne sp_calc_standby ,sp_calculate_commitment_wait_dhkey_calc 
+0x75f9 033614 call sp_local_random_key_generator 
+0x75fa 033615 arg mem_sp_prarm_stack ,contw 
+0x75fb 033616 setarg mem_sp_random_local_end 
+0x75fc 033617 istore 2 ,contw 
+0x75fd 033618 setarg mem_sp_pubkey_local_x_end 
+0x75fe 033619 istore 2 ,contw 
+0x75ff 033620 setarg mem_sp_pubkey_remote_x_end 
+0x7600 033621 istore 2 ,contw 
+0x7601 033622 branch sp_calculate_commitment0 
+:      033623 master_sp_calculate_commitment:
+0x7602 033624 arg mem_sp_prarm_stack ,contw 
+0x7603 033625 setarg mem_sp_random_remote_end 
+0x7604 033626 istore 2 ,contw 
+0x7605 033627 setarg mem_sp_pubkey_remote_x_end 
+0x7606 033628 istore 2 ,contw 
+0x7607 033629 setarg mem_sp_pubkey_local_x_end 
+0x7608 033630 istore 2 ,contw 
+:      033631 sp_calculate_commitment0:
+0x7609 033632 call function_f1 
+0x760a 033633 fetch 1 ,mem_master_sp_state 
+0x760b 033634 beq sp_stat_commit_calc ,master_sp_calculate_commitment0 
+0x760c 033635 jam sp_flag_commit ,mem_sp_flag 
+0x760d 033636 jam sp_stat_commit_send ,mem_sp_state 
+0x760e 033637 rtn 
+:      033638 master_sp_calculate_commitment0:
+0x760f 033639 jam sp_stat_commitment_compare ,mem_master_sp_state 
+0x7610 033640 call sp_master_generate_local_key 
+0x7611 033641 branch master_set_mem_master_sp_flag 
+:      033643 sp_local_random_key_generator:
+0x7612 033644 arg mem_sp_random_local ,contw 
+0x7613 033645 force 8 ,queue 
+0x7614 033646 branch random_generator 
+:      033648 sp_calculate_commitment_wait_dhkey_calc:
+0x7615 033649 jam sp_flag_commit ,mem_sp_flag 
+0x7616 033650 rtn 
+:      033652 sp_confirm_check:
+0x7617 033654 bpatchx patch3c_6 ,mem_patch3c 
+0x7618 033655 arg mem_addr_value ,contw 
+0x7619 033656 fetch 6 ,mem_lap 
+0x761a 033657 istore 6 ,contw 
+0x761b 033658 fetch 6 ,mem_plap 
+0x761c 033659 istore 6 ,contw 
+0x761d 033660 fetch 3 ,mem_sp_iocap_remote 
+0x761e 033661 istore 3 ,contw 
+0x761f 033663 call function_f3a 
+0x7620 033665 arg mem_sp_calc_result_high ,rega 
+0x7621 033666 arg mem_sp_check_result ,regb 
+0x7622 033667 force 4 ,queue 
+0x7623 033668 call compare4 
+0x7624 033669 nbranch sp_confirm_check_failed ,true 
+0x7625 033671 call sp_confirm_check_success 
+0x7626 033672 jam lmp_dhkey_check ,mem_lmi_opcode2 
+0x7627 033673 branch tid_set_reply 
+:      033675 sp_confirm_check_success:
+0x7628 033676 fetch 1 ,mem_master_sp_state 
+0x7629 033677 beq sp_stat_confirm_check ,sp_confirm_check_success_master 
+0x762a 033678 jam sp_stat_confirm_calc ,mem_sp_state 
+0x762b 033679 jam sp_flag_commit ,mem_sp_flag 
+0x762c 033680 jam lmp_accepted ,mem_lmo_opcode2 
+0x762d 033681 rtn 
+:      033682 sp_confirm_check_success_master:
+0x762e 033683 jam lmp_accepted ,mem_lmo_opcode2 
+0x762f 033684 jam sp_state_end ,mem_master_sp_state 
+0x7630 033685 branch master_set_mem_master_sp_flag 
+:      033688 sp_confirm_check_failed:
+0x7631 033689 fetch 1 ,mem_master_sp_state 
+0x7632 033690 beq sp_stat_confirm_check ,sp_confirm_check_failed_master 
+0x7633 033691 jam sp_stat_null ,mem_sp_state 
+0x7634 033692 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x7635 033694 jam authentication_failure_error ,mem_lmo_reason2 
+0x7636 033695 rtn 
+:      033696 sp_confirm_check_failed_master:
+0x7637 033697 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x7638 033698 jam sp_stat_null ,mem_master_sp_state 
+0x7639 033699 rtn 
+:      033701 sp_confirm_calc:
+0x763a 033702 fetch 1 ,mem_sp_dh_ready 
+0x763b 033703 beq sp_flag_commit ,sp_confirm_calc_ready 
+0x763c 033704 jam sp_stat_confirm_calc ,mem_master_sp_state 
+0x763d 033705 branch master_set_mem_master_sp_flag 
+:      033706 sp_confirm_calc_ready:
+0x763e 033707 arg mem_addr_value ,contw 
+0x763f 033708 fetch 6 ,mem_plap 
+0x7640 033709 istore 6 ,contw 
+0x7641 033710 fetch 6 ,mem_lap 
+0x7642 033711 istore 6 ,contw 
+0x7643 033712 fetch 3 ,mem_sp_iocap_local 
+0x7644 033713 istore 3 ,contw 
+0x7645 033715 call function_f3b 
+0x7646 033716 fetch 1 ,mem_master_sp_state 
+0x7647 033717 beq sp_stat_confirm_calc ,sp_confirm_calc_master 
+0x7648 033718 jam sp_stat_confirm_send ,mem_sp_state 
+0x7649 033719 jam sp_flag_commit ,mem_sp_flag 
+0x764a 033720 rtn 
+:      033721 sp_confirm_calc_master:
+0x764b 033722 jam sp_stat_confirm_send ,mem_master_sp_state 
+0x764c 033723 jam sp_flag_commit ,mem_master_sp_flag 
+0x764d 033724 rtn 
+:      033726 sp_master_key_prarm_push:
+0x764e 033727 arg mem_sp_prarm_stack ,contw 
+0x764f 033728 fetch 6 ,mem_plap 
+0x7650 033729 istore 6 ,contw 
+0x7651 033730 fetch 6 ,mem_lap 
+0x7652 033731 istore 6 ,contw 
+0x7653 033732 setarg mem_sp_random_local_end 
+0x7654 033733 istore 2 ,contw 
+0x7655 033734 setarg mem_sp_random_remote_end 
+0x7656 033735 istore 2 ,contw 
+0x7657 033736 branch sp_link_key_calc 
+:      033737 sp_link_key_prarm_push:
+0x7658 033738 jam sp_stat_done ,mem_sp_state 
+0x7659 033739 arg mem_sp_prarm_stack ,contw 
+0x765a 033740 fetch 6 ,mem_lap 
+0x765b 033741 istore 6 ,contw 
+0x765c 033742 fetch 6 ,mem_plap 
+0x765d 033743 istore 6 ,contw 
+0x765e 033744 setarg mem_sp_random_remote_end 
+0x765f 033745 istore 2 ,contw 
+0x7660 033746 setarg mem_sp_random_local_end 
+0x7661 033747 istore 2 ,contw 
+:      033748 sp_link_key_calc:
+0x7662 033750 arg mem_addr_value ,contw 
+0x7663 033751 fetch 6 ,mem_sp_prarm_stack 
+0x7664 033752 istore 6 ,contw 
+0x7665 033753 fetch 6 ,mem_sp_prarm_stack + 6 
+0x7666 033754 istore 6 ,contw 
+0x7667 033756 call function_f2 
+0x7668 033759 jam 1 ,mem_link_key_exists 
+0x7669 033760 arg mem_link_key ,contw 
+0x766a 033761 arg mem_sp_calc_result_high ,contr 
+0x766b 033762 call memcpy16 
+0x766c 033763 branch generate_linkkey_continue 
+:      033766 sp_pubkey_calc:
+0x766d 033767 bpatchx patch3c_7 ,mem_patch3c 
+0x766e 033768 fetch 1 ,mem_sp_local_key_invalid 
+0x766f 033769 rtnne sp_key_invalid 
+0x7670 033770 fetch 1 ,mem_sp_calc 
+0x7671 033771 rtnne sp_calc_standby 
+0x7672 033772 arg mem_sp_private_key ,contw 
+0x7673 033773 force 11 ,queue 
+0x7674 033774 call random_generator 
+0x7675 033775 random pdata 
+0x7676 033776 rshift pdata ,pdata 
+0x7677 033777 istore 2 ,contw 
+0x7678 033779 arg mem_k ,contw 
+0x7679 033780 arg mem_sp_private_key ,contr 
+0x767a 033781 call memcpy24 
+0x767b 033783 arg mem_ax ,contw 
+0x767c 033784 arg mem_gx ,contr 
+0x767d 033785 call memcpy48 
+0x767e 033787 arg mem_az ,contw 
+0x767f 033788 call bn_zero 
+0x7680 033789 jam 1 ,mem_az 
+0x7681 033791 call eckp_calc_init 
+0x7682 033792 jam sp_calc_pubkey ,mem_sp_calc 
+0x7683 033793 rtn 
+:      033795 sp_pubkey_generated:
+0x7684 033796 arg mem_sp_pubkey_local ,contw 
+0x7685 033797 arg mem_bx ,contr 
+0x7686 033798 call memcpy48 
+0x7687 033799 jam sp_key_valid ,mem_sp_local_key_invalid 
+0x7688 033800 jam sp_calc_standby ,mem_sp_calc 
+0x7689 033801 rtn 
+:      033803 sp_dhkey_calc:
+0x768a 033804 bpatchx patch3d_0 ,mem_patch3d 
+0x768b 033805 fetch 1 ,mem_sp_dhkey_invalid 
+0x768c 033806 rtnne sp_key_invalid 
+0x768d 033807 fetch 1 ,mem_sp_calc 
+0x768e 033808 rtnne sp_calc_standby 
+0x768f 033810 arg mem_k ,contw 
+0x7690 033811 arg mem_sp_private_key ,contr 
+0x7691 033812 call memcpy24 
+0x7692 033814 arg mem_ax ,contw 
+0x7693 033815 arg mem_sp_pubkey_remote ,contr 
+0x7694 033816 call memcpy48 
+0x7695 033818 arg mem_az ,contw 
+0x7696 033819 call bn_zero 
+0x7697 033820 jam 1 ,mem_az 
+0x7698 033822 call eckp_calc_init 
+0x7699 033823 jam sp_calc_dhkey ,mem_sp_calc 
+0x769a 033824 rtn 
+:      033826 sp_dhkey_generated:
+0x769b 033827 jam sp_flag_commit ,mem_sp_dh_ready 
+0x769c 033828 arg mem_sp_dhkey ,contw 
+0x769d 033829 arg mem_bx ,contr 
+0x769e 033830 call memcpy24 
+0x769f 033831 jam sp_key_valid ,mem_sp_dhkey_invalid 
+0x76a0 033832 jam sp_calc_standby ,mem_sp_calc 
+0x76a1 033833 rtn 
+:      033835 random_generator:
+0x76a2 033836 increase -1 ,queue 
+0x76a3 033837 nrtn positive 
+0x76a4 033838 random pdata 
+0x76a5 033839 istore 2 ,contw 
+0x76a6 033840 branch random_generator 
+:      033841 compare4:
+0x76a7 033842 increase -1 ,queue 
+0x76a8 033843 nbranch compare4_success ,positive 
+0x76a9 033844 ifetch 4 ,rega 
+0x76aa 033845 copy pdata ,temp 
+0x76ab 033846 ifetch 4 ,regb 
+0x76ac 033847 iflip temp ,pdata 
+0x76ad 033848 nbranch compare4_failed ,zero 
+0x76ae 033849 increase 4 ,rega 
+0x76af 033850 increase 4 ,regb 
+0x76b0 033851 branch compare4 
+:      033852 compare4_failed:
+0x76b1 033853 disable true 
+0x76b2 033854 rtn 
+:      033855 compare4_success:
+0x76b3 033856 enable true 
+0x76b4 033857 rtn 
+:      033864 simple_pairing_sequence:
+0x76b5 033865 bpatchx patch3d_1 ,mem_patch3d 
+0x76b6 033866 fetch 1 ,mem_sp_flag 
+0x76b7 033867 rtn blank 
+0x76b8 033868 call lmo_fifo_check 
+0x76b9 033869 nrtn blank 
+0x76ba 033870 jam sp_flag_standby ,mem_sp_flag 
+0x76bb 033871 fetch 1 ,mem_sp_state 
+0x76bc 033872 beq sp_stat_key_send ,sp_send_lmp_encapsulated_header 
+0x76bd 033873 beq sp_stat_commit_send ,sp_send_lmp_simple_pairing_comfirm 
+0x76be 033874 beq sp_stat_random_send ,sp_send_lmp_simple_pairing_number 
+0x76bf 033875 beq sp_stat_confirm_send ,sp_send_lmp_dhkey_check 
+0x76c0 033876 beq sp_stat_key_generate ,sp_generate_local_key 
+0x76c1 033877 beq sp_stat_commit_calc ,sp_calculate_commitment 
+0x76c2 033878 beq sp_stat_confirm_check ,sp_confirm_check 
+0x76c3 033879 beq sp_stat_confirm_calc ,sp_confirm_calc 
+0x76c4 033880 beq sp_stat_link_key_calc ,sp_link_key_prarm_push 
+0x76c5 033882 rtn 
+:      033884 master_simple_paring_sequence:
+0x76c6 033885 bpatchx patch3d_2 ,mem_patch3d 
+0x76c7 033886 fetch 1 ,mem_master_sp_flag 
+0x76c8 033887 rtn blank 
+0x76c9 033888 call lmo_fifo_check 
+0x76ca 033889 nrtn blank 
+0x76cb 033890 jam sp_flag_standby ,mem_master_sp_flag 
+0x76cc 033891 fetch 1 ,mem_master_sp_state 
+0x76cd 033892 beq sp_master_stat_start_skip ,sp_master_send_io_cap_get 
+0x76ce 033893 beq sp_master_stat_start_done ,sp_master_send_io_cap_send 
+0x76cf 033894 beq sp_stat_key_send ,sp_master_send_lmp_encapsulated_header 
+0x76d0 033895 beq sp_stat_commit_calc ,master_sp_calculate_commitment 
+0x76d1 033896 beq sp_stat_commitment_compare ,sp_master_commitment_compare 
+0x76d2 033897 beq sp_stat_random_send ,sp_master_send_lmp_simple_pairing_number 
+0x76d3 033898 beq sp_stat_confirm_calc ,sp_confirm_calc 
+0x76d4 033899 beq sp_stat_confirm_send ,master_sp_send_lmp_dhkey_check 
+0x76d5 033900 beq sp_stat_confirm_check ,sp_confirm_check 
+0x76d6 033901 beq sp_state_end ,master_sp_sm_end 
+0x76d7 033902 rtn 
+:      033904 master_set_mem_master_sp_flag:
+0x76d8 033905 jam sp_flag_commit ,mem_master_sp_flag 
+0x76d9 033906 rtn 
+:      033908 master_clear_mem_master_sp_flag:
+0x76da 033909 jam sp_flag_standby ,mem_master_sp_flag 
+0x76db 033910 rtn 
+:      033911 sp_calc_sequence:
+0x76dc 033912 bpatchx patch3d_3 ,mem_patch3d 
+0x76dd 033913 fetch 1 ,mem_ssp_enable 
+0x76de 033914 rtn blank 
+0x76df 033915 fetch 1 ,mem_sp_calc 
+0x76e0 033916 rtn blank 
+0x76e1 033917 increase 0x80 ,pdata 
+0x76e2 033918 store 1 ,mem_sp_calc 
+0x76e3 033919 rtnbit1 7 
+0x76e4 033920 fetch 1 ,mem_ec_loopc 
+0x76e5 033921 branch sp_calc_sequence_done ,blank 
+0x76e6 033922 branch eckp_calc 
+:      033924 sp_calc_sequence_done:
+0x76e7 033925 call ecunmapz 
+0x76e8 033926 fetch 1 ,mem_sp_calc 
+0x76e9 033927 beq sp_calc_pubkey ,sp_pubkey_generated 
+0x76ea 033928 beq sp_calc_dhkey ,sp_dhkey_generated 
+0x76eb 033929 rtn 
+:      033932 bn_testbit:
+0x76ec 033933 and pdata ,7 ,queue 
+0x76ed 033934 rshift3 pdata ,pdata 
+0x76ee 033935 iadd contr ,contr 
+0x76ef 033936 ifetch 1 ,contr 
+0x76f0 033937 qisolate0 pdata 
+0x76f1 033938 rtn 
+:      033941 ec_copy:
+0x76f2 033942 call memcpy24 
+0x76f3 033943 call memcpy24 
+0x76f4 033944 branch memcpy24 
+:      033947 bn_eq_zero:
+0x76f5 033948 ifetch 8 ,contr 
+0x76f6 033949 nrtn blank 
+0x76f7 033950 ifetch 8 ,contr 
+0x76f8 033951 nrtn blank 
+0x76f9 033952 ifetch 8 ,contr 
+0x76fa 033953 rtn 
+:      033958 bn_eq_0:
+0x76fb 033959 ifetch 4 ,rega 
+0x76fc 033960 iforce temp 
+0x76fd 033961 ifetch 4 ,regb 
+0x76fe 033962 isub temp ,null 
+0x76ff 033963 nrtn zero 
+0x7700 033964 increase 4 ,rega 
+0x7701 033965 increase 4 ,regb 
+0x7702 033966 loop bn_eq_0 
+0x7703 033967 rtn 
+:      033970 bn_bigeq:
+0x7704 033971 force 6 ,loopcnt 
+0x7705 033972 increase 20 ,rega 
+0x7706 033973 increase 20 ,regb 
+:      033974 bn_bigeq_0:
+0x7707 033975 ifetch 4 ,regb 
+0x7708 033976 iforce temp 
+0x7709 033977 ifetch 4 ,rega 
+0x770a 033978 isub temp ,pdata 
+0x770b 033979 nrtn positive 
+0x770c 033980 nrtn blank 
+0x770d 033981 increase -4 ,rega 
+0x770e 033982 increase -4 ,regb 
+0x770f 033983 loop bn_bigeq_0 
+0x7710 033984 rtn 
+:      033986 bn_add:
+0x7711 033987 force 6 ,loopcnt 
+0x7712 033988 force 0 ,regc 
+:      033989 bn_add_0:
+0x7713 033990 ifetch 4 ,rega 
+0x7714 033991 iforce temp 
+0x7715 033992 ifetch 4 ,regb 
+0x7716 033993 iadd temp ,pdata 
+0x7717 033994 iadd regc ,pdata 
+0x7718 033995 istore 4 ,contw 
+0x7719 033996 isolate1 32 ,pdata 
+0x771a 033997 setflag true ,0 ,regc 
+0x771b 033998 increase 4 ,rega 
+0x771c 033999 increase 4 ,regb 
+0x771d 034000 loop bn_add_0 
+0x771e 034001 rtn 
+:      034003 bn_sub:
+0x771f 034004 force 6 ,loopcnt 
+0x7720 034005 force 0 ,regc 
+:      034006 bn_sub_0:
+0x7721 034007 ifetch 4 ,regb 
+0x7722 034008 iforce temp 
+0x7723 034009 ifetch 4 ,rega 
+0x7724 034010 isub temp ,pdata 
+0x7725 034011 isub regc ,pdata 
+0x7726 034012 istore 4 ,contw 
+0x7727 034013 isolate1 32 ,pdata 
+0x7728 034014 setflag true ,0 ,regc 
+0x7729 034015 increase 4 ,rega 
+0x772a 034016 increase 4 ,regb 
+0x772b 034017 loop bn_sub_0 
+0x772c 034018 rtn 
+:      034020 bn_rshift6:
+0x772d 034021 force 6 ,loopcnt 
+0x772e 034022 increase 20 ,rega 
+:      034023 bn_rshift:
+0x772f 034024 force 0 ,regc 
+:      034025 bn_rshift_0:
+0x7730 034026 ifetch 4 ,rega 
+0x7731 034027 isolate1 0 ,pdata 
+0x7732 034028 setflag true ,1 ,regc 
+0x7733 034029 rshift pdata ,pdata 
+0x7734 034030 isolate1 0 ,regc 
+0x7735 034031 setflag true ,31 ,pdata 
+0x7736 034032 istore 4 ,rega 
+0x7737 034033 increase -4 ,rega 
+0x7738 034034 rshift regc ,regc 
+0x7739 034035 loop bn_rshift_0 
+0x773a 034036 rtn 
+:      034038 bn_lshift:
+0x773b 034039 force 6 ,loopcnt 
+0x773c 034040 force 0 ,regc 
+:      034041 bn_lshift_0:
+0x773d 034042 ifetch 4 ,rega 
+0x773e 034043 isolate1 31 ,pdata 
+0x773f 034044 setflag true ,1 ,regc 
+0x7740 034045 lshift pdata ,pdata 
+0x7741 034046 isolate1 0 ,regc 
+0x7742 034047 setflag true ,0 ,pdata 
+0x7743 034048 istore 4 ,rega 
+0x7744 034049 increase 4 ,rega 
+0x7745 034050 rshift regc ,regc 
+0x7746 034051 loop bn_lshift_0 
+0x7747 034052 rtn 
+:      034054 bn_lshiftmod:
+0x7748 034055 call bn_lshift 
+:      034056 bn_lshiftmod_ismod:
+0x7749 034057 isolate1 0 ,regc 
+0x774a 034058 branch bn_lshiftmod_0 ,true 
+0x774b 034059 arg mem_p ,regb 
+0x774c 034060 copy rega ,regc 
+0x774d 034061 increase -24 ,rega 
+0x774e 034062 call bn_bigeq 
+0x774f 034063 nrtn positive 
+0x7750 034064 copy regc ,rega 
+:      034065 bn_lshiftmod_0:
+0x7751 034066 increase -24 ,rega 
+0x7752 034067 arg mem_p ,regb 
+0x7753 034068 copy rega ,contw 
+0x7754 034069 branch bn_sub 
+:      034072 bn_addmod:
+0x7755 034073 call bn_add 
+0x7756 034074 copy contw ,rega 
+0x7757 034075 branch bn_lshiftmod_ismod 
+:      034077 bn_submod:
+0x7758 034078 call bn_sub 
+0x7759 034079 isolate0 0 ,regc 
+0x775a 034080 rtn true 
+0x775b 034081 arg mem_p ,regb 
+0x775c 034082 add contw ,-24 ,rega 
+0x775d 034083 copy rega ,contw 
+0x775e 034084 branch bn_add 
+:      034087 bn_p192mod:
+0x775f 034088 copy contw ,timeup 
+0x7760 034089 copy rega ,alarm 
+0x7761 034090 arg mem_tmp2 ,regb 
+0x7762 034091 copy regb ,contw 
+0x7763 034092 add rega ,24 ,contr 
+0x7764 034093 ifetch 8 ,contr 
+0x7765 034094 istore 8 ,contw 
+0x7766 034095 istore 8 ,contw 
+0x7767 034096 force 0 ,pdata 
+0x7768 034097 istore 8 ,contw 
+0x7769 034098 copy timeup ,contw 
+0x776a 034099 call bn_addmod 
+0x776b 034100 arg mem_tmp2 ,regb 
+0x776c 034101 copy regb ,contw 
+0x776d 034102 force 0 ,pdata 
+0x776e 034103 istore 8 ,contw 
+0x776f 034104 add alarm ,32 ,contr 
+0x7770 034105 ifetch 8 ,contr 
+0x7771 034106 istore 8 ,contw 
+0x7772 034107 istore 8 ,contw 
+0x7773 034108 copy timeup ,rega 
+0x7774 034109 copy rega ,contw 
+0x7775 034110 call bn_addmod 
+0x7776 034111 arg mem_tmp2 ,regb 
+0x7777 034112 copy regb ,contw 
+0x7778 034113 add alarm ,40 ,contr 
+0x7779 034114 ifetch 8 ,contr 
+0x777a 034115 istore 8 ,contw 
+0x777b 034116 istore 8 ,contw 
+0x777c 034117 istore 8 ,contw 
+0x777d 034118 copy timeup ,rega 
+0x777e 034119 copy rega ,contw 
+0x777f 034120 branch bn_addmod 
+:      034123 bn_load:
+0x7780 034124 force 6 ,loopcnt 
+:      034125 bn_load_0:
+0x7781 034126 ifetch 4 ,contr 
+0x7782 034127 iforce regext 
+0x7783 034128 increase 1 ,regext_index 
+0x7784 034129 loop bn_load_0 
+0x7785 034130 rtn 
+:      034134 bn_mulmod:
+0x7786 034135 copy contw ,timeup 
+0x7787 034136 arg mem_tmp1 ,contw 
+0x7788 034137 call bn_zero 
+0x7789 034138 arg mem_tmp1 ,contw 
+0x778a 034139 copy rega ,contr 
+0x778b 034140 force 0 ,regext_index 
+0x778c 034141 call bn_load 
+0x778d 034142 copy regb ,contr 
+0x778e 034143 call bn_load 
+0x778f 034144 force 0 ,regb 
+:      034145 bn_mulmod_1:
+0x7790 034146 force 0 ,temp 
+0x7791 034147 force 6 ,regc 
+:      034148 bn_mulmod_0:
+0x7792 034149 ifetch 4 ,contw 
+0x7793 034150 iforce rega 
+0x7794 034151 copy regb ,regext_index 
+0x7795 034152 deposit regext 
+0x7796 034153 copy regc ,regext_index 
+0x7797 034154 imul32 regext ,pdata 
+0x7798 034155 iadd rega ,pdata 
+0x7799 034156 iadd temp ,pdata 
+0x779a 034157 istore 4 ,contw 
+0x779b 034158 rshift32 pdata ,temp 
+0x779c 034159 increase 1 ,regc 
+0x779d 034160 compare 12 ,regc ,0xff 
+0x779e 034161 nbranch bn_mulmod_0 ,true 
+0x779f 034162 deposit temp 
+0x77a0 034163 istore 4 ,contw 
+0x77a1 034164 increase -24 ,contw 
+0x77a2 034165 increase 1 ,regb 
+0x77a3 034166 compare 6 ,regb ,0xff 
+0x77a4 034167 nbranch bn_mulmod_1 ,true 
+0x77a5 034168 arg mem_tmp1 ,rega 
+0x77a6 034169 copy timeup ,contw 
+0x77a7 034170 branch bn_p192mod 
+:      034173 bn_sqrmod:
+0x77a8 034174 copy rega ,regb 
+0x77a9 034175 branch bn_mulmod 
+:      034177 bn_rshifteven:
+0x77aa 034178 copy rega ,alarm 
+:      034179 bn_rshifteven_1:
+0x77ab 034180 copy alarm ,rega 
+0x77ac 034181 ifetch 1 ,rega 
+0x77ad 034182 isolate1 0 ,pdata 
+0x77ae 034183 rtn true 
+0x77af 034184 call bn_rshift6 
+0x77b0 034185 ifetch 1 ,regb 
+0x77b1 034186 isolate0 0 ,pdata 
+0x77b2 034187 branch bn_rshifteven_0 ,true 
+0x77b3 034188 arg mem_p ,rega 
+0x77b4 034189 copy regb ,contw 
+0x77b5 034190 call bn_add 
+0x77b6 034191 ifetch 1 ,regb 
+0x77b7 034192 iadd regc ,pdata 
+0x77b8 034193 istore 1 ,regb 
+0x77b9 034194 increase -24 ,regb 
+:      034195 bn_rshifteven_0:
+0x77ba 034196 add regb ,24 ,rega 
+0x77bb 034197 force 7 ,loopcnt 
+0x77bc 034198 call bn_rshift 
+0x77bd 034199 branch bn_rshifteven_1 
+:      034202 bn_invmod:
+0x77be 034203 copy contw ,timeup 
+0x77bf 034204 arg mem_tmp0 ,contw 
+0x77c0 034205 call bn_zero 
+0x77c1 034206 force 0 ,pdata 
+0x77c2 034207 store 4 ,mem_tmp5 
+0x77c3 034208 store 4 ,mem_t2 
+0x77c4 034209 jam 1 ,mem_tmp0 
+0x77c5 034210 arg mem_tmp1 ,contw 
+0x77c6 034211 call bn_zero 
+0x77c7 034212 arg mem_p ,contr 
+0x77c8 034213 arg mem_tmp2 ,contw 
+0x77c9 034214 call memcpy24 
+0x77ca 034215 copy rega ,contr 
+0x77cb 034216 arg mem_tmp3 ,contw 
+0x77cc 034217 call memcpy24 
+:      034218 bn_invmod_2:
+0x77cd 034219 arg mem_tmp3 ,contr 
+0x77ce 034220 call bn_eq_zero 
+0x77cf 034221 branch bn_invmod_0 ,blank 
+0x77d0 034222 arg mem_tmp3 ,rega 
+0x77d1 034223 arg mem_tmp0 ,regb 
+0x77d2 034224 call bn_rshifteven 
+0x77d3 034226 arg mem_tmp2 ,rega 
+0x77d4 034227 arg mem_tmp1 ,regb 
+0x77d5 034228 call bn_rshifteven 
+0x77d6 034229 arg mem_tmp3 ,rega 
+0x77d7 034230 arg mem_tmp2 ,regb 
+0x77d8 034231 call bn_bigeq 
+0x77d9 034232 branch bn_invmod_1 ,positive 
+0x77da 034233 arg mem_tmp2 ,rega 
+0x77db 034234 arg mem_tmp3 ,regb 
+0x77dc 034235 copy rega ,contw 
+0x77dd 034236 call bn_sub 
+0x77de 034237 arg mem_tmp0 ,rega 
+0x77df 034238 arg mem_tmp1 ,regb 
+0x77e0 034239 copy regb ,contw 
+0x77e1 034240 call bn_add 
+0x77e2 034241 ifetch 1 ,rega 
+0x77e3 034242 iadd regc ,regc 
+0x77e4 034243 ifetch 1 ,regb 
+0x77e5 034244 iadd regc ,pdata 
+0x77e6 034245 istore 1 ,regb 
+0x77e7 034246 branch bn_invmod_2 
+:      034247 bn_invmod_1:
+0x77e8 034248 arg mem_tmp3 ,rega 
+0x77e9 034249 arg mem_tmp2 ,regb 
+0x77ea 034250 copy rega ,contw 
+0x77eb 034251 call bn_sub 
+0x77ec 034252 arg mem_tmp1 ,rega 
+0x77ed 034253 arg mem_tmp0 ,regb 
+0x77ee 034254 copy regb ,contw 
+0x77ef 034255 call bn_add 
+0x77f0 034256 ifetch 1 ,rega 
+0x77f1 034257 iadd regc ,regc 
+0x77f2 034258 ifetch 1 ,regb 
+0x77f3 034259 iadd regc ,pdata 
+0x77f4 034260 istore 1 ,regb 
+0x77f5 034261 branch bn_invmod_2 
+:      034262 bn_invmod_0:
+0x77f6 034263 arg mem_tmp0 ,contw 
+0x77f7 034264 call bn_zero 
+0x77f8 034265 fetch 1 ,mem_tmp5 
+0x77f9 034266 store 1 ,mem_tmp0 
+0x77fa 034267 store 1 ,mem_tmp0a 
+0x77fb 034268 arg mem_tmp0 ,rega 
+0x77fc 034269 arg mem_tmp1 ,regb 
+0x77fd 034270 copy regb ,contw 
+0x77fe 034271 call bn_addmod 
+0x77ff 034272 arg mem_p ,rega 
+0x7800 034273 arg mem_tmp1 ,regb 
+0x7801 034274 copy timeup ,contw 
+0x7802 034275 branch bn_submod 
+:      034280 ecdbl:
+0x7803 034281 arg mem_cz ,rega 
+0x7804 034282 arg mem_t2 ,contw 
+0x7805 034283 call bn_sqrmod 
+0x7806 034284 arg mem_t2 ,rega 
+0x7807 034285 arg mem_t3 ,contw 
+0x7808 034286 call bn_sqrmod 
+0x7809 034287 arg mem_a ,rega 
+0x780a 034288 arg mem_t3 ,regb 
+0x780b 034289 arg mem_t3 ,contw 
+0x780c 034290 call bn_mulmod 
+0x780d 034291 arg mem_cx ,rega 
+0x780e 034292 arg mem_t2 ,contw 
+0x780f 034293 call bn_sqrmod 
+0x7810 034294 arg mem_t2 ,contr 
+0x7811 034295 arg mem_t1 ,contw 
+0x7812 034296 call memcpy24 
+0x7813 034297 arg mem_t1 ,rega 
+0x7814 034298 call bn_lshiftmod 
+0x7815 034299 arg mem_t2 ,rega 
+0x7816 034300 arg mem_t1 ,regb 
+0x7817 034301 arg mem_t2 ,contw 
+0x7818 034302 call bn_addmod 
+0x7819 034303 arg mem_t2 ,rega 
+0x781a 034304 arg mem_t3 ,regb 
+0x781b 034305 arg mem_t2 ,contw 
+0x781c 034306 call bn_addmod 
+0x781d 034307 arg mem_cx ,contr 
+0x781e 034308 arg mem_t1 ,contw 
+0x781f 034309 call memcpy24 
+0x7820 034310 arg mem_cy ,rega 
+0x7821 034311 arg mem_t3 ,contw 
+0x7822 034312 call bn_sqrmod 
+0x7823 034313 arg mem_t1 ,rega 
+0x7824 034314 call bn_lshiftmod 
+0x7825 034315 arg mem_t1 ,rega 
+0x7826 034316 call bn_lshiftmod 
+0x7827 034317 arg mem_t1 ,rega 
+0x7828 034318 arg mem_t3 ,regb 
+0x7829 034319 arg mem_t1 ,contw 
+0x782a 034320 call bn_mulmod 
+0x782b 034321 arg mem_t3 ,rega 
+0x782c 034322 arg mem_t0 ,contw 
+0x782d 034323 call bn_sqrmod 
+0x782e 034324 arg mem_t0 ,rega 
+0x782f 034325 call bn_lshiftmod 
+0x7830 034326 arg mem_t0 ,rega 
+0x7831 034327 call bn_lshiftmod 
+0x7832 034328 arg mem_t0 ,rega 
+0x7833 034329 call bn_lshiftmod 
+0x7834 034330 arg mem_cy ,contr 
+0x7835 034331 arg mem_t3 ,contw 
+0x7836 034332 call memcpy24 
+0x7837 034333 arg mem_t3 ,rega 
+0x7838 034334 call bn_lshiftmod 
+0x7839 034335 arg mem_t3 ,rega 
+0x783a 034336 arg mem_cz ,regb 
+0x783b 034337 arg mem_cz ,contw 
+0x783c 034338 call bn_mulmod 
+0x783d 034339 arg mem_t2 ,rega 
+0x783e 034340 arg mem_t3 ,contw 
+0x783f 034341 call bn_sqrmod 
+0x7840 034342 arg mem_t3 ,rega 
+0x7841 034343 arg mem_t1 ,regb 
+0x7842 034344 arg mem_t3 ,contw 
+0x7843 034345 call bn_submod 
+0x7844 034346 arg mem_t3 ,rega 
+0x7845 034347 arg mem_t1 ,regb 
+0x7846 034348 arg mem_cx ,contw 
+0x7847 034349 call bn_submod 
+0x7848 034350 arg mem_t1 ,rega 
+0x7849 034351 arg mem_cx ,regb 
+0x784a 034352 arg mem_t3 ,contw 
+0x784b 034353 call bn_submod 
+0x784c 034354 arg mem_t3 ,rega 
+0x784d 034355 arg mem_t2 ,regb 
+0x784e 034356 arg mem_t3 ,contw 
+0x784f 034357 call bn_mulmod 
+0x7850 034358 arg mem_t3 ,rega 
+0x7851 034359 arg mem_t0 ,regb 
+0x7852 034360 arg mem_cy ,contw 
+0x7853 034361 branch bn_submod 
+:      034365 ecadd:
+0x7854 034366 arg mem_az ,rega 
+0x7855 034367 arg mem_t7 ,contw 
+0x7856 034368 call bn_sqrmod 
+0x7857 034369 arg mem_cx ,rega 
+0x7858 034370 arg mem_t7 ,regb 
+0x7859 034371 arg mem_t0 ,contw 
+0x785a 034372 call bn_mulmod 
+0x785b 034373 arg mem_az ,rega 
+0x785c 034374 arg mem_t7 ,regb 
+0x785d 034375 arg mem_t7 ,contw 
+0x785e 034376 call bn_mulmod 
+0x785f 034377 arg mem_cy ,rega 
+0x7860 034378 arg mem_t7 ,regb 
+0x7861 034379 arg mem_t1 ,contw 
+0x7862 034380 call bn_mulmod 
+0x7863 034381 arg mem_cz ,rega 
+0x7864 034382 arg mem_t7 ,contw 
+0x7865 034383 call bn_sqrmod 
+0x7866 034384 arg mem_ax ,rega 
+0x7867 034385 arg mem_t7 ,regb 
+0x7868 034386 arg mem_t2 ,contw 
+0x7869 034387 call bn_mulmod 
+0x786a 034388 arg mem_cz ,rega 
+0x786b 034389 arg mem_t7 ,regb 
+0x786c 034390 arg mem_t7 ,contw 
+0x786d 034391 call bn_mulmod 
+0x786e 034392 arg mem_ay ,rega 
+0x786f 034393 arg mem_t7 ,regb 
+0x7870 034394 arg mem_t3 ,contw 
+0x7871 034395 call bn_mulmod 
+0x7872 034396 arg mem_t0 ,rega 
+0x7873 034397 arg mem_t2 ,regb 
+0x7874 034398 arg mem_t7 ,contw 
+0x7875 034399 call bn_submod 
+0x7876 034400 arg mem_t0 ,rega 
+0x7877 034401 arg mem_t2 ,regb 
+0x7878 034402 arg mem_t0 ,contw 
+0x7879 034403 call bn_addmod 
+0x787a 034404 arg mem_t1 ,rega 
+0x787b 034405 arg mem_t3 ,regb 
+0x787c 034406 arg mem_t2 ,contw 
+0x787d 034407 call bn_submod 
+0x787e 034408 arg mem_t1 ,rega 
+0x787f 034409 arg mem_t3 ,regb 
+0x7880 034410 arg mem_t1 ,contw 
+0x7881 034411 call bn_addmod 
+0x7882 034412 arg mem_t1 ,rega 
+0x7883 034413 arg mem_t7 ,regb 
+0x7884 034414 arg mem_t1 ,contw 
+0x7885 034415 call bn_mulmod 
+0x7886 034416 arg mem_cz ,rega 
+0x7887 034417 arg mem_az ,regb 
+0x7888 034418 arg mem_t3 ,contw 
+0x7889 034419 call bn_mulmod 
+0x788a 034420 arg mem_t3 ,rega 
+0x788b 034421 arg mem_t7 ,regb 
+0x788c 034422 arg mem_cz ,contw 
+0x788d 034423 call bn_mulmod 
+0x788e 034424 arg mem_t7 ,rega 
+0x788f 034425 arg mem_t7 ,contw 
+0x7890 034426 call bn_sqrmod 
+0x7891 034427 arg mem_t7 ,rega 
+0x7892 034428 arg mem_t0 ,regb 
+0x7893 034429 arg mem_t3 ,contw 
+0x7894 034430 call bn_mulmod 
+0x7895 034431 arg mem_t7 ,rega 
+0x7896 034432 arg mem_t1 ,regb 
+0x7897 034433 arg mem_t1 ,contw 
+0x7898 034434 call bn_mulmod 
+0x7899 034435 arg mem_t2 ,rega 
+0x789a 034436 arg mem_cx ,contw 
+0x789b 034437 call bn_sqrmod 
+0x789c 034438 arg mem_cx ,rega 
+0x789d 034439 arg mem_t3 ,regb 
+0x789e 034440 arg mem_cx ,contw 
+0x789f 034441 call bn_submod 
+0x78a0 034442 arg mem_cx ,contr 
+0x78a1 034443 arg mem_t7 ,contw 
+0x78a2 034444 call memcpy24 
+0x78a3 034445 arg mem_t7 ,rega 
+0x78a4 034446 call bn_lshiftmod 
+0x78a5 034447 arg mem_t3 ,rega 
+0x78a6 034448 arg mem_t7 ,regb 
+0x78a7 034449 arg mem_t3 ,contw 
+0x78a8 034450 call bn_submod 
+0x78a9 034451 arg mem_t3 ,rega 
+0x78aa 034452 arg mem_t2 ,regb 
+0x78ab 034453 arg mem_t2 ,contw 
+0x78ac 034454 call bn_mulmod 
+0x78ad 034455 arg mem_t2 ,rega 
+0x78ae 034456 arg mem_t1 ,regb 
+0x78af 034457 arg mem_cy ,contw 
+0x78b0 034458 call bn_submod 
+0x78b1 034459 arg mem_cy ,rega 
+0x78b2 034460 arg mem_p ,regb 
+0x78b3 034461 arg mem_cy ,contw 
+0x78b4 034462 force 0 ,regc 
+0x78b5 034463 fetch 1 ,mem_cy 
+0x78b6 034464 isolate1 0 ,pdata 
+0x78b7 034465 call bn_add ,true 
+0x78b8 034466 copy regc ,alarm 
+0x78b9 034467 arg mem_cy ,rega 
+0x78ba 034468 call bn_rshift6 
+0x78bb 034469 fetch 1 ,mem_cy5 
+0x78bc 034470 isolate1 0 ,alarm 
+0x78bd 034471 setflag true ,7 ,pdata 
+0x78be 034472 store 1 ,mem_cy5 
+0x78bf 034473 rtn 
+:      034477 eckp_0:
+0x78c0 034478 fetch 1 ,mem_ec_loopc 
+0x78c1 034479 increase -1 ,pdata 
+0x78c2 034480 nrtn positive 
+0x78c3 034481 store 1 ,mem_ec_loopc 
+0x78c4 034482 fetch 1 ,mem_ec_infinite 
+0x78c5 034483 call ecdbl ,blank 
+0x78c6 034484 fetch 1 ,mem_ec_loopc 
+0x78c7 034485 arg mem_k ,contr 
+0x78c8 034486 call bn_testbit 
+0x78c9 034487 branch eckp_0 ,true 
+0x78ca 034488 fetch 1 ,mem_ec_infinite 
+0x78cb 034489 nbranch eckp_1 ,blank 
+0x78cc 034490 call ecadd 
+0x78cd 034491 branch eckp_0 
+:      034492 eckp_1:
+0x78ce 034493 jam 0 ,mem_ec_infinite 
+0x78cf 034494 arg mem_ax ,contr 
+0x78d0 034495 arg mem_cx ,contw 
+0x78d1 034496 call ec_copy 
+0x78d2 034497 branch eckp_0 
+:      034500 ecunmapz:
+0x78d3 034501 arg mem_cz ,rega 
+0x78d4 034502 arg mem_t3 ,contw 
+0x78d5 034503 call bn_invmod 
+0x78d6 034504 arg mem_t3 ,rega 
+0x78d7 034505 arg mem_t1 ,contw 
+0x78d8 034506 call bn_sqrmod 
+0x78d9 034507 arg mem_cx ,rega 
+0x78da 034508 arg mem_t1 ,regb 
+0x78db 034509 arg mem_bx ,contw 
+0x78dc 034510 call bn_mulmod 
+0x78dd 034511 arg mem_t3 ,rega 
+0x78de 034512 arg mem_t1 ,regb 
+0x78df 034513 arg mem_t2 ,contw 
+0x78e0 034514 call bn_mulmod 
+0x78e1 034515 arg mem_cy ,rega 
+0x78e2 034516 arg mem_t2 ,regb 
+0x78e3 034517 arg mem_by ,contw 
+0x78e4 034518 branch bn_mulmod 
+:      034522 sha_endian_swap2:
+0x78e5 034523 ifetch 4 ,contr 
+0x78e6 034524 force 4 ,rega 
+0x78e7 034525 increase 3 ,contw 
+:      034526 sha_endian_loop:
+0x78e8 034527 istore 1 ,contw 
+0x78e9 034528 rshift8 pdata ,pdata 
+0x78ea 034529 increase -2 ,contw 
+0x78eb 034530 increase -1 ,rega 
+0x78ec 034531 nbranch sha_endian_loop ,zero 
+0x78ed 034532 increase 5 ,contw 
+0x78ee 034533 loop sha_endian_swap2 
+0x78ef 034534 rtn 
+:      034537 sha_getw:
+0x78f0 034538 lshift2 queue ,pdata 
+0x78f1 034539 iadd timeup ,contr 
+0x78f2 034540 ifetch 4 ,contr 
+0x78f3 034541 rtn 
+:      034543 sha_r:
+0x78f4 034544 force 16 ,alarm 
+0x78f5 034545 arg memdat ,timeup 
+:      034546 sha_r_loop:
+0x78f6 034547 add alarm ,-7 ,queue 
+0x78f7 034548 call sha_getw 
+0x78f8 034549 iforce temp 
+0x78f9 034550 add alarm ,-16 ,queue 
+0x78fa 034551 call sha_getw 
+0x78fb 034552 iadd temp ,temp 
+0x78fc 034553 add alarm ,-2 ,queue 
+0x78fd 034554 call sha_getw 
+0x78fe 034555 shasx pdata ,1 ,pdata 
+0x78ff 034556 iadd temp ,temp 
+0x7900 034557 add alarm ,-15 ,queue 
+0x7901 034558 call sha_getw 
+0x7902 034559 shasx pdata ,0 ,pdata 
+0x7903 034560 iadd temp ,temp 
+0x7904 034561 lshift2 alarm ,pdata 
+0x7905 034562 iadd timeup ,contw 
+0x7906 034563 istoret 4 ,contw 
+0x7907 034564 increase 1 ,alarm 
+0x7908 034565 compare 64 ,alarm ,0xff 
+0x7909 034566 nbranch sha_r_loop ,true 
+0x790a 034567 rtn 
+:      034570 sha_init:
+0x790b 034571 arg memh0 ,contr 
+0x790c 034572 force 7 ,regext_index 
+:      034573 sha_init_0:
+0x790d 034574 ifetch 4 ,contr 
+0x790e 034575 iforce regext 
+0x790f 034576 increase -1 ,regext_index 
+0x7910 034577 branch sha_init_0 ,positive 
+0x7911 034578 rtn 
+:      034580 sha:
+0x7912 034581 bpatchx patch3d_4 ,mem_patch3d 
+0x7913 034582 call sha_r 
+0x7914 034583 arg memahbak ,contw 
+0x7915 034584 force 0 ,regext_index 
+:      034585 sha_0:
+0x7916 034586 deposit regext 
+0x7917 034587 istore 4 ,contw 
+0x7918 034588 increase 1 ,regext_index 
+0x7919 034589 compare 8 ,regext_index ,0xff 
+0x791a 034590 nbranch sha_0 ,true 
+0x791b 034591 call enable_authrom 
+0x791c 034592 arg memk ,timeup 
+0x791d 034593 arg memdat ,alarm 
+0x791e 034594 force 64 ,loopcnt 
+:      034595 sha_loop:
+0x791f 034596 ifetcht 4 ,alarm 
+0x7920 034597 ifetch 4 ,timeup 
+0x7921 034598 increase 4 ,timeup 
+0x7922 034599 increase 4 ,alarm 
+0x7923 034600 iadd temp ,pdata 
+0x7924 034601 force 7 ,regext_index 
+0x7925 034602 iadd regext ,temp 
+0x7926 034603 force 4 ,regext_index 
+0x7927 034604 shasx regext ,3 ,pdata 
+0x7928 034605 iadd temp ,temp 
+0x7929 034606 force 5 ,regext_index 
+0x792a 034607 deposit regext 
+0x792b 034608 force 6 ,regext_index 
+0x792c 034609 ixor regext ,pdata 
+0x792d 034610 force 4 ,regext_index 
+0x792e 034611 iand regext ,pdata 
+0x792f 034612 force 6 ,regext_index 
+0x7930 034613 ixor regext ,pdata 
+0x7931 034614 iadd temp ,temp 
+0x7932 034615 force 7 ,regext_index 
+0x7933 034616 copy temp ,regext 
+0x7934 034617 force 3 ,regext_index 
+0x7935 034618 deposit regext 
+0x7936 034619 iadd temp ,regext 
+0x7937 034620 force 0 ,regext_index 
+0x7938 034621 deposit regext 
+0x7939 034622 force 1 ,regext_index 
+0x793a 034623 iand regext ,temp 
+0x793b 034624 ior regext ,pdata 
+0x793c 034625 force 2 ,regext_index 
+0x793d 034626 iand regext ,pdata 
+0x793e 034627 ior temp ,temp 
+0x793f 034628 force 0 ,regext_index 
+0x7940 034629 shasx regext ,2 ,pdata 
+0x7941 034630 iadd temp ,pdata 
+0x7942 034631 force 7 ,regext_index 
+0x7943 034632 iadd regext ,regext 
+0x7944 034633 regexrot 
+0x7945 034634 loop sha_loop 
+0x7946 034635 arg memahbak ,contr 
+0x7947 034636 force 0 ,regext_index 
+:      034637 sha_1:
+0x7948 034638 ifetch 4 ,contr 
+0x7949 034639 iadd regext ,regext 
+0x794a 034640 increase 1 ,regext_index 
+0x794b 034641 compare 8 ,regext_index ,0xff 
+0x794c 034642 nbranch sha_1 ,true 
+0x794d 034643 branch disable_authrom 
+:      034646 sha_result:
+0x794e 034647 arg memresult ,contw 
+0x794f 034648 force 7 ,regext_index 
+:      034649 sha_regext_save:
+0x7950 034650 deposit regext 
+0x7951 034651 istore 4 ,contw 
+0x7952 034652 increase -1 ,regext_index 
+0x7953 034653 branch sha_regext_save ,positive 
+0x7954 034654 rtn 
+:      034656 pad_xor:
+0x7955 034658 arg memdat ,contw 
+0x7956 034659 increase -4 ,contr 
+0x7957 034660 sub loopcnt ,16 ,rega 
+:      034661 pad_xor_0:
+0x7958 034662 ifetch 4 ,contr 
+0x7959 034663 ixor temp ,pdata 
+0x795a 034664 istore 4 ,contw 
+0x795b 034665 increase -8 ,contr 
+0x795c 034666 loop pad_xor_0 
+0x795d 034667 copy rega ,loopcnt 
+0x795e 034668 deposit temp 
+:      034669 pad_xor_1:
+0x795f 034670 istore 4 ,contw 
+0x7960 034671 loop pad_xor_1 
+0x7961 034672 rtn 
+:      034674 g_noninit_number_confirm:
+0x7962 034675 call g_noninit0 
+0x7963 034676 call sha_result 
+0x7964 034677 branch g_common0 
+:      034679 g_noninit:
+0x7965 034680 call g_noninit0 
+0x7966 034681 branch g_common0 
+:      034683 g_noninit0:
+0x7967 034684 arg mem_sp_pubkey_remote_x_end ,contr 
+0x7968 034685 arg memdat ,contw 
+0x7969 034686 force 6 ,loopcnt 
+0x796a 034687 call memcpy_dword_swap 
+0x796b 034688 arg mem_sp_pubkey_local_x_end ,contr 
+0x796c 034689 force 6 ,loopcnt 
+0x796d 034690 call memcpy_dword_swap 
+0x796e 034691 arg mem_sp_random_remote_end ,contr 
+0x796f 034692 call memcpy_dword_swap4 
+0x7970 034693 call sha_init 
+0x7971 034694 call sha 
+0x7972 034695 arg mem_sp_random_local_end ,contr 
+0x7973 034696 arg memdat ,contw 
+0x7974 034697 branch g_common 
+:      034699 g_init:
+0x7975 034700 arg mem_sp_pubkey_local_x_end ,contr 
+0x7976 034701 arg memdat ,contw 
+0x7977 034702 force 6 ,loopcnt 
+0x7978 034703 call memcpy_dword_swap 
+0x7979 034704 arg mem_sp_pubkey_remote_x_end ,contr 
+0x797a 034705 force 6 ,loopcnt 
+0x797b 034706 call memcpy_dword_swap 
+0x797c 034707 arg mem_sp_random_local_end ,contr 
+0x797d 034708 call memcpy_dword_swap4 
+0x797e 034709 call sha_init 
+0x797f 034710 call sha 
+0x7980 034711 arg mem_sp_random_remote_end ,contr 
+0x7981 034712 arg memdat ,contw 
+0x7982 034713 call g_common 
+0x7983 034714 branch g_common0 
+:      034716 g_common:
+0x7984 034717 call memcpy_dword_swap4 
+0x7985 034718 setarg 0x800000 
+0x7986 034719 lshift8 pdata ,pdata 
+0x7987 034720 istore 4 ,contw 
+0x7988 034721 force 5 ,loopcnt 
+0x7989 034722 call memset0 
+0x798a 034723 setarg 640 
+0x798b 034724 istore 4 ,contw 
+0x798c 034725 branch sha 
+:      034726 g_common0:
+0x798d 034727 fetch 4 ,memresult 
+0x798e 034729 arg 1000 ,rega 
+0x798f 034730 idiv rega 
+0x7990 034731 call wait_div_end 
+0x7991 034732 remainder pdata 
+0x7992 034733 store 4 ,mem_gkey 
+0x7993 034734 quotient pdata 
+0x7994 034735 arg 1000 ,rega 
+0x7995 034736 idiv rega 
+0x7996 034737 call wait_div_end 
+0x7997 034738 remainder pdata 
+0x7998 034739 arg 1000 ,rega 
+0x7999 034740 imul32 rega ,pdata 
+0x799a 034741 fetcht 4 ,mem_gkey 
+0x799b 034742 iadd temp ,pdata 
+0x799c 034743 store 4 ,mem_gkey 
+0x799d 034744 rtn 
+:      034746 function_f1_no_key:
+0x799e 034747 jam 0 ,mem_passkey_1bit 
+0x799f 034748 branch function_f1_common 
+:      034750 function_f1:
+0x79a0 034751 fetch 1 ,mem_ssp_mode_flag 
+0x79a1 034752 bne ssp_mode_passkey_entry_flag ,function_f1_no_key 
+:      034753 function_f1_common:
+0x79a2 034754 bpatchx patch3d_5 ,mem_patch3d 
+0x79a3 034755 setarg 0x363636 
+0x79a4 034756 lshift8 pdata ,temp 
+0x79a5 034757 or_into 0x36 ,temp 
+0x79a6 034758 fetch 2 ,mem_sp_prarm_stack 
+0x79a7 034759 copy pdata ,contr 
+0x79a8 034760 force 4 ,loopcnt 
+0x79a9 034761 call pad_xor 
+0x79aa 034762 call sha_init 
+0x79ab 034763 call sha 
+0x79ac 034764 fetch 2 ,mem_sp_prarm_stack + 2 
+0x79ad 034765 copy pdata ,contr 
+0x79ae 034766 arg memdat ,contw 
+0x79af 034767 force 6 ,loopcnt 
+0x79b0 034768 call memcpy_dword_swap 
+0x79b1 034769 fetch 2 ,mem_sp_prarm_stack + 4 
+0x79b2 034770 copy pdata ,contr 
+0x79b3 034771 force 6 ,loopcnt 
+0x79b4 034772 call memcpy_dword_swap 
+0x79b5 034773 setarg 0x800000 
+0x79b6 034774 istore 3 ,contw 
+0x79b7 034776 fetch 1 ,mem_passkey_1bit 
+0x79b8 034778 istore 1 ,contw 
+0x79b9 034779 force 0 ,pdata 
+0x79ba 034780 istore 8 ,contw 
+0x79bb 034781 setarg 0x0388 
+0x79bc 034782 istore 4 ,contw 
+0x79bd 034783 call sha 
+0x79be 034784 call sha_result 
+0x79bf 034785 arg memresult ,contr 
+0x79c0 034786 arg memahsave ,contw 
+0x79c1 034787 call memcpy32 
+0x79c2 034789 setarg 0x5c5c5c 
+0x79c3 034790 lshift8 pdata ,temp 
+0x79c4 034791 or_into 0x5c ,temp 
+0x79c5 034792 fetch 2 ,mem_sp_prarm_stack 
+0x79c6 034793 copy pdata ,contr 
+0x79c7 034794 force 4 ,loopcnt 
+0x79c8 034795 call pad_xor 
+0x79c9 034796 call sha_init 
+0x79ca 034797 call sha 
+0x79cb 034798 arg memahsave_end ,contr 
+0x79cc 034799 arg memdat ,contw 
+0x79cd 034800 force 8 ,loopcnt 
+0x79ce 034801 call memcpy_dword_swap 
+0x79cf 034802 setarg 0x800000 
+0x79d0 034803 lshift8 pdata ,pdata 
+0x79d1 034804 istore 4 ,contw 
+0x79d2 034805 call bn_zero 
+0x79d3 034806 setarg 0x0300 
+0x79d4 034807 istore 4 ,contw 
+0x79d5 034808 call sha 
+0x79d6 034809 branch sha_result 
+:      034812 function_f2:
+0x79d7 034813 setarg 0x363636 
+0x79d8 034814 lshift8 pdata ,temp 
+0x79d9 034815 or_into 0x36 ,temp 
+0x79da 034816 arg mem_sp_dhkey_end ,contr 
+0x79db 034817 force 6 ,loopcnt 
+0x79dc 034818 call pad_xor 
+0x79dd 034819 call sha_init 
+0x79de 034820 call sha 
+0x79df 034821 fetch 2 ,mem_sp_prarm_stack + 12 
+0x79e0 034822 copy pdata ,contr 
+0x79e1 034823 arg memdat ,contw 
+0x79e2 034824 call memcpy_dword_swap4 
+0x79e3 034825 fetch 2 ,mem_sp_prarm_stack + 14 
+0x79e4 034826 copy pdata ,contr 
+0x79e5 034827 call memcpy_dword_swap4 
+0x79e6 034829 setarg 0x62746c 
+0x79e7 034830 lshift8 pdata ,pdata 
+0x79e8 034831 or_into 0x6b ,pdata 
+0x79e9 034832 istore 4 ,contw 
+0x79ea 034833 arg mem_addr_value_end ,contr 
+0x79eb 034834 force 3 ,loopcnt 
+0x79ec 034835 call memcpy_dword_swap 
+0x79ed 034837 setarg 0x800000 
+0x79ee 034838 lshift8 pdata ,pdata 
+0x79ef 034839 istore 4 ,contw 
+0x79f0 034840 force 0 ,pdata 
+0x79f1 034841 istore 8 ,contw 
+0x79f2 034842 setarg 0x0380 
+0x79f3 034843 istore 4 ,contw 
+0x79f4 034844 call sha 
+0x79f5 034846 call sha_result 
+0x79f6 034847 arg memresult ,contr 
+0x79f7 034848 arg memahsave ,contw 
+0x79f8 034849 call memcpy32 
+0x79f9 034851 setarg 0x5c5c5c 
+0x79fa 034852 lshift8 pdata ,temp 
+0x79fb 034853 or_into 0x5c ,temp 
+0x79fc 034854 arg mem_sp_dhkey_end ,contr 
+0x79fd 034855 force 6 ,loopcnt 
+0x79fe 034856 call pad_xor 
+0x79ff 034857 call sha_init 
+0x7a00 034858 call sha 
+0x7a01 034859 arg memahsave_end ,contr 
+0x7a02 034860 arg memdat ,contw 
+0x7a03 034861 force 8 ,loopcnt 
+0x7a04 034862 call memcpy_dword_swap 
+0x7a05 034863 setarg 0x800000 
+0x7a06 034864 lshift8 pdata ,pdata 
+0x7a07 034865 istore 4 ,contw 
+0x7a08 034866 call bn_zero 
+0x7a09 034867 setarg 0x0300 
+0x7a0a 034868 istore 4 ,contw 
+0x7a0b 034869 call sha 
+0x7a0c 034870 branch sha_result 
+:      034873 function_f3a:
+0x7a0d 034874 fetch 1 ,mem_ssp_mode_flag 
+0x7a0e 034875 bne ssp_mode_passkey_entry_flag ,function_f3a_no_pin 
+:      034876 function_f3a_common:
+0x7a0f 034877 bpatchx patch3d_6 ,mem_patch3d 
+0x7a10 034878 setarg 0x363636 
+0x7a11 034879 lshift8 pdata ,temp 
+0x7a12 034880 or_into 0x36 ,temp 
+0x7a13 034881 arg mem_sp_dhkey_end ,contr 
+0x7a14 034882 force 6 ,loopcnt 
+0x7a15 034883 call pad_xor 
+0x7a16 034884 call sha_init 
+0x7a17 034885 call sha 
+0x7a18 034886 arg mem_sp_random_remote_end ,contr 
+0x7a19 034887 arg memdat ,contw 
+0x7a1a 034888 call memcpy_dword_swap4 
+0x7a1b 034889 arg mem_sp_random_local_end ,contr 
+0x7a1c 034890 call memcpy_dword_swap4 
+0x7a1d 034891 branch function_f3_common 
+:      034893 function_f3a_no_pin:
+0x7a1e 034894 setarg 0 
+0x7a1f 034895 store 4 ,mem_pin 
+0x7a20 034896 branch function_f3a_common 
+:      034898 function_f3b_no_pin:
+0x7a21 034899 setarg 0 
+0x7a22 034900 store 4 ,mem_pin 
+0x7a23 034901 branch function_f3b_common 
+:      034904 function_f3b:
+0x7a24 034905 fetch 1 ,mem_ssp_mode_flag 
+0x7a25 034906 bne ssp_mode_passkey_entry_flag ,function_f3b_no_pin 
+:      034907 function_f3b_common:
+0x7a26 034908 setarg 0x363636 
+0x7a27 034909 lshift8 pdata ,temp 
+0x7a28 034910 or_into 0x36 ,temp 
+0x7a29 034911 arg mem_sp_dhkey_end ,contr 
+0x7a2a 034912 force 6 ,loopcnt 
+0x7a2b 034913 call pad_xor 
+0x7a2c 034914 call sha_init 
+0x7a2d 034915 call sha 
+0x7a2e 034917 arg mem_sp_random_local_end ,contr 
+0x7a2f 034918 arg memdat ,contw 
+0x7a30 034919 call memcpy_dword_swap4 
+0x7a31 034920 arg mem_sp_random_remote_end ,contr 
+0x7a32 034921 call memcpy_dword_swap4 
+:      034922 function_f3_common:
+0x7a33 034923 setarg 0x0 
+0x7a34 034924 istore 8 ,contw 
+0x7a35 034925 istore 4 ,contw 
+0x7a36 034926 fetch 4 ,mem_pin 
+0x7a37 034927 istore 4 ,contw 
+0x7a38 034929 copy contw ,temp 
+0x7a39 034930 jam 0x80 ,mem_addr_padding 
+0x7a3a 034931 copy temp ,contw 
+0x7a3b 034932 arg mem_addr_iocap_end ,contr 
+0x7a3c 034933 call memcpy_dword_swap4 
+0x7a3d 034935 call sha 
+0x7a3e 034937 arg memdat ,contw 
+0x7a3f 034938 force 7 ,loopcnt 
+0x7a40 034939 call memset0 
+0x7a41 034940 istore 4 ,contw 
+0x7a42 034941 setarg 0x03F8 
+0x7a43 034942 istore 4 ,contw 
+0x7a44 034943 call sha 
+0x7a45 034944 call sha_result 
+0x7a46 034946 arg memresult ,contr 
+0x7a47 034947 arg memahsave ,contw 
+0x7a48 034948 call memcpy32 
+0x7a49 034950 setarg 0x5c5c5c 
+0x7a4a 034951 lshift8 pdata ,temp 
+0x7a4b 034952 or_into 0x5c ,temp 
+0x7a4c 034953 arg mem_sp_dhkey_end ,contr 
+0x7a4d 034954 force 6 ,loopcnt 
+0x7a4e 034955 call pad_xor 
+0x7a4f 034956 call sha_init 
+0x7a50 034957 call sha 
+0x7a51 034958 arg memahsave_end ,contr 
+0x7a52 034959 arg memdat ,contw 
+0x7a53 034960 force 8 ,loopcnt 
+0x7a54 034961 call memcpy_dword_swap 
+0x7a55 034962 setarg 0x800000 
+0x7a56 034963 lshift8 pdata ,pdata 
+0x7a57 034964 istore 4 ,contw 
+0x7a58 034965 call bn_zero 
+0x7a59 034966 setarg 0x0300 
+0x7a5a 034967 istore 4 ,contw 
+0x7a5b 034968 call sha 
+0x7a5c 034969 branch sha_result 
+:      034976 eckp_calc_init:
+0x7a5d 034977 jam 192 ,mem_ec_loopc 
+:      034978 eckp_calc_init_1:
+0x7a5e 034979 fetch 1 ,mem_ec_loopc 
+0x7a5f 034980 rtn blank 
+0x7a60 034981 increase -1 ,pdata 
+0x7a61 034982 store 1 ,mem_ec_loopc 
+0x7a62 034983 arg mem_k ,contr 
+0x7a63 034984 call bn_testbit 
+0x7a64 034985 branch eckp_calc_init_1 ,true 
+0x7a65 034986 arg mem_ax ,contr 
+0x7a66 034987 arg mem_cx ,contw 
+0x7a67 034988 branch ec_copy 
+:      034990 eckp_calc:
+0x7a68 034991 call ecdbl 
+0x7a69 034992 fetch 1 ,mem_ec_loopc 
+0x7a6a 034993 increase -1 ,pdata 
+0x7a6b 034994 store 1 ,mem_ec_loopc 
+0x7a6c 034995 arg mem_k ,contr 
+0x7a6d 034996 call bn_testbit 
+0x7a6e 034997 rtn true 
+0x7a6f 034998 branch ecadd 
+:      035000 memcpy_dword_swap4:
+0x7a70 035001 force 4 ,loopcnt 
+:      035002 memcpy_dword_swap:
+0x7a71 035003 increase -4 ,contr 
+:      035004 memcpy_dword_swap_loop:
+0x7a72 035005 ifetch 4 ,contr 
+0x7a73 035006 istore 4 ,contw 
+0x7a74 035007 increase -8 ,contr 
+0x7a75 035008 loop memcpy_dword_swap_loop 
+0x7a76 035009 rtn 
+:      035014 sp_initialize_256:
+0x7a77 035015 bpatchx patch3d_7 ,mem_patch3d 
+0x7a78 035016 fetch 1 ,mem_le_secure_connect_enable 
+0x7a79 035017 branch le_secure_connection_disable ,blank 
+0x7a7a 035018 call le_secure_connection_enable 
+0x7a7b 035019 call sp_clear_flags 
+0x7a7c 035021 branch sp_pubkey_calc_256 
+:      035026 sp_pubkey_calc_256:
+0x7a7d 035027 fetch 1 ,mem_le_sc_local_key_invalid 
+0x7a7e 035028 rtnne sp_key_invalid 
+0x7a7f 035029 fetch 1 ,mem_le_sc_calc 
+0x7a80 035030 rtnne sp_calc_standby 
+0x7a81 035032 arg mem_le_private_key_256 ,contw 
+0x7a82 035033 force 15 ,queue 
+0x7a83 035034 call random_generator 
+0x7a84 035035 random pdata 
+0x7a85 035036 rshift pdata ,pdata 
+0x7a86 035037 istore 2 ,contw 
+0x7a87 035039 arg mem_k_256 ,contw 
+0x7a88 035040 arg mem_le_private_key_256 ,contr 
+0x7a89 035041 call memcpy32 
+0x7a8a 035043 arg mem_ax_256 ,contw 
+0x7a8b 035044 arg mem_gx_256 ,contr 
+0x7a8c 035045 call memcpy64 
+0x7a8d 035047 arg mem_az_256 ,contw 
+0x7a8e 035048 call clear_mem_256 
+0x7a8f 035049 jam 1 ,mem_az_256 
+0x7a90 035051 call eckp_calc_init_256 
+0x7a91 035052 jam sp_calc_pubkey_256 ,mem_le_sc_calc 
+0x7a92 035053 rtn 
+:      035055 sp_pubkey_generated_256:
+0x7a93 035056 arg mem_le_pubkey_local_x_256 ,contw 
+0x7a94 035057 arg mem_bx_256 ,contr 
+0x7a95 035058 call memcpy64 
+0x7a96 035059 jam sp_key_valid_256 ,mem_le_sc_local_key_invalid 
+0x7a97 035060 jam sp_calc_standby ,mem_le_sc_calc 
+0x7a98 035061 rtn 
+:      035065 sp_dhkey_calc_256:
+0x7a99 035066 fetch 1 ,mem_sp_dhkey_invalid 
+0x7a9a 035067 rtnne sp_key_invalid 
+0x7a9b 035068 fetch 1 ,mem_le_sc_calc 
+0x7a9c 035069 rtnne sp_calc_standby 
+0x7a9d 035071 arg mem_k_256 ,contw 
+0x7a9e 035072 arg mem_le_private_key_256 ,contr 
+0x7a9f 035073 call memcpy32 
+0x7aa0 035075 arg mem_ax_256 ,contw 
+0x7aa1 035076 arg mem_le_pubkey_remote_x_256 ,contr 
+0x7aa2 035077 call memcpy64 
+0x7aa3 035079 arg mem_az_256 ,contw 
+0x7aa4 035080 call clear_mem_256 
+0x7aa5 035081 jam 1 ,mem_az_256 
+0x7aa6 035083 call eckp_calc_init_256 
+0x7aa7 035084 jam sp_calc_dhkey_256 ,mem_le_sc_calc 
+0x7aa8 035085 rtn 
+:      035088 sp_dhkey_generated_256:
+0x7aa9 035090 arg mem_le_dhkey_256 ,contw 
+0x7aaa 035091 arg mem_bx_256 ,contr 
+0x7aab 035092 call memcpy32 
+0x7aac 035093 jam sp_key_valid_256 ,mem_sp_dhkey_invalid 
+0x7aad 035094 jam sp_calc_standby ,mem_le_sc_calc 
+0x7aae 035095 rtn 
+:      035099 sp_calc_sequence_256:
+0x7aaf 035100 fetch 1 ,mem_le_secure_connect_enable 
+0x7ab0 035101 rtn blank 
+0x7ab1 035102 fetch 1 ,mem_le_sc_calc 
+0x7ab2 035103 rtn blank 
+0x7ab3 035104 increase 0x80 ,pdata 
+0x7ab4 035105 store 1 ,mem_le_sc_calc 
+0x7ab5 035106 rtnbit1 7 
+0x7ab6 035107 fetch 2 ,mem_ec_loopc 
+0x7ab7 035108 branch sp_calc_sequence_done_256 ,blank 
+0x7ab8 035109 branch eckp_calc_256 
+:      035111 sp_calc_sequence_done_256:
+0x7ab9 035112 bpatchx patch3e_0 ,mem_patch3e 
+0x7aba 035113 call ecunmapz_256 
+0x7abb 035114 fetch 1 ,mem_le_sc_calc 
+0x7abc 035115 beq sp_calc_pubkey_256 ,sp_pubkey_generated_256 
+0x7abd 035116 beq sp_calc_dhkey_256 ,sp_dhkey_generated_256 
+0x7abe 035117 rtn 
+:      035120 eckp_calc_256:
+0x7abf 035121 call ecdbl_256 
+0x7ac0 035122 fetch 2 ,mem_ec_loopc 
+0x7ac1 035123 increase -1 ,pdata 
+0x7ac2 035124 store 2 ,mem_ec_loopc 
+0x7ac3 035125 arg mem_k_256 ,contr 
+0x7ac4 035126 call bn_testbit 
+0x7ac5 035127 rtn true 
+0x7ac6 035128 branch ecadd_256 
+:      035130 eckp_calc_init_256:
+0x7ac7 035131 bpatchx patch3e_1 ,mem_patch3e 
+0x7ac8 035132 setarg 256 ,pdata 
+0x7ac9 035133 store 2 ,mem_ec_loopc 
+:      035134 eckp_calc_init_256_1:
+0x7aca 035135 fetch 2 ,mem_ec_loopc 
+0x7acb 035136 rtn blank 
+0x7acc 035137 increase -1 ,pdata 
+0x7acd 035138 store 2 ,mem_ec_loopc 
+0x7ace 035139 arg mem_k_256 ,contr 
+0x7acf 035140 call bn_testbit 
+0x7ad0 035141 branch eckp_calc_init_256_1 ,true 
+0x7ad1 035142 arg mem_ax_256 ,contr 
+0x7ad2 035143 arg mem_cx_256 ,contw 
+0x7ad3 035144 branch memcpy96 
+:      035147 ecunmapz_256:
+0x7ad4 035148 arg mem_cz_256 ,rega 
+0x7ad5 035149 arg mem_t3_256 ,contw 
+0x7ad6 035150 call bn_invmod_256 
+0x7ad7 035151 arg mem_t3_256 ,rega 
+0x7ad8 035152 arg mem_t1_256 ,contw 
+0x7ad9 035153 call bn_sqrmod_256 
+0x7ada 035154 arg mem_cx_256 ,rega 
+0x7adb 035155 arg mem_t1_256 ,regb 
+0x7adc 035156 arg mem_bx_256 ,contw 
+0x7add 035157 call bn_mulmod_256 
+0x7ade 035158 arg mem_t3_256 ,rega 
+0x7adf 035159 arg mem_t1_256 ,regb 
+0x7ae0 035160 arg mem_t2_256 ,contw 
+0x7ae1 035161 call bn_mulmod_256 
+0x7ae2 035162 arg mem_cy_256 ,rega 
+0x7ae3 035163 arg mem_t2_256 ,regb 
+0x7ae4 035164 arg mem_by_256 ,contw 
+0x7ae5 035165 branch bn_mulmod_256 
+:      035167 ecdbl_256:
+0x7ae6 035168 arg mem_cz_256 ,rega 
+0x7ae7 035169 arg mem_t2_256 ,contw 
+0x7ae8 035170 call bn_sqrmod_256 
+0x7ae9 035171 arg mem_t2_256 ,rega 
+0x7aea 035172 arg mem_t3_256 ,contw 
+0x7aeb 035173 call bn_sqrmod_256 
+0x7aec 035175 arg mem_a_256 ,rega 
+0x7aed 035176 arg mem_t3_256 ,regb 
+0x7aee 035177 arg mem_t3_256 ,contw 
+0x7aef 035178 call bn_mulmod_256 
+0x7af0 035179 arg mem_cx_256 ,rega 
+0x7af1 035180 arg mem_t2_256 ,contw 
+0x7af2 035181 call bn_sqrmod_256 
+0x7af3 035183 arg mem_t2_256 ,contr 
+0x7af4 035184 arg mem_t1_256 ,contw 
+0x7af5 035185 call memcpy32 
+0x7af6 035186 arg mem_t1_256 ,rega 
+0x7af7 035187 call bn_lshiftmod_256 
+0x7af8 035188 arg mem_t2_256 ,rega 
+0x7af9 035189 arg mem_t1_256 ,regb 
+0x7afa 035190 arg mem_t2_256 ,contw 
+0x7afb 035191 call bn_addmod_256 
+0x7afc 035193 arg mem_t2_256 ,rega 
+0x7afd 035194 arg mem_t3_256 ,regb 
+0x7afe 035195 arg mem_t2_256 ,contw 
+0x7aff 035196 call bn_addmod_256 
+0x7b00 035198 arg mem_cx_256 ,contr 
+0x7b01 035199 arg mem_t1_256 ,contw 
+0x7b02 035200 call memcpy32 
+0x7b03 035201 arg mem_cy_256 ,rega 
+0x7b04 035202 arg mem_t3_256 ,contw 
+0x7b05 035203 call bn_sqrmod_256 
+0x7b06 035204 arg mem_t1_256 ,rega 
+0x7b07 035205 call bn_lshiftmod_256 
+0x7b08 035206 arg mem_t1_256 ,rega 
+0x7b09 035207 call bn_lshiftmod_256 
+0x7b0a 035208 arg mem_t1_256 ,rega 
+0x7b0b 035209 arg mem_t3_256 ,regb 
+0x7b0c 035210 arg mem_t1_256 ,contw 
+0x7b0d 035211 call bn_mulmod_256 
+0x7b0e 035212 arg mem_t3_256 ,rega 
+0x7b0f 035213 arg mem_t0_256 ,contw 
+0x7b10 035214 call bn_sqrmod_256 
+0x7b11 035215 arg mem_t0_256 ,rega 
+0x7b12 035216 call bn_lshiftmod_256 
+0x7b13 035217 arg mem_t0_256 ,rega 
+0x7b14 035218 call bn_lshiftmod_256 
+0x7b15 035219 arg mem_t0_256 ,rega 
+0x7b16 035220 call bn_lshiftmod_256 
+0x7b17 035221 arg mem_cy_256 ,contr 
+0x7b18 035222 arg mem_t3_256 ,contw 
+0x7b19 035223 call memcpy32 
+0x7b1a 035224 arg mem_t3_256 ,rega 
+0x7b1b 035225 call bn_lshiftmod_256 
+0x7b1c 035226 arg mem_t3_256 ,rega 
+0x7b1d 035227 arg mem_cz_256 ,regb 
+0x7b1e 035228 arg mem_cz_256 ,contw 
+0x7b1f 035229 call bn_mulmod_256 
+0x7b20 035232 arg mem_t2_256 ,rega 
+0x7b21 035233 arg mem_t3_256 ,contw 
+0x7b22 035234 call bn_sqrmod_256 
+0x7b23 035236 arg mem_t3_256 ,rega 
+0x7b24 035237 arg mem_t1_256 ,regb 
+0x7b25 035238 arg mem_t3_256 ,contw 
+0x7b26 035239 call bn_submod_256 
+0x7b27 035240 arg mem_t3_256 ,rega 
+0x7b28 035241 arg mem_t1_256 ,regb 
+0x7b29 035242 arg mem_cx_256 ,contw 
+0x7b2a 035243 call bn_submod_256 
+0x7b2b 035244 arg mem_t1_256 ,rega 
+0x7b2c 035245 arg mem_cx_256 ,regb 
+0x7b2d 035246 arg mem_t3_256 ,contw 
+0x7b2e 035247 call bn_submod_256 
+0x7b2f 035248 arg mem_t3_256 ,rega 
+0x7b30 035249 arg mem_t2_256 ,regb 
+0x7b31 035250 arg mem_t3_256 ,contw 
+0x7b32 035251 call bn_mulmod_256 
+0x7b33 035252 arg mem_t3_256 ,rega 
+0x7b34 035253 arg mem_t0_256 ,regb 
+0x7b35 035254 arg mem_cy_256 ,contw 
+0x7b36 035255 branch bn_submod_256 
+:      035257 ecadd_256:
+0x7b37 035259 arg mem_az_256 ,rega 
+0x7b38 035260 arg mem_t7_256 ,contw 
+0x7b39 035261 call bn_sqrmod_256 
+0x7b3a 035262 arg mem_cx_256 ,rega 
+0x7b3b 035263 arg mem_t7_256 ,regb 
+0x7b3c 035264 arg mem_t0_256 ,contw 
+0x7b3d 035265 call bn_mulmod_256 
+0x7b3e 035268 arg mem_az_256 ,rega 
+0x7b3f 035269 arg mem_t7_256 ,regb 
+0x7b40 035270 arg mem_t7_256 ,contw 
+0x7b41 035271 call bn_mulmod_256 
+0x7b42 035272 arg mem_cy_256 ,rega 
+0x7b43 035273 arg mem_t7_256 ,regb 
+0x7b44 035274 arg mem_t1_256 ,contw 
+0x7b45 035275 call bn_mulmod_256 
+0x7b46 035278 arg mem_cz_256 ,rega 
+0x7b47 035279 arg mem_t7_256 ,contw 
+0x7b48 035280 call bn_sqrmod_256 
+0x7b49 035281 arg mem_ax_256 ,rega 
+0x7b4a 035282 arg mem_t7_256 ,regb 
+0x7b4b 035283 arg mem_t2_256 ,contw 
+0x7b4c 035284 call bn_mulmod_256 
+0x7b4d 035286 arg mem_cz_256 ,rega 
+0x7b4e 035287 arg mem_t7_256 ,regb 
+0x7b4f 035288 arg mem_t7_256 ,contw 
+0x7b50 035289 call bn_mulmod_256 
+0x7b51 035290 arg mem_ay_256 ,rega 
+0x7b52 035291 arg mem_t7_256 ,regb 
+0x7b53 035292 arg mem_t3_256 ,contw 
+0x7b54 035293 call bn_mulmod_256 
+0x7b55 035298 arg mem_t0_256 ,regb 
+0x7b56 035299 arg mem_t2_256 ,rega 
+0x7b57 035300 arg mem_t7_256 ,contw 
+0x7b58 035301 call bn_submod_256 
+0x7b59 035302 arg mem_t0_256 ,rega 
+0x7b5a 035303 arg mem_t2_256 ,regb 
+0x7b5b 035304 arg mem_t0_256 ,contw 
+0x7b5c 035305 call bn_addmod_256 
+0x7b5d 035308 arg mem_t1_256 ,regb 
+0x7b5e 035309 arg mem_t3_256 ,rega 
+0x7b5f 035310 arg mem_t2_256 ,contw 
+0x7b60 035311 call bn_submod_256 
+0x7b61 035312 arg mem_t1_256 ,rega 
+0x7b62 035313 arg mem_t3_256 ,regb 
+0x7b63 035314 arg mem_t1_256 ,contw 
+0x7b64 035315 call bn_addmod_256 
+0x7b65 035316 arg mem_t1_256 ,rega 
+0x7b66 035317 arg mem_t7_256 ,regb 
+0x7b67 035318 arg mem_t1_256 ,contw 
+0x7b68 035319 call bn_mulmod_256 
+0x7b69 035320 arg mem_cz_256 ,rega 
+0x7b6a 035321 arg mem_az_256 ,regb 
+0x7b6b 035322 arg mem_t3_256 ,contw 
+0x7b6c 035323 call bn_mulmod_256 
+0x7b6d 035324 arg mem_t3_256 ,rega 
+0x7b6e 035325 arg mem_t7_256 ,regb 
+0x7b6f 035326 arg mem_cz_256 ,contw 
+0x7b70 035327 call bn_mulmod_256 
+0x7b71 035329 arg mem_t7_256 ,rega 
+0x7b72 035330 arg mem_t7_256 ,contw 
+0x7b73 035331 call bn_sqrmod_256 
+0x7b74 035332 arg mem_t7_256 ,rega 
+0x7b75 035333 arg mem_t0_256 ,regb 
+0x7b76 035334 arg mem_t3_256 ,contw 
+0x7b77 035335 call bn_mulmod_256 
+0x7b78 035336 arg mem_t7_256 ,rega 
+0x7b79 035337 arg mem_t1_256 ,regb 
+0x7b7a 035338 arg mem_t1_256 ,contw 
+0x7b7b 035339 call bn_mulmod_256 
+0x7b7c 035340 arg mem_t2_256 ,rega 
+0x7b7d 035341 arg mem_cx_256 ,contw 
+0x7b7e 035342 call bn_sqrmod_256 
+0x7b7f 035343 arg mem_cx_256 ,rega 
+0x7b80 035344 arg mem_t3_256 ,regb 
+0x7b81 035345 arg mem_cx_256 ,contw 
+0x7b82 035346 call bn_submod_256 
+0x7b83 035347 arg mem_cx_256 ,contr 
+0x7b84 035348 arg mem_t7_256 ,contw 
+0x7b85 035349 call memcpy32 
+0x7b86 035350 arg mem_t7_256 ,rega 
+0x7b87 035351 call bn_lshiftmod_256 
+0x7b88 035352 arg mem_t3_256 ,rega 
+0x7b89 035353 arg mem_t7_256 ,regb 
+0x7b8a 035354 arg mem_t3_256 ,contw 
+0x7b8b 035355 call bn_submod_256 
+0x7b8c 035356 arg mem_t3_256 ,rega 
+0x7b8d 035357 arg mem_t2_256 ,regb 
+0x7b8e 035358 arg mem_t2_256 ,contw 
+0x7b8f 035359 call bn_mulmod_256 
+0x7b90 035360 arg mem_t2_256 ,rega 
+0x7b91 035361 arg mem_t1_256 ,regb 
+0x7b92 035362 arg mem_cy_256 ,contw 
+0x7b93 035363 call bn_submod_256 
+0x7b94 035364 arg mem_cy_256 ,rega 
+0x7b95 035365 arg mem_p_256 ,regb 
+0x7b96 035366 arg mem_cy_256 ,contw 
+0x7b97 035367 force 0 ,regc 
+0x7b98 035368 fetch 1 ,mem_cy_256 
+0x7b99 035369 isolate1 0 ,pdata 
+0x7b9a 035370 call bn_add_256 ,true 
+0x7b9b 035371 copy regc ,alarm 
+0x7b9c 035372 arg mem_cy_256 ,rega 
+0x7b9d 035373 call bn_rshift_256 
+0x7b9e 035374 fetch 1 ,mem_cy5_256 
+0x7b9f 035375 isolate1 0 ,alarm 
+0x7ba0 035376 setflag true ,7 ,pdata 
+0x7ba1 035377 store 1 ,mem_cy5_256 
+0x7ba2 035378 rtn 
+:      035380 bn_invmod_256:
+0x7ba3 035381 copy contw ,timeup 
+0x7ba4 035382 arg mem_tmp0_256 ,contw 
+0x7ba5 035383 call clear_mem_256 
+0x7ba6 035384 force 0 ,pdata 
+0x7ba7 035386 store 4 ,mem_t2_256 
+0x7ba8 035387 jam 1 ,mem_tmp0_256 
+0x7ba9 035388 arg mem_tmp1_256 ,contw 
+0x7baa 035389 call clear_mem_512 
+0x7bab 035390 arg mem_p_256 ,contr 
+0x7bac 035391 arg mem_tmp2_256 ,contw 
+0x7bad 035392 call memcpy32 
+0x7bae 035393 copy rega ,contr 
+0x7baf 035394 arg mem_tmp3_256 ,contw 
+0x7bb0 035395 call memcpy32 
+:      035401 bn_invmod_256_2:
+0x7bb1 035402 arg mem_tmp3_256 ,contr 
+0x7bb2 035403 call bn_eq_zero_256 
+0x7bb3 035404 branch bn_invmod_256_0 ,blank 
+0x7bb4 035409 arg mem_tmp3_256 ,rega 
+0x7bb5 035410 arg mem_tmp0_256 ,regb 
+0x7bb6 035411 call bn_rshifteven_256 
+0x7bb7 035412 arg mem_tmp2_256 ,rega 
+0x7bb8 035413 arg mem_tmp1_256 ,regb 
+0x7bb9 035414 call bn_rshifteven_256 
+0x7bba 035416 arg mem_tmp3_256 ,rega 
+0x7bbb 035417 arg mem_tmp2_256 ,regb 
+0x7bbc 035418 call bn_bigeq_256 
+0x7bbd 035419 branch bn_invmod_256_1 ,positive 
+0x7bbe 035420 arg mem_tmp2_256 ,rega 
+0x7bbf 035421 arg mem_tmp3_256 ,regb 
+0x7bc0 035422 copy rega ,contw 
+0x7bc1 035423 call bn_sub_256 
+0x7bc2 035424 arg mem_tmp0_256 ,rega 
+0x7bc3 035425 arg mem_tmp1_256 ,regb 
+0x7bc4 035426 copy regb ,contw 
+0x7bc5 035427 call bn_add_256 
+0x7bc6 035428 ifetch 1 ,rega 
+0x7bc7 035429 iadd regc ,regc 
+0x7bc8 035430 ifetch 1 ,regb 
+0x7bc9 035431 iadd regc ,pdata 
+0x7bca 035432 istore 1 ,regb 
+0x7bcb 035433 branch bn_invmod_256_2 
+:      035434 bn_invmod_256_1:
+0x7bcc 035435 arg mem_tmp3_256 ,rega 
+0x7bcd 035436 arg mem_tmp2_256 ,regb 
+0x7bce 035437 copy rega ,contw 
+0x7bcf 035438 call bn_sub_256 
+0x7bd0 035439 arg mem_tmp1_256 ,rega 
+0x7bd1 035440 arg mem_tmp0_256 ,regb 
+0x7bd2 035441 copy regb ,contw 
+0x7bd3 035442 call bn_add_256 
+0x7bd4 035443 ifetch 1 ,rega 
+0x7bd5 035444 iadd regc ,regc 
+0x7bd6 035445 ifetch 1 ,regb 
+0x7bd7 035446 iadd regc ,pdata 
+0x7bd8 035447 istore 1 ,regb 
+0x7bd9 035448 branch bn_invmod_256_2 
+:      035449 bn_invmod_256_0:
+0x7bda 035451 arg mem_tmp1_256 ,rega 
+0x7bdb 035452 copy timeup ,contw 
+0x7bdc 035453 call bn_p256mod 
+0x7bdd 035455 arg mem_p_256 ,rega 
+0x7bde 035456 copy timeup ,regb 
+0x7bdf 035457 copy timeup ,contw 
+0x7be0 035458 branch bn_submod_256 
+:      035461 bn_mulmod_256:
+0x7be1 035462 copy contw ,timeup 
+0x7be2 035464 force 0 ,regext_index 
+0x7be3 035466 arg mem_tmp1_256 ,contw 
+0x7be4 035467 call clear_mem_512 
+0x7be5 035468 arg mem_regext ,contw 
+0x7be6 035469 call clear_mem_512 
+0x7be7 035473 copy rega ,contr 
+0x7be8 035475 jam 0 ,mem_regext 
+0x7be9 035476 setarg 0 
+0x7bea 035477 call bn_load_mem 
+0x7beb 035478 copy regb ,contr 
+0x7bec 035479 call bn_load_256 
+0x7bed 035482 force 0 ,queue 
+0x7bee 035483 arg mem_tmp1_256 ,contw 
+:      035484 bn_mulmod_256_1:
+0x7bef 035487 arg mem_regext ,temp 
+0x7bf0 035488 copy queue ,regb 
+0x7bf1 035489 lshift2 regb ,pdata 
+0x7bf2 035491 iadd temp ,regb 
+0x7bf3 035492 force 0 ,temp 
+0x7bf4 035493 force 0 ,regc 
+:      035494 bn_mulmod_256_0:
+0x7bf5 035499 ifetch 4 ,contw 
+0x7bf6 035500 iforce rega 
+0x7bf7 035503 ifetch 4 ,regb 
+0x7bf8 035504 copy regc ,regext_index 
+0x7bf9 035505 imul32 regext ,pdata 
+0x7bfa 035506 iadd rega ,pdata 
+0x7bfb 035507 iadd temp ,pdata 
+0x7bfc 035508 istore 4 ,contw 
+0x7bfd 035509 rshift32 pdata ,temp 
+0x7bfe 035510 increase 1 ,regc 
+0x7bff 035511 compare 8 ,regc ,0xff 
+0x7c00 035512 nbranch bn_mulmod_256_0 ,true 
+0x7c01 035514 deposit temp 
+0x7c02 035515 istore 4 ,contw 
+0x7c03 035516 increase -32 ,contw 
+0x7c04 035519 increase 1 ,queue 
+0x7c05 035520 compare 8 ,queue ,0xff 
+0x7c06 035521 nbranch bn_mulmod_256_1 ,true 
+0x7c07 035522 arg mem_tmp1_256 ,rega 
+0x7c08 035523 copy timeup ,contw 
+0x7c09 035524 branch bn_p256mod 
+:      035526 bn_p256mod:
+0x7c0a 035527 bpatchx patch3e_2 ,mem_patch3e 
+0x7c0b 035528 copy contw ,timeup 
+0x7c0c 035529 copy rega ,alarm 
+0x7c0d 035530 arg mem_tmp2_256 ,regb 
+0x7c0e 035531 copy regb ,contw 
+0x7c0f 035532 call memset0_4 
+0x7c10 035533 istore 8 ,contw 
+0x7c11 035534 add rega ,44 ,contr 
+0x7c12 035535 call memcpy8 
+0x7c13 035536 call memcpy12 
+0x7c14 035537 copy regb ,rega 
+0x7c15 035538 call bn_lshiftmod_256 
+0x7c16 035539 arg mem_tmp2_256 ,regb 
+0x7c17 035540 copy alarm ,rega 
+0x7c18 035541 copy timeup ,contw 
+0x7c19 035542 call bn_addmod_256 
+0x7c1a 035544 arg mem_tmp2_256 ,regb 
+0x7c1b 035545 copy regb ,contw 
+0x7c1c 035546 call memset0_4 
+0x7c1d 035547 istore 8 ,contw 
+0x7c1e 035548 add alarm ,48 ,contr 
+0x7c1f 035549 call memcpy16 
+0x7c20 035550 call memset0_4 
+0x7c21 035551 copy regb ,rega 
+0x7c22 035552 call bn_lshiftmod_256 
+0x7c23 035556 arg mem_tmp2_256 ,regb 
+0x7c24 035557 copy timeup ,rega 
+0x7c25 035558 copy rega ,contw 
+0x7c26 035559 call bn_addmod_256 
+0x7c27 035563 arg mem_tmp2_256 ,regb 
+0x7c28 035564 copy regb ,contw 
+0x7c29 035565 add alarm ,32 ,contr 
+0x7c2a 035566 call memcpy12 
+0x7c2b 035567 call memset0_4 
+0x7c2c 035568 istore 8 ,contw 
+0x7c2d 035569 add alarm ,56 ,contr 
+0x7c2e 035570 call memcpy8 
+0x7c2f 035571 copy timeup ,rega 
+0x7c30 035572 copy rega ,contw 
+0x7c31 035573 call bn_addmod_256 
+0x7c32 035577 arg mem_tmp2_256 ,regb 
+0x7c33 035578 copy regb ,contw 
+0x7c34 035579 add alarm ,36 ,contr 
+0x7c35 035580 call memcpy12 
+0x7c36 035581 add alarm ,52 ,contr 
+0x7c37 035582 call memcpy12 
+0x7c38 035583 add alarm ,52 ,contr 
+0x7c39 035584 call memcpy4 
+0x7c3a 035585 add alarm ,32 ,contr 
+0x7c3b 035586 call memcpy4 
+0x7c3c 035587 copy timeup ,rega 
+0x7c3d 035588 copy rega ,contw 
+0x7c3e 035589 call bn_addmod_256 
+0x7c3f 035592 arg mem_tmp2_256 ,regb 
+0x7c40 035593 copy regb ,contw 
+0x7c41 035594 add alarm ,44 ,contr 
+0x7c42 035595 call memcpy12 
+0x7c43 035596 call memset0_4 
+0x7c44 035597 istore 8 ,contw 
+0x7c45 035598 add alarm ,32 ,contr 
+0x7c46 035599 call memcpy4 
+0x7c47 035600 add alarm ,40 ,contr 
+0x7c48 035601 call memcpy4 
+0x7c49 035602 copy timeup ,rega 
+0x7c4a 035603 copy rega ,contw 
+0x7c4b 035604 call bn_submod_256 
+0x7c4c 035607 arg mem_tmp2_256 ,regb 
+0x7c4d 035608 copy regb ,contw 
+0x7c4e 035609 add alarm ,48 ,contr 
+0x7c4f 035610 call memcpy8 
+0x7c50 035611 call memcpy8 
+0x7c51 035612 force 0 ,pdata 
+0x7c52 035613 istore 8 ,contw 
+0x7c53 035614 add alarm ,36 ,contr 
+0x7c54 035615 call memcpy4 
+0x7c55 035616 add alarm ,44 ,contr 
+0x7c56 035617 call memcpy4 
+0x7c57 035618 copy timeup ,rega 
+0x7c58 035619 copy rega ,contw 
+0x7c59 035620 call bn_submod_256 
+0x7c5a 035623 arg mem_tmp2_256 ,regb 
+0x7c5b 035624 copy regb ,contw 
+0x7c5c 035625 add alarm ,52 ,contr 
+0x7c5d 035626 call memcpy12 
+0x7c5e 035627 add alarm ,32 ,contr 
+0x7c5f 035628 call memcpy12 
+0x7c60 035629 call memset0_4 
+0x7c61 035630 add alarm ,48 ,contr 
+0x7c62 035631 call memcpy4 
+0x7c63 035632 copy timeup ,rega 
+0x7c64 035633 copy rega ,contw 
+0x7c65 035634 call bn_submod_256 
+0x7c66 035637 arg mem_tmp2_256 ,regb 
+0x7c67 035638 copy regb ,contw 
+0x7c68 035639 add alarm ,56 ,contr 
+0x7c69 035640 call memcpy8 
+0x7c6a 035641 call memset0_4 
+0x7c6b 035642 add alarm ,36 ,contr 
+0x7c6c 035643 call memcpy12 
+0x7c6d 035644 call memset0_4 
+0x7c6e 035645 add alarm ,52 ,contr 
+0x7c6f 035646 call memcpy4 
+0x7c70 035647 copy timeup ,rega 
+0x7c71 035648 copy rega ,contw 
+0x7c72 035649 branch bn_submod_256 
+:      035652 bn_load_mem:
+0x7c73 035653 force 32 ,loopcnt 
+0x7c74 035654 arg mem_regext ,contw 
+0x7c75 035655 iadd contw ,contw 
+0x7c76 035656 branch memcpy 
+:      035658 bn_load_256:
+0x7c77 035659 force 8 ,loopcnt 
+0x7c78 035660 branch bn_load_0 
+:      035662 bn_sqrmod_256:
+0x7c79 035663 copy rega ,regb 
+0x7c7a 035664 branch bn_mulmod_256 
+:      035666 bn_add_256:
+0x7c7b 035667 force 8 ,loopcnt 
+0x7c7c 035668 branch bn_add + 1 
+:      035670 bn_addmod_256:
+0x7c7d 035671 call bn_add_256 
+0x7c7e 035672 copy contw ,rega 
+0x7c7f 035673 branch bn_lshiftmod_ismod_256 
+:      035675 bn_lshiftmod_256:
+0x7c80 035676 call bn_lshift_256 
+:      035677 bn_lshiftmod_ismod_256:
+0x7c81 035678 isolate1 0 ,regc 
+0x7c82 035679 branch bn_lshiftmod_p_256 ,true 
+0x7c83 035680 arg mem_p_256 ,regb 
+0x7c84 035681 copy rega ,regc 
+0x7c85 035682 increase -32 ,rega 
+0x7c86 035683 call bn_bigeq_256 
+0x7c87 035684 nrtn positive 
+0x7c88 035685 copy regc ,rega 
+0x7c89 035686 branch sub_p2_256 
+:      035688 bn_lshiftmod_p_256:
+0x7c8a 035689 call sub_p2_256 
+0x7c8b 035691 copy rega ,regc 
+0x7c8c 035692 increase -32 ,rega 
+0x7c8d 035693 arg mem_p_256 ,regb 
+0x7c8e 035694 call bn_bigeq_256 
+0x7c8f 035695 nrtn positive 
+0x7c90 035696 copy regc ,rega 
+0x7c91 035697 branch sub_p2_256 
+:      035700 sub_p2_256:
+0x7c92 035701 increase -32 ,rega 
+0x7c93 035702 arg mem_p_256 ,regb 
+0x7c94 035703 copy rega ,contw 
+0x7c95 035704 branch bn_sub_256 
+:      035709 bn_submod_256:
+0x7c96 035710 call bn_sub_256 
+0x7c97 035712 branch bn_submod_256_np ,true 
+0x7c98 035715 add contw ,-32 ,rega 
+0x7c99 035716 arg mem_p_256 ,regb 
+0x7c9a 035717 call bn_bigeq_256 
+0x7c9b 035718 nrtn positive 
+0x7c9c 035719 arg mem_p_256 ,regb 
+0x7c9d 035720 add contw ,-32 ,rega 
+0x7c9e 035722 copy rega ,contw 
+0x7c9f 035723 branch bn_sub_256 
+:      035724 bn_submod_256_np:
+0x7ca0 035725 add contw ,-32 ,rega 
+0x7ca1 035726 arg mem_p_256 ,regb 
+0x7ca2 035727 copy rega ,contw 
+0x7ca3 035728 call bn_add_256 
+0x7ca4 035730 rtn true 
+0x7ca5 035731 add contw ,-32 ,rega 
+0x7ca6 035732 arg mem_p_256 ,regb 
+0x7ca7 035733 copy rega ,contw 
+0x7ca8 035734 branch bn_add_256 
+:      035738 bn_sub_256:
+0x7ca9 035739 force 8 ,loopcnt 
+0x7caa 035740 branch bn_sub + 1 
+:      035742 bn_rshift_256:
+0x7cab 035743 force 8 ,loopcnt 
+0x7cac 035744 increase 28 ,rega 
+0x7cad 035745 branch bn_rshift 
+:      035747 bn_lshift_256:
+0x7cae 035748 force 8 ,loopcnt 
+0x7caf 035749 force 0 ,regc 
+0x7cb0 035750 branch bn_lshift_0 
+:      035752 bn_bigeq_256:
+0x7cb1 035753 force 8 ,loopcnt 
+0x7cb2 035754 increase 28 ,rega 
+0x7cb3 035755 increase 28 ,regb 
+0x7cb4 035756 branch bn_bigeq_0 
+:      035759 bn_eq_zero_256:
+0x7cb5 035760 ifetch 8 ,contr 
+0x7cb6 035761 nrtn blank 
+0x7cb7 035762 branch bn_eq_zero 
+:      035767 bn_rshifteven_256:
+0x7cb8 035768 copy rega ,alarm 
+:      035769 bn_rshifteven_256_1:
+0x7cb9 035770 copy alarm ,rega 
+0x7cba 035771 ifetch 1 ,rega 
+0x7cbb 035772 isolate1 0 ,pdata 
+0x7cbc 035773 rtn true 
+0x7cbd 035774 call bn_rshift_256 
+0x7cbe 035775 ifetch 1 ,regb 
+0x7cbf 035776 isolate0 0 ,pdata 
+0x7cc0 035777 branch bn_rshifteven_256_0 ,true 
+0x7cc1 035778 arg mem_p_256 ,rega 
+0x7cc2 035779 copy regb ,contw 
+0x7cc3 035780 call bn_add_256 
+0x7cc4 035781 ifetch 1 ,regb 
+0x7cc5 035782 iadd regc ,pdata 
+0x7cc6 035783 istore 1 ,regb 
+0x7cc7 035784 increase -32 ,regb 
+:      035785 bn_rshifteven_256_0:
+0x7cc8 035786 add regb ,32 ,rega 
+0x7cc9 035787 force 9 ,loopcnt 
+0x7cca 035788 call bn_rshift 
+0x7ccb 035789 branch bn_rshifteven_256_1 
+:      035793 ui_init:
+0x7ccc 035794 call lpm_disable_exen_output 
+0x7ccd 035795 rtn wake 
+0x7cce 035796 call ui_button_init 
+0x7ccf 035797 call ui_timer_init 
+0x7cd0 035798 branch ui_led_init_global 
+:      035800 ui_dispatch:
+0x7cd1 035801 call ui_led_dispatch 
+0x7cd2 035803 branch ui_timer_check 
+:      035805 ui_button_init:
+0x7cd3 035806 fetch 1 ,mem_ui_button_gpio 
+0x7cd4 035807 rtneq ui_button_gpio_disable 
+0x7cd5 035808 iforce temp 
+0x7cd6 035809 call gpio_config_output 
+0x7cd7 035810 fetcht 1 ,mem_ui_button_gpio 
+0x7cd8 035811 call gpio_out_inactive 
+0x7cd9 035812 nop 100 
+0x7cda 035813 fetcht 1 ,mem_ui_button_gpio 
+0x7cdb 035814 call gpio_config_input 
+0x7cdc 035815 branch ui_button_polling 
+:      035819 ui_button_polling:
+0x7cdd 035820 bpatchx patch3e_3 ,mem_patch3e 
+0x7cde 035821 fetch 1 ,mem_ui_button_gpio 
+0x7cdf 035822 rtneq ui_button_gpio_disable 
+0x7ce0 035823 copy pdata ,temp 
+0x7ce1 035824 call gpio_get_bit 
+0x7ce2 035825 nbranch ui_button_up ,true 
+:      035827 ui_button_down:
+0x7ce3 035828 call ui_button_check_long_press 
+0x7ce4 035829 fetch 2 ,mem_ui_state_map 
+0x7ce5 035830 set1 ui_state_btn_down 
+0x7ce6 035831 store 2 ,mem_ui_state_map 
+0x7ce7 035832 fetch 1 ,mem_ui_button_last_state 
+0x7ce8 035833 rtneq ui_button_state_down 
+0x7ce9 035834 jam ui_button_state_down ,mem_ui_button_last_state 
+0x7cea 035836 fetch 1 ,mem_ui_button_timeout 
+0x7ceb 035837 store 1 ,mem_ui_button_timer 
+0x7cec 035838 call lpm_button_get_wake_lock 
+0x7ced 035839 jam bt_evt_button_down ,mem_fifo_temp 
+0x7cee 035840 branch ui_ipc_send_event 
+:      035841 ui_button_up:
+0x7cef 035842 fetch 2 ,mem_ui_state_map 
+0x7cf0 035843 set0 ui_state_btn_down 
+0x7cf1 035844 store 2 ,mem_ui_state_map 
+0x7cf2 035845 fetch 1 ,mem_ui_button_last_state 
+0x7cf3 035846 rtneq ui_button_state_up 
+0x7cf4 035847 jam ui_button_state_up ,mem_ui_button_last_state 
+0x7cf5 035849 jam 0 ,mem_ui_button_timer 
+0x7cf6 035850 call lpm_button_clean_wake_lock 
+0x7cf7 035851 jam bt_evt_button_up ,mem_fifo_temp 
+0x7cf8 035852 branch ui_ipc_send_event 
+:      035854 ui_button_check_long_press:
+0x7cf9 035855 fetch 1 ,mem_ui_button_timer 
+0x7cfa 035856 rtn blank 
+0x7cfb 035857 increase -1 ,pdata 
+0x7cfc 035858 store 1 ,mem_ui_button_timer 
+0x7cfd 035859 nrtn blank 
+0x7cfe 035861 jam bt_evt_button_long_pressed ,mem_fifo_temp 
+0x7cff 035862 branch ui_ipc_send_event 
+:      035864 lpm_button_get_wake_lock:
+0x7d00 035865 arg wake_lock_button ,queue 
+0x7d01 035866 branch lpm_get_wake_lock 
+:      035868 lpm_button_clean_wake_lock:
+0x7d02 035869 arg wake_lock_button ,queue 
+0x7d03 035870 branch lpm_put_wake_lock 
+:      035892 calc_curr_struct_prt:
+0x7d04 035893 fetch 2 ,mem_ui_led_struct_ptr 
+0x7d05 035894 mul32 rega ,led_offset_length ,regb 
+0x7d06 035895 iadd regb ,regb 
+0x7d07 035896 rtn 
+:      035899 ui_led_init_global:
+0x7d08 035900 fetch 1 ,mem_ui_led_struct_num 
+0x7d09 035901 rtn blank 
+0x7d0a 035902 copy pdata ,loopcnt 
+0x7d0b 035903 fetch 2 ,mem_ui_led_struct_ptr 
+0x7d0c 035904 copy pdata ,regb 
+:      035905 ui_led_init_loop:
+0x7d0d 035906 add regb ,led_offset_led_gpio ,regc 
+0x7d0e 035907 ifetcht 1 ,regc 
+0x7d0f 035908 call gpio_config_output 
+0x7d10 035909 call ui_led_off_static 
+0x7d11 035910 increase led_offset_length ,regb 
+0x7d12 035911 loop ui_led_init_loop 
+0x7d13 035912 rtn 
+:      035916 ui_led_on_global:
+0x7d14 035917 call calc_curr_struct_prt 
+0x7d15 035918 setarg ui_led_state_lighting 
+0x7d16 035919 istore 1 ,regb 
+0x7d17 035920 call ui_led_stop_timer 
+0x7d18 035921 branch ui_led_on_static 
+:      035925 ui_led_blink_stop_global:
+:      035926 ui_led_off_global:
+0x7d19 035927 call calc_curr_struct_prt 
+0x7d1a 035928 setarg ui_led_state_darking 
+0x7d1b 035929 istore 1 ,regb 
+0x7d1c 035930 call ui_led_stop_timer 
+0x7d1d 035931 branch ui_led_off_static 
+:      035935 ui_led_blink_start_global:
+0x7d1e 035936 call calc_curr_struct_prt 
+0x7d1f 035937 setarg ui_led_state_blink_start 
+0x7d20 035938 istore 1 ,regb 
+0x7d21 035939 setarg led_infinite_flash_num 
+0x7d22 035940 istore 1 ,contw 
+0x7d23 035941 branch ui_led_off_static 
+:      035946 ui_led_set_style_global:
+0x7d24 035947 call calc_curr_struct_prt 
+0x7d25 035948 arg led_offset_length ,loopcnt 
+0x7d26 035949 copy regc ,contr 
+0x7d27 035950 copy regb ,contw 
+0x7d28 035951 branch memcpy_fast 
+:      035955 ui_led_dispatch:
+0x7d29 035956 fetch 1 ,mem_ui_led_struct_num 
+0x7d2a 035957 rtn blank 
+0x7d2b 035958 arg 0 ,rega 
+:      035959 ui_led_blink_polling:
+0x7d2c 035960 call ui_led_change_style_by_type 
+0x7d2d 035961 increase 1 ,rega 
+0x7d2e 035962 fetch 1 ,mem_ui_led_struct_num 
+0x7d2f 035963 isub rega ,null 
+0x7d30 035964 rtn zero 
+0x7d31 035965 branch ui_led_blink_polling 
+:      035968 ui_led_off_static:
+0x7d32 035969 add regb ,led_offset_led_gpio ,regc 
+0x7d33 035970 ifetcht 1 ,regc 
+0x7d34 035971 branch gpio_out_inactive 
+:      035974 ui_led_on_static:
+0x7d35 035975 add regb ,led_offset_led_gpio ,regc 
+0x7d36 035976 ifetcht 1 ,regc 
+0x7d37 035977 branch gpio_out_active 
+:      035981 ui_led_change_style_by_type:
+0x7d38 035982 add rega ,ui_led_blink ,queue 
+0x7d39 035983 call timer_check 
+0x7d3a 035984 nrtn blank 
+0x7d3b 035986 call calc_curr_struct_prt 
+0x7d3c 035988 ifetch 1 ,regb 
+0x7d3d 035990 beq ui_led_state_lighting ,ui_led_on_static 
+0x7d3e 035991 beq ui_led_state_darking ,ui_led_off_static 
+0x7d3f 035992 beq ui_led_state_blink_stop ,ui_led_off_static 
+0x7d40 035993 beq ui_led_state_blink_darking ,ui_led_blink_state_darking 
+:      035994 ui_led_blink_state_lighting:
+0x7d41 035995 call ui_led_on_static 
+0x7d42 035996 add regb ,led_offset_cb_ledon ,regc 
+0x7d43 035997 call push_stack 
+0x7d44 035998 ifetch 2 ,regc 
+0x7d45 035999 call callback_func 
+0x7d46 036000 call pop_stack 
+0x7d47 036001 setarg ui_led_state_blink_darking 
+0x7d48 036002 istore 1 ,regb 
+0x7d49 036003 add regb ,led_offset_on_time ,regc 
+0x7d4a 036004 ifetch 2 ,regc 
+0x7d4b 036005 branch ui_led_blink_timer_start 
+:      036008 ui_led_blink_state_darking:
+0x7d4c 036009 call ui_led_off_static 
+0x7d4d 036010 add regb ,led_offset_cb_ledoff ,regc 
+0x7d4e 036011 call push_stack 
+0x7d4f 036012 ifetch 2 ,regc 
+0x7d50 036013 call callback_func 
+0x7d51 036014 call pop_stack 
+0x7d52 036016 add regb ,led_offset_blink_count ,regc 
+0x7d53 036017 ifetch 1 ,regc 
+0x7d54 036018 beq led_infinite_flash_num ,ui_led_blink_infinite 
+0x7d55 036019 increase -1 ,pdata 
+0x7d56 036020 istore 1 ,regc 
+0x7d57 036021 branch ui_led_blink_stop_global ,blank 
+:      036022 ui_led_blink_infinite:
+0x7d58 036023 setarg ui_led_state_blink_lighting 
+0x7d59 036024 istore 1 ,regb 
+0x7d5a 036025 add regb ,led_offset_off_time ,regc 
+0x7d5b 036026 ifetch 2 ,regc 
+:      036027 ui_led_blink_timer_start:
+0x7d5c 036028 add rega ,ui_led_blink ,queue 
+0x7d5d 036029 branch timer_init 
+:      036031 ui_led_stop_timer:
+0x7d5e 036032 setarg 0 
+0x7d5f 036033 branch ui_led_blink_timer_start 
+:      036039 ui_timer_timeout:
+0x7d60 036040 setarg 0x1000 
+0x7d61 036041 lshift16 pdata ,pdata 
+0x7d62 036042 iadd regb ,regb 
+0x7d63 036043 rtn 
+:      036045 ui_timer_check:
+0x7d64 036046 bpatchx patch3e_4 ,mem_patch3e 
+0x7d65 036047 arg 0 ,rega 
+0x7d66 036048 fetcht 4 ,mem_ui_timer_last_btclk 
+0x7d67 036049 copy clkn_bt ,regb 
+0x7d68 036050 copy regb ,pdata 
+0x7d69 036051 isub temp ,null 
+0x7d6a 036052 ncall ui_timer_timeout ,positive 
+:      036054 ui_timer_check_loop:
+0x7d6b 036055 copy regb ,pdata 
+0x7d6c 036056 increase 160 ,temp 
+0x7d6d 036057 increase 160 ,temp 
+0x7d6e 036058 isub temp ,null 
+0x7d6f 036059 nbranch ui_timer_check_end ,positive 
+0x7d70 036060 increase 1 ,rega 
+0x7d71 036061 and rega ,0x0f ,pdata 
+0x7d72 036062 nbranch ui_timer_check_loop ,blank 
+0x7d73 036063 arg 0 ,rega 
+0x7d74 036064 call ui_timer_check_send_evt 
+:      036065 ui_timer_init:
+0x7d75 036066 copy clkn_bt ,pdata 
+0x7d76 036067 store 4 ,mem_ui_timer_last_btclk 
+0x7d77 036068 rtn 
+:      036069 ui_timer_check_end:
+0x7d78 036070 bpatchx patch3e_5 ,mem_patch3e 
+0x7d79 036071 copy rega ,pdata 
+0x7d7a 036072 rtn blank 
+0x7d7b 036073 increase -160 ,temp 
+0x7d7c 036074 increase -160 ,temp 
+0x7d7d 036075 set0 28 ,temp 
+0x7d7e 036076 storet 4 ,mem_ui_timer_last_btclk 
+:      036077 ui_timer_check_send_evt:
+0x7d7f 036078 branch app_evt_timer 
+:      036085 ui_ipc_get_lock:
+0x7d80 036086 jam 1 ,mem_ipc_lock_bt 
+:      036087 ui_ipc_get_lock_wait:
+0x7d81 036088 fetch 1 ,mem_ipc_lock_c51 
+0x7d82 036089 nbranch ui_ipc_get_lock_wait ,blank 
+0x7d83 036090 rtn 
+:      036092 ui_ipc_put_lock:
+0x7d84 036093 jam 0 ,mem_ipc_lock_bt 
+0x7d85 036094 rtn 
+:      036098 ui_ipc_send_event:
+0x7d86 036099 bpatchx patch3e_6 ,mem_patch3e 
+0x7d87 036100 call ui_ipc_get_lock 
+0x7d88 036101 copy rega ,pdata 
+0x7d89 036102 store 4 ,mem_ipc_rega_temp 
+0x7d8a 036103 arg mem_ipc_fifo_bt2c51 ,rega 
+0x7d8b 036104 call fifo_in 
+0x7d8c 036105 fetch 4 ,mem_ipc_rega_temp 
+0x7d8d 036106 copy pdata ,rega 
+0x7d8e 036107 branch ui_ipc_put_lock 
+:      036109 ui_ipc_send_cmd:
+0x7d8f 036110 bpatchx patch3e_7 ,mem_patch3e 
+0x7d90 036111 call ui_ipc_get_lock 
+0x7d91 036112 copy rega ,pdata 
+0x7d92 036113 store 4 ,mem_ipc_rega_temp 
+0x7d93 036114 arg mem_ipc_fifo_c512bt ,rega 
+0x7d94 036115 call fifo_in 
+0x7d95 036116 fetch 4 ,mem_ipc_rega_temp 
+0x7d96 036117 copy pdata ,rega 
+0x7d97 036118 branch ui_ipc_put_lock 
+:      036120 ui_ipc_clean_all_fifo:
+0x7d98 036121 setarg 0 
+0x7d99 036122 store util_fifo_len ,mem_ipc_fifo_c512bt 
+0x7d9a 036123 store util_fifo_len ,mem_ipc_fifo_bt2c51 
+0x7d9b 036124 rtn 
+:      036126 check_51cmd:
+0x7d9c 036127 bpatchx patch3f_0 ,mem_patch3f 
+0x7d9d 036128 fetch 1 ,mem_hci_cmd 
+0x7d9e 036129 nrtn blank 
+0x7d9f 036130 arg mem_ipc_fifo_c512bt ,rega 
+0x7da0 036131 call fifo_is_empty 
+0x7da1 036132 rtn blank 
+0x7da2 036133 jam ipc_continue_process ,mem_ipc_skip_continue_proc 
+0x7da3 036134 call check_51cmd_once 
+0x7da4 036135 fetch 1 ,mem_ipc_skip_continue_proc 
+0x7da5 036136 branch check_51cmd ,blank 
+0x7da6 036137 rtn 
+:      036139 check_51cmd_once:
+0x7da7 036140 call ui_ipc_get_lock 
+0x7da8 036141 arg mem_ipc_fifo_c512bt ,rega 
+0x7da9 036142 call fifo_out 
+0x7daa 036143 copy pdata ,temp 
+0x7dab 036144 call ui_ipc_put_lock 
+0x7dac 036145 bpatchx patch3f_1 ,mem_patch3f 
+0x7dad 036146 copy temp ,pdata 
+0x7dae 036147 rtn blank 
+0x7daf 036148 beq bt_cmd_start_discovery ,check_51cmd_start_discovery 
+0x7db0 036149 beq bt_cmd_stop_discovery ,check_51cmd_stop_discovery 
+0x7db1 036150 beq bt_cmd_reconnect ,check_51cmd_reconnect 
+0x7db2 036151 beq bt_cmd_enter_sniff_subrating ,check_51cmd_enter_sniff_subrating 
+0x7db3 036152 beq bt_cmd_exit_sniff_subrating ,check_51cmd_exit_sniff_subrating 
+0x7db4 036153 beq bt_cmd_sniff_test ,check_51cmd_sniff_test 
+0x7db5 036154 beq bt_cmd_start_inquiry ,check_51cmd_inq 
+0x7db6 036155 beq bt_cmd_stop_inquiry ,check_51cmd_stop_inq 
+0x7db7 036156 beq bt_cmd_start_adv ,check_51cmd_adv 
+0x7db8 036157 beq bt_cmd_stop_adv ,check_51cmd_stop_adv 
+0x7db9 036158 beq bt_cmd_start_direct_adv ,check_51cmd_direct_adv 
+0x7dba 036159 beq bt_cmd_stop_direct_adv ,check_51cmd_stop_direct_adv 
+0x7dbb 036160 beq bt_cmd_led_off ,check_51cmd_led_off 
+0x7dbc 036161 beq bt_cmd_led_on ,check_51cmd_led_on 
+0x7dbd 036162 beq bt_cmd_led_blink ,check_51cmd_led_start_blink 
+0x7dbe 036163 beq bt_cmd_le_start_conn ,check_51cmd_le_start_con 
+0x7dbf 036164 beq bt_cmd_le_start_scan ,check_51cmd_start_scan 
+0x7dc0 036165 beq bt_cmd_le_stop_scan ,check_51cmd_stop_scan 
+0x7dc1 036166 beq bt_cmd_enter_hibernate ,check_51cmd_hibernate 
+0x7dc2 036167 beq bt_cmd_le_smp_security_request ,check_51cmd_le_smp_sec_req 
+0x7dc3 036168 beq bt_cmd_bb_reconn_cancel ,check_51cmd_bb_reconn_cancel 
+0x7dc4 036170 store 1 ,mem_fifo_temp 
+0x7dc5 036171 bpatchx patch3f_2 ,mem_patch3f 
+0x7dc6 036172 call lmo_fifo_check 
+0x7dc7 036173 nbranch check_51cmd_restore ,blank 
+:      036174 check_51cmd_once_continue:
+0x7dc8 036175 fetch 1 ,mem_fifo_temp 
+0x7dc9 036176 bmark0 mark_context ,check_51cmd_check_idle 
+0x7dca 036177 beq bt_cmd_disconnect ,check_51cmd_disconnect 
+0x7dcb 036178 beq bt_cmd_enter_sniff ,cmd_in_sniff 
+0x7dcc 036179 beq bt_cmd_exit_sniff ,cmd_exit_sniff 
+0x7dcd 036180 beq bt_cmd_set_pin_code ,check_51cmd_pincode 
+0x7dce 036181 beq bt_cmd_le_disconnect ,check_51cmd_le_disconnect 
+0x7dcf 036182 beq bt_cmd_le_update_conn ,check_51cmd_ble_update_connect_param 
+0x7dd0 036183 beq bt_cmd_role_switch ,check_51cmd_role_switch 
+0x7dd1 036184 beq bt_cmd_store_reconn_info_le ,eeprom_store_le_reconn_info 
+0x7dd2 036185 beq bt_cmd_store_reconn_info_bt ,eeprom_store_bd_reconn_info 
+0x7dd3 036186 beq bt_cmd_dhkey_not_accept ,check_51cmd_dhkey_not_accept 
+0x7dd4 036187 beq bt_cmd_store_reconn_info ,check_51cmd_store_reconn_info 
+0x7dd5 036188 rtn 
+:      036190 check_51cmd_check_idle:
+0x7dd6 036191 store 1 ,mem_fifo_temp 
+0x7dd7 036192 call context_check_idle 
+0x7dd8 036193 branch check_51cmd_restore ,zero 
+0x7dd9 036194 call context_search_plap 
+0x7dda 036195 nrtn zero 
+:      036196 check_51cmd_restore:
+0x7ddb 036197 jam ipc_skip_continue_process ,mem_ipc_skip_continue_proc 
+0x7ddc 036198 branch ui_ipc_send_cmd 
+:      036203 check_51cmd_start_discovery:
+0x7ddd 036204 fetch 2 ,mem_ui_state_map 
+0x7dde 036205 set1 ui_state_bt_discovery 
+0x7ddf 036206 store 2 ,mem_ui_state_map 
+0x7de0 036207 jam 3 ,mem_scan_mode 
+0x7de1 036208 rtn 
+:      036212 check_51cmd_stop_discovery:
+0x7de2 036213 jam 0 ,mem_hid_handshake_timer_count 
+0x7de3 036214 jam 0 ,mem_scan_mode 
+0x7de4 036215 fetch 2 ,mem_ui_state_map 
+0x7de5 036216 set0 ui_state_bt_discovery 
+0x7de6 036217 store 2 ,mem_ui_state_map 
+0x7de7 036218 rtn 
+:      036222 check_51cmd_reconnect:
+0x7de8 036223 jam hci_cmd_create_conn ,mem_hci_cmd 
+0x7de9 036224 rtn 
+:      036228 check_51cmd_disconnect:
+0x7dea 036229 jam lmp_detach ,mem_lmo_opcode2 
+0x7deb 036230 jam other_end_terminated ,mem_disconn_reason_send 
+0x7dec 036231 rtn 
+:      036235 check_51cmd_enter_sniff_subrating:
+0x7ded 036236 rtn 
+:      036240 check_51cmd_exit_sniff_subrating:
+0x7dee 036241 rtn 
+:      036245 check_51cmd_sniff_test:
+0x7def 036246 rtn 
+:      036250 check_51cmd_pincode:
+0x7df0 036251 jam pincode_state_pincode_ready ,mem_pincode_state 
+0x7df1 036252 branch cmd_pair 
+:      036256 check_51cmd_inq:
+0x7df2 036257 rtn 
+:      036261 check_51cmd_stop_inq:
+0x7df3 036262 rtn 
+:      036266 check_51cmd_adv:
+0x7df4 036267 jam on ,mem_le_adv_enable 
+0x7df5 036268 jam adv_ind ,mem_le_adv_type 
+0x7df6 036269 fetch 2 ,mem_ui_state_map 
+0x7df7 036270 set1 ui_state_ble_adv ,pdata 
+0x7df8 036271 store 2 ,mem_ui_state_map 
+0x7df9 036272 rtn 
+:      036276 check_51cmd_stop_adv:
+0x7dfa 036277 fetch 2 ,mem_ui_state_map 
+0x7dfb 036278 set0 ui_state_ble_adv ,pdata 
+0x7dfc 036279 store 2 ,mem_ui_state_map 
+0x7dfd 036280 jam off ,mem_le_adv_enable 
+0x7dfe 036281 rtn 
+:      036285 check_51cmd_direct_adv:
+0x7dff 036286 jam on ,mem_le_adv_enable 
+0x7e00 036287 jam adv_direct_ind ,mem_le_adv_type 
+0x7e01 036288 fetch 2 ,mem_ui_state_map 
+0x7e02 036289 set1 ui_state_ble_adv ,pdata 
+0x7e03 036290 store 2 ,mem_ui_state_map 
+0x7e04 036291 rtn 
+:      036295 check_51cmd_stop_direct_adv:
+0x7e05 036296 fetch 2 ,mem_ui_state_map 
+0x7e06 036297 set0 ui_state_ble_adv ,pdata 
+0x7e07 036298 store 2 ,mem_ui_state_map 
+0x7e08 036299 jam off ,mem_le_adv_enable 
+0x7e09 036300 rtn 
+:      036304 check_51cmd_le_disconnect:
+0x7e0a 036305 setarg 20 
+0x7e0b 036306 store 2 ,mem_le_superto 
+0x7e0c 036307 store 2 ,mem_le_init_superto 
+0x7e0d 036308 branch le_send_terminate_ind_user_terminated 
+:      036312 check_51cmd_ble_update_connect_param:
+0x7e0e 036313 branch le_l2cap_tx_update_req 
+:      036317 check_51cmd_led_off:
+0x7e0f 036318 arg 0 ,rega 
+0x7e10 036319 branch ui_led_off_global 
+:      036323 check_51cmd_led_on:
+0x7e11 036324 arg 0 ,rega 
+0x7e12 036325 branch ui_led_on_global 
+:      036329 check_51cmd_led_start_blink:
+0x7e13 036330 arg 0 ,rega 
+0x7e14 036331 branch ui_led_blink_start_global 
+:      036335 check_51cmd_le_start_con:
+0x7e15 036336 jam on ,mem_le_scan_enable 
+0x7e16 036337 jam hci_cmd_le_create_conn ,mem_hci_cmd 
+0x7e17 036340 rtn 
+:      036344 check_51cmd_start_scan:
+0x7e18 036345 jam on ,mem_le_scan_enable 
+0x7e19 036346 rtn 
+:      036350 check_51cmd_stop_scan:
+0x7e1a 036351 jam off ,mem_le_scan_enable 
+0x7e1b 036352 jam 0 ,mem_hci_cmd 
+0x7e1c 036353 rtn 
+:      036357 check_51cmd_hibernate:
+0x7e1d 036358 fetch 2 ,mem_cb_before_hibernate 
+0x7e1e 036359 call callback_func 
+0x7e1f 036360 fetch 1 ,mem_ui_button_gpio 
+0x7e20 036361 beq ui_button_gpio_disable ,check_51cmd_hibernate_btn_disabled 
+0x7e21 036362 copy pdata ,temp 
+0x7e22 036363 call gpio_config_input 
+:      036364 check_51cmd_hibernate_btn_disabled:
+0x7e23 036365 call ui_ipc_clean_all_fifo 
+0x7e24 036366 branch lpm_hibernate 
+:      036370 check_51cmd_le_smp_sec_req:
+0x7e25 036371 branch le_send_smp_security_request 
+:      036375 check_51cmd_role_switch:
+0x7e26 036376 jam lmp_slot_offset ,mem_lmo_opcode2 
+0x7e27 036377 set1 mark_switch_initiated ,mark 
+0x7e28 036378 nrtn master 
+0x7e29 036379 jam switch_flag_init ,mem_switch_flag 
+0x7e2a 036380 jam lmp_switch_req ,mem_lmo_opcode2 
+0x7e2b 036381 fetch 1 ,mem_connection_options 
+0x7e2c 036382 set0 connection_switch ,pdata 
+0x7e2d 036383 store 1 ,mem_connection_options 
+0x7e2e 036384 rtn 
+:      036388 check_51cmd_bb_reconn_cancel:
+0x7e2f 036389 force page_length_timer ,queue 
+0x7e30 036390 branch timer_stop 
+:      036394 check_51cmd_dhkey_not_accept:
+0x7e31 036395 call tid_set_reply 
+0x7e32 036396 jam lmp_dhkey_check ,mem_lmi_opcode2 
+0x7e33 036397 branch parse_lmp_dhkey_check_reject 
+:      036400 ui_check_paring_button:
+0x7e34 036401 fetch 1 ,mem_ui_state_map 
+0x7e35 036402 rtnbit0 ui_state_btn_down 
+0x7e36 036403 rtnbit0 ui_state_bt_reconnect 
+0x7e37 036404 branch check_51cmd_bb_reconn_cancel 
+:      036409 queue_init:
+0x7e38 036410 fetch 2 ,mem_queue_ptr 
+0x7e39 036411 add pdata ,queue_offset_curr_num ,contw 
+0x7e3a 036412 setarg 0 
+0x7e3b 036413 istore 3 ,contw 
+0x7e3c 036414 rtn 
+:      036418 queue_push:
+0x7e3d 036419 call disable_user 
+0x7e3e 036420 call queue_full 
+0x7e3f 036421 rtn blank 
+0x7e40 036422 fetch 2 ,mem_queue_ptr 
+0x7e41 036423 add pdata ,queue_offset_curr_num ,regb 
+0x7e42 036424 ifetcht 1 ,regb 
+0x7e43 036425 increase 1 ,temp 
+0x7e44 036426 istoret 1 ,regb 
+0x7e45 036428 ifetcht 1 ,pdata 
+0x7e46 036429 copy temp ,loopcnt 
+0x7e47 036430 add pdata ,queue_offset_write_ptr ,regb 
+0x7e48 036431 ifetch 1 ,regb 
+0x7e49 036432 imul32 temp ,pdata 
+0x7e4a 036433 iadd contr ,contw 
+0x7e4b 036434 copy rega ,contr 
+:      036435 calc_queue_next_ptr:
+0x7e4c 036436 call memcpy 
+0x7e4d 036437 call queue_get_size 
+0x7e4e 036438 pincrease -1 
+0x7e4f 036439 ifetcht 1 ,regb 
+0x7e50 036440 increase 1 ,temp 
+0x7e51 036441 iand temp ,temp 
+0x7e52 036442 istoret 1 ,regb 
+0x7e53 036443 branch enable_user 
+:      036448 queue_pop:
+0x7e54 036449 call disable_user 
+0x7e55 036450 call queue_empty 
+0x7e56 036451 rtn blank 
+0x7e57 036452 fetch 2 ,mem_queue_ptr 
+0x7e58 036453 add pdata ,queue_offset_curr_num ,regb 
+0x7e59 036454 ifetcht 1 ,regb 
+0x7e5a 036455 increase -1 ,temp 
+0x7e5b 036456 istoret 1 ,regb 
+0x7e5c 036457 ifetcht 1 ,pdata 
+0x7e5d 036458 copy temp ,loopcnt 
+0x7e5e 036459 add pdata ,queue_offset_read_ptr ,regb 
+0x7e5f 036460 ifetch 1 ,regb 
+0x7e60 036461 imul32 temp ,pdata 
+0x7e61 036462 iadd contr ,contr 
+0x7e62 036463 increase 1 ,contr 
+0x7e63 036464 copy rega ,contw 
+0x7e64 036465 branch calc_queue_next_ptr 
+:      036469 queue_empty:
+0x7e65 036470 fetch 2 ,mem_queue_ptr 
+0x7e66 036471 add pdata ,queue_offset_curr_num ,contr 
+0x7e67 036472 ifetch 1 ,contr 
+0x7e68 036473 rtn 
+:      036476 queue_full:
+0x7e69 036477 call queue_get_size 
+0x7e6a 036478 ifetcht 1 ,contr 
+0x7e6b 036479 isub temp ,pdata 
+0x7e6c 036480 rtn 
+:      036483 queue_get_size:
+0x7e6d 036484 fetch 2 ,mem_queue_ptr 
+0x7e6e 036485 add pdata ,queue_offset_length ,contr 
+0x7e6f 036486 ifetch 1 ,contr 
+0x7e70 036487 rtn 
+:      036495 right_shift_n:
+0x7e71 036496 sub loopcnt ,0 ,null 
+0x7e72 036497 rtn zero 
+:      036498 right_shift_n_loop:
+0x7e73 036499 rshift pdata ,pdata 
+0x7e74 036500 loop right_shift_n_loop 
+0x7e75 036501 rtn 
+:      036504 left_shift_n:
+0x7e76 036505 force 1 ,pdata 
+0x7e77 036506 sub loopcnt ,0 ,null 
+0x7e78 036507 rtn zero 
+:      036508 left_shift_n_loop:
+0x7e79 036509 lshift pdata ,pdata 
+0x7e7a 036510 loop left_shift_n_loop 
+0x7e7b 036511 rtn 
+:      036512 push_stack:
+0x7e7c 036513 deposit contw 
+0x7e7d 036514 store 2 ,mem_contw 
+0x7e7e 036515 storet 8 ,mem_temp 
+0x7e7f 036516 deposit timeup 
+0x7e80 036517 store 4 ,mem_timeup 
+0x7e81 036518 call push_stack_rega_b_c 
+0x7e82 036519 deposit contr 
+0x7e83 036520 store 2 ,mem_contr 
+0x7e84 036521 rtn 
+:      036523 push_stack_rega_b_c:
+0x7e85 036524 deposit rega 
+0x7e86 036525 store 4 ,mem_rega 
+0x7e87 036526 deposit regb 
+0x7e88 036527 store 4 ,mem_regb 
+0x7e89 036528 deposit regc 
+0x7e8a 036529 store 3 ,mem_regc 
+0x7e8b 036530 rtn 
+:      036532 pop_stack:
+0x7e8c 036533 fetcht 8 ,mem_temp 
+0x7e8d 036534 fetch 4 ,mem_timeup 
+0x7e8e 036535 iforce timeup 
+0x7e8f 036536 call pop_stack_rega_b_c 
+0x7e90 036537 fetch 2 ,mem_contw 
+0x7e91 036538 iforce contw 
+0x7e92 036539 fetch 2 ,mem_contr 
+0x7e93 036540 iforce contr 
+0x7e94 036541 rtn 
+:      036543 pop_stack_rega_b_c:
+0x7e95 036544 fetch 4 ,mem_rega 
+0x7e96 036545 iforce rega 
+0x7e97 036546 fetch 4 ,mem_regb 
+0x7e98 036547 iforce regb 
+0x7e99 036548 fetch 3 ,mem_regc 
+0x7e9a 036549 iforce regc 
+0x7e9b 036550 rtn 
+:      036552 get_contw:
+0x7e9c 036553 fetch 2 ,mem_contw 
+0x7e9d 036554 copy pdata ,contw 
+0x7e9e 036555 rtn 
+:      036556 get_contr:
+0x7e9f 036557 fetch 2 ,mem_contr 
+0x7ea0 036558 copy pdata ,contr 
+0x7ea1 036559 rtn 
+:      036560 store_contw:
+0x7ea2 036561 copy contw ,pdata 
+0x7ea3 036562 store 2 ,mem_contw 
+0x7ea4 036563 rtn 
+:      036564 store_contr:
+0x7ea5 036565 copy contr ,pdata 
+0x7ea6 036566 store 2 ,mem_contr 
+0x7ea7 036567 rtn 
+:      036571 save_cont_pointers:
+0x7ea8 036572 copy contw ,pdata 
+0x7ea9 036573 store 2 ,mem_hold_contw 
+0x7eaa 036574 copy contr ,pdata 
+0x7eab 036575 store 2 ,mem_hold_contr 
+0x7eac 036576 rtn 
+:      036577 load_cont_pointers:
+0x7ead 036578 fetch 2 ,mem_hold_contw 
+0x7eae 036579 copy pdata ,contw 
+0x7eaf 036580 fetch 2 ,mem_hold_contr 
+0x7eb0 036581 copy pdata ,contr 
+0x7eb1 036582 rtn 
+:      036584 memcpy96:
+0x7eb2 036585 call memcpy32 
+:      036586 memcpy64:
+0x7eb3 036587 call memcpy32 
+0x7eb4 036588 branch memcpy32 
+:      036589 memcpy12:
+0x7eb5 036590 call memcpy8 
+:      036591 memcpy4:
+0x7eb6 036592 ifetch 4 ,contr 
+0x7eb7 036593 istore 4 ,contw 
+0x7eb8 036594 rtn 
+:      036595 memcpy8:
+0x7eb9 036596 ifetch 8 ,contr 
+0x7eba 036597 istore 8 ,contw 
+0x7ebb 036598 rtn 
+:      036600 memcpy48:
+0x7ebc 036601 call memcpy16 
+:      036602 memcpy32:
+0x7ebd 036603 call memcpy8 
+:      036604 memcpy24:
+0x7ebe 036605 call memcpy8 
+:      036606 memcpy16:
+0x7ebf 036607 call memcpy8 
+0x7ec0 036608 branch memcpy8 
+:      036612 delay_10ms:
+0x7ec1 036613 arg 10 ,loopcnt 
+:      036614 delay_ms_wait:
+0x7ec2 036615 nop 12000 
+0x7ec3 036616 loop delay_ms_wait 
+0x7ec4 036617 rtn 
+:      036619 bn_zero:
+0x7ec5 036620 force 3 ,loopcnt 
+:      036621 memset0:
+0x7ec6 036622 force 0 ,pdata 
+:      036623 memset8:
+0x7ec7 036624 istore 8 ,contw 
+0x7ec8 036625 loop memset8 
+0x7ec9 036626 rtn 
+:      036628 memset0_8:
+0x7eca 036629 force 0 ,pdata 
+0x7ecb 036630 istore 8 ,contw 
+0x7ecc 036631 rtn 
+:      036632 memset0_4:
+0x7ecd 036633 force 0 ,pdata 
+0x7ece 036634 istore 4 ,contw 
+0x7ecf 036635 rtn 
+:      036637 clear_mem_256:
+0x7ed0 036638 force 4 ,loopcnt 
+0x7ed1 036639 branch memset0 
+:      036640 clear_mem_512:
+0x7ed2 036641 force 8 ,loopcnt 
+0x7ed3 036642 branch memset0 
+:      036644 clear_mem:
+0x7ed4 036645 deposit loopcnt 
+0x7ed5 036646 rtn blank 
+0x7ed6 036647 setarg 0 
+:      036648 clear_mem_loop:
+0x7ed7 036649 istore 1 ,contw 
+0x7ed8 036650 loop clear_mem_loop 
+0x7ed9 036651 rtn 
+:      036654 clear_temp_block:
+0x7eda 036655 arg 32 ,loopcnt 
+0x7edb 036656 arg mem_temp_block0 ,contw 
+0x7edc 036657 branch clear_mem 
+:      036659 xor_loop:
+0x7edd 036660 ifetch 4 ,regc 
+0x7ede 036661 ifetcht 4 ,rega 
+0x7edf 036662 ixor temp ,pdata 
+0x7ee0 036663 istore 4 ,contw 
+0x7ee1 036664 increase 4 ,rega 
+0x7ee2 036665 increase 4 ,regc 
+0x7ee3 036666 loop xor_loop 
+0x7ee4 036667 rtn 
+:      036671 inverse_data:
+0x7ee5 036672 bpatchx patch3f_3 ,mem_patch3f 
+0x7ee6 036673 copy loopcnt ,pdata 
+0x7ee7 036674 sub pdata ,1 ,null 
+0x7ee8 036675 rtn positive 
+0x7ee9 036676 iadd rega ,regb 
+0x7eea 036677 increase -1 ,regb 
+0x7eeb 036678 rshift loopcnt ,loopcnt 
+:      036679 inverse_loop:
+0x7eec 036680 ifetcht 1 ,rega 
+0x7eed 036681 ifetch 1 ,regb 
+0x7eee 036682 istore 1 ,rega 
+0x7eef 036683 istoret 1 ,regb 
+0x7ef0 036684 increase -1 ,regb 
+0x7ef1 036685 increase 1 ,rega 
+0x7ef2 036686 loop inverse_loop 
+0x7ef3 036687 rtn 
+:      036690 memcpy_fast:
+0x7ef4 036691 deposit loopcnt 
+0x7ef5 036692 rtn blank 
+:      036693 memcpy_fast_loop:
+0x7ef6 036694 increase -8 ,loopcnt 
+0x7ef7 036695 call memcpy8 ,positive 
+0x7ef8 036696 rtn zero 
+0x7ef9 036697 branch memcpy_fast_loop ,positive 
+0x7efa 036698 increase 8 ,loopcnt 
+:      036699 memcpy_fast_loop_four:
+0x7efb 036700 increase -4 ,loopcnt 
+0x7efc 036701 call memcpy4 ,positive 
+0x7efd 036702 rtn zero 
+0x7efe 036703 branch memcpy_fast_loop_four ,positive 
+0x7eff 036704 increase 4 ,loopcnt 
+0x7f00 036705 branch memcpy 
+:      036707 memcpy:
+0x7f01 036708 deposit loopcnt 
+0x7f02 036709 rtn blank 
+:      036710 memcpy_loop:
+0x7f03 036711 ifetch 1 ,contr 
+0x7f04 036712 istore 1 ,contw 
+0x7f05 036713 loop memcpy_loop 
+0x7f06 036714 rtn 
+:      036716 timer_stop:
+0x7f07 036717 setarg 0 
+:      036718 timer_init:
+0x7f08 036719 rshift clkn_bt ,temp 
+0x7f09 036720 storet 4 ,mem_last_clkn 
+0x7f0a 036721 arg mem_timers ,contw 
+0x7f0b 036722 iforce temp 
+0x7f0c 036723 lshift queue ,pdata 
+0x7f0d 036724 iadd contw ,contw 
+0x7f0e 036725 istoret 2 ,contw 
+0x7f0f 036726 bpatchx patch3f_4 ,mem_patch3f 
+0x7f10 036727 rtn 
+:      036729 timer_check_timeout:
+0x7f11 036730 arg 0x800 ,timeup 
+0x7f12 036731 lshift16 timeup ,timeup 
+0x7f13 036732 iadd timeup ,pdata 
+0x7f14 036733 rtn 
+:      036736 timer_reinit:
+0x7f15 036737 arg 0 ,queue 
+:      036738 timer_check:
+0x7f16 036739 bpatchx patch3f_5 ,mem_patch3f 
+0x7f17 036740 fetcht 4 ,mem_last_clkn 
+0x7f18 036741 rshift clkn_bt ,pdata 
+0x7f19 036742 store 4 ,mem_last_clkn 
+0x7f1a 036743 isub temp ,null 
+0x7f1b 036744 ncall timer_check_timeout ,positive 
+0x7f1c 036745 isub temp ,timeup 
+0x7f1d 036746 copy timeup ,temp 
+0x7f1e 036747 arg mem_timers ,contr 
+0x7f1f 036748 copy contr ,contw 
+0x7f20 036749 arg 16 ,loopcnt 
+:      036750 timer_loop:
+0x7f21 036751 ifetch 2 ,contr 
+0x7f22 036752 isub temp ,pdata 
+0x7f23 036753 branch timer_counting ,positive 
+0x7f24 036754 force 0 ,pdata 
+:      036755 timer_counting:
+0x7f25 036756 istore 2 ,contw 
+0x7f26 036757 loop timer_loop 
+0x7f27 036758 arg mem_timers ,contr 
+0x7f28 036759 lshift queue ,pdata 
+0x7f29 036760 iadd contr ,contr 
+0x7f2a 036761 ifetch 2 ,contr 
+0x7f2b 036762 rtn 
+:      036767 clk_add:
+0x7f2c 036768 iadd temp ,temp 
+0x7f2d 036769 copy temp ,loopcnt 
+0x7f2e 036770 setarg 3750 
+0x7f2f 036771 isub loopcnt ,pdata 
+0x7f30 036772 rtn positive 
+0x7f31 036773 sub pdata ,0 ,pdata 
+0x7f32 036774 rshift16 temp ,temp 
+0x7f33 036775 increase 1 ,temp 
+0x7f34 036776 lshift16 temp ,temp 
+0x7f35 036777 ior temp ,temp 
+0x7f36 036778 rtn 
+:      036780 clk_diff_rt:
+0x7f37 036781 call clk_diff 
+0x7f38 036782 branch clk2rt 
+:      036785 clk_diff:
+0x7f39 036786 disable user 
+0x7f3a 036787 isub temp ,pdata 
+0x7f3b 036788 branch clk_diff_pos ,positive 
+0x7f3c 036789 enable user 
+0x7f3d 036790 sub pdata ,0 ,pdata 
+:      036791 clk_diff_pos:
+0x7f3e 036792 rtnbit0 15 
+0x7f3f 036793 arg -61786 ,temp 
+0x7f40 036794 iadd temp ,pdata 
+0x7f41 036795 set0 64 ,pdata 
+0x7f42 036796 rtn 
+:      036798 clk2rt:
+0x7f43 036799 iforce contr 
+0x7f44 036800 rshift16 pdata ,pdata 
+0x7f45 036801 arg 3750 ,temp 
+0x7f46 036802 imul32 temp ,pdata 
+0x7f47 036803 iadd contr ,pdata 
+0x7f48 036804 rtn 
+:      036807 clk2lpo:
+0x7f49 036808 lshift8 pdata ,pdata 
+0x7f4a 036809 lshift4 pdata ,pdata 
+0x7f4b 036810 fetcht 3 ,mem_clks_per_lpo 
+0x7f4c 036811 idiv temp 
+0x7f4d 036812 call wait_div_end 
+0x7f4e 036813 quotient temp 
+0x7f4f 036814 rtn 
+:      036817 clk2bt:
+0x7f50 036818 arg 3750 ,temp 
+0x7f51 036819 idiv temp 
+0x7f52 036820 call wait_div_end 
+0x7f53 036821 quotient pdata 
+0x7f54 036822 lshift16 pdata ,pdata 
+0x7f55 036823 remainder temp 
+0x7f56 036824 ior temp ,temp 
+0x7f57 036825 rtn 
+:      036832 string2dec_from_uart:
+0x7f58 036833 arg 0 ,temp 
+:      036834 string2dec_from_uart_done:
+0x7f59 036835 copy temp ,regc 
+0x7f5a 036836 ifetch 1 ,contru 
+0x7f5b 036837 call uchar2dialog 
+0x7f5c 036838 copy regc ,temp 
+0x7f5d 036839 call swap 
+0x7f5e 036840 arg 10 ,regb 
+0x7f5f 036841 imul32 regb ,pdata 
+0x7f60 036842 iadd temp ,pdata 
+0x7f61 036843 copy pdata ,temp 
+0x7f62 036844 loop string2dec_from_uart_done 
+0x7f63 036845 rtn 
+:      036849 uchar2dialog:
+0x7f64 036850 arg 0x3a ,temp 
+0x7f65 036851 isub temp ,null 
+0x7f66 036852 nbranch uchar2dialog_number ,positive 
+0x7f67 036853 arg 0x61 ,temp 
+0x7f68 036854 isub temp ,null 
+0x7f69 036855 branch uchar2dialog_a2f ,positive 
+0x7f6a 036856 arg 0x37 ,temp 
+0x7f6b 036857 isub temp ,pdata 
+0x7f6c 036858 rtn 
+:      036859 uchar2dialog_number:
+0x7f6d 036860 arg 0x30 ,temp 
+0x7f6e 036861 isub temp ,pdata 
+0x7f6f 036862 rtn 
+:      036863 uchar2dialog_a2f:
+0x7f70 036864 arg 0x57 ,temp 
+0x7f71 036865 isub temp ,pdata 
+0x7f72 036866 rtn 
+:      036868 pn9:
+0x7f73 036869 copy temp ,alarm 
+0x7f74 036870 setarg 0x1ff 
+0x7f75 036871 force 0 ,regb 
+:      036872 pn9_loop:
+0x7f76 036873 rshift3 pdata ,rega 
+0x7f77 036874 rshift rega ,rega 
+0x7f78 036875 ixor rega ,rega 
+0x7f79 036876 isolate1 0 ,rega 
+0x7f7a 036877 setflag true ,9 ,pdata 
+0x7f7b 036878 rshift temp ,temp 
+0x7f7c 036879 isolate1 0 ,pdata 
+0x7f7d 036880 setflag true ,7 ,temp 
+0x7f7e 036881 rshift pdata ,pdata 
+0x7f7f 036882 increase 1 ,regb 
+0x7f80 036883 compare 0 ,regb ,0x7 
+0x7f81 036884 nbranch pn9_loop ,true 
+0x7f82 036885 istoret 1 ,contw 
+0x7f83 036886 loop pn9_loop 
+0x7f84 036887 copy alarm ,temp 
+0x7f85 036888 rtn 
+:      036891 wait_div_end:
+0x7f86 036892 rtn modone 
+0x7f87 036893 branch wait_div_end 
+:      036903 compare_loop:
+:      036904 string_compare:
+0x7f88 036905 ifetch 1 ,rega 
+0x7f89 036906 ifetcht 1 ,regb 
+0x7f8a 036907 isub temp ,null 
+0x7f8b 036908 nrtn zero 
+0x7f8c 036909 increase 1 ,rega 
+0x7f8d 036910 increase 1 ,regb 
+0x7f8e 036911 loop string_compare 
+0x7f8f 036912 force 0 ,null 
+0x7f90 036913 rtn 
+:      036916 ceiling:
+0x7f91 036917 isub temp ,null 
+0x7f92 036918 nrtn positive 
+0x7f93 036919 deposit temp 
+0x7f94 036920 rtn 
+:      036922 swap:
+0x7f95 036923 iadd temp ,pdata 
+0x7f96 036924 isub temp ,temp 
+0x7f97 036925 isub temp ,pdata 
+0x7f98 036926 rtn 
+:      036928 clean_mem:
+0x7f99 036929 arg 0x200 ,loopcnt 
+0x7f9a 036930 arg 0x4000 ,contw 
+0x7f9b 036931 branch memset0 
+:      036934 callback_func:
+0x7f9c 036935 rtn blank 
+0x7f9d 036936 copy pdata ,pc 
+:      036939 wait_uarttx:
+0x7f9e 036940 hfetch 2 ,core_uart_txitems 
+0x7f9f 036941 nbranch wait_uarttx ,blank 
+0x7fa0 036942 rtn 
+:      036944 ice_break:
+0x7fa1 036945 jam 0x1 ,core_ice_ctrl 
+0x7fa2 036946 rtn 
+:      036948 ice_setbp:
+0x7fa3 036949 hstore 2 ,core_ice_break0 
+0x7fa4 036950 hfetch 1 ,core_ice_ctrl 
+0x7fa5 036951 set1 4 ,pdata 
+0x7fa6 036952 hstore 1 ,core_ice_ctrl 
+0x7fa7 036953 rtn 
+:      036954 ice_setbp2:
+0x7fa8 036955 hstore 2 ,core_ice_break1 
+0x7fa9 036956 hfetch 1 ,core_ice_ctrl 
+0x7faa 036957 set1 6 ,pdata 
+0x7fab 036958 hstore 1 ,core_ice_ctrl 
+0x7fac 036959 rtn 
+:      036961 ice_set_write_bp:
+0x7fad 036962 hstore 2 ,core_ice_break0 
+0x7fae 036963 jam 0x30 ,core_ice_ctrl 
+0x7faf 036964 rtn 
+:      036968 test_enable_white:
+0x7fb0 036969 hfetch 1 ,core_config 
+0x7fb1 036970 set0 whiteoff_bit ,pdata 
+0x7fb2 036971 hstore 1 ,core_config 
+0x7fb3 036972 rtn 
+:      036974 check_uart_tx_buff:
+0x7fb4 036975 hfetch 2 ,core_uart_txitems 
+0x7fb5 036976 arg uart_air_control_threshold ,temp 
+:      036977 pdata_sub_temp:
+0x7fb6 036978 isub temp ,null 
+0x7fb7 036979 rtn 
+:      036985 fifo_in:
+0x7fb8 036986 bpatchx patch3f_6 ,mem_patch3f 
+0x7fb9 036987 ifetcht util_fifo_len ,rega 
+0x7fba 036988 and temp ,0xff ,pdata 
+0x7fbb 036989 nbranch fifo_in_push ,blank 
+0x7fbc 036990 rshift8 temp ,pdata 
+0x7fbd 036991 istore util_fifo_len ,rega 
+:      036992 fifo_in_push:
+0x7fbe 036993 increase util_fifo_len + util_fifo_offset ,rega 
+0x7fbf 036994 ifetch 1 ,rega 
+0x7fc0 036995 nbranch assert ,blank 
+0x7fc1 036996 fetch 1 ,mem_fifo_temp 
+0x7fc2 036997 istore 1 ,rega 
+0x7fc3 036998 rtn 
+:      037003 fifo_out:
+0x7fc4 037004 bpatchx patch3f_7 ,mem_patch3f 
+0x7fc5 037005 arg util_fifo_len ,loopcnt 
+0x7fc6 037006 ifetch util_fifo_len ,rega 
+0x7fc7 037007 rtn blank 
+:      037008 fifo_out_loop:
+0x7fc8 037009 ifetch 1 ,rega 
+0x7fc9 037010 nbranch fifo_out_end ,blank 
+0x7fca 037011 increase 1 ,rega 
+0x7fcb 037012 loop fifo_out_loop 
+0x7fcc 037013 branch assert 
+:      037014 fifo_out_end:
+0x7fcd 037015 arg 0 ,temp 
+0x7fce 037016 istoret 1 ,rega 
+0x7fcf 037017 rtn 
+:      037022 fifo_is_empty:
+0x7fd0 037023 ifetch util_fifo_len ,rega 
+0x7fd1 037024 rtn 
+:      037029 fifo_is_full:
+0x7fd2 037030 ifetch 1 ,rega 
+0x7fd3 037031 rtn 
+:      037034 fifo_is_near_full:
+0x7fd4 037035 ifetch 2 ,rega 
+0x7fd5 037036 rtn 
+:      037040 fifo_content_count:
+0x7fd6 037041 arg 0 ,temp 
+:      037042 fifo_content_count_loop:
+0x7fd7 037043 fetch 1 ,contr 
+0x7fd8 037044 loop fifo_content_count_loop ,blank 
+0x7fd9 037045 increase 1 ,temp 
+0x7fda 037046 loop fifo_content_count_loop 
+0x7fdb 037047 copy temp ,pdata 
+0x7fdc 037048 rtn 
+:      037050 not_greater_than:
+0x7fdd 037051 isub temp ,null 
+0x7fde 037052 nrtn positive 
+0x7fdf 037053 copy temp ,pdata 
+0x7fe0 037054 rtn 
+:      037057 disable_positive:
+0x7fe1 037058 force -1 ,null 
+0x7fe2 037059 rtn 
+:      037060 enable_positive:
+:      037061 disable_zero:
+0x7fe3 037062 force 1 ,null 
+0x7fe4 037063 rtn 
+:      037064 enable_zero:
+0x7fe5 037065 force 0 ,null 
+0x7fe6 037066 rtn 
+:      037068 enable_user:
+0x7fe7 037069 enable user 
+0x7fe8 037070 rtn 
+:      037072 disable_user:
+0x7fe9 037073 disable user 
+0x7fea 037074 rtn 
+:      037076 enable_user2:
+0x7feb 037077 enable user2 
+0x7fec 037078 rtn 
+:      037080 disable_user2:
+0x7fed 037081 disable user2 
+0x7fee 037082 rtn 
+:      037084 disable_blank:
+0x7fef 037085 setarg 1 
+0x7ff0 037086 rtn 
+:      037088 enable_blank:
+0x7ff1 037089 setarg 0 
+0x7ff2 037090 rtn 
+:      037093 reverse_byte:
+0x7ff3 037094 copy loopcnt ,pdata 
+0x7ff4 037095 rtn blank 
+0x7ff5 037096 copy contr ,pdata 
+0x7ff6 037097 iadd loopcnt ,pdata 
+0x7ff7 037098 increase -1 ,pdata 
+0x7ff8 037099 copy pdata ,contr 
+:      037100 reverse_loop:
+0x7ff9 037101 ifetch 1 ,contr 
+0x7ffa 037102 increase -2 ,contr 
+0x7ffb 037103 istore 1 ,contw 
+0x7ffc 037104 loop reverse_loop 
+0x7ffd 037105 rtn 
               org 0x10001
-:      037010 z_entrance0:
-0x10001 037011 beq zcode_00 ,z_page_wait_fhs_reply_ok
-0x10002 037012 rtn
-:      037014 z_page_wait_fhs_reply_ok:
-0x10003 037015 fetch 1 ,mem_page_rcv_fhs
-0x10004 037016 increase 1 ,pdata
-0x10005 037017 store 1 ,mem_page_rcv_fhs
-0x10006 037018 call prepare_newconn
-:      037019 z_master_newconn_loop:
-0x10007 037020 set1 mark_first_packet ,mark
-0x10008 037021 call master_newconn_once
-0x10009 037022 branch z_newconn_poll_responded ,sync
-0x1000a 037023 set0 mark_first_packet ,mark
-0x1000b 037024 call new_conn_timeout
-0x1000c 037025 nbranch z_master_newconn_loop ,blank
-0x1000d 037026 branch page_restart
-:      037027 z_newconn_poll_responded:
-0x1000e 037028 set0 mark_first_packet ,mark
-0x1000f 037029 branch newconn_poll_responded
+:      037110 z_entrance0:
+0x10001 037111 beq zcode_00 ,z_page_wait_fhs_reply_ok
+0x10002 037112 beq zcode_01 ,z_g24_transmit_by_interrupt
+0x10003 037113 rtn
+:      037115 z_g24_transmit_by_interrupt:
+0x10004 037116 call p_g24_timer_check
+0x10005 037117 nrtn user
+0x10006 037118 call z_g24_interval_calibrate
+0x10007 037119 fetch 2 ,mem_24g_transmit_by_interrupt_exit_count
+0x10008 037120 increase 1 ,pdata
+0x10009 037121 store 2 ,mem_24g_transmit_by_interrupt_exit_count
+0x1000a 037122 fetcht 2 ,mem_24g_transmit_by_interrupt_exit_count_init
+0x1000b 037123 isub temp ,null
+0x1000c 037124 call z_g24_transmit_by_interrupt_exit ,zero
+0x1000d 037125 branch p_g24_transmit_process
+:      037126 z_g24_transmit_by_interrupt_exit:
+0x1000e 037127 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
+0x1000f 037128 setarg 0
+0x10010 037129 store 2 ,mem_24g_transmit_by_interrupt_exit_count
+0x10011 037130 setarg 25
+0x10012 037131 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init
+:      037132 z_g24_interval_min:
+0x10013 037133 jam 0 ,mem_24g_pac_index
+0x10014 037134 fetch 1 ,mem_24g_interval_min
+:      037135 z_g24_current_interval_store:
+0x10015 037136 store 1 ,mem_24g_interval
+0x10016 037137 rtn
+:      037138 z_g24_interval_max:
+0x10017 037139 fetch 1 ,mem_24g_interval_max
+0x10018 037140 branch z_g24_current_interval_store
+:      037141 z_g24_interval_calibrate:
+0x10019 037142 fetch 1 ,mem_24g_pac_index
+0x1001a 037143 increase 1 ,pdata
+0x1001b 037144 store 1 ,mem_24g_pac_index
+0x1001c 037145 beq 4 ,z_g24_interval_max
+0x1001d 037146 beq 5 ,z_g24_interval_min
+0x1001e 037147 rtn
+:      037149 z_page_wait_fhs_reply_ok:
+0x1001f 037150 fetch 1 ,mem_page_rcv_fhs
+0x10020 037151 increase 1 ,pdata
+0x10021 037152 store 1 ,mem_page_rcv_fhs
+0x10022 037153 call prepare_newconn
+:      037154 z_master_newconn_loop:
+0x10023 037155 set1 mark_first_packet ,mark
+0x10024 037156 call master_newconn_once
+0x10025 037157 branch z_newconn_poll_responded ,sync
+0x10026 037158 set0 mark_first_packet ,mark
+0x10027 037159 call new_conn_timeout
+0x10028 037160 nbranch z_master_newconn_loop ,blank
+0x10029 037161 branch page_restart
+:      037162 z_newconn_poll_responded:
+0x1002a 037163 set0 mark_first_packet ,mark
+0x1002b 037164 branch newconn_poll_responded
               org 0x20001
-:      037036 z_entrance1:
-0x20001 037037 beq zcode_10 ,z_mouse_bb_disconnected
-0x20002 037038 beq zcode_11 ,z_hid_rx_process
-0x20003 037039 rtn
-:      037041 z_mouse_bb_disconnected:
-0x20004 037042 jam 0 ,mem_mouse_enter_sniff_count
-0x20005 037043 jam 0x0e ,mem_sniff_param_interval
-0x20006 037044 call mouse_bb_discon_clear_stack
-0x20007 037045 fetch app_disc_rsn_size ,mem_app_disconn_reason
-0x20008 037046 bbit1 app_disc_ble ,z_mouse4_0_event_bb_disconn
-0x20009 037047 bbit1 app_disc_by_button ,app_disconn_reason_clear
-0x2000a 037048 bbit1 app_disc_after_pairing ,z_mouse_event_light_state_pairing
-0x2000b 037049 bbit1 app_disc_after_reconn ,z_mouse_event_light_state_hibernate
-0x2000c 037050 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
-0x2000d 037051 branch mouse_start_discovery
-:      037053 z_mouse4_0_event_bb_disconn:
-0x2000e 037054 call mouse_le_clean_connect_flag
-0x2000f 037055 fetch app_disc_rsn_size ,mem_app_disconn_reason
-0x20010 037057 branch mouse4_0_event_bb_disconn + 2
-:      037059 z_mouse_event_light_state_pairing:
-0x20011 037060 bbit1 app_disc_after_handshake ,z_mouse_event_light_state_hibernate
-0x20012 037061 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
-0x20013 037062 branch mouse_start_discovery
-:      037063 z_mouse_event_light_state_hibernate:
-0x20014 037064 fetch 2 ,mem_ui_state_map
-0x20015 037065 bbit1 ui_state_btn_down ,mouse_start_discovery
-0x20016 037066 call app_disconn_reason_clear
-0x20017 037070 fetcht 1 ,mem_config_bt_button_gpio
-0x20018 037071 call p_gpio_set_input_pu
-0x20019 037072 fetcht 1 ,mem_config_bt_button_gpio
-0x2001a 037073 call gpio_get_bit
-0x2001b 037074 branch p_mouse_null_enter_hibernate_enable ,true
-0x2001c 037076 branch app_bb_hibernate
-:      037079 z_hid_rx_process:
-0x2001d 037080 fetch 2 ,mem_l2cap_payload_ptr
-0x2001e 037081 copy pdata ,contr
-0x2001f 037082 ifetch 1 ,contr
-0x20020 037083 store 1 ,mem_l2cap_rcv
-0x20021 037084 and pdata ,0x0f ,temp
-0x20022 037085 rshift4 pdata ,pdata
-0x20023 037086 beq hid_type_set_protocol ,z_hid_rx_set_protocol
-0x20024 037087 branch hid_rx_process + 6
-:      037088 z_hid_rx_set_protocol:
-0x20025 037089 call hid_rx_process_handshake
-0x20026 037090 jam 0 ,mem_mouse_bt_boot_mode
-0x20027 037091 fetch 1 ,mem_l2cap_rcv
-0x20028 037092 isolate1 0 ,pdata
-0x20029 037093 rtn true
-0x2002a 037094 jam 1 ,mem_mouse_bt_boot_mode
-0x2002b 037095 rtn
+:      037169 z_entrance1:
+0x20001 037170 beq zcode_10 ,z_mouse_bb_disconnected
+0x20002 037171 beq zcode_11 ,z_hid_rx_process
+0x20003 037172 rtn
+:      037174 z_mouse_bb_disconnected:
+0x20004 037175 jam 0 ,mem_mouse_enter_sniff_count
+0x20005 037176 jam 0x0e ,mem_sniff_param_interval
+0x20006 037177 call mouse_bb_discon_clear_stack
+0x20007 037178 fetch app_disc_rsn_size ,mem_app_disconn_reason
+0x20008 037179 bbit1 app_disc_ble ,z_mouse4_0_event_bb_disconn
+0x20009 037180 bbit1 app_disc_by_button ,app_disconn_reason_clear
+0x2000a 037181 bbit1 app_disc_after_pairing ,z_mouse_event_light_state_pairing
+0x2000b 037182 bbit1 app_disc_after_reconn ,z_mouse_event_light_state_hibernate
+0x2000c 037183 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
+0x2000d 037184 branch mouse_start_discovery
+:      037186 z_mouse4_0_event_bb_disconn:
+0x2000e 037187 call mouse_le_clean_connect_flag
+0x2000f 037188 fetch app_disc_rsn_size ,mem_app_disconn_reason
+0x20010 037190 branch mouse4_0_event_bb_disconn + 2
+:      037192 z_mouse_event_light_state_pairing:
+0x20011 037193 bbit1 app_disc_after_handshake ,z_mouse_event_light_state_hibernate
+0x20012 037194 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
+0x20013 037195 branch mouse_start_discovery
+:      037196 z_mouse_event_light_state_hibernate:
+0x20014 037197 fetch 2 ,mem_ui_state_map
+0x20015 037198 bbit1 ui_state_btn_down ,mouse_start_discovery
+0x20016 037199 call app_disconn_reason_clear
+0x20017 037203 fetcht 1 ,mem_config_bt_button_gpio
+0x20018 037204 call p_gpio_set_input_pu
+0x20019 037205 fetcht 1 ,mem_config_bt_button_gpio
+0x2001a 037206 call gpio_get_bit
+0x2001b 037207 branch p_mouse_null_enter_hibernate_enable ,true
+0x2001c 037209 branch app_bb_hibernate
+:      037212 z_hid_rx_process:
+0x2001d 037213 fetch 2 ,mem_l2cap_payload_ptr
+0x2001e 037214 copy pdata ,contr
+0x2001f 037215 ifetch 1 ,contr
+0x20020 037216 store 1 ,mem_l2cap_rcv
+0x20021 037217 and pdata ,0x0f ,temp
+0x20022 037218 rshift4 pdata ,pdata
+0x20023 037219 beq hid_type_set_protocol ,z_hid_rx_set_protocol
+0x20024 037220 branch hid_rx_process + 6
+:      037221 z_hid_rx_set_protocol:
+0x20025 037222 call hid_rx_process_handshake
+0x20026 037223 jam 0 ,mem_mouse_bt_boot_mode
+0x20027 037224 fetch 1 ,mem_l2cap_rcv
+0x20028 037225 isolate1 0 ,pdata
+0x20029 037226 rtn true
+0x2002a 037227 jam 1 ,mem_mouse_bt_boot_mode
+0x2002b 037228 rtn
               org 0x30001
-:      037099 z_entrance2:
-0x30001 037100 beq zcode_20 ,z_send_lmp
-0x30002 037101 rtn
-:      037103 z_send_lmp:
-0x30003 037104 disable user
-0x30004 037105 call lmo_fifo_process
-0x30005 037108 fetch 1 ,mem_lmp_to_send
-0x30006 037109 rtn blank
-0x30007 037110 bbit1 7 ,z_send_lmp_escape
-0x30008 037111 beq lmp_accepted ,z_send_lmp_accepted
-0x30009 037112 beq lmp_setup_complete ,z_send_lmp_setup_complete
-0x3000a 037113 beq lmp_sniff_req ,z_send_lmp_sniff_req
-0x3000b 037114 branch send_lmp0
-:      037115 z_send_lmp_escape:
-0x3000c 037116 beq lmp_ext_features_res ,z_send_lmpext_features_res
-0x3000d 037117 beq lmp_ext_features_req ,z_send_lmpext_features_req
-0x3000e 037118 branch send_lmp_escape
-:      037119 z_send_lmpext_features_res:
-0x3000f 037120 call z_check_ssp_enable
-0x30010 037121 fetch 1 ,mem_lmp_to_send
-0x30011 037122 branch send_lmpext_features_res
-:      037123 z_send_lmpext_features_req:
-0x30012 037124 call z_check_ssp_enable
-0x30013 037125 fetch 1 ,mem_lmp_to_send
-0x30014 037126 branch send_lmpext_features_req
-:      037127 z_check_ssp_enable:
-0x30015 037128 fetch 1 ,mem_ssp_enable
-0x30016 037129 branch ssp_disable ,blank
-0x30017 037130 branch ssp_enable
-:      037132 z_send_lmp_setup_complete:
-0x30018 037133 jam 1 ,mem_bt_send_lmp_setup_complete
-0x30019 037134 branch send_lmp_setup_complete
-:      037136 z_send_lmp_sniff_req:
-0x3001a 037137 jam 4 ,mem_mouse_bt_send_first_package_timer
-0x3001b 037138 branch send_lmp_sniff_req
-:      037141 z_send_lmp_accepted:
-0x3001c 037142 force 2 ,pdata
-0x3001d 037143 call msg_send_lmp
-0x3001e 037144 fetch 1 ,mem_lmi_opcode
-0x3001f 037145 istore 1 ,contw
-0x30020 037146 store 1 ,mem_lmi_opcode_temp
-0x30021 037147 call send_lmp_follow
-0x30022 037148 fetch 1 ,mem_lmi_opcode_temp
-0x30023 037149 beq lmp_max_slot_req ,z_send_lmp_accepted_max_slot_req
-0x30024 037150 branch send_lmp_accepted + 7
-:      037152 z_send_lmp_accepted_max_slot_req:
-0x30025 037153 fetch 1 ,mem_bt_rcvd_switch_req_accept
-0x30026 037154 rtn blank
-0x30027 037155 jam 0 ,mem_bt_rcvd_switch_req_accept
-0x30028 037156 fetch 1 ,mem_bt_send_lmp_setup_complete
-0x30029 037157 rtnne 2
-0x3002a 037158 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
-0x3002b 037159 copy clkn_bt ,pdata
-0x3002c 037160 store 4 ,mem_aurand_send_delay_time
-0x3002d 037161 rtn
+:      037232 z_entrance2:
+0x30001 037233 beq zcode_20 ,z_send_lmp
+0x30002 037234 rtn
+:      037236 z_send_lmp:
+0x30003 037237 disable user
+0x30004 037238 call lmo_fifo_process
+0x30005 037241 fetch 1 ,mem_lmp_to_send
+0x30006 037242 rtn blank
+0x30007 037243 bbit1 7 ,z_send_lmp_escape
+0x30008 037244 beq lmp_accepted ,z_send_lmp_accepted
+0x30009 037245 beq lmp_setup_complete ,z_send_lmp_setup_complete
+0x3000a 037246 beq lmp_sniff_req ,z_send_lmp_sniff_req
+0x3000b 037247 branch send_lmp0
+:      037248 z_send_lmp_escape:
+0x3000c 037249 beq lmp_ext_features_res ,z_send_lmpext_features_res
+0x3000d 037250 beq lmp_ext_features_req ,z_send_lmpext_features_req
+0x3000e 037251 branch send_lmp_escape
+:      037252 z_send_lmpext_features_res:
+0x3000f 037253 call z_check_ssp_enable
+0x30010 037254 fetch 1 ,mem_lmp_to_send
+0x30011 037255 branch send_lmpext_features_res
+:      037256 z_send_lmpext_features_req:
+0x30012 037257 call z_check_ssp_enable
+0x30013 037258 fetch 1 ,mem_lmp_to_send
+0x30014 037259 branch send_lmpext_features_req
+:      037260 z_check_ssp_enable:
+0x30015 037261 fetch 1 ,mem_ssp_enable
+0x30016 037262 branch ssp_disable ,blank
+0x30017 037263 branch ssp_enable
+:      037265 z_send_lmp_setup_complete:
+0x30018 037266 jam 1 ,mem_bt_send_lmp_setup_complete
+0x30019 037267 branch send_lmp_setup_complete
+:      037269 z_send_lmp_sniff_req:
+0x3001a 037270 jam 4 ,mem_mouse_bt_send_first_package_timer
+0x3001b 037271 branch send_lmp_sniff_req
+:      037274 z_send_lmp_accepted:
+0x3001c 037275 force 2 ,pdata
+0x3001d 037276 call msg_send_lmp
+0x3001e 037277 fetch 1 ,mem_lmi_opcode
+0x3001f 037278 istore 1 ,contw
+0x30020 037279 store 1 ,mem_lmi_opcode_temp
+0x30021 037280 call send_lmp_follow
+0x30022 037281 fetch 1 ,mem_lmi_opcode_temp
+0x30023 037282 beq lmp_max_slot_req ,z_send_lmp_accepted_max_slot_req
+0x30024 037283 branch send_lmp_accepted + 7
+:      037285 z_send_lmp_accepted_max_slot_req:
+0x30025 037286 fetch 1 ,mem_bt_rcvd_switch_req_accept
+0x30026 037287 rtn blank
+0x30027 037288 jam 0 ,mem_bt_rcvd_switch_req_accept
+0x30028 037289 fetch 1 ,mem_bt_send_lmp_setup_complete
+0x30029 037290 rtnne 2
+0x3002a 037291 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
+0x3002b 037292 copy clkn_bt ,pdata
+0x3002c 037293 store 4 ,mem_aurand_send_delay_time
+0x3002d 037294 rtn
               org 0x40001
-:      037166 z_entrance3:
-0x40001 037167 beq zcode_30 ,z_process_conn_sm
-0x40002 037168 rtn
-:      037170 z_process_conn_sm:
-0x40003 037171 call lmo_fifo_check
-0x40004 037172 nrtn blank
-:      037173 z_process_conn_sm_continue:
-0x40005 037174 fetch 1 ,mem_conn_sm
-0x40006 037175 rtn blank
-0x40007 037176 beq conn_sm_send_conn_req ,z_host_create_conn_send_conn_req
-0x40008 037177 beq conn_sm_wait_switch_after_host_connection ,z_host_creat_conn_wait_switch
-0x40009 037178 branch process_conn_sm_continue + 2
-:      037181 z_host_creat_conn_wait_switch:
-0x4000a 037182 fetch 1 ,mem_switch_flag
-0x4000b 037183 rtneq switch_flag_init
-0x4000c 037184 beq switch_flag_accept ,z_host_create_conn_switch_accept
-0x4000d 037185 branch host_creat_conn_wait_switch + 3
-:      037186 z_host_create_conn_switch_accept:
-0x4000e 037187 rtn master
-:      037188 z_host_create_conn_auth_pair:
-0x4000f 037190 fetch 1 ,mem_connection_options
-0x40010 037191 bbit1 connection_auth ,z_host_create_conn_auth_pair_true
-0x40011 037192 branch host_create_conn_auth_pair + 1
-:      037193 z_host_create_conn_auth_pair_true:
-0x40012 037194 fetch 1 ,mem_bt_send_lmp_setup_complete
-0x40013 037195 beq 1 ,host_create_conn_auth_pair_true
-0x40014 037197 fetch 1 ,mem_link_key_exists
-0x40015 037198 branch host_create_conn_auth_pair_nokey ,blank
-0x40016 037199 fetch 1 ,mem_lmp_conn_state
-0x40017 037200 rtnbit0 sent_setup_complete
-0x40018 037201 rtnbit0 received_setup_complete
-0x40019 037202 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch
-0x4001a 037203 rtn blank
-0x4001b 037204 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch
-0x4001c 037205 fetch 4 ,mem_aurand_send_delay_time
-0x4001d 037206 arg 20 ,temp
-0x4001e 037207 iadd temp ,temp
-0x4001f 037208 copy clkn_bt ,pdata
-0x40020 037209 isub temp ,null
-0x40021 037210 nbranch z_bt_send_max_slot_req_accept_after_switch_wait ,positive
-0x40022 037211 branch host_create_conn_auth
-:      037213 z_bt_send_max_slot_req_accept_after_switch_wait:
-0x40023 037214 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
-0x40024 037215 rtn
-:      037217 z_host_create_conn_send_conn_req:
-0x40025 037218 jam 20 ,mem_mouse_send_switch_req_timer
-0x40026 037219 branch host_create_conn_send_conn_req
+:      037299 z_entrance3:
+0x40001 037300 beq zcode_30 ,z_process_conn_sm
+0x40002 037301 rtn
+:      037303 z_process_conn_sm:
+0x40003 037304 call lmo_fifo_check
+0x40004 037305 nrtn blank
+:      037306 z_process_conn_sm_continue:
+0x40005 037307 fetch 1 ,mem_conn_sm
+0x40006 037308 rtn blank
+0x40007 037309 beq conn_sm_send_conn_req ,z_host_create_conn_send_conn_req
+0x40008 037310 beq conn_sm_wait_switch_after_host_connection ,z_host_creat_conn_wait_switch
+0x40009 037311 branch process_conn_sm_continue + 2
+:      037314 z_host_creat_conn_wait_switch:
+0x4000a 037315 fetch 1 ,mem_switch_flag
+0x4000b 037316 rtneq switch_flag_init
+0x4000c 037317 beq switch_flag_accept ,z_host_create_conn_switch_accept
+0x4000d 037318 branch host_creat_conn_wait_switch + 3
+:      037319 z_host_create_conn_switch_accept:
+0x4000e 037320 rtn master
+:      037321 z_host_create_conn_auth_pair:
+0x4000f 037323 fetch 1 ,mem_connection_options
+0x40010 037324 bbit1 connection_auth ,z_host_create_conn_auth_pair_true
+0x40011 037325 branch host_create_conn_auth_pair + 1
+:      037326 z_host_create_conn_auth_pair_true:
+0x40012 037327 fetch 1 ,mem_bt_send_lmp_setup_complete
+0x40013 037328 beq 1 ,host_create_conn_auth_pair_true
+0x40014 037330 fetch 1 ,mem_link_key_exists
+0x40015 037331 branch host_create_conn_auth_pair_nokey ,blank
+0x40016 037332 fetch 1 ,mem_lmp_conn_state
+0x40017 037333 rtnbit0 sent_setup_complete
+0x40018 037334 rtnbit0 received_setup_complete
+0x40019 037335 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch
+0x4001a 037336 rtn blank
+0x4001b 037337 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch
+0x4001c 037338 fetch 4 ,mem_aurand_send_delay_time
+0x4001d 037339 arg 20 ,temp
+0x4001e 037340 iadd temp ,temp
+0x4001f 037341 copy clkn_bt ,pdata
+0x40020 037342 isub temp ,null
+0x40021 037343 nbranch z_bt_send_max_slot_req_accept_after_switch_wait ,positive
+0x40022 037344 branch host_create_conn_auth
+:      037346 z_bt_send_max_slot_req_accept_after_switch_wait:
+0x40023 037347 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
+0x40024 037348 rtn
+:      037350 z_host_create_conn_send_conn_req:
+0x40025 037351 jam 20 ,mem_mouse_send_switch_req_timer
+0x40026 037352 branch host_create_conn_send_conn_req
               org 0x50001
-:      037227 z_entrance4:
-0x50001 037228 beq zcode_40 ,z_le_update_param
-0x50002 037229 beq zcode_41 ,z_le_update_channel_map
-0x50003 037230 rtn
-:      037232 z_le_update_param:
-0x50004 037233 call z_mouse_le_conn_param_check
-0x50005 037234 branch le_update_param + 8
-:      037235 z_mouse_le_lpm_mult_reinit:
-0x50006 037236 fetch 1 ,mem_lpm_mult_init
-0x50007 037237 store 1 ,mem_lpm_mult
-:      037238 z_mouse_le_conn_param_lpm_enable:
-0x50008 037239 jam le_lpm_enable ,mem_mouse_le_conn_param_reject
-0x50009 037240 rtn
-:      037241 z_mouse_le_conn_param_lpm_disable:
-0x5000a 037242 jam le_lpm_disable ,mem_mouse_le_conn_param_reject
-0x5000b 037243 rtn
-:      037244 z_mouse_le_conn_param_check:
-0x5000c 037245 fetch 1 ,mem_le_new_conninterval
-0x5000d 037246 sub pdata ,le_interval_15ms ,null
-0x5000e 037247 nbranch z_mouse_le_conn_param_lpm_disable ,positive
-0x5000f 037248 fetch 1 ,mem_le_new_connslavelatency
-0x50010 037249 fetcht 1 ,mem_lpm_mult_init
-0x50011 037250 isub temp ,null
-0x50012 037251 branch z_mouse_le_lpm_mult_reinit ,positive
-0x50013 037252 fetch 1 ,mem_le_new_connslavelatency
-0x50014 037253 store 1 ,mem_lpm_mult
-0x50015 037254 branch z_mouse_le_conn_param_lpm_enable
-:      037256 z_le_update_channel_map:
-0x50016 037257 fetch 1 ,mem_le_state
-0x50017 037258 rtnbit0 lestate_update_map
-0x50018 037259 call z_le_channel_map_overflow_check
-0x50019 037260 nrtn user
-0x5001a 037261 branch le_update_channel_map + 3
-:      037262 z_le_channel_map_overflow_check:
-0x5001b 037263 enable user
-0x5001c 037264 fetch 1 ,mem_le_event_count + 1
-0x5001d 037265 rshift4 pdata ,pdata
-0x5001e 037266 rtnne 0x0f
-0x5001f 037267 fetch 1 ,mem_le_instant + 1
-0x50020 037268 rshift4 pdata ,pdata
-0x50021 037269 rtnne 0x00
-0x50022 037270 branch disable_user
+:      037360 z_entrance4:
+0x50001 037361 beq zcode_40 ,z_le_update_param
+0x50002 037362 beq zcode_41 ,z_le_update_channel_map
+0x50003 037363 beq zcode_42 ,z_le_mouse_bb_event_connect_complete
+0x50004 037364 beq zcode_43 ,z_quit_connection_cont
+0x50005 037365 rtn
+:      037367 z_le_update_param:
+0x50006 037368 call z_mouse_le_conn_param_check
+0x50007 037369 branch le_update_param + 8
+:      037370 z_mouse_le_lpm_mult_reinit:
+0x50008 037371 fetch 1 ,mem_lpm_mult_init
+0x50009 037372 store 1 ,mem_lpm_mult
+:      037373 z_mouse_le_conn_param_lpm_enable:
+0x5000a 037374 jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+0x5000b 037375 rtn
+:      037376 z_mouse_le_conn_param_lpm_disable:
+0x5000c 037377 jam le_lpm_disable ,mem_mouse_le_conn_param_reject
+0x5000d 037378 rtn
+:      037379 z_mouse_le_conn_param_check:
+0x5000e 037380 fetch 1 ,mem_le_new_conninterval
+0x5000f 037381 sub pdata ,le_interval_15ms ,null
+0x50010 037382 nbranch z_mouse_le_conn_param_lpm_disable ,positive
+0x50011 037383 fetch 1 ,mem_le_new_connslavelatency
+0x50012 037384 fetcht 1 ,mem_lpm_mult_init
+0x50013 037385 isub temp ,null
+0x50014 037386 branch z_mouse_le_lpm_mult_reinit ,positive
+0x50015 037387 fetch 1 ,mem_le_new_connslavelatency
+0x50016 037388 store 1 ,mem_lpm_mult
+0x50017 037389 branch z_mouse_le_conn_param_lpm_enable
+:      037391 z_le_update_channel_map:
+0x50018 037392 fetch 1 ,mem_le_state
+0x50019 037393 rtnbit0 lestate_update_map
+0x5001a 037394 call z_le_channel_map_overflow_check
+0x5001b 037395 nrtn user
+0x5001c 037396 branch le_update_channel_map + 3
+:      037397 z_le_channel_map_overflow_check:
+0x5001d 037398 enable user
+0x5001e 037399 fetch 1 ,mem_le_event_count + 1
+0x5001f 037400 rshift4 pdata ,pdata
+0x50020 037401 rtnne 0x0f
+0x50021 037402 fetch 1 ,mem_le_instant + 1
+0x50022 037403 rshift4 pdata ,pdata
+0x50023 037404 rtnne 0x00
+0x50024 037405 branch disable_user
+:      037407 z_le_mouse_bb_event_connect_complete:
+0x50025 037408 fetch 1 ,mem_mouse_le_reconnect_flag
+0x50026 037409 nrtn blank
+0x50027 037410 fetch 1 ,mem_le_att_handle
+0x50028 037411 sub pdata ,26 ,pdata
+0x50029 037412 nrtn zero
+0x5002a 037413 branch mouse_le_write_enable
+:      037415 z_quit_connection_cont:
+0x5002b 037416 call app_disconn_reason_collect_bt
+0x5002c 037417 call sniff_exit
+0x5002d 037418 jam bt_evt_bb_disconnected ,mem_fifo_temp
+0x5002e 037419 call ui_ipc_send_event
+0x5002f 037420 call init_lmp_work
+0x50030 037421 call l2cap_init_work
+0x50031 037422 branch quit_connection_cont + 8
               org 0x60001
-:      037276 z_entrance5:
-0x60001 037277 beq zcode_50 ,z_mouse_start_discovery
-0x60002 037278 rtn
-:      037281 z_mouse_start_discovery:
-0x60003 037282 call p_mouse_tx_power_init
-0x60004 037283 jam mode_bt_device1 ,mem_device_flag
-0x60005 037284 jam 0 ,mem_mouse_clear_sensor_data_flag
-0x60006 037285 fetch 2 ,mem_ui_state_map
-0x60007 037286 bbit1 ui_state_ble_adv ,z_mouse_start_discovery_norandom
-0x60008 037287 fetch mouse_flag_len ,mem_mouse_flag
-0x60009 037288 bbit0 mouse_enable_ble_random_addre ,z_mouse_start_discovery_norandom
-0x6000a 037289 call p_mouse_load_random_addr_increase_count
-0x6000b 037290 fetcht 2 ,mem_random_addr_increase_count
-0x6000c 037291 increase 1 ,temp
-0x6000d 037292 storet 2 ,mem_random_addr_increase_count
-0x6000e 037293 storet 2 ,mem_le_lap + 1
-0x6000f 037294 call p_mouse_store_random_addr_increase_count
-0x60010 037295 random pdata
-0x60011 037296 store 1 ,mem_le_lap
-:      037297 z_mouse_start_discovery_norandom:
-0x60012 037298 call app_lpm_mult_disable
-0x60013 037299 fetch 2 ,mem_discovery_timeout
-0x60014 037300 store 2 ,mem_mouse_discovery_timer
-0x60015 037301 jam 6 ,mem_connection_options
-0x60016 037302 setarg 0
-0x60017 037303 store 2 ,mem_mouse_no_data_timer
-0x60018 037304 store 2 ,mem_mouse_direct_timer
-0x60019 037305 arg mouse_store_eeprom_flag ,queue
-0x6001a 037306 call mouse_enable_function_flag
-0x6001b 037307 call mouse_bt_discovery_button_down_disable
-0x6001c 037311 fetch 1 ,mem_device_option
-0x6001d 037312 isolate1 mode_3_mouse ,pdata
-0x6001e 037313 call check_51cmd_start_discovery ,true
-0x6001f 037316 branch p_mouse_discovery_multi_led_blink
-:      037318 z_check_51cmd_adv:
-0x60020 037319 jam 0 ,mem_mouse_le_reconnect_flag
-0x60021 037320 call p_le_check_adv_flag
-0x60022 037321 setarg adv_flag_bredr_not_supported | adv_flag_limited_discoverable
-0x60023 037322 istore 1 ,contr
-0x60024 037323 arg mem_le_adv_swift_pair ,contr
-0x60025 037324 call p_le_adv_data_update
-0x60026 037325 branch check_51cmd_adv
+:      037427 z_entrance5:
+0x60001 037428 beq zcode_50 ,z_mouse_start_discovery
+0x60002 037429 rtn
+:      037432 z_mouse_start_discovery:
+0x60003 037433 call p_mouse_tx_power_init
+0x60004 037434 jam mode_bt_device1 ,mem_device_flag
+0x60005 037435 jam 0 ,mem_mouse_clear_sensor_data_flag
+0x60006 037436 fetch 2 ,mem_ui_state_map
+0x60007 037437 bbit1 ui_state_ble_adv ,z_mouse_start_discovery_norandom
+0x60008 037438 fetch mouse_flag_len ,mem_mouse_flag
+0x60009 037439 bbit0 mouse_enable_ble_random_addre ,z_mouse_start_discovery_norandom
+0x6000a 037440 call p_mouse_load_random_addr_increase_count
+0x6000b 037441 fetcht 2 ,mem_random_addr_increase_count
+0x6000c 037442 increase 1 ,temp
+0x6000d 037443 storet 2 ,mem_random_addr_increase_count
+0x6000e 037444 storet 2 ,mem_le_lap + 1
+0x6000f 037445 call p_mouse_store_random_addr_increase_count
+0x60010 037446 random pdata
+0x60011 037447 store 1 ,mem_le_lap
+:      037448 z_mouse_start_discovery_norandom:
+0x60012 037449 call app_lpm_mult_disable
+0x60013 037450 fetch 2 ,mem_discovery_timeout
+0x60014 037451 store 2 ,mem_mouse_discovery_timer
+0x60015 037452 jam 6 ,mem_connection_options
+0x60016 037453 setarg 0
+0x60017 037454 store 2 ,mem_mouse_no_data_timer
+0x60018 037455 store 2 ,mem_mouse_direct_timer
+0x60019 037456 arg mouse_store_eeprom_flag ,queue
+0x6001a 037457 call mouse_enable_function_flag
+0x6001b 037458 call mouse_bt_discovery_button_down_disable
+0x6001c 037462 fetch 1 ,mem_device_option
+0x6001d 037463 isolate1 mode_3_mouse ,pdata
+0x6001e 037464 call check_51cmd_start_discovery ,true
+0x6001f 037467 branch p_mouse_discovery_multi_led_blink
+:      037469 z_check_51cmd_adv:
+0x60020 037470 jam 0 ,mem_mouse_le_reconnect_flag
+0x60021 037472 setarg adv_flag_bredr_not_supported | adv_flag_limited_discoverable
+0x60022 037473 istore 1 ,contr
+0x60023 037474 arg mem_le_adv_swift_pair ,contr
+0x60024 037475 call p_le_adv_data_update
+0x60025 037476 branch check_51cmd_adv
               org 0x70001
-:      037329 z_entrance6:
-0x70001 037330 beq zcode_60 ,z_g24_start_24g_mode
-0x70002 037331 beq zcode_61 ,z_mouse_24g_pairing_button
-0x70003 037332 rtn
-:      037334 z_g24_start_24g_mode:
-0x70004 037335 set0 mark_24g ,mark
-0x70005 037336 call p_g24_syncword_crc8
-0x70006 037337 call p_g24_ch
-0x70007 037338 fetch 1 ,mem_24g_pairing_sm
-0x70008 037339 rtnne state_24g_pairing_success
-0x70009 037340 call z_g24_tx_attemp_data_prep
-:      037341 z_g24_tx_attemp_dongle:
-0x7000a 037342 setarg 0
-0x7000b 037343 store 2 ,mem_24g_check_dongle_times
-:      037344 z_g24_tx_attemp_dongle_loop:
-0x7000c 037346 nop 2000
-0x7000d 037347 fetch 1 ,mem_24g_check_dongle_times
-0x7000e 037348 beq 0xff ,p_g24_stop_g24_mode
-0x7000f 037349 call p_g24_transmit_receive_ack
-0x70010 037350 nbranch z_g24_attemp_txdata_retry ,sync
-0x70011 037351 nbranch z_g24_attemp_txdata_retry ,user3
-:      037352 z_g24_tx_attemp_dongle_succ:
-0x70012 037353 set1 mark_24g ,mark
-0x70013 037354 setarg 0
-0x70014 037355 store 2 ,mem_24g_check_dongle_times
-0x70015 037356 jam bt_evt_24g_attempt_success ,mem_fifo_temp
-0x70016 037357 call ui_ipc_send_event
-0x70017 037358 call p_g24_txbuf_clear
-0x70018 037359 branch p_g24_transmit_by_interrupt_enable
-:      037361 z_g24_tx_attemp_data_prep:
-0x70019 037362 jam 0xff ,mem_24g_common_temp
-0x7001a 037363 fetch 1 ,mem_24g_data_type
-0x7001b 037364 store 1 ,mem_24g_common_temp + 1
-0x7001c 037365 fetch 4 ,mem_24g_device_addr
-0x7001d 037366 store 4 ,mem_24g_common_temp + 2
-0x7001e 037367 arg 6 ,temp
-0x7001f 037368 arg mem_24g_common_temp ,rega
-0x70020 037369 call p_g24_put_data_in_buff
-0x70021 037370 branch p_g24_transmit_prep
-:      037372 z_g24_attemp_txdata_retry:
-0x70022 037373 fetch 2 ,mem_24g_check_dongle_times
-0x70023 037374 increase 1 ,pdata
-0x70024 037375 store 2 ,mem_24g_check_dongle_times
-0x70025 037376 call p_g24_ch
-0x70026 037377 branch z_g24_tx_attemp_dongle_loop
-:      037380 z_mouse_24g_pairing_button:
-0x70027 037381 fetch 1 ,mem_device_flag
-0x70028 037382 rtneq mode_bt_device1
-0x70029 037383 fetch mouse_flag_len ,mem_mouse_flag
-0x7002a 037384 rtnbit0 mouse_enable_24g
-0x7002b 037385 rtnbit1 mosue_24g_pairing_flag
-0x7002c 037386 rtnmark1 mark_24g
-0x7002d 037387 call p_mouse_multi_led_gpio_set_float
-0x7002e 037388 arg mosue_24g_pairing_flag ,queue
-0x7002f 037389 call mouse_enable_function_flag
-0x70030 037390 setarg 0
-0x70031 037391 store 2 ,mem_mouse_direct_timer
-0x70032 037392 store 1 ,mem_mouse_send_blank_timer
-0x70033 037393 store 2 ,mem_24g_check_dongle_times
-0x70034 037394 call mouse_stop_discovery
-0x70035 037395 branch z6_g24_start_pairing_sm1
-:      037397 z6_g24_start_pairing_sm1:
-0x70036 037398 set1 mark_24g ,mark
-0x70037 037399 call z6_g24_pair_init
-:      037400 z6_g24_set_pairing_sm_1:
-0x70038 037401 jam state_24g_pairing_1 ,mem_24g_pairing_sm
-0x70039 037402 rtn
-:      037404 z6_g24_pair_init:
-0x7003a 037405 jam tx_power_pair ,mem_tx_power
-0x7003b 037406 jam 0 ,mem_24g_pid
-0x7003c 037407 jam g24_pair_ch ,mem_24g_ch
-0x7003d 037408 fetch 4 ,mem_24g_paring_addr
-0x7003e 037409 branch p_g24_update_addr_and_synccrc8
+:      037480 z_entrance6:
+0x70001 037481 beq zcode_60 ,z_g24_start_24g_mode
+0x70002 037482 beq zcode_61 ,z_mouse_24g_pairing_button
+0x70003 037483 rtn
+:      037485 z_g24_start_24g_mode:
+0x70004 037486 set0 mark_24g ,mark
+0x70005 037487 call p_g24_syncword_crc8
+0x70006 037488 call p_g24_ch
+0x70007 037489 fetch 1 ,mem_24g_pairing_sm
+0x70008 037490 rtnne state_24g_pairing_success
+0x70009 037491 call z_g24_tx_attemp_data_prep
+:      037492 z_g24_tx_attemp_dongle:
+0x7000a 037493 setarg 0
+0x7000b 037494 store 2 ,mem_24g_check_dongle_times
+:      037495 z_g24_tx_attemp_dongle_loop:
+0x7000c 037497 nop 2000
+0x7000d 037498 fetch 1 ,mem_24g_check_dongle_times
+0x7000e 037499 beq 0xff ,p_g24_stop_g24_mode
+0x7000f 037500 call p_g24_transmit_receive_ack
+0x70010 037501 nbranch z_g24_attemp_txdata_retry ,sync
+0x70011 037502 nbranch z_g24_attemp_txdata_retry ,user3
+:      037503 z_g24_tx_attemp_dongle_succ:
+0x70012 037504 set1 mark_24g ,mark
+0x70013 037505 setarg 0
+0x70014 037506 store 2 ,mem_24g_check_dongle_times
+0x70015 037507 jam bt_evt_24g_attempt_success ,mem_fifo_temp
+0x70016 037508 call ui_ipc_send_event
+0x70017 037509 call p_g24_txbuf_clear
+0x70018 037510 branch p_g24_transmit_by_interrupt_enable
+:      037512 z_g24_tx_attemp_data_prep:
+0x70019 037513 jam 0xff ,mem_24g_common_temp
+0x7001a 037514 fetch 1 ,mem_24g_data_type
+0x7001b 037515 store 1 ,mem_24g_common_temp + 1
+0x7001c 037516 fetch 4 ,mem_24g_device_addr
+0x7001d 037517 store 4 ,mem_24g_common_temp + 2
+0x7001e 037518 arg 6 ,temp
+0x7001f 037519 arg mem_24g_common_temp ,rega
+0x70020 037520 call p_g24_put_data_in_buff
+0x70021 037521 branch p_g24_transmit_prep
+:      037523 z_g24_attemp_txdata_retry:
+0x70022 037524 fetch 2 ,mem_24g_check_dongle_times
+0x70023 037525 increase 1 ,pdata
+0x70024 037526 store 2 ,mem_24g_check_dongle_times
+0x70025 037527 call p_g24_ch
+0x70026 037528 branch z_g24_tx_attemp_dongle_loop
+:      037531 z_mouse_24g_pairing_button:
+0x70027 037532 fetch 1 ,mem_device_flag
+0x70028 037533 rtneq mode_bt_device1
+0x70029 037534 fetch mouse_flag_len ,mem_mouse_flag
+0x7002a 037535 rtnbit0 mouse_enable_24g
+0x7002b 037536 rtnbit1 mosue_24g_pairing_flag
+0x7002c 037537 rtnmark1 mark_24g
+0x7002d 037538 call p_mouse_multi_led_gpio_set_float
+0x7002e 037539 arg mosue_24g_pairing_flag ,queue
+0x7002f 037540 call mouse_enable_function_flag
+0x70030 037541 setarg 0
+0x70031 037542 store 2 ,mem_mouse_direct_timer
+0x70032 037543 store 1 ,mem_mouse_send_blank_timer
+0x70033 037544 store 2 ,mem_24g_check_dongle_times
+0x70034 037545 call mouse_stop_discovery
+0x70035 037546 branch z6_g24_start_pairing_sm1
+:      037548 z6_g24_start_pairing_sm1:
+0x70036 037549 set1 mark_24g ,mark
+0x70037 037550 call z6_g24_pair_init
+:      037551 z6_g24_set_pairing_sm_1:
+0x70038 037552 jam state_24g_pairing_1 ,mem_24g_pairing_sm
+0x70039 037553 rtn
+:      037555 z6_g24_pair_init:
+0x7003a 037556 jam tx_power_pair ,mem_tx_power
+0x7003b 037557 jam 0 ,mem_24g_pid
+0x7003c 037558 jam g24_pair_ch ,mem_24g_ch
+0x7003d 037559 fetch 4 ,mem_24g_paring_addr
+0x7003e 037560 branch p_g24_update_addr_and_synccrc8
               org 0x80001
-:      037413 z_entrance7:
-0x80001 037414 beq zcode_70 ,z_g24_auto_pair_start
-0x80002 037415 rtn
-:      037417 z_g24_auto_pair_start:
-0x80003 037418 set0 mark_24g ,mark
-0x80004 037419 call z_g24_auto_pair_all_powerful
-0x80005 037420 call z7_g24_tx_attemp_data_prep
-:      037421 z_g24_auto_pair_restart:
-0x80006 037422 jam 0 ,mem_24g_check_dongle_times
-:      037423 z_g24_auto_pair_start_loop:
-0x80007 037425 nop 2000
-0x80008 037426 fetch 1 ,mem_24g_check_dongle_times
-0x80009 037427 beq 0xff ,p_g24_stop_g24_mode
-0x8000a 037428 call p_g24_transmit_receive_ack
-0x8000b 037429 nbranch z_g24_auto_pair_retry ,sync
-0x8000c 037430 nbranch z_g24_auto_pair_retry ,user3
-0x8000d 037431 call p_g24_ackpayload_parse
-0x8000e 037432 call p_mouse_tx_power_init
-0x8000f 037433 fetch 4 ,mem_24g_addr
-0x80010 037434 fetcht 4 ,mem_24g_paring_addr
-0x80011 037435 isub temp ,null
-0x80012 037436 branch z_g24_start_pairing_sm1 ,zero
-0x80013 037437 set1 mark_24g ,mark
-0x80014 037438 setarg 0
-0x80015 037439 store 2 ,mem_24g_check_dongle_times
-0x80016 037440 jam bt_evt_24g_attempt_success ,mem_fifo_temp
-0x80017 037441 call ui_ipc_send_event
-0x80018 037442 call p_g24_txbuf_clear
-0x80019 037443 branch p_g24_transmit_by_interrupt_enable
-:      037445 z7_g24_tx_attemp_data_prep:
-0x8001a 037446 jam 0xff ,mem_24g_common_temp
-0x8001b 037447 fetch 1 ,mem_24g_data_type
-0x8001c 037448 store 1 ,mem_24g_common_temp + 1
-0x8001d 037449 fetch 4 ,mem_24g_device_addr
-0x8001e 037450 store 4 ,mem_24g_common_temp + 2
-0x8001f 037451 arg 6 ,temp
-0x80020 037452 arg mem_24g_common_temp ,rega
-0x80021 037453 call p_g24_put_data_in_buff
-0x80022 037454 branch p_g24_transmit_prep
-:      037456 z_g24_auto_pair_retry:
-0x80023 037457 fetch 1 ,mem_24g_check_dongle_times
-0x80024 037458 increase 1 ,pdata
-0x80025 037459 store 1 ,mem_24g_check_dongle_times
-0x80026 037460 fetch 1 ,mem_24g_auto_paring_switch
-0x80027 037461 increase 1 ,pdata
-0x80028 037462 and_into 1 ,pdata
-0x80029 037463 store 1 ,mem_24g_auto_paring_switch
-0x8002a 037464 beq 0 ,z_g24_auto_pair_device_attemp
-0x8002b 037465 beq 1 ,z_g24_auto_pair_pair_attemp
-0x8002c 037466 rtn
-:      037468 z_g24_auto_pair_all_powerful:
-0x8002d 037469 jam tx_power_pair ,mem_tx_power
-0x8002e 037470 setarg 0x0f0f
-0x8002f 037471 store 2 ,mem_24g_addr
-0x80030 037472 istore 2 ,contw
-:      037473 z_g24_ch_syncword_crc8_init:
-0x80031 037474 call p_g24_syncword_crc8
-0x80032 037475 branch p_g24_ch
-:      037477 z_g24_auto_pair_device_attemp:
-0x80033 037478 call z_g24_auto_pair_all_powerful
-0x80034 037479 branch z_g24_auto_pair_start_loop
-:      037481 z_g24_auto_pair_pair_attemp:
-0x80035 037482 call z_g24_pair_init
-0x80036 037483 branch z_g24_auto_pair_start_loop
-:      037485 z_g24_start_pairing_sm1:
-0x80037 037486 set1 mark_24g ,mark
-0x80038 037487 call z_g24_pair_init
-:      037488 z_g24_set_pairing_sm_1:
-0x80039 037489 jam state_24g_pairing_1 ,mem_24g_pairing_sm
-0x8003a 037490 rtn
-:      037492 z_g24_pair_init:
-0x8003b 037493 jam tx_power_pair ,mem_tx_power
-0x8003c 037494 jam 0 ,mem_24g_pid
-0x8003d 037495 jam g24_pair_ch ,mem_24g_ch
-0x8003e 037496 fetch 4 ,mem_24g_paring_addr
-0x8003f 037497 branch p_g24_update_addr_and_synccrc8
+:      037564 z_entrance7:
+0x80001 037565 beq zcode_70 ,z_g24_auto_pair_start
+0x80002 037566 rtn
+:      037568 z_g24_auto_pair_start:
+0x80003 037569 set0 mark_24g ,mark
+0x80004 037570 call z_g24_auto_pair_all_powerful
+0x80005 037571 call z7_g24_tx_attemp_data_prep
+:      037572 z_g24_auto_pair_restart:
+0x80006 037573 jam 0 ,mem_24g_check_dongle_times
+:      037574 z_g24_auto_pair_start_loop:
+0x80007 037576 nop 2000
+0x80008 037577 fetch 1 ,mem_24g_check_dongle_times
+0x80009 037578 beq 0xff ,p_g24_stop_g24_mode
+0x8000a 037579 call p_g24_transmit_receive_ack
+0x8000b 037580 nbranch z_g24_auto_pair_retry ,sync
+0x8000c 037581 nbranch z_g24_auto_pair_retry ,user3
+0x8000d 037582 call p_g24_ackpayload_parse
+0x8000e 037583 call p_mouse_tx_power_init
+0x8000f 037584 fetch 4 ,mem_24g_addr
+0x80010 037585 fetcht 4 ,mem_24g_paring_addr
+0x80011 037586 isub temp ,null
+0x80012 037587 branch z_g24_start_pairing_sm1 ,zero
+0x80013 037588 set1 mark_24g ,mark
+0x80014 037589 setarg 0
+0x80015 037590 store 2 ,mem_24g_check_dongle_times
+0x80016 037591 jam bt_evt_24g_attempt_success ,mem_fifo_temp
+0x80017 037592 call ui_ipc_send_event
+0x80018 037593 call p_g24_txbuf_clear
+0x80019 037594 branch p_g24_transmit_by_interrupt_enable
+:      037596 z7_g24_tx_attemp_data_prep:
+0x8001a 037597 jam 0xff ,mem_24g_common_temp
+0x8001b 037598 fetch 1 ,mem_24g_data_type
+0x8001c 037599 store 1 ,mem_24g_common_temp + 1
+0x8001d 037600 fetch 4 ,mem_24g_device_addr
+0x8001e 037601 store 4 ,mem_24g_common_temp + 2
+0x8001f 037602 arg 6 ,temp
+0x80020 037603 arg mem_24g_common_temp ,rega
+0x80021 037604 call p_g24_put_data_in_buff
+0x80022 037605 branch p_g24_transmit_prep
+:      037607 z_g24_auto_pair_retry:
+0x80023 037608 fetch 1 ,mem_24g_check_dongle_times
+0x80024 037609 increase 1 ,pdata
+0x80025 037610 store 1 ,mem_24g_check_dongle_times
+0x80026 037611 fetch 1 ,mem_24g_auto_paring_switch
+0x80027 037612 increase 1 ,pdata
+0x80028 037613 and_into 1 ,pdata
+0x80029 037614 store 1 ,mem_24g_auto_paring_switch
+0x8002a 037615 beq 0 ,z_g24_auto_pair_device_attemp
+0x8002b 037616 beq 1 ,z_g24_auto_pair_pair_attemp
+0x8002c 037617 rtn
+:      037619 z_g24_auto_pair_all_powerful:
+0x8002d 037620 jam tx_power_pair ,mem_tx_power
+0x8002e 037621 setarg 0x0f0f
+0x8002f 037622 store 2 ,mem_24g_addr
+0x80030 037623 istore 2 ,contw
+:      037624 z_g24_ch_syncword_crc8_init:
+0x80031 037625 call p_g24_syncword_crc8
+0x80032 037626 branch p_g24_ch
+:      037628 z_g24_auto_pair_device_attemp:
+0x80033 037629 call z_g24_auto_pair_all_powerful
+0x80034 037630 branch z_g24_auto_pair_start_loop
+:      037632 z_g24_auto_pair_pair_attemp:
+0x80035 037633 call z_g24_pair_init
+0x80036 037634 branch z_g24_auto_pair_start_loop
+:      037636 z_g24_start_pairing_sm1:
+0x80037 037637 set1 mark_24g ,mark
+0x80038 037638 call z_g24_pair_init
+:      037639 z_g24_set_pairing_sm_1:
+0x80039 037640 jam state_24g_pairing_1 ,mem_24g_pairing_sm
+0x8003a 037641 rtn
+:      037643 z_g24_pair_init:
+0x8003b 037644 jam tx_power_pair ,mem_tx_power
+0x8003c 037645 jam 0 ,mem_24g_pid
+0x8003d 037646 jam g24_pair_ch ,mem_24g_ch
+0x8003e 037647 fetch 4 ,mem_24g_paring_addr
+0x8003f 037648 branch p_g24_update_addr_and_synccrc8
               org 0x90001
-:      037505 z_entrance8:
-0x90001 037506 beq zcode_80 ,z_mouse_setting_config
-0x90002 037509 rtn
-:      037518 z_le_addr_random_config:
-0x90003 037519 call load_adc_init
-0x90004 037520 fetch 2 ,mem_0_5_adc_io_data
-0x90005 037521 nbranch z_le_otp_adc_empty ,blank
-0x90006 037522 setarg 0x1122
-:      037523 z_le_otp_adc_empty:
-0x90007 037524 store 2 ,mem_random_addr_increase_count
-0x90008 037525 rtn
-:      037528 z_mouse_setting_config:
-0x90009 037529 call p_g24_set_device_addr
-0x9000a 037534 call mouse_gpio_init
-0x9000b 037535 call p_mouse_multi_led_gpio_set_float
-0x9000c 037536 fetch 1 ,mem_config_low_voltage_alarm_gpio
-0x9000d 037537 store 1 ,mem_mouse_struct_led_gpio
-0x9000e 037538 call mouse_led_on
-0x9000f 037539 fetcht 1 ,mem_24g_sw_gpio
-0x90010 037540 call gpio_config_output
-0x90011 037541 fetcht 1 ,mem_flash_ncs_gpio
-0x90012 037542 call gpio_config_output
-0x90013 037544 call mouse_param_init
-0x90014 037545 call z_mouse_bt_sdp_update
-0x90015 037546 setarg 0
-0x90016 037547 store 2 ,mem_lpm_interval
-0x90017 037548 call load_adc_init
-0x90018 037549 call mouse_adc_init
-0x90019 037550 call le_set_config_fixed_ltk
-0x9001a 037551 call le_set_justwork
-0x9001b 037552 call le_set_fixed_ltk
-0x9001c 037553 call le_set_config_read_authentication
-0x9001d 037554 call p_le_addr_random_config
-0x9001e 037555 branch p_mouse_load_flash_info_check
-:      037558 z_mouse_bt_sdp_update:
-0x9001f 037559 call enable_authrom
-0x90020 037560 arg 0x8c00 ,contr
-0x90021 037561 arg mem_mouse_uuid_list ,contw
-0x90022 037562 arg 369 ,loopcnt
-0x90023 037563 call memcpy
-0x90024 037565 setarg 0x0f0209
-0x90025 037566 istore 3 ,contw
-0x90026 037567 setarg 0x120009
-0x90027 037568 istore 3 ,contw
-0x90028 037570 setarg 0x100209
-0x90029 037571 istore 3 ,contw
-0x9002a 037572 setarg 0x000009
-0x9002b 037573 istore 3 ,contw
-0x9002c 037574 arg 0x8d71 ,contr
-0x9002d 037575 arg 265 ,loopcnt
-0x9002e 037576 call memcpy
-0x9002f 037578 jam 0 ,mem_mouse_uuid_list + 23
-0x90030 037579 jam 0x6d ,mem_mouse_uuid_list + 15
-0x90031 037580 setarg 0x401f
-0x90032 037581 store 2 ,mem_mouse_uuid_list + 357
-0x90033 037582 setarg 0x6d04
-0x90034 037583 store 2 ,mem_mouse_uuid_list + 462
-0x90035 037584 setarg 0x16b0
-0x90036 037585 store 2 ,mem_mouse_uuid_list + 468
-0x90037 037587 setarg mem_mouse_uuid_list
-0x90038 037588 store 2 ,mem_ui_uuid_table
-0x90039 037589 rtn
+:      037656 z_entrance8:
+0x90001 037657 beq zcode_80 ,z_mouse_setting_config
+0x90002 037660 rtn
+:      037669 z_le_addr_random_config:
+0x90003 037670 call load_adc_init
+0x90004 037671 fetch 2 ,mem_0_5_adc_io_data
+0x90005 037672 nbranch z_le_otp_adc_empty ,blank
+0x90006 037673 setarg 0x1122
+:      037674 z_le_otp_adc_empty:
+0x90007 037675 store 2 ,mem_random_addr_increase_count
+0x90008 037676 rtn
+:      037679 z_mouse_setting_config:
+0x90009 037680 call p_g24_set_device_addr
+0x9000a 037685 call mouse_gpio_init
+0x9000b 037686 call p_mouse_multi_led_gpio_set_float
+0x9000c 037687 fetch 1 ,mem_config_low_voltage_alarm_gpio
+0x9000d 037688 store 1 ,mem_mouse_struct_led_gpio
+0x9000e 037689 call mouse_led_on
+0x9000f 037690 fetcht 1 ,mem_24g_sw_gpio
+0x90010 037691 call gpio_config_output
+0x90011 037692 fetcht 1 ,mem_flash_ncs_gpio
+0x90012 037693 call gpio_config_output
+0x90013 037695 call mouse_param_init
+0x90014 037696 call z_mouse_bt_sdp_update
+0x90015 037697 setarg 0
+0x90016 037698 store 2 ,mem_lpm_interval
+0x90017 037699 call load_adc_init
+0x90018 037700 call mouse_adc_init
+0x90019 037706 branch p_mouse_load_flash_info_check
+:      037709 z_mouse_bt_sdp_update:
+0x9001a 037710 call enable_authrom
+0x9001b 037711 arg 0x8c00 ,contr
+0x9001c 037712 arg mem_mouse_uuid_list ,contw
+0x9001d 037713 arg 369 ,loopcnt
+0x9001e 037714 call memcpy
+0x9001f 037716 setarg 0x0f0209
+0x90020 037717 istore 3 ,contw
+0x90021 037718 setarg 0x120009
+0x90022 037719 istore 3 ,contw
+0x90023 037721 setarg 0x100209
+0x90024 037722 istore 3 ,contw
+0x90025 037723 setarg 0x000009
+0x90026 037724 istore 3 ,contw
+0x90027 037725 arg 0x8d71 ,contr
+0x90028 037726 arg 265 ,loopcnt
+0x90029 037727 call memcpy
+0x9002a 037729 jam 0 ,mem_mouse_uuid_list + 23
+0x9002b 037730 jam 0x6d ,mem_mouse_uuid_list + 15
+0x9002c 037731 setarg 0x401f
+0x9002d 037732 store 2 ,mem_mouse_uuid_list + 357
+0x9002e 037733 setarg 0x6d04
+0x9002f 037734 store 2 ,mem_mouse_uuid_list + 462
+0x90030 037735 setarg 0x16b0
+0x90031 037736 store 2 ,mem_mouse_uuid_list + 468
+0x90032 037738 setarg mem_mouse_uuid_list
+0x90033 037739 store 2 ,mem_ui_uuid_table
+0x90034 037740 rtn
               org 0xa0001
-:      037595 z_entrance9:
-0xa0001 037596 beq zcode_90 ,z_g24_pairing_sm
-0xa0002 037597 beq zcode_91 ,z_g24_paring_mode
-0xa0003 037598 beq zcode_92 ,z_mouse_24g_pairing_complete
-0xa0004 037599 rtn
-:      037601 z_g24_pairing_sm:
-0xa0005 037602 fetch 1 ,mem_24g_ensure
-0xa0006 037603 beq ensure_on_24g ,enable_user
-0xa0007 037604 fetch 1 ,mem_24g_pairing_sm
-0xa0008 037605 beq state_24g_pairing_1 ,z_g24_pairing_sm_1
-0xa0009 037606 beq state_24g_pairing_2 ,z_g24_pairing_sm_2
-0xa000a 037607 beq state_24g_pairing_3 ,z_g24_pairing_sm_3
-0xa000b 037608 branch assert
-:      037610 z_g24_pairing_sm_1:
-0xa000c 037611 jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm
-0xa000d 037612 jam 0xaa ,mem_24g_common_temp
-0xa000e 037613 branch z_g24_pairing_sm_common
-:      037614 z_g24_pairing_sm_2:
-0xa000f 037615 jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm
-0xa0010 037616 jam 0x55 ,mem_24g_common_temp
-0xa0011 037617 branch z_g24_pairing_sm_common
-:      037618 z_g24_pairing_sm_3:
-0xa0012 037619 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm
-0xa0013 037620 jam 0x22 ,mem_24g_common_temp
-:      037621 z_g24_pairing_sm_common:
-0xa0014 037622 fetch 1 ,mem_24g_data_type
-0xa0015 037623 and_into bits_data ,pdata
-0xa0016 037624 store 1 ,mem_24g_common_temp + 1
-0xa0017 037625 fetch 4 ,mem_24g_device_addr
-0xa0018 037626 store 4 ,mem_24g_common_temp + 2
-:      037627 z_g24_put_pairing_data_in_buff:
-0xa0019 037628 jam 0 ,mem_24g_common_temp + 6
-0xa001a 037629 arg mem_24g_common_temp ,rega
-0xa001b 037630 arg 7 ,temp
-0xa001c 037631 call p_g24_put_data_in_buff
-0xa001d 037632 call p_g24_txdata_enable_tx
-0xa001e 037633 branch enable_user
-:      037635 z_g24_paring_mode:
-0xa001f 037636 fetch 1 ,mem_24g_pairing_sm
-0xa0020 037637 rtneq state_24g_pairing_success
-0xa0021 037638 beq state_24g_pairing_1_waiting_ack ,z_g24_pairing_sm_1_waiting_ack
-0xa0022 037639 beq state_24g_pairing_2_waiting_ack ,z_g24_pairing_sm_2_waiting_ack
-0xa0023 037640 beq state_24g_pairing_3_waiting_ack ,z_g24_pairing_sm_3_waiting_ack
-0xa0024 037641 rtn
-:      037643 z_g24_pairing_sm_1_waiting_ack:
-0xa0025 037644 jam state_24g_pairing_2 ,mem_24g_pairing_sm
-0xa0026 037645 branch p_g24_transmit_abandon
-:      037646 z_g24_pairing_sm_2_waiting_ack:
-0xa0027 037647 jam state_24g_pairing_3 ,mem_24g_pairing_sm
-0xa0028 037648 branch p_g24_transmit_abandon
-:      037649 z_g24_pairing_sm_3_waiting_ack:
-0xa0029 037650 jam state_24g_pairing_success ,mem_24g_pairing_sm
-0xa002a 037651 jam bt_evt_24g_pairing_complete ,mem_fifo_temp
-0xa002b 037652 call ui_ipc_send_event
-0xa002c 037653 fetch 4 ,mem_24g_rxpayload + 2
-0xa002d 037654 call p_g24_update_addr_and_synccrc8
-0xa002e 037655 branch p_g24_transmit_abandon
-:      037658 z_mouse_24g_pairing_complete:
-0xa002f 037659 call p_low_power_no_data_off_led_time_nolimited
-0xa0030 037660 call p_mouse_24g_no_data_timer_init
-0xa0031 037661 jam 1 ,mem_mouse_24g_enter_lpm_enable
-0xa0032 037662 arg mosue_24g_pairing_flag ,queue
-0xa0033 037663 call mouse_disable_function_flag
-0xa0034 037664 setarg 0
-0xa0035 037665 store 2 ,mem_24g_pairing_timer_count
-0xa0036 037666 jam 0 ,mem_mouse_move_flag
-0xa0037 037668 call mouse_read_sensor_common
-0xa0038 037670 call p_mouse_tx_power_init
-0xa0039 037672 fetch 4 ,mem_24g_addr
-0xa003a 037673 store 4 ,mem_mouse_24g_addr
-0xa003b 037675 branch p_mouse_store_flash_device_info
+:      037746 z_entrance9:
+0xa0001 037747 beq zcode_90 ,z_g24_pairing_sm
+0xa0002 037748 beq zcode_91 ,z_g24_paring_mode
+0xa0003 037749 beq zcode_92 ,z_mouse_24g_pairing_complete
+0xa0004 037750 rtn
+:      037752 z_g24_pairing_sm:
+0xa0005 037753 fetch 1 ,mem_24g_ensure
+0xa0006 037754 beq ensure_on_24g ,enable_user
+0xa0007 037755 fetch 1 ,mem_24g_pairing_sm
+0xa0008 037756 beq state_24g_pairing_1 ,z_g24_pairing_sm_1
+0xa0009 037757 beq state_24g_pairing_2 ,z_g24_pairing_sm_2
+0xa000a 037758 beq state_24g_pairing_3 ,z_g24_pairing_sm_3
+0xa000b 037759 branch assert
+:      037761 z_g24_pairing_sm_1:
+0xa000c 037762 jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm
+0xa000d 037763 jam 0xaa ,mem_24g_common_temp
+0xa000e 037764 branch z_g24_pairing_sm_common
+:      037765 z_g24_pairing_sm_2:
+0xa000f 037766 jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm
+0xa0010 037767 jam 0x55 ,mem_24g_common_temp
+0xa0011 037768 branch z_g24_pairing_sm_common
+:      037769 z_g24_pairing_sm_3:
+0xa0012 037770 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm
+0xa0013 037771 jam 0x22 ,mem_24g_common_temp
+:      037772 z_g24_pairing_sm_common:
+0xa0014 037773 fetch 1 ,mem_24g_data_type
+0xa0015 037774 and_into bits_data ,pdata
+0xa0016 037775 store 1 ,mem_24g_common_temp + 1
+0xa0017 037776 fetch 4 ,mem_24g_device_addr
+0xa0018 037777 store 4 ,mem_24g_common_temp + 2
+:      037778 z_g24_put_pairing_data_in_buff:
+0xa0019 037779 jam 0 ,mem_24g_common_temp + 6
+0xa001a 037780 arg mem_24g_common_temp ,rega
+0xa001b 037781 arg 7 ,temp
+0xa001c 037782 call p_g24_put_data_in_buff
+0xa001d 037783 call p_g24_txdata_enable_tx
+0xa001e 037784 branch enable_user
+:      037786 z_g24_paring_mode:
+0xa001f 037787 fetch 1 ,mem_24g_pairing_sm
+0xa0020 037788 rtneq state_24g_pairing_success
+0xa0021 037789 beq state_24g_pairing_1_waiting_ack ,z_g24_pairing_sm_1_waiting_ack
+0xa0022 037790 beq state_24g_pairing_2_waiting_ack ,z_g24_pairing_sm_2_waiting_ack
+0xa0023 037791 beq state_24g_pairing_3_waiting_ack ,z_g24_pairing_sm_3_waiting_ack
+0xa0024 037792 rtn
+:      037794 z_g24_pairing_sm_1_waiting_ack:
+0xa0025 037795 jam state_24g_pairing_2 ,mem_24g_pairing_sm
+0xa0026 037796 branch p_g24_transmit_abandon
+:      037797 z_g24_pairing_sm_2_waiting_ack:
+0xa0027 037798 jam state_24g_pairing_3 ,mem_24g_pairing_sm
+0xa0028 037799 branch p_g24_transmit_abandon
+:      037800 z_g24_pairing_sm_3_waiting_ack:
+0xa0029 037801 jam state_24g_pairing_success ,mem_24g_pairing_sm
+0xa002a 037802 jam bt_evt_24g_pairing_complete ,mem_fifo_temp
+0xa002b 037803 call ui_ipc_send_event
+0xa002c 037804 fetch 4 ,mem_24g_rxpayload + 2
+0xa002d 037805 call p_g24_update_addr_and_synccrc8
+0xa002e 037806 branch p_g24_transmit_abandon
+:      037809 z_mouse_24g_pairing_complete:
+0xa002f 037810 call p_low_power_no_data_off_led_time_nolimited
+0xa0030 037811 call p_mouse_24g_no_data_timer_init
+0xa0031 037812 jam 1 ,mem_mouse_24g_enter_lpm_enable
+0xa0032 037813 arg mosue_24g_pairing_flag ,queue
+0xa0033 037814 call mouse_disable_function_flag
+0xa0034 037815 setarg 0
+0xa0035 037816 store 2 ,mem_24g_pairing_timer_count
+0xa0036 037817 jam 0 ,mem_mouse_move_flag
+0xa0037 037819 call mouse_read_sensor_common
+0xa0038 037821 call p_mouse_tx_power_init
+0xa0039 037823 fetch 4 ,mem_24g_addr
+0xa003a 037824 store 4 ,mem_mouse_24g_addr
+0xa003b 037826 branch p_mouse_store_flash_device_info
               org 0xb0001
-:      037680 z_entrancea:
-0xb0001 037681 beq zcode_a0 ,z_mouse_24g_attempt_fail
-0xb0002 037682 beq zcode_a1 ,z_mouse_le_conn_param_update_rsp_recieved
-0xb0003 037683 beq zcode_a2 ,z_mouse_le_bb_disconnected
-0xb0004 037684 beq zcode_a3 ,z_mouse_bb_event_reconn_timeout
-0xb0005 037685 beq zcode_a4 ,z_mouse_before_hibernate
-0xb0006 037686 rtn
-:      037688 z_mouse_24g_attempt_fail:
-0xb0007 037689 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
-0xb0008 037690 call p_mouse_tx_power_init
-0xb0009 037691 call p_g24_check_51cmd_stop_24g
-0xb000a 037692 jam 0 ,mem_link_key_exists
-0xb000b 037693 call p_mouse_setgpio_hibernate
-0xb000c 037694 branch p_mouse_null_enter_hibernate_enable
-:      037696 z_mouse_le_conn_param_update_rsp_recieved:
-0xb000d 037697 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result
-0xb000e 037698 rtneq ble_signaling_connect_parameter_update_accepted
-0xb000f 037699 fetch 1 ,mem_le_tsniff
-0xb0010 037700 rshift2 pdata ,pdata
-0xb0011 037701 sub pdata ,le_interval_15ms ,null
-0xb0012 037702 branch z_mouse_le_conn_param_update_rsp_not_accepted ,positive
-0xb0013 037703 setarg le_interval_11_25ms
-0xb0014 037704 store 2 ,mem_le_interval_min
-0xb0015 037705 store 2 ,mem_le_interval_min + 2
-0xb0016 037706 call p_app_updata_le_param
-0xb0017 037707 jam le_lpm_disable ,mem_mouse_le_conn_param_reject
-0xb0018 037708 rtn
-:      037710 z_mouse_le_conn_param_update_rsp_not_accepted:
-0xb0019 037711 jam 1 ,mem_mouse_le_updata_not_accepted_flag
-0xb001a 037712 branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset
-:      037714 z_mouse_bb_event_reconn_timeout:
-:      037715 z_mouse_bb_event_reconn_failed:
-0xb001b 037716 fetch 2 ,mem_ui_state_map
-0xb001c 037717 rtnbit1 ui_state_btn_down
-0xb001d 037718 rtnbit1 ui_state_bt_discovery
-0xb001e 037719 rtnbit1 ui_state_ble_adv
-0xb001f 037720 fetch mouse_flag_len ,mem_mouse_flag
-0xb0020 037721 rtnbit1 mouse_bt_discovery_button_down_flag
-0xb0021 037722 branch app_bb_hibernate
-:      037724 z_mouse_le_bb_disconnected:
-0xb0022 037725 setarg le_interval_8_75ms
-0xb0023 037726 store 2 ,mem_le_interval_min
-0xb0024 037727 store 2 ,mem_le_interval_min + 2
-0xb0025 037728 jam le_lpm_enable ,mem_mouse_le_conn_param_reject
-0xb0026 037729 jam 0 ,mem_mouse_clear_sensor_data_flag
-0xb0027 037730 call p_mouse_data_init
-0xb0028 037731 call le_clr_config_more_data
-0xb0029 037732 branch mouse_bb_disconnected
-:      037735 z_mouse_before_hibernate:
-0xb002a 037736 enable user
-0xb002b 037737 hfetch 4 ,0x8138
-0xb002c 037738 setflag user ,26 ,pdata
-0xb002d 037739 hstore 4 ,core_lpm_reg
-0xb002e 037740 call lpm_write_ctrl
-0xb002f 037741 call disable_authrom
-0xb0030 037742 call mouse_devce_led_off
-0xb0031 037743 call mouse_before_hibernate_wheel_gpio_set
-0xb0032 037744 fetcht 1 ,mem_24g_sw_gpio
-0xb0033 037745 call gpio_out_active
-0xb0034 037746 call p_mouse_setgpio_hibernate
-0xb0035 037747 fetch 1 ,mem_device_flag
-0xb0036 037748 sub pdata ,mode_24g_device ,null
-0xb0037 037749 call p_mouse_select_device_button_gpio_set_suspend ,zero
-0xb0038 037751 call p_flash_deep_power_down
-0xb0039 037752 hfetch 1 ,core_gpio_sel1
-0xb003a 037753 and pdata ,0xf7 ,pdata
-0xb003b 037754 hstore 1 ,core_gpio_sel1
-0xb003c 037756 fetcht 1 ,mem_sensor_data_gpio
-0xb003d 037757 branch gpio_clr_wake
+:      037831 z_entrancea:
+0xb0001 037832 beq zcode_a0 ,z_mouse_24g_attempt_fail
+0xb0002 037833 beq zcode_a1 ,z_mouse_le_conn_param_update_rsp_recieved
+0xb0003 037834 beq zcode_a2 ,z_mouse_le_bb_disconnected
+0xb0004 037835 beq zcode_a3 ,z_mouse_bb_event_reconn_timeout
+0xb0005 037836 beq zcode_a4 ,z_mouse_before_hibernate
+0xb0006 037837 rtn
+:      037839 z_mouse_24g_attempt_fail:
+0xb0007 037840 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
+0xb0008 037841 call p_mouse_tx_power_init
+0xb0009 037842 call p_g24_check_51cmd_stop_24g
+0xb000a 037843 jam 0 ,mem_link_key_exists
+0xb000b 037844 call p_mouse_setgpio_hibernate
+0xb000c 037845 branch p_mouse_null_enter_hibernate_enable
+:      037847 z_mouse_le_conn_param_update_rsp_recieved:
+0xb000d 037848 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result
+0xb000e 037849 rtneq ble_signaling_connect_parameter_update_accepted
+0xb000f 037850 fetch 1 ,mem_le_tsniff
+0xb0010 037851 rshift2 pdata ,pdata
+0xb0011 037852 sub pdata ,le_interval_15ms ,null
+0xb0012 037853 branch z_mouse_le_conn_param_update_rsp_not_accepted ,positive
+0xb0013 037854 setarg le_interval_11_25ms
+0xb0014 037855 store 2 ,mem_le_interval_min
+0xb0015 037856 store 2 ,mem_le_interval_min + 2
+0xb0016 037858 jam le_lpm_disable ,mem_mouse_le_conn_param_reject
+0xb0017 037859 rtn
+:      037861 z_mouse_le_conn_param_update_rsp_not_accepted:
+0xb0018 037862 jam 1 ,mem_mouse_le_updata_not_accepted_flag
+0xb0019 037863 branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset
+:      037865 z_mouse_bb_event_reconn_timeout:
+:      037866 z_mouse_bb_event_reconn_failed:
+0xb001a 037867 fetch 2 ,mem_ui_state_map
+0xb001b 037868 rtnbit1 ui_state_btn_down
+0xb001c 037869 rtnbit1 ui_state_bt_discovery
+0xb001d 037870 rtnbit1 ui_state_ble_adv
+0xb001e 037871 fetch mouse_flag_len ,mem_mouse_flag
+0xb001f 037872 rtnbit1 mouse_bt_discovery_button_down_flag
+0xb0020 037873 branch app_bb_hibernate
+:      037875 z_mouse_le_bb_disconnected:
+0xb0021 037876 setarg le_interval_8_75ms
+0xb0022 037877 store 2 ,mem_le_interval_min
+0xb0023 037878 store 2 ,mem_le_interval_min + 2
+0xb0024 037879 jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+0xb0025 037880 jam 0 ,mem_mouse_clear_sensor_data_flag
+0xb0026 037881 call p_mouse_data_init
+0xb0027 037882 call le_clr_config_more_data
+0xb0028 037883 branch mouse_bb_disconnected
+:      037886 z_mouse_before_hibernate:
+0xb0029 037887 enable user
+0xb002a 037888 hfetch 4 ,0x8138
+0xb002b 037889 setflag user ,26 ,pdata
+0xb002c 037890 hstore 4 ,core_lpm_reg
+0xb002d 037891 call lpm_write_ctrl
+0xb002e 037892 call disable_authrom
+0xb002f 037893 call mouse_devce_led_off
+0xb0030 037894 call mouse_before_hibernate_wheel_gpio_set
+0xb0031 037895 fetcht 1 ,mem_24g_sw_gpio
+0xb0032 037896 call gpio_out_active
+0xb0033 037897 call p_mouse_setgpio_hibernate
+0xb0034 037898 fetch 1 ,mem_device_flag
+0xb0035 037899 sub pdata ,mode_24g_device ,null
+0xb0036 037900 call p_mouse_select_device_button_gpio_set_suspend ,zero
+0xb0037 037902 call p_flash_deep_power_down
+0xb0038 037903 hfetch 1 ,core_gpio_sel1
+0xb0039 037904 and pdata ,0xf7 ,pdata
+0xb003a 037905 hstore 1 ,core_gpio_sel1
+0xb003b 037907 fetcht 1 ,mem_sensor_data_gpio
+0xb003c 037908 branch gpio_clr_wake
               org 0xc0001
-:      037762 z_entranceb:
-0xc0001 037763 beq zcode_b0 ,z_mouse_le_bb_event_connected
-0xc0002 037764 beq zcode_b1 ,z_mouse_sniff_not_accept
-0xc0003 037765 beq zcode_b2 ,z_mouse_enter_sniff_check
-0xc0004 037766 beq zcode_b3 ,z_mouse_le_ll_start_encryt
-0xc0005 037767 beq zcode_b4 ,z_mouse_bb_event_disconnected
-0xc0006 037768 rtn
-:      037770 z_mouse_le_bb_event_connected:
-0xc0007 037771 call p_low_power_no_data_off_led_time_nolimited
-0xc0008 037774 branch mouse_le_bb_event_connected
-:      037776 z_mouse_sniff_not_accept:
-0xc0009 037777 fetch 1 ,mem_mouse_enter_sniff_count
-0xc000a 037778 rtneq 2
-0xc000b 037779 increase 1 ,pdata
-0xc000c 037780 store 1 ,mem_mouse_enter_sniff_count
-0xc000d 037781 jam 0x12 ,mem_sniff_param_interval
-0xc000e 037782 branch app_bt_enter_sniff
-:      037784 z_mouse_enter_sniff_check:
-0xc000f 037785 fetch 1 ,mem_mouse_enter_sniff_count
-0xc0010 037786 rtnne 2
-0xc0011 037787 jam 0 ,mem_mouse_enter_sniff_count
-0xc0012 037788 jam 0x0e ,mem_sniff_param_interval
-0xc0013 037789 branch app_bt_enter_sniff
-:      037791 z_mouse_le_ll_start_encryt:
-0xc0014 037792 fetch 1 ,mem_mouse_le_reconnect_flag
-0xc0015 037793 beq 1 ,z_mouse_le_ll_reconn_start_encryt
-0xc0016 037794 branch z_mouse_le_ll_enable_start_enc_flag
-:      037795 z_mouse_le_ll_reconn_start_encryt:
-0xc0017 037796 call p_app_updata_le_param
-0xc0018 037797 jam 5 ,mem_le_start_encrypt_timer
-:      037798 z_mouse_le_ll_enable_start_enc_flag:
-0xc0019 037799 arg ll_start_enc_flag ,queue
-0xc001a 037800 branch mouse_le_enable_connect_flag
-:      037802 z_mouse_bb_event_disconnected:
-0xc001b 037803 jam 0 ,mem_bt_rcvd_switch_req_accept
-0xc001c 037804 jam 0 ,mem_bt_send_lmp_setup_complete
-0xc001d 037805 jam 0 ,mem_mouse_bt_send_first_package_flag
-0xc001e 037806 branch mouse_bb_disconnected
+:      037913 z_entranceb:
+0xc0001 037914 beq zcode_b0 ,z_mouse_le_bb_event_connected
+0xc0002 037915 beq zcode_b1 ,z_mouse_sniff_not_accept
+0xc0003 037916 beq zcode_b2 ,z_mouse_enter_sniff_check
+0xc0004 037917 beq zcode_b3 ,z_mouse_le_ll_start_encryt
+0xc0005 037918 beq zcode_b4 ,z_mouse_bb_event_disconnected
+0xc0006 037919 rtn
+:      037921 z_mouse_le_bb_event_connected:
+0xc0007 037922 call p_low_power_no_data_off_led_time_nolimited
+0xc0008 037925 branch mouse_le_bb_event_connected
+:      037927 z_mouse_sniff_not_accept:
+0xc0009 037928 fetch 1 ,mem_mouse_enter_sniff_count
+0xc000a 037929 rtneq 2
+0xc000b 037930 increase 1 ,pdata
+0xc000c 037931 store 1 ,mem_mouse_enter_sniff_count
+0xc000d 037932 jam 0x12 ,mem_sniff_param_interval
+0xc000e 037933 branch app_bt_enter_sniff
+:      037935 z_mouse_enter_sniff_check:
+0xc000f 037936 fetch 1 ,mem_mouse_enter_sniff_count
+0xc0010 037937 rtnne 2
+0xc0011 037938 jam 0 ,mem_mouse_enter_sniff_count
+0xc0012 037939 jam 0x0e ,mem_sniff_param_interval
+0xc0013 037940 branch app_bt_enter_sniff
+:      037942 z_mouse_le_ll_start_encryt:
+0xc0014 037943 fetch 1 ,mem_mouse_le_reconnect_flag
+0xc0015 037944 beq 1 ,z_mouse_le_ll_reconn_start_encryt
+0xc0016 037945 branch z_mouse_le_ll_enable_start_enc_flag
+:      037946 z_mouse_le_ll_reconn_start_encryt:
+0xc0017 037948 jam 5 ,mem_le_start_encrypt_timer
+:      037949 z_mouse_le_ll_enable_start_enc_flag:
+0xc0018 037950 arg ll_start_enc_flag ,queue
+0xc0019 037951 branch mouse_le_enable_connect_flag
+:      037953 z_mouse_bb_event_disconnected:
+0xc001a 037954 jam 0 ,mem_bt_rcvd_switch_req_accept
+0xc001b 037955 jam 0 ,mem_bt_send_lmp_setup_complete
+0xc001c 037956 jam 0 ,mem_mouse_bt_send_first_package_flag
+0xc001d 037957 branch mouse_bb_disconnected
Index: YDN_1066_139D_NEW/output/bt_program23.meta
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/bt_program23.meta	(revision 2105)
+++ /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/bt_program23.meta	(working copy)
@@ -45,7 +45,7 @@
 define G24
 define BLE
 define CLASSIC_BT
-//define MOUSE_SMOOTHER
+define MOUSE_SMOOTHER
 define ADC_ENABLE
 //define P24G_LOG
 //define RF_DEBUG
@@ -80,8 +80,10 @@
 	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
 	branch p_mouse_setting_config
 
 p_mouse_cb_fuction:
@@ -139,7 +141,7 @@
 	nop 1
 	nop 1
 	nop 1
-	nop 1
+
 
 
 p_patch_array:
@@ -276,39 +278,9 @@
 	rtn
 	
 p_g24_transmit_by_interrupt:
-	call p_g24_timer_check
-	nrtn user
-	call p_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 p_g24_transmit_by_interrupt_exit,zero
-	branch p_g24_transmit_process
-p_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
-p_g24_interval_min:
-	jam 0,mem_24g_pac_index
-	fetch 1,mem_24g_interval_min
-p_g24_current_interval_store:
-	store 1,mem_24g_interval
-	rtn
-p_g24_interval_max:
-	fetch 1,mem_24g_interval_max
-	branch p_g24_current_interval_store
-p_g24_interval_calibrate:
-	fetch 1,mem_24g_pac_index
-	increase 1,pdata
-	store 1,mem_24g_pac_index
-	beq 4,p_g24_interval_max
-	beq 5,p_g24_interval_min
-	rtn
-
+	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
@@ -354,16 +326,6 @@
 	set0 6,pdata
 	hstore 1,core_gpio_pd2
 
-
-//	fetch 8,mem_gpio_wakeup_low
-//	set1 6,pdata 
-//	store 8,mem_gpio_wakeup_low
-//	fetcht 1,mem_config_bt_button_gpio
-//	call p_gpio_set_input_pu
-//	fetch 8,mem_gpio_wakeup_low
-//	set0 38,pdata //enable bt_button_gpio_wakeup
-//	store 8,mem_gpio_wakeup_low
-//	rtn
 p_mouse_multi_led_gpio_set_float:
 //	fetch 1,mem_mouse_multi_led_gpio
 //	rtneq UI_BUTTON_GPIO_DISABLE
@@ -381,37 +343,9 @@
 	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
-	call gpio_set_wake_by_current_state
 	fetcht 1,mem_config_bt_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
+	branch mouse_lpm_before_common+7
 p_g24_send_abort_packet:
 	jam 1,mem_24g_abort_pac
 	jam 0,mem_24g_rf_hop_ch
@@ -547,7 +481,20 @@
 	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_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_txdata_prep:
 	fetch 1,mem_24g_pairing_sm
@@ -635,8 +582,8 @@
 	call p_g24_transmit
 	
 
-	fetch 1,mem_24g_no_ack
-	beq no_ack_24g,p_g24_transmit_no_ack	//tx no ack
+//	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
@@ -646,9 +593,9 @@
 	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_transmit_no_ack:
+//	call p_g24_end_of_packet
+//	branch p_g24_transmit_next_packet
 
 p_g24_retransmit:
 	fetch 1,mem_24g_get_ack_fail
@@ -786,29 +733,38 @@
 	arg mem_24g_txbuf,contr
 	branch memcpy
 
-p_g24_ch:
-	fetcht 1,mem_24g_current_ch_number
-	call p_g24_ch_map_size
-	storet 1,mem_24g_current_ch_number
-	rtn
+//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_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_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
@@ -820,16 +776,16 @@
 	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_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:
 
 
@@ -1051,7 +1007,9 @@
 	call p_mouse_mode_bt_device1_multi_led_on
 	fetch 1,mem_xrecord_mode
 	beq REC_3_MODE,p_mouse3_0_check_reconn_target
-	beq REC_4_MODE,p_mouse4_0_check_reconn_target
+//ifdef BLE
+//	beq REC_4_MODE,p_mouse4_0_check_reconn_target
+//endif	
 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
@@ -1071,35 +1029,34 @@
 	branch p_mouse_start_24g_mode
 
 p_mouse3_0_check_reconn_target:
-//	call p_mouse_mode_bt_device_blink_5s
 	fetch 6,mem_hci_plap
 	branch app_bt_start_discovery_short,blank
 	branch mouse3_0_check_reconn_target+3
 
-p_mouse4_0_check_reconn_target:
-	jam 1,mem_le_send_security_request_flag
-	jam 1,mem_mouse_le_reconnect_flag
-	fetch 2,mem_mouse_direct_timeout
-	store 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
-
-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_mouse4_0_check_reconn_target:
+//	jam 1,mem_le_send_security_request_flag
+//	jam 1,mem_mouse_le_reconnect_flag
+//	fetch 2,mem_mouse_direct_timeout
+//	store 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
+
+//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_24g_pairing_button:
 	jam ZCODE_61,mem_zcode_temp_param0
@@ -1657,8 +1614,8 @@
 	call mouse_check_discovery_timeout_timer
 	call p_mouse_check_select_device_by_switch_timer	
 	call p_mouse_g24_long_sleep_param_update_timer
-	call p_mouse_check_direct_timeout_timer
-	call p_mouse_le_enable_att_list_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
@@ -1697,14 +1654,14 @@
 	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_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_multi_led_on_poweron2s_flag
@@ -1835,7 +1792,7 @@
 
 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
+	jam 0,mem_mouse_null_enter_hibernate_timer	
 	rtn
 
 p_mouse_multi_led_blink_timer:
@@ -1917,13 +1874,13 @@
 	rtn
 	
 //BLINK 5s
-p_mouse_mode_bt_device_blink_5s:
-p_mouse_mode_24g_device_blink_5s:
-	jam 30,mem_mouse_multi_led_blink_count
-	branch p_mouse_dpi_multi_led_blink
-p_mouse_mode_bt_device1_led_blink:
-	jam 5,mem_mouse_multi_led_blink_timer_init	//500ms
-	branch p_mouse_discovery_multi_led_blink2
+//p_mouse_mode_bt_device_blink_5s:
+//p_mouse_mode_24g_device_blink_5s:
+//	jam 30,mem_mouse_multi_led_blink_count
+//	branch p_mouse_dpi_multi_led_blink
+//p_mouse_mode_bt_device1_led_blink:
+//	jam 5,mem_mouse_multi_led_blink_timer_init	//500ms
+//	branch p_mouse_discovery_multi_led_blink2
 
 
 p_mouse_discovery_multi_led_blink:
@@ -2156,10 +2113,12 @@
 	call mouse_t_zwheel
 	call p_mouse_key
 	nbranch p_mouse_motion_nodata,user
+	call p_drawing_optima
 	call p_low_power_no_data_off_led_time
 	branch mouse_motion+9
 
 p_mouse_motion_nodata:	
+	call p_drawing_optima_init
 	jam 0,mem_low_power_check_count
 	rtn
 
@@ -3019,6 +2978,147 @@
 
 
 
+//notice: need to call p_mouse_drawing_optima_init when waked from mult
+p_drawing_optima_init:
+	arg 5,loopcnt
+	arg mem_mouse_asm_flag,contw
+	branch clear_mem
+
+p_drawing_optima:
+	fetch 4,mem_mouse_x
+	rtn blank
+	call p_data_abs_check
+	setarg 0x06	//asm_flag enable condition
+	call p_data_greater_than_check
+	setarg 0x03	//asm_flag disable condition
+	call p_data_less_than_check
+	fetch 1,mem_mouse_asm_flag
+	beq 1,p_drawing_optima_modify
+	branch p_drawing_optima_init
+
+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:
+	sub pdata,0,pdata
+	store 1,mem_rega
+	fetch 1,mem_rega
+	rshift pdata,pdata
+	store 1,mem_rega
+	fetch 1,mem_rega
+	sub pdata,0,pdata
+	rtn
+
+//rega mouse_x, regb mouse_y, pdata refer
+p_data_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
+	store 2,mem_data_current
+	call p_data_abs
+	copy pdata,rega
+	fetch 2,mem_mouse_y
+	store 2,mem_data_current
+	call p_data_abs
+	copy pdata,regb
+	rtn
+
+/***********
+input: data_current
+output:pdata,abs
+************/
+p_data_abs:
+	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
+
 
 
 
@@ -37009,8 +37109,43 @@
 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
@@ -37029,8 +37164,6 @@
 	branch newconn_poll_responded
 
 
-
-	
 org 0x20001
 
 z_entrance1:
@@ -37227,6 +37360,8 @@
 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:
@@ -37269,6 +37404,22 @@
 	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
@@ -37317,7 +37468,7 @@
 
 z_check_51cmd_adv:
 	jam 0,mem_mouse_le_reconnect_flag
-	call p_le_check_adv_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
@@ -37547,11 +37698,11 @@
 	store 2,mem_lpm_interval
 	call load_adc_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
-	call p_le_addr_random_config
+//	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
 	branch p_mouse_load_flash_info_check
 
 
@@ -37703,7 +37854,7 @@
 	setarg LE_INTERVAL_11_25MS
 	store 2,mem_le_interval_min
 	store 2,mem_le_interval_min+2
-	call p_app_updata_le_param
+//	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
@@ -37793,7 +37944,7 @@
 	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
+//	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
Index: YDN_1066_139D_NEW/output/bt_program23.rom
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/bt_program23.rom	(revision 2105)
+++ /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/bt_program23.rom	(working copy)
@@ -1,41 +1,42 @@
 00100000001000000000000001000000
-00100000010000000000001111111100
+00100000010000000000001110100110
 01101000000000001100000111011110
 01100000000000001100110010101001
-00100000010000000000011101101101
+00100000010000000000011100001101
 01101000000000001100011010000101
 01100000000000001100011011011010
 01101000000000001100101100110001
 01100000000000001100101100110010
 00100000010000000100001111001010
-00100000010000000000001100011011
-00100000010000000000000000001110
-00100000010000000000000000100001
-00100000001000000000001101100101
-01011000000000000000001111010010
+00100000010000000000001011000101
+00100000010000000000011110011010
+00100000010000000000000000001111
+00100000010000000000000000100010
+00100000001000000000001100001111
+01011000000000000000001101111100
 01100000000000010100110100100011
-01011000000000000000001111101100
+01011000000000000000001110010110
 01100000000000010100000111101111
-01011000000000000000011010101110
+01011000000000000000011001001110
 01100000000000010100000111111001
-01011000000000000000010000010111
+01011000000000000000001111000001
 01100000000000010100000111110001
-01011000000000000000001011011011
+01011000000000000000001010011000
 01100000000000010100000111101101
-01011000000000000000010001011000
+01011000000000000000010000000010
 01100000000000010100000111110101
-01011000000000000000010000111101
+01011000000000000000001111100111
 01100000000000010100000111110011
-01011000000000000000010010010101
+01011000000000000000010000111111
 01100000000000010100000111101011
-01011000000000000000010010011100
+01011000000000000000010001000110
 01100000000000010100000111111101
 00100000011000000000000000000000
 01011000000000000000000000011001
 01100000000000010100110100110101
-00100100010101011000000000101001
-00100000010000000000001100011101
-00100000010000000000001101011110
+00100100010101011000000000101010
+00100000010000000000001011000111
+00100000010000000000001100001000
 01101000000000001100011100011111
 01100000000000001100011100011110
 00100000011000000000000000000000
@@ -61,49 +62,48 @@
 00100000000000000000000000000001
 00100000000000000000000000000001
 00100000000000000000000000000001
-00100000000000000000000000000001
 11000010100001000000000001011001
 11000000000000001000000001110101
 11000000000000010000000001111110
-11000000010000101000011111011001
-11000000010001001000011110101010
-11000000000011011000011011000111
-11000000000100110000011011001001
-11000000001001000000011011100101
-11000000001001010000011011101100
-11000000001010001000011011110101
-11000000001011001000011011100011
-11000000010100111000011011111010
-11000000010101101000011100010000
+11000000010000101000011101111001
+11000000010001001000011101001010
+11000000000011011000011001100111
+11000000000100110000011001101001
+11000000001001000000011010000101
+11000000001001010000011010001100
+11000000001010001000011010010101
+11000000001011001000011010000011
+11000000010100111000011010011010
+11000000010101101000011010110000
 11000000011001011011001111100100
-11000000011101001000011100100001
+11000000011101001000011011000001
 11000000010100001000000010000111
 11000000010110001000000010001100
 11000000010110010000000010011010
-11000000011000100000001011101000
-11000000011100011000010110001011
-11000000011100110000010110110110
-11000000011101010000010111101100
-11000000011101011000010111110010
-11000000011101100000010111111111
+11000000011000100000001010100101
+11000000011100011000010100101001
+11000000011100110000010101010100
+11000000011101010000010110001100
+11000000011101011000010110010010
+11000000011101100000010110011111
 00100000001000000010101010001110
-11000000000111001000011000000110
-11000000001000011000011000001110
-11000000001001010000011000010100
-11000000001010111000011000010111
-11000000001011001000011000011001
-11000000001100011000011000011011
-11000000001100110000011001000101
-11000000001100111000011001100000
-11000000001101010000011010011001
-11000000001110111000011010100100
-11000000000000101000011100100011
-11000000010000000000011100100101
-11000000010000010000011100101111
-11000000010001000000011100110001
-11000000010001100000011010110100
-11000000010001101000011011000000
-11000000011111010000011101010101
+11000000000111001000010110100110
+11000000001000011000010110101110
+11000000001001010000010110110100
+11000000001010111000010110110111
+11000000001011001000010110111001
+11000000001100011000010110111011
+11000000001100110000010111100101
+11000000001100111000011000000000
+11000000001101010000011000111001
+11000000001110111000011001000100
+11000000000000101000011011000011
+11000000010000000000011011000101
+11000000010000010000011011001111
+11000000010001000000011011010001
+11000000010001100000011001010100
+11000000010001101000011001100000
+11000000011111010000011011110101
 00100000001000000010101010001110
 00011111111000100010001000000000
 01101000000010001100110010101101
@@ -118,7 +118,7 @@
 11011000101000000000100110101110
 11011111001000000000000000001100
 00100000010000000111111011010100
-00100000010000000000001111100011
+00100000010000000000001110001101
 00100000010000000110101000000011
 00100000010000000101110011110110
 00100100010101011010110001100101
@@ -155,58 +155,33 @@
 11000110100100110000000000000000
 01101000000000001100110100110010
 11000000000000001000000010101101
-00100000010000000000000101110110
-00100100001101000000000011001000
-00100000010000000000000101011101
-00100000010000000000000110011001
+00100000010000000000000101010001
+00100100001101000000000010101111
+00100000010000000000000100101100
+00100000010000000000000101110100
 01101000000000001100110000000010
 11000001111111111000000000000000
-00100000010000000000011101111110
+00100000010000000000011100011110
 01101000000000001100101100100110
-11000000000000001000001111010101
-00100000010000000000000011010110
+11000000000000001000001101111111
+00100000010000000000000010111101
 00100100011101000000000000000000
-00100000010000000000001011100010
+00100000010000000000001010011111
 01011000000000001110110001010100
 00100000001000000010101110010011
 01110000010010110110101100000001
 00100000011000000000000000000000
-00100000010000000000001010101101
-00100100011101000000000000000000
-00100000010000000000000011000010
-01101000000000010100110100110011
-00011111111000001111111000000001
-01100000000000010100110100110011
-01101000000010010100110100110101
-10011000010001100111110000000000
-00100000010000101000000010110111
-00100000001000000000000010011101
-01110000010011010011001000000000
-01011000000000000000000000000000
-01100000000000010100110100110011
-01011000000000000000000000011001
-01100000000000010100110100110101
-01110000010011000010110100000000
-01101000000000001100110000011000
-01100000000000001100110000010111
-00100000011000000000000000000000
-01101000000000001100110000011001
-00100000001000000000000010111110
-01101000000000001100110000101101
-00011111111000001111111000000001
-01100000000000001100110000101101
-11000000000000100000000011000000
-11000000000000101000000010111100
-00100000011000000000000000000000
+01110000000100011100011100000001
+00100000001000000000011101111011
 01101000000000001100110000011110
-00100000010110100000000100010010
+00100000010110100000000011100001
 01101000000000001100101100101011
 00100100011110100000000000000000
 01101000000000001100101101101011
 00100100011110100000000000000000
 01101000000000001100101100100110
 11000001000000001000000000000000
-00100000010000000000000011010110
+00100000010000000000000010111101
 00100100011101000000000000000000
 01101000000000011100110000100001
 00100000010000000111111101001001
@@ -220,10 +195,10 @@
 00100000001110100111111111101001
 01101000000000001100110100110010
 11000000000000001111111111101001
-00100000010000000000001011100101
-00100000010000000000001011100010
-00100000010000000000000011110000
-00100000010000000000001101100111
+00100000010000000000001010100010
+00100000010000000000001010011111
+00100000010000000000000011010111
+00100000010000000000001100010001
 01101000000100100000000001110000
 01101000000110100000000001111000
 10011000010000011000010000000000
@@ -245,36 +220,12 @@
 00100000010000001011111011011110
 00100000010000000110100000001110
 00100000010000000110001111101110
-01101000000010001100011011100010
-00100000010000000110011111011101
-01101000000010001100011011100011
-00100000010000000110011111011101
-01101000000010001100011011100100
-00100000010000000110011111011101
-01101000000010001100011011100101
-00100000010000000110011111011101
-01101000000010001100011011100110
-00100000010000000110011111011101
-01101000000010001100011011100111
-00100000010000000110011111011101
-01101000000010001100011011101101
-00100000010000000110011111011101
-00100000010000000110011111011101
 01101000000010001100011011101100
 00100000010000000110011111011101
-01101000000010001100011011101000
-00100000010000000110011111011101
-01101000000010001100011011101001
-00100000010000000110011111011101
-01101000000010001100011011101010
-00100000010000000110011111011101
-01101000000010001100011011101011
-00100000010000000110011111011101
-01101000000010001100011011110011
-00100000001000000110011111100001
+00100000001000000011111011000110
 01110000010011000001111000000001
 01110000010011010010011100000000
-00100000010000000000000100100101
+00100000010000000000000011110100
 01100000000000001100101110001110
 01011000000000000000000000000000
 01100000000000111100101110001111
@@ -284,7 +235,7 @@
 01101000000000001100101111110011
 01111001001000000111111000000011
 01100000000000001100101111110011
-00100000010000000000000101111001
+00100000010000000000000101010100
 00100000001000000000000010100000
 01101000000000100100000010100000
 01100000000000100100110000101001
@@ -304,53 +255,53 @@
 01111001001111111111111000000100
 01100000000000001100101111110011
 00100000011000000000000000000000
-00100000010000000000011101110100
+00100000010000000000011100010100
 01101000000000001100110100101001
-11000000000000001000000100110111
-11000000000000010000000100111011
+11000000000000001000000100000110
+11000000000000010000000100001010
 00100000011000000000000000000000
 01110000010011010010101000000010
 01110000010011010010011000000000
 01110000010011010010100000000000
-00100000001000000000000100100101
+00100000001000000000000011110100
 01110000010011010010011100000000
-00100000001000000000000100111000
+00100000001000000000000100000111
 01101000000000010100101111111000
 00011111111000001111111000000001
 01100000000000010100101111111000
-11000010100001010000000111011100
+11000010100001010000000110110011
 01101000000000001100110100100111
-11000000000000001000000101000110
+11000000000000001000000100010101
 01110000010011010010011100000001
 01101000000000001100110100100111
-11000000100000001000000100100101
+11000000100000001000000011110100
 01101000000000001100110100100101
 00011111111000001111111000000001
 01100000000000001100110100100101
-11000000000000100000000101001101
-00100000010000000000001000100101
+11000000000000100000000100011100
+00100000010000000000000101000100
 01110000010011000011011100000010
-00100000001000000000000110011001
-00100000010000000000011101110100
+00100000001000000000000101110100
+00100000010000000000011100010100
 01110000010011010010010100000000
-00100000001000000000000100100101
+00100000001000000000000011110100
 01110000010011010010101000000010
 01110000010011010010100000000001
 01110000010011010010011100000000
-00100000001000000000000100100101
+00100000001000000000000011110100
 01101000000000001100110100101001
-11000000000000011000000101010001
+11000000000000011000000100100000
 01101000000000001100101111110011
 00101111111011000000000000000100
-00100000001000001000000100100011
+00100000001000001000000011110010
 01101000000000001100110100101001
-11000000000000001000000101010000
-11000000000000010000000101010001
+11000000000000001000000100011111
+11000000000000010000000100100000
 00100000011000000000000000000000
 01101000000000001100110000000010
 11000001111111111000000000000000
-00100000010000000000000101100010
-00100100010101100000000101101010
+00100000010000000000000100110001
+00100100010101100000000100111001
 00100000011000000000000000000000
 01111000010101100111110000000000
 01101000000000001100110100101000
@@ -361,34 +312,46 @@
 01110000010011000011011100000100
 00100000001000000111111111101011
 01101000000000001100110100101010
-00100000001110100000000101110001
+00100000001110100000000101000000
 00011111111000001111111111111111
 01100000000000001100110100101010
 01110000010011010010100100000010
 01110000010011000011011100000100
-00100000001000000000001000100101
+00100000001000000000000101000100
 01110000010011010010100100000011
 01101000000000001100110100100111
-00100100001110100000000101000100
+00100100001110100000000100010011
 01110000010011000011011100000010
-00100000001000000000001000100101
+01101000000010001100101111111101
+01101000000000001100110000011010
+00011111111000010111111000000011
+00011111111011111010001000000100
+01011000000000000100110000000011
+10011010001000001111111000000000
+10011000010000001000110000000000
+11101000110000001000000000000000
+01100000000000001100101111111100
+00011000010000001000010000000001
+00011000010000010000010000000011
+01100000000010001100101111111101
+00100000011000000000000000000000
 01101000000000001100110000000010
-11000000111111111000000111100111
-00100000010000000000000101111100
-00100000010000000000001000010011
+11000000111111111000000110111110
+00100000010000000000000101010111
+00100000010000000000000111101010
 01110000010010111111011100000001
 00100000011000000000000000000000
 01101000000000010100110100100011
 00100000010000000111111110011100
-00100000001101000000000110000010
+00100000001101000000000101011101
 01101000000000111100101110001111
 00100000011110100000000000000000
 00100000001000000111111111100111
-00100000010000000000010010010010
+00100000010000000000010000111100
 01110000010011000001111000000000
 00011010001000001111111000000001
 01100000000000001100101111110010
-00100000010000000000000100100101
+00100000010000000000000011110100
 01100000000000001100101110001110
 11101000101010001000000000000000
 11101010010000001000000000000000
@@ -405,25 +368,25 @@
 10011000010000001111111000000000
 11100000101000001000000000000000
 00011010010000001010010000000001
-11000010000000000000000110010010
+11000010000000000000000101101101
 00100000011000000000000000000000
 01110000010010111111101100000000
 11011001011000000000110100000000
 00110100011100110000001000000000
-00100000010000000000000110110101
+00100000010000000000000110010000
 01101000000000001100110000101110
 11000001000000001000000000000000
-00100100001011000000000111000100
-00100100001101111000000111000100
-00100000010000000000000110110000
-00100000010000000000000111100000
-00100000010000000000011101110000
+00100100001011000000000110011011
+00100100001101111000000110011011
+00100000010000000000000110001011
+00100000010000000000000110110111
+00100000010000000000011100010000
 01101000000000001100101111110001
 00011111111000001111111000000001
 01100000000000001100101111110001
 01101000000000001100110000000010
-11000000111111111000000110110011
-00100000010000000000000101010100
+11000000111111111000000110001110
+00100000010000000000000100100011
 01011000000000000000000000000000
 01100000000000010100101111111000
 01100000000000001100101111111010
@@ -433,52 +396,48 @@
 11011111001000000000000000000100
 11011000101000000100101110001110
 00100000001000000111111011000110
-00100000010000000000011101101101
-00100000001000000000000111101001
+00100000010000000000011100001101
+00100000001000000000000111000000
 01111000010101111111110000000000
-00100000010000000000001010001100
-01101000000000001100110000101110
-11000000000000001000000111000010
+00100000010000000000001001001001
 00011000000000000010101000000000
 01101000000000100100110000011010
 10011000000000000001001000000000
 01101000000010001000000000010111
 00100000010000000010100100011111
 00100000010000000010100100100100
-00100000010000000000001001001000
-00100000010101111000001010000100
+00100000010000000000001000000101
+00100000010101111000001001000001
 00100000011000000000000000000000
-00100000010000000000001010000100
-00100000001000000000000110100100
 01101000000000001100101111111010
 00011111111000001111111000000001
 01100000000000001100101111111010
 01101000000000001100110000000010
-11000000111111111000000111011000
+11000000111111111000000110101111
 01101000000010001100101111111011
 00011000010000001000010000000001
 01100000000010001100101111111011
 01101000000000001100110000110111
 10011000010001100111111000000000
-00100100001110100000000110011010
+00100100001110100000000101110101
 01101000000000001100110100101001
-11000000000000011000000100111101
+11000000000000011000000100001100
 01101000000000001100110100100110
 00011111111000001111111000000001
 01100000000000001100110100100110
-11000000000000010000000100110010
-00100000010000000000000100101001
+11000000000000010000000100000001
+00100000010000000000000011111000
 01110000010011000011011100000001
-00100000001000000000000110011001
+00100000001000000000000101110100
 01101000000000001100101111111010
 11000001111111111000000000000000
 01110000010010111111101000000000
-00100000001000000000000111011110
+00100000001000000000000110110101
 01011000000000000000000000000000
 01100000000000010100101111111000
 01110000000010101001100100111010
 00100000001000000111110110000110
-00100000010000000000000111111000
+00100000010000000000000111001111
 01101000000000001100101111110000
 00100000011110100000000000000000
 10011000000000000111001000000000
@@ -486,13 +445,13 @@
 11011000101000000100101111010000
 00100000001000000111111100000001
 01110000000100011100011110010000
-00100000001000000000011111011011
+00100000001000000000011101111011
 01110000000100011100011110010001
-00100000001000000000011111011011
+00100000001000000000011101111011
 01110000000100011100011101100000
-00100000001000000000011111011011
+00100000001000000000011101111011
 01110000000100011100011101110000
-00100000001000000000011111011011
+00100000001000000000011101111011
 01111001001111111000000000100110
 00100000010000000101001111001110
 11011000111000000000000000000011
@@ -521,7 +480,7 @@
 11011000110000000100110000011010
 11101000110000001000000000000000
 10011010001000001010001000000000
-11000010000000000000001000001001
+11000010000000000000000111100000
 00011010001000100111111000000000
 01100000000000010100110010100011
 01101000000000001100110010100011
@@ -547,23 +506,6 @@
 10011000000000000111001000000000
 11011000110000000100101110001110
 00100000001000000111111100000001
-01101000000010001100101111111101
-00100000010000000000001000101001
-01100000000010001100101111111101
-00100000011000000000000000000000
-00100000010000000000001000101101
-00011000010000001000010000000001
-00011000010000010000010000000011
-00100000011000000000000000000000
-01101000000000001100110000011010
-00011111111000010111111000000011
-00011111111011111010001000000100
-01011000000000000100110000000011
-10011010001000001111111000000000
-10011000010000001000110000000000
-11101000110000001000000000000000
-01100000000000001100101111111100
-00100000011000000000000000000000
 01111000010001001111110000000000
 01111000010000111111110000000000
 01011000010101010101010101010101
@@ -573,16 +515,7 @@
 01111001001000000000010000000001
 00011000010000110001110000000000
 00100000011000000000000000000000
-00100000010000000101001111000100
-01101000000000100100110000011010
-10011000000000000001001000000000
-00100000010000000010100100011000
-01101000000010001100101111111100
-00100000010000000010100100011111
-01011000000000000000010100000000
-00100000010000000010101010001111
-00100000010000000010100100100100
-00100000010000000000001000110110
+00100000010000000000000111111100
 01111000010101111111110000000000
 01111000001001101111110000000000
 01111000001100001111110000000000
@@ -591,35 +524,35 @@
 01101000000000010100101111110101
 10011000000000000011011000000000
 00110111110000011000010000000000
-00100100001011000000001010001000
+00100100001011000000001001000101
 01111000010001101111110000000000
 01111000001001011111110000000000
 01111000001000111111110000000000
 01111000001001001111110000000000
-00100000010000000000001010000001
+00100000010000000000001000111110
 01100000000000001100110010100110
 01101000000010001100110010100101
 10011000010001100111110000000000
-00100100001000101000001010000100
-00100000010000000000001010000001
+00100100001000101000001001000001
+00100000010000000000001000111110
 01100000000000001100101101101100
 01101000000000001100110000111000
 00011111111001100111110000000010
-00100000001000101000001001100100
+00100000001000101000001000100001
 01101000000000001100101101101100
 01101000000010001100101111110011
 10101000010000000000111000000000
-00100100001000001000001010000100
-00100000010000000000001010000001
+00100100001000001000001001000001
+00100000010000000000001000111110
 11100000101000001000000000000000
 00011111111010010111111000000000
 00011111111000010111001000011111
-00100000001000101000001001101100
-00100000010000000000001010000001
+00100000001000101000001000101001
+00100000010000000000001000111110
 11100000101000001000000000000000
-11000010000000000000001001101001
+11000010000000000000001000100110
 00011000101000100010001000000000
-00100000010000000000001010000001
+00100000010000000000001000111110
 01100000000000001100110100101101
 00011010001000100000101000000000
 00001001100000000000000000011000
@@ -629,7 +562,7 @@
 00011111111100010111111000000000
 11100000101000011000000000000000
 01111000010001011111110000000000
-00100000001000110000001010000100
+00100000001000110000001001000001
 01111000001101111111110000000000
 01101000000000001000000000010111
 00011111111000001010001000000000
@@ -646,15 +579,15 @@
 01111000010001011111110000000000
 00100000010000000010011001001101
 00100000011000000000000000000000
-00100000001000000000001010000100
+00100000001000000000001001000001
 00100000010000000010100100011000
 01101000000010001100101111111100
 00100000001000000010100100110011
 00100000010000000101001111000100
 01101000000000100100110000011010
 10011000000000000001001000000000
-00100000010000000000001000110110
-00100000010000000000001010001001
+00100000010000000000000111111100
+00100000010000000000001001000110
 01111001001000000010101000000000
 01111000001011101111110000000000
 01111000001100000111110000000000
@@ -674,7 +607,7 @@
 11011000110000000100101110101110
 11101000110000001000000000000000
 00001000000000001000011000001000
-11000010000000000000001010100010
+11000010000000000000001001011111
 01111000001001000111110000000000
 00001000000000001000011000011000
 01111000010001000111110000000000
@@ -702,7 +635,7 @@
 00100000011110100000000000000000
 01101000000010001100110010101100
 11011010001000000000110110011110
-00100000010000000000001011000011
+00100000010000000000001010000000
 01100000000010001100110010101100
 00100000011000000000000000000000
 00011010001000100111111000000000
@@ -717,7 +650,7 @@
 00011010001000100000110000000000
 11101000110000001000000000000000
 10011000010000001000010000000000
-11000010000000000000001011001101
+11000010000000000000001010001010
 00011000010010010111111000000000
 00011111111000100000010000000000
 11000110100100110000000000000000
@@ -730,10 +663,10 @@
 00100000011000000000000000000000
 00100000011000000000000000000000
 11000110000100110000000000000000
-00100000010000000000001111011001
-00100000010000000000000011011110
+00100000010000000000001110000011
+00100000010000000000000011000101
 01101000000000001100000001000000
-11000011000000000000001011100010
+11000011000000000000001010011111
 01101000000000001000000010100000
 00100100011110100000000000000000
 01011000000000000000000000000000
@@ -741,24 +674,23 @@
 00100000011000000000000000000000
 01101000000000001100101011111110
 00100000011110100000000000000000
-00100000001000000000010110001011
+00100000001000000000010100101001
 00100000010000000011010000010110
 00100000010000000111010010111001
-00100000001101011000001100011011
+00100000001101011000001011000101
 00100000010000000000000000000001
 01101000000000001100001001000001
-11000010100000010000001011110000
-00100000010000000000010111000100
-11000000000000101000001100011001
-00100000010000000000001011111100
+11000010100000010000001010101101
+00100000010000000000010101100100
+11000000000000101000001011000011
+00100000010000000000001010111000
 01101000000000001100011100100000
 01101000000010001100011100000011
 10011000010001100111110000000000
-00100000001000101000001100000001
-00100000010000000000010100101011
+00100000001000101000001010111101
+00100000010000000000010011001101
 01101000000000001100001000010000
-11000000000110011000001100000100
-11000000000110100000001100000111
+11000000000110011000001011000000
 01110000010001111001110100000001
 01110000010001111001111000101000
 00100000011000000000000000000000
@@ -768,49 +700,31 @@
 01101000000000001100011011110101
 00100000001000000100001101100000
 01110000010001110010000000000010
-00100000010000000000010100101011
-00100000001000000000001111000110
+00100000010000000000010011001101
+00100000001000000000001101110000
 01101000000000110100000111010000
 00100000001110100011001111101011
 00100000001000000100001001110100
-01110000010010110110011100000001
-01110000010001111001111100000001
-01101000000000010100011010101000
-01100000000000010100011010101110
-00100000010000000011010000011000
-00100000010000000000001100010010
-01011000000000000000000000000100
-11100000110000001000000000000000
-11011000110000000100001110010000
-00100000010000000000010111111011
-00100000001000000111110111110100
-11011010001000000100001101110000
-11101010001000001000000000000000
-00100000011110100000000000000000
-10011000110000001010001000000000
-11101000110000001000000000000000
-11000001000000001000000000000000
-00100000001000000000001100010011
 01110000000100011100011101100001
-00100000001000000000011111011011
+00100000001000000000011101111011
 01110000010000100001001001110110
 00100000001000000011110100110110
-00100000010000000000001100011011
+00100000010000000000001011000101
 00100000010000000100000011000000
 00100000010000000100000011011001
-11000000000110000000001100101001
-11000000000110001000001101001111
+11000000000110000000001011010011
+11000000000110001000001011111001
 00100000010000000100000011010001
 00100000000000000000001111101000
-00100000001000000000001100011111
+00100000001000000000001011001001
 01110000010010101111111000000001
 00100000010000000110010000001111
-00100000010000000000001100011101
+00100000010000000000001011000111
 00100000001000000110010000010001
-00100000010000000000001101010100
+00100000010000000000001011111110
 01101000000000001100011011011110
-11000000001011010000001100101110
-11000000011011000000001100110110
+11000000001011010000001011011000
+11000000011011000000001011100000
 00100000001000000100000011100001
 01011000000000001000000000000110
 00100000010000000110010000010011
@@ -823,15 +737,15 @@
 01011000000000000000000000010110
 00100000010000000110010000010100
 00011111111001100111110010111101
-00100100001000101000001100011111
+00100100001000101000001011001001
 01011000000000000000000000011001
 00100000010000000110010000010100
 00011111111001100111110001010101
-00100100001000101000001100011111
+00100100001000101000001011001001
 01011000000000000000000000011011
 00100000010000000110010000010100
 00011111111001100111110000011101
-00100100001000101000001100011111
+00100100001000101000001011001001
 01110000010001101110000000001000
 00100000010000000100000011110110
 01011000000000000000001000000110
@@ -845,22 +759,22 @@
 01011000000000001011101000001111
 00100000010000000110010000010011
 00100000001000000100000011110100
-00100000010000000000001101010100
+00100000010000000000001011111110
 01101000000000001100011011011110
 11000000001110000100000011101000
 01110000010001101110000000000001
 00100000011000000000000000000000
-00100000010000000000001100011011
+00100000010000000000001011000101
 01011000000000001000000000000110
 00100000010000000110010000010011
 00100000000000000010111011100000
 01101000000000001100011101111010
-11000000011111111000001101011011
-00100000001000000000010110001011
+11000000011111111000001100000101
+00100000001000000000010100101001
 01101000000000001100011011100001
 01100000000000001100011101111010
-00100000001000000000010110001011
-00100000010000000000001100011011
+00100000001000000000010100101001
+00100000010000000000001011000101
 01011000000000000000000000000110
 00100000010000000110010000010100
 00011111111000011111111000001000
@@ -868,7 +782,7 @@
 00011111111000001111111000000110
 00100000001000000110010000010011
 01110000000100011100011110000000
-00100000001000000000011111011011
+00100000001000000000011101111011
 01101000000010001100101101000101
 00100000001000000110100000100101
 01110000100000001000011001000000
@@ -885,30 +799,30 @@
 01111001001111111111111000000000
 01100000000100001000000001111111
 00100000011000000000000000000000
-00100000010000000000001111000100
+00100000010000000000001101101110
 00100000010000000100010000100011
 01101000000000010100011101111000
 11011000010000001010101001010101
 10011000010001100111110000000000
-00100000001000101000001110110100
+00100000001000101000001101011110
 01100000000010010100011101111000
 00100000010000000100010000011100
 01101000000000001100011011100001
 01100000000000001100011101111010
-00100000010000000000001111000100
-00100000010000000000001110010011
-00100000010000000000001110101011
-00100000010000000000001110010111
-00100000010000000000001110100010
+00100000010000000000001101101110
+00100000010000000000001100111101
+00100000010000000000001101010101
+00100000010000000000001101000001
+00100000010000000000001101001100
 11011000010000000000000000000010
 11011010001000000100011111000010
 11011010010000000000000001011111
 01101000000000011100011100000000
 10011010010000001111111000000000
-00100000010000000000001110010111
-00100000010000000000001110100010
-00100000010000000000001110111011
-00100000001000000000001100011011
+00100000010000000000001101000001
+00100000010000000000001101001100
+00100000010000000000001101100101
+00100000001000000000001011000101
 11011000010000000000000000000100
 11011010001000000100110000011010
 11011010010000000000000001011011
@@ -916,7 +830,7 @@
 01101000000000011100011100000000
 01100000000000011100001000110010
 00100000010000000110010100101010
-00100000001000000000001110100010
+00100000001000000000001101001100
 00011111111000100010011000000000
 00011010001000100111111000000000
 00011111111000001111111111111100
@@ -935,7 +849,7 @@
 01100000000100010000000010001100
 01011000000000000000000000000101
 00100000010000000110010011110011
-11000010100000000000001110100010
+11000010100000000000001101001100
 00100000011000000000000000000000
 01011000000000000100011101111111
 11011000010000000100011100100000
@@ -943,18 +857,18 @@
 01101000000000011100011100000000
 11011010001000000100011100100000
 00100000011000000000000000000000
-00100000010000000000001111000100
-00100000010000000000001110101011
+00100000010000000000001101101110
+00100000010000000000001101010101
 00100000001000000110010101100010
-00100000010000000000001110110001
-00100000010000000000010111110100
-00100000010000000000001011111111
+00100000010000000000001101011011
+00100000010000000000010110010100
+00100000010000000000001010111011
 00100000010000000100001100011010
 01101000000000100100011101111011
 01100000000000100100110000011010
 00100000011000000000000000000000
 01110000000010101010001010111001
-00100000010000000000001101101001
+00100000010000000000001100010011
 00100000000000000000000001100100
 00100000010000000110010100001011
 11011010001000000100101101000111
@@ -963,10 +877,10 @@
 00100000000000000000000001100100
 00100000011000000000000000000000
 01110000000010101010001010101011
-00100000001000000000001110111100
-00100000010000000000001111001001
-00100000001101000000000111101101
-00100000001000000000000111101011
+00100000001000000000001101100110
+00100000010000000000001101110011
+00100000001101000000000111000100
+00100000001000000000000111000010
 11011111001000000000000000000010
 11011000110000000100110000011010
 00100000010000000111111111100111
@@ -974,7 +888,7 @@
 11101000110010010000000000000000
 10011000010001100111110000000000
 00100100010000101111111111101001
-11000010000000000000001111001101
+11000010000000000000001101110111
 00100000011000000000000000000000
 00100000010000000100010000000001
 01101000000000010100011010011111
@@ -985,38 +899,38 @@
 00100000011000000000000000000000
 11011000110000000001100000000000
 11011000101000000100100000001010
-00100000010000000000001111100001
+00100000010000000000001110001011
 11011000110000000001100100000000
-00100000010000000000001111100001
+00100000010000000000001110001011
 11011000110000000001101000000000
-00100000010000000000001111100001
+00100000010000000000001110001011
 11011000110000000001101100000000
 11011111001000000000000000011011
 00100000001000000111111100000001
 11011000110000000100100000001010
 11011000101000000001100000000000
-00100000010000000000001111100001
+00100000010000000000001110001011
 11011000101000000001100100000000
-00100000010000000000001111100001
+00100000010000000000001110001011
 11011000101000000001101000000000
-00100000010000000000001111100001
+00100000010000000000001110001011
 11011000101000000001101100000000
-00100000001000000000001111100001
+00100000001000000000001110001011
 00100000010000000101100010010010
 00100100011110100000000000000000
 01101000000000001100011011000101
 00011111111000010111111000000011
 11000001100000011000000000000000
 01101000000000001100011110011100
-00100000010110100000010000111010
+00100000010110100000001111100100
 01101000000000100100011011010011
 11000010100000101100000101111001
 00100000010000000011111110010111
 00100100011101000000000000000000
-00100000010000000000010000010010
+00100000010000000000001110111100
 11011010001000000100011010011010
 00100000010000000111111000111101
-00100000010101000000010000000001
+00100000010101000000001110101011
 00100000011000000000000000000000
 01110000010001111010000000000111
 01110000010001111010000100000100
@@ -1029,7 +943,7 @@
 00100000011000000000000000000000
 11011010001000000100011010011010
 00100000010000000111111001010100
-00100000001101000000010000001001
+00100000001101000000001110110011
 00100000011000000000000000000000
 00100000010000000101011001010010
 01101000000000001100011111000001
@@ -1051,15 +965,15 @@
 00100000010000000101001001110001
 00100100011110100000000000000000
 01101000000000001100011110011100
-00100000010110100000010000111010
+00100000010110100000001111100100
 01101000000000100100011011010011
 11000010100000101011111110001010
 11000010100001001011111110001010
 00100000010000000011111110010111
 00100100011101000000000000000000
-00100000010000000000010000010010
+00100000010000000000001110111100
 01101000000000001100101100000011
-11000000000000001000010000101001
+11000000000000001000001111010011
 01101000000000001100101100001010
 00100000011110100000000000000000
 00100000001000000011111110000001
@@ -1082,18 +996,18 @@
 00100000011000000000000000000000
 00100000010000000101100000010100
 01110000010001111001110000000001
-00100000001000000000001101010100
+00100000001000000000001011111110
 00100000010000000111111000110100
-00100000010000000000010001000000
+00100000010000000000001111101010
 00100000001000000011111011100000
 01101000000010001100101100100011
 00100000010000000110100000001110
 01101000000010001100011011100111
-00100000010000000000010111011011
+00100000010000000000010101111011
 01101000000010001100011011100111
 00100000010000000110100000011101
-00100000001000001000010001010110
-00100000010000000000010111100100
+00100000001000001000010000000000
+00100000010000000000010110000100
 01101000000000001100011010110110
 11000001000000000000000000000000
 01110000010001101011011000000000
@@ -1105,102 +1019,100 @@
 00011111111011111111111000000010
 00011111111000001111111000000010
 01100000000000010100101100101011
-00100000010000000000010101000000
+00100000010000000000010011011110
 00100000010000000011110101111110
-00100000001000000000001110000001
-00100000010000000000010111100100
+00100000001000000000001100101011
+00100000010000000000010110000100
 00100000001000000011110101100010
 00011010011000100111111000000000
-11000000000010100000010001101010
-11000000000010101000010001101101
-11000000000101001000010001110000
-11000000000110010000010001110010
-11000000001000000000010001110100
-11000000000000100000010001110110
-11000000000010011000010001110110
-11000000000100111000010001111000
+11000000000010100000010000010100
+11000000000010101000010000010111
+11000000000101001000010000011010
+11000000000110010000010000011100
+11000000001000000000010000011110
+11000000000000100000010000100000
+11000000000010011000010000100000
+11000000000100111000010000100010
 11000000000011001011001111011111
-11000000000100001000010001111010
-11000000000000001000010001111100
-11000000000000010000010010000010
-11000000000101011000010010000101
-11000000000111001000010010000111
-11000000000111010000010010001010
-11000000000111100000010010001101
+11000000000100001000010000100100
+11000000000000001000010000100110
+11000000000000010000010000101100
+11000000000101011000010000101111
+11000000000111001000010000110001
+11000000000111010000010000110100
+11000000000111100000010000110111
 00100000001000000100000101111101
-00100000010000000000001100100101
+00100000010000000000001011001111
 01110000000100011100011110110000
-00100000001000000000011111011011
-00100000010000000000010010011000
+00100000001000000000011101111011
+00100000010000000000010001000010
 01110000000100011100011110100010
-00100000001000000000011111011011
+00100000001000000000011101111011
 01110000000010101001100100010010
 00100000001000000111110110001111
 01110000000100011100011110110011
-00100000001000000000011111011011
+00100000001000000000011101111011
 01110000000100011100011110100001
-00100000001000000000011111011011
+00100000001000000000011101111011
 01110000000100011100011110100011
-00100000001000000000011111011011
+00100000001000000000011101111011
 00100000010000000100001110001110
 00100000001000000011001110100111
 01110000000100011100011110110001
-00100000001000000000011111011011
-00100000010000000000010110000001
-00100000010000000000001100100101
-00100000010000000000010011110011
-00100000010000000000010100111010
+00100000001000000000011101111011
+00100000010000000000010100011111
+00100000010000000000001011001111
+00100000010000000000010010010101
+00100000010000000000010011011000
 01110000010010000000100100000000
 00100000001000000100001011001010
-00100000010000000000010010011000
+00100000010000000000010001000010
 01110000000100011100011110110100
-00100000001000000000011111011011
+00100000001000000000011101111011
 01110000000100011100011110110010
-00100000001000000000011111011011
-00100000010000000000001100100101
+00100000001000000000011101111011
+00100000010000000000001011001111
 01110000000100011100011110010010
-00100000001000000000011111011011
-00100000010000000000010010011000
+00100000001000000000011101111011
+00100000010000000000010001000010
 01110000000100011100011110100000
-00100000001000000000011111011011
-00100000010000000000010110000001
+00100000001000000000011101111011
+00100000010000000000010100011111
 01110000010010110110000000000001
-00100000010000000000010011110011
-00100000010000000000001100100101
+00100000010000000000010010010101
+00100000010000000000001011001111
 00100000010000000011111110001101
 01011000000000000010111011100000
 01100000000000010100011010110000
 00100000011000000000000000000000
-00100000010000000000010010011000
+00100000010000000000010001000010
 01110000000100011100011110100100
-00100000001000000000011111011011
+00100000001000000000011101111011
 01101000000000001100101011111110
 00100000011110100000000000000000
 01110000010010101111111000000000
-00100000001000000000001101011110
-00100000010000000000010101000011
-00100000010000000000010101101000
-00100000010000000000010110000100
-00100000010000000000010011110110
-00100000010000000000010011011111
-00100000010000000000010011101000
-00100000010000000000010011100100
+00100000001000000000001100001000
+00100000010000000000010011100001
+00100000010000000000010100000110
+00100000010000000000010100100010
+00100000010000000000010010011000
+00100000010000000000010010000001
+00100000010000000000010010001010
+00100000010000000000010010000110
 00100000010000000100001000110100
-00100000010000000000010010101110
-00100000010000000000010011011000
-00100000010000000000010011000100
-00100000010000000000010011000001
-00100000010000000000010011001010
-00100000010000000000010011010000
-00100000010000000000010010111001
+00100000010000000000010001010110
+00100000010000000000010001111010
+00100000010000000000010001101100
+00100000010000000000010001110010
+00100000010000000000010001100001
 00100000010000000100001000110001
-00100000010000000000010010111100
+00100000010000000000010001100100
 00100000001000000100001000111010
 01101000000000001100011011110101
 11000100000000110000000000000000
 01101000000010001100011011101101
 00100000010000000110100000011101
-00100000001000001000010010110110
+00100000001000001000010001011110
 01101000000000001100011100100000
 11000000100000001110010110011010
 00100000011000000000000000000000
@@ -1211,42 +1123,36 @@
 11011010010000000110001101111010
 00100000001000000011001101101101
 11011010011000000100101100001001
-11011010010000000000010010111111
+11011010010000000000010001100111
 00100000001000000011001101101101
 01110000010010110000101000000001
 00100000011000000000000000000000
-11011010011000000100011011000110
-11011010010000000011110101100000
-00100000001000000011001101101101
-11011010011000000100011010101110
-11011010010000000000010011000111
-00100000001000000011001101110100
 01101000000000001100101100101111
 00100100011110100000000000000000
 00100000001000000100001001100110
 11011010011000000100101101011011
-11011010010000000000010011001101
+11011010010000000000010001101111
 00100000001000000011001101101101
 01101000000000001100011111000101
 01100000000000001100000101110010
-00100000001000000000010011011101
+00100000001000000000010001111111
 01101000000000001100101101100001
 00100000011110100000000000000000
 11011010011000000100101101100110
-11011010010000000000010011010101
+11011010010000000000010001110111
 00100000001000000011001101101101
 01101000000000001100101101100111
 00100100011110100000000000000000
 00100000001000000101101111110101
 11011010011000000100101101011100
-11011010010000000000010011011011
+11011010010000000000010001111101
 00100000001000000011001101101101
 01011000001001001001111100000000
 01100000000000011100110000100001
 01110000010010110101101000000001
 00100000011000000000000000000000
 11011010011000000100100000000111
-11011010010000000000010011100010
+11011010010000000000010010000100
 00100000001000000011001101101101
 01110000010010000000011000000000
 00100000011000000000000000000000
@@ -1259,7 +1165,7 @@
 01101000000000001100011110011101
 00100000011110100000000000000000
 01101000000000001100011110011110
-00100000001110100000010011110001
+00100000001110100000010010010011
 00011111111000001111111111111111
 01100000000000001100011110011110
 00100000011000000000000000000000
@@ -1271,19 +1177,19 @@
 01101000000000001100101100100100
 00100000011110100000000000000000
 01101000000000001100101100100111
-11000000000000000000010011111100
-11000000000000001000010100000110
+11000000000000000000010010011110
+11000000000000001000010010101000
 00100000011000000000000000000000
-00100000010000000000010100010110
+00100000010000000000010010111000
 01101000000000001100101100101101
 00011111111000001111111000000001
 01100000000000001100101100101101
 01101000000010001100101100101000
 10011000010001100111110000000000
-00100000010000101000010100000100
+00100000010000101000010010100110
 00100000011000000000000000000000
 01110000010010110010111100000000
-00100000001000000000010100100100
+00100000001000000000010011000110
 01101000000000001100101100101010
 00011111111000001111111111111111
 01100000000000001100101100101010
@@ -1291,18 +1197,18 @@
 01101000000000001100101100101001
 01100000000000001100101100101010
 01101000000000001100101100101110
-00100000001110100000010100010010
+00100000001110100000010010110100
 01101000000000001100101100101011
-00100000001110100000010100100010
+00100000001110100000010011000100
 00011111111000001111111111111111
 01100000000000001100101100101011
 01101000000000001100101100100110
-11000000000000001000010100100100
-11000000000000000000010100010110
+11000000000000001000010011000110
+11000000000000000000010010111000
 00100000011000000000000000000000
 01110000010010110010011000000001
 01101000000000001100011100100000
-11000000000000010000010100011110
+11000000000000010000010011000000
 01101000000010001100101100100101
 01111001001000000000010000000111
 00100000010000000110100000001110
@@ -1315,21 +1221,17 @@
 01011000000000000000000000000000
 01100000000000011100101100101010
 01101000000000001100101100101011
-00100100001110100000010100101000
+00100100001110100000010011001010
 01110000010010110010010000000000
 01110000010010110010011100000000
 01110000010010110010110100000000
 01110000010010110010011000000000
-00100000001000000000000011101101
+00100000001000000000000011010100
 01110000010010110010111100000001
 01110000010010110010010000000001
 01110000010010110010011100000000
 01110000010010110010110100000000
 00100000011000000000000000000000
-01110000010010110010101100011110
-00100000001000000000010101000000
-01110000010010110010100100000101
-00100000001000000000010100110101
 01110000010010110010100100000011
 01110000010010110010101100000001
 01110000010010110010101000000001
@@ -1341,10 +1243,10 @@
 00100100011110100000000000000000
 01101000000000001100101100101111
 00100100011110100000000000000000
-00100000001000000000010100100010
+00100000001000000000010011000100
 01110000010010110010100100000101
 01110000010010110010111000000001
-00100000001000000000010100110110
+00100000001000000000010011010100
 01101000000000001100011011001110
 00011111111000001111111000000001
 01100000000000001100011011001110
@@ -1356,10 +1258,10 @@
 00100000010000000110100100001000
 01100000000000010100011100001111
 11011010001000000100011100001001
-00100000010000000000010101011011
+00100000010000000000010011111001
 01101000000000001100001000110001
 11000010100000001011010000001010
-11000011000000000000010101010100
+11000011000000000000010011110010
 01110000010010101111110100000001
 00100000001000000100001111100111
 00100000010000000100001111101001
@@ -1368,7 +1270,7 @@
 01110000010010101111110100000000
 01101000000000001100011011101111
 01100000000000001100011100010101
-00100000001000000000010100100010
+00100000001000000000010011000100
 11101010001001000000000000000000
 01100000000001000000101010011010
 01101000000010010000101010011100
@@ -1396,12 +1298,12 @@
 01101000000000001100011011001111
 00011111111000001111111000000001
 01100000000000001100011011001111
-11000000000000101000010100100010
+11000000000000101000010011000100
 00011111111001100111110000001010
-00100100001000010000010101111010
+00100100001000010000010100011000
 00100000011000000000000000000000
 01110000010001101100111100000001
-00100000001000000000010100010110
+00100000001000000000010010111000
 01101000000000001100101100110111
 00011111111000001111111000000001
 01100000000000001100101100110111
@@ -1411,36 +1313,36 @@
 01110000010010110011011010010110
 00100000011000000000000000000000
 11011010011000000100101100110110
-11011010010000000000010110000111
+11011010010000000000010100100101
 00100000001000000011001101101101
 01011000011000000100100000000000
 01100000000000011100110000100001
 01110000010010110011100000000001
-00100000001000000000010101011000
+00100000001000000000010011110110
 01101000000000001100011011100000
-11000000000001000000010110100001
-11000000000000100000010110101000
-11000000000000010000010110101101
+11000000000001000000010100111111
+11000000000000100000010101000110
+11000000000000010000010101001011
 01101000000000001100011101111010
-11000000000000000000010110010111
-11000000000000001000010110011001
-11000000000000010000010110011011
-11000000000000011000010110011101
+11000000000000000000010100110101
+11000000000000001000010100110111
+11000000000000010000010100111001
+11000000000000011000010100111011
 00100000011000000000000000000000
 01100000000000001100011010110101
 00100000001000000011110111000001
 01101000000000001100011101111111
-00100000001000000000010110010101
+00100000001000000000010100110011
 01101000000000001100011101111111
-00100000001000000000010110010101
+00100000001000000000010100110011
 01101000000000001100011101111111
-00100000001000000000010110010101
+00100000001000000000010100110011
 01101000000000001100011110000010
-00100000001000000000010110010101
+00100000001000000000010100110011
 01110000010001110111101000000010
 00100000011000000000000000000000
 01101000000000001100011101111010
-11000000000000001000010110100110
+11000000000000001000010101000100
 11000000000000011011110110001000
 11000000000000010011110110001100
 00100000001000000011110110001010
@@ -1454,7 +1356,7 @@
 01101000000000001100011101111010
 11000000000000001011110110001000
 11000000000000000011110110001010
-11000000000000011000010110110010
+11000000000000011000010101010000
 00100000001000000011110110001110
 01011000000000000000000000000101
 00100000001000000011110110111110
@@ -1466,33 +1368,35 @@
 00100000010000000011111110110101
 00100000010000000100000001111001
 00100000010000000100000001111110
-00100000010000000000010111000010
-00100100001101000000010111000000
-00100000010000000000010101111100
+00100000010000000000010101100010
+00100100001101000000010101011111
+00100000010000000000011110011101
+00100000010000000000010100011010
 00100000001000000011111110100000
+00100000010000000000011110011010
 01110000010010110011011100000000
 00100000011000000000000000000000
-00100000010000000000010111000100
+00100000010000000000010101100100
 00100000001000000100000010011010
 11011010001000000000000000000000
-00100000010000000000010111001001
-00100000010000000000010111001111
-00100000010000000000010111010101
+00100000010000000000010101101001
+00100000010000000000010101101111
+00100000010000000000010101110101
 00100000001000000100000010001110
 01101000000010001100011011100010
-00100000010000000000010111100100
+00100000010000000000010110000100
 01101000000010001100011011100010
 00100000010000000110100000011101
 01111001001000001010001000000000
 00100000011000000000000000000000
 01101000000010001100011011100011
-00100000010000000000010111100100
+00100000010000000000010110000100
 01101000000010001100011011100011
 00100000010000000110100000011101
 01111001001000001010001000000001
 00100000011000000000000000000000
 01101000000010001100011011100100
-00100000010000000000010111100100
+00100000010000000000010110000100
 01101000000010001100011011100100
 00100000010000000110100000011101
 01111001001000001010001000000010
@@ -1510,19 +1414,19 @@
 11011000101000001000000001111000
 00100000010000000110100000110000
 01111001001111111000010000000111
-00100000001000000000010111011111
+00100000001000000000010101111111
 01101000000010001100011011101101
 01111001001111111000010000000111
-00100000001000000000010111100101
-00100000010000000000010011110011
+00100000001000000000010110000101
+00100000010000000000010010010101
 00101000000011111111111000100110
-00100000010000001000000111101111
+00100000010000001000000111000110
 00100000001000000100001001101101
 01110000000100011100011110000001
-00100000001000000000011111011011
+00100000001000000000011101111011
 01110000000100011100011101010000
-00100000001000000000011111011011
-00100000010000000000001111000100
+00100000001000000000011101111011
+00100000010000000000001101101110
 11011000010000000000000000000010
 11011010001000000100011111000010
 11011010010000000000000001011111
@@ -1535,18 +1439,18 @@
 00100000001000000101011110111000
 01011000000000000000000000000000
 01100000000000010100011010101100
-00100000010000000000001101010100
+00100000010000000000001011111110
 01101000000000001100000010010010
 00101111111011111111111000000000
 00100000010000001100001011010111
-00100000001000000000010100111010
+00100000001000000000010011011000
 01101000000000001100010100001111
 00011111111000001111111000000001
 01100000000000001100010100001111
 11000000000001100101001110010101
 00100000010000000101010110101010
 00100000010000000101011000011110
-00100000010000000000011101111110
+00100000010000000000011100011110
 00100000001000000101001110001111
 01101000000000001000000000010110
 00011111111000001111111000000001
@@ -1558,31 +1462,31 @@
 00100000010000000000000001101011
 00100000001000000101010010100011
 01110000000100011100011101000000
-00100000001000000000011111011011
+00100000001000000000011101111011
 01110000000100011100011101000001
-00100000001000000000011111011011
+00100000001000000000011101111011
 01101000000000001000010001010110
-11000010100000101000011000101111
-00100000010000000000011101110000
+11000010100000101000010111001111
+00100000010000000000011100010000
 01101000000000001100011110001110
-00100100001110100000011000100101
+00100100001110100000010111000101
 01101000000000001000010000111111
-11000011000000100000011000101001
+11000011000000100000010111001001
 01101000000000001000001011011010
-00100000001110100000011000101001
+00100000001110100000010111001001
 00100000001000000101011001100100
 01101000000000001100011110001110
 00011111111000001111111111111111
 01100000000000001100011110001110
 00100000001000000101011001100100
 01101000000000001100010011000100
-11000000100000101000011000101100
+11000000100000101000010111001100
 01110000010001111000111000000011
 00100000010000000101100010010010
-00100000010110100000010000000101
+00100000010110100000001110101111
 00100000001000000101011000100010
-00100000010000000000011000110001
-00100000001000000000011000111101
+00100000010000000000010111010001
+00100000001000000000010111011101
 01101000000000001100011011000101
 00011111111000010111111000000011
 11000001100000011000000000000000
@@ -1595,7 +1499,7 @@
 01100000000000001100001111011100
 00100000010000000101011001010000
 00100000011000000000000000000000
-00100000001000000000011101110100
+00100000001000000000011100010100
 01101000000000001100011110011111
 00100000011110100000000000000000
 01101000000000001100011011000101
@@ -1616,10 +1520,10 @@
 00011000110000100111111000000000
 01100000000000010100010100001101
 01101000000000001100010100001100
-11000000000000011000011001010100
+11000000000000011000010111110100
 00100000001000000101011010001101
 01101000000000001000001011011011
-11000000000000001000011001010111
+11000000000000001000010111110111
 00100000001000000101110001100101
 11101000110000101000000000000000
 01100000000000101100001111001110
@@ -1631,18 +1535,18 @@
 01100000000000001100011111000101
 00100000011000000000000000000000
 11101000110000010000000000000000
-11000000000000100000011001100100
-11000000000000110000011010010001
+11000000000000100000011000000100
+11000000000000110000011000110001
 00100000001000000101011010011000
 00100000010000000111111010100101
-00100000010000000000011000111110
+00100000010000000000010111011110
 00100000010000000111111010011111
 11101000110000011000000000000000
 01100000000000011000010001110111
-11000000000010000000011001110011
+11000000000010000000011000010011
 00011111111011001000010000000000
 00011000010001100111110000100100
-00100000001000010000011010000001
+00100000001000010000011000100001
 11011000010000000100011111000110
 01100000000010010100010010111100
 00100000010000000101100010101101
@@ -1663,33 +1567,33 @@
 01011000000000000000000000101011
 11100000110000010000000000000000
 00100000011000000000000000000000
-11000000000001010000011010000011
+11000000000001010000011000100011
 00100000001000000101100010101101
 01101000000010010000010001111000
 01101000000000001100010011101001
-11000010100000011000011010001010
+11000010100000011000011000101010
 01101000000000010000010001111000
 11000000000010011101101001110110
 01101000000010010000010001111000
 00100000001000000101100110111111
 01101000000000010100010011111010
 10011000010001100111110000000000
-00100100001000101000011010000110
+00100100001000101000011000100110
 00100000010000000101101001000010
-00100100001101000000011010000110
+00100100001101000000011000100110
 01110000000001000111101000000101
 00100000001000000101101001110111
 11101000110000001000000000000000
-11000000000000001000011010010101
-11000000000000101000011010010111
+11000000000000001000011000110101
+11000000000000101000011000110111
 00100000001000000101101011110110
 01110000010010110110011100000001
 00100000001000000101101100001001
 01110000000100011100011110000010
-00100000001000000000011111011011
+00100000001000000000011101111011
 01101000000000001000000000010110
 11000000100100111101011011110010
-00100000010000000000011010011111
+00100000010000000000011000111111
 11011000111000000000000000000000
 01101000000000010100010010000010
 00100000001000000111111100001000
@@ -1699,7 +1603,7 @@
 00011111111000001111111011111010
 00100000001000000011110010111110
 01111000010101011111110000000000
-00100000001101110000011010100111
+00100000001101110000011001000111
 00100100001101101101100000000110
 00100000010000000010101111001011
 01101000000000010100000011000001
@@ -1723,7 +1627,7 @@
 00100000010000000110001111101110
 00011000010000010000010011111101
 00100000000000000000000000001101
-00100000010000000000011011000001
+00100000010000000000011001100001
 01100000000110001000000001110011
 00100000011000000000000000000000
 00100000010000000110010011011101
@@ -1734,7 +1638,7 @@
 01100000000100001000000010000001
 00100000011000000000000000000000
 01110000000100011100011100000000
-00100000001000000000011111011011
+00100000001000000000011101111011
 00100000010000000010000111001001
 00100100011101000000000000000000
 01111000010101000111110000000000
@@ -1743,10 +1647,10 @@
 01111001001111111000000000101101
 00100000010000000010101001001111
 00100000010000000010001011100110
-11000101000001011000011011010110
+11000101000001011000011001110110
 00100000010000000010010001010101
-00100100001110100000011011001111
-11000101000101101000011011011111
+00100100001110100000011001101111
+11000101000101101000011001111111
 00100000001000000010000111101100
 00100000010000000010101001001101
 11011000001000000000000000010000
@@ -1756,7 +1660,7 @@
 01101000000000001000000001110111
 10011000000000000000100000000000
 01110000000000000001000100000010
-00100000001000000000011011001111
+00100000001000000000011001101111
 01101000000000100000000101100101
 00011111111000001111111000001000
 01100000000000100000000101100101
@@ -1772,13 +1676,13 @@
 00100000001000000010010001101110
 01101000000000001000000000110000
 00101111111011111111111000000000
-00100000010000001000011011110000
+00100000010000001000011010010000
 00100000001000000010010010001010
 01101000000000001000000001000111
 00101111111011111111111000000011
-00100000010000001000011101110100
-00100100010000001000011101110000
-00100000001000000000011101111110
+00100000010000001000011100010100
+00100100010000001000011100010000
+00100000001000000000011100011110
 00100000010000000010010011110000
 00100100001011000010100011111001
 00100000010000000010100110111011
@@ -1791,7 +1695,7 @@
 01101000000000001100000010010001
 00100000011110100000000000000000
 01101000000000001100011001011010
-00100000001110100000011100000100
+00100000001110100000011010100100
 01101000000000001100010110110001
 00100000011110100000000000000000
 01101000000000001100010011000000
@@ -1818,18 +1722,18 @@
 11000101100001101010101111011110
 00100000010000000101001001110100
 00100100001110100010101111011110
-00100000010110100000011100011110
+00100000010110100000011010111110
 00100000001000000010101110111110
 01110000000000001000101000000001
 01110000000000001000101100000000
 00100000011000000000000000000000
 01110000000100011100011100010000
-00100000001000000000011111011011
+00100000001000000000011101111011
 01110000000100011100011100010001
-00100000001000000000011111011011
+00100000001000000000011101111011
 01101000000000001000010101010010
 01100000000000001000010011001001
-11000000000010011000011100101001
+11000000000010011000011011001001
 00100000001000000101110110110100
 00100000010000000101110111001111
 01110000010010101111111100000001
@@ -1838,21 +1742,21 @@
 01110000010010110000000100000010
 00100000011000000000000000000000
 01110000000100011100011100100000
-00100000001000000000011111011011
+00100000001000000000011101111011
 00100000010000000110001010111100
 00100100011110100000000000000000
 01101000000000001000000001010101
 00100000011110100000000000000000
-11000000000000100000011101010011
-11000000000010000000011100111000
+11000000000000100000011011110011
+11000000000010000000011011011000
 00100000001000000110001100100000
 01101000000000001100010101011011
 11000001000000000000000000000000
-11000000000000001000011100111100
+11000000000000001000011011011100
 00100000001000000110001101011111
 00100000011101001000000000000000
 01101000000000001000000101101101
-11000010100000000000011101000000
+11000010100000000000011011100000
 00100000001000000110001110011001
 01101000000000001100101100000001
 11000000000000001110001110011101
@@ -1869,7 +1773,7 @@
 10011000010000001000010000000000
 00011100010000100111111000000000
 10011000010001100111110000000000
-00100100001000010000011101010001
+00100100001000010000011011110001
 00100000001000000110001101001001
 01110000010010110000000000000001
 00100000011000000000000000000000
@@ -1879,13 +1783,13 @@
 00100100001110100111110111011011
 01101000000000001000101010011001
 11000101100001001111110111010110
-11000000000011111000011101011101
-11000000000100000000011101100000
-11000000000010010000011101101010
+11000000000011111000011011111101
+11000000000100000000011100000000
+11000000000010010000011100001010
 00100000001000000111110111001010
 01110000000000011000010100110100
 01101000000000110000010001001111
-00100000001000000000011101100010
+00100000001000000000011100000010
 01110000000000011000010100110011
 01101000000000110000000001000000
 01100000000000110000000110000110
@@ -1895,7 +1799,7 @@
 00100000010000000100001111010010
 00100000010000000100001011101000
 00100000010000000100001011111011
-00100000001000000000001110000001
+00100000001000000000001100101011
 00100000010000000101100010010000
 00100100011110100000000000000000
 00100000001000000101101010111111
@@ -1908,7 +1812,7 @@
 00100000011000000000000000000000
 01101000000000001100110100101011
 00011111111001100111110000000010
-00100100010000010000011101111100
+00100100010000010000011100011100
 01101000000000001100110100101011
 11000001000000000000000000000000
 00011111111000001111111111111111
@@ -1921,41 +1825,41 @@
 11000011100000111000000000000000
 11000011100000110000000000000000
 11011010001000000100110010110100
-00100000010000000000001011001010
+00100000010000000000001010000111
 01100000000010001100110100101100
 01011000000000000000000010000010
-11000101000100110000011110001000
+11000101000100110000011100101000
 01011000000000000000000010000000
 10011000010001100111110000000000
-00100100001000010000011110100000
+00100100001000010000011101000000
 01101000000000001100110100101011
 00011111111001100111110000000010
-00100100001000010000011110010000
+00100100001000010000011100110000
 01101000000000001100110100101011
-11000000000000000000011110100001
+11000000000000000000011101000001
 00100000011000000000000000000000
 01101000000000001100110100101011
 11000001100100000000000000000000
 01110000010011010010101100000000
 01101000000010001100110100101100
 01011000000000000000000001110111
-11000101000100110000011110010111
+11000101000100110000011100110111
 01011000000000000000000001110101
 10011000010001100111110000000000
 00100100011000010000000000000000
 01101000000000001100110100101110
-11000000000000000000011110101000
+11000000000000000000011101001000
 00011111111000001111111111111111
 01100000000000001100110100101110
-11000000000000000000011110101000
+11000000000000000000011101001000
 01110000010000011101111000000000
 00100000011000000000000000000000
 01110000010011010010101100000000
 01101000000000001100110100101110
-11000000000000010000011110100110
+11000000000000010000011101000110
 00011111111000001111111000000001
 01100000000000001100110100101110
-11000000000000001000011110011110
+11000000000000001000011100111110
 01110000010000011101111000000010
 00100000011000000000000000000000
 01110000010000011101111000000100
@@ -1976,20 +1880,20 @@
 00100000000000000000000000001010
 01110000100010010000001001111101
 01101000000000001100000111011110
-11000000000000010000011111000010
-11000000000000100000011111000111
-11000000000100000000011111010110
-00100000010000000000011111001100
+11000000000000010000011101100010
+11000000000000100000011101100111
+11000000000100000000011101110110
+00100000010000000000011101101100
 01110000100010010101010111010000
 01110000100010010101011011100000
 01110000100010010101100001101100
 00100000001000000010100101001011
-00100000010000000000011111010001
+00100000010000000000011101110001
 01110000100010010101010111010000
 01110000100010010101011011100000
 01110000100010010101100000111100
 00100000001000000010100101010011
-00100000010000000000011111001100
+00100000010000000000011101101100
 01110000100010010101010111010000
 01110000100010010101011011000000
 01110000100010010101100001101100
@@ -2013,7 +1917,7 @@
 00011000010100011000010000000000
 01101000000000001100101101010000
 10011000010001100111110000000000
-00100000001000101000011111111000
+00100000001000101000011110011000
 01100000000010001100101101010000
 00011000010000001000010000000001
 01011000000000000000000100000000
@@ -2024,14 +1928,14 @@
 10011000010000001111111000000000
 00011111111000001111111111111011
 01100000000000011100101101010111
-00100000010000000000001111000100
+00100000010000000000001101101110
 01101000000000011100101101010111
 11011000010000000000000100000000
 11011010001000000001111100000000
 00100000010000000110010101100010
 01101000000000100001111100000000
-00100000001110100000011111101011
-00100000010000000000001100011011
+00100000001110100000011110001011
+00100000010000000000001011000101
 01011000000000000001111100000000
 01100000000000010100000110011001
 01110000010000011001101101000000
@@ -2040,11 +1944,107 @@
 01100000000000100100000110011001
 01101000000000001001000111000111
 00100000001000000000000000000001
-                                
-                                
-                                
-                                
-                                
+11011111001000000000000000000101
+11011000101000000100101100001011
+00100000001000000111111011010100
+01101000000000100100011010011011
+00100000011110100000000000000000
+00100000010000000000011111101110
+01011000000000000000000000000110
+00100000010000000000011111100001
+01011000000000000000000000000011
+00100000010000000000011111100111
+01101000000000001100101100001011
+11000000000000001000011110100111
+00100000001000000000011110011010
+01101000000000010100101100001100
+01100000000000010001000110111110
+01101000000000010100011010011011
+01100000000000010001000111000000
+00100000010000000000011110111010
+01101000000000010001000110111110
+01100000000000010100101100001100
+01101000000000010001000111000000
+01100000000000010100011010011011
+01101000000000010100101100001110
+01100000000000010001000110111110
+01101000000000010100011010011101
+01100000000000010001000111000000
+00100000010000000000011110111010
+01101000000000010001000110111110
+01100000000000010100101100001110
+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
+00011111111001100111111000000000
+01100000000000001000101010101110
+01101000000000001000101010101110
+00011111111000110111111000000000
+01100000000000001000101010101110
+01101000000000001000101010101110
+00011111111001100111111000000000
+00100000011000000000000000000000
+10011010001001100111110000000000
+00100100001000010000011111101100
+10011010010001100111110000000000
+00100100001000010000011111101100
+01110000010010110000101100000000
+00100000011000000000000000000000
+10011010001001100111110000000000
+00100100011000010000000000000000
+10011010010001100111110000000000
+00100100011000010000000000000000
+00100000001000000000011111100101
+01110000010010110000101100000001
+00100000011000000000000000000000
+01101000000000010100011010011011
+01100000000000010001000111000000
+00100000010000000000011111110111
+00011111111000100010001000000000
+01101000000000010100011010011101
+01100000000000010001000111000000
+00100000010000000000011111110111
+00011111111000100010010000000000
+00100000011000000000000000000000
+01101000000000001001000111000001
+11000000011111111000011111111100
+01101000000000001001000111000000
+00011111111000010111111011111111
+00100000011000000000000000000000
+01101000000000010001000111000000
+00011111111001100111111000000000
+00100000001000000000011111111010
                                 
                                 
                                 
@@ -65535,7 +65535,35 @@
                                 
                                 
                                 
-11000000000000000000000000000011
+11000000000000000000000000011111
+11000000000000001000000000000100
+00100000011000000000000000000000
+00100000010000000000001001101010
+00100100011101000000000000000000
+00100000010000000000000000011001
+01101000000000010100110100110011
+00011111111000001111111000000001
+01100000000000010100110100110011
+01101000000010010100110100110101
+10011000010001100111110000000000
+00100000010000101000000000001110
+00100000001000000000000010011101
+01110000010011010011001000000000
+01011000000000000000000000000000
+01100000000000010100110100110011
+01011000000000000000000000011001
+01100000000000010100110100110101
+01110000010011000010110100000000
+01101000000000001100110000011000
+01100000000000001100110000010111
+00100000011000000000000000000000
+01101000000000001100110000011001
+00100000001000000000000000010101
+01101000000000001100110000101101
+00011111111000001111111000000001
+01100000000000001100110000101101
+11000000000000100000000000010111
+11000000000000101000000000010011
 00100000011000000000000000000000
 01101000000000001000000000001110
 00011111111000001111111000000001
@@ -65543,10 +65571,10 @@
 00100000010000000010010000110101
 01111001001000000000000000101100
 00100000010000000010001011110010
-00100000001011000000000000001110
+00100000001011000000000000101010
 01111001001111111000000000101100
 00100000010000000010010001010101
-00100100001110100000000000000111
+00100100001110100000000000100011
 00100000001000000010000011111100
 01111001001111111000000000101100
 00100000001000000010000101011111
@@ -131043,34 +131071,6 @@
                                 
                                 
                                 
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
 11000000000010000000000000000100
 11000000000010001000000000011101
 00100000011000000000000000000000
@@ -131094,10 +131094,10 @@
 11000010100001100100001010110000
 00100000010000000011001110101001
 01101000000010001100011011101100
-00100000010000000000010111100100
+00100000010000000000010110000100
 01101000000010001100011011101100
 00100000010000000110100000011101
-00100000001000001000001011111001
+00100000001000001000001010110101
 00100000001000000011001110100111
 01101000000000010000001001100100
 00011111111000100000110000000000
@@ -327679,10 +327679,12 @@
                                 
                                 
                                 
-11000000001000000000000000000100
-11000000001000001000000000010110
+11000000001000000000000000000110
+11000000001000001000000000011000
+11000000001000010000000000100101
+11000000001000011000000000101011
 00100000011000000000000000000000
-00100000010000000000000000001100
+00100000010000000000000000001110
 00100000001000000101010101111101
 01101000000000001100011111000101
 01100000000000001100000101110010
@@ -327692,17 +327694,17 @@
 00100000011000000000000000000000
 01101000000000001100001111010110
 00011111111001100111110000001100
-00100100001000010000000000001010
+00100100001000010000000000001100
 01101000000000001100001111011000
 01101000000010001100011111000101
 10011000010001100111110000000000
-00100000001000010000000000000110
+00100000001000010000000000001000
 01101000000000001100001111011000
 01100000000000001100000101110010
-00100000001000000000000000001000
+00100000001000000000000000001010
 01101000000000001000010000111111
 11000100000000110000000000000000
-00100000010000000000000000011011
+00100000010000000000000000011101
 00100100011101000000000000000000
 00100000001000000101010110100000
 01111000001101000111110000000000
@@ -327713,21 +327715,19 @@
 00011111111100011111111000000000
 11000001100000000000000000000000
 00100000001000000111111111101001
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
-                                
+01101000000000001100011110011111
+00100100011110100000000000000000
+01101000000000001000010001111000
+00011111111001100111111000011010
+00100100011000101000000000000000
+00100000001000000011110101100000
+00100000010000000011001110101111
+00100000010000000010011011101001
+01110000000010101001100100000010
+00100000010000000111110110000110
+00100000010000000101110011110111
+00100000010000000100110101101011
+00100000001000000010010001101110
                                 
                                 
                                 
@@ -393217,19 +393217,19 @@
                                 
 11000000001010000000000000000011
 00100000011000000000000000000000
-00100000010000000000001011111100
+00100000010000000000001010111000
 01110000010001110010000000000001
 01110000010001111001110000000000
 01101000000000010100011010000010
 11000010100001011000000000010010
 01101000000000100100011011010011
 11000011000011000000000000010010
-00100000010000000000010111110100
+00100000010000000000010110010100
 01101000000010010100011111000010
 00011000010000001000010000000001
 01100000000010010100011111000010
 01100000000010010100010010100001
-00100000010000000000001110000110
+00100000010000000000001100110000
 00011000000010100111111000000000
 01100000000000001100010010100000
 00100000010000000011010000011000
@@ -393245,13 +393245,12 @@
 01101000000000001100000010010010
 00101111111011111111111000000000
 00100000010000001111110111011101
-00100000001000000000010100110100
+00100000001000000000010011010010
 01110000010001111001111100000000
-00100000010000000000001100010010
 01011000000000000000000000000101
 11100000110000001000000000000000
 11011000110000000100101100010000
-00100000010000000000010111111011
+00100000010000000000010110011011
 00100000001000000111110111110100
                                 
                                 
@@ -458751,12 +458750,13 @@
                                 
                                 
                                 
+                                
 11000000001100000000000000000100
 11000000001100001000000000100111
 00100000011000000000000000000000
 01111001001111111000000000100110
-00100000010000000000001000000110
-00100000010000000000001000100101
+00100000010000000000000111011101
+00100000010000000000000101000100
 01101000000000001100110000000010
 11000001111111111000000000000000
 00100000010000000000000000011001
@@ -458764,8 +458764,8 @@
 01100000000000010100110000011111
 00100000000000000000011111010000
 01101000000000001100110000011111
-11000000011111111000000111011110
-00100000010000000000000110110101
+11000000011111111000000110110101
+00100000010000000000000110010000
 00100100001011000000000000100010
 00100100001101111000000000100010
 01111001001000000000000000100110
@@ -458773,8 +458773,8 @@
 01100000000000010100110000011111
 01110000000010101001100100111100
 00100000010000000111110110000110
-00100000010000000000000110110000
-00100000001000000000001111010101
+00100000010000000000000110001011
+00100000001000000000001101111111
 01110000000100011001111011111111
 01101000000000001100101111110011
 01100000000000001001000110011111
@@ -458782,12 +458782,12 @@
 01100000000000100001000110100000
 11011000010000000000000000000110
 11011010001000000001000110011110
-00100000010000000000000111110011
-00100000001000000000001000010011
+00100000010000000000000111001010
+00100000001000000000000111101010
 01101000000000010100110000011111
 00011111111000001111111000000001
 01100000000000010100110000011111
-00100000010000000000001000100101
+00100000010000000000000101000100
 00100000001000000000000000001100
 01101000000000001100011100100000
 11000001000000001000000000000000
@@ -458795,7 +458795,7 @@
 11000100000010001000000000000000
 11000011100000011000000000000000
 11000110000100110000000000000000
-00100000010000000000000011101101
+00100000010000000000000011010100
 11011000111000000000000000000011
 00100000010000000100001111001110
 01011000000000000000000000000000
@@ -458812,7 +458812,7 @@
 01110000010010111111000100000000
 01110000010010111111110001001110
 01101000000000100100101111111110
-00100000001000000000001000000101
+00100000001000000000000111011100
                                 
                                 
                                 
@@ -524295,12 +524295,12 @@
 01110000010011000001111100000000
 00100000000000000000011111010000
 01101000000000001100110000011111
-11000000011111111000000111011110
-00100000010000000000000110110101
+11000000011111111000000110110101
+00100000010000000000000110010000
 00100100001011000000000000100011
 00100100001101111000000000100011
-00100000010000000000000111100000
-00100000010000000000001011111100
+00100000010000000000000110110111
+00100000010000000000001010111000
 01101000000000100100110000011010
 01101000000010100100101111111110
 10011000010001100111110000000000
@@ -524310,8 +524310,8 @@
 01100000000000010100110000011111
 01110000000010101001100100111100
 00100000010000000111110110000110
-00100000010000000000000110110000
-00100000001000000000001111010101
+00100000010000000000000110001011
+00100000001000000000001101111111
 01110000000100011001111011111111
 01101000000000001100101111110011
 01100000000000001001000110011111
@@ -524319,8 +524319,8 @@
 01100000000000100001000110100000
 11011000010000000000000000000110
 11011010001000000001000110011110
-00100000010000000000000111110011
-00100000001000000000001000010011
+00100000010000000000000111001010
+00100000001000000000000111101010
 01101000000000001100110000011111
 00011111111000001111111000000001
 01100000000000001100110000011111
@@ -524335,8 +524335,8 @@
 01011000000000000000111100001111
 01100000000000010100110000011010
 11100000101000010000000000000000
-00100000010000000000001000000110
-00100000001000000000001000100101
+00100000010000000000000111011101
+00100000001000000000000101000100
 00100000010000000000000000101101
 00100000001000000000000000000111
 00100000010000000000000000111011
@@ -524349,7 +524349,7 @@
 01110000010010111111000100000000
 01110000010010111111110001001110
 01101000000000100100101111111110
-00100000001000000000001000000101
+00100000001000000000000111011100
                                 
                                 
                                 
@@ -589831,9 +589831,9 @@
 01011000000000000001000100100010
 01100000000000010100011111000010
 00100000011000000000000000000000
-00100000010000000000000100100000
+00100000010000000000000011101111
 00100000010000000011111001101110
-00100000010000000000000011101101
+00100000010000000000000011010100
 01101000000000001100011011101111
 01100000000000001100011100010101
 00100000010000000100001010011000
@@ -589842,17 +589842,12 @@
 01101000000010001100101101000101
 00100000010000000110100000001110
 00100000010000000011111000011110
-00100000010000000000000000011111
+00100000010000000000000000011010
 01011000000000000000000000000000
 01100000000000010100000101010100
 00100000010000000110100010100010
 00100000010000000011111001010100
-00100000010000000101100000010000
-00100000010000000101100000111001
-00100000010000000101100000101100
-00100000010000000101100000011000
-00100000010000000000010111110000
-00100000001000000000001101110111
+00100000001000000000001100100001
 00100000010000000111010010111001
 11011000110000001000110000000000
 11011000101000000100100001110110
@@ -655359,6 +655354,11 @@
                                 
                                 
                                 
+                                
+                                
+                                
+                                
+                                
 11000000010010000000000000000101
 11000000010010001000000000011111
 11000000010010010000000000101111
@@ -655386,8 +655386,8 @@
 01110000000100011010010000000000
 11011010001000000001000110011110
 11011000010000000000000000000111
-00100000010000000000000111110011
-00100000010000000000000101111001
+00100000010000000000000111001010
+00100000010000000000000101010100
 00100000001000000111111111100111
 01101000000000001100110000000010
 11000001011111111000000000000000
@@ -655396,17 +655396,17 @@
 11000000000010011000000000101001
 00100000011000000000000000000000
 01110000010011000000001000000010
-00100000001000000000000110101010
+00100000001000000000000110000101
 01110000010011000000001000000011
-00100000001000000000000110101010
+00100000001000000000000110000101
 01110000010011000000001011111111
 01110000000010101001100100111001
 00100000010000000111110110000110
 01101000000000100100101111010010
-00100000010000000000001000000101
-00100000001000000000000110101010
-00100000010000000000010110000001
-00100000010000000000010010010010
+00100000010000000000000111011100
+00100000001000000000000110000101
+00100000010000000000010100011111
+00100000010000000000010000111100
 01110000010001111000101100000001
 11011000111000000000000000000011
 00100000010000000100001111010010
@@ -655414,10 +655414,10 @@
 01100000000000010100011100000111
 01110000010001101010011100000000
 00100000010000000100000001011101
-00100000010000000000001011111100
+00100000010000000000001010111000
 01101000000000100100110000011010
 01100000000000100100011101111011
-00100000001000000000001110000001
+00100000001000000000001100101011
                                 
                                 
                                 
@@ -720897,30 +720897,29 @@
                                 
 11000000010100000000000000000111
 11000000010100001000000000001101
-11000000010100010000000000100010
-11000000010100011000000000011011
-11000000010100100000000000101010
+11000000010100010000000000100001
+11000000010100011000000000011010
+11000000010100100000000000101001
 00100000011000000000000000000000
 01110000010011010011001000000000
-00100000010000000000001011111100
-00100000010000000000000111101111
+00100000010000000000001010111000
+00100000010000000000000111000110
 01110000010000011011110100000000
-00100000010000000000000011100000
-00100000001000000000001011111001
+00100000010000000000000011000111
+00100000001000000000001010110101
 01101000000000010100010100001001
 11000001000000000000000000000000
 01101000000000001000010001000001
 00011111111010110111111000000000
 00011111111001100111110000001100
-00100000001000010000000000011001
+00100000001000010000000000011000
 01011000000000000000000000001001
 01100000000000010100010010010110
 01100000000000010100010010011000
-00100000010000000000010001110000
 01110000010001111100010000000001
 00100000011000000000000000000000
 01110000010010110110101000000001
-00100000001000000000011001011100
+00100000001000000000010111111100
 01101000000000010100011010000010
 11000011100001100000000000000000
 11000011100000110000000000000000
@@ -720933,7 +720932,7 @@
 01100000000000010100010010011000
 01110000010001111100010000000000
 01110000010001111001110000000000
-00100000010000000000001111111100
+00100000010000000000001110100110
 00100000010000000101100000010110
 00100000001000000100000111011001
 01111000001101000111110000000000
@@ -720946,11 +720945,11 @@
 00100000010000000011111010011111
 01101000000010001100101100100011
 00100000010000000110100000101001
-00100000010000000000000011100000
+00100000010000000000000011000111
 01101000000000001100011100100000
 00011111111001100111110000000010
-00100000010000101000010111101001
-00100000010000000000001110111011
+00100000010000101000010110001001
+00100000010000000000001101100101
 01101000000100001000000010000001
 00011111111000010111111011110111
 01100000000100001000000010000001
@@ -786431,13 +786430,14 @@
                                 
                                 
                                 
+                                
 11000000010110000000000000000111
 11000000010110001000000000001001
 11000000010110010000000000001111
 11000000010110011000000000010100
-11000000010110100000000000011011
+11000000010110100000000000011010
 00100000011000000000000000000000
-00100000010000000000010110000001
+00100000010000000000010100011111
 00100000001000000100000111000011
 01101000000000001100100000001000
 11000001000000010000000000000000
@@ -786452,8 +786452,7 @@
 00100000001000000011010000001110
 01101000000000001100011110011111
 11000000000000001000000000010111
-00100000001000000000000000011001
-00100000010000000000010001110000
+00100000001000000000000000011000
 01110000010001101100011000000101
 11011000111000000000000000000001
 00100000001000000100000110111001
Index: YDN_1066_139D_NEW/output/flash.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/flash.dat	(revision 2105)
+++ /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/flash.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-ea
+fe
 1f
 20
 20
@@ -11,7 +11,7 @@
 20
 40
 03
-fc
+a6
 68
 00
 c1
@@ -23,7 +23,7 @@
 20
 40
 07
-6d
+0d
 68
 00
 c6
@@ -46,24 +46,28 @@
 ca
 20
 40
-03
-1b
+02
+c5
+20
+40
+07
+9a
 20
 40
 00
-0e
+0f
 20
 40
 00
-21
+22
 20
 20
 03
-65
+0f
 58
 00
 03
-d2
+7c
 60
 01
 4d
@@ -71,7 +75,7 @@
 58
 00
 03
-ec
+96
 60
 01
 41
@@ -79,15 +83,15 @@
 58
 00
 06
-ae
+4e
 60
 01
 41
 f9
 58
 00
-04
-17
+03
+c1
 60
 01
 41
@@ -95,7 +99,7 @@
 58
 00
 02
-db
+98
 60
 01
 41
@@ -103,15 +107,15 @@
 58
 00
 04
-58
+02
 60
 01
 41
 f5
 58
 00
-04
-3d
+03
+e7
 60
 01
 41
@@ -119,7 +123,7 @@
 58
 00
 04
-95
+3f
 60
 01
 41
@@ -127,7 +131,7 @@
 58
 00
 04
-9c
+46
 60
 01
 41
@@ -147,15 +151,15 @@
 24
 55
 80
-29
+2a
 20
 40
-03
-1d
+02
+c7
 20
 40
 03
-5e
+08
 68
 00
 c7
@@ -256,10 +260,6 @@
 00
 00
 01
-20
-00
-00
-01
 c2
 84
 00
@@ -275,51 +275,51 @@
 c0
 42
 87
-d9
+79
 c0
 44
 87
-aa
+4a
 c0
 0d
 86
-c7
+67
 c0
 13
 06
-c9
+69
 c0
 24
 06
-e5
+85
 c0
 25
 06
-ec
+8c
 c0
 28
 86
-f5
+95
 c0
 2c
 86
-e3
+83
 c0
 53
 86
-fa
+9a
 c0
 56
-87
-10
+86
+b0
 c0
 65
 b3
 e4
 c0
 74
-87
-21
+86
+c1
 c0
 50
 80
@@ -335,99 +335,99 @@
 c0
 62
 02
-e8
+a5
 c0
 71
 85
-8b
+29
 c0
 73
 05
-b6
+54
 c0
 75
 05
-ec
+8c
 c0
 75
 85
-f2
+92
 c0
 76
 05
-ff
+9f
 20
 20
 2a
 8e
 c0
 1c
-86
-06
+85
+a6
 c0
 21
-86
-0e
+85
+ae
 c0
 25
-06
-14
+05
+b4
 c0
 2b
-86
-17
+85
+b7
 c0
 2c
-86
-19
+85
+b9
 c0
 31
-86
-1b
+85
+bb
 c0
 33
-06
-45
+05
+e5
 c0
 33
 86
-60
+00
 c0
 35
 06
-99
+39
 c0
 3b
 86
-a4
+44
 c0
 02
-87
-23
+86
+c3
 c0
 40
-07
-25
+06
+c5
 c0
 41
-07
-2f
+06
+cf
 c0
 44
-07
-31
+06
+d1
 c0
 46
 06
-b4
+54
 c0
 46
 86
-c0
+60
 c0
 7d
-07
-55
+06
+f5
 20
 20
 2a
@@ -487,7 +487,7 @@
 20
 40
 03
-e3
+8d
 20
 40
 6a
@@ -635,19 +635,19 @@
 20
 40
 01
-76
+51
 24
 34
 00
-c8
+af
 20
 40
 01
-5d
+2c
 20
 40
 01
-99
+74
 68
 00
 cc
@@ -659,7 +659,7 @@
 20
 40
 07
-7e
+1e
 68
 00
 cb
@@ -667,11 +667,11 @@
 c0
 00
 83
-d5
+7f
 20
 40
 00
-d6
+bd
 24
 74
 00
@@ -679,7 +679,7 @@
 20
 40
 02
-e2
+9f
 58
 00
 ec
@@ -696,152 +696,52 @@
 60
 00
 00
+70
+11
+c7
+01
 20
-40
-02
-ad
-24
-74
-00
-00
 20
-40
-00
-c2
-68
-01
-4d
-33
-1f
-e0
-fe
-01
-60
-01
-4d
-33
+07
+7b
 68
-09
-4d
-35
-98
-46
-7c
 00
+cc
+1e
 20
-42
-80
-b7
-20
-20
-00
-9d
-70
-4d
-32
+5a
 00
-58
+e1
+68
 00
+cb
+2b
+24
+7a
 00
 00
-60
-01
-4d
-33
-58
+68
 00
+cb
+6b
+24
+7a
 00
-19
-60
-01
-4d
-35
-70
-4c
-2d
 00
 68
 00
-cc
-18
-60
+cb
+26
+c1
+00
+80
 00
-cc
-17
 20
-60
+40
 00
-00
-68
-00
-cc
-19
-20
-20
-00
-be
-68
-00
-cc
-2d
-1f
-e0
-fe
-01
-60
-00
-cc
-2d
-c0
-02
-00
-c0
-c0
-02
-80
-bc
-20
-60
-00
-00
-68
-00
-cc
-1e
-20
-5a
-01
-12
-68
-00
-cb
-2b
-24
-7a
-00
-00
-68
-00
-cb
-6b
-24
-7a
-00
-00
-68
-00
-cb
-26
-c1
-00
-80
-00
-20
-40
-00
-d6
-24
-74
+bd
+24
+74
 00
 00
 68
@@ -895,19 +795,19 @@
 20
 40
 02
-e5
+a2
 20
 40
 02
-e2
+9f
 20
 40
 00
-f0
+d7
 20
 40
 03
-67
+11
 68
 12
 00
@@ -995,111 +895,15 @@
 68
 08
 c6
-e2
-20
-40
-67
-dd
-68
-08
-c6
-e3
-20
-40
-67
-dd
-68
-08
-c6
-e4
-20
-40
-67
-dd
-68
-08
-c6
-e5
-20
-40
-67
-dd
-68
-08
-c6
-e6
-20
-40
-67
-dd
-68
-08
-c6
-e7
-20
-40
-67
-dd
-68
-08
-c6
-ed
-20
-40
-67
-dd
-20
-40
-67
-dd
-68
-08
-c6
 ec
 20
 40
 67
 dd
-68
-08
-c6
-e8
-20
-40
-67
-dd
-68
-08
-c6
-e9
-20
-40
-67
-dd
-68
-08
-c6
-ea
 20
-40
-67
-dd
-68
-08
-c6
-eb
 20
-40
-67
-dd
-68
-08
+3e
 c6
-f3
-20
-20
-67
-e1
 70
 4c
 1e
@@ -1110,8 +914,8 @@
 00
 20
 40
-01
-25
+00
+f4
 60
 00
 cb
@@ -1151,7 +955,7 @@
 20
 40
 01
-79
+54
 20
 20
 00
@@ -1231,7 +1035,7 @@
 20
 40
 07
-74
+14
 68
 00
 cd
@@ -1239,11 +1043,11 @@
 c0
 00
 81
-37
+06
 c0
 01
 01
-3b
+0a
 20
 60
 00
@@ -1262,8 +1066,8 @@
 00
 20
 20
-01
-25
+00
+f4
 70
 4d
 27
@@ -1271,7 +1075,7 @@
 20
 20
 01
-38
+07
 68
 01
 4b
@@ -1287,7 +1091,7 @@
 c2
 85
 01
-dc
+b3
 68
 00
 cd
@@ -1295,7 +1099,7 @@
 c0
 00
 81
-46
+15
 70
 4d
 27
@@ -1306,8 +1110,8 @@
 27
 c0
 80
-81
-25
+80
+f4
 68
 00
 cd
@@ -1323,11 +1127,11 @@
 c0
 02
 01
-4d
+1c
 20
 40
-02
-25
+01
+44
 70
 4c
 37
@@ -1335,19 +1139,19 @@
 20
 20
 01
-99
+74
 20
 40
 07
-74
+14
 70
 4d
 25
 00
 20
 20
-01
-25
+00
+f4
 70
 4d
 2a
@@ -1362,8 +1166,8 @@
 00
 20
 20
-01
-25
+00
+f4
 68
 00
 cd
@@ -1371,7 +1175,7 @@
 c0
 01
 81
-51
+20
 68
 00
 cb
@@ -1382,8 +1186,8 @@
 04
 20
 20
-81
-23
+80
+f2
 68
 00
 cd
@@ -1391,11 +1195,11 @@
 c0
 00
 81
-50
+1f
 c0
 01
 01
-51
+20
 20
 60
 00
@@ -1411,11 +1215,11 @@
 20
 40
 01
-62
+31
 24
 56
 01
-6a
+39
 20
 60
 00
@@ -1459,7 +1263,7 @@
 20
 3a
 01
-71
+40
 1f
 e0
 ff
@@ -1478,8 +1282,8 @@
 04
 20
 20
-02
-25
+01
+44
 70
 4d
 29
@@ -1491,31 +1295,79 @@
 24
 3a
 01
-44
+13
 70
 4c
 37
 02
-20
-20
-02
-25
+68
+08
+cb
+fd
 68
 00
 cc
-02
-c0
-ff
-81
-e7
-20
+1a
+1f
+e1
+7e
+03
+1f
+ef
+a2
+04
+58
+00
+4c
+03
+9a
+20
+fe
+00
+98
+40
+8c
+00
+e8
+c0
+80
+00
+60
+00
+cb
+fc
+18
 40
+84
 01
-7c
+18
+41
+04
+03
+60
+08
+cb
+fd
 20
-40
+60
+00
+00
+68
+00
+cc
 02
-13
+c0
+ff
+81
+be
+20
+40
+01
+57
+20
+40
+01
+ea
 70
 4b
 f7
@@ -1535,7 +1387,7 @@
 20
 34
 01
-82
+5d
 68
 03
 cb
@@ -1551,7 +1403,7 @@
 20
 40
 04
-92
+3c
 70
 4c
 1e
@@ -1566,8 +1418,8 @@
 f2
 20
 40
-01
-25
+00
+f4
 60
 00
 cb
@@ -1635,7 +1487,7 @@
 c2
 00
 01
-92
+6d
 20
 60
 00
@@ -1655,7 +1507,7 @@
 20
 40
 01
-b5
+90
 68
 00
 cc
@@ -1667,23 +1519,23 @@
 24
 2c
 01
-c4
+9b
 24
 37
 81
-c4
+9b
 20
 40
 01
-b0
+8b
 20
 40
 01
-e0
+b7
 20
 40
 07
-70
+10
 68
 00
 cb
@@ -1703,11 +1555,11 @@
 c0
 ff
 81
-b3
+8e
 20
 40
 01
-54
+23
 58
 00
 00
@@ -1747,11 +1599,11 @@
 20
 40
 07
-6d
+0d
 20
 20
 01
-e9
+c0
 78
 57
 fc
@@ -1759,15 +1611,7 @@
 20
 40
 02
-8c
-68
-00
-cc
-2e
-c0
-00
-81
-c2
+49
 18
 00
 2a
@@ -1795,23 +1639,15 @@
 20
 40
 02
-48
+05
 20
 57
 82
-84
+41
 20
 60
 00
 00
-20
-40
-02
-84
-20
-20
-01
-a4
 68
 00
 cb
@@ -1831,7 +1667,7 @@
 c0
 ff
 81
-d8
+af
 68
 08
 cb
@@ -1855,7 +1691,7 @@
 24
 3a
 01
-9a
+75
 68
 00
 cd
@@ -1863,7 +1699,7 @@
 c0
 01
 81
-3d
+0c
 68
 00
 cd
@@ -1879,11 +1715,11 @@
 c0
 01
 01
-32
+01
 20
 40
-01
-29
+00
+f8
 70
 4c
 37
@@ -1891,7 +1727,7 @@
 20
 20
 01
-99
+74
 68
 00
 cb
@@ -1907,7 +1743,7 @@
 20
 20
 01
-de
+b5
 58
 00
 00
@@ -1927,7 +1763,7 @@
 20
 40
 01
-f8
+cf
 68
 00
 cb
@@ -1959,7 +1795,7 @@
 20
 20
 07
-db
+7b
 70
 11
 c7
@@ -1967,7 +1803,7 @@
 20
 20
 07
-db
+7b
 70
 11
 c7
@@ -1975,7 +1811,7 @@
 20
 20
 07
-db
+7b
 70
 11
 c7
@@ -1983,7 +1819,7 @@
 20
 20
 07
-db
+7b
 79
 3f
 80
@@ -2098,8 +1934,8 @@
 00
 c2
 00
-02
-09
+01
+e0
 1a
 22
 7e
@@ -2200,74 +2036,6 @@
 20
 7f
 01
-68
-08
-cb
-fd
-20
-40
-02
-29
-60
-08
-cb
-fd
-20
-60
-00
-00
-20
-40
-02
-2d
-18
-40
-84
-01
-18
-41
-04
-03
-20
-60
-00
-00
-68
-00
-cc
-1a
-1f
-e1
-7e
-03
-1f
-ef
-a2
-04
-58
-00
-4c
-03
-9a
-20
-fe
-00
-98
-40
-8c
-00
-e8
-c0
-80
-00
-60
-00
-cb
-fc
-20
-60
-00
-00
 78
 44
 fc
@@ -2306,44 +2074,8 @@
 00
 20
 40
-53
-c4
-68
-02
-4c
-1a
-98
-00
-12
-00
-20
-40
-29
-18
-68
-08
-cb
+01
 fc
-20
-40
-29
-1f
-58
-00
-05
-00
-20
-40
-2a
-8f
-20
-40
-29
-24
-20
-40
-02
-36
 78
 57
 fc
@@ -2379,7 +2111,7 @@
 24
 2c
 02
-88
+45
 78
 46
 fc
@@ -2399,7 +2131,7 @@
 20
 40
 02
-81
+3e
 60
 00
 cc
@@ -2415,11 +2147,11 @@
 24
 22
 82
-84
+41
 20
 40
 02
-81
+3e
 60
 00
 cb
@@ -2435,7 +2167,7 @@
 20
 22
 82
-64
+21
 68
 00
 cb
@@ -2451,11 +2183,11 @@
 24
 20
 82
-84
+41
 20
 40
 02
-81
+3e
 e0
 a0
 80
@@ -2471,11 +2203,11 @@
 20
 22
 82
-6c
+29
 20
 40
 02
-81
+3e
 e0
 a0
 80
@@ -2483,7 +2215,7 @@
 c2
 00
 02
-69
+26
 18
 a2
 22
@@ -2491,7 +2223,7 @@
 20
 40
 02
-81
+3e
 60
 00
 cd
@@ -2531,7 +2263,7 @@
 20
 23
 02
-84
+41
 78
 37
 fc
@@ -2599,7 +2331,7 @@
 20
 20
 02
-84
+41
 20
 40
 29
@@ -2626,12 +2358,12 @@
 00
 20
 40
-02
-36
+01
+fc
 20
 40
 02
-89
+46
 79
 20
 2a
@@ -2711,7 +2443,7 @@
 c2
 00
 02
-a2
+5f
 78
 24
 7c
@@ -2823,7 +2555,7 @@
 20
 40
 02
-c3
+80
 60
 08
 cc
@@ -2883,7 +2615,7 @@
 c2
 00
 02
-cd
+8a
 18
 49
 7e
@@ -2935,11 +2667,11 @@
 20
 40
 03
-d9
+83
 20
 40
 00
-de
+c5
 68
 00
 c0
@@ -2947,7 +2679,7 @@
 c3
 00
 02
-e2
+9f
 68
 00
 80
@@ -2979,7 +2711,7 @@
 20
 20
 05
-8b
+29
 20
 40
 34
@@ -2990,8 +2722,8 @@
 b9
 20
 35
-83
-1b
+82
+c5
 20
 40
 00
@@ -3003,19 +2735,19 @@
 c2
 81
 02
-f0
+ad
 20
 40
 05
-c4
+64
 c0
 02
-83
-19
+82
+c3
 20
 40
 02
-fc
+b8
 68
 00
 c7
@@ -3030,24 +2762,20 @@
 00
 20
 22
-83
-01
+82
+bd
 20
 40
-05
-2b
+04
+cd
 68
 00
 c2
 10
 c0
 19
-83
-04
+82
 c0
-1a
-03
-07
 70
 47
 9d
@@ -3086,12 +2814,12 @@
 02
 20
 40
-05
-2b
+04
+cd
 20
 20
 03
-c6
+70
 68
 03
 41
@@ -3105,85 +2833,13 @@
 42
 74
 70
-4b
-67
-01
-70
-47
-9f
-01
-68
-01
-46
-a8
-60
-01
-46
-ae
-20
-40
-34
-18
-20
-40
-03
-12
-58
-00
-00
-04
-e0
-c0
-80
-00
-d8
-c0
-43
-90
-20
-40
-05
-fb
-20
-20
-7d
-f4
-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
-03
-13
-70
 11
 c7
 61
 20
 20
 07
-db
+7b
 70
 42
 12
@@ -3194,8 +2850,8 @@
 36
 20
 40
-03
-1b
+02
+c5
 20
 40
 40
@@ -3206,12 +2862,12 @@
 d9
 c0
 18
-03
-29
+02
+d3
 c0
 18
-83
-4f
+82
+f9
 20
 40
 40
@@ -3222,8 +2878,8 @@
 e8
 20
 20
-03
-1f
+02
+c9
 70
 4a
 fe
@@ -3234,28 +2890,28 @@
 0f
 20
 40
-03
-1d
+02
+c7
 20
 20
 64
 11
 20
 40
-03
-54
+02
+fe
 68
 00
 c6
 de
 c0
 2d
-03
-2e
+02
+d8
 c0
 6c
-03
-36
+02
+e0
 20
 20
 40
@@ -3306,8 +2962,8 @@
 bd
 24
 22
-83
-1f
+82
+c9
 58
 00
 00
@@ -3322,8 +2978,8 @@
 55
 24
 22
-83
-1f
+82
+c9
 58
 00
 00
@@ -3338,8 +2994,8 @@
 1d
 24
 22
-83
-1f
+82
+c9
 70
 46
 e0
@@ -3394,8 +3050,8 @@
 f4
 20
 40
-03
-54
+02
+fe
 68
 00
 c6
@@ -3414,8 +3070,8 @@
 00
 20
 40
-03
-1b
+02
+c5
 58
 00
 80
@@ -3435,11 +3091,11 @@
 c0
 7f
 83
-5b
+05
 20
 20
 05
-8b
+29
 68
 00
 c6
@@ -3451,11 +3107,11 @@
 20
 20
 05
-8b
+29
 20
 40
-03
-1b
+02
+c5
 58
 00
 00
@@ -3487,7 +3143,7 @@
 20
 20
 07
-db
+7b
 68
 08
 cb
@@ -3555,7 +3211,7 @@
 20
 40
 03
-c4
+6e
 20
 40
 44
@@ -3575,7 +3231,7 @@
 20
 22
 83
-b4
+5e
 60
 09
 47
@@ -3595,23 +3251,23 @@
 20
 40
 03
-c4
+6e
 20
 40
 03
-93
+3d
 20
 40
 03
-ab
+55
 20
 40
 03
-97
+41
 20
 40
 03
-a2
+4c
 d8
 40
 00
@@ -3635,19 +3291,19 @@
 20
 40
 03
-97
+41
 20
 40
 03
-a2
+4c
 20
 40
 03
-bb
+65
 20
 20
-03
-1b
+02
+c5
 d8
 40
 00
@@ -3679,7 +3335,7 @@
 20
 20
 03
-a2
+4c
 1f
 e2
 26
@@ -3755,7 +3411,7 @@
 c2
 80
 03
-a2
+4c
 20
 60
 00
@@ -3787,11 +3443,11 @@
 20
 40
 03
-c4
+6e
 20
 40
 03
-ab
+55
 20
 20
 65
@@ -3799,15 +3455,15 @@
 20
 40
 03
-b1
+5b
 20
 40
 05
-f4
+94
 20
 40
 02
-ff
+bb
 20
 40
 43
@@ -3831,7 +3487,7 @@
 20
 40
 03
-69
+13
 20
 00
 00
@@ -3867,19 +3523,19 @@
 20
 20
 03
-bc
+66
 20
 40
 03
-c9
+73
 20
 34
 01
-ed
+c4
 20
 20
 01
-eb
+c2
 df
 20
 00
@@ -3911,7 +3567,7 @@
 c2
 00
 03
-cd
+77
 20
 60
 00
@@ -3955,7 +3611,7 @@
 20
 40
 03
-e1
+8b
 d8
 c0
 19
@@ -3963,7 +3619,7 @@
 20
 40
 03
-e1
+8b
 d8
 c0
 1a
@@ -3971,7 +3627,7 @@
 20
 40
 03
-e1
+8b
 d8
 c0
 1b
@@ -3995,7 +3651,7 @@
 20
 40
 03
-e1
+8b
 d8
 a0
 19
@@ -4003,7 +3659,7 @@
 20
 40
 03
-e1
+8b
 d8
 a0
 1a
@@ -4011,7 +3667,7 @@
 20
 40
 03
-e1
+8b
 d8
 a0
 1b
@@ -4019,7 +3675,7 @@
 20
 20
 03
-e1
+8b
 20
 40
 58
@@ -4046,8 +3702,8 @@
 9c
 20
 5a
-04
-3a
+03
+e4
 68
 02
 46
@@ -4066,8 +3722,8 @@
 00
 20
 40
-04
-12
+03
+bc
 da
 20
 46
@@ -4078,8 +3734,8 @@
 3d
 20
 54
-04
-01
+03
+ab
 20
 60
 00
@@ -4130,8 +3786,8 @@
 54
 20
 34
-04
-09
+03
+b3
 20
 60
 00
@@ -4218,8 +3874,8 @@
 9c
 20
 5a
-04
-3a
+03
+e4
 68
 02
 46
@@ -4242,16 +3898,16 @@
 00
 20
 40
-04
-12
+03
+bc
 68
 00
 cb
 03
 c0
 00
-84
-29
+83
+d3
 68
 00
 cb
@@ -4342,16 +3998,16 @@
 01
 20
 20
-03
-54
+02
+fe
 20
 40
 7e
 34
 20
 40
-04
-40
+03
+ea
 20
 20
 3e
@@ -4371,7 +4027,7 @@
 20
 40
 05
-db
+7b
 68
 08
 c6
@@ -4383,11 +4039,11 @@
 20
 20
 84
-56
+00
 20
 40
 05
-e4
+84
 68
 00
 c6
@@ -4434,8 +4090,8 @@
 2b
 20
 40
-05
-40
+04
+de
 20
 40
 3d
@@ -4443,11 +4099,11 @@
 20
 20
 03
-81
+2b
 20
 40
 05
-e4
+84
 20
 20
 3d
@@ -4459,35 +4115,35 @@
 c0
 0a
 04
-6a
+14
 c0
 0a
 84
-6d
+17
 c0
 14
 84
-70
+1a
 c0
 19
 04
-72
+1c
 c0
 20
 04
-74
+1e
 c0
 02
 04
-76
+20
 c0
 09
 84
-76
+20
 c0
 13
 84
-78
+22
 c0
 0c
 b3
@@ -4495,39 +4151,39 @@
 c0
 10
 84
-7a
+24
 c0
 00
 84
-7c
+26
 c0
 01
 04
-82
+2c
 c0
 15
 84
-85
+2f
 c0
 1c
 84
-87
+31
 c0
 1d
 04
-8a
+34
 c0
 1e
 04
-8d
+37
 20
 20
 41
 7d
 20
 40
-03
-25
+02
+cf
 70
 11
 c7
@@ -4535,11 +4191,11 @@
 20
 20
 07
-db
+7b
 20
 40
 04
-98
+42
 70
 11
 c7
@@ -4547,7 +4203,7 @@
 20
 20
 07
-db
+7b
 70
 0a
 99
@@ -4563,7 +4219,7 @@
 20
 20
 07
-db
+7b
 70
 11
 c7
@@ -4571,7 +4227,7 @@
 20
 20
 07
-db
+7b
 70
 11
 c7
@@ -4579,7 +4235,7 @@
 20
 20
 07
-db
+7b
 20
 40
 43
@@ -4595,23 +4251,23 @@
 20
 20
 07
-db
+7b
 20
 40
 05
-81
+1f
 20
 40
-03
-25
+02
+cf
 20
 40
 04
-f3
+95
 20
 40
-05
-3a
+04
+d8
 70
 48
 09
@@ -4623,7 +4279,7 @@
 20
 40
 04
-98
+42
 70
 11
 c7
@@ -4631,7 +4287,7 @@
 20
 20
 07
-db
+7b
 70
 11
 c7
@@ -4639,11 +4295,11 @@
 20
 20
 07
-db
+7b
 20
 40
-03
-25
+02
+cf
 70
 11
 c7
@@ -4651,11 +4307,11 @@
 20
 20
 07
-db
+7b
 20
 40
 04
-98
+42
 70
 11
 c7
@@ -4663,11 +4319,11 @@
 20
 20
 07
-db
+7b
 20
 40
 05
-81
+1f
 70
 4b
 60
@@ -4675,11 +4331,11 @@
 20
 40
 04
-f3
+95
 20
 40
-03
-25
+02
+cf
 20
 40
 3f
@@ -4699,7 +4355,7 @@
 20
 40
 04
-98
+42
 70
 11
 c7
@@ -4707,7 +4363,7 @@
 20
 20
 07
-db
+7b
 68
 00
 ca
@@ -4723,35 +4379,35 @@
 20
 20
 03
-5e
+08
 20
 40
-05
-43
+04
+e1
 20
 40
 05
-68
+06
 20
 40
 05
-84
+22
 20
 40
 04
-f6
+98
 20
 40
 04
-df
+81
 20
 40
 04
-e8
+8a
 20
 40
 04
-e4
+86
 20
 40
 42
@@ -4759,31 +4415,23 @@
 20
 40
 04
-ae
-20
-40
-04
-d8
-20
-40
-04
-c4
+56
 20
 40
 04
-c1
+7a
 20
 40
 04
-ca
+6c
 20
 40
 04
-d0
+72
 20
 40
 04
-b9
+61
 20
 40
 42
@@ -4791,7 +4439,7 @@
 20
 40
 04
-bc
+64
 20
 20
 42
@@ -4815,7 +4463,7 @@
 20
 20
 84
-b6
+5e
 68
 00
 c7
@@ -4859,7 +4507,7 @@
 da
 40
 04
-bf
+67
 20
 20
 33
@@ -4872,30 +4520,6 @@
 60
 00
 00
-da
-60
-46
-c6
-da
-40
-3d
-60
-20
-20
-33
-6d
-da
-60
-46
-ae
-da
-40
-04
-c7
-20
-20
-33
-74
 68
 00
 cb
@@ -4915,7 +4539,7 @@
 da
 40
 04
-cd
+6f
 20
 20
 33
@@ -4931,7 +4555,7 @@
 20
 20
 04
-dd
+7f
 68
 00
 cb
@@ -4947,7 +4571,7 @@
 da
 40
 04
-d5
+77
 20
 20
 33
@@ -4971,7 +4595,7 @@
 da
 40
 04
-db
+7d
 20
 20
 33
@@ -4999,7 +4623,7 @@
 da
 40
 04
-e2
+84
 20
 20
 33
@@ -5051,7 +4675,7 @@
 20
 3a
 04
-f1
+93
 1f
 e0
 ff
@@ -5099,19 +4723,19 @@
 c0
 00
 04
-fc
+9e
 c0
 00
-85
-06
+84
+a8
 20
 60
 00
 00
 20
 40
-05
-16
+04
+b8
 68
 00
 cb
@@ -5134,8 +4758,8 @@
 00
 20
 42
-85
-04
+84
+a6
 20
 60
 00
@@ -5146,8 +4770,8 @@
 00
 20
 20
-05
-24
+04
+c6
 68
 00
 cb
@@ -5178,16 +4802,16 @@
 2e
 20
 3a
-05
-12
+04
+b4
 68
 00
 cb
 2b
 20
 3a
-05
-22
+04
+c4
 1f
 e0
 ff
@@ -5202,12 +4826,12 @@
 26
 c0
 00
-85
-24
+84
+c6
 c0
 00
-05
-16
+04
+b8
 20
 60
 00
@@ -5222,8 +4846,8 @@
 20
 c0
 01
-05
-1e
+04
+c0
 68
 08
 cb
@@ -5274,8 +4898,8 @@
 2b
 24
 3a
-05
-28
+04
+ca
 70
 4b
 24
@@ -5295,7 +4919,7 @@
 20
 20
 00
-ed
+d4
 70
 4b
 2f
@@ -5318,22 +4942,6 @@
 00
 70
 4b
-2b
-1e
-20
-20
-05
-40
-70
-4b
-29
-05
-20
-20
-05
-35
-70
-4b
 29
 03
 70
@@ -5378,8 +4986,8 @@
 00
 20
 20
-05
-22
+04
+c4
 70
 4b
 29
@@ -5390,8 +4998,8 @@
 01
 20
 20
-05
-36
+04
+d4
 68
 00
 c6
@@ -5438,8 +5046,8 @@
 09
 20
 40
-05
-5b
+04
+f9
 68
 00
 c2
@@ -5450,8 +5058,8 @@
 0a
 c3
 00
-05
-54
+04
+f2
 70
 4a
 fd
@@ -5486,8 +5094,8 @@
 15
 20
 20
-05
-22
+04
+c4
 ea
 24
 00
@@ -5598,8 +5206,8 @@
 cf
 c0
 02
-85
-22
+84
+c4
 1f
 e6
 7c
@@ -5607,7 +5215,7 @@
 24
 21
 05
-7a
+18
 20
 60
 00
@@ -5618,8 +5226,8 @@
 01
 20
 20
-05
-16
+04
+b8
 68
 00
 cb
@@ -5659,7 +5267,7 @@
 da
 40
 05
-87
+25
 20
 20
 33
@@ -5678,8 +5286,8 @@
 01
 20
 20
-05
-58
+04
+f6
 68
 00
 c6
@@ -5687,15 +5295,15 @@
 c0
 04
 05
-a1
+3f
 c0
 02
 05
-a8
+46
 c0
 01
 05
-ad
+4b
 68
 00
 c7
@@ -5703,19 +5311,19 @@
 c0
 00
 05
-97
+35
 c0
 00
 85
-99
+37
 c0
 01
 05
-9b
+39
 c0
 01
 85
-9d
+3b
 20
 60
 00
@@ -5735,7 +5343,7 @@
 20
 20
 05
-95
+33
 68
 00
 c7
@@ -5743,7 +5351,7 @@
 20
 20
 05
-95
+33
 68
 00
 c7
@@ -5751,7 +5359,7 @@
 20
 20
 05
-95
+33
 68
 00
 c7
@@ -5759,7 +5367,7 @@
 20
 20
 05
-95
+33
 70
 47
 7a
@@ -5775,7 +5383,7 @@
 c0
 00
 85
-a6
+44
 c0
 01
 bd
@@ -5831,7 +5439,7 @@
 c0
 01
 85
-b2
+50
 20
 20
 3d
@@ -5879,19 +5487,27 @@
 20
 40
 05
-c2
+62
 24
 34
 05
-c0
+5f
+20
+40
+07
+9d
 20
 40
 05
-7c
+1a
 20
 20
 3f
 a0
+20
+40
+07
+9a
 70
 4b
 37
@@ -5903,7 +5519,7 @@
 20
 40
 05
-c4
+64
 20
 20
 40
@@ -5915,15 +5531,15 @@
 20
 40
 05
-c9
+69
 20
 40
 05
-cf
+6f
 20
 40
 05
-d5
+75
 20
 20
 40
@@ -5935,7 +5551,7 @@
 20
 40
 05
-e4
+84
 68
 08
 c6
@@ -5959,7 +5575,7 @@
 20
 40
 05
-e4
+84
 68
 08
 c6
@@ -5983,7 +5599,7 @@
 20
 40
 05
-e4
+84
 68
 08
 c6
@@ -6055,7 +5671,7 @@
 20
 20
 05
-df
+7f
 68
 08
 c6
@@ -6067,11 +5683,11 @@
 20
 20
 05
-e5
+85
 20
 40
 04
-f3
+95
 28
 0f
 fe
@@ -6079,7 +5695,7 @@
 20
 40
 81
-ef
+c6
 20
 20
 42
@@ -6091,7 +5707,7 @@
 20
 20
 07
-db
+7b
 70
 11
 c7
@@ -6099,11 +5715,11 @@
 20
 20
 07
-db
+7b
 20
 40
 03
-c4
+6e
 d8
 40
 00
@@ -6154,8 +5770,8 @@
 ac
 20
 40
-03
-54
+02
+fe
 68
 00
 c0
@@ -6170,8 +5786,8 @@
 d7
 20
 20
-05
-3a
+04
+d8
 68
 00
 c5
@@ -6199,7 +5815,7 @@
 20
 40
 07
-7e
+1e
 20
 20
 53
@@ -6247,7 +5863,7 @@
 20
 20
 07
-db
+7b
 70
 11
 c7
@@ -6255,43 +5871,43 @@
 20
 20
 07
-db
+7b
 68
 00
 84
 56
 c2
 82
-86
-2f
+85
+cf
 20
 40
 07
-70
+10
 68
 00
 c7
 8e
 24
 3a
-06
-25
+05
+c5
 68
 00
 84
 3f
 c3
 02
-06
-29
+05
+c9
 68
 00
 82
 da
 20
 3a
-06
-29
+05
+c9
 20
 20
 56
@@ -6318,8 +5934,8 @@
 c4
 c0
 82
-86
-2c
+85
+cc
 70
 47
 8e
@@ -6330,20 +5946,20 @@
 92
 20
 5a
-04
-05
+03
+af
 20
 20
 56
 22
 20
 40
-06
-31
+05
+d1
 20
 20
-06
-3d
+05
+dd
 68
 00
 c6
@@ -6395,7 +6011,7 @@
 20
 20
 07
-74
+14
 68
 00
 c7
@@ -6478,8 +6094,8 @@
 0c
 c0
 01
-86
-54
+85
+f4
 20
 20
 56
@@ -6490,8 +6106,8 @@
 db
 c0
 00
-86
-57
+85
+f7
 20
 20
 5c
@@ -6539,11 +6155,11 @@
 c0
 02
 06
-64
+04
 c0
 03
 06
-91
+31
 20
 20
 56
@@ -6554,8 +6170,8 @@
 a5
 20
 40
-06
-3e
+05
+de
 20
 40
 7e
@@ -6571,7 +6187,7 @@
 c0
 08
 06
-73
+13
 1f
 ec
 84
@@ -6583,7 +6199,7 @@
 20
 21
 06
-81
+21
 d8
 40
 47
@@ -6667,7 +6283,7 @@
 c0
 05
 06
-83
+23
 20
 20
 58
@@ -6683,7 +6299,7 @@
 c2
 81
 86
-8a
+2a
 68
 01
 04
@@ -6711,7 +6327,7 @@
 24
 22
 86
-86
+26
 20
 40
 5a
@@ -6719,7 +6335,7 @@
 24
 34
 06
-86
+26
 70
 04
 7a
@@ -6735,11 +6351,11 @@
 c0
 00
 86
-95
+35
 c0
 02
 86
-97
+37
 20
 20
 5a
@@ -6759,7 +6375,7 @@
 20
 20
 07
-db
+7b
 68
 00
 80
@@ -6771,7 +6387,7 @@
 20
 40
 06
-9f
+3f
 d8
 e0
 00
@@ -6811,7 +6427,7 @@
 20
 37
 06
-a7
+47
 24
 36
 d8
@@ -6907,7 +6523,7 @@
 20
 40
 06
-c1
+61
 60
 18
 80
@@ -6951,7 +6567,7 @@
 20
 20
 07
-db
+7b
 20
 40
 21
@@ -6987,7 +6603,7 @@
 c5
 05
 86
-d6
+76
 20
 40
 24
@@ -6995,11 +6611,11 @@
 24
 3a
 06
-cf
+6f
 c5
 16
 86
-df
+7f
 20
 20
 21
@@ -7039,7 +6655,7 @@
 20
 20
 06
-cf
+6f
 68
 02
 01
@@ -7103,7 +6719,7 @@
 20
 40
 86
-f0
+90
 20
 20
 24
@@ -7119,15 +6735,15 @@
 20
 40
 87
-74
+14
 24
 40
 87
-70
+10
 20
 20
 07
-7e
+1e
 20
 40
 24
@@ -7178,8 +6794,8 @@
 5a
 20
 3a
-07
-04
+06
+a4
 68
 00
 c5
@@ -7286,8 +6902,8 @@
 de
 20
 5a
-07
-1e
+06
+be
 20
 20
 2b
@@ -7311,7 +6927,7 @@
 20
 20
 07
-db
+7b
 70
 11
 c7
@@ -7319,7 +6935,7 @@
 20
 20
 07
-db
+7b
 68
 00
 85
@@ -7330,8 +6946,8 @@
 c9
 c0
 09
-87
-29
+86
+c9
 20
 20
 5d
@@ -7367,7 +6983,7 @@
 20
 20
 07
-db
+7b
 20
 40
 62
@@ -7386,12 +7002,12 @@
 00
 c0
 02
-07
-53
+06
+f3
 c0
 08
-07
-38
+06
+d8
 20
 20
 63
@@ -7406,8 +7022,8 @@
 00
 c0
 00
-87
-3c
+86
+dc
 20
 20
 63
@@ -7422,8 +7038,8 @@
 6d
 c2
 80
-07
-40
+06
+e0
 20
 20
 63
@@ -7490,8 +7106,8 @@
 00
 24
 21
-07
-51
+06
+f1
 20
 20
 63
@@ -7530,16 +7146,16 @@
 d6
 c0
 0f
-87
-5d
+86
+fd
 c0
 10
 07
-60
+00
 c0
 09
 07
-6a
+0a
 20
 20
 7d
@@ -7555,7 +7171,7 @@
 20
 20
 07
-62
+02
 70
 01
 85
@@ -7595,7 +7211,7 @@
 20
 20
 03
-81
+2b
 20
 40
 58
@@ -7647,7 +7263,7 @@
 24
 41
 07
-7c
+1c
 68
 00
 cd
@@ -7699,7 +7315,7 @@
 20
 40
 02
-ca
+87
 60
 08
 cd
@@ -7711,7 +7327,7 @@
 c5
 13
 07
-88
+28
 58
 00
 00
@@ -7723,7 +7339,7 @@
 24
 21
 07
-a0
+40
 68
 00
 cd
@@ -7735,7 +7351,7 @@
 24
 21
 07
-90
+30
 68
 00
 cd
@@ -7743,7 +7359,7 @@
 c0
 00
 07
-a1
+41
 20
 60
 00
@@ -7771,7 +7387,7 @@
 c5
 13
 07
-97
+37
 58
 00
 00
@@ -7791,7 +7407,7 @@
 c0
 00
 07
-a8
+48
 1f
 e0
 ff
@@ -7803,7 +7419,7 @@
 c0
 00
 07
-a8
+48
 70
 41
 de
@@ -7823,7 +7439,7 @@
 c0
 01
 07
-a6
+46
 1f
 e0
 fe
@@ -7835,7 +7451,7 @@
 c0
 00
 87
-9e
+3e
 70
 41
 de
@@ -7919,19 +7535,19 @@
 c0
 01
 07
-c2
+62
 c0
 02
 07
-c7
+67
 c0
 10
 07
-d6
+76
 20
 40
 07
-cc
+6c
 70
 89
 55
@@ -7951,7 +7567,7 @@
 20
 40
 07
-d1
+71
 70
 89
 55
@@ -7971,7 +7587,7 @@
 20
 40
 07
-cc
+6c
 70
 89
 55
@@ -8029,151 +7645,555 @@
 00
 00
 70
-89
-56
-c2
-70
-89
-55
-d0
+89
+56
+c2
+70
+89
+55
+d0
+20
+60
+00
+00
+18
+00
+2a
+08
+20
+20
+28
+fa
+68
+08
+91
+c7
+18
+51
+84
+00
+68
+00
+cb
+50
+98
+46
+7c
+00
+20
+22
+87
+98
+60
+08
+cb
+50
+18
+40
+84
+01
+58
+00
+01
+00
+98
+4f
+84
+00
+68
+01
+cb
+51
+98
+46
+7e
+00
+68
+09
+cb
+54
+98
+40
+fe
+00
+1f
+e0
+ff
+fb
+60
+01
+cb
+57
+20
+40
+03
+6e
+68
+01
+cb
+57
+d8
+40
+01
+00
+da
+20
+1f
+00
+20
+40
+65
+62
+68
+02
+1f
+00
+20
+3a
+07
+8b
+20
+40
+02
+c5
+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
+df
+20
+00
+05
+d8
+a0
+4b
+0b
+20
+20
+7e
+d4
+68
+02
+46
+9b
+20
+7a
+00
+00
+20
+40
+07
+ee
+58
+00
+00
+06
+20
+40
+07
+e1
+58
+00
+00
+03
+20
+40
+07
+e7
+68
+00
+cb
+0b
+c0
+00
+87
+a7
+20
+20
+07
+9a
+68
+01
+4b
+0c
+60
+01
+11
+be
+68
+01
+46
+9b
+60
+01
+11
+c0
+20
+40
+07
+ba
+68
+01
+11
+be
+60
+01
+4b
+0c
+68
+01
+11
+c0
+60
+01
+46
+9b
+68
+01
+4b
+0e
+60
+01
+11
+be
+68
+01
+46
+9d
+60
+01
+11
+c0
+20
+40
+07
+ba
+68
+01
+11
+be
+60
+01
+4b
+0e
+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
+1f
+e6
+7e
+00
+60
+00
+8a
+ae
+68
+00
+8a
+ae
+1f
+e3
+7e
+00
+60
+00
+8a
+ae
+68
+00
+8a
+ae
+1f
+e6
+7e
+00
+20
+60
+00
+00
+9a
+26
+7c
+00
+24
+21
+07
+ec
+9a
+46
+7c
+00
+24
+21
+07
+ec
+70
+4b
+0b
+00
 20
 60
 00
 00
-18
+9a
+26
+7c
 00
-2a
-08
-20
-20
-28
-fa
-68
-08
-91
-c7
-18
-51
-84
+24
+61
 00
-68
 00
-cb
-50
-98
+9a
 46
 7c
 00
-20
-22
-87
-f8
-60
-08
-cb
-50
-18
-40
-84
-01
-58
+24
+61
+00
 00
+20
+20
+07
+e5
+70
+4b
+0b
 01
+20
+60
 00
-98
-4f
-84
 00
 68
 01
-cb
-51
-98
 46
-7e
-00
-68
-09
-cb
-54
-98
-40
-fe
-00
-1f
-e0
-ff
-fb
+9b
 60
 01
-cb
-57
+11
+c0
 20
 40
-03
-c4
+07
+f7
+1f
+e2
+22
+00
 68
 01
-cb
-57
-d8
-40
+46
+9d
+60
 01
-00
-da
+11
+c0
 20
+40
+07
+f7
 1f
+e2
+24
 00
 20
-40
-65
-62
+60
+00
+00
 68
-02
-1f
 00
-20
-3a
-07
-eb
-20
-40
-03
-1b
-58
+91
+c1
+c0
+7f
+87
+fc
+68
 00
+91
+c0
 1f
-00
-60
-01
-41
-99
-70
-41
-9b
-40
+e1
+7e
+ff
 20
-40
-64
-ca
-58
-00
+60
 00
 00
-60
-02
-41
-99
 68
+01
+11
+c0
+1f
+e6
+7e
 00
-91
-c7
 20
 20
-00
+07
+fa
+1d
 01
-5a
-6b
 aa
 55
 08
@@ -9196,8 +9216,8 @@
 00
 51
 4b
-f7
-2f
+0b
+30
 00
 ff
 20
@@ -9223,7 +9243,7 @@
 c0
 5a
 00
-1b
+1a
 20
 60
 00
@@ -9231,7 +9251,7 @@
 20
 40
 05
-81
+1f
 20
 20
 41
@@ -9291,11 +9311,7 @@
 20
 20
 00
-19
-20
-40
-04
-70
+18
 70
 46
 c6
@@ -9456,6 +9472,10 @@
 00
 00
 00
+00
+00
+00
+00
 20
 20
 00
@@ -9471,15 +9491,15 @@
 c0
 51
 00
-22
+21
 c0
 51
 80
-1b
+1a
 c0
 52
 00
-2a
+29
 20
 60
 00
@@ -9491,11 +9511,11 @@
 20
 40
 02
-fc
+b8
 20
 40
 01
-ef
+c6
 70
 41
 bd
@@ -9503,11 +9523,11 @@
 20
 40
 00
-e0
+c7
 20
 20
 02
-f9
+b5
 68
 01
 45
@@ -9531,7 +9551,7 @@
 20
 21
 00
-19
+18
 58
 00
 00
@@ -9544,10 +9564,6 @@
 01
 44
 98
-20
-40
-04
-70
 70
 47
 c4
@@ -9562,8 +9578,8 @@
 01
 20
 20
-06
-5c
+05
+fc
 68
 01
 46
@@ -9615,7 +9631,7 @@
 20
 40
 03
-fc
+a6
 20
 40
 58
@@ -9667,7 +9683,7 @@
 20
 40
 00
-e0
+c7
 68
 00
 c7
@@ -9679,11 +9695,11 @@
 20
 42
 85
-e9
+89
 20
 40
 03
-bb
+65
 68
 10
 80
@@ -9712,6 +9728,10 @@
 00
 00
 00
+00
+00
+00
+00
 20
 20
 00
@@ -9827,11 +9847,11 @@
 20
 40
 01
-f3
+ca
 20
 40
 01
-79
+54
 20
 20
 7f
@@ -9867,7 +9887,7 @@
 20
 20
 01
-aa
+85
 70
 4c
 02
@@ -9875,7 +9895,7 @@
 20
 20
 01
-aa
+85
 70
 4c
 02
@@ -9894,20 +9914,20 @@
 d2
 20
 40
-02
-05
+01
+dc
 20
 20
 01
-aa
+85
 20
 40
 05
-81
+1f
 20
 40
 04
-92
+3c
 70
 47
 8b
@@ -9939,7 +9959,7 @@
 20
 40
 02
-fc
+b8
 68
 02
 4c
@@ -9951,7 +9971,7 @@
 20
 20
 03
-81
+2b
 00
 00
 00
@@ -10006,8 +10026,8 @@
 00
 20
 40
-01
-20
+00
+ef
 20
 40
 3e
@@ -10015,7 +10035,7 @@
 20
 40
 00
-ed
+d4
 68
 00
 c6
@@ -10051,7 +10071,7 @@
 20
 40
 00
-1f
+1a
 58
 00
 00
@@ -10069,29 +10089,9 @@
 3e
 54
 20
-40
-58
-10
-20
-40
-58
-39
-20
-40
-58
-2c
-20
-40
-58
-18
-20
-40
-05
-f0
-20
 20
 03
-77
+21
 20
 40
 74
@@ -10224,6 +10224,26 @@
 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
@@ -10263,11 +10283,11 @@
 c0
 7f
 81
-de
+b5
 20
 40
 01
-b5
+90
 24
 2c
 00
@@ -10279,11 +10299,11 @@
 20
 40
 01
-e0
+b7
 20
 40
 02
-fc
+b8
 68
 02
 4c
@@ -10323,11 +10343,11 @@
 20
 40
 01
-b0
+8b
 20
 20
 03
-d5
+7f
 70
 11
 9e
@@ -10359,11 +10379,11 @@
 20
 40
 01
-f3
+ca
 20
 20
-02
-13
+01
+ea
 68
 00
 cc
@@ -10422,12 +10442,12 @@
 00
 20
 40
-02
-06
+01
+dd
 20
 20
-02
-25
+01
+44
 20
 40
 00
@@ -10478,8 +10498,8 @@
 fe
 20
 20
-02
-05
+01
+dc
 20
 20
 00
@@ -10502,12 +10522,12 @@
 26
 20
 40
-02
-06
+01
+dd
 20
 40
-02
-25
+01
+44
 68
 00
 cc
@@ -10539,11 +10559,11 @@
 c0
 7f
 81
-de
+b5
 20
 40
 01
-b5
+90
 24
 2c
 00
@@ -10575,11 +10595,11 @@
 20
 40
 01
-b0
+8b
 20
 20
 03
-d5
+7f
 70
 11
 9e
@@ -10611,11 +10631,11 @@
 20
 40
 01
-f3
+ca
 20
 20
-02
-13
+01
+ea
 68
 01
 4c
@@ -10630,8 +10650,8 @@
 1f
 20
 40
-02
-25
+01
+44
 20
 20
 00
@@ -10663,7 +10683,7 @@
 20
 40
 00
-ed
+d4
 d8
 e0
 00
@@ -10730,8 +10750,8 @@
 fe
 20
 20
-02
-05
+01
+dc
 00
 00
 00
@@ -10751,7 +10771,7 @@
 20
 40
 02
-fc
+b8
 70
 47
 20
@@ -10779,7 +10799,7 @@
 20
 40
 05
-f4
+94
 68
 09
 47
@@ -10799,7 +10819,7 @@
 20
 40
 03
-86
+30
 18
 0a
 7e
@@ -10862,16 +10882,12 @@
 dd
 20
 20
-05
-34
+04
+d2
 70
 47
 9f
 00
-20
-40
-03
-12
 58
 00
 00
@@ -10887,7 +10903,7 @@
 20
 40
 05
-fb
+9b
 20
 20
 7d
@@ -10992,6 +11008,10 @@
 00
 00
 00
+00
+00
+00
+00
 20
 20
 00
@@ -10999,11 +11019,19 @@
 c0
 20
 00
-04
+06
 c0
 20
 80
-16
+18
+c0
+21
+00
+25
+c0
+21
+80
+2b
 20
 60
 00
@@ -11011,7 +11039,7 @@
 20
 40
 00
-0c
+0e
 20
 20
 55
@@ -11051,7 +11079,7 @@
 24
 21
 00
-0a
+0c
 68
 00
 c3
@@ -11067,7 +11095,7 @@
 20
 21
 00
-06
+08
 68
 00
 c3
@@ -11079,7 +11107,7 @@
 20
 20
 00
-08
+0a
 68
 00
 84
@@ -11091,7 +11119,7 @@
 20
 40
 00
-1b
+1d
 24
 74
 00
@@ -11132,66 +11160,58 @@
 20
 7f
 e9
+68
 00
+c7
+9f
+24
+7a
 00
 00
+68
 00
+84
+78
+1f
+e6
+7e
+1a
+24
+62
+80
 00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-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
+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
@@ -11859,7 +11879,7 @@
 20
 40
 05
-e4
+84
 68
 08
 c6
@@ -11871,7 +11891,7 @@
 20
 20
 82
-f9
+b5
 20
 20
 33
@@ -12023,7 +12043,119 @@
 c0
 00
 00
-03
+1f
+c0
+00
+80
+04
+20
+60
+00
+00
+20
+40
+02
+6a
+24
+74
+00
+00
+20
+40
+00
+19
+68
+01
+4d
+33
+1f
+e0
+fe
+01
+60
+01
+4d
+33
+68
+09
+4d
+35
+98
+46
+7c
+00
+20
+42
+80
+0e
+20
+20
+00
+9d
+70
+4d
+32
+00
+58
+00
+00
+00
+60
+01
+4d
+33
+58
+00
+00
+19
+60
+01
+4d
+35
+70
+4c
+2d
+00
+68
+00
+cc
+18
+60
+00
+cc
+17
+20
+60
+00
+00
+68
+00
+cc
+19
+20
+20
+00
+15
+68
+00
+cc
+2d
+1f
+e0
+fe
+01
+60
+00
+cc
+2d
+c0
+02
+00
+17
+c0
+02
+80
+13
 20
 60
 00
@@ -12055,7 +12187,7 @@
 20
 2c
 00
-0e
+2a
 79
 3f
 80
@@ -12067,7 +12199,7 @@
 24
 3a
 00
-07
+23
 20
 20
 20
@@ -12160,121 +12292,9 @@
 00
 00
 00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-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
-5d
-e7
+1b
+51
Index: YDN_1066_139D_NEW/output/program.lis
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/program.lis	(revision 2105)
+++ /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/program.lis	(working copy)
@@ -7,58 +7,58 @@
 p_zcode:
 
 p_wake_from_power:
-0001 204003fc call p_mouse_data_init 
+0001 204003a6 call p_mouse_data_init 
 0002 6800c1de fetch 1 ,mem_tx_power 
 0003 6000cca9 store 1 ,mem_tx_power_temp 
-0004 2040076d call power_ctrl_pac_succ_cnt_init 
+0004 2040070d 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 6800cb31 fetch 1 ,mem_bt_ui_button_timeout 
 0008 6000cb32 store 1 ,mem_bt_ui_button_count 
 0009 204043ca call mouse_bt_discovery_button_down_disable 
-000a 2040031b call p_mouse_spi_init 
-000b 2040000e call p_mouse_cb_fuction 
-000c 20400021 call p_mouse_wakeup_from_power 
-000d 20200365 branch p_mouse_setting_config 
+000a 204002c5 call p_mouse_spi_init 
+000b 2040079a call p_drawing_optima_init 
+000c 2040000f call p_mouse_cb_fuction 
+000d 20400022 call p_mouse_wakeup_from_power 
+000e 2020030f branch p_mouse_setting_config 
 
 p_mouse_cb_fuction:
-000e 580003d2 setarg p_mouse_g24_package_data 
-000f 60014d23 store 2 ,mem_cb_24g_data 
-0010 580003ec setarg p_mouse_le 
-0011 600141ef store 2 ,mem_cb_le_process 
-0012 580006ae setarg p_le_mouse_bb_event_connect_complete 
-0013 600141f9 store 2 ,mem_cb_att_write 
-0014 58000417 setarg p_mouse_bt 
-0015 600141f1 store 2 ,mem_cb_bt_process 
-0016 580002db setarg p_mouse_before_lpm 
-0017 600141ed store 2 ,mem_cb_before_lpm 
-0018 58000458 setarg p_mouse_priority_bb_event 
-0019 600141f5 store 2 ,mem_cb_bb_event_process 
-001a 5800043d setarg p_mouse_idle 
-001b 600141f3 store 2 ,mem_cb_idle_process 
-001c 58000495 setarg p_mouse_before_hibernate 
-001d 600141eb store 2 ,mem_cb_before_hibernate 
-001e 5800049c setarg p_mouse_bb_event_timer 
-001f 600141fd store 2 ,mem_cb_event_timer 
-0020 20600000 rtn 
+000f 5800037c setarg p_mouse_g24_package_data 
+0010 60014d23 store 2 ,mem_cb_24g_data 
+0011 58000396 setarg p_mouse_le 
+0012 600141ef store 2 ,mem_cb_le_process 
+0013 5800064e setarg p_le_mouse_bb_event_connect_complete 
+0014 600141f9 store 2 ,mem_cb_att_write 
+0015 580003c1 setarg p_mouse_bt 
+0016 600141f1 store 2 ,mem_cb_bt_process 
+0017 58000298 setarg p_mouse_before_lpm 
+0018 600141ed store 2 ,mem_cb_before_lpm 
+0019 58000402 setarg p_mouse_priority_bb_event 
+001a 600141f5 store 2 ,mem_cb_bb_event_process 
+001b 580003e7 setarg p_mouse_idle 
+001c 600141f3 store 2 ,mem_cb_idle_process 
+001d 5800043f setarg p_mouse_before_hibernate 
+001e 600141eb store 2 ,mem_cb_before_hibernate 
+001f 58000446 setarg p_mouse_bb_event_timer 
+0020 600141fd store 2 ,mem_cb_event_timer 
+0021 20600000 rtn 
 
 p_mouse_wakeup_from_power:
-0021 58000019 setarg 25 
-0022 60014d35 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
-0023 24558029 ncall p_mouse_24g_transmit_by_interrupt_exit_count_max ,wake 
-0024 2040031d call p_mouse_init_sunt 
-0025 2040035e call p_mouse_sensor_powerdown 
+0022 58000019 setarg 25 
+0023 60014d35 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+0024 2455802a ncall p_mouse_24g_transmit_by_interrupt_exit_count_max ,wake 
+0025 204002c7 call p_mouse_init_sunt 
+0026 20400308 call p_mouse_sensor_powerdown 
 
 p_mouse_wakeup_no_from_power:
-0026 6800c71f fetch 1 ,mem_reconn_times_init 
-0027 6000c71e store 1 ,mem_reconn_times 
-0028 20600000 rtn 
+0027 6800c71f fetch 1 ,mem_reconn_times_init 
+0028 6000c71e store 1 ,mem_reconn_times 
+0029 20600000 rtn 
 
 p_mouse_24g_transmit_by_interrupt_exit_count_max:
-0029 58000177 setarg 375 
-002a 60014d35 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
-002b 20600000 rtn 
-002c 20000001 nop 1 
+002a 58000177 setarg 375 
+002b 60014d35 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+002c 20600000 rtn 
 002d 20000001 nop 1 
 002e 20000001 nop 1 
 002f 20000001 nop 1 
@@ -83,47 +83,47 @@
 0040 c2840059 bbit1 8 ,pf_patch_ext 
 0041 c0008075 beq patch00_1 ,p_soft_reset_1 
 0042 c001007e beq patch00_2 ,p_soft_reset_2 
-0043 c04287d9 beq patch10_5 ,p_shutdown_radio 
-0044 c04487aa beq patch11_1 ,p_set_freq_tx 
-0045 c00d86c7 beq patch03_3 ,p_page_wait_fhs_reply_ok 
-0046 c01306c9 beq patch04_6 ,p_role_switch_master 
-0047 c02406e5 beq patch09_0 ,p_quit_connection_cont 
-0048 c02506ec beq patch09_2 ,p_prepare_tx 
-0049 c02886f5 beq patch0a_1 ,p_slave_conn_recv_packet 
-004a c02c86e3 beq patch0b_1 ,p_process_dmh 
-004b c05386fa beq patch14_7 ,p_lpm_dispatch 
-004c c0568710 beq patch15_5 ,p_lpm_set_mult 
+0043 c0428779 beq patch10_5 ,p_shutdown_radio 
+0044 c044874a beq patch11_1 ,p_set_freq_tx 
+0045 c00d8667 beq patch03_3 ,p_page_wait_fhs_reply_ok 
+0046 c0130669 beq patch04_6 ,p_role_switch_master 
+0047 c0240685 beq patch09_0 ,p_quit_connection_cont 
+0048 c025068c beq patch09_2 ,p_prepare_tx 
+0049 c0288695 beq patch0a_1 ,p_slave_conn_recv_packet 
+004a c02c8683 beq patch0b_1 ,p_process_dmh 
+004b c053869a beq patch14_7 ,p_lpm_dispatch 
+004c c05686b0 beq patch15_5 ,p_lpm_set_mult 
 004d c065b3e4 beq patch19_3 ,app_bt_start_reconnect + 3 
-004e c0748721 beq patch1d_1 ,p_mouse_bb_disconnected 
+004e c07486c1 beq patch1d_1 ,p_mouse_bb_disconnected 
 004f c0508087 beq patch14_1 ,p_init_param 
 0050 c058808c beq patch16_1 ,p_lpm_check_wake_lock 
 0051 c059009a beq patch16_2 ,p_g24_dispatch 
-0052 c06202e8 beq patch18_4 ,p_device_init 
-0053 c071858b beq patch1c_3 ,p_mouse_seting_dpi 
-0054 c07305b6 beq patch1c_6 ,p_mouse_motion 
-0055 c07505ec beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
-0056 c07585f2 beq patch1d_3 ,p_mouse_start_discovery 
-0057 c07605ff beq patch1d_4 ,p_mouse_stop_discovery 
+0052 c06202a5 beq patch18_4 ,p_device_init 
+0053 c0718529 beq patch1c_3 ,p_mouse_seting_dpi 
+0054 c0730554 beq patch1c_6 ,p_mouse_motion 
+0055 c075058c beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
+0056 c0758592 beq patch1d_3 ,p_mouse_start_discovery 
+0057 c076059f beq patch1d_4 ,p_mouse_stop_discovery 
 0058 20202a8e branch loop 
 
 pf_patch_ext:
-0059 c01c8606 beq patch27_1 ,p_le_slave_match 
-005a c021860e beq patch28_3 ,p_le_next_adv_channel 
-005b c0250614 beq patch29_2 ,p_le_receive_skip 
-005c c02b8617 beq patch2a_7 ,p_le_update_param 
-005d c02c8619 beq patch2b_1 ,p_le_update_channel_map 
-005e c031861b beq patch2c_3 ,p_le_prepare_tx 
-005f c0330645 beq patch2c_6 ,p_le_parse 
-0060 c0338660 beq patch2c_7 ,p_le_parse_l2cap 
-0061 c0350699 beq patch2d_2 ,p_le_adv_not_match 
-0062 c03b86a4 beq patch2e_7 ,p_le_lpm_setmult 
-0063 c0028723 beq patch20_5 ,p_hid_rx_process 
-0064 c0400725 beq patch30_0 ,p_parse_lmp_accepted 
-0065 c041072f beq patch30_2 ,p_send_lmp 
-0066 c0440731 beq patch31_0 ,p_process_conn_sm 
-0067 c04606b4 beq patch31_4 ,p_twspi_reset 
-0068 c04686c0 beq patch31_5 ,p_spid_init 
-0069 c07d0755 beq patch3f_2 ,p_check_51cmd_once_continue 
+0059 c01c85a6 beq patch27_1 ,p_le_slave_match 
+005a c02185ae beq patch28_3 ,p_le_next_adv_channel 
+005b c02505b4 beq patch29_2 ,p_le_receive_skip 
+005c c02b85b7 beq patch2a_7 ,p_le_update_param 
+005d c02c85b9 beq patch2b_1 ,p_le_update_channel_map 
+005e c03185bb beq patch2c_3 ,p_le_prepare_tx 
+005f c03305e5 beq patch2c_6 ,p_le_parse 
+0060 c0338600 beq patch2c_7 ,p_le_parse_l2cap 
+0061 c0350639 beq patch2d_2 ,p_le_adv_not_match 
+0062 c03b8644 beq patch2e_7 ,p_le_lpm_setmult 
+0063 c00286c3 beq patch20_5 ,p_hid_rx_process 
+0064 c04006c5 beq patch30_0 ,p_parse_lmp_accepted 
+0065 c04106cf beq patch30_2 ,p_send_lmp 
+0066 c04406d1 beq patch31_0 ,p_process_conn_sm 
+0067 c0460654 beq patch31_4 ,p_twspi_reset 
+0068 c0468660 beq patch31_5 ,p_spid_init 
+0069 c07d06f5 beq patch3f_2 ,p_check_51cmd_once_continue 
 006a 20202a8e branch loop 
 
 p_rssi_signal:
@@ -142,7 +142,7 @@
 0075 d8a009ae arg mem_sp_state ,contw 
 0076 df20000c arg 12 ,loopcnt 
 0077 20407ed4 call clear_mem 
-0078 204003e3 call p_mouse_le_txbuff_load 
+0078 2040038d call p_mouse_le_txbuff_load 
 0079 20406a03 call rfcomm_init 
 007a 20405cf6 call init_lmp 
 007b 2455ac65 ncall lpm_disable_exen_output ,wake 
@@ -191,22 +191,22 @@
 009c c00080ad beq g24_tx_timer_int_enable ,p_g24_transmit_by_interrupt 
 
 p_g24_transmit_process:
-009d 20400176 call p_g24_txdata_prep 
-009e 243400c8 nbranch p_g24_nodata_transmit ,user 
-009f 2040015d call p_g24_rf_sta_check 
+009d 20400151 call p_g24_txdata_prep 
+009e 243400af nbranch p_g24_nodata_transmit ,user 
+009f 2040012c call p_g24_rf_sta_check 
 
 p_g24_transmit_start:
-00a0 20400199 call p_g24_transmit_packet 
+00a0 20400174 call p_g24_transmit_packet 
 00a1 6800cc02 fetch 1 ,mem_24g_pairing_sm 
 00a2 c1ff8000 rtnne state_24g_pairing_success 
-00a3 2040077e call power_ctrl_start 
+00a3 2040071e call power_ctrl_start 
 00a4 6800cb26 fetch 1 ,mem_mouse_multi_led_state 
-00a5 c00083d5 beq on ,p_g24_transmit_by_interrupt_enable 
+00a5 c000837f beq on ,p_g24_transmit_by_interrupt_enable 
 
 p_g24_short_sleep:
-00a6 204000d6 call p_g24_lpm_wait 
+00a6 204000bd call p_g24_lpm_wait 
 00a7 24740000 nrtn user 
-00a8 204002e2 call p_clear_wake 
+00a8 2040029f call p_clear_wake 
 00a9 5800ec54 setarg 60500 
 00aa 20202b93 branch lpm_dispatch_sleep 
 
@@ -215,2587 +215,2596 @@
 00ac 20600000 rtn 
 
 p_g24_transmit_by_interrupt:
-00ad 204002ad call p_g24_timer_check 
-00ae 24740000 nrtn user 
-00af 204000c2 call p_g24_interval_calibrate 
-00b0 68014d33 fetch 2 ,mem_24g_transmit_by_interrupt_exit_count 
-00b1 1fe0fe01 increase 1 ,pdata 
-00b2 60014d33 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-00b3 68094d35 fetcht 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
-00b4 98467c00 isub temp ,null 
-00b5 204280b7 call p_g24_transmit_by_interrupt_exit ,zero 
-00b6 2020009d branch p_g24_transmit_process 
-
-p_g24_transmit_by_interrupt_exit:
-00b7 704d3200 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
-00b8 58000000 setarg 0 
-00b9 60014d33 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-00ba 58000019 setarg 25 
-00bb 60014d35 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
-
-p_g24_interval_min:
-00bc 704c2d00 jam 0 ,mem_24g_pac_index 
-00bd 6800cc18 fetch 1 ,mem_24g_interval_min 
-
-p_g24_current_interval_store:
-00be 6000cc17 store 1 ,mem_24g_interval 
-00bf 20600000 rtn 
-
-p_g24_interval_max:
-00c0 6800cc19 fetch 1 ,mem_24g_interval_max 
-00c1 202000be branch p_g24_current_interval_store 
-
-p_g24_interval_calibrate:
-00c2 6800cc2d fetch 1 ,mem_24g_pac_index 
-00c3 1fe0fe01 increase 1 ,pdata 
-00c4 6000cc2d store 1 ,mem_24g_pac_index 
-00c5 c00200c0 beq 4 ,p_g24_interval_max 
-00c6 c00280bc beq 5 ,p_g24_interval_min 
-00c7 20600000 rtn 
+00ad 7011c701 jam zcode_01 ,mem_zcode_temp_param0 
+00ae 2020077b branch p_zcode_entrance 
 
 p_g24_nodata_transmit:
-00c8 6800cc1e fetch 1 ,mem_24g_abort_pac 
-00c9 205a0112 call p_g24_send_abort_packet ,blank 
-00ca 6800cb2b fetch 1 ,mem_mouse_multi_led_blink_count 
-00cb 247a0000 nrtn blank 
-00cc 6800cb6b fetch 1 ,mem_mouse_dpi_no_enter_long_sleep_flag 
-00cd 247a0000 nrtn blank 
-00ce 6800cb26 fetch 1 ,mem_mouse_multi_led_state 
-00cf c1008000 rtneq on 
+00af 6800cc1e fetch 1 ,mem_24g_abort_pac 
+00b0 205a00e1 call p_g24_send_abort_packet ,blank 
+00b1 6800cb2b fetch 1 ,mem_mouse_multi_led_blink_count 
+00b2 247a0000 nrtn blank 
+00b3 6800cb6b fetch 1 ,mem_mouse_dpi_no_enter_long_sleep_flag 
+00b4 247a0000 nrtn blank 
+00b5 6800cb26 fetch 1 ,mem_mouse_multi_led_state 
+00b6 c1008000 rtneq on 
 
 p_g24_long_sleep:
-00d0 204000d6 call p_g24_lpm_wait 
-00d1 24740000 nrtn user 
-00d2 6801cc21 fetch 3 ,mem_24g_enter_hibernate 
-00d3 20407f49 call clk2lpo 
-00d4 600a415b storet 4 ,mem_sleep_counter 
-00d5 20202b2a branch lpm_sleep 
+00b7 204000bd call p_g24_lpm_wait 
+00b8 24740000 nrtn user 
+00b9 6801cc21 fetch 3 ,mem_24g_enter_hibernate 
+00ba 20407f49 call clk2lpo 
+00bb 600a415b storet 4 ,mem_sleep_counter 
+00bc 20202b2a branch lpm_sleep 
 
 p_g24_lpm_wait:
-00d6 78347c00 enable user 
-00d7 20402afa call lpo_calibration 
-00d8 6801c16f fetch 3 ,mem_clks_per_lpo 
-00d9 203a7fe9 branch disable_user ,blank 
-00da 6800c091 fetch 1 ,mem_lpm_mode 
-00db 203a7fe9 branch disable_user ,blank 
-00dc 6800cd32 fetch 1 ,mem_24g_transmit_by_interrupt 
-00dd c000ffe9 beq g24_tx_timer_int_enable ,disable_user 
+00bd 78347c00 enable user 
+00be 20402afa call lpo_calibration 
+00bf 6801c16f fetch 3 ,mem_clks_per_lpo 
+00c0 203a7fe9 branch disable_user ,blank 
+00c1 6800c091 fetch 1 ,mem_lpm_mode 
+00c2 203a7fe9 branch disable_user ,blank 
+00c3 6800cd32 fetch 1 ,mem_24g_transmit_by_interrupt 
+00c4 c000ffe9 beq g24_tx_timer_int_enable ,disable_user 
 
 p_mouse_setgpio_lpm:
-00de 204002e5 call p_mouse_set_sdio_high 
-00df 204002e2 call p_clear_wake 
+00c5 204002a2 call p_mouse_set_sdio_high 
+00c6 2040029f call p_clear_wake 
 
 p_mouse_setgpio_hibernate:
-00e0 204000f0 call p_mouse_lpm_before_common 
-00e1 20400367 call p_flash_ncs_disable 
-00e2 68120070 hfetch 4 ,core_gpio_oe0 
-00e3 681a0078 hfetcht 4 ,core_gpio_pu0 
-00e4 98418400 ior temp ,temp 
-00e5 18440400 invert temp ,temp 
-00e6 601a007c hstoret 4 ,core_gpio_pd0 
-00e7 6810807d hfetch 1 ,core_gpio_pd1 
-00e8 793ffe02 set0 2 ,pdata 
-00e9 6010807d hstore 1 ,core_gpio_pd1 
-00ea 6810807e hfetch 1 ,core_gpio_pd2 
-00eb 793ffe06 set0 6 ,pdata 
-00ec 6010807e hstore 1 ,core_gpio_pd2 
+00c7 204000d7 call p_mouse_lpm_before_common 
+00c8 20400311 call p_flash_ncs_disable 
+00c9 68120070 hfetch 4 ,core_gpio_oe0 
+00ca 681a0078 hfetcht 4 ,core_gpio_pu0 
+00cb 98418400 ior temp ,temp 
+00cc 18440400 invert temp ,temp 
+00cd 601a007c hstoret 4 ,core_gpio_pd0 
+00ce 6810807d hfetch 1 ,core_gpio_pd1 
+00cf 793ffe02 set0 2 ,pdata 
+00d0 6010807d hstore 1 ,core_gpio_pd1 
+00d1 6810807e hfetch 1 ,core_gpio_pd2 
+00d2 793ffe06 set0 6 ,pdata 
+00d3 6010807e hstore 1 ,core_gpio_pd2 
 
 p_mouse_multi_led_gpio_set_float:
-00ed 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
-00ee 793f8407 set0 gpio_active_bit ,temp 
-00ef 20206806 branch gpio_set_high_impedance 
+00d4 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+00d5 793f8407 set0 gpio_active_bit ,temp 
+00d6 20206806 branch gpio_set_high_impedance 
 
 p_mouse_lpm_before_common:
-00f0 20403ee0 call mouse_wheel_check 
-00f1 d8400019 arg mouse_spi1_clk_gpio ,temp 
-00f2 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
-00f3 2feffe12 isolate1 mouse_enable_spi2 ,pdata 
-00f4 2040bede call mouse_spi_clk_gpio ,true 
-00f5 2040680e call gpio_config_output 
-00f6 204063ee call twspi_disable 
-00f7 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
-00f8 204067dd call gpio_set_wake_by_current_state 
-00f9 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
-00fa 204067dd call gpio_set_wake_by_current_state 
-00fb 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
-00fc 204067dd call gpio_set_wake_by_current_state 
-00fd 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
-00fe 204067dd call gpio_set_wake_by_current_state 
-00ff 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
-0100 204067dd call gpio_set_wake_by_current_state 
-0101 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
-0102 204067dd call gpio_set_wake_by_current_state 
-0103 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
-0104 204067dd call gpio_set_wake_by_current_state 
-0105 204067dd call gpio_set_wake_by_current_state 
-0106 6808c6ec fetcht 1 ,mem_config_bt_button_gpio 
-0107 204067dd call gpio_set_wake_by_current_state 
-0108 6808c6e8 fetcht 1 ,mem_whee_a_data_gpio 
-0109 204067dd call gpio_set_wake_by_current_state 
-010a 6808c6e9 fetcht 1 ,mem_whee_b_data_gpio 
-010b 204067dd call gpio_set_wake_by_current_state 
-010c 6808c6ea fetcht 1 ,mem_whee_ta_data_gpio 
-010d 204067dd call gpio_set_wake_by_current_state 
-010e 6808c6eb fetcht 1 ,mem_whee_tb_data_gpio 
-010f 204067dd call gpio_set_wake_by_current_state 
-0110 6808c6f3 fetcht 1 ,mem_sensor_data_gpio 
-0111 202067e1 branch gpio_set_wake 
+00d7 20403ee0 call mouse_wheel_check 
+00d8 d8400019 arg mouse_spi1_clk_gpio ,temp 
+00d9 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+00da 2feffe12 isolate1 mouse_enable_spi2 ,pdata 
+00db 2040bede call mouse_spi_clk_gpio ,true 
+00dc 2040680e call gpio_config_output 
+00dd 204063ee call twspi_disable 
+00de 6808c6ec fetcht 1 ,mem_config_bt_button_gpio 
+00df 204067dd call gpio_set_wake_by_current_state 
+00e0 20203ec6 branch mouse_lpm_before_common + 7 
 
 p_g24_send_abort_packet:
-0112 704c1e01 jam 1 ,mem_24g_abort_pac 
-0113 704d2700 jam 0 ,mem_24g_rf_hop_ch 
-0114 20400125 call p_g24_transmit_rf_ctrl_clear 
-0115 6000cb8e store 1 ,mem_24g_txbuf 
-0116 58000000 setarg 0 
-0117 6003cb8f store 7 ,mem_24g_txbuf + 1 
-0118 68024c29 fetch 4 ,mem_24g_device_addr 
-0119 60024b96 store 4 ,mem_24g_txbuf + 8 
-011a 704bf20c jam 12 ,mem_24g_datalen 
-011b 6800cbf3 fetch 1 ,mem_24g_data_type 
-011c 79207e03 set1 bit_abort ,pdata 
-011d 6000cbf3 store 1 ,mem_24g_data_type 
-011e 20400179 call p_g24_txdata_enable_tx 
-011f 202000a0 branch p_g24_transmit_start 
+00e1 704c1e01 jam 1 ,mem_24g_abort_pac 
+00e2 704d2700 jam 0 ,mem_24g_rf_hop_ch 
+00e3 204000f4 call p_g24_transmit_rf_ctrl_clear 
+00e4 6000cb8e store 1 ,mem_24g_txbuf 
+00e5 58000000 setarg 0 
+00e6 6003cb8f store 7 ,mem_24g_txbuf + 1 
+00e7 68024c29 fetch 4 ,mem_24g_device_addr 
+00e8 60024b96 store 4 ,mem_24g_txbuf + 8 
+00e9 704bf20c jam 12 ,mem_24g_datalen 
+00ea 6800cbf3 fetch 1 ,mem_24g_data_type 
+00eb 79207e03 set1 bit_abort ,pdata 
+00ec 6000cbf3 store 1 ,mem_24g_data_type 
+00ed 20400154 call p_g24_txdata_enable_tx 
+00ee 202000a0 branch p_g24_transmit_start 
 
 p_g24_set_device_addr:
-0120 680240a0 fetch 4 ,mem_lap 
-0121 60024c29 store 4 ,mem_24g_device_addr 
-0122 20600000 rtn 
+00ef 680240a0 fetch 4 ,mem_lap 
+00f0 60024c29 store 4 ,mem_24g_device_addr 
+00f1 20600000 rtn 
 
 p_g24_transmit_rf_sta_init:
-0123 704d2801 jam 1 ,mem_24g_rf_last_sta 
-0124 704d2a00 jam 0 ,mem_24g_sync_cnt 
+00f2 704d2801 jam 1 ,mem_24g_rf_last_sta 
+00f3 704d2a00 jam 0 ,mem_24g_sync_cnt 
 
 p_g24_transmit_rf_ctrl_clear:
-0125 6800cbf3 fetch 1 ,mem_24g_data_type 
-0126 1fe17e07 and_into bits_data ,pdata 
-0127 6000cbf3 store 1 ,mem_24g_data_type 
-0128 20600000 rtn 
+00f4 6800cbf3 fetch 1 ,mem_24g_data_type 
+00f5 1fe17e07 and_into bits_data ,pdata 
+00f6 6000cbf3 store 1 ,mem_24g_data_type 
+00f7 20600000 rtn 
 
 p_g24_hop_ch_enable:
-0129 6800cbf3 fetch 1 ,mem_24g_data_type 
-012a 79207e04 set1 bit_hop ,pdata 
-012b 6000cbf3 store 1 ,mem_24g_data_type 
-012c 6000cbae store 1 ,mem_24g_txpayload 
-012d 20600000 rtn 
+00f8 6800cbf3 fetch 1 ,mem_24g_data_type 
+00f9 79207e04 set1 bit_hop ,pdata 
+00fa 6000cbf3 store 1 ,mem_24g_data_type 
+00fb 6000cbae store 1 ,mem_24g_txpayload 
+00fc 20600000 rtn 
 
 p_g24_hop_ch_disable:
-012e 6800cbf3 fetch 1 ,mem_24g_data_type 
-012f 793ffe04 set0 bit_hop ,pdata 
-0130 6000cbf3 store 1 ,mem_24g_data_type 
-0131 20600000 rtn 
+00fd 6800cbf3 fetch 1 ,mem_24g_data_type 
+00fe 793ffe04 set0 bit_hop ,pdata 
+00ff 6000cbf3 store 1 ,mem_24g_data_type 
+0100 20600000 rtn 
 
 p_g24_transmit_hop_pac_fail:
-0132 20400774 call power_ctrl_pac_succ_decrs 
-0133 6800cd29 fetch 1 ,mem_24g_rf_work_stage 
-0134 c0008137 beq 1 ,p_g24_transmit_hop_pac_fail_wo_hop 
-0135 c001013b beq 2 ,p_g24_transmit_hop_pac_fail_hop_stage2 
-0136 20600000 rtn 
+0101 20400714 call power_ctrl_pac_succ_decrs 
+0102 6800cd29 fetch 1 ,mem_24g_rf_work_stage 
+0103 c0008106 beq 1 ,p_g24_transmit_hop_pac_fail_wo_hop 
+0104 c001010a beq 2 ,p_g24_transmit_hop_pac_fail_hop_stage2 
+0105 20600000 rtn 
 
 p_g24_transmit_hop_pac_fail_wo_hop:
-0137 704d2a02 jam 2 ,mem_24g_sync_cnt 
+0106 704d2a02 jam 2 ,mem_24g_sync_cnt 
 
 p_g24_transmit_hop_pac_fail_stage1:
-0138 704d2600 jam 0 ,mem_24g_hop_pac_retry 
-0139 704d2800 jam 0 ,mem_24g_rf_last_sta 
-013a 20200125 branch p_g24_transmit_rf_ctrl_clear 
+0107 704d2600 jam 0 ,mem_24g_hop_pac_retry 
+0108 704d2800 jam 0 ,mem_24g_rf_last_sta 
+0109 202000f4 branch p_g24_transmit_rf_ctrl_clear 
 
 p_g24_transmit_hop_pac_fail_hop_stage2:
-013b 704d2700 jam 0 ,mem_24g_rf_hop_ch 
-013c 20200138 branch p_g24_transmit_hop_pac_fail_stage1 
+010a 704d2700 jam 0 ,mem_24g_rf_hop_ch 
+010b 20200107 branch p_g24_transmit_hop_pac_fail_stage1 
 
 p_g24_transmit_pac_fail_hop_stage3:
-013d 68014bf8 fetch 2 ,mem_24g_txfail_cnt 
-013e 1fe0fe01 increase 1 ,pdata 
-013f 60014bf8 store 2 ,mem_24g_txfail_cnt 
-0140 c28501dc bbit1 10 ,p_g24_tx_attempt_fail 
-0141 6800cd27 fetch 1 ,mem_24g_rf_hop_ch 
-0142 c0008146 beq 1 ,p_g24_rf_hop_fastly 
-0143 704d2701 jam 1 ,mem_24g_rf_hop_ch 
+010c 68014bf8 fetch 2 ,mem_24g_txfail_cnt 
+010d 1fe0fe01 increase 1 ,pdata 
+010e 60014bf8 store 2 ,mem_24g_txfail_cnt 
+010f c28501b3 bbit1 10 ,p_g24_tx_attempt_fail 
+0110 6800cd27 fetch 1 ,mem_24g_rf_hop_ch 
+0111 c0008115 beq 1 ,p_g24_rf_hop_fastly 
+0112 704d2701 jam 1 ,mem_24g_rf_hop_ch 
 
 p_g24_rf_hop_attemp_again:
-0144 6800cd27 fetch 1 ,mem_24g_rf_hop_ch 
-0145 c0808125 bne 1 ,p_g24_transmit_rf_ctrl_clear 
+0113 6800cd27 fetch 1 ,mem_24g_rf_hop_ch 
+0114 c08080f4 bne 1 ,p_g24_transmit_rf_ctrl_clear 
 
 p_g24_rf_hop_fastly:
-0146 6800cd25 fetch 1 ,mem_24g_hop_fastly_cnt 
-0147 1fe0fe01 increase 1 ,pdata 
-0148 6000cd25 store 1 ,mem_24g_hop_fastly_cnt 
-0149 c002014d beq 4 ,p_g24_rf_hop_fastly_exit 
-014a 20400225 call p_g24_ch 
-014b 704c3702 jam 2 ,mem_24g_max_retry 
-014c 20200199 branch p_g24_transmit_packet 
+0115 6800cd25 fetch 1 ,mem_24g_hop_fastly_cnt 
+0116 1fe0fe01 increase 1 ,pdata 
+0117 6000cd25 store 1 ,mem_24g_hop_fastly_cnt 
+0118 c002011c beq 4 ,p_g24_rf_hop_fastly_exit 
+0119 20400144 call p_g24_ch 
+011a 704c3702 jam 2 ,mem_24g_max_retry 
+011b 20200174 branch p_g24_transmit_packet 
 
 p_g24_rf_hop_fastly_exit:
-014d 20400774 call power_ctrl_pac_succ_decrs 
-014e 704d2500 jam 0 ,mem_24g_hop_fastly_cnt 
-014f 20200125 branch p_g24_transmit_rf_ctrl_clear 
+011c 20400714 call power_ctrl_pac_succ_decrs 
+011d 704d2500 jam 0 ,mem_24g_hop_fastly_cnt 
+011e 202000f4 branch p_g24_transmit_rf_ctrl_clear 
 
 p_g24_transmit_hop_pac_succ_wo_hop:
-0150 704d2a02 jam 2 ,mem_24g_sync_cnt 
+011f 704d2a02 jam 2 ,mem_24g_sync_cnt 
 
 p_g24_transmit_hop_pac_succ:
-0151 704d2801 jam 1 ,mem_24g_rf_last_sta 
-0152 704d2700 jam 0 ,mem_24g_rf_hop_ch 
-0153 20200125 branch p_g24_transmit_rf_ctrl_clear 
+0120 704d2801 jam 1 ,mem_24g_rf_last_sta 
+0121 704d2700 jam 0 ,mem_24g_rf_hop_ch 
+0122 202000f4 branch p_g24_transmit_rf_ctrl_clear 
 
 p_g24_transmit_succ_rf_config:
-0154 6800cd29 fetch 1 ,mem_24g_rf_work_stage 
-0155 c0018151 beq 3 ,p_g24_transmit_hop_pac_succ 
-0156 6800cbf3 fetch 1 ,mem_24g_data_type 
-0157 2fec0004 isolate0 bit_hop ,pdata 
-0158 20208123 branch p_g24_transmit_rf_sta_init ,true 
-0159 6800cd29 fetch 1 ,mem_24g_rf_work_stage 
-015a c0008150 beq 1 ,p_g24_transmit_hop_pac_succ_wo_hop 
-015b c0010151 beq 2 ,p_g24_transmit_hop_pac_succ 
-015c 20600000 rtn 
+0123 6800cd29 fetch 1 ,mem_24g_rf_work_stage 
+0124 c0018120 beq 3 ,p_g24_transmit_hop_pac_succ 
+0125 6800cbf3 fetch 1 ,mem_24g_data_type 
+0126 2fec0004 isolate0 bit_hop ,pdata 
+0127 202080f2 branch p_g24_transmit_rf_sta_init ,true 
+0128 6800cd29 fetch 1 ,mem_24g_rf_work_stage 
+0129 c000811f beq 1 ,p_g24_transmit_hop_pac_succ_wo_hop 
+012a c0010120 beq 2 ,p_g24_transmit_hop_pac_succ 
+012b 20600000 rtn 
 
 p_g24_rf_sta_check:
-015d 6800cc02 fetch 1 ,mem_24g_pairing_sm 
-015e c1ff8000 rtnne state_24g_pairing_success 
-015f 20400162 call p_g24_rf_laststa_synccnt_check 
-0160 2456016a ncall p_g24_rf_sync_cnt_check ,user2 
-0161 20600000 rtn 
+012c 6800cc02 fetch 1 ,mem_24g_pairing_sm 
+012d c1ff8000 rtnne state_24g_pairing_success 
+012e 20400131 call p_g24_rf_laststa_synccnt_check 
+012f 24560139 ncall p_g24_rf_sync_cnt_check ,user2 
+0130 20600000 rtn 
 
 p_g24_rf_laststa_synccnt_check:
-0162 78567c00 disable user2 
-0163 6800cd28 fetch 1 ,mem_24g_rf_last_sta 
-0164 c1808000 rtnne 1 
-0165 6800cd2a fetch 1 ,mem_24g_sync_cnt 
-0166 c1800000 rtnne 0 
-0167 704d2901 jam 1 ,mem_24g_rf_work_stage 
-0168 704c3704 jam 4 ,mem_24g_max_retry 
-0169 20207feb branch enable_user2 
+0131 78567c00 disable user2 
+0132 6800cd28 fetch 1 ,mem_24g_rf_last_sta 
+0133 c1808000 rtnne 1 
+0134 6800cd2a fetch 1 ,mem_24g_sync_cnt 
+0135 c1800000 rtnne 0 
+0136 704d2901 jam 1 ,mem_24g_rf_work_stage 
+0137 704c3704 jam 4 ,mem_24g_max_retry 
+0138 20207feb branch enable_user2 
 
 p_g24_rf_sync_cnt_check:
-016a 6800cd2a fetch 1 ,mem_24g_sync_cnt 
-016b 203a0171 branch p_g24_rf_hop_attemp ,blank 
-016c 1fe0ffff increase -1 ,pdata 
-016d 6000cd2a store 1 ,mem_24g_sync_cnt 
-016e 704d2902 jam 2 ,mem_24g_rf_work_stage 
-016f 704c3704 jam 4 ,mem_24g_max_retry 
-0170 20200225 branch p_g24_ch 
+0139 6800cd2a fetch 1 ,mem_24g_sync_cnt 
+013a 203a0140 branch p_g24_rf_hop_attemp ,blank 
+013b 1fe0ffff increase -1 ,pdata 
+013c 6000cd2a store 1 ,mem_24g_sync_cnt 
+013d 704d2902 jam 2 ,mem_24g_rf_work_stage 
+013e 704c3704 jam 4 ,mem_24g_max_retry 
+013f 20200144 branch p_g24_ch 
 
 p_g24_rf_hop_attemp:
-0171 704d2903 jam 3 ,mem_24g_rf_work_stage 
-0172 6800cd27 fetch 1 ,mem_24g_rf_hop_ch 
-0173 243a0144 nbranch p_g24_rf_hop_attemp_again ,blank 
-0174 704c3702 jam 2 ,mem_24g_max_retry 
-0175 20200225 branch p_g24_ch 
+0140 704d2903 jam 3 ,mem_24g_rf_work_stage 
+0141 6800cd27 fetch 1 ,mem_24g_rf_hop_ch 
+0142 243a0113 nbranch p_g24_rf_hop_attemp_again ,blank 
+0143 704c3702 jam 2 ,mem_24g_max_retry 
+
+p_g24_ch:
+0144 6808cbfd fetcht 1 ,mem_24g_current_ch_number 
+0145 6800cc1a fetch 1 ,mem_24g_addr 
+0146 1fe17e03 and_into 0x03 ,pdata 
+0147 1fefa204 mul32 pdata ,4 ,rega 
+0148 58004c03 setarg mem_24g_ch_map1 
+0149 9a20fe00 iadd rega ,pdata 
+014a 98408c00 iadd temp ,contr 
+014b e8c08000 ifetch 1 ,contr 
+014c 6000cbfc store 1 ,mem_24g_ch 
+014d 18408401 increase 1 ,temp 
+014e 18410403 and_into 3 ,temp 
+014f 6008cbfd storet 1 ,mem_24g_current_ch_number 
+0150 20600000 rtn 
 
 p_g24_txdata_prep:
-0176 6800cc02 fetch 1 ,mem_24g_pairing_sm 
-0177 c0ff81e7 bne state_24g_pairing_success ,p_g24_pairing_sm 
+0151 6800cc02 fetch 1 ,mem_24g_pairing_sm 
+0152 c0ff81be bne state_24g_pairing_success ,p_g24_pairing_sm 
 
 p_g24_txdata_prep_packeage_data:
-0178 2040017c call p_g24_package_data 
+0153 20400157 call p_g24_package_data 
 
 p_g24_txdata_enable_tx:
-0179 20400213 call p_g24_transmit_prep 
-017a 704bf701 jam ensure_on_24g ,mem_24g_ensure 
-017b 20600000 rtn 
+0154 204001ea call p_g24_transmit_prep 
+0155 704bf701 jam ensure_on_24g ,mem_24g_ensure 
+0156 20600000 rtn 
 
 p_g24_package_data:
-017c 68014d23 fetch 2 ,mem_cb_24g_data 
-017d 20407f9c call callback_func 
-017e 20340182 branch p_g24_accumulate_mouse_data ,user 
-017f 6803cb8f fetch 7 ,mem_24g_txbuf + 1 
-0180 207a0000 rtn blank 
-0181 20207fe7 branch enable_user 
+0157 68014d23 fetch 2 ,mem_cb_24g_data 
+0158 20407f9c call callback_func 
+0159 2034015d branch p_g24_accumulate_mouse_data ,user 
+015a 6803cb8f fetch 7 ,mem_24g_txbuf + 1 
+015b 207a0000 rtn blank 
+015c 20207fe7 branch enable_user 
 
 p_g24_accumulate_mouse_data:
-0182 20400492 call p_mouse_24g_no_data_timer_init 
-0183 704c1e00 jam 0 ,mem_24g_abort_pac 
-0184 1a20fe01 add rega ,1 ,pdata 
-0185 6000cbf2 store 1 ,mem_24g_datalen 
-0186 20400125 call p_g24_transmit_rf_ctrl_clear 
-0187 6000cb8e store 1 ,mem_24g_txbuf 
-0188 e8a88000 ifetcht 1 ,contw 
-0189 ea408000 ifetch 1 ,regb 
-018a 9841fe00 ior temp ,pdata 
-018b e0a08000 istore 1 ,contw 
-018c 1a40a401 increase 1 ,regb 
-018d ea420000 ifetch 4 ,regb 
-018e e0a20000 istore 4 ,contw 
-018f 1a40a404 increase 4 ,regb 
-0190 d8a04b94 arg mem_24g_txbuf + 6 ,contw 
-0191 df200002 arg 2 ,loopcnt 
+015d 2040043c call p_mouse_24g_no_data_timer_init 
+015e 704c1e00 jam 0 ,mem_24g_abort_pac 
+015f 1a20fe01 add rega ,1 ,pdata 
+0160 6000cbf2 store 1 ,mem_24g_datalen 
+0161 204000f4 call p_g24_transmit_rf_ctrl_clear 
+0162 6000cb8e store 1 ,mem_24g_txbuf 
+0163 e8a88000 ifetcht 1 ,contw 
+0164 ea408000 ifetch 1 ,regb 
+0165 9841fe00 ior temp ,pdata 
+0166 e0a08000 istore 1 ,contw 
+0167 1a40a401 increase 1 ,regb 
+0168 ea420000 ifetch 4 ,regb 
+0169 e0a20000 istore 4 ,contw 
+016a 1a40a404 increase 4 ,regb 
+016b d8a04b94 arg mem_24g_txbuf + 6 ,contw 
+016c df200002 arg 2 ,loopcnt 
 
 p_g24_accumulation_loop:
-0192 ea408000 ifetch 1 ,regb 
-0193 e8a88000 ifetcht 1 ,contw 
-0194 9840fe00 iadd temp ,pdata 
-0195 e0a08000 istore 1 ,contw 
-0196 1a40a401 increase 1 ,regb 
-0197 c2000192 loop p_g24_accumulation_loop 
-0198 20600000 rtn 
+016d ea408000 ifetch 1 ,regb 
+016e e8a88000 ifetcht 1 ,contw 
+016f 9840fe00 iadd temp ,pdata 
+0170 e0a08000 istore 1 ,contw 
+0171 1a40a401 increase 1 ,regb 
+0172 c200016d loop p_g24_accumulation_loop 
+0173 20600000 rtn 
 
 p_g24_transmit_packet:
-0199 704bfb00 jam 0 ,mem_24g_retry 
+0174 704bfb00 jam 0 ,mem_24g_retry 
 
 p_g24_transmit_loop:
-019a d9600d00 arg param_rx_setup ,timeup 
-019b 34730200 until clkn_rt ,meet 
-019c 204001b5 call p_g24_transmit_receive_ack 
-019d 6800cc2e fetch 1 ,mem_24g_no_ack 
-019e c1008000 rtneq no_ack_24g 
-019f 242c01c4 nbranch p_g24_retransmit ,sync 
-01a0 243781c4 nbranch p_g24_retransmit ,user3 
-01a1 204001b0 call p_g24_txbuf_clear 
-01a2 204001e0 call p_g24_ackpayload_parse 
-01a3 20400770 call power_ctrl_pac_succ_incrs 
+0175 d9600d00 arg param_rx_setup ,timeup 
+0176 34730200 until clkn_rt ,meet 
+0177 20400190 call p_g24_transmit_receive_ack 
+0178 6800cc2e fetch 1 ,mem_24g_no_ack 
+0179 c1008000 rtneq no_ack_24g 
+017a 242c019b nbranch p_g24_retransmit ,sync 
+017b 2437819b nbranch p_g24_retransmit ,user3 
+017c 2040018b call p_g24_txbuf_clear 
+017d 204001b7 call p_g24_ackpayload_parse 
+017e 20400710 call power_ctrl_pac_succ_incrs 
 
 p_g24_transmit_next_packet:
-01a4 6800cbf1 fetch 1 ,mem_24g_pid 
-01a5 1fe0fe01 increase 1 ,pdata 
-01a6 6000cbf1 store 1 ,mem_24g_pid 
-01a7 6800cc02 fetch 1 ,mem_24g_pairing_sm 
-01a8 c0ff81b3 bne state_24g_pairing_success ,p_g24_paring_mode_start 
-01a9 20400154 call p_g24_transmit_succ_rf_config 
+017f 6800cbf1 fetch 1 ,mem_24g_pid 
+0180 1fe0fe01 increase 1 ,pdata 
+0181 6000cbf1 store 1 ,mem_24g_pid 
+0182 6800cc02 fetch 1 ,mem_24g_pairing_sm 
+0183 c0ff818e bne state_24g_pairing_success ,p_g24_paring_mode_start 
+0184 20400123 call p_g24_transmit_succ_rf_config 
 
 p_g24_transmit_abandon:
-01aa 58000000 setarg 0 
-01ab 60014bf8 store 2 ,mem_24g_txfail_cnt 
-01ac 6000cbfa store 1 ,mem_24g_get_ack_fail 
-01ad 6000cd26 store 1 ,mem_24g_hop_pac_retry 
-01ae 704bf700 jam ensure_off_24g ,mem_24g_ensure 
-01af 20600000 rtn 
+0185 58000000 setarg 0 
+0186 60014bf8 store 2 ,mem_24g_txfail_cnt 
+0187 6000cbfa store 1 ,mem_24g_get_ack_fail 
+0188 6000cd26 store 1 ,mem_24g_hop_pac_retry 
+0189 704bf700 jam ensure_off_24g ,mem_24g_ensure 
+018a 20600000 rtn 
 
 p_g24_txbuf_clear:
-01b0 df200004 arg 4 ,loopcnt 
-01b1 d8a04b8e arg mem_24g_txbuf ,contw 
-01b2 20207ec6 branch memset0 
+018b df200004 arg 4 ,loopcnt 
+018c d8a04b8e arg mem_24g_txbuf ,contw 
+018d 20207ec6 branch memset0 
 
 p_g24_paring_mode_start:
-01b3 2040076d call power_ctrl_pac_succ_cnt_init 
-01b4 202001e9 branch p_g24_paring_mode 
+018e 2040070d call power_ctrl_pac_succ_cnt_init 
+018f 202001c0 branch p_g24_paring_mode 
 
 p_g24_transmit_receive_ack:
-01b5 7857fc00 disable user3 
-01b6 2040028c call p_g24_transmit 
-01b7 6800cc2e fetch 1 ,mem_24g_no_ack 
-01b8 c00081c2 beq no_ack_24g ,p_g24_transmit_no_ack 
-01b9 18002a00 force 0 ,radio_ctrl 
-01ba 68024c1a fetch 4 ,mem_24g_addr 
-01bb 98001200 iforce access 
-01bc 68088017 fetcht 1 ,mem_last_freq 
-01bd 2040291f call set_freq_rx 
-01be 20402924 call rf_rx_enable 
-01bf 20400248 call p_g24_receive_rxon 
-01c0 20578284 call p_g24_end_of_packet ,user3 
-01c1 20600000 rtn 
-
-p_g24_transmit_no_ack:
-01c2 20400284 call p_g24_end_of_packet 
-01c3 202001a4 branch p_g24_transmit_next_packet 
+0190 7857fc00 disable user3 
+0191 20400249 call p_g24_transmit 
+0192 18002a00 force 0 ,radio_ctrl 
+0193 68024c1a fetch 4 ,mem_24g_addr 
+0194 98001200 iforce access 
+0195 68088017 fetcht 1 ,mem_last_freq 
+0196 2040291f call set_freq_rx 
+0197 20402924 call rf_rx_enable 
+0198 20400205 call p_g24_receive_rxon 
+0199 20578241 call p_g24_end_of_packet ,user3 
+019a 20600000 rtn 
 
 p_g24_retransmit:
-01c4 6800cbfa fetch 1 ,mem_24g_get_ack_fail 
-01c5 1fe0fe01 increase 1 ,pdata 
-01c6 6000cbfa store 1 ,mem_24g_get_ack_fail 
-01c7 6800cc02 fetch 1 ,mem_24g_pairing_sm 
-01c8 c0ff81d8 bne state_24g_pairing_success ,p_g24_tx_paring_retry 
-01c9 6808cbfb fetcht 1 ,mem_24g_retry 
-01ca 18408401 increase 1 ,temp 
-01cb 6008cbfb storet 1 ,mem_24g_retry 
-01cc 6800cc37 fetch 1 ,mem_24g_max_retry 
-01cd 98467e00 isub temp ,pdata 
-01ce 243a019a nbranch p_g24_transmit_loop ,blank 
-01cf 6800cd29 fetch 1 ,mem_24g_rf_work_stage 
-01d0 c001813d beq 3 ,p_g24_transmit_pac_fail_hop_stage3 
-01d1 6800cd26 fetch 1 ,mem_24g_hop_pac_retry 
-01d2 1fe0fe01 increase 1 ,pdata 
-01d3 6000cd26 store 1 ,mem_24g_hop_pac_retry 
-01d4 c0010132 beq 2 ,p_g24_transmit_hop_pac_fail 
-01d5 20400129 call p_g24_hop_ch_enable 
-01d6 704c3701 jam 1 ,mem_24g_max_retry 
-01d7 20200199 branch p_g24_transmit_packet 
+019b 6800cbfa fetch 1 ,mem_24g_get_ack_fail 
+019c 1fe0fe01 increase 1 ,pdata 
+019d 6000cbfa store 1 ,mem_24g_get_ack_fail 
+019e 6800cc02 fetch 1 ,mem_24g_pairing_sm 
+019f c0ff81af bne state_24g_pairing_success ,p_g24_tx_paring_retry 
+01a0 6808cbfb fetcht 1 ,mem_24g_retry 
+01a1 18408401 increase 1 ,temp 
+01a2 6008cbfb storet 1 ,mem_24g_retry 
+01a3 6800cc37 fetch 1 ,mem_24g_max_retry 
+01a4 98467e00 isub temp ,pdata 
+01a5 243a0175 nbranch p_g24_transmit_loop ,blank 
+01a6 6800cd29 fetch 1 ,mem_24g_rf_work_stage 
+01a7 c001810c beq 3 ,p_g24_transmit_pac_fail_hop_stage3 
+01a8 6800cd26 fetch 1 ,mem_24g_hop_pac_retry 
+01a9 1fe0fe01 increase 1 ,pdata 
+01aa 6000cd26 store 1 ,mem_24g_hop_pac_retry 
+01ab c0010101 beq 2 ,p_g24_transmit_hop_pac_fail 
+01ac 204000f8 call p_g24_hop_ch_enable 
+01ad 704c3701 jam 1 ,mem_24g_max_retry 
+01ae 20200174 branch p_g24_transmit_packet 
 
 p_g24_tx_paring_retry:
-01d8 6800cbfa fetch 1 ,mem_24g_get_ack_fail 
-01d9 c1ff8000 rtnne 0xff 
-01da 704bfa00 jam 0 ,mem_24g_get_ack_fail 
-01db 202001de branch p_g24_stop_g24_mode 
+01af 6800cbfa fetch 1 ,mem_24g_get_ack_fail 
+01b0 c1ff8000 rtnne 0xff 
+01b1 704bfa00 jam 0 ,mem_24g_get_ack_fail 
+01b2 202001b5 branch p_g24_stop_g24_mode 
 
 p_g24_tx_attempt_fail:
-01dc 58000000 setarg 0 
-01dd 60014bf8 store 2 ,mem_24g_txfail_cnt 
+01b3 58000000 setarg 0 
+01b4 60014bf8 store 2 ,mem_24g_txfail_cnt 
 
 p_g24_stop_g24_mode:
-01de 700a993a jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
-01df 20207d86 branch ui_ipc_send_event 
+01b5 700a993a jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
+01b6 20207d86 branch ui_ipc_send_event 
 
 p_g24_ackpayload_parse:
-01e0 204001f8 call p_g24_read_len_pid_crc 
-01e1 6800cbf0 fetch 1 ,mem_24g_rxdata_length 
-01e2 207a0000 rtn blank 
-01e3 98007200 iforce loopcnt 
-01e4 d8c04b6e arg mem_24g_rxbuf + 2 ,contr 
-01e5 d8a04bd0 arg mem_24g_rxpayload ,contw 
-01e6 20207f01 branch memcpy 
+01b7 204001cf call p_g24_read_len_pid_crc 
+01b8 6800cbf0 fetch 1 ,mem_24g_rxdata_length 
+01b9 207a0000 rtn blank 
+01ba 98007200 iforce loopcnt 
+01bb d8c04b6e arg mem_24g_rxbuf + 2 ,contr 
+01bc d8a04bd0 arg mem_24g_rxpayload ,contw 
+01bd 20207f01 branch memcpy 
 
 p_g24_pairing_sm:
-01e7 7011c790 jam zcode_90 ,mem_zcode_temp_param0 
-01e8 202007db branch p_zcode_entrance 
+01be 7011c790 jam zcode_90 ,mem_zcode_temp_param0 
+01bf 2020077b branch p_zcode_entrance 
 
 p_g24_paring_mode:
-01e9 7011c791 jam zcode_91 ,mem_zcode_temp_param0 
-01ea 202007db branch p_zcode_entrance 
+01c0 7011c791 jam zcode_91 ,mem_zcode_temp_param0 
+01c1 2020077b branch p_zcode_entrance 
 
 p_g24_start_24g_mode:
-01eb 7011c760 jam zcode_60 ,mem_zcode_temp_param0 
-01ec 202007db branch p_zcode_entrance 
+01c2 7011c760 jam zcode_60 ,mem_zcode_temp_param0 
+01c3 2020077b branch p_zcode_entrance 
 
 p_g24_auto_pair_start:
-01ed 7011c770 jam zcode_70 ,mem_zcode_temp_param0 
-01ee 202007db branch p_zcode_entrance 
+01c4 7011c770 jam zcode_70 ,mem_zcode_temp_param0 
+01c5 2020077b branch p_zcode_entrance 
 
 p_g24_check_51cmd_stop_24g:
-01ef 793f8026 set0 mark_24g ,mark 
-01f0 204053ce call le_disable 
+01c6 793f8026 set0 mark_24g ,mark 
+01c7 204053ce call le_disable 
 
 p_mouse_disable_g24_pairing_flag:
-01f1 d8e00003 arg mosue_24g_pairing_flag ,queue 
-01f2 202043d2 branch mouse_disable_function_flag 
+01c8 d8e00003 arg mosue_24g_pairing_flag ,queue 
+01c9 202043d2 branch mouse_disable_function_flag 
 
 p_g24_put_data_in_buff:
-01f3 6008cbf2 storet 1 ,mem_24g_datalen 
-01f4 18427200 copy temp ,loopcnt 
-01f5 d8a04b8e arg mem_24g_txbuf ,contw 
-01f6 1a220c00 copy rega ,contr 
-01f7 20207f01 branch memcpy 
+01ca 6008cbf2 storet 1 ,mem_24g_datalen 
+01cb 18427200 copy temp ,loopcnt 
+01cc d8a04b8e arg mem_24g_txbuf ,contw 
+01cd 1a220c00 copy rega ,contr 
+01ce 20207f01 branch memcpy 
 
 p_g24_read_len_pid_crc:
-01f8 6800cb6d fetch 1 ,mem_24g_rxbuf + 1 
-01f9 1fe97e00 rshift3 pdata ,pdata 
-01fa 6000cbf0 store 1 ,mem_24g_rxdata_length 
-01fb 1fe0fe01 increase 1 ,pdata 
-01fc d8c04b6d arg mem_24g_rxbuf + 1 ,contr 
-01fd 98c08c00 iadd contr ,contr 
-01fe e8c18000 ifetch 3 ,contr 
-01ff 6001cc2f store 3 ,mem_24g_sta_crc 
-0200 6800cb6d fetch 1 ,mem_24g_rxbuf + 1 
-0201 1fe37e00 rshift pdata ,pdata 
-0202 1fe17e03 and pdata ,0x03 ,pdata 
-0203 6000cc35 store 1 ,mem_24g_sta_pid 
-0204 20600000 rtn 
+01cf 6800cb6d fetch 1 ,mem_24g_rxbuf + 1 
+01d0 1fe97e00 rshift3 pdata ,pdata 
+01d1 6000cbf0 store 1 ,mem_24g_rxdata_length 
+01d2 1fe0fe01 increase 1 ,pdata 
+01d3 d8c04b6d arg mem_24g_rxbuf + 1 ,contr 
+01d4 98c08c00 iadd contr ,contr 
+01d5 e8c18000 ifetch 3 ,contr 
+01d6 6001cc2f store 3 ,mem_24g_sta_crc 
+01d7 6800cb6d fetch 1 ,mem_24g_rxbuf + 1 
+01d8 1fe37e00 rshift pdata ,pdata 
+01d9 1fe17e03 and pdata ,0x03 ,pdata 
+01da 6000cc35 store 1 ,mem_24g_sta_pid 
+01db 20600000 rtn 
 
 p_g24_update_addr_and_synccrc8:
-0205 60024c1a store 4 ,mem_24g_addr 
+01dc 60024c1a store 4 ,mem_24g_addr 
 
 p_g24_syncword_crc8:
-0206 da200000 arg 0 ,rega 
-0207 df200004 arg 4 ,loopcnt 
-0208 d8c04c1a arg mem_24g_addr ,contr 
+01dd da200000 arg 0 ,rega 
+01de df200004 arg 4 ,loopcnt 
+01df d8c04c1a arg mem_24g_addr ,contr 
 
 p_g24_syncword_crc8_loop:
-0209 e8c08000 ifetch 1 ,contr 
-020a 9a20a200 iadd rega ,rega 
-020b c2000209 loop p_g24_syncword_crc8_loop 
-020c 1a227e00 copy rega ,pdata 
-020d 60014ca3 store 2 ,mem_24g_syncword 
-020e 6800cca3 fetch 1 ,mem_24g_syncword 
-020f 6808cca4 fetcht 1 ,mem_24g_syncword + 1 
-0210 9840fe00 iadd temp ,pdata 
-0211 6000cca5 store 1 ,mem_24g_syncword_crc8 
-0212 20600000 rtn 
+01e0 e8c08000 ifetch 1 ,contr 
+01e1 9a20a200 iadd rega ,rega 
+01e2 c20001e0 loop p_g24_syncword_crc8_loop 
+01e3 1a227e00 copy rega ,pdata 
+01e4 60014ca3 store 2 ,mem_24g_syncword 
+01e5 6800cca3 fetch 1 ,mem_24g_syncword 
+01e6 6808cca4 fetcht 1 ,mem_24g_syncword + 1 
+01e7 9840fe00 iadd temp ,pdata 
+01e8 6000cca5 store 1 ,mem_24g_syncword_crc8 
+01e9 20600000 rtn 
 
 p_g24_transmit_prep:
-0213 6800cbf2 fetch 1 ,mem_24g_datalen 
-0214 1fe0fe02 increase 2 ,pdata 
-0215 6000cbf4 store 1 ,mem_24g_txlen 
-0216 6800cbf3 fetch 1 ,mem_24g_data_type 
-0217 6000cbae store 1 ,mem_24g_txpayload 
-0218 6800cbf2 fetch 1 ,mem_24g_datalen 
-0219 1fe9fe00 lshift3 pdata ,pdata 
-021a 6808cbf1 fetcht 1 ,mem_24g_pid 
-021b 18410403 and temp ,0x03 ,temp 
-021c 18438400 lshift temp ,temp 
-021d 9841fe00 ior temp ,pdata 
-021e 6808cc2e fetcht 1 ,mem_24g_no_ack 
-021f 9840fe00 iadd temp ,pdata 
-0220 e0a08000 istore 1 ,contw 
-0221 6800cbf2 fetch 1 ,mem_24g_datalen 
-0222 98007200 iforce loopcnt 
-0223 d8c04b8e arg mem_24g_txbuf ,contr 
-0224 20207f01 branch memcpy 
-
-p_g24_ch:
-0225 6808cbfd fetcht 1 ,mem_24g_current_ch_number 
-0226 20400229 call p_g24_ch_map_size 
-0227 6008cbfd storet 1 ,mem_24g_current_ch_number 
-0228 20600000 rtn 
-
-p_g24_ch_map_size:
-0229 2040022d call p_g24_ch_calc 
-022a 18408401 increase 1 ,temp 
-022b 18410403 and_into 3 ,temp 
-022c 20600000 rtn 
-
-p_g24_ch_calc:
-022d 6800cc1a fetch 1 ,mem_24g_addr 
-022e 1fe17e03 and_into 0x03 ,pdata 
-022f 1fefa204 mul32 pdata ,4 ,rega 
-0230 58004c03 setarg mem_24g_ch_map1 
-0231 9a20fe00 iadd rega ,pdata 
-0232 98408c00 iadd temp ,contr 
-0233 e8c08000 ifetch 1 ,contr 
-0234 6000cbfc store 1 ,mem_24g_ch 
-0235 20600000 rtn 
+01ea 6800cbf2 fetch 1 ,mem_24g_datalen 
+01eb 1fe0fe02 increase 2 ,pdata 
+01ec 6000cbf4 store 1 ,mem_24g_txlen 
+01ed 6800cbf3 fetch 1 ,mem_24g_data_type 
+01ee 6000cbae store 1 ,mem_24g_txpayload 
+01ef 6800cbf2 fetch 1 ,mem_24g_datalen 
+01f0 1fe9fe00 lshift3 pdata ,pdata 
+01f1 6808cbf1 fetcht 1 ,mem_24g_pid 
+01f2 18410403 and temp ,0x03 ,temp 
+01f3 18438400 lshift temp ,temp 
+01f4 9841fe00 ior temp ,pdata 
+01f5 6808cc2e fetcht 1 ,mem_24g_no_ack 
+01f6 9840fe00 iadd temp ,pdata 
+01f7 e0a08000 istore 1 ,contw 
+01f8 6800cbf2 fetch 1 ,mem_24g_datalen 
+01f9 98007200 iforce loopcnt 
+01fa d8c04b8e arg mem_24g_txbuf ,contr 
+01fb 20207f01 branch memcpy 
 
 p_g24_prep:
-0236 7844fc00 disable enable_crc 
-0237 7843fc00 disable enable_white 
-0238 58555555 setarg 0x555555 
-0239 98001e00 iforce crc24_init 
-023a 6800cbfc fetch 1 ,mem_24g_ch 
-023b 1fed8400 reverse pdata ,temp 
-023c 79200401 set1 1 ,temp 
-023d 18431c00 rshift temp ,white_init 
-023e 20600000 rtn 
-
-p_g24_receive_packet:
-023f 204053c4 call le_enable 
-0240 68024c1a fetch 4 ,mem_24g_addr 
-0241 98001200 iforce access 
-0242 20402918 call set_sync_on 
-0243 6808cbfc fetcht 1 ,mem_24g_ch 
-0244 2040291f call set_freq_rx 
-0245 58000500 setarg param_pll_setup 
-0246 20402a8f call sleep 
-0247 20402924 call rf_rx_enable 
+01fc 7844fc00 disable enable_crc 
+01fd 7843fc00 disable enable_white 
+01fe 58555555 setarg 0x555555 
+01ff 98001e00 iforce crc24_init 
+0200 6800cbfc fetch 1 ,mem_24g_ch 
+0201 1fed8400 reverse pdata ,temp 
+0202 79200401 set1 1 ,temp 
+0203 18431c00 rshift temp ,white_init 
+0204 20600000 rtn 
 
 p_g24_receive_rxon:
-0248 20400236 call p_g24_prep 
-0249 7857fc00 disable user3 
-024a 7826fc00 enable decode_fec0 
-024b 7830fc00 enable is_rx 
-024c 78507c00 disable is_tx 
-024d 78287c00 enable swfine 
-024e 68014bf5 fetch 2 ,mem_24g_rx_window 
-024f 98003600 iforce stop_watch 
-0250 37c18400 correlate null ,timeout 
-0251 242c0288 nbranch p_g24_sync_timeout ,sync 
-0252 7846fc00 disable decode_fec0 
-0253 7825fc00 enable decode_fec1 
-0254 7823fc00 enable enable_white 
-0255 7824fc00 enable enable_crc 
-0256 20400281 call p_g24_receive_byte 
-0257 6000cca6 store 1 ,mem_24g_get_syncword_crc8 
-0258 6808cca5 fetcht 1 ,mem_24g_syncword_crc8 
-0259 98467c00 isub temp ,null 
-025a 24228284 nbranch p_g24_end_of_packet ,zero 
-025b 20400281 call p_g24_receive_byte 
-025c 6000cb6c store 1 ,mem_24g_rxbuf 
-025d 6800cc38 fetch 1 ,mem_24g_mode 
-025e 1fe67c02 sub pdata ,rx_24g ,null 
-025f 20228264 branch p_g24_receive_skip ,zero 
-0260 6800cb6c fetch 1 ,mem_24g_rxbuf 
-0261 6808cbf3 fetcht 1 ,mem_24g_data_type 
-0262 a8400e00 icompare bits_data ,temp 
-0263 24208284 nbranch p_g24_end_of_packet ,true 
+0205 204001fc call p_g24_prep 
+0206 7857fc00 disable user3 
+0207 7826fc00 enable decode_fec0 
+0208 7830fc00 enable is_rx 
+0209 78507c00 disable is_tx 
+020a 78287c00 enable swfine 
+020b 68014bf5 fetch 2 ,mem_24g_rx_window 
+020c 98003600 iforce stop_watch 
+020d 37c18400 correlate null ,timeout 
+020e 242c0245 nbranch p_g24_sync_timeout ,sync 
+020f 7846fc00 disable decode_fec0 
+0210 7825fc00 enable decode_fec1 
+0211 7823fc00 enable enable_white 
+0212 7824fc00 enable enable_crc 
+0213 2040023e call p_g24_receive_byte 
+0214 6000cca6 store 1 ,mem_24g_get_syncword_crc8 
+0215 6808cca5 fetcht 1 ,mem_24g_syncword_crc8 
+0216 98467c00 isub temp ,null 
+0217 24228241 nbranch p_g24_end_of_packet ,zero 
+0218 2040023e call p_g24_receive_byte 
+0219 6000cb6c store 1 ,mem_24g_rxbuf 
+021a 6800cc38 fetch 1 ,mem_24g_mode 
+021b 1fe67c02 sub pdata ,rx_24g ,null 
+021c 20228221 branch p_g24_receive_skip ,zero 
+021d 6800cb6c fetch 1 ,mem_24g_rxbuf 
+021e 6808cbf3 fetcht 1 ,mem_24g_data_type 
+021f a8400e00 icompare bits_data ,temp 
+0220 24208241 nbranch p_g24_end_of_packet ,true 
 
 p_g24_receive_skip:
-0264 20400281 call p_g24_receive_byte 
-0265 e0a08000 istore 1 ,contw 
-0266 1fe97e00 rshift3 pdata ,pdata 
-0267 1fe1721f and pdata ,0x1f ,loopcnt 
-0268 2022826c branch p_g24rx_nopayload ,zero 
+0221 2040023e call p_g24_receive_byte 
+0222 e0a08000 istore 1 ,contw 
+0223 1fe97e00 rshift3 pdata ,pdata 
+0224 1fe1721f and pdata ,0x1f ,loopcnt 
+0225 20228229 branch p_g24rx_nopayload ,zero 
 
 p_g24rx_loop:
-0269 20400281 call p_g24_receive_byte 
-026a e0a08000 istore 1 ,contw 
-026b c2000269 loop p_g24rx_loop 
+0226 2040023e call p_g24_receive_byte 
+0227 e0a08000 istore 1 ,contw 
+0228 c2000226 loop p_g24rx_loop 
 
 p_g24rx_nopayload:
-026c 18a22200 copy contw ,rega 
-026d 20400281 call p_g24_receive_byte 
-026e 6000cd2d store 1 ,mem_rssi_hex_received 
-026f 1a220a00 copy rega ,contw 
-0270 09800018 parse demod ,bucket ,24 
-0271 78287c00 enable swfine 
-0272 db600664 arg param_sifs ,stop_watch 
-0273 1fef7e00 rshift32 pdata ,pdata 
-0274 1ff17e00 rshift16 pdata ,pdata 
-0275 e0a18000 istore 3 ,contw 
-0276 7845fc00 disable decode_fec1 
-0277 20230284 branch p_g24_end_of_packet ,crc_failed 
-0278 7837fc00 enable user3 
-0279 68008017 fetch 1 ,mem_last_freq 
-027a 1fe0a200 add pdata ,0 ,rega 
-027b 20402981 call rf_write_freq 
-027c 7846fc00 disable decode_fec0 
-027d 20402918 call set_sync_on 
-027e 6800cd2d fetch 1 ,mem_rssi_hex_received 
-027f 2040006b call p_rssi_signal 
-0280 20600000 rtn 
+0229 18a22200 copy contw ,rega 
+022a 2040023e call p_g24_receive_byte 
+022b 6000cd2d store 1 ,mem_rssi_hex_received 
+022c 1a220a00 copy rega ,contw 
+022d 09800018 parse demod ,bucket ,24 
+022e 78287c00 enable swfine 
+022f db600664 arg param_sifs ,stop_watch 
+0230 1fef7e00 rshift32 pdata ,pdata 
+0231 1ff17e00 rshift16 pdata ,pdata 
+0232 e0a18000 istore 3 ,contw 
+0233 7845fc00 disable decode_fec1 
+0234 20230241 branch p_g24_end_of_packet ,crc_failed 
+0235 7837fc00 enable user3 
+0236 68008017 fetch 1 ,mem_last_freq 
+0237 1fe0a200 add pdata ,0 ,rega 
+0238 20402981 call rf_write_freq 
+0239 7846fc00 disable decode_fec0 
+023a 20402918 call set_sync_on 
+023b 6800cd2d fetch 1 ,mem_rssi_hex_received 
+023c 2040006b call p_rssi_signal 
+023d 20600000 rtn 
 
 p_g24_receive_byte:
-0281 09800008 parse demod ,bucket ,8 
-0282 19897e00 rshift3 pwindow ,pdata 
-0283 20600000 rtn 
+023e 09800008 parse demod ,bucket ,8 
+023f 19897e00 rshift3 pwindow ,pdata 
+0240 20600000 rtn 
 
 p_g24_end_of_packet:
-0284 784dfc00 disable encode_fec1 
-0285 7845fc00 disable decode_fec1 
-0286 2040264d call end_of_packet 
-0287 20600000 rtn 
+0241 784dfc00 disable encode_fec1 
+0242 7845fc00 disable decode_fec1 
+0243 2040264d call end_of_packet 
+0244 20600000 rtn 
 
 p_g24_sync_timeout:
-0288 20200284 branch p_g24_end_of_packet 
+0245 20200241 branch p_g24_end_of_packet 
 
 p_g24_set_freq_tx:
-0289 20402918 call set_sync_on 
-028a 6808cbfc fetcht 1 ,mem_24g_ch 
-028b 20202933 branch set_freq_tx 
+0246 20402918 call set_sync_on 
+0247 6808cbfc fetcht 1 ,mem_24g_ch 
+0248 20202933 branch set_freq_tx 
 
 p_g24_transmit:
-028c 204053c4 call le_enable 
-028d 68024c1a fetch 4 ,mem_24g_addr 
-028e 98001200 iforce access 
-028f 20400236 call p_g24_prep 
-0290 20400289 call p_g24_set_freq_tx 
-0291 79202a00 set1 txgfsk ,radio_ctrl 
-0292 782efc00 enable encode_fec0 
-0293 78307c00 enable is_tx 
-0294 7850fc00 disable is_rx 
-0295 19317e00 rshift16 access ,pdata 
-0296 1fecfe00 rshift8 pdata ,pdata 
-0297 1ff1fe00 rshift4 pdata ,pdata 
-0298 08008628 inject mod ,40 
-0299 784efc00 disable encode_fec0 
-029a 782dfc00 enable encode_fec1 
-029b 7823fc00 enable enable_white 
-029c 7824fc00 enable enable_crc 
-029d 6800cca5 fetch 1 ,mem_24g_syncword_crc8 
-029e 08008608 inject mod ,8 
-029f 6800cbf4 fetch 1 ,mem_24g_txlen 
-02a0 98007200 iforce loopcnt 
-02a1 d8c04bae arg mem_24g_txpayload ,contr 
+0249 204053c4 call le_enable 
+024a 68024c1a fetch 4 ,mem_24g_addr 
+024b 98001200 iforce access 
+024c 204001fc call p_g24_prep 
+024d 20400246 call p_g24_set_freq_tx 
+024e 79202a00 set1 txgfsk ,radio_ctrl 
+024f 782efc00 enable encode_fec0 
+0250 78307c00 enable is_tx 
+0251 7850fc00 disable is_rx 
+0252 19317e00 rshift16 access ,pdata 
+0253 1fecfe00 rshift8 pdata ,pdata 
+0254 1ff1fe00 rshift4 pdata ,pdata 
+0255 08008628 inject mod ,40 
+0256 784efc00 disable encode_fec0 
+0257 782dfc00 enable encode_fec1 
+0258 7823fc00 enable enable_white 
+0259 7824fc00 enable enable_crc 
+025a 6800cca5 fetch 1 ,mem_24g_syncword_crc8 
+025b 08008608 inject mod ,8 
+025c 6800cbf4 fetch 1 ,mem_24g_txlen 
+025d 98007200 iforce loopcnt 
+025e d8c04bae arg mem_24g_txpayload ,contr 
 
 p_g24tr_loop:
-02a2 e8c08000 ifetch 1 ,contr 
-02a3 08008608 inject mod ,8 
-02a4 c20002a2 loop p_g24tr_loop 
-02a5 78247c00 enable enable_parity 
-02a6 08008618 inject mod ,24 
-02a7 78447c00 disable enable_parity 
-02a8 37d38200 until null ,tx_clear 
-02a9 20000064 nop 100 
-02aa 784efc00 disable encode_fec0 
-02ab 784dfc00 disable encode_fec1 
-02ac 20600000 rtn 
+025f e8c08000 ifetch 1 ,contr 
+0260 08008608 inject mod ,8 
+0261 c200025f loop p_g24tr_loop 
+0262 78247c00 enable enable_parity 
+0263 08008618 inject mod ,24 
+0264 78447c00 disable enable_parity 
+0265 37d38200 until null ,tx_clear 
+0266 20000064 nop 100 
+0267 784efc00 disable encode_fec0 
+0268 784dfc00 disable encode_fec1 
+0269 20600000 rtn 
 
 p_g24_timer_check:
-02ad 20407fe9 call disable_user 
-02ae 680a4c13 fetcht 4 ,mem_24g_tx_btclk 
-02af 1c427e00 copy clkn_bt ,pdata 
-02b0 98467c00 isub temp ,null 
-02b1 24412d18 ncall g24_timer_timeout ,positive 
-02b2 1fe22400 copy pdata ,regb 
-02b3 68024c13 fetch 4 ,mem_24g_tx_btclk 
-02b4 6808cc17 fetcht 1 ,mem_24g_interval 
-02b5 98408400 iadd temp ,temp 
-02b6 1a427e00 copy regb ,pdata 
-02b7 98467c00 isub temp ,null 
-02b8 24610000 nrtn positive 
-02b9 793ffe1c set0 28 ,pdata 
-02ba 60024c13 store 4 ,mem_24g_tx_btclk 
-02bb 20207fe7 branch enable_user 
+026a 20407fe9 call disable_user 
+026b 680a4c13 fetcht 4 ,mem_24g_tx_btclk 
+026c 1c427e00 copy clkn_bt ,pdata 
+026d 98467c00 isub temp ,null 
+026e 24412d18 ncall g24_timer_timeout ,positive 
+026f 1fe22400 copy pdata ,regb 
+0270 68024c13 fetch 4 ,mem_24g_tx_btclk 
+0271 6808cc17 fetcht 1 ,mem_24g_interval 
+0272 98408400 iadd temp ,temp 
+0273 1a427e00 copy regb ,pdata 
+0274 98467c00 isub temp ,null 
+0275 24610000 nrtn positive 
+0276 793ffe1c set0 28 ,pdata 
+0277 60024c13 store 4 ,mem_24g_tx_btclk 
+0278 20207fe7 branch enable_user 
 
 p_rssi_noise:
-02bc 204029bb call save_rssi 
-02bd 207a0000 rtn blank 
-02be 6808ccac fetcht 1 ,mem_rssi_noise_index 
-02bf da200d9e arg mem_rssi_noise_buffer ,rega 
-02c0 204002c3 call p_rssi_store 
-02c1 6008ccac storet 1 ,mem_rssi_noise_index 
-02c2 20600000 rtn 
+0279 204029bb call save_rssi 
+027a 207a0000 rtn blank 
+027b 6808ccac fetcht 1 ,mem_rssi_noise_index 
+027c da200d9e arg mem_rssi_noise_buffer ,rega 
+027d 20400280 call p_rssi_store 
+027e 6008ccac storet 1 ,mem_rssi_noise_index 
+027f 20600000 rtn 
 
 p_rssi_store:
-02c3 1a227e00 copy rega ,pdata 
-02c4 98408a00 iadd temp ,contw 
-02c5 68008018 fetch 1 ,mem_rssi 
-02c6 e0a08000 istore 1 ,contw 
-02c7 18408401 increase 1 ,temp 
-02c8 18410407 and_into rssi_buf_len_signal ,temp 
-02c9 20600000 rtn 
+0280 1a227e00 copy rega ,pdata 
+0281 98408a00 iadd temp ,contw 
+0282 68008018 fetch 1 ,mem_rssi 
+0283 e0a08000 istore 1 ,contw 
+0284 18408401 increase 1 ,temp 
+0285 18410407 and_into rssi_buf_len_signal ,temp 
+0286 20600000 rtn 
 
 p_rssi_average:
-02ca d8400000 arg 0 ,temp 
-02cb df200008 arg rssi_buf_len_signal + 1 ,loopcnt 
-02cc 1a220c00 copy rega ,contr 
+0287 d8400000 arg 0 ,temp 
+0288 df200008 arg rssi_buf_len_signal + 1 ,loopcnt 
+0289 1a220c00 copy rega ,contr 
 
 p_rssi_average_loop:
-02cd e8c08000 ifetch 1 ,contr 
-02ce 98408400 iadd temp ,temp 
-02cf c20002cd loop p_rssi_average_loop 
-02d0 18497e00 rshift3 temp ,pdata 
-02d1 1fe20400 copy pdata ,temp 
-02d2 c6930000 rtnmark0 mark_24g 
-02d3 1fe6fc0a div pdata ,10 
-02d4 20407f86 call wait_div_end 
-02d5 1807fe00 quotient pdata 
-02d6 1ff27e00 lshift4 pdata ,pdata 
-02d7 18070400 remainder temp 
-02d8 98418400 ior temp ,temp 
-02d9 20600000 rtn 
-02da 20600000 rtn 
+028a e8c08000 ifetch 1 ,contr 
+028b 98408400 iadd temp ,temp 
+028c c200028a loop p_rssi_average_loop 
+028d 18497e00 rshift3 temp ,pdata 
+028e 1fe20400 copy pdata ,temp 
+028f c6930000 rtnmark0 mark_24g 
+0290 1fe6fc0a div pdata ,10 
+0291 20407f86 call wait_div_end 
+0292 1807fe00 quotient pdata 
+0293 1ff27e00 lshift4 pdata ,pdata 
+0294 18070400 remainder temp 
+0295 98418400 ior temp ,temp 
+0296 20600000 rtn 
+0297 20600000 rtn 
 
 p_mouse_before_lpm:
-02db c6130000 rtnmark1 mark_24g 
-02dc 204003d9 call p_mouse_le_txbuff_save 
-02dd 204000de call p_mouse_setgpio_lpm 
-02de 6800c040 fetch 1 ,mem_context 
-02df c30002e2 bbit0 state_inconn ,p_clear_wake 
-02e0 680080a0 fetch 1 ,mem_lpm_current_mult 
-02e1 247a0000 nrtn blank 
+0298 c6130000 rtnmark1 mark_24g 
+0299 20400383 call p_mouse_le_txbuff_save 
+029a 204000c5 call p_mouse_setgpio_lpm 
+029b 6800c040 fetch 1 ,mem_context 
+029c c300029f bbit0 state_inconn ,p_clear_wake 
+029d 680080a0 fetch 1 ,mem_lpm_current_mult 
+029e 247a0000 nrtn blank 
 
 p_clear_wake:
-02e2 58000000 setarg 0 
-02e3 600400a1 store 8 ,mem_gpio_wakeup_low 
-02e4 20600000 rtn 
+029f 58000000 setarg 0 
+02a0 600400a1 store 8 ,mem_gpio_wakeup_low 
+02a1 20600000 rtn 
 
 p_mouse_set_sdio_high:
-02e5 6800cafe fetch 1 ,mem_mouse_init_sensor_reset_flag 
-02e6 207a0000 rtn blank 
-02e7 2020058b branch p_mouse_seting_sensor_type 
+02a2 6800cafe fetch 1 ,mem_mouse_init_sensor_reset_flag 
+02a3 207a0000 rtn blank 
+02a4 20200529 branch p_mouse_seting_sensor_type 
 
 p_device_init:
-02e8 20403416 call app_lpm_mult_enable 
-02e9 204074b9 call enable_authrom 
-02ea 2035831b branch p_mouse_spi_init ,wake 
+02a5 20403416 call app_lpm_mult_enable 
+02a6 204074b9 call enable_authrom 
+02a7 203582c5 branch p_mouse_spi_init ,wake 
 
 p_device_wake_from_power:
-02eb 20400001 call p_wake_from_power 
-02ec 6800c241 fetch 1 ,mem_power_on_flag 
-02ed c28102f0 bbit1 2 ,p_mouse_check_reconn_target 
-02ee 204005c4 call p_mouse_check_key_gpio 
-02ef c0028319 beq mouse_lm_button ,p_mouse_24g_pairing_button 
+02a8 20400001 call p_wake_from_power 
+02a9 6800c241 fetch 1 ,mem_power_on_flag 
+02aa c28102ad bbit1 2 ,p_mouse_check_reconn_target 
+02ab 20400564 call p_mouse_check_key_gpio 
+02ac c00282c3 beq mouse_lm_button ,p_mouse_24g_pairing_button 
 
 p_mouse_check_reconn_target:
-02f0 204002fc call p_mouse_tx_power_init 
-02f1 6800c720 fetch 1 ,mem_device_flag 
-02f2 6808c703 fetcht 1 ,mem_24g_device_number 
-02f3 98467c00 isub temp ,null 
-02f4 20228301 branch p_mouse_connect_24g_mode ,zero 
-02f5 2040052b call p_mouse_mode_bt_device1_multi_led_on 
-02f6 6800c210 fetch 1 ,mem_xrecord_mode 
-02f7 c0198304 beq rec_3_mode ,p_mouse3_0_check_reconn_target 
-02f8 c01a0307 beq rec_4_mode ,p_mouse4_0_check_reconn_target 
+02ad 204002b8 call p_mouse_tx_power_init 
+02ae 6800c720 fetch 1 ,mem_device_flag 
+02af 6808c703 fetcht 1 ,mem_24g_device_number 
+02b0 98467c00 isub temp ,null 
+02b1 202282bd branch p_mouse_connect_24g_mode ,zero 
+02b2 204004cd call p_mouse_mode_bt_device1_multi_led_on 
+02b3 6800c210 fetch 1 ,mem_xrecord_mode 
+02b4 c01982c0 beq rec_3_mode ,p_mouse3_0_check_reconn_target 
 
 p_mouse_null_enter_hibernate_enable:
-02f9 70479d01 jam 1 ,mem_mouse_null_enter_hibernate_flag 
-02fa 70479e28 jam 40 ,mem_mouse_null_enter_hibernate_timer 
-02fb 20600000 rtn 
+02b5 70479d01 jam 1 ,mem_mouse_null_enter_hibernate_flag 
+02b6 70479e28 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+02b7 20600000 rtn 
 
 p_mouse_tx_power_init:
-02fc 6800cca9 fetch 1 ,mem_tx_power_temp 
-02fd 6000c1de store 1 ,mem_tx_power 
-02fe 20600000 rtn 
+02b8 6800cca9 fetch 1 ,mem_tx_power_temp 
+02b9 6000c1de store 1 ,mem_tx_power 
+02ba 20600000 rtn 
 
 p_mouse_check_select_device_by_switch:
-02ff 6800c6f5 fetch 1 ,mem_config_function_enable 
-0300 20204360 branch mouse_cheak_select_device_by_switch + 1 
+02bb 6800c6f5 fetch 1 ,mem_config_function_enable 
+02bc 20204360 branch mouse_cheak_select_device_by_switch + 1 
 
 p_mouse_connect_24g_mode:
-0301 70472002 jam mode_24g_device ,mem_device_flag 
-0302 2040052b call p_mouse_mode_24g_device_multi_led_on 
-0303 202003c6 branch p_mouse_start_24g_mode 
+02bd 70472002 jam mode_24g_device ,mem_device_flag 
+02be 204004cd call p_mouse_mode_24g_device_multi_led_on 
+02bf 20200370 branch p_mouse_start_24g_mode 
 
 p_mouse3_0_check_reconn_target:
-0304 680341d0 fetch 6 ,mem_hci_plap 
-0305 203a33eb branch app_bt_start_discovery_short ,blank 
-0306 20204274 branch mouse3_0_check_reconn_target + 3 
-
-p_mouse4_0_check_reconn_target:
-0307 704b6701 jam 1 ,mem_le_send_security_request_flag 
-0308 70479f01 jam 1 ,mem_mouse_le_reconnect_flag 
-0309 680146a8 fetch 2 ,mem_mouse_direct_timeout 
-030a 600146ae store 2 ,mem_mouse_direct_timer 
-030b 20403418 call app_lpm_mult_disable 
-030c 20400312 call p_le_check_adv_flag 
-030d 58000004 setarg adv_flag_bredr_not_supported 
-030e e0c08000 istore 1 ,contr 
-030f d8c04390 arg mem_le_scan_data ,contr 
-0310 204005fb call p_le_adv_data_update 
-0311 20207df4 branch check_51cmd_adv 
-
-p_le_check_adv_flag:
-0312 da204370 arg mem_le_adv_data ,rega 
-
-p_le_check_adv_flag_loop:
-0313 ea208000 ifetch 1 ,rega 
-0314 207a0000 rtn blank 
-0315 98c0a200 iadd contr ,rega 
-0316 e8c08000 ifetch 1 ,contr 
-0317 c1008000 rtneq 0x01 
-0318 20200313 branch p_le_check_adv_flag_loop 
+02c0 680341d0 fetch 6 ,mem_hci_plap 
+02c1 203a33eb branch app_bt_start_discovery_short ,blank 
+02c2 20204274 branch mouse3_0_check_reconn_target + 3 
 
 p_mouse_24g_pairing_button:
-0319 7011c761 jam zcode_61 ,mem_zcode_temp_param0 
-031a 202007db branch p_zcode_entrance 
+02c3 7011c761 jam zcode_61 ,mem_zcode_temp_param0 
+02c4 2020077b branch p_zcode_entrance 
 
 p_mouse_spi_init:
-031b 70421276 jam 0x76 ,mem_spi_init_clk 
-031c 20203d36 branch mouse_spi_init 
+02c5 70421276 jam 0x76 ,mem_spi_init_clk 
+02c6 20203d36 branch mouse_spi_init 
 
 p_mouse_init_sunt:
-031d 2040031b call p_mouse_spi_init 
-031e 204040c0 call mouse_spi_sdio_gpio_pollup 
+02c7 204002c5 call p_mouse_spi_init 
+02c8 204040c0 call mouse_spi_sdio_gpio_pollup 
 
 p_mouse_init_sensor:
-031f 204040d9 call mouse_read_sensor_id 
-0320 c0180329 beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
-0321 c018834f beq p3065_id1 ,p_mouse_p3065_init_param 
-0322 204040d1 call mouse_twspi_reset 
-0323 200003e8 nop 1000 
-0324 2020031f branch p_mouse_init_sensor 
+02c9 204040d9 call mouse_read_sensor_id 
+02ca c01802d3 beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
+02cb c01882f9 beq p3065_id1 ,p_mouse_p3065_init_param 
+02cc 204040d1 call mouse_twspi_reset 
+02cd 200003e8 nop 1000 
+02ce 202002c9 branch p_mouse_init_sensor 
 
 p_mouse_init_sensor_reset:
-0325 704afe01 jam 1 ,mem_mouse_init_sensor_reset_flag 
-0326 2040640f call spi_ncs_enable 
-0327 2040031d call p_mouse_init_sunt 
-0328 20206411 branch spi_ncs_disable 
+02cf 704afe01 jam 1 ,mem_mouse_init_sensor_reset_flag 
+02d0 2040640f call spi_ncs_enable 
+02d1 204002c7 call p_mouse_init_sunt 
+02d2 20206411 branch spi_ncs_disable 
 
 p_mouse_init_p32xx_id2_judge:
-0329 20400354 call p_mouse_sensor_poweron 
-032a 6800c6de fetch 1 ,mem_sensor_id2 
-032b c02d032e beq ma8650_id2 ,p_mouse_ma8650_init_param 
-032c c06c0336 beq p8009_id2 ,p_mouse_8009_init_param 
-032d 202040e1 branch mouse_init_p32xx_id2_judge + 1 
+02d3 204002fe call p_mouse_sensor_poweron 
+02d4 6800c6de fetch 1 ,mem_sensor_id2 
+02d5 c02d02d8 beq ma8650_id2 ,p_mouse_ma8650_init_param 
+02d6 c06c02e0 beq p8009_id2 ,p_mouse_8009_init_param 
+02d7 202040e1 branch mouse_init_p32xx_id2_judge + 1 
 
 p_mouse_ma8650_init_param:
-032e 58008006 setarg 0x8006 
-032f 20406413 call twspi_write 
-0330 20407ec1 call delay_10ms 
-0331 7046e007 jam ma8650 ,mem_config_sensor_type 
-0332 204040f6 call mouse_sensor_disable_wp 
-0333 5800220a setarg 0x220a 
-0334 20406413 call twspi_write 
-0335 202040f4 branch mouse_sensor_enable_wp 
+02d8 58008006 setarg 0x8006 
+02d9 20406413 call twspi_write 
+02da 20407ec1 call delay_10ms 
+02db 7046e007 jam ma8650 ,mem_config_sensor_type 
+02dc 204040f6 call mouse_sensor_disable_wp 
+02dd 5800220a setarg 0x220a 
+02de 20406413 call twspi_write 
+02df 202040f4 branch mouse_sensor_enable_wp 
 
 p_mouse_8009_init_param:
-0336 58000016 setarg 0x16 
-0337 20406414 call twspi_read 
-0338 1fe67cbd sub pdata ,0xbd ,null 
-0339 2422831f nbranch p_mouse_init_sensor ,zero 
-033a 58000019 setarg 0x19 
-033b 20406414 call twspi_read 
-033c 1fe67c55 sub pdata ,0x55 ,null 
-033d 2422831f nbranch p_mouse_init_sensor ,zero 
-033e 5800001b setarg 0x1b 
-033f 20406414 call twspi_read 
-0340 1fe67c1d sub pdata ,0x1d ,null 
-0341 2422831f nbranch p_mouse_init_sensor ,zero 
-0342 7046e008 jam p8009 ,mem_config_sensor_type 
-0343 204040f6 call mouse_sensor_disable_wp 
-0344 58000206 setarg 0x0206 
-0345 20406413 call twspi_write 
-0346 58006909 setarg 0x6909 
-0347 20406413 call twspi_write 
-0348 5800280d setarg 0x280d 
-0349 20406413 call twspi_write 
-034a 58009f0e setarg 0x9f0e 
-034b 20406413 call twspi_write 
-034c 5800ba0f setarg 0xba0f 
-034d 20406413 call twspi_write 
-034e 202040f4 branch mouse_sensor_enable_wp 
+02e0 58000016 setarg 0x16 
+02e1 20406414 call twspi_read 
+02e2 1fe67cbd sub pdata ,0xbd ,null 
+02e3 242282c9 nbranch p_mouse_init_sensor ,zero 
+02e4 58000019 setarg 0x19 
+02e5 20406414 call twspi_read 
+02e6 1fe67c55 sub pdata ,0x55 ,null 
+02e7 242282c9 nbranch p_mouse_init_sensor ,zero 
+02e8 5800001b setarg 0x1b 
+02e9 20406414 call twspi_read 
+02ea 1fe67c1d sub pdata ,0x1d ,null 
+02eb 242282c9 nbranch p_mouse_init_sensor ,zero 
+02ec 7046e008 jam p8009 ,mem_config_sensor_type 
+02ed 204040f6 call mouse_sensor_disable_wp 
+02ee 58000206 setarg 0x0206 
+02ef 20406413 call twspi_write 
+02f0 58006909 setarg 0x6909 
+02f1 20406413 call twspi_write 
+02f2 5800280d setarg 0x280d 
+02f3 20406413 call twspi_write 
+02f4 58009f0e setarg 0x9f0e 
+02f5 20406413 call twspi_write 
+02f6 5800ba0f setarg 0xba0f 
+02f7 20406413 call twspi_write 
+02f8 202040f4 branch mouse_sensor_enable_wp 
 
 p_mouse_p3065_init_param:
-034f 20400354 call p_mouse_sensor_poweron 
-0350 6800c6de fetch 1 ,mem_sensor_id2 
-0351 c03840e8 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
-0352 7046e001 jam p3065 ,mem_config_sensor_type 
-0353 20600000 rtn 
+02f9 204002fe call p_mouse_sensor_poweron 
+02fa 6800c6de fetch 1 ,mem_sensor_id2 
+02fb c03840e8 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
+02fc 7046e001 jam p3065 ,mem_config_sensor_type 
+02fd 20600000 rtn 
 
 p_mouse_sensor_poweron:
-0354 2040031b call p_mouse_spi_init 
-0355 58008006 setarg 0x8006 
-0356 20406413 call twspi_write 
-0357 20002ee0 nop 12000 
+02fe 204002c5 call p_mouse_spi_init 
+02ff 58008006 setarg 0x8006 
+0300 20406413 call twspi_write 
+0301 20002ee0 nop 12000 
 
 p_mouse_dpi_config:
-0358 6800c77a fetch 1 ,mem_mouse_dpi 
-0359 c07f835b beq 0xff ,p_mouse_dpi_config_default 
-035a 2020058b branch p_mouse_seting_dpi 
+0302 6800c77a fetch 1 ,mem_mouse_dpi 
+0303 c07f8305 beq 0xff ,p_mouse_dpi_config_default 
+0304 20200529 branch p_mouse_seting_dpi 
 
 p_mouse_dpi_config_default:
-035b 6800c6e1 fetch 1 ,mem_config_sensor_motion 
-035c 6000c77a store 1 ,mem_mouse_dpi 
-035d 2020058b branch p_mouse_seting_dpi 
+0305 6800c6e1 fetch 1 ,mem_config_sensor_motion 
+0306 6000c77a store 1 ,mem_mouse_dpi 
+0307 20200529 branch p_mouse_seting_dpi 
 
 p_mouse_sensor_powerdown:
-035e 2040031b call p_mouse_spi_init 
-035f 58000006 setarg 0x06 
-0360 20406414 call twspi_read 
-0361 1fe1fe08 or pdata ,0x08 ,pdata 
-0362 1fed7e00 lshift8 pdata ,pdata 
-0363 1fe0fe06 add pdata ,0x06 ,pdata 
-0364 20206413 branch twspi_write 
+0308 204002c5 call p_mouse_spi_init 
+0309 58000006 setarg 0x06 
+030a 20406414 call twspi_read 
+030b 1fe1fe08 or pdata ,0x08 ,pdata 
+030c 1fed7e00 lshift8 pdata ,pdata 
+030d 1fe0fe06 add pdata ,0x06 ,pdata 
+030e 20206413 branch twspi_write 
 
 p_mouse_setting_config:
-0365 7011c780 jam zcode_80 ,mem_zcode_temp_param0 
-0366 202007db branch p_zcode_entrance 
+030f 7011c780 jam zcode_80 ,mem_zcode_temp_param0 
+0310 2020077b branch p_zcode_entrance 
 
 p_flash_ncs_disable:
-0367 6808cb45 fetcht 1 ,mem_flash_ncs_gpio 
-0368 20206825 branch gpio_out_inactive 
+0311 6808cb45 fetcht 1 ,mem_flash_ncs_gpio 
+0312 20206825 branch gpio_out_inactive 
 
 p_spid_init_flash:
-0369 70808640 jam 0x40 ,core_spid_ctrl 
-036a 70808700 jam 0x0 ,core_spid_delay 
-036b 68108081 hfetch 1 ,core_gpio_sel1 
-036c 793ffe00 set0 0 ,pdata 
-036d 793ffe01 set0 1 ,pdata 
-036e 79207e03 set1 3 ,pdata 
-036f 793ffe04 set0 4 ,pdata 
-0370 60108081 hstore 1 ,core_gpio_sel1 
-0371 58000000 setarg 0 
-0372 600201f5 store 4 ,mem_spid_tbuf 
-0373 6810807f hfetch 1 ,core_gpio_pd3 
-0374 793ffe00 set0 0 ,pdata 
-0375 6010807f hstore 1 ,core_gpio_pd3 
-0376 20600000 rtn 
+0313 70808640 jam 0x40 ,core_spid_ctrl 
+0314 70808700 jam 0x0 ,core_spid_delay 
+0315 68108081 hfetch 1 ,core_gpio_sel1 
+0316 793ffe00 set0 0 ,pdata 
+0317 793ffe01 set0 1 ,pdata 
+0318 79207e03 set1 3 ,pdata 
+0319 793ffe04 set0 4 ,pdata 
+031a 60108081 hstore 1 ,core_gpio_sel1 
+031b 58000000 setarg 0 
+031c 600201f5 store 4 ,mem_spid_tbuf 
+031d 6810807f hfetch 1 ,core_gpio_pd3 
+031e 793ffe00 set0 0 ,pdata 
+031f 6010807f hstore 1 ,core_gpio_pd3 
+0320 20600000 rtn 
 
 p_mouse_load_flash_info_check:
-0377 204003c4 call p_flash_release_deep_power_down 
-0378 20404423 call mouse_load_flash_flag 
-0379 68014778 fetch 2 ,mem_store_flag 
-037a d840aa55 arg eeprom_init_flag ,temp 
-037b 98467c00 isub temp ,null 
-037c 202283b4 branch p_mouse_load_flash_device_info ,zero 
-037d 60094778 storet 2 ,mem_store_flag 
-037e 2040441c call mouse_ble_init_address 
-037f 6800c6e1 fetch 1 ,mem_config_sensor_motion 
-0380 6000c77a store 1 ,mem_mouse_dpi 
+0321 2040036e call p_flash_release_deep_power_down 
+0322 20404423 call mouse_load_flash_flag 
+0323 68014778 fetch 2 ,mem_store_flag 
+0324 d840aa55 arg eeprom_init_flag ,temp 
+0325 98467c00 isub temp ,null 
+0326 2022835e branch p_mouse_load_flash_device_info ,zero 
+0327 60094778 storet 2 ,mem_store_flag 
+0328 2040441c call mouse_ble_init_address 
+0329 6800c6e1 fetch 1 ,mem_config_sensor_motion 
+032a 6000c77a store 1 ,mem_mouse_dpi 
 
 p_mouse_store_flash_device_info:
-0381 204003c4 call p_flash_release_deep_power_down 
-0382 20400393 call p_flash_erase_sector 
-0383 204003ab call p_mouse_information_flash_parameters 
-0384 20400397 call p_spid_write_flash 
-0385 204003a2 call p_wait_flash_done 
+032b 2040036e call p_flash_release_deep_power_down 
+032c 2040033d call p_flash_erase_sector 
+032d 20400355 call p_mouse_information_flash_parameters 
+032e 20400341 call p_spid_write_flash 
+032f 2040034c call p_wait_flash_done 
 
 p_mouse_store_random_addr_increase_count:
-0386 d8400002 arg 2 ,temp 
-0387 da2047c2 arg mem_random_addr_increase_count ,rega 
-0388 da40005f arg mouse_random_addr_count_eeprom_offset ,regb 
-0389 6801c700 fetch 3 ,mem_flash_base 
-038a 9a40fe00 iadd regb ,pdata 
-038b 20400397 call p_spid_write_flash 
-038c 204003a2 call p_wait_flash_done 
-038d 204003bb call p_flash_deep_power_down 
-038e 2020031b branch p_mouse_spi_init 
+0330 d8400002 arg 2 ,temp 
+0331 da2047c2 arg mem_random_addr_increase_count ,rega 
+0332 da40005f arg mouse_random_addr_count_eeprom_offset ,regb 
+0333 6801c700 fetch 3 ,mem_flash_base 
+0334 9a40fe00 iadd regb ,pdata 
+0335 20400341 call p_spid_write_flash 
+0336 2040034c call p_wait_flash_done 
+0337 20400365 call p_flash_deep_power_down 
+0338 202002c5 branch p_mouse_spi_init 
 
 p_mouse_set_24g_addr_flash:
-038f d8400004 arg 4 ,temp 
-0390 da204c1a arg mem_24g_addr ,rega 
-0391 da40005b arg mouse_g24_addr_eeprom_offect ,regb 
-0392 20600000 rtn 
+0339 d8400004 arg 4 ,temp 
+033a da204c1a arg mem_24g_addr ,rega 
+033b da40005b arg mouse_g24_addr_eeprom_offect ,regb 
+033c 20600000 rtn 
 
 p_flash_erase_sector:
-0393 6801c700 fetch 3 ,mem_flash_base 
-0394 6001c232 store 3 ,mem_spi_write_addr 
-0395 2040652a call flash_erase_sector + 2 
-0396 202003a2 branch p_wait_flash_done 
+033d 6801c700 fetch 3 ,mem_flash_base 
+033e 6001c232 store 3 ,mem_spi_write_addr 
+033f 2040652a call flash_erase_sector + 2 
+0340 2020034c branch p_wait_flash_done 
 
 p_spid_write_flash:
-0397 1fe22600 copy pdata ,regc 
-0398 1a227e00 copy rega ,pdata 
-0399 1fe0fffc increase -4 ,pdata 
-039a 1fe22400 copy pdata ,regb 
-039b ea420000 ifetch 4 ,regb 
-039c 60024b47 store 4 ,mem_write_flash_head_temp 
-039d 1a627e00 copy regc ,pdata 
-039e 20406552 call spid_write_flash 
-039f 68024b47 fetch 4 ,mem_write_flash_head_temp 
-03a0 e2420000 istore 4 ,regb 
-03a1 20600000 rtn 
+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 
 
 p_wait_flash_done:
-03a2 580186a0 setarg 100000 
-03a3 20402a8f call sleep 
-03a4 2040650b call spid_unlock_flash 
-03a5 580001fa setarg mem_spid_rbuf 
-03a6 6011008c hstore 2 ,core_spid_rxaddr 
-03a7 58000005 setarg flash_read_satus 
-03a8 204064f3 call spid_read_reg 
-03a9 c28003a2 bbit1 flash_status_wip ,p_wait_flash_done 
-03aa 20600000 rtn 
+034c 580186a0 setarg 100000 
+034d 20402a8f call sleep 
+034e 2040650b call spid_unlock_flash 
+034f 580001fa setarg mem_spid_rbuf 
+0350 6011008c hstore 2 ,core_spid_rxaddr 
+0351 58000005 setarg flash_read_satus 
+0352 204064f3 call spid_read_reg 
+0353 c280034c bbit1 flash_status_wip ,p_wait_flash_done 
+0354 20600000 rtn 
 
 p_mouse_information_flash_parameters:
-03ab 5800477f setarg mem_mouse_information_end 
-03ac d8404720 arg mem_mouse_information_start ,temp 
-03ad 98460400 isub temp ,temp 
-03ae 6801c700 fetch 3 ,mem_flash_base 
-03af da204720 arg mem_mouse_information_start ,rega 
-03b0 20600000 rtn 
+0355 5800477f setarg mem_mouse_information_end 
+0356 d8404720 arg mem_mouse_information_start ,temp 
+0357 98460400 isub temp ,temp 
+0358 6801c700 fetch 3 ,mem_flash_base 
+0359 da204720 arg mem_mouse_information_start ,rega 
+035a 20600000 rtn 
 
 p_mouse_read_flash:
-03b1 204003c4 call p_flash_release_deep_power_down 
-03b2 204003ab call p_mouse_information_flash_parameters 
-03b3 20206562 branch spid_read_flash 
+035b 2040036e call p_flash_release_deep_power_down 
+035c 20400355 call p_mouse_information_flash_parameters 
+035d 20206562 branch spid_read_flash 
 
 p_mouse_load_flash_device_info:
-03b4 204003b1 call p_mouse_read_flash 
-03b5 204005f4 call p_mouse_load_random_addr_increase_count 
-03b6 204002ff call p_mouse_check_select_device_by_switch 
-03b7 2040431a call mouse_select_reconn_device 
-03b8 6802477b fetch 4 ,mem_mouse_24g_addr 
-03b9 60024c1a store 4 ,mem_24g_addr 
-03ba 20600000 rtn 
+035e 2040035b call p_mouse_read_flash 
+035f 20400594 call p_mouse_load_random_addr_increase_count 
+0360 204002bb call p_mouse_check_select_device_by_switch 
+0361 2040431a call mouse_select_reconn_device 
+0362 6802477b fetch 4 ,mem_mouse_24g_addr 
+0363 60024c1a store 4 ,mem_24g_addr 
+0364 20600000 rtn 
 
 p_flash_deep_power_down:
-03bb 700aa2b9 jam flash_command_deep_power_down ,mem_temp 
+0365 700aa2b9 jam flash_command_deep_power_down ,mem_temp 
 
 p_spid_write_flash_cmd:
-03bc 20400369 call p_spid_init_flash 
-03bd 20000064 nop 100 
-03be 2040650b call spid_unlock_flash 
-03bf da204b47 arg mem_write_flash_head_temp ,rega 
-03c0 68088aa2 fetcht 1 ,mem_temp 
-03c1 20406556 call spid_write_flash_common 
-03c2 20000064 nop 100 
-03c3 20600000 rtn 
+0366 20400313 call p_spid_init_flash 
+0367 20000064 nop 100 
+0368 2040650b call spid_unlock_flash 
+0369 da204b47 arg mem_write_flash_head_temp ,rega 
+036a 68088aa2 fetcht 1 ,mem_temp 
+036b 20406556 call spid_write_flash_common 
+036c 20000064 nop 100 
+036d 20600000 rtn 
 
 p_flash_release_deep_power_down:
-03c4 700aa2ab jam flash_command_release_deep_power_down ,mem_temp 
-03c5 202003bc branch p_spid_write_flash_cmd 
+036e 700aa2ab jam flash_command_release_deep_power_down ,mem_temp 
+036f 20200366 branch p_spid_write_flash_cmd 
 
 p_mouse_start_24g_mode:
-03c6 204003c9 call p_g24_factory_check 
-03c7 203401ed branch p_g24_auto_pair_start ,user 
-03c8 202001eb branch p_g24_start_24g_mode 
+0370 20400373 call p_g24_factory_check 
+0371 203401c4 branch p_g24_auto_pair_start ,user 
+0372 202001c2 branch p_g24_start_24g_mode 
 
 p_g24_factory_check:
-03c9 df200002 arg 2 ,loopcnt 
-03ca d8c04c1a arg mem_24g_addr ,contr 
+0373 df200002 arg 2 ,loopcnt 
+0374 d8c04c1a arg mem_24g_addr ,contr 
 
 p_pdata_0xff_check:
-03cb 20407fe7 call enable_user 
-03cc 5800ffff setarg 0xffff 
+0375 20407fe7 call enable_user 
+0376 5800ffff setarg 0xffff 
 
 p_pdata_0xff_check_loop:
-03cd e8c90000 ifetcht 2 ,contr 
-03ce 98467c00 isub temp ,null 
-03cf 2442ffe9 ncall disable_user ,zero 
-03d0 c20003cd loop p_pdata_0xff_check_loop 
-03d1 20600000 rtn 
+0377 e8c90000 ifetcht 2 ,contr 
+0378 98467c00 isub temp ,null 
+0379 2442ffe9 ncall disable_user ,zero 
+037a c2000377 loop p_pdata_0xff_check_loop 
+037b 20600000 rtn 
 
 p_mouse_g24_package_data:
-03d2 20404401 call mouse_g24_package_data 
-03d3 6801469f fetch 2 ,mem_mouse_z 
-03d4 207a0000 rtn blank 
+037c 20404401 call mouse_g24_package_data 
+037d 6801469f fetch 2 ,mem_mouse_z 
+037e 207a0000 rtn blank 
 
 p_g24_transmit_by_interrupt_enable:
-03d5 704d3201 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
-03d6 58000000 setarg 0 
-03d7 60014d33 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
-03d8 20600000 rtn 
+037f 704d3201 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
+0380 58000000 setarg 0 
+0381 60014d33 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+0382 20600000 rtn 
 
 p_mouse_le_txbuff_save:
-03d9 d8c01800 arg mem_le_tx_buffer0 ,contr 
-03da d8a0480a arg mem_le_tx_buffer0_omemalloc ,contw 
-03db 204003e1 call p_mouse_le_txbuff_copy 
-03dc d8c01900 arg mem_le_tx_buffer1 ,contr 
-03dd 204003e1 call p_mouse_le_txbuff_copy 
-03de d8c01a00 arg mem_le_tx_buffer2 ,contr 
-03df 204003e1 call p_mouse_le_txbuff_copy 
-03e0 d8c01b00 arg mem_le_tx_buffer3 ,contr 
+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 
 
 p_mouse_le_txbuff_copy:
-03e1 df20001b arg 27 ,loopcnt 
-03e2 20207f01 branch memcpy 
+038b df20001b arg 27 ,loopcnt 
+038c 20207f01 branch memcpy 
 
 p_mouse_le_txbuff_load:
-03e3 d8c0480a arg mem_le_tx_buffer0_omemalloc ,contr 
-03e4 d8a01800 arg mem_le_tx_buffer0 ,contw 
-03e5 204003e1 call p_mouse_le_txbuff_copy 
-03e6 d8a01900 arg mem_le_tx_buffer1 ,contw 
-03e7 204003e1 call p_mouse_le_txbuff_copy 
-03e8 d8a01a00 arg mem_le_tx_buffer2 ,contw 
-03e9 204003e1 call p_mouse_le_txbuff_copy 
-03ea d8a01b00 arg mem_le_tx_buffer3 ,contw 
-03eb 202003e1 branch p_mouse_le_txbuff_copy 
+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 
 
 p_mouse_le:
-03ec 20405892 call le_fifo_check_nearly_full 
-03ed 247a0000 nrtn blank 
-03ee 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-03ef 1fe17e03 and pdata ,0x03 ,pdata 
-03f0 c1818000 rtnne 0x03 
-03f1 6800c79c fetch 1 ,mem_mouse_clear_sensor_data_flag 
-03f2 205a043a call p_mouse_clear_sensor_data ,blank 
-03f3 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
-03f4 c282c179 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
-03f5 20403f97 call mouse_motion 
-03f6 24740000 nrtn user 
-03f7 20400412 call p_mouse_wheel_trigger 
+0396 20405892 call le_fifo_check_nearly_full 
+0397 247a0000 nrtn blank 
+0398 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0399 1fe17e03 and pdata ,0x03 ,pdata 
+039a c1818000 rtnne 0x03 
+039b 6800c79c fetch 1 ,mem_mouse_clear_sensor_data_flag 
+039c 205a03e4 call p_mouse_clear_sensor_data ,blank 
+039d 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+039e c282c179 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+039f 20403f97 call mouse_motion 
+03a0 24740000 nrtn user 
+03a1 204003bc call p_mouse_wheel_trigger 
 
 p_mouse_data_push:
-03f8 da20469a arg mem_mouse_key ,rega 
-03f9 20407e3d call queue_push 
-03fa 20540401 call p_mouse_queue_increase ,user 
-03fb 20600000 rtn 
+03a2 da20469a arg mem_mouse_key ,rega 
+03a3 20407e3d call queue_push 
+03a4 205403ab call p_mouse_queue_increase ,user 
+03a5 20600000 rtn 
 
 p_mouse_data_init:
-03fc 7047a007 jam 7 ,mem_mouse_data_queue 
-03fd 7047a104 jam 4 ,mem_mouse_data_queue + 1 
-03fe 580047a0 setarg mem_mouse_data_queue 
-03ff 60014218 store 2 ,mem_queue_ptr 
-0400 20207e38 branch queue_init 
+03a6 7047a007 jam 7 ,mem_mouse_data_queue 
+03a7 7047a104 jam 4 ,mem_mouse_data_queue + 1 
+03a8 580047a0 setarg mem_mouse_data_queue 
+03a9 60014218 store 2 ,mem_queue_ptr 
+03aa 20207e38 branch queue_init 
 
 p_mouse_queue_increase:
-0401 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
-0402 1fe0fe01 increase 1 ,pdata 
-0403 6000c7c1 store 1 ,mem_mouse_data_queue_num 
-0404 20600000 rtn 
+03ab 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
+03ac 1fe0fe01 increase 1 ,pdata 
+03ad 6000c7c1 store 1 ,mem_mouse_data_queue_num 
+03ae 20600000 rtn 
 
 p_mouse_data_pull:
-0405 da20469a arg mem_mouse_key ,rega 
-0406 20407e54 call queue_pop 
-0407 20340409 branch p_mouse_fill_data_le ,user 
-0408 20600000 rtn 
+03af da20469a arg mem_mouse_key ,rega 
+03b0 20407e54 call queue_pop 
+03b1 203403b3 branch p_mouse_fill_data_le ,user 
+03b2 20600000 rtn 
 
 p_mouse_fill_data_le:
-0409 20405652 call le_clear_md 
-040a 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
-040b 1fe67c01 sub pdata ,1 ,null 
-040c 24415650 ncall le_set_md ,positive 
-040d 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
-040e 207a0000 rtn blank 
-040f 1fe0ffff increase -1 ,pdata 
-0410 6000c7c1 store 1 ,mem_mouse_data_queue_num 
-0411 20203f90 branch mouse_fill_data_le 
+03b3 20405652 call le_clear_md 
+03b4 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
+03b5 1fe67c01 sub pdata ,1 ,null 
+03b6 24415650 ncall le_set_md ,positive 
+03b7 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
+03b8 207a0000 rtn blank 
+03b9 1fe0ffff increase -1 ,pdata 
+03ba 6000c7c1 store 1 ,mem_mouse_data_queue_num 
+03bb 20203f90 branch mouse_fill_data_le 
 
 p_mouse_wheel_trigger:
-0412 6801469f fetch 2 ,mem_mouse_z 
-0413 207a0000 rtn blank 
-0414 70480601 jam 1 ,mem_mouse_wheel_trigger 
-0415 70480702 jam 2 ,mem_mouse_wheel_trigger_timer 
-0416 20600000 rtn 
+03bc 6801469f fetch 2 ,mem_mouse_z 
+03bd 207a0000 rtn blank 
+03be 70480601 jam 1 ,mem_mouse_wheel_trigger 
+03bf 70480702 jam 2 ,mem_mouse_wheel_trigger_timer 
+03c0 20600000 rtn 
 
 p_mouse_bt:
-0417 20770000 rtn attempt 
-0418 6800c1e2 fetch 1 ,mem_app_handshake_flag 
-0419 207a0000 rtn blank 
-041a 20405271 call l2cap_malloc_is_fifo_nearly_full 
-041b 247a0000 nrtn blank 
-041c 6800c79c fetch 1 ,mem_mouse_clear_sensor_data_flag 
-041d 205a043a call p_mouse_clear_sensor_data ,blank 
-041e 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
-041f c282bf8a bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
-0420 c284bf8a bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_send_empty_data 
-0421 20403f97 call mouse_motion 
-0422 24740000 nrtn user 
-0423 20400412 call p_mouse_wheel_trigger 
-0424 6800cb03 fetch 1 ,mem_mouse_bt_boot_mode 
-0425 c0008429 beq 1 ,p_mouse_send_data_boot_mode 
-0426 6800cb0a fetch 1 ,mem_mouse_bt_send_first_package_flag 
-0427 207a0000 rtn blank 
-0428 20203f81 branch mouse_send_data 
+03c1 20770000 rtn attempt 
+03c2 6800c1e2 fetch 1 ,mem_app_handshake_flag 
+03c3 207a0000 rtn blank 
+03c4 20405271 call l2cap_malloc_is_fifo_nearly_full 
+03c5 247a0000 nrtn blank 
+03c6 6800c79c fetch 1 ,mem_mouse_clear_sensor_data_flag 
+03c7 205a03e4 call p_mouse_clear_sensor_data ,blank 
+03c8 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+03c9 c282bf8a bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
+03ca c284bf8a bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_send_empty_data 
+03cb 20403f97 call mouse_motion 
+03cc 24740000 nrtn user 
+03cd 204003bc call p_mouse_wheel_trigger 
+03ce 6800cb03 fetch 1 ,mem_mouse_bt_boot_mode 
+03cf c00083d3 beq 1 ,p_mouse_send_data_boot_mode 
+03d0 6800cb0a fetch 1 ,mem_mouse_bt_send_first_package_flag 
+03d1 207a0000 rtn blank 
+03d2 20203f81 branch mouse_send_data 
 
 p_mouse_send_data_boot_mode:
-0429 6800c69a fetch 1 ,mem_mouse_key 
-042a 6000cb04 store 1 ,mem_mouse_bt_boot_data 
-042b 6800c69b fetch 1 ,mem_mouse_x 
-042c e0a08000 istore 1 ,contw 
-042d 6800c69d fetch 1 ,mem_mouse_y 
-042e e0a08000 istore 1 ,contw 
-042f 6801469f fetch 2 ,mem_mouse_z 
-0430 e0a10000 istore 2 ,contw 
-0431 da200007 arg 7 ,rega 
-0432 20404d63 call hid_malloc_tx_buff 
-0433 6801424e fetch 2 ,mem_hid_int_remote_cid 
-0434 e0a10000 istore 2 ,contw 
-0435 580002a1 setarg 0x02a1 
-0436 e0a10000 istore 2 ,contw 
-0437 6802cb04 fetch 5 ,mem_mouse_bt_boot_data 
-0438 e0a28000 istore 5 ,contw 
-0439 20600000 rtn 
+03d3 6800c69a fetch 1 ,mem_mouse_key 
+03d4 6000cb04 store 1 ,mem_mouse_bt_boot_data 
+03d5 6800c69b fetch 1 ,mem_mouse_x 
+03d6 e0a08000 istore 1 ,contw 
+03d7 6800c69d fetch 1 ,mem_mouse_y 
+03d8 e0a08000 istore 1 ,contw 
+03d9 6801469f fetch 2 ,mem_mouse_z 
+03da e0a10000 istore 2 ,contw 
+03db da200007 arg 7 ,rega 
+03dc 20404d63 call hid_malloc_tx_buff 
+03dd 6801424e fetch 2 ,mem_hid_int_remote_cid 
+03de e0a10000 istore 2 ,contw 
+03df 580002a1 setarg 0x02a1 
+03e0 e0a10000 istore 2 ,contw 
+03e1 6802cb04 fetch 5 ,mem_mouse_bt_boot_data 
+03e2 e0a28000 istore 5 ,contw 
+03e3 20600000 rtn 
 
 p_mouse_clear_sensor_data:
-043a 20405814 call le_set_config_more_data 
-043b 70479c01 jam 1 ,mem_mouse_clear_sensor_data_flag 
-043c 20200354 branch p_mouse_sensor_poweron 
+03e4 20405814 call le_set_config_more_data 
+03e5 70479c01 jam 1 ,mem_mouse_clear_sensor_data_flag 
+03e6 202002fe branch p_mouse_sensor_poweron 
 
 p_mouse_idle:
-043d 20407e34 call ui_check_paring_button 
-043e 20400440 call p_mouse_dpi_check 
-043f 20203ee0 branch mouse_wheel_check 
+03e7 20407e34 call ui_check_paring_button 
+03e8 204003ea call p_mouse_dpi_check 
+03e9 20203ee0 branch mouse_wheel_check 
 
 p_mouse_dpi_check:
-0440 6808cb23 fetcht 1 ,mem_24g_sw_gpio 
-0441 2040680e call gpio_config_output 
-0442 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
-0443 204005db call p_gpio_set_input_pd 
-0444 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
-0445 2040681d call gpio_get_bit 
-0446 20208456 branch p_mouse_dpi_up ,true 
-0447 204005e4 call p_gpio_set_input_pu 
+03ea 6808cb23 fetcht 1 ,mem_24g_sw_gpio 
+03eb 2040680e call gpio_config_output 
+03ec 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
+03ed 2040057b call p_gpio_set_input_pd 
+03ee 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
+03ef 2040681d call gpio_get_bit 
+03f0 20208400 branch p_mouse_dpi_up ,true 
+03f1 20400584 call p_gpio_set_input_pu 
 
 p_mouse_dpi_down:
-0448 6800c6b6 fetch 1 ,mem_mouse_dpi_button_state 
-0449 c1000000 rtneq dpi_button_state_down 
-044a 7046b600 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
-044b 704b6b01 jam 1 ,mem_mouse_dpi_no_enter_long_sleep_flag 
-044c 6800c77a fetch 1 ,mem_mouse_dpi 
-044d 1fe0fe01 increase 1 ,pdata 
-044e 1fe17e03 and pdata ,0x03 ,pdata 
-044f 6000c77a store 1 ,mem_mouse_dpi 
-0450 1feffe02 mul32 pdata ,2 ,pdata 
-0451 1fe0fe02 increase 2 ,pdata 
-0452 60014b2b store 2 ,mem_mouse_multi_led_blink_count 
-0453 20400540 call p_mouse_dpi_multi_led_blink 
-0454 20403d7e call mouse_seting_dpi 
-0455 20200381 branch p_mouse_store_flash_device_info 
+03f2 6800c6b6 fetch 1 ,mem_mouse_dpi_button_state 
+03f3 c1000000 rtneq dpi_button_state_down 
+03f4 7046b600 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
+03f5 704b6b01 jam 1 ,mem_mouse_dpi_no_enter_long_sleep_flag 
+03f6 6800c77a fetch 1 ,mem_mouse_dpi 
+03f7 1fe0fe01 increase 1 ,pdata 
+03f8 1fe17e03 and pdata ,0x03 ,pdata 
+03f9 6000c77a store 1 ,mem_mouse_dpi 
+03fa 1feffe02 mul32 pdata ,2 ,pdata 
+03fb 1fe0fe02 increase 2 ,pdata 
+03fc 60014b2b store 2 ,mem_mouse_multi_led_blink_count 
+03fd 204004de call p_mouse_dpi_multi_led_blink 
+03fe 20403d7e call mouse_seting_dpi 
+03ff 2020032b branch p_mouse_store_flash_device_info 
 
 p_mouse_dpi_up:
-0456 204005e4 call p_gpio_set_input_pu 
-0457 20203d62 branch mouse_dpi_up 
+0400 20400584 call p_gpio_set_input_pu 
+0401 20203d62 branch mouse_dpi_up 
 
 p_mouse_priority_bb_event:
-0458 1a627e00 copy regc ,pdata 
-0459 c00a046a beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
-045a c00a846d beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
-045b c0148470 beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
-045c c0190472 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
-045d c0200474 beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
-045e c0020476 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
-045f c0098476 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_timeout 
-0460 c0138478 beq bt_evt_virtual_cable_unplug ,p_mouse_irtual_cable_unplug 
-0461 c00cb3df beq bt_evt_switch_not_accept ,app_bt_role_switch 
-0462 c010847a beq bt_evt_sniff_not_accept ,p_mouse_sniff_not_accept 
-0463 c000847c beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
-0464 c0010482 beq bt_evt_bb_disconnected ,p_mouse_bb_event_disconnected 
-0465 c0158485 beq bt_evt_switch_success_master ,p_mouse_enter_sniff_check 
-0466 c01c8487 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
-0467 c01d048a beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
-0468 c01e048d beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
-0469 2020417d branch mouse_priority_bb_event + 1 
+0402 1a627e00 copy regc ,pdata 
+0403 c00a0414 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+0404 c00a8417 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+0405 c014841a beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
+0406 c019041c beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+0407 c020041e beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
+0408 c0020420 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
+0409 c0098420 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_timeout 
+040a c0138422 beq bt_evt_virtual_cable_unplug ,p_mouse_irtual_cable_unplug 
+040b c00cb3df beq bt_evt_switch_not_accept ,app_bt_role_switch 
+040c c0108424 beq bt_evt_sniff_not_accept ,p_mouse_sniff_not_accept 
+040d c0008426 beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
+040e c001042c beq bt_evt_bb_disconnected ,p_mouse_bb_event_disconnected 
+040f c015842f beq bt_evt_switch_success_master ,p_mouse_enter_sniff_check 
+0410 c01c8431 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+0411 c01d0434 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+0412 c01e0437 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:
-046a 20400325 call p_mouse_init_sensor_reset 
-046b 7011c7b0 jam zcode_b0 ,mem_zcode_temp_param0 
-046c 202007db branch p_zcode_entrance 
+0414 204002cf call p_mouse_init_sensor_reset 
+0415 7011c7b0 jam zcode_b0 ,mem_zcode_temp_param0 
+0416 2020077b branch p_zcode_entrance 
 
 p_mouse_le_bb_disconnected:
-046d 20400498 call p_mouse_sensor_powerdown_check 
-046e 7011c7a2 jam zcode_a2 ,mem_zcode_temp_param0 
-046f 202007db branch p_zcode_entrance 
+0417 20400442 call p_mouse_sensor_powerdown_check 
+0418 7011c7a2 jam zcode_a2 ,mem_zcode_temp_param0 
+0419 2020077b branch p_zcode_entrance 
 
 p_mouse_le_enc_info:
 
 p_app_updata_le_param:
-0470 700a9912 jam bt_cmd_le_update_conn ,mem_fifo_temp 
-0471 20207d8f branch ui_ipc_send_cmd 
+041a 700a9912 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+041b 20207d8f branch ui_ipc_send_cmd 
 
 p_mouse_le_ll_start_encryt:
-0472 7011c7b3 jam zcode_b3 ,mem_zcode_temp_param0 
-0473 202007db branch p_zcode_entrance 
+041c 7011c7b3 jam zcode_b3 ,mem_zcode_temp_param0 
+041d 2020077b branch p_zcode_entrance 
 
 p_mouse_le_conn_param_update_rsp_recieved:
-0474 7011c7a1 jam zcode_a1 ,mem_zcode_temp_param0 
-0475 202007db branch p_zcode_entrance 
+041e 7011c7a1 jam zcode_a1 ,mem_zcode_temp_param0 
+041f 2020077b branch p_zcode_entrance 
 
 p_mouse_bb_event_reconn_timeout:
 
 p_mouse_bb_event_reconn_failed:
-0476 7011c7a3 jam zcode_a3 ,mem_zcode_temp_param0 
-0477 202007db branch p_zcode_entrance 
+0420 7011c7a3 jam zcode_a3 ,mem_zcode_temp_param0 
+0421 2020077b branch p_zcode_entrance 
 
 p_mouse_irtual_cable_unplug:
-0478 2040438e call mouse_irtual_cable_unplug 
-0479 202033a7 branch app_bb_hibernate 
+0422 2040438e call mouse_irtual_cable_unplug 
+0423 202033a7 branch app_bb_hibernate 
 
 p_mouse_sniff_not_accept:
-047a 7011c7b1 jam zcode_b1 ,mem_zcode_temp_param0 
-047b 202007db branch p_zcode_entrance 
+0424 7011c7b1 jam zcode_b1 ,mem_zcode_temp_param0 
+0425 2020077b branch p_zcode_entrance 
 
 p_mouse_bb_event_connected:
-047c 20400581 call p_low_power_no_data_off_led_time_nolimited 
-047d 20400325 call p_mouse_init_sensor_reset 
-047e 204004f3 call p_mouse_null_enter_hibernate_disable 
-047f 2040053a call p_mouse_discovey_led_blink_off 
-0480 70480900 jam 0 ,mem_mouse_send_switch_req_timer 
-0481 202042ca branch mouse_stop_discovery 
+0426 2040051f call p_low_power_no_data_off_led_time_nolimited 
+0427 204002cf call p_mouse_init_sensor_reset 
+0428 20400495 call p_mouse_null_enter_hibernate_disable 
+0429 204004d8 call p_mouse_discovey_led_blink_off 
+042a 70480900 jam 0 ,mem_mouse_send_switch_req_timer 
+042b 202042ca branch mouse_stop_discovery 
 
 p_mouse_bb_event_disconnected:
-0482 20400498 call p_mouse_sensor_powerdown_check 
-0483 7011c7b4 jam zcode_b4 ,mem_zcode_temp_param0 
-0484 202007db branch p_zcode_entrance 
+042c 20400442 call p_mouse_sensor_powerdown_check 
+042d 7011c7b4 jam zcode_b4 ,mem_zcode_temp_param0 
+042e 2020077b branch p_zcode_entrance 
 
 p_mouse_enter_sniff_check:
-0485 7011c7b2 jam zcode_b2 ,mem_zcode_temp_param0 
-0486 202007db branch p_zcode_entrance 
+042f 7011c7b2 jam zcode_b2 ,mem_zcode_temp_param0 
+0430 2020077b branch p_zcode_entrance 
 
 p_mouse_24g_pairing_complete:
-0487 20400325 call p_mouse_init_sensor_reset 
-0488 7011c792 jam zcode_92 ,mem_zcode_temp_param0 
-0489 202007db branch p_zcode_entrance 
+0431 204002cf call p_mouse_init_sensor_reset 
+0432 7011c792 jam zcode_92 ,mem_zcode_temp_param0 
+0433 2020077b branch p_zcode_entrance 
 
 p_mouse_24g_attempt_fail:
-048a 20400498 call p_mouse_sensor_powerdown_check 
-048b 7011c7a0 jam zcode_a0 ,mem_zcode_temp_param0 
-048c 202007db branch p_zcode_entrance 
+0434 20400442 call p_mouse_sensor_powerdown_check 
+0435 7011c7a0 jam zcode_a0 ,mem_zcode_temp_param0 
+0436 2020077b branch p_zcode_entrance 
 
 p_mouse_24g_attempt_success:
-048d 20400581 call p_low_power_no_data_off_led_time_nolimited 
-048e 704b6001 jam 1 ,mem_mouse_24g_attempt_success_flag 
-048f 204004f3 call p_mouse_null_enter_hibernate_disable 
-0490 20400325 call p_mouse_init_sensor_reset 
-0491 20403f8d call mouse_no_data_timer_init 
+0437 2040051f call p_low_power_no_data_off_led_time_nolimited 
+0438 704b6001 jam 1 ,mem_mouse_24g_attempt_success_flag 
+0439 20400495 call p_mouse_null_enter_hibernate_disable 
+043a 204002cf call p_mouse_init_sensor_reset 
+043b 20403f8d call mouse_no_data_timer_init 
 
 p_mouse_24g_no_data_timer_init:
-0492 58002ee0 setarg 0x2ee0 
-0493 600146b0 store 2 ,mem_mouse_no_data_timer 
-0494 20600000 rtn 
+043c 58002ee0 setarg 0x2ee0 
+043d 600146b0 store 2 ,mem_mouse_no_data_timer 
+043e 20600000 rtn 
 
 p_mouse_before_hibernate:
-0495 20400498 call p_mouse_sensor_powerdown_check 
-0496 7011c7a4 jam zcode_a4 ,mem_zcode_temp_param0 
-0497 202007db branch p_zcode_entrance 
+043f 20400442 call p_mouse_sensor_powerdown_check 
+0440 7011c7a4 jam zcode_a4 ,mem_zcode_temp_param0 
+0441 2020077b branch p_zcode_entrance 
 
 p_mouse_sensor_powerdown_check:
-0498 6800cafe fetch 1 ,mem_mouse_init_sensor_reset_flag 
-0499 207a0000 rtn blank 
-049a 704afe00 jam 0 ,mem_mouse_init_sensor_reset_flag 
-049b 2020035e branch p_mouse_sensor_powerdown 
+0442 6800cafe fetch 1 ,mem_mouse_init_sensor_reset_flag 
+0443 207a0000 rtn blank 
+0444 704afe00 jam 0 ,mem_mouse_init_sensor_reset_flag 
+0445 20200308 branch p_mouse_sensor_powerdown 
 
 p_mouse_bb_event_timer:
-049c 20400543 call p_mouse_adc_read 
-049d 20400568 call p_mouse_low_voltage_led_timer 
-049e 20400584 call p_low_power_nodata_off_led_time_check 
-049f 204004f6 call p_mouse_multi_led_blink_timer 
-04a0 204004df call p_mouse_wheel_trigger_timer 
-04a1 204004e8 call p_mouse_null_enter_hibernate_timer 
-04a2 204004e4 call p_mouse_bt_discovery_check 
-04a3 20404234 call mouse_check_discovery_timeout_timer 
-04a4 204004ae call p_mouse_check_select_device_by_switch_timer 
-04a5 204004d8 call p_mouse_g24_long_sleep_param_update_timer 
-04a6 204004c4 call p_mouse_check_direct_timeout_timer 
-04a7 204004c1 call p_mouse_le_enable_att_list_timer 
-04a8 204004ca call p_mouse_le_current_mult_update_timer 
-04a9 204004d0 call p_le_send_smp_security_request_timer 
-04aa 204004b9 call p_mouse_send_switch_req_timer 
-04ab 20404231 call mouse_check_hid_handshake_timer 
-04ac 204004bc call p_mouse_bt_check_sniff_req_timeout_timer 
-04ad 2020423a branch mouse_check_no_data_timeout_timer 
+0446 204004e1 call p_mouse_adc_read 
+0447 20400506 call p_mouse_low_voltage_led_timer 
+0448 20400522 call p_low_power_nodata_off_led_time_check 
+0449 20400498 call p_mouse_multi_led_blink_timer 
+044a 20400481 call p_mouse_wheel_trigger_timer 
+044b 2040048a call p_mouse_null_enter_hibernate_timer 
+044c 20400486 call p_mouse_bt_discovery_check 
+044d 20404234 call mouse_check_discovery_timeout_timer 
+044e 20400456 call p_mouse_check_select_device_by_switch_timer 
+044f 2040047a call p_mouse_g24_long_sleep_param_update_timer 
+0450 2040046c call p_mouse_le_current_mult_update_timer 
+0451 20400472 call p_le_send_smp_security_request_timer 
+0452 20400461 call p_mouse_send_switch_req_timer 
+0453 20404231 call mouse_check_hid_handshake_timer 
+0454 20400464 call p_mouse_bt_check_sniff_req_timeout_timer 
+0455 2020423a branch mouse_check_no_data_timeout_timer 
 
 p_mouse_check_select_device_by_switch_timer:
-04ae 6800c6f5 fetch 1 ,mem_config_function_enable 
-04af c4030000 rtnbit0 enable_select_device_by_switch 
-04b0 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
-04b1 2040681d call gpio_get_bit 
-04b2 202084b6 branch p_mouse_cheak_select_24gdevice ,true 
+0456 6800c6f5 fetch 1 ,mem_config_function_enable 
+0457 c4030000 rtnbit0 enable_select_device_by_switch 
+0458 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+0459 2040681d call gpio_get_bit 
+045a 2020845e branch p_mouse_cheak_select_24gdevice ,true 
 
 p_mouse_select_btdevice:
-04b3 6800c720 fetch 1 ,mem_device_flag 
-04b4 c080e59a bne mode_bt_device1 ,soft_reset_chip 
-04b5 20600000 rtn 
+045b 6800c720 fetch 1 ,mem_device_flag 
+045c c080e59a bne mode_bt_device1 ,soft_reset_chip 
+045d 20600000 rtn 
 
 p_mouse_cheak_select_24gdevice:
-04b6 6800c720 fetch 1 ,mem_device_flag 
-04b7 c081659a bne mode_24g_device ,soft_reset_chip 
-04b8 20600000 rtn 
+045e 6800c720 fetch 1 ,mem_device_flag 
+045f c081659a bne mode_24g_device ,soft_reset_chip 
+0460 20600000 rtn 
 
 p_mouse_send_switch_req_timer:
-04b9 da604809 arg mem_mouse_send_switch_req_timer ,regc 
-04ba da40637a arg host_create_conn_resend ,regb 
-04bb 2020336d branch timer_single_step 
+0461 da604809 arg mem_mouse_send_switch_req_timer ,regc 
+0462 da40637a arg host_create_conn_resend ,regb 
+0463 2020336d branch timer_single_step 
 
 p_mouse_bt_check_sniff_req_timeout_timer:
-04bc da604b09 arg mem_mouse_bt_send_first_package_timer ,regc 
-04bd da4004bf arg p_mouse_bt_send_first_package ,regb 
-04be 2020336d branch timer_single_step 
+0464 da604b09 arg mem_mouse_bt_send_first_package_timer ,regc 
+0465 da400467 arg p_mouse_bt_send_first_package ,regb 
+0466 2020336d branch timer_single_step 
 
 p_mouse_bt_send_first_package:
-04bf 704b0a01 jam 1 ,mem_mouse_bt_send_first_package_flag 
-04c0 20600000 rtn 
-
-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 
-
-p_mouse_check_direct_timeout_timer:
-04c4 da6046ae arg mem_mouse_direct_timer ,regc 
-04c5 da4004c7 arg p_mouse_check_direct_timeout ,regb 
-04c6 20203374 branch timer_single_step_2b 
+0467 704b0a01 jam 1 ,mem_mouse_bt_send_first_package_flag 
+0468 20600000 rtn 
 
 p_mouse_check_direct_timeout:
-04c7 6800cb2f fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
-04c8 247a0000 nrtn blank 
-04c9 20204266 branch mouse_check_direct_timeout 
+0469 6800cb2f fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+046a 247a0000 nrtn blank 
+046b 20204266 branch mouse_check_direct_timeout 
 
 p_mouse_le_current_mult_update_timer:
-04ca da604b5b arg mem_mouse_le_current_mult_timer ,regc 
-04cb da4004cd arg p_mouse_le_current_mult_reinit ,regb 
-04cc 2020336d branch timer_single_step 
+046c da604b5b arg mem_mouse_le_current_mult_timer ,regc 
+046d da40046f arg p_mouse_le_current_mult_reinit ,regb 
+046e 2020336d branch timer_single_step 
 
 p_mouse_le_current_mult_reinit:
-04cd 6800c7c5 fetch 1 ,mem_lpm_mult_init 
-04ce 6000c172 store 1 ,mem_lpm_mult 
-04cf 202004dd branch p_mouse_long_mult_flag_enable 
+046f 6800c7c5 fetch 1 ,mem_lpm_mult_init 
+0470 6000c172 store 1 ,mem_lpm_mult 
+0471 2020047f branch p_mouse_long_mult_flag_enable 
 
 p_le_send_smp_security_request_timer:
-04d0 6800cb61 fetch 1 ,mem_mouse_le_bb_connected_flag 
-04d1 207a0000 rtn blank 
-04d2 da604b66 arg mem_mouse_send_secutiry_request_timer ,regc 
-04d3 da4004d5 arg p_le_pairing_sm_start_check ,regb 
-04d4 2020336d branch timer_single_step 
+0472 6800cb61 fetch 1 ,mem_mouse_le_bb_connected_flag 
+0473 207a0000 rtn blank 
+0474 da604b66 arg mem_mouse_send_secutiry_request_timer ,regc 
+0475 da400477 arg p_le_pairing_sm_start_check ,regb 
+0476 2020336d branch timer_single_step 
 
 p_le_pairing_sm_start_check:
-04d5 6800cb67 fetch 1 ,mem_le_send_security_request_flag 
-04d6 247a0000 nrtn blank 
-04d7 20205bf5 branch le_pairing_sm_start 
+0477 6800cb67 fetch 1 ,mem_le_send_security_request_flag 
+0478 247a0000 nrtn blank 
+0479 20205bf5 branch le_pairing_sm_start 
 
 p_mouse_g24_long_sleep_param_update_timer:
-04d8 da604b5c arg mem_24g_long_sleep_param_update_timer ,regc 
-04d9 da4004db arg p_mouse_g24_long_sleep_normal_param ,regb 
-04da 2020336d branch timer_single_step 
+047a da604b5c arg mem_24g_long_sleep_param_update_timer ,regc 
+047b da40047d arg p_mouse_g24_long_sleep_normal_param ,regb 
+047c 2020336d branch timer_single_step 
 
 p_mouse_g24_long_sleep_normal_param:
-04db 58249f00 setarg g24_long_sleep_step2 
-04dc 6001cc21 store 3 ,mem_24g_enter_hibernate 
+047d 58249f00 setarg g24_long_sleep_step2 
+047e 6001cc21 store 3 ,mem_24g_enter_hibernate 
 
 p_mouse_long_mult_flag_enable:
-04dd 704b5a01 jam 1 ,mem_mouse_long_mult_flag 
-04de 20600000 rtn 
+047f 704b5a01 jam 1 ,mem_mouse_long_mult_flag 
+0480 20600000 rtn 
 
 p_mouse_wheel_trigger_timer:
-04df da604807 arg mem_mouse_wheel_trigger_timer ,regc 
-04e0 da4004e2 arg p_mouse_wheel_trigger_disable ,regb 
-04e1 2020336d branch timer_single_step 
+0481 da604807 arg mem_mouse_wheel_trigger_timer ,regc 
+0482 da400484 arg p_mouse_wheel_trigger_disable ,regb 
+0483 2020336d branch timer_single_step 
 
 p_mouse_wheel_trigger_disable:
-04e2 70480600 jam 0 ,mem_mouse_wheel_trigger 
-04e3 20600000 rtn 
+0484 70480600 jam 0 ,mem_mouse_wheel_trigger 
+0485 20600000 rtn 
 
 p_mouse_bt_discovery_check:
-04e4 6800c720 fetch 1 ,mem_device_flag 
-04e5 c1010000 rtneq mode_24g_device 
-04e6 6800c6f5 fetch 1 ,mem_config_function_enable 
-04e7 c2824394 bbit1 enable_bt_button ,mouse_bt_discovery_by_button 
+0486 6800c720 fetch 1 ,mem_device_flag 
+0487 c1010000 rtneq mode_24g_device 
+0488 6800c6f5 fetch 1 ,mem_config_function_enable 
+0489 c2824394 bbit1 enable_bt_button ,mouse_bt_discovery_by_button 
 
 p_mouse_null_enter_hibernate_timer:
-04e8 6800cb2f fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
-04e9 247a0000 nrtn blank 
-04ea 6800c79d fetch 1 ,mem_mouse_null_enter_hibernate_flag 
-04eb 207a0000 rtn blank 
-04ec 6800c79e fetch 1 ,mem_mouse_null_enter_hibernate_timer 
-04ed 203a04f1 branch p_mouse_null_enter_hibernate ,blank 
-04ee 1fe0ffff increase -1 ,pdata 
-04ef 6000c79e store 1 ,mem_mouse_null_enter_hibernate_timer 
-04f0 20600000 rtn 
+048a 6800cb2f fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+048b 247a0000 nrtn blank 
+048c 6800c79d fetch 1 ,mem_mouse_null_enter_hibernate_flag 
+048d 207a0000 rtn blank 
+048e 6800c79e fetch 1 ,mem_mouse_null_enter_hibernate_timer 
+048f 203a0493 branch p_mouse_null_enter_hibernate ,blank 
+0490 1fe0ffff increase -1 ,pdata 
+0491 6000c79e store 1 ,mem_mouse_null_enter_hibernate_timer 
+0492 20600000 rtn 
 
 p_mouse_null_enter_hibernate:
-04f1 70479d00 jam 0 ,mem_mouse_null_enter_hibernate_flag 
-04f2 2020340a branch app_enter_hibernate 
+0493 70479d00 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+0494 2020340a branch app_enter_hibernate 
 
 p_mouse_null_enter_hibernate_disable:
-04f3 70479d00 jam 0 ,mem_mouse_null_enter_hibernate_flag 
-04f4 70479e00 jam 0 ,mem_mouse_null_enter_hibernate_timer 
-04f5 20600000 rtn 
+0495 70479d00 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+0496 70479e00 jam 0 ,mem_mouse_null_enter_hibernate_timer 
+0497 20600000 rtn 
 
 p_mouse_multi_led_blink_timer:
-04f6 6800cb24 fetch 1 ,mem_mouse_multi_led_blink_enable 
-04f7 207a0000 rtn blank 
-04f8 6800cb27 fetch 1 ,mem_mouse_multi_led_type 
-04f9 c00004fc beq multi_led_on ,p_mouse_multi_led_type_on 
-04fa c0008506 beq multi_led_blink ,p_mouse_multi_led_type_blink 
-04fb 20600000 rtn 
+0498 6800cb24 fetch 1 ,mem_mouse_multi_led_blink_enable 
+0499 207a0000 rtn blank 
+049a 6800cb27 fetch 1 ,mem_mouse_multi_led_type 
+049b c000049e beq multi_led_on ,p_mouse_multi_led_type_on 
+049c c00084a8 beq multi_led_blink ,p_mouse_multi_led_type_blink 
+049d 20600000 rtn 
 
 p_mouse_multi_led_type_on:
-04fc 20400516 call p_mouse_multi_led_on 
-04fd 6800cb2d fetch 1 ,mem_mouse_multi_led_on_timer 
-04fe 1fe0fe01 increase 1 ,pdata 
-04ff 6000cb2d store 1 ,mem_mouse_multi_led_on_timer 
-0500 6808cb28 fetcht 1 ,mem_mouse_multi_led_on_timer_init 
-0501 98467c00 isub temp ,null 
-0502 20428504 call p_mouse_multi_led_off_poweron2s ,zero 
-0503 20600000 rtn 
+049e 204004b8 call p_mouse_multi_led_on 
+049f 6800cb2d fetch 1 ,mem_mouse_multi_led_on_timer 
+04a0 1fe0fe01 increase 1 ,pdata 
+04a1 6000cb2d store 1 ,mem_mouse_multi_led_on_timer 
+04a2 6808cb28 fetcht 1 ,mem_mouse_multi_led_on_timer_init 
+04a3 98467c00 isub temp ,null 
+04a4 204284a6 call p_mouse_multi_led_off_poweron2s ,zero 
+04a5 20600000 rtn 
 
 p_mouse_multi_led_off_poweron2s:
-0504 704b2f00 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
-0505 20200524 branch p_mouse_multi_led_off 
+04a6 704b2f00 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
+04a7 202004c6 branch p_mouse_multi_led_off 
 
 p_mouse_multi_led_type_blink:
-0506 6800cb2a fetch 1 ,mem_mouse_multi_led_blink_timer 
-0507 1fe0ffff increase -1 ,pdata 
-0508 6000cb2a store 1 ,mem_mouse_multi_led_blink_timer 
-0509 247a0000 nrtn blank 
-050a 6800cb29 fetch 1 ,mem_mouse_multi_led_blink_timer_init 
-050b 6000cb2a store 1 ,mem_mouse_multi_led_blink_timer 
-050c 6800cb2e fetch 1 ,mem_mouse_multi_led_blink_count_limited 
-050d 203a0512 branch p_mouse_multi_led_blink_count_no_limited ,blank 
-050e 6800cb2b fetch 1 ,mem_mouse_multi_led_blink_count 
-050f 203a0522 branch p_mouse_multi_led_blink_off ,blank 
-0510 1fe0ffff increase -1 ,pdata 
-0511 6000cb2b store 1 ,mem_mouse_multi_led_blink_count 
+04a8 6800cb2a fetch 1 ,mem_mouse_multi_led_blink_timer 
+04a9 1fe0ffff increase -1 ,pdata 
+04aa 6000cb2a store 1 ,mem_mouse_multi_led_blink_timer 
+04ab 247a0000 nrtn blank 
+04ac 6800cb29 fetch 1 ,mem_mouse_multi_led_blink_timer_init 
+04ad 6000cb2a store 1 ,mem_mouse_multi_led_blink_timer 
+04ae 6800cb2e fetch 1 ,mem_mouse_multi_led_blink_count_limited 
+04af 203a04b4 branch p_mouse_multi_led_blink_count_no_limited ,blank 
+04b0 6800cb2b fetch 1 ,mem_mouse_multi_led_blink_count 
+04b1 203a04c4 branch p_mouse_multi_led_blink_off ,blank 
+04b2 1fe0ffff increase -1 ,pdata 
+04b3 6000cb2b store 1 ,mem_mouse_multi_led_blink_count 
 
 p_mouse_multi_led_blink_count_no_limited:
-0512 6800cb26 fetch 1 ,mem_mouse_multi_led_state 
-0513 c0008524 beq on ,p_mouse_multi_led_off 
-0514 c0000516 beq off ,p_mouse_multi_led_on 
-0515 20600000 rtn 
+04b4 6800cb26 fetch 1 ,mem_mouse_multi_led_state 
+04b5 c00084c6 beq on ,p_mouse_multi_led_off 
+04b6 c00004b8 beq off ,p_mouse_multi_led_on 
+04b7 20600000 rtn 
 
 p_mouse_multi_led_on:
-0516 704b2601 jam on ,mem_mouse_multi_led_state 
-0517 6800c720 fetch 1 ,mem_device_flag 
-0518 c001051e beq mode_24g_device ,p_mouse_multi_down_led_on 
+04b8 704b2601 jam on ,mem_mouse_multi_led_state 
+04b9 6800c720 fetch 1 ,mem_device_flag 
+04ba c00104c0 beq mode_24g_device ,p_mouse_multi_down_led_on 
 
 p_mouse_multi_up_led_on:
-0519 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
-051a 79200407 set1 7 ,temp 
-051b 2040680e call gpio_config_output 
-051c 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
-051d 20206829 branch gpio_out_active 
+04bb 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+04bc 79200407 set1 7 ,temp 
+04bd 2040680e call gpio_config_output 
+04be 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+04bf 20206829 branch gpio_out_active 
 
 p_mouse_multi_down_led_on:
-051e 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
-051f 2040680e call gpio_config_output 
-0520 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
-0521 20206825 branch gpio_out_inactive 
+04c0 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+04c1 2040680e call gpio_config_output 
+04c2 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+04c3 20206825 branch gpio_out_inactive 
 
 p_mouse_multi_led_blink_off:
-0522 58000000 setarg 0 
-0523 6001cb2a store 3 ,mem_mouse_multi_led_blink_timer 
+04c4 58000000 setarg 0 
+04c5 6001cb2a store 3 ,mem_mouse_multi_led_blink_timer 
 
 p_mouse_multi_led_off:
-0524 6800cb2b fetch 1 ,mem_mouse_multi_led_blink_count 
-0525 243a0528 nbranch p_mouse_multi_led_off_wait_blink_over ,blank 
-0526 704b2400 jam 0 ,mem_mouse_multi_led_blink_enable 
-0527 704b2700 jam 0 ,mem_mouse_multi_led_type 
+04c6 6800cb2b fetch 1 ,mem_mouse_multi_led_blink_count 
+04c7 243a04ca nbranch p_mouse_multi_led_off_wait_blink_over ,blank 
+04c8 704b2400 jam 0 ,mem_mouse_multi_led_blink_enable 
+04c9 704b2700 jam 0 ,mem_mouse_multi_led_type 
 
 p_mouse_multi_led_off_wait_blink_over:
-0528 704b2d00 jam 0 ,mem_mouse_multi_led_on_timer 
-0529 704b2600 jam off ,mem_mouse_multi_led_state 
-052a 202000ed branch p_mouse_multi_led_gpio_set_float 
+04ca 704b2d00 jam 0 ,mem_mouse_multi_led_on_timer 
+04cb 704b2600 jam off ,mem_mouse_multi_led_state 
+04cc 202000d4 branch p_mouse_multi_led_gpio_set_float 
 
 p_mouse_mode_bt_device1_multi_led_on:
 
 p_mouse_mode_24g_device_multi_led_on:
-052b 704b2f01 jam 1 ,mem_mouse_multi_led_on_poweron2s_flag 
-052c 704b2401 jam on ,mem_mouse_multi_led_blink_enable 
-052d 704b2700 jam multi_led_on ,mem_mouse_multi_led_type 
-052e 704b2d00 jam 0 ,mem_mouse_multi_led_on_timer 
-052f 20600000 rtn 
-
-p_mouse_mode_bt_device_blink_5s:
-
-p_mouse_mode_24g_device_blink_5s:
-0530 704b2b1e jam 30 ,mem_mouse_multi_led_blink_count 
-0531 20200540 branch p_mouse_dpi_multi_led_blink 
-
-p_mouse_mode_bt_device1_led_blink:
-0532 704b2905 jam 5 ,mem_mouse_multi_led_blink_timer_init 
-0533 20200535 branch p_mouse_discovery_multi_led_blink2 
+04cd 704b2f01 jam 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+04ce 704b2401 jam on ,mem_mouse_multi_led_blink_enable 
+04cf 704b2700 jam multi_led_on ,mem_mouse_multi_led_type 
+04d0 704b2d00 jam 0 ,mem_mouse_multi_led_on_timer 
+04d1 20600000 rtn 
 
 p_mouse_discovery_multi_led_blink:
-0534 704b2903 jam 3 ,mem_mouse_multi_led_blink_timer_init 
+04d2 704b2903 jam 3 ,mem_mouse_multi_led_blink_timer_init 
 
 p_mouse_discovery_multi_led_blink2:
-0535 704b2b01 jam 1 ,mem_mouse_multi_led_blink_count 
+04d3 704b2b01 jam 1 ,mem_mouse_multi_led_blink_count 
 
 p_mouse_multi_led_blink_enable:
-0536 704b2a01 jam 1 ,mem_mouse_multi_led_blink_timer 
-0537 704b2401 jam on ,mem_mouse_multi_led_blink_enable 
-0538 704b2701 jam multi_led_blink ,mem_mouse_multi_led_type 
-0539 20600000 rtn 
+04d4 704b2a01 jam 1 ,mem_mouse_multi_led_blink_timer 
+04d5 704b2401 jam on ,mem_mouse_multi_led_blink_enable 
+04d6 704b2701 jam multi_led_blink ,mem_mouse_multi_led_type 
+04d7 20600000 rtn 
 
 p_mouse_discovey_led_blink_off:
-053a 704b2b00 jam 0 ,mem_mouse_multi_led_blink_count 
-053b 6800cb2d fetch 1 ,mem_mouse_multi_led_on_timer 
-053c 247a0000 nrtn blank 
-053d 6800cb2f fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
-053e 247a0000 nrtn blank 
-053f 20200522 branch p_mouse_multi_led_blink_off 
+04d8 704b2b00 jam 0 ,mem_mouse_multi_led_blink_count 
+04d9 6800cb2d fetch 1 ,mem_mouse_multi_led_on_timer 
+04da 247a0000 nrtn blank 
+04db 6800cb2f fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+04dc 247a0000 nrtn blank 
+04dd 202004c4 branch p_mouse_multi_led_blink_off 
 
 p_mouse_dpi_multi_led_blink:
-0540 704b2905 jam 5 ,mem_mouse_multi_led_blink_timer_init 
-0541 704b2e01 jam 1 ,mem_mouse_multi_led_blink_count_limited 
-0542 20200536 branch p_mouse_multi_led_blink_enable 
+04de 704b2905 jam 5 ,mem_mouse_multi_led_blink_timer_init 
+04df 704b2e01 jam 1 ,mem_mouse_multi_led_blink_count_limited 
+04e0 202004d4 branch p_mouse_multi_led_blink_enable 
 
 p_mouse_adc_read:
-0543 6800c6ce fetch 1 ,mem_adc_read_timer 
-0544 1fe0fe01 increase 1 ,pdata 
-0545 6000c6ce store 1 ,mem_adc_read_timer 
-0546 1fe67c0a sub pdata ,10 ,null 
-0547 20610000 rtn positive 
-0548 204068a8 call adc_init_data 
-0549 7046ce00 jam 0 ,mem_adc_read_timer 
-054a 204068eb call adc_set_mode 
-054b 20406908 call vdd_calculate_by_mode 
-054c 6001470f store 2 ,mem_mouse_vdd_now_vol 
-054d da204709 arg mem_mouse_vdd_calculate_set ,rega 
-054e 2040055b call p_adc_bat_percent_lowpower_out 
-054f 6800c231 fetch 1 ,mem_adc_power_flag 
-0550 c280b40a bbit1 1 ,app_enter_hibernate 
-0551 c3000554 bbit0 0 ,p_mouse_adc_no_low_voltage 
-0552 704afd01 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
-0553 202043e7 branch mouse_adc_low_voltage 
+04e1 6800c6ce fetch 1 ,mem_adc_read_timer 
+04e2 1fe0fe01 increase 1 ,pdata 
+04e3 6000c6ce store 1 ,mem_adc_read_timer 
+04e4 1fe67c0a sub pdata ,10 ,null 
+04e5 20610000 rtn positive 
+04e6 204068a8 call adc_init_data 
+04e7 7046ce00 jam 0 ,mem_adc_read_timer 
+04e8 204068eb call adc_set_mode 
+04e9 20406908 call vdd_calculate_by_mode 
+04ea 6001470f store 2 ,mem_mouse_vdd_now_vol 
+04eb da204709 arg mem_mouse_vdd_calculate_set ,rega 
+04ec 204004f9 call p_adc_bat_percent_lowpower_out 
+04ed 6800c231 fetch 1 ,mem_adc_power_flag 
+04ee c280b40a bbit1 1 ,app_enter_hibernate 
+04ef c30004f2 bbit0 0 ,p_mouse_adc_no_low_voltage 
+04f0 704afd01 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
+04f1 202043e7 branch mouse_adc_low_voltage 
 
 p_mouse_adc_no_low_voltage:
-0554 204043e9 call mouse_adc_no_low_voltage 
-0555 6800cafd fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
-0556 207a0000 rtn blank 
-0557 704afd00 jam 0 ,mem_mouse_adc_last_low_voltage_flag 
+04f2 204043e9 call mouse_adc_no_low_voltage 
+04f3 6800cafd fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
+04f4 207a0000 rtn blank 
+04f5 704afd00 jam 0 ,mem_mouse_adc_last_low_voltage_flag 
 
 p_mouse_adc_low_volatage_led_off:
-0558 6800c6ef fetch 1 ,mem_config_low_voltage_alarm_gpio 
-0559 6000c715 store 1 ,mem_mouse_struct_led_gpio 
-055a 20200522 branch p_mouse_multi_led_blink_off 
+04f6 6800c6ef fetch 1 ,mem_config_low_voltage_alarm_gpio 
+04f7 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+04f8 202004c4 branch p_mouse_multi_led_blink_off 
 
 p_adc_bat_percent_lowpower_out:
-055b ea240000 ifetch 8 ,rega 
-055c 60040a9a store 8 ,mem_pdatatemp 
-055d 68090a9c fetcht 2 ,mem_pdatatemp + 2 
-055e 68010aa0 fetch 2 ,mem_pdatatemp + 6 
-055f 98467c00 isub temp ,null 
-0560 24216944 nbranch adc_set_no_power_flag ,positive 
-0561 68090a9e fetcht 2 ,mem_pdatatemp + 4 
-0562 98467c00 isub temp ,null 
-0563 24216940 nbranch adc_set_low_power_flag ,positive 
+04f9 ea240000 ifetch 8 ,rega 
+04fa 60040a9a store 8 ,mem_pdatatemp 
+04fb 68090a9c fetcht 2 ,mem_pdatatemp + 2 
+04fc 68010aa0 fetch 2 ,mem_pdatatemp + 6 
+04fd 98467c00 isub temp ,null 
+04fe 24216944 nbranch adc_set_no_power_flag ,positive 
+04ff 68090a9e fetcht 2 ,mem_pdatatemp + 4 
+0500 98467c00 isub temp ,null 
+0501 24216940 nbranch adc_set_low_power_flag ,positive 
 
 p_adc_clear_low_power_flag:
-0564 6800c231 fetch 1 ,mem_adc_power_flag 
-0565 793ffe00 set0 0 ,pdata 
-0566 6000c231 store 1 ,mem_adc_power_flag 
-0567 20600000 rtn 
+0502 6800c231 fetch 1 ,mem_adc_power_flag 
+0503 793ffe00 set0 0 ,pdata 
+0504 6000c231 store 1 ,mem_adc_power_flag 
+0505 20600000 rtn 
 
 p_mouse_low_voltage_led_timer:
-0568 6800cb38 fetch 1 ,mem_low_power_led_blink_flag 
-0569 247a0000 nrtn blank 
-056a 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
-056b c4020000 rtnbit0 mouse_low_voltage_flag 
-056c 68014682 fetch 2 ,mem_ui_state_map 
-056d c3858000 rtnbit1 ui_state_ble_adv 
-056e c3830000 rtnbit1 ui_state_bt_discovery 
-056f 6800c6ef fetch 1 ,mem_config_low_voltage_alarm_gpio 
-0570 6000c715 store 1 ,mem_mouse_struct_led_gpio 
-0571 58249f00 setarg g24_long_sleep_step2 
-0572 6001cc21 store 3 ,mem_24g_enter_hibernate 
-0573 6800c6cf fetch 1 ,mem_adc_low_volatage_led_timer_count 
-0574 1fe0fe01 pincrease 1 
-0575 6000c6cf store 1 ,mem_adc_low_volatage_led_timer_count 
-0576 c0028522 beq 5 ,p_mouse_multi_led_blink_off 
-0577 1fe67c0a sub pdata ,10 ,null 
-0578 2421057a nbranch p_mouse_adc_low_volatage_led_timer_count_clean ,positive 
-0579 20600000 rtn 
+0506 6800cb38 fetch 1 ,mem_low_power_led_blink_flag 
+0507 247a0000 nrtn blank 
+0508 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+0509 c4020000 rtnbit0 mouse_low_voltage_flag 
+050a 68014682 fetch 2 ,mem_ui_state_map 
+050b c3858000 rtnbit1 ui_state_ble_adv 
+050c c3830000 rtnbit1 ui_state_bt_discovery 
+050d 6800c6ef fetch 1 ,mem_config_low_voltage_alarm_gpio 
+050e 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+050f 58249f00 setarg g24_long_sleep_step2 
+0510 6001cc21 store 3 ,mem_24g_enter_hibernate 
+0511 6800c6cf fetch 1 ,mem_adc_low_volatage_led_timer_count 
+0512 1fe0fe01 pincrease 1 
+0513 6000c6cf store 1 ,mem_adc_low_volatage_led_timer_count 
+0514 c00284c4 beq 5 ,p_mouse_multi_led_blink_off 
+0515 1fe67c0a sub pdata ,10 ,null 
+0516 24210518 nbranch p_mouse_adc_low_volatage_led_timer_count_clean ,positive 
+0517 20600000 rtn 
 
 p_mouse_adc_low_volatage_led_timer_count_clean:
-057a 7046cf01 jam 1 ,mem_adc_low_volatage_led_timer_count 
-057b 20200516 branch p_mouse_multi_led_on 
+0518 7046cf01 jam 1 ,mem_adc_low_volatage_led_timer_count 
+0519 202004b8 branch p_mouse_multi_led_on 
 
 p_low_power_no_data_off_led_time:
-057c 6800cb37 fetch 1 ,mem_low_power_check_count 
-057d 1fe0fe01 increase 1 ,pdata 
-057e 6000cb37 store 1 ,mem_low_power_check_count 
-057f 1fe67c08 sub pdata ,low_voltage_led_count ,null 
-0580 20610000 rtn positive 
+051a 6800cb37 fetch 1 ,mem_low_power_check_count 
+051b 1fe0fe01 increase 1 ,pdata 
+051c 6000cb37 store 1 ,mem_low_power_check_count 
+051d 1fe67c08 sub pdata ,low_voltage_led_count ,null 
+051e 20610000 rtn positive 
 
 p_low_power_no_data_off_led_time_nolimited:
-0581 704b3800 jam 0 ,mem_low_power_led_blink_flag 
-0582 704b3696 jam 0x96 ,mem_low_power_no_data_off_led_time 
-0583 20600000 rtn 
+051f 704b3800 jam 0 ,mem_low_power_led_blink_flag 
+0520 704b3696 jam 0x96 ,mem_low_power_no_data_off_led_time 
+0521 20600000 rtn 
 
 p_low_power_nodata_off_led_time_check:
-0584 da604b36 arg mem_low_power_no_data_off_led_time ,regc 
-0585 da400587 arg p_mouse_check_low_power_nodata_timeout ,regb 
-0586 2020336d branch timer_single_step 
+0522 da604b36 arg mem_low_power_no_data_off_led_time ,regc 
+0523 da400525 arg p_mouse_check_low_power_nodata_timeout ,regb 
+0524 2020336d branch timer_single_step 
 
 p_mouse_check_low_power_nodata_timeout:
-0587 58604800 setarg g24_long_sleep_step3 
-0588 6001cc21 store 3 ,mem_24g_enter_hibernate 
-0589 704b3801 jam 1 ,mem_low_power_led_blink_flag 
-058a 20200558 branch p_mouse_adc_low_volatage_led_off 
+0525 58604800 setarg g24_long_sleep_step3 
+0526 6001cc21 store 3 ,mem_24g_enter_hibernate 
+0527 704b3801 jam 1 ,mem_low_power_led_blink_flag 
+0528 202004f6 branch p_mouse_adc_low_volatage_led_off 
 
 p_mouse_seting_dpi:
 
 p_mouse_seting_sensor_type:
-058b 6800c6e0 fetch 1 ,mem_config_sensor_type 
-058c c00405a1 beq p8009 ,p_mouse_seting_8009_dpi 
-058d c00205a8 beq p3212 ,p_mouse_seting_3212_dpi 
-058e c00105ad beq ka8 ,p_mouse_seting_ka8_dpi 
+0529 6800c6e0 fetch 1 ,mem_config_sensor_type 
+052a c004053f beq p8009 ,p_mouse_seting_8009_dpi 
+052b c0020546 beq p3212 ,p_mouse_seting_3212_dpi 
+052c c001054b beq ka8 ,p_mouse_seting_ka8_dpi 
 
 p_mouse_seting_3065xy_dpi:
-058f 6800c77a fetch 1 ,mem_mouse_dpi 
-0590 c0000597 beq mouse_dpi_level1 ,p_mouse_3065xy_set_cpi1 
-0591 c0008599 beq mouse_dpi_level2 ,p_mouse_3065xy_set_cpi2 
-0592 c001059b beq mouse_dpi_level3 ,p_mouse_3065xy_set_cpi3 
-0593 c001859d beq mouse_dpi_level4 ,p_mouse_3065xy_set_cpi4 
-0594 20600000 rtn 
+052d 6800c77a fetch 1 ,mem_mouse_dpi 
+052e c0000535 beq mouse_dpi_level1 ,p_mouse_3065xy_set_cpi1 
+052f c0008537 beq mouse_dpi_level2 ,p_mouse_3065xy_set_cpi2 
+0530 c0010539 beq mouse_dpi_level3 ,p_mouse_3065xy_set_cpi3 
+0531 c001853b beq mouse_dpi_level4 ,p_mouse_3065xy_set_cpi4 
+0532 20600000 rtn 
 
 p_mouse_dpi_store:
-0595 6000c6b5 store 1 ,mem_mouse_cpi_count 
-0596 20203dc1 branch mouse_p3205_dpi + 3 
+0533 6000c6b5 store 1 ,mem_mouse_cpi_count 
+0534 20203dc1 branch mouse_p3205_dpi + 3 
 
 p_mouse_3065xy_set_cpi1:
-0597 6800c77f fetch 1 ,mem_320x_dpi_1 
-0598 20200595 branch p_mouse_dpi_store 
+0535 6800c77f fetch 1 ,mem_320x_dpi_1 
+0536 20200533 branch p_mouse_dpi_store 
 
 p_mouse_3065xy_set_cpi2:
-0599 6800c77f fetch 1 ,mem_320x_dpi_1 
-059a 20200595 branch p_mouse_dpi_store 
+0537 6800c77f fetch 1 ,mem_320x_dpi_1 
+0538 20200533 branch p_mouse_dpi_store 
 
 p_mouse_3065xy_set_cpi3:
-059b 6800c77f fetch 1 ,mem_320x_dpi_1 
-059c 20200595 branch p_mouse_dpi_store 
+0539 6800c77f fetch 1 ,mem_320x_dpi_1 
+053a 20200533 branch p_mouse_dpi_store 
 
 p_mouse_3065xy_set_cpi4:
-059d 6800c782 fetch 1 ,mem_320x_dpi_4 
-059e 20200595 branch p_mouse_dpi_store 
+053b 6800c782 fetch 1 ,mem_320x_dpi_4 
+053c 20200533 branch p_mouse_dpi_store 
 
 p_mouse_3065xy_dpi_recount:
-059f 70477a02 jam mouse_dpi_level3 ,mem_mouse_dpi 
-05a0 20600000 rtn 
+053d 70477a02 jam mouse_dpi_level3 ,mem_mouse_dpi 
+053e 20600000 rtn 
 
 p_mouse_seting_8009_dpi:
-05a1 6800c77a fetch 1 ,mem_mouse_dpi 
-05a2 c00085a6 beq mouse_dpi_level2 ,p_mouse_8009_set_cpi1 
-05a3 c001bd88 beq mouse_dpi_level4 ,mouse_set_cpi2 
-05a4 c0013d8c beq mouse_dpi_level3 ,mouse_set_cpi3 
-05a5 20203d8a branch mouse_set_cpi1 
+053f 6800c77a fetch 1 ,mem_mouse_dpi 
+0540 c0008544 beq mouse_dpi_level2 ,p_mouse_8009_set_cpi1 
+0541 c001bd88 beq mouse_dpi_level4 ,mouse_set_cpi2 
+0542 c0013d8c beq mouse_dpi_level3 ,mouse_set_cpi3 
+0543 20203d8a branch mouse_set_cpi1 
 
 p_mouse_8009_set_cpi1:
-05a6 7046b500 jam 0 ,mem_mouse_cpi_count 
-05a7 20203dc1 branch mouse_p3205_dpi + 3 
+0544 7046b500 jam 0 ,mem_mouse_cpi_count 
+0545 20203dc1 branch mouse_p3205_dpi + 3 
 
 p_mouse_seting_3212_dpi:
-05a8 6800c77a fetch 1 ,mem_mouse_dpi 
-05a9 c0003d9d beq mouse_dpi_level1 ,mouse_set_p3212_cpi1 
-05aa c000bd9b beq mouse_dpi_level2 ,mouse_set_p3212_cpi2 
-05ab c001bda1 beq mouse_dpi_level4 ,mouse_set_p3212_cpi4 
-05ac 20203d9f branch mouse_set_p3212_cpi3 
+0546 6800c77a fetch 1 ,mem_mouse_dpi 
+0547 c0003d9d beq mouse_dpi_level1 ,mouse_set_p3212_cpi1 
+0548 c000bd9b beq mouse_dpi_level2 ,mouse_set_p3212_cpi2 
+0549 c001bda1 beq mouse_dpi_level4 ,mouse_set_p3212_cpi4 
+054a 20203d9f branch mouse_set_p3212_cpi3 
 
 p_mouse_seting_ka8_dpi:
-05ad 6800c77a fetch 1 ,mem_mouse_dpi 
-05ae c000bd88 beq mouse_dpi_level2 ,mouse_set_cpi2 
-05af c0003d8a beq mouse_dpi_level1 ,mouse_set_cpi1 
-05b0 c00185b2 beq mouse_dpi_level4 ,p_mouse_ka8_set_cpi3 
-05b1 20203d8e branch mouse_set_cpi4 
+054b 6800c77a fetch 1 ,mem_mouse_dpi 
+054c c000bd88 beq mouse_dpi_level2 ,mouse_set_cpi2 
+054d c0003d8a beq mouse_dpi_level1 ,mouse_set_cpi1 
+054e c0018550 beq mouse_dpi_level4 ,p_mouse_ka8_set_cpi3 
+054f 20203d8e branch mouse_set_cpi4 
 
 p_mouse_ka8_set_cpi3:
-05b2 58000005 setarg 5 
-05b3 20203dbe branch mouse_p3205_dpi 
+0550 58000005 setarg 5 
+0551 20203dbe branch mouse_p3205_dpi 
 
 p_mouse_3205_dpi_recount:
-05b4 70477a02 jam mouse_dpi_level3 ,mem_mouse_dpi 
-05b5 20600000 rtn 
+0552 70477a02 jam mouse_dpi_level3 ,mem_mouse_dpi 
+0553 20600000 rtn 
 
 p_mouse_motion:
-05b6 78547c00 disable user 
-05b7 58000000 setarg 0 
-05b8 6003469b store 6 ,mem_mouse_x 
-05b9 20403fb5 call mouse_cheak_sensor_data 
-05ba 20404079 call mouse_zwheel 
-05bb 2040407e call mouse_t_zwheel 
-05bc 204005c2 call p_mouse_key 
-05bd 243405c0 nbranch p_mouse_motion_nodata ,user 
-05be 2040057c call p_low_power_no_data_off_led_time 
-05bf 20203fa0 branch mouse_motion + 9 
+0554 78547c00 disable user 
+0555 58000000 setarg 0 
+0556 6003469b store 6 ,mem_mouse_x 
+0557 20403fb5 call mouse_cheak_sensor_data 
+0558 20404079 call mouse_zwheel 
+0559 2040407e call mouse_t_zwheel 
+055a 20400562 call p_mouse_key 
+055b 2434055f nbranch p_mouse_motion_nodata ,user 
+055c 2040079d call p_drawing_optima 
+055d 2040051a call p_low_power_no_data_off_led_time 
+055e 20203fa0 branch mouse_motion + 9 
 
 p_mouse_motion_nodata:
-05c0 704b3700 jam 0 ,mem_low_power_check_count 
-05c1 20600000 rtn 
+055f 2040079a call p_drawing_optima_init 
+0560 704b3700 jam 0 ,mem_low_power_check_count 
+0561 20600000 rtn 
 
 p_mouse_key:
-05c2 204005c4 call p_mouse_check_key_gpio 
-05c3 2020409a branch mouse_key + 1 
+0562 20400564 call p_mouse_check_key_gpio 
+0563 2020409a branch mouse_key + 1 
 
 p_mouse_check_key_gpio:
-05c4 da200000 arg 0 ,rega 
-05c5 204005c9 call p_mouse_check_lkey_gpio 
-05c6 204005cf call p_mouse_check_rkey_gpio 
-05c7 204005d5 call p_mouse_check_mkey_gpio 
-05c8 2020408e branch mouse_check_key_gpio_output 
+0564 da200000 arg 0 ,rega 
+0565 20400569 call p_mouse_check_lkey_gpio 
+0566 2040056f call p_mouse_check_rkey_gpio 
+0567 20400575 call p_mouse_check_mkey_gpio 
+0568 2020408e branch mouse_check_key_gpio_output 
 
 p_mouse_check_lkey_gpio:
-05c9 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
-05ca 204005e4 call p_gpio_set_input_pu 
-05cb 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
-05cc 2040681d call gpio_get_bit 
-05cd 7920a200 setflag true ,0 ,rega 
-05ce 20600000 rtn 
+0569 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
+056a 20400584 call p_gpio_set_input_pu 
+056b 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
+056c 2040681d call gpio_get_bit 
+056d 7920a200 setflag true ,0 ,rega 
+056e 20600000 rtn 
 
 p_mouse_check_rkey_gpio:
-05cf 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
-05d0 204005e4 call p_gpio_set_input_pu 
-05d1 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
-05d2 2040681d call gpio_get_bit 
-05d3 7920a201 setflag true ,1 ,rega 
-05d4 20600000 rtn 
+056f 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
+0570 20400584 call p_gpio_set_input_pu 
+0571 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
+0572 2040681d call gpio_get_bit 
+0573 7920a201 setflag true ,1 ,rega 
+0574 20600000 rtn 
 
 p_mouse_check_mkey_gpio:
-05d5 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
-05d6 204005e4 call p_gpio_set_input_pu 
-05d7 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
-05d8 2040681d call gpio_get_bit 
-05d9 7920a202 setflag true ,2 ,rega 
-05da 20600000 rtn 
+0575 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
+0576 20400584 call p_gpio_set_input_pu 
+0577 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
+0578 2040681d call gpio_get_bit 
+0579 7920a202 setflag true ,2 ,rega 
+057a 20600000 rtn 
 
 p_gpio_set_input_pd:
-05db 793f8407 set0 gpio_active_bit ,temp 
-05dc d8a08078 arg core_gpio_pu0 ,contw 
-05dd 20406830 call gpio_set_bit 
-05de 79200407 set1 gpio_active_bit ,temp 
+057b 793f8407 set0 gpio_active_bit ,temp 
+057c d8a08078 arg core_gpio_pu0 ,contw 
+057d 20406830 call gpio_set_bit 
+057e 79200407 set1 gpio_active_bit ,temp 
 
 p_gpio_set_input_pd4:
-05df d8a0807c arg core_gpio_pd0 ,contw 
-05e0 20406830 call gpio_set_bit 
-05e1 793f8407 set0 gpio_active_bit ,temp 
-05e2 d8a08070 arg core_gpio_oe0 ,contw 
-05e3 20206830 branch gpio_set_bit 
+057f d8a0807c arg core_gpio_pd0 ,contw 
+0580 20406830 call gpio_set_bit 
+0581 793f8407 set0 gpio_active_bit ,temp 
+0582 d8a08070 arg core_gpio_oe0 ,contw 
+0583 20206830 branch gpio_set_bit 
 
 p_gpio_set_input_pu:
-05e4 79200407 set1 gpio_active_bit ,temp 
+0584 79200407 set1 gpio_active_bit ,temp 
 
 p_gpio_set_input_pu1:
-05e5 d8a08078 arg core_gpio_pu0 ,contw 
-05e6 20406830 call gpio_set_bit 
-05e7 793f8407 set0 gpio_active_bit ,temp 
-05e8 202005df branch p_gpio_set_input_pd4 
+0585 d8a08078 arg core_gpio_pu0 ,contw 
+0586 20406830 call gpio_set_bit 
+0587 793f8407 set0 gpio_active_bit ,temp 
+0588 2020057f branch p_gpio_set_input_pd4 
 
 p_mouse_select_device_button_gpio_set_suspend:
-05e9 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+0589 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
 
 p_mouse_set_gpio_suspend2:
-05ea 793f8407 set0 gpio_active_bit ,temp 
-05eb 202005e5 branch p_gpio_set_input_pu1 
+058a 793f8407 set0 gpio_active_bit ,temp 
+058b 20200585 branch p_gpio_set_input_pu1 
 
 p_mouse_bb_event_discovery_btn:
-05ec 204004f3 call p_mouse_null_enter_hibernate_disable 
-05ed 280ffe26 isolate1 mark_24g ,mark 
-05ee 204081ef call p_g24_check_51cmd_stop_24g ,true 
-05ef 2020426d branch mouse_bb_event_discovery_btn + 1 
+058c 20400495 call p_mouse_null_enter_hibernate_disable 
+058d 280ffe26 isolate1 mark_24g ,mark 
+058e 204081c6 call p_g24_check_51cmd_stop_24g ,true 
+058f 2020426d branch mouse_bb_event_discovery_btn + 1 
 
 p_le_addr_random_config:
-05f0 7011c781 jam zcode_81 ,mem_zcode_temp_param0 
-05f1 202007db branch p_zcode_entrance 
+0590 7011c781 jam zcode_81 ,mem_zcode_temp_param0 
+0591 2020077b branch p_zcode_entrance 
 
 p_mouse_start_discovery:
-05f2 7011c750 jam zcode_50 ,mem_zcode_temp_param0 
-05f3 202007db branch p_zcode_entrance 
+0592 7011c750 jam zcode_50 ,mem_zcode_temp_param0 
+0593 2020077b branch p_zcode_entrance 
 
 p_mouse_load_random_addr_increase_count:
-05f4 204003c4 call p_flash_release_deep_power_down 
-05f5 d8400002 arg 2 ,temp 
-05f6 da2047c2 arg mem_random_addr_increase_count ,rega 
-05f7 da40005f arg mouse_random_addr_count_eeprom_offset ,regb 
-05f8 6801c700 fetch 3 ,mem_flash_base 
-05f9 9a40fe00 iadd regb ,pdata 
-05fa 20206562 branch spid_read_flash 
+0594 2040036e call p_flash_release_deep_power_down 
+0595 d8400002 arg 2 ,temp 
+0596 da2047c2 arg mem_random_addr_increase_count ,rega 
+0597 da40005f arg mouse_random_addr_count_eeprom_offset ,regb 
+0598 6801c700 fetch 3 ,mem_flash_base 
+0599 9a40fe00 iadd regb ,pdata 
+059a 20206562 branch spid_read_flash 
 
 p_le_adv_data_update:
-05fb d8a0437b arg mem_le_adv_data + 11 ,contw 
-05fc df200013 arg 19 ,loopcnt 
-05fd 20407f01 call memcpy 
-05fe 202057b8 branch le_modified_name_adv 
+059b d8a0437b arg mem_le_adv_data + 11 ,contw 
+059c df200013 arg 19 ,loopcnt 
+059d 20407f01 call memcpy 
+059e 202057b8 branch le_modified_name_adv 
 
 p_mouse_stop_discovery:
-05ff 58000000 setarg 0 
-0600 600146ac store 2 ,mem_mouse_discovery_timer 
-0601 20400354 call p_mouse_sensor_poweron 
-0602 6800c092 fetch 1 ,mem_device_option 
-0603 2feffe00 isolate1 mode_3_mouse ,pdata 
-0604 2040c2d7 call mouse_stop_bt3_discovery ,true 
-0605 2020053a branch p_mouse_discovey_led_blink_off 
+059f 58000000 setarg 0 
+05a0 600146ac store 2 ,mem_mouse_discovery_timer 
+05a1 204002fe call p_mouse_sensor_poweron 
+05a2 6800c092 fetch 1 ,mem_device_option 
+05a3 2feffe00 isolate1 mode_3_mouse ,pdata 
+05a4 2040c2d7 call mouse_stop_bt3_discovery ,true 
+05a5 202004d8 branch p_mouse_discovey_led_blink_off 
 
 p_le_slave_match:
-0606 6800c50f fetch 1 ,mem_le_md_count 
-0607 1fe0fe01 pincrease 1 
-0608 6000c50f store 1 ,mem_le_md_count 
-0609 c0065395 beq le_md_max_count ,le_slave_cont 
-060a 204055aa call le_acknowledge 
-060b 2040561e call le_prepare_tx 
-060c 2040077e call power_ctrl_start 
-060d 2020538f branch le_slave_match + 7 
+05a6 6800c50f fetch 1 ,mem_le_md_count 
+05a7 1fe0fe01 pincrease 1 
+05a8 6000c50f store 1 ,mem_le_md_count 
+05a9 c0065395 beq le_md_max_count ,le_slave_cont 
+05aa 204055aa call le_acknowledge 
+05ab 2040561e call le_prepare_tx 
+05ac 2040071e call power_ctrl_start 
+05ad 2020538f branch le_slave_match + 7 
 
 p_le_next_adv_channel:
-060e 68008016 fetch 1 ,mem_le_ch_mapped 
-060f 1fe0fe01 increase 1 ,pdata 
-0610 60008016 store 1 ,mem_le_ch_mapped 
-0611 c1940000 rtnne 40 
-0612 70001625 jam 37 ,mem_le_ch_mapped 
-0613 20600000 rtn 
+05ae 68008016 fetch 1 ,mem_le_ch_mapped 
+05af 1fe0fe01 increase 1 ,pdata 
+05b0 60008016 store 1 ,mem_le_ch_mapped 
+05b1 c1940000 rtnne 40 
+05b2 70001625 jam 37 ,mem_le_ch_mapped 
+05b3 20600000 rtn 
 
 p_le_receive_skip:
-0614 204029bb call save_rssi 
-0615 2040006b call p_rssi_signal 
-0616 202054a3 branch le_receive_skip + 2 
+05b4 204029bb call save_rssi 
+05b5 2040006b call p_rssi_signal 
+05b6 202054a3 branch le_receive_skip + 2 
 
 p_le_update_param:
-0617 7011c740 jam zcode_40 ,mem_zcode_temp_param0 
-0618 202007db branch p_zcode_entrance 
+05b7 7011c740 jam zcode_40 ,mem_zcode_temp_param0 
+05b8 2020077b branch p_zcode_entrance 
 
 p_le_update_channel_map:
-0619 7011c741 jam zcode_41 ,mem_zcode_temp_param0 
-061a 202007db branch p_zcode_entrance 
+05b9 7011c741 jam zcode_41 ,mem_zcode_temp_param0 
+05ba 2020077b branch p_zcode_entrance 
 
 p_le_prepare_tx:
-061b 68008456 fetch 1 ,mem_le_arq 
-061c c282862f bbit1 wak ,p_le_prepare_tx_wak 
-061d 20400770 call power_ctrl_pac_succ_incrs 
-061e 6800c78e fetch 1 ,mem_empty_count 
-061f 243a0625 nbranch p_le_send_empyt ,blank 
-0620 6800843f fetch 1 ,mem_le_state 
-0621 c3020629 bbit0 lestate_encryption ,p_le_tx_4 
-0622 680082da fetch 1 ,mem_le_rxbuf + 1 
-0623 203a0629 branch p_le_tx_4 ,blank 
-0624 20205664 branch le_send_empty 
+05bb 68008456 fetch 1 ,mem_le_arq 
+05bc c28285cf bbit1 wak ,p_le_prepare_tx_wak 
+05bd 20400710 call power_ctrl_pac_succ_incrs 
+05be 6800c78e fetch 1 ,mem_empty_count 
+05bf 243a05c5 nbranch p_le_send_empyt ,blank 
+05c0 6800843f fetch 1 ,mem_le_state 
+05c1 c30205c9 bbit0 lestate_encryption ,p_le_tx_4 
+05c2 680082da fetch 1 ,mem_le_rxbuf + 1 
+05c3 203a05c9 branch p_le_tx_4 ,blank 
+05c4 20205664 branch le_send_empty 
 
 p_le_send_empyt:
-0625 6800c78e fetch 1 ,mem_empty_count 
-0626 1fe0ffff increase -1 ,pdata 
-0627 6000c78e store 1 ,mem_empty_count 
-0628 20205664 branch le_send_empty 
+05c5 6800c78e fetch 1 ,mem_empty_count 
+05c6 1fe0ffff increase -1 ,pdata 
+05c7 6000c78e store 1 ,mem_empty_count 
+05c8 20205664 branch le_send_empty 
 
 p_le_tx_4:
-0629 6800c4c4 fetch 1 ,mem_le_pairing_state 
-062a c082862c bne flag_le_pairing_after_auth ,p_in_le_tx_4 
-062b 70478e03 jam 3 ,mem_empty_count 
+05c9 6800c4c4 fetch 1 ,mem_le_pairing_state 
+05ca c08285cc bne flag_le_pairing_after_auth ,p_in_le_tx_4 
+05cb 70478e03 jam 3 ,mem_empty_count 
 
 p_in_le_tx_4:
-062c 20405892 call le_fifo_check_nearly_full 
-062d 205a0405 call p_mouse_data_pull ,blank 
-062e 20205622 branch le_prepare_tx + 4 
+05cc 20405892 call le_fifo_check_nearly_full 
+05cd 205a03af call p_mouse_data_pull ,blank 
+05ce 20205622 branch le_prepare_tx + 4 
 
 p_le_prepare_tx_wak:
-062f 20400631 call p_le_check_tx_retransmit_setmd 
-0630 2020063d branch p_le_power_ctrl_pac_succ_decrs 
+05cf 204005d1 call p_le_check_tx_retransmit_setmd 
+05d0 202005dd branch p_le_power_ctrl_pac_succ_decrs 
 
 p_le_check_tx_retransmit_setmd:
-0631 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-0632 1fe17e03 and pdata ,0x03 ,pdata 
-0633 c1818000 rtnne 0x03 
-0634 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
-0635 207a0000 rtn blank 
-0636 6800c3dd fetch 1 ,mem_le_txlen 
-0637 207a0000 rtn blank 
-0638 6800c3dc fetch 1 ,mem_le_txheader 
-0639 79207e04 set1 md ,pdata 
-063a 6000c3dc store 1 ,mem_le_txheader 
-063b 20405650 call le_set_md 
-063c 20600000 rtn 
+05d1 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+05d2 1fe17e03 and pdata ,0x03 ,pdata 
+05d3 c1818000 rtnne 0x03 
+05d4 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
+05d5 207a0000 rtn blank 
+05d6 6800c3dd fetch 1 ,mem_le_txlen 
+05d7 207a0000 rtn blank 
+05d8 6800c3dc fetch 1 ,mem_le_txheader 
+05d9 79207e04 set1 md ,pdata 
+05da 6000c3dc store 1 ,mem_le_txheader 
+05db 20405650 call le_set_md 
+05dc 20600000 rtn 
 
 p_le_power_ctrl_pac_succ_decrs:
-063d 20200774 branch power_ctrl_pac_succ_decrs 
+05dd 20200714 branch power_ctrl_pac_succ_decrs 
 
 p_mouse_le_reconn_write_enable_timer_reinit:
-063e 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
-063f 207a0000 rtn blank 
-0640 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-0641 1fe17e03 and pdata ,0x03 ,pdata 
-0642 c1018000 rtneq 0x03 
-0643 7046c601 jam 1 ,mem_le_start_encrypt_timer 
-0644 20600000 rtn 
+05de 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
+05df 207a0000 rtn blank 
+05e0 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+05e1 1fe17e03 and pdata ,0x03 ,pdata 
+05e2 c1018000 rtneq 0x03 
+05e3 7046c601 jam 1 ,mem_le_start_encrypt_timer 
+05e4 20600000 rtn 
 
 p_le_parse:
-0645 c6078000 rtnmark1 mark_old_packet 
-0646 20405890 call le_fifo_check_full 
-0647 247a0000 nrtn blank 
-0648 680082d9 fetch 1 ,mem_le_rxbuf 
-0649 1fe17e03 and pdata ,0x3 ,pdata 
-064a 6000c50c store 1 ,mem_le_packet_llid 
-064b e8c08000 ifetch 1 ,contr 
-064c 1fe17e1f and pdata ,0x1f ,pdata 
-064d 6000c50b store 1 ,mem_le_packet_size 
-064e 207a0000 rtn blank 
-064f 18c27e00 copy contr ,pdata 
-0650 6001450d store 2 ,mem_le_payload_ptr 
-0651 6800c50c fetch 1 ,mem_le_packet_llid 
-0652 c0018654 beq llid_le_ll ,p_le_parse_ll 
-0653 2020568d branch le_parse_l2cap 
+05e5 c6078000 rtnmark1 mark_old_packet 
+05e6 20405890 call le_fifo_check_full 
+05e7 247a0000 nrtn blank 
+05e8 680082d9 fetch 1 ,mem_le_rxbuf 
+05e9 1fe17e03 and pdata ,0x3 ,pdata 
+05ea 6000c50c store 1 ,mem_le_packet_llid 
+05eb e8c08000 ifetch 1 ,contr 
+05ec 1fe17e1f and pdata ,0x1f ,pdata 
+05ed 6000c50b store 1 ,mem_le_packet_size 
+05ee 207a0000 rtn blank 
+05ef 18c27e00 copy contr ,pdata 
+05f0 6001450d store 2 ,mem_le_payload_ptr 
+05f1 6800c50c fetch 1 ,mem_le_packet_llid 
+05f2 c00185f4 beq llid_le_ll ,p_le_parse_ll 
+05f3 2020568d branch le_parse_l2cap 
 
 p_le_parse_ll:
-0654 680082db fetch 1 ,mem_le_rxbuf + 2 
-0655 c0008657 beq ll_channel_map_req ,p_le_parse_channel_map_req 
-0656 20205c65 branch le_parse_ll + 1 
+05f4 680082db fetch 1 ,mem_le_rxbuf + 2 
+05f5 c00085f7 beq ll_channel_map_req ,p_le_parse_channel_map_req 
+05f6 20205c65 branch le_parse_ll + 1 
 
 p_le_parse_channel_map_req:
-0657 e8c28000 ifetch 5 ,contr 
-0658 6002c3ce store 5 ,mem_le_new_map 
-0659 e8c10000 ifetch 2 ,contr 
-065a 6001045f store 2 ,mem_le_instant 
-065b 20205c8a branch le_parse_channel_map_req + 7 
+05f7 e8c28000 ifetch 5 ,contr 
+05f8 6002c3ce store 5 ,mem_le_new_map 
+05f9 e8c10000 ifetch 2 ,contr 
+05fa 6001045f store 2 ,mem_le_instant 
+05fb 20205c8a branch le_parse_channel_map_req + 7 
 
 p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset:
-065c 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
-065d 6000c172 store 1 ,mem_lpm_mult 
-065e 6000c7c5 store 1 ,mem_lpm_mult_init 
-065f 20600000 rtn 
+05fc 6800c3d8 fetch 1 ,mem_le_new_connslavelatency 
+05fd 6000c172 store 1 ,mem_lpm_mult 
+05fe 6000c7c5 store 1 ,mem_lpm_mult_init 
+05ff 20600000 rtn 
 
 p_le_parse_l2cap:
-0660 e8c10000 ifetch 2 ,contr 
-0661 c0020664 beq le_l2cap_cid_att ,p_le_parse_att 
-0662 c0030691 beq le_l2cap_cid_smp ,p_le_parse_smp 
-0663 20205698 branch le_parse_l2cap + 11 
+0600 e8c10000 ifetch 2 ,contr 
+0601 c0020604 beq le_l2cap_cid_att ,p_le_parse_att 
+0602 c0030631 beq le_l2cap_cid_smp ,p_le_parse_smp 
+0603 20205698 branch le_parse_l2cap + 11 
 
 p_le_parse_att:
-0664 20407ea5 call store_contr 
-0665 2040063e call p_mouse_le_reconn_write_enable_timer_reinit 
-0666 20407e9f call get_contr 
-0667 e8c18000 ifetch 3 ,contr 
-0668 60018477 store 3 ,mem_le_att_opcode 
-0669 c0080673 beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
-066a 1fec8400 rshift8 pdata ,temp 
-066b 18467c24 sub temp ,0x24 ,null 
-066c 20210681 branch p_le_parse_att1 ,positive 
-066d d84047c6 arg mem_mouse_le_uuid_sup ,temp 
-066e 600944bc storet 2 ,mem_ui_le_uuid_table 
-066f 204058ad call le_parse_att + 2 
-0670 58008e7a setarg 0x8e7a 
-0671 600144bc store 2 ,mem_ui_le_uuid_table 
-0672 20600000 rtn 
+0604 20407ea5 call store_contr 
+0605 204005de call p_mouse_le_reconn_write_enable_timer_reinit 
+0606 20407e9f call get_contr 
+0607 e8c18000 ifetch 3 ,contr 
+0608 60018477 store 3 ,mem_le_att_opcode 
+0609 c0080613 beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
+060a 1fec8400 rshift8 pdata ,temp 
+060b 18467c24 sub temp ,0x24 ,null 
+060c 20210621 branch p_le_parse_att1 ,positive 
+060d d84047c6 arg mem_mouse_le_uuid_sup ,temp 
+060e 600944bc storet 2 ,mem_ui_le_uuid_table 
+060f 204058ad call le_parse_att + 2 
+0610 58008e7a setarg 0x8e7a 
+0611 600144bc store 2 ,mem_ui_le_uuid_table 
+0612 20600000 rtn 
 
 p_le_parse_att_read_by_group_type_request:
-0673 204059fa call le_parse_att_read_by_group_type_request 
-0674 20405879 call le_fifo_get_last_tx_ptr 
-0675 18c08c07 increase 7 ,contr 
-0676 e8c08000 ifetch 1 ,contr 
-0677 c1888000 rtnne attop_read_by_group_type_response 
-0678 18c08c05 increase 5 ,contr 
-0679 e8c10000 ifetch 2 ,contr 
-067a d8401812 arg uuid_service_hids ,temp 
-067b 98467c00 isub temp ,null 
-067c 24628000 nrtn zero 
-067d 18c08dfc increase -4 ,contr 
-067e 5800002b setarg 0x2b 
-067f e0c10000 istore 2 ,contr 
-0680 20600000 rtn 
+0613 204059fa call le_parse_att_read_by_group_type_request 
+0614 20405879 call le_fifo_get_last_tx_ptr 
+0615 18c08c07 increase 7 ,contr 
+0616 e8c08000 ifetch 1 ,contr 
+0617 c1888000 rtnne attop_read_by_group_type_response 
+0618 18c08c05 increase 5 ,contr 
+0619 e8c10000 ifetch 2 ,contr 
+061a d8401812 arg uuid_service_hids ,temp 
+061b 98467c00 isub temp ,null 
+061c 24628000 nrtn zero 
+061d 18c08dfc increase -4 ,contr 
+061e 5800002b setarg 0x2b 
+061f e0c10000 istore 2 ,contr 
+0620 20600000 rtn 
 
 p_le_parse_att1:
-0681 c0050683 beq attop_read_request ,p_le_parse_att_read_request 
-0682 202058ad branch le_parse_att + 2 
+0621 c0050623 beq attop_read_request ,p_le_parse_att_read_request 
+0622 202058ad branch le_parse_att + 2 
 
 p_le_parse_att_read_request:
-0683 68090478 fetcht 2 ,mem_le_att_handle 
-0684 6800c4e9 fetch 1 ,mem_le_configuration 
-0685 c281868a bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+0623 68090478 fetcht 2 ,mem_le_att_handle 
+0624 6800c4e9 fetch 1 ,mem_le_configuration 
+0625 c281862a bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
 
 p_le_send_att_read_response:
-0686 68010478 fetch 2 ,mem_le_att_handle 
-0687 c009da76 beq 0x13 ,le_send_att_error_response_notfound 
-0688 68090478 fetcht 2 ,mem_le_att_handle 
-0689 202059bf branch le_send_att_read_response 
+0626 68010478 fetch 2 ,mem_le_att_handle 
+0627 c009da76 beq 0x13 ,le_send_att_error_response_notfound 
+0628 68090478 fetcht 2 ,mem_le_att_handle 
+0629 202059bf branch le_send_att_read_response 
 
 p_le_send_att_read_response_check_auth:
-068a 680144fa fetch 2 ,mem_le_pairing_handle 
-068b 98467c00 isub temp ,null 
-068c 24228686 nbranch p_le_send_att_read_response ,zero 
-068d 20405a42 call le_check_encrypt_state 
-068e 24340686 nbranch p_le_send_att_read_response ,user 
-068f 70047a05 jam att_err_insufficient_authentication ,mem_le_err_code 
-0690 20205a77 branch le_send_att_error_response 
+062a 680144fa fetch 2 ,mem_le_pairing_handle 
+062b 98467c00 isub temp ,null 
+062c 24228626 nbranch p_le_send_att_read_response ,zero 
+062d 20405a42 call le_check_encrypt_state 
+062e 24340626 nbranch p_le_send_att_read_response ,user 
+062f 70047a05 jam att_err_insufficient_authentication ,mem_le_err_code 
+0630 20205a77 branch le_send_att_error_response 
 
 p_le_parse_smp:
-0691 e8c08000 ifetch 1 ,contr 
-0692 c0008695 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
-0693 c0028697 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
-0694 20205af6 branch le_parse_smp + 2 
+0631 e8c08000 ifetch 1 ,contr 
+0632 c0008635 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
+0633 c0028637 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+0634 20205af6 branch le_parse_smp + 2 
 
 p_le_parse_smp_pairing_request:
-0695 704b6701 jam 1 ,mem_le_send_security_request_flag 
-0696 20205b09 branch le_parse_smp_pairing_request 
+0635 704b6701 jam 1 ,mem_le_send_security_request_flag 
+0636 20205b09 branch le_parse_smp_pairing_request 
 
 p_le_parse_smp_pairing_failed:
-0697 7011c782 jam zcode_82 ,mem_zcode_temp_param0 
-0698 202007db branch p_zcode_entrance 
+0637 7011c782 jam zcode_82 ,mem_zcode_temp_param0 
+0638 2020077b branch p_zcode_entrance 
 
 p_le_adv_not_match:
-0699 68008016 fetch 1 ,mem_le_ch_mapped 
-069a c093d6f2 bne 39 ,le_adv_loop 
-069b 2040069f call p_le_adv_random_delay 
-069c d8e00000 arg le_adv_interval_timer ,queue 
-069d 68014482 fetch 2 ,mem_le_adv_interval 
-069e 20207f08 branch timer_init 
+0639 68008016 fetch 1 ,mem_le_ch_mapped 
+063a c093d6f2 bne 39 ,le_adv_loop 
+063b 2040063f call p_le_adv_random_delay 
+063c d8e00000 arg le_adv_interval_timer ,queue 
+063d 68014482 fetch 2 ,mem_le_adv_interval 
+063e 20207f08 branch timer_init 
 
 p_le_adv_random_delay:
-069f 180a7e00 random pdata 
-06a0 d84001ff arg 0x1ff ,temp 
-06a1 98417e00 iand temp ,pdata 
-06a2 1fe0fefa add pdata ,250 ,pdata 
-06a3 20203cbe branch delay 
+063f 180a7e00 random pdata 
+0640 d84001ff arg 0x1ff ,temp 
+0641 98417e00 iand temp ,pdata 
+0642 1fe0fefa add pdata ,250 ,pdata 
+0643 20203cbe branch delay 
 
 p_le_lpm_setmult:
-06a4 7855fc00 disable wake 
-06a5 203706a7 branch p_le_lpm_set_mult_attempt ,attempt 
-06a6 2436d806 nbranch le_lpm_lost ,match 
+0644 7855fc00 disable wake 
+0645 20370647 branch p_le_lpm_set_mult_attempt ,attempt 
+0646 2436d806 nbranch le_lpm_lost ,match 
 
 p_le_lpm_set_mult_attempt:
-06a7 20402bcb call lpm_match 
-06a8 680140c1 fetch 2 ,mem_rx_window_sniff 
-06a9 6001044d store 2 ,mem_le_receive_window 
-06aa 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
-06ab 2fe00603 compare 3 ,pdata ,3 
-06ac 2420abde nbranch lpm_mult_short ,true 
-06ad 202057fb branch le_lpm_set_mult_attempt + 3 
+0647 20402bcb call lpm_match 
+0648 680140c1 fetch 2 ,mem_rx_window_sniff 
+0649 6001044d store 2 ,mem_le_receive_window 
+064a 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+064b 2fe00603 compare 3 ,pdata ,3 
+064c 2420abde nbranch lpm_mult_short ,true 
+064d 202057fb branch le_lpm_set_mult_attempt + 3 
 
 p_le_mouse_bb_event_connect_complete:
-06ae 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
-06af 247a0000 nrtn blank 
-06b0 68008478 fetch 1 ,mem_le_att_handle 
-06b1 1fe67e1a sub pdata ,26 ,pdata 
-06b2 24628000 nrtn zero 
-06b3 20203d60 branch mouse_le_write_enable 
+064e 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
+064f 247a0000 nrtn blank 
+0650 68008478 fetch 1 ,mem_le_att_handle 
+0651 1fe67e1a sub pdata ,26 ,pdata 
+0652 24628000 nrtn zero 
+0653 20203d60 branch mouse_le_write_enable 
 
 p_twspi_reset:
-06b4 68108077 hfetch 1 ,core_gpio_out3 
-06b5 1fe17efd and_into 0xfd ,pdata 
-06b6 60108077 hstore 1 ,core_gpio_out3 
-06b7 68188073 hfetcht 1 ,core_gpio_oe3 
-06b8 18418402 or_into 0x2 ,temp 
-06b9 60188073 hstoret 1 ,core_gpio_oe3 
-06ba 204063ee call twspi_disable 
-06bb 184104fd and_into 0xfd ,temp 
-06bc 2000000d nop 13 
-06bd 204006c1 call p_twspi_enable 
-06be 60188073 hstoret 1 ,core_gpio_oe3 
-06bf 20600000 rtn 
+0654 68108077 hfetch 1 ,core_gpio_out3 
+0655 1fe17efd and_into 0xfd ,pdata 
+0656 60108077 hstore 1 ,core_gpio_out3 
+0657 68188073 hfetcht 1 ,core_gpio_oe3 
+0658 18418402 or_into 0x2 ,temp 
+0659 60188073 hstoret 1 ,core_gpio_oe3 
+065a 204063ee call twspi_disable 
+065b 184104fd and_into 0xfd ,temp 
+065c 2000000d nop 13 
+065d 20400661 call p_twspi_enable 
+065e 60188073 hstoret 1 ,core_gpio_oe3 
+065f 20600000 rtn 
 
 p_spid_init:
-06c0 204064dd call spid_init_common 
+0660 204064dd call spid_init_common 
 
 p_twspi_enable:
-06c1 68108081 hfetch 1 ,core_gpio_sel1 
-06c2 79207e00 set1 0 ,pdata 
-06c3 793ffe01 set0 1 ,pdata 
-06c4 793ffe03 set0 3 ,pdata 
-06c5 60108081 hstore 1 ,core_gpio_sel1 
-06c6 20600000 rtn 
+0661 68108081 hfetch 1 ,core_gpio_sel1 
+0662 79207e00 set1 0 ,pdata 
+0663 793ffe01 set0 1 ,pdata 
+0664 793ffe03 set0 3 ,pdata 
+0665 60108081 hstore 1 ,core_gpio_sel1 
+0666 20600000 rtn 
 
 p_page_wait_fhs_reply_ok:
-06c7 7011c700 jam zcode_00 ,mem_zcode_temp_param0 
-06c8 202007db branch p_zcode_entrance 
+0667 7011c700 jam zcode_00 ,mem_zcode_temp_param0 
+0668 2020077b branch p_zcode_entrance 
 
 p_role_switch_master:
-06c9 204021c9 call role_switch_check 
-06ca 24740000 nrtn user 
+0669 204021c9 call role_switch_check 
+066a 24740000 nrtn user 
 
 p_wait_role_switch_anchor:
-06cb 78547c00 disable user 
-06cc 70001120 jam param_newconnto ,mem_newconnto_counter 
-06cd 793f800b set0 mark_fhs_already_good ,mark 
-06ce 793f802d set0 mark_role_switch_receive_fhs ,mark 
+066b 78547c00 disable user 
+066c 70001120 jam param_newconnto ,mem_newconnto_counter 
+066d 793f800b set0 mark_fhs_already_good ,mark 
+066e 793f802d set0 mark_role_switch_receive_fhs ,mark 
 
 p_roles_waitfhs_loop:
-06cf 20402a4f call rf_setup_time_master_slot 
-06d0 204022e6 call master_recv_packet 
-06d1 c50586d6 bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
-06d2 20402455 call new_conn_timeout 
-06d3 243a06cf nbranch p_roles_waitfhs_loop ,blank 
-06d4 c51686df bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
-06d5 202021ec branch role_switch_fail_master 
+066f 20402a4f call rf_setup_time_master_slot 
+0670 204022e6 call master_recv_packet 
+0671 c5058676 bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
+0672 20402455 call new_conn_timeout 
+0673 243a066f nbranch p_roles_waitfhs_loop ,blank 
+0674 c516867f bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
+0675 202021ec branch role_switch_fail_master 
 
 p_roles_replyto_fhs:
-06d6 20402a4d call rf_setup_time_slave_slot 
-06d7 d8200010 arg type_id ,type 
-06d8 204022dc call master_send_packet 
-06d9 7920002d set1 mark_role_switch_receive_fhs ,mark 
-06da 793f800b set0 mark_fhs_already_good ,mark 
-06db 68008077 fetch 1 ,mem_amaddr 
-06dc 98000800 iforce am_addr 
-06dd 70001102 jam 2 ,mem_newconnto_counter 
-06de 202006cf branch p_roles_waitfhs_loop 
+0676 20402a4d call rf_setup_time_slave_slot 
+0677 d8200010 arg type_id ,type 
+0678 204022dc call master_send_packet 
+0679 7920002d set1 mark_role_switch_receive_fhs ,mark 
+067a 793f800b set0 mark_fhs_already_good ,mark 
+067b 68008077 fetch 1 ,mem_amaddr 
+067c 98000800 iforce am_addr 
+067d 70001102 jam 2 ,mem_newconnto_counter 
+067e 2020066f branch p_roles_waitfhs_loop 
 
 p_roles_replyto_fhs1:
-06df 68020165 fetch 4 ,mem_clke_bt 
-06e0 1fe0fe08 pincrease 8 
-06e1 60020165 store 4 ,mem_clke_bt 
-06e2 202021f8 branch roles_replyto_fhs + 4 
+067f 68020165 fetch 4 ,mem_clke_bt 
+0680 1fe0fe08 pincrease 8 
+0681 60020165 store 4 ,mem_clke_bt 
+0682 202021f8 branch roles_replyto_fhs + 4 
 
 p_process_dmh:
-06e3 c516264d bmark1 mark_first_packet ,end_of_packet 
-06e4 2020258f branch process_dmh + 1 
+0683 c516264d bmark1 mark_first_packet ,end_of_packet 
+0684 2020258f branch process_dmh + 1 
 
 p_quit_connection_cont:
-06e5 204033af call app_disconn_reason_collect_bt 
-06e6 204026e9 call sniff_exit 
-06e7 700a9902 jam bt_evt_bb_disconnected ,mem_fifo_temp 
-06e8 20407d86 call ui_ipc_send_event 
-06e9 20405cf7 call init_lmp_work 
-06ea 20404d6b call l2cap_init_work 
-06eb 2020246e branch quit_connection_cont + 8 
+0685 204033af call app_disconn_reason_collect_bt 
+0686 204026e9 call sniff_exit 
+0687 700a9902 jam bt_evt_bb_disconnected ,mem_fifo_temp 
+0688 20407d86 call ui_ipc_send_event 
+0689 20405cf7 call init_lmp_work 
+068a 20404d6b call l2cap_init_work 
+068b 2020246e branch quit_connection_cont + 8 
 
 p_prepare_tx:
-06ec 68008030 fetch 1 ,mem_state 
-06ed 2feffe00 isolate1 state_inconn ,pdata 
-06ee 204086f0 call p_bt_power_ctrl ,true 
-06ef 2020248a branch prepare_tx + 1 
+068c 68008030 fetch 1 ,mem_state 
+068d 2feffe00 isolate1 state_inconn ,pdata 
+068e 20408690 call p_bt_power_ctrl ,true 
+068f 2020248a branch prepare_tx + 1 
 
 p_bt_power_ctrl:
-06f0 68008047 fetch 1 ,mem_arq 
-06f1 2feffe03 isolate1 wack ,pdata 
-06f2 20408774 call power_ctrl_pac_succ_decrs ,true 
-06f3 24408770 ncall power_ctrl_pac_succ_incrs ,true 
-06f4 2020077e branch power_ctrl_start 
+0690 68008047 fetch 1 ,mem_arq 
+0691 2feffe03 isolate1 wack ,pdata 
+0692 20408714 call power_ctrl_pac_succ_decrs ,true 
+0693 24408710 ncall power_ctrl_pac_succ_incrs ,true 
+0694 2020071e branch power_ctrl_start 
 
 p_slave_conn_recv_packet:
-06f5 204024f0 call slave_receive_master_slot 
-06f6 242c28f9 nbranch shutdown_radio ,sync 
-06f7 204029bb call save_rssi 
-06f8 2040006b call p_rssi_signal 
-06f9 20202518 branch slave_conn_recv_packet + 4 
+0695 204024f0 call slave_receive_master_slot 
+0696 242c28f9 nbranch shutdown_radio ,sync 
+0697 204029bb call save_rssi 
+0698 2040006b call p_rssi_signal 
+0699 20202518 branch slave_conn_recv_packet + 4 
 
 p_lpm_dispatch:
-06fa c6130000 rtnmark1 mark_24g 
-06fb 20402afa call lpo_calibration 
-06fc 6801c16f fetch 3 ,mem_clks_per_lpo 
-06fd 207a0000 rtn blank 
-06fe 6800c091 fetch 1 ,mem_lpm_mode 
-06ff 207a0000 rtn blank 
-0700 6800c65a fetch 1 ,mem_ssp_enable 
-0701 203a0704 branch p_lpm_dispatch_next ,blank 
-0702 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
-0703 207a0000 rtn blank 
+069a c6130000 rtnmark1 mark_24g 
+069b 20402afa call lpo_calibration 
+069c 6801c16f fetch 3 ,mem_clks_per_lpo 
+069d 207a0000 rtn blank 
+069e 6800c091 fetch 1 ,mem_lpm_mode 
+069f 207a0000 rtn blank 
+06a0 6800c65a fetch 1 ,mem_ssp_enable 
+06a1 203a06a4 branch p_lpm_dispatch_next ,blank 
+06a2 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+06a3 207a0000 rtn blank 
 
 p_lpm_dispatch_next:
-0704 6800c4c0 fetch 1 ,mem_le_sc_calc 
-0705 247a0000 nrtn blank 
-0706 20402c3a call lpm_check_wake_lock 
-0707 247a0000 nrtn blank 
-0708 6800c040 fetch 1 ,mem_context 
-0709 2fe00e03 compare 3 ,pdata ,0x7 
-070a 2420ab9d nbranch lpm_dispatch_unconn ,true 
-070b 68014042 fetch 2 ,mem_context + coffset_tsniff 
-070c d840ffff arg 0xffff ,temp 
-070d 98467c00 isub temp ,null 
-070e 20628000 rtn zero 
-070f 20202b7d branch lpm_dispatch_next + 9 
+06a4 6800c4c0 fetch 1 ,mem_le_sc_calc 
+06a5 247a0000 nrtn blank 
+06a6 20402c3a call lpm_check_wake_lock 
+06a7 247a0000 nrtn blank 
+06a8 6800c040 fetch 1 ,mem_context 
+06a9 2fe00e03 compare 3 ,pdata ,0x7 
+06aa 2420ab9d nbranch lpm_dispatch_unconn ,true 
+06ab 68014042 fetch 2 ,mem_context + coffset_tsniff 
+06ac d840ffff arg 0xffff ,temp 
+06ad 98467c00 isub temp ,null 
+06ae 20628000 rtn zero 
+06af 20202b7d branch lpm_dispatch_next + 9 
 
 p_lpm_set_mult:
-0710 7855fc00 disable wake 
-0711 68008030 fetch 1 ,mem_state 
-0712 c4008000 rtnbit0 state_insniff 
-0713 2436abd0 nbranch lpm_not_match ,match 
-0714 20402bcb call lpm_match 
-0715 680140c1 fetch 2 ,mem_rx_window_sniff 
-0716 6001003e store 2 ,mem_rx_window 
-0717 68008047 fetch 1 ,mem_arq 
-0718 c281abde bbit1 wack ,lpm_mult_short 
-0719 c586abde bmark0 mark_lpm_mult_enable ,lpm_mult_short 
-071a 20405274 call l2cap_malloc_is_fifo_empty 
-071b 243a2bde nbranch lpm_mult_short ,blank 
-071c 205a071e call p_lpm_set_attemp_timeout ,blank 
-071d 20202bbe branch lpm_set_mult + 13 
+06b0 7855fc00 disable wake 
+06b1 68008030 fetch 1 ,mem_state 
+06b2 c4008000 rtnbit0 state_insniff 
+06b3 2436abd0 nbranch lpm_not_match ,match 
+06b4 20402bcb call lpm_match 
+06b5 680140c1 fetch 2 ,mem_rx_window_sniff 
+06b6 6001003e store 2 ,mem_rx_window 
+06b7 68008047 fetch 1 ,mem_arq 
+06b8 c281abde bbit1 wack ,lpm_mult_short 
+06b9 c586abde bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+06ba 20405274 call l2cap_malloc_is_fifo_empty 
+06bb 243a2bde nbranch lpm_mult_short ,blank 
+06bc 205a06be call p_lpm_set_attemp_timeout ,blank 
+06bd 20202bbe branch lpm_set_mult + 13 
 
 p_lpm_set_attemp_timeout:
-071e 70008a01 jam 1 ,mem_current_sniff_attempt 
-071f 70008b00 jam 0 ,mem_current_sniff_timeout 
-0720 20600000 rtn 
+06be 70008a01 jam 1 ,mem_current_sniff_attempt 
+06bf 70008b00 jam 0 ,mem_current_sniff_timeout 
+06c0 20600000 rtn 
 
 p_mouse_bb_disconnected:
-0721 7011c710 jam zcode_10 ,mem_zcode_temp_param0 
-0722 202007db branch p_zcode_entrance 
+06c1 7011c710 jam zcode_10 ,mem_zcode_temp_param0 
+06c2 2020077b branch p_zcode_entrance 
 
 p_hid_rx_process:
-0723 7011c711 jam zcode_11 ,mem_zcode_temp_param0 
-0724 202007db branch p_zcode_entrance 
+06c3 7011c711 jam zcode_11 ,mem_zcode_temp_param0 
+06c4 2020077b branch p_zcode_entrance 
 
 p_parse_lmp_accepted:
-0725 68008552 fetch 1 ,mem_rxbuf + 1 
-0726 600084c9 store 1 ,mem_lmi_accepted_opcode 
-0727 c0098729 beq lmp_switch_req ,p_parse_lmp_accepted_switch 
-0728 20205db4 branch parse_lmp_accepted + 3 
+06c5 68008552 fetch 1 ,mem_rxbuf + 1 
+06c6 600084c9 store 1 ,mem_lmi_accepted_opcode 
+06c7 c00986c9 beq lmp_switch_req ,p_parse_lmp_accepted_switch 
+06c8 20205db4 branch parse_lmp_accepted + 3 
 
 p_parse_lmp_accepted_switch:
-0729 20405dcf call parse_lmp_accepted_switch 
-072a 704aff01 jam 1 ,mem_bt_rcvd_switch_req_accept 
-072b 6800cb01 fetch 1 ,mem_bt_send_lmp_setup_complete 
-072c 207a0000 rtn blank 
-072d 704b0102 jam 2 ,mem_bt_send_lmp_setup_complete 
-072e 20600000 rtn 
+06c9 20405dcf call parse_lmp_accepted_switch 
+06ca 704aff01 jam 1 ,mem_bt_rcvd_switch_req_accept 
+06cb 6800cb01 fetch 1 ,mem_bt_send_lmp_setup_complete 
+06cc 207a0000 rtn blank 
+06cd 704b0102 jam 2 ,mem_bt_send_lmp_setup_complete 
+06ce 20600000 rtn 
 
 p_send_lmp:
-072f 7011c720 jam zcode_20 ,mem_zcode_temp_param0 
-0730 202007db branch p_zcode_entrance 
+06cf 7011c720 jam zcode_20 ,mem_zcode_temp_param0 
+06d0 2020077b branch p_zcode_entrance 
 
 p_process_conn_sm:
-0731 204062bc call lmo_fifo_check 
-0732 247a0000 nrtn blank 
+06d1 204062bc call lmo_fifo_check 
+06d2 247a0000 nrtn blank 
 
 p_process_conn_sm_continue:
-0733 68008055 fetch 1 ,mem_conn_sm 
-0734 207a0000 rtn blank 
-0735 c0020753 beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
-0736 c0080738 beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
-0737 20206320 branch process_conn_sm_continue + 2 
+06d3 68008055 fetch 1 ,mem_conn_sm 
+06d4 207a0000 rtn blank 
+06d5 c00206f3 beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
+06d6 c00806d8 beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
+06d7 20206320 branch process_conn_sm_continue + 2 
 
 p_host_creat_conn_wait_switch:
-0738 6800c55b fetch 1 ,mem_switch_flag 
-0739 c1000000 rtneq switch_flag_init 
-073a c000873c beq switch_flag_accept ,p_host_create_conn_switch_accept 
-073b 2020635f branch host_creat_conn_wait_switch + 3 
+06d8 6800c55b fetch 1 ,mem_switch_flag 
+06d9 c1000000 rtneq switch_flag_init 
+06da c00086dc beq switch_flag_accept ,p_host_create_conn_switch_accept 
+06db 2020635f branch host_creat_conn_wait_switch + 3 
 
 p_host_create_conn_switch_accept:
-073c 20748000 rtn master 
+06dc 20748000 rtn master 
 
 p_host_create_conn_auth_pair:
-073d 6800816d fetch 1 ,mem_connection_options 
-073e c2800740 bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
-073f 20206399 branch host_create_conn_auth_pair + 1 
+06dd 6800816d fetch 1 ,mem_connection_options 
+06de c28006e0 bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
+06df 20206399 branch host_create_conn_auth_pair + 1 
 
 p_host_create_conn_auth_pair_true:
-0740 6800cb01 fetch 1 ,mem_bt_send_lmp_setup_complete 
-0741 c000e39d beq 1 ,host_create_conn_auth_pair_true 
-0742 6800c1bd fetch 1 ,mem_link_key_exists 
-0743 203a63a9 branch host_create_conn_auth_pair_nokey ,blank 
-0744 680084d1 fetch 1 ,mem_lmp_conn_state 
-0745 c4018000 rtnbit0 sent_setup_complete 
-0746 c4010000 rtnbit0 received_setup_complete 
-0747 6800cb00 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
-0748 207a0000 rtn blank 
-0749 704b0000 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
-074a 680204e9 fetch 4 ,mem_aurand_send_delay_time 
-074b d8400014 arg 20 ,temp 
-074c 98408400 iadd temp ,temp 
-074d 1c427e00 copy clkn_bt ,pdata 
-074e 98467c00 isub temp ,null 
-074f 24210751 nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
-0750 20206349 branch host_create_conn_auth 
+06e0 6800cb01 fetch 1 ,mem_bt_send_lmp_setup_complete 
+06e1 c000e39d beq 1 ,host_create_conn_auth_pair_true 
+06e2 6800c1bd fetch 1 ,mem_link_key_exists 
+06e3 203a63a9 branch host_create_conn_auth_pair_nokey ,blank 
+06e4 680084d1 fetch 1 ,mem_lmp_conn_state 
+06e5 c4018000 rtnbit0 sent_setup_complete 
+06e6 c4010000 rtnbit0 received_setup_complete 
+06e7 6800cb00 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+06e8 207a0000 rtn blank 
+06e9 704b0000 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
+06ea 680204e9 fetch 4 ,mem_aurand_send_delay_time 
+06eb d8400014 arg 20 ,temp 
+06ec 98408400 iadd temp ,temp 
+06ed 1c427e00 copy clkn_bt ,pdata 
+06ee 98467c00 isub temp ,null 
+06ef 242106f1 nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
+06f0 20206349 branch host_create_conn_auth 
 
 p_bt_send_max_slot_req_accept_after_switch_wait:
-0751 704b0001 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
-0752 20600000 rtn 
+06f1 704b0001 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+06f2 20600000 rtn 
 
 p_host_create_conn_send_conn_req:
-0753 70480914 jam 20 ,mem_mouse_send_switch_req_timer 
-0754 2020636f branch host_create_conn_send_conn_req 
+06f3 70480914 jam 20 ,mem_mouse_send_switch_req_timer 
+06f4 2020636f branch host_create_conn_send_conn_req 
 
 p_check_51cmd_once_continue:
-0755 204062bc call lmo_fifo_check 
-0756 243a7ddb nbranch check_51cmd_restore ,blank 
-0757 68008a99 fetch 1 ,mem_fifo_temp 
-0758 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
-0759 c00f875d beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
-075a c0100760 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
-075b c009076a beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
-075c 20207dca branch check_51cmd_once_continue + 2 
+06f5 204062bc call lmo_fifo_check 
+06f6 243a7ddb nbranch check_51cmd_restore ,blank 
+06f7 68008a99 fetch 1 ,mem_fifo_temp 
+06f8 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
+06f9 c00f86fd beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
+06fa c0100700 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
+06fb c009070a beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+06fc 20207dca branch check_51cmd_once_continue + 2 
 
 p_flash_store_le_reconn_info:
-075d 70018534 jam rec_4_mode ,mem_record_bt_mode 
-075e 6803044f fetch 6 ,mem_le_plap 
-075f 20200762 branch p_flash_store_reconn_info 
+06fd 70018534 jam rec_4_mode ,mem_record_bt_mode 
+06fe 6803044f fetch 6 ,mem_le_plap 
+06ff 20200702 branch p_flash_store_reconn_info 
 
 p_flash_store_bd_reconn_info:
-0760 70018533 jam rec_3_mode ,mem_record_bt_mode 
-0761 68030040 fetch 6 ,mem_plap 
+0700 70018533 jam rec_3_mode ,mem_record_bt_mode 
+0701 68030040 fetch 6 ,mem_plap 
 
 p_flash_store_reconn_info:
-0762 60030186 store 6 ,mem_temp_lap 
+0702 60030186 store 6 ,mem_temp_lap 
 
 p_mouse_store_remote_bdaddr:
-0763 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
-0764 c4038000 rtnbit0 mouse_store_eeprom_flag 
-0765 d8e00007 arg mouse_store_eeprom_flag ,queue 
-0766 204043d2 call mouse_disable_function_flag 
-0767 204042e8 call mouse_check_device_addr 
+0703 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+0704 c4038000 rtnbit0 mouse_store_eeprom_flag 
+0705 d8e00007 arg mouse_store_eeprom_flag ,queue 
+0706 204043d2 call mouse_disable_function_flag 
+0707 204042e8 call mouse_check_device_addr 
 
 p_mouse_unplug_clean_bdaddr:
-0768 204042fb call mouse_before_store_reconn_info 
-0769 20200381 branch p_mouse_store_flash_device_info 
+0708 204042fb call mouse_before_store_reconn_info 
+0709 2020032b branch p_mouse_store_flash_device_info 
 
 p_check_51cmd_ble_update_connect_param:
-076a 20405890 call le_fifo_check_full 
-076b 247a0000 nrtn blank 
-076c 20205abf branch le_l2cap_tx_update_req 
+070a 20405890 call le_fifo_check_full 
+070b 247a0000 nrtn blank 
+070c 20205abf branch le_l2cap_tx_update_req 
 
 power_ctrl_pac_succ_cnt_init:
-076d 704d2e01 jam 1 ,mem_power_ctrl_level 
-076e 704d2b00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
-076f 20600000 rtn 
+070d 704d2e01 jam 1 ,mem_power_ctrl_level 
+070e 704d2b00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+070f 20600000 rtn 
 
 power_ctrl_pac_succ_incrs:
-0770 6800cd2b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0771 1fe0fe01 increase 1 ,pdata 
-0772 6000cd2b store 1 ,mem_power_ctrl_pac_succ_cnt 
-0773 20600000 rtn 
+0710 6800cd2b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0711 1fe0fe01 increase 1 ,pdata 
+0712 6000cd2b store 1 ,mem_power_ctrl_pac_succ_cnt 
+0713 20600000 rtn 
 
 power_ctrl_pac_succ_decrs:
-0774 6800cd2b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0775 1fe67c02 sub pdata ,2 ,null 
-0776 2441077c ncall power_ctrl_pac_succ_cnt_reinit ,positive 
-0777 6800cd2b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0778 c1000000 rtneq 0 
-0779 1fe0ffff increase -1 ,pdata 
-077a 6000cd2b store 1 ,mem_power_ctrl_pac_succ_cnt 
-077b 20600000 rtn 
+0714 6800cd2b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0715 1fe67c02 sub pdata ,2 ,null 
+0716 2441071c ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+0717 6800cd2b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0718 c1000000 rtneq 0 
+0719 1fe0ffff increase -1 ,pdata 
+071a 6000cd2b store 1 ,mem_power_ctrl_pac_succ_cnt 
+071b 20600000 rtn 
 
 power_ctrl_pac_succ_cnt_reinit:
-077c 704d2b03 jam 3 ,mem_power_ctrl_pac_succ_cnt 
-077d 20600000 rtn 
+071c 704d2b03 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+071d 20600000 rtn 
 
 power_ctrl_start:
-077e 68014682 fetch 2 ,mem_ui_state_map 
-077f c3858000 rtnbit1 ui_state_ble_adv 
-0780 c3838000 rtnbit1 ui_state_bt_reconnect 
-0781 c3830000 rtnbit1 ui_state_bt_discovery 
-0782 da204cb4 arg mem_rssi_signal_buf ,rega 
-0783 204002ca call p_rssi_average 
-0784 6008cd2c storet 1 ,mem_rssi_avg_received 
-0785 58000082 setarg rssi_dis_max_24g 
-0786 c5130788 bmark1 mark_24g ,power_ctrl_start_next 
-0787 58000080 setarg rssi_dis_max_ble 
+071e 68014682 fetch 2 ,mem_ui_state_map 
+071f c3858000 rtnbit1 ui_state_ble_adv 
+0720 c3838000 rtnbit1 ui_state_bt_reconnect 
+0721 c3830000 rtnbit1 ui_state_bt_discovery 
+0722 da204cb4 arg mem_rssi_signal_buf ,rega 
+0723 20400287 call p_rssi_average 
+0724 6008cd2c storet 1 ,mem_rssi_avg_received 
+0725 58000082 setarg rssi_dis_max_24g 
+0726 c5130728 bmark1 mark_24g ,power_ctrl_start_next 
+0727 58000080 setarg rssi_dis_max_ble 
 
 power_ctrl_start_next:
-0788 98467c00 isub temp ,null 
-0789 242107a0 nbranch power_ctrl_txpower_incrs_force ,positive 
-078a 6800cd2b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-078b 1fe67c02 sub pdata ,2 ,null 
-078c 24210790 nbranch power_ctrl_txpower_decrs_check ,positive 
-078d 6800cd2b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-078e c00007a1 beq 0 ,power_ctrl_txpower_incrs 
-078f 20600000 rtn 
+0728 98467c00 isub temp ,null 
+0729 24210740 nbranch power_ctrl_txpower_incrs_force ,positive 
+072a 6800cd2b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+072b 1fe67c02 sub pdata ,2 ,null 
+072c 24210730 nbranch power_ctrl_txpower_decrs_check ,positive 
+072d 6800cd2b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+072e c0000741 beq 0 ,power_ctrl_txpower_incrs 
+072f 20600000 rtn 
 
 power_ctrl_txpower_decrs_check:
-0790 6800cd2b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0791 c1900000 rtnne 32 
-0792 704d2b00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0730 6800cd2b fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0731 c1900000 rtnne 32 
+0732 704d2b00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_decrs:
-0793 6808cd2c fetcht 1 ,mem_rssi_avg_received 
-0794 58000077 setarg rssi_dis_min_24g 
-0795 c5130797 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
-0796 58000075 setarg rssi_dis_min_ble 
+0733 6808cd2c fetcht 1 ,mem_rssi_avg_received 
+0734 58000077 setarg rssi_dis_min_24g 
+0735 c5130737 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+0736 58000075 setarg rssi_dis_min_ble 
 
 power_ctrl_txpower_decrs_next:
-0797 98467c00 isub temp ,null 
-0798 24610000 nrtn positive 
-0799 6800cd2e fetch 1 ,mem_power_ctrl_level 
-079a c00007a8 beq 0 ,power_ctrl_decrs_level0 
-079b 1fe0ffff increase -1 ,pdata 
-079c 6000cd2e store 1 ,mem_power_ctrl_level 
-079d c00007a8 beq 0 ,power_ctrl_decrs_level0 
+0737 98467c00 isub temp ,null 
+0738 24610000 nrtn positive 
+0739 6800cd2e fetch 1 ,mem_power_ctrl_level 
+073a c0000748 beq 0 ,power_ctrl_decrs_level0 
+073b 1fe0ffff increase -1 ,pdata 
+073c 6000cd2e store 1 ,mem_power_ctrl_level 
+073d c0000748 beq 0 ,power_ctrl_decrs_level0 
 
 power_ctrl_decrs_level1:
 
 power_ctrl_incrs_level1:
-079e 7041de00 jam tx_power_0db ,mem_tx_power 
-079f 20600000 rtn 
+073e 7041de00 jam tx_power_0db ,mem_tx_power 
+073f 20600000 rtn 
 
 power_ctrl_txpower_incrs_force:
-07a0 704d2b00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0740 704d2b00 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 power_ctrl_txpower_incrs:
-07a1 6800cd2e fetch 1 ,mem_power_ctrl_level 
-07a2 c00107a6 beq 2 ,power_ctrl_incrs_level2 
-07a3 1fe0fe01 increase 1 ,pdata 
-07a4 6000cd2e store 1 ,mem_power_ctrl_level 
-07a5 c000879e beq 1 ,power_ctrl_incrs_level1 
+0741 6800cd2e fetch 1 ,mem_power_ctrl_level 
+0742 c0010746 beq 2 ,power_ctrl_incrs_level2 
+0743 1fe0fe01 increase 1 ,pdata 
+0744 6000cd2e store 1 ,mem_power_ctrl_level 
+0745 c000873e beq 1 ,power_ctrl_incrs_level1 
 
 power_ctrl_incrs_level2:
-07a6 7041de02 jam tx_power_5db ,mem_tx_power 
-07a7 20600000 rtn 
+0746 7041de02 jam tx_power_5db ,mem_tx_power 
+0747 20600000 rtn 
 
 power_ctrl_decrs_level0:
-07a8 7041de04 jam tx_power_f5db ,mem_tx_power 
-07a9 20600000 rtn 
+0748 7041de04 jam tx_power_f5db ,mem_tx_power 
+0749 20600000 rtn 
 
 p_set_freq_tx:
-07aa 60088017 storet 1 ,mem_last_freq 
-07ab 1840a200 add temp ,0 ,rega 
-07ac 20402981 call rf_write_freq 
-07ad 58000500 setarg param_pll_setup 
-07ae 20402a8f call sleep 
+074a 60088017 storet 1 ,mem_last_freq 
+074b 1840a200 add temp ,0 ,rega 
+074c 20402981 call rf_write_freq 
+074d 58000500 setarg param_pll_setup 
+074e 20402a8f call sleep 
 
 p_rf_tx_enable:
-07af 70890601 jam 0x1 ,rfen_adc 
-07b0 7089003c jam 0x3c ,rfen_rx 
-07b1 708901e0 jam 0xe0 ,rfen_tx 
-07b2 2000000a nop 10 
-07b3 70890201 jam 0x01 ,rfen_mdm 
-07b4 7089023d jam 0x3d ,rfen_mdm 
-07b5 2000000a nop 10 
-07b6 708903b7 jam 0xb7 ,rfen_sn 
-07b7 2000000a nop 10 
-07b8 7089027d jam 0x7d ,rfen_mdm 
-07b9 6800c1de fetch 1 ,mem_tx_power 
-07ba c00107c2 beq tx_power_5db ,p_set_tx_power_5db 
-07bb c00207c7 beq tx_power_f5db ,p_set_tx_power_f5db 
-07bc c01007d6 beq tx_power_pair ,p_set_tx_power_pair 
+074f 70890601 jam 0x1 ,rfen_adc 
+0750 7089003c jam 0x3c ,rfen_rx 
+0751 708901e0 jam 0xe0 ,rfen_tx 
+0752 2000000a nop 10 
+0753 70890201 jam 0x01 ,rfen_mdm 
+0754 7089023d jam 0x3d ,rfen_mdm 
+0755 2000000a nop 10 
+0756 708903b7 jam 0xb7 ,rfen_sn 
+0757 2000000a nop 10 
+0758 7089027d jam 0x7d ,rfen_mdm 
+0759 6800c1de fetch 1 ,mem_tx_power 
+075a c0010762 beq tx_power_5db ,p_set_tx_power_5db 
+075b c0020767 beq tx_power_f5db ,p_set_tx_power_f5db 
+075c c0100776 beq tx_power_pair ,p_set_tx_power_pair 
 
 p_set_tx_power_0db:
-07bd 204007cc call p_rx_low_sens 
-07be 708955d0 jam 0xd0 ,0x8955 
-07bf 708956e0 jam 0xe0 ,0x8956 
-07c0 7089586c jam 0x6c ,0x8958 
-07c1 2020294b branch set_tx_power_0db 
+075d 2040076c call p_rx_low_sens 
+075e 708955d0 jam 0xd0 ,0x8955 
+075f 708956e0 jam 0xe0 ,0x8956 
+0760 7089586c jam 0x6c ,0x8958 
+0761 2020294b branch set_tx_power_0db 
 
 p_set_tx_power_5db:
-07c2 204007d1 call p_rx_high_sens 
-07c3 708955d0 jam 0xd0 ,0x8955 
-07c4 708956e0 jam 0xe0 ,0x8956 
-07c5 7089583c jam 0x3c ,0x8958 
-07c6 20202953 branch set_tx_power_5db 
+0762 20400771 call p_rx_high_sens 
+0763 708955d0 jam 0xd0 ,0x8955 
+0764 708956e0 jam 0xe0 ,0x8956 
+0765 7089583c jam 0x3c ,0x8958 
+0766 20202953 branch set_tx_power_5db 
 
 p_set_tx_power_f5db:
-07c7 204007cc call p_rx_low_sens 
-07c8 708955d0 jam 0xd0 ,0x8955 
-07c9 708956c0 jam 0xc0 ,0x8956 
-07ca 7089586c jam 0x6c ,0x8958 
-07cb 2020295b branch set_tx_power_f5db 
+0767 2040076c call p_rx_low_sens 
+0768 708955d0 jam 0xd0 ,0x8955 
+0769 708956c0 jam 0xc0 ,0x8956 
+076a 7089586c jam 0x6c ,0x8958 
+076b 2020295b branch set_tx_power_f5db 
 
 p_rx_low_sens:
-07cc 70894c5b jam 0x5b ,0x894c 
-07cd 70894d96 jam 0x96 ,0x894d 
-07ce 70894e2c jam 0x2c ,0x894e 
-07cf 70894f46 jam 0x46 ,0x894f 
-07d0 20600000 rtn 
+076c 70894c5b jam 0x5b ,0x894c 
+076d 70894d96 jam 0x96 ,0x894d 
+076e 70894e2c jam 0x2c ,0x894e 
+076f 70894f46 jam 0x46 ,0x894f 
+0770 20600000 rtn 
 
 p_rx_high_sens:
-07d1 70894cfb jam 0xfb ,0x894c 
-07d2 70894def jam 0xef ,0x894d 
-07d3 70894eec jam 0xec ,0x894e 
-07d4 70894f5e jam 0x5e ,0x894f 
-07d5 20600000 rtn 
+0771 70894cfb jam 0xfb ,0x894c 
+0772 70894def jam 0xef ,0x894d 
+0773 70894eec jam 0xec ,0x894e 
+0774 70894f5e jam 0x5e ,0x894f 
+0775 20600000 rtn 
 
 p_set_tx_power_pair:
-07d6 708956c2 jam 0xc2 ,0x8956 
-07d7 708955d0 jam 0xd0 ,0x8955 
-07d8 20600000 rtn 
+0776 708956c2 jam 0xc2 ,0x8956 
+0777 708955d0 jam 0xd0 ,0x8955 
+0778 20600000 rtn 
 
 p_shutdown_radio:
-07d9 18002a08 force 8 ,radio_ctrl 
-07da 202028fa branch shutdown_radio + 1 
+0779 18002a08 force 8 ,radio_ctrl 
+077a 202028fa branch shutdown_radio + 1 
 
 p_zcode_entrance:
-07db 680891c7 fetcht 1 ,mem_zcode_temp_param0 
-07dc 18518400 rshift4 temp ,temp 
-07dd 6800cb50 fetch 1 ,mem_zcode_current_number 
-07de 98467c00 isub temp ,null 
-07df 202287f8 branch p_zcode_run ,zero 
-07e0 6008cb50 storet 1 ,mem_zcode_current_number 
-07e1 18408401 increase 1 ,temp 
-07e2 58000100 setarg zcode_buff_size 
-07e3 984f8400 imul32 temp ,temp 
-07e4 6801cb51 fetch 3 ,mem_xip_flash_offset 
-07e5 98467e00 isub temp ,pdata 
-07e6 6809cb54 fetcht 3 ,mem_flash_start_addr 
-07e7 9840fe00 iadd temp ,pdata 
-07e8 1fe0fffb increase -5 ,pdata 
-07e9 6001cb57 store 3 ,mem_flash_address 
-07ea 204003c4 call p_flash_release_deep_power_down 
+077b 680891c7 fetcht 1 ,mem_zcode_temp_param0 
+077c 18518400 rshift4 temp ,temp 
+077d 6800cb50 fetch 1 ,mem_zcode_current_number 
+077e 98467c00 isub temp ,null 
+077f 20228798 branch p_zcode_run ,zero 
+0780 6008cb50 storet 1 ,mem_zcode_current_number 
+0781 18408401 increase 1 ,temp 
+0782 58000100 setarg zcode_buff_size 
+0783 984f8400 imul32 temp ,temp 
+0784 6801cb51 fetch 3 ,mem_xip_flash_offset 
+0785 98467e00 isub temp ,pdata 
+0786 6809cb54 fetcht 3 ,mem_flash_start_addr 
+0787 9840fe00 iadd temp ,pdata 
+0788 1fe0fffb increase -5 ,pdata 
+0789 6001cb57 store 3 ,mem_flash_address 
+078a 2040036e call p_flash_release_deep_power_down 
 
 p_zcode_read_loop:
-07eb 6801cb57 fetch 3 ,mem_flash_address 
-07ec d8400100 arg zcode_buff_size ,temp 
-07ed da201f00 arg mem_zcode_buff ,rega 
-07ee 20406562 call spid_read_flash 
-07ef 68021f00 fetch 4 ,mem_zcode_buff 
-07f0 203a07eb branch p_zcode_read_loop ,blank 
-07f1 2040031b call p_mouse_spi_init 
-07f2 58001f00 setarg mem_zcode_buff 
-07f3 60014199 store 2 ,mem_patch_ptr 
-07f4 70419b40 jam zcode_code_size ,mem_patch_len 
-07f5 204064ca call load_ucode 
-07f6 58000000 setarg 0 
-07f7 60024199 store 4 ,mem_patch_ptr 
+078b 6801cb57 fetch 3 ,mem_flash_address 
+078c d8400100 arg zcode_buff_size ,temp 
+078d da201f00 arg mem_zcode_buff ,rega 
+078e 20406562 call spid_read_flash 
+078f 68021f00 fetch 4 ,mem_zcode_buff 
+0790 203a078b branch p_zcode_read_loop ,blank 
+0791 204002c5 call p_mouse_spi_init 
+0792 58001f00 setarg mem_zcode_buff 
+0793 60014199 store 2 ,mem_patch_ptr 
+0794 70419b40 jam zcode_code_size ,mem_patch_len 
+0795 204064ca call load_ucode 
+0796 58000000 setarg 0 
+0797 60024199 store 4 ,mem_patch_ptr 
 
 p_zcode_run:
-07f8 680091c7 fetch 1 ,mem_zcode_temp_param0 
-07f9 20200001 branch p_zcode 
+0798 680091c7 fetch 1 ,mem_zcode_temp_param0 
+0799 20200001 branch p_zcode 
+
+p_drawing_optima_init:
+079a df200005 arg 5 ,loopcnt 
+079b d8a04b0b arg mem_mouse_asm_flag ,contw 
+079c 20207ed4 branch clear_mem 
+
+p_drawing_optima:
+079d 6802469b fetch 4 ,mem_mouse_x 
+079e 207a0000 rtn blank 
+079f 204007ee call p_data_abs_check 
+07a0 58000006 setarg 0x06 
+07a1 204007e1 call p_data_greater_than_check 
+07a2 58000003 setarg 0x03 
+07a3 204007e7 call p_data_less_than_check 
+07a4 6800cb0b fetch 1 ,mem_mouse_asm_flag 
+07a5 c00087a7 beq 1 ,p_drawing_optima_modify 
+07a6 2020079a branch p_drawing_optima_init 
+
+p_drawing_optima_modify:
+07a7 68014b0c 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 60014b0c store 2 ,mem_mouse_x_pre 
+07ae 680111c0 fetch 2 ,mem_data_current 
+07af 6001469b store 2 ,mem_mouse_x 
+07b0 68014b0e 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 60014b0e 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 1fe67e00 sub pdata ,0 ,pdata 
+07da 60008aae store 1 ,mem_rega 
+07db 68008aae fetch 1 ,mem_rega 
+07dc 1fe37e00 rshift pdata ,pdata 
+07dd 60008aae store 1 ,mem_rega 
+07de 68008aae fetch 1 ,mem_rega 
+07df 1fe67e00 sub pdata ,0 ,pdata 
+07e0 20600000 rtn 
+
+p_data_greater_than_check:
+07e1 9a267c00 isub rega ,null 
+07e2 242107ec nbranch p_enable_asm ,positive 
+07e3 9a467c00 isub regb ,null 
+07e4 242107ec nbranch p_enable_asm ,positive 
+
+p_disable_asm:
+07e5 704b0b00 jam 0 ,mem_mouse_asm_flag 
+07e6 20600000 rtn 
+
+p_data_less_than_check:
+07e7 9a267c00 isub rega ,null 
+07e8 24610000 nrtn positive 
+07e9 9a467c00 isub regb ,null 
+07ea 24610000 nrtn positive 
+07eb 202007e5 branch p_disable_asm 
+
+p_enable_asm:
+07ec 704b0b01 jam 1 ,mem_mouse_asm_flag 
+07ed 20600000 rtn 
+
+p_data_abs_check:
+07ee 6801469b fetch 2 ,mem_mouse_x 
+07ef 600111c0 store 2 ,mem_data_current 
+07f0 204007f7 call p_data_abs 
+07f1 1fe22200 copy pdata ,rega 
+07f2 6801469d fetch 2 ,mem_mouse_y 
+07f3 600111c0 store 2 ,mem_data_current 
+07f4 204007f7 call p_data_abs 
+07f5 1fe22400 copy pdata ,regb 
+07f6 20600000 rtn 
+
+p_data_abs:
+07f7 680091c1 fetch 1 ,mem_data_current + 1 
+07f8 c07f87fc beq 0xff ,p_data_reversal 
+07f9 680091c0 fetch 1 ,mem_data_current 
+
+p_data_abs_store:
+07fa 1fe17eff and_into 0xff ,pdata 
+07fb 20600000 rtn 
+
+p_data_reversal:
+07fc 680111c0 fetch 2 ,mem_data_current 
+07fd 1fe67e00 sub pdata ,0 ,pdata 
+07fe 202007fa branch p_data_abs_store 
 org 0x2000
 
 start:
@@ -35412,27 +35421,67 @@
 org 0x10001
 
 z_entrance0:
-10001 c0000003  beq zcode_00 ,z_page_wait_fhs_reply_ok
-10002 20600000  rtn
+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 2040026a  call p_g24_timer_check
+10005 24740000  nrtn user
+10006 20400019  call z_g24_interval_calibrate
+10007 68014d33  fetch 2 ,mem_24g_transmit_by_interrupt_exit_count
+10008 1fe0fe01  increase 1 ,pdata
+10009 60014d33  store 2 ,mem_24g_transmit_by_interrupt_exit_count
+1000a 68094d35  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 2020009d  branch p_g24_transmit_process
+
+z_g24_transmit_by_interrupt_exit:
+1000e 704d3200  jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
+1000f 58000000  setarg 0
+10010 60014d33  store 2 ,mem_24g_transmit_by_interrupt_exit_count
+10011 58000019  setarg 25
+10012 60014d35  store 2 ,mem_24g_transmit_by_interrupt_exit_count_init
+
+z_g24_interval_min:
+10013 704c2d00  jam 0 ,mem_24g_pac_index
+10014 6800cc18  fetch 1 ,mem_24g_interval_min
+
+z_g24_current_interval_store:
+10015 6000cc17  store 1 ,mem_24g_interval
+10016 20600000  rtn
+
+z_g24_interval_max:
+10017 6800cc19  fetch 1 ,mem_24g_interval_max
+10018 20200015  branch z_g24_current_interval_store
+
+z_g24_interval_calibrate:
+10019 6800cc2d  fetch 1 ,mem_24g_pac_index
+1001a 1fe0fe01  increase 1 ,pdata
+1001b 6000cc2d  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:
-10003 6800800e  fetch 1 ,mem_page_rcv_fhs
-10004 1fe0fe01  increase 1 ,pdata
-10005 6000800e  store 1 ,mem_page_rcv_fhs
-10006 20402435  call prepare_newconn
+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:
-10007 7920002c  set1 mark_first_packet ,mark
-10008 204022f2  call master_newconn_once
-10009 202c000e  branch z_newconn_poll_responded ,sync
-1000a 793f802c  set0 mark_first_packet ,mark
-1000b 20402455  call new_conn_timeout
-1000c 243a0007  nbranch z_master_newconn_loop ,blank
-1000d 202020fc  branch page_restart
+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:
-1000e 793f802c  set0 mark_first_packet ,mark
-1000f 2020215f  branch newconn_poll_responded
+1002a 793f802c  set0 mark_first_packet ,mark
+1002b 2020215f  branch newconn_poll_responded
 org 0x20001
 
 z_entrance1:
@@ -35467,10 +35516,10 @@
 20015 c28642b0  bbit1 ui_state_btn_down ,mouse_start_discovery
 20016 204033a9  call app_disconn_reason_clear
 20017 6808c6ec  fetcht 1 ,mem_config_bt_button_gpio
-20018 204005e4  call p_gpio_set_input_pu
+20018 20400584  call p_gpio_set_input_pu
 20019 6808c6ec  fetcht 1 ,mem_config_bt_button_gpio
 2001a 2040681d  call gpio_get_bit
-2001b 202082f9  branch p_mouse_null_enter_hibernate_enable ,true
+2001b 202082b5  branch p_mouse_null_enter_hibernate_enable ,true
 2001c 202033a7  branch app_bb_hibernate
 
 z_hid_rx_process:
@@ -35617,54 +35666,73 @@
 org 0x50001
 
 z_entrance4:
-50001 c0200004  beq zcode_40 ,z_le_update_param
-50002 c0208016  beq zcode_41 ,z_le_update_channel_map
-50003 20600000  rtn
+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:
-50004 2040000c  call z_mouse_le_conn_param_check
-50005 2020557d  branch le_update_param + 8
+50006 2040000e  call z_mouse_le_conn_param_check
+50007 2020557d  branch le_update_param + 8
 
 z_mouse_le_lpm_mult_reinit:
-50006 6800c7c5  fetch 1 ,mem_lpm_mult_init
-50007 6000c172  store 1 ,mem_lpm_mult
+50008 6800c7c5  fetch 1 ,mem_lpm_mult_init
+50009 6000c172  store 1 ,mem_lpm_mult
 
 z_mouse_le_conn_param_lpm_enable:
-50008 7047c400  jam le_lpm_enable ,mem_mouse_le_conn_param_reject
-50009 20600000  rtn
+5000a 7047c400  jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+5000b 20600000  rtn
 
 z_mouse_le_conn_param_lpm_disable:
-5000a 7047c401  jam le_lpm_disable ,mem_mouse_le_conn_param_reject
-5000b 20600000  rtn
+5000c 7047c401  jam le_lpm_disable ,mem_mouse_le_conn_param_reject
+5000d 20600000  rtn
 
 z_mouse_le_conn_param_check:
-5000c 6800c3d6  fetch 1 ,mem_le_new_conninterval
-5000d 1fe67c0c  sub pdata ,le_interval_15ms ,null
-5000e 2421000a  nbranch z_mouse_le_conn_param_lpm_disable ,positive
-5000f 6800c3d8  fetch 1 ,mem_le_new_connslavelatency
-50010 6808c7c5  fetcht 1 ,mem_lpm_mult_init
-50011 98467c00  isub temp ,null
-50012 20210006  branch z_mouse_le_lpm_mult_reinit ,positive
-50013 6800c3d8  fetch 1 ,mem_le_new_connslavelatency
-50014 6000c172  store 1 ,mem_lpm_mult
-50015 20200008  branch z_mouse_le_conn_param_lpm_enable
+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 6808c7c5  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:
-50016 6800843f  fetch 1 ,mem_le_state
-50017 c4030000  rtnbit0 lestate_update_map
-50018 2040001b  call z_le_channel_map_overflow_check
-50019 24740000  nrtn user
-5001a 202055a0  branch le_update_channel_map + 3
+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:
-5001b 78347c00  enable user
-5001c 6800845a  fetch 1 ,mem_le_event_count + 1
-5001d 1ff1fe00  rshift4 pdata ,pdata
-5001e c1878000  rtnne 0x0f
-5001f 68008460  fetch 1 ,mem_le_instant + 1
-50020 1ff1fe00  rshift4 pdata ,pdata
-50021 c1800000  rtnne 0x00
-50022 20207fe9  branch disable_user
+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 6800c79f  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:
@@ -35672,19 +35740,19 @@
 60002 20600000  rtn
 
 z_mouse_start_discovery:
-60003 204002fc  call p_mouse_tx_power_init
+60003 204002b8  call p_mouse_tx_power_init
 60004 70472001  jam mode_bt_device1 ,mem_device_flag
 60005 70479c00  jam 0 ,mem_mouse_clear_sensor_data_flag
 60006 68014682  fetch 2 ,mem_ui_state_map
 60007 c2858012  bbit1 ui_state_ble_adv ,z_mouse_start_discovery_norandom
 60008 680246d3  fetch mouse_flag_len ,mem_mouse_flag
 60009 c30c0012  bbit0 mouse_enable_ble_random_addre ,z_mouse_start_discovery_norandom
-6000a 204005f4  call p_mouse_load_random_addr_increase_count
+6000a 20400594  call p_mouse_load_random_addr_increase_count
 6000b 680947c2  fetcht 2 ,mem_random_addr_increase_count
 6000c 18408401  increase 1 ,temp
 6000d 600947c2  storet 2 ,mem_random_addr_increase_count
 6000e 600944a1  storet 2 ,mem_le_lap + 1
-6000f 20400386  call p_mouse_store_random_addr_increase_count
+6000f 20400330  call p_mouse_store_random_addr_increase_count
 60010 180a7e00  random pdata
 60011 6000c4a0  store 1 ,mem_le_lap
 
@@ -35702,16 +35770,15 @@
 6001c 6800c092  fetch 1 ,mem_device_option
 6001d 2feffe00  isolate1 mode_3_mouse ,pdata
 6001e 2040fddd  call check_51cmd_start_discovery ,true
-6001f 20200534  branch p_mouse_discovery_multi_led_blink
+6001f 202004d2  branch p_mouse_discovery_multi_led_blink
 
 z_check_51cmd_adv:
 60020 70479f00  jam 0 ,mem_mouse_le_reconnect_flag
-60021 20400312  call p_le_check_adv_flag
-60022 58000005  setarg adv_flag_bredr_not_supported | adv_flag_limited_discoverable
-60023 e0c08000  istore 1 ,contr
-60024 d8c04b10  arg mem_le_adv_swift_pair ,contr
-60025 204005fb  call p_le_adv_data_update
-60026 20207df4  branch check_51cmd_adv
+60021 58000005  setarg adv_flag_bredr_not_supported | adv_flag_limited_discoverable
+60022 e0c08000  istore 1 ,contr
+60023 d8c04b10  arg mem_le_adv_swift_pair ,contr
+60024 2040059b  call p_le_adv_data_update
+60025 20207df4  branch check_51cmd_adv
 org 0x70001
 
 z_entrance6:
@@ -35721,8 +35788,8 @@
 
 z_g24_start_24g_mode:
 70004 793f8026  set0 mark_24g ,mark
-70005 20400206  call p_g24_syncword_crc8
-70006 20400225  call p_g24_ch
+70005 204001dd  call p_g24_syncword_crc8
+70006 20400144  call p_g24_ch
 70007 6800cc02  fetch 1 ,mem_24g_pairing_sm
 70008 c1ff8000  rtnne state_24g_pairing_success
 70009 20400019  call z_g24_tx_attemp_data_prep
@@ -35734,8 +35801,8 @@
 z_g24_tx_attemp_dongle_loop:
 7000c 200007d0  nop 2000
 7000d 6800cc1f  fetch 1 ,mem_24g_check_dongle_times
-7000e c07f81de  beq 0xff ,p_g24_stop_g24_mode
-7000f 204001b5  call p_g24_transmit_receive_ack
+7000e c07f81b5  beq 0xff ,p_g24_stop_g24_mode
+7000f 20400190  call p_g24_transmit_receive_ack
 70010 242c0022  nbranch z_g24_attemp_txdata_retry ,sync
 70011 24378022  nbranch z_g24_attemp_txdata_retry ,user3
 
@@ -35745,8 +35812,8 @@
 70014 60014c1f  store 2 ,mem_24g_check_dongle_times
 70015 700a993c  jam bt_evt_24g_attempt_success ,mem_fifo_temp
 70016 20407d86  call ui_ipc_send_event
-70017 204001b0  call p_g24_txbuf_clear
-70018 202003d5  branch p_g24_transmit_by_interrupt_enable
+70017 2040018b  call p_g24_txbuf_clear
+70018 2020037f  branch p_g24_transmit_by_interrupt_enable
 
 z_g24_tx_attemp_data_prep:
 70019 70119eff  jam 0xff ,mem_24g_common_temp
@@ -35756,14 +35823,14 @@
 7001d 600211a0  store 4 ,mem_24g_common_temp + 2
 7001e d8400006  arg 6 ,temp
 7001f da20119e  arg mem_24g_common_temp ,rega
-70020 204001f3  call p_g24_put_data_in_buff
-70021 20200213  branch p_g24_transmit_prep
+70020 204001ca  call p_g24_put_data_in_buff
+70021 202001ea  branch p_g24_transmit_prep
 
 z_g24_attemp_txdata_retry:
 70022 68014c1f  fetch 2 ,mem_24g_check_dongle_times
 70023 1fe0fe01  increase 1 ,pdata
 70024 60014c1f  store 2 ,mem_24g_check_dongle_times
-70025 20400225  call p_g24_ch
+70025 20400144  call p_g24_ch
 70026 2020000c  branch z_g24_tx_attemp_dongle_loop
 
 z_mouse_24g_pairing_button:
@@ -35773,7 +35840,7 @@
 7002a c4088000  rtnbit0 mouse_enable_24g
 7002b c3818000  rtnbit1 mosue_24g_pairing_flag
 7002c c6130000  rtnmark1 mark_24g
-7002d 204000ed  call p_mouse_multi_led_gpio_set_float
+7002d 204000d4  call p_mouse_multi_led_gpio_set_float
 7002e d8e00003  arg mosue_24g_pairing_flag ,queue
 7002f 204043ce  call mouse_enable_function_flag
 70030 58000000  setarg 0
@@ -35796,7 +35863,7 @@
 7003b 704bf100  jam 0 ,mem_24g_pid
 7003c 704bfc4e  jam g24_pair_ch ,mem_24g_ch
 7003d 68024bfe  fetch 4 ,mem_24g_paring_addr
-7003e 20200205  branch p_g24_update_addr_and_synccrc8
+7003e 202001dc  branch p_g24_update_addr_and_synccrc8
 org 0x80001
 
 z_entrance7:
@@ -35814,12 +35881,12 @@
 z_g24_auto_pair_start_loop:
 80007 200007d0  nop 2000
 80008 6800cc1f  fetch 1 ,mem_24g_check_dongle_times
-80009 c07f81de  beq 0xff ,p_g24_stop_g24_mode
-8000a 204001b5  call p_g24_transmit_receive_ack
+80009 c07f81b5  beq 0xff ,p_g24_stop_g24_mode
+8000a 20400190  call p_g24_transmit_receive_ack
 8000b 242c0023  nbranch z_g24_auto_pair_retry ,sync
 8000c 24378023  nbranch z_g24_auto_pair_retry ,user3
-8000d 204001e0  call p_g24_ackpayload_parse
-8000e 204002fc  call p_mouse_tx_power_init
+8000d 204001b7  call p_g24_ackpayload_parse
+8000e 204002b8  call p_mouse_tx_power_init
 8000f 68024c1a  fetch 4 ,mem_24g_addr
 80010 680a4bfe  fetcht 4 ,mem_24g_paring_addr
 80011 98467c00  isub temp ,null
@@ -35829,8 +35896,8 @@
 80015 60014c1f  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 204001b0  call p_g24_txbuf_clear
-80019 202003d5  branch p_g24_transmit_by_interrupt_enable
+80018 2040018b  call p_g24_txbuf_clear
+80019 2020037f  branch p_g24_transmit_by_interrupt_enable
 
 z7_g24_tx_attemp_data_prep:
 8001a 70119eff  jam 0xff ,mem_24g_common_temp
@@ -35840,8 +35907,8 @@
 8001e 600211a0  store 4 ,mem_24g_common_temp + 2
 8001f d8400006  arg 6 ,temp
 80020 da20119e  arg mem_24g_common_temp ,rega
-80021 204001f3  call p_g24_put_data_in_buff
-80022 20200213  branch p_g24_transmit_prep
+80021 204001ca  call p_g24_put_data_in_buff
+80022 202001ea  branch p_g24_transmit_prep
 
 z_g24_auto_pair_retry:
 80023 6800cc1f  fetch 1 ,mem_24g_check_dongle_times
@@ -35862,8 +35929,8 @@
 80030 e0a10000  istore 2 ,contw
 
 z_g24_ch_syncword_crc8_init:
-80031 20400206  call p_g24_syncword_crc8
-80032 20200225  branch p_g24_ch
+80031 204001dd  call p_g24_syncword_crc8
+80032 20200144  branch p_g24_ch
 
 z_g24_auto_pair_device_attemp:
 80033 2040002d  call z_g24_auto_pair_all_powerful
@@ -35886,7 +35953,7 @@
 8003c 704bf100  jam 0 ,mem_24g_pid
 8003d 704bfc4e  jam g24_pair_ch ,mem_24g_ch
 8003e 68024bfe  fetch 4 ,mem_24g_paring_addr
-8003f 20200205  branch p_g24_update_addr_and_synccrc8
+8003f 202001dc  branch p_g24_update_addr_and_synccrc8
 org 0x90001
 
 z_entrance8:
@@ -35904,9 +35971,9 @@
 90008 20600000  rtn
 
 z_mouse_setting_config:
-90009 20400120  call p_g24_set_device_addr
+90009 204000ef  call p_g24_set_device_addr
 9000a 20403e6e  call mouse_gpio_init
-9000b 204000ed  call p_mouse_multi_led_gpio_set_float
+9000b 204000d4  call p_mouse_multi_led_gpio_set_float
 9000c 6800c6ef  fetch 1 ,mem_config_low_voltage_alarm_gpio
 9000d 6000c715  store 1 ,mem_mouse_struct_led_gpio
 9000e 20404298  call mouse_led_on
@@ -35915,46 +35982,41 @@
 90011 6808cb45  fetcht 1 ,mem_flash_ncs_gpio
 90012 2040680e  call gpio_config_output
 90013 20403e1e  call mouse_param_init
-90014 2040001f  call z_mouse_bt_sdp_update
+90014 2040001a  call z_mouse_bt_sdp_update
 90015 58000000  setarg 0
 90016 60014154  store 2 ,mem_lpm_interval
 90017 204068a2  call load_adc_init
 90018 20403e54  call mouse_adc_init
-90019 20405810  call le_set_config_fixed_ltk
-9001a 20405839  call le_set_justwork
-9001b 2040582c  call le_set_fixed_ltk
-9001c 20405818  call le_set_config_read_authentication
-9001d 204005f0  call p_le_addr_random_config
-9001e 20200377  branch p_mouse_load_flash_info_check
+90019 20200321  branch p_mouse_load_flash_info_check
 
 z_mouse_bt_sdp_update:
-9001f 204074b9  call enable_authrom
-90020 d8c08c00  arg 0x8c00 ,contr
-90021 d8a04876  arg mem_mouse_uuid_list ,contw
-90022 df200171  arg 369 ,loopcnt
-90023 20407f01  call memcpy
-90024 580f0209  setarg 0x0f0209
-90025 e0a18000  istore 3 ,contw
-90026 58120009  setarg 0x120009
-90027 e0a18000  istore 3 ,contw
-90028 58100209  setarg 0x100209
-90029 e0a18000  istore 3 ,contw
-9002a 58000009  setarg 0x000009
-9002b e0a18000  istore 3 ,contw
-9002c d8c08d71  arg 0x8d71 ,contr
-9002d df200109  arg 265 ,loopcnt
-9002e 20407f01  call memcpy
-9002f 70488d00  jam 0 ,mem_mouse_uuid_list + 23
-90030 7048856d  jam 0x6d ,mem_mouse_uuid_list + 15
-90031 5800401f  setarg 0x401f
-90032 600149db  store 2 ,mem_mouse_uuid_list + 357
-90033 58006d04  setarg 0x6d04
-90034 60014a44  store 2 ,mem_mouse_uuid_list + 462
-90035 580016b0  setarg 0x16b0
-90036 60014a4a  store 2 ,mem_mouse_uuid_list + 468
-90037 58004876  setarg mem_mouse_uuid_list
-90038 60014575  store 2 ,mem_ui_uuid_table
-90039 20600000  rtn
+9001a 204074b9  call enable_authrom
+9001b d8c08c00  arg 0x8c00 ,contr
+9001c d8a04876  arg mem_mouse_uuid_list ,contw
+9001d df200171  arg 369 ,loopcnt
+9001e 20407f01  call memcpy
+9001f 580f0209  setarg 0x0f0209
+90020 e0a18000  istore 3 ,contw
+90021 58120009  setarg 0x120009
+90022 e0a18000  istore 3 ,contw
+90023 58100209  setarg 0x100209
+90024 e0a18000  istore 3 ,contw
+90025 58000009  setarg 0x000009
+90026 e0a18000  istore 3 ,contw
+90027 d8c08d71  arg 0x8d71 ,contr
+90028 df200109  arg 265 ,loopcnt
+90029 20407f01  call memcpy
+9002a 70488d00  jam 0 ,mem_mouse_uuid_list + 23
+9002b 7048856d  jam 0x6d ,mem_mouse_uuid_list + 15
+9002c 5800401f  setarg 0x401f
+9002d 600149db  store 2 ,mem_mouse_uuid_list + 357
+9002e 58006d04  setarg 0x6d04
+9002f 60014a44  store 2 ,mem_mouse_uuid_list + 462
+90030 580016b0  setarg 0x16b0
+90031 60014a4a  store 2 ,mem_mouse_uuid_list + 468
+90032 58004876  setarg mem_mouse_uuid_list
+90033 60014575  store 2 ,mem_ui_uuid_table
+90034 20600000  rtn
 org 0xa0001
 
 z_entrance9:
@@ -35997,8 +36059,8 @@
 a0019 7011a400  jam 0 ,mem_24g_common_temp + 6
 a001a da20119e  arg mem_24g_common_temp ,rega
 a001b d8400007  arg 7 ,temp
-a001c 204001f3  call p_g24_put_data_in_buff
-a001d 20400179  call p_g24_txdata_enable_tx
+a001c 204001ca  call p_g24_put_data_in_buff
+a001d 20400154  call p_g24_txdata_enable_tx
 a001e 20207fe7  branch enable_user
 
 z_g24_paring_mode:
@@ -36011,23 +36073,23 @@
 
 z_g24_pairing_sm_1_waiting_ack:
 a0025 704c0202  jam state_24g_pairing_2 ,mem_24g_pairing_sm
-a0026 202001aa  branch p_g24_transmit_abandon
+a0026 20200185  branch p_g24_transmit_abandon
 
 z_g24_pairing_sm_2_waiting_ack:
 a0027 704c0203  jam state_24g_pairing_3 ,mem_24g_pairing_sm
-a0028 202001aa  branch p_g24_transmit_abandon
+a0028 20200185  branch p_g24_transmit_abandon
 
 z_g24_pairing_sm_3_waiting_ack:
 a0029 704c02ff  jam state_24g_pairing_success ,mem_24g_pairing_sm
 a002a 700a9939  jam bt_evt_24g_pairing_complete ,mem_fifo_temp
 a002b 20407d86  call ui_ipc_send_event
 a002c 68024bd2  fetch 4 ,mem_24g_rxpayload + 2
-a002d 20400205  call p_g24_update_addr_and_synccrc8
-a002e 202001aa  branch p_g24_transmit_abandon
+a002d 204001dc  call p_g24_update_addr_and_synccrc8
+a002e 20200185  branch p_g24_transmit_abandon
 
 z_mouse_24g_pairing_complete:
-a002f 20400581  call p_low_power_no_data_off_led_time_nolimited
-a0030 20400492  call p_mouse_24g_no_data_timer_init
+a002f 2040051f  call p_low_power_no_data_off_led_time_nolimited
+a0030 2040043c  call p_mouse_24g_no_data_timer_init
 a0031 70478b01  jam 1 ,mem_mouse_24g_enter_lpm_enable
 a0032 d8e00003  arg mosue_24g_pairing_flag ,queue
 a0033 204043d2  call mouse_disable_function_flag
@@ -36035,27 +36097,27 @@
 a0035 60014707  store 2 ,mem_24g_pairing_timer_count
 a0036 7046a700  jam 0 ,mem_mouse_move_flag
 a0037 2040405d  call mouse_read_sensor_common
-a0038 204002fc  call p_mouse_tx_power_init
+a0038 204002b8  call p_mouse_tx_power_init
 a0039 68024c1a  fetch 4 ,mem_24g_addr
 a003a 6002477b  store 4 ,mem_mouse_24g_addr
-a003b 20200381  branch p_mouse_store_flash_device_info
+a003b 2020032b  branch p_mouse_store_flash_device_info
 org 0xb0001
 
 z_entrancea:
 b0001 c0500007  beq zcode_a0 ,z_mouse_24g_attempt_fail
 b0002 c050800d  beq zcode_a1 ,z_mouse_le_conn_param_update_rsp_recieved
-b0003 c0510022  beq zcode_a2 ,z_mouse_le_bb_disconnected
-b0004 c051801b  beq zcode_a3 ,z_mouse_bb_event_reconn_timeout
-b0005 c052002a  beq zcode_a4 ,z_mouse_before_hibernate
+b0003 c0510021  beq zcode_a2 ,z_mouse_le_bb_disconnected
+b0004 c051801a  beq zcode_a3 ,z_mouse_bb_event_reconn_timeout
+b0005 c0520029  beq zcode_a4 ,z_mouse_before_hibernate
 b0006 20600000  rtn
 
 z_mouse_24g_attempt_fail:
 b0007 704d3200  jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
-b0008 204002fc  call p_mouse_tx_power_init
-b0009 204001ef  call p_g24_check_51cmd_stop_24g
+b0008 204002b8  call p_mouse_tx_power_init
+b0009 204001c6  call p_g24_check_51cmd_stop_24g
 b000a 7041bd00  jam 0 ,mem_link_key_exists
-b000b 204000e0  call p_mouse_setgpio_hibernate
-b000c 202002f9  branch p_mouse_null_enter_hibernate_enable
+b000b 204000c7  call p_mouse_setgpio_hibernate
+b000c 202002b5  branch p_mouse_null_enter_hibernate_enable
 
 z_mouse_le_conn_param_update_rsp_recieved:
 b000d 68014509  fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result
@@ -36063,60 +36125,59 @@
 b000f 68008441  fetch 1 ,mem_le_tsniff
 b0010 1feb7e00  rshift2 pdata ,pdata
 b0011 1fe67c0c  sub pdata ,le_interval_15ms ,null
-b0012 20210019  branch z_mouse_le_conn_param_update_rsp_not_accepted ,positive
+b0012 20210018  branch z_mouse_le_conn_param_update_rsp_not_accepted ,positive
 b0013 58000009  setarg le_interval_11_25ms
 b0014 60014496  store 2 ,mem_le_interval_min
 b0015 60014498  store 2 ,mem_le_interval_min + 2
-b0016 20400470  call p_app_updata_le_param
-b0017 7047c401  jam le_lpm_disable ,mem_mouse_le_conn_param_reject
-b0018 20600000  rtn
+b0016 7047c401  jam le_lpm_disable ,mem_mouse_le_conn_param_reject
+b0017 20600000  rtn
 
 z_mouse_le_conn_param_update_rsp_not_accepted:
-b0019 704b6a01  jam 1 ,mem_mouse_le_updata_not_accepted_flag
-b001a 2020065c  branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset
+b0018 704b6a01  jam 1 ,mem_mouse_le_updata_not_accepted_flag
+b0019 202005fc  branch p_mouse_le_conn_param_update_rsp_not_accepted_mult_reset
 
 z_mouse_bb_event_reconn_timeout:
 
 z_mouse_bb_event_reconn_failed:
-b001b 68014682  fetch 2 ,mem_ui_state_map
-b001c c3860000  rtnbit1 ui_state_btn_down
-b001d c3830000  rtnbit1 ui_state_bt_discovery
-b001e c3858000  rtnbit1 ui_state_ble_adv
-b001f 680246d3  fetch mouse_flag_len ,mem_mouse_flag
-b0020 c3828000  rtnbit1 mouse_bt_discovery_button_down_flag
-b0021 202033a7  branch app_bb_hibernate
+b001a 68014682  fetch 2 ,mem_ui_state_map
+b001b c3860000  rtnbit1 ui_state_btn_down
+b001c c3830000  rtnbit1 ui_state_bt_discovery
+b001d c3858000  rtnbit1 ui_state_ble_adv
+b001e 680246d3  fetch mouse_flag_len ,mem_mouse_flag
+b001f c3828000  rtnbit1 mouse_bt_discovery_button_down_flag
+b0020 202033a7  branch app_bb_hibernate
 
 z_mouse_le_bb_disconnected:
-b0022 58000007  setarg le_interval_8_75ms
-b0023 60014496  store 2 ,mem_le_interval_min
-b0024 60014498  store 2 ,mem_le_interval_min + 2
-b0025 7047c400  jam le_lpm_enable ,mem_mouse_le_conn_param_reject
-b0026 70479c00  jam 0 ,mem_mouse_clear_sensor_data_flag
-b0027 204003fc  call p_mouse_data_init
-b0028 20405816  call le_clr_config_more_data
-b0029 202041d9  branch mouse_bb_disconnected
+b0021 58000007  setarg le_interval_8_75ms
+b0022 60014496  store 2 ,mem_le_interval_min
+b0023 60014498  store 2 ,mem_le_interval_min + 2
+b0024 7047c400  jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+b0025 70479c00  jam 0 ,mem_mouse_clear_sensor_data_flag
+b0026 204003a6  call p_mouse_data_init
+b0027 20405816  call le_clr_config_more_data
+b0028 202041d9  branch mouse_bb_disconnected
 
 z_mouse_before_hibernate:
-b002a 78347c00  enable user
-b002b 68120138  hfetch 4 ,0x8138
-b002c 79347e1a  setflag user ,26 ,pdata
-b002d 6012004c  hstore 4 ,core_lpm_reg
-b002e 20402c21  call lpm_write_ctrl
-b002f 204074bd  call disable_authrom
-b0030 20404482  call mouse_devce_led_off
-b0031 20403e9f  call mouse_before_hibernate_wheel_gpio_set
-b0032 6808cb23  fetcht 1 ,mem_24g_sw_gpio
-b0033 20406829  call gpio_out_active
-b0034 204000e0  call p_mouse_setgpio_hibernate
-b0035 6800c720  fetch 1 ,mem_device_flag
-b0036 1fe67c02  sub pdata ,mode_24g_device ,null
-b0037 204285e9  call p_mouse_select_device_button_gpio_set_suspend ,zero
-b0038 204003bb  call p_flash_deep_power_down
-b0039 68108081  hfetch 1 ,core_gpio_sel1
-b003a 1fe17ef7  and pdata ,0xf7 ,pdata
-b003b 60108081  hstore 1 ,core_gpio_sel1
-b003c 6808c6f3  fetcht 1 ,mem_sensor_data_gpio
-b003d 202067ed  branch gpio_clr_wake
+b0029 78347c00  enable user
+b002a 68120138  hfetch 4 ,0x8138
+b002b 79347e1a  setflag user ,26 ,pdata
+b002c 6012004c  hstore 4 ,core_lpm_reg
+b002d 20402c21  call lpm_write_ctrl
+b002e 204074bd  call disable_authrom
+b002f 20404482  call mouse_devce_led_off
+b0030 20403e9f  call mouse_before_hibernate_wheel_gpio_set
+b0031 6808cb23  fetcht 1 ,mem_24g_sw_gpio
+b0032 20406829  call gpio_out_active
+b0033 204000c7  call p_mouse_setgpio_hibernate
+b0034 6800c720  fetch 1 ,mem_device_flag
+b0035 1fe67c02  sub pdata ,mode_24g_device ,null
+b0036 20428589  call p_mouse_select_device_button_gpio_set_suspend ,zero
+b0037 20400365  call p_flash_deep_power_down
+b0038 68108081  hfetch 1 ,core_gpio_sel1
+b0039 1fe17ef7  and pdata ,0xf7 ,pdata
+b003a 60108081  hstore 1 ,core_gpio_sel1
+b003b 6808c6f3  fetcht 1 ,mem_sensor_data_gpio
+b003c 202067ed  branch gpio_clr_wake
 org 0xc0001
 
 z_entranceb:
@@ -36124,11 +36185,11 @@
 c0002 c0588009  beq zcode_b1 ,z_mouse_sniff_not_accept
 c0003 c059000f  beq zcode_b2 ,z_mouse_enter_sniff_check
 c0004 c0598014  beq zcode_b3 ,z_mouse_le_ll_start_encryt
-c0005 c05a001b  beq zcode_b4 ,z_mouse_bb_event_disconnected
+c0005 c05a001a  beq zcode_b4 ,z_mouse_bb_event_disconnected
 c0006 20600000  rtn
 
 z_mouse_le_bb_event_connected:
-c0007 20400581  call p_low_power_no_data_off_led_time_nolimited
+c0007 2040051f  call p_low_power_no_data_off_led_time_nolimited
 c0008 202041c3  branch mouse_le_bb_event_connected
 
 z_mouse_sniff_not_accept:
@@ -36149,19 +36210,18 @@
 z_mouse_le_ll_start_encryt:
 c0014 6800c79f  fetch 1 ,mem_mouse_le_reconnect_flag
 c0015 c0008017  beq 1 ,z_mouse_le_ll_reconn_start_encryt
-c0016 20200019  branch z_mouse_le_ll_enable_start_enc_flag
+c0016 20200018  branch z_mouse_le_ll_enable_start_enc_flag
 
 z_mouse_le_ll_reconn_start_encryt:
-c0017 20400470  call p_app_updata_le_param
-c0018 7046c605  jam 5 ,mem_le_start_encrypt_timer
+c0017 7046c605  jam 5 ,mem_le_start_encrypt_timer
 
 z_mouse_le_ll_enable_start_enc_flag:
-c0019 d8e00001  arg ll_start_enc_flag ,queue
-c001a 202041b9  branch mouse_le_enable_connect_flag
+c0018 d8e00001  arg ll_start_enc_flag ,queue
+c0019 202041b9  branch mouse_le_enable_connect_flag
 
 z_mouse_bb_event_disconnected:
-c001b 704aff00  jam 0 ,mem_bt_rcvd_switch_req_accept
-c001c 704b0100  jam 0 ,mem_bt_send_lmp_setup_complete
-c001d 704b0a00  jam 0 ,mem_mouse_bt_send_first_package_flag
-c001e 202041d9  branch mouse_bb_disconnected
+c001a 704aff00  jam 0 ,mem_bt_rcvd_switch_req_accept
+c001b 704b0100  jam 0 ,mem_bt_send_lmp_setup_complete
+c001c 704b0a00  jam 0 ,mem_mouse_bt_send_first_package_flag
+c001d 202041d9  branch mouse_bb_disconnected
  branch mouse_bb_disconnected
Index: YDN_1066_139D_NEW/output/ramcode.rom
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/ramcode.rom	(revision 2105)
+++ /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/ramcode.rom	(working copy)
@@ -1,41 +1,42 @@
 20200040
-204003fc
+204003a6
 6800c1de
 6000cca9
-2040076d
+2040070d
 6800c685
 6000c6da
 6800cb31
 6000cb32
 204043ca
-2040031b
-2040000e
-20400021
-20200365
-580003d2
+204002c5
+2040079a
+2040000f
+20400022
+2020030f
+5800037c
 60014d23
-580003ec
+58000396
 600141ef
-580006ae
+5800064e
 600141f9
-58000417
+580003c1
 600141f1
-580002db
+58000298
 600141ed
-58000458
+58000402
 600141f5
-5800043d
+580003e7
 600141f3
-58000495
+5800043f
 600141eb
-5800049c
+58000446
 600141fd
 20600000
 58000019
 60014d35
-24558029
-2040031d
-2040035e
+2455802a
+204002c7
+20400308
 6800c71f
 6000c71e
 20600000
@@ -61,49 +62,48 @@
 20000001
 20000001
 20000001
-20000001
 c2840059
 c0008075
 c001007e
-c04287d9
-c04487aa
-c00d86c7
-c01306c9
-c02406e5
-c02506ec
-c02886f5
-c02c86e3
-c05386fa
-c0568710
+c0428779
+c044874a
+c00d8667
+c0130669
+c0240685
+c025068c
+c0288695
+c02c8683
+c053869a
+c05686b0
 c065b3e4
-c0748721
+c07486c1
 c0508087
 c058808c
 c059009a
-c06202e8
-c071858b
-c07305b6
-c07505ec
-c07585f2
-c07605ff
+c06202a5
+c0718529
+c0730554
+c075058c
+c0758592
+c076059f
 20202a8e
-c01c8606
-c021860e
-c0250614
-c02b8617
-c02c8619
-c031861b
-c0330645
-c0338660
-c0350699
-c03b86a4
-c0028723
-c0400725
-c041072f
-c0440731
-c04606b4
-c04686c0
-c07d0755
+c01c85a6
+c02185ae
+c02505b4
+c02b85b7
+c02c85b9
+c03185bb
+c03305e5
+c0338600
+c0350639
+c03b8644
+c00286c3
+c04006c5
+c04106cf
+c04406d1
+c0460654
+c0468660
+c07d06f5
 20202a8e
 1fe22200
 6808ccad
@@ -118,7 +118,7 @@
 d8a009ae
 df20000c
 20407ed4
-204003e3
+2040038d
 20406a03
 20405cf6
 2455ac65
@@ -155,58 +155,33 @@
 c6930000
 6800cd32
 c00080ad
-20400176
-243400c8
-2040015d
-20400199
+20400151
+243400af
+2040012c
+20400174
 6800cc02
 c1ff8000
-2040077e
+2040071e
 6800cb26
-c00083d5
-204000d6
+c000837f
+204000bd
 24740000
-204002e2
+2040029f
 5800ec54
 20202b93
 704b6b01
 20600000
-204002ad
-24740000
-204000c2
-68014d33
-1fe0fe01
-60014d33
-68094d35
-98467c00
-204280b7
-2020009d
-704d3200
-58000000
-60014d33
-58000019
-60014d35
-704c2d00
-6800cc18
-6000cc17
-20600000
-6800cc19
-202000be
-6800cc2d
-1fe0fe01
-6000cc2d
-c00200c0
-c00280bc
-20600000
+7011c701
+2020077b
 6800cc1e
-205a0112
+205a00e1
 6800cb2b
 247a0000
 6800cb6b
 247a0000
 6800cb26
 c1008000
-204000d6
+204000bd
 24740000
 6801cc21
 20407f49
@@ -220,10 +195,10 @@
 203a7fe9
 6800cd32
 c000ffe9
-204002e5
-204002e2
-204000f0
-20400367
+204002a2
+2040029f
+204000d7
+20400311
 68120070
 681a0078
 98418400
@@ -245,36 +220,12 @@
 2040bede
 2040680e
 204063ee
-6808c6e2
-204067dd
-6808c6e3
-204067dd
-6808c6e4
-204067dd
-6808c6e5
-204067dd
-6808c6e6
-204067dd
-6808c6e7
-204067dd
-6808c6ed
-204067dd
-204067dd
 6808c6ec
 204067dd
-6808c6e8
-204067dd
-6808c6e9
-204067dd
-6808c6ea
-204067dd
-6808c6eb
-204067dd
-6808c6f3
-202067e1
+20203ec6
 704c1e01
 704d2700
-20400125
+204000f4
 6000cb8e
 58000000
 6003cb8f
@@ -284,7 +235,7 @@
 6800cbf3
 79207e03
 6000cbf3
-20400179
+20400154
 202000a0
 680240a0
 60024c29
@@ -304,53 +255,53 @@
 793ffe04
 6000cbf3
 20600000
-20400774
+20400714
 6800cd29
-c0008137
-c001013b
+c0008106
+c001010a
 20600000
 704d2a02
 704d2600
 704d2800
-20200125
+202000f4
 704d2700
-20200138
+20200107
 68014bf8
 1fe0fe01
 60014bf8
-c28501dc
+c28501b3
 6800cd27
-c0008146
+c0008115
 704d2701
 6800cd27
-c0808125
+c08080f4
 6800cd25
 1fe0fe01
 6000cd25
-c002014d
-20400225
+c002011c
+20400144
 704c3702
-20200199
-20400774
+20200174
+20400714
 704d2500
-20200125
+202000f4
 704d2a02
 704d2801
 704d2700
-20200125
+202000f4
 6800cd29
-c0018151
+c0018120
 6800cbf3
 2fec0004
-20208123
+202080f2
 6800cd29
-c0008150
-c0010151
+c000811f
+c0010120
 20600000
 6800cc02
 c1ff8000
-20400162
-2456016a
+20400131
+24560139
 20600000
 78567c00
 6800cd28
@@ -361,34 +312,46 @@
 704c3704
 20207feb
 6800cd2a
-203a0171
+203a0140
 1fe0ffff
 6000cd2a
 704d2902
 704c3704
-20200225
+20200144
 704d2903
 6800cd27
-243a0144
+243a0113
 704c3702
-20200225
+6808cbfd
+6800cc1a
+1fe17e03
+1fefa204
+58004c03
+9a20fe00
+98408c00
+e8c08000
+6000cbfc
+18408401
+18410403
+6008cbfd
+20600000
 6800cc02
-c0ff81e7
-2040017c
-20400213
+c0ff81be
+20400157
+204001ea
 704bf701
 20600000
 68014d23
 20407f9c
-20340182
+2034015d
 6803cb8f
 207a0000
 20207fe7
-20400492
+2040043c
 704c1e00
 1a20fe01
 6000cbf2
-20400125
+204000f4
 6000cb8e
 e8a88000
 ea408000
@@ -405,25 +368,25 @@
 9840fe00
 e0a08000
 1a40a401
-c2000192
+c200016d
 20600000
 704bfb00
 d9600d00
 34730200
-204001b5
+20400190
 6800cc2e
 c1008000
-242c01c4
-243781c4
-204001b0
-204001e0
-20400770
+242c019b
+2437819b
+2040018b
+204001b7
+20400710
 6800cbf1
 1fe0fe01
 6000cbf1
 6800cc02
-c0ff81b3
-20400154
+c0ff818e
+20400123
 58000000
 60014bf8
 6000cbfa
@@ -433,52 +396,48 @@
 df200004
 d8a04b8e
 20207ec6
-2040076d
-202001e9
+2040070d
+202001c0
 7857fc00
-2040028c
-6800cc2e
-c00081c2
+20400249
 18002a00
 68024c1a
 98001200
 68088017
 2040291f
 20402924
-20400248
-20578284
+20400205
+20578241
 20600000
-20400284
-202001a4
 6800cbfa
 1fe0fe01
 6000cbfa
 6800cc02
-c0ff81d8
+c0ff81af
 6808cbfb
 18408401
 6008cbfb
 6800cc37
 98467e00
-243a019a
+243a0175
 6800cd29
-c001813d
+c001810c
 6800cd26
 1fe0fe01
 6000cd26
-c0010132
-20400129
+c0010101
+204000f8
 704c3701
-20200199
+20200174
 6800cbfa
 c1ff8000
 704bfa00
-202001de
+202001b5
 58000000
 60014bf8
 700a993a
 20207d86
-204001f8
+204001cf
 6800cbf0
 207a0000
 98007200
@@ -486,13 +445,13 @@
 d8a04bd0
 20207f01
 7011c790
-202007db
+2020077b
 7011c791
-202007db
+2020077b
 7011c760
-202007db
+2020077b
 7011c770
-202007db
+2020077b
 793f8026
 204053ce
 d8e00003
@@ -521,7 +480,7 @@
 d8c04c1a
 e8c08000
 9a20a200
-c2000209
+c20001e0
 1a227e00
 60014ca3
 6800cca3
@@ -547,23 +506,6 @@
 98007200
 d8c04b8e
 20207f01
-6808cbfd
-20400229
-6008cbfd
-20600000
-2040022d
-18408401
-18410403
-20600000
-6800cc1a
-1fe17e03
-1fefa204
-58004c03
-9a20fe00
-98408c00
-e8c08000
-6000cbfc
-20600000
 7844fc00
 7843fc00
 58555555
@@ -573,16 +515,7 @@
 79200401
 18431c00
 20600000
-204053c4
-68024c1a
-98001200
-20402918
-6808cbfc
-2040291f
-58000500
-20402a8f
-20402924
-20400236
+204001fc
 7857fc00
 7826fc00
 7830fc00
@@ -591,35 +524,35 @@
 68014bf5
 98003600
 37c18400
-242c0288
+242c0245
 7846fc00
 7825fc00
 7823fc00
 7824fc00
-20400281
+2040023e
 6000cca6
 6808cca5
 98467c00
-24228284
-20400281
+24228241
+2040023e
 6000cb6c
 6800cc38
 1fe67c02
-20228264
+20228221
 6800cb6c
 6808cbf3
 a8400e00
-24208284
-20400281
+24208241
+2040023e
 e0a08000
 1fe97e00
 1fe1721f
-2022826c
-20400281
+20228229
+2040023e
 e0a08000
-c2000269
+c2000226
 18a22200
-20400281
+2040023e
 6000cd2d
 1a220a00
 09800018
@@ -629,7 +562,7 @@
 1ff17e00
 e0a18000
 7845fc00
-20230284
+20230241
 7837fc00
 68008017
 1fe0a200
@@ -646,15 +579,15 @@
 7845fc00
 2040264d
 20600000
-20200284
+20200241
 20402918
 6808cbfc
 20202933
 204053c4
 68024c1a
 98001200
-20400236
-20400289
+204001fc
+20400246
 79202a00
 782efc00
 78307c00
@@ -674,7 +607,7 @@
 d8c04bae
 e8c08000
 08008608
-c20002a2
+c200025f
 78247c00
 08008618
 78447c00
@@ -702,7 +635,7 @@
 207a0000
 6808ccac
 da200d9e
-204002c3
+20400280
 6008ccac
 20600000
 1a227e00
@@ -717,7 +650,7 @@
 1a220c00
 e8c08000
 98408400
-c20002cd
+c200028a
 18497e00
 1fe20400
 c6930000
@@ -730,10 +663,10 @@
 20600000
 20600000
 c6130000
-204003d9
-204000de
+20400383
+204000c5
 6800c040
-c30002e2
+c300029f
 680080a0
 247a0000
 58000000
@@ -741,24 +674,23 @@
 20600000
 6800cafe
 207a0000
-2020058b
+20200529
 20403416
 204074b9
-2035831b
+203582c5
 20400001
 6800c241
-c28102f0
-204005c4
-c0028319
-204002fc
+c28102ad
+20400564
+c00282c3
+204002b8
 6800c720
 6808c703
 98467c00
-20228301
-2040052b
+202282bd
+204004cd
 6800c210
-c0198304
-c01a0307
+c01982c0
 70479d01
 70479e28
 20600000
@@ -768,49 +700,31 @@
 6800c6f5
 20204360
 70472002
-2040052b
-202003c6
+204004cd
+20200370
 680341d0
 203a33eb
 20204274
-704b6701
-70479f01
-680146a8
-600146ae
-20403418
-20400312
-58000004
-e0c08000
-d8c04390
-204005fb
-20207df4
-da204370
-ea208000
-207a0000
-98c0a200
-e8c08000
-c1008000
-20200313
 7011c761
-202007db
+2020077b
 70421276
 20203d36
-2040031b
+204002c5
 204040c0
 204040d9
-c0180329
-c018834f
+c01802d3
+c01882f9
 204040d1
 200003e8
-2020031f
+202002c9
 704afe01
 2040640f
-2040031d
+204002c7
 20206411
-20400354
+204002fe
 6800c6de
-c02d032e
-c06c0336
+c02d02d8
+c06c02e0
 202040e1
 58008006
 20406413
@@ -823,15 +737,15 @@
 58000016
 20406414
 1fe67cbd
-2422831f
+242282c9
 58000019
 20406414
 1fe67c55
-2422831f
+242282c9
 5800001b
 20406414
 1fe67c1d
-2422831f
+242282c9
 7046e008
 204040f6
 58000206
@@ -845,22 +759,22 @@
 5800ba0f
 20406413
 202040f4
-20400354
+204002fe
 6800c6de
 c03840e8
 7046e001
 20600000
-2040031b
+204002c5
 58008006
 20406413
 20002ee0
 6800c77a
-c07f835b
-2020058b
+c07f8305
+20200529
 6800c6e1
 6000c77a
-2020058b
-2040031b
+20200529
+204002c5
 58000006
 20406414
 1fe1fe08
@@ -868,7 +782,7 @@
 1fe0fe06
 20206413
 7011c780
-202007db
+2020077b
 6808cb45
 20206825
 70808640
@@ -885,30 +799,30 @@
 793ffe00
 6010807f
 20600000
-204003c4
+2040036e
 20404423
 68014778
 d840aa55
 98467c00
-202283b4
+2022835e
 60094778
 2040441c
 6800c6e1
 6000c77a
-204003c4
-20400393
-204003ab
-20400397
-204003a2
+2040036e
+2040033d
+20400355
+20400341
+2040034c
 d8400002
 da2047c2
 da40005f
 6801c700
 9a40fe00
-20400397
-204003a2
-204003bb
-2020031b
+20400341
+2040034c
+20400365
+202002c5
 d8400004
 da204c1a
 da40005b
@@ -916,7 +830,7 @@
 6801c700
 6001c232
 2040652a
-202003a2
+2020034c
 1fe22600
 1a227e00
 1fe0fffc
@@ -935,7 +849,7 @@
 6011008c
 58000005
 204064f3
-c28003a2
+c280034c
 20600000
 5800477f
 d8404720
@@ -943,18 +857,18 @@
 6801c700
 da204720
 20600000
-204003c4
-204003ab
+2040036e
+20400355
 20206562
-204003b1
-204005f4
-204002ff
+2040035b
+20400594
+204002bb
 2040431a
 6802477b
 60024c1a
 20600000
 700aa2b9
-20400369
+20400313
 20000064
 2040650b
 da204b47
@@ -963,10 +877,10 @@
 20000064
 20600000
 700aa2ab
-202003bc
-204003c9
-203401ed
-202001eb
+20200366
+20400373
+203401c4
+202001c2
 df200002
 d8c04c1a
 20407fe7
@@ -974,7 +888,7 @@
 e8c90000
 98467c00
 2442ffe9
-c20003cd
+c2000377
 20600000
 20404401
 6801469f
@@ -985,38 +899,38 @@
 20600000
 d8c01800
 d8a0480a
-204003e1
+2040038b
 d8c01900
-204003e1
+2040038b
 d8c01a00
-204003e1
+2040038b
 d8c01b00
 df20001b
 20207f01
 d8c0480a
 d8a01800
-204003e1
+2040038b
 d8a01900
-204003e1
+2040038b
 d8a01a00
-204003e1
+2040038b
 d8a01b00
-202003e1
+2020038b
 20405892
 247a0000
 6800c6c5
 1fe17e03
 c1818000
 6800c79c
-205a043a
+205a03e4
 680246d3
 c282c179
 20403f97
 24740000
-20400412
+204003bc
 da20469a
 20407e3d
-20540401
+205403ab
 20600000
 7047a007
 7047a104
@@ -1029,7 +943,7 @@
 20600000
 da20469a
 20407e54
-20340409
+203403b3
 20600000
 20405652
 6800c7c1
@@ -1051,15 +965,15 @@
 20405271
 247a0000
 6800c79c
-205a043a
+205a03e4
 680246d3
 c282bf8a
 c284bf8a
 20403f97
 24740000
-20400412
+204003bc
 6800cb03
-c0008429
+c00083d3
 6800cb0a
 207a0000
 20203f81
@@ -1082,18 +996,18 @@
 20600000
 20405814
 70479c01
-20200354
+202002fe
 20407e34
-20400440
+204003ea
 20203ee0
 6808cb23
 2040680e
 6808c6e7
-204005db
+2040057b
 6808c6e7
 2040681d
-20208456
-204005e4
+20208400
+20400584
 6800c6b6
 c1000000
 7046b600
@@ -1105,102 +1019,100 @@
 1feffe02
 1fe0fe02
 60014b2b
-20400540
+204004de
 20403d7e
-20200381
-204005e4
+2020032b
+20400584
 20203d62
 1a627e00
-c00a046a
-c00a846d
-c0148470
-c0190472
-c0200474
-c0020476
-c0098476
-c0138478
+c00a0414
+c00a8417
+c014841a
+c019041c
+c020041e
+c0020420
+c0098420
+c0138422
 c00cb3df
-c010847a
-c000847c
-c0010482
-c0158485
-c01c8487
-c01d048a
-c01e048d
+c0108424
+c0008426
+c001042c
+c015842f
+c01c8431
+c01d0434
+c01e0437
 2020417d
-20400325
+204002cf
 7011c7b0
-202007db
-20400498
+2020077b
+20400442
 7011c7a2
-202007db
+2020077b
 700a9912
 20207d8f
 7011c7b3
-202007db
+2020077b
 7011c7a1
-202007db
+2020077b
 7011c7a3
-202007db
+2020077b
 2040438e
 202033a7
 7011c7b1
-202007db
-20400581
-20400325
-204004f3
-2040053a
+2020077b
+2040051f
+204002cf
+20400495
+204004d8
 70480900
 202042ca
-20400498
+20400442
 7011c7b4
-202007db
+2020077b
 7011c7b2
-202007db
-20400325
+2020077b
+204002cf
 7011c792
-202007db
-20400498
+2020077b
+20400442
 7011c7a0
-202007db
-20400581
+2020077b
+2040051f
 704b6001
-204004f3
-20400325
+20400495
+204002cf
 20403f8d
 58002ee0
 600146b0
 20600000
-20400498
+20400442
 7011c7a4
-202007db
+2020077b
 6800cafe
 207a0000
 704afe00
-2020035e
-20400543
-20400568
-20400584
-204004f6
-204004df
-204004e8
-204004e4
+20200308
+204004e1
+20400506
+20400522
+20400498
+20400481
+2040048a
+20400486
 20404234
-204004ae
-204004d8
-204004c4
-204004c1
-204004ca
-204004d0
-204004b9
+20400456
+2040047a
+2040046c
+20400472
+20400461
 20404231
-204004bc
+20400464
 2020423a
 6800c6f5
 c4030000
 6808c6ed
 2040681d
-202084b6
+2020845e
 6800c720
 c080e59a
 20600000
@@ -1211,42 +1123,36 @@
 da40637a
 2020336d
 da604b09
-da4004bf
+da400467
 2020336d
 704b0a01
 20600000
-da6046c6
-da403d60
-2020336d
-da6046ae
-da4004c7
-20203374
 6800cb2f
 247a0000
 20204266
 da604b5b
-da4004cd
+da40046f
 2020336d
 6800c7c5
 6000c172
-202004dd
+2020047f
 6800cb61
 207a0000
 da604b66
-da4004d5
+da400477
 2020336d
 6800cb67
 247a0000
 20205bf5
 da604b5c
-da4004db
+da40047d
 2020336d
 58249f00
 6001cc21
 704b5a01
 20600000
 da604807
-da4004e2
+da400484
 2020336d
 70480600
 20600000
@@ -1259,7 +1165,7 @@
 6800c79d
 207a0000
 6800c79e
-203a04f1
+203a0493
 1fe0ffff
 6000c79e
 20600000
@@ -1271,19 +1177,19 @@
 6800cb24
 207a0000
 6800cb27
-c00004fc
-c0008506
+c000049e
+c00084a8
 20600000
-20400516
+204004b8
 6800cb2d
 1fe0fe01
 6000cb2d
 6808cb28
 98467c00
-20428504
+204284a6
 20600000
 704b2f00
-20200524
+202004c6
 6800cb2a
 1fe0ffff
 6000cb2a
@@ -1291,18 +1197,18 @@
 6800cb29
 6000cb2a
 6800cb2e
-203a0512
+203a04b4
 6800cb2b
-203a0522
+203a04c4
 1fe0ffff
 6000cb2b
 6800cb26
-c0008524
-c0000516
+c00084c6
+c00004b8
 20600000
 704b2601
 6800c720
-c001051e
+c00104c0
 6808cb25
 79200407
 2040680e
@@ -1315,21 +1221,17 @@
 58000000
 6001cb2a
 6800cb2b
-243a0528
+243a04ca
 704b2400
 704b2700
 704b2d00
 704b2600
-202000ed
+202000d4
 704b2f01
 704b2401
 704b2700
 704b2d00
 20600000
-704b2b1e
-20200540
-704b2905
-20200535
 704b2903
 704b2b01
 704b2a01
@@ -1341,10 +1243,10 @@
 247a0000
 6800cb2f
 247a0000
-20200522
+202004c4
 704b2905
 704b2e01
-20200536
+202004d4
 6800c6ce
 1fe0fe01
 6000c6ce
@@ -1356,10 +1258,10 @@
 20406908
 6001470f
 da204709
-2040055b
+204004f9
 6800c231
 c280b40a
-c3000554
+c30004f2
 704afd01
 202043e7
 204043e9
@@ -1368,7 +1270,7 @@
 704afd00
 6800c6ef
 6000c715
-20200522
+202004c4
 ea240000
 60040a9a
 68090a9c
@@ -1396,12 +1298,12 @@
 6800c6cf
 1fe0fe01
 6000c6cf
-c0028522
+c00284c4
 1fe67c0a
-2421057a
+24210518
 20600000
 7046cf01
-20200516
+202004b8
 6800cb37
 1fe0fe01
 6000cb37
@@ -1411,36 +1313,36 @@
 704b3696
 20600000
 da604b36
-da400587
+da400525
 2020336d
 58604800
 6001cc21
 704b3801
-20200558
+202004f6
 6800c6e0
-c00405a1
-c00205a8
-c00105ad
+c004053f
+c0020546
+c001054b
 6800c77a
-c0000597
-c0008599
-c001059b
-c001859d
+c0000535
+c0008537
+c0010539
+c001853b
 20600000
 6000c6b5
 20203dc1
 6800c77f
-20200595
+20200533
 6800c77f
-20200595
+20200533
 6800c77f
-20200595
+20200533
 6800c782
-20200595
+20200533
 70477a02
 20600000
 6800c77a
-c00085a6
+c0008544
 c001bd88
 c0013d8c
 20203d8a
@@ -1454,7 +1356,7 @@
 6800c77a
 c000bd88
 c0003d8a
-c00185b2
+c0018550
 20203d8e
 58000005
 20203dbe
@@ -1466,33 +1368,35 @@
 20403fb5
 20404079
 2040407e
-204005c2
-243405c0
-2040057c
+20400562
+2434055f
+2040079d
+2040051a
 20203fa0
+2040079a
 704b3700
 20600000
-204005c4
+20400564
 2020409a
 da200000
-204005c9
-204005cf
-204005d5
+20400569
+2040056f
+20400575
 2020408e
 6808c6e2
-204005e4
+20400584
 6808c6e2
 2040681d
 7920a200
 20600000
 6808c6e3
-204005e4
+20400584
 6808c6e3
 2040681d
 7920a201
 20600000
 6808c6e4
-204005e4
+20400584
 6808c6e4
 2040681d
 7920a202
@@ -1510,19 +1414,19 @@
 d8a08078
 20406830
 793f8407
-202005df
+2020057f
 6808c6ed
 793f8407
-202005e5
-204004f3
+20200585
+20400495
 280ffe26
-204081ef
+204081c6
 2020426d
 7011c781
-202007db
+2020077b
 7011c750
-202007db
-204003c4
+2020077b
+2040036e
 d8400002
 da2047c2
 da40005f
@@ -1535,18 +1439,18 @@
 202057b8
 58000000
 600146ac
-20400354
+204002fe
 6800c092
 2feffe00
 2040c2d7
-2020053a
+202004d8
 6800c50f
 1fe0fe01
 6000c50f
 c0065395
 204055aa
 2040561e
-2040077e
+2040071e
 2020538f
 68008016
 1fe0fe01
@@ -1558,31 +1462,31 @@
 2040006b
 202054a3
 7011c740
-202007db
+2020077b
 7011c741
-202007db
+2020077b
 68008456
-c282862f
-20400770
+c28285cf
+20400710
 6800c78e
-243a0625
+243a05c5
 6800843f
-c3020629
+c30205c9
 680082da
-203a0629
+203a05c9
 20205664
 6800c78e
 1fe0ffff
 6000c78e
 20205664
 6800c4c4
-c082862c
+c08285cc
 70478e03
 20405892
-205a0405
+205a03af
 20205622
-20400631
-2020063d
+204005d1
+202005dd
 6800c6c5
 1fe17e03
 c1818000
@@ -1595,7 +1499,7 @@
 6000c3dc
 20405650
 20600000
-20200774
+20200714
 6800c79f
 207a0000
 6800c6c5
@@ -1616,10 +1520,10 @@
 18c27e00
 6001450d
 6800c50c
-c0018654
+c00185f4
 2020568d
 680082db
-c0008657
+c00085f7
 20205c65
 e8c28000
 6002c3ce
@@ -1631,18 +1535,18 @@
 6000c7c5
 20600000
 e8c10000
-c0020664
-c0030691
+c0020604
+c0030631
 20205698
 20407ea5
-2040063e
+204005de
 20407e9f
 e8c18000
 60018477
-c0080673
+c0080613
 1fec8400
 18467c24
-20210681
+20210621
 d84047c6
 600944bc
 204058ad
@@ -1663,33 +1567,33 @@
 5800002b
 e0c10000
 20600000
-c0050683
+c0050623
 202058ad
 68090478
 6800c4e9
-c281868a
+c281862a
 68010478
 c009da76
 68090478
 202059bf
 680144fa
 98467c00
-24228686
+24228626
 20405a42
-24340686
+24340626
 70047a05
 20205a77
 e8c08000
-c0008695
-c0028697
+c0008635
+c0028637
 20205af6
 704b6701
 20205b09
 7011c782
-202007db
+2020077b
 68008016
 c093d6f2
-2040069f
+2040063f
 d8e00000
 68014482
 20207f08
@@ -1699,7 +1603,7 @@
 1fe0fefa
 20203cbe
 7855fc00
-203706a7
+20370647
 2436d806
 20402bcb
 680140c1
@@ -1723,7 +1627,7 @@
 204063ee
 184104fd
 2000000d
-204006c1
+20400661
 60188073
 20600000
 204064dd
@@ -1734,7 +1638,7 @@
 60108081
 20600000
 7011c700
-202007db
+2020077b
 204021c9
 24740000
 78547c00
@@ -1743,10 +1647,10 @@
 793f802d
 20402a4f
 204022e6
-c50586d6
+c5058676
 20402455
-243a06cf
-c51686df
+243a066f
+c516867f
 202021ec
 20402a4d
 d8200010
@@ -1756,7 +1660,7 @@
 68008077
 98000800
 70001102
-202006cf
+2020066f
 68020165
 1fe0fe08
 60020165
@@ -1772,13 +1676,13 @@
 2020246e
 68008030
 2feffe00
-204086f0
+20408690
 2020248a
 68008047
 2feffe03
-20408774
-24408770
-2020077e
+20408714
+24408710
+2020071e
 204024f0
 242c28f9
 204029bb
@@ -1791,7 +1695,7 @@
 6800c091
 207a0000
 6800c65a
-203a0704
+203a06a4
 6800c5b1
 207a0000
 6800c4c0
@@ -1818,18 +1722,18 @@
 c586abde
 20405274
 243a2bde
-205a071e
+205a06be
 20202bbe
 70008a01
 70008b00
 20600000
 7011c710
-202007db
+2020077b
 7011c711
-202007db
+2020077b
 68008552
 600084c9
-c0098729
+c00986c9
 20205db4
 20405dcf
 704aff01
@@ -1838,21 +1742,21 @@
 704b0102
 20600000
 7011c720
-202007db
+2020077b
 204062bc
 247a0000
 68008055
 207a0000
-c0020753
-c0080738
+c00206f3
+c00806d8
 20206320
 6800c55b
 c1000000
-c000873c
+c00086dc
 2020635f
 20748000
 6800816d
-c2800740
+c28006e0
 20206399
 6800cb01
 c000e39d
@@ -1869,7 +1773,7 @@
 98408400
 1c427e00
 98467c00
-24210751
+242106f1
 20206349
 704b0001
 20600000
@@ -1879,13 +1783,13 @@
 243a7ddb
 68008a99
 c584fdd6
-c00f875d
-c0100760
-c009076a
+c00f86fd
+c0100700
+c009070a
 20207dca
 70018534
 6803044f
-20200762
+20200702
 70018533
 68030040
 60030186
@@ -1895,7 +1799,7 @@
 204043d2
 204042e8
 204042fb
-20200381
+2020032b
 20405890
 247a0000
 20205abf
@@ -1908,7 +1812,7 @@
 20600000
 6800cd2b
 1fe67c02
-2441077c
+2441071c
 6800cd2b
 c1000000
 1fe0ffff
@@ -1921,41 +1825,41 @@
 c3838000
 c3830000
 da204cb4
-204002ca
+20400287
 6008cd2c
 58000082
-c5130788
+c5130728
 58000080
 98467c00
-242107a0
+24210740
 6800cd2b
 1fe67c02
-24210790
+24210730
 6800cd2b
-c00007a1
+c0000741
 20600000
 6800cd2b
 c1900000
 704d2b00
 6808cd2c
 58000077
-c5130797
+c5130737
 58000075
 98467c00
 24610000
 6800cd2e
-c00007a8
+c0000748
 1fe0ffff
 6000cd2e
-c00007a8
+c0000748
 7041de00
 20600000
 704d2b00
 6800cd2e
-c00107a6
+c0010746
 1fe0fe01
 6000cd2e
-c000879e
+c000873e
 7041de02
 20600000
 7041de04
@@ -1976,20 +1880,20 @@
 2000000a
 7089027d
 6800c1de
-c00107c2
-c00207c7
-c01007d6
-204007cc
+c0010762
+c0020767
+c0100776
+2040076c
 708955d0
 708956e0
 7089586c
 2020294b
-204007d1
+20400771
 708955d0
 708956e0
 7089583c
 20202953
-204007cc
+2040076c
 708955d0
 708956c0
 7089586c
@@ -2013,7 +1917,7 @@
 18518400
 6800cb50
 98467c00
-202287f8
+20228798
 6008cb50
 18408401
 58000100
@@ -2024,14 +1928,14 @@
 9840fe00
 1fe0fffb
 6001cb57
-204003c4
+2040036e
 6801cb57
 d8400100
 da201f00
 20406562
 68021f00
-203a07eb
-2040031b
+203a078b
+204002c5
 58001f00
 60014199
 70419b40
@@ -2040,3 +1944,104 @@
 60024199
 680091c7
 20200001
+df200005
+d8a04b0b
+20207ed4
+6802469b
+207a0000
+204007ee
+58000006
+204007e1
+58000003
+204007e7
+6800cb0b
+c00087a7
+2020079a
+68014b0c
+600111be
+6801469b
+600111c0
+204007ba
+680111be
+60014b0c
+680111c0
+6001469b
+68014b0e
+600111be
+6801469d
+600111c0
+204007ba
+680111be
+60014b0e
+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
+1fe67e00
+60008aae
+68008aae
+1fe37e00
+60008aae
+68008aae
+1fe67e00
+20600000
+9a267c00
+242107ec
+9a467c00
+242107ec
+704b0b00
+20600000
+9a267c00
+24610000
+9a467c00
+24610000
+202007e5
+704b0b01
+20600000
+6801469b
+600111c0
+204007f7
+1fe22200
+6801469d
+600111c0
+204007f7
+1fe22400
+20600000
+680091c1
+c07f87fc
+680091c0
+1fe17eff
+20600000
+680111c0
+1fe67e00
+202007fa
Index: YDN_1066_139D_NEW/output/romcode.rom
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/romcode.rom	(revision 2105)
+++ /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/output/romcode.rom	(working copy)
@@ -24572,7 +24572,35 @@
 e0a08000
 c2007ff9
 20600000
-c0000003
+c000001f
+c0008004
+20600000
+2040026a
+24740000
+20400019
+68014d33
+1fe0fe01
+60014d33
+68094d35
+98467c00
+2042800e
+2020009d
+704d3200
+58000000
+60014d33
+58000019
+60014d35
+704c2d00
+6800cc18
+6000cc17
+20600000
+6800cc19
+20200015
+6800cc2d
+1fe0fe01
+6000cc2d
+c0020017
+c0028013
 20600000
 6800800e
 1fe0fe01
@@ -24580,10 +24608,10 @@
 20402435
 7920002c
 204022f2
-202c000e
+202c002a
 793f802c
 20402455
-243a0007
+243a0023
 202020fc
 793f802c
 2020215f
@@ -24610,10 +24638,10 @@
 c28642b0
 204033a9
 6808c6ec
-204005e4
+20400584
 6808c6ec
 2040681d
-202082f9
+202082b5
 202033a7
 68010264
 1fe20c00
@@ -24713,10 +24741,12 @@
 20600000
 70480914
 2020636f
-c0200004
-c0208016
+c0200006
+c0208018
+c0210025
+c021802b
 20600000
-2040000c
+2040000e
 2020557d
 6800c7c5
 6000c172
@@ -24726,17 +24756,17 @@
 20600000
 6800c3d6
 1fe67c0c
-2421000a
+2421000c
 6800c3d8
 6808c7c5
 98467c00
-20210006
+20210008
 6800c3d8
 6000c172
-20200008
+2020000a
 6800843f
 c4030000
-2040001b
+2040001d
 24740000
 202055a0
 78347c00
@@ -24747,21 +24777,34 @@
 1ff1fe00
 c1800000
 20207fe9
+6800c79f
+247a0000
+68008478
+1fe67e1a
+24628000
+20203d60
+204033af
+204026e9
+700a9902
+20407d86
+20405cf7
+20404d6b
+2020246e
 c0280003
 20600000
-204002fc
+204002b8
 70472001
 70479c00
 68014682
 c2858012
 680246d3
 c30c0012
-204005f4
+20400594
 680947c2
 18408401
 600947c2
 600944a1
-20400386
+20400330
 180a7e00
 6000c4a0
 20403418
@@ -24777,20 +24820,19 @@
 6800c092
 2feffe00
 2040fddd
-20200534
+202004d2
 70479f00
-20400312
 58000005
 e0c08000
 d8c04b10
-204005fb
+2040059b
 20207df4
 c0300004
 c0308027
 20600000
 793f8026
-20400206
-20400225
+204001dd
+20400144
 6800cc02
 c1ff8000
 20400019
@@ -24798,8 +24840,8 @@
 60014c1f
 200007d0
 6800cc1f
-c07f81de
-204001b5
+c07f81b5
+20400190
 242c0022
 24378022
 79200026
@@ -24807,8 +24849,8 @@
 60014c1f
 700a993c
 20407d86
-204001b0
-202003d5
+2040018b
+2020037f
 70119eff
 6800cbf3
 6000919f
@@ -24816,12 +24858,12 @@
 600211a0
 d8400006
 da20119e
-204001f3
-20200213
+204001ca
+202001ea
 68014c1f
 1fe0fe01
 60014c1f
-20400225
+20400144
 2020000c
 6800c720
 c1008000
@@ -24829,7 +24871,7 @@
 c4088000
 c3818000
 c6130000
-204000ed
+204000d4
 d8e00003
 204043ce
 58000000
@@ -24846,7 +24888,7 @@
 704bf100
 704bfc4e
 68024bfe
-20200205
+202001dc
 c0380003
 20600000
 793f8026
@@ -24855,12 +24897,12 @@
 704c1f00
 200007d0
 6800cc1f
-c07f81de
-204001b5
+c07f81b5
+20400190
 242c0023
 24378023
-204001e0
-204002fc
+204001b7
+204002b8
 68024c1a
 680a4bfe
 98467c00
@@ -24870,8 +24912,8 @@
 60014c1f
 700a993c
 20407d86
-204001b0
-202003d5
+2040018b
+2020037f
 70119eff
 6800cbf3
 6000919f
@@ -24879,8 +24921,8 @@
 600211a0
 d8400006
 da20119e
-204001f3
-20200213
+204001ca
+202001ea
 6800cc1f
 1fe0fe01
 6000cc1f
@@ -24895,8 +24937,8 @@
 58000f0f
 60014c1a
 e0a10000
-20400206
-20200225
+204001dd
+20200144
 2040002d
 20200007
 2040003b
@@ -24909,7 +24951,7 @@
 704bf100
 704bfc4e
 68024bfe
-20200205
+202001dc
 c0400009
 20600000
 204068a2
@@ -24918,9 +24960,9 @@
 58001122
 600147c2
 20600000
-20400120
+204000ef
 20403e6e
-204000ed
+204000d4
 6800c6ef
 6000c715
 20404298
@@ -24929,17 +24971,12 @@
 6808cb45
 2040680e
 20403e1e
-2040001f
+2040001a
 58000000
 60014154
 204068a2
 20403e54
-20405810
-20405839
-2040582c
-20405818
-204005f0
-20200377
+20200321
 204074b9
 d8c08c00
 d8a04876
@@ -24994,8 +25031,8 @@
 7011a400
 da20119e
 d8400007
-204001f3
-20400179
+204001ca
+20400154
 20207fe7
 6800cc02
 c17f8000
@@ -25004,17 +25041,17 @@
 c0098029
 20600000
 704c0202
-202001aa
+20200185
 704c0203
-202001aa
+20200185
 704c02ff
 700a9939
 20407d86
 68024bd2
-20400205
-202001aa
-20400581
-20400492
+204001dc
+20200185
+2040051f
+2040043c
 70478b01
 d8e00003
 204043d2
@@ -25022,36 +25059,35 @@
 60014707
 7046a700
 2040405d
-204002fc
+204002b8
 68024c1a
 6002477b
-20200381
+2020032b
 c0500007
 c050800d
-c0510022
-c051801b
-c052002a
+c0510021
+c051801a
+c0520029
 20600000
 704d3200
-204002fc
-204001ef
+204002b8
+204001c6
 7041bd00
-204000e0
-202002f9
+204000c7
+202002b5
 68014509
 c1000000
 68008441
 1feb7e00
 1fe67c0c
-20210019
+20210018
 58000009
 60014496
 60014498
-20400470
 7047c401
 20600000
 704b6a01
-2020065c
+202005fc
 68014682
 c3860000
 c3830000
@@ -25064,7 +25100,7 @@
 60014498
 7047c400
 70479c00
-204003fc
+204003a6
 20405816
 202041d9
 78347c00
@@ -25077,11 +25113,11 @@
 20403e9f
 6808cb23
 20406829
-204000e0
+204000c7
 6800c720
 1fe67c02
-204285e9
-204003bb
+20428589
+20400365
 68108081
 1fe17ef7
 60108081
@@ -25091,9 +25127,9 @@
 c0588009
 c059000f
 c0598014
-c05a001b
+c05a001a
 20600000
-20400581
+2040051f
 202041c3
 6800c808
 c1010000
@@ -25108,8 +25144,7 @@
 2020340e
 6800c79f
 c0008017
-20200019
-20400470
+20200018
 7046c605
 d8e00001
 202041b9
@@ -25117,4 +25152,4 @@
 704b0100
 704b0a00
 202041d9
-0000e390
+0000a849
Index: YDN_1066_139D_NEW/program/patch.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/program/patch.prog	(revision 2105)
+++ /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/program/patch.prog	(working copy)
@@ -3,7 +3,7 @@
 define G24
 define BLE
 define CLASSIC_BT
-//define MOUSE_SMOOTHER
+define MOUSE_SMOOTHER
 define ADC_ENABLE
 //define P24G_LOG
 //define RF_DEBUG
@@ -45,6 +45,7 @@
 endif
 	call p_mouse_cb_fuction
 	call p_mouse_wakeup_from_power
+//	call p_mouse_select_device_button_wakeup_check	//hibernate wakeup need 190ms
 	branch p_mouse_setting_config
 
 p_mouse_cb_fuction:
@@ -108,7 +109,7 @@
 	nop 1
 	nop 1
 	nop 1
-	nop 1
+
 
 
 p_patch_array:
@@ -271,39 +272,9 @@
 	rtn
 	
 p_g24_transmit_by_interrupt:
-	call p_g24_timer_check
-	nrtn user
-	call p_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 p_g24_transmit_by_interrupt_exit,zero
-	branch p_g24_transmit_process
-p_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
-p_g24_interval_min:
-	jam 0,mem_24g_pac_index
-	fetch 1,mem_24g_interval_min
-p_g24_current_interval_store:
-	store 1,mem_24g_interval
-	rtn
-p_g24_interval_max:
-	fetch 1,mem_24g_interval_max
-	branch p_g24_current_interval_store
-p_g24_interval_calibrate:
-	fetch 1,mem_24g_pac_index
-	increase 1,pdata
-	store 1,mem_24g_pac_index
-	beq 4,p_g24_interval_max
-	beq 5,p_g24_interval_min
-	rtn
-
+	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
@@ -349,16 +320,6 @@
 	set0 6,pdata
 	hstore 1,core_gpio_pd2
 
-
-//	fetch 8,mem_gpio_wakeup_low
-//	set1 6,pdata 
-//	store 8,mem_gpio_wakeup_low
-//	fetcht 1,mem_config_bt_button_gpio
-//	call p_gpio_set_input_pu
-//	fetch 8,mem_gpio_wakeup_low
-//	set0 38,pdata //enable bt_button_gpio_wakeup
-//	store 8,mem_gpio_wakeup_low
-//	rtn
 p_mouse_multi_led_gpio_set_float:
 //	fetch 1,mem_mouse_multi_led_gpio
 //	rtneq UI_BUTTON_GPIO_DISABLE
@@ -376,37 +337,9 @@
 	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
-	call gpio_set_wake_by_current_state
 	fetcht 1,mem_config_bt_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
+	branch mouse_lpm_before_common+7
 p_g24_send_abort_packet:
 	jam 1,mem_24g_abort_pac
 	jam 0,mem_24g_rf_hop_ch
@@ -542,7 +475,20 @@
 	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_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_txdata_prep:
 	fetch 1,mem_24g_pairing_sm
@@ -633,8 +579,8 @@
 	call test_gpio_low
 endif
 
-	fetch 1,mem_24g_no_ack
-	beq no_ack_24g,p_g24_transmit_no_ack	//tx no ack
+//	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
@@ -644,9 +590,9 @@
 	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_transmit_no_ack:
+//	call p_g24_end_of_packet
+//	branch p_g24_transmit_next_packet
 
 p_g24_retransmit:
 	fetch 1,mem_24g_get_ack_fail
@@ -789,29 +735,38 @@
 	arg mem_24g_txbuf,contr
 	branch memcpy
 
-p_g24_ch:
-	fetcht 1,mem_24g_current_ch_number
-	call p_g24_ch_map_size
-	storet 1,mem_24g_current_ch_number
-	rtn
+//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_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_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
@@ -823,16 +778,16 @@
 	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_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
@@ -1138,9 +1093,9 @@
 ifdef CLASSIC_BT
 	beq REC_3_MODE,p_mouse3_0_check_reconn_target
 endif
-ifdef BLE
-	beq REC_4_MODE,p_mouse4_0_check_reconn_target
-endif	
+//ifdef BLE
+//	beq REC_4_MODE,p_mouse4_0_check_reconn_target
+//endif	
 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
@@ -1161,37 +1116,36 @@
 
 ifdef CLASSIC_BT
 p_mouse3_0_check_reconn_target:
-//	call p_mouse_mode_bt_device_blink_5s
 	fetch 6,mem_hci_plap
 	branch app_bt_start_discovery_short,blank
 	branch mouse3_0_check_reconn_target+3
 endif	
 
 ifdef BLE
-p_mouse4_0_check_reconn_target:
-	jam 1,mem_le_send_security_request_flag
-	jam 1,mem_mouse_le_reconnect_flag
-	fetch 2,mem_mouse_direct_timeout
-	store 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
-
-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_mouse4_0_check_reconn_target:
+//	jam 1,mem_le_send_security_request_flag
+//	jam 1,mem_mouse_le_reconnect_flag
+//	fetch 2,mem_mouse_direct_timeout
+//	store 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
+
+//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
 endif
 
 ifdef G24
@@ -1809,8 +1763,8 @@
 	call p_mouse_g24_long_sleep_param_update_timer
 endif	
 ifdef BLE	
-	call p_mouse_check_direct_timeout_timer
-	call p_mouse_le_enable_att_list_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
 endif
@@ -1855,14 +1809,14 @@
 
 
 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_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_multi_led_on_poweron2s_flag
@@ -1996,7 +1950,7 @@
 
 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
+	jam 0,mem_mouse_null_enter_hibernate_timer	
 	rtn
 
 p_mouse_multi_led_blink_timer:
@@ -2078,13 +2032,13 @@
 	rtn
 	
 //BLINK 5s
-p_mouse_mode_bt_device_blink_5s:
-p_mouse_mode_24g_device_blink_5s:
-	jam 30,mem_mouse_multi_led_blink_count
-	branch p_mouse_dpi_multi_led_blink
-p_mouse_mode_bt_device1_led_blink:
-	jam 5,mem_mouse_multi_led_blink_timer_init	//500ms
-	branch p_mouse_discovery_multi_led_blink2
+//p_mouse_mode_bt_device_blink_5s:
+//p_mouse_mode_24g_device_blink_5s:
+//	jam 30,mem_mouse_multi_led_blink_count
+//	branch p_mouse_dpi_multi_led_blink
+//p_mouse_mode_bt_device1_led_blink:
+//	jam 5,mem_mouse_multi_led_blink_timer_init	//500ms
+//	branch p_mouse_discovery_multi_led_blink2
 
 
 p_mouse_discovery_multi_led_blink:
Index: YDN_1066_139D_NEW/program/z.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/program/z.prog	(revision 2105)
+++ /branch/mouse_project/YDN_Project/YDN_1066_139D_NEW/program/z.prog	(working copy)
@@ -2,8 +2,43 @@
 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
@@ -22,8 +57,6 @@
 	branch newconn_poll_responded
 
 
-
-	
 org 0x20001
 
 z_entrance1:
@@ -253,6 +286,8 @@
 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:
@@ -295,6 +330,22 @@
 	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
@@ -345,7 +396,7 @@
 
 z_check_51cmd_adv:
 	jam 0,mem_mouse_le_reconnect_flag
-	call p_le_check_adv_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
@@ -582,11 +633,11 @@
 	call load_adc_init
 	call mouse_adc_init
 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
+//	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
 	branch p_mouse_load_flash_info_check
 
@@ -743,7 +794,7 @@
 	setarg LE_INTERVAL_11_25MS
 	store 2,mem_le_interval_min
 	store 2,mem_le_interval_min+2
-	call p_app_updata_le_param
+//	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
@@ -835,7 +886,7 @@
 	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
+//	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
Index: YDN_1066_227D/c
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/c	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/do.bat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/do.bat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: /branch/mouse_project/YDN_Project/YDN_1066_227D/e	(added)
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/e	(revision 0)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/e	(revision 0)
Index: YDN_1066_227D/flash_clear.bat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/flash_clear.bat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/flash_download.bat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/flash_download.bat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/Hid.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/Hid.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/app.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/app.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/app_antiLost.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/app_antiLost.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/app_car.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/app_car.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/app_light.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/app_light.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/app_lightc.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/app_lightc.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/app_module.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/app_module.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/app_mouse.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/app_mouse.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/format/app_mouse.format	(working copy)
@@ -0,0 +1,517 @@
+
+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
+13 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
+64 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
+
+19 mem_le_adv_swift_pair
+
+1 mem_24g_sw_gpio
+
+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
+
+//modified pnp id
+1 mem_le_att_pnp_id_len
+7 mem_le_att_pnp_id
+
+//flash
+1 mem_flash_ncs_gpio
+1 mem_select_ui_button_count
+4 mem_write_flash_head_temp
+1 mem_mouse_poweron_led_timer
+4 mem_mouse_24g_addr_init
+
+//zcode
+1 mem_zcode_current_number
+3 mem_xip_flash_offset
+3 mem_flash_start_addr
+3 mem_flash_address
+
+//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
+
+//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
+)
+
+(
+//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
+0xD8 P8009_ID2
+
+//Sensor type
+0X00 P3205
+0X01 P3065
+0X02 KA8
+0X03 P3204
+0X04 P3212
+0X05 P3610
+0X06 P3065_XY
+0X07 MA8650
+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
+0x249f00 G24_LONG_SLEEP_STEP2	//200ms
+0x604800 G24_LONG_SLEEP_STEP3	//500ms
+)
+
+(
+8 LOW_VOLTAGE_LED_COUNT
+)
+
+(
+0x01 DPI_FUNCTION_DISABLE
+0x00 DPI_FUNCTION_ENABLE
+)
+
Index: YDN_1066_227D/format/app_remote_car.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/app_remote_car.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/app_shutter.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/app_shutter.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/app_usb.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/app_usb.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/format/app_usb.format	(working copy)
@@ -0,0 +1,203 @@
+
+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
+0x02 USER_ACKPAYLOAD
+
+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: YDN_1066_227D/format/bt.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/bt.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/command.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/command.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/g24.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/g24.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/format/g24.format	(working copy)
@@ -0,0 +1,461 @@
+
+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
+)
+
+(
+//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
+(
+0x07 bits_data
+//0-2 data type
+3 bit_abort
+4 bit_hop
+5 bit_sync
+//6-7 channel offset
+)
+
+
+
+//mem_24g_pairing_sm
+(
+0 STATE_24G_PAIRING_NULL
+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
+)
+
Index: YDN_1066_227D/format/hci.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/hci.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/kscan_peipherals.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/kscan_peipherals.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/l2cap.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/l2cap.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/le.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/le.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/lmp.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/lmp.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/memblocks.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/memblocks.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/patch.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/patch.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/regs.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/regs.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/rfcomm.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/rfcomm.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/sdp.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/sdp.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/security.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/security.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/simple_pairing.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/simple_pairing.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/ui.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/ui.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/format/utility.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/utility.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/format/utility.format	(working copy)
@@ -0,0 +1,381 @@
+/**
+*  @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
+
+//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
+
+
+
Index: YDN_1066_227D/format/var.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/format/var.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/output/bt_format.meta
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/output/bt_format.meta	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/output/bt_format.meta	(working copy)
@@ -0,0 +1,9387 @@
+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
+0x479c mem_mouse_clear_sensor_data_flag
+0x479d mem_mouse_null_enter_hibernate_flag
+0x479e mem_mouse_null_enter_hibernate_timer
+0x479f mem_mouse_le_reconnect_flag
+0x47a0 mem_mouse_data_queue
+0x47c1 mem_mouse_data_queue_num
+0x47c2 mem_random_addr_increase_count
+0x47c4 mem_mouse_le_conn_param_reject
+0x47c5 mem_lpm_mult_init
+0x47c6 mem_mouse_le_uuid_sup
+0x4806 mem_mouse_wheel_trigger
+0x4807 mem_mouse_wheel_trigger_timer
+0x4808 mem_mouse_enter_sniff_count
+0x4809 mem_mouse_send_switch_req_timer
+0x480a mem_le_tx_buffer0_omemalloc
+0x4825 mem_le_tx_buffer1_omemalloc
+0x4840 mem_le_tx_buffer2_omemalloc
+0x485b mem_le_tx_buffer3_omemalloc
+0x4876 mem_mouse_uuid_list
+0x4afc mem_lmi_opcode_temp
+0x4afd mem_mouse_adc_last_low_voltage_flag
+0x4afe mem_mouse_init_sensor_reset_flag
+0x4aff mem_bt_rcvd_switch_req_accept
+0x4b00 mem_bt_send_max_slot_req_accept_after_switch
+0x4b01 mem_bt_send_lmp_setup_complete
+0x4b02 mem_l2cap_rcv
+0x4b03 mem_mouse_bt_boot_mode
+0x4b04 mem_mouse_bt_boot_data
+0x4b09 mem_mouse_bt_send_first_package_timer
+0x4b0a mem_mouse_bt_send_first_package_flag
+0x4b0b mem_mouse_asm_flag
+0x4b0c mem_mouse_x_pre
+0x4b0e mem_mouse_y_pre
+0x4b10 mem_le_adv_swift_pair
+0x4b23 mem_24g_sw_gpio
+0x4b24 mem_mouse_multi_led_blink_enable
+0x4b25 mem_mouse_multi_led_gpio
+0x4b26 mem_mouse_multi_led_state
+0x4b27 mem_mouse_multi_led_type
+0x4b28 mem_mouse_multi_led_on_timer_init
+0x4b29 mem_mouse_multi_led_blink_timer_init
+0x4b2a mem_mouse_multi_led_blink_timer
+0x4b2b mem_mouse_multi_led_blink_count
+0x4b2c mem_mouse_multi_led_on_timer
+0x4b2d mem_mouse_multi_led_blink_count_limited
+0x4b2e mem_mouse_multi_led_on_poweron2s_flag
+0x4b2f mem_discovery_on_flag
+0x4b30 mem_bt_ui_button_timeout
+0x4b31 mem_bt_ui_button_count
+0x4b32 mem_mouse_priority_bb_event
+0x4b33 mem_mouse_le_parse_l2cap_ptr
+0x4b35 mem_low_power_no_data_off_led_time
+0x4b36 mem_low_power_check_count
+0x4b37 mem_low_power_led_blink_flag
+0x4b38 mem_mouse_3065xy_dpi_seting
+0x4b38 mem_3065xy_dpi_1
+0x4b39 mem_3065xy_dpi_2
+0x4b3a mem_3065xy_dpi_3
+0x4b3b mem_3065xy_dpi_4
+0x4b3c mem_le_att_pnp_id_len
+0x4b3d mem_le_att_pnp_id
+0x4b44 mem_flash_ncs_gpio
+0x4b45 mem_select_ui_button_count
+0x4b46 mem_write_flash_head_temp
+0x4b4a mem_mouse_poweron_led_timer
+0x4b4b mem_mouse_24g_addr_init
+0x4b4f mem_zcode_current_number
+0x4b50 mem_xip_flash_offset
+0x4b53 mem_flash_start_addr
+0x4b56 mem_flash_address
+0x4b59 mem_mouse_long_mult_flag
+0x4b5a mem_mouse_le_current_mult_timer
+0x4b5b mem_24g_long_sleep_param_update_timer
+0x4b5c mem_mouse_bt_led_gpio
+0x4b5d mem_mouse_button_select_device_timer_init
+0x4b5e mem_mouse_button_select_device_count
+0x4b5f mem_mouse_multi_led_on_timer_init1
+0x4b60 mem_mouse_24g_attempt_success_flag
+0x4b61 mem_mouse_le_bb_connected_flag
+0x4b62 mem_mouse_fast_conn_flag
+0x4b63 mem_le_lap_high_3B
+0x4b66 mem_mouse_send_secutiry_request_timer
+0x4b67 mem_le_send_security_request_flag
+0x4b68 mem_mouse_long_button_select_device
+0x4b69 mem_mouse_select_device_button_wakeup_flag
+0x4b6a mem_24g_rxbuf
+0x4b8c mem_24g_txbuf
+0x4bac mem_24g_txpayload
+0x4bce mem_24g_rxpayload
+0x4bee mem_24g_rxdata_length
+0x4bef mem_24g_pid
+0x4bf0 mem_24g_datalen
+0x4bf1 mem_24g_data_type
+0x4bf2 mem_24g_txlen
+0x4bf3 mem_24g_rx_window
+0x4bf5 mem_24g_ensure
+0x4bf6 mem_24g_txfail_cnt
+0x4bf8 mem_24g_get_ack_fail
+0x4bf9 mem_24g_retry
+0x4bfa mem_24g_ch
+0x4bfb mem_24g_current_ch_number
+0x4bfc mem_24g_paring_addr
+0x4c00 mem_24g_pairing_sm
+0x4c01 mem_24g_ch_map1
+0x4c05 mem_24g_ch_map2
+0x4c09 mem_24g_ch_map3
+0x4c0d mem_24g_ch_map4
+0x4c11 mem_24g_tx_btclk
+0x4c15 mem_24g_interval
+0x4c16 mem_24g_interval_min
+0x4c17 mem_24g_interval_max
+0x4c18 mem_24g_addr
+0x4c1c mem_24g_abort_pac
+0x4c1d mem_24g_check_dongle_times
+0x4c1f mem_24g_enter_hibernate
+0x4c27 mem_24g_device_addr
+0x4c2b mem_24g_pac_index
+0x4c2c mem_24g_no_ack
+0x4c2d mem_24g_sta_crc
+0x4c30 mem_24g_last_crc
+0x4c33 mem_24g_sta_pid
+0x4c34 mem_24g_last_pid
+0x4c35 mem_24g_max_retry
+0x4c36 mem_24g_mode
+0x4c37 mem_24g_rxdata_temp
+0x4c59 mem_24g_rx_addr
+0x4c5d mem_dongle_mode_init
+0x4c5e mem_dongle_work_mode
+0x4c5f mem_dongle_ms_bind_step
+0x4c60 mem_dongle_kb_bind_step
+0x4c61 mem_dongle_bind_device_status
+0x4c62 mem_24g_bind_payload
+0x4c6a mem_24g_abort_packet
+0x4c6b mem_24g_rf_laststa
+0x4c6c mem_24g_hop_btclk
+0x4c70 mem_24g_hop_interval
+0x4c71 mem_24g_mode_switch
+0x4c72 mem_24g_ackpayload_enable
+0x4c73 mem_24g_hop_packet
+0x4c74 mem_24g_pair_mode
+0x4c75 mem_24g_nodata_timer_enable
+0x4c76 mem_24g_time_slice
+0x4c77 mem_24g_kb_data_sta_data
+0x4c7f mem_24g_kb_data_last_data
+0x4c87 mem_24g_kb_multikey_sta_data
+0x4c8a mem_24g_kb_multikey_last_data
+0x4c8d mem_24g_kb_blank_data_enable
+0x4c8e mem_24g_kb_mul_blank_data_enable
+0x4c8f mem_24g_ms_blank_data_enable
+0x4c90 mem_24g_kb_addr
+0x4c94 mem_24g_ms_addr
+0x4c98 mem_24g_dg_last_ch
+0x4c99 mem_24g_dg_ch_number
+0x4c9a mem_24g_dg_config_ch_once
+0x4c9b mem_24g_kb_last_ch
+0x4c9c mem_24g_kb_ch_number
+0x4c9d mem_24g_kb_config_ch_once
+0x4c9e mem_24g_ms_last_ch
+0x4c9f mem_24g_ms_ch_number
+0x4ca0 mem_24g_ms_config_ch_once
+0x4ca1 mem_24g_syncword
+0x4ca3 mem_24g_syncword_crc8
+0x4ca4 mem_24g_get_syncword_crc8
+0x4ca5 mem_24g_ota_sta_pid
+0x4ca7 mem_tx_power_temp
+0x4ca8 mem_rssi_hex
+0x4ca9 mem_rssi_noise_avg
+0x4caa mem_rssi_noise_index
+0x4cab mem_rssi_signal_index
+0x4cac mem_rssi_noise_dg_avg
+0x4cad mem_rssi_noise_kb_avg
+0x4cae mem_rssi_noise_ms_avg
+0x4caf mem_rssi_noise_dg_index
+0x4cb0 mem_rssi_noise_kb_index
+0x4cb1 mem_rssi_noise_ms_index
+0x4cb2 mem_rssi_signal_buf
+0x4cba mem_queue_ele_num
+0x4cbb mem_queue_read
+0x4cbd mem_queue_write
+0x4cbf mem_queue_start
+0x4cbf mem_data_ele0
+0x4cdf mem_data_ele1
+0x4cff mem_data_ele2
+0x4d1f mem_queue_end
+0x4d1f mem_queue_temp
+0x4d21 mem_cb_24g_data
+0x4d23 mem_24g_hop_fastly_cnt
+0x4d24 mem_24g_hop_pac_retry
+0x4d25 mem_24g_rf_hop_ch
+0x4d26 mem_24g_rf_last_sta
+0x4d27 mem_24g_rf_work_stage
+0x4d28 mem_24g_sync_cnt
+0x4d29 mem_power_ctrl_pac_succ_cnt
+0x4d2a mem_rssi_avg_received
+0x4d2b mem_rssi_hex_received
+0x4d2c mem_power_ctrl_level
+0x4d2d mem_seqi
+0x4d2e mem_24g_auto_paring_switch
+0x4d2f mem_24g_paccnt
+0x4d30 mem_24g_transmit_by_interrupt
+0x4d31 mem_24g_transmit_by_interrupt_exit_count
+0x4d33 mem_24g_transmit_by_interrupt_exit_count_init
+
+	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
+0xD8 P8009_ID2
+
+//Sensor type
+0X00 P3205
+0X01 P3065
+0X02 KA8
+0X03 P3204
+0X04 P3212
+0X05 P3610
+0X06 P3065_XY
+0X07 MA8650
+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
+0x249f00 G24_LONG_SLEEP_STEP2	//200ms
+0x604800 G24_LONG_SLEEP_STEP3	//500ms
+)
+
+(
+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
+0x02 USER_ACKPAYLOAD
+
+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
+(
+0x07 bits_data
+//0-2 data type
+3 bit_abort
+4 bit_hop
+5 bit_sync
+//6-7 channel offset
+)
+
+
+
+//mem_24g_pairing_sm
+(
+0 STATE_24G_PAIRING_NULL
+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
+)
+
+
+
+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_zcode_temp_param0//zcode num
+0x11c6 mem_zcode_temp_param1//patch ram func addr
+0x11c8 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
+
+
+
+/************************************************************************/
+/* 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: YDN_1066_227D/output/bt_program23.icode
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/output/bt_program23.icode	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/output/bt_program23.icode	(working copy)
@@ -0,0 +1,27167 @@
+ 00000000  0x00000044 branch  0x00000040 
+ 00000001  0x0000004b call  0x000003b9 
+ 00000002  0x0000004c fetch  0x00000001 , 0x000041de 
+ 00000003  0x0000004d store  0x00000001 , 0x00004ca7 
+ 00000004  0x0000004e call  0x00000767 
+ 00000005  0x0000004f fetch  0x00000001 , 0x00004685 
+ 00000006  0x00000050 store  0x00000001 , 0x000046da 
+ 00000007  0x00000051 fetch  0x00000001 , 0x00004b30 
+ 00000008  0x00000052 store  0x00000001 , 0x00004b31 
+ 00000009  0x00000053 call  0x000043ca 
+ 00000010  0x00000054 call  0x000002f0 
+ 00000011  0x00000055 call  0x0000000f 
+ 00000012  0x00000056 call  0x00000022 
+ 00000013  0x00000057 call  0x00000075 
+ 00000014  0x00000058 branch  0x00000318 
+ 00000015  0x0000005b setarg  0x00000384 
+ 00000016  0x0000005c store  0x00000002 , 0x00004d21 
+ 00000017  0x0000005d setarg  0x0000039e 
+ 00000018  0x0000005e store  0x00000002 , 0x000041ef 
+ 00000019  0x0000005f setarg  0x000006ac 
+ 00000020  0x00000060 store  0x00000002 , 0x000041f9 
+ 00000021  0x00000061 setarg  0x000003d4 
+ 00000022  0x00000062 store  0x00000002 , 0x000041f1 
+ 00000023  0x00000063 setarg  0x0000029e 
+ 00000024  0x00000064 store  0x00000002 , 0x000041ed 
+ 00000025  0x00000065 setarg  0x00000416 
+ 00000026  0x00000066 store  0x00000002 , 0x000041f5 
+ 00000027  0x00000067 setarg  0x000003fc 
+ 00000028  0x00000068 store  0x00000002 , 0x000041f3 
+ 00000029  0x00000069 setarg  0x00000452 
+ 00000030  0x0000006a store  0x00000002 , 0x000041eb 
+ 00000031  0x0000006b setarg  0x00000459 
+ 00000032  0x0000006c store  0x00000002 , 0x000041fd 
+ 00000033  0x0000006d rtn 
+ 00000034  0x00000070 setarg  0x00000019 
+ 00000035  0x00000071 store  0x00000002 , 0x00004d33 
+ 00000036  0x00000072 ncall  0x0000002a , 0x0000002b 
+ 00000037  0x00000073 call  0x000002f2 
+ 00000038  0x00000074 call  0x00000311 
+ 00000039  0x00000076 fetch  0x00000001 , 0x0000471f 
+ 00000040  0x00000077 store  0x00000001 , 0x0000471e 
+ 00000041  0x00000078 rtn 
+ 00000042  0x0000007a setarg  0x00000177 
+ 00000043  0x0000007b store  0x00000002 , 0x00004d33 
+ 00000044  0x0000007c rtn 
+ 00000045  0x0000007e nop  0x00000001 
+ 00000046  0x0000007f nop  0x00000001 
+ 00000047  0x00000080 nop  0x00000001 
+ 00000048  0x00000081 nop  0x00000001 
+ 00000049  0x00000082 nop  0x00000001 
+ 00000050  0x00000083 nop  0x00000001 
+ 00000051  0x00000084 nop  0x00000001 
+ 00000052  0x00000085 nop  0x00000001 
+ 00000053  0x00000086 nop  0x00000001 
+ 00000054  0x00000087 nop  0x00000001 
+ 00000055  0x00000088 nop  0x00000001 
+ 00000056  0x00000089 nop  0x00000001 
+ 00000057  0x0000008a nop  0x00000001 
+ 00000058  0x0000008b nop  0x00000001 
+ 00000059  0x0000008c nop  0x00000001 
+ 00000060  0x0000008d nop  0x00000001 
+ 00000061  0x0000008e nop  0x00000001 
+ 00000062  0x0000008f nop  0x00000001 
+ 00000063  0x00000090 nop  0x00000001 
+ 00000064  0x00000095 bbit1  0x00000008 , 0x00000059 
+ 00000065  0x00000097 beq  0x00000001 , 0x00000085 
+ 00000066  0x00000098 beq  0x00000002 , 0x0000008e 
+ 00000067  0x00000099 beq  0x00000085 , 0x000007d3 
+ 00000068  0x0000009a beq  0x00000089 , 0x000007a4 
+ 00000069  0x0000009b beq  0x0000001b , 0x000006c1 
+ 00000070  0x0000009c beq  0x00000026 , 0x000006c3 
+ 00000071  0x0000009d beq  0x00000048 , 0x000006df 
+ 00000072  0x0000009e beq  0x0000004a , 0x000006e6 
+ 00000073  0x0000009f beq  0x00000051 , 0x000006ef 
+ 00000074  0x000000a0 beq  0x00000059 , 0x000006dd 
+ 00000075  0x000000a1 beq  0x000000a7 , 0x000006f4 
+ 00000076  0x000000a2 beq  0x000000ad , 0x0000070a 
+ 00000077  0x000000a3 beq  0x000000cb , 0x000033e4 
+ 00000078  0x000000a4 beq  0x000000e9 , 0x0000071b 
+ 00000079  0x000000a5 beq  0x000000a1 , 0x00000097 
+ 00000080  0x000000a6 beq  0x000000b1 , 0x0000009c 
+ 00000081  0x000000a7 beq  0x000000b2 , 0x000000aa 
+ 00000082  0x000000a8 beq  0x000000c4 , 0x000002bd 
+ 00000083  0x000000a9 beq  0x000000e3 , 0x00000589 
+ 00000084  0x000000aa beq  0x000000e6 , 0x000005a6 
+ 00000085  0x000000ab beq  0x000000ea , 0x000005e7 
+ 00000086  0x000000ac beq  0x000000eb , 0x000005ed 
+ 00000087  0x000000ad beq  0x000000ec , 0x00000601 
+ 00000088  0x000000ae branch  0x00002a8e 
+ 00000089  0x000000b0 beq  0x00000039 , 0x00000608 
+ 00000090  0x000000b1 beq  0x00000043 , 0x00000610 
+ 00000091  0x000000b2 beq  0x0000004a , 0x00000616 
+ 00000092  0x000000b3 beq  0x00000057 , 0x00000619 
+ 00000093  0x000000b4 beq  0x00000059 , 0x0000061b 
+ 00000094  0x000000b5 beq  0x00000063 , 0x0000061d 
+ 00000095  0x000000b6 beq  0x00000066 , 0x00000647 
+ 00000096  0x000000b7 beq  0x00000067 , 0x0000065e 
+ 00000097  0x000000b8 beq  0x0000006a , 0x00000697 
+ 00000098  0x000000b9 beq  0x00000077 , 0x000006a2 
+ 00000099  0x000000ba beq  0x00000005 , 0x0000071d 
+ 00000100  0x000000bb beq  0x00000080 , 0x0000071f 
+ 00000101  0x000000bc beq  0x00000082 , 0x00000729 
+ 00000102  0x000000bd beq  0x00000088 , 0x0000072b 
+ 00000103  0x000000be beq  0x0000008c , 0x000006ae 
+ 00000104  0x000000bf beq  0x0000008d , 0x000006ba 
+ 00000105  0x000000c0 beq  0x000000fa , 0x0000074f 
+ 00000106  0x000000c1 branch  0x00002a8e 
+ 00000107  0x000000c5 copy  0x0000003f , 0x00000011 
+ 00000108  0x000000c6 fetcht  0x00000001 , 0x00004cab 
+ 00000109  0x000000c7 setarg  0x00004cb2 
+ 00000110  0x000000c8 iadd  0x00000002 , 0x00000005 
+ 00000111  0x000000c9 copy  0x00000011 , 0x0000003f 
+ 00000112  0x000000ca istore  0x00000001 , 0x00000005 
+ 00000113  0x000000cb increase  0x00000001 , 0x00000002 
+ 00000114  0x000000cc and_into  0x00000007 , 0x00000002 
+ 00000115  0x000000cd storet  0x00000001 , 0x00004cab 
+ 00000116  0x000000ce rtn 
+ 00000117  0x000000d1 jam  0x00000000 , 0x00004b69 
+ 00000118  0x000000d2 fetcht  0x00000001 , 0x000046ed 
+ 00000119  0x000000d3 call  0x000067fb 
+ 00000120  0x000000d4 fetcht  0x00000001 , 0x000046ed 
+ 00000121  0x000000d5 call  0x0000681d 
+ 00000122  0x000000d6 nrtn  0x00000001 
+ 00000123  0x000000d7 call  0x00007ec1 
+ 00000124  0x000000d8 fetcht  0x00000001 , 0x000046ed 
+ 00000125  0x000000d9 call  0x0000681d 
+ 00000126  0x000000da nrtn  0x00000001 
+ 00000127  0x000000db jam  0x00000001 , 0x00004b69 
+ 00000128  0x000000dc rtn 
+ 00000129  0x000000e0 fetch  0x00000001 , 0x00004b69 
+ 00000130  0x000000e1 rtn  0x00000034 
+ 00000131  0x000000e2 call  0x0000047b 
+ 00000132  0x000000e3 branch  0x00000334 
+ 00000133  0x000000e6 arg  0x000009ae , 0x00000005 
+ 00000134  0x000000e7 arg  0x0000000c , 0x00000039 
+ 00000135  0x000000e8 call  0x00007ed4 
+ 00000136  0x000000e9 call  0x00000395 
+ 00000137  0x000000ea call  0x00006a03 
+ 00000138  0x000000eb call  0x00005cf6 
+ 00000139  0x000000ec ncall  0x00002c65 , 0x0000002b 
+ 00000140  0x000000ed call  0x00007ccd 
+ 00000141  0x000000ee branch  0x0000200c 
+ 00000142  0x000000f1 call  0x000032e3 , 0x0000002b 
+ 00000143  0x000000f2 call  0x0000756a 
+ 00000144  0x000000f3 call  0x00002b41 , 0x0000002b 
+ 00000145  0x000000f5 call  0x000076dc 
+ 00000146  0x000000f6 fetch  0x00000001 , 0x0000465a 
+ 00000147  0x000000f7 branch  0x00002012 , 0x00000034 
+ 00000148  0x000000f8 fetch  0x00000001 , 0x000045b1 
+ 00000149  0x000000f9 branch  0x00000091 , 0x00000034 
+ 00000150  0x000000fa branch  0x00002012 
+ 00000151  0x000000fd setarg  0x00000a06 
+ 00000152  0x000000fe store  0x00000003 , 0x00004510 
+ 00000153  0x000000ff setarg  0x00001d87 
+ 00000154  0x00000100 store  0x00000002 , 0x00004513 
+ 00000155  0x00000101 branch  0x00002aa2 
+ 00000156  0x00000104 rtnmark1  0x00000026 
+ 00000157  0x00000105 fetch  0x00000001 , 0x00004b26 
+ 00000158  0x00000106 nbranch  0x00007fef , 0x00000034 
+ 00000159  0x00000107 fetch  0x00000001 , 0x00004b2b 
+ 00000160  0x00000108 nbranch  0x00007fef , 0x00000034 
+ 00000161  0x00000109 fetch  0x00000001 , 0x0000479c 
+ 00000162  0x0000010a branch  0x00007fef , 0x00000034 
+ 00000163  0x0000010b fetch  0x00000001 , 0x000047c4 
+ 00000164  0x0000010c beq  0x00000001 , 0x00007fef 
+ 00000165  0x0000010d fetch  0x00000002 , 0x00004248 
+ 00000166  0x0000010e nbranch  0x00007fef , 0x00000034 
+ 00000167  0x0000010f fetch  0x00000001 , 0x00004806 
+ 00000168  0x00000110 nbranch  0x00007fef , 0x00000034 
+ 00000169  0x00000111 branch  0x00007ff1 
+ 00000170  0x00000115 rtnmark0  0x00000026 
+ 00000171  0x00000116 fetch  0x00000001 , 0x00004d30 
+ 00000172  0x00000117 beq  0x00000001 , 0x000000c0 
+ 00000173  0x00000119 call  0x00000144 
+ 00000174  0x0000011a nbranch  0x000000db , 0x00000028 
+ 00000175  0x0000011b call  0x0000012b 
+ 00000176  0x0000011d call  0x00000167 
+ 00000177  0x0000011e fetch  0x00000001 , 0x00004c00 
+ 00000178  0x0000011f rtnne  0x000000ff 
+ 00000179  0x00000120 call  0x00000778 
+ 00000180  0x00000121 call  0x000000bc 
+ 00000181  0x00000122 fetch  0x00000001 , 0x00004b26 
+ 00000182  0x00000123 beq  0x00000001 , 0x00000387 
+ 00000183  0x00000125 call  0x000000e7 
+ 00000184  0x00000126 nrtn  0x00000028 
+ 00000185  0x00000127 call  0x000002a5 
+ 00000186  0x00000128 setarg  0x0000ec54 
+ 00000187  0x00000129 branch  0x00002b93 
+ 00000188  0x0000012e setarg  0x00017700 
+ 00000189  0x0000012f store  0x00000003 , 0x00004c1f 
+ 00000190  0x00000130 jam  0x00000014 , 0x00004b5b 
+ 00000191  0x00000131 rtn 
+ 00000192  0x00000134 call  0x0000027e 
+ 00000193  0x00000135 nrtn  0x00000028 
+ 00000194  0x00000136 call  0x000000d5 
+ 00000195  0x00000137 fetch  0x00000002 , 0x00004d31 
+ 00000196  0x00000138 increase  0x00000001 , 0x0000003f 
+ 00000197  0x00000139 store  0x00000002 , 0x00004d31 
+ 00000198  0x0000013a fetcht  0x00000002 , 0x00004d33 
+ 00000199  0x0000013b isub  0x00000002 , 0x0000003e 
+ 00000200  0x0000013c call  0x000000ca , 0x00000005 
+ 00000201  0x0000013d branch  0x000000ad 
+ 00000202  0x0000013f jam  0x00000000 , 0x00004d30 
+ 00000203  0x00000140 setarg  0x00000000 
+ 00000204  0x00000141 store  0x00000002 , 0x00004d31 
+ 00000205  0x00000142 setarg  0x00000019 
+ 00000206  0x00000143 store  0x00000002 , 0x00004d33 
+ 00000207  0x00000145 jam  0x00000000 , 0x00004c2b 
+ 00000208  0x00000146 fetch  0x00000001 , 0x00004c16 
+ 00000209  0x00000148 store  0x00000001 , 0x00004c15 
+ 00000210  0x00000149 rtn 
+ 00000211  0x0000014b fetch  0x00000001 , 0x00004c17 
+ 00000212  0x0000014c branch  0x000000d1 
+ 00000213  0x0000014e fetch  0x00000001 , 0x00004c2b 
+ 00000214  0x0000014f increase  0x00000001 , 0x0000003f 
+ 00000215  0x00000150 store  0x00000001 , 0x00004c2b 
+ 00000216  0x00000151 beq  0x00000004 , 0x000000d3 
+ 00000217  0x00000152 beq  0x00000005 , 0x000000cf 
+ 00000218  0x00000153 rtn 
+ 00000219  0x00000156 fetch  0x00000001 , 0x00004c1c 
+ 00000220  0x00000157 call  0x000000f0 , 0x00000034 
+ 00000221  0x00000158 fetch  0x00000001 , 0x00004b2b 
+ 00000222  0x00000159 nrtn  0x00000034 
+ 00000223  0x0000015a fetch  0x00000001 , 0x00004b26 
+ 00000224  0x0000015b rtneq  0x00000001 
+ 00000225  0x0000015d call  0x000000e7 
+ 00000226  0x0000015e nrtn  0x00000028 
+ 00000227  0x0000015f fetch  0x00000003 , 0x00004c1f 
+ 00000228  0x00000160 call  0x00007f49 
+ 00000229  0x00000161 storet  0x00000004 , 0x0000415b 
+ 00000230  0x00000162 branch  0x00002b2a 
+ 00000231  0x00000165 enable  0x00000028 
+ 00000232  0x00000166 call  0x00002afa 
+ 00000233  0x00000167 fetch  0x00000003 , 0x0000416f 
+ 00000234  0x00000168 branch  0x00007fe9 , 0x00000034 
+ 00000235  0x00000169 fetch  0x00000001 , 0x00004091 
+ 00000236  0x0000016a branch  0x00007fe9 , 0x00000034 
+ 00000237  0x0000016b fetch  0x00000001 , 0x00004d30 
+ 00000238  0x0000016c beq  0x00000001 , 0x00007fe9 
+ 00000239  0x0000016d branch  0x000002a8 
+ 00000240  0x00000170 jam  0x00000001 , 0x00004c1c 
+ 00000241  0x00000171 jam  0x00000000 , 0x00004d25 
+ 00000242  0x00000172 call  0x00000103 
+ 00000243  0x00000173 store  0x00000001 , 0x00004b8c 
+ 00000244  0x00000174 setarg  0x00000000 
+ 00000245  0x00000175 store  0x00000007 , 0x00004b8d 
+ 00000246  0x00000176 fetch  0x00000004 , 0x00004c27 
+ 00000247  0x00000177 store  0x00000004 , 0x00004b94 
+ 00000248  0x00000178 jam  0x0000000c , 0x00004bf0 
+ 00000249  0x00000179 fetch  0x00000001 , 0x00004bf1 
+ 00000250  0x0000017a set1  0x00000003 , 0x0000003f 
+ 00000251  0x0000017b store  0x00000001 , 0x00004bf1 
+ 00000252  0x0000017c call  0x00000147 
+ 00000253  0x0000017d branch  0x000000b0 
+ 00000254  0x00000180 fetch  0x00000004 , 0x000040a0 
+ 00000255  0x00000181 store  0x00000004 , 0x00004c27 
+ 00000256  0x00000182 rtn 
+ 00000257  0x00000185 jam  0x00000001 , 0x00004d26 
+ 00000258  0x00000186 jam  0x00000000 , 0x00004d28 
+ 00000259  0x00000188 fetch  0x00000001 , 0x00004bf1 
+ 00000260  0x00000189 and_into  0x00000007 , 0x0000003f 
+ 00000261  0x0000018a store  0x00000001 , 0x00004bf1 
+ 00000262  0x0000018b rtn 
+ 00000263  0x0000018e fetch  0x00000001 , 0x00004bf1 
+ 00000264  0x0000018f set1  0x00000004 , 0x0000003f 
+ 00000265  0x00000190 store  0x00000001 , 0x00004bf1 
+ 00000266  0x00000192 store  0x00000001 , 0x00004bac 
+ 00000267  0x00000193 rtn 
+ 00000268  0x00000195 fetch  0x00000001 , 0x00004bf1 
+ 00000269  0x00000196 set0  0x00000004 , 0x0000003f 
+ 00000270  0x00000197 store  0x00000001 , 0x00004bf1 
+ 00000271  0x00000198 store  0x00000001 , 0x00004bac 
+ 00000272  0x00000199 call  0x0000076e 
+ 00000273  0x0000019a branch  0x000001f6 
+ 00000274  0x000001b7 fetch  0x00000001 , 0x00004d25 
+ 00000275  0x000001b8 bne  0x00000001 , 0x00000103 
+ 00000276  0x000001ba fetch  0x00000001 , 0x00004d23 
+ 00000277  0x000001bb increase  0x00000001 , 0x0000003f 
+ 00000278  0x000001bc store  0x00000001 , 0x00004d23 
+ 00000279  0x000001bd beq  0x00000004 , 0x0000011b 
+ 00000280  0x000001be call  0x000001f6 
+ 00000281  0x000001bf jam  0x00000002 , 0x00004c35 
+ 00000282  0x000001c0 branch  0x00000167 
+ 00000283  0x000001c3 call  0x0000076e 
+ 00000284  0x000001c4 jam  0x00000000 , 0x00004d23 
+ 00000285  0x000001c5 branch  0x00000103 
+ 00000286  0x000001c8 jam  0x00000002 , 0x00004d28 
+ 00000287  0x000001ca jam  0x00000001 , 0x00004d26 
+ 00000288  0x000001cb jam  0x00000000 , 0x00004d25 
+ 00000289  0x000001cc branch  0x00000103 
+ 00000290  0x000001cf fetch  0x00000001 , 0x00004d27 
+ 00000291  0x000001d0 beq  0x00000003 , 0x0000011f 
+ 00000292  0x000001d1 fetch  0x00000001 , 0x00004bf1 
+ 00000293  0x000001d2 isolate0  0x00000004 , 0x0000003f 
+ 00000294  0x000001d3 branch  0x00000101 , 0x00000001 
+ 00000295  0x000001d4 fetch  0x00000001 , 0x00004d27 
+ 00000296  0x000001d5 beq  0x00000001 , 0x0000011e 
+ 00000297  0x000001d6 beq  0x00000002 , 0x0000011f 
+ 00000298  0x000001d7 rtn 
+ 00000299  0x000001da fetch  0x00000001 , 0x00004c00 
+ 00000300  0x000001db rtnne  0x000000ff 
+ 00000301  0x000001dc call  0x00000130 
+ 00000302  0x000001dd ncall  0x00000138 , 0x0000002c 
+ 00000303  0x000001de rtn 
+ 00000304  0x000001e1 disable  0x0000002c 
+ 00000305  0x000001e2 fetch  0x00000001 , 0x00004d26 
+ 00000306  0x000001e3 rtnne  0x00000001 
+ 00000307  0x000001e4 fetch  0x00000001 , 0x00004d28 
+ 00000308  0x000001e5 rtnne  0x00000000 
+ 00000309  0x000001e6 jam  0x00000001 , 0x00004d27 
+ 00000310  0x000001e7 jam  0x00000004 , 0x00004c35 
+ 00000311  0x000001e8 branch  0x00007feb 
+ 00000312  0x000001eb fetch  0x00000001 , 0x00004d28 
+ 00000313  0x000001ec branch  0x0000013f , 0x00000034 
+ 00000314  0x000001ed increase  0xffffffff , 0x0000003f 
+ 00000315  0x000001ee store  0x00000001 , 0x00004d28 
+ 00000316  0x000001ef jam  0x00000002 , 0x00004d27 
+ 00000317  0x000001f0 jam  0x00000004 , 0x00004c35 
+ 00000318  0x000001f1 branch  0x000001f6 
+ 00000319  0x000001f4 jam  0x00000003 , 0x00004d27 
+ 00000320  0x000001f5 fetch  0x00000001 , 0x00004d25 
+ 00000321  0x000001f6 nbranch  0x00000112 , 0x00000034 
+ 00000322  0x000001f7 jam  0x00000002 , 0x00004c35 
+ 00000323  0x000001f8 branch  0x000001f6 
+ 00000324  0x000001fb fetch  0x00000001 , 0x00004c00 
+ 00000325  0x000001fc bne  0x000000ff , 0x000001b6 
+ 00000326  0x000001fe call  0x0000014a 
+ 00000327  0x00000200 call  0x000001e4 
+ 00000328  0x00000201 jam  0x00000001 , 0x00004bf5 
+ 00000329  0x00000202 rtn 
+ 00000330  0x00000205 fetch  0x00000002 , 0x00004d21 
+ 00000331  0x00000206 call  0x00007f9c 
+ 00000332  0x00000207 branch  0x00000150 , 0x00000028 
+ 00000333  0x00000208 fetch  0x00000007 , 0x00004b8d 
+ 00000334  0x00000209 rtn  0x00000034 
+ 00000335  0x0000020a branch  0x00007fe7 
+ 00000336  0x0000020c call  0x000003b3 
+ 00000337  0x0000020d jam  0x00000000 , 0x00004c1c 
+ 00000338  0x0000020e add  0x00000011 , 0x00000001 , 0x0000003f 
+ 00000339  0x0000020f store  0x00000001 , 0x00004bf0 
+ 00000340  0x00000210 call  0x00000103 
+ 00000341  0x00000211 store  0x00000001 , 0x00004b8c 
+ 00000342  0x00000212 ifetcht  0x00000001 , 0x00000005 
+ 00000343  0x00000213 ifetch  0x00000001 , 0x00000012 
+ 00000344  0x00000214 ior  0x00000002 , 0x0000003f 
+ 00000345  0x00000215 istore  0x00000001 , 0x00000005 
+ 00000346  0x00000216 increase  0x00000001 , 0x00000012 
+ 00000347  0x00000217 ifetch  0x00000004 , 0x00000012 
+ 00000348  0x00000218 istore  0x00000004 , 0x00000005 
+ 00000349  0x00000219 increase  0x00000004 , 0x00000012 
+ 00000350  0x0000021a arg  0x00004b92 , 0x00000005 
+ 00000351  0x0000021b arg  0x00000002 , 0x00000039 
+ 00000352  0x0000021d ifetch  0x00000001 , 0x00000012 
+ 00000353  0x0000021e ifetcht  0x00000001 , 0x00000005 
+ 00000354  0x0000021f iadd  0x00000002 , 0x0000003f 
+ 00000355  0x00000220 istore  0x00000001 , 0x00000005 
+ 00000356  0x00000221 increase  0x00000001 , 0x00000012 
+ 00000357  0x00000222 loop  0x00000160 
+ 00000358  0x00000223 rtn 
+ 00000359  0x00000226 jam  0x00000000 , 0x00004bf9 
+ 00000360  0x00000228 arg  0x00000d00 , 0x0000000b 
+ 00000361  0x00000229 until  0x00000023 , 0x00000026 
+ 00000362  0x0000022a call  0x00000185 
+ 00000363  0x0000022b fetch  0x00000001 , 0x00004c2c 
+ 00000364  0x0000022c rtneq  0x00000001 
+ 00000365  0x0000022d nbranch  0x00000194 , 0x00000018 
+ 00000366  0x0000022e nbranch  0x00000194 , 0x0000002f 
+ 00000367  0x0000022f call  0x0000017f 
+ 00000368  0x00000230 call  0x000001af 
+ 00000369  0x00000231 call  0x0000076a 
+ 00000370  0x00000233 fetch  0x00000001 , 0x00004bef 
+ 00000371  0x00000234 increase  0x00000001 , 0x0000003f 
+ 00000372  0x00000235 store  0x00000001 , 0x00004bef 
+ 00000373  0x00000236 call  0x00000182 
+ 00000374  0x00000237 fetch  0x00000001 , 0x00004c00 
+ 00000375  0x00000238 bne  0x000000ff , 0x000001b8 
+ 00000376  0x00000239 call  0x00000122 
+ 00000377  0x0000023b setarg  0x00000000 
+ 00000378  0x0000023c store  0x00000002 , 0x00004bf6 
+ 00000379  0x0000023d store  0x00000001 , 0x00004bf8 
+ 00000380  0x0000023e store  0x00000001 , 0x00004d24 
+ 00000381  0x0000023f jam  0x00000000 , 0x00004bf5 
+ 00000382  0x00000240 rtn 
+ 00000383  0x00000243 arg  0x00000004 , 0x00000039 
+ 00000384  0x00000244 arg  0x00004b8c , 0x00000005 
+ 00000385  0x00000245 branch  0x00007ec6 
+ 00000386  0x00000248 fetch  0x00000001 , 0x00004bf1 
+ 00000387  0x00000249 bbit1  0x00000004 , 0x0000010c 
+ 00000388  0x0000024a rtn 
+ 00000389  0x0000024d disable  0x0000002f 
+ 00000390  0x0000024e call  0x0000025d 
+ 00000391  0x00000251 fetch  0x00000001 , 0x00004c2c 
+ 00000392  0x00000252 beq  0x00000001 , 0x00000192 
+ 00000393  0x00000253 force  0x00000000 , 0x00000015 
+ 00000394  0x00000254 fetch  0x00000004 , 0x00004c18 
+ 00000395  0x00000255 iforce  0x00000009 
+ 00000396  0x00000256 fetcht  0x00000001 , 0x00000017 
+ 00000397  0x00000257 call  0x0000291f 
+ 00000398  0x00000258 call  0x00002924 
+ 00000399  0x00000259 call  0x00000219 
+ 00000400  0x0000025a call  0x00000255 , 0x0000002f 
+ 00000401  0x0000025b rtn 
+ 00000402  0x0000025d call  0x00000255 
+ 00000403  0x0000025e branch  0x00000172 
+ 00000404  0x00000261 fetch  0x00000002 , 0x00004bf6 
+ 00000405  0x00000262 increase  0x00000001 , 0x0000003f 
+ 00000406  0x00000263 store  0x00000002 , 0x00004bf6 
+ 00000407  0x00000264 fetch  0x00000001 , 0x00004bf7 
+ 00000408  0x00000265 bbit1  0x00000004 , 0x00002dd4 
+ 00000409  0x00000267 fetch  0x00000001 , 0x00004c00 
+ 00000410  0x00000268 bne  0x000000ff , 0x0000019d 
+ 00000411  0x0000026a call  0x000001a5 
+ 00000412  0x0000026b branch  0x00000168 
+ 00000413  0x0000026e fetch  0x00000001 , 0x00004bf6 
+ 00000414  0x0000026f rtnne  0x000000ff 
+ 00000415  0x00000271 setarg  0x00000000 
+ 00000416  0x00000272 store  0x00000002 , 0x00004bf6 
+ 00000417  0x00000273 branch  0x00002dd4 
+ 00000418  0x00000277 call  0x0000079b 
+ 00000419  0x00000278 call  0x0000076e 
+ 00000420  0x00000279 branch  0x000001f6 
+ 00000421  0x0000027c fetch  0x00000001 , 0x00004bf9 
+ 00000422  0x0000027d sub  0x0000003f , 0x0000000b , 0x0000003e 
+ 00000423  0x0000027e nbranch  0x000001a2 , 0x00000002 
+ 00000424  0x0000027f increase  0x00000001 , 0x0000003f 
+ 00000425  0x00000280 store  0x00000001 , 0x00004bf9 
+ 00000426  0x00000281 beq  0x00000002 , 0x00000107 
+ 00000427  0x00000282 beq  0x00000006 , 0x0000010c 
+ 00000428  0x00000283 beq  0x00000008 , 0x00000107 
+ 00000429  0x00000284 beq  0x0000000c , 0x0000010c 
+ 00000430  0x00000285 rtn 
+ 00000431  0x00000288 call  0x000001c9 
+ 00000432  0x00000289 fetch  0x00000001 , 0x00004bee 
+ 00000433  0x0000028a rtn  0x00000034 
+ 00000434  0x0000028b iforce  0x00000039 
+ 00000435  0x0000028c arg  0x00004b6c , 0x00000006 
+ 00000436  0x0000028d arg  0x00004bce , 0x00000005 
+ 00000437  0x0000028e branch  0x00007f01 
+ 00000438  0x00000291 jam  0x00000090 , 0x000011c5 
+ 00000439  0x00000292 branch  0x000007d5 
+ 00000440  0x00000295 call  0x00000767 
+ 00000441  0x00000297 jam  0x00000091 , 0x000011c5 
+ 00000442  0x00000298 branch  0x000007d5 
+ 00000443  0x0000029b jam  0x00000060 , 0x000011c5 
+ 00000444  0x0000029c branch  0x000007d5 
+ 00000445  0x0000029f jam  0x00000000 , 0x00004b68 
+ 00000446  0x000002a0 jam  0x00000070 , 0x000011c5 
+ 00000447  0x000002a1 branch  0x000007d5 
+ 00000448  0x000002a4 set0  0x00000026 , 0x00000000 
+ 00000449  0x000002a5 call  0x000053ce 
+ 00000450  0x000002a7 arg  0x00000003 , 0x00000007 
+ 00000451  0x000002a8 branch  0x000043d2 
+ 00000452  0x000002ab storet  0x00000001 , 0x00004bf0 
+ 00000453  0x000002ac copy  0x00000002 , 0x00000039 
+ 00000454  0x000002ad arg  0x00004b8c , 0x00000005 
+ 00000455  0x000002ae copy  0x00000011 , 0x00000006 
+ 00000456  0x000002af branch  0x00007f01 
+ 00000457  0x000002b3 fetch  0x00000001 , 0x00004b6b 
+ 00000458  0x000002b4 rshift3  0x0000003f , 0x0000003f 
+ 00000459  0x000002b5 store  0x00000001 , 0x00004bee 
+ 00000460  0x000002b7 increase  0x00000001 , 0x0000003f 
+ 00000461  0x000002b8 arg  0x00004b6b , 0x00000006 
+ 00000462  0x000002b9 iadd  0x00000006 , 0x00000006 
+ 00000463  0x000002ba ifetch  0x00000003 , 0x00000006 
+ 00000464  0x000002bb store  0x00000003 , 0x00004c2d 
+ 00000465  0x000002bd fetch  0x00000001 , 0x00004b6b 
+ 00000466  0x000002be rshift  0x0000003f , 0x0000003f 
+ 00000467  0x000002bf and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00000468  0x000002c0 store  0x00000001 , 0x00004c33 
+ 00000469  0x000002c1 rtn 
+ 00000470  0x000002c4 store  0x00000004 , 0x00004c18 
+ 00000471  0x000002c7 arg  0x00000000 , 0x00000011 
+ 00000472  0x000002c8 arg  0x00000004 , 0x00000039 
+ 00000473  0x000002c9 arg  0x00004c18 , 0x00000006 
+ 00000474  0x000002cb ifetch  0x00000001 , 0x00000006 
+ 00000475  0x000002cc iadd  0x00000011 , 0x00000011 
+ 00000476  0x000002cd loop  0x000001da 
+ 00000477  0x000002ce copy  0x00000011 , 0x0000003f 
+ 00000478  0x000002cf store  0x00000002 , 0x00004ca1 
+ 00000479  0x000002d0 fetch  0x00000001 , 0x00004ca1 
+ 00000480  0x000002d1 fetcht  0x00000001 , 0x00004ca2 
+ 00000481  0x000002d2 iadd  0x00000002 , 0x0000003f 
+ 00000482  0x000002d3 store  0x00000001 , 0x00004ca3 
+ 00000483  0x000002d4 rtn 
+ 00000484  0x000002d9 fetch  0x00000001 , 0x00004bf0 
+ 00000485  0x000002da increase  0x00000002 , 0x0000003f 
+ 00000486  0x000002db store  0x00000001 , 0x00004bf2 
+ 00000487  0x000002dd fetch  0x00000001 , 0x00004bf1 
+ 00000488  0x000002de store  0x00000001 , 0x00004bac 
+ 00000489  0x000002e0 fetch  0x00000001 , 0x00004bf0 
+ 00000490  0x000002e1 lshift3  0x0000003f , 0x0000003f 
+ 00000491  0x000002e2 fetcht  0x00000001 , 0x00004bef 
+ 00000492  0x000002e3 and  0x00000002 , 0x00000003 , 0x00000002 
+ 00000493  0x000002e4 lshift  0x00000002 , 0x00000002 
+ 00000494  0x000002e5 ior  0x00000002 , 0x0000003f 
+ 00000495  0x000002e6 fetcht  0x00000001 , 0x00004c2c 
+ 00000496  0x000002e7 iadd  0x00000002 , 0x0000003f 
+ 00000497  0x000002e8 istore  0x00000001 , 0x00000005 
+ 00000498  0x000002ea fetch  0x00000001 , 0x00004bf0 
+ 00000499  0x000002eb iforce  0x00000039 
+ 00000500  0x000002ec arg  0x00004b8c , 0x00000006 
+ 00000501  0x000002ed branch  0x00007f01 
+ 00000502  0x000002f0 fetcht  0x00000001 , 0x00004bfb 
+ 00000503  0x000002f1 call  0x000001fa 
+ 00000504  0x000002f2 storet  0x00000001 , 0x00004bfb 
+ 00000505  0x000002f3 rtn 
+ 00000506  0x000002f6 call  0x000001fe 
+ 00000507  0x000002f7 increase  0x00000001 , 0x00000002 
+ 00000508  0x000002f8 and_into  0x00000003 , 0x00000002 
+ 00000509  0x000002f9 rtn 
+ 00000510  0x000002fc fetch  0x00000001 , 0x00004c18 
+ 00000511  0x000002fd and_into  0x00000003 , 0x0000003f 
+ 00000512  0x000002fe mul32  0x0000003f , 0x00000004 , 0x00000011 
+ 00000513  0x000002ff setarg  0x00004c01 
+ 00000514  0x00000300 iadd  0x00000011 , 0x0000003f 
+ 00000515  0x00000301 iadd  0x00000002 , 0x00000006 
+ 00000516  0x00000302 ifetch  0x00000001 , 0x00000006 
+ 00000517  0x00000303 store  0x00000001 , 0x00004bfa 
+ 00000518  0x00000304 rtn 
+ 00000519  0x00000307 disable  0x00000009 
+ 00000520  0x00000308 disable  0x00000007 
+ 00000521  0x00000309 setarg  0x00555555 
+ 00000522  0x0000030a iforce  0x0000000f 
+ 00000523  0x0000030b fetch  0x00000001 , 0x00004bfa 
+ 00000524  0x0000030c reverse  0x0000003f , 0x00000002 
+ 00000525  0x0000030d set1  0x00000001 , 0x00000002 
+ 00000526  0x0000030e rshift  0x00000002 , 0x0000000e 
+ 00000527  0x0000030f rtn 
+ 00000528  0x00000312 call  0x000053c4 
+ 00000529  0x00000313 fetch  0x00000004 , 0x00004c18 
+ 00000530  0x00000314 iforce  0x00000009 
+ 00000531  0x00000315 call  0x00002918 
+ 00000532  0x00000316 fetcht  0x00000001 , 0x00004bfa 
+ 00000533  0x00000317 call  0x0000291f 
+ 00000534  0x00000318 setarg  0x00000500 
+ 00000535  0x00000319 call  0x00002a8f 
+ 00000536  0x0000031a call  0x00002924 
+ 00000537  0x0000031e call  0x00000207 
+ 00000538  0x0000031f disable  0x0000002f 
+ 00000539  0x00000320 enable  0x0000000d 
+ 00000540  0x00000321 enable  0x00000021 
+ 00000541  0x00000322 disable  0x00000020 
+ 00000542  0x00000323 enable  0x00000010 
+ 00000543  0x00000324 fetch  0x00000002 , 0x00004bf3 
+ 00000544  0x00000325 iforce  0x0000001b 
+ 00000545  0x00000326 correlate  0x0000003e , 0x00000003 
+ 00000546  0x00000327 nbranch  0x00000259 , 0x00000018 
+ 00000547  0x0000032a disable  0x0000000d 
+ 00000548  0x0000032b enable  0x0000000b 
+ 00000549  0x0000032c enable  0x00000007 
+ 00000550  0x0000032d enable  0x00000009 
+ 00000551  0x0000032e call  0x00000252 
+ 00000552  0x0000032f store  0x00000001 , 0x00004ca4 
+ 00000553  0x00000330 fetcht  0x00000001 , 0x00004ca3 
+ 00000554  0x00000331 isub  0x00000002 , 0x0000003e 
+ 00000555  0x00000332 nbranch  0x00000255 , 0x00000005 
+ 00000556  0x00000333 call  0x00000252 
+ 00000557  0x00000334 store  0x00000001 , 0x00004b6a 
+ 00000558  0x00000335 fetch  0x00000001 , 0x00004c36 
+ 00000559  0x00000336 sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00000560  0x00000337 branch  0x00000235 , 0x00000005 
+ 00000561  0x00000338 fetch  0x00000001 , 0x00004b6a 
+ 00000562  0x00000339 fetcht  0x00000001 , 0x00004bf1 
+ 00000563  0x0000033a icompare  0x00000007 , 0x00000002 
+ 00000564  0x0000033b nbranch  0x00000255 , 0x00000001 
+ 00000565  0x0000033d call  0x00000252 
+ 00000566  0x0000033e istore  0x00000001 , 0x00000005 
+ 00000567  0x0000033f rshift3  0x0000003f , 0x0000003f 
+ 00000568  0x00000340 and  0x0000003f , 0x0000001f , 0x00000039 
+ 00000569  0x00000341 branch  0x0000023d , 0x00000005 
+ 00000570  0x00000343 call  0x00000252 
+ 00000571  0x00000344 istore  0x00000001 , 0x00000005 
+ 00000572  0x00000345 loop  0x0000023a 
+ 00000573  0x00000348 copy  0x00000005 , 0x00000011 
+ 00000574  0x00000349 call  0x00000252 
+ 00000575  0x0000034a store  0x00000001 , 0x00004d2b 
+ 00000576  0x0000034b copy  0x00000011 , 0x00000005 
+ 00000577  0x0000034c parse  0x00000003 , 0x00000000 , 0x00000018 
+ 00000578  0x0000034d enable  0x00000010 
+ 00000579  0x0000034e arg  0x00000664 , 0x0000001b 
+ 00000580  0x0000034f rshift32  0x0000003f , 0x0000003f 
+ 00000581  0x00000350 rshift16  0x0000003f , 0x0000003f 
+ 00000582  0x00000351 istore  0x00000003 , 0x00000005 
+ 00000583  0x00000352 disable  0x0000000b 
+ 00000584  0x00000353 branch  0x00000255 , 0x00000006 
+ 00000585  0x00000356 enable  0x0000002f 
+ 00000586  0x00000357 fetch  0x00000001 , 0x00000017 
+ 00000587  0x00000358 add  0x0000003f , 0x00000000 , 0x00000011 
+ 00000588  0x00000359 call  0x00002981 
+ 00000589  0x0000035a disable  0x0000000d 
+ 00000590  0x0000035b call  0x00002918 
+ 00000591  0x0000035c fetch  0x00000001 , 0x00004d2b 
+ 00000592  0x0000035d call  0x0000006b 
+ 00000593  0x0000035e rtn 
+ 00000594  0x00000361 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00000595  0x00000362 rshift3  0x0000000c , 0x0000003f 
+ 00000596  0x00000363 rtn 
+ 00000597  0x00000366 disable  0x0000001b 
+ 00000598  0x00000367 disable  0x0000000b 
+ 00000599  0x00000368 call  0x0000264d 
+ 00000600  0x00000369 rtn 
+ 00000601  0x0000036c branch  0x00000255 
+ 00000602  0x0000036f call  0x00002918 
+ 00000603  0x00000370 fetcht  0x00000001 , 0x00004bfa 
+ 00000604  0x00000371 branch  0x00002933 
+ 00000605  0x00000374 call  0x000053c4 
+ 00000606  0x00000375 fetch  0x00000004 , 0x00004c18 
+ 00000607  0x00000376 iforce  0x00000009 
+ 00000608  0x00000377 call  0x00000207 
+ 00000609  0x00000378 call  0x0000025a 
+ 00000610  0x00000379 set1  0x00000000 , 0x00000015 
+ 00000611  0x0000037a enable  0x0000001d 
+ 00000612  0x0000037b enable  0x00000020 
+ 00000613  0x0000037c disable  0x00000021 
+ 00000614  0x0000037f rshift16  0x00000009 , 0x0000003f 
+ 00000615  0x00000380 rshift8  0x0000003f , 0x0000003f 
+ 00000616  0x00000381 rshift4  0x0000003f , 0x0000003f 
+ 00000617  0x00000382 inject  0x00000003 , 0x00000028 
+ 00000618  0x00000383 disable  0x0000001d 
+ 00000619  0x00000384 enable  0x0000001b 
+ 00000620  0x00000385 enable  0x00000007 
+ 00000621  0x00000386 enable  0x00000009 
+ 00000622  0x00000387 fetch  0x00000001 , 0x00004ca3 
+ 00000623  0x00000388 inject  0x00000003 , 0x00000008 
+ 00000624  0x00000389 fetch  0x00000001 , 0x00004bf2 
+ 00000625  0x0000038a iforce  0x00000039 
+ 00000626  0x0000038b arg  0x00004bac , 0x00000006 
+ 00000627  0x0000038d ifetch  0x00000001 , 0x00000006 
+ 00000628  0x0000038e inject  0x00000003 , 0x00000008 
+ 00000629  0x0000038f loop  0x00000273 
+ 00000630  0x00000392 enable  0x00000008 
+ 00000631  0x00000393 inject  0x00000003 , 0x00000018 
+ 00000632  0x00000394 disable  0x00000008 
+ 00000633  0x00000395 until  0x0000003e , 0x00000027 
+ 00000634  0x00000396 nop  0x00000064 
+ 00000635  0x00000397 disable  0x0000001d 
+ 00000636  0x00000398 disable  0x0000001b 
+ 00000637  0x00000399 rtn 
+ 00000638  0x0000039c call  0x00007fe9 
+ 00000639  0x0000039d fetcht  0x00000004 , 0x00004c11 
+ 00000640  0x0000039e copy  0x00000022 , 0x0000003f 
+ 00000641  0x0000039f isub  0x00000002 , 0x0000003e 
+ 00000642  0x000003a0 ncall  0x00002d18 , 0x00000002 
+ 00000643  0x000003a1 copy  0x0000003f , 0x00000012 
+ 00000644  0x000003a2 fetch  0x00000004 , 0x00004c11 
+ 00000645  0x000003a3 fetcht  0x00000001 , 0x00004c15 
+ 00000646  0x000003a4 iadd  0x00000002 , 0x00000002 
+ 00000647  0x000003a5 copy  0x00000012 , 0x0000003f 
+ 00000648  0x000003a6 isub  0x00000002 , 0x0000003e 
+ 00000649  0x000003a7 nrtn  0x00000002 
+ 00000650  0x000003a8 set0  0x0000001c , 0x0000003f 
+ 00000651  0x000003a9 store  0x00000004 , 0x00004c11 
+ 00000652  0x000003aa branch  0x00007fe7 
+ 00000653  0x000003c3 arg  0x00000000 , 0x00000002 
+ 00000654  0x000003c4 arg  0x00000008 , 0x00000039 
+ 00000655  0x000003c5 copy  0x00000011 , 0x00000006 
+ 00000656  0x000003c7 ifetch  0x00000001 , 0x00000006 
+ 00000657  0x000003c8 iadd  0x00000002 , 0x00000002 
+ 00000658  0x000003c9 loop  0x00000290 
+ 00000659  0x000003ca rshift3  0x00000002 , 0x0000003f 
+ 00000660  0x000003cb copy  0x0000003f , 0x00000002 
+ 00000661  0x000003cc rtnmark0  0x00000026 
+ 00000662  0x000003ce div  0x0000003f , 0x0000000a 
+ 00000663  0x000003cf call  0x00007f86 
+ 00000664  0x000003d0 quotient  0x0000003f 
+ 00000665  0x000003d1 lshift4  0x0000003f , 0x0000003f 
+ 00000666  0x000003d2 remainder  0x00000002 
+ 00000667  0x000003d3 ior  0x00000002 , 0x00000002 
+ 00000668  0x000003d4 rtn 
+ 00000669  0x000003d5 rtn 
+ 00000670  0x000003d9 rtnmark1  0x00000026 
+ 00000671  0x000003da call  0x0000038b 
+ 00000672  0x000003db call  0x000002a8 
+ 00000673  0x000003dc fetch  0x00000001 , 0x00004040 
+ 00000674  0x000003dd bbit0  0x00000000 , 0x000002a5 
+ 00000675  0x000003de fetch  0x00000001 , 0x000000a0 
+ 00000676  0x000003df nrtn  0x00000034 
+ 00000677  0x000003e1 setarg  0x00000000 
+ 00000678  0x000003e2 store  0x00000008 , 0x000000a1 
+ 00000679  0x000003e3 rtn 
+ 00000680  0x000003e6 call  0x000002ba 
+ 00000681  0x000003e7 call  0x000002a5 
+ 00000682  0x000003e9 call  0x00003ebf 
+ 00000683  0x000003ea call  0x0000031a 
+ 00000684  0x000003eb hfetch  0x00000004 , 0x00008070 
+ 00000685  0x000003ec hfetcht  0x00000004 , 0x00008078 
+ 00000686  0x000003ed ior  0x00000002 , 0x00000002 
+ 00000687  0x000003ee invert  0x00000002 , 0x00000002 
+ 00000688  0x000003ef hstoret  0x00000004 , 0x0000807c 
+ 00000689  0x000003f0 hfetch  0x00000001 , 0x0000807d 
+ 00000690  0x000003f1 set0  0x00000002 , 0x0000003f 
+ 00000691  0x000003f2 hstore  0x00000001 , 0x0000807d 
+ 00000692  0x000003f3 hfetch  0x00000001 , 0x0000807e 
+ 00000693  0x000003f4 set0  0x00000006 , 0x0000003f 
+ 00000694  0x000003f5 hstore  0x00000001 , 0x0000807e 
+ 00000695  0x000003f7 fetcht  0x00000001 , 0x00004b25 
+ 00000696  0x000003f8 set0  0x00000007 , 0x00000002 
+ 00000697  0x000003f9 branch  0x00006806 
+ 00000698  0x000003fc fetch  0x00000001 , 0x00004afe 
+ 00000699  0x000003fd rtn  0x00000034 
+ 00000700  0x000003fe branch  0x00000589 
+ 00000701  0x00000401 call  0x00003416 
+ 00000702  0x00000402 call  0x000074b9 
+ 00000703  0x00000403 branch  0x000002d1 , 0x0000002b 
+ 00000704  0x00000405 fetch  0x00000003 , 0x000044a3 
+ 00000705  0x00000406 store  0x00000003 , 0x00004b63 
+ 00000706  0x00000407 call  0x00000001 
+ 00000707  0x00000409 call  0x00000081 
+ 00000708  0x0000040a call  0x000005b3 
+ 00000709  0x0000040b beq  0x00000005 , 0x000002ed 
+ 00000710  0x0000040d call  0x000002d2 
+ 00000711  0x0000040e fetch  0x00000001 , 0x00004720 
+ 00000712  0x0000040f fetcht  0x00000001 , 0x00004703 
+ 00000713  0x00000410 isub  0x00000002 , 0x0000003e 
+ 00000714  0x00000411 branch  0x000002d5 , 0x00000005 
+ 00000715  0x00000412 beq  0x000000ff , 0x000002d5 
+ 00000716  0x00000413 call  0x0000052d 
+ 00000717  0x00000414 fetch  0x00000001 , 0x00004210 
+ 00000718  0x00000415 beq  0x00000033 , 0x000002d8 
+ 00000719  0x00000416 beq  0x00000034 , 0x000002db 
+ 00000720  0x00000417 branch  0x000004f2 
+ 00000721  0x0000041a branch  0x000002f0 
+ 00000722  0x0000041d fetch  0x00000001 , 0x00004ca7 
+ 00000723  0x0000041e store  0x00000001 , 0x000041de 
+ 00000724  0x0000041f rtn 
+ 00000725  0x00000426 jam  0x00000002 , 0x00004720 
+ 00000726  0x00000427 call  0x0000052d 
+ 00000727  0x00000428 branch  0x00000379 
+ 00000728  0x0000042b fetch  0x00000006 , 0x000041d0 
+ 00000729  0x0000042c branch  0x000033eb , 0x00000034 
+ 00000730  0x0000042d branch  0x00004274 
+ 00000731  0x00000430 jam  0x00000001 , 0x00004b67 
+ 00000732  0x00000431 jam  0x00000001 , 0x0000479f 
+ 00000733  0x00000432 fetch  0x00000002 , 0x000046a8 
+ 00000734  0x00000434 store  0x00000002 , 0x000046ae 
+ 00000735  0x00000435 call  0x00003418 
+ 00000736  0x00000436 call  0x000002e6 
+ 00000737  0x00000437 setarg  0x00000004 
+ 00000738  0x00000438 istore  0x00000001 , 0x00000006 
+ 00000739  0x0000043a arg  0x00004390 , 0x00000006 
+ 00000740  0x0000043b call  0x000005fd 
+ 00000741  0x0000043d branch  0x00007df4 
+ 00000742  0x00000440 arg  0x00004370 , 0x00000011 
+ 00000743  0x00000442 ifetch  0x00000001 , 0x00000011 
+ 00000744  0x00000443 rtn  0x00000034 
+ 00000745  0x00000444 iadd  0x00000006 , 0x00000011 
+ 00000746  0x00000445 ifetch  0x00000001 , 0x00000006 
+ 00000747  0x00000446 rtneq  0x00000001 
+ 00000748  0x00000447 branch  0x000002e7 
+ 00000749  0x0000044c jam  0x00000000 , 0x00004b68 
+ 00000750  0x0000044d jam  0x00000061 , 0x000011c5 
+ 00000751  0x0000044e branch  0x000007d5 
+ 00000752  0x00000458 jam  0x00000076 , 0x00004212 
+ 00000753  0x00000459 branch  0x00003d36 
+ 00000754  0x0000045c call  0x000002f0 
+ 00000755  0x0000045d call  0x000040c0 
+ 00000756  0x00000461 call  0x000040d9 
+ 00000757  0x00000462 beq  0x00000030 , 0x000002fe 
+ 00000758  0x00000463 beq  0x00000031 , 0x00000301 
+ 00000759  0x00000464 call  0x000040d1 
+ 00000760  0x00000465 nop  0x000003e8 
+ 00000761  0x00000466 branch  0x000002f4 
+ 00000762  0x00000469 jam  0x00000001 , 0x00004afe 
+ 00000763  0x0000046a call  0x0000640f 
+ 00000764  0x0000046b call  0x000002f2 
+ 00000765  0x0000046c branch  0x00006411 
+ 00000766  0x0000046f call  0x00000306 
+ 00000767  0x00000470 fetch  0x00000001 , 0x000046de 
+ 00000768  0x00000473 branch  0x000040e1 
+ 00000769  0x0000049b call  0x00000306 
+ 00000770  0x0000049c fetch  0x00000001 , 0x000046de 
+ 00000771  0x0000049d beq  0x00000070 , 0x000040e8 
+ 00000772  0x0000049e jam  0x00000001 , 0x000046e0 
+ 00000773  0x0000049f rtn 
+ 00000774  0x000004a2 call  0x000002f0 
+ 00000775  0x000004a3 setarg  0x00008006 
+ 00000776  0x000004a4 call  0x00006413 
+ 00000777  0x000004a5 nop  0x00002ee0 
+ 00000778  0x000004a6 branch  0x0000030b 
+ 00000779  0x000004ae fetch  0x00000001 , 0x0000477a 
+ 00000780  0x000004af beq  0x000000ff , 0x0000030e 
+ 00000781  0x000004b0 branch  0x00000589 
+ 00000782  0x000004b2 fetch  0x00000001 , 0x000046e1 
+ 00000783  0x000004b3 store  0x00000001 , 0x0000477a 
+ 00000784  0x000004b4 branch  0x00000589 
+ 00000785  0x000004b7 call  0x000002f0 
+ 00000786  0x000004b8 setarg  0x00000006 
+ 00000787  0x000004b9 call  0x00006414 
+ 00000788  0x000004ba or  0x0000003f , 0x00000008 , 0x0000003f 
+ 00000789  0x000004bb lshift8  0x0000003f , 0x0000003f 
+ 00000790  0x000004bc add  0x0000003f , 0x00000006 , 0x0000003f 
+ 00000791  0x000004bd branch  0x00006413 
+ 00000792  0x000004c0 jam  0x00000080 , 0x000011c5 
+ 00000793  0x000004c1 branch  0x000007d5 
+ 00000794  0x000004c5 fetcht  0x00000001 , 0x00004b44 
+ 00000795  0x000004c6 branch  0x00006825 
+ 00000796  0x000004c9 jam  0x00000040 , 0x00008086 
+ 00000797  0x000004ca jam  0x00000000 , 0x00008087 
+ 00000798  0x000004cb hfetch  0x00000001 , 0x00008081 
+ 00000799  0x000004cc set0  0x00000000 , 0x0000003f 
+ 00000800  0x000004cd set0  0x00000001 , 0x0000003f 
+ 00000801  0x000004ce set1  0x00000003 , 0x0000003f 
+ 00000802  0x000004cf set0  0x00000004 , 0x0000003f 
+ 00000803  0x000004d0 hstore  0x00000001 , 0x00008081 
+ 00000804  0x000004d1 setarg  0x00000000 
+ 00000805  0x000004d2 store  0x00000004 , 0x000001f5 
+ 00000806  0x000004d4 hfetch  0x00000001 , 0x0000807f 
+ 00000807  0x000004d5 set0  0x00000000 , 0x0000003f 
+ 00000808  0x000004d6 hstore  0x00000001 , 0x0000807f 
+ 00000809  0x000004d8 rtn 
+ 00000810  0x000004db call  0x00000377 
+ 00000811  0x000004dc call  0x00004423 
+ 00000812  0x000004dd fetch  0x00000002 , 0x00004778 
+ 00000813  0x000004de arg  0x0000aa55 , 0x00000002 
+ 00000814  0x000004df isub  0x00000002 , 0x0000003e 
+ 00000815  0x000004e0 branch  0x00000367 , 0x00000005 
+ 00000816  0x000004e1 storet  0x00000002 , 0x00004778 
+ 00000817  0x000004e2 call  0x0000441c 
+ 00000818  0x000004e3 fetch  0x00000001 , 0x000046e1 
+ 00000819  0x000004e4 store  0x00000001 , 0x0000477a 
+ 00000820  0x000004e9 call  0x00000377 
+ 00000821  0x000004ea call  0x00000346 
+ 00000822  0x000004eb call  0x0000035e 
+ 00000823  0x000004ec call  0x0000034a 
+ 00000824  0x000004ed call  0x00000355 
+ 00000825  0x000004ef arg  0x00000002 , 0x00000002 
+ 00000826  0x000004f0 arg  0x000047c2 , 0x00000011 
+ 00000827  0x000004f1 arg  0x0000005f , 0x00000012 
+ 00000828  0x000004f2 fetch  0x00000003 , 0x00004700 
+ 00000829  0x000004f3 iadd  0x00000012 , 0x0000003f 
+ 00000830  0x000004f4 call  0x0000034a 
+ 00000831  0x000004f5 call  0x00000355 
+ 00000832  0x000004f6 call  0x0000036e 
+ 00000833  0x000004f7 branch  0x000002f0 
+ 00000834  0x000004fa arg  0x00000004 , 0x00000002 
+ 00000835  0x000004fb arg  0x00004c18 , 0x00000011 
+ 00000836  0x000004fc arg  0x0000005b , 0x00000012 
+ 00000837  0x000004fd rtn 
+ 00000838  0x00000500 fetch  0x00000003 , 0x00004700 
+ 00000839  0x00000501 store  0x00000003 , 0x00004232 
+ 00000840  0x00000502 call  0x0000652a 
+ 00000841  0x00000503 branch  0x00000355 
+ 00000842  0x00000506 copy  0x0000003f , 0x00000013 
+ 00000843  0x00000507 copy  0x00000011 , 0x0000003f 
+ 00000844  0x00000508 increase  0xfffffffc , 0x0000003f 
+ 00000845  0x00000509 copy  0x0000003f , 0x00000012 
+ 00000846  0x0000050a ifetch  0x00000004 , 0x00000012 
+ 00000847  0x0000050b store  0x00000004 , 0x00004b46 
+ 00000848  0x0000050c copy  0x00000013 , 0x0000003f 
+ 00000849  0x0000050d call  0x00006552 
+ 00000850  0x0000050e fetch  0x00000004 , 0x00004b46 
+ 00000851  0x0000050f istore  0x00000004 , 0x00000012 
+ 00000852  0x00000510 rtn 
+ 00000853  0x00000513 setarg  0x000186a0 
+ 00000854  0x00000514 call  0x00002a8f 
+ 00000855  0x00000515 call  0x0000650b 
+ 00000856  0x00000516 setarg  0x000001fa 
+ 00000857  0x00000517 hstore  0x00000002 , 0x0000808c 
+ 00000858  0x00000518 setarg  0x00000005 
+ 00000859  0x00000519 call  0x000064f3 
+ 00000860  0x0000051a bbit1  0x00000000 , 0x00000355 
+ 00000861  0x0000051b rtn 
+ 00000862  0x0000051e setarg  0x0000477f 
+ 00000863  0x0000051f arg  0x00004720 , 0x00000002 
+ 00000864  0x00000520 isub  0x00000002 , 0x00000002 
+ 00000865  0x00000521 fetch  0x00000003 , 0x00004700 
+ 00000866  0x00000522 arg  0x00004720 , 0x00000011 
+ 00000867  0x00000523 rtn 
+ 00000868  0x00000526 call  0x00000377 
+ 00000869  0x00000527 call  0x0000035e 
+ 00000870  0x00000528 branch  0x00006562 
+ 00000871  0x0000052b call  0x00000364 
+ 00000872  0x0000052c call  0x000005f6 
+ 00000873  0x0000052d call  0x000005ef 
+ 00000874  0x0000052f call  0x0000431a 
+ 00000875  0x00000530 fetch  0x00000004 , 0x0000477b 
+ 00000876  0x00000531 store  0x00000004 , 0x00004c18 
+ 00000877  0x00000532 rtn 
+ 00000878  0x00000535 jam  0x000000b9 , 0x00000aa2 
+ 00000879  0x00000537 call  0x0000031c 
+ 00000880  0x00000538 nop  0x00000064 
+ 00000881  0x00000539 call  0x0000650b 
+ 00000882  0x0000053a arg  0x00004b46 , 0x00000011 
+ 00000883  0x0000053b fetcht  0x00000001 , 0x00000aa2 
+ 00000884  0x0000053c call  0x00006556 
+ 00000885  0x0000053d nop  0x00000064 
+ 00000886  0x0000053e rtn 
+ 00000887  0x00000541 jam  0x000000ab , 0x00000aa2 
+ 00000888  0x00000542 branch  0x0000036f 
+ 00000889  0x00000547 call  0x0000037b 
+ 00000890  0x00000549 branch  0x000001bb 
+ 00000891  0x0000054c arg  0x00000002 , 0x00000039 
+ 00000892  0x0000054d arg  0x00004c18 , 0x00000006 
+ 00000893  0x0000054f call  0x00007fe7 
+ 00000894  0x00000550 setarg  0x0000ffff 
+ 00000895  0x00000552 ifetcht  0x00000002 , 0x00000006 
+ 00000896  0x00000553 isub  0x00000002 , 0x0000003e 
+ 00000897  0x00000554 ncall  0x00007fe9 , 0x00000005 
+ 00000898  0x00000555 loop  0x0000037f 
+ 00000899  0x00000556 rtn 
+ 00000900  0x00000559 call  0x00004401 
+ 00000901  0x0000055a fetch  0x00000002 , 0x0000469f 
+ 00000902  0x0000055b rtn  0x00000034 
+ 00000903  0x0000055d jam  0x00000001 , 0x00004d30 
+ 00000904  0x0000055e setarg  0x00000000 
+ 00000905  0x0000055f store  0x00000002 , 0x00004d31 
+ 00000906  0x00000560 rtn 
+ 00000907  0x00000563 arg  0x00001800 , 0x00000006 
+ 00000908  0x00000564 arg  0x0000480a , 0x00000005 
+ 00000909  0x00000565 call  0x00000393 
+ 00000910  0x00000566 arg  0x00001900 , 0x00000006 
+ 00000911  0x00000567 call  0x00000393 
+ 00000912  0x00000568 arg  0x00001a00 , 0x00000006 
+ 00000913  0x00000569 call  0x00000393 
+ 00000914  0x0000056a arg  0x00001b00 , 0x00000006 
+ 00000915  0x0000056c arg  0x0000001b , 0x00000039 
+ 00000916  0x0000056d branch  0x00007f01 
+ 00000917  0x00000570 arg  0x0000480a , 0x00000006 
+ 00000918  0x00000571 arg  0x00001800 , 0x00000005 
+ 00000919  0x00000572 call  0x00000393 
+ 00000920  0x00000573 arg  0x00001900 , 0x00000005 
+ 00000921  0x00000574 call  0x00000393 
+ 00000922  0x00000575 arg  0x00001a00 , 0x00000005 
+ 00000923  0x00000576 call  0x00000393 
+ 00000924  0x00000577 arg  0x00001b00 , 0x00000005 
+ 00000925  0x00000578 branch  0x00000393 
+ 00000926  0x0000057b call  0x00005892 
+ 00000927  0x0000057c nrtn  0x00000034 
+ 00000928  0x0000057d fetch  0x00000001 , 0x000046c5 
+ 00000929  0x0000057e and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00000930  0x0000057f rtnne  0x00000003 
+ 00000931  0x00000581 fetch  0x00000001 , 0x0000479c 
+ 00000932  0x00000582 call  0x000003f9 , 0x00000034 
+ 00000933  0x00000583 fetch  0x00000004 , 0x000046d3 
+ 00000934  0x00000584 bbit1  0x00000005 , 0x00004179 
+ 00000935  0x00000585 call  0x00003f97 
+ 00000936  0x00000586 nrtn  0x00000028 
+ 00000937  0x00000587 call  0x000003b0 
+ 00000938  0x00000588 call  0x000003b3 
+ 00000939  0x00000589 call  0x000003cf 
+ 00000940  0x0000058b arg  0x0000469a , 0x00000011 
+ 00000941  0x0000058c call  0x00007e3d 
+ 00000942  0x0000058d call  0x000003be , 0x00000028 
+ 00000943  0x0000058f rtn 
+ 00000944  0x00000594 jam  0x00000000 , 0x00004172 
+ 00000945  0x00000595 jam  0x0000001e , 0x00004b5a 
+ 00000946  0x00000596 rtn 
+ 00000947  0x0000059b fetch  0x00000001 , 0x00004b59 
+ 00000948  0x0000059c rtnne  0x00000001 
+ 00000949  0x0000059d setarg  0x00000000 
+ 00000950  0x0000059e store  0x00000001 , 0x00004b59 
+ 00000951  0x0000059f store  0x00000004 , 0x0000469b 
+ 00000952  0x000005a0 branch  0x00000306 
+ 00000953  0x000005a3 jam  0x00000007 , 0x000047a0 
+ 00000954  0x000005a4 jam  0x00000004 , 0x000047a1 
+ 00000955  0x000005a5 setarg  0x000047a0 
+ 00000956  0x000005a6 store  0x00000002 , 0x00004218 
+ 00000957  0x000005a7 branch  0x00007e38 
+ 00000958  0x000005aa fetch  0x00000001 , 0x000047c1 
+ 00000959  0x000005ab increase  0x00000001 , 0x0000003f 
+ 00000960  0x000005ac store  0x00000001 , 0x000047c1 
+ 00000961  0x000005ad rtn 
+ 00000962  0x000005b0 arg  0x0000469a , 0x00000011 
+ 00000963  0x000005b1 call  0x00007e54 
+ 00000964  0x000005b2 branch  0x000003c6 , 0x00000028 
+ 00000965  0x000005b3 rtn 
+ 00000966  0x000005b6 call  0x00005652 
+ 00000967  0x000005b7 fetch  0x00000001 , 0x000047c1 
+ 00000968  0x000005b8 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00000969  0x000005b9 ncall  0x00005650 , 0x00000002 
+ 00000970  0x000005ba fetch  0x00000001 , 0x000047c1 
+ 00000971  0x000005bb rtn  0x00000034 
+ 00000972  0x000005bc increase  0xffffffff , 0x0000003f 
+ 00000973  0x000005bd store  0x00000001 , 0x000047c1 
+ 00000974  0x000005be branch  0x00003f90 
+ 00000975  0x000005c2 fetch  0x00000002 , 0x0000469f 
+ 00000976  0x000005c3 rtn  0x00000034 
+ 00000977  0x000005c4 jam  0x00000001 , 0x00004806 
+ 00000978  0x000005c5 jam  0x00000002 , 0x00004807 
+ 00000979  0x000005c6 rtn 
+ 00000980  0x000005c9 rtn  0x0000002e 
+ 00000981  0x000005ca fetch  0x00000001 , 0x000041e2 
+ 00000982  0x000005cb rtn  0x00000034 
+ 00000983  0x000005cc call  0x00005271 
+ 00000984  0x000005cd nrtn  0x00000034 
+ 00000985  0x000005ce fetch  0x00000001 , 0x0000479c 
+ 00000986  0x000005cf call  0x000003f9 , 0x00000034 
+ 00000987  0x000005d0 fetch  0x00000004 , 0x000046d3 
+ 00000988  0x000005d1 bbit1  0x00000005 , 0x00003f8a 
+ 00000989  0x000005d2 bbit1  0x00000009 , 0x00003f8a 
+ 00000990  0x000005d3 call  0x00003f97 
+ 00000991  0x000005d4 nrtn  0x00000028 
+ 00000992  0x000005d5 call  0x000003b0 
+ 00000993  0x000005d6 call  0x000003b3 
+ 00000994  0x000005d7 call  0x000003cf 
+ 00000995  0x000005d8 fetch  0x00000001 , 0x00004b03 
+ 00000996  0x000005d9 beq  0x00000001 , 0x000003e8 
+ 00000997  0x000005da fetch  0x00000001 , 0x00004b0a 
+ 00000998  0x000005db rtn  0x00000034 
+ 00000999  0x000005dc branch  0x00003f81 
+ 00001000  0x000005df fetch  0x00000001 , 0x0000469a 
+ 00001001  0x000005e0 store  0x00000001 , 0x00004b04 
+ 00001002  0x000005e1 fetch  0x00000001 , 0x0000469b 
+ 00001003  0x000005e2 istore  0x00000001 , 0x00000005 
+ 00001004  0x000005e3 fetch  0x00000001 , 0x0000469d 
+ 00001005  0x000005e4 istore  0x00000001 , 0x00000005 
+ 00001006  0x000005e5 fetch  0x00000002 , 0x0000469f 
+ 00001007  0x000005e6 istore  0x00000002 , 0x00000005 
+ 00001008  0x000005e8 arg  0x00000007 , 0x00000011 
+ 00001009  0x000005e9 call  0x00004d63 
+ 00001010  0x000005ea fetch  0x00000002 , 0x0000424e 
+ 00001011  0x000005eb istore  0x00000002 , 0x00000005 
+ 00001012  0x000005ec setarg  0x000002a1 
+ 00001013  0x000005ed istore  0x00000002 , 0x00000005 
+ 00001014  0x000005ee fetch  0x00000005 , 0x00004b04 
+ 00001015  0x000005ef istore  0x00000005 , 0x00000005 
+ 00001016  0x000005f0 rtn 
+ 00001017  0x000005f3 jam  0x00000001 , 0x0000479c 
+ 00001018  0x000005f4 call  0x00005814 
+ 00001019  0x000005f5 branch  0x000002fa 
+ 00001020  0x000005fd call  0x00007e34 
+ 00001021  0x000005fe call  0x000003ff 
+ 00001022  0x000005ff branch  0x00003ee0 
+ 00001023  0x00000602 fetcht  0x00000001 , 0x00004b23 
+ 00001024  0x00000603 call  0x0000680e 
+ 00001025  0x00000604 fetcht  0x00000001 , 0x000046e7 
+ 00001026  0x00000605 call  0x000005d5 
+ 00001027  0x00000606 fetcht  0x00000001 , 0x000046e7 
+ 00001028  0x00000607 call  0x0000681d 
+ 00001029  0x00000608 branch  0x00000414 , 0x00000001 
+ 00001030  0x00000609 call  0x000005de 
+ 00001031  0x0000060b fetch  0x00000001 , 0x000046b6 
+ 00001032  0x0000060c rtneq  0x00000000 
+ 00001033  0x0000060d jam  0x00000000 , 0x000046b6 
+ 00001034  0x0000060f fetch  0x00000001 , 0x0000477a 
+ 00001035  0x00000610 increase  0x00000001 , 0x0000003f 
+ 00001036  0x00000611 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001037  0x00000612 store  0x00000001 , 0x0000477a 
+ 00001038  0x00000613 mul32  0x0000003f , 0x00000002 , 0x0000003f 
+ 00001039  0x00000614 increase  0x00000002 , 0x0000003f 
+ 00001040  0x00000615 store  0x00000002 , 0x00004b2b 
+ 00001041  0x00000616 call  0x0000053e 
+ 00001042  0x00000617 call  0x00003d7e 
+ 00001043  0x00000618 branch  0x00000334 
+ 00001044  0x0000061a call  0x000005de 
+ 00001045  0x0000061b branch  0x00003d62 
+ 00001046  0x0000061e copy  0x00000013 , 0x0000003f 
+ 00001047  0x0000061f beq  0x00000014 , 0x00000428 
+ 00001048  0x00000620 beq  0x00000015 , 0x0000042b 
+ 00001049  0x00000621 beq  0x00000029 , 0x0000042e 
+ 00001050  0x00000622 beq  0x00000032 , 0x00000430 
+ 00001051  0x00000623 beq  0x00000040 , 0x00000432 
+ 00001052  0x00000624 beq  0x00000004 , 0x00000434 
+ 00001053  0x00000625 beq  0x00000013 , 0x00000434 
+ 00001054  0x00000626 beq  0x00000027 , 0x00000436 
+ 00001055  0x00000627 beq  0x00000019 , 0x000033df 
+ 00001056  0x00000628 beq  0x00000021 , 0x00000438 
+ 00001057  0x00000629 beq  0x00000001 , 0x0000043a 
+ 00001058  0x0000062a beq  0x00000002 , 0x0000043f 
+ 00001059  0x0000062b beq  0x0000002b , 0x00000442 
+ 00001060  0x0000062c beq  0x00000039 , 0x00000444 
+ 00001061  0x0000062d beq  0x0000003a , 0x00000448 
+ 00001062  0x0000062e beq  0x0000003c , 0x0000044b 
+ 00001063  0x0000062f branch  0x0000417d 
+ 00001064  0x00000632 call  0x000002fa 
+ 00001065  0x00000633 jam  0x000000b0 , 0x000011c5 
+ 00001066  0x00000634 branch  0x000007d5 
+ 00001067  0x00000637 call  0x00000455 
+ 00001068  0x00000638 jam  0x000000a2 , 0x000011c5 
+ 00001069  0x00000639 branch  0x000007d5 
+ 00001070  0x0000063d jam  0x00000012 , 0x00000a99 
+ 00001071  0x0000063e branch  0x00007d8f 
+ 00001072  0x00000641 jam  0x000000b3 , 0x000011c5 
+ 00001073  0x00000642 branch  0x000007d5 
+ 00001074  0x00000645 jam  0x000000a1 , 0x000011c5 
+ 00001075  0x00000646 branch  0x000007d5 
+ 00001076  0x0000064b jam  0x000000a3 , 0x000011c5 
+ 00001077  0x0000064c branch  0x000007d5 
+ 00001078  0x0000064f call  0x0000438e 
+ 00001079  0x00000650 branch  0x000033a7 
+ 00001080  0x00000653 jam  0x000000b1 , 0x000011c5 
+ 00001081  0x00000654 branch  0x000007d5 
+ 00001082  0x00000657 call  0x000002fa 
+ 00001083  0x00000658 call  0x000004f5 
+ 00001084  0x00000659 call  0x00000539 
+ 00001085  0x0000065a jam  0x00000000 , 0x00004809 
+ 00001086  0x0000065b branch  0x000042ca 
+ 00001087  0x0000065e call  0x00000455 
+ 00001088  0x0000065f jam  0x000000b4 , 0x000011c5 
+ 00001089  0x00000660 branch  0x000007d5 
+ 00001090  0x00000663 jam  0x000000b2 , 0x000011c5 
+ 00001091  0x00000664 branch  0x000007d5 
+ 00001092  0x00000667 call  0x000002fa 
+ 00001093  0x00000668 call  0x00000539 
+ 00001094  0x00000669 jam  0x00000092 , 0x000011c5 
+ 00001095  0x0000066a branch  0x000007d5 
+ 00001096  0x0000066d call  0x00000455 
+ 00001097  0x0000066e jam  0x000000a0 , 0x000011c5 
+ 00001098  0x0000066f branch  0x000007d5 
+ 00001099  0x00000672 jam  0x00000001 , 0x00004b60 
+ 00001100  0x00000673 call  0x000004f5 
+ 00001101  0x00000674 call  0x000002fa 
+ 00001102  0x00000675 call  0x00000539 
+ 00001103  0x00000676 call  0x00003f8d 
+ 00001104  0x00000678 call  0x00004366 
+ 00001105  0x00000679 branch  0x00000334 
+ 00001106  0x0000067c call  0x00000455 
+ 00001107  0x0000067d jam  0x000000a4 , 0x000011c5 
+ 00001108  0x0000067e branch  0x000007d5 
+ 00001109  0x00000681 fetch  0x00000001 , 0x00004afe 
+ 00001110  0x00000682 rtn  0x00000034 
+ 00001111  0x00000683 jam  0x00000000 , 0x00004afe 
+ 00001112  0x00000684 branch  0x00000311 
+ 00001113  0x00000688 call  0x00000541 
+ 00001114  0x0000068a call  0x00000566 
+ 00001115  0x0000068b call  0x00000582 
+ 00001116  0x0000068c call  0x000004f8 
+ 00001117  0x0000068d call  0x000004bc 
+ 00001118  0x0000068e call  0x000004e7 
+ 00001119  0x0000068f call  0x000004c1 
+ 00001120  0x00000690 call  0x00004234 
+ 00001121  0x00000691 call  0x0000046b 
+ 00001122  0x00000692 call  0x000004b5 
+ 00001123  0x00000693 call  0x000004a1 
+ 00001124  0x00000694 call  0x0000049e 
+ 00001125  0x00000695 call  0x000004a7 
+ 00001126  0x00000696 call  0x000004ad 
+ 00001127  0x00000697 call  0x00000496 
+ 00001128  0x00000698 call  0x00004231 
+ 00001129  0x00000699 call  0x00000499 
+ 00001130  0x0000069a branch  0x0000423a 
+ 00001131  0x0000069e fetcht  0x00000001 , 0x000046ed 
+ 00001132  0x0000069f call  0x0000681d 
+ 00001133  0x000006a0 branch  0x00000488 , 0x00000001 
+ 00001134  0x000006a2 fetch  0x00000001 , 0x00004b69 
+ 00001135  0x000006a3 nbranch  0x00000484 , 0x00000034 
+ 00001136  0x000006a4 fetch  0x00000001 , 0x000046d9 
+ 00001137  0x000006a5 rtneq  0x00000001 
+ 00001138  0x000006a7 jam  0x00000001 , 0x000046d9 
+ 00001139  0x000006a8 jam  0x00000001 , 0x00004b24 
+ 00001140  0x000006aa fetch  0x00000001 , 0x00004b68 
+ 00001141  0x000006ab branch  0x00000482 , 0x00000034 
+ 00001142  0x000006ad call  0x0000047b 
+ 00001143  0x000006ae jam  0x00000000 , 0x000041bd 
+ 00001144  0x000006af call  0x00000334 
+ 00001145  0x000006b1 call  0x000043c0 
+ 00001146  0x000006b2 branch  0x0000437e 
+ 00001147  0x000006b5 fetcht  0x00000001 , 0x00004720 
+ 00001148  0x000006b6 increase  0x00000001 , 0x00000002 
+ 00001149  0x000006b7 fetch  0x00000001 , 0x000046d2 
+ 00001150  0x000006b8 isub  0x00000002 , 0x0000003e 
+ 00001151  0x000006b9 ncall  0x000043cc , 0x00000002 
+ 00001152  0x000006ba storet  0x00000001 , 0x00004720 
+ 00001153  0x000006bb rtn 
+ 00001154  0x000006be jam  0x000000ff , 0x00004b68 
+ 00001155  0x000006bf rtn 
+ 00001156  0x000006c2 jam  0x00000000 , 0x00004b69 
+ 00001157  0x000006c3 jam  0x00000001 , 0x000046d9 
+ 00001158  0x000006c4 jam  0x00000001 , 0x00004b24 
+ 00001159  0x000006c5 rtn 
+ 00001160  0x000006c8 fetch  0x00000002 , 0x00004682 
+ 00001161  0x000006c9 bbit1  0x0000000b , 0x0000048b 
+ 00001162  0x000006ca jam  0x00000000 , 0x00004b24 
+ 00001163  0x000006cc fetch  0x00000001 , 0x000046d9 
+ 00001164  0x000006cd rtneq  0x00000000 
+ 00001165  0x000006ce jam  0x00000000 , 0x000046d9 
+ 00001166  0x000006d0 fetch  0x00000002 , 0x00004208 
+ 00001167  0x000006d1 rtnbit1  0x0000000a 
+ 00001168  0x000006d3 fetch  0x00000001 , 0x00004720 
+ 00001169  0x000006d4 rtnne  0x00000001 
+ 00001170  0x000006d6 fetch  0x00000002 , 0x0000420a 
+ 00001171  0x000006d7 set1  0x0000000a , 0x0000003f 
+ 00001172  0x000006d8 store  0x00000002 , 0x0000420a 
+ 00001173  0x000006d9 branch  0x00004386 
+ 00001174  0x000006dd arg  0x00004809 , 0x00000013 
+ 00001175  0x000006de arg  0x0000637a , 0x00000012 
+ 00001176  0x000006df branch  0x0000336d 
+ 00001177  0x000006e2 arg  0x00004b09 , 0x00000013 
+ 00001178  0x000006e3 arg  0x0000049c , 0x00000012 
+ 00001179  0x000006e4 branch  0x0000336d 
+ 00001180  0x000006e6 jam  0x00000001 , 0x00004b0a 
+ 00001181  0x000006e7 rtn 
+ 00001182  0x000006eb arg  0x000046c6 , 0x00000013 
+ 00001183  0x000006ec arg  0x00003d60 , 0x00000012 
+ 00001184  0x000006ed branch  0x0000336d 
+ 00001185  0x000006f0 arg  0x000046ae , 0x00000013 
+ 00001186  0x000006f1 arg  0x000004a4 , 0x00000012 
+ 00001187  0x000006f2 branch  0x00003374 
+ 00001188  0x000006f5 fetch  0x00000001 , 0x00004b2e 
+ 00001189  0x000006f6 nrtn  0x00000034 
+ 00001190  0x000006f7 branch  0x00004266 
+ 00001191  0x000006fa arg  0x00004b5a , 0x00000013 
+ 00001192  0x000006fb arg  0x000004aa , 0x00000012 
+ 00001193  0x000006fc branch  0x0000336d 
+ 00001194  0x000006fe fetch  0x00000001 , 0x000047c5 
+ 00001195  0x000006ff store  0x00000001 , 0x00004172 
+ 00001196  0x00000700 branch  0x000004ba 
+ 00001197  0x00000703 fetch  0x00000001 , 0x00004b61 
+ 00001198  0x00000704 rtn  0x00000034 
+ 00001199  0x00000705 arg  0x00004b66 , 0x00000013 
+ 00001200  0x00000706 arg  0x000004b2 , 0x00000012 
+ 00001201  0x00000707 branch  0x0000336d 
+ 00001202  0x00000709 fetch  0x00000001 , 0x00004b67 
+ 00001203  0x0000070a nrtn  0x00000034 
+ 00001204  0x0000070b branch  0x00005bf5 
+ 00001205  0x0000070f arg  0x00004b5b , 0x00000013 
+ 00001206  0x00000710 arg  0x000004b8 , 0x00000012 
+ 00001207  0x00000711 branch  0x0000336d 
+ 00001208  0x00000713 setarg  0x00249f00 
+ 00001209  0x00000714 store  0x00000003 , 0x00004c1f 
+ 00001210  0x00000716 jam  0x00000001 , 0x00004b59 
+ 00001211  0x00000717 rtn 
+ 00001212  0x0000071a arg  0x00004807 , 0x00000013 
+ 00001213  0x0000071b arg  0x000004bf , 0x00000012 
+ 00001214  0x0000071c branch  0x0000336d 
+ 00001215  0x0000071e jam  0x00000000 , 0x00004806 
+ 00001216  0x0000071f rtn 
+ 00001217  0x00000725 fetch  0x00000001 , 0x00004720 
+ 00001218  0x00000726 beq  0x00000002 , 0x000004cf 
+ 00001219  0x00000728 fetcht  0x00000001 , 0x000046ec 
+ 00001220  0x00000729 call  0x0000681d 
+ 00001221  0x0000072a branch  0x000004c9 , 0x00000001 
+ 00001222  0x0000072c call  0x000043a9 
+ 00001223  0x0000072d arg  0x00000009 , 0x00000007 
+ 00001224  0x0000072e branch  0x000043d2 
+ 00001225  0x00000731 jam  0x00000028 , 0x0000479e 
+ 00001226  0x00000732 call  0x000004d8 
+ 00001227  0x00000733 branch  0x000043b0 
+ 00001228  0x00000736 jam  0x00000028 , 0x0000479e 
+ 00001229  0x00000737 call  0x000004d3 
+ 00001230  0x00000738 branch  0x000004d7 
+ 00001231  0x0000073b fetcht  0x00000001 , 0x000046ec 
+ 00001232  0x0000073c call  0x0000681d 
+ 00001233  0x0000073d branch  0x000004cc , 0x00000001 
+ 00001234  0x0000073e branch  0x000043b0 
+ 00001235  0x00000740 arg  0x000046da , 0x00000013 
+ 00001236  0x00000742 arg  0x000004d6 , 0x00000012 
+ 00001237  0x00000743 branch  0x0000336d 
+ 00001238  0x00000745 call  0x000001bd 
+ 00001239  0x00000746 branch  0x00000532 
+ 00001240  0x00000749 arg  0x000046da , 0x00000013 
+ 00001241  0x0000074a arg  0x000004db , 0x00000012 
+ 00001242  0x0000074b branch  0x0000336d 
+ 00001243  0x0000074d fetch  0x00000004 , 0x000046d3 
+ 00001244  0x0000074e rtnbit1  0x00000009 
+ 00001245  0x0000074f jam  0x00000000 , 0x00004b68 
+ 00001246  0x00000751 fetch  0x00000002 , 0x00004682 
+ 00001247  0x00000752 isolate1  0x0000000b , 0x0000003f 
+ 00001248  0x00000753 call  0x000042d4 , 0x00000001 
+ 00001249  0x00000754 fetch  0x00000002 , 0x00004682 
+ 00001250  0x00000755 isolate1  0x00000007 , 0x0000003f 
+ 00001251  0x00000756 call  0x00004392 , 0x00000001 
+ 00001252  0x00000757 arg  0x00000009 , 0x00000007 
+ 00001253  0x00000758 call  0x000043ce 
+ 00001254  0x00000759 branch  0x000043b8 
+ 00001255  0x0000075c fetch  0x00000001 , 0x00004b2e 
+ 00001256  0x0000075d nrtn  0x00000034 
+ 00001257  0x0000075e fetch  0x00000001 , 0x0000479d 
+ 00001258  0x0000075f rtn  0x00000034 
+ 00001259  0x00000760 fetch  0x00000001 , 0x0000479e 
+ 00001260  0x00000761 branch  0x000004f0 , 0x00000034 
+ 00001261  0x00000762 increase  0xffffffff , 0x0000003f 
+ 00001262  0x00000763 store  0x00000001 , 0x0000479e 
+ 00001263  0x00000764 rtn 
+ 00001264  0x00000766 jam  0x00000000 , 0x0000479d 
+ 00001265  0x00000767 branch  0x0000340a 
+ 00001266  0x00000769 jam  0x00000001 , 0x0000479d 
+ 00001267  0x0000076a jam  0x00000028 , 0x0000479e 
+ 00001268  0x0000076b rtn 
+ 00001269  0x0000076d jam  0x00000000 , 0x0000479d 
+ 00001270  0x0000076e jam  0x00000000 , 0x0000479e 
+ 00001271  0x0000076f rtn 
+ 00001272  0x00000778 fetch  0x00000001 , 0x00004b24 
+ 00001273  0x00000779 rtn  0x00000034 
+ 00001274  0x0000077a fetch  0x00000001 , 0x00004b27 
+ 00001275  0x0000077b beq  0x00000000 , 0x000004fe 
+ 00001276  0x0000077c beq  0x00000001 , 0x00000508 
+ 00001277  0x0000077d rtn 
+ 00001278  0x00000780 call  0x00000518 
+ 00001279  0x00000781 fetch  0x00000001 , 0x00004b2c 
+ 00001280  0x00000782 increase  0x00000001 , 0x0000003f 
+ 00001281  0x00000783 store  0x00000001 , 0x00004b2c 
+ 00001282  0x00000784 fetcht  0x00000001 , 0x00004b28 
+ 00001283  0x00000785 isub  0x00000002 , 0x0000003e 
+ 00001284  0x00000786 call  0x00000506 , 0x00000005 
+ 00001285  0x00000787 rtn 
+ 00001286  0x00000789 jam  0x00000000 , 0x00004b2e 
+ 00001287  0x0000078a branch  0x00000526 
+ 00001288  0x0000078d fetch  0x00000001 , 0x00004b2a 
+ 00001289  0x0000078e increase  0xffffffff , 0x0000003f 
+ 00001290  0x0000078f store  0x00000001 , 0x00004b2a 
+ 00001291  0x00000790 nrtn  0x00000034 
+ 00001292  0x00000791 fetch  0x00000001 , 0x00004b29 
+ 00001293  0x00000792 store  0x00000001 , 0x00004b2a 
+ 00001294  0x00000793 fetch  0x00000001 , 0x00004b2d 
+ 00001295  0x00000794 branch  0x00000514 , 0x00000034 
+ 00001296  0x00000795 fetch  0x00000001 , 0x00004b2b 
+ 00001297  0x00000796 branch  0x00000524 , 0x00000034 
+ 00001298  0x00000797 increase  0xffffffff , 0x0000003f 
+ 00001299  0x00000798 store  0x00000001 , 0x00004b2b 
+ 00001300  0x0000079a fetch  0x00000001 , 0x00004b26 
+ 00001301  0x0000079b beq  0x00000001 , 0x00000526 
+ 00001302  0x0000079c beq  0x00000000 , 0x00000518 
+ 00001303  0x0000079d rtn 
+ 00001304  0x000007a0 jam  0x00000001 , 0x00004b26 
+ 00001305  0x000007a1 fetch  0x00000001 , 0x00004720 
+ 00001306  0x000007a2 beq  0x00000002 , 0x0000051f 
+ 00001307  0x000007a4 fetcht  0x00000001 , 0x00004b25 
+ 00001308  0x000007a5 call  0x0000680e 
+ 00001309  0x000007a6 fetcht  0x00000001 , 0x00004b25 
+ 00001310  0x000007a7 branch  0x00006825 
+ 00001311  0x000007a9 fetcht  0x00000001 , 0x00004b25 
+ 00001312  0x000007aa set1  0x00000007 , 0x00000002 
+ 00001313  0x000007ab call  0x0000680e 
+ 00001314  0x000007ac fetcht  0x00000001 , 0x00004b25 
+ 00001315  0x000007ad branch  0x00006829 
+ 00001316  0x000007b1 setarg  0x00000000 
+ 00001317  0x000007b2 store  0x00000003 , 0x00004b2a 
+ 00001318  0x000007b4 fetch  0x00000001 , 0x00004b2b 
+ 00001319  0x000007b5 nbranch  0x0000052a , 0x00000034 
+ 00001320  0x000007b6 jam  0x00000000 , 0x00004b24 
+ 00001321  0x000007b7 jam  0x00000000 , 0x00004b27 
+ 00001322  0x000007b9 jam  0x00000000 , 0x00004b2c 
+ 00001323  0x000007ba jam  0x00000000 , 0x00004b26 
+ 00001324  0x000007bb branch  0x000002b7 
+ 00001325  0x000007c0 jam  0x00000001 , 0x00004b2e 
+ 00001326  0x000007c1 jam  0x00000001 , 0x00004b24 
+ 00001327  0x000007c2 jam  0x00000000 , 0x00004b27 
+ 00001328  0x000007c3 jam  0x00000000 , 0x00004b2c 
+ 00001329  0x000007c4 rtn 
+ 00001330  0x000007c7 jam  0x00000000 , 0x00004b2e 
+ 00001331  0x000007c8 jam  0x00000003 , 0x00004b29 
+ 00001332  0x000007ca jam  0x00000001 , 0x00004b2b 
+ 00001333  0x000007cc jam  0x00000005 , 0x00004b2a 
+ 00001334  0x000007cd jam  0x00000001 , 0x00004b24 
+ 00001335  0x000007ce jam  0x00000001 , 0x00004b27 
+ 00001336  0x000007cf rtn 
+ 00001337  0x000007d2 fetch  0x00000001 , 0x00004b2c 
+ 00001338  0x000007d3 nrtn  0x00000034 
+ 00001339  0x000007d4 fetch  0x00000001 , 0x00004b2e 
+ 00001340  0x000007d5 nrtn  0x00000034 
+ 00001341  0x000007d6 branch  0x00000524 
+ 00001342  0x000007d9 jam  0x00000003 , 0x00004b29 
+ 00001343  0x000007da jam  0x00000001 , 0x00004b2d 
+ 00001344  0x000007db branch  0x00000535 
+ 00001345  0x00000851 fetch  0x00000001 , 0x000046ce 
+ 00001346  0x00000852 increase  0x00000001 , 0x0000003f 
+ 00001347  0x00000853 store  0x00000001 , 0x000046ce 
+ 00001348  0x00000854 sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00001349  0x00000855 rtn  0x00000002 
+ 00001350  0x00000857 call  0x000068a8 
+ 00001351  0x00000859 jam  0x00000000 , 0x000046ce 
+ 00001352  0x0000085a call  0x000068eb 
+ 00001353  0x0000085b call  0x00006908 
+ 00001354  0x0000085c store  0x00000002 , 0x0000470f 
+ 00001355  0x0000085d arg  0x00004709 , 0x00000011 
+ 00001356  0x0000085e call  0x00000559 
+ 00001357  0x0000085f fetch  0x00000001 , 0x00004231 
+ 00001358  0x00000860 bbit1  0x00000001 , 0x0000340a 
+ 00001359  0x00000861 bbit0  0x00000000 , 0x00000552 
+ 00001360  0x00000862 jam  0x00000001 , 0x00004afd 
+ 00001361  0x00000863 branch  0x000043e7 
+ 00001362  0x00000866 call  0x000043e9 
+ 00001363  0x00000867 fetch  0x00000001 , 0x00004afd 
+ 00001364  0x00000868 rtn  0x00000034 
+ 00001365  0x00000869 jam  0x00000000 , 0x00004afd 
+ 00001366  0x0000086b fetch  0x00000001 , 0x000046ef 
+ 00001367  0x0000086c store  0x00000001 , 0x00004715 
+ 00001368  0x0000086e branch  0x00000524 
+ 00001369  0x0000087f ifetch  0x00000008 , 0x00000011 
+ 00001370  0x00000880 store  0x00000008 , 0x00000a9a 
+ 00001371  0x00000881 fetcht  0x00000002 , 0x00000a9c 
+ 00001372  0x00000882 fetch  0x00000002 , 0x00000aa0 
+ 00001373  0x00000883 isub  0x00000002 , 0x0000003e 
+ 00001374  0x00000884 nbranch  0x00006944 , 0x00000002 
+ 00001375  0x00000885 fetcht  0x00000002 , 0x00000a9e 
+ 00001376  0x00000886 isub  0x00000002 , 0x0000003e 
+ 00001377  0x00000887 nbranch  0x00006940 , 0x00000002 
+ 00001378  0x00000889 fetch  0x00000001 , 0x00004231 
+ 00001379  0x0000088a set0  0x00000000 , 0x0000003f 
+ 00001380  0x0000088b store  0x00000001 , 0x00004231 
+ 00001381  0x0000088c rtn 
+ 00001382  0x0000088f fetch  0x00000001 , 0x00004b37 
+ 00001383  0x00000890 nrtn  0x00000034 
+ 00001384  0x00000891 fetch  0x00000004 , 0x000046d3 
+ 00001385  0x00000892 rtnbit0  0x00000004 
+ 00001386  0x00000893 fetch  0x00000002 , 0x00004682 
+ 00001387  0x00000894 rtnbit1  0x0000000b 
+ 00001388  0x00000895 rtnbit1  0x00000006 
+ 00001389  0x00000896 fetch  0x00000001 , 0x000046ef 
+ 00001390  0x00000897 store  0x00000001 , 0x00004715 
+ 00001391  0x00000899 setarg  0x00249f00 
+ 00001392  0x0000089a store  0x00000003 , 0x00004c1f 
+ 00001393  0x0000089c fetch  0x00000001 , 0x000046cf 
+ 00001394  0x0000089d pincrease  0x00000001 
+ 00001395  0x0000089e store  0x00000001 , 0x000046cf 
+ 00001396  0x000008a0 beq  0x00000005 , 0x00000524 
+ 00001397  0x000008a1 sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00001398  0x000008a2 nbranch  0x00000578 , 0x00000002 
+ 00001399  0x000008a3 rtn 
+ 00001400  0x000008a5 jam  0x00000001 , 0x000046cf 
+ 00001401  0x000008a7 branch  0x00000518 
+ 00001402  0x000008aa fetch  0x00000001 , 0x00004b36 
+ 00001403  0x000008ab increase  0x00000001 , 0x0000003f 
+ 00001404  0x000008ac store  0x00000001 , 0x00004b36 
+ 00001405  0x000008ad sub  0x0000003f , 0x00000008 , 0x0000003e 
+ 00001406  0x000008ae rtn  0x00000002 
+ 00001407  0x000008b0 jam  0x00000000 , 0x00004b37 
+ 00001408  0x000008b1 jam  0x00000096 , 0x00004b35 
+ 00001409  0x000008b2 rtn 
+ 00001410  0x000008b4 arg  0x00004b35 , 0x00000013 
+ 00001411  0x000008b5 arg  0x00000585 , 0x00000012 
+ 00001412  0x000008b6 branch  0x0000336d 
+ 00001413  0x000008b8 setarg  0x00604800 
+ 00001414  0x000008b9 store  0x00000003 , 0x00004c1f 
+ 00001415  0x000008ba jam  0x00000001 , 0x00004b37 
+ 00001416  0x000008bb branch  0x00000556 
+ 00001417  0x000008be fetch  0x00000001 , 0x000046e0 
+ 00001418  0x000008c0 beq  0x00000002 , 0x0000059f 
+ 00001419  0x000008c1 beq  0x00000006 , 0x00000595 
+ 00001420  0x000008c3 fetch  0x00000001 , 0x0000477a 
+ 00001421  0x000008c4 call  0x0000059b , 0x00000034 
+ 00001422  0x000008c5 fetch  0x00000001 , 0x0000477a 
+ 00001423  0x000008c6 beq  0x00000001 , 0x00000592 
+ 00001424  0x000008c7 beq  0x00000003 , 0x00003d8c 
+ 00001425  0x000008c8 branch  0x00003d88 
+ 00001426  0x000008ca fetch  0x00000001 , 0x0000477f 
+ 00001427  0x000008cb increase  0xffffffff , 0x0000003f 
+ 00001428  0x000008cc branch  0x00003dbe 
+ 00001429  0x000008cf fetch  0x00000001 , 0x0000477a 
+ 00001430  0x000008d0 call  0x0000059b , 0x00000034 
+ 00001431  0x000008d1 fetch  0x00000001 , 0x0000477a 
+ 00001432  0x000008d2 beq  0x00000001 , 0x0000059d 
+ 00001433  0x000008d3 beq  0x00000003 , 0x00003d8c 
+ 00001434  0x000008d4 branch  0x00003d88 
+ 00001435  0x000008d6 jam  0x00000001 , 0x0000477a 
+ 00001436  0x000008d7 rtn 
+ 00001437  0x000008e1 jam  0x00000000 , 0x000046b5 
+ 00001438  0x000008e2 branch  0x00003dc1 
+ 00001439  0x000008ec fetch  0x00000001 , 0x0000477a 
+ 00001440  0x000008ed beq  0x00000001 , 0x00003d88 
+ 00001441  0x000008ee beq  0x00000000 , 0x00003d8a 
+ 00001442  0x000008ef beq  0x00000003 , 0x000005a4 
+ 00001443  0x000008f0 branch  0x00003d8e 
+ 00001444  0x000008f2 setarg  0x00000005 
+ 00001445  0x000008f3 branch  0x00003dbe 
+ 00001446  0x000008f6 disable  0x00000028 
+ 00001447  0x000008f7 setarg  0x00000000 
+ 00001448  0x000008f8 store  0x00000006 , 0x0000469b 
+ 00001449  0x000008f9 call  0x000005e3 
+ 00001450  0x000008fa call  0x00004079 
+ 00001451  0x000008fb call  0x0000407e 
+ 00001452  0x000008fc call  0x000005b1 
+ 00001453  0x000008fd nbranch  0x000005af , 0x00000028 
+ 00001454  0x000008fe branch  0x00003fa0 
+ 00001455  0x00000901 jam  0x00000000 , 0x00004b36 
+ 00001456  0x00000902 rtn 
+ 00001457  0x00000905 call  0x000005b3 
+ 00001458  0x00000906 branch  0x0000409a 
+ 00001459  0x00000909 arg  0x00000000 , 0x00000011 
+ 00001460  0x0000090a call  0x000005b9 
+ 00001461  0x0000090d call  0x000005b7 
+ 00001462  0x0000090e branch  0x0000408e 
+ 00001463  0x00000912 call  0x000005c9 
+ 00001464  0x00000913 branch  0x000005cf 
+ 00001465  0x00000916 fetcht  0x00000001 , 0x000046e2 
+ 00001466  0x00000917 call  0x000005de 
+ 00001467  0x00000918 fetcht  0x00000001 , 0x000046e2 
+ 00001468  0x00000919 call  0x0000681d 
+ 00001469  0x0000091a setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00001470  0x0000091d fetcht  0x00000001 , 0x000046e3 
+ 00001471  0x0000091e call  0x000005de 
+ 00001472  0x0000091f fetcht  0x00000001 , 0x000046e3 
+ 00001473  0x00000920 call  0x0000681d 
+ 00001474  0x00000921 setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00001475  0x00000924 fetcht  0x00000001 , 0x000046e4 
+ 00001476  0x00000925 call  0x000005de 
+ 00001477  0x00000926 fetcht  0x00000001 , 0x000046e4 
+ 00001478  0x00000927 call  0x0000681d 
+ 00001479  0x00000928 setflag  0x00000001 , 0x00000002 , 0x00000011 
+ 00001480  0x00000929 rtn 
+ 00001481  0x0000092b fetcht  0x00000001 , 0x000046e5 
+ 00001482  0x0000092c call  0x000005d5 
+ 00001483  0x0000092d fetcht  0x00000001 , 0x000046e5 
+ 00001484  0x0000092e call  0x0000681d 
+ 00001485  0x0000092f nsetflag  0x00000001 , 0x00000003 , 0x00000011 
+ 00001486  0x00000930 branch  0x000005de 
+ 00001487  0x00000932 fetcht  0x00000001 , 0x000046e6 
+ 00001488  0x00000933 call  0x000005d5 
+ 00001489  0x00000934 fetcht  0x00000001 , 0x000046e6 
+ 00001490  0x00000935 call  0x0000681d 
+ 00001491  0x00000936 nsetflag  0x00000001 , 0x00000004 , 0x00000011 
+ 00001492  0x00000937 branch  0x000005de 
+ 00001493  0x0000093a set0  0x00000007 , 0x00000002 
+ 00001494  0x0000093b arg  0x00008078 , 0x00000005 
+ 00001495  0x0000093c call  0x00006830 
+ 00001496  0x0000093d set1  0x00000007 , 0x00000002 
+ 00001497  0x0000093f arg  0x0000807c , 0x00000005 
+ 00001498  0x00000940 call  0x00006830 
+ 00001499  0x00000941 set0  0x00000007 , 0x00000002 
+ 00001500  0x00000942 arg  0x00008070 , 0x00000005 
+ 00001501  0x00000943 branch  0x00006830 
+ 00001502  0x00000946 set1  0x00000007 , 0x00000002 
+ 00001503  0x00000948 arg  0x00008078 , 0x00000005 
+ 00001504  0x00000949 call  0x00006830 
+ 00001505  0x0000094a set0  0x00000007 , 0x00000002 
+ 00001506  0x0000094b branch  0x000005d9 
+ 00001507  0x00000954 fetch  0x00000001 , 0x000046e0 
+ 00001508  0x00000957 call  0x00003fc0 
+ 00001509  0x00000958 disable  0x00000028 
+ 00001510  0x0000095e branch  0x00003fe7 
+ 00001511  0x00000973 call  0x000004f5 
+ 00001512  0x00000974 isolate1  0x00000026 , 0x00000000 
+ 00001513  0x00000975 call  0x000001c0 , 0x00000001 
+ 00001514  0x00000976 branch  0x0000426d 
+ 00001515  0x00000979 jam  0x00000081 , 0x000011c5 
+ 00001516  0x0000097a branch  0x000007d5 
+ 00001517  0x0000097d jam  0x00000050 , 0x000011c5 
+ 00001518  0x0000097e branch  0x000007d5 
+ 00001519  0x00000981 call  0x00000377 
+ 00001520  0x00000982 arg  0x00000002 , 0x00000002 
+ 00001521  0x00000983 arg  0x000047c2 , 0x00000011 
+ 00001522  0x00000984 arg  0x0000005f , 0x00000012 
+ 00001523  0x00000985 fetch  0x00000003 , 0x00004700 
+ 00001524  0x00000986 iadd  0x00000012 , 0x0000003f 
+ 00001525  0x00000987 branch  0x00006562 
+ 00001526  0x0000098a call  0x00000377 
+ 00001527  0x0000098b arg  0x00000001 , 0x00000002 
+ 00001528  0x0000098c arg  0x00004b62 , 0x00000011 
+ 00001529  0x0000098d arg  0x00000064 , 0x00000012 
+ 00001530  0x0000098e fetch  0x00000003 , 0x00004700 
+ 00001531  0x0000098f iadd  0x00000012 , 0x0000003f 
+ 00001532  0x00000990 branch  0x00006562 
+ 00001533  0x00000994 arg  0x0000437b , 0x00000005 
+ 00001534  0x00000995 arg  0x00000013 , 0x00000039 
+ 00001535  0x00000996 call  0x00007f01 
+ 00001536  0x00000997 branch  0x000057b8 
+ 00001537  0x0000099a setarg  0x00000000 
+ 00001538  0x0000099b store  0x00000002 , 0x000046ac 
+ 00001539  0x0000099c call  0x00000306 
+ 00001540  0x000009a0 fetch  0x00000001 , 0x00004092 
+ 00001541  0x000009a1 isolate1  0x00000000 , 0x0000003f 
+ 00001542  0x000009a2 call  0x000042d7 , 0x00000001 
+ 00001543  0x000009a5 branch  0x00000539 
+ 00001544  0x000009a9 fetch  0x00000001 , 0x0000450f 
+ 00001545  0x000009aa pincrease  0x00000001 
+ 00001546  0x000009ab store  0x00000001 , 0x0000450f 
+ 00001547  0x000009ac beq  0x0000000c , 0x00005395 
+ 00001548  0x000009ad call  0x000055aa 
+ 00001549  0x000009ae call  0x0000561e 
+ 00001550  0x000009af call  0x00000778 
+ 00001551  0x000009b0 branch  0x0000538f 
+ 00001552  0x000009b3 fetch  0x00000001 , 0x00000016 
+ 00001553  0x000009b4 increase  0x00000001 , 0x0000003f 
+ 00001554  0x000009b5 store  0x00000001 , 0x00000016 
+ 00001555  0x000009b6 rtnne  0x00000028 
+ 00001556  0x000009b7 jam  0x00000025 , 0x00000016 
+ 00001557  0x000009b8 rtn 
+ 00001558  0x000009bb call  0x000029bb 
+ 00001559  0x000009bc call  0x0000006b 
+ 00001560  0x000009bd branch  0x000054a3 
+ 00001561  0x000009c0 jam  0x00000040 , 0x000011c5 
+ 00001562  0x000009c1 branch  0x000007d5 
+ 00001563  0x000009c4 jam  0x00000041 , 0x000011c5 
+ 00001564  0x000009c5 branch  0x000007d5 
+ 00001565  0x000009c8 fetch  0x00000001 , 0x00000456 
+ 00001566  0x000009c9 bbit1  0x00000005 , 0x00000631 
+ 00001567  0x000009ca call  0x0000076a 
+ 00001568  0x000009cb fetch  0x00000001 , 0x0000478e 
+ 00001569  0x000009cc nbranch  0x00000627 , 0x00000034 
+ 00001570  0x000009cd fetch  0x00000001 , 0x0000043f 
+ 00001571  0x000009ce bbit0  0x00000004 , 0x0000062b 
+ 00001572  0x000009cf fetch  0x00000001 , 0x000002da 
+ 00001573  0x000009d0 branch  0x0000062b , 0x00000034 
+ 00001574  0x000009d1 branch  0x00005664 
+ 00001575  0x000009d3 fetch  0x00000001 , 0x0000478e 
+ 00001576  0x000009d4 increase  0xffffffff , 0x0000003f 
+ 00001577  0x000009d5 store  0x00000001 , 0x0000478e 
+ 00001578  0x000009d6 branch  0x00005664 
+ 00001579  0x000009d8 fetch  0x00000001 , 0x000044c4 
+ 00001580  0x000009d9 bne  0x00000005 , 0x0000062e 
+ 00001581  0x000009da jam  0x00000003 , 0x0000478e 
+ 00001582  0x000009dc call  0x00005892 
+ 00001583  0x000009dd call  0x000003c2 , 0x00000034 
+ 00001584  0x000009de branch  0x00005622 
+ 00001585  0x000009e1 call  0x00000633 
+ 00001586  0x000009e2 branch  0x0000063f 
+ 00001587  0x000009e5 fetch  0x00000001 , 0x000046c5 
+ 00001588  0x000009e6 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001589  0x000009e7 rtnne  0x00000003 
+ 00001590  0x000009e8 fetch  0x00000001 , 0x000047c1 
+ 00001591  0x000009e9 rtn  0x00000034 
+ 00001592  0x000009ea fetch  0x00000001 , 0x000043dd 
+ 00001593  0x000009eb rtn  0x00000034 
+ 00001594  0x000009ec fetch  0x00000001 , 0x000043dc 
+ 00001595  0x000009ed set1  0x00000004 , 0x0000003f 
+ 00001596  0x000009ee store  0x00000001 , 0x000043dc 
+ 00001597  0x000009ef call  0x00005650 
+ 00001598  0x000009f0 rtn 
+ 00001599  0x000009f5 branch  0x0000076e 
+ 00001600  0x000009f8 fetch  0x00000001 , 0x0000479f 
+ 00001601  0x000009f9 rtn  0x00000034 
+ 00001602  0x000009fa fetch  0x00000001 , 0x000046c5 
+ 00001603  0x000009fb and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001604  0x000009fc rtneq  0x00000003 
+ 00001605  0x000009fd jam  0x00000001 , 0x000046c6 
+ 00001606  0x000009fe rtn 
+ 00001607  0x00000a01 rtnmark1  0x0000000f 
+ 00001608  0x00000a02 call  0x00005890 
+ 00001609  0x00000a03 nrtn  0x00000034 
+ 00001610  0x00000a04 fetch  0x00000001 , 0x000002d9 
+ 00001611  0x00000a05 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00001612  0x00000a06 store  0x00000001 , 0x0000450c 
+ 00001613  0x00000a07 ifetch  0x00000001 , 0x00000006 
+ 00001614  0x00000a08 and  0x0000003f , 0x0000001f , 0x0000003f 
+ 00001615  0x00000a09 store  0x00000001 , 0x0000450b 
+ 00001616  0x00000a0a rtn  0x00000034 
+ 00001617  0x00000a0b copy  0x00000006 , 0x0000003f 
+ 00001618  0x00000a0c store  0x00000002 , 0x0000450d 
+ 00001619  0x00000a0d fetch  0x00000001 , 0x0000450c 
+ 00001620  0x00000a0e beq  0x00000003 , 0x00000656 
+ 00001621  0x00000a0f branch  0x0000568d 
+ 00001622  0x00000a11 fetch  0x00000001 , 0x000002db 
+ 00001623  0x00000a12 beq  0x00000001 , 0x00000659 
+ 00001624  0x00000a13 branch  0x00005c65 
+ 00001625  0x00000a15 ifetch  0x00000005 , 0x00000006 
+ 00001626  0x00000a16 store  0x00000005 , 0x000043ce 
+ 00001627  0x00000a17 ifetch  0x00000002 , 0x00000006 
+ 00001628  0x00000a18 store  0x00000002 , 0x0000045f 
+ 00001629  0x00000a19 branch  0x00005c8a 
+ 00001630  0x00000a1c ifetch  0x00000002 , 0x00000006 
+ 00001631  0x00000a1d beq  0x00000004 , 0x00000662 
+ 00001632  0x00000a1e beq  0x00000006 , 0x0000068f 
+ 00001633  0x00000a1f branch  0x00005698 
+ 00001634  0x00000a21 call  0x00007ea5 
+ 00001635  0x00000a22 call  0x00000640 
+ 00001636  0x00000a23 call  0x00007e9f 
+ 00001637  0x00000a24 ifetch  0x00000003 , 0x00000006 
+ 00001638  0x00000a25 store  0x00000003 , 0x00000477 
+ 00001639  0x00000a26 beq  0x00000010 , 0x00000671 
+ 00001640  0x00000a27 rshift8  0x0000003f , 0x00000002 
+ 00001641  0x00000a28 sub  0x00000002 , 0x00000024 , 0x0000003e 
+ 00001642  0x00000a29 branch  0x0000067f , 0x00000002 
+ 00001643  0x00000a2a arg  0x000047c6 , 0x00000002 
+ 00001644  0x00000a2b storet  0x00000002 , 0x000044bc 
+ 00001645  0x00000a2c call  0x000058ad 
+ 00001646  0x00000a2d setarg  0x00008e7a 
+ 00001647  0x00000a2e store  0x00000002 , 0x000044bc 
+ 00001648  0x00000a2f rtn 
+ 00001649  0x00000a32 call  0x000059fa 
+ 00001650  0x00000a33 call  0x00005879 
+ 00001651  0x00000a34 increase  0x00000007 , 0x00000006 
+ 00001652  0x00000a35 ifetch  0x00000001 , 0x00000006 
+ 00001653  0x00000a36 rtnne  0x00000011 
+ 00001654  0x00000a37 increase  0x00000005 , 0x00000006 
+ 00001655  0x00000a38 ifetch  0x00000002 , 0x00000006 
+ 00001656  0x00000a39 arg  0x00001812 , 0x00000002 
+ 00001657  0x00000a3a isub  0x00000002 , 0x0000003e 
+ 00001658  0x00000a3b nrtn  0x00000005 
+ 00001659  0x00000a3c increase  0xfffffffc , 0x00000006 
+ 00001660  0x00000a3d setarg  0x0000002b 
+ 00001661  0x00000a3e istore  0x00000002 , 0x00000006 
+ 00001662  0x00000a3f rtn 
+ 00001663  0x00000a42 beq  0x0000000a , 0x00000681 
+ 00001664  0x00000a43 branch  0x000058ad 
+ 00001665  0x00000a45 fetcht  0x00000002 , 0x00000478 
+ 00001666  0x00000a46 fetch  0x00000001 , 0x000044e9 
+ 00001667  0x00000a47 bbit1  0x00000003 , 0x00000688 
+ 00001668  0x00000a51 fetch  0x00000002 , 0x00000478 
+ 00001669  0x00000a52 beq  0x00000013 , 0x00005a76 
+ 00001670  0x00000a54 fetcht  0x00000002 , 0x00000478 
+ 00001671  0x00000a55 branch  0x000059bf 
+ 00001672  0x00000a64 fetch  0x00000002 , 0x000044fa 
+ 00001673  0x00000a65 isub  0x00000002 , 0x0000003e 
+ 00001674  0x00000a66 nbranch  0x00000684 , 0x00000005 
+ 00001675  0x00000a67 call  0x00005a42 
+ 00001676  0x00000a68 nbranch  0x00000684 , 0x00000028 
+ 00001677  0x00000a69 jam  0x00000005 , 0x0000047a 
+ 00001678  0x00000a6a branch  0x00005a77 
+ 00001679  0x00000a6e ifetch  0x00000001 , 0x00000006 
+ 00001680  0x00000a6f beq  0x00000001 , 0x00000693 
+ 00001681  0x00000a70 beq  0x00000005 , 0x00000695 
+ 00001682  0x00000a71 branch  0x00005af6 
+ 00001683  0x00000a74 jam  0x00000001 , 0x00004b67 
+ 00001684  0x00000a75 branch  0x00005b09 
+ 00001685  0x00000a78 jam  0x00000082 , 0x000011c5 
+ 00001686  0x00000a79 branch  0x000007d5 
+ 00001687  0x00000a7c fetch  0x00000001 , 0x00000016 
+ 00001688  0x00000a7d bne  0x00000027 , 0x000056f2 
+ 00001689  0x00000a7e call  0x0000069d 
+ 00001690  0x00000a7f arg  0x00000000 , 0x00000007 
+ 00001691  0x00000a80 fetch  0x00000002 , 0x00004482 
+ 00001692  0x00000a81 branch  0x00007f08 
+ 00001693  0x00000a83 random  0x0000003f 
+ 00001694  0x00000a84 arg  0x000001ff , 0x00000002 
+ 00001695  0x00000a85 iand  0x00000002 , 0x0000003f 
+ 00001696  0x00000a86 add  0x0000003f , 0x000000fa , 0x0000003f 
+ 00001697  0x00000a87 branch  0x00003cbe 
+ 00001698  0x00000a8a disable  0x0000002b 
+ 00001699  0x00000a8b branch  0x000006a5 , 0x0000002e 
+ 00001700  0x00000a8c nbranch  0x00005806 , 0x0000002d 
+ 00001701  0x00000a8e call  0x00002bcb 
+ 00001702  0x00000a8f fetch  0x00000002 , 0x000040c1 
+ 00001703  0x00000a90 store  0x00000002 , 0x0000044d 
+ 00001704  0x00000a91 fetch  0x00000001 , 0x000046c5 
+ 00001705  0x00000a92 compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00001706  0x00000a93 nbranch  0x00002bde , 0x00000001 
+ 00001707  0x00000a94 branch  0x000057fb 
+ 00001708  0x00000a97 jam  0x00000042 , 0x000011c5 
+ 00001709  0x00000a98 branch  0x000007d5 
+ 00001710  0x00000a9b hfetch  0x00000001 , 0x00008077 
+ 00001711  0x00000a9c and_into  0x000000fd , 0x0000003f 
+ 00001712  0x00000a9d hstore  0x00000001 , 0x00008077 
+ 00001713  0x00000a9e hfetcht  0x00000001 , 0x00008073 
+ 00001714  0x00000a9f or_into  0x00000002 , 0x00000002 
+ 00001715  0x00000aa0 hstoret  0x00000001 , 0x00008073 
+ 00001716  0x00000aa1 call  0x000063ee 
+ 00001717  0x00000aa2 and_into  0x000000fd , 0x00000002 
+ 00001718  0x00000aa3 nop  0x0000000d 
+ 00001719  0x00000aa4 call  0x000006bb 
+ 00001720  0x00000aa5 hstoret  0x00000001 , 0x00008073 
+ 00001721  0x00000aa6 rtn 
+ 00001722  0x00000aa9 call  0x000064dd 
+ 00001723  0x00000aab hfetch  0x00000001 , 0x00008081 
+ 00001724  0x00000aac set1  0x00000000 , 0x0000003f 
+ 00001725  0x00000aad set0  0x00000001 , 0x0000003f 
+ 00001726  0x00000aae set0  0x00000003 , 0x0000003f 
+ 00001727  0x00000aaf hstore  0x00000001 , 0x00008081 
+ 00001728  0x00000ab0 rtn 
+ 00001729  0x00000ab4 jam  0x00000000 , 0x000011c5 
+ 00001730  0x00000ab5 branch  0x000007d5 
+ 00001731  0x00000ab8 call  0x000021c9 
+ 00001732  0x00000ab9 nrtn  0x00000028 
+ 00001733  0x00000abb disable  0x00000028 
+ 00001734  0x00000abc jam  0x00000020 , 0x00000011 
+ 00001735  0x00000abd set0  0x0000000b , 0x00000000 
+ 00001736  0x00000abe set0  0x0000002d , 0x00000000 
+ 00001737  0x00000ac0 call  0x00002a4f 
+ 00001738  0x00000ac1 call  0x000022e6 
+ 00001739  0x00000ac2 bmark1  0x0000000b , 0x000006d0 
+ 00001740  0x00000ac3 call  0x00002455 
+ 00001741  0x00000ac4 nbranch  0x000006c9 , 0x00000034 
+ 00001742  0x00000ac5 bmark1  0x0000002d , 0x000006d9 
+ 00001743  0x00000ac6 branch  0x000021ec 
+ 00001744  0x00000ac9 call  0x00002a4d 
+ 00001745  0x00000aca arg  0x00000010 , 0x00000001 
+ 00001746  0x00000acb call  0x000022dc 
+ 00001747  0x00000acc set1  0x0000002d , 0x00000000 
+ 00001748  0x00000acd set0  0x0000000b , 0x00000000 
+ 00001749  0x00000ace fetch  0x00000001 , 0x00000077 
+ 00001750  0x00000acf iforce  0x00000004 
+ 00001751  0x00000ad0 jam  0x00000002 , 0x00000011 
+ 00001752  0x00000ad1 branch  0x000006c9 
+ 00001753  0x00000ad4 fetch  0x00000004 , 0x00000165 
+ 00001754  0x00000ad5 pincrease  0x00000008 
+ 00001755  0x00000ad6 store  0x00000004 , 0x00000165 
+ 00001756  0x00000ad7 branch  0x000021f8 
+ 00001757  0x00000ada bmark1  0x0000002c , 0x0000264d 
+ 00001758  0x00000adb branch  0x0000258f 
+ 00001759  0x00000ade call  0x000033af 
+ 00001760  0x00000adf call  0x000026e9 
+ 00001761  0x00000ae0 jam  0x00000002 , 0x00000a99 
+ 00001762  0x00000ae1 call  0x00007d86 
+ 00001763  0x00000ae2 call  0x00005cf7 
+ 00001764  0x00000ae3 call  0x00004d6b 
+ 00001765  0x00000ae4 branch  0x0000246e 
+ 00001766  0x00000ae7 fetch  0x00000001 , 0x00000030 
+ 00001767  0x00000ae8 isolate1  0x00000000 , 0x0000003f 
+ 00001768  0x00000ae9 call  0x000006ea , 0x00000001 
+ 00001769  0x00000aea branch  0x0000248a 
+ 00001770  0x00000aec fetch  0x00000001 , 0x00000047 
+ 00001771  0x00000aed isolate1  0x00000003 , 0x0000003f 
+ 00001772  0x00000aee call  0x0000076e , 0x00000001 
+ 00001773  0x00000aef ncall  0x0000076a , 0x00000001 
+ 00001774  0x00000af0 branch  0x00000778 
+ 00001775  0x00000af3 call  0x000024f0 
+ 00001776  0x00000af4 nbranch  0x000028f9 , 0x00000018 
+ 00001777  0x00000af5 call  0x000029bb 
+ 00001778  0x00000af6 call  0x0000006b 
+ 00001779  0x00000af7 branch  0x00002518 
+ 00001780  0x00000afa rtnmark1  0x00000026 
+ 00001781  0x00000afb call  0x00002afa 
+ 00001782  0x00000afc fetch  0x00000003 , 0x0000416f 
+ 00001783  0x00000afd rtn  0x00000034 
+ 00001784  0x00000afe fetch  0x00000001 , 0x00004091 
+ 00001785  0x00000aff rtn  0x00000034 
+ 00001786  0x00000b00 fetch  0x00000001 , 0x0000465a 
+ 00001787  0x00000b01 branch  0x000006fe , 0x00000034 
+ 00001788  0x00000b02 fetch  0x00000001 , 0x000045b1 
+ 00001789  0x00000b03 rtn  0x00000034 
+ 00001790  0x00000b05 fetch  0x00000001 , 0x000044c0 
+ 00001791  0x00000b06 nrtn  0x00000034 
+ 00001792  0x00000b07 call  0x00002c3a 
+ 00001793  0x00000b08 nrtn  0x00000034 
+ 00001794  0x00000b09 fetch  0x00000001 , 0x00004040 
+ 00001795  0x00000b0a compare  0x00000003 , 0x0000003f , 0x00000007 
+ 00001796  0x00000b0b nbranch  0x00002b9d , 0x00000001 
+ 00001797  0x00000b0c fetch  0x00000002 , 0x00004042 
+ 00001798  0x00000b0d arg  0x0000ffff , 0x00000002 
+ 00001799  0x00000b0e isub  0x00000002 , 0x0000003e 
+ 00001800  0x00000b0f rtn  0x00000005 
+ 00001801  0x00000b10 branch  0x00002b7d 
+ 00001802  0x00000b13 disable  0x0000002b 
+ 00001803  0x00000b14 fetch  0x00000001 , 0x00000030 
+ 00001804  0x00000b15 rtnbit0  0x00000001 
+ 00001805  0x00000b16 nbranch  0x00002bd0 , 0x0000002d 
+ 00001806  0x00000b17 call  0x00002bcb 
+ 00001807  0x00000b18 fetch  0x00000002 , 0x000040c1 
+ 00001808  0x00000b19 store  0x00000002 , 0x0000003e 
+ 00001809  0x00000b1a fetch  0x00000001 , 0x00000047 
+ 00001810  0x00000b1b bbit1  0x00000003 , 0x00002bde 
+ 00001811  0x00000b1c bmark0  0x0000000d , 0x00002bde 
+ 00001812  0x00000b1d call  0x00005274 
+ 00001813  0x00000b1e nbranch  0x00002bde , 0x00000034 
+ 00001814  0x00000b1f call  0x00000718 , 0x00000034 
+ 00001815  0x00000b20 branch  0x00002bbe 
+ 00001816  0x00000b22 jam  0x00000001 , 0x0000008a 
+ 00001817  0x00000b23 jam  0x00000000 , 0x0000008b 
+ 00001818  0x00000b24 rtn 
+ 00001819  0x00000b27 jam  0x00000010 , 0x000011c5 
+ 00001820  0x00000b28 branch  0x000007d5 
+ 00001821  0x00000b2b jam  0x00000011 , 0x000011c5 
+ 00001822  0x00000b2c branch  0x000007d5 
+ 00001823  0x00000b2f fetch  0x00000001 , 0x00000552 
+ 00001824  0x00000b30 store  0x00000001 , 0x000004c9 
+ 00001825  0x00000b31 beq  0x00000013 , 0x00000723 
+ 00001826  0x00000b32 branch  0x00005db4 
+ 00001827  0x00000b34 call  0x00005dcf 
+ 00001828  0x00000b35 jam  0x00000001 , 0x00004aff 
+ 00001829  0x00000b36 fetch  0x00000001 , 0x00004b01 
+ 00001830  0x00000b37 rtn  0x00000034 
+ 00001831  0x00000b38 jam  0x00000002 , 0x00004b01 
+ 00001832  0x00000b39 rtn 
+ 00001833  0x00000b3c jam  0x00000020 , 0x000011c5 
+ 00001834  0x00000b3d branch  0x000007d5 
+ 00001835  0x00000b40 call  0x000062bc 
+ 00001836  0x00000b41 nrtn  0x00000034 
+ 00001837  0x00000b43 fetch  0x00000001 , 0x00000055 
+ 00001838  0x00000b44 rtn  0x00000034 
+ 00001839  0x00000b45 beq  0x00000004 , 0x0000074d 
+ 00001840  0x00000b46 beq  0x00000010 , 0x00000732 
+ 00001841  0x00000b47 branch  0x00006320 
+ 00001842  0x00000b4a fetch  0x00000001 , 0x0000455b 
+ 00001843  0x00000b4b rtneq  0x00000000 
+ 00001844  0x00000b4c beq  0x00000001 , 0x00000736 
+ 00001845  0x00000b4d branch  0x0000635f 
+ 00001846  0x00000b4f rtn  0x00000029 
+ 00001847  0x00000b52 fetch  0x00000001 , 0x0000016d 
+ 00001848  0x00000b53 bbit1  0x00000000 , 0x0000073a 
+ 00001849  0x00000b54 branch  0x00006399 
+ 00001850  0x00000b56 fetch  0x00000001 , 0x00004b01 
+ 00001851  0x00000b57 beq  0x00000001 , 0x0000639d 
+ 00001852  0x00000b59 fetch  0x00000001 , 0x000041bd 
+ 00001853  0x00000b5a branch  0x000063a9 , 0x00000034 
+ 00001854  0x00000b5b fetch  0x00000001 , 0x000004d1 
+ 00001855  0x00000b5c rtnbit0  0x00000003 
+ 00001856  0x00000b5d rtnbit0  0x00000002 
+ 00001857  0x00000b5e fetch  0x00000001 , 0x00004b00 
+ 00001858  0x00000b5f rtn  0x00000034 
+ 00001859  0x00000b60 jam  0x00000000 , 0x00004b00 
+ 00001860  0x00000b61 fetch  0x00000004 , 0x000004e9 
+ 00001861  0x00000b62 arg  0x00000014 , 0x00000002 
+ 00001862  0x00000b63 iadd  0x00000002 , 0x00000002 
+ 00001863  0x00000b64 copy  0x00000022 , 0x0000003f 
+ 00001864  0x00000b65 isub  0x00000002 , 0x0000003e 
+ 00001865  0x00000b66 nbranch  0x0000074b , 0x00000002 
+ 00001866  0x00000b67 branch  0x00006349 
+ 00001867  0x00000b6a jam  0x00000001 , 0x00004b00 
+ 00001868  0x00000b6b rtn 
+ 00001869  0x00000b6e jam  0x00000014 , 0x00004809 
+ 00001870  0x00000b6f branch  0x0000636f 
+ 00001871  0x00000b76 call  0x000062bc 
+ 00001872  0x00000b77 nbranch  0x00007ddb , 0x00000034 
+ 00001873  0x00000b78 fetch  0x00000001 , 0x00000a99 
+ 00001874  0x00000b79 bmark0  0x00000009 , 0x00007dd6 
+ 00001875  0x00000b7a beq  0x0000001f , 0x0000075a 
+ 00001876  0x00000b7b beq  0x00000020 , 0x0000075d 
+ 00001877  0x00000b7c beq  0x00000012 , 0x00000757 
+ 00001878  0x00000b7d branch  0x00007dca 
+ 00001879  0x00000b80 call  0x00005890 
+ 00001880  0x00000b81 nrtn  0x00000034 
+ 00001881  0x00000b82 branch  0x00005abf 
+ 00001882  0x00000b85 jam  0x00000034 , 0x00000185 
+ 00001883  0x00000b86 fetch  0x00000006 , 0x0000044f 
+ 00001884  0x00000b87 branch  0x0000075f 
+ 00001885  0x00000b89 jam  0x00000033 , 0x00000185 
+ 00001886  0x00000b8a fetch  0x00000006 , 0x00000040 
+ 00001887  0x00000b8c store  0x00000006 , 0x00000186 
+ 00001888  0x00000b8e fetch  0x00000004 , 0x000046d3 
+ 00001889  0x00000b8f rtnbit0  0x00000007 
+ 00001890  0x00000b90 arg  0x00000007 , 0x00000007 
+ 00001891  0x00000b91 call  0x000043d2 
+ 00001892  0x00000b92 call  0x000042e8 
+ 00001893  0x00000b94 call  0x000042fb 
+ 00001894  0x00000b95 branch  0x00000334 
+ 00001895  0x00000b9b jam  0x00000001 , 0x00004d2c 
+ 00001896  0x00000b9c jam  0x00000000 , 0x00004d29 
+ 00001897  0x00000b9d rtn 
+ 00001898  0x00000b9f fetch  0x00000001 , 0x00004d29 
+ 00001899  0x00000ba0 increase  0x00000001 , 0x0000003f 
+ 00001900  0x00000ba1 store  0x00000001 , 0x00004d29 
+ 00001901  0x00000ba2 rtn 
+ 00001902  0x00000ba4 fetch  0x00000001 , 0x00004d29 
+ 00001903  0x00000ba5 sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00001904  0x00000ba6 ncall  0x00000776 , 0x00000002 
+ 00001905  0x00000ba7 fetch  0x00000001 , 0x00004d29 
+ 00001906  0x00000ba8 rtneq  0x00000000 
+ 00001907  0x00000ba9 increase  0xffffffff , 0x0000003f 
+ 00001908  0x00000baa store  0x00000001 , 0x00004d29 
+ 00001909  0x00000bab rtn 
+ 00001910  0x00000bad jam  0x00000003 , 0x00004d29 
+ 00001911  0x00000bae rtn 
+ 00001912  0x00000bb1 fetch  0x00000002 , 0x00004682 
+ 00001913  0x00000bb2 rtnbit1  0x0000000b 
+ 00001914  0x00000bb3 rtnbit1  0x00000007 
+ 00001915  0x00000bb4 rtnbit1  0x00000006 
+ 00001916  0x00000bb6 arg  0x00004cb2 , 0x00000011 
+ 00001917  0x00000bb7 call  0x0000028d 
+ 00001918  0x00000bb8 storet  0x00000001 , 0x00004d2a 
+ 00001919  0x00000bba setarg  0x00000082 
+ 00001920  0x00000bbb bmark1  0x00000026 , 0x00000782 
+ 00001921  0x00000bbc setarg  0x00000080 
+ 00001922  0x00000bbe isub  0x00000002 , 0x0000003e 
+ 00001923  0x00000bbf nbranch  0x0000079a , 0x00000002 
+ 00001924  0x00000bc1 fetch  0x00000001 , 0x00004d29 
+ 00001925  0x00000bc2 sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00001926  0x00000bc3 nbranch  0x0000078a , 0x00000002 
+ 00001927  0x00000bc4 fetch  0x00000001 , 0x00004d29 
+ 00001928  0x00000bc5 beq  0x00000000 , 0x0000079b 
+ 00001929  0x00000bc6 rtn 
+ 00001930  0x00000bc9 fetch  0x00000001 , 0x00004d29 
+ 00001931  0x00000bca rtnne  0x00000020 
+ 00001932  0x00000bcb jam  0x00000000 , 0x00004d29 
+ 00001933  0x00000bcd fetcht  0x00000001 , 0x00004d2a 
+ 00001934  0x00000bce setarg  0x00000077 
+ 00001935  0x00000bcf bmark1  0x00000026 , 0x00000791 
+ 00001936  0x00000bd0 setarg  0x00000075 
+ 00001937  0x00000bd2 isub  0x00000002 , 0x0000003e 
+ 00001938  0x00000bd3 nrtn  0x00000002 
+ 00001939  0x00000bd4 fetch  0x00000001 , 0x00004d2c 
+ 00001940  0x00000bd5 beq  0x00000000 , 0x000007a2 
+ 00001941  0x00000bd6 increase  0xffffffff , 0x0000003f 
+ 00001942  0x00000bd7 store  0x00000001 , 0x00004d2c 
+ 00001943  0x00000bd8 beq  0x00000000 , 0x000007a2 
+ 00001944  0x00000bdb jam  0x00000000 , 0x000041de 
+ 00001945  0x00000bdc rtn 
+ 00001946  0x00000bdf jam  0x00000000 , 0x00004d29 
+ 00001947  0x00000be1 fetch  0x00000001 , 0x00004d2c 
+ 00001948  0x00000be2 beq  0x00000002 , 0x000007a0 
+ 00001949  0x00000be3 increase  0x00000001 , 0x0000003f 
+ 00001950  0x00000be4 store  0x00000001 , 0x00004d2c 
+ 00001951  0x00000be5 beq  0x00000001 , 0x00000798 
+ 00001952  0x00000be7 jam  0x00000002 , 0x000041de 
+ 00001953  0x00000be8 rtn 
+ 00001954  0x00000beb jam  0x00000004 , 0x000041de 
+ 00001955  0x00000bec rtn 
+ 00001956  0x00000bf0 storet  0x00000001 , 0x00000017 
+ 00001957  0x00000bf1 add  0x00000002 , 0x00000000 , 0x00000011 
+ 00001958  0x00000bf2 call  0x00002981 
+ 00001959  0x00000bf3 setarg  0x00000500 
+ 00001960  0x00000bf4 call  0x00002a8f 
+ 00001961  0x00000bf6 jam  0x00000001 , 0x00008906 
+ 00001962  0x00000bf7 jam  0x0000003c , 0x00008900 
+ 00001963  0x00000bf8 jam  0x000000e0 , 0x00008901 
+ 00001964  0x00000bf9 nop  0x0000000a 
+ 00001965  0x00000bfa jam  0x00000001 , 0x00008902 
+ 00001966  0x00000bfb jam  0x0000003d , 0x00008902 
+ 00001967  0x00000bfc nop  0x0000000a 
+ 00001968  0x00000bfd jam  0x000000b7 , 0x00008903 
+ 00001969  0x00000bfe nop  0x0000000a 
+ 00001970  0x00000bff jam  0x0000007d , 0x00008902 
+ 00001971  0x00000c00 fetch  0x00000001 , 0x000041de 
+ 00001972  0x00000c03 beq  0x00000002 , 0x000007bc 
+ 00001973  0x00000c05 beq  0x00000004 , 0x000007c1 
+ 00001974  0x00000c06 beq  0x00000020 , 0x000007d0 
+ 00001975  0x00000c09 call  0x000007c6 
+ 00001976  0x00000c0b jam  0x000000d0 , 0x00008955 
+ 00001977  0x00000c0c jam  0x000000e0 , 0x00008956 
+ 00001978  0x00000c0e jam  0x0000006c , 0x00008958 
+ 00001979  0x00000c10 branch  0x0000294b 
+ 00001980  0x00000c1d call  0x000007cb 
+ 00001981  0x00000c1f jam  0x000000d0 , 0x00008955 
+ 00001982  0x00000c20 jam  0x000000e0 , 0x00008956 
+ 00001983  0x00000c22 jam  0x0000003c , 0x00008958 
+ 00001984  0x00000c24 branch  0x00002953 
+ 00001985  0x00000c31 call  0x000007c6 
+ 00001986  0x00000c33 jam  0x000000d0 , 0x00008955 
+ 00001987  0x00000c34 jam  0x000000c0 , 0x00008956 
+ 00001988  0x00000c36 jam  0x0000006c , 0x00008958 
+ 00001989  0x00000c38 branch  0x0000295b 
+ 00001990  0x00000c3b jam  0x0000005b , 0x0000894c 
+ 00001991  0x00000c3c jam  0x00000096 , 0x0000894d 
+ 00001992  0x00000c3d jam  0x0000002c , 0x0000894e 
+ 00001993  0x00000c3e jam  0x00000046 , 0x0000894f 
+ 00001994  0x00000c3f rtn 
+ 00001995  0x00000c42 jam  0x000000fb , 0x0000894c 
+ 00001996  0x00000c43 jam  0x000000ef , 0x0000894d 
+ 00001997  0x00000c44 jam  0x000000ec , 0x0000894e 
+ 00001998  0x00000c45 jam  0x0000005e , 0x0000894f 
+ 00001999  0x00000c46 rtn 
+ 00002000  0x00000c4a jam  0x000000c2 , 0x00008956 
+ 00002001  0x00000c4b jam  0x000000d0 , 0x00008955 
+ 00002002  0x00000c4c rtn 
+ 00002003  0x00000c4f force  0x00000008 , 0x00000015 
+ 00002004  0x00000c50 branch  0x000028fa 
+ 00002005  0x00000c55 fetcht  0x00000001 , 0x000011c5 
+ 00002006  0x00000c56 rshift4  0x00000002 , 0x00000002 
+ 00002007  0x00000c57 fetch  0x00000001 , 0x00004b4f 
+ 00002008  0x00000c58 isub  0x00000002 , 0x0000003e 
+ 00002009  0x00000c59 branch  0x000007f2 , 0x00000005 
+ 00002010  0x00000c5a storet  0x00000001 , 0x00004b4f 
+ 00002011  0x00000c5b increase  0x00000001 , 0x00000002 
+ 00002012  0x00000c5c setarg  0x00000100 
+ 00002013  0x00000c5d imul32  0x00000002 , 0x00000002 
+ 00002014  0x00000c5e fetch  0x00000003 , 0x00004b50 
+ 00002015  0x00000c5f isub  0x00000002 , 0x0000003f 
+ 00002016  0x00000c61 fetcht  0x00000003 , 0x00004b53 
+ 00002017  0x00000c62 iadd  0x00000002 , 0x0000003f 
+ 00002018  0x00000c63 increase  0xfffffffb , 0x0000003f 
+ 00002019  0x00000c64 store  0x00000003 , 0x00004b56 
+ 00002020  0x00000c66 call  0x00000377 
+ 00002021  0x00000c68 fetch  0x00000003 , 0x00004b56 
+ 00002022  0x00000c69 arg  0x00000100 , 0x00000002 
+ 00002023  0x00000c6a arg  0x00001f00 , 0x00000011 
+ 00002024  0x00000c6b call  0x00006562 
+ 00002025  0x00000c6c fetch  0x00000004 , 0x00001f00 
+ 00002026  0x00000c6d branch  0x000007e5 , 0x00000034 
+ 00002027  0x00000c6e call  0x000002f0 
+ 00002028  0x00000c70 setarg  0x00001f00 
+ 00002029  0x00000c71 store  0x00000002 , 0x00004199 
+ 00002030  0x00000c72 jam  0x00000040 , 0x0000419b 
+ 00002031  0x00000c73 call  0x000064ca 
+ 00002032  0x00000c74 setarg  0x00000000 
+ 00002033  0x00000c75 store  0x00000004 , 0x00004199 
+ 00002034  0x00000c77 fetch  0x00000001 , 0x000011c5 
+ 00002035  0x00000c78 branch  0x00000001 
+ 00008192  0x00000c89 call  0x00002abc 
+ 00008193  0x00000c8c bpatch  0x00000000 , 0x00004000 
+ 00008194  0x00000c8d clear_stack 
+ 00008195  0x00000c8e call  0x0000640d 
+ 00008196  0x00000c8f call  0x0000296c 
+ 00008197  0x00000c90 call  0x000065a3 
+ 00008198  0x00000c91 call  0x00002a96 
+ 00008199  0x00000c92 call  0x00004d6a 
+ 00008200  0x00000c93 bpatch  0x00000001 , 0x00004000 
+ 00008201  0x00000c94 call  0x00006a03 
+ 00008202  0x00000c95 call  0x00005cf6 
+ 00008203  0x00000c96 call  0x00007ccc 
+ 00008204  0x00000c97 call  0x000032d8 
+ 00008205  0x00000c98 ncall  0x0000689c , 0x0000002b 
+ 00008206  0x00000c99 bpatch  0x00000002 , 0x00004000 
+ 00008207  0x00000c9a call  0x000032e3 , 0x0000002b 
+ 00008208  0x00000c9b call  0x0000756a 
+ 00008209  0x00000c9c call  0x00002b41 , 0x0000002b 
+ 00008210  0x00000c9e bpatch  0x00000003 , 0x00004000 
+ 00008211  0x00000c9f call  0x000076dc 
+ 00008212  0x00000ca0 call  0x00007aaf 
+ 00008213  0x00000ca1 call  0x0000756d 
+ 00008214  0x00000ca2 call  0x0000535c 
+ 00008215  0x00000ca3 bpatch  0x00000004 , 0x00004000 
+ 00008216  0x00000ca4 call  0x00002038 
+ 00008217  0x00000ca5 call  0x000032ed 
+ 00008218  0x00000ca6 call  0x0000208f 
+ 00008219  0x00000ca7 call  0x000022f8 
+ 00008220  0x00000ca8 call  0x0000236a 
+ 00008221  0x00000ca9 call  0x00002021 
+ 00008222  0x00000caa call  0x00002b6a 
+ 00008223  0x00000cab call  0x00002c72 
+ 00008224  0x00000cac branch  0x00002012 
+ 00008225  0x00000caf call  0x00002026 
+ 00008226  0x00000cb0 rtnmark0  0x00000009 
+ 00008227  0x00000cb1 set0  0x00000009 , 0x00000000 
+ 00008228  0x00000cb2 call  0x00002223 
+ 00008229  0x00000cb3 branch  0x000053ce 
+ 00008230  0x00000cb6 bpatch  0x00000005 , 0x00004000 
+ 00008231  0x00000cb7 call  0x0000225e 
+ 00008232  0x00000cb8 nbranch  0x0000202f , 0x00000005 
+ 00008233  0x00000cb9 call  0x0000220a 
+ 00008234  0x00000cba add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008235  0x00000cbb ifetch  0x00000001 , 0x00000006 
+ 00008236  0x00000cbc bbit1  0x00000000 , 0x00005360 
+ 00008237  0x00000cbd bbit1  0x00000001 , 0x00002166 
+ 00008238  0x00000cbe branch  0x000023cf 
+ 00008239  0x00000cc0 call  0x0000222b 
+ 00008240  0x00000cc1 copy  0x00000039 , 0x0000003e 
+ 00008241  0x00000cc2 rtn  0x00000005 
+ 00008242  0x00000cc3 call  0x0000220a 
+ 00008243  0x00000cc4 fetch  0x00000001 , 0x00000030 
+ 00008244  0x00000cc5 bbit1  0x00000003 , 0x000020d3 
+ 00008245  0x00000cc6 fetch  0x00000001 , 0x00000031 
+ 00008246  0x00000cc7 bbit1  0x00000001 , 0x00002166 
+ 00008247  0x00000cc8 branch  0x000023cf 
+ 00008248  0x00000cd1 fetch  0x00000001 , 0x000041ce 
+ 00008249  0x00000cd2 rtn  0x00000034 
+ 00008250  0x00000cd3 beq  0x00000001 , 0x00002048 
+ 00008251  0x00000cd4 beq  0x00000002 , 0x0000204d 
+ 00008252  0x00000cd5 beq  0x00000003 , 0x00002050 
+ 00008253  0x00000cd6 beq  0x00000005 , 0x00002055 
+ 00008254  0x00000cd7 beq  0x0000001b , 0x00002045 
+ 00008255  0x00000cd8 call  0x00002257 
+ 00008256  0x00000cd9 rtn  0x00000005 
+ 00008257  0x00000cda call  0x0000225a 
+ 00008258  0x00000cdb rtn  0x00000005 
+ 00008259  0x00000cdd jam  0x00000000 , 0x000041ce 
+ 00008260  0x00000cde rtn 
+ 00008261  0x00000ce1 jam  0x0000001b , 0x0000049b 
+ 00008262  0x00000ce2 jam  0x00000000 , 0x000041ce 
+ 00008263  0x00000ce3 rtn 
+ 00008264  0x00000ce6 set1  0x0000001c , 0x00000000 
+ 00008265  0x00000ce7 set0  0x0000001e , 0x00000000 
+ 00008266  0x00000ce8 jam  0x000000ff , 0x0000008f 
+ 00008267  0x00000ce9 jam  0x0000001f , 0x0000008d 
+ 00008268  0x00000cea branch  0x00002043 
+ 00008269  0x00000ced set0  0x0000001c , 0x00000000 
+ 00008270  0x00000cee force  0x00000000 , 0x0000001b 
+ 00008271  0x00000cef branch  0x00002043 
+ 00008272  0x00000cf2 call  0x0000225a 
+ 00008273  0x00000cf3 rtn  0x00000005 
+ 00008274  0x00000cf4 force  0x00000001 , 0x00000002 
+ 00008275  0x00000cf5 jam  0x00000005 , 0x0000016e 
+ 00008276  0x00000cf6 branch  0x0000205c 
+ 00008277  0x00000cf9 bpatch  0x00000006 , 0x00004000 
+ 00008278  0x00000cfb fetch  0x00000006 , 0x000041d0 
+ 00008279  0x00000cfc branch  0x00002043 , 0x00000034 
+ 00008280  0x00000cfd jam  0x00000001 , 0x00004681 
+ 00008281  0x00000cff jam  0x00000003 , 0x00000055 
+ 00008282  0x00000d00 branch  0x0000205b 
+ 00008283  0x00000d03 force  0x00000025 , 0x00000002 
+ 00008284  0x00000d05 bpatch  0x00000007 , 0x00004000 
+ 00008285  0x00000d06 fetch  0x00000001 , 0x000000f1 
+ 00008286  0x00000d07 branch  0x00002062 , 0x00000034 
+ 00008287  0x00000d08 lshift3  0x0000003f , 0x0000003f 
+ 00008288  0x00000d09 lshift4  0x0000003f , 0x0000003f 
+ 00008289  0x00000d0a increase  0xffffffff , 0x0000003f 
+ 00008290  0x00000d0c store  0x00000001 , 0x000040a6 
+ 00008291  0x00000d0d store  0x00000001 , 0x000000f0 
+ 00008292  0x00000d0e jam  0x0000001f , 0x0000008e 
+ 00008293  0x00000d0f set0  0x0000000c , 0x00000000 
+ 00008294  0x00000d10 call  0x0000223b 
+ 00008295  0x00000d11 nbranch  0x00002083 , 0x00000005 
+ 00008296  0x00000d12 call  0x00002a6f 
+ 00008297  0x00000d13 store  0x00000001 , 0x00000077 
+ 00008298  0x00000d14 storet  0x00000001 , 0x0000007c 
+ 00008299  0x00000d15 fetch  0x00000006 , 0x000041d0 
+ 00008300  0x00000d16 store  0x00000006 , 0x00000040 
+ 00008301  0x00000d17 bpatch  0x00000008 , 0x00004001 
+ 00008302  0x00000d18 call  0x00007f15 
+ 00008303  0x00000d19 force  0x00000000 , 0x0000003f 
+ 00008304  0x00000d1a compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00008305  0x00000d1b nsetflag  0x00000001 , 0x00000005 , 0x0000003f 
+ 00008306  0x00000d1c set1  0x00000003 , 0x0000003f 
+ 00008307  0x00000d1d store  0x00000001 , 0x00000030 
+ 00008308  0x00000d1e jam  0x00000003 , 0x00000a99 
+ 00008309  0x00000d1f call  0x00007d86 
+ 00008310  0x00000d20 force  0x00000000 , 0x0000003f 
+ 00008311  0x00000d21 setflag  0x00000001 , 0x00000004 , 0x0000003f 
+ 00008312  0x00000d22 store  0x00000001 , 0x0000004c 
+ 00008313  0x00000d23 setarg  0x00000000 
+ 00008314  0x00000d24 set1  0x00000001 , 0x0000003f 
+ 00008315  0x00000d25 store  0x00000001 , 0x00000031 
+ 00008316  0x00000d26 enable  0x00000029 
+ 00008317  0x00000d27 call  0x00002223 
+ 00008318  0x00000d28 disable  0x00000029 
+ 00008319  0x00000d29 force  0x00000003 , 0x00000007 
+ 00008320  0x00000d2a fetch  0x00000002 , 0x000040b9 
+ 00008321  0x00000d2b call  0x00007f08 
+ 00008322  0x00000d2c branch  0x00002043 
+ 00008323  0x00000d2e bpatch  0x00000009 , 0x00004001 
+ 00008324  0x00000d2f fetch  0x00000006 , 0x000041d0 
+ 00008325  0x00000d30 store  0x00000006 , 0x00000040 
+ 00008326  0x00000d31 compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00008327  0x00000d32 branch  0x00002089 , 0x00000001 
+ 00008328  0x00000d33 branch  0x00002043 
+ 00008329  0x00000d35 arg  0x00000101 , 0x00000005 
+ 00008330  0x00000d36 arg  0x00000008 , 0x00000039 
+ 00008331  0x00000d37 call  0x00007ec6 
+ 00008332  0x00000d38 jam  0x00000004 , 0x00000a99 
+ 00008333  0x00000d39 call  0x00007d86 
+ 00008334  0x00000d3a branch  0x00002043 
+ 00008335  0x00000d42 rtnmark0  0x0000001c 
+ 00008336  0x00000d43 force  0x00000001 , 0x00000007 
+ 00008337  0x00000d44 call  0x00007f16 
+ 00008338  0x00000d45 nsetflag  0x00000034 , 0x0000001c , 0x00000000 
+ 00008339  0x00000d46 nbranch  0x00002095 , 0x00000034 
+ 00008340  0x00000d47 rtn 
+ 00008341  0x00000d4c bpatch  0x0000000a , 0x00004001 
+ 00008342  0x00000d4d fetcht  0x00000002 , 0x000040bb 
+ 00008343  0x00000d4e force  0x00000004 , 0x00000007 
+ 00008344  0x00000d4f call  0x0000271c 
+ 00008345  0x00000d50 rtn  0x00000028 
+ 00008346  0x00000d51 call  0x000028a4 
+ 00008347  0x00000d52 force  0x00000000 , 0x00000024 
+ 00008348  0x00000d54 rtn  0x00000003 
+ 00008349  0x00000d55 set0  0x0000000b , 0x00000000 
+ 00008350  0x00000d56 set0  0x00000000 , 0x00000000 
+ 00008351  0x00000d58 add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008352  0x00000d59 isolate1  0x0000001e , 0x00000000 
+ 00008353  0x00000d5a setflag  0x00000001 , 0x00000002 , 0x00000024 
+ 00008354  0x00000d5b compare  0x00000000 , 0x00000021 , 0x00000002 
+ 00008355  0x00000d5c nbranch  0x000020be , 0x00000001 
+ 00008356  0x00000d5f bpatch  0x0000000b , 0x00004001 
+ 00008357  0x00000d60 fetch  0x00000001 , 0x00000012 
+ 00008358  0x00000d61 increase  0x00000001 , 0x0000003f 
+ 00008359  0x00000d62 store  0x00000001 , 0x00000012 
+ 00008360  0x00000d63 call  0x000028d8 
+ 00008361  0x00000d64 call  0x000028d2 
+ 00008362  0x00000d65 call  0x000028f2 
+ 00008363  0x00000d66 call  0x00002a51 
+ 00008364  0x00000d67 call  0x00002a56 
+ 00008365  0x00000d68 call  0x00002a64 
+ 00008366  0x00000d69 call  0x0000264d 
+ 00008367  0x00000d6a call  0x000020b1 
+ 00008368  0x00000d6b branch  0x0000209c 
+ 00008369  0x00000d6e bpatch  0x0000000c , 0x00004001 
+ 00008370  0x00000d6f fetch  0x00000001 , 0x0000008d 
+ 00008371  0x00000d70 increase  0xffffffff , 0x0000003f 
+ 00008372  0x00000d71 store  0x00000001 , 0x0000008d 
+ 00008373  0x00000d72 rtn  0x00000002 
+ 00008374  0x00000d73 jam  0x0000001f , 0x0000008d 
+ 00008375  0x00000d74 fetch  0x00000001 , 0x0000008f 
+ 00008376  0x00000d75 increase  0xffffffff , 0x0000003f 
+ 00008377  0x00000d76 store  0x00000001 , 0x0000008f 
+ 00008378  0x00000d77 rtn  0x00000002 
+ 00008379  0x00000d78 setflip  0x0000001e , 0x00000000 
+ 00008380  0x00000d79 jam  0x000000ff , 0x0000008f 
+ 00008381  0x00000d7a rtn 
+ 00008382  0x00000d7d bpatch  0x0000000d , 0x00004001 
+ 00008383  0x00000d7e call  0x000028d8 
+ 00008384  0x00000d7f call  0x000028cc 
+ 00008385  0x00000d80 call  0x000028f2 
+ 00008386  0x00000d81 call  0x00002a5b 
+ 00008387  0x00000d82 call  0x000029eb 
+ 00008388  0x00000d83 call  0x00002a0d 
+ 00008389  0x00000d84 branch  0x000020c8 , 0x00000018 
+ 00008390  0x00000d85 call  0x000020b1 
+ 00008391  0x00000d86 branch  0x0000209f 
+ 00008392  0x00000d88 bpatch  0x0000000e , 0x00004001 
+ 00008393  0x00000d89 call  0x000029bb 
+ 00008394  0x00000d8a call  0x00002a6b 
+ 00008395  0x00000d8b call  0x0000251e 
+ 00008396  0x00000d8c set0  0x00000001 , 0x00000000 
+ 00008397  0x00000d8d rtnmark0  0x0000000b 
+ 00008398  0x00000d8f bpatch  0x0000000f , 0x00004001 
+ 00008399  0x00000d91 fetch  0x00000001 , 0x00000013 
+ 00008400  0x00000d92 increase  0x00000001 , 0x0000003f 
+ 00008401  0x00000d93 store  0x00000001 , 0x00000013 
+ 00008402  0x00000d94 rtn 
+ 00008403  0x00000d9d bpatch  0x00000010 , 0x00004002 
+ 00008404  0x00000d9e enable  0x00000029 
+ 00008405  0x00000d9f enable  0x00000030 
+ 00008406  0x00000da0 fetch  0x00000002 , 0x000040b5 
+ 00008407  0x00000da1 branch  0x000020db , 0x00000034 
+ 00008408  0x00000da2 force  0x00000008 , 0x00000007 
+ 00008409  0x00000da3 call  0x00007f16 
+ 00008410  0x00000da4 nrtn  0x00000034 
+ 00008411  0x00000da6 bpatch  0x00000011 , 0x00004002 
+ 00008412  0x00000da7 fetcht  0x00000002 , 0x000040b7 
+ 00008413  0x00000da8 force  0x00000028 , 0x00000007 
+ 00008414  0x00000da9 call  0x0000271c 
+ 00008415  0x00000daa branch  0x00002114 , 0x00000028 
+ 00008416  0x00000dab force  0x00000003 , 0x00000007 
+ 00008417  0x00000dac call  0x00007f16 
+ 00008418  0x00000dad nbranch  0x000020f0 , 0x00000034 
+ 00008419  0x00000dae fetch  0x00000001 , 0x0000004c 
+ 00008420  0x00000daf bbit1  0x00000004 , 0x000020e6 
+ 00008421  0x00000db0 branch  0x000020e9 
+ 00008422  0x00000db2 arg  0x00000101 , 0x00000005 
+ 00008423  0x00000db3 arg  0x00000008 , 0x00000039 
+ 00008424  0x00000db4 call  0x00007ec6 
+ 00008425  0x00000db6 bpatch  0x00000012 , 0x00004002 
+ 00008426  0x00000db7 jam  0x00000000 , 0x00000030 
+ 00008427  0x00000db8 call  0x00005cf7 
+ 00008428  0x00000db9 jam  0x00000000 , 0x00004681 
+ 00008429  0x00000dba jam  0x00000013 , 0x00000a99 
+ 00008430  0x00000dbb call  0x00007d86 
+ 00008431  0x00000dbc branch  0x00002114 
+ 00008432  0x00000dbf bpatch  0x00000013 , 0x00004002 
+ 00008433  0x00000dc0 force  0x00000000 , 0x0000000b 
+ 00008434  0x00000dc1 until  0x00000023 , 0x00000026 
+ 00008435  0x00000dc2 fetch  0x00000001 , 0x000000f2 
+ 00008436  0x00000dc3 increase  0xffffffff , 0x0000003f 
+ 00008437  0x00000dc4 ixor  0x00000022 , 0x0000003f 
+ 00008438  0x00000dc5 compare  0x00000000 , 0x0000003f , 0x00000003 
+ 00008439  0x00000dc6 nbranch  0x000020f0 , 0x00000001 
+ 00008440  0x00000dc7 deposit  0x00000004 
+ 00008441  0x00000dc8 store  0x00000001 , 0x00000181 
+ 00008442  0x00000dc9 force  0x00000000 , 0x00000026 
+ 00008443  0x00000dca force  0x00000000 , 0x00000024 
+ 00008444  0x00000dcd bpatch  0x00000014 , 0x00004002 
+ 00008445  0x00000dce branch  0x00002114 , 0x00000003 
+ 00008446  0x00000dcf call  0x000028dc 
+ 00008447  0x00000dd0 arg  0x00000600 , 0x0000000b 
+ 00008448  0x00000dd1 until  0x00000023 , 0x00000026 
+ 00008449  0x00000dd3 bpatch  0x00000015 , 0x00004002 
+ 00008450  0x00000dd4 fetch  0x00000004 , 0x000000f2 
+ 00008451  0x00000dd5 iforce  0x00000021 
+ 00008452  0x00000dd6 increase  0x00000001 , 0x0000003f 
+ 00008453  0x00000dd7 store  0x00000004 , 0x000000f2 
+ 00008454  0x00000dd8 isolate1  0x0000000c , 0x00000000 
+ 00008455  0x00000dd9 setflag  0x00000001 , 0x00000002 , 0x00000024 
+ 00008456  0x00000dda compare  0x00000000 , 0x00000021 , 0x00000002 
+ 00008457  0x00000ddb nbranch  0x00002128 , 0x00000001 
+ 00008458  0x00000ddc fetch  0x00000001 , 0x0000000c 
+ 00008459  0x00000ddd increase  0x00000001 , 0x0000003f 
+ 00008460  0x00000dde store  0x00000001 , 0x0000000c 
+ 00008461  0x00000ddf call  0x000028d2 
+ 00008462  0x00000de0 call  0x00002a51 
+ 00008463  0x00000de1 call  0x00002a56 
+ 00008464  0x00000de2 call  0x00002a64 
+ 00008465  0x00000de3 call  0x0000264d 
+ 00008466  0x00000de4 call  0x0000211a 
+ 00008467  0x00000de5 branch  0x000020fc 
+ 00008468  0x00000de7 bpatch  0x00000016 , 0x00004002 
+ 00008469  0x00000de8 disable  0x00000029 
+ 00008470  0x00000de9 fetch  0x00000002 , 0x000040b5 
+ 00008471  0x00000dea rtn  0x00000034 
+ 00008472  0x00000deb force  0x00000008 , 0x00000007 
+ 00008473  0x00000dec branch  0x00007f08 
+ 00008474  0x00000def bpatch  0x00000017 , 0x00004002 
+ 00008475  0x00000df0 fetch  0x00000001 , 0x0000008e 
+ 00008476  0x00000df1 increase  0xffffffff , 0x0000003f 
+ 00008477  0x00000df2 store  0x00000001 , 0x0000008e 
+ 00008478  0x00000df3 rtn  0x00000002 
+ 00008479  0x00000df4 jam  0x0000001f , 0x0000008e 
+ 00008480  0x00000df5 fetch  0x00000001 , 0x000000f0 
+ 00008481  0x00000df6 increase  0xffffffff , 0x0000003f 
+ 00008482  0x00000df7 store  0x00000001 , 0x000000f0 
+ 00008483  0x00000df8 rtn  0x00000002 
+ 00008484  0x00000df9 setflip  0x0000000c , 0x00000000 
+ 00008485  0x00000dfa fetch  0x00000001 , 0x000040a6 
+ 00008486  0x00000dfb store  0x00000001 , 0x000000f0 
+ 00008487  0x00000dfc rtn 
+ 00008488  0x00000dff bpatch  0x00000018 , 0x00004003 
+ 00008489  0x00000e00 call  0x000028cc 
+ 00008490  0x00000e01 call  0x00002a5b 
+ 00008491  0x00000e02 call  0x000029eb 
+ 00008492  0x00000e03 call  0x00002a0d 
+ 00008493  0x00000e04 branch  0x00002130 , 0x00000018 
+ 00008494  0x00000e05 call  0x0000211a 
+ 00008495  0x00000e06 branch  0x00002101 
+ 00008496  0x00000e08 call  0x0000264d 
+ 00008497  0x00000e09 fetch  0x00000001 , 0x0000000d 
+ 00008498  0x00000e0a increase  0x00000001 , 0x0000003f 
+ 00008499  0x00000e0b store  0x00000001 , 0x0000000d 
+ 00008500  0x00000e0c force  0x00000000 , 0x0000001b 
+ 00008501  0x00000e0d fetch  0x00000004 , 0x000000f2 
+ 00008502  0x00000e0f bpatch  0x00000019 , 0x00004003 
+ 00008503  0x00000e10 call  0x00002a4f 
+ 00008504  0x00000e11 call  0x000028dc 
+ 00008505  0x00000e12 increase  0x00000001 , 0x00000026 
+ 00008506  0x00000e14 and_into  0x000001fd , 0x00000021 
+ 00008507  0x00000e15 and_into  0x000001fc , 0x00000024 
+ 00008508  0x00000e16 call  0x000028d2 
+ 00008509  0x00000e17 call  0x00002a51 
+ 00008510  0x00000e18 call  0x00002a56 
+ 00008511  0x00000e19 call  0x00002a64 
+ 00008512  0x00000e1a deposit  0x00000022 
+ 00008513  0x00000e1b store  0x00000004 , 0x00000161 
+ 00008514  0x00000e1c force  0x00000000 , 0x00000004 
+ 00008515  0x00000e1d force  0x00000002 , 0x00000001 
+ 00008516  0x00000e1e call  0x00002a6b 
+ 00008517  0x00000e1f call  0x00002766 
+ 00008518  0x00000e21 bpatch  0x0000001a , 0x00004003 
+ 00008519  0x00000e22 call  0x00002a4d 
+ 00008520  0x00000e23 or_into  0x00000002 , 0x00000021 
+ 00008521  0x00000e24 and_into  0x000001fc , 0x00000024 
+ 00008522  0x00000e25 call  0x000028cc 
+ 00008523  0x00000e26 call  0x00002a5b 
+ 00008524  0x00000e27 call  0x000029eb 
+ 00008525  0x00000e28 call  0x00002a0d 
+ 00008526  0x00000e29 call  0x0000264d , 0x00000018 
+ 00008527  0x00000e2a branch  0x00002155 , 0x00000018 
+ 00008528  0x00000e2b fetch  0x00000001 , 0x00000010 
+ 00008529  0x00000e2c branch  0x000020fc , 0x00000034 
+ 00008530  0x00000e2d increase  0xffffffff , 0x0000003f 
+ 00008531  0x00000e2e store  0x00000001 , 0x00000010 
+ 00008532  0x00000e2f branch  0x00002136 
+ 00008533  0x00000e32 bpatch  0x0000001b , 0x00004003 
+ 00008534  0x00000e33 fetch  0x00000001 , 0x0000000e 
+ 00008535  0x00000e34 increase  0x00000001 , 0x0000003f 
+ 00008536  0x00000e35 store  0x00000001 , 0x0000000e 
+ 00008537  0x00000e36 call  0x00002435 
+ 00008538  0x00000e38 call  0x000022f2 
+ 00008539  0x00000e39 branch  0x0000215f , 0x00000018 
+ 00008540  0x00000e3a call  0x00002455 
+ 00008541  0x00000e3b nbranch  0x0000215a , 0x00000034 
+ 00008542  0x00000e3c branch  0x000020fc 
+ 00008543  0x00000e3f bpatch  0x0000001c , 0x00004003 
+ 00008544  0x00000e40 fetch  0x00000001 , 0x00000030 
+ 00008545  0x00000e41 set0  0x00000003 , 0x0000003f 
+ 00008546  0x00000e42 store  0x00000001 , 0x00000030 
+ 00008547  0x00000e43 call  0x00002440 
+ 00008548  0x00000e44 disable  0x00000029 
+ 00008549  0x00000e45 rtn 
+ 00008550  0x00000e49 bpatch  0x0000001d , 0x00004003 
+ 00008551  0x00000e4a enable  0x00000029 
+ 00008552  0x00000e4b enable  0x00000030 
+ 00008553  0x00000e4c call  0x000021e1 
+ 00008554  0x00000e4d rtn  0x00000028 
+ 00008555  0x00000e4e call  0x00002c69 
+ 00008556  0x00000e4f call  0x00002a4f 
+ 00008557  0x00000e50 add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008558  0x00000e51 call  0x000028e2 
+ 00008559  0x00000e52 force  0x00000003 , 0x00000024 
+ 00008560  0x00000e53 call  0x00006cc2 
+ 00008561  0x00000e54 call  0x00002489 
+ 00008562  0x00000e55 call  0x000028d2 
+ 00008563  0x00000e56 call  0x00002a51 
+ 00008564  0x00000e57 call  0x00002a56 
+ 00008565  0x00000e58 call  0x00002a64 
+ 00008566  0x00000e59 call  0x00002762 
+ 00008567  0x00000e5b bpatch  0x0000001e , 0x00004003 
+ 00008568  0x00000e5c call  0x00005d08 
+ 00008569  0x00000e5d call  0x000022e4 
+ 00008570  0x00000e5e nbranch  0x00002180 , 0x0000002d 
+ 00008571  0x00000e5f call  0x00002a88 
+ 00008572  0x00000e60 call  0x00002728 
+ 00008573  0x00000e61 fetch  0x00000001 , 0x0000000f 
+ 00008574  0x00000e62 increase  0x00000001 , 0x0000003f 
+ 00008575  0x00000e63 store  0x00000001 , 0x0000000f 
+ 00008576  0x00000e65 bpatch  0x0000001f , 0x00004003 
+ 00008577  0x00000e66 call  0x00006caa 
+ 00008578  0x00000e67 call  0x0000218b 
+ 00008579  0x00000e68 nrtn  0x00000029 
+ 00008580  0x00000e69 call  0x000026f3 
+ 00008581  0x00000e6a nbranch  0x00002188 , 0x00000034 
+ 00008582  0x00000e6c disable  0x00000029 
+ 00008583  0x00000e6d rtn 
+ 00008584  0x00000e70 call  0x00002489 
+ 00008585  0x00000e71 call  0x000022da 
+ 00008586  0x00000e72 branch  0x00002177 
+ 00008587  0x00000e76 branch  0x0000218e , 0x0000002d 
+ 00008588  0x00000e77 call  0x00002a7f 
+ 00008589  0x00000e78 branch  0x0000219c , 0x00000002 
+ 00008590  0x00000e7a call  0x000021a7 
+ 00008591  0x00000e7b nbranch  0x0000219c , 0x00000028 
+ 00008592  0x00000e7c fetch  0x00000001 , 0x0000004c 
+ 00008593  0x00000e7d rtnbit0  0x00000004 
+ 00008594  0x00000e7e rtnbit1  0x00000003 
+ 00008595  0x00000e7f fetch  0x00000001 , 0x0000004b 
+ 00008596  0x00000e80 rtnbit1  0x00000003 
+ 00008597  0x00000e81 call  0x000021ae 
+ 00008598  0x00000e82 nrtn  0x00000034 
+ 00008599  0x00000e83 fetch  0x00000001 , 0x0000016e 
+ 00008600  0x00000e84 increase  0xffffffff , 0x0000003f 
+ 00008601  0x00000e85 store  0x00000001 , 0x0000016e 
+ 00008602  0x00000e86 nrtn  0x00000034 
+ 00008603  0x00000e87 branch  0x00006006 
+ 00008604  0x00000e8a bpatch  0x00000020 , 0x00004004 
+ 00008605  0x00000e8b call  0x0000245d 
+ 00008606  0x00000e8c disable  0x00000029 
+ 00008607  0x00000e8d fetch  0x00000001 , 0x0000004c 
+ 00008608  0x00000e8e bbit1  0x00000004 , 0x000021a2 
+ 00008609  0x00000e8f rtn 
+ 00008610  0x00000e92 fetch  0x00000001 , 0x0000004c 
+ 00008611  0x00000e93 rtnbit1  0x00000003 
+ 00008612  0x00000e95 arg  0x00000101 , 0x00000005 
+ 00008613  0x00000e96 arg  0x00000008 , 0x00000039 
+ 00008614  0x00000e97 branch  0x00007ec6 
+ 00008615  0x00000e9a bpatch  0x00000021 , 0x00004004 
+ 00008616  0x00000e9b enable  0x00000028 
+ 00008617  0x00000e9c fetch  0x00000001 , 0x0000004b 
+ 00008618  0x00000e9d rtnbit0  0x00000003 
+ 00008619  0x00000e9e call  0x000021ae 
+ 00008620  0x00000e9f nrtn  0x00000034 
+ 00008621  0x00000ea0 branch  0x00007fe9 
+ 00008622  0x00000ea3 fetch  0x00000001 , 0x00000072 
+ 00008623  0x00000ea4 increase  0xffffffff , 0x0000003f 
+ 00008624  0x00000ea5 store  0x00000001 , 0x00000072 
+ 00008625  0x00000ea6 rtn 
+ 00008626  0x00000ea9 bpatch  0x00000022 , 0x00004004 
+ 00008627  0x00000eaa fetch  0x00000001 , 0x00000030 
+ 00008628  0x00000eab bbit1  0x00000007 , 0x000021bb 
+ 00008629  0x00000eac fetch  0x00000001 , 0x000009b5 
+ 00008630  0x00000ead branch  0x000021bb , 0x00000034 
+ 00008631  0x00000eae jam  0x00000000 , 0x000009b5 
+ 00008632  0x00000eaf jam  0x00000018 , 0x00000a99 
+ 00008633  0x00000eb0 call  0x00007d86 
+ 00008634  0x00000eb1 branch  0x000021bb 
+ 00008635  0x00000eb3 bpatch  0x00000023 , 0x00004004 
+ 00008636  0x00000eb4 call  0x00002254 
+ 00008637  0x00000eb5 fetch  0x00000001 , 0x00000030 
+ 00008638  0x00000eb6 set1  0x00000007 , 0x0000003f 
+ 00008639  0x00000eb7 store  0x00000001 , 0x00000030 
+ 00008640  0x00000eb8 jam  0x00000001 , 0x000041bd 
+ 00008641  0x00000eb9 fetch  0x00000001 , 0x00000055 
+ 00008642  0x00000eba bne  0x00000016 , 0x000021c3 
+ 00008643  0x00000ebc rtn 
+ 00008644  0x00000ebf jam  0x00000001 , 0x000009b5 
+ 00008645  0x00000ec1 fetch  0x00000001 , 0x00000030 
+ 00008646  0x00000ec2 set0  0x00000007 , 0x0000003f 
+ 00008647  0x00000ec3 store  0x00000001 , 0x00000030 
+ 00008648  0x00000ec4 rtn 
+ 00008649  0x00000ec9 bpatch  0x00000024 , 0x00004004 
+ 00008650  0x00000eca disable  0x00000028 
+ 00008651  0x00000ecb fetch  0x00000002 , 0x00000032 
+ 00008652  0x00000ecc arg  0x0000ffff , 0x00000002 
+ 00008653  0x00000ecd isub  0x00000002 , 0x0000003e 
+ 00008654  0x00000ece nrtn  0x00000005 
+ 00008655  0x00000ecf fetch  0x00000004 , 0x00000034 
+ 00008656  0x00000ed0 branch  0x000021d3 , 0x00000030 
+ 00008657  0x00000ed1 isub  0x00000028 , 0x0000003f 
+ 00008658  0x00000ed2 branch  0x000021d4 
+ 00008659  0x00000ed4 isub  0x00000022 , 0x0000003f 
+ 00008660  0x00000ed6 sub  0x0000003f , 0x00000004 , 0x0000003e 
+ 00008661  0x00000ed7 nrtn  0x00000002 
+ 00008662  0x00000ed8 force  0x00000000 , 0x0000003f 
+ 00008663  0x00000ed9 store  0x00000002 , 0x00000032 
+ 00008664  0x00000eda branch  0x00007fe7 
+ 00008665  0x00000edf copy  0x0000003f , 0x00000002 
+ 00008666  0x00000ee0 bpatch  0x00000025 , 0x00004004 
+ 00008667  0x00000ee1 storet  0x00000004 , 0x00000034 
+ 00008668  0x00000ee3 jam  0x00000001 , 0x0000455b 
+ 00008669  0x00000ee4 setarg  0x0000ffff 
+ 00008670  0x00000ee5 store  0x00000002 , 0x00000032 
+ 00008671  0x00000ee6 jam  0x00000001 , 0x00000073 
+ 00008672  0x00000ee7 rtn 
+ 00008673  0x00000eeb bpatch  0x00000026 , 0x00004004 
+ 00008674  0x00000eec call  0x000021c9 
+ 00008675  0x00000eed nrtn  0x00000028 
+ 00008676  0x00000eee disable  0x00000028 
+ 00008677  0x00000eef jam  0x00000020 , 0x00000011 
+ 00008678  0x00000ef0 set0  0x0000000b , 0x00000000 
+ 00008679  0x00000ef2 call  0x00002a4f 
+ 00008680  0x00000ef3 call  0x000022e6 
+ 00008681  0x00000ef4 bmark1  0x0000000b , 0x000021f4 
+ 00008682  0x00000ef5 call  0x00002455 
+ 00008683  0x00000ef6 nbranch  0x000021e7 , 0x00000034 
+ 00008684  0x00000ef8 bpatch  0x00000027 , 0x00004004 
+ 00008685  0x00000ef9 disable  0x00000028 
+ 00008686  0x00000efa deposit  0x00000022 
+ 00008687  0x00000efb store  0x00000004 , 0x000040ca 
+ 00008688  0x00000efc enable  0x00000030 
+ 00008689  0x00000efd enable  0x00000029 
+ 00008690  0x00000efe jam  0x0000002a , 0x00000a99 
+ 00008691  0x00000eff branch  0x00007d86 
+ 00008692  0x00000f02 bpatch  0x00000028 , 0x00004005 
+ 00008693  0x00000f03 call  0x00002a4d 
+ 00008694  0x00000f04 arg  0x00000010 , 0x00000001 
+ 00008695  0x00000f05 call  0x000022dc 
+ 00008696  0x00000f06 disable  0x00000030 
+ 00008697  0x00000f07 disable  0x00000029 
+ 00008698  0x00000f08 call  0x00002818 
+ 00008699  0x00000f09 call  0x00002435 
+ 00008700  0x00000f0b bpatch  0x00000029 , 0x00004005 
+ 00008701  0x00000f0c call  0x0000247c 
+ 00008702  0x00000f0d branch  0x00002202 , 0x0000002d 
+ 00008703  0x00000f0e call  0x00002455 
+ 00008704  0x00000f0f nbranch  0x000021fc , 0x00000034 
+ 00008705  0x00000f10 branch  0x000021ec 
+ 00008706  0x00000f12 fetch  0x00000001 , 0x00000031 
+ 00008707  0x00000f13 set0  0x00000001 , 0x0000003f 
+ 00008708  0x00000f14 store  0x00000001 , 0x00000031 
+ 00008709  0x00000f15 call  0x00002a88 
+ 00008710  0x00000f16 call  0x00002841 
+ 00008711  0x00000f17 enable  0x00000028 
+ 00008712  0x00000f18 jam  0x0000002b , 0x00000a99 
+ 00008713  0x00000f19 branch  0x00007d86 
+ 00008714  0x00000f1f bpatch  0x0000002a , 0x00004005 
+ 00008715  0x00000f20 set1  0x00000009 , 0x00000000 
+ 00008716  0x00000f21 deposit  0x00000011 
+ 00008717  0x00000f22 store  0x00000002 , 0x0000001e 
+ 00008718  0x00000f23 force  0x00000050 , 0x00000039 
+ 00008719  0x00000f24 arg  0x0000043f , 0x00000005 
+ 00008720  0x00000f25 add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008721  0x00000f26 ifetch  0x00000001 , 0x00000006 
+ 00008722  0x00000f27 copy  0x00000011 , 0x00000006 
+ 00008723  0x00000f28 bbit1  0x00000000 , 0x00007f01 
+ 00008724  0x00000f29 arg  0x00000030 , 0x00000005 
+ 00008725  0x00000f2a call  0x00007f01 
+ 00008726  0x00000f2b disable  0x0000002e 
+ 00008727  0x00000f2c fetch  0x00000001 , 0x00000077 
+ 00008728  0x00000f2d iforce  0x00000004 
+ 00008729  0x00000f2e jam  0x00000001 , 0x0000008a 
+ 00008730  0x00000f2f branch  0x0000221c , 0x00000029 
+ 00008731  0x00000f30 jam  0x00000001 , 0x0000008a 
+ 00008732  0x00000f32 fetch  0x00000001 , 0x00000030 
+ 00008733  0x00000f33 rtnbit0  0x00000001 
+ 00008734  0x00000f34 fetch  0x00000001 , 0x00000073 
+ 00008735  0x00000f35 store  0x00000001 , 0x0000008a 
+ 00008736  0x00000f36 fetch  0x00000001 , 0x00000074 
+ 00008737  0x00000f37 store  0x00000001 , 0x0000008b 
+ 00008738  0x00000f38 rtn 
+ 00008739  0x00000f3b bpatch  0x0000002b , 0x00004005 
+ 00008740  0x00000f3c fetch  0x00000002 , 0x0000001e 
+ 00008741  0x00000f3d iforce  0x00000005 
+ 00008742  0x00000f3e force  0x00000050 , 0x00000039 
+ 00008743  0x00000f3f arg  0x0000043f , 0x00000006 
+ 00008744  0x00000f40 branch  0x00007f01 , 0x00000036 
+ 00008745  0x00000f41 arg  0x00000030 , 0x00000006 
+ 00008746  0x00000f42 branch  0x00007f01 
+ 00008747  0x00000f47 arg  0x00000001 , 0x00000039 
+ 00008748  0x00000f48 fetcht  0x00000001 , 0x00000015 
+ 00008749  0x00000f4a increase  0x00000001 , 0x00000002 
+ 00008750  0x00000f4b compare  0x00000001 , 0x00000002 , 0x000000ff 
+ 00008751  0x00000f4c nbranch  0x00002231 , 0x00000001 
+ 00008752  0x00000f4d arg  0x00000000 , 0x00000002 
+ 00008753  0x00000f4f storet  0x00000001 , 0x00000015 
+ 00008754  0x00000f50 mul32  0x00000002 , 0x00000050 , 0x0000003f 
+ 00008755  0x00000f51 arg  0x00004040 , 0x00000011 
+ 00008756  0x00000f52 iadd  0x00000011 , 0x00000011 
+ 00008757  0x00000f53 ifetch  0x00000001 , 0x00000011 
+ 00008758  0x00000f54 bbit1  0x00000001 , 0x00002239 
+ 00008759  0x00000f55 rtnbit1  0x00000000 
+ 00008760  0x00000f56 rtnbit1  0x00000003 
+ 00008761  0x00000f58 loop  0x0000222d 
+ 00008762  0x00000f59 rtn 
+ 00008763  0x00000f5c bpatch  0x0000002c , 0x00004005 
+ 00008764  0x00000f5d arg  0x0000226a , 0x00000013 
+ 00008765  0x00000f5e call  0x00002261 
+ 00008766  0x00000f5f nrtn  0x00000005 
+ 00008767  0x00000f60 deposit  0x00000011 
+ 00008768  0x00000f61 store  0x00000002 , 0x0000001e 
+ 00008769  0x00000f62 force  0x00000000 , 0x0000003e 
+ 00008770  0x00000f63 rtn 
+ 00008771  0x00000f68 call  0x00002725 
+ 00008772  0x00000f69 branch  0x0000224b , 0x00000001 
+ 00008773  0x00000f6a fetch  0x00000002 , 0x0000001e 
+ 00008774  0x00000f6b add  0x0000003f , 0x00000017 , 0x00000005 
+ 00008775  0x00000f6c fetch  0x00000001 , 0x00000047 
+ 00008776  0x00000f6d istore  0x00000001 , 0x00000005 
+ 00008777  0x00000f6e arg  0x000022aa , 0x00000013 
+ 00008778  0x00000f6f branch  0x00002261 
+ 00008779  0x00000f72 fetch  0x00000001 , 0x00000047 
+ 00008780  0x00000f73 isolate1  0x00000003 , 0x0000003f 
+ 00008781  0x00000f74 branch  0x00002250 , 0x00000001 
+ 00008782  0x00000f75 force  0x00000001 , 0x0000003e 
+ 00008783  0x00000f76 rtn 
+ 00008784  0x00000f78 force  0x00000000 , 0x0000003e 
+ 00008785  0x00000f79 rtn 
+ 00008786  0x00000f7d arg  0x000022a7 , 0x00000013 
+ 00008787  0x00000f7e branch  0x00002261 
+ 00008788  0x00000f81 fetcht  0x00000002 , 0x0000001e 
+ 00008789  0x00000f82 arg  0x000022cf , 0x00000013 
+ 00008790  0x00000f83 branch  0x00002261 
+ 00008791  0x00000f88 fetcht  0x00000001 , 0x000041cf 
+ 00008792  0x00000f8a arg  0x00002275 , 0x00000013 
+ 00008793  0x00000f8b branch  0x00002261 
+ 00008794  0x00000f8e bpatch  0x0000002d , 0x00004005 
+ 00008795  0x00000f8f fetcht  0x00000006 , 0x000041d0 
+ 00008796  0x00000f91 arg  0x0000226e , 0x00000013 
+ 00008797  0x00000f92 branch  0x00002261 
+ 00008798  0x00000f95 arg  0x0000227b , 0x00000013 
+ 00008799  0x00000f96 branch  0x00002261 
+ 00008800  0x00000f99 arg  0x000022c6 , 0x00000013 
+ 00008801  0x00000f9b bpatch  0x0000002e , 0x00004005 
+ 00008802  0x00000f9c arg  0x00004040 , 0x00000011 
+ 00008803  0x00000f9d arg  0x00000001 , 0x00000039 
+ 00008804  0x00000f9f ifetch  0x00000001 , 0x00000011 
+ 00008805  0x00000fa0 copy  0x00000013 , 0x0000003d 
+ 00008806  0x00000fa2 increase  0x00000050 , 0x00000011 
+ 00008807  0x00000fa3 loop  0x00002264 
+ 00008808  0x00000fa4 force  0x00000001 , 0x0000003e 
+ 00008809  0x00000fa5 rtn 
+ 00008810  0x00000fa8 bbit1  0x00000000 , 0x00002266 
+ 00008811  0x00000fa9 bbit1  0x00000003 , 0x00002266 
+ 00008812  0x00000faa force  0x00000000 , 0x0000003e 
+ 00008813  0x00000fab rtn 
+ 00008814  0x00000fae bbit1  0x00000003 , 0x00002270 
+ 00008815  0x00000faf bbit0  0x00000000 , 0x00002266 
+ 00008816  0x00000fb1 add  0x00000011 , 0x00000010 , 0x00000006 
+ 00008817  0x00000fb2 ifetch  0x00000006 , 0x00000006 
+ 00008818  0x00000fb3 isub  0x00000002 , 0x0000003e 
+ 00008819  0x00000fb4 rtn  0x00000005 
+ 00008820  0x00000fb5 branch  0x00002266 
+ 00008821  0x00000fb8 bbit0  0x00000000 , 0x00002266 
+ 00008822  0x00000fb9 add  0x00000011 , 0x00000016 , 0x00000006 
+ 00008823  0x00000fba ifetch  0x00000001 , 0x00000006 
+ 00008824  0x00000fbb isub  0x00000002 , 0x0000003e 
+ 00008825  0x00000fbc rtn  0x00000005 
+ 00008826  0x00000fbd branch  0x00002266 
+ 00008827  0x00000fc0 bbit0  0x00000001 , 0x00002266 
+ 00008828  0x00000fc2 call  0x000022b3 
+ 00008829  0x00000fc3 call  0x00002297 
+ 00008830  0x00000fc4 isub  0x00000002 , 0x0000003f 
+ 00008831  0x00000fc5 increase  0x00000001 , 0x0000003f 
+ 00008832  0x00000fc6 branch  0x00002291 , 0x00000002 
+ 00008833  0x00000fc7 copy  0x00000006 , 0x00000012 
+ 00008834  0x00000fc8 store  0x00000009 , 0x00000aa2 
+ 00008835  0x00000fc9 fetch  0x00000001 , 0x000044c0 
+ 00008836  0x00000fca nbranch  0x00002289 , 0x00000034 
+ 00008837  0x00000fcb fetch  0x00000009 , 0x00000aa2 
+ 00008838  0x00000fcc copy  0x00000012 , 0x00000006 
+ 00008839  0x00000fcd increase  0x00000005 , 0x0000003f 
+ 00008840  0x00000fce branch  0x0000228c 
+ 00008841  0x00000fd0 fetch  0x00000009 , 0x00000aa2 
+ 00008842  0x00000fd1 copy  0x00000012 , 0x00000006 
+ 00008843  0x00000fd2 increase  0x00000014 , 0x0000003f 
+ 00008844  0x00000fd4 nbranch  0x00002266 , 0x00000002 
+ 00008845  0x00000fd6 copy  0x00000002 , 0x00000021 
+ 00008846  0x00000fd7 call  0x000022bf 
+ 00008847  0x00000fd8 force  0x00000000 , 0x0000003e 
+ 00008848  0x00000fd9 rtn 
+ 00008849  0x00000fdd iforce  0x00000012 
+ 00008850  0x00000fde add  0x00000011 , 0x00000002 , 0x00000006 
+ 00008851  0x00000fdf ifetch  0x00000002 , 0x00000006 
+ 00008852  0x00000fe0 branch  0x0000228d , 0x00000034 
+ 00008853  0x00000fe1 call  0x000022bf 
+ 00008854  0x00000fe2 branch  0x0000227c 
+ 00008855  0x00000fe5 rshift16  0x0000003f , 0x0000000b 
+ 00008856  0x00000fe6 rshift8  0x0000000b , 0x0000000b 
+ 00008857  0x00000fe7 branch  0x000022a1 , 0x00000005 
+ 00008858  0x00000fe8 compare  0x0000000f , 0x0000000b , 0x0000000f 
+ 00008859  0x00000fe9 nrtn  0x00000001 
+ 00008860  0x00000fea rshift16  0x00000002 , 0x0000000b 
+ 00008861  0x00000feb rshift8  0x0000000b , 0x0000000b 
+ 00008862  0x00000fec nrtn  0x00000005 
+ 00008863  0x00000fed set1  0x0000001c , 0x00000002 
+ 00008864  0x00000fee rtn 
+ 00008865  0x00000ff0 rshift16  0x00000002 , 0x0000000b 
+ 00008866  0x00000ff1 rshift8  0x0000000b , 0x0000000b 
+ 00008867  0x00000ff2 compare  0x0000000f , 0x0000000b , 0x0000000f 
+ 00008868  0x00000ff3 nrtn  0x00000001 
+ 00008869  0x00000ff4 set1  0x0000001c , 0x0000003f 
+ 00008870  0x00000ff5 rtn 
+ 00008871  0x00000ff8 bbit0  0x00000000 , 0x00002266 
+ 00008872  0x00000ff9 force  0x00000000 , 0x0000003e 
+ 00008873  0x00000ffa rtn 
+ 00008874  0x00000ffd bbit0  0x00000000 , 0x00002266 
+ 00008875  0x00000ffe add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008876  0x00000fff ifetch  0x00000001 , 0x00000006 
+ 00008877  0x00001000 bbit1  0x00000000 , 0x00002266 
+ 00008878  0x00001001 add  0x00000011 , 0x00000017 , 0x00000006 
+ 00008879  0x00001002 ifetch  0x00000001 , 0x00000006 
+ 00008880  0x00001003 bbit0  0x00000003 , 0x00002266 
+ 00008881  0x00001004 force  0x00000000 , 0x0000003e 
+ 00008882  0x00001005 rtn 
+ 00008883  0x00001008 add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008884  0x00001009 ifetcht  0x00000001 , 0x00000006 
+ 00008885  0x0000100a deposit  0x00000022 
+ 00008886  0x0000100b isolate1  0x00000001 , 0x00000002 
+ 00008887  0x0000100c add  0x00000011 , 0x00000004 , 0x00000006 
+ 00008888  0x0000100d ifetcht  0x00000004 , 0x00000006 
+ 00008889  0x0000100e rtn  0x00000001 
+ 00008890  0x0000100f add  0x00000011 , 0x00000008 , 0x00000006 
+ 00008891  0x00001010 ifetch  0x00000006 , 0x00000006 
+ 00008892  0x00001011 call  0x00002854 
+ 00008893  0x00001012 deposit  0x00000028 
+ 00008894  0x00001013 rtn 
+ 00008895  0x00001016 add  0x00000011 , 0x00000002 , 0x00000006 
+ 00008896  0x00001017 add  0x00000011 , 0x00000004 , 0x00000005 
+ 00008897  0x00001018 ifetch  0x00000002 , 0x00000006 
+ 00008898  0x00001019 iadd  0x00000002 , 0x0000000b 
+ 00008899  0x0000101a deposit  0x0000000b 
+ 00008900  0x0000101b istore  0x00000004 , 0x00000005 
+ 00008901  0x0000101c branch  0x00005449 
+ 00008902  0x00001020 bbit0  0x00000001 , 0x00002266 
+ 00008903  0x00001021 call  0x000022b3 
+ 00008904  0x00001022 iadd  0x0000001b , 0x0000003f 
+ 00008905  0x00001023 iadd  0x0000001b , 0x0000003f 
+ 00008906  0x00001024 iadd  0x00000007 , 0x0000003f 
+ 00008907  0x00001025 isub  0x00000002 , 0x0000003e 
+ 00008908  0x00001026 nbranch  0x00002266 , 0x00000002 
+ 00008909  0x00001027 force  0x00000000 , 0x0000003e 
+ 00008910  0x00001028 rtn 
+ 00008911  0x0000102b bbit0  0x00000000 , 0x00002266 
+ 00008912  0x0000102c deposit  0x00000002 
+ 00008913  0x0000102d isub  0x00000011 , 0x0000003e 
+ 00008914  0x0000102e branch  0x00002266 , 0x0000003e 
+ 00008915  0x0000102f add  0x00000011 , 0x00000001 , 0x00000006 
+ 00008916  0x00001030 ifetch  0x00000001 , 0x00000006 
+ 00008917  0x00001031 bbit1  0x00000000 , 0x00002266 
+ 00008918  0x00001032 ifetch  0x00000001 , 0x00000011 
+ 00008919  0x00001033 set0  0x00000007 , 0x0000003f 
+ 00008920  0x00001034 istore  0x00000001 , 0x00000011 
+ 00008921  0x00001035 branch  0x00002266 
+ 00008922  0x00001039 bpatch  0x0000002f , 0x00004005 
+ 00008923  0x0000103a call  0x00002a4f 
+ 00008924  0x0000103c add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008925  0x0000103d call  0x000028e2 
+ 00008926  0x0000103e force  0x00000003 , 0x00000024 
+ 00008927  0x0000103f call  0x000028d2 
+ 00008928  0x00001040 call  0x00002a51 
+ 00008929  0x00001041 call  0x00002a56 
+ 00008930  0x00001042 call  0x00002a64 
+ 00008931  0x00001043 branch  0x00002762 
+ 00008932  0x00001046 bpatch  0x00000030 , 0x00004006 
+ 00008933  0x00001047 call  0x00002a4d 
+ 00008934  0x00001049 add  0x00000022 , 0x00000001 , 0x00000021 
+ 00008935  0x0000104a call  0x000028e2 
+ 00008936  0x0000104b force  0x00000003 , 0x00000024 
+ 00008937  0x0000104c call  0x000028cc 
+ 00008938  0x0000104d call  0x0000242a 
+ 00008939  0x0000104e call  0x000029f1 
+ 00008940  0x0000104f call  0x00002a5b 
+ 00008941  0x00001050 call  0x000029eb 
+ 00008942  0x00001052 call  0x00002a0d 
+ 00008943  0x00001053 nrtn  0x00000018 
+ 00008944  0x00001054 call  0x000029bb 
+ 00008945  0x00001055 branch  0x0000251c 
+ 00008946  0x0000105a bpatch  0x00000031 , 0x00004006 
+ 00008947  0x0000105b fetch  0x00000001 , 0x00000181 
+ 00008948  0x0000105c iforce  0x00000004 
+ 00008949  0x0000105d force  0x00000001 , 0x00000001 
+ 00008950  0x0000105e call  0x000022da 
+ 00008951  0x0000105f branch  0x000022e4 
+ 00008952  0x0000106b fetch  0x00000001 , 0x00004093 
+ 00008953  0x0000106c rtnbit0  0x00000000 
+ 00008954  0x0000106d force  0x00000004 , 0x00000007 
+ 00008955  0x0000106e call  0x00007f16 
+ 00008956  0x0000106f nrtn  0x00000034 
+ 00008957  0x00001070 fetcht  0x00000002 , 0x000040ad 
+ 00008958  0x00001071 force  0x00000004 , 0x00000007 
+ 00008959  0x00001072 call  0x0000271c 
+ 00008960  0x00001073 rtn  0x00000028 
+ 00008961  0x00001074 call  0x00002308 
+ 00008962  0x00001075 force  0x00000004 , 0x00000007 
+ 00008963  0x00001076 fetch  0x00000002 , 0x000040af 
+ 00008964  0x00001077 nbranch  0x00007f08 , 0x00000018 
+ 00008965  0x00001078 random  0x0000003f 
+ 00008966  0x00001079 iand  0x00000035 , 0x0000003f 
+ 00008967  0x0000107a branch  0x00007f08 
+ 00008968  0x0000107e bpatch  0x00000032 , 0x00004006 
+ 00008969  0x0000107f jam  0x00000000 , 0x00000181 
+ 00008970  0x00001080 disable  0x00000030 
+ 00008971  0x00001081 disable  0x0000002e 
+ 00008972  0x00001082 call  0x000028a4 
+ 00008973  0x00001083 and  0x00000022 , 0x000001fc , 0x00000021 
+ 00008974  0x00001084 force  0x00000001 , 0x00000024 
+ 00008975  0x00001085 call  0x000028d8 
+ 00008976  0x00001086 call  0x000028cc 
+ 00008977  0x00001087 setflip  0x0000001d , 0x00000000 
+ 00008978  0x00001088 fetch  0x00000001 , 0x00000006 
+ 00008979  0x00001089 increase  0x00000001 , 0x0000003f 
+ 00008980  0x0000108a store  0x00000001 , 0x00000006 
+ 00008981  0x0000108b call  0x000028f2 
+ 00008982  0x0000108c call  0x000029eb 
+ 00008983  0x0000108d call  0x00002a14 
+ 00008984  0x0000108e nrtn  0x00000018 
+ 00008985  0x0000108f bpatch  0x00000033 , 0x00004006 
+ 00008986  0x00001090 force  0x00000000 , 0x0000001b 
+ 00008987  0x00001091 call  0x000028f9 
+ 00008988  0x00001092 fetch  0x00000001 , 0x00000007 
+ 00008989  0x00001093 increase  0x00000001 , 0x0000003f 
+ 00008990  0x00001094 store  0x00000001 , 0x00000007 
+ 00008991  0x00001095 call  0x000028d8 
+ 00008992  0x00001096 call  0x00002a4d 
+ 00008993  0x00001097 or_into  0x00000002 , 0x00000021 
+ 00008994  0x00001098 force  0x00000001 , 0x00000024 
+ 00008995  0x00001099 call  0x000028d2 
+ 00008996  0x0000109a call  0x000028f2 
+ 00008997  0x0000109b call  0x00002a51 
+ 00008998  0x0000109c call  0x00002a5f 
+ 00008999  0x0000109d deposit  0x00000022 
+ 00009000  0x0000109e store  0x00000004 , 0x00000161 
+ 00009001  0x0000109f call  0x00002a64 
+ 00009002  0x000010a0 force  0x00000002 , 0x00000001 
+ 00009003  0x000010a1 force  0x00000000 , 0x00000004 
+ 00009004  0x000010a2 call  0x00002a6b 
+ 00009005  0x000010a3 call  0x00002766 
+ 00009006  0x000010a4 call  0x00002332 
+ 00009007  0x000010a5 and_into  0x000001fd , 0x00000021 
+ 00009008  0x000010a6 increase  0x00000001 , 0x00000026 
+ 00009009  0x000010a7 rtn 
+ 00009010  0x000010aa bpatch  0x00000034 , 0x00004006 
+ 00009011  0x000010ab fetch  0x00000001 , 0x000040d1 
+ 00009012  0x000010ac rtn  0x00000034 
+ 00009013  0x000010ad arg  0x0000018e , 0x00000005 
+ 00009014  0x000010ae fetch  0x00000001 , 0x00004515 
+ 00009015  0x000010af copy  0x0000003f , 0x00000039 
+ 00009016  0x000010b0 increase  0x00000001 , 0x0000003f 
+ 00009017  0x000010b1 istore  0x00000001 , 0x00000005 
+ 00009018  0x000010b2 copy  0x00000005 , 0x00000002 
+ 00009019  0x000010b3 increase  0x00000001 , 0x0000003f 
+ 00009020  0x000010b4 store  0x00000002 , 0x000041dc 
+ 00009021  0x000010b5 copy  0x00000002 , 0x00000005 
+ 00009022  0x000010b6 setarg  0x00000009 
+ 00009023  0x000010b7 istore  0x00000001 , 0x00000005 
+ 00009024  0x000010b8 arg  0x00004516 , 0x00000006 
+ 00009025  0x000010b9 call  0x00007f01 
+ 00009026  0x000010bb arg  0x0000458d , 0x00000013 
+ 00009027  0x000010bc arg  0x00000004 , 0x00000039 
+ 00009028  0x000010bd call  0x00002354 
+ 00009029  0x000010be arg  0x00004577 , 0x00000013 
+ 00009030  0x000010bf arg  0x00000001 , 0x00000039 
+ 00009031  0x000010c0 call  0x00002354 
+ 00009032  0x000010c2 force  0x0000000a , 0x00000001 
+ 00009033  0x000010c3 jam  0x00000002 , 0x000041db 
+ 00009034  0x000010c4 setarg  0x0000018e 
+ 00009035  0x000010c5 store  0x00000002 , 0x0000016f 
+ 00009036  0x000010c6 call  0x00002a4d 
+ 00009037  0x000010c7 call  0x000028d2 
+ 00009038  0x000010c8 call  0x00002a51 
+ 00009039  0x000010c9 call  0x00002a5f 
+ 00009040  0x000010ca call  0x00002a64 
+ 00009041  0x000010cb call  0x00002a6b 
+ 00009042  0x000010cc call  0x00002766 
+ 00009043  0x000010cd rtn 
+ 00009044  0x000010d1 copy  0x00000005 , 0x00000002 
+ 00009045  0x000010d2 copy  0x00000013 , 0x00000006 
+ 00009046  0x000010d3 ifetch  0x00000001 , 0x00000006 
+ 00009047  0x000010d4 rtn  0x00000034 
+ 00009048  0x000010d6 lshift  0x0000003f , 0x0000003f 
+ 00009049  0x000010d7 loop  0x00002358 
+ 00009050  0x000010d8 copy  0x0000003f , 0x00000011 
+ 00009051  0x000010d9 increase  0x00000002 , 0x0000003f 
+ 00009052  0x000010da copy  0x0000003f , 0x00000007 
+ 00009053  0x000010db fetch  0x00000002 , 0x000041dc 
+ 00009054  0x000010dc iadd  0x00000007 , 0x0000003f 
+ 00009055  0x000010dd store  0x00000002 , 0x000041dc 
+ 00009056  0x000010de copy  0x00000002 , 0x00000005 
+ 00009057  0x000010df copy  0x00000011 , 0x0000003f 
+ 00009058  0x000010e0 increase  0x00000001 , 0x0000003f 
+ 00009059  0x000010e1 istore  0x00000001 , 0x00000005 
+ 00009060  0x000010e2 copy  0x00000013 , 0x00000006 
+ 00009061  0x000010e3 ifetch  0x00000001 , 0x00000006 
+ 00009062  0x000010e4 ifetch  0x00000001 , 0x00000006 
+ 00009063  0x000010e5 istore  0x00000001 , 0x00000005 
+ 00009064  0x000010e6 copy  0x00000011 , 0x00000039 
+ 00009065  0x000010e7 branch  0x00007f01 
+ 00009066  0x000010ee fetch  0x00000001 , 0x00004093 
+ 00009067  0x000010ef rtnbit0  0x00000001 
+ 00009068  0x000010f0 force  0x00000005 , 0x00000007 
+ 00009069  0x000010f1 call  0x00007f16 
+ 00009070  0x000010f2 nrtn  0x00000034 
+ 00009071  0x000010f3 fetcht  0x00000002 , 0x000040b1 
+ 00009072  0x000010f4 force  0x00000028 , 0x00000007 
+ 00009073  0x000010f5 call  0x0000271c 
+ 00009074  0x000010f6 rtn  0x00000028 
+ 00009075  0x000010f7 force  0x00000000 , 0x00000004 
+ 00009076  0x000010f8 jam  0x00000008 , 0x00000010 
+ 00009077  0x000010f9 set0  0x0000000b , 0x00000000 
+ 00009078  0x000010fa call  0x0000237a 
+ 00009079  0x000010fb force  0x00000005 , 0x00000007 
+ 00009080  0x000010fc fetch  0x00000002 , 0x000040b3 
+ 00009081  0x000010fd branch  0x00007f08 
+ 00009082  0x00001101 bpatch  0x00000035 , 0x00004006 
+ 00009083  0x00001102 disable  0x00000030 
+ 00009084  0x00001103 call  0x000028a4 
+ 00009085  0x00001104 fetch  0x00000001 , 0x00000008 
+ 00009086  0x00001105 increase  0x00000001 , 0x0000003f 
+ 00009087  0x00001106 store  0x00000001 , 0x00000008 
+ 00009088  0x00001107 force  0x00000000 , 0x00000026 
+ 00009089  0x00001108 call  0x000028e2 
+ 00009090  0x00001109 add  0x00000022 , 0x00000001 , 0x00000021 
+ 00009091  0x0000110a force  0x00000002 , 0x00000024 
+ 00009092  0x0000110b bpatch  0x00000036 , 0x00004006 
+ 00009093  0x0000110c call  0x000028cc 
+ 00009094  0x0000110d call  0x000029eb 
+ 00009095  0x0000110e call  0x00002a14 
+ 00009096  0x0000110f nrtn  0x00000018 
+ 00009097  0x00001110 call  0x000028f9 
+ 00009098  0x00001111 fetch  0x00000001 , 0x00000009 
+ 00009099  0x00001112 increase  0x00000001 , 0x0000003f 
+ 00009100  0x00001113 store  0x00000001 , 0x00000009 
+ 00009101  0x00001114 force  0x00000000 , 0x0000001b 
+ 00009102  0x00001115 call  0x00002a4d 
+ 00009103  0x00001116 or_into  0x00000002 , 0x00000021 
+ 00009104  0x00001117 force  0x00000001 , 0x00000024 
+ 00009105  0x00001118 call  0x000028d2 
+ 00009106  0x00001119 call  0x00002a51 
+ 00009107  0x0000111a call  0x00002a5f 
+ 00009108  0x0000111b call  0x00002a64 
+ 00009109  0x0000111c call  0x0000264d 
+ 00009110  0x0000111d force  0x00000000 , 0x00000004 
+ 00009111  0x0000111e arg  0x00000600 , 0x0000000b 
+ 00009112  0x0000111f until  0x00000029 , 0x00000026 
+ 00009113  0x00001120 or_into  0x00000003 , 0x00000028 
+ 00009114  0x00001121 and_into  0x000001fd , 0x00000021 
+ 00009115  0x00001123 bpatch  0x00000037 , 0x00004006 
+ 00009116  0x00001124 increase  0x00000001 , 0x00000026 
+ 00009117  0x00001125 call  0x000028cc 
+ 00009118  0x00001126 call  0x000029eb 
+ 00009119  0x00001127 call  0x00002a07 
+ 00009120  0x00001128 nbranch  0x000023a4 , 0x00000018 
+ 00009121  0x00001129 call  0x00002a6b 
+ 00009122  0x0000112a call  0x0000251e 
+ 00009123  0x0000112b bmark1  0x0000000b , 0x000023ab 
+ 00009124  0x0000112d bpatch  0x00000038 , 0x00004007 
+ 00009125  0x0000112e fetch  0x00000001 , 0x00000010 
+ 00009126  0x0000112f rtn  0x00000034 
+ 00009127  0x00001130 increase  0xffffffff , 0x0000003f 
+ 00009128  0x00001131 store  0x00000001 , 0x00000010 
+ 00009129  0x00001132 call  0x00002a4f 
+ 00009130  0x00001133 branch  0x0000239b 
+ 00009131  0x00001137 bpatch  0x00000039 , 0x00004007 
+ 00009132  0x00001138 set0  0x00000001 , 0x00000028 
+ 00009133  0x00001139 set1  0x00000000 , 0x00000028 
+ 00009134  0x0000113a fetch  0x00000001 , 0x0000000a 
+ 00009135  0x0000113b increase  0x00000001 , 0x0000003f 
+ 00009136  0x0000113c store  0x00000001 , 0x0000000a 
+ 00009137  0x0000113d call  0x00002a4d 
+ 00009138  0x0000113e or_into  0x00000002 , 0x00000021 
+ 00009139  0x0000113f call  0x000028d2 
+ 00009140  0x00001140 call  0x00002a51 
+ 00009141  0x00001141 call  0x00002a5f 
+ 00009142  0x00001142 call  0x00002a64 
+ 00009143  0x00001143 call  0x0000264d 
+ 00009144  0x00001145 compare  0x00000003 , 0x00000028 , 0x00000003 
+ 00009145  0x00001146 branch  0x000023bc , 0x00000001 
+ 00009146  0x00001147 until  0x0000003e , 0x00000017 
+ 00009147  0x00001148 branch  0x000023b8 
+ 00009148  0x0000114a fetch  0x00000004 , 0x00000165 
+ 00009149  0x0000114b or_into  0x00000003 , 0x0000003f 
+ 00009150  0x0000114c icopy  0x00000028 
+ 00009151  0x0000114f bpatch  0x0000003a , 0x00004007 
+ 00009152  0x00001150 fetch  0x00000006 , 0x00000178 
+ 00009153  0x00001151 store  0x00000006 , 0x00000040 
+ 00009154  0x00001152 call  0x00002435 
+ 00009155  0x00001154 call  0x0000247c 
+ 00009156  0x00001155 branch  0x000023c8 , 0x0000002d 
+ 00009157  0x00001156 call  0x00002455 
+ 00009158  0x00001157 nbranch  0x000023c3 , 0x00000034 
+ 00009159  0x00001158 rtn 
+ 00009160  0x0000115c bpatch  0x0000003b , 0x00004007 
+ 00009161  0x0000115d call  0x00002440 
+ 00009162  0x0000115e call  0x0000223b 
+ 00009163  0x0000115f nrtn  0x00000005 
+ 00009164  0x00001160 jam  0x00000000 , 0x00000031 
+ 00009165  0x00001161 call  0x00002841 
+ 00009166  0x00001162 branch  0x00002223 
+ 00009167  0x00001168 bpatch  0x0000003c , 0x00004007 
+ 00009168  0x00001169 call  0x00002850 
+ 00009169  0x0000116a call  0x000023f3 
+ 00009170  0x0000116b rtn  0x00000028 
+ 00009171  0x0000116d bpatch  0x0000003d , 0x00004007 
+ 00009172  0x0000116e call  0x00002c69 
+ 00009173  0x0000116f call  0x00006caa 
+ 00009174  0x00001170 call  0x00002514 
+ 00009175  0x00001171 nbranch  0x000023e2 , 0x0000002d 
+ 00009176  0x00001172 call  0x00002a88 
+ 00009177  0x00001173 call  0x00006cc2 
+ 00009178  0x00001174 call  0x00002489 
+ 00009179  0x00001175 call  0x00002757 
+ 00009180  0x00001176 call  0x00002728 
+ 00009181  0x00001177 call  0x00005d08 
+ 00009182  0x00001178 fetch  0x00000001 , 0x0000000b 
+ 00009183  0x00001179 increase  0x00000001 , 0x0000003f 
+ 00009184  0x0000117a store  0x00000001 , 0x0000000b 
+ 00009185  0x0000117b call  0x00002841 
+ 00009186  0x0000117d bpatch  0x0000003e , 0x00004007 
+ 00009187  0x0000117e call  0x00002bb1 
+ 00009188  0x0000117f call  0x00002a7f 
+ 00009189  0x00001180 branch  0x000023eb , 0x00000002 
+ 00009190  0x00001181 call  0x000021a7 
+ 00009191  0x00001182 nbranch  0x000023eb , 0x00000028 
+ 00009192  0x00001183 call  0x000026f3 
+ 00009193  0x00001184 nbranch  0x000023d3 , 0x00000034 
+ 00009194  0x00001185 rtn 
+ 00009195  0x00001188 bpatch  0x0000003f , 0x00004007 
+ 00009196  0x00001189 jam  0x00000000 , 0x00000151 
+ 00009197  0x0000118a jam  0x00000000 , 0x0000017f 
+ 00009198  0x0000118b call  0x0000245d 
+ 00009199  0x0000118c set0  0x00000011 , 0x00000000 
+ 00009200  0x0000118d call  0x00007fb0 
+ 00009201  0x0000118e fetch  0x00000001 , 0x00000030 
+ 00009202  0x0000118f rtn 
+ 00009203  0x00001193 bpatch  0x00000040 , 0x00004008 
+ 00009204  0x00001194 call  0x000021c9 
+ 00009205  0x00001195 nrtn  0x00000028 
+ 00009206  0x00001196 copy  0x00000004 , 0x00000002 
+ 00009207  0x00001197 call  0x00002a6f 
+ 00009208  0x00001198 store  0x00000001 , 0x00000181 
+ 00009209  0x00001199 copy  0x00000002 , 0x00000004 
+ 00009210  0x0000119a jam  0x00000020 , 0x00000011 
+ 00009211  0x0000119c bpatch  0x00000041 , 0x00004008 
+ 00009212  0x0000119d call  0x00002a4f 
+ 00009213  0x0000119e force  0x00000002 , 0x00000001 
+ 00009214  0x0000119f call  0x0000274f 
+ 00009215  0x000011a0 deposit  0x00000022 
+ 00009216  0x000011a1 store  0x00000004 , 0x00000161 
+ 00009217  0x000011a2 call  0x00002762 
+ 00009218  0x000011a3 call  0x00002a4d 
+ 00009219  0x000011a4 enable  0x0000002f 
+ 00009220  0x000011a5 call  0x000024f6 
+ 00009221  0x000011a6 branch  0x0000240d , 0x00000018 
+ 00009222  0x000011a7 call  0x000028f9 
+ 00009223  0x000011a8 call  0x00002455 
+ 00009224  0x000011a9 nbranch  0x000023fb , 0x00000034 
+ 00009225  0x000011aa rtnmark0  0x00000004 
+ 00009226  0x000011ab jam  0x00000034 , 0x0000007c 
+ 00009227  0x000011ac set1  0x00000003 , 0x00000000 
+ 00009228  0x000011ad rtn 
+ 00009229  0x000011af enable  0x00000030 
+ 00009230  0x000011b0 call  0x00002435 
+ 00009231  0x000011b1 call  0x000028a4 
+ 00009232  0x000011b3 bpatch  0x00000042 , 0x00004008 
+ 00009233  0x000011b4 call  0x000022f2 
+ 00009234  0x000011b5 branch  0x00002419 , 0x00000018 
+ 00009235  0x000011b6 call  0x00002455 
+ 00009236  0x000011b7 nbranch  0x00002410 , 0x00000034 
+ 00009237  0x000011b8 disable  0x00000030 
+ 00009238  0x000011b9 deposit  0x00000028 
+ 00009239  0x000011ba store  0x00000004 , 0x000040ca 
+ 00009240  0x000011bb rtn 
+ 00009241  0x000011bd enable  0x00000029 
+ 00009242  0x000011be bmark0  0x00000004 , 0x0000241f 
+ 00009243  0x000011bf set0  0x00000004 , 0x00000000 
+ 00009244  0x000011c0 jam  0x00000003 , 0x0000007c 
+ 00009245  0x000011c1 jam  0x00000033 , 0x0000007d 
+ 00009246  0x000011c2 call  0x000062f8 
+ 00009247  0x000011c4 deposit  0x00000004 
+ 00009248  0x000011c5 store  0x00000001 , 0x00000077 
+ 00009249  0x000011c6 force  0x00000000 , 0x0000003f 
+ 00009250  0x000011c7 store  0x00000006 , 0x00000038 
+ 00009251  0x000011c8 fetch  0x00000001 , 0x00000031 
+ 00009252  0x000011c9 set1  0x00000001 , 0x0000003f 
+ 00009253  0x000011ca store  0x00000001 , 0x00000031 
+ 00009254  0x000011cb call  0x00002a88 
+ 00009255  0x000011cc disable  0x00000029 
+ 00009256  0x000011cd enable  0x00000028 
+ 00009257  0x000011ce rtn 
+ 00009258  0x000011d3 bpatch  0x00000043 , 0x00004008 
+ 00009259  0x000011d4 disable  0x0000002d 
+ 00009260  0x000011d5 set0  0x00000005 , 0x00000000 
+ 00009261  0x000011d6 set0  0x0000000a , 0x00000000 
+ 00009262  0x000011d7 set0  0x00000010 , 0x00000000 
+ 00009263  0x000011d8 set0  0x0000000f , 0x00000000 
+ 00009264  0x000011d9 fetch  0x00000001 , 0x00000047 
+ 00009265  0x000011da set0  0x00000005 , 0x0000003f 
+ 00009266  0x000011db set1  0x00000004 , 0x0000003f 
+ 00009267  0x000011dc store  0x00000001 , 0x00000047 
+ 00009268  0x000011dd rtn 
+ 00009269  0x000011e0 bpatch  0x00000044 , 0x00004008 
+ 00009270  0x000011e1 jam  0x00000020 , 0x00000011 
+ 00009271  0x000011e2 jam  0x00000050 , 0x00000047 
+ 00009272  0x000011e3 fetch  0x00000002 , 0x000040bf 
+ 00009273  0x000011e4 store  0x00000002 , 0x0000003e 
+ 00009274  0x000011e5 deposit  0x00000022 
+ 00009275  0x000011e6 store  0x00000004 , 0x000040ca 
+ 00009276  0x000011e7 rtn  0x00000030 
+ 00009277  0x000011e8 deposit  0x00000028 
+ 00009278  0x000011e9 store  0x00000004 , 0x000040ca 
+ 00009279  0x000011ea rtn 
+ 00009280  0x000011ed bpatch  0x00000045 , 0x00004008 
+ 00009281  0x000011ee call  0x00005d04 
+ 00009282  0x000011ef call  0x00002459 
+ 00009283  0x000011f0 store  0x00000001 , 0x00000046 
+ 00009284  0x000011f1 setarg  0x00000000 
+ 00009285  0x000011f2 store  0x00000002 , 0x0000025d 
+ 00009286  0x000011f3 setarg  0x00001c80 
+ 00009287  0x000011f4 store  0x00000002 , 0x00000051 
+ 00009288  0x000011f5 fetch  0x00000001 , 0x00000030 
+ 00009289  0x000011f6 set1  0x00000000 , 0x0000003f 
+ 00009290  0x000011f7 store  0x00000001 , 0x00000030 
+ 00009291  0x000011f8 jam  0x00000000 , 0x0000004b 
+ 00009292  0x000011f9 jam  0x00000000 , 0x0000004c 
+ 00009293  0x000011fa jam  0x00000000 , 0x000000a0 
+ 00009294  0x000011fb branch  0x00002a88 
+ 00009295  0x000011ff bpatch  0x00000046 , 0x00004008 
+ 00009296  0x00001200 force  0x00000000 , 0x0000003f 
+ 00009297  0x00001201 store  0x00000008 , 0x000041be 
+ 00009298  0x00001202 istore  0x00000008 , 0x00000005 
+ 00009299  0x00001203 call  0x000021c5 
+ 00009300  0x00001204 branch  0x00002254 
+ 00009301  0x00001207 fetch  0x00000001 , 0x00000011 
+ 00009302  0x00001208 increase  0xffffffff , 0x0000003f 
+ 00009303  0x00001209 store  0x00000001 , 0x00000011 
+ 00009304  0x0000120a rtn 
+ 00009305  0x0000120d fetch  0x00000001 , 0x000040cf 
+ 00009306  0x0000120e increase  0x00000001 , 0x0000003f 
+ 00009307  0x0000120f store  0x00000001 , 0x000040cf 
+ 00009308  0x00001210 rtn 
+ 00009309  0x00001214 bpatch  0x00000047 , 0x00004008 
+ 00009310  0x00001215 fetch  0x00000001 , 0x000041ce 
+ 00009311  0x00001216 beq  0x00000003 , 0x00002462 
+ 00009312  0x00001217 fetch  0x00000001 , 0x00000048 
+ 00009313  0x00001218 bne  0x00000001 , 0x00002466 
+ 00009314  0x0000121a call  0x00004d06 
+ 00009315  0x0000121b nbranch  0x00002466 , 0x00000005 
+ 00009316  0x0000121c call  0x000021a4 
+ 00009317  0x0000121d jam  0x00000000 , 0x000041ce 
+ 00009318  0x0000121f bpatch  0x00000048 , 0x00004009 
+ 00009319  0x00001220 call  0x000033af 
+ 00009320  0x00001221 call  0x000026e9 
+ 00009321  0x00001222 jam  0x00000002 , 0x00000a99 
+ 00009322  0x00001223 call  0x00007d86 
+ 00009323  0x00001224 call  0x00005cf7 
+ 00009324  0x00001225 call  0x00004d6b 
+ 00009325  0x00001226 call  0x0000757d 
+ 00009326  0x00001227 fetch  0x00000001 , 0x00000030 
+ 00009327  0x00001228 set0  0x00000000 
+ 00009328  0x00001229 store  0x00000001 , 0x00000030 
+ 00009329  0x0000122a jam  0x00000000 , 0x00004681 
+ 00009330  0x0000122c fetch  0x00000001 , 0x0000004c 
+ 00009331  0x0000122d compare  0x00000000 , 0x0000003f , 0x000000c0 
+ 00009332  0x0000122e branch  0x00002476 , 0x00000001 
+ 00009333  0x0000122f set0  0x00000001 , 0x00000000 
+ 00009334  0x00001231 fetch  0x00000001 , 0x00000047 
+ 00009335  0x00001232 bbit0  0x00000003 , 0x00002478 
+ 00009336  0x00001234 fetch  0x00000001 , 0x0000004b 
+ 00009337  0x00001235 rtnbit0  0x00000006 
+ 00009338  0x00001236 set0  0x00000002 , 0x00000000 
+ 00009339  0x00001237 rtn 
+ 00009340  0x0000123a bpatch  0x00000049 , 0x00004009 
+ 00009341  0x0000123b fetch  0x00000001 , 0x00000174 
+ 00009342  0x0000123c rtn  0x00000034 
+ 00009343  0x0000123d icopy  0x00000004 
+ 00009344  0x0000123e call  0x00002514 
+ 00009345  0x0000123f nrtn  0x0000002d 
+ 00009346  0x00001240 force  0x00000000 , 0x00000001 
+ 00009347  0x00001241 call  0x00002757 
+ 00009348  0x00001242 deposit  0x00000004 
+ 00009349  0x00001243 store  0x00000001 , 0x00000077 
+ 00009350  0x00001244 force  0x00000000 , 0x0000003f 
+ 00009351  0x00001245 store  0x00000001 , 0x00000174 
+ 00009352  0x00001246 rtn 
+ 00009353  0x0000124d bpatch  0x0000004a , 0x00004009 
+ 00009354  0x0000124e fetch  0x00000001 , 0x00000030 
+ 00009355  0x0000124f bbit0  0x00000002 , 0x00002496 
+ 00009356  0x00001250 force  0x00000007 , 0x00000001 
+ 00009357  0x00001251 bmark0  0x00000007 , 0x00002495 
+ 00009358  0x00001252 call  0x00002725 
+ 00009359  0x00001253 nbranch  0x00002496 , 0x00000001 
+ 00009360  0x00001254 branch  0x00002496 , 0x0000002e 
+ 00009361  0x00001255 call  0x000024c1 
+ 00009362  0x00001256 setarg  0x00000002 
+ 00009363  0x00001257 store  0x00000002 , 0x000040c8 
+ 00009364  0x00001258 rtn 
+ 00009365  0x0000125a nrtn  0x0000002e 
+ 00009366  0x0000125c bpatch  0x0000004b , 0x00004009 
+ 00009367  0x0000125d call  0x00002243 
+ 00009368  0x0000125e nbranch  0x000024a7 , 0x00000005 
+ 00009369  0x0000125f fetch  0x00000001 , 0x00000047 
+ 00009370  0x00001260 bbit0  0x00000003 , 0x000024b0 
+ 00009371  0x00001262 bmark1  0x00000005 , 0x000024b4 
+ 00009372  0x00001263 fetch  0x00000001 , 0x0000017f 
+ 00009373  0x00001264 bbit1  0x00000006 , 0x000024ba 
+ 00009374  0x00001265 fetch  0x00000002 , 0x000040c8 
+ 00009375  0x00001266 increase  0xffffffff , 0x0000003f 
+ 00009376  0x00001267 store  0x00000002 , 0x000040c8 
+ 00009377  0x00001268 branch  0x000024a5 , 0x00000034 
+ 00009378  0x00001269 fetch  0x00000001 , 0x000040c5 
+ 00009379  0x0000126a iforce  0x00000001 
+ 00009380  0x0000126b rtn 
+ 00009381  0x0000126e bpatch  0x0000004c , 0x00004009 
+ 00009382  0x0000126f call  0x00002687 
+ 00009383  0x00001271 call  0x00002725 
+ 00009384  0x00001272 branch  0x000024b0 , 0x00000001 
+ 00009385  0x00001273 call  0x0000600a 
+ 00009386  0x00001274 branch  0x000024be , 0x00000028 
+ 00009387  0x00001275 fetch  0x00000001 , 0x0000004b 
+ 00009388  0x00001276 bbit1  0x00000006 , 0x000024c0 
+ 00009389  0x00001277 bmark1  0x00000005 , 0x000024b4 
+ 00009390  0x00001278 fetch  0x00000001 , 0x0000017f 
+ 00009391  0x00001279 bbit1  0x00000006 , 0x000024ba 
+ 00009392  0x0000127b force  0x00000001 , 0x00000001 
+ 00009393  0x0000127c rtn  0x00000029 
+ 00009394  0x0000127d force  0x00000000 , 0x00000001 
+ 00009395  0x0000127e rtn 
+ 00009396  0x00001280 bpatch  0x0000004d , 0x00004009 
+ 00009397  0x00001281 fetch  0x00000001 , 0x00000019 
+ 00009398  0x00001282 iforce  0x00000001 
+ 00009399  0x00001283 rtnne  0x00000001 
+ 00009400  0x00001284 force  0x00000000 , 0x00000001 
+ 00009401  0x00001285 rtn 
+ 00009402  0x00001287 fetch  0x00000001 , 0x00000158 
+ 00009403  0x00001288 and  0x0000003f , 0x0000000f , 0x00000001 
+ 00009404  0x00001289 set1  0x00000005 , 0x00000000 
+ 00009405  0x0000128a rtn 
+ 00009406  0x0000128c force  0x00000013 , 0x00000001 
+ 00009407  0x0000128d branch  0x000024c1 
+ 00009408  0x0000128f call  0x000024ca 
+ 00009409  0x00001292 bpatch  0x0000004e , 0x00004009 
+ 00009410  0x00001293 fetcht  0x00000001 , 0x00000047 
+ 00009411  0x00001294 set1  0x00000003 , 0x00000002 
+ 00009412  0x00001295 storet  0x00000001 , 0x00000047 
+ 00009413  0x00001296 deposit  0x00000001 
+ 00009414  0x00001297 store  0x00000001 , 0x000040c5 
+ 00009415  0x00001298 setarg  0x0000ffff 
+ 00009416  0x00001299 store  0x00000002 , 0x000040c8 
+ 00009417  0x0000129a rtn 
+ 00009418  0x0000129d bpatch  0x0000004f , 0x00004009 
+ 00009419  0x0000129e fetch  0x00000001 , 0x0000004c 
+ 00009420  0x0000129f isolate1  0x00000005 , 0x0000003f 
+ 00009421  0x000012a0 fetch  0x00000002 , 0x000041dc 
+ 00009422  0x000012a1 branch  0x000024e0 , 0x00000001 
+ 00009423  0x000012a2 force  0x00000003 , 0x00000001 
+ 00009424  0x000012a3 sub  0x0000003f , 0x00000011 , 0x0000003e 
+ 00009425  0x000012a4 rtn  0x00000002 
+ 00009426  0x000012a5 force  0x00000004 , 0x00000001 
+ 00009427  0x000012a6 sub  0x0000003f , 0x0000001b , 0x0000003e 
+ 00009428  0x000012a7 rtn  0x00000002 
+ 00009429  0x000012a8 force  0x0000000a , 0x00000001 
+ 00009430  0x000012a9 sub  0x0000003f , 0x00000079 , 0x0000003e 
+ 00009431  0x000012aa rtn  0x00000002 
+ 00009432  0x000012ab force  0x0000000b , 0x00000001 
+ 00009433  0x000012ac sub  0x0000003f , 0x000000b7 , 0x0000003e 
+ 00009434  0x000012ad rtn  0x00000002 
+ 00009435  0x000012ae force  0x0000000e , 0x00000001 
+ 00009436  0x000012af sub  0x0000003f , 0x000000e0 , 0x0000003e 
+ 00009437  0x000012b0 rtn  0x00000002 
+ 00009438  0x000012b1 force  0x0000000f , 0x00000001 
+ 00009439  0x000012b2 rtn 
+ 00009440  0x000012b4 force  0x00000003 , 0x00000001 
+ 00009441  0x000012b5 sub  0x0000003f , 0x00000011 , 0x0000003e 
+ 00009442  0x000012b6 rtn  0x00000002 
+ 00009443  0x000012b7 force  0x00000004 , 0x00000001 
+ 00009444  0x000012b8 sub  0x0000003f , 0x00000036 , 0x0000003e 
+ 00009445  0x000012b9 rtn  0x00000002 
+ 00009446  0x000012ba force  0x0000000a , 0x00000001 
+ 00009447  0x000012bb arg  0x0000016f , 0x00000002 
+ 00009448  0x000012bc isub  0x00000002 , 0x0000003e 
+ 00009449  0x000012bd nrtn  0x00000002 
+ 00009450  0x000012be force  0x0000000e , 0x00000001 
+ 00009451  0x000012bf arg  0x000002a7 , 0x00000002 
+ 00009452  0x000012c0 isub  0x00000002 , 0x0000003e 
+ 00009453  0x000012c1 nrtn  0x00000002 
+ 00009454  0x000012c2 force  0x0000000f , 0x00000001 
+ 00009455  0x000012c3 rtn 
+ 00009456  0x000012cd fetch  0x00000001 , 0x00000030 
+ 00009457  0x000012ce bbit0  0x00000001 , 0x000024f5 
+ 00009458  0x000012cf fetch  0x00000002 , 0x00000032 
+ 00009459  0x000012d0 branch  0x000024f5 , 0x00000034 
+ 00009460  0x000012d1 nbranch  0x000024f7 , 0x0000002e 
+ 00009461  0x000012d3 call  0x00002a4f 
+ 00009462  0x000012d5 add  0x00000028 , 0x00000001 , 0x00000021 
+ 00009463  0x000012d7 enable  0x00000010 
+ 00009464  0x000012d8 fetch  0x00000002 , 0x0000003e 
+ 00009465  0x000012d9 rshift  0x0000003f , 0x0000003f 
+ 00009466  0x000012da arg  0x00000500 , 0x00000002 
+ 00009467  0x000012db iadd  0x00000002 , 0x0000003f 
+ 00009468  0x000012dc call  0x00002a24 
+ 00009469  0x000012dd call  0x000028ea 
+ 00009470  0x000012de force  0x00000003 , 0x00000024 
+ 00009471  0x000012df call  0x000028cc 
+ 00009472  0x000012e0 call  0x0000242a 
+ 00009473  0x000012e1 call  0x000029f1 
+ 00009474  0x000012e2 bpatch  0x00000050 , 0x0000400a 
+ 00009475  0x000012e3 fetch  0x00000002 , 0x0000003e 
+ 00009476  0x000012e4 rshift  0x0000003f , 0x0000003f 
+ 00009477  0x000012e5 call  0x00002a24 
+ 00009478  0x000012e6 call  0x000029eb 
+ 00009479  0x000012e7 enable  0x0000000d 
+ 00009480  0x000012e8 fetch  0x00000002 , 0x0000003e 
+ 00009481  0x000012e9 arg  0x000003bb , 0x00000002 
+ 00009482  0x000012ea iadd  0x00000002 , 0x0000001b 
+ 00009483  0x000012eb correlate  0x0000003e , 0x00000003 
+ 00009484  0x000012ec copy  0x0000001a , 0x00000002 
+ 00009485  0x000012ed storet  0x00000006 , 0x0000009a 
+ 00009486  0x000012ee disable  0x0000000d 
+ 00009487  0x000012ef nrtn  0x00000018 
+ 00009488  0x000012f0 arg  0x000003bb , 0x00000029 
+ 00009489  0x000012f1 copy  0x00000021 , 0x00000028 
+ 00009490  0x000012f2 branch  0x00002b05 , 0x0000002b 
+ 00009491  0x000012f3 rtn 
+ 00009492  0x000012f7 bpatch  0x00000051 , 0x0000400a 
+ 00009493  0x000012f8 call  0x000024f0 
+ 00009494  0x000012f9 nbranch  0x000028f9 , 0x00000018 
+ 00009495  0x000012fa call  0x000029bb 
+ 00009496  0x000012fb bmark0  0x00000011 , 0x0000251c 
+ 00009497  0x000012fc fetch  0x00000002 , 0x000000f6 
+ 00009498  0x000012fd increase  0x00000001 , 0x0000003f 
+ 00009499  0x000012fe store  0x00000002 , 0x000000f6 
+ 00009500  0x00001300 rshift  0x00000021 , 0x00000002 
+ 00009501  0x00001301 or  0x00000002 , 0x00000040 , 0x0000000e 
+ 00009502  0x00001303 bpatch  0x00000052 , 0x0000400a 
+ 00009503  0x00001304 enable  0x00000007 
+ 00009504  0x00001305 enable  0x0000000a 
+ 00009505  0x00001306 enable  0x0000000b 
+ 00009506  0x00001307 parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009507  0x00001308 rshift8  0x0000000c , 0x0000003f 
+ 00009508  0x00001309 store  0x00000001 , 0x0000015d 
+ 00009509  0x0000130a parse  0x00000003 , 0x00000000 , 0x00000004 
+ 00009510  0x0000130b inject  0x00000000 , 0x00000007 
+ 00009511  0x0000130c copy  0x0000000c , 0x0000003f 
+ 00009512  0x0000130d store  0x00000001 , 0x00000019 
+ 00009513  0x0000130e parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009514  0x0000130f rshift8  0x0000000c , 0x0000003f 
+ 00009515  0x00001310 store  0x00000001 , 0x0000015e 
+ 00009516  0x00001311 fetch  0x00000001 , 0x00000019 
+ 00009517  0x00001312 sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00009518  0x00001313 branch  0x00002533 , 0x00000002 
+ 00009519  0x00001314 beq  0x00000007 , 0x00002533 
+ 00009520  0x00001315 fetch  0x00000001 , 0x0000004c 
+ 00009521  0x00001316 isolate1  0x00000005 , 0x0000003f 
+ 00009522  0x00001317 setflag  0x00000001 , 0x00000001 , 0x00000015 
+ 00009523  0x00001319 bpatch  0x00000053 , 0x0000400a 
+ 00009524  0x0000131a parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00009525  0x0000131b disable  0x0000000b 
+ 00009526  0x0000131c disable  0x0000000a 
+ 00009527  0x0000131d branch  0x00002631 , 0x00000006 
+ 00009528  0x0000131e bmark0  0x00000011 , 0x0000253c 
+ 00009529  0x0000131f fetch  0x00000002 , 0x000000f8 
+ 00009530  0x00001320 increase  0x00000001 , 0x0000003f 
+ 00009531  0x00001321 store  0x00000002 , 0x000000f8 
+ 00009532  0x00001323 bpatch  0x00000054 , 0x0000400a 
+ 00009533  0x00001324 fetch  0x00000001 , 0x0000015d 
+ 00009534  0x00001325 compare  0x00000000 , 0x0000003f , 0x00000007 
+ 00009535  0x00001326 setflag  0x00000001 , 0x0000000a , 0x00000000 
+ 00009536  0x00001327 branch  0x0000254c , 0x00000001 
+ 00009537  0x00001328 icompare  0x00000007 , 0x00000004 
+ 00009538  0x00001329 branch  0x0000254b , 0x00000001 
+ 00009539  0x0000132a bmark0  0x00000007 , 0x0000264d 
+ 00009540  0x0000132b fetcht  0x00000001 , 0x000000b0 
+ 00009541  0x0000132c icompare  0x00000007 , 0x00000002 
+ 00009542  0x0000132d nbranch  0x0000264d , 0x00000001 
+ 00009543  0x0000132e fetch  0x00000001 , 0x00000047 
+ 00009544  0x0000132f set0  0x00000005 , 0x0000003f 
+ 00009545  0x00001330 set1  0x00000004 , 0x0000003f 
+ 00009546  0x00001331 store  0x00000001 , 0x00000047 
+ 00009547  0x00001333 enable  0x0000002d 
+ 00009548  0x00001335 bpatch  0x00000055 , 0x0000400a 
+ 00009549  0x00001336 fetch  0x00000001 , 0x00000019 
+ 00009550  0x00001337 icopy  0x00000001 
+ 00009551  0x00001338 bmark1  0x0000000a , 0x0000255b 
+ 00009552  0x00001339 fetcht  0x00000001 , 0x0000015e 
+ 00009553  0x0000133a fetch  0x00000001 , 0x00000047 
+ 00009554  0x0000133b set0  0x00000000 , 0x0000003f 
+ 00009555  0x0000133c isolate1  0x00000000 , 0x00000002 
+ 00009556  0x0000133d setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00009557  0x0000133e isolate1  0x00000001 , 0x00000002 
+ 00009558  0x0000133f setflag  0x00000001 , 0x00000001 , 0x0000003f 
+ 00009559  0x00001340 store  0x00000001 , 0x00000047 
+ 00009560  0x00001341 isolate0  0x00000001 , 0x00000002 
+ 00009561  0x00001342 branch  0x0000255b , 0x00000001 
+ 00009562  0x00001343 call  0x00002687 
+ 00009563  0x00001345 bpatch  0x00000056 , 0x0000400a 
+ 00009564  0x00001346 arg  0x00000000 , 0x00000002 
+ 00009565  0x00001347 call  0x00002a1c 
+ 00009566  0x00001348 and  0x00000001 , 0x0000000f , 0x0000003f 
+ 00009567  0x00001349 beq  0x00000001 , 0x00002587 
+ 00009568  0x0000134a beq  0x00000000 , 0x0000264d 
+ 00009569  0x0000134b beq  0x00000002 , 0x00002659 
+ 00009570  0x0000134c fetcht  0x00000001 , 0x0000015e 
+ 00009571  0x0000134d fetch  0x00000001 , 0x00000047 
+ 00009572  0x0000134e icompare  0x00000004 , 0x00000002 
+ 00009573  0x0000134f nbranch  0x00002569 , 0x00000001 
+ 00009574  0x00001350 bmark0  0x0000000a , 0x00002568 
+ 00009575  0x00001351 bbit0  0x00000007 , 0x00002569 
+ 00009576  0x00001353 set1  0x0000000f , 0x00000000 
+ 00009577  0x00001355 bpatch  0x00000057 , 0x0000400a 
+ 00009578  0x00001356 deposit  0x00000001 
+ 00009579  0x00001357 beq  0x00000003 , 0x00002589 
+ 00009580  0x00001358 beq  0x00000004 , 0x0000258d 
+ 00009581  0x00001359 beq  0x00000007 , 0x00002578 
+ 00009582  0x0000135a beq  0x00000008 , 0x0000258c 
+ 00009583  0x0000135b arg  0x00000004 , 0x00000002 
+ 00009584  0x0000135c call  0x00002a1c 
+ 00009585  0x0000135d beq  0x0000000a , 0x00002588 
+ 00009586  0x0000135e beq  0x0000000b , 0x0000258b 
+ 00009587  0x0000135f arg  0x00000008 , 0x00000002 
+ 00009588  0x00001360 call  0x00002a1c 
+ 00009589  0x00001361 beq  0x0000000e , 0x00002588 
+ 00009590  0x00001362 beq  0x0000000f , 0x0000258b 
+ 00009591  0x00001363 rtn 
+ 00009592  0x00001367 bpatch  0x00000058 , 0x0000400b 
+ 00009593  0x00001368 enable  0x0000000d 
+ 00009594  0x00001369 enable  0x00000009 
+ 00009595  0x0000136a enable  0x0000000e 
+ 00009596  0x0000136b arg  0x000000d1 , 0x00000005 
+ 00009597  0x0000136c force  0x0000001e , 0x00000039 
+ 00009598  0x0000136e parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00009599  0x0000136f rshift3  0x0000000c , 0x0000003f 
+ 00009600  0x00001370 istore  0x00000001 , 0x00000005 
+ 00009601  0x00001371 loop  0x0000257e 
+ 00009602  0x00001372 bmark0  0x00000007 , 0x0000264d 
+ 00009603  0x00001373 parse  0x00000003 , 0x00000000 , 0x00000010 
+ 00009604  0x00001374 nsetflag  0x00000006 , 0x00000008 , 0x00000000 
+ 00009605  0x00001375 branch  0x0000263d , 0x00000006 
+ 00009606  0x00001376 branch  0x00002620 
+ 00009607  0x0000137a branch  0x0000264d 
+ 00009608  0x0000137e set1  0x00000010 , 0x00000000 
+ 00009609  0x00001380 enable  0x0000000c 
+ 00009610  0x00001381 branch  0x0000258e 
+ 00009611  0x00001385 set1  0x00000010 , 0x00000000 
+ 00009612  0x00001387 set1  0x00000002 , 0x00000015 
+ 00009613  0x00001389 enable  0x0000000d 
+ 00009614  0x0000138b bpatch  0x00000059 , 0x0000400b 
+ 00009615  0x0000138c bmark1  0x00000001 , 0x0000264d 
+ 00009616  0x0000138d isolate0  0x00000001 , 0x00000015 
+ 00009617  0x0000138e branch  0x0000259a , 0x00000001 
+ 00009618  0x0000138f disable  0x00000007 
+ 00009619  0x00001390 enable  0x0000000d 
+ 00009620  0x00001391 disable  0x0000000c 
+ 00009621  0x00001392 add  0x00000022 , 0x00000002 , 0x0000000b 
+ 00009622  0x00001393 correlate  0x00000022 , 0x00000026 
+ 00009623  0x00001394 nbranch  0x0000263d , 0x00000018 
+ 00009624  0x00001395 set1  0x00000010 , 0x00000000 
+ 00009625  0x00001396 enable  0x00000007 
+ 00009626  0x00001398 bpatch  0x0000005a , 0x0000400b 
+ 00009627  0x00001399 enable  0x0000000e 
+ 00009628  0x0000139a enable  0x00000009 
+ 00009629  0x0000139b parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009630  0x0000139c rshift8  0x0000000c , 0x0000003f 
+ 00009631  0x0000139d store  0x00000001 , 0x00000180 
+ 00009632  0x0000139e parse  0x00000003 , 0x00000000 , 0x00000005 
+ 00009633  0x0000139f bmark1  0x00000010 , 0x000025a5 
+ 00009634  0x000013a0 rshift3  0x0000000c , 0x00000039 
+ 00009635  0x000013a1 rshift3  0x00000039 , 0x00000039 
+ 00009636  0x000013a2 branch  0x000025a8 
+ 00009637  0x000013a4 parse  0x00000003 , 0x00000000 , 0x00000005 
+ 00009638  0x000013a5 rshift  0x0000000c , 0x00000039 
+ 00009639  0x000013a6 parse  0x00000003 , 0x00000000 , 0x00000003 
+ 00009640  0x000013a8 bpatch  0x0000005b , 0x0000400b 
+ 00009641  0x000013a9 deposit  0x00000039 
+ 00009642  0x000013aa store  0x00000002 , 0x0000015f 
+ 00009643  0x000013ab branch  0x000025e8 , 0x00000034 
+ 00009644  0x000013ac isub  0x00000035 , 0x0000003e 
+ 00009645  0x000013ad branch  0x0000263d , 0x00000002 
+ 00009646  0x000013ae bpatch  0x0000005c , 0x0000400b 
+ 00009647  0x000013af set0  0x00000000 , 0x00000000 
+ 00009648  0x000013b0 fetch  0x00000001 , 0x00000180 
+ 00009649  0x000013b1 and_into  0x00000003 , 0x0000003f 
+ 00009650  0x000013b2 arg  0x00000551 , 0x00000005 
+ 00009651  0x000013b3 beq  0x00000003 , 0x000025ba 
+ 00009652  0x000013b4 bmark1  0x00000011 , 0x000025e4 
+ 00009653  0x000013b6 fetch  0x00000001 , 0x00000180 
+ 00009654  0x000013b7 and_into  0x00000003 , 0x0000003f 
+ 00009655  0x000013b8 beq  0x00000002 , 0x000025bf 
+ 00009656  0x000013b9 beq  0x00000001 , 0x000025d3 
+ 00009657  0x000013ba branch  0x0000263d 
+ 00009658  0x000013bd fetch  0x00000002 , 0x0000015f 
+ 00009659  0x000013be sub  0x0000003f , 0x00000070 , 0x0000003e 
+ 00009660  0x000013bf nbranch  0x0000263d , 0x00000002 
+ 00009661  0x000013c0 bmark1  0x0000000f , 0x00002620 
+ 00009662  0x000013c1 branch  0x000025e4 
+ 00009663  0x000013c5 bpatch  0x0000005d , 0x0000400b 
+ 00009664  0x000013c6 bmark1  0x0000000f , 0x00002620 
+ 00009665  0x000013c7 fetch  0x00000002 , 0x0000015f 
+ 00009666  0x000013c8 arg  0x000002e0 , 0x00000002 
+ 00009667  0x000013c9 isub  0x00000002 , 0x0000003e 
+ 00009668  0x000013ca branch  0x0000263d , 0x00000002 
+ 00009669  0x000013cb fetch  0x00000001 , 0x00000263 
+ 00009670  0x000013cc bbit0  0x00000000 , 0x000025c9 
+ 00009671  0x000013cd bbit0  0x00000001 , 0x000025ce 
+ 00009672  0x000013ce branch  0x0000264d 
+ 00009673  0x000013d0 jam  0x00000001 , 0x00000261 
+ 00009674  0x000013d1 fetch  0x00000002 , 0x0000025d 
+ 00009675  0x000013d2 bne  0x00000000 , 0x0000264d 
+ 00009676  0x000013d3 arg  0x00001000 , 0x00000005 
+ 00009677  0x000013d4 branch  0x000025e4 
+ 00009678  0x000013d6 jam  0x00000002 , 0x00000261 
+ 00009679  0x000013d7 fetch  0x00000002 , 0x0000025f 
+ 00009680  0x000013d8 bne  0x00000000 , 0x0000264d 
+ 00009681  0x000013d9 arg  0x00001400 , 0x00000005 
+ 00009682  0x000013da branch  0x000025e4 
+ 00009683  0x000013dd bpatch  0x0000005e , 0x0000400b 
+ 00009684  0x000013de bmark1  0x0000000f , 0x00002620 
+ 00009685  0x000013df fetch  0x00000002 , 0x0000015f 
+ 00009686  0x000013e0 arg  0x000002e0 , 0x00000002 
+ 00009687  0x000013e1 isub  0x00000002 , 0x0000003e 
+ 00009688  0x000013e2 branch  0x0000263d , 0x00000002 
+ 00009689  0x000013e3 fetch  0x00000001 , 0x00000261 
+ 00009690  0x000013e4 beq  0x00000001 , 0x000025dd 
+ 00009691  0x000013e5 beq  0x00000002 , 0x000025e1 
+ 00009692  0x000013e6 branch  0x0000264d 
+ 00009693  0x000013e8 arg  0x00001000 , 0x00000005 
+ 00009694  0x000013e9 fetch  0x00000002 , 0x0000025d 
+ 00009695  0x000013ea iadd  0x00000005 , 0x00000005 
+ 00009696  0x000013eb branch  0x000025e4 
+ 00009697  0x000013ed arg  0x00001400 , 0x00000005 
+ 00009698  0x000013ee fetch  0x00000002 , 0x0000025f 
+ 00009699  0x000013ef iadd  0x00000005 , 0x00000005 
+ 00009700  0x000013f1 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00009701  0x000013f2 rshift3  0x0000000c , 0x0000003f 
+ 00009702  0x000013f3 istore  0x00000001 , 0x00000005 
+ 00009703  0x000013f4 loop  0x000025e4 
+ 00009704  0x000013f6 bpatch  0x0000005f , 0x0000400b 
+ 00009705  0x000013f7 parse  0x00000003 , 0x00000000 , 0x00000010 
+ 00009706  0x000013f8 branch  0x00002637 , 0x00000006 
+ 00009707  0x000013f9 fetch  0x00000001 , 0x00004363 
+ 00009708  0x000013fa beq  0x00000001 , 0x0000264d 
+ 00009709  0x000013fb bmark1  0x00000011 , 0x0000260d 
+ 00009710  0x000013fc bmark1  0x0000000f , 0x0000264a 
+ 00009711  0x000013fd fetch  0x00000001 , 0x00000180 
+ 00009712  0x000013fe compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00009713  0x000013ff branch  0x0000260d , 0x00000001 
+ 00009714  0x00001400 fetch  0x00000002 , 0x0000015f 
+ 00009715  0x00001401 branch  0x0000260d , 0x00000034 
+ 00009716  0x00001402 bpatch  0x00000060 , 0x0000400c 
+ 00009717  0x00001403 fetch  0x00000001 , 0x00000261 
+ 00009718  0x00001404 beq  0x00000001 , 0x000025f9 
+ 00009719  0x00001405 beq  0x00000002 , 0x00002603 
+ 00009720  0x00001406 branch  0x00002a8c 
+ 00009721  0x00001408 fetch  0x00000002 , 0x0000025d 
+ 00009722  0x00001409 fetcht  0x00000002 , 0x0000015f 
+ 00009723  0x0000140a iadd  0x00000002 , 0x0000003f 
+ 00009724  0x0000140b store  0x00000002 , 0x0000025d 
+ 00009725  0x0000140c beq  0x00000000 , 0x00002a8c 
+ 00009726  0x0000140d fetcht  0x00000002 , 0x00001000 
+ 00009727  0x0000140e increase  0x00000004 , 0x00000002 
+ 00009728  0x0000140f isub  0x00000002 , 0x0000003e 
+ 00009729  0x00001410 call  0x00002747 , 0x00000005 
+ 00009730  0x00001411 branch  0x0000260d 
+ 00009731  0x00001413 fetch  0x00000002 , 0x0000025f 
+ 00009732  0x00001414 fetcht  0x00000002 , 0x0000015f 
+ 00009733  0x00001415 iadd  0x00000002 , 0x0000003f 
+ 00009734  0x00001416 store  0x00000002 , 0x0000025f 
+ 00009735  0x00001417 beq  0x00000000 , 0x00002a8c 
+ 00009736  0x00001418 fetcht  0x00000002 , 0x00001400 
+ 00009737  0x00001419 add  0x00000002 , 0x00000004 , 0x00000002 
+ 00009738  0x0000141a isub  0x00000002 , 0x0000003e 
+ 00009739  0x0000141b call  0x0000274b , 0x00000005 
+ 00009740  0x0000141c branch  0x0000260d 
+ 00009741  0x0000141e bpatch  0x00000061 , 0x0000400c 
+ 00009742  0x0000141f fetcht  0x00000001 , 0x0000004c 
+ 00009743  0x00001420 fetch  0x00000001 , 0x00000180 
+ 00009744  0x00001421 compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00009745  0x00001422 setflag  0x00000001 , 0x00000006 , 0x00000002 
+ 00009746  0x00001423 nsetflag  0x00000001 , 0x00000007 , 0x00000002 
+ 00009747  0x00001424 storet  0x00000001 , 0x0000004c 
+ 00009748  0x00001425 nbranch  0x00002616 , 0x00000001 
+ 00009749  0x00001426 set1  0x00000001 , 0x00000000 
+ 00009750  0x00001428 bmark0  0x00000011 , 0x00002620 
+ 00009751  0x00001429 isolate1  0x00000006 , 0x00000002 
+ 00009752  0x0000142a branch  0x00002620 , 0x00000001 
+ 00009753  0x0000142b fetch  0x00000002 , 0x000000fa 
+ 00009754  0x0000142c increase  0x00000001 , 0x0000003f 
+ 00009755  0x0000142d store  0x00000002 , 0x000000fa 
+ 00009756  0x0000142e set1  0x00000005 , 0x00000000 
+ 00009757  0x0000142f set0  0x00000007 , 0x00000002 
+ 00009758  0x00001430 set0  0x00000001 , 0x00000000 
+ 00009759  0x00001431 storet  0x00000001 , 0x0000004c 
+ 00009760  0x00001433 bpatch  0x00000062 , 0x0000400c 
+ 00009761  0x00001434 fetcht  0x00000001 , 0x0000015e 
+ 00009762  0x00001435 fetch  0x00000001 , 0x00000047 
+ 00009763  0x00001436 set1  0x00000005 , 0x0000003f 
+ 00009764  0x00001437 isolate1  0x00000002 , 0x00000002 
+ 00009765  0x00001438 setflag  0x00000001 , 0x00000002 , 0x0000003f 
+ 00009766  0x00001439 isolate1  0x0000000a , 0x00000000 
+ 00009767  0x0000143a setflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00009768  0x0000143b store  0x00000001 , 0x00000047 
+ 00009769  0x0000143c fetch  0x00000002 , 0x0000015f 
+ 00009770  0x0000143d nbranch  0x0000264d , 0x00000034 
+ 00009771  0x0000143e fetch  0x00000001 , 0x0000004c 
+ 00009772  0x0000143f set0  0x00000007 , 0x0000003f 
+ 00009773  0x00001440 store  0x00000001 , 0x0000004c 
+ 00009774  0x00001441 fetch  0x00000001 , 0x00000180 
+ 00009775  0x00001442 compare  0x00000001 , 0x0000003f , 0x00000007 
+ 00009776  0x00001444 branch  0x0000264d 
+ 00009777  0x00001447 bpatch  0x00000063 , 0x0000400c 
+ 00009778  0x00001448 disable  0x0000002d 
+ 00009779  0x00001449 fetch  0x00000002 , 0x0000001a 
+ 00009780  0x0000144a increase  0x00000001 , 0x0000003f 
+ 00009781  0x0000144b store  0x00000002 , 0x0000001a 
+ 00009782  0x0000144c branch  0x0000264d 
+ 00009783  0x0000144e fetch  0x00000002 , 0x0000001c 
+ 00009784  0x0000144f increase  0x00000001 , 0x0000003f 
+ 00009785  0x00001450 store  0x00000002 , 0x0000001c 
+ 00009786  0x00001451 call  0x0000263e 
+ 00009787  0x00001452 bmark0  0x00000011 , 0x0000263d 
+ 00009788  0x00001453 set1  0x00000005 , 0x00000000 
+ 00009789  0x00001455 branch  0x0000264d 
+ 00009790  0x00001458 bpatch  0x00000064 , 0x0000400c 
+ 00009791  0x00001459 fetch  0x00000001 , 0x00000180 
+ 00009792  0x0000145a compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00009793  0x0000145b nbranch  0x00002646 , 0x00000001 
+ 00009794  0x0000145d fetcht  0x00000001 , 0x0000004c 
+ 00009795  0x0000145e set0  0x00000006 , 0x00000002 
+ 00009796  0x0000145f storet  0x00000001 , 0x0000004c 
+ 00009797  0x00001460 rtn 
+ 00009798  0x00001464 fetcht  0x00000001 , 0x0000004c 
+ 00009799  0x00001465 set0  0x00000007 , 0x00000002 
+ 00009800  0x00001466 storet  0x00000001 , 0x0000004c 
+ 00009801  0x00001467 branch  0x00004c0b 
+ 00009802  0x0000146a fetch  0x00000001 , 0x00000047 
+ 00009803  0x0000146b set1  0x00000005 , 0x0000003f 
+ 00009804  0x0000146c store  0x00000001 , 0x00000047 
+ 00009805  0x0000146e bpatch  0x00000065 , 0x0000400c 
+ 00009806  0x0000146f disable  0x0000001d 
+ 00009807  0x00001470 disable  0x0000001c 
+ 00009808  0x00001471 disable  0x0000000d 
+ 00009809  0x00001472 disable  0x0000000c 
+ 00009810  0x00001473 disable  0x00000009 
+ 00009811  0x00001474 disable  0x0000000e 
+ 00009812  0x00001475 disable  0x00000007 
+ 00009813  0x00001476 branch  0x000028f9 , 0x00000021 
+ 00009814  0x00001477 until  0x0000003e , 0x00000027 
+ 00009815  0x00001478 nop  0x00000064 
+ 00009816  0x00001479 branch  0x000028f9 
+ 00009817  0x0000147c bpatch  0x00000066 , 0x0000400c 
+ 00009818  0x0000147d enable  0x00000009 
+ 00009819  0x0000147e enable  0x0000000c 
+ 00009820  0x0000147f parse  0x00000003 , 0x00000000 , 0x00000048 
+ 00009821  0x00001480 isolate1  0x0000003a , 0x0000003f 
+ 00009822  0x00001481 setflag  0x00000001 , 0x00000000 , 0x00000000 
+ 00009823  0x00001482 copy  0x00000020 , 0x00000002 
+ 00009824  0x00001483 ialigned  0x00000020 
+ 00009825  0x00001484 ialigned  0x0000001e 
+ 00009826  0x00001485 pulse  0x00000015 
+ 00009827  0x00001486 setsect  0x00000002 , 0x000fffff 
+ 00009828  0x00001487 setsect  0x00000003 , 0x0000ffff 
+ 00009829  0x00001488 nop  0x00000020 
+ 00009830  0x00001489 iverify  0x0000000d 
+ 00009831  0x0000148a deposit  0x0000002c 
+ 00009832  0x0000148b store  0x00000003 , 0x00000178 
+ 00009833  0x0000148c deposit  0x0000002d 
+ 00009834  0x0000148d store  0x00000001 , 0x0000017b 
+ 00009835  0x0000148e copy  0x00000002 , 0x00000020 
+ 00009836  0x0000148f branch  0x0000266e , 0x00000001 
+ 00009837  0x00001490 branch  0x0000263d 
+ 00009838  0x00001492 bpatch  0x00000067 , 0x0000400c 
+ 00009839  0x00001493 parse  0x00000003 , 0x00000000 , 0x00000048 
+ 00009840  0x00001494 ialigned  0x0000001f 
+ 00009841  0x00001495 ialigned  0x00000004 
+ 00009842  0x00001496 ialigned  0x0000002e 
+ 00009843  0x00001497 ialigned  0x00000012 
+ 00009844  0x00001498 force  0x00000000 , 0x0000003f 
+ 00009845  0x00001499 parse  0x00000003 , 0x00000000 , 0x00000010 
+ 00009846  0x0000149a branch  0x0000263d , 0x00000006 
+ 00009847  0x0000149b setarg  0x0ffffffc 
+ 00009848  0x0000149c iand  0x00000012 , 0x0000003f 
+ 00009849  0x0000149d store  0x00000004 , 0x00000165 
+ 00009850  0x0000149e deposit  0x0000001d 
+ 00009851  0x0000149f store  0x00000003 , 0x00000175 
+ 00009852  0x000014a0 deposit  0x0000001c 
+ 00009853  0x000014a1 store  0x00000001 , 0x00000173 
+ 00009854  0x000014a2 deposit  0x00000004 
+ 00009855  0x000014a3 store  0x00000001 , 0x00000174 
+ 00009856  0x000014a4 deposit  0x0000002e 
+ 00009857  0x000014a5 store  0x00000002 , 0x0000017c 
+ 00009858  0x000014a6 deposit  0x00000021 
+ 00009859  0x000014a7 inject  0x00000001 , 0x00000020 
+ 00009860  0x000014a8 compare  0x00000002 , 0x00000001 , 0x0000000f 
+ 00009861  0x000014a9 setflag  0x00000001 , 0x0000000b , 0x00000000 
+ 00009862  0x000014aa branch  0x0000264d 
+ 00009863  0x000014ad bpatch  0x00000068 , 0x0000400d 
+ 00009864  0x000014ae fetch  0x00000001 , 0x00000047 
+ 00009865  0x000014af rtnbit0  0x00000003 
+ 00009866  0x000014b0 set0  0x00000003 , 0x0000003f 
+ 00009867  0x000014b1 setflip  0x00000006 , 0x0000003f 
+ 00009868  0x000014b2 store  0x00000001 , 0x00000047 
+ 00009869  0x000014b3 fetch  0x00000001 , 0x000040c5 
+ 00009870  0x000014b4 beq  0x00000013 , 0x0000269c 
+ 00009871  0x000014b5 rtneq  0x00000007 
+ 00009872  0x000014b6 fetch  0x00000001 , 0x0000004b 
+ 00009873  0x000014b7 rtnbit0  0x00000006 , 0x0000003f 
+ 00009874  0x000014b8 set0  0x00000006 , 0x0000003f 
+ 00009875  0x000014b9 set1  0x00000007 , 0x0000003f 
+ 00009876  0x000014ba store  0x00000001 , 0x0000004b 
+ 00009877  0x000014bb set0  0x00000002 , 0x00000000 
+ 00009878  0x000014bc fetch  0x00000002 , 0x00004246 
+ 00009879  0x000014bd nrtn  0x00000034 
+ 00009880  0x000014be fetch  0x00000001 , 0x0000004b 
+ 00009881  0x000014bf set0  0x00000007 , 0x0000003f 
+ 00009882  0x000014c0 store  0x00000001 , 0x0000004b 
+ 00009883  0x000014c1 branch  0x0000525d 
+ 00009884  0x000014c4 bpatch  0x00000069 , 0x0000400d 
+ 00009885  0x000014c5 fetch  0x00000001 , 0x000004b7 
+ 00009886  0x000014c6 rshift  0x0000003f , 0x0000003f 
+ 00009887  0x000014c7 beq  0x00000011 , 0x000026b8 
+ 00009888  0x000014c8 beq  0x00000012 , 0x000026c0 
+ 00009889  0x000014c9 beq  0x00000018 , 0x000026e9 
+ 00009890  0x000014ca beq  0x0000007f , 0x000026a8 
+ 00009891  0x000014cb rtnne  0x00000003 
+ 00009892  0x000014cc fetch  0x00000001 , 0x000004b8 
+ 00009893  0x000014cd beq  0x0000002b , 0x000026b0 
+ 00009894  0x000014ce beq  0x00000011 , 0x000026ab 
+ 00009895  0x000014cf rtn 
+ 00009896  0x000014d2 fetch  0x00000001 , 0x000004b8 
+ 00009897  0x000014d3 set1  0x00000007 , 0x0000003f 
+ 00009898  0x000014d4 rtn 
+ 00009899  0x000014d6 rtn  0x00000029 
+ 00009900  0x000014d7 fetch  0x00000001 , 0x00000030 
+ 00009901  0x000014d8 rtnbit1  0x00000004 
+ 00009902  0x000014d9 jam  0x00000031 , 0x0000007c 
+ 00009903  0x000014da rtn 
+ 00009904  0x000014de rtn  0x00000029 
+ 00009905  0x000014df fetch  0x00000001 , 0x00000031 
+ 00009906  0x000014e0 isolate1  0x00000004 , 0x0000003f 
+ 00009907  0x000014e1 branch  0x000026b5 , 0x00000001 
+ 00009908  0x000014e3 rtn 
+ 00009909  0x000014e5 set0  0x00000004 , 0x0000003f 
+ 00009910  0x000014e6 store  0x00000001 , 0x00000031 
+ 00009911  0x000014e7 rtn 
+ 00009912  0x000014ea bpatch  0x0000006a , 0x0000400d 
+ 00009913  0x000014eb fetch  0x00000001 , 0x0000004c 
+ 00009914  0x000014ec set1  0x00000002 , 0x0000003f 
+ 00009915  0x000014ed store  0x00000001 , 0x0000004c 
+ 00009916  0x000014ee jam  0x00000001 , 0x00008011 
+ 00009917  0x000014ef fetch  0x00000001 , 0x00000030 
+ 00009918  0x000014f0 isolate1  0x00000004 , 0x0000003f 
+ 00009919  0x000014f1 rtn 
+ 00009920  0x000014f4 bpatch  0x0000006b , 0x0000400d 
+ 00009921  0x000014f5 fetch  0x00000001 , 0x0000004c 
+ 00009922  0x000014f6 set0  0x00000002 , 0x0000003f 
+ 00009923  0x000014f7 store  0x00000001 , 0x0000004c 
+ 00009924  0x000014f8 jam  0x00000000 , 0x00008011 
+ 00009925  0x000014f9 rtn 
+ 00009926  0x000014fd bpatch  0x0000006c , 0x0000400d 
+ 00009927  0x000014fe copy  0x00000022 , 0x0000003f 
+ 00009928  0x000014ff store  0x00000004 , 0x0000420c 
+ 00009929  0x00001500 add  0x00000022 , 0x00000003 , 0x00000011 
+ 00009930  0x00001501 branch  0x000026cc , 0x00000029 
+ 00009931  0x00001502 add  0x00000028 , 0x00000003 , 0x00000011 
+ 00009932  0x00001504 fetcht  0x00000002 , 0x00000032 
+ 00009933  0x00001505 deposit  0x00000011 
+ 00009934  0x00001506 set0  0x0000001b , 0x0000003f 
+ 00009935  0x00001507 idiv  0x00000002 
+ 00009936  0x00001508 fetch  0x00000002 , 0x00000075 
+ 00009937  0x00001509 call  0x00007f86 
+ 00009938  0x0000150a remainder  0x00000013 
+ 00009939  0x0000150b isub  0x00000013 , 0x0000003f 
+ 00009940  0x0000150c branch  0x000026d6 , 0x00000002 
+ 00009941  0x0000150d iadd  0x00000002 , 0x0000003f 
+ 00009942  0x0000150f iadd  0x00000011 , 0x0000003f 
+ 00009943  0x00001510 store  0x00000004 , 0x00000034 
+ 00009944  0x00001511 jam  0x00000000 , 0x0000455b 
+ 00009945  0x00001512 fetch  0x00000001 , 0x00000030 
+ 00009946  0x00001513 set1  0x00000001 , 0x0000003f 
+ 00009947  0x00001514 store  0x00000001 , 0x00000030 
+ 00009948  0x00001515 fetch  0x00000001 , 0x00000073 
+ 00009949  0x00001516 store  0x00000001 , 0x0000008a 
+ 00009950  0x00001517 setarg  0x00000000 
+ 00009951  0x00001518 store  0x00000003 , 0x00004169 
+ 00009952  0x00001519 store  0x00000003 , 0x0000416c 
+ 00009953  0x0000151a store  0x00000001 , 0x00004159 
+ 00009954  0x0000151b jam  0x0000000b , 0x00000a99 
+ 00009955  0x0000151c call  0x00007d86 
+ 00009956  0x0000151d fetch  0x00000002 , 0x000040c1 
+ 00009957  0x0000151e store  0x00000002 , 0x0000003e 
+ 00009958  0x0000151f nrtn  0x00000029 
+ 00009959  0x00001520 add  0x00000004 , 0xffffffff , 0x00000007 
+ 00009960  0x00001521 rtn 
+ 00009961  0x00001524 bpatch  0x0000006d , 0x0000400d 
+ 00009962  0x00001525 fetch  0x00000001 , 0x00000030 
+ 00009963  0x00001526 rtnbit0  0x00000001 
+ 00009964  0x00001527 set0  0x00000001 , 0x0000003f 
+ 00009965  0x00001528 store  0x00000001 , 0x00000030 
+ 00009966  0x00001529 fetch  0x00000002 , 0x000040bf 
+ 00009967  0x0000152a store  0x00000002 , 0x0000003e 
+ 00009968  0x0000152b disable  0x0000002b 
+ 00009969  0x0000152c jam  0x0000000c , 0x00000a99 
+ 00009970  0x0000152d branch  0x00007d86 
+ 00009971  0x00001531 bpatch  0x0000006e , 0x0000400d 
+ 00009972  0x00001532 enable  0x0000002e 
+ 00009973  0x00001533 fetch  0x00000001 , 0x00000030 
+ 00009974  0x00001534 bbit1  0x00000001 , 0x00002700 
+ 00009975  0x00001535 rtnmark1  0x00000011 
+ 00009976  0x00001536 fetch  0x00000001 , 0x00000047 
+ 00009977  0x00001537 rtnbit1  0x00000003 
+ 00009978  0x00001538 fetch  0x00000001 , 0x00000048 
+ 00009979  0x00001539 nrtn  0x00000034 
+ 00009980  0x0000153a fetch  0x00000001 , 0x0000004b 
+ 00009981  0x0000153b rtnbit1  0x00000006 
+ 00009982  0x0000153d force  0x00000000 , 0x0000003f 
+ 00009983  0x0000153e rtn 
+ 00009984  0x00001541 bbit0  0x00000002 , 0x0000270f 
+ 00009985  0x00001542 fetch  0x00000001 , 0x0000008a 
+ 00009986  0x00001543 beq  0x00000002 , 0x00002706 
+ 00009987  0x00001544 fetch  0x00000001 , 0x00000047 
+ 00009988  0x00001545 bbit1  0x00000003 , 0x00002718 
+ 00009989  0x00001546 bmark0  0x00000008 , 0x00002718 
+ 00009990  0x00001548 nbranch  0x00002718 , 0x00000029 
+ 00009991  0x00001549 fetch  0x00000001 , 0x00000048 
+ 00009992  0x0000154a nbranch  0x00002718 , 0x00000034 
+ 00009993  0x0000154c fetch  0x00000001 , 0x000000ef 
+ 00009994  0x0000154d increase  0xffffffff , 0x0000003f 
+ 00009995  0x0000154e store  0x00000001 , 0x000000ef 
+ 00009996  0x0000154f nbranch  0x000026fe , 0x00000034 
+ 00009997  0x00001550 jam  0x00000010 , 0x000000ef 
+ 00009998  0x00001551 branch  0x00002718 
+ 00009999  0x00001559 fetch  0x00000001 , 0x0000008a 
+ 00010000  0x0000155a bne  0x00000001 , 0x00002718 
+ 00010001  0x0000155b fetch  0x00000001 , 0x0000008b 
+ 00010002  0x0000155c branch  0x00002718 , 0x00000034 
+ 00010003  0x0000155d increase  0xffffffff , 0x0000003f 
+ 00010004  0x0000155e store  0x00000001 , 0x0000008b 
+ 00010005  0x0000155f fetch  0x00000001 , 0x00000047 
+ 00010006  0x00001560 rtnbit1  0x00000003 
+ 00010007  0x00001561 nrtn  0x0000002d 
+ 00010008  0x00001563 fetch  0x00000001 , 0x0000008a 
+ 00010009  0x00001564 increase  0xffffffff , 0x0000003f 
+ 00010010  0x00001565 store  0x00000001 , 0x0000008a 
+ 00010011  0x00001566 rtn 
+ 00010012  0x00001572 bpatch  0x0000006f , 0x0000400d 
+ 00010013  0x00001573 disable  0x00000010 
+ 00010014  0x00001574 copy  0x00000002 , 0x0000001b 
+ 00010015  0x00001575 call  0x00002260 
+ 00010016  0x00001576 disable  0x00000028 
+ 00010017  0x00001577 nrtn  0x00000005 
+ 00010018  0x00001578 force  0x00000000 , 0x0000001b 
+ 00010019  0x00001579 enable  0x00000028 
+ 00010020  0x0000157a rtn 
+ 00010021  0x0000157e fetch  0x00000001 , 0x00004158 
+ 00010022  0x0000157f icompare  0x000000ff , 0x00000004 
+ 00010023  0x00001580 rtn 
+ 00010024  0x00001584 bpatch  0x00000070 , 0x0000400e 
+ 00010025  0x00001585 set0  0x00000001 , 0x00000000 
+ 00010026  0x00001587 jam  0x00000000 , 0x0000026a 
+ 00010027  0x00001588 fetch  0x00000001 , 0x00000263 
+ 00010028  0x00001589 rtn  0x00000034 
+ 00010029  0x0000158a isolate1  0x00000000 , 0x0000003f 
+ 00010030  0x0000158b arg  0x00001000 , 0x00000006 
+ 00010031  0x0000158c call  0x00004d79 , 0x00000001 
+ 00010032  0x0000158d bpatch  0x00000071 , 0x0000400e 
+ 00010033  0x0000158e fetch  0x00000001 , 0x0000026a 
+ 00010034  0x0000158f beq  0x00000001 , 0x0000273b 
+ 00010035  0x00001591 jam  0x00000000 , 0x0000026a 
+ 00010036  0x00001592 fetch  0x00000001 , 0x00000263 
+ 00010037  0x00001593 rtnbit0  0x00000001 
+ 00010038  0x00001594 arg  0x00001400 , 0x00000006 
+ 00010039  0x00001595 call  0x00004d79 
+ 00010040  0x00001596 fetch  0x00000001 , 0x0000026a 
+ 00010041  0x00001597 beq  0x00000001 , 0x00002741 
+ 00010042  0x00001598 rtn 
+ 00010043  0x0000159b fetch  0x00000001 , 0x00000263 
+ 00010044  0x0000159c set0  0x00000000 , 0x0000003f 
+ 00010045  0x0000159d store  0x00000001 , 0x00000263 
+ 00010046  0x0000159e setarg  0x00000000 
+ 00010047  0x0000159f store  0x00000002 , 0x0000025d 
+ 00010048  0x000015a0 rtn 
+ 00010049  0x000015a2 fetch  0x00000001 , 0x00000263 
+ 00010050  0x000015a3 set0  0x00000001 , 0x0000003f 
+ 00010051  0x000015a4 store  0x00000001 , 0x00000263 
+ 00010052  0x000015a5 setarg  0x00000000 
+ 00010053  0x000015a6 store  0x00000002 , 0x0000025f 
+ 00010054  0x000015a7 rtn 
+ 00010055  0x000015aa fetch  0x00000001 , 0x00000263 
+ 00010056  0x000015ab set1  0x00000000 , 0x0000003f 
+ 00010057  0x000015ac store  0x00000001 , 0x00000263 
+ 00010058  0x000015ad rtn 
+ 00010059  0x000015b0 fetch  0x00000001 , 0x00000263 
+ 00010060  0x000015b1 set1  0x00000001 , 0x0000003f 
+ 00010061  0x000015b2 store  0x00000001 , 0x00000263 
+ 00010062  0x000015b3 rtn 
+ 00010063  0x000015ba bpatch  0x00000072 , 0x0000400e 
+ 00010064  0x000015bb add  0x00000028 , 0x00000001 , 0x00000021 
+ 00010065  0x000015bc call  0x000028ea 
+ 00010066  0x000015bd force  0x00000003 , 0x00000024 
+ 00010067  0x000015be call  0x000028d2 
+ 00010068  0x000015bf call  0x00002a51 
+ 00010069  0x000015c0 call  0x00002a5f 
+ 00010070  0x000015c1 branch  0x00002a64 
+ 00010071  0x000015c5 bpatch  0x00000073 , 0x0000400e 
+ 00010072  0x000015c6 call  0x00002a4d 
+ 00010073  0x000015c7 deposit  0x00000028 
+ 00010074  0x000015c8 fetcht  0x00000004 , 0x000040ca 
+ 00010075  0x000015c9 isub  0x00000002 , 0x0000003f 
+ 00010076  0x000015ca rtnne  0x00000001 
+ 00010077  0x000015cb compare  0x00000000 , 0x00000001 , 0x0000001f 
+ 00010078  0x000015cc nbranch  0x00002761 , 0x00000001 
+ 00010079  0x000015cd fetch  0x00000001 , 0x00000019 
+ 00010080  0x000015ce rtn  0x00000034 
+ 00010081  0x000015d0 call  0x0000274f 
+ 00010082  0x000015d2 compare  0x00000010 , 0x00000001 , 0x0000001f 
+ 00010083  0x000015d3 branch  0x0000264d , 0x00000001 
+ 00010084  0x000015d4 rshift  0x00000021 , 0x00000002 
+ 00010085  0x000015d5 or  0x00000002 , 0x00000040 , 0x0000000e 
+ 00010086  0x000015d7 bpatch  0x00000074 , 0x0000400e 
+ 00010087  0x000015d8 enable  0x00000007 
+ 00010088  0x000015d9 enable  0x0000000a 
+ 00010089  0x000015da enable  0x0000001b 
+ 00010090  0x000015db set0  0x00000010 , 0x00000000 
+ 00010091  0x000015dc deposit  0x00000004 
+ 00010092  0x000015dd inject  0x00000003 , 0x00000003 
+ 00010093  0x000015de deposit  0x00000001 
+ 00010094  0x000015df inject  0x00000003 , 0x00000004 
+ 00010095  0x000015e0 fetch  0x00000001 , 0x00000047 
+ 00010096  0x000015e1 inject  0x00000000 , 0x00000004 
+ 00010097  0x000015e2 inject  0x00000003 , 0x00000003 
+ 00010098  0x000015e3 enable  0x00000008 
+ 00010099  0x000015e4 inject  0x00000003 , 0x00000008 
+ 00010100  0x000015e5 disable  0x0000001b 
+ 00010101  0x000015e6 disable  0x00000008 
+ 00010102  0x000015e7 disable  0x0000000a 
+ 00010103  0x000015e8 set0  0x00000002 , 0x00000015 
+ 00010104  0x000015e9 arg  0x00000000 , 0x00000002 
+ 00010105  0x000015ea call  0x00002a1c 
+ 00010106  0x000015eb bpatch  0x00000075 , 0x0000400e 
+ 00010107  0x000015ec and  0x00000001 , 0x0000001f , 0x0000003f 
+ 00010108  0x000015ed beq  0x00000013 , 0x000027b4 
+ 00010109  0x000015ee beq  0x00000000 , 0x0000264d 
+ 00010110  0x000015ef beq  0x00000001 , 0x0000264d 
+ 00010111  0x000015f0 beq  0x00000002 , 0x00002797 
+ 00010112  0x000015f1 beq  0x00000003 , 0x000027c5 
+ 00010113  0x000015f2 beq  0x00000004 , 0x000027cb 
+ 00010114  0x000015f3 beq  0x00000007 , 0x0000278c 
+ 00010115  0x000015f4 beq  0x00000008 , 0x000027ca 
+ 00010116  0x000015f5 arg  0x00000004 , 0x00000002 
+ 00010117  0x000015f6 call  0x00002a1c 
+ 00010118  0x000015f7 beq  0x0000000a , 0x000027c7 
+ 00010119  0x000015f8 beq  0x0000000b , 0x000027cd 
+ 00010120  0x000015f9 arg  0x00000008 , 0x00000002 
+ 00010121  0x000015fa call  0x00002a1c 
+ 00010122  0x000015fb beq  0x0000000f , 0x000027cd 
+ 00010123  0x000015fc branch  0x000027c7 
+ 00010124  0x00001600 bpatch  0x00000076 , 0x0000400e 
+ 00010125  0x00001601 enable  0x0000001d 
+ 00010126  0x00001602 enable  0x00000009 
+ 00010127  0x00001603 enable  0x0000000e 
+ 00010128  0x00001604 force  0x0000001e , 0x00000039 
+ 00010129  0x00001605 arg  0x000000b3 , 0x00000006 
+ 00010130  0x00001607 ifetch  0x00000001 , 0x00000006 
+ 00010131  0x00001608 inject  0x00000003 , 0x00000008 
+ 00010132  0x00001609 loop  0x00002792 
+ 00010133  0x0000160a bmark1  0x00000007 , 0x000027f7 
+ 00010134  0x0000160b branch  0x0000264d 
+ 00010135  0x0000160e bpatch  0x00000077 , 0x0000400e 
+ 00010136  0x0000160f fetch  0x00000001 , 0x00000181 
+ 00010137  0x00001610 icopy  0x00000004 
+ 00010138  0x00001611 fetch  0x00000001 , 0x00000090 
+ 00010139  0x00001612 icopy  0x0000001c 
+ 00010140  0x00001613 fetch  0x00000003 , 0x000040aa 
+ 00010141  0x00001614 icopy  0x0000001d 
+ 00010142  0x00001615 fetch  0x00000002 , 0x000040a4 
+ 00010143  0x00001616 icopy  0x0000002e 
+ 00010144  0x00001617 enable  0x00000009 
+ 00010145  0x00001618 enable  0x0000001c 
+ 00010146  0x00001619 copy  0x00000020 , 0x00000011 
+ 00010147  0x0000161a call  0x000028e2 
+ 00010148  0x0000161b pulse  0x00000015 
+ 00010149  0x0000161c nop  0x00000020 
+ 00010150  0x0000161d copy  0x00000021 , 0x0000000b 
+ 00010151  0x0000161e fetch  0x00000004 , 0x00000161 
+ 00010152  0x0000161f icopy  0x00000021 
+ 00010153  0x00001620 preload  0x0000001e 
+ 00010154  0x00001621 set1  0x0000003a , 0x0000003f 
+ 00010155  0x00001622 inject  0x00000003 , 0x00000048 
+ 00010156  0x00001623 preload  0x0000001f 
+ 00010157  0x00001624 inject  0x00000003 , 0x00000048 
+ 00010158  0x00001625 copy  0x0000000b , 0x00000021 
+ 00010159  0x00001626 copy  0x00000011 , 0x00000020 
+ 00010160  0x00001627 enable  0x00000008 
+ 00010161  0x00001628 inject  0x00000003 , 0x00000010 
+ 00010162  0x00001629 disable  0x00000008 
+ 00010163  0x0000162a branch  0x0000264d 
+ 00010164  0x0000162d bpatch  0x00000078 , 0x0000400f 
+ 00010165  0x0000162e enable  0x0000000e 
+ 00010166  0x0000162f enable  0x00000009 
+ 00010167  0x00001630 enable  0x0000001c 
+ 00010168  0x00001631 fetch  0x00000001 , 0x000004b6 
+ 00010169  0x00001632 and  0x0000003f , 0x000001f8 , 0x00000002 
+ 00010170  0x00001633 arg  0x000004b6 , 0x00000006 
+ 00010171  0x00001634 increase  0x00000008 , 0x00000002 
+ 00010172  0x00001636 add  0x00000002 , 0xffffffb8 , 0x00000013 
+ 00010173  0x00001637 nbranch  0x000027c2 , 0x00000002 
+ 00010174  0x00001638 ifetch  0x00000009 , 0x00000006 
+ 00010175  0x00001639 inject  0x00000003 , 0x00000048 
+ 00010176  0x0000163a copy  0x00000013 , 0x00000002 
+ 00010177  0x0000163b branch  0x000027bc 
+ 00010178  0x0000163d ifetch  0x00000009 , 0x00000006 
+ 00010179  0x0000163e iinject  0x00000003 , 0x00000002 
+ 00010180  0x0000163f branch  0x000027f7 
+ 00010181  0x00001642 enable  0x0000001c 
+ 00010182  0x00001643 branch  0x000027d0 
+ 00010183  0x00001646 enable  0x0000001c 
+ 00010184  0x00001647 set1  0x00000010 , 0x00000000 
+ 00010185  0x00001648 branch  0x000027d0 
+ 00010186  0x0000164b set1  0x00000002 , 0x00000015 
+ 00010187  0x0000164d enable  0x0000001d 
+ 00010188  0x0000164e branch  0x000027d0 
+ 00010189  0x00001652 set1  0x00000002 , 0x00000015 
+ 00010190  0x00001653 enable  0x0000001d 
+ 00010191  0x00001654 set1  0x00000010 , 0x00000000 
+ 00010192  0x00001657 bpatch  0x00000079 , 0x0000400f 
+ 00010193  0x00001658 fetch  0x00000001 , 0x0000004c 
+ 00010194  0x00001659 bbit0  0x00000005 , 0x000027e5 
+ 00010195  0x0000165a sub  0x00000001 , 0x00000003 , 0x0000003e 
+ 00010196  0x0000165b branch  0x000027e5 , 0x00000002 
+ 00010197  0x0000165c disable  0x0000000e 
+ 00010198  0x0000165d disable  0x0000001c 
+ 00010199  0x0000165e enable  0x0000001d 
+ 00010200  0x0000165f disable  0x00000007 
+ 00010201  0x00001660 set1  0x00000001 , 0x00000015 
+ 00010202  0x00001661 isolate1  0x00000002 , 0x00000015 
+ 00010203  0x00001662 branch  0x000027df , 0x00000001 
+ 00010204  0x00001663 setarg  0x000abeee 
+ 00010205  0x00001664 inject  0x00000003 , 0x00000014 
+ 00010206  0x00001665 branch  0x000027e3 
+ 00010207  0x00001667 setarg  0x005faeba 
+ 00010208  0x00001668 inject  0x00000003 , 0x00000018 
+ 00010209  0x00001669 setarg  0x00000012 
+ 00010210  0x0000166a inject  0x00000003 , 0x00000006 
+ 00010211  0x0000166c enable  0x00000007 
+ 00010212  0x0000166d set1  0x00000010 , 0x00000000 
+ 00010213  0x0000166f enable  0x0000000e 
+ 00010214  0x00001670 enable  0x00000009 
+ 00010215  0x00001671 bmark1  0x00000005 , 0x00002800 
+ 00010216  0x00001672 fetch  0x00000001 , 0x000041db 
+ 00010217  0x00001673 inject  0x00000003 , 0x00000003 
+ 00010218  0x00001674 fetch  0x00000002 , 0x000041dc 
+ 00010219  0x00001675 iforce  0x00000039 
+ 00010220  0x00001676 bmark1  0x00000010 , 0x000027ef 
+ 00010221  0x00001677 inject  0x00000003 , 0x00000005 
+ 00010222  0x00001678 branch  0x000027f0 
+ 00010223  0x0000167a inject  0x00000003 , 0x0000000d 
+ 00010224  0x0000167c deposit  0x00000039 
+ 00010225  0x0000167d branch  0x000027f7 , 0x00000034 
+ 00010226  0x0000167e fetch  0x00000002 , 0x0000016f 
+ 00010227  0x0000167f iforce  0x00000006 
+ 00010228  0x00001681 ifetch  0x00000001 , 0x00000006 
+ 00010229  0x00001682 inject  0x00000003 , 0x00000008 
+ 00010230  0x00001683 loop  0x000027f4 
+ 00010231  0x00001687 enable  0x00000008 
+ 00010232  0x00001688 inject  0x00000003 , 0x00000010 
+ 00010233  0x00001689 disable  0x00000008 
+ 00010234  0x0000168a call  0x000024c1 
+ 00010235  0x0000168b fetch  0x00000001 , 0x0000004c 
+ 00010236  0x0000168c bbit0  0x00000005 , 0x0000264d 
+ 00010237  0x0000168d force  0x00000000 , 0x0000003f 
+ 00010238  0x0000168e inject  0x00000003 , 0x00000006 
+ 00010239  0x0000168f branch  0x0000264d 
+ 00010240  0x00001693 bpatch  0x0000007a , 0x0000400f 
+ 00010241  0x00001694 bmark1  0x00000010 , 0x00002808 
+ 00010242  0x00001696 fetch  0x00000001 , 0x00000180 
+ 00010243  0x00001697 inject  0x00000003 , 0x00000003 
+ 00010244  0x00001698 fetch  0x00000001 , 0x0000015f 
+ 00010245  0x00001699 iforce  0x00000013 
+ 00010246  0x0000169a inject  0x00000003 , 0x00000005 
+ 00010247  0x0000169b branch  0x0000280d 
+ 00010248  0x0000169d fetch  0x00000001 , 0x00000180 
+ 00010249  0x0000169e inject  0x00000003 , 0x00000003 
+ 00010250  0x0000169f fetch  0x00000002 , 0x0000015f 
+ 00010251  0x000016a0 iforce  0x00000013 
+ 00010252  0x000016a1 inject  0x00000003 , 0x0000000d 
+ 00010253  0x000016a3 arg  0x00000551 , 0x00000006 
+ 00010254  0x000016a5 copy  0x00000013 , 0x0000003e 
+ 00010255  0x000016a6 branch  0x00002814 , 0x00000005 
+ 00010256  0x000016a7 ifetch  0x00000001 , 0x00000006 
+ 00010257  0x000016a8 inject  0x00000003 , 0x00000008 
+ 00010258  0x000016a9 increase  0xffffffff , 0x00000013 
+ 00010259  0x000016aa branch  0x0000280e 
+ 00010260  0x000016ac fetch  0x00000002 , 0x000000fc 
+ 00010261  0x000016ad increase  0x00000001 , 0x0000003f 
+ 00010262  0x000016ae store  0x00000002 , 0x000000fc 
+ 00010263  0x000016af branch  0x000027f7 
+ 00010264  0x000016b3 fetch  0x00000004 , 0x00000165 
+ 00010265  0x000016b4 add  0x0000003f , 0x00000007 , 0x00000011 
+ 00010266  0x000016b5 fetch  0x00000002 , 0x00000171 
+ 00010267  0x000016b6 nbranch  0x0000281e , 0x00000034 
+ 00010268  0x000016b7 increase  0xfffffffd , 0x00000011 
+ 00010269  0x000016b8 branch  0x00002826 
+ 00010270  0x000016ba mul32  0x0000003f , 0x0000000c , 0x0000003f 
+ 00010271  0x000016bb hfetcht  0x00000002 , 0x00008040 
+ 00010272  0x000016bc increase  0x00000001 , 0x00000002 
+ 00010273  0x000016be isub  0x00000002 , 0x0000003f 
+ 00010274  0x000016bf nbranch  0x00002825 , 0x00000002 
+ 00010275  0x000016c0 increase  0xffffffff , 0x00000011 
+ 00010276  0x000016c1 branch  0x00002821 
+ 00010277  0x000016c3 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00010278  0x000016c5 until  0x0000003e , 0x00000023 
+ 00010279  0x000016c6 compare  0x00000000 , 0x00000022 , 0x00000003 
+ 00010280  0x000016c7 nbranch  0x00002826 , 0x00000001 
+ 00010281  0x000016c8 iforce  0x00000029 
+ 00010282  0x000016c9 copy  0x00000011 , 0x00000028 
+ 00010283  0x000016ca iforce  0x00000029 
+ 00010284  0x000016cb rtn 
+ 00010285  0x000016cf bpatch  0x0000007b , 0x0000400f 
+ 00010286  0x000016d0 until  0x0000003e , 0x00000022 
+ 00010287  0x000016d1 deposit  0x0000001a 
+ 00010288  0x000016d2 iforce  0x00000006 
+ 00010289  0x000016d3 rshift16 , 0x0000003f , 0x0000003f 
+ 00010290  0x000016d4 isub  0x00000022 , 0x00000039 
+ 00010291  0x000016d5 and_into  0x00000003 , 0x00000039 
+ 00010292  0x000016d6 nbranch  0x00002837 , 0x00000005 
+ 00010293  0x000016d7 force  0x00000000 , 0x0000003f 
+ 00010294  0x000016d8 branch  0x0000283b 
+ 00010295  0x000016da arg  0x00000ea6 , 0x00000002 
+ 00010296  0x000016db force  0x00000000 , 0x0000003f 
+ 00010297  0x000016dd iadd  0x00000002 , 0x0000003f 
+ 00010298  0x000016de loop  0x00002839 
+ 00010299  0x000016e0 iadd  0x00000006 , 0x0000003f 
+ 00010300  0x000016e1 div  0x0000003f , 0x0000000c 
+ 00010301  0x000016e2 call  0x00007f86 
+ 00010302  0x000016e3 quotient  0x0000003f 
+ 00010303  0x000016e4 store  0x00000002 , 0x00000171 
+ 00010304  0x000016e5 rtn 
+ 00010305  0x000016e8 bpatch  0x0000007c , 0x0000400f 
+ 00010306  0x000016e9 deposit  0x0000001a 
+ 00010307  0x000016ea copy  0x00000019 , 0x00000002 
+ 00010308  0x000016eb isub  0x00000002 , 0x0000003e 
+ 00010309  0x000016ec nsetflag  0x00000002 , 0x0000002c , 0x0000003f 
+ 00010310  0x000016ed isub  0x00000002 , 0x00000002 
+ 00010311  0x000016ee setarg  0x00000ea6 
+ 00010312  0x000016ef isolate0  0x0000000f , 0x00000002 
+ 00010313  0x000016f0 branch  0x0000284c , 0x00000001 
+ 00010314  0x000016f1 setarg  0xffff0ea6 
+ 00010315  0x000016f2 iadd  0x00000002 , 0x00000002 
+ 00010316  0x000016f4 storet  0x00000006 , 0x00000447 
+ 00010317  0x000016f5 rtn  0x00000036 
+ 00010318  0x000016f6 storet  0x00000006 , 0x00000038 
+ 00010319  0x000016f7 rtn 
+ 00010320  0x000016fa disable  0x00000030 
+ 00010321  0x000016fb fetch  0x00000006 , 0x00000447 
+ 00010322  0x000016fc branch  0x00002854 , 0x00000036 
+ 00010323  0x000016fd fetch  0x00000006 , 0x00000038 
+ 00010324  0x000016ff iadd  0x00000019 , 0x00000030 
+ 00010325  0x00001700 increase  0x0000000a , 0x00000030 
+ 00010326  0x00001701 setarg  0x00000ea6 
+ 00010327  0x00001702 isub  0x00000030 , 0x0000003f 
+ 00010328  0x00001703 isolate0  0x0000000f , 0x0000003f 
+ 00010329  0x00001704 branch  0x0000285e , 0x00000001 
+ 00010330  0x00001705 setarg  0x0000f15a 
+ 00010331  0x00001706 iadd  0x00000030 , 0x00000030 
+ 00010332  0x00001708 copy  0x00000030 , 0x0000001a 
+ 00010333  0x00001709 rtn 
+ 00010334  0x0000170b force  0x00000000 , 0x0000003e 
+ 00010335  0x0000170c branch  0x0000285c 
+ 00010336  0x00001714 bpatch  0x0000007d , 0x0000400f 
+ 00010337  0x00001715 call  0x00002918 
+ 00010338  0x00001716 copy  0x00000021 , 0x0000003f 
+ 00010339  0x00001717 and_into  0x00000180 , 0x0000003f 
+ 00010340  0x00001718 compare  0x00000003 , 0x00000024 , 0x00000007 
+ 00010341  0x00001719 nbranch  0x00002869 , 0x00000001 
+ 00010342  0x0000171a rshift3  0x0000003f , 0x0000003f 
+ 00010343  0x0000171b iadd  0x00000017 , 0x0000003f 
+ 00010344  0x0000171c branch  0x0000286a 
+ 00010345  0x0000171e copy  0x00000017 , 0x0000003f 
+ 00010346  0x00001720 div  0x0000003f , 0x0000004f 
+ 00010347  0x00001721 pulse  0x00000015 
+ 00010348  0x00001722 call  0x00007f86 
+ 00010349  0x00001723 remainder  0x00000011 
+ 00010350  0x00001724 add  0x00000011 , 0xffffffd8 , 0x00000002 
+ 00010351  0x00001725 branch  0x00002872 , 0x00000002 
+ 00010352  0x00001726 lshift  0x00000011 , 0x00000002 
+ 00010353  0x00001727 branch  0x00002874 
+ 00010354  0x00001729 lshift  0x00000002 , 0x00000002 
+ 00010355  0x0000172a increase  0x00000001 , 0x00000002 
+ 00010356  0x0000172c bpatch  0x0000007e , 0x0000400f 
+ 00010357  0x0000172d fetch  0x00000001 , 0x00000031 
+ 00010358  0x0000172e bbit0  0x00000003 , 0x00002885 
+ 00010359  0x00001730 fetch  0x00000004 , 0x000040d2 
+ 00010360  0x00001731 isub  0x00000021 , 0x0000003e 
+ 00010361  0x00001732 branch  0x00002885 , 0x00000002 
+ 00010362  0x00001733 call  0x000028a4 
+ 00010363  0x00001734 fetch  0x00000001 , 0x000040d9 
+ 00010364  0x00001735 rtn  0x00000034 
+ 00010365  0x00001736 fetch  0x00000001 , 0x00000031 
+ 00010366  0x00001737 set1  0x00000002 , 0x0000003f 
+ 00010367  0x00001738 store  0x00000001 , 0x00000031 
+ 00010368  0x00001739 fetch  0x00000005 , 0x000040e7 
+ 00010369  0x0000173a store  0x00000005 , 0x000040da 
+ 00010370  0x0000173b ifetch  0x00000005 , 0x00000006 
+ 00010371  0x0000173c store  0x00000005 , 0x000040df 
+ 00010372  0x0000173d call  0x000028a9 
+ 00010373  0x0000173f fetch  0x00000001 , 0x00000031 
+ 00010374  0x00001740 rtnbit0  0x00000002 
+ 00010375  0x00001741 isolate1  0x00000001 , 0x00000021 
+ 00010376  0x00001742 branch  0x000028a1 , 0x00000001 
+ 00010377  0x00001743 rshift3  0x00000002 , 0x00000011 
+ 00010378  0x00001744 and  0x00000002 , 0x00000007 , 0x00000007 
+ 00010379  0x00001745 setarg  0x000040da 
+ 00010380  0x00001746 iadd  0x00000011 , 0x00000011 
+ 00010381  0x00001747 ifetch  0x00000001 , 0x00000011 
+ 00010382  0x00001748 qisolate0  0x0000003f 
+ 00010383  0x00001749 branch  0x00002892 , 0x00000001 
+ 00010384  0x0000174a deposit  0x00000002 
+ 00010385  0x0000174b branch  0x0000289e 
+ 00010386  0x0000174d fetch  0x00000001 , 0x000040e4 
+ 00010387  0x0000174e iforce  0x00000012 
+ 00010388  0x0000174f deposit  0x00000021 
+ 00010389  0x00001750 and_into  0x00000180 , 0x0000003f 
+ 00010390  0x00001751 rshift3  0x0000003f , 0x0000003f 
+ 00010391  0x00001752 iadd  0x00000017 , 0x0000003f 
+ 00010392  0x00001753 idiv  0x00000012 
+ 00010393  0x00001754 setarg  0x000040f2 
+ 00010394  0x00001755 call  0x00007f86 
+ 00010395  0x00001756 remainder  0x00000011 
+ 00010396  0x00001757 iadd  0x00000011 , 0x00000006 
+ 00010397  0x00001758 ifetch  0x00000001 , 0x00000006 
+ 00010398  0x0000175a store  0x00000001 , 0x000040e5 
+ 00010399  0x0000175b iforce  0x00000002 
+ 00010400  0x0000175c rtn 
+ 00010401  0x0000175f fetch  0x00000001 , 0x000040e5 
+ 00010402  0x00001760 iforce  0x00000002 
+ 00010403  0x00001761 rtn 
+ 00010404  0x00001764 fetch  0x00000001 , 0x00000031 
+ 00010405  0x00001765 set0  0x00000002 , 0x0000003f 
+ 00010406  0x00001766 set0  0x00000003 , 0x0000003f 
+ 00010407  0x00001767 store  0x00000001 , 0x00000031 
+ 00010408  0x00001768 rtn 
+ 00010409  0x0000176f bpatch  0x0000007f , 0x0000400f 
+ 00010410  0x00001770 arg  0x000040f2 , 0x00000005 
+ 00010411  0x00001771 force  0x0000000a , 0x00000039 
+ 00010412  0x00001772 call  0x00007ec6 
+ 00010413  0x00001773 arg  0x000040f2 , 0x00000005 
+ 00010414  0x00001774 force  0x00000000 , 0x00000013 
+ 00010415  0x00001775 force  0x00000002 , 0x00000007 
+ 00010416  0x00001777 fetch  0x00000005 , 0x000040da 
+ 00010417  0x00001778 iforce  0x00000002 
+ 00010418  0x00001779 compare  0x00000002 , 0x00000007 , 0x000000ff 
+ 00010419  0x0000177a branch  0x000028b5 , 0x00000001 
+ 00010420  0x0000177b rshift  0x00000002 , 0x00000002 
+ 00010421  0x0000177d isolate0  0x00000000 , 0x00000002 
+ 00010422  0x0000177e branch  0x000028b9 , 0x00000001 
+ 00010423  0x0000177f deposit  0x00000013 
+ 00010424  0x00001780 istore  0x00000001 , 0x00000005 
+ 00010425  0x00001782 rshift2  0x00000002 , 0x00000002 
+ 00010426  0x00001783 increase  0x00000002 , 0x00000013 
+ 00010427  0x00001784 compare  0x00000028 , 0x00000013 , 0x000000fe 
+ 00010428  0x00001785 nbranch  0x000028c2 , 0x00000001 
+ 00010429  0x00001786 fetch  0x00000005 , 0x000040df 
+ 00010430  0x00001787 iforce  0x00000002 
+ 00010431  0x00001788 compare  0x00000002 , 0x00000007 , 0x000000ff 
+ 00010432  0x00001789 branch  0x000028c2 , 0x00000001 
+ 00010433  0x0000178a rshift  0x00000002 , 0x00000002 
+ 00010434  0x0000178c sub  0x00000013 , 0x0000004e , 0x0000003e 
+ 00010435  0x0000178d branch  0x000028b5 , 0x00000002 
+ 00010436  0x0000178e force  0x00000001 , 0x00000013 
+ 00010437  0x0000178f increase  0xffffffff , 0x00000007 
+ 00010438  0x00001790 nbranch  0x000028b0 , 0x00000005 
+ 00010439  0x00001791 arg  0x000040f2 , 0x00000011 
+ 00010440  0x00001792 deposit  0x00000005 
+ 00010441  0x00001793 isub  0x00000011 , 0x0000003f 
+ 00010442  0x00001794 store  0x00000001 , 0x000040e4 
+ 00010443  0x00001795 rtn 
+ 00010444  0x00001798 bpatch  0x00000080 , 0x00004010 
+ 00010445  0x00001799 call  0x00002860 
+ 00010446  0x0000179a fetch  0x00000001 , 0x0000017f 
+ 00010447  0x0000179b bbit0  0x00000005 , 0x000028d1 
+ 00010448  0x0000179c fetcht  0x00000001 , 0x000004cc 
+ 00010449  0x0000179e branch  0x0000291f 
+ 00010450  0x000017a2 bpatch  0x00000081 , 0x00004010 
+ 00010451  0x000017a3 call  0x00002860 
+ 00010452  0x000017a4 fetch  0x00000001 , 0x0000017f 
+ 00010453  0x000017a5 bbit0  0x00000004 , 0x000028d7 
+ 00010454  0x000017a6 fetcht  0x00000001 , 0x000004cb 
+ 00010455  0x000017a8 branch  0x00002933 
+ 00010456  0x000017ac force  0x00000000 , 0x0000002d 
+ 00010457  0x000017ad fetch  0x00000003 , 0x000040a7 
+ 00010458  0x000017ae iforce  0x0000002c 
+ 00010459  0x000017af rtn 
+ 00010460  0x000017b2 bpatch  0x00000082 , 0x00004010 
+ 00010461  0x000017b3 fetch  0x00000001 , 0x000041d3 
+ 00010462  0x000017b4 icopy  0x0000002d 
+ 00010463  0x000017b5 fetch  0x00000003 , 0x000041d0 
+ 00010464  0x000017b6 icopy  0x0000002c 
+ 00010465  0x000017b7 rtn 
+ 00010466  0x000017ba bpatch  0x00000083 , 0x00004010 
+ 00010467  0x000017bb fetch  0x00000002 , 0x000040a4 
+ 00010468  0x000017bc icopy  0x0000002e 
+ 00010469  0x000017bd fetch  0x00000001 , 0x000040a3 
+ 00010470  0x000017be icopy  0x0000002d 
+ 00010471  0x000017bf fetch  0x00000003 , 0x000040a0 
+ 00010472  0x000017c0 icopy  0x0000002c 
+ 00010473  0x000017c1 rtn 
+ 00010474  0x000017c4 bpatch  0x00000084 , 0x00004010 
+ 00010475  0x000017c5 fetch  0x00000002 , 0x00000044 
+ 00010476  0x000017c6 icopy  0x0000002e 
+ 00010477  0x000017c7 fetch  0x00000001 , 0x00000043 
+ 00010478  0x000017c8 icopy  0x0000002d 
+ 00010479  0x000017c9 fetch  0x00000003 , 0x00000040 
+ 00010480  0x000017ca icopy  0x0000002c 
+ 00010481  0x000017cb rtn 
+ 00010482  0x000017cf bmark1  0x00000020 , 0x000028f5 
+ 00010483  0x000017d0 rtnmark0  0x0000001d 
+ 00010484  0x000017d1 rtnmark0  0x0000001f 
+ 00010485  0x000017d3 and_into  0xffffff00 , 0x0000002c 
+ 00010486  0x000017d4 pulse  0x00000015 
+ 00010487  0x000017d5 nop  0x00000020 
+ 00010488  0x000017d6 rtn 
+ 00010489  0x000017da bpatch  0x00000085 , 0x00004010 
+ 00010490  0x000017db branch  0x0000290a , 0x00000021 
+ 00010491  0x000017dc jam  0x000000d4 , 0x00008955 
+ 00010492  0x000017dd nop  0x00000004 
+ 00010493  0x000017de jam  0x000000d2 , 0x00008955 
+ 00010494  0x000017df nop  0x00000004 
+ 00010495  0x000017e0 jam  0x000000d1 , 0x00008955 
+ 00010496  0x000017e1 nop  0x00000004 
+ 00010497  0x000017e2 fetch  0x00000001 , 0x000041de 
+ 00010498  0x000017e3 beq  0x00000000 , 0x00002908 
+ 00010499  0x000017e4 beq  0x00000001 , 0x00002915 
+ 00010500  0x000017e5 beq  0x00000002 , 0x00002908 
+ 00010501  0x000017e6 beq  0x00000003 , 0x00002915 
+ 00010502  0x000017e7 beq  0x00000004 , 0x00002915 
+ 00010503  0x000017e8 beq  0x00000020 , 0x00002915 
+ 00010504  0x000017eb jam  0x000000d0 , 0x00008955 
+ 00010505  0x000017ec jam  0x000000e0 , 0x00008956 
+ 00010506  0x000017ee force  0x00000000 , 0x00000015 
+ 00010507  0x000017ef disable  0x00000021 
+ 00010508  0x000017f0 disable  0x00000020 
+ 00010509  0x000017f1 pulse  0x0000001e 
+ 00010510  0x000017f2 jam  0x00000000 , 0x00008902 
+ 00010511  0x000017f3 jam  0x00000000 , 0x00008901 
+ 00010512  0x000017f4 jam  0x00000000 , 0x00008900 
+ 00010513  0x000017f5 jam  0x00000000 , 0x00008903 
+ 00010514  0x000017f6 jam  0x00000070 , 0x00008904 
+ 00010515  0x000017f7 jam  0x00000000 , 0x00008906 
+ 00010516  0x000017f8 rtn 
+ 00010517  0x000017fe jam  0x000000d0 , 0x00008955 
+ 00010518  0x000017ff jam  0x000000c0 , 0x00008956 
+ 00010519  0x00001800 branch  0x0000290a 
+ 00010520  0x00001803 bpatch  0x00000086 , 0x00004010 
+ 00010521  0x00001804 jam  0x00000000 , 0x00008902 
+ 00010522  0x00001805 jam  0x00000000 , 0x00008901 
+ 00010523  0x00001806 jam  0x00000018 , 0x00008900 
+ 00010524  0x00001807 jam  0x000000a7 , 0x00008903 
+ 00010525  0x00001808 jam  0x0000007f , 0x00008904 
+ 00010526  0x00001809 rtn 
+ 00010527  0x0000180c bpatch  0x00000087 , 0x00004010 
+ 00010528  0x0000180e storet  0x00000001 , 0x00000017 
+ 00010529  0x0000180f add  0x00000002 , 0x00000004 , 0x00000011 
+ 00010530  0x00001810 jam  0x00000007 , 0x0000896d 
+ 00010531  0x00001811 branch  0x00002981 
+ 00010532  0x00001813 bpatch  0x00000088 , 0x00004011 
+ 00010533  0x00001814 jam  0x000000cf , 0x00008901 
+ 00010534  0x00001815 nop  0x0000000a 
+ 00010535  0x00001816 jam  0x000000ff , 0x00008900 
+ 00010536  0x00001817 jam  0x000000af , 0x00008903 
+ 00010537  0x00001818 jam  0x000000ff , 0x00008904 
+ 00010538  0x00001819 nop  0x0000000a 
+ 00010539  0x0000181a jam  0x000000a0 , 0x00008902 
+ 00010540  0x0000181b rtn 
+ 00010541  0x0000181e fetch  0x00000001 , 0x000041e0 
+ 00010542  0x0000181f branch  0x00002931 , 0x00000034 
+ 00010543  0x00001821 add  0x00000002 , 0x00000002 , 0x00000011 
+ 00010544  0x00001822 rtn 
+ 00010545  0x00001824 add  0x00000002 , 0x00000000 , 0x00000011 
+ 00010546  0x00001825 rtn 
+ 00010547  0x00001828 bpatch  0x00000089 , 0x00004011 
+ 00010548  0x00001829 storet  0x00000001 , 0x00000017 
+ 00010549  0x0000182a call  0x0000292d 
+ 00010550  0x0000182b call  0x00002981 
+ 00010551  0x0000182c setarg  0x00000500 
+ 00010552  0x0000182d call  0x00002a8f 
+ 00010553  0x0000182f jam  0x00000001 , 0x00008906 
+ 00010554  0x00001830 jam  0x0000003c , 0x00008900 
+ 00010555  0x00001831 jam  0x000000e0 , 0x00008901 
+ 00010556  0x00001832 jam  0x00000012 , 0x0000896d 
+ 00010557  0x00001833 nop  0x0000000a 
+ 00010558  0x00001834 jam  0x00000001 , 0x00008902 
+ 00010559  0x00001835 jam  0x0000003d , 0x00008902 
+ 00010560  0x00001836 nop  0x0000000a 
+ 00010561  0x00001837 jam  0x000000b7 , 0x00008903 
+ 00010562  0x00001838 nop  0x0000000a 
+ 00010563  0x00001839 jam  0x0000007f , 0x00008902 
+ 00010564  0x0000183b fetch  0x00000001 , 0x000041de 
+ 00010565  0x0000183c beq  0x00000000 , 0x0000294b 
+ 00010566  0x0000183d beq  0x00000001 , 0x0000294f 
+ 00010567  0x0000183e beq  0x00000002 , 0x00002953 
+ 00010568  0x0000183f beq  0x00000003 , 0x00002957 
+ 00010569  0x00001840 beq  0x00000004 , 0x0000295b 
+ 00010570  0x00001841 beq  0x00000020 , 0x0000295f 
+ 00010571  0x00001843 jam  0x000000f0 , 0x00008956 
+ 00010572  0x00001844 call  0x00002965 
+ 00010573  0x00001845 jam  0x000000d8 , 0x00008955 
+ 00010574  0x00001846 rtn 
+ 00010575  0x00001849 jam  0x000000df , 0x00008956 
+ 00010576  0x0000184a call  0x00002965 
+ 00010577  0x0000184b jam  0x000000df , 0x00008955 
+ 00010578  0x0000184c rtn 
+ 00010579  0x0000184f jam  0x000000ff , 0x00008956 
+ 00010580  0x00001850 call  0x00002965 
+ 00010581  0x00001851 jam  0x000000df , 0x00008955 
+ 00010582  0x00001852 rtn 
+ 00010583  0x00001854 jam  0x000000ce , 0x00008956 
+ 00010584  0x00001855 call  0x00002965 
+ 00010585  0x00001856 jam  0x000000d8 , 0x00008955 
+ 00010586  0x00001857 rtn 
+ 00010587  0x0000185a jam  0x000000cb , 0x00008956 
+ 00010588  0x0000185b call  0x00002965 
+ 00010589  0x0000185c jam  0x000000d8 , 0x00008955 
+ 00010590  0x0000185d rtn 
+ 00010591  0x00001860 jam  0x000000d0 , 0x00008955 
+ 00010592  0x00001861 jam  0x000000c0 , 0x00008956 
+ 00010593  0x00001862 jam  0x0000004c , 0x00008957 
+ 00010594  0x00001863 jam  0x0000006c , 0x00008958 
+ 00010595  0x00001864 jam  0x00000050 , 0x00008959 
+ 00010596  0x00001865 rtn 
+ 00010597  0x00001868 nop  0x00000004 
+ 00010598  0x00001869 jam  0x000000d1 , 0x00008955 
+ 00010599  0x0000186a nop  0x00000004 
+ 00010600  0x0000186b jam  0x000000d2 , 0x00008955 
+ 00010601  0x0000186c nop  0x00000004 
+ 00010602  0x0000186d jam  0x000000d4 , 0x00008955 
+ 00010603  0x0000186e rtn 
+ 00010604  0x00001872 jam  0x00000006 , 0x00008042 
+ 00010605  0x00001874 fetch  0x00000002 , 0x000040c3 
+ 00010606  0x00001875 bbit0  0x0000000e , 0x0000296d 
+ 00010607  0x00001876 iforce  0x00000006 
+ 00010608  0x00001877 arg  0x00008900 , 0x00000002 
+ 00010609  0x00001879 ifetch  0x00000001 , 0x00000006 
+ 00010610  0x0000187a beq  0x000000ff , 0x00002977 
+ 00010611  0x0000187b ior  0x00000002 , 0x00000005 
+ 00010612  0x0000187c ifetch  0x00000001 , 0x00000006 
+ 00010613  0x0000187d istore  0x00000001 , 0x00000005 
+ 00010614  0x0000187e branch  0x00002971 
+ 00010615  0x00001880 bpatch  0x0000008a , 0x00004011 
+ 00010616  0x00001881 call  0x00002be5 
+ 00010617  0x00001882 call  0x000029c9 
+ 00010618  0x00001884 setarg  0x000007d0 
+ 00010619  0x00001885 iadd  0x00000022 , 0x0000003f 
+ 00010620  0x00001886 store  0x00000004 , 0x00000169 
+ 00010621  0x00001887 set1  0x00000003 , 0x00000015 
+ 00010622  0x00001888 force  0x00000000 , 0x00000015 
+ 00010623  0x00001889 ncall  0x00002998 , 0x0000002b 
+ 00010624  0x0000188a branch  0x000029ab 
+ 00010625  0x0000188e bpatch  0x0000008b , 0x00004011 
+ 00010626  0x0000188f setarg  0x00000960 
+ 00010627  0x00001890 iadd  0x00000011 , 0x00000002 
+ 00010628  0x00001891 fetch  0x00000001 , 0x000040bd 
+ 00010629  0x00001892 jam  0x00000004 , 0x0000895f 
+ 00010630  0x00001893 imul32  0x00000002 , 0x0000003f 
+ 00010631  0x00001894 fetcht  0x00000001 , 0x000040be 
+ 00010632  0x00001895 idiv  0x00000002 
+ 00010633  0x00001896 call  0x00007f86 
+ 00010634  0x00001897 quotient  0x00000011 
+ 00010635  0x00001898 remainder  0x0000003f 
+ 00010636  0x00001899 lshift16  0x0000003f , 0x0000003f 
+ 00010637  0x0000189a lshift4  0x0000003f , 0x0000003f 
+ 00010638  0x0000189b idiv  0x00000002 
+ 00010639  0x0000189c call  0x00007f86 
+ 00010640  0x0000189d quotient  0x0000003f 
+ 00010641  0x0000189e lshift8  0x0000003f , 0x0000003f 
+ 00010642  0x0000189f lshift  0x0000003f , 0x0000003f 
+ 00010643  0x000018a0 ior  0x00000011 , 0x0000003f 
+ 00010644  0x000018a1 hstore  0x00000004 , 0x00008960 
+ 00010645  0x000018a2 jam  0x00000044 , 0x0000895f 
+ 00010646  0x000018a3 jam  0x000000c4 , 0x0000895f 
+ 00010647  0x000018a4 rtn 
+ 00010648  0x000018a8 bpatch  0x0000008c , 0x00004011 
+ 00010649  0x000018a9 jam  0x00000002 , 0x00008906 
+ 00010650  0x000018aa setarg  0x0003d090 
+ 00010651  0x000018ab call  0x00002a8f 
+ 00010652  0x000018ac jam  0x0000007f , 0x00008900 
+ 00010653  0x000018ad nop  0x00000082 
+ 00010654  0x000018ae jam  0x00000030 , 0x00008952 
+ 00010655  0x000018af jam  0x000000d0 , 0x00008901 
+ 00010656  0x000018b0 jam  0x00000070 , 0x00008952 
+ 00010657  0x000018b1 jam  0x000000f0 , 0x00008952 
+ 00010658  0x000018b2 force  0x00000032 , 0x00000039 
+ 00010659  0x000018b4 hfetch  0x00000001 , 0x00008980 
+ 00010660  0x000018b5 bbit1  0x00000005 , 0x000029a6 
+ 00010661  0x000018b6 loop  0x000029a3 
+ 00010662  0x000018b8 store  0x00000001 , 0x000040ce 
+ 00010663  0x000018b9 jam  0x00000000 , 0x00008901 
+ 00010664  0x000018ba jam  0x00000000 , 0x00008900 
+ 00010665  0x000018bb jam  0x00000000 , 0x00008906 
+ 00010666  0x000018bc rtn 
+ 00010667  0x000018bf bpatch  0x0000008d , 0x00004011 
+ 00010668  0x000018c0 fetch  0x00000001 , 0x000040ce 
+ 00010669  0x000018c1 set1  0x00000005 , 0x0000003f 
+ 00010670  0x000018c2 hstore  0x00000001 , 0x00008952 
+ 00010671  0x000018c3 hfetcht  0x00000001 , 0x00008950 
+ 00010672  0x000018c4 and_into  0x00000007 , 0x00000002 
+ 00010673  0x000018c5 lshift3  0x0000003f , 0x0000003f 
+ 00010674  0x000018c6 ior  0x00000002 , 0x0000003f 
+ 00010675  0x000018c7 hstore  0x00000001 , 0x00008950 
+ 00010676  0x000018c8 hfetch  0x00000001 , 0x00008951 
+ 00010677  0x000018c9 set0  0x00000000 , 0x0000003f 
+ 00010678  0x000018ca hstore  0x00000001 , 0x00008951 
+ 00010679  0x000018cb hfetch  0x00000001 , 0x00008952 
+ 00010680  0x000018cc set0  0x00000005 , 0x0000003f 
+ 00010681  0x000018cd hstore  0x00000001 , 0x00008952 
+ 00010682  0x000018ce rtn 
+ 00010683  0x000018d1 bpatch  0x0000008e , 0x00004011 
+ 00010684  0x000018d2 hfetch  0x00000002 , 0x00008981 
+ 00010685  0x000018d3 rshift4  0x0000003f , 0x0000003f 
+ 00010686  0x000018d4 rshift3  0x0000003f , 0x0000003f 
+ 00010687  0x000018d5 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00010688  0x000018d7 and_into  0x000000ff , 0x0000003f 
+ 00010689  0x000018d8 div  0x0000003f , 0x0000000a 
+ 00010690  0x000018d9 call  0x00007f86 
+ 00010691  0x000018da quotient  0x0000003f 
+ 00010692  0x000018db lshift4  0x0000003f , 0x0000003f 
+ 00010693  0x000018dc remainder  0x00000002 
+ 00010694  0x000018dd ior  0x00000002 , 0x0000003f 
+ 00010695  0x000018de store  0x00000001 , 0x00000018 
+ 00010696  0x000018df rtn 
+ 00010697  0x000018e3 jam  0x00000006 , 0x00008042 
+ 00010698  0x000018e4 hfetch  0x00000001 , 0x0000896b 
+ 00010699  0x000018e5 set0  0x00000004 , 0x0000003f 
+ 00010700  0x000018e6 set0  0x00000005 , 0x0000003f 
+ 00010701  0x000018e7 hstore  0x00000001 , 0x0000896b 
+ 00010702  0x000018e8 jam  0x00000000 , 0x00008905 
+ 00010703  0x000018e9 jam  0x00000000 , 0x00008904 
+ 00010704  0x000018ea jam  0x00000070 , 0x00008904 
+ 00010705  0x000018eb jam  0x000000ff , 0x00008905 
+ 00010706  0x000018ec hfetch  0x00000001 , 0x0000896b 
+ 00010707  0x000018ed set1  0x00000004 , 0x0000003f 
+ 00010708  0x000018ee set1  0x00000005 , 0x0000003f 
+ 00010709  0x000018ef hstore  0x00000001 , 0x0000896b 
+ 00010710  0x000018f0 call  0x000029e9 
+ 00010711  0x000018f1 hfetch  0x00000001 , 0x00008968 
+ 00010712  0x000018f2 set1  0x00000007 , 0x0000003f 
+ 00010713  0x000018f3 hstore  0x00000001 , 0x00008968 
+ 00010714  0x000018f4 set0  0x00000007 , 0x0000003f 
+ 00010715  0x000018f5 hstore  0x00000001 , 0x00008968 
+ 00010716  0x000018f6 set1  0x00000007 , 0x0000003f 
+ 00010717  0x000018f7 hstore  0x00000001 , 0x00008968 
+ 00010718  0x000018f8 jam  0x00000005 , 0x00008042 
+ 00010719  0x000018f9 nop  0x00000001 
+ 00010720  0x000018fa jam  0x00000004 , 0x00008042 
+ 00010721  0x000018fb hfetch  0x00000001 , 0x0000896b 
+ 00010722  0x000018fc and_into  0x000000cf , 0x0000003f 
+ 00010723  0x000018fd hstore  0x00000001 , 0x0000896b 
+ 00010724  0x000018fe or_into  0x00000030 , 0x0000003f 
+ 00010725  0x000018ff hstore  0x00000001 , 0x0000896b 
+ 00010726  0x00001900 rtn 
+ 00010727  0x00001904 setarg  0x00000f0f 
+ 00010728  0x00001905 branch  0x00002c18 
+ 00010729  0x00001908 setarg  0x0000080f 
+ 00010730  0x00001909 branch  0x00002c18 
+ 00010731  0x0000190e bpatch  0x0000008f , 0x00004011 
+ 00010732  0x0000190f call  0x00002924 
+ 00010733  0x00001910 disable  0x00000020 
+ 00010734  0x00001911 enable  0x00000021 
+ 00010735  0x00001912 pulse  0x00000016 
+ 00010736  0x00001913 rtn 
+ 00010737  0x00001916 bpatch  0x00000090 , 0x00004012 
+ 00010738  0x00001917 fetch  0x00000001 , 0x0000004c 
+ 00010739  0x00001918 isolate1  0x00000002 , 0x0000003f 
+ 00010740  0x00001919 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00010741  0x0000191a hstore  0x00000001 , 0x00008011 
+ 00010742  0x0000191b arg  0x00000062 , 0x00000006 
+ 00010743  0x0000191c ifetch  0x00000009 , 0x00000006 
+ 00010744  0x0000191d iforce  0x00000032 
+ 00010745  0x0000191e ifetch  0x00000007 , 0x00000006 
+ 00010746  0x0000191f iforce  0x00000033 
+ 00010747  0x00001920 fetch  0x00000001 , 0x00000054 
+ 00010748  0x00001921 add  0x0000003f , 0xffffffff , 0x00000034 
+ 00010749  0x00001922 pulse  0x0000001a 
+ 00010750  0x00001923 rtn 
+ 00010751  0x00001926 deposit  0x0000001a 
+ 00010752  0x00001927 store  0x00000006 , 0x0000009a 
+ 00010753  0x00001928 disable  0x0000000d 
+ 00010754  0x00001929 nbranch  0x000028f9 , 0x00000018 
+ 00010755  0x0000192a arg  0x000003bb , 0x00000029 
+ 00010756  0x0000192b increase  0x00000001 , 0x00000028 
+ 00010757  0x0000192c and_into  0x000001fc , 0x00000028 
+ 00010758  0x0000192d rtn 
+ 00010759  0x00001932 enable  0x0000000d 
+ 00010760  0x00001934 correlate  0x0000003e , 0x00000017 
+ 00010761  0x00001935 branch  0x000029ff , 0x00000018 
+ 00010762  0x00001936 compare  0x00000002 , 0x00000028 , 0x00000002 
+ 00010763  0x00001937 nbranch  0x00002a08 , 0x00000001 
+ 00010764  0x00001938 branch  0x000029ff 
+ 00010765  0x0000193b bpatch  0x00000091 , 0x00004012 
+ 00010766  0x0000193c arg  0x00000600 , 0x0000000b 
+ 00010767  0x0000193d enable  0x0000000d 
+ 00010768  0x0000193e correlate  0x00000023 , 0x00000026 
+ 00010769  0x0000193f disable  0x0000000d 
+ 00010770  0x00001940 nbranch  0x000028f9 , 0x00000018 
+ 00010771  0x00001941 rtn 
+ 00010772  0x00001944 bpatch  0x00000092 , 0x00004012 
+ 00010773  0x00001945 enable  0x0000000d 
+ 00010774  0x00001946 correlate  0x0000003e , 0x00000003 
+ 00010775  0x00001947 disable  0x0000000d 
+ 00010776  0x00001948 nbranch  0x000028f9 , 0x00000018 
+ 00010777  0x00001949 arg  0x000003bb , 0x00000029 
+ 00010778  0x0000194a and_into  0x000001fc , 0x00000028 
+ 00010779  0x0000194b rtn 
+ 00010780  0x0000194f bpatch  0x00000093 , 0x00004012 
+ 00010781  0x00001950 iforce  0x00000011 
+ 00010782  0x00001951 deposit  0x00000021 
+ 00010783  0x00001952 iadd  0x00000002 , 0x0000000b 
+ 00010784  0x00001953 copy  0x0000000b , 0x0000003f 
+ 00010785  0x00001954 store  0x00000004 , 0x000040ca 
+ 00010786  0x00001955 deposit  0x00000011 
+ 00010787  0x00001956 rtn 
+ 00010788  0x0000195a copy  0x0000003f , 0x00000002 
+ 00010789  0x0000195b bpatch  0x00000094 , 0x00004012 
+ 00010790  0x0000195c copy  0x00000002 , 0x0000003f 
+ 00010791  0x0000195d call  0x00007f50 
+ 00010792  0x0000195e lshift16  0x00000021 , 0x0000003f 
+ 00010793  0x0000195f set1  0x0000002c , 0x0000003f 
+ 00010794  0x00001960 call  0x00007f39 
+ 00010795  0x00001961 set0  0x0000002c , 0x0000003f 
+ 00010796  0x00001962 call  0x00002a77 
+ 00010797  0x00001963 call  0x00007f39 
+ 00010798  0x00001964 rtn  0x00000028 
+ 00010799  0x00001965 call  0x00007f43 
+ 00010800  0x00001966 iforce  0x0000001b 
+ 00010801  0x00001967 until  0x0000003e , 0x00000003 
+ 00010802  0x00001968 rtn 
+ 00010803  0x0000196c bpatch  0x00000095 , 0x00004012 
+ 00010804  0x0000196d branch  0x00002a38 , 0x00000030 
+ 00010805  0x0000196e until  0x00000029 , 0x00000026 
+ 00010806  0x00001970 copy  0x00000028 , 0x00000002 
+ 00010807  0x00001971 branch  0x00002a3b 
+ 00010808  0x00001973 branch  0x00002a3a , 0x0000002e 
+ 00010809  0x00001974 until  0x00000023 , 0x00000026 
+ 00010810  0x00001976 copy  0x00000022 , 0x00000002 
+ 00010811  0x00001978 branch  0x00002a47 , 0x00000028 
+ 00010812  0x00001979 compare  0x00000001 , 0x00000002 , 0x00000003 
+ 00010813  0x0000197a nbranch  0x00002a33 , 0x00000001 
+ 00010814  0x0000197c bpatch  0x00000096 , 0x00004012 
+ 00010815  0x0000197d fetch  0x00000001 , 0x00000030 
+ 00010816  0x0000197e rtnbit0  0x00000000 
+ 00010817  0x0000197f fetch  0x00000004 , 0x000040ca 
+ 00010818  0x00001980 isub  0x00000002 , 0x0000003f 
+ 00010819  0x00001981 nrtn  0x00000002 
+ 00010820  0x00001982 sub  0x0000003f , 0x000000ff , 0x0000003e 
+ 00010821  0x00001983 branch  0x00002a33 , 0x00000002 
+ 00010822  0x00001984 rtn 
+ 00010823  0x00001986 compare  0x00000003 , 0x00000002 , 0x00000003 
+ 00010824  0x00001987 nbranch  0x00002a33 , 0x00000001 
+ 00010825  0x00001988 branch  0x00002a3e 
+ 00010826  0x0000198b bpatch  0x00000097 , 0x00004012 
+ 00010827  0x0000198c arg  0x00000600 , 0x0000000b 
+ 00010828  0x0000198d branch  0x00002a33 
+ 00010829  0x00001990 disable  0x00000028 
+ 00010830  0x00001991 branch  0x00002a4a 
+ 00010831  0x00001994 enable  0x00000028 
+ 00010832  0x00001995 branch  0x00002a4a 
+ 00010833  0x00001998 bpatch  0x00000098 , 0x00004013 
+ 00010834  0x00001999 call  0x000029f1 
+ 00010835  0x0000199a disable  0x00000021 
+ 00010836  0x0000199b enable  0x00000020 
+ 00010837  0x0000199c rtn 
+ 00010838  0x000019a1 bpatch  0x00000099 , 0x00004013 
+ 00010839  0x000019a2 arg  0x00000e43 , 0x0000000b 
+ 00010840  0x000019a3 until  0x00000023 , 0x00000026 
+ 00010841  0x000019a4 pulse  0x00000016 
+ 00010842  0x000019a5 rtn 
+ 00010843  0x000019a8 bpatch  0x0000009a , 0x00004013 
+ 00010844  0x000019a9 arg  0x00000d00 , 0x0000000b 
+ 00010845  0x000019aa until  0x00000023 , 0x00000026 
+ 00010846  0x000019ab rtn 
+ 00010847  0x000019af bpatch  0x0000009b , 0x00004013 
+ 00010848  0x000019b0 arg  0x00000e43 , 0x0000000b 
+ 00010849  0x000019b1 until  0x00000029 , 0x00000026 
+ 00010850  0x000019b2 pulse  0x00000016 
+ 00010851  0x000019b3 rtn 
+ 00010852  0x000019b6 bpatch  0x0000009c , 0x00004013 
+ 00010853  0x000019b7 preload  0x00000009 
+ 00010854  0x000019b8 enable  0x0000001d 
+ 00010855  0x000019b9 set1  0x00000000 , 0x00000015 
+ 00010856  0x000019ba inject  0x00000003 , 0x00000048 
+ 00010857  0x000019bb disable  0x0000001d 
+ 00010858  0x000019bc rtn 
+ 00010859  0x000019c0 copy  0x00000025 , 0x00000002 
+ 00010860  0x000019c1 or_into  0x00000060 , 0x00000002 
+ 00010861  0x000019c2 copy  0x00000002 , 0x0000000e 
+ 00010862  0x000019c3 rtn 
+ 00010863  0x000019c9 bpatch  0x0000009d , 0x00004013 
+ 00010864  0x000019ca fetch  0x00000001 , 0x00004090 
+ 00010865  0x000019cb increase  0x00000001 , 0x0000003f 
+ 00010866  0x000019cc bne  0x00000007 , 0x00002a74 
+ 00010867  0x000019cd force  0x00000001 , 0x0000003f 
+ 00010868  0x000019cf store  0x00000001 , 0x00004090 
+ 00010869  0x000019d0 iforce  0x00000004 
+ 00010870  0x000019d1 rtn 
+ 00010871  0x000019d4 copy  0x00000019 , 0x00000002 
+ 00010872  0x000019d5 rtn  0x00000029 
+ 00010873  0x000019d6 copy  0x0000001a , 0x00000002 
+ 00010874  0x000019d7 rtn 
+ 00010875  0x000019da deposit  0x00000022 
+ 00010876  0x000019db rtn  0x00000029 
+ 00010877  0x000019dc deposit  0x00000028 
+ 00010878  0x000019dd rtn 
+ 00010879  0x000019e1 bpatch  0x0000009e , 0x00004013 
+ 00010880  0x000019e2 fetcht  0x00000004 , 0x0000004d 
+ 00010881  0x000019e3 call  0x00002a7b 
+ 00010882  0x000019e4 isub  0x00000002 , 0x0000000b 
+ 00010883  0x000019e5 deposit  0x0000000b 
+ 00010884  0x000019e6 fetcht  0x00000002 , 0x00000051 
+ 00010885  0x000019e7 lshift  0x00000002 , 0x00000002 
+ 00010886  0x000019e8 isub  0x00000002 , 0x0000003f 
+ 00010887  0x000019e9 rtn 
+ 00010888  0x000019ec bpatch  0x0000009f , 0x00004013 
+ 00010889  0x000019ed call  0x00002a7b 
+ 00010890  0x000019ee store  0x00000004 , 0x0000004d 
+ 00010891  0x000019ef rtn 
+ 00010892  0x000019f2 bpatch  0x000000a0 , 0x00004014 
+ 00010893  0x000019f3 branch  0x00002a8c 
+ 00010894  0x000019f6 branch  0x00002a8e 
+ 00010895  0x000019f9 rtn  0x00000034 
+ 00010896  0x000019fb rshift  0x0000003f , 0x0000003f 
+ 00010897  0x000019fc increase  0xfffffffd , 0x0000003f 
+ 00010898  0x000019fe increase  0xffffffff , 0x0000003f 
+ 00010899  0x000019ff nbranch  0x00002a92 , 0x00000005 
+ 00010900  0x00001a00 force  0x00000000 , 0x0000003f 
+ 00010901  0x00001a01 rtn 
+ 00010902  0x00001a07 arg  0x00000010 , 0x00000039 
+ 00010903  0x00001a08 arg  0x00000000 , 0x00000005 
+ 00010904  0x00001a09 call  0x00007ec6 
+ 00010905  0x00001a0a arg  0x0000043f , 0x00000005 
+ 00010906  0x00001a0b arg  0x0000000a , 0x00000039 
+ 00010907  0x00001a0c call  0x00007ec6 
+ 00010908  0x00001a0d jam  0x00000000 , 0x000009b2 
+ 00010909  0x00001a0e jam  0x00000000 , 0x00000a99 
+ 00010910  0x00001a0f jam  0x00000000 , 0x0000048c 
+ 00010911  0x00001a10 jam  0x00000000 , 0x0000017f 
+ 00010912  0x00001a11 jam  0x00000000 , 0x000004d1 
+ 00010913  0x00001a12 bpatch  0x000000a1 , 0x00004014 
+ 00010914  0x00001a13 jam  0x00000000 , 0x0000016d 
+ 00010915  0x00001a14 jam  0x00000000 , 0x00000151 
+ 00010916  0x00001a15 jam  0x00000000 , 0x0000015c 
+ 00010917  0x00001a16 setarg  0x009e8b33 
+ 00010918  0x00001a17 store  0x00000003 , 0x000040a7 
+ 00010919  0x00001a18 setarg  0x00000153 
+ 00010920  0x00001a19 store  0x00000002 , 0x00000083 
+ 00010921  0x00001a1a jam  0x0000001e , 0x00000085 
+ 00010922  0x00001a1b jam  0x00000001 , 0x00000086 
+ 00010923  0x00001a1c jam  0x00000007 , 0x00000088 
+ 00010924  0x00001a1d setarg  0x0012e904 
+ 00010925  0x00001a1e store  0x00000003 , 0x00000080 
+ 00010926  0x00001a23 jam  0x00000060 , 0x00000090 
+ 00010927  0x00001a24 jam  0x00000005 , 0x000040d0 
+ 00010928  0x00001a25 jam  0x00000002 , 0x00000014 
+ 00010929  0x00001a26 fetch  0x00000001 , 0x0000465a 
+ 00010930  0x00001a27 ncall  0x000074c1 , 0x00000034 
+ 00010931  0x00001a28 fetch  0x00000001 , 0x000044be 
+ 00010932  0x00001a29 ncall  0x00007518 , 0x00000034 
+ 00010933  0x00001a2a bpatch  0x000000a2 , 0x00004014 
+ 00010934  0x00001a2b rtn  0x0000002b 
+ 00010935  0x00001a2c setarg  0x00000000 
+ 00010936  0x00001a2d store  0x00000002 , 0x000041dc 
+ 00010937  0x00001a2e rshift  0x00000022 , 0x0000003f 
+ 00010938  0x00001a2f store  0x00000004 , 0x00004094 
+ 00010939  0x00001a30 rtn 
+ 00010940  0x00001a38 setarg  0x0000ee21 
+ 00010941  0x00001a39 hstore  0x00000002 , 0x00008050 
+ 00010942  0x00001a3a hfetch  0x00000004 , 0x0000811c 
+ 00010943  0x00001a3b store  0x00000004 , 0x00000abe 
+ 00010944  0x00001a3c hfetch  0x00000001 , 0x0000813e 
+ 00010945  0x00001a3d store  0x00000001 , 0x00000abd 
+ 00010946  0x00001a3e bbit0  0x00000003 , 0x0000645b 
+ 00010947  0x00001a3f enable  0x0000002b 
+ 00010948  0x00001a40 bbit0  0x00000007 , 0x00002acc 
+ 00010949  0x00001a41 disable  0x0000002b 
+ 00010950  0x00001a42 deposit  0x00000027 
+ 00010951  0x00001a43 nbranch  0x00002acc , 0x00000034 
+ 00010952  0x00001a44 hfetch  0x00000001 , 0x0000813b 
+ 00010953  0x00001a45 bbit1  0x00000002 , 0x00002acc 
+ 00010954  0x00001a46 arg  0xffffffff , 0x00000002 
+ 00010955  0x00001a47 branch  0x00002b3c 
+ 00010956  0x00001a49 hfetch  0x00000003 , 0x0000813c 
+ 00010957  0x00001a4a hstore  0x00000003 , 0x0000804c 
+ 00010958  0x00001a4b ifetch  0x00000001 , 0x00000006 
+ 00010959  0x00001a4c or_into  0x000000ef , 0x0000003f 
+ 00010960  0x00001a4d istore  0x00000001 , 0x00000005 
+ 00010961  0x00001a4e call  0x00002c23 
+ 00010962  0x00001a4f hfetch  0x00000001 , 0x0000804f 
+ 00010963  0x00001a50 set1  0x00000004 , 0x0000003f 
+ 00010964  0x00001a51 hstore  0x00000001 , 0x0000804f 
+ 00010965  0x00001a52 call  0x00002c23 
+ 00010966  0x00001a53 call  0x00002adf , 0x0000002b 
+ 00010967  0x00001a54 hfetch  0x00000001 , 0x0000804e 
+ 00010968  0x00001a55 set0  0x00000003 , 0x0000003f 
+ 00010969  0x00001a56 hstore  0x00000001 , 0x0000804e 
+ 00010970  0x00001a57 call  0x00002c23 
+ 00010971  0x00001a58 nbranch  0x0000645b , 0x0000002b 
+ 00010972  0x00001a59 rtnmark0  0x0000002b 
+ 00010973  0x00001a5a jam  0x00000008 , 0x00008006 
+ 00010974  0x00001a5b rtn 
+ 00010975  0x00001a5e fetch  0x00000001 , 0x00004198 
+ 00010976  0x00001a5f hstore  0x00000001 , 0x00008086 
+ 00010977  0x00001a60 fetch  0x00000003 , 0x0000418d 
+ 00010978  0x00001a61 hstore  0x00000003 , 0x00008080 
+ 00010979  0x00001a62 fetch  0x00000004 , 0x00004181 
+ 00010980  0x00001a63 hstore  0x00000004 , 0x00008074 
+ 00010981  0x00001a64 fetch  0x00000004 , 0x0000417d 
+ 00010982  0x00001a65 hstore  0x00000004 , 0x00008070 
+ 00010983  0x00001a66 fetch  0x00000008 , 0x00004185 
+ 00010984  0x00001a67 hstore  0x00000008 , 0x00008078 
+ 00010985  0x00001a68 fetch  0x00000008 , 0x00004190 
+ 00010986  0x00001a69 iforce  0x00000000 
+ 00010987  0x00001a6a hfetch  0x00000008 , 0x00008140 
+ 00010988  0x00001a6b store  0x00000008 , 0x000000a1 
+ 00010989  0x00001a6c call  0x000064ca 
+ 00010990  0x00001a6d rtn 
+ 00010991  0x00001a70 deposit  0x00000000 
+ 00010992  0x00001a71 store  0x00000008 , 0x00004190 
+ 00010993  0x00001a72 hfetch  0x00000008 , 0x00008070 
+ 00010994  0x00001a73 store  0x00000008 , 0x0000417d 
+ 00010995  0x00001a74 ifetch  0x00000008 , 0x00000006 
+ 00010996  0x00001a75 istore  0x00000008 , 0x00000005 
+ 00010997  0x00001a76 hfetch  0x00000003 , 0x00008080 
+ 00010998  0x00001a77 store  0x00000003 , 0x0000418d 
+ 00010999  0x00001a78 hfetch  0x00000001 , 0x00008086 
+ 00011000  0x00001a79 store  0x00000001 , 0x00004198 
+ 00011001  0x00001a7a branch  0x00002c29 
+ 00011002  0x00001a7d hfetch  0x00000001 , 0x00008063 
+ 00011003  0x00001a7e nbranch  0x00002b00 , 0x00000034 
+ 00011004  0x00001a7f fetch  0x00000003 , 0x0000416f 
+ 00011005  0x00001a80 nrtn  0x00000034 
+ 00011006  0x00001a81 jam  0x000000c0 , 0x00008063 
+ 00011007  0x00001a82 jam  0x00000080 , 0x00008006 
+ 00011008  0x00001a84 hfetch  0x00000001 , 0x0000812d 
+ 00011009  0x00001a85 rtnbit0  0x00000001 
+ 00011010  0x00001a86 hfetch  0x00000003 , 0x00008149 
+ 00011011  0x00001a87 store  0x00000003 , 0x0000416f 
+ 00011012  0x00001a88 rtn 
+ 00011013  0x00001a8d bpatch  0x000000a3 , 0x00004014 
+ 00011014  0x00001a8e deposit  0x0000001a 
+ 00011015  0x00001a8f call  0x00007f37 
+ 00011016  0x00001a90 fetcht  0x00000004 , 0x0000415f 
+ 00011017  0x00001a91 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00011018  0x00001a92 rtn  0x00000002 
+ 00011019  0x00001a93 lshift8  0x0000003f , 0x0000003f 
+ 00011020  0x00001a94 lshift4  0x0000003f , 0x0000003f 
+ 00011021  0x00001a95 idiv  0x00000002 
+ 00011022  0x00001a96 call  0x00007f86 
+ 00011023  0x00001a97 quotient  0x0000003f 
+ 00011024  0x00001a98 arg  0x000000c8 , 0x00000002 
+ 00011025  0x00001a99 call  0x00007f91 
+ 00011026  0x00001a9a store  0x00000001 , 0x00000099 
+ 00011027  0x00001a9b nbranch  0x00002b15 , 0x00000028 
+ 00011028  0x00001a9c sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00011029  0x00001a9e fetcht  0x00000003 , 0x0000416f 
+ 00011030  0x00001a9f iadd  0x00000002 , 0x0000003f 
+ 00011031  0x00001aa0 store  0x00000003 , 0x0000416f 
+ 00011032  0x00001aa2 setarg  0x00000000 
+ 00011033  0x00001aa3 store  0x00000004 , 0x0000415f 
+ 00011034  0x00001aa4 rtn 
+ 00011035  0x00001aa9 fetch  0x00000001 , 0x00004177 
+ 00011036  0x00001aaa set1  0x00000002 , 0x0000003f 
+ 00011037  0x00001aab store  0x00000001 , 0x00004177 
+ 00011038  0x00001aac branch  0x00002b23 
+ 00011039  0x00001ab1 arg  0xffffffff , 0x00000002 
+ 00011040  0x00001ab2 fetch  0x00000001 , 0x00004176 
+ 00011041  0x00001ab3 set0  0x00000007 , 0x0000003f 
+ 00011042  0x00001ab4 store  0x00000001 , 0x00004176 
+ 00011043  0x00001ab6 bpatch  0x000000a4 , 0x00004014 
+ 00011044  0x00001ab7 call  0x00002c29 
+ 00011045  0x00001ab8 fetch  0x00000001 , 0x00004157 
+ 00011046  0x00001ab9 store  0x00000001 , 0x0000417c 
+ 00011047  0x00001aba fetch  0x00000001 , 0x0000417a 
+ 00011048  0x00001abb set1  0x00000007 , 0x0000003f 
+ 00011049  0x00001abc store  0x00000001 , 0x0000417a 
+ 00011050  0x00001ac0 bpatch  0x000000a5 , 0x00004014 
+ 00011051  0x00001ac1 call  0x000029e7 
+ 00011052  0x00001ac2 fetch  0x00000004 , 0x0000415f 
+ 00011053  0x00001ac3 iadd  0x00000002 , 0x0000003f 
+ 00011054  0x00001ac4 store  0x00000004 , 0x0000415f 
+ 00011055  0x00001ac5 call  0x00002aef 
+ 00011056  0x00001ac6 fetch  0x00000005 , 0x00004178 
+ 00011057  0x00001ac7 hstore  0x00000004 , 0x0000804c 
+ 00011058  0x00001ac8 rshift32  0x0000003f , 0x00000011 
+ 00011059  0x00001ac9 until  0x0000003e , 0x00000033 
+ 00011060  0x00001aca deposit  0x00000019 
+ 00011061  0x00001acb store  0x00000006 , 0x00004163 
+ 00011062  0x00001acc jam  0x00000002 , 0x00008005 
+ 00011063  0x00001acd until  0x0000003e , 0x00000033 
+ 00011064  0x00001ace until  0x0000003e , 0x00000033 
+ 00011065  0x00001acf deposit  0x00000011 
+ 00011066  0x00001ad0 hstore  0x00000001 , 0x0000804f 
+ 00011067  0x00001ad1 jam  0x00000002 , 0x00008005 
+ 00011068  0x00001ad3 until  0x0000003e , 0x00000033 
+ 00011069  0x00001ad4 until  0x0000003e , 0x00000033 
+ 00011070  0x00001ad5 hstoret  0x00000004 , 0x0000804c 
+ 00011071  0x00001ad6 jam  0x00000010 , 0x00008005 
+ 00011072  0x00001ad7 until  0x0000003e , 0x0000003f 
+ 00011073  0x00001add bpatch  0x000000a6 , 0x00004014 
+ 00011074  0x00001ade setarg  0x00000000 
+ 00011075  0x00001adf copy  0x00000027 , 0x0000003e 
+ 00011076  0x00001ae0 branch  0x00002b4c , 0x00000005 
+ 00011077  0x00001ae1 hfetch  0x00000001 , 0x0000813c 
+ 00011078  0x00001ae2 hfetcht  0x00000001 , 0x0000813d 
+ 00011079  0x00001ae3 isub  0x00000002 , 0x0000003e 
+ 00011080  0x00001ae4 branch  0x00002b4a , 0x00000002 
+ 00011081  0x00001ae5 deposit  0x00000002 
+ 00011082  0x00001ae7 isub  0x00000027 , 0x0000003f 
+ 00011083  0x00001ae8 increase  0x00000001 , 0x0000003f 
+ 00011084  0x00001aea increase  0x00000008 , 0x0000003f 
+ 00011085  0x00001aeb until  0x0000003e , 0x00000033 
+ 00011086  0x00001aec iadd  0x00000031 , 0x0000003f 
+ 00011087  0x00001aed fetcht  0x00000004 , 0x0000415b 
+ 00011088  0x00001aee iadd  0x00000002 , 0x0000003f 
+ 00011089  0x00001aef fetcht  0x00000003 , 0x0000416f 
+ 00011090  0x00001af0 imul32  0x00000002 , 0x0000003f 
+ 00011091  0x00001af1 rshift8  0x0000003f , 0x0000003f 
+ 00011092  0x00001af2 rshift4  0x0000003f , 0x0000003f 
+ 00011093  0x00001af3 increase  0x0000006e , 0x0000003f 
+ 00011094  0x00001af4 arg  0x00000ea6 , 0x00000002 
+ 00011095  0x00001af5 idiv  0x00000002 
+ 00011096  0x00001af6 call  0x00007f86 
+ 00011097  0x00001af7 quotient  0x0000003f 
+ 00011098  0x00001af8 lshift16  0x0000003f , 0x0000003f 
+ 00011099  0x00001af9 remainder  0x00000002 
+ 00011100  0x00001afa ior  0x00000002 , 0x0000003f 
+ 00011101  0x00001afb fetcht  0x00000006 , 0x00004163 
+ 00011102  0x00001afc call  0x00007f2c 
+ 00011103  0x00001afd copy  0x00000002 , 0x00000019 
+ 00011104  0x00001afe fetch  0x00000006 , 0x00004048 
+ 00011105  0x00001aff call  0x00002854 
+ 00011106  0x00001b00 deposit  0x0000001a 
+ 00011107  0x00001b01 store  0x00000006 , 0x00000a9a 
+ 00011108  0x00001b02 deposit  0x00000027 
+ 00011109  0x00001b03 istore  0x00000001 , 0x00000005 
+ 00011110  0x00001b04 hfetch  0x00000001 , 0x0000811d 
+ 00011111  0x00001b05 or_into  0x000000f0 , 0x0000003f 
+ 00011112  0x00001b06 istore  0x00000001 , 0x00000005 
+ 00011113  0x00001b07 rtn 
+ 00011114  0x00001b0a bpatch  0x000000a7 , 0x00004014 
+ 00011115  0x00001b0b call  0x00002afa 
+ 00011116  0x00001b0c fetch  0x00000003 , 0x0000416f 
+ 00011117  0x00001b0d rtn  0x00000034 
+ 00011118  0x00001b0e fetch  0x00000001 , 0x00004091 
+ 00011119  0x00001b0f rtn  0x00000034 
+ 00011120  0x00001b10 fetch  0x00000001 , 0x0000465a 
+ 00011121  0x00001b11 branch  0x00002b74 , 0x00000034 
+ 00011122  0x00001b12 fetch  0x00000001 , 0x000045b1 
+ 00011123  0x00001b13 rtn  0x00000034 
+ 00011124  0x00001b15 fetch  0x00000001 , 0x000044c0 
+ 00011125  0x00001b16 nrtn  0x00000034 
+ 00011126  0x00001b17 call  0x00002c3a 
+ 00011127  0x00001b18 nrtn  0x00000034 
+ 00011128  0x00001b19 fetch  0x00000001 , 0x00004040 
+ 00011129  0x00001b1a compare  0x00000003 , 0x0000003f , 0x00000007 
+ 00011130  0x00001b1b nbranch  0x00002b9d , 0x00000001 
+ 00011131  0x00001b1c fetch  0x00000002 , 0x00004042 
+ 00011132  0x00001b1d rtn  0x00000034 
+ 00011133  0x00001b1e rtn  0x0000002b 
+ 00011134  0x00001b1f bpatch  0x000000a8 , 0x00004015 
+ 00011135  0x00001b21 fetcht  0x00000001 , 0x000000a0 
+ 00011136  0x00001b22 fetch  0x00000002 , 0x00004042 
+ 00011137  0x00001b23 imul32  0x00000002 , 0x0000003f 
+ 00011138  0x00001b24 rshift4  0x00000002 , 0x00000002 
+ 00011139  0x00001b25 rshift2  0x00000002 , 0x00000002 
+ 00011140  0x00001b26 isub  0x00000002 , 0x0000003f 
+ 00011141  0x00001b27 fetcht  0x00000004 , 0x00004044 
+ 00011142  0x00001b28 iadd  0x00000002 , 0x0000003f 
+ 00011143  0x00001b29 fetcht  0x00000001 , 0x00004156 
+ 00011144  0x00001b2a isub  0x00000002 , 0x0000003f 
+ 00011145  0x00001b2b lshift16  0x0000003f , 0x00000030 
+ 00011146  0x00001b2c bpatch  0x000000a9 , 0x00004015 
+ 00011147  0x00001b2d fetch  0x00000002 , 0x0000404e 
+ 00011148  0x00001b2e rshift  0x0000003f , 0x0000003f 
+ 00011149  0x00001b2f call  0x00007f50 
+ 00011150  0x00001b30 deposit  0x00000030 
+ 00011151  0x00001b31 call  0x00007f39 
+ 00011152  0x00001b32 copy  0x0000001a , 0x00000002 
+ 00011153  0x00001b33 call  0x00007f37 
+ 00011154  0x00001b34 rtn  0x00000028 
+ 00011155  0x00001b36 call  0x00007f49 
+ 00011156  0x00001b38 bpatch  0x000000aa , 0x00004015 
+ 00011157  0x00001b39 fetch  0x00000001 , 0x00004178 
+ 00011158  0x00001b3a isub  0x00000002 , 0x0000003e 
+ 00011159  0x00001b3b branch  0x00002b18 , 0x00000002 
+ 00011160  0x00001b3c storet  0x00000004 , 0x0000415b 
+ 00011161  0x00001b3d call  0x00003328 
+ 00011162  0x00001b3e call  0x000052fb 
+ 00011163  0x00001b3f fetcht  0x00000004 , 0x0000415b 
+ 00011164  0x00001b40 branch  0x00002b2a 
+ 00011165  0x00001b43 bpatch  0x000000ab , 0x00004015 
+ 00011166  0x00001b44 fetch  0x00000001 , 0x00004040 
+ 00011167  0x00001b45 rtnbit1  0x00000000 
+ 00011168  0x00001b46 rtnbit1  0x00000003 
+ 00011169  0x00001b47 fetch  0x00000001 , 0x0000465a 
+ 00011170  0x00001b48 branch  0x00002ba5 , 0x00000034 
+ 00011171  0x00001b49 fetch  0x00000001 , 0x000045b1 
+ 00011172  0x00001b4a rtn  0x00000034 
+ 00011173  0x00001b4c bpatch  0x000000ac , 0x00004015 
+ 00011174  0x00001b4d fetch  0x00000001 , 0x0000436e 
+ 00011175  0x00001b4e nbranch  0x00002baa , 0x00000034 
+ 00011176  0x00001b4f fetch  0x00000001 , 0x00004093 
+ 00011177  0x00001b50 rtn  0x00000034 
+ 00011178  0x00001b52 fetch  0x00000002 , 0x00004154 
+ 00011179  0x00001b53 rtn  0x00000034 
+ 00011180  0x00001b55 fetcht  0x00000001 , 0x00004156 
+ 00011181  0x00001b56 isub  0x00000002 , 0x0000003f 
+ 00011182  0x00001b57 arg  0x00001d4c , 0x00000002 
+ 00011183  0x00001b58 imul32  0x00000002 , 0x0000003f 
+ 00011184  0x00001b59 branch  0x00002b93 
+ 00011185  0x00001b5c bpatch  0x000000ad , 0x00004015 
+ 00011186  0x00001b5d disable  0x0000002b 
+ 00011187  0x00001b5e fetch  0x00000001 , 0x00000030 
+ 00011188  0x00001b5f rtnbit0  0x00000001 
+ 00011189  0x00001b60 nbranch  0x00002bd0 , 0x0000002d 
+ 00011190  0x00001b61 call  0x00002bcb 
+ 00011191  0x00001b62 fetch  0x00000002 , 0x000040c1 
+ 00011192  0x00001b63 store  0x00000002 , 0x0000003e 
+ 00011193  0x00001b64 fetch  0x00000001 , 0x00000047 
+ 00011194  0x00001b65 bbit1  0x00000003 , 0x00002bde 
+ 00011195  0x00001b66 bmark0  0x0000000d , 0x00002bde 
+ 00011196  0x00001b67 call  0x00005274 
+ 00011197  0x00001b68 nbranch  0x00002bde , 0x00000034 
+ 00011198  0x00001b69 fetch  0x00000001 , 0x0000455c 
+ 00011199  0x00001b6a bbit1  0x00000001 , 0x00002bde 
+ 00011200  0x00001b6c jam  0x00000000 , 0x000000a0 
+ 00011201  0x00001b6d bmark0  0x0000000d , 0x00002bde 
+ 00011202  0x00001b6e fetch  0x00000001 , 0x00004174 
+ 00011203  0x00001b6f branch  0x00002be2 , 0x00000034 
+ 00011204  0x00001b70 increase  0xffffffff , 0x0000003f 
+ 00011205  0x00001b71 store  0x00000001 , 0x00004174 
+ 00011206  0x00001b72 rtn 
+ 00011207  0x00001b76 arg  0x00000001 , 0x00000007 
+ 00011208  0x00001b77 branch  0x000060cd 
+ 00011209  0x00001b7a arg  0x00000001 , 0x00000007 
+ 00011210  0x00001b7b branch  0x000060d1 
+ 00011211  0x00001b80 jam  0x00000000 , 0x00004159 
+ 00011212  0x00001b81 fetch  0x00000003 , 0x00004169 
+ 00011213  0x00001b82 increase  0x00000001 , 0x0000003f 
+ 00011214  0x00001b83 store  0x00000003 , 0x00004169 
+ 00011215  0x00001b84 rtn 
+ 00011216  0x00001b87 bpatch  0x000000ae , 0x00004015 
+ 00011217  0x00001b88 fetcht  0x00000002 , 0x000040c1 
+ 00011218  0x00001b89 rshift  0x00000002 , 0x00000002 
+ 00011219  0x00001b8a fetch  0x00000002 , 0x0000003e 
+ 00011220  0x00001b8b iadd  0x00000002 , 0x0000003f 
+ 00011221  0x00001b8c store  0x00000002 , 0x0000003e 
+ 00011222  0x00001b8e jam  0x00000000 , 0x000000a0 
+ 00011223  0x00001b8f fetch  0x00000003 , 0x0000416c 
+ 00011224  0x00001b90 increase  0x00000001 , 0x0000003f 
+ 00011225  0x00001b91 store  0x00000003 , 0x0000416c 
+ 00011226  0x00001b92 fetch  0x00000001 , 0x00004159 
+ 00011227  0x00001b93 increase  0x00000001 , 0x0000003f 
+ 00011228  0x00001b94 store  0x00000001 , 0x00004159 
+ 00011229  0x00001b95 rtn 
+ 00011230  0x00001b98 jam  0x00000000 , 0x000000a0 
+ 00011231  0x00001b99 fetch  0x00000001 , 0x00004173 
+ 00011232  0x00001b9a store  0x00000001 , 0x00004174 
+ 00011233  0x00001b9b rtn 
+ 00011234  0x00001b9e fetcht  0x00000001 , 0x00004172 
+ 00011235  0x00001b9f storet  0x00000001 , 0x000000a0 
+ 00011236  0x00001ba0 rtn 
+ 00011237  0x00001ba3 bpatch  0x000000af , 0x00004015 
+ 00011238  0x00001ba4 fetch  0x00000001 , 0x00004178 
+ 00011239  0x00001ba5 nrtn  0x00000034 
+ 00011240  0x00001ba6 jam  0x00000006 , 0x00008042 
+ 00011241  0x00001ba7 setarg  0x00000f0c 
+ 00011242  0x00001ba8 call  0x00002c18 
+ 00011243  0x00001ba9 setarg  0x00030d40 
+ 00011244  0x00001baa call  0x00002a8f 
+ 00011245  0x00001bab until  0x0000003e , 0x00000033 
+ 00011246  0x00001bac copy  0x00000031 , 0x00000030 
+ 00011247  0x00001bad call  0x000029e7 
+ 00011248  0x00001bae jam  0x00000004 , 0x00008042 
+ 00011249  0x00001baf nop  0x0000000a 
+ 00011250  0x00001bb0 until  0x0000003e , 0x00000033 
+ 00011251  0x00001bb1 deposit  0x00000031 
+ 00011252  0x00001bb2 isub  0x00000030 , 0x0000003f 
+ 00011253  0x00001bb3 increase  0x00000030 , 0x0000003f 
+ 00011254  0x00001bb4 arg  0x000000ff , 0x00000002 
+ 00011255  0x00001bb5 call  0x00007f91 
+ 00011256  0x00001bb6 store  0x00000001 , 0x00004178 
+ 00011257  0x00001bb7 nop  0x00007530 
+ 00011258  0x00001bb8 nop  0x00007530 
+ 00011259  0x00001bb9 nop  0x00007530 
+ 00011260  0x00001bba rtn 
+ 00011261  0x00001bbd fetch  0x00000001 , 0x00004178 
+ 00011262  0x00001bbe nrtn  0x00000034 
+ 00011263  0x00001bbf jam  0x000000ff , 0x00008044 
+ 00011264  0x00001bc0 jam  0x00000006 , 0x00008042 
+ 00011265  0x00001bc1 call  0x000029e7 
+ 00011266  0x00001bc2 setarg  0x000003e8 
+ 00011267  0x00001bc3 iadd  0x00000031 , 0x00000030 
+ 00011268  0x00001bc4 snooze 
+ 00011269  0x00001bc5 deposit  0x00000031 
+ 00011270  0x00001bc6 nop  0x00002ee0 
+ 00011271  0x00001bc7 nop  0x00002ee0 
+ 00011272  0x00001bc8 nop  0x00002ee0 
+ 00011273  0x00001bc9 nop  0x00002ee0 
+ 00011274  0x00001bca nop  0x00002ee0 
+ 00011275  0x00001bcb nop  0x00002ee0 
+ 00011276  0x00001bcc nop  0x00002ee0 
+ 00011277  0x00001bcd nop  0x00002ee0 
+ 00011278  0x00001bce nop  0x00002ee0 
+ 00011279  0x00001bcf isub  0x00000030 , 0x0000003f 
+ 00011280  0x00001bd0 add  0x0000003f , 0x00000030 , 0x0000003f 
+ 00011281  0x00001bd1 arg  0x000000ff , 0x00000002 
+ 00011282  0x00001bd2 call  0x00007f91 
+ 00011283  0x00001bd3 store  0x00000001 , 0x00004178 
+ 00011284  0x00001bd4 nop  0x00007530 
+ 00011285  0x00001bd5 nop  0x00007530 
+ 00011286  0x00001bd6 nop  0x00007530 
+ 00011287  0x00001bd7 rtn 
+ 00011288  0x00001bdd arg  0x00000fff , 0x00000005 
+ 00011289  0x00001bde iand  0x00000005 , 0x00000005 
+ 00011290  0x00001bdf fetch  0x00000001 , 0x00004175 
+ 00011291  0x00001be0 and_into  0x000000f0 , 0x0000003f 
+ 00011292  0x00001be1 lshift8  0x0000003f , 0x0000003f 
+ 00011293  0x00001be2 ior  0x00000005 , 0x0000003f 
+ 00011294  0x00001be3 hstore  0x00000002 , 0x0000804c 
+ 00011295  0x00001be4 ifetch  0x00000002 , 0x00000006 
+ 00011296  0x00001be5 istore  0x00000002 , 0x00000005 
+ 00011297  0x00001be8 setarg  0x00000001 
+ 00011298  0x00001be9 branch  0x00002c24 
+ 00011299  0x00001bec setarg  0x00000002 
+ 00011300  0x00001bee until  0x0000003e , 0x00000033 
+ 00011301  0x00001bef hstore  0x00000001 , 0x00008005 
+ 00011302  0x00001bf0 until  0x0000003e , 0x00000033 
+ 00011303  0x00001bf1 until  0x0000003e , 0x00000033 
+ 00011304  0x00001bf2 rtn 
+ 00011305  0x00001bf6 bpatch  0x000000b0 , 0x00004016 
+ 00011306  0x00001bf7 fetch  0x00000004 , 0x000000a1 
+ 00011307  0x00001bf8 hstore  0x00000004 , 0x0000804c 
+ 00011308  0x00001bf9 setarg  0x00000004 
+ 00011309  0x00001bfa call  0x00002c24 
+ 00011310  0x00001bfb fetch  0x00000004 , 0x000000a5 
+ 00011311  0x00001bfc hstore  0x00000004 , 0x0000804c 
+ 00011312  0x00001bfd setarg  0x00000008 
+ 00011313  0x00001bfe branch  0x00002c24 
+ 00011314  0x00001c01 fetch  0x00000002 , 0x00004152 
+ 00011315  0x00001c02 qset1  0x0000003f 
+ 00011316  0x00001c03 store  0x00000002 , 0x00004152 
+ 00011317  0x00001c04 rtn 
+ 00011318  0x00001c07 fetch  0x00000002 , 0x00004152 
+ 00011319  0x00001c08 qset0  0x0000003f 
+ 00011320  0x00001c09 store  0x00000002 , 0x00004152 
+ 00011321  0x00001c0a rtn 
+ 00011322  0x00001c0f bpatch  0x000000b1 , 0x00004016 
+ 00011323  0x00001c10 call  0x00003326 
+ 00011324  0x00001c11 fetch  0x00000002 , 0x00004152 
+ 00011325  0x00001c12 copy  0x0000003f , 0x00000011 
+ 00011326  0x00001c13 fetch  0x00000001 , 0x0000004c 
+ 00011327  0x00001c14 isolate1  0x00000006 , 0x0000003f 
+ 00011328  0x00001c15 setflag  0x00000001 , 0x0000000b , 0x00000011 
+ 00011329  0x00001c16 fetch  0x00000001 , 0x00000078 
+ 00011330  0x00001c17 fetcht  0x00000001 , 0x0000007c 
+ 00011331  0x00001c18 iadd  0x00000002 , 0x0000003f 
+ 00011332  0x00001c19 fetcht  0x00000001 , 0x00000048 
+ 00011333  0x00001c1a iadd  0x00000002 , 0x0000003f 
+ 00011334  0x00001c1b nsetflag  0x00000034 , 0x0000000a , 0x00000011 
+ 00011335  0x00001c1c fetch  0x00000001 , 0x000044ff 
+ 00011336  0x00001c1d nsetflag  0x00000034 , 0x00000001 , 0x00000011 
+ 00011337  0x00001c1e fetch  0x00000002 , 0x0000025d 
+ 00011338  0x00001c1f fetcht  0x00000002 , 0x0000025f 
+ 00011339  0x00001c20 iadd  0x00000002 , 0x0000003f 
+ 00011340  0x00001c21 nsetflag  0x00000034 , 0x0000000d , 0x00000011 
+ 00011341  0x00001c22 fetch  0x00000008 , 0x00004668 
+ 00011342  0x00001c23 nsetflag  0x00000034 , 0x0000000f , 0x00000011 
+ 00011343  0x00001c24 fetch  0x00000008 , 0x00004670 
+ 00011344  0x00001c25 nsetflag  0x00000034 , 0x0000000e , 0x00000011 
+ 00011345  0x00001c26 fetch  0x00000001 , 0x000041ce 
+ 00011346  0x00001c27 nsetflag  0x00000034 , 0x00000008 , 0x00000011 
+ 00011347  0x00001c28 fetch  0x00000001 , 0x00004092 
+ 00011348  0x00001c29 compare  0x0000000a , 0x0000003f , 0x000000ff 
+ 00011349  0x00001c2a call  0x00002c5b , 0x00000001 
+ 00011350  0x00001c2b setarg  0xfffffff8 
+ 00011351  0x00001c2c iand  0x00000011 , 0x00000011 
+ 00011352  0x00001c2d copy  0x00000011 , 0x0000003f 
+ 00011353  0x00001c2e store  0x00000002 , 0x00004152 
+ 00011354  0x00001c2f rtn 
+ 00011355  0x00001c32 hfetch  0x00000002 , 0x00008112 
+ 00011356  0x00001c33 nsetflag  0x00000034 , 0x00000006 , 0x00000011 
+ 00011357  0x00001c34 hfetch  0x00000002 , 0x0000810e 
+ 00011358  0x00001c35 nsetflag  0x00000034 , 0x00000005 , 0x00000011 
+ 00011359  0x00001c36 rtn 
+ 00011360  0x00001c39 hfetch  0x00000004 , 0x00008138 
+ 00011361  0x00001c3a set0  0x0000001b , 0x0000003f 
+ 00011362  0x00001c3b hstore  0x00000004 , 0x0000804c 
+ 00011363  0x00001c3c call  0x00002c21 
+ 00011364  0x00001c3d branch  0x00002a8c 
+ 00011365  0x00001c40 hfetch  0x00000004 , 0x0000813c 
+ 00011366  0x00001c41 set0  0x00000014 , 0x0000003f 
+ 00011367  0x00001c42 hstore  0x00000004 , 0x0000804c 
+ 00011368  0x00001c43 branch  0x00002c23 
+ 00011369  0x00001c46 fetch  0x00000002 , 0x00004150 
+ 00011370  0x00001c47 bbit1  0x00000000 , 0x00002a8c 
+ 00011371  0x00001c48 rtn 
+ 00011372  0x00001c4a fetch  0x00000002 , 0x00004150 
+ 00011373  0x00001c4b bbit1  0x00000001 , 0x00002a8c 
+ 00011374  0x00001c4c rtn 
+ 00011375  0x00001c4e fetch  0x00000002 , 0x00004150 
+ 00011376  0x00001c4f bbit1  0x00000002 , 0x00002a8c 
+ 00011377  0x00001c50 rtn 
+ 00011378  0x00001c8e bpatch  0x000000b2 , 0x00004016 
+ 00011379  0x00001c8f call  0x00002c7a 
+ 00011380  0x00001c90 add  0x00000013 , 0x000000cd , 0x00000012 
+ 00011381  0x00001c91 ifetch  0x00000001 , 0x00000012 
+ 00011382  0x00001c93 rtneq  0x00000000 
+ 00011383  0x00001c94 beq  0x00000001 , 0x00002d06 
+ 00011384  0x00001c95 beq  0x00000002 , 0x00002c7f 
+ 00011385  0x00001c96 rtn 
+ 00011386  0x00001c99 fetcht  0x00000002 , 0x00004241 
+ 00011387  0x00001c9a copy  0x00000002 , 0x00000013 
+ 00011388  0x00001c9b rtn 
+ 00011389  0x00001c9e call  0x00002f3d 
+ 00011390  0x00001c9f branch  0x0000307d 
+ 00011391  0x00001ca2 call  0x00003084 
+ 00011392  0x00001ca3 call  0x0000305a 
+ 00011393  0x00001ca4 call  0x0000305e 
+ 00011394  0x00001ca5 branch  0x000030a2 
+ 00011395  0x00001cab call  0x00003231 
+ 00011396  0x00001cac setarg  0x0000004e 
+ 00011397  0x00001cad call  0x0000322f 
+ 00011398  0x00001cae call  0x000032ba 
+ 00011399  0x00001cb1 add  0x00000013 , 0x00000092 , 0x00000011 
+ 00011400  0x00001cb2 ifetch  0x00000004 , 0x00000011 
+ 00011401  0x00001cb3 branch  0x0000322c 
+ 00011402  0x00001cb6 call  0x00002c7a 
+ 00011403  0x00001cb7 add  0x00000013 , 0x00000091 , 0x00000012 
+ 00011404  0x00001cb8 ifetcht  0x00000001 , 0x00000012 
+ 00011405  0x00001cba call  0x00002c90 
+ 00011406  0x00001cbb add  0x00000013 , 0x00000091 , 0x00000005 
+ 00011407  0x00001cbd branch  0x00002e56 
+ 00011408  0x00001cc0 call  0x00002c94 
+ 00011409  0x00001cc1 increase  0x00000001 , 0x00000002 
+ 00011410  0x00001cc2 and_into  0x00000003 , 0x00000002 
+ 00011411  0x00001cc3 rtn 
+ 00011412  0x00001cc6 add  0x00000013 , 0x000000ae , 0x00000012 
+ 00011413  0x00001cc7 ifetch  0x00000001 , 0x00000012 
+ 00011414  0x00001cc9 and_into  0x00000003 , 0x0000003f 
+ 00011415  0x00001cca mul32  0x0000003f , 0x00000004 , 0x00000011 
+ 00011416  0x00001ccb add  0x00000013 , 0x00000097 , 0x0000003f 
+ 00011417  0x00001ccd iadd  0x00000011 , 0x0000003f 
+ 00011418  0x00001cce iadd  0x00000002 , 0x00000006 
+ 00011419  0x00001ccf ifetch  0x00000001 , 0x00000006 
+ 00011420  0x00001cd1 branch  0x0000322f 
+ 00011421  0x00001cd4 call  0x0000326c 
+ 00011422  0x00001cd5 call  0x0000666a 
+ 00011423  0x00001cd6 setarg  0x000007e2 
+ 00011424  0x00001cd7 arg  0x00000aa2 , 0x00000011 
+ 00011425  0x00001cd8 arg  0x00000004 , 0x00000002 
+ 00011426  0x00001cd9 call  0x000066b3 
+ 00011427  0x00001cda call  0x0000666d 
+ 00011428  0x00001cdb fetch  0x00000004 , 0x00000aa2 
+ 00011429  0x00001cdc call  0x00003227 
+ 00011430  0x00001cde nrtn  0x00000034 
+ 00011431  0x00001cdf fetch  0x00000004 , 0x000040a0 
+ 00011432  0x00001ce1 branch  0x00003227 
+ 00011433  0x00001ce4 call  0x00003241 
+ 00011434  0x00001ce6 setarg  0x00000000 
+ 00011435  0x00001ce7 call  0x0000323f 
+ 00011436  0x00001cea call  0x0000323a 
+ 00011437  0x00001cec and_into  0x00000007 , 0x0000003f 
+ 00011438  0x00001cee branch  0x0000323c 
+ 00011439  0x00001cf1 call  0x0000323a 
+ 00011440  0x00001cf3 set1  0x00000004 , 0x0000003f 
+ 00011441  0x00001cf4 call  0x0000323c 
+ 00011442  0x00001cf7 branch  0x00003235 
+ 00011443  0x00001cfa call  0x0000325d 
+ 00011444  0x00001cfc beq  0x00000001 , 0x00002cb7 
+ 00011445  0x00001cfd beq  0x00000002 , 0x00002cbc 
+ 00011446  0x00001cfe rtn 
+ 00011447  0x00001d01 call  0x0000323e 
+ 00011448  0x00001d04 add  0x00000013 , 0x000000d1 , 0x00000005 
+ 00011449  0x00001d05 call  0x000032d6 
+ 00011450  0x00001d07 call  0x00003242 
+ 00011451  0x00001d09 branch  0x00002cac 
+ 00011452  0x00001d0c call  0x0000325a 
+ 00011453  0x00001d0e branch  0x00002cb8 
+ 00011454  0x00001d11 add  0x00000013 , 0x0000008c , 0x00000011 
+ 00011455  0x00001d12 ifetch  0x00000001 , 0x00000011 
+ 00011456  0x00001d14 increase  0x00000001 , 0x0000003f 
+ 00011457  0x00001d15 add  0x00000013 , 0x0000008c , 0x00000005 
+ 00011458  0x00001d16 istore  0x00000001 , 0x00000005 
+ 00011459  0x00001d18 beq  0x00000020 , 0x00002dd2 
+ 00011460  0x00001d19 call  0x00003258 
+ 00011461  0x00001d1b beq  0x00000001 , 0x00002cca 
+ 00011462  0x00001d1c setarg  0x00000001 
+ 00011463  0x00001d1d call  0x0000325b 
+ 00011464  0x00001d20 call  0x00003258 
+ 00011465  0x00001d22 bne  0x00000001 , 0x00002cac 
+ 00011466  0x00001d24 add  0x00000013 , 0x000000d3 , 0x00000011 
+ 00011467  0x00001d25 ifetch  0x00000001 , 0x00000011 
+ 00011468  0x00001d27 increase  0x00000001 , 0x0000003f 
+ 00011469  0x00001d28 call  0x00002cd5 
+ 00011470  0x00001d2a beq  0x00000004 , 0x00002cd2 
+ 00011471  0x00001d2b call  0x00002c8a 
+ 00011472  0x00001d2c call  0x00002d04 
+ 00011473  0x00001d2e branch  0x00002d8f 
+ 00011474  0x00001d31 call  0x00002cd4 
+ 00011475  0x00001d33 branch  0x00002cac 
+ 00011476  0x00001d36 setarg  0x00000000 
+ 00011477  0x00001d38 add  0x00000013 , 0x000000d3 , 0x00000005 
+ 00011478  0x00001d39 branch  0x000032b4 
+ 00011479  0x00001d3c call  0x0000323e 
+ 00011480  0x00001d3f call  0x0000325a 
+ 00011481  0x00001d41 call  0x00003241 
+ 00011482  0x00001d43 branch  0x00002cac 
+ 00011483  0x00001d46 call  0x0000325d 
+ 00011484  0x00001d48 beq  0x00000003 , 0x00002cd8 
+ 00011485  0x00001d49 call  0x0000323a 
+ 00011486  0x00001d4b isolate0  0x00000004 , 0x0000003f 
+ 00011487  0x00001d4c branch  0x00002ca9 , 0x00000001 
+ 00011488  0x00001d4d call  0x0000325d 
+ 00011489  0x00001d4f beq  0x00000001 , 0x00002cd7 
+ 00011490  0x00001d50 beq  0x00000002 , 0x00002cd8 
+ 00011491  0x00001d51 rtn 
+ 00011492  0x00001d54 call  0x00003253 
+ 00011493  0x00001d56 rtnne  0x000000ff 
+ 00011494  0x00001d57 call  0x00002ce9 
+ 00011495  0x00001d58 ncall  0x00002cf4 , 0x0000002c 
+ 00011496  0x00001d59 rtn 
+ 00011497  0x00001d5c disable  0x0000002c 
+ 00011498  0x00001d5d add  0x00000013 , 0x000000ce , 0x00000011 
+ 00011499  0x00001d5e ifetch  0x00000001 , 0x00000011 
+ 00011500  0x00001d60 rtnne  0x00000001 
+ 00011501  0x00001d61 add  0x00000013 , 0x000000d0 , 0x00000011 
+ 00011502  0x00001d62 ifetch  0x00000001 , 0x00000011 
+ 00011503  0x00001d64 rtnne  0x00000000 
+ 00011504  0x00001d65 setarg  0x00000001 
+ 00011505  0x00001d66 call  0x00002cfd 
+ 00011506  0x00001d68 call  0x00003237 
+ 00011507  0x00001d6a branch  0x00007feb 
+ 00011508  0x00001d6d add  0x00000013 , 0x000000d0 , 0x00000011 
+ 00011509  0x00001d6e ifetch  0x00000001 , 0x00000011 
+ 00011510  0x00001d70 branch  0x00002cff , 0x00000034 
+ 00011511  0x00001d71 increase  0xffffffff , 0x0000003f 
+ 00011512  0x00001d72 call  0x0000323f 
+ 00011513  0x00001d74 setarg  0x00000002 
+ 00011514  0x00001d75 call  0x00002cfd 
+ 00011515  0x00001d77 call  0x00002c8a 
+ 00011516  0x00001d79 branch  0x00003237 
+ 00011517  0x00001d7c add  0x00000013 , 0x000000d2 , 0x00000005 
+ 00011518  0x00001d7d branch  0x000032b4 
+ 00011519  0x00001d81 setarg  0x00000003 
+ 00011520  0x00001d82 call  0x00002cfd 
+ 00011521  0x00001d84 call  0x00003258 
+ 00011522  0x00001d86 nbranch  0x00002cc8 , 0x00000034 
+ 00011523  0x00001d87 call  0x00002c8a 
+ 00011524  0x00001d8a setarg  0x00000002 
+ 00011525  0x00001d8b branch  0x00003238 
+ 00011526  0x00001d8e rtnmark0  0x00000026 
+ 00011527  0x00001d8f set1  0x00000027 , 0x00000000 
+ 00011528  0x00001d90 bpatch  0x000000b3 , 0x00004016 
+ 00011529  0x00001d91 add  0x00000013 , 0x0000008e , 0x00000011 
+ 00011530  0x00001d92 ifetch  0x00000001 , 0x00000011 
+ 00011531  0x00001d94 beq  0x00000001 , 0x00002d0f 
+ 00011532  0x00001d95 call  0x0000306a 
+ 00011533  0x00001d96 nbranch  0x00002d16 , 0x00000028 
+ 00011534  0x00001d97 call  0x00002d1b 
+ 00011535  0x00001d99 add  0x00000013 , 0x0000008e , 0x00000005 
+ 00011536  0x00001d9a call  0x000032d6 
+ 00011537  0x00001d9c call  0x00002d2c 
+ 00011538  0x00001d9d nbranch  0x00002d7d , 0x00000028 
+ 00011539  0x00001d9e call  0x00002ce4 
+ 00011540  0x00001da0 call  0x00002d8f 
+ 00011541  0x00001da1 call  0x00002e7a 
+ 00011542  0x00001da3 set0  0x00000027 , 0x00000000 
+ 00011543  0x00001da4 rtn 
+ 00011544  0x00001da7 rtn  0x00000005 
+ 00011545  0x00001da8 set1  0x0000001c , 0x0000003f 
+ 00011546  0x00001da9 rtn 
+ 00011547  0x00001dac add  0x00000013 , 0x000000c2 , 0x00000011 
+ 00011548  0x00001dad ifetch  0x00000001 , 0x00000011 
+ 00011549  0x00001daf increase  0x00000001 , 0x0000003f 
+ 00011550  0x00001db0 add  0x00000013 , 0x000000c2 , 0x00000005 
+ 00011551  0x00001db1 istore  0x00000001 , 0x00000005 
+ 00011552  0x00001db3 beq  0x00000004 , 0x00002d23 
+ 00011553  0x00001db4 beq  0x00000005 , 0x00002d27 
+ 00011554  0x00001db5 rtn 
+ 00011555  0x00001db7 add  0x00000013 , 0x000000ad , 0x00000011 
+ 00011556  0x00001db8 ifetch  0x00000001 , 0x00000011 
+ 00011557  0x00001dbc add  0x00000013 , 0x000000ab , 0x00000005 
+ 00011558  0x00001dbd branch  0x000032b4 
+ 00011559  0x00001dc0 add  0x00000013 , 0x000000c2 , 0x00000005 
+ 00011560  0x00001dc1 call  0x000032d6 
+ 00011561  0x00001dc3 add  0x00000013 , 0x000000ac , 0x00000011 
+ 00011562  0x00001dc4 ifetch  0x00000001 , 0x00000011 
+ 00011563  0x00001dc6 branch  0x00002d25 
+ 00011564  0x00001dc9 call  0x00003253 
+ 00011565  0x00001dcb bne  0x000000ff , 0x00002eb1 
+ 00011566  0x00001dcc bpatch  0x000000b4 , 0x00004016 
+ 00011567  0x00001dcd call  0x00002d3a 
+ 00011568  0x00001dce nbranch  0x00002d36 , 0x00000028 
+ 00011569  0x00001dcf call  0x00002d53 
+ 00011570  0x00001dd0 call  0x00002e71 
+ 00011571  0x00001dd3 setarg  0x00000001 
+ 00011572  0x00001dd5 add  0x00000013 , 0x0000008b , 0x00000005 
+ 00011573  0x00001dd6 branch  0x000032b4 
+ 00011574  0x00001dd9 add  0x00000013 , 0x0000008b , 0x00000011 
+ 00011575  0x00001dda ifetch  0x00000001 , 0x00000011 
+ 00011576  0x00001ddc beq  0x00000001 , 0x00007fe7 
+ 00011577  0x00001ddd rtn 
+ 00011578  0x00001de1 add  0x00000013 , 0x000000d8 , 0x00000002 
+ 00011579  0x00001de2 ifetch  0x00000002 , 0x00000002 
+ 00011580  0x00001de4 call  0x00007f9c 
+ 00011581  0x00001de5 nrtn  0x00000028 
+ 00011582  0x00001de6 copy  0x00000011 , 0x0000003f 
+ 00011583  0x00001de7 store  0x00000001 , 0x00000aae 
+ 00011584  0x00001de8 add  0x00000013 , 0x000000b2 , 0x00000005 
+ 00011585  0x00001de9 call  0x000032d6 
+ 00011586  0x00001deb call  0x00002cac 
+ 00011587  0x00001dec store  0x00000001 , 0x0000119e 
+ 00011588  0x00001ded fetch  0x00000001 , 0x00000aae 
+ 00011589  0x00001dee copy  0x0000003f , 0x00000011 
+ 00011590  0x00001def add  0x00000011 , 0x00000001 , 0x00000002 
+ 00011591  0x00001df0 arg  0x0000119f , 0x00000005 
+ 00011592  0x00001df1 copy  0x00000011 , 0x00000039 
+ 00011593  0x00001df2 copy  0x00000012 , 0x00000006 
+ 00011594  0x00001df3 call  0x00007f01 
+ 00011595  0x00001df4 arg  0x0000119e , 0x00000011 
+ 00011596  0x00001df6 rtnmark0  0x00000027 
+ 00011597  0x00001df7 add  0x00000013 , 0x00000086 , 0x00000005 
+ 00011598  0x00001df8 istoret  0x00000001 , 0x00000005 
+ 00011599  0x00001dfa copy  0x00000002 , 0x00000039 
+ 00011600  0x00001dfb add  0x00000013 , 0x00000022 , 0x00000005 
+ 00011601  0x00001dfd copy  0x00000011 , 0x00000006 
+ 00011602  0x00001dfe branch  0x00007f01 
+ 00011603  0x00001e02 add  0x00000013 , 0x00000086 , 0x00000011 
+ 00011604  0x00001e03 ifetch  0x00000001 , 0x00000011 
+ 00011605  0x00001e05 increase  0x00000002 , 0x0000003f 
+ 00011606  0x00001e06 add  0x00000013 , 0x00000088 , 0x00000005 
+ 00011607  0x00001e07 istore  0x00000001 , 0x00000005 
+ 00011608  0x00001e0a call  0x0000323a 
+ 00011609  0x00001e0c call  0x00003235 
+ 00011610  0x00001e0f add  0x00000013 , 0x00000086 , 0x00000011 
+ 00011611  0x00001e10 ifetch  0x00000001 , 0x00000011 
+ 00011612  0x00001e12 lshift3  0x0000003f , 0x0000003f 
+ 00011613  0x00001e13 add  0x00000013 , 0x00000085 , 0x00000011 
+ 00011614  0x00001e14 ifetcht  0x00000001 , 0x00000011 
+ 00011615  0x00001e16 and  0x00000002 , 0x00000003 , 0x00000002 
+ 00011616  0x00001e17 lshift  0x00000002 , 0x00000002 
+ 00011617  0x00001e18 ior  0x00000002 , 0x0000003f 
+ 00011618  0x00001e19 add  0x00000013 , 0x000000c3 , 0x00000011 
+ 00011619  0x00001e1a ifetcht  0x00000001 , 0x00000011 
+ 00011620  0x00001e1c iadd  0x00000002 , 0x0000003f 
+ 00011621  0x00001e1d istore  0x00000001 , 0x00000005 
+ 00011622  0x00001e1f add  0x00000013 , 0x00000086 , 0x00000011 
+ 00011623  0x00001e20 ifetch  0x00000001 , 0x00000011 
+ 00011624  0x00001e22 iforce  0x00000039 
+ 00011625  0x00001e23 add  0x00000013 , 0x00000022 , 0x00000006 
+ 00011626  0x00001e25 branch  0x00007f01 
+ 00011627  0x00001e28 call  0x0000324f 
+ 00011628  0x00001e2a call  0x0000325a 
+ 00011629  0x00001e2c call  0x00002e6d 
+ 00011630  0x00001e2d call  0x00002cac 
+ 00011631  0x00001e2e store  0x00000001 , 0x0000119e 
+ 00011632  0x00001e2f call  0x00002d77 
+ 00011633  0x00001e30 call  0x0000323a 
+ 00011634  0x00001e32 set1  0x00000003 , 0x0000003f 
+ 00011635  0x00001e33 call  0x0000323c 
+ 00011636  0x00001e35 call  0x00002d53 
+ 00011637  0x00001e36 call  0x00002d33 
+ 00011638  0x00001e37 branch  0x00002d14 
+ 00011639  0x00001e3a store  0x00000001 , 0x0000119f 
+ 00011640  0x00001e3b call  0x00003224 
+ 00011641  0x00001e3d store  0x00000004 , 0x000011a0 
+ 00011642  0x00001e3e arg  0x00000006 , 0x00000002 
+ 00011643  0x00001e3f arg  0x0000119e , 0x00000011 
+ 00011644  0x00001e40 branch  0x00002d4c 
+ 00011645  0x00001e43 add  0x00000013 , 0x000000b2 , 0x00000011 
+ 00011646  0x00001e44 ifetch  0x00000001 , 0x00000011 
+ 00011647  0x00001e46 branch  0x00002d6b , 0x00000034 
+ 00011648  0x00001e49 add  0x00000013 , 0x000000da , 0x00000011 
+ 00011649  0x00001e4a ifetch  0x00000002 , 0x00000011 
+ 00011650  0x00001e4c branch  0x00007f9c 
+ 00011651  0x00001e4f call  0x00002c7a 
+ 00011652  0x00001e51 call  0x00002afa 
+ 00011653  0x00001e52 fetch  0x00000003 , 0x0000416f 
+ 00011654  0x00001e53 rtn  0x00000034 
+ 00011655  0x00001e54 add  0x00000013 , 0x000000dc , 0x00000002 
+ 00011656  0x00001e55 ifetch  0x00000002 , 0x00000002 
+ 00011657  0x00001e57 call  0x00007f9c 
+ 00011658  0x00001e58 add  0x00000013 , 0x000000b6 , 0x00000002 
+ 00011659  0x00001e59 ifetch  0x00000008 , 0x00000002 
+ 00011660  0x00001e5a call  0x00007f49 
+ 00011661  0x00001e5b storet  0x00000004 , 0x0000415b 
+ 00011662  0x00001e5c branch  0x00002b2a 
+ 00011663  0x00001e5f call  0x00002c7a 
+ 00011664  0x00001e60 add  0x00000013 , 0x0000008f , 0x00000005 
+ 00011665  0x00001e61 call  0x000032d6 
+ 00011666  0x00001e64 call  0x00002da4 
+ 00011667  0x00001e65 nbranch  0x00002dae , 0x00000018 
+ 00011668  0x00001e66 nbranch  0x00002dae , 0x0000002f 
+ 00011669  0x00001e67 call  0x00002dd6 
+ 00011670  0x00001e68 call  0x00002e75 
+ 00011671  0x00001e6a call  0x00002c7a 
+ 00011672  0x00001e6b add  0x00000013 , 0x00000085 , 0x00000011 
+ 00011673  0x00001e6c ifetch  0x00000001 , 0x00000011 
+ 00011674  0x00001e6e increase  0x00000001 , 0x0000003f 
+ 00011675  0x00001e6f call  0x00003232 
+ 00011676  0x00001e71 call  0x00003253 
+ 00011677  0x00001e73 bne  0x000000ff , 0x00002ed0 
+ 00011678  0x00001e74 call  0x00002cdb 
+ 00011679  0x00001e76 setarg  0x00000000 
+ 00011680  0x00001e77 add  0x00000013 , 0x0000008c , 0x00000005 
+ 00011681  0x00001e78 istore  0x00000002 , 0x00000005 
+ 00011682  0x00001e7c setarg  0x00000000 
+ 00011683  0x00001e7d branch  0x00002d34 
+ 00011684  0x00001e81 disable  0x0000002f 
+ 00011685  0x00001e82 call  0x00002df7 
+ 00011686  0x00001e83 call  0x00002c7a 
+ 00011687  0x00001e84 add  0x00000013 , 0x000000c3 , 0x00000011 
+ 00011688  0x00001e85 ifetch  0x00000001 , 0x00000011 
+ 00011689  0x00001e87 beq  0x00000001 , 0x00002dac 
+ 00011690  0x00001e88 call  0x00002e11 
+ 00011691  0x00001e89 branch  0x00002e45 
+ 00011692  0x00001e8b call  0x00002e45 
+ 00011693  0x00001e8c branch  0x00002d97 
+ 00011694  0x00001e90 bpatch  0x000000b5 , 0x00004016 
+ 00011695  0x00001e91 add  0x00000013 , 0x0000008d , 0x00000011 
+ 00011696  0x00001e92 ifetch  0x00000001 , 0x00000011 
+ 00011697  0x00001e94 increase  0x00000001 , 0x0000003f 
+ 00011698  0x00001e95 add  0x00000013 , 0x0000008d , 0x00000005 
+ 00011699  0x00001e96 istore  0x00000001 , 0x00000005 
+ 00011700  0x00001e98 call  0x00003253 
+ 00011701  0x00001e9a bne  0x000000ff , 0x00002dcc 
+ 00011702  0x00001e9b add  0x00000013 , 0x0000008f , 0x00000011 
+ 00011703  0x00001e9c ifetcht  0x00000001 , 0x00000011 
+ 00011704  0x00001e9e increase  0x00000001 , 0x00000002 
+ 00011705  0x00001e9f add  0x00000013 , 0x0000008f , 0x00000005 
+ 00011706  0x00001ea0 istoret  0x00000001 , 0x00000005 
+ 00011707  0x00001ea2 add  0x00000013 , 0x000000cc , 0x00000011 
+ 00011708  0x00001ea3 ifetch  0x00000001 , 0x00000011 
+ 00011709  0x00001ea5 isub  0x00000002 , 0x0000003f 
+ 00011710  0x00001ea6 nbranch  0x00002d92 , 0x00000034 
+ 00011711  0x00001ea7 bpatch  0x000000b6 , 0x00004016 
+ 00011712  0x00001ea8 call  0x0000325d 
+ 00011713  0x00001eaa beq  0x00000003 , 0x00002cbe 
+ 00011714  0x00001eab add  0x00000013 , 0x000000d1 , 0x00000011 
+ 00011715  0x00001eac ifetch  0x00000001 , 0x00000011 
+ 00011716  0x00001eae increase  0x00000001 , 0x0000003f 
+ 00011717  0x00001eaf add  0x00000013 , 0x000000d1 , 0x00000005 
+ 00011718  0x00001eb0 istore  0x00000001 , 0x00000005 
+ 00011719  0x00001eb2 beq  0x00000002 , 0x00002cb3 
+ 00011720  0x00001eb3 call  0x00002caf 
+ 00011721  0x00001eb4 setarg  0x00000001 
+ 00011722  0x00001eb5 call  0x00003238 
+ 00011723  0x00001eb7 branch  0x00002d8f 
+ 00011724  0x00001eba add  0x00000013 , 0x0000008d , 0x00000011 
+ 00011725  0x00001ebb ifetch  0x00000001 , 0x00000011 
+ 00011726  0x00001ebd rtnne  0x000000ff 
+ 00011727  0x00001ebe add  0x00000013 , 0x0000008d , 0x00000005 
+ 00011728  0x00001ebf call  0x000032d6 
+ 00011729  0x00001ec1 branch  0x00002dd4 
+ 00011730  0x00001ec4 add  0x00000013 , 0x0000008c , 0x00000005 
+ 00011731  0x00001ec5 call  0x000032d6 
+ 00011732  0x00001ec8 jam  0x0000003a , 0x00000a99 
+ 00011733  0x00001ec9 branch  0x00007d86 
+ 00011734  0x00001ecc call  0x00002dde 
+ 00011735  0x00001ecd add  0x00000013 , 0x00000084 , 0x00000011 
+ 00011736  0x00001ece ifetch  0x00000001 , 0x00000011 
+ 00011737  0x00001ed0 rtn  0x00000034 
+ 00011738  0x00001ed1 iforce  0x00000039 
+ 00011739  0x00001ed2 add  0x00000013 , 0x00000002 , 0x00000006 
+ 00011740  0x00001ed4 add  0x00000013 , 0x00000064 , 0x00000005 
+ 00011741  0x00001ed6 branch  0x00007f01 
+ 00011742  0x00001edb call  0x0000325f 
+ 00011743  0x00001edd rshift3  0x0000003f , 0x0000003f 
+ 00011744  0x00001ede add  0x00000013 , 0x00000084 , 0x00000005 
+ 00011745  0x00001edf istore  0x00000001 , 0x00000005 
+ 00011746  0x00001ee2 increase  0x00000001 , 0x0000003f 
+ 00011747  0x00001ee3 add  0x00000013 , 0x00000001 , 0x00000006 
+ 00011748  0x00001ee5 iadd  0x00000006 , 0x00000006 
+ 00011749  0x00001ee6 ifetch  0x00000003 , 0x00000006 
+ 00011750  0x00001ee7 add  0x00000013 , 0x000000c4 , 0x00000005 
+ 00011751  0x00001ee8 istore  0x00000003 , 0x00000005 
+ 00011752  0x00001eeb call  0x0000325f 
+ 00011753  0x00001eed rshift  0x0000003f , 0x0000003f 
+ 00011754  0x00001eee and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00011755  0x00001eef add  0x00000013 , 0x000000ca , 0x00000005 
+ 00011756  0x00001ef0 istore  0x00000001 , 0x00000005 
+ 00011757  0x00001ef2 rtn 
+ 00011758  0x00001ef5 disable  0x00000009 
+ 00011759  0x00001ef6 disable  0x00000007 
+ 00011760  0x00001ef7 setarg  0x00555555 
+ 00011761  0x00001ef8 iforce  0x0000000f 
+ 00011762  0x00001ef9 rtn 
+ 00011763  0x00001efc call  0x00002918 
+ 00011764  0x00001efd add  0x00000013 , 0x00000090 , 0x00000011 
+ 00011765  0x00001efe ifetcht  0x00000001 , 0x00000011 
+ 00011766  0x00001f00 branch  0x00002933 
+ 00011767  0x00001f03 call  0x00002dee 
+ 00011768  0x00001f04 call  0x00002df3 
+ 00011769  0x00001f05 set1  0x00000000 , 0x00000015 
+ 00011770  0x00001f06 enable  0x0000001d 
+ 00011771  0x00001f07 enable  0x00000020 
+ 00011772  0x00001f08 disable  0x00000021 
+ 00011773  0x00001f09 call  0x000053c4 
+ 00011774  0x00001f0a call  0x0000322a 
+ 00011775  0x00001f0c iforce  0x00000009 
+ 00011776  0x00001f0d inject  0x00000003 , 0x00000020 
+ 00011777  0x00001f0e enable  0x00000009 
+ 00011778  0x00001f0f add  0x00000013 , 0x00000088 , 0x00000011 
+ 00011779  0x00001f10 ifetch  0x00000001 , 0x00000011 
+ 00011780  0x00001f12 iforce  0x00000039 
+ 00011781  0x00001f13 add  0x00000013 , 0x00000042 , 0x00000006 
+ 00011782  0x00001f16 ifetch  0x00000001 , 0x00000006 
+ 00011783  0x00001f17 inject  0x00000003 , 0x00000008 
+ 00011784  0x00001f18 loop  0x00002e06 
+ 00011785  0x00001f19 enable  0x00000008 
+ 00011786  0x00001f1a inject  0x00000003 , 0x00000018 
+ 00011787  0x00001f1b disable  0x00000008 
+ 00011788  0x00001f1c until  0x0000003e , 0x00000027 
+ 00011789  0x00001f1d bpatch  0x000000b7 , 0x00004016 
+ 00011790  0x00001f1e nop  0x00000064 
+ 00011791  0x00001f1f disable  0x0000001d 
+ 00011792  0x00001f20 rtn 
+ 00011793  0x00001f23 disable  0x0000002f 
+ 00011794  0x00001f24 force  0x00000000 , 0x00000015 
+ 00011795  0x00001f25 add  0x00000013 , 0x00000090 , 0x00000011 
+ 00011796  0x00001f26 ifetcht  0x00000001 , 0x00000011 
+ 00011797  0x00001f28 call  0x0000291f 
+ 00011798  0x00001f29 call  0x00002924 
+ 00011799  0x00001f2b call  0x00002dee 
+ 00011800  0x00001f2c enable  0x0000000d 
+ 00011801  0x00001f2d enable  0x00000021 
+ 00011802  0x00001f2e disable  0x00000020 
+ 00011803  0x00001f2f call  0x000053c4 
+ 00011804  0x00001f30 call  0x0000322a 
+ 00011805  0x00001f32 iforce  0x00000009 
+ 00011806  0x00001f33 enable  0x00000010 
+ 00011807  0x00001f34 add  0x00000013 , 0x00000089 , 0x00000011 
+ 00011808  0x00001f35 ifetch  0x00000002 , 0x00000011 
+ 00011809  0x00001f37 iforce  0x0000001b 
+ 00011810  0x00001f38 correlate  0x0000003e , 0x00000003 
+ 00011811  0x00001f39 nbranch  0x00002e4d , 0x00000018 
+ 00011812  0x00001f3a enable  0x00000009 
+ 00011813  0x00001f3b parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00011814  0x00001f3c rshift3  0x0000000c , 0x0000003f 
+ 00011815  0x00001f3d add  0x00000013 , 0x00000000 , 0x00000005 
+ 00011816  0x00001f3e istore  0x00000001 , 0x00000005 
+ 00011817  0x00001f40 add  0x00000013 , 0x000000cd , 0x00000011 
+ 00011818  0x00001f41 ifetch  0x00000001 , 0x00000011 
+ 00011819  0x00001f43 beq  0x00000002 , 0x00002e33 
+ 00011820  0x00001f44 bpatch  0x000000b8 , 0x00004017 
+ 00011821  0x00001f45 add  0x00000013 , 0x00000000 , 0x00000011 
+ 00011822  0x00001f46 ifetch  0x00000001 , 0x00000011 
+ 00011823  0x00001f48 add  0x00000013 , 0x00000087 , 0x00000011 
+ 00011824  0x00001f49 ifetcht  0x00000001 , 0x00000011 
+ 00011825  0x00001f4b icompare  0x00000007 , 0x00000002 
+ 00011826  0x00001f4c nbranch  0x00002e45 , 0x00000001 
+ 00011827  0x00001f4e parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00011828  0x00001f4f rshift3  0x0000000c , 0x0000003f 
+ 00011829  0x00001f50 istore  0x00000001 , 0x00000005 
+ 00011830  0x00001f51 rshift3  0x0000003f , 0x0000003f 
+ 00011831  0x00001f52 and  0x0000003f , 0x0000001f , 0x00000039 
+ 00011832  0x00001f53 branch  0x00002e3d , 0x00000005 
+ 00011833  0x00001f55 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00011834  0x00001f56 rshift3  0x0000000c , 0x0000003f 
+ 00011835  0x00001f57 istore  0x00000001 , 0x00000005 
+ 00011836  0x00001f58 loop  0x00002e39 
+ 00011837  0x00001f5a parse  0x00000003 , 0x00000000 , 0x00000018 
+ 00011838  0x00001f5b rshift32  0x0000003f , 0x0000003f 
+ 00011839  0x00001f5c rshift16  0x0000003f , 0x0000003f 
+ 00011840  0x00001f5d istore  0x00000003 , 0x00000005 
+ 00011841  0x00001f5e branch  0x00002e45 , 0x00000006 
+ 00011842  0x00001f5f enable  0x0000002f 
+ 00011843  0x00001f60 disable  0x0000000d 
+ 00011844  0x00001f61 rtn 
+ 00011845  0x00001f65 disable  0x0000001d 
+ 00011846  0x00001f66 disable  0x0000000d 
+ 00011847  0x00001f67 disable  0x00000009 
+ 00011848  0x00001f68 disable  0x00000007 
+ 00011849  0x00001f69 branch  0x000028f9 , 0x00000021 
+ 00011850  0x00001f6a until  0x0000003e , 0x00000027 
+ 00011851  0x00001f6b nop  0x00000064 
+ 00011852  0x00001f6c branch  0x000028f9 
+ 00011853  0x00001f6f call  0x00002e4f 
+ 00011854  0x00001f70 branch  0x00002e45 
+ 00011855  0x00001f73 call  0x000029bb 
+ 00011856  0x00001f74 rtn  0x00000034 
+ 00011857  0x00001f75 add  0x00000013 , 0x000000ea , 0x00000011 
+ 00011858  0x00001f76 ifetcht  0x00000001 , 0x00000011 
+ 00011859  0x00001f78 arg  0x00000d9e , 0x00000011 
+ 00011860  0x00001f7a call  0x00002e58 
+ 00011861  0x00001f7b add  0x00000013 , 0x000000ea , 0x00000005 
+ 00011862  0x00001f7e istoret  0x00000001 , 0x00000005 
+ 00011863  0x00001f7f rtn 
+ 00011864  0x00001f82 arg  0x000000ff , 0x00000012 
+ 00011865  0x00001f83 branch  0x00002e5a 
+ 00011866  0x00001f96 copy  0x00000011 , 0x0000003f 
+ 00011867  0x00001f97 iadd  0x00000002 , 0x00000005 
+ 00011868  0x00001f98 fetch  0x00000001 , 0x00000018 
+ 00011869  0x00001f99 istore  0x00000001 , 0x00000005 
+ 00011870  0x00001f9a increase  0x00000001 , 0x00000002 
+ 00011871  0x00001f9b copy  0x00000012 , 0x0000003f 
+ 00011872  0x00001f9c iand_into  0x00000002 
+ 00011873  0x00001f9d rtn 
+ 00011874  0x00001fa0 arg  0x00000000 , 0x00000002 
+ 00011875  0x00001fa1 copy  0x00000011 , 0x00000006 
+ 00011876  0x00001fa3 ifetch  0x00000001 , 0x00000006 
+ 00011877  0x00001fa4 iadd  0x00000002 , 0x00000002 
+ 00011878  0x00001fa5 loop  0x00002e64 
+ 00011879  0x00001fa6 rshift8  0x00000002 , 0x00000002 
+ 00011880  0x00001fa7 rtn 
+ 00011881  0x00001faa call  0x00002c7a 
+ 00011882  0x00001fab call  0x00002e9f 
+ 00011883  0x00001fac setarg  0x00000001 
+ 00011884  0x00001fad call  0x00003272 
+ 00011885  0x00001fb0 setarg  0x00000000 
+ 00011886  0x00001fb1 call  0x00002e73 
+ 00011887  0x00001fb3 istore  0x00000001 , 0x00000005 
+ 00011888  0x00001fb5 rtn 
+ 00011889  0x00001fb8 call  0x00003270 
+ 00011890  0x00001fba increase  0x00000001 , 0x0000003f 
+ 00011891  0x00001fbd add  0x00000013 , 0x000000fc , 0x00000005 
+ 00011892  0x00001fbe branch  0x000032b4 
+ 00011893  0x00001fc3 add  0x00000013 , 0x000000fd , 0x00000011 
+ 00011894  0x00001fc4 ifetch  0x00000001 , 0x00000011 
+ 00011895  0x00001fc5 increase  0x00000001 , 0x0000003f 
+ 00011896  0x00001fc6 add  0x00000013 , 0x000000fd , 0x00000005 
+ 00011897  0x00001fc7 branch  0x000032b4 
+ 00011898  0x00001fca bpatch  0x000000b9 , 0x00004017 
+ 00011899  0x00001fcb call  0x00003270 
+ 00011900  0x00001fcd sub  0x0000003f , 0x0000007c , 0x0000003e 
+ 00011901  0x00001fce rtn  0x00000002 
+ 00011902  0x00001fcf add  0x00000013 , 0x000000fd , 0x00000011 
+ 00011903  0x00001fd0 ifetcht  0x00000001 , 0x00000011 
+ 00011904  0x00001fd2 isub  0x00000002 , 0x00000002 
+ 00011905  0x00001fd3 call  0x00002e6d 
+ 00011906  0x00001fd4 setarg  0x00000102 
+ 00011907  0x00001fd5 iadd  0x00000013 , 0x00000011 
+ 00011908  0x00001fd6 ifetch  0x00000001 , 0x00000011 
+ 00011909  0x00001fd8 isub  0x00000002 , 0x0000003e 
+ 00011910  0x00001fd9 nbranch  0x00002e8d , 0x00000002 
+ 00011911  0x00001fda setarg  0x00000103 
+ 00011912  0x00001fdb iadd  0x00000013 , 0x00000011 
+ 00011913  0x00001fdc ifetch  0x00000001 , 0x00000011 
+ 00011914  0x00001fde isub  0x00000002 , 0x0000003e 
+ 00011915  0x00001fdf branch  0x00002e99 , 0x00000002 
+ 00011916  0x00001fe0 rtn 
+ 00011917  0x00001fe3 add  0x00000013 , 0x000000fe , 0x00000011 
+ 00011918  0x00001fe4 ifetch  0x00000001 , 0x00000011 
+ 00011919  0x00001fe6 beq  0x00000002 , 0x00002e93 
+ 00011920  0x00001fe7 increase  0x00000001 , 0x0000003f 
+ 00011921  0x00001fe8 call  0x00003272 
+ 00011922  0x00001fea beq  0x00000001 , 0x00002e9f 
+ 00011923  0x00001fec setarg  0x0000000a 
+ 00011924  0x00001fed call  0x000032b0 
+ 00011925  0x00001fef setarg  0x00000000 
+ 00011926  0x00001ff0 call  0x000032b2 
+ 00011927  0x00001ff3 add  0x00000013 , 0x000000ff , 0x00000011 
+ 00011928  0x00001ff5 branch  0x00002ea5 
+ 00011929  0x00001ff8 add  0x00000013 , 0x000000fe , 0x00000011 
+ 00011930  0x00001ff9 ifetch  0x00000001 , 0x00000011 
+ 00011931  0x00001ffb beq  0x00000000 , 0x00002ea7 
+ 00011932  0x00001ffc increase  0xffffffff , 0x0000003f 
+ 00011933  0x00001ffd call  0x00003272 
+ 00011934  0x00001fff beq  0x00000000 , 0x00002ea7 
+ 00011935  0x00002004 setarg  0x00000005 
+ 00011936  0x00002005 call  0x000032b0 
+ 00011937  0x00002007 setarg  0x00000000 
+ 00011938  0x00002008 call  0x000032b2 
+ 00011939  0x0000200b setarg  0x00000100 
+ 00011940  0x0000200d iadd  0x00000013 , 0x00000011 
+ 00011941  0x0000200f ifetch  0x00000001 , 0x00000011 
+ 00011942  0x00002011 branch  0x0000326a 
+ 00011943  0x00002016 setarg  0x00000002 
+ 00011944  0x00002017 call  0x000032b0 
+ 00011945  0x00002019 setarg  0x00000000 
+ 00011946  0x0000201a call  0x000032b2 
+ 00011947  0x0000201d setarg  0x00000101 
+ 00011948  0x0000201f branch  0x00002ea4 
+ 00011949  0x0000202e set1  0x00000026 , 0x00000000 
+ 00011950  0x0000202f call  0x00002c83 
+ 00011951  0x00002032 setarg  0x00000001 
+ 00011952  0x00002033 branch  0x00003256 
+ 00011953  0x00002036 add  0x00000013 , 0x0000008b , 0x00000011 
+ 00011954  0x00002037 ifetch  0x00000001 , 0x00000011 
+ 00011955  0x00002039 beq  0x00000001 , 0x00007fe7 
+ 00011956  0x0000203a call  0x00003253 
+ 00011957  0x0000203c beq  0x00000001 , 0x00002eb9 
+ 00011958  0x0000203d beq  0x00000002 , 0x00002ebd 
+ 00011959  0x0000203e beq  0x00000003 , 0x00002ec1 
+ 00011960  0x0000203f branch  0x00002a8c 
+ 00011961  0x00002042 setarg  0x00000011 
+ 00011962  0x00002043 call  0x00003256 
+ 00011963  0x00002045 jam  0x000000aa , 0x0000119e 
+ 00011964  0x00002046 branch  0x00002ec4 
+ 00011965  0x00002048 setarg  0x00000012 
+ 00011966  0x00002049 call  0x00003256 
+ 00011967  0x0000204b jam  0x00000055 , 0x0000119e 
+ 00011968  0x0000204c branch  0x00002ec4 
+ 00011969  0x0000204e setarg  0x00000013 
+ 00011970  0x0000204f call  0x00003256 
+ 00011971  0x00002051 jam  0x00000022 , 0x0000119e 
+ 00011972  0x00002053 call  0x0000323a 
+ 00011973  0x00002055 and_into  0x00000007 , 0x0000003f 
+ 00011974  0x00002056 store  0x00000001 , 0x0000119f 
+ 00011975  0x00002057 call  0x00003224 
+ 00011976  0x00002059 store  0x00000004 , 0x000011a0 
+ 00011977  0x0000205b jam  0x00000000 , 0x000011a4 
+ 00011978  0x0000205c arg  0x0000119e , 0x00000011 
+ 00011979  0x0000205d arg  0x00000007 , 0x00000002 
+ 00011980  0x0000205e call  0x00002d4c 
+ 00011981  0x0000205f call  0x00002d53 
+ 00011982  0x00002060 call  0x00002d33 
+ 00011983  0x00002061 branch  0x00007fe7 
+ 00011984  0x00002064 call  0x00003253 
+ 00011985  0x00002066 rtneq  0x000000ff 
+ 00011986  0x00002067 beq  0x00000011 , 0x00002ed6 
+ 00011987  0x00002068 beq  0x00000012 , 0x00002ed9 
+ 00011988  0x00002069 beq  0x00000013 , 0x00002edc 
+ 00011989  0x0000206a rtn 
+ 00011990  0x0000206d setarg  0x00000002 
+ 00011991  0x0000206e call  0x00003256 
+ 00011992  0x00002070 branch  0x00002d9f 
+ 00011993  0x00002072 setarg  0x00000003 
+ 00011994  0x00002073 call  0x00003256 
+ 00011995  0x00002075 branch  0x00002d9f 
+ 00011996  0x00002077 setarg  0x000000ff 
+ 00011997  0x00002078 call  0x00003256 
+ 00011998  0x0000207a jam  0x00000039 , 0x00000a99 
+ 00011999  0x0000207b call  0x00007d86 
+ 00012000  0x0000207c add  0x00000013 , 0x00000066 , 0x00000011 
+ 00012001  0x0000207d ifetch  0x00000004 , 0x00000011 
+ 00012002  0x0000207f call  0x0000322c 
+ 00012003  0x00002081 branch  0x00002d9f 
+ 00012004  0x00002084 set0  0x00000026 , 0x00000000 
+ 00012005  0x00002085 call  0x00002f08 
+ 00012006  0x00002086 call  0x00002f22 
+ 00012007  0x00002088 call  0x00003263 
+ 00012008  0x0000208a nop  0x000007d0 
+ 00012009  0x0000208b call  0x00003261 
+ 00012010  0x0000208c beq  0x000000ff , 0x00002dd4 
+ 00012011  0x0000208d call  0x00002da4 
+ 00012012  0x0000208e nbranch  0x00002efa , 0x00000018 
+ 00012013  0x0000208f nbranch  0x00002efa , 0x0000002f 
+ 00012014  0x00002090 call  0x00002dd6 
+ 00012015  0x00002091 call  0x00002c7a 
+ 00012016  0x00002092 add  0x00000013 , 0x00000092 , 0x00000011 
+ 00012017  0x00002093 ifetcht  0x00000004 , 0x00000011 
+ 00012018  0x00002094 call  0x000030be 
+ 00012019  0x00002095 branch  0x00002ead , 0x00000005 
+ 00012020  0x00002096 call  0x00002c7a 
+ 00012021  0x00002097 add  0x00000013 , 0x00000066 , 0x00000011 
+ 00012022  0x00002098 ifetch  0x00000004 , 0x00000011 
+ 00012023  0x00002099 beq  0x00000000 , 0x00002ee7 
+ 00012024  0x0000209a call  0x0000322c 
+ 00012025  0x0000209b branch  0x00002f1c 
+ 00012026  0x0000209e call  0x00003261 
+ 00012027  0x0000209f increase  0x00000001 , 0x0000003f 
+ 00012028  0x000020a0 call  0x00003264 
+ 00012029  0x000020a2 call  0x00002f04 
+ 00012030  0x000020a3 increase  0x00000001 , 0x0000003f 
+ 00012031  0x000020a4 and_into  0x00000001 , 0x0000003f 
+ 00012032  0x000020a5 call  0x00002f06 
+ 00012033  0x000020a6 beq  0x00000000 , 0x00002f0c 
+ 00012034  0x000020a7 beq  0x00000001 , 0x00002f0e 
+ 00012035  0x000020a8 rtn 
+ 00012036  0x000020ab setarg  0x0000018b 
+ 00012037  0x000020ac branch  0x000032d0 
+ 00012038  0x000020ae arg  0x0000018b , 0x00000011 
+ 00012039  0x000020af branch  0x000032b3 
+ 00012040  0x000020b2 call  0x00003267 
+ 00012041  0x000020b3 call  0x00003224 
+ 00012042  0x000020b4 call  0x0000322c 
+ 00012043  0x000020b5 branch  0x00002c8a 
+ 00012044  0x000020b8 call  0x00002f08 
+ 00012045  0x000020b9 branch  0x00002ee8 
+ 00012046  0x000020bc call  0x00002c83 
+ 00012047  0x000020bd branch  0x00002ee8 
+ 00012048  0x000020c1 set0  0x00000026 , 0x00000000 
+ 00012049  0x000020c2 call  0x00002c8a 
+ 00012050  0x000020c3 call  0x00003253 
+ 00012051  0x000020c5 rtnne  0x000000ff 
+ 00012052  0x000020c6 call  0x00002f22 
+ 00012053  0x000020c7 call  0x00003263 
+ 00012054  0x000020ca nop  0x000007d0 
+ 00012055  0x000020cb call  0x00003261 
+ 00012056  0x000020cd beq  0x000000ff , 0x00002dd4 
+ 00012057  0x000020ce call  0x00002da4 
+ 00012058  0x000020cf nbranch  0x00002f27 , 0x00000018 
+ 00012059  0x000020d0 nbranch  0x00002f27 , 0x0000002f 
+ 00012060  0x000020d2 set1  0x00000026 , 0x00000000 
+ 00012061  0x000020d3 call  0x00003263 
+ 00012062  0x000020d4 setarg  0x000000ff 
+ 00012063  0x000020d5 call  0x00003256 
+ 00012064  0x000020d8 jam  0x0000003c , 0x00000a99 
+ 00012065  0x000020d9 branch  0x00007d86 
+ 00012066  0x000020dc set1  0x00000027 , 0x00000000 
+ 00012067  0x000020dd jam  0x000000ff , 0x0000119e 
+ 00012068  0x000020de call  0x0000323a 
+ 00012069  0x000020e0 call  0x00002d77 
+ 00012070  0x000020e1 branch  0x00002d53 
+ 00012071  0x000020e4 call  0x00003261 
+ 00012072  0x000020e6 increase  0x00000001 , 0x0000003f 
+ 00012073  0x000020e7 call  0x00003264 
+ 00012074  0x000020e9 call  0x00002c8a 
+ 00012075  0x000020ea branch  0x00002f16 
+ 00012076  0x000020ed call  0x00003267 
+ 00012077  0x000020f0 setarg  0x000000ff 
+ 00012078  0x000020f1 call  0x00003256 
+ 00012079  0x000020f3 branch  0x00002f10 
+ 00012080  0x000020fd bpatch  0x000000ba , 0x00004017 
+ 00012081  0x000020fe call  0x00002c7a 
+ 00012082  0x000020ff setarg  0x000031b0 
+ 00012083  0x00002100 add  0x00000013 , 0x000000de , 0x00000005 
+ 00012084  0x00002101 istore  0x00000002 , 0x00000005 
+ 00012085  0x00002103 call  0x00002f3d 
+ 00012086  0x00002104 call  0x000048ea 
+ 00012087  0x00002105 call  0x000032b6 
+ 00012088  0x00002107 bpatch  0x000000bb , 0x00004017 
+ 00012089  0x00002108 beq  0x00000000 , 0x00003055 
+ 00012090  0x00002109 beq  0x00000001 , 0x00002f45 
+ 00012091  0x0000210a beq  0x0000000f , 0x00002f41 
+ 00012092  0x0000210b branch  0x00002a8c 
+ 00012093  0x0000210e call  0x0000326c 
+ 00012094  0x0000210f arg  0x00000080 , 0x00000039 
+ 00012095  0x00002110 arg  0x00000d9e , 0x00000005 
+ 00012096  0x00002111 branch  0x00007ec6 
+ 00012097  0x00002114 call  0x00002f4c 
+ 00012098  0x00002116 call  0x00002f4f 
+ 00012099  0x00002117 call  0x000048d3 
+ 00012100  0x00002118 branch  0x00002f42 
+ 00012101  0x0000211b bpatch  0x000000bc , 0x00004017 
+ 00012102  0x0000211c call  0x00002f4c 
+ 00012103  0x0000211e call  0x00002f4f 
+ 00012104  0x0000211f call  0x00002fbd 
+ 00012105  0x00002120 call  0x000048d3 
+ 00012106  0x00002121 call  0x00003019 
+ 00012107  0x00002122 branch  0x00002f47 
+ 00012108  0x00002128 call  0x00003291 
+ 00012109  0x00002129 call  0x00003296 
+ 00012110  0x0000212a branch  0x00003299 
+ 00012111  0x0000212d call  0x0000328f 
+ 00012112  0x0000212f rtnne  0x00000000 
+ 00012113  0x00002131 call  0x00002f55 
+ 00012114  0x00002132 call  0x00002f65 
+ 00012115  0x00002133 call  0x0000316b 
+ 00012116  0x00002134 branch  0x00002f96 
+ 00012117  0x00002137 call  0x00003294 
+ 00012118  0x00002139 rtnbit1  0x00000000 
+ 00012119  0x0000213a set1  0x00000000 , 0x0000003f 
+ 00012120  0x0000213b call  0x00003297 
+ 00012121  0x0000213d call  0x00003267 
+ 00012122  0x00002140 call  0x00003299 
+ 00012123  0x00002142 jam  0x00000000 , 0x00000d38 
+ 00012124  0x00002143 call  0x0000324f 
+ 00012125  0x00002145 call  0x00002f61 
+ 00012126  0x00002147 add  0x00000013 , 0x00000000 , 0x00000005 
+ 00012127  0x00002149 arg  0x00000042 , 0x00000039 
+ 00012128  0x0000214a branch  0x00007ed4 
+ 00012129  0x0000214d call  0x00003231 
+ 00012130  0x0000214f call  0x0000327d 
+ 00012131  0x00002151 call  0x0000322c 
+ 00012132  0x00002153 branch  0x00002c8a 
+ 00012133  0x00002156 bpatch  0x000000bd , 0x00004017 
+ 00012134  0x00002157 call  0x0000324c 
+ 00012135  0x00002159 beq  0x00000001 , 0x00002f8d 
+ 00012136  0x0000215a call  0x00003245 
+ 00012137  0x0000215c beq  0x00000001 , 0x00002c8a 
+ 00012138  0x0000215d setarg  0x00000136 
+ 00012139  0x0000215e iadd  0x00000013 , 0x00000011 
+ 00012140  0x0000215f ifetcht  0x00000004 , 0x00000011 
+ 00012141  0x00002161 copy  0x00000022 , 0x0000003f 
+ 00012142  0x00002162 isub  0x00000002 , 0x0000003e 
+ 00012143  0x00002163 ncall  0x00002d18 , 0x00000002 
+ 00012144  0x00002164 copy  0x0000003f , 0x00000012 
+ 00012145  0x00002165 setarg  0x00000136 
+ 00012146  0x00002166 iadd  0x00000013 , 0x00000011 
+ 00012147  0x00002167 ifetch  0x00000004 , 0x00000011 
+ 00012148  0x00002168 copy  0x0000003f , 0x00000002 
+ 00012149  0x0000216a setarg  0x0000013a 
+ 00012150  0x0000216b iadd  0x00000013 , 0x00000011 
+ 00012151  0x0000216c copy  0x00000002 , 0x0000003f 
+ 00012152  0x0000216d ifetcht  0x00000001 , 0x00000011 
+ 00012153  0x0000216f iadd  0x00000002 , 0x00000002 
+ 00012154  0x00002170 copy  0x00000012 , 0x0000003f 
+ 00012155  0x00002171 isub  0x00000002 , 0x0000003e 
+ 00012156  0x00002172 nrtn  0x00000002 
+ 00012157  0x00002173 set0  0x0000001c , 0x0000003f 
+ 00012158  0x00002174 setarg  0x00000136 
+ 00012159  0x00002175 iadd  0x00000013 , 0x00000005 
+ 00012160  0x00002176 istore  0x00000004 , 0x00000005 
+ 00012161  0x00002179 call  0x00002c8a 
+ 00012162  0x0000217a call  0x00003278 
+ 00012163  0x0000217c increase  0x00000001 , 0x0000003f 
+ 00012164  0x0000217d call  0x0000327b 
+ 00012165  0x0000217f rtnne  0x00000002 
+ 00012166  0x00002180 call  0x0000327a 
+ 00012167  0x00002184 branch  0x0000324f 
+ 00012168  0x00002187 copy  0x00000022 , 0x0000003f 
+ 00012169  0x00002188 arg  0x00000136 , 0x00000011 
+ 00012170  0x00002189 call  0x000032bf 
+ 00012171  0x0000218a istore  0x00000004 , 0x00000005 
+ 00012172  0x0000218e branch  0x0000327a 
+ 00012173  0x00002191 arg  0x00000d9e , 0x00000011 
+ 00012174  0x00002192 call  0x00002f94 
+ 00012175  0x00002193 add  0x00000013 , 0x000000eb , 0x00000005 
+ 00012176  0x00002194 istoret  0x00000001 , 0x00000005 
+ 00012177  0x00002196 sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012178  0x00002197 nrtn  0x00000002 
+ 00012179  0x00002198 branch  0x00002c8a 
+ 00012180  0x0000219b arg  0x00000100 , 0x00000039 
+ 00012181  0x0000219c branch  0x00002e62 
+ 00012182  0x0000219f call  0x00002f99 
+ 00012183  0x000021a0 call  0x00002fa5 
+ 00012184  0x000021a1 branch  0x00002fb1 
+ 00012185  0x000021a4 setarg  0x00000180 
+ 00012186  0x000021a5 call  0x000032d0 
+ 00012187  0x000021a7 rtn  0x00000034 
+ 00012188  0x000021a8 arg  0x0000000b , 0x00000007 
+ 00012189  0x000021a9 call  0x00007f16 
+ 00012190  0x000021aa nrtn  0x00000034 
+ 00012191  0x000021ab call  0x000032a7 
+ 00012192  0x000021ae setarg  0x00000001 
+ 00012193  0x000021af store  0x00000001 , 0x00000d54 
+ 00012194  0x000021b0 setarg  0x00000000 
+ 00012195  0x000021b1 istore  0x00000007 , 0x00000005 
+ 00012196  0x000021b2 branch  0x000031b8 
+ 00012197  0x000021b5 setarg  0x0000017e 
+ 00012198  0x000021b6 call  0x000032d0 
+ 00012199  0x000021b8 rtn  0x00000034 
+ 00012200  0x000021b9 arg  0x0000000e , 0x00000007 
+ 00012201  0x000021ba call  0x00007f16 
+ 00012202  0x000021bb nrtn  0x00000034 
+ 00012203  0x000021bc call  0x000032aa 
+ 00012204  0x000021bf arg  0x00000d64 , 0x00000005 
+ 00012205  0x000021c0 arg  0x00000002 , 0x00000039 
+ 00012206  0x000021c1 call  0x00007ec6 
+ 00012207  0x000021c2 jam  0x00000000 , 0x00000d64 
+ 00012208  0x000021c3 branch  0x000031ed 
+ 00012209  0x000021c6 setarg  0x0000017f 
+ 00012210  0x000021c7 call  0x000032d0 
+ 00012211  0x000021c9 rtn  0x00000034 
+ 00012212  0x000021ca arg  0x0000000c , 0x00000007 
+ 00012213  0x000021cb call  0x00007f16 
+ 00012214  0x000021cc nrtn  0x00000034 
+ 00012215  0x000021cd call  0x000032ad 
+ 00012216  0x000021d0 arg  0x00000d74 , 0x00000005 
+ 00012217  0x000021d1 arg  0x00000002 , 0x00000039 
+ 00012218  0x000021d2 call  0x00007ec6 
+ 00012219  0x000021d3 jam  0x00000003 , 0x00000d74 
+ 00012220  0x000021d4 branch  0x00003207 
+ 00012221  0x000021d7 call  0x0000328f 
+ 00012222  0x000021d9 rtnne  0x00000001 
+ 00012223  0x000021da call  0x00002fc1 
+ 00012224  0x000021db branch  0x00002fcb 
+ 00012225  0x000021de call  0x00003294 
+ 00012226  0x000021e0 rtnbit1  0x00000001 
+ 00012227  0x000021e1 set1  0x00000001 , 0x0000003f 
+ 00012228  0x000021e2 call  0x00003297 
+ 00012229  0x000021e4 call  0x0000329c 
+ 00012230  0x000021e6 call  0x00002c83 
+ 00012231  0x000021e7 setarg  0x00000000 
+ 00012232  0x000021e8 arg  0x00000106 , 0x00000011 
+ 00012233  0x000021e9 call  0x000032bf 
+ 00012234  0x000021eb branch  0x000032c5 
+ 00012235  0x000021ee call  0x0000316e 
+ 00012236  0x000021ef nbranch  0x00002f5e , 0x0000002f 
+ 00012237  0x000021f0 add  0x00000013 , 0x00000000 , 0x00000006 
+ 00012238  0x000021f1 setarg  0x00000109 
+ 00012239  0x000021f2 iadd  0x00000013 , 0x00000005 
+ 00012240  0x000021f3 arg  0x00000008 , 0x00000039 
+ 00012241  0x000021f4 call  0x00007f01 
+ 00012242  0x000021f5 setarg  0x0000010b 
+ 00012243  0x000021f6 call  0x000032d0 
+ 00012244  0x000021f7 beq  0x000000aa , 0x00002fd9 
+ 00012245  0x000021f8 beq  0x00000055 , 0x00002fed 
+ 00012246  0x000021f9 beq  0x00000022 , 0x00003001 
+ 00012247  0x000021fa beq  0x000000ff , 0x00003212 
+ 00012248  0x000021fb branch  0x00002f5e 
+ 00012249  0x000021fe call  0x000032bd 
+ 00012250  0x000021ff beq  0x00000001 , 0x00002fdd 
+ 00012251  0x00002200 beq  0x00000002 , 0x00002fe8 
+ 00012252  0x00002201 rtn 
+ 00012253  0x00002203 setarg  0x00000001 
+ 00012254  0x00002204 call  0x00002ff7 
+ 00012255  0x00002207 setarg  0x00000001 
+ 00012256  0x00002208 call  0x00003289 
+ 00012257  0x0000220b setarg  0x00000080 
+ 00012258  0x0000220c arg  0x00000130 , 0x00000011 
+ 00012259  0x0000220d call  0x000032b3 
+ 00012260  0x0000220f call  0x0000327d 
+ 00012261  0x00002211 arg  0x00000131 , 0x00000011 
+ 00012262  0x00002212 call  0x000032bf 
+ 00012263  0x00002214 branch  0x0000322d 
+ 00012264  0x00002217 setarg  0x00000001 
+ 00012265  0x00002218 call  0x00002fff 
+ 00012266  0x0000221b setarg  0x00000002 
+ 00012267  0x0000221c call  0x00003289 
+ 00012268  0x0000221e branch  0x00002fe1 
+ 00012269  0x00002221 call  0x000032bd 
+ 00012270  0x00002222 beq  0x00000001 , 0x00002ff1 
+ 00012271  0x00002223 beq  0x00000002 , 0x00002ff9 
+ 00012272  0x00002224 rtn 
+ 00012273  0x00002226 call  0x00002fdf 
+ 00012274  0x00002227 setarg  0x00000106 
+ 00012275  0x00002228 call  0x000032d0 
+ 00012276  0x0000222a beq  0x00000001 , 0x00002ff6 
+ 00012277  0x0000222b rtn 
+ 00012278  0x0000222d setarg  0x00000002 
+ 00012279  0x00002230 arg  0x00000106 , 0x00000011 
+ 00012280  0x00002231 branch  0x000032b3 
+ 00012281  0x00002234 call  0x00002fea 
+ 00012282  0x00002235 setarg  0x00000107 
+ 00012283  0x00002236 call  0x000032d0 
+ 00012284  0x00002238 beq  0x00000001 , 0x00002ffe 
+ 00012285  0x00002239 rtn 
+ 00012286  0x0000223b setarg  0x00000002 
+ 00012287  0x0000223e arg  0x00000107 , 0x00000011 
+ 00012288  0x0000223f branch  0x000032b3 
+ 00012289  0x00002242 call  0x000032bd 
+ 00012290  0x00002243 beq  0x00000001 , 0x00003005 
+ 00012291  0x00002244 beq  0x00000002 , 0x00003011 
+ 00012292  0x00002245 rtn 
+ 00012293  0x00002247 setarg  0x00000106 
+ 00012294  0x00002248 call  0x000032d0 
+ 00012295  0x0000224a beq  0x00000002 , 0x00003009 
+ 00012296  0x0000224b rtn 
+ 00012297  0x0000224d call  0x0000328b 
+ 00012298  0x0000224f or_into  0x00000001 , 0x0000003f 
+ 00012299  0x00002250 call  0x0000328d 
+ 00012300  0x00002253 setarg  0x00000000 
+ 00012301  0x00002254 setarg  0x00000106 
+ 00012302  0x00002255 iadd  0x00000013 , 0x00000005 
+ 00012303  0x00002256 istore  0x00000002 , 0x00000005 
+ 00012304  0x00002257 branch  0x00002f5e 
+ 00012305  0x0000225a setarg  0x00000107 
+ 00012306  0x0000225b call  0x000032d0 
+ 00012307  0x0000225d bne  0x00000000 , 0x00003015 
+ 00012308  0x0000225e rtn 
+ 00012309  0x00002260 call  0x0000328b 
+ 00012310  0x00002262 or_into  0x00000002 , 0x0000003f 
+ 00012311  0x00002263 call  0x0000328d 
+ 00012312  0x00002265 branch  0x0000300c 
+ 00012313  0x00002269 fetch  0x00000001 , 0x00000d50 
+ 00012314  0x0000226a rtn  0x00000034 
+ 00012315  0x0000226b jam  0x00000000 , 0x00000d50 
+ 00012316  0x0000226c fetch  0x00000002 , 0x00000d4e 
+ 00012317  0x0000226d arg  0x000002ba , 0x00000002 
+ 00012318  0x0000226e isub  0x00000002 , 0x0000003e 
+ 00012319  0x0000226f nrtn  0x00000005 
+ 00012320  0x00002271 fetch  0x00000001 , 0x00000cb6 
+ 00012321  0x00002272 rtnne  0x000000ba 
+ 00012322  0x00002273 fetch  0x00000001 , 0x00000cb7 
+ 00012323  0x00002274 bpatch  0x000000be , 0x00004017 
+ 00012324  0x00002275 beq  0x000000a0 , 0x0000303b 
+ 00012325  0x00002276 beq  0x000000a1 , 0x0000302c 
+ 00012326  0x00002277 beq  0x000000a6 , 0x00003041 
+ 00012327  0x00002278 beq  0x000000a7 , 0x00003043 
+ 00012328  0x00002279 beq  0x000000a9 , 0x00003049 
+ 00012329  0x0000227a beq  0x000000b0 , 0x0000304d 
+ 00012330  0x0000227c jam  0x00000000 , 0x00000d42 
+ 00012331  0x0000227d rtn 
+ 00012332  0x0000227f fetch  0x00000001 , 0x00000cb8 
+ 00012333  0x00002280 beq  0x00000001 , 0x00003031 
+ 00012334  0x00002281 beq  0x00000084 , 0x00003034 
+ 00012335  0x00002282 beq  0x000000a7 , 0x00003039 
+ 00012336  0x00002283 branch  0x0000302a 
+ 00012337  0x00002285 call  0x0000328b 
+ 00012338  0x00002287 store  0x00000001 , 0x00000cf7 
+ 00012339  0x00002288 branch  0x0000303f 
+ 00012340  0x0000228a call  0x00003291 
+ 00012341  0x0000228c call  0x00003296 
+ 00012342  0x0000228e call  0x0000328b 
+ 00012343  0x00002290 store  0x00000001 , 0x00000cf7 
+ 00012344  0x00002291 branch  0x0000303f 
+ 00012345  0x00002295 jam  0x000000a1 , 0x00000cf7 
+ 00012346  0x00002296 branch  0x0000303f 
+ 00012347  0x00002299 fetch  0x00000001 , 0x00000cb8 
+ 00012348  0x0000229a beq  0x00000081 , 0x0000303e 
+ 00012349  0x0000229c branch  0x0000302a 
+ 00012350  0x000022a0 call  0x00003090 
+ 00012351  0x000022a2 jam  0x00000001 , 0x00000d42 
+ 00012352  0x000022a3 rtn 
+ 00012353  0x000022a9 jam  0x00000015 , 0x00000cf7 
+ 00012354  0x000022aa branch  0x0000303f 
+ 00012355  0x000022ad call  0x0000328f 
+ 00012356  0x000022af beq  0x00000000 , 0x00003047 
+ 00012357  0x000022b0 beq  0x00000001 , 0x00003039 
+ 00012358  0x000022b2 rtn 
+ 00012359  0x000022b4 jam  0x000000a0 , 0x00000cf7 
+ 00012360  0x000022b5 branch  0x0000303f 
+ 00012361  0x000022bb jam  0x00000000 , 0x00000cf7 
+ 00012362  0x000022bc jam  0x00000000 , 0x00000cf8 
+ 00012363  0x000022bd jam  0x00000001 , 0x00000cf9 
+ 00012364  0x000022be branch  0x0000303f 
+ 00012365  0x000022c2 call  0x0000329c 
+ 00012366  0x000022c3 fetch  0x00000001 , 0x00000cb8 
+ 00012367  0x000022c4 increase  0x00000002 , 0x0000003f 
+ 00012368  0x000022c5 copy  0x0000003f , 0x00000039 
+ 00012369  0x000022c6 arg  0x00000cb6 , 0x00000006 
+ 00012370  0x000022c7 setarg  0x0000013c 
+ 00012371  0x000022c8 iadd  0x00000013 , 0x00000005 
+ 00012372  0x000022c9 branch  0x00007f01 
+ 00012373  0x000022cd bpatch  0x000000bf , 0x00004017 
+ 00012374  0x000022ce call  0x0000307d 
+ 00012375  0x000022d0 call  0x00002c7f 
+ 00012376  0x000022d1 call  0x000048d3 
+ 00012377  0x000022d2 branch  0x00003057 
+ 00012378  0x000022d5 call  0x0000328f 
+ 00012379  0x000022d7 rtnne  0x00000000 
+ 00012380  0x000022d8 call  0x00002f51 
+ 00012381  0x000022d9 branch  0x00003098 
+ 00012382  0x000022dc call  0x0000328f 
+ 00012383  0x000022de rtnne  0x00000001 
+ 00012384  0x000022df call  0x00002fc1 
+ 00012385  0x000022e0 call  0x00002fcb 
+ 00012386  0x000022e1 call  0x0000328b 
+ 00012387  0x000022e3 rtn  0x00000034 
+ 00012388  0x000022e4 call  0x00003286 
+ 00012389  0x000022e6 call  0x00002f4c 
+ 00012390  0x000022e7 call  0x00003093 
+ 00012391  0x000022e9 setarg  0x00000000 
+ 00012392  0x000022ea add  0x00000013 , 0x000000a7 , 0x00000005 
+ 00012393  0x000022ec branch  0x0000322d 
+ 00012394  0x000022ef call  0x00007fe9 
+ 00012395  0x000022f0 add  0x00000013 , 0x000000a7 , 0x00000011 
+ 00012396  0x000022f1 ifetcht  0x00000004 , 0x00000011 
+ 00012397  0x000022f3 copy  0x00000022 , 0x0000003f 
+ 00012398  0x000022f4 isub  0x00000002 , 0x0000003e 
+ 00012399  0x000022f5 ncall  0x00002d18 , 0x00000002 
+ 00012400  0x000022f6 copy  0x0000003f , 0x00000012 
+ 00012401  0x000022f7 add  0x00000013 , 0x000000a7 , 0x00000011 
+ 00012402  0x000022f8 ifetch  0x00000004 , 0x00000011 
+ 00012403  0x000022fa add  0x00000013 , 0x000000ab , 0x00000011 
+ 00012404  0x000022fb ifetcht  0x00000001 , 0x00000011 
+ 00012405  0x000022fd iadd  0x00000002 , 0x00000002 
+ 00012406  0x000022fe copy  0x00000012 , 0x0000003f 
+ 00012407  0x000022ff isub  0x00000002 , 0x0000003e 
+ 00012408  0x00002300 nrtn  0x00000002 
+ 00012409  0x00002301 set0  0x0000001c , 0x0000003f 
+ 00012410  0x00002302 add  0x00000013 , 0x000000a7 , 0x00000005 
+ 00012411  0x00002303 istore  0x00000004 , 0x00000005 
+ 00012412  0x00002305 branch  0x00007fe7 
+ 00012413  0x00002308 setarg  0x00000001 
+ 00012414  0x00002309 call  0x00003287 
+ 00012415  0x0000230b call  0x00003283 
+ 00012416  0x0000230d setarg  0x000000ff 
+ 00012417  0x0000230e add  0x00000013 , 0x000000ab , 0x00000005 
+ 00012418  0x0000230f istore  0x00000001 , 0x00000005 
+ 00012419  0x00002311 branch  0x00003067 
+ 00012420  0x00002314 setarg  0x0000015c 
+ 00012421  0x00002315 call  0x000032d0 
+ 00012422  0x00002317 rtn  0x00000034 
+ 00012423  0x00002318 call  0x0000306a 
+ 00012424  0x00002319 nrtn  0x00000028 
+ 00012425  0x0000231a call  0x00003281 
+ 00012426  0x0000231c increase  0x00000001 , 0x0000003f 
+ 00012427  0x0000231d and_into  0x00000001 , 0x0000003f 
+ 00012428  0x0000231e call  0x00003284 
+ 00012429  0x00002320 beq  0x00000000 , 0x00002f4c 
+ 00012430  0x00002321 beq  0x00000001 , 0x00003090 
+ 00012431  0x00002322 rtn 
+ 00012432  0x00002328 setarg  0x00000001 
+ 00012433  0x00002329 call  0x00003292 
+ 00012434  0x0000232a branch  0x00003296 
+ 00012435  0x0000232d setarg  0x00000001 
+ 00012436  0x0000232e call  0x000032a5 
+ 00012437  0x00002331 setarg  0x00000280 
+ 00012438  0x00002332 arg  0x00000008 , 0x00000007 
+ 00012439  0x00002333 branch  0x00007f08 
+ 00012440  0x00002336 call  0x000032a2 
+ 00012441  0x00002338 rtn  0x00000034 
+ 00012442  0x00002339 arg  0x00000008 , 0x00000007 
+ 00012443  0x0000233a call  0x00007f16 
+ 00012444  0x0000233b nrtn  0x00000034 
+ 00012445  0x0000233c call  0x000032a4 
+ 00012446  0x0000233f setarg  0x00000007 
+ 00012447  0x00002340 call  0x00003292 
+ 00012448  0x00002342 call  0x00003296 
+ 00012449  0x00002344 branch  0x00002f5e 
+ 00012450  0x00002347 bpatch  0x000000c0 , 0x00004018 
+ 00012451  0x00002348 call  0x0000328f 
+ 00012452  0x0000234a rtnne  0x00000007 
+ 00012453  0x0000234b call  0x000030cb 
+ 00012454  0x0000234c call  0x000030e0 
+ 00012455  0x0000234d call  0x0000316e 
+ 00012456  0x0000234e nbranch  0x00002f5e , 0x0000002f 
+ 00012457  0x00002350 call  0x000030bc 
+ 00012458  0x00002351 call  0x00003172 , 0x00000005 
+ 00012459  0x00002355 call  0x00002f4c 
+ 00012460  0x00002356 call  0x00003294 
+ 00012461  0x00002358 set1  0x00000000 , 0x0000003f 
+ 00012462  0x00002359 call  0x00003297 
+ 00012463  0x0000235b call  0x00002f5e 
+ 00012464  0x0000235c call  0x00003093 
+ 00012465  0x0000235d call  0x000030bc 
+ 00012466  0x0000235e branch  0x000030c1 , 0x00000005 
+ 00012467  0x0000235f setarg  0x00000164 
+ 00012468  0x00002360 call  0x000032d3 
+ 00012469  0x00002362 call  0x000030be 
+ 00012470  0x00002363 branch  0x000030c5 , 0x00000005 
+ 00012471  0x00002364 setarg  0x00000160 
+ 00012472  0x00002365 call  0x000032d3 
+ 00012473  0x00002367 call  0x000030be 
+ 00012474  0x00002368 branch  0x000030c8 , 0x00000005 
+ 00012475  0x00002369 rtn 
+ 00012476  0x0000236c setarg  0x0000012b 
+ 00012477  0x0000236d call  0x000032d3 
+ 00012478  0x00002370 call  0x0000322a 
+ 00012479  0x00002372 isub  0x00000002 , 0x0000003e 
+ 00012480  0x00002373 rtn 
+ 00012481  0x00002376 setarg  0x00000182 
+ 00012482  0x00002377 call  0x000032d0 
+ 00012483  0x0000237b add  0x00000013 , 0x00000091 , 0x00000005 
+ 00012484  0x0000237c branch  0x000032b4 
+ 00012485  0x0000237f setarg  0x00000185 
+ 00012486  0x00002380 call  0x000032d0 
+ 00012487  0x00002382 branch  0x000030c3 
+ 00012488  0x00002384 setarg  0x00000188 
+ 00012489  0x00002385 call  0x000032d0 
+ 00012490  0x00002387 branch  0x000030c3 
+ 00012491  0x0000238a call  0x00003294 
+ 00012492  0x0000238c rtnbit1  0x00000007 
+ 00012493  0x0000238d set1  0x00000007 , 0x0000003f 
+ 00012494  0x0000238e call  0x00003297 
+ 00012495  0x00002390 call  0x00003283 
+ 00012496  0x00002392 call  0x0000329c 
+ 00012497  0x00002394 setarg  0x00000000 
+ 00012498  0x00002395 add  0x00000013 , 0x000000f5 , 0x00000005 
+ 00012499  0x00002396 istore  0x00000003 , 0x00000005 
+ 00012500  0x00002398 arg  0x00000183 , 0x00000011 
+ 00012501  0x00002399 call  0x000032bf 
+ 00012502  0x0000239a istore  0x00000007 , 0x00000005 
+ 00012503  0x0000239d call  0x000030bc 
+ 00012504  0x0000239e nrtn  0x00000005 
+ 00012505  0x0000239f add  0x00000013 , 0x00000091 , 0x00000011 
+ 00012506  0x000023a0 ifetch  0x00000001 , 0x00000011 
+ 00012507  0x000023a2 arg  0x00000182 , 0x00000011 
+ 00012508  0x000023a3 call  0x000032b3 
+ 00012509  0x000023a5 add  0x00000013 , 0x00000090 , 0x00000011 
+ 00012510  0x000023a6 ifetch  0x00000001 , 0x00000011 
+ 00012511  0x000023a9 branch  0x0000314a 
+ 00012512  0x000023ac bpatch  0x000000c1 , 0x00004018 
+ 00012513  0x000023ad call  0x00003281 
+ 00012514  0x000023af increase  0x00000001 , 0x0000003f 
+ 00012515  0x000023b0 and_into  0x00000003 , 0x0000003f 
+ 00012516  0x000023b1 call  0x00003284 
+ 00012517  0x000023b4 beq  0x00000000 , 0x0000310e 
+ 00012518  0x000023b5 beq  0x00000001 , 0x00003132 
+ 00012519  0x000023b6 beq  0x00000002 , 0x000030ea 
+ 00012520  0x000023b7 beq  0x00000003 , 0x00003132 
+ 00012521  0x000023b8 rtn 
+ 00012522  0x000023bb call  0x00002fdf 
+ 00012523  0x000023bc setarg  0x00000160 
+ 00012524  0x000023bd call  0x0000327e 
+ 00012525  0x000023bf branch  0x000030e0 , 0x00000034 
+ 00012526  0x000023c0 call  0x0000322c 
+ 00012527  0x000023c2 setarg  0x00000189 
+ 00012528  0x000023c3 call  0x000032d0 
+ 00012529  0x000023c5 call  0x00003108 , 0x00000034 
+ 00012530  0x000023c6 setarg  0x00000187 
+ 00012531  0x000023c7 call  0x000032d0 
+ 00012532  0x000023c9 call  0x0000322f 
+ 00012533  0x000023cb add  0x00000013 , 0x000000f7 , 0x00000011 
+ 00012534  0x000023cc ifetcht  0x00000001 , 0x00000011 
+ 00012535  0x000023ce arg  0x00000f9e , 0x00000011 
+ 00012536  0x000023cf call  0x00002e58 
+ 00012537  0x000023d0 add  0x00000013 , 0x000000f7 , 0x00000005 
+ 00012538  0x000023d1 istoret  0x00000001 , 0x00000005 
+ 00012539  0x000023d3 call  0x00002f94 
+ 00012540  0x000023d4 add  0x00000013 , 0x000000fa , 0x00000005 
+ 00012541  0x000023d5 istoret  0x00000001 , 0x00000005 
+ 00012542  0x000023d7 sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012543  0x000023d8 nrtn  0x00000002 
+ 00012544  0x000023d9 setarg  0x00000188 
+ 00012545  0x000023da call  0x00003275 
+ 00012546  0x000023dc call  0x00002c90 
+ 00012547  0x000023dd arg  0x00000188 , 0x00000011 
+ 00012548  0x000023de call  0x000032c8 
+ 00012549  0x000023df istoret  0x00000001 , 0x00000005 
+ 00012550  0x000023e3 arg  0x00000187 , 0x00000011 
+ 00012551  0x000023e4 branch  0x000032b3 
+ 00012552  0x000023e7 setarg  0x00000001 
+ 00012553  0x000023e8 arg  0x00000189 , 0x00000011 
+ 00012554  0x000023e9 call  0x000032b3 
+ 00012555  0x000023eb arg  0x00000000 , 0x00000002 
+ 00012556  0x000023ec call  0x00002c94 
+ 00012557  0x000023ef branch  0x00003106 
+ 00012558  0x000023f2 call  0x00002fea 
+ 00012559  0x000023f3 setarg  0x00000164 
+ 00012560  0x000023f4 call  0x0000327e 
+ 00012561  0x000023f6 branch  0x000030e0 , 0x00000034 
+ 00012562  0x000023f7 call  0x0000322c 
+ 00012563  0x000023f9 setarg  0x00000186 
+ 00012564  0x000023fa call  0x000032d0 
+ 00012565  0x000023fc call  0x0000312c , 0x00000034 
+ 00012566  0x000023fd setarg  0x00000184 
+ 00012567  0x000023fe call  0x000032d0 
+ 00012568  0x00002400 call  0x0000322f 
+ 00012569  0x00002402 add  0x00000013 , 0x000000f6 , 0x00000011 
+ 00012570  0x00002403 ifetcht  0x00000001 , 0x00000011 
+ 00012571  0x00002405 arg  0x0000109e , 0x00000011 
+ 00012572  0x00002406 call  0x00002e58 
+ 00012573  0x00002407 add  0x00000013 , 0x000000f6 , 0x00000005 
+ 00012574  0x00002408 istoret  0x00000001 , 0x00000005 
+ 00012575  0x0000240a call  0x00002f94 
+ 00012576  0x0000240b add  0x00000013 , 0x000000f9 , 0x00000005 
+ 00012577  0x0000240c istoret  0x00000001 , 0x00000005 
+ 00012578  0x0000240e sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012579  0x0000240f nrtn  0x00000002 
+ 00012580  0x00002410 setarg  0x00000185 
+ 00012581  0x00002411 call  0x00003275 
+ 00012582  0x00002413 call  0x00002c90 
+ 00012583  0x00002414 arg  0x00000185 , 0x00000011 
+ 00012584  0x00002415 call  0x000032c8 
+ 00012585  0x00002416 istoret  0x00000001 , 0x00000005 
+ 00012586  0x0000241a arg  0x00000184 , 0x00000011 
+ 00012587  0x0000241b branch  0x000032b3 
+ 00012588  0x0000241e setarg  0x00000001 
+ 00012589  0x0000241f arg  0x00000186 , 0x00000011 
+ 00012590  0x00002420 call  0x000032b3 
+ 00012591  0x00002422 arg  0x00000000 , 0x00000002 
+ 00012592  0x00002423 call  0x00002c94 
+ 00012593  0x00002426 branch  0x0000312a 
+ 00012594  0x00002429 call  0x00002fdf 
+ 00012595  0x0000242a call  0x0000327d 
+ 00012596  0x0000242c call  0x0000322c 
+ 00012597  0x0000242e setarg  0x00000183 
+ 00012598  0x0000242f call  0x000032d0 
+ 00012599  0x00002431 call  0x0000314c , 0x00000034 
+ 00012600  0x00002432 call  0x0000314f 
+ 00012601  0x00002433 add  0x00000013 , 0x000000f5 , 0x00000011 
+ 00012602  0x00002434 ifetcht  0x00000001 , 0x00000011 
+ 00012603  0x00002436 arg  0x00000e9e , 0x00000011 
+ 00012604  0x00002437 call  0x00002e58 
+ 00012605  0x00002438 add  0x00000013 , 0x000000f5 , 0x00000005 
+ 00012606  0x00002439 istoret  0x00000001 , 0x00000005 
+ 00012607  0x0000243b call  0x00002f94 
+ 00012608  0x0000243c add  0x00000013 , 0x000000f8 , 0x00000005 
+ 00012609  0x0000243d istoret  0x00000001 , 0x00000005 
+ 00012610  0x0000243f sub  0x00000002 , 0x00000050 , 0x0000003e 
+ 00012611  0x00002440 nrtn  0x00000002 
+ 00012612  0x00002441 setarg  0x00000182 
+ 00012613  0x00002442 call  0x00003275 
+ 00012614  0x00002444 call  0x00002c90 
+ 00012615  0x00002445 arg  0x00000182 , 0x00000011 
+ 00012616  0x00002446 call  0x000032c8 
+ 00012617  0x00002447 istoret  0x00000001 , 0x00000005 
+ 00012618  0x0000244c arg  0x00000181 , 0x00000011 
+ 00012619  0x0000244d branch  0x000032b3 
+ 00012620  0x00002455 setarg  0x00000001 
+ 00012621  0x00002456 arg  0x00000183 , 0x00000011 
+ 00012622  0x00002457 call  0x000032b3 
+ 00012623  0x00002459 setarg  0x00000181 
+ 00012624  0x0000245a call  0x000032d0 
+ 00012625  0x0000245b branch  0x0000322f 
+ 00012626  0x00002460 add  0x00000013 , 0x00000000 , 0x00000011 
+ 00012627  0x00002461 ifetch  0x00000001 , 0x00000011 
+ 00012628  0x00002463 call  0x0000323c 
+ 00012629  0x00002466 call  0x00002dde 
+ 00012630  0x00002468 call  0x0000325f 
+ 00012631  0x0000246a isolate1  0x00000000 , 0x0000003f 
+ 00012632  0x0000246b branch  0x0000315c , 0x00000001 
+ 00012633  0x0000246d call  0x0000315d 
+ 00012634  0x0000246e call  0x00002d53 
+ 00012635  0x0000246f call  0x00002df7 
+ 00012636  0x00002471 branch  0x00002e45 
+ 00012637  0x00002474 bpatch  0x000000c2 , 0x00004018 
+ 00012638  0x00002475 add  0x00000013 , 0x00000086 , 0x00000005 
+ 00012639  0x00002476 call  0x000032d6 
+ 00012640  0x00002478 setarg  0x0000013b 
+ 00012641  0x00002479 call  0x000032d0 
+ 00012642  0x0000247b rtn  0x00000034 
+ 00012643  0x0000247c setarg  0x00000006 
+ 00012644  0x0000247d add  0x00000013 , 0x00000086 , 0x00000005 
+ 00012645  0x0000247e istore  0x00000001 , 0x00000005 
+ 00012646  0x00002480 arg  0x00000006 , 0x00000039 
+ 00012647  0x00002481 setarg  0x0000012f 
+ 00012648  0x00002482 iadd  0x00000013 , 0x00000006 
+ 00012649  0x00002484 add  0x00000013 , 0x00000022 , 0x00000005 
+ 00012650  0x00002486 branch  0x00007f01 
+ 00012651  0x0000248a call  0x0000316e 
+ 00012652  0x0000248b nbranch  0x00002f5e , 0x0000002f 
+ 00012653  0x0000248c branch  0x00003172 
+ 00012654  0x0000248f call  0x00002f5e 
+ 00012655  0x00002490 call  0x00002e11 
+ 00012656  0x00002491 nrtn  0x0000002f 
+ 00012657  0x00002492 branch  0x00003152 
+ 00012658  0x00002495 bpatch  0x000000c3 , 0x00004018 
+ 00012659  0x00002496 call  0x00003188 
+ 00012660  0x00002497 nbranch  0x00002f5e , 0x00000028 
+ 00012661  0x00002498 add  0x00000013 , 0x00000084 , 0x00000011 
+ 00012662  0x00002499 ifetch  0x00000001 , 0x00000011 
+ 00012663  0x0000249b branch  0x00002f5e , 0x00000034 
+ 00012664  0x0000249c increase  0x00000002 , 0x0000003f 
+ 00012665  0x0000249d iforce  0x00000039 
+ 00012666  0x0000249e add  0x00000013 , 0x00000000 , 0x00000006 
+ 00012667  0x000024a0 setarg  0x00000109 
+ 00012668  0x000024a1 iadd  0x00000013 , 0x00000005 
+ 00012669  0x000024a3 call  0x00007f01 
+ 00012670  0x000024a4 call  0x00003286 
+ 00012671  0x000024a6 call  0x000032b6 
+ 00012672  0x000024a8 call  0x00003093 , 0x00000034 
+ 00012673  0x000024a9 setarg  0x0000010b 
+ 00012674  0x000024aa call  0x000032d0 
+ 00012675  0x000024ac beq  0x00000001 , 0x0000319e 
+ 00012676  0x000024ad beq  0x00000002 , 0x000031c6 
+ 00012677  0x000024ae beq  0x00000003 , 0x000031f2 
+ 00012678  0x000024af beq  0x000000ff , 0x00003212 
+ 00012679  0x000024b0 branch  0x00002f5e 
+ 00012680  0x000024b3 call  0x00002c7a 
+ 00012681  0x000024b4 call  0x00007fe9 
+ 00012682  0x000024b5 add  0x00000013 , 0x000000ca , 0x00000011 
+ 00012683  0x000024b6 ifetch  0x00000001 , 0x00000011 
+ 00012684  0x000024b8 add  0x00000013 , 0x000000cb , 0x00000011 
+ 00012685  0x000024b9 ifetcht  0x00000001 , 0x00000011 
+ 00012686  0x000024bb isub  0x00000002 , 0x0000003e 
+ 00012687  0x000024bc ncall  0x00007fe7 , 0x00000005 
+ 00012688  0x000024bd add  0x00000013 , 0x000000ca , 0x00000011 
+ 00012689  0x000024be ifetch  0x00000001 , 0x00000011 
+ 00012690  0x000024c0 add  0x00000013 , 0x000000cb , 0x00000005 
+ 00012691  0x000024c1 istore  0x00000001 , 0x00000005 
+ 00012692  0x000024c3 add  0x00000013 , 0x000000c4 , 0x00000011 
+ 00012693  0x000024c4 ifetch  0x00000003 , 0x00000011 
+ 00012694  0x000024c6 add  0x00000013 , 0x000000c7 , 0x00000011 
+ 00012695  0x000024c7 ifetcht  0x00000003 , 0x00000011 
+ 00012696  0x000024c9 isub  0x00000002 , 0x0000003e 
+ 00012697  0x000024ca ncall  0x00007fe7 , 0x00000005 
+ 00012698  0x000024cb add  0x00000013 , 0x000000c4 , 0x00000011 
+ 00012699  0x000024cc ifetch  0x00000003 , 0x00000011 
+ 00012700  0x000024ce add  0x00000013 , 0x000000c7 , 0x00000005 
+ 00012701  0x000024d0 branch  0x000032c5 
+ 00012702  0x000024d3 call  0x00002f88 
+ 00012703  0x000024d4 call  0x0000324c 
+ 00012704  0x000024d5 store  0x00000001 , 0x00000aa2 
+ 00012705  0x000024d7 call  0x00003274 
+ 00012706  0x000024d8 fetch  0x00000001 , 0x00000aa2 
+ 00012707  0x000024da isolate1  0x00000003 , 0x00000002 
+ 00012708  0x000024db setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00012709  0x000024dc add  0x00000013 , 0x000000b2 , 0x00000005 
+ 00012710  0x000024dd istore  0x00000001 , 0x00000005 
+ 00012711  0x000024df beq  0x00000001 , 0x00003216 
+ 00012712  0x000024e0 call  0x00003245 
+ 00012713  0x000024e2 call  0x00003274 
+ 00012714  0x000024e4 isolate1  0x00000004 , 0x00000002 
+ 00012715  0x000024e5 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00012716  0x000024e6 call  0x00003249 
+ 00012717  0x000024e8 add  0x00000013 , 0x000000de , 0x00000011 
+ 00012718  0x000024e9 ifetch  0x00000002 , 0x00000011 
+ 00012719  0x000024eb branch  0x00007f9c 
+ 00012720  0x000024ee setarg  0x00000001 
+ 00012721  0x000024ef store  0x00000001 , 0x00000d54 
+ 00012722  0x000024f0 call  0x0000329e 
+ 00012723  0x000024f2 istore  0x00000007 , 0x00000005 
+ 00012724  0x000024f3 call  0x0000329e 
+ 00012725  0x000024f5 ncall  0x000031bd , 0x00000034 
+ 00012726  0x000024f6 call  0x0000329e 
+ 00012727  0x000024f8 call  0x000031c2 , 0x00000034 
+ 00012728  0x000024fa jam  0x00000020 , 0x00000d52 
+ 00012729  0x000024fc fetch  0x00000001 , 0x00000d38 
+ 00012730  0x000024fd set1  0x00000002 , 0x0000003f 
+ 00012731  0x000024fe store  0x00000001 , 0x00000d38 
+ 00012732  0x000024ff rtn 
+ 00012733  0x00002502 setarg  0x00000001 
+ 00012734  0x00002503 call  0x000032a8 
+ 00012735  0x00002506 setarg  0x00000140 
+ 00012736  0x00002507 arg  0x0000000b , 0x00000007 
+ 00012737  0x00002508 branch  0x00007f08 
+ 00012738  0x0000250a call  0x000032a7 
+ 00012739  0x0000250d setarg  0x00000000 
+ 00012740  0x0000250e arg  0x0000000b , 0x00000007 
+ 00012741  0x0000250f branch  0x00007f08 
+ 00012742  0x00002512 call  0x00003274 
+ 00012743  0x00002514 isolate1  0x00000003 , 0x00000002 
+ 00012744  0x00002515 branch  0x0000321b , 0x00000001 
+ 00012745  0x00002516 arg  0x00000d64 , 0x00000005 
+ 00012746  0x00002517 call  0x000031e0 
+ 00012747  0x00002518 fetch  0x00000008 , 0x00000d64 
+ 00012748  0x00002519 ncall  0x000031e4 , 0x00000034 
+ 00012749  0x0000251a fetch  0x00000008 , 0x00000d64 
+ 00012750  0x0000251b call  0x000031e9 , 0x00000034 
+ 00012751  0x0000251c call  0x00002c7a 
+ 00012752  0x0000251d fetch  0x00000008 , 0x00000d64 
+ 00012753  0x0000251e arg  0x00000168 , 0x00000011 
+ 00012754  0x0000251f call  0x000032bf 
+ 00012755  0x00002520 istore  0x00000008 , 0x00000005 
+ 00012756  0x00002522 setarg  0x00000170 
+ 00012757  0x00002523 iadd  0x00000013 , 0x00000011 
+ 00012758  0x00002524 ifetcht  0x00000008 , 0x00000011 
+ 00012759  0x00002526 isub  0x00000002 , 0x0000003e 
+ 00012760  0x00002527 ncall  0x000031ed , 0x00000005 
+ 00012761  0x00002528 setarg  0x00000168 
+ 00012762  0x00002529 iadd  0x00000013 , 0x00000011 
+ 00012763  0x0000252a ifetch  0x00000008 , 0x00000011 
+ 00012764  0x0000252c arg  0x00000170 , 0x00000011 
+ 00012765  0x0000252d call  0x000032bf 
+ 00012766  0x0000252e istore  0x00000008 , 0x00000005 
+ 00012767  0x00002530 branch  0x00002f5e 
+ 00012768  0x00002533 setarg  0x0000010b 
+ 00012769  0x00002534 iadd  0x00000013 , 0x00000006 
+ 00012770  0x00002536 arg  0x00000009 , 0x00000039 
+ 00012771  0x00002537 branch  0x00007ff3 
+ 00012772  0x0000253a setarg  0x00000001 
+ 00012773  0x0000253b call  0x000032ab 
+ 00012774  0x0000253e setarg  0x00000140 
+ 00012775  0x0000253f arg  0x0000000e , 0x00000007 
+ 00012776  0x00002540 branch  0x00007f08 
+ 00012777  0x00002543 call  0x000032aa 
+ 00012778  0x00002546 setarg  0x00000000 
+ 00012779  0x00002547 arg  0x0000000e , 0x00000007 
+ 00012780  0x00002548 branch  0x00007f08 
+ 00012781  0x0000254c jam  0x00000010 , 0x00000d51 
+ 00012782  0x0000254d fetch  0x00000001 , 0x00000d38 
+ 00012783  0x0000254e set1  0x00000001 , 0x0000003f 
+ 00012784  0x0000254f store  0x00000001 , 0x00000d38 
+ 00012785  0x00002550 rtn 
+ 00012786  0x00002553 arg  0x00000d74 , 0x00000005 
+ 00012787  0x00002554 call  0x000031e0 
+ 00012788  0x00002555 fetch  0x00000002 , 0x00000d75 
+ 00012789  0x00002556 ncall  0x00003209 , 0x00000034 
+ 00012790  0x00002557 fetch  0x00000002 , 0x00000d75 
+ 00012791  0x00002558 call  0x0000320e , 0x00000034 
+ 00012792  0x00002559 call  0x00002c7a 
+ 00012793  0x0000255a fetch  0x00000003 , 0x00000d74 
+ 00012794  0x0000255b arg  0x00000178 , 0x00000011 
+ 00012795  0x0000255c call  0x000032c4 
+ 00012796  0x0000255e setarg  0x0000017b 
+ 00012797  0x0000255f iadd  0x00000013 , 0x00000011 
+ 00012798  0x00002560 ifetcht  0x00000003 , 0x00000011 
+ 00012799  0x00002562 isub  0x00000002 , 0x0000003e 
+ 00012800  0x00002563 ncall  0x00003207 , 0x00000005 
+ 00012801  0x00002564 setarg  0x00000178 
+ 00012802  0x00002565 iadd  0x00000013 , 0x00000011 
+ 00012803  0x00002566 ifetch  0x00000003 , 0x00000011 
+ 00012804  0x00002568 arg  0x0000017b , 0x00000011 
+ 00012805  0x00002569 call  0x000032c4 
+ 00012806  0x0000256b branch  0x00002f5e 
+ 00012807  0x0000256e jam  0x00000021 , 0x00000d52 
+ 00012808  0x0000256f branch  0x000031b9 
+ 00012809  0x00002572 setarg  0x00000001 
+ 00012810  0x00002573 call  0x000032ae 
+ 00012811  0x00002576 setarg  0x00000140 
+ 00012812  0x00002577 arg  0x0000000c , 0x00000007 
+ 00012813  0x00002578 branch  0x00007f08 
+ 00012814  0x0000257b call  0x000032ad 
+ 00012815  0x0000257e setarg  0x00000000 
+ 00012816  0x0000257f arg  0x0000000c , 0x00000007 
+ 00012817  0x00002580 branch  0x00007f08 
+ 00012818  0x00002583 call  0x000032bd 
+ 00012819  0x00002585 beq  0x00000001 , 0x00003216 
+ 00012820  0x00002586 beq  0x00000002 , 0x0000321b 
+ 00012821  0x00002587 rtn 
+ 00012822  0x00002589 setarg  0x0000010d 
+ 00012823  0x0000258a call  0x0000327e 
+ 00012824  0x0000258b arg  0x00000160 , 0x00000011 
+ 00012825  0x0000258c call  0x000032bf 
+ 00012826  0x0000258f branch  0x0000322d 
+ 00012827  0x00002592 setarg  0x0000010d 
+ 00012828  0x00002593 call  0x0000327e 
+ 00012829  0x00002594 arg  0x00000164 , 0x00000011 
+ 00012830  0x00002595 call  0x000032bf 
+ 00012831  0x00002598 branch  0x0000322d 
+ 00012832  0x0000259b call  0x00002c7a 
+ 00012833  0x0000259c add  0x00000013 , 0x000000cd , 0x00000005 
+ 00012834  0x0000259d istore  0x00000001 , 0x00000005 
+ 00012835  0x0000259e rtn 
+ 00012836  0x000025a1 call  0x00002c7a 
+ 00012837  0x000025a2 add  0x00000013 , 0x000000be , 0x00000011 
+ 00012838  0x000025a3 branch  0x0000327f 
+ 00012839  0x000025a5 call  0x00002c7a 
+ 00012840  0x000025a6 add  0x00000013 , 0x000000be , 0x00000005 
+ 00012841  0x000025a7 branch  0x0000322d 
+ 00012842  0x000025aa add  0x00000013 , 0x000000ae , 0x00000011 
+ 00012843  0x000025ab branch  0x0000327f 
+ 00012844  0x000025ad add  0x00000013 , 0x000000ae , 0x00000005 
+ 00012845  0x000025af istore  0x00000004 , 0x00000005 
+ 00012846  0x000025b0 rtn 
+ 00012847  0x000025b3 add  0x00000013 , 0x00000090 , 0x00000005 
+ 00012848  0x000025b4 branch  0x000032b4 
+ 00012849  0x000025b7 setarg  0x00000000 
+ 00012850  0x000025b9 call  0x00002c7a 
+ 00012851  0x000025ba add  0x00000013 , 0x00000085 , 0x00000005 
+ 00012852  0x000025bb branch  0x000032b4 
+ 00012853  0x000025be add  0x00000013 , 0x00000042 , 0x00000005 
+ 00012854  0x000025bf branch  0x000032b4 
+ 00012855  0x000025c2 setarg  0x00000004 
+ 00012856  0x000025c4 add  0x00000013 , 0x000000cc , 0x00000005 
+ 00012857  0x000025c5 branch  0x000032b4 
+ 00012858  0x000025c8 add  0x00000013 , 0x00000087 , 0x00000011 
+ 00012859  0x000025c9 branch  0x000032d1 
+ 00012860  0x000025cb add  0x00000013 , 0x00000087 , 0x00000005 
+ 00012861  0x000025cc branch  0x000032b4 
+ 00012862  0x000025cf setarg  0x00000002 
+ 00012863  0x000025d1 add  0x00000013 , 0x000000d0 , 0x00000005 
+ 00012864  0x000025d2 branch  0x000032b4 
+ 00012865  0x000025d5 setarg  0x00000001 
+ 00012866  0x000025d7 call  0x00002c7a 
+ 00012867  0x000025d8 add  0x00000013 , 0x000000ce , 0x00000005 
+ 00012868  0x000025d9 branch  0x000032b4 
+ 00012869  0x000025dc call  0x00002c7a 
+ 00012870  0x000025dd add  0x00000013 , 0x000000b4 , 0x00000011 
+ 00012871  0x000025de branch  0x000032d1 
+ 00012872  0x000025e0 setarg  0x00000001 
+ 00012873  0x000025e2 call  0x00002c7a 
+ 00012874  0x000025e3 add  0x00000013 , 0x000000b4 , 0x00000005 
+ 00012875  0x000025e4 branch  0x000032b4 
+ 00012876  0x000025e7 call  0x00002c7a 
+ 00012877  0x000025e8 add  0x00000013 , 0x000000b2 , 0x00000011 
+ 00012878  0x000025e9 branch  0x000032d1 
+ 00012879  0x000025eb setarg  0x00000001 
+ 00012880  0x000025ed call  0x00002c7a 
+ 00012881  0x000025ee add  0x00000013 , 0x000000b2 , 0x00000005 
+ 00012882  0x000025ef branch  0x000032b4 
+ 00012883  0x000025f2 call  0x00002c7a 
+ 00012884  0x000025f3 add  0x00000013 , 0x00000096 , 0x00000011 
+ 00012885  0x000025f4 branch  0x000032d1 
+ 00012886  0x000025f6 add  0x00000013 , 0x00000096 , 0x00000005 
+ 00012887  0x000025f7 branch  0x000032b4 
+ 00012888  0x000025fa add  0x00000013 , 0x000000cf , 0x00000011 
+ 00012889  0x000025fb branch  0x000032d1 
+ 00012890  0x000025fd setarg  0x00000000 
+ 00012891  0x000025ff add  0x00000013 , 0x000000cf , 0x00000005 
+ 00012892  0x00002600 branch  0x000032b4 
+ 00012893  0x00002603 add  0x00000013 , 0x000000d2 , 0x00000011 
+ 00012894  0x00002604 branch  0x000032d1 
+ 00012895  0x00002607 add  0x00000013 , 0x00000001 , 0x00000011 
+ 00012896  0x00002608 branch  0x000032d1 
+ 00012897  0x0000260b add  0x00000013 , 0x000000b5 , 0x00000011 
+ 00012898  0x0000260c branch  0x000032d1 
+ 00012899  0x0000260e setarg  0x00000000 
+ 00012900  0x00002610 call  0x00002c7a 
+ 00012901  0x00002611 add  0x00000013 , 0x000000b5 , 0x00000005 
+ 00012902  0x00002612 branch  0x000032b4 
+ 00012903  0x00002615 call  0x00002c7a 
+ 00012904  0x00002616 add  0x00000013 , 0x000000fb , 0x00000011 
+ 00012905  0x00002617 ifetch  0x00000001 , 0x00000011 
+ 00012906  0x00002619 store  0x00000001 , 0x000041de 
+ 00012907  0x0000261a rtn 
+ 00012908  0x0000261d call  0x00002c7a 
+ 00012909  0x0000261e fetch  0x00000001 , 0x000041de 
+ 00012910  0x00002620 add  0x00000013 , 0x000000fb , 0x00000005 
+ 00012911  0x00002621 branch  0x000032b4 
+ 00012912  0x00002624 add  0x00000013 , 0x000000fc , 0x00000011 
+ 00012913  0x00002625 branch  0x000032d1 
+ 00012914  0x00002628 add  0x00000013 , 0x000000fe , 0x00000005 
+ 00012915  0x00002629 branch  0x000032b4 
+ 00012916  0x0000262c setarg  0x00000109 
+ 00012917  0x0000262e iadd  0x00000013 , 0x00000011 
+ 00012918  0x0000262f ifetcht  0x00000001 , 0x00000011 
+ 00012919  0x00002630 rtn 
+ 00012920  0x00002633 setarg  0x00000135 
+ 00012921  0x00002634 branch  0x000032d0 
+ 00012922  0x00002636 setarg  0x00000000 
+ 00012923  0x00002638 arg  0x00000135 , 0x00000011 
+ 00012924  0x00002639 branch  0x000032b3 
+ 00012925  0x0000263c setarg  0x0000012b 
+ 00012926  0x0000263e call  0x000032cd 
+ 00012927  0x00002640 ifetch  0x00000004 , 0x00000011 
+ 00012928  0x00002641 rtn 
+ 00012929  0x00002644 setarg  0x0000015f 
+ 00012930  0x00002645 branch  0x000032d0 
+ 00012931  0x00002647 setarg  0x00000000 
+ 00012932  0x00002649 arg  0x0000015f , 0x00000011 
+ 00012933  0x0000264a branch  0x000032b3 
+ 00012934  0x0000264d setarg  0x00000000 
+ 00012935  0x0000264f arg  0x0000015c , 0x00000011 
+ 00012936  0x00002650 branch  0x000032b3 
+ 00012937  0x00002653 arg  0x0000012f , 0x00000011 
+ 00012938  0x00002654 branch  0x000032b3 
+ 00012939  0x00002657 setarg  0x00000108 
+ 00012940  0x00002658 branch  0x000032d0 
+ 00012941  0x0000265a arg  0x00000108 , 0x00000011 
+ 00012942  0x0000265b branch  0x000032b3 
+ 00012943  0x0000265e setarg  0x00000105 
+ 00012944  0x0000265f branch  0x000032d0 
+ 00012945  0x00002661 setarg  0x00000000 
+ 00012946  0x00002663 arg  0x00000105 , 0x00000011 
+ 00012947  0x00002664 branch  0x000032b3 
+ 00012948  0x00002667 setarg  0x00000104 
+ 00012949  0x00002668 branch  0x000032d0 
+ 00012950  0x0000266a setarg  0x00000000 
+ 00012951  0x0000266c arg  0x00000104 , 0x00000011 
+ 00012952  0x0000266d branch  0x000032b3 
+ 00012953  0x00002670 setarg  0x00000000 
+ 00012954  0x00002672 arg  0x0000013b , 0x00000011 
+ 00012955  0x00002673 branch  0x000032b3 
+ 00012956  0x00002675 setarg  0x00000001 
+ 00012957  0x00002676 branch  0x0000329a 
+ 00012958  0x00002679 setarg  0x0000010c 
+ 00012959  0x0000267a call  0x000032cd 
+ 00012960  0x0000267b ifetch  0x00000007 , 0x00000011 
+ 00012961  0x0000267c rtn 
+ 00012962  0x0000267f setarg  0x0000015e 
+ 00012963  0x00002680 branch  0x000032d0 
+ 00012964  0x00002682 setarg  0x00000000 
+ 00012965  0x00002684 arg  0x0000015e , 0x00000011 
+ 00012966  0x00002685 branch  0x000032b3 
+ 00012967  0x00002688 setarg  0x00000000 
+ 00012968  0x0000268a arg  0x00000180 , 0x00000011 
+ 00012969  0x0000268b branch  0x000032b3 
+ 00012970  0x0000268e setarg  0x00000000 
+ 00012971  0x00002690 arg  0x0000017e , 0x00000011 
+ 00012972  0x00002691 branch  0x000032b3 
+ 00012973  0x00002694 setarg  0x00000000 
+ 00012974  0x00002696 arg  0x0000017f , 0x00000011 
+ 00012975  0x00002697 branch  0x000032b3 
+ 00012976  0x0000269a arg  0x00000102 , 0x00000011 
+ 00012977  0x0000269b branch  0x000032b3 
+ 00012978  0x0000269e arg  0x00000103 , 0x00000011 
+ 00012979  0x000026a0 call  0x000032c7 
+ 00012980  0x000026a2 istore  0x00000001 , 0x00000005 
+ 00012981  0x000026a3 rtn 
+ 00012982  0x000026a6 setarg  0x0000015d 
+ 00012983  0x000026a7 branch  0x000032d0 
+ 00012984  0x000026aa arg  0x0000015d , 0x00000011 
+ 00012985  0x000026ab branch  0x000032b3 
+ 00012986  0x000026ae setarg  0x0000018a 
+ 00012987  0x000026af call  0x000032d0 
+ 00012988  0x000026b0 branch  0x0000326a 
+ 00012989  0x000026b3 setarg  0x0000010c 
+ 00012990  0x000026b4 branch  0x000032d0 
+ 00012991  0x000026b7 copy  0x0000003f , 0x00000002 
+ 00012992  0x000026b8 copy  0x00000011 , 0x0000003f 
+ 00012993  0x000026b9 iadd  0x00000013 , 0x00000005 
+ 00012994  0x000026ba copy  0x00000002 , 0x0000003f 
+ 00012995  0x000026bb rtn 
+ 00012996  0x000026be call  0x000032bf 
+ 00012997  0x000026c0 istore  0x00000003 , 0x00000005 
+ 00012998  0x000026c1 rtn 
+ 00012999  0x000026c4 call  0x00002c7a 
+ 00013000  0x000026c6 copy  0x0000003f , 0x00000012 
+ 00013001  0x000026c7 copy  0x00000011 , 0x0000003f 
+ 00013002  0x000026c8 iadd  0x00000013 , 0x00000005 
+ 00013003  0x000026c9 copy  0x00000012 , 0x0000003f 
+ 00013004  0x000026ca rtn 
+ 00013005  0x000026cd call  0x00002c7a 
+ 00013006  0x000026ce iadd  0x00000013 , 0x00000011 
+ 00013007  0x000026cf rtn 
+ 00013008  0x000026d2 call  0x000032cd 
+ 00013009  0x000026d4 ifetch  0x00000001 , 0x00000011 
+ 00013010  0x000026d5 rtn 
+ 00013011  0x000026d8 call  0x000032cd 
+ 00013012  0x000026d9 ifetcht  0x00000004 , 0x00000011 
+ 00013013  0x000026da rtn 
+ 00013014  0x000026dd setarg  0x00000000 
+ 00013015  0x000026de branch  0x000032b4 
+ 00013016  0x000026e3 bpatch  0x000000c4 , 0x00004018 
+ 00013017  0x000026e4 fetch  0x00000001 , 0x00004092 
+ 00013018  0x000026e5 branch  0x000032d8 , 0x00000034 
+ 00013019  0x000026e7 beq  0x00000004 , 0x00002f30 
+ 00013020  0x000026e8 beq  0x0000000f , 0x00003436 
+ 00013021  0x000026e9 beq  0x00000009 , 0x000045de 
+ 00013022  0x000026ea beq  0x0000000a , 0x0000392a 
+ 00013023  0x000026eb beq  0x0000000e , 0x000035bf 
+ 00013024  0x000026ec beq  0x00000010 , 0x000044a4 
+ 00013025  0x000026ed bbit1  0x00000006 , 0x00003d00 
+ 00013026  0x000026ee rtn 
+ 00013027  0x000026f1 bpatch  0x000000c5 , 0x00004018 
+ 00013028  0x000026f2 jam  0x00000000 , 0x00000151 
+ 00013029  0x000026f3 jam  0x00000000 , 0x0000017f 
+ 00013030  0x000026f4 jam  0x00000000 , 0x00000180 
+ 00013031  0x000026f5 setarg  0x00000000 
+ 00013032  0x000026f6 store  0x00000005 , 0x000009ae 
+ 00013033  0x000026f7 fetch  0x00000001 , 0x00004092 
+ 00013034  0x000026f8 branch  0x000032e3 , 0x00000034 
+ 00013035  0x000026f9 beq  0x0000000a , 0x00003962 
+ 00013036  0x000026fb rtn 
+ 00013037  0x000026ff call  0x00007cd1 
+ 00013038  0x00002700 call  0x00007d9c 
+ 00013039  0x00002701 call  0x000032f6 
+ 00013040  0x00002702 fetch  0x00000002 , 0x000041f3 
+ 00013041  0x00002703 branch  0x00007f9c 
+ 00013042  0x00002706 fetch  0x00000002 , 0x000041f1 
+ 00013043  0x00002707 branch  0x00007f9c 
+ 00013044  0x0000270a fetch  0x00000002 , 0x000041ef 
+ 00013045  0x0000270b branch  0x00007f9c 
+ 00013046  0x0000270e bpatch  0x000000c6 , 0x00004018 
+ 00013047  0x00002710 arg  0x00004668 , 0x00000011 
+ 00013048  0x00002711 call  0x00007fc4 
+ 00013049  0x00002712 rtn  0x00000034 
+ 00013050  0x00002714 copy  0x0000003f , 0x00000013 
+ 00013051  0x00002715 call  0x000032ff 
+ 00013052  0x00002716 branch  0x00003324 
+ 00013053  0x00002719 arg  0x00000000 , 0x00000013 
+ 00013054  0x0000271a rtn 
+ 00013055  0x00002720 beq  0x00000001 , 0x00003311 
+ 00013056  0x00002721 beq  0x00000010 , 0x00003357 
+ 00013057  0x00002722 beq  0x00000005 , 0x00003335 
+ 00013058  0x00002723 beq  0x00000012 , 0x0000333c 
+ 00013059  0x00002724 beq  0x00000006 , 0x00003353 
+ 00013060  0x00002725 beq  0x00000004 , 0x00003394 
+ 00013061  0x00002726 beq  0x00000002 , 0x00003399 
+ 00013062  0x00002727 beq  0x00000013 , 0x00003394 
+ 00013063  0x00002728 beq  0x00000014 , 0x0000334b 
+ 00013064  0x00002729 beq  0x00000015 , 0x0000334f 
+ 00013065  0x0000272a beq  0x00000003 , 0x0000332e 
+ 00013066  0x0000272b beq  0x0000000b , 0x00003340 
+ 00013067  0x0000272c beq  0x0000000c , 0x00003347 
+ 00013068  0x0000272e beq  0x00000016 , 0x0000335b 
+ 00013069  0x0000272f beq  0x00000018 , 0x0000332a 
+ 00013070  0x00002730 beq  0x0000002a , 0x0000331a 
+ 00013071  0x00002731 beq  0x0000002b , 0x00003318 
+ 00013072  0x00002732 rtn 
+ 00013073  0x00002736 fetch  0x00000002 , 0x00004682 
+ 00013074  0x00002737 set1  0x00000000 , 0x0000003f 
+ 00013075  0x00002738 store  0x00000002 , 0x00004682 
+ 00013076  0x00002739 fetch  0x00000002 , 0x0000420a 
+ 00013077  0x0000273a set0  0x00000000 , 0x0000003f 
+ 00013078  0x0000273b store  0x00000002 , 0x0000420a 
+ 00013079  0x0000273c rtn 
+ 00013080  0x0000273f jam  0x00000000 , 0x00000229 
+ 00013081  0x00002740 rtn 
+ 00013082  0x00002743 fetch  0x00000001 , 0x00000229 
+ 00013083  0x00002744 increase  0x00000001 , 0x0000003f 
+ 00013084  0x00002745 store  0x00000001 , 0x00000229 
+ 00013085  0x00002746 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00013086  0x00002747 branch  0x000033df , 0x00000002 
+ 00013087  0x00002748 jam  0x00000000 , 0x00000229 
+ 00013088  0x00002749 fetch  0x00000002 , 0x0000420a 
+ 00013089  0x0000274a set1  0x00000009 , 0x0000003f 
+ 00013090  0x0000274b store  0x00000002 , 0x0000420a 
+ 00013091  0x0000274c branch  0x000033e9 
+ 00013092  0x0000274f fetch  0x00000002 , 0x000041f5 
+ 00013093  0x00002750 branch  0x00007f9c 
+ 00013094  0x00002753 fetch  0x00000002 , 0x000041e9 
+ 00013095  0x00002754 branch  0x00007f9c 
+ 00013096  0x00002757 fetch  0x00000002 , 0x000041ed 
+ 00013097  0x00002758 branch  0x00007f9c 
+ 00013098  0x0000275b fetch  0x00000002 , 0x0000420a 
+ 00013099  0x0000275c set1  0x00000001 , 0x0000003f 
+ 00013100  0x0000275d store  0x00000002 , 0x0000420a 
+ 00013101  0x0000275e branch  0x00003412 
+ 00013102  0x00002761 fetch  0x00000002 , 0x00004682 
+ 00013103  0x00002762 set1  0x00000007 , 0x0000003f 
+ 00013104  0x00002763 store  0x00000002 , 0x00004682 
+ 00013105  0x00002764 fetch  0x00000002 , 0x0000420a 
+ 00013106  0x00002765 set1  0x00000002 , 0x0000003f 
+ 00013107  0x00002766 store  0x00000002 , 0x0000420a 
+ 00013108  0x00002767 rtn 
+ 00013109  0x0000276a fetch  0x00000002 , 0x00004682 
+ 00013110  0x0000276b set1  0x00000001 , 0x0000003f 
+ 00013111  0x0000276c store  0x00000002 , 0x00004682 
+ 00013112  0x0000276d fetch  0x00000002 , 0x0000420a 
+ 00013113  0x0000276e set1  0x00000004 , 0x0000003f 
+ 00013114  0x0000276f store  0x00000002 , 0x0000420a 
+ 00013115  0x00002770 rtn 
+ 00013116  0x00002773 fetch  0x00000002 , 0x00004682 
+ 00013117  0x00002774 set1  0x00000003 , 0x0000003f 
+ 00013118  0x00002775 store  0x00000002 , 0x00004682 
+ 00013119  0x00002776 rtn 
+ 00013120  0x00002779 fetch  0x00000002 , 0x00004682 
+ 00013121  0x0000277a set1  0x00000005 , 0x0000003f 
+ 00013122  0x0000277b store  0x00000002 , 0x00004682 
+ 00013123  0x0000277c fetch  0x00000002 , 0x0000420a 
+ 00013124  0x0000277d set1  0x00000003 , 0x0000003f 
+ 00013125  0x0000277e store  0x00000002 , 0x0000420a 
+ 00013126  0x0000277f rtn 
+ 00013127  0x00002782 fetch  0x00000002 , 0x00004682 
+ 00013128  0x00002783 set0  0x00000005 , 0x0000003f 
+ 00013129  0x00002784 store  0x00000002 , 0x00004682 
+ 00013130  0x00002785 rtn 
+ 00013131  0x00002788 fetch  0x00000002 , 0x00004682 
+ 00013132  0x00002789 set1  0x00000009 , 0x0000003f 
+ 00013133  0x0000278a store  0x00000002 , 0x00004682 
+ 00013134  0x0000278b rtn 
+ 00013135  0x0000278e fetch  0x00000002 , 0x00004682 
+ 00013136  0x0000278f set0  0x00000009 , 0x0000003f 
+ 00013137  0x00002790 store  0x00000002 , 0x00004682 
+ 00013138  0x00002791 branch  0x00003418 
+ 00013139  0x00002794 fetch  0x00000002 , 0x00004682 
+ 00013140  0x00002795 set1  0x00000002 , 0x0000003f 
+ 00013141  0x00002796 store  0x00000002 , 0x00004682 
+ 00013142  0x00002797 rtn 
+ 00013143  0x0000279a fetch  0x00000002 , 0x0000420a 
+ 00013144  0x0000279b set1  0x00000000 , 0x0000003f 
+ 00013145  0x0000279c store  0x00000002 , 0x0000420a 
+ 00013146  0x0000279d rtn 
+ 00013147  0x000027a0 fetch  0x00000002 , 0x0000420a 
+ 00013148  0x000027a1 set1  0x00000008 , 0x0000003f 
+ 00013149  0x000027a2 store  0x00000002 , 0x0000420a 
+ 00013150  0x000027a3 branch  0x000033e9 
+ 00013151  0x000027a7 bpatch  0x000000c7 , 0x00004018 
+ 00013152  0x000027a8 store  0x00000001 , 0x0000022a 
+ 00013153  0x000027aa fetch  0x00000001 , 0x0000022a 
+ 00013154  0x000027ab rtn  0x00000034 
+ 00013155  0x000027ac increase  0xffffffff , 0x0000003f 
+ 00013156  0x000027ad store  0x00000001 , 0x0000022a 
+ 00013157  0x000027ae call  0x00007cdd 
+ 00013158  0x000027af call  0x000033d6 
+ 00013159  0x000027b0 call  0x00003387 
+ 00013160  0x000027b1 call  0x0000338d 
+ 00013161  0x000027b2 call  0x0000651b 
+ 00013162  0x000027b3 fetch  0x00000002 , 0x000041fd 
+ 00013163  0x000027b4 call  0x00007f9c 
+ 00013164  0x000027b5 branch  0x00003361 
+ 00013165  0x000027bb ifetch  0x00000001 , 0x00000013 
+ 00013166  0x000027bc rtn  0x00000034 
+ 00013167  0x000027bd pincrease  0xffffffff 
+ 00013168  0x000027be istore  0x00000001 , 0x00000013 
+ 00013169  0x000027bf nrtn  0x00000034 
+ 00013170  0x000027c0 copy  0x00000012 , 0x0000003f 
+ 00013171  0x000027c1 branch  0x00007f9c 
+ 00013172  0x000027c6 ifetch  0x00000002 , 0x00000013 
+ 00013173  0x000027c7 rtn  0x00000034 
+ 00013174  0x000027c8 pincrease  0xffffffff 
+ 00013175  0x000027c9 istore  0x00000002 , 0x00000013 
+ 00013176  0x000027ca nrtn  0x00000034 
+ 00013177  0x000027cb copy  0x00000012 , 0x0000003f 
+ 00013178  0x000027cc branch  0x00007f9c 
+ 00013179  0x000027cf fetcht  0x00000002 , 0x0000423f 
+ 00013180  0x000027d0 add  0x00000002 , 0x00000001 , 0x00000013 
+ 00013181  0x000027d1 arg  0x0000337f , 0x00000012 
+ 00013182  0x000027d2 branch  0x0000336d 
+ 00013183  0x000027d5 call  0x0000342d 
+ 00013184  0x000027d6 beq  0x00000001 , 0x00003382 
+ 00013185  0x000027d8 branch  0x0000340a 
+ 00013186  0x000027da setarg  0x00000002 
+ 00013187  0x000027db istore  0x00000001 , 0x00000013 
+ 00013188  0x000027dc add  0x00000002 , 0x00000008 , 0x00000012 
+ 00013189  0x000027de ifetch  0x00000002 , 0x00000012 
+ 00013190  0x000027df branch  0x00007f9c 
+ 00013191  0x000027e2 arg  0x00004205 , 0x00000013 
+ 00013192  0x000027e3 arg  0x0000338a , 0x00000012 
+ 00013193  0x000027e4 branch  0x0000336d 
+ 00013194  0x000027e7 call  0x00002252 
+ 00013195  0x000027e8 branch  0x0000340e , 0x00000005 
+ 00013196  0x000027e9 rtn 
+ 00013197  0x000027ed arg  0x0000467e , 0x00000013 
+ 00013198  0x000027ee arg  0x00003390 , 0x00000012 
+ 00013199  0x000027ef branch  0x00003374 
+ 00013200  0x000027f2 call  0x000033f0 
+ 00013201  0x000027f3 call  0x00003408 
+ 00013202  0x000027f4 fetch  0x00000002 , 0x000041f7 
+ 00013203  0x000027f5 branch  0x00007f9c 
+ 00013204  0x000027f9 call  0x000033ac 
+ 00013205  0x000027fb fetch  0x00000002 , 0x00004682 
+ 00013206  0x000027fc set0  0x00000007 , 0x0000003f 
+ 00013207  0x000027fd store  0x00000002 , 0x00004682 
+ 00013208  0x000027fe rtn 
+ 00013209  0x00002801 jam  0x00000000 , 0x00004205 
+ 00013210  0x00002802 fetch  0x00000002 , 0x00004682 
+ 00013211  0x00002803 bbit1  0x00000007 , 0x0000339e 
+ 00013212  0x00002804 isolate0  0x00000001 , 0x0000003f 
+ 00013213  0x00002805 call  0x000032fd , 0x00000001 
+ 00013214  0x00002807 bpatch  0x000000c8 , 0x00004019 
+ 00013215  0x00002808 fetch  0x00000002 , 0x00004682 
+ 00013216  0x00002809 set0  0x00000000 , 0x0000003f 
+ 00013217  0x0000280a set0  0x00000001 , 0x0000003f 
+ 00013218  0x0000280b set0  0x00000002 , 0x0000003f 
+ 00013219  0x0000280c set0  0x00000003 , 0x0000003f 
+ 00013220  0x0000280d set0  0x00000007 , 0x0000003f 
+ 00013221  0x0000280e store  0x00000002 , 0x00004682 
+ 00013222  0x0000280f branch  0x00003418 
+ 00013223  0x00002812 call  0x000033a9 
+ 00013224  0x00002813 branch  0x0000340a 
+ 00013225  0x00002817 setarg  0x00000000 
+ 00013226  0x00002818 store  0x00000002 , 0x00004208 
+ 00013227  0x00002819 rtn 
+ 00013228  0x0000281b setarg  0x00000000 
+ 00013229  0x0000281c store  0x00000002 , 0x0000420a 
+ 00013230  0x0000281d rtn 
+ 00013231  0x00002820 fetch  0x00000002 , 0x0000420a 
+ 00013232  0x00002821 store  0x00000002 , 0x00004208 
+ 00013233  0x00002822 setarg  0x00000000 
+ 00013234  0x00002823 store  0x00000002 , 0x0000420a 
+ 00013235  0x00002824 rtn 
+ 00013236  0x00002827 fetch  0x00000002 , 0x0000420a 
+ 00013237  0x00002828 set1  0x00000007 , 0x0000003f 
+ 00013238  0x00002829 store  0x00000002 , 0x00004208 
+ 00013239  0x0000282a setarg  0x00000000 
+ 00013240  0x0000282b store  0x00000002 , 0x0000420a 
+ 00013241  0x0000282c rtn 
+ 00013242  0x00002835 fetch  0x00000001 , 0x00004682 
+ 00013243  0x00002836 isolate1  0x00000005 , 0x0000003f 
+ 00013244  0x00002837 rtn 
+ 00013245  0x00002840 setarg  0x0000aa55 
+ 00013246  0x00002842 store  0x00000002 , 0x00000aaa 
+ 00013247  0x00002843 bpatch  0x000000c9 , 0x00004019 
+ 00013248  0x00002844 arg  0x00000002 , 0x00000002 
+ 00013249  0x00002845 arg  0x00000aaa , 0x00000011 
+ 00013250  0x00002846 arg  0x000000c3 , 0x00000012 
+ 00013251  0x00002847 branch  0x00006606 
+ 00013252  0x0000284b bpatch  0x000000ca , 0x00004019 
+ 00013253  0x0000284c arg  0x00000002 , 0x00000002 
+ 00013254  0x0000284d arg  0x00000a9a , 0x00000011 
+ 00013255  0x0000284e arg  0x000000c3 , 0x00000012 
+ 00013256  0x0000284f call  0x000065df 
+ 00013257  0x00002850 fetch  0x00000002 , 0x00000a9a 
+ 00013258  0x00002851 arg  0x0000aa55 , 0x00000002 
+ 00013259  0x00002852 isub  0x00000002 , 0x0000003e 
+ 00013260  0x00002853 rtn 
+ 00013261  0x00002857 fetch  0x00000001 , 0x0000455a 
+ 00013262  0x00002858 store  0x00000001 , 0x00004205 
+ 00013263  0x00002859 rtn 
+ 00013264  0x0000285c arg  0x00000009 , 0x00000007 
+ 00013265  0x0000285d branch  0x00002c32 
+ 00013266  0x00002860 arg  0x00000009 , 0x00000007 
+ 00013267  0x00002861 branch  0x00002c36 
+ 00013268  0x00002864 jam  0x00000005 , 0x00004206 
+ 00013269  0x00002865 branch  0x000033d0 
+ 00013270  0x00002868 arg  0x00004206 , 0x00000013 
+ 00013271  0x00002869 arg  0x000033d2 , 0x00000012 
+ 00013272  0x0000286a branch  0x0000336d 
+ 00013273  0x0000286d jam  0x00000001 , 0x00004363 
+ 00013274  0x0000286e rtn 
+ 00013275  0x00002871 jam  0x00000000 , 0x00004363 
+ 00013276  0x00002872 rtn 
+ 00013277  0x00002875 jam  0x0000000a , 0x00000a99 
+ 00013278  0x00002876 branch  0x00007d8f 
+ 00013279  0x00002879 jam  0x0000001d , 0x00000a99 
+ 00013280  0x0000287a branch  0x00007d8f 
+ 00013281  0x0000287d bpatch  0x000000cb , 0x00004019 
+ 00013282  0x0000287e fetch  0x00000001 , 0x00004207 
+ 00013283  0x0000287f store  0x00000001 , 0x0000016d 
+ 00013284  0x00002880 jam  0x00000001 , 0x00000228 
+ 00013285  0x00002881 jam  0x00000003 , 0x00000a99 
+ 00013286  0x00002882 branch  0x00007d8f 
+ 00013287  0x00002885 jam  0x0000001e , 0x00000a99 
+ 00013288  0x00002886 branch  0x00007d8f 
+ 00013289  0x00002889 jam  0x00000004 , 0x00000a99 
+ 00013290  0x0000288a branch  0x00007d8f 
+ 00013291  0x0000288d fetch  0x00000002 , 0x00004687 
+ 00013292  0x0000288e store  0x00000002 , 0x0000467e 
+ 00013293  0x00002890 call  0x00003404 
+ 00013294  0x00002892 jam  0x00000001 , 0x00000a99 
+ 00013295  0x00002893 branch  0x00007d8f 
+ 00013296  0x00002896 setarg  0x00000000 
+ 00013297  0x00002897 store  0x00000002 , 0x0000467e 
+ 00013298  0x00002898 jam  0x00000002 , 0x00000a99 
+ 00013299  0x00002899 branch  0x00007d8f 
+ 00013300  0x0000289c jam  0x0000000f , 0x00000a99 
+ 00013301  0x0000289d branch  0x00007d8f 
+ 00013302  0x000028a0 jam  0x00000010 , 0x00000a99 
+ 00013303  0x000028a1 branch  0x00007d8f 
+ 00013304  0x000028a4 jam  0x0000000e , 0x00000a99 
+ 00013305  0x000028a5 branch  0x00007d8f 
+ 00013306  0x000028a8 jam  0x0000000d , 0x00000a99 
+ 00013307  0x000028a9 branch  0x00007d8f 
+ 00013308  0x000028ac jam  0x00000017 , 0x00000a99 
+ 00013309  0x000028ad branch  0x00007d8f 
+ 00013310  0x000028b0 jam  0x00000018 , 0x00000a99 
+ 00013311  0x000028b1 branch  0x00007d8f 
+ 00013312  0x000028b4 jam  0x00000016 , 0x00000a99 
+ 00013313  0x000028b5 branch  0x00007d8f 
+ 00013314  0x000028b8 jam  0x00000011 , 0x00000a99 
+ 00013315  0x000028b9 branch  0x00007d8f 
+ 00013316  0x000028bc jam  0x00000015 , 0x00000a99 
+ 00013317  0x000028bd branch  0x00007d8f 
+ 00013318  0x000028c0 jam  0x00000014 , 0x00000a99 
+ 00013319  0x000028c1 branch  0x00007d8f 
+ 00013320  0x000028c5 jam  0x00000013 , 0x00000a99 
+ 00013321  0x000028c6 branch  0x00007d8f 
+ 00013322  0x000028c9 jam  0x00000019 , 0x00000a99 
+ 00013323  0x000028ca branch  0x00007d8f 
+ 00013324  0x000028cd jam  0x00000006 , 0x00000a99 
+ 00013325  0x000028ce branch  0x00007d8f 
+ 00013326  0x000028d1 jam  0x00000005 , 0x00000a99 
+ 00013327  0x000028d2 branch  0x00007d8f 
+ 00013328  0x000028d5 jam  0x0000001f , 0x00000a99 
+ 00013329  0x000028d6 branch  0x00007d8f 
+ 00013330  0x000028d9 jam  0x00000020 , 0x00000a99 
+ 00013331  0x000028da branch  0x00007d8f 
+ 00013332  0x000028dd jam  0x00000025 , 0x00000a99 
+ 00013333  0x000028de branch  0x00007d8f 
+ 00013334  0x000028e1 set1  0x0000000d , 0x00000000 
+ 00013335  0x000028e2 rtn 
+ 00013336  0x000028e5 set0  0x0000000d , 0x00000000 
+ 00013337  0x000028e6 rtn 
+ 00013338  0x000028fb call  0x0000342d 
+ 00013339  0x000028fc beq  0x00000002 , 0x00003424 
+ 00013340  0x000028fe setarg  0x00000001 
+ 00013341  0x000028ff istore  0x00000001 , 0x00000013 
+ 00013342  0x00002900 add  0x00000002 , 0x00000003 , 0x00000011 
+ 00013343  0x00002901 add  0x00000002 , 0x00000006 , 0x00000012 
+ 00013344  0x00002903 ifetcht  0x00000001 , 0x00000011 
+ 00013345  0x00002904 increase  0x00000001 , 0x00000013 
+ 00013346  0x00002905 istoret  0x00000001 , 0x00000013 
+ 00013347  0x00002906 branch  0x00003385 
+ 00013348  0x00002909 setarg  0x00000000 
+ 00013349  0x0000290a istore  0x00000001 , 0x00000013 
+ 00013350  0x0000290b fetch  0x00000002 , 0x00004682 
+ 00013351  0x0000290c bbit0  0x00000009 , 0x00003429 
+ 00013352  0x0000290d call  0x00003402 
+ 00013353  0x0000290f fetcht  0x00000002 , 0x0000423f 
+ 00013354  0x00002910 add  0x00000002 , 0x00000002 , 0x00000011 
+ 00013355  0x00002911 add  0x00000002 , 0x00000004 , 0x00000012 
+ 00013356  0x00002912 branch  0x00003420 
+ 00013357  0x00002915 fetcht  0x00000002 , 0x0000423f 
+ 00013358  0x00002916 add  0x00000002 , 0x00000000 , 0x00000013 
+ 00013359  0x00002917 ifetch  0x00000001 , 0x00000013 
+ 00013360  0x00002918 rtn 
+ 00013361  0x0000291b call  0x0000342d 
+ 00013362  0x0000291c bne  0x00000000 , 0x00003434 
+ 00013363  0x0000291d branch  0x0000340a 
+ 00013364  0x0000291f add  0x00000002 , 0x0000000a , 0x00000012 
+ 00013365  0x00002920 branch  0x00003385 
+ 00013366  0x00002923 rtn  0x0000002b 
+ 00013367  0x00002924 jam  0x00000000 , 0x00008081 
+ 00013368  0x00002925 setarg  0x00003463 
+ 00013369  0x00002926 store  0x00000002 , 0x000041eb 
+ 00013370  0x00002927 setarg  0x0000696c 
+ 00013371  0x00002928 store  0x00000002 , 0x000041ed 
+ 00013372  0x00002929 setarg  0x000034f5 
+ 00013373  0x0000292a store  0x00000002 , 0x000041f3 
+ 00013374  0x0000292b setarg  0x000034f4 
+ 00013375  0x0000292c store  0x00000002 , 0x000041ef 
+ 00013376  0x0000292d setarg  0x0000347e 
+ 00013377  0x0000292e store  0x00000002 , 0x000041f5 
+ 00013378  0x0000292f setarg  0x000034b2 
+ 00013379  0x00002930 store  0x00000002 , 0x000041fd 
+ 00013380  0x00002931 setarg  0x00003465 
+ 00013381  0x00002932 store  0x00000002 , 0x000041fb 
+ 00013382  0x00002933 setarg  0x00003470 
+ 00013383  0x00002934 store  0x00000002 , 0x000041e9 
+ 00013384  0x00002935 setarg  0x00003501 
+ 00013385  0x00002936 store  0x00000002 , 0x000041f9 
+ 00013386  0x00002937 bpatch  0x000000cc , 0x00004019 
+ 00013387  0x00002938 call  0x0000359b 
+ 00013388  0x00002939 call  0x00006948 
+ 00013389  0x0000293a call  0x000035ad 
+ 00013390  0x0000293b call  0x00007d08 
+ 00013391  0x0000293c call  0x00007cd3 
+ 00013392  0x0000293d setarg  0x0000350b 
+ 00013393  0x0000293e store  0x00000002 , 0x00004766 
+ 00013394  0x0000293f setarg  0x000034fc 
+ 00013395  0x00002940 store  0x00000002 , 0x0000475d 
+ 00013396  0x00002941 setarg  0x000034f8 
+ 00013397  0x00002942 store  0x00000002 , 0x0000475f 
+ 00013398  0x00002943 setarg  0x0000346c 
+ 00013399  0x00002944 store  0x00000002 , 0x00004761 
+ 00013400  0x00002945 setarg  0x000035a2 
+ 00013401  0x00002946 store  0x00000002 , 0x000046a9 
+ 00013402  0x00002947 setarg  0x000035a4 
+ 00013403  0x00002948 store  0x00000002 , 0x000046ab 
+ 00013404  0x00002949 setarg  0x000035a9 
+ 00013405  0x0000294a store  0x00000002 , 0x000046b4 
+ 00013406  0x0000294b setarg  0x000035a6 
+ 00013407  0x0000294c store  0x00000002 , 0x000046b6 
+ 00013408  0x0000294d fetch  0x00000002 , 0x00004682 
+ 00013409  0x0000294e rtnbit1  0x0000000c 
+ 00013410  0x0000294f branch  0x0000340a 
+ 00013411  0x00002952 call  0x00003586 
+ 00013412  0x00002953 branch  0x0000340a 
+ 00013413  0x00002956 call  0x00005892 
+ 00013414  0x00002957 nrtn  0x00000034 
+ 00013415  0x00002958 arg  0x00000b06 , 0x00000011 
+ 00013416  0x00002959 call  0x00007e54 
+ 00013417  0x0000295a nrtn  0x00000028 
+ 00013418  0x0000295b arg  0x00000b06 , 0x00000006 
+ 00013419  0x0000295c branch  0x00004746 
+ 00013420  0x0000295f fetch  0x00000002 , 0x00004797 
+ 00013421  0x00002960 store  0x00000002 , 0x00004791 
+ 00013422  0x00002961 jam  0x00000001 , 0x00004753 
+ 00013423  0x00002962 branch  0x0000358f 
+ 00013424  0x00002965 fetch  0x00000001 , 0x0000479d 
+ 00013425  0x00002966 beq  0x00000001 , 0x00003479 
+ 00013426  0x00002967 fetch  0x00000002 , 0x00004682 
+ 00013427  0x00002968 bbit0  0x00000009 , 0x00003479 
+ 00013428  0x00002969 fetch  0x00000001 , 0x0000479e 
+ 00013429  0x0000296a beq  0x00000001 , 0x000033d0 
+ 00013430  0x0000296b fetch  0x00000001 , 0x00004700 
+ 00013431  0x0000296c nbranch  0x000033d0 , 0x00000034 
+ 00013432  0x0000296d branch  0x000033d2 
+ 00013433  0x00002970 fetch  0x00000001 , 0x0000479b 
+ 00013434  0x00002971 fetcht  0x00000001 , 0x0000479c 
+ 00013435  0x00002972 ior  0x00000002 , 0x0000003f 
+ 00013436  0x00002973 beq  0x00000001 , 0x000033d0 
+ 00013437  0x00002974 branch  0x000033d2 
+ 00013438  0x00002977 copy  0x00000013 , 0x0000003f 
+ 00013439  0x00002978 beq  0x0000002d , 0x00003431 
+ 00013440  0x00002979 beq  0x00000010 , 0x0000341a 
+ 00013441  0x0000297a beq  0x00000014 , 0x000034df 
+ 00013442  0x0000297b beq  0x00000015 , 0x000034e8 
+ 00013443  0x0000297c beq  0x00000040 , 0x00003485 
+ 00013444  0x0000297d rtn 
+ 00013445  0x0000297f fetch  0x00000002 , 0x00004509 
+ 00013446  0x00002980 beq  0x00000001 , 0x0000348c 
+ 00013447  0x00002982 fetch  0x00000002 , 0x000043d8 
+ 00013448  0x00002983 branch  0x000034a2 , 0x00000034 
+ 00013449  0x00002985 jam  0x00000002 , 0x0000478a 
+ 00013450  0x00002986 jam  0x0000003c , 0x0000478f 
+ 00013451  0x00002987 rtn 
+ 00013452  0x0000298a fetch  0x00000002 , 0x0000449a 
+ 00013453  0x0000298b branch  0x000034a0 , 0x00000034 
+ 00013454  0x0000298d jam  0x00000001 , 0x0000478a 
+ 00013455  0x0000298e fetcht  0x00000002 , 0x000047b4 
+ 00013456  0x0000298f fetch  0x00000002 , 0x00004496 
+ 00013457  0x00002990 iadd  0x00000002 , 0x0000003f 
+ 00013458  0x00002991 store  0x00000002 , 0x00004496 
+ 00013459  0x00002992 copy  0x0000003f , 0x00000011 
+ 00013460  0x00002993 fetch  0x00000002 , 0x00004498 
+ 00013461  0x00002994 iadd  0x00000002 , 0x0000003f 
+ 00013462  0x00002995 store  0x00000002 , 0x00004498 
+ 00013463  0x00002996 iadd  0x00000011 , 0x0000003f 
+ 00013464  0x00002997 rshift  0x0000003f , 0x00000002 
+ 00013465  0x00002998 fetch  0x00000002 , 0x000047c0 
+ 00013466  0x00002999 idiv  0x00000002 
+ 00013467  0x0000299a call  0x00007f86 
+ 00013468  0x0000299b quotient  0x0000003f 
+ 00013469  0x0000299c store  0x00000002 , 0x0000449a 
+ 00013470  0x0000299d jam  0x00000001 , 0x00004790 
+ 00013471  0x0000299e rtn 
+ 00013472  0x000029a0 jam  0x00000003 , 0x0000478a 
+ 00013473  0x000029a1 rtn 
+ 00013474  0x000029a4 jam  0x00000000 , 0x00004172 
+ 00013475  0x000029a5 jam  0x00000000 , 0x00004790 
+ 00013476  0x000029a6 fetch  0x00000002 , 0x000043d6 
+ 00013477  0x000029a7 fetcht  0x00000002 , 0x000047be 
+ 00013478  0x000029a8 isub  0x00000002 , 0x0000003e 
+ 00013479  0x000029a9 setflag  0x00000002 , 0x00000000 , 0x00000011 
+ 00013480  0x000029aa fetch  0x00000002 , 0x000047c0 
+ 00013481  0x000029ab fetcht  0x00000002 , 0x000043d6 
+ 00013482  0x000029ac isub  0x00000002 , 0x0000003f 
+ 00013483  0x000029ad setflag  0x00000002 , 0x00000001 , 0x00000011 
+ 00013484  0x000029ae compare  0x00000003 , 0x00000011 , 0x00000003 
+ 00013485  0x000029af rtn  0x00000001 
+ 00013486  0x000029b0 fetch  0x00000008 , 0x000047be 
+ 00013487  0x000029b1 store  0x00000008 , 0x00004496 
+ 00013488  0x000029b2 jam  0x00000001 , 0x00004790 
+ 00013489  0x000029b3 rtn 
+ 00013490  0x000029b8 call  0x0000337b 
+ 00013491  0x000029b9 call  0x000034b9 
+ 00013492  0x000029ba call  0x000034be 
+ 00013493  0x000029bb call  0x000034d5 
+ 00013494  0x000029bc call  0x000034ca 
+ 00013495  0x000029bd call  0x000034c4 
+ 00013496  0x000029be branch  0x000034d9 
+ 00013497  0x000029c2 arg  0x00004799 , 0x00000013 
+ 00013498  0x000029c3 arg  0x000034bc , 0x00000012 
+ 00013499  0x000029c4 branch  0x0000336d 
+ 00013500  0x000029c6 jam  0x00000000 , 0x0000479a 
+ 00013501  0x000029c7 rtn 
+ 00013502  0x000029c9 arg  0x00004793 , 0x00000013 
+ 00013503  0x000029ca arg  0x000034c1 , 0x00000012 
+ 00013504  0x000029cb branch  0x00003374 
+ 00013505  0x000029cd arg  0x000046bf , 0x00000013 
+ 00013506  0x000029ce arg  0x0000469e , 0x00000012 
+ 00013507  0x000029cf branch  0x00003591 
+ 00013508  0x000029d3 arg  0x0000478f , 0x00000013 
+ 00013509  0x000029d4 arg  0x000034c7 , 0x00000012 
+ 00013510  0x000029d5 branch  0x0000336d 
+ 00013511  0x000029d8 fetch  0x00000002 , 0x0000449a 
+ 00013512  0x000029d9 store  0x00000001 , 0x00004172 
+ 00013513  0x000029da rtn 
+ 00013514  0x000029dc arg  0x00004790 , 0x00000013 
+ 00013515  0x000029dd arg  0x000034cd , 0x00000012 
+ 00013516  0x000029de branch  0x0000336d 
+ 00013517  0x000029e0 fetch  0x00000001 , 0x0000043f 
+ 00013518  0x000029e1 compare  0x00000000 , 0x0000003f , 0x00000060 
+ 00013519  0x000029e2 nbranch  0x000034d3 , 0x00000001 
+ 00013520  0x000029e3 jam  0x00000001 , 0x0000478a 
+ 00013521  0x000029e4 call  0x00003416 
+ 00013522  0x000029e5 branch  0x00005abf 
+ 00013523  0x000029e7 jam  0x00000001 , 0x00004790 
+ 00013524  0x000029e8 rtn 
+ 00013525  0x000029eb arg  0x00004791 , 0x00000013 
+ 00013526  0x000029ec arg  0x000034d8 , 0x00000012 
+ 00013527  0x000029ed branch  0x00003374 
+ 00013528  0x000029f1 branch  0x0000341a 
+ 00013529  0x000029f6 arg  0x0000478d , 0x00000013 
+ 00013530  0x000029f7 arg  0x000034dc , 0x00000012 
+ 00013531  0x000029f8 branch  0x00003374 
+ 00013532  0x000029fa fetch  0x00000002 , 0x000047a7 
+ 00013533  0x000029fb store  0x00000002 , 0x0000478d 
+ 00013534  0x000029fc branch  0x000035af 
+ 00013535  0x00002a00 fetch  0x00000002 , 0x000047a7 
+ 00013536  0x00002a01 store  0x00000002 , 0x0000478d 
+ 00013537  0x00002a02 setarg  0x00000000 
+ 00013538  0x00002a03 store  0x00000002 , 0x00004793 
+ 00013539  0x00002a04 store  0x00000002 , 0x00004791 
+ 00013540  0x00002a05 call  0x0000355c 
+ 00013541  0x00002a06 call  0x00003586 
+ 00013542  0x00002a07 jam  0x00000000 , 0x00004172 
+ 00013543  0x00002a08 branch  0x000033f8 
+ 00013544  0x00002a0e setarg  0x00000000 
+ 00013545  0x00002a0f store  0x00000004 , 0x0000478d 
+ 00013546  0x00002a10 store  0x00000003 , 0x0000478a 
+ 00013547  0x00002a11 store  0x00000002 , 0x00004509 
+ 00013548  0x00002a13 jam  0x00000001 , 0x000047a0 
+ 00013549  0x00002a14 fetch  0x00000002 , 0x00004797 
+ 00013550  0x00002a15 store  0x00000002 , 0x00004791 
+ 00013551  0x00002a16 call  0x00007e38 
+ 00013552  0x00002a17 fetch  0x00000001 , 0x00004759 
+ 00013553  0x00002a18 rtneq  0x00000000 
+ 00013554  0x00002a19 call  0x0000358f 
+ 00013555  0x00002a1a branch  0x0000356e 
+ 00013556  0x00002a1f branch  0x00003508 
+ 00013557  0x00002a23 fetch  0x00000001 , 0x00004759 
+ 00013558  0x00002a24 rtnne  0x00000002 
+ 00013559  0x00002a25 branch  0x00003508 
+ 00013560  0x00002a2b arg  0x000046cd , 0x00000013 
+ 00013561  0x00002a2c call  0x00003582 
+ 00013562  0x00002a2d arg  0x000046c6 , 0x00000013 
+ 00013563  0x00002a2f branch  0x00003584 
+ 00013564  0x00002a32 jam  0x00000000 , 0x0000436e 
+ 00013565  0x00002a33 arg  0x000046db , 0x00000013 
+ 00013566  0x00002a34 call  0x00003582 
+ 00013567  0x00002a35 arg  0x000046d4 , 0x00000013 
+ 00013568  0x00002a36 branch  0x000034fb 
+ 00013569  0x00002a39 fetch  0x00000001 , 0x00000477 
+ 00013570  0x00002a3a beq  0x00000012 , 0x00003504 
+ 00013571  0x00002a3b rtn 
+ 00013572  0x00002a3d fetch  0x00000002 , 0x00000478 
+ 00013573  0x00002a3f beq  0x0000000d , 0x00003536 
+ 00013574  0x00002a40 beq  0x0000000b , 0x00003571 
+ 00013575  0x00002a41 rtn 
+ 00013576  0x00002a47 fetch  0x00000001 , 0x00004753 
+ 00013577  0x00002a48 rtn  0x00000034 
+ 00013578  0x00002a49 branch  0x00006978 
+ 00013579  0x00002a4e copy  0x00000011 , 0x0000003f 
+ 00013580  0x00002a4f branch  0x00003510 , 0x00000034 
+ 00013581  0x00002a51 copy  0x00000007 , 0x0000003f 
+ 00013582  0x00002a52 beq  0x00000000 , 0x00003513 
+ 00013583  0x00002a53 rtn 
+ 00013584  0x00002a55 copy  0x00000007 , 0x0000003f 
+ 00013585  0x00002a56 beq  0x00000000 , 0x0000351b 
+ 00013586  0x00002a57 rtn 
+ 00013587  0x00002a5a jam  0x00000001 , 0x0000479d 
+ 00013588  0x00002a5b arg  0x000046f7 , 0x00000013 
+ 00013589  0x00002a5c call  0x00003582 
+ 00013590  0x00002a5d arg  0x000046f0 , 0x00000013 
+ 00013591  0x00002a5e call  0x00003584 
+ 00013592  0x00002a5f fetch  0x00000002 , 0x00004682 
+ 00013593  0x00002a60 bbit0  0x00000009 , 0x00003532 
+ 00013594  0x00002a61 branch  0x00003521 
+ 00013595  0x00002a64 jam  0x00000000 , 0x0000479d 
+ 00013596  0x00002a65 branch  0x0000351d 
+ 00013597  0x00002a6a fetch  0x00000001 , 0x0000479a 
+ 00013598  0x00002a6b rtnne  0x00000001 
+ 00013599  0x00002a6c jam  0x00000005 , 0x00004799 
+ 00013600  0x00002a6d rtn 
+ 00013601  0x00002a70 fetch  0x00000001 , 0x0000479a 
+ 00013602  0x00002a71 pincrease  0x00000001 
+ 00013603  0x00002a72 store  0x00000001 , 0x0000479a 
+ 00013604  0x00002a73 beq  0x00000001 , 0x00003527 
+ 00013605  0x00002a74 beq  0x00000002 , 0x0000352b 
+ 00013606  0x00002a75 rtn 
+ 00013607  0x00002a77 call  0x0000355c 
+ 00013608  0x00002a78 jam  0x00000001 , 0x00004771 
+ 00013609  0x00002a79 arg  0x0000476c , 0x00000013 
+ 00013610  0x00002a7a branch  0x00003544 
+ 00013611  0x00002a7c jam  0x00000000 , 0x0000479a 
+ 00013612  0x00002a7d jam  0x00000002 , 0x00004771 
+ 00013613  0x00002a7e arg  0x0000476c , 0x00000013 
+ 00013614  0x00002a7f call  0x00003544 
+ 00013615  0x00002a80 fetch  0x00000001 , 0x0000479e 
+ 00013616  0x00002a81 beq  0x00000001 , 0x00003551 
+ 00013617  0x00002a82 rtn 
+ 00013618  0x00002a85 fetch  0x00000002 , 0x00004797 
+ 00013619  0x00002a86 store  0x00000002 , 0x00004791 
+ 00013620  0x00002a87 call  0x0000355c 
+ 00013621  0x00002a88 branch  0x0000358f 
+ 00013622  0x00002a8c bpatch  0x000000cd , 0x00004019 
+ 00013623  0x00002a8d call  0x000036fc 
+ 00013624  0x00002a8e ifetch  0x00000001 , 0x00000011 
+ 00013625  0x00002a8f beq  0x00000003 , 0x0000353c 
+ 00013626  0x00002a90 beq  0x00000007 , 0x00003540 
+ 00013627  0x00002a91 rtn 
+ 00013628  0x00002a94 fetch  0x00000001 , 0x0000479e 
+ 00013629  0x00002a95 beq  0x00000000 , 0x00003551 
+ 00013630  0x00002a96 beq  0x00000001 , 0x0000355c 
+ 00013631  0x00002a97 rtn 
+ 00013632  0x00002a9a ifetch  0x00000001 , 0x00000012 
+ 00013633  0x00002a9b beq  0x00000001 , 0x00003564 
+ 00013634  0x00002a9c beq  0x00000000 , 0x00003569 
+ 00013635  0x00002a9d rtn 
+ 00013636  0x00002aa5 bpatch  0x000000ce , 0x00004019 
+ 00013637  0x00002aa6 fetch  0x00000001 , 0x0000478b 
+ 00013638  0x00002aa7 isolate1  0x00000000 , 0x0000003f 
+ 00013639  0x00002aa8 nrtn  0x00000001 
+ 00013640  0x00002aa9 add  0x00000013 , 0x00000006 , 0x00000006 
+ 00013641  0x00002aaa ifetch  0x00000002 , 0x00000006 
+ 00013642  0x00002aab byteswap  0x0000003f , 0x0000003f 
+ 00013643  0x00002aac add  0x0000003f , 0x00000005 , 0x00000039 
+ 00013644  0x00002aad add  0x00000013 , 0x00000003 , 0x00000006 
+ 00013645  0x00002aae call  0x000036f0 
+ 00013646  0x00002aaf istore  0x00000001 , 0x00000006 
+ 00013647  0x00002ab0 copy  0x00000013 , 0x00000011 
+ 00013648  0x00002ab1 branch  0x00007e3d 
+ 00013649  0x00002ab8 fetch  0x00000001 , 0x00004759 
+ 00013650  0x00002ab9 rtn  0x00000034 
+ 00013651  0x00002aba jam  0x00000001 , 0x0000479e 
+ 00013652  0x00002abb arg  0x000046e9 , 0x00000013 
+ 00013653  0x00002abc call  0x00003582 
+ 00013654  0x00002abd arg  0x000046e2 , 0x00000013 
+ 00013655  0x00002abe call  0x00003584 
+ 00013656  0x00002abf jam  0x00000004 , 0x00004780 
+ 00013657  0x00002ac0 jam  0x00000001 , 0x00004783 
+ 00013658  0x00002ac1 arg  0x0000477b , 0x00000013 
+ 00013659  0x00002ac2 branch  0x00003544 
+ 00013660  0x00002ac4 fetch  0x00000001 , 0x0000479e 
+ 00013661  0x00002ac5 rtn  0x00000034 
+ 00013662  0x00002ac6 jam  0x00000000 , 0x0000479e 
+ 00013663  0x00002ac7 call  0x00003586 
+ 00013664  0x00002ac8 jam  0x00000004 , 0x00004780 
+ 00013665  0x00002ac9 jam  0x00000000 , 0x00004783 
+ 00013666  0x00002aca arg  0x0000477b , 0x00000013 
+ 00013667  0x00002acb branch  0x00003544 
+ 00013668  0x00002ace jam  0x00000001 , 0x0000479f 
+ 00013669  0x00002acf jam  0x00000007 , 0x00004780 
+ 00013670  0x00002ad0 jam  0x00000001 , 0x00004783 
+ 00013671  0x00002ad1 arg  0x0000477b , 0x00000013 
+ 00013672  0x00002ad2 branch  0x00003544 
+ 00013673  0x00002ad4 jam  0x00000000 , 0x0000479f 
+ 00013674  0x00002ad5 jam  0x00000007 , 0x00004780 
+ 00013675  0x00002ad6 jam  0x00000000 , 0x00004783 
+ 00013676  0x00002ad7 arg  0x0000477b , 0x00000013 
+ 00013677  0x00002ad8 branch  0x00003544 
+ 00013678  0x00002ada fetch  0x00000001 , 0x0000479f 
+ 00013679  0x00002adb rtn  0x00000034 
+ 00013680  0x00002adc branch  0x00003551 
+ 00013681  0x00002adf ifetch  0x00000002 , 0x00000011 
+ 00013682  0x00002ae0 store  0x00000002 , 0x0000478b 
+ 00013683  0x00002ae1 isolate1  0x00000000 , 0x0000003f 
+ 00013684  0x00002ae2 nrtn  0x00000001 
+ 00013685  0x00002ae3 fetch  0x00000001 , 0x000047a0 
+ 00013686  0x00002ae4 rtn  0x00000034 
+ 00013687  0x00002ae5 jam  0x00000000 , 0x000047a0 
+ 00013688  0x00002ae6 fetch  0x00000008 , 0x000047b6 
+ 00013689  0x00002ae7 store  0x00000008 , 0x00004496 
+ 00013690  0x00002ae8 jam  0x00000002 , 0x00004790 
+ 00013691  0x00002ae9 call  0x000035af 
+ 00013692  0x00002aea call  0x000035b9 
+ 00013693  0x00002aeb jam  0x00000007 , 0x00004780 
+ 00013694  0x00002aec fetch  0x00000001 , 0x0000479f 
+ 00013695  0x00002aed store  0x00000001 , 0x00004783 
+ 00013696  0x00002aee arg  0x0000477b , 0x00000013 
+ 00013697  0x00002aef branch  0x00003544 
+ 00013698  0x00002af4 arg  0x00000001 , 0x00000011 
+ 00013699  0x00002af5 branch  0x00003585 
+ 00013700  0x00002af7 arg  0x00000000 , 0x00000011 
+ 00013701  0x00002af9 branch  0x0000358c 
+ 00013702  0x00002afc arg  0x00000000 , 0x00000011 
+ 00013703  0x00002afd call  0x00007d19 
+ 00013704  0x00002afe arg  0x00000001 , 0x00000011 
+ 00013705  0x00002aff call  0x00007d19 
+ 00013706  0x00002b00 fetch  0x00000001 , 0x000047a1 
+ 00013707  0x00002b01 branch  0x000069d7 
+ 00013708  0x00002b04 call  0x00007d04 
+ 00013709  0x00002b05 arg  0x00000007 , 0x00000039 
+ 00013710  0x00002b06 branch  0x00007d26 
+ 00013711  0x00002b0b arg  0x000046b8 , 0x00000013 
+ 00013712  0x00002b0c arg  0x0000469a , 0x00000012 
+ 00013713  0x00002b0e call  0x00003596 
+ 00013714  0x00002b0f call  0x00003584 
+ 00013715  0x00002b10 fetch  0x00000002 , 0x00004795 
+ 00013716  0x00002b11 store  0x00000002 , 0x00004793 
+ 00013717  0x00002b12 branch  0x000033fa 
+ 00013718  0x00002b15 ifetch  0x00000002 , 0x00000012 
+ 00013719  0x00002b16 store  0x00000002 , 0x00004154 
+ 00013720  0x00002b17 ifetch  0x00000002 , 0x00000006 
+ 00013721  0x00002b18 store  0x00000002 , 0x00004482 
+ 00013722  0x00002b19 rtn 
+ 00013723  0x00002b1c arg  0x00000000 , 0x00000011 
+ 00013724  0x00002b1d call  0x000069a6 
+ 00013725  0x00002b1e fetch  0x00000006 , 0x000047a1 
+ 00013726  0x00002b1f store  0x00000006 , 0x00000a9a 
+ 00013727  0x00002b20 call  0x000069ae 
+ 00013728  0x00002b21 fetch  0x00000001 , 0x000047a1 
+ 00013729  0x00002b22 branch  0x000069d7 
+ 00013730  0x00002b25 jam  0x00000001 , 0x0000479b 
+ 00013731  0x00002b26 rtn 
+ 00013732  0x00002b28 jam  0x00000000 , 0x0000479b 
+ 00013733  0x00002b29 rtn 
+ 00013734  0x00002b2e jam  0x00000000 , 0x0000479c 
+ 00013735  0x00002b2f fetch  0x00000001 , 0x000047a1 
+ 00013736  0x00002b30 branch  0x000069d7 
+ 00013737  0x00002b33 jam  0x00000001 , 0x0000479c 
+ 00013738  0x00002b34 fetch  0x00000006 , 0x000047a1 
+ 00013739  0x00002b35 store  0x00000006 , 0x00000a9a 
+ 00013740  0x00002b36 branch  0x000069ae 
+ 00013741  0x00002b3b jam  0x00000000 , 0x0000422d 
+ 00013742  0x00002b3c branch  0x000068a8 
+ 00013743  0x00002b3f call  0x000068eb 
+ 00013744  0x00002b40 call  0x00006908 
+ 00013745  0x00002b41 store  0x00000002 , 0x000047b0 
+ 00013746  0x00002b42 arg  0x000047aa , 0x00000011 
+ 00013747  0x00002b43 call  0x00006930 
+ 00013748  0x00002b44 store  0x00000001 , 0x000047a9 
+ 00013749  0x00002b45 beq  0x00000000 , 0x000035be 
+ 00013750  0x00002b46 sub  0x0000003f , 0x00000064 , 0x0000003e 
+ 00013751  0x00002b47 nbranch  0x000035bc , 0x00000002 
+ 00013752  0x00002b48 store  0x00000001 , 0x00004783 
+ 00013753  0x00002b4a jam  0x00000005 , 0x00004780 
+ 00013754  0x00002b4b arg  0x0000477b , 0x00000013 
+ 00013755  0x00002b4c branch  0x00003544 
+ 00013756  0x00002b4e jam  0x00000064 , 0x00004783 
+ 00013757  0x00002b4f branch  0x000035b9 
+ 00013758  0x00002b52 branch  0x0000341a 
+ 00013759  0x00002b57 rtn  0x0000002b 
+ 00013760  0x00002b58 hfetch  0x00000001 , 0x00008081 
+ 00013761  0x00002b59 and_into  0x000000f0 , 0x0000003f 
+ 00013762  0x00002b5a hstore  0x00000001 , 0x00008081 
+ 00013763  0x00002b5b setarg  0x00003631 
+ 00013764  0x00002b5c store  0x00000002 , 0x000041eb 
+ 00013765  0x00002b5e setarg  0x00003633 
+ 00013766  0x00002b5f store  0x00000002 , 0x000041ed 
+ 00013767  0x00002b61 setarg  0x0000340a 
+ 00013768  0x00002b62 store  0x00000002 , 0x000041f7 
+ 00013769  0x00002b64 setarg  0x00003635 
+ 00013770  0x00002b65 store  0x00000002 , 0x000041f3 
+ 00013771  0x00002b67 setarg  0x0000364b 
+ 00013772  0x00002b68 store  0x00000002 , 0x000041f5 
+ 00013773  0x00002b6a setarg  0x000033d0 
+ 00013774  0x00002b6b store  0x00000002 , 0x000041e9 
+ 00013775  0x00002b6d setarg  0x000036f6 
+ 00013776  0x00002b6e store  0x00000002 , 0x000041f9 
+ 00013777  0x00002b70 setarg  0x0000367a 
+ 00013778  0x00002b71 store  0x00000002 , 0x000041fd 
+ 00013779  0x00002b73 call  0x00002c7a 
+ 00013780  0x00002b74 setarg  0x00003722 
+ 00013781  0x00002b75 add  0x00000013 , 0x000000de , 0x00000005 
+ 00013782  0x00002b76 istore  0x00000002 , 0x00000005 
+ 00013783  0x00002b78 setarg  0x000035ed 
+ 00013784  0x00002b79 store  0x00000002 , 0x0000475b 
+ 00013785  0x00002b7b setarg  0x000035ef 
+ 00013786  0x00002b7c store  0x00000002 , 0x0000475f 
+ 00013787  0x00002b7e bpatch  0x000000cf , 0x00004019 
+ 00013788  0x00002b7f call  0x00003628 
+ 00013789  0x00002b80 call  0x00007e38 
+ 00013790  0x00002b81 jam  0x00000002 , 0x00004172 
+ 00013791  0x00002b82 jam  0x00000000 , 0x000049f6 
+ 00013792  0x00002b83 fetch  0x00000001 , 0x000047cb 
+ 00013793  0x00002b84 store  0x00000001 , 0x0000469a 
+ 00013794  0x00002b85 beq  0x00000000 , 0x000035ee 
+ 00013795  0x00002b86 fetch  0x00000001 , 0x000047cc 
+ 00013796  0x00002b87 store  0x00000001 , 0x00004686 
+ 00013797  0x00002b88 jam  0x00000000 , 0x0000436e 
+ 00013798  0x00002b8a call  0x0000360f 
+ 00013799  0x00002b8b call  0x00007cd3 
+ 00013800  0x00002b8c call  0x00007cdd 
+ 00013801  0x00002b8d jam  0x00000001 , 0x000047f3 
+ 00013802  0x00002b8e fetch  0x00000002 , 0x00004682 
+ 00013803  0x00002b8f rtnbit1  0x0000000c 
+ 00013804  0x00002b90 branch  0x0000340a 
+ 00013805  0x00002b93 branch  0x0000360f 
+ 00013806  0x00002b96 jam  0x00000002 , 0x000047f3 
+ 00013807  0x00002b98 jam  0x00000001 , 0x0000436e 
+ 00013808  0x00002b99 call  0x0000360f 
+ 00013809  0x00002b9a arg  0x00000000 , 0x00000011 
+ 00013810  0x00002b9b call  0x00007d1e 
+ 00013811  0x00002b9d setarg  0x00000020 
+ 00013812  0x00002b9e call  0x000046f0 
+ 00013813  0x00002ba0 arg  0x000043b7 , 0x00000005 
+ 00013814  0x00002ba1 fetch  0x00000001 , 0x000044a0 
+ 00013815  0x00002ba3 and  0x0000003f , 0x000000f0 , 0x00000002 
+ 00013816  0x00002ba4 rshift4  0x00000002 , 0x00000002 
+ 00013817  0x00002ba5 call  0x00003609 
+ 00013818  0x00002ba6 istoret  0x00000001 , 0x00000005 
+ 00013819  0x00002ba7 and  0x0000003f , 0x0000000f , 0x00000002 
+ 00013820  0x00002ba8 call  0x00003609 
+ 00013821  0x00002ba9 istoret  0x00000001 , 0x00000005 
+ 00013822  0x00002baa call  0x000057a6 
+ 00013823  0x00002bab fetcht  0x00000001 , 0x000043af 
+ 00013824  0x00002bac copy  0x00000002 , 0x00000039 
+ 00013825  0x00002bad arg  0x00004372 , 0x00000005 
+ 00013826  0x00002bae arg  0x000043b0 , 0x00000006 
+ 00013827  0x00002baf call  0x00007f01 
+ 00013828  0x00002bb1 fetcht  0x00000001 , 0x000043af 
+ 00013829  0x00002bb2 copy  0x00000002 , 0x00000039 
+ 00013830  0x00002bb3 arg  0x00004392 , 0x00000005 
+ 00013831  0x00002bb4 arg  0x000043b0 , 0x00000006 
+ 00013832  0x00002bb5 branch  0x00007f01 
+ 00013833  0x00002bb7 sub  0x00000002 , 0x00000009 , 0x0000003e 
+ 00013834  0x00002bb8 branch  0x0000360d , 0x00000002 
+ 00013835  0x00002bb9 add  0x00000002 , 0x00000037 , 0x00000002 
+ 00013836  0x00002bba rtn 
+ 00013837  0x00002bbc add  0x00000002 , 0x00000030 , 0x00000002 
+ 00013838  0x00002bbd rtn 
+ 00013839  0x00002bc0 fetch  0x00000001 , 0x000047c0 
+ 00013840  0x00002bc1 bne  0x000000ff , 0x00003621 
+ 00013841  0x00002bc3 fetch  0x00000001 , 0x000047be 
+ 00013842  0x00002bc4 bne  0x000000ff , 0x00003624 
+ 00013843  0x00002bc6 fetch  0x00000001 , 0x000047c9 
+ 00013844  0x00002bc7 bne  0x000000ff , 0x00003626 
+ 00013845  0x00002bc9 fetch  0x00000001 , 0x0000472c 
+ 00013846  0x00002bca copy  0x0000003f , 0x00000039 
+ 00013847  0x00002bcb setarg  0x0000472d 
+ 00013848  0x00002bcc copy  0x0000003f , 0x00000011 
+ 00013849  0x00002bce copy  0x00000011 , 0x00000006 
+ 00013850  0x00002bcf ifetch  0x00000001 , 0x00000006 
+ 00013851  0x00002bd0 copy  0x00000006 , 0x00000011 
+ 00013852  0x00002bd1 beq  0x000000ff , 0x0000361f 
+ 00013853  0x00002bd2 copy  0x0000003f , 0x00000002 
+ 00013854  0x00002bd3 call  0x0000680e 
+ 00013855  0x00002bd5 loop  0x00003619 
+ 00013856  0x00002bd7 rtn 
+ 00013857  0x00002bd9 fetch  0x00000008 , 0x000047c0 
+ 00013858  0x00002bda store  0x00000008 , 0x0000472f 
+ 00013859  0x00002bdb branch  0x00003611 
+ 00013860  0x00002bdd store  0x00000001 , 0x0000472d 
+ 00013861  0x00002bde branch  0x00003613 
+ 00013862  0x00002be0 store  0x00000001 , 0x0000472e 
+ 00013863  0x00002be1 branch  0x00003615 
+ 00013864  0x00002be5 arg  0x00000000 , 0x00000011 
+ 00013865  0x00002be6 call  0x000069a6 
+ 00013866  0x00002be7 call  0x000037e4 
+ 00013867  0x00002be8 call  0x00002c7d 
+ 00013868  0x00002be9 branch  0x0000362d 
+ 00013869  0x00002bec jam  0x00000064 , 0x000047cf 
+ 00013870  0x00002bed fetch  0x00000001 , 0x000047c9 
+ 00013871  0x00002bee store  0x00000001 , 0x00004744 
+ 00013872  0x00002bef branch  0x000068a8 
+ 00013873  0x00002bf2 call  0x00006835 
+ 00013874  0x00002bf3 branch  0x0000696c 
+ 00013875  0x00002bf6 branch  0x0000696c 
+ 00013876  0x00002bfb branch  0x00006978 
+ 00013877  0x00002bfe call  0x00003642 
+ 00013878  0x00002bff call  0x000037ee 
+ 00013879  0x00002c00 call  0x00003639 
+ 00013880  0x00002c01 branch  0x00003634 
+ 00013881  0x00002c04 fetch  0x00000002 , 0x00004682 
+ 00013882  0x00002c05 rtnbit1  0x00000009 
+ 00013883  0x00002c06 fetch  0x00000001 , 0x000049f6 
+ 00013884  0x00002c07 beq  0x00000001 , 0x0000363e 
+ 00013885  0x00002c08 rtn 
+ 00013886  0x00002c0a fetch  0x00000001 , 0x000047ea 
+ 00013887  0x00002c0b rtneq  0x00000001 
+ 00013888  0x00002c0c jam  0x00000001 , 0x000047ea 
+ 00013889  0x00002c0d branch  0x00003654 
+ 00013890  0x00002c10 fetch  0x00000002 , 0x00004682 
+ 00013891  0x00002c11 rtnbit0  0x00000009 
+ 00013892  0x00002c12 call  0x00005892 
+ 00013893  0x00002c13 nrtn  0x00000034 
+ 00013894  0x00002c14 arg  0x00004718 , 0x00000011 
+ 00013895  0x00002c15 call  0x00007e54 
+ 00013896  0x00002c16 nrtn  0x00000028 
+ 00013897  0x00002c17 arg  0x00004718 , 0x00000006 
+ 00013898  0x00002c18 branch  0x00004746 
+ 00013899  0x00002c1b copy  0x00000013 , 0x0000003f 
+ 00013900  0x00002c1c beq  0x0000002d , 0x00003431 
+ 00013901  0x00002c1d beq  0x00000010 , 0x0000341a 
+ 00013902  0x00002c1e beq  0x00000014 , 0x00003651 
+ 00013903  0x00002c1f beq  0x00000015 , 0x00003660 
+ 00013904  0x00002c20 rtn 
+ 00013905  0x00002c23 setarg  0x00000000 
+ 00013906  0x00002c24 call  0x00003220 
+ 00013907  0x00002c25 branch  0x00003656 
+ 00013908  0x00002c27 fetch  0x00000002 , 0x000047eb 
+ 00013909  0x00002c28 store  0x00000002 , 0x000047ed 
+ 00013910  0x00002c2a jam  0x00000014 , 0x000047ce 
+ 00013911  0x00002c2b jam  0x00000000 , 0x00004091 
+ 00013912  0x00002c2c call  0x000033f8 
+ 00013913  0x00002c2d call  0x00003416 
+ 00013914  0x00002c2e fetch  0x00000001 , 0x000047bd 
+ 00013915  0x00002c2f beq  0x00000001 , 0x0000365e 
+ 00013916  0x00002c31 arg  0x00000000 , 0x00000011 
+ 00013917  0x00002c32 branch  0x00007d14 
+ 00013918  0x00002c34 arg  0x00000000 , 0x00000011 
+ 00013919  0x00002c35 branch  0x00007d19 
+ 00013920  0x00002c38 setarg  0x00000002 
+ 00013921  0x00002c39 call  0x00003220 
+ 00013922  0x00002c3b setarg  0x00000000 
+ 00013923  0x00002c3c store  0x00000005 , 0x0000479c 
+ 00013924  0x00002c3d setarg  0x00000004 
+ 00013925  0x00002c3e call  0x000069d7 
+ 00013926  0x00002c3f setarg  0x00000005 
+ 00013927  0x00002c40 call  0x000069d7 
+ 00013928  0x00002c41 setarg  0x00000014 
+ 00013929  0x00002c42 call  0x000069d7 
+ 00013930  0x00002c43 setarg  0x00000015 
+ 00013931  0x00002c44 call  0x000069d7 
+ 00013932  0x00002c45 setarg  0x00000016 
+ 00013933  0x00002c46 call  0x000069d7 
+ 00013934  0x00002c47 setarg  0x00000007 
+ 00013935  0x00002c48 call  0x000069d7 
+ 00013936  0x00002c49 call  0x00007e38 
+ 00013937  0x00002c4a jam  0x0000000a , 0x0000475e 
+ 00013938  0x00002c4b jam  0x0000000a , 0x00004760 
+ 00013939  0x00002c4c jam  0x0000000a , 0x00004762 
+ 00013940  0x00002c4e jam  0x00000002 , 0x00004172 
+ 00013941  0x00002c4f arg  0x00000000 , 0x00000011 
+ 00013942  0x00002c50 call  0x00007d1e 
+ 00013943  0x00002c52 setarg  0x00000020 
+ 00013944  0x00002c53 call  0x000046f0 
+ 00013945  0x00002c54 branch  0x000033fa 
+ 00013946  0x00002c58 call  0x0000373b 
+ 00013947  0x00002c59 call  0x0000373e 
+ 00013948  0x00002c5a call  0x00003741 
+ 00013949  0x00002c5b call  0x0000337b 
+ 00013950  0x00002c5c call  0x000036c8 
+ 00013951  0x00002c5d call  0x000036a1 
+ 00013952  0x00002c5e call  0x0000368a 
+ 00013953  0x00002c5f call  0x00003683 
+ 00013954  0x00002c60 branch  0x0000368f 
+ 00013955  0x00002c63 arg  0x0000479a , 0x00000013 
+ 00013956  0x00002c64 arg  0x00003686 , 0x00000012 
+ 00013957  0x00002c65 branch  0x0000336d 
+ 00013958  0x00002c67 call  0x00003847 
+ 00013959  0x00002c68 nrtn  0x00000001 
+ 00013960  0x00002c69 jam  0x00000001 , 0x0000479b 
+ 00013961  0x00002c6a rtn 
+ 00013962  0x00002c6d arg  0x000047ed , 0x00000013 
+ 00013963  0x00002c6e arg  0x0000368d , 0x00000012 
+ 00013964  0x00002c6f branch  0x00003374 
+ 00013965  0x00002c71 jam  0x00000002 , 0x000047ea 
+ 00013966  0x00002c72 branch  0x00003662 
+ 00013967  0x00002c75 arg  0x000047f1 , 0x00000013 
+ 00013968  0x00002c76 arg  0x00003692 , 0x00000012 
+ 00013969  0x00002c77 branch  0x0000336d 
+ 00013970  0x00002c79 fetch  0x00000001 , 0x000047f2 
+ 00013971  0x00002c7a branch  0x0000369e , 0x00000034 
+ 00013972  0x00002c7b jam  0x00000002 , 0x000047f1 
+ 00013973  0x00002c7c jam  0x00000000 , 0x000047f2 
+ 00013974  0x00002c7d setarg  0x00000a02 
+ 00013975  0x00002c7e store  0x00000002 , 0x00004752 
+ 00013976  0x00002c7f fetch  0x00000001 , 0x000047b9 
+ 00013977  0x00002c80 beq  0x00000003 , 0x0000369b 
+ 00013978  0x00002c82 branch  0x00003762 
+ 00013979  0x00002c84 setarg  0x00000a02 
+ 00013980  0x00002c85 store  0x00000002 , 0x00004754 
+ 00013981  0x00002c86 branch  0x00003762 
+ 00013982  0x00002c88 setarg  0x00000000 
+ 00013983  0x00002c89 store  0x00000004 , 0x00004752 
+ 00013984  0x00002c8a branch  0x00003762 
+ 00013985  0x00002c8d fetch  0x00000001 , 0x000047c8 
+ 00013986  0x00002c8e rtn  0x00000034 
+ 00013987  0x00002c8f fetch  0x00000002 , 0x00004682 
+ 00013988  0x00002c90 bbit0  0x00000009 , 0x000036c6 
+ 00013989  0x00002c91 arg  0x000047ce , 0x00000013 
+ 00013990  0x00002c92 arg  0x000036a8 , 0x00000012 
+ 00013991  0x00002c93 branch  0x0000336d 
+ 00013992  0x00002c95 fetch  0x00000001 , 0x000047cd 
+ 00013993  0x00002c96 store  0x00000001 , 0x000047ce 
+ 00013994  0x00002c97 fetch  0x00000001 , 0x000047d1 
+ 00013995  0x00002c98 nrtn  0x00000034 
+ 00013996  0x00002c9a call  0x000068eb 
+ 00013997  0x00002c9b call  0x00006908 
+ 00013998  0x00002c9c store  0x00000002 , 0x000047e8 
+ 00013999  0x00002c9d arg  0x000047e2 , 0x00000011 
+ 00014000  0x00002c9e call  0x00006930 
+ 00014001  0x00002c9f fetcht  0x00000001 , 0x000047cf 
+ 00014002  0x00002ca0 isub  0x00000002 , 0x0000003e 
+ 00014003  0x00002ca1 branch  0x000036b6 , 0x00000002 
+ 00014004  0x00002ca2 store  0x00000001 , 0x000047cf 
+ 00014005  0x00002ca3 copy  0x0000003f , 0x00000002 
+ 00014006  0x00002ca5 storet  0x00000001 , 0x000047d0 
+ 00014007  0x00002ca6 fetch  0x00000001 , 0x000047ca 
+ 00014008  0x00002ca7 isub  0x00000002 , 0x0000003e 
+ 00014009  0x00002ca8 call  0x000036c1 , 0x00000002 
+ 00014010  0x00002ca9 storet  0x00000001 , 0x000047db 
+ 00014011  0x00002caa arg  0x00000006 , 0x00000039 
+ 00014012  0x00002cab arg  0x000047d6 , 0x00000006 
+ 00014013  0x00002cac call  0x000036f0 
+ 00014014  0x00002cad store  0x00000001 , 0x000047dc 
+ 00014015  0x00002cae arg  0x000047d3 , 0x00000011 
+ 00014016  0x00002caf branch  0x00007e3d 
+ 00014017  0x00002cb1 fetch  0x00000001 , 0x000047d2 
+ 00014018  0x00002cb2 nrtn  0x00000034 
+ 00014019  0x00002cb3 jam  0x00000001 , 0x000047d2 
+ 00014020  0x00002cb4 arg  0x00000001 , 0x00000011 
+ 00014021  0x00002cb5 branch  0x00007d1e 
+ 00014022  0x00002cb7 arg  0x00000001 , 0x00000011 
+ 00014023  0x00002cb8 branch  0x00007d19 
+ 00014024  0x00002cbb arg  0x000047a4 , 0x00000013 
+ 00014025  0x00002cbc arg  0x000036cb , 0x00000012 
+ 00014026  0x00002cbd branch  0x0000336d 
+ 00014027  0x00002cbf jam  0x00000005 , 0x000047a4 
+ 00014028  0x00002cc0 jam  0x00000000 , 0x000047a6 
+ 00014029  0x00002cc1 fetch  0x00000001 , 0x000047a5 
+ 00014030  0x00002cc2 beq  0x00000001 , 0x000036ee 
+ 00014031  0x00002cc3 beq  0x00000000 , 0x000036ec 
+ 00014032  0x00002cc5 arg  0x0000479c , 0x00000006 
+ 00014033  0x00002cc6 copy  0x00000006 , 0x00000011 
+ 00014034  0x00002cc7 arg  0x00000008 , 0x00000039 
+ 00014035  0x00002cc9 copy  0x00000011 , 0x00000006 
+ 00014036  0x00002cca ifetch  0x00000001 , 0x00000006 
+ 00014037  0x00002ccb copy  0x00000006 , 0x00000011 
+ 00014038  0x00002ccc beq  0x00000000 , 0x000036e3 
+ 00014039  0x00002ccd beq  0x00000001 , 0x000036e6 
+ 00014040  0x00002cce beq  0x00000002 , 0x000036e9 
+ 00014041  0x00002cd0 fetch  0x00000001 , 0x000047a6 
+ 00014042  0x00002cd1 increase  0x00000001 , 0x0000003f 
+ 00014043  0x00002cd2 store  0x00000001 , 0x000047a6 
+ 00014044  0x00002cd3 loop  0x000036d3 
+ 00014045  0x00002cd4 rtn 
+ 00014046  0x00002cd6 fetch  0x00000001 , 0x000047a6 
+ 00014047  0x00002cd7 arg  0x000047c0 , 0x00000012 
+ 00014048  0x00002cd8 iadd  0x00000012 , 0x00000012 
+ 00014049  0x00002cd9 ifetcht  0x00000001 , 0x00000012 
+ 00014050  0x00002cda rtn 
+ 00014051  0x00002cdc call  0x000036de 
+ 00014052  0x00002cdd call  0x00006825 
+ 00014053  0x00002cde branch  0x000036d9 
+ 00014054  0x00002ce0 call  0x000036de 
+ 00014055  0x00002ce1 call  0x00006829 
+ 00014056  0x00002ce2 branch  0x000036d9 
+ 00014057  0x00002ce4 fetch  0x00000001 , 0x000047a5 
+ 00014058  0x00002ce5 beq  0x00000001 , 0x000036e3 
+ 00014059  0x00002ce6 branch  0x000036e6 
+ 00014060  0x00002ce8 jam  0x00000001 , 0x000047a5 
+ 00014061  0x00002ce9 branch  0x000036d0 
+ 00014062  0x00002ceb jam  0x00000000 , 0x000047a5 
+ 00014063  0x00002cec branch  0x000036d0 
+ 00014064  0x00002cf1 arg  0x00000000 , 0x00000011 
+ 00014065  0x00002cf3 ifetch  0x00000001 , 0x00000006 
+ 00014066  0x00002cf4 iadd  0x00000011 , 0x00000011 
+ 00014067  0x00002cf5 loop  0x000036f1 
+ 00014068  0x00002cf7 and  0x00000011 , 0x000000ff , 0x0000003f 
+ 00014069  0x00002cf8 rtn 
+ 00014070  0x00002cfb fetch  0x00000001 , 0x00000477 
+ 00014071  0x00002cfc beq  0x00000012 , 0x000036f9 
+ 00014072  0x00002cfd rtn 
+ 00014073  0x00002cff fetch  0x00000002 , 0x00000478 
+ 00014074  0x00002d00 beq  0x00000014 , 0x00003710 
+ 00014075  0x00002d01 rtn 
+ 00014076  0x00002d0e bpatch  0x000000d0 , 0x0000401a 
+ 00014077  0x00002d0f ifetch  0x00000005 , 0x00000011 
+ 00014078  0x00002d10 store  0x00000005 , 0x00000b12 
+ 00014079  0x00002d11 fetch  0x00000002 , 0x00000b12 
+ 00014080  0x00002d12 arg  0x00006b5a , 0x00000002 
+ 00014081  0x00002d13 isub  0x00000002 , 0x0000003e 
+ 00014082  0x00002d14 nrtn  0x00000005 
+ 00014083  0x00002d15 fetch  0x00000002 , 0x00000b15 
+ 00014084  0x00002d16 byteswap  0x0000003f , 0x0000003f 
+ 00014085  0x00002d17 store  0x00000002 , 0x00000b15 
+ 00014086  0x00002d18 copy  0x0000003f , 0x00000039 
+ 00014087  0x00002d19 increase  0x00000005 , 0x00000011 
+ 00014088  0x00002d1a copy  0x00000011 , 0x00000006 
+ 00014089  0x00002d1b arg  0x00000b17 , 0x00000005 
+ 00014090  0x00002d1c call  0x00007f01 
+ 00014091  0x00002d1d ifetch  0x00000001 , 0x00000006 
+ 00014092  0x00002d1e store  0x00000001 , 0x00000b21 
+ 00014093  0x00002d1f arg  0x00000b14 , 0x00000011 
+ 00014094  0x00002d20 arg  0x00000b17 , 0x00000012 
+ 00014095  0x00002d21 rtn 
+ 00014096  0x00002d24 setarg  0x00000000 
+ 00014097  0x00002d25 store  0x00000005 , 0x00004752 
+ 00014098  0x00002d26 store  0x00000005 , 0x00004757 
+ 00014099  0x00002d27 call  0x000036fc 
+ 00014100  0x00002d28 copy  0x00000012 , 0x00000006 
+ 00014101  0x00002d29 arg  0x00004752 , 0x00000005 
+ 00014102  0x00002d2a arg  0x0000000a , 0x00000039 
+ 00014103  0x00002d2b call  0x00007f01 
+ 00014104  0x00002d2d bpatch  0x000000d1 , 0x0000401a 
+ 00014105  0x00002d2e ifetch  0x00000001 , 0x00000011 
+ 00014106  0x00002d2f beq  0x00000002 , 0x0000374a 
+ 00014107  0x00002d30 beq  0x00000003 , 0x0000375c 
+ 00014108  0x00002d31 beq  0x00000004 , 0x00003762 
+ 00014109  0x00002d32 beq  0x00000005 , 0x00003762 
+ 00014110  0x00002d33 beq  0x00000006 , 0x000037b1 
+ 00014111  0x00002d34 beq  0x00000007 , 0x00003849 
+ 00014112  0x00002d35 beq  0x00000008 , 0x0000384c 
+ 00014113  0x00002d36 rtn 
+ 00014114  0x00002d39 fetch  0x00000002 , 0x00004682 
+ 00014115  0x00002d3a rtnbit1  0x00000009 
+ 00014116  0x00002d3c fetch  0x00000002 , 0x000047eb 
+ 00014117  0x00002d3d store  0x00000002 , 0x000047ed 
+ 00014118  0x00002d3f jam  0x00000001 , 0x000049f6 
+ 00014119  0x00002d41 setarg  0x0000010c 
+ 00014120  0x00002d42 call  0x000032cd 
+ 00014121  0x00002d43 call  0x00003710 
+ 00014122  0x00002d45 fetch  0x00000001 , 0x00000b14 
+ 00014123  0x00002d46 beq  0x00000004 , 0x0000372e 
+ 00014124  0x00002d47 beq  0x00000005 , 0x0000372e 
+ 00014125  0x00002d48 rtn 
+ 00014126  0x00002d4a fetch  0x00000001 , 0x00004752 
+ 00014127  0x00002d4b ncall  0x00003735 , 0x00000034 
+ 00014128  0x00002d4c fetch  0x00000001 , 0x00004754 
+ 00014129  0x00002d4d ncall  0x00003737 , 0x00000034 
+ 00014130  0x00002d4e fetch  0x00000001 , 0x00004756 
+ 00014131  0x00002d4f ncall  0x00003739 , 0x00000034 
+ 00014132  0x00002d50 rtn 
+ 00014133  0x00002d53 jam  0x00000005 , 0x000049f3 
+ 00014134  0x00002d54 rtn 
+ 00014135  0x00002d56 jam  0x00000005 , 0x000049f4 
+ 00014136  0x00002d57 rtn 
+ 00014137  0x00002d59 jam  0x00000005 , 0x000049f5 
+ 00014138  0x00002d5a rtn 
+ 00014139  0x00002d5d arg  0x000049f3 , 0x00000013 
+ 00014140  0x00002d5e arg  0x00003744 , 0x00000012 
+ 00014141  0x00002d5f branch  0x0000336d 
+ 00014142  0x00002d61 arg  0x000049f4 , 0x00000013 
+ 00014143  0x00002d62 arg  0x00003746 , 0x00000012 
+ 00014144  0x00002d63 branch  0x0000336d 
+ 00014145  0x00002d65 arg  0x000049f5 , 0x00000013 
+ 00014146  0x00002d66 arg  0x00003748 , 0x00000012 
+ 00014147  0x00002d67 branch  0x0000336d 
+ 00014148  0x00002d6a jam  0x00000000 , 0x00004752 
+ 00014149  0x00002d6b branch  0x00003762 
+ 00014150  0x00002d6d jam  0x00000000 , 0x00004754 
+ 00014151  0x00002d6e branch  0x00003762 
+ 00014152  0x00002d70 jam  0x00000000 , 0x00004756 
+ 00014153  0x00002d71 branch  0x00003762 
+ 00014154  0x00002d77 call  0x0000374c 
+ 00014155  0x00002d78 branch  0x0000374f 
+ 00014156  0x00002d7a fetch  0x00000001 , 0x00004752 
+ 00014157  0x00002d7b store  0x00000001 , 0x0000475f 
+ 00014158  0x00002d7c branch  0x00003773 
+ 00014159  0x00002d7e fetch  0x00000001 , 0x0000475e 
+ 00014160  0x00002d7f call  0x00003754 
+ 00014161  0x00002d80 fetch  0x00000001 , 0x00004753 
+ 00014162  0x00002d81 store  0x00000001 , 0x0000475d 
+ 00014163  0x00002d82 branch  0x00003770 
+ 00014164  0x00002d84 beq  0x00000002 , 0x00003758 
+ 00014165  0x00002d85 beq  0x00000003 , 0x0000375a 
+ 00014166  0x00002d86 store  0x00000001 , 0x0000475e 
+ 00014167  0x00002d87 rtn 
+ 00014168  0x00002d89 jam  0x00000005 , 0x0000475e 
+ 00014169  0x00002d8a rtn 
+ 00014170  0x00002d8c jam  0x0000000a , 0x0000475e 
+ 00014171  0x00002d8d rtn 
+ 00014172  0x00002d8f fetch  0x00000001 , 0x00004752 
+ 00014173  0x00002d90 call  0x00003754 
+ 00014174  0x00002d91 fetch  0x00000001 , 0x0000475e 
+ 00014175  0x00002d92 call  0x0000379e 
+ 00014176  0x00002d93 call  0x000037a1 
+ 00014177  0x00002d94 branch  0x000069c4 
+ 00014178  0x00002d97 fetch  0x00000001 , 0x000047f0 
+ 00014179  0x00002d98 nrtn  0x00000034 
+ 00014180  0x00002d99 fetch  0x00000006 , 0x00004752 
+ 00014181  0x00002d9a store  0x00000006 , 0x0000475d 
+ 00014182  0x00002d9b fetch  0x00000001 , 0x0000475e 
+ 00014183  0x00002d9c fetcht  0x00000001 , 0x00004760 
+ 00014184  0x00002d9d iand  0x00000002 , 0x0000003f 
+ 00014185  0x00002d9e fetcht  0x00000001 , 0x00004762 
+ 00014186  0x00002d9f iand  0x00000002 , 0x0000003f 
+ 00014187  0x00002da0 call  0x00003779 , 0x00000034 
+ 00014188  0x00002da1 bpatch  0x000000d2 , 0x0000401a 
+ 00014189  0x00002da2 call  0x00003770 
+ 00014190  0x00002da3 call  0x00003773 
+ 00014191  0x00002da4 branch  0x00003776 
+ 00014192  0x00002da6 arg  0x00004763 , 0x00000012 
+ 00014193  0x00002da7 arg  0x0000475d , 0x00000006 
+ 00014194  0x00002da8 branch  0x0000377b 
+ 00014195  0x00002daa arg  0x0000476b , 0x00000012 
+ 00014196  0x00002dab arg  0x0000475f , 0x00000006 
+ 00014197  0x00002dac branch  0x0000377b 
+ 00014198  0x00002dae arg  0x00004773 , 0x00000012 
+ 00014199  0x00002daf arg  0x00004761 , 0x00000006 
+ 00014200  0x00002db0 branch  0x0000377b 
+ 00014201  0x00002db2 jam  0x00000000 , 0x000047d1 
+ 00014202  0x00002db3 rtn 
+ 00014203  0x00002db6 ifetch  0x00000001 , 0x00000006 
+ 00014204  0x00002db7 beq  0x00000000 , 0x00003787 
+ 00014205  0x00002db8 beq  0x00000001 , 0x00003780 
+ 00014206  0x00002db9 beq  0x00000002 , 0x00003782 
+ 00014207  0x00002dba rtn 
+ 00014208  0x00002dbc jam  0x00000000 , 0x0000477b 
+ 00014209  0x00002dbd branch  0x00003783 
+ 00014210  0x00002dbf jam  0x00000001 , 0x0000477b 
+ 00014211  0x00002dc0 ifetch  0x00000001 , 0x00000006 
+ 00014212  0x00002dc1 store  0x00000001 , 0x0000477d 
+ 00014213  0x00002dc2 ifetch  0x00000008 , 0x00000012 
+ 00014214  0x00002dc3 branch  0x0000378c 
+ 00014215  0x00002dc6 ifetch  0x00000001 , 0x00000012 
+ 00014216  0x00002dc7 call  0x000069d7 
+ 00014217  0x00002dc8 increase  0x00000001 , 0x00000012 
+ 00014218  0x00002dc9 ifetch  0x00000001 , 0x00000012 
+ 00014219  0x00002dca branch  0x000069d7 
+ 00014220  0x00002dcc store  0x00000008 , 0x0000477e 
+ 00014221  0x00002dcd jam  0x00000001 , 0x000047d1 
+ 00014222  0x00002dce fetch  0x00000001 , 0x0000477b 
+ 00014223  0x00002dcf beq  0x00000000 , 0x0000379a 
+ 00014224  0x00002dd1 fetch  0x00000001 , 0x0000477f 
+ 00014225  0x00002dd2 store  0x00000001 , 0x00004780 
+ 00014226  0x00002dd3 fetch  0x00000001 , 0x0000477e 
+ 00014227  0x00002dd5 call  0x000069d7 
+ 00014228  0x00002dd6 fetch  0x00000001 , 0x0000477d 
+ 00014229  0x00002dd7 call  0x0000379e 
+ 00014230  0x00002dd8 store  0x00000001 , 0x00004785 
+ 00014231  0x00002dd9 fetch  0x00000006 , 0x00004780 
+ 00014232  0x00002dda store  0x00000006 , 0x00000a9a 
+ 00014233  0x00002ddb branch  0x000069ae 
+ 00014234  0x00002ddd fetch  0x00000001 , 0x0000477e 
+ 00014235  0x00002dde store  0x00000001 , 0x00004780 
+ 00014236  0x00002ddf fetch  0x00000001 , 0x0000477f 
+ 00014237  0x00002de0 branch  0x00003793 
+ 00014238  0x00002de3 mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00014239  0x00002de4 add  0x0000003f , 0x00000032 , 0x0000003f 
+ 00014240  0x00002de5 rtn 
+ 00014241  0x00002de7 arg  0x00002ee0 , 0x00000002 
+ 00014242  0x00002de8 imul32  0x00000002 , 0x0000003f 
+ 00014243  0x00002de9 div  0x0000003f , 0x00000064 
+ 00014244  0x00002dea call  0x00007f86 
+ 00014245  0x00002deb quotient  0x00000002 
+ 00014246  0x00002dec copy  0x00000002 , 0x00000011 
+ 00014247  0x00002ded setarg  0x00002ee0 
+ 00014248  0x00002dee isub  0x00000002 , 0x00000012 
+ 00014249  0x00002def rtn 
+ 00014250  0x00002df3 hfetch  0x00000001 , 0x00008082 
+ 00014251  0x00002df4 set1  0x00000002 , 0x0000003f 
+ 00014252  0x00002df5 hstore  0x00000001 , 0x00008082 
+ 00014253  0x00002df6 setarg  0x0000009e 
+ 00014254  0x00002df7 hstore  0x00000002 , 0x00008068 
+ 00014255  0x00002df8 hstore  0x00000002 , 0x0000806a 
+ 00014256  0x00002df9 rtn 
+ 00014257  0x00002dfc fetch  0x00000001 , 0x000047f0 
+ 00014258  0x00002dfd nrtn  0x00000034 
+ 00014259  0x00002dfe fetch  0x00000002 , 0x00004752 
+ 00014260  0x00002dff store  0x00000002 , 0x00004787 
+ 00014261  0x00002e00 fetch  0x00000001 , 0x000047ea 
+ 00014262  0x00002e01 bne  0x00000001 , 0x000037b9 
+ 00014263  0x00002e02 fetch  0x00000002 , 0x000044a0 
+ 00014264  0x00002e03 store  0x00000002 , 0x00004787 
+ 00014265  0x00002e05 bpatch  0x000000d3 , 0x0000401a 
+ 00014266  0x00002e06 call  0x000037aa 
+ 00014267  0x00002e07 call  0x000037dc 
+ 00014268  0x00002e08 setarg  0x0000bb80 
+ 00014269  0x00002e09 call  0x00002a8f 
+ 00014270  0x00002e0a call  0x000037e0 
+ 00014271  0x00002e0b setarg  0x00001c20 
+ 00014272  0x00002e0c call  0x00002a8f 
+ 00014273  0x00002e0d arg  0x00000010 , 0x00000039 
+ 00014274  0x00002e0f call  0x000037dc 
+ 00014275  0x00002e10 fetch  0x00000002 , 0x00004787 
+ 00014276  0x00002e11 bbit1  0x00000000 , 0x000037c9 
+ 00014277  0x00002e12 setarg  0x00001c20 
+ 00014278  0x00002e13 call  0x00002a8f 
+ 00014279  0x00002e14 call  0x000037e0 
+ 00014280  0x00002e15 branch  0x000037cc 
+ 00014281  0x00002e18 setarg  0x00003840 
+ 00014282  0x00002e19 call  0x00002a8f 
+ 00014283  0x00002e1a call  0x000037e0 
+ 00014284  0x00002e1c setarg  0x00001c20 
+ 00014285  0x00002e1d call  0x00002a8f 
+ 00014286  0x00002e1e fetch  0x00000002 , 0x00004787 
+ 00014287  0x00002e1f rshift  0x0000003f , 0x0000003f 
+ 00014288  0x00002e20 store  0x00000002 , 0x00004787 
+ 00014289  0x00002e21 loop  0x000037c2 
+ 00014290  0x00002e23 jam  0x00000002 , 0x000047f1 
+ 00014291  0x00002e24 jam  0x00000001 , 0x000047f2 
+ 00014292  0x00002e25 setarg  0x00000a01 
+ 00014293  0x00002e26 store  0x00000002 , 0x00004752 
+ 00014294  0x00002e27 fetch  0x00000001 , 0x000047b9 
+ 00014295  0x00002e28 beq  0x00000003 , 0x000037d9 
+ 00014296  0x00002e2a branch  0x00003762 
+ 00014297  0x00002e2c setarg  0x00000a01 
+ 00014298  0x00002e2d store  0x00000002 , 0x00004754 
+ 00014299  0x00002e2e branch  0x00003762 
+ 00014300  0x00002e31 hfetch  0x00000001 , 0x00008085 
+ 00014301  0x00002e32 or_into  0x00000040 , 0x0000003f 
+ 00014302  0x00002e33 hstore  0x00000001 , 0x00008085 
+ 00014303  0x00002e34 rtn 
+ 00014304  0x00002e36 hfetch  0x00000001 , 0x00008085 
+ 00014305  0x00002e37 and_into  0x000000bf , 0x0000003f 
+ 00014306  0x00002e38 hstore  0x00000001 , 0x00008085 
+ 00014307  0x00002e39 rtn 
+ 00014308  0x00002e3c fetch  0x00000001 , 0x000047bb 
+ 00014309  0x00002e3d rtneq  0x00000000 
+ 00014310  0x00002e3e call  0x00002c65 
+ 00014311  0x00002e3f fetcht  0x00000001 , 0x000047bc 
+ 00014312  0x00002e40 storet  0x00000001 , 0x00004786 
+ 00014313  0x00002e41 call  0x000067fb 
+ 00014314  0x00002e42 call  0x00003847 
+ 00014315  0x00002e43 nrtn  0x00000001 
+ 00014316  0x00002e44 jam  0x00000001 , 0x0000479a 
+ 00014317  0x00002e45 rtn 
+ 00014318  0x00002e48 fetch  0x00000001 , 0x000047bb 
+ 00014319  0x00002e49 rtneq  0x00000000 
+ 00014320  0x00002e4a fetch  0x00000001 , 0x0000479b 
+ 00014321  0x00002e4b nrtn  0x00000034 
+ 00014322  0x00002e4c fetch  0x00000002 , 0x00004682 
+ 00014323  0x00002e4d bbit1  0x00000009 , 0x000037f6 
+ 00014324  0x00002e4e fetch  0x00000001 , 0x000047ea 
+ 00014325  0x00002e4f rtnne  0x00000001 
+ 00014326  0x00002e51 bpatch  0x000000d4 , 0x0000401a 
+ 00014327  0x00002e52 call  0x00003847 
+ 00014328  0x00002e53 nrtn  0x00000001 
+ 00014329  0x00002e54 setarg  0x00008ca0 
+ 00014330  0x00002e55 call  0x00002a8f 
+ 00014331  0x00002e56 call  0x00003847 
+ 00014332  0x00002e57 nrtn  0x00000001 
+ 00014333  0x00002e58 call  0x0000383f 
+ 00014334  0x00002e5a call  0x00003842 
+ 00014335  0x00002e5b nrtn  0x00000002 
+ 00014336  0x00002e5c call  0x00003847 
+ 00014337  0x00002e5d branch  0x000037fe , 0x00000001 
+ 00014338  0x00002e5e arg  0x00000000 , 0x00000011 
+ 00014339  0x00002e5f arg  0x00000010 , 0x00000039 
+ 00014340  0x00002e60 call  0x0000383f 
+ 00014341  0x00002e62 call  0x00003842 
+ 00014342  0x00002e63 nrtn  0x00000002 
+ 00014343  0x00002e64 call  0x00003847 
+ 00014344  0x00002e65 nbranch  0x00003805 , 0x00000001 
+ 00014345  0x00002e66 setarg  0x00002a30 
+ 00014346  0x00002e67 call  0x00002a8f 
+ 00014347  0x00002e68 call  0x00003847 
+ 00014348  0x00002e69 branch  0x00003812 , 0x00000001 
+ 00014349  0x00002e6b setarg  0x00000000 
+ 00014350  0x00002e6c rshift  0x00000011 , 0x00000011 
+ 00014351  0x00002e6d ior  0x00000011 , 0x00000011 
+ 00014352  0x00002e6e loop  0x00003805 
+ 00014353  0x00002e6f branch  0x0000381b 
+ 00014354  0x00002e71 setarg  0x00008000 
+ 00014355  0x00002e72 rshift  0x00000011 , 0x00000011 
+ 00014356  0x00002e73 ior  0x00000011 , 0x00000011 
+ 00014357  0x00002e74 call  0x0000383f 
+ 00014358  0x00002e76 call  0x00003842 
+ 00014359  0x00002e77 nrtn  0x00000002 
+ 00014360  0x00002e78 call  0x00003847 
+ 00014361  0x00002e79 branch  0x00003816 , 0x00000001 
+ 00014362  0x00002e7a loop  0x00003805 
+ 00014363  0x00002e7c bpatch  0x000000d5 , 0x0000401a 
+ 00014364  0x00002e7d copy  0x00000011 , 0x0000003f 
+ 00014365  0x00002e7e store  0x00000002 , 0x00004789 
+ 00014366  0x00002e7f store  0x00000002 , 0x00004797 
+ 00014367  0x00002e80 fetch  0x00000001 , 0x000047ea 
+ 00014368  0x00002e81 beq  0x00000001 , 0x00003827 
+ 00014369  0x00002e83 arg  0x00000007 , 0x00000039 
+ 00014370  0x00002e84 arg  0x00004792 , 0x00000006 
+ 00014371  0x00002e85 call  0x000036f0 
+ 00014372  0x00002e86 store  0x00000001 , 0x00004799 
+ 00014373  0x00002e87 arg  0x0000478f , 0x00000011 
+ 00014374  0x00002e88 branch  0x00007e3d 
+ 00014375  0x00002e8b fetch  0x00000001 , 0x000047ef 
+ 00014376  0x00002e8c increase  0x00000001 , 0x0000003f 
+ 00014377  0x00002e8d store  0x00000001 , 0x000047ef 
+ 00014378  0x00002e8e div  0x0000003f , 0x00000002 
+ 00014379  0x00002e8f call  0x00007f86 
+ 00014380  0x00002e90 quotient  0x00000002 
+ 00014381  0x00002e91 remainder  0x0000003f 
+ 00014382  0x00002e92 nbranch  0x00003838 , 0x00000034 
+ 00014383  0x00002e94 fetch  0x00000001 , 0x000047bf 
+ 00014384  0x00002e95 isub  0x00000002 , 0x0000003e 
+ 00014385  0x00002e96 call  0x0000383d , 0x00000005 
+ 00014386  0x00002e97 arg  0x0000479c , 0x0000003f 
+ 00014387  0x00002e98 increase  0xffffffff , 0x00000002 
+ 00014388  0x00002e99 iadd  0x00000002 , 0x00000011 
+ 00014389  0x00002e9a arg  0x00000000 , 0x0000003f 
+ 00014390  0x00002e9b istore  0x00000001 , 0x00000011 
+ 00014391  0x00002e9c rtn 
+ 00014392  0x00002e9e arg  0x0000479c , 0x0000003f 
+ 00014393  0x00002e9f iadd  0x00000002 , 0x00000011 
+ 00014394  0x00002ea0 arg  0x00000002 , 0x0000003f 
+ 00014395  0x00002ea1 istore  0x00000001 , 0x00000011 
+ 00014396  0x00002ea2 rtn 
+ 00014397  0x00002ea4 jam  0x00000001 , 0x000047f0 
+ 00014398  0x00002ea5 rtn 
+ 00014399  0x00002ea7 copy  0x00000022 , 0x0000003f 
+ 00014400  0x00002ea8 store  0x00000004 , 0x0000478b 
+ 00014401  0x00002ea9 rtn 
+ 00014402  0x00002eab copy  0x00000022 , 0x0000003f 
+ 00014403  0x00002eac fetcht  0x00000004 , 0x0000478b 
+ 00014404  0x00002ead isub  0x00000002 , 0x0000003f 
+ 00014405  0x00002eae sub  0x0000003f , 0x000000c8 , 0x0000003e 
+ 00014406  0x00002eaf rtn 
+ 00014407  0x00002eb2 fetcht  0x00000001 , 0x00004786 
+ 00014408  0x00002eb3 branch  0x0000681d 
+ 00014409  0x00002eb6 fetch  0x00000008 , 0x00004752 
+ 00014410  0x00002eb7 store  0x00000008 , 0x0000479c 
+ 00014411  0x00002eb8 rtn 
+ 00014412  0x00002ebb fetch  0x00000001 , 0x000047b9 
+ 00014413  0x00002ebc store  0x00000001 , 0x000047af 
+ 00014414  0x00002ebd fetch  0x00000001 , 0x000047ba 
+ 00014415  0x00002ebe store  0x00000001 , 0x000047b0 
+ 00014416  0x00002ebf fetch  0x00000001 , 0x000047bb 
+ 00014417  0x00002ec0 store  0x00000001 , 0x000047b1 
+ 00014418  0x00002ec1 arg  0x0000000d , 0x00000039 
+ 00014419  0x00002ec2 arg  0x000047aa , 0x00000006 
+ 00014420  0x00002ec3 call  0x000036f0 
+ 00014421  0x00002ec4 store  0x00000001 , 0x000047b7 
+ 00014422  0x00002ec5 arg  0x000047a7 , 0x00000011 
+ 00014423  0x00002ec6 branch  0x00007e3d 
+ 00014424  0x00002ecd call  0x000065c2 
+ 00014425  0x00002ece jam  0x0000007a , 0x000046f6 
+ 00014426  0x00002ecf call  0x0000386d 
+ 00014427  0x00002ed0 call  0x00003867 
+ 00014428  0x00002ed1 setarg  0x00003860 
+ 00014429  0x00002ed2 store  0x00000002 , 0x000041fd 
+ 00014430  0x00002ed3 arg  0x00000000 , 0x00000011 
+ 00014431  0x00002ed4 branch  0x000069a6 
+ 00014432  0x00002ed7 fetch  0x00000002 , 0x000046a1 
+ 00014433  0x00002ed8 rtn  0x00000034 
+ 00014434  0x00002ed9 increase  0xffffffff , 0x0000003f 
+ 00014435  0x00002eda store  0x00000002 , 0x000046a1 
+ 00014436  0x00002edb rtnne  0x00000000 
+ 00014437  0x00002edc jam  0x00000000 , 0x000046a0 
+ 00014438  0x00002edd rtn 
+ 00014439  0x00002ee0 bpatch  0x000000d6 , 0x0000401a 
+ 00014440  0x00002ee1 fetch  0x00000001 , 0x000046a4 
+ 00014441  0x00002ee2 sub  0x0000003f , 0x00000028 , 0x0000003e 
+ 00014442  0x00002ee3 rtn  0x00000002 
+ 00014443  0x00002ee4 jam  0x00000000 , 0x000046a4 
+ 00014444  0x00002ee5 rtn 
+ 00014445  0x00002ee8 arg  0x000046a4 , 0x00000011 
+ 00014446  0x00002ee9 arg  0x00000000 , 0x00000012 
+ 00014447  0x00002eea arg  0x00000051 , 0x00000002 
+ 00014448  0x00002eeb branch  0x000065df 
+ 00014449  0x00002eef disable  0x00000028 
+ 00014450  0x00002ef0 fetch  0x00000001 , 0x000046a3 
+ 00014451  0x00002ef1 copy  0x0000003f , 0x00000039 
+ 00014452  0x00002ef3 arg  0x000046a5 , 0x00000011 
+ 00014453  0x00002ef4 copy  0x00000013 , 0x00000012 
+ 00014454  0x00002ef6 bpatch  0x000000d7 , 0x0000401a 
+ 00014455  0x00002ef7 call  0x0000387c 
+ 00014456  0x00002ef8 branch  0x00007fe7 , 0x00000005 
+ 00014457  0x00002efa increase  0x00000004 , 0x00000011 
+ 00014458  0x00002efb loop  0x00003876 
+ 00014459  0x00002efc rtn 
+ 00014460  0x00002f00 bpatch  0x000000d8 , 0x0000401b 
+ 00014461  0x00002f01 ifetch  0x00000003 , 0x00000011 
+ 00014462  0x00002f02 ifetcht  0x00000003 , 0x00000012 
+ 00014463  0x00002f03 isub  0x00000002 , 0x0000003e 
+ 00014464  0x00002f04 rtn 
+ 00014465  0x00002f07 bpatch  0x000000d9 , 0x0000401b 
+ 00014466  0x00002f08 ifetch  0x00000003 , 0x00000011 
+ 00014467  0x00002f09 ifetcht  0x00000003 , 0x00000012 
+ 00014468  0x00002f0a isub  0x00000002 , 0x0000003e 
+ 00014469  0x00002f0b nrtn  0x00000005 
+ 00014470  0x00002f0c ifetch  0x00000001 , 0x00000006 
+ 00014471  0x00002f0d sub  0x0000003f , 0x00000000 , 0x0000003e 
+ 00014472  0x00002f0e rtn  0x00000005 
+ 00014473  0x00002f0f add  0x00000011 , 0x00000003 , 0x00000006 
+ 00014474  0x00002f10 ifetcht  0x00000001 , 0x00000006 
+ 00014475  0x00002f11 isub  0x00000002 , 0x0000003e 
+ 00014476  0x00002f12 rtn 
+ 00014477  0x00002f16 bpatch  0x000000da , 0x0000401b 
+ 00014478  0x00002f17 disable  0x00000028 
+ 00014479  0x00002f18 fetch  0x00000001 , 0x000046a3 
+ 00014480  0x00002f19 copy  0x0000003f , 0x00000039 
+ 00014481  0x00002f1b arg  0x000046a5 , 0x00000011 
+ 00014482  0x00002f1c copy  0x00000013 , 0x00000012 
+ 00014483  0x00002f1e call  0x00003881 
+ 00014484  0x00002f1f branch  0x00007fe7 , 0x00000005 
+ 00014485  0x00002f20 increase  0x00000004 , 0x00000011 
+ 00014486  0x00002f21 loop  0x00003893 
+ 00014487  0x00002f22 rtn 
+ 00014488  0x00002f26 fetch  0x00000001 , 0x00000004 
+ 00014489  0x00002f27 increase  0x00000001 , 0x0000003f 
+ 00014490  0x00002f28 store  0x00000001 , 0x00000004 
+ 00014491  0x00002f29 arg  0x000002e5 , 0x00000013 
+ 00014492  0x00002f2c ifetch  0x00000002 , 0x00000013 
+ 00014493  0x00002f2d arg  0x000055aa , 0x00000002 
+ 00014494  0x00002f2e isub  0x00000002 , 0x0000003e 
+ 00014495  0x00002f2f nrtn  0x00000005 
+ 00014496  0x00002f30 copy  0x00000006 , 0x00000013 
+ 00014497  0x00002f31 ifetcht  0x00000003 , 0x00000013 
+ 00014498  0x00002f32 setarg  0x00ffffff 
+ 00014499  0x00002f33 isub  0x00000002 , 0x0000003e 
+ 00014500  0x00002f34 branch  0x000038a8 , 0x00000005 
+ 00014501  0x00002f35 call  0x0000388d 
+ 00014502  0x00002f36 branch  0x000038a8 , 0x00000028 
+ 00014503  0x00002f37 rtn 
+ 00014504  0x00002f3a bpatch  0x000000db , 0x0000401b 
+ 00014505  0x00002f3b increase  0x00000004 , 0x00000013 
+ 00014506  0x00002f3c ifetch  0x00000001 , 0x00000013 
+ 00014507  0x00002f3d fetcht  0x00000001 , 0x000046f6 
+ 00014508  0x00002f3e isub  0x00000002 , 0x0000003e 
+ 00014509  0x00002f3f rtn  0x00000005 
+ 00014510  0x00002f40 store  0x00000001 , 0x000046f6 
+ 00014511  0x00002f41 fetch  0x00000001 , 0x00000003 
+ 00014512  0x00002f42 increase  0x00000001 , 0x0000003f 
+ 00014513  0x00002f43 store  0x00000001 , 0x00000003 
+ 00014514  0x00002f45 increase  0x00000001 , 0x00000013 
+ 00014515  0x00002f46 ifetch  0x00000001 , 0x00000013 
+ 00014516  0x00002f47 store  0x00000001 , 0x000046f5 
+ 00014517  0x00002f48 copy  0x0000003f , 0x00000039 
+ 00014518  0x00002f49 rtn  0x00000034 
+ 00014519  0x00002f4b ifetch  0x00000001 , 0x00000006 
+ 00014520  0x00002f4c beq  0x00000000 , 0x000038c2 
+ 00014521  0x00002f4d beq  0x00000001 , 0x000038cf 
+ 00014522  0x00002f4e beq  0x00000002 , 0x000038d4 
+ 00014523  0x00002f4f beq  0x00000003 , 0x000038d9 
+ 00014524  0x00002f50 beq  0x00000004 , 0x000038de 
+ 00014525  0x00002f51 beq  0x00000005 , 0x000038e3 
+ 00014526  0x00002f52 beq  0x00000006 , 0x000038e8 
+ 00014527  0x00002f53 beq  0x000000ff , 0x000038ea 
+ 00014528  0x00002f54 loop  0x000038b7 
+ 00014529  0x00002f55 rtn 
+ 00014530  0x00002f58 copy  0x00000006 , 0x00000013 
+ 00014531  0x00002f59 fetch  0x00000001 , 0x0000469a 
+ 00014532  0x00002f5a store  0x00000001 , 0x00000a9a 
+ 00014533  0x00002f5b arg  0x00000000 , 0x00000002 
+ 00014534  0x00002f5d storet  0x00000001 , 0x00000a9b 
+ 00014535  0x00002f5e setarg  0x00002710 
+ 00014536  0x00002f5f store  0x00000003 , 0x00000a9c 
+ 00014537  0x00002f60 ifetch  0x00000001 , 0x00000013 
+ 00014538  0x00002f61 store  0x00000001 , 0x00000a9f 
+ 00014539  0x00002f62 call  0x000069ae 
+ 00014540  0x00002f63 and  0x00000013 , 0x00000001 , 0x00000006 
+ 00014541  0x00002f64 loop  0x000038b7 
+ 00014542  0x00002f65 rtn 
+ 00014543  0x00002f67 copy  0x00000013 , 0x00000006 
+ 00014544  0x00002f68 fetch  0x00000001 , 0x0000469b 
+ 00014545  0x00002f69 store  0x00000001 , 0x00000a9a 
+ 00014546  0x00002f6a arg  0x00000001 , 0x00000002 
+ 00014547  0x00002f6b branch  0x000038c6 
+ 00014548  0x00002f6d copy  0x00000013 , 0x00000006 
+ 00014549  0x00002f6e fetch  0x00000001 , 0x0000469c 
+ 00014550  0x00002f6f store  0x00000001 , 0x00000a9a 
+ 00014551  0x00002f70 arg  0x00000002 , 0x00000002 
+ 00014552  0x00002f71 branch  0x000038c6 
+ 00014553  0x00002f73 copy  0x00000013 , 0x00000006 
+ 00014554  0x00002f74 fetch  0x00000001 , 0x0000469d 
+ 00014555  0x00002f75 store  0x00000001 , 0x00000a9a 
+ 00014556  0x00002f76 arg  0x00000003 , 0x00000002 
+ 00014557  0x00002f77 branch  0x000038c6 
+ 00014558  0x00002f79 copy  0x00000013 , 0x00000006 
+ 00014559  0x00002f7a fetch  0x00000001 , 0x0000469e 
+ 00014560  0x00002f7b store  0x00000001 , 0x00000a9a 
+ 00014561  0x00002f7c arg  0x00000004 , 0x00000002 
+ 00014562  0x00002f7d branch  0x000038c6 
+ 00014563  0x00002f7f copy  0x00000013 , 0x00000006 
+ 00014564  0x00002f80 fetch  0x00000001 , 0x0000469f 
+ 00014565  0x00002f81 store  0x00000001 , 0x00000a9a 
+ 00014566  0x00002f82 arg  0x00000005 , 0x00000002 
+ 00014567  0x00002f83 branch  0x000038c6 
+ 00014568  0x00002f86 ifetch  0x00000001 , 0x00000006 
+ 00014569  0x00002f87 rtn 
+ 00014570  0x00002f8a copy  0x00000006 , 0x00000013 
+ 00014571  0x00002f8b fetch  0x00000001 , 0x000046a0 
+ 00014572  0x00002f8c bne  0x00000001 , 0x000038ee 
+ 00014573  0x00002f8d call  0x000038f0 
+ 00014574  0x00002f8f and  0x00000013 , 0x00000004 , 0x00000006 
+ 00014575  0x00002f90 rtn 
+ 00014576  0x00002f92 bpatch  0x000000dc , 0x0000401b 
+ 00014577  0x00002f93 call  0x00003871 
+ 00014578  0x00002f94 branch  0x000038fe , 0x00000028 
+ 00014579  0x00002f95 fetch  0x00000001 , 0x000046a4 
+ 00014580  0x00002f96 copy  0x0000003f , 0x00000002 
+ 00014581  0x00002f97 increase  0x00000001 , 0x0000003f 
+ 00014582  0x00002f98 store  0x00000001 , 0x000046a4 
+ 00014583  0x00002f99 call  0x00003867 
+ 00014584  0x00002f9a lshift2  0x00000002 , 0x00000002 
+ 00014585  0x00002f9b setarg  0x000046a5 
+ 00014586  0x00002f9c iadd  0x00000002 , 0x00000005 
+ 00014587  0x00002f9d ifetch  0x00000004 , 0x00000013 
+ 00014588  0x00002f9e istore  0x00000004 , 0x00000005 
+ 00014589  0x00002f9f branch  0x00003903 
+ 00014590  0x00002fa1 add  0x00000013 , 0x00000003 , 0x00000006 
+ 00014591  0x00002fa2 ifetch  0x00000001 , 0x00000006 
+ 00014592  0x00002fa3 rtn  0x00000034 
+ 00014593  0x00002fa4 ifetch  0x00000004 , 0x00000013 
+ 00014594  0x00002fa5 istore  0x00000004 , 0x00000011 
+ 00014595  0x00002fa7 arg  0x000046a4 , 0x00000011 
+ 00014596  0x00002fa8 arg  0x00000000 , 0x00000012 
+ 00014597  0x00002fa9 arg  0x00000051 , 0x00000002 
+ 00014598  0x00002faa branch  0x00006606 
+ 00014599  0x00002fb2 fetcht  0x00000001 , 0x0000469a 
+ 00014600  0x00002fb3 call  0x00006825 
+ 00014601  0x00002fb4 rtn 
+ 00014602  0x00002fba fetcht  0x00000001 , 0x0000469a 
+ 00014603  0x00002fbb call  0x00006829 
+ 00014604  0x00002fbe fetcht  0x00000001 , 0x0000469a 
+ 00014605  0x00002fbf call  0x00006825 
+ 00014606  0x00002fc2 call  0x0000391d 
+ 00014607  0x00002fc4 fetch  0x00000001 , 0x000046a7 
+ 00014608  0x00002fc5 nrtn  0x00000034 
+ 00014609  0x00002fc7 call  0x00002c29 
+ 00014610  0x00002fc8 hfetch  0x00000004 , 0x00008138 
+ 00014611  0x00002fc9 set0  0x0000000f , 0x0000003f 
+ 00014612  0x00002fca hstore  0x00000004 , 0x0000804c 
+ 00014613  0x00002fcb call  0x00002c21 
+ 00014614  0x00002fcc arg  0xffffffff , 0x00000002 
+ 00014615  0x00002fcd branch  0x00002b2a 
+ 00014616  0x00002fd0 fetch  0x00000001 , 0x000046a7 
+ 00014617  0x00002fd1 branch  0x000056f9 , 0x00000034 
+ 00014618  0x00002fd2 increase  0xffffffff , 0x0000003f 
+ 00014619  0x00002fd3 store  0x00000001 , 0x000046a7 
+ 00014620  0x00002fd4 branch  0x000056f9 
+ 00014621  0x00002fd7 mul32  0x0000003f , 0x00000014 , 0x0000003f 
+ 00014622  0x00002fd8 arg  0x000046a8 , 0x00000006 
+ 00014623  0x00002fd9 iadd  0x00000006 , 0x00000006 
+ 00014624  0x00002fda ifetch  0x00000001 , 0x00000006 
+ 00014625  0x00002fdb rtn  0x00000034 
+ 00014626  0x00002fdc copy  0x0000003f , 0x00000011 
+ 00014627  0x00002fdd copy  0x00000011 , 0x00000039 
+ 00014628  0x00002fde arg  0x00004372 , 0x00000005 
+ 00014629  0x00002fdf call  0x00007f01 
+ 00014630  0x00002fe0 copy  0x00000011 , 0x0000003f 
+ 00014631  0x00002fe1 increase  0x00000002 , 0x0000003f 
+ 00014632  0x00002fe2 store  0x00000001 , 0x0000436f 
+ 00014633  0x00002fe3 rtn 
+ 00014634  0x00002fec rtn  0x0000002b 
+ 00014635  0x00002fed call  0x000057a3 
+ 00014636  0x00002fee call  0x000068a8 
+ 00014637  0x00002fef setarg  0x00003982 
+ 00014638  0x00002ff0 store  0x00000002 , 0x000041f3 
+ 00014639  0x00002ff1 setarg  0x0000396e 
+ 00014640  0x00002ff2 store  0x00000002 , 0x000041f1 
+ 00014641  0x00002ff3 setarg  0x00003986 
+ 00014642  0x00002ff4 store  0x00000002 , 0x000041f5 
+ 00014643  0x00002ff5 setarg  0x0000396d 
+ 00014644  0x00002ff6 store  0x00000002 , 0x000041ef 
+ 00014645  0x00002ff7 setarg  0x00003969 
+ 00014646  0x00002ff8 store  0x00000002 , 0x000041e9 
+ 00014647  0x00002ff9 setarg  0x00003ab7 
+ 00014648  0x00002ffa store  0x00000002 , 0x000041fb 
+ 00014649  0x00002ffb setarg  0x00003c32 
+ 00014650  0x00002ffc store  0x00000002 , 0x0000456f 
+ 00014651  0x00002ffd setarg  0x00003cc2 
+ 00014652  0x00002ffe store  0x00000002 , 0x000041f9 
+ 00014653  0x00002fff setarg  0x00003cd7 
+ 00014654  0x00003000 store  0x00000002 , 0x000041fd 
+ 00014655  0x00003002 call  0x0000397f 
+ 00014656  0x00003003 bpatch  0x000000dd , 0x0000401b 
+ 00014657  0x00003004 call  0x00003945 
+ 00014658  0x00003005 call  0x00003964 
+ 00014659  0x00003006 call  0x00002c6f 
+ 00014660  0x00003007 branch  0x00003c48 
+ 00014661  0x0000300b fetch  0x00000004 , 0x000046aa 
+ 00014662  0x0000300c hstore  0x00000004 , 0x00008054 
+ 00014663  0x0000300e fetch  0x00000004 , 0x000046ae 
+ 00014664  0x0000300f hstore  0x00000004 , 0x0000805a 
+ 00014665  0x00003011 hfetch  0x00000001 , 0x00008081 
+ 00014666  0x00003012 or_into  0x00000004 , 0x0000003f 
+ 00014667  0x00003013 and_into  0x000000fc , 0x0000003f 
+ 00014668  0x00003014 hstore  0x00000001 , 0x00008081 
+ 00014669  0x00003015 jam  0x00000000 , 0x00008062 
+ 00014670  0x00003017 fetch  0x00000002 , 0x000046aa 
+ 00014671  0x00003018 hstore  0x00000002 , 0x00008058 
+ 00014672  0x00003019 fetch  0x00000002 , 0x000046ae 
+ 00014673  0x0000301a hstore  0x00000002 , 0x0000805e 
+ 00014674  0x0000301b hstore  0x00000002 , 0x00008060 
+ 00014675  0x0000301d hfetch  0x00000004 , 0x00008078 
+ 00014676  0x0000301e set1  0x00000007 , 0x0000003f 
+ 00014677  0x0000301f hstore  0x00000004 , 0x00008078 
+ 00014678  0x00003021 hfetch  0x00000002 , 0x00008050 
+ 00014679  0x00003022 set0  0x0000000f , 0x0000003f 
+ 00014680  0x00003023 hstore  0x00000002 , 0x00008050 
+ 00014681  0x00003024 call  0x000066ce 
+ 00014682  0x00003025 jam  0x00000000 , 0x00008043 
+ 00014683  0x00003026 jam  0x00000081 , 0x00008062 
+ 00014684  0x00003028 fetch  0x00000001 , 0x000046bf 
+ 00014685  0x00003029 isolate1  0x00000000 , 0x0000003f 
+ 00014686  0x0000302a hfetcht  0x00000001 , 0x00008062 
+ 00014687  0x0000302b setflag  0x00000001 , 0x00000004 , 0x00000002 
+ 00014688  0x0000302c hstoret  0x00000001 , 0x00008062 
+ 00014689  0x0000302d rtn 
+ 00014690  0x00003032 call  0x0000397f 
+ 00014691  0x00003033 branch  0x00003945 
+ 00014692  0x0000303b fetcht  0x00000001 , 0x0000469e 
+ 00014693  0x0000303c call  0x0000680e 
+ 00014694  0x0000303d call  0x000039e6 
+ 00014695  0x0000303f fetcht  0x00000001 , 0x0000469c 
+ 00014696  0x00003040 branch  0x000067fb 
+ 00014697  0x00003043 fetcht  0x00000001 , 0x0000469c 
+ 00014698  0x00003044 call  0x0000681d 
+ 00014699  0x00003045 nbranch  0x000033d2 , 0x00000001 
+ 00014700  0x00003046 branch  0x000033d0 
+ 00014701  0x0000304a rtn 
+ 00014702  0x0000304d call  0x00003970 
+ 00014703  0x0000304e branch  0x00003ce9 
+ 00014704  0x00003051 fetch  0x00000001 , 0x00004682 
+ 00014705  0x00003052 bbit0  0x00000004 , 0x0000397f 
+ 00014706  0x00003053 bpatch  0x000000de , 0x0000401b 
+ 00014707  0x00003054 setarg  0x00003eff 
+ 00014708  0x00003055 fetcht  0x00000004 , 0x000046c5 
+ 00014709  0x00003056 iadd  0x00000002 , 0x00000002 
+ 00014710  0x00003057 copy  0x00000022 , 0x0000003f 
+ 00014711  0x00003058 isub  0x00000002 , 0x0000003e 
+ 00014712  0x00003059 nrtn  0x00000002 
+ 00014713  0x0000305a fetch  0x00000002 , 0x00004682 
+ 00014714  0x0000305b bbit1  0x00000005 , 0x0000397f 
+ 00014715  0x0000305c fetch  0x00000001 , 0x000046bf 
+ 00014716  0x0000305d rtnbit1  0x00000006 
+ 00014717  0x0000305e call  0x00003cec 
+ 00014718  0x0000305f call  0x0000340e 
+ 00014719  0x00003061 copy  0x00000022 , 0x0000003f 
+ 00014720  0x00003062 store  0x00000004 , 0x000046c5 
+ 00014721  0x00003063 rtn 
+ 00014722  0x00003067 call  0x00003ce9 
+ 00014723  0x00003068 call  0x0000526e 
+ 00014724  0x00003069 nrtn  0x00000034 
+ 00014725  0x0000306a branch  0x000039eb 
+ 00014726  0x0000306e copy  0x00000013 , 0x0000003f 
+ 00014727  0x0000306f beq  0x00000001 , 0x000039d4 
+ 00014728  0x00003070 beq  0x00000002 , 0x000039a3 
+ 00014729  0x00003071 beq  0x00000004 , 0x000039d7 
+ 00014730  0x00003072 beq  0x00000005 , 0x000039c4 
+ 00014731  0x00003073 beq  0x00000008 , 0x000039aa 
+ 00014732  0x00003074 beq  0x00000009 , 0x000039b1 
+ 00014733  0x00003075 beq  0x0000000a , 0x000039c9 
+ 00014734  0x00003076 beq  0x0000000b , 0x000039b6 
+ 00014735  0x00003077 beq  0x0000000c , 0x000039c2 
+ 00014736  0x00003078 beq  0x00000013 , 0x000039d7 
+ 00014737  0x00003079 beq  0x00000014 , 0x000039cf 
+ 00014738  0x0000307a beq  0x00000015 , 0x000039c6 
+ 00014739  0x0000307b beq  0x00000021 , 0x000039ca 
+ 00014740  0x0000307c beq  0x00000023 , 0x000039cb 
+ 00014741  0x0000307d beq  0x00000024 , 0x000039ce 
+ 00014742  0x0000307e beq  0x00000030 , 0x00003c8a 
+ 00014743  0x0000307f beq  0x00000031 , 0x00003c8c 
+ 00014744  0x00003080 beq  0x00000032 , 0x00003c9a 
+ 00014745  0x00003081 beq  0x00000033 , 0x00003c98 
+ 00014746  0x00003082 beq  0x00000034 , 0x00003c84 
+ 00014747  0x00003083 beq  0x00000035 , 0x00003c73 
+ 00014748  0x00003084 beq  0x00000036 , 0x00003c82 
+ 00014749  0x00003085 beq  0x00000037 , 0x00003c8e 
+ 00014750  0x00003086 beq  0x00000038 , 0x00003c90 
+ 00014751  0x00003087 beq  0x0000003b , 0x00003ca1 
+ 00014752  0x00003088 beq  0x0000003d , 0x00003c6a 
+ 00014753  0x00003089 beq  0x00000041 , 0x000039d9 
+ 00014754  0x0000308a rtn 
+ 00014755  0x0000308e call  0x0000397f 
+ 00014756  0x0000308f fetch  0x00000001 , 0x00004665 
+ 00014757  0x00003090 ncall  0x00003c8e , 0x00000034 
+ 00014758  0x00003091 call  0x000039d7 
+ 00014759  0x00003092 fetch  0x00000002 , 0x00004682 
+ 00014760  0x00003093 rtnbit0  0x00000004 
+ 00014761  0x00003094 branch  0x000039b1 
+ 00014762  0x00003097 fetch  0x00000002 , 0x00004682 
+ 00014763  0x00003098 set1  0x00000004 , 0x0000003f 
+ 00014764  0x00003099 store  0x00000002 , 0x00004682 
+ 00014765  0x0000309a fetch  0x00000001 , 0x000046a7 
+ 00014766  0x0000309b store  0x00000001 , 0x00004172 
+ 00014767  0x0000309c call  0x000039e6 
+ 00014768  0x0000309d branch  0x00003c1d 
+ 00014769  0x000030a2 fetch  0x00000002 , 0x00004682 
+ 00014770  0x000030a3 rtnbit0  0x00000004 
+ 00014771  0x000030a4 set0  0x00000004 , 0x0000003f 
+ 00014772  0x000030a5 store  0x00000002 , 0x00004682 
+ 00014773  0x000030a6 branch  0x00003c21 
+ 00014774  0x000030ac call  0x0000397f 
+ 00014775  0x000030af fetch  0x00000002 , 0x00004042 
+ 00014776  0x000030b0 rshift  0x0000003f , 0x0000003f 
+ 00014777  0x000030b1 fetcht  0x00000002 , 0x000041e3 
+ 00014778  0x000030b2 isub  0x00000002 , 0x0000003e 
+ 00014779  0x000030b3 nbranch  0x000039bd , 0x00000005 
+ 00014780  0x000030b4 branch  0x00003416 
+ 00014781  0x000030b6 fetch  0x00000001 , 0x000046bf 
+ 00014782  0x000030b7 rtnbit1  0x00000005 
+ 00014783  0x000030b8 hfetch  0x00000002 , 0x00008112 
+ 00014784  0x000030b9 ncall  0x00003cf0 , 0x00000034 
+ 00014785  0x000030ba branch  0x0000340c 
+ 00014786  0x000030bd call  0x00003cee 
+ 00014787  0x000030be branch  0x00003418 
+ 00014788  0x000030c1 call  0x0000397f 
+ 00014789  0x000030c2 branch  0x000039dd 
+ 00014790  0x000030c5 call  0x00005816 
+ 00014791  0x000030c6 call  0x000039d7 
+ 00014792  0x000030c7 branch  0x00003c23 
+ 00014793  0x000030ca branch  0x000033dd 
+ 00014794  0x000030ce branch  0x00003cee 
+ 00014795  0x000030d2 fetch  0x00000001 , 0x000046bf 
+ 00014796  0x000030d3 bbit0  0x00000005 , 0x0000340e 
+ 00014797  0x000030d4 branch  0x00003cf2 
+ 00014798  0x000030d8 branch  0x00003cf2 
+ 00014799  0x000030dc call  0x000058ba 
+ 00014800  0x000030dd call  0x000039dd 
+ 00014801  0x000030de fetch  0x00000001 , 0x000046a8 
+ 00014802  0x000030df store  0x00000001 , 0x00004172 
+ 00014803  0x000030e0 branch  0x00003c1f 
+ 00014804  0x000030e4 jam  0x00000000 , 0x00004661 
+ 00014805  0x000030e5 call  0x00003cee 
+ 00014806  0x000030e6 branch  0x00003cf2 
+ 00014807  0x000030eb call  0x00003a52 
+ 00014808  0x000030ec branch  0x000039db 
+ 00014809  0x000030f0 call  0x00005cc9 
+ 00014810  0x000030f1 branch  0x00005b02 
+ 00014811  0x000030f5 fetcht  0x00000001 , 0x0000469e 
+ 00014812  0x000030f6 branch  0x00006829 
+ 00014813  0x000030f9 call  0x000039df 
+ 00014814  0x000030fa branch  0x000039e6 
+ 00014815  0x000030fd fetch  0x00000001 , 0x000046a1 
+ 00014816  0x000030fe isolate1  0x00000000 , 0x0000003f 
+ 00014817  0x000030ff call  0x000033f0 , 0x00000001 
+ 00014818  0x00003100 fetch  0x00000001 , 0x000046a1 
+ 00014819  0x00003101 isolate1  0x00000001 , 0x0000003f 
+ 00014820  0x00003102 call  0x000033f8 , 0x00000001 
+ 00014821  0x00003103 rtn 
+ 00014822  0x00003105 fetcht  0x00000001 , 0x0000469e 
+ 00014823  0x00003106 branch  0x00006825 
+ 00014824  0x00003109 fetch  0x00000001 , 0x0000456b 
+ 00014825  0x0000310a rtneq  0x00000000 
+ 00014826  0x0000310b branch  0x00006c28 
+ 00014827  0x0000310e hfetch  0x00000001 , 0x0000810c 
+ 00014828  0x0000310f bbit1  0x00000003 , 0x000039e8 
+ 00014829  0x00003110 call  0x000066cb 
+ 00014830  0x00003111 ifetch  0x00000001 , 0x00000003 
+ 00014831  0x00003112 bne  0x00000001 , 0x00003a01 
+ 00014832  0x00003113 hfetch  0x00000002 , 0x00008112 
+ 00014833  0x00003114 sub  0x0000003f , 0x00000002 , 0x0000003e 
+ 00014834  0x00003115 rtn  0x00000002 
+ 00014835  0x00003116 ifetch  0x00000001 , 0x00000003 
+ 00014836  0x00003117 store  0x00000001 , 0x00000b03 
+ 00014837  0x00003118 ifetcht  0x00000001 , 0x00000003 
+ 00014838  0x00003119 copy  0x00000003 , 0x00000011 
+ 00014839  0x0000311a storet  0x00000001 , 0x00000b04 
+ 00014840  0x0000311b add  0x00000002 , 0x00000003 , 0x00000002 
+ 00014841  0x0000311c hfetch  0x00000002 , 0x00008112 
+ 00014842  0x0000311d isub  0x00000002 , 0x00000002 
+ 00014843  0x0000311e nrtn  0x00000002 
+ 00014844  0x0000311f jam  0x00000001 , 0x00000b05 
+ 00014845  0x00003120 call  0x00003a17 
+ 00014846  0x00003121 fetch  0x00000001 , 0x00000b05 
+ 00014847  0x00003122 rtneq  0x00000000 
+ 00014848  0x00003123 branch  0x00003a12 
+ 00014849  0x00003126 call  0x00007ec1 
+ 00014850  0x00003127 call  0x00003c79 
+ 00014851  0x00003128 branch  0x00003a04 
+ 00014852  0x0000312c bpatch  0x000000df , 0x0000401b 
+ 00014853  0x0000312d hfetch  0x00000002 , 0x00008112 
+ 00014854  0x0000312e rtn  0x00000034 
+ 00014855  0x0000312f call  0x000066cb 
+ 00014856  0x00003130 ifetch  0x00000001 , 0x00000003 
+ 00014857  0x00003131 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00014858  0x00003132 ncall  0x00003a16 , 0x00000005 
+ 00014859  0x00003133 nbranch  0x00003a04 , 0x00000005 
+ 00014860  0x00003134 ifetch  0x00000001 , 0x00000003 
+ 00014861  0x00003135 rtneq  0x00000005 
+ 00014862  0x00003136 rtneq  0x00000029 
+ 00014863  0x00003137 increase  0xffffffff , 0x00000003 
+ 00014864  0x00003138 call  0x00003a16 
+ 00014865  0x00003139 branch  0x00003a04 
+ 00014866  0x0000313c call  0x000066cb 
+ 00014867  0x0000313d increase  0x00000002 , 0x00000003 
+ 00014868  0x0000313e ifetch  0x00000001 , 0x00000003 
+ 00014869  0x0000313f iadd  0x00000003 , 0x00000003 
+ 00014870  0x00003141 branch  0x000066c8 
+ 00014871  0x00003145 bpatch  0x000000e0 , 0x0000401c 
+ 00014872  0x00003146 fetch  0x00000001 , 0x00000b03 
+ 00014873  0x00003147 beq  0x00000000 , 0x00003a3f 
+ 00014874  0x00003148 beq  0x00000001 , 0x00003a44 
+ 00014875  0x00003149 beq  0x00000002 , 0x00003a49 
+ 00014876  0x0000314a beq  0x00000003 , 0x00003a5f 
+ 00014877  0x0000314b beq  0x00000004 , 0x00003a6b 
+ 00014878  0x0000314c beq  0x00000005 , 0x00003a75 
+ 00014879  0x0000314d beq  0x00000009 , 0x00003a9a 
+ 00014880  0x0000314e beq  0x0000000b , 0x00003ad7 
+ 00014881  0x0000314f beq  0x0000000c , 0x00003ad8 
+ 00014882  0x00003150 beq  0x0000000d , 0x00003aec 
+ 00014883  0x00003151 beq  0x0000000e , 0x00003af4 
+ 00014884  0x00003152 beq  0x0000000f , 0x00003afa 
+ 00014885  0x00003153 beq  0x00000010 , 0x00003b06 
+ 00014886  0x00003154 beq  0x00000011 , 0x00003b0e 
+ 00014887  0x00003155 beq  0x00000012 , 0x00003b12 
+ 00014888  0x00003156 beq  0x00000026 , 0x00003b16 
+ 00014889  0x00003157 beq  0x00000028 , 0x00003b1d 
+ 00014890  0x00003158 beq  0x00000029 , 0x00003b2d 
+ 00014891  0x00003159 beq  0x0000002a , 0x00003b36 
+ 00014892  0x0000315a beq  0x0000002b , 0x00003b69 
+ 00014893  0x0000315b beq  0x0000002c , 0x00003b6f 
+ 00014894  0x0000315c beq  0x00000030 , 0x00003b76 
+ 00014895  0x0000315d beq  0x00000031 , 0x00003b7c 
+ 00014896  0x0000315e beq  0x00000032 , 0x00003b90 
+ 00014897  0x0000315f beq  0x00000033 , 0x00003b98 
+ 00014898  0x00003160 beq  0x00000034 , 0x00003bbb 
+ 00014899  0x00003161 beq  0x00000035 , 0x00003bc4 
+ 00014900  0x00003162 beq  0x00000036 , 0x00003bcd 
+ 00014901  0x00003163 beq  0x00000037 , 0x00003bd7 
+ 00014902  0x00003164 beq  0x00000038 , 0x00003bda 
+ 00014903  0x00003165 beq  0x00000040 , 0x00003be2 
+ 00014904  0x00003166 beq  0x00000042 , 0x00003bec 
+ 00014905  0x00003167 beq  0x00000048 , 0x00003bf1 
+ 00014906  0x00003168 beq  0x00000049 , 0x00003bfc 
+ 00014907  0x00003169 beq  0x00000051 , 0x00003c02 
+ 00014908  0x0000316a beq  0x00000061 , 0x00003c06 
+ 00014909  0x0000316b beq  0x000000ff , 0x00003c15 
+ 00014910  0x0000316c branch  0x00003c17 
+ 00014911  0x00003172 fetch  0x00000001 , 0x00000b04 
+ 00014912  0x00003173 bne  0x00000006 , 0x00003c17 
+ 00014913  0x00003174 ifetch  0x00000006 , 0x00000003 
+ 00014914  0x00003175 store  0x00000006 , 0x000040a0 
+ 00014915  0x00003176 branch  0x00003c1a 
+ 00014916  0x0000317a fetch  0x00000001 , 0x00000b04 
+ 00014917  0x0000317b bne  0x00000006 , 0x00003c17 
+ 00014918  0x0000317c ifetch  0x00000006 , 0x00000003 
+ 00014919  0x0000317d store  0x00000006 , 0x000044a0 
+ 00014920  0x0000317e branch  0x00003c1a 
+ 00014921  0x00003183 fetch  0x00000001 , 0x00000b04 
+ 00014922  0x00003184 bne  0x00000001 , 0x00003c17 
+ 00014923  0x00003185 copy  0x00000011 , 0x00000003 
+ 00014924  0x00003186 call  0x00003c1a 
+ 00014925  0x00003187 ifetcht  0x00000001 , 0x00000003 
+ 00014926  0x00003188 storet  0x00000001 , 0x000046a9 
+ 00014927  0x00003189 fetch  0x00000002 , 0x00004682 
+ 00014928  0x0000318a rtnbit1  0x00000009 
+ 00014929  0x0000318b rtnbit1  0x00000000 
+ 00014930  0x0000318d fetch  0x00000001 , 0x000046a1 
+ 00014931  0x0000318e isolate1  0x00000000 , 0x0000003f 
+ 00014932  0x0000318f nbranch  0x00003a58 , 0x00000001 
+ 00014933  0x00003190 fetcht  0x00000001 , 0x000046a9 
+ 00014934  0x00003191 and  0x00000002 , 0x00000003 , 0x0000003f 
+ 00014935  0x00003192 store  0x00000001 , 0x00004093 
+ 00014936  0x00003194 fetch  0x00000001 , 0x000046a1 
+ 00014937  0x00003195 isolate1  0x00000001 , 0x0000003f 
+ 00014938  0x00003196 nrtn  0x00000001 
+ 00014939  0x00003197 fetcht  0x00000001 , 0x000046a9 
+ 00014940  0x00003198 isolate1  0x00000002 , 0x00000002 
+ 00014941  0x00003199 branch  0x000033fa , 0x00000001 
+ 00014942  0x0000319a branch  0x000033f8 
+ 00014943  0x0000319f fetch  0x00000001 , 0x00000b04 
+ 00014944  0x000031a0 sub  0x0000003f , 0x00000043 , 0x0000003e 
+ 00014945  0x000031a1 nbranch  0x00003c17 , 0x00000002 
+ 00014946  0x000031a2 store  0x00000001 , 0x00004515 
+ 00014947  0x000031a3 arg  0x00000008 , 0x00000039 
+ 00014948  0x000031a4 call  0x00007ec6 
+ 00014949  0x000031a5 fetch  0x00000001 , 0x00000b04 
+ 00014950  0x000031a6 copy  0x0000003f , 0x00000039 
+ 00014951  0x000031a7 copy  0x00000011 , 0x00000003 
+ 00014952  0x000031a8 arg  0x00004516 , 0x00000005 
+ 00014953  0x000031a9 call  0x000066ea 
+ 00014954  0x000031aa branch  0x00003c1a 
+ 00014955  0x000031af fetch  0x00000001 , 0x00000b04 
+ 00014956  0x000031b0 sub  0x0000003f , 0x0000001d , 0x0000003e 
+ 00014957  0x000031b1 nbranch  0x00003c17 , 0x00000002 
+ 00014958  0x000031b2 store  0x00000001 , 0x000043af 
+ 00014959  0x000031b3 copy  0x0000003f , 0x00000039 
+ 00014960  0x000031b4 copy  0x00000011 , 0x00000003 
+ 00014961  0x000031b5 arg  0x000043b0 , 0x00000005 
+ 00014962  0x000031b6 call  0x000066ea 
+ 00014963  0x000031b7 call  0x000057a3 
+ 00014964  0x000031b8 branch  0x00003c1a 
+ 00014965  0x000031bd fetch  0x00000001 , 0x00004682 
+ 00014966  0x000031be bbit0  0x00000004 , 0x00003c17 
+ 00014967  0x000031bf call  0x000033ba 
+ 00014968  0x000031c0 branch  0x00003a86 , 0x00000001 
+ 00014969  0x000031c1 jam  0x00000000 , 0x00000b05 
+ 00014970  0x000031c3 call  0x0000397f 
+ 00014971  0x000031c4 fetch  0x00000001 , 0x00004568 
+ 00014972  0x000031c5 rtn  0x00000034 
+ 00014973  0x000031c6 fetch  0x00000002 , 0x00004573 
+ 00014974  0x000031c7 bne  0x00000000 , 0x00003a84 
+ 00014975  0x000031c8 fetch  0x00000001 , 0x00000b04 
+ 00014976  0x000031c9 store  0x00000002 , 0x00004573 
+ 00014977  0x000031cb copy  0x00000011 , 0x00000003 
+ 00014978  0x000031ce copy  0x00000003 , 0x0000003f 
+ 00014979  0x000031cf store  0x00000002 , 0x00004571 
+ 00014980  0x000031d1 call  0x00003a88 
+ 00014981  0x000031d2 branch  0x00006c4d 
+ 00014982  0x000031d5 jam  0x00000000 , 0x00000b05 
+ 00014983  0x000031d6 branch  0x00003cd1 
+ 00014984  0x000031d9 call  0x00003a8e 
+ 00014985  0x000031da fetch  0x00000002 , 0x00004573 
+ 00014986  0x000031db fetcht  0x00000002 , 0x0000469f 
+ 00014987  0x000031dc isub  0x00000002 , 0x0000003f 
+ 00014988  0x000031dd store  0x00000002 , 0x00004573 
+ 00014989  0x000031de rtn 
+ 00014990  0x000031e1 fetch  0x00000002 , 0x00004573 
+ 00014991  0x000031e2 arg  0x0000006e , 0x00000002 
+ 00014992  0x000031e3 call  0x00007fdd 
+ 00014993  0x000031e4 fetcht  0x00000002 , 0x0000456c 
+ 00014994  0x000031e5 call  0x00007fdd 
+ 00014995  0x000031e6 fetcht  0x00000002 , 0x0000455e 
+ 00014996  0x000031e7 call  0x00007fdd 
+ 00014997  0x000031e8 store  0x00000002 , 0x0000469f 
+ 00014998  0x000031e9 rtn 
+ 00014999  0x000031ec jam  0x00000001 , 0x00000b05 
+ 00015000  0x000031ed jam  0x00000005 , 0x00000b03 
+ 00015001  0x000031ee branch  0x00003c1a 
+ 00015002  0x000031f3 fetch  0x00000002 , 0x00004682 
+ 00015003  0x000031f4 bbit0  0x00000009 , 0x00003c17 
+ 00015004  0x000031f5 call  0x00003ad4 
+ 00015005  0x000031f6 branch  0x00003c17 , 0x00000028 
+ 00015006  0x000031f7 jam  0x00000000 , 0x00000b05 
+ 00015007  0x000031f8 fetch  0x00000001 , 0x000046bf 
+ 00015008  0x000031f9 bbit1  0x00000004 , 0x00003ab4 
+ 00015009  0x000031fa fetch  0x00000001 , 0x000046c0 
+ 00015010  0x000031fb nrtn  0x00000034 
+ 00015011  0x000031fc jam  0x00000001 , 0x00000b05 
+ 00015012  0x000031fd ifetch  0x00000002 , 0x00000003 
+ 00015013  0x000031fe store  0x00000002 , 0x000046c1 
+ 00015014  0x000031ff copy  0x00000003 , 0x0000003f 
+ 00015015  0x00003200 store  0x00000002 , 0x000046c3 
+ 00015016  0x00003201 fetch  0x00000001 , 0x00000b04 
+ 00015017  0x00003202 pincrease  0xfffffffe 
+ 00015018  0x00003203 nbranch  0x00003c17 , 0x00000002 
+ 00015019  0x00003204 branch  0x00003c17 , 0x00000005 
+ 00015020  0x00003205 store  0x00000001 , 0x000046c0 
+ 00015021  0x00003206 jam  0x00000000 , 0x00000b05 
+ 00015022  0x00003207 call  0x00005814 
+ 00015023  0x00003208 call  0x00003ab7 
+ 00015024  0x00003209 call  0x00003ab7 
+ 00015025  0x0000320a call  0x00003ab7 
+ 00015026  0x0000320b fetch  0x00000001 , 0x000046bf 
+ 00015027  0x0000320c rtnbit0  0x00000004 
+ 00015028  0x0000320e jam  0x00000001 , 0x00000b05 
+ 00015029  0x0000320f call  0x00003cf6 
+ 00015030  0x00003210 branch  0x00003c1a 
+ 00015031  0x00003213 fetch  0x00000001 , 0x000046c0 
+ 00015032  0x00003214 rtn  0x00000034 
+ 00015033  0x00003215 call  0x00005892 
+ 00015034  0x00003216 nrtn  0x00000034 
+ 00015035  0x00003217 call  0x00003acf 
+ 00015036  0x00003218 bpatch  0x000000e1 , 0x0000401c 
+ 00015037  0x00003219 add  0x00000002 , 0xfffffffd , 0x0000003f 
+ 00015038  0x0000321a fetcht  0x00000001 , 0x000046c0 
+ 00015039  0x0000321b call  0x00007fdd 
+ 00015040  0x0000321c copy  0x0000003f , 0x00000011 
+ 00015041  0x0000321d copy  0x00000002 , 0x0000003f 
+ 00015042  0x0000321e isub  0x00000011 , 0x0000003f 
+ 00015043  0x0000321f store  0x00000001 , 0x000046c0 
+ 00015044  0x00003220 fetcht  0x00000002 , 0x000046c1 
+ 00015045  0x00003221 call  0x00005a64 
+ 00015046  0x00003222 fetch  0x00000002 , 0x000046c3 
+ 00015047  0x00003223 copy  0x0000003f , 0x00000003 
+ 00015048  0x00003224 copy  0x00000011 , 0x00000039 
+ 00015049  0x00003225 call  0x000066ea 
+ 00015050  0x00003226 copy  0x00000003 , 0x0000003f 
+ 00015051  0x00003227 store  0x00000002 , 0x000046c3 
+ 00015052  0x00003228 fetch  0x00000001 , 0x000046c0 
+ 00015053  0x00003229 nrtn  0x00000034 
+ 00015054  0x0000322a branch  0x00003cf4 
+ 00015055  0x0000322f arg  0x00000017 , 0x00000002 
+ 00015056  0x00003230 fetch  0x00000001 , 0x000046bf 
+ 00015057  0x00003231 rtnbit1  0x00000001 
+ 00015058  0x00003232 fetcht  0x00000002 , 0x000044a8 
+ 00015059  0x00003233 rtn 
+ 00015060  0x00003236 fetch  0x00000001 , 0x000046bf 
+ 00015061  0x00003237 bbit1  0x00000002 , 0x00005a42 
+ 00015062  0x00003238 branch  0x00007fe9 
+ 00015063  0x0000323d branch  0x00003c4c 
+ 00015064  0x00003242 copy  0x00000011 , 0x00000003 
+ 00015065  0x00003243 ifetch  0x00000001 , 0x00000003 
+ 00015066  0x00003244 beq  0x00000000 , 0x00003adf 
+ 00015067  0x00003245 beq  0x00000001 , 0x00003ae2 
+ 00015068  0x00003246 beq  0x00000002 , 0x00003ae8 
+ 00015069  0x00003247 beq  0x00000003 , 0x00003aea 
+ 00015070  0x00003248 branch  0x00003c17 
+ 00015071  0x0000324a call  0x0000612b 
+ 00015072  0x0000324b jam  0x00000000 , 0x0000465a 
+ 00015073  0x0000324c branch  0x00003c1a 
+ 00015074  0x0000324e setarg  0x00040003 
+ 00015075  0x00003250 store  0x00000003 , 0x0000465b 
+ 00015076  0x00003251 store  0x00000001 , 0x00004662 
+ 00015077  0x00003252 call  0x00006124 
+ 00015078  0x00003253 jam  0x00000001 , 0x0000465a 
+ 00015079  0x00003254 branch  0x00003c1a 
+ 00015080  0x00003256 setarg  0x00040002 
+ 00015081  0x00003257 branch  0x00003ae3 
+ 00015082  0x0000325a setarg  0x00040001 
+ 00015083  0x0000325b branch  0x00003ae3 
+ 00015084  0x0000325f fetch  0x00000001 , 0x00000b04 
+ 00015085  0x00003260 sub  0x0000003f , 0x00000010 , 0x0000003e 
+ 00015086  0x00003261 nbranch  0x00003c17 , 0x00000002 
+ 00015087  0x00003262 store  0x00000001 , 0x00004689 
+ 00015088  0x00003263 copy  0x0000003f , 0x00000039 
+ 00015089  0x00003264 arg  0x0000468a , 0x00000005 
+ 00015090  0x00003265 call  0x000066fd 
+ 00015091  0x00003266 branch  0x00003c1a 
+ 00015092  0x0000326b copy  0x00000011 , 0x00000003 
+ 00015093  0x0000326c ifetch  0x00000001 , 0x00000003 
+ 00015094  0x0000326d hfetcht  0x00000001 , 0x00008062 
+ 00015095  0x0000326e nsetflag  0x00000034 , 0x00000004 , 0x00000002 
+ 00015096  0x0000326f hstoret  0x00000001 , 0x00008062 
+ 00015097  0x00003270 branch  0x00003c1a 
+ 00015098  0x00003275 fetch  0x00000001 , 0x00000b04 
+ 00015099  0x00003276 copy  0x0000003f , 0x00000039 
+ 00015100  0x00003277 copy  0x00000011 , 0x00000003 
+ 00015101  0x00003278 call  0x00007f58 
+ 00015102  0x00003279 setarg  0x016e3600 
+ 00015103  0x0000327a idiv  0x00000002 
+ 00015104  0x0000327b call  0x00007f86 
+ 00015105  0x0000327c quotient  0x0000003f 
+ 00015106  0x0000327e store  0x00000002 , 0x00004243 
+ 00015107  0x0000327f call  0x00003c1a 
+ 00015108  0x00003280 call  0x00007f9e 
+ 00015109  0x00003281 branch  0x000066ce 
+ 00015110  0x00003286 arg  0x00000002 , 0x00000011 
+ 00015111  0x00003287 arg  0x0000469a , 0x00000012 
+ 00015112  0x00003288 arg  0x00000000 , 0x00000002 
+ 00015113  0x00003289 branch  0x00003c25 
+ 00015114  0x0000328b store  0x00000002 , 0x00000ac2 
+ 00015115  0x0000328c arg  0x00000ac2 , 0x00000012 
+ 00015116  0x0000328d arg  0x00000000 , 0x00000002 
+ 00015117  0x0000328e branch  0x00003c25 
+ 00015118  0x00003293 fetch  0x00000002 , 0x00004682 
+ 00015119  0x00003294 bbit0  0x00000000 , 0x00003c17 
+ 00015120  0x00003296 call  0x00003c1a 
+ 00015121  0x00003297 branch  0x000033e9 
+ 00015122  0x0000329c fetch  0x00000002 , 0x00004682 
+ 00015123  0x0000329d bbit0  0x00000009 , 0x00003c17 
+ 00015124  0x0000329f call  0x00003c1a 
+ 00015125  0x000032a0 branch  0x00003402 
+ 00015126  0x000032a7 fetch  0x00000001 , 0x00000b04 
+ 00015127  0x000032a8 copy  0x0000003f , 0x00000039 
+ 00015128  0x000032a9 copy  0x00000011 , 0x00000003 
+ 00015129  0x000032aa fetch  0x00000002 , 0x00004215 
+ 00015130  0x000032ab icopy  0x00000005 
+ 00015131  0x000032ac call  0x000066ea 
+ 00015132  0x000032ad branch  0x00003c1a 
+ 00015133  0x000032b2 fetch  0x00000001 , 0x00004682 
+ 00015134  0x000032b3 bbit0  0x00000000 , 0x00003c17 
+ 00015135  0x000032b4 ifetch  0x00000001 , 0x00000003 
+ 00015136  0x000032b5 fetcht  0x00000001 , 0x00004661 
+ 00015137  0x000032b6 setflag  0x00000034 , 0x00000000 , 0x00000002 
+ 00015138  0x000032b7 set1  0x00000007 , 0x00000002 
+ 00015139  0x000032b8 storet  0x00000001 , 0x00004661 
+ 00015140  0x000032ba call  0x00003c1a 
+ 00015141  0x000032bc fetch  0x00000001 , 0x00004661 
+ 00015142  0x000032bd bbit1  0x00000006 , 0x00003b2b 
+ 00015143  0x000032be rtn 
+ 00015144  0x000032c1 jam  0x00000000 , 0x00004661 
+ 00015145  0x000032c2 jam  0x00000021 , 0x00000a99 
+ 00015146  0x000032c3 branch  0x00007d8f 
+ 00015147  0x000032c7 bbit1  0x00000000 , 0x00005f95 
+ 00015148  0x000032c8 branch  0x00003b28 
+ 00015149  0x000032cd fetch  0x00000001 , 0x00004682 
+ 00015150  0x000032ce rtnbit0  0x00000004 
+ 00015151  0x000032cf fetch  0x00000001 , 0x0000456b 
+ 00015152  0x000032d0 rtneq  0x00000000 
+ 00015153  0x000032d1 ifetch  0x00000001 , 0x00000003 
+ 00015154  0x000032d2 fetcht  0x00000001 , 0x00004569 
+ 00015155  0x000032d3 iadd  0x00000002 , 0x00000002 
+ 00015156  0x000032d4 storet  0x00000001 , 0x00004569 
+ 00015157  0x000032d5 rtn 
+ 00015158  0x000032da arg  0x00000040 , 0x00000039 
+ 00015159  0x000032db arg  0x0000436f , 0x00000005 
+ 00015160  0x000032dc call  0x00007ed4 
+ 00015161  0x000032dd setarg  0x00000000 
+ 00015162  0x000032de store  0x00000001 , 0x00000ab2 
+ 00015163  0x000032df copy  0x00000011 , 0x00000003 
+ 00015164  0x000032e1 copy  0x00000003 , 0x0000003f 
+ 00015165  0x000032e2 store  0x00000002 , 0x00000ab6 
+ 00015166  0x000032e3 call  0x00003b64 
+ 00015167  0x000032e5 fetch  0x00000001 , 0x00000ab2 
+ 00015168  0x000032e6 fetcht  0x00000001 , 0x00000aa2 
+ 00015169  0x000032e7 increase  0x00000001 , 0x00000002 
+ 00015170  0x000032e8 iadd  0x00000002 , 0x0000003f 
+ 00015171  0x000032e9 store  0x00000001 , 0x00000ab2 
+ 00015172  0x000032eb sub  0x0000003f , 0x0000001f , 0x0000003e 
+ 00015173  0x000032ec nbranch  0x00003b50 , 0x00000002 
+ 00015174  0x000032ee fetcht  0x00000001 , 0x0000436f 
+ 00015175  0x000032ef setarg  0x00004370 
+ 00015176  0x000032f0 iadd  0x00000002 , 0x0000003f 
+ 00015177  0x000032f1 store  0x00000002 , 0x00000abb 
+ 00015178  0x000032f2 fetcht  0x00000001 , 0x00000aa2 
+ 00015179  0x000032f3 increase  0x00000001 , 0x00000002 
+ 00015180  0x000032f4 fetch  0x00000001 , 0x0000436f 
+ 00015181  0x000032f5 iadd  0x00000002 , 0x0000003f 
+ 00015182  0x000032f6 store  0x00000001 , 0x0000436f 
+ 00015183  0x000032f7 branch  0x00003b59 
+ 00015184  0x000032f9 fetcht  0x00000001 , 0x0000438f 
+ 00015185  0x000032fa setarg  0x00004390 
+ 00015186  0x000032fb iadd  0x00000002 , 0x0000003f 
+ 00015187  0x000032fc store  0x00000002 , 0x00000abb 
+ 00015188  0x000032fd fetcht  0x00000001 , 0x00000aa2 
+ 00015189  0x000032fe increase  0x00000001 , 0x00000002 
+ 00015190  0x000032ff fetch  0x00000001 , 0x0000438f 
+ 00015191  0x00003300 iadd  0x00000002 , 0x0000003f 
+ 00015192  0x00003301 store  0x00000001 , 0x0000438f 
+ 00015193  0x00003303 fetch  0x00000002 , 0x00000abb 
+ 00015194  0x00003304 copy  0x0000003f , 0x00000005 
+ 00015195  0x00003305 fetch  0x00000002 , 0x00000ab6 
+ 00015196  0x00003306 copy  0x0000003f , 0x00000003 
+ 00015197  0x00003308 copy  0x00000002 , 0x00000039 
+ 00015198  0x00003309 call  0x000066ea 
+ 00015199  0x0000330b fetch  0x00000001 , 0x00000b04 
+ 00015200  0x0000330c fetcht  0x00000001 , 0x00000ab2 
+ 00015201  0x0000330d isub  0x00000002 , 0x0000003e 
+ 00015202  0x0000330e nbranch  0x00003b3c , 0x00000005 
+ 00015203  0x0000330f branch  0x00003c1a 
+ 00015204  0x00003313 ifetch  0x00000001 , 0x00000003 
+ 00015205  0x00003314 store  0x00000001 , 0x00000aa2 
+ 00015206  0x00003315 ifetch  0x00000001 , 0x00000003 
+ 00015207  0x00003316 store  0x00000001 , 0x00000aae 
+ 00015208  0x00003317 rtn 
+ 00015209  0x0000331c arg  0x00000000 , 0x00000002 
+ 00015210  0x0000331d arg  0x00000002 , 0x00000011 
+ 00015211  0x0000331e fetch  0x00000002 , 0x000046b4 
+ 00015212  0x0000331f store  0x00000002 , 0x00000ac2 
+ 00015213  0x00003320 arg  0x00000ac2 , 0x00000012 
+ 00015214  0x00003321 branch  0x00003c25 
+ 00015215  0x00003326 fetch  0x00000001 , 0x00000b04 
+ 00015216  0x00003327 bne  0x00000001 , 0x00003c17 
+ 00015217  0x00003328 ifetch  0x00000001 , 0x00000003 
+ 00015218  0x00003329 store  0x00000001 , 0x000046b2 
+ 00015219  0x0000332a setarg  0x00000000 
+ 00015220  0x0000332b store  0x00000002 , 0x000046b4 
+ 00015221  0x0000332c branch  0x00003c1a 
+ 00015222  0x00003331 ifetch  0x00000004 , 0x00000003 
+ 00015223  0x00003332 store  0x00000004 , 0x0000468a 
+ 00015224  0x00003333 jam  0x00000004 , 0x00004689 
+ 00015225  0x00003334 jam  0x00000000 , 0x00004663 
+ 00015226  0x00003335 call  0x00003c1a 
+ 00015227  0x00003336 branch  0x00005f31 
+ 00015228  0x0000333b fetch  0x00000001 , 0x00000b04 
+ 00015229  0x0000333c bne  0x00000003 , 0x00003c17 
+ 00015230  0x0000333d ifetch  0x00000001 , 0x00000003 
+ 00015231  0x0000333e beq  0x00000000 , 0x00003b82 
+ 00015232  0x0000333f beq  0x00000001 , 0x00003b8a 
+ 00015233  0x00003340 branch  0x00003c17 
+ 00015234  0x00003343 ifetcht  0x00000001 , 0x00000003 
+ 00015235  0x00003344 ifetch  0x00000001 , 0x00000003 
+ 00015236  0x00003345 beq  0x00000002 , 0x00003b88 
+ 00015237  0x00003346 nsetflag  0x00000034 , 0x00000007 , 0x00000002 
+ 00015238  0x00003347 call  0x000067fb 
+ 00015239  0x00003348 branch  0x00003c1a 
+ 00015240  0x0000334b call  0x00006806 
+ 00015241  0x0000334c branch  0x00003c1a 
+ 00015242  0x0000334f ifetcht  0x00000001 , 0x00000003 
+ 00015243  0x00003350 call  0x00006812 
+ 00015244  0x00003351 ifetch  0x00000001 , 0x00000003 
+ 00015245  0x00003352 isolate1  0x00000000 , 0x0000003f 
+ 00015246  0x00003353 call  0x0000682c 
+ 00015247  0x00003354 branch  0x00003c1a 
+ 00015248  0x00003359 fetch  0x00000001 , 0x00000b04 
+ 00015249  0x0000335a bne  0x00000001 , 0x00003c17 
+ 00015250  0x0000335b ifetcht  0x00000001 , 0x00000003 
+ 00015251  0x0000335c call  0x0000681d 
+ 00015252  0x0000335d setarg  0x00000000 
+ 00015253  0x0000335e nsetflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00015254  0x0000335f arg  0x00000001 , 0x00000011 
+ 00015255  0x00003360 branch  0x00003b0a 
+ 00015256  0x00003365 copy  0x00000011 , 0x00000003 
+ 00015257  0x00003366 ifetch  0x00000001 , 0x00000003 
+ 00015258  0x00003367 copy  0x0000003f , 0x00000002 
+ 00015259  0x00003368 beq  0x00000081 , 0x00003ba3 
+ 00015260  0x00003369 beq  0x00000082 , 0x00003ba8 
+ 00015261  0x0000336a beq  0x00000083 , 0x00003bae 
+ 00015262  0x0000336b store  0x00000001 , 0x000044c6 
+ 00015263  0x0000336c beq  0x00000000 , 0x00003bb3 
+ 00015264  0x0000336d beq  0x00000001 , 0x00003bb6 
+ 00015265  0x0000336e beq  0x00000002 , 0x00003bb8 
+ 00015266  0x0000336f branch  0x00003c17 
+ 00015267  0x00003372 fetch  0x00000001 , 0x000044be 
+ 00015268  0x00003373 branch  0x00003c17 , 0x00000034 
+ 00015269  0x00003374 storet  0x00000001 , 0x000044c6 
+ 00015270  0x00003375 jam  0x0000000d , 0x00004456 
+ 00015271  0x00003376 branch  0x00003bb4 
+ 00015272  0x00003378 fetch  0x00000001 , 0x000044be 
+ 00015273  0x00003379 branch  0x00003c17 , 0x00000034 
+ 00015274  0x0000337a storet  0x00000001 , 0x000044c6 
+ 00015275  0x0000337b jam  0x0000000d , 0x00004456 
+ 00015276  0x0000337c jam  0x00000001 , 0x00004454 
+ 00015277  0x0000337d branch  0x00003c1a 
+ 00015278  0x0000337f fetch  0x00000001 , 0x000044be 
+ 00015279  0x00003380 branch  0x00003c17 , 0x00000034 
+ 00015280  0x00003381 storet  0x00000001 , 0x000044c6 
+ 00015281  0x00003382 jam  0x0000000d , 0x00004456 
+ 00015282  0x00003383 branch  0x00003bb9 
+ 00015283  0x00003385 jam  0x00000000 , 0x00004456 
+ 00015284  0x00003387 jam  0x00000003 , 0x00004454 
+ 00015285  0x00003388 branch  0x00003c1a 
+ 00015286  0x0000338a jam  0x00000005 , 0x00004456 
+ 00015287  0x0000338b branch  0x00003bb4 
+ 00015288  0x0000338d jam  0x00000005 , 0x00004456 
+ 00015289  0x0000338f jam  0x00000000 , 0x00004454 
+ 00015290  0x00003390 branch  0x00003c1a 
+ 00015291  0x00003395 fetch  0x00000001 , 0x00000b04 
+ 00015292  0x00003396 sub  0x0000003f , 0x0000001f , 0x0000003e 
+ 00015293  0x00003397 nbranch  0x00003c17 , 0x00000002 
+ 00015294  0x00003398 store  0x00000001 , 0x0000436f 
+ 00015295  0x00003399 copy  0x0000003f , 0x00000039 
+ 00015296  0x0000339a copy  0x00000011 , 0x00000003 
+ 00015297  0x0000339b arg  0x00004370 , 0x00000005 
+ 00015298  0x0000339c call  0x000066ea 
+ 00015299  0x0000339d branch  0x00003c1a 
+ 00015300  0x000033a2 fetch  0x00000001 , 0x00000b04 
+ 00015301  0x000033a3 sub  0x0000003f , 0x0000001f , 0x0000003e 
+ 00015302  0x000033a4 nbranch  0x00003c17 , 0x00000002 
+ 00015303  0x000033a5 store  0x00000001 , 0x0000438f 
+ 00015304  0x000033a6 copy  0x0000003f , 0x00000039 
+ 00015305  0x000033a7 copy  0x00000011 , 0x00000003 
+ 00015306  0x000033a8 arg  0x00004390 , 0x00000005 
+ 00015307  0x000033a9 call  0x000066ea 
+ 00015308  0x000033aa branch  0x00003c1a 
+ 00015309  0x000033af fetch  0x00000002 , 0x00004682 
+ 00015310  0x000033b0 bbit0  0x00000009 , 0x00003c17 
+ 00015311  0x000033b1 fetch  0x00000001 , 0x00000b04 
+ 00015312  0x000033b2 bne  0x00000008 , 0x00003c17 
+ 00015313  0x000033b3 copy  0x00000011 , 0x00000003 
+ 00015314  0x000033b4 ifetch  0x00000008 , 0x00000003 
+ 00015315  0x000033b5 store  0x00000008 , 0x00004496 
+ 00015316  0x000033b6 jam  0x00000012 , 0x00000a99 
+ 00015317  0x000033b7 call  0x00007d8f 
+ 00015318  0x000033b8 branch  0x00003c1a 
+ 00015319  0x000033bd ifetch  0x00000002 , 0x00000003 
+ 00015320  0x000033be store  0x00000002 , 0x00004482 
+ 00015321  0x000033bf branch  0x00003c1a 
+ 00015322  0x000033c4 fetch  0x00000001 , 0x000044c6 
+ 00015323  0x000033c5 branch  0x00003c17 , 0x00000034 
+ 00015324  0x000033c6 fetch  0x00000001 , 0x000044c4 
+ 00015325  0x000033c7 bne  0x00000000 , 0x00003c17 
+ 00015326  0x000033c8 fetch  0x00000001 , 0x000044c5 
+ 00015327  0x000033c9 bne  0x00000000 , 0x00003c17 
+ 00015328  0x000033ca call  0x00007e25 
+ 00015329  0x000033cb branch  0x00003c1a 
+ 00015330  0x000033d0 fetch  0x00000001 , 0x00000b04 
+ 00015331  0x000033d1 bne  0x00000005 , 0x00003c17 
+ 00015332  0x000033d2 ifetch  0x00000001 , 0x00000003 
+ 00015333  0x000033d3 store  0x00000001 , 0x000046a2 
+ 00015334  0x000033d4 ifetch  0x00000004 , 0x00000003 
+ 00015335  0x000033d5 store  0x00000004 , 0x000046a3 
+ 00015336  0x000033d6 fetcht  0x00000001 , 0x000046a2 
+ 00015337  0x000033d7 call  0x0000680e 
+ 00015338  0x000033d8 call  0x00003cbc 
+ 00015339  0x000033d9 branch  0x00003c1a 
+ 00015340  0x000033de fetch  0x00000001 , 0x00000b04 
+ 00015341  0x000033df bne  0x00000001 , 0x00003c17 
+ 00015342  0x000033e0 ifetch  0x00000001 , 0x00000003 
+ 00015343  0x000033e1 store  0x00000001 , 0x000041de 
+ 00015344  0x000033e2 branch  0x00003c1a 
+ 00015345  0x000033e7 ifetch  0x00000001 , 0x00000003 
+ 00015346  0x000033e8 beq  0x00000001 , 0x00003bfa 
+ 00015347  0x000033e9 fetch  0x00000001 , 0x000044c1 
+ 00015348  0x000033ea beq  0x00000003 , 0x00003bf8 
+ 00015349  0x000033eb beq  0x00000006 , 0x00003bf8 
+ 00015350  0x000033ec beq  0x00000007 , 0x00003bf8 
+ 00015351  0x000033ed branch  0x00003c17 
+ 00015352  0x000033ef jam  0x00000001 , 0x000044c2 
+ 00015353  0x000033f0 branch  0x00003c1a 
+ 00015354  0x000033f3 call  0x00005b53 
+ 00015355  0x000033f4 branch  0x00003c1a 
+ 00015356  0x000033f9 fetch  0x00000001 , 0x00000b04 
+ 00015357  0x000033fa bne  0x00000001 , 0x00003c17 
+ 00015358  0x000033fb call  0x00003c1a 
+ 00015359  0x000033fc ifetch  0x00000001 , 0x00000003 
+ 00015360  0x000033fd branch  0x000060cb , 0x00000034 
+ 00015361  0x000033fe branch  0x000060c9 
+ 00015362  0x00003403 call  0x00003c1a 
+ 00015363  0x00003404 call  0x00007f9e 
+ 00015364  0x00003405 jam  0x00000001 , 0x00008010 
+ 00015365  0x00003406 branch  0x00002a8e 
+ 00015366  0x0000340b fetch  0x00000001 , 0x00000b04 
+ 00015367  0x0000340c beq  0x00000000 , 0x00003c17 
+ 00015368  0x0000340d ifetch  0x00000001 , 0x00000003 
+ 00015369  0x0000340e branch  0x00003c13 , 0x00000034 
+ 00015370  0x0000340f fetch  0x00000001 , 0x00000b04 
+ 00015371  0x00003410 bne  0x00000005 , 0x00003c17 
+ 00015372  0x00003411 ifetch  0x00000004 , 0x00000003 
+ 00015373  0x00003412 arg  0x000f4240 , 0x00000002 
+ 00015374  0x00003413 isub  0x00000002 , 0x0000003e 
+ 00015375  0x00003414 branch  0x00003c17 , 0x00000002 
+ 00015376  0x00003415 store  0x00000004 , 0x000044c7 
+ 00015377  0x00003416 call  0x0000580c 
+ 00015378  0x00003417 branch  0x00003c1a 
+ 00015379  0x0000341a call  0x0000580e 
+ 00015380  0x0000341b branch  0x00003c1a 
+ 00015381  0x00003420 jam  0x00000000 , 0x00004091 
+ 00015382  0x00003421 branch  0x00003c1a 
+ 00015383  0x00003427 arg  0x00000001 , 0x00000002 
+ 00015384  0x00003428 arg  0x00000000 , 0x00000011 
+ 00015385  0x00003429 branch  0x00003c25 
+ 00015386  0x0000342d arg  0x00000000 , 0x00000002 
+ 00015387  0x0000342e arg  0x00000000 , 0x00000011 
+ 00015388  0x0000342f branch  0x00003c25 
+ 00015389  0x00003434 jam  0x00000000 , 0x00000b03 
+ 00015390  0x00003435 branch  0x00003c49 
+ 00015391  0x0000343a jam  0x00000002 , 0x00000b03 
+ 00015392  0x0000343b branch  0x00003c49 
+ 00015393  0x00003440 jam  0x00000003 , 0x00000b03 
+ 00015394  0x00003441 branch  0x00003c49 
+ 00015395  0x00003446 jam  0x00000005 , 0x00000b03 
+ 00015396  0x00003447 branch  0x00003c49 
+ 00015397  0x00003450 fetch  0x00000001 , 0x00000b03 
+ 00015398  0x00003451 copy  0x0000003f , 0x00000013 
+ 00015399  0x00003452 jam  0x00000006 , 0x00000b03 
+ 00015400  0x00003453 setarg  0x00000002 
+ 00015401  0x00003454 iadd  0x00000011 , 0x0000003f 
+ 00015402  0x00003455 call  0x00003ca7 
+ 00015403  0x00003456 copy  0x00000013 , 0x0000003f 
+ 00015404  0x00003457 istore  0x00000001 , 0x0000000a 
+ 00015405  0x00003458 istoret  0x00000001 , 0x0000000a 
+ 00015406  0x00003459 copy  0x00000011 , 0x00000039 
+ 00015407  0x0000345a copy  0x00000012 , 0x00000006 
+ 00015408  0x0000345b call  0x000066e4 
+ 00015409  0x0000345c branch  0x000066c5 
+ 00015410  0x00003462 call  0x0000397f 
+ 00015411  0x00003463 jam  0x00000007 , 0x00000b03 
+ 00015412  0x00003464 fetch  0x00000001 , 0x000004ff 
+ 00015413  0x00003465 rtn  0x00000034 
+ 00015414  0x00003466 call  0x00003ca7 
+ 00015415  0x00003467 fetch  0x00000001 , 0x000004ff 
+ 00015416  0x00003468 copy  0x0000003f , 0x00000039 
+ 00015417  0x00003469 fetch  0x00000002 , 0x00000501 
+ 00015418  0x0000346a copy  0x0000003f , 0x00000006 
+ 00015419  0x0000346b call  0x000066d1 
+ 00015420  0x0000346c branch  0x000066c5 
+ 00015421  0x00003471 jam  0x00000008 , 0x00000b03 
+ 00015422  0x00003472 fetch  0x00000001 , 0x000046b6 
+ 00015423  0x00003473 icopy  0x00000039 
+ 00015424  0x00003474 increase  0x00000002 , 0x0000003f 
+ 00015425  0x00003475 call  0x00003ca7 
+ 00015426  0x00003476 fetch  0x00000002 , 0x000046b9 
+ 00015427  0x00003477 istore  0x00000002 , 0x0000000a 
+ 00015428  0x00003478 fetch  0x00000002 , 0x000046b7 
+ 00015429  0x00003479 icopy  0x00000006 
+ 00015430  0x0000347a call  0x000066d1 
+ 00015431  0x0000347b branch  0x000066c5 
+ 00015432  0x00003480 jam  0x00000009 , 0x00000b03 
+ 00015433  0x00003482 setarg  0x00000000 
+ 00015434  0x00003483 call  0x00003ca7 
+ 00015435  0x00003484 branch  0x000066c5 
+ 00015436  0x00003489 jam  0x0000000a , 0x00000b03 
+ 00015437  0x0000348a setarg  0x00000001 
+ 00015438  0x0000348b call  0x00003ca7 
+ 00015439  0x0000348d call  0x00003c5d 
+ 00015440  0x0000348f fetch  0x00000002 , 0x00004682 
+ 00015441  0x00003490 arg  0x00000002 , 0x00000007 
+ 00015442  0x00003491 qisolate1  0x0000003f 
+ 00015443  0x00003492 setflag  0x00000001 , 0x00000003 , 0x00000002 
+ 00015444  0x00003494 arg  0x00000009 , 0x00000007 
+ 00015445  0x00003495 qisolate1  0x0000003f 
+ 00015446  0x00003496 setflag  0x00000001 , 0x00000005 , 0x00000002 
+ 00015447  0x00003498 fetch  0x00000001 , 0x00004682 
+ 00015448  0x00003499 arg  0x00000004 , 0x00000007 
+ 00015449  0x0000349a qisolate1  0x0000003f 
+ 00015450  0x0000349b setflag  0x00000001 , 0x00000004 , 0x00000002 
+ 00015451  0x0000349d istoret  0x00000001 , 0x0000000a 
+ 00015452  0x0000349e branch  0x000066c5 
+ 00015453  0x000034a3 arg  0x00000000 , 0x00000002 
+ 00015454  0x000034a4 fetch  0x00000001 , 0x00004093 
+ 00015455  0x000034a5 arg  0x00000000 , 0x00000007 
+ 00015456  0x000034a6 qisolate1  0x0000003f 
+ 00015457  0x000034a7 setflag  0x00000001 , 0x00000000 , 0x00000002 
+ 00015458  0x000034a8 arg  0x00000001 , 0x00000007 
+ 00015459  0x000034a9 qisolate1  0x0000003f 
+ 00015460  0x000034aa setflag  0x00000001 , 0x00000001 , 0x00000002 
+ 00015461  0x000034ac fetch  0x00000001 , 0x0000436e 
+ 00015462  0x000034ad arg  0x00000000 , 0x00000007 
+ 00015463  0x000034ae qisolate1  0x0000003f 
+ 00015464  0x000034af setflag  0x00000001 , 0x00000002 , 0x00000002 
+ 00015465  0x000034b0 rtn 
+ 00015466  0x000034b5 jam  0x0000000d , 0x00000b03 
+ 00015467  0x000034b6 fetch  0x00000001 , 0x00004217 
+ 00015468  0x000034b7 mul32  0x0000003f , 0x00000022 , 0x0000003f 
+ 00015469  0x000034b8 icopy  0x00000039 
+ 00015470  0x000034b9 call  0x00003ca7 
+ 00015471  0x000034ba fetch  0x00000002 , 0x00004215 
+ 00015472  0x000034bb icopy  0x00000006 
+ 00015473  0x000034bc call  0x000066d1 
+ 00015474  0x000034bd branch  0x000066c5 
+ 00015475  0x000034c2 jam  0x0000000e , 0x00000b03 
+ 00015476  0x000034c3 setarg  0x00000004 
+ 00015477  0x000034c4 call  0x00003ca7 
+ 00015478  0x000034c5 fetch  0x00000004 , 0x000009ba 
+ 00015479  0x000034c6 istore  0x00000004 , 0x0000000a 
+ 00015480  0x000034c7 branch  0x000066c5 
+ 00015481  0x000034cc jam  0x0000000f , 0x00000b03 
+ 00015482  0x000034cd hfetch  0x00000002 , 0x00008112 
+ 00015483  0x000034ce arg  0x000000ff , 0x00000002 
+ 00015484  0x000034cf call  0x00007fdd 
+ 00015485  0x000034d0 copy  0x0000003f , 0x00000039 
+ 00015486  0x000034d1 call  0x00003ca7 
+ 00015487  0x000034d2 call  0x000066cb 
+ 00015488  0x000034d3 call  0x00006703 
+ 00015489  0x000034d4 branch  0x000066c5 
+ 00015490  0x000034d9 jam  0x00000010 , 0x00000b03 
+ 00015491  0x000034da branch  0x00003c49 
+ 00015492  0x000034df jam  0x00000011 , 0x00000b03 
+ 00015493  0x000034e0 setarg  0x00000004 
+ 00015494  0x000034e1 call  0x00003ca7 
+ 00015495  0x000034e2 fetch  0x00000004 , 0x000044c7 
+ 00015496  0x000034e3 istore  0x00000004 , 0x0000000a 
+ 00015497  0x000034e4 branch  0x000066c5 
+ 00015498  0x000034e9 arg  0x00000180 , 0x00000011 
+ 00015499  0x000034ea branch  0x00003c91 
+ 00015500  0x000034ed arg  0x00000080 , 0x00000011 
+ 00015501  0x000034ee branch  0x00003c91 
+ 00015502  0x000034f1 arg  0x00000101 , 0x00000011 
+ 00015503  0x000034f2 branch  0x00003c91 
+ 00015504  0x000034f5 arg  0x00000001 , 0x00000011 
+ 00015505  0x000034f8 jam  0x00000000 , 0x00004661 
+ 00015506  0x000034f9 jam  0x00000014 , 0x00000b03 
+ 00015507  0x000034fa setarg  0x00000002 
+ 00015508  0x000034fb call  0x00003ca7 
+ 00015509  0x000034fc copy  0x00000011 , 0x0000003f 
+ 00015510  0x000034fd istore  0x00000002 , 0x0000000a 
+ 00015511  0x000034fe branch  0x000066c5 
+ 00015512  0x00003503 arg  0x00000000 , 0x00000013 
+ 00015513  0x00003504 branch  0x00003c9b 
+ 00015514  0x00003507 arg  0x00000001 , 0x00000013 
+ 00015515  0x0000350a jam  0x00000015 , 0x00000b03 
+ 00015516  0x0000350b setarg  0x00000001 
+ 00015517  0x0000350c call  0x00003ca7 
+ 00015518  0x0000350d copy  0x00000013 , 0x0000003f 
+ 00015519  0x0000350e istore  0x00000001 , 0x0000000a 
+ 00015520  0x0000350f branch  0x000066c5 
+ 00015521  0x00003514 jam  0x0000001d , 0x00000b03 
+ 00015522  0x00003515 setarg  0x00000004 
+ 00015523  0x00003516 call  0x00003ca7 
+ 00015524  0x00003517 fetch  0x00000004 , 0x000009ba 
+ 00015525  0x00003518 istore  0x00000004 , 0x0000000a 
+ 00015526  0x00003519 branch  0x000066c5 
+ 00015527  0x00003525 jam  0x00000002 , 0x00000b02 
+ 00015528  0x00003526 store  0x00000001 , 0x00000b04 
+ 00015529  0x00003527 storet  0x00000008 , 0x00000aa2 
+ 00015530  0x00003528 bpatch  0x000000e2 , 0x0000401c 
+ 00015531  0x00003529 call  0x00003cb1 
+ 00015532  0x0000352a fetcht  0x00000008 , 0x00000aa2 
+ 00015533  0x0000352b call  0x000066c2 
+ 00015534  0x0000352c fetch  0x00000003 , 0x00000b02 
+ 00015535  0x0000352d istore  0x00000003 , 0x0000000a 
+ 00015536  0x0000352e rtn 
+ 00015537  0x00003532 call  0x00003cba 
+ 00015538  0x00003533 rtn  0x00000001 
+ 00015539  0x00003535 call  0x00003cb8 
+ 00015540  0x00003536 fetch  0x00000004 , 0x000046a3 
+ 00015541  0x00003537 rshift2  0x0000003f , 0x0000003f 
+ 00015542  0x00003538 rtn  0x00000034 
+ 00015543  0x00003539 branch  0x00003cbe 
+ 00015544  0x0000353d fetcht  0x00000001 , 0x000046a2 
+ 00015545  0x0000353e branch  0x00006829 
+ 00015546  0x00003541 fetcht  0x00000001 , 0x000046a2 
+ 00015547  0x00003542 branch  0x0000681b 
+ 00015548  0x00003545 fetcht  0x00000001 , 0x000046a2 
+ 00015549  0x00003546 branch  0x00006825 
+ 00015550  0x0000354a increase  0xffffffff , 0x0000003f 
+ 00015551  0x0000354b nop  0x00000026 
+ 00015552  0x0000354c nbranch  0x00003cbe , 0x00000034 
+ 00015553  0x0000354d rtn 
+ 00015554  0x00003557 call  0x00003ad4 
+ 00015555  0x00003558 rtn  0x00000028 
+ 00015556  0x00003559 copy  0x00000011 , 0x0000003f 
+ 00015557  0x0000355a store  0x00000002 , 0x000046b7 
+ 00015558  0x0000355b copy  0x00000012 , 0x0000003f 
+ 00015559  0x0000355c store  0x00000001 , 0x000046b6 
+ 00015560  0x0000355d fetch  0x00000002 , 0x00000478 
+ 00015561  0x0000355e fetcht  0x00000002 , 0x000046bb 
+ 00015562  0x0000355f isub  0x00000002 , 0x0000003e 
+ 00015563  0x00003560 branch  0x00003ccf , 0x00000005 
+ 00015564  0x00003561 fetcht  0x00000002 , 0x000046bd 
+ 00015565  0x00003562 isub  0x00000002 , 0x0000003e 
+ 00015566  0x00003563 nrtn  0x00000005 
+ 00015567  0x00003565 store  0x00000002 , 0x000046b9 
+ 00015568  0x00003566 branch  0x00003c3d 
+ 00015569  0x0000356c fetch  0x00000001 , 0x000046bf 
+ 00015570  0x0000356d rtnbit1  0x00000005 
+ 00015571  0x0000356e call  0x00003cf0 
+ 00015572  0x0000356f branch  0x0000340c 
+ 00015573  0x00003573 jam  0x00000002 , 0x00004172 
+ 00015574  0x00003574 rtn 
+ 00015575  0x00003579 branch  0x00003cd8 
+ 00015576  0x0000357c fetch  0x00000001 , 0x000046b2 
+ 00015577  0x0000357d rtn  0x00000034 
+ 00015578  0x0000357e fetch  0x00000001 , 0x000046b3 
+ 00015579  0x0000357f rtn  0x00000034 
+ 00015580  0x00003580 increase  0xffffffff , 0x0000003f 
+ 00015581  0x00003581 store  0x00000001 , 0x000046b3 
+ 00015582  0x00003582 nrtn  0x00000034 
+ 00015583  0x00003583 jam  0x0000000a , 0x000046b3 
+ 00015584  0x00003584 call  0x000068eb 
+ 00015585  0x00003585 call  0x00006908 
+ 00015586  0x00003586 div  0x0000003f , 0x00000064 
+ 00015587  0x00003587 call  0x00007f86 
+ 00015588  0x00003588 quotient  0x0000003f 
+ 00015589  0x00003589 remainder  0x00000002 
+ 00015590  0x0000358a store  0x00000001 , 0x000046b4 
+ 00015591  0x0000358b storet  0x00000001 , 0x000046b5 
+ 00015592  0x0000358c rtn 
+ 00015593  0x00003590 call  0x00007fb4 
+ 00015594  0x00003591 branch  0x000033d9 , 0x00000002 
+ 00015595  0x00003592 branch  0x000033db 
+ 00015596  0x00003597 arg  0x00000006 , 0x00000007 
+ 00015597  0x00003598 branch  0x00003cfc 
+ 00015598  0x0000359b arg  0x00000006 , 0x00000007 
+ 00015599  0x0000359c branch  0x00003cf8 
+ 00015600  0x0000359f arg  0x00000005 , 0x00000007 
+ 00015601  0x000035a0 branch  0x00003cfc 
+ 00015602  0x000035a3 arg  0x00000005 , 0x00000007 
+ 00015603  0x000035a4 branch  0x00003cf8 
+ 00015604  0x000035a7 arg  0x00000004 , 0x00000007 
+ 00015605  0x000035a8 branch  0x00003cfc 
+ 00015606  0x000035ab arg  0x00000004 , 0x00000007 
+ 00015607  0x000035ac branch  0x00003cf8 
+ 00015608  0x000035af fetch  0x00000001 , 0x000046bf 
+ 00015609  0x000035b0 qset0  0x0000003f 
+ 00015610  0x000035b1 store  0x00000001 , 0x000046bf 
+ 00015611  0x000035b2 rtn 
+ 00015612  0x000035b5 fetch  0x00000001 , 0x000046bf 
+ 00015613  0x000035b6 qset1  0x0000003f 
+ 00015614  0x000035b7 store  0x00000001 , 0x000046bf 
+ 00015615  0x000035b8 rtn 
+ 00015616  0x000035c3 call  0x00003d39 
+ 00015617  0x000035c4 call  0x0000640f 
+ 00015618  0x000035c5 call  0x000040c6 
+ 00015619  0x000035c6 call  0x00003d66 
+ 00015620  0x000035c7 call  0x00006411 
+ 00015621  0x000035c8 rtn  0x0000002b 
+ 00015622  0x000035c9 call  0x00003d16 
+ 00015623  0x000035ca call  0x00003d19 
+ 00015624  0x000035cd fetch  0x00000004 , 0x000046d3 
+ 00015625  0x000035ce rtnbit1  0x00000010 
+ 00015626  0x000035cf call  0x00003d4e 
+ 00015627  0x000035d0 rtnmark1  0x00000026 
+ 00015628  0x000035d1 fetch  0x00000002 , 0x00004682 
+ 00015629  0x000035d2 bbit1  0x0000000c , 0x000042b0 
+ 00015630  0x000035d3 branch  0x000042a2 
+ 00015631  0x000035d7 fetch  0x00000004 , 0x000046d3 
+ 00015632  0x000035d8 rtnbit0  0x0000001b 
+ 00015633  0x000035d9 arg  0x00000014 , 0x00000039 
+ 00015634  0x000035db setarg  0x00030d40 
+ 00015635  0x000035dc call  0x00002a8f 
+ 00015636  0x000035dd loop  0x00007ec1 
+ 00015637  0x000035de rtn 
+ 00015638  0x000035e2 fetch  0x00000004 , 0x000046d3 
+ 00015639  0x000035e3 rtnbit0  0x00000010 
+ 00015640  0x000035e4 branch  0x000048ea 
+ 00015641  0x000035e8 setarg  0x0000416d 
+ 00015642  0x000035e9 store  0x00000002 , 0x000041ef 
+ 00015643  0x000035ea setarg  0x00003f77 
+ 00015644  0x000035eb store  0x00000002 , 0x000041f1 
+ 00015645  0x000035ec setarg  0x00003ebb 
+ 00015646  0x000035ed store  0x00000002 , 0x000041ed 
+ 00015647  0x000035ee setarg  0x0000417c 
+ 00015648  0x000035ef store  0x00000002 , 0x000041f5 
+ 00015649  0x000035f0 setarg  0x00003de3 
+ 00015650  0x000035f1 store  0x00000002 , 0x000041f3 
+ 00015651  0x000035f2 setarg  0x00003eb3 
+ 00015652  0x000035f3 store  0x00000002 , 0x000041eb 
+ 00015653  0x000035f4 setarg  0x00003d5b 
+ 00015654  0x000035f5 store  0x00000002 , 0x000041f9 
+ 00015655  0x000035f7 call  0x00002c7a 
+ 00015656  0x000035f8 setarg  0x00004401 
+ 00015657  0x000035f9 add  0x00000013 , 0x000000d8 , 0x00000005 
+ 00015658  0x000035fa istore  0x00000002 , 0x00000005 
+ 00015659  0x000035fb setarg  0x00004406 
+ 00015660  0x000035fc add  0x00000013 , 0x000000da , 0x00000005 
+ 00015661  0x000035fd istore  0x00000002 , 0x00000005 
+ 00015662  0x000035fe setarg  0x00003ebf 
+ 00015663  0x000035ff add  0x00000013 , 0x000000dc , 0x00000005 
+ 00015664  0x00003600 istore  0x00000002 , 0x00000005 
+ 00015665  0x00003602 setarg  0x000041f9 
+ 00015666  0x00003603 store  0x00000002 , 0x000041fd 
+ 00015667  0x00003604 setarg  0x00003d36 
+ 00015668  0x00003605 store  0x00000002 , 0x00004201 
+ 00015669  0x00003606 rtn 
+ 00015670  0x00003609 fetch  0x00000004 , 0x000046d3 
+ 00015671  0x0000360a bbit0  0x00000012 , 0x000064d7 
+ 00015672  0x0000360b branch  0x000064da 
+ 00015673  0x0000360e rtn  0x0000002b 
+ 00015674  0x0000360f call  0x00002c9d 
+ 00015675  0x00003610 call  0x00003e6e 
+ 00015676  0x00003611 call  0x00003e1e 
+ 00015677  0x00003612 call  0x00003e54 
+ 00015678  0x00003613 call  0x00005810 
+ 00015679  0x00003614 call  0x00005839 
+ 00015680  0x00003615 call  0x0000582c 
+ 00015681  0x00003616 call  0x00005818 
+ 00015682  0x00003617 fetch  0x00000004 , 0x000046d3 
+ 00015683  0x00003618 bbit1  0x00000014 , 0x00003d46 
+ 00015684  0x00003619 bbit1  0x00000013 , 0x00004414 
+ 00015685  0x0000361a rtn 
+ 00015686  0x0000361d call  0x0000659c 
+ 00015687  0x0000361e fetch  0x00000004 , 0x000046d3 
+ 00015688  0x0000361f isolate1  0x00000019 , 0x0000003f 
+ 00015689  0x00003620 ncall  0x000065c2 , 0x00000001 
+ 00015690  0x00003621 call  0x0000443f 
+ 00015691  0x00003622 call  0x00003dc9 
+ 00015692  0x00003623 call  0x000041aa 
+ 00015693  0x00003624 branch  0x000065df 
+ 00015694  0x00003627 fetch  0x00000004 , 0x000046d3 
+ 00015695  0x00003628 bbit0  0x0000001e , 0x00003d53 
+ 00015696  0x00003629 fetch  0x00000001 , 0x00000abd 
+ 00015697  0x0000362a isolate0  0x00000003 , 0x0000003f 
+ 00015698  0x0000362b nrtn  0x00000001 
+ 00015699  0x0000362d fetch  0x00000001 , 0x0000471f 
+ 00015700  0x0000362e store  0x00000001 , 0x0000471e 
+ 00015701  0x0000362f fetch  0x00000001 , 0x000046f5 
+ 00015702  0x00003630 rtnbit1  0x00000006 
+ 00015703  0x00003632 fetch  0x00000004 , 0x000046d3 
+ 00015704  0x00003633 rtnbit0  0x00000011 
+ 00015705  0x00003634 bbit1  0x0000001d , 0x00002ee4 
+ 00015706  0x00003635 branch  0x00002f2c 
+ 00015707  0x00003637 fetch  0x00000001 , 0x00000478 
+ 00015708  0x00003638 sub  0x0000003f , 0x0000001a , 0x0000003f 
+ 00015709  0x00003639 nrtn  0x00000005 
+ 00015710  0x0000363a jam  0x00000012 , 0x00000a99 
+ 00015711  0x0000363b call  0x00007d8f 
+ 00015712  0x0000363d arg  0x00000000 , 0x00000007 
+ 00015713  0x0000363e branch  0x000041b9 
+ 00015714  0x00003641 fetch  0x00000001 , 0x000046b6 
+ 00015715  0x00003642 rtneq  0x00000001 
+ 00015716  0x00003643 jam  0x00000001 , 0x000046b6 
+ 00015717  0x00003644 rtn 
+ 00015718  0x00003646 fetch  0x00000001 , 0x000046e1 
+ 00015719  0x00003647 and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00015720  0x00003648 store  0x00000001 , 0x0000477a 
+ 00015721  0x00003649 branch  0x00003d80 
+ 00015722  0x0000364d fetcht  0x00000001 , 0x000046e7 
+ 00015723  0x0000364e call  0x0000681d 
+ 00015724  0x0000364f nbranch  0x00003d62 , 0x00000001 
+ 00015725  0x00003651 fetch  0x00000001 , 0x000046b6 
+ 00015726  0x00003652 rtneq  0x00000000 
+ 00015727  0x00003653 jam  0x00000000 , 0x000046b6 
+ 00015728  0x00003654 fetch  0x00000001 , 0x0000477a 
+ 00015729  0x00003655 increase  0x00000001 , 0x0000003f 
+ 00015730  0x00003656 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00015731  0x00003657 store  0x00000001 , 0x0000477a 
+ 00015732  0x00003658 call  0x00003d7e 
+ 00015733  0x00003659 fetch  0x00000004 , 0x000046d3 
+ 00015734  0x0000365a bbit1  0x00000014 , 0x0000443b 
+ 00015735  0x0000365b bbit1  0x00000013 , 0x00003d79 
+ 00015736  0x0000365c rtn 
+ 00015737  0x0000365e arg  0x0000001e , 0x00000002 
+ 00015738  0x0000365f call  0x0000680e 
+ 00015739  0x00003660 arg  0x0000001f , 0x00000002 
+ 00015740  0x00003661 call  0x0000680e 
+ 00015741  0x00003662 branch  0x00004435 
+ 00015742  0x00003665 bpatch  0x000000e3 , 0x0000401c 
+ 00015743  0x00003666 call  0x0000424a 
+ 00015744  0x00003667 fetch  0x00000001 , 0x000046e0 
+ 00015745  0x00003668 beq  0x00000005 , 0x00003daa 
+ 00015746  0x00003669 beq  0x00000004 , 0x00003d96 
+ 00015747  0x0000366a fetch  0x00000001 , 0x0000477a 
+ 00015748  0x0000366b beq  0x00000000 , 0x00003d8a 
+ 00015749  0x0000366c beq  0x00000001 , 0x00003d88 
+ 00015750  0x0000366d beq  0x00000002 , 0x00003d8c 
+ 00015751  0x0000366e beq  0x00000003 , 0x00003d8e 
+ 00015752  0x00003670 fetch  0x00000001 , 0x00004780 
+ 00015753  0x00003671 branch  0x00003dbe 
+ 00015754  0x00003673 fetch  0x00000001 , 0x0000477f 
+ 00015755  0x00003674 branch  0x00003dbe 
+ 00015756  0x00003676 fetch  0x00000001 , 0x00004781 
+ 00015757  0x00003677 branch  0x00003dbe 
+ 00015758  0x00003679 fetch  0x00000001 , 0x00004782 
+ 00015759  0x0000367a branch  0x00003dbe 
+ 00015760  0x0000367c fetch  0x00000001 , 0x000046e0 
+ 00015761  0x0000367d rtneq  0x00000006 
+ 00015762  0x0000367e fetch  0x00000001 , 0x000046b5 
+ 00015763  0x0000367f increase  0x00000001 , 0x0000003f 
+ 00015764  0x00003680 store  0x00000001 , 0x000046b5 
+ 00015765  0x00003681 rtn 
+ 00015766  0x00003684 fetch  0x00000001 , 0x0000477a 
+ 00015767  0x00003685 beq  0x00000000 , 0x00003d9d 
+ 00015768  0x00003686 beq  0x00000001 , 0x00003d9b 
+ 00015769  0x00003687 beq  0x00000002 , 0x00003d9f 
+ 00015770  0x00003688 beq  0x00000003 , 0x00003da1 
+ 00015771  0x0000368a fetch  0x00000001 , 0x00004784 
+ 00015772  0x0000368b branch  0x00003da2 
+ 00015773  0x0000368d fetch  0x00000001 , 0x00004783 
+ 00015774  0x0000368e branch  0x00003da2 
+ 00015775  0x00003690 fetch  0x00000001 , 0x00004785 
+ 00015776  0x00003691 branch  0x00003da2 
+ 00015777  0x00003693 fetch  0x00000001 , 0x00004786 
+ 00015778  0x00003695 store  0x00000001 , 0x000046b5 
+ 00015779  0x00003696 lshift8  0x0000003f , 0x0000003f 
+ 00015780  0x00003697 copy  0x0000003f , 0x00000011 
+ 00015781  0x00003698 add  0x0000003f , 0x0000000d , 0x0000003f 
+ 00015782  0x00003699 call  0x00006413 
+ 00015783  0x0000369a copy  0x00000011 , 0x0000003f 
+ 00015784  0x0000369b add  0x0000003f , 0x0000000e , 0x0000003f 
+ 00015785  0x0000369c branch  0x00006413 
+ 00015786  0x0000369f fetch  0x00000001 , 0x0000477a 
+ 00015787  0x000036a0 beq  0x00000000 , 0x00003db1 
+ 00015788  0x000036a1 beq  0x00000001 , 0x00003daf 
+ 00015789  0x000036a2 beq  0x00000002 , 0x00003db3 
+ 00015790  0x000036a3 beq  0x00000003 , 0x00003db5 
+ 00015791  0x000036a5 fetch  0x00000001 , 0x00004788 
+ 00015792  0x000036a6 branch  0x00003db6 
+ 00015793  0x000036a8 fetch  0x00000001 , 0x00004787 
+ 00015794  0x000036a9 branch  0x00003db6 
+ 00015795  0x000036ab fetch  0x00000001 , 0x00004789 
+ 00015796  0x000036ac branch  0x00003db6 
+ 00015797  0x000036ae fetch  0x00000001 , 0x0000478a 
+ 00015798  0x000036b0 store  0x00000001 , 0x000046b5 
+ 00015799  0x000036b1 call  0x000040c0 
+ 00015800  0x000036b2 fetch  0x00000001 , 0x000046b5 
+ 00015801  0x000036b4 add  0x0000003f , 0x00000080 , 0x0000003f 
+ 00015802  0x000036b5 lshift8  0x0000003f , 0x0000003f 
+ 00015803  0x000036b6 add  0x0000003f , 0x00000005 , 0x0000003f 
+ 00015804  0x000036b7 copy  0x0000003f , 0x00000011 
+ 00015805  0x000036b8 branch  0x0000415a 
+ 00015806  0x000036bb store  0x00000001 , 0x000046b5 
+ 00015807  0x000036bc call  0x00003d90 
+ 00015808  0x000036bd fetch  0x00000001 , 0x000046b5 
+ 00015809  0x000036be setarg  0x00000006 
+ 00015810  0x000036bf call  0x00006414 
+ 00015811  0x000036c0 and  0x0000003f , 0x000000f8 , 0x00000002 
+ 00015812  0x000036c1 fetch  0x00000001 , 0x000046b5 
+ 00015813  0x000036c2 iadd  0x00000002 , 0x0000003f 
+ 00015814  0x000036c3 lshift8  0x0000003f , 0x0000003f 
+ 00015815  0x000036c4 add  0x0000003f , 0x00000006 , 0x0000003f 
+ 00015816  0x000036c5 branch  0x00006413 
+ 00015817  0x000036c9 call  0x000033c4 
+ 00015818  0x000036ca branch  0x00004316 , 0x00000005 
+ 00015819  0x000036cb call  0x0000441c 
+ 00015820  0x000036cc call  0x000042e4 
+ 00015821  0x000036cd branch  0x000033bd 
+ 00015822  0x000036d1 fetch  0x00000002 , 0x00004707 
+ 00015823  0x000036d2 rtn  0x00000034 
+ 00015824  0x000036d3 fetch  0x00000004 , 0x000046d3 
+ 00015825  0x000036d4 rtnbit0  0x00000011 
+ 00015826  0x000036d5 rtnbit1  0x00000003 
+ 00015827  0x000036d6 rtnmark1  0x00000026 
+ 00015828  0x000036d7 call  0x00004083 
+ 00015829  0x000036d8 rtnne  0x00000007 
+ 00015830  0x000036d9 call  0x00004482 
+ 00015831  0x000036da arg  0x00000003 , 0x00000007 
+ 00015832  0x000036db call  0x000043ce 
+ 00015833  0x000036dc setarg  0x00000000 
+ 00015834  0x000036dd store  0x00000002 , 0x000046ae 
+ 00015835  0x000036de store  0x00000001 , 0x000046b4 
+ 00015836  0x000036df call  0x00003263 
+ 00015837  0x000036e1 fetch  0x00000002 , 0x00004682 
+ 00015838  0x000036e2 bbit1  0x00000007 , 0x00004392 
+ 00015839  0x000036e3 bbit1  0x00000009 , 0x00003402 
+ 00015840  0x000036e4 bbit1  0x00000000 , 0x000033e9 
+ 00015841  0x000036e5 call  0x000042ca 
+ 00015842  0x000036e6 branch  0x00002ead 
+ 00015843  0x000036ea call  0x00003dce 
+ 00015844  0x000036eb call  0x00007e34 
+ 00015845  0x000036ec call  0x00003d6a 
+ 00015846  0x000036ed call  0x00003de9 
+ 00015847  0x000036ee call  0x00003ee0 
+ 00015848  0x000036ef branch  0x00003df7 
+ 00015849  0x000036f1 fetch  0x00000004 , 0x000046d3 
+ 00015850  0x000036f2 rtnbit0  0x00000010 
+ 00015851  0x000036f3 call  0x000048d3 
+ 00015852  0x000036f4 branch  0x000048fd 
+ 00015853  0x000036f7 hfetch  0x00000001 , 0x00008a04 
+ 00015854  0x000036f8 bbit0  0x00000007 , 0x00003df1 
+ 00015855  0x000036f9 bbit1  0x00000007 , 0x00003df4 
+ 00015856  0x000036fa rtn 
+ 00015857  0x000036fc fetch  0x00000001 , 0x000046ff 
+ 00015858  0x000036fd rtnbit0  0x00000007 
+ 00015859  0x000036fe branch  0x0000659a 
+ 00015860  0x00003700 fetch  0x00000001 , 0x000046ff 
+ 00015861  0x00003701 rtnbit1  0x00000007 
+ 00015862  0x00003702 branch  0x00004381 
+ 00015863  0x00003705 call  0x00003ded 
+ 00015864  0x00003706 hfetch  0x00000001 , 0x00008a04 
+ 00015865  0x00003707 store  0x00000001 , 0x000046ff 
+ 00015866  0x00003708 rtnbit0  0x00000007 
+ 00015867  0x00003709 call  0x00003e07 
+ 00015868  0x0000370a fetch  0x00000004 , 0x000046f9 
+ 00015869  0x0000370b fetcht  0x00000001 , 0x000046fd 
+ 00015870  0x0000370c iadd  0x00000002 , 0x00000002 
+ 00015871  0x0000370d copy  0x00000022 , 0x0000003f 
+ 00015872  0x0000370e isub  0x00000002 , 0x0000003e 
+ 00015873  0x0000370f nrtn  0x00000002 
+ 00015874  0x00003710 store  0x00000004 , 0x000046f9 
+ 00015875  0x00003711 call  0x00003f97 
+ 00015876  0x00003712 nrtn  0x00000028 
+ 00015877  0x00003713 jam  0x00000004 , 0x00000d38 
+ 00015878  0x00003714 branch  0x00003e0f 
+ 00015879  0x00003717 fetcht  0x00000004 , 0x000046f9 
+ 00015880  0x00003718 copy  0x00000022 , 0x0000003f 
+ 00015881  0x00003719 isub  0x00000002 , 0x0000003e 
+ 00015882  0x0000371a ncall  0x00003e0c , 0x00000002 
+ 00015883  0x0000371b rtn 
+ 00015884  0x0000371d setarg  0x00000000 
+ 00015885  0x0000371e store  0x00000004 , 0x000046f9 
+ 00015886  0x0000371f rtn 
+ 00015887  0x00003724 fetch  0x00000001 , 0x00000d38 
+ 00015888  0x00003725 rtnbit0  0x00000002 
+ 00015889  0x00003726 branch  0x00003e12 
+ 00015890  0x00003728 hfetch  0x00000001 , 0x00008a04 
+ 00015891  0x00003729 rtnbit0  0x00000007 
+ 00015892  0x0000372a jam  0x00000020 , 0x00000d52 
+ 00015893  0x0000372b setarg  0x00000001 
+ 00015894  0x0000372c store  0x00000001 , 0x00000d54 
+ 00015895  0x0000372d fetch  0x00000007 , 0x0000469a 
+ 00015896  0x0000372e istore  0x00000007 , 0x00000005 
+ 00015897  0x0000372f rtn 
+ 00015898  0x00003733 hfetch  0x00000002 , 0x00008050 
+ 00015899  0x00003734 set0  0x0000000b , 0x0000003f 
+ 00015900  0x00003735 hstore  0x00000002 , 0x00008050 
+ 00015901  0x00003736 rtn 
+ 00015902  0x00003739 setarg  0x00008c00 
+ 00015903  0x0000373a store  0x00000002 , 0x00004575 
+ 00015904  0x0000373b setarg  0x00008e7a 
+ 00015905  0x0000373c store  0x00000002 , 0x000044bc 
+ 00015906  0x0000373d setarg  0x00002402 
+ 00015907  0x0000373e store  0x00000002 , 0x000040bd 
+ 00015908  0x0000373f setarg  0x00002580 
+ 00015909  0x00003740 store  0x00000003 , 0x000040aa 
+ 00015910  0x00003741 jam  0x00000003 , 0x00004173 
+ 00015911  0x00003742 jam  0x00000008 , 0x00004156 
+ 00015912  0x00003743 jam  0x00000001 , 0x000046d9 
+ 00015913  0x00003744 setarg  0x00000200 
+ 00015914  0x00003745 store  0x00000002 , 0x00004154 
+ 00015915  0x00003746 jam  0x00000017 , 0x000044a6 
+ 00015916  0x00003747 jam  0x00000017 , 0x000044a8 
+ 00015917  0x00003749 setarg  0x00000a77 
+ 00015918  0x0000374a store  0x00000002 , 0x00004212 
+ 00015919  0x0000375a setsect  0x00000000 , 0x00000306 
+ 00015920  0x0000375b setsect  0x00000001 , 0x00004440 
+ 00015921  0x0000375c setsect  0x00000002 , 0x00010000 
+ 00015922  0x0000375d setsect  0x00000003 , 0x00004408 
+ 00015923  0x0000375e store  0x00000009 , 0x00004577 
+ 00015924  0x0000375f setsect  0x00000000 , 0x00001224 
+ 00015925  0x00003760 setsect  0x00000001 , 0x00004000 
+ 00015926  0x00003761 setsect  0x00000002 , 0x00000000 
+ 00015927  0x00003762 istore  0x00000005 , 0x00000005 
+ 00015928  0x00003764 setsect  0x00000000 , 0x0003ffff 
+ 00015929  0x00003765 setsect  0x00000001 , 0x0002fe23 
+ 00015930  0x00003766 setsect  0x00000002 , 0x000199d9 
+ 00015931  0x00003767 setsect  0x00000003 , 0x0000020d 
+ 00015932  0x00003768 store  0x00000008 , 0x00004098 
+ 00015933  0x0000376a setarg  0x0000012c 
+ 00015934  0x0000376b store  0x00000002 , 0x00004707 
+ 00015935  0x0000376c call  0x000057a3 
+ 00015936  0x0000376d fetch  0x00000004 , 0x000046d3 
+ 00015937  0x0000376e rtnbit0  0x0000001f 
+ 00015938  0x0000376f call  0x00003e44 
+ 00015939  0x00003770 branch  0x00003e4c 
+ 00015940  0x00003773 fetcht  0x00000001 , 0x000046f7 
+ 00015941  0x00003774 call  0x000067fb 
+ 00015942  0x00003775 fetcht  0x00000001 , 0x000046f7 
+ 00015943  0x00003776 call  0x0000681d 
+ 00015944  0x00003777 jam  0x00000003 , 0x000046f6 
+ 00015945  0x00003778 rtn  0x00000001 
+ 00015946  0x00003779 jam  0x00000002 , 0x000046f6 
+ 00015947  0x0000377a rtn 
+ 00015948  0x0000377d fetcht  0x00000001 , 0x000046f8 
+ 00015949  0x0000377e call  0x000067fb 
+ 00015950  0x0000377f fetcht  0x00000001 , 0x000046f8 
+ 00015951  0x00003780 call  0x0000681d 
+ 00015952  0x00003781 jam  0x00000000 , 0x0000422d 
+ 00015953  0x00003782 rtn  0x00000001 
+ 00015954  0x00003783 jam  0x00000002 , 0x0000422d 
+ 00015955  0x00003784 rtn 
+ 00015956  0x00003788 fetch  0x00000001 , 0x0000422d 
+ 00015957  0x00003789 beq  0x00000000 , 0x00003e59 
+ 00015958  0x0000378a beq  0x00000001 , 0x00003e62 
+ 00015959  0x0000378b beq  0x00000002 , 0x00003e6b 
+ 00015960  0x0000378c branch  0x00003e59 
+ 00015961  0x0000378f fetcht  0x00000002 , 0x00004221 
+ 00015962  0x00003790 fetch  0x00000002 , 0x00004227 
+ 00015963  0x00003791 isub  0x00000002 , 0x0000003f 
+ 00015964  0x00003792 mul32  0x0000003f , 0x00000014 , 0x0000003f 
+ 00015965  0x00003793 div  0x0000003f , 0x00000064 
+ 00015966  0x00003794 call  0x00007f86 
+ 00015967  0x00003795 quotient  0x0000003f 
+ 00015968  0x00003796 store  0x00000002 , 0x000046d0 
+ 00015969  0x00003797 rtn 
+ 00015970  0x00003799 fetcht  0x00000002 , 0x0000421f 
+ 00015971  0x0000379a fetch  0x00000002 , 0x00004225 
+ 00015972  0x0000379b isub  0x00000002 , 0x0000003f 
+ 00015973  0x0000379c mul32  0x0000003f , 0x000000e6 , 0x0000003f 
+ 00015974  0x0000379d div  0x0000003f , 0x00000190 
+ 00015975  0x0000379e call  0x00007f86 
+ 00015976  0x0000379f quotient  0x0000003f 
+ 00015977  0x000037a0 store  0x00000002 , 0x000046d0 
+ 00015978  0x000037a1 rtn 
+ 00015979  0x000037a3 fetch  0x00000002 , 0x00004223 
+ 00015980  0x000037a4 store  0x00000002 , 0x000046d0 
+ 00015981  0x000037a5 rtn 
+ 00015982  0x000037a7 fetcht  0x00000001 , 0x0000423a 
+ 00015983  0x000037a8 call  0x0000680e 
+ 00015984  0x000037a9 call  0x000048fb 
+ 00015985  0x000037aa fetcht  0x00000001 , 0x000046e2 
+ 00015986  0x000037ab call  0x000067fb 
+ 00015987  0x000037ac fetcht  0x00000001 , 0x000046e3 
+ 00015988  0x000037ad call  0x000067fb 
+ 00015989  0x000037ae fetcht  0x00000001 , 0x000046e4 
+ 00015990  0x000037af call  0x000067fb 
+ 00015991  0x000037b0 fetcht  0x00000001 , 0x000046f3 
+ 00015992  0x000037b1 call  0x000067fb 
+ 00015993  0x000037b3 fetcht  0x00000001 , 0x000046dc 
+ 00015994  0x000037b4 call  0x0000680e 
+ 00015995  0x000037b6 fetcht  0x00000001 , 0x000046e8 
+ 00015996  0x000037b7 call  0x000067fb 
+ 00015997  0x000037b9 fetcht  0x00000001 , 0x000046e9 
+ 00015998  0x000037ba call  0x000067fb 
+ 00015999  0x000037bc fetcht  0x00000001 , 0x000046ea 
+ 00016000  0x000037bd call  0x000067fb 
+ 00016001  0x000037be fetcht  0x00000001 , 0x000046eb 
+ 00016002  0x000037bf call  0x000067fb 
+ 00016003  0x000037c1 fetcht  0x00000001 , 0x000046e5 
+ 00016004  0x000037c2 call  0x000067fb 
+ 00016005  0x000037c3 fetcht  0x00000001 , 0x000046e6 
+ 00016006  0x000037c4 call  0x000067fb 
+ 00016007  0x000037c6 fetcht  0x00000001 , 0x000046ef 
+ 00016008  0x000037c7 call  0x0000680e 
+ 00016009  0x000037c9 fetcht  0x00000001 , 0x000046f0 
+ 00016010  0x000037ca call  0x0000680e 
+ 00016011  0x000037cc fetcht  0x00000001 , 0x000046f1 
+ 00016012  0x000037cd call  0x0000680e 
+ 00016013  0x000037cf fetcht  0x00000001 , 0x000046f2 
+ 00016014  0x000037d0 call  0x0000680e 
+ 00016015  0x000037d2 fetcht  0x00000001 , 0x000046f4 
+ 00016016  0x000037d3 call  0x0000680e 
+ 00016017  0x000037d5 fetcht  0x00000001 , 0x000046ed 
+ 00016018  0x000037d6 call  0x000067fb 
+ 00016019  0x000037d8 fetcht  0x00000001 , 0x000046ec 
+ 00016020  0x000037d9 call  0x000067fb 
+ 00016021  0x000037db fetcht  0x00000001 , 0x000046e7 
+ 00016022  0x000037dc branch  0x000067fb 
+ 00016023  0x000037df fetcht  0x00000001 , 0x000046e8 
+ 00016024  0x000037e0 call  0x000067dd 
+ 00016025  0x000037e1 fetcht  0x00000001 , 0x000046e9 
+ 00016026  0x000037e2 call  0x000067dd 
+ 00016027  0x000037e3 fetcht  0x00000001 , 0x000046ea 
+ 00016028  0x000037e4 call  0x000067dd 
+ 00016029  0x000037e5 fetcht  0x00000001 , 0x000046eb 
+ 00016030  0x000037e6 branch  0x000067dd 
+ 00016031  0x000037e9 fetcht  0x00000001 , 0x000046e8 
+ 00016032  0x000037ea call  0x00003ea7 
+ 00016033  0x000037eb fetcht  0x00000001 , 0x000046e9 
+ 00016034  0x000037ec call  0x00003ea7 
+ 00016035  0x000037ed fetcht  0x00000001 , 0x000046ea 
+ 00016036  0x000037ee call  0x00003ea7 
+ 00016037  0x000037ef fetcht  0x00000001 , 0x000046eb 
+ 00016038  0x000037f0 branch  0x00003ea7 
+ 00016039  0x000037f3 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00016040  0x000037f4 rtn  0x00000005 
+ 00016041  0x000037f5 and  0x00000002 , 0x0000007f , 0x00000007 
+ 00016042  0x000037f6 hfetch  0x00000004 , 0x0000811c 
+ 00016043  0x000037f7 qisolate1  0x0000003f 
+ 00016044  0x000037f8 hfetch  0x00000004 , 0x00008078 
+ 00016045  0x000037f9 qsetflag  0x00000001 , 0x0000003f 
+ 00016046  0x000037fa hstore  0x00000004 , 0x00008078 
+ 00016047  0x000037fb hfetch  0x00000004 , 0x0000807c 
+ 00016048  0x000037fc nqsetflag  0x00000001 , 0x0000003f 
+ 00016049  0x000037fd hstore  0x00000004 , 0x0000807c 
+ 00016050  0x000037fe rtn 
+ 00016051  0x00003801 enable  0x00000028 
+ 00016052  0x00003802 hfetch  0x00000004 , 0x00008138 
+ 00016053  0x00003803 setflag  0x00000028 , 0x0000001a , 0x0000003f 
+ 00016054  0x00003804 hstore  0x00000004 , 0x0000804c 
+ 00016055  0x00003805 call  0x00002c21 
+ 00016056  0x00003806 call  0x00004482 
+ 00016057  0x00003807 call  0x00003e9f 
+ 00016058  0x00003809 branch  0x00003ebf 
+ 00016059  0x0000380e call  0x00003ebf 
+ 00016060  0x0000380f fetch  0x00000001 , 0x000000a0 
+ 00016061  0x00003810 nrtn  0x00000034 
+ 00016062  0x00003811 branch  0x000067ed 
+ 00016063  0x00003814 call  0x00003ee0 
+ 00016064  0x00003815 arg  0x00000019 , 0x00000002 
+ 00016065  0x00003816 fetch  0x00000004 , 0x000046d3 
+ 00016066  0x00003817 isolate1  0x00000012 , 0x0000003f 
+ 00016067  0x00003818 call  0x00003ede , 0x00000001 
+ 00016068  0x00003819 call  0x0000680e 
+ 00016069  0x0000381a call  0x000063ee 
+ 00016070  0x0000381e fetcht  0x00000001 , 0x000046e2 
+ 00016071  0x0000381f call  0x000067dd 
+ 00016072  0x00003820 fetcht  0x00000001 , 0x000046e3 
+ 00016073  0x00003821 call  0x000067dd 
+ 00016074  0x00003822 fetcht  0x00000001 , 0x000046e4 
+ 00016075  0x00003823 call  0x000067dd 
+ 00016076  0x00003825 fetcht  0x00000001 , 0x000046e5 
+ 00016077  0x00003826 call  0x000067dd 
+ 00016078  0x00003827 fetcht  0x00000001 , 0x000046e6 
+ 00016079  0x00003828 call  0x000067dd 
+ 00016080  0x00003829 fetcht  0x00000001 , 0x000046e7 
+ 00016081  0x0000382a call  0x000067dd 
+ 00016082  0x0000382b fetcht  0x00000001 , 0x000046ed 
+ 00016083  0x0000382c call  0x000067dd 
+ 00016084  0x0000382d fetcht  0x00000001 , 0x000046e8 
+ 00016085  0x0000382e call  0x000067dd 
+ 00016086  0x0000382f fetcht  0x00000001 , 0x000046e9 
+ 00016087  0x00003830 call  0x000067dd 
+ 00016088  0x00003831 fetcht  0x00000001 , 0x000046ea 
+ 00016089  0x00003832 call  0x000067dd 
+ 00016090  0x00003833 fetcht  0x00000001 , 0x000046eb 
+ 00016091  0x00003834 call  0x000067dd 
+ 00016092  0x00003835 fetcht  0x00000001 , 0x000046f3 
+ 00016093  0x00003836 branch  0x000067e1 
+ 00016094  0x0000383b arg  0x0000001e , 0x00000002 
+ 00016095  0x0000383c rtn 
+ 00016096  0x0000383f bpatch  0x000000e4 , 0x0000401c 
+ 00016097  0x00003840 call  0x00003eee 
+ 00016098  0x00003841 call  0x00003f36 
+ 00016099  0x00003842 fetch  0x00000001 , 0x000046b8 
+ 00016100  0x00003843 fetcht  0x00000001 , 0x000046b7 
+ 00016101  0x00003844 store  0x00000001 , 0x000046b7 
+ 00016102  0x00003845 isub  0x00000002 , 0x0000003e 
+ 00016103  0x00003846 nbranch  0x000033d4 , 0x00000005 
+ 00016104  0x00003847 fetch  0x00000001 , 0x000046be 
+ 00016105  0x00003848 fetcht  0x00000001 , 0x000046bd 
+ 00016106  0x00003849 store  0x00000001 , 0x000046bd 
+ 00016107  0x0000384a isub  0x00000002 , 0x0000003e 
+ 00016108  0x0000384b nbranch  0x000033d4 , 0x00000005 
+ 00016109  0x0000384c rtn 
+ 00016110  0x0000384e fetch  0x00000001 , 0x000046ea 
+ 00016111  0x0000384f rtneq  0x000000ff 
+ 00016112  0x00003850 arg  0x00000000 , 0x00000011 
+ 00016113  0x00003851 fetcht  0x00000001 , 0x000046ea 
+ 00016114  0x00003852 call  0x0000681d 
+ 00016115  0x00003853 setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00016116  0x00003854 fetcht  0x00000001 , 0x000046eb 
+ 00016117  0x00003855 call  0x0000681d 
+ 00016118  0x00003856 setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00016119  0x00003857 copy  0x00000011 , 0x0000003f 
+ 00016120  0x00003858 store  0x00000001 , 0x000046b8 
+ 00016121  0x00003859 beq  0x00000001 , 0x00003efe 
+ 00016122  0x0000385a beq  0x00000002 , 0x00003f02 
+ 00016123  0x0000385b fetch  0x00000001 , 0x000046b9 
+ 00016124  0x0000385c bbit1  0x00000007 , 0x00003f0e 
+ 00016125  0x0000385d rtn 
+ 00016126  0x00003860 fetch  0x00000001 , 0x000046b7 
+ 00016127  0x00003861 beq  0x00000000 , 0x00003f06 
+ 00016128  0x00003862 beq  0x00000003 , 0x00003f08 
+ 00016129  0x00003863 rtn 
+ 00016130  0x00003865 fetch  0x00000001 , 0x000046b7 
+ 00016131  0x00003866 beq  0x00000000 , 0x00003f0a 
+ 00016132  0x00003867 beq  0x00000003 , 0x00003f0c 
+ 00016133  0x00003868 rtn 
+ 00016134  0x0000386a jam  0x00000082 , 0x000046b9 
+ 00016135  0x0000386b rtn 
+ 00016136  0x0000386d jam  0x00000081 , 0x000046b9 
+ 00016137  0x0000386e rtn 
+ 00016138  0x00003870 jam  0x00000080 , 0x000046b9 
+ 00016139  0x00003871 rtn 
+ 00016140  0x00003873 jam  0x00000083 , 0x000046b9 
+ 00016141  0x00003874 rtn 
+ 00016142  0x00003876 fetch  0x00000001 , 0x000046b9 
+ 00016143  0x00003877 set0  0x00000007 , 0x0000003f 
+ 00016144  0x00003878 store  0x00000001 , 0x000046b9 
+ 00016145  0x00003879 beq  0x00000000 , 0x00003f16 
+ 00016146  0x0000387a beq  0x00000001 , 0x00003f19 
+ 00016147  0x0000387b beq  0x00000002 , 0x00003f1c 
+ 00016148  0x0000387c beq  0x00000003 , 0x00003f1f 
+ 00016149  0x0000387d rtn 
+ 00016150  0x0000387f fetch  0x00000001 , 0x000046b8 
+ 00016151  0x00003880 beq  0x00000003 , 0x00003f22 
+ 00016152  0x00003881 rtn 
+ 00016153  0x00003883 fetch  0x00000001 , 0x000046b8 
+ 00016154  0x00003884 beq  0x00000000 , 0x00003f22 
+ 00016155  0x00003885 rtn 
+ 00016156  0x00003887 fetch  0x00000001 , 0x000046b8 
+ 00016157  0x00003888 beq  0x00000003 , 0x00003f2c 
+ 00016158  0x00003889 rtn 
+ 00016159  0x0000388b fetch  0x00000001 , 0x000046b8 
+ 00016160  0x0000388c beq  0x00000000 , 0x00003f2c 
+ 00016161  0x0000388d rtn 
+ 00016162  0x0000388f fetch  0x00000001 , 0x000046bc 
+ 00016163  0x00003890 increase  0x00000001 , 0x0000003f 
+ 00016164  0x00003891 store  0x00000001 , 0x000046bc 
+ 00016165  0x00003892 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00016166  0x00003893 rtn  0x00000002 
+ 00016167  0x00003894 jam  0x00000000 , 0x000046bc 
+ 00016168  0x00003895 fetch  0x00000001 , 0x000046ba 
+ 00016169  0x00003896 increase  0x00000001 , 0x0000003f 
+ 00016170  0x00003897 store  0x00000001 , 0x000046ba 
+ 00016171  0x00003898 rtn 
+ 00016172  0x0000389a fetch  0x00000001 , 0x000046bb 
+ 00016173  0x0000389b increase  0x00000001 , 0x0000003f 
+ 00016174  0x0000389c store  0x00000001 , 0x000046bb 
+ 00016175  0x0000389d sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00016176  0x0000389e rtn  0x00000002 
+ 00016177  0x0000389f jam  0x00000000 , 0x000046bb 
+ 00016178  0x000038a0 fetch  0x00000001 , 0x000046ba 
+ 00016179  0x000038a1 increase  0xffffffff , 0x0000003f 
+ 00016180  0x000038a2 store  0x00000001 , 0x000046ba 
+ 00016181  0x000038a3 rtn 
+ 00016182  0x000038a7 fetch  0x00000001 , 0x000046e8 
+ 00016183  0x000038a8 rtneq  0x000000ff 
+ 00016184  0x000038a9 arg  0x00000000 , 0x00000011 
+ 00016185  0x000038aa fetcht  0x00000001 , 0x000046e8 
+ 00016186  0x000038ab call  0x0000681d 
+ 00016187  0x000038ac setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00016188  0x000038ad fetcht  0x00000001 , 0x000046e9 
+ 00016189  0x000038ae call  0x0000681d 
+ 00016190  0x000038af setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00016191  0x000038b0 copy  0x00000011 , 0x0000003f 
+ 00016192  0x000038b1 store  0x00000001 , 0x000046be 
+ 00016193  0x000038b2 beq  0x00000001 , 0x00003f46 
+ 00016194  0x000038b3 beq  0x00000002 , 0x00003f4a 
+ 00016195  0x000038b4 fetch  0x00000001 , 0x000046bf 
+ 00016196  0x000038b5 bbit1  0x00000007 , 0x00003f56 
+ 00016197  0x000038b6 rtn 
+ 00016198  0x000038b9 fetch  0x00000001 , 0x000046bd 
+ 00016199  0x000038ba beq  0x00000000 , 0x00003f4e 
+ 00016200  0x000038bb beq  0x00000003 , 0x00003f50 
+ 00016201  0x000038bc rtn 
+ 00016202  0x000038be fetch  0x00000001 , 0x000046bd 
+ 00016203  0x000038bf beq  0x00000000 , 0x00003f52 
+ 00016204  0x000038c0 beq  0x00000003 , 0x00003f54 
+ 00016205  0x000038c1 rtn 
+ 00016206  0x000038c3 jam  0x00000082 , 0x000046bf 
+ 00016207  0x000038c4 rtn 
+ 00016208  0x000038c6 jam  0x00000081 , 0x000046bf 
+ 00016209  0x000038c7 rtn 
+ 00016210  0x000038c9 jam  0x00000080 , 0x000046bf 
+ 00016211  0x000038ca rtn 
+ 00016212  0x000038cc jam  0x00000083 , 0x000046bf 
+ 00016213  0x000038cd rtn 
+ 00016214  0x000038cf fetch  0x00000001 , 0x000046bf 
+ 00016215  0x000038d0 set0  0x00000007 , 0x0000003f 
+ 00016216  0x000038d1 store  0x00000001 , 0x000046bf 
+ 00016217  0x000038d2 beq  0x00000000 , 0x00003f5e 
+ 00016218  0x000038d3 beq  0x00000001 , 0x00003f61 
+ 00016219  0x000038d4 beq  0x00000002 , 0x00003f64 
+ 00016220  0x000038d5 beq  0x00000003 , 0x00003f67 
+ 00016221  0x000038d6 rtn 
+ 00016222  0x000038d8 fetch  0x00000001 , 0x000046be 
+ 00016223  0x000038d9 beq  0x00000003 , 0x00003f6a 
+ 00016224  0x000038da rtn 
+ 00016225  0x000038dc fetch  0x00000001 , 0x000046be 
+ 00016226  0x000038dd beq  0x00000000 , 0x00003f6a 
+ 00016227  0x000038de rtn 
+ 00016228  0x000038e0 fetch  0x00000001 , 0x000046be 
+ 00016229  0x000038e1 beq  0x00000003 , 0x00003f6f 
+ 00016230  0x000038e2 rtn 
+ 00016231  0x000038e4 fetch  0x00000001 , 0x000046be 
+ 00016232  0x000038e5 beq  0x00000000 , 0x00003f6f 
+ 00016233  0x000038e6 rtn 
+ 00016234  0x000038e8 jam  0x00000000 , 0x000046c2 
+ 00016235  0x000038e9 fetch  0x00000001 , 0x000046c0 
+ 00016236  0x000038ea increase  0x00000001 , 0x0000003f 
+ 00016237  0x000038eb store  0x00000001 , 0x000046c0 
+ 00016238  0x000038ec rtn 
+ 00016239  0x000038ee jam  0x00000000 , 0x000046c1 
+ 00016240  0x000038ef fetch  0x00000001 , 0x000046c0 
+ 00016241  0x000038f0 increase  0xffffffff , 0x0000003f 
+ 00016242  0x000038f1 store  0x00000001 , 0x000046c0 
+ 00016243  0x000038f2 rtn 
+ 00016244  0x000038f6 setarg  0x00000002 
+ 00016245  0x000038f7 store  0x00000001 , 0x00004680 
+ 00016246  0x000038f8 rtn 
+ 00016247  0x000038fb fetch  0x00000001 , 0x000041e2 
+ 00016248  0x000038fc rtn  0x00000034 
+ 00016249  0x000038fd call  0x00005271 
+ 00016250  0x000038fe nrtn  0x00000034 
+ 00016251  0x000038ff fetch  0x00000004 , 0x000046d3 
+ 00016252  0x00003900 bbit1  0x00000003 , 0x00003f8a 
+ 00016253  0x00003901 bbit1  0x00000000 , 0x00003f8a 
+ 00016254  0x00003902 bbit1  0x00000005 , 0x00003f8a 
+ 00016255  0x00003903 call  0x00003f97 
+ 00016256  0x00003904 nrtn  0x00000028 
+ 00016257  0x00003906 arg  0x00000009 , 0x00000011 
+ 00016258  0x00003907 call  0x00004d63 
+ 00016259  0x00003908 fetch  0x00000002 , 0x0000424e 
+ 00016260  0x00003909 istore  0x00000002 , 0x00000005 
+ 00016261  0x0000390a setarg  0x000002a1 
+ 00016262  0x0000390b istore  0x00000002 , 0x00000005 
+ 00016263  0x0000390c fetch  0x00000007 , 0x0000469a 
+ 00016264  0x0000390d istore  0x00000007 , 0x00000005 
+ 00016265  0x0000390e rtn 
+ 00016266  0x00003912 setarg  0x00000000 
+ 00016267  0x00003913 store  0x00000007 , 0x0000469a 
+ 00016268  0x00003914 branch  0x00003f81 
+ 00016269  0x00003918 fetch  0x00000002 , 0x000046aa 
+ 00016270  0x00003919 store  0x00000002 , 0x000046b0 
+ 00016271  0x0000391a rtn 
+ 00016272  0x0000391e bpatch  0x000000e5 , 0x0000401c 
+ 00016273  0x0000391f arg  0x00000007 , 0x00000011 
+ 00016274  0x00003920 fetcht  0x00000002 , 0x0000446f 
+ 00016275  0x00003921 call  0x00005a64 
+ 00016276  0x00003922 fetch  0x00000007 , 0x0000469a 
+ 00016277  0x00003923 istore  0x00000007 , 0x00000005 
+ 00016278  0x00003924 rtn 
+ 00016279  0x00003927 bpatch  0x000000e6 , 0x0000401c 
+ 00016280  0x00003928 disable  0x00000028 
+ 00016281  0x00003929 setarg  0x00000000 
+ 00016282  0x0000392a store  0x00000006 , 0x0000469b 
+ 00016283  0x0000392b call  0x00003fb5 
+ 00016284  0x0000392c call  0x00004079 
+ 00016285  0x0000392d call  0x0000407e 
+ 00016286  0x0000392e call  0x00004099 
+ 00016287  0x0000392f nrtn  0x00000028 
+ 00016288  0x00003930 call  0x00003f8d 
+ 00016289  0x00003931 arg  0x00000008 , 0x00000007 
+ 00016290  0x00003932 branch  0x000043ce 
+ 00016291  0x00003935 fetch  0x00000002 , 0x0000469b 
+ 00016292  0x00003936 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016293  0x00003937 store  0x00000002 , 0x0000469b 
+ 00016294  0x00003938 branch  0x00007fe7 
+ 00016295  0x0000393a fetch  0x00000002 , 0x0000469d 
+ 00016296  0x0000393b sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016297  0x0000393c store  0x00000002 , 0x0000469d 
+ 00016298  0x0000393d branch  0x00007fe7 
+ 00016299  0x0000393f fetch  0x00000002 , 0x0000469d 
+ 00016300  0x00003940 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016301  0x00003941 store  0x00000002 , 0x0000469d 
+ 00016302  0x00003942 fetch  0x00000002 , 0x0000469b 
+ 00016303  0x00003943 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00016304  0x00003944 store  0x00000002 , 0x0000469b 
+ 00016305  0x00003945 call  0x00004002 
+ 00016306  0x00003946 branch  0x00007fe7 
+ 00016307  0x00003948 call  0x00004002 
+ 00016308  0x00003949 branch  0x00007fe7 
+ 00016309  0x0000394b fetch  0x00000001 , 0x00004239 
+ 00016310  0x0000394c rtnne  0x00000000 
+ 00016311  0x0000394d fetch  0x00000001 , 0x000046e0 
+ 00016312  0x0000394e beq  0x00000000 , 0x00003fe2 
+ 00016313  0x0000394f beq  0x00000001 , 0x00003fe2 
+ 00016314  0x00003950 beq  0x00000002 , 0x00003fe2 
+ 00016315  0x00003951 beq  0x00000003 , 0x00003fe2 
+ 00016316  0x00003952 beq  0x00000004 , 0x00003fc4 
+ 00016317  0x00003953 beq  0x00000005 , 0x00004010 
+ 00016318  0x00003954 beq  0x00000006 , 0x00003fe2 
+ 00016319  0x00003955 branch  0x00003fe2 
+ 00016320  0x00003958 fetch  0x00000001 , 0x000046a7 
+ 00016321  0x00003959 call  0x0000405d , 0x00000034 
+ 00016322  0x0000395a jam  0x00000001 , 0x000046a7 
+ 00016323  0x0000395b rtn 
+ 00016324  0x0000395f call  0x00003fc0 
+ 00016325  0x00003960 fetcht  0x00000001 , 0x000046f3 
+ 00016326  0x00003961 call  0x0000681d 
+ 00016327  0x00003962 nrtn  0x00000001 
+ 00016328  0x00003963 setarg  0x00000000 
+ 00016329  0x00003964 call  0x00006414 
+ 00016330  0x00003965 bne  0x00000030 , 0x000040d1 
+ 00016331  0x00003966 setarg  0x00000002 
+ 00016332  0x00003967 call  0x00006414 
+ 00016333  0x00003968 rtnbit0  0x00000007 
+ 00016334  0x00003969 call  0x0000405d 
+ 00016335  0x0000396a call  0x00003fde 
+ 00016336  0x0000396b store  0x00000001 , 0x000046a1 
+ 00016337  0x0000396c rshift4  0x0000003f , 0x0000003f 
+ 00016338  0x0000396d call  0x00004169 
+ 00016339  0x0000396e store  0x00000001 , 0x0000469c 
+ 00016340  0x0000396f fetch  0x00000001 , 0x000046a1 
+ 00016341  0x00003970 and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00016342  0x00003971 call  0x00004169 
+ 00016343  0x00003972 store  0x00000001 , 0x0000469e 
+ 00016344  0x00003973 fetch  0x00000001 , 0x000046f6 
+ 00016345  0x00003974 beq  0x00000000 , 0x00003fa3 
+ 00016346  0x00003975 beq  0x00000001 , 0x00003fab 
+ 00016347  0x00003976 beq  0x00000002 , 0x00003fa7 
+ 00016348  0x00003977 beq  0x00000003 , 0x00003fb3 
+ 00016349  0x00003978 rtn 
+ 00016350  0x0000397b setarg  0x00000012 
+ 00016351  0x0000397c branch  0x00006414 
+ 00016352  0x0000397f beq  0x00000031 , 0x00003fea 
+ 00016353  0x00003980 branch  0x000040d1 
+ 00016354  0x00003983 call  0x00003fc0 
+ 00016355  0x00003984 disable  0x00000028 
+ 00016356  0x00003985 fetcht  0x00000001 , 0x000046f3 
+ 00016357  0x00003986 call  0x0000681d 
+ 00016358  0x00003987 nrtn  0x00000001 
+ 00016359  0x00003989 setarg  0x00000000 
+ 00016360  0x0000398a call  0x00006414 
+ 00016361  0x0000398b bne  0x00000030 , 0x00003fe0 
+ 00016362  0x0000398d setarg  0x00000002 
+ 00016363  0x0000398e call  0x00006414 
+ 00016364  0x0000398f rtnbit0  0x00000007 
+ 00016365  0x00003990 call  0x0000405d 
+ 00016366  0x00003991 fetch  0x00000001 , 0x0000469b 
+ 00016367  0x00003992 call  0x00004165 
+ 00016368  0x00003993 store  0x00000002 , 0x0000469b 
+ 00016369  0x00003994 fetch  0x00000001 , 0x0000469d 
+ 00016370  0x00003995 call  0x00004165 
+ 00016371  0x00003996 store  0x00000002 , 0x0000469d 
+ 00016372  0x00003997 fetch  0x00000001 , 0x000046f6 
+ 00016373  0x00003998 beq  0x00000000 , 0x00003ffa 
+ 00016374  0x00003999 beq  0x00000001 , 0x00003ffc 
+ 00016375  0x0000399a beq  0x00000002 , 0x00003ffe 
+ 00016376  0x0000399b beq  0x00000003 , 0x00004000 
+ 00016377  0x0000399c rtn 
+ 00016378  0x0000399f call  0x00003fa3 
+ 00016379  0x000039a0 branch  0x000040b3 
+ 00016380  0x000039a2 call  0x00003fab 
+ 00016381  0x000039a3 branch  0x000040b3 
+ 00016382  0x000039a5 call  0x00003fa7 
+ 00016383  0x000039a6 branch  0x000040b3 
+ 00016384  0x000039a8 call  0x00003fb3 
+ 00016385  0x000039a9 branch  0x000040b3 
+ 00016386  0x000039ac fetch  0x00000002 , 0x0000469d 
+ 00016387  0x000039ad fetcht  0x00000002 , 0x0000469b 
+ 00016388  0x000039ae store  0x00000002 , 0x0000469b 
+ 00016389  0x000039af storet  0x00000002 , 0x0000469d 
+ 00016390  0x000039b0 rtn 
+ 00016391  0x000039b3 call  0x0000640f 
+ 00016392  0x000039b4 nop  0x00000064 
+ 00016393  0x000039b5 copy  0x00000012 , 0x0000003f 
+ 00016394  0x000039b6 call  0x00006414 
+ 00016395  0x000039b7 copy  0x0000003f , 0x00000012 
+ 00016396  0x000039b8 call  0x00006411 
+ 00016397  0x000039b9 nop  0x00000064 
+ 00016398  0x000039ba copy  0x00000012 , 0x0000003f 
+ 00016399  0x000039bb rtn 
+ 00016400  0x000039bd disable  0x00000028 
+ 00016401  0x000039be fetcht  0x00000001 , 0x000046f3 
+ 00016402  0x000039bf call  0x0000681d 
+ 00016403  0x000039c0 nrtn  0x00000001 
+ 00016404  0x000039c1 arg  0x00000002 , 0x00000012 
+ 00016405  0x000039c2 call  0x00004007 
+ 00016406  0x000039c3 rtnbit0  0x00000007 
+ 00016407  0x000039c4 arg  0x00000000 , 0x00000012 
+ 00016408  0x000039c5 call  0x00004007 
+ 00016409  0x000039c6 store  0x00000001 , 0x000046dd 
+ 00016410  0x000039c7 bne  0x0000003e , 0x00004145 
+ 00016411  0x000039c8 fetch  0x00000001 , 0x000046a7 
+ 00016412  0x000039c9 call  0x00004039 , 0x00000034 
+ 00016413  0x000039ca jam  0x00000001 , 0x000046a7 
+ 00016414  0x000039cb call  0x00004039 
+ 00016415  0x000039cc fetch  0x00000001 , 0x000046a1 
+ 00016416  0x000039cd rshift4  0x0000003f , 0x0000003f 
+ 00016417  0x000039ce call  0x00004169 
+ 00016418  0x000039cf store  0x00000001 , 0x0000469c 
+ 00016419  0x000039d0 fetch  0x00000001 , 0x000046a1 
+ 00016420  0x000039d1 and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00016421  0x000039d2 call  0x00004169 
+ 00016422  0x000039d3 store  0x00000001 , 0x0000469e 
+ 00016423  0x000039d4 fetch  0x00000001 , 0x000046f6 
+ 00016424  0x000039d5 beq  0x00000000 , 0x00004031 
+ 00016425  0x000039d6 beq  0x00000001 , 0x00004035 
+ 00016426  0x000039d7 beq  0x00000002 , 0x00004033 
+ 00016427  0x000039d8 beq  0x00000003 , 0x00004037 
+ 00016428  0x000039d9 rtn 
+ 00016429  0x000039dc fetch  0x00000001 , 0x000046a4 
+ 00016430  0x000039dd beq  0x00000000 , 0x00004051 
+ 00016431  0x000039de beq  0x00000001 , 0x00004045 
+ 00016432  0x000039df rtn 
+ 00016433  0x000039e3 call  0x00003fa3 
+ 00016434  0x000039e4 branch  0x0000402d 
+ 00016435  0x000039e7 call  0x00003fa7 
+ 00016436  0x000039e8 branch  0x0000402d 
+ 00016437  0x000039eb call  0x00003fab 
+ 00016438  0x000039ec branch  0x0000402d 
+ 00016439  0x000039ef call  0x00003fb3 
+ 00016440  0x000039f0 branch  0x0000402d 
+ 00016441  0x000039f3 call  0x0000640f 
+ 00016442  0x000039f4 call  0x0000405d 
+ 00016443  0x000039f5 arg  0x00000005 , 0x0000003f 
+ 00016444  0x000039f6 call  0x00006414 
+ 00016445  0x000039f7 store  0x00000001 , 0x000046a1 
+ 00016446  0x000039f8 arg  0x00000007 , 0x0000003f 
+ 00016447  0x000039f9 call  0x00006414 
+ 00016448  0x000039fa store  0x00000001 , 0x000046a2 
+ 00016449  0x000039fb arg  0x00000008 , 0x0000003f 
+ 00016450  0x000039fc call  0x00006414 
+ 00016451  0x000039fd store  0x00000001 , 0x000046a3 
+ 00016452  0x000039fe branch  0x00006411 
+ 00016453  0x00003a02 fetch  0x00000001 , 0x000046a2 
+ 00016454  0x00003a03 rtnne  0x00000000 
+ 00016455  0x00003a04 fetch  0x00000001 , 0x000046a3 
+ 00016456  0x00003a05 sub  0x0000003f , 0x0000002d , 0x0000003e 
+ 00016457  0x00003a06 rtn  0x00000002 
+ 00016458  0x00003a07 jam  0x00000000 , 0x000046a4 
+ 00016459  0x00003a08 setarg  0x0000ba41 
+ 00016460  0x00003a09 call  0x00006405 
+ 00016461  0x00003a0a setarg  0x00000032 
+ 00016462  0x00003a0b call  0x00006405 
+ 00016463  0x00003a0c setarg  0x0000b541 
+ 00016464  0x00003a0d branch  0x00006405 
+ 00016465  0x00003a0f fetch  0x00000001 , 0x000046a2 
+ 00016466  0x00003a10 rtnne  0x00000000 
+ 00016467  0x00003a11 fetch  0x00000001 , 0x000046a3 
+ 00016468  0x00003a12 sub  0x0000003f , 0x0000002d , 0x0000003e 
+ 00016469  0x00003a13 nrtn  0x00000002 
+ 00016470  0x00003a14 jam  0x00000001 , 0x000046a4 
+ 00016471  0x00003a15 setarg  0x0000ba41 
+ 00016472  0x00003a16 call  0x00006405 
+ 00016473  0x00003a17 setarg  0x00008032 
+ 00016474  0x00003a18 call  0x00006405 
+ 00016475  0x00003a19 setarg  0x0000b541 
+ 00016476  0x00003a1a branch  0x00006405 
+ 00016477  0x00003a1f arg  0x00000003 , 0x0000003f 
+ 00016478  0x00003a20 call  0x00006414 
+ 00016479  0x00003a21 store  0x00000002 , 0x0000469b 
+ 00016480  0x00003a22 arg  0x00000004 , 0x0000003f 
+ 00016481  0x00003a23 call  0x00006414 
+ 00016482  0x00003a24 store  0x00000002 , 0x0000469d 
+ 00016483  0x00003a25 rtn 
+ 00016484  0x00003a28 arg  0x0000001b , 0x00000002 
+ 00016485  0x00003a29 call  0x000067fb 
+ 00016486  0x00003a2a arg  0x0000001b , 0x00000002 
+ 00016487  0x00003a2b call  0x0000681d 
+ 00016488  0x00003a2c rtn  0x00000001 
+ 00016489  0x00003a2d hfetch  0x00000001 , 0x00008109 
+ 00016490  0x00003a2e set1  0x00000004 , 0x0000003f 
+ 00016491  0x00003a2f hstore  0x00000001 , 0x00008109 
+ 00016492  0x00003a30 rtn 
+ 00016493  0x00003a33 fetcht  0x00000001 , 0x000046c0 
+ 00016494  0x00003a34 hfetch  0x00000001 , 0x00008109 
+ 00016495  0x00003a35 iadd  0x00000002 , 0x0000003f 
+ 00016496  0x00003a36 rtn  0x00000034 
+ 00016497  0x00003a37 store  0x00000001 , 0x0000469f 
+ 00016498  0x00003a38 jam  0x00000000 , 0x000046c0 
+ 00016499  0x00003a39 branch  0x00007fe7 
+ 00016500  0x00003a3b fetcht  0x00000001 , 0x000046c0 
+ 00016501  0x00003a3c hfetch  0x00000001 , 0x00008109 
+ 00016502  0x00003a3d iadd  0x00000002 , 0x0000003f 
+ 00016503  0x00003a3e store  0x00000001 , 0x000046c0 
+ 00016504  0x00003a3f rtn 
+ 00016505  0x00003a41 fetch  0x00000001 , 0x000046c0 
+ 00016506  0x00003a42 rtn  0x00000034 
+ 00016507  0x00003a43 store  0x00000001 , 0x0000469f 
+ 00016508  0x00003a44 jam  0x00000000 , 0x000046c0 
+ 00016509  0x00003a45 branch  0x00007fe7 
+ 00016510  0x00003a48 fetch  0x00000001 , 0x000046ba 
+ 00016511  0x00003a49 rtn  0x00000034 
+ 00016512  0x00003a4a store  0x00000001 , 0x000046a0 
+ 00016513  0x00003a4b jam  0x00000000 , 0x000046ba 
+ 00016514  0x00003a4c branch  0x00007fe7 
+ 00016515  0x00003a4f arg  0x00000000 , 0x00000011 
+ 00016516  0x00003a50 fetcht  0x00000001 , 0x000046e2 
+ 00016517  0x00003a51 call  0x0000681d 
+ 00016518  0x00003a52 setflag  0x00000001 , 0x00000000 , 0x00000011 
+ 00016519  0x00003a53 fetcht  0x00000001 , 0x000046e3 
+ 00016520  0x00003a54 call  0x0000681d 
+ 00016521  0x00003a55 setflag  0x00000001 , 0x00000001 , 0x00000011 
+ 00016522  0x00003a56 fetcht  0x00000001 , 0x000046e4 
+ 00016523  0x00003a57 call  0x0000681d 
+ 00016524  0x00003a58 setflag  0x00000001 , 0x00000002 , 0x00000011 
+ 00016525  0x00003a59 call  0x00004090 
+ 00016526  0x00003a5b copy  0x00000011 , 0x0000003f 
+ 00016527  0x00003a5c rtn 
+ 00016528  0x00003a5e fetch  0x00000001 , 0x000046e5 
+ 00016529  0x00003a5f rtneq  0x000000ff 
+ 00016530  0x00003a60 fetcht  0x00000001 , 0x000046e5 
+ 00016531  0x00003a61 call  0x0000681d 
+ 00016532  0x00003a62 setflag  0x00000001 , 0x00000003 , 0x00000011 
+ 00016533  0x00003a63 fetcht  0x00000001 , 0x000046e6 
+ 00016534  0x00003a64 call  0x0000681d 
+ 00016535  0x00003a65 setflag  0x00000001 , 0x00000004 , 0x00000011 
+ 00016536  0x00003a66 rtn 
+ 00016537  0x00003a69 call  0x00004083 
+ 00016538  0x00003a6a call  0x000040a8 
+ 00016539  0x00003a6b call  0x000040a3 
+ 00016540  0x00003a6c copy  0x00000011 , 0x0000003f 
+ 00016541  0x00003a6d fetcht  0x00000001 , 0x0000469a 
+ 00016542  0x00003a6e store  0x00000001 , 0x0000469a 
+ 00016543  0x00003a6f ixor  0x00000002 , 0x0000003f 
+ 00016544  0x00003a70 sub  0x0000003f , 0x00000000 , 0x0000003e 
+ 00016545  0x00003a71 rtn  0x00000005 
+ 00016546  0x00003a72 branch  0x00007fe7 
+ 00016547  0x00003a75 rtnmark0  0x00000026 
+ 00016548  0x00003a76 copy  0x00000011 , 0x0000003f 
+ 00016549  0x00003a77 rtn  0x00000034 
+ 00016550  0x00003a78 store  0x00000001 , 0x0000469a 
+ 00016551  0x00003a79 branch  0x00007fe7 
+ 00016552  0x00003a7d fetch  0x00000002 , 0x00004682 
+ 00016553  0x00003a7e bbit1  0x00000009 , 0x000040ad 
+ 00016554  0x00003a7f fetch  0x00000002 , 0x00004682 
+ 00016555  0x00003a80 bbit1  0x00000000 , 0x000040b0 
+ 00016556  0x00003a81 rtn 
+ 00016557  0x00003a83 copy  0x00000011 , 0x0000003f 
+ 00016558  0x00003a84 nbranch  0x00005820 , 0x00000034 
+ 00016559  0x00003a85 branch  0x00005822 
+ 00016560  0x00003a87 copy  0x00000011 , 0x0000003f 
+ 00016561  0x00003a88 nbranch  0x00002bc7 , 0x00000034 
+ 00016562  0x00003a89 branch  0x00002bc9 
+ 00016563  0x00003a8d bpatch  0x000000e7 , 0x0000401c 
+ 00016564  0x00003a8e arg  0x0000001a , 0x00000002 
+ 00016565  0x00003a8f fetch  0x00000004 , 0x000046d3 
+ 00016566  0x00003a90 isolate1  0x00000012 , 0x0000003f 
+ 00016567  0x00003a91 call  0x000040be , 0x00000001 
+ 00016568  0x00003a92 call  0x0000681d 
+ 00016569  0x00003a93 rtn  0x00000001 
+ 00016570  0x00003a94 setarg  0x0000000a 
+ 00016571  0x00003a95 call  0x00006414 
+ 00016572  0x00003a96 nop  0x000003e8 
+ 00016573  0x00003a97 branch  0x000040b3 
+ 00016574  0x00003a99 arg  0x0000001f , 0x00000002 
+ 00016575  0x00003a9a rtn 
+ 00016576  0x00003a9d fetch  0x00000004 , 0x000046d3 
+ 00016577  0x00003a9e bbit1  0x00000012 , 0x000040c4 
+ 00016578  0x00003aa0 arg  0x0000001a , 0x00000002 
+ 00016579  0x00003aa1 branch  0x000067fe 
+ 00016580  0x00003aa3 arg  0x0000001f , 0x00000002 
+ 00016581  0x00003aa4 branch  0x000067fe 
+ 00016582  0x00003aa8 call  0x00003d36 
+ 00016583  0x00003aa9 rtn  0x0000002b 
+ 00016584  0x00003aaa call  0x000040c0 
+ 00016585  0x00003aab fetch  0x00000001 , 0x000046e0 
+ 00016586  0x00003aac beq  0x00000005 , 0x000040d5 
+ 00016587  0x00003aae call  0x000040d9 
+ 00016588  0x00003aaf beq  0x00000030 , 0x000040e0 
+ 00016589  0x00003ab0 beq  0x00000031 , 0x000040ea 
+ 00016590  0x00003ab1 call  0x000040d1 
+ 00016591  0x00003ab2 nop  0x000003e8 
+ 00016592  0x00003ab3 branch  0x000040cb 
+ 00016593  0x00003ab5 bpatch  0x000000e8 , 0x0000401d 
+ 00016594  0x00003ab6 fetch  0x00000004 , 0x000046d3 
+ 00016595  0x00003ab7 bbit1  0x00000012 , 0x000063e0 
+ 00016596  0x00003ab8 branch  0x000063d1 
+ 00016597  0x00003abb call  0x000040d9 
+ 00016598  0x00003abc beq  0x0000003e , 0x0000414b 
+ 00016599  0x00003abd call  0x00004145 
+ 00016600  0x00003abe branch  0x000040d5 
+ 00016601  0x00003ac1 setarg  0x00000001 
+ 00016602  0x00003ac2 call  0x00006414 
+ 00016603  0x00003ac3 store  0x00000001 , 0x000046de 
+ 00016604  0x00003ac4 setarg  0x00000000 
+ 00016605  0x00003ac5 call  0x00006414 
+ 00016606  0x00003ac6 store  0x00000001 , 0x000046dd 
+ 00016607  0x00003ac7 rtn 
+ 00016608  0x00003ac9 fetch  0x00000001 , 0x000046de 
+ 00016609  0x00003aca beq  0x000000d1 , 0x00004139 
+ 00016610  0x00003acb beq  0x000000d2 , 0x000040f8 
+ 00016611  0x00003acc beq  0x00000002 , 0x000040ee 
+ 00016612  0x00003acd beq  0x00000054 , 0x000040e6 
+ 00016613  0x00003ace rtn 
+ 00016614  0x00003ad0 jam  0x00000002 , 0x000046e0 
+ 00016615  0x00003ad1 rtn 
+ 00016616  0x00003ad3 jam  0x00000006 , 0x000046e0 
+ 00016617  0x00003ad4 rtn 
+ 00016618  0x00003ad6 fetch  0x00000001 , 0x000046de 
+ 00016619  0x00003ad7 beq  0x00000070 , 0x000040e8 
+ 00016620  0x00003ad8 jam  0x00000001 , 0x000046e0 
+ 00016621  0x00003ad9 rtn 
+ 00016622  0x00003adb jam  0x00000004 , 0x000046e0 
+ 00016623  0x00003adc call  0x000040f6 
+ 00016624  0x00003add setarg  0x00003426 
+ 00016625  0x00003ade call  0x00006413 
+ 00016626  0x00003adf setarg  0x00000419 
+ 00016627  0x00003ae0 call  0x00006413 
+ 00016628  0x00003ae2 setarg  0x00000009 
+ 00016629  0x00003ae3 branch  0x00006413 
+ 00016630  0x00003ae5 setarg  0x00005a09 
+ 00016631  0x00003ae6 branch  0x00006413 
+ 00016632  0x00003ae9 jam  0x00000003 , 0x000046e0 
+ 00016633  0x00003aea call  0x000040f6 
+ 00016634  0x00003aeb setarg  0x00000f0d 
+ 00016635  0x00003aec call  0x00006413 
+ 00016636  0x00003aed setarg  0x0000e31d 
+ 00016637  0x00003aee call  0x00006413 
+ 00016638  0x00003aef setarg  0x0000d27d 
+ 00016639  0x00003af0 call  0x00006413 
+ 00016640  0x00003af1 call  0x00004102 
+ 00016641  0x00003af2 branch  0x0000411a 
+ 00016642  0x00003af5 setarg  0x0000351b 
+ 00016643  0x00003af6 call  0x00006413 
+ 00016644  0x00003af7 setarg  0x0000b428 
+ 00016645  0x00003af8 call  0x00006413 
+ 00016646  0x00003af9 setarg  0x00004629 
+ 00016647  0x00003afa call  0x00006413 
+ 00016648  0x00003afb setarg  0x0000962a 
+ 00016649  0x00003afc call  0x00006413 
+ 00016650  0x00003afd setarg  0x00008c2b 
+ 00016651  0x00003afe call  0x00006413 
+ 00016652  0x00003aff setarg  0x00006e2c 
+ 00016653  0x00003b00 call  0x00006413 
+ 00016654  0x00003b01 setarg  0x0000642d 
+ 00016655  0x00003b02 call  0x00006413 
+ 00016656  0x00003b03 setarg  0x00005f38 
+ 00016657  0x00003b04 call  0x00006413 
+ 00016658  0x00003b05 setarg  0x00000f39 
+ 00016659  0x00003b06 call  0x00006413 
+ 00016660  0x00003b07 setarg  0x0000323a 
+ 00016661  0x00003b08 call  0x00006413 
+ 00016662  0x00003b09 setarg  0x0000473b 
+ 00016663  0x00003b0a call  0x00006413 
+ 00016664  0x00003b0b setarg  0x00001042 
+ 00016665  0x00003b0c branch  0x00006413 
+ 00016666  0x00003b0e setarg  0x00002e54 
+ 00016667  0x00003b0f call  0x00006413 
+ 00016668  0x00003b10 setarg  0x0000f255 
+ 00016669  0x00003b11 call  0x00006413 
+ 00016670  0x00003b12 setarg  0x0000f461 
+ 00016671  0x00003b13 call  0x00006413 
+ 00016672  0x00003b14 setarg  0x00007063 
+ 00016673  0x00003b15 call  0x00006413 
+ 00016674  0x00003b16 setarg  0x00005275 
+ 00016675  0x00003b17 call  0x00006413 
+ 00016676  0x00003b18 setarg  0x00004176 
+ 00016677  0x00003b19 call  0x00006413 
+ 00016678  0x00003b1a setarg  0x0000ed77 
+ 00016679  0x00003b1b call  0x00006413 
+ 00016680  0x00003b1c setarg  0x00002378 
+ 00016681  0x00003b1d call  0x00006413 
+ 00016682  0x00003b1e setarg  0x00004679 
+ 00016683  0x00003b1f call  0x00006413 
+ 00016684  0x00003b20 setarg  0x0000e57a 
+ 00016685  0x00003b21 call  0x00006413 
+ 00016686  0x00003b22 setarg  0x0000487c 
+ 00016687  0x00003b23 call  0x00006413 
+ 00016688  0x00003b24 setarg  0x0000777e 
+ 00016689  0x00003b25 call  0x00006413 
+ 00016690  0x00003b26 setarg  0x0000017f 
+ 00016691  0x00003b27 call  0x00006413 
+ 00016692  0x00003b28 setarg  0x0000000b 
+ 00016693  0x00003b29 call  0x00006413 
+ 00016694  0x00003b2a setarg  0x0000007f 
+ 00016695  0x00003b2b call  0x00006413 
+ 00016696  0x00003b2c branch  0x000040f4 
+ 00016697  0x00003b30 jam  0x00000000 , 0x000046e0 
+ 00016698  0x00003b31 call  0x000040f6 
+ 00016699  0x00003b32 setarg  0x0000100d 
+ 00016700  0x00003b33 call  0x00006413 
+ 00016701  0x00003b34 setarg  0x0000ed1d 
+ 00016702  0x00003b35 call  0x00006413 
+ 00016703  0x00003b36 setarg  0x0000807d 
+ 00016704  0x00003b37 call  0x00006413 
+ 00016705  0x00003b38 call  0x00004102 
+ 00016706  0x00003b39 setarg  0x00000943 
+ 00016707  0x00003b3a call  0x00006413 
+ 00016708  0x00003b3b branch  0x0000411a 
+ 00016709  0x00003b3f fetcht  0x00000001 , 0x000046dc 
+ 00016710  0x00003b40 call  0x00006829 
+ 00016711  0x00003b41 call  0x00007ec1 
+ 00016712  0x00003b42 fetcht  0x00000001 , 0x000046dc 
+ 00016713  0x00003b43 call  0x00006825 
+ 00016714  0x00003b44 branch  0x00007ec1 
+ 00016715  0x00003b47 jam  0x00000005 , 0x000046e0 
+ 00016716  0x00003b48 setarg  0x0000ba41 
+ 00016717  0x00003b49 call  0x00006405 
+ 00016718  0x00003b4a setarg  0x00000d11 
+ 00016719  0x00003b4b call  0x00006405 
+ 00016720  0x00003b4c setarg  0x0000041b 
+ 00016721  0x00003b4d call  0x00006405 
+ 00016722  0x00003b4e setarg  0x0000041c 
+ 00016723  0x00003b4f call  0x00006405 
+ 00016724  0x00003b50 setarg  0x00000f1d 
+ 00016725  0x00003b51 call  0x00006405 
+ 00016726  0x00003b52 setarg  0x00000032 
+ 00016727  0x00003b53 call  0x00006405 
+ 00016728  0x00003b54 setarg  0x0000b541 
+ 00016729  0x00003b55 branch  0x00006405 
+ 00016730  0x00003b5a setarg  0x0000ba41 
+ 00016731  0x00003b5b call  0x00006405 
+ 00016732  0x00003b5c nop  0x00000fa0 
+ 00016733  0x00003b5d setarg  0x0000ff7f 
+ 00016734  0x00003b5e call  0x00006405 
+ 00016735  0x00003b5f copy  0x00000011 , 0x0000003f 
+ 00016736  0x00003b60 call  0x00006405 
+ 00016737  0x00003b61 setarg  0x0000007f 
+ 00016738  0x00003b62 call  0x00006405 
+ 00016739  0x00003b63 setarg  0x0000b541 
+ 00016740  0x00003b64 branch  0x00006405 
+ 00016741  0x00003b67 rtnbit0  0x00000007 
+ 00016742  0x00003b68 arg  0x0000ff00 , 0x00000002 
+ 00016743  0x00003b69 ior  0x00000002 , 0x0000003f 
+ 00016744  0x00003b6a rtn 
+ 00016745  0x00003b6d rtnbit0  0x00000003 
+ 00016746  0x00003b6e arg  0x000000f0 , 0x00000002 
+ 00016747  0x00003b6f ior  0x00000002 , 0x0000003f 
+ 00016748  0x00003b70 rtn 
+ 00016749  0x00003b74 call  0x00005892 
+ 00016750  0x00003b75 nrtn  0x00000034 
+ 00016751  0x00003b76 fetch  0x00000001 , 0x000046c5 
+ 00016752  0x00003b77 and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00016753  0x00003b78 rtnne  0x00000003 
+ 00016754  0x00003b79 fetch  0x00000004 , 0x000046d3 
+ 00016755  0x00003b7a bbit1  0x00000003 , 0x00004179 
+ 00016756  0x00003b7b bbit1  0x00000000 , 0x00004179 
+ 00016757  0x00003b7c bbit1  0x00000005 , 0x00004179 
+ 00016758  0x00003b7d call  0x00003f97 
+ 00016759  0x00003b7e nrtn  0x00000028 
+ 00016760  0x00003b7f branch  0x00003f90 
+ 00016761  0x00003b82 setarg  0x00000000 
+ 00016762  0x00003b83 store  0x00000007 , 0x0000469a 
+ 00016763  0x00003b84 branch  0x00003f90 
+ 00016764  0x00003b87 copy  0x00000013 , 0x0000003f 
+ 00016765  0x00003b88 beq  0x00000014 , 0x000041c3 
+ 00016766  0x00003b89 beq  0x00000001 , 0x000042ca 
+ 00016767  0x00003b8a beq  0x00000015 , 0x000041d9 
+ 00016768  0x00003b8b beq  0x00000002 , 0x000041d9 
+ 00016769  0x00003b8c beq  0x00000005 , 0x000041d6 
+ 00016770  0x00003b8d beq  0x00000010 , 0x0000426c 
+ 00016771  0x00003b8e beq  0x00000012 , 0x0000429b 
+ 00016772  0x00003b8f beq  0x00000006 , 0x000041d5 
+ 00016773  0x00003b90 beq  0x00000004 , 0x000041cc 
+ 00016774  0x00003b91 beq  0x00000013 , 0x000041cc 
+ 00016775  0x00003b92 beq  0x0000000a , 0x000041ca 
+ 00016776  0x00003b93 beq  0x0000002e , 0x000033cd 
+ 00016777  0x00003b94 beq  0x00000031 , 0x000041b4 
+ 00016778  0x00003b95 beq  0x00000032 , 0x000041b6 
+ 00016779  0x00003b96 beq  0x0000003e , 0x00004191 
+ 00016780  0x00003b97 beq  0x00000027 , 0x0000438e 
+ 00016781  0x00003b98 beq  0x00000039 , 0x0000419c 
+ 00016782  0x00003b99 beq  0x0000003a , 0x00004192 
+ 00016783  0x00003b9a beq  0x0000003c , 0x0000419a 
+ 00016784  0x00003b9b rtn 
+ 00016785  0x00003b9f branch  0x00003410 
+ 00016786  0x00003ba2 jam  0x00000001 , 0x0000478b 
+ 00016787  0x00003ba3 fetch  0x00000001 , 0x0000471e 
+ 00016788  0x00003ba4 nbranch  0x00004492 , 0x00000034 
+ 00016789  0x00003ba5 fetch  0x00000001 , 0x00004720 
+ 00016790  0x00003ba6 fetcht  0x00000001 , 0x00004703 
+ 00016791  0x00003ba7 isub  0x00000002 , 0x0000003e 
+ 00016792  0x00003ba8 branch  0x0000340a , 0x00000005 
+ 00016793  0x00003ba9 rtn 
+ 00016794  0x00003bab jam  0x00000001 , 0x0000478b 
+ 00016795  0x00003bac rtn 
+ 00016796  0x00003bae jam  0x00000001 , 0x0000478b 
+ 00016797  0x00003baf arg  0x00000003 , 0x00000007 
+ 00016798  0x00003bb0 call  0x000043d2 
+ 00016799  0x00003bb1 setarg  0x00000000 
+ 00016800  0x00003bb2 store  0x00000002 , 0x00004707 
+ 00016801  0x00003bb3 jam  0x00000000 , 0x000046a7 
+ 00016802  0x00003bb5 fetch  0x00000001 , 0x000046e0 
+ 00016803  0x00003bb6 sub  0x0000003f , 0x00000005 , 0x0000003e 
+ 00016804  0x00003bb7 call  0x00004039 , 0x00000005 
+ 00016805  0x00003bb8 ncall  0x0000405d , 0x00000005 
+ 00016806  0x00003bba fetch  0x00000001 , 0x00000004 , 0x000046d3 
+ 00016807  0x00003bbb bbit1  0x00000013 , 0x000041af 
+ 00016808  0x00003bbc call  0x000041aa 
+ 00016809  0x00003bbd branch  0x000065d1 
+ 00016810  0x00003bc0 call  0x00002c7a 
+ 00016811  0x00003bc1 add  0x00000013 , 0x000000ae , 0x00000011 
+ 00016812  0x00003bc2 arg  0x0000005b , 0x00000012 
+ 00016813  0x00003bc3 arg  0x00000004 , 0x00000002 
+ 00016814  0x00003bc4 rtn 
+ 00016815  0x00003bc7 call  0x00002c7a 
+ 00016816  0x00003bc8 add  0x00000013 , 0x000000ae , 0x00000012 
+ 00016817  0x00003bc9 ifetch  0x00000001 , 0x00000012 
+ 00016818  0x00003bca store  0x00000001 , 0x0000477b 
+ 00016819  0x00003bcb branch  0x00004435 
+ 00016820  0x00003bcf arg  0x00000002 , 0x00000007 
+ 00016821  0x00003bd0 branch  0x000041b9 
+ 00016822  0x00003bd2 jam  0x00000002 , 0x000046c6 
+ 00016823  0x00003bd3 arg  0x00000001 , 0x00000007 
+ 00016824  0x00003bd4 branch  0x000041b9 
+ 00016825  0x00003bd8 fetch  0x00000001 , 0x000046c5 
+ 00016826  0x00003bd9 qset1  0x0000003f 
+ 00016827  0x00003bda store  0x00000001 , 0x000046c5 
+ 00016828  0x00003bdb rtn 
+ 00016829  0x00003bde fetch  0x00000001 , 0x000046c5 
+ 00016830  0x00003bdf qset0  0x0000003f 
+ 00016831  0x00003be0 store  0x00000001 , 0x000046c5 
+ 00016832  0x00003be1 rtn 
+ 00016833  0x00003be3 jam  0x00000000 , 0x000046c5 
+ 00016834  0x00003be4 rtn 
+ 00016835  0x00003be7 fetch  0x00000002 , 0x0000420a 
+ 00016836  0x00003be8 set0  0x00000000 , 0x0000003f 
+ 00016837  0x00003be9 store  0x00000002 , 0x0000420a 
+ 00016838  0x00003bea setarg  0x00000000 
+ 00016839  0x00003beb store  0x00000002 , 0x000046ae 
+ 00016840  0x00003bec call  0x00003f8d 
+ 00016841  0x00003bed branch  0x000042ca 
+ 00016842  0x00003bf0 call  0x000063cb 
+ 00016843  0x00003bf1 branch  0x000033dd 
+ 00016844  0x00003bf4 fetch  0x00000001 , 0x0000471e 
+ 00016845  0x00003bf5 nbranch  0x00004492 , 0x00000034 
+ 00016846  0x00003bf6 fetch  0x00000002 , 0x00004682 
+ 00016847  0x00003bf7 bbit1  0x0000000c , 0x000042b0 
+ 00016848  0x00003bf8 fetch  0x00000004 , 0x000046d3 
+ 00016849  0x00003bf9 bbit1  0x00000000 , 0x000041d7 
+ 00016850  0x00003bfa bbit1  0x00000005 , 0x000042b0 
+ 00016851  0x00003bfb bbit1  0x00000003 , 0x00002ead 
+ 00016852  0x00003bfc branch  0x000033a7 
+ 00016853  0x00003c00 branch  0x00003f74 
+ 00016854  0x00003c03 rtn 
+ 00016855  0x00003c06 call  0x000043c0 
+ 00016856  0x00003c07 branch  0x0000659a 
+ 00016857  0x00003c0a bpatch  0x000000e9 , 0x0000401d 
+ 00016858  0x00003c0b call  0x000041e7 
+ 00016859  0x00003c0c fetch  0x00000004 , 0x000046d3 
+ 00016860  0x00003c0d bbit1  0x00000000 , 0x000041d7 
+ 00016861  0x00003c0e bbit1  0x00000003 , 0x00002ead 
+ 00016862  0x00003c0f fetch  0x00000001 , 0x0000471e 
+ 00016863  0x00003c10 nbranch  0x00004492 , 0x00000034 
+ 00016864  0x00003c11 fetch  0x00000002 , 0x00004208 
+ 00016865  0x00003c12 bbit1  0x00000007 , 0x000041f5 
+ 00016866  0x00003c13 bbit1  0x00000000 , 0x000033a9 
+ 00016867  0x00003c14 bbit1  0x00000001 , 0x000041ef 
+ 00016868  0x00003c15 bbit1  0x00000002 , 0x000041f2 
+ 00016869  0x00003c16 bbit1  0x00000003 , 0x000041f2 
+ 00016870  0x00003c17 branch  0x000042b0 
+ 00016871  0x00003c19 setarg  0x00000000 
+ 00016872  0x00003c1a store  0x00000008 , 0x000046b7 
+ 00016873  0x00003c1b istore  0x00000004 , 0x00000005 
+ 00016874  0x00003c1c jam  0x00000000 , 0x000046b4 
+ 00016875  0x00003c1d jam  0x00000000 , 0x000046a7 
+ 00016876  0x00003c1e jam  0x00000000 , 0x000041e2 
+ 00016877  0x00003c1f jam  0x00000000 , 0x00004429 
+ 00016878  0x00003c20 rtn 
+ 00016879  0x00003c23 bbit1  0x00000005 , 0x000041f2 
+ 00016880  0x00003c24 bbit1  0x00000003 , 0x000041f2 
+ 00016881  0x00003c25 branch  0x000042b0 
+ 00016882  0x00003c27 fetch  0x00000002 , 0x00004682 
+ 00016883  0x00003c28 bbit1  0x0000000c , 0x000042b0 
+ 00016884  0x00003c29 branch  0x000033a7 
+ 00016885  0x00003c2c call  0x000041c1 
+ 00016886  0x00003c2d fetch  0x00000002 , 0x00004208 
+ 00016887  0x00003c2e bbit1  0x00000000 , 0x000033a9 
+ 00016888  0x00003c2f branch  0x000033a7 
+ 00016889  0x00003c32 call  0x000043d6 
+ 00016890  0x00003c33 call  0x00004243 
+ 00016891  0x00003c34 call  0x00004246 
+ 00016892  0x00003c35 call  0x00004250 
+ 00016893  0x00003c36 call  0x0000445d 
+ 00016894  0x00003c38 call  0x00004443 
+ 00016895  0x00003c39 call  0x00004333 
+ 00016896  0x00003c3a call  0x000043a5 
+ 00016897  0x00003c3b call  0x000043eb 
+ 00016898  0x00003c3c call  0x00004209 
+ 00016899  0x00003c3d call  0x00004231 
+ 00016900  0x00003c3e call  0x00004234 
+ 00016901  0x00003c3f call  0x00004237 
+ 00016902  0x00003c40 call  0x0000423a 
+ 00016903  0x00003c41 call  0x0000423d 
+ 00016904  0x00003c42 branch  0x00004240 
+ 00016905  0x00003c47 fetch  0x00000001 , 0x00004711 
+ 00016906  0x00003c48 rtn  0x00000034 
+ 00016907  0x00003c49 increase  0xffffffff , 0x0000003f 
+ 00016908  0x00003c4a store  0x00000001 , 0x00004711 
+ 00016909  0x00003c4b nrtn  0x00000034 
+ 00016910  0x00003c4c branch  0x0000420f 
+ 00016911  0x00003c4e fetch  0x00000001 , 0x00004712 
+ 00016912  0x00003c4f rtneq  0x00000000 
+ 00016913  0x00003c50 beq  0x00000005 , 0x00004216 
+ 00016914  0x00003c52 call  0x00004225 
+ 00016915  0x00003c53 jam  0x00000005 , 0x00004712 
+ 00016916  0x00003c54 jam  0x00000005 , 0x00004711 
+ 00016917  0x00003c55 rtn 
+ 00016918  0x00003c57 call  0x0000422c 
+ 00016919  0x00003c58 jam  0x00000004 , 0x00004712 
+ 00016920  0x00003c59 jam  0x00000005 , 0x00004711 
+ 00016921  0x00003c5a rtn 
+ 00016922  0x00003c5e setarg  0x00008006 
+ 00016923  0x00003c5f call  0x00006413 
+ 00016924  0x00003c60 nop  0x000003e8 
+ 00016925  0x00003c61 jam  0x00000000 , 0x00004711 
+ 00016926  0x00003c62 jam  0x00000000 , 0x00004712 
+ 00016927  0x00003c63 branch  0x000040e0 
+ 00016928  0x00003c66 setarg  0x0000a006 
+ 00016929  0x00003c67 call  0x00006413 
+ 00016930  0x00003c68 setarg  0x0000a005 
+ 00016931  0x00003c69 branch  0x00006413 
+ 00016932  0x00003c6b jam  0x00000000 , 0x00004711 
+ 00016933  0x00003c6d fetch  0x00000001 , 0x000046e0 
+ 00016934  0x00003c6e beq  0x00000004 , 0x00004220 
+ 00016935  0x00003c6f setarg  0x00000106 
+ 00016936  0x00003c70 call  0x00006413 
+ 00016937  0x00003c71 setarg  0x0000a105 
+ 00016938  0x00003c72 branch  0x00006413 
+ 00016939  0x00003c75 jam  0x00000000 , 0x00004711 
+ 00016940  0x00003c77 setarg  0x00000906 
+ 00016941  0x00003c78 branch  0x00006413 
+ 00016942  0x00003c7a jam  0x00000005 , 0x00004711 
+ 00016943  0x00003c7b jam  0x00000001 , 0x00004712 
+ 00016944  0x00003c7c rtn 
+ 00016945  0x00003c7f arg  0x00004680 , 0x00000013 
+ 00016946  0x00003c80 arg  0x0000429b , 0x00000012 
+ 00016947  0x00003c81 branch  0x0000336d 
+ 00016948  0x00003c84 arg  0x000046ac , 0x00000013 
+ 00016949  0x00003c85 arg  0x00004264 , 0x00000012 
+ 00016950  0x00003c86 branch  0x00003374 
+ 00016951  0x00003c89 arg  0x000046ae , 0x00000013 
+ 00016952  0x00003c8a arg  0x00004266 , 0x00000012 
+ 00016953  0x00003c8b branch  0x00003374 
+ 00016954  0x00003c8e arg  0x000046b0 , 0x00000013 
+ 00016955  0x00003c8f arg  0x0000426a , 0x00000012 
+ 00016956  0x00003c90 branch  0x00003374 
+ 00016957  0x00003c93 arg  0x000046c4 , 0x00000013 
+ 00016958  0x00003c94 arg  0x00004478 , 0x00000012 
+ 00016959  0x00003c95 branch  0x0000336d 
+ 00016960  0x00003c9a arg  0x000046c6 , 0x00000013 
+ 00016961  0x00003c9b arg  0x0000425e , 0x00000012 
+ 00016962  0x00003c9c branch  0x0000336d 
+ 00016963  0x00003c9f arg  0x00004704 , 0x00000013 
+ 00016964  0x00003ca0 arg  0x00004249 , 0x00000012 
+ 00016965  0x00003ca1 branch  0x0000336d 
+ 00016966  0x00003ca4 arg  0x00004707 , 0x00000013 
+ 00016967  0x00003ca5 arg  0x00004249 , 0x00000012 
+ 00016968  0x00003ca6 branch  0x00003374 
+ 00016969  0x00003ca9 rtn 
+ 00016970  0x00003cad fetch  0x00000004 , 0x000046d3 
+ 00016971  0x00003cae rtnbit0  0x00000017 
+ 00016972  0x00003caf jam  0x0000000a , 0x000046df 
+ 00016973  0x00003cb0 fetch  0x00000001 , 0x000046f4 
+ 00016974  0x00003cb1 store  0x00000001 , 0x00004715 
+ 00016975  0x00003cb2 rtn 
+ 00016976  0x00003cb6 arg  0x000046df , 0x00000013 
+ 00016977  0x00003cb7 arg  0x00004253 , 0x00000012 
+ 00016978  0x00003cb8 branch  0x0000336d 
+ 00016979  0x00003cba fetch  0x00000001 , 0x000046f4 
+ 00016980  0x00003cbb store  0x00000001 , 0x00004715 
+ 00016981  0x00003cbc setarg  0x00000190 
+ 00016982  0x00003cbd store  0x00000002 , 0x00004716 
+ 00016983  0x00003cbe store  0x00000002 , 0x00004718 
+ 00016984  0x00003cbf arg  0x00000000 , 0x00000011 
+ 00016985  0x00003cc0 fetcht  0x00000001 , 0x0000477a 
+ 00016986  0x00003cc1 increase  0x00000001 , 0x00000002 
+ 00016987  0x00003cc2 storet  0x00000001 , 0x00004714 
+ 00016988  0x00003cc3 jam  0x00000001 , 0x00004713 
+ 00016989  0x00003cc4 rtn 
+ 00016990  0x00003cc7 fetch  0x00000001 , 0x000046c5 
+ 00016991  0x00003cc8 rtnbit1  0x00000002 
+ 00016992  0x00003cc9 jam  0x00000012 , 0x00000a99 
+ 00016993  0x00003cca call  0x00007d8f 
+ 00016994  0x00003ccb arg  0x00000000 , 0x00000007 
+ 00016995  0x00003ccc branch  0x000041b9 
+ 00016996  0x00003cd0 call  0x000042ca 
+ 00016997  0x00003cd1 branch  0x0000340a 
+ 00016998  0x00003cd4 call  0x000033f6 
+ 00016999  0x00003cd5 fetch  0x00000001 , 0x0000471e 
+ 00017000  0x00003cd6 nbranch  0x00004492 , 0x00000034 
+ 00017001  0x00003cd7 branch  0x0000340a 
+ 00017002  0x00003cda bmark1  0x00000026 , 0x00007e1d 
+ 00017003  0x00003cdb branch  0x00004386 
+ 00017004  0x00003ce0 bpatch  0x000000ea , 0x0000401d 
+ 00017005  0x00003ce1 jam  0x00000000 , 0x000046b4 
+ 00017006  0x00003ce2 call  0x00004386 
+ 00017007  0x00003ce3 call  0x000041c1 
+ 00017008  0x00003ce4 branch  0x000042b0 
+ 00017009  0x00003ce9 fetch  0x00000006 , 0x000041d0 
+ 00017010  0x00003cea branch  0x000033eb , 0x00000034 
+ 00017011  0x00003ceb call  0x0000427e 
+ 00017012  0x00003cec jam  0x00000017 , 0x0000016d 
+ 00017013  0x00003ced fetch  0x00000001 , 0x0000465a 
+ 00017014  0x00003cee nbranch  0x000033e1 , 0x00000034 
+ 00017015  0x00003cef jam  0x00000004 , 0x0000016d 
+ 00017016  0x00003cf0 branch  0x000033e1 
+ 00017017  0x00003cf3 fetch  0x00000002 , 0x000046a8 
+ 00017018  0x00003cf4 store  0x00000002 , 0x000046ae 
+ 00017019  0x00003cf5 call  0x0000427e 
+ 00017020  0x00003cf6 call  0x00003418 
+ 00017021  0x00003cf7 branch  0x00007df4 
+ 00017022  0x00003cfa setarg  0x000000c8 
+ 00017023  0x00003cfb store  0x00000002 , 0x00004716 
+ 00017024  0x00003cfc store  0x00000002 , 0x00004718 
+ 00017025  0x00003cfd branch  0x00004285 
+ 00017026  0x00003d00 setarg  0x000003e8 
+ 00017027  0x00003d01 store  0x00000002 , 0x00004716 
+ 00017028  0x00003d02 store  0x00000002 , 0x00004718 
+ 00017029  0x00003d04 fetch  0x00000001 , 0x00004720 
+ 00017030  0x00003d05 beq  0x00000001 , 0x0000428a 
+ 00017031  0x00003d06 beq  0x00000002 , 0x0000428c 
+ 00017032  0x00003d07 beq  0x00000003 , 0x0000428e 
+ 00017033  0x00003d08 rtn 
+ 00017034  0x00003d0a fetch  0x00000001 , 0x000046f0 
+ 00017035  0x00003d0b branch  0x0000428f 
+ 00017036  0x00003d0d fetch  0x00000001 , 0x000046f1 
+ 00017037  0x00003d0e branch  0x0000428f 
+ 00017038  0x00003d10 fetch  0x00000001 , 0x000046f2 
+ 00017039  0x00003d12 store  0x00000001 , 0x00000aa2 
+ 00017040  0x00003d13 call  0x00004482 
+ 00017041  0x00003d14 fetch  0x00000001 , 0x00000aa2 
+ 00017042  0x00003d15 store  0x00000001 , 0x00004715 
+ 00017043  0x00003d16 arg  0x00000000 , 0x00000011 
+ 00017044  0x00003d17 jam  0x00000001 , 0x00004713 
+ 00017045  0x00003d18 branch  0x00007d1e 
+ 00017046  0x00003d1b arg  0x00000000 , 0x00000011 
+ 00017047  0x00003d1c branch  0x00007d19 
+ 00017048  0x00003d1e arg  0x00000000 , 0x00000011 
+ 00017049  0x00003d1f branch  0x00007d14 
+ 00017050  0x00003d22 branch  0x000041c1 
+ 00017051  0x00003d25 jam  0x00000001 , 0x000041e2 
+ 00017052  0x00003d26 call  0x00003416 
+ 00017053  0x00003d27 call  0x00003412 
+ 00017054  0x00003d28 setarg  0x00000000 
+ 00017055  0x00003d29 store  0x00000002 , 0x0000467e 
+ 00017056  0x00003d2a store  0x00000001 , 0x00004680 
+ 00017057  0x00003d2b branch  0x0000340e 
+ 00017058  0x00003d2e call  0x0000435f 
+ 00017059  0x00003d2f fetch  0x00000001 , 0x00004720 
+ 00017060  0x00003d30 fetcht  0x00000001 , 0x00004703 
+ 00017061  0x00003d31 isub  0x00000002 , 0x0000003e 
+ 00017062  0x00003d32 branch  0x000042ab , 0x00000005 
+ 00017063  0x00003d33 fetch  0x00000001 , 0x00004210 
+ 00017064  0x00003d34 beq  0x00000033 , 0x00004271 
+ 00017065  0x00003d35 beq  0x00000034 , 0x00004279 
+ 00017066  0x00003d36 branch  0x000042b0 
+ 00017067  0x00003d38 call  0x00003d57 
+ 00017068  0x00003d39 rtnmark1  0x00000026 
+ 00017069  0x00003d3a fetch  0x00000001 , 0x0000471e 
+ 00017070  0x00003d3b nbranch  0x00004492 , 0x00000034 
+ 00017071  0x00003d3c rtn 
+ 00017072  0x00003d3f bpatch  0x000000eb , 0x0000401d 
+ 00017073  0x00003d40 fetch  0x00000002 , 0x00004682 
+ 00017074  0x00003d41 bbit1  0x0000000b , 0x000042b7 
+ 00017075  0x00003d42 fetch  0x00000004 , 0x000046d3 
+ 00017076  0x00003d43 bbit0  0x00000018 , 0x000042b7 
+ 00017077  0x00003d44 random  0x0000003f 
+ 00017078  0x00003d45 store  0x00000001 , 0x000044a1 
+ 00017079  0x00003d47 call  0x00003418 
+ 00017080  0x00003d48 fetch  0x00000002 , 0x00004687 
+ 00017081  0x00003d49 store  0x00000002 , 0x000046ac 
+ 00017082  0x00003d4a jam  0x00000006 , 0x0000016d 
+ 00017083  0x00003d4b setarg  0x00000000 
+ 00017084  0x00003d4c store  0x00000002 , 0x000046b0 
+ 00017085  0x00003d4d store  0x00000002 , 0x000046ae 
+ 00017086  0x00003d4e arg  0x00000007 , 0x00000007 
+ 00017087  0x00003d4f call  0x000043ce 
+ 00017088  0x00003d50 call  0x000043ca 
+ 00017089  0x00003d51 fetch  0x00000001 , 0x00004092 
+ 00017090  0x00003d52 isolate1  0x00000001 , 0x0000003f 
+ 00017091  0x00003d53 call  0x00007df4 , 0x00000001 
+ 00017092  0x00003d54 fetch  0x00000001 , 0x00004092 
+ 00017093  0x00003d55 isolate1  0x00000000 , 0x0000003f 
+ 00017094  0x00003d56 call  0x00007ddd , 0x00000001 
+ 00017095  0x00003d57 fetch  0x00000004 , 0x000046d3 
+ 00017096  0x00003d58 bbit1  0x0000001c , 0x0000422e 
+ 00017097  0x00003d59 branch  0x00004282 
+ 00017098  0x00003d5c bpatch  0x000000ec , 0x0000401d 
+ 00017099  0x00003d5d fetch  0x00000001 , 0x00004092 
+ 00017100  0x00003d5e isolate1  0x00000001 , 0x0000003f 
+ 00017101  0x00003d5f call  0x000042d4 , 0x00000001 
+ 00017102  0x00003d60 fetch  0x00000001 , 0x00004092 
+ 00017103  0x00003d61 isolate1  0x00000000 , 0x0000003f 
+ 00017104  0x00003d62 call  0x000042d7 , 0x00000001 
+ 00017105  0x00003d63 fetch  0x00000004 , 0x000046d3 
+ 00017106  0x00003d64 bbit1  0x0000001c , 0x0000421a 
+ 00017107  0x00003d65 branch  0x00004482 
+ 00017108  0x00003d67 setarg  0x00000000 
+ 00017109  0x00003d68 store  0x00000002 , 0x000046ae 
+ 00017110  0x00003d69 branch  0x00007dfa 
+ 00017111  0x00003d6b setarg  0x00000000 
+ 00017112  0x00003d6c store  0x00000002 , 0x000046ac 
+ 00017113  0x00003d6d branch  0x00007de2 
+ 00017114  0x00003d74 fetch  0x00000004 , 0x000046d3 
+ 00017115  0x00003d75 rtnbit0  0x00000007 
+ 00017116  0x00003d76 arg  0x00000007 , 0x00000007 
+ 00017117  0x00003d77 call  0x000043d2 
+ 00017118  0x00003d78 call  0x000042e8 
+ 00017119  0x00003d7a call  0x000042fb 
+ 00017120  0x00003d7b fetch  0x00000004 , 0x000046d3 
+ 00017121  0x00003d7c bbit1  0x00000013 , 0x00004435 
+ 00017122  0x00003d7d bbit1  0x00000014 , 0x000042e4 
+ 00017123  0x00003d7e rtn 
+ 00017124  0x00003d80 arg  0x00000058 , 0x00000002 
+ 00017125  0x00003d81 arg  0x00004720 , 0x00000011 
+ 00017126  0x00003d82 arg  0x00000000 , 0x00000012 
+ 00017127  0x00003d83 branch  0x000065d1 
+ 00017128  0x00003d86 fetch  0x00000001 , 0x00000185 
+ 00017129  0x00003d87 beq  0x00000034 , 0x000042ec 
+ 00017130  0x00003d88 beq  0x00000033 , 0x000042ef 
+ 00017131  0x00003d89 rtn 
+ 00017132  0x00003d8b store  0x00000001 , 0x000046c7 
+ 00017133  0x00003d8c fetch  0x00000006 , 0x0000044f 
+ 00017134  0x00003d8d branch  0x000042f1 
+ 00017135  0x00003d8f store  0x00000001 , 0x000046c7 
+ 00017136  0x00003d90 fetch  0x00000006 , 0x00000040 
+ 00017137  0x00003d92 store  0x00000006 , 0x000046c8 
+ 00017138  0x00003d93 fetch  0x00000007 , 0x000046c7 
+ 00017139  0x00003d94 arg  0x00004721 , 0x00000006 
+ 00017140  0x00003d95 arg  0x00000003 , 0x00000039 
+ 00017141  0x00003d97 ifetcht  0x00000007 , 0x00000006 
+ 00017142  0x00003d98 isub  0x00000002 , 0x0000003e 
+ 00017143  0x00003d99 branch  0x00004310 , 0x00000005 
+ 00017144  0x00003d9a increase  0x00000016 , 0x00000006 
+ 00017145  0x00003d9b loop  0x000042f5 
+ 00017146  0x00003d9c rtn 
+ 00017147  0x00003d9e arg  0x00004721 , 0x00000011 
+ 00017148  0x00003d9f fetch  0x00000001 , 0x00004720 
+ 00017149  0x00003da0 increase  0xffffffff , 0x0000003f 
+ 00017150  0x00003da1 mul32  0x0000003f , 0x0000001d , 0x0000003f 
+ 00017151  0x00003da2 iadd  0x00000011 , 0x00000011 
+ 00017152  0x00003da3 fetch  0x00000001 , 0x00000185 
+ 00017153  0x00003da4 istore  0x00000001 , 0x00000011 
+ 00017154  0x00003da5 beq  0x00000034 , 0x00004305 
+ 00017155  0x00003da6 beq  0x00000033 , 0x0000430c 
+ 00017156  0x00003da7 rtn 
+ 00017157  0x00003daa fetch  0x00000006 , 0x0000044f 
+ 00017158  0x00003dab istore  0x00000006 , 0x00000005 
+ 00017159  0x00003dac arg  0x00004419 , 0x00000006 
+ 00017160  0x00003dad call  0x00007ebf 
+ 00017161  0x00003dae fetch  0x00000006 , 0x000044a0 
+ 00017162  0x00003daf istore  0x00000006 , 0x00000005 
+ 00017163  0x00003db0 rtn 
+ 00017164  0x00003db2 fetch  0x00000006 , 0x00000040 
+ 00017165  0x00003db3 istore  0x00000006 , 0x00000005 
+ 00017166  0x00003db4 arg  0x000041be , 0x00000006 
+ 00017167  0x00003db5 branch  0x00007ebf 
+ 00017168  0x00003db8 increase  0xfffffffa , 0x00000006 
+ 00017169  0x00003db9 copy  0x00000006 , 0x00000005 
+ 00017170  0x00003dba fetcht  0x00000006 , 0x000046c8 
+ 00017171  0x00003dbb increase  0x00000003 , 0x00000002 
+ 00017172  0x00003dbc istoret  0x00000006 , 0x00000005 
+ 00017173  0x00003dbd rtn 
+ 00017174  0x00003dc2 arg  0x00000058 , 0x00000002 
+ 00017175  0x00003dc3 arg  0x00004720 , 0x00000011 
+ 00017176  0x00003dc4 arg  0x00000000 , 0x00000012 
+ 00017177  0x00003dc5 call  0x000065df 
+ 00017178  0x00003dc7 arg  0x00004721 , 0x00000011 
+ 00017179  0x00003dc8 fetch  0x00000001 , 0x00004720 
+ 00017180  0x00003dc9 fetcht  0x00000001 , 0x00004703 
+ 00017181  0x00003dca isub  0x00000002 , 0x0000003e 
+ 00017182  0x00003dcb rtn  0x00000005 
+ 00017183  0x00003dcc increase  0xffffffff , 0x0000003f 
+ 00017184  0x00003dcd mul32  0x0000003f , 0x0000001d , 0x0000003f 
+ 00017185  0x00003dce iadd  0x00000011 , 0x00000011 
+ 00017186  0x00003dcf ifetch  0x00000001 , 0x00000011 
+ 00017187  0x00003dd0 store  0x00000001 , 0x00004210 
+ 00017188  0x00003dd1 beq  0x00000033 , 0x00004327 
+ 00017189  0x00003dd2 beq  0x00000034 , 0x0000432c 
+ 00017190  0x00003dd3 rtn 
+ 00017191  0x00003dd6 ifetch  0x00000006 , 0x00000006 
+ 00017192  0x00003dd8 store  0x00000006 , 0x000041d0 
+ 00017193  0x00003dd9 arg  0x000041be , 0x00000005 
+ 00017194  0x00003dda call  0x00007ebf 
+ 00017195  0x00003ddb branch  0x000067d7 
+ 00017196  0x00003dde ifetch  0x00000006 , 0x00000006 
+ 00017197  0x00003de0 store  0x00000006 , 0x000041d0 
+ 00017198  0x00003de1 arg  0x00004419 , 0x00000005 
+ 00017199  0x00003de2 call  0x00007ebf 
+ 00017200  0x00003de3 ifetch  0x00000006 , 0x00000006 
+ 00017201  0x00003de4 store  0x00000006 , 0x000044a0 
+ 00017202  0x00003de5 rtn 
+ 00017203  0x00003de9 fetch  0x00000001 , 0x000046f5 
+ 00017204  0x00003dea bbit1  0x00000005 , 0x00004349 
+ 00017205  0x00003deb bbit1  0x00000006 , 0x00004359 
+ 00017206  0x00003dec branch  0x00004337 
+ 00017207  0x00003def call  0x00004083 
+ 00017208  0x00003df0 beq  0x00000006 , 0x0000433e 
+ 00017209  0x00003df2 jam  0x0000001e , 0x000046d8 
+ 00017210  0x00003df3 fetch  0x00000001 , 0x000046d9 
+ 00017211  0x00003df4 rtneq  0x00000001 
+ 00017212  0x00003df5 jam  0x00000001 , 0x000046d9 
+ 00017213  0x00003df6 rtn 
+ 00017214  0x00003df9 call  0x00004343 
+ 00017215  0x00003dfa fetch  0x00000001 , 0x000046d9 
+ 00017216  0x00003dfb rtneq  0x00000000 
+ 00017217  0x00003dfc jam  0x00000000 , 0x000046d9 
+ 00017218  0x00003dfd branch  0x000043c0 
+ 00017219  0x00003e00 fetch  0x00000001 , 0x000046d8 
+ 00017220  0x00003e01 rtn  0x00000034 
+ 00017221  0x00003e02 pincrease  0xffffffff 
+ 00017222  0x00003e03 store  0x00000001 , 0x000046d8 
+ 00017223  0x00003e04 nrtn  0x00000034 
+ 00017224  0x00003e05 branch  0x00004370 
+ 00017225  0x00003e08 fetch  0x00000001 , 0x000046ed 
+ 00017226  0x00003e09 rtneq  0x000000ff 
+ 00017227  0x00003e0a fetcht  0x00000001 , 0x000046ed 
+ 00017228  0x00003e0b call  0x0000681d 
+ 00017229  0x00003e0c branch  0x00004354 , 0x00000001 
+ 00017230  0x00003e0e fetch  0x00000001 , 0x000046d9 
+ 00017231  0x00003e0f rtneq  0x00000001 
+ 00017232  0x00003e10 jam  0x00000001 , 0x000046d9 
+ 00017233  0x00003e11 fetch  0x00000004 , 0x000046d3 
+ 00017234  0x00003e12 rtnbit1  0x00000006 
+ 00017235  0x00003e13 branch  0x00004370 
+ 00017236  0x00003e16 fetch  0x00000001 , 0x000046d9 
+ 00017237  0x00003e17 rtneq  0x00000000 
+ 00017238  0x00003e18 jam  0x00000000 , 0x000046d9 
+ 00017239  0x00003e19 arg  0x00000006 , 0x00000007 
+ 00017240  0x00003e1a branch  0x000043d2 
+ 00017241  0x00003e1f fetch  0x00000001 , 0x00000004 , 0x000046d3 
+ 00017242  0x00003e20 rtnbit0  0x00000006 
+ 00017243  0x00003e21 fetch  0x00000001 , 0x00004720 
+ 00017244  0x00003e22 beq  0x00000001 , 0x00004369 
+ 00017245  0x00003e23 beq  0x00000002 , 0x0000436c 
+ 00017246  0x00003e24 rtn 
+ 00017247  0x00003e26 fetch  0x00000001 , 0x00000004 , 0x000046d3 
+ 00017248  0x00003e27 rtnbit0  0x00000006 
+ 00017249  0x00003e28 fetcht  0x00000001 , 0x000046ed 
+ 00017250  0x00003e29 call  0x0000681d 
+ 00017251  0x00003e2a branch  0x00004366 , 0x00000001 
+ 00017252  0x00003e2c jam  0x00000001 , 0x00004720 
+ 00017253  0x00003e2d rtn 
+ 00017254  0x00003e2f fetch  0x00000001 , 0x00004703 
+ 00017255  0x00003e30 store  0x00000001 , 0x00004720 
+ 00017256  0x00003e31 rtn 
+ 00017257  0x00003e33 fetcht  0x00000001 , 0x000046ed 
+ 00017258  0x00003e34 nbranch  0x00004370 , 0x00000001 
+ 00017259  0x00003e35 rtn 
+ 00017260  0x00003e37 fetcht  0x00000001 , 0x000046ed 
+ 00017261  0x00003e38 call  0x0000681d 
+ 00017262  0x00003e39 branch  0x00004354 , 0x00000001 
+ 00017263  0x00003e3a rtn 
+ 00017264  0x00003e40 fetcht  0x00000001 , 0x00004720 
+ 00017265  0x00003e41 increase  0x00000001 , 0x00000002 
+ 00017266  0x00003e42 fetch  0x00000001 , 0x000046d2 
+ 00017267  0x00003e43 isub  0x00000002 , 0x0000003e 
+ 00017268  0x00003e44 ncall  0x000043cc , 0x00000002 
+ 00017269  0x00003e45 storet  0x00000001 , 0x00004720 
+ 00017270  0x00003e46 jam  0x00000000 , 0x000041bd 
+ 00017271  0x00003e47 call  0x0000437a 
+ 00017272  0x00003e48 call  0x000043c0 
+ 00017273  0x00003e4a branch  0x0000437e 
+ 00017274  0x00003e4d arg  0x00000001 , 0x00000002 
+ 00017275  0x00003e4e arg  0x00004720 , 0x00000011 
+ 00017276  0x00003e4f arg  0x00000000 , 0x00000012 
+ 00017277  0x00003e50 branch  0x00006606 
+ 00017278  0x00003e53 call  0x00004381 
+ 00017279  0x00003e54 call  0x000043c2 
+ 00017280  0x00003e55 branch  0x000041d7 
+ 00017281  0x00003e57 fetch  0x00000002 , 0x00004682 
+ 00017282  0x00003e58 bbit1  0x00000007 , 0x00004392 
+ 00017283  0x00003e59 bbit1  0x00000009 , 0x00003402 
+ 00017284  0x00003e5a bbit1  0x00000000 , 0x000033e9 
+ 00017285  0x00003e5b branch  0x000042ca 
+ 00017286  0x00003e5e bpatch  0x000000ed , 0x0000401d 
+ 00017287  0x00003e5f setarg  0x00000000 
+ 00017288  0x00003e60 store  0x00000002 , 0x000046b0 
+ 00017289  0x00003e61 fetch  0x00000002 , 0x00004682 
+ 00017290  0x00003e62 bbit1  0x00000009 , 0x00003402 
+ 00017291  0x00003e63 fetch  0x00000002 , 0x00004682 
+ 00017292  0x00003e64 bbit1  0x00000000 , 0x000033e9 
+ 00017293  0x00003e65 rtn 
+ 00017294  0x00003e68 setarg  0x00000001 
+ 00017295  0x00003e69 store  0x00000006 , 0x00000040 
+ 00017296  0x00003e6a jam  0x00000033 , 0x00000185 
+ 00017297  0x00003e6b branch  0x000042df 
+ 00017298  0x00003e6f call  0x000043c4 
+ 00017299  0x00003e70 branch  0x00007e2f 
+ 00017300  0x00003e73 fetch  0x00000001 , 0x000046ec 
+ 00017301  0x00003e74 rtneq  0x000000ff 
+ 00017302  0x00003e75 fetcht  0x00000001 , 0x000046ec 
+ 00017303  0x00003e76 call  0x0000681d 
+ 00017304  0x00003e77 branch  0x0000439f , 0x00000001 
+ 00017305  0x00003e79 fetch  0x00000001 , 0x00004685 
+ 00017306  0x00003e7a store  0x00000001 , 0x000046da 
+ 00017307  0x00003e7b fetch  0x00000001 , 0x000046db 
+ 00017308  0x00003e7c rtneq  0x00000001 
+ 00017309  0x00003e7d jam  0x00000001 , 0x000046db 
+ 00017310  0x00003e7e branch  0x000043ca 
+ 00017311  0x00003e80 call  0x000043b5 
+ 00017312  0x00003e81 fetch  0x00000001 , 0x000046db 
+ 00017313  0x00003e82 rtneq  0x00000000 
+ 00017314  0x00003e83 jam  0x00000000 , 0x000046db 
+ 00017315  0x00003e84 call  0x00007e2f 
+ 00017316  0x00003e85 branch  0x000043c8 
+ 00017317  0x00003e89 fetch  0x00000001 , 0x000046f5 
+ 00017318  0x00003e8a bbit1  0x00000004 , 0x00004394 
+ 00017319  0x00003e8c call  0x00004083 
+ 00017320  0x00003e8d beq  0x00000007 , 0x000043af 
+ 00017321  0x00003e8f fetch  0x00000001 , 0x00004685 
+ 00017322  0x00003e90 store  0x00000001 , 0x000046da 
+ 00017323  0x00003e91 fetch  0x00000001 , 0x000046db 
+ 00017324  0x00003e92 rtneq  0x00000001 
+ 00017325  0x00003e93 jam  0x00000001 , 0x000046db 
+ 00017326  0x00003e94 branch  0x000043ca 
+ 00017327  0x00003e98 call  0x000043b5 
+ 00017328  0x00003e99 fetch  0x00000001 , 0x000046db 
+ 00017329  0x00003e9a rtneq  0x00000000 
+ 00017330  0x00003e9b jam  0x00000000 , 0x000046db 
+ 00017331  0x00003e9c call  0x00007e2f 
+ 00017332  0x00003e9d branch  0x000043c8 
+ 00017333  0x00003ea0 arg  0x000046da , 0x00000013 
+ 00017334  0x00003ea1 arg  0x000043b8 , 0x00000012 
+ 00017335  0x00003ea2 branch  0x0000336d 
+ 00017336  0x00003ea5 arg  0x00000006 , 0x00000007 
+ 00017337  0x00003ea6 call  0x000043ce 
+ 00017338  0x00003ea7 call  0x00003357 
+ 00017339  0x00003ea8 branch  0x0000426c 
+ 00017340  0x00003eac arg  0x00000001 , 0x00000007 
+ 00017341  0x00003ead branch  0x000043ce 
+ 00017342  0x00003eaf arg  0x00000001 , 0x00000007 
+ 00017343  0x00003eb0 branch  0x000043d2 
+ 00017344  0x00003eb2 arg  0x00000000 , 0x00000007 
+ 00017345  0x00003eb3 branch  0x000043ce 
+ 00017346  0x00003eb5 arg  0x00000000 , 0x00000007 
+ 00017347  0x00003eb6 branch  0x000043d2 
+ 00017348  0x00003eb8 arg  0x00000002 , 0x00000007 
+ 00017349  0x00003eb9 branch  0x000043ce 
+ 00017350  0x00003ebb arg  0x00000002 , 0x00000007 
+ 00017351  0x00003ebc branch  0x000043d2 
+ 00017352  0x00003ebe arg  0x00000005 , 0x00000007 
+ 00017353  0x00003ebf branch  0x000043ce 
+ 00017354  0x00003ec1 arg  0x00000005 , 0x00000007 
+ 00017355  0x00003ec2 branch  0x000043d2 
+ 00017356  0x00003ec7 arg  0x00000001 , 0x00000002 
+ 00017357  0x00003ec8 rtn 
+ 00017358  0x00003ecb fetch  0x00000004 , 0x000046d3 
+ 00017359  0x00003ecc qset1  0x0000003f 
+ 00017360  0x00003ecd store  0x00000004 , 0x000046d3 
+ 00017361  0x00003ece rtn 
+ 00017362  0x00003ed1 fetch  0x00000004 , 0x000046d3 
+ 00017363  0x00003ed2 qset0  0x0000003f 
+ 00017364  0x00003ed3 store  0x00000004 , 0x000046d3 
+ 00017365  0x00003ed4 rtn 
+ 00017366  0x00003ed7 fetch  0x00000004 , 0x000046d3 
+ 00017367  0x00003ed8 rtnbit0  0x0000001a 
+ 00017368  0x00003ed9 fetch  0x00000001 , 0x000046ce 
+ 00017369  0x00003eda increase  0x00000001 , 0x0000003f 
+ 00017370  0x00003edb store  0x00000001 , 0x000046ce 
+ 00017371  0x00003edc sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00017372  0x00003edd rtn  0x00000002 
+ 00017373  0x00003ede jam  0x00000000 , 0x000046ce 
+ 00017374  0x00003edf call  0x000068eb 
+ 00017375  0x00003ee0 call  0x00006908 
+ 00017376  0x00003ee1 store  0x00000002 , 0x0000470f 
+ 00017377  0x00003ee2 arg  0x00004709 , 0x00000011 
+ 00017378  0x00003ee3 call  0x00006930 
+ 00017379  0x00003ee4 fetch  0x00000001 , 0x00004231 
+ 00017380  0x00003ee5 bbit1  0x00000001 , 0x000044a0 
+ 00017381  0x00003ee6 bbit0  0x00000000 , 0x000043e9 
+ 00017382  0x00003ee7 branch  0x000043e7 
+ 00017383  0x00003ee9 arg  0x00000004 , 0x00000007 
+ 00017384  0x00003eea branch  0x000043ce 
+ 00017385  0x00003eec arg  0x00000004 , 0x00000007 
+ 00017386  0x00003eed branch  0x000043d2 
+ 00017387  0x00003ef0 fetch  0x00000004 , 0x000046d3 
+ 00017388  0x00003ef1 rtnbit0  0x00000004 
+ 00017389  0x00003ef2 fetch  0x00000001 , 0x000046ef 
+ 00017390  0x00003ef3 store  0x00000001 , 0x00004715 
+ 00017391  0x00003ef4 fetch  0x00000001 , 0x000046cf 
+ 00017392  0x00003ef5 pincrease  0x00000001 
+ 00017393  0x00003ef6 store  0x00000001 , 0x000046cf 
+ 00017394  0x00003ef7 sub  0x0000003f , 0x00000014 , 0x0000003e 
+ 00017395  0x00003ef8 ncall  0x000043f9 , 0x00000002 
+ 00017396  0x00003ef9 beq  0x00000002 , 0x000043fb 
+ 00017397  0x00003efa beq  0x00000004 , 0x000043fe 
+ 00017398  0x00003efb beq  0x00000006 , 0x000043fb 
+ 00017399  0x00003efc beq  0x00000008 , 0x000043fe 
+ 00017400  0x00003efd rtn 
+ 00017401  0x00003eff jam  0x00000001 , 0x000046cf 
+ 00017402  0x00003f00 branch  0x000043fe 
+ 00017403  0x00003f02 arg  0x00000000 , 0x00000011 
+ 00017404  0x00003f03 jam  0x00000002 , 0x00004713 
+ 00017405  0x00003f04 branch  0x00007d14 
+ 00017406  0x00003f06 arg  0x00000000 , 0x00000011 
+ 00017407  0x00003f07 jam  0x00000002 , 0x00004713 
+ 00017408  0x00003f08 branch  0x00007d19 
+ 00017409  0x00003f0b call  0x00003f97 
+ 00017410  0x00003f0c nrtn  0x00000028 
+ 00017411  0x00003f0d arg  0x00000007 , 0x00000011 
+ 00017412  0x00003f0e arg  0x0000469a , 0x00000012 
+ 00017413  0x00003f0f rtn 
+ 00017414  0x00003f12 fetch  0x00000001 , 0x0000478b 
+ 00017415  0x00003f13 rtn  0x00000034 
+ 00017416  0x00003f15 fetcht  0x00000001 , 0x000046e7 
+ 00017417  0x00003f16 call  0x0000681d 
+ 00017418  0x00003f17 call  0x00004410 , 0x00000001 
+ 00017419  0x00003f18 fetch  0x00000001 , 0x00004704 
+ 00017420  0x00003f19 nrtn  0x00000034 
+ 00017421  0x00003f1a call  0x00004083 
+ 00017422  0x00003f1b nrtn  0x00000034 
+ 00017423  0x00003f1c branch  0x00002d83 
+ 00017424  0x00003f1f fetch  0x00000001 , 0x000046e7 
+ 00017425  0x00003f20 rtneq  0x000000ff 
+ 00017426  0x00003f21 jam  0x0000000a , 0x00004704 
+ 00017427  0x00003f22 rtn 
+ 00017428  0x00003f26 call  0x00004423 
+ 00017429  0x00003f27 fetch  0x00000002 , 0x00004778 
+ 00017430  0x00003f28 arg  0x0000aa55 , 0x00000002 
+ 00017431  0x00003f29 isub  0x00000002 , 0x0000003e 
+ 00017432  0x00003f2a branch  0x0000442b , 0x00000005 
+ 00017433  0x00003f2b storet  0x00000002 , 0x00004778 
+ 00017434  0x00003f2c call  0x0000441c 
+ 00017435  0x00003f2d branch  0x00004435 
+ 00017436  0x00003f2f fetch  0x00000006 , 0x000044a0 
+ 00017437  0x00003f30 store  0x00000006 , 0x00004738 
+ 00017438  0x00003f31 add  0x0000003f , 0x00000100 , 0x0000003f 
+ 00017439  0x00003f32 store  0x00000006 , 0x00004755 
+ 00017440  0x00003f33 add  0x0000003f , 0x00000100 , 0x0000003f 
+ 00017441  0x00003f34 store  0x00000006 , 0x00004772 
+ 00017442  0x00003f35 rtn 
+ 00017443  0x00003f39 setarg  0x00004778 
+ 00017444  0x00003f3a arg  0x00004720 , 0x00000002 
+ 00017445  0x00003f3b isub  0x00000002 , 0x00000002 
+ 00017446  0x00003f3c fetch  0x00000003 , 0x00004700 
+ 00017447  0x00003f3d iadd  0x00000002 , 0x0000003f 
+ 00017448  0x00003f3e arg  0x00000002 , 0x00000002 
+ 00017449  0x00003f3f arg  0x00004778 , 0x00000011 
+ 00017450  0x00003f40 branch  0x00006562 
+ 00017451  0x00003f44 setarg  0x0000477f 
+ 00017452  0x00003f45 arg  0x00004720 , 0x00000002 
+ 00017453  0x00003f46 isub  0x00000002 , 0x00000002 
+ 00017454  0x00003f47 fetch  0x00000003 , 0x00004700 
+ 00017455  0x00003f48 arg  0x00004720 , 0x00000011 
+ 00017456  0x00003f49 call  0x00006562 
+ 00017457  0x00003f4a call  0x0000431a 
+ 00017458  0x00003f4b fetch  0x00000004 , 0x0000477b 
+ 00017459  0x00003f4c call  0x00002c7a 
+ 00017460  0x00003f4d branch  0x0000322c 
+ 00017461  0x00003f50 setarg  0x0000477f 
+ 00017462  0x00003f51 arg  0x00004720 , 0x00000002 
+ 00017463  0x00003f52 isub  0x00000002 , 0x00000002 
+ 00017464  0x00003f53 arg  0x00004720 , 0x00000011 
+ 00017465  0x00003f54 fetch  0x00000003 , 0x00004700 
+ 00017466  0x00003f55 branch  0x00006514 
+ 00017467  0x00003f58 arg  0x00000001 , 0x00000002 
+ 00017468  0x00003f59 arg  0x0000477a , 0x00000011 
+ 00017469  0x00003f5a arg  0x0000005a , 0x00000012 
+ 00017470  0x00003f5b branch  0x000065d1 
+ 00017471  0x00003f5e arg  0x00000001 , 0x00000002 
+ 00017472  0x00003f5f arg  0x0000477a , 0x00000011 
+ 00017473  0x00003f60 arg  0x0000005a , 0x00000012 
+ 00017474  0x00003f61 branch  0x000065df 
+ 00017475  0x00003f64 rtnmark1  0x00000026 
+ 00017476  0x00003f65 fetch  0x00000004 , 0x000046d3 
+ 00017477  0x00003f66 rtnbit0  0x00000016 
+ 00017478  0x00003f67 fetch  0x00000001 , 0x00004705 
+ 00017479  0x00003f68 pincrease  0x00000001 
+ 00017480  0x00003f69 and  0x0000003f , 0x00000007 , 0x0000003f 
+ 00017481  0x00003f6a store  0x00000001 , 0x00004705 
+ 00017482  0x00003f6b rtnne  0x00000007 
+ 00017483  0x00003f6c fetch  0x00000002 , 0x00004682 
+ 00017484  0x00003f6d bbit1  0x00000000 , 0x0000444f 
+ 00017485  0x00003f6e bbit1  0x00000009 , 0x0000444f 
+ 00017486  0x00003f6f rtn 
+ 00017487  0x00003f75 bpatch  0x000000ee , 0x0000401d 
+ 00017488  0x00003f76 fetch  0x00000001 , 0x00004706 
+ 00017489  0x00003f77 nrtn  0x00000034 
+ 00017490  0x00003f78 fetch  0x00000004 , 0x000046d3 
+ 00017491  0x00003f79 rtnbit0  0x00000008 
+ 00017492  0x00003f7a fetch  0x00000001 , 0x000046a5 
+ 00017493  0x00003f7b call  0x000063fb 
+ 00017494  0x00003f7c store  0x00000001 , 0x000046a6 
+ 00017495  0x00003f7d sub  0x0000003f , 0x00000010 , 0x0000003e 
+ 00017496  0x00003f7e branch  0x0000445b , 0x00000002 
+ 00017497  0x00003f7f jam  0x00000000 , 0x00004706 
+ 00017498  0x00003f80 rtn 
+ 00017499  0x00003f83 jam  0x0000001e , 0x00004706 
+ 00017500  0x00003f84 rtn 
+ 00017501  0x00003f86 arg  0x00004706 , 0x00000013 
+ 00017502  0x00003f87 arg  0x00004460 , 0x00000012 
+ 00017503  0x00003f88 branch  0x0000336d 
+ 00017504  0x00003f8b fetch  0x00000001 , 0x000046a5 
+ 00017505  0x00003f8c call  0x00006414 
+ 00017506  0x00003f8d sub  0x0000003f , 0x00000010 , 0x0000003e 
+ 00017507  0x00003f8e nrtn  0x00000002 
+ 00017508  0x00003f8f fetch  0x00000004 , 0x000046d3 
+ 00017509  0x00003f90 rtnbit0  0x00000008 
+ 00017510  0x00003f91 arg  0x00000008 , 0x00000007 
+ 00017511  0x00003f92 call  0x000043d2 
+ 00017512  0x00003f93 jam  0x00000000 , 0x00004172 
+ 00017513  0x00003f94 jam  0x0000001e , 0x000046c4 
+ 00017514  0x00003f95 call  0x00004482 
+ 00017515  0x00003f96 fetch  0x00000004 , 0x000046d3 
+ 00017516  0x00003f97 bbit1  0x00000015 , 0x00004471 
+ 00017517  0x00003f99 fetch  0x00000001 , 0x00004720 
+ 00017518  0x00003f9a beq  0x00000001 , 0x00004489 
+ 00017519  0x00003f9b beq  0x00000002 , 0x00004476 
+ 00017520  0x00003f9c rtn 
+ 00017521  0x00003f9e fetch  0x00000001 , 0x00004720 
+ 00017522  0x00003f9f beq  0x00000001 , 0x00004489 
+ 00017523  0x00003fa0 beq  0x00000002 , 0x0000448c 
+ 00017524  0x00003fa1 beq  0x00000003 , 0x0000448f 
+ 00017525  0x00003fa2 rtn 
+ 00017526  0x00003fa5 fetch  0x00000001 , 0x000046f0 
+ 00017527  0x00003fa6 branch  0x0000428f 
+ 00017528  0x00003fab jam  0x00000020 , 0x00004172 
+ 00017529  0x00003fac branch  0x00004482 
+ 00017530  0x00003fb1 fetch  0x00000001 , 0x000046f0 
+ 00017531  0x00003fb2 rtneq  0x000000ff 
+ 00017532  0x00003fb3 store  0x00000001 , 0x00004715 
+ 00017533  0x00003fb4 branch  0x00004296 
+ 00017534  0x00003fb7 fetch  0x00000001 , 0x000046f1 
+ 00017535  0x00003fb8 rtneq  0x000000ff 
+ 00017536  0x00003fb9 store  0x00000001 , 0x00004715 
+ 00017537  0x00003fba branch  0x00004296 
+ 00017538  0x00003fbd call  0x00004296 
+ 00017539  0x00003fbe call  0x0000447a 
+ 00017540  0x00003fbf call  0x0000447e 
+ 00017541  0x00003fc1 fetch  0x00000001 , 0x000046f2 
+ 00017542  0x00003fc2 rtneq  0x000000ff 
+ 00017543  0x00003fc3 store  0x00000001 , 0x00004715 
+ 00017544  0x00003fc4 branch  0x00004296 
+ 00017545  0x00003fc7 fetch  0x00000001 , 0x000046f0 
+ 00017546  0x00003fc8 store  0x00000001 , 0x00004715 
+ 00017547  0x00003fc9 branch  0x00004298 
+ 00017548  0x00003fcb fetch  0x00000001 , 0x000046f1 
+ 00017549  0x00003fcc store  0x00000001 , 0x00004715 
+ 00017550  0x00003fcd branch  0x00004298 
+ 00017551  0x00003fcf fetch  0x00000001 , 0x000046f2 
+ 00017552  0x00003fd0 store  0x00000001 , 0x00004715 
+ 00017553  0x00003fd1 branch  0x00004298 
+ 00017554  0x00003fd6 bpatch  0x000000ef , 0x0000401d 
+ 00017555  0x00003fd7 fetch  0x00000001 , 0x0000471e 
+ 00017556  0x00003fd8 increase  0xffffffff , 0x0000003f 
+ 00017557  0x00003fd9 store  0x00000001 , 0x0000471e 
+ 00017558  0x00003fda fetcht  0x00000001 , 0x00004720 
+ 00017559  0x00003fdb increase  0x00000001 , 0x00000002 
+ 00017560  0x00003fdc fetch  0x00000001 , 0x000046d2 
+ 00017561  0x00003fdd isub  0x00000002 , 0x0000003e 
+ 00017562  0x00003fde ncall  0x000043cc , 0x00000002 
+ 00017563  0x00003fdf storet  0x00000001 , 0x00004720 
+ 00017564  0x00003fe0 jam  0x00000000 , 0x000041bd 
+ 00017565  0x00003fe1 call  0x0000437a 
+ 00017566  0x00003fe2 call  0x000042fb 
+ 00017567  0x00003fe3 branch  0x000042a2 
+ 00017568  0x00003fe6 call  0x00004482 
+ 00017569  0x00003fe7 setarg  0x00000000 
+ 00017570  0x00003fe8 store  0x00000008 , 0x000000a1 
+ 00017571  0x00003fe9 branch  0x00002b1f 
+ 00017572  0x00003ff5 rtn  0x0000002b 
+ 00017573  0x00003ff6 hfetch  0x00000001 , 0x00008081 
+ 00017574  0x00003ff7 and_into  0x000000f0 , 0x0000003f 
+ 00017575  0x00003ff8 hstore  0x00000001 , 0x00008081 
+ 00017576  0x00003ff9 call  0x00006948 
+ 00017577  0x00003ffa setarg  0x000044e6 
+ 00017578  0x00003ffb store  0x00000002 , 0x000041eb 
+ 00017579  0x00003ffd setarg  0x000044e9 
+ 00017580  0x00003ffe store  0x00000002 , 0x000041ed 
+ 00017581  0x00004000 setarg  0x000044ef 
+ 00017582  0x00004001 store  0x00000002 , 0x000041f3 
+ 00017583  0x00004003 setarg  0x000044f2 
+ 00017584  0x00004004 store  0x00000002 , 0x000041f5 
+ 00017585  0x00004006 setarg  0x000033d0 
+ 00017586  0x00004007 store  0x00000002 , 0x000041e9 
+ 00017587  0x00004009 call  0x00002c7a 
+ 00017588  0x0000400a setarg  0x000045c2 
+ 00017589  0x0000400b add  0x00000013 , 0x000000d8 , 0x00000005 
+ 00017590  0x0000400c istore  0x00000002 , 0x00000005 
+ 00017591  0x0000400e setarg  0x000044ea 
+ 00017592  0x0000400f add  0x00000013 , 0x000000da , 0x00000005 
+ 00017593  0x00004010 istore  0x00000002 , 0x00000005 
+ 00017594  0x00004012 setarg  0x000044e9 
+ 00017595  0x00004013 add  0x00000013 , 0x000000dc , 0x00000005 
+ 00017596  0x00004014 istore  0x00000002 , 0x00000005 
+ 00017597  0x00004016 setarg  0x0000450e 
+ 00017598  0x00004017 store  0x00000002 , 0x000041fd 
+ 00017599  0x00004019 setarg  0x000044da 
+ 00017600  0x0000401a store  0x00000002 , 0x0000475b 
+ 00017601  0x0000401c setarg  0x000044d6 
+ 00017602  0x0000401d store  0x00000002 , 0x0000475f 
+ 00017603  0x0000401f setarg  0x00004560 
+ 00017604  0x00004020 store  0x00000002 , 0x0000470f 
+ 00017605  0x00004022 bpatch  0x000000f0 , 0x0000401e 
+ 00017606  0x00004023 call  0x000044e2 
+ 00017607  0x00004024 call  0x00007e38 
+ 00017608  0x00004025 jam  0x00000002 , 0x00004172 
+ 00017609  0x00004026 fetch  0x00000001 , 0x0000472b 
+ 00017610  0x00004027 store  0x00000001 , 0x0000469a 
+ 00017611  0x00004028 beq  0x00000000 , 0x000044d5 
+ 00017612  0x00004029 fetch  0x00000001 , 0x0000472c 
+ 00017613  0x0000402a store  0x00000001 , 0x00004686 
+ 00017614  0x0000402c call  0x000044db 
+ 00017615  0x0000402d call  0x00007cd3 
+ 00017616  0x0000402e call  0x00007cdd 
+ 00017617  0x0000402f jam  0x00000001 , 0x00004757 
+ 00017618  0x00004030 fetch  0x00000002 , 0x00004682 
+ 00017619  0x00004031 rtnbit1  0x0000000c 
+ 00017620  0x00004032 branch  0x0000340a 
+ 00017621  0x00004037 jam  0x00000002 , 0x00004757 
+ 00017622  0x00004039 call  0x000044db 
+ 00017623  0x0000403b arg  0x00000000 , 0x00000011 
+ 00017624  0x0000403c call  0x00007d1e 
+ 00017625  0x0000403e branch  0x00002ee4 
+ 00017626  0x00004041 branch  0x000044db 
+ 00017627  0x00004044 bpatch  0x000000f1 , 0x0000401e 
+ 00017628  0x00004045 fetch  0x00000001 , 0x00004729 
+ 00017629  0x00004046 bne  0x000000ff , 0x000044e0 
+ 00017630  0x00004048 fetcht  0x00000001 , 0x00004706 
+ 00017631  0x00004049 branch  0x0000680e 
+ 00017632  0x0000404b store  0x00000001 , 0x00004706 
+ 00017633  0x0000404c branch  0x000044de 
+ 00017634  0x00004050 call  0x00002c9d 
+ 00017635  0x00004051 fetch  0x00000002 , 0x00004753 
+ 00017636  0x00004052 store  0x00000002 , 0x00004755 
+ 00017637  0x00004053 branch  0x00004515 
+ 00017638  0x0000405b call  0x00006835 
+ 00017639  0x0000405c call  0x000044e9 
+ 00017640  0x0000405d branch  0x0000340a 
+ 00017641  0x00004060 branch  0x0000696c 
+ 00017642  0x00004063 fetch  0x00000001 , 0x00004765 
+ 00017643  0x00004064 rtn  0x00000034 
+ 00017644  0x00004066 branch  0x00002d83 
+ 00017645  0x00004069 rtn 
+ 00017646  0x0000406c branch  0x00006978 
+ 00017647  0x0000406f call  0x00004544 
+ 00017648  0x00004070 call  0x00004503 
+ 00017649  0x00004071 branch  0x000044ee 
+ 00017650  0x00004074 copy  0x00000013 , 0x0000003f 
+ 00017651  0x00004075 beq  0x0000002d , 0x00003431 
+ 00017652  0x00004076 beq  0x00000010 , 0x0000341a 
+ 00017653  0x00004077 beq  0x00000039 , 0x000044fb 
+ 00017654  0x00004078 beq  0x0000003c , 0x000044ff 
+ 00017655  0x00004079 beq  0x0000003a , 0x000044f9 
+ 00017656  0x0000407a rtn 
+ 00017657  0x0000407d jam  0x00000001 , 0x00004765 
+ 00017658  0x0000407e rtn 
+ 00017659  0x00004081 jam  0x00000001 , 0x00004765 
+ 00017660  0x00004082 jam  0x00000001 , 0x00004763 
+ 00017661  0x00004083 jam  0x00000001 , 0x00004764 
+ 00017662  0x00004084 rtn 
+ 00017663  0x00004087 jam  0x00000001 , 0x00004765 
+ 00017664  0x00004088 jam  0x00000001 , 0x00004763 
+ 00017665  0x00004089 jam  0x00000001 , 0x00004764 
+ 00017666  0x0000408a rtn 
+ 00017667  0x0000408d fetch  0x00000001 , 0x00004763 
+ 00017668  0x0000408e rtneq  0x00000000 
+ 00017669  0x0000408f fetch  0x00000001 , 0x00004762 
+ 00017670  0x00004090 rtneq  0x00000001 
+ 00017671  0x00004091 jam  0x00000001 , 0x00004762 
+ 00017672  0x00004093 arg  0x00000000 , 0x00000011 
+ 00017673  0x00004094 branch  0x00007d19 
+ 00017674  0x00004096 arg  0x00000000 , 0x00000011 
+ 00017675  0x00004097 call  0x00007d19 
+ 00017676  0x00004098 call  0x000044db 
+ 00017677  0x00004099 branch  0x0000340a 
+ 00017678  0x0000409c call  0x0000337b 
+ 00017679  0x0000409d branch  0x00004510 
+ 00017680  0x000040a0 fetch  0x00000001 , 0x0000472d 
+ 00017681  0x000040a1 rtn  0x00000034 
+ 00017682  0x000040a2 arg  0x00004755 , 0x00000013 
+ 00017683  0x000040a3 arg  0x0000450a , 0x00000012 
+ 00017684  0x000040a4 branch  0x00003374 
+ 00017685  0x000040a8 call  0x0000451a 
+ 00017686  0x000040a9 storet  0x00000002 , 0x0000471a 
+ 00017687  0x000040aa call  0x0000451f 
+ 00017688  0x000040ab storet  0x00000002 , 0x0000471c 
+ 00017689  0x000040ac rtn 
+ 00017690  0x000040af fetch  0x00000002 , 0x0000471a 
+ 00017691  0x000040b0 store  0x00000002 , 0x0000471e 
+ 00017692  0x000040b1 call  0x00004540 
+ 00017693  0x000040b2 call  0x00004525 
+ 00017694  0x000040b3 store  0x00000001 , 0x00004724 
+ 00017695  0x000040b5 fetch  0x00000002 , 0x0000471c 
+ 00017696  0x000040b6 store  0x00000002 , 0x0000471e 
+ 00017697  0x000040b7 call  0x00004542 
+ 00017698  0x000040b8 call  0x00004525 
+ 00017699  0x000040b9 store  0x00000001 , 0x00004725 
+ 00017700  0x000040ba rtn 
+ 00017701  0x000040bc fetch  0x00000002 , 0x00004720 
+ 00017702  0x000040bd copy  0x0000003f , 0x00000011 
+ 00017703  0x000040be fetch  0x00000002 , 0x0000471e 
+ 00017704  0x000040bf call  0x0000452e 
+ 00017705  0x000040c0 fetch  0x00000001 , 0x00004719 
+ 00017706  0x000040c1 nbranch  0x00004537 , 0x00000034 
+ 00017707  0x000040c2 nrtn  0x00000002 
+ 00017708  0x000040c3 fetcht  0x00000002 , 0x0000471e 
+ 00017709  0x000040c4 rtn 
+ 00017710  0x000040c6 isub  0x00000002 , 0x0000003f 
+ 00017711  0x000040c7 branch  0x00004534 , 0x00000002 
+ 00017712  0x000040c8 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00017713  0x000040c9 jam  0x00000001 , 0x00004718 
+ 00017714  0x000040ca isub  0x00000011 , 0x0000003e 
+ 00017715  0x000040cb rtn 
+ 00017716  0x000040cd jam  0x00000000 , 0x00004718 
+ 00017717  0x000040ce isub  0x00000011 , 0x0000003e 
+ 00017718  0x000040cf rtn 
+ 00017719  0x000040d1 nbranch  0x0000453e , 0x00000002 
+ 00017720  0x000040d2 fetch  0x00000001 , 0x00004718 
+ 00017721  0x000040d3 nbranch  0x0000453c , 0x00000034 
+ 00017722  0x000040d5 setarg  0x00000001 
+ 00017723  0x000040d6 rtn 
+ 00017724  0x000040d8 setarg  0x00000002 
+ 00017725  0x000040d9 rtn 
+ 00017726  0x000040db setarg  0x00000000 
+ 00017727  0x000040dc rtn 
+ 00017728  0x000040de jam  0x00000033 , 0x0000422e 
+ 00017729  0x000040df branch  0x000068eb 
+ 00017730  0x000040e1 jam  0x00000034 , 0x0000422e 
+ 00017731  0x000040e2 branch  0x000068eb 
+ 00017732  0x000040e6 fetch  0x00000001 , 0x0000472a 
+ 00017733  0x000040e7 rtnne  0x00000001 
+ 00017734  0x000040e9 bpatch  0x000000f2 , 0x0000401e 
+ 00017735  0x000040ea jam  0x00000001 , 0x00004719 
+ 00017736  0x000040eb call  0x0000451a 
+ 00017737  0x000040ec fetch  0x00000002 , 0x00004724 
+ 00017738  0x000040ed fetcht  0x00000002 , 0x00004722 
+ 00017739  0x000040ee isub  0x00000002 , 0x0000003e 
+ 00017740  0x000040ef rtn  0x00000005 
+ 00017741  0x000040f0 store  0x00000002 , 0x00004722 
+ 00017742  0x000040f1 call  0x00004550 
+ 00017743  0x000040f2 branch  0x00004554 
+ 00017744  0x000040f5 fetch  0x00000001 , 0x00004724 
+ 00017745  0x000040f6 branch  0x0000455a , 0x00000034 
+ 00017746  0x000040f7 increase  0xffffffff , 0x0000003f 
+ 00017747  0x000040f8 branch  0x00004557 
+ 00017748  0x000040fa fetch  0x00000001 , 0x00004725 
+ 00017749  0x000040fb branch  0x0000455d , 0x00000034 
+ 00017750  0x000040fc increase  0x00000001 , 0x0000003f 
+ 00017751  0x000040fe copy  0x0000003f , 0x00000007 
+ 00017752  0x000040ff arg  0x00000001 , 0x00000011 
+ 00017753  0x00004100 branch  0x00004560 
+ 00017754  0x00004103 arg  0x00000000 , 0x00000007 
+ 00017755  0x00004104 arg  0x00000000 , 0x00000011 
+ 00017756  0x00004105 branch  0x00004560 
+ 00017757  0x00004107 arg  0x00000002 , 0x00000007 
+ 00017758  0x00004108 arg  0x00000000 , 0x00000011 
+ 00017759  0x00004109 branch  0x00004560 
+ 00017760  0x0000410c copy  0x00000011 , 0x0000003f 
+ 00017761  0x0000410d store  0x00000001 , 0x00004761 
+ 00017762  0x0000410e fetch  0x00000001 , 0x00004763 
+ 00017763  0x0000410f beq  0x00000000 , 0x00002ee4 
+ 00017764  0x00004110 fetch  0x00000002 , 0x00004753 
+ 00017765  0x00004111 store  0x00000002 , 0x00004755 
+ 00017766  0x00004112 fetch  0x00000001 , 0x00004761 
+ 00017767  0x00004113 branch  0x00004580 , 0x00000034 
+ 00017768  0x00004115 bpatch  0x000000f3 , 0x0000401e 
+ 00017769  0x00004116 arg  0x00000000 , 0x00000011 
+ 00017770  0x00004117 call  0x00007d14 
+ 00017771  0x00004119 copy  0x00000007 , 0x0000003f 
+ 00017772  0x0000411a beq  0x00000004 , 0x000045a3 
+ 00017773  0x0000411b beq  0x00000005 , 0x000045a5 
+ 00017774  0x0000411c beq  0x00000006 , 0x000045a7 
+ 00017775  0x00004120 call  0x0000458b 
+ 00017776  0x00004121 beq  0x00000000 , 0x00004574 
+ 00017777  0x00004122 beq  0x00000002 , 0x0000457a 
+ 00017778  0x00004123 beq  0x00000003 , 0x00004574 
+ 00017779  0x00004124 rtn 
+ 00017780  0x00004127 copy  0x00000007 , 0x0000003f 
+ 00017781  0x00004128 beq  0x00000000 , 0x0000458f 
+ 00017782  0x00004129 beq  0x00000001 , 0x00004591 
+ 00017783  0x0000412a beq  0x00000002 , 0x00004593 
+ 00017784  0x0000412b beq  0x00000003 , 0x00004595 
+ 00017785  0x0000412c rtn 
+ 00017786  0x0000412f copy  0x00000007 , 0x0000003f 
+ 00017787  0x00004130 beq  0x00000000 , 0x00004597 
+ 00017788  0x00004131 beq  0x00000001 , 0x0000459a 
+ 00017789  0x00004132 beq  0x00000002 , 0x0000459d 
+ 00017790  0x00004133 beq  0x00000003 , 0x000045a0 
+ 00017791  0x00004134 rtn 
+ 00017792  0x00004137 bpatch  0x000000f4 , 0x0000401e 
+ 00017793  0x00004138 arg  0x00000000 , 0x00000011 
+ 00017794  0x00004139 call  0x00007d19 
+ 00017795  0x0000413b copy  0x00000007 , 0x0000003f 
+ 00017796  0x0000413c beq  0x00000004 , 0x000045bc 
+ 00017797  0x0000413d beq  0x00000005 , 0x000045bc 
+ 00017798  0x00004141 call  0x0000458b 
+ 00017799  0x00004142 beq  0x00000000 , 0x000045a9 
+ 00017800  0x00004143 beq  0x00000002 , 0x000045af 
+ 00017801  0x00004144 beq  0x00000003 , 0x000045a9 
+ 00017802  0x00004145 rtn 
+ 00017803  0x00004148 fetch  0x00000001 , 0x00004728 
+ 00017804  0x00004149 fetcht  0x00000001 , 0x00004727 
+ 00017805  0x0000414a ior  0x00000002 , 0x0000003f 
+ 00017806  0x0000414b rtn 
+ 00017807  0x0000414f jam  0x00000001 , 0x00004734 
+ 00017808  0x00004150 branch  0x000045be 
+ 00017809  0x00004152 jam  0x00000002 , 0x00004734 
+ 00017810  0x00004153 branch  0x000045be 
+ 00017811  0x00004155 jam  0x00000001 , 0x00004736 
+ 00017812  0x00004156 branch  0x000045be 
+ 00017813  0x00004158 jam  0x00000002 , 0x00004736 
+ 00017814  0x00004159 branch  0x000045be 
+ 00017815  0x0000415d jam  0x00000001 , 0x00004734 
+ 00017816  0x0000415e jam  0x00000001 , 0x00004736 
+ 00017817  0x0000415f branch  0x000045be 
+ 00017818  0x00004161 jam  0x00000002 , 0x00004734 
+ 00017819  0x00004162 jam  0x00000002 , 0x00004736 
+ 00017820  0x00004163 branch  0x000045be 
+ 00017821  0x00004165 jam  0x00000002 , 0x00004734 
+ 00017822  0x00004166 jam  0x00000001 , 0x00004736 
+ 00017823  0x00004167 branch  0x000045be 
+ 00017824  0x00004169 jam  0x00000001 , 0x00004734 
+ 00017825  0x0000416a jam  0x00000002 , 0x00004736 
+ 00017826  0x0000416b branch  0x000045be 
+ 00017827  0x0000416f jam  0x00000001 , 0x00004738 
+ 00017828  0x00004170 branch  0x000045be 
+ 00017829  0x00004172 jam  0x00000002 , 0x00004738 
+ 00017830  0x00004173 branch  0x000045be 
+ 00017831  0x00004176 jam  0x00000001 , 0x00004741 
+ 00017832  0x00004177 branch  0x000045c0 
+ 00017833  0x0000417a copy  0x00000007 , 0x0000003f 
+ 00017834  0x0000417b beq  0x00000000 , 0x000045b5 
+ 00017835  0x0000417c beq  0x00000001 , 0x000045b5 
+ 00017836  0x0000417d beq  0x00000002 , 0x000045b7 
+ 00017837  0x0000417e beq  0x00000003 , 0x000045b7 
+ 00017838  0x0000417f rtn 
+ 00017839  0x00004182 copy  0x00000007 , 0x0000003f 
+ 00017840  0x00004183 beq  0x00000000 , 0x000045b9 
+ 00017841  0x00004184 beq  0x00000001 , 0x000045b9 
+ 00017842  0x00004185 beq  0x00000002 , 0x000045b9 
+ 00017843  0x00004186 beq  0x00000003 , 0x000045b9 
+ 00017844  0x00004187 rtn 
+ 00017845  0x0000418b jam  0x00000000 , 0x00004734 
+ 00017846  0x0000418c branch  0x000045be 
+ 00017847  0x0000418f jam  0x00000000 , 0x00004736 
+ 00017848  0x00004190 branch  0x000045be 
+ 00017849  0x00004196 jam  0x00000000 , 0x00004734 
+ 00017850  0x00004197 jam  0x00000000 , 0x00004736 
+ 00017851  0x00004198 branch  0x000045be 
+ 00017852  0x0000419c jam  0x00000000 , 0x00004738 
+ 00017853  0x0000419d branch  0x000045be 
+ 00017854  0x000041a0 arg  0x0000472e , 0x00000011 
+ 00017855  0x000041a1 branch  0x00007e3d 
+ 00017856  0x000041a3 arg  0x0000473b , 0x00000011 
+ 00017857  0x000041a4 branch  0x00007e3d 
+ 00017858  0x000041a7 fetch  0x00000001 , 0x00004764 
+ 00017859  0x000041a8 beq  0x00000001 , 0x000045cc 
+ 00017860  0x000041a9 arg  0x00004744 , 0x00000011 
+ 00017861  0x000041aa call  0x00007e54 
+ 00017862  0x000041ab nbranch  0x000045d1 , 0x00000028 
+ 00017863  0x000041ad arg  0x00004744 , 0x00000006 
+ 00017864  0x000041ae ifetch  0x00000001 , 0x00000006 
+ 00017865  0x000041af copy  0x0000003f , 0x00000011 
+ 00017866  0x000041b0 arg  0x00004745 , 0x00000012 
+ 00017867  0x000041b3 rtn 
+ 00017868  0x000041b6 jam  0x00000000 , 0x00004764 
+ 00017869  0x000041b7 enable  0x00000028 
+ 00017870  0x000041b8 arg  0x00000001 , 0x00000011 
+ 00017871  0x000041b9 arg  0x00004766 , 0x00000012 
+ 00017872  0x000041ba rtn 
+ 00017873  0x000041bd fetch  0x00000001 , 0x00004747 
+ 00017874  0x000041be beq  0x00000004 , 0x000045d5 
+ 00017875  0x000041bf beq  0x00000005 , 0x000045d5 
+ 00017876  0x000041c0 rtn 
+ 00017877  0x000041c2 fetch  0x00000001 , 0x0000474a 
+ 00017878  0x000041c3 nbranch  0x000045dc , 0x00000034 
+ 00017879  0x000041c4 fetch  0x00000001 , 0x0000474c 
+ 00017880  0x000041c5 nbranch  0x000045dc , 0x00000034 
+ 00017881  0x000041c6 fetch  0x00000001 , 0x0000474e 
+ 00017882  0x000041c7 nbranch  0x000045dc , 0x00000034 
+ 00017883  0x000041c8 rtn 
+ 00017884  0x000041ca enable  0x00000028 
+ 00017885  0x000041cb branch  0x000045c7 
+ 00017886  0x000041d4 rtn  0x0000002b 
+ 00017887  0x000041d5 hfetch  0x00000001 , 0x00008081 
+ 00017888  0x000041d6 and_into  0x000000fc , 0x0000003f 
+ 00017889  0x000041d7 hstore  0x00000001 , 0x00008081 
+ 00017890  0x000041d8 setarg  0x000046b4 
+ 00017891  0x000041d9 store  0x00000002 , 0x000041eb 
+ 00017892  0x000041db setarg  0x000046b3 
+ 00017893  0x000041dc store  0x00000002 , 0x000041ed 
+ 00017894  0x000041de setarg  0x0000340a 
+ 00017895  0x000041df store  0x00000002 , 0x000041f7 
+ 00017896  0x000041e1 setarg  0x000046b1 
+ 00017897  0x000041e2 store  0x00000002 , 0x000041f3 
+ 00017898  0x000041e4 setarg  0x00004612 
+ 00017899  0x000041e5 store  0x00000002 , 0x000041f5 
+ 00017900  0x000041e7 setarg  0x0000460c 
+ 00017901  0x000041e8 store  0x00000002 , 0x000041e9 
+ 00017902  0x000041ea setarg  0x0000476a 
+ 00017903  0x000041eb store  0x00000002 , 0x000041f9 
+ 00017904  0x000041ed setarg  0x00004686 
+ 00017905  0x000041ee store  0x00000002 , 0x000041fd 
+ 00017906  0x000041f0 setarg  0x00004729 
+ 00017907  0x000041f1 store  0x00000002 , 0x000046e7 
+ 00017908  0x000041f3 setarg  0x00004806 
+ 00017909  0x000041f4 store  0x00000002 , 0x000046e2 
+ 00017910  0x000041f5 setarg  0x00004807 
+ 00017911  0x000041f6 store  0x00000002 , 0x000046e4 
+ 00017912  0x000041f8 call  0x000057a3 
+ 00017913  0x000041f9 call  0x000047da 
+ 00017914  0x000041fa call  0x00004788 
+ 00017915  0x000041fb call  0x0000476d 
+ 00017916  0x000041fc call  0x00006948 
+ 00017917  0x000041fd call  0x0000477a 
+ 00017918  0x000041fe call  0x00007e38 
+ 00017919  0x000041ff call  0x00007d08 
+ 00017920  0x00004200 call  0x00004793 
+ 00017921  0x00004201 call  0x000047c7 
+ 00017922  0x00004203 bpatch  0x000000f5 , 0x0000401e 
+ 00017923  0x00004204 call  0x0000464f 
+ 00017924  0x00004205 fetch  0x00000001 , 0x000046dd 
+ 00017925  0x00004206 beq  0x00000000 , 0x00004609 
+ 00017926  0x00004207 fetch  0x00000001 , 0x000046de 
+ 00017927  0x00004208 store  0x00000001 , 0x00004686 
+ 00017928  0x00004209 branch  0x0000480e 
+ 00017929  0x0000420d jam  0x000000ff , 0x00004686 
+ 00017930  0x0000420e jam  0x00000001 , 0x000046df 
+ 00017931  0x0000420f branch  0x000046d9 
+ 00017932  0x00004214 fetch  0x00000001 , 0x000046df 
+ 00017933  0x00004215 beq  0x00000002 , 0x000033d0 
+ 00017934  0x00004216 call  0x0000527e 
+ 00017935  0x00004217 fetch  0x00000001 , 0x00004256 
+ 00017936  0x00004218 nbranch  0x000033d0 , 0x00000034 
+ 00017937  0x00004219 branch  0x000033d2 
+ 00017938  0x0000421e copy  0x00000013 , 0x0000003f 
+ 00017939  0x00004220 beq  0x00000001 , 0x00004626 
+ 00017940  0x00004221 beq  0x00000002 , 0x00004629 
+ 00017941  0x00004222 beq  0x00000004 , 0x00004631 
+ 00017942  0x00004223 beq  0x00000005 , 0x00004633 
+ 00017943  0x00004224 beq  0x00000006 , 0x00004635 
+ 00017944  0x00004225 beq  0x00000007 , 0x00004638 
+ 00017945  0x00004226 beq  0x00000012 , 0x0000463c 
+ 00017946  0x00004227 beq  0x00000013 , 0x00004644 
+ 00017947  0x00004228 beq  0x00000027 , 0x00004645 
+ 00017948  0x00004229 beq  0x0000002e , 0x00004648 
+ 00017949  0x0000422a beq  0x0000003d , 0x00004649 
+ 00017950  0x0000422c beq  0x00000014 , 0x00004658 
+ 00017951  0x0000422d beq  0x00000015 , 0x0000465c 
+ 00017952  0x0000422e beq  0x0000003f , 0x0000465f 
+ 00017953  0x0000422f beq  0x00000040 , 0x00004665 
+ 00017954  0x00004231 beq  0x00000010 , 0x0000466b 
+ 00017955  0x00004232 beq  0x0000002c , 0x0000466c 
+ 00017956  0x00004233 beq  0x0000002d , 0x00004677 
+ 00017957  0x00004234 rtn 
+ 00017958  0x0000423a jam  0x00000000 , 0x000046ad 
+ 00017959  0x0000423b jam  0x00000000 , 0x000046ac 
+ 00017960  0x0000423c rtn 
+ 00017961  0x00004240 call  0x0000462b 
+ 00017962  0x00004241 branch  0x00004631 
+ 00017963  0x00004244 jam  0x00000000 , 0x000041e2 
+ 00017964  0x00004245 jam  0x00000000 , 0x00004680 
+ 00017965  0x00004246 jam  0x00000000 , 0x00004205 
+ 00017966  0x00004247 jam  0x00000000 , 0x000046ac 
+ 00017967  0x00004248 jam  0x00000000 , 0x000046ad 
+ 00017968  0x00004249 branch  0x00007e38 
+ 00017969  0x0000424d call  0x000033a9 
+ 00017970  0x0000424e branch  0x000046c2 
+ 00017971  0x00004252 call  0x000046b6 
+ 00017972  0x00004253 branch  0x00003408 
+ 00017973  0x00004257 setarg  0x00000002 
+ 00017974  0x00004258 store  0x00000001 , 0x00004680 
+ 00017975  0x00004259 rtn 
+ 00017976  0x0000425d jam  0x00000000 , 0x000046ac 
+ 00017977  0x0000425e setarg  0x00000001 
+ 00017978  0x0000425f store  0x00000001 , 0x000046ad 
+ 00017979  0x00004260 rtn 
+ 00017980  0x00004264 fetch  0x00000001 , 0x000041e2 
+ 00017981  0x00004265 rtneq  0x00000001 
+ 00017982  0x00004266 jam  0x00000001 , 0x000041e2 
+ 00017983  0x00004267 call  0x00003416 
+ 00017984  0x00004268 call  0x00003414 
+ 00017985  0x00004269 call  0x000046b6 
+ 00017986  0x0000426a call  0x00003408 
+ 00017987  0x0000426b branch  0x0000340e 
+ 00017988  0x0000426f branch  0x00004631 
+ 00017989  0x00004273 setarg  0x00000005 
+ 00017990  0x00004274 store  0x00000001 , 0x000046ac 
+ 00017991  0x00004275 rtn 
+ 00017992  0x00004279 branch  0x000033cd 
+ 00017993  0x0000427e arg  0x00000000 , 0x00000012 
+ 00017994  0x0000427f fetch  0x00000001 , 0x00004217 
+ 00017995  0x00004280 mul32  0x0000003f , 0x00000022 , 0x00000002 
+ 00017996  0x00004281 fetch  0x00000002 , 0x00004215 
+ 00017997  0x00004282 copy  0x0000003f , 0x00000011 
+ 00017998  0x00004283 branch  0x00006606 
+ 00017999  0x00004286 arg  0x00000000 , 0x00000012 
+ 00018000  0x00004287 fetch  0x00000001 , 0x0000469a 
+ 00018001  0x00004288 rtnbit0  0x00000001 
+ 00018002  0x00004289 fetch  0x00000001 , 0x00004217 
+ 00018003  0x0000428a rtn  0x00000034 
+ 00018004  0x0000428b mul32  0x0000003f , 0x00000022 , 0x00000002 
+ 00018005  0x0000428c fetch  0x00000002 , 0x00004215 
+ 00018006  0x0000428d copy  0x0000003f , 0x00000011 
+ 00018007  0x0000428e branch  0x000065df 
+ 00018008  0x00004293 call  0x000046b6 
+ 00018009  0x00004294 setarg  0x00000000 
+ 00018010  0x00004295 store  0x00000002 , 0x000046b7 
+ 00018011  0x00004296 branch  0x00003408 
+ 00018012  0x0000429a call  0x00007e38 
+ 00018013  0x0000429b jam  0x00000000 , 0x000046b0 
+ 00018014  0x0000429c branch  0x000046d9 
+ 00018015  0x000042a0 call  0x00007e38 
+ 00018016  0x000042a1 jam  0x00000001 , 0x000046b0 
+ 00018017  0x000042a2 fetch  0x00000008 , 0x000046c1 
+ 00018018  0x000042a3 store  0x00000008 , 0x00004496 
+ 00018019  0x000042a4 call  0x00003416 
+ 00018020  0x000042a5 branch  0x00005abf 
+ 00018021  0x000042a9 fetch  0x00000002 , 0x00004509 
+ 00018022  0x000042aa rtneq  0x00000000 
+ 00018023  0x000042ab fetch  0x00000008 , 0x000046c9 
+ 00018024  0x000042ac rtn  0x00000034 
+ 00018025  0x000042ad store  0x00000008 , 0x00004496 
+ 00018026  0x000042ae branch  0x00005abf 
+ 00018027  0x000042b3 branch  0x0000481f 
+ 00018028  0x000042b6 fetch  0x00000001 , 0x000046dd 
+ 00018029  0x000042b7 rtneq  0x00000000 
+ 00018030  0x000042b8 fetch  0x00000001 , 0x000046df 
+ 00018031  0x000042b9 rtnne  0x00000001 
+ 00018032  0x000042ba call  0x00004672 
+ 00018033  0x000042bb branch  0x00003406 
+ 00018034  0x000042be jam  0x00000001 , 0x000048df 
+ 00018035  0x000042bf arg  0x0000000b , 0x00000039 
+ 00018036  0x000042c0 arg  0x000048e0 , 0x00000005 
+ 00018037  0x000042c1 arg  0x000048c9 , 0x00000006 
+ 00018038  0x000042c2 branch  0x00007f01 
+ 00018039  0x000042c5 fetch  0x00000001 , 0x000046dd 
+ 00018040  0x000042c6 rtneq  0x00000000 
+ 00018041  0x000042c7 fetch  0x00000001 , 0x000046df 
+ 00018042  0x000042c8 beq  0x00000001 , 0x0000467c 
+ 00018043  0x000042c9 branch  0x0000481b 
+ 00018044  0x000042cc fetch  0x00000001 , 0x000048df 
+ 00018045  0x000042cd rtnne  0x00000001 
+ 00018046  0x000042ce jam  0x00000000 , 0x000048df 
+ 00018047  0x000042cf fetch  0x00000002 , 0x00004682 
+ 00018048  0x000042d0 bbit1  0x00000000 , 0x00003408 
+ 00018049  0x000042d1 bbit1  0x00000009 , 0x00003408 
+ 00018050  0x000042d2 arg  0x0000000b , 0x00000039 
+ 00018051  0x000042d3 arg  0x000048e0 , 0x00000006 
+ 00018052  0x000042d4 arg  0x000048c9 , 0x00000005 
+ 00018053  0x000042d5 branch  0x00007f01 
+ 00018054  0x000042dc call  0x0000468c 
+ 00018055  0x000042df call  0x00004693 
+ 00018056  0x000042e2 call  0x0000469e 
+ 00018057  0x000042e3 call  0x000046a6 
+ 00018058  0x000042e4 call  0x000046a9 
+ 00018059  0x000042e7 branch  0x000046ac 
+ 00018060  0x000042ec arg  0x000046db , 0x00000013 
+ 00018061  0x000042ed arg  0x0000468f , 0x00000012 
+ 00018062  0x000042ee branch  0x00003374 
+ 00018063  0x000042f0 jam  0x00000002 , 0x000046df 
+ 00018064  0x000042f1 call  0x00003408 
+ 00018065  0x000042f2 call  0x000046f4 
+ 00018066  0x000042f3 branch  0x0000480b 
+ 00018067  0x000042f7 arg  0x000048ec , 0x00000013 
+ 00018068  0x000042f8 arg  0x00004696 , 0x00000012 
+ 00018069  0x000042f9 branch  0x0000336d 
+ 00018070  0x000042fc fetch  0x00000002 , 0x00004682 
+ 00018071  0x000042fd bbit1  0x00000009 , 0x0000480b 
+ 00018072  0x000042fe bbit1  0x00000000 , 0x0000480b 
+ 00018073  0x000042ff fetch  0x00000001 , 0x000048c9 
+ 00018074  0x00004300 beq  0x00000001 , 0x0000480b 
+ 00018075  0x00004301 beq  0x00000004 , 0x0000480b 
+ 00018076  0x00004302 beq  0x00000005 , 0x0000480b 
+ 00018077  0x00004303 branch  0x0000340a 
+ 00018078  0x00004308 arg  0x000046ac , 0x00000013 
+ 00018079  0x00004309 arg  0x000046a1 , 0x00000012 
+ 00018080  0x0000430a branch  0x0000336d 
+ 00018081  0x0000430d fetch  0x00000001 , 0x0000027f 
+ 00018082  0x0000430e set1  0x00000000 , 0x0000003f 
+ 00018083  0x0000430f set1  0x00000007 , 0x0000003f 
+ 00018084  0x00004310 store  0x00000001 , 0x0000027f 
+ 00018085  0x00004311 rtn 
+ 00018086  0x00004314 arg  0x00004680 , 0x00000013 
+ 00018087  0x00004315 arg  0x0000463c , 0x00000012 
+ 00018088  0x00004316 branch  0x0000336d 
+ 00018089  0x00004319 arg  0x000046ad , 0x00000013 
+ 00018090  0x0000431a arg  0x000033e9 , 0x00000012 
+ 00018091  0x0000431b branch  0x0000336d 
+ 00018092  0x00004321 fetch  0x00000001 , 0x000046df 
+ 00018093  0x00004322 rtnne  0x00000001 
+ 00018094  0x00004323 arg  0x000046b7 , 0x00000013 
+ 00018095  0x00004324 arg  0x000046c2 , 0x00000012 
+ 00018096  0x00004325 branch  0x00003374 
+ 00018097  0x00004329 call  0x0000473a 
+ 00018098  0x0000432a branch  0x00006978 
+ 00018099  0x0000432e branch  0x0000696c 
+ 00018100  0x00004331 call  0x00006835 
+ 00018101  0x00004332 branch  0x000046b3 
+ 00018102  0x00004339 fetch  0x00000001 , 0x0000469a 
+ 00018103  0x0000433a bbit1  0x00000001 , 0x000046be 
+ 00018104  0x0000433b bbit1  0x00000000 , 0x000046ba 
+ 00018105  0x0000433c rtn 
+ 00018106  0x0000433f fetch  0x00000002 , 0x000046d7 
+ 00018107  0x00004340 store  0x00000002 , 0x000046d9 
+ 00018108  0x00004341 store  0x00000002 , 0x000046db 
+ 00018109  0x00004342 branch  0x000033f8 
+ 00018110  0x00004345 fetch  0x00000002 , 0x000046d3 
+ 00018111  0x00004346 store  0x00000002 , 0x000046d9 
+ 00018112  0x00004347 store  0x00000002 , 0x000046db 
+ 00018113  0x00004348 branch  0x000033f0 
+ 00018114  0x0000434b fetch  0x00000001 , 0x000046df 
+ 00018115  0x0000434c rtnne  0x00000001 
+ 00018116  0x0000434d fetch  0x00000001 , 0x0000469a 
+ 00018117  0x0000434e bbit1  0x00000001 , 0x000046c8 
+ 00018118  0x0000434f bbit1  0x00000000 , 0x000046cc 
+ 00018119  0x00004350 rtn 
+ 00018120  0x00004353 fetch  0x00000002 , 0x000046d1 ,
+ 00018121  0x00004354 store  0x00000002 , 0x000046d9 
+ 00018122  0x00004355 store  0x00000002 , 0x000046db 
+ 00018123  0x00004356 branch  0x000033eb 
+ 00018124  0x00004359 fetch  0x00000002 , 0x00004682 
+ 00018125  0x0000435a rtnbit1  0x00000009 
+ 00018126  0x0000435b fetch  0x00000002 , 0x000046d5 
+ 00018127  0x0000435c store  0x00000002 , 0x000046d9 
+ 00018128  0x0000435d store  0x00000002 , 0x000046db 
+ 00018129  0x0000435e fetch  0x00000002 , 0x000046b3 
+ 00018130  0x0000435f call  0x000046f0 
+ 00018131  0x00004360 call  0x00003404 
+ 00018132  0x00004361 fetch  0x00000004 , 0x000046bd 
+ 00018133  0x00004362 store  0x00000004 , 0x000048cc 
+ 00018134  0x00004363 fetch  0x00000002 , 0x00004682 
+ 00018135  0x00004364 rtnbit1  0x0000000b 
+ 00018136  0x00004365 branch  0x000033fa 
+ 00018137  0x00004369 fetch  0x00000001 , 0x000046df 
+ 00018138  0x0000436a rtnne  0x00000001 
+ 00018139  0x0000436b fetch  0x00000001 , 0x0000469a 
+ 00018140  0x0000436c bbit1  0x00000001 , 0x000046df 
+ 00018141  0x0000436d bbit1  0x00000000 , 0x000046e4 
+ 00018142  0x0000436e rtn 
+ 00018143  0x00004371 call  0x000046f8 
+ 00018144  0x00004372 branch  0x000046c2 , 0x00000034 
+ 00018145  0x00004373 call  0x00003406 
+ 00018146  0x00004374 call  0x000033f0 
+ 00018147  0x00004375 branch  0x000033e1 
+ 00018148  0x00004378 fetch  0x00000002 , 0x000046b7 
+ 00018149  0x00004379 fetcht  0x00000002 , 0x000046b5 
+ 00018150  0x0000437a storet  0x00000002 , 0x000046b7 
+ 00018151  0x0000437b nrtn  0x00000034 
+ 00018152  0x0000437c fetch  0x00000002 , 0x000046b1 
+ 00018153  0x0000437d call  0x000046f0 
+ 00018154  0x0000437e call  0x00003404 
+ 00018155  0x0000437f fetch  0x00000004 , 0x000046b9 
+ 00018156  0x00004380 store  0x00000004 , 0x000048cc 
+ 00018157  0x00004381 fetch  0x00000002 , 0x00004682 
+ 00018158  0x00004382 rtnbit1  0x0000000b 
+ 00018159  0x00004383 branch  0x000033fa 
+ 00018160  0x00004387 store  0x00000002 , 0x00004154 
+ 00018161  0x00004388 increase  0xfffffffc , 0x0000003f 
+ 00018162  0x00004389 store  0x00000002 , 0x00004482 
+ 00018163  0x0000438a rtn 
+ 00018164  0x0000438e fetch  0x00000002 , 0x00004682 
+ 00018165  0x0000438f bbit1  0x00000009 , 0x00003402 
+ 00018166  0x00004390 bbit1  0x00000000 , 0x000033e9 
+ 00018167  0x00004391 branch  0x000046b6 
+ 00018168  0x00004396 fetch  0x00000001 , 0x00004217 
+ 00018169  0x00004397 copy  0x0000003f , 0x00000039 
+ 00018170  0x00004398 fetch  0x00000002 , 0x00004215 
+ 00018171  0x00004399 copy  0x0000003f , 0x00000011 
+ 00018172  0x0000439b ifetch  0x00000002 , 0x00000011 
+ 00018173  0x0000439c beq  0x00000000 , 0x00004701 
+ 00018174  0x0000439d increase  0x00000022 , 0x00000011 
+ 00018175  0x0000439e loop  0x000046fc 
+ 00018176  0x0000439f branch  0x00007ff1 
+ 00018177  0x000043a2 ifetch  0x00000006 , 0x00000006 
+ 00018178  0x000043a3 store  0x00000006 , 0x000041d0 
+ 00018179  0x000043a4 increase  0x0000000a , 0x00000006 
+ 00018180  0x000043a5 arg  0x000041be , 0x00000005 
+ 00018181  0x000043a6 call  0x00007ebf 
+ 00018182  0x000043a7 call  0x000067d7 
+ 00018183  0x000043a8 branch  0x00007fef 
+ 00018184  0x000043af call  0x00007fe9 
+ 00018185  0x000043b0 fetch  0x00000002 , 0x00004682 
+ 00018186  0x000043b1 bbit1  0x00000000 , 0x0000470d 
+ 00018187  0x000043b2 bbit1  0x00000009 , 0x00004710 
+ 00018188  0x000043b3 rtn 
+ 00018189  0x000043b6 fetch  0x00000001 , 0x00004253 
+ 00018190  0x000043b7 rtnne  0x0000003f 
+ 00018191  0x000043b8 branch  0x00007fe7 
+ 00018192  0x000043bb fetch  0x00000001 , 0x000046b0 
+ 00018193  0x000043bc rtn  0x00000034 
+ 00018194  0x000043bd branch  0x00007fe7 
+ 00018195  0x000043c3 call  0x00007fe9 
+ 00018196  0x000043c4 fetch  0x00000002 , 0x00004682 
+ 00018197  0x000043c5 rtnbit1  0x00000000 
+ 00018198  0x000043c6 rtnbit1  0x00000009 
+ 00018199  0x000043c7 branch  0x00007fe7 
+ 00018200  0x000043cc fetch  0x00000001 , 0x0000469a 
+ 00018201  0x000043cd bbit1  0x00000001 , 0x0000471c 
+ 00018202  0x000043ce bbit1  0x00000000 , 0x0000471f 
+ 00018203  0x000043cf rtn 
+ 00018204  0x000043d2 fetch  0x00000001 , 0x00004093 
+ 00018205  0x000043d3 rtnne  0x00000003 
+ 00018206  0x000043d4 branch  0x000046d9 
+ 00018207  0x000043d7 branch  0x000046d9 
+ 00018208  0x000043db disable  0x0000002c 
+ 00018209  0x000043dc fetch  0x00000002 , 0x000046d9 
+ 00018210  0x000043dd store  0x00000002 , 0x000046db 
+ 00018211  0x000043df call  0x00004713 
+ 00018212  0x000043e0 branch  0x00004718 , 0x00000028 
+ 00018213  0x000043e2 call  0x00004708 
+ 00018214  0x000043e3 nrtn  0x00000028 
+ 00018215  0x000043e4 enable  0x0000002c 
+ 00018216  0x000043e5 rtn 
+ 00018217  0x000043ea call  0x00004720 
+ 00018218  0x000043eb nrtn  0x0000002c 
+ 00018219  0x000043ec deposit  0x00000011 
+ 00018220  0x000043ed branch  0x00004730 , 0x00000034 
+ 00018221  0x000043ef call  0x00003406 
+ 00018222  0x000043f0 arg  0x000046f1 , 0x00000013 
+ 00018223  0x000043f1 branch  0x00004732 
+ 00018224  0x000043f4 call  0x00003408 
+ 00018225  0x000043f5 arg  0x00004719 , 0x00000013 
+ 00018226  0x000043f8 arg  0x00000005 , 0x0000003f 
+ 00018227  0x000043f9 imul32  0x00000007 , 0x0000003f 
+ 00018228  0x000043fa iadd  0x00000013 , 0x00000013 
+ 00018229  0x000043fe ifetch  0x00000001 , 0x00000013 
+ 00018230  0x000043ff rtn  0x00000034 
+ 00018231  0x00004400 call  0x00004762 
+ 00018232  0x00004401 increase  0x00000001 , 0x00000013 
+ 00018233  0x00004402 branch  0x00004735 
+ 00018234  0x00004406 fetch  0x00000002 , 0x00004682 
+ 00018235  0x00004407 bbit1  0x00000009 , 0x0000473e 
+ 00018236  0x00004408 bbit1  0x00000000 , 0x0000474e 
+ 00018237  0x00004409 rtn 
+ 00018238  0x0000440c call  0x00005892 
+ 00018239  0x0000440d nrtn  0x00000034 
+ 00018240  0x0000440e call  0x00004765 
+ 00018241  0x0000440f nrtn  0x00000028 
+ 00018242  0x00004410 pincrease  0xffffffff 
+ 00018243  0x00004411 mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00018244  0x00004412 arg  0x00004741 , 0x00000002 
+ 00018245  0x00004413 iadd  0x00000002 , 0x00000006 
+ 00018246  0x00004415 ifetch  0x00000001 , 0x00000006 
+ 00018247  0x00004416 copy  0x0000003f , 0x00000011 
+ 00018248  0x00004417 ifetcht  0x00000002 , 0x00000006 
+ 00018249  0x00004418 call  0x00007ea5 
+ 00018250  0x00004419 call  0x00005a64 
+ 00018251  0x0000441a copy  0x00000011 , 0x00000039 
+ 00018252  0x0000441b call  0x00007e9f 
+ 00018253  0x0000441c branch  0x00007f01 
+ 00018254  0x00004420 call  0x00005271 
+ 00018255  0x00004421 nrtn  0x00000034 
+ 00018256  0x00004422 call  0x00004765 
+ 00018257  0x00004423 nrtn  0x00000028 
+ 00018258  0x00004424 pincrease  0xffffffff 
+ 00018259  0x00004425 mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00018260  0x00004426 arg  0x000047a0 , 0x00000002 
+ 00018261  0x00004427 iadd  0x00000002 , 0x00000006 
+ 00018262  0x00004428 ifetch  0x00000005 , 0x00000006 
+ 00018263  0x00004429 store  0x00000005 , 0x0000479b 
+ 00018264  0x0000442b fetch  0x00000001 , 0x0000479b 
+ 00018265  0x0000442c copy  0x0000003f , 0x00000011 
+ 00018266  0x0000442d call  0x00004d63 
+ 00018267  0x0000442e fetch  0x00000002 , 0x0000424e 
+ 00018268  0x0000442f istore  0x00000002 , 0x00000005 
+ 00018269  0x00004430 setarg  0x000000a1 
+ 00018270  0x00004431 istore  0x00000001 , 0x00000005 
+ 00018271  0x00004432 fetch  0x00000004 , 0x0000479c 
+ 00018272  0x00004433 istore  0x00000009 , 0x00000005 
+ 00018273  0x00004434 rtn 
+ 00018274  0x00004439 store  0x00000001 , 0x00000a9a 
+ 00018275  0x0000443a arg  0x00000a9a , 0x00000011 
+ 00018276  0x0000443b branch  0x00007e3d 
+ 00018277  0x0000443e arg  0x00000a9a , 0x00000011 
+ 00018278  0x0000443f call  0x00007e54 
+ 00018279  0x00004440 nrtn  0x00000028 
+ 00018280  0x00004441 fetch  0x00000001 , 0x00000a9a 
+ 00018281  0x00004442 rtn 
+ 00018282  0x00004446 fetch  0x00000002 , 0x00000478 
+ 00018283  0x00004447 beq  0x00000018 , 0x0000465f 
+ 00018284  0x00004448 rtn 
+ 00018285  0x0000444b setarg  0x00000002 
+ 00018286  0x0000444c store  0x00000001 , 0x000048eb 
+ 00018287  0x0000444e setarg  0x00200008 
+ 00018288  0x0000444f store  0x00000004 , 0x000046c1 
+ 00018289  0x00004450 setarg  0x012c0005 
+ 00018290  0x00004451 istore  0x00000004 , 0x00000005 
+ 00018291  0x00004454 jam  0x00000017 , 0x000044a6 
+ 00018292  0x00004457 setarg  0x0000001b 
+ 00018293  0x00004458 store  0x00000002 , 0x000044fa 
+ 00018294  0x00004459 call  0x00005810 
+ 00018295  0x0000445a call  0x0000582c 
+ 00018296  0x0000445b call  0x00005839 
+ 00018297  0x0000445c branch  0x00005818 
+ 00018298  0x00004461 arg  0x00000028 , 0x00000039 
+ 00018299  0x00004462 arg  0x00004741 , 0x00000005 
+ 00018300  0x00004463 arg  0x0000949f , 0x00000006 
+ 00018301  0x00004464 call  0x00007ef4 
+ 00018302  0x00004465 arg  0x00000028 , 0x00000039 
+ 00018303  0x00004466 arg  0x000047a0 , 0x00000005 
+ 00018304  0x00004467 arg  0x000094c7 , 0x00000006 
+ 00018305  0x00004468 branch  0x00007ef4 
+ 00018306  0x0000446c arg  0x0000017e , 0x00000039 
+ 00018307  0x0000446d arg  0x0000913a , 0x00000006 
+ 00018308  0x0000446e branch  0x00007ef4 
+ 00018309  0x00004472 arg  0x000001e7 , 0x00000039 
+ 00018310  0x00004473 arg  0x000092b8 , 0x00000006 
+ 00018311  0x00004474 branch  0x00007ef4 
+ 00018312  0x00004479 call  0x000047ae 
+ 00018313  0x0000447a nrtn  0x00000028 
+ 00018314  0x0000447b fetch  0x00000001 , 0x0000469f 
+ 00018315  0x0000447c call  0x00004790 
+ 00018316  0x0000447d fetch  0x00000001 , 0x000046a0 
+ 00018317  0x0000447e call  0x00004790 
+ 00018318  0x0000447f fetch  0x00000001 , 0x000046a1 
+ 00018319  0x00004480 branch  0x00004790 
+ 00018320  0x00004483 rtn  0x00000034 
+ 00018321  0x00004484 or  0x0000003f , 0x00000080 , 0x00000002 
+ 00018322  0x00004485 branch  0x000067f9 
+ 00018323  0x00004489 call  0x000047ae 
+ 00018324  0x0000448a nrtn  0x00000028 
+ 00018325  0x0000448b call  0x00004797 
+ 00018326  0x0000448c branch  0x000047b4 
+ 00018327  0x0000448f arg  0x00000000 , 0x00000011 
+ 00018328  0x00004490 fetch  0x00000001 , 0x0000469f 
+ 00018329  0x00004491 call  0x000047a9 
+ 00018330  0x00004492 nsetflag  0x00000034 , 0x00000000 , 0x00000011 
+ 00018331  0x00004493 fetch  0x00000001 , 0x000046a0 
+ 00018332  0x00004494 call  0x000047a9 
+ 00018333  0x00004495 nsetflag  0x00000034 , 0x00000001 , 0x00000011 
+ 00018334  0x00004496 fetch  0x00000001 , 0x000046a1 
+ 00018335  0x00004497 call  0x000047a9 
+ 00018336  0x00004498 nsetflag  0x00000034 , 0x00000002 , 0x00000011 
+ 00018337  0x00004499 copy  0x00000011 , 0x0000003f 
+ 00018338  0x0000449a store  0x00000001 , 0x000046a9 
+ 00018339  0x0000449b fetch  0x00000001 , 0x0000469e 
+ 00018340  0x0000449c imul32  0x00000011 , 0x0000003f 
+ 00018341  0x0000449d fetcht  0x00000002 , 0x0000469c 
+ 00018342  0x0000449e iadd  0x00000002 , 0x0000003f 
+ 00018343  0x0000449f store  0x00000002 , 0x000046aa 
+ 00018344  0x000044a0 rtn 
+ 00018345  0x000044a3 rtn  0x00000034 
+ 00018346  0x000044a4 or  0x0000003f , 0x00000080 , 0x00000002 
+ 00018347  0x000044a5 call  0x0000681d 
+ 00018348  0x000044a6 nbranch  0x00007ff1 , 0x00000001 
+ 00018349  0x000044a7 branch  0x00007fef 
+ 00018350  0x000044ab call  0x00007fe9 
+ 00018351  0x000044ac fetch  0x00000001 , 0x000046a8 
+ 00018352  0x000044ad nrtn  0x00000034 
+ 00018353  0x000044ae fetch  0x00000001 , 0x0000469b 
+ 00018354  0x000044af rtn  0x00000034 
+ 00018355  0x000044b0 branch  0x00007fe7 
+ 00018356  0x000044b4 call  0x0000666a 
+ 00018357  0x000044b5 fetch  0x00000002 , 0x000046aa 
+ 00018358  0x000044b6 arg  0x00000ac2 , 0x00000011 
+ 00018359  0x000044b7 fetcht  0x00000001 , 0x0000469e 
+ 00018360  0x000044b8 call  0x000066b3 
+ 00018361  0x000044b9 call  0x0000666d 
+ 00018362  0x000044bb fetch  0x00000001 , 0x00000ac2 
+ 00018363  0x000044bc copy  0x0000003f , 0x00000039 
+ 00018364  0x000044bd store  0x00000001 , 0x000043af 
+ 00018365  0x000044be call  0x00007ef4 
+ 00018366  0x000044bf fetch  0x00000001 , 0x00000ac2 
+ 00018367  0x000044c0 copy  0x0000003f , 0x00000039 
+ 00018368  0x000044c1 store  0x00000001 , 0x00004515 
+ 00018369  0x000044c2 call  0x00007ef4 
+ 00018370  0x000044c3 ifetch  0x00000001 , 0x00000006 
+ 00018371  0x000044c4 store  0x00000001 , 0x000046e6 
+ 00018372  0x000044c5 ifetch  0x00000001 , 0x00000006 
+ 00018373  0x000044c6 store  0x00000001 , 0x000046dd 
+ 00018374  0x000044c7 rtn 
+ 00018375  0x000044cb fetch  0x00000001 , 0x0000469a 
+ 00018376  0x000044cc rtnbit0  0x00000001 
+ 00018377  0x000044cd arg  0x00000003 , 0x00000002 
+ 00018378  0x000044ce fetch  0x00000002 , 0x000046a4 
+ 00018379  0x000044cf copy  0x0000003f , 0x00000012 
+ 00018380  0x000044d0 arg  0x000046a6 , 0x00000011 
+ 00018381  0x000044d1 call  0x000065df 
+ 00018382  0x000044d2 fetcht  0x00000002 , 0x000046a6 
+ 00018383  0x000044d3 setarg  0x00001b3a 
+ 00018384  0x000044d4 isub  0x00000002 , 0x0000003e 
+ 00018385  0x000044d5 nrtn  0x00000005 
+ 00018386  0x000044d6 fetch  0x00000001 , 0x000046a8 
+ 00018387  0x000044d7 rtn  0x00000034 
+ 00018388  0x000044d8 copy  0x0000003f , 0x00000002 
+ 00018389  0x000044d9 fetch  0x00000002 , 0x000046a4 
+ 00018390  0x000044da add  0x0000003f , 0x00000003 , 0x00000012 
+ 00018391  0x000044db arg  0x00000ac2 , 0x00000011 
+ 00018392  0x000044dc call  0x000065df 
+ 00018393  0x000044dd branch  0x000047e8 
+ 00018394  0x000044e0 fetch  0x00000002 , 0x000046a2 
+ 00018395  0x000044e1 rtn  0x00000034 
+ 00018396  0x000044e2 call  0x0000666a 
+ 00018397  0x000044e3 arg  0x00000001 , 0x00000002 
+ 00018398  0x000044e4 arg  0x000046a8 , 0x00000011 
+ 00018399  0x000044e5 call  0x000066b3 
+ 00018400  0x000044e7 fetch  0x00000001 , 0x000046a8 
+ 00018401  0x000044e8 rtn  0x00000034 
+ 00018402  0x000044ea fetch  0x00000002 , 0x000046a2 
+ 00018403  0x000044eb pincrease  0x00000001 
+ 00018404  0x000044ec arg  0x00000ac2 , 0x00000011 
+ 00018405  0x000044ed fetcht  0x00000001 , 0x000046a8 
+ 00018406  0x000044ee call  0x000066b3 
+ 00018407  0x000044ef call  0x0000666d 
+ 00018408  0x000044f1 call  0x000047ba 
+ 00018409  0x000044f3 ifetch  0x00000002 , 0x00000006 
+ 00018410  0x000044f4 rtn  0x00000034 
+ 00018411  0x000044f5 copy  0x0000003f , 0x00000005 
+ 00018412  0x000044f6 ifetcht  0x00000001 , 0x00000006 
+ 00018413  0x000044f7 copy  0x00000002 , 0x00000039 
+ 00018414  0x000044f8 call  0x00007f01 
+ 00018415  0x000044f9 branch  0x000047e9 
+ 00018416  0x000044fe fetch  0x00000001 , 0x0000469a 
+ 00018417  0x000044ff rtnbit0  0x00000001 
+ 00018418  0x00004500 fetch  0x00000002 , 0x000046ae 
+ 00018419  0x00004501 copy  0x0000003f , 0x00000012 
+ 00018420  0x00004502 arg  0x00000004 , 0x00000002 
+ 00018421  0x00004503 arg  0x00000ac2 , 0x00000011 
+ 00018422  0x00004504 call  0x000065df 
+ 00018423  0x00004505 fetch  0x00000001 , 0x00000ac2 
+ 00018424  0x00004506 bne  0x00000001 , 0x000047f9 
+ 00018425  0x00004508 setarg  0x00000001 
+ 00018426  0x00004509 store  0x00000001 , 0x00000ac2 
+ 00018427  0x0000450a force  0x00000003 , 0x00000039 
+ 00018428  0x0000450b call  0x0000630d 
+ 00018429  0x0000450c fetch  0x00000002 , 0x000046ae 
+ 00018430  0x0000450d copy  0x0000003f , 0x00000012 
+ 00018431  0x0000450e arg  0x00000004 , 0x00000002 
+ 00018432  0x0000450f arg  0x00000ac2 , 0x00000011 
+ 00018433  0x00004510 call  0x00006606 
+ 00018434  0x00004512 fetch  0x00000003 , 0x00000ac3 
+ 00018435  0x00004513 store  0x00000003 , 0x000040a0 
+ 00018436  0x00004514 store  0x00000003 , 0x000044a0 
+ 00018437  0x00004515 rtn 
+ 00018438  0x00004519 branch  0x000046d9 
+ 00018439  0x0000451d arg  0x00000000 , 0x00000011 
+ 00018440  0x0000451e arg  0x000048d4 , 0x00000013 
+ 00018441  0x0000451f call  0x00007d24 
+ 00018442  0x00004520 call  0x000046f4 
+ 00018443  0x00004522 fetch  0x00000001 , 0x000048eb 
+ 00018444  0x00004523 store  0x00000001 , 0x000048ec 
+ 00018445  0x00004524 rtn 
+ 00018446  0x00004529 setarg  0x00000000 
+ 00018447  0x0000452a call  0x00004816 
+ 00018448  0x0000452b jam  0x00000001 , 0x00004679 
+ 00018449  0x0000452c call  0x00007cd3 
+ 00018450  0x0000452d call  0x00007cdd 
+ 00018451  0x0000452e fetch  0x00000002 , 0x00004682 
+ 00018452  0x0000452f rtnbit1  0x0000000c 
+ 00018453  0x00004530 branch  0x0000340a 
+ 00018454  0x00004533 fetcht  0x00000002 , 0x0000423f 
+ 00018455  0x00004534 istore  0x00000001 , 0x00000002 
+ 00018456  0x00004535 ifetch  0x00000001 , 0x00000005 
+ 00018457  0x00004536 store  0x00000001 , 0x00004685 
+ 00018458  0x00004537 rtn 
+ 00018459  0x0000453b fetch  0x00000002 , 0x0000423f 
+ 00018460  0x0000453c ifetch  0x00000001 , 0x0000003f 
+ 00018461  0x0000453d rtnne  0x00000000 
+ 00018462  0x0000453e branch  0x0000340a 
+ 00018463  0x00004542 fetcht  0x00000002 , 0x0000423f 
+ 00018464  0x00004543 ifetch  0x00000001 , 0x00000002 
+ 00018465  0x00004544 beq  0x00000001 , 0x0000482a 
+ 00018466  0x00004546 setarg  0x00000001 
+ 00018467  0x00004547 fetcht  0x00000002 , 0x0000423f 
+ 00018468  0x00004548 istore  0x00000001 , 0x00000002 
+ 00018469  0x00004549 add  0x00000002 , 0x00000002 , 0x00000006 
+ 00018470  0x0000454a ifetch  0x00000001 , 0x00000006 
+ 00018471  0x0000454b istore  0x00000001 , 0x00004685 
+ 00018472  0x0000454c ifetch  0x00000002 , 0x00000006 
+ 00018473  0x0000454d branch  0x00007f9c 
+ 00018474  0x00004550 setarg  0x00000002 
+ 00018475  0x00004551 call  0x00004816 
+ 00018476  0x00004552 add  0x00000002 , 0x00000005 , 0x00000006 
+ 00018477  0x00004553 ifetch  0x00000002 , 0x00000006 
+ 00018478  0x00004554 branch  0x0000340a , 0x00000034 
+ 00018479  0x00004555 branch  0x00007f9c 
+ 00018480  0x0000455c store  0x00000006 , 0x00000101 
+ 00018481  0x0000455d fetch  0x00000001 , 0x00000101 
+ 00018482  0x0000455e store  0x00000001 , 0x0000010c 
+ 00018483  0x0000455f ifetch  0x00000001 , 0x00000006 
+ 00018484  0x00004560 store  0x00000001 , 0x0000010b 
+ 00018485  0x00004561 ifetch  0x00000001 , 0x00000006 
+ 00018486  0x00004562 store  0x00000001 , 0x0000010a 
+ 00018487  0x00004563 ifetch  0x00000001 , 0x00000006 
+ 00018488  0x00004564 store  0x00000001 , 0x00000109 
+ 00018489  0x00004565 ifetch  0x00000001 , 0x00000006 
+ 00018490  0x00004566 store  0x00000001 , 0x00000108 
+ 00018491  0x00004567 ifetch  0x00000001 , 0x00000006 
+ 00018492  0x00004568 store  0x00000001 , 0x00000107 
+ 00018493  0x00004569 fetch  0x00000006 , 0x00000107 
+ 00018494  0x0000456a rtn 
+ 00018495  0x0000456d call  0x000068a2 
+ 00018496  0x0000456e fetch  0x00000001 , 0x00004223 
+ 00018497  0x0000456f store  0x00000001 , 0x000044a0 
+ 00018498  0x00004570 fetch  0x00000001 , 0x00004225 
+ 00018499  0x00004571 istore  0x00000001 , 0x00000005 
+ 00018500  0x00004572 fetch  0x00000001 , 0x00004227 
+ 00018501  0x00004573 istore  0x00000001 , 0x00000005 
+ 00018502  0x00004574 fetch  0x00000003 , 0x000044a0 
+ 00018503  0x00004575 store  0x00000003 , 0x000040a0 
+ 00018504  0x00004576 rtn 
+ 00018505  0x00004583 fetch  0x00000002 , 0x00004203 
+ 00018506  0x00004584 iadd  0x00000012 , 0x0000003f 
+ 00018507  0x00004585 byteswap  0x0000003f , 0x0000003f 
+ 00018508  0x00004586 store  0x00000002 , 0x000001f7 
+ 00018509  0x00004587 copy  0x00000002 , 0x00000012 
+ 00018510  0x00004589 call  0x0000489b 
+ 00018511  0x0000458a setarg  0x000000a0 
+ 00018512  0x0000458b call  0x0000488d 
+ 00018513  0x0000458c fetch  0x00000001 , 0x000001f7 
+ 00018514  0x0000458d call  0x0000488d 
+ 00018515  0x0000458e bmark1  0x00000028 , 0x00004856 
+ 00018516  0x0000458f fetch  0x00000001 , 0x000001f8 
+ 00018517  0x00004590 call  0x0000488d 
+ 00018518  0x00004592 call  0x000048a1 
+ 00018519  0x00004594 call  0x0000489b 
+ 00018520  0x00004595 setarg  0x000000a1 
+ 00018521  0x00004596 call  0x0000488d 
+ 00018522  0x00004599 call  0x0000487f 
+ 00018523  0x0000459a istore  0x00000001 , 0x00000011 
+ 00018524  0x0000459b increase  0x00000001 , 0x00000011 
+ 00018525  0x0000459c increase  0xffffffff , 0x00000012 
+ 00018526  0x0000459d nbranch  0x0000485a , 0x00000005 
+ 00018527  0x0000459e branch  0x000048a1 
+ 00018528  0x000045aa byteswap  0x00000012 , 0x0000003f 
+ 00018529  0x000045ab store  0x00000002 , 0x000001f7 
+ 00018530  0x000045ac copy  0x00000002 , 0x00000012 
+ 00018531  0x000045ae call  0x0000489b 
+ 00018532  0x000045af setarg  0x000000a0 
+ 00018533  0x000045b0 call  0x0000488d 
+ 00018534  0x000045b2 fetch  0x00000001 , 0x000001f7 
+ 00018535  0x000045b3 call  0x0000488d 
+ 00018536  0x000045b4 bmark1  0x00000028 , 0x0000486b 
+ 00018537  0x000045b5 fetch  0x00000001 , 0x000001f8 
+ 00018538  0x000045b6 call  0x0000488d 
+ 00018539  0x000045b8 ifetch  0x00000001 , 0x00000011 
+ 00018540  0x000045b9 call  0x0000488d 
+ 00018541  0x000045ba increase  0x00000001 , 0x00000011 
+ 00018542  0x000045bb increase  0xffffffff , 0x00000012 
+ 00018543  0x000045bc nbranch  0x0000486b , 0x00000005 
+ 00018544  0x000045bd branch  0x000048a1 
+ 00018545  0x000045c2 arg  0x0000000a , 0x00000039 
+ 00018546  0x000045c3 call  0x000048be 
+ 00018547  0x000045c4 call  0x000048a6 
+ 00018548  0x000045c5 call  0x000048d2 
+ 00018549  0x000045c7 call  0x000048c7 
+ 00018550  0x000045c8 branch  0x000048a9 , 0x00000034 
+ 00018551  0x000045c9 loop  0x00004875 
+ 00018552  0x000045ca branch  0x000048a9 
+ 00018553  0x000045cf call  0x000048a9 
+ 00018554  0x000045d0 call  0x000048af 
+ 00018555  0x000045d1 call  0x000048d2 
+ 00018556  0x000045d2 call  0x000048a6 
+ 00018557  0x000045d3 call  0x000048d2 
+ 00018558  0x000045d4 branch  0x000048a9 
+ 00018559  0x000045da arg  0x00000008 , 0x00000039 
+ 00018560  0x000045db arg  0x00000000 , 0x00000013 
+ 00018561  0x000045dc call  0x000048be 
+ 00018562  0x000045de call  0x000048a6 
+ 00018563  0x000045df call  0x000048d2 
+ 00018564  0x000045e0 lshift  0x00000013 , 0x00000013 
+ 00018565  0x000045e1 call  0x000048c7 
+ 00018566  0x000045e2 iadd  0x00000013 , 0x00000013 
+ 00018567  0x000045e3 call  0x000048d2 
+ 00018568  0x000045e4 call  0x000048a9 
+ 00018569  0x000045e5 loop  0x00004882 
+ 00018570  0x000045e6 call  0x00004879 
+ 00018571  0x000045e7 copy  0x00000013 , 0x0000003f 
+ 00018572  0x000045e8 rtn 
+ 00018573  0x000045ed arg  0x00000008 , 0x00000039 
+ 00018574  0x000045ee copy  0x0000003f , 0x00000013 
+ 00018575  0x000045ef call  0x000048a9 
+ 00018576  0x000045f1 isolate1  0x00000007 , 0x00000013 
+ 00018577  0x000045f2 call  0x000048ac , 0x00000001 
+ 00018578  0x000045f3 ncall  0x000048af , 0x00000001 
+ 00018579  0x000045f4 lshift  0x00000013 , 0x00000013 
+ 00018580  0x000045f5 call  0x000048d2 
+ 00018581  0x000045f6 call  0x000048a6 
+ 00018582  0x000045f7 call  0x000048d2 
+ 00018583  0x000045f8 call  0x000048a9 
+ 00018584  0x000045f9 call  0x000048d2 
+ 00018585  0x000045fa loop  0x00004890 
+ 00018586  0x000045fb branch  0x00004871 
+ 00018587  0x00004600 call  0x000048ac 
+ 00018588  0x00004601 call  0x000048a6 
+ 00018589  0x00004602 call  0x000048d2 
+ 00018590  0x00004603 call  0x000048af 
+ 00018591  0x00004604 call  0x000048d2 
+ 00018592  0x00004605 branch  0x000048a9 
+ 00018593  0x0000460a call  0x000048af 
+ 00018594  0x0000460b call  0x000048a6 
+ 00018595  0x0000460c call  0x000048d2 
+ 00018596  0x0000460d call  0x000048ac 
+ 00018597  0x0000460e branch  0x000048d2 
+ 00018598  0x00004613 enable  0x00000028 
+ 00018599  0x00004614 fetch  0x00000001 , 0x00004ffe 
+ 00018600  0x00004615 branch  0x000048b2 
+ 00018601  0x00004619 disable  0x00000028 
+ 00018602  0x0000461a fetch  0x00000001 , 0x00004ffe 
+ 00018603  0x0000461b branch  0x000048b2 
+ 00018604  0x0000461f enable  0x00000028 
+ 00018605  0x00004620 fetch  0x00000001 , 0x00004fff 
+ 00018606  0x00004621 branch  0x000048b2 
+ 00018607  0x00004625 disable  0x00000028 
+ 00018608  0x00004626 fetch  0x00000001 , 0x00004fff 
+ 00018609  0x00004627 branch  0x000048b2 
+ 00018610  0x0000462d and  0x0000003f , 0x00000007 , 0x00000007 
+ 00018611  0x0000462e rshift3  0x0000003f , 0x0000003f 
+ 00018612  0x0000462f arg  0x00008070 , 0x00000002 
+ 00018613  0x00004630 iadd  0x00000002 , 0x00000002 
+ 00018614  0x00004631 ifetch  0x00000001 , 0x00000002 
+ 00018615  0x00004632 qset1  0x0000003f 
+ 00018616  0x00004633 istore  0x00000001 , 0x00000002 
+ 00018617  0x00004634 increase  0x00000004 , 0x00000002 
+ 00018618  0x00004635 ifetch  0x00000001 , 0x00000002 
+ 00018619  0x00004636 qsetflag  0x00000028 , 0x0000003f 
+ 00018620  0x00004637 istore  0x00000001 , 0x00000002 
+ 00018621  0x00004638 rtn 
+ 00018622  0x0000463c fetch  0x00000001 , 0x00004fff 
+ 00018623  0x0000463d and  0x0000003f , 0x00000007 , 0x00000007 
+ 00018624  0x0000463e rshift3  0x0000003f , 0x0000003f 
+ 00018625  0x0000463f arg  0x00008070 , 0x00000002 
+ 00018626  0x00004640 iadd  0x00000002 , 0x00000002 
+ 00018627  0x00004641 ifetch  0x00000001 , 0x00000002 
+ 00018628  0x00004642 qset0  0x0000003f 
+ 00018629  0x00004643 istore  0x00000001 , 0x00000002 
+ 00018630  0x00004644 rtn 
+ 00018631  0x0000464a nop  0x00000004 
+ 00018632  0x0000464b fetch  0x00000001 , 0x00004fff 
+ 00018633  0x0000464c and  0x0000003f , 0x00000007 , 0x00000007 
+ 00018634  0x0000464d rshift3  0x0000003f , 0x0000003f 
+ 00018635  0x0000464e arg  0x0000811c , 0x00000002 
+ 00018636  0x0000464f iadd  0x00000002 , 0x00000002 
+ 00018637  0x00004650 setarg  0x00000000 
+ 00018638  0x00004651 ifetcht  0x00000001 , 0x00000002 
+ 00018639  0x00004652 qisolate1  0x00000002 
+ 00018640  0x00004653 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00018641  0x00004654 rtn 
+ 00018642  0x00004659 rtn 
+ 00018643  0x00004660 bpatch  0x000000f6 , 0x0000401e 
+ 00018644  0x00004661 hfetch  0x00000001 , 0x00008a26 
+ 00018645  0x00004662 isolate1  0x00000007 , 0x0000003f 
+ 00018646  0x00004663 call  0x000048ea , 0x00000001 
+ 00018647  0x00004664 call  0x0000492e 
+ 00018648  0x00004665 hfetch  0x00000001 , 0x00008a26 
+ 00018649  0x00004666 store  0x00000001 , 0x00000b22 
+ 00018650  0x00004667 hfetch  0x00000001 , 0x00008a27 
+ 00018651  0x00004668 store  0x00000001 , 0x00000b23 
+ 00018652  0x00004669 hstore  0x00000001 , 0x00008a27 
+ 00018653  0x0000466a pinvert 
+ 00018654  0x0000466b fetcht  0x00000001 , 0x00000d37 
+ 00018655  0x0000466c iand  0x00000002 , 0x0000003f 
+ 00018656  0x0000466d store  0x00000001 , 0x00000d37 
+ 00018657  0x0000466e jam  0x000000e0 , 0x00008a26 
+ 00018658  0x0000466f fetch  0x00000001 , 0x00000b23 
+ 00018659  0x00004670 compare  0x00000001 , 0x0000003f , 0x00000001 
+ 00018660  0x00004671 call  0x00004941 , 0x00000001 
+ 00018661  0x00004672 fetch  0x00000001 , 0x00000b22 
+ 00018662  0x00004673 compare  0x00000001 , 0x0000003f , 0x00000001 
+ 00018663  0x00004674 call  0x0000494a , 0x00000001 
+ 00018664  0x00004675 call  0x00004b61 
+ 00018665  0x00004676 branch  0x00004903 
+ 00018666  0x00004679 bpatch  0x000000f7 , 0x0000401e 
+ 00018667  0x0000467a call  0x00004919 
+ 00018668  0x0000467b jam  0x00000000 , 0x00008a00 
+ 00018669  0x0000467c nop  0x00002710 
+ 00018670  0x0000467d jam  0x000000c0 , 0x00008a10 
+ 00018671  0x0000467e hfetch  0x00000002 , 0x00008050 
+ 00018672  0x0000467f set0  0x0000000a , 0x0000003f 
+ 00018673  0x00004680 hstore  0x00000002 , 0x00008050 
+ 00018674  0x00004681 jam  0x0000003c , 0x00008a00 
+ 00018675  0x00004682 jam  0x000000ff , 0x00008a26 
+ 00018676  0x00004683 jam  0x000000ff , 0x00008a27 
+ 00018677  0x00004684 jam  0x00000000 , 0x00008a04 
+ 00018678  0x00004685 jam  0x00000002 , 0x00000c6b 
+ 00018679  0x00004686 setarg  0x00000d9d 
+ 00018680  0x00004687 arg  0x00000c6e , 0x00000005 
+ 00018681  0x00004688 isub  0x00000005 , 0x00000039 
+ 00018682  0x00004689 branch  0x00007ed4 
+ 00018683  0x0000468c fetcht  0x00000001 , 0x00000c6c 
+ 00018684  0x0000468d branch  0x000067fb 
+ 00018685  0x0000468f fetch  0x00000001 , 0x00000d45 
+ 00018686  0x00004690 rtn  0x00000034 
+ 00018687  0x00004691 fetcht  0x00000001 , 0x00000c6c 
+ 00018688  0x00004692 call  0x0000681d 
+ 00018689  0x00004693 branch  0x000048ea , 0x00000001 
+ 00018690  0x00004694 rtn 
+ 00018691  0x00004698 arg  0x00000000 , 0x00000007 
+ 00018692  0x00004699 call  0x00007f16 
+ 00018693  0x0000469a nrtn  0x00000034 
+ 00018694  0x0000469b fetch  0x00000001 , 0x00000d46 
+ 00018695  0x0000469c nrtn  0x00000034 
+ 00018696  0x0000469d fetch  0x00000001 , 0x00000d45 
+ 00018697  0x0000469e ncall  0x00004bb7 , 0x00000034 
+ 00018698  0x0000469f rtn 
+ 00018699  0x000046a2 arg  0x00000b68 , 0x00000005 
+ 00018700  0x000046a3 setsect  0x00000000 , 0x00011212 
+ 00018701  0x000046a4 setsect  0x00000001 , 0x00008000 
+ 00018702  0x000046a5 setsect  0x00000002 , 0x00000000 
+ 00018703  0x000046a6 setsect  0x00000003 , 0x00010000 
+ 00018704  0x000046a7 istore  0x00000009 , 0x00000005 
+ 00018705  0x000046a8 setsect  0x00000000 , 0x00022412 
+ 00018706  0x000046a9 setsect  0x00000001 , 0x00008604 
+ 00018707  0x000046aa setsect  0x00000002 , 0x00001000 
+ 00018708  0x000046ab setsect  0x00000003 , 0x00000008 
+ 00018709  0x000046ac istore  0x00000009 , 0x00000005 
+ 00018710  0x000046ad setsect  0x00000000 , 0x00000001 
+ 00018711  0x000046ae istore  0x00000001 , 0x00000005 
+ 00018712  0x000046af rtn 
+ 00018713  0x000046b2 jam  0x00000002 , 0x00000c6b 
+ 00018714  0x000046b3 setarg  0x00000000 
+ 00018715  0x000046b4 store  0x00000001 , 0x00000b67 
+ 00018716  0x000046b5 store  0x00000002 , 0x00000c65 
+ 00018717  0x000046b6 pincrease  0x00000001 
+ 00018718  0x000046b7 store  0x00000002 , 0x00000c67 
+ 00018719  0x000046b8 pincrease  0x00000001 
+ 00018720  0x000046b9 store  0x00000002 , 0x00000c69 
+ 00018721  0x000046ba setarg  0x00008ffa 
+ 00018722  0x000046bb store  0x00000002 , 0x00000b7c 
+ 00018723  0x000046bc setarg  0x0000903a 
+ 00018724  0x000046bd store  0x00000002 , 0x00000b7e 
+ 00018725  0x000046be arg  0x00000b80 , 0x00000005 
+ 00018726  0x000046bf arg  0x000090fe , 0x00000006 
+ 00018727  0x000046c0 call  0x00007eb3 
+ 00018728  0x000046c1 fetch  0x00000001 , 0x00000c6d 
+ 00018729  0x000046c2 ncall  0x0000492b , 0x00000034 
+ 00018730  0x000046c3 branch  0x0000490b 
+ 00018731  0x000046c6 store  0x00000001 , 0x00000ba2 
+ 00018732  0x000046c7 store  0x00000001 , 0x00000bbb 
+ 00018733  0x000046c8 rtn 
+ 00018734  0x000046ca hfetch  0x00000001 , 0x00008a26 
+ 00018735  0x000046cb bbit1  0x00000006 , 0x00004931 
+ 00018736  0x000046cc rtn 
+ 00018737  0x000046cf call  0x00004936 
+ 00018738  0x000046d0 call  0x00007f15 
+ 00018739  0x000046d1 setarg  0x00000280 
+ 00018740  0x000046d2 arg  0x00000000 , 0x00000007 
+ 00018741  0x000046d3 branch  0x00007f08 
+ 00018742  0x000046d6 fetch  0x00000001 , 0x00000d36 
+ 00018743  0x000046d7 bne  0x00000002 , 0x0000493b 
+ 00018744  0x000046d8 jam  0x00000000 , 0x00000d46 
+ 00018745  0x000046d9 jam  0x00000000 , 0x00000d47 
+ 00018746  0x000046da rtn 
+ 00018747  0x000046dc fetch  0x00000001 , 0x00000d53 
+ 00018748  0x000046dd rtn  0x00000034 
+ 00018749  0x000046de jam  0x00000000 , 0x00000d53 
+ 00018750  0x000046df jam  0x00000002 , 0x00000d36 
+ 00018751  0x000046e0 jam  0x00000001 , 0x00000d45 
+ 00018752  0x000046e1 rtn 
+ 00018753  0x000046e4 jam  0x00000001 , 0x00008a27 
+ 00018754  0x000046e5 branch  0x00004b37 
+ 00018755  0x000046e8 fetch  0x00000001 , 0x00000b22 
+ 00018756  0x000046e9 bbit1  0x00000004 , 0x00004955 
+ 00018757  0x000046ea rtn 
+ 00018758  0x000046ed hfetch  0x00000001 , 0x00008a18 
+ 00018759  0x000046ee istore  0x00000001 , 0x00000005 
+ 00018760  0x000046ef loop  0x00004946 
+ 00018761  0x000046f0 rtn 
+ 00018762  0x000046f3 bpatch  0x000000f8 , 0x0000401f 
+ 00018763  0x000046f4 jam  0x00000011 , 0x00008a26 
+ 00018764  0x000046f5 hfetch  0x00000001 , 0x00008a20 
+ 00018765  0x000046f6 store  0x00000001 , 0x00000b24 
+ 00018766  0x000046f7 copy  0x0000003f , 0x00000039 
+ 00018767  0x000046f8 branch  0x00004943 , 0x00000034 
+ 00018768  0x000046f9 arg  0x00000c6e , 0x00000005 
+ 00018769  0x000046fa call  0x00004946 
+ 00018770  0x000046fb fetch  0x00000001 , 0x00000b24 
+ 00018771  0x000046fc sub  0x0000003f , 0x00000007 , 0x0000003e 
+ 00018772  0x000046fd rtn  0x00000002 
+ 00018773  0x000046ff fetch  0x00000001 , 0x00000c6e 
+ 00018774  0x00004700 and_into  0x00000080 , 0x0000003f 
+ 00018775  0x00004701 beq  0x00000080 , 0x0000495a 
+ 00018776  0x00004702 beq  0x00000000 , 0x00004962 
+ 00018777  0x00004703 branch  0x00002a8c 
+ 00018778  0x00004706 fetch  0x00000001 , 0x00000c6e 
+ 00018779  0x00004707 rshift4  0x0000003f , 0x0000003f 
+ 00018780  0x00004708 rshift  0x0000003f , 0x0000003f 
+ 00018781  0x00004709 and_into  0x00000003 , 0x0000003f 
+ 00018782  0x0000470a beq  0x00000000 , 0x0000496a 
+ 00018783  0x0000470b beq  0x00000001 , 0x00004970 
+ 00018784  0x0000470c beq  0x00000002 , 0x00004975 
+ 00018785  0x0000470d branch  0x00002a8c 
+ 00018786  0x00004710 fetch  0x00000001 , 0x00000c6e 
+ 00018787  0x00004711 rshift4  0x0000003f , 0x0000003f 
+ 00018788  0x00004712 rshift  0x0000003f , 0x0000003f 
+ 00018789  0x00004713 and_into  0x00000003 , 0x0000003f 
+ 00018790  0x00004714 beq  0x00000000 , 0x00004976 
+ 00018791  0x00004715 beq  0x00000001 , 0x0000497e 
+ 00018792  0x00004716 beq  0x00000002 , 0x00004983 
+ 00018793  0x00004717 branch  0x00002a8c 
+ 00018794  0x0000471a fetch  0x00000001 , 0x00000c6f 
+ 00018795  0x0000471b beq  0x00000008 , 0x0000498a 
+ 00018796  0x0000471c beq  0x00000006 , 0x000049a0 
+ 00018797  0x0000471d beq  0x0000000a , 0x000049ea 
+ 00018798  0x0000471e beq  0x00000000 , 0x000049fc 
+ 00018799  0x0000471f branch  0x00004984 
+ 00018800  0x00004722 fetch  0x00000001 , 0x00000c6f 
+ 00018801  0x00004723 beq  0x00000002 , 0x00004a2f 
+ 00018802  0x00004724 beq  0x00000001 , 0x00004a33 
+ 00018803  0x00004725 beq  0x00000003 , 0x00004a45 
+ 00018804  0x00004726 branch  0x00004984 
+ 00018805  0x00004729 branch  0x00004984 
+ 00018806  0x0000472c fetch  0x00000001 , 0x00000c6f 
+ 00018807  0x0000472d beq  0x00000001 , 0x00004a4f 
+ 00018808  0x0000472e beq  0x00000003 , 0x00004a79 
+ 00018809  0x0000472f beq  0x00000005 , 0x00004aa3 
+ 00018810  0x00004730 beq  0x00000009 , 0x00004abc 
+ 00018811  0x00004731 beq  0x0000000b , 0x00004ad7 
+ 00018812  0x00004732 beq  0x00000007 , 0x00004984 
+ 00018813  0x00004733 branch  0x00004984 
+ 00018814  0x00004736 fetch  0x00000001 , 0x00000c6f 
+ 00018815  0x00004737 beq  0x0000000a , 0x00004ae8 
+ 00018816  0x00004738 beq  0x00000009 , 0x00004af9 
+ 00018817  0x00004739 beq  0x0000000b , 0x00004b11 
+ 00018818  0x0000473a branch  0x00004984 
+ 00018819  0x0000473d branch  0x00004984 
+ 00018820  0x00004740 hfetch  0x00000001 , 0x00008a11 
+ 00018821  0x00004741 set1  0x00000000 , 0x0000003f 
+ 00018822  0x00004742 hstore  0x00000001 , 0x00008a11 
+ 00018823  0x00004743 branch  0x00004988 
+ 00018824  0x00004746 jam  0x00000040 , 0x00008a12 
+ 00018825  0x00004747 rtn 
+ 00018826  0x0000474a fetch  0x00000001 , 0x00000c6e 
+ 00018827  0x0000474b bne  0x00000080 , 0x00004984 
+ 00018828  0x0000474c fetch  0x00000001 , 0x00000c72 
+ 00018829  0x0000474d bne  0x00000000 , 0x00004984 
+ 00018830  0x0000474e fetch  0x00000001 , 0x00000c73 
+ 00018831  0x0000474f bne  0x00000000 , 0x00004984 
+ 00018832  0x00004750 fetch  0x00000001 , 0x00000c74 
+ 00018833  0x00004751 bne  0x00000001 , 0x00004984 
+ 00018834  0x00004752 fetch  0x00000001 , 0x00000c75 
+ 00018835  0x00004753 bne  0x00000000 , 0x00004984 
+ 00018836  0x00004754 fetch  0x00000001 , 0x00000c70 
+ 00018837  0x00004755 bne  0x00000000 , 0x00004984 
+ 00018838  0x00004756 fetch  0x00000001 , 0x00000c71 
+ 00018839  0x00004757 bne  0x00000000 , 0x00004984 
+ 00018840  0x00004758 fetch  0x00000001 , 0x00000c6b 
+ 00018841  0x00004759 beq  0x00000004 , 0x0000499c 
+ 00018842  0x0000475a beq  0x00000003 , 0x0000499e 
+ 00018843  0x0000475b branch  0x00004984 
+ 00018844  0x0000475e arg  0x00000001 , 0x00000012 
+ 00018845  0x0000475f branch  0x00004a14 
+ 00018846  0x00004762 arg  0x00000001 , 0x00000012 
+ 00018847  0x00004763 branch  0x00004a12 
+ 00018848  0x00004766 bpatch  0x000000f9 , 0x0000401f 
+ 00018849  0x00004767 set0  0x00000023 , 0x00000000 
+ 00018850  0x00004768 fetch  0x00000001 , 0x00000c71 
+ 00018851  0x00004769 beq  0x00000001 , 0x000049b6 
+ 00018852  0x0000476a beq  0x00000002 , 0x000049cf 
+ 00018853  0x0000476b beq  0x00000003 , 0x000049d2 
+ 00018854  0x0000476c beq  0x00000021 , 0x000049a9 
+ 00018855  0x0000476d beq  0x00000022 , 0x000049e0 
+ 00018856  0x0000476e branch  0x00004984 
+ 00018857  0x00004771 jam  0x00000000 , 0x00000d4b 
+ 00018858  0x00004772 fetch  0x00000001 , 0x00000c72 
+ 00018859  0x00004773 beq  0x00000000 , 0x000049ae 
+ 00018860  0x00004774 beq  0x00000001 , 0x000049b2 
+ 00018861  0x00004775 branch  0x00004984 
+ 00018862  0x00004778 arg  0x00000b93 , 0x00000011 
+ 00018863  0x00004779 ifetch  0x00000001 , 0x00000011 
+ 00018864  0x0000477a iforce  0x00000012 
+ 00018865  0x0000477b branch  0x00004b21 
+ 00018866  0x0000477e arg  0x00000bac , 0x00000011 
+ 00018867  0x0000477f ifetch  0x00000001 , 0x00000011 
+ 00018868  0x00004780 iforce  0x00000012 
+ 00018869  0x00004781 branch  0x00004b21 
+ 00018870  0x00004787 fetch  0x00000001 , 0x00000d48 
+ 00018871  0x00004788 ncall  0x000049c7 , 0x00000034 
+ 00018872  0x00004789 setarg  0x00000b68 
+ 00018873  0x0000478a fetcht  0x00000001 , 0x00000b68 
+ 00018874  0x0000478c store  0x00000002 , 0x00000d3f 
+ 00018875  0x0000478d storet  0x00000001 , 0x00000d41 
+ 00018876  0x0000478e fetch  0x00000001 , 0x00000c74 
+ 00018877  0x0000478f isub  0x00000002 , 0x0000003e 
+ 00018878  0x00004790 nbranch  0x000049c5 , 0x00000002 
+ 00018879  0x00004792 fetch  0x00000001 , 0x00000d41 
+ 00018880  0x00004794 iforce  0x00000012 
+ 00018881  0x00004795 fetch  0x00000002 , 0x00000d3f 
+ 00018882  0x00004796 add  0x0000003f , 0x00000001 , 0x0000003f 
+ 00018883  0x00004797 iforce  0x00000011 
+ 00018884  0x00004798 branch  0x00004b21 
+ 00018885  0x0000479a fetch  0x00000001 , 0x00000c74 
+ 00018886  0x0000479b branch  0x000049c0 
+ 00018887  0x0000479e hfetch  0x00000001 , 0x00008a04 
+ 00018888  0x0000479f ncall  0x000049cb , 0x00000034 
+ 00018889  0x000047a0 jam  0x00000000 , 0x00000d48 
+ 00018890  0x000047a1 rtn 
+ 00018891  0x000047a3 hfetch  0x00000001 , 0x00008a04 
+ 00018892  0x000047a4 set1  0x00000007 , 0x0000003f 
+ 00018893  0x000047a5 hstore  0x00000001 , 0x00008a04 
+ 00018894  0x000047a6 rtn 
+ 00018895  0x000047a9 setarg  0x00000b80 
+ 00018896  0x000047aa fetcht  0x00000001 , 0x00000b80 
+ 00018897  0x000047ab branch  0x000049ba 
+ 00018898  0x000047ae fetch  0x00000001 , 0x00000c70 
+ 00018899  0x000047af sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00018900  0x000047b0 nbranch  0x00004984 , 0x00000002 
+ 00018901  0x000047b1 fetch  0x00000001 , 0x00000c70 
+ 00018902  0x000047b2 arg  0x00000be4 , 0x00000011 
+ 00018903  0x000047b3 beq  0x00000000 , 0x00004b1e 
+ 00018904  0x000047b4 set1  0x00000023 , 0x00000000 
+ 00018905  0x000047b5 arg  0x00000be9 , 0x00000011 
+ 00018906  0x000047b6 beq  0x00000001 , 0x00004b1e 
+ 00018907  0x000047b7 arg  0x00000c07 , 0x00000011 
+ 00018908  0x000047b8 beq  0x00000002 , 0x00004b1e 
+ 00018909  0x000047b9 arg  0x00000c47 , 0x00000011 
+ 00018910  0x000047ba beq  0x00000003 , 0x00004b1e 
+ 00018911  0x000047bb rtn 
+ 00018912  0x000047be fetch  0x00000002 , 0x00000c72 
+ 00018913  0x000047bf beq  0x00000001 , 0x000049e5 
+ 00018914  0x000047c0 fetch  0x00000002 , 0x00000b7c 
+ 00018915  0x000047c1 copy  0x0000003f , 0x00000011 
+ 00018916  0x000047c3 branch  0x00004b1e 
+ 00018917  0x000047c5 jam  0x00000001 , 0x00000d45 
+ 00018918  0x000047c6 jam  0x00000001 , 0x00000d36 
+ 00018919  0x000047c7 fetch  0x00000002 , 0x00000b7e 
+ 00018920  0x000047c8 copy  0x0000003f , 0x00000011 
+ 00018921  0x000047ca branch  0x00004b1e 
+ 00018922  0x000047ce fetch  0x00000001 , 0x00000c6b 
+ 00018923  0x000047cf bne  0x00000004 , 0x00004984 
+ 00018924  0x000047d0 fetch  0x00000001 , 0x00000c6e 
+ 00018925  0x000047d1 bne  0x00000081 , 0x00004984 
+ 00018926  0x000047d2 fetch  0x00000001 , 0x00000c70 
+ 00018927  0x000047d3 bne  0x00000000 , 0x00004984 
+ 00018928  0x000047d4 fetch  0x00000001 , 0x00000c71 
+ 00018929  0x000047d5 bne  0x00000000 , 0x00004984 
+ 00018930  0x000047d6 fetch  0x00000001 , 0x00000c74 
+ 00018931  0x000047d7 bne  0x00000001 , 0x00004984 
+ 00018932  0x000047d8 fetch  0x00000001 , 0x00000c75 
+ 00018933  0x000047d9 bne  0x00000000 , 0x00004984 
+ 00018934  0x000047da fetch  0x00000001 , 0x00000c72 
+ 00018935  0x000047db bne  0x00000000 , 0x00004984 
+ 00018936  0x000047dc fetch  0x00000001 , 0x00000c73 
+ 00018937  0x000047dd bne  0x00000000 , 0x00004984 
+ 00018938  0x000047de arg  0x00000001 , 0x00000012 
+ 00018939  0x000047df branch  0x00004a12 
+ 00018940  0x000047e3 fetch  0x00000001 , 0x00000c6b 
+ 00018941  0x000047e4 beq  0x00000002 , 0x00004984 
+ 00018942  0x000047e5 fetch  0x00000001 , 0x00000c70 
+ 00018943  0x000047e6 bne  0x00000000 , 0x00004984 
+ 00018944  0x000047e7 fetch  0x00000001 , 0x00000c71 
+ 00018945  0x000047e8 bne  0x00000000 , 0x00004984 
+ 00018946  0x000047e9 fetch  0x00000001 , 0x00000c74 
+ 00018947  0x000047ea bne  0x00000002 , 0x00004984 
+ 00018948  0x000047eb fetch  0x00000001 , 0x00000c75 
+ 00018949  0x000047ec bne  0x00000000 , 0x00004984 
+ 00018950  0x000047ed fetch  0x00000001 , 0x00000c73 
+ 00018951  0x000047ee bne  0x00000000 , 0x00004984 
+ 00018952  0x000047ef fetch  0x00000001 , 0x00000c6e 
+ 00018953  0x000047f0 beq  0x00000080 , 0x00004a0d 
+ 00018954  0x000047f1 beq  0x00000081 , 0x00004a18 
+ 00018955  0x000047f2 beq  0x00000082 , 0x00004a1c 
+ 00018956  0x000047f3 branch  0x00004984 
+ 00018957  0x000047f6 fetch  0x00000001 , 0x00000c72 
+ 00018958  0x000047f7 bne  0x00000000 , 0x00004984 
+ 00018959  0x000047f8 arg  0x00000002 , 0x00000012 
+ 00018960  0x000047f9 fetch  0x00000001 , 0x00000d39 
+ 00018961  0x000047fa beq  0x00000001 , 0x00004a16 
+ 00018962  0x000047fd arg  0x00000c65 , 0x00000011 
+ 00018963  0x000047fe branch  0x00004b21 
+ 00018964  0x00004800 arg  0x00000c67 , 0x00000011 
+ 00018965  0x00004801 branch  0x00004b21 
+ 00018966  0x00004803 arg  0x00000c69 , 0x00000011 
+ 00018967  0x00004804 branch  0x00004b21 
+ 00018968  0x00004807 fetch  0x00000001 , 0x00000c6b 
+ 00018969  0x00004808 bne  0x00000004 , 0x00004984 
+ 00018970  0x00004809 arg  0x00000002 , 0x00000012 
+ 00018971  0x0000480a branch  0x00004a12 
+ 00018972  0x0000480d fetch  0x00000001 , 0x00000c6b 
+ 00018973  0x0000480e bne  0x00000004 , 0x00004984 
+ 00018974  0x0000480f fetch  0x00000001 , 0x00000c72 
+ 00018975  0x00004810 beq  0x00000081 , 0x00004a29 
+ 00018976  0x00004811 beq  0x00000082 , 0x00004a2b 
+ 00018977  0x00004812 beq  0x00000083 , 0x00004a2d 
+ 00018978  0x00004813 and_into  0x0000007f , 0x0000003f 
+ 00018979  0x00004814 beq  0x00000000 , 0x00004a25 
+ 00018980  0x00004815 branch  0x00004984 
+ 00018981  0x00004818 fetch  0x00000001 , 0x00000d3b 
+ 00018982  0x0000481a arg  0x00000002 , 0x00000012 
+ 00018983  0x0000481b beq  0x00000001 , 0x00004a14 
+ 00018984  0x0000481c branch  0x00004a12 
+ 00018985  0x0000481e fetch  0x00000001 , 0x00000d3c 
+ 00018986  0x0000481f branch  0x00004a26 
+ 00018987  0x00004821 fetch  0x00000001 , 0x00000d3d 
+ 00018988  0x00004822 branch  0x00004a26 
+ 00018989  0x00004824 fetch  0x00000001 , 0x00000d3e 
+ 00018990  0x00004825 branch  0x00004a26 
+ 00018991  0x00004828 jam  0x00000001 , 0x00000d4c 
+ 00018992  0x00004829 arg  0x00000d4d , 0x00000011 
+ 00018993  0x0000482a arg  0x00000001 , 0x00000012 
+ 00018994  0x0000482b branch  0x00004b21 
+ 00018995  0x0000482e fetch  0x00000002 , 0x00000c70 
+ 00018996  0x0000482f arg  0x000001ba , 0x00000002 
+ 00018997  0x00004830 isub  0x00000002 , 0x0000003e 
+ 00018998  0x00004831 nbranch  0x00004984 , 0x00000005 
+ 00018999  0x00004832 set0  0x00000023 , 0x00000000 
+ 00019000  0x00004834 fetch  0x00000001 , 0x00000d42 
+ 00019001  0x00004835 nbranch  0x00004a42 , 0x00000034 
+ 00019002  0x00004836 jam  0x00000000 , 0x00000cf6 
+ 00019003  0x00004838 fetch  0x00000001 , 0x00000c74 
+ 00019004  0x00004839 iforce  0x00000012 
+ 00019005  0x0000483a arg  0x00000cf6 , 0x00000011 
+ 00019006  0x0000483b call  0x00004b21 
+ 00019007  0x0000483d arg  0x00000cf6 , 0x00000005 
+ 00019008  0x0000483e arg  0x00000008 , 0x00000039 
+ 00019009  0x0000483f branch  0x00007ec6 
+ 00019010  0x00004841 jam  0x00000000 , 0x00000d42 
+ 00019011  0x00004842 jam  0x00000001 , 0x00000cf6 
+ 00019012  0x00004843 branch  0x00004a3b 
+ 00019013  0x00004846 fetch  0x00000001 , 0x00000c74 
+ 00019014  0x00004847 bne  0x00000001 , 0x00004984 
+ 00019015  0x00004848 jam  0x00000001 , 0x00000d4b 
+ 00019016  0x00004849 arg  0x00000001 , 0x00000012 
+ 00019017  0x0000484a fetch  0x00000001 , 0x00000d49 
+ 00019018  0x0000484b beq  0x00000000 , 0x00004a4d 
+ 00019019  0x0000484c beq  0x00000001 , 0x00004a4e 
+ 00019020  0x0000484d branch  0x00004a12 
+ 00019021  0x0000484f branch  0x00004a14 
+ 00019022  0x00004851 branch  0x00004a12 
+ 00019023  0x00004857 fetch  0x00000001 , 0x00000c6b 
+ 00019024  0x00004858 bne  0x00000004 , 0x00004984 
+ 00019025  0x00004859 fetch  0x00000001 , 0x00000c74 
+ 00019026  0x0000485a bne  0x00000000 , 0x00004984 
+ 00019027  0x0000485b fetch  0x00000001 , 0x00000c75 
+ 00019028  0x0000485c bne  0x00000000 , 0x00004984 
+ 00019029  0x0000485d fetch  0x00000001 , 0x00000c71 
+ 00019030  0x0000485e bne  0x00000000 , 0x00004984 
+ 00019031  0x0000485f fetch  0x00000001 , 0x00000c73 
+ 00019032  0x00004860 bne  0x00000000 , 0x00004984 
+ 00019033  0x00004861 fetch  0x00000001 , 0x00000c6e 
+ 00019034  0x00004862 beq  0x00000000 , 0x00004a5e 
+ 00019035  0x00004863 beq  0x00000001 , 0x00004a66 
+ 00019036  0x00004864 beq  0x00000002 , 0x00004a67 
+ 00019037  0x00004865 branch  0x00004984 
+ 00019038  0x00004868 fetch  0x00000001 , 0x00000c70 
+ 00019039  0x00004869 bne  0x00000001 , 0x00004984 
+ 00019040  0x0000486a hfetch  0x00000001 , 0x00008a00 
+ 00019041  0x0000486b set0  0x00000007 , 0x0000003f 
+ 00019042  0x0000486c hstore  0x00000001 , 0x00008a00 
+ 00019043  0x0000486d jam  0x00000000 , 0x00000d39 
+ 00019044  0x0000486e jam  0x00000001 , 0x00000d3a 
+ 00019045  0x0000486f branch  0x00004988 
+ 00019046  0x00004872 branch  0x00004984 
+ 00019047  0x00004875 fetch  0x00000001 , 0x00000c70 
+ 00019048  0x00004876 bne  0x00000000 , 0x00004984 
+ 00019049  0x00004877 fetch  0x00000001 , 0x00000c72 
+ 00019050  0x00004878 beq  0x00000081 , 0x00004a72 
+ 00019051  0x00004879 beq  0x00000082 , 0x00004a75 
+ 00019052  0x0000487a beq  0x00000083 , 0x00004a77 
+ 00019053  0x0000487b and_into  0x0000007f , 0x0000003f 
+ 00019054  0x0000487c beq  0x00000000 , 0x00004a70 
+ 00019055  0x0000487d branch  0x00004984 
+ 00019056  0x00004880 jam  0x00000000 , 0x00000d3b 
+ 00019057  0x00004881 branch  0x00004988 
+ 00019058  0x00004883 jam  0x00000000 , 0x00000d3c 
+ 00019059  0x00004885 jam  0x00000001 , 0x00000d53 
+ 00019060  0x00004886 branch  0x00004988 
+ 00019061  0x00004888 jam  0x00000000 , 0x00000d3d 
+ 00019062  0x00004889 branch  0x00004a73 
+ 00019063  0x0000488b jam  0x00000000 , 0x00000d3e 
+ 00019064  0x0000488c branch  0x00004a73 
+ 00019065  0x00004890 fetch  0x00000001 , 0x00000c74 
+ 00019066  0x00004891 bne  0x00000000 , 0x00004984 
+ 00019067  0x00004892 fetch  0x00000001 , 0x00000c75 
+ 00019068  0x00004893 bne  0x00000000 , 0x00004984 
+ 00019069  0x00004894 fetch  0x00000001 , 0x00000c6e 
+ 00019070  0x00004895 beq  0x00000000 , 0x00004a82 
+ 00019071  0x00004896 beq  0x00000001 , 0x00004a8f 
+ 00019072  0x00004897 beq  0x00000002 , 0x00004a90 
+ 00019073  0x00004898 branch  0x00004984 
+ 00019074  0x0000489b fetch  0x00000001 , 0x00000c70 
+ 00019075  0x0000489c bne  0x00000001 , 0x00004984 
+ 00019076  0x0000489d hfetch  0x00000001 , 0x00008a00 
+ 00019077  0x0000489e set1  0x00000007 , 0x0000003f 
+ 00019078  0x0000489f hstore  0x00000001 , 0x00008a00 
+ 00019079  0x000048a0 jam  0x00000001 , 0x00000d39 
+ 00019080  0x000048a1 jam  0x00000003 , 0x00000d36 
+ 00019081  0x000048a2 jam  0x00000000 , 0x00000d43 
+ 00019082  0x000048a3 call  0x00004988 
+ 00019083  0x000048a5 call  0x00007f15 
+ 00019084  0x000048a6 setarg  0x00001388 
+ 00019085  0x000048a7 arg  0x0000000f , 0x00000007 
+ 00019086  0x000048a8 branch  0x00007f08 
+ 00019087  0x000048ab branch  0x00004984 
+ 00019088  0x000048ae fetch  0x00000001 , 0x00000c70 
+ 00019089  0x000048af bne  0x00000000 , 0x00004984 
+ 00019090  0x000048b0 fetch  0x00000001 , 0x00000c71 
+ 00019091  0x000048b1 bne  0x00000000 , 0x00004984 
+ 00019092  0x000048b2 fetch  0x00000001 , 0x00000c72 
+ 00019093  0x000048b3 beq  0x00000081 , 0x00004a9d 
+ 00019094  0x000048b4 beq  0x00000082 , 0x00004a9f 
+ 00019095  0x000048b5 beq  0x00000083 , 0x00004aa1 
+ 00019096  0x000048b6 and_into  0x0000007f , 0x0000003f 
+ 00019097  0x000048b7 beq  0x00000000 , 0x00004a9b 
+ 00019098  0x000048b8 branch  0x00004984 
+ 00019099  0x000048bb jam  0x00000001 , 0x00000d3b 
+ 00019100  0x000048bc branch  0x00004988 
+ 00019101  0x000048be jam  0x00000001 , 0x00000d3c 
+ 00019102  0x000048bf branch  0x00004988 
+ 00019103  0x000048c1 jam  0x00000001 , 0x00000d3d 
+ 00019104  0x000048c2 branch  0x00004988 
+ 00019105  0x000048c4 jam  0x00000001 , 0x00000d3e 
+ 00019106  0x000048c5 branch  0x00004988 
+ 00019107  0x000048c9 fetch  0x00000001 , 0x00000c6e 
+ 00019108  0x000048ca bne  0x00000000 , 0x00004984 
+ 00019109  0x000048cb fetch  0x00000001 , 0x00000c72 
+ 00019110  0x000048cc bne  0x00000000 , 0x00004984 
+ 00019111  0x000048cd fetch  0x00000001 , 0x00000c73 
+ 00019112  0x000048ce bne  0x00000000 , 0x00004984 
+ 00019113  0x000048cf fetch  0x00000001 , 0x00000c74 
+ 00019114  0x000048d0 bne  0x00000000 , 0x00004984 
+ 00019115  0x000048d1 fetch  0x00000001 , 0x00000c75 
+ 00019116  0x000048d2 bne  0x00000000 , 0x00004984 
+ 00019117  0x000048d3 fetch  0x00000001 , 0x00000c71 
+ 00019118  0x000048d4 bne  0x00000000 , 0x00004984 
+ 00019119  0x000048d5 fetch  0x00000001 , 0x00000c70 
+ 00019120  0x000048d6 and_into  0x00000080 , 0x0000003f 
+ 00019121  0x000048d7 bne  0x00000000 , 0x00004984 
+ 00019122  0x000048d8 fetch  0x00000001 , 0x00000c70 
+ 00019123  0x000048d9 bne  0x00000000 , 0x00004aba 
+ 00019124  0x000048db jam  0x00000002 , 0x00000c6b 
+ 00019125  0x000048dd fetch  0x00000001 , 0x00000c70 
+ 00019126  0x000048de hstore  0x00000001 , 0x00008a04 
+ 00019127  0x000048df call  0x00004988 
+ 00019128  0x000048e0 jam  0x00000001 , 0x00000d48 
+ 00019129  0x000048e1 rtn 
+ 00019130  0x000048e3 jam  0x00000003 , 0x00000c6b 
+ 00019131  0x000048e4 branch  0x00004ab5 
+ 00019132  0x000048e8 fetch  0x00000001 , 0x00000c6b 
+ 00019133  0x000048e9 beq  0x00000002 , 0x00004984 
+ 00019134  0x000048ea fetch  0x00000001 , 0x00000c6e 
+ 00019135  0x000048eb bne  0x00000000 , 0x00004984 
+ 00019136  0x000048ec fetch  0x00000001 , 0x00000c72 
+ 00019137  0x000048ed bne  0x00000000 , 0x00004984 
+ 00019138  0x000048ee fetch  0x00000001 , 0x00000c73 
+ 00019139  0x000048ef bne  0x00000000 , 0x00004984 
+ 00019140  0x000048f0 fetch  0x00000001 , 0x00000c74 
+ 00019141  0x000048f1 bne  0x00000000 , 0x00004984 
+ 00019142  0x000048f2 fetch  0x00000001 , 0x00000c75 
+ 00019143  0x000048f3 bne  0x00000000 , 0x00004984 
+ 00019144  0x000048f4 fetch  0x00000001 , 0x00000c71 
+ 00019145  0x000048f5 bne  0x00000000 , 0x00004984 
+ 00019146  0x000048f6 fetch  0x00000001 , 0x00000c70 
+ 00019147  0x000048f7 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00019148  0x000048f8 nbranch  0x00004984 , 0x00000002 
+ 00019149  0x000048f9 fetch  0x00000001 , 0x00000c6b 
+ 00019150  0x000048fa beq  0x00000003 , 0x00004ad1 
+ 00019151  0x000048fb beq  0x00000004 , 0x00004ad1 
+ 00019152  0x000048fc branch  0x00004984 
+ 00019153  0x00004900 fetch  0x00000001 , 0x00000c70 
+ 00019154  0x00004901 beq  0x00000000 , 0x00004ad5 
+ 00019155  0x00004902 jam  0x00000004 , 0x00000c6b 
+ 00019156  0x00004903 branch  0x00004988 
+ 00019157  0x00004905 jam  0x00000003 , 0x00000c6b 
+ 00019158  0x00004906 branch  0x00004988 
+ 00019159  0x0000490a fetch  0x00000001 , 0x00000c6b 
+ 00019160  0x0000490b bne  0x00000004 , 0x00004984 
+ 00019161  0x0000490c fetch  0x00000001 , 0x00000c6e 
+ 00019162  0x0000490d bne  0x00000001 , 0x00004984 
+ 00019163  0x0000490e fetch  0x00000001 , 0x00000c70 
+ 00019164  0x0000490f bne  0x00000000 , 0x00004984 
+ 00019165  0x00004910 fetch  0x00000001 , 0x00000c71 
+ 00019166  0x00004911 bne  0x00000000 , 0x00004984 
+ 00019167  0x00004912 fetch  0x00000001 , 0x00000c74 
+ 00019168  0x00004913 bne  0x00000000 , 0x00004984 
+ 00019169  0x00004914 fetch  0x00000001 , 0x00000c75 
+ 00019170  0x00004915 bne  0x00000000 , 0x00004984 
+ 00019171  0x00004916 fetch  0x00000001 , 0x00000c72 
+ 00019172  0x00004917 bne  0x00000000 , 0x00004984 
+ 00019173  0x00004918 fetch  0x00000001 , 0x00000c73 
+ 00019174  0x00004919 bne  0x00000000 , 0x00004984 
+ 00019175  0x0000491a branch  0x00004988 
+ 00019176  0x0000491e jam  0x00000001 , 0x00000d4c 
+ 00019177  0x0000491f fetch  0x00000001 , 0x00000c71 
+ 00019178  0x00004920 store  0x00000001 , 0x00000d4d 
+ 00019179  0x00004921 fetch  0x00000001 , 0x00000c72 
+ 00019180  0x00004922 sub  0x0000003f , 0x00000001 , 0x0000003e 
+ 00019181  0x00004923 call  0x00004af5 , 0x00000005 
+ 00019182  0x00004924 fetch  0x00000001 , 0x00000d36 
+ 00019183  0x00004925 bne  0x00000004 , 0x00004988 
+ 00019184  0x00004926 jam  0x00000002 , 0x00000d36 
+ 00019185  0x00004927 call  0x00004988 
+ 00019186  0x00004928 nop  0x00007530 
+ 00019187  0x00004929 nop  0x00007530 
+ 00019188  0x0000492a rtn 
+ 00019189  0x0000492c jam  0x00000001 , 0x00000d45 
+ 00019190  0x0000492d jam  0x00000000 , 0x00000d3a 
+ 00019191  0x0000492e jam  0x00000004 , 0x00000d36 
+ 00019192  0x0000492f rtn 
+ 00019193  0x00004933 jam  0x00000001 , 0x00000d50 
+ 00019194  0x00004934 call  0x00004b03 
+ 00019195  0x00004935 fetch  0x00000002 , 0x00000c70 
+ 00019196  0x00004936 store  0x00000002 , 0x00000d4e 
+ 00019197  0x00004937 fetch  0x00000001 , 0x00000c74 
+ 00019198  0x00004938 iforce  0x00000039 
+ 00019199  0x00004939 arg  0x00000c76 , 0x00000006 
+ 00019200  0x0000493a arg  0x00000cb6 , 0x00000005 
+ 00019201  0x0000493b call  0x00007f01 
+ 00019202  0x0000493c branch  0x00004988 
+ 00019203  0x0000493f fetch  0x00000002 , 0x00000c70 
+ 00019204  0x00004940 arg  0x00000200 , 0x00000002 
+ 00019205  0x00004941 isub  0x00000002 , 0x0000003e 
+ 00019206  0x00004942 nrtn  0x00000005 
+ 00019207  0x00004943 fetch  0x00000002 , 0x00000c72 
+ 00019208  0x00004944 arg  0x00000000 , 0x00000002 
+ 00019209  0x00004945 isub  0x00000002 , 0x0000003e 
+ 00019210  0x00004946 nrtn  0x00000005 
+ 00019211  0x00004947 fetch  0x00000002 , 0x00000c74 
+ 00019212  0x00004948 arg  0x00000001 , 0x00000002 
+ 00019213  0x00004949 isub  0x00000002 , 0x0000003e 
+ 00019214  0x0000494a nrtn  0x00000005 
+ 00019215  0x0000494b jam  0x00000001 , 0x00000d43 
+ 00019216  0x0000494c rtn 
+ 00019217  0x00004950 fetch  0x00000001 , 0x00000c74 
+ 00019218  0x00004951 bne  0x00000000 , 0x00004984 
+ 00019219  0x00004952 fetch  0x00000001 , 0x00000c70 
+ 00019220  0x00004953 beq  0x00000000 , 0x00004b17 
+ 00019221  0x00004954 beq  0x00000001 , 0x00004b1a 
+ 00019222  0x00004955 branch  0x00004984 
+ 00019223  0x00004957 jam  0x00000000 , 0x00000d4a 
+ 00019224  0x00004958 jam  0x00000001 , 0x00000d49 
+ 00019225  0x00004959 branch  0x00004988 
+ 00019226  0x0000495b jam  0x00000001 , 0x00000d44 
+ 00019227  0x0000495c jam  0x00000001 , 0x00000d4a 
+ 00019228  0x0000495d jam  0x00000000 , 0x00000d49 
+ 00019229  0x0000495e branch  0x00004988 
+ 00019230  0x00004962 ifetch  0x00000001 , 0x00000011 
+ 00019231  0x00004963 iforce  0x00000012 
+ 00019232  0x00004964 increase  0x00000001 , 0x00000011 
+ 00019233  0x00004967 bpatch  0x000000fa , 0x0000401f 
+ 00019234  0x00004968 bmark0  0x00000023 , 0x00004b2c 
+ 00019235  0x00004969 add  0x00000012 , 0x00000001 , 0x0000003f 
+ 00019236  0x0000496a lshift  0x0000003f , 0x0000003f 
+ 00019237  0x0000496b hstore  0x00000001 , 0x00008a18 
+ 00019238  0x0000496c jam  0x00000003 , 0x00008a18 
+ 00019239  0x0000496d fetch  0x00000001 , 0x00000c74 
+ 00019240  0x0000496e increase  0xfffffffe , 0x0000003f 
+ 00019241  0x0000496f rshift  0x0000003f , 0x0000003f 
+ 00019242  0x00004970 store  0x00000001 , 0x00000c74 
+ 00019243  0x00004971 beq  0x00000000 , 0x00004b35 
+ 00019244  0x00004973 fetch  0x00000002 , 0x00000c74 
+ 00019245  0x00004974 isub  0x00000012 , 0x0000003e 
+ 00019246  0x00004975 branch  0x00004b30 , 0x00000002 
+ 00019247  0x00004976 copy  0x0000003f , 0x00000012 
+ 00019248  0x00004978 deposit  0x00000011 
+ 00019249  0x00004979 store  0x00000002 , 0x00000b65 
+ 00019250  0x0000497a deposit  0x00000012 
+ 00019251  0x0000497b store  0x00000001 , 0x00000b67 
+ 00019252  0x0000497c branch  0x00004b37 
+ 00019253  0x0000497f arg  0x00000000 , 0x00000007 
+ 00019254  0x00004980 branch  0x00004b57 
+ 00019255  0x00004984 bpatch  0x000000fb , 0x0000401f 
+ 00019256  0x00004985 fetch  0x00000001 , 0x00000b67 
+ 00019257  0x00004986 rtn  0x00000034 
+ 00019258  0x00004987 copy  0x0000003f , 0x00000039 
+ 00019259  0x00004988 sub  0x0000003f , 0x00000040 , 0x0000003e 
+ 00019260  0x00004989 branch  0x00004b3e , 0x00000002 
+ 00019261  0x0000498a arg  0x00000040 , 0x00000039 
+ 00019262  0x0000498c fetch  0x00000001 , 0x00000b67 
+ 00019263  0x0000498d isub  0x00000039 , 0x0000003f 
+ 00019264  0x0000498e store  0x00000001 , 0x00000b67 
+ 00019265  0x0000498f fetch  0x00000002 , 0x00000b65 
+ 00019266  0x00004990 copy  0x0000003f , 0x00000006 
+ 00019267  0x00004992 ifetch  0x00000001 , 0x00000006 
+ 00019268  0x00004993 hstore  0x00000001 , 0x00008a18 
+ 00019269  0x00004994 bmark0  0x00000023 , 0x00004b47 
+ 00019270  0x00004995 jam  0x00000000 , 0x00008a18 
+ 00019271  0x00004997 loop  0x00004b43 
+ 00019272  0x00004998 copy  0x00000006 , 0x0000003f 
+ 00019273  0x00004999 store  0x00000002 , 0x00000b65 
+ 00019274  0x0000499a arg  0x00000000 , 0x00000007 
+ 00019275  0x0000499b call  0x00004b57 
+ 00019276  0x0000499c fetch  0x00000001 , 0x00000b67 
+ 00019277  0x0000499d nrtn  0x00000034 
+ 00019278  0x0000499e fetch  0x00000001 , 0x00000d36 
+ 00019279  0x0000499f rtnne  0x00000001 
+ 00019280  0x000049a0 jam  0x00000002 , 0x00000d36 
+ 00019281  0x000049a1 rtn 
+ 00019282  0x000049a5 arg  0x00008a19 , 0x00000011 
+ 00019283  0x000049a6 arg  0x00000001 , 0x00000007 
+ 00019284  0x000049a8 ifetch  0x00000001 , 0x00000006 
+ 00019285  0x000049a9 istore  0x00000001 , 0x00000011 
+ 00019286  0x000049aa loop  0x00004b54 
+ 00019287  0x000049ac setarg  0x00000000 
+ 00019288  0x000049ad qset1  0x0000003f 
+ 00019289  0x000049ae hstore  0x00000001 , 0x00008a10 
+ 00019290  0x000049af fetcht  0x00000001 , 0x00000d37 
+ 00019291  0x000049b0 ior  0x00000002 , 0x0000003f 
+ 00019292  0x000049b1 store  0x00000001 , 0x00000d37 
+ 00019293  0x000049b2 rtn 
+ 00019294  0x000049b5 arg  0x00000002 , 0x00000007 
+ 00019295  0x000049b6 arg  0x00008a1a , 0x00000011 
+ 00019296  0x000049b7 branch  0x00004b54 
+ 00019297  0x000049ba bpatch  0x000000fc , 0x0000401f 
+ 00019298  0x000049bb fetch  0x00000001 , 0x00000d38 
+ 00019299  0x000049bc rtn  0x00000034 
+ 00019300  0x000049bd fetch  0x00000001 , 0x00000d37 
+ 00019301  0x000049be nbranch  0x00004bac , 0x00000034 
+ 00019302  0x000049bf fetch  0x00000001 , 0x00000d45 
+ 00019303  0x000049c0 branch  0x00004b86 , 0x00000034 
+ 00019304  0x000049c1 fetch  0x00000001 , 0x00000d36 
+ 00019305  0x000049c2 beq  0x00000003 , 0x00004bbf 
+ 00019306  0x000049c3 bne  0x00000002 , 0x00004b86 
+ 00019307  0x000049c4 fetch  0x00000001 , 0x00000d3a 
+ 00019308  0x000049c5 nbranch  0x00004b86 , 0x00000034 
+ 00019309  0x000049c6 call  0x00004b6f 
+ 00019310  0x000049c7 branch  0x00004b7a 
+ 00019311  0x000049ca fetch  0x00000001 , 0x00000d38 
+ 00019312  0x000049cb rtnbit0  0x00000001 
+ 00019313  0x000049cc fetch  0x00000001 , 0x00000d37 
+ 00019314  0x000049cd rtnbit1  0x00000001 
+ 00019315  0x000049ce fetch  0x00000001 , 0x00000d38 
+ 00019316  0x000049cf set0  0x00000001 , 0x0000003f 
+ 00019317  0x000049d0 store  0x00000001 , 0x00000d38 
+ 00019318  0x000049d1 fetch  0x00000001 , 0x00000d51 
+ 00019319  0x000049d2 rtn  0x00000034 
+ 00019320  0x000049d3 beq  0x00000010 , 0x00004ba8 
+ 00019321  0x000049d4 branch  0x00002a8c 
+ 00019322  0x000049d7 fetch  0x00000001 , 0x00000d38 
+ 00019323  0x000049d8 rtnbit0  0x00000002 
+ 00019324  0x000049d9 fetch  0x00000001 , 0x00000d37 
+ 00019325  0x000049da rtnbit1  0x00000002 
+ 00019326  0x000049db fetch  0x00000001 , 0x00000d38 
+ 00019327  0x000049dc set0  0x00000002 , 0x0000003f 
+ 00019328  0x000049dd store  0x00000001 , 0x00000d38 
+ 00019329  0x000049de fetch  0x00000001 , 0x00000d52 
+ 00019330  0x000049df rtn  0x00000034 
+ 00019331  0x000049e0 beq  0x00000020 , 0x00004b89 
+ 00019332  0x000049e1 beq  0x00000021 , 0x00004ba4 
+ 00019333  0x000049e2 branch  0x00002a8c 
+ 00019334  0x000049e6 arg  0x00000d54 , 0x00000005 
+ 00019335  0x000049e7 arg  0x00000006 , 0x00000039 
+ 00019336  0x000049e8 branch  0x00007ec6 
+ 00019337  0x000049eb fetch  0x00000001 , 0x00000d4c 
+ 00019338  0x000049ec fetcht  0x00000001 , 0x00000d4b 
+ 00019339  0x000049ed iand  0x00000002 , 0x0000003f 
+ 00019340  0x000049ee branch  0x00004ba0 , 0x00000034 
+ 00019341  0x000049ef fetcht  0x00000001 , 0x00000d4a 
+ 00019342  0x000049f0 iadd  0x00000002 , 0x0000003f 
+ 00019343  0x000049f1 beq  0x00000001 , 0x00004b91 
+ 00019344  0x000049f2 branch  0x00004ba0 
+ 00019345  0x000049f5 jam  0x00000000 , 0x00000d52 
+ 00019346  0x000049f7 fetch  0x00000001 , 0x00000d55 
+ 00019347  0x000049f8 beq  0x00000002 , 0x00004ba1 
+ 00019348  0x000049f9 beq  0x00000003 , 0x00004ba1 
+ 00019349  0x000049fa fetch  0x00000001 , 0x00000d55 
+ 00019350  0x000049fb store  0x00000001 , 0x00000d54 
+ 00019351  0x000049fc fetch  0x00000001 , 0x00000d56 
+ 00019352  0x000049fd istore  0x00000001 , 0x00000005 
+ 00019353  0x000049fe fetch  0x00000001 , 0x00000d58 
+ 00019354  0x000049ff istore  0x00000001 , 0x00000005 
+ 00019355  0x00004a00 fetch  0x00000001 , 0x00000d5a 
+ 00019356  0x00004a01 istore  0x00000001 , 0x00000005 
+ 00019357  0x00004a02 arg  0x00000004 , 0x00000039 
+ 00019358  0x00004a03 arg  0x00000d54 , 0x00000006 
+ 00019359  0x00004a04 branch  0x00004b5e 
+ 00019360  0x00004a07 jam  0x00000000 , 0x00000d52 
+ 00019361  0x00004a09 arg  0x00000008 , 0x00000039 
+ 00019362  0x00004a0a arg  0x00000d54 , 0x00000006 
+ 00019363  0x00004a0b branch  0x00004b5e 
+ 00019364  0x00004a0e jam  0x00000000 , 0x00000d52 
+ 00019365  0x00004a0f arg  0x00000003 , 0x00000039 
+ 00019366  0x00004a10 arg  0x00000d74 , 0x00000006 
+ 00019367  0x00004a11 branch  0x00004b5e 
+ 00019368  0x00004a14 jam  0x00000000 , 0x00000d51 
+ 00019369  0x00004a15 arg  0x00000008 , 0x00000039 
+ 00019370  0x00004a16 arg  0x00000d64 , 0x00000006 
+ 00019371  0x00004a17 branch  0x00004b52 
+ 00019372  0x00004a1a fetch  0x00000001 , 0x00000d36 
+ 00019373  0x00004a1b beq  0x00000003 , 0x00004bb0 
+ 00019374  0x00004a1c beq  0x00000002 , 0x00004bb2 
+ 00019375  0x00004a1d rtn 
+ 00019376  0x00004a1f jam  0x00000000 , 0x00000d37 
+ 00019377  0x00004a20 rtn 
+ 00019378  0x00004a22 hfetch  0x00000001 , 0x00008a00 
+ 00019379  0x00004a23 set1  0x00000007 , 0x0000003f 
+ 00019380  0x00004a24 hstore  0x00000001 , 0x00008a00 
+ 00019381  0x00004a25 jam  0x00000001 , 0x00000d47 
+ 00019382  0x00004a26 rtn 
+ 00019383  0x00004a29 fetch  0x00000001 , 0x00000d36 
+ 00019384  0x00004a2a rtneq  0x00000003 
+ 00019385  0x00004a2b beq  0x00000002 , 0x00004bbb 
+ 00019386  0x00004a2c rtn 
+ 00019387  0x00004a2e fetch  0x00000001 , 0x00000d47 
+ 00019388  0x00004a2f rtn  0x00000034 
+ 00019389  0x00004a30 jam  0x00000001 , 0x00000d46 
+ 00019390  0x00004a31 branch  0x00004bc2 
+ 00019391  0x00004a34 arg  0x0000000f , 0x00000007 
+ 00019392  0x00004a35 call  0x00007f16 
+ 00019393  0x00004a36 nrtn  0x00000034 
+ 00019394  0x00004a38 hfetch  0x00000001 , 0x00008a00 
+ 00019395  0x00004a39 rtnbit0  0x00000007 
+ 00019396  0x00004a3a jam  0x000000fc , 0x00008a00 
+ 00019397  0x00004a3b nop  0x00007530 
+ 00019398  0x00004a3c jam  0x0000003c , 0x00008a00 
+ 00019399  0x00004a3d rtn 
+ 00019400  0x00004a45 bpatch  0x000000fd , 0x0000401f 
+ 00019401  0x00004a46 fetch  0x00000001 , 0x000041ce 
+ 00019402  0x00004a47 nrtn  0x00000034 
+ 00019403  0x00004a49 call  0x00004bce 
+ 00019404  0x00004a4a ncall  0x00004be6 , 0x00000028 
+ 00019405  0x00004a4b rtn 
+ 00019406  0x00004a4e bpatch  0x000000fe , 0x0000401f 
+ 00019407  0x00004a4f copy  0x00000003 , 0x00000011 
+ 00019408  0x00004a50 arg  0x00000004 , 0x00000002 
+ 00019409  0x00004a51 ifetch  0x00000001 , 0x00000003 
+ 00019410  0x00004a52 beq  0x00000001 , 0x00004bd8 
+ 00019411  0x00004a53 increase  0x00000001 , 0x00000002 
+ 00019412  0x00004a54 beq  0x00000002 , 0x00004bd8 
+ 00019413  0x00004a55 copy  0x00000003 , 0x0000003f 
+ 00019414  0x00004a56 hstore  0x00000002 , 0x00008058 
+ 00019415  0x00004a57 rtn 
+ 00019416  0x00004a59 hfetch  0x00000002 , 0x00008112 
+ 00019417  0x00004a5a isub  0x00000002 , 0x0000003e 
+ 00019418  0x00004a5b nbranch  0x00004bd8 , 0x00000002 
+ 00019419  0x00004a5d disable  0x00000028 
+ 00019420  0x00004a5e copy  0x00000011 , 0x00000003 
+ 00019421  0x00004a5f call  0x00004bee 
+ 00019422  0x00004a60 iadd  0x00000002 , 0x00000002 
+ 00019423  0x00004a62 hfetch  0x00000002 , 0x00008112 
+ 00019424  0x00004a63 isub  0x00000002 , 0x0000003e 
+ 00019425  0x00004a64 nbranch  0x00004bdf , 0x00000002 
+ 00019426  0x00004a65 copy  0x00000011 , 0x00000003 
+ 00019427  0x00004a66 ifetch  0x00000001 , 0x00000003 
+ 00019428  0x00004a67 beq  0x00000001 , 0x00004c3f 
+ 00019429  0x00004a68 branch  0x00002a8c 
+ 00019430  0x00004a6b bpatch  0x000000ff , 0x0000401f 
+ 00019431  0x00004a6c hfetch  0x00000002 , 0x00008058 
+ 00019432  0x00004a6d iforce  0x00000003 
+ 00019433  0x00004a6e call  0x00004bee 
+ 00019434  0x00004a6f iadd  0x00000003 , 0x00000003 
+ 00019435  0x00004a70 deposit  0x00000003 
+ 00019436  0x00004a71 hstore  0x00000002 , 0x00008058 
+ 00019437  0x00004a72 rtn 
+ 00019438  0x00004a78 ifetch  0x00000001 , 0x00000003 
+ 00019439  0x00004a79 increase  0x00000002 , 0x00000003 
+ 00019440  0x00004a7a beq  0x00000002 , 0x00004bf3 
+ 00019441  0x00004a7b ifetch  0x00000001 , 0x00000003 
+ 00019442  0x00004a7c rtn 
+ 00019443  0x00004a7e ifetch  0x00000002 , 0x00000003 
+ 00019444  0x00004a7f rtn 
+ 00019445  0x00004a82 hfetch  0x00000002 , 0x0000805e 
+ 00019446  0x00004a83 increase  0xfffffffb , 0x0000000a 
+ 00019447  0x00004a84 iadd  0x0000000a , 0x0000000a 
+ 00019448  0x00004a85 rtn 
+ 00019449  0x00004a88 arg  0x00000004 , 0x00000002 
+ 00019450  0x00004a89 branch  0x00004bfc 
+ 00019451  0x00004a8b arg  0x00000002 , 0x00000002 
+ 00019452  0x00004a8d bpatchx  0x00000000 , 0x00004020 
+ 00019453  0x00004a8e increase  0x00000001 , 0x00000039 
+ 00019454  0x00004a8f hfetch  0x00000002 , 0x0000805e 
+ 00019455  0x00004a90 copy  0x0000003f , 0x0000000a 
+ 00019456  0x00004a91 copy  0x00000039 , 0x0000003f 
+ 00019457  0x00004a92 istoret  0x00000001 , 0x0000000a 
+ 00019458  0x00004a93 increase  0xffffffff , 0x0000003f 
+ 00019459  0x00004a94 iadd  0x0000000a , 0x0000000a 
+ 00019460  0x00004a95 copy  0x0000000a , 0x0000003f 
+ 00019461  0x00004a96 store  0x00000002 , 0x00000258 
+ 00019462  0x00004a97 copy  0x00000002 , 0x0000003f 
+ 00019463  0x00004a98 rtneq  0x00000002 
+ 00019464  0x00004a99 fetch  0x00000002 , 0x00000258 
+ 00019465  0x00004a9a hstore  0x00000002 , 0x0000805e 
+ 00019466  0x00004a9b branch  0x00004c0b 
+ 00019467  0x00004a9f setarg  0x00000000 
+ 00019468  0x00004aa0 store  0x00000002 , 0x00000258 
+ 00019469  0x00004aa1 rtn 
+ 00019470  0x00004aa9 rtn  0x0000002b 
+ 00019471  0x00004aaa setarg  0x00004d28 
+ 00019472  0x00004aab store  0x00000002 , 0x000041f3 
+ 00019473  0x00004aad setarg  0x000001a0 
+ 00019474  0x00004aae store  0x00000002 , 0x00004243 
+ 00019475  0x00004ab0 setarg  0x00001800 
+ 00019476  0x00004ab1 hstore  0x00000002 , 0x00008054 
+ 00019477  0x00004ab2 setarg  0x00001bff 
+ 00019478  0x00004ab3 hstore  0x00000002 , 0x00008056 
+ 00019479  0x00004ab4 setarg  0x00001c00 
+ 00019480  0x00004ab5 hstore  0x00000002 , 0x0000805a 
+ 00019481  0x00004ab6 call  0x00004c28 
+ 00019482  0x00004ab8 jam  0x00000000 , 0x00008062 
+ 00019483  0x00004ab9 setarg  0x00001c00 
+ 00019484  0x00004aba hstore  0x00000002 , 0x0000805e 
+ 00019485  0x00004abb hstore  0x00000002 , 0x00008060 
+ 00019486  0x00004abc setarg  0x00001800 
+ 00019487  0x00004abd hstore  0x00000002 , 0x00008058 
+ 00019488  0x00004abe store  0x00000002 , 0x00000244 
+ 00019489  0x00004ac0 hfetch  0x00000002 , 0x00008050 
+ 00019490  0x00004ac1 set0  0x0000000f , 0x0000003f 
+ 00019491  0x00004ac2 hstore  0x00000002 , 0x00008050 
+ 00019492  0x00004ac3 call  0x000066ce 
+ 00019493  0x00004ac4 jam  0x00000001 , 0x00008043 
+ 00019494  0x00004ac5 jam  0x00000081 , 0x00008062 
+ 00019495  0x00004ac6 rtn 
+ 00019496  0x00004ac9 setarg  0x00001fff 
+ 00019497  0x00004aca hstore  0x00000002 , 0x0000805c 
+ 00019498  0x00004acb hfetch  0x00000001 , 0x00008081 
+ 00019499  0x00004acc or_into  0x00000007 , 0x0000003f 
+ 00019500  0x00004acd hstore  0x00000001 , 0x00008081 
+ 00019501  0x00004ace rtn 
+ 00019502  0x00004ad2 bpatchx  0x00000001 , 0x00004020 
+ 00019503  0x00004ad3 hfetch  0x00000001 , 0x0000810c 
+ 00019504  0x00004ad4 iforce  0x00000012 
+ 00019505  0x00004ad5 bbit0  0x00000003 , 0x00004c37 
+ 00019506  0x00004ad6 hfetch  0x00000002 , 0x00008112 
+ 00019507  0x00004ad7 iforce  0x00000013 
+ 00019508  0x00004ad8 arg  0x0000044f , 0x00000002 
+ 00019509  0x00004ad9 isub  0x00000002 , 0x0000003e 
+ 00019510  0x00004ada nrtn  0x00000005 
+ 00019511  0x00004adc hfetch  0x00000002 , 0x00008058 
+ 00019512  0x00004add iforce  0x00000003 
+ 00019513  0x00004ade branch  0x00004bc8 
+ 00019514  0x00004ae1 hfetcht  0x00000001 , 0x0000810c 
+ 00019515  0x00004ae2 isolate1  0x00000006 , 0x00000002 
+ 00019516  0x00004ae3 branch  0x00004c3a , 0x00000001 
+ 00019517  0x00004ae4 hstore  0x00000001 , 0x00008015 
+ 00019518  0x00004ae5 rtn 
+ 00019519  0x00004ae8 bpatchx  0x00000002 , 0x00004020 
+ 00019520  0x00004ae9 fetch  0x00000001 , 0x000041ce 
+ 00019521  0x00004aea branch  0x00004c44 , 0x00000034 
+ 00019522  0x00004aeb enable  0x00000028 
+ 00019523  0x00004aec rtn 
+ 00019524  0x00004aee ifetch  0x00000002 , 0x00000003 
+ 00019525  0x00004aef iforce  0x00000030 
+ 00019526  0x00004af0 iforce  0x00000007 
+ 00019527  0x00004af1 ifetch  0x00000001 , 0x00000003 
+ 00019528  0x00004af2 iforce  0x00000002 
+ 00019529  0x00004af3 rshift2  0x00000030 , 0x0000003f 
+ 00019530  0x00004af4 rshift8  0x0000003f , 0x0000003f 
+ 00019531  0x00004af5 beq  0x0000003f , 0x00004c4d 
+ 00019532  0x00004af6 rtn 
+ 00019533  0x00004afa bpatchx  0x00000003 , 0x00004020 
+ 00019534  0x00004afb deposit  0x00000007 
+ 00019535  0x00004afc beq  0x00000000 , 0x00004cdc 
+ 00019536  0x00004afd beq  0x00000001 , 0x00004c66 
+ 00019537  0x00004afe beq  0x00000002 , 0x00004c6b 
+ 00019538  0x00004aff beq  0x00000003 , 0x00004c7a 
+ 00019539  0x00004b00 beq  0x00000004 , 0x00004cb3 
+ 00019540  0x00004b01 beq  0x00000005 , 0x00004cdc 
+ 00019541  0x00004b02 beq  0x00000006 , 0x00004cc6 
+ 00019542  0x00004b03 beq  0x00000007 , 0x00004c5c 
+ 00019543  0x00004b05 beq  0x00000010 , 0x00004cc9 
+ 00019544  0x00004b06 beq  0x00000011 , 0x00004cd1 
+ 00019545  0x00004b07 beq  0x00000012 , 0x00004ca5 
+ 00019546  0x00004b08 beq  0x00000013 , 0x00004c85 
+ 00019547  0x00004b09 branch  0x00004cdc 
+ 00019548  0x00004b0c call  0x00004cdc 
+ 00019549  0x00004b0d call  0x00007f9e 
+ 00019550  0x00004b0e call  0x0000688c 
+ 00019551  0x00004b10 call  0x000033d2 
+ 00019552  0x00004b11 call  0x000033d9 
+ 00019553  0x00004b12 branch  0x0000688f 
+ 00019554  0x00004b15 jam  0x00000000 , 0x00004245 
+ 00019555  0x00004b16 call  0x000033d0 
+ 00019556  0x00004b17 call  0x00004c13 
+ 00019557  0x00004b18 branch  0x000033db 
+ 00019558  0x00004b1b call  0x00004cf2 
+ 00019559  0x00004b1c hfetch  0x00000002 , 0x00008000 
+ 00019560  0x00004b1d istore  0x00000002 , 0x0000000a 
+ 00019561  0x00004b1e force  0x00000006 , 0x00000039 
+ 00019562  0x00004b1f branch  0x00004cdd 
+ 00019563  0x00004b22 ifetch  0x00000002 , 0x00000003 
+ 00019564  0x00004b23 store  0x00000002 , 0x00004243 
+ 00019565  0x00004b24 hstore  0x00000002 , 0x00008052 
+ 00019566  0x00004b25 rtn 
+ 00019567  0x00004b2a ifetch  0x00000001 , 0x00000003 
+ 00019568  0x00004b2b copy  0x0000003f , 0x00000002 
+ 00019569  0x00004b2c hstore  0x00000001 , 0x00008024 
+ 00019570  0x00004b2d ifetch  0x00000001 , 0x00000003 
+ 00019571  0x00004b2e iadd  0x00000002 , 0x00000002 
+ 00019572  0x00004b2f set1  0x00000007 , 0x0000003f 
+ 00019573  0x00004b30 hstore  0x00000001 , 0x00008023 
+ 00019574  0x00004b31 ifetch  0x00000001 , 0x00000003 
+ 00019575  0x00004b32 iadd  0x00000002 , 0x00000002 
+ 00019576  0x00004b33 copy  0x0000003f , 0x00000039 
+ 00019577  0x00004b34 rtn 
+ 00019578  0x00004b37 bmark1  0x0000002b , 0x00004cc4 
+ 00019579  0x00004b38 call  0x00004c6f 
+ 00019580  0x00004b3a ifetch  0x00000001 , 0x00000003 
+ 00019581  0x00004b3b hstore  0x00000001 , 0x00008025 
+ 00019582  0x00004b3c iadd  0x00000002 , 0x00000002 
+ 00019583  0x00004b3d loop  0x00004c7c 
+ 00019584  0x00004b3f and  0x00000002 , 0x000000ff , 0x00000002 
+ 00019585  0x00004b40 ifetch  0x00000001 , 0x00000003 
+ 00019586  0x00004b41 isub  0x00000002 , 0x0000003e 
+ 00019587  0x00004b42 nbranch  0x00004cc4 , 0x00000005 
+ 00019588  0x00004b43 branch  0x00004cdc 
+ 00019589  0x00004b47 bmark0  0x0000002b , 0x00004cc4 
+ 00019590  0x00004b48 call  0x00004c6f 
+ 00019591  0x00004b49 store  0x00000008 , 0x00000a9a 
+ 00019592  0x00004b4b call  0x00007422 
+ 00019593  0x00004b4c arg  0x00000010 , 0x00000039 
+ 00019594  0x00004b4d arg  0x00000ac2 , 0x00000005 
+ 00019595  0x00004b4e call  0x00004ca0 
+ 00019596  0x00004b4f storet  0x00000008 , 0x00000aa2 
+ 00019597  0x00004b50 arg  0x00000ad2 , 0x00000005 
+ 00019598  0x00004b51 call  0x00007497 
+ 00019599  0x00004b52 arg  0x00000ad2 , 0x00000011 
+ 00019600  0x00004b53 arg  0x00000ac2 , 0x00000012 
+ 00019601  0x00004b54 arg  0x00000ae2 , 0x00000005 
+ 00019602  0x00004b55 call  0x00007352 
+ 00019603  0x00004b56 arg  0x00000010 , 0x00000039 
+ 00019604  0x00004b57 arg  0x00000ae2 , 0x00000006 
+ 00019605  0x00004b58 call  0x00004c9c 
+ 00019606  0x00004b59 fetcht  0x00000008 , 0x00000aa2 
+ 00019607  0x00004b5a fetch  0x00000008 , 0x00000a9a 
+ 00019608  0x00004b5b increase  0xfffffff0 , 0x0000003f 
+ 00019609  0x00004b5c store  0x00000008 , 0x00000a9a 
+ 00019610  0x00004b5d nbranch  0x00004c88 , 0x00000034 
+ 00019611  0x00004b5e branch  0x00004c80 
+ 00019612  0x00004b61 ifetch  0x00000001 , 0x00000006 
+ 00019613  0x00004b62 hstore  0x00000001 , 0x00008025 
+ 00019614  0x00004b63 loop  0x00004c9c 
+ 00019615  0x00004b64 rtn 
+ 00019616  0x00004b67 ifetch  0x00000001 , 0x00000003 
+ 00019617  0x00004b68 istore  0x00000001 , 0x00000005 
+ 00019618  0x00004b69 iadd  0x00000002 , 0x00000002 
+ 00019619  0x00004b6a loop  0x00004ca0 
+ 00019620  0x00004b6b rtn 
+ 00019621  0x00004b6e bmark0  0x0000002b , 0x00004cc4 
+ 00019622  0x00004b6f arg  0x00000000 , 0x00000002 
+ 00019623  0x00004b70 arg  0x00000010 , 0x00000039 
+ 00019624  0x00004b71 arg  0x00000ac2 , 0x00000005 
+ 00019625  0x00004b72 call  0x00004ca0 
+ 00019626  0x00004b73 hfetch  0x00000001 , 0x00008085 
+ 00019627  0x00004b74 and_into  0x000000fd , 0x0000003f 
+ 00019628  0x00004b75 hstore  0x00000001 , 0x00008085 
+ 00019629  0x00004b76 arg  0x00000ac2 , 0x00000006 
+ 00019630  0x00004b77 arg  0x00000010 , 0x00000039 
+ 00019631  0x00004b78 call  0x00007478 
+ 00019632  0x00004b79 call  0x00007428 
+ 00019633  0x00004b7a call  0x00007491 
+ 00019634  0x00004b7b branch  0x00004c80 
+ 00019635  0x00004b7f arg  0x00000020 , 0x00000039 
+ 00019636  0x00004b80 arg  0x00004000 , 0x00000005 
+ 00019637  0x00004b81 arg  0x00000000 , 0x00000002 
+ 00019638  0x00004b83 ifetch  0x00000001 , 0x00000003 
+ 00019639  0x00004b84 istore  0x00000001 , 0x00000005 
+ 00019640  0x00004b85 iadd  0x00000002 , 0x00000002 
+ 00019641  0x00004b86 loop  0x00004cb6 
+ 00019642  0x00004b87 and  0x00000002 , 0x000000ff , 0x00000002 
+ 00019643  0x00004b88 ifetch  0x00000001 , 0x00000003 
+ 00019644  0x00004b89 isub  0x00000002 , 0x0000003e 
+ 00019645  0x00004b8a nbranch  0x00004cc4 , 0x00000005 
+ 00019646  0x00004b8b jam  0x00000000 , 0x00008023 
+ 00019647  0x00004b8c call  0x00004cdc 
+ 00019648  0x00004b8d call  0x00004be6 
+ 00019649  0x00004b8e call  0x000064a3 
+ 00019650  0x00004b8f call  0x00007f9e 
+ 00019651  0x00004b90 branch  0x00002001 
+ 00019652  0x00004b93 jam  0x00000000 , 0x00008023 
+ 00019653  0x00004b94 branch  0x00002000 
+ 00019654  0x00004b97 ifetch  0x00000006 , 0x00000003 
+ 00019655  0x00004b98 store  0x00000006 , 0x000040a0 
+ 00019656  0x00004b99 branch  0x00004cdc 
+ 00019657  0x00004b9d ifetch  0x00000001 , 0x00000003 
+ 00019658  0x00004b9e store  0x00000001 , 0x0000025a 
+ 00019659  0x00004b9f copy  0x0000003f , 0x00000039 
+ 00019660  0x00004ba0 ifetch  0x00000002 , 0x00000003 
+ 00019661  0x00004ba1 store  0x00000002 , 0x0000025b 
+ 00019662  0x00004ba2 copy  0x0000003f , 0x00000005 
+ 00019663  0x00004ba3 call  0x000066fd 
+ 00019664  0x00004ba4 branch  0x00004cdc 
+ 00019665  0x00004ba8 ifetch  0x00000001 , 0x00000003 
+ 00019666  0x00004ba9 store  0x00000001 , 0x0000025a 
+ 00019667  0x00004baa copy  0x0000003f , 0x00000039 
+ 00019668  0x00004bab ifetch  0x00000002 , 0x00000003 
+ 00019669  0x00004bac store  0x00000002 , 0x0000025b 
+ 00019670  0x00004bad arg  0x00001000 , 0x00000005 
+ 00019671  0x00004bae call  0x000066fd 
+ 00019672  0x00004baf fetcht  0x00000001 , 0x0000025a 
+ 00019673  0x00004bb0 arg  0x00001000 , 0x00000011 
+ 00019674  0x00004bb1 fetch  0x00000002 , 0x0000025b 
+ 00019675  0x00004bb2 branch  0x00006608 
+ 00019676  0x00004bb8 force  0x00000004 , 0x00000039 
+ 00019677  0x00004bba call  0x00004cf4 
+ 00019678  0x00004bbb force  0x00000001 , 0x0000003f 
+ 00019679  0x00004bbc istore  0x00000001 , 0x0000000a 
+ 00019680  0x00004bbd deposit  0x00000030 
+ 00019681  0x00004bbe istore  0x00000003 , 0x0000000a 
+ 00019682  0x00004bbf force  0x0000000e , 0x00000007 
+ 00019683  0x00004bc1 bpatchx  0x00000004 , 0x00004020 
+ 00019684  0x00004bc2 call  0x00004cf6 
+ 00019685  0x00004bc3 deposit  0x00000007 
+ 00019686  0x00004bc4 istore  0x00000001 , 0x0000000a 
+ 00019687  0x00004bc5 deposit  0x00000039 
+ 00019688  0x00004bc6 istore  0x00000001 , 0x0000000a 
+ 00019689  0x00004bc8 force  0x00000005 , 0x00000007 
+ 00019690  0x00004bc9 increase  0x00000002 , 0x00000039 
+ 00019691  0x00004bcb branch  0x00004bf9 
+ 00019692  0x00004bce force  0x000000ff , 0x00000007 
+ 00019693  0x00004bcf call  0x00004cf4 
+ 00019694  0x00004bd0 setarg  0x00000001 
+ 00019695  0x00004bd1 istore  0x00000001 , 0x0000000a 
+ 00019696  0x00004bd2 force  0x00000001 , 0x00000039 
+ 00019697  0x00004bd3 branch  0x00004ce3 
+ 00019698  0x00004bd6 force  0x0000000c , 0x0000000a 
+ 00019699  0x00004bd7 branch  0x00004cf7 
+ 00019700  0x00004bda force  0x00000008 , 0x0000000a 
+ 00019701  0x00004bdb branch  0x00004cf7 
+ 00019702  0x00004bde force  0x00000006 , 0x0000000a 
+ 00019703  0x00004be0 branch  0x00004bf5 
+ 00019704  0x00004be5 pulse  0x0000000f 
+ 00019705  0x00004be6 enable  0x00000009 
+ 00019706  0x00004be8 ifetch  0x00000001 , 0x0000000a 
+ 00019707  0x00004be9 inject  0x00000000 , 0x00000008 
+ 00019708  0x00004bea loop  0x00004cfa 
+ 00019709  0x00004beb enable  0x00000008 
+ 00019710  0x00004bec inject  0x00000000 , 0x00000010 
+ 00019711  0x00004bed disable  0x00000008 
+ 00019712  0x00004bee disable  0x00000009 
+ 00019713  0x00004bef disable  0x0000000f 
+ 00019714  0x00004bf0 byteswap  0x0000003f , 0x0000003f 
+ 00019715  0x00004bf1 rtn 
+ 00019716  0x00004bf6 jam  0x00000000 , 0x000041ce 
+ 00019717  0x00004bf7 rtn 
+ 00019718  0x00004bf9 fetch  0x00000006 , 0x000041d0 
+ 00019719  0x00004bfa fetcht  0x00000006 , 0x00000040 
+ 00019720  0x00004bfb isub  0x00000002 , 0x0000003e 
+ 00019721  0x00004bfc rtn 
+ 00019722  0x00004c02 fetch  0x00000001 , 0x0000004b 
+ 00019723  0x00004c03 bbit1  0x00000002 , 0x00004d0f 
+ 00019724  0x00004c04 call  0x000062ef 
+ 00019725  0x00004c05 jam  0x00000008 , 0x0000007c 
+ 00019726  0x00004c06 branch  0x00004d04 
+ 00019727  0x00004c08 set0  0x00000002 , 0x0000003f 
+ 00019728  0x00004c09 store  0x00000001 , 0x0000004b 
+ 00019729  0x00004c0a call  0x00006001 
+ 00019730  0x00004c0b setarg  0x00000000 
+ 00019731  0x00004c0c setflag  0x00000029 , 0x00000001 , 0x0000003f 
+ 00019732  0x00004c0d store  0x00000001 , 0x0000007f 
+ 00019733  0x00004c0e branch  0x00004d04 
+ 00019734  0x00004c0f rtn 
+ 00019735  0x00004c11 jam  0x00000017 , 0x0000007c 
+ 00019736  0x00004c12 arg  0x000004d9 , 0x00000005 
+ 00019737  0x00004c13 setarg  0x00000000 
+ 00019738  0x00004c14 isolate1  0x0000001b , 0x00000028 
+ 00019739  0x00004c15 setflag  0x00000001 , 0x00000001 , 0x0000003f 
+ 00019740  0x00004c16 istore  0x00000001 , 0x00000005 
+ 00019741  0x00004c17 setarg  0x00000000 
+ 00019742  0x00004c18 istore  0x00000002 , 0x00000005 
+ 00019743  0x00004c19 fetch  0x00000002 , 0x000041e3 
+ 00019744  0x00004c1a istore  0x00000002 , 0x00000005 
+ 00019745  0x00004c1b fetch  0x00000001 , 0x000041e5 
+ 00019746  0x00004c1c istore  0x00000002 , 0x00000005 
+ 00019747  0x00004c1d fetch  0x00000001 , 0x000041e7 
+ 00019748  0x00004c1e istore  0x00000002 , 0x00000005 
+ 00019749  0x00004c1f branch  0x00004d04 
+ 00019750  0x00004c22 jam  0x00000018 , 0x0000007c 
+ 00019751  0x00004c23 branch  0x00004d04 
+ 00019752  0x00004c26 call  0x00006899 
+ 00019753  0x00004c27 rtn  0x00000001 
+ 00019754  0x00004c28 arg  0x00000007 , 0x00000002 
+ 00019755  0x00004c29 call  0x0000681d 
+ 00019756  0x00004c2a nbranch  0x00004d2f , 0x00000001 
+ 00019757  0x00004c2b jam  0x00000001 , 0x00004245 
+ 00019758  0x00004c2c rtn 
+ 00019759  0x00004c2e fetch  0x00000001 , 0x00004245 
+ 00019760  0x00004c2f rtnne  0x00000001 
+ 00019761  0x00004c30 call  0x00004c62 
+ 00019762  0x00004c31 branch  0x00004cec 
+ 00019763  0x00004c40 bpatchx  0x00000005 , 0x00004020 
+ 00019764  0x00004c41 fetch  0x00000002 , 0x00000264 
+ 00019765  0x00004c42 copy  0x0000003f , 0x00000006 
+ 00019766  0x00004c43 ifetch  0x00000001 , 0x00000006 
+ 00019767  0x00004c44 and  0x0000003f , 0x0000000f , 0x00000002 
+ 00019768  0x00004c45 rshift4  0x0000003f , 0x0000003f 
+ 00019769  0x00004c46 beq  0x00000009 , 0x00004d53 
+ 00019770  0x00004c47 beq  0x00000007 , 0x00004d53 
+ 00019771  0x00004c48 beq  0x0000000a , 0x00004d5f 
+ 00019772  0x00004c49 beq  0x00000005 , 0x00004d4b 
+ 00019773  0x00004c4a beq  0x00000001 , 0x00004d3f 
+ 00019774  0x00004c4b rtn 
+ 00019775  0x00004c4e copy  0x00000002 , 0x0000003f 
+ 00019776  0x00004c4f beq  0x00000005 , 0x00004d43 
+ 00019777  0x00004c50 beq  0x00000003 , 0x00004d4a 
+ 00019778  0x00004c51 rtn 
+ 00019779  0x00004c54 jam  0x00000027 , 0x00000a99 
+ 00019780  0x00004c55 call  0x00007d86 
+ 00019781  0x00004c56 fetch  0x00000001 , 0x00004092 
+ 00019782  0x00004c57 rtnbit0  0x00000006 
+ 00019783  0x00004c58 copy  0x00000002 , 0x0000003f 
+ 00019784  0x00004c59 beq  0x00000005 , 0x0000438e 
+ 00019785  0x00004c5a rtn 
+ 00019786  0x00004c5c rtn 
+ 00019787  0x00004c5f call  0x00004d5f 
+ 00019788  0x00004c60 arg  0x00000001 , 0x00000011 
+ 00019789  0x00004c61 call  0x00004d63 
+ 00019790  0x00004c62 fetch  0x00000002 , 0x0000424c 
+ 00019791  0x00004c63 istore  0x00000002 , 0x00000005 
+ 00019792  0x00004c64 setarg  0x00000000 
+ 00019793  0x00004c65 istore  0x00000001 , 0x00000005 
+ 00019794  0x00004c66 rtn 
+ 00019795  0x00004c69 arg  0x00000001 , 0x00000011 
+ 00019796  0x00004c6a call  0x00004d63 
+ 00019797  0x00004c6b fetch  0x00000002 , 0x0000424c 
+ 00019798  0x00004c6c istore  0x00000002 , 0x00000005 
+ 00019799  0x00004c6d setarg  0x00000000 
+ 00019800  0x00004c6e istore  0x00000001 , 0x00000005 
+ 00019801  0x00004c6f jam  0x00000001 , 0x00000a8e 
+ 00019802  0x00004c70 fetch  0x00000001 , 0x00004252 
+ 00019803  0x00004c71 set1  0x00000006 
+ 00019804  0x00004c72 store  0x00000001 , 0x00004252 
+ 00019805  0x00004c73 jam  0x00000012 , 0x00000a99 
+ 00019806  0x00004c74 branch  0x00007d86 
+ 00019807  0x00004c77 ifetch  0x00000001 , 0x00000006 
+ 00019808  0x00004c78 beq  0x00000001 , 0x00004d62 
+ 00019809  0x00004c79 rtn 
+ 00019810  0x00004c7c rtn 
+ 00019811  0x00004c80 call  0x00005240 
+ 00019812  0x00004c81 copy  0x00000011 , 0x00000002 
+ 00019813  0x00004c82 storet  0x00000001 , 0x00000a8e 
+ 00019814  0x00004c83 copy  0x0000003f , 0x00000005 
+ 00019815  0x00004c84 copy  0x00000011 , 0x0000003f 
+ 00019816  0x00004c85 istore  0x00000002 , 0x00000005 
+ 00019817  0x00004c86 rtn 
+ 00019818  0x00004c98 branch  0x00004d6f , 0x0000002b 
+ 00019819  0x00004c9a setarg  0x00004365 
+ 00019820  0x00004c9b arg  0x00004246 , 0x00000005 
+ 00019821  0x00004c9c isub  0x00000005 , 0x00000039 
+ 00019822  0x00004c9d call  0x00007ed4 
+ 00019823  0x00004c9f bpatchx  0x00000006 , 0x00004020 
+ 00019824  0x00004ca0 setarg  0x00000551 
+ 00019825  0x00004ca1 arg  0x00000511 , 0x00000005 
+ 00019826  0x00004ca2 isub  0x00000005 , 0x00000039 
+ 00019827  0x00004ca3 call  0x00007ed4 
+ 00019828  0x00004ca4 setarg  0x000002c9 
+ 00019829  0x00004ca5 arg  0x0000025d , 0x00000005 
+ 00019830  0x00004ca6 isub  0x00000005 , 0x00000039 
+ 00019831  0x00004ca7 call  0x00007ed4 
+ 00019832  0x00004ca8 branch  0x00005318 
+ 00019833  0x00004cab bpatchx  0x00000007 , 0x00004020 
+ 00019834  0x00004cac copy  0x00000006 , 0x00000002 
+ 00019835  0x00004caf copy  0x00000002 , 0x00000006 
+ 00019836  0x00004cb0 ifetch  0x00000002 , 0x00000006 
+ 00019837  0x00004cb1 store  0x00000002 , 0x00000266 
+ 00019838  0x00004cb2 ifetch  0x00000002 , 0x00000006 
+ 00019839  0x00004cb3 store  0x00000002 , 0x00000268 
+ 00019840  0x00004cb4 deposit  0x00000006 
+ 00019841  0x00004cb5 store  0x00000002 , 0x00000264 
+ 00019842  0x00004cb6 fetch  0x00000001 , 0x00004681 
+ 00019843  0x00004cb7 beq  0x00000000 , 0x00004d85 
+ 00019844  0x00004cb8 branch  0x000050ef 
+ 00019845  0x00004cbb fetch  0x00000002 , 0x00000266 
+ 00019846  0x00004cbc branch  0x00004dfc , 0x00000034 
+ 00019847  0x00004cbd bpatchx  0x00000008 , 0x00004021 
+ 00019848  0x00004cbe fetch  0x00000001 , 0x00000268 
+ 00019849  0x00004cbf beq  0x00000001 , 0x00004d9d 
+ 00019850  0x00004cc1 beq  0x00000050 , 0x00004de0 
+ 00019851  0x00004cc2 beq  0x00000051 , 0x00004df5 
+ 00019852  0x00004cc3 beq  0x00000052 , 0x00004df3 
+ 00019853  0x00004cc4 beq  0x00000053 , 0x00004df3 
+ 00019854  0x00004cc5 branch  0x00004dfc 
+ 00019855  0x00004cca bpatchx  0x00000009 , 0x00004021 
+ 00019856  0x00004ccb call  0x0000527e 
+ 00019857  0x00004ccc fetch  0x00000001 , 0x00004256 
+ 00019858  0x00004ccd beq  0x00000000 , 0x00004d9b 
+ 00019859  0x00004cce beq  0x00000001 , 0x00004d9b 
+ 00019860  0x00004ccf beq  0x00000002 , 0x00004d9b 
+ 00019861  0x00004cd0 beq  0x00000003 , 0x00004d9b 
+ 00019862  0x00004cd1 beq  0x00000081 , 0x00004d9b 
+ 00019863  0x00004cd2 beq  0x000000c0 , 0x00004d9b 
+ 00019864  0x00004cd3 beq  0x00000080 , 0x00004d9b 
+ 00019865  0x00004cd4 beq  0x00000040 , 0x00004d9b 
+ 00019866  0x00004cd5 rtn 
+ 00019867  0x00004cd8 setarg  0x00000000 
+ 00019868  0x00004cd9 rtn 
+ 00019869  0x00004cdd call  0x00004d8f 
+ 00019870  0x00004cde nrtn  0x00000034 
+ 00019871  0x00004ce0 call  0x000052b8 
+ 00019872  0x00004ce1 call  0x00004e01 
+ 00019873  0x00004ce2 fetcht  0x00000002 , 0x0000026f 
+ 00019874  0x00004ce3 branch  0x00004dfb , 0x00000034 
+ 00019875  0x00004ce4 call  0x000052c1 
+ 00019876  0x00004ce5 fetch  0x00000002 , 0x0000026f 
+ 00019877  0x00004ce6 istore  0x00000002 , 0x00000005 
+ 00019878  0x00004ce7 force  0x00000001 , 0x0000003f 
+ 00019879  0x00004ce8 istore  0x00000002 , 0x00000005 
+ 00019880  0x00004ce9 branch  0x00004dfc 
+ 00019881  0x00004cec fetch  0x00000001 , 0x00004364 
+ 00019882  0x00004ced rtn  0x00000034 
+ 00019883  0x00004cee copy  0x0000003f , 0x00000011 
+ 00019884  0x00004cef bpatchx  0x0000000a , 0x00004021 
+ 00019885  0x00004cf0 fetch  0x00000004 , 0x000002d5 
+ 00019886  0x00004cf1 arg  0x00000100 , 0x00000002 
+ 00019887  0x00004cf2 iadd  0x00000002 , 0x00000002 
+ 00019888  0x00004cf3 copy  0x00000022 , 0x0000003f 
+ 00019889  0x00004cf4 isub  0x00000002 , 0x0000003e 
+ 00019890  0x00004cf5 nrtn  0x00000002 
+ 00019891  0x00004cf6 jam  0x00000000 , 0x00004364 
+ 00019892  0x00004cf7 copy  0x00000011 , 0x0000003f 
+ 00019893  0x00004cf8 beq  0x00000050 , 0x00004db7 
+ 00019894  0x00004cf9 branch  0x00002a8c 
+ 00019895  0x00004cfb arg  0x00000000 , 0x00000008 
+ 00019896  0x00004cfc call  0x000052b8 
+ 00019897  0x00004cfd call  0x00004e7a 
+ 00019898  0x00004cfe call  0x000052c3 
+ 00019899  0x00004cff call  0x00007ea8 
+ 00019900  0x00004d00 call  0x00004ead 
+ 00019901  0x00004d01 call  0x000052c1 
+ 00019902  0x00004d03 setarg  0x0000000c 
+ 00019903  0x00004d04 istore  0x00000002 , 0x00000005 
+ 00019904  0x00004d05 force  0x00000001 , 0x0000003f 
+ 00019905  0x00004d06 istore  0x00000002 , 0x00000005 
+ 00019906  0x00004d07 branch  0x00004dfc 
+ 00019907  0x00004d0c bpatchx  0x0000000b , 0x00004021 
+ 00019908  0x00004d0d fetch  0x00000002 , 0x00000275 
+ 00019909  0x00004d0e increase  0x00000004 , 0x0000003f 
+ 00019910  0x00004d0f rshift4  0x0000003f , 0x0000003f 
+ 00019911  0x00004d10 rshift3  0x0000003f , 0x0000003f 
+ 00019912  0x00004d11 add  0x0000003f , 0x00000001 , 0x00000002 
+ 00019913  0x00004d12 arg  0x00004260 , 0x00000006 
+ 00019914  0x00004d13 ifetch  0x00000003 , 0x00000006 
+ 00019915  0x00004d14 rtn  0x00000034 
+ 00019916  0x00004d15 store  0x00000003 , 0x00000ac2 
+ 00019917  0x00004d16 fetch  0x00000001 , 0x00000ac2 
+ 00019918  0x00004d17 copy  0x0000003f , 0x00000011 
+ 00019919  0x00004d18 call  0x00004dd3 
+ 00019920  0x00004d19 copy  0x00000012 , 0x0000003f 
+ 00019921  0x00004d1a store  0x00000001 , 0x00004260 
+ 00019922  0x00004d1b rtn 
+ 00019923  0x00004d1e arg  0x00000000 , 0x00000007 
+ 00019924  0x00004d1f arg  0x00000000 , 0x00000012 
+ 00019925  0x00004d22 sub  0x00000007 , 0x00000007 , 0x0000003e 
+ 00019926  0x00004d23 nrtn  0x00000002 
+ 00019927  0x00004d24 qisolate1  0x00000011 
+ 00019928  0x00004d25 branch  0x00004dda , 0x00000001 
+ 00019929  0x00004d26 branch  0x00004dde 
+ 00019930  0x00004d29 copy  0x00000002 , 0x0000003f 
+ 00019931  0x00004d2a branch  0x00004dde , 0x00000034 
+ 00019932  0x00004d2b qset1  0x00000012 
+ 00019933  0x00004d2c increase  0xffffffff , 0x00000002 
+ 00019934  0x00004d2f increase  0x00000001 , 0x00000007 
+ 00019935  0x00004d30 branch  0x00004dd5 
+ 00019936  0x00004d33 call  0x00005274 
+ 00019937  0x00004d34 nrtn  0x00000034 
+ 00019938  0x00004d35 call  0x00004d8f 
+ 00019939  0x00004d36 nrtn  0x00000034 
+ 00019940  0x00004d37 call  0x000052c5 
+ 00019941  0x00004d38 call  0x00006e11 
+ 00019942  0x00004d39 call  0x00004dc3 
+ 00019943  0x00004d3a branch  0x00004dec 
+ 00019944  0x00004d3e call  0x00005274 
+ 00019945  0x00004d3f nrtn  0x00000034 
+ 00019946  0x00004d40 call  0x000052c5 
+ 00019947  0x00004d41 call  0x00006e11 
+ 00019948  0x00004d43 call  0x000052ce 
+ 00019949  0x00004d44 fetch  0x00000002 , 0x00000275 
+ 00019950  0x00004d45 branch  0x00004dfb , 0x00000034 
+ 00019951  0x00004d46 istore  0x00000002 , 0x00000005 
+ 00019952  0x00004d47 fetch  0x00000002 , 0x00004248 
+ 00019953  0x00004d48 istore  0x00000002 , 0x00000005 
+ 00019954  0x00004d49 branch  0x00004dfc 
+ 00019955  0x00004d4c call  0x00004d33 
+ 00019956  0x00004d4d branch  0x00004dfc 
+ 00019957  0x00004d50 bpatchx  0x0000000c , 0x00004021 
+ 00019958  0x00004d51 jam  0x00000000 , 0x00000284 
+ 00019959  0x00004d52 call  0x00006a8a 
+ 00019960  0x00004d53 fetch  0x00000001 , 0x00000284 
+ 00019961  0x00004d54 rtneq  0x00000001 
+ 00019962  0x00004d55 branch  0x00004dfc 
+ 00019963  0x00004d57 call  0x00005264 
+ 00019964  0x00004d5a setarg  0x00000000 
+ 00019965  0x00004d5b store  0x00000002 , 0x00000266 
+ 00019966  0x00004d5c store  0x00000002 , 0x00000268 
+ 00019967  0x00004d5d jam  0x00000001 , 0x0000026a 
+ 00019968  0x00004d5e rtn 
+ 00019969  0x00004d61 bpatchx  0x0000000d , 0x00004021 
+ 00019970  0x00004d62 call  0x000052c3 
+ 00019971  0x00004d63 force  0x00000000 , 0x00000012 
+ 00019972  0x00004d64 fetch  0x00000002 , 0x00000266 
+ 00019973  0x00004d65 copy  0x0000003f , 0x00000013 
+ 00019974  0x00004d66 fetch  0x00000002 , 0x00000264 
+ 00019975  0x00004d67 iforce  0x00000006 
+ 00019976  0x00004d69 call  0x00004e10 
+ 00019977  0x00004d6a deposit  0x00000013 
+ 00019978  0x00004d6b increase  0xfffffffc , 0x00000013 
+ 00019979  0x00004d6c increase  0xfffffffc , 0x0000003f 
+ 00019980  0x00004d6d nbranch  0x00004e08 , 0x00000034 
+ 00019981  0x00004d6e copy  0x00000012 , 0x0000003f 
+ 00019982  0x00004d6f store  0x00000002 , 0x0000026f 
+ 00019983  0x00004d70 rtn 
+ 00019984  0x00004d73 bpatchx  0x0000000e , 0x00004021 
+ 00019985  0x00004d74 ifetch  0x00000001 , 0x00000006 
+ 00019986  0x00004d75 beq  0x00000001 , 0x00004e49 
+ 00019987  0x00004d76 beq  0x00000002 , 0x00004e51 
+ 00019988  0x00004d77 beq  0x00000003 , 0x00004ed5 
+ 00019989  0x00004d78 beq  0x00000004 , 0x00004f05 
+ 00019990  0x00004d79 beq  0x00000005 , 0x00004fa2 
+ 00019991  0x00004d7a beq  0x00000006 , 0x00004fcb 
+ 00019992  0x00004d7b beq  0x00000007 , 0x0000501b 
+ 00019993  0x00004d7c beq  0x00000008 , 0x00005050 
+ 00019994  0x00004d7d beq  0x00000009 , 0x00005060 
+ 00019995  0x00004d7e beq  0x0000000a , 0x00004e1f 
+ 00019996  0x00004d7f beq  0x0000000b , 0x00005061 
+ 00019997  0x00004d80 call  0x00005062 
+ 00019998  0x00004d82 rtn 
+ 00019999  0x00004d85 ifetch  0x00000001 , 0x00000006 
+ 00020000  0x00004d86 copy  0x0000003f , 0x00000007 
+ 00020001  0x00004d87 ifetch  0x00000002 , 0x00000006 
+ 00020002  0x00004d88 copy  0x0000003f , 0x00000011 
+ 00020003  0x00004d89 copy  0x00000013 , 0x0000003f 
+ 00020004  0x00004d8a isub  0x00000011 , 0x00000013 
+ 00020005  0x00004d8b setarg  0x0000000b 
+ 00020006  0x00004d8c istore  0x00000001 , 0x00000005 
+ 00020007  0x00004d8d copy  0x00000007 , 0x0000003f 
+ 00020008  0x00004d8e istore  0x00000001 , 0x00000005 
+ 00020009  0x00004d8f ifetch  0x00000002 , 0x00000006 
+ 00020010  0x00004d91 beq  0x00000002 , 0x00004e2d 
+ 00020011  0x00004d92 beq  0x00000003 , 0x00004e33 
+ 00020012  0x00004d93 rtn 
+ 00020013  0x00004d95 setarg  0x00020008 
+ 00020014  0x00004d96 istore  0x00000006 , 0x00000005 
+ 00020015  0x00004d97 setarg  0x00000280 
+ 00020016  0x00004d98 istore  0x00000004 , 0x00000005 
+ 00020017  0x00004d99 force  0x0000000c , 0x0000003f 
+ 00020018  0x00004d9a branch  0x00004e38 
+ 00020019  0x00004d9c setarg  0x0003000c 
+ 00020020  0x00004d9d istore  0x00000006 , 0x00000005 
+ 00020021  0x00004d9e setarg  0x00000006 
+ 00020022  0x00004d9f istore  0x00000008 , 0x00000005 
+ 00020023  0x00004da0 force  0x00000010 , 0x0000003f 
+ 00020024  0x00004da2 iadd  0x00000012 , 0x00000012 
+ 00020025  0x00004da3 branch  0x00004e1e 
+ 00020026  0x00004da6 ifetch  0x00000001 , 0x00000006 
+ 00020027  0x00004da7 copy  0x0000003f , 0x00000007 
+ 00020028  0x00004da8 ifetch  0x00000002 , 0x00000006 
+ 00020029  0x00004da9 copy  0x0000003f , 0x00000011 
+ 00020030  0x00004daa ifetch  0x00000002 , 0x00000006 
+ 00020031  0x00004dab store  0x00000002 , 0x00000aa2 
+ 00020032  0x00004dac copy  0x00000013 , 0x0000003f 
+ 00020033  0x00004dad isub  0x00000011 , 0x00000013 
+ 00020034  0x00004dae call  0x000052c3 
+ 00020035  0x00004daf setarg  0x0000000b 
+ 00020036  0x00004db0 istore  0x00000001 , 0x00000005 
+ 00020037  0x00004db1 copy  0x00000007 , 0x0000003f 
+ 00020038  0x00004db2 istore  0x00000001 , 0x00000005 
+ 00020039  0x00004db3 fetch  0x00000002 , 0x00000aa2 
+ 00020040  0x00004db4 branch  0x00004e2a 
+ 00020041  0x00004db9 ifetch  0x00000001 , 0x00000006 
+ 00020042  0x00004dba copy  0x0000003f , 0x00000007 
+ 00020043  0x00004dbb ifetch  0x00000002 , 0x00000006 
+ 00020044  0x00004dbc copy  0x0000003f , 0x00000011 
+ 00020045  0x00004dbd iadd  0x00000006 , 0x00000006 
+ 00020046  0x00004dbe copy  0x00000013 , 0x0000003f 
+ 00020047  0x00004dbf isub  0x00000011 , 0x00000013 
+ 00020048  0x00004dc1 branch  0x00004e1e 
+ 00020049  0x00004dc4 call  0x00007ea8 
+ 00020050  0x00004dc7 call  0x00007ead 
+ 00020051  0x00004dc8 arg  0x00000000 , 0x00000008 
+ 00020052  0x00004dc9 ifetch  0x00000001 , 0x00000006 
+ 00020053  0x00004dca copy  0x0000003f , 0x00000007 
+ 00020054  0x00004dcb ifetch  0x00000002 , 0x00000006 
+ 00020055  0x00004dcc copy  0x0000003f , 0x00000011 
+ 00020056  0x00004dcd ifetch  0x00000002 , 0x00000006 
+ 00020057  0x00004dce copy  0x0000003f , 0x00000002 
+ 00020058  0x00004dcf ifetch  0x00000002 , 0x00000006 
+ 00020059  0x00004dd0 copy  0x0000003f , 0x0000000b 
+ 00020060  0x00004dd1 bpatchx  0x0000000f , 0x00004021 
+ 00020061  0x00004dd2 copy  0x00000002 , 0x0000003f 
+ 00020062  0x00004dd3 beq  0x00000001 , 0x00004e64 
+ 00020063  0x00004dd4 beq  0x00000003 , 0x00004e86 
+ 00020064  0x00004dd5 beq  0x00000011 , 0x00004e92 
+ 00020065  0x00004dd6 beq  0x00000013 , 0x00004e9d 
+ 00020066  0x00004dd7 call  0x00005062 
+ 00020067  0x00004dd8 branch  0x00004ed4 
+ 00020068  0x00004ddb call  0x00007ea8 
+ 00020069  0x00004ddc arg  0x00000050 , 0x00000002 
+ 00020070  0x00004ddd fetch  0x00000002 , 0x00004248 
+ 00020071  0x00004dde nbranch  0x00004ece , 0x00000034 
+ 00020072  0x00004ddf copy  0x0000000b , 0x0000003f 
+ 00020073  0x00004de0 store  0x00000002 , 0x00004248 
+ 00020074  0x00004de1 copy  0x00000022 , 0x0000003f 
+ 00020075  0x00004de2 store  0x00000004 , 0x000002d5 
+ 00020076  0x00004de3 call  0x00004e6e 
+ 00020077  0x00004de4 branch  0x00004ea9 
+ 00020078  0x00004de7 storet  0x00000002 , 0x000002d3 
+ 00020079  0x00004de8 deposit  0x0000000b 
+ 00020080  0x00004de9 store  0x00000002 , 0x000002c9 
+ 00020081  0x00004dea deposit  0x00000011 
+ 00020082  0x00004deb store  0x00000002 , 0x000002cb 
+ 00020083  0x00004dec deposit  0x00000012 
+ 00020084  0x00004ded store  0x00000002 , 0x000002cd 
+ 00020085  0x00004dee deposit  0x00000013 
+ 00020086  0x00004def store  0x00000002 , 0x000002cf 
+ 00020087  0x00004df0 deposit  0x00000007 
+ 00020088  0x00004df1 store  0x00000002 , 0x000002d1 
+ 00020089  0x00004df2 rtn 
+ 00020090  0x00004df5 fetcht  0x00000002 , 0x000002d3 
+ 00020091  0x00004df6 fetch  0x00000002 , 0x000002c9 
+ 00020092  0x00004df7 copy  0x0000003f , 0x0000000b 
+ 00020093  0x00004df8 fetch  0x00000002 , 0x000002cb 
+ 00020094  0x00004df9 copy  0x0000003f , 0x00000011 
+ 00020095  0x00004dfa fetch  0x00000002 , 0x000002cd 
+ 00020096  0x00004dfb copy  0x0000003f , 0x00000012 
+ 00020097  0x00004dfc fetch  0x00000002 , 0x000002cf 
+ 00020098  0x00004dfd copy  0x0000003f , 0x00000013 
+ 00020099  0x00004dfe fetch  0x00000002 , 0x000002d1 
+ 00020100  0x00004dff copy  0x0000003f , 0x00000007 
+ 00020101  0x00004e00 rtn 
+ 00020102  0x00004e03 call  0x00007ea8 
+ 00020103  0x00004e04 setarg  0x00000051 
+ 00020104  0x00004e05 arg  0x00000051 , 0x00000002 
+ 00020105  0x00004e06 fetch  0x00000002 , 0x0000424a 
+ 00020106  0x00004e07 nbranch  0x00004ece , 0x00000034 
+ 00020107  0x00004e08 copy  0x0000000b , 0x0000003f 
+ 00020108  0x00004e09 store  0x00000002 , 0x0000424a 
+ 00020109  0x00004e0a fetch  0x00000001 , 0x00004251 
+ 00020110  0x00004e0b set1  0x00000000 , 0x0000003f 
+ 00020111  0x00004e0c set1  0x00000001 , 0x0000003f 
+ 00020112  0x00004e0d store  0x00000001 , 0x00004251 
+ 00020113  0x00004e0e branch  0x00004eb1 
+ 00020114  0x00004e10 call  0x00007ea8 
+ 00020115  0x00004e11 arg  0x00000052 , 0x00000002 
+ 00020116  0x00004e12 fetch  0x00000002 , 0x0000424c 
+ 00020117  0x00004e13 nbranch  0x00004ece , 0x00000034 
+ 00020118  0x00004e14 copy  0x0000000b , 0x0000003f 
+ 00020119  0x00004e15 store  0x00000002 , 0x0000424c 
+ 00020120  0x00004e16 fetch  0x00000001 , 0x00004252 
+ 00020121  0x00004e17 set1  0x00000000 , 0x0000003f 
+ 00020122  0x00004e18 set1  0x00000001 , 0x0000003f 
+ 00020123  0x00004e19 store  0x00000001 , 0x00004252 
+ 00020124  0x00004e1a branch  0x00004eb1 
+ 00020125  0x00004e1c call  0x00007ea8 
+ 00020126  0x00004e1d deposit  0x0000001a 
+ 00020127  0x00004e1e arg  0x00000053 , 0x00000002 
+ 00020128  0x00004e1f fetch  0x00000002 , 0x0000424e 
+ 00020129  0x00004e20 nbranch  0x00004ece , 0x00000034 
+ 00020130  0x00004e21 copy  0x0000000b , 0x0000003f 
+ 00020131  0x00004e22 store  0x00000002 , 0x0000424e 
+ 00020132  0x00004e23 fetch  0x00000001 , 0x00004253 
+ 00020133  0x00004e24 set1  0x00000000 , 0x0000003f 
+ 00020134  0x00004e25 set1  0x00000001 , 0x0000003f 
+ 00020135  0x00004e26 store  0x00000001 , 0x00004253 
+ 00020136  0x00004e27 branch  0x00004eb1 
+ 00020137  0x00004e2a setarg  0x00000001 
+ 00020138  0x00004e2b store  0x00000002 , 0x0000027d 
+ 00020139  0x00004e2c jam  0x00000050 , 0x00004364 
+ 00020140  0x00004e2d branch  0x00004eb3 
+ 00020141  0x00004e2f fetch  0x00000001 , 0x00004250 
+ 00020142  0x00004e30 set1  0x00000000 , 0x0000003f 
+ 00020143  0x00004e31 set1  0x00000001 , 0x0000003f 
+ 00020144  0x00004e32 store  0x00000001 , 0x00004250 
+ 00020145  0x00004e34 setarg  0x00000000 
+ 00020146  0x00004e35 store  0x00000002 , 0x0000027d 
+ 00020147  0x00004e37 bpatchx  0x00000010 , 0x00004022 
+ 00020148  0x00004e38 call  0x00007ead 
+ 00020149  0x00004e39 setarg  0x00000003 
+ 00020150  0x00004e3a istore  0x00000001 , 0x00000005 
+ 00020151  0x00004e3b copy  0x00000007 , 0x0000003f 
+ 00020152  0x00004e3c istore  0x00000001 , 0x00000005 
+ 00020153  0x00004e3d setarg  0x00000008 
+ 00020154  0x00004e3e istore  0x00000002 , 0x00000005 
+ 00020155  0x00004e3f copy  0x00000002 , 0x0000003f 
+ 00020156  0x00004e40 istore  0x00000002 , 0x00000005 
+ 00020157  0x00004e41 copy  0x0000000b , 0x0000003f 
+ 00020158  0x00004e42 istore  0x00000002 , 0x00000005 
+ 00020159  0x00004e43 fetch  0x00000002 , 0x0000027d 
+ 00020160  0x00004e44 beq  0x00000001 , 0x00004ec9 
+ 00020161  0x00004e45 isolate0  0x00000000 , 0x00000008 
+ 00020162  0x00004e46 branch  0x00004ec4 , 0x00000001 
+ 00020163  0x00004e47 setarg  0x00000004 
+ 00020164  0x00004e49 istore  0x00000002 , 0x00000005 
+ 00020165  0x00004e4a force  0x00000000 , 0x0000003f 
+ 00020166  0x00004e4b istore  0x00000002 , 0x00000005 
+ 00020167  0x00004e4c setarg  0x0000000c 
+ 00020168  0x00004e4d branch  0x00004ed0 
+ 00020169  0x00004e4f istore  0x00000002 , 0x00000005 
+ 00020170  0x00004e50 force  0x00000002 , 0x0000003f 
+ 00020171  0x00004e51 istore  0x00000002 , 0x00000005 
+ 00020172  0x00004e52 setarg  0x0000000c 
+ 00020173  0x00004e53 branch  0x00004ed0 
+ 00020174  0x00004e56 set1  0x00000000 , 0x00000008 
+ 00020175  0x00004e57 branch  0x00004eb1 
+ 00020176  0x00004e59 iadd  0x00000012 , 0x00000012 
+ 00020177  0x00004e5a copy  0x00000013 , 0x0000003f 
+ 00020178  0x00004e5b isub  0x00000011 , 0x00000013 
+ 00020179  0x00004e5c branch  0x00004ed4 
+ 00020180  0x00004e5e branch  0x00004e1e 
+ 00020181  0x00004e61 ifetch  0x00000001 , 0x00000006 
+ 00020182  0x00004e62 copy  0x0000003f , 0x00000007 
+ 00020183  0x00004e63 ifetch  0x00000002 , 0x00000006 
+ 00020184  0x00004e64 copy  0x0000003f , 0x00000011 
+ 00020185  0x00004e65 copy  0x00000013 , 0x0000003f 
+ 00020186  0x00004e66 isub  0x00000011 , 0x00000013 
+ 00020187  0x00004e67 ifetch  0x00000002 , 0x00000006 
+ 00020188  0x00004e68 copy  0x0000003f , 0x0000000b 
+ 00020189  0x00004e69 ifetch  0x00000002 , 0x00000006 
+ 00020190  0x00004e6a copy  0x0000003f , 0x00000002 
+ 00020191  0x00004e6b bpatchx  0x00000011 , 0x00004022 
+ 00020192  0x00004e6c setarg  0x00000050 
+ 00020193  0x00004e6d isub  0x00000002 , 0x0000003e 
+ 00020194  0x00004e6e branch  0x00004eed , 0x00000005 
+ 00020195  0x00004e6f setarg  0x00000051 
+ 00020196  0x00004e70 isub  0x00000002 , 0x0000003e 
+ 00020197  0x00004e71 branch  0x00004ef3 , 0x00000005 
+ 00020198  0x00004e72 setarg  0x00000052 
+ 00020199  0x00004e73 isub  0x00000002 , 0x0000003e 
+ 00020200  0x00004e74 branch  0x00004eff , 0x00000005 
+ 00020201  0x00004e75 setarg  0x00000053 
+ 00020202  0x00004e76 isub  0x00000002 , 0x0000003e 
+ 00020203  0x00004e77 branch  0x00004ef9 , 0x00000005 
+ 00020204  0x00004e78 rtn 
+ 00020205  0x00004e7b copy  0x0000000b , 0x0000003f 
+ 00020206  0x00004e7c store  0x00000002 , 0x00004248 
+ 00020207  0x00004e7d fetch  0x00000001 , 0x00004250 
+ 00020208  0x00004e7e set1  0x00000001 , 0x0000003f 
+ 00020209  0x00004e7f store  0x00000001 , 0x00004250 
+ 00020210  0x00004e80 branch  0x00004e1e 
+ 00020211  0x00004e82 copy  0x0000000b , 0x0000003f 
+ 00020212  0x00004e83 store  0x00000002 , 0x0000424a 
+ 00020213  0x00004e84 fetch  0x00000001 , 0x00004251 
+ 00020214  0x00004e85 set1  0x00000001 , 0x0000003f 
+ 00020215  0x00004e86 store  0x00000001 , 0x00004251 
+ 00020216  0x00004e87 rtn 
+ 00020217  0x00004e89 copy  0x0000000b , 0x0000003f 
+ 00020218  0x00004e8a store  0x00000002 , 0x0000424c 
+ 00020219  0x00004e8b fetch  0x00000001 , 0x00004253 
+ 00020220  0x00004e8c set1  0x00000001 , 0x0000003f 
+ 00020221  0x00004e8d store  0x00000001 , 0x00004253 
+ 00020222  0x00004e8e rtn 
+ 00020223  0x00004e90 copy  0x0000000b , 0x0000003f 
+ 00020224  0x00004e91 store  0x00000002 , 0x0000424e 
+ 00020225  0x00004e92 fetch  0x00000001 , 0x00004252 
+ 00020226  0x00004e93 set1  0x00000001 , 0x0000003f 
+ 00020227  0x00004e94 store  0x00000001 , 0x00004252 
+ 00020228  0x00004e95 rtn 
+ 00020229  0x00004e98 ifetch  0x00000001 , 0x00000006 
+ 00020230  0x00004e99 copy  0x0000003f , 0x00000007 
+ 00020231  0x00004e9a ifetch  0x00000002 , 0x00000006 
+ 00020232  0x00004e9b copy  0x0000003f , 0x00000011 
+ 00020233  0x00004e9c copy  0x00000013 , 0x0000003f 
+ 00020234  0x00004e9d isub  0x00000011 , 0x00000013 
+ 00020235  0x00004e9e ifetch  0x00000002 , 0x00000006 
+ 00020236  0x00004e9f copy  0x0000003f , 0x00000002 
+ 00020237  0x00004ea0 copy  0x00000002 , 0x00000011 
+ 00020238  0x00004ea1 bpatchx  0x00000012 , 0x00004022 
+ 00020239  0x00004ea2 setarg  0x00000050 
+ 00020240  0x00004ea3 isub  0x00000002 , 0x0000003e 
+ 00020241  0x00004ea4 branch  0x00004f1c , 0x00000005 
+ 00020242  0x00004ea5 setarg  0x00000051 
+ 00020243  0x00004ea6 isub  0x00000002 , 0x0000003e 
+ 00020244  0x00004ea7 branch  0x00004f3a , 0x00000005 
+ 00020245  0x00004ea8 setarg  0x00000052 
+ 00020246  0x00004ea9 isub  0x00000002 , 0x0000003e 
+ 00020247  0x00004eaa branch  0x00004f26 , 0x00000005 
+ 00020248  0x00004eab setarg  0x00000053 
+ 00020249  0x00004eac isub  0x00000002 , 0x0000003e 
+ 00020250  0x00004ead branch  0x00004f30 , 0x00000005 
+ 00020251  0x00004eae branch  0x00005062 
+ 00020252  0x00004eb1 copy  0x00000005 , 0x0000000b 
+ 00020253  0x00004eb2 fetch  0x00000001 , 0x00004250 
+ 00020254  0x00004eb3 set1  0x00000004 , 0x0000003f 
+ 00020255  0x00004eb4 set1  0x00000003 , 0x0000003f 
+ 00020256  0x00004eb6 store  0x00000001 , 0x00004250 
+ 00020257  0x00004eb7 copy  0x0000000b , 0x00000005 
+ 00020258  0x00004eb8 arg  0x00000050 , 0x0000000b 
+ 00020259  0x00004eb9 fetch  0x00000002 , 0x00004248 
+ 00020260  0x00004eba copy  0x0000003f , 0x00000002 
+ 00020261  0x00004ebb branch  0x00004f43 
+ 00020262  0x00004ebd copy  0x00000005 , 0x0000000b 
+ 00020263  0x00004ebe fetch  0x00000001 , 0x00004252 
+ 00020264  0x00004ebf set1  0x00000004 , 0x0000003f 
+ 00020265  0x00004ec0 set1  0x00000003 , 0x0000003f 
+ 00020266  0x00004ec2 store  0x00000001 , 0x00004252 
+ 00020267  0x00004ec3 copy  0x0000000b , 0x00000005 
+ 00020268  0x00004ec4 arg  0x00000052 , 0x0000000b 
+ 00020269  0x00004ec5 fetch  0x00000002 , 0x0000424c 
+ 00020270  0x00004ec6 copy  0x0000003f , 0x00000002 
+ 00020271  0x00004ec7 branch  0x00004f43 
+ 00020272  0x00004ec9 copy  0x00000005 , 0x0000000b 
+ 00020273  0x00004eca fetch  0x00000001 , 0x00004253 
+ 00020274  0x00004ecb set1  0x00000004 , 0x0000003f 
+ 00020275  0x00004ecc set1  0x00000003 , 0x0000003f 
+ 00020276  0x00004ece store  0x00000001 , 0x00004253 
+ 00020277  0x00004ecf copy  0x0000000b , 0x00000005 
+ 00020278  0x00004ed0 arg  0x00000053 , 0x0000000b 
+ 00020279  0x00004ed1 fetch  0x00000002 , 0x0000424e 
+ 00020280  0x00004ed2 copy  0x0000003f , 0x00000002 
+ 00020281  0x00004ed3 branch  0x00004f43 
+ 00020282  0x00004ed5 copy  0x00000005 , 0x0000000b 
+ 00020283  0x00004ed6 fetch  0x00000001 , 0x00004251 
+ 00020284  0x00004ed7 set1  0x00000004 , 0x0000003f 
+ 00020285  0x00004ed8 set1  0x00000003 , 0x0000003f 
+ 00020286  0x00004eda store  0x00000001 , 0x00004251 
+ 00020287  0x00004edc copy  0x0000000b , 0x00000005 
+ 00020288  0x00004edd arg  0x00000051 , 0x0000000b 
+ 00020289  0x00004ede fetch  0x00000002 , 0x0000424a 
+ 00020290  0x00004edf copy  0x0000003f , 0x00000002 
+ 00020291  0x00004ee1 bpatchx  0x00000013 , 0x00004022 
+ 00020292  0x00004ee2 setarg  0x00000005 
+ 00020293  0x00004ee3 istore  0x00000001 , 0x00000005 
+ 00020294  0x00004ee4 copy  0x00000007 , 0x0000003f 
+ 00020295  0x00004ee5 istore  0x00000001 , 0x00000005 
+ 00020296  0x00004ee6 setarg  0x00000006 
+ 00020297  0x00004ee7 istore  0x00000002 , 0x00000005 
+ 00020298  0x00004ee8 copy  0x00000002 , 0x0000003f 
+ 00020299  0x00004ee9 istore  0x00000002 , 0x00000005 
+ 00020300  0x00004eea force  0x00000000 , 0x0000003f 
+ 00020301  0x00004eeb istore  0x00000002 , 0x00000005 
+ 00020302  0x00004eec force  0x00000000 , 0x0000003f 
+ 00020303  0x00004eed istore  0x00000002 , 0x00000005 
+ 00020304  0x00004eee force  0x0000000a , 0x0000003f 
+ 00020305  0x00004eef iadd  0x00000012 , 0x00000012 
+ 00020306  0x00004ef1 storet  0x00000002 , 0x00000282 
+ 00020307  0x00004ef2 copy  0x00000007 , 0x0000003f 
+ 00020308  0x00004ef3 store  0x00000001 , 0x00000281 
+ 00020309  0x00004ef4 force  0x00000050 , 0x0000003f 
+ 00020310  0x00004ef5 icompare  0x000000ff , 0x0000000b 
+ 00020311  0x00004ef6 branch  0x00004f59 , 0x00000001 
+ 00020312  0x00004ef7 increase  0x00000001 , 0x0000003f 
+ 00020313  0x00004efa rtn 
+ 00020314  0x00004efc disable  0x00000028 
+ 00020315  0x00004efd rtnbit1  0x00000002 , 0x0000003f 
+ 00020316  0x00004efe rtnbit0  0x00000000 , 0x0000003f 
+ 00020317  0x00004eff rtnbit0  0x00000001 , 0x0000003f 
+ 00020318  0x00004f00 set1  0x00000002 , 0x0000003f 
+ 00020319  0x00004f01 copy  0x00000006 , 0x00000005 
+ 00020320  0x00004f02 increase  0xffffffff , 0x00000005 
+ 00020321  0x00004f03 istore  0x00000001 , 0x00000005 
+ 00020322  0x00004f04 enable  0x00000028 
+ 00020323  0x00004f05 rtn 
+ 00020324  0x00004f08 fetch  0x00000001 , 0x00004250 
+ 00020325  0x00004f09 call  0x00004f5a 
+ 00020326  0x00004f0a nbranch  0x00004f6b , 0x00000028 
+ 00020327  0x00004f0b jam  0x00000050 , 0x00000280 
+ 00020328  0x00004f0c fetch  0x00000002 , 0x00004248 
+ 00020329  0x00004f0d store  0x00000002 , 0x00000282 
+ 00020330  0x00004f0e branch  0x00004f7f 
+ 00020331  0x00004f10 fetch  0x00000001 , 0x00004251 
+ 00020332  0x00004f11 call  0x00004f5a 
+ 00020333  0x00004f12 nbranch  0x00004f72 , 0x00000028 
+ 00020334  0x00004f13 jam  0x00000051 , 0x00000280 
+ 00020335  0x00004f14 fetch  0x00000002 , 0x0000424a 
+ 00020336  0x00004f15 store  0x00000002 , 0x00000282 
+ 00020337  0x00004f16 branch  0x00004f7f 
+ 00020338  0x00004f18 fetch  0x00000001 , 0x00004252 
+ 00020339  0x00004f19 call  0x00004f5a 
+ 00020340  0x00004f1a nbranch  0x00004f79 , 0x00000028 
+ 00020341  0x00004f1b jam  0x00000052 , 0x00000280 
+ 00020342  0x00004f1c fetch  0x00000002 , 0x0000424c 
+ 00020343  0x00004f1d store  0x00000002 , 0x00000282 
+ 00020344  0x00004f1e branch  0x00004f7f 
+ 00020345  0x00004f20 fetch  0x00000001 , 0x00004253 
+ 00020346  0x00004f21 call  0x00004f5a 
+ 00020347  0x00004f22 nrtn  0x00000028 
+ 00020348  0x00004f23 jam  0x00000053 , 0x00000280 
+ 00020349  0x00004f24 fetch  0x00000002 , 0x0000424e 
+ 00020350  0x00004f25 store  0x00000002 , 0x00000282 
+ 00020351  0x00004f29 bpatchx  0x00000014 , 0x00004022 
+ 00020352  0x00004f2a call  0x0000523a 
+ 00020353  0x00004f2b call  0x000052b8 
+ 00020354  0x00004f2c force  0x00000000 , 0x00000012 
+ 00020355  0x00004f2d call  0x000052c3 
+ 00020356  0x00004f2e force  0x00000004 , 0x0000003f 
+ 00020357  0x00004f2f istore  0x00000001 , 0x00000005 
+ 00020358  0x00004f30 fetch  0x00000001 , 0x00004255 
+ 00020359  0x00004f31 istore  0x00000001 , 0x00000005 
+ 00020360  0x00004f32 setarg  0x00000008 
+ 00020361  0x00004f33 istore  0x00000002 , 0x00000005 
+ 00020362  0x00004f34 fetch  0x00000002 , 0x00000282 
+ 00020363  0x00004f35 istore  0x00000002 , 0x00000005 
+ 00020364  0x00004f36 setarg  0x00000000 
+ 00020365  0x00004f37 istore  0x00000002 , 0x00000005 
+ 00020366  0x00004f38 force  0x00000001 , 0x0000003f 
+ 00020367  0x00004f39 istore  0x00000001 , 0x00000005 
+ 00020368  0x00004f3a force  0x00000002 , 0x0000003f 
+ 00020369  0x00004f3b istore  0x00000001 , 0x00000005 
+ 00020370  0x00004f3c fetch  0x00000001 , 0x00000280 
+ 00020371  0x00004f3d beq  0x00000051 , 0x00004f97 
+ 00020372  0x00004f3e setarg  0x00000030 
+ 00020373  0x00004f3f istore  0x00000002 , 0x00000005 
+ 00020374  0x00004f40 branch  0x00004f99 
+ 00020375  0x00004f42 setarg  0x000003e3 
+ 00020376  0x00004f43 istore  0x00000002 , 0x00000005 
+ 00020377  0x00004f45 arg  0x0000000c , 0x00000002 
+ 00020378  0x00004f46 storet  0x00000002 , 0x0000026f 
+ 00020379  0x00004f47 call  0x000052c1 
+ 00020380  0x00004f48 fetch  0x00000002 , 0x0000026f 
+ 00020381  0x00004f49 istore  0x00000002 , 0x00000005 
+ 00020382  0x00004f4a force  0x00000001 , 0x0000003f 
+ 00020383  0x00004f4b istore  0x00000002 , 0x00000005 
+ 00020384  0x00004f4c jam  0x00000000 , 0x00000280 
+ 00020385  0x00004f4e branch  0x00004e1e 
+ 00020386  0x00004f51 increase  0x00000001 , 0x00000006 
+ 00020387  0x00004f52 ifetch  0x00000002 , 0x00000006 
+ 00020388  0x00004f53 copy  0x0000003f , 0x00000011 
+ 00020389  0x00004f54 copy  0x00000013 , 0x0000003f 
+ 00020390  0x00004f55 isub  0x00000011 , 0x00000013 
+ 00020391  0x00004f56 ifetch  0x00000002 , 0x00000006 
+ 00020392  0x00004f57 copy  0x0000003f , 0x00000011 
+ 00020393  0x00004f58 bpatchx  0x00000015 , 0x00004022 
+ 00020394  0x00004f59 setarg  0x00000050 
+ 00020395  0x00004f5a isub  0x00000011 , 0x0000003e 
+ 00020396  0x00004f5b branch  0x00004fba , 0x00000005 
+ 00020397  0x00004f5c setarg  0x00000051 
+ 00020398  0x00004f5d isub  0x00000011 , 0x0000003e 
+ 00020399  0x00004f5e branch  0x00004fbe , 0x00000005 
+ 00020400  0x00004f5f setarg  0x00000052 
+ 00020401  0x00004f60 isub  0x00000011 , 0x0000003e 
+ 00020402  0x00004f61 branch  0x00004fc2 , 0x00000005 
+ 00020403  0x00004f62 setarg  0x00000053 
+ 00020404  0x00004f63 isub  0x00000011 , 0x0000003e 
+ 00020405  0x00004f64 branch  0x00004fc6 , 0x00000005 
+ 00020406  0x00004f65 increase  0x00000002 , 0x00000006 
+ 00020407  0x00004f66 ifetch  0x00000002 , 0x00000006 
+ 00020408  0x00004f67 iforce  0x0000003e 
+ 00020409  0x00004f68 branch  0x00004e1e 
+ 00020410  0x00004f6a fetch  0x00000001 , 0x00004250 
+ 00020411  0x00004f6b set1  0x00000005 , 0x0000003f 
+ 00020412  0x00004f6c store  0x00000001 , 0x00004250 
+ 00020413  0x00004f6d branch  0x00004e1e 
+ 00020414  0x00004f6f fetch  0x00000001 , 0x00004251 
+ 00020415  0x00004f70 set1  0x00000005 , 0x0000003f 
+ 00020416  0x00004f71 store  0x00000001 , 0x00004251 
+ 00020417  0x00004f72 branch  0x00004e1e 
+ 00020418  0x00004f74 fetch  0x00000001 , 0x00004252 
+ 00020419  0x00004f75 set1  0x00000005 , 0x0000003f 
+ 00020420  0x00004f76 store  0x00000001 , 0x00004252 
+ 00020421  0x00004f77 branch  0x00004e1e 
+ 00020422  0x00004f79 fetch  0x00000001 , 0x00004253 
+ 00020423  0x00004f7a set1  0x00000005 , 0x0000003f 
+ 00020424  0x00004f7b store  0x00000001 , 0x00004253 
+ 00020425  0x00004f7c jam  0x00000006 , 0x00000a99 
+ 00020426  0x00004f7d branch  0x00007d86 
+ 00020427  0x00004f82 ifetch  0x00000001 , 0x00000006 
+ 00020428  0x00004f83 copy  0x0000003f , 0x00000007 
+ 00020429  0x00004f84 ifetch  0x00000002 , 0x00000006 
+ 00020430  0x00004f85 copy  0x0000003f , 0x00000011 
+ 00020431  0x00004f86 copy  0x00000013 , 0x0000003f 
+ 00020432  0x00004f87 isub  0x00000011 , 0x00000013 
+ 00020433  0x00004f88 ifetch  0x00000002 , 0x00000006 
+ 00020434  0x00004f89 copy  0x0000003f , 0x00000011 
+ 00020435  0x00004f8a ifetch  0x00000002 , 0x00000006 
+ 00020436  0x00004f8b copy  0x0000003f , 0x0000000b 
+ 00020437  0x00004f8c copy  0x00000011 , 0x00000002 
+ 00020438  0x00004f8d call  0x00007ea8 
+ 00020439  0x00004f8e bpatchx  0x00000016 , 0x00004022 
+ 00020440  0x00004f8f setarg  0x00000050 
+ 00020441  0x00004f90 isub  0x00000002 , 0x0000003e 
+ 00020442  0x00004f91 branch  0x00004ff2 , 0x00000005 
+ 00020443  0x00004f92 setarg  0x00000051 
+ 00020444  0x00004f93 isub  0x00000002 , 0x0000003e 
+ 00020445  0x00004f94 branch  0x00005002 , 0x00000005 
+ 00020446  0x00004f95 setarg  0x00000052 
+ 00020447  0x00004f96 isub  0x00000002 , 0x0000003e 
+ 00020448  0x00004f97 branch  0x00004fe6 , 0x00000005 
+ 00020449  0x00004f98 setarg  0x00000053 
+ 00020450  0x00004f99 isub  0x00000002 , 0x0000003e 
+ 00020451  0x00004f9a branch  0x00004fec , 0x00000005 
+ 00020452  0x00004f9b call  0x00005062 
+ 00020453  0x00004f9c branch  0x00005017 
+ 00020454  0x00004f9e copy  0x0000000b , 0x00000002 
+ 00020455  0x00004f9f fetch  0x00000002 , 0x0000424c 
+ 00020456  0x00004fa0 isub  0x00000002 , 0x0000003e 
+ 00020457  0x00004fa1 branch  0x00004ff8 , 0x00000005 
+ 00020458  0x00004fa2 call  0x00005062 
+ 00020459  0x00004fa3 branch  0x00005017 
+ 00020460  0x00004fa5 copy  0x0000000b , 0x00000002 
+ 00020461  0x00004fa6 fetch  0x00000002 , 0x0000424e 
+ 00020462  0x00004fa7 isub  0x00000002 , 0x0000003e 
+ 00020463  0x00004fa8 branch  0x00004ffa , 0x00000005 
+ 00020464  0x00004fa9 call  0x00005062 
+ 00020465  0x00004faa branch  0x00005017 
+ 00020466  0x00004fad copy  0x0000000b , 0x00000002 
+ 00020467  0x00004fae fetch  0x00000002 , 0x00004248 
+ 00020468  0x00004faf isub  0x00000002 , 0x0000003e 
+ 00020469  0x00004fb0 branch  0x00004ffe , 0x00000005 
+ 00020470  0x00004fb1 call  0x00005062 
+ 00020471  0x00004fb2 branch  0x00005017 
+ 00020472  0x00004fb4 call  0x00005079 
+ 00020473  0x00004fb5 branch  0x0000500a 
+ 00020474  0x00004fb7 call  0x0000507f 
+ 00020475  0x00004fb8 fetch  0x00000002 , 0x0000424c 
+ 00020476  0x00004fb9 branch  0x0000500a , 0x00000034 
+ 00020477  0x00004fc1 branch  0x0000500a 
+ 00020478  0x00004fc4 call  0x00005074 
+ 00020479  0x00004fc5 fetch  0x00000001 , 0x00000288 
+ 00020480  0x00004fc6 nbranch  0x0000500a , 0x00000034 
+ 00020481  0x00004fc9 branch  0x0000500a 
+ 00020482  0x00004fcb copy  0x0000000b , 0x00000002 
+ 00020483  0x00004fcc fetch  0x00000002 , 0x0000424a 
+ 00020484  0x00004fcd isub  0x00000002 , 0x0000003e 
+ 00020485  0x00004fce branch  0x00005008 , 0x00000005 
+ 00020486  0x00004fcf call  0x00005062 
+ 00020487  0x00004fd0 branch  0x00005017 
+ 00020488  0x00004fd2 call  0x0000506f 
+ 00020489  0x00004fd3 branch  0x0000500a 
+ 00020490  0x00004fd5 call  0x00007ead 
+ 00020491  0x00004fd6 setarg  0x00000007 
+ 00020492  0x00004fd7 istore  0x00000001 , 0x00000005 
+ 00020493  0x00004fd8 copy  0x00000007 , 0x0000003f 
+ 00020494  0x00004fd9 istore  0x00000001 , 0x00000005 
+ 00020495  0x00004fda setarg  0x00000004 
+ 00020496  0x00004fdb istore  0x00000002 , 0x00000005 
+ 00020497  0x00004fdc copy  0x00000011 , 0x0000003f 
+ 00020498  0x00004fdd istore  0x00000002 , 0x00000005 
+ 00020499  0x00004fde copy  0x0000000b , 0x0000003f 
+ 00020500  0x00004fdf istore  0x00000002 , 0x00000005 
+ 00020501  0x00004fe0 force  0x00000008 , 0x0000003f 
+ 00020502  0x00004fe1 branch  0x00005019 
+ 00020503  0x00004fe3 call  0x00007ead 
+ 00020504  0x00004fe4 branch  0x00005019 
+ 00020505  0x00004fe6 iadd  0x00000012 , 0x00000012 
+ 00020506  0x00004fe7 branch  0x00004e1e 
+ 00020507  0x00004fe9 ifetch  0x00000001 , 0x00000006 
+ 00020508  0x00004fea copy  0x0000003f , 0x00000007 
+ 00020509  0x00004feb ifetch  0x00000002 , 0x00000006 
+ 00020510  0x00004fec copy  0x0000003f , 0x00000011 
+ 00020511  0x00004fed copy  0x00000013 , 0x0000003f 
+ 00020512  0x00004fee isub  0x00000011 , 0x00000013 
+ 00020513  0x00004fef ifetch  0x00000002 , 0x00000006 
+ 00020514  0x00004ff0 copy  0x0000003f , 0x0000000b 
+ 00020515  0x00004ff1 ifetch  0x00000002 , 0x00000006 
+ 00020516  0x00004ff2 copy  0x0000003f , 0x00000002 
+ 00020517  0x00004ff3 call  0x00007ea8 
+ 00020518  0x00004ff4 bpatchx  0x00000017 , 0x00004022 
+ 00020519  0x00004ff5 setarg  0x00000050 
+ 00020520  0x00004ff6 isub  0x00000002 , 0x0000003e 
+ 00020521  0x00004ff7 branch  0x00005035 , 0x00000005 
+ 00020522  0x00004ff8 setarg  0x00000051 
+ 00020523  0x00004ff9 isub  0x00000002 , 0x0000003e 
+ 00020524  0x00004ffa branch  0x0000503b , 0x00000005 
+ 00020525  0x00004ffb setarg  0x00000052 
+ 00020526  0x00004ffc isub  0x00000002 , 0x0000003e 
+ 00020527  0x00004ffd branch  0x00005041 , 0x00000005 
+ 00020528  0x00004ffe setarg  0x00000053 
+ 00020529  0x00004fff isub  0x00000002 , 0x0000003e 
+ 00020530  0x00005000 branch  0x00005047 , 0x00000005 
+ 00020531  0x00005001 call  0x00005062 
+ 00020532  0x00005002 branch  0x0000504f 
+ 00020533  0x00005004 copy  0x00000002 , 0x00000011 
+ 00020534  0x00005005 copy  0x0000000b , 0x00000002 
+ 00020535  0x00005006 fetch  0x00000002 , 0x00004248 
+ 00020536  0x00005007 isub  0x00000002 , 0x0000003e 
+ 00020537  0x00005008 call  0x00005074 , 0x00000005 
+ 00020538  0x00005009 branch  0x0000504d 
+ 00020539  0x0000500b copy  0x00000002 , 0x00000011 
+ 00020540  0x0000500c copy  0x0000000b , 0x00000002 
+ 00020541  0x0000500d fetch  0x00000002 , 0x0000424a 
+ 00020542  0x0000500e isub  0x00000002 , 0x0000003e 
+ 00020543  0x0000500f call  0x0000506f , 0x00000005 
+ 00020544  0x00005010 branch  0x0000504d 
+ 00020545  0x00005012 copy  0x00000002 , 0x00000011 
+ 00020546  0x00005013 copy  0x0000000b , 0x00000002 
+ 00020547  0x00005014 fetch  0x00000002 , 0x0000424c 
+ 00020548  0x00005015 isub  0x00000002 , 0x0000003e 
+ 00020549  0x00005016 call  0x00005079 , 0x00000005 
+ 00020550  0x00005017 branch  0x0000504d 
+ 00020551  0x00005019 copy  0x00000002 , 0x00000011 
+ 00020552  0x0000501a copy  0x0000000b , 0x00000002 
+ 00020553  0x0000501b fetch  0x00000002 , 0x0000424e 
+ 00020554  0x0000501c isub  0x00000002 , 0x0000003e 
+ 00020555  0x0000501d call  0x0000507f , 0x00000005 
+ 00020556  0x0000501e branch  0x0000504d 
+ 00020557  0x00005020 call  0x00007ead 
+ 00020558  0x00005021 branch  0x00004e1e 
+ 00020559  0x00005023 branch  0x00004e1e 
+ 00020560  0x00005027 ifetch  0x00000001 , 0x00000006 
+ 00020561  0x00005028 copy  0x0000003f , 0x00000007 
+ 00020562  0x00005029 ifetch  0x00000002 , 0x00000006 
+ 00020563  0x0000502a copy  0x0000003f , 0x00000011 
+ 00020564  0x0000502b iadd  0x00000006 , 0x00000006 
+ 00020565  0x0000502c setarg  0x00000009 
+ 00020566  0x0000502d istore  0x00000001 , 0x00000005 
+ 00020567  0x0000502e copy  0x00000007 , 0x0000003f 
+ 00020568  0x0000502f istore  0x00000001 , 0x00000005 
+ 00020569  0x00005030 force  0x00000000 , 0x0000003f 
+ 00020570  0x00005031 istore  0x00000002 , 0x00000005 
+ 00020571  0x00005032 force  0x00000004 , 0x0000003f 
+ 00020572  0x00005033 iadd  0x00000012 , 0x00000012 
+ 00020573  0x00005034 copy  0x00000013 , 0x0000003f 
+ 00020574  0x00005035 isub  0x00000011 , 0x00000013 
+ 00020575  0x00005036 branch  0x00004e1e 
+ 00020576  0x00005038 branch  0x00004e1e 
+ 00020577  0x0000503b branch  0x00004e1e 
+ 00020578  0x0000503d force  0x00000000 , 0x00000012 
+ 00020579  0x0000503e call  0x000052c3 
+ 00020580  0x0000503f setarg  0x00000001 
+ 00020581  0x00005040 istore  0x00000001 , 0x00000005 
+ 00020582  0x00005041 copy  0x00000007 , 0x0000003f 
+ 00020583  0x00005042 istore  0x00000001 , 0x00000005 
+ 00020584  0x00005043 setarg  0x00000002 
+ 00020585  0x00005044 istore  0x00000002 , 0x00000005 
+ 00020586  0x00005045 setarg  0x00000000 
+ 00020587  0x00005046 istore  0x00000002 , 0x00000005 
+ 00020588  0x00005047 increase  0x00000006 , 0x00000012 
+ 00020589  0x00005048 arg  0x00000004 , 0x00000013 
+ 00020590  0x00005049 branch  0x00004e1e 
+ 00020591  0x0000504e setarg  0x00000000 
+ 00020592  0x0000504f store  0x00000002 , 0x0000027b 
+ 00020593  0x00005050 store  0x00000002 , 0x0000424a 
+ 00020594  0x00005051 jam  0x00000000 , 0x00004251 
+ 00020595  0x00005052 rtn 
+ 00020596  0x00005054 setarg  0x00000000 
+ 00020597  0x00005055 store  0x00000002 , 0x00000275 
+ 00020598  0x00005056 store  0x00000002 , 0x00004248 
+ 00020599  0x00005057 jam  0x00000000 , 0x00004250 
+ 00020600  0x00005058 rtn 
+ 00020601  0x0000505a setarg  0x00000000 
+ 00020602  0x0000505b store  0x00000002 , 0x0000424c 
+ 00020603  0x0000505c jam  0x00000000 , 0x00004252 
+ 00020604  0x0000505d fetch  0x00000001 , 0x00004253 
+ 00020605  0x0000505e beq  0x00000000 , 0x00005085 
+ 00020606  0x0000505f rtn 
+ 00020607  0x00005062 setarg  0x00000000 
+ 00020608  0x00005063 store  0x00000002 , 0x0000424e 
+ 00020609  0x00005064 jam  0x00000000 , 0x00004253 
+ 00020610  0x00005065 fetch  0x00000001 , 0x00004252 
+ 00020611  0x00005066 beq  0x00000000 , 0x00005085 
+ 00020612  0x00005067 rtn 
+ 00020613  0x0000506a jam  0x00000007 , 0x00000a99 
+ 00020614  0x0000506b branch  0x00007d86 
+ 00020615  0x0000506e fetch  0x00000001 , 0x0000027f 
+ 00020616  0x0000506f set0  0x00000000 , 0x0000003f 
+ 00020617  0x00005070 store  0x00000001 , 0x0000027f 
+ 00020618  0x00005071 fetch  0x00000002 , 0x0000424e 
+ 00020619  0x00005072 rtn  0x00000034 
+ 00020620  0x00005073 call  0x000052b8 
+ 00020621  0x00005074 fetch  0x00000002 , 0x0000424e 
+ 00020622  0x00005075 copy  0x0000003f , 0x00000011 
+ 00020623  0x00005076 force  0x00000053 , 0x00000012 
+ 00020624  0x00005077 branch  0x0000509a 
+ 00020625  0x00005079 fetch  0x00000001 , 0x0000027f 
+ 00020626  0x0000507a set0  0x00000007 , 0x0000003f 
+ 00020627  0x0000507b store  0x00000001 , 0x0000027f 
+ 00020628  0x0000507c fetch  0x00000002 , 0x0000424c 
+ 00020629  0x0000507d rtn  0x00000034 
+ 00020630  0x0000507e call  0x000052b8 
+ 00020631  0x0000507f fetch  0x00000002 , 0x0000424c 
+ 00020632  0x00005080 copy  0x0000003f , 0x00000011 
+ 00020633  0x00005081 force  0x00000052 , 0x00000012 
+ 00020634  0x00005083 call  0x0000523a 
+ 00020635  0x00005084 call  0x000052c3 
+ 00020636  0x00005085 force  0x00000006 , 0x0000003f 
+ 00020637  0x00005086 istore  0x00000001 , 0x00000005 
+ 00020638  0x00005087 fetch  0x00000001 , 0x00004255 
+ 00020639  0x00005088 istore  0x00000001 , 0x00000005 
+ 00020640  0x00005089 setarg  0x00000004 
+ 00020641  0x0000508a istore  0x00000002 , 0x00000005 
+ 00020642  0x0000508b copy  0x00000011 , 0x0000003f 
+ 00020643  0x0000508c istore  0x00000002 , 0x00000005 
+ 00020644  0x0000508d copy  0x00000012 , 0x0000003f 
+ 00020645  0x0000508e istore  0x00000002 , 0x00000005 
+ 00020646  0x0000508f force  0x00000008 , 0x00000002 
+ 00020647  0x00005090 branch  0x000050de 
+ 00020648  0x00005093 bpatchx  0x00000018 , 0x00004023 
+ 00020649  0x00005094 call  0x0000523a 
+ 00020650  0x00005095 call  0x000052c3 
+ 00020651  0x00005096 setarg  0x00000002 
+ 00020652  0x00005097 istore  0x00000001 , 0x00000005 
+ 00020653  0x00005098 fetch  0x00000001 , 0x00004255 
+ 00020654  0x00005099 istore  0x00000001 , 0x00000005 
+ 00020655  0x0000509a setarg  0x00000004 
+ 00020656  0x0000509b istore  0x00000002 , 0x00000005 
+ 00020657  0x0000509c copy  0x00000002 , 0x0000003f 
+ 00020658  0x0000509d istore  0x00000002 , 0x00000005 
+ 00020659  0x0000509e copy  0x0000000b , 0x0000003f 
+ 00020660  0x0000509f istore  0x00000002 , 0x00000005 
+ 00020661  0x000050a0 arg  0x00000008 , 0x00000002 
+ 00020662  0x000050a1 branch  0x000050de 
+ 00020663  0x000050a3 bpatchx  0x00000019 , 0x00004023 
+ 00020664  0x000050a4 call  0x0000523a 
+ 00020665  0x000050a5 call  0x000052c3 
+ 00020666  0x000050a6 setarg  0x00000004 
+ 00020667  0x000050a7 istore  0x00000001 , 0x00000005 
+ 00020668  0x000050a8 fetch  0x00000001 , 0x00004255 
+ 00020669  0x000050a9 istore  0x00000001 , 0x00000005 
+ 00020670  0x000050aa setarg  0x00000008 
+ 00020671  0x000050ab istore  0x00000002 , 0x00000005 
+ 00020672  0x000050ad copy  0x00000002 , 0x0000003f 
+ 00020673  0x000050af istore  0x00000002 , 0x00000005 
+ 00020674  0x000050b0 setarg  0x00000000 
+ 00020675  0x000050b1 istore  0x00000002 , 0x00000005 
+ 00020676  0x000050b2 setarg  0x00000001 
+ 00020677  0x000050b3 istore  0x00000001 , 0x00000005 
+ 00020678  0x000050b4 setarg  0x00000002 
+ 00020679  0x000050b5 istore  0x00000001 , 0x00000005 
+ 00020680  0x000050b6 setarg  0x000003e3 
+ 00020681  0x000050b7 istore  0x00000002 , 0x00000005 
+ 00020682  0x000050b8 arg  0x0000000c , 0x00000002 
+ 00020683  0x000050b9 branch  0x000050de 
+ 00020684  0x000050bb bpatchx  0x0000001a , 0x00004023 
+ 00020685  0x000050bc call  0x0000523a 
+ 00020686  0x000050bd call  0x000052c3 
+ 00020687  0x000050be setarg  0x00000006 
+ 00020688  0x000050bf istore  0x00000001 , 0x00000005 
+ 00020689  0x000050c0 fetch  0x00000001 , 0x00004255 
+ 00020690  0x000050c1 increase  0x00000001 , 0x0000003f 
+ 00020691  0x000050c2 copy  0x00000005 , 0x00000011 
+ 00020692  0x000050c3 store  0x00000001 , 0x00004255 
+ 00020693  0x000050c4 copy  0x00000011 , 0x00000005 
+ 00020694  0x000050c5 istore  0x00000001 , 0x00000005 
+ 00020695  0x000050c6 setarg  0x00000004 
+ 00020696  0x000050c7 istore  0x00000002 , 0x00000005 
+ 00020697  0x000050c8 copy  0x00000002 , 0x0000003f 
+ 00020698  0x000050c9 istore  0x00000002 , 0x00000005 
+ 00020699  0x000050ca copy  0x0000000b , 0x0000003f 
+ 00020700  0x000050cb istore  0x00000002 , 0x00000005 
+ 00020701  0x000050cc arg  0x00000008 , 0x00000002 
+ 00020702  0x000050d0 storet  0x00000002 , 0x0000026f 
+ 00020703  0x000050d1 copy  0x00000002 , 0x0000003f 
+ 00020704  0x000050d2 branch  0x00005264 , 0x00000034 
+ 00020705  0x000050d3 call  0x000052c1 
+ 00020706  0x000050d4 fetch  0x00000002 , 0x0000026f 
+ 00020707  0x000050d5 istore  0x00000002 , 0x00000005 
+ 00020708  0x000050d6 force  0x00000001 , 0x0000003f 
+ 00020709  0x000050d7 istore  0x00000002 , 0x00000005 
+ 00020710  0x000050d8 rtn 
+ 00020711  0x000050db fetch  0x00000002 , 0x00000275 
+ 00020712  0x000050dc branch  0x00002a8c , 0x00000034 
+ 00020713  0x000050dd call  0x000052ce 
+ 00020714  0x000050de fetch  0x00000002 , 0x00000275 
+ 00020715  0x000050df istore  0x00000002 , 0x00000005 
+ 00020716  0x000050e0 fetch  0x00000002 , 0x00004248 
+ 00020717  0x000050e1 istore  0x00000002 , 0x00000005 
+ 00020718  0x000050e2 rtn 
+ 00020719  0x000050e4 fetch  0x00000002 , 0x00000266 
+ 00020720  0x000050e5 branch  0x00004dfc , 0x00000034 
+ 00020721  0x000050e6 bpatchx  0x0000001b , 0x00004023 
+ 00020722  0x000050e7 fetch  0x00000001 , 0x00000268 
+ 00020723  0x000050e8 beq  0x00000001 , 0x000050f9 
+ 00020724  0x000050e9 beq  0x00000050 , 0x00004de8 
+ 00020725  0x000050ea beq  0x00000051 , 0x00004df5 
+ 00020726  0x000050eb beq  0x00000052 , 0x00004df3 
+ 00020727  0x000050ec beq  0x00000053 , 0x00004df3 
+ 00020728  0x000050ed branch  0x00004dfc 
+ 00020729  0x000050f0 bpatchx  0x0000001c , 0x00004023 
+ 00020730  0x000050f1 call  0x000052b8 
+ 00020731  0x000050f2 force  0x00000000 , 0x00000012 
+ 00020732  0x000050f3 call  0x000052c3 
+ 00020733  0x000050f4 copy  0x0000003f , 0x00000005 
+ 00020734  0x000050f5 fetch  0x00000002 , 0x00000266 
+ 00020735  0x000050f6 copy  0x0000003f , 0x00000013 
+ 00020736  0x000050f7 fetch  0x00000002 , 0x00000264 
+ 00020737  0x000050f8 iforce  0x00000006 
+ 00020738  0x000050fa call  0x00005108 
+ 00020739  0x000050fb increase  0xfffffffc , 0x00000013 
+ 00020740  0x000050fc nbranch  0x00005102 , 0x00000005 
+ 00020741  0x000050fd copy  0x00000012 , 0x00000002 
+ 00020742  0x000050fe call  0x000050de 
+ 00020743  0x000050ff branch  0x00004dfc 
+ 00020744  0x00005102 ifetch  0x00000001 , 0x00000006 
+ 00020745  0x00005103 beq  0x00000002 , 0x00005113 
+ 00020746  0x00005104 beq  0x00000001 , 0x00005116 
+ 00020747  0x00005105 beq  0x00000003 , 0x00005120 
+ 00020748  0x00005106 beq  0x00000005 , 0x0000515c 
+ 00020749  0x00005107 beq  0x00000004 , 0x0000518e 
+ 00020750  0x00005108 beq  0x00000007 , 0x00005213 
+ 00020751  0x00005109 beq  0x00000006 , 0x000051e1 
+ 00020752  0x0000510a beq  0x00000008 , 0x00005050 
+ 00020753  0x0000510b beq  0x0000000a , 0x00004e3a 
+ 00020754  0x0000510c branch  0x0000522e 
+ 00020755  0x0000510f call  0x00007ea8 
+ 00020756  0x00005111 call  0x00007ead 
+ 00020757  0x00005112 branch  0x00004e51 
+ 00020758  0x00005114 ifetch  0x00000001 , 0x00000006 
+ 00020759  0x00005115 copy  0x0000003f , 0x00000007 
+ 00020760  0x00005116 ifetch  0x00000002 , 0x00000006 
+ 00020761  0x00005117 copy  0x0000003f , 0x00000011 
+ 00020762  0x00005118 copy  0x00000013 , 0x0000003f 
+ 00020763  0x00005119 isub  0x00000011 , 0x00000013 
+ 00020764  0x0000511b ifetch  0x00000001 , 0x00000006 
+ 00020765  0x0000511c increase  0xffffffff , 0x00000011 
+ 00020766  0x0000511d nbranch  0x0000511c , 0x00000005 
+ 00020767  0x0000511e rtn 
+ 00020768  0x00005120 ifetch  0x00000001 , 0x00000006 
+ 00020769  0x00005121 copy  0x0000003f , 0x00000007 
+ 00020770  0x00005122 ifetch  0x00000002 , 0x00000006 
+ 00020771  0x00005123 copy  0x0000003f , 0x00000011 
+ 00020772  0x00005124 ifetch  0x00000002 , 0x00000006 
+ 00020773  0x00005125 copy  0x0000003f , 0x0000000b 
+ 00020774  0x00005126 ifetch  0x00000002 , 0x00000006 
+ 00020775  0x00005127 copy  0x0000003f , 0x00000002 
+ 00020776  0x00005128 ifetch  0x00000002 , 0x00000006 
+ 00020777  0x00005129 sub  0x0000003f , 0x00000000 , 0x0000003e 
+ 00020778  0x0000512a branch  0x00005132 , 0x00000005 
+ 00020779  0x0000512b beq  0x00000002 , 0x0000512e 
+ 00020780  0x0000512c beq  0x00000004 , 0x0000512e 
+ 00020781  0x0000512d branch  0x00005130 
+ 00020782  0x0000512f jam  0x00000016 , 0x00000a99 
+ 00020783  0x00005130 call  0x00007d86 
+ 00020784  0x00005132 ifetch  0x00000002 , 0x00000006 
+ 00020785  0x00005133 branch  0x00005159 
+ 00020786  0x00005135 call  0x00007ea8 
+ 00020787  0x00005139 bpatchx  0x0000001d , 0x00004023 
+ 00020788  0x0000513a setarg  0x00000050 
+ 00020789  0x0000513b isub  0x00000002 , 0x0000003e 
+ 00020790  0x0000513c branch  0x00005141 , 0x00000005 
+ 00020791  0x0000513d setarg  0x00000051 
+ 00020792  0x0000513e isub  0x00000002 , 0x0000003e 
+ 00020793  0x0000513f branch  0x00005147 , 0x00000005 
+ 00020794  0x00005140 setarg  0x00000053 
+ 00020795  0x00005141 isub  0x00000002 , 0x0000003e 
+ 00020796  0x00005142 branch  0x00005153 , 0x00000005 
+ 00020797  0x00005143 setarg  0x00000052 
+ 00020798  0x00005144 isub  0x00000002 , 0x0000003e 
+ 00020799  0x00005145 branch  0x0000514d , 0x00000005 
+ 00020800  0x00005146 branch  0x00005159 
+ 00020801  0x00005148 copy  0x0000000b , 0x0000003f 
+ 00020802  0x00005149 store  0x00000002 , 0x00004248 
+ 00020803  0x0000514a fetch  0x00000001 , 0x00004250 
+ 00020804  0x0000514b set1  0x00000001 
+ 00020805  0x0000514c store  0x00000001 , 0x00004250 
+ 00020806  0x0000514d branch  0x00005158 
+ 00020807  0x0000514f copy  0x0000000b , 0x0000003f 
+ 00020808  0x00005150 store  0x00000002 , 0x0000424a 
+ 00020809  0x00005151 fetch  0x00000001 , 0x00004251 
+ 00020810  0x00005152 set1  0x00000001 
+ 00020811  0x00005153 store  0x00000001 , 0x00004251 
+ 00020812  0x00005154 branch  0x00005158 
+ 00020813  0x00005156 copy  0x0000000b , 0x0000003f 
+ 00020814  0x00005157 store  0x00000002 , 0x0000424c 
+ 00020815  0x00005158 fetch  0x00000001 , 0x00004252 
+ 00020816  0x00005159 set1  0x00000001 
+ 00020817  0x0000515a store  0x00000001 , 0x00004252 
+ 00020818  0x0000515b branch  0x00005158 
+ 00020819  0x0000515d copy  0x0000000b , 0x0000003f 
+ 00020820  0x0000515e store  0x00000002 , 0x0000424e 
+ 00020821  0x0000515f fetch  0x00000001 , 0x00004253 
+ 00020822  0x00005160 set1  0x00000001 
+ 00020823  0x00005161 store  0x00000001 , 0x00004253 
+ 00020824  0x00005165 call  0x00007ead 
+ 00020825  0x00005167 copy  0x00000013 , 0x0000003f 
+ 00020826  0x00005168 isub  0x00000011 , 0x00000013 
+ 00020827  0x00005169 rtn 
+ 00020828  0x0000516c ifetch  0x00000001 , 0x00000006 
+ 00020829  0x0000516d copy  0x0000003f , 0x00000007 
+ 00020830  0x0000516e ifetch  0x00000002 , 0x00000006 
+ 00020831  0x0000516f copy  0x0000003f , 0x00000011 
+ 00020832  0x00005170 copy  0x00000013 , 0x0000003f 
+ 00020833  0x00005171 isub  0x00000011 , 0x00000013 
+ 00020834  0x00005172 ifetch  0x00000002 , 0x00000006 
+ 00020835  0x00005173 copy  0x0000003f , 0x0000000b 
+ 00020836  0x00005174 ifetch  0x00000002 , 0x00000006 
+ 00020837  0x00005175 ifetch  0x00000002 , 0x00000006 
+ 00020838  0x00005176 nbranch  0x00005188 , 0x00000034 
+ 00020839  0x00005177 call  0x00007ea8 
+ 00020840  0x0000517b copy  0x0000000b , 0x00000002 
+ 00020841  0x0000517c bpatchx  0x0000001e , 0x00004023 
+ 00020842  0x0000517d setarg  0x00000050 
+ 00020843  0x0000517e isub  0x00000002 , 0x0000003e 
+ 00020844  0x0000517f branch  0x00005176 , 0x00000005 
+ 00020845  0x00005180 setarg  0x00000051 
+ 00020846  0x00005181 isub  0x00000002 , 0x0000003e 
+ 00020847  0x00005182 branch  0x0000517a , 0x00000005 
+ 00020848  0x00005183 setarg  0x00000052 
+ 00020849  0x00005184 isub  0x00000002 , 0x0000003e 
+ 00020850  0x00005185 branch  0x0000517e , 0x00000005 
+ 00020851  0x00005186 setarg  0x00000053 
+ 00020852  0x00005187 isub  0x00000002 , 0x0000003e 
+ 00020853  0x00005188 branch  0x00005182 , 0x00000005 
+ 00020854  0x0000518a fetch  0x00000001 , 0x00004250 
+ 00020855  0x0000518b set1  0x00000005 
+ 00020856  0x0000518c store  0x00000001 , 0x00004250 
+ 00020857  0x0000518d rtn 
+ 00020858  0x0000518f fetch  0x00000001 , 0x00004251 
+ 00020859  0x00005190 set1  0x00000005 
+ 00020860  0x00005191 store  0x00000001 , 0x00004251 
+ 00020861  0x00005192 rtn 
+ 00020862  0x00005194 fetch  0x00000001 , 0x00004252 
+ 00020863  0x00005195 set1  0x00000005 
+ 00020864  0x00005196 store  0x00000001 , 0x00004252 
+ 00020865  0x00005197 rtn 
+ 00020866  0x00005199 fetch  0x00000001 , 0x00004253 
+ 00020867  0x0000519a set1  0x00000005 
+ 00020868  0x0000519b store  0x00000001 , 0x00004253 
+ 00020869  0x0000519c jam  0x00000006 , 0x00000a99 
+ 00020870  0x0000519d branch  0x00007d86 
+ 00020871  0x000051a1 call  0x00007ead 
+ 00020872  0x000051a3 increase  0xfffffffa , 0x00000011 
+ 00020873  0x000051a5 branch  0x0000518d , 0x00000005 
+ 00020874  0x000051a6 increase  0x00000001 , 0x00000006 
+ 00020875  0x000051a7 increase  0xffffffff , 0x00000011 
+ 00020876  0x000051a8 branch  0x00005189 
+ 00020877  0x000051aa rtn 
+ 00020878  0x000051ac ifetch  0x00000001 , 0x00000006 
+ 00020879  0x000051ad copy  0x0000003f , 0x00000007 
+ 00020880  0x000051ae ifetch  0x00000002 , 0x00000006 
+ 00020881  0x000051af copy  0x0000003f , 0x00000011 
+ 00020882  0x000051b0 copy  0x00000013 , 0x0000003f 
+ 00020883  0x000051b1 isub  0x00000011 , 0x00000013 
+ 00020884  0x000051b2 ifetch  0x00000002 , 0x00000006 
+ 00020885  0x000051b3 increase  0x00000002 , 0x00000006 
+ 00020886  0x000051b4 copy  0x0000003f , 0x00000002 
+ 00020887  0x000051b5 setarg  0x00000005 
+ 00020888  0x000051b6 istore  0x00000001 , 0x00000005 
+ 00020889  0x000051b7 copy  0x00000007 , 0x0000003f 
+ 00020890  0x000051b8 istore  0x00000001 , 0x00000005 
+ 00020891  0x000051b9 increase  0x00000002 , 0x00000011 
+ 00020892  0x000051ba copy  0x00000011 , 0x0000003f 
+ 00020893  0x000051bb istore  0x00000002 , 0x00000005 
+ 00020894  0x000051bc call  0x00007ea8 
+ 00020895  0x000051bd bpatchx  0x0000001f , 0x00004023 
+ 00020896  0x000051be setarg  0x00000050 
+ 00020897  0x000051bf isub  0x00000002 , 0x0000003e 
+ 00020898  0x000051c0 branch  0x000051ad , 0x00000005 
+ 00020899  0x000051c1 setarg  0x00000051 
+ 00020900  0x000051c2 isub  0x00000002 , 0x0000003e 
+ 00020901  0x000051c3 branch  0x000051be , 0x00000005 
+ 00020902  0x000051c4 setarg  0x00000052 
+ 00020903  0x000051c5 isub  0x00000002 , 0x0000003e 
+ 00020904  0x000051c6 branch  0x000051c4 , 0x00000005 
+ 00020905  0x000051c7 setarg  0x00000053 
+ 00020906  0x000051c8 isub  0x00000002 , 0x0000003e 
+ 00020907  0x000051c9 branch  0x000051ca , 0x00000005 
+ 00020908  0x000051ca branch  0x000051cf 
+ 00020909  0x000051cc fetch  0x00000001 , 0x00004250 
+ 00020910  0x000051cd set1  0x00000004 , 0x0000003f 
+ 00020911  0x000051ce set1  0x00000003 , 0x0000003f 
+ 00020912  0x000051cf store  0x00000001 , 0x00004250 
+ 00020913  0x000051d0 bbit1  0x00000002 , 0x000051bb 
+ 00020914  0x000051d1 fetcht  0x00000001 , 0x0000027f 
+ 00020915  0x000051d2 set1  0x00000006 , 0x00000002 
+ 00020916  0x000051d3 storet  0x00000001 , 0x0000027f 
+ 00020917  0x000051d4 copy  0x00000007 , 0x0000003f 
+ 00020918  0x000051d5 increase  0x00000001 , 0x0000003f 
+ 00020919  0x000051d6 store  0x00000001 , 0x00000281 
+ 00020920  0x000051d7 fetch  0x00000001 , 0x00004250 
+ 00020921  0x000051d8 set1  0x00000002 , 0x0000003f 
+ 00020922  0x000051d9 store  0x00000001 , 0x00004250 
+ 00020923  0x000051db fetch  0x00000002 , 0x00004248 
+ 00020924  0x000051dc store  0x00000002 , 0x00000282 
+ 00020925  0x000051dd branch  0x000051cf 
+ 00020926  0x000051df fetch  0x00000001 , 0x00004251 
+ 00020927  0x000051e0 set1  0x00000004 , 0x0000003f 
+ 00020928  0x000051e1 set1  0x00000003 , 0x0000003f 
+ 00020929  0x000051e2 store  0x00000001 , 0x00004251 
+ 00020930  0x000051e3 fetch  0x00000002 , 0x0000424a 
+ 00020931  0x000051e4 branch  0x000051cf 
+ 00020932  0x000051e6 fetch  0x00000001 , 0x00004252 
+ 00020933  0x000051e7 set1  0x00000004 , 0x0000003f 
+ 00020934  0x000051e8 set1  0x00000003 , 0x0000003f 
+ 00020935  0x000051e9 store  0x00000001 , 0x00004252 
+ 00020936  0x000051ea fetch  0x00000002 , 0x0000424c 
+ 00020937  0x000051eb branch  0x000051cf 
+ 00020938  0x000051ed fetch  0x00000001 , 0x00004253 
+ 00020939  0x000051ee set1  0x00000004 , 0x0000003f 
+ 00020940  0x000051ef set1  0x00000003 , 0x0000003f 
+ 00020941  0x000051f0 store  0x00000001 , 0x00004253 
+ 00020942  0x000051f1 fetch  0x00000002 , 0x0000424e 
+ 00020943  0x000051f5 copy  0x0000003f , 0x0000000b 
+ 00020944  0x000051f6 call  0x00007ead 
+ 00020945  0x000051f8 copy  0x0000000b , 0x0000003f 
+ 00020946  0x000051fa istore  0x00000002 , 0x00000005 
+ 00020947  0x000051fb force  0x00000000 , 0x0000003f 
+ 00020948  0x000051fc istore  0x00000002 , 0x00000005 
+ 00020949  0x000051fd force  0x00000000 , 0x0000003f 
+ 00020950  0x000051fe istore  0x00000002 , 0x00000005 
+ 00020951  0x000051ff force  0x0000000a , 0x0000003f 
+ 00020952  0x00005200 iadd  0x00000012 , 0x00000012 
+ 00020953  0x00005201 increase  0xfffffffa , 0x00000011 
+ 00020954  0x00005203 branch  0x000051e0 , 0x00000005 
+ 00020955  0x00005204 ifetch  0x00000001 , 0x00000006 
+ 00020956  0x00005205 istore  0x00000001 , 0x00000005 
+ 00020957  0x00005206 increase  0x00000001 , 0x00000012 
+ 00020958  0x00005207 increase  0xffffffff , 0x00000011 
+ 00020959  0x00005208 branch  0x000051da 
+ 00020960  0x0000520a rtn 
+ 00020961  0x0000520c ifetch  0x00000001 , 0x00000006 
+ 00020962  0x0000520d copy  0x0000003f , 0x00000007 
+ 00020963  0x0000520e ifetch  0x00000002 , 0x00000006 
+ 00020964  0x0000520f copy  0x0000003f , 0x00000011 
+ 00020965  0x00005210 copy  0x00000013 , 0x0000003f 
+ 00020966  0x00005211 isub  0x00000011 , 0x00000013 
+ 00020967  0x00005213 ifetch  0x00000002 , 0x00000006 
+ 00020968  0x00005214 copy  0x0000003f , 0x00000011 
+ 00020969  0x00005215 ifetch  0x00000002 , 0x00000006 
+ 00020970  0x00005216 copy  0x0000003f , 0x0000000b 
+ 00020971  0x00005217 call  0x00007ea8 
+ 00020972  0x00005218 bpatchx  0x00000020 , 0x00004024 
+ 00020973  0x00005219 setarg  0x00000050 
+ 00020974  0x0000521a copy  0x00000011 , 0x00000002 
+ 00020975  0x0000521b isub  0x00000002 , 0x0000003e 
+ 00020976  0x0000521c branch  0x000051fa , 0x00000005 
+ 00020977  0x0000521d setarg  0x00000052 
+ 00020978  0x0000521e copy  0x00000011 , 0x00000002 
+ 00020979  0x0000521f isub  0x00000002 , 0x0000003e 
+ 00020980  0x00005220 branch  0x000051ff , 0x00000005 
+ 00020981  0x00005221 setarg  0x00000053 
+ 00020982  0x00005222 copy  0x00000011 , 0x00000002 
+ 00020983  0x00005223 isub  0x00000002 , 0x0000003e 
+ 00020984  0x00005224 branch  0x00005201 , 0x00000005 
+ 00020985  0x00005225 branch  0x00005203 
+ 00020986  0x00005227 setarg  0x00000000 
+ 00020987  0x00005228 store  0x00000002 , 0x00000275 
+ 00020988  0x00005229 store  0x00000002 , 0x00004248 
+ 00020989  0x0000522a store  0x00000001 , 0x00004250 
+ 00020990  0x0000522b branch  0x00005205 
+ 00020991  0x0000522d call  0x00005079 
+ 00020992  0x0000522e branch  0x00005205 
+ 00020993  0x00005230 call  0x0000507f 
+ 00020994  0x00005236 branch  0x00005205 
+ 00020995  0x00005238 setarg  0x00000000 
+ 00020996  0x00005239 store  0x00000002 , 0x0000027b 
+ 00020997  0x0000523b call  0x00007ead 
+ 00020998  0x0000523c setarg  0x00000007 
+ 00020999  0x0000523d istore  0x00000001 , 0x00000005 
+ 00021000  0x0000523e copy  0x00000007 , 0x0000003f 
+ 00021001  0x0000523f istore  0x00000001 , 0x00000005 
+ 00021002  0x00005240 setarg  0x00000004 
+ 00021003  0x00005241 istore  0x00000002 , 0x00000005 
+ 00021004  0x00005242 copy  0x00000011 , 0x0000003f 
+ 00021005  0x00005243 istore  0x00000002 , 0x00000005 
+ 00021006  0x00005244 copy  0x0000000b , 0x0000003f 
+ 00021007  0x00005245 istore  0x00000002 , 0x00000005 
+ 00021008  0x00005246 force  0x00000008 , 0x0000003f 
+ 00021009  0x00005247 iadd  0x00000012 , 0x00000012 
+ 00021010  0x00005248 rtn 
+ 00021011  0x0000524b ifetch  0x00000001 , 0x00000006 
+ 00021012  0x0000524c copy  0x0000003f , 0x00000007 
+ 00021013  0x0000524d ifetch  0x00000002 , 0x00000006 
+ 00021014  0x0000524e copy  0x0000003f , 0x00000011 
+ 00021015  0x0000524f ifetch  0x00000002 , 0x00000006 
+ 00021016  0x00005250 copy  0x0000003f , 0x0000000b 
+ 00021017  0x00005251 ifetch  0x00000002 , 0x00000006 
+ 00021018  0x00005252 copy  0x0000003f , 0x00000002 
+ 00021019  0x00005253 call  0x00007ea8 
+ 00021020  0x00005254 bpatchx  0x00000021 , 0x00004024 
+ 00021021  0x00005255 fetch  0x00000001 , 0x00004255 
+ 00021022  0x00005256 icompare  0x000000ff , 0x00000007 
+ 00021023  0x00005257 nbranch  0x0000522a , 0x00000001 
+ 00021024  0x00005258 setarg  0x00000050 
+ 00021025  0x00005259 isub  0x00000002 , 0x0000003e 
+ 00021026  0x0000525a branch  0x00005227 , 0x00000005 
+ 00021027  0x0000525b setarg  0x00000051 
+ 00021028  0x0000525c isub  0x00000002 , 0x0000003e 
+ 00021029  0x0000525d branch  0x0000522a , 0x00000005 
+ 00021030  0x0000525e branch  0x0000522a 
+ 00021031  0x00005260 jam  0x00000000 , 0x00004248 
+ 00021032  0x00005261 jam  0x00000000 , 0x00004250 
+ 00021033  0x00005262 branch  0x0000522a 
+ 00021034  0x00005267 call  0x00007ead 
+ 00021035  0x00005268 copy  0x00000013 , 0x0000003f 
+ 00021036  0x00005269 isub  0x00000011 , 0x00000013 
+ 00021037  0x0000526a rtn 
+ 00021038  0x0000526d setarg  0x00000001 
+ 00021039  0x0000526e istore  0x00000001 , 0x00000005 
+ 00021040  0x0000526f ifetch  0x00000001 , 0x00000006 
+ 00021041  0x00005270 istore  0x00000001 , 0x00000005 
+ 00021042  0x00005271 setarg  0x00000002 
+ 00021043  0x00005272 istore  0x00000002 , 0x00000005 
+ 00021044  0x00005273 setarg  0x00000000 
+ 00021045  0x00005274 istore  0x00000002 , 0x00000005 
+ 00021046  0x00005275 setarg  0x00000006 
+ 00021047  0x00005276 iadd  0x00000012 , 0x00000012 
+ 00021048  0x00005277 force  0x00000004 , 0x00000013 
+ 00021049  0x00005278 rtn 
+ 00021050  0x0000527c fetch  0x00000001 , 0x00004255 
+ 00021051  0x0000527d increase  0x00000001 , 0x0000003f 
+ 00021052  0x0000527e bne  0x00000000 , 0x0000523e 
+ 00021053  0x0000527f increase  0x00000001 , 0x0000003f 
+ 00021054  0x00005281 store  0x00000001 , 0x00004255 
+ 00021055  0x00005282 rtn 
+ 00021056  0x0000528d bpatchx  0x00000022 , 0x00004024 
+ 00021057  0x0000528e arg  0x00000000 , 0x00000012 
+ 00021058  0x0000528f call  0x0000526e 
+ 00021059  0x00005290 nbranch  0x00002a8c , 0x00000034 
+ 00021060  0x00005291 call  0x0000527e 
+ 00021061  0x00005292 arg  0x00001800 , 0x00000012 
+ 00021062  0x00005293 arg  0x00000000 , 0x00000007 
+ 00021063  0x00005295 fetcht  0x00000001 , 0x00004256 
+ 00021064  0x00005296 qisolate1  0x00000002 
+ 00021065  0x00005297 branch  0x0000524f , 0x00000001 
+ 00021066  0x00005298 call  0x000052a0 
+ 00021067  0x00005299 sub  0x0000000b , 0x00000000 , 0x0000003e 
+ 00021068  0x0000529a branch  0x0000524f , 0x00000002 
+ 00021069  0x0000529b call  0x00005288 
+ 00021070  0x0000529c branch  0x00005255 
+ 00021071  0x0000529e increase  0x00000080 , 0x00000012 
+ 00021072  0x0000529f increase  0x00000001 , 0x00000007 
+ 00021073  0x000052a0 setarg  0x00000008 
+ 00021074  0x000052a1 isub  0x00000007 , 0x0000003e 
+ 00021075  0x000052a2 branch  0x00005247 , 0x00000002 
+ 00021076  0x000052a3 arg  0x00000000 , 0x00000012 
+ 00021077  0x000052a5 copy  0x00000012 , 0x0000003f 
+ 00021078  0x000052a6 branch  0x00002a8c , 0x00000034 
+ 00021079  0x000052a7 rtn 
+ 00021080  0x000052b0 bpatchx  0x00000023 , 0x00004024 
+ 00021081  0x000052b1 call  0x00005277 
+ 00021082  0x000052b2 increase  0x00000001 , 0x00000006 
+ 00021083  0x000052b3 ifetch  0x00000002 , 0x00000006 
+ 00021084  0x000052b4 rtn 
+ 00021085  0x000052bb bpatchx  0x00000024 , 0x00004024 
+ 00021086  0x000052bc call  0x00005277 
+ 00021087  0x000052bd copy  0x00000006 , 0x00000005 
+ 00021088  0x000052be copy  0x00000006 , 0x00000002 
+ 00021089  0x000052bf setarg  0x00000000 
+ 00021090  0x000052c0 istore  0x00000003 , 0x00000005 
+ 00021091  0x000052c1 rtn 
+ 00021092  0x000052c7 bpatchx  0x00000025 , 0x00004024 
+ 00021093  0x000052c8 call  0x00005274 
+ 00021094  0x000052c9 branch  0x00002a8c , 0x00000034 
+ 00021095  0x000052ca fetch  0x00000003 , 0x0000425d 
+ 00021096  0x000052cb store  0x00000003 , 0x00004260 
+ 00021097  0x000052cc fetch  0x00000003 , 0x0000425a 
+ 00021098  0x000052cd store  0x00000003 , 0x0000425d 
+ 00021099  0x000052ce fetch  0x00000003 , 0x00004257 
+ 00021100  0x000052cf store  0x00000003 , 0x0000425a 
+ 00021101  0x000052d0 rtn 
+ 00021102  0x000052d7 bpatchx  0x00000026 , 0x00004024 
+ 00021103  0x000052d8 fetch  0x00000003 , 0x00004257 
+ 00021104  0x000052d9 rtn 
+ 00021105  0x000052e0 bpatchx  0x00000027 , 0x00004024 
+ 00021106  0x000052e1 fetch  0x00000003 , 0x0000425a 
+ 00021107  0x000052e2 rtn 
+ 00021108  0x000052e9 bpatchx  0x00000028 , 0x00004025 
+ 00021109  0x000052ea fetch  0x00000003 , 0x00004260 
+ 00021110  0x000052eb rtn 
+ 00021111  0x000052f1 call  0x00005274 
+ 00021112  0x000052f2 branch  0x00002a8c , 0x00000034 
+ 00021113  0x000052f3 arg  0x00004257 , 0x00000006 
+ 00021114  0x000052f5 ifetch  0x00000003 , 0x00000006 
+ 00021115  0x000052f6 branch  0x0000527a , 0x00000034 
+ 00021116  0x000052f7 increase  0xfffffffd , 0x00000006 
+ 00021117  0x000052f8 rtn 
+ 00021118  0x00005300 bpatchx  0x00000029 , 0x00004025 
+ 00021119  0x00005301 arg  0x00000004 , 0x00000039 
+ 00021120  0x00005302 arg  0x00004257 , 0x00000006 
+ 00021121  0x00005303 arg  0x00000000 , 0x00000002 
+ 00021122  0x00005305 ifetch  0x00000003 , 0x00000006 
+ 00021123  0x00005306 and  0x0000003f , 0x000000ff , 0x0000003f 
+ 00021124  0x00005307 ior  0x00000002 , 0x00000002 
+ 00021125  0x00005308 loop  0x00005282 
+ 00021126  0x00005309 storet  0x00000001 , 0x00004256 
+ 00021127  0x0000530a rtn 
+ 00021128  0x00005313 bpatchx  0x0000002a , 0x00004025 
+ 00021129  0x00005314 call  0x0000526e 
+ 00021130  0x00005315 nbranch  0x00002a8c , 0x00000034 
+ 00021131  0x00005316 call  0x00005274 
+ 00021132  0x00005317 branch  0x00005295 , 0x00000034 
+ 00021133  0x00005318 fetch  0x00000003 , 0x0000425a 
+ 00021134  0x00005319 store  0x00000003 , 0x00004257 
+ 00021135  0x0000531a ifetch  0x00000003 , 0x00000006 
+ 00021136  0x0000531b istore  0x00000003 , 0x00000005 
+ 00021137  0x0000531c ifetch  0x00000003 , 0x00000006 
+ 00021138  0x0000531d istore  0x00000003 , 0x00000005 
+ 00021139  0x0000531e setarg  0x00000000 
+ 00021140  0x0000531f istore  0x00000003 , 0x00000005 
+ 00021141  0x00005321 arg  0x00000000 , 0x00000002 
+ 00021142  0x00005322 copy  0x0000000b , 0x0000003f 
+ 00021143  0x00005323 iadd  0x00000007 , 0x0000003f 
+ 00021144  0x00005325 qset1  0x00000002 
+ 00021145  0x00005326 increase  0x00000001 , 0x00000007 
+ 00021146  0x00005327 isub  0x00000007 , 0x0000003e 
+ 00021147  0x00005328 nbranch  0x00005298 , 0x00000005 
+ 00021148  0x0000532a lshift8  0x00000012 , 0x0000003f 
+ 00021149  0x0000532b ior  0x00000002 , 0x0000003f 
+ 00021150  0x0000532c store  0x00000003 , 0x00004260 
+ 00021151  0x0000532d rtn 
+ 00021152  0x00005338 bpatchx  0x0000002b , 0x00004025 
+ 00021153  0x00005339 call  0x0000527e 
+ 00021154  0x0000533a copy  0x00000007 , 0x00000013 
+ 00021155  0x0000533b arg  0x00000000 , 0x00000002 
+ 00021156  0x0000533c arg  0x00000000 , 0x0000000b 
+ 00021157  0x0000533f copy  0x00000007 , 0x0000003f 
+ 00021158  0x00005340 beq  0x00000008 , 0x000052b0 
+ 00021159  0x00005341 fetch  0x00000001 , 0x00004256 
+ 00021160  0x00005342 qisolate1  0x0000003f 
+ 00021161  0x00005343 branch  0x000052b0 , 0x00000001 
+ 00021162  0x00005344 increase  0x00000080 , 0x00000002 
+ 00021163  0x00005345 increase  0x00000001 , 0x00000007 
+ 00021164  0x00005346 copy  0x00000011 , 0x0000003f 
+ 00021165  0x00005347 isub  0x00000002 , 0x0000003e 
+ 00021166  0x00005348 branch  0x000052b0 , 0x00000005 
+ 00021167  0x00005349 branch  0x000052a5 , 0x00000002 
+ 00021168  0x0000534b copy  0x00000002 , 0x0000003f 
+ 00021169  0x0000534c isub  0x00000011 , 0x0000003e 
+ 00021170  0x0000534d nbranch  0x000052b6 , 0x00000002 
+ 00021171  0x0000534e copy  0x00000007 , 0x0000003f 
+ 00021172  0x0000534f copy  0x00000013 , 0x00000002 
+ 00021173  0x00005350 isub  0x00000002 , 0x0000000b 
+ 00021174  0x00005352 copy  0x00000013 , 0x00000007 
+ 00021175  0x00005353 rtn 
+ 00021176  0x00005357 bpatchx  0x0000002c , 0x00004025 
+ 00021177  0x00005358 arg  0x0000007f , 0x00000011 
+ 00021178  0x00005359 call  0x00005240 
+ 00021179  0x0000535a store  0x00000002 , 0x0000026b 
+ 00021180  0x0000535b increase  0x00000004 , 0x0000003f 
+ 00021181  0x0000535c store  0x00000002 , 0x0000026d 
+ 00021182  0x0000535d setarg  0x00000000 
+ 00021183  0x0000535e store  0x00000002 , 0x0000026f 
+ 00021184  0x0000535f rtn 
+ 00021185  0x00005362 fetch  0x00000002 , 0x0000026b 
+ 00021186  0x00005363 branch  0x000052e2 
+ 00021187  0x00005366 fetch  0x00000002 , 0x0000026d 
+ 00021188  0x00005367 branch  0x000052e2 
+ 00021189  0x0000536b bpatchx  0x0000002d , 0x00004025 
+ 00021190  0x0000536c arg  0x000000fa , 0x00000011 
+ 00021191  0x0000536d call  0x00005240 
+ 00021192  0x0000536e store  0x00000002 , 0x00000271 
+ 00021193  0x0000536f increase  0x00000004 , 0x0000003f 
+ 00021194  0x00005370 store  0x00000002 , 0x00000273 
+ 00021195  0x00005371 setarg  0x00000000 
+ 00021196  0x00005372 store  0x00000002 , 0x00000275 
+ 00021197  0x00005373 rtn 
+ 00021198  0x00005376 fetch  0x00000002 , 0x00000271 
+ 00021199  0x00005377 branch  0x000052e2 
+ 00021200  0x0000537a fetch  0x00000002 , 0x00000273 
+ 00021201  0x0000537b branch  0x000052e2 
+ 00021202  0x0000537f bpatchx  0x0000002e , 0x00004025 
+ 00021203  0x00005380 call  0x00007e7c 
+ 00021204  0x00005381 jam  0x00000001 , 0x00000284 
+ 00021205  0x00005382 call  0x0000526e 
+ 00021206  0x00005383 nrtn  0x00000034 
+ 00021207  0x00005384 arg  0x0000007f , 0x00000011 
+ 00021208  0x00005385 call  0x00005240 
+ 00021209  0x00005386 store  0x00000002 , 0x00000277 
+ 00021210  0x00005387 increase  0x00000004 , 0x0000003f 
+ 00021211  0x00005388 store  0x00000002 , 0x00000279 
+ 00021212  0x00005389 setarg  0x00000000 
+ 00021213  0x0000538a store  0x00000002 , 0x0000027b 
+ 00021214  0x0000538b jam  0x00000000 , 0x00000284 
+ 00021215  0x0000538c branch  0x00007e8c 
+ 00021216  0x0000538f fetch  0x00000002 , 0x00000277 
+ 00021217  0x00005390 branch  0x000052e2 
+ 00021218  0x00005393 branch  0x00002a8c , 0x00000034 
+ 00021219  0x00005394 copy  0x0000003f , 0x00000005 
+ 00021220  0x00005395 rtn 
+ 00021221  0x00005399 bpatchx  0x0000002f , 0x00004025 
+ 00021222  0x0000539a arg  0x00000000 , 0x00000012 
+ 00021223  0x0000539b arg  0x00004257 , 0x00000011 
+ 00021224  0x0000539c increase  0xfffffffe , 0x00000011 
+ 00021225  0x0000539e increase  0x00000002 , 0x00000011 
+ 00021226  0x0000539f setarg  0x00004263 
+ 00021227  0x000053a0 isub  0x00000011 , 0x0000003e 
+ 00021228  0x000053a1 branch  0x000052f5 , 0x00000005 
+ 00021229  0x000053a2 ifetch  0x00000001 , 0x00000011 
+ 00021230  0x000053a3 increase  0x00000001 , 0x00000011 
+ 00021231  0x000053a4 branch  0x000052e9 , 0x00000034 
+ 00021232  0x000053a5 ifetcht  0x00000002 , 0x00000011 
+ 00021233  0x000053a6 ifetch  0x00000002 , 0x00000002 
+ 00021234  0x000053a7 iadd  0x00000012 , 0x00000012 
+ 00021235  0x000053a8 increase  0x00000004 , 0x00000012 
+ 00021236  0x000053a9 branch  0x000052e9 
+ 00021237  0x000053ab copy  0x00000012 , 0x0000003f 
+ 00021238  0x000053ac rtn 
+ 00021239  0x000053b0 arg  0x0000000c , 0x00000007 
+ 00021240  0x000053b1 branch  0x00002c32 
+ 00021241  0x000053b4 arg  0x0000000c , 0x00000007 
+ 00021242  0x000053b5 branch  0x00002c36 
+ 00021243  0x000053b8 bpatchx  0x00000030 , 0x00004026 
+ 00021244  0x000053b9 call  0x0000527e 
+ 00021245  0x000053ba fetch  0x00000001 , 0x00004256 
+ 00021246  0x000053bb rtn  0x00000034 
+ 00021247  0x000053bc call  0x000052e5 
+ 00021248  0x000053bd arg  0x00000100 , 0x00000002 
+ 00021249  0x000053be isub  0x00000002 , 0x0000003e 
+ 00021250  0x000053bf branch  0x000052f7 , 0x00000002 
+ 00021251  0x000053c0 call  0x000052f9 
+ 00021252  0x000053c1 arg  0x00004263 , 0x00000005 
+ 00021253  0x000053c2 arg  0x00004257 , 0x00000011 
+ 00021254  0x000053c4 setarg  0x00004263 
+ 00021255  0x000053c5 isub  0x00000011 , 0x0000003e 
+ 00021256  0x000053c6 rtn  0x00000005 
+ 00021257  0x000053c7 ifetch  0x00000001 , 0x00000011 
+ 00021258  0x000053c8 increase  0x00000001 , 0x00000011 
+ 00021259  0x000053c9 nbranch  0x0000530f , 0x00000034 
+ 00021260  0x000053ca istore  0x00000002 , 0x00000005 
+ 00021261  0x000053cb increase  0x00000002 , 0x00000011 
+ 00021262  0x000053cc branch  0x00005306 
+ 00021263  0x000053ce ifetch  0x00000002 , 0x00000011 
+ 00021264  0x000053cf increase  0x00000002 , 0x00000011 
+ 00021265  0x000053d0 copy  0x0000003f , 0x00000006 
+ 00021266  0x000053d1 ifetch  0x00000002 , 0x00000006 
+ 00021267  0x000053d2 istore  0x00000002 , 0x00000005 
+ 00021268  0x000053d3 copy  0x0000003f , 0x00000039 
+ 00021269  0x000053d4 increase  0x00000002 , 0x00000039 
+ 00021270  0x000053d5 call  0x00007f01 
+ 00021271  0x000053d6 branch  0x00005306 
+ 00021272  0x000053d9 bpatchx  0x00000031 , 0x00004026 
+ 00021273  0x000053da call  0x0000527e 
+ 00021274  0x000053db fetch  0x00000001 , 0x00004256 
+ 00021275  0x000053dc rtn  0x00000034 
+ 00021276  0x000053dd arg  0x00004258 , 0x00000011 
+ 00021277  0x000053de increase  0xfffffffd , 0x00000011 
+ 00021278  0x000053df arg  0x00004263 , 0x00000006 
+ 00021279  0x000053e1 increase  0x00000003 , 0x00000011 
+ 00021280  0x000053e2 setarg  0x00004264 
+ 00021281  0x000053e3 isub  0x00000011 , 0x0000003e 
+ 00021282  0x000053e4 rtn  0x00000005 
+ 00021283  0x000053e5 ifetch  0x00000002 , 0x00000006 
+ 00021284  0x000053e6 branch  0x0000531f , 0x00000034 
+ 00021285  0x000053e7 increase  0x00000004 , 0x0000003f 
+ 00021286  0x000053e8 copy  0x0000003f , 0x00000039 
+ 00021287  0x000053e9 copy  0x00000006 , 0x00000012 
+ 00021288  0x000053ea ifetch  0x00000002 , 0x00000011 
+ 00021289  0x000053eb copy  0x0000003f , 0x00000005 
+ 00021290  0x000053ec copy  0x00000012 , 0x00000006 
+ 00021291  0x000053ed increase  0xfffffffe , 0x00000006 
+ 00021292  0x000053ee call  0x00007f01 
+ 00021293  0x000053ef branch  0x0000531f 
+ 00021294  0x000053fa bpatchx  0x00000032 , 0x00004026 
+ 00021295  0x000053fb disable  0x0000002b 
+ 00021296  0x000053fc jam  0x00000001 , 0x00000455 
+ 00021297  0x000053fd jam  0x00000003 , 0x0000043f 
+ 00021298  0x000053fe jam  0x00000001 , 0x00000456 
+ 00021299  0x000053ff setarg  0xffffffff 
+ 00021300  0x00005400 store  0x00000002 , 0x00000459 
+ 00021301  0x00005401 force  0x00000000 , 0x0000003f 
+ 00021302  0x00005402 store  0x00000001 , 0x00000457 
+ 00021303  0x00005403 store  0x00000001 , 0x00000462 
+ 00021304  0x00005404 store  0x00000003 , 0x00004169 
+ 00021305  0x00005405 store  0x00000003 , 0x0000416c 
+ 00021306  0x00005406 store  0x00000005 , 0x00004403 
+ 00021307  0x00005407 set1  0x00000027 , 0x0000003f 
+ 00021308  0x00005408 store  0x00000005 , 0x00004408 
+ 00021309  0x00005409 jam  0x00000001 , 0x000043dc 
+ 00021310  0x0000540a jam  0x00000000 , 0x000043dd 
+ 00021311  0x0000540b branch  0x000056ed 
+ 00021312  0x0000540e bpatchx  0x00000033 , 0x00004026 
+ 00021313  0x0000540f enable  0x00000029 
+ 00021314  0x00005410 jam  0x00000003 , 0x00000440 
+ 00021315  0x00005411 jam  0x00000001 , 0x00000478 
+ 00021316  0x00005412 jam  0x00000001 , 0x0000445a 
+ 00021317  0x00005413 setarg  0x0000ffff 
+ 00021318  0x00005414 store  0x00000002 , 0x0000445c 
+ 00021319  0x00005415 force  0x00000000 , 0x0000003f 
+ 00021320  0x00005416 store  0x00000005 , 0x00004408 
+ 00021321  0x00005417 set1  0x00000027 , 0x0000003f 
+ 00021322  0x00005418 store  0x00000005 , 0x00004403 
+ 00021323  0x00005419 branch  0x0000532e 
+ 00021324  0x0000541d bpatchx  0x00000034 , 0x00004026 
+ 00021325  0x0000541e disable  0x00000029 
+ 00021326  0x0000541f setarg  0x00000017 
+ 00021327  0x00005420 store  0x00000002 , 0x000044a8 
+ 00021328  0x00005421 jam  0x00000001 , 0x00000440 
+ 00021329  0x00005422 jam  0x00000000 , 0x0000436e 
+ 00021330  0x00005423 jam  0x00000000 , 0x000000a0 
+ 00021331  0x00005424 jam  0x00000000 , 0x000044c4 
+ 00021332  0x00005425 jam  0x00000000 , 0x000044c5 
+ 00021333  0x00005426 fetch  0x00000002 , 0x0000046d 
+ 00021334  0x00005427 store  0x00000002 , 0x000044ba 
+ 00021335  0x00005428 fetch  0x00000002 , 0x00000441 
+ 00021336  0x00005429 mul32  0x0000003f , 0x00000005 , 0x0000003f 
+ 00021337  0x0000542a rshift4  0x0000003f , 0x0000003f 
+ 00021338  0x0000542b store  0x00000002 , 0x0000046d 
+ 00021339  0x0000542c branch  0x0000532e 
+ 00021340  0x00005433 call  0x000053c4 
+ 00021341  0x00005434 call  0x000055e8 
+ 00021342  0x00005435 call  0x000056f0 
+ 00021343  0x00005436 branch  0x000053ce 
+ 00021344  0x00005439 bpatchx  0x00000035 , 0x00004026 
+ 00021345  0x0000543a call  0x000053c4 
+ 00021346  0x0000543b call  0x000032f4 
+ 00021347  0x0000543c fetch  0x00000001 , 0x00000440 
+ 00021348  0x0000543d beq  0x00000003 , 0x00005366 
+ 00021349  0x0000543e branch  0x0000537a 
+ 00021350  0x00005445 bpatchx  0x00000036 , 0x00004026 
+ 00021351  0x00005446 enable  0x00000029 
+ 00021352  0x00005447 call  0x000056e4 
+ 00021353  0x00005448 branch  0x00005377 , 0x00000002 
+ 00021354  0x00005449 call  0x00002c6c 
+ 00021355  0x0000544a call  0x00005413 
+ 00021356  0x0000544b call  0x0000561e 
+ 00021357  0x0000544c disable  0x0000002d 
+ 00021358  0x0000544d call  0x000054bf 
+ 00021359  0x0000544e nrtn  0x0000002d 
+ 00021360  0x0000544f bpatchx  0x00000037 , 0x00004026 
+ 00021361  0x00005450 fetch  0x00000001 , 0x00000005 
+ 00021362  0x00005451 increase  0x00000001 , 0x0000003f 
+ 00021363  0x00005452 store  0x00000001 , 0x00000005 
+ 00021364  0x00005453 call  0x000055aa 
+ 00021365  0x00005454 disable  0x00000029 
+ 00021366  0x00005455 rtn 
+ 00021367  0x00005458 call  0x000053a9 
+ 00021368  0x00005459 disable  0x00000029 
+ 00021369  0x0000545a rtn 
+ 00021370  0x00005460 bpatchx  0x00000038 , 0x00004027 
+ 00021371  0x00005461 jam  0x00000000 , 0x0000450f 
+ 00021372  0x00005462 call  0x00007aaf 
+ 00021373  0x00005463 call  0x00005c18 
+ 00021374  0x00005464 disable  0x0000002e 
+ 00021375  0x00005465 call  0x000056e4 
+ 00021376  0x00005466 branch  0x000053a9 , 0x00000002 
+ 00021377  0x00005467 call  0x00002c6c 
+ 00021378  0x00005468 call  0x00005413 
+ 00021379  0x00005469 call  0x00005489 
+ 00021380  0x0000546a nbranch  0x0000539b , 0x00000018 
+ 00021381  0x0000546b call  0x000053b7 
+ 00021382  0x0000546c branch  0x00005388 , 0x0000002d 
+ 00021383  0x0000546d branch  0x00005395 
+ 00021384  0x00005471 bpatchx  0x00000039 , 0x00004027 
+ 00021385  0x00005472 fetch  0x00000001 , 0x0000450f 
+ 00021386  0x00005473 pincrease  0x00000001 
+ 00021387  0x00005474 store  0x00000001 , 0x0000450f 
+ 00021388  0x00005475 beq  0x0000000c , 0x00005395 
+ 00021389  0x00005476 call  0x000055aa 
+ 00021390  0x00005477 call  0x0000561e 
+ 00021391  0x00005478 call  0x000054c7 
+ 00021392  0x00005479 call  0x0000567e 
+ 00021393  0x0000547a fetch  0x00000002 , 0x000041fb 
+ 00021394  0x0000547b call  0x00007f9c 
+ 00021395  0x0000547c call  0x000053a0 
+ 00021396  0x0000547d branch  0x000053a4 , 0x00000028 
+ 00021397  0x0000547f bpatchx  0x0000003a , 0x00004027 
+ 00021398  0x00005480 call  0x00005be4 
+ 00021399  0x00005481 call  0x00005bdb 
+ 00021400  0x00005482 call  0x00007d9c 
+ 00021401  0x00005483 fetch  0x00000001 , 0x00000462 
+ 00021402  0x00005484 bbit1  0x00000003 , 0x000053a9 
+ 00021403  0x00005486 bpatchx  0x0000003b , 0x00004027 
+ 00021404  0x00005487 call  0x000057f4 
+ 00021405  0x00005488 call  0x0000559d 
+ 00021406  0x00005489 call  0x00005575 
+ 00021407  0x0000548a branch  0x00002841 
+ 00021408  0x0000548e disable  0x00000028 
+ 00021409  0x0000548f bmark1  0x0000002a , 0x00007fe7 
+ 00021410  0x00005490 bmark1  0x00000029 , 0x00007fe7 
+ 00021411  0x00005491 rtn 
+ 00021412  0x00005495 bpatchx  0x0000003c , 0x00004027 
+ 00021413  0x00005496 enable  0x0000002e 
+ 00021414  0x00005497 call  0x000054c1 
+ 00021415  0x00005498 branch  0x00005388 , 0x0000002d 
+ 00021416  0x00005499 branch  0x00005395 
+ 00021417  0x0000549f bpatchx  0x0000003d , 0x00004027 
+ 00021418  0x000054a0 call  0x000053af 
+ 00021419  0x000054a1 call  0x000033b4 
+ 00021420  0x000054a2 call  0x00007a77 
+ 00021421  0x000054a3 jam  0x00000015 , 0x00000a99 
+ 00021422  0x000054a4 branch  0x00007d86 
+ 00021423  0x000054a7 setarg  0x00000000 
+ 00021424  0x000054a8 store  0x00000009 , 0x000044ff 
+ 00021425  0x000054a9 jam  0x00000000 , 0x00000455 
+ 00021426  0x000054aa jam  0x00000000 , 0x00000440 
+ 00021427  0x000054ab jam  0x00000000 , 0x0000043f 
+ 00021428  0x000054ac jam  0x00000000 , 0x000044c5 
+ 00021429  0x000054ad jam  0x00000000 , 0x000044c4 
+ 00021430  0x000054ae rtn 
+ 00021431  0x000054b1 bpatchx  0x0000003e , 0x00004027 
+ 00021432  0x000054b2 fetch  0x00000001 , 0x00000005 
+ 00021433  0x000054b3 increase  0x00000001 , 0x0000003f 
+ 00021434  0x000054b4 store  0x00000001 , 0x00000005 
+ 00021435  0x000054b5 fetch  0x00000001 , 0x0000043f 
+ 00021436  0x000054b6 rtnbit1  0x00000003 
+ 00021437  0x000054b7 set1  0x00000003 
+ 00021438  0x000054b8 store  0x00000001 , 0x0000043f 
+ 00021439  0x000054b9 fetch  0x00000002 , 0x000044ba 
+ 00021440  0x000054ba store  0x00000002 , 0x0000046d 
+ 00021441  0x000054bb setarg  0x00000000 
+ 00021442  0x000054bc store  0x00000004 , 0x000044e5 
+ 00021443  0x000054bd rtn 
+ 00021444  0x000054c1 bpatchx  0x0000003f , 0x00004027 
+ 00021445  0x000054c2 jam  0x00000036 , 0x0000890f 
+ 00021446  0x000054c3 jam  0x0000005f , 0x0000890b 
+ 00021447  0x000054c4 enable  0x00000036 
+ 00021448  0x000054c5 jam  0x00000007 , 0x00008914 
+ 00021449  0x000054c6 call  0x00002c6c 
+ 00021450  0x000054c7 fetch  0x00000001 , 0x000041e0 
+ 00021451  0x000054c8 rtn  0x00000034 
+ 00021452  0x000054c9 jam  0x000000b8 , 0x0000890a 
+ 00021453  0x000054ca rtn 
+ 00021454  0x000054cd bpatchx  0x00000040 , 0x00004028 
+ 00021455  0x000054ce jam  0x0000002e , 0x0000890f 
+ 00021456  0x000054cf jam  0x000000ff , 0x0000890b 
+ 00021457  0x000054d0 disable  0x00000036 
+ 00021458  0x000054d1 jam  0x00000003 , 0x00008914 
+ 00021459  0x000054d2 arg  0x00000000 , 0x0000001b 
+ 00021460  0x000054d3 rtn 
+ 00021461  0x000054d6 disable  0x00000009 
+ 00021462  0x000054d7 disable  0x00000007 
+ 00021463  0x000054d8 fetch  0x00000003 , 0x00000467 
+ 00021464  0x000054d9 iforce  0x0000000f 
+ 00021465  0x000054da fetch  0x00000001 , 0x00000016 
+ 00021466  0x000054db reverse  0x0000003f , 0x00000002 
+ 00021467  0x000054dc set1  0x00000001 , 0x00000002 
+ 00021468  0x000054dd rshift  0x00000002 , 0x0000000e 
+ 00021469  0x000054de rtn 
+ 00021470  0x000054e2 call  0x000053e6 
+ 00021471  0x000054e3 call  0x0000291f 
+ 00021472  0x000054e4 setarg  0x00000500 
+ 00021473  0x000054e5 call  0x00002a8f 
+ 00021474  0x000054e6 branch  0x00002924 
+ 00021475  0x000054e9 branch  0x00002939 , 0x0000002d 
+ 00021476  0x000054eb call  0x000053e6 
+ 00021477  0x000054ec branch  0x00002933 
+ 00021478  0x000054ee bpatchx  0x00000041 , 0x00004028 
+ 00021479  0x000054ef call  0x00002918 
+ 00021480  0x000054f0 fetch  0x00000001 , 0x0000048c 
+ 00021481  0x000054f1 nbranch  0x000053f9 , 0x00000034 
+ 00021482  0x000054f2 fetch  0x00000001 , 0x00000016 
+ 00021483  0x000054f3 sub  0x0000003f , 0x00000024 , 0x0000003e 
+ 00021484  0x000054f4 branch  0x000053f3 , 0x00000002 
+ 00021485  0x000054f5 force  0x00000000 , 0x00000002 
+ 00021486  0x000054f6 rtneq  0x00000025 
+ 00021487  0x000054f7 force  0x00000018 , 0x00000002 
+ 00021488  0x000054f8 rtneq  0x00000026 
+ 00021489  0x000054f9 force  0x0000004e , 0x00000002 
+ 00021490  0x000054fa rtn 
+ 00021491  0x000054fd sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00021492  0x000054fe branch  0x000053f6 , 0x00000002 
+ 00021493  0x000054ff increase  0x00000001 , 0x0000003f 
+ 00021494  0x00005502 lshift  0x0000003f , 0x0000003f 
+ 00021495  0x00005503 add  0x0000003f , 0x00000002 , 0x00000002 
+ 00021496  0x00005504 rtn 
+ 00021497  0x00005507 fetch  0x00000001 , 0x00000016 
+ 00021498  0x00005508 lshift  0x0000003f , 0x00000002 
+ 00021499  0x00005509 rtn 
+ 00021500  0x0000550c arg  0x000001f4 , 0x00000002 
+ 00021501  0x0000550d rtn  0x00000034 
+ 00021502  0x0000550e arg  0x000000fa , 0x00000002 
+ 00021503  0x0000550f rtneq  0x00000001 
+ 00021504  0x00005510 arg  0x00000096 , 0x00000002 
+ 00021505  0x00005511 rtneq  0x00000002 
+ 00021506  0x00005512 arg  0x00000064 , 0x00000002 
+ 00021507  0x00005513 rtneq  0x00000003 
+ 00021508  0x00005514 arg  0x0000004b , 0x00000002 
+ 00021509  0x00005515 rtneq  0x00000004 
+ 00021510  0x00005516 arg  0x00000032 , 0x00000002 
+ 00021511  0x00005517 rtneq  0x00000005 
+ 00021512  0x00005518 arg  0x00000028 , 0x00000002 
+ 00021513  0x00005519 rtneq  0x00000006 
+ 00021514  0x0000551a arg  0x00000014 , 0x00000002 
+ 00021515  0x0000551b rtn 
+ 00021516  0x00005520 setarg  0x008e89be 
+ 00021517  0x00005521 lshift8  0x0000003f , 0x0000003f 
+ 00021518  0x00005522 or_into  0x000000d6 , 0x0000003f 
+ 00021519  0x00005523 iforce  0x00000009 
+ 00021520  0x00005524 setarg  0x00555555 
+ 00021521  0x00005525 store  0x00000003 , 0x00000467 
+ 00021522  0x00005526 rtn 
+ 00021523  0x00005529 bpatchx  0x00000042 , 0x00004028 
+ 00021524  0x0000552a enable  0x00000010 
+ 00021525  0x0000552b fetch  0x00000004 , 0x00000463 
+ 00021526  0x0000552c iforce  0x00000009 
+ 00021527  0x0000552d call  0x00005466 
+ 00021528  0x0000552e setarg  0x00000200 
+ 00021529  0x0000552f branch  0x0000541c , 0x00000029 
+ 00021530  0x00005530 fetch  0x00000002 , 0x0000044d 
+ 00021531  0x00005531 rshift  0x0000003f , 0x0000003f 
+ 00021532  0x00005533 arg  0x00000500 , 0x00000002 
+ 00021533  0x00005534 iadd  0x00000002 , 0x0000003f 
+ 00021534  0x00005535 call  0x00002a24 
+ 00021535  0x00005536 deposit  0x0000001a 
+ 00021536  0x00005537 store  0x00000006 , 0x00000491 
+ 00021537  0x00005538 rtn 
+ 00021538  0x0000553b bpatchx  0x00000043 , 0x00004028 
+ 00021539  0x0000553c fetch  0x00000001 , 0x00000016 
+ 00021540  0x0000553d beq  0x00000025 , 0x00005428 
+ 00021541  0x0000553e beq  0x00000026 , 0x0000542e 
+ 00021542  0x0000553f beq  0x00000027 , 0x00005434 
+ 00021543  0x00005540 branch  0x00005434 
+ 00021544  0x00005543 fetcht  0x00000001 , 0x0000448d 
+ 00021545  0x00005544 isolate1  0x00000001 , 0x00000002 
+ 00021546  0x00005545 branch  0x0000543f , 0x00000001 
+ 00021547  0x00005546 isolate1  0x00000002 , 0x00000002 
+ 00021548  0x00005547 branch  0x00005444 , 0x00000001 
+ 00021549  0x00005548 branch  0x0000543a 
+ 00021550  0x0000554c fetcht  0x00000001 , 0x0000448d 
+ 00021551  0x0000554d isolate1  0x00000002 , 0x00000002 
+ 00021552  0x0000554e branch  0x00005444 , 0x00000001 
+ 00021553  0x0000554f isolate1  0x00000000 , 0x00000002 
+ 00021554  0x00005550 branch  0x0000543a , 0x00000001 
+ 00021555  0x00005551 branch  0x0000543f 
+ 00021556  0x00005555 fetcht  0x00000001 , 0x0000448d 
+ 00021557  0x00005556 isolate1  0x00000000 , 0x00000002 
+ 00021558  0x00005557 branch  0x0000543a , 0x00000001 
+ 00021559  0x00005558 isolate1  0x00000001 , 0x00000002 
+ 00021560  0x00005559 branch  0x0000543f , 0x00000001 
+ 00021561  0x0000555a branch  0x00005444 
+ 00021562  0x0000555f jam  0x00000025 , 0x00000016 
+ 00021563  0x00005560 fetch  0x00000001 , 0x00000ac2 
+ 00021564  0x00005561 set1  0x00000000 , 0x0000003f 
+ 00021565  0x00005562 store  0x00000001 , 0x00000ac2 
+ 00021566  0x00005563 rtn 
+ 00021567  0x00005566 jam  0x00000026 , 0x00000016 
+ 00021568  0x00005567 fetch  0x00000001 , 0x00000ac2 
+ 00021569  0x00005568 set1  0x00000001 , 0x0000003f 
+ 00021570  0x00005569 store  0x00000001 , 0x00000ac2 
+ 00021571  0x0000556a rtn 
+ 00021572  0x0000556d jam  0x00000027 , 0x00000016 
+ 00021573  0x0000556e fetch  0x00000001 , 0x00000ac2 
+ 00021574  0x0000556f set1  0x00000002 , 0x0000003f 
+ 00021575  0x00005570 store  0x00000001 , 0x00000ac2 
+ 00021576  0x00005571 rtn 
+ 00021577  0x00005576 bpatchx  0x00000044 , 0x00004028 
+ 00021578  0x00005577 add  0x00000011 , 0x00000001 , 0x00000006 
+ 00021579  0x00005578 ifetch  0x00000001 , 0x00000006 
+ 00021580  0x00005579 rtnbit0  0x00000000 
+ 00021581  0x0000557a add  0x00000011 , 0x0000001a , 0x00000005 
+ 00021582  0x0000557b ifetch  0x00000002 , 0x00000005 
+ 00021583  0x0000557c increase  0x00000001 , 0x0000003f 
+ 00021584  0x0000557d istore  0x00000002 , 0x00000005 
+ 00021585  0x0000557e add  0x00000011 , 0x00000019 , 0x00000006 
+ 00021586  0x0000557f ifetch  0x00000001 , 0x00000006 
+ 00021587  0x00005580 add  0x00000011 , 0x00000018 , 0x00000005 
+ 00021588  0x00005581 ifetcht  0x00000001 , 0x00000005 
+ 00021589  0x00005582 iadd  0x00000002 , 0x0000003f 
+ 00021590  0x00005583 sub  0x0000003f , 0x00000024 , 0x0000003e 
+ 00021591  0x00005584 branch  0x00005459 , 0x00000002 
+ 00021592  0x00005585 increase  0xffffffdb , 0x0000003f 
+ 00021593  0x00005587 istore  0x00000001 , 0x00000005 
+ 00021594  0x00005588 rtn 
+ 00021595  0x0000558c bpatchx  0x00000045 , 0x00004028 
+ 00021596  0x0000558d fetch  0x00000005 , 0x0000046f 
+ 00021597  0x0000558e force  0x00000000 , 0x00000002 
+ 00021598  0x0000558f force  0x00000025 , 0x00000039 
+ 00021599  0x00005591 bbit0  0x00000000 , 0x00005461 
+ 00021600  0x00005592 increase  0x00000001 , 0x00000002 
+ 00021601  0x00005594 rshift  0x0000003f , 0x0000003f 
+ 00021602  0x00005595 loop  0x0000545f 
+ 00021603  0x00005596 add  0x00000002 , 0xffffffff , 0x0000003f 
+ 00021604  0x00005597 store  0x00000001 , 0x00000461 
+ 00021605  0x00005598 rtn 
+ 00021606  0x0000559b bpatchx  0x00000046 , 0x00004028 
+ 00021607  0x0000559c fetch  0x00000001 , 0x00000457 
+ 00021608  0x0000559d iforce  0x00000007 
+ 00021609  0x0000559e fetcht  0x00000005 , 0x0000046f 
+ 00021610  0x0000559f qisolate1  0x00000002 
+ 00021611  0x000055a0 branch  0x0000547c , 0x00000001 
+ 00021612  0x000055a2 bpatchx  0x00000047 , 0x00004028 
+ 00021613  0x000055a3 fetch  0x00000001 , 0x00000461 
+ 00021614  0x000055a4 isub  0x00000007 , 0x0000003f 
+ 00021615  0x000055a5 branch  0x00005472 , 0x00000002 
+ 00021616  0x000055a6 sub  0x0000003f , 0xffffffff , 0x00000007 
+ 00021617  0x000055a7 branch  0x0000546c 
+ 00021618  0x000055a9 copy  0x00000007 , 0x00000039 
+ 00021619  0x000055aa force  0x00000000 , 0x00000007 
+ 00021620  0x000055ac qisolate1  0x00000002 
+ 00021621  0x000055ad branch  0x00005477 , 0x00000001 
+ 00021622  0x000055ae increase  0x00000001 , 0x00000039 
+ 00021623  0x000055b0 deposit  0x00000039 
+ 00021624  0x000055b1 branch  0x0000547c , 0x00000034 
+ 00021625  0x000055b2 increase  0x00000001 , 0x00000007 
+ 00021626  0x000055b3 increase  0xffffffff , 0x00000039 
+ 00021627  0x000055b4 branch  0x00005474 
+ 00021628  0x000055b6 deposit  0x00000007 
+ 00021629  0x000055b7 store  0x00000001 , 0x00000016 
+ 00021630  0x000055b8 rtn 
+ 00021631  0x000055bc branch  0x00005482 , 0x00000029 
+ 00021632  0x000055bd until  0x0000003e , 0x00000003 
+ 00021633  0x000055be rtn 
+ 00021634  0x000055c1 arg  0x00000ea0 , 0x0000000b 
+ 00021635  0x000055c2 until  0x00000023 , 0x00000026 
+ 00021636  0x000055c3 rtn 
+ 00021637  0x000055c6 disable  0x00000010 
+ 00021638  0x000055c7 fetch  0x00000002 , 0x0000436c 
+ 00021639  0x000055c8 copy  0x0000003f , 0x0000000b 
+ 00021640  0x000055c9 branch  0x0000548e 
+ 00021641  0x000055cd bpatchx  0x00000048 , 0x00004029 
+ 00021642  0x000055ce enable  0x00000010 
+ 00021643  0x000055cf fetch  0x00000002 , 0x0000044d 
+ 00021644  0x000055d0 fetcht  0x00000004 , 0x000044e5 
+ 00021645  0x000055d1 iadd  0x00000002 , 0x0000000b 
+ 00021646  0x000055d3 call  0x000053de 
+ 00021647  0x000055d5 bpatchx  0x00000049 , 0x00004029 
+ 00021648  0x000055d6 call  0x000053d5 
+ 00021649  0x000055d7 disable  0x0000002d 
+ 00021650  0x000055d8 enable  0x0000000d 
+ 00021651  0x000055d9 enable  0x00000021 
+ 00021652  0x000055da disable  0x00000020 
+ 00021653  0x000055db copy  0x0000000b , 0x0000001b 
+ 00021654  0x000055dc correlate  0x0000003e , 0x00000003 
+ 00021655  0x000055dd branch  0x0000549a , 0x0000002e 
+ 00021656  0x000055de copy  0x0000001a , 0x00000002 
+ 00021657  0x000055df storet  0x00000006 , 0x0000009a 
+ 00021658  0x000055e1 nbranch  0x0000264d , 0x00000018 
+ 00021659  0x000055e2 branch  0x000054a1 , 0x0000002e 
+ 00021660  0x000055e3 arg  0x000001e0 , 0x00000029 
+ 00021661  0x000055e4 copy  0x00000021 , 0x00000028 
+ 00021662  0x000055e5 fetch  0x00000001 , 0x0000043f 
+ 00021663  0x000055e6 bbit0  0x00000003 , 0x000054a1 
+ 00021664  0x000055e7 call  0x00002b05 , 0x0000002b 
+ 00021665  0x000055e9 bpatchx  0x0000004a , 0x00004029 
+ 00021666  0x000055ea call  0x000029bb 
+ 00021667  0x000055eb enable  0x00000007 
+ 00021668  0x000055ec enable  0x00000009 
+ 00021669  0x000055ed parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00021670  0x000055ee rshift3  0x0000000c , 0x0000003f 
+ 00021671  0x000055ef store  0x00000001 , 0x000002d9 
+ 00021672  0x000055f0 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00021673  0x000055f1 rshift3  0x0000000c , 0x0000003f 
+ 00021674  0x000055f2 istore  0x00000001 , 0x00000005 
+ 00021675  0x000055f3 and  0x0000003f , 0x0000003f , 0x00000039 
+ 00021676  0x000055f4 branch  0x000054b1 , 0x00000005 
+ 00021677  0x000055f7 parse  0x00000003 , 0x00000000 , 0x00000008 
+ 00021678  0x000055f8 rshift3  0x0000000c , 0x0000003f 
+ 00021679  0x000055f9 istore  0x00000001 , 0x00000005 
+ 00021680  0x000055fa loop  0x000054ad 
+ 00021681  0x000055fd bpatchx  0x0000004b , 0x00004029 
+ 00021682  0x000055fe parse  0x00000003 , 0x00000000 , 0x00000018 
+ 00021683  0x000055ff enable  0x00000010 
+ 00021684  0x00005600 arg  0x00000664 , 0x0000001b 
+ 00021685  0x00005601 rshift32  0x0000003f , 0x0000003f 
+ 00021686  0x00005602 rshift16  0x0000003f , 0x0000003f 
+ 00021687  0x00005603 istore  0x00000003 , 0x00000005 
+ 00021688  0x00005604 branch  0x0000264d , 0x00000006 
+ 00021689  0x00005605 enable  0x0000002d 
+ 00021690  0x00005606 fetch  0x00000001 , 0x00000017 
+ 00021691  0x00005607 add  0x0000003f , 0x00000000 , 0x00000011 
+ 00021692  0x00005608 call  0x00002981 
+ 00021693  0x00005609 disable  0x0000000d 
+ 00021694  0x0000560a branch  0x00002918 
+ 00021695  0x0000560d bpatchx  0x0000004c , 0x00004029 
+ 00021696  0x0000560e call  0x000054c9 
+ 00021697  0x00005610 fetcht  0x00000001 , 0x00000017 
+ 00021698  0x00005611 call  0x0000291f 
+ 00021699  0x00005612 call  0x00002924 
+ 00021700  0x00005613 enable  0x00000010 
+ 00021701  0x00005614 arg  0x0000157c , 0x0000000b 
+ 00021702  0x00005615 branch  0x0000548f 
+ 00021703  0x00005618 call  0x000054c9 
+ 00021704  0x00005619 branch  0x0000264d 
+ 00021705  0x0000561c bpatchx  0x0000004d , 0x00004029 
+ 00021706  0x0000561d call  0x000053d5 
+ 00021707  0x0000561e call  0x000053e3 
+ 00021708  0x0000561f branch  0x000054cd 
+ 00021709  0x00005622 set1  0x00000000 , 0x00000015 
+ 00021710  0x00005623 enable  0x0000001d 
+ 00021711  0x00005624 enable  0x00000020 
+ 00021712  0x00005625 disable  0x00000021 
+ 00021713  0x00005626 call  0x0000547f 
+ 00021714  0x00005627 rshift16  0x00000009 , 0x0000003f 
+ 00021715  0x00005628 rshift8  0x0000003f , 0x0000003f 
+ 00021716  0x00005629 rshift4  0x0000003f , 0x0000003f 
+ 00021717  0x0000562a inject  0x00000003 , 0x00000028 
+ 00021718  0x0000562b enable  0x00000007 
+ 00021719  0x0000562c enable  0x00000009 
+ 00021720  0x0000562d bpatchx  0x0000004e , 0x00004029 
+ 00021721  0x0000562e fetch  0x00000001 , 0x000043dc 
+ 00021722  0x0000562f inject  0x00000003 , 0x00000008 
+ 00021723  0x00005630 ifetch  0x00000001 , 0x00000006 
+ 00021724  0x00005631 and  0x0000003f , 0x0000003f , 0x00000039 
+ 00021725  0x00005632 inject  0x00000003 , 0x00000008 
+ 00021726  0x00005633 branch  0x000054e2 , 0x00000005 
+ 00021727  0x00005635 ifetch  0x00000001 , 0x00000006 
+ 00021728  0x00005636 inject  0x00000003 , 0x00000008 
+ 00021729  0x00005637 loop  0x000054df 
+ 00021730  0x0000563a enable  0x00000008 
+ 00021731  0x0000563b inject  0x00000003 , 0x00000018 
+ 00021732  0x0000563c disable  0x00000008 
+ 00021733  0x0000563d until  0x0000003e , 0x00000027 
+ 00021734  0x0000563e nop  0x00000064 
+ 00021735  0x0000563f disable  0x0000001d 
+ 00021736  0x00005640 rtn 
+ 00021737  0x00005643 bpatchx  0x0000004f , 0x00004029 
+ 00021738  0x00005644 fetch  0x00000001 , 0x00004484 
+ 00021739  0x00005645 beq  0x00000001 , 0x000054f9 
+ 00021740  0x00005646 fetch  0x00000001 , 0x00004485 
+ 00021741  0x00005647 lshift4  0x0000003f , 0x0000003f 
+ 00021742  0x00005648 lshift2  0x0000003f , 0x0000003f 
+ 00021743  0x00005649 store  0x00000001 , 0x000043dc 
+ 00021744  0x0000564a fetcht  0x00000001 , 0x0000436f 
+ 00021745  0x0000564b add  0x00000002 , 0x00000006 , 0x0000003f 
+ 00021746  0x0000564c store  0x00000001 , 0x000043dd 
+ 00021747  0x0000564d fetch  0x00000006 , 0x000044a0 
+ 00021748  0x0000564e store  0x00000006 , 0x000043de 
+ 00021749  0x0000564f copy  0x00000002 , 0x00000039 
+ 00021750  0x00005650 arg  0x00004370 , 0x00000006 
+ 00021751  0x00005651 call  0x00007ef4 
+ 00021752  0x00005652 branch  0x00005504 
+ 00021753  0x00005654 fetch  0x00000001 , 0x00004486 
+ 00021754  0x00005655 lshift4  0x0000003f , 0x0000003f 
+ 00021755  0x00005656 lshift2  0x0000003f , 0x0000003f 
+ 00021756  0x00005657 increase  0x00000001 , 0x0000003f 
+ 00021757  0x00005658 store  0x00000001 , 0x000043dc 
+ 00021758  0x00005659 setarg  0x0000000c 
+ 00021759  0x0000565a store  0x00000001 , 0x000043dd 
+ 00021760  0x0000565b fetch  0x00000006 , 0x000044a0 
+ 00021761  0x0000565c store  0x00000006 , 0x000043de 
+ 00021762  0x0000565d fetch  0x00000006 , 0x000041d0 
+ 00021763  0x0000565e istore  0x00000006 , 0x00000005 
+ 00021764  0x00005660 bpatchx  0x00000050 , 0x0000402a 
+ 00021765  0x00005661 fetch  0x00000001 , 0x00000000 
+ 00021766  0x00005662 increase  0x00000001 , 0x0000003f 
+ 00021767  0x00005663 store  0x00000001 , 0x00000000 
+ 00021768  0x00005664 arg  0x00000708 , 0x0000001b 
+ 00021769  0x00005665 disable  0x0000002d 
+ 00021770  0x00005666 branch  0x000054bf 
+ 00021771  0x00005669 bpatchx  0x00000051 , 0x0000402a 
+ 00021772  0x0000566a fetch  0x00000001 , 0x0000449e 
+ 00021773  0x0000566b rtnne  0x00000001 
+ 00021774  0x0000566c fetch  0x00000001 , 0x00000000 
+ 00021775  0x0000566d increase  0x00000001 , 0x0000003f 
+ 00021776  0x0000566e store  0x00000001 , 0x00000000 
+ 00021777  0x0000566f arg  0x00000c03 , 0x00000002 
+ 00021778  0x00005670 fetch  0x00000001 , 0x0000449f 
+ 00021779  0x00005671 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
+ 00021780  0x00005672 copy  0x00000011 , 0x0000003f 
+ 00021781  0x00005673 nsetflag  0x00000034 , 0x00000007 , 0x00000002 
+ 00021782  0x00005674 storet  0x00000002 , 0x000043dc 
+ 00021783  0x00005675 fetch  0x00000006 , 0x000044a0 
+ 00021784  0x00005676 istore  0x00000006 , 0x00000005 
+ 00021785  0x00005677 fetch  0x00000006 , 0x0000044f 
+ 00021786  0x00005678 istore  0x00000006 , 0x00000005 
+ 00021787  0x00005679 branch  0x000054bf 
+ 00021788  0x0000567d bpatchx  0x00000052 , 0x0000402a 
+ 00021789  0x0000567e arg  0x00000004 , 0x00000002 
+ 00021790  0x0000567f fetch  0x00000001 , 0x00004485 
+ 00021791  0x00005680 nsetflag  0x00000034 , 0x00000006 , 0x00000002 
+ 00021792  0x00005681 storet  0x00000001 , 0x000043dc 
+ 00021793  0x00005682 fetcht  0x00000001 , 0x0000438f 
+ 00021794  0x00005683 add  0x00000002 , 0x00000006 , 0x0000003f 
+ 00021795  0x00005684 store  0x00000001 , 0x000043dd 
+ 00021796  0x00005685 fetch  0x00000006 , 0x000044a0 
+ 00021797  0x00005686 store  0x00000006 , 0x000043de 
+ 00021798  0x00005687 arg  0x00004390 , 0x00000006 
+ 00021799  0x00005688 copy  0x00000002 , 0x00000039 
+ 00021800  0x00005689 call  0x00007ef4 
+ 00021801  0x0000568a call  0x000054c7 
+ 00021802  0x0000568b branch  0x00005706 
+ 00021803  0x0000568e bpatchx  0x00000053 , 0x0000402a 
+ 00021804  0x0000568f force  0xffffffff , 0x0000003f 
+ 00021805  0x00005690 setsect  0x00000002 , 0x00000001 
+ 00021806  0x00005691 store  0x00000005 , 0x0000046f 
+ 00021807  0x00005692 call  0x0000545b 
+ 00021808  0x00005693 force  0x00000004 , 0x00000039 
+ 00021809  0x00005694 arg  0x00000463 , 0x00000005 
+ 00021810  0x00005695 call  0x0000630d 
+ 00021811  0x00005696 fetch  0x00000002 , 0x0000449c 
+ 00021812  0x00005697 store  0x00000002 , 0x0000046d 
+ 00021813  0x00005699 random  0x0000003f 
+ 00021814  0x0000569a and_into  0x0000000f , 0x0000003f 
+ 00021815  0x0000569b sub  0x0000003f , 0x00000004 , 0x0000003e 
+ 00021816  0x0000569c branch  0x00005535 , 0x00000002 
+ 00021817  0x0000569d store  0x00000001 , 0x00000458 
+ 00021818  0x0000569e store  0x00000001 , 0x000006e6 
+ 00021819  0x0000569f bpatchx  0x00000054 , 0x0000402a 
+ 00021820  0x000056a0 fetcht  0x00000002 , 0x00004367 
+ 00021821  0x000056a1 storet  0x00000002 , 0x00000441 
+ 00021822  0x000056a2 copy  0x00000002 , 0x00000013 
+ 00021823  0x000056a3 add  0x00000022 , 0x00000007 , 0x0000003f 
+ 00021824  0x000056a4 idiv  0x00000013 
+ 00021825  0x000056a5 call  0x00007f86 
+ 00021826  0x000056a6 remainder  0x00000011 
+ 00021827  0x000056a7 isub  0x00000011 , 0x0000003f 
+ 00021828  0x000056a8 iadd  0x00000013 , 0x0000003f 
+ 00021829  0x000056a9 fetcht  0x00000002 , 0x00004365 
+ 00021830  0x000056aa iadd  0x00000002 , 0x0000003f 
+ 00021831  0x000056ab store  0x00000004 , 0x00000443 
+ 00021832  0x000056ac isub  0x00000022 , 0x00000011 
+ 00021833  0x000056ad increase  0xfffffffa , 0x00000011 
+ 00021834  0x000056ae arg  0x00002205 , 0x00000012 
+ 00021835  0x000056af fetch  0x00000001 , 0x00004495 
+ 00021836  0x000056b0 nsetflag  0x00000034 , 0x00000006 , 0x00000012 
+ 00021837  0x000056b1 fetch  0x00000001 , 0x0000448e 
+ 00021838  0x000056b2 nsetflag  0x00000034 , 0x00000007 , 0x00000012 
+ 00021839  0x000056b3 copy  0x00000012 , 0x0000003f 
+ 00021840  0x000056b4 store  0x00000002 , 0x000043dc 
+ 00021841  0x000056b5 fetch  0x00000006 , 0x000044a0 
+ 00021842  0x000056b6 istore  0x00000006 , 0x00000005 
+ 00021843  0x000056b7 fetch  0x00000006 , 0x0000044f 
+ 00021844  0x000056b8 istore  0x00000006 , 0x00000005 
+ 00021845  0x000056b9 fetch  0x00000004 , 0x00000463 
+ 00021846  0x000056ba istore  0x00000004 , 0x00000005 
+ 00021847  0x000056bb random  0x0000003f 
+ 00021848  0x000056bc istore  0x00000002 , 0x00000005 
+ 00021849  0x000056bd random  0x0000003f 
+ 00021850  0x000056be istore  0x00000001 , 0x00000005 
+ 00021851  0x000056bf force  0x00000002 , 0x0000003f 
+ 00021852  0x000056c0 istore  0x00000001 , 0x00000005 
+ 00021853  0x000056c1 rshift2  0x00000011 , 0x0000003f 
+ 00021854  0x000056c2 istore  0x00000002 , 0x00000005 
+ 00021855  0x000056c3 rshift2  0x00000013 , 0x0000003f 
+ 00021856  0x000056c4 istore  0x00000002 , 0x00000005 
+ 00021857  0x000056c5 bpatchx  0x00000055 , 0x0000402a 
+ 00021858  0x000056c6 setarg  0x00000000 
+ 00021859  0x000056c7 istore  0x00000002 , 0x00000005 
+ 00021860  0x000056c8 fetch  0x00000002 , 0x0000449c 
+ 00021861  0x000056c9 istore  0x00000002 , 0x00000005 
+ 00021862  0x000056ca fetch  0x00000005 , 0x0000046f 
+ 00021863  0x000056cb istore  0x00000005 , 0x00000005 
+ 00021864  0x000056cc fetch  0x00000001 , 0x00000458 
+ 00021865  0x000056cd arg  0x000000a0 , 0x00000002 
+ 00021866  0x000056ce ior  0x00000002 , 0x0000003f 
+ 00021867  0x000056cf istore  0x00000001 , 0x00000005 
+ 00021868  0x000056d0 call  0x000054c7 
+ 00021869  0x000056d1 setarg  0x000043dc 
+ 00021870  0x000056d2 add  0x0000003f , 0x00000012 , 0x00000006 
+ 00021871  0x000056d3 ifetch  0x00000003 , 0x00000006 
+ 00021872  0x000056d4 store  0x00000003 , 0x00000467 
+ 00021873  0x000056d5 rtn 
+ 00021874  0x000056d8 bpatchx  0x00000056 , 0x0000402a 
+ 00021875  0x000056d9 disable  0x00000029 
+ 00021876  0x000056da branch  0x0000540c 
+ 00021877  0x000056df fetch  0x00000001 , 0x0000043f 
+ 00021878  0x000056e0 rtnbit0  0x00000005 
+ 00021879  0x000056e1 fetch  0x00000002 , 0x00000459 
+ 00021880  0x000056e2 fetcht  0x00000002 , 0x0000045f 
+ 00021881  0x000056e3 isub  0x00000002 , 0x0000003f 
+ 00021882  0x000056e4 nrtn  0x00000002 
+ 00021883  0x000056e5 store  0x00000002 , 0x00000a9a 
+ 00021884  0x000056e6 bpatchx  0x00000057 , 0x0000402a 
+ 00021885  0x000056e7 fetch  0x00000001 , 0x0000043f 
+ 00021886  0x000056e8 set0  0x00000005 , 0x0000003f 
+ 00021887  0x000056e9 set0  0x00000003 , 0x0000003f 
+ 00021888  0x000056ea store  0x00000001 , 0x0000043f 
+ 00021889  0x000056eb fetch  0x00000004 , 0x00000443 
+ 00021890  0x000056ec fetcht  0x00000002 , 0x00000441 
+ 00021891  0x000056ed storet  0x00000002 , 0x00000aa2 
+ 00021892  0x000056ee isub  0x00000002 , 0x00000011 
+ 00021893  0x000056ef bpatchx  0x00000058 , 0x0000402b 
+ 00021894  0x000056f0 fetch  0x00000001 , 0x000043d3 
+ 00021895  0x000056f1 store  0x00000001 , 0x0000046a 
+ 00021896  0x000056f2 ifetcht  0x00000002 , 0x00000006 
+ 00021897  0x000056f3 ifetch  0x00000002 , 0x00000006 
+ 00021898  0x000056f4 lshift2  0x0000003f , 0x0000003f 
+ 00021899  0x000056f5 store  0x00000002 , 0x00000441 
+ 00021900  0x000056f6 lshift2  0x00000002 , 0x00000002 
+ 00021901  0x000056f7 iadd  0x00000002 , 0x0000003f 
+ 00021902  0x000056f8 ifetcht  0x00000004 , 0x00000006 
+ 00021903  0x000056f9 storet  0x00000004 , 0x0000046b 
+ 00021904  0x000056fa iadd  0x00000011 , 0x0000003f 
+ 00021905  0x000056fb copy  0x0000003f , 0x00000014 
+ 00021906  0x000056fc fetch  0x00000002 , 0x00000441 
+ 00021907  0x000056fd fetcht  0x00000002 , 0x00000aa2 
+ 00021908  0x000056fe isub  0x00000002 , 0x0000003f 
+ 00021909  0x000056ff fetcht  0x00000002 , 0x00000a9a 
+ 00021910  0x00005700 imul32  0x00000002 , 0x0000003f 
+ 00021911  0x00005701 iadd  0x00000014 , 0x0000003f 
+ 00021912  0x00005702 store  0x00000004 , 0x00000443 
+ 00021913  0x00005703 call  0x00005713 
+ 00021914  0x00005704 fetch  0x00000002 , 0x0000046d 
+ 00021915  0x00005705 store  0x00000002 , 0x000044ba 
+ 00021916  0x00005706 rtn 
+ 00021917  0x0000570a bpatchx  0x00000059 , 0x0000402b 
+ 00021918  0x0000570b fetch  0x00000001 , 0x0000043f 
+ 00021919  0x0000570c rtnbit0  0x00000006 
+ 00021920  0x0000570d fetch  0x00000002 , 0x00000459 
+ 00021921  0x0000570e fetcht  0x00000002 , 0x0000045f 
+ 00021922  0x0000570f isub  0x00000002 , 0x0000003f 
+ 00021923  0x00005710 nrtn  0x00000002 
+ 00021924  0x00005711 fetch  0x00000001 , 0x0000043f 
+ 00021925  0x00005712 set0  0x00000006 , 0x0000003f 
+ 00021926  0x00005713 store  0x00000001 , 0x0000043f 
+ 00021927  0x00005714 fetch  0x00000005 , 0x000043ce 
+ 00021928  0x00005715 store  0x00000005 , 0x0000046f 
+ 00021929  0x00005716 branch  0x0000545b 
+ 00021930  0x0000571a bpatchx  0x0000005a , 0x0000402b 
+ 00021931  0x0000571b call  0x000056ed 
+ 00021932  0x0000571c call  0x000055c0 
+ 00021933  0x0000571d fetch  0x00000001 , 0x000002d9 
+ 00021934  0x0000571e isolate1  0x00000004 , 0x0000003f 
+ 00021935  0x0000571f setflag  0x00000001 , 0x0000002a , 0x00000000 
+ 00021936  0x00005720 rshift  0x0000003f , 0x0000003f 
+ 00021937  0x00005721 ixor  0x00000002 , 0x0000003f 
+ 00021938  0x00005722 isolate1  0x00000002 , 0x0000003f 
+ 00021939  0x00005723 setflag  0x00000001 , 0x0000000f , 0x00000000 
+ 00021940  0x00005724 rtnmark1  0x0000000f 
+ 00021941  0x00005725 fetch  0x00000001 , 0x000002da 
+ 00021942  0x00005726 branch  0x000055bc , 0x00000034 
+ 00021943  0x00005727 fetch  0x00000001 , 0x0000043f 
+ 00021944  0x00005728 bbit0  0x00000004 , 0x000055bc 
+ 00021945  0x00005729 call  0x0000748d 
+ 00021946  0x0000572a call  0x000073fb 
+ 00021947  0x0000572b nrtn  0x00000034 
+ 00021948  0x0000572d fetcht  0x00000001 , 0x00000456 
+ 00021949  0x0000572e setflip  0x00000002 , 0x00000002 
+ 00021950  0x0000572f storet  0x00000001 , 0x00000456 
+ 00021951  0x00005730 rtn 
+ 00021952  0x00005734 bpatchx  0x0000005b , 0x0000402b 
+ 00021953  0x00005735 fetcht  0x00000001 , 0x00000456 
+ 00021954  0x00005736 isolate0  0x00000005 , 0x00000002 
+ 00021955  0x00005737 rtn  0x00000001 
+ 00021956  0x00005738 fetch  0x00000001 , 0x000002d9 
+ 00021957  0x00005739 lshift  0x0000003f , 0x0000003f 
+ 00021958  0x0000573a ixor  0x00000002 , 0x0000003f 
+ 00021959  0x0000573b rtnbit0  0x00000003 
+ 00021960  0x0000573c set0  0x00000005 , 0x00000002 
+ 00021961  0x0000573d setflip  0x00000003 , 0x00000002 
+ 00021962  0x0000573e storet  0x00000001 , 0x00000456 
+ 00021963  0x0000573f compare  0x00000003 , 0x00000002 , 0x00000003 
+ 00021964  0x00005740 nrtn  0x00000001 
+ 00021965  0x00005741 fetch  0x00000001 , 0x000043de 
+ 00021966  0x00005742 beq  0x00000005 , 0x000055d2 
+ 00021967  0x00005743 fetch  0x00000001 , 0x000044c5 
+ 00021968  0x00005744 beq  0x00000002 , 0x000055d6 
+ 00021969  0x00005745 rtn 
+ 00021970  0x00005749 fetch  0x00000001 , 0x0000043f 
+ 00021971  0x0000574a set1  0x00000004 , 0x0000003f 
+ 00021972  0x0000574b store  0x00000001 , 0x0000043f 
+ 00021973  0x0000574c rtn 
+ 00021974  0x0000574f bpatchx  0x0000005c , 0x0000402b 
+ 00021975  0x00005750 jam  0x00000000 , 0x000044c5 
+ 00021976  0x00005751 arg  0x00000000 , 0x0000003f 
+ 00021977  0x00005752 store  0x00000004 , 0x0000440d 
+ 00021978  0x00005753 store  0x00000005 , 0x00004403 
+ 00021979  0x00005754 set1  0x00000027 , 0x0000003f 
+ 00021980  0x00005755 store  0x00000005 , 0x00004408 
+ 00021981  0x00005756 fetch  0x00000001 , 0x0000043f 
+ 00021982  0x00005757 set0  0x00000004 , 0x0000003f 
+ 00021983  0x00005758 store  0x00000001 , 0x0000043f 
+ 00021984  0x00005759 rtn 
+ 00021985  0x0000575d bpatchx  0x0000005d , 0x0000402b 
+ 00021986  0x0000575e call  0x00005422 
+ 00021987  0x0000575f call  0x00005485 
+ 00021988  0x00005760 fetch  0x00000001 , 0x00000001 
+ 00021989  0x00005761 increase  0x00000001 , 0x0000003f 
+ 00021990  0x00005762 store  0x00000001 , 0x00000001 
+ 00021991  0x00005763 rtn 
+ 00021992  0x00005767 bpatchx  0x0000005e , 0x0000402b 
+ 00021993  0x00005768 fetch  0x00000001 , 0x00004369 
+ 00021994  0x00005769 rtnne  0x00000001 
+ 00021995  0x0000576a arg  0x00000002 , 0x00000007 
+ 00021996  0x0000576b call  0x00007f16 
+ 00021997  0x0000576c nrtn  0x00000034 
+ 00021998  0x0000576d fetch  0x00000002 , 0x0000436a 
+ 00021999  0x0000576e fetcht  0x00000002 , 0x0000436c 
+ 00022000  0x0000576f isub  0x00000002 , 0x0000003f 
+ 00022001  0x00005770 arg  0x00000002 , 0x00000007 
+ 00022002  0x00005771 call  0x00007f08 
+ 00022003  0x00005772 disable  0x00000029 
+ 00022004  0x00005773 call  0x00005572 
+ 00022005  0x00005774 call  0x000055e1 
+ 00022006  0x00005775 nrtn  0x0000002d 
+ 00022007  0x00005776 bpatchx  0x0000005f , 0x0000402b 
+ 00022008  0x00005777 fetch  0x00000006 , 0x000002db 
+ 00022009  0x00005778 store  0x00000006 , 0x0000044f 
+ 00022010  0x0000577b fetch  0x00000001 , 0x00000002 
+ 00022011  0x0000577c increase  0x00000001 , 0x0000003f 
+ 00022012  0x0000577d store  0x00000001 , 0x00000002 
+ 00022013  0x0000577e call  0x00005608 
+ 00022014  0x0000577f rtn  0x00000029 
+ 00022015  0x00005780 call  0x0000550b 
+ 00022016  0x00005781 nrtn  0x0000002d 
+ 00022017  0x00005782 bpatchx  0x00000060 , 0x0000402c 
+ 00022018  0x00005783 fetch  0x00000001 , 0x00000004 
+ 00022019  0x00005784 increase  0x00000001 , 0x0000003f 
+ 00022020  0x00005785 store  0x00000001 , 0x00000004 
+ 00022021  0x00005786 fetch  0x00000009 , 0x000002e1 
+ 00022022  0x00005787 store  0x00000009 , 0x00000101 
+ 00022023  0x00005788 rtn 
+ 00022024  0x0000578b bpatchx  0x00000061 , 0x0000402c 
+ 00022025  0x0000578c fetch  0x00000001 , 0x0000049b 
+ 00022026  0x0000578d rtnne  0x0000001b 
+ 00022027  0x0000578e fetch  0x00000006 , 0x0000044f 
+ 00022028  0x0000578f fetcht  0x00000006 , 0x0000448f 
+ 00022029  0x00005790 isub  0x00000002 , 0x0000003e 
+ 00022030  0x00005791 nrtn  0x00000005 
+ 00022031  0x00005792 call  0x0000223b 
+ 00022032  0x00005793 nrtn  0x00000005 
+ 00022033  0x00005794 call  0x0000552b 
+ 00022034  0x00005795 call  0x00005340 
+ 00022035  0x00005796 bpatchx  0x00000062 , 0x0000402c 
+ 00022036  0x00005797 jam  0x00000000 , 0x000041ce 
+ 00022037  0x00005798 jam  0x00000000 , 0x00000476 
+ 00022038  0x00005799 jam  0x00000000 , 0x00004369 
+ 00022039  0x0000579a jam  0x00000000 , 0x0000049b 
+ 00022040  0x0000579b branch  0x00002223 
+ 00022041  0x0000579e arg  0x00000001 , 0x00000011 
+ 00022042  0x0000579f fetch  0x00000001 , 0x000002d9 
+ 00022043  0x000057a0 rtnbit1  0x00000006 
+ 00022044  0x000057a1 arg  0x00000000 , 0x00000011 
+ 00022045  0x000057a2 rtn 
+ 00022046  0x000057a7 bpatchx  0x00000063 , 0x0000402c 
+ 00022047  0x000057a8 fetch  0x00000001 , 0x00000456 
+ 00022048  0x000057a9 rtnbit1  0x00000005 
+ 00022049  0x000057aa call  0x00005642 
+ 00022050  0x000057ab call  0x00005873 
+ 00022051  0x000057ac branch  0x00005664 , 0x00000034 
+ 00022052  0x000057ad ifetch  0x00000001 , 0x00000006 
+ 00022053  0x000057ae ifetcht  0x00000001 , 0x00000006 
+ 00022054  0x000057af copy  0x00000002 , 0x00000011 
+ 00022055  0x000057b0 isub  0x00000011 , 0x0000003f 
+ 00022056  0x000057b1 arg  0x0000001b , 0x00000002 
+ 00022057  0x000057b2 call  0x00007fdd 
+ 00022058  0x000057b3 copy  0x0000003f , 0x00000002 
+ 00022059  0x000057b4 ifetch  0x00000001 , 0x00000006 
+ 00022060  0x000057b5 copy  0x0000003f , 0x00000001 
+ 00022061  0x000057b6 copy  0x00000011 , 0x0000003f 
+ 00022062  0x000057b7 iadd  0x00000006 , 0x00000006 
+ 00022063  0x000057b8 arg  0x000043de , 0x00000005 
+ 00022064  0x000057b9 copy  0x00000002 , 0x00000039 
+ 00022065  0x000057ba call  0x00007f01 
+ 00022066  0x000057bb call  0x00005654 
+ 00022067  0x000057bc call  0x00005666 
+ 00022068  0x000057be call  0x00005873 
+ 00022069  0x000057bf ifetch  0x00000001 , 0x00000006 
+ 00022070  0x000057c0 copy  0x0000003f , 0x00000011 
+ 00022071  0x000057c1 copy  0x00000006 , 0x00000013 
+ 00022072  0x000057c2 ifetcht  0x00000001 , 0x00000006 
+ 00022073  0x000057c3 copy  0x00000002 , 0x00000012 
+ 00022074  0x000057c4 isub  0x00000012 , 0x0000003f 
+ 00022075  0x000057c5 arg  0x0000001b , 0x00000002 
+ 00022076  0x000057c6 call  0x00007fdd 
+ 00022077  0x000057c7 iadd  0x00000012 , 0x0000003f 
+ 00022078  0x000057c8 istore  0x00000001 , 0x00000013 
+ 00022079  0x000057c9 isub  0x00000011 , 0x0000003e 
+ 00022080  0x000057ca nrtn  0x00000005 
+ 00022081  0x000057cb branch  0x00005896 
+ 00022082  0x000057cf call  0x00005649 
+ 00022083  0x000057d0 rtnmark1  0x00000029 
+ 00022084  0x000057d1 fetch  0x00000001 , 0x000044e9 
+ 00022085  0x000057d2 bbit0  0x00000002 , 0x00005652 
+ 00022086  0x000057d3 call  0x00005876 
+ 00022087  0x000057d4 branch  0x00005652 , 0x00000034 
+ 00022088  0x000057d5 branch  0x00005650 
+ 00022089  0x000057d9 call  0x00005873 
+ 00022090  0x000057da branch  0x00005652 , 0x00000034 
+ 00022091  0x000057db ifetch  0x00000001 , 0x00000006 
+ 00022092  0x000057dc ifetcht  0x00000001 , 0x00000006 
+ 00022093  0x000057dd isub  0x00000002 , 0x0000003f 
+ 00022094  0x000057de sub  0x0000003f , 0x0000001b , 0x0000003e 
+ 00022095  0x000057df branch  0x00005652 , 0x00000002 
+ 00022096  0x000057e1 set1  0x00000029 , 0x00000000 
+ 00022097  0x000057e2 rtn 
+ 00022098  0x000057e5 set0  0x00000029 , 0x00000000 
+ 00022099  0x000057e6 rtn 
+ 00022100  0x000057e9 copy  0x00000011 , 0x0000003f 
+ 00022101  0x000057ea rtn  0x00000034 
+ 00022102  0x000057eb arg  0x00000001 , 0x00000001 
+ 00022103  0x000057ec rtn 
+ 00022104  0x000057f0 bpatchx  0x00000064 , 0x0000402c 
+ 00022105  0x000057f1 increase  0x00000001 , 0x00000002 
+ 00022106  0x000057f2 call  0x0000576a 
+ 00022107  0x000057f3 increase  0xfffffffe , 0x00000006 
+ 00022108  0x000057f4 ifetch  0x00000002 , 0x00000006 
+ 00022109  0x000057f5 arg  0x00002902 , 0x00000002 
+ 00022110  0x000057f6 isub  0x00000002 , 0x0000003e 
+ 00022111  0x000057f7 nrtn  0x00000005 
+ 00022112  0x000057f8 increase  0x00000001 , 0x00000006 
+ 00022113  0x000057f9 copy  0x00000006 , 0x00000011 
+ 00022114  0x000057fa ifetch  0x00000001 , 0x00000006 
+ 00022115  0x000057fb rtn 
+ 00022116  0x000057ff force  0x00000000 , 0x00000002 
+ 00022117  0x00005800 force  0x00000001 , 0x00000001 
+ 00022118  0x00005803 bpatchx  0x00000065 , 0x0000402c 
+ 00022119  0x00005804 storet  0x00000001 , 0x000043dd 
+ 00022120  0x00005805 fetcht  0x00000001 , 0x00000456 
+ 00022121  0x00005806 set1  0x00000005 , 0x00000002 
+ 00022122  0x00005807 and  0x00000002 , 0x000000fc , 0x0000003f 
+ 00022123  0x00005808 ior  0x00000001 , 0x0000003f 
+ 00022124  0x00005809 store  0x00000001 , 0x00000456 
+ 00022125  0x0000580a and_into  0x0000001f , 0x0000003f 
+ 00022126  0x0000580b isolate1  0x00000029 , 0x00000000 
+ 00022127  0x0000580c setflag  0x00000001 , 0x00000004 , 0x0000003f 
+ 00022128  0x0000580d store  0x00000001 , 0x000043dc 
+ 00022129  0x0000580f fetch  0x00000001 , 0x000043dc 
+ 00022130  0x00005810 compare  0x00000001 , 0x00000001 , 0x00000003 
+ 00022131  0x00005811 nbranch  0x00005676 , 0x00000001 
+ 00022132  0x00005812 fetch  0x00000001 , 0x000043dd 
+ 00022133  0x00005813 rtn  0x00000034 
+ 00022134  0x00005815 fetch  0x00000001 , 0x0000043f 
+ 00022135  0x00005816 rtnbit0  0x00000004 
+ 00022136  0x00005817 call  0x0000748d 
+ 00022137  0x00005818 branch  0x000073e3 
+ 00022138  0x0000581c arg  0x00000000 , 0x00000007 
+ 00022139  0x0000581d branch  0x00002c32 
+ 00022140  0x00005820 arg  0x00000000 , 0x00000007 
+ 00022141  0x00005821 branch  0x00002c36 
+ 00022142  0x00005825 bpatchx  0x00000066 , 0x0000402c 
+ 00022143  0x00005826 rtnmark1  0x0000000f 
+ 00022144  0x00005827 call  0x00005890 
+ 00022145  0x00005828 nrtn  0x00000034 
+ 00022146  0x00005829 fetch  0x00000001 , 0x000002d9 
+ 00022147  0x0000582a and  0x0000003f , 0x00000003 , 0x0000003f 
+ 00022148  0x0000582b store  0x00000001 , 0x0000450c 
+ 00022149  0x0000582c ifetch  0x00000001 , 0x00000006 
+ 00022150  0x0000582d and  0x0000003f , 0x0000001f , 0x0000003f 
+ 00022151  0x0000582e store  0x00000001 , 0x0000450b 
+ 00022152  0x0000582f rtn  0x00000034 
+ 00022153  0x00005830 copy  0x00000006 , 0x0000003f 
+ 00022154  0x00005831 store  0x00000002 , 0x0000450d 
+ 00022155  0x00005832 fetch  0x00000001 , 0x0000450c 
+ 00022156  0x00005833 beq  0x00000003 , 0x00005c64 
+ 00022157  0x00005835 call  0x0000569a 
+ 00022158  0x00005836 nbranch  0x0000567a , 0x00000028 
+ 00022159  0x00005837 call  0x0000567c 
+ 00022160  0x00005838 fetch  0x00000002 , 0x0000450d 
+ 00022161  0x00005839 copy  0x0000003f , 0x00000006 
+ 00022162  0x0000583a ifetch  0x00000002 , 0x00000006 
+ 00022163  0x0000583b store  0x00000002 , 0x000044fc 
+ 00022164  0x0000583c bpatchx  0x00000067 , 0x0000402c 
+ 00022165  0x0000583d ifetch  0x00000002 , 0x00000006 
+ 00022166  0x0000583e beq  0x00000004 , 0x000058ab 
+ 00022167  0x0000583f beq  0x00000006 , 0x00005af4 
+ 00022168  0x00005840 beq  0x00000005 , 0x00005ab6 
+ 00022169  0x00005841 rtn 
+ 00022170  0x00005845 fetch  0x00000001 , 0x0000450c 
+ 00022171  0x00005846 beq  0x00000002 , 0x000056a9 
+ 00022172  0x00005847 beq  0x00000001 , 0x000056c1 
+ 00022173  0x00005848 rtn 
+ 00022174  0x0000584e call  0x00007fe7 
+ 00022175  0x0000584f arg  0x00000004 , 0x00000002 
+ 00022176  0x00005850 isub  0x0000003f , 0x0000003e 
+ 00022177  0x00005851 rtn  0x00000005 
+ 00022178  0x00005852 arg  0x00000005 , 0x00000002 
+ 00022179  0x00005853 isub  0x0000003f , 0x0000003e 
+ 00022180  0x00005854 rtn  0x00000005 
+ 00022181  0x00005855 arg  0x00000006 , 0x00000002 
+ 00022182  0x00005856 isub  0x0000003f , 0x0000003e 
+ 00022183  0x00005857 rtn  0x00000005 
+ 00022184  0x00005858 branch  0x00007fe9 
+ 00022185  0x0000585c fetch  0x00000002 , 0x0000450d 
+ 00022186  0x0000585d copy  0x0000003f , 0x00000006 
+ 00022187  0x0000585e ifetch  0x00000002 , 0x00000006 
+ 00022188  0x0000585f store  0x00000002 , 0x000044fc 
+ 00022189  0x00005860 ifetch  0x00000002 , 0x00000006 
+ 00022190  0x00005861 call  0x0000569e 
+ 00022191  0x00005862 nrtn  0x00000028 
+ 00022192  0x00005863 fetcht  0x00000001 , 0x0000450b 
+ 00022193  0x00005864 storet  0x00000001 , 0x000044fe 
+ 00022194  0x00005865 fetch  0x00000002 , 0x000044fc 
+ 00022195  0x00005866 increase  0x00000004 , 0x0000003f 
+ 00022196  0x00005867 isub  0x00000002 , 0x0000003e 
+ 00022197  0x00005868 branch  0x00007fe7 , 0x00000005 
+ 00022198  0x00005869 fetch  0x00000001 , 0x0000450b 
+ 00022199  0x0000586a copy  0x0000003f , 0x00000039 
+ 00022200  0x0000586b arg  0x00000311 , 0x00000005 
+ 00022201  0x0000586c fetch  0x00000002 , 0x0000450d 
+ 00022202  0x0000586d copy  0x0000003f , 0x00000006 
+ 00022203  0x0000586e call  0x00007f01 
+ 00022204  0x0000586f branch  0x00007fe9 
+ 00022205  0x00005875 call  0x00007fe7 
+ 00022206  0x00005876 fetch  0x00000001 , 0x000044fe 
+ 00022207  0x00005877 nrtn  0x00000034 
+ 00022208  0x00005878 branch  0x00007fe9 
+ 00022209  0x0000587b call  0x000056bd 
+ 00022210  0x0000587c nrtn  0x00000028 
+ 00022211  0x0000587d fetch  0x00000001 , 0x000044fe 
+ 00022212  0x0000587e arg  0x00000311 , 0x00000005 
+ 00022213  0x0000587f iadd  0x00000005 , 0x00000011 
+ 00022214  0x00005880 fetcht  0x00000001 , 0x0000450b 
+ 00022215  0x00005881 iadd  0x00000002 , 0x0000003f 
+ 00022216  0x00005882 store  0x00000001 , 0x000044fe 
+ 00022217  0x00005883 fetch  0x00000001 , 0x0000450b 
+ 00022218  0x00005884 copy  0x0000003f , 0x00000039 
+ 00022219  0x00005885 copy  0x00000011 , 0x00000005 
+ 00022220  0x00005886 fetch  0x00000002 , 0x0000450d 
+ 00022221  0x00005887 copy  0x0000003f , 0x00000006 
+ 00022222  0x00005888 call  0x00007ef4 
+ 00022223  0x00005889 setarg  0x00000311 
+ 00022224  0x0000588a store  0x00000002 , 0x0000450d 
+ 00022225  0x0000588b fetch  0x00000002 , 0x000044fc 
+ 00022226  0x0000588c increase  0x00000004 , 0x0000003f 
+ 00022227  0x0000588d fetcht  0x00000001 , 0x000044fe 
+ 00022228  0x0000588e isub  0x00000002 , 0x0000003e 
+ 00022229  0x0000588f branch  0x00007fe7 , 0x00000005 
+ 00022230  0x00005890 branch  0x00007fe9 
+ 00022231  0x00005897 call  0x00007ea5 
+ 00022232  0x00005898 arg  0x0000445e , 0x00000005 
+ 00022233  0x0000589a fetch  0x00000002 , 0x000044fc 
+ 00022234  0x0000589b increase  0xfffffffb , 0x0000003f 
+ 00022235  0x0000589d istore  0x00000001 , 0x00000005 
+ 00022236  0x0000589e copy  0x0000003f , 0x00000039 
+ 00022237  0x0000589f call  0x00007e9f 
+ 00022238  0x000058a0 branch  0x00007ef4 
+ 00022239  0x000058a3 call  0x00007ea5 
+ 00022240  0x000058a4 arg  0x00004471 , 0x00000005 
+ 00022241  0x000058a5 branch  0x000056d9 
+ 00022242  0x000058aa fetch  0x00000002 , 0x000041f9 
+ 00022243  0x000058ab branch  0x00007f9c 
+ 00022244  0x000058ae fetcht  0x00000004 , 0x0000045b 
+ 00022245  0x000058af call  0x00002a7b 
+ 00022246  0x000058b0 isub  0x00000002 , 0x0000000b 
+ 00022247  0x000058b1 deposit  0x0000000b 
+ 00022248  0x000058b2 fetcht  0x00000002 , 0x0000046d 
+ 00022249  0x000058b3 lshift4  0x00000002 , 0x00000002 
+ 00022250  0x000058b4 lshift  0x00000002 , 0x00000002 
+ 00022251  0x000058b5 isub  0x00000002 , 0x0000003f 
+ 00022252  0x000058b6 rtn 
+ 00022253  0x000058b9 call  0x00002a7b 
+ 00022254  0x000058ba store  0x00000004 , 0x0000045b 
+ 00022255  0x000058bb rtn 
+ 00022256  0x000058bf jam  0x00000024 , 0x00000016 
+ 00022257  0x000058c0 jam  0x00000000 , 0x00000ac2 
+ 00022258  0x000058c2 bpatchx  0x00000068 , 0x0000402d 
+ 00022259  0x000058c3 fetch  0x00000001 , 0x0000436e 
+ 00022260  0x000058c4 rtn  0x00000034 
+ 00022261  0x000058c5 arg  0x00000000 , 0x00000007 
+ 00022262  0x000058c6 call  0x00007f16 
+ 00022263  0x000058c7 nrtn  0x00000034 
+ 00022264  0x000058c8 bpatchx  0x00000069 , 0x0000402d 
+ 00022265  0x000058ca disable  0x00000029 
+ 00022266  0x000058cb enable  0x00000010 
+ 00022267  0x000058cc call  0x00005572 
+ 00022268  0x000058cd call  0x00005422 
+ 00022269  0x000058ce call  0x000054e9 
+ 00022270  0x000058cf nbranch  0x00005706 , 0x0000002d 
+ 00022271  0x000058d0 fetch  0x00000001 , 0x00000003 
+ 00022272  0x000058d1 increase  0x00000001 , 0x0000003f 
+ 00022273  0x000058d2 store  0x00000001 , 0x00000003 
+ 00022274  0x000058d3 fetch  0x00000001 , 0x000002d9 
+ 00022275  0x000058d4 and  0x0000003f , 0x0000000f , 0x0000003f 
+ 00022276  0x000058d5 beq  0x00000003 , 0x0000551c 
+ 00022277  0x000058d6 beq  0x00000005 , 0x00005728 
+ 00022278  0x000058d8 bpatchx  0x0000006a , 0x0000402d 
+ 00022279  0x000058d9 random  0x0000003f 
+ 00022280  0x000058da arg  0x000001ff , 0x00000002 
+ 00022281  0x000058db iand  0x00000002 , 0x0000003f 
+ 00022282  0x000058dc add  0x0000003f , 0x000000fa , 0x0000003f 
+ 00022283  0x000058dd call  0x00003cbe 
+ 00022284  0x000058de fetch  0x00000001 , 0x00000ac2 
+ 00022285  0x000058df fetcht  0x00000001 , 0x0000448d 
+ 00022286  0x000058e0 isub  0x00000002 , 0x0000003e 
+ 00022287  0x000058e1 nbranch  0x000056f2 , 0x00000005 
+ 00022288  0x000058e2 arg  0x00000000 , 0x00000007 
+ 00022289  0x000058e3 fetch  0x00000002 , 0x00004482 
+ 00022290  0x000058e4 branch  0x00007f08 
+ 00022291  0x000058e8 bpatchx  0x0000006b , 0x0000402d 
+ 00022292  0x000058e9 fetch  0x00000001 , 0x00000476 
+ 00022293  0x000058ea call  0x000053fc 
+ 00022294  0x000058eb fetch  0x00000002 , 0x00000441 
+ 00022295  0x000058ec imul32  0x00000002 , 0x0000003f 
+ 00022296  0x000058ed arg  0x00000177 , 0x00000002 
+ 00022297  0x000058ee imul32  0x00000002 , 0x0000003f 
+ 00022298  0x000058ef arg  0x000186a0 , 0x00000002 
+ 00022299  0x000058f0 idiv  0x00000002 
+ 00022300  0x000058f1 fetch  0x00000001 , 0x0000046a 
+ 00022301  0x000058f2 arg  0x00004e20 , 0x00000002 
+ 00022302  0x000058f3 imul32  0x00000002 , 0x0000003f 
+ 00022303  0x000058f4 iadd  0x00000002 , 0x0000003f 
+ 00022304  0x000058f5 store  0x00000004 , 0x000044e5 
+ 00022305  0x000058f6 bpatchx  0x0000006c , 0x0000402d 
+ 00022306  0x000058f7 fetch  0x00000002 , 0x000040c1 
+ 00022307  0x000058f8 call  0x00007f86 
+ 00022308  0x000058f9 quotient  0x00000002 
+ 00022309  0x000058fa iadd  0x00000002 , 0x0000003f 
+ 00022310  0x000058fb store  0x00000002 , 0x0000044d 
+ 00022311  0x000058fc rtn 
+ 00022312  0x000058ff bpatchx  0x0000006d , 0x0000402d 
+ 00022313  0x00005900 fetch  0x00000006 , 0x000002e1 
+ 00022314  0x00005901 fetcht  0x00000006 , 0x000044a0 
+ 00022315  0x00005902 isub  0x00000002 , 0x0000003e 
+ 00022316  0x00005903 nrtn  0x00000005 
+ 00022317  0x00005904 call  0x00005619 
+ 00022318  0x00005905 copy  0x00000011 , 0x0000003f 
+ 00022319  0x00005906 store  0x00000001 , 0x0000448e 
+ 00022320  0x00005907 fetch  0x00000007 , 0x000002ee 
+ 00022321  0x00005908 store  0x00000007 , 0x00000101 
+ 00022322  0x00005909 ifetch  0x00000008 , 0x00000006 
+ 00022323  0x0000590a istore  0x00000008 , 0x00000005 
+ 00022324  0x0000590b fetch  0x00000006 , 0x000002db 
+ 00022325  0x0000590c store  0x00000006 , 0x0000044f 
+ 00022326  0x0000590d increase  0x00000006 , 0x00000006 
+ 00022327  0x0000590e ifetch  0x00000008 , 0x00000006 
+ 00022328  0x0000590f store  0x00000008 , 0x00000463 
+ 00022329  0x00005910 ifetcht  0x00000002 , 0x00000006 
+ 00022330  0x00005911 bpatchx  0x0000006e , 0x0000402d 
+ 00022331  0x00005912 lshift2  0x00000002 , 0x00000002 
+ 00022332  0x00005913 ifetch  0x00000002 , 0x00000006 
+ 00022333  0x00005914 lshift2  0x0000003f , 0x0000003f 
+ 00022334  0x00005915 store  0x00000002 , 0x00000441 
+ 00022335  0x00005916 store  0x00000004 , 0x00000443 
+ 00022336  0x00005917 isub  0x00000002 , 0x0000003f 
+ 00022337  0x00005918 add  0x0000003f , 0xfffffffe , 0x00000028 
+ 00022338  0x00005919 ifetch  0x00000009 , 0x00000006 
+ 00022339  0x0000591a store  0x00000009 , 0x0000046b 
+ 00022340  0x0000591b bpatchx  0x0000006f , 0x0000402d 
+ 00022341  0x0000591c ifetch  0x00000001 , 0x00000006 
+ 00022342  0x0000591d rshift4  0x0000003f , 0x00000002 
+ 00022343  0x0000591e rshift  0x00000002 , 0x00000002 
+ 00022344  0x0000591f storet  0x00000001 , 0x00000476 
+ 00022345  0x00005920 and_into  0x0000001f , 0x0000003f 
+ 00022346  0x00005921 store  0x00000001 , 0x00000458 
+ 00022347  0x00005922 call  0x00005713 
+ 00022348  0x00005923 call  0x0000545b 
+ 00022349  0x00005924 call  0x0000534c 
+ 00022350  0x00005925 call  0x0000223b 
+ 00022351  0x00005926 nrtn  0x00000005 
+ 00022352  0x00005927 bpatchx  0x00000070 , 0x0000402e 
+ 00022353  0x00005928 call  0x00002841 
+ 00022354  0x00005929 call  0x00005ad3 
+ 00022355  0x0000592a jam  0x00000014 , 0x00000a99 
+ 00022356  0x0000592b call  0x00007d86 
+ 00022357  0x0000592c branch  0x00002223 
+ 00022358  0x00005930 bpatchx  0x00000071 , 0x0000402e 
+ 00022359  0x00005931 fetch  0x00000002 , 0x0000445a 
+ 00022360  0x00005932 iforce  0x00000012 
+ 00022361  0x00005933 fetch  0x00000002 , 0x0000445c 
+ 00022362  0x00005934 iforce  0x00000013 
+ 00022363  0x00005935 fetch  0x00000002 , 0x000044bc 
+ 00022364  0x00005936 iforce  0x00000006 
+ 00022365  0x00005937 enable  0x00000028 
+ 00022366  0x00005938 rtn 
+ 00022367  0x0000593c ifetch  0x00000002 , 0x00000006 
+ 00022368  0x0000593d rtn  0x00000034 
+ 00022369  0x0000593e isub  0x00000012 , 0x0000003e 
+ 00022370  0x0000593f nrtn  0x00000002 
+ 00022371  0x00005940 isub  0x00000013 , 0x0000003e 
+ 00022372  0x00005941 rtn  0x00000005 
+ 00022373  0x00005942 branch  0x00005768 , 0x00000002 
+ 00022374  0x00005943 force  0x00000001 , 0x0000003e 
+ 00022375  0x00005944 rtn 
+ 00022376  0x00005946 force  0x00000000 , 0x0000003f 
+ 00022377  0x00005947 rtn 
+ 00022378  0x0000594c call  0x0000576d 
+ 00022379  0x0000594d branch  0x00005779 , 0x00000005 
+ 00022380  0x0000594e rtn 
+ 00022381  0x00005951 bpatchx  0x00000072 , 0x0000402e 
+ 00022382  0x00005952 fetch  0x00000002 , 0x000044bc 
+ 00022383  0x00005953 iforce  0x00000006 
+ 00022384  0x00005955 ifetch  0x00000002 , 0x00000006 
+ 00022385  0x00005956 rtn  0x00000034 
+ 00022386  0x00005957 isub  0x00000002 , 0x0000003e 
+ 00022387  0x00005958 rtn  0x00000005 
+ 00022388  0x00005959 ifetch  0x00000001 , 0x00000006 
+ 00022389  0x0000595a iadd  0x00000006 , 0x00000006 
+ 00022390  0x0000595b ifetch  0x00000001 , 0x00000006 
+ 00022391  0x0000595c iadd  0x00000006 , 0x00000006 
+ 00022392  0x0000595d branch  0x00005770 
+ 00022393  0x0000595f ifetch  0x00000001 , 0x00000006 
+ 00022394  0x00005960 iadd  0x00000006 , 0x00000006 
+ 00022395  0x00005961 rtn 
+ 00022396  0x00005966 bpatchx  0x00000073 , 0x0000402e 
+ 00022397  0x00005967 fetch  0x00000002 , 0x000044bc 
+ 00022398  0x00005968 iforce  0x00000006 
+ 00022399  0x0000596a ifetch  0x00000002 , 0x00000006 
+ 00022400  0x0000596b rtn  0x00000034 
+ 00022401  0x0000596c ifetch  0x00000001 , 0x00000006 
+ 00022402  0x0000596d iadd  0x00000006 , 0x00000006 
+ 00022403  0x0000596e increase  0xfffffffe , 0x00000006 
+ 00022404  0x0000596f ifetch  0x00000002 , 0x00000006 
+ 00022405  0x00005970 isub  0x00000002 , 0x0000003e 
+ 00022406  0x00005971 rtn  0x00000005 
+ 00022407  0x00005972 ifetch  0x00000001 , 0x00000006 
+ 00022408  0x00005973 iadd  0x00000006 , 0x00000006 
+ 00022409  0x00005974 branch  0x0000577f 
+ 00022410  0x00005979 fetch  0x00000002 , 0x0000049c 
+ 00022411  0x0000597a branch  0x0000578e 
+ 00022412  0x0000597d bpatchx  0x00000074 , 0x0000402e 
+ 00022413  0x0000597e fetch  0x00000002 , 0x000044bc 
+ 00022414  0x00005980 iforce  0x00000006 
+ 00022415  0x00005981 copy  0x00000002 , 0x00000011 
+ 00022416  0x00005983 ifetch  0x00000002 , 0x00000006 
+ 00022417  0x00005984 branch  0x00005799 , 0x00000034 
+ 00022418  0x00005985 isub  0x00000011 , 0x0000003e 
+ 00022419  0x00005986 branch  0x0000579a , 0x00000005 
+ 00022420  0x00005987 ifetch  0x00000001 , 0x00000006 
+ 00022421  0x00005988 iadd  0x00000006 , 0x00000006 
+ 00022422  0x00005989 ifetch  0x00000001 , 0x00000006 
+ 00022423  0x0000598a iadd  0x00000006 , 0x00000006 
+ 00022424  0x0000598b branch  0x00005790 
+ 00022425  0x0000598d branch  0x00007fef 
+ 00022426  0x00005990 ifetch  0x00000001 , 0x00000006 
+ 00022427  0x00005991 store  0x00000001 , 0x000004a2 
+ 00022428  0x00005992 copy  0x0000003f , 0x00000039 
+ 00022429  0x00005993 arg  0x000004a3 , 0x00000005 
+ 00022430  0x00005994 call  0x00007ef4 
+ 00022431  0x00005995 ifetch  0x00000001 , 0x00000006 
+ 00022432  0x00005996 store  0x00000001 , 0x000004b3 
+ 00022433  0x00005997 call  0x00007ea5 
+ 00022434  0x00005998 branch  0x00007ff1 
+ 00022435  0x0000599c bpatchx  0x00000075 , 0x0000402e 
+ 00022436  0x0000599d call  0x000057a6 
+ 00022437  0x0000599e branch  0x000057b8 
+ 00022438  0x000059a1 arg  0x00002a00 , 0x00000002 
+ 00022439  0x000059a2 call  0x0000577c 
+ 00022440  0x000059a3 rtn  0x00000034 
+ 00022441  0x000059a4 ifetch  0x00000001 , 0x00000006 
+ 00022442  0x000059a5 copy  0x00000006 , 0x00000005 
+ 00022443  0x000059a6 fetcht  0x00000001 , 0x000043af 
+ 00022444  0x000059a7 copy  0x00000002 , 0x00000039 
+ 00022445  0x000059a8 isub  0x00000002 , 0x0000003e 
+ 00022446  0x000059a9 nbranch  0x000057b5 , 0x00000002 
+ 00022447  0x000059aa isub  0x00000002 , 0x00000002 
+ 00022448  0x000059ab arg  0x000043b0 , 0x00000006 
+ 00022449  0x000059ac call  0x00007f01 
+ 00022450  0x000059ad copy  0x00000002 , 0x00000039 
+ 00022451  0x000059ae ncall  0x000057f0 , 0x00000005 
+ 00022452  0x000059af rtn 
+ 00022453  0x000059b1 copy  0x0000003f , 0x00000039 
+ 00022454  0x000059b2 arg  0x000043b0 , 0x00000006 
+ 00022455  0x000059b3 branch  0x00007ef4 
+ 00022456  0x000059b7 arg  0x0000438f , 0x00000013 
+ 00022457  0x000059b8 arg  0x00004370 , 0x00000011 
+ 00022458  0x000059b9 call  0x000057c5 
+ 00022459  0x000059ba setarg  0x00000000 
+ 00022460  0x000059bb setflag  0x00000028 , 0x00000000 , 0x0000003f 
+ 00022461  0x000059bc store  0x00000001 , 0x00000a9a 
+ 00022462  0x000059bd arg  0x000043af , 0x00000013 
+ 00022463  0x000059be arg  0x00004390 , 0x00000011 
+ 00022464  0x000059bf call  0x000057c5 
+ 00022465  0x000059c0 rtn  0x00000028 
+ 00022466  0x000059c1 fetch  0x00000001 , 0x00000a9a 
+ 00022467  0x000059c2 branch  0x00002a8c , 0x00000034 
+ 00022468  0x000059c3 rtn 
+ 00022469  0x000059c7 bpatchx  0x00000076 , 0x0000402e 
+ 00022470  0x000059c8 call  0x00007fe7 
+ 00022471  0x000059c9 call  0x00007eda 
+ 00022472  0x000059ca arg  0x00000000 , 0x00000012 
+ 00022473  0x000059cb arg  0x00000ac3 , 0x00000005 
+ 00022474  0x000059cc call  0x000057df 
+ 00022475  0x000059cd fetch  0x00000001 , 0x000043af 
+ 00022476  0x000059ce add  0x0000003f , 0x00000001 , 0x00000002 
+ 00022477  0x000059cf iadd  0x00000012 , 0x00000011 
+ 00022478  0x000059d0 increase  0x00000002 , 0x00000011 
+ 00022479  0x000059d1 sub  0x00000011 , 0x0000001f , 0x0000003e 
+ 00022480  0x000059d2 nbranch  0x000057dd , 0x00000002 
+ 00022481  0x000059d3 istoret  0x00000001 , 0x00000005 
+ 00022482  0x000059d4 arg  0x00000009 , 0x00000002 
+ 00022483  0x000059d5 istoret  0x00000001 , 0x00000005 
+ 00022484  0x000059d6 iforce  0x00000039 
+ 00022485  0x000059d7 call  0x00007ef4 
+ 00022486  0x000059d8 copy  0x00000011 , 0x00000012 
+ 00022487  0x000059da deposit  0x00000012 
+ 00022488  0x000059db store  0x00000001 , 0x00000ac2 
+ 00022489  0x000059dc arg  0x00000ac2 , 0x00000006 
+ 00022490  0x000059dd setarg  0xffffffe0 
+ 00022491  0x000059de iadd  0x00000013 , 0x00000005 
+ 00022492  0x000059df branch  0x00007ebd 
+ 00022493  0x000059e2 call  0x00007fe9 
+ 00022494  0x000059e3 branch  0x000057d7 
+ 00022495  0x000059e6 ifetch  0x00000001 , 0x00000011 
+ 00022496  0x000059e7 rtn  0x00000034 
+ 00022497  0x000059e8 pincrease  0x00000001 
+ 00022498  0x000059e9 ifetcht  0x00000001 , 0x00000006 
+ 00022499  0x000059ea sub  0x00000002 , 0x00000009 , 0x0000003e 
+ 00022500  0x000059eb branch  0x000057ee , 0x00000005 
+ 00022501  0x000059ec iadd  0x00000012 , 0x00000012 
+ 00022502  0x000059ed copy  0x00000011 , 0x00000006 
+ 00022503  0x000059ee iforce  0x00000039 
+ 00022504  0x000059ef call  0x00007ef4 
+ 00022505  0x000059f0 copy  0x00000006 , 0x00000011 
+ 00022506  0x000059f2 deposit  0x00000011 
+ 00022507  0x000059f3 isub  0x00000013 , 0x0000003e 
+ 00022508  0x000059f4 rtn  0x00000002 
+ 00022509  0x000059f5 branch  0x000057df 
+ 00022510  0x000059f8 iadd  0x00000011 , 0x00000011 
+ 00022511  0x000059f9 branch  0x000057ea 
+ 00022512  0x000059fd setarg  0x00000020 
+ 00022513  0x000059fe istore  0x00000001 , 0x00000005 
+ 00022514  0x000059ff loop  0x000057f0 
+ 00022515  0x00005a00 rtn 
+ 00022516  0x00005a04 bpatchx  0x00000077 , 0x0000402e 
+ 00022517  0x00005a05 disable  0x0000002b 
+ 00022518  0x00005a06 branch  0x000057f8 , 0x0000002e 
+ 00022519  0x00005a07 nbranch  0x00005806 , 0x0000002d 
+ 00022520  0x00005a09 call  0x00002bcb 
+ 00022521  0x00005a0a fetch  0x00000002 , 0x000040c1 
+ 00022522  0x00005a0b store  0x00000002 , 0x0000044d 
+ 00022523  0x00005a0d nbranch  0x00002bde , 0x0000002d 
+ 00022524  0x00005a0e bmark1  0x0000000f , 0x00002bde 
+ 00022525  0x00005a10 fetch  0x00000001 , 0x0000450b 
+ 00022526  0x00005a11 nbranch  0x00002bde , 0x00000034 
+ 00022527  0x00005a12 fetch  0x00000001 , 0x000043dd 
+ 00022528  0x00005a13 nbranch  0x00002bde , 0x00000034 
+ 00022529  0x00005a15 fetch  0x00000001 , 0x000044e9 
+ 00022530  0x00005a16 bbit1  0x00000005 , 0x00002bde 
+ 00022531  0x00005a18 fetch  0x00000001 , 0x0000043f 
+ 00022532  0x00005a19 bbit1  0x00000005 , 0x00002bde 
+ 00022533  0x00005a1a branch  0x00002bc0 
+ 00022534  0x00005a1d fetcht  0x00000002 , 0x000040c1 
+ 00022535  0x00005a1e rshift  0x00000002 , 0x00000002 
+ 00022536  0x00005a1f fetch  0x00000002 , 0x0000044d 
+ 00022537  0x00005a20 iadd  0x00000002 , 0x0000003f 
+ 00022538  0x00005a21 store  0x00000002 , 0x0000044d 
+ 00022539  0x00005a22 branch  0x00002bd6 
+ 00022540  0x00005a26 arg  0x00000000 , 0x00000007 
+ 00022541  0x00005a27 branch  0x00005824 
+ 00022542  0x00005a2a arg  0x00000000 , 0x00000007 
+ 00022543  0x00005a2b branch  0x00005828 
+ 00022544  0x00005a2e arg  0x00000001 , 0x00000007 
+ 00022545  0x00005a2f branch  0x00005824 
+ 00022546  0x00005a32 arg  0x00000001 , 0x00000007 
+ 00022547  0x00005a33 branch  0x00005828 
+ 00022548  0x00005a36 arg  0x00000002 , 0x00000007 
+ 00022549  0x00005a37 branch  0x00005824 
+ 00022550  0x00005a3a arg  0x00000002 , 0x00000007 
+ 00022551  0x00005a3b branch  0x00005828 
+ 00022552  0x00005a3e arg  0x00000003 , 0x00000007 
+ 00022553  0x00005a3f branch  0x00005824 
+ 00022554  0x00005a42 arg  0x00000003 , 0x00000007 
+ 00022555  0x00005a43 branch  0x00005828 
+ 00022556  0x00005a46 arg  0x00000004 , 0x00000007 
+ 00022557  0x00005a47 branch  0x00005824 
+ 00022558  0x00005a4a arg  0x00000004 , 0x00000007 
+ 00022559  0x00005a4b branch  0x00005828 
+ 00022560  0x00005a4e arg  0x00000005 , 0x00000007 
+ 00022561  0x00005a4f branch  0x00005824 
+ 00022562  0x00005a52 arg  0x00000005 , 0x00000007 
+ 00022563  0x00005a53 branch  0x00005828 
+ 00022564  0x00005a57 fetch  0x00000001 , 0x000044e9 
+ 00022565  0x00005a58 qset1  0x0000003f 
+ 00022566  0x00005a59 store  0x00000001 , 0x000044e9 
+ 00022567  0x00005a5a rtn 
+ 00022568  0x00005a5d fetch  0x00000001 , 0x000044e9 
+ 00022569  0x00005a5e qset0  0x0000003f 
+ 00022570  0x00005a5f store  0x00000001 , 0x000044e9 
+ 00022571  0x00005a60 rtn 
+ 00022572  0x00005a63 setarg  0x00112233 
+ 00022573  0x00005a64 store  0x00000003 , 0x000044ea 
+ 00022574  0x00005a65 setarg  0x00445566 
+ 00022575  0x00005a66 istore  0x00000003 , 0x00000005 
+ 00022576  0x00005a67 setarg  0x00778899 
+ 00022577  0x00005a68 istore  0x00000003 , 0x00000005 
+ 00022578  0x00005a69 setarg  0x00001122 
+ 00022579  0x00005a6a istore  0x00000003 , 0x00000005 
+ 00022580  0x00005a6b setarg  0x00334455 
+ 00022581  0x00005a6c istore  0x00000003 , 0x00000005 
+ 00022582  0x00005a6d setarg  0x00000066 
+ 00022583  0x00005a6e istore  0x00000001 , 0x00000005 
+ 00022584  0x00005a6f rtn 
+ 00022585  0x00005a73 setarg  0x01000302 
+ 00022586  0x00005a74 store  0x00000004 , 0x00004453 
+ 00022587  0x00005a75 setarg  0x00010010 
+ 00022588  0x00005a76 store  0x00000003 , 0x00004457 
+ 00022589  0x00005a77 jam  0x00000001 , 0x000044c6 
+ 00022590  0x00005a78 rtn 
+ 00022591  0x00005a7d arg  0x00000000 , 0x00000011 
+ 00022592  0x00005a7e arg  0x00000001 , 0x00000001 
+ 00022593  0x00005a7f branch  0x00005850 
+ 00022594  0x00005a84 arg  0x00000003 , 0x00000001 
+ 00022595  0x00005a85 call  0x00005850 
+ 00022596  0x00005a86 copy  0x00000012 , 0x0000003f 
+ 00022597  0x00005a87 istore  0x00000001 , 0x00000005 
+ 00022598  0x00005a88 rtn 
+ 00022599  0x00005a8d force  0x00000002 , 0x00000001 
+ 00022600  0x00005a8e increase  0x00000004 , 0x00000011 
+ 00022601  0x00005a8f call  0x00005850 
+ 00022602  0x00005a90 increase  0xfffffffc , 0x00000011 
+ 00022603  0x00005a91 copy  0x00000011 , 0x0000003f 
+ 00022604  0x00005a92 istore  0x00000002 , 0x00000005 
+ 00022605  0x00005a93 copy  0x00000012 , 0x0000003f 
+ 00022606  0x00005a94 istore  0x00000002 , 0x00000005 
+ 00022607  0x00005a95 rtn 
+ 00022608  0x00005a9a sub  0x00000011 , 0x000000f0 , 0x0000003e 
+ 00022609  0x00005a9b nbranch  0x00002a8c , 0x00000002 
+ 00022610  0x00005a9c fetch  0x00000001 , 0x000044ff 
+ 00022611  0x00005a9d arg  0x00000001 , 0x00000002 
+ 00022612  0x00005a9e arg  0x00000004 , 0x00000039 
+ 00022613  0x00005aa0 iand  0x00000002 , 0x0000003e 
+ 00022614  0x00005aa1 branch  0x0000585a , 0x00000005 
+ 00022615  0x00005aa2 lshift  0x00000002 , 0x00000002 
+ 00022616  0x00005aa3 loop  0x00005855 
+ 00022617  0x00005aa4 branch  0x00002a8c 
+ 00022618  0x00005aa6 ixor  0x00000002 , 0x0000003f 
+ 00022619  0x00005aa7 store  0x00000001 , 0x000044ff 
+ 00022620  0x00005aa8 sub  0x00000039 , 0x00000004 , 0x0000003f 
+ 00022621  0x00005aa9 lshift4  0x0000003f , 0x0000003f 
+ 00022622  0x00005aaa lshift4  0x0000003f , 0x0000003f 
+ 00022623  0x00005aab arg  0x00001800 , 0x00000002 
+ 00022624  0x00005aac iadd  0x00000002 , 0x00000002 
+ 00022625  0x00005aae arg  0x00000000 , 0x00000039 
+ 00022626  0x00005aaf arg  0x00004500 , 0x00000006 
+ 00022627  0x00005ab1 ifetch  0x00000002 , 0x00000006 
+ 00022628  0x00005ab2 branch  0x00005869 , 0x00000034 
+ 00022629  0x00005ab3 copy  0x00000039 , 0x0000003f 
+ 00022630  0x00005ab4 increase  0x00000001 , 0x00000039 
+ 00022631  0x00005ab5 bne  0x00000004 , 0x00005863 
+ 00022632  0x00005ab6 branch  0x00002a8c 
+ 00022633  0x00005aba increase  0xfffffffe , 0x00000006 
+ 00022634  0x00005abb istoret  0x00000002 , 0x00000006 
+ 00022635  0x00005abc copy  0x00000002 , 0x00000005 
+ 00022636  0x00005abd copy  0x00000011 , 0x0000003f 
+ 00022637  0x00005abe istore  0x00000001 , 0x00000005 
+ 00022638  0x00005abf setarg  0x00000000 
+ 00022639  0x00005ac0 istore  0x00000001 , 0x00000005 
+ 00022640  0x00005ac1 copy  0x00000001 , 0x0000003f 
+ 00022641  0x00005ac2 istore  0x00000001 , 0x00000005 
+ 00022642  0x00005ac3 rtn 
+ 00022643  0x00005ac8 fetch  0x00000002 , 0x00004500 
+ 00022644  0x00005ac9 copy  0x0000003f , 0x00000006 
+ 00022645  0x00005aca rtn 
+ 00022646  0x00005acd fetch  0x00000002 , 0x00004502 
+ 00022647  0x00005ace copy  0x0000003f , 0x00000006 
+ 00022648  0x00005acf rtn 
+ 00022649  0x00005ad2 call  0x0000587c 
+ 00022650  0x00005ad3 copy  0x0000003f , 0x00000006 
+ 00022651  0x00005ad4 rtn 
+ 00022652  0x00005ad6 fetch  0x00000002 , 0x00004506 
+ 00022653  0x00005ad7 nrtn  0x00000034 
+ 00022654  0x00005ad8 fetch  0x00000002 , 0x00004504 
+ 00022655  0x00005ad9 nrtn  0x00000034 
+ 00022656  0x00005ada fetch  0x00000002 , 0x00004502 
+ 00022657  0x00005adb nrtn  0x00000034 
+ 00022658  0x00005adc fetch  0x00000002 , 0x00004500 
+ 00022659  0x00005add rtn 
+ 00022660  0x00005ae0 call  0x00005873 
+ 00022661  0x00005ae1 increase  0x00000003 , 0x00000006 
+ 00022662  0x00005ae2 rtn 
+ 00022663  0x00005ae5 call  0x00005873 
+ 00022664  0x00005ae6 increase  0x00000007 , 0x00000006 
+ 00022665  0x00005ae7 rtn 
+ 00022666  0x00005aea call  0x00005879 
+ 00022667  0x00005aeb increase  0x00000007 , 0x00000006 
+ 00022668  0x00005aec rtn 
+ 00022669  0x00005aef call  0x00005879 
+ 00022670  0x00005af0 increase  0x00000003 , 0x00000006 
+ 00022671  0x00005af1 rtn 
+ 00022672  0x00005af6 fetch  0x00000002 , 0x00004506 
+ 00022673  0x00005af7 rtn 
+ 00022674  0x00005afb fetch  0x00000002 , 0x00004504 
+ 00022675  0x00005afc rtn 
+ 00022676  0x00005b00 fetch  0x00000002 , 0x00004500 
+ 00022677  0x00005b01 rtn 
+ 00022678  0x00005b05 fetch  0x00000002 , 0x00004500 
+ 00022679  0x00005b06 arg  0x00001800 , 0x00000002 
+ 00022680  0x00005b07 isub  0x00000002 , 0x0000003f 
+ 00022681  0x00005b08 rshift4  0x0000003f , 0x0000003f 
+ 00022682  0x00005b09 rshift4  0x0000003f , 0x00000007 
+ 00022683  0x00005b0a fetch  0x00000001 , 0x000044ff 
+ 00022684  0x00005b0b qset0  0x0000003f 
+ 00022685  0x00005b0c store  0x00000001 , 0x000044ff 
+ 00022686  0x00005b0d arg  0x00000000 , 0x00000039 
+ 00022687  0x00005b0f lshift  0x00000039 , 0x0000003f 
+ 00022688  0x00005b10 arg  0x00004502 , 0x00000002 
+ 00022689  0x00005b11 iadd  0x00000002 , 0x00000002 
+ 00022690  0x00005b12 ifetch  0x00000002 , 0x00000002 
+ 00022691  0x00005b13 increase  0xfffffffe , 0x00000002 
+ 00022692  0x00005b14 istore  0x00000002 , 0x00000002 
+ 00022693  0x00005b15 copy  0x00000039 , 0x0000003f 
+ 00022694  0x00005b16 increase  0x00000001 , 0x00000039 
+ 00022695  0x00005b17 bne  0x00000003 , 0x0000589f 
+ 00022696  0x00005b18 setarg  0x00000000 
+ 00022697  0x00005b19 istore  0x00000002 , 0x00000002 
+ 00022698  0x00005b1a rtn 
+ 00022699  0x00005b21 ifetch  0x00000003 , 0x00000006 
+ 00022700  0x00005b22 store  0x00000003 , 0x00000477 
+ 00022701  0x00005b23 beq  0x00000002 , 0x000058c1 
+ 00022702  0x00005b24 beq  0x00000003 , 0x000058c9 
+ 00022703  0x00005b25 beq  0x00000004 , 0x000058cc 
+ 00022704  0x00005b26 beq  0x00000006 , 0x000058f2 
+ 00022705  0x00005b27 beq  0x00000008 , 0x0000593f 
+ 00022706  0x00005b28 beq  0x0000000a , 0x000059bc 
+ 00022707  0x00005b29 beq  0x0000000c , 0x000059e4 
+ 00022708  0x00005b2a beq  0x00000010 , 0x000059fa 
+ 00022709  0x00005b2b beq  0x00000012 , 0x00005a2f 
+ 00022710  0x00005b2c beq  0x00000016 , 0x00005a48 
+ 00022711  0x00005b2d beq  0x00000018 , 0x00005a5b 
+ 00022712  0x00005b2e beq  0x00000052 , 0x00005a60 
+ 00022713  0x00005b2f rtn 
+ 00022714  0x00005b33 force  0x00000003 , 0x00000011 
+ 00022715  0x00005b34 call  0x00005a82 
+ 00022716  0x00005b35 setarg  0x00000002 
+ 00022717  0x00005b36 istore  0x00000001 , 0x00000005 
+ 00022718  0x00005b37 fetch  0x00000002 , 0x000044a6 
+ 00022719  0x00005b38 istore  0x00000002 , 0x00000005 
+ 00022720  0x00005b39 rtn 
+ 00022721  0x00005b3d call  0x000058c9 
+ 00022722  0x00005b3f force  0x00000003 , 0x00000011 
+ 00022723  0x00005b40 call  0x00005a82 
+ 00022724  0x00005b41 setarg  0x00000003 
+ 00022725  0x00005b42 istore  0x00000001 , 0x00000005 
+ 00022726  0x00005b43 fetch  0x00000002 , 0x000044a6 
+ 00022727  0x00005b44 istore  0x00000002 , 0x00000005 
+ 00022728  0x00005b45 rtn 
+ 00022729  0x00005b48 rshift8  0x0000003f , 0x0000003f 
+ 00022730  0x00005b49 store  0x00000002 , 0x000044a8 
+ 00022731  0x00005b4a rtn 
+ 00022732  0x00005b4d call  0x00005ab1 
+ 00022733  0x00005b4e call  0x00007fe7 
+ 00022734  0x00005b4f branch  0x000058cf 
+ 00022735  0x00005b52 arg  0x00000003 , 0x0000000b 
+ 00022736  0x00005b53 call  0x00005756 
+ 00022737  0x00005b55 call  0x0000575f 
+ 00022738  0x00005b56 branch  0x000058f0 , 0x00000034 
+ 00022739  0x00005b57 nbranch  0x000058ed , 0x00000002 
+ 00022740  0x00005b58 increase  0xfffffffe , 0x00000006 
+ 00022741  0x00005b59 call  0x00007ea5 
+ 00022742  0x00005b5a call  0x00007e9c 
+ 00022743  0x00005b5b nbranch  0x000058e1 , 0x00000028 
+ 00022744  0x00005b5c call  0x00007e85 
+ 00022745  0x00005b5d call  0x00007fe9 
+ 00022746  0x00005b5e force  0x00000014 , 0x00000011 
+ 00022747  0x00005b5f call  0x00005a82 
+ 00022748  0x00005b60 call  0x00007e95 
+ 00022749  0x00005b61 setarg  0x00000005 
+ 00022750  0x00005b62 istore  0x00000001 , 0x00000005 
+ 00022751  0x00005b63 setarg  0x00000001 
+ 00022752  0x00005b64 istore  0x00000001 , 0x00000005 
+ 00022753  0x00005b66 call  0x00007e9f 
+ 00022754  0x00005b67 ifetch  0x00000002 , 0x00000006 
+ 00022755  0x00005b68 istore  0x00000002 , 0x00000005 
+ 00022756  0x00005b69 ifetch  0x00000001 , 0x00000006 
+ 00022757  0x00005b6a copy  0x0000003f , 0x00000039 
+ 00022758  0x00005b6b call  0x00007f01 
+ 00022759  0x00005b6c call  0x00007ea2 
+ 00022760  0x00005b6d increase  0xffffffff , 0x0000000b 
+ 00022761  0x00005b6e branch  0x000058f0 , 0x00000005 
+ 00022762  0x00005b70 ifetch  0x00000001 , 0x00000006 
+ 00022763  0x00005b71 iadd  0x00000006 , 0x00000006 
+ 00022764  0x00005b72 branch  0x000058d1 
+ 00022765  0x00005b74 ifetch  0x00000001 , 0x00000006 
+ 00022766  0x00005b75 iadd  0x00000006 , 0x00000006 
+ 00022767  0x00005b76 branch  0x000058ea 
+ 00022768  0x00005b78 branch  0x00005a76 , 0x00000028 
+ 00022769  0x00005b79 branch  0x00005aa5 
+ 00022770  0x00005b7d call  0x00005ab1 
+ 00022771  0x00005b7e ifetch  0x00000002 , 0x00000006 
+ 00022772  0x00005b7f store  0x00000002 , 0x00004472 
+ 00022773  0x00005b80 call  0x00007ea5 
+ 00022774  0x00005b81 arg  0x0000445e , 0x00000005 
+ 00022775  0x00005b82 fetch  0x00000002 , 0x000044fc 
+ 00022776  0x00005b83 increase  0xfffffff9 , 0x0000003f 
+ 00022777  0x00005b84 call  0x000056db 
+ 00022778  0x00005b85 branch  0x00005905 
+ 00022779  0x00005b89 disable  0x00000028 
+ 00022780  0x00005b8a fetcht  0x00000002 , 0x0000445a 
+ 00022781  0x00005b8b fetch  0x00000002 , 0x0000445c 
+ 00022782  0x00005b8c isub  0x00000002 , 0x0000003e 
+ 00022783  0x00005b8d nbranch  0x00005902 , 0x00000002 
+ 00022784  0x00005b8e deposit  0x00000002 
+ 00022785  0x00005b8f rtnne  0x00000000 
+ 00022786  0x00005b91 enable  0x00000028 
+ 00022787  0x00005b92 jam  0x00000001 , 0x0000047a 
+ 00022788  0x00005b93 branch  0x00005a77 
+ 00022789  0x00005b97 call  0x000058fb 
+ 00022790  0x00005b98 rtn  0x00000028 
+ 00022791  0x00005b99 fetcht  0x00000002 , 0x00004472 
+ 00022792  0x00005b9a setarg  0x00002800 
+ 00022793  0x00005b9b isub  0x00000002 , 0x0000003e 
+ 00022794  0x00005b9c branch  0x0000590c , 0x00000005 
+ 00022795  0x00005b9d branch  0x00005a76 
+ 00022796  0x00005ba1 jam  0x00000000 , 0x000004b4 
+ 00022797  0x00005ba2 fetcht  0x00000002 , 0x0000445a 
+ 00022798  0x00005ba3 storet  0x00000002 , 0x00000aa2 
+ 00022799  0x00005ba4 call  0x0000578c 
+ 00022800  0x00005ba5 nbranch  0x00005a76 , 0x00000034 
+ 00022801  0x00005ba7 fetcht  0x00000002 , 0x00000aa2 
+ 00022802  0x00005ba8 call  0x0000578c 
+ 00022803  0x00005ba9 nbranch  0x00005925 , 0x00000034 
+ 00022804  0x00005baa copy  0x00000006 , 0x00000011 
+ 00022805  0x00005bab fetch  0x00000001 , 0x000004b3 
+ 00022806  0x00005bac copy  0x0000003f , 0x00000039 
+ 00022807  0x00005bad fetcht  0x00000001 , 0x0000445e 
+ 00022808  0x00005bae isub  0x00000002 , 0x0000003e 
+ 00022809  0x00005baf nbranch  0x00005921 , 0x00000005 
+ 00022810  0x00005bb0 arg  0x0000445f , 0x00000012 
+ 00022811  0x00005bb1 call  0x00007f88 
+ 00022812  0x00005bb3 branch  0x00005928 , 0x00000005 
+ 00022813  0x00005bb5 fetch  0x00000002 , 0x000004a3 
+ 00022814  0x00005bb6 fetcht  0x00000002 , 0x00004472 
+ 00022815  0x00005bb7 isub  0x00000002 , 0x0000003e 
+ 00022816  0x00005bb8 branch  0x00005930 , 0x00000005 
+ 00022817  0x00005bba fetch  0x00000002 , 0x00000aa2 
+ 00022818  0x00005bbb increase  0x00000001 , 0x0000003f 
+ 00022819  0x00005bbc store  0x00000002 , 0x00000aa2 
+ 00022820  0x00005bbd branch  0x00005911 
+ 00022821  0x00005bc0 fetch  0x00000001 , 0x000004b4 
+ 00022822  0x00005bc1 beq  0x00000001 , 0x00005930 
+ 00022823  0x00005bc2 branch  0x00005a76 
+ 00022824  0x00005bc6 fetch  0x00000002 , 0x000004a3 
+ 00022825  0x00005bc7 fetcht  0x00000002 , 0x00004472 
+ 00022826  0x00005bc8 isub  0x00000002 , 0x0000003e 
+ 00022827  0x00005bc9 nbranch  0x00005921 , 0x00000005 
+ 00022828  0x00005bca jam  0x00000001 , 0x000004b4 
+ 00022829  0x00005bcc fetcht  0x00000002 , 0x00000aa2 
+ 00022830  0x00005bcd storet  0x00000002 , 0x0000049e 
+ 00022831  0x00005bce branch  0x00005921 
+ 00022832  0x00005bd1 fetch  0x00000001 , 0x000004b4 
+ 00022833  0x00005bd2 beq  0x00000000 , 0x00005921 
+ 00022834  0x00005bd3 jam  0x00000002 , 0x000004b4 
+ 00022835  0x00005bd4 fetcht  0x00000002 , 0x00000aa2 
+ 00022836  0x00005bd5 increase  0xffffffff , 0x00000002 
+ 00022837  0x00005bd6 storet  0x00000002 , 0x000004a0 
+ 00022838  0x00005bd9 arg  0x00000005 , 0x00000011 
+ 00022839  0x00005bda call  0x00005a82 
+ 00022840  0x00005bdb setarg  0x00000007 
+ 00022841  0x00005bdc istore  0x00000001 , 0x00000005 
+ 00022842  0x00005bdd fetch  0x00000002 , 0x0000049e 
+ 00022843  0x00005bde istore  0x00000002 , 0x00000005 
+ 00022844  0x00005bdf fetch  0x00000002 , 0x000004a0 
+ 00022845  0x00005be0 istore  0x00000002 , 0x00000005 
+ 00022846  0x00005be1 rtn 
+ 00022847  0x00005be6 call  0x00005ab1 
+ 00022848  0x00005be7 call  0x000056df 
+ 00022849  0x00005be8 branch  0x00005942 
+ 00022850  0x00005beb fetcht  0x00000002 , 0x0000445a 
+ 00022851  0x00005bec storet  0x00000002 , 0x00000aa2 
+ 00022852  0x00005bed call  0x00005756 
+ 00022853  0x00005bee call  0x0000576d 
+ 00022854  0x00005bef increase  0xfffffffe , 0x00000006 
+ 00022855  0x00005bf0 copy  0x00000006 , 0x0000003f 
+ 00022856  0x00005bf1 store  0x00000002 , 0x0000049c 
+ 00022857  0x00005bf3 fetcht  0x00000002 , 0x00004472 
+ 00022858  0x00005bf4 setarg  0x00002a00 
+ 00022859  0x00005bf5 isub  0x00000002 , 0x0000003e 
+ 00022860  0x00005bf6 branch  0x000059a8 , 0x00000005 
+ 00022861  0x00005bf7 setarg  0x00002803 
+ 00022862  0x00005bf8 isub  0x00000002 , 0x0000003e 
+ 00022863  0x00005bf9 nbranch  0x00005990 , 0x00000005 
+ 00022864  0x00005bfa arg  0x00000002 , 0x0000000b 
+ 00022865  0x00005bfc call  0x00005a88 
+ 00022866  0x00005bfd nbranch  0x0000596d , 0x00000002 
+ 00022867  0x00005bfe fetcht  0x00000002 , 0x00000aa2 
+ 00022868  0x00005bff call  0x0000578a 
+ 00022869  0x00005c00 beq  0x00000001 , 0x0000596d 
+ 00022870  0x00005c01 call  0x00005a94 
+ 00022871  0x00005c02 nbranch  0x0000596b , 0x00000005 
+ 00022872  0x00005c03 nbranch  0x0000596f , 0x00000028 
+ 00022873  0x00005c04 disable  0x00000028 
+ 00022874  0x00005c05 arg  0x00000014 , 0x00000011 
+ 00022875  0x00005c06 call  0x00005a82 
+ 00022876  0x00005c07 setarg  0x00000009 
+ 00022877  0x00005c08 istore  0x00000001 , 0x00000005 
+ 00022878  0x00005c09 copy  0x00000005 , 0x00000030 
+ 00022879  0x00005c0a increase  0x00000001 , 0x00000005 
+ 00022880  0x00005c0c call  0x0000597d 
+ 00022881  0x00005c0d call  0x00005a84 
+ 00022882  0x00005c0e call  0x0000578a 
+ 00022883  0x00005c0f call  0x00005984 
+ 00022884  0x00005c10 fetch  0x00000001 , 0x000004a2 
+ 00022885  0x00005c11 increase  0x00000005 , 0x0000003f 
+ 00022886  0x00005c12 istore  0x00000001 , 0x00000030 
+ 00022887  0x00005c13 fetch  0x00000001 , 0x000004a2 
+ 00022888  0x00005c14 beq  0x00000010 , 0x0000596d 
+ 00022889  0x00005c15 increase  0xffffffff , 0x0000000b 
+ 00022890  0x00005c16 branch  0x0000596d , 0x00000005 
+ 00022891  0x00005c18 call  0x00005a84 
+ 00022892  0x00005c19 branch  0x00005951 
+ 00022893  0x00005c1b branch  0x00005a76 , 0x00000028 
+ 00022894  0x00005c1c branch  0x00005aa5 
+ 00022895  0x00005c1f call  0x00005a97 
+ 00022896  0x00005c20 call  0x00005a84 
+ 00022897  0x00005c21 call  0x0000578a 
+ 00022898  0x00005c22 fetch  0x00000001 , 0x000004a2 
+ 00022899  0x00005c23 beq  0x00000010 , 0x0000596d 
+ 00022900  0x00005c25 call  0x00007e9c 
+ 00022901  0x00005c26 fetch  0x00000002 , 0x00000aa2 
+ 00022902  0x00005c27 increase  0xffffffff , 0x0000003f 
+ 00022903  0x00005c28 istore  0x00000002 , 0x00000005 
+ 00022904  0x00005c29 call  0x00005aa1 
+ 00022905  0x00005c2a call  0x00005984 
+ 00022906  0x00005c2b increase  0xffffffff , 0x0000000b 
+ 00022907  0x00005c2c branch  0x0000596d , 0x00000005 
+ 00022908  0x00005c2d branch  0x0000596b 
+ 00022909  0x00005c31 fetch  0x00000002 , 0x00000aa2 
+ 00022910  0x00005c32 istore  0x00000002 , 0x00000005 
+ 00022911  0x00005c34 fetch  0x00000001 , 0x000004b3 
+ 00022912  0x00005c35 copy  0x0000003f , 0x00000039 
+ 00022913  0x00005c36 call  0x00007e9f 
+ 00022914  0x00005c37 call  0x00007ef4 
+ 00022915  0x00005c38 branch  0x00007ea2 
+ 00022916  0x00005c3a call  0x00007e9c 
+ 00022917  0x00005c3b fetch  0x00000002 , 0x00000aa2 
+ 00022918  0x00005c3c istore  0x00000002 , 0x00000005 
+ 00022919  0x00005c3d call  0x00007ea2 
+ 00022920  0x00005c3e fetch  0x00000001 , 0x000004a2 
+ 00022921  0x00005c3f copy  0x0000003f , 0x00000039 
+ 00022922  0x00005c40 call  0x00007e9c 
+ 00022923  0x00005c41 call  0x00007e9f 
+ 00022924  0x00005c42 isub  0x00000039 , 0x00000006 
+ 00022925  0x00005c43 increase  0xffffffff , 0x00000006 
+ 00022926  0x00005c44 call  0x00007ef4 
+ 00022927  0x00005c45 branch  0x00007ea2 
+ 00022928  0x00005c4a fetcht  0x00000002 , 0x0000445a 
+ 00022929  0x00005c4b storet  0x00000002 , 0x00000aa2 
+ 00022930  0x00005c4d call  0x00005a88 
+ 00022931  0x00005c4e nbranch  0x00005a76 , 0x00000002 
+ 00022932  0x00005c4f call  0x0000578a 
+ 00022933  0x00005c50 beq  0x00000001 , 0x00005a76 
+ 00022934  0x00005c51 call  0x00005a94 
+ 00022935  0x00005c52 nbranch  0x000059a6 , 0x00000005 
+ 00022936  0x00005c55 arg  0x00000014 , 0x00000011 
+ 00022937  0x00005c56 call  0x00005a82 
+ 00022938  0x00005c57 setarg  0x00000009 
+ 00022939  0x00005c58 istore  0x00000001 , 0x00000005 
+ 00022940  0x00005c59 fetch  0x00000001 , 0x000004b3 
+ 00022941  0x00005c5a copy  0x0000003f , 0x00000039 
+ 00022942  0x00005c5b increase  0x00000002 , 0x0000003f 
+ 00022943  0x00005c5c istore  0x00000001 , 0x00000005 
+ 00022944  0x00005c5d fetch  0x00000002 , 0x00000aa2 
+ 00022945  0x00005c5e istore  0x00000002 , 0x00000005 
+ 00022946  0x00005c5f call  0x00007e9f 
+ 00022947  0x00005c60 call  0x00007ef4 
+ 00022948  0x00005c61 call  0x00007ea2 
+ 00022949  0x00005c62 branch  0x00005aa5 
+ 00022950  0x00005c65 call  0x00005a84 
+ 00022951  0x00005c66 branch  0x00005992 
+ 00022952  0x00005c6a arg  0x00002a00 , 0x00000002 
+ 00022953  0x00005c6b call  0x0000577c 
+ 00022954  0x00005c6c rtn  0x00000034 
+ 00022955  0x00005c6d increase  0xfffffffb , 0x00000006 
+ 00022956  0x00005c6e ifetch  0x00000002 , 0x00000006 
+ 00022957  0x00005c6f store  0x00000002 , 0x00000aa2 
+ 00022958  0x00005c70 arg  0x00000014 , 0x00000011 
+ 00022959  0x00005c71 call  0x00005a82 
+ 00022960  0x00005c72 setarg  0x00000009 
+ 00022961  0x00005c73 istore  0x00000001 , 0x00000005 
+ 00022962  0x00005c74 fetch  0x00000001 , 0x000043af 
+ 00022963  0x00005c75 copy  0x0000003f , 0x00000039 
+ 00022964  0x00005c76 increase  0x00000002 , 0x0000003f 
+ 00022965  0x00005c77 istore  0x00000001 , 0x00000005 
+ 00022966  0x00005c78 fetch  0x00000002 , 0x00000aa2 
+ 00022967  0x00005c79 istore  0x00000002 , 0x00000005 
+ 00022968  0x00005c7a arg  0x000043b0 , 0x00000006 
+ 00022969  0x00005c7b call  0x00007ef4 
+ 00022970  0x00005c7c call  0x00007ea2 
+ 00022971  0x00005c7d branch  0x00005aa5 
+ 00022972  0x00005c82 fetcht  0x00000002 , 0x00000478 
+ 00022973  0x00005c83 fetch  0x00000001 , 0x000044e9 
+ 00022974  0x00005c84 bbit1  0x00000003 , 0x000059dd 
+ 00022975  0x00005c87 call  0x0000576a 
+ 00022976  0x00005c88 branch  0x00005a76 , 0x00000034 
+ 00022977  0x00005c89 increase  0xfffffffe , 0x00000006 
+ 00022978  0x00005c8a ifetch  0x00000002 , 0x00000006 
+ 00022979  0x00005c8b arg  0x00002a00 , 0x00000002 
+ 00022980  0x00005c8c isub  0x00000002 , 0x0000003e 
+ 00022981  0x00005c8d branch  0x000059d3 , 0x00000005 
+ 00022982  0x00005c8e ifetch  0x00000001 , 0x00000006 
+ 00022983  0x00005c8f sub  0x0000003f , 0x00000016 , 0x0000003e 
+ 00022984  0x00005c90 branch  0x000059ca , 0x00000002 
+ 00022985  0x00005c91 force  0x00000016 , 0x0000003f 
+ 00022986  0x00005c93 copy  0x0000003f , 0x00000013 
+ 00022987  0x00005c94 call  0x00007ea5 
+ 00022988  0x00005c95 add  0x00000013 , 0x00000001 , 0x00000011 
+ 00022989  0x00005c96 call  0x00005a82 
+ 00022990  0x00005c97 setarg  0x0000000b 
+ 00022991  0x00005c98 istore  0x00000001 , 0x00000005 
+ 00022992  0x00005c99 copy  0x00000013 , 0x00000039 
+ 00022993  0x00005c9a call  0x00007e9f 
+ 00022994  0x00005c9b branch  0x00007f01 
+ 00022995  0x00005c9e call  0x00007ea5 
+ 00022996  0x00005c9f fetch  0x00000001 , 0x000043af 
+ 00022997  0x00005ca0 add  0x0000003f , 0x00000001 , 0x00000011 
+ 00022998  0x00005ca1 call  0x00005a82 
+ 00022999  0x00005ca2 setarg  0x0000000b 
+ 00023000  0x00005ca3 istore  0x00000001 , 0x00000005 
+ 00023001  0x00005ca4 fetch  0x00000001 , 0x000043af 
+ 00023002  0x00005ca5 copy  0x0000003f , 0x00000039 
+ 00023003  0x00005ca6 arg  0x000043b0 , 0x00000006 
+ 00023004  0x00005ca7 branch  0x00007f01 
+ 00023005  0x00005cab fetch  0x00000002 , 0x000044fa 
+ 00023006  0x00005cac isub  0x00000002 , 0x0000003e 
+ 00023007  0x00005cad nbranch  0x000059bf , 0x00000005 
+ 00023008  0x00005caf call  0x00005a42 
+ 00023009  0x00005cb0 nbranch  0x000059bf , 0x00000028 
+ 00023010  0x00005cb1 jam  0x00000005 , 0x0000047a 
+ 00023011  0x00005cb2 branch  0x00005a77 
+ 00023012  0x00005cb6 ifetch  0x00000002 , 0x00000006 
+ 00023013  0x00005cb7 store  0x00000002 , 0x0000445e 
+ 00023014  0x00005cb9 arg  0x00000014 , 0x00000011 
+ 00023015  0x00005cba call  0x00005a82 
+ 00023016  0x00005cbb setarg  0x0000000d 
+ 00023017  0x00005cbc istore  0x00000001 , 0x00000005 
+ 00023018  0x00005cbd fetch  0x00000002 , 0x0000445e 
+ 00023019  0x00005cbe iforce  0x00000011 
+ 00023020  0x00005cbf fetcht  0x00000002 , 0x00000478 
+ 00023021  0x00005cc0 call  0x0000576a 
+ 00023022  0x00005cc1 branch  0x00005a76 , 0x00000034 
+ 00023023  0x00005cc2 ifetch  0x00000001 , 0x00000006 
+ 00023024  0x00005cc3 isub  0x00000011 , 0x00000039 
+ 00023025  0x00005cc4 nbranch  0x00005a76 , 0x00000002 
+ 00023026  0x00005cc5 sub  0x00000039 , 0x00000016 , 0x0000003e 
+ 00023027  0x00005cc6 branch  0x000059f5 , 0x00000002 
+ 00023028  0x00005cc7 force  0x00000016 , 0x00000039 
+ 00023029  0x00005cc9 deposit  0x00000011 
+ 00023030  0x00005cca iadd  0x00000006 , 0x00000006 
+ 00023031  0x00005ccb call  0x00007ef4 
+ 00023032  0x00005ccc call  0x00007ea2 
+ 00023033  0x00005ccd branch  0x00005aa5 
+ 00023034  0x00005cd1 call  0x00005ab1 
+ 00023035  0x00005cd2 call  0x000056d7 
+ 00023036  0x00005cd3 branch  0x000059fd 
+ 00023037  0x00005cd9 arg  0x00000002 , 0x0000000b 
+ 00023038  0x00005cda fetcht  0x00000002 , 0x0000445a 
+ 00023039  0x00005cde storet  0x00000002 , 0x00000aa2 
+ 00023040  0x00005cdf call  0x00005756 
+ 00023041  0x00005ce0 call  0x0000576d 
+ 00023042  0x00005ce1 increase  0xfffffffe , 0x00000006 
+ 00023043  0x00005ce2 copy  0x00000006 , 0x0000003f 
+ 00023044  0x00005ce3 store  0x00000002 , 0x0000049c 
+ 00023045  0x00005ce5 call  0x00005a88 
+ 00023046  0x00005ce6 nbranch  0x00005a25 , 0x00000002 
+ 00023047  0x00005ce7 fetcht  0x00000002 , 0x00000aa2 
+ 00023048  0x00005ce8 call  0x0000578a 
+ 00023049  0x00005ce9 beq  0x00000001 , 0x00005a28 
+ 00023050  0x00005ceb call  0x00005a8c 
+ 00023051  0x00005cec nbranch  0x00005a23 , 0x00000005 
+ 00023052  0x00005ced copy  0x0000000b , 0x0000003f 
+ 00023053  0x00005cee beq  0x00000000 , 0x00005a28 
+ 00023054  0x00005cef nbranch  0x00005a19 , 0x00000028 
+ 00023055  0x00005cf0 disable  0x00000028 
+ 00023056  0x00005cf2 arg  0x00000014 , 0x00000011 
+ 00023057  0x00005cf3 call  0x00005a82 
+ 00023058  0x00005cf4 setarg  0x00000011 
+ 00023059  0x00005cf5 istore  0x00000001 , 0x00000005 
+ 00023060  0x00005cf6 fetch  0x00000001 , 0x000004b3 
+ 00023061  0x00005cf7 increase  0x00000004 , 0x0000003f 
+ 00023062  0x00005cf8 istore  0x00000001 , 0x00000005 
+ 00023063  0x00005cf9 call  0x00007ea2 
+ 00023064  0x00005cfa branch  0x00005a1f 
+ 00023065  0x00005cfc fetch  0x00000001 , 0x000004b3 
+ 00023066  0x00005cfd beq  0x00000010 , 0x00005a28 
+ 00023067  0x00005cfe fetch  0x00000002 , 0x00000aa2 
+ 00023068  0x00005cff increase  0xffffffff , 0x0000003f 
+ 00023069  0x00005d00 store  0x00000002 , 0x000004a0 
+ 00023070  0x00005d01 call  0x00005a9c 
+ 00023071  0x00005d03 fetch  0x00000002 , 0x00000aa2 
+ 00023072  0x00005d04 store  0x00000002 , 0x0000049e 
+ 00023073  0x00005d05 call  0x00005a97 
+ 00023074  0x00005d06 increase  0xffffffff , 0x0000000b 
+ 00023075  0x00005d09 call  0x00005a84 
+ 00023076  0x00005d0a branch  0x00005a05 
+ 00023077  0x00005d0d fetch  0x00000002 , 0x00000aa2 
+ 00023078  0x00005d0e store  0x00000002 , 0x000004a0 
+ 00023079  0x00005d0f branch  0x00005a2c 
+ 00023080  0x00005d11 fetch  0x00000002 , 0x00000aa2 
+ 00023081  0x00005d12 increase  0xffffffff , 0x0000003f 
+ 00023082  0x00005d13 store  0x00000002 , 0x000004a0 
+ 00023083  0x00005d14 branch  0x00005a2c 
+ 00023084  0x00005d16 branch  0x00005a76 , 0x00000028 
+ 00023085  0x00005d17 call  0x00005a9c 
+ 00023086  0x00005d18 branch  0x00005aa5 
+ 00023087  0x00005d1e copy  0x00000006 , 0x00000011 
+ 00023088  0x00005d1f fetch  0x00000002 , 0x000044fc 
+ 00023089  0x00005d20 add  0x0000003f , 0xfffffffd , 0x00000012 
+ 00023090  0x00005d21 call  0x000056e2 
+ 00023091  0x00005d23 fetch  0x00000001 , 0x000044e9 
+ 00023092  0x00005d24 bbit0  0x00000004 , 0x00005a3d 
+ 00023093  0x00005d26 fetcht  0x00000002 , 0x00000478 
+ 00023094  0x00005d27 fetch  0x00000002 , 0x000044fa 
+ 00023095  0x00005d28 isub  0x00000002 , 0x0000003e 
+ 00023096  0x00005d29 nbranch  0x00005a3d , 0x00000005 
+ 00023097  0x00005d2a call  0x00005a42 
+ 00023098  0x00005d2b nbranch  0x00005a3d , 0x00000028 
+ 00023099  0x00005d2c jam  0x00000005 , 0x0000047a 
+ 00023100  0x00005d2d branch  0x00005a77 
+ 00023101  0x00005d30 force  0x00000001 , 0x00000011 
+ 00023102  0x00005d31 call  0x00005a82 
+ 00023103  0x00005d32 setarg  0x00000013 
+ 00023104  0x00005d33 istore  0x00000001 , 0x00000005 
+ 00023105  0x00005d34 rtn 
+ 00023106  0x00005d37 call  0x00007fe9 
+ 00023107  0x00005d38 fetch  0x00000001 , 0x000044c6 
+ 00023108  0x00005d39 rtneq  0x00000000 
+ 00023109  0x00005d3a fetch  0x00000001 , 0x00004040 
+ 00023110  0x00005d3b rtnbit1  0x00000004 
+ 00023111  0x00005d3c branch  0x00007fe7 
+ 00023112  0x00005d40 add  0x00000006 , 0x00000002 , 0x00000011 
+ 00023113  0x00005d41 fetch  0x00000002 , 0x000044fc 
+ 00023114  0x00005d42 add  0x0000003f , 0xfffffffb , 0x00000012 
+ 00023115  0x00005d43 call  0x000056e2 
+ 00023116  0x00005d44 branch  0x00005a4d 
+ 00023117  0x00005d48 fetch  0x00000002 , 0x000044fc 
+ 00023118  0x00005d49 copy  0x0000003f , 0x00000011 
+ 00023119  0x00005d4a call  0x00005a82 
+ 00023120  0x00005d4b setarg  0x00000017 
+ 00023121  0x00005d4c istore  0x00000001 , 0x00000005 
+ 00023122  0x00005d4d fetch  0x00000002 , 0x00000478 
+ 00023123  0x00005d4e istore  0x00000002 , 0x00000005 
+ 00023124  0x00005d4f fetch  0x00000002 , 0x000044fc 
+ 00023125  0x00005d50 add  0x0000003f , 0xfffffffb , 0x00000039 
+ 00023126  0x00005d51 fetch  0x00000002 , 0x0000450d 
+ 00023127  0x00005d52 add  0x0000003f , 0x00000007 , 0x00000006 
+ 00023128  0x00005d53 ifetch  0x00000002 , 0x00000006 
+ 00023129  0x00005d54 istore  0x00000002 , 0x00000005 
+ 00023130  0x00005d55 branch  0x00007ef4 
+ 00023131  0x00005d5c force  0x00000001 , 0x00000011 
+ 00023132  0x00005d5d call  0x00005a82 
+ 00023133  0x00005d5e setarg  0x00000019 
+ 00023134  0x00005d5f istore  0x00000001 , 0x00000005 
+ 00023135  0x00005d60 rtn 
+ 00023136  0x00005d65 copy  0x00000006 , 0x00000011 
+ 00023137  0x00005d66 fetch  0x00000002 , 0x000044fc 
+ 00023138  0x00005d67 add  0x0000003f , 0xfffffffd , 0x00000012 
+ 00023139  0x00005d68 branch  0x000056e2 
+ 00023140  0x00005d6e copy  0x00000002 , 0x00000013 
+ 00023141  0x00005d6f increase  0x00000003 , 0x00000011 
+ 00023142  0x00005d70 call  0x00005a82 
+ 00023143  0x00005d71 increase  0xfffffffd , 0x00000011 
+ 00023144  0x00005d72 setarg  0x0000001b 
+ 00023145  0x00005d73 istore  0x00000001 , 0x00000005 
+ 00023146  0x00005d74 copy  0x00000013 , 0x00000002 
+ 00023147  0x00005d75 istoret  0x00000002 , 0x00000005 
+ 00023148  0x00005d76 rtn 
+ 00023149  0x00005d7a copy  0x00000002 , 0x00000013 
+ 00023150  0x00005d7b increase  0x00000003 , 0x00000011 
+ 00023151  0x00005d7c call  0x00005a82 
+ 00023152  0x00005d7d increase  0xfffffffd , 0x00000011 
+ 00023153  0x00005d7e setarg  0x0000001d 
+ 00023154  0x00005d7f istore  0x00000001 , 0x00000005 
+ 00023155  0x00005d80 copy  0x00000013 , 0x00000002 
+ 00023156  0x00005d81 istoret  0x00000002 , 0x00000005 
+ 00023157  0x00005d82 rtn 
+ 00023158  0x00005d88 jam  0x0000000a , 0x0000047a 
+ 00023159  0x00005d8a force  0x00000005 , 0x00000011 
+ 00023160  0x00005d8b call  0x00005a82 
+ 00023161  0x00005d8c setarg  0x00000001 
+ 00023162  0x00005d8d istore  0x00000001 , 0x00000005 
+ 00023163  0x00005d8e fetch  0x00000001 , 0x00000477 
+ 00023164  0x00005d8f istore  0x00000001 , 0x00000005 
+ 00023165  0x00005d90 fetch  0x00000002 , 0x00000478 
+ 00023166  0x00005d91 istore  0x00000002 , 0x00000005 
+ 00023167  0x00005d92 fetch  0x00000001 , 0x0000047a 
+ 00023168  0x00005d93 istore  0x00000001 , 0x00000005 
+ 00023169  0x00005d94 rtn 
+ 00023170  0x00005d98 force  0x00000004 , 0x00000012 
+ 00023171  0x00005d99 branch  0x00005847 
+ 00023172  0x00005d9d fetcht  0x00000002 , 0x00000aa2 
+ 00023173  0x00005d9e increase  0x00000001 , 0x00000002 
+ 00023174  0x00005d9f storet  0x00000002 , 0x00000aa2 
+ 00023175  0x00005da0 rtn 
+ 00023176  0x00005da3 fetcht  0x00000002 , 0x00000aa2 
+ 00023177  0x00005da4 fetch  0x00000002 , 0x0000445c 
+ 00023178  0x00005da5 isub  0x00000002 , 0x0000003e 
+ 00023179  0x00005da6 rtn 
+ 00023180  0x00005daa fetcht  0x00000001 , 0x0000445e 
+ 00023181  0x00005dab arg  0x0000445f , 0x00000011 
+ 00023182  0x00005dad fetch  0x00000001 , 0x000004a2 
+ 00023183  0x00005dae copy  0x0000003f , 0x00000039 
+ 00023184  0x00005daf isub  0x00000002 , 0x0000003e 
+ 00023185  0x00005db0 nrtn  0x00000005 
+ 00023186  0x00005db1 arg  0x000004a3 , 0x00000012 
+ 00023187  0x00005db2 branch  0x00007f88 
+ 00023188  0x00005db5 fetcht  0x00000001 , 0x00004471 
+ 00023189  0x00005db6 arg  0x00004472 , 0x00000011 
+ 00023190  0x00005db7 branch  0x00005a8e 
+ 00023191  0x00005dbb fetch  0x00000001 , 0x000004b3 
+ 00023192  0x00005dbc store  0x00000001 , 0x00000101 
+ 00023193  0x00005dbd copy  0x0000003f , 0x00000039 
+ 00023194  0x00005dbe call  0x00007e9f 
+ 00023195  0x00005dbf branch  0x00007ef4 
+ 00023196  0x00005dc3 call  0x00007e9c 
+ 00023197  0x00005dc4 fetch  0x00000002 , 0x0000049e 
+ 00023198  0x00005dc5 istore  0x00000002 , 0x00000005 
+ 00023199  0x00005dc6 fetch  0x00000002 , 0x000004a0 
+ 00023200  0x00005dc7 istore  0x00000002 , 0x00000005 
+ 00023201  0x00005dc9 fetch  0x00000001 , 0x00000101 
+ 00023202  0x00005dca copy  0x0000003f , 0x00000039 
+ 00023203  0x00005dcb call  0x00007ef4 
+ 00023204  0x00005dcc branch  0x00007ea2 
+ 00023205  0x00005dd1 call  0x00007e9c 
+ 00023206  0x00005dd2 call  0x0000588a 
+ 00023207  0x00005dd3 copy  0x00000005 , 0x0000003f 
+ 00023208  0x00005dd4 isub  0x00000006 , 0x00000011 
+ 00023209  0x00005dd5 call  0x0000588d 
+ 00023210  0x00005dd6 copy  0x00000011 , 0x0000003f 
+ 00023211  0x00005dd7 istore  0x00000002 , 0x00000006 
+ 00023212  0x00005dd8 increase  0x00000004 , 0x00000011 
+ 00023213  0x00005dd9 call  0x00005879 
+ 00023214  0x00005dda copy  0x00000011 , 0x0000003f 
+ 00023215  0x00005ddb istore  0x00000001 , 0x00000006 
+ 00023216  0x00005ddc rtn 
+ 00023217  0x00005de0 rshift8  0x0000003f , 0x0000003f 
+ 00023218  0x00005de1 store  0x00000002 , 0x0000445a 
+ 00023219  0x00005de2 ifetch  0x00000002 , 0x00000006 
+ 00023220  0x00005de3 store  0x00000002 , 0x0000445c 
+ 00023221  0x00005de4 rtn 
+ 00023222  0x00005dea ifetch  0x00000001 , 0x00000006 
+ 00023223  0x00005deb ifetcht  0x00000001 , 0x00000006 
+ 00023224  0x00005dec ifetcht  0x00000002 , 0x00000006 
+ 00023225  0x00005ded beq  0x00000013 , 0x00005abb 
+ 00023226  0x00005dee rtn 
+ 00023227  0x00005df0 ifetch  0x00000002 , 0x00000006 
+ 00023228  0x00005df1 store  0x00000002 , 0x00004509 
+ 00023229  0x00005df2 jam  0x00000040 , 0x00000a99 
+ 00023230  0x00005df3 branch  0x00007d86 
+ 00023231  0x00005dfa arg  0x0000000c , 0x00000011 
+ 00023232  0x00005dfb arg  0x00000012 , 0x00000013 
+ 00023233  0x00005dfc call  0x00005ac7 
+ 00023234  0x00005dfd setarg  0x00000008 
+ 00023235  0x00005dfe istore  0x00000002 , 0x00000005 
+ 00023236  0x00005dff fetch  0x00000008 , 0x00004496 
+ 00023237  0x00005e00 istore  0x00000008 , 0x00000005 
+ 00023238  0x00005e01 rtn 
+ 00023239  0x00005e06 call  0x00005acf 
+ 00023240  0x00005e07 arg  0x00000005 , 0x00000012 
+ 00023241  0x00005e08 call  0x00005847 
+ 00023242  0x00005e09 copy  0x00000013 , 0x0000003f 
+ 00023243  0x00005e0a istore  0x00000001 , 0x00000005 
+ 00023244  0x00005e0b fetch  0x00000001 , 0x00004508 
+ 00023245  0x00005e0c istore  0x00000001 , 0x00000005 
+ 00023246  0x00005e0d rtn 
+ 00023247  0x00005e11 fetch  0x00000001 , 0x00004508 
+ 00023248  0x00005e13 pincrease  0x00000001 
+ 00023249  0x00005e14 store  0x00000001 , 0x00004508 
+ 00023250  0x00005e15 rtnne  0x00000000 
+ 00023251  0x00005e18 jam  0x00000001 , 0x00004508 
+ 00023252  0x00005e19 rtn 
+ 00023253  0x00005e1f fetch  0x00000001 , 0x000044c6 
+ 00023254  0x00005e20 beq  0x00000000 , 0x00005ae4 
+ 00023255  0x00005e21 beq  0x00000001 , 0x00005ae7 
+ 00023256  0x00005e22 beq  0x00000002 , 0x00005ae9 
+ 00023257  0x00005e23 beq  0x00000081 , 0x00005add 
+ 00023258  0x00005e24 beq  0x00000082 , 0x00005adf 
+ 00023259  0x00005e25 beq  0x00000083 , 0x00005ae2 
+ 00023260  0x00005e26 rtn 
+ 00023261  0x00005e29 jam  0x0000000d , 0x00004456 
+ 00023262  0x00005e2a branch  0x00005ae5 
+ 00023263  0x00005e2c jam  0x0000000d , 0x00004456 
+ 00023264  0x00005e2d jam  0x00000001 , 0x00004454 
+ 00023265  0x00005e2e rtn 
+ 00023266  0x00005e30 jam  0x0000000d , 0x00004456 
+ 00023267  0x00005e31 branch  0x00005aea 
+ 00023268  0x00005e33 jam  0x00000000 , 0x00004456 
+ 00023269  0x00005e35 jam  0x00000003 , 0x00004454 
+ 00023270  0x00005e36 rtn 
+ 00023271  0x00005e38 jam  0x00000005 , 0x00004456 
+ 00023272  0x00005e39 branch  0x00005ae5 
+ 00023273  0x00005e3b jam  0x00000005 , 0x00004456 
+ 00023274  0x00005e3d jam  0x00000000 , 0x00004454 
+ 00023275  0x00005e3e rtn 
+ 00023276  0x00005e42 fetch  0x00000001 , 0x00004456 
+ 00023277  0x00005e43 set1  0x00000003 , 0x0000003f 
+ 00023278  0x00005e44 store  0x00000001 , 0x00004456 
+ 00023279  0x00005e45 rtn 
+ 00023280  0x00005e47 fetch  0x00000001 , 0x00004456 
+ 00023281  0x00005e48 set0  0x00000003 , 0x0000003f 
+ 00023282  0x00005e49 store  0x00000001 , 0x00004456 
+ 00023283  0x00005e4a rtn 
+ 00023284  0x00005e4d ifetch  0x00000001 , 0x00000006 
+ 00023285  0x00005e4e beq  0x00000001 , 0x00005b09 
+ 00023286  0x00005e50 beq  0x00000003 , 0x00005b30 
+ 00023287  0x00005e51 beq  0x00000004 , 0x00005b4d 
+ 00023288  0x00005e52 beq  0x00000005 , 0x00005b5a 
+ 00023289  0x00005e53 beq  0x00000006 , 0x00005b80 
+ 00023290  0x00005e54 beq  0x00000007 , 0x00005bc4 
+ 00023291  0x00005e55 beq  0x00000008 , 0x00005baf 
+ 00023292  0x00005e56 beq  0x00000009 , 0x00005bc0 
+ 00023293  0x00005e57 beq  0x0000000a , 0x00005bc4 
+ 00023294  0x00005e58 beq  0x0000000b , 0x00005bc4 
+ 00023295  0x00005e59 beq  0x0000000c , 0x00005bc5 
+ 00023296  0x00005e5a beq  0x0000000d , 0x00005bca 
+ 00023297  0x00005e5b rtn 
+ 00023298  0x00005e60 force  0x00000002 , 0x00000011 
+ 00023299  0x00005e61 call  0x00005c62 
+ 00023300  0x00005e62 setarg  0x0000000b 
+ 00023301  0x00005e63 istore  0x00000001 , 0x00000005 
+ 00023302  0x00005e64 fetch  0x00000001 , 0x00004456 
+ 00023303  0x00005e65 istore  0x00000001 , 0x00000005 
+ 00023304  0x00005e66 rtn 
+ 00023305  0x00005e69 store  0x00000001 , 0x0000444c 
+ 00023306  0x00005e6a ifetch  0x00000006 , 0x00000006 
+ 00023307  0x00005e6b istore  0x00000006 , 0x00000005 
+ 00023308  0x00005e6c fetch  0x00000001 , 0x000044c6 
+ 00023309  0x00005e6d beq  0x00000000 , 0x00005b5f 
+ 00023310  0x00005e6e call  0x00005b2b 
+ 00023311  0x00005e6f call  0x00005b26 
+ 00023312  0x00005e70 jam  0x00000003 , 0x000044c4 
+ 00023313  0x00005e71 fetch  0x00000001 , 0x0000444d 
+ 00023314  0x00005e72 beq  0x00000000 , 0x00005b18 
+ 00023315  0x00005e73 beq  0x00000001 , 0x00005b18 
+ 00023316  0x00005e74 beq  0x00000003 , 0x00005b18 
+ 00023317  0x00005e75 fetch  0x00000001 , 0x000044c6 
+ 00023318  0x00005e76 beq  0x00000002 , 0x00005b1b 
+ 00023319  0x00005e77 rtneq  0x00000083 
+ 00023320  0x00005e79 arg  0x00000000 , 0x0000003f 
+ 00023321  0x00005e7a store  0x00000004 , 0x000044c7 
+ 00023322  0x00005e7b rtn 
+ 00023323  0x00005e7e fetch  0x00000001 , 0x000044e9 
+ 00023324  0x00005e7f bbit1  0x00000000 , 0x00005b24 
+ 00023325  0x00005e81 arg  0x000044c7 , 0x00000011 
+ 00023326  0x00005e82 copy  0x00000011 , 0x00000005 
+ 00023327  0x00005e83 arg  0x00000003 , 0x00000039 
+ 00023328  0x00005e84 call  0x0000630d 
+ 00023329  0x00005e85 fetch  0x00000002 , 0x000044c9 
+ 00023330  0x00005e86 and_into  0x00000007 , 0x0000003f 
+ 00023331  0x00005e87 store  0x00000002 , 0x000044c9 
+ 00023332  0x00005e89 jam  0x00000034 , 0x00000a99 
+ 00023333  0x00005e8a branch  0x00007d86 
+ 00023334  0x00005e8d fetch  0x00000001 , 0x0000444f 
+ 00023335  0x00005e8e rtnbit1  0x00000003 
+ 00023336  0x00005e8f fetch  0x00000001 , 0x000044c6 
+ 00023337  0x00005e90 rtnbit0  0x00000007 
+ 00023338  0x00005e91 branch  0x00003402 
+ 00023339  0x00005e94 force  0x00000007 , 0x00000011 
+ 00023340  0x00005e95 call  0x00005c62 
+ 00023341  0x00005e96 fetch  0x00000007 , 0x00004453 
+ 00023342  0x00005e97 istore  0x00000007 , 0x00000005 
+ 00023343  0x00005e98 rtn 
+ 00023344  0x00005e9c copy  0x00000006 , 0x00000011 
+ 00023345  0x00005e9d fetch  0x00000001 , 0x000044c6 
+ 00023346  0x00005e9e beq  0x00000083 , 0x00005b37 
+ 00023347  0x00005e9f copy  0x00000011 , 0x00000006 
+ 00023348  0x00005ea0 arg  0x0000442a , 0x00000005 
+ 00023349  0x00005ea1 call  0x00007ebf 
+ 00023350  0x00005ea2 branch  0x00005b3d 
+ 00023351  0x00005ea4 copy  0x00000011 , 0x00000006 
+ 00023352  0x00005ea5 arg  0x0000442a , 0x00000005 
+ 00023353  0x00005ea6 call  0x00007ebf 
+ 00023354  0x00005ea7 jam  0x00000002 , 0x000044bf 
+ 00023355  0x00005ea8 jam  0x00000008 , 0x000044c1 
+ 00023356  0x00005ea9 rtn 
+ 00023357  0x00005ead fetch  0x00000001 , 0x000044c6 
+ 00023358  0x00005eae bbit1  0x00000007 , 0x00005b45 
+ 00023359  0x00005eaf call  0x0000739c 
+ 00023360  0x00005eb0 force  0x00000011 , 0x00000011 
+ 00023361  0x00005eb1 call  0x00005c62 
+ 00023362  0x00005eb2 setarg  0x00000003 
+ 00023363  0x00005eb3 istore  0x00000001 , 0x00000005 
+ 00023364  0x00005eb4 branch  0x00007497 
+ 00023365  0x00005eb8 arg  0x0000443a , 0x00000005 
+ 00023366  0x00005eb9 call  0x0000630c 
+ 00023367  0x00005eba call  0x000071c5 
+ 00023368  0x00005ebb force  0x00000011 , 0x00000011 
+ 00023369  0x00005ebc call  0x00005c62 
+ 00023370  0x00005ebd setarg  0x00000003 
+ 00023371  0x00005ebe istore  0x00000001 , 0x00000005 
+ 00023372  0x00005ebf branch  0x00007201 
+ 00023373  0x00005ec4 copy  0x00000006 , 0x00000011 
+ 00023374  0x00005ec5 fetch  0x00000001 , 0x000044c6 
+ 00023375  0x00005ec6 bbit1  0x00000007 , 0x00005b61 
+ 00023376  0x00005ec7 copy  0x00000011 , 0x00000006 
+ 00023377  0x00005ec8 call  0x00007394 
+ 00023378  0x00005ec9 branch  0x00005b75 , 0x00000005 
+ 00023379  0x00005ecb jam  0x00000004 , 0x0000047b 
+ 00023380  0x00005ecd force  0x00000002 , 0x00000011 
+ 00023381  0x00005ece call  0x00005c62 
+ 00023382  0x00005ecf setarg  0x00000005 
+ 00023383  0x00005ed0 istore  0x00000001 , 0x00000005 
+ 00023384  0x00005ed1 fetch  0x00000001 , 0x0000047b 
+ 00023385  0x00005ed2 istore  0x00000001 , 0x00000005 
+ 00023386  0x00005ed4 force  0x0000000a , 0x00000007 
+ 00023387  0x00005ed5 call  0x00007f07 
+ 00023388  0x00005ed6 jam  0x00000000 , 0x000044c4 
+ 00023389  0x00005ed7 jam  0x00000030 , 0x00000a99 
+ 00023390  0x00005ed8 branch  0x00007d86 
+ 00023391  0x00005edb jam  0x00000005 , 0x0000047b 
+ 00023392  0x00005edc branch  0x00005b54 
+ 00023393  0x00005ee0 arg  0x0000042f , 0x00000005 
+ 00023394  0x00005ee1 copy  0x00000011 , 0x00000006 
+ 00023395  0x00005ee2 call  0x00007ebf 
+ 00023396  0x00005ee3 fetch  0x00000001 , 0x000044c6 
+ 00023397  0x00005ee4 beq  0x00000083 , 0x00005b6c 
+ 00023398  0x00005ee5 call  0x0000714f 
+ 00023399  0x00005ee8 call  0x00005b7a 
+ 00023400  0x00005ee9 fetch  0x00000001 , 0x000044c6 
+ 00023401  0x00005eea rtnne  0x00000082 
+ 00023402  0x00005eeb jam  0x0000003b , 0x00000a99 
+ 00023403  0x00005eec branch  0x00007d86 
+ 00023404  0x00005eef call  0x000071ba 
+ 00023405  0x00005ef0 arg  0x00000af2 , 0x00000005 
+ 00023406  0x00005ef1 call  0x00007201 
+ 00023407  0x00005ef2 arg  0x00000af2 , 0x00000011 
+ 00023408  0x00005ef3 arg  0x0000442a , 0x00000012 
+ 00023409  0x00005ef4 arg  0x00000010 , 0x00000039 
+ 00023410  0x00005ef5 call  0x00007f88 
+ 00023411  0x00005ef6 nbranch  0x00005b53 , 0x00000005 
+ 00023412  0x00005ef7 branch  0x00005b7a 
+ 00023413  0x00005efa call  0x00007390 
+ 00023414  0x00005efb jam  0x00000031 , 0x00000a99 
+ 00023415  0x00005efc call  0x00007d86 
+ 00023416  0x00005efd jam  0x00000001 , 0x00004429 
+ 00023417  0x00005efe jam  0x00000005 , 0x000044c4 
+ 00023418  0x00005f01 force  0x00000011 , 0x00000011 
+ 00023419  0x00005f02 call  0x00005c62 
+ 00023420  0x00005f03 setarg  0x00000004 
+ 00023421  0x00005f04 istore  0x00000001 , 0x00000005 
+ 00023422  0x00005f05 arg  0x0000443a , 0x00000006 
+ 00023423  0x00005f06 branch  0x00007ebf 
+ 00023424  0x00005f09 arg  0x0000041f , 0x00000005 
+ 00023425  0x00005f0a branch  0x00007ebf 
+ 00023426  0x00005f0d force  0x00000011 , 0x00000011 
+ 00023427  0x00005f0e call  0x00005c62 
+ 00023428  0x00005f0f setarg  0x00000006 
+ 00023429  0x00005f10 istore  0x00000001 , 0x00000005 
+ 00023430  0x00005f11 fetch  0x00000001 , 0x000044e9 
+ 00023431  0x00005f12 bbit1  0x00000001 , 0x00005b8a 
+ 00023432  0x00005f13 arg  0x00004419 , 0x00000006 
+ 00023433  0x00005f14 branch  0x00007ebf 
+ 00023434  0x00005f17 arg  0x000044ea , 0x00000006 
+ 00023435  0x00005f18 branch  0x00007ebf 
+ 00023436  0x00005f1c arg  0x000044cb , 0x00000005 
+ 00023437  0x00005f1d force  0x0000000a , 0x00000039 
+ 00023438  0x00005f1e call  0x0000630d 
+ 00023439  0x00005f1f force  0x0000000b , 0x00000011 
+ 00023440  0x00005f20 call  0x00005c62 
+ 00023441  0x00005f21 setarg  0x00000007 
+ 00023442  0x00005f22 istore  0x00000001 , 0x00000005 
+ 00023443  0x00005f23 fetch  0x00000002 , 0x000044cb 
+ 00023444  0x00005f24 istore  0x00000002 , 0x00000005 
+ 00023445  0x00005f25 fetch  0x00000008 , 0x000044cd 
+ 00023446  0x00005f26 istore  0x00000008 , 0x00000005 
+ 00023447  0x00005f27 rtn 
+ 00023448  0x00005f2a force  0x00000011 , 0x00000011 
+ 00023449  0x00005f2b call  0x00005c62 
+ 00023450  0x00005f2c setarg  0x00000008 
+ 00023451  0x00005f2d istore  0x00000001 , 0x00000005 
+ 00023452  0x00005f2e setarg  0x00000000 
+ 00023453  0x00005f2f istore  0x00000008 , 0x00000005 
+ 00023454  0x00005f30 istore  0x00000008 , 0x00000005 
+ 00023455  0x00005f31 rtn 
+ 00023456  0x00005f35 force  0x00000008 , 0x00000011 
+ 00023457  0x00005f36 call  0x00005c62 
+ 00023458  0x00005f37 setarg  0x00000009 
+ 00023459  0x00005f38 istore  0x00000001 , 0x00000005 
+ 00023460  0x00005f39 fetch  0x00000001 , 0x00004495 
+ 00023461  0x00005f3a istore  0x00000001 , 0x00000005 
+ 00023462  0x00005f3b fetch  0x00000006 , 0x000044a0 
+ 00023463  0x00005f3c istore  0x00000006 , 0x00000005 
+ 00023464  0x00005f3d rtn 
+ 00023465  0x00005f41 jam  0x00000008 , 0x0000047b 
+ 00023466  0x00005f42 branch  0x00005b54 
+ 00023467  0x00005f45 fetch  0x00000001 , 0x00004458 
+ 00023468  0x00005f46 fetcht  0x00000001 , 0x00004458 
+ 00023469  0x00005f47 iand  0x00000002 , 0x0000003f 
+ 00023470  0x00005f48 rtn 
+ 00023471  0x00005f4b arg  0x000044d5 , 0x00000005 
+ 00023472  0x00005f4c call  0x00007ebf 
+ 00023473  0x00005f4d call  0x00005bab 
+ 00023474  0x00005f4e isolate0  0x00000001 , 0x0000003f 
+ 00023475  0x00005f4f branch  0x00005ba9 , 0x00000001 
+ 00023476  0x00005f50 fetch  0x00000001 , 0x00004092 
+ 00023477  0x00005f51 rtnne  0x0000000a 
+ 00023478  0x00005f52 call  0x00005bb9 
+ 00023479  0x00005f53 nrtn  0x00000028 
+ 00023480  0x00005f54 branch  0x00003410 
+ 00023481  0x00005f58 call  0x00007fe9 
+ 00023482  0x00005f59 fetch  0x00000001 , 0x0000448e 
+ 00023483  0x00005f5a rtneq  0x00000000 
+ 00023484  0x00005f5b fetch  0x00000001 , 0x00000454 
+ 00023485  0x00005f5c compare  0x000000c0 , 0x0000003f , 0x000000c0 
+ 00023486  0x00005f5d rtn  0x00000001 
+ 00023487  0x00005f5e branch  0x00007fe7 
+ 00023488  0x00005f61 call  0x00005bab 
+ 00023489  0x00005f62 isolate0  0x00000001 , 0x0000003f 
+ 00023490  0x00005f63 branch  0x00005ba9 , 0x00000001 
+ 00023491  0x00005f64 rtn 
+ 00023492  0x00005f69 rtn 
+ 00023493  0x00005f6c arg  0x000009be , 0x00000005 
+ 00023494  0x00005f6d call  0x00007eb3 
+ 00023495  0x00005f6e jam  0x00000002 , 0x000044bf 
+ 00023496  0x00005f6f jam  0x00000001 , 0x000044c1 
+ 00023497  0x00005f70 rtn 
+ 00023498  0x00005f73 arg  0x00000a6e , 0x00000005 
+ 00023499  0x00005f74 call  0x00007ebf 
+ 00023500  0x00005f75 jam  0x00000006 , 0x000044c1 
+ 00023501  0x00005f76 jam  0x00000002 , 0x000044bf 
+ 00023502  0x00005f77 rtn 
+ 00023503  0x00005f7a force  0x00000041 , 0x00000011 
+ 00023504  0x00005f7b call  0x00005c62 
+ 00023505  0x00005f7c setarg  0x0000000c 
+ 00023506  0x00005f7d istore  0x00000001 , 0x00000005 
+ 00023507  0x00005f7e arg  0x000045d2 , 0x00000006 
+ 00023508  0x00005f7f branch  0x00007eb3 
+ 00023509  0x00005f82 call  0x00007166 
+ 00023510  0x00005f83 force  0x00000011 , 0x00000011 
+ 00023511  0x00005f84 call  0x00005c62 
+ 00023512  0x00005f85 setarg  0x0000000d 
+ 00023513  0x00005f86 istore  0x00000001 , 0x00000005 
+ 00023514  0x00005f87 branch  0x00007201 
+ 00023515  0x00005f8b fetch  0x00000001 , 0x000044c4 
+ 00023516  0x00005f8c rtneq  0x000000ff 
+ 00023517  0x00005f8d arg  0x00000003 , 0x00000002 
+ 00023518  0x00005f8e isub  0x00000002 , 0x0000003e 
+ 00023519  0x00005f8f nrtn  0x00000002 
+ 00023520  0x00005f90 arg  0x0000000a , 0x00000007 
+ 00023521  0x00005f91 call  0x00007f16 
+ 00023522  0x00005f92 nrtn  0x00000034 
+ 00023523  0x00005f93 branch  0x00005ba9 
+ 00023524  0x00005f96 bpatchx  0x00000078 , 0x0000402f 
+ 00023525  0x00005f97 fetch  0x00000001 , 0x000044c4 
+ 00023526  0x00005f98 beq  0x00000000 , 0x00005bef 
+ 00023527  0x00005f99 beq  0x00000001 , 0x00005bf5 
+ 00023528  0x00005f9a beq  0x00000002 , 0x00005bef 
+ 00023529  0x00005f9b beq  0x00000003 , 0x00005bf7 
+ 00023530  0x00005f9c beq  0x00000005 , 0x00005bfb 
+ 00023531  0x00005f9d beq  0x00000007 , 0x00005c07 
+ 00023532  0x00005f9e beq  0x00000008 , 0x00005c09 
+ 00023533  0x00005f9f beq  0x00000009 , 0x00005c10 
+ 00023534  0x00005fa0 rtn 
+ 00023535  0x00005fa4 fetch  0x00000001 , 0x000044c5 
+ 00023536  0x00005fa5 rtnne  0x00000004 
+ 00023537  0x00005fa6 jam  0x000000ff , 0x000044c5 
+ 00023538  0x00005fa7 jam  0x000000ff , 0x000044c4 
+ 00023539  0x00005fa8 jam  0x0000003f , 0x00000a99 
+ 00023540  0x00005fa9 branch  0x00007d86 
+ 00023541  0x00005fad jam  0x00000002 , 0x000044c4 
+ 00023542  0x00005fae branch  0x00005b02 
+ 00023543  0x00005fb1 jam  0x00000004 , 0x000044c4 
+ 00023544  0x00005fb2 setarg  0x00017700 
+ 00023545  0x00005fb3 arg  0x0000000a , 0x00000007 
+ 00023546  0x00005fb4 branch  0x00007f08 
+ 00023547  0x00005fb7 fetch  0x00000001 , 0x000044c5 
+ 00023548  0x00005fb8 beq  0x00000004 , 0x00005bfe 
+ 00023549  0x00005fb9 rtn 
+ 00023550  0x00005fbc jam  0x00000007 , 0x000044c4 
+ 00023551  0x00005fbd jam  0x00000029 , 0x00000a99 
+ 00023552  0x00005fbe call  0x00007d86 
+ 00023553  0x00005fbf call  0x00005b82 
+ 00023554  0x00005fc0 fetch  0x00000001 , 0x00004092 
+ 00023555  0x00005fc1 rtnne  0x0000000a 
+ 00023556  0x00005fc2 call  0x00005bb9 
+ 00023557  0x00005fc3 rtn  0x00000028 
+ 00023558  0x00005fc4 branch  0x00003410 
+ 00023559  0x00005fc8 jam  0x00000008 , 0x000044c4 
+ 00023560  0x00005fc9 branch  0x00005b8c 
+ 00023561  0x00005fcc fetch  0x00000001 , 0x00004452 
+ 00023562  0x00005fcd fetcht  0x00000001 , 0x00004459 
+ 00023563  0x00005fce iand  0x00000002 , 0x0000003f 
+ 00023564  0x00005fcf isolate0  0x00000001 , 0x0000003f 
+ 00023565  0x00005fd0 branch  0x00005c12 , 0x00000001 
+ 00023566  0x00005fd1 jam  0x00000009 , 0x000044c4 
+ 00023567  0x00005fd2 branch  0x00005b98 
+ 00023568  0x00005fd5 call  0x00005ba0 
+ 00023569  0x00005fd6 branch  0x00005c12 
+ 00023570  0x00005fda force  0x0000000a , 0x00000007 
+ 00023571  0x00005fdb call  0x00007f07 
+ 00023572  0x00005fdc jam  0x000000ff , 0x000044c5 
+ 00023573  0x00005fdd jam  0x000000ff , 0x000044c4 
+ 00023574  0x00005fde jam  0x0000003e , 0x00000a99 
+ 00023575  0x00005fdf branch  0x00007d86 
+ 00023576  0x00005fe4 bpatchx  0x00000079 , 0x0000402f 
+ 00023577  0x00005fe5 fetch  0x00000001 , 0x000044c6 
+ 00023578  0x00005fe6 rtnbit0  0x00000007 
+ 00023579  0x00005fe7 fetch  0x00000001 , 0x000044bf 
+ 00023580  0x00005fe8 rtnne  0x00000002 
+ 00023581  0x00005fe9 jam  0x00000000 , 0x000044bf 
+ 00023582  0x00005fea fetch  0x00000001 , 0x000044c1 
+ 00023583  0x00005feb beq  0x00000001 , 0x00005c58 
+ 00023584  0x00005fec beq  0x00000002 , 0x00005c5f 
+ 00023585  0x00005fed beq  0x00000003 , 0x00005c52 
+ 00023586  0x00005fee beq  0x00000006 , 0x00005c39 
+ 00023587  0x00005fef beq  0x00000007 , 0x00005c30 
+ 00023588  0x00005ff0 beq  0x00000008 , 0x00005c26 
+ 00023589  0x00005ff1 rtn 
+ 00023590  0x00005ff5 fetch  0x00000001 , 0x00004663 
+ 00023591  0x00005ff6 copy  0x0000003f , 0x00000007 
+ 00023592  0x00005ff7 increase  0x00000001 , 0x0000003f 
+ 00023593  0x00005ff8 store  0x00000001 , 0x00004663 
+ 00023594  0x00005ff9 fetch  0x00000004 , 0x000044c7 
+ 00023595  0x00005ffa qisolate1  0x0000003f 
+ 00023596  0x00005ffb setarg  0x00000080 
+ 00023597  0x00005ffc setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00023598  0x00005ffd store  0x00000001 , 0x00004664 
+ 00023599  0x00005ffe branch  0x00005c55 
+ 00023600  0x00006001 fetch  0x00000001 , 0x000044c2 
+ 00023601  0x00006002 jam  0x00000000 , 0x000044c2 
+ 00023602  0x00006003 beq  0x00000001 , 0x00005c35 
+ 00023603  0x00006004 jam  0x00000002 , 0x000044bf 
+ 00023604  0x00006005 rtn 
+ 00023605  0x00006008 jam  0x00000031 , 0x00000a99 
+ 00023606  0x00006009 call  0x00007d86 
+ 00023607  0x0000600a jam  0x00000005 , 0x000044c4 
+ 00023608  0x0000600b branch  0x00005bd5 
+ 00023609  0x0000600e fetch  0x00000001 , 0x000009b9 
+ 00023610  0x0000600f beq  0x00000003 , 0x00005c3d 
+ 00023611  0x00006010 jam  0x00000002 , 0x000044bf 
+ 00023612  0x00006011 rtn 
+ 00023613  0x00006014 call  0x0000718d 
+ 00023614  0x00006018 fetch  0x00000001 , 0x000044c6 
+ 00023615  0x00006019 beq  0x00000083 , 0x00005c41 
+ 00023616  0x0000601a call  0x00005b18 
+ 00023617  0x0000601c call  0x0000717a 
+ 00023618  0x0000601d arg  0x00000af2 , 0x00000011 
+ 00023619  0x0000601e arg  0x00000a6e , 0x00000012 
+ 00023620  0x0000601f arg  0x00000010 , 0x00000039 
+ 00023621  0x00006020 call  0x00007f88 
+ 00023622  0x00006021 branch  0x00005c49 , 0x00000005 
+ 00023623  0x00006023 jam  0x0000000b , 0x0000047b 
+ 00023624  0x00006024 branch  0x00005b54 
+ 00023625  0x00006028 call  0x00007595 
+ 00023626  0x00006029 nbranch  0x00005c47 , 0x00000005 
+ 00023627  0x0000602a jam  0x00000001 , 0x00004429 
+ 00023628  0x0000602b fetch  0x00000001 , 0x000044c6 
+ 00023629  0x0000602c beq  0x00000081 , 0x00005c35 
+ 00023630  0x0000602d beq  0x00000083 , 0x00005c35 
+ 00023631  0x0000602e jam  0x00000002 , 0x000044bf 
+ 00023632  0x0000602f jam  0x00000007 , 0x000044c1 
+ 00023633  0x00006030 rtn 
+ 00023634  0x00006033 fetch  0x00000001 , 0x000044c6 
+ 00023635  0x00006034 beq  0x00000083 , 0x00005c56 
+ 00023636  0x00006035 jam  0x00000000 , 0x00004664 
+ 00023637  0x00006037 branch  0x00005b3d 
+ 00023638  0x0000603d jam  0x00000000 , 0x00004663 
+ 00023639  0x0000603e branch  0x00005b1b 
+ 00023640  0x00006042 jam  0x00000002 , 0x000044bf 
+ 00023641  0x00006043 fetch  0x00000001 , 0x000044c3 
+ 00023642  0x00006044 beq  0x00000003 , 0x00005c5c 
+ 00023643  0x00006046 rtn 
+ 00023644  0x00006049 jam  0x00000002 , 0x000044c1 
+ 00023645  0x0000604a jam  0x00000000 , 0x000009b9 
+ 00023646  0x0000604b branch  0x00007a99 
+ 00023647  0x0000604e jam  0x00000002 , 0x000044bf 
+ 00023648  0x0000604f jam  0x00000003 , 0x000044c1 
+ 00023649  0x00006050 branch  0x00005bcf 
+ 00023650  0x00006055 force  0x00000006 , 0x00000012 
+ 00023651  0x00006056 branch  0x00005847 
+ 00023652  0x0000605b fetch  0x00000001 , 0x000002db 
+ 00023653  0x0000605c beq  0x00000000 , 0x00005c7b 
+ 00023654  0x0000605d beq  0x00000001 , 0x00005c83 
+ 00023655  0x0000605e beq  0x00000002 , 0x00005c8e 
+ 00023656  0x0000605f beq  0x00000003 , 0x00005caa 
+ 00023657  0x00006060 beq  0x00000004 , 0x00005ce1 
+ 00023658  0x00006061 beq  0x00000005 , 0x00005ce6 
+ 00023659  0x00006062 beq  0x00000006 , 0x00005cea 
+ 00023660  0x00006063 beq  0x00000007 , 0x00005cf5 
+ 00023661  0x00006064 beq  0x00000008 , 0x00005c99 
+ 00023662  0x00006065 beq  0x00000009 , 0x00005cf5 
+ 00023663  0x00006066 beq  0x0000000a , 0x00005cef 
+ 00023664  0x00006067 beq  0x0000000b , 0x00005cf5 
+ 00023665  0x00006068 beq  0x0000000c , 0x00005c9f 
+ 00023666  0x00006069 beq  0x0000000d , 0x00005cf5 
+ 00023667  0x0000606a beq  0x00000012 , 0x00005ca6 
+ 00023668  0x0000606b beq  0x00000013 , 0x00005cf5 
+ 00023669  0x0000606c arg  0x00000002 , 0x00000011 
+ 00023670  0x0000606d arg  0x00000007 , 0x00000012 
+ 00023671  0x0000606e call  0x00005842 
+ 00023672  0x0000606f fetch  0x00000001 , 0x000002db 
+ 00023673  0x00006070 istore  0x00000001 , 0x00000005 
+ 00023674  0x00006071 rtn 
+ 00023675  0x00006075 ifetch  0x00000009 , 0x00000006 
+ 00023676  0x00006076 store  0x00000009 , 0x000043d3 
+ 00023677  0x00006077 ifetch  0x00000002 , 0x00000006 
+ 00023678  0x00006078 store  0x00000002 , 0x0000045f 
+ 00023679  0x00006079 fetch  0x00000001 , 0x0000043f 
+ 00023680  0x0000607a set1  0x00000005 , 0x0000003f 
+ 00023681  0x0000607b store  0x00000001 , 0x0000043f 
+ 00023682  0x0000607c rtn 
+ 00023683  0x0000607f ifetch  0x00000005 , 0x00000006 
+ 00023684  0x00006080 store  0x00000005 , 0x000043ce 
+ 00023685  0x00006081 ifetch  0x00000002 , 0x00000006 
+ 00023686  0x00006082 store  0x00000002 , 0x0000045f 
+ 00023687  0x00006083 fetcht  0x00000002 , 0x00000459 
+ 00023688  0x00006084 isub  0x00000002 , 0x0000003e 
+ 00023689  0x00006085 nbranch  0x00005c8e , 0x00000002 
+ 00023690  0x00006086 fetch  0x00000001 , 0x0000043f 
+ 00023691  0x00006087 set1  0x00000006 , 0x0000003f 
+ 00023692  0x00006088 store  0x00000001 , 0x0000043f 
+ 00023693  0x00006089 rtn 
+ 00023694  0x0000608d setarg  0x00000014 
+ 00023695  0x0000608e store  0x00000002 , 0x0000046d 
+ 00023696  0x0000608f store  0x00000002 , 0x000044ba 
+ 00023697  0x00006090 rtn 
+ 00023698  0x00006093 arg  0x00000013 , 0x00000013 
+ 00023699  0x00006097 arg  0x00000002 , 0x00000011 
+ 00023700  0x00006098 arg  0x00000002 , 0x00000012 
+ 00023701  0x00006099 call  0x00005842 
+ 00023702  0x0000609a copy  0x00000013 , 0x0000003f 
+ 00023703  0x0000609b istore  0x00000001 , 0x00000005 
+ 00023704  0x0000609c rtn 
+ 00023705  0x000060a1 arg  0x00000009 , 0x00000011 
+ 00023706  0x000060a2 arg  0x00000009 , 0x00000012 
+ 00023707  0x000060a3 call  0x00005842 
+ 00023708  0x000060a4 setarg  0x00000001 
+ 00023709  0x000060a5 istore  0x00000008 , 0x00000005 
+ 00023710  0x000060a6 rtn 
+ 00023711  0x000060aa rtn  0x00000029 
+ 00023712  0x000060ac arg  0x00000006 , 0x00000011 
+ 00023713  0x000060ad arg  0x0000000c , 0x00000012 
+ 00023714  0x000060ae call  0x00005842 
+ 00023715  0x000060af fetch  0x00000005 , 0x00004510 
+ 00023716  0x000060b0 istore  0x00000005 , 0x00000005 
+ 00023717  0x000060b1 rtn 
+ 00023718  0x000060b5 arg  0x00000013 , 0x00000012 
+ 00023719  0x000060b6 branch  0x00005ca8 
+ 00023720  0x000060ba arg  0x00000001 , 0x00000011 
+ 00023721  0x000060bb branch  0x00005842 
+ 00023722  0x000060bf ifetch  0x00000008 , 0x00000006 
+ 00023723  0x000060c0 store  0x00000008 , 0x000044cd 
+ 00023724  0x000060c1 ifetch  0x00000002 , 0x00000006 
+ 00023725  0x000060c2 store  0x00000002 , 0x000044cb 
+ 00023726  0x000060c3 ifetch  0x00000008 , 0x00000006 
+ 00023727  0x000060c4 store  0x00000008 , 0x000044aa 
+ 00023728  0x000060c5 ifetch  0x00000004 , 0x00000006 
+ 00023729  0x000060c6 store  0x00000004 , 0x00004411 
+ 00023730  0x000060c7 call  0x00005ccf 
+ 00023731  0x000060c8 bpatchx  0x0000007a , 0x0000402f 
+ 00023732  0x000060c9 fetch  0x00000001 , 0x000044c4 
+ 00023733  0x000060ca beq  0x00000005 , 0x00005cbc 
+ 00023734  0x000060cb fetch  0x00000001 , 0x000044e9 
+ 00023735  0x000060cc bbit1  0x00000001 , 0x00005cbf 
+ 00023736  0x000060cd fetch  0x00000001 , 0x00004217 
+ 00023737  0x000060ce ncall  0x000067be , 0x00000034 
+ 00023738  0x000060cf fetch  0x00000001 , 0x00004429 
+ 00023739  0x000060d0 beq  0x00000000 , 0x00005cc4 
+ 00023740  0x000060d2 jam  0x00000001 , 0x000044c5 
+ 00023741  0x000060d3 call  0x00005cdd 
+ 00023742  0x000060d4 branch  0x000073a2 
+ 00023743  0x000060d7 jam  0x00000001 , 0x00004429 
+ 00023744  0x000060d8 arg  0x000044ea , 0x00000006 
+ 00023745  0x000060d9 arg  0x00004419 , 0x00000005 
+ 00023746  0x000060da call  0x00007ebf 
+ 00023747  0x000060db branch  0x00005cbc 
+ 00023748  0x000060df bpatchx  0x0000007b , 0x0000402f 
+ 00023749  0x000060e0 jam  0x00000000 , 0x000044c5 
+ 00023750  0x000060e1 jam  0x00000000 , 0x000044c4 
+ 00023751  0x000060e2 jam  0x00000041 , 0x00000a99 
+ 00023752  0x000060e3 branch  0x00007d86 
+ 00023753  0x000060e6 arg  0x00000002 , 0x00000011 
+ 00023754  0x000060e7 arg  0x0000000d , 0x00000012 
+ 00023755  0x000060e8 call  0x00005842 
+ 00023756  0x000060e9 setarg  0x00000006 
+ 00023757  0x000060ea istore  0x00000001 , 0x00000005 
+ 00023758  0x000060eb rtn 
+ 00023759  0x000060ee arg  0x000044b2 , 0x00000005 
+ 00023760  0x000060ef force  0x00000008 , 0x00000039 
+ 00023761  0x000060f0 call  0x0000630d 
+ 00023762  0x000060f1 arg  0x00004415 , 0x00000005 
+ 00023763  0x000060f2 force  0x00000004 , 0x00000039 
+ 00023764  0x000060f3 call  0x0000630d 
+ 00023765  0x000060f4 arg  0x0000000d , 0x00000011 
+ 00023766  0x000060f5 arg  0x00000004 , 0x00000012 
+ 00023767  0x000060f6 call  0x00005842 
+ 00023768  0x000060f7 fetch  0x00000008 , 0x000044b2 
+ 00023769  0x000060f8 istore  0x00000008 , 0x00000005 
+ 00023770  0x000060f9 fetch  0x00000004 , 0x00004415 
+ 00023771  0x000060fa istore  0x00000004 , 0x00000005 
+ 00023772  0x000060fb rtn 
+ 00023773  0x000060fe arg  0x00000005 , 0x00000012 
+ 00023774  0x000060ff branch  0x00005ca8 
+ 00023775  0x00006102 arg  0x00000006 , 0x00000012 
+ 00023776  0x00006103 branch  0x00005ca8 
+ 00023777  0x00006107 ifetch  0x00000008 , 0x00000006 
+ 00023778  0x00006108 store  0x00000008 , 0x000044b2 
+ 00023779  0x00006109 ifetch  0x00000004 , 0x00000006 
+ 00023780  0x0000610a store  0x00000004 , 0x00004415 
+ 00023781  0x0000610b branch  0x000073a2 
+ 00023782  0x0000610e fetch  0x00000001 , 0x0000043f 
+ 00023783  0x0000610f set1  0x00000004 , 0x0000003f 
+ 00023784  0x00006110 store  0x00000001 , 0x0000043f 
+ 00023785  0x00006111 rtn 
+ 00023786  0x00006114 rtn  0x00000029 
+ 00023787  0x00006115 jam  0x00000032 , 0x00000a99 
+ 00023788  0x00006116 call  0x00007d86 
+ 00023789  0x00006117 jam  0x00000004 , 0x000044c5 
+ 00023790  0x00006118 branch  0x00005cdf 
+ 00023791  0x0000611b jam  0x00000002 , 0x000044c5 
+ 00023792  0x0000611c call  0x00005cf3 
+ 00023793  0x0000611d jam  0x00000033 , 0x00000a99 
+ 00023794  0x0000611e branch  0x00007d86 
+ 00023795  0x00006121 arg  0x0000000b , 0x00000012 
+ 00023796  0x00006122 branch  0x00005ca8 
+ 00023797  0x0000612a rtn 
+ 00023798  0x00006132 rtn  0x0000002b 
+ 00023799  0x00006134 bpatchx  0x0000007c , 0x0000402f 
+ 00023800  0x00006135 setarg  0x00000000 
+ 00023801  0x00006136 store  0x00000001 , 0x00000048 
+ 00023802  0x00006137 store  0x00000001 , 0x00000055 
+ 00023803  0x00006138 store  0x00000001 , 0x00000078 
+ 00023804  0x00006139 store  0x00000001 , 0x0000007c 
+ 00023805  0x0000613a store  0x00000001 , 0x00004158 
+ 00023806  0x0000613b store  0x00000001 , 0x000004d7 
+ 00023807  0x0000613c store  0x00000001 , 0x0000016d 
+ 00023808  0x0000613d store  0x00000001 , 0x000009b5 
+ 00023809  0x0000613e jam  0x00000000 , 0x0000455b 
+ 00023810  0x0000613f jam  0x00000000 , 0x00000229 
+ 00023811  0x00006140 jam  0x00000000 , 0x000004d8 
+ 00023812  0x00006142 jam  0x00000000 , 0x000009b5 
+ 00023813  0x00006143 jam  0x00000000 , 0x000009b4 
+ 00023814  0x00006144 jam  0x00000000 , 0x000004d1 
+ 00023815  0x00006147 rtn 
+ 00023816  0x0000614a bpatchx  0x0000007d , 0x0000402f 
+ 00023817  0x0000614b call  0x000062ff , 0x00000029 
+ 00023818  0x0000614c ncall  0x00006303 , 0x00000029 
+ 00023819  0x0000614d call  0x000062bc 
+ 00023820  0x0000614e nrtn  0x00000034 
+ 00023821  0x0000614f fetch  0x00000001 , 0x0000004c 
+ 00023822  0x00006150 rtnbit0  0x00000006 
+ 00023823  0x00006151 set0  0x00000006 , 0x0000003f 
+ 00023824  0x00006152 set0  0x00000001 , 0x00000000 
+ 00023825  0x00006153 store  0x00000001 , 0x0000004c 
+ 00023826  0x00006154 fetch  0x00000001 , 0x00000551 
+ 00023827  0x00006155 fetcht  0x00000001 , 0x0000004c 
+ 00023828  0x00006156 isolate1  0x00000000 , 0x0000003f 
+ 00023829  0x00006157 setflag  0x00000001 , 0x00000001 , 0x00000002 
+ 00023830  0x00006158 storet  0x00000001 , 0x0000004c 
+ 00023831  0x00006159 and_into  0x00000002 , 0x00000002 
+ 00023832  0x0000615a storet  0x00000001 , 0x0000007f 
+ 00023833  0x0000615b fetcht  0x00000001 , 0x0000004c 
+ 00023834  0x0000615c rshift  0x0000003f , 0x0000003f 
+ 00023835  0x0000615d store  0x00000001 , 0x0000007d 
+ 00023836  0x0000615e bpatchx  0x0000007e , 0x0000402f 
+ 00023837  0x0000615f fetch  0x00000001 , 0x0000007d 
+ 00023838  0x00006160 beq  0x0000007f , 0x00005d66 
+ 00023839  0x00006161 beq  0x00000003 , 0x00005db1 
+ 00023840  0x00006162 beq  0x00000004 , 0x00005dc2 
+ 00023841  0x00006163 beq  0x0000003c , 0x00005d59 
+ 00023842  0x00006164 beq  0x00000005 , 0x00005d55 
+ 00023843  0x00006165 beq  0x0000000f , 0x00005fa8 
+ 00023844  0x00006166 beq  0x00000010 , 0x00005e24 
+ 00023845  0x00006167 beq  0x00000023 , 0x00005e42 
+ 00023846  0x00006168 beq  0x00000039 , 0x00005fc1 
+ 00023847  0x00006169 beq  0x00000038 , 0x00005fbc 
+ 00023848  0x0000616a beq  0x00000031 , 0x00005e27 
+ 00023849  0x0000616b beq  0x00000037 , 0x00005eb0 
+ 00023850  0x0000616c beq  0x00000027 , 0x00005eac 
+ 00023851  0x0000616d beq  0x00000033 , 0x00005ea9 
+ 00023852  0x0000616e beq  0x00000025 , 0x00005eae 
+ 00023853  0x0000616f beq  0x00000026 , 0x00005e3e 
+ 00023854  0x00006170 beq  0x00000007 , 0x00005e36 
+ 00023855  0x00006171 beq  0x0000002d , 0x00005e2d 
+ 00023856  0x00006172 beq  0x0000002e , 0x00005e2e 
+ 00023857  0x00006173 beq  0x00000001 , 0x00005ea5 
+ 00023858  0x00006174 beq  0x00000002 , 0x00005e90 
+ 00023859  0x00006175 beq  0x00000028 , 0x00005fb3 
+ 00023860  0x00006176 beq  0x00000009 , 0x00005e86 
+ 00023861  0x00006177 beq  0x0000000b , 0x00005e5f 
+ 00023862  0x00006178 beq  0x00000008 , 0x00005e43 
+ 00023863  0x00006179 beq  0x0000000c , 0x00005e6a 
+ 00023864  0x0000617a beq  0x0000001f , 0x00005e3a 
+ 00023865  0x0000617b beq  0x00000020 , 0x00005e3c 
+ 00023866  0x0000617c beq  0x00000021 , 0x00005eca 
+ 00023867  0x0000617d beq  0x00000022 , 0x00005eca 
+ 00023868  0x0000617e beq  0x00000035 , 0x00005ecb 
+ 00023869  0x0000617f beq  0x00000036 , 0x00005ecc 
+ 00023870  0x00006180 beq  0x00000024 , 0x00005eca 
+ 00023871  0x00006181 beq  0x00000034 , 0x00005ecd 
+ 00023872  0x00006182 beq  0x00000017 , 0x00005ed6 
+ 00023873  0x00006183 beq  0x00000011 , 0x00005ef2 
+ 00023874  0x00006184 beq  0x00000012 , 0x00005ef6 
+ 00023875  0x00006185 beq  0x00000013 , 0x00005ef8 
+ 00023876  0x00006186 beq  0x0000000d , 0x00005f0a 
+ 00023877  0x00006187 beq  0x0000000e , 0x00005f0a 
+ 00023878  0x00006188 beq  0x0000002f , 0x00005eaa 
+ 00023879  0x00006189 beq  0x00000030 , 0x00005f0a 
+ 00023880  0x0000618a beq  0x0000000a , 0x00005f0a 
+ 00023881  0x0000618b beq  0x00000018 , 0x00005f0b 
+ 00023882  0x0000618c beq  0x00000032 , 0x00005f0a 
+ 00023883  0x0000618d beq  0x0000003d , 0x00005f10 
+ 00023884  0x0000618e beq  0x0000003e , 0x00005f51 
+ 00023885  0x0000618f beq  0x0000003f , 0x00005f4b 
+ 00023886  0x00006190 beq  0x00000040 , 0x00005f78 
+ 00023887  0x00006191 beq  0x00000041 , 0x00005f8a 
+ 00023888  0x00006192 beq  0x00000006 , 0x00005fa7 
+ 00023889  0x00006193 beq  0x0000003a , 0x00005d57 
+ 00023890  0x00006197 jam  0x00000019 , 0x0000007e 
+ 00023891  0x00006199 jam  0x00000004 , 0x0000007c 
+ 00023892  0x0000619a rtn 
+ 00023893  0x0000619d jam  0x00000006 , 0x0000007c 
+ 00023894  0x0000619e rtn 
+ 00023895  0x000061a1 jam  0x0000003b , 0x0000007c 
+ 00023896  0x000061a2 rtn 
+ 00023897  0x000061a5 fetch  0x00000004 , 0x00000552 
+ 00023898  0x000061a6 lshift  0x0000003f , 0x0000003f 
+ 00023899  0x000061a7 store  0x00000004 , 0x000040d2 
+ 00023900  0x000061a8 fetch  0x00000001 , 0x00000556 
+ 00023901  0x000061a9 store  0x00000001 , 0x000040d9 
+ 00023902  0x000061aa fetch  0x00000005 , 0x00000557 
+ 00023903  0x000061ab store  0x00000005 , 0x000040e7 
+ 00023904  0x000061ac fetch  0x00000005 , 0x0000055c 
+ 00023905  0x000061ad istore  0x00000005 , 0x00000005 
+ 00023906  0x000061ae fetch  0x00000001 , 0x00000031 
+ 00023907  0x000061af set1  0x00000003 , 0x0000003f 
+ 00023908  0x000061b0 store  0x00000001 , 0x00000031 
+ 00023909  0x000061b1 rtn 
+ 00023910  0x000061b3 bpatchx  0x0000007f , 0x0000402f 
+ 00023911  0x000061b4 fetch  0x00000001 , 0x00000552 
+ 00023912  0x000061b5 set1  0x00000007 , 0x0000003f 
+ 00023913  0x000061b6 store  0x00000001 , 0x0000007d 
+ 00023914  0x000061b7 beq  0x00000081 , 0x00005d88 
+ 00023915  0x000061b8 beq  0x00000082 , 0x00005d8d 
+ 00023916  0x000061b9 beq  0x00000095 , 0x00005eb1 
+ 00023917  0x000061ba beq  0x00000096 , 0x00005eca 
+ 00023918  0x000061bb beq  0x0000008b , 0x00005ebf 
+ 00023919  0x000061bc beq  0x00000083 , 0x00005da5 
+ 00023920  0x000061bd beq  0x00000084 , 0x00005da7 
+ 00023921  0x000061be beq  0x00000090 , 0x00005d7a 
+ 00023922  0x000061bf beq  0x00000097 , 0x00005d9e 
+ 00023923  0x000061c0 beq  0x00000098 , 0x00005da3 
+ 00023924  0x000061c1 beq  0x00000099 , 0x00005d7d 
+ 00023925  0x000061c2 beq  0x0000009a , 0x00005d80 
+ 00023926  0x000061c3 rtneq  0x00000084 
+ 00023927  0x000061c7 jam  0x00000082 , 0x0000007c 
+ 00023928  0x000061c8 jam  0x00000019 , 0x0000007e 
+ 00023929  0x000061ca rtn 
+ 00023930  0x000061cc jam  0x00000082 , 0x0000007c 
+ 00023931  0x000061cd jam  0x0000002e , 0x0000007e 
+ 00023932  0x000061ce rtn 
+ 00023933  0x000061d1 call  0x00005d82 
+ 00023934  0x000061d2 jam  0x0000009a , 0x0000007c 
+ 00023935  0x000061d3 rtn 
+ 00023936  0x000061d6 call  0x00005d82 
+ 00023937  0x000061d7 branch  0x00005d86 
+ 00023938  0x000061da arg  0x0000465e , 0x00000005 
+ 00023939  0x000061db fetch  0x00000003 , 0x00000553 
+ 00023940  0x000061dc istore  0x00000003 , 0x00000005 
+ 00023941  0x000061dd rtn 
+ 00023942  0x000061e0 branch  0x000076d8 , 0x00000001 
+ 00023943  0x000061e1 rtn 
+ 00023944  0x000061e3 fetch  0x00000001 , 0x00000554 
+ 00023945  0x000061e4 set1  0x00000007 , 0x0000003f 
+ 00023946  0x000061e5 store  0x00000001 , 0x000004c9 
+ 00023947  0x000061e6 beq  0x0000008b , 0x00005d92 
+ 00023948  0x000061e7 rtn 
+ 00023949  0x000061eb fetch  0x00000001 , 0x00000554 
+ 00023950  0x000061ec set1  0x00000007 , 0x0000003f 
+ 00023951  0x000061ed store  0x00000001 , 0x000004c9 
+ 00023952  0x000061ee beq  0x0000008b , 0x00005d96 
+ 00023953  0x000061ef rtn 
+ 00023954  0x000061f2 fetch  0x00000001 , 0x0000415a 
+ 00023955  0x000061f3 fetcht  0x00000001 , 0x0000004c 
+ 00023956  0x000061f4 nsetflag  0x00000034 , 0x00000005 , 0x00000002 
+ 00023957  0x000061f5 storet  0x00000001 , 0x0000004c 
+ 00023958  0x000061f7 fetch  0x00000001 , 0x00000030 
+ 00023959  0x000061f8 rtnbit0  0x00000005 
+ 00023960  0x000061f9 set0  0x00000005 , 0x0000003f 
+ 00023961  0x000061fa store  0x00000001 , 0x00000030 
+ 00023962  0x000061fb fetch  0x00000001 , 0x000004d7 
+ 00023963  0x000061fc nrtn  0x00000034 
+ 00023964  0x000061fd jam  0x00000031 , 0x0000007c 
+ 00023965  0x000061fe rtn 
+ 00023966  0x00006201 nbranch  0x00005da1 , 0x00000029 
+ 00023967  0x00006202 jam  0x00000012 , 0x0000007c 
+ 00023968  0x00006203 branch  0x000062eb 
+ 00023969  0x00006206 jam  0x00000097 , 0x0000007c 
+ 00023970  0x00006207 rtn 
+ 00023971  0x0000620c call  0x000062eb 
+ 00023972  0x0000620d branch  0x00005ffe 
+ 00023973  0x00006210 jam  0x00000084 , 0x0000007c 
+ 00023974  0x00006211 rtn 
+ 00023975  0x00006214 fetcht  0x00000001 , 0x00000555 
+ 00023976  0x00006215 and  0x00000002 , 0x00000001 , 0x00000002 
+ 00023977  0x00006216 storet  0x00000001 , 0x000004d0 
+ 00023978  0x00006217 fetch  0x00000001 , 0x000041ce 
+ 00023979  0x00006218 bne  0x00000051 , 0x00005dad 
+ 00023980  0x00006219 jam  0x00000000 , 0x000041ce 
+ 00023981  0x0000621b fetch  0x00000001 , 0x00000055 
+ 00023982  0x0000621c rtnne  0x00000015 
+ 00023983  0x0000621d jam  0x00000004 , 0x00000055 
+ 00023984  0x0000621e branch  0x0000631b 
+ 00023985  0x00006221 bpatchx  0x00000080 , 0x00004030 
+ 00023986  0x00006222 fetch  0x00000001 , 0x00000552 
+ 00023987  0x00006223 store  0x00000001 , 0x000004c9 
+ 00023988  0x00006224 beq  0x00000033 , 0x00005dd8 
+ 00023989  0x00006225 beq  0x00000008 , 0x00005de7 
+ 00023990  0x00006226 beq  0x0000000f , 0x00005dee 
+ 00023991  0x00006227 beq  0x00000010 , 0x00005df4 
+ 00023992  0x00006228 beq  0x00000011 , 0x00005df5 
+ 00023993  0x00006229 beq  0x00000012 , 0x00005dfd 
+ 00023994  0x0000622a beq  0x00000018 , 0x00005e13 
+ 00023995  0x0000622b beq  0x00000017 , 0x00005e16 
+ 00023996  0x0000622c beq  0x00000013 , 0x00005dcf 
+ 00023997  0x0000622e beq  0x0000003d , 0x00005f1e 
+ 00023998  0x0000622f beq  0x0000003e , 0x00005f6a 
+ 00023999  0x00006230 beq  0x00000040 , 0x00005f20 
+ 00024000  0x00006231 beq  0x00000041 , 0x00005f3d 
+ 00024001  0x00006232 rtn 
+ 00024002  0x00006235 bpatchx  0x00000081 , 0x00004030 
+ 00024003  0x00006236 fetch  0x00000001 , 0x00000552 
+ 00024004  0x00006237 store  0x00000001 , 0x000004c9 
+ 00024005  0x00006238 beq  0x00000001 , 0x00005e0a 
+ 00024006  0x00006239 beq  0x00000033 , 0x00005de2 
+ 00024007  0x0000623a beq  0x0000000b , 0x00005dfe 
+ 00024008  0x0000623b beq  0x00000008 , 0x00005e01 
+ 00024009  0x0000623c beq  0x00000013 , 0x00005dd2 
+ 00024010  0x0000623e beq  0x00000040 , 0x00005e0b 
+ 00024011  0x0000623f beq  0x00000041 , 0x00005e0e 
+ 00024012  0x00006240 beq  0x00000018 , 0x00005e11 
+ 00024013  0x00006241 beq  0x00000017 , 0x00005e22 
+ 00024014  0x00006242 rtn 
+ 00024015  0x00006245 jam  0x00000020 , 0x00000a99 
+ 00024016  0x00006246 call  0x00007d86 
+ 00024017  0x00006247 branch  0x000021dc 
+ 00024018  0x00006249 jam  0x00000019 , 0x00000a99 
+ 00024019  0x0000624a call  0x00007d86 
+ 00024020  0x0000624b jam  0x00000002 , 0x0000455b 
+ 00024021  0x0000624c setarg  0x00000050 
+ 00024022  0x0000624d arg  0x00000006 , 0x00000007 
+ 00024023  0x0000624e branch  0x00007f08 
+ 00024024  0x00006254 fetch  0x00000001 , 0x000004d1 
+ 00024025  0x00006255 set1  0x00000000 , 0x0000003f 
+ 00024026  0x00006256 store  0x00000001 , 0x000004d1 
+ 00024027  0x00006257 jam  0x00000001 , 0x00000a99 
+ 00024028  0x00006258 call  0x00007d86 
+ 00024029  0x00006259 jam  0x0000008b , 0x0000007c 
+ 00024030  0x0000625d fetch  0x00000001 , 0x00000055 
+ 00024031  0x0000625e bne  0x00000005 , 0x00005d07 
+ 00024032  0x00006261 jam  0x00000006 , 0x00000055 
+ 00024033  0x00006262 rtn 
+ 00024034  0x0000626b jam  0x0000000b , 0x000004ca 
+ 00024035  0x0000626c jam  0x00000007 , 0x0000007c 
+ 00024036  0x0000626e jam  0x00000000 , 0x00000055 
+ 00024037  0x00006270 branch  0x00005d07 , 0x00000001 
+ 00024038  0x00006271 rtn 
+ 00024039  0x00006274 fetch  0x00000001 , 0x000041bd 
+ 00024040  0x00006275 nrtn  0x00000034 
+ 00024041  0x00006276 call  0x0000244f 
+ 00024042  0x00006277 call  0x00005ffc 
+ 00024043  0x00006278 rtn  0x00000029 
+ 00024044  0x00006279 set1  0x00000021 , 0x00000000 
+ 00024045  0x0000627a rtn 
+ 00024046  0x0000627d nrtn  0x00000029 
+ 00024047  0x0000627e jam  0x00000010 , 0x0000007c 
+ 00024048  0x0000627f fetch  0x00000001 , 0x0000004c 
+ 00024049  0x00006280 rtnbit0  0x00000002 
+ 00024050  0x00006281 jam  0x00000012 , 0x0000007c 
+ 00024051  0x00006282 rtn 
+ 00024052  0x00006285 branch  0x00005ffe 
+ 00024053  0x00006288 call  0x00006059 
+ 00024054  0x00006289 fetch  0x00000001 , 0x00000030 
+ 00024055  0x0000628a rtnbit1  0x00000004 
+ 00024056  0x0000628b jam  0x00000031 , 0x0000007c 
+ 00024057  0x0000628c fetch  0x00000001 , 0x00000055 
+ 00024058  0x0000628d rtnne  0x0000000a 
+ 00024059  0x0000628e jam  0x0000000b , 0x00000055 
+ 00024060  0x0000628f rtn 
+ 00024061  0x00006299 rtn 
+ 00024062  0x0000629d jam  0x00000007 , 0x0000007c 
+ 00024063  0x0000629e jam  0x00000013 , 0x000004ca 
+ 00024064  0x0000629f rtn 
+ 00024065  0x000062a2 fetch  0x00000001 , 0x00000553 
+ 00024066  0x000062a3 beq  0x00000006 , 0x00005e07 
+ 00024067  0x000062a4 rtnne  0x00000018 
+ 00024068  0x000062a5 jam  0x00000018 , 0x000004ca 
+ 00024069  0x000062a6 jam  0x00000007 , 0x0000007c 
+ 00024070  0x000062a7 rtn 
+ 00024071  0x000062a9 jam  0x00000006 , 0x000004ca 
+ 00024072  0x000062aa jam  0x00000007 , 0x0000007c 
+ 00024073  0x000062ab rtn 
+ 00024074  0x000062ae rtn 
+ 00024075  0x000062b1 jam  0x00000000 , 0x000009ae 
+ 00024076  0x000062b2 jam  0x00000007 , 0x0000007c 
+ 00024077  0x000062b3 branch  0x00005d07 
+ 00024078  0x000062b6 jam  0x00000000 , 0x000009ae 
+ 00024079  0x000062b7 jam  0x00000007 , 0x0000007c 
+ 00024080  0x000062b8 branch  0x00005d07 
+ 00024081  0x000062ba jam  0x00000024 , 0x00000a99 
+ 00024082  0x000062bb branch  0x00007d86 
+ 00024083  0x000062be jam  0x00000023 , 0x00000a99 
+ 00024084  0x000062bf call  0x00007d86 
+ 00024085  0x000062c0 branch  0x000026e9 
+ 00024086  0x000062c3 jam  0x00000022 , 0x00000a99 
+ 00024087  0x000062c4 call  0x00007d86 
+ 00024088  0x000062c5 setarg  0x00000000 
+ 00024089  0x000062c6 store  0x00000002 , 0x00000075 
+ 00024090  0x000062c7 fetch  0x00000002 , 0x000041e3 
+ 00024091  0x000062c8 lshift  0x0000003f , 0x0000003f 
+ 00024092  0x000062c9 store  0x00000002 , 0x00000032 
+ 00024093  0x000062ca fetch  0x00000001 , 0x000041e5 
+ 00024094  0x000062cb store  0x00000001 , 0x00000073 
+ 00024095  0x000062cc fetch  0x00000001 , 0x000041e7 
+ 00024096  0x000062cd store  0x00000001 , 0x00000074 
+ 00024097  0x000062ce branch  0x000026c6 
+ 00024098  0x000062d1 jam  0x00000021 , 0x00000a99 
+ 00024099  0x000062d2 branch  0x00007d86 
+ 00024100  0x000062d5 fetcht  0x00000001 , 0x00000552 
+ 00024101  0x000062d6 storet  0x00000001 , 0x00000054 
+ 00024102  0x000062d7 branch  0x00005e38 
+ 00024103  0x000062da fetch  0x00000001 , 0x000004d1 
+ 00024104  0x000062db set1  0x00000002 , 0x0000003f 
+ 00024105  0x000062dc store  0x00000001 , 0x000004d1 
+ 00024106  0x000062dd rtnbit1  0x00000003 
+ 00024107  0x000062de jam  0x00000031 , 0x0000007c 
+ 00024108  0x000062df branch  0x00005d07 
+ 00024109  0x000062e4 rtn 
+ 00024110  0x000062e7 fetch  0x00000001 , 0x000040d0 
+ 00024111  0x000062e8 fetcht  0x00000001 , 0x00000552 
+ 00024112  0x000062e9 isub  0x00000002 , 0x0000003e 
+ 00024113  0x000062eb branch  0x00005e38 , 0x00000002 
+ 00024114  0x000062ec jam  0x00000004 , 0x0000007c 
+ 00024115  0x000062ed jam  0x0000001f , 0x0000007e 
+ 00024116  0x000062ee jam  0x0000002e , 0x0000007d 
+ 00024117  0x000062ef rtn 
+ 00024118  0x000062f2 call  0x00006157 
+ 00024119  0x000062f3 branch  0x00005e38 
+ 00024120  0x000062f6 jam  0x00000003 , 0x0000007c 
+ 00024121  0x000062f7 rtn 
+ 00024122  0x000062fa jam  0x00000021 , 0x0000007c 
+ 00024123  0x000062fb rtn 
+ 00024124  0x000062fe jam  0x00000022 , 0x0000007c 
+ 00024125  0x000062ff rtn 
+ 00024126  0x00006302 fetch  0x00000001 , 0x00000055 
+ 00024127  0x00006303 rtneq  0x00000013 
+ 00024128  0x00006305 jam  0x00000002 , 0x00000055 
+ 00024129  0x00006307 rtn 
+ 00024130  0x0000630b rtn 
+ 00024131  0x0000630e call  0x00005ff9 
+ 00024132  0x0000630f jam  0x00000001 , 0x000004d4 
+ 00024133  0x00006310 jam  0x0000000a , 0x00000a99 
+ 00024134  0x00006311 call  0x00007d86 
+ 00024135  0x00006313 call  0x000062f3 
+ 00024136  0x00006314 nbranch  0x00006001 , 0x00000001 
+ 00024137  0x00006316 nbranch  0x00005e4e , 0x00000029 
+ 00024138  0x00006317 jam  0x00000004 , 0x0000007c 
+ 00024139  0x00006318 jam  0x00000008 , 0x0000007d 
+ 00024140  0x00006319 jam  0x00000023 , 0x0000007e 
+ 00024141  0x0000631a rtn 
+ 00024142  0x0000631c fetch  0x00000001 , 0x0000004b 
+ 00024143  0x0000631d set1  0x00000002 , 0x0000003f 
+ 00024144  0x0000631e store  0x00000001 , 0x0000004b 
+ 00024145  0x0000631f rtn 
+ 00024146  0x00006323 fetcht  0x00000001 , 0x0000004c 
+ 00024147  0x00006324 nsetflag  0x00000034 , 0x00000001 , 0x00000002 
+ 00024148  0x00006325 storet  0x00000001 , 0x0000004c 
+ 00024149  0x00006326 rtn 
+ 00024150  0x0000632a fetch  0x00000001 , 0x0000007f 
+ 00024151  0x0000632b rshift  0x0000003f , 0x0000003f 
+ 00024152  0x0000632c and_into  0x00000001 , 0x0000003f 
+ 00024153  0x0000632d rtn 
+ 00024154  0x00006330 fetch  0x00000001 , 0x00004217 
+ 00024155  0x00006331 rtn  0x00000034 
+ 00024156  0x00006332 fetch  0x00000001 , 0x000009b5 
+ 00024157  0x00006333 call  0x000067b2 , 0x00000034 
+ 00024158  0x00006334 rtn 
+ 00024159  0x00006337 call  0x00005e5a 
+ 00024160  0x00006338 call  0x00005e56 
+ 00024161  0x00006339 store  0x00000001 , 0x000004d5 
+ 00024162  0x0000633a call  0x00005ff9 
+ 00024163  0x0000633b jam  0x0000000c , 0x0000007c 
+ 00024164  0x0000633c fetch  0x00000001 , 0x000041bd 
+ 00024165  0x0000633d nrtn  0x00000034 
+ 00024166  0x0000633e fetch  0x00000001 , 0x00000030 
+ 00024167  0x0000633f rtnbit1  0x00000006 
+ 00024168  0x00006340 jam  0x00000006 , 0x0000007e 
+ 00024169  0x00006341 branch  0x00005d53 
+ 00024170  0x00006344 arg  0x00000040 , 0x00000011 
+ 00024171  0x00006345 call  0x00007288 
+ 00024172  0x00006346 fetch  0x00000004 , 0x00000552 
+ 00024173  0x00006347 fetcht  0x00000004 , 0x00000592 
+ 00024174  0x00006348 isub  0x00000002 , 0x0000003e 
+ 00024175  0x00006349 branch  0x00005e73 , 0x00000005 
+ 00024176  0x0000634a jam  0x00000007 , 0x0000007c 
+ 00024177  0x0000634b jam  0x00000005 , 0x000004ca 
+ 00024178  0x0000634c rtn 
+ 00024179  0x0000634e call  0x00005e77 
+ 00024180  0x0000634f fetch  0x00000001 , 0x0000465a 
+ 00024181  0x00006350 branch  0x00005f3e , 0x00000034 
+ 00024182  0x00006351 rtn 
+ 00024183  0x00006355 call  0x00007386 
+ 00024184  0x00006356 call  0x000021b2 
+ 00024185  0x00006357 fetch  0x00000001 , 0x0000004b 
+ 00024186  0x00006358 isolate1  0x00000001 , 0x0000003f 
+ 00024187  0x00006359 set0  0x00000001 , 0x0000003f 
+ 00024188  0x0000635a store  0x00000001 , 0x0000004b 
+ 00024189  0x0000635b fetch  0x00000001 , 0x00000055 
+ 00024190  0x0000635c beq  0x00000019 , 0x00005e81 
+ 00024191  0x0000635d beq  0x00000018 , 0x00005e81 
+ 00024192  0x0000635e rtn 
+ 00024193  0x00006360 fetch  0x00000001 , 0x000009b5 
+ 00024194  0x00006361 rtnne  0x00000000 
+ 00024195  0x00006362 fetch  0x00000001 , 0x0000004c 
+ 00024196  0x00006363 rtnbit1  0x00000002 
+ 00024197  0x00006364 branch  0x000063b1 
+ 00024198  0x00006367 arg  0x00000552 , 0x00000011 
+ 00024199  0x00006368 arg  0x00000582 , 0x00000012 
+ 00024200  0x00006369 arg  0x00000562 , 0x00000005 
+ 00024201  0x0000636a call  0x00007352 
+ 00024202  0x0000636b arg  0x00000040 , 0x00000011 
+ 00024203  0x0000636c call  0x00006311 
+ 00024204  0x0000636d jam  0x0000000b , 0x0000007c 
+ 00024205  0x0000636e fetch  0x00000001 , 0x00000030 
+ 00024206  0x0000636f bbit0  0x00000006 , 0x00005ffc 
+ 00024207  0x00006370 rtn 
+ 00024208  0x00006373 fetch  0x00000002 , 0x0000015f 
+ 00024209  0x00006374 add  0x0000003f , 0xfffffffd , 0x00000039 
+ 00024210  0x00006375 fetcht  0x00000001 , 0x00000552 
+ 00024211  0x00006376 setarg  0x00000101 
+ 00024212  0x00006377 iadd  0x00000002 , 0x00000005 
+ 00024213  0x00006378 arg  0x00000554 , 0x00000006 
+ 00024214  0x00006379 call  0x00007f01 
+ 00024215  0x0000637a fetcht  0x00000001 , 0x00000053 
+ 00024216  0x0000637b fetch  0x00000001 , 0x00000553 
+ 00024217  0x0000637c isub  0x00000002 , 0x0000003f 
+ 00024218  0x0000637d sub  0x0000003f , 0x0000000e , 0x0000003e 
+ 00024219  0x0000637e branch  0x00005ea0 , 0x00000002 
+ 00024220  0x0000637f add  0x00000002 , 0x0000000e , 0x0000003f 
+ 00024221  0x00006380 store  0x00000001 , 0x00000053 
+ 00024222  0x00006381 jam  0x00000001 , 0x0000007c 
+ 00024223  0x00006382 rtn 
+ 00024224  0x00006384 fetch  0x00000001 , 0x0000004c 
+ 00024225  0x00006385 set1  0x00000003 , 0x0000003f 
+ 00024226  0x00006386 store  0x00000001 , 0x0000004c 
+ 00024227  0x00006387 bbit1  0x00000004 , 0x00006006 
+ 00024228  0x00006388 rtn 
+ 00024229  0x0000638a fetch  0x00000001 , 0x00000552 
+ 00024230  0x0000638b store  0x00000001 , 0x0000007d 
+ 00024231  0x0000638c jam  0x00000002 , 0x0000007c 
+ 00024232  0x0000638d rtn 
+ 00024233  0x00006390 branch  0x00005e38 
+ 00024234  0x00006393 jam  0x00000030 , 0x0000007c 
+ 00024235  0x00006394 rtn 
+ 00024236  0x00006397 jam  0x00000028 , 0x0000007c 
+ 00024237  0x00006398 rtn 
+ 00024238  0x0000639b jam  0x00000026 , 0x0000007c 
+ 00024239  0x0000639c rtn 
+ 00024240  0x000063a1 rtn 
+ 00024241  0x000063a6 fetch  0x00000002 , 0x00000032 
+ 00024242  0x000063a7 iforce  0x00000002 
+ 00024243  0x000063a8 fetch  0x00000001 , 0x00000553 
+ 00024244  0x000063a9 store  0x00000001 , 0x00000095 
+ 00024245  0x000063aa imul32  0x00000002 , 0x00000002 
+ 00024246  0x000063ab fetch  0x00000002 , 0x00000554 
+ 00024247  0x000063ac lshift  0x0000003f , 0x0000003f 
+ 00024248  0x000063ad store  0x00000002 , 0x00000096 
+ 00024249  0x000063ae fetch  0x00000004 , 0x00000556 
+ 00024250  0x000063af lshift  0x0000003f , 0x0000003f 
+ 00024251  0x000063b0 store  0x00000004 , 0x00000091 
+ 00024252  0x000063b2 deposit  0x00000002 
+ 00024253  0x000063b3 store  0x00000002 , 0x00000098 
+ 00024254  0x000063b4 rtn 
+ 00024255  0x000063b6 fetcht  0x00000001 , 0x0000415a 
+ 00024256  0x000063b7 fetch  0x00000001 , 0x00000553 
+ 00024257  0x000063b8 ixor  0x00000002 , 0x0000003e 
+ 00024258  0x000063b9 nbranch  0x00005d77 , 0x00000005 
+ 00024259  0x000063ba isolate1  0x00000000 , 0x0000003f 
+ 00024260  0x000063bb fetch  0x00000001 , 0x0000004c 
+ 00024261  0x000063bc setflag  0x00000001 , 0x00000005 , 0x0000003f 
+ 00024262  0x000063bd store  0x00000001 , 0x0000004c 
+ 00024263  0x000063be jam  0x00000081 , 0x0000007c 
+ 00024264  0x000063bf jam  0x0000008b , 0x0000007d 
+ 00024265  0x000063c0 rtn 
+ 00024266  0x000063c7 rtn 
+ 00024267  0x000063ca branch  0x00005e38 
+ 00024268  0x000063ce branch  0x00005e38 
+ 00024269  0x000063d3 fetch  0x00000002 , 0x00000552 
+ 00024270  0x000063d4 store  0x00000002 , 0x00000171 
+ 00024271  0x000063d5 rtn 
+ 00024272  0x000063d8 fetch  0x00000002 , 0x00000555 
+ 00024273  0x000063d9 fetcht  0x00000001 , 0x00004172 
+ 00024274  0x000063da imul32  0x00000002 , 0x0000003f 
+ 00024275  0x000063db arg  0x00000640 , 0x00000002 
+ 00024276  0x000063dc isub  0x00000002 , 0x0000003e 
+ 00024277  0x000063de rtn 
+ 00024278  0x000063e1 fetch  0x00000002 , 0x00000557 
+ 00024279  0x000063e2 branch  0x00005ef0 , 0x00000034 
+ 00024280  0x000063e3 call  0x00005ed0 
+ 00024281  0x000063e4 branch  0x00005ef0 , 0x00000002 
+ 00024282  0x000063e5 fetch  0x00000001 , 0x00004092 
+ 00024283  0x000063e6 sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00024284  0x000063e7 call  0x00003cd5 , 0x00000005 
+ 00024285  0x000063e8 fetch  0x00000001 , 0x00000030 
+ 00024286  0x000063e9 bbit1  0x00000001 , 0x00005ef0 
+ 00024287  0x000063ea fetch  0x00000002 , 0x00000553 
+ 00024288  0x000063eb lshift  0x0000003f , 0x0000003f 
+ 00024289  0x000063ec store  0x00000002 , 0x00000075 
+ 00024290  0x000063ed fetch  0x00000002 , 0x00000555 
+ 00024291  0x000063ee lshift  0x0000003f , 0x0000003f 
+ 00024292  0x000063ef store  0x00000002 , 0x00000032 
+ 00024293  0x000063f0 fetch  0x00000002 , 0x00000557 
+ 00024294  0x000063f1 store  0x00000001 , 0x00000073 
+ 00024295  0x000063f2 iforce  0x00000002 
+ 00024296  0x000063f3 fetch  0x00000002 , 0x00000559 
+ 00024297  0x000063f4 store  0x00000001 , 0x00000074 
+ 00024298  0x000063f5 isub  0x00000002 , 0x0000003e 
+ 00024299  0x000063f6 nbranch  0x00005eed , 0x00000002 
+ 00024300  0x000063f7 store  0x00000001 , 0x00000073 
+ 00024301  0x000063fa jam  0x00000003 , 0x0000007c 
+ 00024302  0x000063fb jam  0x00000017 , 0x0000007d 
+ 00024303  0x000063fc rtn 
+ 00024304  0x000063ff jam  0x00000024 , 0x0000007e 
+ 00024305  0x00006400 branch  0x00005d53 
+ 00024306  0x00006403 call  0x00005e38 
+ 00024307  0x00006404 call  0x00005ff9 
+ 00024308  0x00006405 call  0x0000728b 
+ 00024309  0x00006406 branch  0x000026b8 
+ 00024310  0x00006409 call  0x00005e38 
+ 00024311  0x0000640a branch  0x000026c0 
+ 00024312  0x0000640e fetch  0x00000004 , 0x00000552 
+ 00024313  0x0000640f lshift  0x0000003f , 0x0000003f 
+ 00024314  0x00006411 branch  0x00005f04 , 0x00000029 
+ 00024315  0x00006412 fetcht  0x00000001 , 0x000041bd 
+ 00024316  0x00006413 nbranch  0x00005f01 , 0x00000034 
+ 00024317  0x00006415 jam  0x00000004 , 0x0000007c 
+ 00024318  0x00006416 jam  0x00000013 , 0x0000007d 
+ 00024319  0x00006417 jam  0x00000024 , 0x0000007e 
+ 00024320  0x00006418 rtn 
+ 00024321  0x0000641a jam  0x00000034 , 0x0000007c 
+ 00024322  0x0000641b jam  0x00000000 , 0x00000055 
+ 00024323  0x0000641c branch  0x000021d9 
+ 00024324  0x0000641f call  0x000021d9 
+ 00024325  0x00006420 set1  0x00000022 , 0x00000000 
+ 00024326  0x00006421 fetch  0x00000001 , 0x0000016d 
+ 00024327  0x00006422 set0  0x00000002 , 0x0000003f 
+ 00024328  0x00006423 store  0x00000001 , 0x0000016d 
+ 00024329  0x00006424 branch  0x00005e38 
+ 00024330  0x0000642d rtn 
+ 00024331  0x00006431 jam  0x00000003 , 0x0000007c 
+ 00024332  0x00006432 jam  0x00000018 , 0x0000007d 
+ 00024333  0x00006433 jam  0x0000002e , 0x00000a99 
+ 00024334  0x00006434 call  0x00007d86 
+ 00024335  0x00006435 branch  0x000026e9 
+ 00024336  0x00006438 fetch  0x00000001 , 0x00000552 
+ 00024337  0x00006439 bne  0x00000001 , 0x00005f1c 
+ 00024338  0x0000643a fetch  0x00000001 , 0x00000553 
+ 00024339  0x0000643b bne  0x00000001 , 0x00005f1c 
+ 00024340  0x0000643c fetch  0x00000001 , 0x00000554 
+ 00024341  0x0000643d bne  0x00000030 , 0x00005f1c 
+ 00024342  0x0000643e call  0x000062fc 
+ 00024343  0x0000643f branch  0x00005f19 , 0x00000001 
+ 00024344  0x00006440 jam  0x00000001 , 0x000009ae 
+ 00024345  0x00006442 jam  0x00000003 , 0x0000007c 
+ 00024346  0x00006443 jam  0x0000003d , 0x0000007d 
+ 00024347  0x00006444 branch  0x00005d07 
+ 00024348  0x00006447 jam  0x00000024 , 0x0000007e 
+ 00024349  0x00006448 branch  0x00005d53 
+ 00024350  0x0000644d jam  0x0000003e , 0x0000007c 
+ 00024351  0x0000644f rtn 
+ 00024352  0x00006451 fetch  0x00000001 , 0x00004662 
+ 00024353  0x00006452 beq  0x00000001 , 0x00005f27 
+ 00024354  0x00006453 beq  0x00000002 , 0x00005f2b 
+ 00024355  0x00006455 call  0x000062fc 
+ 00024356  0x00006456 rtn  0x00000001 
+ 00024357  0x00006457 jam  0x00000008 , 0x000009ae 
+ 00024358  0x00006458 rtn 
+ 00024359  0x0000645b call  0x00007962 
+ 00024360  0x0000645c jam  0x00000035 , 0x00000a99 
+ 00024361  0x0000645d call  0x00007d86 
+ 00024362  0x0000645e branch  0x00005f23 
+ 00024363  0x00006462 call  0x000062fc 
+ 00024364  0x00006463 rtn  0x00000001 
+ 00024365  0x00006464 fetch  0x00000001 , 0x00004663 
+ 00024366  0x00006465 beq  0x00000013 , 0x00005f3b 
+ 00024367  0x00006466 increase  0x00000001 , 0x0000003f 
+ 00024368  0x00006467 store  0x00000001 , 0x00004663 
+ 00024369  0x0000646b jam  0x00000001 , 0x000009b0 
+ 00024370  0x0000646c jam  0x00000004 , 0x000009ae 
+ 00024371  0x0000646d fetch  0x00000001 , 0x00004663 
+ 00024372  0x0000646e copy  0x0000003f , 0x00000007 
+ 00024373  0x0000646f fetch  0x00000006 , 0x0000468a 
+ 00024374  0x00006470 qisolate1  0x0000003f 
+ 00024375  0x00006471 setarg  0x00000080 
+ 00024376  0x00006472 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00024377  0x00006473 store  0x00000001 , 0x00004664 
+ 00024378  0x00006474 rtn 
+ 00024379  0x00006477 jam  0x00000008 , 0x000009ae 
+ 00024380  0x00006478 rtn 
+ 00024381  0x0000647b call  0x00005f43 
+ 00024382  0x0000647d fetch  0x00000001 , 0x00004665 
+ 00024383  0x0000647e rtn  0x00000034 
+ 00024384  0x0000647f jam  0x00000000 , 0x00004665 
+ 00024385  0x00006480 jam  0x00000038 , 0x00000a99 
+ 00024386  0x00006481 branch  0x00007d86 
+ 00024387  0x00006486 call  0x000062fc 
+ 00024388  0x00006487 ncall  0x00007965 , 0x00000001 
+ 00024389  0x00006488 call  0x00007975 , 0x00000001 
+ 00024390  0x00006489 call  0x000062fc 
+ 00024391  0x0000648a rtn  0x00000001 
+ 00024392  0x0000648b jam  0x0000000c , 0x000009ae 
+ 00024393  0x0000648c jam  0x00000001 , 0x000009b0 
+ 00024394  0x0000648d rtn 
+ 00024395  0x00006490 arg  0x00000a6e , 0x00000005 
+ 00024396  0x00006491 arg  0x00000552 , 0x00000006 
+ 00024397  0x00006492 call  0x00007ebf 
+ 00024398  0x00006493 fetch  0x00000001 , 0x00004662 
+ 00024399  0x00006494 rtneq  0x00000002 
+ 00024400  0x00006495 branch  0x000076d8 
+ 00024401  0x00006498 fetch  0x00000001 , 0x000009af 
+ 00024402  0x00006499 beq  0x00000007 , 0x00005f55 
+ 00024403  0x0000649a fetch  0x00000001 , 0x000009ae 
+ 00024404  0x0000649b bne  0x00000001 , 0x00005f68 
+ 00024405  0x0000649d fetch  0x00000001 , 0x000009b7 
+ 00024406  0x0000649e sub  0x0000003f , 0x00000020 , 0x00000005 
+ 00024407  0x0000649f nbranch  0x00005f68 , 0x00000002 
+ 00024408  0x000064a0 arg  0x000009c6 , 0x00000005 
+ 00024409  0x000064a1 iadd  0x00000005 , 0x00000005 
+ 00024410  0x000064a2 fetch  0x00000008 , 0x00000552 
+ 00024411  0x000064a3 istore  0x00000008 , 0x00000005 
+ 00024412  0x000064a4 fetch  0x00000008 , 0x0000055a 
+ 00024413  0x000064a5 istore  0x00000008 , 0x00000005 
+ 00024414  0x000064a6 fetch  0x00000001 , 0x000009b7 
+ 00024415  0x000064a7 increase  0x00000010 , 0x0000003f 
+ 00024416  0x000064a8 store  0x00000001 , 0x000009b7 
+ 00024417  0x000064a9 bne  0x00000030 , 0x00005e38 
+ 00024418  0x000064ab call  0x000062fc 
+ 00024419  0x000064ac branch  0x00005e38 , 0x00000001 
+ 00024420  0x000064ad jam  0x00000001 , 0x000009b8 
+ 00024421  0x000064ae jam  0x00000002 , 0x000009ae 
+ 00024422  0x000064af jam  0x00000001 , 0x000009b0 
+ 00024423  0x000064b0 branch  0x00005e38 
+ 00024424  0x000064b2 jam  0x00000024 , 0x0000007e 
+ 00024425  0x000064b3 branch  0x00005d53 
+ 00024426  0x000064b5 fetch  0x00000001 , 0x000009b6 
+ 00024427  0x000064b6 beq  0x00000030 , 0x00005f6e 
+ 00024428  0x000064b7 jam  0x0000003e , 0x0000007c 
+ 00024429  0x000064b8 branch  0x00005d07 
+ 00024430  0x000064bb call  0x000062fc 
+ 00024431  0x000064bc branch  0x00005f77 , 0x00000001 
+ 00024432  0x000064bd fetch  0x00000001 , 0x00004662 
+ 00024433  0x000064be beq  0x00000002 , 0x00005f75 
+ 00024434  0x000064bf jam  0x00000001 , 0x000009b0 
+ 00024435  0x000064c0 jam  0x00000004 , 0x000009ae 
+ 00024436  0x000064c1 branch  0x00005d07 
+ 00024437  0x000064c4 jam  0x00000036 , 0x00000a99 
+ 00024438  0x000064c5 branch  0x00007d86 
+ 00024439  0x000064ca branch  0x00005d07 
+ 00024440  0x000064cd fetch  0x00000001 , 0x000009af 
+ 00024441  0x000064ce beq  0x00000007 , 0x00005f7c 
+ 00024442  0x000064cf fetch  0x00000001 , 0x000009ae 
+ 00024443  0x000064d0 bne  0x00000006 , 0x00005f88 
+ 00024444  0x000064d2 arg  0x00000a2e , 0x00000005 
+ 00024445  0x000064d3 fetch  0x00000008 , 0x00000552 
+ 00024446  0x000064d4 istore  0x00000008 , 0x00000005 
+ 00024447  0x000064d5 fetch  0x00000008 , 0x0000055a 
+ 00024448  0x000064d6 istore  0x00000008 , 0x00000005 
+ 00024449  0x000064d7 call  0x000062fc 
+ 00024450  0x000064d8 branch  0x00005f86 , 0x00000001 
+ 00024451  0x000064d9 jam  0x00000007 , 0x000009ae 
+ 00024452  0x000064da jam  0x00000001 , 0x000009b0 
+ 00024453  0x000064db branch  0x00005e38 
+ 00024454  0x000064dd jam  0x00000004 , 0x000009af 
+ 00024455  0x000064de branch  0x000076d8 
+ 00024456  0x000064e2 jam  0x00000024 , 0x0000007e 
+ 00024457  0x000064e3 branch  0x00005d53 
+ 00024458  0x000064e6 fetch  0x00000001 , 0x000009af 
+ 00024459  0x000064e7 beq  0x0000000b , 0x00005f8e 
+ 00024460  0x000064e8 fetch  0x00000001 , 0x000009ae 
+ 00024461  0x000064e9 bne  0x00000008 , 0x00005f9d 
+ 00024462  0x000064eb arg  0x00000a5e , 0x00000005 
+ 00024463  0x000064ec arg  0x00000552 , 0x00000006 
+ 00024464  0x000064ed call  0x00007ebf 
+ 00024465  0x000064ee call  0x000062fc 
+ 00024466  0x000064ef branch  0x00005f9a , 0x00000001 
+ 00024467  0x000064f0 fetch  0x00000001 , 0x00004662 
+ 00024468  0x000064f1 beq  0x00000001 , 0x00005f9f 
+ 00024469  0x000064f3 jam  0x00000000 , 0x00004661 
+ 00024470  0x000064f4 jam  0x00000009 , 0x000009ae 
+ 00024471  0x000064f5 jam  0x00000001 , 0x000009b0 
+ 00024472  0x000064f6 jam  0x00000041 , 0x0000007d 
+ 00024473  0x000064f7 branch  0x00005d07 
+ 00024474  0x000064fa jam  0x00000009 , 0x000009af 
+ 00024475  0x000064fb jam  0x00000001 , 0x000009b1 
+ 00024476  0x000064fc branch  0x00005d07 
+ 00024477  0x000064fe jam  0x00000024 , 0x0000007e 
+ 00024478  0x000064ff branch  0x00005d53 
+ 00024479  0x00006502 fetch  0x00000001 , 0x00004661 
+ 00024480  0x00006503 bbit1  0x00000007 , 0x00005fa4 
+ 00024481  0x00006504 set1  0x00000006 , 0x0000003f 
+ 00024482  0x00006505 store  0x00000001 , 0x00004661 
+ 00024483  0x00006506 rtn 
+ 00024484  0x00006509 bbit1  0x00000000 , 0x00005f95 
+ 00024485  0x0000650a jam  0x00000000 , 0x00004661 
+ 00024486  0x0000650b branch  0x00005f9d 
+ 00024487  0x0000650f branch  0x00005d07 
+ 00024488  0x00006512 fetch  0x00000001 , 0x0000016d 
+ 00024489  0x00006513 set0  0x00000001 
+ 00024490  0x00006514 store  0x00000001 , 0x0000016d 
+ 00024491  0x00006515 call  0x00005e38 
+ 00024492  0x00006516 nrtn  0x00000029 
+ 00024493  0x00006517 fetch  0x00000001 , 0x00000552 
+ 00024494  0x00006518 fetcht  0x00000001 , 0x0000004b 
+ 00024495  0x00006519 setflag  0x00000034 , 0x00000004 , 0x00000002 
+ 00024496  0x0000651a nsetflag  0x00000034 , 0x00000005 , 0x00000002 
+ 00024497  0x0000651b storet  0x00000001 , 0x0000004b 
+ 00024498  0x0000651c rtn 
+ 00024499  0x0000651f fetcht  0x00000008 , 0x00000552 
+ 00024500  0x00006521 fetch  0x00000001 , 0x00000055 
+ 00024501  0x00006522 rtnne  0x00000003 
+ 00024502  0x00006524 fetch  0x00000001 , 0x0000016d 
+ 00024503  0x00006525 bbit0  0x00000004 , 0x00005fba 
+ 00024504  0x00006527 jam  0x00000014 , 0x00000055 
+ 00024505  0x00006528 rtn 
+ 00024506  0x0000652a jam  0x00000004 , 0x00000055 
+ 00024507  0x0000652b rtn 
+ 00024508  0x0000652d fetch  0x00000001 , 0x0000017f 
+ 00024509  0x0000652e store  0x00000001 , 0x0000015b 
+ 00024510  0x0000652f jam  0x00000003 , 0x0000007c 
+ 00024511  0x00006530 jam  0x00000038 , 0x0000007d 
+ 00024512  0x00006531 rtn 
+ 00024513  0x00006535 jam  0x00000003 , 0x0000007c 
+ 00024514  0x00006536 jam  0x00000039 , 0x0000007d 
+ 00024515  0x00006537 force  0x00000009 , 0x00000039 
+ 00024516  0x00006538 arg  0x00000552 , 0x00000006 
+ 00024517  0x00006539 arg  0x00000152 , 0x00000005 
+ 00024518  0x0000653b ifetch  0x00000001 , 0x00000006 
+ 00024519  0x0000653c xor_into  0x00000055 , 0x0000003f 
+ 00024520  0x0000653d istore  0x00000001 , 0x00000005 
+ 00024521  0x0000653e loop  0x00005fc6 
+ 00024522  0x0000653f fetch  0x00000001 , 0x00000152 
+ 00024523  0x00006540 fetcht  0x00000001 , 0x00000151 
+ 00024524  0x00006541 set0  0x00000007 , 0x00000002 
+ 00024525  0x00006542 set0  0x00000004 , 0x00000002 
+ 00024526  0x00006543 beq  0x000000ff , 0x00005fda 
+ 00024527  0x00006544 beq  0x00000000 , 0x00005ff3 
+ 00024528  0x00006545 beq  0x00000005 , 0x00005fe7 
+ 00024529  0x00006546 beq  0x00000007 , 0x00005fe6 
+ 00024530  0x00006547 beq  0x00000006 , 0x00005fe7 
+ 00024531  0x00006548 beq  0x00000008 , 0x00005fe6 
+ 00024532  0x00006549 beq  0x00000001 , 0x00005fdf 
+ 00024533  0x0000654a beq  0x00000002 , 0x00005fdf 
+ 00024534  0x0000654b beq  0x00000003 , 0x00005fdf 
+ 00024535  0x0000654c beq  0x00000009 , 0x00005fdf 
+ 00024536  0x0000654d beq  0x00000004 , 0x00005fdf 
+ 00024537  0x0000654e rtn 
+ 00024538  0x00006551 fetch  0x00000001 , 0x00000151 
+ 00024539  0x00006552 set1  0x00000003 , 0x0000003f 
+ 00024540  0x00006553 set1  0x00000002 , 0x0000003f 
+ 00024541  0x00006554 store  0x00000001 , 0x00000151 
+ 00024542  0x00006555 rtn 
+ 00024543  0x00006557 set1  0x00000004 , 0x00000002 
+ 00024544  0x00006558 jam  0x00000005 , 0x00000180 
+ 00024545  0x00006559 fetch  0x00000002 , 0x00000159 
+ 00024546  0x0000655a iforce  0x00000039 
+ 00024547  0x0000655b store  0x00000002 , 0x0000015f 
+ 00024548  0x0000655c arg  0x00000551 , 0x00000005 
+ 00024549  0x0000655d call  0x00007f73 
+ 00024550  0x0000655f set1  0x00000007 , 0x00000002 
+ 00024551  0x00006561 set1  0x00000002 , 0x00000002 
+ 00024552  0x00006562 force  0x00000000 , 0x0000003f 
+ 00024553  0x00006563 store  0x00000001 , 0x0000000b 
+ 00024554  0x00006564 store  0x00000002 , 0x000000fa 
+ 00024555  0x00006565 store  0x00000002 , 0x000000fc 
+ 00024556  0x00006566 store  0x00000002 , 0x000000f8 
+ 00024557  0x00006567 store  0x00000002 , 0x000000f6 
+ 00024558  0x00006568 fetch  0x00000001 , 0x00000153 
+ 00024559  0x00006569 compare  0x00000000 , 0x0000003f , 0x000000ff 
+ 00024560  0x0000656a setflag  0x00000001 , 0x00000006 , 0x00000002 
+ 00024561  0x0000656b storet  0x00000001 , 0x00000151 
+ 00024562  0x0000656c rtn 
+ 00024563  0x0000656f set0  0x00000011 , 0x00000000 
+ 00024564  0x00006570 jam  0x00000000 , 0x00000151 
+ 00024565  0x00006571 fetch  0x00000001 , 0x0000017f 
+ 00024566  0x00006572 set0  0x00000006 , 0x0000003f 
+ 00024567  0x00006573 store  0x00000001 , 0x0000017f 
+ 00024568  0x00006574 rtn 
+ 00024569  0x0000657b arg  0x00000552 , 0x00000006 
+ 00024570  0x0000657c arg  0x00000562 , 0x00000005 
+ 00024571  0x0000657d branch  0x00007ebf 
+ 00024572  0x00006580 jam  0x00000009 , 0x0000007c 
+ 00024573  0x00006581 rtn 
+ 00024574  0x00006584 nrtn  0x00000029 
+ 00024575  0x00006585 jam  0x00000011 , 0x0000007c 
+ 00024576  0x00006586 rtn 
+ 00024577  0x00006589 arg  0x000040a0 , 0x00000011 
+ 00024578  0x0000658a call  0x00007255 
+ 00024579  0x0000658b jam  0x00000003 , 0x0000007c 
+ 00024580  0x0000658c jam  0x00000008 , 0x0000007d 
+ 00024581  0x0000658d rtn 
+ 00024582  0x00006590 jam  0x0000000a , 0x00000072 
+ 00024583  0x00006591 jam  0x00000007 , 0x0000007c 
+ 00024584  0x00006592 jam  0x00000016 , 0x000004ca 
+ 00024585  0x00006593 rtn 
+ 00024586  0x0000659a bpatchx  0x00000082 , 0x00004030 
+ 00024587  0x0000659b disable  0x00000028 
+ 00024588  0x0000659c call  0x000062c1 
+ 00024589  0x0000659d fetch  0x00000001 , 0x00000048 
+ 00024590  0x0000659e rtn  0x00000034 
+ 00024591  0x000065a3 bbit1  0x00000007 , 0x0000603f 
+ 00024592  0x000065a5 beq  0x00000001 , 0x0000616f 
+ 00024593  0x000065a6 beq  0x00000002 , 0x000060e4 
+ 00024594  0x000065a7 beq  0x00000003 , 0x0000604a 
+ 00024595  0x000065a8 beq  0x00000004 , 0x00006060 
+ 00024596  0x000065a9 beq  0x00000027 , 0x000061db 
+ 00024597  0x000065aa beq  0x00000028 , 0x00006108 
+ 00024598  0x000065ab beq  0x00000030 , 0x000060f4 
+ 00024599  0x000065ac beq  0x00000025 , 0x000061d6 
+ 00024600  0x000065ad beq  0x00000026 , 0x00006103 
+ 00024601  0x000065ae beq  0x00000031 , 0x000061c3 
+ 00024602  0x000065af beq  0x00000037 , 0x0000616a 
+ 00024603  0x000065b0 beq  0x00000033 , 0x0000615c 
+ 00024604  0x000065b1 beq  0x00000008 , 0x00006259 
+ 00024605  0x000065b2 beq  0x00000009 , 0x0000624f 
+ 00024606  0x000065b3 beq  0x0000000b , 0x00006264 
+ 00024607  0x000065b4 beq  0x0000000c , 0x0000626d 
+ 00024608  0x000065b5 beq  0x0000000f , 0x00006162 
+ 00024609  0x000065b6 beq  0x00000010 , 0x00006292 
+ 00024610  0x000065b7 beq  0x00000011 , 0x00006288 
+ 00024611  0x000065b8 beq  0x00000007 , 0x00006152 
+ 00024612  0x000065b9 beq  0x0000002a , 0x0000617e 
+ 00024613  0x000065ba beq  0x0000000a , 0x0000617f 
+ 00024614  0x000065bc beq  0x0000001f , 0x000061bc 
+ 00024615  0x000065bd beq  0x00000006 , 0x000060f9 
+ 00024616  0x000065be beq  0x00000021 , 0x0000615f 
+ 00024617  0x000065bf beq  0x0000002d , 0x000061b2 
+ 00024618  0x000065c0 beq  0x0000002e , 0x000061b7 
+ 00024619  0x000065c1 beq  0x00000022 , 0x0000615f 
+ 00024620  0x000065c2 beq  0x00000034 , 0x00006180 
+ 00024621  0x000065c3 beq  0x00000013 , 0x00006195 
+ 00024622  0x000065c4 beq  0x00000017 , 0x000061a4 
+ 00024623  0x000065c5 beq  0x00000012 , 0x0000628f 
+ 00024624  0x000065c6 beq  0x0000002f , 0x000061aa 
+ 00024625  0x000065c7 beq  0x00000018 , 0x000061af 
+ 00024626  0x000065c8 beq  0x0000003d , 0x000061ff 
+ 00024627  0x000065c9 beq  0x0000003e , 0x0000620b 
+ 00024628  0x000065ca beq  0x0000003f , 0x0000621d 
+ 00024629  0x000065cb beq  0x00000040 , 0x00006227 
+ 00024630  0x000065cc beq  0x00000041 , 0x0000623c 
+ 00024631  0x000065cd beq  0x00000023 , 0x0000624b 
+ 00024632  0x000065ce beq  0x0000003b , 0x00006246 
+ 00024633  0x000065d0 beq  0x00000005 , 0x0000624c 
+ 00024634  0x000065d1 beq  0x00000029 , 0x0000624d 
+ 00024635  0x000065d2 beq  0x00000038 , 0x0000624e 
+ 00024636  0x000065d3 beq  0x00000039 , 0x00006175 
+ 00024637  0x000065d5 branch  0x00002a8c 
+ 00024638  0x000065d6 rtn 
+ 00024639  0x000065d8 beq  0x00000081 , 0x0000606d 
+ 00024640  0x000065d9 beq  0x00000084 , 0x00006099 
+ 00024641  0x000065da beq  0x00000082 , 0x00006076 
+ 00024642  0x000065db beq  0x00000083 , 0x0000610d 
+ 00024643  0x000065dc beq  0x0000008b , 0x00006118 
+ 00024644  0x000065dd beq  0x00000097 , 0x0000614e 
+ 00024645  0x000065de beq  0x00000099 , 0x000060d5 
+ 00024646  0x000065df beq  0x0000009a , 0x000060a4 
+ 00024647  0x000065e0 beq  0x00000095 , 0x000060da 
+ 00024648  0x000065e1 beq  0x00000096 , 0x000060db 
+ 00024649  0x000065e2 branch  0x00002a8c 
+ 00024650  0x000065e9 force  0x00000002 , 0x0000003f 
+ 00024651  0x000065ea call  0x00006298 
+ 00024652  0x000065eb fetch  0x00000001 , 0x00000049 
+ 00024653  0x000065ec istore  0x00000001 , 0x00000005 
+ 00024654  0x000065ed call  0x000062a7 
+ 00024655  0x000065ee bpatchx  0x00000083 , 0x00004030 
+ 00024656  0x000065ef fetch  0x00000001 , 0x00000049 
+ 00024657  0x000065f0 beq  0x00000008 , 0x00006080 
+ 00024658  0x000065f1 beq  0x0000000f , 0x00006084 
+ 00024659  0x000065f2 beq  0x00000010 , 0x0000608f 
+ 00024660  0x000065f3 beq  0x00000017 , 0x0000605f 
+ 00024661  0x000065f4 beq  0x00000033 , 0x00006092 
+ 00024662  0x000065f5 beq  0x00000041 , 0x00006098 
+ 00024663  0x000065f6 beq  0x00000011 , 0x00006059 
+ 00024664  0x000065f7 rtn 
+ 00024665  0x000065fa fetch  0x00000001 , 0x00000055 
+ 00024666  0x000065fb rtn  0x00000034 
+ 00024667  0x000065fc jam  0x0000001b , 0x00000055 
+ 00024668  0x000065fd setarg  0x0000000c 
+ 00024669  0x000065fe arg  0x00000007 , 0x00000007 
+ 00024670  0x000065ff branch  0x00007f08 
+ 00024671  0x00006602 branch  0x000026c6 
+ 00024672  0x00006604 force  0x00000003 , 0x0000003f 
+ 00024673  0x00006605 call  0x00006298 
+ 00024674  0x00006606 fetch  0x00000001 , 0x00000049 
+ 00024675  0x00006607 beq  0x0000000b , 0x00006068 
+ 00024676  0x00006608 istore  0x00000001 , 0x00000005 
+ 00024677  0x00006609 fetch  0x00000001 , 0x0000004a 
+ 00024678  0x0000660a istore  0x00000001 , 0x00000005 
+ 00024679  0x0000660b branch  0x000062a7 
+ 00024680  0x0000660e istore  0x00000001 , 0x00000005 
+ 00024681  0x0000660f fetch  0x00000001 , 0x0000004a 
+ 00024682  0x00006610 istore  0x00000001 , 0x00000005 
+ 00024683  0x00006611 arg  0x000004d5 , 0x00000002 
+ 00024684  0x00006612 branch  0x000062e2 
+ 00024685  0x00006615 force  0x00000004 , 0x00000007 
+ 00024686  0x00006616 call  0x000062a0 
+ 00024687  0x00006617 setarg  0x0000007f 
+ 00024688  0x00006618 istore  0x00000001 , 0x00000005 
+ 00024689  0x00006619 fetch  0x00000001 , 0x00000049 
+ 00024690  0x0000661a set0  0x00000007 , 0x0000003f 
+ 00024691  0x0000661b istore  0x00000001 , 0x00000005 
+ 00024692  0x0000661c fetch  0x00000001 , 0x00000049 
+ 00024693  0x0000661d branch  0x000062a7 
+ 00024694  0x00006620 force  0x00000005 , 0x00000007 
+ 00024695  0x00006621 call  0x000062a0 
+ 00024696  0x00006622 setarg  0x0000007f 
+ 00024697  0x00006623 istore  0x00000001 , 0x00000005 
+ 00024698  0x00006624 fetch  0x00000001 , 0x00000049 
+ 00024699  0x00006625 set0  0x00000007 , 0x0000003f 
+ 00024700  0x00006626 istore  0x00000001 , 0x00000005 
+ 00024701  0x00006627 fetch  0x00000001 , 0x0000004a 
+ 00024702  0x00006628 istore  0x00000001 , 0x00000005 
+ 00024703  0x00006629 branch  0x000062a7 
+ 00024704  0x0000662d call  0x0000244f 
+ 00024705  0x0000662e call  0x000062f3 
+ 00024706  0x0000662f rtn  0x00000001 
+ 00024707  0x00006630 branch  0x00005ffc 
+ 00024708  0x00006633 fetch  0x00000001 , 0x0000004b 
+ 00024709  0x00006634 bbit1  0x00000005 , 0x0000608b 
+ 00024710  0x00006635 rtnbit0  0x00000004 
+ 00024711  0x00006636 jam  0x00000012 , 0x0000007c 
+ 00024712  0x00006637 set0  0x00000004 , 0x0000003f 
+ 00024713  0x00006638 call  0x000062eb 
+ 00024714  0x00006639 branch  0x0000608d 
+ 00024715  0x0000663b jam  0x00000010 , 0x0000007c 
+ 00024716  0x0000663c set0  0x00000005 , 0x0000003f 
+ 00024717  0x0000663e store  0x00000001 , 0x0000004b 
+ 00024718  0x0000663f rtn 
+ 00024719  0x00006642 call  0x000062fc 
+ 00024720  0x00006643 branch  0x00005ffe , 0x00000001 
+ 00024721  0x00006644 rtn 
+ 00024722  0x00006647 jam  0x0000008b , 0x0000007c 
+ 00024723  0x00006649 fetch  0x00000001 , 0x000004d1 
+ 00024724  0x0000664a set1  0x00000000 , 0x0000003f 
+ 00024725  0x0000664b store  0x00000001 , 0x000004d1 
+ 00024726  0x0000664c jam  0x00000001 , 0x00000a99 
+ 00024727  0x0000664d branch  0x00007d86 
+ 00024728  0x00006651 rtn 
+ 00024729  0x00006656 force  0x0000000c , 0x00000007 
+ 00024730  0x00006657 call  0x000062a0 
+ 00024731  0x00006658 setarg  0x00000001 
+ 00024732  0x00006659 istore  0x00000001 , 0x00000005 
+ 00024733  0x0000665a fetch  0x00000002 , 0x000004ce 
+ 00024734  0x0000665b istore  0x00000002 , 0x00000005 
+ 00024735  0x0000665c setarg  0x00000000 
+ 00024736  0x0000665d istore  0x00000003 , 0x00000005 
+ 00024737  0x0000665e setarg  0x00000000 
+ 00024738  0x0000665f istore  0x00000004 , 0x00000005 
+ 00024739  0x00006660 branch  0x000062b0 
+ 00024740  0x00006662 force  0x00000005 , 0x00000007 
+ 00024741  0x00006663 call  0x000062a0 
+ 00024742  0x00006664 fetch  0x00000003 , 0x0000465b 
+ 00024743  0x00006665 istore  0x00000003 , 0x00000005 
+ 00024744  0x00006666 call  0x000062b0 
+ 00024745  0x00006667 jam  0x00000001 , 0x00004665 
+ 00024746  0x00006668 fetch  0x00000001 , 0x0000465b 
+ 00024747  0x00006669 beq  0x00000001 , 0x000060b5 
+ 00024748  0x0000666a beq  0x00000002 , 0x000060af 
+ 00024749  0x0000666b beq  0x00000003 , 0x000060bb 
+ 00024750  0x0000666c rtn 
+ 00024751  0x0000666f fetch  0x00000001 , 0x0000465e 
+ 00024752  0x00006670 beq  0x00000000 , 0x000060c7 
+ 00024753  0x00006671 beq  0x00000001 , 0x000060c7 
+ 00024754  0x00006672 beq  0x00000002 , 0x000060c7 
+ 00024755  0x00006673 beq  0x00000003 , 0x000060c1 
+ 00024756  0x00006674 rtn 
+ 00024757  0x00006678 fetch  0x00000001 , 0x0000465e 
+ 00024758  0x00006679 beq  0x00000000 , 0x000060c1 
+ 00024759  0x0000667a beq  0x00000001 , 0x000060c5 
+ 00024760  0x0000667b beq  0x00000002 , 0x000060c7 
+ 00024761  0x0000667c beq  0x00000003 , 0x000060c1 
+ 00024762  0x0000667d rtn 
+ 00024763  0x00006681 fetch  0x00000001 , 0x0000465e 
+ 00024764  0x00006682 beq  0x00000000 , 0x000060c1 
+ 00024765  0x00006683 beq  0x00000001 , 0x000060c1 
+ 00024766  0x00006684 beq  0x00000002 , 0x000060c1 
+ 00024767  0x00006685 beq  0x00000003 , 0x000060c1 
+ 00024768  0x00006686 rtn 
+ 00024769  0x00006690 jam  0x00000003 , 0x00004662 
+ 00024770  0x00006691 fetch  0x00000001 , 0x0000455c 
+ 00024771  0x00006692 bbit1  0x00000000 , 0x000033e9 
+ 00024772  0x00006693 rtn 
+ 00024773  0x00006697 jam  0x00000001 , 0x00004662 
+ 00024774  0x00006698 rtn 
+ 00024775  0x0000669f jam  0x00000002 , 0x00004662 
+ 00024776  0x000066a0 rtn 
+ 00024777  0x000066a4 arg  0x00000000 , 0x00000007 
+ 00024778  0x000066a5 branch  0x000060cd 
+ 00024779  0x000066a8 arg  0x00000000 , 0x00000007 
+ 00024780  0x000066a9 branch  0x000060d1 
+ 00024781  0x000066ac fetch  0x00000001 , 0x0000455c 
+ 00024782  0x000066ad qset1  0x0000003f 
+ 00024783  0x000066ae store  0x00000001 , 0x0000455c 
+ 00024784  0x000066af rtn 
+ 00024785  0x000066b2 fetch  0x00000001 , 0x0000455c 
+ 00024786  0x000066b3 qset0  0x0000003f 
+ 00024787  0x000066b4 store  0x00000001 , 0x0000455c 
+ 00024788  0x000066b5 rtn 
+ 00024789  0x000066b9 force  0x00000005 , 0x00000007 
+ 00024790  0x000066ba call  0x000062a0 
+ 00024791  0x000066bb fetch  0x00000003 , 0x0000465b 
+ 00024792  0x000066bc istore  0x00000003 , 0x00000005 
+ 00024793  0x000066bd branch  0x000062b2 
+ 00024794  0x000066c2 rtn 
+ 00024795  0x000066c4 force  0x00000009 , 0x00000007 
+ 00024796  0x000066c5 call  0x000062a0 
+ 00024797  0x000066c6 fetch  0x00000001 , 0x00000095 
+ 00024798  0x000066c7 istore  0x00000001 , 0x00000005 
+ 00024799  0x000066c8 fetch  0x00000002 , 0x00000096 
+ 00024800  0x000066c9 istore  0x00000002 , 0x00000005 
+ 00024801  0x000066ca fetch  0x00000004 , 0x00000091 
+ 00024802  0x000066cb istore  0x00000004 , 0x00000005 
+ 00024803  0x000066cc branch  0x000062b0 
+ 00024804  0x000066cf force  0x00000011 , 0x0000003f 
+ 00024805  0x000066d0 call  0x00006298 
+ 00024806  0x000066d1 fetch  0x00000001 , 0x00000049 
+ 00024807  0x000066d2 copy  0x0000003f , 0x00000002 
+ 00024808  0x000066d3 beq  0x00000000 , 0x000060ec 
+ 00024809  0x000066d4 beq  0x0000000e , 0x000060ec 
+ 00024810  0x000066d5 beq  0x0000001c , 0x000060ec 
+ 00024811  0x000066d6 rtn 
+ 00024812  0x000066d8 istore  0x00000001 , 0x00000005 
+ 00024813  0x000066d9 fetch  0x00000001 , 0x00004515 
+ 00024814  0x000066da istore  0x00000001 , 0x00000005 
+ 00024815  0x000066db arg  0x0000000e , 0x00000039 
+ 00024816  0x000066dc setarg  0x00004516 
+ 00024817  0x000066dd iadd  0x00000002 , 0x00000006 
+ 00024818  0x000066de call  0x00007f01 
+ 00024819  0x000066df branch  0x000062b0 
+ 00024820  0x000066e3 force  0x00000003 , 0x0000003f 
+ 00024821  0x000066e4 call  0x00006298 
+ 00024822  0x000066e5 setarg  0x00000114 
+ 00024823  0x000066e6 istore  0x00000002 , 0x00000005 
+ 00024824  0x000066e7 branch  0x000062b0 
+ 00024825  0x000066eb force  0x00000003 , 0x0000003f 
+ 00024826  0x000066ec call  0x00006298 
+ 00024827  0x000066ed fetch  0x00000004 , 0x00000165 
+ 00024828  0x000066ee isub  0x00000022 , 0x0000003f 
+ 00024829  0x000066ef branch  0x000060ff , 0x00000029 
+ 00024830  0x000066f0 sub  0x0000003f , 0x00000000 , 0x0000003f 
+ 00024831  0x000066f3 rshift2  0x0000003f , 0x0000003f 
+ 00024832  0x000066f4 set0  0x0000000f , 0x0000003f 
+ 00024833  0x000066f5 istore  0x00000002 , 0x00000005 
+ 00024834  0x000066f6 branch  0x000062b0 
+ 00024835  0x000066f9 force  0x00000006 , 0x0000003f 
+ 00024836  0x000066fa call  0x00006298 
+ 00024837  0x000066fb fetch  0x00000005 , 0x00004510 
+ 00024838  0x000066fc istore  0x00000005 , 0x00000005 
+ 00024839  0x000066fd branch  0x000062b0 
+ 00024840  0x00006700 force  0x00000009 , 0x0000003f 
+ 00024841  0x00006701 call  0x00006298 
+ 00024842  0x00006702 fetch  0x00000008 , 0x00004098 
+ 00024843  0x00006703 istore  0x00000008 , 0x00000005 
+ 00024844  0x00006704 branch  0x000062b0 
+ 00024845  0x0000670c force  0x0000000c , 0x00000007 
+ 00024846  0x0000670d call  0x000062a0 
+ 00024847  0x0000670e setarg  0x00000001 
+ 00024848  0x0000670f istore  0x00000001 , 0x00000005 
+ 00024849  0x00006710 fetch  0x00000002 , 0x000004ce 
+ 00024850  0x00006711 istore  0x00000002 , 0x00000005 
+ 00024851  0x00006712 setarg  0x00000000 
+ 00024852  0x00006713 istore  0x00000003 , 0x00000005 
+ 00024853  0x00006714 setarg  0x00000000 
+ 00024854  0x00006715 istore  0x00000004 , 0x00000005 
+ 00024855  0x00006716 branch  0x000062b2 
+ 00024856  0x00006719 force  0x00000003 , 0x00000007 
+ 00024857  0x0000671a call  0x000062a0 
+ 00024858  0x0000671b fetch  0x00000001 , 0x0000415a 
+ 00024859  0x0000671c istore  0x00000001 , 0x00000005 
+ 00024860  0x0000671d disable  0x00000028 
+ 00024861  0x0000671e call  0x000062b2 
+ 00024862  0x0000671f nrtn  0x00000028 
+ 00024863  0x00006720 nrtn  0x00000029 
+ 00024864  0x00006721 fetch  0x00000001 , 0x000040d8 
+ 00024865  0x00006722 rtnbit0  0x00000000 
+ 00024866  0x00006723 call  0x00006132 
+ 00024867  0x00006724 branch  0x0000613c 
+ 00024868  0x00006728 bpatchx  0x00000084 , 0x00004030 
+ 00024869  0x00006729 fetch  0x00000001 , 0x0000409e 
+ 00024870  0x0000672a set1  0x00000003 , 0x0000003f 
+ 00024871  0x0000672b store  0x00000001 , 0x0000409e 
+ 00024872  0x0000672c setarg  0x00000101 
+ 00024873  0x0000672d store  0x00000002 , 0x000004ce 
+ 00024874  0x0000672e rtn 
+ 00024875  0x00006731 bpatchx  0x00000085 , 0x00004030 
+ 00024876  0x00006732 fetch  0x00000001 , 0x0000409e 
+ 00024877  0x00006733 set0  0x00000003 , 0x0000003f 
+ 00024878  0x00006734 store  0x00000001 , 0x0000409e 
+ 00024879  0x00006735 setarg  0x00000000 
+ 00024880  0x00006736 store  0x00000002 , 0x000004ce 
+ 00024881  0x00006737 rtn 
+ 00024882  0x0000673a jam  0x00000003 , 0x000040d8 
+ 00024883  0x0000673b setarg  0x00000000 
+ 00024884  0x0000673c store  0x00000004 , 0x00004142 
+ 00024885  0x0000673d arg  0x000040da , 0x00000005 
+ 00024886  0x0000673e call  0x00006140 
+ 00024887  0x0000673f arg  0x000040e7 , 0x00000005 
+ 00024888  0x00006740 call  0x00006140 
+ 00024889  0x00006741 arg  0x00004146 , 0x00000005 
+ 00024890  0x00006742 call  0x00006140 
+ 00024891  0x00006743 branch  0x00006147 
+ 00024892  0x00006745 arg  0x000040e7 , 0x00000005 
+ 00024893  0x00006746 call  0x00006140 
+ 00024894  0x00006747 call  0x00006147 
+ 00024895  0x00006748 branch  0x0000614a 
+ 00024896  0x0000674c setarg  0x00ffffff 
+ 00024897  0x0000674d istore  0x00000003 , 0x00000005 
+ 00024898  0x0000674e istore  0x00000003 , 0x00000005 
+ 00024899  0x0000674f istore  0x00000003 , 0x00000005 
+ 00024900  0x00006750 setarg  0x0000007f 
+ 00024901  0x00006751 istore  0x00000001 , 0x00000005 
+ 00024902  0x00006752 rtn 
+ 00024903  0x00006754 setarg  0x00000000 
+ 00024904  0x00006755 store  0x00000002 , 0x000040d6 
+ 00024905  0x00006756 rtn 
+ 00024906  0x00006758 fetch  0x00000001 , 0x000040d8 
+ 00024907  0x00006759 set1  0x00000002 , 0x0000003f 
+ 00024908  0x0000675a store  0x00000001 , 0x000040d8 
+ 00024909  0x0000675b rtn 
+ 00024910  0x0000675f force  0x00000002 , 0x00000007 
+ 00024911  0x00006760 call  0x000062a0 
+ 00024912  0x00006761 nbranch  0x000062b0 , 0x00000029 
+ 00024913  0x00006763 branch  0x000062b2 
+ 00024914  0x00006768 force  0x00000002 , 0x0000003f 
+ 00024915  0x00006769 call  0x00006298 
+ 00024916  0x0000676a fetch  0x00000001 , 0x000004ca 
+ 00024917  0x0000676b istore  0x00000001 , 0x00000005 
+ 00024918  0x0000676c call  0x000062b2 
+ 00024919  0x0000676e fetch  0x00000001 , 0x0000004b 
+ 00024920  0x0000676f set1  0x00000003 , 0x0000003f 
+ 00024921  0x00006770 store  0x00000001 , 0x0000004b 
+ 00024922  0x00006771 jam  0x00000032 , 0x00000072 
+ 00024923  0x00006772 rtn 
+ 00024924  0x00006776 force  0x00000001 , 0x0000003f 
+ 00024925  0x00006777 call  0x00006298 
+ 00024926  0x00006778 branch  0x000062b2 
+ 00024927  0x0000677a force  0x00000001 , 0x0000003f 
+ 00024928  0x0000677b call  0x00006298 
+ 00024929  0x0000677c branch  0x000062b0 
+ 00024930  0x00006780 force  0x00000002 , 0x0000003f 
+ 00024931  0x00006781 call  0x00006298 
+ 00024932  0x00006782 fetch  0x00000001 , 0x0000004c 
+ 00024933  0x00006783 isolate0  0x00000002 , 0x0000003f 
+ 00024934  0x00006784 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00024935  0x00006785 and_into  0x00000001 , 0x0000003f 
+ 00024936  0x00006786 istore  0x00000001 , 0x00000005 
+ 00024937  0x00006787 branch  0x000062b2 
+ 00024938  0x0000678b force  0x00000003 , 0x0000003f 
+ 00024939  0x0000678c call  0x00006298 
+ 00024940  0x0000678d fetch  0x00000002 , 0x00000051 
+ 00024941  0x0000678e istore  0x00000002 , 0x00000005 
+ 00024942  0x0000678f branch  0x000062b2 
+ 00024943  0x00006792 jam  0x000000fa , 0x00000072 
+ 00024944  0x00006793 force  0x00000002 , 0x0000003f 
+ 00024945  0x00006794 call  0x00006298 
+ 00024946  0x00006795 fetch  0x00000001 , 0x00000053 
+ 00024947  0x00006796 istore  0x00000001 , 0x00000005 
+ 00024948  0x00006797 branch  0x000062b2 
+ 00024949  0x0000679a force  0x0000000a , 0x0000003f 
+ 00024950  0x0000679b call  0x00006298 
+ 00024951  0x0000679c arg  0x00000152 , 0x00000006 
+ 00024952  0x0000679d force  0x00000009 , 0x00000039 
+ 00024953  0x0000679f ifetch  0x00000001 , 0x00000006 
+ 00024954  0x000067a0 xor_into  0x00000055 , 0x0000003f 
+ 00024955  0x000067a1 istore  0x00000001 , 0x00000005 
+ 00024956  0x000067a2 loop  0x00006179 
+ 00024957  0x000067a3 branch  0x000062b2 
+ 00024958  0x000067a6 branch  0x000062b2 
+ 00024959  0x000067a8 branch  0x000062b2 
+ 00024960  0x000067ab rtn  0x00000029 
+ 00024961  0x000067ac call  0x0000282d 
+ 00024962  0x000067ad force  0x00000009 , 0x0000003f 
+ 00024963  0x000067ae call  0x00006298 
+ 00024964  0x000067af fetch  0x00000002 , 0x00000171 
+ 00024965  0x000067b0 istore  0x00000002 , 0x00000005 
+ 00024966  0x000067b1 fetch  0x00000003 , 0x000040a0 
+ 00024967  0x000067b2 istore  0x00000003 , 0x00000005 
+ 00024968  0x000067b3 fetch  0x00000001 , 0x000040a3 
+ 00024969  0x000067b4 istore  0x00000001 , 0x00000005 
+ 00024970  0x000067b5 fetch  0x00000002 , 0x000040a4 
+ 00024971  0x000067b6 istore  0x00000002 , 0x00000005 
+ 00024972  0x000067b7 bmark0  0x00000003 , 0x00006191 
+ 00024973  0x000067b8 set0  0x00000003 , 0x00000000 
+ 00024974  0x000067b9 call  0x000062b2 
+ 00024975  0x000067ba jam  0x00000013 , 0x0000007c 
+ 00024976  0x000067bb rtn 
+ 00024977  0x000067bd call  0x000062b0 
+ 00024978  0x000067be jam  0x00000003 , 0x0000007c 
+ 00024979  0x000067bf jam  0x00000013 , 0x0000007d 
+ 00024980  0x000067c0 rtn 
+ 00024981  0x000067c3 arg  0x00000200 , 0x00000002 
+ 00024982  0x000067c4 branch  0x00006199 , 0x00000029 
+ 00024983  0x000067c5 deposit  0x00000028 
+ 00024984  0x000067c6 branch  0x0000619a 
+ 00024985  0x000067c8 deposit  0x00000022 
+ 00024986  0x000067ca deposit  0x00000021 
+ 00024987  0x000067cb iadd  0x00000002 , 0x0000003f 
+ 00024988  0x000067cc and_into  0x000001fc , 0x0000003f 
+ 00024989  0x000067cd store  0x00000004 , 0x00000034 
+ 00024990  0x000067ce force  0x00000005 , 0x0000003f 
+ 00024991  0x000067cf call  0x00006298 
+ 00024992  0x000067d0 fetch  0x00000004 , 0x00000034 
+ 00024993  0x000067d1 rshift  0x0000003f , 0x0000003f 
+ 00024994  0x000067d2 istore  0x00000004 , 0x00000005 
+ 00024995  0x000067d3 branch  0x000062b2 
+ 00024996  0x000067d6 force  0x0000000a , 0x0000003f 
+ 00024997  0x000067d7 call  0x00006298 
+ 00024998  0x000067d8 arg  0x000004d9 , 0x00000006 
+ 00024999  0x000067d9 ifetch  0x00000009 , 0x00000006 
+ 00025000  0x000067da istore  0x00000009 , 0x00000005 
+ 00025001  0x000067db branch  0x000062b2 
+ 00025002  0x000067e0 force  0x00000003 , 0x0000003f 
+ 00025003  0x000067e1 call  0x00006298 
+ 00025004  0x000067e2 setarg  0x00000114 
+ 00025005  0x000067e3 istore  0x00000002 , 0x00000005 
+ 00025006  0x000067e4 branch  0x000062b2 
+ 00025007  0x000067e8 force  0x00000001 , 0x0000003f 
+ 00025008  0x000067e9 call  0x00006298 
+ 00025009  0x000067f2 branch  0x000062b2 
+ 00025010  0x000067f6 force  0x00000002 , 0x0000003f 
+ 00025011  0x000067f7 call  0x00006298 
+ 00025012  0x000067f8 fetch  0x00000001 , 0x000040d0 
+ 00025013  0x000067f9 istore  0x00000001 , 0x00000005 
+ 00025014  0x000067fa branch  0x000062b2 
+ 00025015  0x000067fe force  0x00000002 , 0x0000003f 
+ 00025016  0x000067ff call  0x00006298 
+ 00025017  0x00006800 setarg  0x00000005 
+ 00025018  0x00006801 istore  0x00000001 , 0x00000005 
+ 00025019  0x00006802 branch  0x000062b2 
+ 00025020  0x00006806 force  0x00000002 , 0x0000003f 
+ 00025021  0x00006807 call  0x00006298 
+ 00025022  0x00006808 setarg  0x00000000 
+ 00025023  0x00006809 istore  0x00000001 , 0x00000005 
+ 00025024  0x0000680a branch  0x000062b2 
+ 00025025  0x0000680e jam  0x0000002e , 0x0000007c 
+ 00025026  0x0000680f rtn 
+ 00025027  0x00006811 fetch  0x00000001 , 0x00004092 
+ 00025028  0x00006812 sub  0x0000003f , 0x0000000a , 0x0000003e 
+ 00025029  0x00006813 call  0x000061c1 , 0x00000005 
+ 00025030  0x00006814 fetch  0x00000001 , 0x00000030 
+ 00025031  0x00006815 set1  0x00000004 , 0x0000003f 
+ 00025032  0x00006816 store  0x00000001 , 0x00000030 
+ 00025033  0x00006817 copy  0x00000022 , 0x0000003f 
+ 00025034  0x00006818 store  0x00000004 , 0x000004e9 
+ 00025035  0x00006819 fetch  0x00000001 , 0x000004d1 
+ 00025036  0x0000681a bbit1  0x00000003 , 0x000061d4 
+ 00025037  0x0000681b set1  0x00000003 , 0x0000003f 
+ 00025038  0x0000681c store  0x00000001 , 0x000004d1 
+ 00025039  0x0000681d jam  0x00000005 , 0x00000a99 
+ 00025040  0x0000681e call  0x00007d86 
+ 00025041  0x0000681f force  0x00000001 , 0x0000003f 
+ 00025042  0x00006820 call  0x00006298 
+ 00025043  0x00006821 branch  0x000062b2 
+ 00025044  0x00006823 jam  0x00000000 , 0x00000048 
+ 00025045  0x00006824 rtn 
+ 00025046  0x00006827 force  0x00000006 , 0x0000003f 
+ 00025047  0x00006828 call  0x00006298 
+ 00025048  0x00006829 fetch  0x00000005 , 0x00004510 
+ 00025049  0x0000682a istore  0x00000005 , 0x00000005 
+ 00025050  0x0000682b branch  0x000062b2 
+ 00025051  0x0000682e force  0x00000009 , 0x0000003f 
+ 00025052  0x0000682f call  0x00006298 
+ 00025053  0x00006830 fetch  0x00000008 , 0x00004098 
+ 00025054  0x00006831 istore  0x00000008 , 0x00000005 
+ 00025055  0x00006832 branch  0x000062b2 
+ 00025056  0x00006835 jam  0x00000001 , 0x000009b1 
+ 00025057  0x00006836 fetch  0x00000001 , 0x000045b1 
+ 00025058  0x00006837 rtnne  0x00000001 
+ 00025059  0x00006838 jam  0x00000013 , 0x000009af 
+ 00025060  0x00006839 rtn 
+ 00025061  0x0000683c call  0x000062ef 
+ 00025062  0x0000683d jam  0x00000099 , 0x0000007c 
+ 00025063  0x0000683e jam  0x00000003 , 0x000009af 
+ 00025064  0x0000683f rtn 
+ 00025065  0x00006843 call  0x000062ef 
+ 00025066  0x00006844 jam  0x0000003d , 0x0000007c 
+ 00025067  0x00006845 jam  0x00000007 , 0x000009af 
+ 00025068  0x00006846 rtn 
+ 00025069  0x00006849 arg  0x00000a4e , 0x00000011 
+ 00025070  0x0000684a arg  0x00000a6e , 0x00000012 
+ 00025071  0x0000684b arg  0x00000010 , 0x00000039 
+ 00025072  0x0000684c call  0x00007f88 
+ 00025073  0x0000684d branch  0x000061f7 , 0x00000005 
+ 00025074  0x0000684e jam  0x00000000 , 0x000009af 
+ 00025075  0x0000684f call  0x000076da 
+ 00025076  0x00006850 jam  0x00000024 , 0x0000007e 
+ 00025077  0x00006851 jam  0x00000040 , 0x0000007d 
+ 00025078  0x00006852 branch  0x00005d53 
+ 00025079  0x00006854 jam  0x0000000a , 0x000009af 
+ 00025080  0x00006855 call  0x000076d8 
+ 00025081  0x00006856 jam  0x00000040 , 0x0000007d 
+ 00025082  0x00006857 branch  0x00005e38 
+ 00025083  0x0000685c jam  0x00000040 , 0x0000007c 
+ 00025084  0x0000685d rtn 
+ 00025085  0x00006864 jam  0x0000003d , 0x0000007c 
+ 00025086  0x00006866 rtn 
+ 00025087  0x0000686d jam  0x00000000 , 0x000009b6 
+ 00025088  0x0000686e force  0x00000004 , 0x0000003f 
+ 00025089  0x0000686f call  0x00006298 
+ 00025090  0x00006870 force  0x00000001 , 0x0000003f 
+ 00025091  0x00006871 istore  0x00000001 , 0x00000005 
+ 00025092  0x00006872 force  0x00000001 , 0x0000003f 
+ 00025093  0x00006873 istore  0x00000001 , 0x00000005 
+ 00025094  0x00006874 force  0x00000030 , 0x0000003f 
+ 00025095  0x00006875 istore  0x00000001 , 0x00000005 
+ 00025096  0x00006876 call  0x000062fc 
+ 00025097  0x00006877 branch  0x000062b2 , 0x00000001 
+ 00025098  0x00006878 branch  0x000062b0 
+ 00025099  0x0000687c force  0x00000011 , 0x0000003f 
+ 00025100  0x0000687d call  0x00006298 
+ 00025101  0x0000687e fetch  0x00000001 , 0x000009b6 
+ 00025102  0x0000687f arg  0x0000462a , 0x00000006 
+ 00025103  0x00006880 iadd  0x00000006 , 0x00000006 
+ 00025104  0x00006881 ifetch  0x00000008 , 0x00000006 
+ 00025105  0x00006882 istore  0x00000008 , 0x00000005 
+ 00025106  0x00006883 ifetch  0x00000008 , 0x00000006 
+ 00025107  0x00006884 istore  0x00000008 , 0x00000005 
+ 00025108  0x00006885 fetch  0x00000001 , 0x000009b6 
+ 00025109  0x00006886 increase  0x00000010 , 0x0000003f 
+ 00025110  0x00006887 store  0x00000001 , 0x000009b6 
+ 00025111  0x00006888 call  0x000062fc 
+ 00025112  0x00006889 branch  0x000062b2 , 0x00000001 
+ 00025113  0x0000688a branch  0x000062b0 
+ 00025114  0x0000688e jam  0x00000006 , 0x000009ae 
+ 00025115  0x0000688f jam  0x0000003f , 0x0000007c 
+ 00025116  0x00006890 rtn 
+ 00025117  0x00006894 force  0x00000011 , 0x0000003f 
+ 00025118  0x00006895 call  0x00006298 
+ 00025119  0x00006896 arg  0x00000a4e , 0x00000006 
+ 00025120  0x00006897 ifetch  0x00000008 , 0x00000006 
+ 00025121  0x00006898 istore  0x00000008 , 0x00000005 
+ 00025122  0x00006899 ifetch  0x00000008 , 0x00000006 
+ 00025123  0x0000689a istore  0x00000008 , 0x00000005 
+ 00025124  0x0000689b branch  0x000062b0 
+ 00025125  0x0000689e jam  0x00000040 , 0x0000007c 
+ 00025126  0x0000689f rtn 
+ 00025127  0x000068a3 call  0x000062fc 
+ 00025128  0x000068a4 call  0x00007612 , 0x00000001 
+ 00025129  0x000068a5 force  0x00000011 , 0x0000003f 
+ 00025130  0x000068a6 call  0x00006298 
+ 00025131  0x000068a7 arg  0x00000a1e , 0x00000006 
+ 00025132  0x000068a8 ifetch  0x00000008 , 0x00000006 
+ 00025133  0x000068a9 istore  0x00000008 , 0x00000005 
+ 00025134  0x000068aa ifetch  0x00000008 , 0x00000006 
+ 00025135  0x000068ab istore  0x00000008 , 0x00000005 
+ 00025136  0x000068ac call  0x000062fc 
+ 00025137  0x000068ad nbranch  0x000062b0 , 0x00000001 
+ 00025138  0x000068ae branch  0x000062b2 , 0x00000001 
+ 00025139  0x000068b2 jam  0x0000000f , 0x000009af 
+ 00025140  0x000068b4 call  0x000062ef 
+ 00025141  0x000068b5 jam  0x0000000b , 0x0000007c 
+ 00025142  0x000068b6 call  0x00006307 
+ 00025143  0x000068b7 branch  0x0000764e , 0x00000001 
+ 00025144  0x000068b8 branch  0x00007658 
+ 00025145  0x000068ba call  0x000062eb 
+ 00025146  0x000068bc jam  0x00000041 , 0x0000007c 
+ 00025147  0x000068bd rtn 
+ 00025148  0x000068c0 force  0x00000011 , 0x0000003f 
+ 00025149  0x000068c1 call  0x00006298 
+ 00025150  0x000068c2 arg  0x00000a4e , 0x00000006 
+ 00025151  0x000068c3 ifetch  0x00000008 , 0x00000006 
+ 00025152  0x000068c4 istore  0x00000008 , 0x00000005 
+ 00025153  0x000068c5 ifetch  0x00000008 , 0x00000006 
+ 00025154  0x000068c6 istore  0x00000008 , 0x00000005 
+ 00025155  0x000068c7 call  0x000062fc 
+ 00025156  0x000068c8 nbranch  0x000062b0 , 0x00000001 
+ 00025157  0x000068c9 branch  0x000062b2 , 0x00000001 
+ 00025158  0x000068cc force  0x00000003 , 0x0000003f 
+ 00025159  0x000068cd call  0x00006298 
+ 00025160  0x000068ce setarg  0x0000fffe 
+ 00025161  0x000068cf istore  0x00000002 , 0x00000005 
+ 00025162  0x000068d0 branch  0x000062b0 
+ 00025163  0x000068d3 branch  0x000062b2 
+ 00025164  0x000068d5 branch  0x000062b2 
+ 00025165  0x000068d7 branch  0x000062b2 
+ 00025166  0x000068d9 branch  0x000062b2 
+ 00025167  0x000068df call  0x0000630b 
+ 00025168  0x000068e0 arg  0x000040a0 , 0x00000011 
+ 00025169  0x000068e1 call  0x00006311 
+ 00025170  0x000068e2 force  0x00000011 , 0x0000003f 
+ 00025171  0x000068e3 call  0x00006298 
+ 00025172  0x000068e4 arg  0x00000582 , 0x00000011 
+ 00025173  0x000068e5 arg  0x00000562 , 0x00000012 
+ 00025174  0x000068e6 call  0x00007352 
+ 00025175  0x000068e7 nbranch  0x000062a7 , 0x00000029 
+ 00025176  0x000068e8 branch  0x000062ad 
+ 00025177  0x000068eb call  0x0000630b 
+ 00025178  0x000068ec arg  0x00000040 , 0x00000011 
+ 00025179  0x000068ed call  0x00007255 
+ 00025180  0x000068ef force  0x00000011 , 0x0000003f 
+ 00025181  0x000068f0 call  0x00006298 
+ 00025182  0x000068f1 arg  0x00000562 , 0x00000006 
+ 00025183  0x000068f2 call  0x00007ebf 
+ 00025184  0x000068f3 fetch  0x00000001 , 0x00000055 
+ 00025185  0x000068f4 beq  0x00000019 , 0x000062b2 
+ 00025186  0x000068f5 beq  0x00000018 , 0x000062b2 
+ 00025187  0x000068f6 branch  0x000062ad 
+ 00025188  0x000068f9 fetch  0x00000001 , 0x000009b5 
+ 00025189  0x000068fa branch  0x0000626a , 0x00000034 
+ 00025190  0x000068fb call  0x000062fc 
+ 00025191  0x000068fc call  0x000062ef , 0x00000001 
+ 00025192  0x000068fd ncall  0x000062eb , 0x00000001 
+ 00025193  0x000068fe branch  0x0000626b 
+ 00025194  0x00006900 call  0x000062ef 
+ 00025195  0x00006902 call  0x0000630b 
+ 00025196  0x00006903 branch  0x0000625c 
+ 00025197  0x00006906 arg  0x000040a0 , 0x00000011 
+ 00025198  0x00006907 call  0x00007288 
+ 00025199  0x00006908 force  0x00000005 , 0x0000003f 
+ 00025200  0x00006909 call  0x00006298 
+ 00025201  0x0000690a fetch  0x00000004 , 0x00000592 
+ 00025202  0x0000690b istore  0x00000004 , 0x00000005 
+ 00025203  0x0000690c arg  0x000004d5 , 0x00000002 
+ 00025204  0x0000690d call  0x000062e2 
+ 00025205  0x0000690e call  0x00007386 
+ 00025206  0x0000690f call  0x000062fc 
+ 00025207  0x00006910 branch  0x0000627c , 0x00000001 
+ 00025208  0x00006911 jam  0x00000001 , 0x000004d8 
+ 00025209  0x00006912 fetch  0x00000001 , 0x000009b5 
+ 00025210  0x00006913 rtn  0x00000034 
+ 00025211  0x00006914 jam  0x0000000b , 0x0000007c 
+ 00025212  0x00006916 fetch  0x00000001 , 0x000041bd 
+ 00025213  0x00006917 rtn  0x00000034 
+ 00025214  0x00006919 call  0x000062fc 
+ 00025215  0x0000691a nbranch  0x00006284 , 0x00000001 
+ 00025216  0x0000691b fetch  0x00000001 , 0x000004d7 
+ 00025217  0x0000691c rtn  0x00000034 
+ 00025218  0x0000691d jam  0x0000000f , 0x0000007c 
+ 00025219  0x0000691e rtn 
+ 00025220  0x00006920 rtnmark0  0x00000021 
+ 00025221  0x00006921 set0  0x00000021 , 0x00000000 
+ 00025222  0x00006922 jam  0x0000000f , 0x0000007c 
+ 00025223  0x00006923 rtn 
+ 00025224  0x00006928 call  0x0000630b 
+ 00025225  0x00006929 call  0x0000728b 
+ 00025226  0x0000692a force  0x00000011 , 0x0000003f 
+ 00025227  0x0000692b call  0x00006298 
+ 00025228  0x0000692c arg  0x00000562 , 0x00000006 
+ 00025229  0x0000692d call  0x00007ebf 
+ 00025230  0x0000692e branch  0x000062ad 
+ 00025231  0x00006931 force  0x00000001 , 0x0000003f 
+ 00025232  0x00006932 call  0x00006298 
+ 00025233  0x00006933 branch  0x000062ad 
+ 00025234  0x00006936 force  0x00000002 , 0x0000003f 
+ 00025235  0x00006937 call  0x00006298 
+ 00025236  0x00006938 force  0x00000010 , 0x0000003f 
+ 00025237  0x00006939 istore  0x00000001 , 0x00000005 
+ 00025238  0x0000693a store  0x00000001 , 0x00000054 
+ 00025239  0x0000693b branch  0x000062ad 
+ 00025240  0x0000693f lshift3  0x0000003f , 0x0000003f 
+ 00025241  0x00006940 or_into  0x00000007 , 0x0000003f 
+ 00025242  0x00006941 store  0x00000001 , 0x000004b6 
+ 00025243  0x00006942 arg  0x00000011 , 0x00000039 
+ 00025244  0x00006943 arg  0x000004b8 , 0x00000005 
+ 00025245  0x00006944 call  0x00007ed4 
+ 00025246  0x00006945 arg  0x000004b8 , 0x00000005 
+ 00025247  0x00006946 rtn 
+ 00025248  0x00006949 and  0x0000003f , 0x0000007f , 0x00000011 
+ 00025249  0x0000694a jam  0x0000007f , 0x00000048 
+ 00025250  0x0000694b deposit  0x00000007 
+ 00025251  0x0000694c call  0x00006298 
+ 00025252  0x0000694d deposit  0x00000011 
+ 00025253  0x0000694e istore  0x00000001 , 0x00000005 
+ 00025254  0x0000694f rtn 
+ 00025255  0x00006952 fetch  0x00000001 , 0x00000048 
+ 00025256  0x00006953 lshift  0x0000003f , 0x0000003f 
+ 00025257  0x00006954 fetcht  0x00000001 , 0x0000004c 
+ 00025258  0x00006955 isolate1  0x00000001 , 0x00000002 
+ 00025259  0x00006956 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00025260  0x00006957 branch  0x000062b7 
+ 00025261  0x0000695b fetcht  0x00000001 , 0x0000004c 
+ 00025262  0x0000695c and_into  0x00000001 , 0x00000002 
+ 00025263  0x0000695d branch  0x000062b3 
+ 00025264  0x00006960 force  0x00000000 , 0x00000002 
+ 00025265  0x00006961 branch  0x000062b3 
+ 00025266  0x00006964 force  0x00000001 , 0x00000002 
+ 00025267  0x00006966 fetch  0x00000001 , 0x00000048 
+ 00025268  0x00006967 lshift  0x0000003f , 0x0000003f 
+ 00025269  0x00006968 setflag  0x00000029 , 0x00000000 , 0x0000003f 
+ 00025270  0x00006969 ixor  0x00000002 , 0x0000003f 
+ 00025271  0x0000696b store  0x00000001 , 0x000004b7 
+ 00025272  0x0000696c jam  0x00000000 , 0x00000048 
+ 00025273  0x0000696d call  0x000062c7 
+ 00025274  0x0000696e enable  0x00000028 
+ 00025275  0x0000696f rtn 
+ 00025276  0x00006973 fetch  0x00000001 , 0x0000007c 
+ 00025277  0x00006974 rtn  0x00000034 
+ 00025278  0x00006975 call  0x000062c1 
+ 00025279  0x00006976 fetch  0x00000001 , 0x0000007c 
+ 00025280  0x00006977 rtn 
+ 00025281  0x0000697a bpatchx  0x00000086 , 0x00004030 
+ 00025282  0x0000697b fetch  0x00000001 , 0x00000048 
+ 00025283  0x0000697c branch  0x000062c7 , 0x00000034 
+ 00025284  0x0000697d fetch  0x00000001 , 0x00000078 
+ 00025285  0x0000697e nrtn  0x00000034 
+ 00025286  0x0000697f branch  0x000062d1 
+ 00025287  0x00006981 fetch  0x00000001 , 0x00000078 
+ 00025288  0x00006982 branch  0x000062d7 , 0x00000034 
+ 00025289  0x00006983 fetch  0x00000003 , 0x00000078 
+ 00025290  0x00006984 store  0x00000003 , 0x00000048 
+ 00025291  0x00006985 fetcht  0x00000001 , 0x0000007b 
+ 00025292  0x00006986 fetch  0x00000001 , 0x0000004c 
+ 00025293  0x00006987 set0  0x00000001 , 0x0000003f 
+ 00025294  0x00006988 ior  0x00000002 , 0x0000003f 
+ 00025295  0x00006989 store  0x00000001 , 0x0000004c 
+ 00025296  0x0000698a jam  0x00000000 , 0x00000078 
+ 00025297  0x0000698c fetch  0x00000001 , 0x0000007c 
+ 00025298  0x0000698d rtn  0x00000034 
+ 00025299  0x0000698e fetch  0x00000004 , 0x0000007c 
+ 00025300  0x0000698f store  0x00000004 , 0x00000078 
+ 00025301  0x00006990 jam  0x00000000 , 0x0000007c 
+ 00025302  0x00006991 rtn 
+ 00025303  0x00006993 fetch  0x00000001 , 0x0000007c 
+ 00025304  0x00006994 rtn  0x00000034 
+ 00025305  0x00006995 fetch  0x00000003 , 0x0000007c 
+ 00025306  0x00006996 store  0x00000003 , 0x00000048 
+ 00025307  0x00006997 fetcht  0x00000001 , 0x0000007f 
+ 00025308  0x00006998 fetch  0x00000001 , 0x0000004c 
+ 00025309  0x00006999 set0  0x00000001 , 0x0000003f 
+ 00025310  0x0000699a ior  0x00000002 , 0x0000003f 
+ 00025311  0x0000699b store  0x00000001 , 0x0000004c 
+ 00025312  0x0000699c jam  0x00000000 , 0x0000007c 
+ 00025313  0x0000699d rtn 
+ 00025314  0x000069a1 bpatchx  0x00000087 , 0x00004030 
+ 00025315  0x000069a2 fetch  0x00000001 , 0x0000004c 
+ 00025316  0x000069a3 copy  0x0000003f , 0x00000013 
+ 00025317  0x000069a4 ifetch  0x00000001 , 0x00000002 
+ 00025318  0x000069a5 call  0x00005e52 
+ 00025319  0x000069a6 call  0x000062a7 
+ 00025320  0x000069a7 copy  0x00000013 , 0x0000003f 
+ 00025321  0x000069a8 store  0x00000001 , 0x0000004c 
+ 00025322  0x000069a9 rtn 
+ 00025323  0x000069ac fetcht  0x00000001 , 0x0000004c 
+ 00025324  0x000069ad set0  0x00000000 , 0x00000002 
+ 00025325  0x000069ae storet  0x00000001 , 0x0000004c 
+ 00025326  0x000069af rtn 
+ 00025327  0x000069b2 fetcht  0x00000001 , 0x0000004c 
+ 00025328  0x000069b3 set1  0x00000000 , 0x00000002 
+ 00025329  0x000069b4 storet  0x00000001 , 0x0000004c 
+ 00025330  0x000069b5 rtn 
+ 00025331  0x000069b9 nsetflag  0x00000029 , 0x00000001 , 0x0000003f 
+ 00025332  0x000069ba fetcht  0x00000001 , 0x0000004c 
+ 00025333  0x000069bb ixor  0x00000002 , 0x0000003f 
+ 00025334  0x000069bc isolate1  0x00000001 , 0x0000003f 
+ 00025335  0x000069bd rtn 
+ 00025336  0x000069c1 fetch  0x00000001 , 0x0000004c 
+ 00025337  0x000069c2 setflag  0x00000029 , 0x00000001 , 0x0000003f 
+ 00025338  0x000069c3 store  0x00000001 , 0x0000004c 
+ 00025339  0x000069c4 rtn 
+ 00025340  0x000069c8 fetch  0x00000001 , 0x000009b4 
+ 00025341  0x000069c9 compare  0x00000001 , 0x0000003f , 0x0000007f 
+ 00025342  0x000069ca rtn 
+ 00025343  0x000069cc fetch  0x00000001 , 0x000009b4 
+ 00025344  0x000069cd set1  0x00000007 , 0x0000003f 
+ 00025345  0x000069ce store  0x00000001 , 0x000009b4 
+ 00025346  0x000069cf rtn 
+ 00025347  0x000069d1 fetch  0x00000001 , 0x000009b4 
+ 00025348  0x000069d2 set0  0x00000007 , 0x0000003f 
+ 00025349  0x000069d3 store  0x00000001 , 0x000009b4 
+ 00025350  0x000069d4 rtn 
+ 00025351  0x000069d6 fetch  0x00000001 , 0x000009b4 
+ 00025352  0x000069d7 isolate1  0x00000007 , 0x0000003f 
+ 00025353  0x000069d8 store  0x00000001 , 0x000009b4 
+ 00025354  0x000069d9 rtn 
+ 00025355  0x000069dd arg  0x00000562 , 0x00000005 
+ 00025356  0x000069df force  0x00000010 , 0x00000039 
+ 00025357  0x000069e2 random  0x0000003f 
+ 00025358  0x000069e3 istore  0x00000001 , 0x00000005 
+ 00025359  0x000069e4 loop  0x0000630d 
+ 00025360  0x000069e5 rtn 
+ 00025361  0x000069e8 call  0x00007259 
+ 00025362  0x000069e9 arg  0x000041be , 0x00000011 
+ 00025363  0x000069ea arg  0x00000592 , 0x00000012 
+ 00025364  0x000069eb ifetch  0x00000008 , 0x00000011 
+ 00025365  0x000069ec fetcht  0x00000001 , 0x00000030 
+ 00025366  0x000069ed nsetflag  0x00000034 , 0x00000006 , 0x00000002 
+ 00025367  0x000069ee storet  0x00000001 , 0x00000030 
+ 00025368  0x000069ef copy  0x00000011 , 0x00000005 
+ 00025369  0x000069f0 call  0x00007352 
+ 00025370  0x000069f1 branch  0x000021c4 
+ 00025371  0x000069f9 bpatchx  0x00000088 , 0x00004031 
+ 00025372  0x000069fb call  0x000062bc 
+ 00025373  0x000069fc nrtn  0x00000034 
+ 00025374  0x000069fe fetch  0x00000001 , 0x00000055 
+ 00025375  0x000069ff rtn  0x00000034 
+ 00025376  0x00006a03 beq  0x00000004 , 0x0000636f 
+ 00025377  0x00006a04 beq  0x00000005 , 0x00006374 
+ 00025378  0x00006a05 beq  0x00000002 , 0x00006366 
+ 00025379  0x00006a06 beq  0x00000003 , 0x0000637c 
+ 00025380  0x00006a07 beq  0x0000000e , 0x00006369 
+ 00025381  0x00006a08 beq  0x00000006 , 0x00006398 
+ 00025382  0x00006a09 beq  0x00000007 , 0x000063b0 
+ 00025383  0x00006a0a beq  0x00000009 , 0x000063b1 
+ 00025384  0x00006a0b beq  0x0000000a , 0x000063ba 
+ 00025385  0x00006a0c beq  0x0000000b , 0x000063be 
+ 00025386  0x00006a0d beq  0x0000000c , 0x00006386 
+ 00025387  0x00006a0e beq  0x0000000d , 0x00006389 
+ 00025388  0x00006a0f beq  0x0000000f , 0x0000638f 
+ 00025389  0x00006a10 beq  0x00000012 , 0x00006359 
+ 00025390  0x00006a11 beq  0x00000013 , 0x0000637c 
+ 00025391  0x00006a12 beq  0x00000010 , 0x0000635c 
+ 00025392  0x00006a13 beq  0x00000014 , 0x00006356 
+ 00025393  0x00006a14 beq  0x00000015 , 0x0000637c 
+ 00025394  0x00006a15 beq  0x00000016 , 0x00006350 
+ 00025395  0x00006a16 beq  0x00000018 , 0x00006355 
+ 00025396  0x00006a17 beq  0x00000017 , 0x00006349 
+ 00025397  0x00006a18 beq  0x00000019 , 0x0000634f 
+ 00025398  0x00006a19 beq  0x0000001a , 0x0000633a 
+ 00025399  0x00006a1a beq  0x0000001b , 0x00006344 
+ 00025400  0x00006a1b jam  0x00000000 , 0x00000055 
+ 00025401  0x00006a1d rtn 
+ 00025402  0x00006a1f fetch  0x00000001 , 0x000004d1 
+ 00025403  0x00006a20 rtnbit0  0x00000002 
+ 00025404  0x00006a21 rtnbit0  0x00000003 
+ 00025405  0x00006a22 jam  0x00000000 , 0x00000055 
+ 00025406  0x00006a23 call  0x00006340 
+ 00025407  0x00006a24 branch  0x00006cef 
+ 00025408  0x00006a27 fetch  0x00000001 , 0x0000016d 
+ 00025409  0x00006a28 rtnbit0  0x00000001 
+ 00025410  0x00006a29 jam  0x0000000a , 0x00000055 
+ 00025411  0x00006a2a rtn 
+ 00025412  0x00006a2d arg  0x00000007 , 0x00000007 
+ 00025413  0x00006a2e call  0x00007f16 
+ 00025414  0x00006a2f nrtn  0x00000034 
+ 00025415  0x00006a30 jam  0x0000001a , 0x00000055 
+ 00025416  0x00006a31 rtn 
+ 00025417  0x00006a34 fetch  0x00000001 , 0x0000016d 
+ 00025418  0x00006a35 set0  0x00000000 , 0x0000003f 
+ 00025419  0x00006a36 store  0x00000001 , 0x0000016d 
+ 00025420  0x00006a37 jam  0x00000019 , 0x00000055 
+ 00025421  0x00006a38 jam  0x0000000b , 0x0000007c 
+ 00025422  0x00006a39 rtn 
+ 00025423  0x00006a3b rtn 
+ 00025424  0x00006a3d fetch  0x00000001 , 0x000004d4 
+ 00025425  0x00006a3e rtnne  0x00000002 
+ 00025426  0x00006a3f call  0x000063c0 
+ 00025427  0x00006a40 jam  0x00000018 , 0x00000055 
+ 00025428  0x00006a41 rtn 
+ 00025429  0x00006a44 rtn 
+ 00025430  0x00006a46 jam  0x00000015 , 0x00000055 
+ 00025431  0x00006a47 jam  0x00000083 , 0x0000007c 
+ 00025432  0x00006a48 rtn 
+ 00025433  0x00006a4a jam  0x00000013 , 0x00000055 
+ 00025434  0x00006a4b jam  0x00000025 , 0x0000007c 
+ 00025435  0x00006a4c rtn 
+ 00025436  0x00006a4f fetch  0x00000001 , 0x0000455b 
+ 00025437  0x00006a50 rtneq  0x00000000 
+ 00025438  0x00006a51 beq  0x00000001 , 0x00006364 
+ 00025439  0x00006a52 arg  0x00000006 , 0x00000007 
+ 00025440  0x00006a53 call  0x00007f16 
+ 00025441  0x00006a54 nrtn  0x00000034 
+ 00025442  0x00006a55 jam  0x00000000 , 0x0000455b 
+ 00025443  0x00006a56 branch  0x0000637d 
+ 00025444  0x00006a58 rtn  0x00000029 
+ 00025445  0x00006a59 branch  0x00006398 
+ 00025446  0x00006a5c jam  0x00000003 , 0x00000055 
+ 00025447  0x00006a5d jam  0x00000027 , 0x0000007c 
+ 00025448  0x00006a5e rtn 
+ 00025449  0x00006a60 jam  0x00000013 , 0x0000007c 
+ 00025450  0x00006a61 set1  0x00000003 , 0x00000000 
+ 00025451  0x00006a62 jam  0x00000005 , 0x00000055 
+ 00025452  0x00006a63 setarg  0x000001ff 
+ 00025453  0x00006a64 store  0x00000002 , 0x000004d2 
+ 00025454  0x00006a65 rtn 
+ 00025455  0x00006a67 jam  0x00000005 , 0x00000055 
+ 00025456  0x00006a68 jam  0x000000ff , 0x000004d2 
+ 00025457  0x00006a69 set0  0x00000022 , 0x00000000 
+ 00025458  0x00006a6a jam  0x00000033 , 0x0000007c 
+ 00025459  0x00006a6b branch  0x00005d04 
+ 00025460  0x00006a6d rtnmark1  0x00000022 
+ 00025461  0x00006a6e fetch  0x00000002 , 0x000004d2 
+ 00025462  0x00006a6f sub  0x0000003f , 0x00000001 , 0x0000003f 
+ 00025463  0x00006a70 branch  0x0000637a , 0x00000005 
+ 00025464  0x00006a71 store  0x00000002 , 0x000004d2 
+ 00025465  0x00006a72 rtn 
+ 00025466  0x00006a74 jam  0x0000000e , 0x00000055 
+ 00025467  0x00006a75 rtn 
+ 00025468  0x00006a78 rtn 
+ 00025469  0x00006a7b fetch  0x00000001 , 0x000004d1 
+ 00025470  0x00006a7c rtnbit0  0x00000003 
+ 00025471  0x00006a7d rtnbit0  0x00000002 
+ 00025472  0x00006a7e fetch  0x00000001 , 0x0000016d 
+ 00025473  0x00006a7f set0  0x00000002 , 0x0000003f 
+ 00025474  0x00006a80 store  0x00000001 , 0x0000016d 
+ 00025475  0x00006a81 jam  0x00000013 , 0x0000007c 
+ 00025476  0x00006a82 jam  0x00000010 , 0x00000055 
+ 00025477  0x00006a83 rtn 
+ 00025478  0x00006a86 jam  0x0000000d , 0x00000055 
+ 00025479  0x00006a87 jam  0x00000031 , 0x0000007c 
+ 00025480  0x00006a88 rtn 
+ 00025481  0x00006a8b fetch  0x00000001 , 0x000004d1 
+ 00025482  0x00006a8c rtnbit0  0x00000002 
+ 00025483  0x00006a8d jam  0x00000000 , 0x00000055 
+ 00025484  0x00006a8f rtn 
+ 00025485  0x00006a91 jam  0x00000006 , 0x00000055 
+ 00025486  0x00006a92 rtn 
+ 00025487  0x00006a95 fetch  0x00000001 , 0x000004d2 
+ 00025488  0x00006a96 increase  0xffffffff , 0x0000003f 
+ 00025489  0x00006a97 branch  0x00006394 , 0x00000034 
+ 00025490  0x00006a98 store  0x00000001 , 0x000004d2 
+ 00025491  0x00006a99 rtn 
+ 00025492  0x00006a9b jam  0x00000007 , 0x0000007c 
+ 00025493  0x00006a9c jam  0x00000016 , 0x000004ca 
+ 00025494  0x00006a9d jam  0x00000000 , 0x00000055 
+ 00025495  0x00006a9e rtn 
+ 00025496  0x00006aa1 fetch  0x00000001 , 0x0000016d 
+ 00025497  0x00006aa2 bbit1  0x00000002 , 0x0000637d 
+ 00025498  0x00006aa3 bbit1  0x00000000 , 0x0000639d 
+ 00025499  0x00006aa5 jam  0x0000001a , 0x00000055 
+ 00025500  0x00006aa6 rtn 
+ 00025501  0x00006aa8 fetch  0x00000001 , 0x000041bd 
+ 00025502  0x00006aa9 branch  0x000063a9 , 0x00000034 
+ 00025503  0x00006aaa fetch  0x00000001 , 0x000004d1 
+ 00025504  0x00006aab rtnbit0  0x00000003 
+ 00025505  0x00006aac rtnbit0  0x00000002 
+ 00025506  0x00006aad fetch  0x00000004 , 0x000004e9 
+ 00025507  0x00006aae arg  0x00000064 , 0x00000002 
+ 00025508  0x00006aaf iadd  0x00000002 , 0x00000002 
+ 00025509  0x00006ab0 copy  0x00000022 , 0x0000003f 
+ 00025510  0x00006ab1 isub  0x00000002 , 0x0000003e 
+ 00025511  0x00006ab2 nrtn  0x00000002 
+ 00025512  0x00006ab3 branch  0x00006349 
+ 00025513  0x00006ab8 jam  0x00000016 , 0x00000055 
+ 00025514  0x00006ab9 jam  0x00000004 , 0x00004689 
+ 00025515  0x00006aba setarg  0x00003030 
+ 00025516  0x00006abb store  0x00000002 , 0x0000468a 
+ 00025517  0x00006abc istore  0x00000002 , 0x00000005 
+ 00025518  0x00006abd jam  0x00000002 , 0x000004d4 
+ 00025519  0x00006abe branch  0x00006350 
+ 00025520  0x00006ac1 rtn 
+ 00025521  0x00006ac3 fetch  0x00000001 , 0x0000016d 
+ 00025522  0x00006ac4 bbit1  0x00000001 , 0x000063b5 
+ 00025523  0x00006ac5 jam  0x0000001a , 0x00000055 
+ 00025524  0x00006ac6 rtn 
+ 00025525  0x00006ac9 fetch  0x00000001 , 0x0000016d 
+ 00025526  0x00006aca set0  0x00000001 , 0x0000003f 
+ 00025527  0x00006acb store  0x00000001 , 0x0000016d 
+ 00025528  0x00006acc jam  0x0000000f , 0x0000007c 
+ 00025529  0x00006acd rtn 
+ 00025530  0x00006ad0 fetch  0x00000001 , 0x000004d8 
+ 00025531  0x00006ad1 rtn  0x00000034 
+ 00025532  0x00006ad2 jam  0x00000000 , 0x00000055 
+ 00025533  0x00006ad3 branch  0x000063b5 
+ 00025534  0x00006ad6 jam  0x0000000c , 0x00000055 
+ 00025535  0x00006ad7 rtn 
+ 00025536  0x00006ada fetch  0x00000001 , 0x0000004b 
+ 00025537  0x00006adb bbit1  0x00000002 , 0x000063c5 
+ 00025538  0x00006adc call  0x000062ef 
+ 00025539  0x00006add jam  0x00000008 , 0x0000007c 
+ 00025540  0x00006ade branch  0x00004d04 
+ 00025541  0x00006ae0 fetch  0x00000001 , 0x0000004b 
+ 00025542  0x00006ae1 set0  0x00000002 , 0x0000003f 
+ 00025543  0x00006ae2 store  0x00000001 , 0x0000004b 
+ 00025544  0x00006ae3 call  0x00006001 
+ 00025545  0x00006ae4 call  0x000062f8 
+ 00025546  0x00006ae5 branch  0x00004d04 
+ 00025547  0x00006ae8 setarg  0x00000004 
+ 00025548  0x00006ae9 store  0x00000001 , 0x00004689 
+ 00025549  0x00006aea setarg  0x00003030 
+ 00025550  0x00006aeb istore  0x00000002 , 0x00000005 
+ 00025551  0x00006aec istore  0x00000002 , 0x00000005 
+ 00025552  0x00006aed rtn 
+ 00025553  0x00006af4 bpatchx  0x0000008c , 0x00004031 
+ 00025554  0x00006af5 hfetch  0x00000001 , 0x00008073 
+ 00025555  0x00006af6 arg  0x00000006 , 0x00000002 
+ 00025556  0x00006af7 ior  0x00000002 , 0x0000003f 
+ 00025557  0x00006af8 hstore  0x00000001 , 0x00008073 
+ 00025558  0x00006af9 hfetch  0x00000001 , 0x00008077 
+ 00025559  0x00006afa ior  0x00000002 , 0x0000003f 
+ 00025560  0x00006afb hstore  0x00000001 , 0x00008077 
+ 00025561  0x00006afc call  0x000063ee 
+ 00025562  0x00006afd hfetch  0x00000001 , 0x00008077 
+ 00025563  0x00006afe set0  0x00000001 , 0x0000003f 
+ 00025564  0x00006aff set0  0x00000002 , 0x0000003f 
+ 00025565  0x00006b00 hstore  0x00000001 , 0x00008077 
+ 00025566  0x00006b01 nop  0x0000001e 
+ 00025567  0x00006b02 branch  0x000063f2 
+ 00025568  0x00006b05 hfetch  0x00000001 , 0x00008073 
+ 00025569  0x00006b06 arg  0x000000c0 , 0x00000002 
+ 00025570  0x00006b07 ior  0x00000002 , 0x0000003f 
+ 00025571  0x00006b08 hstore  0x00000001 , 0x00008073 
+ 00025572  0x00006b09 hfetch  0x00000001 , 0x00008077 
+ 00025573  0x00006b0a ior  0x00000002 , 0x0000003f 
+ 00025574  0x00006b0b hstore  0x00000001 , 0x00008077 
+ 00025575  0x00006b0c call  0x000063ee 
+ 00025576  0x00006b0d hfetch  0x00000001 , 0x00008077 
+ 00025577  0x00006b0e set0  0x00000006 , 0x0000003f 
+ 00025578  0x00006b0f set0  0x00000007 , 0x0000003f 
+ 00025579  0x00006b10 hstore  0x00000001 , 0x00008077 
+ 00025580  0x00006b11 nop  0x0000001e 
+ 00025581  0x00006b12 branch  0x000063f6 
+ 00025582  0x00006b15 hfetch  0x00000001 , 0x00008081 
+ 00025583  0x00006b16 and  0x0000003f , 0x000000fc , 0x0000003f 
+ 00025584  0x00006b17 hstore  0x00000001 , 0x00008081 
+ 00025585  0x00006b18 rtn 
+ 00025586  0x00006b1a hfetch  0x00000001 , 0x00008081 
+ 00025587  0x00006b1b or  0x0000003f , 0x00000001 , 0x0000003f 
+ 00025588  0x00006b1c hstore  0x00000001 , 0x00008081 
+ 00025589  0x00006b1d rtn 
+ 00025590  0x00006b1f hfetch  0x00000001 , 0x00008081 
+ 00025591  0x00006b20 or  0x0000003f , 0x00000003 , 0x0000003f 
+ 00025592  0x00006b21 set0  0x00000004 , 0x0000003f 
+ 00025593  0x00006b22 hstore  0x00000001 , 0x00008081 
+ 00025594  0x00006b23 rtn 
+ 00025595  0x00006b28 copy  0x0000003f , 0x00000012 
+ 00025596  0x00006b29 call  0x0000640f 
+ 00025597  0x00006b2a nop  0x00000064 
+ 00025598  0x00006b2b copy  0x00000012 , 0x0000003f 
+ 00025599  0x00006b2c call  0x00006414 
+ 00025600  0x00006b2d copy  0x0000003f , 0x00000012 
+ 00025601  0x00006b2e call  0x00006411 
+ 00025602  0x00006b2f nop  0x00000064 
+ 00025603  0x00006b30 copy  0x00000012 , 0x0000003f 
+ 00025604  0x00006b31 rtn 
+ 00025605  0x00006b34 copy  0x0000003f , 0x00000012 
+ 00025606  0x00006b35 call  0x0000640f 
+ 00025607  0x00006b36 nop  0x00000064 
+ 00025608  0x00006b37 copy  0x00000012 , 0x0000003f 
+ 00025609  0x00006b38 call  0x00006413 
+ 00025610  0x00006b39 call  0x00006411 
+ 00025611  0x00006b3a nop  0x00000064 
+ 00025612  0x00006b3b rtn 
+ 00025613  0x00006b3f fetcht  0x00000001 , 0x00004214 
+ 00025614  0x00006b40 branch  0x0000680e 
+ 00025615  0x00006b44 fetcht  0x00000001 , 0x00004214 
+ 00025616  0x00006b45 branch  0x00006829 
+ 00025617  0x00006b49 fetcht  0x00000001 , 0x00004214 
+ 00025618  0x00006b4a branch  0x00006825 
+ 00025619  0x00006b4e branch  0x000064ec 
+ 00025620  0x00006b51 branch  0x000064f3 
+ 00025621  0x00006b59 nbranch  0x00006419 , 0x00000028 
+ 00025622  0x00006b5a hfetch  0x00000001 , 0x00008085 
+ 00025623  0x00006b5b or_into  0x00000002 , 0x0000003f 
+ 00025624  0x00006b5c hstore  0x00000001 , 0x00008085 
+ 00025625  0x00006b5e copy  0x00000002 , 0x0000003e 
+ 00025626  0x00006b5f branch  0x0000641c , 0x00000005 
+ 00025627  0x00006b60 copy  0x00000013 , 0x0000003d 
+ 00025628  0x00006b62 isolate0  0x00000000 , 0x0000003e 
+ 00025629  0x00006b63 branch  0x000064b9 
+ 00025630  0x00006b67 force  0x00000004 , 0x00000002 
+ 00025631  0x00006b69 arg  0x000001fe , 0x00000011 
+ 00025632  0x00006b6a hfetch  0x00000001 , 0x00008085 
+ 00025633  0x00006b6b and_into  0x000000fd , 0x0000003f 
+ 00025634  0x00006b6c hstore  0x00000001 , 0x00008085 
+ 00025635  0x00006b6d call  0x00006419 
+ 00025636  0x00006b6e arg  0x000055aa , 0x00000011 
+ 00025637  0x00006b6f fetch  0x00000002 , 0x000001fe 
+ 00025638  0x00006b70 ifetcht  0x00000002 , 0x00000006 
+ 00025639  0x00006b71 isub  0x00000011 , 0x0000003e 
+ 00025640  0x00006b72 rtn 
+ 00025641  0x00006b75 arg  0x00000002 , 0x00000002 
+ 00025642  0x00006b76 arg  0x00000204 , 0x00000011 
+ 00025643  0x00006b77 call  0x00006419 
+ 00025644  0x00006b78 fetch  0x00000002 , 0x00000204 
+ 00025645  0x00006b79 store  0x00000002 , 0x000001f7 
+ 00025646  0x00006b7a call  0x00006430 , 0x00000028 
+ 00025647  0x00006b7b rtn 
+ 00025648  0x00006b7e arg  0x00000010 , 0x00000002 
+ 00025649  0x00006b7f arg  0x00000206 , 0x00000011 
+ 00025650  0x00006b80 hfetch  0x00000001 , 0x00008085 
+ 00025651  0x00006b81 and_into  0x000000fd , 0x0000003f 
+ 00025652  0x00006b82 hstore  0x00000001 , 0x00008085 
+ 00025653  0x00006b83 call  0x00006419 
+ 00025654  0x00006b84 arg  0x00000206 , 0x00000006 
+ 00025655  0x00006b85 arg  0x00000010 , 0x00000039 
+ 00025656  0x00006b86 call  0x00007478 
+ 00025657  0x00006b87 call  0x00007428 
+ 00025658  0x00006b88 call  0x00007491 
+ 00025659  0x00006b89 branch  0x00007422 
+ 00025660  0x00006b8c disable  0x0000002d 
+ 00025661  0x00006b8d call  0x0000641e 
+ 00025662  0x00006b8e nrtn  0x00000005 
+ 00025663  0x00006b8f enable  0x0000002d 
+ 00025664  0x00006b90 jam  0x00000080 , 0x00008023 
+ 00025665  0x00006b91 jam  0x00000000 , 0x00008022 
+ 00025666  0x00006b92 jam  0x00000000 , 0x00008024 
+ 00025667  0x00006b93 arg  0x00008025 , 0x00000011 
+ 00025668  0x00006b94 call  0x00006415 
+ 00025669  0x00006b95 jam  0x00000000 , 0x00008023 
+ 00025670  0x00006b97 arg  0x00000006 , 0x00000002 
+ 00025671  0x00006b98 call  0x0000641f 
+ 00025672  0x00006b99 nrtn  0x00000005 
+ 00025673  0x00006b9a ifetch  0x00000002 , 0x00000006 
+ 00025674  0x00006b9b iforce  0x00000011 
+ 00025675  0x00006b9c call  0x00006419 
+ 00025676  0x00006b9d branch  0x00006446 
+ 00025677  0x00006ba2 call  0x00007f99 
+ 00025678  0x00006ba3 setarg  0x00001000 
+ 00025679  0x00006ba4 store  0x00000002 , 0x000001f7 
+ 00025680  0x00006ba5 arg  0x000065e5 , 0x00000013 
+ 00025681  0x00006ba6 arg  0x00000002 , 0x00000039 
+ 00025682  0x00006ba8 call  0x0000641e 
+ 00025683  0x00006ba9 nrtn  0x00000005 
+ 00025684  0x00006baa fetch  0x00000002 , 0x000001f7 
+ 00025685  0x00006bab byteswap  0x0000003f , 0x0000003f 
+ 00025686  0x00006bac iadd  0x00000002 , 0x0000003f 
+ 00025687  0x00006bad byteswap  0x0000003f , 0x0000003f 
+ 00025688  0x00006bae store  0x00000002 , 0x000001f7 
+ 00025689  0x00006baf loop  0x00006452 
+ 00025690  0x00006bb0 branch  0x00006446 
+ 00025691  0x00006bb3 call  0x00007f99 
+ 00025692  0x00006bb4 disable  0x00000028 
+ 00025693  0x00006bb5 call  0x0000666a 
+ 00025694  0x00006bb6 setarg  0x00000000 
+ 00025695  0x00006bb7 arg  0x000001f3 , 0x00000011 
+ 00025696  0x00006bb8 arg  0x00000002 , 0x00000002 
+ 00025697  0x00006bb9 call  0x000066b3 
+ 00025698  0x00006bba fetch  0x00000002 , 0x000001f3 
+ 00025699  0x00006bbb bbit0  0x00000007 , 0x0000646e 
+ 00025700  0x00006bbc jam  0x00000025 , 0x00008050 
+ 00025701  0x00006bbd setarg  0x000007f0 
+ 00025702  0x00006bbe arg  0x00000206 , 0x00000011 
+ 00025703  0x00006bbf arg  0x00000010 , 0x00000002 
+ 00025704  0x00006bc0 call  0x000066b3 
+ 00025705  0x00006bc1 jam  0x00000008 , 0x00008006 
+ 00025706  0x00006bc2 set1  0x0000002b , 0x00000000 
+ 00025707  0x00006bc3 arg  0x00000206 , 0x00000006 
+ 00025708  0x00006bc4 call  0x00007484 
+ 00025709  0x00006bc5 enable  0x00000028 
+ 00025710  0x00006bc7 jam  0x00000000 , 0x000041da 
+ 00025711  0x00006bc9 call  0x000064b0 
+ 00025712  0x00006bca fetch  0x00000002 , 0x000001f3 
+ 00025713  0x00006bcb byteswap  0x0000003f , 0x0000003f 
+ 00025714  0x00006bcc arg  0x000007ff , 0x00000002 
+ 00025715  0x00006bcd iand  0x00000002 , 0x0000003f 
+ 00025716  0x00006bce branch  0x0000647b , 0x00000005 
+ 00025717  0x00006bcf call  0x0000666f 
+ 00025718  0x00006bd0 arg  0x000066b8 , 0x00000013 
+ 00025719  0x00006bd1 call  0x00006430 , 0x00000028 
+ 00025720  0x00006bd2 call  0x0000643c 
+ 00025721  0x00006bd3 fetch  0x00000001 , 0x000001f2 
+ 00025722  0x00006bd4 bbit0  0x00000000 , 0x0000646f 
+ 00025723  0x00006bd7 call  0x0000666d 
+ 00025724  0x00006bd8 jam  0x00000000 , 0x000041da 
+ 00025725  0x00006bda call  0x000064b0 
+ 00025726  0x00006bdb call  0x000065c2 
+ 00025727  0x00006bdc fetch  0x00000001 , 0x000001f3 
+ 00025728  0x00006bdd bbit1  0x00000006 , 0x0000648e 
+ 00025729  0x00006bde call  0x000064aa 
+ 00025730  0x00006bdf nbranch  0x00006486 , 0x0000002d 
+ 00025731  0x00006be0 fetch  0x00000001 , 0x000001f2 
+ 00025732  0x00006be1 bbit0  0x00000000 , 0x0000647d 
+ 00025733  0x00006be2 branch  0x0000649b 
+ 00025734  0x00006be4 call  0x000065bf 
+ 00025735  0x00006be5 fetch  0x00000001 , 0x000001f3 
+ 00025736  0x00006be6 bbit1  0x00000006 , 0x0000648e 
+ 00025737  0x00006be7 call  0x000064aa 
+ 00025738  0x00006be8 nbranch  0x0000648e , 0x0000002d 
+ 00025739  0x00006be9 fetch  0x00000001 , 0x000001f2 
+ 00025740  0x00006bea bbit0  0x00000000 , 0x0000647d 
+ 00025741  0x00006beb branch  0x0000649b 
+ 00025742  0x00006bee jam  0x00000000 , 0x000041da 
+ 00025743  0x00006bf0 call  0x000064b0 
+ 00025744  0x00006bf1 fetch  0x00000001 , 0x000001f3 
+ 00025745  0x00006bf2 bbit1  0x00000005 , 0x0000649b 
+ 00025746  0x00006bf3 setarg  0x00000000 
+ 00025747  0x00006bf4 store  0x00000003 , 0x000001f6 
+ 00025748  0x00006bf5 call  0x00006502 
+ 00025749  0x00006bf6 arg  0x00006578 , 0x00000013 
+ 00025750  0x00006bf7 call  0x00006429 
+ 00025751  0x00006bf8 call  0x0000643c 
+ 00025752  0x00006bf9 nbranch  0x0000649b , 0x0000002d 
+ 00025753  0x00006bfa fetch  0x00000001 , 0x000001f2 
+ 00025754  0x00006bfb bbit0  0x00000000 , 0x0000648f 
+ 00025755  0x00006bfe bmark1  0x0000002b , 0x0000649d 
+ 00025756  0x00006bff call  0x000064a3 
+ 00025757  0x00006c01 fetch  0x00000001 , 0x000001f3 
+ 00025758  0x00006c02 bbit0  0x00000004 , 0x000064a3 
+ 00025759  0x00006c03 jam  0x00000021 , 0x00008050 
+ 00025760  0x00006c04 call  0x00004c0e 
+ 00025761  0x00006c06 call  0x00004c2e 
+ 00025762  0x00006c07 branch  0x000064a1 
+ 00025763  0x00006c0a setarg  0x00000000 
+ 00025764  0x00006c0b store  0x00000008 , 0x00000206 
+ 00025765  0x00006c0c store  0x00000008 , 0x0000020e 
+ 00025766  0x00006c0d force  0x00000004 , 0x00000038 
+ 00025767  0x00006c0e call  0x00007492 
+ 00025768  0x00006c0f jam  0x00000021 , 0x00008050 
+ 00025769  0x00006c10 rtn 
+ 00025770  0x00006c14 setarg  0x00000000 
+ 00025771  0x00006c15 store  0x00000002 , 0x000001f7 
+ 00025772  0x00006c16 arg  0x000065e5 , 0x00000013 
+ 00025773  0x00006c17 call  0x000065a3 
+ 00025774  0x00006c18 call  0x00006429 
+ 00025775  0x00006c19 branch  0x0000643c 
+ 00025776  0x00006c1d fetch  0x00000001 , 0x000041da 
+ 00025777  0x00006c1e increase  0x00000001 , 0x0000003f 
+ 00025778  0x00006c1f sub  0x0000003f , 0x00000003 , 0x0000003e 
+ 00025779  0x00006c20 nbranch  0x000064b6 , 0x00000002 
+ 00025780  0x00006c21 store  0x00000001 , 0x000041da 
+ 00025781  0x00006c22 rtn 
+ 00025782  0x00006c25 call  0x000064a3 
+ 00025783  0x00006c26 call  0x00007fa1 
+ 00025784  0x00006c27 rtn 
+ 00025785  0x00006c2c fetch  0x00000001 , 0x000001f2 
+ 00025786  0x00006c2d lshift  0x0000003f , 0x0000003f 
+ 00025787  0x00006c2e setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00025788  0x00006c2f isolate0  0x0000000f , 0x00000011 
+ 00025789  0x00006c30 rtn  0x00000001 
+ 00025790  0x00006c31 store  0x00000001 , 0x000001f2 
+ 00025791  0x00006c32 rtn 
+ 00025792  0x00006c36 hfetch  0x00000001 , 0x00008085 
+ 00025793  0x00006c37 rtnbit0  0x00000001 
+ 00025794  0x00006c38 branch  0x000064c6 
+ 00025795  0x00006c3a hfetch  0x00000001 , 0x0000812c 
+ 00025796  0x00006c3b qisolate1  0x0000003f 
+ 00025797  0x00006c3c rtn  0x00000001 
+ 00025798  0x00006c3e hfetch  0x00000001 , 0x00008108 
+ 00025799  0x00006c3f bbit0  0x00000001 , 0x000064c3 
+ 00025800  0x00006c40 call  0x00007422 
+ 00025801  0x00006c41 branch  0x000064c3 
+ 00025802  0x00006c46 fetch  0x00000002 , 0x00004199 
+ 00025803  0x00006c47 rtn  0x00000034 
+ 00025804  0x00006c48 jam  0x00000080 , 0x00008023 
+ 00025805  0x00006c49 jam  0x00000000 , 0x00008022 
+ 00025806  0x00006c4a jam  0x00000000 , 0x00008024 
+ 00025807  0x00006c4b fetcht  0x00000002 , 0x0000419b 
+ 00025808  0x00006c4c lshift2  0x00000002 , 0x00000039 
+ 00025809  0x00006c4d iforce  0x00000006 
+ 00025810  0x00006c4f ifetch  0x00000001 , 0x00000006 
+ 00025811  0x00006c50 hstore  0x00000001 , 0x00008025 
+ 00025812  0x00006c51 loop  0x000064d2 
+ 00025813  0x00006c52 jam  0x00000000 , 0x00008023 
+ 00025814  0x00006c53 rtn 
+ 00025815  0x00006c59 bpatchx  0x0000008d , 0x00004031 
+ 00025816  0x00006c5a call  0x000064dd 
+ 00025817  0x00006c5b branch  0x000063f2 
+ 00025818  0x00006c5e call  0x000064dd 
+ 00025819  0x00006c5f call  0x000063ee 
+ 00025820  0x00006c60 branch  0x000063f6 
+ 00025821  0x00006c63 fetch  0x00000001 , 0x00004212 
+ 00025822  0x00006c64 hstore  0x00000001 , 0x00008086 
+ 00025823  0x00006c65 fetch  0x00000001 , 0x00004213 
+ 00025824  0x00006c66 hstore  0x00000001 , 0x00008087 
+ 00025825  0x00006c67 setarg  0x000001f5 
+ 00025826  0x00006c68 hstore  0x00000002 , 0x0000808a 
+ 00025827  0x00006c69 setarg  0x000001fa 
+ 00025828  0x00006c6a hstore  0x00000002 , 0x0000808c 
+ 00025829  0x00006c6b branch  0x000063ee 
+ 00025830  0x00006c6e hfetch  0x00000001 , 0x00008086 
+ 00025831  0x00006c6f set1  0x00000007 , 0x0000003f 
+ 00025832  0x00006c70 hstore  0x00000001 , 0x00008086 
+ 00025833  0x00006c71 set0  0x00000007 , 0x0000003f 
+ 00025834  0x00006c72 hstore  0x00000001 , 0x00008086 
+ 00025835  0x00006c73 rtn 
+ 00025836  0x00006c78 set1  0x00000007 , 0x0000003f 
+ 00025837  0x00006c79 store  0x00000002 , 0x000001f5 
+ 00025838  0x00006c7a bpatchx  0x0000008e , 0x00004031 
+ 00025839  0x00006c7b jam  0x00000002 , 0x00008088 
+ 00025840  0x00006c7c jam  0x00000000 , 0x0000808e 
+ 00025841  0x00006c7d jam  0x00000002 , 0x00008006 
+ 00025842  0x00006c7e branch  0x000064fc 
+ 00025843  0x00006c82 force  0x00000001 , 0x00000002 
+ 00025844  0x00006c86 store  0x00000001 , 0x000001f5 
+ 00025845  0x00006c87 bpatchx  0x0000008f , 0x00004031 
+ 00025846  0x00006c88 jam  0x00000001 , 0x00008088 
+ 00025847  0x00006c89 hstoret  0x00000002 , 0x0000808e 
+ 00025848  0x00006c8a jam  0x00000002 , 0x00008006 
+ 00025849  0x00006c8b call  0x000064fc 
+ 00025850  0x00006c8c fetch  0x00000001 , 0x000001fa 
+ 00025851  0x00006c8d rtn 
+ 00025852  0x00006c90 fetch  0x00000002 , 0x000040d6 
+ 00025853  0x00006c91 increase  0x00000001 , 0x0000003f 
+ 00025854  0x00006c92 store  0x00000002 , 0x000040d6 
+ 00025855  0x00006c93 hfetch  0x00000001 , 0x0000812c 
+ 00025856  0x00006c94 bbit0  0x00000003 , 0x000064fc 
+ 00025857  0x00006c95 rtn 
+ 00025858  0x00006c98 jam  0x00000040 , 0x00008086 
+ 00025859  0x00006c99 jam  0x00000000 , 0x00008087 
+ 00025860  0x00006c9a hfetch  0x00000001 , 0x00008081 
+ 00025861  0x00006c9b set0  0x00000000 , 0x0000003f 
+ 00025862  0x00006c9c set1  0x00000001 , 0x0000003f 
+ 00025863  0x00006c9d hstore  0x00000001 , 0x00008081 
+ 00025864  0x00006c9e setarg  0x00000000 
+ 00025865  0x00006c9f store  0x00000004 , 0x000001f5 
+ 00025866  0x00006ca0 rtn 
+ 00025867  0x00006ca4 setarg  0x00000000 
+ 00025868  0x00006ca5 hstore  0x00000002 , 0x0000808e 
+ 00025869  0x00006ca6 setarg  0x00000001 
+ 00025870  0x00006ca7 hstore  0x00000002 , 0x00008088 
+ 00025871  0x00006ca8 setarg  0x000001f5 
+ 00025872  0x00006ca9 hstore  0x00000002 , 0x0000808a 
+ 00025873  0x00006caa jam  0x00000006 , 0x000001f5 
+ 00025874  0x00006cab jam  0x00000002 , 0x00008006 
+ 00025875  0x00006cac branch  0x000064fc 
+ 00025876  0x00006cbc disable  0x00000028 
+ 00025877  0x00006cbd copy  0x0000003f , 0x00000012 
+ 00025878  0x00006cbe fetch  0x00000001 , 0x00004239 
+ 00025879  0x00006cbf rtnne  0x00000000 
+ 00025880  0x00006cc0 enable  0x00000028 
+ 00025881  0x00006cc1 copy  0x00000012 , 0x0000003f 
+ 00025882  0x00006cc2 branch  0x00006522 
+ 00025883  0x00006cc6 fetch  0x00000001 , 0x00004239 
+ 00025884  0x00006cc7 beq  0x00000001 , 0x00006522 
+ 00025885  0x00006cc8 beq  0x00000002 , 0x00006528 
+ 00025886  0x00006cc9 beq  0x00000003 , 0x00006530 
+ 00025887  0x00006cca beq  0x00000004 , 0x00006537 
+ 00025888  0x00006ccb beq  0x00000005 , 0x0000653d 
+ 00025889  0x00006ccc rtn 
+ 00025890  0x00006ccf store  0x00000003 , 0x00004232 
+ 00025891  0x00006cd0 copy  0x00000011 , 0x0000003f 
+ 00025892  0x00006cd1 store  0x00000002 , 0x00004235 
+ 00025893  0x00006cd2 storet  0x00000002 , 0x00004237 
+ 00025894  0x00006cd3 jam  0x00000002 , 0x00004239 
+ 00025895  0x00006cd4 branch  0x00006502 
+ 00025896  0x00006cd6 call  0x00006502 
+ 00025897  0x00006cd7 jam  0x00000003 , 0x00004239 
+ 00025898  0x00006cd8 call  0x0000650b 
+ 00025899  0x00006cd9 arg  0x000001f5 , 0x00000011 
+ 00025900  0x00006cda fetch  0x00000003 , 0x00004232 
+ 00025901  0x00006cdb jam  0x00000004 , 0x00008088 
+ 00025902  0x00006cdc arg  0x00000020 , 0x00000002 
+ 00025903  0x00006cdd branch  0x00006556 
+ 00025904  0x00006ce0 call  0x00006502 
+ 00025905  0x00006ce1 call  0x0000650b 
+ 00025906  0x00006ce2 setarg  0x00000005 
+ 00025907  0x00006ce3 call  0x000064f3 
+ 00025908  0x00006ce4 rtnbit1  0x00000000 
+ 00025909  0x00006ce5 jam  0x00000004 , 0x00004239 
+ 00025910  0x00006ce6 rtn 
+ 00025911  0x00006ce8 call  0x00006502 
+ 00025912  0x00006ce9 jam  0x00000005 , 0x00004239 
+ 00025913  0x00006cea call  0x0000650b 
+ 00025914  0x00006ceb call  0x0000654a 
+ 00025915  0x00006cec call  0x00006552 
+ 00025916  0x00006ced branch  0x00006545 
+ 00025917  0x00006cef call  0x00006502 
+ 00025918  0x00006cf0 call  0x0000650b 
+ 00025919  0x00006cf1 setarg  0x00000005 
+ 00025920  0x00006cf2 call  0x000064f3 
+ 00025921  0x00006cf3 rtnbit1  0x00000000 
+ 00025922  0x00006cf4 jam  0x00000000 , 0x00004239 
+ 00025923  0x00006cf5 fetch  0x00000002 , 0x00004201 
+ 00025924  0x00006cf6 branch  0x00007f9c 
+ 00025925  0x00006cf8 fetch  0x00000004 , 0x00000aa2 
+ 00025926  0x00006cf9 fetcht  0x00000002 , 0x00004235 
+ 00025927  0x00006cfa increase  0xfffffffc , 0x00000002 
+ 00025928  0x00006cfb istore  0x00000004 , 0x00000002 
+ 00025929  0x00006cfc rtn 
+ 00025930  0x00006cfe fetcht  0x00000002 , 0x00004235 
+ 00025931  0x00006cff copy  0x00000002 , 0x00000011 
+ 00025932  0x00006d00 increase  0xfffffffc , 0x00000002 
+ 00025933  0x00006d01 ifetch  0x00000004 , 0x00000002 
+ 00025934  0x00006d02 store  0x00000004 , 0x00000aa2 
+ 00025935  0x00006d03 fetcht  0x00000002 , 0x00004237 
+ 00025936  0x00006d04 fetch  0x00000003 , 0x00004232 
+ 00025937  0x00006d05 rtn 
+ 00025938  0x00006d0a increase  0x00000004 , 0x00000002 
+ 00025939  0x00006d0b hstoret  0x00000002 , 0x00008088 
+ 00025940  0x00006d0c arg  0x00000002 , 0x00000002 
+ 00025941  0x00006d0d increase  0xfffffffc , 0x00000011 
+ 00025942  0x00006d10 istoret  0x00000001 , 0x00000011 
+ 00025943  0x00006d11 rshift16  0x0000003f , 0x00000002 
+ 00025944  0x00006d12 istoret  0x00000001 , 0x00000005 
+ 00025945  0x00006d13 rshift8  0x0000003f , 0x00000002 
+ 00025946  0x00006d14 istoret  0x00000001 , 0x00000005 
+ 00025947  0x00006d15 istore  0x00000001 , 0x00000005 
+ 00025948  0x00006d16 deposit  0x00000011 
+ 00025949  0x00006d17 hstore  0x00000002 , 0x0000808a 
+ 00025950  0x00006d18 setarg  0x00000000 
+ 00025951  0x00006d19 hstore  0x00000002 , 0x0000808e 
+ 00025952  0x00006d1a jam  0x00000002 , 0x00008006 
+ 00025953  0x00006d1b branch  0x000064fc 
+ 00025954  0x00006d20 hstoret  0x00000002 , 0x0000808e 
+ 00025955  0x00006d21 rshift16  0x0000003f , 0x00000002 
+ 00025956  0x00006d22 storet  0x00000001 , 0x000001f6 
+ 00025957  0x00006d23 rshift8  0x0000003f , 0x00000002 
+ 00025958  0x00006d24 storet  0x00000001 , 0x000001f7 
+ 00025959  0x00006d25 store  0x00000001 , 0x000001f8 
+ 00025960  0x00006d26 setarg  0x00000004 
+ 00025961  0x00006d27 hstore  0x00000002 , 0x00008088 
+ 00025962  0x00006d28 jam  0x00000003 , 0x000001f5 
+ 00025963  0x00006d29 setarg  0x000001f5 
+ 00025964  0x00006d2a hstore  0x00000002 , 0x0000808a 
+ 00025965  0x00006d2b deposit  0x00000011 
+ 00025966  0x00006d2c hstore  0x00000002 , 0x0000808c 
+ 00025967  0x00006d2d hfetch  0x00000001 , 0x00008086 
+ 00025968  0x00006d2e isolate0  0x0000000f , 0x00000011 
+ 00025969  0x00006d2f setflag  0x00000001 , 0x00000006 , 0x0000003f 
+ 00025970  0x00006d30 hstore  0x00000001 , 0x00008086 
+ 00025971  0x00006d31 jam  0x00000002 , 0x00008006 
+ 00025972  0x00006d33 hfetch  0x00000001 , 0x0000812c 
+ 00025973  0x00006d34 bbit1  0x00000007 , 0x00006574 
+ 00025974  0x00006d35 arg  0x00000003 , 0x00000007 
+ 00025975  0x00006d36 branch  0x000064fc 
+ 00025976  0x00006d3b hstoret  0x00000002 , 0x0000808e 
+ 00025977  0x00006d3c setarg  0x00000004 
+ 00025978  0x00006d3d hstore  0x00000002 , 0x00008088 
+ 00025979  0x00006d3e jam  0x00000003 , 0x000001f5 
+ 00025980  0x00006d3f setarg  0x000001f5 
+ 00025981  0x00006d40 hstore  0x00000002 , 0x0000808a 
+ 00025982  0x00006d41 deposit  0x00000011 
+ 00025983  0x00006d42 hstore  0x00000002 , 0x0000808c 
+ 00025984  0x00006d43 hfetch  0x00000001 , 0x00008086 
+ 00025985  0x00006d44 isolate0  0x0000000f , 0x00000011 
+ 00025986  0x00006d45 setflag  0x00000001 , 0x00000006 , 0x0000003f 
+ 00025987  0x00006d46 hstore  0x00000001 , 0x00008086 
+ 00025988  0x00006d47 jam  0x00000002 , 0x00008006 
+ 00025989  0x00006d49 hfetch  0x00000001 , 0x0000812c 
+ 00025990  0x00006d4a bbit1  0x00000007 , 0x00006585 
+ 00025991  0x00006d4b arg  0x00000003 , 0x00000007 
+ 00025992  0x00006d4c call  0x000064c0 
+ 00025993  0x00006d4d call  0x000064fc 
+ 00025994  0x00006d4e isolate1  0x00000002 , 0x0000003f 
+ 00025995  0x00006d4f call  0x000064b9 
+ 00025996  0x00006d50 fetch  0x00000001 , 0x000001f6 
+ 00025997  0x00006d51 lshift16  0x0000003f , 0x00000012 
+ 00025998  0x00006d52 fetch  0x00000001 , 0x000001f7 
+ 00025999  0x00006d53 lshift8  0x0000003f , 0x0000003f 
+ 00026000  0x00006d54 ior  0x00000012 , 0x00000012 
+ 00026001  0x00006d55 fetch  0x00000001 , 0x000001f8 
+ 00026002  0x00006d56 ior  0x00000012 , 0x0000003f 
+ 00026003  0x00006d57 iadd  0x00000002 , 0x0000003f 
+ 00026004  0x00006d58 store  0x00000001 , 0x000001f8 
+ 00026005  0x00006d59 rshift8  0x0000003f , 0x0000003f 
+ 00026006  0x00006d5a store  0x00000001 , 0x000001f7 
+ 00026007  0x00006d5b rshift8  0x0000003f , 0x0000003f 
+ 00026008  0x00006d5c store  0x00000001 , 0x000001f6 
+ 00026009  0x00006d5d rtn 
+ 00026010  0x00006d63 jam  0x00000001 , 0x00008010 
+ 00026011  0x00006d64 rtn 
+ 00026012  0x00006d6b jam  0x0000000c , 0x00008091 
+ 00026013  0x00006d6c jam  0x0000000d , 0x00008092 
+ 00026014  0x00006d6d jam  0x0000000d , 0x00008093 
+ 00026015  0x00006d6e jam  0x0000000d , 0x00008094 
+ 00026016  0x00006d6f jam  0x0000000d , 0x00008095 
+ 00026017  0x00006d70 jam  0x0000000c , 0x00008096 
+ 00026018  0x00006d71 branch  0x000065a9 
+ 00026019  0x00006d75 jam  0x00000005 , 0x00008091 
+ 00026020  0x00006d76 jam  0x00000007 , 0x00008092 
+ 00026021  0x00006d77 jam  0x00000007 , 0x00008093 
+ 00026022  0x00006d78 jam  0x00000007 , 0x00008094 
+ 00026023  0x00006d79 jam  0x00000007 , 0x00008095 
+ 00026024  0x00006d7a jam  0x00000005 , 0x00008096 
+ 00026025  0x00006d7c hfetch  0x00000001 , 0x0000807b 
+ 00026026  0x00006d7d or_into  0x000000c0 , 0x0000003f 
+ 00026027  0x00006d7e hstore  0x00000001 , 0x0000807b 
+ 00026028  0x00006d7f hfetch  0x00000001 , 0x00008081 
+ 00026029  0x00006d80 or_into  0x00000010 , 0x0000003f 
+ 00026030  0x00006d81 hstore  0x00000001 , 0x00008081 
+ 00026031  0x00006d82 rtn 
+ 00026032  0x00006d87 hfetch  0x00000001 , 0x0000812c 
+ 00026033  0x00006d88 bbit0  0x00000005 , 0x000065b0 
+ 00026034  0x00006d89 rtn 
+ 00026035  0x00006d92 hstore  0x00000002 , 0x00008098 
+ 00026036  0x00006d93 deposit  0x00000011 
+ 00026037  0x00006d94 hstore  0x00000002 , 0x0000809a 
+ 00026038  0x00006d95 deposit  0x00000012 
+ 00026039  0x00006d96 hstore  0x00000002 , 0x0000809c 
+ 00026040  0x00006d97 deposit  0x00000002 
+ 00026041  0x00006d98 hstore  0x00000002 , 0x0000809e 
+ 00026042  0x00006d99 arg  0x00000001 , 0x00000002 
+ 00026043  0x00006d9a nsetflag  0x00000034 , 0x00000001 , 0x00000002 
+ 00026044  0x00006d9b hstore  0x00000001 , 0x00008090 
+ 00026045  0x00006d9c jam  0x00000004 , 0x00008006 
+ 00026046  0x00006d9d branch  0x000065b0 
+ 00026047  0x00006da1 set1  0x00000028 , 0x00000000 
+ 00026048  0x00006da2 jam  0x00000008 , 0x00004211 
+ 00026049  0x00006da3 rtn 
+ 00026050  0x00006da6 set0  0x00000028 , 0x00000000 
+ 00026051  0x00006da7 jam  0x00000020 , 0x00004211 
+ 00026052  0x00006da8 rtn 
+ 00026053  0x00006dac fetch  0x00000001 , 0x00004203 
+ 00026054  0x00006dad iadd  0x00000012 , 0x0000003f 
+ 00026055  0x00006dae store  0x00000001 , 0x000001f7 
+ 00026056  0x00006daf branch  0x000065cc 
+ 00026057  0x00006db2 fetch  0x00000002 , 0x000001f7 
+ 00026058  0x00006db3 byteswap  0x0000003f , 0x0000003f 
+ 00026059  0x00006db4 store  0x00000001 , 0x000001f7 
+ 00026060  0x00006dba setarg  0x00000003 
+ 00026061  0x00006dbb hstore  0x00000002 , 0x00008098 
+ 00026062  0x00006dbc jam  0x000000a0 , 0x000001f6 
+ 00026063  0x00006dbd jam  0x000000a1 , 0x000001f8 
+ 00026064  0x00006dbe branch  0x000065eb 
+ 00026065  0x00006dc5 storet  0x00000002 , 0x00000aa2 
+ 00026066  0x00006dc6 call  0x000065d6 
+ 00026067  0x00006dc7 fetcht  0x00000002 , 0x00000aa2 
+ 00026068  0x00006dc8 call  0x00006606 
+ 00026069  0x00006dc9 branch  0x000065dd 
+ 00026070  0x00006dcc fetch  0x00000001 , 0x0000423a 
+ 00026071  0x00006dcd rtneq  0x000000ff 
+ 00026072  0x00006dce bbit0  0x00000006 , 0x000065db 
+ 00026073  0x00006dcf setarg  0x000249f0 
+ 00026074  0x00006dd0 call  0x00002a8f 
+ 00026075  0x00006dd2 fetcht  0x00000001 , 0x0000423a 
+ 00026076  0x00006dd3 branch  0x00006829 
+ 00026077  0x00006dd6 fetcht  0x00000001 , 0x0000423a 
+ 00026078  0x00006dd7 branch  0x00006825 
+ 00026079  0x00006ddd bpatchx  0x00000090 , 0x00004032 
+ 00026080  0x00006dde bmark1  0x00000028 , 0x000065c5 
+ 00026081  0x00006ddf fetch  0x00000002 , 0x00004203 
+ 00026082  0x00006de0 iadd  0x00000012 , 0x0000003f 
+ 00026083  0x00006de1 byteswap  0x0000003f , 0x0000003f 
+ 00026084  0x00006de2 store  0x00000002 , 0x000001f7 
+ 00026085  0x00006de6 bpatchx  0x00000091 , 0x00004032 
+ 00026086  0x00006de7 bmark1  0x00000028 , 0x000065c9 
+ 00026087  0x00006de8 setarg  0x00000004 
+ 00026088  0x00006de9 hstore  0x00000002 , 0x00008098 
+ 00026089  0x00006dea jam  0x000000a0 , 0x000001f6 
+ 00026090  0x00006deb jam  0x000000a1 , 0x000001f9 
+ 00026091  0x00006ded setarg  0x000001f6 
+ 00026092  0x00006dee hstore  0x00000002 , 0x0000809a 
+ 00026093  0x00006def hstoret  0x00000002 , 0x0000809e 
+ 00026094  0x00006df0 deposit  0x00000011 
+ 00026095  0x00006df1 hstore  0x00000002 , 0x0000809c 
+ 00026096  0x00006df2 setarg  0x00000002 
+ 00026097  0x00006df3 isolate0  0x0000000f , 0x00000011 
+ 00026098  0x00006df4 setflag  0x00000001 , 0x00000000 , 0x0000003f 
+ 00026099  0x00006df5 hstore  0x00000001 , 0x00008090 
+ 00026100  0x00006df6 jam  0x00000004 , 0x00008006 
+ 00026101  0x00006df7 arg  0x00000005 , 0x00000007 
+ 00026102  0x00006df8 call  0x000064c0 
+ 00026103  0x00006df9 call  0x000065b0 
+ 00026104  0x00006dfa isolate1  0x00000004 , 0x0000003f 
+ 00026105  0x00006dfb call  0x000064b9 
+ 00026106  0x00006dfc bmark1  0x00000028 , 0x00006601 
+ 00026107  0x00006dfd fetch  0x00000002 , 0x000001f7 
+ 00026108  0x00006dfe byteswap  0x0000003f , 0x0000003f 
+ 00026109  0x00006dff iadd  0x00000002 , 0x0000003f 
+ 00026110  0x00006e00 byteswap  0x0000003f , 0x0000003f 
+ 00026111  0x00006e01 store  0x00000002 , 0x000001f7 
+ 00026112  0x00006e02 rtn 
+ 00026113  0x00006e05 fetch  0x00000001 , 0x000001f7 
+ 00026114  0x00006e06 iadd  0x00000002 , 0x0000003f 
+ 00026115  0x00006e07 byteswap  0x0000003f , 0x0000003f 
+ 00026116  0x00006e08 store  0x00000002 , 0x000001f7 
+ 00026117  0x00006e09 rtn 
+ 00026118  0x00006e10 fetch  0x00000002 , 0x00004203 
+ 00026119  0x00006e11 iadd  0x00000012 , 0x0000003f 
+ 00026120  0x00006e15 store  0x00000002 , 0x00000a9a 
+ 00026121  0x00006e16 bpatchx  0x00000092 , 0x00004032 
+ 00026122  0x00006e17 storet  0x00000002 , 0x00000aa2 
+ 00026123  0x00006e18 copy  0x00000011 , 0x0000003f 
+ 00026124  0x00006e19 store  0x00000002 , 0x00000ab9 
+ 00026125  0x00006e1b call  0x0000661d 
+ 00026126  0x00006e1d fetcht  0x00000002 , 0x00000ab2 
+ 00026127  0x00006e1e fetch  0x00000002 , 0x00000ab9 
+ 00026128  0x00006e1f copy  0x0000003f , 0x00000011 
+ 00026129  0x00006e20 fetch  0x00000002 , 0x00000a9a 
+ 00026130  0x00006e22 call  0x0000663d 
+ 00026131  0x00006e24 fetch  0x00000002 , 0x00000ab2 
+ 00026132  0x00006e25 fetcht  0x00000002 , 0x00000ab9 
+ 00026133  0x00006e26 iadd  0x00000002 , 0x00000002 
+ 00026134  0x00006e27 storet  0x00000002 , 0x00000ab9 
+ 00026135  0x00006e28 fetcht  0x00000002 , 0x00000a9a 
+ 00026136  0x00006e29 iadd  0x00000002 , 0x00000002 
+ 00026137  0x00006e2a storet  0x00000002 , 0x00000a9a 
+ 00026138  0x00006e2b fetch  0x00000002 , 0x00000aa2 
+ 00026139  0x00006e2c nbranch  0x0000660d , 0x00000034 
+ 00026140  0x00006e2d rtn 
+ 00026141  0x00006e36 bpatchx  0x00000093 , 0x00004032 
+ 00026142  0x00006e37 fetch  0x00000001 , 0x00004211 
+ 00026143  0x00006e38 increase  0xffffffff , 0x0000003f 
+ 00026144  0x00006e39 fetcht  0x00000002 , 0x00000a9a 
+ 00026145  0x00006e3a ior  0x00000002 , 0x0000003f 
+ 00026146  0x00006e3b increase  0x00000001 , 0x0000003f 
+ 00026147  0x00006e3c store  0x00000003 , 0x00000ab6 
+ 00026148  0x00006e3e fetch  0x00000002 , 0x00000aa2 
+ 00026149  0x00006e3f iadd  0x00000002 , 0x0000003f 
+ 00026150  0x00006e41 fetcht  0x00000003 , 0x00000ab6 
+ 00026151  0x00006e42 isub  0x00000002 , 0x0000003f 
+ 00026152  0x00006e43 nbranch  0x0000662f , 0x00000002 
+ 00026153  0x00006e44 store  0x00000002 , 0x00000aa2 
+ 00026154  0x00006e45 fetch  0x00000003 , 0x00000ab6 
+ 00026155  0x00006e46 fetcht  0x00000002 , 0x00000a9a 
+ 00026156  0x00006e47 isub  0x00000002 , 0x0000003f 
+ 00026157  0x00006e48 store  0x00000002 , 0x00000ab2 
+ 00026158  0x00006e49 rtn 
+ 00026159  0x00006e4b fetch  0x00000002 , 0x00000aa2 
+ 00026160  0x00006e4c store  0x00000002 , 0x00000ab2 
+ 00026161  0x00006e4d setarg  0x00000000 
+ 00026162  0x00006e4e store  0x00000002 , 0x00000aa2 
+ 00026163  0x00006e4f rtn 
+ 00026164  0x00006e52 increase  0x00000002 , 0x00000002 
+ 00026165  0x00006e53 hstoret  0x00000002 , 0x00008098 
+ 00026166  0x00006e54 increase  0xfffffffe , 0x00000011 
+ 00026167  0x00006e55 ifetcht  0x00000003 , 0x00000011 
+ 00026168  0x00006e56 copy  0x00000002 , 0x00000012 
+ 00026169  0x00006e57 arg  0x000000a0 , 0x00000002 
+ 00026170  0x00006e58 istoret  0x00000001 , 0x00000011 
+ 00026171  0x00006e5a istore  0x00000001 , 0x00000005 
+ 00026172  0x00006e5b branch  0x0000664a 
+ 00026173  0x00006e5f copy  0x0000003f , 0x00000012 
+ 00026174  0x00006e60 bpatchx  0x00000094 , 0x00004032 
+ 00026175  0x00006e61 bmark1  0x00000028 , 0x00006634 
+ 00026176  0x00006e62 copy  0x00000012 , 0x0000003f 
+ 00026177  0x00006e63 increase  0x00000003 , 0x00000002 
+ 00026178  0x00006e64 hstoret  0x00000002 , 0x00008098 
+ 00026179  0x00006e65 increase  0xfffffffd , 0x00000011 
+ 00026180  0x00006e66 ifetcht  0x00000003 , 0x00000011 
+ 00026181  0x00006e67 copy  0x00000002 , 0x00000012 
+ 00026182  0x00006e68 arg  0x000000a0 , 0x00000002 
+ 00026183  0x00006e69 istoret  0x00000001 , 0x00000011 
+ 00026184  0x00006e6a byteswap  0x0000003f , 0x0000003f 
+ 00026185  0x00006e6b istore  0x00000002 , 0x00000005 
+ 00026186  0x00006e6d deposit  0x00000011 
+ 00026187  0x00006e6e hstore  0x00000002 , 0x0000809a 
+ 00026188  0x00006e6f setarg  0x00000000 
+ 00026189  0x00006e70 hstore  0x00000002 , 0x0000809e 
+ 00026190  0x00006e71 jam  0x00000001 , 0x00008090 
+ 00026191  0x00006e72 jam  0x00000004 , 0x00008006 
+ 00026192  0x00006e73 call  0x000065b0 
+ 00026193  0x00006e74 copy  0x00000012 , 0x0000003f 
+ 00026194  0x00006e75 istore  0x00000003 , 0x00000011 
+ 00026195  0x00006e78 bpatchx  0x00000095 , 0x00004032 
+ 00026196  0x00006e79 jam  0x00000000 , 0x000001f9 
+ 00026197  0x00006e7b setarg  0x00000001 
+ 00026198  0x00006e7c hstore  0x00000002 , 0x00008098 
+ 00026199  0x00006e7d jam  0x000000a0 , 0x000001f6 
+ 00026200  0x00006e7e setarg  0x000001f6 
+ 00026201  0x00006e7f hstore  0x00000002 , 0x0000809a 
+ 00026202  0x00006e80 setarg  0x00000000 
+ 00026203  0x00006e81 hstore  0x00000002 , 0x0000809e 
+ 00026204  0x00006e82 hstore  0x00000002 , 0x0000809c 
+ 00026205  0x00006e83 setarg  0x00000003 
+ 00026206  0x00006e84 hstore  0x00000001 , 0x00008090 
+ 00026207  0x00006e85 jam  0x00000004 , 0x00008006 
+ 00026208  0x00006e86 call  0x000065b0 
+ 00026209  0x00006e87 hfetch  0x00000001 , 0x0000812c 
+ 00026210  0x00006e88 rtnbit0  0x00000006 
+ 00026211  0x00006e89 nop  0x000005dc 
+ 00026212  0x00006e8a fetch  0x00000001 , 0x000001f9 
+ 00026213  0x00006e8b increase  0x00000001 , 0x0000003f 
+ 00026214  0x00006e8c store  0x00000001 , 0x000001f9 
+ 00026215  0x00006e8d sub  0x0000003f , 0x00000028 , 0x0000003e 
+ 00026216  0x00006e8e nrtn  0x00000002 
+ 00026217  0x00006e8f branch  0x00006655 
+ 00026218  0x00006e94 jam  0x00000070 , 0x00008973 
+ 00026219  0x00006e95 nop  0x00000bb8 
+ 00026220  0x00006e96 rtn 
+ 00026221  0x00006e99 jam  0x00000030 , 0x00008973 
+ 00026222  0x00006e9a rtn 
+ 00026223  0x00006e9d lshift3  0x0000003f , 0x0000003f 
+ 00026224  0x00006e9e hstore  0x00000002 , 0x00008045 
+ 00026225  0x00006e9f jam  0x00000000 , 0x0000804b 
+ 00026226  0x00006ea0 rtn 
+ 00026227  0x00006ea4 call  0x0000666f 
+ 00026228  0x00006ea5 call  0x000066a0 
+ 00026229  0x00006ea7 ifetcht  0x00000001 , 0x00000011 
+ 00026230  0x00006ea8 increase  0x00000001 , 0x00000011 
+ 00026231  0x00006ea9 force  0x00000000 , 0x00000007 
+ 00026232  0x00006eab qisolate0  0x00000002 
+ 00026233  0x00006eac branch  0x00006697 , 0x00000001 
+ 00026234  0x00006ead hfetch  0x00000001 , 0x00008046 
+ 00026235  0x00006eae set1  0x00000006 , 0x0000003f 
+ 00026236  0x00006eaf set1  0x00000007 , 0x0000003f 
+ 00026237  0x00006eb0 hstore  0x00000001 , 0x00008046 
+ 00026238  0x00006eb1 jam  0x00000002 , 0x00008047 
+ 00026239  0x00006eb2 jam  0x00000082 , 0x00008047 
+ 00026240  0x00006eb3 set0  0x00000007 , 0x0000003f 
+ 00026241  0x00006eb4 hstore  0x00000001 , 0x00008046 
+ 00026242  0x00006eb5 jam  0x0000008a , 0x00008047 
+ 00026243  0x00006eb6 nop  0x0000000b 
+ 00026244  0x00006eb7 jam  0x000000ca , 0x00008047 
+ 00026245  0x00006eb8 nop  0x00000021 
+ 00026246  0x00006eb9 jam  0x0000004a , 0x00008047 
+ 00026247  0x00006eba nop  0x0000002c 
+ 00026248  0x00006ebb jam  0x000000ca , 0x00008047 
+ 00026249  0x00006ebc nop  0x00000016 
+ 00026250  0x00006ebd jam  0x0000008a , 0x00008047 
+ 00026251  0x00006ebe nop  0x00000021 
+ 00026252  0x00006ebf jam  0x00000082 , 0x00008047 
+ 00026253  0x00006ec0 nop  0x00000001 
+ 00026254  0x00006ec1 jam  0x00000092 , 0x00008047 
+ 00026255  0x00006ec2 nop  0x0000000a 
+ 00026256  0x00006ec3 jam  0x000000b2 , 0x00008047 
+ 00026257  0x00006ec4 hfetch  0x00000001 , 0x00008007 
+ 00026258  0x00006ec5 jam  0x00000092 , 0x00008047 
+ 00026259  0x00006ec6 nop  0x00000001 
+ 00026260  0x00006ec7 jam  0x00000082 , 0x00008047 
+ 00026261  0x00006ec8 qisolate0  0x0000003f 
+ 00026262  0x00006ec9 branch  0x00006678 , 0x00000001 
+ 00026263  0x00006ecb hfetch  0x00000002 , 0x00008045 
+ 00026264  0x00006ecc increase  0x00000001 , 0x0000003f 
+ 00026265  0x00006ecd hstore  0x00000002 , 0x00008045 
+ 00026266  0x00006ece increase  0x00000001 , 0x00000007 
+ 00026267  0x00006ecf compare  0x00000008 , 0x00000007 , 0x0000000f 
+ 00026268  0x00006ed0 nbranch  0x00006678 , 0x00000001 
+ 00026269  0x00006ed1 loop  0x00006675 
+ 00026270  0x00006ed2 jam  0x00000083 , 0x00008047 
+ 00026271  0x00006ed3 rtn 
+ 00026272  0x00006ed6 jam  0x00000082 , 0x00008047 
+ 00026273  0x00006ed7 nop  0x0000000c 
+ 00026274  0x00006ed8 jam  0x00000080 , 0x00008047 
+ 00026275  0x00006ed9 jam  0x00000082 , 0x00008047 
+ 00026276  0x00006eda nop  0x00000096 
+ 00026277  0x00006edb rtn 
+ 00026278  0x00006edf call  0x000066a0 
+ 00026279  0x00006ee0 jam  0x000000a2 , 0x00008047 
+ 00026280  0x00006ee1 deposit  0x00000011 
+ 00026281  0x00006ee2 hstore  0x00000002 , 0x00008048 
+ 00026282  0x00006ee3 set1  0x0000000b , 0x00000002 
+ 00026283  0x00006ee4 isolate0  0x0000000f , 0x0000003f 
+ 00026284  0x00006ee5 setflag  0x00000001 , 0x0000000f , 0x00000002 
+ 00026285  0x00006ee6 hstoret  0x00000002 , 0x0000804a 
+ 00026286  0x00006ee7 jam  0x00000001 , 0x00008006 
+ 00026287  0x00006ee8 rtn 
+ 00026288  0x00006eeb hfetch  0x00000001 , 0x0000812c 
+ 00026289  0x00006eec bbit0  0x00000001 , 0x000066b0 
+ 00026290  0x00006eed rtn 
+ 00026291  0x00006ef1 call  0x0000666f 
+ 00026292  0x00006ef2 call  0x000066a6 
+ 00026293  0x00006ef3 call  0x000066b0 
+ 00026294  0x00006ef4 jam  0x00000083 , 0x00008047 
+ 00026295  0x00006ef5 rtn 
+ 00026296  0x00006efb hfetch  0x00000002 , 0x00008124 
+ 00026297  0x00006efc hstore  0x00000002 , 0x00008045 
+ 00026298  0x00006efd call  0x000066a6 
+ 00026299  0x00006efe arg  0x00000001 , 0x00000007 
+ 00026300  0x00006eff call  0x000064c0 
+ 00026301  0x00006f00 call  0x000066b0 
+ 00026302  0x00006f01 isolate1  0x00000000 , 0x0000003f 
+ 00026303  0x00006f02 call  0x000064b9 
+ 00026304  0x00006f03 jam  0x00000083 , 0x00008047 
+ 00026305  0x00006f04 rtn 
+ 00026306  0x00006f08 hfetch  0x00000002 , 0x0000805e 
+ 00026307  0x00006f09 iforce  0x0000000a 
+ 00026308  0x00006f0a rtn 
+ 00026309  0x00006f0d deposit  0x0000000a 
+ 00026310  0x00006f0e hstore  0x00000002 , 0x0000805e 
+ 00026311  0x00006f0f rtn 
+ 00026312  0x00006f12 deposit  0x00000003 
+ 00026313  0x00006f13 hstore  0x00000002 , 0x00008058 
+ 00026314  0x00006f14 rtn 
+ 00026315  0x00006f17 hfetch  0x00000002 , 0x00008058 
+ 00026316  0x00006f18 copy  0x0000003f , 0x00000003 
+ 00026317  0x00006f19 rtn 
+ 00026318  0x00006f1c fetch  0x00000002 , 0x00004243 
+ 00026319  0x00006f1d hstore  0x00000002 , 0x00008052 
+ 00026320  0x00006f1e rtn 
+ 00026321  0x00006f21 deposit  0x00000039 
+ 00026322  0x00006f22 rtn  0x00000034 
+ 00026323  0x00006f24 increase  0xfffffff8 , 0x00000039 
+ 00026324  0x00006f25 call  0x000066de , 0x00000002 
+ 00026325  0x00006f26 rtn  0x00000005 
+ 00026326  0x00006f27 branch  0x000066d3 , 0x00000002 
+ 00026327  0x00006f28 increase  0x00000008 , 0x00000039 
+ 00026328  0x00006f2a increase  0xfffffffc , 0x00000039 
+ 00026329  0x00006f2b call  0x000066e1 , 0x00000002 
+ 00026330  0x00006f2c rtn  0x00000005 
+ 00026331  0x00006f2d branch  0x000066d8 , 0x00000002 
+ 00026332  0x00006f2e increase  0x00000004 , 0x00000039 
+ 00026333  0x00006f2f branch  0x000066e4 
+ 00026334  0x00006f32 ifetch  0x00000008 , 0x00000006 
+ 00026335  0x00006f33 istore  0x00000008 , 0x0000000a 
+ 00026336  0x00006f34 rtn 
+ 00026337  0x00006f37 ifetch  0x00000004 , 0x00000006 
+ 00026338  0x00006f38 istore  0x00000004 , 0x0000000a 
+ 00026339  0x00006f39 rtn 
+ 00026340  0x00006f3c deposit  0x00000039 
+ 00026341  0x00006f3d rtn  0x00000034 
+ 00026342  0x00006f3f ifetch  0x00000001 , 0x00000006 
+ 00026343  0x00006f40 istore  0x00000001 , 0x0000000a 
+ 00026344  0x00006f41 loop  0x000066e6 
+ 00026345  0x00006f42 rtn 
+ 00026346  0x00006f45 deposit  0x00000039 
+ 00026347  0x00006f46 rtn  0x00000034 
+ 00026348  0x00006f48 increase  0xfffffff8 , 0x00000039 
+ 00026349  0x00006f49 call  0x000066f7 , 0x00000002 
+ 00026350  0x00006f4a rtn  0x00000005 
+ 00026351  0x00006f4b branch  0x000066ec , 0x00000002 
+ 00026352  0x00006f4c increase  0x00000008 , 0x00000039 
+ 00026353  0x00006f4e increase  0xfffffffc , 0x00000039 
+ 00026354  0x00006f4f call  0x000066fa , 0x00000002 
+ 00026355  0x00006f50 rtn  0x00000005 
+ 00026356  0x00006f51 branch  0x000066f1 , 0x00000002 
+ 00026357  0x00006f52 increase  0x00000004 , 0x00000039 
+ 00026358  0x00006f53 branch  0x000066fd 
+ 00026359  0x00006f56 ifetch  0x00000008 , 0x00000003 
+ 00026360  0x00006f57 istore  0x00000008 , 0x00000005 
+ 00026361  0x00006f58 rtn 
+ 00026362  0x00006f5b ifetch  0x00000004 , 0x00000003 
+ 00026363  0x00006f5c istore  0x00000004 , 0x00000005 
+ 00026364  0x00006f5d rtn 
+ 00026365  0x00006f61 deposit  0x00000039 
+ 00026366  0x00006f62 rtn  0x00000034 
+ 00026367  0x00006f64 ifetch  0x00000001 , 0x00000003 
+ 00026368  0x00006f65 istore  0x00000001 , 0x00000005 
+ 00026369  0x00006f66 loop  0x000066ff 
+ 00026370  0x00006f67 rtn 
+ 00026371  0x00006f6b deposit  0x00000039 
+ 00026372  0x00006f6c rtn  0x00000034 
+ 00026373  0x00006f6e ifetch  0x00000001 , 0x00000003 
+ 00026374  0x00006f6f istore  0x00000001 , 0x0000000a 
+ 00026375  0x00006f70 loop  0x00006705 
+ 00026376  0x00006f71 rtn 
+ 00026377  0x00006f77 jam  0x0000003d , 0x00000a99 
+ 00026378  0x00006f78 branch  0x00007d86 
+ 00026379  0x00006f7c bpatchx  0x00000096 , 0x00004032 
+ 00026380  0x00006f7d fetch  0x00000001 , 0x00004217 
+ 00026381  0x00006f7e rtn  0x00000034 
+ 00026382  0x00006f7f call  0x000067a3 
+ 00026383  0x00006f80 call  0x000067a9 , 0x00000005 
+ 00026384  0x00006f81 call  0x0000673e 
+ 00026385  0x00006f83 fetch  0x00000001 , 0x00004217 
+ 00026386  0x00006f84 icopy  0x00000013 
+ 00026387  0x00006f85 fetcht  0x00000002 , 0x00004215 
+ 00026388  0x00006f86 storet  0x00000002 , 0x0000018c 
+ 00026389  0x00006f88 copy  0x00000013 , 0x0000003f 
+ 00026390  0x00006f89 branch  0x00006709 , 0x00000034 
+ 00026391  0x00006f8a increase  0xffffffff , 0x00000013 
+ 00026392  0x00006f8b copy  0x00000002 , 0x00000011 
+ 00026393  0x00006f8c ifetch  0x00000001 , 0x00000011 
+ 00026394  0x00006f8d fetcht  0x00000001 , 0x00000184 
+ 00026395  0x00006f8e isub  0x00000002 , 0x0000003e 
+ 00026396  0x00006f8f call  0x00006725 , 0x00000005 
+ 00026397  0x00006f90 branch  0x00006721 , 0x00000002 
+ 00026398  0x00006f91 ifetch  0x00000001 , 0x00000011 
+ 00026399  0x00006f92 increase  0x00000001 , 0x0000003f 
+ 00026400  0x00006f93 istore  0x00000001 , 0x00000011 
+ 00026401  0x00006f95 fetcht  0x00000002 , 0x0000018c 
+ 00026402  0x00006f96 increase  0x00000022 , 0x00000002 
+ 00026403  0x00006f97 storet  0x00000002 , 0x0000018c 
+ 00026404  0x00006f98 branch  0x00006715 
+ 00026405  0x00006f9b setarg  0x00000000 
+ 00026406  0x00006f9c istore  0x00000001 , 0x00000011 
+ 00026407  0x00006f9d fetch  0x00000001 , 0x00000185 
+ 00026408  0x00006f9e istore  0x00000001 , 0x00000005 
+ 00026409  0x00006f9f bne  0x00000033 , 0x00006733 
+ 00026410  0x00006fa0 arg  0x000041be , 0x00000012 
+ 00026411  0x00006fa2 ifetch  0x00000006 , 0x00000006 
+ 00026412  0x00006fa3 istore  0x00000008 , 0x00000005 
+ 00026413  0x00006fa4 setarg  0x00000000 
+ 00026414  0x00006fa5 istore  0x00000008 , 0x00000005 
+ 00026415  0x00006fa6 copy  0x00000012 , 0x00000006 
+ 00026416  0x00006fa8 call  0x00007ebf 
+ 00026417  0x00006fa9 force  0x00000001 , 0x0000003e 
+ 00026418  0x00006faa rtn 
+ 00026419  0x00006fad beq  0x00000036 , 0x00006737 
+ 00026420  0x00006fae beq  0x00000037 , 0x0000673b 
+ 00026421  0x00006faf arg  0x00004419 , 0x00000012 
+ 00026422  0x00006fb0 branch  0x0000672b 
+ 00026423  0x00006fb3 arg  0x000044d5 , 0x00000006 
+ 00026424  0x00006fb4 call  0x00007ebf 
+ 00026425  0x00006fb6 arg  0x00004419 , 0x00000006 
+ 00026426  0x00006fb7 branch  0x00006730 
+ 00026427  0x00006fba arg  0x000044cd , 0x00000006 
+ 00026428  0x00006fbb call  0x00007ebf 
+ 00026429  0x00006fbc branch  0x00006739 
+ 00026430  0x00006fc0 call  0x00007fe9 
+ 00026431  0x00006fc1 fetch  0x00000001 , 0x00004217 
+ 00026432  0x00006fc2 rtn  0x00000034 
+ 00026433  0x00006fc3 fetch  0x00000002 , 0x00004682 
+ 00026434  0x00006fc4 bbit1  0x00000000 , 0x00006754 
+ 00026435  0x00006fc6 bpatchx  0x00000097 , 0x00004032 
+ 00026436  0x00006fc7 fetch  0x00000001 , 0x0000448e 
+ 00026437  0x00006fc8 beq  0x00000000 , 0x0000674d 
+ 00026438  0x00006fc9 fetch  0x00000001 , 0x00000454 
+ 00026439  0x00006fca compare  0x000000c0 , 0x0000003f , 0x000000c0 
+ 00026440  0x00006fcb branch  0x0000674d , 0x00000001 
+ 00026441  0x00006fcc compare  0x00000040 , 0x0000003f , 0x000000c0 
+ 00026442  0x00006fcd branch  0x00006752 , 0x00000001 
+ 00026443  0x00006fce compare  0x00000000 , 0x0000003f , 0x000000c0 
+ 00026444  0x00006fcf branch  0x00006750 , 0x00000001 
+ 00026445  0x00006fd1 jam  0x00000035 , 0x00000185 
+ 00026446  0x00006fd2 fetch  0x00000006 , 0x0000044f 
+ 00026447  0x00006fd3 branch  0x00006757 
+ 00026448  0x00006fd6 jam  0x00000037 , 0x00000185 
+ 00026449  0x00006fd7 branch  0x00006757 
+ 00026450  0x00006fdb jam  0x00000036 , 0x00000185 
+ 00026451  0x00006fdc branch  0x00006757 
+ 00026452  0x00006fe0 bpatchx  0x00000098 , 0x00004033 
+ 00026453  0x00006fe1 jam  0x00000033 , 0x00000185 
+ 00026454  0x00006fe2 fetch  0x00000006 , 0x00000040 
+ 00026455  0x00006fe4 store  0x00000006 , 0x00000186 
+ 00026456  0x00006fe5 fetch  0x00000002 , 0x00004215 
+ 00026457  0x00006fe6 ifetcht  0x00000001 , 0x0000003f 
+ 00026458  0x00006fe7 pincrease  0x00000001 
+ 00026459  0x00006fe8 store  0x00000002 , 0x0000018c 
+ 00026460  0x00006fe9 storet  0x00000001 , 0x00000184 
+ 00026461  0x00006fea fetch  0x00000001 , 0x00004217 
+ 00026462  0x00006feb icopy  0x00000013 
+ 00026463  0x00006fed fetch  0x00000002 , 0x0000018c 
+ 00026464  0x00006fee copy  0x0000003f , 0x00000011 
+ 00026465  0x00006fef call  0x0000676f 
+ 00026466  0x00006ff0 rtn  0x00000028 
+ 00026467  0x00006ff1 fetcht  0x00000002 , 0x0000018c 
+ 00026468  0x00006ff2 increase  0x00000022 , 0x00000002 
+ 00026469  0x00006ff3 storet  0x00000002 , 0x0000018c 
+ 00026470  0x00006ff4 increase  0xffffffff , 0x00000002 
+ 00026471  0x00006ff5 ifetch  0x00000001 , 0x00000002 
+ 00026472  0x00006ff6 store  0x00000001 , 0x00000184 
+ 00026473  0x00006ff7 increase  0xffffffff , 0x00000013 
+ 00026474  0x00006ff8 nbranch  0x0000675f , 0x00000005 
+ 00026475  0x00006ff9 fetch  0x00000001 , 0x00004217 
+ 00026476  0x00006ffa pincrease  0xffffffff 
+ 00026477  0x00006ffb store  0x00000001 , 0x00000184 
+ 00026478  0x00006ffc rtn 
+ 00026479  0x00006ffe fetch  0x00000001 , 0x00000185 
+ 00026480  0x00006fff bne  0x00000033 , 0x00006776 
+ 00026481  0x00007001 arg  0x00000185 , 0x00000012 
+ 00026482  0x00007002 arg  0x00000007 , 0x00000039 
+ 00026483  0x00007003 call  0x00007f88 
+ 00026484  0x00007004 branch  0x00007fe7 , 0x00000005 
+ 00026485  0x00007005 rtn 
+ 00026486  0x00007008 beq  0x00000036 , 0x00006779 
+ 00026487  0x00007009 beq  0x00000037 , 0x00006794 
+ 00026488  0x0000700a branch  0x00006771 
+ 00026489  0x0000700d ifetcht  0x00000001 , 0x00000011 
+ 00026490  0x0000700e isub  0x00000002 , 0x0000003e 
+ 00026491  0x0000700f nrtn  0x00000005 
+ 00026492  0x00007010 arg  0x00000ac2 , 0x00000005 
+ 00026493  0x00007011 arg  0x00000010 , 0x00000039 
+ 00026494  0x00007012 call  0x00007ed4 
+ 00026495  0x00007013 fetch  0x00000003 , 0x00000452 
+ 00026496  0x00007014 store  0x00000003 , 0x00000ac2 
+ 00026497  0x00007015 call  0x0000678b 
+ 00026498  0x00007016 fetch  0x00000002 , 0x00000adf 
+ 00026499  0x00007017 byteswap  0x0000003f , 0x0000003f 
+ 00026500  0x00007018 lshift8  0x0000003f , 0x00000002 
+ 00026501  0x00007019 ifetch  0x00000001 , 0x00000006 
+ 00026502  0x0000701a iadd  0x00000002 , 0x0000003f 
+ 00026503  0x0000701b fetcht  0x00000003 , 0x0000044f 
+ 00026504  0x0000701c isub  0x00000002 , 0x0000003e 
+ 00026505  0x0000701d branch  0x00007fe7 , 0x00000005 
+ 00026506  0x0000701e rtn 
+ 00026507  0x00007022 arg  0x00000ac2 , 0x00000006 
+ 00026508  0x00007023 call  0x00007486 
+ 00026509  0x00007025 ifetch  0x00000001 , 0x00000011 
+ 00026510  0x00007026 call  0x00007487 
+ 00026511  0x00007027 force  0x00000038 , 0x00000036 
+ 00026512  0x00007028 force  0x00000000 , 0x00000036 
+ 00026513  0x00007029 call  0x0000741d 
+ 00026514  0x0000702a arg  0x00000ad2 , 0x00000005 
+ 00026515  0x0000702b branch  0x00007497 
+ 00026516  0x0000702e ifetcht  0x00000001 , 0x00000011 
+ 00026517  0x0000702f isub  0x00000002 , 0x0000003e 
+ 00026518  0x00007030 nrtn  0x00000005 
+ 00026519  0x00007031 copy  0x00000006 , 0x00000011 
+ 00026520  0x00007032 add  0x00000006 , 0x00000008 , 0x00000013 
+ 00026521  0x00007033 arg  0x000044cd , 0x00000012 
+ 00026522  0x00007034 arg  0x00000008 , 0x00000039 
+ 00026523  0x00007035 call  0x00007f88 
+ 00026524  0x00007036 branch  0x00007fe7 , 0x00000005 
+ 00026525  0x00007037 copy  0x00000013 , 0x00000011 
+ 00026526  0x00007038 arg  0x000044d5 , 0x00000012 
+ 00026527  0x00007039 arg  0x00000008 , 0x00000039 
+ 00026528  0x0000703a call  0x00007f88 
+ 00026529  0x0000703b branch  0x00007fe7 , 0x00000005 
+ 00026530  0x0000703c rtn 
+ 00026531  0x0000703f fetch  0x00000002 , 0x00004215 
+ 00026532  0x00007040 ifetcht  0x00000001 , 0x0000003f 
+ 00026533  0x00007041 pincrease  0x00000022 
+ 00026534  0x00007042 ifetch  0x00000001 , 0x0000003f 
+ 00026535  0x00007043 isub  0x00000002 , 0x0000003e 
+ 00026536  0x00007044 rtn 
+ 00026537  0x00007047 fetch  0x00000001 , 0x00004217 
+ 00026538  0x00007048 icopy  0x00000039 
+ 00026539  0x00007049 fetcht  0x00000002 , 0x00004215 
+ 00026540  0x0000704a setarg  0x00000000 
+ 00026541  0x0000704c istore  0x00000001 , 0x00000002 
+ 00026542  0x0000704d increase  0x00000022 , 0x00000002 
+ 00026543  0x0000704e pincrease  0x00000001 
+ 00026544  0x0000704f loop  0x000067ad 
+ 00026545  0x00007050 rtn 
+ 00026546  0x00007053 bpatchx  0x00000099 , 0x00004033 
+ 00026547  0x00007054 call  0x0000673e 
+ 00026548  0x00007055 fetch  0x00000001 , 0x00000030 
+ 00026549  0x00007056 setflag  0x00000028 , 0x00000006 , 0x0000003f 
+ 00026550  0x00007057 store  0x00000001 , 0x00000030 
+ 00026551  0x00007058 nbranch  0x000067bc , 0x00000028 
+ 00026552  0x00007059 add  0x00000011 , 0x0000000a , 0x00000006 
+ 00026553  0x0000705b arg  0x000041be , 0x00000005 
+ 00026554  0x0000705c call  0x00007ebf 
+ 00026555  0x0000705d branch  0x000067d7 
+ 00026556  0x0000705f jam  0x00000000 , 0x000041bd 
+ 00026557  0x00007060 rtn 
+ 00026558  0x00007063 fetch  0x00000009 , 0x000044cb 
+ 00026559  0x00007064 branch  0x000067ca , 0x00000034 
+ 00026560  0x00007065 call  0x0000673e 
+ 00026561  0x00007066 nbranch  0x000067ca , 0x00000028 
+ 00026562  0x00007067 fetch  0x00000002 , 0x0000018c 
+ 00026563  0x00007068 add  0x0000003f , 0x00000001 , 0x00000006 
+ 00026564  0x00007069 arg  0x000044d5 , 0x00000005 
+ 00026565  0x0000706a call  0x00007ebf 
+ 00026566  0x0000706b arg  0x00004419 , 0x00000005 
+ 00026567  0x0000706c call  0x00007ebf 
+ 00026568  0x0000706d jam  0x00000001 , 0x00004429 
+ 00026569  0x0000706e rtn 
+ 00026570  0x00007071 jam  0x00000000 , 0x00004429 
+ 00026571  0x00007072 rtn 
+ 00026572  0x00007076 fetch  0x00000006 , 0x0000044f 
+ 00026573  0x00007077 store  0x00000006 , 0x00000186 
+ 00026574  0x00007078 jam  0x00000034 , 0x00000185 
+ 00026575  0x00007079 branch  0x000067d3 
+ 00026576  0x0000707b fetch  0x00000006 , 0x00000040 
+ 00026577  0x0000707c store  0x00000006 , 0x00000186 
+ 00026578  0x0000707d jam  0x00000033 , 0x00000185 
+ 00026579  0x0000707f fetch  0x00000001 , 0x00004092 
+ 00026580  0x00007080 beq  0x0000000a , 0x0000670b 
+ 00026581  0x00007081 bbit1  0x00000006 , 0x000042da 
+ 00026582  0x00007082 rtn 
+ 00026583  0x00007086 fetch  0x00000008 , 0x000041be 
+ 00026584  0x00007087 fetcht  0x00000008 , 0x000041c6 
+ 00026585  0x00007088 ior  0x00000002 , 0x0000003f 
+ 00026586  0x00007089 rtn  0x00000034 
+ 00026587  0x0000708a jam  0x00000001 , 0x000041bd 
+ 00026588  0x0000708b rtn 
+ 00026589  0x00007093 bpatchx  0x0000009a , 0x00004033 
+ 00026590  0x00007094 set1  0x00000007 , 0x00000002 
+ 00026591  0x00007095 call  0x0000681d 
+ 00026592  0x00007096 nsetflag  0x00000001 , 0x00000007 , 0x00000002 
+ 00026593  0x0000709c bpatchx  0x0000009b , 0x00004033 
+ 00026594  0x0000709d sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026595  0x0000709e rtn  0x00000005 
+ 00026596  0x0000709f isolate0  0x00000007 , 0x00000002 
+ 00026597  0x000070a0 and  0x00000002 , 0x0000001f , 0x00000007 
+ 00026598  0x000070a1 fetch  0x00000004 , 0x000000a1 
+ 00026599  0x000070a2 qsetflag  0x00000001 , 0x0000003f 
+ 00026600  0x000070a3 store  0x00000004 , 0x000000a1 
+ 00026601  0x000070a4 fetch  0x00000004 , 0x000000a5 
+ 00026602  0x000070a5 nqsetflag  0x00000001 , 0x0000003f 
+ 00026603  0x000070a6 store  0x00000004 , 0x000000a5 
+ 00026604  0x000070a7 rtn 
+ 00026605  0x000070ab bpatchx  0x0000009c , 0x00004033 
+ 00026606  0x000070ac sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026607  0x000070ad rtn  0x00000005 
+ 00026608  0x000070ae isolate0  0x00000007 , 0x00000002 
+ 00026609  0x000070af and  0x00000002 , 0x0000001f , 0x00000007 
+ 00026610  0x000070b0 fetch  0x00000004 , 0x000000a1 
+ 00026611  0x000070b1 qset0  0x0000003f 
+ 00026612  0x000070b2 store  0x00000004 , 0x000000a1 
+ 00026613  0x000070b3 fetch  0x00000004 , 0x000000a5 
+ 00026614  0x000070b4 qset0  0x0000003f 
+ 00026615  0x000070b5 store  0x00000004 , 0x000000a5 
+ 00026616  0x000070b6 rtn 
+ 00026617  0x000070ba call  0x000067ed 
+ 00026618  0x000070bb branch  0x000067fe 
+ 00026619  0x000070bf sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026620  0x000070c0 rtn  0x00000005 
+ 00026621  0x000070c1 ncall  0x000067e1 , 0x0000002b 
+ 00026622  0x000070c4 arg  0x0000807c , 0x00000005 
+ 00026623  0x000070c5 call  0x00006830 
+ 00026624  0x000070c6 setflip  0x00000007 , 0x00000002 
+ 00026625  0x000070c7 arg  0x00008078 , 0x00000005 
+ 00026626  0x000070c8 call  0x00006830 
+ 00026627  0x000070c9 set0  0x00000007 , 0x00000002 
+ 00026628  0x000070ca arg  0x00008070 , 0x00000005 
+ 00026629  0x000070cb branch  0x00006830 
+ 00026630  0x000070cf arg  0x0000807c , 0x00000005 
+ 00026631  0x000070d0 call  0x00006830 
+ 00026632  0x000070d1 set0  0x00000007 , 0x00000002 
+ 00026633  0x000070d2 arg  0x00008078 , 0x00000005 
+ 00026634  0x000070d3 call  0x00006830 
+ 00026635  0x000070d4 set0  0x00000007 , 0x00000002 
+ 00026636  0x000070d5 arg  0x00008070 , 0x00000005 
+ 00026637  0x000070d6 branch  0x00006830 
+ 00026638  0x000070db sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026639  0x000070dc rtn  0x00000005 
+ 00026640  0x000070dd setflip  0x00000007 , 0x00000002 
+ 00026641  0x000070de call  0x0000682f 
+ 00026642  0x000070e0 set1  0x00000007 , 0x00000002 
+ 00026643  0x000070e1 arg  0x00008070 , 0x00000005 
+ 00026644  0x000070e2 branch  0x00006830 
+ 00026645  0x000070e5 and  0x00000002 , 0x00000007 , 0x00000007 
+ 00026646  0x000070e6 rshift3  0x00000002 , 0x0000003f 
+ 00026647  0x000070e7 and_into  0x00000003 , 0x0000003f 
+ 00026648  0x000070e8 iadd  0x00000005 , 0x00000005 
+ 00026649  0x000070e9 ifetch  0x00000001 , 0x00000005 
+ 00026650  0x000070ea rtn 
+ 00026651  0x000070ed arg  0x00008074 , 0x00000005 
+ 00026652  0x000070ee branch  0x0000681e 
+ 00026653  0x000070f3 arg  0x0000811c , 0x00000005 
+ 00026654  0x000070f5 call  0x00006815 
+ 00026655  0x000070f6 isolate1  0x00000007 , 0x00000002 
+ 00026656  0x000070f7 branch  0x00006823 , 0x00000001 
+ 00026657  0x000070f8 qisolate0  0x0000003f 
+ 00026658  0x000070f9 rtn 
+ 00026659  0x000070fb qisolate1  0x0000003f 
+ 00026660  0x000070fc rtn 
+ 00026661  0x000070ff sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026662  0x00007100 rtn  0x00000005 
+ 00026663  0x00007101 isolate1  0x00000007 , 0x0000003e 
+ 00026664  0x00007102 branch  0x0000682c 
+ 00026665  0x00007105 sub  0x00000002 , 0x000000ff , 0x0000003e 
+ 00026666  0x00007106 rtn  0x00000005 
+ 00026667  0x00007107 isolate0  0x00000007 , 0x0000003e 
+ 00026668  0x0000710b setarg  0x00000000 
+ 00026669  0x0000710c nsetflag  0x00000001 , 0x00000007 , 0x0000003f 
+ 00026670  0x0000710d ixor  0x00000002 , 0x00000002 
+ 00026671  0x00007111 arg  0x00008074 , 0x00000005 
+ 00026672  0x00007115 call  0x00006815 
+ 00026673  0x00007116 isolate1  0x00000007 , 0x00000002 
+ 00026674  0x00007117 qsetflag  0x00000001 , 0x0000003f 
+ 00026675  0x00007118 istore  0x00000001 , 0x00000005 
+ 00026676  0x00007119 rtn 
+ 00026677  0x0000711c arg  0xffffffff , 0x00000011 
+ 00026678  0x0000711d hfetch  0x00000001 , 0x00008081 
+ 00026679  0x0000711e compare  0x00000002 , 0x0000003f , 0x00000003 
+ 00026680  0x0000711f call  0x00006878 , 0x00000001 
+ 00026681  0x00007121 compare  0x00000001 , 0x0000003f , 0x00000003 
+ 00026682  0x00007122 call  0x0000687a , 0x00000001 
+ 00026683  0x00007124 compare  0x00000003 , 0x0000003f , 0x00000003 
+ 00026684  0x00007125 call  0x0000687a , 0x00000001 
+ 00026685  0x00007127 isolate1  0x00000002 , 0x0000003f 
+ 00026686  0x00007128 call  0x00006874 , 0x00000001 
+ 00026687  0x0000712a isolate1  0x00000003 , 0x0000003f 
+ 00026688  0x0000712b call  0x00006876 , 0x00000001 
+ 00026689  0x0000712d isolate1  0x00000004 , 0x0000003f 
+ 00026690  0x0000712e call  0x0000687c , 0x00000001 
+ 00026691  0x00007130 isolate1  0x00000006 , 0x0000003f 
+ 00026692  0x00007131 nsetflag  0x00000001 , 0x00000004 , 0x00000011 
+ 00026693  0x00007133 isolate1  0x00000007 , 0x0000003f 
+ 00026694  0x00007134 nsetflag  0x00000001 , 0x00000005 , 0x00000011 
+ 00026695  0x00007136 hfetch  0x00000001 , 0x00008082 
+ 00026696  0x00007137 isolate1  0x00000000 , 0x0000003f 
+ 00026697  0x00007138 nsetflag  0x00000001 , 0x0000001b , 0x00000011 
+ 00026698  0x00007139 isolate1  0x00000001 , 0x0000003f 
+ 00026699  0x0000713a nsetflag  0x00000001 , 0x0000001c , 0x00000011 
+ 00026700  0x0000713b isolate1  0x00000002 , 0x0000003f 
+ 00026701  0x0000713c nsetflag  0x00000001 , 0x00000003 , 0x00000011 
+ 00026702  0x0000713d isolate1  0x00000003 , 0x0000003f 
+ 00026703  0x0000713e nsetflag  0x00000001 , 0x00000008 , 0x00000011 
+ 00026704  0x0000713f isolate1  0x00000004 , 0x0000003f 
+ 00026705  0x00007140 nsetflag  0x00000001 , 0x00000014 , 0x00000011 
+ 00026706  0x00007141 isolate1  0x00000005 , 0x0000003f 
+ 00026707  0x00007142 nsetflag  0x00000001 , 0x00000015 , 0x00000011 
+ 00026708  0x00007143 isolate1  0x00000006 , 0x0000003f 
+ 00026709  0x00007144 nsetflag  0x00000001 , 0x00000016 , 0x00000011 
+ 00026710  0x00007145 isolate1  0x00000007 , 0x0000003f 
+ 00026711  0x00007146 nsetflag  0x00000001 , 0x00000017 , 0x00000011 
+ 00026712  0x00007148 hfetch  0x00000001 , 0x00008080 
+ 00026713  0x00007149 isolate1  0x00000000 , 0x0000003f 
+ 00026714  0x0000714a nsetflag  0x00000001 , 0x00000005 , 0x00000011 
+ 00026715  0x0000714b isolate1  0x00000001 , 0x0000003f 
+ 00026716  0x0000714c nsetflag  0x00000001 , 0x00000006 , 0x00000011 
+ 00026717  0x0000714d isolate1  0x00000002 , 0x0000003f 
+ 00026718  0x0000714e nsetflag  0x00000001 , 0x00000007 , 0x00000011 
+ 00026719  0x0000714f isolate1  0x00000003 , 0x0000003f 
+ 00026720  0x00007150 nsetflag  0x00000001 , 0x00000012 , 0x00000011 
+ 00026721  0x00007151 isolate1  0x00000004 , 0x0000003f 
+ 00026722  0x00007152 nsetflag  0x00000001 , 0x00000013 , 0x00000011 
+ 00026723  0x00007153 isolate1  0x00000005 , 0x0000003f 
+ 00026724  0x00007154 nsetflag  0x00000001 , 0x00000014 , 0x00000011 
+ 00026725  0x00007155 isolate1  0x00000006 , 0x0000003f 
+ 00026726  0x00007156 nsetflag  0x00000001 , 0x00000015 , 0x00000011 
+ 00026727  0x00007157 isolate1  0x00000007 , 0x0000003f 
+ 00026728  0x00007158 nsetflag  0x00000001 , 0x00000016 , 0x00000011 
+ 00026729  0x0000715a hfetch  0x00000001 , 0x00008062 
+ 00026730  0x0000715b isolate1  0x00000004 , 0x0000003f 
+ 00026731  0x0000715c call  0x0000687e , 0x00000001 
+ 00026732  0x0000715d bpatchx  0x0000009d , 0x00004033 
+ 00026733  0x0000715f hfetch  0x00000004 , 0x00008078 
+ 00026734  0x00007160 hfetcht  0x00000004 , 0x0000807c 
+ 00026735  0x00007161 ior  0x00000002 , 0x0000003f 
+ 00026736  0x00007162 invert  0x0000003f , 0x0000003f 
+ 00026737  0x00007163 iand  0x00000011 , 0x0000003f 
+ 00026738  0x00007165 hstore  0x00000004 , 0x00008070 
+ 00026739  0x00007166 rtn 
+ 00026740  0x0000716a arg  0x00000006 , 0x00000007 
+ 00026741  0x0000716b branch  0x00006884 
+ 00026742  0x0000716d arg  0x00000009 , 0x00000007 
+ 00026743  0x0000716e branch  0x00006882 
+ 00026744  0x00007170 arg  0x00000017 , 0x00000007 
+ 00026745  0x00007171 branch  0x00006882 
+ 00026746  0x00007173 arg  0x00000019 , 0x00000007 
+ 00026747  0x00007174 branch  0x00006884 
+ 00026748  0x00007176 arg  0x0000001e , 0x00000007 
+ 00026749  0x00007177 branch  0x00006884 
+ 00026750  0x00007179 arg  0x00000002 , 0x00000007 
+ 00026751  0x0000717a branch  0x00006884 
+ 00026752  0x0000717c arg  0x00000001 , 0x00000039 
+ 00026753  0x0000717d branch  0x00006885 
+ 00026754  0x0000717f arg  0x00000004 , 0x00000039 
+ 00026755  0x00007180 branch  0x00006885 
+ 00026756  0x00007182 arg  0x00000002 , 0x00000039 
+ 00026757  0x00007184 qset0  0x00000011 
+ 00026758  0x00007185 increase  0x00000001 , 0x00000007 
+ 00026759  0x00007186 loop  0x00006885 
+ 00026760  0x00007187 rtn 
+ 00026761  0x00007190 call  0x00006895 
+ 00026762  0x00007191 arg  0x00000006 , 0x00000002 
+ 00026763  0x00007192 branch  0x0000680e 
+ 00026764  0x00007195 call  0x00006889 
+ 00026765  0x00007196 arg  0x00000006 , 0x00000002 
+ 00026766  0x00007197 branch  0x00006825 
+ 00026767  0x0000719c call  0x00006895 
+ 00026768  0x0000719d hfetch  0x00000001 , 0x00008078 
+ 00026769  0x0000719e set1  0x00000007 , 0x0000003f 
+ 00026770  0x0000719f hstore  0x00000001 , 0x00008078 
+ 00026771  0x000071a0 arg  0x00000007 , 0x00000002 
+ 00026772  0x000071a1 branch  0x000067fb 
+ 00026773  0x000071a4 hfetch  0x00000001 , 0x00008081 
+ 00026774  0x000071a5 and_into  0x000000fb , 0x0000003f 
+ 00026775  0x000071a6 hstore  0x00000001 , 0x00008081 
+ 00026776  0x000071a7 rtn 
+ 00026777  0x000071aa hfetch  0x00000001 , 0x00008081 
+ 00026778  0x000071ab isolate1  0x00000002 , 0x0000003f 
+ 00026779  0x000071ac rtn 
+ 00026780  0x000071af call  0x0000666a 
+ 00026781  0x000071b0 setarg  0x000007e0 
+ 00026782  0x000071b1 arg  0x00004150 , 0x00000011 
+ 00026783  0x000071b2 arg  0x00000002 , 0x00000002 
+ 00026784  0x000071b3 call  0x000066b3 
+ 00026785  0x000071b4 branch  0x0000666d 
+ 00026786  0x000071b8 call  0x0000666a 
+ 00026787  0x000071b9 setarg  0x000007e2 
+ 00026788  0x000071ba arg  0x0000421d , 0x00000011 
+ 00026789  0x000071bb arg  0x0000000e , 0x00000002 
+ 00026790  0x000071bc call  0x000066b3 
+ 00026791  0x000071bd branch  0x0000666d 
+ 00026792  0x000071c2 bpatchx  0x0000009e , 0x00004033 
+ 00026793  0x000071c4 call  0x000068a2 
+ 00026794  0x000071c6 fetch  0x00000001 , 0x0000422d 
+ 00026795  0x000071c7 beq  0x00000000 , 0x000068af 
+ 00026796  0x000071c8 beq  0x00000001 , 0x000068c3 
+ 00026797  0x000071c9 beq  0x00000002 , 0x000068d7 
+ 00026798  0x000071ca rtn 
+ 00026799  0x000071cd fetcht  0x00000002 , 0x00004229 
+ 00026800  0x000071ce setarg  0x0000aa55 
+ 00026801  0x000071cf isub  0x00000002 , 0x0000003e 
+ 00026802  0x000071d0 branch  0x000068b8 , 0x00000005 
+ 00026803  0x000071d1 setarg  0x00004dfa 
+ 00026804  0x000071d2 store  0x00000002 , 0x00004227 
+ 00026805  0x000071d3 setarg  0x00004894 
+ 00026806  0x000071d4 store  0x00000002 , 0x00004221 
+ 00026807  0x000071d5 branch  0x000068c0 
+ 00026808  0x000071d8 fetch  0x00000002 , 0x00004227 
+ 00026809  0x000071d9 nbranch  0x000068bc , 0x00000034 
+ 00026810  0x000071da setarg  0x00004dfa 
+ 00026811  0x000071db store  0x00000002 , 0x00004227 
+ 00026812  0x000071dd fetch  0x00000002 , 0x00004221 
+ 00026813  0x000071de nbranch  0x000068c0 , 0x00000034 
+ 00026814  0x000071df setarg  0x00004894 
+ 00026815  0x000071e0 store  0x00000002 , 0x00004221 
+ 00026816  0x000071e2 setarg  0x00000064 
+ 00026817  0x000071e3 store  0x00000002 , 0x0000422b 
+ 00026818  0x000071e4 rtn 
+ 00026819  0x000071e7 fetcht  0x00000002 , 0x00004229 
+ 00026820  0x000071e8 setarg  0x0000aa55 
+ 00026821  0x000071e9 isub  0x00000002 , 0x0000003e 
+ 00026822  0x000071ea branch  0x000068cc , 0x00000005 
+ 00026823  0x000071eb setarg  0x00005932 
+ 00026824  0x000071ec store  0x00000002 , 0x00004225 
+ 00026825  0x000071ed setarg  0x00004323 
+ 00026826  0x000071ee store  0x00000002 , 0x0000421f 
+ 00026827  0x000071ef branch  0x000068d4 
+ 00026828  0x000071f2 fetch  0x00000002 , 0x00004225 
+ 00026829  0x000071f3 nbranch  0x000068d0 , 0x00000034 
+ 00026830  0x000071f4 setarg  0x00005932 
+ 00026831  0x000071f5 store  0x00000002 , 0x00004225 
+ 00026832  0x000071f7 fetch  0x00000002 , 0x0000421f 
+ 00026833  0x000071f8 nbranch  0x000068d4 , 0x00000034 
+ 00026834  0x000071f9 setarg  0x00004323 
+ 00026835  0x000071fa store  0x00000002 , 0x0000421f 
+ 00026836  0x000071fc setarg  0x00000190 
+ 00026837  0x000071fd store  0x00000002 , 0x0000422b 
+ 00026838  0x000071fe rtn 
+ 00026839  0x00007201 fetcht  0x00000002 , 0x00004229 
+ 00026840  0x00007202 setarg  0x0000aa55 
+ 00026841  0x00007203 isub  0x00000002 , 0x0000003e 
+ 00026842  0x00007204 branch  0x000068e0 , 0x00000005 
+ 00026843  0x00007205 setarg  0x00006946 
+ 00026844  0x00007206 store  0x00000002 , 0x00004223 
+ 00026845  0x00007207 setarg  0x00005377 
+ 00026846  0x00007208 store  0x00000002 , 0x0000421d 
+ 00026847  0x00007209 branch  0x000068e8 
+ 00026848  0x0000720c fetch  0x00000002 , 0x00004223 
+ 00026849  0x0000720d nbranch  0x000068e4 , 0x00000034 
+ 00026850  0x0000720e setarg  0x00006946 
+ 00026851  0x0000720f store  0x00000002 , 0x00004223 
+ 00026852  0x00007211 fetch  0x00000002 , 0x0000421d 
+ 00026853  0x00007212 nbranch  0x000068e8 , 0x00000034 
+ 00026854  0x00007213 setarg  0x00005377 
+ 00026855  0x00007214 store  0x00000002 , 0x0000421d 
+ 00026856  0x00007216 setarg  0x00000032 
+ 00026857  0x00007217 store  0x00000002 , 0x0000422b 
+ 00026858  0x00007218 rtn 
+ 00026859  0x0000721c fetch  0x00000001 , 0x0000422d 
+ 00026860  0x0000721d beq  0x00000000 , 0x000068f0 
+ 00026861  0x0000721e beq  0x00000001 , 0x000068f2 
+ 00026862  0x0000721f beq  0x00000002 , 0x000068f4 
+ 00026863  0x00007220 rtn 
+ 00026864  0x00007222 jam  0x000000bf , 0x00008971 
+ 00026865  0x00007223 branch  0x000068f8 
+ 00026866  0x00007225 jam  0x000000af , 0x00008971 
+ 00026867  0x00007226 branch  0x000068f8 
+ 00026868  0x00007228 jam  0x0000008f , 0x00008971 
+ 00026869  0x00007229 fetch  0x00000001 , 0x0000422e 
+ 00026870  0x0000722a hstore  0x00000001 , 0x00008973 
+ 00026871  0x0000722b branch  0x000068f8 
+ 00026872  0x0000722d bpatchx  0x0000009f , 0x00004033 
+ 00026873  0x0000722e hfetch  0x00000001 , 0x00008053 
+ 00026874  0x0000722f set1  0x00000007 , 0x0000003f 
+ 00026875  0x00007230 hstore  0x00000001 , 0x00008053 
+ 00026876  0x00007231 hfetch  0x00000001 , 0x00008973 
+ 00026877  0x00007232 or_into  0x00000030 , 0x0000003f 
+ 00026878  0x00007233 hstore  0x00000001 , 0x00008973 
+ 00026879  0x00007234 jam  0x0000007c , 0x00008906 
+ 00026880  0x00007235 jam  0x000000aa , 0x00008972 
+ 00026881  0x00007236 nop  0x00001388 
+ 00026882  0x00007237 hfetcht  0x00000002 , 0x00008150 
+ 00026883  0x00007238 hfetch  0x00000001 , 0x00008053 
+ 00026884  0x00007239 set0  0x00000007 , 0x0000003f 
+ 00026885  0x0000723a hstore  0x00000001 , 0x00008053 
+ 00026886  0x0000723b storet  0x00000002 , 0x0000422f 
+ 00026887  0x0000723c rtn 
+ 00026888  0x0000723f bpatchx  0x000000a0 , 0x00004034 
+ 00026889  0x00007240 fetch  0x00000001 , 0x0000422d 
+ 00026890  0x00007241 beq  0x00000000 , 0x0000690e 
+ 00026891  0x00007242 beq  0x00000001 , 0x00006912 
+ 00026892  0x00007243 beq  0x00000002 , 0x00006916 
+ 00026893  0x00007244 rtn 
+ 00026894  0x00007247 fetch  0x00000002 , 0x00004227 
+ 00026895  0x00007248 fetcht  0x00000002 , 0x00004221 
+ 00026896  0x00007249 arg  0x000000c8 , 0x00000013 
+ 00026897  0x0000724a branch  0x0000691a 
+ 00026898  0x0000724d fetch  0x00000002 , 0x00004225 
+ 00026899  0x0000724e fetcht  0x00000002 , 0x0000421f 
+ 00026900  0x0000724f arg  0x00000064 , 0x00000013 
+ 00026901  0x00007250 branch  0x0000691a 
+ 00026902  0x00007253 fetch  0x00000002 , 0x00004223 
+ 00026903  0x00007254 fetcht  0x00000002 , 0x0000421d 
+ 00026904  0x00007255 arg  0x00000032 , 0x00000013 
+ 00026905  0x00007256 branch  0x0000691a 
+ 00026906  0x00007259 isub  0x00000002 , 0x00000011 
+ 00026907  0x0000725a fetch  0x00000002 , 0x0000422f 
+ 00026908  0x0000725b isub  0x00000002 , 0x0000003f 
+ 00026909  0x0000725c nbranch  0x00006927 , 0x00000002 
+ 00026910  0x0000725d fetcht  0x00000002 , 0x0000422b 
+ 00026911  0x0000725e imul32  0x00000002 , 0x00000012 
+ 00026912  0x0000725f copy  0x00000013 , 0x0000003f 
+ 00026913  0x00007260 imul32  0x00000011 , 0x0000003f 
+ 00026914  0x00007261 iadd  0x00000012 , 0x0000003f 
+ 00026915  0x00007263 idiv  0x00000011 
+ 00026916  0x00007264 call  0x00007f86 
+ 00026917  0x00007265 quotient  0x0000003f 
+ 00026918  0x00007266 rtn 
+ 00026919  0x00007269 copy  0x00000002 , 0x0000003f 
+ 00026920  0x0000726a fetcht  0x00000002 , 0x0000422f 
+ 00026921  0x0000726b isub  0x00000002 , 0x0000003f 
+ 00026922  0x0000726c fetcht  0x00000002 , 0x0000422b 
+ 00026923  0x0000726d imul32  0x00000002 , 0x00000012 
+ 00026924  0x0000726e copy  0x00000013 , 0x0000003f 
+ 00026925  0x0000726f imul32  0x00000011 , 0x0000003f 
+ 00026926  0x00007270 isub  0x00000012 , 0x0000003f 
+ 00026927  0x00007271 branch  0x00006923 
+ 00026928  0x0000727d ifetch  0x00000008 , 0x00000011 
+ 00026929  0x0000727e store  0x00000008 , 0x00000a9a 
+ 00026930  0x0000727f fetch  0x00000002 , 0x00000a9a 
+ 00026931  0x00007280 fetcht  0x00000002 , 0x00000a9c 
+ 00026932  0x00007281 isub  0x00000002 , 0x00000011 
+ 00026933  0x00007282 fetch  0x00000002 , 0x00000aa0 
+ 00026934  0x00007283 isub  0x00000002 , 0x00000012 
+ 00026935  0x00007284 fetcht  0x00000002 , 0x00000a9e 
+ 00026936  0x00007285 isub  0x00000002 , 0x0000003e 
+ 00026937  0x00007286 ncall  0x00006940 , 0x00000002 
+ 00026938  0x00007287 mul32  0x00000012 , 0x00000064 , 0x0000003f 
+ 00026939  0x00007288 idiv  0x00000011 
+ 00026940  0x00007289 call  0x00007f86 
+ 00026941  0x0000728a quotient  0x0000003f 
+ 00026942  0x0000728b call  0x00006944 , 0x00000034 
+ 00026943  0x0000728c rtn 
+ 00026944  0x0000728e fetch  0x00000001 , 0x00004231 
+ 00026945  0x0000728f set1  0x00000000 , 0x0000003f 
+ 00026946  0x00007290 store  0x00000001 , 0x00004231 
+ 00026947  0x00007291 rtn 
+ 00026948  0x00007293 fetcht  0x00000001 , 0x00004231 
+ 00026949  0x00007294 set1  0x00000001 , 0x00000002 
+ 00026950  0x00007295 storet  0x00000001 , 0x00004231 
+ 00026951  0x00007296 rtn 
+ 00026952  0x0000729c fetch  0x00000002 , 0x0000423d 
+ 00026953  0x0000729d ifetch  0x00000001 , 0x0000003f 
+ 00026954  0x0000729f rtn  0x00000034 
+ 00026955  0x000072a0 copy  0x0000003f , 0x00000039 
+ 00026956  0x000072a2 fetch  0x00000002 , 0x0000423d 
+ 00026957  0x000072a3 increase  0x00000003 , 0x0000003f 
+ 00026958  0x000072a4 copy  0x0000003f , 0x00000011 
+ 00026959  0x000072a6 ifetcht  0x00000001 , 0x00000011 
+ 00026960  0x000072a7 call  0x000067fb 
+ 00026961  0x000072a8 increase  0x00000001 , 0x00000011 
+ 00026962  0x000072a9 loop  0x0000694f 
+ 00026963  0x000072ab rtn 
+ 00026964  0x000072ae fetch  0x00000002 , 0x0000423d 
+ 00026965  0x000072af increase  0x00000003 , 0x0000003f 
+ 00026966  0x000072b0 copy  0x0000003f , 0x00000011 
+ 00026967  0x000072b2 force  0x00000000 , 0x00000012 
+ 00026968  0x000072b3 jam  0x00000000 , 0x00000b12 
+ 00026969  0x000072b5 ifetcht  0x00000001 , 0x00000011 
+ 00026970  0x000072b6 call  0x0000681d 
+ 00026971  0x000072b7 bpatchx  0x000000a1 , 0x00004034 
+ 00026972  0x000072b8 fetch  0x00000002 , 0x00000b12 
+ 00026973  0x000072b9 copy  0x00000012 , 0x00000007 
+ 00026974  0x000072ba qsetflag  0x00000001 , 0x0000003f 
+ 00026975  0x000072bb store  0x00000002 , 0x00000b12 
+ 00026976  0x000072bc increase  0x00000001 , 0x00000011 
+ 00026977  0x000072bd increase  0x00000001 , 0x00000012 
+ 00026978  0x000072be fetch  0x00000002 , 0x0000423d 
+ 00026979  0x000072bf ifetch  0x00000001 , 0x0000003f 
+ 00026980  0x000072c1 ixor  0x00000012 , 0x0000003e 
+ 00026981  0x000072c2 nbranch  0x00006959 , 0x00000005 
+ 00026982  0x000072c3 fetch  0x00000002 , 0x00000b12 
+ 00026983  0x000072c4 fetcht  0x00000002 , 0x00000b14 
+ 00026984  0x000072c5 ixor  0x00000002 , 0x0000003e 
+ 00026985  0x000072c6 rtn  0x00000005 
+ 00026986  0x000072c7 enable  0x00000028 
+ 00026987  0x000072c8 rtn 
+ 00026988  0x000072cb fetch  0x00000002 , 0x0000423d 
+ 00026989  0x000072cc ifetch  0x00000001 , 0x0000003f 
+ 00026990  0x000072ce rtn  0x00000034 
+ 00026991  0x000072cf copy  0x0000003f , 0x00000039 
+ 00026992  0x000072d0 fetch  0x00000002 , 0x0000423d 
+ 00026993  0x000072d1 increase  0x00000003 , 0x0000003f 
+ 00026994  0x000072d2 copy  0x0000003f , 0x00000011 
+ 00026995  0x000072d4 ifetcht  0x00000001 , 0x00000011 
+ 00026996  0x000072d5 call  0x000067dd 
+ 00026997  0x000072d6 increase  0x00000001 , 0x00000011 
+ 00026998  0x000072d7 loop  0x00006973 
+ 00026999  0x000072d9 rtn 
+ 00027000  0x000072dc arg  0x00000009 , 0x00000007 
+ 00027001  0x000072dd call  0x00007f16 
+ 00027002  0x000072de nrtn  0x00000034 
+ 00027003  0x000072df setarg  0x00000020 
+ 00027004  0x000072e0 arg  0x00000009 , 0x00000007 
+ 00027005  0x000072e1 call  0x00007f08 
+ 00027006  0x000072e2 disable  0x00000028 
+ 00027007  0x000072e3 call  0x0000696c 
+ 00027008  0x000072e4 bpatchx  0x000000a2 , 0x00004034 
+ 00027009  0x000072e5 fetch  0x00000002 , 0x0000423d 
+ 00027010  0x000072e6 ifetch  0x00000001 , 0x0000003f 
+ 00027011  0x000072e8 rtn  0x00000034 
+ 00027012  0x000072e9 call  0x00006954 
+ 00027013  0x000072ea nbranch  0x00007d02 , 0x00000028 
+ 00027014  0x000072eb call  0x00007d00 
+ 00027015  0x000072ec disable  0x00000028 
+ 00027016  0x000072ed fetch  0x00000002 , 0x00000b12 
+ 00027017  0x000072ee store  0x00000002 , 0x00000b19 
+ 00027018  0x000072ef jam  0x00000000 , 0x00000b1b 
+ 00027019  0x000072f0 force  0x00000000 , 0x00000007 
+ 00027020  0x000072f2 fetch  0x00000002 , 0x00000b14 
+ 00027021  0x000072f3 rshift  0x0000003f , 0x00000002 
+ 00027022  0x000072f4 storet  0x00000002 , 0x00000b14 
+ 00027023  0x000072f5 and  0x0000003f , 0x00000001 , 0x0000003f 
+ 00027024  0x000072f6 fetcht  0x00000002 , 0x00000b19 
+ 00027025  0x000072f7 and  0x00000002 , 0x00000001 , 0x00000011 
+ 00027026  0x000072f8 rshift  0x00000002 , 0x00000002 
+ 00027027  0x000072f9 storet  0x00000002 , 0x00000b19 
+ 00027028  0x000072fa ixor  0x00000011 , 0x0000003e 
+ 00027029  0x000072fb ncall  0x000069a1 , 0x00000005 
+ 00027030  0x000072fc fetch  0x00000002 , 0x0000423d 
+ 00027031  0x000072fd ifetch  0x00000001 , 0x0000003f 
+ 00027032  0x000072ff fetcht  0x00000001 , 0x00000b1b 
+ 00027033  0x00007300 increase  0x00000001 , 0x00000002 
+ 00027034  0x00007301 storet  0x00000001 , 0x00000b1b 
+ 00027035  0x00007302 copy  0x00000002 , 0x00000007 
+ 00027036  0x00007303 ixor  0x00000007 , 0x0000003e 
+ 00027037  0x00007304 nbranch  0x0000698c , 0x00000005 
+ 00027038  0x00007305 fetch  0x00000002 , 0x00000b12 
+ 00027039  0x00007306 store  0x00000002 , 0x00000b14 
+ 00027040  0x00007307 rtn 
+ 00027041  0x00007309 bpatchx  0x000000a3 , 0x00004034 
+ 00027042  0x0000730a fetch  0x00000002 , 0x0000423d 
+ 00027043  0x0000730b increase  0x00000001 , 0x0000003f 
+ 00027044  0x0000730c ifetch  0x00000002 , 0x0000003f 
+ 00027045  0x0000730d branch  0x00007f9c 
+ 00027046  0x00007319 hfetch  0x00000001 , 0x00008042 
+ 00027047  0x0000731a ior  0x00000011 , 0x0000003f 
+ 00027048  0x0000731b hstore  0x00000001 , 0x00008042 
+ 00027049  0x0000731c hfetch  0x00000002 , 0x00008050 
+ 00027050  0x0000731d set0  0x0000000d , 0x0000003f 
+ 00027051  0x0000731e 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  0x00000000 , 0x00010003 
+ 00065538  0x00009142 rtn 
+ 00065539  0x00009145 fetch  0x00000001 , 0x0000000e 
+ 00065540  0x00009146 increase  0x00000001 , 0x0000003f 
+ 00065541  0x00009147 store  0x00000001 , 0x0000000e 
+ 00065542  0x00009148 call  0x00002435 
+ 00065543  0x0000914a set1  0x0000002c , 0x00000000 
+ 00065544  0x0000914b call  0x000022f2 
+ 00065545  0x0000914c branch  0x0001000e , 0x00000018 
+ 00065546  0x0000914d set0  0x0000002c , 0x00000000 
+ 00065547  0x0000914e call  0x00002455 
+ 00065548  0x0000914f nbranch  0x00010007 , 0x00000034 
+ 00065549  0x00009150 branch  0x000020fc 
+ 00065550  0x00009152 set0  0x0000002c , 0x00000000 
+ 00065551  0x00009153 branch  0x0000215f 
+ 00131073  0x0000915b beq  0x00000010 , 0x00020004 
+ 00131074  0x0000915c beq  0x00000011 , 0x0002001b 
+ 00131075  0x0000915d rtn 
+ 00131076  0x00009160 jam  0x00000000 , 0x00004808 
+ 00131077  0x00009161 jam  0x0000000e , 0x000041e3 
+ 00131078  0x00009162 call  0x000041e7 
+ 00131079  0x00009163 fetch  0x00000002 , 0x00004208 
+ 00131080  0x00009164 bbit1  0x00000007 , 0x0002000e 
+ 00131081  0x00009165 bbit1  0x00000000 , 0x000033a9 
+ 00131082  0x00009166 bbit1  0x00000001 , 0x00020012 
+ 00131083  0x00009167 bbit1  0x00000002 , 0x00020015 
+ 00131084  0x00009168 bbit1  0x00000003 , 0x00020015 
+ 00131085  0x00009169 branch  0x000042b0 
+ 00131086  0x0000916c call  0x000041c1 
+ 00131087  0x0000916d fetch  0x00000002 , 0x00004208 
+ 00131088  0x0000916e bbit1  0x0000000a , 0x0000046e 
+ 00131089  0x0000916f branch  0x000041f7 
+ 00131090  0x00009172 bbit1  0x00000005 , 0x00020015 
+ 00131091  0x00009173 bbit1  0x00000003 , 0x00020015 
+ 00131092  0x00009174 branch  0x000042b0 
+ 00131093  0x00009176 fetch  0x00000002 , 0x00004682 
+ 00131094  0x00009177 bbit1  0x0000000c , 0x000042b0 
+ 00131095  0x00009178 call  0x000033a9 
+ 00131096  0x00009179 call  0x000005b3 
+ 00131097  0x0000917a beq  0x00000005 , 0x000004f2 
+ 00131098  0x0000917b branch  0x000033a7 
+ 00131099  0x0000917f fetch  0x00000002 , 0x00000264 
+ 00131100  0x00009180 copy  0x0000003f , 0x00000006 
+ 00131101  0x00009181 ifetch  0x00000001 , 0x00000006 
+ 00131102  0x00009182 store  0x00000001 , 0x00004b02 
+ 00131103  0x00009183 and  0x0000003f , 0x0000000f , 0x00000002 
+ 00131104  0x00009184 rshift4  0x0000003f , 0x0000003f 
+ 00131105  0x00009185 beq  0x00000007 , 0x00020023 
+ 00131106  0x00009186 branch  0x00004d39 
+ 00131107  0x00009188 call  0x00004d53 
+ 00131108  0x00009189 jam  0x00000000 , 0x00004b03 
+ 00131109  0x0000918a fetch  0x00000001 , 0x00004b02 
+ 00131110  0x0000918b isolate1  0x00000000 , 0x0000003f 
+ 00131111  0x0000918c rtn  0x00000001 
+ 00131112  0x0000918d jam  0x00000001 , 0x00004b03 
+ 00131113  0x0000918e rtn 
+ 00196609  0x00009193 beq  0x00000020 , 0x00030003 
+ 00196610  0x00009194 rtn 
+ 00196611  0x00009197 disable  0x00000028 
+ 00196612  0x00009198 call  0x000062c1 
+ 00196613  0x0000919b fetch  0x00000001 , 0x00000048 
+ 00196614  0x0000919c rtn  0x00000034 
+ 00196615  0x0000919d bbit1  0x00000007 , 0x0003000c 
+ 00196616  0x0000919e beq  0x00000003 , 0x0003001c 
+ 00196617  0x0000919f beq  0x00000031 , 0x00030018 
+ 00196618  0x000091a0 beq  0x00000017 , 0x0003001a 
+ 00196619  0x000091a1 branch  0x00006010 
+ 00196620  0x000091a3 beq  0x00000084 , 0x0003000f 
+ 00196621  0x000091a4 beq  0x00000083 , 0x00030012 
+ 00196622  0x000091a5 branch  0x0000603f 
+ 00196623  0x000091a7 call  0x00030015 
+ 00196624  0x000091a8 fetch  0x00000001 , 0x00000048 
+ 00196625  0x000091a9 branch  0x00006099 
+ 00196626  0x000091ab call  0x00030015 
+ 00196627  0x000091ac fetch  0x00000001 , 0x00000048 
+ 00196628  0x000091ad branch  0x0000610d 
+ 00196629  0x000091af fetch  0x00000001 , 0x0000465a 
+ 00196630  0x000091b0 branch  0x0000612b , 0x00000034 
+ 00196631  0x000091b1 branch  0x00006124 
+ 00196632  0x000091b4 jam  0x00000001 , 0x00004b01 
+ 00196633  0x000091b5 branch  0x000061c3 
+ 00196634  0x000091b8 jam  0x00000004 , 0x00004b09 
+ 00196635  0x000091b9 branch  0x000061a4 
+ 00196636  0x000091bd force  0x00000002 , 0x0000003f 
+ 00196637  0x000091be call  0x00006298 
+ 00196638  0x000091bf fetch  0x00000001 , 0x00000049 
+ 00196639  0x000091c0 istore  0x00000001 , 0x00000005 
+ 00196640  0x000091c1 store  0x00000001 , 0x00004afc 
+ 00196641  0x000091c2 call  0x000062a7 
+ 00196642  0x000091c3 fetch  0x00000001 , 0x00004afc 
+ 00196643  0x000091c4 beq  0x0000002e , 0x00030025 
+ 00196644  0x000091c5 branch  0x00006051 
+ 00196645  0x000091c8 fetch  0x00000001 , 0x00004aff 
+ 00196646  0x000091c9 rtn  0x00000034 
+ 00196647  0x000091ca jam  0x00000000 , 0x00004aff 
+ 00196648  0x000091cb fetch  0x00000001 , 0x00004b01 
+ 00196649  0x000091cc rtnne  0x00000002 
+ 00196650  0x000091cd jam  0x00000001 , 0x00004b00 
+ 00196651  0x000091ce copy  0x00000022 , 0x0000003f 
+ 00196652  0x000091cf store  0x00000004 , 0x000004e9 
+ 00196653  0x000091d0 rtn 
+ 00262145  0x000091d6 beq  0x00000030 , 0x00040003 
+ 00262146  0x000091d7 rtn 
+ 00262147  0x000091da call  0x000062bc 
+ 00262148  0x000091db nrtn  0x00000034 
+ 00262149  0x000091dd fetch  0x00000001 , 0x00000055 
+ 00262150  0x000091de rtn  0x00000034 
+ 00262151  0x000091df beq  0x00000004 , 0x00040025 
+ 00262152  0x000091e0 beq  0x00000010 , 0x0004000a 
+ 00262153  0x000091e1 branch  0x00006320 
+ 00262154  0x000091e5 fetch  0x00000001 , 0x0000455b 
+ 00262155  0x000091e6 rtneq  0x00000000 
+ 00262156  0x000091e7 beq  0x00000001 , 0x0004000e 
+ 00262157  0x000091e8 branch  0x0000635f 
+ 00262158  0x000091ea rtn  0x00000029 
+ 00262159  0x000091ed fetch  0x00000001 , 0x0000016d 
+ 00262160  0x000091ee bbit1  0x00000000 , 0x00040012 
+ 00262161  0x000091ef branch  0x00006399 
+ 00262162  0x000091f1 fetch  0x00000001 , 0x00004b01 
+ 00262163  0x000091f2 beq  0x00000001 , 0x0000639d 
+ 00262164  0x000091f4 fetch  0x00000001 , 0x000041bd 
+ 00262165  0x000091f5 branch  0x000063a9 , 0x00000034 
+ 00262166  0x000091f6 fetch  0x00000001 , 0x000004d1 
+ 00262167  0x000091f7 rtnbit0  0x00000003 
+ 00262168  0x000091f8 rtnbit0  0x00000002 
+ 00262169  0x000091f9 fetch  0x00000001 , 0x00004b00 
+ 00262170  0x000091fa rtn  0x00000034 
+ 00262171  0x000091fb jam  0x00000000 , 0x00004b00 
+ 00262172  0x000091fc fetch  0x00000004 , 0x000004e9 
+ 00262173  0x000091fd arg  0x00000014 , 0x00000002 
+ 00262174  0x000091fe iadd  0x00000002 , 0x00000002 
+ 00262175  0x000091ff copy  0x00000022 , 0x0000003f 
+ 00262176  0x00009200 isub  0x00000002 , 0x0000003e 
+ 00262177  0x00009201 nbranch  0x00040023 , 0x00000002 
+ 00262178  0x00009202 branch  0x00006349 
+ 00262179  0x00009205 jam  0x00000001 , 0x00004b00 
+ 00262180  0x00009206 rtn 
+ 00262181  0x00009209 jam  0x00000014 , 0x00004809 
+ 00262182  0x0000920a branch  0x0000636f 
+ 00327681  0x00009213 beq  0x00000040 , 0x00050006 
+ 00327682  0x00009214 beq  0x00000041 , 0x00050018 
+ 00327683  0x00009215 beq  0x00000042 , 0x00050025 
+ 00327684  0x00009216 beq  0x00000043 , 0x0005002c 
+ 00327685  0x00009217 rtn 
+ 00327686  0x0000921a call  0x0005000e 
+ 00327687  0x0000921b branch  0x0000557d 
+ 00327688  0x0000921d fetch  0x00000001 , 0x000047c5 
+ 00327689  0x0000921e store  0x00000001 , 0x00004172 
+ 00327690  0x00009220 jam  0x00000000 , 0x000047c4 
+ 00327691  0x00009221 rtn 
+ 00327692  0x00009223 jam  0x00000001 , 0x000047c4 
+ 00327693  0x00009224 rtn 
+ 00327694  0x00009226 fetch  0x00000001 , 0x000043d6 
+ 00327695  0x00009227 sub  0x0000003f , 0x0000000c , 0x0000003e 
+ 00327696  0x00009228 nbranch  0x0005000c , 0x00000002 
+ 00327697  0x00009229 fetch  0x00000001 , 0x000043d8 
+ 00327698  0x0000922a fetcht  0x00000001 , 0x000047c5 
+ 00327699  0x0000922b isub  0x00000002 , 0x0000003e 
+ 00327700  0x0000922c branch  0x00050008 , 0x00000002 
+ 00327701  0x0000922d fetch  0x00000001 , 0x000043d8 
+ 00327702  0x0000922e store  0x00000001 , 0x00004172 
+ 00327703  0x0000922f branch  0x0005000a 
+ 00327704  0x00009232 fetch  0x00000001 , 0x0000043f 
+ 00327705  0x00009233 rtnbit0  0x00000006 
+ 00327706  0x00009234 call  0x0005001d 
+ 00327707  0x00009235 nrtn  0x00000028 
+ 00327708  0x00009236 branch  0x000055a0 
+ 00327709  0x00009238 enable  0x00000028 
+ 00327710  0x00009239 fetch  0x00000001 , 0x0000045a 
+ 00327711  0x0000923a rshift4  0x0000003f , 0x0000003f 
+ 00327712  0x0000923b rtnne  0x0000000f 
+ 00327713  0x0000923c fetch  0x00000001 , 0x00000460 
+ 00327714  0x0000923d rshift4  0x0000003f , 0x0000003f 
+ 00327715  0x0000923e rtnne  0x00000000 
+ 00327716  0x0000923f branch  0x00007fe9 
+ 00327717  0x00009242 fetch  0x00000001 , 0x0000479f 
+ 00327718  0x00009243 nrtn  0x00000034 
+ 00327719  0x00009244 fetch  0x00000001 , 0x00000478 
+ 00327720  0x00009245 sub  0x0000003f , 0x0000001a , 0x0000003f 
+ 00327721  0x00009246 nrtn  0x00000005 
+ 00327722  0x00009247 jam  0x00000000 , 0x000046c6 
+ 00327723  0x00009248 branch  0x00003d60 
+ 00327724  0x0000924b call  0x000033af 
+ 00327725  0x0000924c call  0x000026e9 
+ 00327726  0x0000924d jam  0x00000002 , 0x00000a99 
+ 00327727  0x0000924e call  0x00007d86 
+ 00327728  0x0000924f call  0x00005cf7 
+ 00327729  0x00009250 call  0x00004d6b 
+ 00327730  0x00009251 branch  0x0000246e 
+ 00393217  0x00009257 beq  0x00000050 , 0x00060003 
+ 00393218  0x00009258 rtn 
+ 00393219  0x0000925c jam  0x00000000 , 0x00004b67 
+ 00393220  0x0000925d jam  0x0000005a , 0x00004b62 
+ 00393221  0x0000925e call  0x000002d2 
+ 00393222  0x0000925f jam  0x00000001 , 0x00004720 
+ 00393223  0x00009260 jam  0x00000000 , 0x0000479c 
+ 00393224  0x00009261 fetch  0x00000002 , 0x00004682 
+ 00393225  0x00009262 bbit1  0x0000000b , 0x00060014 
+ 00393226  0x00009263 fetch  0x00000004 , 0x000046d3 
+ 00393227  0x00009264 bbit0  0x00000018 , 0x00060014 
+ 00393228  0x00009265 call  0x000005ef 
+ 00393229  0x00009266 fetcht  0x00000002 , 0x000047c2 
+ 00393230  0x00009267 increase  0x00000001 , 0x00000002 
+ 00393231  0x00009268 storet  0x00000002 , 0x000047c2 
+ 00393232  0x00009269 storet  0x00000002 , 0x000044a1 
+ 00393233  0x0000926a call  0x00000339 
+ 00393234  0x0000926b random  0x0000003f 
+ 00393235  0x0000926c store  0x00000001 , 0x000044a0 
+ 00393236  0x0000926e call  0x00003418 
+ 00393237  0x0000926f fetch  0x00000002 , 0x00004687 
+ 00393238  0x00009270 store  0x00000002 , 0x000046ac 
+ 00393239  0x00009271 jam  0x00000006 , 0x0000016d 
+ 00393240  0x00009272 setarg  0x00000000 
+ 00393241  0x00009273 store  0x00000002 , 0x000046b0 
+ 00393242  0x00009274 store  0x00000002 , 0x000046ae 
+ 00393243  0x00009275 arg  0x00000007 , 0x00000007 
+ 00393244  0x00009276 call  0x000043ce 
+ 00393245  0x00009277 call  0x000043ca 
+ 00393246  0x0000927b fetch  0x00000001 , 0x00004092 
+ 00393247  0x0000927c isolate1  0x00000000 , 0x0000003f 
+ 00393248  0x0000927d call  0x00007ddd , 0x00000001 
+ 00393249  0x00009280 branch  0x00000532 
+ 00393250  0x00009283 jam  0x00000000 , 0x0000479f 
+ 00393251  0x00009284 call  0x000002e6 
+ 00393252  0x00009285 setarg  0x00000005 
+ 00393253  0x00009286 istore  0x00000001 , 0x00000006 
+ 00393254  0x00009287 arg  0x00004b10 , 0x00000006 
+ 00393255  0x00009288 call  0x000005fd 
+ 00393256  0x00009289 branch  0x00007df4 
+ 00458753  0x0000928e beq  0x00000060 , 0x00070004 
+ 00458754  0x0000928f beq  0x00000061 , 0x00070026 
+ 00458755  0x00009290 rtn 
+ 00458756  0x00009293 set0  0x00000026 , 0x00000000 
+ 00458757  0x00009294 call  0x000001d7 
+ 00458758  0x00009295 call  0x000001f6 
+ 00458759  0x00009296 fetch  0x00000001 , 0x00004c00 
+ 00458760  0x00009297 rtnne  0x000000ff 
+ 00458761  0x00009298 call  0x00070018 
+ 00458762  0x0000929a setarg  0x00000000 
+ 00458763  0x0000929b store  0x00000002 , 0x00004c1d 
+ 00458764  0x0000929e nop  0x000007d0 
+ 00458765  0x0000929f fetch  0x00000001 , 0x00004c1d 
+ 00458766  0x000092a0 beq  0x000000ff , 0x00002dd4 
+ 00458767  0x000092a1 call  0x00000185 
+ 00458768  0x000092a2 nbranch  0x00070021 , 0x00000018 
+ 00458769  0x000092a3 nbranch  0x00070021 , 0x0000002f 
+ 00458770  0x000092a5 set1  0x00000026 , 0x00000000 
+ 00458771  0x000092a6 setarg  0x00000000 
+ 00458772  0x000092a7 store  0x00000002 , 0x00004c1d 
+ 00458773  0x000092a8 call  0x00002f20 
+ 00458774  0x000092a9 call  0x0000017f 
+ 00458775  0x000092aa branch  0x00000387 
+ 00458776  0x000092ad jam  0x000000ff , 0x0000119e 
+ 00458777  0x000092ae fetch  0x00000001 , 0x00004bf1 
+ 00458778  0x000092af store  0x00000001 , 0x0000119f 
+ 00458779  0x000092b0 fetch  0x00000004 , 0x00004c27 
+ 00458780  0x000092b1 store  0x00000004 , 0x000011a0 
+ 00458781  0x000092b2 arg  0x00000006 , 0x00000002 
+ 00458782  0x000092b3 arg  0x0000119e , 0x00000011 
+ 00458783  0x000092b4 call  0x000001c4 
+ 00458784  0x000092b5 branch  0x000001e4 
+ 00458785  0x000092b8 fetch  0x00000002 , 0x00004c1d 
+ 00458786  0x000092b9 increase  0x00000001 , 0x0000003f 
+ 00458787  0x000092ba store  0x00000002 , 0x00004c1d 
+ 00458788  0x000092bb call  0x000001f6 
+ 00458789  0x000092bc branch  0x0007000c 
+ 00458790  0x000092c0 fetch  0x00000001 , 0x00004720 
+ 00458791  0x000092c1 rtneq  0x00000001 
+ 00458792  0x000092c5 rtnmark1  0x00000026 
+ 00458793  0x000092c7 arg  0x00000003 , 0x00000007 
+ 00458794  0x000092c8 call  0x000043ce 
+ 00458795  0x000092c9 setarg  0x00000000 
+ 00458796  0x000092ca store  0x00000002 , 0x000046ae 
+ 00458797  0x000092cb store  0x00000001 , 0x000046b4 
+ 00458798  0x000092cc store  0x00000002 , 0x00004c1d 
+ 00458799  0x000092cd call  0x000042ca 
+ 00458800  0x000092ce branch  0x00070031 
+ 00458801  0x000092d1 set1  0x00000026 , 0x00000000 
+ 00458802  0x000092d2 call  0x00070035 
+ 00458803  0x000092d4 jam  0x00000001 , 0x00004c00 
+ 00458804  0x000092d5 rtn 
+ 00458805  0x000092d8 jam  0x00000020 , 0x000041de 
+ 00458806  0x000092d9 jam  0x00000000 , 0x00004bef 
+ 00458807  0x000092da jam  0x0000004e , 0x00004bfa 
+ 00458808  0x000092db fetch  0x00000004 , 0x00004bfc 
+ 00458809  0x000092dc branch  0x000001d6 
+ 00524289  0x000092e1 beq  0x00000070 , 0x00080003 
+ 00524290  0x000092e2 rtn 
+ 00524291  0x000092e5 set0  0x00000026 , 0x00000000 
+ 00524292  0x000092e6 call  0x0008002d 
+ 00524293  0x000092e7 call  0x0008001a 
+ 00524294  0x000092e9 jam  0x00000000 , 0x00004c1d 
+ 00524295  0x000092ea call  0x00000532 
+ 00524296  0x000092ed nop  0x000007d0 
+ 00524297  0x000092ee fetch  0x00000002 , 0x00004c1d 
+ 00524298  0x000092ef beq  0x000002ff , 0x00002dd4 
+ 00524299  0x000092f0 call  0x00000185 
+ 00524300  0x000092f1 nbranch  0x00080023 , 0x00000018 
+ 00524301  0x000092f2 nbranch  0x00080023 , 0x0000002f 
+ 00524302  0x000092f3 call  0x000001af 
+ 00524303  0x000092f4 call  0x000002d2 
+ 00524304  0x000092f5 fetch  0x00000004 , 0x00004c18 
+ 00524305  0x000092f6 fetcht  0x00000004 , 0x00004bfc 
+ 00524306  0x000092f7 isub  0x00000002 , 0x0000003e 
+ 00524307  0x000092f8 branch  0x00080037 , 0x00000005 
+ 00524308  0x000092f9 set1  0x00000026 , 0x00000000 
+ 00524309  0x000092fa setarg  0x00000000 
+ 00524310  0x000092fb store  0x00000002 , 0x00004c1d 
+ 00524311  0x000092fc call  0x00002f20 
+ 00524312  0x000092fd call  0x0000017f 
+ 00524313  0x000092fe branch  0x00000387 
+ 00524314  0x00009301 jam  0x000000ff , 0x0000119e 
+ 00524315  0x00009302 fetch  0x00000001 , 0x00004bf1 
+ 00524316  0x00009303 store  0x00000001 , 0x0000119f 
+ 00524317  0x00009304 fetch  0x00000004 , 0x00004c27 
+ 00524318  0x00009305 store  0x00000004 , 0x000011a0 
+ 00524319  0x00009306 arg  0x00000006 , 0x00000002 
+ 00524320  0x00009307 arg  0x0000119e , 0x00000011 
+ 00524321  0x00009308 call  0x000001c4 
+ 00524322  0x00009309 branch  0x000001e4 
+ 00524323  0x0000930c fetch  0x00000001 , 0x00004c1d 
+ 00524324  0x0000930d increase  0x00000001 , 0x0000003f 
+ 00524325  0x0000930e store  0x00000001 , 0x00004c1d 
+ 00524326  0x0000930f fetch  0x00000001 , 0x00004d2e 
+ 00524327  0x00009310 increase  0x00000001 , 0x0000003f 
+ 00524328  0x00009311 and_into  0x00000001 , 0x0000003f 
+ 00524329  0x00009312 store  0x00000001 , 0x00004d2e 
+ 00524330  0x00009313 beq  0x00000000 , 0x00080033 
+ 00524331  0x00009314 beq  0x00000001 , 0x00080035 
+ 00524332  0x00009315 rtn 
+ 00524333  0x00009318 jam  0x00000020 , 0x000041de 
+ 00524334  0x00009319 setarg  0x00000f0f 
+ 00524335  0x0000931a store  0x00000002 , 0x00004c18 
+ 00524336  0x0000931b istore  0x00000002 , 0x00000005 
+ 00524337  0x0000931d call  0x000001d7 
+ 00524338  0x0000931e branch  0x000001f6 
+ 00524339  0x00009321 call  0x0008002d 
+ 00524340  0x00009322 branch  0x00080008 
+ 00524341  0x00009325 call  0x0008003b 
+ 00524342  0x00009326 branch  0x00080008 
+ 00524343  0x00009329 set1  0x00000026 , 0x00000000 
+ 00524344  0x0000932a call  0x0008003b 
+ 00524345  0x0000932c jam  0x00000001 , 0x00004c00 
+ 00524346  0x0000932d rtn 
+ 00524347  0x00009330 jam  0x00000020 , 0x000041de 
+ 00524348  0x00009331 jam  0x00000000 , 0x00004bef 
+ 00524349  0x00009332 jam  0x0000004e , 0x00004bfa 
+ 00524350  0x00009333 fetch  0x00000004 , 0x00004bfc 
+ 00524351  0x00009334 branch  0x000001d6 
+ 00589825  0x0000933d beq  0x00000080 , 0x00090008 
+ 00589826  0x0000933e beq  0x00000081 , 0x00090004 
+ 00589827  0x00009340 rtn 
+ 00589828  0x0000934a call  0x000068a2 
+ 00589829  0x0000934d setarg  0x00001122 
+ 00589830  0x0000934f store  0x00000002 , 0x000047c2 
+ 00589831  0x00009350 rtn 
+ 00589832  0x00009354 call  0x000000fe 
+ 00589833  0x00009359 call  0x00003e6e 
+ 00589834  0x0000935f fetcht  0x00000001 , 0x00004b23 
+ 00589835  0x00009360 call  0x0000680e 
+ 00589836  0x00009361 fetcht  0x00000001 , 0x00004b44 
+ 00589837  0x00009362 call  0x0000680e 
+ 00589838  0x00009364 call  0x00003e1e 
+ 00589839  0x00009365 call  0x00090020 
+ 00589840  0x00009366 setarg  0x00000000 
+ 00589841  0x00009367 store  0x00000002 , 0x00004154 
+ 00589842  0x00009368 call  0x000068a2 
+ 00589843  0x00009369 call  0x00003e54 
+ 00589844  0x0000936a call  0x00005810 
+ 00589845  0x0000936b call  0x00005839 
+ 00589846  0x0000936c call  0x0000582c 
+ 00589847  0x0000936d call  0x00005818 
+ 00589848  0x0000936e call  0x000005eb 
+ 00589849  0x0000936f call  0x00000377 
+ 00589850  0x00009370 call  0x00000342 
+ 00589851  0x00009371 fetch  0x00000003 , 0x00004700 
+ 00589852  0x00009372 iadd  0x00000012 , 0x0000003f 
+ 00589853  0x00009373 call  0x00006562 
+ 00589854  0x00009375 call  0x0000032a 
+ 00589855  0x00009376 rtn 
+ 00589856  0x0000937a call  0x000074b9 
+ 00589857  0x0000937b arg  0x00008c00 , 0x00000006 
+ 00589858  0x0000937c arg  0x00004876 , 0x00000005 
+ 00589859  0x0000937d arg  0x00000171 , 0x00000039 
+ 00589860  0x0000937e call  0x00007f01 
+ 00589861  0x00009380 setarg  0x000f0209 
+ 00589862  0x00009381 istore  0x00000003 , 0x00000005 
+ 00589863  0x00009382 setarg  0x00120009 
+ 00589864  0x00009383 istore  0x00000003 , 0x00000005 
+ 00589865  0x00009385 setarg  0x00100209 
+ 00589866  0x00009386 istore  0x00000003 , 0x00000005 
+ 00589867  0x00009387 setarg  0x00000009 
+ 00589868  0x00009388 istore  0x00000003 , 0x00000005 
+ 00589869  0x00009389 arg  0x00008d71 , 0x00000006 
+ 00589870  0x0000938a arg  0x00000109 , 0x00000039 
+ 00589871  0x0000938b call  0x00007f01 
+ 00589872  0x0000938d jam  0x00000000 , 0x0000488d 
+ 00589873  0x0000938e jam  0x0000006d , 0x00004885 
+ 00589874  0x0000938f setarg  0x0000401f 
+ 00589875  0x00009390 store  0x00000002 , 0x000049db 
+ 00589876  0x00009391 setarg  0x00006d04 
+ 00589877  0x00009392 store  0x00000002 , 0x00004a44 
+ 00589878  0x00009393 setarg  0x000016b0 
+ 00589879  0x00009394 store  0x00000002 , 0x00004a4a 
+ 00589880  0x00009396 setarg  0x00004876 
+ 00589881  0x00009397 store  0x00000002 , 0x00004575 
+ 00589882  0x00009398 rtn 
+ 00655361  0x0000939f beq  0x00000090 , 0x000a0005 
+ 00655362  0x000093a0 beq  0x00000091 , 0x000a0020 
+ 00655363  0x000093a1 beq  0x00000092 , 0x000a0030 
+ 00655364  0x000093a2 rtn 
+ 00655365  0x000093a5 fetch  0x00000001 , 0x00004bf5 
+ 00655366  0x000093a6 beq  0x00000001 , 0x00007fe7 
+ 00655367  0x000093a7 fetch  0x00000001 , 0x00004c00 
+ 00655368  0x000093a8 beq  0x00000001 , 0x000a000c 
+ 00655369  0x000093a9 beq  0x00000002 , 0x000a0010 
+ 00655370  0x000093aa beq  0x00000003 , 0x000a0013 
+ 00655371  0x000093ab branch  0x00002a8c 
+ 00655372  0x000093ae jam  0x00000011 , 0x00004c00 
+ 00655373  0x000093af jam  0x000000aa , 0x0000119e 
+ 00655374  0x000093b0 call  0x00000532 
+ 00655375  0x000093b1 branch  0x000a0015 
+ 00655376  0x000093b3 jam  0x00000012 , 0x00004c00 
+ 00655377  0x000093b4 jam  0x00000055 , 0x0000119e 
+ 00655378  0x000093b5 branch  0x000a0015 
+ 00655379  0x000093b7 jam  0x00000013 , 0x00004c00 
+ 00655380  0x000093b8 jam  0x00000022 , 0x0000119e 
+ 00655381  0x000093ba fetch  0x00000001 , 0x00004bf1 
+ 00655382  0x000093bb and_into  0x00000007 , 0x0000003f 
+ 00655383  0x000093bc store  0x00000001 , 0x0000119f 
+ 00655384  0x000093bd fetch  0x00000004 , 0x00004c27 
+ 00655385  0x000093be store  0x00000004 , 0x000011a0 
+ 00655386  0x000093c0 jam  0x00000000 , 0x000011a4 
+ 00655387  0x000093c1 arg  0x0000119e , 0x00000011 
+ 00655388  0x000093c2 arg  0x00000007 , 0x00000002 
+ 00655389  0x000093c3 call  0x000001c4 
+ 00655390  0x000093c4 call  0x00000147 
+ 00655391  0x000093c5 branch  0x00007fe7 
+ 00655392  0x000093c8 fetch  0x00000001 , 0x00004c00 
+ 00655393  0x000093c9 rtneq  0x000000ff 
+ 00655394  0x000093ca beq  0x00000011 , 0x000a0026 
+ 00655395  0x000093cb beq  0x00000012 , 0x000a0028 
+ 00655396  0x000093cc beq  0x00000013 , 0x000a002a 
+ 00655397  0x000093cd rtn 
+ 00655398  0x000093d0 jam  0x00000002 , 0x00004c00 
+ 00655399  0x000093d1 branch  0x00000179 
+ 00655400  0x000093d3 jam  0x00000003 , 0x00004c00 
+ 00655401  0x000093d4 branch  0x00000179 
+ 00655402  0x000093d6 jam  0x000000ff , 0x00004c00 
+ 00655403  0x000093d7 jam  0x00000039 , 0x00000a99 
+ 00655404  0x000093d8 call  0x00007d86 
+ 00655405  0x000093d9 fetch  0x00000004 , 0x00004bd0 
+ 00655406  0x000093da call  0x000001d6 
+ 00655407  0x000093db branch  0x00000179 
+ 00655408  0x000093df jam  0x00000001 , 0x0000478b 
+ 00655409  0x000093e0 arg  0x00000003 , 0x00000007 
+ 00655410  0x000093e1 call  0x000043d2 
+ 00655411  0x000093e2 setarg  0x00000000 
+ 00655412  0x000093e3 store  0x00000002 , 0x00004707 
+ 00655413  0x000093e4 jam  0x00000000 , 0x000046a7 
+ 00655414  0x000093e6 call  0x0000405d 
+ 00655415  0x000093e7 call  0x000004f5 
+ 00655416  0x000093e8 call  0x000002d2 
+ 00655417  0x000093ea fetch  0x00000004 , 0x00004c18 
+ 00655418  0x000093eb store  0x00000004 , 0x0000477b 
+ 00655419  0x000093ed call  0x00004366 
+ 00655420  0x000093ee branch  0x00000334 
+ 00720897  0x000093f3 beq  0x000000a0 , 0x000b0007 
+ 00720898  0x000093f4 beq  0x000000a1 , 0x000b000d 
+ 00720899  0x000093f5 beq  0x000000a2 , 0x000b0020 
+ 00720900  0x000093f6 beq  0x000000a3 , 0x000b0019 
+ 00720901  0x000093f7 beq  0x000000a4 , 0x000b0029 
+ 00720902  0x000093f8 rtn 
+ 00720903  0x000093fb jam  0x00000000 , 0x00004d30 
+ 00720904  0x000093fc call  0x000002d2 
+ 00720905  0x000093fd call  0x000001c0 
+ 00720906  0x000093fe jam  0x00000000 , 0x000041bd 
+ 00720907  0x000093ff call  0x000002aa 
+ 00720908  0x00009400 branch  0x000004f2 
+ 00720909  0x00009403 fetch  0x00000002 , 0x00004509 
+ 00720910  0x00009404 rtneq  0x00000000 
+ 00720911  0x00009405 fetch  0x00000001 , 0x00000441 
+ 00720912  0x00009406 rshift2  0x0000003f , 0x0000003f 
+ 00720913  0x00009407 sub  0x0000003f , 0x0000000c , 0x0000003e 
+ 00720914  0x00009408 rtn  0x00000002 
+ 00720915  0x00009409 setarg  0x00000009 
+ 00720916  0x0000940a store  0x00000002 , 0x00004496 
+ 00720917  0x0000940b store  0x00000002 , 0x00004498 
+ 00720918  0x0000940c call  0x0000042e 
+ 00720919  0x0000940d jam  0x00000001 , 0x000047c4 
+ 00720920  0x0000940e rtn 
+ 00720921  0x00009413 fetch  0x00000002 , 0x00004682 
+ 00720922  0x00009414 rtnbit1  0x0000000c 
+ 00720923  0x00009415 rtnbit1  0x00000006 
+ 00720924  0x00009416 rtnbit1  0x0000000b 
+ 00720925  0x00009417 fetch  0x00000004 , 0x000046d3 
+ 00720926  0x00009418 rtnbit1  0x00000005 
+ 00720927  0x00009419 branch  0x000033a7 
+ 00720928  0x0000941c jam  0x00000000 , 0x00004b61 
+ 00720929  0x0000941d setarg  0x00000007 
+ 00720930  0x0000941e store  0x00000002 , 0x00004496 
+ 00720931  0x0000941f store  0x00000002 , 0x00004498 
+ 00720932  0x00009420 jam  0x00000000 , 0x000047c4 
+ 00720933  0x00009421 jam  0x00000000 , 0x0000479c 
+ 00720934  0x00009422 call  0x000003b9 
+ 00720935  0x00009423 call  0x00005816 
+ 00720936  0x00009424 branch  0x000041d9 
+ 00720937  0x00009428 enable  0x00000028 
+ 00720938  0x00009429 hfetch  0x00000004 , 0x00008138 
+ 00720939  0x0000942a setflag  0x00000028 , 0x0000001a , 0x0000003f 
+ 00720940  0x0000942b hstore  0x00000004 , 0x0000804c 
+ 00720941  0x0000942c call  0x00002c21 
+ 00720942  0x0000942d call  0x000074bd 
+ 00720943  0x0000942f call  0x00003e9f 
+ 00720944  0x00009430 fetcht  0x00000001 , 0x00004b23 
+ 00720945  0x00009431 call  0x00006829 
+ 00720946  0x00009432 call  0x000002aa 
+ 00720947  0x00009433 call  0x0000036e 
+ 00720948  0x00009434 hfetch  0x00000001 , 0x00008081 
+ 00720949  0x00009435 and  0x0000003f , 0x000000f7 , 0x0000003f 
+ 00720950  0x00009436 hstore  0x00000001 , 0x00008081 
+ 00720951  0x00009437 rtn 
+ 00786433  0x0000943d beq  0x000000b0 , 0x000c0007 
+ 00786434  0x0000943e beq  0x000000b1 , 0x000c000e 
+ 00786435  0x0000943f beq  0x000000b2 , 0x000c0014 
+ 00786436  0x00009440 beq  0x000000b3 , 0x000c0019 
+ 00786437  0x00009441 beq  0x000000b4 , 0x000c0020 
+ 00786438  0x00009442 rtn 
+ 00786439  0x00009445 jam  0x00000001 , 0x00004b61 
+ 00786440  0x00009446 fetch  0x00000001 , 0x0000479f 
+ 00786441  0x00009447 nbranch  0x000c000b , 0x00000034 
+ 00786442  0x00009448 jam  0x00000014 , 0x00004b66 
+ 00786443  0x0000944a call  0x000004f5 
+ 00786444  0x0000944b call  0x000003b9 
+ 00786445  0x0000944c branch  0x000041c3 
+ 00786446  0x0000944f fetch  0x00000001 , 0x00004808 
+ 00786447  0x00009450 rtneq  0x00000002 
+ 00786448  0x00009451 increase  0x00000001 , 0x0000003f 
+ 00786449  0x00009452 store  0x00000001 , 0x00004808 
+ 00786450  0x00009453 jam  0x00000012 , 0x000041e3 
+ 00786451  0x00009454 branch  0x0000340e 
+ 00786452  0x00009457 fetch  0x00000001 , 0x00004808 
+ 00786453  0x00009458 rtnne  0x00000002 
+ 00786454  0x00009459 jam  0x00000000 , 0x00004808 
+ 00786455  0x0000945a jam  0x0000000e , 0x000041e3 
+ 00786456  0x0000945b branch  0x0000340e 
+ 00786457  0x0000945e fetch  0x00000001 , 0x0000479f 
+ 00786458  0x0000945f beq  0x00000001 , 0x000c001c 
+ 00786459  0x00009460 branch  0x000c001e 
+ 00786460  0x00009462 call  0x0000042e 
+ 00786461  0x00009463 jam  0x00000005 , 0x000046c6 
+ 00786462  0x00009465 arg  0x00000001 , 0x00000007 
+ 00786463  0x00009466 branch  0x000041b9 
+ 00786464  0x00009469 jam  0x00000000 , 0x00004aff 
+ 00786465  0x0000946a jam  0x00000000 , 0x00004b01 
+ 00786466  0x0000946b jam  0x00000000 , 0x00004b0a 
+ 00786467  0x0000946c branch  0x000041d9 
Index: YDN_1066_227D/output/bt_program23.list
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/output/bt_program23.list	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/output/bt_program23.list	(working copy)
@@ -0,0 +1,31685 @@
+              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_mouse_cb_fuction 
+0x000c 000086 call p_mouse_wakeup_from_power 
+0x000d 000087 call p_mouse_select_device_button_wakeup_check 
+0x000e 000088 branch p_mouse_setting_config 
+:      000090 p_mouse_cb_fuction:
+0x000f 000091 setarg p_mouse_g24_package_data 
+0x0010 000092 store 2 ,mem_cb_24g_data 
+0x0011 000093 setarg p_mouse_le 
+0x0012 000094 store 2 ,mem_cb_le_process 
+0x0013 000095 setarg p_le_mouse_bb_event_connect_complete 
+0x0014 000096 store 2 ,mem_cb_att_write 
+0x0015 000097 setarg p_mouse_bt 
+0x0016 000098 store 2 ,mem_cb_bt_process 
+0x0017 000099 setarg p_mouse_before_lpm 
+0x0018 000100 store 2 ,mem_cb_before_lpm 
+0x0019 000101 setarg p_mouse_priority_bb_event 
+0x001a 000102 store 2 ,mem_cb_bb_event_process 
+0x001b 000103 setarg p_mouse_idle 
+0x001c 000104 store 2 ,mem_cb_idle_process 
+0x001d 000105 setarg p_mouse_before_hibernate 
+0x001e 000106 store 2 ,mem_cb_before_hibernate 
+0x001f 000107 setarg p_mouse_bb_event_timer 
+0x0020 000108 store 2 ,mem_cb_event_timer 
+0x0021 000109 rtn 
+:      000111 p_mouse_wakeup_from_power:
+0x0022 000112 setarg 25 
+0x0023 000113 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+0x0024 000114 ncall p_mouse_24g_transmit_by_interrupt_exit_count_max ,wake 
+0x0025 000115 call p_mouse_init_sunt 
+0x0026 000116 call p_mouse_sensor_powerdown 
+:      000117 p_mouse_wakeup_no_from_power:
+0x0027 000118 fetch 1 ,mem_reconn_times_init 
+0x0028 000119 store 1 ,mem_reconn_times 
+0x0029 000120 rtn 
+:      000121 p_mouse_24g_transmit_by_interrupt_exit_count_max:
+0x002a 000122 setarg 375 
+0x002b 000123 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+0x002c 000124 rtn 
+0x002d 000126 nop 1 
+0x002e 000127 nop 1 
+0x002f 000128 nop 1 
+0x0030 000129 nop 1 
+0x0031 000130 nop 1 
+0x0032 000131 nop 1 
+0x0033 000132 nop 1 
+0x0034 000133 nop 1 
+0x0035 000134 nop 1 
+0x0036 000135 nop 1 
+0x0037 000136 nop 1 
+0x0038 000137 nop 1 
+0x0039 000138 nop 1 
+0x003a 000139 nop 1 
+0x003b 000140 nop 1 
+0x003c 000141 nop 1 
+0x003d 000142 nop 1 
+0x003e 000143 nop 1 
+0x003f 000144 nop 1 
+:      000148 p_patch_array:
+0x0040 000149 bbit1 8 ,pf_patch_ext 
+0x0041 000151 beq patch00_1 ,p_soft_reset_1 
+0x0042 000152 beq patch00_2 ,p_soft_reset_2 
+0x0043 000153 beq patch10_5 ,p_shutdown_radio 
+0x0044 000154 beq patch11_1 ,p_set_freq_tx 
+0x0045 000155 beq patch03_3 ,p_page_wait_fhs_reply_ok 
+0x0046 000156 beq patch04_6 ,p_role_switch_master 
+0x0047 000157 beq patch09_0 ,p_quit_connection_cont 
+0x0048 000158 beq patch09_2 ,p_prepare_tx 
+0x0049 000159 beq patch0a_1 ,p_slave_conn_recv_packet 
+0x004a 000160 beq patch0b_1 ,p_process_dmh 
+0x004b 000161 beq patch14_7 ,p_lpm_dispatch 
+0x004c 000162 beq patch15_5 ,p_lpm_set_mult 
+0x004d 000163 beq patch19_3 ,app_bt_start_reconnect + 3 
+0x004e 000164 beq patch1d_1 ,p_mouse_bb_disconnected 
+0x004f 000165 beq patch14_1 ,p_init_param 
+0x0050 000166 beq patch16_1 ,p_lpm_check_wake_lock 
+0x0051 000167 beq patch16_2 ,p_g24_dispatch 
+0x0052 000168 beq patch18_4 ,p_device_init 
+0x0053 000169 beq patch1c_3 ,p_mouse_seting_dpi 
+0x0054 000170 beq patch1c_6 ,p_mouse_motion 
+0x0055 000171 beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
+0x0056 000172 beq patch1d_3 ,p_mouse_start_discovery 
+0x0057 000173 beq patch1d_4 ,p_mouse_stop_discovery 
+0x0058 000174 branch loop 
+:      000175 pf_patch_ext:
+0x0059 000176 beq patch27_1 ,p_le_slave_match 
+0x005a 000177 beq patch28_3 ,p_le_next_adv_channel 
+0x005b 000178 beq patch29_2 ,p_le_receive_skip 
+0x005c 000179 beq patch2a_7 ,p_le_update_param 
+0x005d 000180 beq patch2b_1 ,p_le_update_channel_map 
+0x005e 000181 beq patch2c_3 ,p_le_prepare_tx 
+0x005f 000182 beq patch2c_6 ,p_le_parse 
+0x0060 000183 beq patch2c_7 ,p_le_parse_l2cap 
+0x0061 000184 beq patch2d_2 ,p_le_adv_not_match 
+0x0062 000185 beq patch2e_7 ,p_le_lpm_setmult 
+0x0063 000186 beq patch20_5 ,p_hid_rx_process 
+0x0064 000187 beq patch30_0 ,p_parse_lmp_accepted 
+0x0065 000188 beq patch30_2 ,p_send_lmp 
+0x0066 000189 beq patch31_0 ,p_process_conn_sm 
+0x0067 000190 beq patch31_4 ,p_twspi_reset 
+0x0068 000191 beq patch31_5 ,p_spid_init 
+0x0069 000192 beq patch3f_2 ,p_check_51cmd_once_continue 
+0x006a 000193 branch loop 
+:      000196 p_rssi_signal:
+0x006b 000197 copy pdata ,rega 
+0x006c 000198 fetcht 1 ,mem_rssi_signal_index 
+0x006d 000199 setarg mem_rssi_signal_buf 
+0x006e 000200 iadd temp ,contw 
+0x006f 000201 copy rega ,pdata 
+0x0070 000202 istore 1 ,contw 
+0x0071 000203 increase 1 ,temp 
+0x0072 000204 and_into rssi_buf_len_signal ,temp 
+0x0073 000205 storet 1 ,mem_rssi_signal_index 
+0x0074 000206 rtn 
+:      000208 p_mouse_select_device_button_wakeup_check:
+0x0075 000209 jam 0 ,mem_mouse_select_device_button_wakeup_flag 
+0x0076 000210 fetcht 1 ,mem_config_select_device_button_gpio 
+0x0077 000211 call gpio_config_input 
+0x0078 000212 fetcht 1 ,mem_config_select_device_button_gpio 
+0x0079 000213 call gpio_get_bit 
+0x007a 000214 nrtn true 
+0x007b 000215 call delay_10ms 
+0x007c 000216 fetcht 1 ,mem_config_select_device_button_gpio 
+0x007d 000217 call gpio_get_bit 
+0x007e 000218 nrtn true 
+0x007f 000219 jam 1 ,mem_mouse_select_device_button_wakeup_flag 
+0x0080 000220 rtn 
+:      000223 p_mouse_switch_hwakeup_bypb:
+0x0081 000224 fetch 1 ,mem_mouse_select_device_button_wakeup_flag 
+0x0082 000225 rtn blank 
+0x0083 000226 call p_mouse_switch_device_flag 
+0x0084 000227 branch p_mouse_store_flash_device_info 
+:      000229 p_soft_reset_1:
+0x0085 000230 arg mem_sp_state ,contw 
+0x0086 000231 arg 12 ,loopcnt 
+0x0087 000232 call clear_mem 
+0x0088 000233 call p_mouse_le_txbuff_load 
+0x0089 000234 call rfcomm_init 
+0x008a 000235 call init_lmp 
+0x008b 000236 ncall lpm_disable_exen_output ,wake 
+0x008c 000237 call ui_init + 1 
+0x008d 000238 branch soft_reset + 11 
+:      000240 p_soft_reset_2:
+0x008e 000241 call app_lpm_init ,wake 
+0x008f 000242 call publickey_init 
+0x0090 000243 call lpm_recover_clk ,wake 
+:      000244 p_sp_cal_loop:
+0x0091 000245 call sp_calc_sequence 
+0x0092 000246 fetch 1 ,mem_ssp_enable 
+0x0093 000247 branch main_loop ,blank 
+0x0094 000248 fetch 1 ,mem_sp_local_key_invalid 
+0x0095 000249 branch p_sp_cal_loop ,blank 
+0x0096 000250 branch main_loop 
+:      000252 p_init_param:
+0x0097 000253 setarg param_le_version 
+0x0098 000254 store 3 ,mem_lmp_version 
+0x0099 000255 setarg param_le_subversion 
+0x009a 000256 store 2 ,mem_lmp_version + 3 
+0x009b 000257 branch init_param + 12 
+:      000259 p_lpm_check_wake_lock:
+0x009c 000260 rtnmark1 mark_24g 
+0x009d 000261 fetch 1 ,mem_mouse_multi_led_state 
+0x009e 000262 nbranch disable_blank ,blank 
+0x009f 000263 fetch 1 ,mem_mouse_multi_led_blink_count 
+0x00a0 000264 nbranch disable_blank ,blank 
+0x00a1 000265 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0x00a2 000266 branch disable_blank ,blank 
+0x00a3 000267 fetch 1 ,mem_mouse_le_conn_param_reject 
+0x00a4 000268 beq le_lpm_disable ,disable_blank 
+0x00a5 000269 fetch 2 ,mem_sdp_remote_cid 
+0x00a6 000270 nbranch disable_blank ,blank 
+0x00a7 000271 fetch 1 ,mem_mouse_wheel_trigger 
+0x00a8 000272 nbranch disable_blank ,blank 
+0x00a9 000273 branch enable_blank 
+:      000276 p_g24_dispatch:
+0x00aa 000277 rtnmark0 mark_24g 
+0x00ab 000278 fetch 1 ,mem_24g_transmit_by_interrupt 
+0x00ac 000279 beq g24_tx_timer_int_enable ,p_g24_transmit_by_interrupt 
+:      000280 p_g24_transmit_process:
+0x00ad 000281 call p_g24_txdata_prep 
+0x00ae 000282 nbranch p_g24_nodata_transmit ,user 
+0x00af 000283 call p_g24_rf_sta_check 
+:      000284 p_g24_transmit_start:
+0x00b0 000285 call p_g24_transmit_packet 
+0x00b1 000286 fetch 1 ,mem_24g_pairing_sm 
+0x00b2 000287 rtnne state_24g_pairing_success 
+0x00b3 000288 call power_ctrl_start 
+0x00b4 000289 call g24_long_sleep_shorter_param_update 
+0x00b5 000290 fetch 1 ,mem_mouse_multi_led_state 
+0x00b6 000291 beq on ,p_g24_transmit_by_interrupt_enable 
+:      000292 p_g24_short_sleep:
+0x00b7 000293 call p_g24_lpm_wait 
+0x00b8 000294 nrtn user 
+0x00b9 000295 call p_clear_wake 
+0x00ba 000296 setarg 60500 
+0x00bb 000297 branch lpm_dispatch_sleep 
+:      000299 g24_long_sleep_shorter_param_update:
+0x00bc 000302 setarg g24_long_sleep_step1 
+0x00bd 000303 store 3 ,mem_24g_enter_hibernate 
+0x00be 000304 jam 20 ,mem_24g_long_sleep_param_update_timer 
+0x00bf 000305 rtn 
+:      000307 p_g24_transmit_by_interrupt:
+0x00c0 000308 call p_g24_timer_check 
+0x00c1 000309 nrtn user 
+0x00c2 000310 call p_g24_interval_calibrate 
+0x00c3 000311 fetch 2 ,mem_24g_transmit_by_interrupt_exit_count 
+0x00c4 000312 increase 1 ,pdata 
+0x00c5 000313 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+0x00c6 000314 fetcht 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+0x00c7 000315 isub temp ,null 
+0x00c8 000316 call p_g24_transmit_by_interrupt_exit ,zero 
+0x00c9 000317 branch p_g24_transmit_process 
+:      000318 p_g24_transmit_by_interrupt_exit:
+0x00ca 000319 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
+0x00cb 000320 setarg 0 
+0x00cc 000321 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+0x00cd 000322 setarg 25 
+0x00ce 000323 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+:      000324 p_g24_interval_min:
+0x00cf 000325 jam 0 ,mem_24g_pac_index 
+0x00d0 000326 fetch 1 ,mem_24g_interval_min 
+:      000327 p_g24_current_interval_store:
+0x00d1 000328 store 1 ,mem_24g_interval 
+0x00d2 000329 rtn 
+:      000330 p_g24_interval_max:
+0x00d3 000331 fetch 1 ,mem_24g_interval_max 
+0x00d4 000332 branch p_g24_current_interval_store 
+:      000333 p_g24_interval_calibrate:
+0x00d5 000334 fetch 1 ,mem_24g_pac_index 
+0x00d6 000335 increase 1 ,pdata 
+0x00d7 000336 store 1 ,mem_24g_pac_index 
+0x00d8 000337 beq 4 ,p_g24_interval_max 
+0x00d9 000338 beq 5 ,p_g24_interval_min 
+0x00da 000339 rtn 
+:      000341 p_g24_nodata_transmit:
+0x00db 000342 fetch 1 ,mem_24g_abort_pac 
+0x00dc 000343 call p_g24_send_abort_packet ,blank 
+0x00dd 000344 fetch 1 ,mem_mouse_multi_led_blink_count 
+0x00de 000345 nrtn blank 
+0x00df 000346 fetch 1 ,mem_mouse_multi_led_state 
+0x00e0 000347 rtneq on 
+:      000348 p_g24_long_sleep:
+0x00e1 000349 call p_g24_lpm_wait 
+0x00e2 000350 nrtn user 
+0x00e3 000351 fetch 3 ,mem_24g_enter_hibernate 
+0x00e4 000352 call clk2lpo 
+0x00e5 000353 storet 4 ,mem_sleep_counter 
+0x00e6 000354 branch lpm_sleep 
+:      000356 p_g24_lpm_wait:
+0x00e7 000357 enable user 
+0x00e8 000358 call lpo_calibration 
+0x00e9 000359 fetch 3 ,mem_clks_per_lpo 
+0x00ea 000360 branch disable_user ,blank 
+0x00eb 000361 fetch 1 ,mem_lpm_mode 
+0x00ec 000362 branch disable_user ,blank 
+0x00ed 000363 fetch 1 ,mem_24g_transmit_by_interrupt 
+0x00ee 000364 beq g24_tx_timer_int_enable ,disable_user 
+0x00ef 000365 branch p_mouse_setgpio_lpm 
+:      000367 p_g24_send_abort_packet:
+0x00f0 000368 jam 1 ,mem_24g_abort_pac 
+0x00f1 000369 jam 0 ,mem_24g_rf_hop_ch 
+0x00f2 000370 call p_g24_transmit_rf_ctrl_clear 
+0x00f3 000371 store 1 ,mem_24g_txbuf 
+0x00f4 000372 setarg 0 
+0x00f5 000373 store 7 ,mem_24g_txbuf + 1 
+0x00f6 000374 fetch 4 ,mem_24g_device_addr 
+0x00f7 000375 store 4 ,mem_24g_txbuf + 8 
+0x00f8 000376 jam 12 ,mem_24g_datalen 
+0x00f9 000377 fetch 1 ,mem_24g_data_type 
+0x00fa 000378 set1 bit_abort ,pdata 
+0x00fb 000379 store 1 ,mem_24g_data_type 
+0x00fc 000380 call p_g24_txdata_enable_tx 
+0x00fd 000381 branch p_g24_transmit_start 
+:      000383 p_g24_set_device_addr:
+0x00fe 000384 fetch 4 ,mem_lap 
+0x00ff 000385 store 4 ,mem_24g_device_addr 
+0x0100 000386 rtn 
+:      000388 p_g24_transmit_rf_sta_init:
+0x0101 000389 jam 1 ,mem_24g_rf_last_sta 
+0x0102 000390 jam 0 ,mem_24g_sync_cnt 
+:      000391 p_g24_transmit_rf_ctrl_clear:
+0x0103 000392 fetch 1 ,mem_24g_data_type 
+0x0104 000393 and_into bits_data ,pdata 
+0x0105 000394 store 1 ,mem_24g_data_type 
+0x0106 000395 rtn 
+:      000397 p_g24_hop_ch_enable:
+0x0107 000398 fetch 1 ,mem_24g_data_type 
+0x0108 000399 set1 bit_hop ,pdata 
+0x0109 000400 store 1 ,mem_24g_data_type 
+0x010a 000402 store 1 ,mem_24g_txpayload 
+0x010b 000403 rtn 
+:      000404 p_g24_hop_ch_disable:
+0x010c 000405 fetch 1 ,mem_24g_data_type 
+0x010d 000406 set0 bit_hop ,pdata 
+0x010e 000407 store 1 ,mem_24g_data_type 
+0x010f 000408 store 1 ,mem_24g_txpayload 
+0x0110 000409 call power_ctrl_pac_succ_decrs 
+0x0111 000410 branch p_g24_ch 
+:      000438 p_g24_rf_hop_attemp_again:
+0x0112 000439 fetch 1 ,mem_24g_rf_hop_ch 
+0x0113 000440 bne 1 ,p_g24_transmit_rf_ctrl_clear 
+:      000441 p_g24_rf_hop_fastly:
+0x0114 000442 fetch 1 ,mem_24g_hop_fastly_cnt 
+0x0115 000443 increase 1 ,pdata 
+0x0116 000444 store 1 ,mem_24g_hop_fastly_cnt 
+0x0117 000445 beq 4 ,p_g24_rf_hop_fastly_exit 
+0x0118 000446 call p_g24_ch 
+0x0119 000447 jam 2 ,mem_24g_max_retry 
+0x011a 000448 branch p_g24_transmit_packet 
+:      000450 p_g24_rf_hop_fastly_exit:
+0x011b 000451 call power_ctrl_pac_succ_decrs 
+0x011c 000452 jam 0 ,mem_24g_hop_fastly_cnt 
+0x011d 000453 branch p_g24_transmit_rf_ctrl_clear 
+:      000455 p_g24_transmit_hop_pac_succ_wo_hop:
+0x011e 000456 jam 2 ,mem_24g_sync_cnt 
+:      000457 p_g24_transmit_hop_pac_succ:
+0x011f 000458 jam 1 ,mem_24g_rf_last_sta 
+0x0120 000459 jam 0 ,mem_24g_rf_hop_ch 
+0x0121 000460 branch p_g24_transmit_rf_ctrl_clear 
+:      000462 p_g24_transmit_succ_rf_config:
+0x0122 000463 fetch 1 ,mem_24g_rf_work_stage 
+0x0123 000464 beq 3 ,p_g24_transmit_hop_pac_succ 
+0x0124 000465 fetch 1 ,mem_24g_data_type 
+0x0125 000466 isolate0 bit_hop ,pdata 
+0x0126 000467 branch p_g24_transmit_rf_sta_init ,true 
+0x0127 000468 fetch 1 ,mem_24g_rf_work_stage 
+0x0128 000469 beq 1 ,p_g24_transmit_hop_pac_succ_wo_hop 
+0x0129 000470 beq 2 ,p_g24_transmit_hop_pac_succ 
+0x012a 000471 rtn 
+:      000473 p_g24_rf_sta_check:
+0x012b 000474 fetch 1 ,mem_24g_pairing_sm 
+0x012c 000475 rtnne state_24g_pairing_success 
+0x012d 000476 call p_g24_rf_laststa_synccnt_check 
+0x012e 000477 ncall p_g24_rf_sync_cnt_check ,user2 
+0x012f 000478 rtn 
+:      000480 p_g24_rf_laststa_synccnt_check:
+0x0130 000481 disable user2 
+0x0131 000482 fetch 1 ,mem_24g_rf_last_sta 
+0x0132 000483 rtnne 1 
+0x0133 000484 fetch 1 ,mem_24g_sync_cnt 
+0x0134 000485 rtnne 0 
+0x0135 000486 jam 1 ,mem_24g_rf_work_stage 
+0x0136 000487 jam 4 ,mem_24g_max_retry 
+0x0137 000488 branch enable_user2 
+:      000490 p_g24_rf_sync_cnt_check:
+0x0138 000491 fetch 1 ,mem_24g_sync_cnt 
+0x0139 000492 branch p_g24_rf_hop_attemp ,blank 
+0x013a 000493 increase -1 ,pdata 
+0x013b 000494 store 1 ,mem_24g_sync_cnt 
+0x013c 000495 jam 2 ,mem_24g_rf_work_stage 
+0x013d 000496 jam 4 ,mem_24g_max_retry 
+0x013e 000497 branch p_g24_ch 
+:      000499 p_g24_rf_hop_attemp:
+0x013f 000500 jam 3 ,mem_24g_rf_work_stage 
+0x0140 000501 fetch 1 ,mem_24g_rf_hop_ch 
+0x0141 000502 nbranch p_g24_rf_hop_attemp_again ,blank 
+0x0142 000503 jam 2 ,mem_24g_max_retry 
+0x0143 000504 branch p_g24_ch 
+:      000506 p_g24_txdata_prep:
+0x0144 000507 fetch 1 ,mem_24g_pairing_sm 
+0x0145 000508 bne state_24g_pairing_success ,p_g24_pairing_sm 
+:      000509 p_g24_txdata_prep_packeage_data:
+0x0146 000510 call p_g24_package_data 
+:      000511 p_g24_txdata_enable_tx:
+0x0147 000512 call p_g24_transmit_prep 
+0x0148 000513 jam ensure_on_24g ,mem_24g_ensure 
+0x0149 000514 rtn 
+:      000516 p_g24_package_data:
+0x014a 000517 fetch 2 ,mem_cb_24g_data 
+0x014b 000518 call callback_func 
+0x014c 000519 branch p_g24_accumulate_mouse_data ,user 
+0x014d 000520 fetch 7 ,mem_24g_txbuf + 1 
+0x014e 000521 rtn blank 
+0x014f 000522 branch enable_user 
+:      000523 p_g24_accumulate_mouse_data:
+0x0150 000524 call p_mouse_data_xy_release 
+0x0151 000525 jam 0 ,mem_24g_abort_pac 
+0x0152 000526 add rega ,1 ,pdata 
+0x0153 000527 store 1 ,mem_24g_datalen 
+0x0154 000528 call p_g24_transmit_rf_ctrl_clear 
+0x0155 000529 store 1 ,mem_24g_txbuf 
+0x0156 000530 ifetcht 1 ,contw 
+0x0157 000531 ifetch 1 ,regb 
+0x0158 000532 ior temp ,pdata 
+0x0159 000533 istore 1 ,contw 
+0x015a 000534 increase 1 ,regb 
+0x015b 000535 ifetch 4 ,regb 
+0x015c 000536 istore 4 ,contw 
+0x015d 000537 increase 4 ,regb 
+0x015e 000538 arg mem_24g_txbuf + 6 ,contw 
+0x015f 000539 arg 2 ,loopcnt 
+:      000540 p_g24_accumulation_loop:
+0x0160 000541 ifetch 1 ,regb 
+0x0161 000542 ifetcht 1 ,contw 
+0x0162 000543 iadd temp ,pdata 
+0x0163 000544 istore 1 ,contw 
+0x0164 000545 increase 1 ,regb 
+0x0165 000546 loop p_g24_accumulation_loop 
+0x0166 000547 rtn 
+:      000549 p_g24_transmit_packet:
+0x0167 000550 jam 0 ,mem_24g_retry 
+:      000551 p_g24_transmit_loop:
+0x0168 000552 arg param_rx_setup ,timeup 
+0x0169 000553 until clkn_rt ,meet 
+0x016a 000554 call p_g24_transmit_receive_ack 
+0x016b 000555 fetch 1 ,mem_24g_no_ack 
+0x016c 000556 rtneq no_ack_24g 
+0x016d 000557 nbranch p_g24_retransmit ,sync 
+0x016e 000558 nbranch p_g24_retransmit ,user3 
+0x016f 000559 call p_g24_txbuf_clear 
+0x0170 000560 call p_g24_ackpayload_parse 
+0x0171 000561 call power_ctrl_pac_succ_incrs 
+:      000562 p_g24_transmit_next_packet:
+0x0172 000563 fetch 1 ,mem_24g_pid 
+0x0173 000564 increase 1 ,pdata 
+0x0174 000565 store 1 ,mem_24g_pid 
+0x0175 000566 call p_g24_hop_enable_packet 
+0x0176 000567 fetch 1 ,mem_24g_pairing_sm 
+0x0177 000568 bne state_24g_pairing_success ,p_g24_paring_mode_start 
+0x0178 000569 call p_g24_transmit_succ_rf_config 
+:      000570 p_g24_transmit_abandon:
+0x0179 000571 setarg 0 
+0x017a 000572 store 2 ,mem_24g_txfail_cnt 
+0x017b 000573 store 1 ,mem_24g_get_ack_fail 
+0x017c 000574 store 1 ,mem_24g_hop_pac_retry 
+0x017d 000575 jam ensure_off_24g ,mem_24g_ensure 
+0x017e 000576 rtn 
+:      000578 p_g24_txbuf_clear:
+0x017f 000579 arg 4 ,loopcnt 
+0x0180 000580 arg mem_24g_txbuf ,contw 
+0x0181 000581 branch memset0 
+:      000583 p_g24_hop_enable_packet:
+0x0182 000584 fetch 1 ,mem_24g_data_type 
+0x0183 000585 bbit1 bit_hop ,p_g24_hop_ch_disable 
+0x0184 000586 rtn 
+:      000588 p_g24_transmit_receive_ack:
+0x0185 000589 disable user3 
+0x0186 000590 call p_g24_transmit 
+0x0187 000593 fetch 1 ,mem_24g_no_ack 
+0x0188 000594 beq no_ack_24g ,p_g24_transmit_no_ack 
+0x0189 000595 force 0 ,radio_ctrl 
+0x018a 000596 fetch 4 ,mem_24g_addr 
+0x018b 000597 iforce access 
+0x018c 000598 fetcht 1 ,mem_last_freq 
+0x018d 000599 call set_freq_rx 
+0x018e 000600 call rf_rx_enable 
+0x018f 000601 call p_g24_receive_rxon 
+0x0190 000602 call p_g24_end_of_packet ,user3 
+0x0191 000603 rtn 
+:      000604 p_g24_transmit_no_ack:
+0x0192 000605 call p_g24_end_of_packet 
+0x0193 000606 branch p_g24_transmit_next_packet 
+:      000608 p_g24_retransmit:
+0x0194 000609 fetch 2 ,mem_24g_txfail_cnt 
+0x0195 000610 increase 1 ,pdata 
+0x0196 000611 store 2 ,mem_24g_txfail_cnt 
+0x0197 000612 fetch 1 ,mem_24g_txfail_cnt + 1 
+0x0198 000613 bbit1 4 ,g24_stop_24g_mode 
+0x0199 000615 fetch 1 ,mem_24g_pairing_sm 
+0x019a 000616 bne state_24g_pairing_success ,p_g24_tx_paring_retry 
+0x019b 000618 call p_g24_tx_hop_ch_process 
+0x019c 000619 branch p_g24_transmit_loop 
+:      000621 p_g24_tx_paring_retry:
+0x019d 000622 fetch 1 ,mem_24g_txfail_cnt 
+0x019e 000623 rtnne 0xff 
+:      000624 p_g24_tx_attempt_fail:
+0x019f 000625 setarg 0 
+0x01a0 000626 store 2 ,mem_24g_txfail_cnt 
+0x01a1 000627 branch g24_stop_24g_mode 
+:      000630 p_g24_tx_fast_hop:
+0x01a2 000631 call power_ctrl_txpower_incrs 
+0x01a3 000632 call power_ctrl_pac_succ_decrs 
+0x01a4 000633 branch p_g24_ch 
+:      000635 p_g24_tx_hop_ch_process:
+0x01a5 000636 fetch 1 ,mem_24g_retry 
+0x01a6 000637 sub pdata ,11 ,null 
+0x01a7 000638 nbranch p_g24_tx_fast_hop ,positive 
+0x01a8 000639 increase 1 ,pdata 
+0x01a9 000640 store 1 ,mem_24g_retry 
+0x01aa 000641 beq 2 ,p_g24_hop_ch_enable 
+0x01ab 000642 beq 6 ,p_g24_hop_ch_disable 
+0x01ac 000643 beq 8 ,p_g24_hop_ch_enable 
+0x01ad 000644 beq 12 ,p_g24_hop_ch_disable 
+0x01ae 000645 rtn 
+:      000647 p_g24_ackpayload_parse:
+0x01af 000648 call p_g24_read_len_pid_crc 
+0x01b0 000649 fetch 1 ,mem_24g_rxdata_length 
+0x01b1 000650 rtn blank 
+0x01b2 000651 iforce loopcnt 
+0x01b3 000652 arg mem_24g_rxbuf + 2 ,contr 
+0x01b4 000653 arg mem_24g_rxpayload ,contw 
+0x01b5 000654 branch memcpy 
+:      000656 p_g24_pairing_sm:
+0x01b6 000657 jam zcode_90 ,mem_zcode_temp_param0 
+0x01b7 000658 branch p_zcode_entrance 
+:      000660 p_g24_paring_mode_start:
+0x01b8 000661 call power_ctrl_pac_succ_cnt_init 
+:      000662 p_g24_paring_mode:
+0x01b9 000663 jam zcode_91 ,mem_zcode_temp_param0 
+0x01ba 000664 branch p_zcode_entrance 
+:      000666 p_g24_start_24g_mode:
+0x01bb 000667 jam zcode_60 ,mem_zcode_temp_param0 
+0x01bc 000668 branch p_zcode_entrance 
+:      000670 p_g24_auto_pair_start:
+0x01bd 000671 jam 0 ,mem_mouse_long_button_select_device 
+0x01be 000672 jam zcode_70 ,mem_zcode_temp_param0 
+0x01bf 000673 branch p_zcode_entrance 
+:      000675 p_g24_check_51cmd_stop_24g:
+0x01c0 000676 set0 mark_24g ,mark 
+0x01c1 000677 call le_disable 
+:      000678 p_mouse_disable_g24_pairing_flag:
+0x01c2 000679 arg mosue_24g_pairing_flag ,queue 
+0x01c3 000680 branch mouse_disable_function_flag 
+:      000682 p_g24_put_data_in_buff:
+0x01c4 000683 storet 1 ,mem_24g_datalen 
+0x01c5 000684 copy temp ,loopcnt 
+0x01c6 000685 arg mem_24g_txbuf ,contw 
+0x01c7 000686 copy rega ,contr 
+0x01c8 000687 branch memcpy 
+:      000689 p_g24_read_len_pid_crc:
+0x01c9 000691 fetch 1 ,mem_24g_rxbuf + 1 
+0x01ca 000692 rshift3 pdata ,pdata 
+0x01cb 000693 store 1 ,mem_24g_rxdata_length 
+0x01cc 000695 increase 1 ,pdata 
+0x01cd 000696 arg mem_24g_rxbuf + 1 ,contr 
+0x01ce 000697 iadd contr ,contr 
+0x01cf 000698 ifetch 3 ,contr 
+0x01d0 000699 store 3 ,mem_24g_sta_crc 
+0x01d1 000701 fetch 1 ,mem_24g_rxbuf + 1 
+0x01d2 000702 rshift pdata ,pdata 
+0x01d3 000703 and pdata ,0x03 ,pdata 
+0x01d4 000704 store 1 ,mem_24g_sta_pid 
+0x01d5 000705 rtn 
+:      000707 p_g24_update_addr_and_synccrc8:
+0x01d6 000708 store 4 ,mem_24g_addr 
+:      000710 p_g24_syncword_crc8:
+0x01d7 000711 arg 0 ,rega 
+0x01d8 000712 arg 4 ,loopcnt 
+0x01d9 000713 arg mem_24g_addr ,contr 
+:      000714 p_g24_syncword_crc8_loop:
+0x01da 000715 ifetch 1 ,contr 
+0x01db 000716 iadd rega ,rega 
+0x01dc 000717 loop p_g24_syncword_crc8_loop 
+0x01dd 000718 copy rega ,pdata 
+0x01de 000719 store 2 ,mem_24g_syncword 
+0x01df 000720 fetch 1 ,mem_24g_syncword 
+0x01e0 000721 fetcht 1 ,mem_24g_syncword + 1 
+0x01e1 000722 iadd temp ,pdata 
+0x01e2 000723 store 1 ,mem_24g_syncword_crc8 
+0x01e3 000724 rtn 
+:      000726 p_g24_transmit_prep:
+0x01e4 000729 fetch 1 ,mem_24g_datalen 
+0x01e5 000730 increase 2 ,pdata 
+0x01e6 000731 store 1 ,mem_24g_txlen 
+0x01e7 000733 fetch 1 ,mem_24g_data_type 
+0x01e8 000734 store 1 ,mem_24g_txpayload 
+0x01e9 000736 fetch 1 ,mem_24g_datalen 
+0x01ea 000737 lshift3 pdata ,pdata 
+0x01eb 000738 fetcht 1 ,mem_24g_pid 
+0x01ec 000739 and temp ,0x03 ,temp 
+0x01ed 000740 lshift temp ,temp 
+0x01ee 000741 ior temp ,pdata 
+0x01ef 000742 fetcht 1 ,mem_24g_no_ack 
+0x01f0 000743 iadd temp ,pdata 
+0x01f1 000744 istore 1 ,contw 
+0x01f2 000746 fetch 1 ,mem_24g_datalen 
+0x01f3 000747 iforce loopcnt 
+0x01f4 000748 arg mem_24g_txbuf ,contr 
+0x01f5 000749 branch memcpy 
+:      000751 p_g24_ch:
+0x01f6 000752 fetcht 1 ,mem_24g_current_ch_number 
+0x01f7 000753 call p_g24_ch_map_size 
+0x01f8 000754 storet 1 ,mem_24g_current_ch_number 
+0x01f9 000755 rtn 
+:      000757 p_g24_ch_map_size:
+0x01fa 000758 call p_g24_ch_calc 
+0x01fb 000759 increase 1 ,temp 
+0x01fc 000760 and_into 3 ,temp 
+0x01fd 000761 rtn 
+:      000763 p_g24_ch_calc:
+0x01fe 000764 fetch 1 ,mem_24g_addr 
+0x01ff 000765 and_into 0x03 ,pdata 
+0x0200 000766 mul32 pdata ,4 ,rega 
+0x0201 000767 setarg mem_24g_ch_map1 
+0x0202 000768 iadd rega ,pdata 
+0x0203 000769 iadd temp ,contr 
+0x0204 000770 ifetch 1 ,contr 
+0x0205 000771 store 1 ,mem_24g_ch 
+0x0206 000772 rtn 
+:      000774 p_g24_prep:
+0x0207 000775 disable enable_crc 
+0x0208 000776 disable enable_white 
+0x0209 000777 setarg 0x555555 
+0x020a 000778 iforce crc24_init 
+0x020b 000779 fetch 1 ,mem_24g_ch 
+0x020c 000780 reverse pdata ,temp 
+0x020d 000781 set1 1 ,temp 
+0x020e 000782 rshift temp ,white_init 
+0x020f 000783 rtn 
+:      000785 p_g24_receive_packet:
+0x0210 000786 call le_enable 
+0x0211 000787 fetch 4 ,mem_24g_addr 
+0x0212 000788 iforce access 
+0x0213 000789 call set_sync_on 
+0x0214 000790 fetcht 1 ,mem_24g_ch 
+0x0215 000791 call set_freq_rx 
+0x0216 000792 setarg param_pll_setup 
+0x0217 000793 call sleep 
+0x0218 000794 call rf_rx_enable 
+:      000795 p_g24_receive_rxon:
+0x0219 000798 call p_g24_prep 
+0x021a 000799 disable user3 
+0x021b 000800 enable decode_fec0 
+0x021c 000801 enable is_rx 
+0x021d 000802 disable is_tx 
+0x021e 000803 enable swfine 
+0x021f 000804 fetch 2 ,mem_24g_rx_window 
+0x0220 000805 iforce stop_watch 
+0x0221 000806 correlate null ,timeout 
+0x0222 000807 nbranch p_g24_sync_timeout ,sync 
+0x0223 000810 disable decode_fec0 
+0x0224 000811 enable decode_fec1 
+0x0225 000812 enable enable_white 
+0x0226 000813 enable enable_crc 
+0x0227 000814 call p_g24_receive_byte 
+0x0228 000815 store 1 ,mem_24g_get_syncword_crc8 
+0x0229 000816 fetcht 1 ,mem_24g_syncword_crc8 
+0x022a 000817 isub temp ,null 
+0x022b 000818 nbranch p_g24_end_of_packet ,zero 
+0x022c 000819 call p_g24_receive_byte 
+0x022d 000820 store 1 ,mem_24g_rxbuf 
+0x022e 000821 fetch 1 ,mem_24g_mode 
+0x022f 000822 sub pdata ,rx_24g ,null 
+0x0230 000823 branch p_g24_receive_skip ,zero 
+0x0231 000824 fetch 1 ,mem_24g_rxbuf 
+0x0232 000825 fetcht 1 ,mem_24g_data_type 
+0x0233 000826 icompare bits_data ,temp 
+0x0234 000827 nbranch p_g24_end_of_packet ,true 
+:      000828 p_g24_receive_skip:
+0x0235 000829 call p_g24_receive_byte 
+0x0236 000830 istore 1 ,contw 
+0x0237 000831 rshift3 pdata ,pdata 
+0x0238 000832 and pdata ,0x1f ,loopcnt 
+0x0239 000833 branch p_g24rx_nopayload ,zero 
+:      000834 p_g24rx_loop:
+0x023a 000835 call p_g24_receive_byte 
+0x023b 000836 istore 1 ,contw 
+0x023c 000837 loop p_g24rx_loop 
+:      000838 p_g24rx_nopayload:
+0x023d 000840 copy contw ,rega 
+0x023e 000841 call p_g24_receive_byte 
+0x023f 000842 store 1 ,mem_rssi_hex_received 
+0x0240 000843 copy rega ,contw 
+0x0241 000844 parse demod ,bucket ,24 
+0x0242 000845 enable swfine 
+0x0243 000846 arg param_sifs ,stop_watch 
+0x0244 000847 rshift32 pdata ,pdata 
+0x0245 000848 rshift16 pdata ,pdata 
+0x0246 000849 istore 3 ,contw 
+0x0247 000850 disable decode_fec1 
+0x0248 000851 branch p_g24_end_of_packet ,crc_failed 
+0x0249 000854 enable user3 
+0x024a 000855 fetch 1 ,mem_last_freq 
+0x024b 000856 add pdata ,0 ,rega 
+0x024c 000857 call rf_write_freq 
+0x024d 000858 disable decode_fec0 
+0x024e 000859 call set_sync_on 
+0x024f 000860 fetch 1 ,mem_rssi_hex_received 
+0x0250 000861 call p_rssi_signal 
+0x0251 000862 rtn 
+:      000864 p_g24_receive_byte:
+0x0252 000865 parse demod ,bucket ,8 
+0x0253 000866 rshift3 pwindow ,pdata 
+0x0254 000867 rtn 
+:      000869 p_g24_end_of_packet:
+0x0255 000870 disable encode_fec1 
+0x0256 000871 disable decode_fec1 
+0x0257 000872 call end_of_packet 
+0x0258 000873 rtn 
+:      000875 p_g24_sync_timeout:
+0x0259 000876 branch p_g24_end_of_packet 
+:      000878 p_g24_set_freq_tx:
+0x025a 000879 call set_sync_on 
+0x025b 000880 fetcht 1 ,mem_24g_ch 
+0x025c 000881 branch set_freq_tx 
+:      000883 p_g24_transmit:
+0x025d 000884 call le_enable 
+0x025e 000885 fetch 4 ,mem_24g_addr 
+0x025f 000886 iforce access 
+0x0260 000887 call p_g24_prep 
+0x0261 000888 call p_g24_set_freq_tx 
+0x0262 000889 set1 txgfsk ,radio_ctrl 
+0x0263 000890 enable encode_fec0 
+0x0264 000891 enable is_tx 
+0x0265 000892 disable is_rx 
+0x0266 000895 rshift16 access ,pdata 
+0x0267 000896 rshift8 pdata ,pdata 
+0x0268 000897 rshift4 pdata ,pdata 
+0x0269 000898 inject mod ,40 
+0x026a 000899 disable encode_fec0 
+0x026b 000900 enable encode_fec1 
+0x026c 000901 enable enable_white 
+0x026d 000902 enable enable_crc 
+0x026e 000903 fetch 1 ,mem_24g_syncword_crc8 
+0x026f 000904 inject mod ,8 
+0x0270 000905 fetch 1 ,mem_24g_txlen 
+0x0271 000906 iforce loopcnt 
+0x0272 000907 arg mem_24g_txpayload ,contr 
+:      000908 p_g24tr_loop:
+0x0273 000909 ifetch 1 ,contr 
+0x0274 000910 inject mod ,8 
+0x0275 000911 loop p_g24tr_loop 
+0x0276 000914 enable enable_parity 
+0x0277 000915 inject mod ,24 
+0x0278 000916 disable enable_parity 
+0x0279 000917 until null ,tx_clear 
+0x027a 000918 nop 100 
+0x027b 000919 disable encode_fec0 
+0x027c 000920 disable encode_fec1 
+0x027d 000921 rtn 
+:      000923 p_g24_timer_check:
+0x027e 000924 call disable_user 
+0x027f 000925 fetcht 4 ,mem_24g_tx_btclk 
+0x0280 000926 copy clkn_bt ,pdata 
+0x0281 000927 isub temp ,null 
+0x0282 000928 ncall g24_timer_timeout ,positive 
+0x0283 000929 copy pdata ,regb 
+0x0284 000930 fetch 4 ,mem_24g_tx_btclk 
+0x0285 000931 fetcht 1 ,mem_24g_interval 
+0x0286 000932 iadd temp ,temp 
+0x0287 000933 copy regb ,pdata 
+0x0288 000934 isub temp ,null 
+0x0289 000935 nrtn positive 
+0x028a 000936 set0 28 ,pdata 
+0x028b 000937 store 4 ,mem_24g_tx_btclk 
+0x028c 000938 branch enable_user 
+:      000962 p_rssi_average:
+0x028d 000963 arg 0 ,temp 
+0x028e 000964 arg rssi_buf_len_signal + 1 ,loopcnt 
+0x028f 000965 copy rega ,contr 
+:      000966 p_rssi_average_loop:
+0x0290 000967 ifetch 1 ,contr 
+0x0291 000968 iadd temp ,temp 
+0x0292 000969 loop p_rssi_average_loop 
+0x0293 000970 rshift3 temp ,pdata 
+0x0294 000971 copy pdata ,temp 
+0x0295 000972 rtnmark0 mark_24g 
+0x0296 000974 div pdata ,10 
+0x0297 000975 call wait_div_end 
+0x0298 000976 quotient pdata 
+0x0299 000977 lshift4 pdata ,pdata 
+0x029a 000978 remainder temp 
+0x029b 000979 ior temp ,temp 
+0x029c 000980 rtn 
+0x029d 000981 rtn 
+:      000984 p_mouse_before_lpm:
+0x029e 000985 rtnmark1 mark_24g 
+0x029f 000986 call p_mouse_le_txbuff_save 
+0x02a0 000987 call p_mouse_setgpio_lpm 
+0x02a1 000988 fetch 1 ,mem_context 
+0x02a2 000989 bbit0 state_inconn ,p_clear_wake 
+0x02a3 000990 fetch 1 ,mem_lpm_current_mult 
+0x02a4 000991 nrtn blank 
+:      000992 p_clear_wake:
+0x02a5 000993 setarg 0 
+0x02a6 000994 store 8 ,mem_gpio_wakeup_low 
+0x02a7 000995 rtn 
+:      000997 p_mouse_setgpio_lpm:
+0x02a8 000998 call p_mouse_set_sdio_high 
+0x02a9 000999 call p_clear_wake 
+:      001000 p_mouse_setgpio_hibernate:
+0x02aa 001001 call mouse_lpm_before_common 
+0x02ab 001002 call p_flash_ncs_disable 
+0x02ac 001003 hfetch 4 ,core_gpio_oe0 
+0x02ad 001004 hfetcht 4 ,core_gpio_pu0 
+0x02ae 001005 ior temp ,temp 
+0x02af 001006 invert temp ,temp 
+0x02b0 001007 hstoret 4 ,core_gpio_pd0 
+0x02b1 001008 hfetch 1 ,core_gpio_pd1 
+0x02b2 001009 set0 2 ,pdata 
+0x02b3 001010 hstore 1 ,core_gpio_pd1 
+0x02b4 001011 hfetch 1 ,core_gpio_pd2 
+0x02b5 001012 set0 6 ,pdata 
+0x02b6 001013 hstore 1 ,core_gpio_pd2 
+:      001014 p_mouse_multi_led_gpio_set_float:
+0x02b7 001015 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x02b8 001016 set0 gpio_active_bit ,temp 
+0x02b9 001017 branch gpio_set_high_impedance 
+:      001019 p_mouse_set_sdio_high:
+0x02ba 001020 fetch 1 ,mem_mouse_init_sensor_reset_flag 
+0x02bb 001021 rtn blank 
+0x02bc 001022 branch p_mouse_seting_sensor_type 
+:      001024 p_device_init:
+0x02bd 001025 call app_lpm_mult_enable 
+0x02be 001026 call enable_authrom 
+0x02bf 001027 branch p_device_wake_from_lpm ,wake 
+:      001028 p_device_wake_from_power:
+0x02c0 001029 fetch 3 ,mem_le_lap + 3 
+0x02c1 001030 store 3 ,mem_le_lap_high_3b 
+0x02c2 001031 call p_wake_from_power 
+0x02c3 001033 call p_mouse_switch_hwakeup_bypb 
+0x02c4 001034 call p_mouse_check_key_gpio 
+0x02c5 001035 beq mouse_lm_button ,p_mouse_24g_pairing_button 
+:      001036 p_mouse_check_reconn_target:
+0x02c6 001037 call p_mouse_tx_power_init 
+0x02c7 001038 fetch 1 ,mem_device_flag 
+0x02c8 001039 fetcht 1 ,mem_24g_device_number 
+0x02c9 001040 isub temp ,null 
+0x02ca 001041 branch p_mouse_connect_24g_mode ,zero 
+0x02cb 001042 beq 0xff ,p_mouse_connect_24g_mode 
+0x02cc 001043 call p_mouse_mode_bt_device1_multi_led_on 
+0x02cd 001044 fetch 1 ,mem_xrecord_mode 
+0x02ce 001045 beq rec_3_mode ,p_mouse3_0_check_reconn_target 
+0x02cf 001046 beq rec_4_mode ,p_mouse4_0_check_reconn_target 
+0x02d0 001047 branch p_mouse_null_enter_hibernate_enable 
+:      001049 p_device_wake_from_lpm:
+0x02d1 001050 branch p_mouse_spi_init 
+:      001052 p_mouse_tx_power_init:
+0x02d2 001053 fetch 1 ,mem_tx_power_temp 
+0x02d3 001054 store 1 ,mem_tx_power 
+0x02d4 001055 rtn 
+:      001061 p_mouse_connect_24g_mode:
+0x02d5 001062 jam mode_24g_device ,mem_device_flag 
+0x02d6 001063 call p_mouse_mode_24g_device_multi_led_on 
+0x02d7 001064 branch p_mouse_start_24g_mode 
+:      001066 p_mouse3_0_check_reconn_target:
+0x02d8 001067 fetch 6 ,mem_hci_plap 
+0x02d9 001068 branch app_bt_start_discovery_short ,blank 
+0x02da 001069 branch mouse3_0_check_reconn_target + 3 
+:      001071 p_mouse4_0_check_reconn_target:
+0x02db 001072 jam 1 ,mem_le_send_security_request_flag 
+0x02dc 001073 jam 1 ,mem_mouse_le_reconnect_flag 
+0x02dd 001074 fetch 2 ,mem_mouse_direct_timeout 
+:      001075 p_mouse4_0_check_reconn_target_next:
+0x02de 001076 store 2 ,mem_mouse_direct_timer 
+0x02df 001077 call app_lpm_mult_disable 
+0x02e0 001078 call p_le_check_adv_flag 
+0x02e1 001079 setarg adv_flag_bredr_not_supported 
+0x02e2 001080 istore 1 ,contr 
+0x02e3 001082 arg mem_le_scan_data ,contr 
+0x02e4 001083 call p_le_adv_data_update 
+0x02e5 001085 branch check_51cmd_adv 
+:      001087 p_le_check_adv_flag:
+0x02e6 001088 arg mem_le_adv_data ,rega 
+:      001089 p_le_check_adv_flag_loop:
+0x02e7 001090 ifetch 1 ,rega 
+0x02e8 001091 rtn blank 
+0x02e9 001092 iadd contr ,rega 
+0x02ea 001093 ifetch 1 ,contr 
+0x02eb 001094 rtneq 0x01 
+0x02ec 001095 branch p_le_check_adv_flag_loop 
+:      001099 p_mouse_24g_pairing_button:
+0x02ed 001100 jam 0 ,mem_mouse_long_button_select_device 
+0x02ee 001101 jam zcode_61 ,mem_zcode_temp_param0 
+0x02ef 001102 branch p_zcode_entrance 
+:      001111 p_mouse_spi_init:
+0x02f0 001112 jam 0x76 ,mem_spi_init_clk 
+0x02f1 001113 branch mouse_spi_init 
+:      001115 p_mouse_init_sunt:
+0x02f2 001116 call p_mouse_spi_init 
+0x02f3 001117 call mouse_spi_sdio_gpio_pollup 
+:      001120 p_mouse_init_sensor:
+0x02f4 001121 call mouse_read_sensor_id 
+0x02f5 001122 beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
+0x02f6 001123 beq p3065_id1 ,p_mouse_p3065_init_param 
+0x02f7 001124 call mouse_twspi_reset 
+0x02f8 001125 nop 1000 
+0x02f9 001126 branch p_mouse_init_sensor 
+:      001128 p_mouse_init_sensor_reset:
+0x02fa 001129 jam 1 ,mem_mouse_init_sensor_reset_flag 
+0x02fb 001130 call spi_ncs_enable 
+0x02fc 001131 call p_mouse_init_sunt 
+0x02fd 001132 branch spi_ncs_disable 
+:      001134 p_mouse_init_p32xx_id2_judge:
+0x02fe 001135 call p_mouse_sensor_poweron 
+0x02ff 001136 fetch 1 ,mem_sensor_id2 
+0x0300 001139 branch mouse_init_p32xx_id2_judge + 1 
+:      001178 p_mouse_p3065_init_param:
+0x0301 001179 call p_mouse_sensor_poweron 
+0x0302 001180 fetch 1 ,mem_sensor_id2 
+0x0303 001181 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
+0x0304 001182 jam p3065 ,mem_config_sensor_type 
+0x0305 001183 rtn 
+:      001185 p_mouse_sensor_poweron:
+0x0306 001186 call p_mouse_spi_init 
+0x0307 001187 setarg 0x8006 
+0x0308 001188 call twspi_write 
+0x0309 001189 nop 12000 
+0x030a 001190 branch p_mouse_dpi_config 
+:      001195 p_mouse_dpi_config:
+0x030b 001198 fetch 1 ,mem_mouse_dpi 
+0x030c 001199 beq 0xff ,p_mouse_dpi_config_default 
+0x030d 001200 branch p_mouse_seting_dpi 
+:      001201 p_mouse_dpi_config_default:
+0x030e 001202 fetch 1 ,mem_config_sensor_motion 
+0x030f 001203 store 1 ,mem_mouse_dpi 
+0x0310 001204 branch p_mouse_seting_dpi 
+:      001206 p_mouse_sensor_powerdown:
+0x0311 001207 call p_mouse_spi_init 
+0x0312 001208 setarg 0x06 
+0x0313 001209 call twspi_read 
+0x0314 001210 or pdata ,0x08 ,pdata 
+0x0315 001211 lshift8 pdata ,pdata 
+0x0316 001212 add pdata ,0x06 ,pdata 
+0x0317 001213 branch twspi_write 
+:      001215 p_mouse_setting_config:
+0x0318 001216 jam zcode_80 ,mem_zcode_temp_param0 
+0x0319 001217 branch p_zcode_entrance 
+:      001220 p_flash_ncs_disable:
+0x031a 001221 fetcht 1 ,mem_flash_ncs_gpio 
+0x031b 001222 branch gpio_out_inactive 
+:      001224 p_spid_init_flash:
+0x031c 001225 jam 0x40 ,core_spid_ctrl 
+0x031d 001226 jam 0x0 ,core_spid_delay 
+0x031e 001227 hfetch 1 ,core_gpio_sel1 
+0x031f 001228 set0 0 ,pdata 
+0x0320 001229 set0 1 ,pdata 
+0x0321 001230 set1 3 ,pdata 
+0x0322 001231 set0 4 ,pdata 
+0x0323 001232 hstore 1 ,core_gpio_sel1 
+0x0324 001233 setarg 0 
+0x0325 001234 store 4 ,mem_spid_tbuf 
+0x0326 001236 hfetch 1 ,core_gpio_pd3 
+0x0327 001237 set0 0 ,pdata 
+0x0328 001238 hstore 1 ,core_gpio_pd3 
+0x0329 001240 rtn 
+:      001242 p_mouse_load_flash_info_check:
+0x032a 001243 call p_flash_release_deep_power_down 
+0x032b 001244 call mouse_load_flash_flag 
+0x032c 001245 fetch 2 ,mem_store_flag 
+0x032d 001246 arg eeprom_init_flag ,temp 
+0x032e 001247 isub temp ,null 
+0x032f 001248 branch p_mouse_load_flash_device_info ,zero 
+0x0330 001249 storet 2 ,mem_store_flag 
+0x0331 001250 call mouse_ble_init_address 
+0x0332 001251 fetch 1 ,mem_config_sensor_motion 
+0x0333 001252 store 1 ,mem_mouse_dpi 
+:      001256 p_mouse_store_flash_device_info:
+0x0334 001257 call p_flash_release_deep_power_down 
+0x0335 001258 call p_flash_erase_sector 
+0x0336 001259 call p_mouse_information_flash_parameters 
+0x0337 001260 call p_spid_write_flash 
+0x0338 001261 call p_wait_flash_done 
+:      001262 p_mouse_store_random_addr_increase_count:
+0x0339 001263 arg 2 ,temp 
+0x033a 001264 arg mem_random_addr_increase_count ,rega 
+0x033b 001265 arg mouse_random_addr_count_eeprom_offset ,regb 
+0x033c 001266 fetch 3 ,mem_flash_base 
+0x033d 001267 iadd regb ,pdata 
+0x033e 001268 call p_spid_write_flash 
+0x033f 001269 call p_wait_flash_done 
+0x0340 001270 call p_flash_deep_power_down 
+0x0341 001271 branch p_mouse_spi_init 
+:      001273 p_mouse_set_24g_addr_flash:
+0x0342 001274 arg 4 ,temp 
+0x0343 001275 arg mem_24g_addr ,rega 
+0x0344 001276 arg mouse_g24_addr_eeprom_offect ,regb 
+0x0345 001277 rtn 
+:      001279 p_flash_erase_sector:
+0x0346 001280 fetch 3 ,mem_flash_base 
+0x0347 001281 store 3 ,mem_spi_write_addr 
+0x0348 001282 call flash_erase_sector + 2 
+0x0349 001283 branch p_wait_flash_done 
+:      001285 p_spid_write_flash:
+0x034a 001286 copy pdata ,regc 
+0x034b 001287 copy rega ,pdata 
+0x034c 001288 increase -4 ,pdata 
+0x034d 001289 copy pdata ,regb 
+0x034e 001290 ifetch 4 ,regb 
+0x034f 001291 store 4 ,mem_write_flash_head_temp 
+0x0350 001292 copy regc ,pdata 
+0x0351 001293 call spid_write_flash 
+0x0352 001294 fetch 4 ,mem_write_flash_head_temp 
+0x0353 001295 istore 4 ,regb 
+0x0354 001296 rtn 
+:      001298 p_wait_flash_done:
+0x0355 001299 setarg 100000 
+0x0356 001300 call sleep 
+0x0357 001301 call spid_unlock_flash 
+0x0358 001302 setarg mem_spid_rbuf 
+0x0359 001303 hstore 2 ,core_spid_rxaddr 
+0x035a 001304 setarg flash_read_satus 
+0x035b 001305 call spid_read_reg 
+0x035c 001306 bbit1 flash_status_wip ,p_wait_flash_done 
+0x035d 001307 rtn 
+:      001309 p_mouse_information_flash_parameters:
+0x035e 001310 setarg mem_mouse_information_end 
+0x035f 001311 arg mem_mouse_information_start ,temp 
+0x0360 001312 isub temp ,temp 
+0x0361 001313 fetch 3 ,mem_flash_base 
+0x0362 001314 arg mem_mouse_information_start ,rega 
+0x0363 001315 rtn 
+:      001317 p_mouse_read_flash:
+0x0364 001318 call p_flash_release_deep_power_down 
+0x0365 001319 call p_mouse_information_flash_parameters 
+0x0366 001320 branch spid_read_flash 
+:      001322 p_mouse_load_flash_device_info:
+0x0367 001323 call p_mouse_read_flash 
+0x0368 001324 call p_mouse_load_fast_conn_flag 
+0x0369 001325 call p_mouse_load_random_addr_increase_count 
+0x036a 001327 call mouse_select_reconn_device 
+0x036b 001328 fetch 4 ,mem_mouse_24g_addr 
+0x036c 001329 store 4 ,mem_24g_addr 
+0x036d 001330 rtn 
+:      001332 p_flash_deep_power_down:
+0x036e 001333 jam flash_command_deep_power_down ,mem_temp 
+:      001334 p_spid_write_flash_cmd:
+0x036f 001335 call p_spid_init_flash 
+0x0370 001336 nop 100 
+0x0371 001337 call spid_unlock_flash 
+0x0372 001338 arg mem_write_flash_head_temp ,rega 
+0x0373 001339 fetcht 1 ,mem_temp 
+0x0374 001340 call spid_write_flash_common 
+0x0375 001341 nop 100 
+0x0376 001342 rtn 
+:      001344 p_flash_release_deep_power_down:
+0x0377 001345 jam flash_command_release_deep_power_down ,mem_temp 
+0x0378 001346 branch p_spid_write_flash_cmd 
+:      001348 p_mouse_start_24g_mode:
+0x0379 001351 call p_g24_factory_check 
+0x037a 001353 branch p_g24_start_24g_mode 
+:      001355 p_g24_factory_check:
+0x037b 001356 arg 2 ,loopcnt 
+0x037c 001357 arg mem_24g_addr ,contr 
+:      001358 p_pdata_0xff_check:
+0x037d 001359 call enable_user 
+0x037e 001360 setarg 0xffff 
+:      001361 p_pdata_0xff_check_loop:
+0x037f 001362 ifetcht 2 ,contr 
+0x0380 001363 isub temp ,null 
+0x0381 001364 ncall disable_user ,zero 
+0x0382 001365 loop p_pdata_0xff_check_loop 
+0x0383 001366 rtn 
+:      001368 p_mouse_g24_package_data:
+0x0384 001369 call mouse_g24_package_data 
+0x0385 001370 fetch 2 ,mem_mouse_z 
+0x0386 001371 rtn blank 
+:      001372 p_g24_transmit_by_interrupt_enable:
+0x0387 001373 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
+0x0388 001374 setarg 0 
+0x0389 001375 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+0x038a 001376 rtn 
+:      001378 p_mouse_le_txbuff_save:
+0x038b 001379 arg mem_le_tx_buffer0 ,contr 
+0x038c 001380 arg mem_le_tx_buffer0_omemalloc ,contw 
+0x038d 001381 call p_mouse_le_txbuff_copy 
+0x038e 001382 arg mem_le_tx_buffer1 ,contr 
+0x038f 001383 call p_mouse_le_txbuff_copy 
+0x0390 001384 arg mem_le_tx_buffer2 ,contr 
+0x0391 001385 call p_mouse_le_txbuff_copy 
+0x0392 001386 arg mem_le_tx_buffer3 ,contr 
+:      001387 p_mouse_le_txbuff_copy:
+0x0393 001388 arg 27 ,loopcnt 
+0x0394 001389 branch memcpy 
+:      001391 p_mouse_le_txbuff_load:
+0x0395 001392 arg mem_le_tx_buffer0_omemalloc ,contr 
+0x0396 001393 arg mem_le_tx_buffer0 ,contw 
+0x0397 001394 call p_mouse_le_txbuff_copy 
+0x0398 001395 arg mem_le_tx_buffer1 ,contw 
+0x0399 001396 call p_mouse_le_txbuff_copy 
+0x039a 001397 arg mem_le_tx_buffer2 ,contw 
+0x039b 001398 call p_mouse_le_txbuff_copy 
+0x039c 001399 arg mem_le_tx_buffer3 ,contw 
+0x039d 001400 branch p_mouse_le_txbuff_copy 
+:      001402 p_mouse_le:
+0x039e 001403 call le_fifo_check_nearly_full 
+0x039f 001404 nrtn blank 
+0x03a0 001405 fetch 1 ,mem_le_connect_status_flag 
+0x03a1 001406 and pdata ,0x03 ,pdata 
+0x03a2 001407 rtnne 0x03 
+:      001408 p_mouse_le_next:
+0x03a3 001409 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0x03a4 001410 call p_mouse_clear_sensor_data ,blank 
+0x03a5 001411 fetch mouse_flag_len ,mem_mouse_flag 
+0x03a6 001412 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+0x03a7 001413 call mouse_motion 
+0x03a8 001414 nrtn user 
+0x03a9 001415 call p_mouse_le_current_mult_update 
+0x03aa 001416 call p_mouse_data_xy_release 
+0x03ab 001417 call p_mouse_wheel_trigger 
+:      001418 p_mouse_data_push:
+0x03ac 001419 arg mem_mouse_key ,rega 
+0x03ad 001420 call queue_push 
+0x03ae 001421 call p_mouse_queue_increase ,user 
+0x03af 001423 rtn 
+:      001425 p_mouse_le_current_mult_update:
+0x03b0 001428 jam 0 ,mem_lpm_mult 
+0x03b1 001429 jam 30 ,mem_mouse_le_current_mult_timer 
+0x03b2 001430 rtn 
+:      001432 p_mouse_data_xy_release:
+0x03b3 001435 fetch 1 ,mem_mouse_long_mult_flag 
+0x03b4 001436 rtnne 1 
+0x03b5 001437 setarg 0 
+0x03b6 001438 store 1 ,mem_mouse_long_mult_flag 
+0x03b7 001439 store 4 ,mem_mouse_x 
+0x03b8 001440 branch p_mouse_sensor_poweron 
+:      001442 p_mouse_data_init:
+0x03b9 001443 jam 7 ,mem_mouse_data_queue 
+0x03ba 001444 jam 4 ,mem_mouse_data_queue + 1 
+0x03bb 001445 setarg mem_mouse_data_queue 
+0x03bc 001446 store 2 ,mem_queue_ptr 
+0x03bd 001447 branch queue_init 
+:      001449 p_mouse_queue_increase:
+0x03be 001450 fetch 1 ,mem_mouse_data_queue_num 
+0x03bf 001451 increase 1 ,pdata 
+0x03c0 001452 store 1 ,mem_mouse_data_queue_num 
+0x03c1 001453 rtn 
+:      001455 p_mouse_data_pull:
+0x03c2 001456 arg mem_mouse_key ,rega 
+0x03c3 001457 call queue_pop 
+0x03c4 001458 branch p_mouse_fill_data_le ,user 
+0x03c5 001459 rtn 
+:      001461 p_mouse_fill_data_le:
+0x03c6 001462 call le_clear_md 
+0x03c7 001463 fetch 1 ,mem_mouse_data_queue_num 
+0x03c8 001464 sub pdata ,1 ,null 
+0x03c9 001465 ncall le_set_md ,positive 
+0x03ca 001466 fetch 1 ,mem_mouse_data_queue_num 
+0x03cb 001467 rtn blank 
+0x03cc 001468 increase -1 ,pdata 
+0x03cd 001469 store 1 ,mem_mouse_data_queue_num 
+0x03ce 001470 branch mouse_fill_data_le 
+:      001473 p_mouse_wheel_trigger:
+0x03cf 001474 fetch 2 ,mem_mouse_z 
+0x03d0 001475 rtn blank 
+0x03d1 001476 jam 1 ,mem_mouse_wheel_trigger 
+0x03d2 001477 jam 2 ,mem_mouse_wheel_trigger_timer 
+0x03d3 001478 rtn 
+:      001480 p_mouse_bt:
+0x03d4 001481 rtn attempt 
+0x03d5 001482 fetch 1 ,mem_app_handshake_flag 
+0x03d6 001483 rtn blank 
+0x03d7 001484 call l2cap_malloc_is_fifo_nearly_full 
+0x03d8 001485 nrtn blank 
+0x03d9 001486 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0x03da 001487 call p_mouse_clear_sensor_data ,blank 
+0x03db 001488 fetch mouse_flag_len ,mem_mouse_flag 
+0x03dc 001489 bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
+0x03dd 001490 bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_send_empty_data 
+0x03de 001491 call mouse_motion 
+0x03df 001492 nrtn user 
+0x03e0 001493 call p_mouse_le_current_mult_update 
+0x03e1 001494 call p_mouse_data_xy_release 
+0x03e2 001495 call p_mouse_wheel_trigger 
+0x03e3 001496 fetch 1 ,mem_mouse_bt_boot_mode 
+0x03e4 001497 beq 1 ,p_mouse_send_data_boot_mode 
+0x03e5 001498 fetch 1 ,mem_mouse_bt_send_first_package_flag 
+0x03e6 001499 rtn blank 
+0x03e7 001500 branch mouse_send_data 
+:      001502 p_mouse_send_data_boot_mode:
+0x03e8 001503 fetch 1 ,mem_mouse_key 
+0x03e9 001504 store 1 ,mem_mouse_bt_boot_data 
+0x03ea 001505 fetch 1 ,mem_mouse_x 
+0x03eb 001506 istore 1 ,contw 
+0x03ec 001507 fetch 1 ,mem_mouse_y 
+0x03ed 001508 istore 1 ,contw 
+0x03ee 001509 fetch 2 ,mem_mouse_z 
+0x03ef 001510 istore 2 ,contw 
+0x03f0 001512 arg 7 ,rega 
+0x03f1 001513 call hid_malloc_tx_buff 
+0x03f2 001514 fetch 2 ,mem_hid_int_remote_cid 
+0x03f3 001515 istore 2 ,contw 
+0x03f4 001516 setarg 0x02a1 
+0x03f5 001517 istore 2 ,contw 
+0x03f6 001518 fetch 5 ,mem_mouse_bt_boot_data 
+0x03f7 001519 istore 5 ,contw 
+0x03f8 001520 rtn 
+:      001522 p_mouse_clear_sensor_data:
+0x03f9 001523 jam 1 ,mem_mouse_clear_sensor_data_flag 
+0x03fa 001524 call le_set_config_more_data 
+0x03fb 001525 branch p_mouse_init_sensor_reset 
+:      001532 p_mouse_idle:
+0x03fc 001533 call ui_check_paring_button 
+0x03fd 001534 call p_mouse_dpi_check 
+0x03fe 001535 branch mouse_wheel_check 
+:      001537 p_mouse_dpi_check:
+0x03ff 001538 fetcht 1 ,mem_24g_sw_gpio 
+0x0400 001539 call gpio_config_output 
+0x0401 001540 fetcht 1 ,mem_dpi_button_gpio 
+0x0402 001541 call p_gpio_set_input_pd 
+0x0403 001542 fetcht 1 ,mem_dpi_button_gpio 
+0x0404 001543 call gpio_get_bit 
+0x0405 001544 branch p_mouse_dpi_up ,true 
+0x0406 001545 call p_gpio_set_input_pu 
+:      001546 p_mouse_dpi_down:
+0x0407 001547 fetch 1 ,mem_mouse_dpi_button_state 
+0x0408 001548 rtneq dpi_button_state_down 
+0x0409 001549 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
+:      001550 p_mouse_dpi_down_next:
+0x040a 001551 fetch 1 ,mem_mouse_dpi 
+0x040b 001552 increase 1 ,pdata 
+0x040c 001553 and pdata ,0x03 ,pdata 
+0x040d 001554 store 1 ,mem_mouse_dpi 
+0x040e 001555 mul32 pdata ,2 ,pdata 
+0x040f 001556 increase 2 ,pdata 
+0x0410 001557 store 2 ,mem_mouse_multi_led_blink_count 
+0x0411 001558 call p_mouse_dpi_multi_led_blink 
+0x0412 001559 call mouse_seting_dpi 
+0x0413 001560 branch p_mouse_store_flash_device_info 
+:      001561 p_mouse_dpi_up:
+0x0414 001562 call p_gpio_set_input_pu 
+0x0415 001563 branch mouse_dpi_up 
+:      001565 p_mouse_priority_bb_event:
+0x0416 001566 copy regc ,pdata 
+0x0417 001567 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+0x0418 001568 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+0x0419 001569 beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
+0x041a 001570 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+0x041b 001571 beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
+0x041c 001572 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
+0x041d 001573 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_timeout 
+0x041e 001574 beq bt_evt_virtual_cable_unplug ,p_mouse_irtual_cable_unplug 
+0x041f 001575 beq bt_evt_switch_not_accept ,app_bt_role_switch 
+0x0420 001576 beq bt_evt_sniff_not_accept ,p_mouse_sniff_not_accept 
+0x0421 001577 beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
+0x0422 001578 beq bt_evt_bb_disconnected ,p_mouse_bb_event_disconnected 
+0x0423 001579 beq bt_evt_switch_success_master ,p_mouse_enter_sniff_check 
+0x0424 001580 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+0x0425 001581 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+0x0426 001582 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+0x0427 001583 branch mouse_priority_bb_event + 1 
+:      001585 p_mouse_le_bb_event_connected:
+0x0428 001586 call p_mouse_init_sensor_reset 
+0x0429 001587 jam zcode_b0 ,mem_zcode_temp_param0 
+0x042a 001588 branch p_zcode_entrance 
+:      001590 p_mouse_le_bb_disconnected:
+0x042b 001591 call p_mouse_sensor_powerdown_check 
+0x042c 001592 jam zcode_a2 ,mem_zcode_temp_param0 
+0x042d 001593 branch p_zcode_entrance 
+:      001595 p_mouse_le_enc_info:
+:      001596 p_app_updata_le_param:
+0x042e 001597 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x042f 001598 branch ui_ipc_send_cmd 
+:      001600 p_mouse_le_ll_start_encryt:
+0x0430 001601 jam zcode_b3 ,mem_zcode_temp_param0 
+0x0431 001602 branch p_zcode_entrance 
+:      001604 p_mouse_le_conn_param_update_rsp_recieved:
+0x0432 001605 jam zcode_a1 ,mem_zcode_temp_param0 
+0x0433 001606 branch p_zcode_entrance 
+:      001609 p_mouse_bb_event_reconn_timeout:
+:      001610 p_mouse_bb_event_reconn_failed:
+0x0434 001611 jam zcode_a3 ,mem_zcode_temp_param0 
+0x0435 001612 branch p_zcode_entrance 
+:      001614 p_mouse_irtual_cable_unplug:
+0x0436 001615 call mouse_irtual_cable_unplug 
+0x0437 001616 branch app_bb_hibernate 
+:      001618 p_mouse_sniff_not_accept:
+0x0438 001619 jam zcode_b1 ,mem_zcode_temp_param0 
+0x0439 001620 branch p_zcode_entrance 
+:      001622 p_mouse_bb_event_connected:
+0x043a 001623 call p_mouse_init_sensor_reset 
+0x043b 001624 call p_mouse_null_enter_hibernate_disable 
+0x043c 001625 call p_mouse_discovey_led_blink_off 
+0x043d 001626 jam 0 ,mem_mouse_send_switch_req_timer 
+0x043e 001627 branch mouse_stop_discovery 
+:      001629 p_mouse_bb_event_disconnected:
+0x043f 001630 call p_mouse_sensor_powerdown_check 
+0x0440 001631 jam zcode_b4 ,mem_zcode_temp_param0 
+0x0441 001632 branch p_zcode_entrance 
+:      001634 p_mouse_enter_sniff_check:
+0x0442 001635 jam zcode_b2 ,mem_zcode_temp_param0 
+0x0443 001636 branch p_zcode_entrance 
+:      001638 p_mouse_24g_pairing_complete:
+0x0444 001639 call p_mouse_init_sensor_reset 
+0x0445 001640 call p_mouse_discovey_led_blink_off 
+0x0446 001641 jam zcode_92 ,mem_zcode_temp_param0 
+0x0447 001642 branch p_zcode_entrance 
+:      001644 p_mouse_24g_attempt_fail:
+0x0448 001645 call p_mouse_sensor_powerdown_check 
+0x0449 001646 jam zcode_a0 ,mem_zcode_temp_param0 
+0x044a 001647 branch p_zcode_entrance 
+:      001649 p_mouse_24g_attempt_success:
+0x044b 001650 jam 1 ,mem_mouse_24g_attempt_success_flag 
+0x044c 001651 call p_mouse_null_enter_hibernate_disable 
+0x044d 001652 call p_mouse_init_sensor_reset 
+0x044e 001653 call p_mouse_discovey_led_blink_off 
+0x044f 001654 call mouse_no_data_timer_init 
+:      001655 p_mouse_store_24g_device_2flash:
+0x0450 001656 call mouse_cheak_select_24gdevice 
+0x0451 001657 branch p_mouse_store_flash_device_info 
+:      001659 p_mouse_before_hibernate:
+0x0452 001660 call p_mouse_sensor_powerdown_check 
+0x0453 001661 jam zcode_a4 ,mem_zcode_temp_param0 
+0x0454 001662 branch p_zcode_entrance 
+:      001664 p_mouse_sensor_powerdown_check:
+0x0455 001665 fetch 1 ,mem_mouse_init_sensor_reset_flag 
+0x0456 001666 rtn blank 
+0x0457 001667 jam 0 ,mem_mouse_init_sensor_reset_flag 
+0x0458 001668 branch p_mouse_sensor_powerdown 
+:      001671 p_mouse_bb_event_timer:
+0x0459 001672 call p_mouse_adc_read 
+0x045a 001674 call p_mouse_low_voltage_led_timer 
+0x045b 001675 call p_low_power_nodata_off_led_time_check 
+0x045c 001676 call p_mouse_multi_led_blink_timer 
+0x045d 001677 call p_mouse_wheel_trigger_timer 
+0x045e 001678 call p_mouse_null_enter_hibernate_timer 
+0x045f 001679 call p_mouse_bt_discovery_check 
+0x0460 001680 call mouse_check_discovery_timeout_timer 
+0x0461 001681 call p_mouse_select_device 
+0x0462 001682 call p_mouse_g24_long_sleep_param_update_timer 
+0x0463 001683 call p_mouse_check_direct_timeout_timer 
+0x0464 001684 call p_mouse_le_enable_att_list_timer 
+0x0465 001685 call p_mouse_le_current_mult_update_timer 
+0x0466 001686 call p_le_send_smp_security_request_timer 
+0x0467 001687 call p_mouse_send_switch_req_timer 
+0x0468 001688 call mouse_check_hid_handshake_timer 
+0x0469 001689 call p_mouse_bt_check_sniff_req_timeout_timer 
+0x046a 001690 branch mouse_check_no_data_timeout_timer 
+:      001692 p_mouse_select_device:
+:      001693 p_mouse_select_device_by_button:
+0x046b 001694 fetcht 1 ,mem_config_select_device_button_gpio 
+0x046c 001695 call gpio_get_bit 
+0x046d 001696 branch p_mouse_select_device_button_down ,true 
+:      001697 p_mouse_select_device_button_up:
+0x046e 001698 fetch 1 ,mem_mouse_select_device_button_wakeup_flag 
+0x046f 001699 nbranch p_mouse_select_button_wakeup_firstup ,blank 
+0x0470 001700 fetch 1 ,mem_select_device_button_statue 
+0x0471 001701 rtneq dpi_button_state_up 
+0x0472 001703 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x0473 001704 jam on ,mem_mouse_multi_led_blink_enable 
+0x0474 001706 fetch 1 ,mem_mouse_long_button_select_device 
+0x0475 001707 branch p_mouse_long_button_state_clear ,blank 
+:      001708 p_mouse_ready_reconnection_by_button:
+0x0476 001709 call p_mouse_switch_device_flag 
+0x0477 001710 jam 0 ,mem_link_key_exists 
+0x0478 001711 call p_mouse_store_flash_device_info 
+0x0479 001713 call mouse_select_device_enable 
+0x047a 001714 branch mouse_set_reconnection 
+:      001716 p_mouse_switch_device_flag:
+0x047b 001717 fetcht 1 ,mem_device_flag 
+0x047c 001718 increase 1 ,temp 
+0x047d 001719 fetch 1 ,mem_device_number 
+0x047e 001720 isub temp ,null 
+0x047f 001721 ncall mouse_select_device_count_clean ,positive 
+0x0480 001722 storet 1 ,mem_device_flag 
+0x0481 001723 rtn 
+:      001725 p_mouse_long_button_state_clear:
+0x0482 001726 jam 0xff ,mem_mouse_long_button_select_device 
+0x0483 001727 rtn 
+:      001729 p_mouse_select_button_wakeup_firstup:
+0x0484 001730 jam 0 ,mem_mouse_select_device_button_wakeup_flag 
+0x0485 001731 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x0486 001732 jam on ,mem_mouse_multi_led_blink_enable 
+0x0487 001733 rtn 
+:      001735 p_mouse_select_device_button_down:
+0x0488 001736 fetch 2 ,mem_ui_state_map 
+0x0489 001737 bbit1 ui_state_ble_adv ,p_mouse_select_device_button_down_next 
+0x048a 001738 jam off ,mem_mouse_multi_led_blink_enable 
+:      001739 p_mouse_select_device_button_down_next:
+0x048b 001740 fetch 1 ,mem_select_device_button_statue 
+0x048c 001741 rtneq dpi_button_state_down 
+0x048d 001742 jam dpi_button_state_down ,mem_select_device_button_statue 
+0x048e 001744 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0x048f 001745 rtnbit1 app_disc_pb_button 
+0x0490 001747 fetch 1 ,mem_device_flag 
+0x0491 001748 rtnne mode_bt_device1 
+:      001749 p_mouse_pb_button_2ble_disconnect:
+0x0492 001750 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x0493 001751 set1 app_disc_pb_button ,pdata 
+0x0494 001752 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x0495 001753 branch mouse_disconnect 
+:      001756 p_mouse_send_switch_req_timer:
+0x0496 001757 arg mem_mouse_send_switch_req_timer ,regc 
+0x0497 001758 arg host_create_conn_resend ,regb 
+0x0498 001759 branch timer_single_step 
+:      001761 p_mouse_bt_check_sniff_req_timeout_timer:
+0x0499 001762 arg mem_mouse_bt_send_first_package_timer ,regc 
+0x049a 001763 arg p_mouse_bt_send_first_package ,regb 
+0x049b 001764 branch timer_single_step 
+:      001765 p_mouse_bt_send_first_package:
+0x049c 001766 jam 1 ,mem_mouse_bt_send_first_package_flag 
+0x049d 001767 rtn 
+:      001770 p_mouse_le_enable_att_list_timer:
+0x049e 001771 arg mem_le_start_encrypt_timer ,regc 
+0x049f 001772 arg mouse_le_write_enable ,regb 
+0x04a0 001773 branch timer_single_step 
+:      001775 p_mouse_check_direct_timeout_timer:
+0x04a1 001776 arg mem_mouse_direct_timer ,regc 
+0x04a2 001777 arg p_mouse_check_direct_timeout ,regb 
+0x04a3 001778 branch timer_single_step_2b 
+:      001780 p_mouse_check_direct_timeout:
+0x04a4 001781 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x04a5 001782 nrtn blank 
+0x04a6 001783 branch mouse_check_direct_timeout 
+:      001785 p_mouse_le_current_mult_update_timer:
+0x04a7 001786 arg mem_mouse_le_current_mult_timer ,regc 
+0x04a8 001787 arg p_mouse_le_current_mult_reinit ,regb 
+0x04a9 001788 branch timer_single_step 
+:      001789 p_mouse_le_current_mult_reinit:
+0x04aa 001790 fetch 1 ,mem_lpm_mult_init 
+0x04ab 001791 store 1 ,mem_lpm_mult 
+0x04ac 001792 branch p_mouse_long_mult_flag_enable 
+:      001794 p_le_send_smp_security_request_timer:
+0x04ad 001795 fetch 1 ,mem_mouse_le_bb_connected_flag 
+0x04ae 001796 rtn blank 
+0x04af 001797 arg mem_mouse_send_secutiry_request_timer ,regc 
+0x04b0 001798 arg p_le_pairing_sm_start_check ,regb 
+0x04b1 001799 branch timer_single_step 
+:      001800 p_le_pairing_sm_start_check:
+0x04b2 001801 fetch 1 ,mem_le_send_security_request_flag 
+0x04b3 001802 nrtn blank 
+0x04b4 001803 branch le_pairing_sm_start 
+:      001806 p_mouse_g24_long_sleep_param_update_timer:
+0x04b5 001807 arg mem_24g_long_sleep_param_update_timer ,regc 
+0x04b6 001808 arg p_mouse_g24_long_sleep_normal_param ,regb 
+0x04b7 001809 branch timer_single_step 
+:      001810 p_mouse_g24_long_sleep_normal_param:
+0x04b8 001811 setarg g24_long_sleep_step2 
+0x04b9 001812 store 3 ,mem_24g_enter_hibernate 
+:      001813 p_mouse_long_mult_flag_enable:
+0x04ba 001814 jam 1 ,mem_mouse_long_mult_flag 
+0x04bb 001815 rtn 
+:      001817 p_mouse_wheel_trigger_timer:
+0x04bc 001818 arg mem_mouse_wheel_trigger_timer ,regc 
+0x04bd 001819 arg p_mouse_wheel_trigger_disable ,regb 
+0x04be 001820 branch timer_single_step 
+:      001821 p_mouse_wheel_trigger_disable:
+0x04bf 001822 jam 0 ,mem_mouse_wheel_trigger 
+0x04c0 001823 rtn 
+:      001825 p_mouse_bt_discovery_check:
+:      001828 p_mouse_bt_discovery_by_button:
+0x04c1 001829 fetch 1 ,mem_device_flag 
+0x04c2 001830 beq mode_24g_device ,p_mouse_24g_pairing_button_down_first 
+0x04c3 001832 fetcht 1 ,mem_config_bt_button_gpio 
+0x04c4 001833 call gpio_get_bit 
+0x04c5 001834 branch p_mouse_bt_discovery_commbination_key_down ,true 
+:      001835 p_mouse_bt_discovery_commbination_key_up:
+0x04c6 001836 call mouse_bt_discovery_commbination_key_up 
+0x04c7 001837 arg mouse_bt_discovery_button_long_down_flag ,queue 
+0x04c8 001838 branch mouse_disable_function_flag 
+:      001840 p_mouse_bt_discovery_commbination_key_down:
+0x04c9 001841 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+0x04ca 001842 call p_mouse_bt_discovery_timer 
+0x04cb 001843 branch mouse_bt_discovery_commbination_key_down + 1 
+:      001845 p_mouse_24g_pairing_button_down:
+0x04cc 001846 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+0x04cd 001847 call p_mouse_24g_pairing_timer 
+0x04ce 001848 branch p_mouse_24g_pairing_button_down2 + 1 
+:      001850 p_mouse_24g_pairing_button_down_first:
+0x04cf 001851 fetcht 1 ,mem_config_bt_button_gpio 
+0x04d0 001852 call gpio_get_bit 
+0x04d1 001853 branch p_mouse_24g_pairing_button_down ,true 
+0x04d2 001854 branch mouse_bt_discovery_commbination_key_down + 1 
+:      001855 p_mouse_24g_pairing_timer:
+0x04d3 001856 arg mem_combination_ui_button_count ,regc 
+0x04d4 001858 arg p_mouse_24g_pairing_button_down2 ,regb 
+0x04d5 001859 branch timer_single_step 
+:      001860 p_mouse_24g_pairing_button_down2:
+0x04d6 001861 call p_g24_auto_pair_start 
+0x04d7 001862 branch p_mouse_discovery_multi_led_blink 
+:      001864 p_mouse_bt_discovery_timer:
+0x04d8 001865 arg mem_combination_ui_button_count ,regc 
+0x04d9 001866 arg p_mouse_long_button_bt_discovery ,regb 
+0x04da 001867 branch timer_single_step 
+:      001868 p_mouse_long_button_bt_discovery:
+0x04db 001869 fetch mouse_flag_len ,mem_mouse_flag 
+0x04dc 001870 rtnbit1 mouse_bt_discovery_button_long_down_flag 
+0x04dd 001871 jam 0 ,mem_mouse_long_button_select_device 
+0x04de 001873 fetch 2 ,mem_ui_state_map 
+0x04df 001874 isolate1 ui_state_ble_adv ,pdata 
+0x04e0 001875 call mouse_stop_le_adv ,true 
+0x04e1 001876 fetch 2 ,mem_ui_state_map 
+0x04e2 001877 isolate1 ui_state_bt_reconnect ,pdata 
+0x04e3 001878 call mouse_cancel_reconnect ,true 
+0x04e4 001879 arg mouse_bt_discovery_button_long_down_flag ,queue 
+0x04e5 001880 call mouse_enable_function_flag 
+0x04e6 001881 branch mouse_long_button_bt_discovry 
+:      001883 p_mouse_null_enter_hibernate_timer:
+0x04e7 001884 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x04e8 001885 nrtn blank 
+0x04e9 001886 fetch 1 ,mem_mouse_null_enter_hibernate_flag 
+0x04ea 001887 rtn blank 
+0x04eb 001888 fetch 1 ,mem_mouse_null_enter_hibernate_timer 
+0x04ec 001889 branch p_mouse_null_enter_hibernate ,blank 
+0x04ed 001890 increase -1 ,pdata 
+0x04ee 001891 store 1 ,mem_mouse_null_enter_hibernate_timer 
+0x04ef 001892 rtn 
+:      001893 p_mouse_null_enter_hibernate:
+0x04f0 001894 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+0x04f1 001895 branch app_enter_hibernate 
+:      001896 p_mouse_null_enter_hibernate_enable:
+0x04f2 001897 jam 1 ,mem_mouse_null_enter_hibernate_flag 
+0x04f3 001898 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+0x04f4 001899 rtn 
+:      001900 p_mouse_null_enter_hibernate_disable:
+0x04f5 001901 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+0x04f6 001902 jam 0 ,mem_mouse_null_enter_hibernate_timer 
+0x04f7 001903 rtn 
+:      001911 p_mouse_multi_led_blink_timer:
+0x04f8 001912 fetch 1 ,mem_mouse_multi_led_blink_enable 
+0x04f9 001913 rtn blank 
+0x04fa 001914 fetch 1 ,mem_mouse_multi_led_type 
+0x04fb 001915 beq multi_led_on ,p_mouse_multi_led_type_on 
+0x04fc 001916 beq multi_led_blink ,p_mouse_multi_led_type_blink 
+0x04fd 001917 rtn 
+:      001919 p_mouse_multi_led_type_on:
+0x04fe 001920 call p_mouse_multi_led_on 
+0x04ff 001921 fetch 1 ,mem_mouse_multi_led_on_timer 
+0x0500 001922 increase 1 ,pdata 
+0x0501 001923 store 1 ,mem_mouse_multi_led_on_timer 
+0x0502 001924 fetcht 1 ,mem_mouse_multi_led_on_timer_init 
+0x0503 001925 isub temp ,null 
+0x0504 001926 call p_mouse_multi_led_off_poweron2s ,zero 
+0x0505 001927 rtn 
+:      001928 p_mouse_multi_led_off_poweron2s:
+0x0506 001929 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x0507 001930 branch p_mouse_multi_led_off 
+:      001932 p_mouse_multi_led_type_blink:
+0x0508 001933 fetch 1 ,mem_mouse_multi_led_blink_timer 
+0x0509 001934 increase -1 ,pdata 
+0x050a 001935 store 1 ,mem_mouse_multi_led_blink_timer 
+0x050b 001936 nrtn blank 
+0x050c 001937 fetch 1 ,mem_mouse_multi_led_blink_timer_init 
+0x050d 001938 store 1 ,mem_mouse_multi_led_blink_timer 
+0x050e 001939 fetch 1 ,mem_mouse_multi_led_blink_count_limited 
+0x050f 001940 branch p_mouse_multi_led_blink_count_no_limited ,blank 
+0x0510 001941 fetch 1 ,mem_mouse_multi_led_blink_count 
+0x0511 001942 branch p_mouse_multi_led_blink_off ,blank 
+0x0512 001943 increase -1 ,pdata 
+0x0513 001944 store 1 ,mem_mouse_multi_led_blink_count 
+:      001945 p_mouse_multi_led_blink_count_no_limited:
+0x0514 001946 fetch 1 ,mem_mouse_multi_led_state 
+0x0515 001947 beq on ,p_mouse_multi_led_off 
+0x0516 001948 beq off ,p_mouse_multi_led_on 
+0x0517 001949 rtn 
+:      001951 p_mouse_multi_led_on:
+0x0518 001952 jam on ,mem_mouse_multi_led_state 
+0x0519 001953 fetch 1 ,mem_device_flag 
+0x051a 001954 beq mode_24g_device ,p_mouse_multi_down_led_on 
+:      001955 p_mouse_multi_up_led_on:
+0x051b 001956 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x051c 001957 call gpio_config_output 
+0x051d 001958 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x051e 001959 branch gpio_out_inactive 
+:      001960 p_mouse_multi_down_led_on:
+0x051f 001961 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x0520 001962 set1 7 ,temp 
+0x0521 001963 call gpio_config_output 
+0x0522 001964 fetcht 1 ,mem_mouse_multi_led_gpio 
+0x0523 001965 branch gpio_out_active 
+:      001968 p_mouse_multi_led_blink_off:
+0x0524 001969 setarg 0 
+0x0525 001970 store 3 ,mem_mouse_multi_led_blink_timer 
+:      001971 p_mouse_multi_led_off:
+0x0526 001972 fetch 1 ,mem_mouse_multi_led_blink_count 
+0x0527 001973 nbranch p_mouse_multi_led_off_wait_blink_over ,blank 
+0x0528 001974 jam 0 ,mem_mouse_multi_led_blink_enable 
+0x0529 001975 jam 0 ,mem_mouse_multi_led_type 
+:      001976 p_mouse_multi_led_off_wait_blink_over:
+0x052a 001977 jam 0 ,mem_mouse_multi_led_on_timer 
+0x052b 001978 jam off ,mem_mouse_multi_led_state 
+0x052c 001979 branch p_mouse_multi_led_gpio_set_float 
+:      001982 p_mouse_mode_bt_device1_multi_led_on:
+:      001983 p_mouse_mode_24g_device_multi_led_on:
+0x052d 001984 jam 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x052e 001985 jam on ,mem_mouse_multi_led_blink_enable 
+0x052f 001986 jam multi_led_on ,mem_mouse_multi_led_type 
+0x0530 001987 jam 0 ,mem_mouse_multi_led_on_timer 
+0x0531 001988 rtn 
+:      001990 p_mouse_discovery_multi_led_blink:
+0x0532 001991 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x0533 001992 jam 3 ,mem_mouse_multi_led_blink_timer_init 
+0x0534 001994 jam 1 ,mem_mouse_multi_led_blink_count 
+:      001995 p_mouse_multi_led_blink_enable:
+0x0535 001996 jam 5 ,mem_mouse_multi_led_blink_timer 
+0x0536 001997 jam on ,mem_mouse_multi_led_blink_enable 
+0x0537 001998 jam multi_led_blink ,mem_mouse_multi_led_type 
+0x0538 001999 rtn 
+:      002001 p_mouse_discovey_led_blink_off:
+0x0539 002002 fetch 1 ,mem_mouse_multi_led_on_timer 
+0x053a 002003 nrtn blank 
+0x053b 002004 fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+0x053c 002005 nrtn blank 
+0x053d 002006 branch p_mouse_multi_led_blink_off 
+:      002008 p_mouse_dpi_multi_led_blink:
+0x053e 002009 jam 3 ,mem_mouse_multi_led_blink_timer_init 
+0x053f 002010 jam 1 ,mem_mouse_multi_led_blink_count_limited 
+0x0540 002011 branch p_mouse_multi_led_blink_enable 
+:      002126 p_mouse_adc_read:
+0x0541 002129 fetch 1 ,mem_adc_read_timer 
+0x0542 002130 increase 1 ,pdata 
+0x0543 002131 store 1 ,mem_adc_read_timer 
+0x0544 002132 sub pdata ,10 ,null 
+0x0545 002133 rtn positive 
+0x0546 002135 call adc_init_data 
+0x0547 002137 jam 0 ,mem_adc_read_timer 
+0x0548 002138 call adc_set_mode 
+0x0549 002139 call vdd_calculate_by_mode 
+0x054a 002140 store 2 ,mem_mouse_vdd_now_vol 
+0x054b 002141 arg mem_mouse_vdd_calculate_set ,rega 
+0x054c 002142 call p_adc_bat_percent_lowpower_out 
+0x054d 002143 fetch 1 ,mem_adc_power_flag 
+0x054e 002144 bbit1 1 ,app_enter_hibernate 
+0x054f 002145 bbit0 0 ,p_mouse_adc_no_low_voltage 
+0x0550 002146 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
+0x0551 002147 branch mouse_adc_low_voltage 
+:      002149 p_mouse_adc_no_low_voltage:
+0x0552 002150 call mouse_adc_no_low_voltage 
+0x0553 002151 fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
+0x0554 002152 rtn blank 
+0x0555 002153 jam 0 ,mem_mouse_adc_last_low_voltage_flag 
+:      002154 p_mouse_adc_low_volatage_led_off:
+0x0556 002155 fetch 1 ,mem_config_low_voltage_alarm_gpio 
+0x0557 002156 store 1 ,mem_mouse_struct_led_gpio 
+0x0558 002158 branch p_mouse_multi_led_blink_off 
+:      002174 p_adc_bat_percent_lowpower_out:
+0x0559 002175 ifetch 8 ,rega 
+0x055a 002176 store 8 ,mem_pdatatemp 
+0x055b 002177 fetcht 2 ,mem_pdatatemp + 2 
+0x055c 002178 fetch 2 ,mem_pdatatemp + 6 
+0x055d 002179 isub temp ,null 
+0x055e 002180 nbranch adc_set_no_power_flag ,positive 
+0x055f 002181 fetcht 2 ,mem_pdatatemp + 4 
+0x0560 002182 isub temp ,null 
+0x0561 002183 nbranch adc_set_low_power_flag ,positive 
+:      002184 p_adc_clear_low_power_flag:
+0x0562 002185 fetch 1 ,mem_adc_power_flag 
+0x0563 002186 set0 0 ,pdata 
+0x0564 002187 store 1 ,mem_adc_power_flag 
+0x0565 002188 rtn 
+:      002190 p_mouse_low_voltage_led_timer:
+0x0566 002191 fetch 1 ,mem_low_power_led_blink_flag 
+0x0567 002192 nrtn blank 
+0x0568 002193 fetch mouse_flag_len ,mem_mouse_flag 
+0x0569 002194 rtnbit0 mouse_low_voltage_flag 
+0x056a 002195 fetch 2 ,mem_ui_state_map 
+0x056b 002196 rtnbit1 ui_state_ble_adv 
+0x056c 002197 rtnbit1 ui_state_bt_discovery 
+0x056d 002198 fetch 1 ,mem_config_low_voltage_alarm_gpio 
+0x056e 002199 store 1 ,mem_mouse_struct_led_gpio 
+0x056f 002201 setarg g24_long_sleep_step2 
+0x0570 002202 store 3 ,mem_24g_enter_hibernate 
+0x0571 002204 fetch 1 ,mem_adc_low_volatage_led_timer_count 
+0x0572 002205 pincrease 1 
+0x0573 002206 store 1 ,mem_adc_low_volatage_led_timer_count 
+0x0574 002208 beq 5 ,p_mouse_multi_led_blink_off 
+0x0575 002209 sub pdata ,10 ,null 
+0x0576 002210 nbranch p_mouse_adc_low_volatage_led_timer_count_clean ,positive 
+0x0577 002211 rtn 
+:      002212 p_mouse_adc_low_volatage_led_timer_count_clean:
+0x0578 002213 jam 1 ,mem_adc_low_volatage_led_timer_count 
+0x0579 002215 branch p_mouse_multi_led_on 
+:      002217 p_low_power_no_data_off_led_time:
+0x057a 002218 fetch 1 ,mem_low_power_check_count 
+0x057b 002219 increase 1 ,pdata 
+0x057c 002220 store 1 ,mem_low_power_check_count 
+0x057d 002221 sub pdata ,low_voltage_led_count ,null 
+0x057e 002222 rtn positive 
+:      002223 p_low_power_no_data_off_led_time_nolimited:
+0x057f 002224 jam 0 ,mem_low_power_led_blink_flag 
+0x0580 002225 jam 0x96 ,mem_low_power_no_data_off_led_time 
+0x0581 002226 rtn 
+:      002227 p_low_power_nodata_off_led_time_check:
+0x0582 002228 arg mem_low_power_no_data_off_led_time ,regc 
+0x0583 002229 arg p_mouse_check_low_power_nodata_timeout ,regb 
+0x0584 002230 branch timer_single_step 
+:      002231 p_mouse_check_low_power_nodata_timeout:
+0x0585 002232 setarg g24_long_sleep_step3 
+0x0586 002233 store 3 ,mem_24g_enter_hibernate 
+0x0587 002234 jam 1 ,mem_low_power_led_blink_flag 
+0x0588 002235 branch p_mouse_adc_low_volatage_led_off 
+:      002236 p_mouse_seting_dpi:
+:      002237 p_mouse_seting_sensor_type:
+0x0589 002238 fetch 1 ,mem_config_sensor_type 
+0x058a 002240 beq ka8 ,p_mouse_seting_ka8_dpi 
+0x058b 002241 beq p3065_xy ,p_mouse_seting_3065xy_dpi 
+:      002242 p_mouse_seting_3205_dpi:
+0x058c 002243 fetch 1 ,mem_mouse_dpi 
+0x058d 002244 call p_mouse_3065xy_dpi_recount ,blank 
+0x058e 002245 fetch 1 ,mem_mouse_dpi 
+0x058f 002246 beq mouse_dpi_level2 ,p_mouse_3205_set_cpi1 
+0x0590 002247 beq mouse_dpi_level4 ,mouse_set_cpi3 
+0x0591 002248 branch mouse_set_cpi2 
+:      002249 p_mouse_3205_set_cpi1:
+0x0592 002250 fetch 1 ,mem_320x_dpi_1 
+0x0593 002251 increase -1 ,pdata 
+0x0594 002252 branch mouse_p3205_dpi 
+:      002254 p_mouse_seting_3065xy_dpi:
+0x0595 002255 fetch 1 ,mem_mouse_dpi 
+0x0596 002256 call p_mouse_3065xy_dpi_recount ,blank 
+0x0597 002257 fetch 1 ,mem_mouse_dpi 
+0x0598 002258 beq mouse_dpi_level2 ,p_mouse_8009_set_cpi1 
+0x0599 002259 beq mouse_dpi_level4 ,mouse_set_cpi3 
+0x059a 002260 branch mouse_set_cpi2 
+:      002261 p_mouse_3065xy_dpi_recount:
+0x059b 002262 jam mouse_dpi_level2 ,mem_mouse_dpi 
+0x059c 002263 rtn 
+:      002272 p_mouse_8009_set_cpi1:
+0x059d 002273 jam 0 ,mem_mouse_cpi_count 
+0x059e 002274 branch mouse_p3205_dpi + 3 
+:      002276 p_mouse_seting_ka8_dpi:
+0x059f 002284 fetch 1 ,mem_mouse_dpi 
+0x05a0 002285 beq mouse_dpi_level2 ,mouse_set_cpi2 
+0x05a1 002286 beq mouse_dpi_level1 ,mouse_set_cpi1 
+0x05a2 002287 beq mouse_dpi_level4 ,p_mouse_ka8_set_cpi3 
+0x05a3 002288 branch mouse_set_cpi4 
+:      002289 p_mouse_ka8_set_cpi3:
+0x05a4 002290 setarg 5 
+0x05a5 002291 branch mouse_p3205_dpi 
+:      002293 p_mouse_motion:
+0x05a6 002294 disable user 
+0x05a7 002295 setarg 0 
+0x05a8 002296 store 6 ,mem_mouse_x 
+0x05a9 002297 call p_mouse_cheak_sensor_data 
+0x05aa 002298 call mouse_zwheel 
+0x05ab 002299 call mouse_t_zwheel 
+0x05ac 002300 call p_mouse_key 
+0x05ad 002301 nbranch p_mouse_motion_nodata ,user 
+0x05ae 002302 branch mouse_motion + 9 
+:      002304 p_mouse_motion_nodata:
+0x05af 002305 jam 0 ,mem_low_power_check_count 
+0x05b0 002306 rtn 
+:      002308 p_mouse_key:
+0x05b1 002309 call p_mouse_check_key_gpio 
+0x05b2 002310 branch mouse_key + 1 
+:      002312 p_mouse_check_key_gpio:
+0x05b3 002313 arg 0 ,rega 
+0x05b4 002314 call p_mouse_check_lkey_gpio 
+0x05b5 002317 call p_mouse_check_skey_gpio 
+0x05b6 002318 branch mouse_check_key_gpio_output 
+:      002319 p_mouse_check_skey_gpio:
+0x05b7 002322 call p_mouse_check_bk_key_gpio 
+0x05b8 002323 branch p_mouse_check_fw_key_gpio 
+:      002325 p_mouse_check_lkey_gpio:
+0x05b9 002326 fetcht 1 ,mem_lbutton_gpio 
+0x05ba 002327 call p_gpio_set_input_pu 
+0x05bb 002328 fetcht 1 ,mem_lbutton_gpio 
+0x05bc 002329 call gpio_get_bit 
+0x05bd 002330 setflag true ,0 ,rega 
+:      002332 p_mouse_check_rkey_gpio:
+0x05be 002333 fetcht 1 ,mem_rbutton_gpio 
+0x05bf 002334 call p_gpio_set_input_pu 
+0x05c0 002335 fetcht 1 ,mem_rbutton_gpio 
+0x05c1 002336 call gpio_get_bit 
+0x05c2 002337 setflag true ,1 ,rega 
+:      002339 p_mouse_check_mkey_gpio:
+0x05c3 002340 fetcht 1 ,mem_mbutton_gpio 
+0x05c4 002341 call p_gpio_set_input_pu 
+0x05c5 002342 fetcht 1 ,mem_mbutton_gpio 
+0x05c6 002343 call gpio_get_bit 
+0x05c7 002344 setflag true ,2 ,rega 
+0x05c8 002345 rtn 
+:      002346 p_mouse_check_bk_key_gpio:
+0x05c9 002347 fetcht 1 ,mem_bk_button_gpio 
+0x05ca 002348 call p_gpio_set_input_pd 
+0x05cb 002349 fetcht 1 ,mem_bk_button_gpio 
+0x05cc 002350 call gpio_get_bit 
+0x05cd 002351 nsetflag true ,3 ,rega 
+0x05ce 002352 branch p_gpio_set_input_pu 
+:      002353 p_mouse_check_fw_key_gpio:
+0x05cf 002354 fetcht 1 ,mem_fw_button_gpio 
+0x05d0 002355 call p_gpio_set_input_pd 
+0x05d1 002356 fetcht 1 ,mem_fw_button_gpio 
+0x05d2 002357 call gpio_get_bit 
+0x05d3 002358 nsetflag true ,4 ,rega 
+0x05d4 002359 branch p_gpio_set_input_pu 
+:      002361 p_gpio_set_input_pd:
+0x05d5 002362 set0 gpio_active_bit ,temp 
+0x05d6 002363 arg core_gpio_pu0 ,contw 
+0x05d7 002364 call gpio_set_bit 
+0x05d8 002365 set1 gpio_active_bit ,temp 
+:      002366 p_gpio_set_input_pd4:
+0x05d9 002367 arg core_gpio_pd0 ,contw 
+0x05da 002368 call gpio_set_bit 
+0x05db 002369 set0 gpio_active_bit ,temp 
+0x05dc 002370 arg core_gpio_oe0 ,contw 
+0x05dd 002371 branch gpio_set_bit 
+:      002373 p_gpio_set_input_pu:
+0x05de 002374 set1 gpio_active_bit ,temp 
+:      002375 p_gpio_set_input_pu1:
+0x05df 002376 arg core_gpio_pu0 ,contw 
+0x05e0 002377 call gpio_set_bit 
+0x05e1 002378 set0 gpio_active_bit ,temp 
+0x05e2 002379 branch p_gpio_set_input_pd4 
+:      002387 p_mouse_cheak_sensor_data:
+0x05e3 002388 fetch 1 ,mem_config_sensor_type 
+:      002390 p_mouse_p32xx_sensor_motion:
+0x05e4 002391 call mouse_clear_sensor_data 
+0x05e5 002392 disable user 
+0x05e6 002398 branch mouse_p32xx_sensor_motion_2 
+:      002418 p_mouse_bb_event_discovery_btn:
+0x05e7 002419 call p_mouse_null_enter_hibernate_disable 
+0x05e8 002420 isolate1 mark_24g ,mark 
+0x05e9 002421 call p_g24_check_51cmd_stop_24g ,true 
+0x05ea 002422 branch mouse_bb_event_discovery_btn + 1 
+:      002424 p_le_addr_random_config:
+0x05eb 002425 jam zcode_81 ,mem_zcode_temp_param0 
+0x05ec 002426 branch p_zcode_entrance 
+:      002428 p_mouse_start_discovery:
+0x05ed 002429 jam zcode_50 ,mem_zcode_temp_param0 
+0x05ee 002430 branch p_zcode_entrance 
+:      002432 p_mouse_load_random_addr_increase_count:
+0x05ef 002433 call p_flash_release_deep_power_down 
+0x05f0 002434 arg 2 ,temp 
+0x05f1 002435 arg mem_random_addr_increase_count ,rega 
+0x05f2 002436 arg mouse_random_addr_count_eeprom_offset ,regb 
+0x05f3 002437 fetch 3 ,mem_flash_base 
+0x05f4 002438 iadd regb ,pdata 
+0x05f5 002439 branch spid_read_flash 
+:      002441 p_mouse_load_fast_conn_flag:
+0x05f6 002442 call p_flash_release_deep_power_down 
+0x05f7 002443 arg 1 ,temp 
+0x05f8 002444 arg mem_mouse_fast_conn_flag ,rega 
+0x05f9 002445 arg mouse_fast_conn_flag_offset ,regb 
+0x05fa 002446 fetch 3 ,mem_flash_base 
+0x05fb 002447 iadd regb ,pdata 
+0x05fc 002448 branch spid_read_flash 
+:      002451 p_le_adv_data_update:
+0x05fd 002452 arg mem_le_adv_data + 11 ,contw 
+0x05fe 002453 arg 19 ,loopcnt 
+0x05ff 002454 call memcpy 
+0x0600 002455 branch le_modified_name_adv 
+:      002457 p_mouse_stop_discovery:
+0x0601 002458 setarg 0 
+0x0602 002459 store 2 ,mem_mouse_discovery_timer 
+0x0603 002460 call p_mouse_sensor_poweron 
+0x0604 002464 fetch 1 ,mem_device_option 
+0x0605 002465 isolate1 mode_3_mouse ,pdata 
+0x0606 002466 call mouse_stop_bt3_discovery ,true 
+0x0607 002469 branch p_mouse_discovey_led_blink_off 
+:      002472 p_le_slave_match:
+0x0608 002473 fetch 1 ,mem_le_md_count 
+0x0609 002474 pincrease 1 
+0x060a 002475 store 1 ,mem_le_md_count 
+0x060b 002476 beq le_md_max_count ,le_slave_cont 
+0x060c 002477 call le_acknowledge 
+0x060d 002478 call le_prepare_tx 
+0x060e 002479 call power_ctrl_start 
+0x060f 002480 branch le_slave_match + 7 
+:      002482 p_le_next_adv_channel:
+0x0610 002483 fetch 1 ,mem_le_ch_mapped 
+0x0611 002484 increase 1 ,pdata 
+0x0612 002485 store 1 ,mem_le_ch_mapped 
+0x0613 002486 rtnne 40 
+0x0614 002487 jam 37 ,mem_le_ch_mapped 
+0x0615 002488 rtn 
+:      002490 p_le_receive_skip:
+0x0616 002491 call save_rssi 
+0x0617 002492 call p_rssi_signal 
+0x0618 002493 branch le_receive_skip + 2 
+:      002495 p_le_update_param:
+0x0619 002496 jam zcode_40 ,mem_zcode_temp_param0 
+0x061a 002497 branch p_zcode_entrance 
+:      002499 p_le_update_channel_map:
+0x061b 002500 jam zcode_41 ,mem_zcode_temp_param0 
+0x061c 002501 branch p_zcode_entrance 
+:      002503 p_le_prepare_tx:
+0x061d 002504 fetch 1 ,mem_le_arq 
+0x061e 002505 bbit1 wak ,p_le_prepare_tx_wak 
+0x061f 002506 call power_ctrl_pac_succ_incrs 
+0x0620 002507 fetch 1 ,mem_empty_count 
+0x0621 002508 nbranch p_le_send_empyt ,blank 
+0x0622 002509 fetch 1 ,mem_le_state 
+0x0623 002510 bbit0 lestate_encryption ,p_le_tx_4 
+0x0624 002511 fetch 1 ,mem_le_rxbuf + 1 
+0x0625 002512 branch p_le_tx_4 ,blank 
+0x0626 002513 branch le_send_empty 
+:      002514 p_le_send_empyt:
+0x0627 002515 fetch 1 ,mem_empty_count 
+0x0628 002516 increase -1 ,pdata 
+0x0629 002517 store 1 ,mem_empty_count 
+0x062a 002518 branch le_send_empty 
+:      002519 p_le_tx_4:
+0x062b 002520 fetch 1 ,mem_le_pairing_state 
+0x062c 002521 bne flag_le_pairing_after_auth ,p_in_le_tx_4 
+0x062d 002522 jam 3 ,mem_empty_count 
+:      002523 p_in_le_tx_4:
+0x062e 002524 call le_fifo_check_nearly_full 
+0x062f 002525 call p_mouse_data_pull ,blank 
+0x0630 002526 branch le_prepare_tx + 4 
+:      002528 p_le_prepare_tx_wak:
+0x0631 002529 call p_le_check_tx_retransmit_setmd 
+0x0632 002530 branch p_le_power_ctrl_pac_succ_decrs 
+:      002532 p_le_check_tx_retransmit_setmd:
+0x0633 002533 fetch 1 ,mem_le_connect_status_flag 
+0x0634 002534 and pdata ,0x03 ,pdata 
+0x0635 002535 rtnne 0x03 
+0x0636 002536 fetch 1 ,mem_mouse_data_queue_num 
+0x0637 002537 rtn blank 
+0x0638 002538 fetch 1 ,mem_le_txlen 
+0x0639 002539 rtn blank 
+0x063a 002540 fetch 1 ,mem_le_txheader 
+0x063b 002541 set1 md ,pdata 
+0x063c 002542 store 1 ,mem_le_txheader 
+0x063d 002543 call le_set_md 
+0x063e 002544 rtn 
+:      002548 p_le_power_ctrl_pac_succ_decrs:
+0x063f 002549 branch power_ctrl_pac_succ_decrs 
+:      002551 p_mouse_le_reconn_write_enable_timer_reinit:
+0x0640 002552 fetch 1 ,mem_mouse_le_reconnect_flag 
+0x0641 002553 rtn blank 
+0x0642 002554 fetch 1 ,mem_le_connect_status_flag 
+0x0643 002555 and pdata ,0x03 ,pdata 
+0x0644 002556 rtneq 0x03 
+0x0645 002557 jam 1 ,mem_le_start_encrypt_timer 
+0x0646 002558 rtn 
+:      002560 p_le_parse:
+0x0647 002561 rtnmark1 mark_old_packet 
+0x0648 002562 call le_fifo_check_full 
+0x0649 002563 nrtn blank 
+0x064a 002564 fetch 1 ,mem_le_rxbuf 
+0x064b 002565 and pdata ,0x3 ,pdata 
+0x064c 002566 store 1 ,mem_le_packet_llid 
+0x064d 002567 ifetch 1 ,contr 
+0x064e 002568 and pdata ,0x1f ,pdata 
+0x064f 002569 store 1 ,mem_le_packet_size 
+0x0650 002570 rtn blank 
+0x0651 002571 copy contr ,pdata 
+0x0652 002572 store 2 ,mem_le_payload_ptr 
+0x0653 002573 fetch 1 ,mem_le_packet_llid 
+0x0654 002574 beq llid_le_ll ,p_le_parse_ll 
+0x0655 002575 branch le_parse_l2cap 
+:      002576 p_le_parse_ll:
+0x0656 002577 fetch 1 ,mem_le_rxbuf + 2 
+0x0657 002578 beq ll_channel_map_req ,p_le_parse_channel_map_req 
+0x0658 002579 branch le_parse_ll + 1 
+:      002580 p_le_parse_channel_map_req:
+0x0659 002581 ifetch 5 ,contr 
+0x065a 002582 store 5 ,mem_le_new_map 
+0x065b 002583 ifetch 2 ,contr 
+0x065c 002584 store 2 ,mem_le_instant 
+0x065d 002585 branch le_parse_channel_map_req + 7 
+:      002587 p_le_parse_l2cap:
+0x065e 002588 ifetch 2 ,contr 
+0x065f 002589 beq le_l2cap_cid_att ,p_le_parse_att 
+0x0660 002590 beq le_l2cap_cid_smp ,p_le_parse_smp 
+0x0661 002591 branch le_parse_l2cap + 11 
+:      002592 p_le_parse_att:
+0x0662 002593 call store_contr 
+0x0663 002594 call p_mouse_le_reconn_write_enable_timer_reinit 
+0x0664 002595 call get_contr 
+0x0665 002596 ifetch 3 ,contr 
+0x0666 002597 store 3 ,mem_le_att_opcode 
+0x0667 002598 beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
+0x0668 002599 rshift8 pdata ,temp 
+0x0669 002600 sub temp ,0x24 ,null 
+0x066a 002601 branch p_le_parse_att1 ,positive 
+0x066b 002602 arg mem_mouse_le_uuid_sup ,temp 
+0x066c 002603 storet 2 ,mem_ui_le_uuid_table 
+0x066d 002604 call le_parse_att + 2 
+0x066e 002605 setarg 0x8e7a 
+0x066f 002606 store 2 ,mem_ui_le_uuid_table 
+0x0670 002607 rtn 
+:      002609 p_le_parse_att_read_by_group_type_request:
+0x0671 002610 call le_parse_att_read_by_group_type_request 
+0x0672 002611 call le_fifo_get_last_tx_ptr 
+0x0673 002612 increase 7 ,contr 
+0x0674 002613 ifetch 1 ,contr 
+0x0675 002614 rtnne attop_read_by_group_type_response 
+0x0676 002615 increase 5 ,contr 
+0x0677 002616 ifetch 2 ,contr 
+0x0678 002617 arg uuid_service_hids ,temp 
+0x0679 002618 isub temp ,null 
+0x067a 002619 nrtn zero 
+0x067b 002620 increase -4 ,contr 
+0x067c 002621 setarg 0x2b 
+0x067d 002622 istore 2 ,contr 
+0x067e 002623 rtn 
+:      002625 p_le_parse_att1:
+0x067f 002626 beq attop_read_request ,p_le_parse_att_read_request 
+0x0680 002627 branch le_parse_att + 2 
+:      002628 p_le_parse_att_read_request:
+0x0681 002629 fetcht 2 ,mem_le_att_handle 
+0x0682 002630 fetch 1 ,mem_le_configuration 
+0x0683 002631 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+:      002632 p_le_send_att_read_response:
+0x0684 002641 fetch 2 ,mem_le_att_handle 
+0x0685 002642 beq 0x13 ,le_send_att_error_response_notfound 
+0x0686 002644 fetcht 2 ,mem_le_att_handle 
+0x0687 002645 branch le_send_att_read_response 
+:      002659 p_le_send_att_read_response_check_auth:
+0x0688 002660 fetch 2 ,mem_le_pairing_handle 
+0x0689 002661 isub temp ,null 
+0x068a 002662 nbranch p_le_send_att_read_response ,zero 
+0x068b 002663 call le_check_encrypt_state 
+0x068c 002664 nbranch p_le_send_att_read_response ,user 
+0x068d 002665 jam att_err_insufficient_authentication ,mem_le_err_code 
+0x068e 002666 branch le_send_att_error_response 
+:      002669 p_le_parse_smp:
+0x068f 002670 ifetch 1 ,contr 
+0x0690 002671 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
+0x0691 002672 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+0x0692 002673 branch le_parse_smp + 2 
+:      002675 p_le_parse_smp_pairing_request:
+0x0693 002676 jam 1 ,mem_le_send_security_request_flag 
+0x0694 002677 branch le_parse_smp_pairing_request 
+:      002679 p_le_parse_smp_pairing_failed:
+0x0695 002680 jam zcode_82 ,mem_zcode_temp_param0 
+0x0696 002681 branch p_zcode_entrance 
+:      002683 p_le_adv_not_match:
+0x0697 002684 fetch 1 ,mem_le_ch_mapped 
+0x0698 002685 bne 39 ,le_adv_loop 
+0x0699 002686 call p_le_adv_random_delay 
+0x069a 002687 arg le_adv_interval_timer ,queue 
+0x069b 002688 fetch 2 ,mem_le_adv_interval 
+0x069c 002689 branch timer_init 
+:      002690 p_le_adv_random_delay:
+0x069d 002691 random pdata 
+0x069e 002692 arg 0x1ff ,temp 
+0x069f 002693 iand temp ,pdata 
+0x06a0 002694 add pdata ,250 ,pdata 
+0x06a1 002695 branch delay 
+:      002697 p_le_lpm_setmult:
+0x06a2 002698 disable wake 
+0x06a3 002699 branch p_le_lpm_set_mult_attempt ,attempt 
+0x06a4 002700 nbranch le_lpm_lost ,match 
+:      002701 p_le_lpm_set_mult_attempt:
+0x06a5 002702 call lpm_match 
+0x06a6 002703 fetch 2 ,mem_rx_window_sniff 
+0x06a7 002704 store 2 ,mem_le_receive_window 
+0x06a8 002705 fetch 1 ,mem_le_connect_status_flag 
+0x06a9 002706 compare 3 ,pdata ,3 
+0x06aa 002707 nbranch lpm_mult_short ,true 
+0x06ab 002708 branch le_lpm_set_mult_attempt + 3 
+:      002710 p_le_mouse_bb_event_connect_complete:
+0x06ac 002711 jam zcode_42 ,mem_zcode_temp_param0 
+0x06ad 002712 branch p_zcode_entrance 
+:      002714 p_twspi_reset:
+0x06ae 002715 hfetch 1 ,core_gpio_out3 
+0x06af 002716 and_into 0xfd ,pdata 
+0x06b0 002717 hstore 1 ,core_gpio_out3 
+0x06b1 002718 hfetcht 1 ,core_gpio_oe3 
+0x06b2 002719 or_into 0x2 ,temp 
+0x06b3 002720 hstoret 1 ,core_gpio_oe3 
+0x06b4 002721 call twspi_disable 
+0x06b5 002722 and_into 0xfd ,temp 
+0x06b6 002723 nop 13 
+0x06b7 002724 call p_twspi_enable 
+0x06b8 002725 hstoret 1 ,core_gpio_oe3 
+0x06b9 002726 rtn 
+:      002728 p_spid_init:
+0x06ba 002729 call spid_init_common 
+:      002730 p_twspi_enable:
+0x06bb 002731 hfetch 1 ,core_gpio_sel1 
+0x06bc 002732 set1 0 ,pdata 
+0x06bd 002733 set0 1 ,pdata 
+0x06be 002734 set0 3 ,pdata 
+0x06bf 002735 hstore 1 ,core_gpio_sel1 
+0x06c0 002736 rtn 
+:      002739 p_page_wait_fhs_reply_ok:
+0x06c1 002740 jam zcode_00 ,mem_zcode_temp_param0 
+0x06c2 002741 branch p_zcode_entrance 
+:      002743 p_role_switch_master:
+0x06c3 002744 call role_switch_check 
+0x06c4 002745 nrtn user 
+:      002746 p_wait_role_switch_anchor:
+0x06c5 002747 disable user 
+0x06c6 002748 jam param_newconnto ,mem_newconnto_counter 
+0x06c7 002749 set0 mark_fhs_already_good ,mark 
+0x06c8 002750 set0 mark_role_switch_receive_fhs ,mark 
+:      002751 p_roles_waitfhs_loop:
+0x06c9 002752 call rf_setup_time_master_slot 
+0x06ca 002753 call master_recv_packet 
+0x06cb 002754 bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
+0x06cc 002755 call new_conn_timeout 
+0x06cd 002756 nbranch p_roles_waitfhs_loop ,blank 
+0x06ce 002757 bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
+0x06cf 002758 branch role_switch_fail_master 
+:      002760 p_roles_replyto_fhs:
+0x06d0 002761 call rf_setup_time_slave_slot 
+0x06d1 002762 arg type_id ,type 
+0x06d2 002763 call master_send_packet 
+0x06d3 002764 set1 mark_role_switch_receive_fhs ,mark 
+0x06d4 002765 set0 mark_fhs_already_good ,mark 
+0x06d5 002766 fetch 1 ,mem_amaddr 
+0x06d6 002767 iforce am_addr 
+0x06d7 002768 jam 2 ,mem_newconnto_counter 
+0x06d8 002769 branch p_roles_waitfhs_loop 
+:      002771 p_roles_replyto_fhs1:
+0x06d9 002772 fetch 4 ,mem_clke_bt 
+0x06da 002773 pincrease 8 
+0x06db 002774 store 4 ,mem_clke_bt 
+0x06dc 002775 branch roles_replyto_fhs + 4 
+:      002777 p_process_dmh:
+0x06dd 002778 bmark1 mark_first_packet ,end_of_packet 
+0x06de 002779 branch process_dmh + 1 
+:      002781 p_quit_connection_cont:
+0x06df 002782 call app_disconn_reason_collect_bt 
+0x06e0 002783 call sniff_exit 
+0x06e1 002784 jam bt_evt_bb_disconnected ,mem_fifo_temp 
+0x06e2 002785 call ui_ipc_send_event 
+0x06e3 002786 call init_lmp_work 
+0x06e4 002787 call l2cap_init_work 
+0x06e5 002788 branch quit_connection_cont + 8 
+:      002790 p_prepare_tx:
+0x06e6 002791 fetch 1 ,mem_state 
+0x06e7 002792 isolate1 state_inconn ,pdata 
+0x06e8 002793 call p_bt_power_ctrl ,true 
+0x06e9 002794 branch prepare_tx + 1 
+:      002795 p_bt_power_ctrl:
+0x06ea 002796 fetch 1 ,mem_arq 
+0x06eb 002797 isolate1 wack ,pdata 
+0x06ec 002798 call power_ctrl_pac_succ_decrs ,true 
+0x06ed 002799 ncall power_ctrl_pac_succ_incrs ,true 
+0x06ee 002800 branch power_ctrl_start 
+:      002802 p_slave_conn_recv_packet:
+0x06ef 002803 call slave_receive_master_slot 
+0x06f0 002804 nbranch shutdown_radio ,sync 
+0x06f1 002805 call save_rssi 
+0x06f2 002806 call p_rssi_signal 
+0x06f3 002807 branch slave_conn_recv_packet + 4 
+:      002809 p_lpm_dispatch:
+0x06f4 002810 rtnmark1 mark_24g 
+0x06f5 002811 call lpo_calibration 
+0x06f6 002812 fetch 3 ,mem_clks_per_lpo 
+0x06f7 002813 rtn blank 
+0x06f8 002814 fetch 1 ,mem_lpm_mode 
+0x06f9 002815 rtn blank 
+0x06fa 002816 fetch 1 ,mem_ssp_enable 
+0x06fb 002817 branch p_lpm_dispatch_next ,blank 
+0x06fc 002818 fetch 1 ,mem_sp_local_key_invalid 
+0x06fd 002819 rtn blank 
+:      002820 p_lpm_dispatch_next:
+0x06fe 002821 fetch 1 ,mem_le_sc_calc 
+0x06ff 002822 nrtn blank 
+0x0700 002823 call lpm_check_wake_lock 
+0x0701 002824 nrtn blank 
+0x0702 002825 fetch 1 ,mem_context 
+0x0703 002826 compare 3 ,pdata ,0x7 
+0x0704 002827 nbranch lpm_dispatch_unconn ,true 
+0x0705 002828 fetch 2 ,mem_context + coffset_tsniff 
+0x0706 002829 arg 0xffff ,temp 
+0x0707 002830 isub temp ,null 
+0x0708 002831 rtn zero 
+0x0709 002832 branch lpm_dispatch_next + 9 
+:      002834 p_lpm_set_mult:
+0x070a 002835 disable wake 
+0x070b 002836 fetch 1 ,mem_state 
+0x070c 002837 rtnbit0 state_insniff 
+0x070d 002838 nbranch lpm_not_match ,match 
+0x070e 002839 call lpm_match 
+0x070f 002840 fetch 2 ,mem_rx_window_sniff 
+0x0710 002841 store 2 ,mem_rx_window 
+0x0711 002842 fetch 1 ,mem_arq 
+0x0712 002843 bbit1 wack ,lpm_mult_short 
+0x0713 002844 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0x0714 002845 call l2cap_malloc_is_fifo_empty 
+0x0715 002846 nbranch lpm_mult_short ,blank 
+0x0716 002847 call p_lpm_set_attemp_timeout ,blank 
+0x0717 002848 branch lpm_set_mult + 13 
+:      002849 p_lpm_set_attemp_timeout:
+0x0718 002850 jam 1 ,mem_current_sniff_attempt 
+0x0719 002851 jam 0 ,mem_current_sniff_timeout 
+0x071a 002852 rtn 
+:      002854 p_mouse_bb_disconnected:
+0x071b 002855 jam zcode_10 ,mem_zcode_temp_param0 
+0x071c 002856 branch p_zcode_entrance 
+:      002858 p_hid_rx_process:
+0x071d 002859 jam zcode_11 ,mem_zcode_temp_param0 
+0x071e 002860 branch p_zcode_entrance 
+:      002862 p_parse_lmp_accepted:
+0x071f 002863 fetch 1 ,mem_rxbuf + 1 
+0x0720 002864 store 1 ,mem_lmi_accepted_opcode 
+0x0721 002865 beq lmp_switch_req ,p_parse_lmp_accepted_switch 
+0x0722 002866 branch parse_lmp_accepted + 3 
+:      002867 p_parse_lmp_accepted_switch:
+0x0723 002868 call parse_lmp_accepted_switch 
+0x0724 002869 jam 1 ,mem_bt_rcvd_switch_req_accept 
+0x0725 002870 fetch 1 ,mem_bt_send_lmp_setup_complete 
+0x0726 002871 rtn blank 
+0x0727 002872 jam 2 ,mem_bt_send_lmp_setup_complete 
+0x0728 002873 rtn 
+:      002875 p_send_lmp:
+0x0729 002876 jam zcode_20 ,mem_zcode_temp_param0 
+0x072a 002877 branch p_zcode_entrance 
+:      002879 p_process_conn_sm:
+0x072b 002880 call lmo_fifo_check 
+0x072c 002881 nrtn blank 
+:      002882 p_process_conn_sm_continue:
+0x072d 002883 fetch 1 ,mem_conn_sm 
+0x072e 002884 rtn blank 
+0x072f 002885 beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
+0x0730 002886 beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
+0x0731 002887 branch process_conn_sm_continue + 2 
+:      002889 p_host_creat_conn_wait_switch:
+0x0732 002890 fetch 1 ,mem_switch_flag 
+0x0733 002891 rtneq switch_flag_init 
+0x0734 002892 beq switch_flag_accept ,p_host_create_conn_switch_accept 
+0x0735 002893 branch host_creat_conn_wait_switch + 3 
+:      002894 p_host_create_conn_switch_accept:
+0x0736 002895 rtn master 
+:      002896 p_host_create_conn_auth_pair:
+0x0737 002898 fetch 1 ,mem_connection_options 
+0x0738 002899 bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
+0x0739 002900 branch host_create_conn_auth_pair + 1 
+:      002901 p_host_create_conn_auth_pair_true:
+0x073a 002902 fetch 1 ,mem_bt_send_lmp_setup_complete 
+0x073b 002903 beq 1 ,host_create_conn_auth_pair_true 
+0x073c 002905 fetch 1 ,mem_link_key_exists 
+0x073d 002906 branch host_create_conn_auth_pair_nokey ,blank 
+0x073e 002907 fetch 1 ,mem_lmp_conn_state 
+0x073f 002908 rtnbit0 sent_setup_complete 
+0x0740 002909 rtnbit0 received_setup_complete 
+0x0741 002910 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+0x0742 002911 rtn blank 
+0x0743 002912 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
+0x0744 002913 fetch 4 ,mem_aurand_send_delay_time 
+0x0745 002914 arg 20 ,temp 
+0x0746 002915 iadd temp ,temp 
+0x0747 002916 copy clkn_bt ,pdata 
+0x0748 002917 isub temp ,null 
+0x0749 002918 nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
+0x074a 002919 branch host_create_conn_auth 
+:      002921 p_bt_send_max_slot_req_accept_after_switch_wait:
+0x074b 002922 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+0x074c 002923 rtn 
+:      002925 p_host_create_conn_send_conn_req:
+0x074d 002926 jam 20 ,mem_mouse_send_switch_req_timer 
+0x074e 002927 branch host_create_conn_send_conn_req 
+:      002933 p_check_51cmd_once_continue:
+0x074f 002934 call lmo_fifo_check 
+0x0750 002935 nbranch check_51cmd_restore ,blank 
+0x0751 002936 fetch 1 ,mem_fifo_temp 
+0x0752 002937 bmark0 mark_context ,check_51cmd_check_idle 
+0x0753 002938 beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
+0x0754 002939 beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
+0x0755 002940 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+0x0756 002941 branch check_51cmd_once_continue + 2 
+:      002943 p_check_51cmd_ble_update_connect_param:
+0x0757 002944 call le_fifo_check_full 
+0x0758 002945 nrtn blank 
+0x0759 002946 branch le_l2cap_tx_update_req 
+:      002948 p_flash_store_le_reconn_info:
+0x075a 002949 jam rec_4_mode ,mem_record_bt_mode 
+0x075b 002950 fetch 6 ,mem_le_plap 
+0x075c 002951 branch p_flash_store_reconn_info 
+:      002952 p_flash_store_bd_reconn_info:
+0x075d 002953 jam rec_3_mode ,mem_record_bt_mode 
+0x075e 002954 fetch 6 ,mem_plap 
+:      002955 p_flash_store_reconn_info:
+0x075f 002956 store 6 ,mem_temp_lap 
+:      002957 p_mouse_store_remote_bdaddr:
+0x0760 002958 fetch mouse_flag_len ,mem_mouse_flag 
+0x0761 002959 rtnbit0 mouse_store_eeprom_flag 
+0x0762 002960 arg mouse_store_eeprom_flag ,queue 
+0x0763 002961 call mouse_disable_function_flag 
+0x0764 002962 call mouse_check_device_addr 
+:      002963 p_mouse_unplug_clean_bdaddr:
+0x0765 002964 call mouse_before_store_reconn_info 
+0x0766 002965 branch p_mouse_store_flash_device_info 
+:      002970 power_ctrl_pac_succ_cnt_init:
+0x0767 002971 jam 1 ,mem_power_ctrl_level 
+0x0768 002972 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0x0769 002973 rtn 
+:      002974 power_ctrl_pac_succ_incrs:
+0x076a 002975 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x076b 002976 increase 1 ,pdata 
+0x076c 002977 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0x076d 002978 rtn 
+:      002979 power_ctrl_pac_succ_decrs:
+0x076e 002980 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x076f 002981 sub pdata ,2 ,null 
+0x0770 002982 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+0x0771 002983 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0772 002984 rtneq 0 
+0x0773 002985 increase -1 ,pdata 
+0x0774 002986 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0775 002987 rtn 
+:      002988 power_ctrl_pac_succ_cnt_reinit:
+0x0776 002989 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+0x0777 002990 rtn 
+:      002992 power_ctrl_start:
+0x0778 002993 fetch 2 ,mem_ui_state_map 
+0x0779 002994 rtnbit1 ui_state_ble_adv 
+0x077a 002995 rtnbit1 ui_state_bt_reconnect 
+0x077b 002996 rtnbit1 ui_state_bt_discovery 
+0x077c 002998 arg mem_rssi_signal_buf ,rega 
+0x077d 002999 call p_rssi_average 
+0x077e 003000 storet 1 ,mem_rssi_avg_received 
+0x077f 003002 setarg rssi_dis_max_24g 
+0x0780 003003 bmark1 mark_24g ,power_ctrl_start_next 
+0x0781 003004 setarg rssi_dis_max_ble 
+:      003005 power_ctrl_start_next:
+0x0782 003006 isub temp ,null 
+0x0783 003007 nbranch power_ctrl_txpower_incrs_force ,positive 
+0x0784 003009 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0785 003010 sub pdata ,2 ,null 
+0x0786 003011 nbranch power_ctrl_txpower_decrs_check ,positive 
+0x0787 003012 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x0788 003013 beq 0 ,power_ctrl_txpower_incrs 
+0x0789 003014 rtn 
+:      003016 power_ctrl_txpower_decrs_check:
+0x078a 003017 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0x078b 003018 rtnne 32 
+0x078c 003019 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+:      003020 power_ctrl_txpower_decrs:
+0x078d 003021 fetcht 1 ,mem_rssi_avg_received 
+0x078e 003022 setarg rssi_dis_min_24g 
+0x078f 003023 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+0x0790 003024 setarg rssi_dis_min_ble 
+:      003025 power_ctrl_txpower_decrs_next:
+0x0791 003026 isub temp ,null 
+0x0792 003027 nrtn positive 
+0x0793 003028 fetch 1 ,mem_power_ctrl_level 
+0x0794 003029 beq 0 ,power_ctrl_decrs_level0 
+0x0795 003030 increase -1 ,pdata 
+0x0796 003031 store 1 ,mem_power_ctrl_level 
+0x0797 003032 beq 0 ,power_ctrl_decrs_level0 
+:      003033 power_ctrl_decrs_level1:
+:      003034 power_ctrl_incrs_level1:
+0x0798 003035 jam tx_power_0db ,mem_tx_power 
+0x0799 003036 rtn 
+:      003038 power_ctrl_txpower_incrs_force:
+0x079a 003039 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+:      003040 power_ctrl_txpower_incrs:
+0x079b 003041 fetch 1 ,mem_power_ctrl_level 
+0x079c 003042 beq 2 ,power_ctrl_incrs_level2 
+0x079d 003043 increase 1 ,pdata 
+0x079e 003044 store 1 ,mem_power_ctrl_level 
+0x079f 003045 beq 1 ,power_ctrl_incrs_level1 
+:      003046 power_ctrl_incrs_level2:
+0x07a0 003047 jam tx_power_5db ,mem_tx_power 
+0x07a1 003048 rtn 
+:      003050 power_ctrl_decrs_level0:
+0x07a2 003051 jam tx_power_f5db ,mem_tx_power 
+0x07a3 003052 rtn 
+:      003055 p_set_freq_tx:
+0x07a4 003056 storet 1 ,mem_last_freq 
+0x07a5 003057 add temp ,0 ,rega 
+0x07a6 003058 call rf_write_freq 
+0x07a7 003059 setarg param_pll_setup 
+0x07a8 003060 call sleep 
+:      003061 p_rf_tx_enable:
+0x07a9 003062 jam 0x1 ,rfen_adc 
+0x07aa 003063 jam 0x3c ,rfen_rx 
+0x07ab 003064 jam 0xe0 ,rfen_tx 
+0x07ac 003065 nop 10 
+0x07ad 003066 jam 0x01 ,rfen_mdm 
+0x07ae 003067 jam 0x3d ,rfen_mdm 
+0x07af 003068 nop 10 
+0x07b0 003069 jam 0xb7 ,rfen_sn 
+0x07b1 003070 nop 10 
+0x07b2 003071 jam 0x7d ,rfen_mdm 
+0x07b3 003072 fetch 1 ,mem_tx_power 
+0x07b4 003075 beq tx_power_5db ,p_set_tx_power_5db 
+0x07b5 003077 beq tx_power_f5db ,p_set_tx_power_f5db 
+0x07b6 003078 beq tx_power_pair ,p_set_tx_power_pair 
+:      003080 p_set_tx_power_0db:
+0x07b7 003081 call p_rx_low_sens 
+0x07b8 003083 jam 0xd0 ,0x8955 
+0x07b9 003084 jam 0xe0 ,0x8956 
+0x07ba 003086 jam 0x6c ,0x8958 
+0x07bb 003088 branch set_tx_power_0db 
+:      003100 p_set_tx_power_5db:
+0x07bc 003101 call p_rx_high_sens 
+0x07bd 003103 jam 0xd0 ,0x8955 
+0x07be 003104 jam 0xe0 ,0x8956 
+0x07bf 003106 jam 0x3c ,0x8958 
+0x07c0 003108 branch set_tx_power_5db 
+:      003120 p_set_tx_power_f5db:
+0x07c1 003121 call p_rx_low_sens 
+0x07c2 003123 jam 0xd0 ,0x8955 
+0x07c3 003124 jam 0xc0 ,0x8956 
+0x07c4 003126 jam 0x6c ,0x8958 
+0x07c5 003128 branch set_tx_power_f5db 
+:      003130 p_rx_low_sens:
+0x07c6 003131 jam 0x5b ,0x894c 
+0x07c7 003132 jam 0x96 ,0x894d 
+0x07c8 003133 jam 0x2c ,0x894e 
+0x07c9 003134 jam 0x46 ,0x894f 
+0x07ca 003135 rtn 
+:      003137 p_rx_high_sens:
+0x07cb 003138 jam 0xfb ,0x894c 
+0x07cc 003139 jam 0xef ,0x894d 
+0x07cd 003140 jam 0xec ,0x894e 
+0x07ce 003141 jam 0x5e ,0x894f 
+0x07cf 003142 rtn 
+:      003144 p_set_tx_power_pair:
+0x07d0 003146 jam 0xc2 ,0x8956 
+0x07d1 003147 jam 0xd0 ,0x8955 
+0x07d2 003148 rtn 
+:      003150 p_shutdown_radio:
+0x07d3 003151 force 8 ,radio_ctrl 
+0x07d4 003152 branch shutdown_radio + 1 
+:      003156 p_zcode_entrance:
+0x07d5 003157 fetcht 1 ,mem_zcode_temp_param0 
+0x07d6 003158 rshift4 temp ,temp 
+0x07d7 003159 fetch 1 ,mem_zcode_current_number 
+0x07d8 003160 isub temp ,null 
+0x07d9 003161 branch p_zcode_run ,zero 
+0x07da 003162 storet 1 ,mem_zcode_current_number 
+0x07db 003163 increase 1 ,temp 
+0x07dc 003164 setarg zcode_buff_size 
+0x07dd 003165 imul32 temp ,temp 
+0x07de 003166 fetch 3 ,mem_xip_flash_offset 
+0x07df 003167 isub temp ,pdata 
+0x07e0 003169 fetcht 3 ,mem_flash_start_addr 
+0x07e1 003170 iadd temp ,pdata 
+0x07e2 003171 increase -5 ,pdata 
+0x07e3 003172 store 3 ,mem_flash_address 
+0x07e4 003174 call p_flash_release_deep_power_down 
+:      003175 p_zcode_read_loop:
+0x07e5 003176 fetch 3 ,mem_flash_address 
+0x07e6 003177 arg zcode_buff_size ,temp 
+0x07e7 003178 arg mem_zcode_buff ,rega 
+0x07e8 003179 call spid_read_flash 
+0x07e9 003180 fetch 4 ,mem_zcode_buff 
+0x07ea 003181 branch p_zcode_read_loop ,blank 
+0x07eb 003182 call p_mouse_spi_init 
+0x07ec 003184 setarg mem_zcode_buff 
+0x07ed 003185 store 2 ,mem_patch_ptr 
+0x07ee 003186 jam zcode_code_size ,mem_patch_len 
+0x07ef 003187 call load_ucode 
+0x07f0 003188 setarg 0 
+0x07f1 003189 store 4 ,mem_patch_ptr 
+:      003190 p_zcode_run:
+0x07f2 003191 fetch 1 ,mem_zcode_temp_param0 
+0x07f3 003192 branch p_zcode 
+              org 0x2000
+:      003208 start:
+0x2000 003209 call lpmstate 
+:      003211 soft_reset:
+0x2001 003212 bpatch patch00_0 ,mem_patch00 
+0x2002 003213 clear_stack 
+0x2003 003214 call spi_ncs_gpio_init 
+0x2004 003215 call initialize_radio 
+0x2005 003216 call iicd_init_12m 
+0x2006 003217 call init_param 
+0x2007 003218 call l2cap_init 
+0x2008 003219 bpatch patch00_1 ,mem_patch00 
+0x2009 003220 call rfcomm_init 
+0x200a 003221 call init_lmp 
+0x200b 003222 call ui_init 
+0x200c 003223 call app_init 
+0x200d 003224 ncall load_chip_option ,wake 
+0x200e 003225 bpatch patch00_2 ,mem_patch00 
+0x200f 003226 call app_lpm_init ,wake 
+0x2010 003227 call publickey_init 
+0x2011 003228 call lpm_recover_clk ,wake 
+:      003229 main_loop:
+0x2012 003230 bpatch patch00_3 ,mem_patch00 
+0x2013 003231 call sp_calc_sequence 
+0x2014 003232 call sp_calc_sequence_256 
+0x2015 003233 call sp_calc_sequence_256_check 
+0x2016 003234 call le_dispatch 
+0x2017 003235 bpatch patch00_4 ,mem_patch00 
+0x2018 003236 call idle_dispatch 
+0x2019 003237 call app_process_idle 
+0x201a 003238 call inquiry_dispatch 
+0x201b 003239 call inquiry_scan_dispatch 
+0x201c 003240 call page_scan_dispatch 
+0x201d 003241 call connection_dispatch 
+0x201e 003242 call lpm_dispatch 
+0x201f 003243 call g24_dispatch 
+0x2020 003244 branch main_loop 
+:      003246 connection_dispatch:
+0x2021 003247 call connection_incontext 
+0x2022 003248 rtnmark0 mark_context 
+0x2023 003249 set0 mark_context ,mark 
+0x2024 003250 call context_save 
+0x2025 003251 branch le_disable 
+:      003253 connection_incontext:
+0x2026 003254 bpatch patch00_5 ,mem_patch00 
+0x2027 003255 call context_search_insniff 
+0x2028 003256 nbranch connection_nosniff ,zero 
+0x2029 003257 call context_load 
+0x202a 003258 add rega ,coffset_mode ,contr 
+0x202b 003259 ifetch 1 ,contr 
+0x202c 003260 bbit1 mode_le ,le_conn_dispatch 
+0x202d 003261 bbit1 mode_master ,master_dispatch 
+0x202e 003262 branch slave_dispatch 
+:      003263 connection_nosniff:
+0x202f 003264 call context_get_next 
+0x2030 003265 copy loopcnt ,null 
+0x2031 003266 rtn zero 
+0x2032 003267 call context_load 
+0x2033 003268 fetch 1 ,mem_state 
+0x2034 003269 bbit1 state_inpage ,master_page 
+0x2035 003270 fetch 1 ,mem_mode 
+0x2036 003271 bbit1 mode_master ,master_dispatch 
+0x2037 003272 branch slave_dispatch 
+:      003280 idle_dispatch:
+0x2038 003281 fetch 1 ,mem_hci_cmd 
+0x2039 003282 rtn blank 
+0x203a 003283 beq hci_cmd_inquiry ,idle_inquiry 
+0x203b 003284 beq hci_cmd_inquiry_cancel ,idle_inquiry_cancel 
+0x203c 003285 beq hci_cmd_remote_name_req ,idle_remote_name_req 
+0x203d 003286 beq hci_cmd_create_conn ,idle_create_conn 
+0x203e 003287 beq hci_cmd_le_create_conn ,idle_le_create_conn 
+0x203f 003288 call context_search_conn_handle 
+0x2040 003289 rtn zero 
+0x2041 003290 call context_search_plap 
+0x2042 003291 rtn zero 
+:      003292 idle_exit:
+0x2043 003293 jam 0 ,mem_hci_cmd 
+0x2044 003294 rtn 
+:      003296 idle_le_create_conn:
+0x2045 003297 jam hci_cmd_le_create_conn ,mem_cmd_le_create_conn 
+0x2046 003298 jam 0 ,mem_hci_cmd 
+0x2047 003299 rtn 
+:      003301 idle_inquiry:
+0x2048 003302 set1 mark_inquiry_on ,mark 
+0x2049 003303 set0 mark_inquiry_trainb ,mark 
+0x204a 003304 jam param_ninquiry ,mem_ninqy_index 
+0x204b 003305 jam 31 ,mem_nfreq_index_inq 
+0x204c 003306 branch idle_exit 
+:      003308 idle_inquiry_cancel:
+0x204d 003309 set0 mark_inquiry_on ,mark 
+0x204e 003310 force 0 ,stop_watch 
+0x204f 003311 branch idle_exit 
+:      003313 idle_remote_name_req:
+0x2050 003314 call context_search_plap 
+0x2051 003315 rtn zero 
+0x2052 003316 force lmp_name_req ,temp 
+0x2053 003317 jam 5 ,mem_nameres_cnt 
+0x2054 003318 branch idle_start_page 
+:      003320 idle_create_conn:
+0x2055 003321 bpatch patch00_6 ,mem_patch00 
+:      003322 idle_create_conn_device:
+0x2056 003323 fetch 6 ,mem_hci_plap 
+0x2057 003324 branch idle_exit ,blank 
+0x2058 003325 jam reconnect_hid ,memui_reconnect_mode 
+0x2059 003327 jam conn_sm_wait_features_res ,mem_conn_sm 
+0x205a 003328 branch idle_create_conn_cont 
+:      003330 idle_create_conn_cont:
+0x205b 003331 force lmp_version_req ,temp 
+:      003332 idle_start_page:
+0x205c 003333 bpatch patch00_7 ,mem_patch00 
+0x205d 003334 fetch 1 ,mem_page_mode 
+0x205e 003335 branch idle_page_mode_r0 ,blank 
+0x205f 003336 lshift3 pdata ,pdata 
+0x2060 003337 lshift4 pdata ,pdata 
+0x2061 003338 increase -1 ,pdata 
+:      003339 idle_page_mode_r0:
+0x2062 003340 store 1 ,mem_npage 
+0x2063 003341 store 1 ,mem_npage_index 
+0x2064 003342 jam 31 ,mem_nfreq_index_page 
+0x2065 003343 set0 mark_page_trainb ,mark 
+0x2066 003344 call context_new 
+0x2067 003345 nbranch idle_page_fail ,zero 
+0x2068 003346 call get_free_amaddr 
+0x2069 003347 store 1 ,mem_amaddr 
+0x206a 003348 storet 1 ,mem_lmo_opcode2 
+0x206b 003349 fetch 6 ,mem_hci_plap 
+0x206c 003350 store 6 ,mem_plap 
+0x206d 003351 bpatch patch01_0 ,mem_patch01 
+0x206e 003352 call timer_reinit 
+0x206f 003353 force 0 ,pdata 
+0x2070 003354 compare lmp_name_req ,temp ,0xff 
+0x2071 003355 nsetflag true ,state_init_seq ,pdata 
+0x2072 003356 set1 state_inpage ,pdata 
+0x2073 003357 store 1 ,mem_state 
+0x2074 003358 jam bt_evt_reconn_started ,mem_fifo_temp 
+0x2075 003359 call ui_ipc_send_event 
+0x2076 003360 force 0 ,pdata 
+0x2077 003361 setflag true ,smap_name_req ,pdata 
+0x2078 003362 store 1 ,mem_state_map 
+0x2079 003363 setarg 0 
+0x207a 003364 set1 mode_master ,pdata 
+0x207b 003365 store 1 ,mem_mode 
+0x207c 003366 enable master 
+0x207d 003367 call context_save 
+0x207e 003368 disable master 
+0x207f 003369 force page_length_timer ,queue 
+0x2080 003370 fetch 2 ,mem_page_to 
+0x2081 003371 call timer_init 
+0x2082 003372 branch idle_exit 
+:      003373 idle_page_fail:
+0x2083 003374 bpatch patch01_1 ,mem_patch01 
+0x2084 003375 fetch 6 ,mem_hci_plap 
+0x2085 003376 store 6 ,mem_plap 
+0x2086 003377 compare lmp_name_req ,temp ,0xff 
+0x2087 003378 branch idle_name_fail ,true 
+0x2088 003379 branch idle_exit 
+:      003380 idle_name_fail:
+0x2089 003381 arg mem_tmp_buffer ,contw 
+0x208a 003382 arg 8 ,loopcnt 
+0x208b 003383 call memset0 
+0x208c 003384 jam bt_evt_reconn_failed ,mem_fifo_temp 
+0x208d 003385 call ui_ipc_send_event 
+0x208e 003386 branch idle_exit 
+:      003393 inquiry_dispatch:
+0x208f 003394 rtnmark0 mark_inquiry_on 
+0x2090 003395 force inquiry_length_timer ,queue 
+0x2091 003396 call timer_check 
+0x2092 003397 nsetflag blank ,mark_inquiry_on ,mark 
+0x2093 003398 nbranch inquiry_start ,blank 
+0x2094 003399 rtn 
+:      003403 inquiry_start:
+0x2095 003404 bpatch patch01_2 ,mem_patch01 
+0x2096 003405 fetcht 2 ,mem_inq_window 
+0x2097 003406 force 4 ,queue 
+0x2098 003407 call sniff_check_window 
+0x2099 003408 rtn user 
+0x209a 003409 call afh_clear 
+0x209b 003410 force 0 ,freq_mode 
+:      003411 inquiry_restart:
+0x209c 003412 rtn timeout 
+0x209d 003413 set0 mark_fhs_already_good ,mark 
+0x209e 003414 set0 mark_fhs_eir ,mark 
+:      003415 inquiry_rx_restart:
+0x209f 003416 add clkn_bt ,1 ,bt_clk 
+0x20a0 003417 isolate1 mark_inquiry_trainb ,mark 
+0x20a1 003418 setflag true ,2 ,freq_mode 
+0x20a2 003419 compare 0x00 ,bt_clk ,0x02 
+0x20a3 003420 nbranch inquiry_receive ,true 
+:      003422 inquiry_transmit:
+0x20a4 003423 bpatch patch01_3 ,mem_patch01 
+0x20a5 003424 fetch 1 ,mem_inquiry_transmit 
+0x20a6 003425 increase 1 ,pdata 
+0x20a7 003426 store 1 ,mem_inquiry_transmit 
+0x20a8 003427 call fetch_giac 
+0x20a9 003428 call tx_radio_freq 
+0x20aa 003429 call fetch_diac 
+0x20ab 003430 call start_transmitter 
+0x20ac 003431 call start_tx_native 
+0x20ad 003432 call send_access_word 
+0x20ae 003433 call end_of_packet 
+0x20af 003434 call inquiry_check_train 
+0x20b0 003435 branch inquiry_restart 
+:      003437 inquiry_check_train:
+0x20b1 003438 bpatch patch01_4 ,mem_patch01 
+0x20b2 003439 fetch 1 ,mem_nfreq_index_inq 
+0x20b3 003440 increase -1 ,pdata 
+0x20b4 003441 store 1 ,mem_nfreq_index_inq 
+0x20b5 003442 rtn positive 
+0x20b6 003443 jam 31 ,mem_nfreq_index_inq 
+0x20b7 003444 fetch 1 ,mem_ninqy_index 
+0x20b8 003445 increase -1 ,pdata 
+0x20b9 003446 store 1 ,mem_ninqy_index 
+0x20ba 003447 rtn positive 
+0x20bb 003448 setflip mark_inquiry_trainb ,mark 
+0x20bc 003449 jam param_ninquiry ,mem_ninqy_index 
+0x20bd 003450 rtn 
+:      003452 inquiry_receive:
+0x20be 003453 bpatch patch01_5 ,mem_patch01 
+0x20bf 003454 call fetch_giac 
+0x20c0 003455 call rx_radio_freq 
+0x20c1 003456 call fetch_diac 
+0x20c2 003457 call start_rx_native 
+0x20c3 003458 call start_receiver 
+0x20c4 003459 call wait_access_clkn_rt 
+0x20c5 003460 branch inquiry_sync ,sync 
+0x20c6 003461 call inquiry_check_train 
+0x20c7 003462 branch inquiry_rx_restart 
+:      003463 inquiry_sync:
+0x20c8 003464 bpatch patch01_6 ,mem_patch01 
+0x20c9 003465 call save_rssi 
+0x20ca 003466 call scan_mode_whiten 
+0x20cb 003467 call receive_packet_whitened 
+0x20cc 003468 set0 mark_rxbuf_inuse ,mark 
+0x20cd 003469 rtnmark0 mark_fhs_already_good 
+:      003470 inquiry_receive_rtn:
+0x20ce 003471 bpatch patch01_7 ,mem_patch01 
+:      003472 inquiry_receive_eir_rtn:
+0x20cf 003473 fetch 1 ,mem_inquiry_rcv 
+0x20d0 003474 increase 1 ,pdata 
+0x20d1 003475 store 1 ,mem_inquiry_rcv 
+0x20d2 003476 rtn 
+:      003484 master_page:
+0x20d3 003485 bpatch patch02_0 ,mem_patch02 
+0x20d4 003486 enable master 
+0x20d5 003487 enable clknt 
+0x20d6 003488 fetch 2 ,mem_page_interval 
+0x20d7 003489 branch master_page_no_interval ,blank 
+0x20d8 003490 force page_interval_timer ,queue 
+0x20d9 003491 call timer_check 
+0x20da 003492 nrtn blank 
+:      003493 master_page_no_interval:
+0x20db 003494 bpatch patch02_1 ,mem_patch02 
+0x20dc 003495 fetcht 2 ,mem_page_window 
+0x20dd 003496 force 40 ,queue 
+0x20de 003497 call sniff_check_window 
+0x20df 003498 branch page_exit ,user 
+0x20e0 003499 force page_length_timer ,queue 
+0x20e1 003500 call timer_check 
+0x20e2 003501 nbranch page_start ,blank 
+0x20e3 003502 fetch 1 ,mem_state_map 
+0x20e4 003503 bbit1 smap_name_req ,master_npage_timeout 
+0x20e5 003504 branch master_page_timeout 
+:      003505 master_npage_timeout:
+0x20e6 003506 arg mem_tmp_buffer ,contw 
+0x20e7 003507 arg 8 ,loopcnt 
+0x20e8 003508 call memset0 
+:      003509 master_page_timeout:
+0x20e9 003510 bpatch patch02_2 ,mem_patch02 
+0x20ea 003511 jam 0 ,mem_state 
+0x20eb 003512 call init_lmp_work 
+0x20ec 003513 jam 0 ,memui_reconnect_mode 
+0x20ed 003514 jam bt_evt_reconn_page_timeout ,mem_fifo_temp 
+0x20ee 003515 call ui_ipc_send_event 
+0x20ef 003516 branch page_exit 
+:      003518 page_start:
+0x20f0 003519 bpatch patch02_3 ,mem_patch02 
+0x20f1 003520 force 0 ,timeup 
+0x20f2 003521 until clkn_rt ,meet 
+0x20f3 003522 fetch 1 ,mem_page_clk 
+0x20f4 003523 increase -1 ,pdata 
+0x20f5 003524 ixor clkn_bt ,pdata 
+0x20f6 003525 compare 0 ,pdata ,3 
+0x20f7 003526 nbranch page_start ,true 
+0x20f8 003527 deposit am_addr 
+0x20f9 003528 store 1 ,mem_fhs_am_addr 
+0x20fa 003529 force 0 ,n_tx_slot 
+0x20fb 003530 force 0 ,freq_mode 
+:      003532 page_restart:
+0x20fc 003533 bpatch patch02_4 ,mem_patch02 
+0x20fd 003534 branch page_exit ,timeout 
+0x20fe 003535 call fetch_page_bt_adr 
+0x20ff 003536 arg param_rf_setup ,timeup 
+0x2100 003537 until clkn_rt ,meet 
+:      003538 page_rx_restart:
+0x2101 003539 bpatch patch02_5 ,mem_patch02 
+0x2102 003540 fetch 4 ,mem_page_clk 
+0x2103 003541 iforce bt_clk 
+0x2104 003542 increase 1 ,pdata 
+0x2105 003543 store 4 ,mem_page_clk 
+0x2106 003544 isolate1 mark_page_trainb ,mark 
+0x2107 003545 setflag true ,2 ,freq_mode 
+0x2108 003546 compare 0x00 ,bt_clk ,0x02 
+0x2109 003547 nbranch page_receive ,true 
+0x210a 003548 fetch 1 ,mem_page_transmit 
+0x210b 003549 increase 1 ,pdata 
+0x210c 003550 store 1 ,mem_page_transmit 
+0x210d 003551 call tx_radio_freq 
+0x210e 003552 call start_transmitter 
+0x210f 003553 call start_tx_native 
+0x2110 003554 call send_access_word 
+0x2111 003555 call end_of_packet 
+0x2112 003556 call page_check_train 
+0x2113 003557 branch page_restart 
+:      003558 page_exit:
+0x2114 003559 bpatch patch02_6 ,mem_patch02 
+0x2115 003560 disable master 
+0x2116 003561 fetch 2 ,mem_page_interval 
+0x2117 003562 rtn blank 
+0x2118 003563 force page_interval_timer ,queue 
+0x2119 003564 branch timer_init 
+:      003566 page_check_train:
+0x211a 003567 bpatch patch02_7 ,mem_patch02 
+0x211b 003568 fetch 1 ,mem_nfreq_index_page 
+0x211c 003569 increase -1 ,pdata 
+0x211d 003570 store 1 ,mem_nfreq_index_page 
+0x211e 003571 rtn positive 
+0x211f 003572 jam 31 ,mem_nfreq_index_page 
+0x2120 003573 fetch 1 ,mem_npage_index 
+0x2121 003574 increase -1 ,pdata 
+0x2122 003575 store 1 ,mem_npage_index 
+0x2123 003576 rtn positive 
+0x2124 003577 setflip mark_page_trainb ,mark 
+0x2125 003578 fetch 1 ,mem_npage 
+0x2126 003579 store 1 ,mem_npage_index 
+0x2127 003580 rtn 
+:      003582 page_receive:
+0x2128 003583 bpatch patch03_0 ,mem_patch03 
+0x2129 003584 call rx_radio_freq 
+0x212a 003585 call start_rx_native 
+0x212b 003586 call start_receiver 
+0x212c 003587 call wait_access_clkn_rt 
+0x212d 003588 branch page_sync ,sync 
+0x212e 003589 call page_check_train 
+0x212f 003590 branch page_rx_restart 
+:      003591 page_sync:
+0x2130 003592 call end_of_packet 
+0x2131 003593 fetch 1 ,mem_page_rcv 
+0x2132 003594 increase 1 ,pdata 
+0x2133 003595 store 1 ,mem_page_rcv 
+0x2134 003596 force 0 ,stop_watch 
+0x2135 003597 fetch 4 ,mem_page_clk 
+:      003598 page_send_fhs:
+0x2136 003599 bpatch patch03_1 ,mem_patch03 
+0x2137 003600 call rf_setup_time_master_slot 
+0x2138 003601 call fetch_page_bt_adr 
+0x2139 003602 increase 1 ,n_tx_slot 
+:      003603 page_send_fhs_continue:
+0x213a 003604 and_into 0x1fd ,bt_clk 
+0x213b 003605 and_into 0x1fc ,freq_mode 
+0x213c 003606 call tx_radio_freq 
+0x213d 003607 call start_transmitter 
+0x213e 003608 call start_tx_native 
+0x213f 003609 call send_access_word 
+0x2140 003610 deposit clkn_bt 
+0x2141 003611 store 4 ,mem_clkn_bt 
+0x2142 003612 force 0 ,am_addr 
+0x2143 003613 force type_fhs ,type 
+0x2144 003614 call scan_mode_whiten 
+0x2145 003615 call transmit_packet_whitened 
+:      003616 page_wait_fhs_reply:
+0x2146 003617 bpatch patch03_2 ,mem_patch03 
+0x2147 003618 call rf_setup_time_slave_slot 
+0x2148 003619 or_into 0x02 ,bt_clk 
+0x2149 003620 and_into 0x1fc ,freq_mode 
+0x214a 003621 call rx_radio_freq 
+0x214b 003622 call start_rx_native 
+0x214c 003623 call start_receiver 
+0x214d 003624 call wait_access_clkn_rt 
+0x214e 003625 call end_of_packet ,sync 
+0x214f 003626 branch page_wait_fhs_reply_ok ,sync 
+0x2150 003627 fetch 1 ,mem_fhs_wait_counter 
+0x2151 003628 branch page_restart ,blank 
+0x2152 003629 increase -1 ,pdata 
+0x2153 003630 store 1 ,mem_fhs_wait_counter 
+0x2154 003631 branch page_send_fhs 
+:      003633 page_wait_fhs_reply_ok:
+0x2155 003634 bpatch patch03_3 ,mem_patch03 
+0x2156 003635 fetch 1 ,mem_page_rcv_fhs 
+0x2157 003636 increase 1 ,pdata 
+0x2158 003637 store 1 ,mem_page_rcv_fhs 
+0x2159 003638 call prepare_newconn 
+:      003639 master_newconn_loop:
+0x215a 003640 call master_newconn_once 
+0x215b 003641 branch newconn_poll_responded ,sync 
+0x215c 003642 call new_conn_timeout 
+0x215d 003643 nbranch master_newconn_loop ,blank 
+0x215e 003644 branch page_restart 
+:      003646 newconn_poll_responded:
+0x215f 003647 bpatch patch03_4 ,mem_patch03 
+0x2160 003648 fetch 1 ,mem_state 
+0x2161 003649 set0 state_inpage ,pdata 
+0x2162 003650 store 1 ,mem_state 
+0x2163 003651 call newconn_init 
+0x2164 003652 disable master 
+0x2165 003653 rtn 
+:      003656 master_dispatch:
+0x2166 003657 bpatch patch03_5 ,mem_patch03 
+0x2167 003658 enable master 
+0x2168 003659 enable clknt 
+0x2169 003660 call role_switch_master 
+0x216a 003661 rtn user 
+0x216b 003662 call check_bt_disabled 
+0x216c 003663 call rf_setup_time_master_slot 
+0x216d 003664 add clkn_bt ,1 ,bt_clk 
+0x216e 003665 call fetch_self_bt_adr 
+0x216f 003666 force 0x03 ,freq_mode 
+0x2170 003667 call scheduler_tx_l2cap_pkt 
+0x2171 003668 call prepare_tx 
+0x2172 003669 call tx_radio_freq 
+0x2173 003670 call start_transmitter 
+0x2174 003671 call start_tx_native 
+0x2175 003672 call send_access_word 
+0x2176 003673 call transmit_packet 
+:      003674 master_loop:
+0x2177 003675 bpatch patch03_6 ,mem_patch03 
+0x2178 003676 call parse_lmp 
+0x2179 003677 call master_conn_recv_packet 
+0x217a 003678 nbranch master_notmatch ,match 
+0x217b 003679 call supervision_flush 
+0x217c 003680 call parse_l2cap 
+0x217d 003681 fetch 1 ,mem_master_rcvcnt 
+0x217e 003682 increase 1 ,pdata 
+0x217f 003683 store 1 ,mem_master_rcvcnt 
+:      003684 master_notmatch:
+0x2180 003685 bpatch patch03_7 ,mem_patch03 
+0x2181 003686 call scheduler_process 
+0x2182 003687 call check_master_disconnect 
+0x2183 003688 nrtn master 
+0x2184 003689 call check_attempt 
+0x2185 003690 nbranch master_attempt ,blank 
+:      003691 master_exit:
+0x2186 003692 disable master 
+0x2187 003693 rtn 
+:      003695 master_attempt:
+0x2188 003696 call prepare_tx 
+0x2189 003697 call master_conn_send_packet 
+0x218a 003698 branch master_loop 
+:      003701 check_master_disconnect:
+0x218b 003702 branch check_master_match ,match 
+0x218c 003703 call supervision_update 
+0x218d 003704 branch master_disconnect ,positive 
+:      003705 check_master_match:
+0x218e 003706 call check_disconnect_timeout 
+0x218f 003707 nbranch master_disconnect ,user 
+0x2190 003708 fetch 1 ,mem_state_map 
+0x2191 003709 rtnbit0 smap_name_req 
+0x2192 003710 rtnbit1 smap_name_res 
+0x2193 003711 fetch 1 ,mem_op 
+0x2194 003712 rtnbit1 op_disconn 
+0x2195 003713 call conn_timer_expired 
+0x2196 003714 nrtn blank 
+0x2197 003715 fetch 1 ,mem_nameres_cnt 
+0x2198 003716 increase -1 ,pdata 
+0x2199 003717 store 1 ,mem_nameres_cnt 
+0x219a 003718 nrtn blank 
+0x219b 003719 branch lmp_disconnect 
+:      003721 master_disconnect:
+0x219c 003722 bpatch patch04_0 ,mem_patch04 
+0x219d 003723 call quit_connection 
+0x219e 003724 disable master 
+0x219f 003725 fetch 1 ,mem_state_map 
+0x21a0 003726 bbit1 smap_name_req ,master_name_disconnect 
+0x21a1 003727 rtn 
+:      003729 master_name_disconnect:
+0x21a2 003730 fetch 1 ,mem_state_map 
+0x21a3 003731 rtnbit1 smap_name_res 
+:      003732 master_name_error:
+0x21a4 003733 arg mem_tmp_buffer ,contw 
+0x21a5 003734 arg 8 ,loopcnt 
+0x21a6 003735 branch memset0 
+:      003737 check_disconnect_timeout:
+0x21a7 003738 bpatch patch04_1 ,mem_patch04 
+0x21a8 003739 enable user 
+0x21a9 003740 fetch 1 ,mem_op 
+0x21aa 003741 rtnbit0 op_disconn 
+0x21ab 003742 call conn_timer_expired 
+0x21ac 003743 nrtn blank 
+0x21ad 003744 branch disable_user 
+:      003746 conn_timer_expired:
+0x21ae 003747 fetch 1 ,mem_conn_timer 
+0x21af 003748 increase -1 ,pdata 
+0x21b0 003749 store 1 ,mem_conn_timer 
+0x21b1 003750 rtn 
+:      003752 linkkey_ready:
+0x21b2 003753 bpatch patch04_2 ,mem_patch04 
+0x21b3 003754 fetch 1 ,mem_state 
+0x21b4 003755 bbit1 state_linkkey ,linkkey_set 
+0x21b5 003756 fetch 1 ,mem_pairing_auth 
+0x21b6 003757 branch linkkey_set ,blank 
+0x21b7 003758 jam defalt_pairing_auth ,mem_pairing_auth 
+0x21b8 003759 jam bt_evt_linkkey_generate ,mem_fifo_temp 
+0x21b9 003760 call ui_ipc_send_event 
+0x21ba 003761 branch linkkey_set 
+:      003762 linkkey_set:
+0x21bb 003763 bpatch patch04_3 ,mem_patch04 
+0x21bc 003764 call context_traverse_linkkey 
+0x21bd 003765 fetch 1 ,mem_state 
+0x21be 003766 set1 state_linkkey ,pdata 
+0x21bf 003767 store 1 ,mem_state 
+0x21c0 003768 jam 1 ,mem_link_key_exists 
+0x21c1 003769 fetch 1 ,mem_conn_sm 
+0x21c2 003770 bne conn_sm_pairing ,linkkey_set_continue 
+:      003771 linkkey_set_continue:
+0x21c3 003772 rtn 
+:      003774 generate_linkkey_continue:
+0x21c4 003775 jam pairing_auth ,mem_pairing_auth 
+:      003776 clear_linkstate:
+0x21c5 003777 fetch 1 ,mem_state 
+0x21c6 003778 set0 state_linkkey ,pdata 
+0x21c7 003779 store 1 ,mem_state 
+0x21c8 003780 rtn 
+:      003784 role_switch_check:
+0x21c9 003785 bpatch patch04_4 ,mem_patch04 
+0x21ca 003786 disable user 
+0x21cb 003787 fetch 2 ,mem_tsniff 
+0x21cc 003788 arg 0xffff ,temp 
+0x21cd 003789 isub temp ,null 
+0x21ce 003790 nrtn zero 
+0x21cf 003791 fetch 4 ,mem_sniff_anchor 
+0x21d0 003792 branch role_switch_clkn ,clknt 
+0x21d1 003793 isub clke_bt ,pdata 
+0x21d2 003794 branch role_switch_clke 
+:      003795 role_switch_clkn:
+0x21d3 003796 isub clkn_bt ,pdata 
+:      003797 role_switch_clke:
+0x21d4 003798 sub pdata ,4 ,null 
+0x21d5 003799 nrtn positive 
+0x21d6 003800 force 0 ,pdata 
+0x21d7 003801 store 2 ,mem_tsniff 
+0x21d8 003802 branch enable_user 
+:      003806 role_switch_prepare:
+0x21d9 003807 copy pdata ,temp 
+0x21da 003808 bpatch patch04_5 ,mem_patch04 
+0x21db 003809 storet 4 ,mem_sniff_anchor 
+:      003810 role_switch_prepare0:
+0x21dc 003811 jam switch_flag_accept ,mem_switch_flag 
+0x21dd 003812 setarg 0xffff 
+0x21de 003813 store 2 ,mem_tsniff 
+0x21df 003814 jam 1 ,mem_sniff_attempt 
+0x21e0 003815 rtn 
+:      003818 role_switch_master:
+0x21e1 003819 bpatch patch04_6 ,mem_patch04 
+0x21e2 003820 call role_switch_check 
+0x21e3 003821 nrtn user 
+0x21e4 003822 disable user 
+0x21e5 003823 jam param_newconnto ,mem_newconnto_counter 
+0x21e6 003824 set0 mark_fhs_already_good ,mark 
+:      003825 roles_waitfhs_loop:
+0x21e7 003826 call rf_setup_time_master_slot 
+0x21e8 003827 call master_recv_packet 
+0x21e9 003828 bmark1 mark_fhs_already_good ,roles_replyto_fhs 
+0x21ea 003829 call new_conn_timeout 
+0x21eb 003830 nbranch roles_waitfhs_loop ,blank 
+:      003831 role_switch_fail_master:
+0x21ec 003832 bpatch patch04_7 ,mem_patch04 
+0x21ed 003833 disable user 
+0x21ee 003834 deposit clkn_bt 
+0x21ef 003835 store 4 ,mem_next_btclk 
+0x21f0 003836 enable clknt 
+0x21f1 003837 enable master 
+0x21f2 003838 jam bt_evt_switch_fail_master ,mem_fifo_temp 
+0x21f3 003839 branch ui_ipc_send_event 
+:      003841 roles_replyto_fhs:
+0x21f4 003842 bpatch patch05_0 ,mem_patch05 
+0x21f5 003843 call rf_setup_time_slave_slot 
+0x21f6 003844 arg type_id ,type 
+0x21f7 003845 call master_send_packet 
+0x21f8 003846 disable clknt 
+0x21f9 003847 disable master 
+0x21fa 003848 call apply_switch_clke 
+0x21fb 003849 call prepare_newconn 
+:      003850 roles_newconns_loop:
+0x21fc 003851 bpatch patch05_1 ,mem_patch05 
+0x21fd 003852 call slave_newconn_once 
+0x21fe 003853 branch roles_newconns_responded ,match 
+0x21ff 003854 call new_conn_timeout 
+0x2200 003855 nbranch roles_newconns_loop ,blank 
+0x2201 003856 branch role_switch_fail_master 
+:      003857 roles_newconns_responded:
+0x2202 003858 fetch 1 ,mem_mode 
+0x2203 003859 set0 mode_master ,pdata 
+0x2204 003860 store 1 ,mem_mode 
+0x2205 003861 call supervision_flush 
+0x2206 003862 call calc_clke_offset 
+0x2207 003863 enable user 
+0x2208 003864 jam bt_evt_switch_success_master ,mem_fifo_temp 
+0x2209 003865 branch ui_ipc_send_event 
+:      003870 context_load:
+0x220a 003871 bpatch patch05_2 ,mem_patch05 
+0x220b 003872 set1 mark_context ,mark 
+0x220c 003873 deposit rega 
+0x220d 003874 store 2 ,mem_context_ptr 
+0x220e 003875 force context_size ,loopcnt 
+0x220f 003876 arg mem_le_state ,contw 
+0x2210 003877 add rega ,coffset_mode ,contr 
+0x2211 003878 ifetch 1 ,contr 
+0x2212 003879 copy rega ,contr 
+0x2213 003880 bbit1 mode_le ,memcpy 
+0x2214 003881 arg mem_state ,contw 
+0x2215 003882 call memcpy 
+0x2216 003883 disable attempt 
+0x2217 003884 fetch 1 ,mem_amaddr 
+0x2218 003885 iforce am_addr 
+0x2219 003886 jam 1 ,mem_current_sniff_attempt 
+0x221a 003887 branch context_load_master ,master 
+0x221b 003888 jam 1 ,mem_current_sniff_attempt 
+:      003889 context_load_master:
+0x221c 003890 fetch 1 ,mem_state 
+0x221d 003891 rtnbit0 state_insniff 
+0x221e 003892 fetch 1 ,mem_sniff_attempt 
+0x221f 003893 store 1 ,mem_current_sniff_attempt 
+0x2220 003894 fetch 1 ,mem_sniff_timeout 
+0x2221 003895 store 1 ,mem_current_sniff_timeout 
+0x2222 003896 rtn 
+:      003898 context_save:
+0x2223 003899 bpatch patch05_3 ,mem_patch05 
+0x2224 003900 fetch 2 ,mem_context_ptr 
+0x2225 003901 iforce contw 
+0x2226 003902 force context_size ,loopcnt 
+0x2227 003903 arg mem_le_state ,contr 
+0x2228 003904 branch memcpy ,le 
+0x2229 003905 arg mem_state ,contr 
+0x222a 003906 branch memcpy 
+:      003910 context_get_next:
+0x222b 003911 arg context_num ,loopcnt 
+0x222c 003912 fetcht 1 ,mem_current_context 
+:      003913 context_get_next_loop:
+0x222d 003914 increase 1 ,temp 
+0x222e 003915 compare context_num ,temp ,0xff 
+0x222f 003916 nbranch context_get_next_cont ,true 
+0x2230 003917 arg 0 ,temp 
+:      003918 context_get_next_cont:
+0x2231 003919 storet 1 ,mem_current_context 
+0x2232 003920 mul32 temp ,context_size ,pdata 
+0x2233 003921 arg mem_context ,rega 
+0x2234 003922 iadd rega ,rega 
+0x2235 003923 ifetch 1 ,rega 
+0x2236 003924 bbit1 state_insniff ,context_get_next_sniff 
+0x2237 003925 rtnbit1 state_inconn 
+0x2238 003926 rtnbit1 state_inpage 
+:      003927 context_get_next_sniff:
+0x2239 003928 loop context_get_next_loop 
+0x223a 003929 rtn 
+:      003931 context_new:
+0x223b 003932 bpatch patch05_4 ,mem_patch05 
+0x223c 003933 arg context_search_empty ,regc 
+0x223d 003934 call context_search 
+0x223e 003935 nrtn zero 
+0x223f 003936 deposit rega 
+0x2240 003937 store 2 ,mem_context_ptr 
+0x2241 003938 force 0 ,null 
+0x2242 003939 rtn 
+:      003943 context_check_all_wack:
+0x2243 003944 call check_esco_amaddr 
+0x2244 003945 branch context_check_esco_wack ,true 
+0x2245 003946 fetch 2 ,mem_context_ptr 
+0x2246 003947 add pdata ,coffset_arq ,contw 
+0x2247 003948 fetch 1 ,mem_arq 
+0x2248 003949 istore 1 ,contw 
+0x2249 003950 arg context_check_a_wack ,regc 
+0x224a 003951 branch context_search 
+:      003953 context_check_esco_wack:
+0x224b 003954 fetch 1 ,mem_arq 
+0x224c 003955 isolate1 wack ,pdata 
+0x224d 003956 branch context_esco_wack ,true 
+0x224e 003957 force 1 ,null 
+0x224f 003958 rtn 
+:      003959 context_esco_wack:
+0x2250 003960 force 0 ,null 
+0x2251 003961 rtn 
+:      003964 context_check_idle:
+0x2252 003965 arg context_check_inconn ,regc 
+0x2253 003966 branch context_search 
+:      003968 context_traverse_linkkey:
+0x2254 003969 fetcht 2 ,mem_context_ptr 
+0x2255 003970 arg context_traverse_clearkey ,regc 
+0x2256 003971 branch context_search 
+:      003975 context_search_conn_handle:
+0x2257 003976 fetcht 1 ,mem_hci_conn_handle 
+:      003977 context_search_conn_handle2:
+0x2258 003978 arg context_search_handle ,regc 
+0x2259 003979 branch context_search 
+:      003981 context_search_plap:
+0x225a 003982 bpatch patch05_5 ,mem_patch05 
+0x225b 003983 fetcht 6 ,mem_hci_plap 
+:      003984 context_search_plap2:
+0x225c 003985 arg context_search_lap ,regc 
+0x225d 003986 branch context_search 
+:      003988 context_search_insniff:
+0x225e 003989 arg context_search_sniff ,regc 
+0x225f 003990 branch context_search 
+:      003992 context_search_sniff_window:
+0x2260 003993 arg context_search_window ,regc 
+:      003994 context_search:
+0x2261 003995 bpatch patch05_6 ,mem_patch05 
+0x2262 003996 arg mem_context ,rega 
+0x2263 003997 arg context_num ,loopcnt 
+:      003998 context_search_loop:
+0x2264 003999 ifetch 1 ,rega 
+0x2265 004000 copy regc ,pc 
+:      004001 context_search_next:
+0x2266 004002 increase context_size ,rega 
+0x2267 004003 loop context_search_loop 
+0x2268 004004 force 1 ,null 
+0x2269 004005 rtn 
+:      004007 context_search_empty:
+0x226a 004008 bbit1 state_inconn ,context_search_next 
+0x226b 004009 bbit1 state_inpage ,context_search_next 
+0x226c 004010 force 0 ,null 
+0x226d 004011 rtn 
+:      004013 context_search_lap:
+0x226e 004014 bbit1 state_inpage ,context_search_lap_cont 
+0x226f 004015 bbit0 state_inconn ,context_search_next 
+:      004016 context_search_lap_cont:
+0x2270 004017 add rega ,coffset_plap ,contr 
+0x2271 004018 ifetch 6 ,contr 
+0x2272 004019 isub temp ,null 
+0x2273 004020 rtn zero 
+0x2274 004021 branch context_search_next 
+:      004023 context_search_handle:
+0x2275 004024 bbit0 state_inconn ,context_search_next 
+0x2276 004025 add rega ,coffset_conn_handle ,contr 
+0x2277 004026 ifetch 1 ,contr 
+0x2278 004027 isub temp ,null 
+0x2279 004028 rtn zero 
+0x227a 004029 branch context_search_next 
+:      004031 context_search_sniff:
+0x227b 004032 bbit0 state_insniff ,context_search_next 
+:      004033 context_search_sniff_loop:
+0x227c 004034 call context_get_anchor 
+0x227d 004035 call sign_pdata_temp 
+0x227e 004036 isub temp ,pdata 
+0x227f 004037 increase 1 ,pdata 
+0x2280 004038 branch context_search_sniff_miss ,positive 
+0x2281 004039 copy contr ,regb 
+0x2282 004040 store 9 ,mem_temp 
+0x2283 004041 fetch 1 ,mem_le_sc_calc 
+0x2284 004042 nbranch context_search_sniff_sc ,blank 
+0x2285 004043 fetch 9 ,mem_temp 
+0x2286 004044 copy regb ,contr 
+0x2287 004045 increase 5 ,pdata 
+0x2288 004046 branch context_search_meet1 
+:      004047 context_search_sniff_sc:
+0x2289 004048 fetch 9 ,mem_temp 
+0x228a 004049 copy regb ,contr 
+0x228b 004050 increase 20 ,pdata 
+:      004051 context_search_meet1:
+0x228c 004052 nbranch context_search_next ,positive 
+:      004053 context_search_meet:
+0x228d 004054 copy temp ,bt_clk 
+0x228e 004055 call context_next_anchor 
+0x228f 004056 force 0 ,null 
+0x2290 004057 rtn 
+:      004060 context_search_sniff_miss:
+0x2291 004061 iforce regb 
+0x2292 004062 add rega ,coffset_tsniff ,contr 
+0x2293 004063 ifetch 2 ,contr 
+0x2294 004064 branch context_search_meet ,blank 
+0x2295 004065 call context_next_anchor 
+0x2296 004066 branch context_search_sniff_loop 
+:      004068 sign_pdata_temp:
+0x2297 004069 rshift16 pdata ,timeup 
+0x2298 004070 rshift8 timeup ,timeup 
+0x2299 004071 branch sign_pdata_temp_p0 ,zero 
+0x229a 004072 compare 0xf ,timeup ,0xf 
+0x229b 004073 nrtn true 
+0x229c 004074 rshift16 temp ,timeup 
+0x229d 004075 rshift8 timeup ,timeup 
+0x229e 004076 nrtn zero 
+0x229f 004077 set1 28 ,temp 
+0x22a0 004078 rtn 
+:      004079 sign_pdata_temp_p0:
+0x22a1 004080 rshift16 temp ,timeup 
+0x22a2 004081 rshift8 timeup ,timeup 
+0x22a3 004082 compare 0xf ,timeup ,0xf 
+0x22a4 004083 nrtn true 
+0x22a5 004084 set1 28 ,pdata 
+0x22a6 004085 rtn 
+:      004087 context_check_inconn:
+0x22a7 004088 bbit0 state_inconn ,context_search_next 
+0x22a8 004089 force 0 ,null 
+0x22a9 004090 rtn 
+:      004092 context_check_a_wack:
+0x22aa 004093 bbit0 state_inconn ,context_search_next 
+0x22ab 004094 add rega ,coffset_mode ,contr 
+0x22ac 004095 ifetch 1 ,contr 
+0x22ad 004096 bbit1 mode_le ,context_search_next 
+0x22ae 004097 add rega ,coffset_arq ,contr 
+0x22af 004098 ifetch 1 ,contr 
+0x22b0 004099 bbit0 wack ,context_search_next 
+0x22b1 004100 force 0 ,null 
+0x22b2 004101 rtn 
+:      004103 context_get_anchor:
+0x22b3 004104 add rega ,coffset_mode ,contr 
+0x22b4 004105 ifetcht 1 ,contr 
+0x22b5 004106 deposit clkn_bt 
+0x22b6 004107 isolate1 mode_master ,temp 
+0x22b7 004108 add rega ,coffset_sniff_anchor ,contr 
+0x22b8 004109 ifetcht 4 ,contr 
+0x22b9 004110 rtn true 
+0x22ba 004111 add rega ,coffset_clk_offset ,contr 
+0x22bb 004112 ifetch 6 ,contr 
+0x22bc 004113 call calc_clke2 
+0x22bd 004114 deposit clke_bt 
+0x22be 004115 rtn 
+:      004117 context_next_anchor:
+0x22bf 004118 add rega ,coffset_tsniff ,contr 
+0x22c0 004119 add rega ,coffset_sniff_anchor ,contw 
+0x22c1 004120 ifetch 2 ,contr 
+0x22c2 004121 iadd temp ,timeup 
+0x22c3 004122 deposit timeup 
+0x22c4 004123 istore 4 ,contw 
+0x22c5 004124 branch le_context_nexthop 
+:      004127 context_search_window:
+0x22c6 004128 bbit0 state_insniff ,context_search_next 
+0x22c7 004129 call context_get_anchor 
+0x22c8 004130 iadd stop_watch ,pdata 
+0x22c9 004131 iadd stop_watch ,pdata 
+0x22ca 004132 iadd queue ,pdata 
+0x22cb 004133 isub temp ,null 
+0x22cc 004134 nbranch context_search_next ,positive 
+0x22cd 004135 force 0 ,null 
+0x22ce 004136 rtn 
+:      004138 context_traverse_clearkey:
+0x22cf 004139 bbit0 state_inconn ,context_search_next 
+0x22d0 004140 deposit temp 
+0x22d1 004141 isub rega ,null 
+0x22d2 004142 branch context_search_next ,null 
+0x22d3 004143 add rega ,coffset_mode ,contr 
+0x22d4 004144 ifetch 1 ,contr 
+0x22d5 004145 bbit1 mode_le ,context_search_next 
+0x22d6 004146 ifetch 1 ,rega 
+0x22d7 004147 set0 state_linkkey ,pdata 
+0x22d8 004148 istore 1 ,rega 
+0x22d9 004149 branch context_search_next 
+:      004152 master_conn_send_packet:
+0x22da 004153 bpatch patch05_7 ,mem_patch05 
+0x22db 004154 call rf_setup_time_master_slot 
+:      004155 master_send_packet:
+0x22dc 004156 add clkn_bt ,1 ,bt_clk 
+0x22dd 004157 call fetch_self_bt_adr 
+0x22de 004158 force 0x03 ,freq_mode 
+0x22df 004159 call tx_radio_freq 
+0x22e0 004160 call start_transmitter 
+0x22e1 004161 call start_tx_native 
+0x22e2 004162 call send_access_word 
+0x22e3 004163 branch transmit_packet 
+:      004165 master_conn_recv_packet:
+0x22e4 004166 bpatch patch06_0 ,mem_patch06 
+0x22e5 004167 call rf_setup_time_slave_slot 
+:      004168 master_recv_packet:
+0x22e6 004169 add clkn_bt ,1 ,bt_clk 
+0x22e7 004170 call fetch_self_bt_adr 
+0x22e8 004171 force 0x03 ,freq_mode 
+0x22e9 004172 call rx_radio_freq 
+0x22ea 004173 call init_rx_packet_flags 
+0x22eb 004174 call prep_crypt 
+0x22ec 004175 call start_rx_native 
+0x22ed 004176 call start_receiver 
+:      004177 master_rx_conn_finish_packet:
+0x22ee 004178 call wait_access_clkn_rt 
+0x22ef 004179 nrtn sync 
+0x22f0 004180 call save_rssi 
+0x22f1 004181 branch receive_packet 
+:      004185 master_newconn_once:
+0x22f2 004186 bpatch patch06_1 ,mem_patch06 
+0x22f3 004187 fetch 1 ,mem_fhs_am_addr 
+0x22f4 004188 iforce am_addr 
+0x22f5 004189 force type_poll ,type 
+0x22f6 004190 call master_conn_send_packet 
+0x22f7 004191 branch master_conn_recv_packet 
+:      004202 inquiry_scan_dispatch:
+0x22f8 004203 fetch 1 ,mem_scan_mode 
+0x22f9 004204 rtnbit0 inq_scan_mode 
+0x22fa 004205 force iscan_interval_timer ,queue 
+0x22fb 004206 call timer_check 
+0x22fc 004207 nrtn blank 
+0x22fd 004208 fetcht 2 ,mem_iscan_window 
+0x22fe 004209 force 4 ,queue 
+0x22ff 004210 call sniff_check_window 
+0x2300 004211 rtn user 
+0x2301 004212 call inquiry_scan_start 
+0x2302 004213 force iscan_interval_timer ,queue 
+0x2303 004214 fetch 2 ,mem_iscan_interval 
+0x2304 004215 nbranch timer_init ,sync 
+0x2305 004216 random pdata 
+0x2306 004217 iand mask3ff ,pdata 
+0x2307 004218 branch timer_init 
+:      004221 inquiry_scan_start:
+0x2308 004222 bpatch patch06_2 ,mem_patch06 
+0x2309 004223 jam 0 ,mem_fhs_am_addr 
+0x230a 004224 disable clknt 
+0x230b 004225 disable attempt 
+0x230c 004226 call afh_clear 
+0x230d 004227 and clkn_bt ,0x1fc ,bt_clk 
+0x230e 004228 force 0x01 ,freq_mode 
+0x230f 004229 call fetch_giac 
+0x2310 004230 call rx_radio_freq 
+0x2311 004231 setflip mark_inquiry_state ,mark 
+0x2312 004232 fetch 1 ,mem_inquiryscan_waitcnt 
+0x2313 004233 increase 1 ,pdata 
+0x2314 004234 store 1 ,mem_inquiryscan_waitcnt 
+0x2315 004235 call fetch_diac 
+0x2316 004236 call start_receiver 
+0x2317 004237 call wait_access_forever 
+0x2318 004238 nrtn sync 
+0x2319 004239 bpatch patch06_3 ,mem_patch06 
+0x231a 004240 force 0 ,stop_watch 
+0x231b 004241 call shutdown_radio 
+0x231c 004242 fetch 1 ,mem_inquiryscan_rcvcnt 
+0x231d 004243 increase 1 ,pdata 
+0x231e 004244 store 1 ,mem_inquiryscan_rcvcnt 
+0x231f 004245 call fetch_giac 
+0x2320 004246 call rf_setup_time_slave_slot 
+0x2321 004247 or_into 0x002 ,bt_clk 
+0x2322 004248 force 0x01 ,freq_mode 
+0x2323 004249 call tx_radio_freq 
+0x2324 004250 call fetch_diac 
+0x2325 004251 call start_transmitter 
+0x2326 004252 call start_tx_external 
+0x2327 004253 deposit clkn_bt 
+0x2328 004254 store 4 ,mem_clkn_bt 
+0x2329 004255 call send_access_word 
+0x232a 004256 force type_fhs ,type 
+0x232b 004257 force 0 ,am_addr 
+0x232c 004258 call scan_mode_whiten 
+0x232d 004259 call transmit_packet_whitened 
+0x232e 004260 call send_eir 
+0x232f 004261 and_into 0x1fd ,bt_clk 
+0x2330 004262 increase 1 ,n_tx_slot 
+0x2331 004263 rtn 
+:      004265 send_eir:
+0x2332 004266 bpatch patch06_4 ,mem_patch06 
+0x2333 004267 fetch 1 ,mem_eir_enable 
+0x2334 004268 rtn blank 
+0x2335 004269 arg mem_eir ,contw 
+0x2336 004270 fetch 1 ,mem_local_name_length 
+0x2337 004271 copy pdata ,loopcnt 
+0x2338 004272 increase 1 ,pdata 
+0x2339 004273 istore 1 ,contw 
+0x233a 004274 copy contw ,temp 
+0x233b 004275 increase 1 ,pdata 
+0x233c 004276 store 2 ,mem_tx_len 
+0x233d 004277 copy temp ,contw 
+0x233e 004278 setarg 0x09 
+0x233f 004279 istore 1 ,contw 
+0x2340 004280 arg mem_local_name ,contr 
+0x2341 004281 call memcpy 
+0x2342 004283 arg mem_all_uuid_128bits ,regc 
+0x2343 004284 arg 4 ,loopcnt 
+0x2344 004285 call get_all_uuid 
+0x2345 004286 arg mem_all_uuid_16bits ,regc 
+0x2346 004287 arg 1 ,loopcnt 
+0x2347 004288 call get_all_uuid 
+0x2348 004290 force type_dm3 ,type 
+0x2349 004291 jam 2 ,mem_tx_lch 
+0x234a 004292 setarg mem_eir 
+0x234b 004293 store 2 ,mem_txptr 
+0x234c 004294 call rf_setup_time_slave_slot 
+0x234d 004295 call tx_radio_freq 
+0x234e 004296 call start_transmitter 
+0x234f 004297 call start_tx_external 
+0x2350 004298 call send_access_word 
+0x2351 004299 call scan_mode_whiten 
+0x2352 004300 call transmit_packet_whitened 
+0x2353 004301 rtn 
+:      004304 get_all_uuid:
+0x2354 004305 copy contw ,temp 
+0x2355 004306 copy regc ,contr 
+0x2356 004307 ifetch 1 ,contr 
+0x2357 004308 rtn blank 
+:      004309 lshift_loop:
+0x2358 004310 lshift pdata ,pdata 
+0x2359 004311 loop lshift_loop 
+0x235a 004312 copy pdata ,rega 
+0x235b 004313 increase 2 ,pdata 
+0x235c 004314 copy pdata ,queue 
+0x235d 004315 fetch 2 ,mem_tx_len 
+0x235e 004316 iadd queue ,pdata 
+0x235f 004317 store 2 ,mem_tx_len 
+0x2360 004318 copy temp ,contw 
+0x2361 004319 copy rega ,pdata 
+0x2362 004320 increase 1 ,pdata 
+0x2363 004321 istore 1 ,contw 
+0x2364 004322 copy regc ,contr 
+0x2365 004323 ifetch 1 ,contr 
+0x2366 004324 ifetch 1 ,contr 
+0x2367 004325 istore 1 ,contw 
+0x2368 004326 copy rega ,loopcnt 
+0x2369 004327 branch memcpy 
+:      004333 page_scan_dispatch:
+0x236a 004334 fetch 1 ,mem_scan_mode 
+0x236b 004335 rtnbit0 page_scan_mode 
+0x236c 004336 force pscan_interval_timer ,queue 
+0x236d 004337 call timer_check 
+0x236e 004338 nrtn blank 
+0x236f 004339 fetcht 2 ,mem_pscan_window 
+0x2370 004340 force 40 ,queue 
+0x2371 004341 call sniff_check_window 
+0x2372 004342 rtn user 
+0x2373 004343 force 0 ,am_addr 
+0x2374 004344 jam param_pagerespto ,mem_fhs_wait_counter 
+0x2375 004345 set0 mark_fhs_already_good ,mark 
+0x2376 004346 call page_scan_start 
+0x2377 004347 force pscan_interval_timer ,queue 
+0x2378 004348 fetch 2 ,mem_pscan_interval 
+0x2379 004349 branch timer_init 
+:      004352 page_scan_start:
+0x237a 004353 bpatch patch06_5 ,mem_patch06 
+0x237b 004354 disable clknt 
+0x237c 004355 call afh_clear 
+0x237d 004356 fetch 1 ,mem_pagescan_waitcnt 
+0x237e 004357 increase 1 ,pdata 
+0x237f 004358 store 1 ,mem_pagescan_waitcnt 
+0x2380 004359 force 0 ,n_tx_slot 
+0x2381 004360 call fetch_self_bt_adr 
+0x2382 004361 add clkn_bt ,1 ,bt_clk 
+0x2383 004362 force 0x02 ,freq_mode 
+0x2384 004363 bpatch patch06_6 ,mem_patch06 
+0x2385 004364 call rx_radio_freq 
+0x2386 004365 call start_receiver 
+0x2387 004366 call wait_access_forever 
+0x2388 004367 nrtn sync 
+0x2389 004368 call shutdown_radio 
+0x238a 004369 fetch 1 ,mem_pagescan_rcvcnt 
+0x238b 004370 increase 1 ,pdata 
+0x238c 004371 store 1 ,mem_pagescan_rcvcnt 
+0x238d 004372 force 0 ,stop_watch 
+0x238e 004373 call rf_setup_time_slave_slot 
+0x238f 004374 or_into 0x002 ,bt_clk 
+0x2390 004375 force 0x01 ,freq_mode 
+0x2391 004376 call tx_radio_freq 
+0x2392 004377 call start_transmitter 
+0x2393 004378 call start_tx_external 
+0x2394 004379 call send_access_word 
+0x2395 004380 call end_of_packet 
+0x2396 004381 force 0 ,am_addr 
+0x2397 004382 arg param_rf_setup ,timeup 
+0x2398 004383 until clke_rt ,meet 
+0x2399 004384 or_into 0x03 ,clke_bt 
+0x239a 004385 and_into 0x1fd ,bt_clk 
+:      004386 page_scan_wait_fhs_restart:
+0x239b 004387 bpatch patch06_7 ,mem_patch06 
+0x239c 004388 increase 1 ,n_tx_slot 
+0x239d 004389 call rx_radio_freq 
+0x239e 004390 call start_receiver 
+0x239f 004391 call wait_access_mhalfbnd 
+0x23a0 004392 nbranch page_scan_wait_fhs_again ,sync 
+0x23a1 004393 call scan_mode_whiten 
+0x23a2 004394 call receive_packet_whitened 
+0x23a3 004395 bmark1 mark_fhs_already_good ,page_scan_reply_to_fhs 
+:      004396 page_scan_wait_fhs_again:
+0x23a4 004397 bpatch patch07_0 ,mem_patch07 
+0x23a5 004398 fetch 1 ,mem_fhs_wait_counter 
+0x23a6 004399 rtn blank 
+0x23a7 004400 increase -1 ,pdata 
+0x23a8 004401 store 1 ,mem_fhs_wait_counter 
+0x23a9 004402 call rf_setup_time_master_slot 
+0x23aa 004403 branch page_scan_wait_fhs_restart 
+:      004406 page_scan_reply_to_fhs:
+0x23ab 004407 bpatch patch07_1 ,mem_patch07 
+0x23ac 004408 set0 1 ,clke_bt 
+0x23ad 004409 set1 0 ,clke_bt 
+0x23ae 004410 fetch 1 ,mem_pagescan_rcvfhscnt 
+0x23af 004411 increase 1 ,pdata 
+0x23b0 004412 store 1 ,mem_pagescan_rcvfhscnt 
+0x23b1 004413 call rf_setup_time_slave_slot 
+0x23b2 004414 or_into 0x02 ,bt_clk 
+0x23b3 004415 call tx_radio_freq 
+0x23b4 004416 call start_transmitter 
+0x23b5 004417 call start_tx_external 
+0x23b6 004418 call send_access_word 
+0x23b7 004419 call end_of_packet 
+:      004420 slave_apply_clke_bt:
+0x23b8 004421 compare 0x03 ,clke_bt ,0x03 
+0x23b9 004422 branch slave_apply_clke_bt_now ,true 
+0x23ba 004423 until null ,mhalfbnd 
+0x23bb 004424 branch slave_apply_clke_bt 
+:      004425 slave_apply_clke_bt_now:
+0x23bc 004426 fetch 4 ,mem_clke_bt 
+0x23bd 004427 or_into 0x03 ,pdata 
+0x23be 004428 icopy clke_bt 
+:      004430 start_slave_connection:
+0x23bf 004431 bpatch patch07_2 ,mem_patch07 
+0x23c0 004432 fetch 6 ,extm_lap 
+0x23c1 004433 store 6 ,mem_plap 
+0x23c2 004434 call prepare_newconn 
+:      004435 slave_newconn_loop:
+0x23c3 004436 call slave_newconn_once 
+0x23c4 004437 branch sconn_successful ,match 
+0x23c5 004438 call new_conn_timeout 
+0x23c6 004439 nbranch slave_newconn_loop ,blank 
+0x23c7 004440 rtn 
+:      004443 sconn_successful:
+0x23c8 004444 bpatch patch07_3 ,mem_patch07 
+0x23c9 004445 call newconn_init 
+0x23ca 004446 call context_new 
+0x23cb 004447 nrtn zero 
+0x23cc 004448 jam 0 ,mem_mode 
+0x23cd 004449 call calc_clke_offset 
+0x23ce 004450 branch context_save 
+:      004455 slave_dispatch:
+0x23cf 004456 bpatch patch07_4 ,mem_patch07 
+0x23d0 004457 call calc_clke 
+0x23d1 004458 call role_switch_slave 
+0x23d2 004459 rtn user 
+:      004460 slave_loop:
+0x23d3 004461 bpatch patch07_5 ,mem_patch07 
+0x23d4 004462 call check_bt_disabled 
+0x23d5 004463 call scheduler_process 
+0x23d6 004464 call slave_conn_recv_packet 
+0x23d7 004465 nbranch slave_notmatch ,match 
+0x23d8 004466 call supervision_flush 
+0x23d9 004467 call scheduler_tx_l2cap_pkt 
+0x23da 004468 call prepare_tx 
+0x23db 004469 call slave_conn_send_packet 
+0x23dc 004470 call parse_l2cap 
+0x23dd 004471 call parse_lmp 
+0x23de 004472 fetch 1 ,mem_slave_rcvcnt 
+0x23df 004473 increase 1 ,pdata 
+0x23e0 004474 store 1 ,mem_slave_rcvcnt 
+0x23e1 004475 call calc_clke_offset 
+:      004476 slave_notmatch:
+0x23e2 004477 bpatch patch07_6 ,mem_patch07 
+0x23e3 004478 call lpm_set_mult 
+0x23e4 004479 call supervision_update 
+0x23e5 004480 branch slave_disconnect ,positive 
+0x23e6 004481 call check_disconnect_timeout 
+0x23e7 004482 nbranch slave_disconnect ,user 
+0x23e8 004483 call check_attempt 
+0x23e9 004484 nbranch slave_loop ,blank 
+0x23ea 004485 rtn 
+:      004487 slave_disconnect:
+0x23eb 004488 bpatch patch07_7 ,mem_patch07 
+0x23ec 004489 jam 0 ,mem_tester_emulate 
+0x23ed 004490 jam 0 ,mem_debug_config 
+0x23ee 004491 call quit_connection 
+0x23ef 004492 set0 mark_testmode ,mark 
+0x23f0 004493 call test_enable_white 
+0x23f1 004494 fetch 1 ,mem_state 
+0x23f2 004495 rtn 
+:      004498 role_switch_slave:
+0x23f3 004499 bpatch patch08_0 ,mem_patch08 
+0x23f4 004500 call role_switch_check 
+0x23f5 004501 nrtn user 
+0x23f6 004502 copy am_addr ,temp 
+0x23f7 004503 call get_free_amaddr 
+0x23f8 004504 store 1 ,mem_fhs_am_addr 
+0x23f9 004505 copy temp ,am_addr 
+0x23fa 004506 jam param_newconnto ,mem_newconnto_counter 
+:      004507 roles_sendfhs_loop:
+0x23fb 004508 bpatch patch08_1 ,mem_patch08 
+0x23fc 004509 call rf_setup_time_master_slot 
+0x23fd 004510 force type_fhs ,type 
+0x23fe 004511 call slave_send_access 
+0x23ff 004512 deposit clkn_bt 
+0x2400 004513 store 4 ,mem_clkn_bt 
+0x2401 004514 call transmit_packet 
+0x2402 004515 call rf_setup_time_slave_slot 
+0x2403 004516 enable user3 
+0x2404 004517 call slave_receive_access 
+0x2405 004518 branch roles_got_fhs_reply ,sync 
+0x2406 004519 call shutdown_radio 
+0x2407 004520 call new_conn_timeout 
+0x2408 004521 nbranch roles_sendfhs_loop ,blank 
+0x2409 004522 rtnmark0 mark_accept_switch 
+0x240a 004523 jam lmp_slot_offset ,mem_lmo_opcode2 
+0x240b 004524 set1 mark_switch_initiated ,mark 
+0x240c 004525 rtn 
+:      004526 roles_got_fhs_reply:
+0x240d 004527 enable clknt 
+0x240e 004528 call prepare_newconn 
+0x240f 004529 call afh_clear 
+:      004530 roles_newconn_loop:
+0x2410 004531 bpatch patch08_2 ,mem_patch08 
+0x2411 004532 call master_newconn_once 
+0x2412 004533 branch roles_newconn_responded ,sync 
+0x2413 004534 call new_conn_timeout 
+0x2414 004535 nbranch roles_newconn_loop ,blank 
+0x2415 004536 disable clknt 
+0x2416 004537 deposit clke_bt 
+0x2417 004538 store 4 ,mem_next_btclk 
+0x2418 004539 rtn 
+:      004540 roles_newconn_responded:
+0x2419 004541 enable master 
+0x241a 004542 bmark0 mark_accept_switch ,roles_newconn_nolmp 
+0x241b 004543 set0 mark_accept_switch ,mark 
+0x241c 004544 jam lmp_accepted ,mem_lmo_opcode2 
+0x241d 004545 jam lmp_host_connection_req ,mem_lmi_opcode2 
+0x241e 004546 call tid_set_reply 
+:      004547 roles_newconn_nolmp:
+0x241f 004548 deposit am_addr 
+0x2420 004549 store 1 ,mem_amaddr 
+0x2421 004550 force 0 ,pdata 
+0x2422 004551 store 6 ,mem_clk_offset 
+0x2423 004552 fetch 1 ,mem_mode 
+0x2424 004553 set1 mode_master ,pdata 
+0x2425 004554 store 1 ,mem_mode 
+0x2426 004555 call supervision_flush 
+0x2427 004556 disable master 
+0x2428 004557 enable user 
+0x2429 004558 rtn 
+:      004562 init_rx_packet_flags:
+0x242a 004563 bpatch patch08_3 ,mem_patch08 
+0x242b 004564 disable match 
+0x242c 004565 set0 mark_loopback ,mark 
+0x242d 004566 set0 mark_am_addr_broadcast ,mark 
+0x242e 004567 set0 mark_longpacket ,mark 
+0x242f 004568 set0 mark_old_packet ,mark 
+0x2430 004569 fetch 1 ,mem_arq 
+0x2431 004570 set0 arqnx ,pdata 
+0x2432 004571 set1 flowx ,pdata 
+0x2433 004572 store 1 ,mem_arq 
+0x2434 004573 rtn 
+:      004575 prepare_newconn:
+0x2435 004576 bpatch patch08_4 ,mem_patch08 
+0x2436 004577 jam param_newconnto ,mem_newconnto_counter 
+0x2437 004578 jam param_newconn_arq ,mem_arq 
+0x2438 004579 fetch 2 ,mem_rx_window_init 
+0x2439 004580 store 2 ,mem_rx_window 
+0x243a 004581 deposit clkn_bt 
+0x243b 004582 store 4 ,mem_next_btclk 
+0x243c 004583 rtn clknt 
+0x243d 004584 deposit clke_bt 
+0x243e 004585 store 4 ,mem_next_btclk 
+0x243f 004586 rtn 
+:      004588 newconn_init:
+0x2440 004589 bpatch patch08_5 ,mem_patch08 
+0x2441 004590 call init_lmp_reinit 
+0x2442 004591 call new_conn_handle 
+0x2443 004592 store 1 ,mem_conn_handle 
+0x2444 004593 setarg 0 
+0x2445 004594 store 2 ,mem_l2cap_rxbuff1_len 
+0x2446 004595 setarg param_supervision_to 
+0x2447 004596 store 2 ,mem_supervision_to 
+0x2448 004597 fetch 1 ,mem_state 
+0x2449 004598 set1 state_inconn ,pdata 
+0x244a 004599 store 1 ,mem_state 
+0x244b 004600 jam 0 ,mem_op 
+0x244c 004601 jam 0 ,mem_state_map 
+0x244d 004602 jam 0 ,mem_lpm_current_mult 
+0x244e 004603 branch supervision_flush 
+:      004606 clear_linkkey:
+0x244f 004607 bpatch patch08_6 ,mem_patch08 
+0x2450 004608 force 0 ,pdata 
+0x2451 004609 store 8 ,mem_link_key 
+0x2452 004610 istore 8 ,contw 
+0x2453 004611 call clear_linkstate 
+0x2454 004612 branch context_traverse_linkkey 
+:      004614 new_conn_timeout:
+0x2455 004615 fetch 1 ,mem_newconnto_counter 
+0x2456 004616 increase -1 ,pdata 
+0x2457 004617 store 1 ,mem_newconnto_counter 
+0x2458 004618 rtn 
+:      004620 new_conn_handle:
+0x2459 004621 fetch 1 ,mem_handle_num 
+0x245a 004622 increase 1 ,pdata 
+0x245b 004623 store 1 ,mem_handle_num 
+0x245c 004624 rtn 
+:      004627 quit_connection:
+0x245d 004628 bpatch patch08_7 ,mem_patch08 
+0x245e 004629 fetch 1 ,mem_hci_cmd 
+0x245f 004630 beq hci_cmd_remote_name_req ,quit_connection_name 
+0x2460 004631 fetch 1 ,mem_lmp_to_send 
+0x2461 004632 bne lmp_name_req ,quit_connection_cont 
+:      004633 quit_connection_name:
+0x2462 004634 call cmd_check_plap 
+0x2463 004635 nbranch quit_connection_cont ,zero 
+0x2464 004636 call master_name_error 
+0x2465 004637 jam 0 ,mem_hci_cmd 
+:      004638 quit_connection_cont:
+0x2466 004639 bpatch patch09_0 ,mem_patch09 
+0x2467 004640 call app_disconn_reason_collect_bt 
+0x2468 004641 call sniff_exit 
+0x2469 004642 jam bt_evt_bb_disconnected ,mem_fifo_temp 
+0x246a 004643 call ui_ipc_send_event 
+0x246b 004644 call init_lmp_work 
+0x246c 004645 call l2cap_init_work 
+0x246d 004646 call sp_initialize 
+0x246e 004647 fetch 1 ,mem_state 
+0x246f 004648 set0 state_inconn 
+0x2470 004649 store 1 ,mem_state 
+0x2471 004650 jam 0 ,memui_reconnect_mode 
+0x2472 004652 fetch 1 ,mem_state_map 
+0x2473 004653 compare 0x0 ,pdata ,0xc0 
+0x2474 004654 branch quit_connection_not_clear_mark ,true 
+0x2475 004655 set0 mark_rxbuf_inuse ,mark 
+:      004656 quit_connection_not_clear_mark:
+0x2476 004657 fetch 1 ,mem_arq 
+0x2477 004658 bbit0 wack ,quit_connection_not_clear_tx 
+:      004659 quit_connection_not_clear_tx:
+0x2478 004660 fetch 1 ,mem_op 
+0x2479 004661 rtnbit0 op_txl2cap 
+0x247a 004662 set0 mark_tx_l2cap ,mark 
+0x247b 004663 rtn 
+:      004665 slave_newconn_once:
+0x247c 004666 bpatch patch09_1 ,mem_patch09 
+0x247d 004667 fetch 1 ,extm_newconn_am_addr 
+0x247e 004668 rtn blank 
+0x247f 004669 icopy am_addr 
+0x2480 004670 call slave_conn_recv_packet 
+0x2481 004671 nrtn match 
+0x2482 004672 force type_null ,type 
+0x2483 004673 call slave_conn_send_packet 
+0x2484 004674 deposit am_addr 
+0x2485 004675 store 1 ,mem_amaddr 
+0x2486 004676 force 0 ,pdata 
+0x2487 004677 store 1 ,extm_newconn_am_addr 
+0x2488 004678 rtn 
+:      004684 prepare_tx:
+0x2489 004685 bpatch patch09_2 ,mem_patch09 
+0x248a 004686 fetch 1 ,mem_state 
+0x248b 004687 bbit0 state_insco ,prepare_tx_not_sco 
+0x248c 004688 force type_hv3 ,type 
+0x248d 004689 bmark0 mark_esco ,prepare_tx_not_esco 
+0x248e 004690 call check_esco_amaddr 
+0x248f 004691 nbranch prepare_tx_not_sco ,true 
+0x2490 004692 branch prepare_tx_not_sco ,attempt 
+0x2491 004693 call set_wait_ack 
+0x2492 004694 setarg 2 
+0x2493 004695 store 2 ,mem_retransmission_cnt 
+0x2494 004696 rtn 
+:      004697 prepare_tx_not_esco:
+0x2495 004698 nrtn attempt 
+:      004699 prepare_tx_not_sco:
+0x2496 004700 bpatch patch09_3 ,mem_patch09 
+0x2497 004701 call context_check_all_wack 
+0x2498 004702 nbranch prepare_tx_no_retransmit ,zero 
+0x2499 004703 fetch 1 ,mem_arq 
+0x249a 004704 bbit0 wack ,prepare_tx_pollnull 
+:      004705 prepare_tx_retransmit:
+0x249b 004706 bmark1 mark_loopback ,prepare_tx_loopback 
+0x249c 004707 fetch 1 ,mem_debug_config 
+0x249d 004708 bbit1 debug_tx_pattern ,prepare_tx_txpat 
+0x249e 004709 fetch 2 ,mem_retransmission_cnt 
+0x249f 004710 increase -1 ,pdata 
+0x24a0 004711 store 2 ,mem_retransmission_cnt 
+0x24a1 004712 branch prepare_tx_nomore_retransmit ,blank 
+0x24a2 004713 fetch 1 ,mem_last_type 
+0x24a3 004714 iforce type 
+0x24a4 004715 rtn 
+:      004717 prepare_tx_nomore_retransmit:
+0x24a5 004718 bpatch patch09_4 ,mem_patch09 
+0x24a6 004719 call clear_got_tx 
+:      004720 prepare_tx_no_retransmit:
+0x24a7 004721 call check_esco_amaddr 
+0x24a8 004722 branch prepare_tx_pollnull ,true 
+0x24a9 004723 call send_lmp 
+0x24aa 004724 branch prepare_tx_sendlmp ,user 
+0x24ab 004725 fetch 1 ,mem_op 
+0x24ac 004726 bbit1 op_txl2cap ,prepare_tx_sendl2cap 
+0x24ad 004727 bmark1 mark_loopback ,prepare_tx_loopback 
+0x24ae 004728 fetch 1 ,mem_debug_config 
+0x24af 004729 bbit1 debug_tx_pattern ,prepare_tx_txpat 
+:      004730 prepare_tx_pollnull:
+0x24b0 004731 force type_poll ,type 
+0x24b1 004732 rtn master 
+0x24b2 004733 force type_null ,type 
+0x24b3 004734 rtn 
+:      004735 prepare_tx_loopback:
+0x24b4 004736 bpatch patch09_5 ,mem_patch09 
+0x24b5 004737 fetch 1 ,mem_rx_type 
+0x24b6 004738 iforce type 
+0x24b7 004739 rtnne 1 
+0x24b8 004740 force type_null ,type 
+0x24b9 004741 rtn 
+:      004742 prepare_tx_txpat:
+0x24ba 004743 fetch 1 ,test_mode_packet_type 
+0x24bb 004744 and pdata ,0xf ,type 
+0x24bc 004745 set1 mark_loopback ,mark 
+0x24bd 004746 rtn 
+:      004747 prepare_tx_sendlmp:
+0x24be 004748 force type_lmp ,type 
+0x24bf 004749 branch set_wait_ack 
+:      004750 prepare_tx_sendl2cap:
+0x24c0 004751 call tx_l2cap_type 
+:      004753 set_wait_ack:
+0x24c1 004754 bpatch patch09_6 ,mem_patch09 
+0x24c2 004755 fetcht 1 ,mem_arq 
+0x24c3 004756 set1 wack ,temp 
+0x24c4 004757 storet 1 ,mem_arq 
+0x24c5 004758 deposit type 
+0x24c6 004759 store 1 ,mem_last_type 
+0x24c7 004760 setarg 0xffff 
+0x24c8 004761 store 2 ,mem_retransmission_cnt 
+0x24c9 004762 rtn 
+:      004764 tx_l2cap_type:
+0x24ca 004765 bpatch patch09_7 ,mem_patch09 
+0x24cb 004766 fetch 1 ,mem_state_map 
+0x24cc 004767 isolate1 smap_edr ,pdata 
+0x24cd 004768 fetch 2 ,mem_tx_len 
+0x24ce 004769 branch tx_l2cap_type_edr ,true 
+0x24cf 004770 force type_dm1 ,type 
+0x24d0 004771 sub pdata ,17 ,null 
+0x24d1 004772 rtn positive 
+0x24d2 004773 force type_dh1 ,type 
+0x24d3 004774 sub pdata ,27 ,null 
+0x24d4 004775 rtn positive 
+0x24d5 004776 force type_dm3 ,type 
+0x24d6 004777 sub pdata ,121 ,null 
+0x24d7 004778 rtn positive 
+0x24d8 004779 force type_dh3 ,type 
+0x24d9 004780 sub pdata ,183 ,null 
+0x24da 004781 rtn positive 
+0x24db 004782 force type_dm5 ,type 
+0x24dc 004783 sub pdata ,224 ,null 
+0x24dd 004784 rtn positive 
+0x24de 004785 force type_dh5 ,type 
+0x24df 004786 rtn 
+:      004787 tx_l2cap_type_edr:
+0x24e0 004788 force type_dm1 ,type 
+0x24e1 004789 sub pdata ,17 ,null 
+0x24e2 004790 rtn positive 
+0x24e3 004791 force type_dh1 ,type 
+0x24e4 004792 sub pdata ,54 ,null 
+0x24e5 004793 rtn positive 
+0x24e6 004794 force type_dm3 ,type 
+0x24e7 004795 arg 367 ,temp 
+0x24e8 004796 isub temp ,null 
+0x24e9 004797 nrtn positive 
+0x24ea 004798 force type_dm5 ,type 
+0x24eb 004799 arg 679 ,temp 
+0x24ec 004800 isub temp ,null 
+0x24ed 004801 nrtn positive 
+0x24ee 004802 force type_dh5 ,type 
+0x24ef 004803 rtn 
+:      004812 slave_receive_master_slot:
+0x24f0 004813 fetch 1 ,mem_state 
+0x24f1 004814 bbit0 state_insniff ,slave_receive_notsniff 
+0x24f2 004815 fetch 2 ,mem_tsniff 
+0x24f3 004816 branch slave_receive_notsniff ,blank 
+0x24f4 004817 nbranch slave_receive_sniff ,attempt 
+:      004818 slave_receive_notsniff:
+0x24f5 004819 call rf_setup_time_master_slot 
+:      004820 slave_receive_access:
+0x24f6 004821 add clke_bt ,1 ,bt_clk 
+:      004822 slave_receive_sniff:
+0x24f7 004823 enable swfine 
+0x24f8 004824 fetch 2 ,mem_rx_window 
+0x24f9 004825 rshift pdata ,pdata 
+0x24fa 004826 arg param_pll_setup ,temp 
+0x24fb 004827 iadd temp ,pdata 
+0x24fc 004828 call ahead_window 
+0x24fd 004829 call fetch_extm_bt_adr 
+0x24fe 004830 force 0x03 ,freq_mode 
+0x24ff 004831 call rx_radio_freq 
+0x2500 004832 call init_rx_packet_flags 
+0x2501 004833 call prep_crypt 
+0x2502 004834 bpatch patch0a_0 ,mem_patch0a 
+0x2503 004835 fetch 2 ,mem_rx_window 
+0x2504 004836 rshift pdata ,pdata 
+0x2505 004837 call ahead_window 
+0x2506 004838 call start_receiver 
+0x2507 004839 enable decode_fec0 
+0x2508 004840 fetch 2 ,mem_rx_window 
+0x2509 004841 arg param_clke_cal ,temp 
+0x250a 004842 iadd temp ,stop_watch 
+0x250b 004843 correlate null ,timeout 
+0x250c 004844 copy clke ,temp 
+0x250d 004845 storet 6 ,mem_sync_clke 
+0x250e 004846 disable decode_fec0 
+0x250f 004847 nrtn sync 
+0x2510 004848 arg param_clke_cal ,clke_rt 
+0x2511 004849 copy bt_clk ,clke_bt 
+0x2512 004850 branch lpm_adjust_clk ,wake 
+0x2513 004851 rtn 
+:      004854 slave_conn_recv_packet:
+0x2514 004855 bpatch patch0a_1 ,mem_patch0a 
+0x2515 004856 call slave_receive_master_slot 
+0x2516 004857 nbranch shutdown_radio ,sync 
+0x2517 004858 call save_rssi 
+0x2518 004859 bmark0 mark_testmode ,receive_packet 
+0x2519 004860 fetch 2 ,mem_tst_pktcnt_sync 
+0x251a 004861 increase 1 ,pdata 
+0x251b 004862 store 2 ,mem_tst_pktcnt_sync 
+:      004863 receive_packet:
+0x251c 004864 rshift bt_clk ,temp 
+0x251d 004865 or temp ,0x40 ,white_init 
+:      004866 receive_packet_whitened:
+0x251e 004867 bpatch patch0a_2 ,mem_patch0a 
+0x251f 004868 enable enable_white 
+0x2520 004869 enable enable_hec 
+0x2521 004870 enable decode_fec1 
+0x2522 004871 parse demod ,bucket ,3 
+0x2523 004872 rshift8 pwindow ,pdata 
+0x2524 004873 store 1 ,mem_temp_am_addr 
+0x2525 004874 parse demod ,bucket ,4 
+0x2526 004875 inject bucket ,7 
+0x2527 004876 copy pwindow ,pdata 
+0x2528 004877 store 1 ,mem_rx_type 
+0x2529 004878 parse demod ,bucket ,3 
+0x252a 004879 rshift8 pwindow ,pdata 
+0x252b 004880 store 1 ,mem_temp_arq 
+0x252c 004881 fetch 1 ,mem_rx_type 
+0x252d 004882 sub pdata ,3 ,null 
+0x252e 004883 branch receive_packet_noedr ,positive 
+0x252f 004884 beq 7 ,receive_packet_noedr 
+0x2530 004885 fetch 1 ,mem_state_map 
+0x2531 004886 isolate1 smap_edr ,pdata 
+0x2532 004887 setflag true ,psk ,radio_ctrl 
+:      004888 receive_packet_noedr:
+0x2533 004889 bpatch patch0a_3 ,mem_patch0a 
+0x2534 004890 parse demod ,bucket ,8 
+0x2535 004891 disable decode_fec1 
+0x2536 004892 disable enable_hec 
+0x2537 004893 branch error_header ,crc_failed 
+0x2538 004894 bmark0 mark_testmode ,receive_packet_amchk 
+0x2539 004895 fetch 2 ,mem_tst_pktcnt_hec 
+0x253a 004896 increase 1 ,pdata 
+0x253b 004897 store 2 ,mem_tst_pktcnt_hec 
+:      004898 receive_packet_amchk:
+0x253c 004899 bpatch patch0a_4 ,mem_patch0a 
+0x253d 004900 fetch 1 ,mem_temp_am_addr 
+0x253e 004901 compare 0 ,pdata ,0x07 
+0x253f 004902 setflag true ,mark_am_addr_broadcast ,mark 
+0x2540 004903 branch am_addr_ok ,true 
+0x2541 004904 icompare 0x07 ,am_addr 
+0x2542 004905 branch am_addr_match ,true 
+0x2543 004906 bmark0 mark_esco ,end_of_packet 
+0x2544 004907 fetcht 1 ,mem_saved_amaddr 
+0x2545 004908 icompare 0x7 ,temp 
+0x2546 004909 nbranch end_of_packet ,true 
+0x2547 004910 fetch 1 ,mem_arq 
+0x2548 004911 set0 arqnx ,pdata 
+0x2549 004912 set1 flowx ,pdata 
+0x254a 004913 store 1 ,mem_arq 
+:      004914 am_addr_match:
+0x254b 004915 enable match 
+:      004916 am_addr_ok:
+0x254c 004917 bpatch patch0a_5 ,mem_patch0a 
+0x254d 004918 fetch 1 ,mem_rx_type 
+0x254e 004919 icopy type 
+0x254f 004920 bmark1 mark_am_addr_broadcast ,arqn_bypass 
+0x2550 004921 fetcht 1 ,mem_temp_arq 
+0x2551 004922 fetch 1 ,mem_arq 
+0x2552 004923 set0 flow ,pdata 
+0x2553 004924 isolate1 flow ,temp 
+0x2554 004925 setflag true ,flow ,pdata 
+0x2555 004926 isolate1 arqn ,temp 
+0x2556 004927 setflag true ,arqn ,pdata 
+0x2557 004928 store 1 ,mem_arq 
+0x2558 004929 isolate0 arqn ,temp 
+0x2559 004930 branch arqn_bypass ,true 
+0x255a 004931 call clear_got_tx 
+:      004932 arqn_bypass:
+0x255b 004933 bpatch patch0a_6 ,mem_patch0a 
+0x255c 004934 arg 0 ,temp 
+0x255d 004935 call reserve_slot 
+0x255e 004936 and type ,0xf ,pdata 
+0x255f 004937 beq type_poll ,process_poll 
+0x2560 004938 beq type_null ,end_of_packet 
+0x2561 004939 beq type_fhs ,process_fhs 
+0x2562 004940 fetcht 1 ,mem_temp_arq 
+0x2563 004941 fetch 1 ,mem_arq 
+0x2564 004942 icompare 0x04 ,temp 
+0x2565 004943 nbranch rx_type_dispatch ,true 
+0x2566 004944 bmark0 mark_am_addr_broadcast ,failed_seqn 
+0x2567 004945 bbit0 bcast1 ,rx_type_dispatch 
+:      004946 failed_seqn:
+0x2568 004947 set1 mark_old_packet ,mark 
+:      004948 rx_type_dispatch:
+0x2569 004949 bpatch patch0a_7 ,mem_patch0a 
+0x256a 004950 deposit type 
+0x256b 004951 beq type_dm1 ,process_dm1 
+0x256c 004952 beq type_dh1 ,process_dh1 
+0x256d 004953 beq type_hv3 ,process_hev 
+0x256e 004954 beq type_3dh1 ,process_3dh1 
+0x256f 004955 arg 4 ,temp 
+0x2570 004956 call reserve_slot 
+0x2571 004957 beq type_dm3 ,process_dm3 
+0x2572 004958 beq type_dh3 ,process_dh3 
+0x2573 004959 arg 8 ,temp 
+0x2574 004960 call reserve_slot 
+0x2575 004961 beq type_dm5 ,process_dm5 
+0x2576 004962 beq type_dh5 ,process_dh5 
+0x2577 004963 rtn 
+:      004966 process_hev:
+0x2578 004967 bpatch patch0b_0 ,mem_patch0b 
+0x2579 004968 enable decode_fec0 
+0x257a 004969 enable enable_crc 
+0x257b 004970 enable encrypt 
+0x257c 004971 arg mem_sco_ibuf ,contw 
+0x257d 004972 force 30 ,loopcnt 
+:      004973 process_hev_loop:
+0x257e 004974 parse demod ,bucket ,8 
+0x257f 004975 rshift3 pwindow ,pdata 
+0x2580 004976 istore 1 ,contw 
+0x2581 004977 loop process_hev_loop 
+0x2582 004978 bmark0 mark_esco ,end_of_packet 
+0x2583 004979 parse demod ,bucket ,16 
+0x2584 004980 nsetflag crc_failed ,mark_esco_rxok ,mark 
+0x2585 004981 branch error_payload ,crc_failed 
+0x2586 004982 branch ack_payload 
+:      004985 process_poll:
+0x2587 004986 branch end_of_packet 
+:      004988 process_dm3:
+:      004989 process_dm5:
+0x2588 004990 set1 mark_longpacket ,mark 
+:      004991 process_dm1:
+0x2589 004992 enable decode_fec2 
+0x258a 004993 branch process_dmh 
+:      004995 process_dh3:
+:      004996 process_dh5:
+0x258b 004997 set1 mark_longpacket ,mark 
+:      004998 process_3dh1:
+0x258c 004999 set1 psk3m ,radio_ctrl 
+:      005000 process_dh1:
+0x258d 005001 enable decode_fec0 
+:      005002 process_dmh:
+0x258e 005003 bpatch patch0b_1 ,mem_patch0b 
+0x258f 005004 bmark1 mark_rxbuf_inuse ,end_of_packet 
+0x2590 005005 isolate0 psk ,radio_ctrl 
+0x2591 005006 branch process_dmh_noedr ,true 
+0x2592 005007 disable enable_white 
+0x2593 005008 enable decode_fec0 
+0x2594 005009 disable decode_fec2 
+0x2595 005010 add clkn_bt ,2 ,timeup 
+0x2596 005011 correlate clkn_bt ,meet 
+0x2597 005012 nbranch error_payload ,sync 
+0x2598 005013 set1 mark_longpacket ,mark 
+0x2599 005014 enable enable_white 
+:      005015 process_dmh_noedr:
+0x259a 005016 bpatch patch0b_2 ,mem_patch0b 
+0x259b 005017 enable encrypt 
+0x259c 005018 enable enable_crc 
+0x259d 005019 parse demod ,bucket ,3 
+0x259e 005020 rshift8 pwindow ,pdata 
+0x259f 005021 store 1 ,mem_lch_code 
+0x25a0 005022 parse demod ,bucket ,5 
+0x25a1 005023 bmark1 mark_longpacket ,process_dmh_long 
+0x25a2 005024 rshift3 pwindow ,loopcnt 
+0x25a3 005025 rshift3 loopcnt ,loopcnt 
+0x25a4 005026 branch process_dmh_common 
+:      005027 process_dmh_long:
+0x25a5 005028 parse demod ,bucket ,5 
+0x25a6 005029 rshift pwindow ,loopcnt 
+0x25a7 005030 parse demod ,bucket ,3 
+:      005031 process_dmh_common:
+0x25a8 005032 bpatch patch0b_3 ,mem_patch0b 
+0x25a9 005033 deposit loopcnt 
+0x25aa 005034 store 2 ,mem_len 
+0x25ab 005035 branch process_dmh_data_end ,blank 
+0x25ac 005036 isub mask3ff ,null 
+0x25ad 005037 branch error_payload ,positive 
+0x25ae 005038 bpatch patch0b_4 ,mem_patch0b 
+0x25af 005039 set0 mark_fhs_eir ,mark 
+0x25b0 005040 fetch 1 ,mem_lch_code 
+0x25b1 005041 and_into 0x03 ,pdata 
+0x25b2 005042 arg mem_rxbuf ,contw 
+0x25b3 005043 beq llid_lmp ,process_lmp 
+0x25b4 005044 bmark1 mark_testmode ,process_dmh_data 
+0x25b5 005046 fetch 1 ,mem_lch_code 
+0x25b6 005047 and_into 0x03 ,pdata 
+0x25b7 005048 beq llid_l2cap_start ,process_dmh_data_l2cap_start_pkt 
+0x25b8 005049 beq llid_l2cap_cont ,process_dmh_data_l2cap_continue_pkt 
+0x25b9 005050 branch error_payload 
+:      005052 process_lmp:
+0x25ba 005053 fetch 2 ,mem_len 
+0x25bb 005054 sub pdata ,0x70 ,null 
+0x25bc 005055 nbranch error_payload ,positive 
+0x25bd 005056 bmark1 mark_old_packet ,ack_payload 
+0x25be 005057 branch process_dmh_data 
+:      005060 process_dmh_data_l2cap_start_pkt:
+0x25bf 005061 bpatch patch0b_5 ,mem_patch0b 
+0x25c0 005062 bmark1 mark_old_packet ,ack_payload 
+0x25c1 005063 fetch 2 ,mem_len 
+0x25c2 005064 arg 0x2e0 ,temp 
+0x25c3 005065 isub temp ,null 
+0x25c4 005066 branch error_payload ,positive 
+0x25c5 005067 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x25c6 005068 bbit0 l2cap_inuse_buff1 ,process_dmh_data_into_buff1 
+0x25c7 005069 bbit0 l2cap_inuse_buff2 ,process_dmh_data_into_buff2 
+0x25c8 005070 branch end_of_packet 
+:      005071 process_dmh_data_into_buff1:
+0x25c9 005072 jam 1 ,mem_l2cap_rxbuff_new 
+0x25ca 005073 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x25cb 005074 bne 0 ,end_of_packet 
+0x25cc 005075 arg mem_l2cap_rxbuff1 ,contw 
+0x25cd 005076 branch process_dmh_data 
+:      005077 process_dmh_data_into_buff2:
+0x25ce 005078 jam 2 ,mem_l2cap_rxbuff_new 
+0x25cf 005079 fetch 2 ,mem_l2cap_rxbuff2_len 
+0x25d0 005080 bne 0 ,end_of_packet 
+0x25d1 005081 arg mem_l2cap_rxbuff2 ,contw 
+0x25d2 005082 branch process_dmh_data 
+:      005084 process_dmh_data_l2cap_continue_pkt:
+0x25d3 005085 bpatch patch0b_6 ,mem_patch0b 
+0x25d4 005086 bmark1 mark_old_packet ,ack_payload 
+0x25d5 005087 fetch 2 ,mem_len 
+0x25d6 005088 arg 0x2e0 ,temp 
+0x25d7 005089 isub temp ,null 
+0x25d8 005090 branch error_payload ,positive 
+0x25d9 005091 fetch 1 ,mem_l2cap_rxbuff_new 
+0x25da 005092 beq 1 ,process_dmh_data_l2cap_continue_pkt1 
+0x25db 005093 beq 2 ,process_dmh_data_l2cap_continue_pkt2 
+0x25dc 005094 branch end_of_packet 
+:      005095 process_dmh_data_l2cap_continue_pkt1:
+0x25dd 005096 arg mem_l2cap_rxbuff1 ,contw 
+0x25de 005097 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x25df 005098 iadd contw ,contw 
+0x25e0 005099 branch process_dmh_data 
+:      005100 process_dmh_data_l2cap_continue_pkt2:
+0x25e1 005101 arg mem_l2cap_rxbuff2 ,contw 
+0x25e2 005102 fetch 2 ,mem_l2cap_rxbuff2_len 
+0x25e3 005103 iadd contw ,contw 
+:      005104 process_dmh_data:
+0x25e4 005105 parse demod ,bucket ,8 
+0x25e5 005106 rshift3 pwindow ,pdata 
+0x25e6 005107 istore 1 ,contw 
+0x25e7 005108 loop process_dmh_data 
+:      005109 process_dmh_data_end:
+0x25e8 005110 bpatch patch0b_7 ,mem_patch0b 
+0x25e9 005111 parse demod ,bucket ,16 
+0x25ea 005112 branch error_payload_crc ,crc_failed 
+0x25eb 005113 fetch 1 ,mem_l2cap_flow_ctrl_flag 
+0x25ec 005114 beq l2cap_flow_ctrl_enable ,end_of_packet 
+0x25ed 005115 bmark1 mark_testmode ,process_dmh_cont 
+0x25ee 005116 bmark1 mark_old_packet ,redundant_payload 
+0x25ef 005117 fetch 1 ,mem_lch_code 
+0x25f0 005118 compare 3 ,pdata ,3 
+0x25f1 005119 branch process_dmh_cont ,true 
+0x25f2 005120 fetch 2 ,mem_len 
+0x25f3 005121 branch process_dmh_cont ,blank 
+0x25f4 005122 bpatch patch0c_0 ,mem_patch0c 
+0x25f5 005123 fetch 1 ,mem_l2cap_rxbuff_new 
+0x25f6 005124 beq 1 ,process_l2cap_pass_crc_buff1 
+0x25f7 005125 beq 2 ,process_l2cap_pass_crc_buff2 
+0x25f8 005126 branch assert 
+:      005127 process_l2cap_pass_crc_buff1:
+0x25f9 005128 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x25fa 005129 fetcht 2 ,mem_len 
+0x25fb 005130 iadd temp ,pdata 
+0x25fc 005131 store 2 ,mem_l2cap_rxbuff1_len 
+0x25fd 005132 beq 0 ,assert 
+0x25fe 005133 fetcht 2 ,mem_l2cap_rxbuff1 
+0x25ff 005134 increase 4 ,temp 
+0x2600 005135 isub temp ,null 
+0x2601 005136 call l2cap_buff1_inuse ,zero 
+0x2602 005137 branch process_dmh_cont 
+:      005138 process_l2cap_pass_crc_buff2:
+0x2603 005139 fetch 2 ,mem_l2cap_rxbuff2_len 
+0x2604 005140 fetcht 2 ,mem_len 
+0x2605 005141 iadd temp ,pdata 
+0x2606 005142 store 2 ,mem_l2cap_rxbuff2_len 
+0x2607 005143 beq 0 ,assert 
+0x2608 005144 fetcht 2 ,mem_l2cap_rxbuff2 
+0x2609 005145 add temp ,4 ,temp 
+0x260a 005146 isub temp ,null 
+0x260b 005147 call l2cap_buff2_inuse ,zero 
+0x260c 005148 branch process_dmh_cont 
+:      005149 process_dmh_cont:
+0x260d 005150 bpatch patch0c_1 ,mem_patch0c 
+0x260e 005151 fetcht 1 ,mem_state_map 
+0x260f 005152 fetch 1 ,mem_lch_code 
+0x2610 005153 compare 3 ,pdata ,0x03 
+0x2611 005154 setflag true ,smap_rxlmp ,temp 
+0x2612 005155 nsetflag true ,smap_rxl2cap ,temp 
+0x2613 005156 storet 1 ,mem_state_map 
+0x2614 005157 nbranch process_dmh_cont_rxbuf_not_use ,true 
+0x2615 005158 set1 mark_rxbuf_inuse ,mark 
+:      005159 process_dmh_cont_rxbuf_not_use:
+0x2616 005160 bmark0 mark_testmode ,ack_payload 
+0x2617 005161 isolate1 smap_rxlmp ,temp 
+0x2618 005162 branch ack_payload ,true 
+0x2619 005163 fetch 2 ,mem_tst_pktcnt_crc 
+0x261a 005164 increase 1 ,pdata 
+0x261b 005165 store 2 ,mem_tst_pktcnt_crc 
+0x261c 005166 set1 mark_loopback ,mark 
+0x261d 005167 set0 smap_rxl2cap ,temp 
+0x261e 005168 set0 mark_rxbuf_inuse ,mark 
+0x261f 005169 storet 1 ,mem_state_map 
+:      005170 ack_payload:
+0x2620 005171 bpatch patch0c_2 ,mem_patch0c 
+0x2621 005172 fetcht 1 ,mem_temp_arq 
+0x2622 005173 fetch 1 ,mem_arq 
+0x2623 005174 set1 arqnx ,pdata 
+0x2624 005175 isolate1 seqn ,temp 
+0x2625 005176 setflag true ,seqn ,pdata 
+0x2626 005177 isolate1 mark_am_addr_broadcast ,mark 
+0x2627 005178 setflag true ,bcast1 ,pdata 
+0x2628 005179 store 1 ,mem_arq 
+0x2629 005180 fetch 2 ,mem_len 
+0x262a 005181 nbranch end_of_packet ,blank 
+0x262b 005182 fetch 1 ,mem_state_map 
+0x262c 005183 set0 smap_rxl2cap ,pdata 
+0x262d 005184 store 1 ,mem_state_map 
+0x262e 005185 fetch 1 ,mem_lch_code 
+0x262f 005186 compare 0x01 ,pdata ,0x07 
+0x2630 005188 branch end_of_packet 
+:      005190 error_header:
+0x2631 005191 bpatch patch0c_3 ,mem_patch0c 
+0x2632 005192 disable match 
+0x2633 005193 fetch 2 ,mem_rx_hec_err 
+0x2634 005194 increase 1 ,pdata 
+0x2635 005195 store 2 ,mem_rx_hec_err 
+0x2636 005196 branch end_of_packet 
+:      005197 error_payload_crc:
+0x2637 005198 fetch 2 ,mem_rx_crc_err 
+0x2638 005199 increase 1 ,pdata 
+0x2639 005200 store 2 ,mem_rx_crc_err 
+0x263a 005201 call discard_pkt 
+0x263b 005202 bmark0 mark_testmode ,error_payload 
+0x263c 005203 set1 mark_loopback ,mark 
+:      005204 error_payload:
+0x263d 005205 branch end_of_packet 
+:      005207 discard_pkt:
+0x263e 005208 bpatch patch0c_4 ,mem_patch0c 
+0x263f 005209 fetch 1 ,mem_lch_code 
+0x2640 005210 compare 3 ,pdata ,0x03 
+0x2641 005211 nbranch discard_pkt_l2cap ,true 
+:      005212 discard_pkt_lmp:
+0x2642 005213 fetcht 1 ,mem_state_map 
+0x2643 005214 set0 smap_rxlmp ,temp 
+0x2644 005215 storet 1 ,mem_state_map 
+0x2645 005216 rtn 
+:      005217 discard_pkt_l2cap:
+0x2646 005220 fetcht 1 ,mem_state_map 
+0x2647 005221 set0 smap_rxl2cap ,temp 
+0x2648 005222 storet 1 ,mem_state_map 
+0x2649 005223 branch h4_send_acl_trigger_clear 
+:      005225 redundant_payload:
+0x264a 005226 fetch 1 ,mem_arq 
+0x264b 005227 set1 arqnx ,pdata 
+0x264c 005228 store 1 ,mem_arq 
+:      005229 end_of_packet:
+0x264d 005230 bpatch patch0c_5 ,mem_patch0c 
+0x264e 005231 disable encode_fec0 
+0x264f 005232 disable encode_fec2 
+0x2650 005233 disable decode_fec0 
+0x2651 005234 disable decode_fec2 
+0x2652 005235 disable enable_crc 
+0x2653 005236 disable encrypt 
+0x2654 005237 disable enable_white 
+0x2655 005238 branch shutdown_radio ,is_rx 
+0x2656 005239 until null ,tx_clear 
+0x2657 005240 nop 100 
+0x2658 005241 branch shutdown_radio 
+:      005243 process_fhs:
+0x2659 005244 bpatch patch0c_6 ,mem_patch0c 
+0x265a 005245 enable enable_crc 
+0x265b 005246 enable decode_fec2 
+0x265c 005247 parse demod ,bucket ,72 
+0x265d 005248 isolate1 58 ,pdata 
+0x265e 005249 setflag true ,mark_fhs_eir ,mark 
+0x265f 005250 copy bt_adr ,temp 
+0x2660 005251 ialigned bt_adr 
+0x2661 005252 ialigned fhs0 
+0x2662 005253 pulse recalc 
+0x2663 005254 setsect 2 ,0xfffff 
+0x2664 005255 setsect 3 ,0x0ffff 
+0x2665 005256 nop 32 
+0x2666 005257 iverify fhs_parity 
+0x2667 005258 deposit lap 
+0x2668 005259 store 3 ,extm_lap 
+0x2669 005260 deposit uap 
+0x266a 005261 store 1 ,extm_uap 
+0x266b 005262 copy temp ,bt_adr 
+0x266c 005263 branch fhs_parity_ok ,true 
+0x266d 005264 branch error_payload 
+:      005265 fhs_parity_ok:
+0x266e 005266 bpatch patch0c_7 ,mem_patch0c 
+0x266f 005267 parse demod ,bucket ,72 
+0x2670 005268 ialigned fhs1 
+0x2671 005269 ialigned am_addr 
+0x2672 005270 ialigned nap 
+0x2673 005271 ialigned regb 
+0x2674 005272 force 0 ,pdata 
+0x2675 005273 parse demod ,bucket ,16 
+0x2676 005274 branch error_payload ,crc_failed 
+0x2677 005275 setarg 0x0ffffffc 
+0x2678 005276 iand regb ,pdata 
+0x2679 005277 store 4 ,mem_clke_bt 
+0x267a 005278 deposit fhs_class 
+0x267b 005279 store 3 ,extm_class 
+0x267c 005280 deposit fhs_misc 
+0x267d 005281 store 1 ,extm_fhs_misc 
+0x267e 005282 deposit am_addr 
+0x267f 005283 store 1 ,extm_newconn_am_addr 
+0x2680 005284 deposit nap 
+0x2681 005285 store 2 ,extm_nap 
+0x2682 005286 deposit bt_clk 
+0x2683 005287 inject rxf ,32 
+0x2684 005288 compare type_fhs ,type ,0x0f 
+0x2685 005289 setflag true ,mark_fhs_already_good ,mark 
+0x2686 005290 branch end_of_packet 
+:      005292 clear_got_tx:
+0x2687 005293 bpatch patch0d_0 ,mem_patch0d 
+0x2688 005294 fetch 1 ,mem_arq 
+0x2689 005295 rtnbit0 wack 
+0x268a 005296 set0 wack ,pdata 
+0x268b 005297 setflip seqnx ,pdata 
+0x268c 005298 store 1 ,mem_arq 
+0x268d 005299 fetch 1 ,mem_last_type 
+0x268e 005300 beq type_lmp ,clear_got_txlmp 
+0x268f 005301 rtneq type_hv3 
+0x2690 005302 fetch 1 ,mem_op 
+0x2691 005303 rtnbit0 op_txl2cap ,pdata 
+0x2692 005304 set0 op_txl2cap ,pdata 
+0x2693 005305 set1 op_pkt_comp ,pdata 
+0x2694 005306 store 1 ,mem_op 
+0x2695 005307 set0 mark_tx_l2cap ,mark 
+0x2696 005308 fetch 2 ,mem_l2cap_tx_multi_offset 
+0x2697 005309 nrtn blank 
+0x2698 005310 fetch 1 ,mem_op 
+0x2699 005311 set0 op_pkt_comp ,pdata 
+0x269a 005312 store 1 ,mem_op 
+0x269b 005313 branch l2cap_malloc_free 
+:      005315 clear_got_txlmp:
+0x269c 005316 bpatch patch0d_1 ,mem_patch0d 
+0x269d 005317 fetch 1 ,mem_lmo_header_opcode 
+0x269e 005318 rshift pdata ,pdata 
+0x269f 005319 beq lmp_start_encryption_req ,start_encryption 
+0x26a0 005320 beq lmp_stop_encryption_req ,stop_encryption 
+0x26a1 005321 beq lmp_unsniff_req ,sniff_exit 
+0x26a2 005322 beq lmp_escape ,clear_lmp_escape 
+0x26a3 005323 rtnne lmp_accepted 
+0x26a4 005324 fetch 1 ,mem_lmo_payload 
+0x26a5 005325 beq lmp_sco_link_req ,sco_link_req_by_slave 
+0x26a6 005326 beq lmp_start_encryption_req ,clear_send_setup_complete 
+0x26a7 005327 rtn 
+:      005329 clear_lmp_escape:
+0x26a8 005330 fetch 1 ,mem_lmo_payload 
+0x26a9 005331 set1 7 ,pdata 
+0x26aa 005332 rtn 
+:      005333 clear_send_setup_complete:
+0x26ab 005334 rtn master 
+0x26ac 005335 fetch 1 ,mem_state 
+0x26ad 005336 rtnbit1 state_conn_comp 
+0x26ae 005337 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x26af 005338 rtn 
+:      005341 sco_link_req_by_slave:
+0x26b0 005342 rtn master 
+0x26b1 005343 fetch 1 ,mem_mode 
+0x26b2 005344 isolate1 send_sco_when_slave ,pdata 
+0x26b3 005345 branch clean_mem_mode ,true 
+0x26b4 005347 rtn 
+:      005348 clean_mem_mode:
+0x26b5 005349 set0 send_sco_when_slave ,pdata 
+0x26b6 005350 store 1 ,mem_mode 
+0x26b7 005351 rtn 
+:      005353 start_encryption:
+0x26b8 005354 bpatch patch0d_2 ,mem_patch0d 
+0x26b9 005355 fetch 1 ,mem_state_map 
+0x26ba 005356 set1 smap_encryption ,pdata 
+0x26bb 005357 store 1 ,mem_state_map 
+0x26bc 005358 jam 1 ,core_encrypt 
+0x26bd 005359 fetch 1 ,mem_state 
+0x26be 005360 isolate1 state_conn_comp ,pdata 
+0x26bf 005361 rtn 
+:      005363 stop_encryption:
+0x26c0 005364 bpatch patch0d_3 ,mem_patch0d 
+0x26c1 005365 fetch 1 ,mem_state_map 
+0x26c2 005366 set0 smap_encryption ,pdata 
+0x26c3 005367 store 1 ,mem_state_map 
+0x26c4 005368 jam 0 ,core_encrypt 
+0x26c5 005369 rtn 
+:      005372 sniff_init:
+0x26c6 005373 bpatch patch0d_4 ,mem_patch0d 
+0x26c7 005374 copy clkn_bt ,pdata 
+0x26c8 005375 store 4 ,mem_lpm_delay_after_sniff 
+0x26c9 005376 add clkn_bt ,3 ,rega 
+0x26ca 005377 branch sniff_init_master ,master 
+0x26cb 005378 add clke_bt ,3 ,rega 
+:      005379 sniff_init_master:
+0x26cc 005380 fetcht 2 ,mem_tsniff 
+0x26cd 005381 deposit rega 
+0x26ce 005382 set0 27 ,pdata 
+0x26cf 005383 idiv temp 
+0x26d0 005384 fetch 2 ,mem_dsniff 
+0x26d1 005385 call wait_div_end 
+0x26d2 005386 remainder regc 
+0x26d3 005387 isub regc ,pdata 
+0x26d4 005388 branch sniff_init_nowrap ,positive 
+0x26d5 005389 iadd temp ,pdata 
+:      005390 sniff_init_nowrap:
+0x26d6 005391 iadd rega ,pdata 
+0x26d7 005392 store 4 ,mem_sniff_anchor 
+0x26d8 005393 jam switch_flag_init ,mem_switch_flag 
+0x26d9 005394 fetch 1 ,mem_state 
+0x26da 005395 set1 state_insniff ,pdata 
+0x26db 005396 store 1 ,mem_state 
+0x26dc 005397 fetch 1 ,mem_sniff_attempt 
+0x26dd 005398 store 1 ,mem_current_sniff_attempt 
+0x26de 005399 setarg 0 
+0x26df 005400 store 3 ,mem_sniff_rcv 
+0x26e0 005401 store 3 ,mem_sniff_lost 
+0x26e1 005402 store 1 ,mem_sniff_unint_lost 
+0x26e2 005403 jam bt_evt_enter_sniff ,mem_fifo_temp 
+0x26e3 005404 call ui_ipc_send_event 
+0x26e4 005405 fetch 2 ,mem_rx_window_sniff 
+0x26e5 005406 store 2 ,mem_rx_window 
+0x26e6 005407 nrtn master 
+0x26e7 005408 add am_addr ,-1 ,queue 
+0x26e8 005409 rtn 
+:      005411 sniff_exit:
+0x26e9 005412 bpatch patch0d_5 ,mem_patch0d 
+0x26ea 005413 fetch 1 ,mem_state 
+0x26eb 005414 rtnbit0 state_insniff 
+0x26ec 005415 set0 state_insniff ,pdata 
+0x26ed 005416 store 1 ,mem_state 
+0x26ee 005417 fetch 2 ,mem_rx_window_init 
+0x26ef 005418 store 2 ,mem_rx_window 
+0x26f0 005419 disable wake 
+0x26f1 005420 jam bt_evt_exit_sniff ,mem_fifo_temp 
+0x26f2 005421 branch ui_ipc_send_event 
+:      005424 check_attempt:
+0x26f3 005425 bpatch patch0d_6 ,mem_patch0d 
+0x26f4 005426 enable attempt 
+0x26f5 005427 fetch 1 ,mem_state 
+0x26f6 005428 bbit1 state_insniff ,check_attempt_sniff 
+0x26f7 005429 rtnmark1 mark_testmode 
+0x26f8 005430 fetch 1 ,mem_arq 
+0x26f9 005431 rtnbit1 wack 
+0x26fa 005432 fetch 1 ,mem_lmp_to_send 
+0x26fb 005433 nrtn blank 
+0x26fc 005434 fetch 1 ,mem_op 
+0x26fd 005435 rtnbit1 op_txl2cap 
+:      005436 check_attempt_nomore:
+0x26fe 005437 force 0 ,pdata 
+0x26ff 005438 rtn 
+:      005440 check_attempt_sniff:
+0x2700 005441 bbit0 state_insco ,check_attempt_not_sco 
+0x2701 005442 fetch 1 ,mem_current_sniff_attempt 
+0x2702 005443 beq 2 ,check_attempt_sniff_restore_sco 
+0x2703 005444 fetch 1 ,mem_arq 
+0x2704 005445 bbit1 wack ,check_attempt_notimeout 
+0x2705 005446 bmark0 mark_esco_rxok ,check_attempt_notimeout 
+:      005447 check_attempt_sniff_restore_sco:
+0x2706 005448 nbranch check_attempt_notimeout ,master 
+0x2707 005449 fetch 1 ,mem_lmp_to_send 
+0x2708 005450 nbranch check_attempt_notimeout ,blank 
+:      005451 check_attempt_sco_master:
+0x2709 005452 fetch 1 ,mem_sco_poll 
+0x270a 005453 increase -1 ,pdata 
+0x270b 005454 store 1 ,mem_sco_poll 
+0x270c 005455 nbranch check_attempt_nomore ,blank 
+0x270d 005456 jam param_sco_poll ,mem_sco_poll 
+0x270e 005457 branch check_attempt_notimeout 
+:      005464 check_attempt_not_sco:
+0x270f 005465 fetch 1 ,mem_current_sniff_attempt 
+0x2710 005466 bne 1 ,check_attempt_notimeout 
+0x2711 005467 fetch 1 ,mem_current_sniff_timeout 
+0x2712 005468 branch check_attempt_notimeout ,blank 
+0x2713 005469 increase -1 ,pdata 
+0x2714 005470 store 1 ,mem_current_sniff_timeout 
+0x2715 005471 fetch 1 ,mem_arq 
+0x2716 005472 rtnbit1 wack 
+0x2717 005473 nrtn match 
+:      005474 check_attempt_notimeout:
+0x2718 005475 fetch 1 ,mem_current_sniff_attempt 
+0x2719 005476 increase -1 ,pdata 
+0x271a 005477 store 1 ,mem_current_sniff_attempt 
+0x271b 005478 rtn 
+:      005489 sniff_check_window:
+0x271c 005490 bpatch patch0d_7 ,mem_patch0d 
+0x271d 005491 disable swfine 
+0x271e 005492 copy temp ,stop_watch 
+0x271f 005493 call context_search_sniff_window 
+0x2720 005494 disable user 
+0x2721 005495 nrtn zero 
+0x2722 005496 force 0 ,stop_watch 
+0x2723 005497 enable user 
+0x2724 005498 rtn 
+:      005501 check_esco_amaddr:
+0x2725 005502 fetch 1 ,mem_esco_addr 
+0x2726 005503 icompare 0xff ,am_addr 
+0x2727 005504 rtn 
+:      005507 parse_l2cap:
+0x2728 005508 bpatch patch0e_0 ,mem_patch0e 
+0x2729 005509 set0 mark_rxbuf_inuse ,mark 
+:      005510 parse_l2cap_cont:
+0x272a 005511 jam l2cap_rx_clear ,mem_l2cap_rx_done 
+0x272b 005512 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x272c 005513 rtn blank 
+0x272d 005514 isolate1 l2cap_inuse_buff1 ,pdata 
+0x272e 005515 arg mem_l2cap_rxbuff1 ,contr 
+0x272f 005516 call process_rx_l2cap_pkt ,true 
+0x2730 005517 bpatch patch0e_1 ,mem_patch0e 
+0x2731 005518 fetch 1 ,mem_l2cap_rx_done 
+0x2732 005519 beq l2cap_rx_done ,parse_l2cap_release_buff1 
+0x2733 005521 jam l2cap_rx_clear ,mem_l2cap_rx_done 
+0x2734 005522 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x2735 005523 rtnbit0 l2cap_inuse_buff2 
+0x2736 005524 arg mem_l2cap_rxbuff2 ,contr 
+0x2737 005525 call process_rx_l2cap_pkt 
+0x2738 005526 fetch 1 ,mem_l2cap_rx_done 
+0x2739 005527 beq l2cap_rx_done ,parse_l2cap_release_buff2 
+0x273a 005528 rtn 
+:      005530 parse_l2cap_release_buff1:
+0x273b 005531 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x273c 005532 set0 l2cap_inuse_buff1 ,pdata 
+0x273d 005533 store 1 ,mem_l2cap_rxbuff_inuse 
+0x273e 005534 setarg 0 
+0x273f 005535 store 2 ,mem_l2cap_rxbuff1_len 
+0x2740 005536 rtn 
+:      005537 parse_l2cap_release_buff2:
+0x2741 005538 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x2742 005539 set0 l2cap_inuse_buff2 ,pdata 
+0x2743 005540 store 1 ,mem_l2cap_rxbuff_inuse 
+0x2744 005541 setarg 0 
+0x2745 005542 store 2 ,mem_l2cap_rxbuff2_len 
+0x2746 005543 rtn 
+:      005545 l2cap_buff1_inuse:
+0x2747 005546 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x2748 005547 set1 l2cap_inuse_buff1 ,pdata 
+0x2749 005548 store 1 ,mem_l2cap_rxbuff_inuse 
+0x274a 005549 rtn 
+:      005551 l2cap_buff2_inuse:
+0x274b 005552 fetch 1 ,mem_l2cap_rxbuff_inuse 
+0x274c 005553 set1 l2cap_inuse_buff2 ,pdata 
+0x274d 005554 store 1 ,mem_l2cap_rxbuff_inuse 
+0x274e 005555 rtn 
+:      005561 slave_send_access:
+0x274f 005562 bpatch patch0e_2 ,mem_patch0e 
+0x2750 005563 add clke_bt ,1 ,bt_clk 
+0x2751 005564 call fetch_extm_bt_adr 
+0x2752 005565 force 0x03 ,freq_mode 
+0x2753 005566 call tx_radio_freq 
+0x2754 005567 call start_transmitter 
+0x2755 005568 call start_tx_external 
+0x2756 005569 branch send_access_word 
+:      005572 slave_conn_send_packet:
+0x2757 005573 bpatch patch0e_3 ,mem_patch0e 
+0x2758 005574 call rf_setup_time_slave_slot 
+0x2759 005575 deposit clke_bt 
+0x275a 005576 fetcht 4 ,mem_next_btclk 
+0x275b 005577 isub temp ,pdata 
+0x275c 005578 rtnne 1 
+0x275d 005579 compare type_null ,type ,0x1f 
+0x275e 005580 nbranch slave_conn_send_access ,true 
+0x275f 005581 fetch 1 ,mem_rx_type 
+0x2760 005582 rtn blank 
+:      005583 slave_conn_send_access:
+0x2761 005584 call slave_send_access 
+:      005585 transmit_packet:
+0x2762 005586 compare type_id ,type ,0x1f 
+0x2763 005587 branch end_of_packet ,true 
+0x2764 005588 rshift bt_clk ,temp 
+0x2765 005589 or temp ,0x40 ,white_init 
+:      005590 transmit_packet_whitened:
+0x2766 005591 bpatch patch0e_4 ,mem_patch0e 
+0x2767 005592 enable enable_white 
+0x2768 005593 enable enable_hec 
+0x2769 005594 enable encode_fec1 
+0x276a 005595 set0 mark_longpacket ,mark 
+0x276b 005596 deposit am_addr 
+0x276c 005597 inject mod ,3 
+0x276d 005598 deposit type 
+0x276e 005599 inject mod ,4 
+0x276f 005600 fetch 1 ,mem_arq 
+0x2770 005601 inject bucket ,4 
+0x2771 005602 inject mod ,3 
+0x2772 005603 enable enable_parity 
+0x2773 005604 inject mod ,8 
+0x2774 005605 disable encode_fec1 
+0x2775 005606 disable enable_parity 
+0x2776 005607 disable enable_hec 
+0x2777 005608 set0 psk3m ,radio_ctrl 
+0x2778 005609 arg 0 ,temp 
+0x2779 005610 call reserve_slot 
+0x277a 005611 bpatch patch0e_5 ,mem_patch0e 
+0x277b 005612 and type ,0x1f ,pdata 
+0x277c 005613 beq type_lmp ,transmit_lmp 
+0x277d 005614 beq type_null ,end_of_packet 
+0x277e 005615 beq type_poll ,end_of_packet 
+0x277f 005616 beq type_fhs ,transmit_fhs 
+0x2780 005617 beq type_dm1 ,transmit_dm1 
+0x2781 005618 beq type_dh1 ,transmit_dh1 
+0x2782 005619 beq type_hv3 ,transmit_hev 
+0x2783 005620 beq type_3dh1 ,transmit_3dh1 
+0x2784 005621 arg 4 ,temp 
+0x2785 005622 call reserve_slot 
+0x2786 005623 beq type_dm3 ,transmit_dm3 
+0x2787 005624 beq type_dh3 ,transmit_dh3 
+0x2788 005625 arg 8 ,temp 
+0x2789 005626 call reserve_slot 
+0x278a 005627 beq type_dh5 ,transmit_dh5 
+0x278b 005628 branch transmit_dm5 
+:      005631 transmit_hev:
+0x278c 005632 bpatch patch0e_6 ,mem_patch0e 
+0x278d 005633 enable encode_fec0 
+0x278e 005634 enable enable_crc 
+0x278f 005635 enable encrypt 
+0x2790 005636 force 30 ,loopcnt 
+0x2791 005637 arg mem_sco_obuf ,contr 
+:      005638 transmit_ev_loop:
+0x2792 005639 ifetch 1 ,contr 
+0x2793 005640 inject mod ,8 
+0x2794 005641 loop transmit_ev_loop 
+0x2795 005642 bmark1 mark_esco ,transmit_end 
+0x2796 005643 branch end_of_packet 
+:      005645 transmit_fhs:
+0x2797 005646 bpatch patch0e_7 ,mem_patch0e 
+0x2798 005647 fetch 1 ,mem_fhs_am_addr 
+0x2799 005648 icopy am_addr 
+0x279a 005649 fetch 1 ,mem_fhs_misc 
+0x279b 005650 icopy fhs_misc 
+0x279c 005651 fetch 3 ,mem_class 
+0x279d 005652 icopy fhs_class 
+0x279e 005653 fetch 2 ,mem_nap 
+0x279f 005654 icopy nap 
+0x27a0 005655 enable enable_crc 
+0x27a1 005656 enable encode_fec2 
+0x27a2 005657 copy bt_adr ,rega 
+0x27a3 005658 call fetch_self_bt_adr 
+0x27a4 005659 pulse recalc 
+0x27a5 005660 nop 32 
+0x27a6 005661 copy bt_clk ,timeup 
+0x27a7 005662 fetch 4 ,mem_clkn_bt 
+0x27a8 005663 icopy bt_clk 
+0x27a9 005664 preload fhs0 
+0x27aa 005665 set1 58 ,pdata 
+0x27ab 005666 inject mod ,72 
+0x27ac 005667 preload fhs1 
+0x27ad 005668 inject mod ,72 
+0x27ae 005669 copy timeup ,bt_clk 
+0x27af 005670 copy rega ,bt_adr 
+0x27b0 005671 enable enable_parity 
+0x27b1 005672 inject mod ,16 
+0x27b2 005673 disable enable_parity 
+0x27b3 005674 branch end_of_packet 
+:      005676 transmit_lmp:
+0x27b4 005677 bpatch patch0f_0 ,mem_patch0f 
+0x27b5 005678 enable encrypt 
+0x27b6 005679 enable enable_crc 
+0x27b7 005680 enable encode_fec2 
+0x27b8 005681 fetch 1 ,mem_lmo_header_length 
+0x27b9 005682 and pdata ,0x1f8 ,temp 
+0x27ba 005683 arg mem_lmo_header_length ,contr 
+0x27bb 005684 increase 8 ,temp 
+:      005685 transmit_lmp_loop:
+0x27bc 005686 add temp ,-72 ,regc 
+0x27bd 005687 nbranch transmit_lmp_finish ,positive 
+0x27be 005688 ifetch 9 ,contr 
+0x27bf 005689 inject mod ,72 
+0x27c0 005690 copy regc ,temp 
+0x27c1 005691 branch transmit_lmp_loop 
+:      005692 transmit_lmp_finish:
+0x27c2 005693 ifetch 9 ,contr 
+0x27c3 005694 iinject mod ,temp 
+0x27c4 005695 branch transmit_end 
+:      005697 transmit_dm1:
+0x27c5 005698 enable encode_fec2 
+0x27c6 005699 branch transmit_dmh 
+:      005700 transmit_dm3:
+:      005701 transmit_dm5:
+0x27c7 005702 enable encode_fec2 
+0x27c8 005703 set1 mark_longpacket ,mark 
+0x27c9 005704 branch transmit_dmh 
+:      005706 transmit_3dh1:
+0x27ca 005707 set1 psk3m ,radio_ctrl 
+:      005708 transmit_dh1:
+0x27cb 005709 enable encode_fec0 
+0x27cc 005710 branch transmit_dmh 
+:      005712 transmit_dh3:
+:      005713 transmit_dh5:
+0x27cd 005714 set1 psk3m ,radio_ctrl 
+0x27ce 005715 enable encode_fec0 
+0x27cf 005716 set1 mark_longpacket ,mark 
+:      005718 transmit_dmh:
+0x27d0 005719 bpatch patch0f_1 ,mem_patch0f 
+0x27d1 005720 fetch 1 ,mem_state_map 
+0x27d2 005721 bbit0 smap_edr ,transmit_noedr 
+0x27d3 005722 sub type ,3 ,null 
+0x27d4 005723 branch transmit_noedr ,positive 
+0x27d5 005724 disable encrypt 
+0x27d6 005725 disable encode_fec2 
+0x27d7 005726 enable encode_fec0 
+0x27d8 005727 disable enable_white 
+0x27d9 005728 set1 psk ,radio_ctrl 
+0x27da 005729 isolate1 psk3m ,radio_ctrl 
+0x27db 005730 branch transmit_edr3m ,true 
+0x27dc 005731 setarg 0xabeee 
+0x27dd 005732 inject mod ,20 
+0x27de 005733 branch transmit_edr_sync_end 
+:      005734 transmit_edr3m:
+0x27df 005735 setarg 0x5faeba 
+0x27e0 005736 inject mod ,24 
+0x27e1 005737 setarg 0x12 
+0x27e2 005738 inject mod ,6 
+:      005739 transmit_edr_sync_end:
+0x27e3 005740 enable enable_white 
+0x27e4 005741 set1 mark_longpacket ,mark 
+:      005742 transmit_noedr:
+0x27e5 005743 enable encrypt 
+0x27e6 005744 enable enable_crc 
+0x27e7 005745 bmark1 mark_loopback ,transmit_loopback 
+0x27e8 005746 fetch 1 ,mem_tx_lch 
+0x27e9 005747 inject mod ,3 
+0x27ea 005748 fetch 2 ,mem_tx_len 
+0x27eb 005749 iforce loopcnt 
+0x27ec 005750 bmark1 mark_longpacket ,transmit_long 
+0x27ed 005751 inject mod ,5 
+0x27ee 005752 branch transmit_stuff 
+:      005753 transmit_long:
+0x27ef 005754 inject mod ,13 
+:      005755 transmit_stuff:
+0x27f0 005756 deposit loopcnt 
+0x27f1 005757 branch transmit_end ,blank 
+0x27f2 005758 fetch 2 ,mem_txptr 
+0x27f3 005759 iforce contr 
+:      005760 transmit_stuff_loop:
+0x27f4 005761 ifetch 1 ,contr 
+0x27f5 005762 inject mod ,8 
+0x27f6 005763 loop transmit_stuff_loop 
+:      005766 transmit_end:
+0x27f7 005767 enable enable_parity 
+0x27f8 005768 inject mod ,16 
+0x27f9 005769 disable enable_parity 
+0x27fa 005770 call set_wait_ack 
+0x27fb 005771 fetch 1 ,mem_state_map 
+0x27fc 005772 bbit0 smap_edr ,end_of_packet 
+0x27fd 005773 force 0 ,pdata 
+0x27fe 005774 inject mod ,6 
+0x27ff 005775 branch end_of_packet 
+:      005778 transmit_loopback:
+0x2800 005779 bpatch patch0f_2 ,mem_patch0f 
+0x2801 005780 bmark1 mark_longpacket ,transmit_loopback_long 
+:      005781 transmit_loopback_short:
+0x2802 005782 fetch 1 ,mem_lch_code 
+0x2803 005783 inject mod ,3 
+0x2804 005784 fetch 1 ,mem_len 
+0x2805 005785 iforce regc 
+0x2806 005786 inject mod ,5 
+0x2807 005787 branch transmit_loopback_cont 
+:      005788 transmit_loopback_long:
+0x2808 005789 fetch 1 ,mem_lch_code 
+0x2809 005790 inject mod ,3 
+0x280a 005791 fetch 2 ,mem_len 
+0x280b 005792 iforce regc 
+0x280c 005793 inject mod ,13 
+:      005794 transmit_loopback_cont:
+0x280d 005795 arg mem_rxbuf ,contr 
+:      005796 transmit_loopback_loop:
+0x280e 005797 copy regc ,null 
+0x280f 005798 branch transmit_loopback_end ,zero 
+0x2810 005799 ifetch 1 ,contr 
+0x2811 005800 inject mod ,8 
+0x2812 005801 increase -1 ,regc 
+0x2813 005802 branch transmit_loopback_loop 
+:      005803 transmit_loopback_end:
+0x2814 005804 fetch 2 ,mem_tst_pktcnt_dmh 
+0x2815 005805 increase 1 ,pdata 
+0x2816 005806 store 2 ,mem_tst_pktcnt_dmh 
+0x2817 005807 branch transmit_end 
+:      005810 apply_switch_clke:
+0x2818 005811 fetch 4 ,mem_clke_bt 
+0x2819 005812 add pdata ,7 ,rega 
+0x281a 005813 fetch 2 ,mem_slot_offset 
+0x281b 005814 nbranch apply_switch_nozero ,blank 
+0x281c 005815 increase -3 ,rega 
+0x281d 005816 branch apply_switch_wait_loop 
+:      005817 apply_switch_nozero:
+0x281e 005818 mul32 pdata ,12 ,pdata 
+0x281f 005819 hfetcht 2 ,core_halfslot 
+0x2820 005820 increase 1 ,temp 
+:      005821 apply_switch_loop:
+0x2821 005822 isub temp ,pdata 
+0x2822 005823 nbranch apply_switch_bt ,positive 
+0x2823 005824 increase -1 ,rega 
+0x2824 005825 branch apply_switch_loop 
+:      005826 apply_switch_bt:
+0x2825 005827 sub pdata ,0 ,pdata 
+:      005828 apply_switch_wait_loop:
+0x2826 005829 until null ,oneslot 
+0x2827 005830 compare 0 ,clkn_bt ,3 
+0x2828 005831 nbranch apply_switch_wait_loop ,true 
+0x2829 005832 iforce clke_rt 
+0x282a 005833 copy rega ,clke_bt 
+0x282b 005834 iforce clke_rt 
+0x282c 005835 rtn 
+:      005838 calc_slot_offset:
+0x282d 005839 bpatch patch0f_3 ,mem_patch0f 
+0x282e 005840 until null ,halfslot 
+0x282f 005841 deposit clke 
+0x2830 005842 iforce contr 
+0x2831 005843 rshift16 ,pdata ,pdata 
+0x2832 005844 isub clkn_bt ,loopcnt 
+0x2833 005845 and_into 3 ,loopcnt 
+0x2834 005846 nbranch calc_bt_portion ,zero 
+0x2835 005847 force 0 ,pdata 
+0x2836 005848 branch calc_skip_bt 
+:      005849 calc_bt_portion:
+0x2837 005850 arg 3750 ,temp 
+0x2838 005851 force 0 ,pdata 
+:      005852 calc_slot_offset_loop:
+0x2839 005853 iadd temp ,pdata 
+0x283a 005854 loop calc_slot_offset_loop 
+:      005855 calc_skip_bt:
+0x283b 005856 iadd contr ,pdata 
+0x283c 005857 div pdata ,12 
+0x283d 005858 call wait_div_end 
+0x283e 005859 quotient pdata 
+0x283f 005860 store 2 ,mem_slot_offset 
+0x2840 005861 rtn 
+:      005863 calc_clke_offset:
+0x2841 005864 bpatch patch0f_4 ,mem_patch0f 
+0x2842 005865 deposit clke 
+0x2843 005866 copy clkn ,temp 
+0x2844 005867 isub temp ,null 
+0x2845 005868 nsetflag positive ,44 ,pdata 
+0x2846 005869 isub temp ,temp 
+0x2847 005870 setarg 3750 
+0x2848 005871 isolate0 15 ,temp 
+0x2849 005872 branch calc_clke_pos ,true 
+0x284a 005873 setarg -61786 
+0x284b 005874 iadd temp ,temp 
+:      005875 calc_clke_pos:
+0x284c 005876 storet 6 ,mem_le_clk_offset 
+0x284d 005877 rtn le 
+0x284e 005878 storet 6 ,mem_clk_offset 
+0x284f 005879 rtn 
+:      005881 calc_clke:
+0x2850 005882 disable clknt 
+0x2851 005883 fetch 6 ,mem_le_clk_offset 
+0x2852 005884 branch calc_clke2 ,le 
+0x2853 005885 fetch 6 ,mem_clk_offset 
+:      005886 calc_clke2:
+0x2854 005887 iadd clkn ,alarm 
+0x2855 005888 increase 10 ,alarm 
+0x2856 005889 setarg 3750 
+0x2857 005890 isub alarm ,pdata 
+0x2858 005891 isolate0 15 ,pdata 
+0x2859 005892 branch calc_clke_pos_adj ,true 
+0x285a 005893 setarg 0xf15a 
+0x285b 005894 iadd alarm ,alarm 
+:      005895 calc_clke_pos2:
+0x285c 005896 copy alarm ,clke 
+0x285d 005897 rtn 
+:      005898 calc_clke_pos_adj:
+0x285e 005899 force 0 ,null 
+0x285f 005900 branch calc_clke_pos2 
+:      005907 calc_radio_freq:
+0x2860 005908 bpatch patch0f_5 ,mem_patch0f 
+0x2861 005909 call set_sync_on 
+0x2862 005910 copy bt_clk ,pdata 
+0x2863 005911 and_into 0x180 ,pdata 
+0x2864 005912 compare 3 ,freq_mode ,0x07 
+0x2865 005913 nbranch freq_not_connection ,true 
+0x2866 005914 rshift3 pdata ,pdata 
+0x2867 005915 iadd freq_index ,pdata 
+0x2868 005916 branch do_hop_mod_now 
+:      005917 freq_not_connection:
+0x2869 005918 copy freq_index ,pdata 
+:      005919 do_hop_mod_now:
+0x286a 005920 div pdata ,79 
+0x286b 005921 pulse recalc 
+0x286c 005922 call wait_div_end 
+0x286d 005923 remainder rega 
+0x286e 005924 add rega ,-40 ,temp 
+0x286f 005925 branch odd_half ,positive 
+0x2870 005926 lshift rega ,temp 
+0x2871 005927 branch freq_result 
+:      005928 odd_half:
+0x2872 005929 lshift temp ,temp 
+0x2873 005930 increase 1 ,temp 
+:      005931 freq_result:
+0x2874 005932 bpatch patch0f_6 ,mem_patch0f 
+0x2875 005933 fetch 1 ,mem_mode 
+0x2876 005934 bbit0 afh_change ,afh_process_con 
+:      005935 afh_process_0:
+0x2877 005936 fetch 4 ,mem_afh_instant 
+0x2878 005937 isub bt_clk ,null 
+0x2879 005938 branch afh_process_con ,positive 
+0x287a 005939 call afh_clear 
+0x287b 005940 fetch 1 ,mem_afh_new_mod 
+0x287c 005941 rtn blank 
+0x287d 005942 fetch 1 ,mem_mode 
+0x287e 005943 set1 afh_enable ,pdata 
+0x287f 005944 store 1 ,mem_mode 
+0x2880 005945 fetch 5 ,mem_afh_map_new 
+0x2881 005946 store 5 ,mem_afh_map_lo 
+0x2882 005947 ifetch 5 ,contr 
+0x2883 005948 store 5 ,mem_afh_map_hi 
+0x2884 005949 call afh_process_freq_map 
+:      005950 afh_process_con:
+0x2885 005951 fetch 1 ,mem_mode 
+0x2886 005952 rtnbit0 afh_enable 
+0x2887 005953 isolate1 1 ,bt_clk 
+0x2888 005954 branch afh_same_channel ,true 
+0x2889 005955 rshift3 temp ,rega 
+0x288a 005956 and temp ,7 ,queue 
+0x288b 005957 setarg mem_afh_map_lo 
+0x288c 005958 iadd rega ,rega 
+0x288d 005959 ifetch 1 ,rega 
+0x288e 005960 qisolate0 pdata 
+0x288f 005961 branch afh_process_1 ,true 
+0x2890 005962 deposit temp 
+0x2891 005963 branch afh_process_end 
+:      005964 afh_process_1:
+0x2892 005965 fetch 1 ,mem_afh_used 
+0x2893 005966 iforce regb 
+0x2894 005967 deposit bt_clk 
+0x2895 005968 and_into 0x180 ,pdata 
+0x2896 005969 rshift3 pdata ,pdata 
+0x2897 005970 iadd freq_index ,pdata 
+0x2898 005971 idiv regb 
+0x2899 005972 setarg mem_afh_map 
+0x289a 005973 call wait_div_end 
+0x289b 005974 remainder rega 
+0x289c 005975 iadd rega ,contr 
+0x289d 005976 ifetch 1 ,contr 
+:      005977 afh_process_end:
+0x289e 005978 store 1 ,mem_afh_index 
+0x289f 005979 iforce temp 
+0x28a0 005980 rtn 
+:      005982 afh_same_channel:
+0x28a1 005983 fetch 1 ,mem_afh_index 
+0x28a2 005984 iforce temp 
+0x28a3 005985 rtn 
+:      005987 afh_clear:
+0x28a4 005988 fetch 1 ,mem_mode 
+0x28a5 005989 set0 afh_enable ,pdata 
+0x28a6 005990 set0 afh_change ,pdata 
+0x28a7 005991 store 1 ,mem_mode 
+0x28a8 005992 rtn 
+:      005998 afh_process_freq_map:
+0x28a9 005999 bpatch patch0f_7 ,mem_patch0f 
+0x28aa 006000 arg mem_afh_map ,contw 
+0x28ab 006001 force 10 ,loopcnt 
+0x28ac 006002 call memset0 
+0x28ad 006003 arg mem_afh_map ,contw 
+0x28ae 006004 force 0 ,regc 
+0x28af 006005 force 2 ,queue 
+:      006006 process_freq_3:
+0x28b0 006007 fetch 5 ,mem_afh_map_lo 
+0x28b1 006008 iforce temp 
+0x28b2 006009 compare 2 ,queue ,0xff 
+0x28b3 006010 branch process_freq_1 ,true 
+0x28b4 006011 rshift temp ,temp 
+:      006012 process_freq_1:
+0x28b5 006013 isolate0 0 ,temp 
+0x28b6 006014 branch process_freq_0 ,true 
+0x28b7 006015 deposit regc 
+0x28b8 006016 istore 1 ,contw 
+:      006017 process_freq_0:
+0x28b9 006018 rshift2 temp ,temp 
+0x28ba 006019 increase 2 ,regc 
+0x28bb 006020 compare 40 ,regc ,0xfe 
+0x28bc 006021 nbranch process_freq_2 ,true 
+0x28bd 006022 fetch 5 ,mem_afh_map_hi 
+0x28be 006023 iforce temp 
+0x28bf 006024 compare 2 ,queue ,0xff 
+0x28c0 006025 branch process_freq_2 ,true 
+0x28c1 006026 rshift temp ,temp 
+:      006027 process_freq_2:
+0x28c2 006028 sub regc ,78 ,null 
+0x28c3 006029 branch process_freq_1 ,positive 
+0x28c4 006030 force 1 ,regc 
+0x28c5 006031 increase -1 ,queue 
+0x28c6 006032 nbranch process_freq_3 ,zero 
+0x28c7 006033 arg mem_afh_map ,rega 
+0x28c8 006034 deposit contw 
+0x28c9 006035 isub rega ,pdata 
+0x28ca 006036 store 1 ,mem_afh_used 
+0x28cb 006037 rtn 
+:      006039 rx_radio_freq:
+0x28cc 006040 bpatch patch10_0 ,mem_patch10 
+0x28cd 006041 call calc_radio_freq 
+0x28ce 006042 fetch 1 ,mem_debug_config 
+0x28cf 006043 bbit0 debug_rx_fixed_freq ,rx_radio_freq_now 
+0x28d0 006044 fetcht 1 ,mem_rx_fixed_freq 
+:      006045 rx_radio_freq_now:
+0x28d1 006046 branch set_freq_rx 
+:      006049 tx_radio_freq:
+0x28d2 006050 bpatch patch10_1 ,mem_patch10 
+0x28d3 006051 call calc_radio_freq 
+0x28d4 006052 fetch 1 ,mem_debug_config 
+0x28d5 006053 bbit0 debug_tx_fixed_freq ,tx_radio_freq_now 
+0x28d6 006054 fetcht 1 ,mem_tx_fixed_freq 
+:      006055 tx_radio_freq_now:
+0x28d7 006056 branch set_freq_tx 
+:      006059 fetch_giac:
+0x28d8 006060 force 0 ,uap 
+0x28d9 006061 fetch 3 ,mem_glap 
+0x28da 006062 iforce lap 
+0x28db 006063 rtn 
+:      006065 fetch_page_bt_adr:
+0x28dc 006066 bpatch patch10_2 ,mem_patch10 
+0x28dd 006067 fetch 1 ,mem_hci_puap 
+0x28de 006068 icopy uap 
+0x28df 006069 fetch 3 ,mem_hci_plap 
+0x28e0 006070 icopy lap 
+0x28e1 006071 rtn 
+:      006073 fetch_self_bt_adr:
+0x28e2 006074 bpatch patch10_3 ,mem_patch10 
+0x28e3 006075 fetch 2 ,mem_nap 
+0x28e4 006076 icopy nap 
+0x28e5 006077 fetch 1 ,mem_uap 
+0x28e6 006078 icopy uap 
+0x28e7 006079 fetch 3 ,mem_lap 
+0x28e8 006080 icopy lap 
+0x28e9 006081 rtn 
+:      006083 fetch_extm_bt_adr:
+0x28ea 006084 bpatch patch10_4 ,mem_patch10 
+0x28eb 006085 fetch 2 ,mem_pnap 
+0x28ec 006086 icopy nap 
+0x28ed 006087 fetch 1 ,mem_puap 
+0x28ee 006088 icopy uap 
+0x28ef 006089 fetch 3 ,mem_plap 
+0x28f0 006090 icopy lap 
+0x28f1 006091 rtn 
+:      006094 fetch_diac:
+0x28f2 006095 bmark1 mark_all_diac ,fetch_diac_do 
+0x28f3 006096 rtnmark0 mark_inquiry_state 
+0x28f4 006097 rtnmark0 mark_periodical_diac 
+:      006098 fetch_diac_do:
+0x28f5 006099 and_into -256 ,lap 
+0x28f6 006100 pulse recalc 
+0x28f7 006101 nop 32 
+0x28f8 006102 rtn 
+:      006105 shutdown_radio:
+0x28f9 006106 bpatch patch10_5 ,mem_patch10 
+0x28fa 006107 branch shutdown_radio0 ,is_rx 
+0x28fb 006108 jam 0xd4 ,rf_tx_pa_ib 
+0x28fc 006109 nop 4 
+0x28fd 006110 jam 0xd2 ,rf_tx_pa_ib 
+0x28fe 006111 nop 4 
+0x28ff 006112 jam 0xd1 ,rf_tx_pa_ib 
+0x2900 006113 nop 4 
+0x2901 006114 fetch 1 ,mem_tx_power 
+0x2902 006115 beq tx_power_0db ,shutdown_radio_0db 
+0x2903 006116 beq tx_power_3db ,shutdown_radio_3db 
+0x2904 006117 beq tx_power_5db ,shutdown_radio_5db 
+0x2905 006118 beq tx_power_f3db ,shutdown_radio_f3db 
+0x2906 006119 beq tx_power_f5db ,shutdown_radio_f5db 
+0x2907 006120 beq tx_power_pair ,shutdown_radio_pair 
+:      006121 shutdown_radio_5db:
+:      006122 shutdown_radio_0db:
+0x2908 006123 jam 0xd0 ,rf_tx_pa_ib 
+0x2909 006124 jam 0xe0 ,rf_tx_pa_gc 
+:      006125 shutdown_radio0:
+0x290a 006126 force 0 ,radio_ctrl 
+0x290b 006127 disable is_rx 
+0x290c 006128 disable is_tx 
+0x290d 006129 pulse packet_end 
+0x290e 006130 jam 0x0 ,rfen_mdm 
+0x290f 006131 jam 0x0 ,rfen_tx 
+0x2910 006132 jam 0x0 ,rfen_rx 
+0x2911 006133 jam 0 ,rfen_sn 
+0x2912 006134 jam 0x70 ,rfen_msc 
+0x2913 006135 jam 0x0 ,rfen_adc 
+0x2914 006136 rtn 
+:      006138 shutdown_radio_pair:
+:      006139 shutdown_radio_f5db:
+:      006140 shutdown_radio_f3db:
+:      006141 shutdown_radio_3db:
+0x2915 006142 jam 0xd0 ,rf_tx_pa_ib 
+0x2916 006143 jam 0xc0 ,rf_tx_pa_gc 
+0x2917 006144 branch shutdown_radio0 
+:      006146 set_sync_on:
+0x2918 006147 bpatch patch10_6 ,mem_patch10 
+0x2919 006148 jam 0x0 ,rfen_mdm 
+0x291a 006149 jam 0x0 ,rfen_tx 
+0x291b 006150 jam 0x18 ,rfen_rx 
+0x291c 006151 jam 0xa7 ,rfen_sn 
+0x291d 006152 jam 0x7f ,rfen_msc 
+0x291e 006153 rtn 
+:      006155 set_freq_rx:
+0x291f 006156 bpatch patch10_7 ,mem_patch10 
+0x2920 006158 storet 1 ,mem_last_freq 
+0x2921 006159 add temp ,rx_freq_offset ,rega 
+0x2922 006160 jam 0x07 ,rf_balun_ctrim 
+0x2923 006161 branch rf_write_freq 
+:      006162 rf_rx_enable:
+0x2924 006163 bpatch patch11_0 ,mem_patch11 
+0x2925 006164 jam 0xcf ,rfen_tx 
+0x2926 006165 nop 10 
+0x2927 006166 jam 0xff ,rfen_rx 
+0x2928 006167 jam 0xaf ,rfen_sn 
+0x2929 006168 jam 0xff ,rfen_msc 
+0x292a 006169 nop 10 
+0x292b 006170 jam 0xa0 ,rfen_mdm 
+0x292c 006171 rtn 
+:      006173 set_freq_tx_offset:
+0x292d 006174 fetch 1 ,mem_250k_freq_enable 
+0x292e 006175 branch set_freq_tx_2m_offset ,blank 
+:      006176 set_freq_tx_0m_offset:
+0x292f 006177 add temp ,2 ,rega 
+0x2930 006178 rtn 
+:      006179 set_freq_tx_2m_offset:
+0x2931 006180 add temp ,0 ,rega 
+0x2932 006181 rtn 
+:      006183 set_freq_tx:
+0x2933 006184 bpatch patch11_1 ,mem_patch11 
+0x2934 006185 storet 1 ,mem_last_freq 
+0x2935 006186 call set_freq_tx_offset 
+0x2936 006187 call rf_write_freq 
+0x2937 006188 setarg param_pll_setup 
+0x2938 006189 call sleep 
+:      006190 txon:
+0x2939 006191 jam 0x1 ,rfen_adc 
+0x293a 006192 jam 0x3c ,rfen_rx 
+0x293b 006193 jam 0xe0 ,rfen_tx 
+0x293c 006194 jam 0x12 ,rf_balun_ctrim 
+0x293d 006195 nop 10 
+0x293e 006196 jam 0x01 ,rfen_mdm 
+0x293f 006197 jam 0x3d ,rfen_mdm 
+0x2940 006198 nop 10 
+0x2941 006199 jam 0xb7 ,rfen_sn 
+0x2942 006200 nop 10 
+0x2943 006201 jam 0x7f ,rfen_mdm 
+:      006202 txon_power_select:
+0x2944 006203 fetch 1 ,mem_tx_power 
+0x2945 006204 beq tx_power_0db ,set_tx_power_0db 
+0x2946 006205 beq tx_power_3db ,set_tx_power_3db 
+0x2947 006206 beq tx_power_5db ,set_tx_power_5db 
+0x2948 006207 beq tx_power_f3db ,set_tx_power_f3db 
+0x2949 006208 beq tx_power_f5db ,set_tx_power_f5db 
+0x294a 006209 beq tx_power_pair ,set_tx_power_pair 
+:      006210 set_tx_power_0db:
+0x294b 006211 jam 0xf0 ,rf_tx_pa_gc 
+0x294c 006212 call txon_common 
+0x294d 006213 jam 0xd8 ,rf_tx_pa_ib 
+0x294e 006214 rtn 
+:      006216 set_tx_power_3db:
+0x294f 006217 jam 0xdf ,rf_tx_pa_gc 
+0x2950 006218 call txon_common 
+0x2951 006219 jam 0xdf ,rf_tx_pa_ib 
+0x2952 006220 rtn 
+:      006222 set_tx_power_5db:
+0x2953 006223 jam 0xff ,rf_tx_pa_gc 
+0x2954 006224 call txon_common 
+0x2955 006225 jam 0xdf ,rf_tx_pa_ib 
+0x2956 006226 rtn 
+:      006227 set_tx_power_f3db:
+0x2957 006228 jam 0xce ,rf_tx_pa_gc 
+0x2958 006229 call txon_common 
+0x2959 006230 jam 0xd8 ,rf_tx_pa_ib 
+0x295a 006231 rtn 
+:      006233 set_tx_power_f5db:
+0x295b 006234 jam 0xcb ,rf_tx_pa_gc 
+0x295c 006235 call txon_common 
+0x295d 006236 jam 0xd8 ,rf_tx_pa_ib 
+0x295e 006237 rtn 
+:      006239 set_tx_power_pair:
+0x295f 006240 jam 0xd0 ,rf_tx_pa_ib 
+0x2960 006241 jam 0xc0 ,rf_tx_pa_gc 
+0x2961 006242 jam 0x4c ,0x8957 
+0x2962 006243 jam 0x6c ,0x8958 
+0x2963 006244 jam 0x50 ,0x8959 
+0x2964 006245 rtn 
+:      006247 txon_common:
+0x2965 006248 nop 4 
+0x2966 006249 jam 0xd1 ,rf_tx_pa_ib 
+0x2967 006250 nop 4 
+0x2968 006251 jam 0xd2 ,rf_tx_pa_ib 
+0x2969 006252 nop 4 
+0x296a 006253 jam 0xd4 ,rf_tx_pa_ib 
+0x296b 006254 rtn 
+:      006257 initialize_radio:
+0x296c 006258 jam clksel_rc ,core_clksel 
+:      006259 initialize_radio_wait:
+0x296d 006260 fetch 2 ,mem_rf_init_ptr 
+0x296e 006261 bbit0 14 ,initialize_radio_wait 
+0x296f 006262 iforce contr 
+0x2970 006263 arg 0x8900 ,temp 
+:      006264 initialize_radio_loop:
+0x2971 006265 ifetch 1 ,contr 
+0x2972 006266 beq 0xff ,initialize_radio_cont 
+0x2973 006267 ior temp ,contw 
+0x2974 006268 ifetch 1 ,contr 
+0x2975 006269 istore 1 ,contw 
+0x2976 006270 branch initialize_radio_loop 
+:      006271 initialize_radio_cont:
+0x2977 006272 bpatch patch11_2 ,mem_patch11 
+0x2978 006273 call lpm_cal_xtal_startup 
+0x2979 006274 call switchto_dpllclk 
+0x297a 006276 setarg param_dpll_start_delay 
+0x297b 006277 iadd clkn_bt ,pdata 
+0x297c 006278 store 4 ,mem_dpll_clkn 
+0x297d 006279 set1 reset ,radio_ctrl 
+0x297e 006280 force 0 ,radio_ctrl 
+0x297f 006281 ncall do_rccal ,wake 
+0x2980 006282 branch set_rccal 
+:      006285 rf_write_freq:
+0x2981 006286 bpatch patch11_3 ,mem_patch11 
+0x2982 006287 setarg 2400 
+0x2983 006288 iadd rega ,temp 
+0x2984 006289 fetch 1 ,mem_fcomp_mul 
+0x2985 006290 jam 0x04 ,rf_pll_rstn 
+0x2986 006291 imul32 temp ,pdata 
+0x2987 006292 fetcht 1 ,mem_fcomp_div 
+0x2988 006293 idiv temp 
+0x2989 006294 call wait_div_end 
+0x298a 006295 quotient rega 
+0x298b 006296 remainder pdata 
+0x298c 006297 lshift16 pdata ,pdata 
+0x298d 006298 lshift4 pdata ,pdata 
+0x298e 006299 idiv temp 
+0x298f 006300 call wait_div_end 
+0x2990 006301 quotient pdata 
+0x2991 006302 lshift8 pdata ,pdata 
+0x2992 006303 lshift pdata ,pdata 
+0x2993 006304 ior rega ,pdata 
+0x2994 006305 hstore 4 ,rf_pll_intg 
+0x2995 006306 jam 0x44 ,rf_pll_rstn 
+0x2996 006307 jam 0xc4 ,rf_pll_rstn 
+0x2997 006308 rtn 
+:      006311 do_rccal:
+0x2998 006312 bpatch patch11_4 ,mem_patch11 
+0x2999 006313 jam 0x02 ,rfen_adc 
+0x299a 006314 setarg 250000 
+0x299b 006315 call sleep 
+0x299c 006316 jam 0x7f ,rfen_rx 
+0x299d 006317 nop 130 
+0x299e 006318 jam 0x30 ,rf_rccal_ctrl 
+0x299f 006319 jam 0xd0 ,rfen_tx 
+0x29a0 006320 jam 0x70 ,rf_rccal_ctrl 
+0x29a1 006321 jam 0xf0 ,rf_rccal_ctrl 
+0x29a2 006322 force 50 ,loopcnt 
+:      006323 do_rccal_loop:
+0x29a3 006324 hfetch 1 ,rf_rccal_result 
+0x29a4 006325 bbit1 5 ,do_rccal_end 
+0x29a5 006326 loop do_rccal_loop 
+:      006327 do_rccal_end:
+0x29a6 006328 store 1 ,mem_rf_rccal 
+0x29a7 006329 jam 0 ,rfen_tx 
+0x29a8 006330 jam 0 ,rfen_rx 
+0x29a9 006331 jam 0x00 ,rfen_adc 
+0x29aa 006332 rtn 
+:      006334 set_rccal:
+0x29ab 006335 bpatch patch11_5 ,mem_patch11 
+0x29ac 006336 fetch 1 ,mem_rf_rccal 
+0x29ad 006337 set1 5 ,pdata 
+0x29ae 006338 hstore 1 ,rf_rccal_ctrl 
+0x29af 006339 hfetcht 1 ,rf_bpf_ctrim 
+0x29b0 006340 and_into 7 ,temp 
+0x29b1 006341 lshift3 pdata ,pdata 
+0x29b2 006342 ior temp ,pdata 
+0x29b3 006343 hstore 1 ,rf_bpf_ctrim 
+0x29b4 006344 hfetch 1 ,rf_bpf_ib 
+0x29b5 006345 set0 bpf_rccal ,pdata 
+0x29b6 006346 hstore 1 ,rf_bpf_ib 
+0x29b7 006347 hfetch 1 ,rf_adc_rccal 
+0x29b8 006348 set0 adc_rccal ,pdata 
+0x29b9 006349 hstore 1 ,rf_adc_rccal 
+0x29ba 006350 rtn 
+:      006352 save_rssi:
+0x29bb 006353 bpatch patch11_6 ,mem_patch11 
+0x29bc 006354 hfetch 2 ,rf_afc_d2a 
+0x29bd 006355 rshift4 pdata ,pdata 
+0x29be 006356 rshift3 pdata ,pdata 
+0x29bf 006357 sub pdata ,0 ,pdata 
+:      006358 bcd:
+0x29c0 006359 and_into 0xff ,pdata 
+0x29c1 006360 div pdata ,10 
+0x29c2 006361 call wait_div_end 
+0x29c3 006362 quotient pdata 
+0x29c4 006363 lshift4 pdata ,pdata 
+0x29c5 006364 remainder temp 
+0x29c6 006365 ior temp ,pdata 
+0x29c7 006366 store 1 ,mem_rssi 
+0x29c8 006367 rtn 
+:      006370 switchto_dpllclk:
+0x29c9 006371 jam clksel_rc ,core_clksel 
+0x29ca 006372 hfetch 1 ,rf_clkpll_frac + 2 
+0x29cb 006373 set0 4 ,pdata 
+0x29cc 006374 set0 5 ,pdata 
+0x29cd 006375 hstore 1 ,rf_clkpll_frac + 2 
+0x29ce 006376 jam 0x00 ,rfen_ck 
+0x29cf 006377 jam 0x00 ,rfen_msc 
+0x29d0 006378 jam 0x70 ,rfen_msc 
+0x29d1 006379 jam 0xff ,rfen_ck 
+0x29d2 006380 hfetch 1 ,rf_clkpll_frac + 2 
+0x29d3 006381 set1 4 ,pdata 
+0x29d4 006382 set1 5 ,pdata 
+0x29d5 006383 hstore 1 ,rf_clkpll_frac + 2 
+0x29d6 006384 call init_lpm_ctrl 
+0x29d7 006385 hfetch 1 ,rf_clkpll_int 
+0x29d8 006386 set1 7 ,pdata 
+0x29d9 006387 hstore 1 ,rf_clkpll_int 
+0x29da 006388 set0 7 ,pdata 
+0x29db 006389 hstore 1 ,rf_clkpll_int 
+0x29dc 006390 set1 7 ,pdata 
+0x29dd 006391 hstore 1 ,rf_clkpll_int 
+0x29de 006392 jam clksel_dpll ,core_clksel 
+0x29df 006393 nop 1 
+0x29e0 006394 jam clksel_xtal ,core_clksel 
+0x29e1 006395 hfetch 1 ,rf_clkpll_frac + 2 
+0x29e2 006396 and_into 0xcf ,pdata 
+0x29e3 006397 hstore 1 ,rf_clkpll_frac + 2 
+0x29e4 006398 or_into 0x30 ,pdata 
+0x29e5 006399 hstore 1 ,rf_clkpll_frac + 2 
+0x29e6 006400 rtn 
+:      006403 xtal_fast_wake:
+0x29e7 006404 setarg 0xf0f 
+0x29e8 006405 branch lpm_write_config 
+:      006407 init_lpm_ctrl:
+0x29e9 006408 setarg 0x80f 
+0x29ea 006409 branch lpm_write_config 
+:      006413 start_receiver:
+0x29eb 006414 bpatch patch11_7 ,mem_patch11 
+0x29ec 006415 call rf_rx_enable 
+0x29ed 006416 disable is_tx 
+0x29ee 006417 enable is_rx 
+0x29ef 006418 pulse init_encrypt 
+0x29f0 006419 rtn 
+:      006421 prep_crypt:
+0x29f1 006422 bpatch patch12_0 ,mem_patch12 
+0x29f2 006423 fetch 1 ,mem_state_map 
+0x29f3 006424 isolate1 smap_encryption ,pdata 
+0x29f4 006425 setflag true ,0 ,pdata 
+0x29f5 006426 hstore 1 ,core_encrypt 
+0x29f6 006427 arg mem_kc ,contr 
+0x29f7 006428 ifetch 9 ,contr 
+0x29f8 006429 iforce kc_ls 
+0x29f9 006430 ifetch 7 ,contr 
+0x29fa 006431 iforce kc_ms 
+0x29fb 006432 fetch 1 ,mem_key_size 
+0x29fc 006433 add pdata ,-1 ,g1l 
+0x29fd 006434 pulse kc_p_activate 
+0x29fe 006435 rtn 
+:      006437 wait_access_end:
+0x29ff 006438 deposit clke 
+0x2a00 006439 store 6 ,mem_sync_clke 
+0x2a01 006440 disable decode_fec0 
+0x2a02 006441 nbranch shutdown_radio ,sync 
+0x2a03 006442 arg param_clke_cal ,clke_rt 
+0x2a04 006443 increase 1 ,clke_bt 
+0x2a05 006444 and_into 0x1fc ,clke_bt 
+0x2a06 006445 rtn 
+:      006449 wait_access_mhalfbnd:
+0x2a07 006450 enable decode_fec0 
+:      006451 wait_access_mhalfbnd_correlate:
+0x2a08 006452 correlate null ,mhalfbnd 
+0x2a09 006453 branch wait_access_end ,sync 
+0x2a0a 006454 compare 0x02 ,clke_bt ,0x02 
+0x2a0b 006455 nbranch wait_access_mhalfbnd_correlate ,true 
+0x2a0c 006456 branch wait_access_end 
+:      006458 wait_access_clkn_rt:
+0x2a0d 006459 bpatch patch12_1 ,mem_patch12 
+0x2a0e 006460 arg param_conn_access ,timeup 
+0x2a0f 006461 enable decode_fec0 
+0x2a10 006462 correlate clkn_rt ,meet 
+0x2a11 006463 disable decode_fec0 
+0x2a12 006464 nbranch shutdown_radio ,sync 
+0x2a13 006465 rtn 
+:      006467 wait_access_forever:
+0x2a14 006468 bpatch patch12_2 ,mem_patch12 
+0x2a15 006469 enable decode_fec0 
+0x2a16 006470 correlate null ,timeout 
+0x2a17 006471 disable decode_fec0 
+0x2a18 006472 nbranch shutdown_radio ,sync 
+0x2a19 006473 arg param_clke_cal ,clke_rt 
+0x2a1a 006474 and_into 0x1fc ,clke_bt 
+0x2a1b 006475 rtn 
+:      006478 reserve_slot:
+0x2a1c 006479 bpatch patch12_3 ,mem_patch12 
+0x2a1d 006480 iforce rega 
+0x2a1e 006481 deposit bt_clk 
+0x2a1f 006482 iadd temp ,timeup 
+0x2a20 006483 copy timeup ,pdata 
+0x2a21 006484 store 4 ,mem_next_btclk 
+0x2a22 006485 deposit rega 
+0x2a23 006486 rtn 
+:      006489 ahead_window:
+0x2a24 006490 copy pdata ,temp 
+0x2a25 006491 bpatch patch12_4 ,mem_patch12 
+0x2a26 006492 copy temp ,pdata 
+0x2a27 006493 call clk2bt 
+0x2a28 006494 lshift16 bt_clk ,pdata 
+0x2a29 006495 set1 44 ,pdata 
+0x2a2a 006496 call clk_diff 
+0x2a2b 006497 set0 44 ,pdata 
+0x2a2c 006498 call get_clk 
+0x2a2d 006499 call clk_diff 
+0x2a2e 006500 rtn user 
+0x2a2f 006501 call clk2rt 
+0x2a30 006502 iforce stop_watch 
+0x2a31 006503 until null ,timeout 
+0x2a32 006504 rtn 
+:      006507 setup_clk:
+0x2a33 006508 bpatch patch12_5 ,mem_patch12 
+0x2a34 006509 branch setup_clkn ,clknt 
+0x2a35 006510 until clke_rt ,meet 
+:      006511 skip_setup_clke:
+0x2a36 006512 copy clke_bt ,temp 
+0x2a37 006513 branch setup_clknbt 
+:      006514 setup_clkn:
+0x2a38 006515 branch skip_setup_clkn ,attempt 
+0x2a39 006516 until clkn_rt ,meet 
+:      006517 skip_setup_clkn:
+0x2a3a 006518 copy clkn_bt ,temp 
+:      006519 setup_clknbt:
+0x2a3b 006520 branch setup_clk11 ,user 
+0x2a3c 006521 compare 1 ,temp ,3 
+0x2a3d 006522 nbranch setup_clk ,true 
+:      006523 setup_complete:
+0x2a3e 006524 bpatch patch12_6 ,mem_patch12 
+0x2a3f 006525 fetch 1 ,mem_state 
+0x2a40 006526 rtnbit0 state_inconn 
+0x2a41 006527 fetch 4 ,mem_next_btclk 
+0x2a42 006528 isub temp ,pdata 
+0x2a43 006529 nrtn positive 
+0x2a44 006530 sub pdata ,0xff ,null 
+0x2a45 006531 branch setup_clk ,positive 
+0x2a46 006532 rtn 
+:      006533 setup_clk11:
+0x2a47 006534 compare 3 ,temp ,3 
+0x2a48 006535 nbranch setup_clk ,true 
+0x2a49 006536 branch setup_complete 
+:      006538 rf_setup_time:
+0x2a4a 006539 bpatch patch12_7 ,mem_patch12 
+0x2a4b 006540 arg param_rf_setup ,timeup 
+0x2a4c 006541 branch setup_clk 
+:      006543 rf_setup_time_slave_slot:
+0x2a4d 006544 disable user 
+0x2a4e 006545 branch rf_setup_time 
+:      006547 rf_setup_time_master_slot:
+0x2a4f 006548 enable user 
+0x2a50 006549 branch rf_setup_time 
+:      006551 start_transmitter:
+0x2a51 006552 bpatch patch13_0 ,mem_patch13 
+0x2a52 006553 call prep_crypt 
+0x2a53 006554 disable is_rx 
+0x2a54 006555 enable is_tx 
+0x2a55 006556 rtn 
+:      006560 start_tx_native:
+0x2a56 006561 bpatch patch13_1 ,mem_patch13 
+0x2a57 006562 arg param_tx_setup ,timeup 
+0x2a58 006563 until clkn_rt ,meet 
+0x2a59 006564 pulse init_encrypt 
+0x2a5a 006565 rtn 
+:      006567 start_rx_native:
+0x2a5b 006568 bpatch patch13_2 ,mem_patch13 
+0x2a5c 006569 arg param_rx_setup ,timeup 
+0x2a5d 006570 until clkn_rt ,meet 
+0x2a5e 006571 rtn 
+:      006574 start_tx_external:
+0x2a5f 006575 bpatch patch13_3 ,mem_patch13 
+0x2a60 006576 arg param_tx_setup ,timeup 
+0x2a61 006577 until clke_rt ,meet 
+0x2a62 006578 pulse init_encrypt 
+0x2a63 006579 rtn 
+:      006581 send_access_word:
+0x2a64 006582 bpatch patch13_4 ,mem_patch13 
+0x2a65 006583 preload access 
+0x2a66 006584 enable encode_fec0 
+0x2a67 006585 set1 txgfsk ,radio_ctrl 
+0x2a68 006586 inject mod ,72 
+0x2a69 006587 disable encode_fec0 
+0x2a6a 006588 rtn 
+:      006591 scan_mode_whiten:
+0x2a6b 006592 copy xin ,temp 
+0x2a6c 006593 or_into 0x60 ,temp 
+0x2a6d 006594 copy temp ,white_init 
+0x2a6e 006595 rtn 
+:      006600 get_free_amaddr:
+0x2a6f 006601 bpatch patch13_5 ,mem_patch13 
+0x2a70 006602 fetch 1 ,mem_current_amaddr 
+0x2a71 006603 increase 1 ,pdata 
+0x2a72 006604 bne param_esco_addr ,get_free_amaddr_cont 
+0x2a73 006605 force 1 ,pdata 
+:      006606 get_free_amaddr_cont:
+0x2a74 006607 store 1 ,mem_current_amaddr 
+0x2a75 006608 iforce am_addr 
+0x2a76 006609 rtn 
+:      006611 get_clk:
+0x2a77 006612 copy clkn ,temp 
+0x2a78 006613 rtn master 
+0x2a79 006614 copy clke ,temp 
+0x2a7a 006615 rtn 
+:      006617 get_clkbt:
+0x2a7b 006618 deposit clkn_bt 
+0x2a7c 006619 rtn master 
+0x2a7d 006620 deposit clke_bt 
+0x2a7e 006621 rtn 
+:      006624 supervision_update:
+0x2a7f 006625 bpatch patch13_6 ,mem_patch13 
+0x2a80 006626 fetcht 4 ,mem_supervision_timer 
+0x2a81 006627 call get_clkbt 
+0x2a82 006628 isub temp ,timeup 
+0x2a83 006629 deposit timeup 
+0x2a84 006630 fetcht 2 ,mem_supervision_to 
+0x2a85 006631 lshift temp ,temp 
+0x2a86 006632 isub temp ,pdata 
+0x2a87 006633 rtn 
+:      006635 supervision_flush:
+0x2a88 006636 bpatch patch13_7 ,mem_patch13 
+0x2a89 006637 call get_clkbt 
+0x2a8a 006638 store 4 ,mem_supervision_timer 
+0x2a8b 006639 rtn 
+:      006641 assert:
+0x2a8c 006642 bpatch patch14_0 ,mem_patch14 
+0x2a8d 006643 branch assert 
+:      006645 loop:
+0x2a8e 006646 branch loop 
+:      006648 sleep:
+0x2a8f 006649 rtn blank 
+0x2a90 006651 rshift pdata ,pdata 
+0x2a91 006652 increase -3 ,pdata 
+:      006653 sleep_loop:
+0x2a92 006654 increase -1 ,pdata 
+0x2a93 006655 nbranch sleep_loop ,zero 
+0x2a94 006656 force 0 ,pdata 
+0x2a95 006657 rtn 
+:      006661 init_param:
+0x2a96 006663 arg 0x10 ,loopcnt 
+0x2a97 006664 arg 0 ,contw 
+0x2a98 006665 call memset0 
+0x2a99 006666 arg mem_le_state ,contw 
+0x2a9a 006667 arg 10 ,loopcnt 
+0x2a9b 006668 call memset0 
+0x2a9c 006669 jam 0 ,mem_sp_calc 
+0x2a9d 006670 jam 0 ,mem_fifo_temp 
+0x2a9e 006671 jam 0 ,mem_le_testtype 
+0x2a9f 006672 jam 0 ,mem_debug_config 
+0x2aa0 006673 jam 0 ,mem_lmp_conn_state 
+0x2aa1 006674 bpatch patch14_1 ,mem_patch14 
+0x2aa2 006675 jam 0 ,mem_connection_options 
+0x2aa3 006676 jam 0 ,mem_tester_emulate 
+0x2aa4 006677 jam 0 ,mem_tester_cnt 
+0x2aa5 006678 setarg param_glap 
+0x2aa6 006679 store 3 ,mem_glap 
+0x2aa7 006680 setarg param_acl_pktlen 
+0x2aa8 006681 store 2 ,mem_acl_pktlen 
+0x2aa9 006682 jam param_sco_pktlen ,mem_sco_pktlen 
+0x2aaa 006683 jam param_acl_pktcnt ,mem_acl_pktcnt 
+0x2aab 006684 jam param_sco_pktcnt ,mem_sco_pktcnt 
+0x2aac 006685 setarg param_hci_version 
+0x2aad 006686 store 3 ,mem_hci_version 
+0x2aae 006691 jam 0x60 ,mem_fhs_misc 
+0x2aaf 006692 jam param_max_slot ,mem_max_slot 
+0x2ab0 006693 jam 0x02 ,mem_fw_ver 
+0x2ab1 006694 fetch 1 ,mem_ssp_enable 
+0x2ab2 006695 ncall init_memp ,blank 
+0x2ab3 006696 fetch 1 ,mem_le_secure_connect_enable 
+0x2ab4 006697 ncall init_memp_256 ,blank 
+0x2ab5 006698 bpatch patch14_2 ,mem_patch14 
+0x2ab6 006699 rtn wake 
+0x2ab7 006700 setarg 0 
+0x2ab8 006701 store 2 ,mem_tx_len 
+0x2ab9 006702 rshift clkn_bt ,pdata 
+0x2aba 006703 store 4 ,mem_last_clkn 
+0x2abb 006704 rtn 
+:      006711 lpmstate:
+0x2abc 006712 setarg 0xee21 
+0x2abd 006713 hstore 2 ,core_clkoff 
+0x2abe 006714 hfetch 4 ,core_gpio_in 
+0x2abf 006715 store 4 ,mem_saved_gpio_in 
+0x2ac0 006716 hfetch 1 ,core_lpm_ldocnt 
+0x2ac1 006717 store 1 ,mem_wakup_from_power_flag 
+0x2ac2 006718 bbit0 gpio_latch ,loadcode 
+0x2ac3 006719 enable wake 
+0x2ac4 006720 bbit0 cold_wake ,lpmwake 
+0x2ac5 006721 disable wake 
+0x2ac6 006722 deposit auxcnt 
+0x2ac7 006723 nbranch lpmwake ,blank 
+0x2ac8 006724 hfetch 1 ,core_lpm_ctrl + 3 
+0x2ac9 006725 bbit1 reload_code ,lpmwake 
+0x2aca 006726 arg param_hibernate_clks ,temp 
+0x2acb 006727 branch lpm_enter_sleep 
+:      006728 lpmwake:
+0x2acc 006729 hfetch 3 ,core_lpm_xtalcnt 
+0x2acd 006730 hstore 3 ,core_lpm_reg 
+0x2ace 006731 ifetch 1 ,contr 
+0x2acf 006732 or_into isogate_mask ,pdata 
+0x2ad0 006733 istore 1 ,contw 
+0x2ad1 006734 call lpm_write_ctrl2 
+0x2ad2 006735 hfetch 1 ,core_lpm_isogate 
+0x2ad3 006736 set1 enable_retmem ,pdata 
+0x2ad4 006737 hstore 1 ,core_lpm_isogate 
+0x2ad5 006738 call lpm_write_ctrl2 
+0x2ad6 006739 call lpm_load_context ,wake 
+0x2ad7 006740 hfetch 1 ,core_lpm_reg + 2 
+0x2ad8 006741 set0 gpio_latch ,pdata 
+0x2ad9 006742 hstore 1 ,core_lpm_reg + 2 
+0x2ada 006743 call lpm_write_ctrl2 
+0x2adb 006744 nbranch loadcode ,wake 
+0x2adc 006745 rtnmark0 mark_otp_encrypt 
+0x2add 006746 jam lock_otp ,core_misc_ctrl 
+0x2ade 006747 rtn 
+:      006749 lpm_load_context:
+0x2adf 006750 fetch 1 ,mem_saved_spidctrl 
+0x2ae0 006751 hstore 1 ,core_spid_ctrl 
+0x2ae1 006752 fetch 3 ,mem_saved_gsel 
+0x2ae2 006753 hstore 3 ,core_gpio_sel 
+0x2ae3 006754 fetch 4 ,mem_saved_gpio + 4 
+0x2ae4 006755 hstore 4 ,core_gpio_out0 
+0x2ae5 006756 fetch 4 ,mem_saved_gpio 
+0x2ae6 006757 hstore 4 ,core_gpio_oe0 
+0x2ae7 006758 fetch 8 ,mem_saved_gpio + 8 
+0x2ae8 006759 hstore 8 ,core_gpio_pu0 
+0x2ae9 006760 fetch 8 ,mem_saved_mark 
+0x2aea 006761 iforce mark 
+0x2aeb 006762 hfetch 8 ,core_gpio_wakeup_low 
+0x2aec 006763 store 8 ,mem_gpio_wakeup_low 
+0x2aed 006764 call load_ucode 
+0x2aee 006765 rtn 
+:      006767 lpm_save_context:
+0x2aef 006768 deposit mark 
+0x2af0 006769 store 8 ,mem_saved_mark 
+0x2af1 006770 hfetch 8 ,core_gpio_oe0 
+0x2af2 006771 store 8 ,mem_saved_gpio 
+0x2af3 006772 ifetch 8 ,contr 
+0x2af4 006773 istore 8 ,contw 
+0x2af5 006774 hfetch 3 ,core_gpio_sel 
+0x2af6 006775 store 3 ,mem_saved_gsel 
+0x2af7 006776 hfetch 1 ,core_spid_ctrl 
+0x2af8 006777 store 1 ,mem_saved_spidctrl 
+0x2af9 006778 branch lpm_write_gpio_wakeup 
+:      006780 lpo_calibration:
+0x2afa 006781 hfetch 1 ,core_bist_ctrl 
+0x2afb 006782 nbranch lpo_cal_inited ,blank 
+0x2afc 006783 fetch 3 ,mem_clks_per_lpo 
+0x2afd 006784 nrtn blank 
+0x2afe 006785 jam 0xc0 ,core_bist_ctrl 
+0x2aff 006786 jam ccnt_start ,core_misc_ctrl 
+:      006787 lpo_cal_inited:
+0x2b00 006788 hfetch 1 ,core_perf_status 
+0x2b01 006789 rtnbit0 1 
+0x2b02 006790 hfetch 3 ,core_clk_counter 
+0x2b03 006791 store 3 ,mem_clks_per_lpo 
+0x2b04 006792 rtn 
+:      006796 lpm_adjust_clk:
+0x2b05 006797 bpatch patch14_3 ,mem_patch14 
+0x2b06 006798 deposit clke 
+0x2b07 006799 call clk_diff_rt 
+0x2b08 006800 fetcht 4 ,mem_sleep_counter_all 
+0x2b09 006801 sub temp ,0xff ,null 
+0x2b0a 006802 rtn positive 
+0x2b0b 006803 lshift8 pdata ,pdata 
+0x2b0c 006804 lshift4 pdata ,pdata 
+0x2b0d 006805 idiv temp 
+0x2b0e 006806 call wait_div_end 
+0x2b0f 006807 quotient pdata 
+0x2b10 006808 arg param_lpm_adjmax ,temp 
+0x2b11 006809 call ceiling 
+0x2b12 006810 store 1 ,mem_lpm_adjust 
+0x2b13 006811 nbranch lpm_adjust_positive ,user 
+0x2b14 006812 sub pdata ,0 ,pdata 
+:      006813 lpm_adjust_positive:
+0x2b15 006814 fetcht 3 ,mem_clks_per_lpo 
+0x2b16 006815 iadd temp ,pdata 
+0x2b17 006816 store 3 ,mem_clks_per_lpo 
+:      006817 lpm_clear_counter:
+0x2b18 006818 setarg 0 
+0x2b19 006819 store 4 ,mem_sleep_counter_all 
+0x2b1a 006820 rtn 
+:      006824 lpm_doze:
+0x2b1b 006825 fetch 1 ,mem_lpm_config + 2 
+0x2b1c 006826 set1 reload_code ,pdata 
+0x2b1d 006827 store 1 ,mem_lpm_config + 2 
+0x2b1e 006828 branch lpm_hibernate_normal 
+:      006832 lpm_hibernate:
+0x2b1f 006833 arg param_hibernate_clks ,temp 
+0x2b20 006834 fetch 1 ,mem_lpm_config + 1 
+0x2b21 006835 set0 7 ,pdata 
+0x2b22 006836 store 1 ,mem_lpm_config + 1 
+:      006837 lpm_hibernate_normal:
+0x2b23 006838 bpatch patch14_4 ,mem_patch14 
+0x2b24 006839 call lpm_write_gpio_wakeup 
+0x2b25 006840 fetch 1 ,mem_lpm_hibernate_switch 
+0x2b26 006841 store 1 ,mem_lpm_xtalcnt + 4 
+0x2b27 006842 fetch 1 ,mem_lpm_xtalcnt + 2 
+0x2b28 006843 set1 cold_wake ,pdata 
+0x2b29 006844 store 1 ,mem_lpm_xtalcnt + 2 
+:      006847 lpm_sleep:
+0x2b2a 006848 bpatch patch14_5 ,mem_patch14 
+0x2b2b 006849 call xtal_fast_wake 
+0x2b2c 006850 fetch 4 ,mem_sleep_counter_all 
+0x2b2d 006851 iadd temp ,pdata 
+0x2b2e 006852 store 4 ,mem_sleep_counter_all 
+0x2b2f 006853 call lpm_save_context 
+0x2b30 006854 fetch 5 ,mem_lpm_xtalcnt 
+0x2b31 006855 hstore 4 ,core_lpm_reg 
+0x2b32 006856 rshift32 pdata ,rega 
+0x2b33 006857 until null ,lpo_edge 
+0x2b34 006858 deposit clkn 
+0x2b35 006859 store 6 ,mem_sleep_clkn 
+0x2b36 006860 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
+0x2b37 006861 until null ,lpo_edge 
+0x2b38 006862 until null ,lpo_edge 
+0x2b39 006863 deposit rega 
+0x2b3a 006864 hstore 1 ,core_lpm_isogate 
+0x2b3b 006865 jam lpmreg_sel_ctrl2 ,core_lpm_wr 
+:      006866 lpm_enter_sleep:
+0x2b3c 006867 until null ,lpo_edge 
+0x2b3d 006868 until null ,lpo_edge 
+0x2b3e 006869 hstoret 4 ,core_lpm_reg 
+0x2b3f 006870 jam lpmreg_sel_counter ,core_lpm_wr 
+0x2b40 006871 until null ,never 
+:      006876 lpm_recover_clk:
+0x2b41 006877 bpatch patch14_6 ,mem_patch14 
+0x2b42 006878 setarg 0 
+0x2b43 006879 copy auxcnt ,null 
+0x2b44 006880 branch lpm_recover_timeout ,zero 
+0x2b45 006881 hfetch 1 ,core_lpm_xtalcnt 
+0x2b46 006882 hfetcht 1 ,core_lpm_buckcnt 
+0x2b47 006883 isub temp ,null 
+0x2b48 006884 branch lpm_recover_xtal ,positive 
+0x2b49 006885 deposit temp 
+:      006886 lpm_recover_xtal:
+0x2b4a 006887 isub auxcnt ,pdata 
+0x2b4b 006888 increase 1 ,pdata 
+:      006889 lpm_recover_timeout:
+0x2b4c 006890 increase 8 ,pdata 
+0x2b4d 006891 until null ,lpo_edge 
+0x2b4e 006892 iadd lpo_time ,pdata 
+0x2b4f 006893 fetcht 4 ,mem_sleep_counter 
+0x2b50 006894 iadd temp ,pdata 
+0x2b51 006895 fetcht 3 ,mem_clks_per_lpo 
+0x2b52 006896 imul32 temp ,pdata 
+0x2b53 006897 rshift8 pdata ,pdata 
+0x2b54 006898 rshift4 pdata ,pdata 
+0x2b55 006899 increase param_lpm_fix ,pdata 
+0x2b56 006900 arg 3750 ,temp 
+0x2b57 006901 idiv temp 
+0x2b58 006902 call wait_div_end 
+0x2b59 006903 quotient pdata 
+0x2b5a 006904 lshift16 pdata ,pdata 
+0x2b5b 006905 remainder temp 
+0x2b5c 006906 ior temp ,pdata 
+0x2b5d 006907 fetcht 6 ,mem_sleep_clkn 
+0x2b5e 006908 call clk_add 
+0x2b5f 006909 copy temp ,clkn 
+0x2b60 006910 fetch 6 ,mem_context + coffset_clk_offset 
+0x2b61 006911 call calc_clke2 
+0x2b62 006912 deposit clke 
+0x2b63 006913 store 6 ,mem_pdatatemp 
+0x2b64 006914 deposit auxcnt 
+0x2b65 006915 istore 1 ,contw 
+0x2b66 006916 hfetch 1 ,core_gpio_in1 
+0x2b67 006917 or_into 0xf0 ,pdata 
+0x2b68 006918 istore 1 ,contw 
+0x2b69 006919 rtn 
+:      006921 lpm_dispatch:
+0x2b6a 006922 bpatch patch14_7 ,mem_patch14 
+0x2b6b 006923 call lpo_calibration 
+0x2b6c 006924 fetch 3 ,mem_clks_per_lpo 
+0x2b6d 006925 rtn blank 
+0x2b6e 006926 fetch 1 ,mem_lpm_mode 
+0x2b6f 006927 rtn blank 
+0x2b70 006928 fetch 1 ,mem_ssp_enable 
+0x2b71 006929 branch lpm_dispatch_next ,blank 
+0x2b72 006930 fetch 1 ,mem_sp_local_key_invalid 
+0x2b73 006931 rtn blank 
+:      006932 lpm_dispatch_next:
+0x2b74 006933 fetch 1 ,mem_le_sc_calc 
+0x2b75 006934 nrtn blank 
+0x2b76 006935 call lpm_check_wake_lock 
+0x2b77 006936 nrtn blank 
+0x2b78 006937 fetch 1 ,mem_context 
+0x2b79 006938 compare 3 ,pdata ,0x7 
+0x2b7a 006939 nbranch lpm_dispatch_unconn ,true 
+0x2b7b 006940 fetch 2 ,mem_context + coffset_tsniff 
+0x2b7c 006941 rtn blank 
+0x2b7d 006942 rtn wake 
+0x2b7e 006943 bpatch patch15_0 ,mem_patch15 
+:      006944 lpm_dispatch_next2:
+0x2b7f 006945 fetcht 1 ,mem_lpm_current_mult 
+0x2b80 006946 fetch 2 ,mem_context + coffset_tsniff 
+0x2b81 006947 imul32 temp ,pdata 
+0x2b82 006948 rshift4 temp ,temp 
+0x2b83 006949 rshift2 temp ,temp 
+0x2b84 006950 isub temp ,pdata 
+0x2b85 006951 fetcht 4 ,mem_context + coffset_sniff_anchor 
+0x2b86 006952 iadd temp ,pdata 
+0x2b87 006953 fetcht 1 ,mem_lpm_overhead 
+0x2b88 006954 isub temp ,pdata 
+0x2b89 006955 lshift16 pdata ,alarm 
+0x2b8a 006956 bpatch patch15_1 ,mem_patch15 
+0x2b8b 006957 fetch 2 ,mem_context + coffset_rx_window 
+0x2b8c 006958 rshift pdata ,pdata 
+0x2b8d 006959 call clk2bt 
+0x2b8e 006960 deposit alarm 
+0x2b8f 006961 call clk_diff 
+0x2b90 006962 copy clke ,temp 
+0x2b91 006963 call clk_diff_rt 
+0x2b92 006964 rtn user 
+:      006965 lpm_dispatch_sleep:
+0x2b93 006966 call clk2lpo 
+:      006967 lpm_dispatch_lpo:
+0x2b94 006968 bpatch patch15_2 ,mem_patch15 
+0x2b95 006969 fetch 1 ,mem_lpm_xtalcnt 
+0x2b96 006970 isub temp ,null 
+0x2b97 006971 branch lpm_clear_counter ,positive 
+0x2b98 006972 storet 4 ,mem_sleep_counter 
+0x2b99 006973 call app_will_enter_lpm 
+0x2b9a 006974 call l2cap_lpm_save_txbuf 
+0x2b9b 006975 fetcht 4 ,mem_sleep_counter 
+0x2b9c 006976 branch lpm_sleep 
+:      006978 lpm_dispatch_unconn:
+0x2b9d 006979 bpatch patch15_3 ,mem_patch15 
+0x2b9e 006980 fetch 1 ,mem_context 
+0x2b9f 006981 rtnbit1 state_inconn 
+0x2ba0 006982 rtnbit1 state_inpage 
+0x2ba1 006983 fetch 1 ,mem_ssp_enable 
+0x2ba2 006984 branch lpm_unconn_nossp ,blank 
+0x2ba3 006985 fetch 1 ,mem_sp_local_key_invalid 
+0x2ba4 006986 rtn blank 
+:      006987 lpm_unconn_nossp:
+0x2ba5 006988 bpatch patch15_4 ,mem_patch15 
+0x2ba6 006989 fetch 1 ,mem_le_adv_enable 
+0x2ba7 006990 nbranch lpm_unconn_cont ,blank 
+0x2ba8 006991 fetch 1 ,mem_scan_mode 
+0x2ba9 006992 rtn blank 
+:      006993 lpm_unconn_cont:
+0x2baa 006994 fetch 2 ,mem_lpm_interval 
+0x2bab 006995 rtn blank 
+:      006996 lpm_sleep_btclk:
+0x2bac 006997 fetcht 1 ,mem_lpm_overhead 
+0x2bad 006998 isub temp ,pdata 
+0x2bae 006999 arg 7500 ,temp 
+0x2baf 007000 imul32 temp ,pdata 
+0x2bb0 007001 branch lpm_dispatch_sleep 
+:      007003 lpm_set_mult:
+0x2bb1 007004 bpatch patch15_5 ,mem_patch15 
+0x2bb2 007005 disable wake 
+0x2bb3 007006 fetch 1 ,mem_state 
+0x2bb4 007007 rtnbit0 state_insniff 
+0x2bb5 007008 nbranch lpm_not_match ,match 
+0x2bb6 007009 call lpm_match 
+0x2bb7 007010 fetch 2 ,mem_rx_window_sniff 
+0x2bb8 007011 store 2 ,mem_rx_window 
+0x2bb9 007012 fetch 1 ,mem_arq 
+0x2bba 007013 bbit1 wack ,lpm_mult_short 
+0x2bbb 007014 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0x2bbc 007015 call l2cap_malloc_is_fifo_empty 
+0x2bbd 007016 nbranch lpm_mult_short ,blank 
+0x2bbe 007017 fetch 1 ,mem_classic_bt_flag 
+0x2bbf 007018 bbit1 short_mult_flag ,lpm_mult_short 
+:      007019 lpm_mult_wait_timeout:
+0x2bc0 007020 jam 0 ,mem_lpm_current_mult 
+0x2bc1 007021 bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0x2bc2 007022 fetch 1 ,mem_lpm_mult_cnt 
+0x2bc3 007023 branch lpm_mult_long ,blank 
+0x2bc4 007024 increase -1 ,pdata 
+0x2bc5 007025 store 1 ,mem_lpm_mult_cnt 
+0x2bc6 007026 rtn 
+:      007029 classic_bt_set_mult_short_flag:
+0x2bc7 007030 arg short_mult_flag ,queue 
+0x2bc8 007031 branch classic_bluetooth_set_flag 
+:      007033 classic_bt_clr_mult_short_flag:
+0x2bc9 007034 arg short_mult_flag ,queue 
+0x2bca 007035 branch classic_bluetooth_clr_flag 
+:      007039 lpm_match:
+0x2bcb 007040 jam 0 ,mem_sniff_unint_lost 
+0x2bcc 007041 fetch 3 ,mem_sniff_rcv 
+0x2bcd 007042 increase 1 ,pdata 
+0x2bce 007043 store 3 ,mem_sniff_rcv 
+0x2bcf 007044 rtn 
+:      007046 lpm_not_match:
+0x2bd0 007047 bpatch patch15_6 ,mem_patch15 
+0x2bd1 007048 fetcht 2 ,mem_rx_window_sniff 
+0x2bd2 007049 rshift temp ,temp 
+0x2bd3 007050 fetch 2 ,mem_rx_window 
+0x2bd4 007051 iadd temp ,pdata 
+0x2bd5 007052 store 2 ,mem_rx_window 
+:      007053 lpm_lost:
+0x2bd6 007054 jam 0 ,mem_lpm_current_mult 
+0x2bd7 007055 fetch 3 ,mem_sniff_lost 
+0x2bd8 007056 increase 1 ,pdata 
+0x2bd9 007057 store 3 ,mem_sniff_lost 
+0x2bda 007058 fetch 1 ,mem_sniff_unint_lost 
+0x2bdb 007059 increase 1 ,pdata 
+0x2bdc 007060 store 1 ,mem_sniff_unint_lost 
+0x2bdd 007061 rtn 
+:      007063 lpm_mult_short:
+0x2bde 007064 jam 0 ,mem_lpm_current_mult 
+0x2bdf 007065 fetch 1 ,mem_lpm_mult_timeout 
+0x2be0 007066 store 1 ,mem_lpm_mult_cnt 
+0x2be1 007067 rtn 
+:      007069 lpm_mult_long:
+0x2be2 007070 fetcht 1 ,mem_lpm_mult 
+0x2be3 007071 storet 1 ,mem_lpm_current_mult 
+0x2be4 007072 rtn 
+:      007074 lpm_cal_xtal_startup:
+0x2be5 007075 bpatch patch15_7 ,mem_patch15 
+0x2be6 007076 fetch 1 ,mem_lpm_xtalcnt 
+0x2be7 007077 nrtn blank 
+0x2be8 007078 jam clksel_rc ,core_clksel 
+0x2be9 007079 setarg 0xf0c 
+0x2bea 007080 call lpm_write_config 
+0x2beb 007081 setarg 200000 
+0x2bec 007082 call sleep 
+0x2bed 007083 until null ,lpo_edge 
+0x2bee 007084 copy lpo_time ,alarm 
+0x2bef 007085 call xtal_fast_wake 
+0x2bf0 007086 jam clksel_xtal ,core_clksel 
+0x2bf1 007087 nop 10 
+0x2bf2 007088 until null ,lpo_edge 
+0x2bf3 007089 deposit lpo_time 
+0x2bf4 007090 isub alarm ,pdata 
+0x2bf5 007091 increase 0x30 ,pdata 
+0x2bf6 007092 arg 0xff ,temp 
+0x2bf7 007093 call ceiling 
+0x2bf8 007094 store 1 ,mem_lpm_xtalcnt 
+0x2bf9 007095 nop 30000 
+0x2bfa 007096 nop 30000 
+0x2bfb 007097 nop 30000 
+0x2bfc 007098 rtn 
+:      007100 lpm_cal_xtal_startup_by_snooze:
+0x2bfd 007101 fetch 1 ,mem_lpm_xtalcnt 
+0x2bfe 007102 nrtn blank 
+0x2bff 007103 jam 0xff ,core_xtal_stable_time 
+0x2c00 007104 jam clksel_rc ,core_clksel 
+0x2c01 007105 call xtal_fast_wake 
+0x2c02 007106 setarg 1000 
+0x2c03 007107 iadd lpo_time ,alarm 
+0x2c04 007108 snooze 
+0x2c05 007109 deposit lpo_time 
+0x2c06 007110 nop 12000 
+0x2c07 007111 nop 12000 
+0x2c08 007112 nop 12000 
+0x2c09 007113 nop 12000 
+0x2c0a 007114 nop 12000 
+0x2c0b 007115 nop 12000 
+0x2c0c 007116 nop 12000 
+0x2c0d 007117 nop 12000 
+0x2c0e 007118 nop 12000 
+0x2c0f 007119 isub alarm ,pdata 
+0x2c10 007120 add pdata ,0x30 ,pdata 
+0x2c11 007121 arg 0xff ,temp 
+0x2c12 007122 call ceiling 
+0x2c13 007123 store 1 ,mem_lpm_xtalcnt 
+0x2c14 007124 nop 30000 
+0x2c15 007125 nop 30000 
+0x2c16 007126 nop 30000 
+0x2c17 007127 rtn 
+:      007132 lpm_write_config:
+0x2c18 007133 arg 0xfff ,contw 
+0x2c19 007134 iand contw ,contw 
+0x2c1a 007135 fetch 1 ,mem_lpm_config 
+0x2c1b 007136 and_into 0xf0 ,pdata 
+0x2c1c 007137 lshift8 pdata ,pdata 
+0x2c1d 007138 ior contw ,pdata 
+0x2c1e 007139 hstore 2 ,core_lpm_reg 
+0x2c1f 007140 ifetch 2 ,contr 
+0x2c20 007141 istore 2 ,contw 
+:      007143 lpm_write_ctrl:
+0x2c21 007144 setarg lpmreg_sel_ctrl 
+0x2c22 007145 branch lpm_write 
+:      007147 lpm_write_ctrl2:
+0x2c23 007148 setarg lpmreg_sel_ctrl2 
+:      007149 lpm_write:
+0x2c24 007150 until null ,lpo_edge 
+0x2c25 007151 hstore 1 ,core_lpm_wr 
+0x2c26 007152 until null ,lpo_edge 
+0x2c27 007153 until null ,lpo_edge 
+0x2c28 007154 rtn 
+:      007157 lpm_write_gpio_wakeup:
+0x2c29 007158 bpatch patch16_0 ,mem_patch16 
+0x2c2a 007159 fetch 4 ,mem_gpio_wakeup_low 
+0x2c2b 007160 hstore 4 ,core_lpm_reg 
+0x2c2c 007161 setarg lpmreg_sel_gpiolow 
+0x2c2d 007162 call lpm_write 
+0x2c2e 007163 fetch 4 ,mem_gpio_wakeup_high 
+0x2c2f 007164 hstore 4 ,core_lpm_reg 
+0x2c30 007165 setarg lpmreg_sel_gpiohigh 
+0x2c31 007166 branch lpm_write 
+:      007168 lpm_get_wake_lock:
+0x2c32 007169 fetch 2 ,mem_lpm_wake_lock 
+0x2c33 007170 qset1 pdata 
+0x2c34 007171 store 2 ,mem_lpm_wake_lock 
+0x2c35 007172 rtn 
+:      007174 lpm_put_wake_lock:
+0x2c36 007175 fetch 2 ,mem_lpm_wake_lock 
+0x2c37 007176 qset0 pdata 
+0x2c38 007177 store 2 ,mem_lpm_wake_lock 
+0x2c39 007178 rtn 
+:      007182 lpm_check_wake_lock:
+0x2c3a 007183 bpatch patch16_1 ,mem_patch16 
+0x2c3b 007184 call app_check_wake_lock 
+0x2c3c 007185 fetch 2 ,mem_lpm_wake_lock 
+0x2c3d 007186 copy pdata ,rega 
+0x2c3e 007187 fetch 1 ,mem_state_map 
+0x2c3f 007188 isolate1 smap_rxlmp ,pdata 
+0x2c40 007189 setflag true ,wake_lock_lmp_rx ,rega 
+0x2c41 007190 fetch 1 ,mem_lmo_opcode1 
+0x2c42 007191 fetcht 1 ,mem_lmo_opcode2 
+0x2c43 007192 iadd temp ,pdata 
+0x2c44 007193 fetcht 1 ,mem_lmp_to_send 
+0x2c45 007194 iadd temp ,pdata 
+0x2c46 007195 nsetflag blank ,wake_lock_lmp_tx ,rega 
+0x2c47 007196 fetch 1 ,mem_le_tx_buff_used 
+0x2c48 007197 nsetflag blank ,wake_lock_ble_tx ,rega 
+0x2c49 007198 fetch 2 ,mem_l2cap_rxbuff1_len 
+0x2c4a 007199 fetcht 2 ,mem_l2cap_rxbuff2_len 
+0x2c4b 007200 iadd temp ,pdata 
+0x2c4c 007201 nsetflag blank ,wake_lock_l2cap_rx ,rega 
+0x2c4d 007202 fetch util_fifo_len ,mem_ipc_fifo_bt2c51 
+0x2c4e 007203 nsetflag blank ,wake_lock_ipc_bt2c51 ,rega 
+0x2c4f 007204 fetch util_fifo_len ,mem_ipc_fifo_c512bt 
+0x2c50 007205 nsetflag blank ,wake_lock_ipc_c512bt ,rega 
+0x2c51 007206 fetch 1 ,mem_hci_cmd 
+0x2c52 007207 nsetflag blank ,wake_lock_cmd ,rega 
+0x2c53 007208 fetch 1 ,mem_device_option 
+0x2c54 007209 compare dvc_op_module ,pdata ,0xff 
+0x2c55 007210 call lpm_uart_wake_lock ,true 
+0x2c56 007211 setarg -8 
+0x2c57 007212 iand rega ,rega 
+0x2c58 007213 copy rega ,pdata 
+0x2c59 007214 store 2 ,mem_lpm_wake_lock 
+0x2c5a 007215 rtn 
+:      007217 lpm_uart_wake_lock:
+0x2c5b 007218 hfetch 2 ,core_uart_rxitems 
+0x2c5c 007219 nsetflag blank ,wake_lock_uart_rx ,rega 
+0x2c5d 007220 hfetch 2 ,core_uart_txitems 
+0x2c5e 007221 nsetflag blank ,wake_lock_uart_tx ,rega 
+0x2c5f 007222 rtn 
+:      007224 lpm_shut_down:
+0x2c60 007225 hfetch 4 ,core_lpm_ctrl 
+0x2c61 007226 set0 27 ,pdata 
+0x2c62 007227 hstore 4 ,core_lpm_reg 
+0x2c63 007228 call lpm_write_ctrl 
+0x2c64 007229 branch assert 
+:      007231 lpm_disable_exen_output:
+0x2c65 007232 hfetch 4 ,core_lpm_xtalcnt 
+0x2c66 007233 set0 20 ,pdata 
+0x2c67 007234 hstore 4 ,core_lpm_reg 
+0x2c68 007235 branch lpm_write_ctrl2 
+:      007237 check_bt_disabled:
+0x2c69 007238 fetch 2 ,mem_chip_functions 
+0x2c6a 007239 bbit1 bt_disabled ,assert 
+0x2c6b 007240 rtn 
+:      007241 check_ble_disabled:
+0x2c6c 007242 fetch 2 ,mem_chip_functions 
+0x2c6d 007243 bbit1 ble_disabled ,assert 
+0x2c6e 007244 rtn 
+:      007245 check_module_disabled:
+0x2c6f 007246 fetch 2 ,mem_chip_functions 
+0x2c70 007247 bbit1 module_disable ,assert 
+0x2c71 007248 rtn 
+:      007309 g24_dispatch:
+0x2c72 007310 bpatch patch16_2 ,mem_patch16 
+0x2c73 007311 call g24_head_ptr2regc 
+0x2c74 007312 add regc ,offset_24g_mode ,regb 
+0x2c75 007313 ifetch 1 ,regb 
+0x2c76 007315 rtneq disable_24g 
+0x2c77 007316 beq tx_24g ,g24_transmit_process 
+0x2c78 007317 beq rx_24g ,g24_receive_process 
+0x2c79 007318 rtn 
+:      007320 g24_head_ptr2regc:
+0x2c7a 007321 fetcht 2 ,mem_24g_head_ptr 
+0x2c7b 007322 copy temp ,regc 
+0x2c7c 007323 rtn 
+:      007325 g24_receive_process_init:
+0x2c7d 007326 call g24_receive_init 
+0x2c7e 007327 branch g24_mode_switch_init 
+:      007329 g24_receive_process:
+0x2c7f 007330 call g24_mode_switch 
+0x2c80 007331 call g24_dongle_work_mode_auto 
+0x2c81 007332 call g24_dongle_bind_mode_auto 
+0x2c82 007333 branch g24_dongle_search_mode_auto 
+:      007336 g24_pair_init:
+0x2c83 007339 call g24_set0_mem_pid 
+0x2c84 007340 setarg g24_pair_ch 
+0x2c85 007341 call g24_store_mem_ch 
+0x2c86 007342 call g24_store_mem_pair_txpower 
+0x2c87 007345 add regc ,offset_24g_paring_addr ,rega 
+0x2c88 007346 ifetch 4 ,rega 
+0x2c89 007347 branch g24_store_mem_addr 
+:      007349 g24_ch:
+0x2c8a 007350 call g24_head_ptr2regc 
+0x2c8b 007351 add regc ,offset_24g_current_ch_number ,regb 
+0x2c8c 007352 ifetcht 1 ,regb 
+0x2c8d 007354 call g24_ch_temp_incre_size4 
+0x2c8e 007355 add regc ,offset_24g_current_ch_number ,contw 
+0x2c8f 007357 branch g24_contw_istoret_1byte 
+:      007359 g24_ch_temp_incre_size4:
+0x2c90 007360 call g24_ch_calc 
+0x2c91 007361 increase 1 ,temp 
+0x2c92 007362 and_into 3 ,temp 
+0x2c93 007363 rtn 
+:      007365 g24_ch_calc:
+0x2c94 007366 add regc ,offset_24g_addr ,regb 
+0x2c95 007367 ifetch 1 ,regb 
+0x2c96 007369 and_into 0x03 ,pdata 
+0x2c97 007370 mul32 pdata ,4 ,rega 
+0x2c98 007371 add regc ,offset_24g_ch_map1 ,pdata 
+0x2c99 007373 iadd rega ,pdata 
+0x2c9a 007374 iadd temp ,contr 
+0x2c9b 007375 ifetch 1 ,contr 
+0x2c9c 007377 branch g24_store_mem_ch 
+:      007379 g24_set_device_addr:
+0x2c9d 007380 call g24_store_mem_tx_power_temp 
+0x2c9e 007381 call otp_enable_chgpump 
+0x2c9f 007382 setarg 0x7e2 
+0x2ca0 007383 arg mem_temp ,rega 
+0x2ca1 007384 arg 4 ,temp 
+0x2ca2 007385 call otpd_read_data 
+0x2ca3 007386 call otp_disable_chgpump 
+0x2ca4 007387 fetch 4 ,mem_temp 
+0x2ca5 007388 call g24_store_mem_device_addr 
+0x2ca6 007390 nrtn blank 
+0x2ca7 007391 fetch 4 ,mem_lap 
+0x2ca8 007393 branch g24_store_mem_device_addr 
+:      007395 g24_transmit_rf_sta_init:
+0x2ca9 007396 call g24_set1_mem_rf_last_sta 
+0x2caa 007398 setarg 0 
+0x2cab 007399 call g24_store_mem_sync_cnt 
+:      007401 g24_transmit_rf_ctrl_clear:
+0x2cac 007402 call g24_fetch_mem_data_type 
+0x2cad 007404 and_into bits_data ,pdata 
+0x2cae 007406 branch g24_store_mem_data_type 
+:      007408 g24_hop_ch_enable:
+0x2caf 007409 call g24_fetch_mem_data_type 
+0x2cb0 007411 set1 bit_hop ,pdata 
+0x2cb1 007412 call g24_store_mem_data_type 
+0x2cb2 007415 branch g24_store_mem_txpayload 
+:      007417 g24_transmit_hop_pac_fail:
+0x2cb3 007418 call g24_fetch_mem_rf_work_stage 
+0x2cb4 007420 beq 1 ,g24_transmit_hop_pac_fail_wo_hop 
+0x2cb5 007421 beq 2 ,g24_transmit_hop_pac_fail_hop_stage2 
+0x2cb6 007422 rtn 
+:      007424 g24_transmit_hop_pac_fail_wo_hop:
+0x2cb7 007425 call g24_set2_mem_sync_cnt 
+:      007427 g24_transmit_hop_pac_fail_stage1:
+0x2cb8 007428 add regc ,offset_24g_hop_pac_retry ,contw 
+0x2cb9 007429 call g24_mem_set0 
+0x2cba 007431 call g24_store_mem_rf_last_sta 
+0x2cbb 007433 branch g24_transmit_rf_ctrl_clear 
+:      007435 g24_transmit_hop_pac_fail_hop_stage2:
+0x2cbc 007436 call g24_set0_mem_rf_hop_ch 
+0x2cbd 007438 branch g24_transmit_hop_pac_fail_stage1 
+:      007440 g24_transmit_pac_fail_hop_stage3:
+0x2cbe 007441 add regc ,offset_24g_txfail_cnt ,rega 
+0x2cbf 007442 ifetch 1 ,rega 
+0x2cc0 007444 increase 1 ,pdata 
+0x2cc1 007445 add regc ,offset_24g_txfail_cnt ,contw 
+0x2cc2 007446 istore 1 ,contw 
+0x2cc3 007448 beq 0x20 ,g24_tx_attempt_fail 
+0x2cc4 007449 call g24_fetch_mem_rf_hop_ch 
+0x2cc5 007451 beq 1 ,g24_rf_hop_fastly 
+0x2cc6 007452 setarg 1 
+0x2cc7 007453 call g24_store_mem_rf_hop_ch 
+:      007455 g24_rf_hop_attemp_again:
+0x2cc8 007456 call g24_fetch_mem_rf_hop_ch 
+0x2cc9 007458 bne 1 ,g24_transmit_rf_ctrl_clear 
+:      007459 g24_rf_hop_fastly:
+0x2cca 007460 add regc ,offset_24g_hop_fastly_cnt ,rega 
+0x2ccb 007461 ifetch 1 ,rega 
+0x2ccc 007463 increase 1 ,pdata 
+0x2ccd 007464 call g24_store_mem_hop_fastly_cnt 
+0x2cce 007466 beq 4 ,g24_rf_hop_fastly_exit 
+0x2ccf 007467 call g24_ch 
+0x2cd0 007468 call g24_set2_mem_max_retry 
+0x2cd1 007470 branch g24_transmit_packet 
+:      007472 g24_rf_hop_fastly_exit:
+0x2cd2 007473 call g24_set0_mem_hop_fastly_cnt 
+0x2cd3 007475 branch g24_transmit_rf_ctrl_clear 
+:      007477 g24_set0_mem_hop_fastly_cnt:
+0x2cd4 007478 setarg 0 
+:      007479 g24_store_mem_hop_fastly_cnt:
+0x2cd5 007480 add regc ,offset_24g_hop_fastly_cnt ,contw 
+0x2cd6 007481 branch g24_contw_istore_1byte 
+:      007483 g24_transmit_hop_pac_succ_wo_hop:
+0x2cd7 007484 call g24_set2_mem_sync_cnt 
+:      007486 g24_transmit_hop_pac_succ:
+0x2cd8 007487 call g24_set0_mem_rf_hop_ch 
+0x2cd9 007489 call g24_set1_mem_rf_last_sta 
+0x2cda 007491 branch g24_transmit_rf_ctrl_clear 
+:      007493 g24_transmit_succ_rf_config:
+0x2cdb 007494 call g24_fetch_mem_rf_work_stage 
+0x2cdc 007496 beq 3 ,g24_transmit_hop_pac_succ 
+0x2cdd 007497 call g24_fetch_mem_data_type 
+0x2cde 007499 isolate0 bit_hop ,pdata 
+0x2cdf 007500 branch g24_transmit_rf_sta_init ,true 
+0x2ce0 007501 call g24_fetch_mem_rf_work_stage 
+0x2ce1 007503 beq 1 ,g24_transmit_hop_pac_succ_wo_hop 
+0x2ce2 007504 beq 2 ,g24_transmit_hop_pac_succ 
+0x2ce3 007505 rtn 
+:      007507 g24_rf_sta_check:
+0x2ce4 007508 call g24_fetch_mem_pairing_sm 
+0x2ce5 007510 rtnne state_24g_pairing_success 
+0x2ce6 007511 call g24_rf_laststa_synccnt_check 
+0x2ce7 007512 ncall g24_rf_sync_cnt_check ,user2 
+0x2ce8 007513 rtn 
+:      007515 g24_rf_laststa_synccnt_check:
+0x2ce9 007516 disable user2 
+0x2cea 007517 add regc ,offset_24g_rf_last_sta ,rega 
+0x2ceb 007518 ifetch 1 ,rega 
+0x2cec 007520 rtnne 1 
+0x2ced 007521 add regc ,offset_24g_sync_cnt ,rega 
+0x2cee 007522 ifetch 1 ,rega 
+0x2cef 007524 rtnne 0 
+0x2cf0 007525 setarg 1 
+0x2cf1 007526 call g24_store_mem_rf_work_stage 
+0x2cf2 007528 call g24_set4_mem_max_retry 
+0x2cf3 007530 branch enable_user2 
+:      007532 g24_rf_sync_cnt_check:
+0x2cf4 007533 add regc ,offset_24g_sync_cnt ,rega 
+0x2cf5 007534 ifetch 1 ,rega 
+0x2cf6 007536 branch g24_rf_hop_attemp ,blank 
+0x2cf7 007537 increase -1 ,pdata 
+0x2cf8 007538 call g24_store_mem_sync_cnt 
+0x2cf9 007540 setarg 2 
+0x2cfa 007541 call g24_store_mem_rf_work_stage 
+0x2cfb 007543 call g24_ch 
+0x2cfc 007545 branch g24_set4_mem_max_retry 
+:      007547 g24_store_mem_rf_work_stage:
+0x2cfd 007548 add regc ,offset_24g_rf_work_stage ,contw 
+0x2cfe 007549 branch g24_contw_istore_1byte 
+:      007552 g24_rf_hop_attemp:
+0x2cff 007553 setarg 3 
+0x2d00 007554 call g24_store_mem_rf_work_stage 
+0x2d01 007556 call g24_fetch_mem_rf_hop_ch 
+0x2d02 007558 nbranch g24_rf_hop_attemp_again ,blank 
+0x2d03 007559 call g24_ch 
+:      007561 g24_set2_mem_max_retry:
+0x2d04 007562 setarg 2 
+0x2d05 007563 branch g24_store_mem_max_retry 
+:      007565 g24_transmit_process:
+0x2d06 007566 rtnmark0 mark_24g 
+0x2d07 007567 set1 mark_24g_conext ,mark 
+0x2d08 007568 bpatch patch16_3 ,mem_patch16 
+0x2d09 007569 add regc ,offset_24g_tx_without_int ,rega 
+0x2d0a 007570 ifetch 1 ,rega 
+0x2d0b 007572 beq 1 ,g24_transmit_without_int 
+0x2d0c 007573 call g24_timer_check 
+0x2d0d 007574 nbranch g24_transmit_exit ,user 
+0x2d0e 007575 call g24_interval_calibrate 
+:      007576 g24_transmit_without_int:
+0x2d0f 007577 add regc ,offset_24g_tx_without_int ,contw 
+0x2d10 007578 call g24_mem_set0 
+0x2d11 007580 call g24_txdata_prep 
+0x2d12 007581 nbranch g24_enter_lpm ,user 
+0x2d13 007582 call g24_rf_sta_check 
+:      007583 g24_transmit_start:
+0x2d14 007584 call g24_transmit_packet 
+0x2d15 007585 call g24_power_ctrl 
+:      007586 g24_transmit_exit:
+0x2d16 007587 set0 mark_24g_conext ,mark 
+0x2d17 007588 rtn 
+:      007590 g24_timer_timeout:
+0x2d18 007591 rtn zero 
+0x2d19 007592 set1 28 ,pdata 
+0x2d1a 007593 rtn 
+:      007595 g24_interval_calibrate:
+0x2d1b 007596 add regc ,offset_24g_pac_index ,rega 
+0x2d1c 007597 ifetch 1 ,rega 
+0x2d1d 007599 increase 1 ,pdata 
+0x2d1e 007600 add regc ,offset_24g_pac_index ,contw 
+0x2d1f 007601 istore 1 ,contw 
+0x2d20 007603 beq 4 ,g24_interval_max 
+0x2d21 007604 beq 5 ,g24_interval_min 
+0x2d22 007605 rtn 
+:      007606 g24_interval_max:
+0x2d23 007607 add regc ,offset_24g_interval_max ,rega 
+0x2d24 007608 ifetch 1 ,rega 
+:      007610 g24_interval_update:
+0x2d25 007612 add regc ,offset_24g_interval ,contw 
+0x2d26 007613 branch g24_contw_istore_1byte 
+:      007615 g24_interval_min:
+0x2d27 007616 add regc ,offset_24g_pac_index ,contw 
+0x2d28 007617 call g24_mem_set0 
+0x2d29 007619 add regc ,offset_24g_interval_min ,rega 
+0x2d2a 007620 ifetch 1 ,rega 
+0x2d2b 007622 branch g24_interval_update 
+:      007624 g24_txdata_prep:
+0x2d2c 007625 call g24_fetch_mem_pairing_sm 
+0x2d2d 007627 bne state_24g_pairing_success ,g24_pairing_sm 
+0x2d2e 007628 bpatch patch16_4 ,mem_patch16 
+0x2d2f 007629 call g24_package_data 
+0x2d30 007630 nbranch g24_txdata_last_pac ,user 
+0x2d31 007631 call g24_transmit_prep 
+0x2d32 007632 call g24_power_ctrl_pac_incrs 
+:      007633 g24_txdata_enable_tx:
+0x2d33 007635 setarg ensure_on_24g 
+:      007636 g24_store_mem_ensure:
+0x2d34 007637 add regc ,offset_24g_ensure ,contw 
+0x2d35 007638 branch g24_contw_istore_1byte 
+:      007640 g24_txdata_last_pac:
+0x2d36 007641 add regc ,offset_24g_ensure ,rega 
+0x2d37 007642 ifetch 1 ,rega 
+0x2d38 007644 beq ensure_on_24g ,enable_user 
+0x2d39 007645 rtn 
+:      007647 g24_package_data:
+0x2d3a 007649 add regc ,offset_24g_cb_data ,temp 
+0x2d3b 007650 ifetch 2 ,temp 
+0x2d3c 007652 call callback_func 
+0x2d3d 007653 nrtn user 
+0x2d3e 007654 copy rega ,pdata 
+0x2d3f 007655 store 1 ,mem_rega 
+0x2d40 007656 add regc ,offset_24g_abort_pac ,contw 
+0x2d41 007657 call g24_mem_set0 
+0x2d42 007659 call g24_transmit_rf_ctrl_clear 
+0x2d43 007660 store 1 ,mem_24g_common_temp 
+0x2d44 007661 fetch 1 ,mem_rega 
+0x2d45 007662 copy pdata ,rega 
+0x2d46 007663 add rega ,1 ,temp 
+0x2d47 007664 arg mem_24g_common_temp + 1 ,contw 
+0x2d48 007665 copy rega ,loopcnt 
+0x2d49 007666 copy regb ,contr 
+0x2d4a 007667 call memcpy 
+0x2d4b 007668 arg mem_24g_common_temp ,rega 
+:      007669 g24_put_data_in_buff:
+0x2d4c 007670 rtnmark0 mark_24g_conext 
+0x2d4d 007671 add regc ,offset_24g_datalen ,contw 
+0x2d4e 007672 istoret 1 ,contw 
+0x2d4f 007674 copy temp ,loopcnt 
+0x2d50 007675 add regc ,offset_24g_txbuf ,contw 
+0x2d51 007677 copy rega ,contr 
+0x2d52 007678 branch memcpy 
+:      007680 g24_transmit_prep:
+0x2d53 007682 add regc ,offset_24g_datalen ,rega 
+0x2d54 007683 ifetch 1 ,rega 
+0x2d55 007685 increase 2 ,pdata 
+0x2d56 007686 add regc ,offset_24g_txlen ,contw 
+0x2d57 007687 istore 1 ,contw 
+0x2d58 007690 call g24_fetch_mem_data_type 
+0x2d59 007692 call g24_store_mem_txpayload 
+0x2d5a 007695 add regc ,offset_24g_datalen ,rega 
+0x2d5b 007696 ifetch 1 ,rega 
+0x2d5c 007698 lshift3 pdata ,pdata 
+0x2d5d 007699 add regc ,offset_24g_pid ,rega 
+0x2d5e 007700 ifetcht 1 ,rega 
+0x2d5f 007702 and temp ,0x03 ,temp 
+0x2d60 007703 lshift temp ,temp 
+0x2d61 007704 ior temp ,pdata 
+0x2d62 007705 add regc ,offset_24g_no_ack ,rega 
+0x2d63 007706 ifetcht 1 ,rega 
+0x2d64 007708 iadd temp ,pdata 
+0x2d65 007709 istore 1 ,contw 
+0x2d66 007711 add regc ,offset_24g_datalen ,rega 
+0x2d67 007712 ifetch 1 ,rega 
+0x2d68 007714 iforce loopcnt 
+0x2d69 007715 add regc ,offset_24g_txbuf ,contr 
+0x2d6a 007717 branch memcpy 
+:      007719 g24_send_abort_packet:
+0x2d6b 007720 call g24_set1_mem_abort_pac 
+0x2d6c 007722 call g24_set0_mem_rf_hop_ch 
+0x2d6d 007724 call g24_power_ctrl_reinit 
+0x2d6e 007725 call g24_transmit_rf_ctrl_clear 
+0x2d6f 007726 store 1 ,mem_24g_common_temp 
+0x2d70 007727 call g24_put_data_in_buff_pre 
+0x2d71 007728 call g24_fetch_mem_data_type 
+0x2d72 007730 set1 bit_abort ,pdata 
+0x2d73 007731 call g24_store_mem_data_type 
+0x2d74 007733 call g24_transmit_prep 
+0x2d75 007734 call g24_txdata_enable_tx 
+0x2d76 007735 branch g24_transmit_start 
+:      007737 g24_put_data_in_buff_pre:
+0x2d77 007738 store 1 ,mem_24g_common_temp + 1 
+0x2d78 007739 call g24_fetch_mem_device_addr 
+0x2d79 007741 store 4 ,mem_24g_common_temp + 2 
+0x2d7a 007742 arg 6 ,temp 
+0x2d7b 007743 arg mem_24g_common_temp ,rega 
+0x2d7c 007744 branch g24_put_data_in_buff 
+:      007746 g24_enter_lpm:
+0x2d7d 007747 add regc ,offset_24g_abort_pac ,rega 
+0x2d7e 007748 ifetch 1 ,rega 
+0x2d7f 007750 branch g24_send_abort_packet ,blank 
+:      007751 g24_enter_lpm_prepare:
+0x2d80 007753 add regc ,offset_24g_cb_lpm_prepare ,rega 
+0x2d81 007754 ifetch 2 ,rega 
+0x2d82 007756 branch callback_func 
+:      007758 g24_lpm_long_sleep:
+0x2d83 007759 call g24_head_ptr2regc 
+0x2d84 007761 call lpo_calibration 
+0x2d85 007762 fetch 3 ,mem_clks_per_lpo 
+0x2d86 007763 rtn blank 
+0x2d87 007764 add regc ,offset_24g_cb_lpm_before ,temp 
+0x2d88 007765 ifetch 2 ,temp 
+0x2d89 007767 call callback_func 
+0x2d8a 007768 add regc ,offset_24g_enter_hibernate ,temp 
+0x2d8b 007769 ifetch 8 ,temp 
+0x2d8c 007770 call clk2lpo 
+0x2d8d 007771 storet 4 ,mem_sleep_counter 
+0x2d8e 007772 branch lpm_sleep 
+:      007774 g24_transmit_packet:
+0x2d8f 007775 call g24_head_ptr2regc 
+0x2d90 007776 add regc ,offset_24g_retry ,contw 
+0x2d91 007777 call g24_mem_set0 
+:      007779 g24_transmit_loop:
+0x2d92 007780 call g24_transmit_receive_ack 
+0x2d93 007781 nbranch g24_retransmit ,sync 
+0x2d94 007782 nbranch g24_retransmit ,user3 
+0x2d95 007783 call g24_ackpayload_parse 
+0x2d96 007784 call g24_power_ctrl_ack_incrs 
+:      007785 g24_transmit_next_packet:
+0x2d97 007786 call g24_head_ptr2regc 
+0x2d98 007787 add regc ,offset_24g_pid ,rega 
+0x2d99 007788 ifetch 1 ,rega 
+0x2d9a 007790 increase 1 ,pdata 
+0x2d9b 007791 call g24_store_mem_pid 
+0x2d9c 007793 call g24_fetch_mem_pairing_sm 
+0x2d9d 007795 bne state_24g_pairing_success ,g24_paring_mode 
+0x2d9e 007796 call g24_transmit_succ_rf_config 
+:      007797 g24_transmit_abandon:
+0x2d9f 007798 setarg 0 
+0x2da0 007799 add regc ,offset_24g_txfail_cnt ,contw 
+0x2da1 007800 istore 2 ,contw 
+0x2da2 007804 setarg ensure_off_24g 
+0x2da3 007805 branch g24_store_mem_ensure 
+:      007808 g24_transmit_receive_ack:
+0x2da4 007809 disable user3 
+0x2da5 007810 call g24_transmit 
+0x2da6 007811 call g24_head_ptr2regc 
+0x2da7 007812 add regc ,offset_24g_no_ack ,rega 
+0x2da8 007813 ifetch 1 ,rega 
+0x2da9 007815 beq no_ack_24g ,g24_transmit_no_ack 
+0x2daa 007816 call g24_receive_packet 
+0x2dab 007817 branch g24_end_of_packet 
+:      007818 g24_transmit_no_ack:
+0x2dac 007819 call g24_end_of_packet 
+0x2dad 007820 branch g24_transmit_next_packet 
+:      007823 g24_retransmit:
+0x2dae 007824 bpatch patch16_5 ,mem_patch16 
+0x2daf 007825 add regc ,offset_24g_get_ack_fail ,rega 
+0x2db0 007826 ifetch 1 ,rega 
+0x2db1 007828 increase 1 ,pdata 
+0x2db2 007829 add regc ,offset_24g_get_ack_fail ,contw 
+0x2db3 007830 istore 1 ,contw 
+0x2db4 007832 call g24_fetch_mem_pairing_sm 
+0x2db5 007834 bne state_24g_pairing_success ,g24_tx_paring_retry 
+0x2db6 007835 add regc ,offset_24g_retry ,rega 
+0x2db7 007836 ifetcht 1 ,rega 
+0x2db8 007838 increase 1 ,temp 
+0x2db9 007839 add regc ,offset_24g_retry ,contw 
+0x2dba 007840 istoret 1 ,contw 
+0x2dbb 007842 add regc ,offset_24g_max_retry ,rega 
+0x2dbc 007843 ifetch 1 ,rega 
+0x2dbd 007845 isub temp ,pdata 
+0x2dbe 007846 nbranch g24_transmit_loop ,blank 
+0x2dbf 007847 bpatch patch16_6 ,mem_patch16 
+0x2dc0 007848 call g24_fetch_mem_rf_work_stage 
+0x2dc1 007850 beq 3 ,g24_transmit_pac_fail_hop_stage3 
+0x2dc2 007851 add regc ,offset_24g_hop_pac_retry ,rega 
+0x2dc3 007852 ifetch 1 ,rega 
+0x2dc4 007854 increase 1 ,pdata 
+0x2dc5 007855 add regc ,offset_24g_hop_pac_retry ,contw 
+0x2dc6 007856 istore 1 ,contw 
+0x2dc7 007858 beq 2 ,g24_transmit_hop_pac_fail 
+0x2dc8 007859 call g24_hop_ch_enable 
+0x2dc9 007860 setarg 1 
+0x2dca 007861 call g24_store_mem_max_retry 
+0x2dcb 007863 branch g24_transmit_packet 
+:      007865 g24_tx_paring_retry:
+0x2dcc 007866 add regc ,offset_24g_get_ack_fail ,rega 
+0x2dcd 007867 ifetch 1 ,rega 
+0x2dce 007869 rtnne 0xff 
+0x2dcf 007870 add regc ,offset_24g_get_ack_fail ,contw 
+0x2dd0 007871 call g24_mem_set0 
+0x2dd1 007873 branch g24_stop_24g_mode 
+:      007875 g24_tx_attempt_fail:
+0x2dd2 007876 add regc ,offset_24g_txfail_cnt ,contw 
+0x2dd3 007877 call g24_mem_set0 
+:      007879 g24_stop_24g_mode:
+0x2dd4 007880 jam bt_evt_24g_attempt_fail ,mem_fifo_temp 
+0x2dd5 007881 branch ui_ipc_send_event 
+:      007883 g24_ackpayload_parse:
+0x2dd6 007884 call g24_read_len_pid_crc 
+0x2dd7 007885 add regc ,offset_24g_rxdata_length ,rega 
+0x2dd8 007886 ifetch 1 ,rega 
+0x2dd9 007888 rtn blank 
+0x2dda 007889 iforce loopcnt 
+0x2ddb 007890 add regc ,offset_24g_rxbuf_add2 ,contr 
+0x2ddc 007892 add regc ,offset_24g_rxpayload ,contw 
+0x2ddd 007894 branch memcpy 
+:      007897 g24_read_len_pid_crc:
+0x2dde 007899 call g24_fetch_mem_rxbuf_add1 
+0x2ddf 007901 rshift3 pdata ,pdata 
+0x2de0 007902 add regc ,offset_24g_rxdata_length ,contw 
+0x2de1 007903 istore 1 ,contw 
+0x2de2 007906 increase 1 ,pdata 
+0x2de3 007907 add regc ,offset_24g_rxbuf_add1 ,contr 
+0x2de4 007909 iadd contr ,contr 
+0x2de5 007910 ifetch 3 ,contr 
+0x2de6 007911 add regc ,offset_24g_sta_crc ,contw 
+0x2de7 007912 istore 3 ,contw 
+0x2de8 007915 call g24_fetch_mem_rxbuf_add1 
+0x2de9 007917 rshift pdata ,pdata 
+0x2dea 007918 and pdata ,0x03 ,pdata 
+0x2deb 007919 add regc ,offset_24g_sta_pid ,contw 
+0x2dec 007920 istore 1 ,contw 
+0x2ded 007922 rtn 
+:      007924 g24_prep:
+0x2dee 007925 disable enable_crc 
+0x2def 007926 disable enable_white 
+0x2df0 007927 setarg 0x555555 
+0x2df1 007928 iforce crc24_init 
+0x2df2 007929 rtn 
+:      007931 g24_set_freq_tx:
+0x2df3 007932 call set_sync_on 
+0x2df4 007933 add regc ,offset_24g_ch ,rega 
+0x2df5 007934 ifetcht 1 ,rega 
+0x2df6 007936 branch set_freq_tx 
+:      007938 g24_transmit:
+0x2df7 007939 call g24_prep 
+0x2df8 007940 call g24_set_freq_tx 
+0x2df9 007941 set1 txgfsk ,radio_ctrl 
+0x2dfa 007942 enable encode_fec0 
+0x2dfb 007943 enable is_tx 
+0x2dfc 007944 disable is_rx 
+0x2dfd 007945 call le_enable 
+0x2dfe 007946 call g24_fetch_mem_addr 
+0x2dff 007948 iforce access 
+0x2e00 007949 inject mod ,32 
+0x2e01 007950 enable enable_crc 
+0x2e02 007951 add regc ,offset_24g_txlen ,rega 
+0x2e03 007952 ifetch 1 ,rega 
+0x2e04 007954 iforce loopcnt 
+0x2e05 007955 add regc ,offset_24g_txpayload ,contr 
+:      007957 g24tr_loop:
+0x2e06 007958 ifetch 1 ,contr 
+0x2e07 007959 inject mod ,8 
+0x2e08 007960 loop g24tr_loop 
+0x2e09 007961 enable enable_parity 
+0x2e0a 007962 inject mod ,24 
+0x2e0b 007963 disable enable_parity 
+0x2e0c 007964 until null ,tx_clear 
+0x2e0d 007965 bpatch patch16_7 ,mem_patch16 
+0x2e0e 007966 nop 100 
+0x2e0f 007967 disable encode_fec0 
+0x2e10 007968 rtn 
+:      007970 g24_receive_packet:
+0x2e11 007971 disable user3 
+0x2e12 007972 force 0 ,radio_ctrl 
+0x2e13 007973 add regc ,offset_24g_ch ,rega 
+0x2e14 007974 ifetcht 1 ,rega 
+0x2e15 007976 call set_freq_rx 
+0x2e16 007977 call rf_rx_enable 
+:      007978 g24_receive_rxon:
+0x2e17 007979 call g24_prep 
+0x2e18 007980 enable decode_fec0 
+0x2e19 007981 enable is_rx 
+0x2e1a 007982 disable is_tx 
+0x2e1b 007983 call le_enable 
+0x2e1c 007984 call g24_fetch_mem_addr 
+0x2e1d 007986 iforce access 
+0x2e1e 007987 enable swfine 
+0x2e1f 007988 add regc ,offset_24g_rx_window ,rega 
+0x2e20 007989 ifetch 2 ,rega 
+0x2e21 007991 iforce stop_watch 
+0x2e22 007992 correlate null ,timeout 
+0x2e23 007993 nbranch g24_sync_timeout ,sync 
+0x2e24 007994 enable enable_crc 
+0x2e25 007995 parse demod ,bucket ,8 
+0x2e26 007996 rshift3 pwindow ,pdata 
+0x2e27 007997 add regc ,offset_24g_rxbuf ,contw 
+0x2e28 007998 istore 1 ,contw 
+0x2e29 008000 add regc ,offset_24g_mode ,rega 
+0x2e2a 008001 ifetch 1 ,rega 
+0x2e2b 008003 beq rx_24g ,g24_receive_skip 
+0x2e2c 008004 bpatch patch17_0 ,mem_patch17 
+0x2e2d 008005 add regc ,offset_24g_rxbuf ,rega 
+0x2e2e 008006 ifetch 1 ,rega 
+0x2e2f 008008 add regc ,offset_24g_data_type ,rega 
+0x2e30 008009 ifetcht 1 ,rega 
+0x2e31 008011 icompare bits_data ,temp 
+0x2e32 008012 nbranch g24_end_of_packet ,true 
+:      008013 g24_receive_skip:
+0x2e33 008014 parse demod ,bucket ,8 
+0x2e34 008015 rshift3 pwindow ,pdata 
+0x2e35 008016 istore 1 ,contw 
+0x2e36 008017 rshift3 pdata ,pdata 
+0x2e37 008018 and pdata ,0x1f ,loopcnt 
+0x2e38 008019 branch g24rx_nopayload ,zero 
+:      008020 g24rx_loop:
+0x2e39 008021 parse demod ,bucket ,8 
+0x2e3a 008022 rshift3 pwindow ,pdata 
+0x2e3b 008023 istore 1 ,contw 
+0x2e3c 008024 loop g24rx_loop 
+:      008025 g24rx_nopayload:
+0x2e3d 008026 parse demod ,bucket ,24 
+0x2e3e 008027 rshift32 pdata ,pdata 
+0x2e3f 008028 rshift16 pdata ,pdata 
+0x2e40 008029 istore 3 ,contw 
+0x2e41 008030 branch g24_end_of_packet ,crc_failed 
+0x2e42 008031 enable user3 
+0x2e43 008032 disable decode_fec0 
+0x2e44 008033 rtn 
+:      008036 g24_end_of_packet:
+0x2e45 008037 disable encode_fec0 
+0x2e46 008038 disable decode_fec0 
+0x2e47 008039 disable enable_crc 
+0x2e48 008040 disable enable_white 
+0x2e49 008041 branch shutdown_radio ,is_rx 
+0x2e4a 008042 until null ,tx_clear 
+0x2e4b 008043 nop 100 
+0x2e4c 008044 branch shutdown_radio 
+:      008046 g24_sync_timeout:
+0x2e4d 008047 call rssi_noise 
+0x2e4e 008048 branch g24_end_of_packet 
+:      008050 rssi_noise:
+0x2e4f 008051 call save_rssi 
+0x2e50 008052 rtn blank 
+0x2e51 008053 add regc ,offset_rssi_noise_index ,rega 
+0x2e52 008054 ifetcht 1 ,rega 
+0x2e53 008056 arg mem_rssi_noise_buffer ,rega 
+0x2e54 008058 call rssi_noise_store 
+0x2e55 008059 add regc ,offset_rssi_noise_index ,contw 
+:      008061 g24_contw_istoret_1byte:
+0x2e56 008062 istoret 1 ,contw 
+0x2e57 008063 rtn 
+:      008065 rssi_noise_store:
+0x2e58 008066 arg rssi_buf_len_noise ,regb 
+0x2e59 008067 branch rssi_store 
+:      008085 rssi_store:
+0x2e5a 008086 copy rega ,pdata 
+0x2e5b 008087 iadd temp ,contw 
+0x2e5c 008088 fetch 1 ,mem_rssi 
+0x2e5d 008089 istore 1 ,contw 
+0x2e5e 008090 increase 1 ,temp 
+0x2e5f 008091 copy regb ,pdata 
+0x2e60 008092 iand_into temp 
+0x2e61 008093 rtn 
+:      008095 rssi_average:
+0x2e62 008096 arg 0 ,temp 
+0x2e63 008097 copy rega ,contr 
+:      008098 rssi_average_loop:
+0x2e64 008099 ifetch 1 ,contr 
+0x2e65 008100 iadd temp ,temp 
+0x2e66 008101 loop rssi_average_loop 
+0x2e67 008102 rshift8 temp ,temp 
+0x2e68 008103 rtn 
+:      008105 g24_power_ctrl_init:
+0x2e69 008106 call g24_head_ptr2regc 
+0x2e6a 008107 call g24_power_ctrl_incrs_level1 
+0x2e6b 008108 setarg 1 
+0x2e6c 008109 call g24_store_mem_power_ctrl_level 
+:      008111 g24_power_ctrl_reinit:
+0x2e6d 008112 setarg 0 
+0x2e6e 008113 call g24_store_mem_power_ctrl_pac 
+0x2e6f 008115 istore 1 ,contw 
+0x2e70 008117 rtn 
+:      008119 g24_power_ctrl_pac_incrs:
+0x2e71 008120 call g24_fetch_mem_power_ctrl_pac 
+0x2e72 008122 increase 1 ,pdata 
+:      008123 g24_store_mem_power_ctrl_pac:
+0x2e73 008125 add regc ,offset_power_ctrl_packet_cnt ,contw 
+0x2e74 008126 branch g24_contw_istore_1byte 
+:      008128 g24_power_ctrl_ack_incrs:
+0x2e75 008131 add regc ,offset_power_ctrl_ack_cnt ,rega 
+0x2e76 008132 ifetch 1 ,rega 
+0x2e77 008133 increase 1 ,pdata 
+0x2e78 008134 add regc ,offset_power_ctrl_ack_cnt ,contw 
+0x2e79 008135 branch g24_contw_istore_1byte 
+:      008137 g24_power_ctrl:
+0x2e7a 008138 bpatch patch17_1 ,mem_patch17 
+0x2e7b 008139 call g24_fetch_mem_power_ctrl_pac 
+0x2e7c 008141 sub pdata ,power_ctrl_max_packet_cnt ,null 
+0x2e7d 008142 rtn positive 
+0x2e7e 008143 add regc ,offset_power_ctrl_ack_cnt ,rega 
+0x2e7f 008144 ifetcht 1 ,rega 
+0x2e80 008146 isub temp ,temp 
+0x2e81 008147 call g24_power_ctrl_reinit 
+0x2e82 008148 setarg offset_power_ctrl_threshold_up 
+0x2e83 008149 iadd regc ,rega 
+0x2e84 008150 ifetch 1 ,rega 
+0x2e85 008152 isub temp ,null 
+0x2e86 008153 nbranch g24_power_ctrl_incrs ,positive 
+0x2e87 008154 setarg offset_power_ctrl_threshold_down 
+0x2e88 008155 iadd regc ,rega 
+0x2e89 008156 ifetch 1 ,rega 
+0x2e8a 008158 isub temp ,null 
+0x2e8b 008159 branch g24_power_ctrl_decrs ,positive 
+0x2e8c 008160 rtn 
+:      008162 g24_power_ctrl_incrs:
+0x2e8d 008163 add regc ,offset_power_ctrl_level ,rega 
+0x2e8e 008164 ifetch 1 ,rega 
+0x2e8f 008166 beq 2 ,g24_power_ctrl_incrs_level2 
+0x2e90 008167 increase 1 ,pdata 
+0x2e91 008168 call g24_store_mem_power_ctrl_level 
+0x2e92 008170 beq 1 ,g24_power_ctrl_incrs_level1 
+:      008171 g24_power_ctrl_incrs_level2:
+0x2e93 008172 setarg power_ctrl_losspac_thresh_up2 
+0x2e94 008173 call g24_store_mem_power_ctrl_threshold_up 
+0x2e95 008175 setarg power_ctrl_losspac_thresh_down2 
+0x2e96 008176 call g24_store_mem_power_ctrl_threshold_down 
+0x2e97 008179 add regc ,offset_power_ctrl_txpwr_level2 ,rega 
+0x2e98 008181 branch g24_ifetch_rega_store_mem_txpower 
+:      008183 g24_power_ctrl_decrs:
+0x2e99 008184 add regc ,offset_power_ctrl_level ,rega 
+0x2e9a 008185 ifetch 1 ,rega 
+0x2e9b 008187 beq 0 ,g24_power_ctrl_decrs_level0 
+0x2e9c 008188 increase -1 ,pdata 
+0x2e9d 008189 call g24_store_mem_power_ctrl_level 
+0x2e9e 008191 beq 0 ,g24_power_ctrl_decrs_level0 
+:      008192 g24_power_ctrl_decrs_level1:
+:      008195 g24_power_ctrl_incrs_level1:
+0x2e9f 008196 setarg power_ctrl_losspac_thresh_up1 
+0x2ea0 008197 call g24_store_mem_power_ctrl_threshold_up 
+0x2ea1 008199 setarg power_ctrl_losspac_thresh_down1 
+0x2ea2 008200 call g24_store_mem_power_ctrl_threshold_down 
+0x2ea3 008203 setarg offset_power_ctrl_txpwr_level1 
+:      008204 g24_iadd_offset_mem_txpower:
+0x2ea4 008205 iadd regc ,rega 
+:      008206 g24_ifetch_rega_store_mem_txpower:
+0x2ea5 008207 ifetch 1 ,rega 
+0x2ea6 008209 branch g24_store_mem_txpower 
+:      008211 g24_power_ctrl_decrs_level0:
+0x2ea7 008214 setarg power_ctrl_losspac_thresh_up0 
+0x2ea8 008215 call g24_store_mem_power_ctrl_threshold_up 
+0x2ea9 008217 setarg power_ctrl_losspac_thresh_down0 
+0x2eaa 008218 call g24_store_mem_power_ctrl_threshold_down 
+0x2eab 008221 setarg offset_power_ctrl_txpwr_level0 
+0x2eac 008223 branch g24_iadd_offset_mem_txpower 
+:      008237 g24_start_pairing_sm1:
+0x2ead 008238 set1 mark_24g ,mark 
+0x2eae 008239 call g24_pair_init 
+:      008240 g24_set_pairing_sm_1:
+0x2eaf 008242 setarg state_24g_pairing_1 
+0x2eb0 008243 branch g24_store_mem_pairing_sm 
+:      008245 g24_pairing_sm:
+0x2eb1 008246 add regc ,offset_24g_ensure ,rega 
+0x2eb2 008247 ifetch 1 ,rega 
+0x2eb3 008249 beq ensure_on_24g ,enable_user 
+0x2eb4 008250 call g24_fetch_mem_pairing_sm 
+0x2eb5 008252 beq state_24g_pairing_1 ,g24_pairing_sm_1 
+0x2eb6 008253 beq state_24g_pairing_2 ,g24_pairing_sm_2 
+0x2eb7 008254 beq state_24g_pairing_3 ,g24_pairing_sm_3 
+0x2eb8 008255 branch assert 
+:      008257 g24_pairing_sm_1:
+0x2eb9 008258 setarg state_24g_pairing_1_waiting_ack 
+0x2eba 008259 call g24_store_mem_pairing_sm 
+0x2ebb 008261 jam 0xaa ,mem_24g_common_temp 
+0x2ebc 008262 branch g24_pairing_sm_common 
+:      008263 g24_pairing_sm_2:
+0x2ebd 008264 setarg state_24g_pairing_2_waiting_ack 
+0x2ebe 008265 call g24_store_mem_pairing_sm 
+0x2ebf 008267 jam 0x55 ,mem_24g_common_temp 
+0x2ec0 008268 branch g24_pairing_sm_common 
+:      008269 g24_pairing_sm_3:
+0x2ec1 008270 setarg state_24g_pairing_3_waiting_ack 
+0x2ec2 008271 call g24_store_mem_pairing_sm 
+0x2ec3 008273 jam 0x22 ,mem_24g_common_temp 
+:      008274 g24_pairing_sm_common:
+0x2ec4 008275 call g24_fetch_mem_data_type 
+0x2ec5 008277 and_into bits_data ,pdata 
+0x2ec6 008278 store 1 ,mem_24g_common_temp + 1 
+0x2ec7 008279 call g24_fetch_mem_device_addr 
+0x2ec8 008281 store 4 ,mem_24g_common_temp + 2 
+:      008282 g24_put_pairing_data_in_buff:
+0x2ec9 008283 jam 0 ,mem_24g_common_temp + 6 
+0x2eca 008284 arg mem_24g_common_temp ,rega 
+0x2ecb 008285 arg 7 ,temp 
+0x2ecc 008286 call g24_put_data_in_buff 
+0x2ecd 008287 call g24_transmit_prep 
+0x2ece 008288 call g24_txdata_enable_tx 
+0x2ecf 008289 branch enable_user 
+:      008291 g24_paring_mode:
+0x2ed0 008292 call g24_fetch_mem_pairing_sm 
+0x2ed1 008294 rtneq state_24g_pairing_success 
+0x2ed2 008295 beq state_24g_pairing_1_waiting_ack ,g24_pairing_sm_1_waiting_ack 
+0x2ed3 008296 beq state_24g_pairing_2_waiting_ack ,g24_pairing_sm_2_waiting_ack 
+0x2ed4 008297 beq state_24g_pairing_3_waiting_ack ,g24_pairing_sm_3_waiting_ack 
+0x2ed5 008298 rtn 
+:      008300 g24_pairing_sm_1_waiting_ack:
+0x2ed6 008301 setarg state_24g_pairing_2 
+0x2ed7 008302 call g24_store_mem_pairing_sm 
+0x2ed8 008304 branch g24_transmit_abandon 
+:      008305 g24_pairing_sm_2_waiting_ack:
+0x2ed9 008306 setarg state_24g_pairing_3 
+0x2eda 008307 call g24_store_mem_pairing_sm 
+0x2edb 008309 branch g24_transmit_abandon 
+:      008310 g24_pairing_sm_3_waiting_ack:
+0x2edc 008311 setarg state_24g_pairing_success 
+0x2edd 008312 call g24_store_mem_pairing_sm 
+0x2ede 008314 jam bt_evt_24g_pairing_complete ,mem_fifo_temp 
+0x2edf 008315 call ui_ipc_send_event 
+0x2ee0 008316 add regc ,offset_24g_rxpayload_add2 ,rega 
+0x2ee1 008317 ifetch 4 ,rega 
+0x2ee2 008319 call g24_store_mem_addr 
+0x2ee3 008321 branch g24_transmit_abandon 
+:      008323 g24_auto_pair_start:
+0x2ee4 008324 set0 mark_24g ,mark 
+0x2ee5 008325 call g24_auto_pair_set_device_info 
+0x2ee6 008326 call g24_tx_attemp_data_prep 
+:      008327 g24_auto_pair_restart:
+0x2ee7 008328 call g24_set0_mem_check_dongle_times 
+:      008329 g24_auto_pair_start_loop:
+0x2ee8 008330 nop 2000 
+0x2ee9 008331 call g24_fetch_mem_check_dongle_times 
+0x2eea 008332 beq 0xff ,g24_stop_24g_mode 
+0x2eeb 008333 call g24_transmit_receive_ack 
+0x2eec 008334 nbranch g24_auto_pair_retry ,sync 
+0x2eed 008335 nbranch g24_auto_pair_retry ,user3 
+0x2eee 008336 call g24_ackpayload_parse 
+0x2eef 008337 call g24_head_ptr2regc 
+0x2ef0 008338 add regc ,offset_24g_paring_addr ,rega 
+0x2ef1 008339 ifetcht 4 ,rega 
+0x2ef2 008340 call g24_fetch_mem_addr_isub_temp 
+0x2ef3 008341 branch g24_start_pairing_sm1 ,zero 
+0x2ef4 008342 call g24_head_ptr2regc 
+0x2ef5 008343 add regc ,offset_24g_rxpayload_add2 ,rega 
+0x2ef6 008344 ifetch 4 ,rega 
+0x2ef7 008345 beq 0 ,g24_auto_pair_restart 
+0x2ef8 008346 call g24_store_mem_addr 
+0x2ef9 008347 branch g24_tx_attemp_dongle_succ 
+:      008349 g24_auto_pair_retry:
+0x2efa 008350 call g24_fetch_mem_check_dongle_times 
+0x2efb 008351 increase 1 ,pdata 
+0x2efc 008352 call g24_store_mem_check_dongle_times 
+0x2efd 008354 call g24_fetch_mem_auto_paring_switch 
+0x2efe 008355 increase 1 ,pdata 
+0x2eff 008356 and_into 1 ,pdata 
+0x2f00 008357 call g24_store_mem_auto_paring_switch 
+0x2f01 008358 beq 0 ,g24_auto_pair_device_attemp 
+0x2f02 008359 beq 1 ,g24_auto_pair_pair_attemp 
+0x2f03 008360 rtn 
+:      008362 g24_fetch_mem_auto_paring_switch:
+0x2f04 008363 setarg offset_24g_auto_pair_switch 
+0x2f05 008364 branch g24_set_rega_ifetch_1byte 
+:      008365 g24_store_mem_auto_paring_switch:
+0x2f06 008366 arg offset_24g_auto_pair_switch ,rega 
+0x2f07 008367 branch g24_set_contw_with_regb_store_1byte 
+:      008369 g24_auto_pair_set_device_info:
+0x2f08 008370 call g24_store_mem_tx_power 
+0x2f09 008371 call g24_fetch_mem_device_addr 
+0x2f0a 008372 call g24_store_mem_addr 
+0x2f0b 008373 branch g24_ch 
+:      008375 g24_auto_pair_device_attemp:
+0x2f0c 008376 call g24_auto_pair_set_device_info 
+0x2f0d 008377 branch g24_auto_pair_start_loop 
+:      008379 g24_auto_pair_pair_attemp:
+0x2f0e 008380 call g24_pair_init 
+0x2f0f 008381 branch g24_auto_pair_start_loop 
+:      008384 g24_start_24g_mode:
+0x2f10 008385 set0 mark_24g ,mark 
+0x2f11 008386 call g24_ch 
+0x2f12 008387 call g24_fetch_mem_pairing_sm 
+0x2f13 008389 rtnne state_24g_pairing_success 
+0x2f14 008390 call g24_tx_attemp_data_prep 
+0x2f15 008391 call g24_set0_mem_check_dongle_times 
+:      008393 g24_tx_attemp_dongle_loop:
+0x2f16 008394 nop 2000 
+0x2f17 008395 call g24_fetch_mem_check_dongle_times 
+0x2f18 008397 beq 0xff ,g24_stop_24g_mode 
+0x2f19 008398 call g24_transmit_receive_ack 
+0x2f1a 008399 nbranch g24_attemp_txdata_retry ,sync 
+0x2f1b 008400 nbranch g24_attemp_txdata_retry ,user3 
+:      008401 g24_tx_attemp_dongle_succ:
+0x2f1c 008402 set1 mark_24g ,mark 
+0x2f1d 008403 call g24_set0_mem_check_dongle_times 
+0x2f1e 008404 setarg state_24g_pairing_success 
+0x2f1f 008405 call g24_store_mem_pairing_sm 
+:      008407 g24_app_tx_attempt_success:
+0x2f20 008408 jam bt_evt_24g_attempt_success ,mem_fifo_temp 
+0x2f21 008409 branch ui_ipc_send_event 
+:      008411 g24_tx_attemp_data_prep:
+0x2f22 008412 set1 mark_24g_conext ,mark 
+0x2f23 008413 jam 0xff ,mem_24g_common_temp 
+0x2f24 008414 call g24_fetch_mem_data_type 
+0x2f25 008416 call g24_put_data_in_buff_pre 
+0x2f26 008417 branch g24_transmit_prep 
+:      008419 g24_attemp_txdata_retry:
+0x2f27 008420 call g24_fetch_mem_check_dongle_times 
+0x2f28 008422 increase 1 ,pdata 
+0x2f29 008423 call g24_store_mem_check_dongle_times 
+0x2f2a 008425 call g24_ch 
+0x2f2b 008426 branch g24_tx_attemp_dongle_loop 
+:      008428 g24_check_51cmd_start_24g:
+0x2f2c 008429 call g24_store_mem_tx_power 
+0x2f2d 008432 setarg state_24g_pairing_success 
+0x2f2e 008433 call g24_store_mem_pairing_sm 
+0x2f2f 008435 branch g24_start_24g_mode 
+:      008444 dongle_init:
+0x2f30 008445 bpatch patch17_2 ,mem_patch17 
+0x2f31 008446 call g24_head_ptr2regc 
+0x2f32 008447 setarg dongle_rxdata_type1 
+0x2f33 008448 add regc ,offset_24g_cb_rxdata_type1 ,contw 
+0x2f34 008449 istore 2 ,contw 
+0x2f35 008451 call g24_receive_init 
+0x2f36 008452 call usb_init 
+0x2f37 008453 call g24_fetch_mem_pair_mode 
+0x2f38 008455 bpatch patch17_3 ,mem_patch17 
+0x2f39 008456 beq 0x00 ,dongle_auto_bind 
+0x2f3a 008457 beq 0x01 ,dongle_pc_bind 
+0x2f3b 008458 beq 0x0f ,dongle_all_powerful 
+0x2f3c 008459 branch assert 
+:      008461 g24_receive_init:
+0x2f3d 008462 call g24_store_mem_tx_power_temp 
+0x2f3e 008463 arg 0x80 ,loopcnt 
+0x2f3f 008464 arg mem_rssi_noise_buffer ,contw 
+0x2f40 008465 branch memset0 
+:      008467 dongle_all_powerful:
+0x2f41 008468 call dongle_check_mode 
+:      008469 dongle_all_powerful_loop:
+0x2f42 008470 call g24_dongle_work_mode 
+0x2f43 008471 call usb_isr 
+0x2f44 008472 branch dongle_all_powerful_loop 
+:      008474 dongle_pc_bind:
+0x2f45 008475 bpatch patch17_4 ,mem_patch17 
+0x2f46 008476 call dongle_check_mode 
+:      008477 dongle_pc_bind_loop:
+0x2f47 008478 call g24_dongle_work_mode 
+0x2f48 008479 call g24_dongle_bind_mode 
+0x2f49 008480 call usb_isr 
+0x2f4a 008481 call dongle_usb_dispatch 
+0x2f4b 008482 branch dongle_pc_bind_loop 
+:      008484 dongle_check_mode:
+0x2f4c 008488 call g24_set_work_mem_dongle_work_mode 
+0x2f4d 008489 call g24_set0_mem_dongle_mode_init 
+0x2f4e 008490 branch g24_set0_mem_ackpayload_enable 
+:      008492 g24_dongle_work_mode:
+0x2f4f 008493 call g24_fetch_mem_dongle_work_mode 
+0x2f50 008495 rtnne dongle_work 
+:      008496 g24_dongle_work_mode_start:
+0x2f51 008497 call g24_dongle_work_init 
+0x2f52 008498 call g24_ch_process 
+0x2f53 008499 call g24_receive_packet_start 
+0x2f54 008500 branch g24_blank_data_process 
+:      008502 g24_dongle_work_init:
+0x2f55 008503 call g24_fetch_mem_dongle_mode_init 
+0x2f56 008505 rtnbit1 dongle_work 
+0x2f57 008506 set1 dongle_work ,pdata 
+0x2f58 008507 call g24_store_mem_dongle_mode_init 
+0x2f59 008509 call g24_store_mem_tx_power 
+0x2f5a 008512 call g24_set0_mem_ackpayload_enable 
+0x2f5b 008514 jam 0 ,mem_usb_tx_enable 
+0x2f5c 008515 call g24_set1_mem_abort_pac 
+0x2f5d 008517 call g24_dongle_init 
+:      008518 g24_rx_interrupt_clear:
+0x2f5e 008519 add regc ,offset_24g_rxbuf ,contw 
+0x2f5f 008521 arg 66 ,loopcnt 
+0x2f60 008522 branch clear_mem 
+:      008524 g24_dongle_init:
+0x2f61 008525 call g24_set0_mem_pid 
+0x2f62 008527 call g24_fetch_mem_rx_addr 
+0x2f63 008529 call g24_store_mem_addr 
+0x2f64 008531 branch g24_ch 
+:      008533 g24_ch_process:
+0x2f65 008534 bpatch patch17_5 ,mem_patch17 
+0x2f66 008535 call g24_fetch_mem_abort_pac 
+0x2f67 008537 beq 1 ,g24_noise_rssi 
+0x2f68 008538 call g24_fetch_mem_hop_pac 
+0x2f69 008540 beq 1 ,g24_ch 
+0x2f6a 008541 setarg offset_24g_hop_btclk 
+0x2f6b 008542 iadd regc ,rega 
+0x2f6c 008543 ifetcht 4 ,rega 
+0x2f6d 008545 copy clkn_bt ,pdata 
+0x2f6e 008546 isub temp ,null 
+0x2f6f 008547 ncall g24_timer_timeout ,positive 
+0x2f70 008548 copy pdata ,regb 
+0x2f71 008549 setarg offset_24g_hop_btclk 
+0x2f72 008550 iadd regc ,rega 
+0x2f73 008551 ifetch 4 ,rega 
+0x2f74 008552 copy pdata ,temp 
+0x2f75 008554 setarg offset_24g_hop_interval 
+0x2f76 008555 iadd regc ,rega 
+0x2f77 008556 copy temp ,pdata 
+0x2f78 008557 ifetcht 1 ,rega 
+0x2f79 008559 iadd temp ,temp 
+0x2f7a 008560 copy regb ,pdata 
+0x2f7b 008561 isub temp ,null 
+0x2f7c 008562 nrtn positive 
+0x2f7d 008563 set0 28 ,pdata 
+0x2f7e 008564 setarg offset_24g_hop_btclk 
+0x2f7f 008565 iadd regc ,contw 
+0x2f80 008566 istore 4 ,contw 
+:      008568 g24_ch_update:
+0x2f81 008569 call g24_ch 
+0x2f82 008570 call g24_fetch_mem_rf_laststa 
+0x2f83 008572 increase 1 ,pdata 
+0x2f84 008573 call g24_store_mem_rf_laststa 
+0x2f85 008575 rtnne 2 
+0x2f86 008576 call g24_set0_mem_rf_laststa 
+0x2f87 008580 branch g24_set1_mem_abort_pac 
+:      008582 g24_ch_timer_reinit:
+0x2f88 008583 copy clkn_bt ,pdata 
+0x2f89 008584 arg offset_24g_hop_btclk ,rega 
+0x2f8a 008585 call g24_set_contw_with_temp 
+0x2f8b 008586 istore 4 ,contw 
+0x2f8c 008590 branch g24_set0_mem_rf_laststa 
+:      008592 g24_noise_rssi:
+0x2f8d 008593 arg mem_rssi_noise_buffer ,rega 
+0x2f8e 008594 call g24_noise_rssi_average 
+0x2f8f 008595 add regc ,offset_rssi_noise_avg ,contw 
+0x2f90 008596 istoret 1 ,contw 
+0x2f91 008598 sub temp ,rssi_thresh_noise ,null 
+0x2f92 008599 nrtn positive 
+0x2f93 008600 branch g24_ch 
+:      008602 g24_noise_rssi_average:
+0x2f94 008603 arg rssi_buf_len_noise + 1 ,loopcnt 
+0x2f95 008604 branch rssi_average 
+:      008606 g24_blank_data_process:
+0x2f96 008607 call g24_ms_blank_data 
+0x2f97 008608 call g24_kb_blank_data 
+0x2f98 008609 branch g24_kb_mul_blank_data 
+:      008611 g24_ms_blank_data:
+0x2f99 008612 setarg offset_24g_ms_blank_data_enable 
+0x2f9a 008613 call g24_set_rega_ifetch_1byte 
+0x2f9b 008615 rtn blank 
+0x2f9c 008616 arg timer_ms_blank ,queue 
+0x2f9d 008617 call timer_check 
+0x2f9e 008618 nrtn blank 
+0x2f9f 008619 call g24_set0_mem_ms_blank_data_enable 
+:      008621 g24_ms_blank_data_2usb:
+0x2fa0 008622 setarg ms_report_id 
+0x2fa1 008623 store 1 ,mem_usb_mouse_data 
+0x2fa2 008624 setarg 0 
+0x2fa3 008625 istore 7 ,contw 
+0x2fa4 008626 branch g24_data_type1_usbtx_enable 
+:      008628 g24_kb_blank_data:
+0x2fa5 008629 setarg offset_24g_kb_blank_data_enable 
+0x2fa6 008630 call g24_set_rega_ifetch_1byte 
+0x2fa7 008632 rtn blank 
+0x2fa8 008633 arg timer_kb_blank ,queue 
+0x2fa9 008634 call timer_check 
+0x2faa 008635 nrtn blank 
+0x2fab 008636 call g24_set0_mem_kb_blank_data_enable 
+:      008638 g24_kb_blank_data_2usb:
+0x2fac 008639 arg mem_usb_kb_data ,contw 
+0x2fad 008640 arg 2 ,loopcnt 
+0x2fae 008641 call memset0 
+0x2faf 008642 jam kb_normal_report_id ,mem_usb_kb_data 
+0x2fb0 008643 branch g24_kb_data_into_ep1_fifo 
+:      008645 g24_kb_mul_blank_data:
+0x2fb1 008646 setarg offset_24g_kb_mul_blank_data_enable 
+0x2fb2 008647 call g24_set_rega_ifetch_1byte 
+0x2fb3 008649 rtn blank 
+0x2fb4 008650 arg timer_kb_mul_blank ,queue 
+0x2fb5 008651 call timer_check 
+0x2fb6 008652 nrtn blank 
+0x2fb7 008653 call g24_set0_mem_kb_mul_blank_data_enable 
+:      008655 g24_kb_mul_blank_data_2usb:
+0x2fb8 008656 arg mem_usb_kb_multikey ,contw 
+0x2fb9 008657 arg 2 ,loopcnt 
+0x2fba 008658 call memset0 
+0x2fbb 008659 jam kb_multikey_report_id ,mem_usb_kb_multikey 
+0x2fbc 008660 branch g24_kb_mul_data_into_ep2_fifo 
+:      008662 g24_dongle_bind_mode:
+0x2fbd 008663 call g24_fetch_mem_dongle_work_mode 
+0x2fbe 008665 rtnne dongle_bind 
+0x2fbf 008666 call g24_dongle_bind_init 
+0x2fc0 008667 branch g24_dongle_bind_data_process 
+:      008669 g24_dongle_bind_init:
+0x2fc1 008670 call g24_fetch_mem_dongle_mode_init 
+0x2fc2 008672 rtnbit1 dongle_bind 
+0x2fc3 008673 set1 dongle_bind ,pdata 
+0x2fc4 008674 call g24_store_mem_dongle_mode_init 
+0x2fc5 008676 call g24_set1_mem_ackpayload_enable 
+0x2fc6 008678 call g24_pair_init 
+0x2fc7 008679 setarg 0 
+0x2fc8 008680 arg offset_dongle_ms_bind_step ,rega 
+0x2fc9 008681 call g24_set_contw_with_temp 
+0x2fca 008683 branch g24_contw_istore_3byte 
+:      008685 g24_dongle_bind_data_process:
+0x2fcb 008686 call g24_receive_transmit_ack 
+0x2fcc 008687 nbranch g24_rx_interrupt_clear ,user3 
+0x2fcd 008688 add regc ,offset_24g_rxbuf ,contr 
+0x2fce 008689 setarg offset_24g_rxdata_temp 
+0x2fcf 008690 iadd regc ,contw 
+0x2fd0 008691 arg 8 ,loopcnt 
+0x2fd1 008692 call memcpy 
+0x2fd2 008693 setarg offset_24g_rxdata_temp_add2 
+0x2fd3 008694 call g24_set_rega_ifetch_1byte 
+0x2fd4 008695 beq datatype_bind ,g24_dongle_bind_first_step 
+0x2fd5 008696 beq datatype_config ,g24_dongle_bind_second_step 
+0x2fd6 008697 beq datatype_ok ,g24_dongle_bind_third_step 
+0x2fd7 008698 beq 0xff ,g24_data_attemp 
+0x2fd8 008699 branch g24_rx_interrupt_clear 
+:      008701 g24_dongle_bind_first_step:
+0x2fd9 008702 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x2fda 008703 beq bind_mouse ,g24_dongle_bind_first_step_mouse 
+0x2fdb 008704 beq bind_keyboard ,g24_dongle_bind_first_step_keyboard 
+0x2fdc 008705 rtn 
+:      008706 g24_dongle_bind_first_step_mouse:
+0x2fdd 008707 setarg 1 
+0x2fde 008708 call g24_store_mem_ms_bind_step 
+:      008710 g24_dongle_bind_ms_payload_cfg:
+0x2fdf 008711 setarg datatype_mouse 
+0x2fe0 008712 call g24_store_mem_bind_payload 
+:      008714 g24_dongle_bind_payload_cfg:
+0x2fe1 008715 setarg 0x80 
+0x2fe2 008716 arg offset_24g_bind_payload_add1 ,rega 
+0x2fe3 008717 call g24_set_contw_with_regb_store_1byte 
+0x2fe4 008719 call g24_fetch_mem_rx_addr 
+0x2fe5 008721 arg offset_24g_bind_payload_add2 ,rega 
+0x2fe6 008722 call g24_set_contw_with_temp 
+0x2fe7 008724 branch g24_contw_istore_4byte 
+:      008726 g24_dongle_bind_first_step_keyboard:
+0x2fe8 008727 setarg 1 
+0x2fe9 008728 call g24_store_mem_kb_bind_step 
+:      008730 g24_dongle_bind_kb_payload_cfg:
+0x2fea 008731 setarg datatype_keyboard 
+0x2feb 008732 call g24_store_mem_bind_payload 
+0x2fec 008734 branch g24_dongle_bind_payload_cfg 
+:      008736 g24_dongle_bind_second_step:
+0x2fed 008737 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x2fee 008738 beq bind_mouse ,g24_dongle_bind_second_step_mouse 
+0x2fef 008739 beq bind_keyboard ,g24_dongle_bind_second_step_keyboard 
+0x2ff0 008740 rtn 
+:      008741 g24_dongle_bind_second_step_mouse:
+0x2ff1 008742 call g24_dongle_bind_ms_payload_cfg 
+0x2ff2 008743 setarg offset_dongle_ms_bind_step 
+0x2ff3 008744 call g24_set_rega_ifetch_1byte 
+0x2ff4 008746 beq 1 ,g24_dongle_ms_bind_step_set2 
+0x2ff5 008747 rtn 
+:      008748 g24_dongle_ms_bind_step_set2:
+0x2ff6 008749 setarg 2 
+:      008751 g24_store_mem_ms_bind_step:
+0x2ff7 008752 arg offset_dongle_ms_bind_step ,rega 
+0x2ff8 008753 branch g24_set_contw_with_regb_store_1byte 
+:      008755 g24_dongle_bind_second_step_keyboard:
+0x2ff9 008756 call g24_dongle_bind_kb_payload_cfg 
+0x2ffa 008757 setarg offset_dongle_kb_bind_step 
+0x2ffb 008758 call g24_set_rega_ifetch_1byte 
+0x2ffc 008760 beq 1 ,g24_dongle_kb_bind_step_set2 
+0x2ffd 008761 rtn 
+:      008762 g24_dongle_kb_bind_step_set2:
+0x2ffe 008763 setarg 2 
+:      008765 g24_store_mem_kb_bind_step:
+0x2fff 008766 arg offset_dongle_kb_bind_step ,rega 
+0x3000 008767 branch g24_set_contw_with_regb_store_1byte 
+:      008769 g24_dongle_bind_third_step:
+0x3001 008770 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x3002 008771 beq bind_mouse ,g24_dongle_bind_third_step_mouse 
+0x3003 008772 beq bind_keyboard ,g24_dongle_bind_third_step_keyboard 
+0x3004 008773 rtn 
+:      008774 g24_dongle_bind_third_step_mouse:
+0x3005 008775 setarg offset_dongle_ms_bind_step 
+0x3006 008776 call g24_set_rega_ifetch_1byte 
+0x3007 008778 beq 2 ,g24_dongle_ms_bind_step_success 
+0x3008 008779 rtn 
+:      008780 g24_dongle_ms_bind_step_success:
+0x3009 008781 call g24_fetch_mem_bind_device_status 
+0x300a 008783 or_into 0x01 ,pdata 
+0x300b 008784 call g24_store_mem_bind_device_status 
+:      008786 g24_dongle_bind_exit:
+0x300c 008787 setarg 0 
+0x300d 008788 setarg offset_dongle_ms_bind_step 
+0x300e 008789 iadd regc ,contw 
+0x300f 008790 istore 2 ,contw 
+0x3010 008791 branch g24_rx_interrupt_clear 
+:      008793 g24_dongle_bind_third_step_keyboard:
+0x3011 008794 setarg offset_dongle_kb_bind_step 
+0x3012 008795 call g24_set_rega_ifetch_1byte 
+0x3013 008797 bne 0 ,g24_dongle_kb_bind_step_success 
+0x3014 008798 rtn 
+:      008799 g24_dongle_kb_bind_step_success:
+0x3015 008800 call g24_fetch_mem_bind_device_status 
+0x3016 008802 or_into 0x02 ,pdata 
+0x3017 008803 call g24_store_mem_bind_device_status 
+0x3018 008805 branch g24_dongle_bind_exit 
+:      008808 dongle_usb_dispatch:
+0x3019 008809 fetch 1 ,mem_usb0_get_set_report 
+0x301a 008810 rtn blank 
+0x301b 008811 jam 0 ,mem_usb0_get_set_report 
+0x301c 008812 fetch 2 ,mem_usb_setup_bvalue_temp 
+0x301d 008813 arg pc_set_report ,temp 
+0x301e 008814 isub temp ,null 
+0x301f 008815 nrtn zero 
+0x3020 008817 fetch 1 ,mem_usb0_set_report_data 
+0x3021 008818 rtnne pc_report_id 
+0x3022 008819 fetch 1 ,mem_usb0_set_report_data + 1 
+0x3023 008820 bpatch patch17_6 ,mem_patch17 
+0x3024 008821 beq command_mode ,dongle_dispose_cmd_mode 
+0x3025 008822 beq command_bind ,dongle_dispose_cmd_bind 
+0x3026 008823 beq command_current_project ,dongle_dispose_cmd_current_project 
+0x3027 008824 beq command_current_mode ,dongle_dispose_cmd_current_mode 
+0x3028 008825 beq command_current_fw_version ,dongle_dispose_cmd_current_fw_version 
+0x3029 008826 beq command_user_defined ,dongle_dispose_cmd_user_defined 
+:      008827 usb0_data_ready_report_set0:
+0x302a 008828 jam 0 ,mem_usb0_data_ready_report 
+0x302b 008829 rtn 
+:      008830 dongle_dispose_cmd_bind:
+0x302c 008831 fetch 1 ,mem_usb0_set_report_data + 2 
+0x302d 008832 beq com_bind_get ,dongle_dispose_cmd_get_bind 
+0x302e 008833 beq com_bind_exit ,dongle_dispose_cmd_exit_bind 
+0x302f 008834 beq com_read_mode ,dongle_dispose_cmd_read_mode 
+0x3030 008835 branch usb0_data_ready_report_set0 
+:      008836 dongle_dispose_cmd_get_bind:
+0x3031 008837 call g24_fetch_mem_bind_device_status 
+0x3032 008839 store 1 ,mem_usb0_get_report_data + 1 
+0x3033 008840 branch usb0_data_ready_report_set1 
+:      008841 dongle_dispose_cmd_exit_bind:
+0x3034 008842 call g24_set_work_mem_dongle_work_mode 
+0x3035 008844 call g24_set0_mem_dongle_mode_init 
+0x3036 008846 call g24_fetch_mem_bind_device_status 
+0x3037 008848 store 1 ,mem_usb0_get_report_data + 1 
+0x3038 008849 branch usb0_data_ready_report_set1 
+:      008851 dongle_dispose_cmd_read_mode:
+:      008852 dongle_dispose_in_bind_mode:
+0x3039 008853 jam command_bind ,mem_usb0_get_report_data + 1 
+0x303a 008854 branch usb0_data_ready_report_set1 
+:      008856 dongle_dispose_cmd_mode:
+0x303b 008857 fetch 1 ,mem_usb0_set_report_data + 2 
+0x303c 008858 beq com_mode_bind ,dongle_enter_bind_mode 
+0x303d 008860 branch usb0_data_ready_report_set0 
+:      008861 dongle_enter_bind_mode:
+0x303e 008864 call g24_bind_mode_enable 
+:      008865 usb0_data_ready_report_set1:
+0x303f 008866 jam 1 ,mem_usb0_data_ready_report 
+0x3040 008867 rtn 
+:      008872 dongle_dispose_cmd_current_project:
+0x3041 008873 jam product_id ,mem_usb0_get_report_data + 1 
+0x3042 008874 branch usb0_data_ready_report_set1 
+:      008876 dongle_dispose_cmd_current_mode:
+0x3043 008877 call g24_fetch_mem_dongle_work_mode 
+0x3044 008879 beq dongle_work ,dongle_dispose_in_work_mode 
+0x3045 008880 beq dongle_bind ,dongle_dispose_in_bind_mode 
+0x3046 008882 rtn 
+:      008883 dongle_dispose_in_work_mode:
+0x3047 008884 jam command_mode ,mem_usb0_get_report_data + 1 
+0x3048 008885 branch usb0_data_ready_report_set1 
+:      008890 dongle_dispose_cmd_current_fw_version:
+0x3049 008891 jam fw_version0 ,mem_usb0_get_report_data + 1 
+0x304a 008892 jam fw_version1 ,mem_usb0_get_report_data + 2 
+0x304b 008893 jam fw_version2 ,mem_usb0_get_report_data + 3 
+0x304c 008894 branch usb0_data_ready_report_set1 
+:      008896 dongle_dispose_cmd_user_defined:
+0x304d 008898 call g24_set1_mem_ackpayload_enable 
+0x304e 008899 fetch 1 ,mem_usb0_set_report_data + 2 
+0x304f 008900 increase 2 ,pdata 
+0x3050 008901 copy pdata ,loopcnt 
+0x3051 008902 arg mem_usb0_set_report_data ,contr 
+0x3052 008903 setarg offset_24g_ackpayload 
+0x3053 008904 iadd regc ,contw 
+0x3054 008905 branch memcpy 
+:      008908 dongle_auto_bind:
+0x3055 008909 bpatch patch17_7 ,mem_patch17 
+0x3056 008910 call g24_mode_switch_init 
+:      008911 dongle_auto_bind_loop:
+0x3057 008912 call g24_receive_process 
+0x3058 008913 call usb_isr 
+0x3059 008914 branch dongle_auto_bind_loop 
+:      008916 g24_dongle_work_mode_auto:
+0x305a 008917 call g24_fetch_mem_dongle_work_mode 
+0x305b 008919 rtnne dongle_work 
+0x305c 008920 call g24_dongle_work_mode_start 
+0x305d 008921 branch g24_rx_nodata_process 
+:      008923 g24_dongle_bind_mode_auto:
+0x305e 008924 call g24_fetch_mem_dongle_work_mode 
+0x305f 008926 rtnne dongle_bind 
+0x3060 008927 call g24_dongle_bind_init 
+0x3061 008928 call g24_dongle_bind_data_process 
+0x3062 008929 call g24_fetch_mem_bind_device_status 
+0x3063 008931 rtn blank 
+0x3064 008932 call g24_set0_mem_mode_switch 
+0x3065 008934 call dongle_check_mode 
+0x3066 008935 call g24_enable_nodata_timer 
+:      008936 g24_timer_init:
+0x3067 008937 setarg 0 
+0x3068 008938 add regc ,offset_24g_tx_btclk ,contw 
+0x3069 008940 branch g24_contw_istore_4byte 
+:      008942 g24_timer_check:
+0x306a 008943 call disable_user 
+0x306b 008944 add regc ,offset_24g_tx_btclk ,rega 
+0x306c 008945 ifetcht 4 ,rega 
+0x306d 008947 copy clkn_bt ,pdata 
+0x306e 008948 isub temp ,null 
+0x306f 008949 ncall g24_timer_timeout ,positive 
+0x3070 008950 copy pdata ,regb 
+0x3071 008951 add regc ,offset_24g_tx_btclk ,rega 
+0x3072 008952 ifetch 4 ,rega 
+0x3073 008954 add regc ,offset_24g_interval ,rega 
+0x3074 008955 ifetcht 1 ,rega 
+0x3075 008957 iadd temp ,temp 
+0x3076 008958 copy regb ,pdata 
+0x3077 008959 isub temp ,null 
+0x3078 008960 nrtn positive 
+0x3079 008961 set0 28 ,pdata 
+0x307a 008962 add regc ,offset_24g_tx_btclk ,contw 
+0x307b 008963 istore 4 ,contw 
+0x307c 008965 branch enable_user 
+:      008967 g24_mode_switch_init:
+0x307d 008968 setarg 1 
+0x307e 008969 call g24_store_mem_mode_switch 
+0x307f 008971 call g24_set0_mem_time_slice 
+0x3080 008973 setarg 0xff 
+0x3081 008974 add regc ,offset_24g_interval ,contw 
+0x3082 008975 istore 1 ,contw 
+0x3083 008977 branch g24_timer_init 
+:      008979 g24_mode_switch:
+0x3084 008980 setarg offset_24g_mode_switch 
+0x3085 008981 call g24_set_rega_ifetch_1byte 
+0x3086 008983 rtn blank 
+0x3087 008984 call g24_timer_check 
+0x3088 008985 nrtn user 
+0x3089 008986 call g24_fetch_mem_time_slice 
+0x308a 008988 increase 1 ,pdata 
+0x308b 008989 and_into 1 ,pdata 
+0x308c 008990 call g24_store_mem_time_slice 
+0x308d 008992 beq 0 ,dongle_check_mode 
+0x308e 008993 beq 1 ,g24_bind_mode_enable 
+0x308f 008994 rtn 
+:      008996 g24_bind_mode_enable:
+0x3090 009000 setarg dongle_bind 
+0x3091 009001 call g24_store_mem_dongle_work_mode 
+0x3092 009002 branch g24_set0_mem_dongle_mode_init 
+:      009004 g24_enable_nodata_timer:
+0x3093 009005 setarg 1 
+0x3094 009006 call g24_store_mem_nodata_timer_enable 
+:      009008 g24_enable_nodata_timer_init:
+0x3095 009009 setarg timer_nodata_delay 
+0x3096 009010 arg timer_nodata ,queue 
+0x3097 009011 branch timer_init 
+:      009013 g24_rx_nodata_process:
+0x3098 009014 call g24_fetch_mem_nodata_timer_enable 
+0x3099 009016 rtn blank 
+0x309a 009017 arg timer_nodata ,queue 
+0x309b 009018 call timer_check 
+0x309c 009019 nrtn blank 
+0x309d 009020 call g24_set0_mem_nodata_timer_enable 
+0x309e 009023 setarg dongle_search 
+0x309f 009024 call g24_store_mem_dongle_work_mode 
+0x30a0 009026 call g24_set0_mem_dongle_mode_init 
+0x30a1 009028 branch g24_rx_interrupt_clear 
+:      009030 g24_dongle_search_mode_auto:
+0x30a2 009031 bpatch patch18_0 ,mem_patch18 
+0x30a3 009032 call g24_fetch_mem_dongle_work_mode 
+0x30a4 009034 rtnne dongle_search 
+0x30a5 009035 call g24_dongle_search_mode_init 
+0x30a6 009036 call g24_rx_auto_addr_ch_search 
+0x30a7 009037 call g24_receive_transmit_ack 
+0x30a8 009038 nbranch g24_rx_interrupt_clear ,user3 
+0x30a9 009040 call g24_dongle_search_addr_check 
+0x30aa 009041 call g24_receive_packet_parse ,zero 
+0x30ab 009045 call dongle_check_mode 
+0x30ac 009046 call g24_fetch_mem_dongle_mode_init 
+0x30ad 009048 set1 dongle_work ,pdata 
+0x30ae 009049 call g24_store_mem_dongle_mode_init 
+0x30af 009051 call g24_rx_interrupt_clear 
+0x30b0 009052 call g24_enable_nodata_timer 
+0x30b1 009053 call g24_dongle_search_addr_check 
+0x30b2 009054 branch g24_dg_ch_num_reinit ,zero 
+0x30b3 009055 setarg offset_24g_kb_addr 
+0x30b4 009056 call g24_set_rega_ifetcht_4byte 
+0x30b5 009058 call g24_fetch_mem_addr_isub_temp 
+0x30b6 009059 branch g24_kb_ch_num_reinit ,zero 
+0x30b7 009060 setarg offset_24g_mouse_addr 
+0x30b8 009061 call g24_set_rega_ifetcht_4byte 
+0x30b9 009063 call g24_fetch_mem_addr_isub_temp 
+0x30ba 009064 branch g24_ms_ch_num_reinit ,zero 
+0x30bb 009065 rtn 
+:      009067 g24_dongle_search_addr_check:
+0x30bc 009068 setarg offset_24g_rx_addr 
+0x30bd 009069 call g24_set_rega_ifetcht_4byte 
+:      009071 g24_fetch_mem_addr_isub_temp:
+0x30be 009072 call g24_fetch_mem_addr 
+0x30bf 009074 isub temp ,null 
+0x30c0 009075 rtn 
+:      009077 g24_dg_ch_num_reinit:
+0x30c1 009078 setarg offset_24g_dg_ch_number 
+0x30c2 009079 call g24_set_rega_ifetch_1byte 
+:      009081 g24_current_ch_num_reinit:
+0x30c3 009083 add regc ,offset_24g_current_ch_number ,contw 
+0x30c4 009084 branch g24_contw_istore_1byte 
+:      009086 g24_kb_ch_num_reinit:
+0x30c5 009087 setarg offset_24g_kb_ch_number 
+0x30c6 009088 call g24_set_rega_ifetch_1byte 
+0x30c7 009090 branch g24_current_ch_num_reinit 
+:      009091 g24_ms_ch_num_reinit:
+0x30c8 009092 setarg offset_24g_ms_ch_number 
+0x30c9 009093 call g24_set_rega_ifetch_1byte 
+0x30ca 009095 branch g24_current_ch_num_reinit 
+:      009097 g24_dongle_search_mode_init:
+0x30cb 009098 call g24_fetch_mem_dongle_mode_init 
+0x30cc 009100 rtnbit1 dongle_search 
+0x30cd 009101 set1 dongle_search ,pdata 
+0x30ce 009102 call g24_store_mem_dongle_mode_init 
+0x30cf 009104 call g24_set0_mem_time_slice 
+0x30d0 009106 call g24_set1_mem_ackpayload_enable 
+0x30d1 009108 setarg 0 
+0x30d2 009109 add regc ,offset_rssi_noise_dg_index ,contw 
+0x30d3 009110 istore 3 ,contw 
+0x30d4 009112 arg offset_24g_dg_config_ch_once ,rega 
+0x30d5 009113 call g24_set_contw_with_temp 
+0x30d6 009114 istore 7 ,contw 
+0x30d7 009117 call g24_dongle_search_addr_check 
+0x30d8 009118 nrtn zero 
+0x30d9 009119 add regc ,offset_24g_current_ch_number ,rega 
+0x30da 009120 ifetch 1 ,rega 
+0x30db 009122 arg offset_24g_dg_ch_number ,rega 
+0x30dc 009123 call g24_set_contw_with_regb_store_1byte 
+0x30dd 009125 add regc ,offset_24g_ch ,rega 
+0x30de 009126 ifetch 1 ,rega 
+0x30df 009129 branch g24_store_mem_dg_last_ch 
+:      009131 g24_rx_auto_addr_ch_search:
+0x30e0 009132 bpatch patch18_1 ,mem_patch18 
+0x30e1 009133 call g24_fetch_mem_time_slice 
+0x30e2 009135 increase 1 ,pdata 
+0x30e3 009136 and_into 3 ,pdata 
+0x30e4 009137 call g24_store_mem_time_slice 
+0x30e5 009140 beq 0 ,g24_rx_auto_bind_config_kb 
+0x30e6 009141 beq 1 ,g24_rx_auto_bind_config_dongle 
+0x30e7 009142 beq 2 ,g24_rx_auto_bind_config_mouse 
+0x30e8 009143 beq 3 ,g24_rx_auto_bind_config_dongle 
+0x30e9 009144 rtn 
+:      009146 g24_rx_auto_bind_config_mouse:
+0x30ea 009147 call g24_dongle_bind_ms_payload_cfg 
+0x30eb 009148 setarg offset_24g_mouse_addr 
+0x30ec 009149 call g24_set_rega_ifetch_4byte 
+0x30ed 009151 branch g24_rx_auto_addr_ch_search ,blank 
+0x30ee 009152 call g24_store_mem_addr 
+0x30ef 009154 setarg offset_24g_ms_config_ch_once 
+0x30f0 009155 call g24_set_rega_ifetch_1byte 
+0x30f1 009157 call g24_ms_config_ch_once ,blank 
+0x30f2 009158 setarg offset_24g_ms_last_ch 
+0x30f3 009159 call g24_set_rega_ifetch_1byte 
+0x30f4 009161 call g24_store_mem_ch 
+0x30f5 009163 add regc ,offset_rssi_noise_ms_index ,rega 
+0x30f6 009164 ifetcht 1 ,rega 
+0x30f7 009166 arg mem_rssi_noise_ms_buffer ,rega 
+0x30f8 009167 call rssi_noise_store 
+0x30f9 009168 add regc ,offset_rssi_noise_ms_index ,contw 
+0x30fa 009169 istoret 1 ,contw 
+0x30fb 009171 call g24_noise_rssi_average 
+0x30fc 009172 add regc ,offset_rssi_noise_ms_avg ,contw 
+0x30fd 009173 istoret 1 ,contw 
+0x30fe 009175 sub temp ,rssi_thresh_noise ,null 
+0x30ff 009176 nrtn positive 
+0x3100 009177 setarg offset_24g_ms_ch_number 
+0x3101 009178 call g24_set_rega_ifetcht_1byte 
+0x3102 009180 call g24_ch_temp_incre_size4 
+0x3103 009181 arg offset_24g_ms_ch_number ,rega 
+0x3104 009182 call g24_set_contw_with_regb2 
+0x3105 009183 istoret 1 ,contw 
+:      009185 g24_store_mem_ms_last_ch:
+0x3106 009187 arg offset_24g_ms_last_ch ,rega 
+0x3107 009188 branch g24_set_contw_with_regb_store_1byte 
+:      009190 g24_ms_config_ch_once:
+0x3108 009191 setarg 1 
+0x3109 009192 arg offset_24g_ms_config_ch_once ,rega 
+0x310a 009193 call g24_set_contw_with_regb_store_1byte 
+0x310b 009195 arg 0 ,temp 
+0x310c 009196 call g24_ch_calc 
+0x310d 009199 branch g24_store_mem_ms_last_ch 
+:      009201 g24_rx_auto_bind_config_kb:
+0x310e 009202 call g24_dongle_bind_kb_payload_cfg 
+0x310f 009203 setarg offset_24g_kb_addr 
+0x3110 009204 call g24_set_rega_ifetch_4byte 
+0x3111 009206 branch g24_rx_auto_addr_ch_search ,blank 
+0x3112 009207 call g24_store_mem_addr 
+0x3113 009209 setarg offset_24g_kb_config_ch_once 
+0x3114 009210 call g24_set_rega_ifetch_1byte 
+0x3115 009212 call g24_kb_config_ch_once ,blank 
+0x3116 009213 setarg offset_24g_kb_last_ch 
+0x3117 009214 call g24_set_rega_ifetch_1byte 
+0x3118 009216 call g24_store_mem_ch 
+0x3119 009218 add regc ,offset_rssi_noise_kb_index ,rega 
+0x311a 009219 ifetcht 1 ,rega 
+0x311b 009221 arg mem_rssi_noise_kb_buffer ,rega 
+0x311c 009222 call rssi_noise_store 
+0x311d 009223 add regc ,offset_rssi_noise_kb_index ,contw 
+0x311e 009224 istoret 1 ,contw 
+0x311f 009226 call g24_noise_rssi_average 
+0x3120 009227 add regc ,offset_rssi_noise_kb_avg ,contw 
+0x3121 009228 istoret 1 ,contw 
+0x3122 009230 sub temp ,rssi_thresh_noise ,null 
+0x3123 009231 nrtn positive 
+0x3124 009232 setarg offset_24g_kb_ch_number 
+0x3125 009233 call g24_set_rega_ifetcht_1byte 
+0x3126 009235 call g24_ch_temp_incre_size4 
+0x3127 009236 arg offset_24g_kb_ch_number ,rega 
+0x3128 009237 call g24_set_contw_with_regb2 
+0x3129 009238 istoret 1 ,contw 
+:      009240 g24_store_mem_kb_last_ch:
+0x312a 009242 arg offset_24g_kb_last_ch ,rega 
+0x312b 009243 branch g24_set_contw_with_regb_store_1byte 
+:      009245 g24_kb_config_ch_once:
+0x312c 009246 setarg 1 
+0x312d 009247 arg offset_24g_kb_config_ch_once ,rega 
+0x312e 009248 call g24_set_contw_with_regb_store_1byte 
+0x312f 009250 arg 0 ,temp 
+0x3130 009251 call g24_ch_calc 
+0x3131 009254 branch g24_store_mem_kb_last_ch 
+:      009256 g24_rx_auto_bind_config_dongle:
+0x3132 009257 call g24_dongle_bind_ms_payload_cfg 
+0x3133 009258 call g24_fetch_mem_rx_addr 
+0x3134 009260 call g24_store_mem_addr 
+0x3135 009262 setarg offset_24g_dg_config_ch_once 
+0x3136 009263 call g24_set_rega_ifetch_1byte 
+0x3137 009265 call g24_dg_config_ch_once ,blank 
+0x3138 009266 call g24_dg_store_config_ch 
+0x3139 009267 add regc ,offset_rssi_noise_dg_index ,rega 
+0x313a 009268 ifetcht 1 ,rega 
+0x313b 009270 arg mem_rssi_noise_dg_buffer ,rega 
+0x313c 009271 call rssi_noise_store 
+0x313d 009272 add regc ,offset_rssi_noise_dg_index ,contw 
+0x313e 009273 istoret 1 ,contw 
+0x313f 009275 call g24_noise_rssi_average 
+0x3140 009276 add regc ,offset_rssi_noise_dg_avg ,contw 
+0x3141 009277 istoret 1 ,contw 
+0x3142 009279 sub temp ,rssi_thresh_noise ,null 
+0x3143 009280 nrtn positive 
+0x3144 009281 setarg offset_24g_dg_ch_number 
+0x3145 009282 call g24_set_rega_ifetcht_1byte 
+0x3146 009284 call g24_ch_temp_incre_size4 
+0x3147 009285 arg offset_24g_dg_ch_number ,rega 
+0x3148 009286 call g24_set_contw_with_regb2 
+0x3149 009287 istoret 1 ,contw 
+:      009289 g24_store_mem_dg_last_ch:
+0x314a 009292 arg offset_24g_dg_last_ch ,rega 
+0x314b 009293 branch g24_set_contw_with_regb_store_1byte 
+:      009296 g24_dg_config_ch_once:
+0x314c 009301 setarg 1 
+0x314d 009302 arg offset_24g_dg_config_ch_once ,rega 
+0x314e 009303 call g24_set_contw_with_regb_store_1byte 
+:      009304 g24_dg_store_config_ch:
+0x314f 009305 setarg offset_24g_dg_last_ch 
+0x3150 009306 call g24_set_rega_ifetch_1byte 
+0x3151 009307 branch g24_store_mem_ch 
+:      009310 g24_transmit_ack:
+0x3152 009312 add regc ,offset_24g_rxbuf ,rega 
+0x3153 009313 ifetch 1 ,rega 
+0x3154 009315 call g24_store_mem_data_type 
+0x3155 009318 call g24_read_len_pid_crc 
+0x3156 009320 call g24_fetch_mem_rxbuf_add1 
+0x3157 009322 isolate1 bit_ack_24g ,pdata 
+0x3158 009323 branch g24tx_no_ack ,true 
+:      009324 g24tx_with_ack:
+0x3159 009325 call g24_ackpayload_prep 
+0x315a 009326 call g24_transmit_prep 
+0x315b 009327 call g24_transmit 
+:      009328 g24tx_no_ack:
+0x315c 009329 branch g24_end_of_packet 
+:      009331 g24_ackpayload_prep:
+0x315d 009332 bpatch patch18_2 ,mem_patch18 
+0x315e 009333 add regc ,offset_24g_datalen ,contw 
+0x315f 009334 call g24_mem_set0 
+0x3160 009336 setarg offset_24g_ackpayload_enable 
+0x3161 009337 call g24_set_rega_ifetch_1byte 
+0x3162 009339 rtn blank 
+0x3163 009340 setarg 0x06 
+0x3164 009341 add regc ,offset_24g_datalen ,contw 
+0x3165 009342 istore 1 ,contw 
+0x3166 009344 arg 0x06 ,loopcnt 
+0x3167 009345 setarg offset_24g_bind_payload 
+0x3168 009346 iadd regc ,contr 
+0x3169 009348 add regc ,offset_24g_txbuf ,contw 
+0x316a 009350 branch memcpy 
+:      009353 g24_receive_packet_start:
+0x316b 009354 call g24_receive_transmit_ack 
+0x316c 009355 nbranch g24_rx_interrupt_clear ,user3 
+0x316d 009356 branch g24_receive_packet_parse 
+:      009358 g24_receive_transmit_ack:
+0x316e 009359 call g24_rx_interrupt_clear 
+0x316f 009360 call g24_receive_packet 
+0x3170 009361 nrtn user3 
+0x3171 009362 branch g24_transmit_ack 
+:      009364 g24_receive_packet_parse:
+0x3172 009365 bpatch patch18_3 ,mem_patch18 
+0x3173 009366 call g24_receive_packet_parse_pid_crc 
+0x3174 009367 nbranch g24_rx_interrupt_clear ,user 
+0x3175 009368 add regc ,offset_24g_rxdata_length ,rega 
+0x3176 009369 ifetch 1 ,rega 
+0x3177 009371 branch g24_rx_interrupt_clear ,blank 
+0x3178 009372 increase 2 ,pdata 
+0x3179 009373 iforce loopcnt 
+0x317a 009374 add regc ,offset_24g_rxbuf ,contr 
+0x317b 009376 setarg offset_24g_rxdata_temp 
+0x317c 009377 iadd regc ,contw 
+0x317d 009379 call memcpy 
+0x317e 009380 call g24_set0_mem_mode_switch 
+0x317f 009382 call g24_fetch_mem_pair_mode 
+0x3180 009384 call g24_enable_nodata_timer ,blank 
+0x3181 009385 setarg offset_24g_rxdata_temp_add2 
+0x3182 009386 call g24_set_rega_ifetch_1byte 
+0x3183 009388 beq 0x01 ,g24_data_type1 
+0x3184 009389 beq 0x02 ,g24_data_type2 
+0x3185 009390 beq 0x03 ,g24_data_type3 
+0x3186 009391 beq 0xff ,g24_data_attemp 
+0x3187 009392 branch g24_rx_interrupt_clear 
+:      009394 g24_receive_packet_parse_pid_crc:
+0x3188 009395 call g24_head_ptr2regc 
+0x3189 009396 call disable_user 
+0x318a 009397 add regc ,offset_24g_sta_pid ,rega 
+0x318b 009398 ifetch 1 ,rega 
+0x318c 009400 add regc ,offset_24g_last_pid ,rega 
+0x318d 009401 ifetcht 1 ,rega 
+0x318e 009403 isub temp ,null 
+0x318f 009404 ncall enable_user ,zero 
+0x3190 009405 add regc ,offset_24g_sta_pid ,rega 
+0x3191 009406 ifetch 1 ,rega 
+0x3192 009408 add regc ,offset_24g_last_pid ,contw 
+0x3193 009409 istore 1 ,contw 
+0x3194 009411 add regc ,offset_24g_sta_crc ,rega 
+0x3195 009412 ifetch 3 ,rega 
+0x3196 009414 add regc ,offset_24g_last_crc ,rega 
+0x3197 009415 ifetcht 3 ,rega 
+0x3198 009417 isub temp ,null 
+0x3199 009418 ncall enable_user ,zero 
+0x319a 009419 add regc ,offset_24g_sta_crc ,rega 
+0x319b 009420 ifetch 3 ,rega 
+0x319c 009422 add regc ,offset_24g_last_crc ,contw 
+0x319d 009424 branch g24_contw_istore_3byte 
+:      009426 g24_data_type1:
+0x319e 009427 call g24_ch_timer_reinit 
+0x319f 009428 call g24_fetch_mem_abort_pac 
+0x31a0 009429 store 1 ,mem_temp 
+0x31a1 009431 call g24_fetcht_mem_rxdata_temp 
+0x31a2 009432 fetch 1 ,mem_temp 
+0x31a3 009434 isolate1 bit_abort ,temp 
+0x31a4 009435 setflag true ,0 ,pdata 
+0x31a5 009436 add regc ,offset_24g_abort_pac ,contw 
+0x31a6 009437 istore 1 ,contw 
+0x31a7 009439 beq 1 ,g24_data_attemp_mouse 
+0x31a8 009440 call g24_fetch_mem_hop_pac 
+0x31a9 009442 call g24_fetcht_mem_rxdata_temp 
+0x31aa 009444 isolate1 bit_hop ,temp 
+0x31ab 009445 setflag true ,0 ,pdata 
+0x31ac 009446 call g24_store_mem_hop_pac 
+0x31ad 009448 add regc ,offset_24g_cb_rxdata_type1 ,rega 
+0x31ae 009449 ifetch 2 ,rega 
+0x31af 009451 branch callback_func 
+:      009453 dongle_rxdata_type1:
+0x31b0 009454 setarg ms_report_id 
+0x31b1 009455 store 1 ,mem_usb_mouse_data 
+0x31b2 009456 call g24_fetch_mem_rxdata_temp_add3_7byte 
+0x31b3 009458 istore 7 ,contw 
+0x31b4 009459 call g24_fetch_mem_rxdata_temp_add3_7byte 
+0x31b5 009461 ncall g24_ms_enable_blank_data_forcibly ,blank 
+0x31b6 009462 call g24_fetch_mem_rxdata_temp_add3_7byte 
+0x31b7 009464 call g24_ms_disable_blank_data_forcibly ,blank 
+:      009465 g24_data_type1_usbtx_enable:
+0x31b8 009466 jam usb_ep2_ms ,mem_usb_ep2_data 
+:      009467 g24_data_type1_usbtx_enable_ep2:
+0x31b9 009468 fetch 1 ,mem_usb_tx_enable 
+0x31ba 009469 set1 2 ,pdata 
+0x31bb 009470 store 1 ,mem_usb_tx_enable 
+0x31bc 009471 rtn 
+:      009473 g24_ms_enable_blank_data_forcibly:
+0x31bd 009474 setarg 1 
+0x31be 009475 call g24_store_mem_ms_blank_data_enable 
+:      009477 g24_ms_enable_blank_data_timer:
+0x31bf 009478 setarg timer_ms_blank_delay 
+0x31c0 009479 arg timer_ms_blank ,queue 
+0x31c1 009480 branch timer_init 
+:      009481 g24_ms_disable_blank_data_forcibly:
+0x31c2 009482 call g24_set0_mem_ms_blank_data_enable 
+:      009484 g24_ms_disable_blank_data_timer:
+0x31c3 009485 setarg 0 
+0x31c4 009486 arg timer_ms_blank ,queue 
+0x31c5 009487 branch timer_init 
+:      009489 g24_data_type2:
+0x31c6 009490 call g24_fetcht_mem_rxdata_temp 
+0x31c7 009492 isolate1 bit_abort ,temp 
+0x31c8 009493 branch g24_data_attemp_kbd ,true 
+0x31c9 009494 arg mem_usb_kb_data ,contw 
+0x31ca 009495 call g24_data_type2_reverse_data 
+0x31cb 009496 fetch 8 ,mem_usb_kb_data 
+0x31cc 009497 ncall g24_kb_enable_blank_data_forcibly ,blank 
+0x31cd 009498 fetch 8 ,mem_usb_kb_data 
+0x31ce 009499 call g24_kb_disable_blank_data_forcibly ,blank 
+0x31cf 009500 call g24_head_ptr2regc 
+0x31d0 009501 fetch 8 ,mem_usb_kb_data 
+0x31d1 009502 arg offset_24g_kb_data_sta_data ,rega 
+0x31d2 009503 call g24_set_contw_with_temp 
+0x31d3 009504 istore 8 ,contw 
+0x31d4 009506 setarg offset_24g_kb_data_last_data 
+0x31d5 009507 iadd regc ,rega 
+0x31d6 009508 ifetcht 8 ,rega 
+0x31d7 009510 isub temp ,null 
+0x31d8 009511 ncall g24_kb_data_dispose ,zero 
+0x31d9 009512 setarg offset_24g_kb_data_sta_data 
+0x31da 009513 iadd regc ,rega 
+0x31db 009514 ifetch 8 ,rega 
+0x31dc 009516 arg offset_24g_kb_data_last_data ,rega 
+0x31dd 009517 call g24_set_contw_with_temp 
+0x31de 009518 istore 8 ,contw 
+0x31df 009520 branch g24_rx_interrupt_clear 
+:      009522 g24_data_type2_reverse_data:
+0x31e0 009523 setarg offset_24g_rxdata_temp_add2 
+0x31e1 009524 iadd regc ,contr 
+0x31e2 009526 arg 9 ,loopcnt 
+0x31e3 009527 branch reverse_byte 
+:      009529 g24_kb_enable_blank_data_forcibly:
+0x31e4 009530 setarg 1 
+0x31e5 009531 call g24_store_mem_kb_blank_data_enable 
+:      009533 g24_kb_enable_blank_data_timer:
+0x31e6 009534 setarg timer_kb_blank_delay 
+0x31e7 009535 arg timer_kb_blank ,queue 
+0x31e8 009536 branch timer_init 
+:      009538 g24_kb_disable_blank_data_forcibly:
+0x31e9 009539 call g24_set0_mem_kb_blank_data_enable 
+:      009541 g24_kb_disable_blank_data_timer:
+0x31ea 009542 setarg 0 
+0x31eb 009543 arg timer_kb_blank ,queue 
+0x31ec 009544 branch timer_init 
+:      009546 g24_kb_data_dispose:
+:      009547 g24_kb_data_into_ep1_fifo:
+0x31ed 009548 jam usb_ep1_kb ,mem_usb_ep1_data 
+0x31ee 009549 fetch 1 ,mem_usb_tx_enable 
+0x31ef 009550 set1 1 ,pdata 
+0x31f0 009551 store 1 ,mem_usb_tx_enable 
+0x31f1 009552 rtn 
+:      009554 g24_data_type3:
+0x31f2 009555 arg mem_usb_kb_multikey ,contw 
+0x31f3 009556 call g24_data_type2_reverse_data 
+0x31f4 009557 fetch 2 ,mem_usb_kb_multikey + 1 
+0x31f5 009558 ncall g24_kb_mul_enable_blank_data_forcibly ,blank 
+0x31f6 009559 fetch 2 ,mem_usb_kb_multikey + 1 
+0x31f7 009560 call g24_kb_mul_disable_blank_data_forcibly ,blank 
+0x31f8 009561 call g24_head_ptr2regc 
+0x31f9 009562 fetch 3 ,mem_usb_kb_multikey 
+0x31fa 009563 arg offset_24g_kb_multikey_sta_data ,rega 
+0x31fb 009564 call g24_set_contw_with_temp_store_3byte 
+0x31fc 009566 setarg offset_24g_kb_multikey_last_data 
+0x31fd 009567 iadd regc ,rega 
+0x31fe 009568 ifetcht 3 ,rega 
+0x31ff 009570 isub temp ,null 
+0x3200 009571 ncall g24_kb_mul_data_into_ep2_fifo ,zero 
+0x3201 009572 setarg offset_24g_kb_multikey_sta_data 
+0x3202 009573 iadd regc ,rega 
+0x3203 009574 ifetch 3 ,rega 
+0x3204 009576 arg offset_24g_kb_multikey_last_data ,rega 
+0x3205 009577 call g24_set_contw_with_temp_store_3byte 
+0x3206 009579 branch g24_rx_interrupt_clear 
+:      009581 g24_kb_mul_data_into_ep2_fifo:
+0x3207 009582 jam usb_ep2_multikey ,mem_usb_ep2_data 
+0x3208 009583 branch g24_data_type1_usbtx_enable_ep2 
+:      009585 g24_kb_mul_enable_blank_data_forcibly:
+0x3209 009586 setarg 1 
+0x320a 009587 call g24_store_mem_kb_mul_blank_data_enable 
+:      009589 g24_kb_mul_enable_blank_data_timer:
+0x320b 009590 setarg timer_kb_mul_blank_delay 
+0x320c 009591 arg timer_kb_mul_blank ,queue 
+0x320d 009592 branch timer_init 
+:      009594 g24_kb_mul_disable_blank_data_forcibly:
+0x320e 009595 call g24_set0_mem_kb_mul_blank_data_enable 
+:      009597 g24_kb_mul_disable_blank_data_timer:
+0x320f 009598 setarg 0 
+0x3210 009599 arg timer_kb_mul_blank ,queue 
+0x3211 009600 branch timer_init 
+:      009602 g24_data_attemp:
+0x3212 009603 call g24_fetch_mem_rxdata_temp_add3_1byte 
+0x3213 009605 beq datatype_mouse ,g24_data_attemp_mouse 
+0x3214 009606 beq datatype_keyboard ,g24_data_attemp_kbd 
+0x3215 009607 rtn 
+:      009608 g24_data_attemp_mouse:
+0x3216 009609 setarg offset_24g_rxdata_temp_add4 
+0x3217 009610 call g24_set_rega_ifetch_4byte 
+0x3218 009611 arg offset_24g_mouse_addr ,rega 
+0x3219 009612 call g24_set_contw_with_temp 
+0x321a 009615 branch g24_contw_istore_4byte 
+:      009617 g24_data_attemp_kbd:
+0x321b 009618 setarg offset_24g_rxdata_temp_add4 
+0x321c 009619 call g24_set_rega_ifetch_4byte 
+0x321d 009620 arg offset_24g_kb_addr ,rega 
+0x321e 009621 call g24_set_contw_with_temp 
+0x321f 009624 branch g24_contw_istore_4byte 
+:      009626 g24_store_mem_24g_mode:
+0x3220 009627 call g24_head_ptr2regc 
+0x3221 009628 add regc ,offset_24g_mode ,contw 
+0x3222 009629 istore 1 ,contw 
+0x3223 009630 rtn 
+:      009632 g24_fetch_mem_device_addr:
+0x3224 009633 call g24_head_ptr2regc 
+0x3225 009634 add regc ,offset_24g_device_addr ,rega 
+0x3226 009635 branch g24_rega_ifetch_4byte 
+:      009636 g24_store_mem_device_addr:
+0x3227 009637 call g24_head_ptr2regc 
+0x3228 009638 add regc ,offset_24g_device_addr ,contw 
+0x3229 009639 branch g24_contw_istore_4byte 
+:      009641 g24_fetch_mem_addr:
+0x322a 009642 add regc ,offset_24g_addr ,rega 
+0x322b 009643 branch g24_rega_ifetch_4byte 
+:      009644 g24_store_mem_addr:
+0x322c 009645 add regc ,offset_24g_addr ,contw 
+:      009646 g24_contw_istore_4byte:
+0x322d 009647 istore 4 ,contw 
+0x322e 009648 rtn 
+:      009650 g24_store_mem_ch:
+0x322f 009651 add regc ,offset_24g_ch ,contw 
+0x3230 009652 branch g24_contw_istore_1byte 
+:      009654 g24_set0_mem_pid:
+0x3231 009655 setarg 0 
+:      009656 g24_store_mem_pid:
+0x3232 009657 call g24_head_ptr2regc 
+0x3233 009658 add regc ,offset_24g_pid ,contw 
+0x3234 009659 branch g24_contw_istore_1byte 
+:      009661 g24_store_mem_txpayload:
+0x3235 009662 add regc ,offset_24g_txpayload ,contw 
+0x3236 009663 branch g24_contw_istore_1byte 
+:      009665 g24_set4_mem_max_retry:
+0x3237 009666 setarg 4 
+:      009667 g24_store_mem_max_retry:
+0x3238 009668 add regc ,offset_24g_max_retry ,contw 
+0x3239 009669 branch g24_contw_istore_1byte 
+:      009671 g24_fetch_mem_data_type:
+0x323a 009672 add regc ,offset_24g_data_type ,rega 
+0x323b 009673 branch g24_rega_ifetch_1byte 
+:      009674 g24_store_mem_data_type:
+0x323c 009675 add regc ,offset_24g_data_type ,contw 
+0x323d 009676 branch g24_contw_istore_1byte 
+:      009678 g24_set2_mem_sync_cnt:
+0x323e 009679 setarg 2 
+:      009680 g24_store_mem_sync_cnt:
+0x323f 009681 add regc ,offset_24g_sync_cnt ,contw 
+0x3240 009682 branch g24_contw_istore_1byte 
+:      009684 g24_set1_mem_rf_last_sta:
+0x3241 009685 setarg 1 
+:      009686 g24_store_mem_rf_last_sta:
+0x3242 009687 call g24_head_ptr2regc 
+0x3243 009688 add regc ,offset_24g_rf_last_sta ,contw 
+0x3244 009689 branch g24_contw_istore_1byte 
+:      009691 g24_fetch_mem_hop_pac:
+0x3245 009692 call g24_head_ptr2regc 
+0x3246 009693 add regc ,offset_24g_hop_pac ,rega 
+0x3247 009694 branch g24_rega_ifetch_1byte 
+:      009695 g24_set1_mem_hop_pac:
+0x3248 009696 setarg 1 
+:      009697 g24_store_mem_hop_pac:
+0x3249 009698 call g24_head_ptr2regc 
+0x324a 009699 add regc ,offset_24g_hop_pac ,contw 
+0x324b 009700 branch g24_contw_istore_1byte 
+:      009702 g24_fetch_mem_abort_pac:
+0x324c 009703 call g24_head_ptr2regc 
+0x324d 009704 add regc ,offset_24g_abort_pac ,rega 
+0x324e 009705 branch g24_rega_ifetch_1byte 
+:      009706 g24_set1_mem_abort_pac:
+0x324f 009707 setarg 1 
+:      009708 g24_store_mem_abort_pac:
+0x3250 009709 call g24_head_ptr2regc 
+0x3251 009710 add regc ,offset_24g_abort_pac ,contw 
+0x3252 009711 branch g24_contw_istore_1byte 
+:      009713 g24_fetch_mem_pairing_sm:
+0x3253 009714 call g24_head_ptr2regc 
+0x3254 009715 add regc ,offset_24g_pairing_sm ,rega 
+0x3255 009716 branch g24_rega_ifetch_1byte 
+:      009717 g24_store_mem_pairing_sm:
+0x3256 009718 add regc ,offset_24g_pairing_sm ,contw 
+0x3257 009719 branch g24_contw_istore_1byte 
+:      009721 g24_fetch_mem_rf_hop_ch:
+0x3258 009722 add regc ,offset_24g_rf_hop_ch ,rega 
+0x3259 009723 branch g24_rega_ifetch_1byte 
+:      009724 g24_set0_mem_rf_hop_ch:
+0x325a 009725 setarg 0 
+:      009726 g24_store_mem_rf_hop_ch:
+0x325b 009727 add regc ,offset_24g_rf_hop_ch ,contw 
+0x325c 009728 branch g24_contw_istore_1byte 
+:      009730 g24_fetch_mem_rf_work_stage:
+0x325d 009731 add regc ,offset_24g_rf_work_stage ,rega 
+0x325e 009732 branch g24_rega_ifetch_1byte 
+:      009734 g24_fetch_mem_rxbuf_add1:
+0x325f 009735 add regc ,offset_24g_rxbuf_add1 ,rega 
+0x3260 009736 branch g24_rega_ifetch_1byte 
+:      009738 g24_fetch_mem_check_dongle_times:
+0x3261 009739 add regc ,offset_24g_check_dongle_times ,rega 
+0x3262 009740 branch g24_rega_ifetch_1byte 
+:      009741 g24_set0_mem_check_dongle_times:
+0x3263 009742 setarg 0 
+:      009743 g24_store_mem_check_dongle_times:
+0x3264 009744 call g24_head_ptr2regc 
+0x3265 009745 add regc ,offset_24g_check_dongle_times ,contw 
+0x3266 009746 branch g24_contw_istore_1byte 
+:      009748 g24_store_mem_tx_power:
+0x3267 009749 call g24_head_ptr2regc 
+0x3268 009750 add regc ,offset_tx_power_temp ,rega 
+0x3269 009751 ifetch 1 ,rega 
+:      009752 g24_store_mem_txpower:
+0x326a 009753 store 1 ,mem_tx_power 
+0x326b 009754 rtn 
+:      009756 g24_store_mem_tx_power_temp:
+0x326c 009757 call g24_head_ptr2regc 
+0x326d 009758 fetch 1 ,mem_tx_power 
+0x326e 009760 add regc ,offset_tx_power_temp ,contw 
+0x326f 009761 branch g24_contw_istore_1byte 
+:      009763 g24_fetch_mem_power_ctrl_pac:
+0x3270 009764 add regc ,offset_power_ctrl_packet_cnt ,rega 
+0x3271 009765 branch g24_rega_ifetch_1byte 
+:      009767 g24_store_mem_power_ctrl_level:
+0x3272 009768 add regc ,offset_power_ctrl_level ,contw 
+0x3273 009769 branch g24_contw_istore_1byte 
+:      009771 g24_fetcht_mem_rxdata_temp:
+0x3274 009772 setarg offset_24g_rxdata_temp 
+:      009773 g24_set_rega_ifetcht_1byte:
+0x3275 009774 iadd regc ,rega 
+0x3276 009775 ifetcht 1 ,rega 
+0x3277 009776 rtn 
+:      009778 g24_fetch_mem_rf_laststa:
+0x3278 009779 setarg offset_24g_rf_laststa 
+0x3279 009780 branch g24_set_rega_ifetch_1byte 
+:      009781 g24_set0_mem_rf_laststa:
+0x327a 009782 setarg 0 
+:      009783 g24_store_mem_rf_laststa:
+0x327b 009784 arg offset_24g_rf_laststa ,rega 
+0x327c 009785 branch g24_set_contw_with_regb_store_1byte 
+:      009787 g24_fetch_mem_rx_addr:
+0x327d 009788 setarg offset_24g_rx_addr 
+:      009789 g24_set_rega_ifetch_4byte:
+0x327e 009790 call g24_set_rega 
+:      009791 g24_rega_ifetch_4byte:
+0x327f 009792 ifetch 4 ,rega 
+0x3280 009793 rtn 
+:      009795 g24_fetch_mem_time_slice:
+0x3281 009796 setarg offset_24g_time_slice 
+0x3282 009797 branch g24_set_rega_ifetch_1byte 
+:      009798 g24_set0_mem_time_slice:
+0x3283 009799 setarg 0 
+:      009800 g24_store_mem_time_slice:
+0x3284 009801 arg offset_24g_time_slice ,rega 
+0x3285 009802 branch g24_set_contw_with_regb_store_1byte 
+:      009804 g24_set0_mem_mode_switch:
+0x3286 009805 setarg 0 
+:      009806 g24_store_mem_mode_switch:
+0x3287 009807 arg offset_24g_mode_switch ,rega 
+0x3288 009808 branch g24_set_contw_with_regb_store_1byte 
+:      009810 g24_store_mem_bind_payload:
+0x3289 009811 arg offset_24g_bind_payload ,rega 
+0x328a 009812 branch g24_set_contw_with_regb_store_1byte 
+:      009814 g24_fetch_mem_bind_device_status:
+0x328b 009815 setarg offset_dongle_bind_device_status 
+0x328c 009816 branch g24_set_rega_ifetch_1byte 
+:      009817 g24_store_mem_bind_device_status:
+0x328d 009818 arg offset_dongle_bind_device_status ,rega 
+0x328e 009819 branch g24_set_contw_with_regb_store_1byte 
+:      009821 g24_fetch_mem_dongle_work_mode:
+0x328f 009822 setarg offset_dongle_work_mode 
+0x3290 009823 branch g24_set_rega_ifetch_1byte 
+:      009824 g24_set_work_mem_dongle_work_mode:
+0x3291 009825 setarg dongle_work 
+:      009826 g24_store_mem_dongle_work_mode:
+0x3292 009827 arg offset_dongle_work_mode ,rega 
+0x3293 009828 branch g24_set_contw_with_regb_store_1byte 
+:      009830 g24_fetch_mem_dongle_mode_init:
+0x3294 009831 setarg offset_dongle_mode_init 
+0x3295 009832 branch g24_set_rega_ifetch_1byte 
+:      009833 g24_set0_mem_dongle_mode_init:
+0x3296 009834 setarg clear_init 
+:      009835 g24_store_mem_dongle_mode_init:
+0x3297 009836 arg offset_dongle_mode_init ,rega 
+0x3298 009837 branch g24_set_contw_with_regb_store_1byte 
+:      009839 g24_set0_mem_ackpayload_enable:
+0x3299 009840 setarg 0 
+:      009841 g24_store_mem_ackpayload_enable:
+0x329a 009842 arg offset_24g_ackpayload_enable ,rega 
+0x329b 009843 branch g24_set_contw_with_regb_store_1byte 
+:      009844 g24_set1_mem_ackpayload_enable:
+0x329c 009845 setarg 1 
+0x329d 009846 branch g24_store_mem_ackpayload_enable 
+:      009848 g24_fetch_mem_rxdata_temp_add3_7byte:
+0x329e 009849 setarg offset_24g_rxdata_temp_add3 
+0x329f 009850 call g24_set_rega 
+0x32a0 009851 ifetch 7 ,rega 
+0x32a1 009852 rtn 
+:      009854 g24_fetch_mem_nodata_timer_enable:
+0x32a2 009855 setarg offset_24g_nodata_timer_enable 
+0x32a3 009856 branch g24_set_rega_ifetch_1byte 
+:      009857 g24_set0_mem_nodata_timer_enable:
+0x32a4 009858 setarg 0 
+:      009859 g24_store_mem_nodata_timer_enable:
+0x32a5 009860 arg offset_24g_nodata_timer_enable ,rega 
+0x32a6 009861 branch g24_set_contw_with_regb_store_1byte 
+:      009863 g24_set0_mem_ms_blank_data_enable:
+0x32a7 009864 setarg 0 
+:      009865 g24_store_mem_ms_blank_data_enable:
+0x32a8 009866 arg offset_24g_ms_blank_data_enable ,rega 
+0x32a9 009867 branch g24_set_contw_with_regb_store_1byte 
+:      009869 g24_set0_mem_kb_blank_data_enable:
+0x32aa 009870 setarg 0 
+:      009871 g24_store_mem_kb_blank_data_enable:
+0x32ab 009872 arg offset_24g_kb_blank_data_enable ,rega 
+0x32ac 009873 branch g24_set_contw_with_regb_store_1byte 
+:      009875 g24_set0_mem_kb_mul_blank_data_enable:
+0x32ad 009876 setarg 0 
+:      009877 g24_store_mem_kb_mul_blank_data_enable:
+0x32ae 009878 arg offset_24g_kb_mul_blank_data_enable ,rega 
+0x32af 009879 branch g24_set_contw_with_regb_store_1byte 
+:      009881 g24_store_mem_power_ctrl_threshold_up:
+0x32b0 009882 arg offset_power_ctrl_threshold_up ,rega 
+0x32b1 009883 branch g24_set_contw_with_regb_store_1byte 
+:      009885 g24_store_mem_power_ctrl_threshold_down:
+0x32b2 009886 arg offset_power_ctrl_threshold_down ,rega 
+:      009887 g24_set_contw_with_regb_store_1byte:
+0x32b3 009888 call g24_set_contw_with_regb 
+:      009889 g24_contw_istore_1byte:
+0x32b4 009890 istore 1 ,contw 
+0x32b5 009891 rtn 
+:      009893 g24_fetch_mem_pair_mode:
+0x32b6 009894 setarg offset_24g_pair_mode 
+0x32b7 009895 branch g24_set_rega_ifetch_1byte 
+:      009897 g24_store_mem_pair_mode:
+0x32b8 009898 arg offset_24g_pair_mode ,rega 
+0x32b9 009899 branch g24_set_contw_with_regb_store_1byte 
+:      009901 g24_store_mem_pair_txpower:
+0x32ba 009902 setarg offset_24g_pair_txpower 
+0x32bb 009903 call g24_set_rega_ifetch_1byte 
+0x32bc 009904 branch g24_store_mem_txpower 
+:      009906 g24_fetch_mem_rxdata_temp_add3_1byte:
+0x32bd 009907 setarg offset_24g_rxdata_temp_add3 
+0x32be 009908 branch g24_set_rega_ifetch_1byte 
+:      009910 g24_set_contw_with_temp:
+0x32bf 009911 copy pdata ,temp 
+0x32c0 009912 copy rega ,pdata 
+0x32c1 009913 iadd regc ,contw 
+0x32c2 009914 copy temp ,pdata 
+0x32c3 009915 rtn 
+:      009917 g24_set_contw_with_temp_store_3byte:
+0x32c4 009918 call g24_set_contw_with_temp 
+:      009919 g24_contw_istore_3byte:
+0x32c5 009920 istore 3 ,contw 
+0x32c6 009921 rtn 
+:      009923 g24_set_contw_with_regb:
+0x32c7 009924 call g24_head_ptr2regc 
+:      009925 g24_set_contw_with_regb2:
+0x32c8 009926 copy pdata ,regb 
+0x32c9 009927 copy rega ,pdata 
+0x32ca 009928 iadd regc ,contw 
+0x32cb 009929 copy regb ,pdata 
+0x32cc 009930 rtn 
+:      009932 g24_set_rega:
+0x32cd 009933 call g24_head_ptr2regc 
+0x32ce 009934 iadd regc ,rega 
+0x32cf 009935 rtn 
+:      009937 g24_set_rega_ifetch_1byte:
+0x32d0 009938 call g24_set_rega 
+:      009939 g24_rega_ifetch_1byte:
+0x32d1 009940 ifetch 1 ,rega 
+0x32d2 009941 rtn 
+:      009943 g24_set_rega_ifetcht_4byte:
+0x32d3 009944 call g24_set_rega 
+0x32d4 009945 ifetcht 4 ,rega 
+0x32d5 009946 rtn 
+:      009948 g24_mem_set0:
+0x32d6 009949 setarg 0 
+0x32d7 009950 branch g24_contw_istore_1byte 
+:      009954 app_init:
+0x32d8 009955 bpatch patch18_4 ,mem_patch18 
+0x32d9 009956 fetch 1 ,mem_device_option 
+0x32da 009957 branch app_init ,blank 
+0x32db 009959 beq dvc_op_dongle ,dongle_init 
+0x32dc 009960 beq dvc_op_antilost ,antilost_init 
+0x32dd 009961 beq dvc_op_shutter ,shutter_init 
+0x32de 009962 beq dvc_op_module ,module_init 
+0x32df 009963 beq dvc_op_car ,car_init 
+0x32e0 009964 beq dvc_op_remote_car ,remote_car_init 
+0x32e1 009965 bbit1 dvc_op_mouse ,mouse_init 
+0x32e2 009966 rtn 
+:      009968 app_lpm_init:
+0x32e3 009969 bpatch patch18_5 ,mem_patch18 
+0x32e4 009970 jam 0 ,mem_tester_emulate 
+0x32e5 009971 jam 0 ,mem_debug_config 
+0x32e6 009972 jam 0 ,mem_lch_code 
+0x32e7 009973 setarg 0 
+0x32e8 009974 store 5 ,mem_sp_state_start 
+0x32e9 009975 fetch 1 ,mem_device_option 
+0x32ea 009976 branch app_lpm_init ,blank 
+0x32eb 009977 beq dvc_op_module ,module_lpm_init 
+:      009978 app_lpm_init0:
+0x32ec 009979 rtn 
+:      009982 app_process_idle:
+0x32ed 009983 call ui_dispatch 
+0x32ee 009984 call check_51cmd 
+0x32ef 009985 call app_process_bb_event 
+0x32f0 009986 fetch 2 ,mem_cb_idle_process 
+0x32f1 009987 branch callback_func 
+:      009989 app_process_bt:
+0x32f2 009990 fetch 2 ,mem_cb_bt_process 
+0x32f3 009991 branch callback_func 
+:      009993 app_process_ble:
+0x32f4 009994 fetch 2 ,mem_cb_le_process 
+0x32f5 009995 branch callback_func 
+:      009997 app_process_bb_event:
+0x32f6 009998 bpatch patch18_6 ,mem_patch18 
+0x32f7 010000 arg mem_ipc_fifo_bt2c51 ,rega 
+0x32f8 010001 call fifo_out 
+0x32f9 010002 rtn blank 
+0x32fa 010004 copy pdata ,regc 
+0x32fb 010005 call app_event_normal_process 
+0x32fc 010006 branch app_process_bb_event_priority 
+:      010008 app_discard_event:
+0x32fd 010009 arg 0 ,regc 
+0x32fe 010010 rtn 
+:      010015 app_event_normal_process:
+0x32ff 010016 beq bt_evt_bb_connected ,app_evt_bt_conn 
+0x3300 010017 beq bt_evt_button_long_pressed ,app_evt_button_long_pressed 
+0x3301 010018 beq bt_evt_setup_complete ,app_evt_setup_complete 
+0x3302 010019 beq bt_evt_hid_handshake ,app_evt_hid_handshake 
+0x3303 010020 beq bt_evt_hid_connected ,app_bb_event_hid_connected 
+0x3304 010021 beq bt_evt_reconn_failed ,app_bb_event_reconn_failed 
+0x3305 010022 beq bt_evt_bb_disconnected ,app_bb_event_bb_disconn 
+0x3306 010023 beq bt_evt_reconn_page_timeout ,app_bb_event_reconn_failed 
+0x3307 010024 beq bt_evt_le_connected ,app_le_event_bb_connected 
+0x3308 010025 beq bt_evt_le_disconnected ,app_le_event_bb_disconn 
+0x3309 010026 beq bt_evt_reconn_started ,app_event_reconn_start 
+0x330a 010027 beq bt_evt_enter_sniff ,app_event_enter_sniff 
+0x330b 010028 beq bt_evt_exit_sniff ,app_event_exit_sniff 
+0x330c 010030 beq bt_evt_ml2cap_conn_refused ,app_event_ml2cap_conn_refused 
+0x330d 010031 beq bt_evt_linkkey_generate ,app_event_linkkey_generate 
+0x330e 010032 beq bt_evt_switch_fail_master ,app_event_switch_fail_master 
+0x330f 010033 beq bt_evt_switch_success_master ,app_event_switch_success 
+0x3310 010034 rtn 
+:      010037 app_evt_bt_conn:
+0x3311 010038 fetch 2 ,mem_ui_state_map 
+0x3312 010039 set1 ui_state_bt_connected ,pdata 
+0x3313 010040 store 2 ,mem_ui_state_map 
+0x3314 010041 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3315 010042 set0 app_disc_by_button ,pdata 
+0x3316 010043 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3317 010044 rtn 
+:      010046 app_event_switch_success:
+0x3318 010047 jam 0 ,mem_switch_fail_master_count 
+0x3319 010048 rtn 
+:      010050 app_event_switch_fail_master:
+0x331a 010051 fetch 1 ,mem_switch_fail_master_count 
+0x331b 010052 increase 1 ,pdata 
+0x331c 010053 store 1 ,mem_switch_fail_master_count 
+0x331d 010054 sub pdata ,1 ,null 
+0x331e 010055 branch app_bt_role_switch ,positive 
+0x331f 010056 jam 0 ,mem_switch_fail_master_count 
+0x3320 010057 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3321 010058 set1 app_disc_switch_fail ,pdata 
+0x3322 010059 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3323 010060 branch app_bt_disconnect 
+:      010062 app_process_bb_event_priority:
+0x3324 010063 fetch 2 ,mem_cb_bb_event_process 
+0x3325 010064 branch callback_func 
+:      010066 app_check_wake_lock:
+0x3326 010067 fetch 2 ,mem_cb_check_wakelock 
+0x3327 010068 branch callback_func 
+:      010070 app_will_enter_lpm:
+0x3328 010071 fetch 2 ,mem_cb_before_lpm 
+0x3329 010072 branch callback_func 
+:      010074 app_event_linkkey_generate:
+0x332a 010075 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x332b 010076 set1 app_disc_after_pairing ,pdata 
+0x332c 010077 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x332d 010078 branch app_bt_store_reconn_info 
+:      010080 app_event_reconn_start:
+0x332e 010081 fetch 2 ,mem_ui_state_map 
+0x332f 010082 set1 ui_state_bt_reconnect ,pdata 
+0x3330 010083 store 2 ,mem_ui_state_map 
+0x3331 010084 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3332 010085 set1 app_disc_after_reconn ,pdata 
+0x3333 010086 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3334 010087 rtn 
+:      010089 app_evt_setup_complete:
+0x3335 010090 fetch 2 ,mem_ui_state_map 
+0x3336 010091 set1 ui_state_bt_setup_complete ,pdata 
+0x3337 010092 store 2 ,mem_ui_state_map 
+0x3338 010093 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3339 010094 set1 app_disc_after_setup_done ,pdata 
+0x333a 010095 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x333b 010096 rtn 
+:      010098 app_evt_hid_handshake:
+0x333c 010099 fetch 2 ,mem_ui_state_map 
+0x333d 010100 set1 ui_state_bt_hid_handshake ,pdata 
+0x333e 010101 store 2 ,mem_ui_state_map 
+0x333f 010102 rtn 
+:      010104 app_event_enter_sniff:
+0x3340 010105 fetch 2 ,mem_ui_state_map 
+0x3341 010106 set1 ui_state_bt_sniff ,pdata 
+0x3342 010107 store 2 ,mem_ui_state_map 
+0x3343 010108 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3344 010109 set1 app_disc_after_sniff ,pdata 
+0x3345 010110 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3346 010111 rtn 
+:      010113 app_event_exit_sniff:
+0x3347 010114 fetch 2 ,mem_ui_state_map 
+0x3348 010115 set0 ui_state_bt_sniff ,pdata 
+0x3349 010116 store 2 ,mem_ui_state_map 
+0x334a 010117 rtn 
+:      010119 app_le_event_bb_connected:
+0x334b 010120 fetch 2 ,mem_ui_state_map 
+0x334c 010121 set1 ui_state_ble_connected ,pdata 
+0x334d 010122 store 2 ,mem_ui_state_map 
+0x334e 010123 rtn 
+:      010125 app_le_event_bb_disconn:
+0x334f 010126 fetch 2 ,mem_ui_state_map 
+0x3350 010127 set0 ui_state_ble_connected ,pdata 
+0x3351 010128 store 2 ,mem_ui_state_map 
+0x3352 010129 branch app_lpm_mult_disable 
+:      010131 app_bb_event_hid_connected:
+0x3353 010132 fetch 2 ,mem_ui_state_map 
+0x3354 010133 set1 ui_state_bt_hid_conn ,pdata 
+0x3355 010134 store 2 ,mem_ui_state_map 
+0x3356 010135 rtn 
+:      010137 app_evt_button_long_pressed:
+0x3357 010138 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x3358 010139 set1 app_disc_by_button ,pdata 
+0x3359 010140 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x335a 010141 rtn 
+:      010143 app_event_ml2cap_conn_refused:
+0x335b 010144 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x335c 010145 set1 app_disc_l2cap_refused ,pdata 
+0x335d 010146 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x335e 010147 branch app_bt_disconnect 
+:      010150 app_evt_timer:
+0x335f 010151 bpatch patch18_7 ,mem_patch18 
+0x3360 010152 store 1 ,mem_app_evt_timer_count 
+:      010153 app_evt_100ms_loop:
+0x3361 010154 fetch 1 ,mem_app_evt_timer_count 
+0x3362 010155 rtn blank 
+0x3363 010156 increase -1 ,pdata 
+0x3364 010157 store 1 ,mem_app_evt_timer_count 
+0x3365 010158 call ui_button_polling 
+0x3366 010159 call app_lpm_wake_auto_lock_timer 
+0x3367 010160 call app_unsniff_delay_timer 
+0x3368 010161 call app_discovery_timer 
+0x3369 010162 call flash_write_spi_sm_timer 
+0x336a 010163 fetch 2 ,mem_cb_event_timer 
+0x336b 010164 call callback_func 
+0x336c 010165 branch app_evt_100ms_loop 
+:      010170 timer_single_step:
+0x336d 010171 ifetch 1 ,regc 
+0x336e 010172 rtn blank 
+0x336f 010173 pincrease -1 
+0x3370 010174 istore 1 ,regc 
+0x3371 010175 nrtn blank 
+0x3372 010176 copy regb ,pdata 
+0x3373 010177 branch callback_func 
+:      010181 timer_single_step_2b:
+0x3374 010182 ifetch 2 ,regc 
+0x3375 010183 rtn blank 
+0x3376 010184 pincrease -1 
+0x3377 010185 istore 2 ,regc 
+0x3378 010186 nrtn blank 
+0x3379 010187 copy regb ,pdata 
+0x337a 010188 branch callback_func 
+:      010190 app_power_timer:
+0x337b 010191 fetcht 2 ,mem_power_param_ptr 
+0x337c 010192 add temp ,power_timer_offset ,regc 
+0x337d 010193 arg app_power_timer_timeout ,regb 
+0x337e 010194 branch timer_single_step 
+:      010196 app_power_timer_timeout:
+0x337f 010197 call app_got_power_state_common 
+0x3380 010198 beq power_starting ,app_enter_power_stanby_state 
+:      010199 app_enter_power_off_state:
+0x3381 010200 branch app_enter_hibernate 
+:      010201 app_enter_power_stanby_state:
+0x3382 010202 setarg power_standby 
+0x3383 010203 istore 1 ,regc 
+0x3384 010204 add temp ,power_standby_cb_offset ,regb 
+:      010205 app_power_cb_common:
+0x3385 010206 ifetch 2 ,regb 
+0x3386 010207 branch callback_func 
+:      010209 app_unsniff_delay_timer:
+0x3387 010210 arg mem_unsniff2sniff_timer_count ,regc 
+0x3388 010211 arg app_unsniff_delay_timeout ,regb 
+0x3389 010212 branch timer_single_step 
+:      010214 app_unsniff_delay_timeout:
+0x338a 010215 call context_check_idle 
+0x338b 010216 branch app_bt_enter_sniff ,zero 
+0x338c 010217 rtn 
+:      010220 app_discovery_timer:
+0x338d 010221 arg mem_discovery_timeout_timer_count ,regc 
+0x338e 010222 arg app_discovery_timeout ,regb 
+0x338f 010223 branch timer_single_step_2b 
+:      010225 app_discovery_timeout:
+0x3390 010226 call app_bt_stop_discovery 
+0x3391 010227 call app_led_off 
+0x3392 010228 fetch 2 ,mem_cb_discovry_timeout 
+0x3393 010229 branch callback_func 
+:      010232 app_bb_event_reconn_failed:
+0x3394 010233 call app_disconn_reason_flag_clear 
+:      010234 app_clear_reconnect_flag:
+0x3395 010235 fetch 2 ,mem_ui_state_map 
+0x3396 010236 set0 ui_state_bt_reconnect ,pdata 
+0x3397 010237 store 2 ,mem_ui_state_map 
+0x3398 010238 rtn 
+:      010240 app_bb_event_bb_disconn:
+0x3399 010241 jam 0 ,mem_unsniff2sniff_timer_count 
+0x339a 010242 fetch 2 ,mem_ui_state_map 
+0x339b 010243 bbit1 ui_state_bt_reconnect ,app_bb_event_bb_reconn_disconn 
+0x339c 010244 isolate0 ui_state_bt_setup_complete ,pdata 
+0x339d 010245 call app_discard_event ,true 
+:      010246 app_bb_event_bb_reconn_disconn:
+0x339e 010247 bpatch patch19_0 ,mem_patch19 
+0x339f 010248 fetch 2 ,mem_ui_state_map 
+0x33a0 010249 set0 ui_state_bt_connected ,pdata 
+0x33a1 010250 set0 ui_state_bt_setup_complete ,pdata 
+0x33a2 010251 set0 ui_state_bt_hid_conn ,pdata 
+0x33a3 010252 set0 ui_state_bt_hid_handshake ,pdata 
+0x33a4 010253 set0 ui_state_bt_reconnect ,pdata 
+0x33a5 010254 store 2 ,mem_ui_state_map 
+0x33a6 010255 branch app_lpm_mult_disable 
+:      010257 app_bb_hibernate:
+0x33a7 010258 call app_disconn_reason_clear 
+0x33a8 010259 branch app_enter_hibernate 
+:      010262 app_disconn_reason_clear:
+0x33a9 010263 setarg 0 
+0x33aa 010264 store app_disc_rsn_size ,mem_app_disconn_reason 
+0x33ab 010265 rtn 
+:      010266 app_disconn_reason_flag_clear:
+0x33ac 010267 setarg 0 
+0x33ad 010268 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33ae 010269 rtn 
+:      010271 app_disconn_reason_collect_bt:
+0x33af 010272 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b0 010273 store app_disc_rsn_size ,mem_app_disconn_reason 
+0x33b1 010274 setarg 0 
+0x33b2 010275 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b3 010276 rtn 
+:      010278 app_disconn_reason_collect_ble:
+0x33b4 010279 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b5 010280 set1 app_disc_ble ,pdata 
+0x33b6 010281 store app_disc_rsn_size ,mem_app_disconn_reason 
+0x33b7 010282 setarg 0 
+0x33b8 010283 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x33b9 010284 rtn 
+:      010292 app_check_sniff:
+0x33ba 010293 fetch 1 ,mem_ui_state_map 
+0x33bb 010294 isolate1 ui_state_bt_sniff ,pdata 
+0x33bc 010295 rtn 
+:      010303 app_initflag_store:
+0x33bd 010304 setarg eeprom_init_flag 
+:      010305 app_flag_store:
+0x33be 010306 store 2 ,mem_timeup 
+0x33bf 010307 bpatch patch19_1 ,mem_patch19 
+0x33c0 010308 arg 2 ,temp 
+0x33c1 010309 arg mem_timeup ,rega 
+0x33c2 010310 arg eeprom_module_init_flag ,regb 
+0x33c3 010311 branch iicd_write_eep_data 
+:      010314 app_initflag_check:
+0x33c4 010315 bpatch patch19_2 ,mem_patch19 
+0x33c5 010316 arg 2 ,temp 
+0x33c6 010317 arg mem_pdatatemp ,rega 
+0x33c7 010318 arg eeprom_module_init_flag ,regb 
+0x33c8 010319 call iicd_read_eep_data 
+0x33c9 010320 fetch 2 ,mem_pdatatemp 
+0x33ca 010321 arg eeprom_init_flag ,temp 
+0x33cb 010322 isub temp ,null 
+0x33cc 010323 rtn 
+:      010326 app_start_auto_sniff:
+0x33cd 010327 fetch 1 ,mem_unsniff2sniff_timer 
+0x33ce 010328 store 1 ,mem_unsniff2sniff_timer_count 
+0x33cf 010329 rtn 
+:      010331 app_get_lpm_wake_lock:
+0x33d0 010332 arg wake_lock_app ,queue 
+0x33d1 010333 branch lpm_get_wake_lock 
+:      010335 app_put_lpm_wake_lock:
+0x33d2 010336 arg wake_lock_app ,queue 
+0x33d3 010337 branch lpm_put_wake_lock 
+:      010339 app_lpm_wake_auto_lock:
+0x33d4 010340 jam lpm_wake_up_delay_timer ,mem_wake_up_delay_timer 
+0x33d5 010341 branch app_get_lpm_wake_lock 
+:      010343 app_lpm_wake_auto_lock_timer:
+0x33d6 010344 arg mem_wake_up_delay_timer ,regc 
+0x33d7 010345 arg app_put_lpm_wake_lock ,regb 
+0x33d8 010346 branch timer_single_step 
+:      010348 app_l2cap_flow_control_enable:
+0x33d9 010349 jam l2cap_flow_ctrl_enable ,mem_l2cap_flow_ctrl_flag 
+0x33da 010350 rtn 
+:      010352 app_l2cap_flow_control_disable:
+0x33db 010353 jam l2cap_flow_ctrl_disable ,mem_l2cap_flow_ctrl_flag 
+0x33dc 010354 rtn 
+:      010356 app_bt_set_pincode:
+0x33dd 010357 jam bt_cmd_set_pin_code ,mem_fifo_temp 
+0x33de 010358 branch ui_ipc_send_cmd 
+:      010360 app_bt_role_switch:
+0x33df 010361 jam bt_cmd_role_switch ,mem_fifo_temp 
+0x33e0 010362 branch ui_ipc_send_cmd 
+:      010364 app_bt_start_reconnect:
+0x33e1 010365 bpatch patch19_3 ,mem_patch19 
+0x33e2 010366 fetch 1 ,mem_app_connection_options 
+0x33e3 010367 store 1 ,mem_connection_options 
+0x33e4 010368 jam app_flag_reconnect ,mem_reconnect_flag 
+0x33e5 010369 jam bt_cmd_reconnect ,mem_fifo_temp 
+0x33e6 010370 branch ui_ipc_send_cmd 
+:      010372 app_bt_reconnect_cancel:
+0x33e7 010373 jam bt_cmd_bb_reconn_cancel ,mem_fifo_temp 
+0x33e8 010374 branch ui_ipc_send_cmd 
+:      010376 app_bt_disconnect:
+0x33e9 010377 jam bt_cmd_disconnect ,mem_fifo_temp 
+0x33ea 010378 branch ui_ipc_send_cmd 
+:      010380 app_bt_start_discovery_short:
+0x33eb 010381 fetch 2 ,mem_discovery_timeout 
+0x33ec 010382 store 2 ,mem_discovery_timeout_timer_count 
+:      010383 app_bt_start_discovery_led_blink:
+0x33ed 010384 call app_led_start_blink 
+:      010385 app_bt_start_discovery:
+0x33ee 010386 jam bt_cmd_start_discovery ,mem_fifo_temp 
+0x33ef 010387 branch ui_ipc_send_cmd 
+:      010389 app_bt_stop_discovery:
+0x33f0 010390 setarg 0 
+0x33f1 010391 store 2 ,mem_discovery_timeout_timer_count 
+0x33f2 010392 jam bt_cmd_stop_discovery ,mem_fifo_temp 
+0x33f3 010393 branch ui_ipc_send_cmd 
+:      010395 app_ble_start_direct_adv:
+0x33f4 010396 jam bt_cmd_start_direct_adv ,mem_fifo_temp 
+0x33f5 010397 branch ui_ipc_send_cmd 
+:      010399 app_ble_stop_direct_adv:
+0x33f6 010400 jam bt_cmd_stop_direct_adv ,mem_fifo_temp 
+0x33f7 010401 branch ui_ipc_send_cmd 
+:      010403 app_ble_stop_adv:
+0x33f8 010404 jam bt_cmd_stop_adv ,mem_fifo_temp 
+0x33f9 010405 branch ui_ipc_send_cmd 
+:      010407 app_ble_start_adv:
+0x33fa 010408 jam bt_cmd_start_adv ,mem_fifo_temp 
+0x33fb 010409 branch ui_ipc_send_cmd 
+:      010411 app_ble_start_scan:
+0x33fc 010412 jam bt_cmd_le_start_scan ,mem_fifo_temp 
+0x33fd 010413 branch ui_ipc_send_cmd 
+:      010415 app_ble_stop_scan:
+0x33fe 010416 jam bt_cmd_le_stop_scan ,mem_fifo_temp 
+0x33ff 010417 branch ui_ipc_send_cmd 
+:      010419 app_ble_start_conn:
+0x3400 010420 jam bt_cmd_le_start_conn ,mem_fifo_temp 
+0x3401 010421 branch ui_ipc_send_cmd 
+:      010423 app_ble_disconnect:
+0x3402 010424 jam bt_cmd_le_disconnect ,mem_fifo_temp 
+0x3403 010425 branch ui_ipc_send_cmd 
+:      010427 app_led_start_blink:
+0x3404 010428 jam bt_cmd_led_blink ,mem_fifo_temp 
+0x3405 010429 branch ui_ipc_send_cmd 
+:      010431 app_led_on:
+0x3406 010432 jam bt_cmd_led_on ,mem_fifo_temp 
+0x3407 010433 branch ui_ipc_send_cmd 
+:      010435 app_led_stop_blink:
+:      010436 app_led_off:
+0x3408 010437 jam bt_cmd_led_off ,mem_fifo_temp 
+0x3409 010438 branch ui_ipc_send_cmd 
+:      010440 app_enter_hibernate:
+0x340a 010441 jam bt_cmd_enter_hibernate ,mem_fifo_temp 
+0x340b 010442 branch ui_ipc_send_cmd 
+:      010444 app_bt_sniff_exit:
+0x340c 010445 jam bt_cmd_exit_sniff ,mem_fifo_temp 
+0x340d 010446 branch ui_ipc_send_cmd 
+:      010448 app_bt_enter_sniff:
+0x340e 010449 jam bt_cmd_enter_sniff ,mem_fifo_temp 
+0x340f 010450 branch ui_ipc_send_cmd 
+:      010452 app_ble_store_reconn_info:
+0x3410 010453 jam bt_cmd_store_reconn_info_le ,mem_fifo_temp 
+0x3411 010454 branch ui_ipc_send_cmd 
+:      010456 app_bt_store_reconn_info:
+0x3412 010457 jam bt_cmd_store_reconn_info_bt ,mem_fifo_temp 
+0x3413 010458 branch ui_ipc_send_cmd 
+:      010460 app_store_reconn_info:
+0x3414 010461 jam bt_cmd_store_reconn_info ,mem_fifo_temp 
+0x3415 010462 branch ui_ipc_send_cmd 
+:      010464 app_lpm_mult_enable:
+0x3416 010465 set1 mark_lpm_mult_enable ,mark 
+0x3417 010466 rtn 
+:      010468 app_lpm_mult_disable:
+0x3418 010469 set0 mark_lpm_mult_enable ,mark 
+0x3419 010470 rtn 
+:      010490 app_button_long_pressed:
+0x341a 010491 call app_got_power_state_common 
+0x341b 010492 beq power_standby ,app_power_shutting_down 
+:      010493 app_power_starting:
+0x341c 010494 setarg power_starting 
+0x341d 010495 istore 1 ,regc 
+0x341e 010496 add temp ,power_starting_timeout_offset ,rega 
+0x341f 010497 add temp ,power_starting_cb_offset ,regb 
+:      010498 app_power_common:
+0x3420 010499 ifetcht 1 ,rega 
+0x3421 010500 increase 1 ,regc 
+0x3422 010501 istoret 1 ,regc 
+0x3423 010502 branch app_power_cb_common 
+:      010504 app_power_shutting_down:
+0x3424 010505 setarg power_off 
+0x3425 010506 istore 1 ,regc 
+0x3426 010507 fetch 2 ,mem_ui_state_map 
+0x3427 010508 bbit0 ui_state_ble_connected ,app_power_off_end 
+0x3428 010509 call app_ble_disconnect 
+:      010510 app_power_off_end:
+0x3429 010511 fetcht 2 ,mem_power_param_ptr 
+0x342a 010512 add temp ,power_off_timeout_offset ,rega 
+0x342b 010513 add temp ,power_off_cb_offset ,regb 
+0x342c 010514 branch app_power_common 
+:      010516 app_got_power_state_common:
+0x342d 010517 fetcht 2 ,mem_power_param_ptr 
+0x342e 010518 add temp ,power_state_offset ,regc 
+0x342f 010519 ifetch 1 ,regc 
+0x3430 010520 rtn 
+:      010522 app_event_button_up:
+0x3431 010523 call app_got_power_state_common 
+0x3432 010524 bne power_off ,app_power_release 
+0x3433 010525 branch app_enter_hibernate 
+:      010526 app_power_release:
+0x3434 010527 add temp ,ui_butten_up_cb_offset ,regb 
+0x3435 010528 branch app_power_cb_common 
+:      010530 antilost_init:
+0x3436 010531 rtn wake 
+0x3437 010532 jam 0x00 ,core_gpio_sel1 
+0x3438 010533 setarg antilost_le_before_hibernate 
+0x3439 010534 store 2 ,mem_cb_before_hibernate 
+0x343a 010535 setarg keyscan_process_lpm_before 
+0x343b 010536 store 2 ,mem_cb_before_lpm 
+0x343c 010537 setarg antilost_idle_process 
+0x343d 010538 store 2 ,mem_cb_idle_process 
+0x343e 010539 setarg antilost_le_conn_process 
+0x343f 010540 store 2 ,mem_cb_le_process 
+0x3440 010541 setarg antilost_bb_event_process 
+0x3441 010542 store 2 ,mem_cb_bb_event_process 
+0x3442 010543 setarg antilost_le_bb_event_timer 
+0x3443 010544 store 2 ,mem_cb_event_timer 
+0x3444 010545 setarg antilost_le_notification 
+0x3445 010546 store 2 ,mem_cb_ble_transmit 
+0x3446 010547 setarg antilost_lpm_lock_process 
+0x3447 010548 store 2 ,mem_cb_check_wakelock 
+0x3448 010549 setarg antilost_le_receive_data_process 
+0x3449 010550 store 2 ,mem_cb_att_write 
+0x344a 010551 bpatch patch19_4 ,mem_patch19 
+0x344b 010552 call antilost_buzzer_pwm_init 
+0x344c 010553 call keyscan_key_init 
+0x344d 010554 call antilost_adc_init 
+0x344e 010555 call ui_led_init_global 
+0x344f 010556 call ui_button_init 
+0x3450 010557 setarg antilost_key_up_down 
+0x3451 010558 store 2 ,mem_cb_antl_key 
+0x3452 010559 setarg antilost_power_off_cb 
+0x3453 010560 store 2 ,mem_antl_power_off_cb 
+0x3454 010561 setarg antilost_power_starting_cb 
+0x3455 010562 store 2 ,mem_antl_power_starting_cb 
+0x3456 010563 setarg antilost_power_standby_cb 
+0x3457 010564 store 2 ,mem_antl_power_standby_cb 
+0x3458 010565 setarg antilost_led_on_cb 
+0x3459 010566 store 2 ,mem_antl_led_cb_on 
+0x345a 010567 setarg antilost_led_off_cb 
+0x345b 010568 store 2 ,mem_antl_led_cb_off 
+0x345c 010569 setarg antilost_buzzer_on 
+0x345d 010570 store 2 ,mem_antl_buzzer_cb_on 
+0x345e 010571 setarg antilost_buzzer_off 
+0x345f 010572 store 2 ,mem_antl_buzzer_cb_off 
+0x3460 010573 fetch 2 ,mem_ui_state_map 
+0x3461 010574 rtnbit1 ui_state_btn_down 
+0x3462 010575 branch app_enter_hibernate 
+:      010577 antilost_le_before_hibernate:
+0x3463 010578 call antilost_led_buzzer_stop_blink 
+0x3464 010579 branch app_enter_hibernate 
+:      010581 antilost_le_notification:
+0x3465 010582 call le_fifo_check_nearly_full 
+0x3466 010583 nrtn blank 
+0x3467 010584 arg mem_temp_block5 ,rega 
+0x3468 010585 call queue_pop 
+0x3469 010586 nrtn user 
+0x346a 010587 arg mem_temp_block5 ,contr 
+0x346b 010588 branch le_send_notify_from_list 
+:      010590 antilost_power_standby_cb:
+0x346c 010591 fetch 2 ,mem_antl_le_sleep_timeout 
+0x346d 010592 store 2 ,mem_antl_le_sleep_timer 
+0x346e 010593 jam 1 ,mem_antl_key_scan_enable 
+0x346f 010594 branch antilost_fast_adv_start 
+:      010596 antilost_lpm_lock_process:
+0x3470 010597 fetch 1 ,mem_antl_key_state 
+0x3471 010598 beq 1 ,antilost_lpm_ctrl_for_led_buzzer 
+0x3472 010599 fetch 2 ,mem_ui_state_map 
+0x3473 010600 bbit0 ui_state_ble_connected ,antilost_lpm_ctrl_for_led_buzzer 
+0x3474 010601 fetch 1 ,mem_antl_lost_mode 
+0x3475 010602 beq 1 ,app_get_lpm_wake_lock 
+0x3476 010603 fetch 1 ,mem_antl_queue_curr_num 
+0x3477 010604 nbranch app_get_lpm_wake_lock ,blank 
+0x3478 010605 branch app_put_lpm_wake_lock 
+:      010607 antilost_lpm_ctrl_for_led_buzzer:
+0x3479 010608 fetch 1 ,mem_antl_led_state 
+0x347a 010609 fetcht 1 ,mem_antl_buzzer_state 
+0x347b 010610 ior temp ,pdata 
+0x347c 010611 beq 1 ,app_get_lpm_wake_lock 
+0x347d 010612 branch app_put_lpm_wake_lock 
+:      010614 antilost_bb_event_process:
+0x347e 010615 copy regc ,pdata 
+0x347f 010616 beq bt_evt_button_up ,app_event_button_up 
+0x3480 010617 beq bt_evt_button_long_pressed ,app_button_long_pressed 
+0x3481 010618 beq bt_evt_le_connected ,antilost_le_process_conn 
+0x3482 010619 beq bt_evt_le_disconnected ,antilost_le_process_discon 
+0x3483 010620 beq bt_evt_le_parse_conn_papa_update_rsp ,antilost_le_conn_param_update_rsp_recieved 
+0x3484 010621 rtn 
+:      010622 antilost_le_conn_param_update_rsp_recieved:
+0x3485 010623 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x3486 010624 beq ble_signaling_connect_parameter_update_rejected ,antilost_le_conn_param_rejected 
+:      010625 antilost_le_conn_param_accepted:
+0x3487 010626 fetch 2 ,mem_le_new_connslavelatency 
+0x3488 010627 branch antilost_master_nonsupport_latency ,blank 
+:      010628 antilost_le_conn_param_updata_procedure_sucsess:
+0x3489 010629 jam conn_param_updata_procedure_complete ,mem_antl_conn_updata_procedure_state 
+0x348a 010630 jam 60 ,mem_antl_conn_update_timer 
+0x348b 010631 rtn 
+:      010633 antilost_le_conn_param_rejected:
+0x348c 010634 fetch 2 ,mem_le_latency 
+0x348d 010635 branch antilost_conn_param_updata_procedure_faild ,blank 
+:      010636 antilost_conn_param_retransimiting:
+0x348e 010637 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
+0x348f 010638 fetcht 2 ,mem_interval_increment 
+0x3490 010639 fetch 2 ,mem_le_interval_min 
+0x3491 010640 iadd temp ,pdata 
+0x3492 010641 store 2 ,mem_le_interval_min 
+0x3493 010642 copy pdata ,rega 
+0x3494 010643 fetch 2 ,mem_le_interval_max 
+0x3495 010644 iadd temp ,pdata 
+0x3496 010645 store 2 ,mem_le_interval_max 
+0x3497 010646 iadd rega ,pdata 
+0x3498 010647 rshift pdata ,temp 
+0x3499 010648 fetch 2 ,mem_antl_le_unnormal_interval_max 
+0x349a 010649 idiv temp 
+0x349b 010650 call wait_div_end 
+0x349c 010651 quotient pdata 
+0x349d 010652 store 2 ,mem_le_latency 
+0x349e 010653 jam 1 ,mem_antl_send_updata_le_param_timer 
+0x349f 010654 rtn 
+:      010655 antilost_conn_param_updata_procedure_faild:
+0x34a0 010656 jam conn_param_updata_procedure_faild ,mem_antl_conn_updata_procedure_state 
+0x34a1 010657 rtn 
+:      010659 antilost_master_nonsupport_latency:
+0x34a2 010660 jam 0 ,mem_lpm_mult 
+0x34a3 010661 jam 0 ,mem_antl_send_updata_le_param_timer 
+0x34a4 010662 fetch 2 ,mem_le_new_conninterval 
+0x34a5 010663 fetcht 2 ,mem_antl_le_unnormal_interval_min 
+0x34a6 010664 isub temp ,null 
+0x34a7 010665 setflag positive ,0 ,rega 
+0x34a8 010666 fetch 2 ,mem_antl_le_unnormal_interval_max 
+0x34a9 010667 fetcht 2 ,mem_le_new_conninterval 
+0x34aa 010668 isub temp ,pdata 
+0x34ab 010669 setflag positive ,1 ,rega 
+0x34ac 010670 compare 0x03 ,rega ,0x03 
+0x34ad 010671 rtn true 
+0x34ae 010672 fetch 8 ,mem_antl_le_unnormal_interval_min 
+0x34af 010673 store 8 ,mem_le_interval_min 
+0x34b0 010674 jam 1 ,mem_antl_send_updata_le_param_timer 
+0x34b1 010675 rtn 
+:      010678 antilost_le_bb_event_timer:
+0x34b2 010680 call app_power_timer 
+0x34b3 010681 call antilost_double_click_timer 
+0x34b4 010682 call antilost_le_fast_adv_timer 
+0x34b5 010683 call antilost_le_sleep_timer 
+0x34b6 010684 call antilost_app_updata_le_param_timer 
+0x34b7 010685 call antilost_conn_update_timer 
+0x34b8 010686 branch antilost_adc_check_timer 
+:      010689 antilost_double_click_timer:
+0x34b9 010690 arg mem_double_click_timer ,regc 
+0x34ba 010691 arg antilost_double_click_timeout ,regb 
+0x34bb 010692 branch timer_single_step 
+:      010693 antilost_double_click_timeout:
+0x34bc 010694 jam 0 ,mem_butten_click_cnt 
+0x34bd 010695 rtn 
+:      010696 antilost_le_fast_adv_timer:
+0x34be 010697 arg mem_antl_fast_adv_timer ,regc 
+0x34bf 010698 arg antilost_le_fast_adv_timeout ,regb 
+0x34c0 010699 branch timer_single_step_2b 
+:      010700 antilost_le_fast_adv_timeout:
+0x34c1 010701 arg mem_antl_slow_adv_led_style ,regc 
+0x34c2 010702 arg mem_antl_slow_adv_lpm_interval ,regb 
+0x34c3 010703 branch antilost_adv_start_common 
+:      010706 antilost_conn_update_timer:
+0x34c4 010707 arg mem_antl_conn_update_timer ,regc 
+0x34c5 010708 arg antilost_conn_update_timer_time_out ,regb 
+0x34c6 010709 branch timer_single_step 
+:      010711 antilost_conn_update_timer_time_out:
+0x34c7 010712 fetch 2 ,mem_le_latency 
+0x34c8 010713 store 1 ,mem_lpm_mult 
+0x34c9 010714 rtn 
+:      010715 antilost_app_updata_le_param_timer:
+0x34ca 010716 arg mem_antl_send_updata_le_param_timer ,regc 
+0x34cb 010717 arg antilost_app_updata_le_param_timeout ,regb 
+0x34cc 010718 branch timer_single_step 
+:      010719 antilost_app_updata_le_param_timeout:
+0x34cd 010720 fetch 1 ,mem_le_state 
+0x34ce 010721 compare 0 ,pdata ,0x60 
+0x34cf 010722 nbranch antilost_wait_for_updata_param_instant_expire ,true 
+0x34d0 010723 jam conn_param_updata_procedure_starting ,mem_antl_conn_updata_procedure_state 
+0x34d1 010724 call app_lpm_mult_enable 
+0x34d2 010725 branch le_l2cap_tx_update_req 
+:      010726 antilost_wait_for_updata_param_instant_expire:
+0x34d3 010727 jam 1 ,mem_antl_send_updata_le_param_timer 
+0x34d4 010728 rtn 
+:      010730 antilost_le_sleep_timer:
+0x34d5 010731 arg mem_antl_le_sleep_timer ,regc 
+0x34d6 010732 arg antilost_le_sleep_timer_timeout ,regb 
+0x34d7 010733 branch timer_single_step_2b 
+:      010736 antilost_le_sleep_timer_timeout:
+0x34d8 010737 branch app_button_long_pressed 
+:      010739 antilost_adc_check_timer:
+0x34d9 010742 arg mem_adc_timer ,regc 
+0x34da 010743 arg antilost_adc_check_timer_timeout ,regb 
+0x34db 010744 branch timer_single_step_2b 
+:      010745 antilost_adc_check_timer_timeout:
+0x34dc 010746 fetch 2 ,mem_adc_timeout 
+0x34dd 010747 store 2 ,mem_adc_timer 
+0x34de 010748 branch antilost_battery_process 
+:      010751 antilost_le_process_conn:
+0x34df 010752 fetch 2 ,mem_adc_timeout 
+0x34e0 010753 store 2 ,mem_adc_timer 
+0x34e1 010754 setarg 0 
+0x34e2 010755 store 2 ,mem_antl_fast_adv_timer 
+0x34e3 010756 store 2 ,mem_antl_le_sleep_timer 
+0x34e4 010757 call antilost_alert_off 
+0x34e5 010758 call antilost_led_buzzer_stop_blink 
+0x34e6 010759 jam 0 ,mem_lpm_mult 
+0x34e7 010760 branch app_ble_stop_adv 
+:      010763 antilost_le_process_discon:
+0x34e8 010766 setarg 0 
+0x34e9 010767 store 4 ,mem_adc_timer 
+0x34ea 010768 store 3 ,mem_antl_conn_updata_procedure_state 
+0x34eb 010769 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x34ec 010771 jam 1 ,mem_alarm_config_notfy_cnt 
+0x34ed 010772 fetch 2 ,mem_antl_le_sleep_timeout 
+0x34ee 010773 store 2 ,mem_antl_le_sleep_timer 
+0x34ef 010774 call queue_init 
+0x34f0 010775 fetch 1 ,mem_antl_power_state 
+0x34f1 010776 rtneq power_off 
+0x34f2 010777 call antilost_fast_adv_start 
+0x34f3 010778 branch antilost_on_off_alarm_after_disconn 
+:      010781 antilost_le_conn_process:
+0x34f4 010783 branch antilost_key_process 
+:      010785 antilost_idle_process:
+0x34f5 010787 fetch 1 ,mem_antl_power_state 
+0x34f6 010788 rtnne power_standby 
+0x34f7 010789 branch antilost_key_process 
+:      010794 antilost_power_starting_cb:
+0x34f8 010795 arg mem_antl_power_starting_buzzer_style ,regc 
+0x34f9 010796 call antilost_buzzer_configuration 
+0x34fa 010797 arg mem_antl_power_starting_led_style ,regc 
+:      010798 antilost_power_common:
+0x34fb 010799 branch antilost_led_configuration 
+:      010801 antilost_power_off_cb:
+0x34fc 010802 jam off ,mem_le_adv_enable 
+0x34fd 010803 arg mem_antl_power_off_buzzer_style ,regc 
+0x34fe 010804 call antilost_buzzer_configuration 
+0x34ff 010805 arg mem_antl_power_off_led_style ,regc 
+0x3500 010806 branch antilost_power_common 
+:      010808 antilost_le_receive_data_process:
+0x3501 010809 fetch 1 ,mem_le_att_opcode 
+0x3502 010810 beq attop_write_request ,antilost_le_parse_att_write_request 
+0x3503 010811 rtn 
+:      010812 antilost_le_parse_att_write_request:
+0x3504 010813 fetch 2 ,mem_le_att_handle 
+0x3505 010815 beq new_spec_write_handle ,antilost_cmd_parse_for_application 
+0x3506 010816 beq new_spec_notification_enable_handle ,antilost_notify_alarm_config_first_time 
+0x3507 010817 rtn 
+:      010822 antilost_key_process:
+0x3508 010823 fetch 1 ,mem_antl_key_scan_enable 
+0x3509 010824 rtn blank 
+0x350a 010825 branch keyscan_key_process 
+:      010829 antilost_key_up_down:
+0x350b 010830 copy rega ,pdata 
+0x350c 010831 branch antilost_key_is_up ,blank 
+:      010832 antilost_key_is_down:
+0x350d 010833 copy queue ,pdata 
+0x350e 010834 beq 0 ,antilost_key0_down 
+0x350f 010835 rtn 
+:      010836 antilost_key_is_up:
+0x3510 010837 copy queue ,pdata 
+0x3511 010838 beq 0 ,antilost_key0_up 
+0x3512 010839 rtn 
+:      010841 antilost_key0_down:
+0x3513 010842 jam 1 ,mem_antl_key_state 
+0x3514 010843 arg mem_antl_key_buzzer_style ,regc 
+0x3515 010844 call antilost_buzzer_configuration 
+0x3516 010845 arg mem_antl_key_led_style ,regc 
+0x3517 010846 call antilost_led_configuration 
+0x3518 010847 fetch 2 ,mem_ui_state_map 
+0x3519 010848 bbit0 ui_state_ble_connected ,antilost_butten_down_while_disconn 
+0x351a 010849 branch antilost_butten_down_after_conn 
+:      010851 antilost_key0_up:
+0x351b 010852 jam 0 ,mem_antl_key_state 
+0x351c 010853 branch antilost_double_click_timer_init 
+:      010857 antilost_double_click_timer_init:
+0x351d 010858 fetch 1 ,mem_butten_click_cnt 
+0x351e 010859 rtnne 1 
+0x351f 010860 jam 5 ,mem_double_click_timer 
+0x3520 010861 rtn 
+:      010863 antilost_butten_down_after_conn:
+0x3521 010864 fetch 1 ,mem_butten_click_cnt 
+0x3522 010865 pincrease 1 
+0x3523 010866 store 1 ,mem_butten_click_cnt 
+0x3524 010867 beq 1 ,antilost_click_once 
+0x3525 010868 beq 2 ,antilost_click_twice 
+0x3526 010869 rtn 
+:      010870 antilost_click_once:
+0x3527 010871 call antilost_alert_off 
+0x3528 010872 jam opcode1_butten_click_once ,mem_antl_key0_press + 5 
+0x3529 010873 arg mem_antl_key0_press ,regc 
+0x352a 010874 branch antilost_prepare_data_and_send 
+:      010875 antilost_click_twice:
+0x352b 010876 jam 0 ,mem_butten_click_cnt 
+0x352c 010877 jam opcode2_butten_double_click ,mem_antl_key0_press + 5 
+0x352d 010878 arg mem_antl_key0_press ,regc 
+0x352e 010879 call antilost_prepare_data_and_send 
+0x352f 010880 fetch 1 ,mem_antl_lost_mode 
+0x3530 010881 beq 1 ,antilost_alert_on 
+0x3531 010882 rtn 
+:      010884 antilost_butten_down_while_disconn:
+0x3532 010885 fetch 2 ,mem_antl_le_sleep_timeout 
+0x3533 010886 store 2 ,mem_antl_le_sleep_timer 
+0x3534 010887 call antilost_alert_off 
+0x3535 010888 branch antilost_fast_adv_start 
+:      010891 antilost_cmd_parse_for_application:
+0x3536 010892 bpatch patch19_5 ,mem_patch19 
+0x3537 010893 call le_app_receive_data 
+0x3538 010894 ifetch 1 ,rega 
+0x3539 010895 beq opcode3_antl_start_alram ,antilost_on_of_alram 
+0x353a 010896 beq opcode7_antl_config_alram ,antilost_configuration_for_alram 
+0x353b 010897 rtn 
+:      010899 antilost_on_of_alram:
+0x353c 010900 fetch 1 ,mem_antl_lost_mode 
+0x353d 010901 beq anti_le_alarm_off ,antilost_alert_on 
+0x353e 010902 beq anti_le_alarm_on ,antilost_alert_off 
+0x353f 010903 rtn 
+:      010905 antilost_configuration_for_alram:
+0x3540 010906 ifetch 1 ,regb 
+0x3541 010907 beq 1 ,antilost_set_start_alarm_after_disconn 
+0x3542 010908 beq 0 ,antilost_set_no_alarm_after_disconn 
+0x3543 010909 rtn 
+:      010916 antilost_prepare_data_and_send:
+0x3544 010917 bpatch patch19_6 ,mem_patch19 
+0x3545 010918 fetch 1 ,mem_client_characteristic_configuration_descriptor 
+0x3546 010919 isolate1 notification_enable_bit ,pdata 
+0x3547 010920 nrtn true 
+0x3548 010921 add regc ,6 ,contr 
+0x3549 010922 ifetch 2 ,contr 
+0x354a 010923 byteswap pdata ,pdata 
+0x354b 010924 add pdata ,5 ,loopcnt 
+0x354c 010925 add regc ,3 ,contr 
+0x354d 010926 call calc_check_sum_start 
+0x354e 010927 istore 1 ,contr 
+0x354f 010928 copy regc ,rega 
+0x3550 010929 branch queue_push 
+:      010935 antilost_alert_on:
+0x3551 010936 fetch 1 ,mem_antl_power_state 
+0x3552 010937 rtn blank 
+0x3553 010938 jam 1 ,mem_antl_lost_mode 
+0x3554 010939 arg mem_antl_alert_buzzer_stlye ,regc 
+0x3555 010940 call antilost_buzzer_configuration 
+0x3556 010941 arg mem_antl_alert_led_stlye ,regc 
+0x3557 010942 call antilost_led_configuration 
+0x3558 010943 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
+0x3559 010944 jam 1 ,mem_antl_key0_release + 8 
+0x355a 010945 arg mem_antl_key0_release ,regc 
+0x355b 010946 branch antilost_prepare_data_and_send 
+:      010947 antilost_alert_off:
+0x355c 010948 fetch 1 ,mem_antl_lost_mode 
+0x355d 010949 rtn blank 
+0x355e 010950 jam 0 ,mem_antl_lost_mode 
+0x355f 010951 call antilost_led_buzzer_stop_blink 
+0x3560 010952 jam opcode4_current_alarm_state ,mem_antl_key0_release + 5 
+0x3561 010953 jam 0 ,mem_antl_key0_release + 8 
+0x3562 010954 arg mem_antl_key0_release ,regc 
+0x3563 010955 branch antilost_prepare_data_and_send 
+:      010957 antilost_set_start_alarm_after_disconn:
+0x3564 010958 jam 1 ,mem_alarm_config 
+0x3565 010959 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+0x3566 010960 jam 1 ,mem_antl_key0_release + 8 
+0x3567 010961 arg mem_antl_key0_release ,regc 
+0x3568 010962 branch antilost_prepare_data_and_send 
+:      010963 antilost_set_no_alarm_after_disconn:
+0x3569 010964 jam 0 ,mem_alarm_config 
+0x356a 010965 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+0x356b 010966 jam 0 ,mem_antl_key0_release + 8 
+0x356c 010967 arg mem_antl_key0_release ,regc 
+0x356d 010968 branch antilost_prepare_data_and_send 
+:      010969 antilost_on_off_alarm_after_disconn:
+0x356e 010970 fetch 1 ,mem_alarm_config 
+0x356f 010971 rtn blank 
+0x3570 010972 branch antilost_alert_on 
+:      010974 antilost_notify_alarm_config_first_time:
+0x3571 010975 ifetch 2 ,rega 
+0x3572 010976 store 2 ,mem_client_characteristic_configuration_descriptor 
+0x3573 010977 isolate1 notification_enable_bit ,pdata 
+0x3574 010978 nrtn true 
+0x3575 010979 fetch 1 ,mem_alarm_config_notfy_cnt 
+0x3576 010980 rtn blank 
+0x3577 010981 jam 0 ,mem_alarm_config_notfy_cnt 
+0x3578 010982 fetch 8 ,mem_antl_le_interval_min 
+0x3579 010983 store 8 ,mem_le_interval_min 
+0x357a 010984 jam 2 ,mem_antl_send_updata_le_param_timer 
+0x357b 010985 call antilost_battery_process 
+0x357c 010986 call antilost_battery_calculate_end 
+0x357d 010987 jam opcode7_antl_config_alram ,mem_antl_key0_release + 5 
+0x357e 010988 fetch 1 ,mem_alarm_config 
+0x357f 010989 store 1 ,mem_antl_key0_release + 8 
+0x3580 010990 arg mem_antl_key0_release ,regc 
+0x3581 010991 branch antilost_prepare_data_and_send 
+:      010995 antilost_buzzer_configuration:
+0x3582 010996 arg 1 ,rega 
+0x3583 010997 branch antilost_configuration_common 
+:      010998 antilost_led_configuration:
+0x3584 010999 arg 0 ,rega 
+:      011000 antilost_configuration_common:
+0x3585 011001 branch antilost_led_buzzer_style_configuration 
+:      011003 antilost_led_buzzer_stop_blink:
+0x3586 011004 arg 0 ,rega 
+0x3587 011005 call ui_led_blink_stop_global 
+0x3588 011006 arg 1 ,rega 
+0x3589 011007 call ui_led_blink_stop_global 
+0x358a 011008 fetch 1 ,mem_buzzer_pwm_conf 
+0x358b 011009 branch pwm_disable 
+:      011011 antilost_led_buzzer_style_configuration:
+0x358c 011012 call calc_curr_struct_prt 
+0x358d 011013 arg 7 ,loopcnt 
+0x358e 011014 branch ui_led_set_style_global + 2 
+:      011018 antilost_fast_adv_start:
+0x358f 011019 arg mem_antl_fast_adv_led_style ,regc 
+0x3590 011020 arg mem_antl_lpm_interval ,regb 
+:      011021 antilost_adv_start_common:
+0x3591 011022 call antilost_adv_interval_lpm_interval_set 
+0x3592 011023 call antilost_led_configuration 
+0x3593 011024 fetch 2 ,mem_antl_fast_adv_timeout 
+0x3594 011025 store 2 ,mem_antl_fast_adv_timer 
+0x3595 011026 branch app_ble_start_adv 
+:      011028 antilost_adv_interval_lpm_interval_set:
+0x3596 011029 ifetch 2 ,regb 
+0x3597 011030 store 2 ,mem_lpm_interval 
+0x3598 011031 ifetch 2 ,contr 
+0x3599 011032 store 2 ,mem_le_adv_interval 
+0x359a 011033 rtn 
+:      011035 antilost_buzzer_pwm_init:
+0x359b 011036 arg 0 ,rega 
+0x359c 011037 call pwm_init 
+0x359d 011038 fetch 6 ,mem_buzzer_pwm_conf 
+0x359e 011039 store 6 ,mem_pdatatemp 
+0x359f 011040 call pwm_out_set 
+0x35a0 011041 fetch 1 ,mem_buzzer_pwm_conf 
+0x35a1 011042 branch pwm_disable 
+:      011044 antilost_led_on_cb:
+0x35a2 011045 jam 1 ,mem_antl_led_state 
+0x35a3 011046 rtn 
+:      011047 antilost_led_off_cb:
+0x35a4 011048 jam 0 ,mem_antl_led_state 
+0x35a5 011049 rtn 
+:      011053 antilost_buzzer_off:
+0x35a6 011054 jam 0 ,mem_antl_buzzer_state 
+0x35a7 011055 fetch 1 ,mem_buzzer_pwm_conf 
+0x35a8 011056 branch pwm_disable 
+:      011058 antilost_buzzer_on:
+0x35a9 011059 jam 1 ,mem_antl_buzzer_state 
+0x35aa 011060 fetch 6 ,mem_buzzer_pwm_conf 
+0x35ab 011061 store 6 ,mem_pdatatemp 
+0x35ac 011062 branch pwm_out_set 
+:      011066 antilost_adc_init:
+0x35ad 011067 jam 0 ,mem_adc_config_flag 
+0x35ae 011068 branch adc_init_data 
+:      011070 antilost_battery_process:
+0x35af 011071 call adc_set_mode 
+0x35b0 011072 call vdd_calculate_by_mode 
+0x35b1 011073 store 2 ,mem_battery_current_voltage 
+0x35b2 011074 arg mem_battery_calculate_set ,rega 
+0x35b3 011075 call adc_bat_percent_lowpower_out 
+0x35b4 011076 store 1 ,mem_voltage_remain_percent 
+0x35b5 011077 beq 0 ,antilost_low_battery 
+0x35b6 011078 sub pdata ,0x64 ,null 
+0x35b7 011079 nbranch antilost_full_battery ,positive 
+0x35b8 011080 store 1 ,mem_antl_key0_release + 8 
+:      011081 antilost_battery_calculate_end:
+0x35b9 011082 jam opcode5_batter_information ,mem_antl_key0_release + 5 
+0x35ba 011083 arg mem_antl_key0_release ,regc 
+0x35bb 011084 branch antilost_prepare_data_and_send 
+:      011085 antilost_full_battery:
+0x35bc 011086 jam 100 ,mem_antl_key0_release + 8 
+0x35bd 011087 branch antilost_battery_calculate_end 
+:      011089 antilost_low_battery:
+0x35be 011090 branch app_button_long_pressed 
+:      011094 car_init:
+0x35bf 011095 rtn wake 
+0x35c0 011096 hfetch 1 ,core_gpio_sel1 
+0x35c1 011097 and_into 0xf0 ,pdata 
+0x35c2 011098 hstore 1 ,core_gpio_sel1 
+0x35c3 011099 setarg car_le_before_hibernate 
+0x35c4 011100 store 2 ,mem_cb_before_hibernate 
+0x35c5 011102 setarg car_le_process_lpm_before 
+0x35c6 011103 store 2 ,mem_cb_before_lpm 
+0x35c7 011105 setarg app_enter_hibernate 
+0x35c8 011106 store 2 ,mem_cb_discovry_timeout 
+0x35c9 011108 setarg car_scale_process_idle 
+0x35ca 011109 store 2 ,mem_cb_idle_process 
+0x35cb 011111 setarg car_scale_process_bb_event 
+0x35cc 011112 store 2 ,mem_cb_bb_event_process 
+0x35cd 011114 setarg app_get_lpm_wake_lock 
+0x35ce 011115 store 2 ,mem_cb_check_wakelock 
+0x35cf 011117 setarg car_le_receive_data 
+0x35d0 011118 store 2 ,mem_cb_att_write 
+0x35d1 011120 setarg car_le_bb_event_timer 
+0x35d2 011121 store 2 ,mem_cb_event_timer 
+0x35d3 011123 call g24_head_ptr2regc 
+0x35d4 011124 setarg car_24g_receive_data 
+0x35d5 011125 add regc ,offset_24g_cb_rxdata_type1 ,contw 
+0x35d6 011126 istore 2 ,contw 
+0x35d7 011128 setarg car_power_off_signal 
+0x35d8 011129 store 2 ,mem_remote_car_power_off_cb 
+0x35d9 011131 setarg car_soft_switch_power_on_signal 
+0x35da 011132 store 2 ,mem_remote_car_power_standby_cb 
+0x35db 011134 bpatch patch19_7 ,mem_patch19 
+0x35dc 011135 call car_init_environment 
+0x35dd 011136 call queue_init 
+0x35de 011137 jam 2 ,mem_lpm_mult 
+0x35df 011138 jam power_on ,mem_car_24g_received_pac 
+0x35e0 011139 fetch 1 ,mem_car_config_soft_switch_enable 
+0x35e1 011140 store 1 ,mem_car_hard_soft_switch 
+0x35e2 011141 beq hard_switch ,car_hard_switch_power_on_signal 
+0x35e3 011142 fetch 1 ,mem_car_config_soft_switch_gpio 
+0x35e4 011143 store 1 ,mem_ui_button_gpio 
+0x35e5 011144 jam off ,mem_le_adv_enable 
+:      011145 car_soft_switch_power_on_init:
+0x35e6 011146 call car_ui_led_init 
+0x35e7 011147 call ui_button_init 
+0x35e8 011148 call ui_button_polling 
+0x35e9 011149 jam power_starting ,mem_car_power_state 
+0x35ea 011150 fetch 2 ,mem_ui_state_map 
+0x35eb 011151 rtnbit1 ui_state_btn_down 
+0x35ec 011152 branch app_enter_hibernate 
+:      011154 car_power_off_signal:
+0x35ed 011155 branch car_ui_led_init 
+:      011157 car_hard_switch_power_on_signal:
+0x35ee 011158 jam power_standby ,mem_car_power_state 
+:      011159 car_soft_switch_power_on_signal:
+0x35ef 011160 jam on ,mem_le_adv_enable 
+0x35f0 011161 call car_ui_led_init 
+0x35f1 011162 arg 0 ,rega 
+0x35f2 011163 call ui_led_blink_start_global 
+0x35f3 011165 setarg fast_adv_interval_value_car 
+0x35f4 011166 call shutter_ble_adv_interval_set 
+:      011167 car_le_modified_name_adv:
+0x35f5 011168 arg mem_le_name + 7 ,contw 
+0x35f6 011169 fetch 1 ,mem_le_lap 
+:      011170 car_name_loop:
+0x35f7 011171 and pdata ,0xF0 ,temp 
+0x35f8 011172 rshift4 temp ,temp 
+0x35f9 011173 call car_hex_to_ascii 
+0x35fa 011174 istoret 1 ,contw 
+0x35fb 011175 and pdata ,0x0F ,temp 
+0x35fc 011176 call car_hex_to_ascii 
+0x35fd 011177 istoret 1 ,contw 
+0x35fe 011178 call le_modified_name_att_list 
+0x35ff 011179 fetcht 1 ,mem_le_name_len 
+0x3600 011180 copy temp ,loopcnt 
+0x3601 011181 arg mem_le_adv_data + 2 ,contw 
+0x3602 011182 arg mem_le_name ,contr 
+0x3603 011183 call memcpy 
+:      011184 car_le_modified_name_scan:
+0x3604 011185 fetcht 1 ,mem_le_name_len 
+0x3605 011186 copy temp ,loopcnt 
+0x3606 011187 arg mem_le_scan_data + 2 ,contw 
+0x3607 011188 arg mem_le_name ,contr 
+0x3608 011189 branch memcpy 
+:      011190 car_hex_to_ascii:
+0x3609 011191 sub temp ,9 ,null 
+0x360a 011192 branch car_hex_num ,positive 
+0x360b 011193 add temp ,55 ,temp 
+0x360c 011194 rtn 
+:      011195 car_hex_num:
+0x360d 011196 add temp ,48 ,temp 
+0x360e 011197 rtn 
+:      011199 car_ui_led_init:
+0x360f 011200 fetch 1 ,mem_car_config_blood_led1_gpio 
+0x3610 011201 bne invalid_pin_num ,car_blood_led_gpio_set 
+:      011202 car_ui_led_init_1:
+0x3611 011203 fetch 1 ,mem_car_config_pairing_led_gpio 
+0x3612 011204 bne invalid_pin_num ,car_pairing_led_gpio_set 
+:      011205 car_ui_led_init_2:
+0x3613 011206 fetch 1 ,mem_car_config_low_voltage_led_gpio 
+0x3614 011207 bne invalid_pin_num ,car_low_voltage_led_gpio_set 
+:      011208 car_ui_led_init_3:
+0x3615 011209 fetch 1 ,mem_car_led_num 
+0x3616 011210 copy pdata ,loopcnt 
+0x3617 011211 setarg mem_car_led_map 
+0x3618 011212 copy pdata ,rega 
+:      011213 car_in_lp1:
+0x3619 011214 copy rega ,contr 
+0x361a 011215 ifetch 1 ,contr 
+0x361b 011216 copy contr ,rega 
+0x361c 011217 beq invalid_pin_num ,car_in_lp1_end 
+0x361d 011218 copy pdata ,temp 
+0x361e 011219 call gpio_config_output 
+:      011220 car_in_lp1_end:
+0x361f 011221 loop car_in_lp1 
+:      011222 car_ui_led_init_end:
+0x3620 011223 rtn 
+:      011224 car_blood_led_gpio_set:
+0x3621 011225 fetch 8 ,mem_car_config_blood_led1_gpio 
+0x3622 011226 store 8 ,mem_car_led_map + 2 
+0x3623 011227 branch car_ui_led_init_1 
+:      011228 car_pairing_led_gpio_set:
+0x3624 011229 store 1 ,mem_car_led_map 
+0x3625 011230 branch car_ui_led_init_2 
+:      011231 car_low_voltage_led_gpio_set:
+0x3626 011232 store 1 ,mem_car_led_map + 1 
+0x3627 011233 branch car_ui_led_init_3 
+:      011236 car_init_environment:
+0x3628 011237 arg 0 ,rega 
+0x3629 011238 call pwm_init 
+0x362a 011239 call car_ir_rx_init 
+0x362b 011240 call g24_receive_process_init 
+0x362c 011241 branch car_init_adc_hvin 
+:      011243 car_init_adc_hvin:
+0x362d 011244 jam 100 ,mem_car_notify_vdd_value_last 
+0x362e 011245 fetch 1 ,mem_car_config_low_voltage_led_gpio 
+0x362f 011246 store 1 ,mem_car_style2_struct_led_gpio 
+0x3630 011247 branch adc_init_data 
+:      011249 car_le_before_hibernate:
+0x3631 011250 call gpio_set_before_lpm_common 
+0x3632 011251 branch keyscan_process_lpm_before 
+:      011253 car_le_process_lpm_before:
+0x3633 011254 branch keyscan_process_lpm_before 
+:      011256 car_key_scan_process:
+0x3634 011259 branch keyscan_key_process 
+:      011261 car_scale_process_idle:
+0x3635 011262 call car_le_send_packet 
+0x3636 011263 call car_ir_receive_process 
+0x3637 011264 call car_g24_status_process 
+0x3638 011265 branch car_key_scan_process 
+:      011267 car_g24_status_process:
+0x3639 011268 fetch 2 ,mem_ui_state_map 
+0x363a 011269 rtnbit1 ui_state_ble_connected 
+0x363b 011270 fetch 1 ,mem_car_24g_received_pac 
+0x363c 011271 beq work_paired ,car_g24_connected_event 
+0x363d 011272 rtn 
+:      011273 car_g24_connected_event:
+0x363e 011274 fetch 1 ,mem_car_24g_status 
+0x363f 011275 rtneq work_paired 
+0x3640 011276 jam work_paired ,mem_car_24g_status 
+0x3641 011277 branch car_g24_connected 
+:      011279 car_le_send_packet:
+0x3642 011280 fetch 2 ,mem_ui_state_map 
+0x3643 011281 rtnbit0 ui_state_ble_connected 
+0x3644 011282 call le_fifo_check_nearly_full 
+0x3645 011283 nrtn blank 
+0x3646 011284 arg mem_car_pop_queue_buff ,rega 
+0x3647 011285 call queue_pop 
+0x3648 011286 nrtn user 
+0x3649 011287 arg mem_car_pop_queue_buff ,contr 
+0x364a 011288 branch le_send_notify_from_list 
+:      011290 car_scale_process_bb_event:
+0x364b 011291 copy regc ,pdata 
+0x364c 011292 beq bt_evt_button_up ,app_event_button_up 
+0x364d 011293 beq bt_evt_button_long_pressed ,app_button_long_pressed 
+0x364e 011294 beq bt_evt_le_connected ,car_scale_event_le_conn 
+0x364f 011295 beq bt_evt_le_disconnected ,car_scale_event_le_discon 
+0x3650 011296 rtn 
+:      011298 car_scale_event_le_conn:
+0x3651 011299 setarg disable_24g 
+0x3652 011300 call g24_store_mem_24g_mode 
+0x3653 011301 branch car_scale_process_conn 
+:      011302 car_g24_connected:
+0x3654 011303 fetch 2 ,mem_car_24g_no_data_timeout_count 
+0x3655 011304 store 2 ,mem_car_24g_no_data_timeout_timer 
+:      011305 car_scale_process_conn:
+0x3656 011306 jam 0x14 ,mem_car_notify_vdd_timer 
+0x3657 011307 jam 0 ,mem_lpm_mode 
+0x3658 011308 call app_ble_stop_adv 
+0x3659 011309 call app_lpm_mult_enable 
+0x365a 011310 fetch 1 ,mem_car_config_pairing_led_conn_status 
+0x365b 011311 beq 0x01 ,car_pairing_led_conn_status_setting 
+:      011312 car_scale_process_conn_next:
+0x365c 011313 arg 0 ,rega 
+0x365d 011314 branch ui_led_on_global 
+:      011315 car_pairing_led_conn_status_setting:
+0x365e 011316 arg 0 ,rega 
+0x365f 011317 branch ui_led_blink_stop_global 
+:      011319 car_scale_event_le_discon:
+0x3660 011320 setarg rx_24g 
+0x3661 011321 call g24_store_mem_24g_mode 
+:      011322 car_g24_disconnect:
+0x3662 011323 setarg 0 
+0x3663 011324 store 5 ,mem_car_led_control 
+0x3664 011325 setarg 4 
+0x3665 011326 call pwm_disable 
+0x3666 011327 setarg 5 
+0x3667 011328 call pwm_disable 
+0x3668 011329 setarg 20 
+0x3669 011330 call pwm_disable 
+0x366a 011331 setarg 21 
+0x366b 011332 call pwm_disable 
+0x366c 011333 setarg 22 
+0x366d 011334 call pwm_disable 
+0x366e 011335 setarg 7 
+0x366f 011336 call pwm_disable 
+0x3670 011337 call queue_init 
+0x3671 011338 jam 10 ,mem_motor1_speed 
+0x3672 011339 jam 10 ,mem_motor2_speed 
+0x3673 011340 jam 10 ,mem_motor3_speed 
+0x3674 011342 jam 2 ,mem_lpm_mult 
+0x3675 011343 arg 0 ,rega 
+0x3676 011344 call ui_led_blink_start_global 
+0x3677 011346 setarg fast_adv_interval_value_car 
+0x3678 011347 call shutter_ble_adv_interval_set 
+0x3679 011348 branch app_ble_start_adv 
+:      011350 car_le_bb_event_timer:
+0x367a 011352 call car_moto1_blank_data_timer 
+0x367b 011353 call car_moto2_blank_data_timer 
+0x367c 011354 call car_moto3_blank_data_timer 
+0x367d 011355 call app_power_timer 
+0x367e 011356 call car_led_control_timer 
+0x367f 011357 call car_notify_vdd_timer 
+0x3680 011358 call car_24g_no_data_timeout_timer 
+0x3681 011359 call car_ir_breakdown_timer 
+0x3682 011360 branch car_attack_shake_timer 
+:      011362 car_ir_breakdown_timer:
+0x3683 011363 arg mem_car_ir_breakdown_check_timer ,regc 
+0x3684 011364 arg car_ir_breakdown_timeout ,regb 
+0x3685 011365 branch timer_single_step 
+:      011366 car_ir_breakdown_timeout:
+0x3686 011367 call car_ir_gpio_get_status 
+0x3687 011368 nrtn true 
+0x3688 011369 jam 1 ,mem_car_ir_breakdown_flag 
+0x3689 011370 rtn 
+:      011372 car_24g_no_data_timeout_timer:
+0x368a 011373 arg mem_car_24g_no_data_timeout_timer ,regc 
+0x368b 011374 arg car_24g_no_data_timer_timeout ,regb 
+0x368c 011375 branch timer_single_step_2b 
+:      011376 car_24g_no_data_timer_timeout:
+0x368d 011377 jam work_search ,mem_car_24g_status 
+0x368e 011378 branch car_g24_disconnect 
+:      011380 car_attack_shake_timer:
+0x368f 011381 arg mem_car_attack_shake_timer ,regc 
+0x3690 011382 arg car_attack_shake ,regb 
+0x3691 011383 branch timer_single_step 
+:      011384 car_attack_shake:
+0x3692 011385 fetch 1 ,mem_car_attack_shake_flag 
+0x3693 011386 branch car_attack_shake_stop ,blank 
+0x3694 011387 jam 2 ,mem_car_attack_shake_timer 
+0x3695 011388 jam 0 ,mem_car_attack_shake_flag 
+0x3696 011389 setarg 0x0a02 
+0x3697 011390 store 2 ,mem_le_receive_payload 
+0x3698 011391 fetch 1 ,mem_car_config_device_select 
+0x3699 011392 beq device_battle_tank ,car_attack_shake_front_battle_tank 
+:      011393 car_attack_shake_front_battle_car:
+0x369a 011394 branch car_motor_control 
+:      011395 car_attack_shake_front_battle_tank:
+0x369b 011396 setarg 0x0a02 
+0x369c 011397 store 2 ,mem_le_receive_payload + 2 
+0x369d 011398 branch car_motor_control 
+:      011399 car_attack_shake_stop:
+0x369e 011400 setarg 0 
+0x369f 011401 store 4 ,mem_le_receive_payload 
+0x36a0 011402 branch car_motor_control 
+:      011404 car_notify_vdd_timer:
+0x36a1 011405 fetch 1 ,mem_car_config_bat_notify_enable 
+0x36a2 011406 rtn blank 
+0x36a3 011407 fetch 2 ,mem_ui_state_map 
+0x36a4 011408 bbit0 ui_state_ble_connected ,car_low_bat_led_off 
+0x36a5 011409 arg mem_car_notify_vdd_timer ,regc 
+0x36a6 011410 arg car_notify_vdd ,regb 
+0x36a7 011411 branch timer_single_step 
+:      011412 car_notify_vdd:
+0x36a8 011413 fetch 1 ,mem_car_notify_vdd_count 
+0x36a9 011414 store 1 ,mem_car_notify_vdd_timer 
+0x36aa 011415 fetch 1 ,mem_car_working_flag 
+0x36ab 011416 nrtn blank 
+:      011417 car_read_hvin:
+0x36ac 011418 call adc_set_mode 
+0x36ad 011419 call vdd_calculate_by_mode 
+0x36ae 011420 store 2 ,mem_vdd_now_vol 
+0x36af 011421 arg mem_vdd_calculate_set ,rega 
+0x36b0 011422 call adc_bat_percent_lowpower_out 
+0x36b1 011423 fetcht 1 ,mem_car_notify_vdd_value_last 
+0x36b2 011424 isub temp ,null 
+0x36b3 011425 branch car_notify_vdd_next2 ,positive 
+0x36b4 011426 store 1 ,mem_car_notify_vdd_value_last 
+0x36b5 011427 copy pdata ,temp 
+:      011428 car_notify_vdd_next2:
+0x36b6 011429 storet 1 ,mem_car_notify_vdd_percent 
+0x36b7 011430 fetch 1 ,mem_car_config_low_voltage_percent 
+0x36b8 011431 isub temp ,null 
+0x36b9 011432 call car_enter_low_bat ,positive 
+0x36ba 011433 storet 1 ,mem_notify_bat_payload 
+0x36bb 011434 arg 6 ,loopcnt 
+0x36bc 011435 arg mem_notify_bat_head ,contr 
+0x36bd 011436 call calc_check_sum_start 
+0x36be 011437 store 1 ,mem_notify_bat_check_sum 
+0x36bf 011438 arg mem_notify_bat_packet ,rega 
+0x36c0 011439 branch queue_push 
+:      011440 car_enter_low_bat:
+0x36c1 011441 fetch 1 ,mem_low_bat_flag 
+0x36c2 011442 nrtn blank 
+0x36c3 011443 jam 1 ,mem_low_bat_flag 
+0x36c4 011444 arg 1 ,rega 
+0x36c5 011445 branch ui_led_blink_start_global 
+:      011446 car_low_bat_led_off:
+0x36c6 011447 arg 1 ,rega 
+0x36c7 011448 branch ui_led_blink_stop_global 
+:      011450 car_led_control_timer:
+0x36c8 011451 arg mem_car_led_control_timer ,regc 
+0x36c9 011452 arg car_led_control ,regb 
+0x36ca 011453 branch timer_single_step 
+:      011454 car_led_control:
+0x36cb 011455 jam 5 ,mem_car_led_control_timer 
+0x36cc 011456 jam 0 ,mem_car_led_no 
+0x36cd 011457 fetch 1 ,mem_car_led_blink_status 
+0x36ce 011458 beq led_on ,car_led_control_blink_off 
+0x36cf 011459 beq led_off ,car_led_control_blink_on 
+:      011460 car_led_control_set:
+0x36d0 011461 arg mem_car_led_control ,contr 
+0x36d1 011462 copy contr ,rega 
+0x36d2 011463 arg 8 ,loopcnt 
+:      011464 car_led_control_timer_next:
+0x36d3 011465 copy rega ,contr 
+0x36d4 011466 ifetch 1 ,contr 
+0x36d5 011467 copy contr ,rega 
+0x36d6 011468 beq led_off ,car_led_control_off 
+0x36d7 011469 beq led_on ,car_led_control_on 
+0x36d8 011470 beq led_blink ,car_led_control_blink 
+:      011471 car_led_control_timer_next_2:
+0x36d9 011472 fetch 1 ,mem_car_led_no 
+0x36da 011473 increase 1 ,pdata 
+0x36db 011474 store 1 ,mem_car_led_no 
+0x36dc 011475 loop car_led_control_timer_next 
+0x36dd 011476 rtn 
+:      011477 car_led_switch:
+0x36de 011478 fetch 1 ,mem_car_led_no 
+0x36df 011479 arg mem_car_config_blood_led_gpio ,regb 
+0x36e0 011480 iadd regb ,regb 
+0x36e1 011481 ifetcht 1 ,regb 
+0x36e2 011482 rtn 
+:      011483 car_led_control_off:
+0x36e3 011484 call car_led_switch 
+0x36e4 011485 call gpio_out_inactive 
+0x36e5 011486 branch car_led_control_timer_next_2 
+:      011487 car_led_control_on:
+0x36e6 011488 call car_led_switch 
+0x36e7 011489 call gpio_out_active 
+0x36e8 011490 branch car_led_control_timer_next_2 
+:      011491 car_led_control_blink:
+0x36e9 011492 fetch 1 ,mem_car_led_blink_status 
+0x36ea 011493 beq led_on ,car_led_control_off 
+0x36eb 011494 branch car_led_control_on 
+:      011495 car_led_control_blink_on:
+0x36ec 011496 jam led_on ,mem_car_led_blink_status 
+0x36ed 011497 branch car_led_control_set 
+:      011498 car_led_control_blink_off:
+0x36ee 011499 jam led_off ,mem_car_led_blink_status 
+0x36ef 011500 branch car_led_control_set 
+:      011504 calc_check_sum_start:
+0x36f0 011505 arg 0 ,rega 
+:      011506 calc_check_sum_loop:
+0x36f1 011507 ifetch 1 ,contr 
+0x36f2 011508 iadd rega ,rega 
+0x36f3 011509 loop calc_check_sum_loop 
+:      011510 calc_check_sum_and:
+0x36f4 011511 and rega ,0xff ,pdata 
+0x36f5 011512 rtn 
+:      011514 car_le_receive_data:
+0x36f6 011515 fetch 1 ,mem_le_att_opcode 
+0x36f7 011516 beq attop_write_request ,car_le_parse_att_write_request 
+0x36f8 011517 rtn 
+:      011518 car_le_parse_att_write_request:
+0x36f9 011519 fetch 2 ,mem_le_att_handle 
+0x36fa 011520 beq att_car_control_handle ,car_control_le_receive 
+0x36fb 011521 rtn 
+:      011533 le_app_receive_data:
+0x36fc 011534 bpatch patch1a_0 ,mem_patch1a 
+0x36fd 011535 ifetch 5 ,rega 
+0x36fe 011536 store 5 ,mem_app_receive_temp 
+0x36ff 011537 fetch 2 ,mem_app_receive_temp 
+0x3700 011538 arg le_receive_packet_head ,temp 
+0x3701 011539 isub temp ,null 
+0x3702 011540 nrtn zero 
+0x3703 011541 fetch 2 ,mem_app_receive_temp + 3 
+0x3704 011542 byteswap pdata ,pdata 
+0x3705 011543 store 2 ,mem_app_receive_temp + 3 
+0x3706 011544 copy pdata ,loopcnt 
+0x3707 011545 increase 5 ,rega 
+0x3708 011546 copy rega ,contr 
+0x3709 011547 arg mem_app_receive_temp + 5 ,contw 
+0x370a 011548 call memcpy 
+0x370b 011549 ifetch 1 ,contr 
+0x370c 011550 store 1 ,mem_app_receive_temp + 15 
+0x370d 011551 arg mem_app_receive_temp + 2 ,rega 
+0x370e 011552 arg mem_app_receive_temp + 5 ,regb 
+0x370f 011553 rtn 
+:      011555 car_control_le_receive:
+0x3710 011556 setarg 0 
+0x3711 011557 store 5 ,mem_le_receive_payload 
+0x3712 011558 store 5 ,mem_le_receive_payload + 5 
+0x3713 011559 call le_app_receive_data 
+0x3714 011560 copy regb ,contr 
+0x3715 011561 arg mem_le_receive_payload ,contw 
+0x3716 011562 arg 10 ,loopcnt 
+0x3717 011563 call memcpy 
+:      011564 car_receive_cmd_select:
+0x3718 011565 bpatch patch1a_1 ,mem_patch1a 
+0x3719 011566 ifetch 1 ,rega 
+0x371a 011567 beq car_cmd_old_car_control ,car_drive_old 
+0x371b 011568 beq car_cmd_old_speed_control ,car_speed_set_old 
+0x371c 011569 beq car_cmd_l_r_motor_control ,car_motor_control 
+0x371d 011570 beq car_cmd_f_b_motor_control ,car_motor_control 
+0x371e 011571 beq car_cmd_ir_control ,car_ir_data_rx_from_app 
+0x371f 011572 beq car_cmd_led_control ,car_led_control_receive 
+0x3720 011573 beq car_cmd_device_info ,car_info_request 
+0x3721 011574 rtn 
+:      011576 car_24g_receive_data:
+0x3722 011577 fetch 2 ,mem_ui_state_map 
+0x3723 011578 rtnbit1 ui_state_ble_connected 
+0x3724 011580 fetch 2 ,mem_car_24g_no_data_timeout_count 
+0x3725 011581 store 2 ,mem_car_24g_no_data_timeout_timer 
+0x3726 011583 jam work_paired ,mem_car_24g_received_pac 
+0x3727 011585 setarg offset_24g_rxdata_temp_add3 
+0x3728 011586 call g24_set_rega 
+0x3729 011587 call car_control_le_receive 
+0x372a 011589 fetch 1 ,mem_app_receive_temp + 2 
+0x372b 011590 beq car_cmd_l_r_motor_control ,car_24g_receive_data_next 
+0x372c 011591 beq car_cmd_f_b_motor_control ,car_24g_receive_data_next 
+0x372d 011592 rtn 
+:      011593 car_24g_receive_data_next:
+0x372e 011594 fetch 1 ,mem_le_receive_payload 
+0x372f 011595 ncall car_moto1_enable_blank_data_timer ,blank 
+0x3730 011596 fetch 1 ,mem_le_receive_payload + 2 
+0x3731 011597 ncall car_moto2_enable_blank_data_timer ,blank 
+0x3732 011598 fetch 1 ,mem_le_receive_payload + 4 
+0x3733 011599 ncall car_moto3_enable_blank_data_timer ,blank 
+0x3734 011600 rtn 
+:      011602 car_moto1_enable_blank_data_timer:
+0x3735 011603 jam 5 ,mem_car_moto1_blank_timer 
+0x3736 011604 rtn 
+:      011605 car_moto2_enable_blank_data_timer:
+0x3737 011606 jam 5 ,mem_car_moto2_blank_timer 
+0x3738 011607 rtn 
+:      011608 car_moto3_enable_blank_data_timer:
+0x3739 011609 jam 5 ,mem_car_moto3_blank_timer 
+0x373a 011610 rtn 
+:      011612 car_moto1_blank_data_timer:
+0x373b 011613 arg mem_car_moto1_blank_timer ,regc 
+0x373c 011614 arg car_moto1_blank_data ,regb 
+0x373d 011615 branch timer_single_step 
+:      011616 car_moto2_blank_data_timer:
+0x373e 011617 arg mem_car_moto2_blank_timer ,regc 
+0x373f 011618 arg car_moto2_blank_data ,regb 
+0x3740 011619 branch timer_single_step 
+:      011620 car_moto3_blank_data_timer:
+0x3741 011621 arg mem_car_moto3_blank_timer ,regc 
+0x3742 011622 arg car_moto3_blank_data ,regb 
+0x3743 011623 branch timer_single_step 
+:      011625 car_moto1_blank_data:
+0x3744 011626 jam 0 ,mem_le_receive_payload 
+0x3745 011627 branch car_motor_control 
+:      011628 car_moto2_blank_data:
+0x3746 011629 jam 0 ,mem_le_receive_payload + 2 
+0x3747 011630 branch car_motor_control 
+:      011631 car_moto3_blank_data:
+0x3748 011632 jam 0 ,mem_le_receive_payload + 4 
+0x3749 011633 branch car_motor_control 
+:      011638 car_drive_old:
+0x374a 011639 call car_left_right_control_old 
+0x374b 011640 branch car_front_back_control_old 
+:      011641 car_left_right_control_old:
+0x374c 011642 fetch 1 ,mem_le_receive_payload 
+0x374d 011643 store 1 ,mem_motor2_status 
+0x374e 011644 branch car_motor2_control 
+:      011645 car_front_back_control_old:
+0x374f 011646 fetch 1 ,mem_motor1_speed 
+0x3750 011647 call car_reset_old_speed 
+0x3751 011648 fetch 1 ,mem_le_receive_payload + 1 
+0x3752 011649 store 1 ,mem_motor1_status 
+0x3753 011650 branch car_motor1_control 
+:      011651 car_reset_old_speed:
+0x3754 011652 beq speed_level_2 ,car_reset_old_speed2 
+0x3755 011653 beq speed_level_3 ,car_reset_old_speed3 
+0x3756 011654 store 1 ,mem_motor1_speed 
+0x3757 011655 rtn 
+:      011656 car_reset_old_speed2:
+0x3758 011657 jam speed_level_5 ,mem_motor1_speed 
+0x3759 011658 rtn 
+:      011659 car_reset_old_speed3:
+0x375a 011660 jam speed_level_10 ,mem_motor1_speed 
+0x375b 011661 rtn 
+:      011662 car_speed_set_old:
+0x375c 011663 fetch 1 ,mem_le_receive_payload 
+0x375d 011664 call car_reset_old_speed 
+0x375e 011665 fetch 1 ,mem_motor1_speed 
+0x375f 011666 call car_motor_speed_duty_setting 
+0x3760 011667 call car_motor_speed_duty_transform 
+0x3761 011668 branch pwm_pwm0_duty_set 
+:      011670 car_motor_control:
+0x3762 011671 fetch 1 ,mem_car_24g_go_die_flag 
+0x3763 011672 nrtn blank 
+0x3764 011673 fetch 6 ,mem_le_receive_payload 
+0x3765 011674 store 6 ,mem_motor1_status 
+0x3766 011675 fetch 1 ,mem_motor1_speed 
+0x3767 011676 fetcht 1 ,mem_motor2_speed 
+0x3768 011677 iand temp ,pdata 
+0x3769 011678 fetcht 1 ,mem_motor3_speed 
+0x376a 011679 iand temp ,pdata 
+0x376b 011680 call car_motor_working_flag ,blank 
+0x376c 011681 bpatch patch1a_2 ,mem_patch1a 
+0x376d 011682 call car_motor1_control 
+0x376e 011683 call car_motor2_control 
+0x376f 011684 branch car_motor3_control 
+:      011685 car_motor1_control:
+0x3770 011686 arg mem_motor1_pwm_set ,regb 
+0x3771 011687 arg mem_motor1_status ,contr 
+0x3772 011688 branch car_motor_status_select 
+:      011689 car_motor2_control:
+0x3773 011690 arg mem_motor2_pwm_set ,regb 
+0x3774 011691 arg mem_motor2_status ,contr 
+0x3775 011692 branch car_motor_status_select 
+:      011693 car_motor3_control:
+0x3776 011694 arg mem_motor3_pwm_set ,regb 
+0x3777 011695 arg mem_motor3_status ,contr 
+0x3778 011696 branch car_motor_status_select 
+:      011697 car_motor_working_flag:
+0x3779 011698 jam 0 ,mem_car_working_flag 
+0x377a 011699 rtn 
+:      011701 car_motor_status_select:
+0x377b 011702 ifetch 1 ,contr 
+0x377c 011703 beq motor_stop ,car_motor_stop 
+0x377d 011704 beq go_front ,car_motor_positive 
+0x377e 011705 beq go_back ,car_motor_negative 
+0x377f 011706 rtn 
+:      011707 car_motor_positive:
+0x3780 011708 jam 0 ,mem_motor_select_p_n 
+0x3781 011709 branch car_motor_negative + 1 
+:      011710 car_motor_negative:
+0x3782 011711 jam 1 ,mem_motor_select_p_n 
+0x3783 011712 ifetch 1 ,contr 
+0x3784 011713 store 1 ,mem_car_motor_speed 
+0x3785 011714 ifetch 8 ,regb 
+0x3786 011715 branch car_motor_work 
+:      011717 car_motor_stop:
+0x3787 011718 ifetch 1 ,regb 
+0x3788 011719 call pwm_disable 
+0x3789 011720 increase 1 ,regb 
+0x378a 011721 ifetch 1 ,regb 
+0x378b 011722 branch pwm_disable 
+:      011723 car_motor_work:
+0x378c 011724 store 8 ,mem_motor_pwm_pin1_set 
+0x378d 011725 jam 1 ,mem_car_working_flag 
+0x378e 011726 fetch 1 ,mem_motor_select_p_n 
+0x378f 011727 beq 0 ,car_motor_select_positive 
+:      011728 car_motor_select_negative:
+0x3790 011729 fetch 1 ,mem_motor_pwm_pin2_set 
+0x3791 011730 store 1 ,mem_motor_pwm_pin_set 
+0x3792 011731 fetch 1 ,mem_motor_pwm_pin1_set 
+:      011732 car_motor_work_next:
+0x3793 011733 call pwm_disable 
+0x3794 011734 fetch 1 ,mem_car_motor_speed 
+0x3795 011735 call car_motor_speed_duty_setting 
+0x3796 011736 store 1 ,mem_motor_pwm_dute_set 
+0x3797 011737 fetch 6 ,mem_motor_pwm_pin_set 
+0x3798 011738 store 6 ,mem_pdatatemp 
+0x3799 011739 branch pwm_out_set 
+:      011740 car_motor_select_positive:
+0x379a 011741 fetch 1 ,mem_motor_pwm_pin1_set 
+0x379b 011742 store 1 ,mem_motor_pwm_pin_set 
+0x379c 011743 fetch 1 ,mem_motor_pwm_pin2_set 
+0x379d 011744 branch car_motor_work_next 
+:      011746 car_motor_speed_duty_setting:
+0x379e 011747 mul32 pdata ,5 ,pdata 
+0x379f 011748 add pdata ,50 ,pdata 
+0x37a0 011749 rtn 
+:      011750 car_motor_speed_duty_transform:
+0x37a1 011751 arg 12000 ,temp 
+0x37a2 011752 imul32 temp ,pdata 
+0x37a3 011753 div pdata ,100 
+0x37a4 011754 call wait_div_end 
+0x37a5 011755 quotient temp 
+0x37a6 011756 copy temp ,rega 
+0x37a7 011757 setarg 12000 
+0x37a8 011758 isub temp ,regb 
+0x37a9 011759 rtn 
+:      011762 car_ir_init:
+0x37aa 011763 hfetch 1 ,core_gpio_sel2 
+0x37ab 011764 set1 2 ,pdata 
+0x37ac 011765 hstore 1 ,core_gpio_sel2 
+0x37ad 011766 setarg 158 
+0x37ae 011767 hstore 2 ,core_pwm_pcnt4 
+0x37af 011768 hstore 2 ,core_pwm_ncnt4 
+0x37b0 011769 rtn 
+:      011771 car_ir_data_rx_from_app:
+0x37b1 011772 fetch 1 ,mem_car_24g_go_die_flag 
+0x37b2 011773 nrtn blank 
+0x37b3 011774 fetch 2 ,mem_le_receive_payload 
+0x37b4 011775 store 2 ,mem_ir_data 
+0x37b5 011776 fetch 1 ,mem_car_24g_status 
+0x37b6 011777 bne work_paired ,car_ir_data_tx 
+0x37b7 011778 fetch 2 ,mem_le_lap 
+0x37b8 011779 store 2 ,mem_ir_data 
+:      011780 car_ir_data_tx:
+0x37b9 011781 bpatch patch1a_3 ,mem_patch1a 
+0x37ba 011782 call car_ir_init 
+0x37bb 011783 call car_ir_enable 
+0x37bc 011784 setarg 48000 
+0x37bd 011785 call sleep 
+0x37be 011786 call car_ir_disable 
+0x37bf 011787 setarg 7200 
+0x37c0 011788 call sleep 
+0x37c1 011789 arg 16 ,loopcnt 
+:      011790 car_ir_send_loop:
+0x37c2 011791 call car_ir_enable 
+0x37c3 011792 fetch 2 ,mem_ir_data 
+0x37c4 011793 bbit1 0 ,car_ir_is_bit1 
+0x37c5 011794 setarg 7200 
+0x37c6 011795 call sleep 
+0x37c7 011796 call car_ir_disable 
+0x37c8 011797 branch car_ir_wait_finish 
+:      011799 car_ir_is_bit1:
+0x37c9 011800 setarg 14400 
+0x37ca 011801 call sleep 
+0x37cb 011802 call car_ir_disable 
+:      011803 car_ir_wait_finish:
+0x37cc 011804 setarg 7200 
+0x37cd 011805 call sleep 
+0x37ce 011806 fetch 2 ,mem_ir_data 
+0x37cf 011807 rshift pdata ,pdata 
+0x37d0 011808 store 2 ,mem_ir_data 
+0x37d1 011809 loop car_ir_send_loop 
+0x37d2 011811 jam 2 ,mem_car_attack_shake_timer 
+0x37d3 011812 jam 1 ,mem_car_attack_shake_flag 
+0x37d4 011813 setarg 0x0a01 
+0x37d5 011814 store 2 ,mem_le_receive_payload 
+0x37d6 011815 fetch 1 ,mem_car_config_device_select 
+0x37d7 011816 beq device_battle_tank ,car_attack_shake_back_battle_tank 
+:      011817 car_attack_shake_back_battle_car:
+0x37d8 011818 branch car_motor_control 
+:      011819 car_attack_shake_back_battle_tank:
+0x37d9 011820 setarg 0x0a01 
+0x37da 011821 store 2 ,mem_le_receive_payload + 2 
+0x37db 011822 branch car_motor_control 
+:      011824 car_ir_enable:
+0x37dc 011825 hfetch 1 ,core_gpio_key2 
+0x37dd 011826 or_into 0x40 ,pdata 
+0x37de 011827 hstore 1 ,core_gpio_key2 
+0x37df 011828 rtn 
+:      011829 car_ir_disable:
+0x37e0 011830 hfetch 1 ,core_gpio_key2 
+0x37e1 011831 and_into 0xbf ,pdata 
+0x37e2 011832 hstore 1 ,core_gpio_key2 
+0x37e3 011833 rtn 
+:      011835 car_ir_rx_init:
+0x37e4 011836 fetch 1 ,mem_car_config_ir_enable 
+0x37e5 011837 rtneq 0x00 
+0x37e6 011838 call lpm_disable_exen_output 
+0x37e7 011839 fetcht 1 ,mem_car_config_ir_rx_gpio 
+0x37e8 011840 storet 1 ,mem_ir_rx_gpio 
+0x37e9 011841 call gpio_config_input 
+0x37ea 011842 call car_ir_gpio_get_status 
+0x37eb 011843 nrtn true 
+0x37ec 011844 jam 1 ,mem_car_ir_breakdown_check_timer 
+0x37ed 011845 rtn 
+:      011847 car_ir_receive_process:
+0x37ee 011848 fetch 1 ,mem_car_config_ir_enable 
+0x37ef 011849 rtneq flag_ir_disable 
+0x37f0 011850 fetch 1 ,mem_car_ir_breakdown_flag 
+0x37f1 011851 nrtn blank 
+0x37f2 011852 fetch 2 ,mem_ui_state_map 
+0x37f3 011853 bbit1 ui_state_ble_connected ,car_ir_receive_process_next 
+0x37f4 011854 fetch 1 ,mem_car_24g_status 
+0x37f5 011855 rtnne work_paired 
+:      011856 car_ir_receive_process_next:
+0x37f6 011857 bpatch patch1a_4 ,mem_patch1a 
+0x37f7 011858 call car_ir_gpio_get_status 
+0x37f8 011859 nrtn true 
+0x37f9 011860 setarg 36000 
+0x37fa 011861 call sleep 
+0x37fb 011862 call car_ir_gpio_get_status 
+0x37fc 011863 nrtn true 
+0x37fd 011864 call car_ir_clk_get 
+:      011865 car_ir_packet_head_wait_end:
+0x37fe 011866 call car_ir_clk_check 
+0x37ff 011867 nrtn positive 
+0x3800 011868 call car_ir_gpio_get_status 
+0x3801 011869 branch car_ir_packet_head_wait_end ,true 
+0x3802 011870 arg 0 ,rega 
+0x3803 011871 arg 16 ,loopcnt 
+0x3804 011872 call car_ir_clk_get 
+:      011873 car_ir_receive_process_loop:
+0x3805 011874 call car_ir_clk_check 
+0x3806 011875 nrtn positive 
+0x3807 011876 call car_ir_gpio_get_status 
+0x3808 011877 nbranch car_ir_receive_process_loop ,true 
+0x3809 011878 setarg 10800 
+0x380a 011879 call sleep 
+0x380b 011880 call car_ir_gpio_get_status 
+0x380c 011881 branch car_ir_get_bit1 ,true 
+:      011882 car_ir_get_bit0:
+0x380d 011883 setarg 0 
+0x380e 011884 rshift rega ,rega 
+0x380f 011885 ior rega ,rega 
+0x3810 011886 loop car_ir_receive_process_loop 
+0x3811 011887 branch car_ir_receive_process_end 
+:      011888 car_ir_get_bit1:
+0x3812 011889 setarg 0x8000 
+0x3813 011890 rshift rega ,rega 
+0x3814 011891 ior rega ,rega 
+0x3815 011892 call car_ir_clk_get 
+:      011893 car_ir_get_bit1_wait_low_end:
+0x3816 011894 call car_ir_clk_check 
+0x3817 011895 nrtn positive 
+0x3818 011896 call car_ir_gpio_get_status 
+0x3819 011897 branch car_ir_get_bit1_wait_low_end ,true 
+0x381a 011898 loop car_ir_receive_process_loop 
+:      011899 car_ir_receive_process_end:
+0x381b 011900 bpatch patch1a_5 ,mem_patch1a 
+0x381c 011901 copy rega ,pdata 
+0x381d 011902 store 2 ,mem_ir_rx_buf 
+0x381e 011903 store 2 ,mem_ir_notify_data + 8 
+0x381f 011904 fetch 1 ,mem_car_24g_status 
+0x3820 011905 beq work_paired ,car_ir_24g_receive_attack 
+:      011906 car_ir_data_notify:
+0x3821 011907 arg 0x07 ,loopcnt 
+0x3822 011908 arg mem_ir_notify_data_head ,contr 
+0x3823 011909 call calc_check_sum_start 
+0x3824 011910 store 1 ,mem_ir_notify_data_check_sum 
+0x3825 011911 arg mem_ir_notify_data ,rega 
+0x3826 011912 branch queue_push 
+:      011914 car_ir_24g_receive_attack:
+0x3827 011915 fetch 1 ,mem_car_24g_ir_receive_attack_count 
+0x3828 011916 increase 1 ,pdata 
+0x3829 011917 store 1 ,mem_car_24g_ir_receive_attack_count 
+0x382a 011918 div pdata ,2 
+0x382b 011919 call wait_div_end 
+0x382c 011920 quotient temp 
+0x382d 011921 remainder pdata 
+0x382e 011922 nbranch car_ir_24g_receive_attack_blink ,blank 
+:      011923 car_ir_24g_receive_attack_off:
+0x382f 011924 fetch 1 ,mem_car_config_led_num 
+0x3830 011925 isub temp ,null 
+0x3831 011926 call car_ir_24g_go_die ,zero 
+0x3832 011927 arg mem_car_led_control ,pdata 
+0x3833 011928 increase -1 ,temp 
+0x3834 011929 iadd temp ,rega 
+0x3835 011930 arg 0 ,pdata 
+0x3836 011931 istore 1 ,rega 
+0x3837 011932 rtn 
+:      011933 car_ir_24g_receive_attack_blink:
+0x3838 011934 arg mem_car_led_control ,pdata 
+0x3839 011935 iadd temp ,rega 
+0x383a 011936 arg 2 ,pdata 
+0x383b 011937 istore 1 ,rega 
+0x383c 011938 rtn 
+:      011939 car_ir_24g_go_die:
+0x383d 011940 jam 1 ,mem_car_24g_go_die_flag 
+0x383e 011941 rtn 
+:      011942 car_ir_clk_get:
+0x383f 011943 copy clkn_bt ,pdata 
+0x3840 011944 store 4 ,mem_ir_receive_clkn 
+0x3841 011945 rtn 
+:      011946 car_ir_clk_check:
+0x3842 011947 copy clkn_bt ,pdata 
+0x3843 011948 fetcht 4 ,mem_ir_receive_clkn 
+0x3844 011949 isub temp ,pdata 
+0x3845 011950 sub pdata ,200 ,null 
+0x3846 011951 rtn 
+:      011953 car_ir_gpio_get_status:
+0x3847 011954 fetcht 1 ,mem_ir_rx_gpio 
+0x3848 011955 branch gpio_get_bit 
+:      011957 car_led_control_receive:
+0x3849 011958 fetch 8 ,mem_le_receive_payload 
+0x384a 011959 store 8 ,mem_car_led_control 
+0x384b 011960 rtn 
+:      011962 car_info_request:
+0x384c 011963 fetch 1 ,mem_car_config_device_select 
+0x384d 011964 store 1 ,mem_car_info_request_payload 
+0x384e 011965 fetch 1 ,mem_car_config_motor_layout 
+0x384f 011966 store 1 ,mem_car_info_request_payload + 1 
+0x3850 011967 fetch 1 ,mem_car_config_ir_enable 
+0x3851 011968 store 1 ,mem_car_info_request_payload + 2 
+0x3852 011969 arg 13 ,loopcnt 
+0x3853 011970 arg mem_car_info_request_head ,contr 
+0x3854 011971 call calc_check_sum_start 
+0x3855 011972 store 1 ,mem_car_info_request_checksum 
+0x3856 011973 arg mem_car_info_request ,rega 
+0x3857 011974 branch queue_push 
+:      011980 light_init:
+0x3858 011981 call clear_eeprom_size_2k 
+0x3859 011982 jam 0x7a ,mem_curr_packet_num 
+0x385a 011983 call light_load_controler_list 
+0x385b 011984 call light_init_crr_cmd_count 
+0x385c 011985 setarg light_pairing_timer 
+0x385d 011986 store 2 ,mem_cb_event_timer 
+0x385e 011987 arg 0 ,rega 
+0x385f 011988 branch pwm_init 
+:      011990 light_pairing_timer:
+0x3860 011991 fetch 2 ,mem_light_pairing_timer 
+0x3861 011992 rtn blank 
+0x3862 011993 increase -1 ,pdata 
+0x3863 011994 store 2 ,mem_light_pairing_timer 
+0x3864 011995 rtnne 0 
+0x3865 011996 jam 0 ,mem_light_pairing_enable 
+0x3866 011997 rtn 
+:      011999 light_init_crr_cmd_count:
+0x3867 012000 bpatch patch1a_6 ,mem_patch1a 
+0x3868 012001 fetch 1 ,mem_light_next_record 
+0x3869 012002 sub pdata ,40 ,null 
+0x386a 012003 rtn positive 
+0x386b 012004 jam 0 ,mem_light_next_record 
+0x386c 012005 rtn 
+:      012007 light_load_controler_list:
+0x386d 012008 arg mem_light_next_record ,rega 
+0x386e 012009 arg 0 ,regb 
+0x386f 012010 arg 81 ,temp 
+0x3870 012011 branch iicd_read_eep_data 
+:      012014 light_find_controler_pairing:
+0x3871 012015 disable user 
+0x3872 012016 fetch 1 ,mem_light_cnum 
+0x3873 012017 copy pdata ,loopcnt 
+0x3874 012019 arg mem_light_clist ,rega 
+0x3875 012020 copy regc ,regb 
+:      012021 light_find_controler_pairing_loop:
+0x3876 012022 bpatch patch1a_7 ,mem_patch1a 
+0x3877 012023 call light_compare_addr_record 
+0x3878 012024 branch enable_user ,zero 
+:      012025 light_find_single_pairing_diff:
+0x3879 012026 increase 4 ,rega 
+0x387a 012027 loop light_find_controler_pairing_loop 
+0x387b 012028 rtn 
+:      012031 light_compare_addr_record:
+0x387c 012032 bpatch patch1b_0 ,mem_patch1b 
+0x387d 012033 ifetch 3 ,rega 
+0x387e 012034 ifetcht 3 ,regb 
+0x387f 012035 isub temp ,null 
+0x3880 012036 rtn 
+:      012038 light_compare_single_record:
+0x3881 012039 bpatch patch1b_1 ,mem_patch1b 
+0x3882 012040 ifetch 3 ,rega 
+0x3883 012041 ifetcht 3 ,regb 
+0x3884 012042 isub temp ,null 
+0x3885 012043 nrtn zero 
+0x3886 012044 ifetch 1 ,contr 
+0x3887 012045 sub pdata ,0 ,null 
+0x3888 012046 rtn zero 
+0x3889 012047 add rega ,3 ,contr 
+0x388a 012048 ifetcht 1 ,contr 
+0x388b 012049 isub temp ,null 
+0x388c 012050 rtn 
+:      012053 light_find_controler_cmd:
+0x388d 012054 bpatch patch1b_2 ,mem_patch1b 
+0x388e 012055 disable user 
+0x388f 012056 fetch 1 ,mem_light_cnum 
+0x3890 012057 copy pdata ,loopcnt 
+0x3891 012059 arg mem_light_clist ,rega 
+0x3892 012060 copy regc ,regb 
+:      012061 light_find_controler_cmd_loop:
+0x3893 012062 call light_compare_single_record 
+0x3894 012063 branch enable_user ,zero 
+0x3895 012064 increase 4 ,rega 
+0x3896 012065 loop light_find_controler_cmd_loop 
+0x3897 012066 rtn 
+:      012069 light_recv_adv:
+0x3898 012070 fetch 1 ,mem_le_scanrsp_rcv 
+0x3899 012071 increase 1 ,pdata 
+0x389a 012072 store 1 ,mem_le_scanrsp_rcv 
+0x389b 012073 arg mem_le_rxbuf + 12 ,regc 
+:      012075 light_anylize_command:
+0x389c 012076 ifetch 2 ,regc 
+0x389d 012077 arg 0x55aa ,temp 
+0x389e 012078 isub temp ,null 
+0x389f 012079 nrtn zero 
+0x38a0 012080 copy contr ,regc 
+0x38a1 012081 ifetcht 3 ,regc 
+0x38a2 012082 setarg 0xffffff 
+0x38a3 012083 isub temp ,null 
+0x38a4 012084 branch light_parse_cmd ,zero 
+0x38a5 012085 call light_find_controler_cmd 
+0x38a6 012086 branch light_parse_cmd ,user 
+0x38a7 012087 rtn 
+:      012089 light_parse_cmd:
+0x38a8 012090 bpatch patch1b_3 ,mem_patch1b 
+0x38a9 012091 increase 4 ,regc 
+0x38aa 012092 ifetch 1 ,regc 
+0x38ab 012093 fetcht 1 ,mem_curr_packet_num 
+0x38ac 012094 isub temp ,null 
+0x38ad 012095 rtn zero 
+0x38ae 012096 store 1 ,mem_curr_packet_num 
+0x38af 012097 fetch 1 ,mem_le_req_rcv 
+0x38b0 012098 increase 1 ,pdata 
+0x38b1 012099 store 1 ,mem_le_req_rcv 
+0x38b2 012101 increase 1 ,regc 
+0x38b3 012102 ifetch 1 ,regc 
+0x38b4 012103 store 1 ,mem_light_crr_cmd_count 
+0x38b5 012104 copy pdata ,loopcnt 
+0x38b6 012105 rtn blank 
+:      012106 light_parse_cmd_loop:
+0x38b7 012107 ifetch 1 ,contr 
+0x38b8 012108 beq light_cmd_pwm0 ,light_parse_cmd_pwm0 
+0x38b9 012109 beq light_cmd_pwm1 ,light_parse_cmd_pwm1 
+0x38ba 012110 beq light_cmd_pwm2 ,light_parse_cmd_pwm2 
+0x38bb 012111 beq light_cmd_pwm3 ,light_parse_cmd_pwm3 
+0x38bc 012112 beq light_cmd_pwm4 ,light_parse_cmd_pwm4 
+0x38bd 012113 beq light_cmd_pwm5 ,light_parse_cmd_pwm5 
+0x38be 012114 beq light_cmd_auto_mode ,light_parse_auto_mode 
+0x38bf 012115 beq light_cmd_pairing ,light_parse_pairing 
+0x38c0 012116 loop light_parse_cmd_loop 
+0x38c1 012117 rtn 
+:      012119 light_parse_cmd_pwm0:
+0x38c2 012120 copy contr ,regc 
+0x38c3 012121 fetch 1 ,mem_light_pwm0 
+0x38c4 012122 store 1 ,mem_pdatatemp 
+0x38c5 012123 arg 0 ,temp 
+:      012124 light_parse_cmd_pwm_common:
+0x38c6 012125 storet 1 ,mem_pdatatemp + 1 
+0x38c7 012126 setarg 10000 
+0x38c8 012127 store 3 ,mem_pdatatemp + 2 
+0x38c9 012128 ifetch 1 ,regc 
+0x38ca 012129 store 1 ,mem_pdatatemp + 5 
+0x38cb 012130 call pwm_out_set 
+0x38cc 012131 and regc ,1 ,contr 
+0x38cd 012132 loop light_parse_cmd_loop 
+0x38ce 012133 rtn 
+:      012134 light_parse_cmd_pwm1:
+0x38cf 012135 copy regc ,contr 
+0x38d0 012136 fetch 1 ,mem_light_pwm1 
+0x38d1 012137 store 1 ,mem_pdatatemp 
+0x38d2 012138 arg 1 ,temp 
+0x38d3 012139 branch light_parse_cmd_pwm_common 
+:      012140 light_parse_cmd_pwm2:
+0x38d4 012141 copy regc ,contr 
+0x38d5 012142 fetch 1 ,mem_light_pwm2 
+0x38d6 012143 store 1 ,mem_pdatatemp 
+0x38d7 012144 arg 2 ,temp 
+0x38d8 012145 branch light_parse_cmd_pwm_common 
+:      012146 light_parse_cmd_pwm3:
+0x38d9 012147 copy regc ,contr 
+0x38da 012148 fetch 1 ,mem_light_pwm3 
+0x38db 012149 store 1 ,mem_pdatatemp 
+0x38dc 012150 arg 3 ,temp 
+0x38dd 012151 branch light_parse_cmd_pwm_common 
+:      012152 light_parse_cmd_pwm4:
+0x38de 012153 copy regc ,contr 
+0x38df 012154 fetch 1 ,mem_light_pwm4 
+0x38e0 012155 store 1 ,mem_pdatatemp 
+0x38e1 012156 arg 4 ,temp 
+0x38e2 012157 branch light_parse_cmd_pwm_common 
+:      012158 light_parse_cmd_pwm5:
+0x38e3 012159 copy regc ,contr 
+0x38e4 012160 fetch 1 ,mem_light_pwm5 
+0x38e5 012161 store 1 ,mem_pdatatemp 
+0x38e6 012162 arg 5 ,temp 
+0x38e7 012163 branch light_parse_cmd_pwm_common 
+:      012165 light_parse_auto_mode:
+0x38e8 012166 ifetch 1 ,contr 
+0x38e9 012167 rtn 
+:      012169 light_parse_pairing:
+0x38ea 012170 copy contr ,regc 
+0x38eb 012171 fetch 1 ,mem_light_pairing_enable 
+0x38ec 012172 bne 1 ,light_parse_pairing_abandon 
+0x38ed 012173 call update_controler_list 
+:      012174 light_parse_pairing_abandon:
+0x38ee 012175 and regc ,4 ,contr 
+0x38ef 012176 rtn 
+:      012177 update_controler_list:
+0x38f0 012178 bpatch patch1b_4 ,mem_patch1b 
+0x38f1 012179 call light_find_controler_pairing 
+0x38f2 012180 branch update_conrtoler_list_found ,user 
+0x38f3 012181 fetch 1 ,mem_light_next_record 
+0x38f4 012182 copy pdata ,temp 
+0x38f5 012183 increase 1 ,pdata 
+0x38f6 012184 store 1 ,mem_light_next_record 
+0x38f7 012185 call light_init_crr_cmd_count 
+0x38f8 012186 lshift2 temp ,temp 
+0x38f9 012187 setarg mem_light_clist 
+0x38fa 012188 iadd temp ,contw 
+0x38fb 012189 ifetch 4 ,regc 
+0x38fc 012190 istore 4 ,contw 
+0x38fd 012191 branch update_conrtoler_store_list 
+:      012192 update_conrtoler_list_found:
+0x38fe 012193 add regc ,3 ,contr 
+0x38ff 012194 ifetch 1 ,contr 
+0x3900 012195 rtn blank 
+0x3901 012196 ifetch 4 ,regc 
+0x3902 012197 istore 4 ,rega 
+:      012198 update_conrtoler_store_list:
+0x3903 012199 arg mem_light_next_record ,rega 
+0x3904 012200 arg 0 ,regb 
+0x3905 012201 arg 81 ,temp 
+0x3906 012202 branch iicd_write_eep_data 
+:      012206 lightc_init:
+0x3907 012210 fetcht 1 ,mem_lightc_led_gpio 
+0x3908 012211 call gpio_out_inactive 
+0x3909 012212 rtn 
+:      012215 lightc_dispatch:
+0x390a 012218 fetcht 1 ,mem_lightc_led_gpio 
+0x390b 012219 call gpio_out_active 
+0x390c 012222 fetcht 1 ,mem_lightc_led_gpio 
+0x390d 012223 call gpio_out_inactive 
+0x390e 012226 call lightc_start_adv 
+0x390f 012228 fetch 1 ,mem_adv_time 
+0x3910 012229 nrtn blank 
+0x3911 012231 call lpm_write_gpio_wakeup 
+0x3912 012232 hfetch 4 ,core_lpm_ctrl 
+0x3913 012233 set0 15 ,pdata 
+0x3914 012234 hstore 4 ,core_lpm_reg 
+0x3915 012235 call lpm_write_ctrl 
+0x3916 012236 arg param_hibernate_clks ,temp 
+0x3917 012237 branch lpm_sleep 
+:      012239 lightc_adv:
+0x3918 012240 fetch 1 ,mem_adv_time 
+0x3919 012241 branch le_adv_loop_tx ,blank 
+0x391a 012242 increase -1 ,pdata 
+0x391b 012243 store 1 ,mem_adv_time 
+0x391c 012244 branch le_adv_loop_tx 
+:      012246 lightc_start_adv:
+0x391d 012247 mul32 pdata ,20 ,pdata 
+0x391e 012248 arg mem_cmd0_string ,contr 
+0x391f 012249 iadd contr ,contr 
+0x3920 012250 ifetch 1 ,contr 
+0x3921 012251 rtn blank 
+0x3922 012252 copy pdata ,rega 
+0x3923 012253 copy rega ,loopcnt 
+0x3924 012254 arg mem_le_adv_data + 2 ,contw 
+0x3925 012255 call memcpy 
+0x3926 012256 copy rega ,pdata 
+0x3927 012257 increase 2 ,pdata 
+0x3928 012258 store 1 ,mem_le_adv_data_len 
+0x3929 012259 rtn 
+:      012266 module_init:
+0x392a 012268 rtn wake 
+0x392b 012269 call le_modified_name 
+0x392c 012270 call adc_init_data 
+0x392d 012271 setarg module_process_idle 
+0x392e 012272 store 2 ,mem_cb_idle_process 
+0x392f 012273 setarg module_bt_conn_process 
+0x3930 012274 store 2 ,mem_cb_bt_process 
+0x3931 012275 setarg module_process_bb_event 
+0x3932 012276 store 2 ,mem_cb_bb_event_process 
+0x3933 012277 setarg module_le_conn_process 
+0x3934 012278 store 2 ,mem_cb_le_process 
+0x3935 012279 setarg module_lpm_lock 
+0x3936 012280 store 2 ,mem_cb_check_wakelock 
+0x3937 012281 setarg module_hci_cmd_transmit_le_notify 
+0x3938 012282 store 2 ,mem_cb_ble_transmit 
+0x3939 012283 setarg module_hci_event_receive_spp_data 
+0x393a 012284 store 2 ,mem_cb_receive_spp_data 
+0x393b 012285 setarg module_le_receive_data 
+0x393c 012286 store 2 ,mem_cb_att_write 
+0x393d 012287 setarg module_bb_event_timer 
+0x393e 012288 store 2 ,mem_cb_event_timer 
+0x393f 012290 call module_spp_clear_last_transmite_clock 
+0x3940 012291 bpatch patch1b_5 ,mem_patch1b 
+0x3941 012292 call module_lpm_uart_init 
+0x3942 012293 call module_gpio_init 
+0x3943 012294 call check_module_disabled 
+0x3944 012295 branch module_hci_event_enter_standby_mode 
+:      012298 module_lpm_uart_init:
+0x3945 012299 fetch 4 ,mem_module_uart_rx_buffer 
+0x3946 012300 hstore 4 ,core_uart_rsaddr 
+0x3947 012302 fetch 4 ,mem_module_uart_tx_buffer 
+0x3948 012303 hstore 4 ,core_uart_tsaddr 
+0x3949 012305 hfetch 1 ,core_gpio_sel1 
+0x394a 012306 or_into 0x04 ,pdata 
+0x394b 012307 and_into 0xfc ,pdata 
+0x394c 012308 hstore 1 ,core_gpio_sel1 
+0x394d 012309 jam 0x00 ,core_uart_ctrl 
+0x394e 012311 fetch 2 ,mem_module_uart_rx_buffer 
+0x394f 012312 hstore 2 ,core_uart_rrptr 
+0x3950 012313 fetch 2 ,mem_module_uart_tx_buffer 
+0x3951 012314 hstore 2 ,core_uart_twptr 
+0x3952 012315 hstore 2 ,core_uart_trptrp 
+0x3953 012317 hfetch 4 ,core_gpio_pu0 
+0x3954 012318 set1 7 ,pdata 
+0x3955 012319 hstore 4 ,core_gpio_pu0 
+0x3956 012321 hfetch 2 ,core_clkoff 
+0x3957 012322 set0 clock_off_uart ,pdata 
+0x3958 012323 hstore 2 ,core_clkoff 
+0x3959 012324 call uart_set_baud_by_mem 
+0x395a 012325 jam uartclk_crystal ,core_uart_clksel 
+0x395b 012326 jam uart_ctrl_h4 ,core_uart_ctrl 
+0x395c 012328 fetch 1 ,mem_module_flag 
+0x395d 012329 isolate1 module_flag_uart_flow_control ,pdata 
+0x395e 012330 hfetcht 1 ,core_uart_ctrl 
+0x395f 012331 setflag true ,4 ,temp 
+0x3960 012332 hstoret 1 ,core_uart_ctrl 
+0x3961 012333 rtn 
+:      012337 module_lpm_init:
+0x3962 012338 call module_spp_clear_last_transmite_clock 
+0x3963 012339 branch module_lpm_uart_init 
+:      012342 module_gpio_init:
+0x3964 012347 fetcht 1 ,mem_module_connect_state_gpio 
+0x3965 012348 call gpio_config_output 
+0x3966 012349 call module_set_conn_pin_low 
+0x3967 012351 fetcht 1 ,mem_module_wake_up_gpio 
+0x3968 012352 branch gpio_config_input 
+:      012354 module_lpm_lock:
+0x3969 012355 fetcht 1 ,mem_module_wake_up_gpio 
+0x396a 012356 call gpio_get_bit 
+0x396b 012357 nbranch app_put_lpm_wake_lock ,true 
+0x396c 012358 branch app_get_lpm_wake_lock 
+:      012361 module_le_conn_process:
+0x396d 012362 rtn 
+:      012364 module_bt_conn_process:
+0x396e 012365 call module_spp_enter_sniff 
+0x396f 012366 branch module_control_air_flow 
+:      012368 module_spp_enter_sniff:
+0x3970 012369 fetch 1 ,mem_ui_state_map 
+0x3971 012370 bbit0 ui_state_bt_spp_conn ,module_spp_clear_last_transmite_clock 
+0x3972 012371 bpatch patch1b_6 ,mem_patch1b 
+0x3973 012372 setarg 0x3eff 
+0x3974 012373 fetcht 4 ,mem_last_transmite_clock 
+0x3975 012374 iadd temp ,temp 
+0x3976 012375 copy clkn_bt ,pdata 
+0x3977 012376 isub temp ,null 
+0x3978 012377 nrtn positive 
+0x3979 012378 fetch 2 ,mem_ui_state_map 
+0x397a 012379 bbit1 ui_state_bt_sniff ,module_spp_clear_last_transmite_clock 
+0x397b 012380 fetch 1 ,mem_module_flag 
+0x397c 012381 rtnbit1 moudle_task_sniff 
+0x397d 012382 call module_set_sniff_task_flag 
+0x397e 012383 call app_bt_enter_sniff 
+:      012384 module_spp_clear_last_transmite_clock:
+0x397f 012385 copy clkn_bt ,pdata 
+0x3980 012386 store 4 ,mem_last_transmite_clock 
+0x3981 012387 rtn 
+:      012390 module_process_idle:
+0x3982 012391 call module_control_air_flow 
+0x3983 012392 call l2cap_malloc_is_fifo_full 
+0x3984 012393 nrtn blank 
+0x3985 012394 branch module_process 
+:      012397 module_process_bb_event:
+0x3986 012398 copy regc ,pdata 
+0x3987 012399 beq bt_evt_bb_connected ,module_process_bb_conn 
+0x3988 012400 beq bt_evt_bb_disconnected ,module_process_bb_event_disconned 
+0x3989 012401 beq bt_evt_reconn_failed ,module_process_reconn_fail 
+0x398a 012402 beq bt_evt_setup_complete ,module_process_setup_complete 
+0x398b 012403 beq bt_evt_spp_connected ,module_process_spp_connected 
+0x398c 012404 beq bt_evt_spp_disconnected ,module_process_spp_disconnected 
+0x398d 012405 beq bt_evt_pincode_req ,module_process_evt_pincode_req 
+0x398e 012406 beq bt_evt_enter_sniff ,module_process_enter_sniff 
+0x398f 012407 beq bt_evt_exit_sniff ,module_process_exit_sniff 
+0x3990 012408 beq bt_evt_reconn_page_timeout ,module_process_page_time_out 
+0x3991 012409 beq bt_evt_le_connected ,module_process_le_conn 
+0x3992 012410 beq bt_evt_le_disconnected ,module_process_bb_even_le_disconn 
+0x3993 012411 beq bt_evt_sniff_not_accept ,module_process_sniff_not_accept 
+0x3994 012412 beq bt_evt_unsniff_accept ,module_process_unsniff_accept 
+0x3995 012413 beq bt_evt_unsniff_not_accept ,module_process_unsniff_not_accept 
+0x3996 012414 beq bt_evt_le_pairing_fail ,module_hci_event_le_pairing_fail 
+0x3997 012415 beq bt_evt_le_pairing_success ,module_hci_event_le_pairing_success 
+0x3998 012416 beq bt_evt_le_start_enc ,module_hci_event_start_enc 
+0x3999 012417 beq bt_evt_le_pause_enc ,module_hci_event_pause_enc 
+0x399a 012418 beq bt_evt_le_tk_generate ,module_hci_event_le_tk 
+0x399b 012419 beq bt_evt_bt_gkey_generate ,module_hci_event_gkey_generate 
+0x399c 012420 beq bt_evt_bt_get_passkey ,module_hci_event_passkey_entry_mode 
+0x399d 012421 beq bt_evt_bt_pairing_fail ,module_hci_event_bt_pairing_fail 
+0x399e 012422 beq bt_evt_bt_pairing_success ,module_hci_event_bt_pairing_success 
+0x399f 012423 beq bt_evt_le_gkey_generate ,module_hci_event_le_gkey 
+0x39a0 012424 beq bt_evt_store_nvram ,module_hci_event_store_device 
+0x39a1 012425 beq bt_evt_le_ltk_lost ,module_process_ble_ltk_lost 
+0x39a2 012426 rtn 
+:      012429 module_process_bb_event_disconned:
+0x39a3 012430 call module_spp_clear_last_transmite_clock 
+0x39a4 012431 fetch 1 ,mem_flag_pairing_state 
+0x39a5 012432 ncall module_hci_event_bt_pairing_fail ,blank 
+0x39a6 012433 call module_disconn_start 
+0x39a7 012434 fetch 2 ,mem_ui_state_map 
+0x39a8 012435 rtnbit0 ui_state_bt_spp_conn 
+0x39a9 012436 branch module_spp_disconnected 
+:      012438 module_process_spp_connected:
+0x39aa 012439 fetch 2 ,mem_ui_state_map 
+0x39ab 012440 set1 ui_state_bt_spp_conn ,pdata 
+0x39ac 012441 store 2 ,mem_ui_state_map 
+0x39ad 012442 fetch 1 ,mem_module_spp_lpm_mult 
+0x39ae 012443 store 1 ,mem_lpm_mult 
+0x39af 012444 call module_set_conn_pin_low 
+0x39b0 012445 branch module_hci_event_spp_connect 
+:      012447 module_process_spp_disconnected:
+:      012449 module_spp_disconnected:
+0x39b1 012450 fetch 2 ,mem_ui_state_map 
+0x39b2 012451 rtnbit0 ui_state_bt_spp_conn 
+0x39b3 012452 set0 ui_state_bt_spp_conn ,pdata 
+0x39b4 012453 store 2 ,mem_ui_state_map 
+0x39b5 012454 branch module_hci_event_spp_disconnect 
+:      012457 module_process_enter_sniff:
+:      012459 module_sniff_param_check:
+0x39b6 012460 call module_spp_clear_last_transmite_clock 
+0x39b7 012463 fetch 2 ,mem_context + coffset_tsniff 
+0x39b8 012464 rshift pdata ,pdata 
+0x39b9 012465 fetcht 2 ,mem_sniff_param_interval 
+0x39ba 012466 isub temp ,null 
+0x39bb 012467 nbranch module_sniff_param_check_unsniff ,zero 
+0x39bc 012468 branch app_lpm_mult_enable 
+:      012469 module_sniff_param_check_unsniff:
+0x39bd 012470 fetch 1 ,mem_module_flag 
+0x39be 012471 rtnbit1 moudle_task_unsniff 
+0x39bf 012472 hfetch 2 ,core_uart_rxitems 
+0x39c0 012473 ncall module_set_unsniff_task_flag ,blank 
+0x39c1 012474 branch app_bt_sniff_exit 
+:      012476 module_process_exit_sniff:
+0x39c2 012477 call module_clear_sniff_task_flag 
+0x39c3 012478 branch app_lpm_mult_disable 
+:      012480 module_process_setup_complete:
+0x39c4 012481 call module_spp_clear_last_transmite_clock 
+0x39c5 012482 branch module_conn_start 
+:      012484 module_process_bb_even_le_disconn:
+0x39c6 012485 call le_clr_config_more_data 
+0x39c7 012486 call module_disconn_start 
+0x39c8 012487 branch module_hci_event_le_disconnect 
+:      012489 module_process_evt_pincode_req:
+0x39c9 012490 branch app_bt_set_pincode 
+:      012493 module_process_sniff_not_accept:
+0x39ca 012494 branch module_clear_sniff_task_flag 
+:      012497 module_process_unsniff_accept:
+0x39cb 012498 fetch 1 ,mem_module_flag 
+0x39cc 012499 bbit0 moudle_task_unsniff ,app_bt_enter_sniff 
+0x39cd 012500 branch module_clear_unsniff_task_flag 
+:      012503 module_process_unsniff_not_accept:
+0x39ce 012504 branch module_clear_unsniff_task_flag 
+:      012507 module_process_le_conn:
+0x39cf 012508 call le_send_att_exchange_mtu_requset 
+0x39d0 012509 call module_conn_start 
+0x39d1 012510 fetch 1 ,mem_module_le_lpm_mult 
+0x39d2 012511 store 1 ,mem_lpm_mult 
+0x39d3 012512 branch module_hci_event_le_connect 
+:      012515 module_process_bb_conn:
+0x39d4 012516 jam 0 ,mem_flag_mode_ssp_pin 
+0x39d5 012517 call module_clear_sniff_task_flag 
+0x39d6 012518 branch module_clear_unsniff_task_flag 
+:      012520 module_process_page_time_out:
+:      012521 module_process_reconn_fail:
+:      012522 module_disconn_start:
+0x39d7 012523 call module_start_adv_discovery_by_command 
+0x39d8 012524 branch module_set_conn_pin_high 
+:      012527 module_process_ble_ltk_lost:
+0x39d9 012528 call le_send_reject_ind 
+0x39da 012529 branch le_send_smp_security_request 
+:      012532 module_set_conn_pin_high:
+0x39db 012533 fetcht 1 ,mem_module_connect_state_gpio 
+0x39dc 012534 branch gpio_out_active 
+:      012536 module_conn_start:
+0x39dd 012537 call module_stop_adv_discovery 
+0x39de 012538 branch module_set_conn_pin_low 
+:      012540 module_stop_adv_discovery:
+0x39df 012541 fetch 1 ,mem_module_state 
+0x39e0 012542 isolate1 moudle_state_bt_bit ,pdata 
+0x39e1 012543 call app_bt_stop_discovery ,true 
+0x39e2 012544 fetch 1 ,mem_module_state 
+0x39e3 012545 isolate1 moudle_state_ble_bit ,pdata 
+0x39e4 012546 call app_ble_stop_adv ,true 
+0x39e5 012547 rtn 
+:      012548 module_set_conn_pin_low:
+0x39e6 012549 fetcht 1 ,mem_module_connect_state_gpio 
+0x39e7 012550 branch gpio_out_inactive 
+:      012552 module_process_with_credit:
+0x39e8 012553 fetch 1 ,mem_credit_flag 
+0x39e9 012554 rtneq credit_disable 
+0x39ea 012555 branch rfcomm_send_uih_without_payload 
+:      012557 module_process:
+0x39eb 012558 hfetch 1 ,core_uart_status 
+0x39ec 012559 bbit1 uart_status_rx_fifo_empty ,module_process_with_credit 
+0x39ed 012560 call uartd_prepare_rx 
+0x39ee 012561 ifetch 1 ,contru 
+0x39ef 012562 bne 0x01 ,module_hci_in_excp 
+0x39f0 012563 hfetch 2 ,core_uart_rxitems 
+0x39f1 012564 sub pdata ,2 ,null 
+0x39f2 012565 rtn positive 
+0x39f3 012566 ifetch 1 ,contru 
+0x39f4 012567 store 1 ,mem_module_uart_opcode 
+0x39f5 012568 ifetcht 1 ,contru 
+0x39f6 012569 copy contru ,rega 
+0x39f7 012570 storet 1 ,mem_module_uart_len 
+0x39f8 012571 add temp ,3 ,temp 
+0x39f9 012572 hfetch 2 ,core_uart_rxitems 
+0x39fa 012573 isub temp ,temp 
+0x39fb 012574 nrtn positive 
+0x39fc 012575 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x39fd 012576 call module_hci_cmd_control 
+0x39fe 012577 fetch 1 ,mem_module_temp_nl_discard_packet 
+0x39ff 012578 rtneq hci_not_discard_packet 
+0x3a00 012579 branch module_hci_dicard_packet 
+:      012581 module_hci_in_excp:
+0x3a01 012582 call delay_10ms 
+0x3a02 012583 call module_hci_event_invalid_packet 
+0x3a03 012584 branch module_hci_release_except 
+:      012587 module_hci_release_except:
+0x3a04 012588 bpatch patch1b_7 ,mem_patch1b 
+0x3a05 012589 hfetch 2 ,core_uart_rxitems 
+0x3a06 012590 rtn blank 
+0x3a07 012591 call uartd_prepare_rx 
+0x3a08 012592 ifetch 1 ,contru 
+0x3a09 012593 sub pdata ,0x01 ,null 
+0x3a0a 012594 ncall module_hci_dicard_bytes ,zero 
+0x3a0b 012595 nbranch module_hci_release_except ,zero 
+0x3a0c 012596 ifetch 1 ,contru 
+0x3a0d 012597 rtneq hci_cmd_spp_data_req 
+0x3a0e 012598 rtneq hci_cmd_set_credit_given 
+0x3a0f 012599 increase -1 ,contru 
+0x3a10 012600 call module_hci_dicard_bytes 
+0x3a11 012601 branch module_hci_release_except 
+:      012603 module_hci_dicard_packet:
+0x3a12 012604 call uartd_prepare_rx 
+0x3a13 012605 increase 2 ,contru 
+0x3a14 012606 ifetch 1 ,contru 
+0x3a15 012607 iadd contru ,contru 
+:      012608 module_hci_dicard_bytes:
+0x3a16 012609 branch uartd_rxdone 
+:      012612 module_hci_cmd_control:
+0x3a17 012613 bpatch patch1c_0 ,mem_patch1c 
+0x3a18 012614 fetch 1 ,mem_module_uart_opcode 
+0x3a19 012615 beq hci_cmd_set_bt_addr_req ,module_hci_cmd_set_bt_addr 
+0x3a1a 012616 beq hci_cmd_set_le_addr_req ,module_hci_cmd_set_le_addr 
+0x3a1b 012617 beq hci_cmd_set_visibility_req ,module_hci_cmd_set_visibility 
+0x3a1c 012618 beq hci_cmd_set_bt_name_req ,module_hci_cmd_set_bt_name 
+0x3a1d 012619 beq hci_cmd_set_le_name_req ,module_hci_cmd_set_le_name 
+0x3a1e 012620 beq hci_cmd_spp_data_req ,module_hci_cmd_receive_spp_data 
+0x3a1f 012621 beq hci_cmd_le_data_req ,module_hci_cmd_receive_le_data 
+0x3a20 012622 beq hci_cmd_status_irq ,module_hci_cmd_inquire_status 
+0x3a21 012623 beq hci_cmd_set_pairing_req ,module_hci_cmd_set_pairing_mode 
+0x3a22 012624 beq hci_cmd_set_pincode_req ,module_hci_cmd_set_pincode 
+0x3a23 012625 beq hci_cmd_set_uartcontrol_req ,module_hci_cmd_set_uart_control_mode 
+0x3a24 012626 beq hci_cmd_set_uart_baud_req ,module_hci_cmd_set_uart_baud 
+0x3a25 012627 beq hci_cmd_version_req ,module_hci_cmd_version_request 
+0x3a26 012628 beq hci_cmd_bt_disconnect ,module_hci_cmd_bt_disconnect 
+0x3a27 012629 beq hci_cmd_ble_disconnect ,module_hci_cmd_ble_disconnect 
+0x3a28 012630 beq hci_cmd_set_nvram_req ,module_hci_cmd_set_nvram 
+0x3a29 012631 beq hci_cmd_confirm_gkey ,module_hci_cmd_confirm_gkey 
+0x3a2a 012632 beq hci_cmd_set_credit_given ,module_hci_cmd_set_credit_given 
+0x3a2b 012633 beq hci_cmd_auto_adv_scan ,module_hci_cmd_auto_adv 
+0x3a2c 012634 beq hci_cmd_power_req ,module_hci_cmd_power_request 
+0x3a2d 012635 beq hci_cmd_power_set ,module_hci_cmd_power_set 
+0x3a2e 012636 beq hci_cmd_passkey_entry ,module_hci_cmd_passkey_entry 
+0x3a2f 012637 beq hci_cmd_set_gpio ,module_hci_cmd_set_gpio 
+0x3a30 012638 beq hci_cmd_read_gpio ,module_hci_cmd_read_gpio 
+0x3a31 012639 beq hci_cmd_le_set_pairing ,module_hci_cmd_le_set_pairing_mode 
+0x3a32 012640 beq hci_cmd_le_set_adv_data ,module_hci_cmd_le_set_adv_data 
+0x3a33 012641 beq hci_cmd_le_set_scan_data ,module_hci_cmd_le_set_scan_data 
+0x3a34 012642 beq hci_cmd_le_send_conn_update_req ,module_hci_cmd_le_send_conn_update_req 
+0x3a35 012643 beq hci_cmd_le_set_adv_parm ,module_hci_cmd_set_le_adv_parameter 
+0x3a36 012644 beq hci_cmd_le_start_pairing ,module_hci_cmd_le_start_pairing 
+0x3a37 012645 beq hci_cmd_set_wake_gpio ,module_hci_cmd_set_wake_gpio 
+0x3a38 012646 beq hci_cmd_set_tx_power ,module_hci_cmd_set_tx_power 
+0x3a39 012647 beq hci_cmd_le_confirm_gkey ,module_hci_cmd_le_confirm_gkey 
+0x3a3a 012648 beq hci_cmd_reject_justwork ,module_hci_cmd_set_reject_justwork_flag 
+0x3a3b 012649 beq hci_cmd_reset_chip_req ,module_hci_cmd_reset_chip 
+0x3a3c 012650 beq hci_cmd_le_set_fixed_passkey ,module_hci_cmd_le_set_fixed_passkey 
+0x3a3d 012651 beq hci_test_cmd_close_lpm ,module_hci_test_cmde_close_lpm 
+0x3a3e 012652 branch module_hci_event_receive_invalid_cmd 
+:      012657 module_hci_cmd_set_bt_addr:
+0x3a3f 012658 fetch 1 ,mem_module_uart_len 
+0x3a40 012659 bne 6 ,module_hci_event_receive_invalid_cmd 
+0x3a41 012660 ifetch 6 ,contru 
+0x3a42 012661 store 6 ,mem_lap 
+0x3a43 012662 branch module_hci_event_receive_valid_cmd 
+:      012665 module_hci_cmd_set_le_addr:
+0x3a44 012666 fetch 1 ,mem_module_uart_len 
+0x3a45 012667 bne 6 ,module_hci_event_receive_invalid_cmd 
+0x3a46 012668 ifetch 6 ,contru 
+0x3a47 012669 store 6 ,mem_le_lap 
+0x3a48 012670 branch module_hci_event_receive_valid_cmd 
+:      012674 module_hci_cmd_set_visibility:
+0x3a49 012675 fetch 1 ,mem_module_uart_len 
+0x3a4a 012676 bne 1 ,module_hci_event_receive_invalid_cmd 
+0x3a4b 012677 copy rega ,contru 
+0x3a4c 012678 call module_hci_event_receive_valid_cmd 
+0x3a4d 012679 ifetcht 1 ,contru 
+0x3a4e 012680 storet 1 ,mem_module_bluetooth_stauts_by_command 
+0x3a4f 012681 fetch 2 ,mem_ui_state_map 
+0x3a50 012682 rtnbit1 ui_state_ble_connected 
+0x3a51 012683 rtnbit1 ui_state_bt_connected 
+:      012684 module_start_adv_discovery_by_command:
+0x3a52 012685 fetch 1 ,mem_module_state 
+0x3a53 012686 isolate1 moudle_state_bt_bit ,pdata 
+0x3a54 012687 nbranch moudle_start_adv_by_command ,true 
+0x3a55 012688 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
+0x3a56 012689 and temp ,0x03 ,pdata 
+0x3a57 012690 store 1 ,mem_scan_mode 
+:      012691 moudle_start_adv_by_command:
+0x3a58 012692 fetch 1 ,mem_module_state 
+0x3a59 012693 isolate1 moudle_state_ble_bit ,pdata 
+0x3a5a 012694 nrtn true 
+0x3a5b 012695 fetcht 1 ,mem_module_bluetooth_stauts_by_command 
+0x3a5c 012696 isolate1 2 ,temp 
+0x3a5d 012697 branch app_ble_start_adv ,true 
+0x3a5e 012698 branch app_ble_stop_adv 
+:      012702 module_hci_cmd_set_bt_name:
+0x3a5f 012703 fetch 1 ,mem_module_uart_len 
+0x3a60 012704 sub pdata ,67 ,null 
+0x3a61 012705 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3a62 012706 store 1 ,mem_local_name_length 
+0x3a63 012707 arg 8 ,loopcnt 
+0x3a64 012708 call memset0 
+0x3a65 012709 fetch 1 ,mem_module_uart_len 
+0x3a66 012710 copy pdata ,loopcnt 
+0x3a67 012711 copy rega ,contru 
+0x3a68 012712 arg mem_local_name ,contw 
+0x3a69 012713 call uart_copy_rx_bytes_fast 
+0x3a6a 012714 branch module_hci_event_receive_valid_cmd 
+:      012718 module_hci_cmd_set_le_name:
+0x3a6b 012719 fetch 1 ,mem_module_uart_len 
+0x3a6c 012720 sub pdata ,29 ,null 
+0x3a6d 012721 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3a6e 012722 store 1 ,mem_le_name_len 
+0x3a6f 012723 copy pdata ,loopcnt 
+0x3a70 012724 copy rega ,contru 
+0x3a71 012725 arg mem_le_name ,contw 
+0x3a72 012726 call uart_copy_rx_bytes_fast 
+0x3a73 012727 call le_modified_name 
+0x3a74 012728 branch module_hci_event_receive_valid_cmd 
+:      012732 module_hci_cmd_receive_spp_data:
+0x3a75 012733 fetch 1 ,mem_ui_state_map 
+0x3a76 012734 bbit0 ui_state_bt_spp_conn ,module_hci_event_receive_invalid_cmd 
+0x3a77 012735 call app_check_sniff 
+0x3a78 012736 branch module_hci_cmd_spp_exit_sniff ,true 
+0x3a79 012737 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a7a 012739 call module_spp_clear_last_transmite_clock 
+0x3a7b 012740 fetch 1 ,mem_remote_credits 
+0x3a7c 012741 rtn blank 
+0x3a7d 012742 fetch 2 ,mem_nl_rx_len_all 
+0x3a7e 012743 bne 0 ,module_hci_cmd_pass_init_ng_rx_len_all 
+0x3a7f 012744 fetch 1 ,mem_module_uart_len 
+0x3a80 012745 store 2 ,mem_nl_rx_len_all 
+0x3a81 012747 copy rega ,contru 
+0x3a82 012750 copy contru ,pdata 
+0x3a83 012751 store 2 ,mem_nl_rx_data_src 
+:      012752 module_hci_cmd_pass_init_ng_rx_len_all:
+0x3a84 012753 call module_hci_cmd_get_current_packet_len_and_remain_len 
+0x3a85 012754 branch spp_tx_rfcomm_packet 
+:      012756 module_hci_cmd_spp_exit_sniff:
+0x3a86 012757 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a87 012758 branch module_exit_sniff 
+:      012760 module_hci_cmd_get_current_packet_len_and_remain_len:
+0x3a88 012761 call module_hci_cmd_get_current_patcket_len 
+0x3a89 012762 fetch 2 ,mem_nl_rx_len_all 
+0x3a8a 012763 fetcht 2 ,mem_current_packet_length 
+0x3a8b 012764 isub temp ,pdata 
+0x3a8c 012765 store 2 ,mem_nl_rx_len_all 
+0x3a8d 012766 rtn 
+:      012768 module_hci_cmd_get_current_patcket_len:
+0x3a8e 012769 fetch 2 ,mem_nl_rx_len_all 
+0x3a8f 012770 arg dm_refcom_buff_len ,temp 
+0x3a90 012771 call not_greater_than 
+0x3a91 012772 fetcht 2 ,mem_rfcomm_max_frame_size 
+0x3a92 012773 call not_greater_than 
+0x3a93 012774 fetcht 2 ,mem_pn_max_frame_size 
+0x3a94 012775 call not_greater_than 
+0x3a95 012776 store 2 ,mem_current_packet_length 
+0x3a96 012777 rtn 
+:      012779 module_hci_command_tx_spp_tx_complete:
+0x3a97 012780 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a98 012781 jam hci_cmd_spp_data_req ,mem_module_uart_opcode 
+0x3a99 012782 branch module_hci_event_receive_valid_cmd 
+:      012786 module_hci_cmd_receive_le_data:
+0x3a9a 012787 fetch 2 ,mem_ui_state_map 
+0x3a9b 012788 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+0x3a9c 012789 call module_check_ble_encrypt_state 
+0x3a9d 012790 branch module_hci_event_receive_invalid_cmd ,user 
+0x3a9e 012791 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3a9f 012792 fetch 1 ,mem_module_flag 
+0x3aa0 012793 bbit1 module_flag_ble_data_finish ,module_hci_cmd_receive_le_data_finish 
+0x3aa1 012794 fetch 1 ,mem_module_hci_notify_len 
+0x3aa2 012795 nrtn blank 
+0x3aa3 012796 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3aa4 012797 ifetch 2 ,contru 
+0x3aa5 012798 store 2 ,mem_module_hci_notify_handle 
+0x3aa6 012799 copy contru ,pdata 
+0x3aa7 012800 store 2 ,mem_module_hci_nofiy_addr 
+0x3aa8 012801 fetch 1 ,mem_module_uart_len 
+0x3aa9 012802 pincrease -2 
+0x3aaa 012803 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3aab 012804 branch module_hci_event_receive_invalid_cmd ,zero 
+0x3aac 012805 store 1 ,mem_module_hci_notify_len 
+0x3aad 012806 jam hci_not_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3aae 012807 call le_set_config_more_data 
+0x3aaf 012808 call module_hci_cmd_transmit_le_notify 
+0x3ab0 012809 call module_hci_cmd_transmit_le_notify 
+0x3ab1 012810 call module_hci_cmd_transmit_le_notify 
+0x3ab2 012811 fetch 1 ,mem_module_flag 
+0x3ab3 012812 rtnbit0 module_flag_ble_data_finish 
+:      012813 module_hci_cmd_receive_le_data_finish:
+0x3ab4 012814 jam hci_discard_packet ,mem_module_temp_nl_discard_packet 
+0x3ab5 012815 call module_clear_le_tx_data_flag 
+0x3ab6 012816 branch module_hci_event_receive_valid_cmd 
+:      012818 module_hci_cmd_transmit_le_notify:
+0x3ab7 012819 fetch 1 ,mem_module_hci_notify_len 
+0x3ab8 012820 rtn blank 
+0x3ab9 012821 call le_fifo_check_nearly_full 
+0x3aba 012822 nrtn blank 
+0x3abb 012823 call module_get_le_remote_mtu 
+0x3abc 012824 bpatch patch1c_1 ,mem_patch1c 
+0x3abd 012825 add temp ,-3 ,pdata 
+0x3abe 012826 fetcht 1 ,mem_module_hci_notify_len 
+0x3abf 012827 call not_greater_than 
+0x3ac0 012828 copy pdata ,rega 
+0x3ac1 012829 copy temp ,pdata 
+0x3ac2 012830 isub rega ,pdata 
+0x3ac3 012831 store 1 ,mem_module_hci_notify_len 
+0x3ac4 012832 fetcht 2 ,mem_module_hci_notify_handle 
+0x3ac5 012833 call le_att_malloc_tx_notify 
+0x3ac6 012834 fetch 2 ,mem_module_hci_nofiy_addr 
+0x3ac7 012835 copy pdata ,contru 
+0x3ac8 012836 copy rega ,loopcnt 
+0x3ac9 012837 call uart_copy_rx_bytes_fast 
+0x3aca 012838 copy contru ,pdata 
+0x3acb 012839 store 2 ,mem_module_hci_nofiy_addr 
+0x3acc 012840 fetch 1 ,mem_module_hci_notify_len 
+0x3acd 012841 nrtn blank 
+0x3ace 012842 branch module_set_le_tx_data_flag 
+:      012846 module_get_le_remote_mtu:
+0x3acf 012847 arg 0x17 ,temp 
+0x3ad0 012848 fetch 1 ,mem_module_flag 
+0x3ad1 012849 rtnbit1 module_flag_ble_send_mtu23 
+0x3ad2 012850 fetcht 2 ,mem_le_remote_mtu 
+0x3ad3 012851 rtn 
+:      012853 module_check_ble_encrypt_state:
+0x3ad4 012854 fetch 1 ,mem_module_flag 
+0x3ad5 012855 bbit1 module_flag_ble_data_encrypt ,le_check_encrypt_state 
+0x3ad6 012856 branch disable_user 
+:      012860 module_hci_cmd_inquire_status:
+0x3ad7 012861 branch module_hci_event_status_res 
+:      012865 module_hci_cmd_set_pairing_mode:
+0x3ad8 012866 copy rega ,contru 
+0x3ad9 012867 ifetch 1 ,contru 
+0x3ada 012868 beq pairing_pincode ,module_hci_pairing_pincode_mode 
+0x3adb 012869 beq pairing_justwork ,module_hci_pairing_just_work_mode 
+0x3adc 012870 beq pairing_passkey ,module_hci_pairing_passkey 
+0x3add 012871 beq pairing_confirm ,module_hci_pairing_numeric_comparison 
+0x3ade 012872 branch module_hci_event_receive_invalid_cmd 
+:      012873 module_hci_pairing_pincode_mode:
+0x3adf 012874 call ssp_disable 
+0x3ae0 012875 jam 0 ,mem_ssp_enable 
+0x3ae1 012876 branch module_hci_event_receive_valid_cmd 
+:      012877 module_hci_pairing_just_work_mode:
+0x3ae2 012878 setarg ssp_mode_just_work_io_cap_data 
+:      012879 module_hci_sspairing_mode:
+0x3ae3 012880 store 3 ,mem_sp_iocap_local 
+0x3ae4 012881 store 1 ,mem_ssp_mode_flag 
+0x3ae5 012882 call ssp_enable 
+0x3ae6 012883 jam 1 ,mem_ssp_enable 
+0x3ae7 012884 branch module_hci_event_receive_valid_cmd 
+:      012885 module_hci_pairing_passkey:
+0x3ae8 012886 setarg ssp_mode_passkey_io_cap_data 
+0x3ae9 012887 branch module_hci_sspairing_mode 
+:      012889 module_hci_pairing_numeric_comparison:
+0x3aea 012890 setarg ssp_mode_ssp_pin_io_cap_data 
+0x3aeb 012891 branch module_hci_sspairing_mode 
+:      012894 module_hci_cmd_set_pincode:
+0x3aec 012895 fetch 1 ,mem_module_uart_len 
+0x3aed 012896 sub pdata ,16 ,null 
+0x3aee 012897 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3aef 012898 store 1 ,mem_pin_length 
+0x3af0 012899 copy pdata ,loopcnt 
+0x3af1 012900 arg mem_pin ,contw 
+0x3af2 012901 call uart_copy_rx_bytes 
+0x3af3 012902 branch module_hci_event_receive_valid_cmd 
+:      012906 module_hci_cmd_set_uart_control_mode:
+0x3af4 012907 copy rega ,contru 
+0x3af5 012908 ifetch 1 ,contru 
+0x3af6 012909 hfetcht 1 ,core_uart_ctrl 
+0x3af7 012910 nsetflag blank ,4 ,temp 
+0x3af8 012911 hstoret 1 ,core_uart_ctrl 
+0x3af9 012912 branch module_hci_event_receive_valid_cmd 
+:      012916 module_hci_cmd_set_uart_baud:
+0x3afa 012917 fetch 1 ,mem_module_uart_len 
+0x3afb 012918 copy pdata ,loopcnt 
+0x3afc 012919 copy rega ,contru 
+0x3afd 012920 call string2dec_from_uart 
+0x3afe 012921 setarg uart_clk_24 
+0x3aff 012922 idiv temp 
+0x3b00 012923 call wait_div_end 
+0x3b01 012924 quotient pdata 
+:      012925 module_hci_cmd_set_uart_baud_ok:
+0x3b02 012926 store uart_baud_len ,mem_baud 
+0x3b03 012927 call module_hci_event_receive_valid_cmd 
+0x3b04 012928 call wait_uarttx 
+0x3b05 012929 branch uart_set_baud_by_mem 
+:      012933 module_hci_cmd_version_request:
+0x3b06 012934 arg 2 ,rega 
+0x3b07 012935 arg mem_soft_version_num ,regb 
+0x3b08 012936 arg 0 ,temp 
+0x3b09 012937 branch module_hci_event_set_cmd 
+:      012938 module_hci_event_set_cmd_send_response:
+0x3b0a 012939 store 2 ,mem_event_cmd_response_content 
+0x3b0b 012940 arg mem_event_cmd_response_content ,regb 
+0x3b0c 012941 arg 0 ,temp 
+0x3b0d 012942 branch module_hci_event_set_cmd 
+:      012946 module_hci_cmd_bt_disconnect:
+0x3b0e 012947 fetch 2 ,mem_ui_state_map 
+0x3b0f 012948 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
+:      012949 module_hci_cmd_bt_disconnect_doing:
+0x3b10 012950 call module_hci_event_receive_valid_cmd 
+0x3b11 012951 branch app_bt_disconnect 
+:      012955 module_hci_cmd_ble_disconnect:
+0x3b12 012956 fetch 2 ,mem_ui_state_map 
+0x3b13 012957 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+:      012958 module_hci_cmd_ble_disconnect_doing:
+0x3b14 012959 call module_hci_event_receive_valid_cmd 
+0x3b15 012960 branch app_ble_disconnect 
+:      012966 module_hci_cmd_set_nvram:
+0x3b16 012967 fetch 1 ,mem_module_uart_len 
+0x3b17 012968 copy pdata ,loopcnt 
+0x3b18 012969 copy rega ,contru 
+0x3b19 012970 fetch 2 ,mem_nv_data_ptr 
+0x3b1a 012971 icopy contw 
+0x3b1b 012972 call uart_copy_rx_bytes_fast 
+0x3b1c 012973 branch module_hci_event_receive_valid_cmd 
+:      012977 module_hci_cmd_confirm_gkey:
+0x3b1d 012978 fetch 1 ,mem_ui_state_map 
+0x3b1e 012979 bbit0 ui_state_bt_connected ,module_hci_event_receive_invalid_cmd 
+0x3b1f 012980 ifetch 1 ,contru 
+0x3b20 012981 fetcht 1 ,mem_flag_mode_ssp_pin 
+0x3b21 012982 setflag blank ,flag_mode_ssp_pin_comparison_result_bit ,temp 
+0x3b22 012983 set1 flag_mode_ssp_pin_reviceve_comparison_bit ,temp 
+0x3b23 012984 storet 1 ,mem_flag_mode_ssp_pin 
+0x3b24 012986 call module_hci_event_receive_valid_cmd 
+0x3b25 012988 fetch 1 ,mem_flag_mode_ssp_pin 
+0x3b26 012989 bbit1 flag_mode_ssp_pin_recieve_dhkey_bit ,module_hci_cmd_spp_number_comparison_result_is1 
+0x3b27 012990 rtn 
+:      012992 dhkey_not_accept:
+0x3b28 012993 jam 0 ,mem_flag_mode_ssp_pin 
+0x3b29 012994 jam bt_cmd_dhkey_not_accept ,mem_fifo_temp 
+0x3b2a 012995 branch ui_ipc_send_cmd 
+:      012998 module_hci_cmd_spp_number_comparison_result_is1:
+0x3b2b 012999 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
+0x3b2c 013000 branch dhkey_not_accept 
+:      013004 module_hci_cmd_set_credit_given:
+0x3b2d 013005 fetch 1 ,mem_ui_state_map 
+0x3b2e 013006 rtnbit0 ui_state_bt_spp_conn 
+0x3b2f 013007 fetch 1 ,mem_credit_flag 
+0x3b30 013008 rtneq credit_disable 
+0x3b31 013009 ifetch 1 ,contru 
+0x3b32 013010 fetcht 1 ,mem_credit_given 
+0x3b33 013011 iadd temp ,temp 
+0x3b34 013012 storet 1 ,mem_credit_given 
+0x3b35 013013 rtn 
+:      013017 module_hci_cmd_auto_adv:
+0x3b36 013018 arg 0x40 ,loopcnt 
+0x3b37 013019 arg mem_le_adv_data_len ,contw 
+0x3b38 013020 call clear_mem 
+0x3b39 013021 setarg 0 
+0x3b3a 013022 store 1 ,mem_regb 
+0x3b3b 013023 copy rega ,contru 
+:      013024 module_hci_cmd_auto_adv_loop:
+0x3b3c 013025 copy contru ,pdata 
+0x3b3d 013026 store 2 ,mem_regc 
+0x3b3e 013027 call module_hci_cmd_auto_adv_adv_analys 
+0x3b3f 013029 fetch 1 ,mem_regb 
+0x3b40 013030 fetcht 1 ,mem_temp 
+0x3b41 013031 increase 1 ,temp 
+0x3b42 013032 iadd temp ,pdata 
+0x3b43 013033 store 1 ,mem_regb 
+0x3b44 013035 sub pdata ,31 ,null 
+0x3b45 013036 nbranch module_hci_cmd_auto_adv_store_scan ,positive 
+:      013037 module_hci_cmd_auto_adv_store_adv:
+0x3b46 013038 fetcht 1 ,mem_le_adv_data_len 
+0x3b47 013039 setarg mem_le_adv_data 
+0x3b48 013040 iadd temp ,pdata 
+0x3b49 013041 store 2 ,mem_contw 
+0x3b4a 013042 fetcht 1 ,mem_temp 
+0x3b4b 013043 increase 1 ,temp 
+0x3b4c 013044 fetch 1 ,mem_le_adv_data_len 
+0x3b4d 013045 iadd temp ,pdata 
+0x3b4e 013046 store 1 ,mem_le_adv_data_len 
+0x3b4f 013047 branch module_hci_cmd_auto_adv_store_common 
+:      013048 module_hci_cmd_auto_adv_store_scan:
+0x3b50 013049 fetcht 1 ,mem_le_scan_data_len 
+0x3b51 013050 setarg mem_le_scan_data 
+0x3b52 013051 iadd temp ,pdata 
+0x3b53 013052 store 2 ,mem_contw 
+0x3b54 013053 fetcht 1 ,mem_temp 
+0x3b55 013054 increase 1 ,temp 
+0x3b56 013055 fetch 1 ,mem_le_scan_data_len 
+0x3b57 013056 iadd temp ,pdata 
+0x3b58 013057 store 1 ,mem_le_scan_data_len 
+:      013058 module_hci_cmd_auto_adv_store_common:
+0x3b59 013059 fetch 2 ,mem_contw 
+0x3b5a 013060 copy pdata ,contw 
+0x3b5b 013061 fetch 2 ,mem_regc 
+0x3b5c 013062 copy pdata ,contru 
+0x3b5d 013064 copy temp ,loopcnt 
+0x3b5e 013065 call uart_copy_rx_bytes_fast 
+0x3b5f 013067 fetch 1 ,mem_module_uart_len 
+0x3b60 013068 fetcht 1 ,mem_regb 
+0x3b61 013069 isub temp ,null 
+0x3b62 013070 nbranch module_hci_cmd_auto_adv_loop ,zero 
+0x3b63 013071 branch module_hci_event_receive_valid_cmd 
+:      013074 module_hci_cmd_auto_adv_adv_analys:
+0x3b64 013075 ifetch 1 ,contru 
+0x3b65 013076 store 1 ,mem_temp 
+0x3b66 013077 ifetch 1 ,contru 
+0x3b67 013078 store 1 ,mem_rega 
+0x3b68 013079 rtn 
+:      013083 module_hci_cmd_power_request:
+0x3b69 013084 arg 0 ,temp 
+0x3b6a 013085 arg 2 ,rega 
+0x3b6b 013086 fetch 2 ,mem_module_vdd_quotient 
+0x3b6c 013087 store 2 ,mem_event_cmd_response_content 
+0x3b6d 013088 arg mem_event_cmd_response_content ,regb 
+0x3b6e 013089 branch module_hci_event_set_cmd 
+:      013093 module_hci_cmd_power_set:
+0x3b6f 013094 fetch 1 ,mem_module_uart_len 
+0x3b70 013095 bne 1 ,module_hci_event_receive_invalid_cmd 
+0x3b71 013096 ifetch 1 ,contru 
+0x3b72 013097 store 1 ,mem_module_read_vdd_flag 
+0x3b73 013098 setarg 0x00 
+0x3b74 013099 store 2 ,mem_module_vdd_quotient 
+0x3b75 013100 branch module_hci_event_receive_valid_cmd 
+:      013104 module_hci_cmd_passkey_entry:
+0x3b76 013105 ifetch 4 ,contru 
+0x3b77 013106 store 4 ,mem_pin 
+0x3b78 013107 jam 4 ,mem_pin_length 
+0x3b79 013108 jam 0 ,mem_authentication_passkey_times 
+0x3b7a 013109 call module_hci_event_receive_valid_cmd 
+0x3b7b 013110 branch authentication_passkey 
+:      013114 module_hci_cmd_set_gpio:
+0x3b7c 013115 fetch 1 ,mem_module_uart_len 
+0x3b7d 013116 bne 3 ,module_hci_event_receive_invalid_cmd 
+0x3b7e 013117 ifetch 1 ,contru 
+0x3b7f 013118 beq hci_cmd_config_gpio_input ,module_set_gpio_input 
+0x3b80 013119 beq hci_cmd_config_gpio_output ,module_set_gpio_output 
+0x3b81 013120 branch module_hci_event_receive_invalid_cmd 
+:      013122 module_set_gpio_input:
+0x3b82 013123 ifetcht 1 ,contru 
+0x3b83 013124 ifetch 1 ,contru 
+0x3b84 013125 beq gpio_input_high_impedance ,module_set_gpio_high_impedance 
+0x3b85 013126 nsetflag blank ,7 ,temp 
+0x3b86 013127 call gpio_config_input 
+0x3b87 013128 branch module_hci_event_receive_valid_cmd 
+:      013130 module_set_gpio_high_impedance:
+0x3b88 013131 call gpio_set_high_impedance 
+0x3b89 013132 branch module_hci_event_receive_valid_cmd 
+:      013134 module_set_gpio_output:
+0x3b8a 013135 ifetcht 1 ,contru 
+0x3b8b 013136 call gpio_config_output0 
+0x3b8c 013137 ifetch 1 ,contru 
+0x3b8d 013138 isolate1 0 ,pdata 
+0x3b8e 013139 call gpio_out_flag 
+0x3b8f 013140 branch module_hci_event_receive_valid_cmd 
+:      013144 module_hci_cmd_read_gpio:
+0x3b90 013145 fetch 1 ,mem_module_uart_len 
+0x3b91 013146 bne 1 ,module_hci_event_receive_invalid_cmd 
+0x3b92 013147 ifetcht 1 ,contru 
+0x3b93 013148 call gpio_get_bit 
+0x3b94 013149 setarg 0x0 
+0x3b95 013150 nsetflag true ,0 ,pdata 
+0x3b96 013151 arg 1 ,rega 
+0x3b97 013152 branch module_hci_event_set_cmd_send_response 
+:      013156 module_hci_cmd_le_set_pairing_mode:
+0x3b98 013157 copy rega ,contru 
+0x3b99 013158 ifetch 1 ,contru 
+0x3b9a 013159 copy pdata ,temp 
+0x3b9b 013160 beq le_pairing_mode_secure_connect_justwork ,module_le_set_pairing_mode_secure_justwork 
+0x3b9c 013161 beq le_pairing_mode_secure_connect_numeric ,module_le_set_pairing_mode_secure_numeric 
+0x3b9d 013162 beq le_pairing_mode_secure_connect_passkey ,module_le_set_pairing_mode_secure_passkey 
+0x3b9e 013163 store 1 ,mem_le_pairing_mode 
+0x3b9f 013164 beq le_pairing_mode_none ,module_le_set_no_pairing 
+0x3ba0 013165 beq le_pairing_mode_lagacy_justwork ,module_le_set_pairing_mode_lagacy_just_work 
+0x3ba1 013166 beq le_pairing_mode_lagacy_passkey ,module_le_set_pairing_mode_lagacy_passkey 
+0x3ba2 013167 branch module_hci_event_receive_invalid_cmd 
+:      013169 module_le_set_pairing_mode_secure_justwork:
+0x3ba3 013170 fetch 1 ,mem_le_secure_connect_enable 
+0x3ba4 013171 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3ba5 013172 storet 1 ,mem_le_pairing_mode 
+0x3ba6 013173 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x3ba7 013174 branch module_le_set_noinputnooutput 
+:      013175 module_le_set_pairing_mode_secure_numeric:
+0x3ba8 013176 fetch 1 ,mem_le_secure_connect_enable 
+0x3ba9 013177 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3baa 013178 storet 1 ,mem_le_pairing_mode 
+0x3bab 013179 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x3bac 013180 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
+0x3bad 013181 branch module_hci_event_receive_valid_cmd 
+:      013182 module_le_set_pairing_mode_secure_passkey:
+0x3bae 013183 fetch 1 ,mem_le_secure_connect_enable 
+0x3baf 013184 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3bb0 013185 storet 1 ,mem_le_pairing_mode 
+0x3bb1 013186 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x3bb2 013187 branch module_le_set_displayonly 
+:      013188 module_le_set_no_pairing:
+0x3bb3 013189 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
+:      013190 module_le_set_noinputnooutput:
+0x3bb4 013191 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
+0x3bb5 013192 branch module_hci_event_receive_valid_cmd 
+:      013193 module_le_set_pairing_mode_lagacy_just_work:
+0x3bb6 013194 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+0x3bb7 013195 branch module_le_set_noinputnooutput 
+:      013196 module_le_set_pairing_mode_lagacy_passkey:
+0x3bb8 013197 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+:      013198 module_le_set_displayonly:
+0x3bb9 013199 jam flag_iocap_displayonly ,mem_le_pres_iocap 
+0x3bba 013200 branch module_hci_event_receive_valid_cmd 
+:      013204 module_hci_cmd_le_set_adv_data:
+0x3bbb 013205 fetch 1 ,mem_module_uart_len 
+0x3bbc 013206 sub pdata ,31 ,null 
+0x3bbd 013207 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3bbe 013208 store 1 ,mem_le_adv_data_len 
+0x3bbf 013209 copy pdata ,loopcnt 
+0x3bc0 013210 copy rega ,contru 
+0x3bc1 013211 arg mem_le_adv_data ,contw 
+0x3bc2 013212 call uart_copy_rx_bytes_fast 
+0x3bc3 013213 branch module_hci_event_receive_valid_cmd 
+:      013217 module_hci_cmd_le_set_scan_data:
+0x3bc4 013218 fetch 1 ,mem_module_uart_len 
+0x3bc5 013219 sub pdata ,31 ,null 
+0x3bc6 013220 nbranch module_hci_event_receive_invalid_cmd ,positive 
+0x3bc7 013221 store 1 ,mem_le_scan_data_len 
+0x3bc8 013222 copy pdata ,loopcnt 
+0x3bc9 013223 copy rega ,contru 
+0x3bca 013224 arg mem_le_scan_data ,contw 
+0x3bcb 013225 call uart_copy_rx_bytes_fast 
+0x3bcc 013226 branch module_hci_event_receive_valid_cmd 
+:      013230 module_hci_cmd_le_send_conn_update_req:
+0x3bcd 013231 fetch 2 ,mem_ui_state_map 
+0x3bce 013232 bbit0 ui_state_ble_connected ,module_hci_event_receive_invalid_cmd 
+0x3bcf 013233 fetch 1 ,mem_module_uart_len 
+0x3bd0 013234 bne 0x08 ,module_hci_event_receive_invalid_cmd 
+0x3bd1 013235 copy rega ,contru 
+0x3bd2 013236 ifetch 8 ,contru 
+0x3bd3 013237 store 8 ,mem_le_interval_min 
+0x3bd4 013238 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x3bd5 013239 call ui_ipc_send_cmd 
+0x3bd6 013240 branch module_hci_event_receive_valid_cmd 
+:      013244 module_hci_cmd_set_le_adv_parameter:
+0x3bd7 013245 ifetch 2 ,contru 
+0x3bd8 013246 store 2 ,mem_le_adv_interval 
+0x3bd9 013247 branch module_hci_event_receive_valid_cmd 
+:      013251 module_hci_cmd_le_start_pairing:
+0x3bda 013252 fetch 1 ,mem_le_pairing_mode 
+0x3bdb 013253 branch module_hci_event_receive_invalid_cmd ,blank 
+0x3bdc 013254 fetch 1 ,mem_le_pairing_state 
+0x3bdd 013255 bne flag_le_pairing_null ,module_hci_event_receive_invalid_cmd 
+0x3bde 013256 fetch 1 ,mem_le_enc_state 
+0x3bdf 013257 bne flag_le_enc_null ,module_hci_event_receive_invalid_cmd 
+0x3be0 013258 call check_51cmd_le_smp_sec_req 
+0x3be1 013259 branch module_hci_event_receive_valid_cmd 
+:      013263 module_hci_cmd_set_wake_gpio:
+0x3be2 013264 fetch 1 ,mem_module_uart_len 
+0x3be3 013265 bne 5 ,module_hci_event_receive_invalid_cmd 
+0x3be4 013266 ifetch 1 ,contru 
+0x3be5 013267 store 1 ,mem_module_mcu_wake_pin 
+0x3be6 013268 ifetch 4 ,contru 
+0x3be7 013269 store 4 ,mem_module_mcu_wake_delay_us 
+0x3be8 013270 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3be9 013271 call gpio_config_output 
+0x3bea 013272 call module_set_mcu_wake_pin_low 
+0x3beb 013273 branch module_hci_event_receive_valid_cmd 
+:      013277 module_hci_cmd_set_tx_power:
+0x3bec 013278 fetch 1 ,mem_module_uart_len 
+0x3bed 013279 bne 0x01 ,module_hci_event_receive_invalid_cmd 
+0x3bee 013280 ifetch 1 ,contru 
+0x3bef 013281 store 1 ,mem_tx_power 
+0x3bf0 013282 branch module_hci_event_receive_valid_cmd 
+:      013286 module_hci_cmd_le_confirm_gkey:
+0x3bf1 013287 ifetch 1 ,contru 
+0x3bf2 013288 beq 0x01 ,module_hci_cmd_le_confirm_gkey_fail 
+0x3bf3 013289 fetch 1 ,mem_le_secure_connect_state 
+0x3bf4 013290 beq le_sc_stat_send_public_key ,module_hci_cmd_le_confirm_gkey_ok 
+0x3bf5 013291 beq le_sc_stat_receive_dhkey ,module_hci_cmd_le_confirm_gkey_ok 
+0x3bf6 013292 beq le_sc_stat_wait_confirm_gkey ,module_hci_cmd_le_confirm_gkey_ok 
+0x3bf7 013293 branch module_hci_event_receive_invalid_cmd 
+:      013294 module_hci_cmd_le_confirm_gkey_ok:
+0x3bf8 013295 jam flag_le_sc_confrim_gkey_ok ,mem_le_sc_confirm_gkey_flag 
+0x3bf9 013296 branch module_hci_event_receive_valid_cmd 
+:      013298 module_hci_cmd_le_confirm_gkey_fail:
+0x3bfa 013299 call le_send_pairing_confirm_value_failed 
+0x3bfb 013300 branch module_hci_event_receive_valid_cmd 
+:      013304 module_hci_cmd_set_reject_justwork_flag:
+0x3bfc 013305 fetch 1 ,mem_module_uart_len 
+0x3bfd 013306 bne 0x01 ,module_hci_event_receive_invalid_cmd 
+0x3bfe 013307 call module_hci_event_receive_valid_cmd 
+0x3bff 013308 ifetch 1 ,contru 
+0x3c00 013309 branch classic_bt_clr_reject_justwork_flag ,blank 
+0x3c01 013310 branch classic_bt_set_reject_justwork_flag 
+:      013314 module_hci_cmd_reset_chip:
+0x3c02 013315 call module_hci_event_receive_valid_cmd 
+0x3c03 013316 call wait_uarttx 
+0x3c04 013317 jam 0x01 ,core_reset 
+0x3c05 013318 branch loop 
+:      013322 module_hci_cmd_le_set_fixed_passkey:
+0x3c06 013323 fetch 1 ,mem_module_uart_len 
+0x3c07 013324 beq 0 ,module_hci_event_receive_invalid_cmd 
+0x3c08 013325 ifetch 1 ,contru 
+0x3c09 013326 branch module_hci_cmd_le_set_random_passkey ,blank 
+0x3c0a 013327 fetch 1 ,mem_module_uart_len 
+0x3c0b 013328 bne 5 ,module_hci_event_receive_invalid_cmd 
+0x3c0c 013329 ifetch 4 ,contru 
+0x3c0d 013330 arg 1000000 ,temp 
+0x3c0e 013331 isub temp ,null 
+0x3c0f 013332 branch module_hci_event_receive_invalid_cmd ,positive 
+0x3c10 013333 store 4 ,mem_le_tk 
+0x3c11 013334 call le_set_config_fixed_tk 
+0x3c12 013335 branch module_hci_event_receive_valid_cmd 
+:      013337 module_hci_cmd_le_set_random_passkey:
+0x3c13 013338 call le_clr_config_fixed_tk 
+0x3c14 013339 branch module_hci_event_receive_valid_cmd 
+:      013343 module_hci_test_cmde_close_lpm:
+0x3c15 013344 jam 0 ,mem_lpm_mode 
+0x3c16 013345 branch module_hci_event_receive_valid_cmd 
+:      013350 module_hci_event_receive_invalid_cmd:
+0x3c17 013351 arg 1 ,temp 
+0x3c18 013352 arg 0 ,rega 
+0x3c19 013353 branch module_hci_event_set_cmd 
+:      013356 module_hci_event_receive_valid_cmd:
+0x3c1a 013357 arg 0 ,temp 
+0x3c1b 013358 arg 0 ,rega 
+0x3c1c 013359 branch module_hci_event_set_cmd 
+:      013363 module_hci_event_spp_connect:
+0x3c1d 013364 jam hci_event_spp_conn_rep ,mem_module_uart_opcode 
+0x3c1e 013365 branch module_hci_event_enter_standby_mode_len0 
+:      013369 module_hci_event_le_connect:
+0x3c1f 013370 jam hci_event_le_conn_rep ,mem_module_uart_opcode 
+0x3c20 013371 branch module_hci_event_enter_standby_mode_len0 
+:      013375 module_hci_event_spp_disconnect:
+0x3c21 013376 jam hci_event_spp_dis_rep ,mem_module_uart_opcode 
+0x3c22 013377 branch module_hci_event_enter_standby_mode_len0 
+:      013381 module_hci_event_le_disconnect:
+0x3c23 013382 jam hci_event_le_dis_rep ,mem_module_uart_opcode 
+0x3c24 013383 branch module_hci_event_enter_standby_mode_len0 
+:      013391 module_hci_event_set_cmd:
+0x3c25 013392 fetch 1 ,mem_module_uart_opcode 
+0x3c26 013393 copy pdata ,regc 
+0x3c27 013394 jam hci_event_cmd_res ,mem_module_uart_opcode 
+0x3c28 013395 setarg 2 
+0x3c29 013396 iadd rega ,pdata 
+0x3c2a 013397 call module_hci_prepare_tx 
+0x3c2b 013398 copy regc ,pdata 
+0x3c2c 013399 istore 1 ,contwu 
+0x3c2d 013400 istoret 1 ,contwu 
+0x3c2e 013401 copy rega ,loopcnt 
+0x3c2f 013402 copy regb ,contr 
+0x3c30 013403 call uart_copy_tx_bytes 
+0x3c31 013404 branch uartd_send 
+:      013408 module_hci_event_receive_spp_data:
+0x3c32 013410 call module_spp_clear_last_transmite_clock 
+0x3c33 013411 jam hci_event_spp_data_rep ,mem_module_uart_opcode 
+0x3c34 013412 fetch 1 ,mem_current_length 
+0x3c35 013413 rtn blank 
+0x3c36 013414 call module_hci_prepare_tx 
+0x3c37 013415 fetch 1 ,mem_current_length 
+0x3c38 013416 copy pdata ,loopcnt 
+0x3c39 013417 fetch 2 ,mem_rfcomm_uih_payload_ptr 
+0x3c3a 013418 copy pdata ,contr 
+0x3c3b 013419 call uart_copy_tx_bytes_fast 
+0x3c3c 013420 branch uartd_send 
+:      013424 module_hci_event_receive_le_data:
+0x3c3d 013425 jam hci_event_le_data_rep ,mem_module_uart_opcode 
+0x3c3e 013426 fetch 1 ,mem_module_le_rx_data_len 
+0x3c3f 013427 icopy loopcnt 
+0x3c40 013428 increase 2 ,pdata 
+0x3c41 013429 call module_hci_prepare_tx 
+0x3c42 013430 fetch 2 ,mem_module_le_rx_data_handle 
+0x3c43 013431 istore 2 ,contwu 
+0x3c44 013432 fetch 2 ,mem_module_le_rx_data_address 
+0x3c45 013433 icopy contr 
+0x3c46 013434 call uart_copy_tx_bytes_fast 
+0x3c47 013435 branch uartd_send 
+:      013439 module_hci_event_enter_standby_mode:
+0x3c48 013440 jam hci_event_standby_rep ,mem_module_uart_opcode 
+:      013441 module_hci_event_enter_standby_mode_len0:
+0x3c49 013442 setarg 0 
+0x3c4a 013443 call module_hci_prepare_tx 
+0x3c4b 013444 branch uartd_send 
+:      013448 module_hci_event_status_res:
+0x3c4c 013449 jam hci_event_status_res ,mem_module_uart_opcode 
+0x3c4d 013450 setarg 1 
+0x3c4e 013451 call module_hci_prepare_tx 
+0x3c4f 013453 call module_hci_read_bt_status 
+0x3c50 013455 fetch 2 ,mem_ui_state_map 
+0x3c51 013456 arg ui_state_bt_hid_conn ,queue 
+0x3c52 013457 qisolate1 pdata 
+0x3c53 013458 setflag true ,3 ,temp 
+0x3c54 013460 arg ui_state_ble_connected ,queue 
+0x3c55 013461 qisolate1 pdata 
+0x3c56 013462 setflag true ,5 ,temp 
+0x3c57 013464 fetch 1 ,mem_ui_state_map 
+0x3c58 013465 arg ui_state_bt_spp_conn ,queue 
+0x3c59 013466 qisolate1 pdata 
+0x3c5a 013467 setflag true ,4 ,temp 
+0x3c5b 013469 istoret 1 ,contwu 
+0x3c5c 013470 branch uartd_send 
+:      013474 module_hci_read_bt_status:
+0x3c5d 013475 arg 0 ,temp 
+0x3c5e 013476 fetch 1 ,mem_scan_mode 
+0x3c5f 013477 arg inq_scan_mode ,queue 
+0x3c60 013478 qisolate1 pdata 
+0x3c61 013479 setflag true ,0 ,temp 
+0x3c62 013480 arg page_scan_mode ,queue 
+0x3c63 013481 qisolate1 pdata 
+0x3c64 013482 setflag true ,1 ,temp 
+0x3c65 013484 fetch 1 ,mem_le_adv_enable 
+0x3c66 013485 arg 0 ,queue 
+0x3c67 013486 qisolate1 pdata 
+0x3c68 013487 setflag true ,2 ,temp 
+0x3c69 013488 rtn 
+:      013492 module_hci_event_store_device:
+0x3c6a 013493 jam hci_event_nvram_rep ,mem_module_uart_opcode 
+0x3c6b 013494 fetch 1 ,mem_nv_data_number 
+0x3c6c 013495 mul32 pdata ,34 ,pdata 
+0x3c6d 013496 icopy loopcnt 
+0x3c6e 013497 call module_hci_prepare_tx 
+0x3c6f 013498 fetch 2 ,mem_nv_data_ptr 
+0x3c70 013499 icopy contr 
+0x3c71 013500 call uart_copy_tx_bytes_fast 
+0x3c72 013501 branch uartd_send 
+:      013505 module_hci_event_gkey_generate:
+0x3c73 013506 jam hci_event_gkey ,mem_module_uart_opcode 
+0x3c74 013507 setarg 4 
+0x3c75 013508 call module_hci_prepare_tx 
+0x3c76 013509 fetch 4 ,mem_gkey 
+0x3c77 013510 istore 4 ,contwu 
+0x3c78 013511 branch uartd_send 
+:      013515 module_hci_event_invalid_packet:
+0x3c79 013516 jam hci_event_invalid_packet ,mem_module_uart_opcode 
+0x3c7a 013517 hfetch 2 ,core_uart_rxitems 
+0x3c7b 013518 arg 0xff ,temp 
+0x3c7c 013519 call not_greater_than 
+0x3c7d 013520 copy pdata ,loopcnt 
+0x3c7e 013521 call module_hci_prepare_tx 
+0x3c7f 013522 call uartd_prepare_rx 
+0x3c80 013523 call uart_copy_rx2tx 
+0x3c81 013524 branch uartd_send 
+:      013528 module_hci_event_passkey_entry_mode:
+0x3c82 013529 jam hci_event_get_passkey ,mem_module_uart_opcode 
+0x3c83 013530 branch module_hci_event_enter_standby_mode_len0 
+:      013534 module_hci_event_le_tk:
+0x3c84 013535 jam hci_event_le_tk ,mem_module_uart_opcode 
+0x3c85 013536 setarg 4 
+0x3c86 013537 call module_hci_prepare_tx 
+0x3c87 013538 fetch 4 ,mem_le_tk 
+0x3c88 013539 istore 4 ,contwu 
+0x3c89 013540 branch uartd_send 
+:      013544 module_hci_event_le_pairing_fail:
+0x3c8a 013545 arg flag_ble_pairing_fail ,rega 
+0x3c8b 013546 branch module_hci_event_pairing_completed 
+:      013548 module_hci_event_le_pairing_success:
+0x3c8c 013549 arg flag_ble_pairing_success ,rega 
+0x3c8d 013550 branch module_hci_event_pairing_completed 
+:      013552 module_hci_event_bt_pairing_fail:
+0x3c8e 013553 arg flag_bt_pairing_fail ,rega 
+0x3c8f 013554 branch module_hci_event_pairing_completed 
+:      013556 module_hci_event_bt_pairing_success:
+0x3c90 013557 arg flag_bt_pairing_success ,rega 
+:      013559 module_hci_event_pairing_completed:
+0x3c91 013560 jam 0 ,mem_flag_mode_ssp_pin 
+0x3c92 013561 jam hci_event_le_pairing_state ,mem_module_uart_opcode 
+0x3c93 013562 setarg 2 
+0x3c94 013563 call module_hci_prepare_tx 
+0x3c95 013564 copy rega ,pdata 
+0x3c96 013565 istore 2 ,contwu 
+0x3c97 013566 branch uartd_send 
+:      013570 module_hci_event_pause_enc:
+0x3c98 013571 arg flag_event_pause_enc ,regc 
+0x3c99 013572 branch module_hci_event_enc 
+:      013574 module_hci_event_start_enc:
+0x3c9a 013575 arg flag_event_start_enc ,regc 
+:      013577 module_hci_event_enc:
+0x3c9b 013578 jam hci_event_le_encryption_state ,mem_module_uart_opcode 
+0x3c9c 013579 setarg 1 
+0x3c9d 013580 call module_hci_prepare_tx 
+0x3c9e 013581 copy regc ,pdata 
+0x3c9f 013582 istore 1 ,contwu 
+0x3ca0 013583 branch uartd_send 
+:      013587 module_hci_event_le_gkey:
+0x3ca1 013588 jam hci_event_le_gkey ,mem_module_uart_opcode 
+0x3ca2 013589 setarg 4 
+0x3ca3 013590 call module_hci_prepare_tx 
+0x3ca4 013591 fetch 4 ,mem_gkey 
+0x3ca5 013592 istore 4 ,contwu 
+0x3ca6 013593 branch uartd_send 
+:      013604 module_hci_prepare_tx:
+0x3ca7 013605 jam 0x02 ,mem_module_uart_cmd 
+0x3ca8 013606 store 1 ,mem_module_uart_len 
+0x3ca9 013607 storet 8 ,mem_temp 
+0x3caa 013608 bpatch patch1c_2 ,mem_patch1c 
+0x3cab 013609 call module_set_mcu_wake_pin_high_delay 
+0x3cac 013610 fetcht 8 ,mem_temp 
+0x3cad 013611 call uartd_prepare_tx 
+0x3cae 013612 fetch 3 ,mem_module_uart_cmd 
+0x3caf 013613 istore 3 ,contwu 
+0x3cb0 013614 rtn 
+:      013617 module_set_mcu_wake_pin_high_delay:
+0x3cb1 013618 call module_check_mcu_wake_pin_high 
+0x3cb2 013619 rtn true 
+:      013620 module_set_mcu_wake_pin_h_delay:
+0x3cb3 013621 call module_set_mcu_wake_pin_high 
+0x3cb4 013622 fetch 4 ,mem_module_mcu_wake_delay_us 
+0x3cb5 013623 rshift2 pdata ,pdata 
+0x3cb6 013624 rtn blank 
+0x3cb7 013625 branch delay 
+:      013627 module_set_mcu_wake_pin_high:
+0x3cb8 013629 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3cb9 013630 branch gpio_out_active 
+:      013632 module_check_mcu_wake_pin_high:
+0x3cba 013633 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3cbb 013634 branch gpio_check_active 
+:      013636 module_set_mcu_wake_pin_low:
+0x3cbc 013637 fetcht 1 ,mem_module_mcu_wake_pin 
+0x3cbd 013638 branch gpio_out_inactive 
+:      013641 delay:
+0x3cbe 013642 increase -1 ,pdata 
+0x3cbf 013643 nop 38 
+0x3cc0 013644 nbranch delay ,blank 
+0x3cc1 013645 rtn 
+:      013654 module_le_receive_data:
+0x3cc2 013655 call module_check_ble_encrypt_state 
+0x3cc3 013656 rtn user 
+0x3cc4 013657 copy rega ,pdata 
+0x3cc5 013658 store 2 ,mem_module_le_rx_data_address 
+0x3cc6 013659 copy regb ,pdata 
+0x3cc7 013660 store 1 ,mem_module_le_rx_data_len 
+0x3cc8 013661 fetch 2 ,mem_le_att_handle 
+0x3cc9 013662 fetcht 2 ,mem_module_data_write_handle 
+0x3cca 013663 isub temp ,null 
+0x3ccb 013664 branch module_le_receive_data_ok ,zero 
+0x3ccc 013665 fetcht 2 ,mem_module_data_write_handle2 
+0x3ccd 013666 isub temp ,null 
+0x3cce 013667 nrtn zero 
+:      013668 module_le_receive_data_ok:
+0x3ccf 013669 store 2 ,mem_module_le_rx_data_handle 
+0x3cd0 013670 branch module_hci_event_receive_le_data 
+:      013675 module_exit_sniff:
+0x3cd1 013676 fetch 1 ,mem_module_flag 
+0x3cd2 013677 rtnbit1 moudle_task_unsniff 
+0x3cd3 013678 call module_set_unsniff_task_flag 
+0x3cd4 013679 branch app_bt_sniff_exit 
+:      013682 module_set_lpm_mult_2:
+0x3cd5 013683 jam 2 ,mem_lpm_mult 
+0x3cd6 013684 rtn 
+:      013688 module_bb_event_timer:
+0x3cd7 013689 branch module_read_vdd_timer 
+:      013691 module_read_vdd_timer:
+0x3cd8 013692 fetch 1 ,mem_module_read_vdd_flag 
+0x3cd9 013693 rtn blank 
+0x3cda 013694 fetch 1 ,mem_module_read_vdd_count 
+0x3cdb 013695 rtn blank 
+0x3cdc 013696 increase -1 ,pdata 
+0x3cdd 013697 store 1 ,mem_module_read_vdd_count 
+0x3cde 013698 nrtn blank 
+0x3cdf 013699 jam flag_module_read_vdd_count ,mem_module_read_vdd_count 
+0x3ce0 013700 call adc_set_mode 
+0x3ce1 013701 call vdd_calculate_by_mode 
+0x3ce2 013702 div pdata ,0x64 
+0x3ce3 013703 call wait_div_end 
+0x3ce4 013704 quotient pdata 
+0x3ce5 013705 remainder temp 
+0x3ce6 013706 store 1 ,mem_module_vdd_quotient 
+0x3ce7 013707 storet 1 ,mem_module_vdd_remainder 
+0x3ce8 013708 rtn 
+:      013711 module_control_air_flow:
+0x3ce9 013712 call check_uart_tx_buff 
+0x3cea 013713 branch app_l2cap_flow_control_enable ,positive 
+0x3ceb 013714 branch app_l2cap_flow_control_disable 
+:      013718 module_set_sniff_task_flag:
+0x3cec 013719 arg moudle_task_sniff ,queue 
+0x3ced 013720 branch module_set_state 
+:      013722 module_clear_sniff_task_flag:
+0x3cee 013723 arg moudle_task_sniff ,queue 
+0x3cef 013724 branch module_clr_state 
+:      013726 module_set_unsniff_task_flag:
+0x3cf0 013727 arg moudle_task_unsniff ,queue 
+0x3cf1 013728 branch module_set_state 
+:      013730 module_clear_unsniff_task_flag:
+0x3cf2 013731 arg moudle_task_unsniff ,queue 
+0x3cf3 013732 branch module_clr_state 
+:      013734 module_set_le_tx_data_flag:
+0x3cf4 013735 arg module_flag_ble_data_finish ,queue 
+0x3cf5 013736 branch module_set_state 
+:      013738 module_clear_le_tx_data_flag:
+0x3cf6 013739 arg module_flag_ble_data_finish ,queue 
+0x3cf7 013740 branch module_clr_state 
+:      013742 module_clr_state:
+0x3cf8 013743 fetch 1 ,mem_module_flag 
+0x3cf9 013744 qset0 pdata 
+0x3cfa 013745 store 1 ,mem_module_flag 
+0x3cfb 013746 rtn 
+:      013748 module_set_state:
+0x3cfc 013749 fetch 1 ,mem_module_flag 
+0x3cfd 013750 qset1 pdata 
+0x3cfe 013751 store 1 ,mem_module_flag 
+0x3cff 013752 rtn 
+:      013762 mouse_init:
+0x3d00 013763 call mouse_setting_config 
+0x3d01 013764 call spi_ncs_enable 
+0x3d02 013765 call mouse_init_sunt 
+0x3d03 013766 call mouse_dpi_config 
+0x3d04 013767 call spi_ncs_disable 
+0x3d05 013768 rtn wake 
+0x3d06 013769 call mouse_cheak_enable_usb 
+0x3d07 013770 call mouse_cb_fuction 
+0x3d08 013773 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d09 013774 rtnbit1 mouse_enable_usb 
+0x3d0a 013775 call mouse_wakeup_from_power 
+0x3d0b 013776 rtnmark1 mark_24g 
+0x3d0c 013777 fetch 2 ,mem_ui_state_map 
+0x3d0d 013778 bbit1 ui_state_btn_down ,mouse_start_discovery 
+0x3d0e 013779 branch mouse_check_reconn_target 
+:      013782 mouse_delay_4s:
+0x3d0f 013783 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d10 013784 rtnbit0 mouse_enable_init_delay 
+0x3d11 013785 arg 20 ,loopcnt 
+:      013786 mouse_delay_20ms:
+0x3d12 013787 setarg 200000 
+0x3d13 013788 call sleep 
+0x3d14 013789 loop delay_10ms 
+0x3d15 013790 rtn 
+:      013793 mouse_cheak_enable_usb:
+0x3d16 013794 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d17 013795 rtnbit0 mouse_enable_usb 
+0x3d18 013796 branch usb_init 
+:      013799 mouse_cb_fuction:
+0x3d19 013800 setarg mouse_le 
+0x3d1a 013801 store 2 ,mem_cb_le_process 
+0x3d1b 013802 setarg mouse_send_process 
+0x3d1c 013803 store 2 ,mem_cb_bt_process 
+0x3d1d 013804 setarg mouse_process_lpm_before 
+0x3d1e 013805 store 2 ,mem_cb_before_lpm 
+0x3d1f 013806 setarg mouse_priority_bb_event 
+0x3d20 013807 store 2 ,mem_cb_bb_event_process 
+0x3d21 013808 setarg mouse_idle 
+0x3d22 013809 store 2 ,mem_cb_idle_process 
+0x3d23 013810 setarg mouse_before_hibernate 
+0x3d24 013811 store 2 ,mem_cb_before_hibernate 
+0x3d25 013812 setarg le_mouse_bb_event_connect_complete 
+0x3d26 013813 store 2 ,mem_cb_att_write 
+0x3d27 013815 call g24_head_ptr2regc 
+0x3d28 013816 setarg mouse_g24_package_data 
+0x3d29 013817 add regc ,offset_24g_cb_data ,contw 
+0x3d2a 013818 istore 2 ,contw 
+0x3d2b 013819 setarg mouse_g24_enter_lpm 
+0x3d2c 013820 add regc ,offset_24g_cb_lpm_prepare ,contw 
+0x3d2d 013821 istore 2 ,contw 
+0x3d2e 013822 setarg mouse_lpm_before_common 
+0x3d2f 013823 add regc ,offset_24g_cb_lpm_before ,contw 
+0x3d30 013824 istore 2 ,contw 
+0x3d31 013826 setarg mouse_bb_event_timer 
+0x3d32 013827 store 2 ,mem_cb_event_timer 
+0x3d33 013828 setarg mouse_spi_write_flash_cb 
+0x3d34 013829 store 2 ,mem_cb_spi_flash_write_complate 
+0x3d35 013830 rtn 
+:      013831 mouse_spi_write_flash_cb:
+:      013832 mouse_spi_init:
+0x3d36 013833 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d37 013834 bbit0 mouse_enable_spi2 ,spid_init 
+0x3d38 013835 branch spid_init2 
+:      013837 mouse_setting_config:
+0x3d39 013838 rtn wake 
+0x3d3a 013839 call g24_set_device_addr 
+0x3d3b 013840 call mouse_gpio_init 
+0x3d3c 013841 call mouse_param_init 
+0x3d3d 013842 call mouse_adc_init 
+0x3d3e 013843 call le_set_config_fixed_ltk 
+0x3d3f 013844 call le_set_justwork 
+0x3d40 013845 call le_set_fixed_ltk 
+0x3d41 013846 call le_set_config_read_authentication 
+0x3d42 013847 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d43 013848 bbit1 mouse_enable_eeprom ,mouse_init_iic 
+0x3d44 013849 bbit1 mouse_enable_flash ,mouse_load_flash_info_cheak 
+0x3d45 013850 rtn 
+:      013852 mouse_init_iic:
+0x3d46 013853 call iic_init_390k 
+0x3d47 013854 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d48 013855 isolate1 mouse_enable_2k_eeprom ,pdata 
+0x3d49 013856 ncall clear_eeprom_size_2k ,true 
+0x3d4a 013857 call mouse_load_eeprom_dpi 
+0x3d4b 013858 call mouse_init_environment 
+0x3d4c 013859 call mouse_set_24g_addr_eeprom 
+0x3d4d 013860 branch iicd_read_eep_data 
+:      013862 mouse_wakeup_from_power:
+0x3d4e 013863 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d4f 013864 bbit0 mouse_enable_wakeup_from_power ,mouse_wakeup_no_from_power 
+0x3d50 013865 fetch 1 ,mem_wakup_from_power_flag 
+0x3d51 013866 isolate0 gpio_latch ,pdata 
+0x3d52 013867 nrtn true 
+:      013868 mouse_wakeup_no_from_power:
+0x3d53 013869 fetch 1 ,mem_reconn_times_init 
+0x3d54 013870 store 1 ,mem_reconn_times 
+0x3d55 013871 fetch 1 ,mem_config_function_enable 
+0x3d56 013872 rtnbit1 enable_select_device_by_switch 
+:      013873 mouse_start_24g_mode:
+0x3d57 013874 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d58 013875 rtnbit0 mouse_enable_24g 
+0x3d59 013876 bbit1 mouse_enable_auto_24g_paring ,g24_auto_pair_start 
+0x3d5a 013877 branch g24_check_51cmd_start_24g 
+:      013878 le_mouse_bb_event_connect_complete:
+0x3d5b 013879 fetch 1 ,mem_le_att_handle 
+0x3d5c 013880 sub pdata ,26 ,pdata 
+0x3d5d 013881 nrtn zero 
+0x3d5e 013882 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x3d5f 013883 call ui_ipc_send_cmd 
+:      013884 mouse_le_write_enable:
+0x3d60 013885 arg write_req_enable_flag ,queue 
+0x3d61 013886 branch mouse_le_enable_connect_flag 
+:      013888 mouse_dpi_up:
+0x3d62 013889 fetch 1 ,mem_mouse_dpi_button_state 
+0x3d63 013890 rtneq dpi_button_state_up 
+0x3d64 013891 jam dpi_button_state_up ,mem_mouse_dpi_button_state 
+0x3d65 013892 rtn 
+:      013893 mouse_dpi_config:
+0x3d66 013894 fetch 1 ,mem_config_sensor_motion 
+0x3d67 013895 and pdata ,0x0f ,pdata 
+0x3d68 013896 store 1 ,mem_mouse_dpi 
+0x3d69 013897 branch mouse_seting_dpi + 2 
+:      013900 mouse_dpi_cheak:
+0x3d6a 013901 fetcht 1 ,mem_dpi_button_gpio 
+0x3d6b 013902 call gpio_get_bit 
+0x3d6c 013903 nbranch mouse_dpi_up ,true 
+:      013904 mouse_dpi_down:
+0x3d6d 013905 fetch 1 ,mem_mouse_dpi_button_state 
+0x3d6e 013906 rtneq dpi_button_state_down 
+0x3d6f 013907 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
+0x3d70 013908 fetch 1 ,mem_mouse_dpi 
+0x3d71 013909 increase 1 ,pdata 
+0x3d72 013910 and pdata ,0x03 ,pdata 
+0x3d73 013911 store 1 ,mem_mouse_dpi 
+0x3d74 013912 call mouse_seting_dpi 
+0x3d75 013913 fetch mouse_flag_len ,mem_mouse_flag 
+0x3d76 013914 bbit1 mouse_enable_eeprom ,mouse_store_eerpom_dpi 
+0x3d77 013915 bbit1 mouse_enable_flash ,mouse_before_store_flash_cpi 
+0x3d78 013916 rtn 
+:      013917 mouse_before_store_flash_cpi:
+0x3d79 013918 arg mouse_spi2_clk_gpio ,temp 
+0x3d7a 013919 call gpio_config_output 
+0x3d7b 013920 arg mouse_spi2_sdio_gpio ,temp 
+0x3d7c 013921 call gpio_config_output 
+0x3d7d 013922 branch mouse_store_flash_device_info 
+:      013924 mouse_seting_dpi:
+0x3d7e 013925 bpatch patch1c_3 ,mem_patch1c 
+0x3d7f 013926 call mosue_dpi_led_blink_init 
+0x3d80 013927 fetch 1 ,mem_config_sensor_type 
+0x3d81 013928 beq p3610 ,mouse_seting_3610_dpi 
+0x3d82 013929 beq p3212 ,mouse_seting_3212_dpi 
+0x3d83 013930 fetch 1 ,mem_mouse_dpi 
+0x3d84 013931 beq mouse_dpi_level1 ,mouse_set_cpi1 
+0x3d85 013932 beq mouse_dpi_level2 ,mouse_set_cpi2 
+0x3d86 013933 beq mouse_dpi_level3 ,mouse_set_cpi3 
+0x3d87 013934 beq mouse_dpi_level4 ,mouse_set_cpi4 
+:      013935 mouse_set_cpi2:
+0x3d88 013936 fetch 1 ,mem_320x_dpi_2 
+0x3d89 013937 branch mouse_p3205_dpi 
+:      013938 mouse_set_cpi1:
+0x3d8a 013939 fetch 1 ,mem_320x_dpi_1 
+0x3d8b 013940 branch mouse_p3205_dpi 
+:      013941 mouse_set_cpi3:
+0x3d8c 013942 fetch 1 ,mem_320x_dpi_3 
+0x3d8d 013943 branch mouse_p3205_dpi 
+:      013944 mouse_set_cpi4:
+0x3d8e 013945 fetch 1 ,mem_320x_dpi_4 
+0x3d8f 013946 branch mouse_p3205_dpi 
+:      013947 moue_seting_cpi_count:
+0x3d90 013948 fetch 1 ,mem_config_sensor_type 
+0x3d91 013949 rtneq p3065_xy 
+0x3d92 013950 fetch 1 ,mem_mouse_cpi_count 
+0x3d93 013951 increase 1 ,pdata 
+0x3d94 013952 store 1 ,mem_mouse_cpi_count 
+0x3d95 013953 rtn 
+:      013955 mouse_seting_3212_dpi:
+0x3d96 013956 fetch 1 ,mem_mouse_dpi 
+0x3d97 013957 beq mouse_dpi_level1 ,mouse_set_p3212_cpi1 
+0x3d98 013958 beq mouse_dpi_level2 ,mouse_set_p3212_cpi2 
+0x3d99 013959 beq mouse_dpi_level3 ,mouse_set_p3212_cpi3 
+0x3d9a 013960 beq mouse_dpi_level4 ,mouse_set_p3212_cpi4 
+:      013961 mouse_set_p3212_cpi2:
+0x3d9b 013962 fetch 1 ,mem_3212_dpi_2 
+0x3d9c 013963 branch mouse_p3212_dpi 
+:      013964 mouse_set_p3212_cpi1:
+0x3d9d 013965 fetch 1 ,mem_3212_dpi_1 
+0x3d9e 013966 branch mouse_p3212_dpi 
+:      013967 mouse_set_p3212_cpi3:
+0x3d9f 013968 fetch 1 ,mem_3212_dpi_3 
+0x3da0 013969 branch mouse_p3212_dpi 
+:      013970 mouse_set_p3212_cpi4:
+0x3da1 013971 fetch 1 ,mem_3212_dpi_4 
+:      013972 mouse_p3212_dpi:
+0x3da2 013973 store 1 ,mem_mouse_cpi_count 
+0x3da3 013974 lshift8 pdata ,pdata 
+0x3da4 013975 copy pdata ,rega 
+0x3da5 013976 add pdata ,mouse_p3212_dpi_xaddress ,pdata 
+0x3da6 013977 call twspi_write 
+0x3da7 013978 copy rega ,pdata 
+0x3da8 013979 add pdata ,mouse_p3212_dpi_yaddress ,pdata 
+0x3da9 013980 branch twspi_write 
+:      013982 mouse_seting_3610_dpi:
+0x3daa 013983 fetch 1 ,mem_mouse_dpi 
+0x3dab 013984 beq mouse_dpi_level1 ,mouse_set_p3610_cpi1 
+0x3dac 013985 beq mouse_dpi_level2 ,mouse_set_p3610_cpi2 
+0x3dad 013986 beq mouse_dpi_level3 ,mouse_set_p3610_cpi3 
+0x3dae 013987 beq mouse_dpi_level4 ,mouse_set_p3610_cpi4 
+:      013988 mouse_set_p3610_cpi2:
+0x3daf 013989 fetch 1 ,mem_3610_dpi_2 
+0x3db0 013990 branch mouse_p3610_dpi 
+:      013991 mouse_set_p3610_cpi1:
+0x3db1 013992 fetch 1 ,mem_3610_dpi_1 
+0x3db2 013993 branch mouse_p3610_dpi 
+:      013994 mouse_set_p3610_cpi3:
+0x3db3 013995 fetch 1 ,mem_3610_dpi_3 
+0x3db4 013996 branch mouse_p3610_dpi 
+:      013997 mouse_set_p3610_cpi4:
+0x3db5 013998 fetch 1 ,mem_3610_dpi_4 
+:      013999 mouse_p3610_dpi:
+0x3db6 014000 store 1 ,mem_mouse_cpi_count 
+0x3db7 014001 call mouse_spi_sdio_gpio_pollup 
+0x3db8 014002 fetch 1 ,mem_mouse_cpi_count 
+:      014003 mouse_reset_p3610_dpi:
+0x3db9 014004 add pdata ,0x80 ,pdata 
+0x3dba 014005 lshift8 pdata ,pdata 
+0x3dbb 014006 add pdata ,mouse_p3610_dpi_address ,pdata 
+0x3dbc 014007 copy pdata ,rega 
+0x3dbd 014008 branch mouse_set_sensor_reg 
+:      014010 mouse_p3205_dpi:
+0x3dbe 014011 store 1 ,mem_mouse_cpi_count 
+0x3dbf 014012 call moue_seting_cpi_count 
+0x3dc0 014013 fetch 1 ,mem_mouse_cpi_count 
+0x3dc1 014014 setarg mouse_dpi_address 
+0x3dc2 014015 call twspi_read 
+0x3dc3 014016 and pdata ,0xf8 ,temp 
+0x3dc4 014017 fetch 1 ,mem_mouse_cpi_count 
+0x3dc5 014018 iadd temp ,pdata 
+0x3dc6 014019 lshift8 pdata ,pdata 
+0x3dc7 014020 add pdata ,mouse_dpi_address ,pdata 
+0x3dc8 014021 branch twspi_write 
+:      014024 mouse_init_environment:
+0x3dc9 014025 call app_initflag_check 
+0x3dca 014026 branch mouse_eeprom_load_recon_info ,zero 
+0x3dcb 014027 call mouse_ble_init_address 
+0x3dcc 014028 call mouse_store_eeprom_device_info 
+0x3dcd 014029 branch app_initflag_store 
+:      014032 mouse_24g_pairing_button:
+0x3dce 014033 fetch 2 ,mem_24g_pairing_timer_count 
+0x3dcf 014034 rtn blank 
+0x3dd0 014035 fetch mouse_flag_len ,mem_mouse_flag 
+0x3dd1 014036 rtnbit0 mouse_enable_24g 
+0x3dd2 014037 rtnbit1 mosue_24g_pairing_flag 
+0x3dd3 014038 rtnmark1 mark_24g 
+0x3dd4 014039 call mouse_check_key_gpio 
+0x3dd5 014040 rtnne mouse_lmr_button 
+0x3dd6 014041 call mouse_devce_led_off 
+0x3dd7 014042 arg mosue_24g_pairing_flag ,queue 
+0x3dd8 014043 call mouse_enable_function_flag 
+0x3dd9 014044 setarg 0 
+0x3dda 014045 store 2 ,mem_mouse_direct_timer 
+0x3ddb 014046 store 1 ,mem_mouse_send_blank_timer 
+0x3ddc 014047 call g24_set0_mem_check_dongle_times 
+0x3ddd 014049 fetch 2 ,mem_ui_state_map 
+0x3dde 014050 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
+0x3ddf 014051 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x3de0 014052 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x3de1 014053 call mouse_stop_discovery 
+0x3de2 014054 branch g24_start_pairing_sm1 
+:      014057 mouse_idle:
+0x3de3 014058 call mouse_24g_pairing_button 
+0x3de4 014059 call ui_check_paring_button 
+0x3de5 014060 call mouse_dpi_cheak 
+0x3de6 014061 call mouse_usb_isr 
+0x3de7 014062 call mouse_wheel_check 
+0x3de8 014063 branch mouse_usb_mode 
+:      014064 mouse_usb_isr:
+0x3de9 014065 fetch mouse_flag_len ,mem_mouse_flag 
+0x3dea 014066 rtnbit0 mouse_enable_usb 
+0x3deb 014067 call usb_isr 
+0x3dec 014068 branch usb_offline_state 
+:      014070 mouse_cheak_usb:
+0x3ded 014071 hfetch 1 ,core_usb_addr 
+0x3dee 014072 bbit0 7 ,mouse_usb_no_exsit 
+0x3def 014073 bbit1 7 ,mouse_usb_exsit 
+0x3df0 014074 rtn 
+:      014075 mouse_usb_no_exsit:
+0x3df1 014076 fetch 1 ,mem_usb_addr 
+0x3df2 014077 rtnbit0 7 
+0x3df3 014078 branch soft_reset_chip 
+:      014079 mouse_usb_exsit:
+0x3df4 014080 fetch 1 ,mem_usb_addr 
+0x3df5 014081 rtnbit1 7 
+0x3df6 014082 branch mouse_stop_bluetooth_mode 
+:      014084 mouse_usb_mode:
+0x3df7 014085 call mouse_cheak_usb 
+0x3df8 014086 hfetch 1 ,core_usb_addr 
+0x3df9 014087 store 1 ,mem_usb_addr 
+0x3dfa 014088 rtnbit0 7 
+0x3dfb 014089 call mouse_clkn_check 
+0x3dfc 014090 fetch 4 ,mem_btclk_sensor 
+0x3dfd 014091 fetcht 1 ,mem_wire_usb_interval 
+0x3dfe 014092 iadd temp ,temp 
+0x3dff 014093 copy clkn_bt ,pdata 
+0x3e00 014094 isub temp ,null 
+0x3e01 014095 nrtn positive 
+0x3e02 014096 store 4 ,mem_btclk_sensor 
+0x3e03 014097 call mouse_motion 
+0x3e04 014098 nrtn user 
+0x3e05 014099 jam 4 ,mem_usb_tx_enable 
+0x3e06 014100 branch mouse_wired_to_usb 
+:      014102 mouse_clkn_check:
+0x3e07 014103 fetcht 4 ,mem_btclk_sensor 
+0x3e08 014104 copy clkn_bt ,pdata 
+0x3e09 014105 isub temp ,null 
+0x3e0a 014106 ncall mouse_clkn_timeout ,positive 
+0x3e0b 014107 rtn 
+:      014108 mouse_clkn_timeout:
+0x3e0c 014109 setarg 0 
+0x3e0d 014110 store 4 ,mem_btclk_sensor 
+0x3e0e 014111 rtn 
+:      014115 mouse_wired_to_usb:
+0x3e0f 014116 fetch 1 ,mem_usb_tx_enable 
+0x3e10 014117 rtnbit0 2 
+0x3e11 014118 branch mouse_data_push 
+:      014119 mouse_data_push:
+0x3e12 014120 hfetch 1 ,core_usb_addr 
+0x3e13 014121 rtnbit0 7 
+0x3e14 014122 jam usb_ep2_ms ,mem_usb_ep2_data 
+0x3e15 014123 setarg ms_report_id 
+0x3e16 014124 store 1 ,mem_usb_mouse_data 
+0x3e17 014125 fetch 7 ,mem_mouse_key 
+0x3e18 014126 istore 7 ,contw 
+0x3e19 014127 rtn 
+:      014130 mouse_enable_clock_qdecoder:
+0x3e1a 014131 hfetch 2 ,core_clkoff 
+0x3e1b 014132 set0 clock_off_qdecoder ,pdata 
+0x3e1c 014133 hstore 2 ,core_clkoff 
+0x3e1d 014134 rtn 
+:      014136 mouse_param_init:
+0x3e1e 014137 setarg 0x8c00 
+0x3e1f 014138 store 2 ,mem_ui_uuid_table 
+0x3e20 014139 setarg 0x8e7a 
+0x3e21 014140 store 2 ,mem_ui_le_uuid_table 
+0x3e22 014141 setarg 0x2402 
+0x3e23 014142 store 2 ,mem_fcomp_mul 
+0x3e24 014143 setarg 0x2580 
+0x3e25 014144 store 3 ,mem_class 
+0x3e26 014145 jam 3 ,mem_lpm_mult_timeout 
+0x3e27 014146 jam 8 ,mem_lpm_overhead 
+0x3e28 014147 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x3e29 014148 setarg 0x0200 
+0x3e2a 014149 store 2 ,mem_lpm_interval 
+0x3e2b 014150 jam 0x17 ,mem_le_local_mtu 
+0x3e2c 014151 jam 0x17 ,mem_le_remote_mtu 
+0x3e2d 014153 setarg 0x0a77 
+0x3e2e 014154 store 2 ,mem_spi_init_clk 
+0x3e2f 014170 setsect 0 ,0x306 
+0x3e30 014171 setsect 1 ,0x4440 
+0x3e31 014172 setsect 2 ,0x10000 
+0x3e32 014173 setsect 3 ,0x4408 
+0x3e33 014174 store 9 ,mem_all_uuid_16bits 
+0x3e34 014175 setsect 0 ,0x1224 
+0x3e35 014176 setsect 1 ,0x4000 
+0x3e36 014177 setsect 2 ,0x0 
+0x3e37 014178 istore 5 ,contw 
+0x3e38 014180 setsect 0 ,0x3ffff 
+0x3e39 014181 setsect 1 ,0x2fe23 
+0x3e3a 014182 setsect 2 ,0x199d9 
+0x3e3b 014183 setsect 3 ,0x20d 
+0x3e3c 014184 store 8 ,mem_features 
+0x3e3d 014186 setarg 0x012c 
+0x3e3e 014187 store 2 ,mem_24g_pairing_timer_count 
+0x3e3f 014188 call le_modified_name 
+0x3e40 014189 fetch mouse_flag_len ,mem_mouse_flag 
+0x3e41 014190 rtnbit0 mouse_enable_gpio_control_adc_sensor 
+0x3e42 014191 call mouse_sensor_set_angle 
+0x3e43 014192 branch mouse_select_adc 
+:      014194 mouse_sensor_set_angle:
+0x3e44 014195 fetcht 1 ,mem_select_sensor_angle_gpio 
+0x3e45 014196 call gpio_config_input 
+0x3e46 014197 fetcht 1 ,mem_select_sensor_angle_gpio 
+0x3e47 014198 call gpio_get_bit 
+0x3e48 014199 jam mouse_3clk_angle ,mem_config_sensor_angle 
+0x3e49 014200 rtn true 
+0x3e4a 014201 jam mouse_12clk_angle ,mem_config_sensor_angle 
+0x3e4b 014202 rtn 
+:      014204 mouse_select_adc:
+0x3e4c 014205 fetcht 1 ,mem_select_adc_gpio 
+0x3e4d 014206 call gpio_config_input 
+0x3e4e 014207 fetcht 1 ,mem_select_adc_gpio 
+0x3e4f 014208 call gpio_get_bit 
+0x3e50 014209 jam adc_config_vinlpm ,mem_adc_config_flag 
+0x3e51 014210 rtn true 
+0x3e52 014211 jam adc_config_gpio ,mem_adc_config_flag 
+0x3e53 014212 rtn 
+:      014215 mouse_adc_init:
+0x3e54 014216 fetch 1 ,mem_adc_config_flag 
+0x3e55 014217 beq adc_config_vinlpm ,mouse_adc_init_data_vinlpm 
+0x3e56 014218 beq adc_config_hvin ,mouse_adc_init_data_hvin 
+0x3e57 014219 beq adc_config_gpio ,mouse_adc_init_data_io 
+0x3e58 014220 branch mouse_adc_init_data_vinlpm 
+:      014222 mouse_adc_init_data_vinlpm:
+0x3e59 014223 fetcht 2 ,mem_2v_adc_vinlpm_data 
+0x3e5a 014224 fetch 2 ,mem_3v_adc_vinlpm_data 
+0x3e5b 014225 isub temp ,pdata 
+0x3e5c 014226 mul32 pdata ,20 ,pdata 
+0x3e5d 014227 div pdata ,100 
+0x3e5e 014228 call wait_div_end 
+0x3e5f 014229 quotient pdata 
+0x3e60 014230 store 2 ,mem_adc_reference_voltage 
+0x3e61 014231 rtn 
+:      014232 mouse_adc_init_data_hvin:
+0x3e62 014233 fetcht 2 ,mem_1v_adc_hvin_data 
+0x3e63 014234 fetch 2 ,mem_5v_adc_hvin_data 
+0x3e64 014235 isub temp ,pdata 
+0x3e65 014236 mul32 pdata ,230 ,pdata 
+0x3e66 014237 div pdata ,400 
+0x3e67 014238 call wait_div_end 
+0x3e68 014239 quotient pdata 
+0x3e69 014240 store 2 ,mem_adc_reference_voltage 
+0x3e6a 014241 rtn 
+:      014242 mouse_adc_init_data_io:
+0x3e6b 014243 fetch 2 ,mem_1v_adc_io_data 
+0x3e6c 014244 store 2 ,mem_adc_reference_voltage 
+0x3e6d 014245 rtn 
+:      014246 mouse_gpio_init:
+0x3e6e 014247 fetcht 1 ,mem_eeprom_wp_gpio 
+0x3e6f 014248 call gpio_config_output 
+0x3e70 014249 call usb_offline_check_init 
+0x3e71 014250 fetcht 1 ,mem_lbutton_gpio 
+0x3e72 014251 call gpio_config_input 
+0x3e73 014252 fetcht 1 ,mem_rbutton_gpio 
+0x3e74 014253 call gpio_config_input 
+0x3e75 014254 fetcht 1 ,mem_mbutton_gpio 
+0x3e76 014255 call gpio_config_input 
+0x3e77 014256 fetcht 1 ,mem_sensor_data_gpio 
+0x3e78 014257 call gpio_config_input 
+0x3e79 014259 fetcht 1 ,mem_sensor_reset_gpio 
+0x3e7a 014260 call gpio_config_output 
+0x3e7b 014262 fetcht 1 ,mem_whee_a_data_gpio 
+0x3e7c 014263 call gpio_config_input 
+0x3e7d 014265 fetcht 1 ,mem_whee_b_data_gpio 
+0x3e7e 014266 call gpio_config_input 
+0x3e7f 014268 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3e80 014269 call gpio_config_input 
+0x3e81 014270 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3e82 014271 call gpio_config_input 
+0x3e83 014273 fetcht 1 ,mem_bk_button_gpio 
+0x3e84 014274 call gpio_config_input 
+0x3e85 014275 fetcht 1 ,mem_fw_button_gpio 
+0x3e86 014276 call gpio_config_input 
+0x3e87 014278 fetcht 1 ,mem_config_low_voltage_alarm_gpio 
+0x3e88 014279 call gpio_config_output 
+0x3e89 014281 fetcht 1 ,mem_config_device1_led_gpio 
+0x3e8a 014282 call gpio_config_output 
+0x3e8b 014284 fetcht 1 ,mem_config_device2_led_gpio 
+0x3e8c 014285 call gpio_config_output 
+0x3e8d 014287 fetcht 1 ,mem_config_device3_led_gpio 
+0x3e8e 014288 call gpio_config_output 
+0x3e8f 014290 fetcht 1 ,mem_dpi_led_gpio 
+0x3e90 014291 call gpio_config_output 
+0x3e91 014293 fetcht 1 ,mem_config_select_device_button_gpio 
+0x3e92 014294 call gpio_config_input 
+0x3e93 014296 fetcht 1 ,mem_config_bt_button_gpio 
+0x3e94 014297 call gpio_config_input 
+0x3e95 014299 fetcht 1 ,mem_dpi_button_gpio 
+0x3e96 014300 branch gpio_config_input 
+:      014302 mouse_wheel_gpio_set_wake:
+0x3e97 014303 fetcht 1 ,mem_whee_a_data_gpio 
+0x3e98 014304 call gpio_set_wake_by_current_state 
+0x3e99 014305 fetcht 1 ,mem_whee_b_data_gpio 
+0x3e9a 014306 call gpio_set_wake_by_current_state 
+0x3e9b 014307 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3e9c 014308 call gpio_set_wake_by_current_state 
+0x3e9d 014309 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3e9e 014310 branch gpio_set_wake_by_current_state 
+:      014312 mouse_before_hibernate_wheel_gpio_set:
+0x3e9f 014313 fetcht 1 ,mem_whee_a_data_gpio 
+0x3ea0 014314 call mouse_gpio_set_pupd_by_input 
+0x3ea1 014315 fetcht 1 ,mem_whee_b_data_gpio 
+0x3ea2 014316 call mouse_gpio_set_pupd_by_input 
+0x3ea3 014317 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3ea4 014318 call mouse_gpio_set_pupd_by_input 
+0x3ea5 014319 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3ea6 014320 branch mouse_gpio_set_pupd_by_input 
+:      014322 mouse_gpio_set_pupd_by_input:
+0x3ea7 014323 sub temp ,ui_button_gpio_disable ,null 
+0x3ea8 014324 rtn zero 
+0x3ea9 014325 and temp ,0x7f ,queue 
+0x3eaa 014326 hfetch 4 ,core_gpio_in 
+0x3eab 014327 qisolate1 pdata 
+0x3eac 014328 hfetch 4 ,core_gpio_pu0 
+0x3ead 014329 qsetflag true ,pdata 
+0x3eae 014330 hstore 4 ,core_gpio_pu0 
+0x3eaf 014331 hfetch 4 ,core_gpio_pd0 
+0x3eb0 014332 nqsetflag true ,pdata 
+0x3eb1 014333 hstore 4 ,core_gpio_pd0 
+0x3eb2 014334 rtn 
+:      014336 mouse_before_hibernate:
+0x3eb3 014337 enable user 
+0x3eb4 014338 hfetch 4 ,0x8138 
+0x3eb5 014339 setflag user ,26 ,pdata 
+0x3eb6 014340 hstore 4 ,core_lpm_reg 
+0x3eb7 014341 call lpm_write_ctrl 
+0x3eb8 014342 call mouse_devce_led_off 
+0x3eb9 014343 call mouse_before_hibernate_wheel_gpio_set 
+0x3eba 014345 branch mouse_lpm_before_common 
+:      014349 mouse_process_lpm_before:
+0x3ebb 014350 call mouse_lpm_before_common 
+0x3ebc 014351 fetch 1 ,mem_lpm_current_mult 
+0x3ebd 014352 nrtn blank 
+0x3ebe 014353 branch gpio_clr_wake 
+:      014355 mouse_lpm_before_common:
+0x3ebf 014356 call mouse_wheel_check 
+0x3ec0 014357 arg mouse_spi1_clk_gpio ,temp 
+0x3ec1 014358 fetch mouse_flag_len ,mem_mouse_flag 
+0x3ec2 014359 isolate1 mouse_enable_spi2 ,pdata 
+0x3ec3 014360 call mouse_spi_clk_gpio ,true 
+0x3ec4 014361 call gpio_config_output 
+0x3ec5 014362 call twspi_disable 
+0x3ec6 014366 fetcht 1 ,mem_lbutton_gpio 
+0x3ec7 014367 call gpio_set_wake_by_current_state 
+0x3ec8 014368 fetcht 1 ,mem_rbutton_gpio 
+0x3ec9 014369 call gpio_set_wake_by_current_state 
+0x3eca 014370 fetcht 1 ,mem_mbutton_gpio 
+0x3ecb 014371 call gpio_set_wake_by_current_state 
+0x3ecc 014373 fetcht 1 ,mem_bk_button_gpio 
+0x3ecd 014374 call gpio_set_wake_by_current_state 
+0x3ece 014375 fetcht 1 ,mem_fw_button_gpio 
+0x3ecf 014376 call gpio_set_wake_by_current_state 
+0x3ed0 014377 fetcht 1 ,mem_dpi_button_gpio 
+0x3ed1 014378 call gpio_set_wake_by_current_state 
+0x3ed2 014379 fetcht 1 ,mem_config_select_device_button_gpio 
+0x3ed3 014380 call gpio_set_wake_by_current_state 
+0x3ed4 014381 fetcht 1 ,mem_whee_a_data_gpio 
+0x3ed5 014382 call gpio_set_wake_by_current_state 
+0x3ed6 014383 fetcht 1 ,mem_whee_b_data_gpio 
+0x3ed7 014384 call gpio_set_wake_by_current_state 
+0x3ed8 014385 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3ed9 014386 call gpio_set_wake_by_current_state 
+0x3eda 014387 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3edb 014388 call gpio_set_wake_by_current_state 
+0x3edc 014389 fetcht 1 ,mem_sensor_data_gpio 
+0x3edd 014390 branch gpio_set_wake 
+:      014394 mouse_spi_clk_gpio:
+0x3ede 014395 arg mouse_spi2_clk_gpio ,temp 
+0x3edf 014396 rtn 
+:      014398 mouse_wheel_check:
+0x3ee0 014399 bpatch patch1c_4 ,mem_patch1c 
+0x3ee1 014400 call mouse_t_wheel_scan 
+0x3ee2 014401 call mouse_wheel_scan 
+0x3ee3 014402 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3ee4 014403 fetcht 1 ,mem_wheel_tb_old_pinlevel 
+0x3ee5 014404 store 1 ,mem_wheel_tb_old_pinlevel 
+0x3ee6 014405 isub temp ,null 
+0x3ee7 014406 nbranch app_lpm_wake_auto_lock ,zero 
+0x3ee8 014407 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3ee9 014408 fetcht 1 ,mem_mwheel_b_old_pinlevel 
+0x3eea 014409 store 1 ,mem_mwheel_b_old_pinlevel 
+0x3eeb 014410 isub temp ,null 
+0x3eec 014411 nbranch app_lpm_wake_auto_lock ,zero 
+0x3eed 014412 rtn 
+:      014413 mouse_t_wheel_scan:
+0x3eee 014414 fetch 1 ,mem_whee_ta_data_gpio 
+0x3eef 014415 rtneq gpio_disable 
+0x3ef0 014416 arg 0 ,rega 
+0x3ef1 014417 fetcht 1 ,mem_whee_ta_data_gpio 
+0x3ef2 014418 call gpio_get_bit 
+0x3ef3 014419 setflag true ,0 ,rega 
+0x3ef4 014420 fetcht 1 ,mem_whee_tb_data_gpio 
+0x3ef5 014421 call gpio_get_bit 
+0x3ef6 014422 setflag true ,1 ,rega 
+0x3ef7 014423 copy rega ,pdata 
+0x3ef8 014424 store 1 ,mem_wheel_tb_new_pinlevel 
+0x3ef9 014425 beq 0x01 ,mouse_t_wheel_scan_judge1 
+0x3efa 014426 beq 0x02 ,mouse_t_wheel_scan_judge2 
+0x3efb 014427 fetch 1 ,mem_wheel_tog 
+0x3efc 014428 bbit1 7 ,mouse_t_wheel_scan_judge3 
+0x3efd 014429 rtn 
+:      014431 mouse_t_wheel_scan_judge1:
+0x3efe 014432 fetch 1 ,mem_wheel_tb_old_pinlevel 
+0x3eff 014433 beq 0 ,mouse_t_wheel_scan_judge11 
+0x3f00 014434 beq 3 ,mouse_t_wheel_scan_judge12 
+0x3f01 014435 rtn 
+:      014436 mouse_t_wheel_scan_judge2:
+0x3f02 014437 fetch 1 ,mem_wheel_tb_old_pinlevel 
+0x3f03 014438 beq 0 ,mouse_t_wheel_scan_judge21 
+0x3f04 014439 beq 3 ,mouse_t_wheel_scan_judge22 
+0x3f05 014440 rtn 
+:      014441 mouse_t_wheel_scan_judge11:
+0x3f06 014442 jam 0x82 ,mem_wheel_tog 
+0x3f07 014443 rtn 
+:      014444 mouse_t_wheel_scan_judge12:
+0x3f08 014445 jam 0x81 ,mem_wheel_tog 
+0x3f09 014446 rtn 
+:      014447 mouse_t_wheel_scan_judge21:
+0x3f0a 014448 jam 0x80 ,mem_wheel_tog 
+0x3f0b 014449 rtn 
+:      014450 mouse_t_wheel_scan_judge22:
+0x3f0c 014451 jam 0x83 ,mem_wheel_tog 
+0x3f0d 014452 rtn 
+:      014453 mouse_t_wheel_scan_judge3:
+0x3f0e 014454 fetch 1 ,mem_wheel_tog 
+0x3f0f 014455 set0 7 ,pdata 
+0x3f10 014456 store 1 ,mem_wheel_tog 
+0x3f11 014457 beq 0 ,mouse_t_wheel_scan_judge30 
+0x3f12 014458 beq 1 ,mouse_t_wheel_scan_judge31 
+0x3f13 014459 beq 2 ,mouse_t_wheel_scan_judge32 
+0x3f14 014460 beq 3 ,mouse_t_wheel_scan_judge33 
+0x3f15 014461 rtn 
+:      014462 mouse_t_wheel_scan_judge30:
+0x3f16 014463 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f17 014464 beq 3 ,mouse_wheel_t_forward 
+0x3f18 014465 rtn 
+:      014466 mouse_t_wheel_scan_judge31:
+0x3f19 014467 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f1a 014468 beq 0 ,mouse_wheel_t_forward 
+0x3f1b 014469 rtn 
+:      014470 mouse_t_wheel_scan_judge32:
+0x3f1c 014471 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f1d 014472 beq 3 ,mouse_wheel_t_back 
+0x3f1e 014473 rtn 
+:      014474 mouse_t_wheel_scan_judge33:
+0x3f1f 014475 fetch 1 ,mem_wheel_tb_new_pinlevel 
+0x3f20 014476 beq 0 ,mouse_wheel_t_back 
+0x3f21 014477 rtn 
+:      014478 mouse_wheel_t_forward:
+0x3f22 014479 fetch 1 ,mem_mouse_tz_data_count1 
+0x3f23 014480 increase 1 ,pdata 
+0x3f24 014481 store 1 ,mem_mouse_tz_data_count1 
+0x3f25 014482 sub pdata ,1 ,null 
+0x3f26 014483 rtn positive 
+0x3f27 014484 jam 0 ,mem_mouse_tz_data_count1 
+0x3f28 014485 fetch 1 ,mem_mouse_tz_data 
+0x3f29 014486 increase 1 ,pdata 
+0x3f2a 014487 store 1 ,mem_mouse_tz_data 
+0x3f2b 014488 rtn 
+:      014489 mouse_wheel_t_back:
+0x3f2c 014490 fetch 1 ,mem_mouse_tz_data_count 
+0x3f2d 014491 increase 1 ,pdata 
+0x3f2e 014492 store 1 ,mem_mouse_tz_data_count 
+0x3f2f 014493 sub pdata ,1 ,null 
+0x3f30 014494 rtn positive 
+0x3f31 014495 jam 0 ,mem_mouse_tz_data_count 
+0x3f32 014496 fetch 1 ,mem_mouse_tz_data 
+0x3f33 014497 increase -1 ,pdata 
+0x3f34 014498 store 1 ,mem_mouse_tz_data 
+0x3f35 014499 rtn 
+:      014502 mouse_wheel_scan:
+0x3f36 014503 fetch 1 ,mem_whee_a_data_gpio 
+0x3f37 014504 rtneq gpio_disable 
+0x3f38 014505 arg 0 ,rega 
+0x3f39 014506 fetcht 1 ,mem_whee_a_data_gpio 
+0x3f3a 014507 call gpio_get_bit 
+0x3f3b 014508 setflag true ,0 ,rega 
+0x3f3c 014509 fetcht 1 ,mem_whee_b_data_gpio 
+0x3f3d 014510 call gpio_get_bit 
+0x3f3e 014511 setflag true ,1 ,rega 
+0x3f3f 014512 copy rega ,pdata 
+0x3f40 014513 store 1 ,mem_mwheel_b_new_pinlevel 
+0x3f41 014514 beq 0x01 ,mouse_wheel_scan_judge1 
+0x3f42 014515 beq 0x02 ,mouse_wheel_scan_judge2 
+0x3f43 014516 fetch 1 ,mem_mwheel_tog 
+0x3f44 014517 bbit1 7 ,mouse_wheel_scan_judge3 
+0x3f45 014518 rtn 
+:      014520 mouse_wheel_scan_judge1:
+0x3f46 014521 fetch 1 ,mem_mwheel_b_old_pinlevel 
+0x3f47 014522 beq 0 ,mouse_wheel_scan_judge11 
+0x3f48 014523 beq 3 ,mouse_wheel_scan_judge12 
+0x3f49 014524 rtn 
+:      014525 mouse_wheel_scan_judge2:
+0x3f4a 014526 fetch 1 ,mem_mwheel_b_old_pinlevel 
+0x3f4b 014527 beq 0 ,mouse_wheel_scan_judge21 
+0x3f4c 014528 beq 3 ,mouse_wheel_scan_judge22 
+0x3f4d 014529 rtn 
+:      014530 mouse_wheel_scan_judge11:
+0x3f4e 014531 jam 0x82 ,mem_mwheel_tog 
+0x3f4f 014532 rtn 
+:      014533 mouse_wheel_scan_judge12:
+0x3f50 014534 jam 0x81 ,mem_mwheel_tog 
+0x3f51 014535 rtn 
+:      014536 mouse_wheel_scan_judge21:
+0x3f52 014537 jam 0x80 ,mem_mwheel_tog 
+0x3f53 014538 rtn 
+:      014539 mouse_wheel_scan_judge22:
+0x3f54 014540 jam 0x83 ,mem_mwheel_tog 
+0x3f55 014541 rtn 
+:      014542 mouse_wheel_scan_judge3:
+0x3f56 014543 fetch 1 ,mem_mwheel_tog 
+0x3f57 014544 set0 7 ,pdata 
+0x3f58 014545 store 1 ,mem_mwheel_tog 
+0x3f59 014546 beq 0 ,mouse_wheel_scan_judge30 
+0x3f5a 014547 beq 1 ,mouse_wheel_scan_judge31 
+0x3f5b 014548 beq 2 ,mouse_wheel_scan_judge32 
+0x3f5c 014549 beq 3 ,mouse_wheel_scan_judge33 
+0x3f5d 014550 rtn 
+:      014551 mouse_wheel_scan_judge30:
+0x3f5e 014552 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f5f 014553 beq 3 ,mouse_wheel_forward 
+0x3f60 014554 rtn 
+:      014555 mouse_wheel_scan_judge31:
+0x3f61 014556 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f62 014557 beq 0 ,mouse_wheel_forward 
+0x3f63 014558 rtn 
+:      014559 mouse_wheel_scan_judge32:
+0x3f64 014560 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f65 014561 beq 3 ,mouse_wheel_back 
+0x3f66 014562 rtn 
+:      014563 mouse_wheel_scan_judge33:
+0x3f67 014564 fetch 1 ,mem_mwheel_b_new_pinlevel 
+0x3f68 014565 beq 0 ,mouse_wheel_back 
+0x3f69 014566 rtn 
+:      014567 mouse_wheel_forward:
+0x3f6a 014568 jam 0 ,mem_mouse_z_data_count1 
+0x3f6b 014569 fetch 1 ,mem_mouse_z_data 
+0x3f6c 014570 increase 1 ,pdata 
+0x3f6d 014571 store 1 ,mem_mouse_z_data 
+0x3f6e 014572 rtn 
+:      014573 mouse_wheel_back:
+0x3f6f 014574 jam 0 ,mem_mouse_z_data_count 
+0x3f70 014575 fetch 1 ,mem_mouse_z_data 
+0x3f71 014576 increase -1 ,pdata 
+0x3f72 014577 store 1 ,mem_mouse_z_data 
+0x3f73 014578 rtn 
+:      014581 mouse_hid_connected:
+0x3f74 014582 setarg hid_handshake_timeout 
+0x3f75 014583 store 1 ,mem_hid_handshake_timer_count 
+0x3f76 014584 rtn 
+:      014586 mouse_send_process:
+0x3f77 014587 fetch 1 ,mem_app_handshake_flag 
+0x3f78 014588 rtn blank 
+0x3f79 014589 call l2cap_malloc_is_fifo_nearly_full 
+0x3f7a 014590 nrtn blank 
+0x3f7b 014591 fetch mouse_flag_len ,mem_mouse_flag 
+0x3f7c 014592 bbit1 mosue_24g_pairing_flag ,mouse_send_empty_data 
+0x3f7d 014593 bbit1 mouse_select_device_flag ,mouse_send_empty_data 
+0x3f7e 014594 bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
+0x3f7f 014595 call mouse_motion 
+0x3f80 014596 nrtn user 
+:      014597 mouse_send_data:
+0x3f81 014598 arg 9 ,rega 
+0x3f82 014599 call hid_malloc_tx_buff 
+0x3f83 014600 fetch 2 ,mem_hid_int_remote_cid 
+0x3f84 014601 istore 2 ,contw 
+0x3f85 014602 setarg 0x02a1 
+0x3f86 014603 istore 2 ,contw 
+0x3f87 014604 fetch 7 ,mem_mouse_key 
+0x3f88 014605 istore 7 ,contw 
+0x3f89 014606 rtn 
+:      014609 mouse_send_empty_data:
+0x3f8a 014610 setarg 0 
+0x3f8b 014611 store 7 ,mem_mouse_key 
+0x3f8c 014612 branch mouse_send_data 
+:      014615 mouse_no_data_timer_init:
+0x3f8d 014616 fetch 2 ,mem_mouse_no_data_timeout 
+0x3f8e 014617 store 2 ,mem_mouse_no_data_timer 
+0x3f8f 014618 rtn 
+:      014621 mouse_fill_data_le:
+0x3f90 014622 bpatch patch1c_5 ,mem_patch1c 
+0x3f91 014623 arg 7 ,rega 
+0x3f92 014624 fetcht 2 ,mem_le_notify_handle 
+0x3f93 014625 call le_att_malloc_tx_notify 
+0x3f94 014626 fetch 7 ,mem_mouse_key 
+0x3f95 014627 istore 7 ,contw 
+0x3f96 014628 rtn 
+:      014630 mouse_motion:
+0x3f97 014631 bpatch patch1c_6 ,mem_patch1c 
+0x3f98 014632 disable user 
+0x3f99 014633 setarg 0 
+0x3f9a 014634 store 6 ,mem_mouse_x 
+0x3f9b 014635 call mouse_cheak_sensor_data 
+0x3f9c 014636 call mouse_zwheel 
+0x3f9d 014637 call mouse_t_zwheel 
+0x3f9e 014638 call mouse_key 
+0x3f9f 014639 nrtn user 
+0x3fa0 014640 call mouse_no_data_timer_init 
+0x3fa1 014641 arg mouse_statue_up_flag ,queue 
+0x3fa2 014642 branch mouse_enable_function_flag 
+:      014644 motion_6clk_direction_dispose:
+0x3fa3 014645 fetch 2 ,mem_mouse_x 
+0x3fa4 014646 sub pdata ,0 ,pdata 
+0x3fa5 014647 store 2 ,mem_mouse_x 
+0x3fa6 014648 branch enable_user 
+:      014649 motion_12clk_direction_dispose:
+0x3fa7 014650 fetch 2 ,mem_mouse_y 
+0x3fa8 014651 sub pdata ,0 ,pdata 
+0x3fa9 014652 store 2 ,mem_mouse_y 
+0x3faa 014653 branch enable_user 
+:      014654 motion_9clk_direction_dispose:
+0x3fab 014655 fetch 2 ,mem_mouse_y 
+0x3fac 014656 sub pdata ,0 ,pdata 
+0x3fad 014657 store 2 ,mem_mouse_y 
+0x3fae 014658 fetch 2 ,mem_mouse_x 
+0x3faf 014659 sub pdata ,0 ,pdata 
+0x3fb0 014660 store 2 ,mem_mouse_x 
+0x3fb1 014661 call mouse_sensor_data_swap_places 
+0x3fb2 014662 branch enable_user 
+:      014663 motion_3clk_direction_dispose:
+0x3fb3 014664 call mouse_sensor_data_swap_places 
+0x3fb4 014665 branch enable_user 
+:      014666 mouse_cheak_sensor_data:
+0x3fb5 014667 fetch 1 ,mem_spi_write_flash_sm 
+0x3fb6 014668 rtnne flash_sm_no_buys 
+0x3fb7 014669 fetch 1 ,mem_config_sensor_type 
+0x3fb8 014670 beq p3205 ,mouse_p32xx_sensor_motion 
+0x3fb9 014671 beq p3065 ,mouse_p32xx_sensor_motion 
+0x3fba 014672 beq ka8 ,mouse_p32xx_sensor_motion 
+0x3fbb 014673 beq p3204 ,mouse_p32xx_sensor_motion 
+0x3fbc 014674 beq p3212 ,mouse_p3212_sensor_motion 
+0x3fbd 014675 beq p3610 ,mouse_p3610_sensor_motion 
+0x3fbe 014676 beq p3065_xy ,mouse_p32xx_sensor_motion 
+0x3fbf 014677 branch mouse_p32xx_sensor_motion 
+:      014679 mouse_clear_sensor_data:
+0x3fc0 014680 fetch 1 ,mem_mouse_move_flag 
+0x3fc1 014681 call mouse_read_sensor_common ,blank 
+0x3fc2 014682 jam 1 ,mem_mouse_move_flag 
+0x3fc3 014683 rtn 
+:      014686 mouse_p3212_sensor_motion:
+0x3fc4 014687 call mouse_clear_sensor_data 
+0x3fc5 014688 fetcht 1 ,mem_sensor_data_gpio 
+0x3fc6 014689 call gpio_get_bit 
+0x3fc7 014690 nrtn true 
+0x3fc8 014691 setarg pan_reg_pid_l 
+0x3fc9 014692 call twspi_read 
+0x3fca 014693 bne p32xx_id1 ,mouse_twspi_reset 
+0x3fcb 014694 setarg pan_reg_motion_staus 
+0x3fcc 014695 call twspi_read 
+0x3fcd 014696 rtnbit0 7 
+0x3fce 014697 call mouse_read_sensor_common 
+0x3fcf 014698 call mouse_read_3212sensor_xy_high 
+0x3fd0 014699 store 1 ,mem_mouse_xy_h 
+0x3fd1 014700 rshift4 pdata ,pdata 
+0x3fd2 014701 call extsign_bit3 
+0x3fd3 014702 store 1 ,mem_mouse_x + 1 
+0x3fd4 014703 fetch 1 ,mem_mouse_xy_h 
+0x3fd5 014704 and pdata ,0x0f ,pdata 
+0x3fd6 014705 call extsign_bit3 
+0x3fd7 014706 store 1 ,mem_mouse_y + 1 
+0x3fd8 014707 fetch 1 ,mem_config_sensor_angle 
+0x3fd9 014708 beq mouse_6clk_angle ,motion_6clk_direction_dispose 
+0x3fda 014709 beq mouse_9clk_angle ,motion_9clk_direction_dispose 
+0x3fdb 014710 beq mouse_12clk_angle ,motion_12clk_direction_dispose 
+0x3fdc 014711 beq mouse_3clk_angle ,motion_3clk_direction_dispose 
+0x3fdd 014712 rtn 
+:      014714 mouse_read_3212sensor_xy_high:
+0x3fde 014715 setarg 0x12 
+0x3fdf 014716 branch twspi_read 
+:      014718 mouse_p3065_judge:
+0x3fe0 014719 beq p3065_id1 ,mouse_p32xx_sensor_motion_1 
+0x3fe1 014720 branch mouse_twspi_reset 
+:      014722 mouse_p32xx_sensor_motion:
+0x3fe2 014723 call mouse_clear_sensor_data 
+0x3fe3 014724 disable user 
+0x3fe4 014725 fetcht 1 ,mem_sensor_data_gpio 
+0x3fe5 014726 call gpio_get_bit 
+0x3fe6 014727 nrtn true 
+:      014728 mouse_p32xx_sensor_motion_2:
+0x3fe7 014729 setarg pan_reg_pid_l 
+0x3fe8 014730 call twspi_read 
+0x3fe9 014731 bne p32xx_id1 ,mouse_p3065_judge 
+:      014732 mouse_p32xx_sensor_motion_1:
+0x3fea 014733 setarg pan_reg_motion_staus 
+0x3feb 014734 call twspi_read 
+0x3fec 014735 rtnbit0 7 
+0x3fed 014736 call mouse_read_sensor_common 
+0x3fee 014737 fetch 1 ,mem_mouse_x 
+0x3fef 014738 call extsign 
+0x3ff0 014739 store 2 ,mem_mouse_x 
+0x3ff1 014740 fetch 1 ,mem_mouse_y 
+0x3ff2 014741 call extsign 
+0x3ff3 014742 store 2 ,mem_mouse_y 
+0x3ff4 014743 fetch 1 ,mem_config_sensor_angle 
+0x3ff5 014744 beq mouse_6clk_angle ,motion32xx_6clk_direction_selection 
+0x3ff6 014745 beq mouse_9clk_angle ,motion32xx_9clk_direction_selection 
+0x3ff7 014746 beq mouse_12clk_angle ,motion32xx_12clk_direction_selection 
+0x3ff8 014747 beq mouse_3clk_angle ,motion32xx_3clk_direction_selection 
+0x3ff9 014748 rtn 
+:      014750 motion32xx_6clk_direction_selection:
+0x3ffa 014751 call motion_6clk_direction_dispose 
+0x3ffb 014752 branch mouse_sensor_sdio_low 
+:      014753 motion32xx_9clk_direction_selection:
+0x3ffc 014754 call motion_9clk_direction_dispose 
+0x3ffd 014755 branch mouse_sensor_sdio_low 
+:      014756 motion32xx_12clk_direction_selection:
+0x3ffe 014757 call motion_12clk_direction_dispose 
+0x3fff 014758 branch mouse_sensor_sdio_low 
+:      014759 motion32xx_3clk_direction_selection:
+0x4000 014760 call motion_3clk_direction_dispose 
+0x4001 014761 branch mouse_sensor_sdio_low 
+:      014763 mouse_sensor_data_swap_places:
+0x4002 014764 fetch 2 ,mem_mouse_y 
+0x4003 014765 fetcht 2 ,mem_mouse_x 
+0x4004 014766 store 2 ,mem_mouse_x 
+0x4005 014767 storet 2 ,mem_mouse_y 
+0x4006 014768 rtn 
+:      014770 mouse_p3610sensor_read:
+0x4007 014771 call spi_ncs_enable 
+0x4008 014772 nop 100 
+0x4009 014773 copy regb ,pdata 
+0x400a 014774 call twspi_read 
+0x400b 014775 copy pdata ,regb 
+0x400c 014776 call spi_ncs_disable 
+0x400d 014777 nop 100 
+0x400e 014778 copy regb ,pdata 
+0x400f 014779 rtn 
+:      014780 mouse_p3610_sensor_motion:
+0x4010 014781 disable user 
+0x4011 014782 fetcht 1 ,mem_sensor_data_gpio 
+0x4012 014783 call gpio_get_bit 
+0x4013 014784 nrtn true 
+0x4014 014785 arg pan_reg_motion_staus ,regb 
+0x4015 014786 call mouse_p3610sensor_read 
+0x4016 014787 rtnbit0 7 
+0x4017 014788 arg pan_reg_pid_l ,regb 
+0x4018 014789 call mouse_p3610sensor_read 
+0x4019 014790 store 1 ,mem_sensor_id1 
+0x401a 014791 bne p3610_id1 ,mouse_init_3610sensor_reset 
+0x401b 014792 fetch 1 ,mem_mouse_move_flag 
+0x401c 014793 call mouse_read_sensor3610_data ,blank 
+0x401d 014794 jam 1 ,mem_mouse_move_flag 
+0x401e 014795 call mouse_read_sensor3610_data 
+0x401f 014796 fetch 1 ,mem_mouse_xy_h 
+0x4020 014797 rshift4 pdata ,pdata 
+0x4021 014798 call extsign_bit3 
+0x4022 014799 store 1 ,mem_mouse_x + 1 
+0x4023 014800 fetch 1 ,mem_mouse_xy_h 
+0x4024 014801 and pdata ,0x0f ,pdata 
+0x4025 014802 call extsign_bit3 
+0x4026 014803 store 1 ,mem_mouse_y + 1 
+0x4027 014804 fetch 1 ,mem_config_sensor_angle 
+0x4028 014805 beq 0 ,motion3610_6clk_direction_selection 
+0x4029 014806 beq 1 ,motion3610_9clk_direction_selection 
+0x402a 014807 beq 2 ,motion3610_12clk_direction_selection 
+0x402b 014808 beq 3 ,motion3610_3clk_direction_selection 
+0x402c 014809 rtn 
+:      014811 mouse_3610_smart_select:
+0x402d 014812 fetch 1 ,mem_sensor_smart_flag 
+0x402e 014813 beq p3610_smart_enable ,mouse_3610_smart_disable 
+0x402f 014814 beq p3610_smart_disable ,mouse_3610_smart_enable 
+0x4030 014815 rtn 
+:      014818 motion3610_6clk_direction_selection:
+0x4031 014819 call motion_6clk_direction_dispose 
+0x4032 014820 branch mouse_3610_smart_select 
+:      014822 motion3610_12clk_direction_selection:
+0x4033 014823 call motion_12clk_direction_dispose 
+0x4034 014824 branch mouse_3610_smart_select 
+:      014826 motion3610_9clk_direction_selection:
+0x4035 014827 call motion_9clk_direction_dispose 
+0x4036 014828 branch mouse_3610_smart_select 
+:      014830 motion3610_3clk_direction_selection:
+0x4037 014831 call motion_3clk_direction_dispose 
+0x4038 014832 branch mouse_3610_smart_select 
+:      014834 mouse_read_sensor3610_data:
+0x4039 014835 call spi_ncs_enable 
+0x403a 014836 call mouse_read_sensor_common 
+0x403b 014837 arg 5 ,pdata 
+0x403c 014838 call twspi_read 
+0x403d 014839 store 1 ,mem_mouse_xy_h 
+0x403e 014840 arg 7 ,pdata 
+0x403f 014841 call twspi_read 
+0x4040 014842 store 1 ,mem_sensor_shutter_hi 
+0x4041 014843 arg 8 ,pdata 
+0x4042 014844 call twspi_read 
+0x4043 014845 store 1 ,mem_sensor_shutter_lo 
+0x4044 014846 branch spi_ncs_disable 
+:      014849 mouse_3610_smart_enable:
+0x4045 014850 fetch 1 ,mem_sensor_shutter_hi 
+0x4046 014851 rtnne 0 
+0x4047 014852 fetch 1 ,mem_sensor_shutter_lo 
+0x4048 014853 sub pdata ,45 ,null 
+0x4049 014854 rtn positive 
+0x404a 014855 jam p3610_smart_enable ,mem_sensor_smart_flag 
+0x404b 014856 setarg 0xba41 
+0x404c 014857 call sensor_write 
+0x404d 014858 setarg 0x0032 
+0x404e 014859 call sensor_write 
+0x404f 014860 setarg 0xb541 
+0x4050 014861 branch sensor_write 
+:      014862 mouse_3610_smart_disable:
+0x4051 014863 fetch 1 ,mem_sensor_shutter_hi 
+0x4052 014864 rtnne 0 
+0x4053 014865 fetch 1 ,mem_sensor_shutter_lo 
+0x4054 014866 sub pdata ,45 ,null 
+0x4055 014867 nrtn positive 
+0x4056 014868 jam p3610_smart_disable ,mem_sensor_smart_flag 
+0x4057 014869 setarg 0xba41 
+0x4058 014870 call sensor_write 
+0x4059 014871 setarg 0x8032 
+0x405a 014872 call sensor_write 
+0x405b 014873 setarg 0xb541 
+0x405c 014874 branch sensor_write 
+:      014878 mouse_read_sensor_common:
+0x405d 014879 arg pan_reg_delta_x ,pdata 
+0x405e 014880 call twspi_read 
+0x405f 014881 store 2 ,mem_mouse_x 
+0x4060 014882 arg pan_reg_delta_y ,pdata 
+0x4061 014883 call twspi_read 
+0x4062 014884 store 2 ,mem_mouse_y 
+0x4063 014885 rtn 
+:      014887 mouse_set_qdecoder_x:
+0x4064 014888 arg mouse_default_xa_gpio ,temp 
+0x4065 014889 call gpio_config_input 
+0x4066 014890 arg mouse_default_xa_gpio ,temp 
+0x4067 014891 call gpio_get_bit 
+0x4068 014892 rtn true 
+0x4069 014893 hfetch 1 ,core_qdec_cntx 
+0x406a 014894 set1 4 ,pdata 
+0x406b 014895 hstore 1 ,core_qdec_cntx 
+0x406c 014896 rtn 
+:      014898 mouse_hardware_zwheel:
+0x406d 014899 fetcht 1 ,mem_mouse_z_data 
+0x406e 014900 hfetch 1 ,core_qdec_cntx 
+0x406f 014901 iadd temp ,pdata 
+0x4070 014902 rtn blank 
+0x4071 014903 store 1 ,mem_mouse_z 
+0x4072 014904 jam 0 ,mem_mouse_z_data 
+0x4073 014905 branch enable_user 
+:      014906 mouse_hardware_zwheel_beforelpm:
+0x4074 014907 fetcht 1 ,mem_mouse_z_data 
+0x4075 014908 hfetch 1 ,core_qdec_cntx 
+0x4076 014909 iadd temp ,pdata 
+0x4077 014910 store 1 ,mem_mouse_z_data 
+0x4078 014911 rtn 
+:      014912 mouse_zwheel:
+0x4079 014913 fetch 1 ,mem_mouse_z_data 
+0x407a 014914 rtn blank 
+0x407b 014915 store 1 ,mem_mouse_z 
+0x407c 014916 jam 0 ,mem_mouse_z_data 
+0x407d 014917 branch enable_user 
+:      014919 mouse_t_zwheel:
+0x407e 014920 fetch 1 ,mem_mouse_tz_data 
+0x407f 014921 rtn blank 
+0x4080 014922 store 1 ,mem_mouse_tz 
+0x4081 014923 jam 0 ,mem_mouse_tz_data 
+0x4082 014924 branch enable_user 
+:      014926 mouse_check_key_gpio:
+0x4083 014927 arg 0 ,rega 
+0x4084 014928 fetcht 1 ,mem_lbutton_gpio 
+0x4085 014929 call gpio_get_bit 
+0x4086 014930 setflag true ,0 ,rega 
+0x4087 014931 fetcht 1 ,mem_rbutton_gpio 
+0x4088 014932 call gpio_get_bit 
+0x4089 014933 setflag true ,1 ,rega 
+0x408a 014934 fetcht 1 ,mem_mbutton_gpio 
+0x408b 014935 call gpio_get_bit 
+0x408c 014936 setflag true ,2 ,rega 
+0x408d 014937 call mouse_check_s_key_gpio 
+:      014938 mouse_check_key_gpio_output:
+0x408e 014939 copy rega ,pdata 
+0x408f 014940 rtn 
+:      014941 mouse_check_s_key_gpio:
+0x4090 014942 fetch 1 ,mem_bk_button_gpio 
+0x4091 014943 rtneq gpio_disable 
+0x4092 014944 fetcht 1 ,mem_bk_button_gpio 
+0x4093 014945 call gpio_get_bit 
+0x4094 014946 setflag true ,3 ,rega 
+0x4095 014947 fetcht 1 ,mem_fw_button_gpio 
+0x4096 014948 call gpio_get_bit 
+0x4097 014949 setflag true ,4 ,rega 
+0x4098 014950 rtn 
+:      014952 mouse_key:
+0x4099 014953 call mouse_check_key_gpio 
+0x409a 014954 call mouse_set_mult 
+0x409b 014955 call mouse_24g_key 
+0x409c 014956 copy rega ,pdata 
+0x409d 014957 fetcht 1 ,mem_mouse_key 
+0x409e 014958 store 1 ,mem_mouse_key 
+0x409f 014959 ixor temp ,pdata 
+0x40a0 014960 sub pdata ,0 ,null 
+0x40a1 014961 rtn zero 
+0x40a2 014962 branch enable_user 
+:      014964 mouse_24g_key:
+0x40a3 014965 rtnmark0 mark_24g 
+0x40a4 014966 copy rega ,pdata 
+0x40a5 014967 rtn blank 
+0x40a6 014968 store 1 ,mem_mouse_key 
+0x40a7 014969 branch enable_user 
+:      014972 mouse_set_mult:
+0x40a8 014973 fetch 2 ,mem_ui_state_map 
+0x40a9 014974 bbit1 ui_state_ble_connected ,mouse_set_ble_mult 
+0x40aa 014975 fetch 2 ,mem_ui_state_map 
+0x40ab 014976 bbit1 ui_state_bt_connected ,mouse_set_bt_mult 
+0x40ac 014977 rtn 
+:      014978 mouse_set_ble_mult:
+0x40ad 014979 copy rega ,pdata 
+0x40ae 014980 nbranch le_set_config_short_mult ,blank 
+0x40af 014981 branch le_clr_config_short_mult 
+:      014982 mouse_set_bt_mult:
+0x40b0 014983 copy rega ,pdata 
+0x40b1 014984 nbranch classic_bt_set_mult_short_flag ,blank 
+0x40b2 014985 branch classic_bt_clr_mult_short_flag 
+:      014988 mouse_sensor_sdio_low:
+0x40b3 014989 bpatch patch1c_7 ,mem_patch1c 
+0x40b4 014990 arg mouse_spi1_sdio_gpio ,temp 
+0x40b5 014991 fetch mouse_flag_len ,mem_mouse_flag 
+0x40b6 014992 isolate1 mouse_enable_spi2 ,pdata 
+0x40b7 014993 call mouse_sensor_sdio_low2 ,true 
+0x40b8 014994 call gpio_get_bit 
+0x40b9 014995 rtn true 
+0x40ba 014996 setarg 0x0a 
+0x40bb 014997 call twspi_read 
+0x40bc 014998 nop 1000 
+0x40bd 014999 branch mouse_sensor_sdio_low 
+:      015000 mouse_sensor_sdio_low2:
+0x40be 015001 arg mouse_spi2_sdio_gpio ,temp 
+0x40bf 015002 rtn 
+:      015004 mouse_spi_sdio_gpio_pollup:
+0x40c0 015005 fetch mouse_flag_len ,mem_mouse_flag 
+0x40c1 015006 bbit1 mouse_enable_spi2 ,mouse_spi2_sdio_gpio_pollup 
+:      015007 mouse_spi1_sdio_gpio_pollup:
+0x40c2 015008 arg mouse_spi1_sdio_gpio ,temp 
+0x40c3 015009 branch gpio_config_input_without_wake 
+:      015010 mouse_spi2_sdio_gpio_pollup:
+0x40c4 015011 arg mouse_spi2_sdio_gpio ,temp 
+0x40c5 015012 branch gpio_config_input_without_wake 
+:      015015 mouse_init_sunt:
+0x40c6 015016 call mouse_spi_init 
+0x40c7 015017 rtn wake 
+0x40c8 015018 call mouse_spi_sdio_gpio_pollup 
+0x40c9 015019 fetch 1 ,mem_config_sensor_type 
+0x40ca 015020 beq p3610 ,mouse_init_3610sensor 
+:      015021 mouse_init_sensor:
+0x40cb 015022 call mouse_read_sensor_id 
+0x40cc 015023 beq p32xx_id1 ,mouse_init_p32xx_id2_judge 
+0x40cd 015024 beq p3065_id1 ,mouse_p3065_init_param 
+0x40ce 015025 call mouse_twspi_reset 
+0x40cf 015026 nop 1000 
+0x40d0 015027 branch mouse_init_sensor 
+:      015028 mouse_twspi_reset:
+0x40d1 015029 bpatch patch1d_0 ,mem_patch1d 
+0x40d2 015030 fetch mouse_flag_len ,mem_mouse_flag 
+0x40d3 015031 bbit1 mouse_enable_spi2 ,twspi_reset2 
+0x40d4 015032 branch twspi_reset 
+:      015034 mouse_init_3610sensor:
+0x40d5 015035 call mouse_read_sensor_id 
+0x40d6 015036 beq p3610_id1 ,mouse_init_p3610 
+0x40d7 015037 call mouse_init_3610sensor_reset 
+0x40d8 015038 branch mouse_init_3610sensor 
+:      015040 mouse_read_sensor_id:
+0x40d9 015041 setarg pan_reg_pid_h 
+0x40da 015042 call twspi_read 
+0x40db 015043 store 1 ,mem_sensor_id2 
+0x40dc 015044 setarg pan_reg_pid_l 
+0x40dd 015045 call twspi_read 
+0x40de 015046 store 1 ,mem_sensor_id1 
+0x40df 015047 rtn 
+:      015048 mouse_init_p32xx_id2_judge:
+0x40e0 015049 fetch 1 ,mem_sensor_id2 
+0x40e1 015050 beq p3205_tj3t_id2 ,mouse_3205_3t_init_param 
+0x40e2 015051 beq p3204_tj3l_id2 ,mouse_3204_3l_init_param 
+0x40e3 015052 beq p3212_id2 ,mouse_3212_init_param 
+0x40e4 015053 beq pka8_id2 ,mouse_ka8_init_param 
+0x40e5 015054 rtn 
+:      015055 mouse_ka8_init_param:
+0x40e6 015056 jam ka8 ,mem_config_sensor_type 
+0x40e7 015057 rtn 
+:      015058 mouse_p3065xy_init_param:
+0x40e8 015059 jam p3065_xy ,mem_config_sensor_type 
+0x40e9 015060 rtn 
+:      015061 mouse_p3065_init_param:
+0x40ea 015062 fetch 1 ,mem_sensor_id2 
+0x40eb 015063 beq p3065_xy_id2 ,mouse_p3065xy_init_param 
+0x40ec 015064 jam p3065 ,mem_config_sensor_type 
+0x40ed 015065 rtn 
+:      015066 mouse_3212_init_param:
+0x40ee 015067 jam p3212 ,mem_config_sensor_type 
+0x40ef 015068 call mouse_sensor_disable_wp 
+0x40f0 015069 setarg 0x3426 
+0x40f1 015070 call twspi_write 
+0x40f2 015071 setarg 0x0419 
+0x40f3 015072 call twspi_write 
+:      015073 mouse_sensor_enable_wp:
+0x40f4 015074 setarg 0x0009 
+0x40f5 015075 branch twspi_write 
+:      015076 mouse_sensor_disable_wp:
+0x40f6 015077 setarg 0x5a09 
+0x40f7 015078 branch twspi_write 
+:      015080 mouse_3204_3l_init_param:
+0x40f8 015081 jam p3204 ,mem_config_sensor_type 
+0x40f9 015082 call mouse_sensor_disable_wp 
+0x40fa 015083 setarg 0x0f0d 
+0x40fb 015084 call twspi_write 
+0x40fc 015085 setarg 0xe31d 
+0x40fd 015086 call twspi_write 
+0x40fe 015087 setarg 0xd27d 
+0x40ff 015088 call twspi_write 
+0x4100 015089 call mouse_32xx_init_param 
+0x4101 015090 branch mouse_32xx_init_param_1 
+:      015092 mouse_32xx_init_param:
+0x4102 015093 setarg 0x351b 
+0x4103 015094 call twspi_write 
+0x4104 015095 setarg 0xb428 
+0x4105 015096 call twspi_write 
+0x4106 015097 setarg 0x4629 
+0x4107 015098 call twspi_write 
+0x4108 015099 setarg 0x962a 
+0x4109 015100 call twspi_write 
+0x410a 015101 setarg 0x8c2b 
+0x410b 015102 call twspi_write 
+0x410c 015103 setarg 0x6e2c 
+0x410d 015104 call twspi_write 
+0x410e 015105 setarg 0x642d 
+0x410f 015106 call twspi_write 
+0x4110 015107 setarg 0x5f38 
+0x4111 015108 call twspi_write 
+0x4112 015109 setarg 0x0f39 
+0x4113 015110 call twspi_write 
+0x4114 015111 setarg 0x323a 
+0x4115 015112 call twspi_write 
+0x4116 015113 setarg 0x473b 
+0x4117 015114 call twspi_write 
+0x4118 015115 setarg 0x1042 
+0x4119 015116 branch twspi_write 
+:      015117 mouse_32xx_init_param_1:
+0x411a 015118 setarg 0x2e54 
+0x411b 015119 call twspi_write 
+0x411c 015120 setarg 0xf255 
+0x411d 015121 call twspi_write 
+0x411e 015122 setarg 0xf461 
+0x411f 015123 call twspi_write 
+0x4120 015124 setarg 0x7063 
+0x4121 015125 call twspi_write 
+0x4122 015126 setarg 0x5275 
+0x4123 015127 call twspi_write 
+0x4124 015128 setarg 0x4176 
+0x4125 015129 call twspi_write 
+0x4126 015130 setarg 0xed77 
+0x4127 015131 call twspi_write 
+0x4128 015132 setarg 0x2378 
+0x4129 015133 call twspi_write 
+0x412a 015134 setarg 0x4679 
+0x412b 015135 call twspi_write 
+0x412c 015136 setarg 0xe57a 
+0x412d 015137 call twspi_write 
+0x412e 015138 setarg 0x487c 
+0x412f 015139 call twspi_write 
+0x4130 015140 setarg 0x777e 
+0x4131 015141 call twspi_write 
+0x4132 015142 setarg 0x017f 
+0x4133 015143 call twspi_write 
+0x4134 015144 setarg 0x000b 
+0x4135 015145 call twspi_write 
+0x4136 015146 setarg 0x007f 
+0x4137 015147 call twspi_write 
+0x4138 015148 branch mouse_sensor_enable_wp 
+:      015151 mouse_3205_3t_init_param:
+0x4139 015152 jam p3205 ,mem_config_sensor_type 
+0x413a 015153 call mouse_sensor_disable_wp 
+0x413b 015154 setarg 0x100d 
+0x413c 015155 call twspi_write 
+0x413d 015156 setarg 0xed1d 
+0x413e 015157 call twspi_write 
+0x413f 015158 setarg 0x807d 
+0x4140 015159 call twspi_write 
+0x4141 015160 call mouse_32xx_init_param 
+0x4142 015161 setarg 0x0943 
+0x4143 015162 call twspi_write 
+0x4144 015163 branch mouse_32xx_init_param_1 
+:      015166 mouse_init_3610sensor_reset:
+0x4145 015167 fetcht 1 ,mem_sensor_reset_gpio 
+0x4146 015168 call gpio_out_active 
+0x4147 015169 call delay_10ms 
+0x4148 015170 fetcht 1 ,mem_sensor_reset_gpio 
+0x4149 015171 call gpio_out_inactive 
+0x414a 015172 branch delay_10ms 
+:      015174 mouse_init_p3610:
+0x414b 015175 jam p3610 ,mem_config_sensor_type 
+0x414c 015176 setarg 0xba41 
+0x414d 015177 call sensor_write 
+0x414e 015178 setarg 0x0d11 
+0x414f 015179 call sensor_write 
+0x4150 015180 setarg 0x041b 
+0x4151 015181 call sensor_write 
+0x4152 015182 setarg 0x041c 
+0x4153 015183 call sensor_write 
+0x4154 015184 setarg 0x0f1d 
+0x4155 015185 call sensor_write 
+0x4156 015186 setarg 0x0032 
+0x4157 015187 call sensor_write 
+0x4158 015188 setarg 0xb541 
+0x4159 015189 branch sensor_write 
+:      015193 mouse_set_sensor_reg:
+0x415a 015194 setarg 0xba41 
+0x415b 015195 call sensor_write 
+0x415c 015196 nop 4000 
+0x415d 015197 setarg 0xff7f 
+0x415e 015198 call sensor_write 
+0x415f 015199 copy rega ,pdata 
+0x4160 015200 call sensor_write 
+0x4161 015201 setarg 0x007f 
+0x4162 015202 call sensor_write 
+0x4163 015203 setarg 0xb541 
+0x4164 015204 branch sensor_write 
+:      015206 extsign:
+0x4165 015207 rtnbit0 7 
+0x4166 015208 arg 0xff00 ,temp 
+0x4167 015209 ior temp ,pdata 
+0x4168 015210 rtn 
+:      015212 extsign_bit3:
+0x4169 015213 rtnbit0 3 
+0x416a 015214 arg 0xf0 ,temp 
+0x416b 015215 ior temp ,pdata 
+0x416c 015216 rtn 
+:      015219 mouse_le:
+0x416d 015220 call le_fifo_check_nearly_full 
+0x416e 015221 nrtn blank 
+0x416f 015222 fetch 1 ,mem_le_connect_status_flag 
+0x4170 015223 and pdata ,0x03 ,pdata 
+0x4171 015224 rtnne 0x03 
+0x4172 015225 fetch mouse_flag_len ,mem_mouse_flag 
+0x4173 015226 bbit1 mosue_24g_pairing_flag ,mouse_le_send_empty_packet 
+0x4174 015227 bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
+0x4175 015228 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+0x4176 015229 call mouse_motion 
+0x4177 015230 nrtn user 
+0x4178 015231 branch mouse_fill_data_le 
+:      015233 mouse_le_send_empty_packet:
+0x4179 015234 setarg 0 
+0x417a 015235 store 7 ,mem_mouse_key 
+0x417b 015236 branch mouse_fill_data_le 
+:      015238 mouse_priority_bb_event:
+0x417c 015239 copy regc ,pdata 
+0x417d 015240 beq bt_evt_le_connected ,mouse_le_bb_event_connected 
+0x417e 015241 beq bt_evt_bb_connected ,mouse_stop_discovery 
+0x417f 015242 beq bt_evt_le_disconnected ,mouse_bb_disconnected 
+0x4180 015243 beq bt_evt_bb_disconnected ,mouse_bb_disconnected 
+0x4181 015244 beq bt_evt_setup_complete ,mouse_bt_event_setup_complete 
+0x4182 015245 beq bt_evt_button_long_pressed ,mouse_bb_event_discovery_btn 
+0x4183 015246 beq bt_evt_hid_handshake ,mouse_bt_hid_handshake 
+0x4184 015247 beq bt_evt_hid_connected ,mouse_bt_hid_connected 
+0x4185 015248 beq bt_evt_reconn_failed ,mouse_bb_event_reconn_failed 
+0x4186 015249 beq bt_evt_reconn_page_timeout ,mouse_bb_event_reconn_timeout 
+0x4187 015250 beq bt_evt_pincode_req ,mouse_bb_event_pincode 
+0x4188 015251 beq bt_evt_remote_unsniff ,app_start_auto_sniff 
+0x4189 015252 beq bt_evt_le_pairing_success ,mouse_le_pairing_success 
+0x418a 015253 beq bt_evt_le_start_enc ,mouse_le_ll_start_encryt 
+0x418b 015254 beq bt_evt_le_pairing_complete ,mouse_le_pairing_complete 
+0x418c 015255 beq bt_evt_virtual_cable_unplug ,mouse_irtual_cable_unplug 
+0x418d 015256 beq bt_evt_24g_pairing_complete ,mouse_24g_pairing_complete 
+0x418e 015257 beq bt_evt_24g_attempt_fail ,mouse_24g_attempt_fail 
+0x418f 015258 beq bt_evt_24g_attempt_success ,mouse_24g_attempt_success 
+0x4190 015259 rtn 
+:      015262 mouse_le_pairing_complete:
+0x4191 015263 branch app_ble_store_reconn_info 
+:      015265 mouse_24g_attempt_fail:
+0x4192 015266 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+0x4193 015267 fetch 1 ,mem_reconn_times 
+0x4194 015268 nbranch mouse_polling_device ,blank 
+0x4195 015269 fetch 1 ,mem_device_flag 
+0x4196 015270 fetcht 1 ,mem_24g_device_number 
+0x4197 015271 isub temp ,null 
+0x4198 015272 branch app_enter_hibernate ,zero 
+0x4199 015273 rtn 
+:      015274 mouse_24g_attempt_success:
+0x419a 015275 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+0x419b 015276 rtn 
+:      015277 mouse_24g_pairing_complete:
+0x419c 015278 jam 1 ,mem_mouse_24g_enter_lpm_enable 
+0x419d 015279 arg mosue_24g_pairing_flag ,queue 
+0x419e 015280 call mouse_disable_function_flag 
+0x419f 015281 setarg 0 
+0x41a0 015282 store 2 ,mem_24g_pairing_timer_count 
+0x41a1 015283 jam 0 ,mem_mouse_move_flag 
+0x41a2 015285 fetch 1 ,mem_config_sensor_type 
+0x41a3 015286 sub pdata ,p3610 ,null 
+0x41a4 015287 call mouse_read_sensor3610_data ,zero 
+0x41a5 015288 ncall mouse_read_sensor_common ,zero 
+0x41a6 015290 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+0x41a7 015291 bbit1 mouse_enable_flash ,mouse_store_flash_24g_address 
+0x41a8 015292 call mouse_set_24g_addr_eeprom 
+0x41a9 015293 branch iicd_write_protect_eep_data 
+:      015295 mouse_set_24g_addr_eeprom:
+0x41aa 015296 call g24_head_ptr2regc 
+0x41ab 015297 add regc ,offset_24g_addr ,rega 
+0x41ac 015298 arg mouse_g24_addr_eeprom_offect ,regb 
+0x41ad 015299 arg 4 ,temp 
+0x41ae 015300 rtn 
+:      015302 mouse_store_flash_24g_address:
+0x41af 015303 call g24_head_ptr2regc 
+0x41b0 015304 add regc ,offset_24g_addr ,regb 
+0x41b1 015305 ifetch 1 ,regb 
+0x41b2 015306 store 1 ,mem_mouse_24g_addr 
+0x41b3 015307 branch mouse_store_flash_device_info 
+:      015310 mouse_le_pairing_success:
+0x41b4 015311 arg ll_pairing_success_flag ,queue 
+0x41b5 015312 branch mouse_le_enable_connect_flag 
+:      015313 mouse_le_ll_start_encryt:
+0x41b6 015314 jam 2 ,mem_le_start_encrypt_timer 
+0x41b7 015315 arg ll_start_enc_flag ,queue 
+0x41b8 015316 branch mouse_le_enable_connect_flag 
+:      015319 mouse_le_enable_connect_flag:
+0x41b9 015320 fetch 1 ,mem_le_connect_status_flag 
+0x41ba 015321 qset1 pdata 
+0x41bb 015322 store 1 ,mem_le_connect_status_flag 
+0x41bc 015323 rtn 
+:      015325 mouse_le_disable_connect_flag:
+0x41bd 015326 fetch 1 ,mem_le_connect_status_flag 
+0x41be 015327 qset0 pdata 
+0x41bf 015328 store 1 ,mem_le_connect_status_flag 
+0x41c0 015329 rtn 
+:      015330 mouse_le_clean_connect_flag:
+0x41c1 015331 jam 0 ,mem_le_connect_status_flag 
+0x41c2 015332 rtn 
+:      015334 mouse_le_bb_event_connected:
+0x41c3 015335 fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x41c4 015336 set0 app_disc_by_button ,pdata 
+0x41c5 015337 store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0x41c6 015338 setarg 0 
+0x41c7 015339 store 2 ,mem_mouse_direct_timer 
+0x41c8 015340 call mouse_no_data_timer_init 
+0x41c9 015341 branch mouse_stop_discovery 
+:      015343 mouse_bb_event_pincode:
+0x41ca 015344 call pincode_reinit 
+0x41cb 015345 branch app_bt_set_pincode 
+:      015346 mouse_bb_event_reconn_timeout:
+:      015347 mouse_bb_event_reconn_failed:
+0x41cc 015348 fetch 1 ,mem_reconn_times 
+0x41cd 015349 nbranch mouse_polling_device ,blank 
+0x41ce 015350 fetch 2 ,mem_ui_state_map 
+0x41cf 015351 bbit1 ui_state_btn_down ,mouse_start_discovery 
+0x41d0 015352 fetch mouse_flag_len ,mem_mouse_flag 
+0x41d1 015353 bbit1 mouse_select_device_flag ,mouse_soft_reset 
+0x41d2 015354 bbit1 mouse_bt_discovery_button_down_flag ,mouse_start_discovery 
+0x41d3 015355 bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
+0x41d4 015356 branch app_bb_hibernate 
+:      015359 mouse_bt_hid_connected:
+0x41d5 015360 branch mouse_hid_connected 
+:      015362 mouse_bt_event_setup_complete:
+0x41d6 015363 rtn 
+:      015365 mouse_soft_reset:
+0x41d7 015366 call mouse_select_device_enable 
+0x41d8 015367 branch soft_reset_chip 
+:      015369 mouse_bb_disconnected:
+0x41d9 015370 bpatch patch1d_1 ,mem_patch1d 
+0x41da 015371 call mouse_bb_discon_clear_stack 
+0x41db 015372 fetch mouse_flag_len ,mem_mouse_flag 
+0x41dc 015373 bbit1 mouse_select_device_flag ,mouse_soft_reset 
+0x41dd 015374 bbit1 mosue_24g_pairing_flag ,g24_start_pairing_sm1 
+0x41de 015375 fetch 1 ,mem_reconn_times 
+0x41df 015376 nbranch mouse_polling_device ,blank 
+0x41e0 015377 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0x41e1 015378 bbit1 app_disc_ble ,mouse4_0_event_bb_disconn 
+0x41e2 015379 bbit1 app_disc_by_button ,app_disconn_reason_clear 
+0x41e3 015380 bbit1 app_disc_after_pairing ,mouse_event_light_state_pairing 
+0x41e4 015381 bbit1 app_disc_after_reconn ,mouse_event_light_state_hibernate 
+0x41e5 015382 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
+0x41e6 015383 branch mouse_start_discovery 
+:      015384 mouse_bb_discon_clear_stack:
+0x41e7 015385 setarg 0 
+0x41e8 015386 store 8 ,mem_wheel_tb_old_pinlevel 
+0x41e9 015387 istore 4 ,contw 
+0x41ea 015388 jam 0 ,mem_mouse_send_blank_timer 
+0x41eb 015389 jam 0 ,mem_mouse_move_flag 
+0x41ec 015390 jam app_handshake_null ,mem_app_handshake_flag 
+0x41ed 015391 jam 0 ,mem_ltk_exists 
+0x41ee 015392 rtn 
+:      015394 mouse_event_light_state_pairing:
+0x41ef 015395 bbit1 app_disc_after_handshake ,mouse_event_light_state_hibernate 
+0x41f0 015396 bbit1 app_disc_after_sniff ,mouse_event_light_state_hibernate 
+0x41f1 015397 branch mouse_start_discovery 
+:      015398 mouse_event_light_state_hibernate:
+0x41f2 015399 fetch 2 ,mem_ui_state_map 
+0x41f3 015400 bbit1 ui_state_btn_down ,mouse_start_discovery 
+0x41f4 015401 branch app_bb_hibernate 
+:      015403 mouse4_0_event_bb_disconn:
+0x41f5 015404 call mouse_le_clean_connect_flag 
+0x41f6 015405 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0x41f7 015406 bbit1 app_disc_by_button ,app_disconn_reason_clear 
+0x41f8 015407 branch app_bb_hibernate 
+:      015409 mouse_bb_event_timer:
+0x41f9 015410 call mouse_adc_read 
+0x41fa 015411 call mouse_24g_delay_timer 
+0x41fb 015412 call mouse_ban_24g_pairing_timer 
+0x41fc 015413 call mouse_dpi_led_blink_delay_timer 
+0x41fd 015414 call mouse_statue_up_timer 
+0x41fe 015416 call mouse_statue_cheak_timer 
+0x41ff 015417 call mouse_select_device 
+0x4200 015418 call mouse_bt_discovery_cheak 
+0x4201 015419 call mouse_low_voltage_led_timer 
+0x4202 015420 call mouse_sensor_led_contrl_timer 
+0x4203 015421 call mouse_check_hid_handshake_timer 
+0x4204 015422 call mouse_check_discovery_timeout_timer 
+0x4205 015423 call mouse_check_direct_timeout_timer 
+0x4206 015424 call mouse_check_no_data_timeout_timer 
+0x4207 015425 call mouse_check_mouse_state_timer 
+0x4208 015426 branch mouse_le_enable_att_list_timer 
+:      015430 mouse_sensor_led_contrl_timer:
+0x4209 015431 fetch 1 ,mem_mouse_sensor_timer_count 
+0x420a 015432 rtn blank 
+0x420b 015433 increase -1 ,pdata 
+0x420c 015434 store 1 ,mem_mouse_sensor_timer_count 
+0x420d 015435 nrtn blank 
+0x420e 015436 branch mouse_sensor_led_contrl 
+:      015437 mouse_sensor_led_contrl:
+0x420f 015438 fetch 1 ,mem_sensor_led_style 
+0x4210 015439 rtneq ui_led_state_blink_stop 
+0x4211 015440 beq ui_led_state_blink_darking ,mouse_sensor_led_blink_state_darking 
+:      015441 mouse_sensor_led_blink_state_lighting:
+0x4212 015442 call mouse_sensor_led_on 
+0x4213 015443 jam ui_led_state_blink_darking ,mem_sensor_led_style 
+0x4214 015444 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+0x4215 015445 rtn 
+:      015446 mouse_sensor_led_blink_state_darking:
+0x4216 015447 call mouse_sensor_led_off 
+0x4217 015448 jam ui_led_state_blink_lighting ,mem_sensor_led_style 
+0x4218 015449 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+0x4219 015450 rtn 
+:      015452 mouse_sensor_led_blink_stop:
+:      015453 mouse_sensor_reset:
+0x421a 015454 setarg 0x8006 
+0x421b 015455 call twspi_write 
+0x421c 015456 nop 1000 
+0x421d 015457 jam 0x00 ,mem_mouse_sensor_timer_count 
+0x421e 015458 jam ui_led_state_blink_stop ,mem_sensor_led_style 
+0x421f 015459 branch mouse_init_p32xx_id2_judge 
+:      015461 mouse_p3212sensor_led_on:
+0x4220 015462 setarg 0xa006 
+0x4221 015463 call twspi_write 
+0x4222 015464 setarg 0xa005 
+0x4223 015465 branch twspi_write 
+:      015466 mouse_sensor_led_on_global:
+0x4224 015467 jam 0 ,mem_mouse_sensor_timer_count 
+:      015468 mouse_sensor_led_on:
+0x4225 015469 fetch 1 ,mem_config_sensor_type 
+0x4226 015470 beq p3212 ,mouse_p3212sensor_led_on 
+0x4227 015471 setarg 0x0106 
+0x4228 015472 call twspi_write 
+0x4229 015473 setarg 0xa105 
+0x422a 015474 branch twspi_write 
+:      015476 mouse_sensor_led_off_global:
+0x422b 015477 jam 0 ,mem_mouse_sensor_timer_count 
+:      015478 mouse_sensor_led_off:
+0x422c 015479 setarg 0x0906 
+0x422d 015480 branch twspi_write 
+:      015481 mouse_sensor_start_blink:
+0x422e 015482 jam led_sensor_blink_cnt ,mem_mouse_sensor_timer_count 
+0x422f 015483 jam ui_led_state_blink_start ,mem_sensor_led_style 
+0x4230 015484 rtn 
+:      015486 mouse_check_hid_handshake_timer:
+0x4231 015487 arg mem_hid_handshake_timer_count ,regc 
+0x4232 015488 arg mouse_bt_hid_handshake ,regb 
+0x4233 015489 branch timer_single_step 
+:      015491 mouse_check_discovery_timeout_timer:
+0x4234 015492 arg mem_mouse_discovery_timer ,regc 
+0x4235 015493 arg mouse_check_discovery_timeout ,regb 
+0x4236 015494 branch timer_single_step_2b 
+:      015496 mouse_check_direct_timeout_timer:
+0x4237 015497 arg mem_mouse_direct_timer ,regc 
+0x4238 015498 arg mouse_check_direct_timeout ,regb 
+0x4239 015499 branch timer_single_step_2b 
+:      015501 mouse_check_no_data_timeout_timer:
+0x423a 015502 arg mem_mouse_no_data_timer ,regc 
+0x423b 015503 arg mouse_check_no_data_timeout ,regb 
+0x423c 015504 branch timer_single_step_2b 
+:      015506 mouse_check_mouse_state_timer:
+0x423d 015507 arg mem_mouse_statue_led_timer ,regc 
+0x423e 015508 arg mouse_statue_led_off ,regb 
+0x423f 015509 branch timer_single_step 
+:      015513 mouse_le_enable_att_list_timer:
+0x4240 015514 arg mem_le_start_encrypt_timer ,regc 
+0x4241 015515 arg mouse_le_enable_att_list ,regb 
+0x4242 015516 branch timer_single_step 
+:      015518 mouse_24g_delay_timer:
+0x4243 015519 arg mem_24g_enter_lpm_timer ,regc 
+0x4244 015520 arg mouse_24g_delay ,regb 
+0x4245 015521 branch timer_single_step 
+:      015523 mouse_ban_24g_pairing_timer:
+0x4246 015524 arg mem_24g_pairing_timer_count ,regc 
+0x4247 015525 arg mouse_ban_24g_pairing ,regb 
+0x4248 015526 branch timer_single_step_2b 
+:      015527 mouse_ban_24g_pairing:
+:      015528 mouse_24g_delay:
+0x4249 015529 rtn 
+:      015532 mosue_dpi_led_blink_init:
+0x424a 015533 fetch mouse_flag_len ,mem_mouse_flag 
+0x424b 015534 rtnbit0 mouse_enable_dpi_led_blink 
+0x424c 015535 jam 10 ,mem_mouse_dpi_led_delay_count 
+0x424d 015536 fetch 1 ,mem_dpi_led_gpio 
+0x424e 015537 store 1 ,mem_mouse_struct_led_gpio 
+0x424f 015538 rtn 
+:      015541 mouse_dpi_led_blink_delay_timer:
+0x4250 015542 arg mem_mouse_dpi_led_delay_count ,regc 
+0x4251 015543 arg mouse_dpi_led_setting ,regb 
+0x4252 015544 branch timer_single_step 
+:      015545 mouse_dpi_led_setting:
+0x4253 015546 fetch 1 ,mem_dpi_led_gpio 
+0x4254 015547 store 1 ,mem_mouse_struct_led_gpio 
+0x4255 015548 setarg led_dpi_blink 
+0x4256 015549 store 2 ,mem_mouse_on_time 
+0x4257 015550 store 2 ,mem_mouse_off_time 
+0x4258 015551 arg 0 ,rega 
+0x4259 015552 fetcht 1 ,mem_mouse_dpi 
+0x425a 015553 increase 1 ,temp 
+0x425b 015554 storet 1 ,mem_mouse_blink_count 
+0x425c 015555 jam ui_led_state_blink_start ,mem_mouse_led_type 
+0x425d 015556 rtn 
+:      015558 mouse_le_enable_att_list:
+0x425e 015559 fetch 1 ,mem_le_connect_status_flag 
+0x425f 015560 rtnbit1 ll_pairing_success_flag 
+0x4260 015561 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+0x4261 015562 call ui_ipc_send_cmd 
+0x4262 015563 arg write_req_enable_flag ,queue 
+0x4263 015564 branch mouse_le_enable_connect_flag 
+:      015567 mouse_check_discovery_timeout:
+0x4264 015568 call mouse_stop_discovery 
+0x4265 015569 branch app_enter_hibernate 
+:      015571 mouse_check_direct_timeout:
+0x4266 015572 call app_ble_stop_direct_adv 
+0x4267 015573 fetch 1 ,mem_reconn_times 
+0x4268 015574 nbranch mouse_polling_device ,blank 
+0x4269 015575 branch app_enter_hibernate 
+:      015577 mouse_check_no_data_timeout:
+0x426a 015578 bmark1 mark_24g ,check_51cmd_hibernate 
+0x426b 015579 branch mouse_disconnect 
+:      015583 mouse_bb_event_discovery_btn:
+0x426c 015584 bpatch patch1d_2 ,mem_patch1d 
+0x426d 015585 jam 0 ,mem_mouse_send_blank_timer 
+0x426e 015586 call mouse_disconnect 
+0x426f 015587 call mouse_le_clean_connect_flag 
+0x4270 015588 branch mouse_start_discovery 
+:      015592 mouse3_0_check_reconn_target:
+0x4271 015593 fetch 6 ,mem_hci_plap 
+0x4272 015594 branch app_bt_start_discovery_short ,blank 
+0x4273 015595 call mouse_reconn_setting_led_gpio 
+0x4274 015596 jam 0x17 ,mem_connection_options 
+0x4275 015597 fetch 1 ,mem_ssp_enable 
+0x4276 015598 nbranch app_bt_start_reconnect ,blank 
+0x4277 015599 jam 0x04 ,mem_connection_options 
+0x4278 015600 branch app_bt_start_reconnect 
+:      015602 mouse4_0_check_reconn_target:
+0x4279 015603 fetch 2 ,mem_mouse_direct_timeout 
+0x427a 015604 store 2 ,mem_mouse_direct_timer 
+0x427b 015605 call mouse_reconn_setting_led_gpio 
+0x427c 015606 call app_lpm_mult_disable 
+0x427d 015607 branch check_51cmd_adv 
+:      015609 mouse_reconn_setting_led_gpio:
+0x427e 015610 setarg led_reconnect_blink 
+0x427f 015611 store 2 ,mem_mouse_on_time 
+0x4280 015612 store 2 ,mem_mouse_off_time 
+0x4281 015613 branch mouse_setting_led_gpio_comman 
+:      015615 mouse_discover_setting_led_gpio:
+0x4282 015616 setarg led_discovery_blink 
+0x4283 015617 store 2 ,mem_mouse_on_time 
+0x4284 015618 store 2 ,mem_mouse_off_time 
+:      015619 mouse_setting_led_gpio_comman:
+0x4285 015620 fetch 1 ,mem_device_flag 
+0x4286 015621 beq mode_bt_device1 ,mouse_device_led1 
+0x4287 015622 beq mode_bt_device2 ,mouse_device_led2 
+0x4288 015623 beq mode_bt_device3 ,mouse_device_led3 
+0x4289 015624 rtn 
+:      015625 mouse_device_led1:
+0x428a 015626 fetch 1 ,mem_config_device1_led_gpio 
+0x428b 015627 branch mouse_led_blink 
+:      015628 mouse_device_led2:
+0x428c 015629 fetch 1 ,mem_config_device2_led_gpio 
+0x428d 015630 branch mouse_led_blink 
+:      015631 mouse_device_led3:
+0x428e 015632 fetch 1 ,mem_config_device3_led_gpio 
+:      015633 mouse_led_blink:
+0x428f 015634 store 1 ,mem_temp 
+0x4290 015635 call mouse_devce_led_off 
+0x4291 015636 fetch 1 ,mem_temp 
+0x4292 015637 store 1 ,mem_mouse_struct_led_gpio 
+0x4293 015638 arg 0 ,rega 
+0x4294 015639 jam ui_led_state_blink_start ,mem_mouse_led_type 
+0x4295 015640 branch ui_led_blink_start_global 
+:      015642 mouse_led_off:
+0x4296 015643 arg 0 ,rega 
+0x4297 015644 branch ui_led_off_global 
+:      015645 mouse_led_on:
+0x4298 015646 arg 0 ,rega 
+0x4299 015647 branch ui_led_on_global 
+:      015649 mouse4_0_bb_event_discovery_btn:
+0x429a 015650 branch mouse_le_clean_connect_flag 
+:      015652 mouse_bt_hid_handshake:
+0x429b 015653 jam app_handshake_done ,mem_app_handshake_flag 
+0x429c 015654 call app_lpm_mult_enable 
+0x429d 015655 call app_bt_store_reconn_info 
+0x429e 015656 setarg 0 
+0x429f 015657 store 2 ,mem_discovery_timeout_timer_count 
+0x42a0 015658 store 1 ,mem_hid_handshake_timer_count 
+0x42a1 015659 branch app_bt_enter_sniff 
+:      015661 mouse_check_reconn_target:
+0x42a2 015662 call mouse_cheak_select_device_by_switch 
+0x42a3 015663 fetch 1 ,mem_device_flag 
+0x42a4 015664 fetcht 1 ,mem_24g_device_number 
+0x42a5 015665 isub temp ,null 
+0x42a6 015666 branch mouse_connect_24g_mode ,zero 
+0x42a7 015667 fetch 1 ,mem_xrecord_mode 
+0x42a8 015668 beq rec_3_mode ,mouse3_0_check_reconn_target 
+0x42a9 015669 beq rec_4_mode ,mouse4_0_check_reconn_target 
+0x42aa 015670 branch mouse_start_discovery 
+:      015671 mouse_connect_24g_mode:
+0x42ab 015672 call mouse_start_24g_mode 
+0x42ac 015673 rtnmark1 mark_24g 
+0x42ad 015674 fetch 1 ,mem_reconn_times 
+0x42ae 015675 nbranch mouse_polling_device ,blank 
+0x42af 015676 rtn 
+:      015678 mouse_start_discovery:
+0x42b0 015679 bpatch patch1d_3 ,mem_patch1d 
+0x42b1 015680 fetch 2 ,mem_ui_state_map 
+0x42b2 015681 bbit1 ui_state_ble_adv ,mouse_start_discovery_norandom 
+0x42b3 015682 fetch mouse_flag_len ,mem_mouse_flag 
+0x42b4 015683 bbit0 mouse_enable_ble_random_addre ,mouse_start_discovery_norandom 
+0x42b5 015684 random pdata 
+0x42b6 015685 store 1 ,mem_le_lap + 1 
+:      015686 mouse_start_discovery_norandom:
+0x42b7 015687 call app_lpm_mult_disable 
+0x42b8 015688 fetch 2 ,mem_discovery_timeout 
+0x42b9 015689 store 2 ,mem_mouse_discovery_timer 
+0x42ba 015690 jam 6 ,mem_connection_options 
+0x42bb 015691 setarg 0 
+0x42bc 015692 store 2 ,mem_mouse_no_data_timer 
+0x42bd 015693 store 2 ,mem_mouse_direct_timer 
+0x42be 015694 arg mouse_store_eeprom_flag ,queue 
+0x42bf 015695 call mouse_enable_function_flag 
+0x42c0 015696 call mouse_bt_discovery_button_down_disable 
+0x42c1 015697 fetch 1 ,mem_device_option 
+0x42c2 015698 isolate1 mode_4_mouse ,pdata 
+0x42c3 015699 call check_51cmd_adv ,true 
+0x42c4 015700 fetch 1 ,mem_device_option 
+0x42c5 015701 isolate1 mode_3_mouse ,pdata 
+0x42c6 015702 call check_51cmd_start_discovery ,true 
+0x42c7 015703 fetch mouse_flag_len ,mem_mouse_flag 
+0x42c8 015704 bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_start_blink 
+0x42c9 015705 branch mouse_discover_setting_led_gpio 
+:      015707 mouse_stop_discovery:
+0x42ca 015708 bpatch patch1d_4 ,mem_patch1d 
+0x42cb 015709 fetch 1 ,mem_device_option 
+0x42cc 015710 isolate1 mode_4_mouse ,pdata 
+0x42cd 015711 call mouse_stop_le_adv ,true 
+0x42ce 015712 fetch 1 ,mem_device_option 
+0x42cf 015713 isolate1 mode_3_mouse ,pdata 
+0x42d0 015714 call mouse_stop_bt3_discovery ,true 
+0x42d1 015715 fetch mouse_flag_len ,mem_mouse_flag 
+0x42d2 015716 bbit1 mouse_enable_discovery_sensor_led ,mouse_sensor_led_blink_stop 
+0x42d3 015717 branch mouse_devce_led_off 
+:      015718 mouse_stop_le_adv:
+0x42d4 015719 setarg 0 
+0x42d5 015720 store 2 ,mem_mouse_direct_timer 
+0x42d6 015721 branch check_51cmd_stop_adv 
+:      015722 mouse_stop_bt3_discovery:
+0x42d7 015723 setarg 0 
+0x42d8 015724 store 2 ,mem_mouse_discovery_timer 
+0x42d9 015725 branch check_51cmd_stop_discovery 
+:      015731 mouse_store_remote_bdaddr:
+0x42da 015732 fetch mouse_flag_len ,mem_mouse_flag 
+0x42db 015733 rtnbit0 mouse_store_eeprom_flag 
+0x42dc 015734 arg mouse_store_eeprom_flag ,queue 
+0x42dd 015735 call mouse_disable_function_flag 
+0x42de 015736 call mouse_check_device_addr 
+:      015737 mouse_unplug_clean_bdaddr:
+0x42df 015738 call mouse_before_store_reconn_info 
+0x42e0 015739 fetch mouse_flag_len ,mem_mouse_flag 
+0x42e1 015740 bbit1 mouse_enable_flash ,mouse_store_flash_device_info 
+0x42e2 015741 bbit1 mouse_enable_eeprom ,mouse_store_eeprom_device_info 
+0x42e3 015742 rtn 
+:      015743 mouse_store_eeprom_device_info:
+0x42e4 015744 arg 88 ,temp 
+0x42e5 015745 arg mem_device_flag ,rega 
+0x42e6 015746 arg mouse_info_eeprom_offect ,regb 
+0x42e7 015747 branch iicd_write_protect_eep_data 
+:      015749 mouse_check_device_addr:
+0x42e8 015750 fetch 1 ,mem_record_bt_mode 
+0x42e9 015751 beq rec_4_mode ,mouse_check_le_device_addr 
+0x42ea 015752 beq rec_3_mode ,mouse_check_bt_device_addr 
+0x42eb 015753 rtn 
+:      015754 mouse_check_le_device_addr:
+0x42ec 015755 store 1 ,mem_device_addr_temp 
+0x42ed 015756 fetch 6 ,mem_le_plap 
+0x42ee 015757 branch mouse_check_bt_device_addr_common 
+:      015758 mouse_check_bt_device_addr:
+0x42ef 015759 store 1 ,mem_device_addr_temp 
+0x42f0 015760 fetch 6 ,mem_plap 
+:      015761 mouse_check_bt_device_addr_common:
+0x42f1 015762 store 6 ,mem_device_addr_temp + 1 
+0x42f2 015763 fetch 7 ,mem_device_addr_temp 
+0x42f3 015764 arg mem_device1_type ,contr 
+0x42f4 015765 arg 3 ,loopcnt 
+:      015766 mouse_check_device_addr_end:
+0x42f5 015767 ifetcht 7 ,contr 
+0x42f6 015768 isub temp ,null 
+0x42f7 015769 branch mouse_clean_addr ,zero 
+0x42f8 015770 increase 22 ,contr 
+0x42f9 015771 loop mouse_check_device_addr_end 
+0x42fa 015772 rtn 
+:      015773 mouse_before_store_reconn_info:
+0x42fb 015774 arg mem_device1_type ,rega 
+0x42fc 015775 fetch 1 ,mem_device_flag 
+0x42fd 015776 increase -1 ,pdata 
+0x42fe 015777 mul32 pdata ,29 ,pdata 
+0x42ff 015778 iadd rega ,rega 
+0x4300 015779 fetch 1 ,mem_record_bt_mode 
+0x4301 015780 istore 1 ,rega 
+0x4302 015781 beq rec_4_mode ,mouse_store_le_device 
+0x4303 015782 beq rec_3_mode ,mouse_store_bt_device 
+0x4304 015783 rtn 
+:      015785 mouse_store_le_device:
+0x4305 015786 fetch 6 ,mem_le_plap 
+0x4306 015787 istore 6 ,contw 
+0x4307 015788 arg mem_le_ltk ,contr 
+0x4308 015789 call memcpy16 
+0x4309 015790 fetch 6 ,mem_le_lap 
+0x430a 015791 istore 6 ,contw 
+0x430b 015792 rtn 
+:      015793 mouse_store_bt_device:
+0x430c 015794 fetch 6 ,mem_plap 
+0x430d 015795 istore 6 ,contw 
+0x430e 015796 arg mem_link_key ,contr 
+0x430f 015797 branch memcpy16 
+:      015799 mouse_clean_addr:
+0x4310 015800 increase -6 ,contr 
+0x4311 015801 copy contr ,contw 
+0x4312 015802 fetcht 6 ,mem_device_addr_temp + 1 
+0x4313 015803 increase 3 ,temp 
+0x4314 015804 istoret 6 ,contw 
+0x4315 015805 rtn 
+:      015809 mouse_eeprom_load_recon_info:
+0x4316 015810 arg 88 ,temp 
+0x4317 015811 arg mem_device_flag ,rega 
+0x4318 015812 arg mouse_info_eeprom_offect ,regb 
+0x4319 015813 call iicd_read_eep_data 
+:      015814 mouse_select_reconn_device:
+0x431a 015815 arg mem_device1_type ,rega 
+0x431b 015816 fetch 1 ,mem_device_flag 
+0x431c 015817 fetcht 1 ,mem_24g_device_number 
+0x431d 015818 isub temp ,null 
+0x431e 015819 rtn zero 
+0x431f 015820 increase -1 ,pdata 
+0x4320 015821 mul32 pdata ,29 ,pdata 
+0x4321 015822 iadd rega ,rega 
+0x4322 015823 ifetch 1 ,rega 
+0x4323 015824 store 1 ,mem_xrecord_mode 
+0x4324 015825 beq rec_3_mode ,mouse_load_bt_device 
+0x4325 015826 beq rec_4_mode ,mouse_load_le_device 
+0x4326 015827 rtn 
+:      015829 mouse_load_bt_device:
+0x4327 015830 ifetch 6 ,contr 
+:      015831 mouse_load_bt_device_end:
+0x4328 015832 store 6 ,mem_hci_plap 
+0x4329 015833 arg mem_link_key ,contw 
+0x432a 015834 call memcpy16 
+0x432b 015835 branch check_link_key_load 
+:      015837 mouse_load_le_device:
+0x432c 015838 ifetch 6 ,contr 
+:      015839 mouse_load_le_device_end:
+0x432d 015840 store 6 ,mem_hci_plap 
+0x432e 015841 arg mem_le_ltk ,contw 
+0x432f 015842 call memcpy16 
+0x4330 015843 ifetch 6 ,contr 
+0x4331 015844 store 6 ,mem_le_lap 
+0x4332 015845 rtn 
+:      015848 mouse_select_device:
+0x4333 015849 fetch 1 ,mem_config_function_enable 
+0x4334 015850 bbit1 enable_select_device_by_gpio_button ,mouse_select_device_by_button 
+0x4335 015851 bbit1 enable_select_device_by_switch ,mouse_select_device_by_switch 
+0x4336 015852 branch mouse_select_device_by_combination_key 
+:      015854 mouse_select_device_by_combination_key:
+0x4337 015855 call mouse_check_key_gpio 
+0x4338 015856 beq mouse_rm_button ,mouse_select_device_commbination_key_down 
+:      015857 mouse_select_device_commbination_key_up:
+0x4339 015858 jam 30 ,mem_combination_select_device_count 
+0x433a 015859 fetch 1 ,mem_select_device_button_statue 
+0x433b 015860 rtneq dpi_button_state_up 
+0x433c 015861 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x433d 015862 rtn 
+:      015864 mouse_select_device_commbination_key_down:
+0x433e 015865 call mouse_combination_select_device_timer 
+0x433f 015866 fetch 1 ,mem_select_device_button_statue 
+0x4340 015867 rtneq dpi_button_state_down 
+0x4341 015868 jam dpi_button_state_down ,mem_select_device_button_statue 
+0x4342 015869 branch mouse_select_device_enable 
+:      015871 mouse_combination_select_device_timer:
+0x4343 015872 fetch 1 ,mem_combination_select_device_count 
+0x4344 015873 rtn blank 
+0x4345 015874 pincrease -1 
+0x4346 015875 store 1 ,mem_combination_select_device_count 
+0x4347 015876 nrtn blank 
+0x4348 015877 branch mouse_ready_reconnection_by_button 
+:      015879 mouse_select_device_by_button:
+0x4349 015880 fetch 1 ,mem_config_select_device_button_gpio 
+0x434a 015881 rtneq gpio_disable 
+0x434b 015882 fetcht 1 ,mem_config_select_device_button_gpio 
+0x434c 015883 call gpio_get_bit 
+0x434d 015884 branch mouse_select_device_button_down ,true 
+:      015885 mouse_select_device_button_up:
+0x434e 015886 fetch 1 ,mem_select_device_button_statue 
+0x434f 015887 rtneq dpi_button_state_up 
+0x4350 015888 jam dpi_button_state_up ,mem_select_device_button_statue 
+0x4351 015889 fetch mouse_flag_len ,mem_mouse_flag 
+0x4352 015890 rtnbit1 mouse_long_bt_button_flag 
+0x4353 015891 branch mouse_ready_reconnection_by_button 
+:      015893 mouse_select_device_button_down:
+0x4354 015894 fetch 1 ,mem_select_device_button_statue 
+0x4355 015895 rtneq dpi_button_state_down 
+0x4356 015896 jam dpi_button_state_down ,mem_select_device_button_statue 
+0x4357 015897 arg mouse_long_bt_button_flag ,queue 
+0x4358 015898 branch mouse_disable_function_flag 
+:      015902 mouse_select_device_by_switch:
+0x4359 015903 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+0x435a 015904 rtnbit0 enable_select_device_by_switch 
+0x435b 015905 fetch 1 ,mem_device_flag 
+0x435c 015906 beq mode_bt_device1 ,mouse_select1_device 
+0x435d 015907 beq mode_24g_device ,mouse_select2_device 
+0x435e 015908 rtn 
+:      015909 mouse_cheak_select_device_by_switch:
+0x435f 015910 fetch 1 ,mouse_flag_len ,mem_mouse_flag 
+0x4360 015911 rtnbit0 enable_select_device_by_switch 
+0x4361 015912 fetcht 1 ,mem_config_select_device_button_gpio 
+0x4362 015913 call gpio_get_bit 
+0x4363 015914 branch mouse_cheak_select_24gdevice ,true 
+:      015915 mouse_select_btdevice:
+0x4364 015916 jam mode_bt_device1 ,mem_device_flag 
+0x4365 015917 rtn 
+:      015918 mouse_cheak_select_24gdevice:
+0x4366 015919 fetch 1 ,mem_24g_device_number 
+0x4367 015920 store 1 ,mem_device_flag 
+0x4368 015921 rtn 
+:      015922 mouse_select1_device:
+0x4369 015923 fetcht 1 ,mem_config_select_device_button_gpio 
+0x436a 015924 nbranch mouse_ready_reconnection_by_button ,true 
+0x436b 015925 rtn 
+:      015926 mouse_select2_device:
+0x436c 015927 fetcht 1 ,mem_config_select_device_button_gpio 
+0x436d 015928 call gpio_get_bit 
+0x436e 015929 branch mouse_select_device_button_down ,true 
+0x436f 015930 rtn 
+:      015935 mouse_ready_reconnection_by_button:
+0x4370 015936 fetcht 1 ,mem_device_flag 
+0x4371 015937 increase 1 ,temp 
+0x4372 015938 fetch 1 ,mem_device_number 
+0x4373 015939 isub temp ,null 
+0x4374 015940 ncall mouse_select_device_count_clean ,positive 
+0x4375 015941 storet 1 ,mem_device_flag 
+0x4376 015942 jam 0 ,mem_link_key_exists 
+0x4377 015943 call mouse_store_device_number2eeprom 
+0x4378 015944 call mouse_select_device_enable 
+0x4379 015946 branch mouse_set_reconnection 
+:      015948 mouse_store_device_number2eeprom:
+0x437a 015949 arg 1 ,temp 
+0x437b 015950 arg mem_device_flag ,rega 
+0x437c 015951 arg 0 ,regb 
+0x437d 015952 branch iicd_write_eep_data 
+:      015954 mouse_set_reconnection:
+0x437e 015955 call mouse_stop_bluetooth_mode 
+0x437f 015956 call mouse_select_device_disable 
+0x4380 015957 branch mouse_soft_reset 
+:      015958 mouse_stop_bluetooth_mode:
+0x4381 015959 fetch 2 ,mem_ui_state_map 
+0x4382 015960 bbit1 ui_state_bt_reconnect ,mouse_cancel_reconnect 
+0x4383 015961 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x4384 015962 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x4385 015963 branch mouse_stop_discovery 
+:      015965 mouse_disconnect:
+0x4386 015966 bpatch patch1d_5 ,mem_patch1d 
+0x4387 015967 setarg 0 
+0x4388 015968 store 2 ,mem_mouse_no_data_timer 
+0x4389 015969 fetch 2 ,mem_ui_state_map 
+0x438a 015970 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x438b 015971 fetch 2 ,mem_ui_state_map 
+0x438c 015972 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x438d 015973 rtn 
+:      015975 mouse_irtual_cable_unplug:
+0x438e 015976 setarg 0x01 
+0x438f 015977 store 6 ,mem_plap 
+0x4390 015978 jam rec_3_mode ,mem_record_bt_mode 
+0x4391 015979 branch mouse_unplug_clean_bdaddr 
+:      015982 mouse_cancel_reconnect:
+0x4392 015983 call mouse_bt_cannel_reconn_enable 
+0x4393 015984 branch check_51cmd_bb_reconn_cancel 
+:      015986 mouse_bt_discovery_by_button:
+0x4394 015987 fetch 1 ,mem_config_bt_button_gpio 
+0x4395 015988 rtneq gpio_disable 
+0x4396 015989 fetcht 1 ,mem_config_bt_button_gpio 
+0x4397 015990 call gpio_get_bit 
+0x4398 015991 branch mouse_bt_discovery_button_down ,true 
+:      015992 mouse_bt_discovery_button_up:
+0x4399 015993 fetch 1 ,mem_ui_button_timeout 
+0x439a 015994 store 1 ,mem_combination_ui_button_count 
+0x439b 015995 fetch 1 ,mem_bt_discovey_button_statue 
+0x439c 015996 rtneq dpi_button_state_up 
+0x439d 015997 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
+0x439e 015998 branch mouse_bt_discovery_button_down_disable 
+:      015999 mouse_bt_discovery_button_down:
+0x439f 016000 call mouse_bt_discovry_timer 
+0x43a0 016001 fetch 1 ,mem_bt_discovey_button_statue 
+0x43a1 016002 rtneq dpi_button_state_down 
+0x43a2 016003 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
+0x43a3 016004 call check_51cmd_bb_reconn_cancel 
+0x43a4 016005 branch mouse_bt_discovery_button_down_enable 
+:      016008 mouse_bt_discovery_cheak:
+0x43a5 016009 fetch 1 ,mem_config_function_enable 
+0x43a6 016010 bbit1 enable_bt_button ,mouse_bt_discovery_by_button 
+:      016011 mouse_bt_discovery_commbination_key:
+0x43a7 016012 call mouse_check_key_gpio 
+0x43a8 016013 beq mouse_lmr_button ,mouse_bt_discovery_commbination_key_down 
+:      016014 mouse_bt_discovery_commbination_key_up:
+0x43a9 016015 fetch 1 ,mem_ui_button_timeout 
+0x43aa 016016 store 1 ,mem_combination_ui_button_count 
+0x43ab 016017 fetch 1 ,mem_bt_discovey_button_statue 
+0x43ac 016018 rtneq dpi_button_state_up 
+0x43ad 016019 jam dpi_button_state_up ,mem_bt_discovey_button_statue 
+0x43ae 016020 branch mouse_bt_discovery_button_down_disable 
+:      016023 mouse_bt_discovery_commbination_key_down:
+0x43af 016024 call mouse_bt_discovry_timer 
+0x43b0 016025 fetch 1 ,mem_bt_discovey_button_statue 
+0x43b1 016026 rtneq dpi_button_state_down 
+0x43b2 016027 jam dpi_button_state_down ,mem_bt_discovey_button_statue 
+0x43b3 016028 call check_51cmd_bb_reconn_cancel 
+0x43b4 016029 branch mouse_bt_discovery_button_down_enable 
+:      016031 mouse_bt_discovry_timer:
+0x43b5 016032 arg mem_combination_ui_button_count ,regc 
+0x43b6 016033 arg mouse_long_button_bt_discovry ,regb 
+0x43b7 016034 branch timer_single_step 
+:      016036 mouse_long_button_bt_discovry:
+0x43b8 016037 arg mouse_long_bt_button_flag ,queue 
+0x43b9 016038 call mouse_enable_function_flag 
+0x43ba 016039 call app_evt_button_long_pressed 
+0x43bb 016040 branch mouse_bb_event_discovery_btn 
+:      016043 mouse_cpi_enable:
+0x43bc 016044 arg mouse_cpi_flag ,queue 
+0x43bd 016045 branch mouse_enable_function_flag 
+:      016046 mouse_cpi_disable:
+0x43be 016047 arg mouse_cpi_flag ,queue 
+0x43bf 016048 branch mouse_disable_function_flag 
+:      016049 mouse_select_device_enable:
+0x43c0 016050 arg mouse_select_device_flag ,queue 
+0x43c1 016051 branch mouse_enable_function_flag 
+:      016052 mouse_select_device_disable:
+0x43c2 016053 arg mouse_select_device_flag ,queue 
+0x43c3 016054 branch mouse_disable_function_flag 
+:      016055 mouse_bt_cannel_reconn_enable:
+0x43c4 016056 arg mouse_bt_cannel_reconn_flag ,queue 
+0x43c5 016057 branch mouse_enable_function_flag 
+:      016058 mouse_bt_cannel_reconn_disable:
+0x43c6 016059 arg mouse_bt_cannel_reconn_flag ,queue 
+0x43c7 016060 branch mouse_disable_function_flag 
+:      016061 mouse_bt_discovery_button_down_enable:
+0x43c8 016062 arg mouse_bt_discovery_button_down_flag ,queue 
+0x43c9 016063 branch mouse_enable_function_flag 
+:      016064 mouse_bt_discovery_button_down_disable:
+0x43ca 016065 arg mouse_bt_discovery_button_down_flag ,queue 
+0x43cb 016066 branch mouse_disable_function_flag 
+:      016070 mouse_select_device_count_clean:
+0x43cc 016071 arg 1 ,temp 
+0x43cd 016072 rtn 
+:      016074 mouse_enable_function_flag:
+0x43ce 016075 fetch mouse_flag_len ,mem_mouse_flag 
+0x43cf 016076 qset1 pdata 
+0x43d0 016077 store mouse_flag_len ,mem_mouse_flag 
+0x43d1 016078 rtn 
+:      016080 mouse_disable_function_flag:
+0x43d2 016081 fetch mouse_flag_len ,mem_mouse_flag 
+0x43d3 016082 qset0 pdata 
+0x43d4 016083 store mouse_flag_len ,mem_mouse_flag 
+0x43d5 016084 rtn 
+:      016086 mouse_adc_read:
+0x43d6 016087 fetch mouse_flag_len ,mem_mouse_flag 
+0x43d7 016088 rtnbit0 mouse_enable_adc 
+0x43d8 016089 fetch 1 ,mem_adc_read_timer 
+0x43d9 016090 increase 1 ,pdata 
+0x43da 016091 store 1 ,mem_adc_read_timer 
+0x43db 016092 sub pdata ,10 ,null 
+0x43dc 016093 rtn positive 
+0x43dd 016094 jam 0 ,mem_adc_read_timer 
+0x43de 016095 call adc_set_mode 
+0x43df 016096 call vdd_calculate_by_mode 
+0x43e0 016097 store 2 ,mem_mouse_vdd_now_vol 
+0x43e1 016098 arg mem_mouse_vdd_calculate_set ,rega 
+0x43e2 016099 call adc_bat_percent_lowpower_out 
+0x43e3 016100 fetch 1 ,mem_adc_power_flag 
+0x43e4 016101 bbit1 1 ,mouse_power_down 
+0x43e5 016102 bbit0 0 ,mouse_adc_no_low_voltage 
+0x43e6 016103 branch mouse_adc_low_voltage 
+:      016104 mouse_adc_low_voltage:
+0x43e7 016105 arg mouse_low_voltage_flag ,queue 
+0x43e8 016106 branch mouse_enable_function_flag 
+:      016107 mouse_adc_no_low_voltage:
+0x43e9 016108 arg mouse_low_voltage_flag ,queue 
+0x43ea 016109 branch mouse_disable_function_flag 
+:      016111 mouse_low_voltage_led_timer:
+0x43eb 016112 fetch mouse_flag_len ,mem_mouse_flag 
+0x43ec 016113 rtnbit0 mouse_low_voltage_flag 
+0x43ed 016114 fetch 1 ,mem_config_low_voltage_alarm_gpio 
+0x43ee 016115 store 1 ,mem_mouse_struct_led_gpio 
+0x43ef 016116 fetch 1 ,mem_adc_low_volatage_led_timer_count 
+0x43f0 016117 pincrease 1 
+0x43f1 016118 store 1 ,mem_adc_low_volatage_led_timer_count 
+0x43f2 016119 sub pdata ,20 ,null 
+0x43f3 016120 ncall mouse_adc_low_volatage_led_timer_count_clean ,positive 
+0x43f4 016121 beq 2 ,mouse_low_voltage_led_on 
+0x43f5 016122 beq 4 ,mouse_low_voltage_led_off 
+0x43f6 016123 beq 6 ,mouse_low_voltage_led_on 
+0x43f7 016124 beq 8 ,mouse_low_voltage_led_off 
+0x43f8 016125 rtn 
+:      016126 mouse_adc_low_volatage_led_timer_count_clean:
+0x43f9 016127 jam 1 ,mem_adc_low_volatage_led_timer_count 
+0x43fa 016128 branch mouse_low_voltage_led_off 
+:      016129 mouse_low_voltage_led_on:
+0x43fb 016130 arg 0 ,rega 
+0x43fc 016131 jam ui_led_state_lighting ,mem_mouse_led_type 
+0x43fd 016132 branch ui_led_on_global 
+:      016133 mouse_low_voltage_led_off:
+0x43fe 016134 arg 0 ,rega 
+0x43ff 016135 jam ui_led_state_lighting ,mem_mouse_led_type 
+0x4400 016136 branch ui_led_off_global 
+:      016138 mouse_g24_package_data:
+0x4401 016139 call mouse_motion 
+0x4402 016140 nrtn user 
+0x4403 016141 arg 7 ,rega 
+0x4404 016142 arg mem_mouse_key ,regb 
+0x4405 016143 rtn 
+:      016145 mouse_g24_enter_lpm:
+0x4406 016146 fetch 1 ,mem_mouse_24g_enter_lpm_enable 
+0x4407 016147 rtn blank 
+0x4408 016149 fetcht 1 ,mem_dpi_button_gpio 
+0x4409 016150 call gpio_get_bit 
+0x440a 016151 call mouse_24g_dpi_delay_init ,true 
+0x440b 016152 fetch 1 ,mem_24g_enter_lpm_timer 
+0x440c 016153 nrtn blank 
+0x440d 016154 call mouse_check_key_gpio 
+0x440e 016155 nrtn blank 
+0x440f 016156 branch g24_lpm_long_sleep 
+:      016158 mouse_24g_dpi_delay_init:
+0x4410 016159 fetch 1 ,mem_dpi_button_gpio 
+0x4411 016160 rtneq ui_button_gpio_disable 
+0x4412 016161 jam 10 ,mem_24g_enter_lpm_timer 
+0x4413 016162 rtn 
+:      016165 mouse_load_flash_info_cheak:
+0x4414 016166 call mouse_load_flash_flag 
+0x4415 016167 fetch 2 ,mem_store_flag 
+0x4416 016168 arg eeprom_init_flag ,temp 
+0x4417 016169 isub temp ,null 
+0x4418 016170 branch mouse_load_flash_device_info ,zero 
+0x4419 016171 storet 2 ,mem_store_flag 
+0x441a 016172 call mouse_ble_init_address 
+0x441b 016173 branch mouse_store_flash_device_info 
+:      016174 mouse_ble_init_address:
+0x441c 016175 fetch 6 ,mem_le_lap 
+0x441d 016176 store 6 ,mem_device1_locall_addr 
+0x441e 016177 add pdata ,0x0100 ,pdata 
+0x441f 016178 store 6 ,mem_device2_locall_addr 
+0x4420 016179 add pdata ,0x0100 ,pdata 
+0x4421 016180 store 6 ,mem_device3_locall_addr 
+0x4422 016181 rtn 
+:      016184 mouse_load_flash_flag:
+0x4423 016185 setarg mem_store_flag 
+0x4424 016186 arg mem_mouse_information_start ,temp 
+0x4425 016187 isub temp ,temp 
+0x4426 016188 fetch 3 ,mem_flash_base 
+0x4427 016189 iadd temp ,pdata 
+0x4428 016190 arg 2 ,temp 
+0x4429 016191 arg mem_store_flag ,rega 
+0x442a 016192 branch spid_read_flash 
+:      016195 mouse_load_flash_device_info:
+0x442b 016196 setarg mem_mouse_information_end 
+0x442c 016197 arg mem_mouse_information_start ,temp 
+0x442d 016198 isub temp ,temp 
+0x442e 016199 fetch 3 ,mem_flash_base 
+0x442f 016200 arg mem_mouse_information_start ,rega 
+0x4430 016201 call spid_read_flash 
+0x4431 016202 call mouse_select_reconn_device 
+0x4432 016203 fetch 4 ,mem_mouse_24g_addr 
+0x4433 016204 call g24_head_ptr2regc 
+0x4434 016205 branch g24_store_mem_addr 
+:      016207 mouse_store_flash_device_info:
+0x4435 016208 setarg mem_mouse_information_end 
+0x4436 016209 arg mem_mouse_information_start ,temp 
+0x4437 016210 isub temp ,temp 
+0x4438 016211 arg mem_mouse_information_start ,rega 
+0x4439 016212 fetch 3 ,mem_flash_base 
+0x443a 016213 branch flash_write 
+:      016215 mouse_store_eerpom_dpi:
+0x443b 016216 arg 1 ,temp 
+0x443c 016217 arg mem_mouse_dpi ,rega 
+0x443d 016218 arg mouse_dpi_eeprom_offect ,regb 
+0x443e 016219 branch iicd_write_protect_eep_data 
+:      016221 mouse_load_eeprom_dpi:
+0x443f 016222 arg 1 ,temp 
+0x4440 016223 arg mem_mouse_dpi ,rega 
+0x4441 016224 arg mouse_dpi_eeprom_offect ,regb 
+0x4442 016225 branch iicd_read_eep_data 
+:      016227 mouse_statue_cheak_timer:
+0x4443 016228 rtnmark1 mark_24g 
+0x4444 016229 fetch mouse_flag_len ,mem_mouse_flag 
+0x4445 016230 rtnbit0 mouse_enable_statue_up 
+0x4446 016231 fetch 1 ,mem_mouse_1step_up_count 
+0x4447 016232 pincrease 1 
+0x4448 016233 and pdata ,0x07 ,pdata 
+0x4449 016234 store 1 ,mem_mouse_1step_up_count 
+0x444a 016235 rtnne 0x07 
+0x444b 016236 fetch 2 ,mem_ui_state_map 
+0x444c 016237 bbit1 ui_state_bt_connected ,mouse_check_statue_up 
+0x444d 016238 bbit1 ui_state_ble_connected ,mouse_check_statue_up 
+0x444e 016239 rtn 
+:      016244 mouse_check_statue_up:
+0x444f 016245 bpatch patch1d_6 ,mem_patch1d 
+0x4450 016246 fetch 1 ,mem_mouse_2step_up_count 
+0x4451 016247 nrtn blank 
+0x4452 016248 fetch mouse_flag_len ,mem_mouse_flag 
+0x4453 016249 rtnbit0 mouse_statue_up_flag 
+0x4454 016250 fetch 1 ,mem_sensor_squal_reg 
+0x4455 016251 call sensor_read 
+0x4456 016252 store 1 ,mem_sensor_iqc 
+0x4457 016253 sub pdata ,0x10 ,null 
+0x4458 016254 branch mouse_statue_up_timer_init ,positive 
+0x4459 016255 jam 0 ,mem_mouse_2step_up_count 
+0x445a 016256 rtn 
+:      016258 mouse_statue_up_timer_init:
+0x445b 016259 jam 30 ,mem_mouse_2step_up_count 
+0x445c 016260 rtn 
+:      016261 mouse_statue_up_timer:
+0x445d 016262 arg mem_mouse_2step_up_count ,regc 
+0x445e 016263 arg mouse_statue_up ,regb 
+0x445f 016264 branch timer_single_step 
+:      016266 mouse_statue_up:
+0x4460 016267 fetch 1 ,mem_sensor_squal_reg 
+0x4461 016268 call twspi_read 
+0x4462 016269 sub pdata ,0x10 ,null 
+0x4463 016270 nrtn positive 
+0x4464 016271 fetch mouse_flag_len ,mem_mouse_flag 
+0x4465 016272 rtnbit0 mouse_statue_up_flag 
+0x4466 016273 arg mouse_statue_up_flag ,queue 
+0x4467 016274 call mouse_disable_function_flag 
+0x4468 016275 jam 0 ,mem_lpm_mult 
+0x4469 016276 jam 30 ,mem_mouse_statue_led_timer 
+0x446a 016277 call mouse_devce_led_off 
+0x446b 016278 fetch mouse_flag_len ,mem_mouse_flag 
+0x446c 016279 bbit1 mouse_enable_statue_up_three_led ,mouse_three_device_statue_up 
+:      016280 mouse_two_device_statue_up:
+0x446d 016281 fetch 1 ,mem_device_flag 
+0x446e 016282 beq mode_bt_device1 ,mouse_device1_led_on 
+0x446f 016283 beq mode_bt_device2 ,mouse_device_blink_led_init 
+0x4470 016284 rtn 
+:      016285 mouse_three_device_statue_up:
+0x4471 016286 fetch 1 ,mem_device_flag 
+0x4472 016287 beq mode_bt_device1 ,mouse_device1_led_on 
+0x4473 016288 beq mode_bt_device2 ,mouse_device2_led_on 
+0x4474 016289 beq mode_bt_device3 ,mouse_device3_led_on 
+0x4475 016290 rtn 
+:      016292 mouse_device_blink_led_init:
+0x4476 016293 fetch 1 ,mem_config_device1_led_gpio 
+0x4477 016294 branch mouse_led_blink 
+:      016298 mouse_statue_led_off:
+0x4478 016299 jam 0x20 ,mem_lpm_mult 
+0x4479 016300 branch mouse_devce_led_off 
+:      016304 mouse_devce1_led_off:
+0x447a 016305 fetch 1 ,mem_config_device1_led_gpio 
+0x447b 016306 rtneq gpio_disable 
+0x447c 016307 store 1 ,mem_mouse_struct_led_gpio 
+0x447d 016308 branch mouse_led_off 
+:      016310 mouse_devce2_led_off:
+0x447e 016311 fetch 1 ,mem_config_device2_led_gpio 
+0x447f 016312 rtneq gpio_disable 
+0x4480 016313 store 1 ,mem_mouse_struct_led_gpio 
+0x4481 016314 branch mouse_led_off 
+:      016316 mouse_devce_led_off:
+0x4482 016317 call mouse_led_off 
+0x4483 016318 call mouse_devce1_led_off 
+0x4484 016319 call mouse_devce2_led_off 
+:      016320 mouse_devce3_led_off:
+0x4485 016321 fetch 1 ,mem_config_device3_led_gpio 
+0x4486 016322 rtneq gpio_disable 
+0x4487 016323 store 1 ,mem_mouse_struct_led_gpio 
+0x4488 016324 branch mouse_led_off 
+:      016326 mouse_device1_led_on:
+0x4489 016327 fetch 1 ,mem_config_device1_led_gpio 
+0x448a 016328 store 1 ,mem_mouse_struct_led_gpio 
+0x448b 016329 branch mouse_led_on 
+:      016330 mouse_device2_led_on:
+0x448c 016331 fetch 1 ,mem_config_device2_led_gpio 
+0x448d 016332 store 1 ,mem_mouse_struct_led_gpio 
+0x448e 016333 branch mouse_led_on 
+:      016334 mouse_device3_led_on:
+0x448f 016335 fetch 1 ,mem_config_device3_led_gpio 
+0x4490 016336 store 1 ,mem_mouse_struct_led_gpio 
+0x4491 016337 branch mouse_led_on 
+:      016341 mouse_polling_device:
+0x4492 016342 bpatch patch1d_7 ,mem_patch1d 
+0x4493 016343 fetch 1 ,mem_reconn_times 
+0x4494 016344 increase -1 ,pdata 
+0x4495 016345 store 1 ,mem_reconn_times 
+0x4496 016346 fetcht 1 ,mem_device_flag 
+0x4497 016347 increase 1 ,temp 
+0x4498 016348 fetch 1 ,mem_device_number 
+0x4499 016349 isub temp ,null 
+0x449a 016350 ncall mouse_select_device_count_clean ,positive 
+0x449b 016351 storet 1 ,mem_device_flag 
+0x449c 016352 jam 0 ,mem_link_key_exists 
+0x449d 016353 call mouse_store_device_number2eeprom 
+0x449e 016354 call mouse_before_store_reconn_info 
+0x449f 016355 branch mouse_check_reconn_target 
+:      016357 mouse_power_down:
+0x44a0 016358 call mouse_devce_led_off 
+0x44a1 016359 setarg 0 
+0x44a2 016360 store 8 ,mem_gpio_wakeup_low 
+0x44a3 016361 branch lpm_hibernate 
+:      016372 remote_car_init:
+0x44a4 016373 rtn wake 
+0x44a5 016374 hfetch 1 ,core_gpio_sel1 
+0x44a6 016375 and_into 0xf0 ,pdata 
+0x44a7 016376 hstore 1 ,core_gpio_sel1 
+0x44a8 016377 call keyscan_key_init 
+0x44a9 016378 setarg remote_car_le_before_hibernate 
+0x44aa 016379 store 2 ,mem_cb_before_hibernate 
+0x44ab 016381 setarg remote_car_process_lpm_before 
+0x44ac 016382 store 2 ,mem_cb_before_lpm 
+0x44ad 016384 setarg remote_car_scale_process_idle 
+0x44ae 016385 store 2 ,mem_cb_idle_process 
+0x44af 016387 setarg remote_car_scale_process_bb_event 
+0x44b0 016388 store 2 ,mem_cb_bb_event_process 
+0x44b1 016390 setarg app_get_lpm_wake_lock 
+0x44b2 016391 store 2 ,mem_cb_check_wakelock 
+0x44b3 016393 call g24_head_ptr2regc 
+0x44b4 016394 setarg remote_car_g24_package_data 
+0x44b5 016395 add regc ,offset_24g_cb_data ,contw 
+0x44b6 016396 istore 2 ,contw 
+0x44b7 016398 setarg remote_car_g24_enter_lpm 
+0x44b8 016399 add regc ,offset_24g_cb_lpm_prepare ,contw 
+0x44b9 016400 istore 2 ,contw 
+0x44ba 016402 setarg remote_car_process_lpm_before 
+0x44bb 016403 add regc ,offset_24g_cb_lpm_before ,contw 
+0x44bc 016404 istore 2 ,contw 
+0x44bd 016406 setarg remote_car_event_timer 
+0x44be 016407 store 2 ,mem_cb_event_timer 
+0x44bf 016409 setarg remote_car_power_off_signal 
+0x44c0 016410 store 2 ,mem_remote_car_power_off_cb 
+0x44c1 016412 setarg remote_car_soft_switch_power_on_signal 
+0x44c2 016413 store 2 ,mem_remote_car_power_standby_cb 
+0x44c3 016415 setarg remote_car_send_key_data 
+0x44c4 016416 store 2 ,mem_cb_remote_car_keyscan 
+0x44c5 016418 bpatch patch1e_0 ,mem_patch1e 
+0x44c6 016419 call remote_car_init_environment 
+0x44c7 016420 call queue_init 
+0x44c8 016421 jam 2 ,mem_lpm_mult 
+0x44c9 016422 fetch 1 ,mem_remote_car_config_soft_switch_enable 
+0x44ca 016423 store 1 ,mem_remote_car_hard_soft_switch 
+0x44cb 016424 beq hard_switch ,remote_car_hard_switch_power_on_signal 
+0x44cc 016425 fetch 1 ,mem_remote_car_config_soft_switch_gpio 
+0x44cd 016426 store 1 ,mem_ui_button_gpio 
+:      016427 remote_car_soft_switch_power_on_init:
+0x44ce 016428 call remote_car_ui_led_init 
+0x44cf 016429 call ui_button_init 
+0x44d0 016430 call ui_button_polling 
+0x44d1 016431 jam power_starting ,mem_remote_car_power_state 
+0x44d2 016432 fetch 2 ,mem_ui_state_map 
+0x44d3 016433 rtnbit1 ui_state_btn_down 
+0x44d4 016434 branch app_enter_hibernate 
+:      016438 remote_car_hard_switch_power_on_signal:
+0x44d5 016439 jam power_standby ,mem_remote_car_power_state 
+:      016440 remote_car_soft_switch_power_on_signal:
+0x44d6 016441 call remote_car_ui_led_init 
+0x44d7 016443 arg 0 ,rega 
+0x44d8 016444 call ui_led_blink_start_global 
+:      016445 remote_car_connect_24g_mode:
+0x44d9 016446 branch g24_auto_pair_start 
+:      016448 remote_car_power_off_signal:
+0x44da 016449 branch remote_car_ui_led_init 
+:      016451 remote_car_ui_led_init:
+0x44db 016452 bpatch patch1e_1 ,mem_patch1e 
+0x44dc 016453 fetch 1 ,mem_remote_car_config_connect_led_gpio 
+0x44dd 016454 bne invalid_pin_num ,remote_car_pairing_led_gpio_set 
+:      016455 remote_car_ui_led_init_1:
+0x44de 016456 fetcht 1 ,mem_remote_car_led_map 
+0x44df 016457 branch gpio_config_output 
+:      016458 remote_car_pairing_led_gpio_set:
+0x44e0 016459 store 1 ,mem_remote_car_led_map 
+0x44e1 016460 branch remote_car_ui_led_init_1 
+:      016463 remote_car_init_environment:
+0x44e2 016464 call g24_set_device_addr 
+0x44e3 016465 fetch 2 ,mem_remote_car_no_data_timeout 
+0x44e4 016466 store 2 ,mem_remote_car_no_data_timer 
+0x44e5 016467 branch remote_car_get_adc_default_data 
+:      016469 remote_car_le_before_hibernate:
+:      016474 remote_car_in_enter_hibernate:
+0x44e6 016475 call gpio_set_before_lpm_common 
+0x44e7 016476 call remote_car_process_lpm_before 
+0x44e8 016477 branch app_enter_hibernate 
+:      016479 remote_car_process_lpm_before:
+0x44e9 016480 branch keyscan_process_lpm_before 
+:      016482 remote_car_g24_enter_lpm:
+0x44ea 016483 fetch 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x44eb 016484 rtn blank 
+0x44ec 016486 branch g24_lpm_long_sleep 
+:      016488 remote_car_process_auto_pair_exit:
+0x44ed 016489 rtn 
+:      016491 remote_car_key_scan_process:
+0x44ee 016492 branch keyscan_key_process 
+:      016494 remote_car_scale_process_idle:
+0x44ef 016495 call remote_car_rocker_process 
+0x44f0 016496 call remote_car_24g_status_process 
+0x44f1 016497 branch remote_car_key_scan_process 
+:      016499 remote_car_scale_process_bb_event:
+0x44f2 016500 copy regc ,pdata 
+0x44f3 016501 beq bt_evt_button_up ,app_event_button_up 
+0x44f4 016502 beq bt_evt_button_long_pressed ,app_button_long_pressed 
+0x44f5 016503 beq bt_evt_24g_pairing_complete ,remote_car_24g_pairing_complete 
+0x44f6 016504 beq bt_evt_24g_attempt_success ,remote_car_24g_attempt_success 
+0x44f7 016505 beq bt_evt_24g_attempt_fail ,remote_car_24g_attempt_fail 
+0x44f8 016506 rtn 
+:      016508 remote_car_24g_attempt_fail:
+0x44f9 016509 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x44fa 016510 rtn 
+:      016512 remote_car_24g_pairing_complete:
+0x44fb 016513 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x44fc 016514 jam work_paired ,mem_remote_car_24g_auto_work_step 
+0x44fd 016515 jam work_paired ,mem_remote_car_24g_pair_success_flag 
+0x44fe 016516 rtn 
+:      016518 remote_car_24g_attempt_success:
+0x44ff 016519 jam 1 ,mem_remote_car_24g_enter_lpm_enable 
+0x4500 016520 jam work_paired ,mem_remote_car_24g_auto_work_step 
+0x4501 016521 jam work_paired ,mem_remote_car_24g_pair_success_flag 
+0x4502 016522 rtn 
+:      016524 remote_car_24g_status_process:
+0x4503 016525 fetch 1 ,mem_remote_car_24g_auto_work_step 
+0x4504 016526 rtneq power_on 
+0x4505 016527 fetch 1 ,mem_remote_car_24g_status 
+0x4506 016528 rtneq work_paired 
+0x4507 016529 jam work_paired ,mem_remote_car_24g_status 
+:      016530 remote_car_scale_process_paired:
+0x4508 016531 arg 0 ,rega 
+0x4509 016532 branch ui_led_off_global 
+:      016533 remote_car_scale_process_shutdown:
+0x450a 016534 arg 0 ,rega 
+0x450b 016535 call ui_led_off_global 
+0x450c 016536 call remote_car_ui_led_init 
+0x450d 016537 branch app_enter_hibernate 
+:      016539 remote_car_event_timer:
+0x450e 016540 call app_power_timer 
+0x450f 016541 branch remote_car_no_data_timer 
+:      016543 remote_car_no_data_timer:
+0x4510 016544 fetch 1 ,mem_remote_car_config_timeout_shutdown_enable 
+0x4511 016545 rtn blank 
+0x4512 016546 arg mem_remote_car_no_data_timer ,regc 
+0x4513 016547 arg remote_car_scale_process_shutdown ,regb 
+0x4514 016548 branch timer_single_step_2b 
+:      016551 remote_car_get_adc_default_data:
+0x4515 016552 call remote_car_rocker_get_x 
+0x4516 016553 storet 2 ,mem_current_vdd_value_default_mid_x 
+0x4517 016554 call remote_car_rocker_get_y 
+0x4518 016555 storet 2 ,mem_current_vdd_value_default_mid_y 
+0x4519 016556 rtn 
+:      016557 remote_car_rocker_data_get:
+:      016558 remote_car_rocker_get_x:
+0x451a 016559 fetch 2 ,mem_current_vdd_value_default_mid_x 
+0x451b 016560 store 2 ,mem_current_vdd_value_default_mid_temp 
+0x451c 016561 call remote_car_get_adc_from_gpio6 
+0x451d 016562 call remote_car_rocker_get_value 
+0x451e 016563 store 1 ,mem_rocker_status 
+:      016564 remote_car_rocker_get_y:
+0x451f 016565 fetch 2 ,mem_current_vdd_value_default_mid_y 
+0x4520 016566 store 2 ,mem_current_vdd_value_default_mid_temp 
+0x4521 016567 call remote_car_get_adc_from_gpio7 
+0x4522 016568 call remote_car_rocker_get_value 
+0x4523 016569 store 1 ,mem_rocker_status + 1 
+0x4524 016570 rtn 
+:      016571 remote_car_rocker_get_value:
+0x4525 016572 fetch 2 ,mem_current_vdd_default_range 
+0x4526 016573 copy pdata ,rega 
+0x4527 016574 fetch 2 ,mem_current_vdd_value_default_mid_temp 
+0x4528 016575 call remote_car_rocker_mid_value_adjust 
+0x4529 016576 fetch 1 ,mem_rocker_work_status 
+0x452a 016577 nbranch remote_car_rocker_translate_key ,blank 
+0x452b 016578 nrtn positive 
+0x452c 016579 fetcht 2 ,mem_current_vdd_value_default_mid_temp 
+0x452d 016580 rtn 
+:      016581 remote_car_rocker_mid_value_adjust:
+0x452e 016582 isub temp ,pdata 
+0x452f 016583 branch remote_car_rocker_mid_adjust_positive ,positive 
+0x4530 016584 sub pdata ,0 ,pdata 
+0x4531 016585 jam 1 ,mem_rocker_negative_flag 
+0x4532 016586 isub rega ,null 
+0x4533 016587 rtn 
+:      016588 remote_car_rocker_mid_adjust_positive:
+0x4534 016589 jam 0 ,mem_rocker_negative_flag 
+0x4535 016590 isub rega ,null 
+0x4536 016591 rtn 
+:      016592 remote_car_rocker_translate_key:
+0x4537 016593 nbranch remote_car_rocker_middle_key ,positive 
+0x4538 016594 fetch 1 ,mem_rocker_negative_flag 
+0x4539 016595 nbranch remote_car_rocker_negative_key ,blank 
+:      016596 remote_car_rocker_positive_key:
+0x453a 016597 setarg rocker_positive_key 
+0x453b 016598 rtn 
+:      016599 remote_car_rocker_negative_key:
+0x453c 016600 setarg rocker_negative_key 
+0x453d 016601 rtn 
+:      016602 remote_car_rocker_middle_key:
+0x453e 016603 setarg rocker_middle_key 
+0x453f 016604 rtn 
+:      016605 remote_car_get_adc_from_gpio6:
+0x4540 016606 jam 0x33 ,mem_adc_channel 
+0x4541 016607 branch adc_set_mode 
+:      016608 remote_car_get_adc_from_gpio7:
+0x4542 016609 jam 0x34 ,mem_adc_channel 
+0x4543 016610 branch adc_set_mode 
+:      016613 remote_car_rocker_process:
+0x4544 016614 fetch 1 ,mem_remote_car_config_check_way 
+0x4545 016615 rtnne car_remote_check_rocker 
+:      016616 remote_car_read_rocker_check_start:
+0x4546 016617 bpatch patch1e_2 ,mem_patch1e 
+0x4547 016618 jam 1 ,mem_rocker_work_status 
+0x4548 016619 call remote_car_rocker_data_get 
+0x4549 016620 fetch 2 ,mem_rocker_status 
+0x454a 016621 fetcht 2 ,mem_rocker_last_status 
+0x454b 016622 isub temp ,null 
+0x454c 016623 rtn zero 
+0x454d 016624 store 2 ,mem_rocker_last_status 
+0x454e 016625 call remote_car_rocker_x_to_key 
+0x454f 016626 branch remote_car_rocker_y_to_key 
+:      016628 remote_car_rocker_x_to_key:
+0x4550 016629 fetch 1 ,mem_rocker_x_status 
+0x4551 016630 branch rocker_to_queue_set_0 ,blank 
+0x4552 016631 increase -1 ,pdata 
+0x4553 016632 branch remote_car_rocker_to_key 
+:      016633 remote_car_rocker_y_to_key:
+0x4554 016634 fetch 1 ,mem_rocker_y_status 
+0x4555 016635 branch rocker_to_queue_set_2 ,blank 
+0x4556 016636 increase 1 ,pdata 
+:      016637 remote_car_rocker_to_key:
+0x4557 016638 copy pdata ,queue 
+0x4558 016639 arg 1 ,rega 
+0x4559 016640 branch remote_car_send_key_data 
+:      016642 rocker_to_queue_set_0:
+0x455a 016643 arg 0 ,queue 
+0x455b 016644 arg 0 ,rega 
+0x455c 016645 branch remote_car_send_key_data 
+:      016646 rocker_to_queue_set_2:
+0x455d 016647 arg 2 ,queue 
+0x455e 016648 arg 0 ,rega 
+0x455f 016649 branch remote_car_send_key_data 
+:      016651 remote_car_send_key_data:
+0x4560 016652 copy rega ,pdata 
+0x4561 016653 store 1 ,mem_remote_key_status 
+0x4562 016654 fetch 1 ,mem_remote_car_24g_auto_work_step 
+0x4563 016655 beq power_on ,g24_auto_pair_start 
+0x4564 016656 fetch 2 ,mem_remote_car_no_data_timeout 
+0x4565 016657 store 2 ,mem_remote_car_no_data_timer 
+0x4566 016658 fetch 1 ,mem_remote_key_status 
+0x4567 016659 branch remote_car_key_is_release ,blank 
+:      016660 remote_car_key_is_press:
+0x4568 016661 bpatch patch1e_3 ,mem_patch1e 
+0x4569 016662 arg 0 ,rega 
+0x456a 016663 call ui_led_on_global 
+:      016664 remote_car_attack_key_press:
+0x456b 016665 copy queue ,pdata 
+0x456c 016666 beq 4 ,remote_car_send_attack_key4_press 
+0x456d 016667 beq 5 ,remote_car_send_attack_key5_press 
+0x456e 016668 beq 6 ,remote_car_send_fire_key6_press 
+:      016671 remote_car_motor_key_press:
+0x456f 016672 call remote_car_device_layout_select 
+0x4570 016673 beq control_f_b_ten ,remote_car_single_motor_key_is_press 
+0x4571 016674 beq control_l_r_ten ,remote_car_double_motor_key_press 
+0x4572 016675 beq control_l_r_lr ,remote_car_single_motor_key_is_press 
+0x4573 016676 rtn 
+:      016678 remote_car_single_motor_key_is_press:
+0x4574 016679 copy queue ,pdata 
+0x4575 016680 beq 0 ,remote_car_send_motor1_key0_press 
+0x4576 016681 beq 1 ,remote_car_send_motor1_key1_press 
+0x4577 016682 beq 2 ,remote_car_send_motor2_key2_press 
+0x4578 016683 beq 3 ,remote_car_send_motor2_key3_press 
+0x4579 016684 rtn 
+:      016686 remote_car_double_motor_key_press:
+0x457a 016687 copy queue ,pdata 
+0x457b 016688 beq 0 ,remote_car_send_double_motor_key0_press 
+0x457c 016689 beq 1 ,remote_car_send_double_motor_key1_press 
+0x457d 016690 beq 2 ,remote_car_send_double_motor_key2_press 
+0x457e 016691 beq 3 ,remote_car_send_double_motor_key3_press 
+0x457f 016692 rtn 
+:      016694 remote_car_key_is_release:
+0x4580 016695 bpatch patch1e_4 ,mem_patch1e 
+0x4581 016696 arg 0 ,rega 
+0x4582 016697 call ui_led_off_global 
+:      016698 remote_car_attack_key_release:
+0x4583 016699 copy queue ,pdata 
+0x4584 016700 beq 4 ,remote_car_send_attack_key4_rel 
+0x4585 016701 beq 5 ,remote_car_send_attack_key5_rel 
+:      016704 remote_car_motor_key_release:
+0x4586 016705 call remote_car_device_layout_select 
+0x4587 016706 beq control_f_b_ten ,remote_car_single_motor_key_rel 
+0x4588 016707 beq control_l_r_ten ,remote_car_double_motor_key_rel 
+0x4589 016708 beq control_l_r_lr ,remote_car_single_motor_key_rel 
+0x458a 016709 rtn 
+:      016711 remote_car_device_layout_select:
+0x458b 016712 fetch 1 ,mem_remote_car_config_layout 
+0x458c 016713 fetcht 1 ,mem_remote_car_config_key_map 
+0x458d 016714 ior temp ,pdata 
+0x458e 016715 rtn 
+:      016718 remote_car_send_motor1_key0_press:
+0x458f 016719 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+0x4590 016720 branch remote_car_send_key 
+:      016721 remote_car_send_motor1_key1_press:
+0x4591 016722 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+0x4592 016723 branch remote_car_send_key 
+:      016724 remote_car_send_motor2_key2_press:
+0x4593 016725 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+0x4594 016726 branch remote_car_send_key 
+:      016727 remote_car_send_motor2_key3_press:
+0x4595 016728 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+0x4596 016729 branch remote_car_send_key 
+:      016732 remote_car_send_double_motor_key0_press:
+0x4597 016733 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+0x4598 016734 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+0x4599 016735 branch remote_car_send_key 
+:      016736 remote_car_send_double_motor_key1_press:
+0x459a 016737 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+0x459b 016738 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+0x459c 016739 branch remote_car_send_key 
+:      016740 remote_car_send_double_motor_key2_press:
+0x459d 016741 jam motor_negative ,mem_remote_car_24g_motor1_payload 
+0x459e 016742 jam motor_positive ,mem_remote_car_24g_motor2_payload 
+0x459f 016743 branch remote_car_send_key 
+:      016744 remote_car_send_double_motor_key3_press:
+0x45a0 016745 jam motor_positive ,mem_remote_car_24g_motor1_payload 
+0x45a1 016746 jam motor_negative ,mem_remote_car_24g_motor2_payload 
+0x45a2 016747 branch remote_car_send_key 
+:      016750 remote_car_send_attack_key4_press:
+0x45a3 016751 jam motor_positive ,mem_remote_car_24g_motor3_payload 
+0x45a4 016752 branch remote_car_send_key 
+:      016753 remote_car_send_attack_key5_press:
+0x45a5 016754 jam motor_negative ,mem_remote_car_24g_motor3_payload 
+0x45a6 016755 branch remote_car_send_key 
+:      016757 remote_car_send_fire_key6_press:
+0x45a7 016758 jam 0x01 ,mem_remote_car_24g_fire_send_payload 
+0x45a8 016759 branch remote_car_send_attack 
+:      016761 remote_car_single_motor_key_rel:
+0x45a9 016762 copy queue ,pdata 
+0x45aa 016763 beq 0 ,remote_car_send_motor1_key0_rel 
+0x45ab 016764 beq 1 ,remote_car_send_motor1_key1_rel 
+0x45ac 016765 beq 2 ,remote_car_send_motor2_key2_rel 
+0x45ad 016766 beq 3 ,remote_car_send_motor2_key3_rel 
+0x45ae 016767 rtn 
+:      016769 remote_car_double_motor_key_rel:
+0x45af 016770 copy queue ,pdata 
+0x45b0 016771 beq 0 ,remote_car_send_double_motor_key0_rel 
+0x45b1 016772 beq 1 ,remote_car_send_double_motor_key1_rel 
+0x45b2 016773 beq 2 ,remote_car_send_double_motor_key2_rel 
+0x45b3 016774 beq 3 ,remote_car_send_double_motor_key3_rel 
+0x45b4 016775 rtn 
+:      016777 remote_car_send_motor1_key0_rel:
+:      016778 remote_car_send_motor1_key1_rel:
+0x45b5 016779 jam motor_stop ,mem_remote_car_24g_motor1_payload 
+0x45b6 016780 branch remote_car_send_key 
+:      016781 remote_car_send_motor2_key2_rel:
+:      016782 remote_car_send_motor2_key3_rel:
+0x45b7 016783 jam motor_stop ,mem_remote_car_24g_motor2_payload 
+0x45b8 016784 branch remote_car_send_key 
+:      016786 remote_car_send_double_motor_key0_rel:
+:      016787 remote_car_send_double_motor_key1_rel:
+:      016788 remote_car_send_double_motor_key2_rel:
+:      016789 remote_car_send_double_motor_key3_rel:
+0x45b9 016790 jam motor_stop ,mem_remote_car_24g_motor1_payload 
+0x45ba 016791 jam motor_stop ,mem_remote_car_24g_motor2_payload 
+0x45bb 016792 branch remote_car_send_key 
+:      016794 remote_car_send_attack_key4_rel:
+:      016795 remote_car_send_attack_key5_rel:
+0x45bc 016796 jam motor_stop ,mem_remote_car_24g_motor3_payload 
+0x45bd 016797 branch remote_car_send_key 
+:      016799 remote_car_send_key:
+0x45be 016800 arg mem_remote_car_24g_motor_packet ,rega 
+0x45bf 016801 branch queue_push 
+:      016802 remote_car_send_attack:
+0x45c0 016803 arg mem_remote_car_24g_fire_packet ,rega 
+0x45c1 016804 branch queue_push 
+:      016806 remote_car_g24_package_data:
+0x45c2 016807 fetch 1 ,mem_remote_car_24g_pair_success_flag 
+0x45c3 016808 beq work_paired ,remote_car_g24_send_empty 
+0x45c4 016809 arg mem_remote_car_24g_tx_temp ,rega 
+0x45c5 016810 call queue_pop 
+0x45c6 016811 nbranch remote_car_moto_data ,user 
+:      016812 remote_car_g24_package_data_continue:
+0x45c7 016813 arg mem_remote_car_24g_tx_temp ,contr 
+0x45c8 016814 ifetch 1 ,contr 
+0x45c9 016815 copy pdata ,rega 
+0x45ca 016816 arg mem_remote_car_24g_tx_temp + 1 ,regb 
+0x45cb 016819 rtn 
+:      016821 remote_car_g24_send_empty:
+0x45cc 016822 jam 0 ,mem_remote_car_24g_pair_success_flag 
+0x45cd 016823 enable user 
+0x45ce 016824 arg 1 ,rega 
+0x45cf 016825 arg mem_remote_car_empty_packet ,regb 
+0x45d0 016826 rtn 
+:      016828 remote_car_moto_data:
+0x45d1 016829 fetch 1 ,mem_remote_car_24g_tx_temp + 3 
+0x45d2 016830 beq car_cmd_l_r_motor_control ,remote_car_moto_data_next 
+0x45d3 016831 beq car_cmd_f_b_motor_control ,remote_car_moto_data_next 
+0x45d4 016832 rtn 
+:      016833 remote_car_moto_data_next:
+0x45d5 016834 fetch 1 ,mem_remote_car_24g_tx_temp + 6 
+0x45d6 016835 nbranch remote_car_moto_data_enable_user ,blank 
+0x45d7 016836 fetch 1 ,mem_remote_car_24g_tx_temp + 8 
+0x45d8 016837 nbranch remote_car_moto_data_enable_user ,blank 
+0x45d9 016838 fetch 1 ,mem_remote_car_24g_tx_temp + 10 
+0x45da 016839 nbranch remote_car_moto_data_enable_user ,blank 
+0x45db 016840 rtn 
+:      016841 remote_car_moto_data_enable_user:
+0x45dc 016842 enable user 
+0x45dd 016843 branch remote_car_g24_package_data_continue 
+:      016851 shutter_init:
+0x45de 016852 rtn wake 
+0x45df 016853 hfetch 1 ,core_gpio_sel1 
+0x45e0 016854 and_into 0xfc ,pdata 
+0x45e1 016855 hstore 1 ,core_gpio_sel1 
+0x45e2 016856 setarg shutter_le_before_hibernate 
+0x45e3 016857 store 2 ,mem_cb_before_hibernate 
+0x45e4 016859 setarg shutter_process_lpm_before 
+0x45e5 016860 store 2 ,mem_cb_before_lpm 
+0x45e6 016862 setarg app_enter_hibernate 
+0x45e7 016863 store 2 ,mem_cb_discovry_timeout 
+0x45e8 016865 setarg shutter_process_idle 
+0x45e9 016866 store 2 ,mem_cb_idle_process 
+0x45ea 016868 setarg shutter_process_bb_event 
+0x45eb 016869 store 2 ,mem_cb_bb_event_process 
+0x45ec 016871 setarg shutter_le_scale_lpm_lock 
+0x45ed 016872 store 2 ,mem_cb_check_wakelock 
+0x45ee 016874 setarg ble_shutter_receive_data 
+0x45ef 016875 store 2 ,mem_cb_att_write 
+0x45f0 016877 setarg shutter_le_bb_event_timer 
+0x45f1 016878 store 2 ,mem_cb_event_timer 
+0x45f2 016880 setarg shutter_key_change 
+0x45f3 016881 store 2 ,mem_cb_shutter_keycan 
+0x45f4 016883 setarg shutter_soft_swtich_power_on 
+0x45f5 016884 store 2 ,mem_shutter_soft_switch_poweron_callback_function 
+0x45f6 016885 setarg shutter_soft_swtich_power_off 
+0x45f7 016886 store 2 ,mem_shutter_soft_switch_poweroff_callback_function 
+0x45f8 016888 call le_modified_name 
+0x45f9 016889 call shutter_load_bluetooth_config_by_user_config 
+0x45fa 016890 call shutter_init_bluetooth_config 
+0x45fb 016891 call shutter_init_param 
+0x45fc 016892 call keyscan_key_init 
+0x45fd 016893 call shutter_load_buffer_config_form_datarom 
+0x45fe 016894 call queue_init 
+0x45ff 016895 call ui_led_init_global 
+0x4600 016896 call shutter_load_bluetooth_config 
+0x4601 016897 call shutter_load_bluetooth_config_by_eeprom 
+0x4602 016899 bpatch patch1e_5 ,mem_patch1e 
+0x4603 016900 call classic_shutter_load_reconn_info 
+0x4604 016901 fetch 1 ,mem_shutter_hard_soft_switch_case 
+0x4605 016902 beq hard_switch ,shutter_hart_swtich_power_on 
+0x4606 016903 fetch 1 ,mem_shutter_soft_switch_button_gpio 
+0x4607 016904 store 1 ,mem_ui_button_gpio 
+0x4608 016905 branch ui_soft_swtich_init 
+:      016908 shutter_hart_swtich_power_on:
+0x4609 016909 jam ui_button_gpio_disable ,mem_ui_button_gpio 
+0x460a 016910 jam ss_state_power_on ,mem_shutter_soft_switch_power_state 
+0x460b 016911 branch shutter_start_reconnect 
+:      016915 shutter_le_scale_lpm_lock:
+0x460c 016916 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x460d 016917 beq ss_state_power_off ,app_get_lpm_wake_lock 
+0x460e 016918 call l2cap_malloc_get_full_map 
+0x460f 016919 fetch 1 ,mem_used_map 
+0x4610 016920 nbranch app_get_lpm_wake_lock ,blank 
+0x4611 016921 branch app_put_lpm_wake_lock 
+:      016925 shutter_process_bb_event:
+0x4612 016926 copy regc ,pdata 
+0x4613 016928 beq bt_evt_bb_connected ,classic_shutter_process_baseband_connect 
+0x4614 016929 beq bt_evt_bb_disconnected ,classic_shutter_process_baseband_disconnect 
+0x4615 016930 beq bt_evt_reconn_failed ,classic_shutter_process_reconnect_failed 
+0x4616 016931 beq bt_evt_setup_complete ,classic_shutter_process_setup_complete 
+0x4617 016932 beq bt_evt_hid_connected ,classic_shutter_process_hid_connect 
+0x4618 016933 beq bt_evt_hid_disconnected ,classic_shutter_process_hid_disconnect 
+0x4619 016934 beq bt_evt_hid_handshake ,classic_shutter_process_hid_handshake 
+0x461a 016935 beq bt_evt_reconn_page_timeout ,classic_shutter_process_reconnect_page_timeout 
+0x461b 016936 beq bt_evt_virtual_cable_unplug ,classic_shutter_process_virtual_cable_unplug 
+0x461c 016937 beq bt_evt_remote_unsniff ,classic_shutter_process_remote_unsniff 
+0x461d 016938 beq bt_evt_store_nvram ,classic_shutter_process_store_reconnect_information 
+0x461e 016940 beq bt_evt_le_connected ,ble_shutter_process_baseband_connect 
+0x461f 016941 beq bt_evt_le_disconnected ,ble_shutter_process_baseband_disconnect 
+0x4620 016942 beq bt_evt_le_reconnect_complete ,ble_shutter_process_reconnect_complete 
+0x4621 016943 beq bt_evt_le_parse_conn_papa_update_rsp ,ble_shutter_process_parse_connect_parameter_update_response 
+0x4622 016945 beq bt_evt_button_long_pressed ,shutter_process_soft_swtich_button_long_press 
+0x4623 016946 beq bt_evt_button_down ,shutter_process_soft_swtich_button_down 
+0x4624 016947 beq bt_evt_button_up ,shutter_process_soft_swtich_button_up 
+0x4625 016948 rtn 
+:      016953 classic_shutter_process_baseband_connect:
+0x4626 016954 jam 0 ,mem_classic_shutter_hid_disconn_count 
+0x4627 016955 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+0x4628 016956 rtn 
+:      016959 classic_shutter_process_baseband_disconnect:
+0x4629 016960 call classic_shutter_disconnect_clear_flag 
+0x462a 016961 branch classic_shutter_process_reconnect_failed 
+:      016963 classic_shutter_disconnect_clear_flag:
+0x462b 016964 jam app_handshake_null ,mem_app_handshake_flag 
+0x462c 016965 jam 0 ,mem_hid_handshake_timer_count 
+0x462d 016966 jam 0 ,mem_unsniff2sniff_timer_count 
+0x462e 016967 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+0x462f 016968 jam 0 ,mem_classic_shutter_hid_disconn_count 
+0x4630 016969 branch queue_init 
+:      016972 classic_shutter_process_reconnect_failed:
+0x4631 016973 call app_disconn_reason_clear 
+0x4632 016974 branch shutter_start_bluetooth_discovery 
+:      016977 classic_shutter_process_setup_complete:
+0x4633 016978 call shutter_stop_bluetooth_discovery 
+0x4634 016979 branch app_led_stop_blink 
+:      016982 classic_shutter_process_hid_connect:
+0x4635 016983 setarg hid_handshake_timeout 
+0x4636 016984 store 1 ,mem_hid_handshake_timer_count 
+0x4637 016985 rtn 
+:      016988 classic_shutter_process_hid_disconnect:
+0x4638 016989 jam 0 ,mem_classic_shutter_cable_unplug_conut 
+0x4639 016990 setarg flag_shutter_hid_disconn_timeout 
+0x463a 016991 store 1 ,mem_classic_shutter_hid_disconn_count 
+0x463b 016992 rtn 
+:      016995 classic_shutter_process_hid_handshake:
+0x463c 016996 fetch 1 ,mem_app_handshake_flag 
+0x463d 016997 rtneq app_handshake_done 
+0x463e 016998 jam app_handshake_done ,mem_app_handshake_flag 
+0x463f 016999 call app_lpm_mult_enable 
+0x4640 017000 call app_store_reconn_info 
+0x4641 017001 call shutter_stop_bluetooth_discovery 
+0x4642 017002 call app_led_off 
+0x4643 017003 branch app_bt_enter_sniff 
+:      017006 classic_shutter_process_reconnect_page_timeout:
+0x4644 017007 branch classic_shutter_process_reconnect_failed 
+:      017010 classic_shutter_process_virtual_cable_unplug:
+0x4645 017011 setarg flag_shutter_cable_unplug_timeout 
+0x4646 017012 store 1 ,mem_classic_shutter_cable_unplug_conut 
+0x4647 017013 rtn 
+:      017016 classic_shutter_process_remote_unsniff:
+0x4648 017017 branch app_start_auto_sniff 
+:      017021 classic_shutter_process_store_reconnect_information:
+0x4649 017022 arg nvram_eeprom_offset ,regb 
+0x464a 017023 fetch 1 ,mem_nv_data_number 
+0x464b 017024 mul32 pdata ,34 ,temp 
+0x464c 017025 fetch 2 ,mem_nv_data_ptr 
+0x464d 017026 copy pdata ,rega 
+0x464e 017027 branch iicd_write_eep_data 
+:      017029 classic_shutter_load_reconn_info:
+0x464f 017030 arg nvram_eeprom_offset ,regb 
+0x4650 017031 fetch 1 ,mem_shutter_bluetooth_type 
+0x4651 017032 rtnbit0 classic_shutter 
+0x4652 017033 fetch 1 ,mem_nv_data_number 
+0x4653 017034 rtn blank 
+0x4654 017035 mul32 pdata ,34 ,temp 
+0x4655 017036 fetch 2 ,mem_nv_data_ptr 
+0x4656 017037 copy pdata ,rega 
+0x4657 017038 branch iicd_read_eep_data 
+:      017042 ble_shutter_process_baseband_connect:
+0x4658 017043 call shutter_stop_bluetooth_discovery 
+0x4659 017044 setarg 0 
+0x465a 017045 store 2 ,mem_ble_shutter_reconn_timer 
+0x465b 017046 branch app_led_off 
+:      017049 ble_shutter_process_baseband_disconnect:
+0x465c 017050 call queue_init 
+0x465d 017051 jam 0 ,mem_ble_shutter_enable_notify 
+0x465e 017052 branch shutter_start_reconnect 
+:      017055 ble_shutter_process_reconnect_complete:
+0x465f 017056 call queue_init 
+0x4660 017057 jam 1 ,mem_ble_shutter_enable_notify 
+0x4661 017058 fetch 8 ,mem_ble_shutter_interval_min 
+0x4662 017059 store 8 ,mem_le_interval_min 
+0x4663 017060 call app_lpm_mult_enable 
+0x4664 017061 branch le_l2cap_tx_update_req 
+:      017064 ble_shutter_process_parse_connect_parameter_update_response:
+0x4665 017065 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x4666 017066 rtneq ble_signaling_connect_parameter_update_accepted 
+0x4667 017067 fetch 8 ,mem_ble_shutter_interval_min_new 
+0x4668 017068 rtn blank 
+0x4669 017069 store 8 ,mem_le_interval_min 
+0x466a 017070 branch le_l2cap_tx_update_req 
+:      017074 shutter_process_soft_swtich_button_long_press:
+0x466b 017075 branch ui_soft_switch_botton_long_press 
+:      017077 shutter_process_soft_swtich_button_down:
+0x466c 017078 fetch 1 ,mem_shutter_hard_soft_switch_case 
+0x466d 017079 rtneq hard_switch 
+0x466e 017080 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x466f 017081 rtnne ss_state_power_on 
+0x4670 017082 call shutter_store_currenct_led_state 
+0x4671 017083 branch app_led_on 
+:      017085 shutter_store_currenct_led_state:
+0x4672 017086 jam 1 ,mem_shutter_soft_swtich_botton_down 
+0x4673 017087 arg 11 ,loopcnt 
+0x4674 017088 arg mem_shutter_soft_swtich_led_struct_temp ,contw 
+0x4675 017089 arg mem_shutter_led_struct_app_led ,contr 
+0x4676 017090 branch memcpy 
+:      017092 shutter_process_soft_swtich_button_up:
+0x4677 017093 fetch 1 ,mem_shutter_hard_soft_switch_case 
+0x4678 017094 rtneq hard_switch 
+0x4679 017095 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x467a 017096 beq ss_state_power_on ,shutter_load_currenct_led_state 
+0x467b 017097 branch ui_soft_switch_botton_up 
+:      017099 shutter_load_currenct_led_state:
+0x467c 017100 fetch 1 ,mem_shutter_soft_swtich_botton_down 
+0x467d 017101 rtnne 1 
+0x467e 017102 jam 0 ,mem_shutter_soft_swtich_botton_down 
+0x467f 017103 fetch 2 ,mem_ui_state_map 
+0x4680 017104 bbit1 ui_state_bt_connected ,app_led_off 
+0x4681 017105 bbit1 ui_state_ble_connected ,app_led_off 
+0x4682 017106 arg 11 ,loopcnt 
+0x4683 017107 arg mem_shutter_soft_swtich_led_struct_temp ,contr 
+0x4684 017108 arg mem_shutter_led_struct_app_led ,contw 
+0x4685 017109 branch memcpy 
+:      017114 shutter_le_bb_event_timer:
+0x4686 017116 call shutter_check_sleep_timer 
+0x4687 017119 call shutter_check_power_off_timer 
+0x4688 017122 call classic_shutter_check_unplug_timer 
+0x4689 017123 call classic_shutter_hid_handshake_timer 
+0x468a 017124 call classic_shutter_hid_disconn_timer 
+0x468b 017127 branch ble_shutter_reconn_timer 
+:      017131 shutter_check_sleep_timer:
+0x468c 017132 arg mem_shutter_sleep_timer ,regc 
+0x468d 017133 arg shutter_sleep_timeout ,regb 
+0x468e 017134 branch timer_single_step_2b 
+:      017135 shutter_sleep_timeout:
+0x468f 017136 jam ss_state_power_off ,mem_shutter_soft_switch_power_state 
+0x4690 017137 call app_led_off 
+0x4691 017138 call shutter_disconnect_current_connection 
+0x4692 017139 branch shutter_wait_power_off 
+:      017142 shutter_check_power_off_timer:
+0x4693 017143 arg mem_shutter_power_off_timer ,regc 
+0x4694 017144 arg shutter_check_power_off_timeout ,regb 
+0x4695 017145 branch timer_single_step 
+:      017147 shutter_check_power_off_timeout:
+0x4696 017148 fetch 2 ,mem_ui_state_map 
+0x4697 017149 bbit1 ui_state_ble_connected ,shutter_wait_power_off 
+0x4698 017150 bbit1 ui_state_bt_connected ,shutter_wait_power_off 
+0x4699 017151 fetch 1 ,mem_shutter_led_struct_app_led_type 
+0x469a 017152 beq ui_led_state_blink_start ,shutter_wait_power_off 
+0x469b 017153 beq ui_led_state_blink_lighting ,shutter_wait_power_off 
+0x469c 017154 beq ui_led_state_blink_darking ,shutter_wait_power_off 
+0x469d 017155 branch app_enter_hibernate 
+:      017159 classic_shutter_check_unplug_timer:
+0x469e 017160 arg mem_classic_shutter_cable_unplug_conut ,regc 
+0x469f 017161 arg classic_shutter_unplug_timeout ,regb 
+0x46a0 017162 branch timer_single_step 
+:      017164 classic_shutter_unplug_timeout:
+0x46a1 017165 fetch 1 ,mem_control_tasks 
+0x46a2 017166 set1 l2cap_disconnect_interrupt ,pdata 
+0x46a3 017167 set1 l2cap_disconnect_control ,pdata 
+0x46a4 017168 store 1 ,mem_control_tasks 
+0x46a5 017169 rtn 
+:      017171 classic_shutter_hid_handshake_timer:
+0x46a6 017172 arg mem_hid_handshake_timer_count ,regc 
+0x46a7 017173 arg classic_shutter_process_hid_handshake ,regb 
+0x46a8 017174 branch timer_single_step 
+:      017176 classic_shutter_hid_disconn_timer:
+0x46a9 017177 arg mem_classic_shutter_hid_disconn_count ,regc 
+0x46aa 017178 arg app_bt_disconnect ,regb 
+0x46ab 017179 branch timer_single_step 
+:      017184 ble_shutter_reconn_timer:
+0x46ac 017185 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x46ad 017186 rtnne ss_state_power_on 
+0x46ae 017187 arg mem_ble_shutter_reconn_timer ,regc 
+0x46af 017188 arg shutter_start_bluetooth_discovery ,regb 
+0x46b0 017189 branch timer_single_step_2b 
+:      017192 shutter_process_idle:
+0x46b1 017193 call shutter_send_data_to_master 
+0x46b2 017194 branch keyscan_key_process 
+:      017197 shutter_process_lpm_before:
+0x46b3 017198 branch keyscan_process_lpm_before 
+:      017200 shutter_le_before_hibernate:
+0x46b4 017201 call gpio_set_before_lpm_common 
+0x46b5 017202 branch shutter_process_lpm_before 
+:      017208 shutter_stop_bluetooth_discovery:
+0x46b6 017209 fetch 1 ,mem_shutter_bluetooth_type 
+0x46b7 017210 bbit1 classic_shutter ,classic_shutter_stop_bluetooth_discovery 
+0x46b8 017211 bbit1 ble_shutter ,ble_shutter_stop_bluetooth_discovery 
+0x46b9 017212 rtn 
+:      017214 ble_shutter_stop_bluetooth_discovery:
+0x46ba 017215 fetch 2 ,mem_ble_shutter_connect_timeout 
+0x46bb 017216 store 2 ,mem_shutter_sleep_timeout 
+0x46bc 017217 store 2 ,mem_shutter_sleep_timer 
+0x46bd 017218 branch app_ble_stop_adv 
+:      017220 classic_shutter_stop_bluetooth_discovery:
+0x46be 017221 fetch 2 ,mem_classic_shutter_connect_timeout 
+0x46bf 017222 store 2 ,mem_shutter_sleep_timeout 
+0x46c0 017223 store 2 ,mem_shutter_sleep_timer 
+0x46c1 017224 branch app_bt_stop_discovery 
+:      017226 shutter_start_bluetooth_discovery:
+0x46c2 017227 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x46c3 017228 rtnne ss_state_power_on 
+0x46c4 017229 fetch 1 ,mem_shutter_bluetooth_type 
+0x46c5 017230 bbit1 classic_shutter ,classic_shutter_start_discovery 
+0x46c6 017231 bbit1 ble_shutter ,ble_shutter_start_discovery 
+0x46c7 017232 rtn 
+:      017234 classic_shutter_start_discovery:
+0x46c8 017235 fetch 2 ,mem_classic_shutter_discovery_timeout ,
+0x46c9 017236 store 2 ,mem_shutter_sleep_timeout 
+0x46ca 017237 store 2 ,mem_shutter_sleep_timer 
+0x46cb 017238 branch app_bt_start_discovery_short 
+:      017240 ble_shutter_start_discovery:
+0x46cc 017241 fetch 2 ,mem_ui_state_map 
+0x46cd 017242 rtnbit1 ui_state_ble_connected 
+0x46ce 017243 fetch 2 ,mem_ble_shutter_discovery_timeout 
+0x46cf 017244 store 2 ,mem_shutter_sleep_timeout 
+0x46d0 017245 store 2 ,mem_shutter_sleep_timer 
+0x46d1 017246 fetch 2 ,mem_ble_shutter_discovery_adv_interval 
+0x46d2 017247 call shutter_ble_adv_interval_set 
+0x46d3 017248 call app_led_start_blink 
+0x46d4 017249 fetch 4 ,mem_ble_shutter_discovery_blink_on_time 
+0x46d5 017250 store 4 ,mem_shutter_led_struct_app_led_on_time 
+0x46d6 017251 fetch 2 ,mem_ui_state_map 
+0x46d7 017252 rtnbit1 ui_state_ble_adv 
+0x46d8 017253 branch app_ble_start_adv 
+:      017256 shutter_start_reconnect:
+0x46d9 017257 fetch 1 ,mem_shutter_soft_switch_power_state 
+0x46da 017258 rtnne ss_state_power_on 
+0x46db 017259 fetch 1 ,mem_shutter_bluetooth_type 
+0x46dc 017260 bbit1 classic_shutter ,classic_shutter_start_reconnect 
+0x46dd 017261 bbit1 ble_shutter ,ble_shutter_start_reconnect 
+0x46de 017262 rtn 
+:      017264 classic_shutter_start_reconnect:
+0x46df 017265 call app_check_reconn_target 
+0x46e0 017266 branch shutter_start_bluetooth_discovery ,blank 
+0x46e1 017267 call app_led_on 
+0x46e2 017268 call app_bt_stop_discovery 
+0x46e3 017269 branch app_bt_start_reconnect 
+:      017271 ble_shutter_start_reconnect:
+0x46e4 017272 fetch 2 ,mem_ble_shutter_reconn_timer 
+0x46e5 017273 fetcht 2 ,mem_ble_shutter_reconn_timeout 
+0x46e6 017274 storet 2 ,mem_ble_shutter_reconn_timer 
+0x46e7 017275 nrtn blank 
+0x46e8 017276 fetch 2 ,mem_ble_shutter_reconn_dav_interval 
+0x46e9 017277 call shutter_ble_adv_interval_set 
+0x46ea 017278 call app_led_start_blink 
+0x46eb 017279 fetch 4 ,mem_ble_shutter_reconn_blink_on_time 
+0x46ec 017280 store 4 ,mem_shutter_led_struct_app_led_on_time 
+0x46ed 017281 fetch 2 ,mem_ui_state_map 
+0x46ee 017282 rtnbit1 ui_state_ble_adv 
+0x46ef 017283 branch app_ble_start_adv 
+:      017286 shutter_ble_adv_interval_set:
+0x46f0 017287 store 2 ,mem_lpm_interval 
+0x46f1 017288 increase -4 ,pdata 
+0x46f2 017289 store 2 ,mem_le_adv_interval 
+0x46f3 017290 rtn 
+:      017293 shutter_disconnect_current_connection:
+0x46f4 017294 fetch 2 ,mem_ui_state_map 
+0x46f5 017295 bbit1 ui_state_ble_connected ,app_ble_disconnect 
+0x46f6 017296 bbit1 ui_state_bt_connected ,app_bt_disconnect 
+0x46f7 017297 branch shutter_stop_bluetooth_discovery 
+:      017301 app_check_reconn_target:
+0x46f8 017302 fetch 1 ,mem_nv_data_number 
+0x46f9 017303 copy pdata ,loopcnt 
+0x46fa 017304 fetch 2 ,mem_nv_data_ptr 
+0x46fb 017305 copy pdata ,rega 
+:      017306 app_check_reconn_target_loop:
+0x46fc 017307 ifetch 2 ,rega 
+0x46fd 017308 beq 0 ,found_reconn_device 
+0x46fe 017309 increase nv_data_len ,rega 
+0x46ff 017310 loop app_check_reconn_target_loop 
+0x4700 017311 branch enable_blank 
+:      017313 found_reconn_device:
+0x4701 017314 ifetch 6 ,contr 
+0x4702 017315 store 6 ,mem_hci_plap 
+0x4703 017316 increase 10 ,contr 
+0x4704 017317 arg mem_link_key ,contw 
+0x4705 017318 call memcpy16 
+0x4706 017319 call check_link_key_load 
+0x4707 017320 branch disable_blank 
+:      017326 shutter_check_data_enable:
+0x4708 017327 call disable_user 
+0x4709 017328 fetch 2 ,mem_ui_state_map 
+0x470a 017329 bbit1 ui_state_bt_connected ,shutter_check_bt_data_enable 
+0x470b 017330 bbit1 ui_state_ble_connected ,shutter_check_ble_data_enable 
+0x470c 017331 rtn 
+:      017333 shutter_check_bt_data_enable:
+0x470d 017334 fetch 1 ,mem_hid_interrupt_state 
+0x470e 017335 rtnne 0x3f 
+0x470f 017336 branch enable_user 
+:      017338 shutter_check_ble_data_enable:
+0x4710 017339 fetch 1 ,mem_ble_shutter_enable_notify 
+0x4711 017340 rtn blank 
+0x4712 017341 branch enable_user 
+:      017346 shutter_check_bluetooth_conn:
+0x4713 017347 call disable_user 
+0x4714 017348 fetch 2 ,mem_ui_state_map 
+0x4715 017349 rtnbit1 ui_state_bt_connected 
+0x4716 017350 rtnbit1 ui_state_ble_connected 
+0x4717 017351 branch enable_user 
+:      017355 shutter_change_bluetooth_status_bt_disconn:
+0x4718 017356 fetch 1 ,mem_shutter_bluetooth_type 
+0x4719 017357 bbit1 classic_shutter ,classic_shutter_change_bluetooth_status_bt_disconn 
+0x471a 017358 bbit1 ble_shutter ,ble_shutter_change_bluetooth_status_bt_disconn 
+0x471b 017359 rtn 
+:      017361 classic_shutter_change_bluetooth_status_bt_disconn:
+0x471c 017362 fetch 1 ,mem_scan_mode 
+0x471d 017363 rtnne 0x03 
+0x471e 017364 branch shutter_start_reconnect 
+:      017366 ble_shutter_change_bluetooth_status_bt_disconn:
+0x471f 017367 branch shutter_start_reconnect 
+:      017370 shutter_check_send_data:
+0x4720 017371 disable user2 
+0x4721 017372 fetch 2 ,mem_shutter_sleep_timeout 
+0x4722 017373 store 2 ,mem_shutter_sleep_timer 
+0x4723 017375 call shutter_check_bluetooth_conn 
+0x4724 017376 branch shutter_change_bluetooth_status_bt_disconn ,user 
+0x4725 017378 call shutter_check_data_enable 
+0x4726 017379 nrtn user 
+0x4727 017380 enable user2 
+0x4728 017381 rtn 
+:      017385 shutter_key_change:
+0x4729 017386 call shutter_check_send_data 
+0x472a 017387 nrtn user2 
+0x472b 017388 deposit rega 
+0x472c 017389 branch shutter_key_release ,blank 
+:      017390 shutter_key_press:
+0x472d 017391 call app_led_on 
+0x472e 017392 arg mem_key0_press ,regc 
+0x472f 017393 branch push_queue_press_or_release 
+:      017395 shutter_key_release:
+0x4730 017396 call app_led_off 
+0x4731 017397 arg mem_key0_release ,regc 
+:      017399 push_queue_press_or_release:
+0x4732 017400 arg max_queue_num ,pdata 
+0x4733 017401 imul32 queue ,pdata 
+0x4734 017402 iadd regc ,regc 
+:      017405 push_buffer_in_queue:
+0x4735 017406 ifetch 1 ,regc 
+0x4736 017407 rtn blank 
+0x4737 017408 call queue_push_one_byte 
+0x4738 017409 increase 1 ,regc 
+0x4739 017410 branch push_buffer_in_queue 
+:      017413 shutter_send_data_to_master:
+0x473a 017414 fetch 2 ,mem_ui_state_map 
+0x473b 017415 bbit1 ui_state_ble_connected ,pop_queue_to_ble_data 
+0x473c 017416 bbit1 ui_state_bt_connected ,pop_queue_to_classic_data 
+0x473d 017417 rtn 
+:      017419 pop_queue_to_ble_data:
+0x473e 017420 call le_fifo_check_nearly_full 
+0x473f 017421 nrtn blank 
+0x4740 017422 call queue_pop_one_byte 
+0x4741 017423 nrtn user 
+0x4742 017424 pincrease -1 
+0x4743 017425 mul32 pdata ,shutter_ble_data_buffer ,pdata 
+0x4744 017426 arg mem_ble_data_buffer1 ,temp 
+0x4745 017427 iadd temp ,contr 
+:      017428 le_send_notify_from_list:
+0x4746 017429 ifetch 1 ,contr 
+0x4747 017430 copy pdata ,rega 
+0x4748 017431 ifetcht 2 ,contr 
+0x4749 017432 call store_contr 
+0x474a 017433 call le_att_malloc_tx_notify 
+0x474b 017434 copy rega ,loopcnt 
+0x474c 017435 call get_contr 
+0x474d 017436 branch memcpy 
+:      017439 pop_queue_to_classic_data:
+0x474e 017440 call l2cap_malloc_is_fifo_nearly_full 
+0x474f 017441 nrtn blank 
+0x4750 017442 call queue_pop_one_byte 
+0x4751 017443 nrtn user 
+0x4752 017444 pincrease -1 
+0x4753 017445 mul32 pdata ,shutter_classic_data_buffer ,pdata 
+0x4754 017446 arg mem_classic_data_buffer1 ,temp 
+0x4755 017447 iadd temp ,contr 
+0x4756 017448 ifetch 5 ,contr 
+0x4757 017449 store 5 ,mem_classic_data_buffer 
+:      017450 classic_send_hid_data:
+0x4758 017451 fetch 1 ,mem_classic_data_buffer 
+0x4759 017452 copy pdata ,rega 
+0x475a 017453 call hid_malloc_tx_buff 
+0x475b 017454 fetch 2 ,mem_hid_int_remote_cid 
+0x475c 017455 istore 2 ,contw 
+0x475d 017456 setarg 0xa1 
+0x475e 017457 istore 1 ,contw 
+0x475f 017458 fetch 4 ,mem_classic_data_buffer + 1 
+0x4760 017459 istore 9 ,contw 
+0x4761 017460 rtn 
+:      017464 queue_push_one_byte:
+0x4762 017465 store 1 ,mem_pdatatemp 
+0x4763 017466 arg mem_pdatatemp ,rega 
+0x4764 017467 branch queue_push 
+:      017469 queue_pop_one_byte:
+0x4765 017470 arg mem_pdatatemp ,rega 
+0x4766 017471 call queue_pop 
+0x4767 017472 nrtn user 
+0x4768 017473 fetch 1 ,mem_pdatatemp 
+0x4769 017474 rtn 
+:      017477 ble_shutter_receive_data:
+0x476a 017478 fetch 2 ,mem_le_att_handle 
+0x476b 017479 beq gatt_keyboard_write_handle ,ble_shutter_process_reconnect_complete 
+0x476c 017480 rtn 
+:      017482 shutter_init_param:
+0x476d 017483 setarg 0x02 
+0x476e 017484 store 1 ,mem_shutter_power_off_timeout 
+0x476f 017486 setarg 0x00200008 
+0x4770 017487 store 4 ,mem_ble_shutter_interval_min 
+0x4771 017488 setarg 0x012c0005 
+0x4772 017489 istore 4 ,contw 
+0x4773 017492 jam 0x17 ,mem_le_local_mtu 
+0x4774 017495 setarg 0x1b 
+0x4775 017496 store 2 ,mem_le_pairing_handle 
+0x4776 017497 call le_set_config_fixed_ltk 
+0x4777 017498 call le_set_fixed_ltk 
+0x4778 017499 call le_set_justwork 
+0x4779 017500 branch le_set_config_read_authentication 
+:      017503 shutter_load_buffer_config_form_datarom:
+0x477a 017505 arg ble_key_value_list_size ,loopcnt 
+0x477b 017506 arg mem_ble_data_buffer1 ,contw 
+0x477c 017507 arg ble_shutter_key_value_list ,contr 
+0x477d 017508 call memcpy_fast 
+0x477e 017509 arg bt_key_value_list_size ,loopcnt 
+0x477f 017510 arg mem_classic_data_buffer1 ,contw 
+0x4780 017511 arg classic_shutter_key_value_list ,contr 
+0x4781 017512 branch memcpy_fast 
+:      017515 shutter_load_ble_gatt_form_datarom:
+0x4782 017516 arg ble_gatt_list_size ,loopcnt 
+0x4783 017517 arg ble_shutter_gatt_list ,contr 
+0x4784 017518 branch memcpy_fast 
+:      017521 shutter_load_bt_sdp_form_datarom:
+0x4785 017522 arg bt_sdp_list_size ,loopcnt 
+0x4786 017523 arg classic_shutter_sdp_list ,contr 
+0x4787 017524 branch memcpy_fast 
+:      017528 shutter_init_bluetooth_config:
+0x4788 017529 call shutter_check_load_config_flag 
+0x4789 017530 nrtn user 
+0x478a 017531 fetch 1 ,mem_shutter_config_select_gpio1 
+0x478b 017532 call shutter_init_bluetooth_config_gpio_input 
+0x478c 017533 fetch 1 ,mem_shutter_config_select_gpio2 
+0x478d 017534 call shutter_init_bluetooth_config_gpio_input 
+0x478e 017535 fetch 1 ,mem_shutter_config_select_gpio3 
+0x478f 017536 branch shutter_init_bluetooth_config_gpio_input 
+:      017538 shutter_init_bluetooth_config_gpio_input:
+0x4790 017539 rtn blank 
+0x4791 017540 or pdata ,0x80 ,temp 
+0x4792 017541 branch gpio_config_input_nowake 
+:      017544 shutter_load_bluetooth_config:
+0x4793 017545 call shutter_check_load_config_flag 
+0x4794 017546 nrtn user 
+0x4795 017547 call shutter_load_bluetooth_config_label 
+0x4796 017548 branch shutter_load_bluetooth_config_by_otp 
+:      017550 shutter_load_bluetooth_config_label:
+0x4797 017551 arg 0 ,rega 
+0x4798 017552 fetch 1 ,mem_shutter_config_select_gpio1 
+0x4799 017553 call shutter_load_bluetooth_config_read_gpio_input 
+0x479a 017554 nsetflag blank ,0 ,rega 
+0x479b 017555 fetch 1 ,mem_shutter_config_select_gpio2 
+0x479c 017556 call shutter_load_bluetooth_config_read_gpio_input 
+0x479d 017557 nsetflag blank ,1 ,rega 
+0x479e 017558 fetch 1 ,mem_shutter_config_select_gpio3 
+0x479f 017559 call shutter_load_bluetooth_config_read_gpio_input 
+0x47a0 017560 nsetflag blank ,2 ,rega 
+0x47a1 017561 copy rega ,pdata 
+0x47a2 017562 store 1 ,mem_shutter_config_label 
+0x47a3 017563 fetch 1 ,mem_shutter_config_size 
+0x47a4 017564 imul32 rega ,pdata 
+0x47a5 017565 fetcht 2 ,mem_shutter_config_otp_base_address 
+0x47a6 017566 iadd temp ,pdata 
+0x47a7 017567 store 2 ,mem_shutter_config_otp_addr 
+0x47a8 017568 rtn 
+:      017570 shutter_load_bluetooth_config_read_gpio_input:
+0x47a9 017571 rtn blank 
+0x47aa 017572 or pdata ,0x80 ,temp 
+0x47ab 017573 call gpio_get_bit 
+0x47ac 017574 nbranch enable_blank ,true 
+0x47ad 017575 branch disable_blank 
+:      017578 shutter_check_load_config_flag:
+0x47ae 017579 call disable_user 
+0x47af 017580 fetch 1 ,mem_shutter_config_user_size 
+0x47b0 017581 nrtn blank 
+0x47b1 017582 fetch 1 ,mem_shutter_config_enable 
+0x47b2 017583 rtn blank 
+0x47b3 017584 branch enable_user 
+:      017587 shutter_load_bluetooth_config_by_otp:
+0x47b4 017588 call otp_enable_chgpump 
+0x47b5 017589 fetch 2 ,mem_shutter_config_otp_addr 
+0x47b6 017590 arg mem_shutter_config_data_temp ,rega 
+0x47b7 017591 fetcht 1 ,mem_shutter_config_size 
+0x47b8 017592 call otpd_read_data 
+0x47b9 017593 call otp_disable_chgpump 
+:      017594 shutter_load_bluetooth_config_store_name:
+0x47ba 017595 fetch 1 ,mem_shutter_config_data_temp 
+0x47bb 017596 copy pdata ,loopcnt 
+0x47bc 017597 store 1 ,mem_le_name_len 
+0x47bd 017598 call memcpy_fast 
+0x47be 017599 fetch 1 ,mem_shutter_config_data_temp 
+0x47bf 017600 copy pdata ,loopcnt 
+0x47c0 017601 store 1 ,mem_local_name_length 
+0x47c1 017602 call memcpy_fast 
+0x47c2 017603 ifetch 1 ,contr 
+0x47c3 017604 store 1 ,mem_shutter_key_num 
+0x47c4 017605 ifetch 1 ,contr 
+0x47c5 017606 store 1 ,mem_shutter_hard_soft_switch_case 
+0x47c6 017607 rtn 
+:      017610 shutter_load_bluetooth_config_by_eeprom:
+0x47c7 017611 fetch 1 ,mem_shutter_bluetooth_type 
+0x47c8 017612 rtnbit0 classic_shutter 
+0x47c9 017613 arg 3 ,temp 
+0x47ca 017614 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
+0x47cb 017615 copy pdata ,regb 
+0x47cc 017616 arg mem_shutter_config_eeprom_start_flag ,rega 
+0x47cd 017617 call iicd_read_eep_data 
+0x47ce 017618 fetcht 2 ,mem_shutter_config_eeprom_start_flag 
+0x47cf 017619 setarg shutter_eeprom_config_crc 
+0x47d0 017620 isub temp ,null 
+0x47d1 017621 nrtn zero 
+0x47d2 017622 fetch 1 ,mem_shutter_config_user_size 
+0x47d3 017623 rtn blank 
+0x47d4 017624 copy pdata ,temp 
+0x47d5 017625 fetch 2 ,mem_shutter_config_eeprom_offset_addr 
+0x47d6 017626 add pdata ,3 ,regb 
+0x47d7 017627 arg mem_shutter_config_data_temp ,rega 
+0x47d8 017628 call iicd_read_eep_data 
+0x47d9 017629 branch shutter_store_config 
+:      017631 shutter_load_bluetooth_config_by_user_config:
+0x47da 017632 fetch 2 ,mem_shutter_config_user_otp_address 
+0x47db 017633 rtn blank 
+0x47dc 017634 call otp_enable_chgpump 
+0x47dd 017635 arg 1 ,temp 
+0x47de 017636 arg mem_shutter_config_user_size ,rega 
+0x47df 017637 call otpd_read_data 
+0x47e0 017639 fetch 1 ,mem_shutter_config_user_size 
+0x47e1 017640 rtn blank 
+0x47e2 017642 fetch 2 ,mem_shutter_config_user_otp_address 
+0x47e3 017643 pincrease 1 
+0x47e4 017644 arg mem_shutter_config_data_temp ,rega 
+0x47e5 017645 fetcht 1 ,mem_shutter_config_user_size 
+0x47e6 017646 call otpd_read_data 
+0x47e7 017647 call otp_disable_chgpump 
+:      017648 shutter_store_config:
+0x47e8 017649 call shutter_load_bluetooth_config_store_name 
+:      017650 shutter_load_bluetooth_config_custom:
+0x47e9 017651 ifetch 2 ,contr 
+0x47ea 017652 rtn blank 
+0x47eb 017653 copy pdata ,contw 
+0x47ec 017654 ifetcht 1 ,contr 
+0x47ed 017655 copy temp ,loopcnt 
+0x47ee 017656 call memcpy 
+0x47ef 017657 branch shutter_load_bluetooth_config_custom 
+:      017661 shutter_random_mac_addr:
+0x47f0 017662 fetch 1 ,mem_shutter_bluetooth_type 
+0x47f1 017663 rtnbit0 classic_shutter 
+0x47f2 017664 fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
+0x47f3 017665 copy pdata ,regb 
+0x47f4 017666 arg 4 ,temp 
+0x47f5 017667 arg mem_shutter_random_mac_data_temp ,rega 
+0x47f6 017668 call iicd_read_eep_data 
+0x47f7 017669 fetch 1 ,mem_shutter_random_mac_data_temp 
+0x47f8 017670 bne 1 ,shutter_write_random_mac_addr_to_eeprom 
+:      017671 shutter_write_random_mac_addr_to_eeprom:
+0x47f9 017672 setarg 1 
+0x47fa 017673 store 1 ,mem_shutter_random_mac_data_temp 
+0x47fb 017674 force 3 ,loopcnt 
+0x47fc 017675 call generate_random_loop 
+0x47fd 017676 fetch 2 ,mem_classic_shutter_random_mac_offset_addr 
+0x47fe 017677 copy pdata ,regb 
+0x47ff 017678 arg 4 ,temp 
+0x4800 017679 arg mem_shutter_random_mac_data_temp ,rega 
+0x4801 017680 call iicd_write_eep_data 
+:      017681 shutter_write_random_mac_addr:
+0x4802 017682 fetch 3 ,mem_shutter_random_mac_data_temp + 1 
+0x4803 017683 store 3 ,mem_lap 
+0x4804 017684 store 3 ,mem_le_lap 
+0x4805 017685 rtn 
+:      017688 shutter_soft_swtich_power_on:
+0x4806 017689 branch shutter_start_reconnect 
+:      017692 shutter_soft_swtich_power_off:
+0x4807 017693 arg 0 ,rega 
+0x4808 017694 arg mem_shutter_power_off_led_style ,regc 
+0x4809 017695 call ui_led_set_style_global 
+0x480a 017696 call shutter_disconnect_current_connection 
+:      017697 shutter_wait_power_off:
+0x480b 017698 fetch 1 ,mem_shutter_power_off_timeout 
+0x480c 017699 store 1 ,mem_shutter_power_off_timer 
+0x480d 017700 rtn 
+:      017704 ui_soft_swtich_init:
+0x480e 017705 setarg ss_state_power_up 
+0x480f 017706 call ui_soft_swtich_init_power_on_time 
+0x4810 017707 jam ui_button_state_up ,mem_ui_button_last_state 
+0x4811 017708 call ui_button_init 
+0x4812 017709 call ui_button_polling 
+0x4813 017710 fetch 2 ,mem_ui_state_map 
+0x4814 017711 rtnbit1 ui_state_btn_down 
+0x4815 017712 branch app_enter_hibernate 
+:      017714 ui_soft_swtich_init_power_on_time:
+0x4816 017715 fetcht 2 ,mem_power_param_ptr 
+0x4817 017716 istore 1 ,temp 
+0x4818 017717 ifetch 1 ,contw 
+0x4819 017718 store 1 ,mem_ui_button_timeout 
+0x481a 017719 rtn 
+:      017722 ui_soft_switch_botton_up:
+0x481b 017723 fetch 2 ,mem_power_param_ptr 
+0x481c 017724 ifetch 1 ,pdata 
+0x481d 017725 rtnne ss_state_power_up 
+0x481e 017726 branch app_enter_hibernate 
+:      017729 ui_soft_switch_botton_long_press:
+0x481f 017730 fetcht 2 ,mem_power_param_ptr 
+0x4820 017731 ifetch 1 ,temp 
+0x4821 017732 beq ss_state_power_on ,ui_soft_switch_power_off 
+:      017733 ui_soft_switch_power_on:
+0x4822 017734 setarg ss_state_power_on 
+0x4823 017735 fetcht 2 ,mem_power_param_ptr 
+0x4824 017736 istore 1 ,temp 
+0x4825 017737 add temp ,ss_power_off_time ,contr 
+0x4826 017738 ifetch 1 ,contr 
+0x4827 017739 istore 1 ,mem_ui_button_timeout 
+0x4828 017740 ifetch 2 ,contr 
+0x4829 017741 branch callback_func 
+:      017743 ui_soft_switch_power_off:
+0x482a 017744 setarg ss_state_power_off 
+0x482b 017745 call ui_soft_swtich_init_power_on_time 
+0x482c 017746 add temp ,ss_power_off_cb ,contr 
+0x482d 017747 ifetch 2 ,contr 
+0x482e 017748 branch app_enter_hibernate ,blank 
+0x482f 017749 branch callback_func 
+:      017755 shutter_byteswap:
+0x4830 017756 store 6 ,mem_tmp_buffer 
+0x4831 017757 fetch 1 ,mem_tmp_buffer 
+0x4832 017758 store 1 ,mem_tmp_buffer + 11 
+0x4833 017759 ifetch 1 ,contr 
+0x4834 017760 store 1 ,mem_tmp_buffer + 10 
+0x4835 017761 ifetch 1 ,contr 
+0x4836 017762 store 1 ,mem_tmp_buffer + 9 
+0x4837 017763 ifetch 1 ,contr 
+0x4838 017764 store 1 ,mem_tmp_buffer + 8 
+0x4839 017765 ifetch 1 ,contr 
+0x483a 017766 store 1 ,mem_tmp_buffer + 7 
+0x483b 017767 ifetch 1 ,contr 
+0x483c 017768 store 1 ,mem_tmp_buffer + 6 
+0x483d 017769 fetch 6 ,mem_tmp_buffer + 6 
+0x483e 017770 rtn 
+:      017772 shutter_random_addr_by_otp:
+0x483f 017773 call load_adc_init 
+0x4840 017774 fetch 1 ,mem_1v_adc_io_data 
+0x4841 017775 store 1 ,mem_le_lap 
+0x4842 017776 fetch 1 ,mem_5v_adc_hvin_data 
+0x4843 017777 istore 1 ,contw 
+0x4844 017778 fetch 1 ,mem_3v_adc_vinlpm_data 
+0x4845 017779 istore 1 ,contw 
+0x4846 017780 fetch 3 ,mem_le_lap 
+0x4847 017781 store 3 ,mem_lap 
+0x4848 017782 rtn 
+:      017794 sim_iic_read_eep_data:
+0x4849 017795 fetch 2 ,mem_eeprom_base 
+0x484a 017796 iadd regb ,pdata 
+0x484b 017797 byteswap pdata ,pdata 
+0x484c 017798 store 2 ,mem_addr_mi 
+0x484d 017799 copy temp ,regb 
+0x484e 017801 call sim_iic_start 
+0x484f 017802 setarg 0xa0 
+0x4850 017803 call sim_iic_send_byte 
+0x4851 017804 fetch 1 ,mem_addr_mi 
+0x4852 017805 call sim_iic_send_byte 
+0x4853 017806 bmark1 mark_eeprom_size ,sim_iic_read_eep_data_2k 
+0x4854 017807 fetch 1 ,mem_addr_mi + 1 
+0x4855 017808 call sim_iic_send_byte 
+:      017809 sim_iic_read_eep_data_2k:
+0x4856 017810 call sim_iic_stop 
+0x4857 017812 call sim_iic_start 
+0x4858 017813 setarg 0xa1 
+0x4859 017814 call sim_iic_send_byte 
+:      017816 sim_iic_read_eep_data_loop:
+0x485a 017817 call sim_iic_read_byte 
+0x485b 017818 istore 1 ,rega 
+0x485c 017819 increase 1 ,rega 
+0x485d 017820 increase -1 ,regb 
+0x485e 017821 nbranch sim_iic_read_eep_data_loop ,zero 
+0x485f 017822 branch sim_iic_stop 
+:      017833 sim_iic_write_eep_data:
+0x4860 017834 byteswap regb ,pdata 
+0x4861 017835 store 2 ,mem_addr_mi 
+0x4862 017836 copy temp ,regb 
+0x4863 017838 call sim_iic_start 
+0x4864 017839 setarg 0xa0 
+0x4865 017840 call sim_iic_send_byte 
+0x4866 017842 fetch 1 ,mem_addr_mi 
+0x4867 017843 call sim_iic_send_byte 
+0x4868 017844 bmark1 mark_eeprom_size ,sim_iic_write_eep_data_loop 
+0x4869 017845 fetch 1 ,mem_addr_mi + 1 
+0x486a 017846 call sim_iic_send_byte 
+:      017847 sim_iic_write_eep_data_loop:
+0x486b 017848 ifetch 1 ,rega 
+0x486c 017849 call sim_iic_send_byte 
+0x486d 017850 increase 1 ,rega 
+0x486e 017851 increase -1 ,regb 
+0x486f 017852 nbranch sim_iic_write_eep_data_loop ,zero 
+0x4870 017853 branch sim_iic_stop 
+:      017857 sim_iic_wait_ack:
+0x4871 017858 arg 10 ,loopcnt 
+0x4872 017859 call sim_iic_release_sda 
+0x4873 017860 call sim_iic_scl_output_high 
+0x4874 017861 call sim_iic_delay 
+:      017862 sim_iic_wait_ack_loop:
+0x4875 017863 call sim_iic_read_sda_level 
+0x4876 017864 branch sim_iic_scl_output_low ,blank 
+0x4877 017865 loop sim_iic_wait_ack_loop 
+0x4878 017866 branch sim_iic_scl_output_low 
+:      017870 sim_iic_ack_slave:
+0x4879 017871 call sim_iic_scl_output_low 
+0x487a 017872 call sim_iic_sda_output_low 
+0x487b 017873 call sim_iic_delay 
+0x487c 017874 call sim_iic_scl_output_high 
+0x487d 017875 call sim_iic_delay 
+0x487e 017876 branch sim_iic_scl_output_low 
+:      017881 sim_iic_read_byte:
+0x487f 017882 arg 8 ,loopcnt 
+0x4880 017883 arg 0 ,regc 
+0x4881 017884 call sim_iic_release_sda 
+:      017885 sim_iic_read_byte_loop:
+0x4882 017886 call sim_iic_scl_output_high 
+0x4883 017887 call sim_iic_delay 
+0x4884 017888 lshift regc ,regc 
+0x4885 017889 call sim_iic_read_sda_level 
+0x4886 017890 iadd regc ,regc 
+0x4887 017891 call sim_iic_delay 
+0x4888 017892 call sim_iic_scl_output_low 
+0x4889 017893 loop sim_iic_read_byte_loop 
+0x488a 017894 call sim_iic_ack_slave 
+0x488b 017895 copy regc ,pdata 
+0x488c 017896 rtn 
+:      017900 sim_iic_send_byte:
+0x488d 017901 arg 8 ,loopcnt 
+0x488e 017902 copy pdata ,regc 
+0x488f 017903 call sim_iic_scl_output_low 
+:      017904 sim_iic_send_byte_loop:
+0x4890 017905 isolate1 7 ,regc 
+0x4891 017906 call sim_iic_sda_output_high ,true 
+0x4892 017907 ncall sim_iic_sda_output_low ,true 
+0x4893 017908 lshift regc ,regc 
+0x4894 017909 call sim_iic_delay 
+0x4895 017910 call sim_iic_scl_output_high 
+0x4896 017911 call sim_iic_delay 
+0x4897 017912 call sim_iic_scl_output_low 
+0x4898 017913 call sim_iic_delay 
+0x4899 017914 loop sim_iic_send_byte_loop 
+0x489a 017915 branch sim_iic_wait_ack 
+:      017919 sim_iic_start:
+0x489b 017920 call sim_iic_sda_output_high 
+0x489c 017921 call sim_iic_scl_output_high 
+0x489d 017922 call sim_iic_delay 
+0x489e 017923 call sim_iic_sda_output_low 
+0x489f 017924 call sim_iic_delay 
+0x48a0 017925 branch sim_iic_scl_output_low 
+:      017929 sim_iic_stop:
+0x48a1 017930 call sim_iic_sda_output_low 
+0x48a2 017931 call sim_iic_scl_output_high 
+0x48a3 017932 call sim_iic_delay 
+0x48a4 017933 call sim_iic_sda_output_high 
+0x48a5 017934 branch sim_iic_delay 
+:      017938 sim_iic_scl_output_high:
+0x48a6 017939 enable user 
+0x48a7 017940 fetch 1 ,sim_iic_scl_gpio_num 
+0x48a8 017941 branch sim_iic_config_gpio 
+:      017944 sim_iic_scl_output_low:
+0x48a9 017945 disable user 
+0x48aa 017946 fetch 1 ,sim_iic_scl_gpio_num 
+0x48ab 017947 branch sim_iic_config_gpio 
+:      017950 sim_iic_sda_output_high:
+0x48ac 017951 enable user 
+0x48ad 017952 fetch 1 ,sim_iic_sda_gpio_num 
+0x48ae 017953 branch sim_iic_config_gpio 
+:      017956 sim_iic_sda_output_low:
+0x48af 017957 disable user 
+0x48b0 017958 fetch 1 ,sim_iic_sda_gpio_num 
+0x48b1 017959 branch sim_iic_config_gpio 
+:      017964 sim_iic_config_gpio:
+0x48b2 017965 and pdata ,0x07 ,queue 
+0x48b3 017966 rshift3 pdata ,pdata 
+0x48b4 017967 arg core_gpio_oe0 ,temp 
+0x48b5 017968 iadd temp ,temp 
+0x48b6 017969 ifetch 1 ,temp 
+0x48b7 017970 qset1 pdata 
+0x48b8 017971 istore 1 ,temp 
+0x48b9 017972 increase 4 ,temp 
+0x48ba 017973 ifetch 1 ,temp 
+0x48bb 017974 qsetflag user ,pdata 
+0x48bc 017975 istore 1 ,temp 
+0x48bd 017976 rtn 
+:      017979 sim_iic_release_sda:
+0x48be 017980 fetch 1 ,sim_iic_sda_gpio_num 
+0x48bf 017981 and pdata ,0x07 ,queue 
+0x48c0 017982 rshift3 pdata ,pdata 
+0x48c1 017983 arg core_gpio_oe0 ,temp 
+0x48c2 017984 iadd temp ,temp 
+0x48c3 017985 ifetch 1 ,temp 
+0x48c4 017986 qset0 pdata 
+0x48c5 017987 istore 1 ,temp 
+0x48c6 017988 rtn 
+:      017993 sim_iic_read_sda_level:
+0x48c7 017994 nop 4 
+0x48c8 017995 fetch 1 ,sim_iic_sda_gpio_num 
+0x48c9 017996 and pdata ,0x07 ,queue 
+0x48ca 017997 rshift3 pdata ,pdata 
+0x48cb 017998 arg core_gpio_in ,temp 
+0x48cc 017999 iadd temp ,temp 
+0x48cd 018000 setarg 0 
+0x48ce 018001 ifetcht 1 ,temp 
+0x48cf 018002 qisolate1 temp 
+0x48d0 018003 setflag true ,0 ,pdata 
+0x48d1 018004 rtn 
+:      018007 sim_iic_delay:
+0x48d2 018009 rtn 
+:      018015 usb_isr:
+0x48d3 018016 bpatch patch1e_6 ,mem_patch1e 
+0x48d4 018017 hfetch 1 ,core_usb_status 
+0x48d5 018018 isolate1 7 ,pdata 
+0x48d6 018019 call usb_init ,true 
+0x48d7 018020 call usb_nak_state_judge 
+0x48d8 018021 hfetch 1 ,core_usb_status 
+0x48d9 018022 store 1 ,mem_usb_status 
+0x48da 018023 hfetch 1 ,core_usb_fifo_empty 
+0x48db 018024 store 1 ,mem_usb_fifo_empty 
+0x48dc 018025 hstore 1 ,core_usb_fifo_empty 
+0x48dd 018026 pinvert 
+0x48de 018027 fetcht 1 ,mem_usb_tx_wait 
+0x48df 018028 iand temp ,pdata 
+0x48e0 018029 store 1 ,mem_usb_tx_wait 
+0x48e1 018030 jam 0xe0 ,core_usb_status 
+0x48e2 018031 fetch 1 ,mem_usb_fifo_empty 
+0x48e3 018032 compare 0x1 ,pdata ,0x1 
+0x48e4 018033 call usb0_fifo_empty ,true 
+0x48e5 018034 fetch 1 ,mem_usb_status 
+0x48e6 018035 compare 0x1 ,pdata ,0x1 
+0x48e7 018036 call usb_status1 ,true 
+0x48e8 018037 call usb_tx 
+0x48e9 018038 branch usb_nak_state 
+:      018040 usb_init:
+0x48ea 018041 bpatch patch1e_7 ,mem_patch1e 
+0x48eb 018042 call usb_init_param 
+0x48ec 018043 jam 0x00 ,core_usb_config 
+0x48ed 018044 nop 10000 
+0x48ee 018045 jam 0xc0 ,core_usb_trig 
+0x48ef 018046 hfetch 2 ,core_clkoff 
+0x48f0 018047 set0 clock_off_usb ,pdata 
+0x48f1 018048 hstore 2 ,core_clkoff 
+0x48f2 018049 jam 0x3c ,core_usb_config 
+0x48f3 018050 jam 0xff ,core_usb_status 
+0x48f4 018051 jam 0xff ,core_usb_fifo_empty 
+0x48f5 018052 jam 0 ,core_usb_addr 
+0x48f6 018053 jam dev_default ,mem_usb0_state 
+0x48f7 018054 setarg mem_usb_clear_mem_end 
+0x48f8 018055 arg mem_usb_clear_mem_start ,contw 
+0x48f9 018056 isub contw ,loopcnt 
+0x48fa 018057 branch clear_mem 
+:      018059 usb_offline_check_init:
+0x48fb 018060 fetcht 1 ,mem_usb_offline_check_gpio 
+0x48fc 018061 branch gpio_config_input 
+:      018062 usb_offline_state:
+0x48fd 018063 fetch 1 ,mem_usb_device_enumeration_endflag 
+0x48fe 018064 rtn blank 
+0x48ff 018065 fetcht 1 ,mem_usb_offline_check_gpio 
+0x4900 018066 call gpio_get_bit 
+0x4901 018067 branch usb_init ,true 
+0x4902 018068 rtn 
+:      018071 usb_nak_state:
+0x4903 018072 arg timer_nak ,queue 
+0x4904 018073 call timer_check 
+0x4905 018074 nrtn blank 
+0x4906 018075 fetch 1 ,mem_usb_wakestate_onetime_flag 
+0x4907 018076 nrtn blank 
+0x4908 018077 fetch 1 ,mem_usb_device_enumeration_endflag 
+0x4909 018078 ncall usb_mac_wakeup_judge ,blank 
+0x490a 018079 rtn 
+:      018081 usb_mem_devicedesc_init:
+0x490b 018082 arg mem_devicedesc ,contw 
+0x490c 018083 setsect 0 ,0x11212 
+0x490d 018084 setsect 1 ,0x8000 
+0x490e 018085 setsect 2 ,0x0 
+0x490f 018086 setsect 3 ,0x10000 
+0x4910 018087 istore 9 ,contw 
+0x4911 018088 setsect 0 ,0x22412 
+0x4912 018089 setsect 1 ,0x8604 
+0x4913 018090 setsect 2 ,0x1000 
+0x4914 018091 setsect 3 ,0x8 
+0x4915 018092 istore 9 ,contw 
+0x4916 018093 setsect 0 ,0x1 
+0x4917 018094 istore 1 ,contw 
+0x4918 018095 rtn 
+:      018097 usb_init_param:
+0x4919 018098 jam 2 ,mem_usb0_state 
+0x491a 018099 setarg 0x0 
+0x491b 018100 store 1 ,mem_remain 
+0x491c 018101 store 2 ,mem_usb_zero_packet 
+0x491d 018102 pincrease 1 
+0x491e 018103 store 2 ,mem_usb_ones_packet 
+0x491f 018104 pincrease 1 
+0x4920 018105 store 2 ,mem_usb_two_packet 
+0x4921 018106 setarg hid_kbdata_addr 
+0x4922 018107 store 2 ,mem_hidreportdesc_kb 
+0x4923 018108 setarg hid_msdata_addr 
+0x4924 018109 store 2 ,mem_hidreportdesc_m 
+0x4925 018110 arg mem_confdesc ,contw 
+0x4926 018111 arg hid_confdata_addr ,contr 
+0x4927 018112 call memcpy64 
+0x4928 018113 fetch 1 ,mem_usb_tx_interval 
+0x4929 018114 ncall usb_tx_interval_config ,blank 
+0x492a 018115 branch usb_mem_devicedesc_init 
+:      018117 usb_tx_interval_config:
+0x492b 018118 store 1 ,mem_confdesc + 34 
+0x492c 018119 store 1 ,mem_confdesc + 59 
+0x492d 018120 rtn 
+:      018121 usb_nak_state_judge:
+0x492e 018122 hfetch 1 ,core_usb_status 
+0x492f 018123 bbit1 usb_status_nak ,usb_nak_state_timer_init 
+0x4930 018124 rtn 
+:      018126 usb_nak_state_timer_init:
+0x4931 018127 call usb0_attached_state_judge 
+0x4932 018128 call timer_reinit 
+0x4933 018129 setarg timer_nak_delay 
+0x4934 018130 arg timer_nak ,queue 
+0x4935 018131 branch timer_init 
+:      018133 usb0_attached_state_judge:
+0x4936 018134 fetch 1 ,mem_usb_state 
+0x4937 018135 bne usb_connected ,usb_clear_halt_dispose 
+0x4938 018136 jam 0 ,mem_usb_wakestate_onetime_flag 
+0x4939 018137 jam 0 ,mem_usb_mac_wakeup_trig 
+0x493a 018138 rtn 
+:      018139 usb_clear_halt_dispose:
+0x493b 018140 fetch 1 ,mem_usb_clear_halt 
+0x493c 018141 rtn blank 
+0x493d 018142 jam 0 ,mem_usb_clear_halt 
+0x493e 018143 jam usb_connected ,mem_usb_state 
+0x493f 018144 jam 1 ,mem_usb_device_enumeration_endflag 
+0x4940 018145 rtn 
+:      018147 usb0_fifo_empty:
+0x4941 018148 jam 0x1 ,core_usb_fifo_empty 
+0x4942 018149 branch usb0_tx 
+:      018151 usb_rx_no_data:
+0x4943 018152 fetch 1 ,mem_usb_status 
+0x4944 018153 bbit1 usb_status_setup ,usb_class_type 
+0x4945 018154 rtn 
+:      018156 usb_rx_read:
+0x4946 018157 hfetch 1 ,core_usb_ep 
+0x4947 018158 istore 1 ,contw 
+0x4948 018159 loop usb_rx_read 
+0x4949 018160 rtn 
+:      018162 usb_status1:
+0x494a 018163 bpatch patch1f_0 ,mem_patch1f 
+0x494b 018164 jam 0x11 ,core_usb_status 
+0x494c 018165 hfetch 1 ,core_usb_ep_len 
+0x494d 018166 store 1 ,mem_usb_read_len 
+0x494e 018167 copy pdata ,loopcnt 
+0x494f 018168 branch usb_rx_no_data ,blank 
+0x4950 018169 arg mem_usb_setup ,contw 
+0x4951 018170 call usb_rx_read 
+0x4952 018171 fetch 1 ,mem_usb_read_len 
+0x4953 018172 sub pdata ,7 ,null 
+0x4954 018173 rtn positive 
+:      018174 usb_class_type:
+0x4955 018175 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4956 018176 and_into 0x80 ,pdata 
+0x4957 018177 beq in_device ,usb_in_device 
+0x4958 018178 beq out_device ,usb_out_device 
+0x4959 018179 branch assert 
+:      018181 usb_in_device:
+0x495a 018182 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x495b 018183 rshift4 pdata ,pdata 
+0x495c 018184 rshift pdata ,pdata 
+0x495d 018185 and_into 0x03 ,pdata 
+0x495e 018186 beq standard_req ,usb_in_standard_req 
+0x495f 018187 beq class_req ,usb_in_class_req 
+0x4960 018188 beq manufacturer_req ,usb_in_manufacturer_req 
+0x4961 018189 branch assert 
+:      018191 usb_out_device:
+0x4962 018192 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4963 018193 rshift4 pdata ,pdata 
+0x4964 018194 rshift pdata ,pdata 
+0x4965 018195 and_into 0x03 ,pdata 
+0x4966 018196 beq standard_req ,usb_out_standard_req 
+0x4967 018197 beq class_req ,usb_out_class_req 
+0x4968 018198 beq manufacturer_req ,usb_out_manufacturer_req 
+0x4969 018199 branch assert 
+:      018201 usb_in_standard_req:
+0x496a 018202 fetch 1 ,mem_usb_setup_brequest 
+0x496b 018203 beq get_configuration ,usb0_request_get_configuration 
+0x496c 018204 beq get_descriptor ,usb0_request_get_descriptor 
+0x496d 018205 beq get_interface ,usb0_request_get_interface 
+0x496e 018206 beq get_status ,usb0_request_get_status 
+0x496f 018207 branch usb0_force_stall 
+:      018209 usb_in_class_req:
+0x4970 018210 fetch 1 ,mem_usb_setup_brequest 
+0x4971 018211 beq get_idle ,usb_get_idle 
+0x4972 018212 beq get_report ,usb_get_report 
+0x4973 018213 beq get_protocol ,usb_get_protocol_req 
+0x4974 018214 branch usb0_force_stall 
+:      018216 usb_in_manufacturer_req:
+0x4975 018217 branch usb0_force_stall 
+:      018219 usb_out_standard_req:
+0x4976 018220 fetch 1 ,mem_usb_setup_brequest 
+0x4977 018221 beq clear_feature ,usb0_request_clear_feature 
+0x4978 018222 beq set_feature ,usb0_request_set_feature 
+0x4979 018223 beq set_address ,usb0_request_set_address 
+0x497a 018224 beq set_configuration ,usb0_request_set_configuration 
+0x497b 018225 beq set_interface ,usb0_request_set_interface 
+0x497c 018226 beq set_descriptor ,usb0_force_stall 
+0x497d 018227 branch usb0_force_stall 
+:      018229 usb_out_class_req:
+0x497e 018230 fetch 1 ,mem_usb_setup_brequest 
+0x497f 018231 beq set_idle ,usb_set_idle 
+0x4980 018232 beq set_report ,usb_set_report 
+0x4981 018233 beq set_protocol ,usb_set_protocol_req 
+0x4982 018234 branch usb0_force_stall 
+:      018236 usb_out_manufacturer_req:
+0x4983 018237 branch usb0_force_stall 
+:      018239 usb0_force_stall:
+0x4984 018240 hfetch 1 ,core_usb_stall 
+0x4985 018241 set1 0 ,pdata 
+0x4986 018242 hstore 1 ,core_usb_stall 
+0x4987 018243 branch usb0_reply_zerolen 
+:      018245 usb0_reply_zerolen:
+0x4988 018246 jam 0x40 ,core_usb_clear 
+0x4989 018247 rtn 
+:      018249 usb0_request_get_configuration:
+0x498a 018250 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x498b 018251 bne in_device ,usb0_force_stall 
+0x498c 018252 fetch 1 ,mem_usb_setup_windex 
+0x498d 018253 bne 0 ,usb0_force_stall 
+0x498e 018254 fetch 1 ,mem_usb_setup_windex + 1 
+0x498f 018255 bne 0 ,usb0_force_stall 
+0x4990 018256 fetch 1 ,mem_usb_setup_blength 
+0x4991 018257 bne 1 ,usb0_force_stall 
+0x4992 018258 fetch 1 ,mem_usb_setup_blengthh 
+0x4993 018259 bne 0 ,usb0_force_stall 
+0x4994 018260 fetch 1 ,mem_usb_setup_bvalue 
+0x4995 018261 bne 0 ,usb0_force_stall 
+0x4996 018262 fetch 1 ,mem_usb_setup_bvalue + 1 
+0x4997 018263 bne 0 ,usb0_force_stall 
+0x4998 018264 fetch 1 ,mem_usb0_state 
+0x4999 018265 beq dev_configured ,usb0_request_get_cfg_dev_cfg 
+0x499a 018266 beq dev_address ,usb0_request_get_cfg_dev_addr 
+0x499b 018267 branch usb0_force_stall 
+:      018269 usb0_request_get_cfg_dev_cfg:
+0x499c 018270 arg 1 ,regb 
+0x499d 018271 branch usb_send_ones_packet 
+:      018273 usb0_request_get_cfg_dev_addr:
+0x499e 018274 arg 1 ,regb 
+0x499f 018275 branch usb_send_zero_packet 
+:      018277 usb0_request_get_descriptor:
+0x49a0 018278 bpatch patch1f_1 ,mem_patch1f 
+0x49a1 018279 set0 mark_isstr ,mark 
+0x49a2 018280 fetch 1 ,mem_usb_setup_bvalueh 
+0x49a3 018281 beq dsc_device ,dsc_device_info 
+0x49a4 018282 beq dsc_config ,dsc_config_info 
+0x49a5 018283 beq dsc_string ,dsc_string_info 
+0x49a6 018284 beq dsc_hid ,dsc_hid_info 
+0x49a7 018285 beq dsc_hid_report ,dsc_hid_report_info 
+0x49a8 018286 branch usb0_force_stall 
+:      018288 dsc_hid_info:
+0x49a9 018289 jam 0 ,mem_usb_get_protocol_flag 
+0x49aa 018290 fetch 1 ,mem_usb_setup_windex 
+0x49ab 018291 beq 0 ,dsc_hid_info_interface0 
+0x49ac 018292 beq 1 ,dsc_hid_info_interface1 
+0x49ad 018293 branch usb0_force_stall 
+:      018295 dsc_hid_info_interface0:
+0x49ae 018296 arg mem_confdesc + 19 ,rega 
+0x49af 018297 ifetch 1 ,rega 
+0x49b0 018298 iforce regb 
+0x49b1 018299 branch usb0_respond 
+:      018301 dsc_hid_info_interface1:
+0x49b2 018302 arg mem_confdesc + 44 ,rega 
+0x49b3 018303 ifetch 1 ,rega 
+0x49b4 018304 iforce regb 
+0x49b5 018305 branch usb0_respond 
+:      018307 dsc_device_info:
+0x49b6 018311 fetch 1 ,mem_usb_set_high_addr_flag 
+0x49b7 018312 ncall usb_set_high_addr ,blank 
+0x49b8 018313 setarg mem_devicedesc 
+0x49b9 018314 fetcht 1 ,mem_devicedesc 
+:      018315 dsc_info_set_data_len:
+0x49ba 018316 store 2 ,mem_dsc_info_data_pointer 
+0x49bb 018317 storet 1 ,mem_dsc_info_len 
+0x49bc 018318 fetch 1 ,mem_usb_setup_blength 
+0x49bd 018319 isub temp ,null 
+0x49be 018320 nbranch dsc_info_set_current_data_len ,positive 
+:      018321 dsc_info_set_initial_data_len:
+0x49bf 018322 fetch 1 ,mem_dsc_info_len 
+:      018323 dsc_info_set_data_size_completed:
+0x49c0 018324 iforce regb 
+0x49c1 018325 fetch 2 ,mem_dsc_info_data_pointer 
+0x49c2 018326 add pdata ,1 ,pdata 
+0x49c3 018327 iforce rega 
+0x49c4 018328 branch usb0_respond 
+:      018329 dsc_info_set_current_data_len:
+0x49c5 018330 fetch 1 ,mem_usb_setup_blength 
+0x49c6 018331 branch dsc_info_set_data_size_completed 
+:      018333 usb_set_high_addr:
+0x49c7 018334 hfetch 1 ,core_usb_addr 
+0x49c8 018335 ncall usb0_set_addr ,blank 
+0x49c9 018336 jam 0 ,mem_usb_set_high_addr_flag 
+0x49ca 018337 rtn 
+:      018338 usb0_set_addr:
+0x49cb 018339 hfetch 1 ,core_usb_addr 
+0x49cc 018340 set1 7 ,pdata 
+0x49cd 018341 hstore 1 ,core_usb_addr 
+0x49ce 018342 rtn 
+:      018344 dsc_config_info:
+0x49cf 018345 setarg mem_confdesc 
+0x49d0 018346 fetcht 1 ,mem_confdesc 
+0x49d1 018347 branch dsc_info_set_data_len 
+:      018349 dsc_string_info:
+0x49d2 018350 fetch 1 ,mem_usb_setup_bvalue 
+0x49d3 018351 sub pdata ,3 ,null 
+0x49d4 018352 nbranch usb0_force_stall ,positive 
+0x49d5 018353 fetch 1 ,mem_usb_setup_bvalue 
+0x49d6 018354 arg mem_string0 ,rega 
+0x49d7 018355 beq 0 ,usb0_respond_length 
+0x49d8 018356 set1 mark_isstr ,mark 
+0x49d9 018357 arg mem_string1 ,rega 
+0x49da 018358 beq 1 ,usb0_respond_length 
+0x49db 018359 arg mem_string2 ,rega 
+0x49dc 018360 beq 2 ,usb0_respond_length 
+0x49dd 018361 arg mem_string3 ,rega 
+0x49de 018362 beq 3 ,usb0_respond_length 
+0x49df 018363 rtn 
+:      018365 dsc_hid_report_info:
+0x49e0 018366 fetch 2 ,mem_usb_setup_windex 
+0x49e1 018367 beq 1 ,dsc_hid_report_info0 
+0x49e2 018368 fetch 2 ,mem_hidreportdesc_kb 
+0x49e3 018369 copy pdata ,rega 
+0x49e4 018371 branch usb0_respond_length 
+:      018372 dsc_hid_report_info0:
+0x49e5 018373 jam 1 ,mem_usb_device_enumeration_endflag 
+0x49e6 018374 jam usb_got_report_req ,mem_usb_state 
+0x49e7 018375 fetch 2 ,mem_hidreportdesc_m 
+0x49e8 018376 copy pdata ,rega 
+0x49e9 018378 branch usb0_respond_length 
+:      018381 usb0_request_get_interface:
+0x49ea 018382 fetch 1 ,mem_usb0_state 
+0x49eb 018383 bne dev_configured ,usb0_force_stall 
+0x49ec 018384 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x49ed 018385 bne in_interface ,usb0_force_stall 
+0x49ee 018386 fetch 1 ,mem_usb_setup_bvalue 
+0x49ef 018387 bne 0 ,usb0_force_stall 
+0x49f0 018388 fetch 1 ,mem_usb_setup_bvalueh 
+0x49f1 018389 bne 0 ,usb0_force_stall 
+0x49f2 018390 fetch 1 ,mem_usb_setup_blength 
+0x49f3 018391 bne 1 ,usb0_force_stall 
+0x49f4 018392 fetch 1 ,mem_usb_setup_blengthh 
+0x49f5 018393 bne 0 ,usb0_force_stall 
+0x49f6 018394 fetch 1 ,mem_usb_setup_windex 
+0x49f7 018395 bne 0 ,usb0_force_stall 
+0x49f8 018396 fetch 1 ,mem_usb_setup_windex + 1 
+0x49f9 018397 bne 0 ,usb0_force_stall 
+0x49fa 018398 arg 1 ,regb 
+0x49fb 018399 branch usb_send_zero_packet 
+:      018402 usb0_request_get_status:
+0x49fc 018403 fetch 1 ,mem_usb0_state 
+0x49fd 018404 beq dev_default ,usb0_force_stall 
+0x49fe 018405 fetch 1 ,mem_usb_setup_bvalue 
+0x49ff 018406 bne 0 ,usb0_force_stall 
+0x4a00 018407 fetch 1 ,mem_usb_setup_bvalueh 
+0x4a01 018408 bne 0 ,usb0_force_stall 
+0x4a02 018409 fetch 1 ,mem_usb_setup_blength 
+0x4a03 018410 bne 2 ,usb0_force_stall 
+0x4a04 018411 fetch 1 ,mem_usb_setup_blengthh 
+0x4a05 018412 bne 0 ,usb0_force_stall 
+0x4a06 018413 fetch 1 ,mem_usb_setup_windex + 1 
+0x4a07 018414 bne 0 ,usb0_force_stall 
+0x4a08 018415 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4a09 018416 beq in_device ,usb0_get_status_in_device 
+0x4a0a 018417 beq in_interface ,usb0_get_status_in_interface 
+0x4a0b 018418 beq in_endpoint ,usb0_get_status_in_endpoint 
+0x4a0c 018419 branch usb0_force_stall 
+:      018421 usb0_get_status_in_device:
+0x4a0d 018422 fetch 1 ,mem_usb_setup_windex 
+0x4a0e 018423 bne 0 ,usb0_force_stall 
+0x4a0f 018424 arg 2 ,regb 
+0x4a10 018425 fetch 1 ,mem_usb_remote_wakeup 
+0x4a11 018426 beq 0x01 ,usb_send_two_packet 
+:      018428 usb_send_zero_packet:
+0x4a12 018429 arg mem_usb_zero_packet ,rega 
+0x4a13 018430 branch usb0_respond 
+:      018431 usb_send_ones_packet:
+0x4a14 018432 arg mem_usb_ones_packet ,rega 
+0x4a15 018433 branch usb0_respond 
+:      018434 usb_send_two_packet:
+0x4a16 018435 arg mem_usb_two_packet ,rega 
+0x4a17 018436 branch usb0_respond 
+:      018438 usb0_get_status_in_interface:
+0x4a18 018439 fetch 1 ,mem_usb0_state 
+0x4a19 018440 bne dev_configured ,usb0_force_stall 
+0x4a1a 018441 arg 2 ,regb 
+0x4a1b 018442 branch usb_send_zero_packet 
+:      018444 usb0_get_status_in_endpoint:
+0x4a1c 018445 fetch 1 ,mem_usb0_state 
+0x4a1d 018446 bne dev_configured ,usb0_force_stall 
+0x4a1e 018447 fetch 1 ,mem_usb_setup_windex 
+0x4a1f 018448 beq in_ep1 ,usb0_get_status_in_ep_in_ep1 
+0x4a20 018449 beq in_ep2 ,usb0_get_status_in_ep_in_ep2 
+0x4a21 018450 beq in_ep3 ,usb0_get_status_in_ep_in_ep3 
+0x4a22 018451 and_into 0x7f ,pdata 
+0x4a23 018452 beq 0x00 ,usb0_get_status_in_ep_in_ep0 
+0x4a24 018453 branch usb0_force_stall 
+:      018455 usb0_get_status_in_ep_in_ep0:
+0x4a25 018456 fetch 1 ,mem_usb_ep0_stall_status 
+:      018457 usb0_get_status_in_ep_in_ack:
+0x4a26 018458 arg 2 ,regb 
+0x4a27 018459 beq 1 ,usb_send_ones_packet 
+0x4a28 018460 branch usb_send_zero_packet 
+:      018461 usb0_get_status_in_ep_in_ep1:
+0x4a29 018462 fetch 1 ,mem_usb_ep1_stall_status 
+0x4a2a 018463 branch usb0_get_status_in_ep_in_ack 
+:      018464 usb0_get_status_in_ep_in_ep2:
+0x4a2b 018465 fetch 1 ,mem_usb_ep2_stall_status 
+0x4a2c 018466 branch usb0_get_status_in_ep_in_ack 
+:      018467 usb0_get_status_in_ep_in_ep3:
+0x4a2d 018468 fetch 1 ,mem_usb_ep3_stall_status 
+0x4a2e 018469 branch usb0_get_status_in_ep_in_ack 
+:      018471 usb_get_idle:
+0x4a2f 018472 jam 1 ,mem_usb_idle_flag 
+0x4a30 018473 arg mem_usb_idle_rate ,rega 
+0x4a31 018474 arg 1 ,regb 
+0x4a32 018475 branch usb0_respond 
+:      018477 usb_get_report:
+0x4a33 018478 fetch 2 ,mem_usb_setup_bvalue 
+0x4a34 018479 arg pc_get_report ,temp 
+0x4a35 018480 isub temp ,null 
+0x4a36 018481 nbranch usb0_force_stall ,zero 
+0x4a37 018482 set0 mark_isstr ,mark 
+:      018483 usb_get_report_dispose:
+0x4a38 018484 fetch 1 ,mem_usb0_data_ready_report 
+0x4a39 018485 nbranch usb_get_report_data_success ,blank 
+0x4a3a 018486 jam pc_get_nondata ,mem_usb0_get_report_data 
+:      018487 usb_get_report_send_data:
+0x4a3b 018488 fetch 1 ,mem_usb_setup_blength 
+0x4a3c 018489 iforce regb 
+0x4a3d 018490 arg mem_usb0_get_report_data ,rega 
+0x4a3e 018491 call usb0_respond 
+:      018492 usb_get_report_data_release:
+0x4a3f 018493 arg mem_usb0_get_report_data ,contw 
+0x4a40 018494 arg 8 ,loopcnt 
+0x4a41 018495 branch memset0 
+:      018496 usb_get_report_data_success:
+0x4a42 018497 jam 0 ,mem_usb0_data_ready_report 
+0x4a43 018498 jam pc_get_data ,mem_usb0_get_report_data 
+0x4a44 018499 branch usb_get_report_send_data 
+:      018501 usb_get_protocol_req:
+0x4a45 018502 fetch 1 ,mem_usb_setup_blength 
+0x4a46 018503 bne 1 ,usb0_force_stall 
+0x4a47 018504 jam 1 ,mem_usb_get_protocol_flag 
+0x4a48 018505 arg 1 ,regb 
+0x4a49 018506 fetch 1 ,mem_usb_set_protocol_value 
+0x4a4a 018507 beq 0 ,usb_get_report_protocol 
+0x4a4b 018508 beq 1 ,usb_get_boot_protocol 
+0x4a4c 018509 branch usb_send_zero_packet 
+:      018510 usb_get_report_protocol:
+0x4a4d 018511 branch usb_send_ones_packet 
+:      018512 usb_get_boot_protocol:
+0x4a4e 018513 branch usb_send_zero_packet 
+:      018518 usb0_request_clear_feature:
+0x4a4f 018519 fetch 1 ,mem_usb0_state 
+0x4a50 018520 bne dev_configured ,usb0_force_stall 
+0x4a51 018521 fetch 1 ,mem_usb_setup_blength 
+0x4a52 018522 bne 0 ,usb0_force_stall 
+0x4a53 018523 fetch 1 ,mem_usb_setup_blengthh 
+0x4a54 018524 bne 0 ,usb0_force_stall 
+0x4a55 018525 fetch 1 ,mem_usb_setup_bvalueh 
+0x4a56 018526 bne 0 ,usb0_force_stall 
+0x4a57 018527 fetch 1 ,mem_usb_setup_windex + 1 
+0x4a58 018528 bne 0 ,usb0_force_stall 
+0x4a59 018529 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4a5a 018530 beq out_device ,usb0_request_clear_feature_out_device 
+0x4a5b 018531 beq out_interface ,usb0_request_clear_feature_out_interface 
+0x4a5c 018532 beq out_endpoint ,usb0_request_clear_feature_out_endpoint 
+0x4a5d 018533 branch usb0_force_stall 
+:      018535 usb0_request_clear_feature_out_device:
+0x4a5e 018536 fetch 1 ,mem_usb_setup_bvalue 
+0x4a5f 018537 bne device_remote_wakeup ,usb0_force_stall 
+0x4a60 018538 hfetch 1 ,core_usb_config 
+0x4a61 018539 set0 7 ,pdata 
+0x4a62 018540 hstore 1 ,core_usb_config 
+0x4a63 018541 jam 0 ,mem_usb_remote_wakeup 
+0x4a64 018542 jam 1 ,mem_usb_clear_remote_wakeup 
+0x4a65 018543 branch usb0_reply_zerolen 
+:      018545 usb0_request_clear_feature_out_interface:
+0x4a66 018546 branch usb0_force_stall 
+:      018548 usb0_request_clear_feature_out_endpoint:
+0x4a67 018549 fetch 1 ,mem_usb_setup_bvalue 
+0x4a68 018550 bne endpoint_halt ,usb0_force_stall 
+0x4a69 018551 fetch 1 ,mem_usb_setup_windex 
+0x4a6a 018552 beq in_ep1 ,usb0_force_stall_ep1_in_off 
+0x4a6b 018553 beq in_ep2 ,usb0_force_stall_ep2_in_off 
+0x4a6c 018554 beq in_ep3 ,usb0_force_stall_ep3_in_off 
+0x4a6d 018555 and_into 0x7f ,pdata 
+0x4a6e 018556 beq 0x00 ,usb0_force_stall_ep0_in_off 
+0x4a6f 018557 branch usb0_force_stall 
+:      018559 usb0_force_stall_ep0_in_off:
+0x4a70 018560 jam 0 ,mem_usb_ep0_stall_status 
+0x4a71 018561 branch usb0_reply_zerolen 
+:      018562 usb0_force_stall_ep1_in_off:
+0x4a72 018563 jam 0 ,mem_usb_ep1_stall_status 
+:      018564 usb0_force_stall_ep1_in_off_reply:
+0x4a73 018565 jam 1 ,mem_usb_clear_halt 
+0x4a74 018566 branch usb0_reply_zerolen 
+:      018567 usb0_force_stall_ep2_in_off:
+0x4a75 018568 jam 0 ,mem_usb_ep2_stall_status 
+0x4a76 018569 branch usb0_force_stall_ep1_in_off_reply 
+:      018570 usb0_force_stall_ep3_in_off:
+0x4a77 018571 jam 0 ,mem_usb_ep3_stall_status 
+0x4a78 018572 branch usb0_force_stall_ep1_in_off_reply 
+:      018575 usb0_request_set_feature:
+0x4a79 018576 fetch 1 ,mem_usb_setup_blength 
+0x4a7a 018577 bne 0 ,usb0_force_stall 
+0x4a7b 018578 fetch 1 ,mem_usb_setup_blengthh 
+0x4a7c 018579 bne 0 ,usb0_force_stall 
+0x4a7d 018580 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4a7e 018581 beq out_device ,usb0_request_set_feature_out_device 
+0x4a7f 018582 beq out_interface ,usb0_request_set_feature_out_interface 
+0x4a80 018583 beq out_endpoint ,usb0_request_set_feature_out_endpoint 
+0x4a81 018584 branch usb0_force_stall 
+:      018586 usb0_request_set_feature_out_device:
+0x4a82 018587 fetch 1 ,mem_usb_setup_bvalue 
+0x4a83 018588 bne device_remote_wakeup ,usb0_force_stall 
+0x4a84 018589 hfetch 1 ,core_usb_config 
+0x4a85 018590 set1 7 ,pdata 
+0x4a86 018591 hstore 1 ,core_usb_config 
+0x4a87 018592 jam 1 ,mem_usb_remote_wakeup 
+0x4a88 018593 jam usb_sleep ,mem_usb_state 
+0x4a89 018594 jam 0 ,mem_usb_tx_win_enable 
+0x4a8a 018595 call usb0_reply_zerolen 
+:      018596 usb_wakeup_timer_reinit:
+0x4a8b 018597 call timer_reinit 
+0x4a8c 018598 setarg timer_wakeup_delay 
+0x4a8d 018599 arg timer_wakeup ,queue 
+0x4a8e 018600 branch timer_init 
+:      018602 usb0_request_set_feature_out_interface:
+0x4a8f 018603 branch usb0_force_stall 
+:      018605 usb0_request_set_feature_out_endpoint:
+0x4a90 018606 fetch 1 ,mem_usb_setup_bvalue 
+0x4a91 018607 bne endpoint_halt ,usb0_force_stall 
+0x4a92 018608 fetch 1 ,mem_usb_setup_bvalueh 
+0x4a93 018609 bne 0 ,usb0_force_stall 
+0x4a94 018610 fetch 1 ,mem_usb_setup_windex 
+0x4a95 018611 beq in_ep1 ,usb0_force_stall_ep1_in_on 
+0x4a96 018612 beq in_ep2 ,usb0_force_stall_ep2_in_on 
+0x4a97 018613 beq in_ep3 ,usb0_force_stall_ep3_in_on 
+0x4a98 018614 and_into 0x7f ,pdata 
+0x4a99 018615 beq 0x00 ,usb0_force_stall_ep0_in_on 
+0x4a9a 018616 branch usb0_force_stall 
+:      018618 usb0_force_stall_ep0_in_on:
+0x4a9b 018619 jam 1 ,mem_usb_ep0_stall_status 
+0x4a9c 018620 branch usb0_reply_zerolen 
+:      018621 usb0_force_stall_ep1_in_on:
+0x4a9d 018622 jam 1 ,mem_usb_ep1_stall_status 
+0x4a9e 018623 branch usb0_reply_zerolen 
+:      018624 usb0_force_stall_ep2_in_on:
+0x4a9f 018625 jam 1 ,mem_usb_ep2_stall_status 
+0x4aa0 018626 branch usb0_reply_zerolen 
+:      018627 usb0_force_stall_ep3_in_on:
+0x4aa1 018628 jam 1 ,mem_usb_ep3_stall_status 
+0x4aa2 018629 branch usb0_reply_zerolen 
+:      018632 usb0_request_set_address:
+0x4aa3 018633 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4aa4 018634 bne out_device ,usb0_force_stall 
+0x4aa5 018635 fetch 1 ,mem_usb_setup_windex 
+0x4aa6 018636 bne 0 ,usb0_force_stall 
+0x4aa7 018637 fetch 1 ,mem_usb_setup_windex + 1 
+0x4aa8 018638 bne 0 ,usb0_force_stall 
+0x4aa9 018639 fetch 1 ,mem_usb_setup_blength 
+0x4aaa 018640 bne 0 ,usb0_force_stall 
+0x4aab 018641 fetch 1 ,mem_usb_setup_blengthh 
+0x4aac 018642 bne 0 ,usb0_force_stall 
+0x4aad 018643 fetch 1 ,mem_usb_setup_bvalueh 
+0x4aae 018644 bne 0 ,usb0_force_stall 
+0x4aaf 018645 fetch 1 ,mem_usb_setup_bvalue 
+0x4ab0 018646 and_into 0x80 ,pdata 
+0x4ab1 018647 bne 0 ,usb0_force_stall 
+0x4ab2 018648 fetch 1 ,mem_usb_setup_bvalue 
+0x4ab3 018649 bne 0 ,usb_usb0_state_set_dev_addr 
+:      018650 usb_usb0_state_set_dev_default:
+0x4ab4 018651 jam dev_default ,mem_usb0_state 
+:      018652 usb0_request_set_wait_address:
+0x4ab5 018653 fetch 1 ,mem_usb_setup_bvalue 
+0x4ab6 018654 hstore 1 ,core_usb_addr 
+0x4ab7 018655 call usb0_reply_zerolen 
+0x4ab8 018656 jam 1 ,mem_usb_set_high_addr_flag 
+0x4ab9 018657 rtn 
+:      018658 usb_usb0_state_set_dev_addr:
+0x4aba 018659 jam dev_address ,mem_usb0_state 
+0x4abb 018660 branch usb0_request_set_wait_address 
+:      018663 usb0_request_set_configuration:
+0x4abc 018664 fetch 1 ,mem_usb0_state 
+0x4abd 018665 beq dev_default ,usb0_force_stall 
+0x4abe 018666 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4abf 018667 bne out_device ,usb0_force_stall 
+0x4ac0 018668 fetch 1 ,mem_usb_setup_windex 
+0x4ac1 018669 bne 0 ,usb0_force_stall 
+0x4ac2 018670 fetch 1 ,mem_usb_setup_windex + 1 
+0x4ac3 018671 bne 0 ,usb0_force_stall 
+0x4ac4 018672 fetch 1 ,mem_usb_setup_blength 
+0x4ac5 018673 bne 0 ,usb0_force_stall 
+0x4ac6 018674 fetch 1 ,mem_usb_setup_blengthh 
+0x4ac7 018675 bne 0 ,usb0_force_stall 
+0x4ac8 018676 fetch 1 ,mem_usb_setup_bvalue + 1 
+0x4ac9 018677 bne 0 ,usb0_force_stall 
+0x4aca 018678 fetch 1 ,mem_usb_setup_bvalue 
+0x4acb 018679 sub pdata ,usb_max_num_cfg ,null 
+0x4acc 018680 nbranch usb0_force_stall ,positive 
+0x4acd 018681 fetch 1 ,mem_usb0_state 
+0x4ace 018682 beq dev_address ,usb0_request_set_cfg_addr_state 
+0x4acf 018683 beq dev_configured ,usb0_request_set_cfg_cfg_state 
+0x4ad0 018684 branch usb0_force_stall 
+:      018686 usb0_request_set_cfg_addr_state:
+:      018687 usb0_request_set_cfg_cfg_state:
+0x4ad1 018688 fetch 1 ,mem_usb_setup_bvalue 
+0x4ad2 018689 beq 0 ,usb0_request_set_cfg_stay_addr_state 
+0x4ad3 018690 jam dev_configured ,mem_usb0_state 
+0x4ad4 018691 branch usb0_reply_zerolen 
+:      018692 usb0_request_set_cfg_stay_addr_state:
+0x4ad5 018693 jam dev_address ,mem_usb0_state 
+0x4ad6 018694 branch usb0_reply_zerolen 
+:      018697 usb0_request_set_interface:
+0x4ad7 018698 fetch 1 ,mem_usb0_state 
+0x4ad8 018699 bne dev_configured ,usb0_force_stall 
+0x4ad9 018700 fetch 1 ,mem_usb_setup_bmrequesttype 
+0x4ada 018701 bne out_interface ,usb0_force_stall 
+0x4adb 018702 fetch 1 ,mem_usb_setup_bvalue 
+0x4adc 018703 bne 0 ,usb0_force_stall 
+0x4add 018704 fetch 1 ,mem_usb_setup_bvalueh 
+0x4ade 018705 bne 0 ,usb0_force_stall 
+0x4adf 018706 fetch 1 ,mem_usb_setup_blength 
+0x4ae0 018707 bne 0 ,usb0_force_stall 
+0x4ae1 018708 fetch 1 ,mem_usb_setup_blengthh 
+0x4ae2 018709 bne 0 ,usb0_force_stall 
+0x4ae3 018710 fetch 1 ,mem_usb_setup_windex 
+0x4ae4 018711 bne 0 ,usb0_force_stall 
+0x4ae5 018712 fetch 1 ,mem_usb_setup_windex + 1 
+0x4ae6 018713 bne 0 ,usb0_force_stall 
+0x4ae7 018714 branch usb0_reply_zerolen 
+:      018717 usb_set_idle:
+0x4ae8 018718 jam 1 ,mem_usb_idle_flag 
+0x4ae9 018719 fetch 1 ,mem_usb_setup_bvalueh 
+0x4aea 018720 store 1 ,mem_usb_idle_rate 
+0x4aeb 018721 fetch 1 ,mem_usb_setup_windex 
+0x4aec 018722 sub pdata ,1 ,null 
+0x4aed 018723 call usb_clear_remote_wakeup_set0 ,zero 
+0x4aee 018724 fetch 1 ,mem_usb_state 
+0x4aef 018725 bne usb_resume ,usb0_reply_zerolen 
+0x4af0 018726 jam usb_connected ,mem_usb_state 
+0x4af1 018727 call usb0_reply_zerolen 
+0x4af2 018728 nop 30000 
+0x4af3 018729 nop 30000 
+0x4af4 018730 rtn 
+:      018731 usb_clear_remote_wakeup_set0:
+0x4af5 018732 jam 1 ,mem_usb_device_enumeration_endflag 
+0x4af6 018733 jam 0 ,mem_usb_clear_remote_wakeup 
+0x4af7 018734 jam usb_resume ,mem_usb_state 
+0x4af8 018735 rtn 
+:      018738 usb_set_report:
+0x4af9 018739 jam 1 ,mem_usb0_get_set_report 
+0x4afa 018740 call usb_set_report_resume_judge 
+0x4afb 018741 fetch 2 ,mem_usb_setup_bvalue 
+0x4afc 018742 store 2 ,mem_usb_setup_bvalue_temp 
+0x4afd 018743 fetch 1 ,mem_usb_setup_blength 
+0x4afe 018744 iforce loopcnt 
+0x4aff 018745 arg mem_usb0_setup ,contr 
+0x4b00 018746 arg mem_usb0_set_report_data ,contw 
+0x4b01 018747 call memcpy 
+0x4b02 018748 branch usb0_reply_zerolen 
+:      018750 usb_set_report_resume_judge:
+0x4b03 018751 fetch 2 ,mem_usb_setup_bvalue 
+0x4b04 018752 arg pc_set_report_bvalue ,temp 
+0x4b05 018753 isub temp ,null 
+0x4b06 018754 nrtn zero 
+0x4b07 018755 fetch 2 ,mem_usb_setup_windex 
+0x4b08 018756 arg pc_set_report_windex ,temp 
+0x4b09 018757 isub temp ,null 
+0x4b0a 018758 nrtn zero 
+0x4b0b 018759 fetch 2 ,mem_usb_setup_blength 
+0x4b0c 018760 arg pc_set_report_blength ,temp 
+0x4b0d 018761 isub temp ,null 
+0x4b0e 018762 nrtn zero 
+0x4b0f 018763 jam 1 ,mem_usb_tx_win_enable 
+0x4b10 018764 rtn 
+:      018767 usb_set_protocol_req:
+0x4b11 018768 fetch 1 ,mem_usb_setup_blength 
+0x4b12 018769 bne 0 ,usb0_force_stall 
+0x4b13 018770 fetch 1 ,mem_usb_setup_bvalue 
+0x4b14 018771 beq boot_protocol ,usb_set_boot_protocol 
+0x4b15 018772 beq report_protocol ,usb_set_report_protocol 
+0x4b16 018773 branch usb0_force_stall 
+:      018774 usb_set_boot_protocol:
+0x4b17 018775 jam 0 ,mem_usb_set_protocol_status 
+0x4b18 018776 jam 1 ,mem_usb_set_protocol_value 
+0x4b19 018777 branch usb0_reply_zerolen 
+:      018778 usb_set_report_protocol:
+0x4b1a 018779 jam 1 ,mem_usb_tx_mac_enable 
+0x4b1b 018780 jam 1 ,mem_usb_set_protocol_status 
+0x4b1c 018781 jam 0 ,mem_usb_set_protocol_value 
+0x4b1d 018782 branch usb0_reply_zerolen 
+:      018785 usb0_respond_length:
+0x4b1e 018786 ifetch 1 ,rega 
+0x4b1f 018787 iforce regb 
+0x4b20 018788 increase 1 ,rega 
+:      018790 usb0_respond:
+0x4b21 018791 bpatch patch1f_2 ,mem_patch1f 
+0x4b22 018792 bmark0 mark_isstr ,usb0_respond0 
+0x4b23 018793 add regb ,1 ,pdata 
+0x4b24 018794 lshift pdata ,pdata 
+0x4b25 018795 hstore 1 ,core_usb_dfifo0 
+0x4b26 018796 jam 3 ,core_usb_dfifo0 
+0x4b27 018797 fetch 1 ,mem_usb_setup_blength 
+0x4b28 018798 increase -2 ,pdata 
+0x4b29 018799 rshift pdata ,pdata 
+0x4b2a 018800 store 1 ,mem_usb_setup_blength 
+0x4b2b 018801 beq 0 ,usb_no_respond_data 
+:      018802 usb0_respond0:
+0x4b2c 018803 fetch 2 ,mem_usb_setup_blength 
+0x4b2d 018804 isub regb ,null 
+0x4b2e 018805 branch usb0_respond1 ,positive 
+0x4b2f 018806 copy pdata ,regb 
+:      018807 usb0_respond1:
+0x4b30 018808 deposit rega 
+0x4b31 018809 store 2 ,mem_bufptr 
+0x4b32 018810 deposit regb 
+0x4b33 018811 store 1 ,mem_remain 
+0x4b34 018812 branch usb0_tx 
+:      018814 usb_no_respond_data:
+0x4b35 018815 arg 0 ,queue 
+0x4b36 018816 branch usb_trig 
+:      018819 usb0_tx:
+0x4b37 018820 bpatch patch1f_3 ,mem_patch1f 
+0x4b38 018821 fetch 1 ,mem_remain 
+0x4b39 018822 rtn blank 
+0x4b3a 018823 copy pdata ,loopcnt 
+0x4b3b 018824 sub pdata ,ep0_packet_size ,null 
+0x4b3c 018825 branch usb0_tx_info ,positive 
+0x4b3d 018826 arg ep0_packet_size ,loopcnt 
+:      018827 usb0_tx_info:
+0x4b3e 018828 fetch 1 ,mem_remain 
+0x4b3f 018829 isub loopcnt ,pdata 
+0x4b40 018830 store 1 ,mem_remain 
+0x4b41 018831 fetch 2 ,mem_bufptr 
+0x4b42 018832 copy pdata ,contr 
+:      018833 usb0_tx0:
+0x4b43 018834 ifetch 1 ,contr 
+0x4b44 018835 hstore 1 ,core_usb_dfifo0 
+0x4b45 018836 bmark0 mark_isstr ,usb0_tx1 
+0x4b46 018837 jam 0 ,core_usb_dfifo0 
+:      018838 usb0_tx1:
+0x4b47 018839 loop usb0_tx0 
+0x4b48 018840 copy contr ,pdata 
+0x4b49 018841 store 2 ,mem_bufptr 
+0x4b4a 018842 arg 0 ,queue 
+0x4b4b 018843 call usb_trig 
+0x4b4c 018844 fetch 1 ,mem_remain 
+0x4b4d 018845 nrtn blank 
+0x4b4e 018846 fetch 1 ,mem_usb_state 
+0x4b4f 018847 rtnne usb_got_report_req 
+0x4b50 018848 jam usb_connected ,mem_usb_state 
+0x4b51 018849 rtn 
+:      018852 usb_tx_ep1:
+0x4b52 018853 arg core_usb_dfifo1 ,rega 
+0x4b53 018854 arg 1 ,queue 
+:      018855 usb_tx_loop:
+0x4b54 018856 ifetch 1 ,contr 
+0x4b55 018857 istore 1 ,rega 
+0x4b56 018858 loop usb_tx_loop 
+:      018859 usb_trig:
+0x4b57 018860 setarg 0 
+0x4b58 018861 qset1 pdata 
+0x4b59 018862 hstore 1 ,core_usb_trig 
+0x4b5a 018863 fetcht 1 ,mem_usb_tx_wait 
+0x4b5b 018864 ior temp ,pdata 
+0x4b5c 018865 store 1 ,mem_usb_tx_wait 
+0x4b5d 018866 rtn 
+:      018868 usb_tx_ep2:
+0x4b5e 018869 arg 2 ,queue 
+0x4b5f 018870 arg core_usb_dfifo2 ,rega 
+0x4b60 018871 branch usb_tx_loop 
+:      018873 usb_tx:
+0x4b61 018874 bpatch patch1f_4 ,mem_patch1f 
+0x4b62 018875 fetch 1 ,mem_usb_tx_enable 
+0x4b63 018876 rtn blank 
+0x4b64 018877 fetch 1 ,mem_usb_tx_wait 
+0x4b65 018878 nbranch usb_inwake_state_tx_dispose ,blank 
+0x4b66 018879 fetch 1 ,mem_usb_device_enumeration_endflag 
+0x4b67 018880 branch usb_tx_fifo_release ,blank 
+0x4b68 018881 fetch 1 ,mem_usb_state 
+0x4b69 018882 beq usb_sleep ,usb_windows_wakeup 
+0x4b6a 018883 bne usb_connected ,usb_tx_fifo_release 
+0x4b6b 018884 fetch 1 ,mem_usb_clear_remote_wakeup 
+0x4b6c 018885 nbranch usb_tx_fifo_release ,blank 
+0x4b6d 018886 call usb_tx_data_ep1 
+0x4b6e 018887 branch usb_tx_data_ep2 
+:      018889 usb_tx_data_ep1:
+0x4b6f 018890 fetch 1 ,mem_usb_tx_enable 
+0x4b70 018891 rtnbit0 1 
+0x4b71 018892 fetch 1 ,mem_usb_tx_wait 
+0x4b72 018893 rtnbit1 1 
+0x4b73 018894 fetch 1 ,mem_usb_tx_enable 
+0x4b74 018895 set0 1 ,pdata 
+0x4b75 018896 store 1 ,mem_usb_tx_enable 
+0x4b76 018897 fetch 1 ,mem_usb_ep1_data 
+0x4b77 018898 rtn blank 
+0x4b78 018899 beq usb_ep1_kb ,usb_tx_kb_normal_data 
+0x4b79 018900 branch assert 
+:      018902 usb_tx_data_ep2:
+0x4b7a 018903 fetch 1 ,mem_usb_tx_enable 
+0x4b7b 018904 rtnbit0 2 
+0x4b7c 018905 fetch 1 ,mem_usb_tx_wait 
+0x4b7d 018906 rtnbit1 2 
+0x4b7e 018907 fetch 1 ,mem_usb_tx_enable 
+0x4b7f 018908 set0 2 ,pdata 
+0x4b80 018909 store 1 ,mem_usb_tx_enable 
+0x4b81 018910 fetch 1 ,mem_usb_ep2_data 
+0x4b82 018911 rtn blank 
+0x4b83 018912 beq usb_ep2_ms ,usb_tx_ms_data 
+0x4b84 018913 beq usb_ep2_multikey ,usb_tx_kb_multikey_data 
+0x4b85 018914 branch assert 
+:      018916 usb_tx_fifo_release:
+0x4b86 018918 arg mem_usb_mouse_data ,contw 
+0x4b87 018919 arg 6 ,loopcnt 
+0x4b88 018920 branch memset0 
+:      018922 usb_tx_ms_data:
+0x4b89 018923 fetch 1 ,mem_usb_idle_flag 
+0x4b8a 018924 fetcht 1 ,mem_usb_get_protocol_flag 
+0x4b8b 018925 iand temp ,pdata 
+0x4b8c 018926 branch usb_tx_ms_data_normal_mode ,blank 
+0x4b8d 018927 fetcht 1 ,mem_usb_set_protocol_status 
+0x4b8e 018928 iadd temp ,pdata 
+0x4b8f 018929 beq mac_boot_mode ,usb_tx_ms_data_mac_boot_mode 
+0x4b90 018930 branch usb_tx_ms_data_normal_mode 
+:      018932 usb_tx_ms_data_mac_boot_mode:
+0x4b91 018933 jam 0 ,mem_usb_ep2_data 
+:      018934 usb_tx_ms_data_mac_boot_regroup:
+0x4b92 018935 fetch 1 ,mem_usb_mouse_data + 1 
+0x4b93 018936 beq r_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
+0x4b94 018937 beq lr_key ,usb_tx_mac_boot_ms_regroup_r_or_lrkey 
+0x4b95 018938 fetch 1 ,mem_usb_mouse_data + 1 
+0x4b96 018939 store 1 ,mem_usb_mouse_data 
+0x4b97 018940 fetch 1 ,mem_usb_mouse_data + 2 
+0x4b98 018941 istore 1 ,contw 
+0x4b99 018942 fetch 1 ,mem_usb_mouse_data + 4 
+0x4b9a 018943 istore 1 ,contw 
+0x4b9b 018944 fetch 1 ,mem_usb_mouse_data + 6 
+0x4b9c 018945 istore 1 ,contw 
+0x4b9d 018946 arg 4 ,loopcnt 
+0x4b9e 018947 arg mem_usb_mouse_data ,contr 
+0x4b9f 018948 branch usb_tx_ep2 
+:      018950 usb_tx_ms_data_normal_mode:
+0x4ba0 018951 jam 0 ,mem_usb_ep2_data 
+:      018952 usb_tx_mac_boot_ms_regroup_r_or_lrkey:
+0x4ba1 018953 arg 8 ,loopcnt 
+0x4ba2 018954 arg mem_usb_mouse_data ,contr 
+0x4ba3 018955 branch usb_tx_ep2 
+:      018957 usb_tx_kb_multikey_data:
+0x4ba4 018958 jam 0 ,mem_usb_ep2_data 
+0x4ba5 018959 arg 3 ,loopcnt 
+0x4ba6 018960 arg mem_usb_kb_multikey ,contr 
+0x4ba7 018961 branch usb_tx_ep2 
+:      018963 usb_tx_kb_normal_data:
+0x4ba8 018964 jam 0 ,mem_usb_ep1_data 
+0x4ba9 018965 arg 8 ,loopcnt 
+0x4baa 018966 arg mem_usb_kb_data ,contr 
+0x4bab 018967 branch usb_tx_ep1 
+:      018969 usb_inwake_state_tx_dispose:
+0x4bac 018970 fetch 1 ,mem_usb_state 
+0x4bad 018971 beq usb_sleep ,usb_clear_tx_wait 
+0x4bae 018972 beq usb_connected ,usb_mac_wakeup_trig 
+0x4baf 018973 rtn 
+:      018974 usb_clear_tx_wait:
+0x4bb0 018975 jam 0 ,mem_usb_tx_wait 
+0x4bb1 018976 rtn 
+:      018977 usb_mac_wakeup_trig:
+0x4bb2 018978 hfetch 1 ,core_usb_config 
+0x4bb3 018979 set1 7 ,pdata 
+0x4bb4 018980 hstore 1 ,core_usb_config 
+0x4bb5 018981 jam 1 ,mem_usb_mac_wakeup_trig 
+0x4bb6 018982 rtn 
+:      018984 usb_mac_wakeup_judge:
+0x4bb7 018985 fetch 1 ,mem_usb_state 
+0x4bb8 018986 rtneq usb_sleep 
+0x4bb9 018987 beq usb_connected ,usb_mac_wakeup 
+0x4bba 018988 rtn 
+:      018989 usb_mac_wakeup:
+0x4bbb 018990 fetch 1 ,mem_usb_mac_wakeup_trig 
+0x4bbc 018991 rtn blank 
+0x4bbd 018992 jam 1 ,mem_usb_wakestate_onetime_flag 
+0x4bbe 018993 branch usb_wakeup 
+:      018995 usb_windows_wakeup:
+0x4bbf 018996 arg timer_wakeup ,queue 
+0x4bc0 018997 call timer_check 
+0x4bc1 018998 nrtn blank 
+:      018999 usb_wakeup:
+0x4bc2 019000 hfetch 1 ,core_usb_config 
+0x4bc3 019001 rtnbit0 7 
+0x4bc4 019002 jam 0xfc ,core_usb_config 
+0x4bc5 019003 nop 30000 
+0x4bc6 019004 jam 0x3c ,core_usb_config 
+0x4bc7 019005 rtn 
+:      019012 hci_rx_h4:
+0x4bc8 019013 bpatch patch1f_5 ,mem_patch1f 
+0x4bc9 019014 fetch 1 ,mem_hci_cmd 
+0x4bca 019015 nrtn blank 
+:      019016 hci_rx_h4_1:
+0x4bcb 019017 call hci_h4_parse_packet 
+0x4bcc 019018 ncall h4_rx_discard_packet ,user 
+0x4bcd 019019 rtn 
+:      019021 hci_h4_parse_packet:
+0x4bce 019022 bpatch patch1f_6 ,mem_patch1f 
+0x4bcf 019023 copy contru ,rega 
+0x4bd0 019024 arg 4 ,temp 
+0x4bd1 019025 ifetch 1 ,contru 
+0x4bd2 019026 beq hci_h4_type_cmd ,hci_h4_parse_packet_wait_len 
+0x4bd3 019027 increase 1 ,temp 
+0x4bd4 019028 beq hci_h4_type_acl ,hci_h4_parse_packet_wait_len 
+0x4bd5 019029 copy contru ,pdata 
+0x4bd6 019030 hstore 2 ,core_uart_rrptr 
+0x4bd7 019031 rtn 
+:      019032 hci_h4_parse_packet_wait_len:
+0x4bd8 019033 hfetch 2 ,core_uart_rxitems 
+0x4bd9 019034 isub temp ,null 
+0x4bda 019035 nbranch hci_h4_parse_packet_wait_len ,positive 
+0x4bdb 019037 disable user 
+0x4bdc 019038 copy rega ,contru 
+0x4bdd 019039 call h4_get_rx_payload_len 
+0x4bde 019040 iadd temp ,temp 
+:      019041 hci_h4_parse_packet_wait:
+0x4bdf 019042 hfetch 2 ,core_uart_rxitems 
+0x4be0 019043 isub temp ,null 
+0x4be1 019044 nbranch hci_h4_parse_packet_wait ,positive 
+0x4be2 019045 copy rega ,contru 
+0x4be3 019046 ifetch 1 ,contru 
+0x4be4 019047 beq hci_h4_type_cmd ,process_hci_cmd 
+0x4be5 019048 branch assert 
+:      019050 h4_rx_discard_packet:
+0x4be6 019051 bpatch patch1f_7 ,mem_patch1f 
+0x4be7 019052 hfetch 2 ,core_uart_rrptr 
+0x4be8 019053 iforce contru 
+0x4be9 019054 call h4_get_rx_payload_len 
+0x4bea 019055 iadd contru ,contru 
+0x4beb 019056 deposit contru 
+0x4bec 019057 hstore 2 ,core_uart_rrptr 
+0x4bed 019058 rtn 
+:      019063 h4_get_rx_payload_len:
+0x4bee 019064 ifetch 1 ,contru 
+0x4bef 019065 increase 2 ,contru 
+0x4bf0 019066 beq hci_h4_type_acl ,h4_get_rx_payload_len_acl 
+0x4bf1 019067 ifetch 1 ,contru 
+0x4bf2 019068 rtn 
+:      019069 h4_get_rx_payload_len_acl:
+0x4bf3 019070 ifetch 2 ,contru 
+0x4bf4 019071 rtn 
+:      019073 h4_get_tx_ptr:
+0x4bf5 019074 hfetch 2 ,core_uart_twptr 
+0x4bf6 019075 increase -5 ,contwu 
+0x4bf7 019076 iadd contwu ,contwu 
+0x4bf8 019077 rtn 
+:      019079 h4_send_packet_event:
+0x4bf9 019080 arg hci_h4_type_event ,temp 
+0x4bfa 019081 branch h4_send_packet 
+:      019082 h4_send_packet_acl:
+0x4bfb 019083 arg hci_h4_type_acl ,temp 
+:      019084 h4_send_packet:
+0x4bfc 019085 bpatchx patch20_0 ,mem_patch20 
+0x4bfd 019086 increase 1 ,loopcnt 
+0x4bfe 019087 hfetch 2 ,core_uart_twptr 
+0x4bff 019088 copy pdata ,contwu 
+0x4c00 019089 copy loopcnt ,pdata 
+0x4c01 019090 istoret 1 ,contwu 
+0x4c02 019091 increase -1 ,pdata 
+0x4c03 019092 iadd contwu ,contwu 
+0x4c04 019093 copy contwu ,pdata 
+0x4c05 019094 store 2 ,mem_hci_acl_tx_trigger_wptr 
+0x4c06 019095 copy temp ,pdata 
+0x4c07 019096 rtneq hci_h4_type_acl 
+0x4c08 019097 fetch 2 ,mem_hci_acl_tx_trigger_wptr 
+0x4c09 019098 hstore 2 ,core_uart_twptr 
+0x4c0a 019099 branch h4_send_acl_trigger_clear 
+:      019102 h4_send_acl_trigger_clear:
+0x4c0b 019103 setarg 0 
+0x4c0c 019104 store 2 ,mem_hci_acl_tx_trigger_wptr 
+0x4c0d 019105 rtn 
+:      019112 hci_init:
+0x4c0e 019113 rtn wake 
+0x4c0f 019114 setarg hci_idle_dispatch 
+0x4c10 019115 store 2 ,mem_cb_idle_process 
+0x4c11 019117 setarg uart_baud_115200 
+0x4c12 019118 store uart_baud_len ,mem_baud 
+:      019119 hci_lpm_init:
+0x4c13 019120 setarg mem_h5rx_buf 
+0x4c14 019121 hstore 2 ,core_uart_rsaddr 
+0x4c15 019122 setarg mem_h5rx_buf_end 
+0x4c16 019123 hstore 2 ,core_uart_readdr 
+0x4c17 019124 setarg mem_h5tx_buf 
+0x4c18 019125 hstore 2 ,core_uart_tsaddr 
+0x4c19 019126 call hci_sel_init 
+:      019127 hci_reinit:
+0x4c1a 019128 jam 0x0 ,core_uart_ctrl 
+0x4c1b 019129 setarg mem_h5tx_buf 
+0x4c1c 019130 hstore 2 ,core_uart_twptr 
+0x4c1d 019131 hstore 2 ,core_uart_trptrp 
+0x4c1e 019132 setarg mem_h5rx_buf 
+0x4c1f 019133 hstore 2 ,core_uart_rrptr 
+0x4c20 019134 store 2 ,mem_h5rx_rptr 
+:      019135 hci_init_common:
+0x4c21 019136 hfetch 2 ,core_clkoff 
+0x4c22 019137 set0 clock_off_uart ,pdata 
+0x4c23 019138 hstore 2 ,core_clkoff 
+0x4c24 019139 call uart_set_baud_by_mem 
+0x4c25 019140 jam uartclk_dpll ,core_uart_clksel 
+0x4c26 019141 jam uart_ctrl_h4 ,core_uart_ctrl 
+0x4c27 019142 rtn 
+:      019144 hci_sel_init:
+0x4c28 019145 setarg mem_h5tx_buf_end 
+0x4c29 019146 hstore 2 ,core_uart_teaddr 
+0x4c2a 019147 hfetch 1 ,core_gpio_sel1 
+0x4c2b 019148 or_into 0x07 ,pdata 
+0x4c2c 019149 hstore 1 ,core_gpio_sel1 
+0x4c2d 019150 rtn 
+:      019153 hci_rx_packet:
+0x4c2e 019154 bpatchx patch20_1 ,mem_patch20 
+0x4c2f 019155 hfetch 1 ,core_uart_status 
+0x4c30 019156 iforce regb 
+0x4c31 019157 bbit0 uart_status_rx_fifo_empty ,hci_rx_packet_cont 
+0x4c32 019158 hfetch 2 ,core_uart_rxitems 
+0x4c33 019159 iforce regc 
+0x4c34 019160 arg 0x44f ,temp 
+0x4c35 019161 isub temp ,null 
+0x4c36 019162 nrtn zero 
+:      019163 hci_rx_packet_cont:
+0x4c37 019164 hfetch 2 ,core_uart_rrptr 
+0x4c38 019165 iforce contru 
+0x4c39 019166 branch hci_rx_h4 
+:      019168 uart_send_byte:
+0x4c3a 019169 hfetcht 1 ,core_uart_status 
+0x4c3b 019170 isolate1 6 ,temp 
+0x4c3c 019171 branch uart_send_byte ,true 
+0x4c3d 019172 hstore 1 ,core_uart_txd 
+0x4c3e 019173 rtn 
+:      019175 process_hci_cmd:
+0x4c3f 019176 bpatchx patch20_2 ,mem_patch20 
+0x4c40 019177 fetch 1 ,mem_hci_cmd 
+0x4c41 019178 branch process_hci_cmd_cont ,blank 
+0x4c42 019179 enable user 
+0x4c43 019180 rtn 
+:      019181 process_hci_cmd_cont:
+0x4c44 019182 ifetch 2 ,contru 
+0x4c45 019183 iforce alarm 
+0x4c46 019184 iforce queue 
+0x4c47 019185 ifetch 1 ,contru 
+0x4c48 019186 iforce temp 
+0x4c49 019187 rshift2 alarm ,pdata 
+0x4c4a 019188 rshift8 pdata ,pdata 
+0x4c4b 019189 beq hci_ogf_vendor_specific ,phci_grp_vendor_specific 
+0x4c4c 019190 rtn 
+:      019193 phci_grp_vendor_specific:
+0x4c4d 019194 bpatchx patch20_3 ,mem_patch20 
+0x4c4e 019195 deposit queue 
+0x4c4f 019196 beq hci_vendor_cmd_reset ,hci_normal_reply 
+0x4c50 019197 beq hci_vendor_cmd_chipid ,phci_grp_vendor_chipid 
+0x4c51 019198 beq hci_vendor_cmd_baud ,phci_grp_vendor_baud 
+0x4c52 019199 beq hci_vendor_cmd_patch ,phci_grp_vendor_patch 
+0x4c53 019200 beq hci_vendor_cmd_patch_done ,phci_grp_vendor_done 
+0x4c54 019201 beq hci_vendor_cmd_echo ,hci_normal_reply 
+0x4c55 019202 beq hci_vendor_cmd_bdaddr ,phci_grp_vendor_bdaddr 
+0x4c56 019203 beq hci_vendor_cmd_enter_lpm ,phci_grp_vendor_enter_lpm 
+0x4c57 019205 beq hci_vendor_cmd_mem ,phci_grp_vendor_mem 
+0x4c58 019206 beq hci_vendor_cmd_eep ,phci_grp_vendor_eep 
+0x4c59 019207 beq hci_vendor_cmd_patch_sec_init ,phci_grp_vendor_patch_sec_init 
+0x4c5a 019208 beq hci_vendor_cmd_patch_sec ,phci_grp_vendor_patch_sec 
+0x4c5b 019209 branch hci_normal_reply 
+:      019211 phci_grp_vendor_enter_lpm:
+0x4c5c 019212 call hci_normal_reply 
+0x4c5d 019213 call wait_uarttx 
+0x4c5e 019214 call gpio_pu_uart_tx 
+:      019215 hci_enter_lpm:
+0x4c5f 019216 call app_put_lpm_wake_lock 
+0x4c60 019217 call app_l2cap_flow_control_enable 
+0x4c61 019218 branch gpio_rx_config_input_with_pu 
+:      019220 hci_exit_lpm:
+0x4c62 019221 jam hci_rx_ready ,mem_hci_lt_rx_state 
+0x4c63 019222 call app_get_lpm_wake_lock 
+0x4c64 019223 call hci_lpm_init 
+0x4c65 019224 branch app_l2cap_flow_control_disable 
+:      019226 phci_grp_vendor_chipid:
+0x4c66 019227 call hci_get_cmd_complete_ptr 
+0x4c67 019228 hfetch 2 ,core_chipid 
+0x4c68 019229 istore 2 ,contwu 
+0x4c69 019230 force 6 ,loopcnt 
+0x4c6a 019231 branch hci_command_complete 
+:      019233 phci_grp_vendor_baud:
+0x4c6b 019234 ifetch 2 ,contru 
+0x4c6c 019235 store 2 ,mem_baud 
+0x4c6d 019236 hstore 2 ,core_uart_baud 
+0x4c6e 019237 rtn 
+:      019240 phci_grp_vendor_patch_common:
+0x4c6f 019242 ifetch 1 ,contru 
+0x4c70 019243 copy pdata ,temp 
+0x4c71 019244 hstore 1 ,core_ucode_low 
+0x4c72 019245 ifetch 1 ,contru 
+0x4c73 019246 iadd temp ,temp 
+0x4c74 019247 set1 7 ,pdata 
+0x4c75 019248 hstore 1 ,core_ucode_ctrl 
+0x4c76 019249 ifetch 1 ,contru 
+0x4c77 019250 iadd temp ,temp 
+0x4c78 019251 copy pdata ,loopcnt 
+0x4c79 019252 rtn 
+:      019254 phci_grp_vendor_patch:
+0x4c7a 019255 bmark1 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+0x4c7b 019256 call phci_grp_vendor_patch_common 
+:      019257 phci_grp_vendor_patch_loop:
+0x4c7c 019258 ifetch 1 ,contru 
+0x4c7d 019259 hstore 1 ,core_ucode_data 
+0x4c7e 019260 iadd temp ,temp 
+0x4c7f 019261 loop phci_grp_vendor_patch_loop 
+:      019262 phci_grp_vendor_patch_check_sum:
+0x4c80 019263 and temp ,0xff ,temp 
+0x4c81 019264 ifetch 1 ,contru 
+0x4c82 019265 isub temp ,null 
+0x4c83 019266 nbranch phci_grp_vendor_patch_bad ,zero 
+0x4c84 019267 branch hci_normal_reply 
+:      019270 phci_grp_vendor_patch_sec:
+0x4c85 019271 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+0x4c86 019272 call phci_grp_vendor_patch_common 
+0x4c87 019273 store 8 ,mem_pdatatemp 
+:      019274 phci_grp_vendor_patch_sec_loop:
+0x4c88 019275 call do_aes_cbc 
+0x4c89 019276 arg 16 ,loopcnt 
+0x4c8a 019277 arg mem_temp_block0 ,contw 
+0x4c8b 019278 call load_uart_sum_loop 
+0x4c8c 019279 storet 8 ,mem_temp 
+0x4c8d 019280 arg mem_temp_block2 ,contw 
+0x4c8e 019281 call store_aes_result 
+0x4c8f 019282 arg mem_temp_block2 ,rega 
+0x4c90 019283 arg mem_temp_block0 ,regb 
+0x4c91 019284 arg mem_temp_block3 ,contw 
+0x4c92 019285 call xor16 
+0x4c93 019286 arg 16 ,loopcnt 
+0x4c94 019287 arg mem_temp_block3 ,contr 
+0x4c95 019288 call load_ucode_only_loop 
+0x4c96 019289 fetcht 8 ,mem_temp 
+0x4c97 019290 fetch 8 ,mem_pdatatemp 
+0x4c98 019291 increase -16 ,pdata 
+0x4c99 019292 store 8 ,mem_pdatatemp 
+0x4c9a 019293 nbranch phci_grp_vendor_patch_sec_loop ,blank 
+0x4c9b 019294 branch phci_grp_vendor_patch_check_sum 
+:      019296 load_ucode_only_loop:
+0x4c9c 019297 ifetch 1 ,contr 
+0x4c9d 019298 hstore 1 ,core_ucode_data 
+0x4c9e 019299 loop load_ucode_only_loop 
+0x4c9f 019300 rtn 
+:      019302 load_uart_sum_loop:
+0x4ca0 019303 ifetch 1 ,contru 
+0x4ca1 019304 istore 1 ,contw 
+0x4ca2 019305 iadd temp ,temp 
+0x4ca3 019306 loop load_uart_sum_loop 
+0x4ca4 019307 rtn 
+:      019309 phci_grp_vendor_patch_sec_init:
+0x4ca5 019310 bmark0 mark_otp_encrypt ,phci_grp_vendor_patch_bad 
+0x4ca6 019311 arg 0 ,temp 
+0x4ca7 019312 arg 16 ,loopcnt 
+0x4ca8 019313 arg mem_temp_block0 ,contw 
+0x4ca9 019314 call load_uart_sum_loop 
+0x4caa 019315 hfetch 1 ,core_gpio_key2 
+0x4cab 019316 and_into 0xfd ,pdata 
+0x4cac 019317 hstore 1 ,core_gpio_key2 
+0x4cad 019318 arg mem_temp_block0 ,contr 
+0x4cae 019319 arg 16 ,loopcnt 
+0x4caf 019320 call aes_load_data 
+0x4cb0 019321 call aes_init 
+0x4cb1 019322 call aes_clear_data 
+0x4cb2 019323 branch phci_grp_vendor_patch_check_sum 
+:      019326 phci_grp_vendor_done:
+0x4cb3 019327 arg 0x20 ,loopcnt 
+0x4cb4 019328 arg mem_patch00 ,contw 
+0x4cb5 019329 arg 0 ,temp 
+:      019330 phci_grp_vendor_done_loop:
+0x4cb6 019331 ifetch 1 ,contru 
+0x4cb7 019332 istore 1 ,contw 
+0x4cb8 019333 iadd temp ,temp 
+0x4cb9 019334 loop phci_grp_vendor_done_loop 
+0x4cba 019335 and temp ,0xff ,temp 
+0x4cbb 019336 ifetch 1 ,contru 
+0x4cbc 019337 isub temp ,null 
+0x4cbd 019338 nbranch phci_grp_vendor_patch_bad ,zero 
+0x4cbe 019339 jam 0 ,core_ucode_ctrl 
+0x4cbf 019340 call hci_normal_reply 
+0x4cc0 019341 call h4_rx_discard_packet 
+0x4cc1 019342 call clear_key_buf 
+0x4cc2 019343 call wait_uarttx 
+0x4cc3 019344 branch soft_reset 
+:      019346 phci_grp_vendor_patch_bad:
+0x4cc4 019347 jam 0 ,core_ucode_ctrl 
+0x4cc5 019348 branch start 
+:      019350 phci_grp_vendor_bdaddr:
+0x4cc6 019351 ifetch 6 ,contru 
+0x4cc7 019352 store 6 ,mem_lap 
+0x4cc8 019353 branch hci_normal_reply 
+:      019356 phci_grp_vendor_mem:
+0x4cc9 019357 ifetch 1 ,contru 
+0x4cca 019358 store 1 ,mem_hci_curr_len 
+0x4ccb 019359 copy pdata ,loopcnt 
+0x4ccc 019360 ifetch 2 ,contru 
+0x4ccd 019361 store 2 ,mem_hci_curr_target 
+0x4cce 019362 copy pdata ,contw 
+0x4ccf 019363 call uart_copy_rx_bytes 
+0x4cd0 019364 branch hci_normal_reply 
+:      019367 phci_grp_vendor_eep:
+0x4cd1 019368 ifetch 1 ,contru 
+0x4cd2 019369 store 1 ,mem_hci_curr_len 
+0x4cd3 019370 copy pdata ,loopcnt 
+0x4cd4 019371 ifetch 2 ,contru 
+0x4cd5 019372 store 2 ,mem_hci_curr_target 
+0x4cd6 019373 arg mem_l2cap_rxbuff1 ,contw 
+0x4cd7 019374 call uart_copy_rx_bytes 
+0x4cd8 019375 fetcht 1 ,mem_hci_curr_len 
+0x4cd9 019376 arg mem_l2cap_rxbuff1 ,rega 
+0x4cda 019377 fetch 2 ,mem_hci_curr_target 
+0x4cdb 019378 branch iicd_write_ota_data 
+:      019383 hci_normal_reply:
+0x4cdc 019384 force 4 ,loopcnt 
+:      019385 hci_command_complete:
+0x4cdd 019386 call hci_get_payload_ptr 
+0x4cde 019387 force 0x1 ,pdata 
+0x4cdf 019388 istore 1 ,contwu 
+0x4ce0 019389 deposit alarm 
+0x4ce1 019390 istore 3 ,contwu 
+0x4ce2 019391 force hci_event_command_complete ,queue 
+:      019392 hci_send_event:
+0x4ce3 019393 bpatchx patch20_4 ,mem_patch20 
+0x4ce4 019394 call hci_get_packet_ptr 
+0x4ce5 019395 deposit queue 
+0x4ce6 019396 istore 1 ,contwu 
+0x4ce7 019397 deposit loopcnt 
+0x4ce8 019398 istore 1 ,contwu 
+:      019399 hci_send_event_raw:
+0x4ce9 019400 force 5 ,queue 
+0x4cea 019401 increase 2 ,loopcnt 
+:      019402 hci_send_packet:
+0x4ceb 019403 branch h4_send_packet_event 
+:      019405 hci_send_commu_ready_event:
+0x4cec 019406 force hci_event_vendor_specific ,queue 
+0x4ced 019407 call hci_get_payload_ptr 
+0x4cee 019408 setarg hci_vendor_event_commu_ready 
+0x4cef 019409 istore 1 ,contwu 
+0x4cf0 019410 force 1 ,loopcnt 
+0x4cf1 019411 branch hci_send_event 
+:      019413 hci_get_cmd_complete_ptr:
+0x4cf2 019414 force 12 ,contwu 
+0x4cf3 019415 branch hci_get_tx_ptr 
+:      019417 hci_get_payload_ptr:
+0x4cf4 019418 force 8 ,contwu 
+0x4cf5 019419 branch hci_get_tx_ptr 
+:      019421 hci_get_packet_ptr:
+0x4cf6 019422 force 6 ,contwu 
+:      019423 hci_get_tx_ptr:
+0x4cf7 019424 branch h4_get_tx_ptr 
+:      019428 calc_tx_crc16:
+0x4cf8 019429 pulse crc16 
+0x4cf9 019430 enable enable_crc 
+:      019431 crcloop:
+0x4cfa 019432 ifetch 1 ,contwu 
+0x4cfb 019433 inject bucket ,8 
+0x4cfc 019434 loop crcloop 
+0x4cfd 019435 enable enable_parity 
+0x4cfe 019436 inject bucket ,16 
+0x4cff 019437 disable enable_parity 
+0x4d00 019438 disable enable_crc 
+0x4d01 019439 disable crc16 
+0x4d02 019440 byteswap pdata ,pdata 
+0x4d03 019441 rtn 
+:      019445 cmd_exit:
+0x4d04 019446 jam 0 ,mem_hci_cmd 
+0x4d05 019447 rtn 
+:      019448 cmd_check_plap:
+0x4d06 019449 fetch 6 ,mem_hci_plap 
+0x4d07 019450 fetcht 6 ,mem_plap 
+0x4d08 019451 isub temp ,null 
+0x4d09 019452 rtn 
+:      019457 cmd_pair:
+0x4d0a 019458 fetch 1 ,mem_op 
+0x4d0b 019459 bbit1 op_inrand_req ,cmd_pair_passive 
+0x4d0c 019460 call tid_initiate 
+0x4d0d 019461 jam lmp_in_rand ,mem_lmo_opcode2 
+0x4d0e 019462 branch cmd_exit 
+:      019463 cmd_pair_passive:
+0x4d0f 019464 set0 op_inrand_req ,pdata 
+0x4d10 019465 store 1 ,mem_op 
+0x4d11 019466 call lmp_accept_inrand 
+0x4d12 019467 setarg 0 
+0x4d13 019468 setflag master ,smap_lmptid ,pdata 
+0x4d14 019469 store 1 ,mem_lmo_tid2 
+0x4d15 019470 branch cmd_exit 
+0x4d16 019471 rtn 
+:      019472 cmd_in_sniff:
+0x4d17 019473 jam lmp_sniff_req ,mem_lmo_opcode2 
+0x4d18 019474 arg mem_sniff_payload ,contw 
+0x4d19 019475 setarg 0 
+0x4d1a 019476 isolate1 27 ,clke_bt 
+0x4d1b 019477 setflag true ,1 ,pdata 
+0x4d1c 019478 istore 1 ,contw 
+0x4d1d 019479 setarg 0 
+0x4d1e 019480 istore 2 ,contw 
+0x4d1f 019481 fetch 2 ,mem_sniff_param_interval 
+0x4d20 019482 istore 2 ,contw 
+0x4d21 019483 fetch 1 ,mem_sniff_param_attempt 
+0x4d22 019484 istore 2 ,contw 
+0x4d23 019485 fetch 1 ,mem_sniff_param_timeout 
+0x4d24 019486 istore 2 ,contw 
+0x4d25 019487 branch cmd_exit 
+:      019489 cmd_exit_sniff:
+0x4d26 019490 jam lmp_unsniff_req ,mem_lmo_opcode2 
+0x4d27 019491 branch cmd_exit 
+:      019493 hci_idle_dispatch:
+0x4d28 019494 call gpio_check_uart_state 
+0x4d29 019495 rtn true 
+0x4d2a 019496 arg uart_wakeup_rx ,temp 
+0x4d2b 019497 call gpio_get_bit 
+0x4d2c 019498 nbranch uart_wake_up ,true 
+0x4d2d 019499 jam hci_rx_wake ,mem_hci_lt_rx_state 
+0x4d2e 019500 rtn 
+:      019501 uart_wake_up:
+0x4d2f 019502 fetch 1 ,mem_hci_lt_rx_state 
+0x4d30 019503 rtnne hci_rx_wake 
+0x4d31 019504 call hci_exit_lpm 
+0x4d32 019505 branch hci_send_commu_ready_event 
+:      019519 hid_rx_process:
+0x4d33 019520 bpatchx patch20_5 ,mem_patch20 
+0x4d34 019521 fetch 2 ,mem_l2cap_payload_ptr 
+0x4d35 019522 copy pdata ,contr 
+0x4d36 019523 ifetch 1 ,contr 
+0x4d37 019524 and pdata ,0x0f ,temp 
+0x4d38 019525 rshift4 pdata ,pdata 
+0x4d39 019526 beq hid_type_set_idle ,hid_rx_process_handshake 
+0x4d3a 019527 beq hid_type_set_protocol ,hid_rx_process_handshake 
+0x4d3b 019528 beq hid_type_data ,hid_rx_process_data 
+0x4d3c 019529 beq hid_type_set_report ,hid_rx_process_set_report 
+0x4d3d 019530 beq hid_type_control ,hid_rx_process_hid_control 
+0x4d3e 019531 rtn 
+:      019533 hid_rx_process_hid_control:
+0x4d3f 019534 copy temp ,pdata 
+0x4d40 019535 beq hid_control_p_virtualcableunplug ,hid_rx_process_virtual_cable_unplug 
+0x4d41 019536 beq hid_control_p_suspend ,hid_rx_process_suspend 
+0x4d42 019537 rtn 
+:      019539 hid_rx_process_virtual_cable_unplug:
+0x4d43 019540 jam bt_evt_virtual_cable_unplug ,mem_fifo_temp 
+0x4d44 019541 call ui_ipc_send_event 
+0x4d45 019542 fetch 1 ,mem_device_option 
+0x4d46 019543 rtnbit0 dvc_op_mouse 
+0x4d47 019544 copy temp ,pdata 
+0x4d48 019545 beq hid_control_p_virtualcableunplug ,mouse_irtual_cable_unplug 
+0x4d49 019546 rtn 
+:      019547 hid_rx_process_suspend:
+0x4d4a 019548 rtn 
+:      019550 hid_rx_process_set_report:
+0x4d4b 019551 call hid_rx_process_data 
+0x4d4c 019552 arg 0x01 ,rega 
+0x4d4d 019553 call hid_malloc_tx_buff 
+0x4d4e 019554 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4d4f 019555 istore 2 ,contw 
+0x4d50 019556 setarg 0x00 
+0x4d51 019557 istore 1 ,contw 
+0x4d52 019558 rtn 
+:      019560 hid_rx_process_handshake:
+0x4d53 019561 arg 1 ,rega 
+0x4d54 019562 call hid_malloc_tx_buff 
+0x4d55 019563 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4d56 019564 istore 2 ,contw 
+0x4d57 019565 setarg 0 
+0x4d58 019566 istore 1 ,contw 
+0x4d59 019567 jam 1 ,mem_ui_data_txbuff_length 
+0x4d5a 019568 fetch 1 ,mem_hid_control_state 
+0x4d5b 019569 set1 l2cap_channel_hid_handshake_done 
+0x4d5c 019570 store 1 ,mem_hid_control_state 
+0x4d5d 019571 jam bt_evt_hid_handshake ,mem_fifo_temp 
+0x4d5e 019572 branch ui_ipc_send_event 
+:      019574 hid_rx_process_data:
+0x4d5f 019575 ifetch 1 ,contr 
+0x4d60 019576 beq hid_report_id_kb ,hid_rx_process_data_hid_kb 
+0x4d61 019577 rtn 
+:      019579 hid_rx_process_data_hid_kb:
+0x4d62 019580 rtn 
+:      019583 hid_malloc_tx_buff:
+0x4d63 019584 call l2cap_malloc 
+0x4d64 019585 copy rega ,temp 
+0x4d65 019586 storet 1 ,mem_ui_data_txbuff_length 
+0x4d66 019587 copy pdata ,contw 
+0x4d67 019588 copy rega ,pdata 
+0x4d68 019589 istore 2 ,contw 
+0x4d69 019590 rtn 
+:      019607 l2cap_init:
+0x4d6a 019608 branch l2cap_init_wake ,wake 
+:      019609 l2cap_init_work:
+0x4d6b 019610 setarg mem_l2cap_xmem_end 
+0x4d6c 019611 arg mem_l2cap_xmem_start ,contw 
+0x4d6d 019612 isub contw ,loopcnt 
+0x4d6e 019613 call clear_mem 
+:      019614 l2cap_init_wake:
+0x4d6f 019615 bpatchx patch20_6 ,mem_patch20 
+0x4d70 019616 setarg mem_sdp_mem_end 
+0x4d71 019617 arg mem_sdp_mem_start ,contw 
+0x4d72 019618 isub contw ,loopcnt 
+0x4d73 019619 call clear_mem 
+0x4d74 019620 setarg mem_l2cap_mem_end 
+0x4d75 019621 arg mem_l2cap_mem_start ,contw 
+0x4d76 019622 isub contw ,loopcnt 
+0x4d77 019623 call clear_mem 
+0x4d78 019624 branch l2cap_lpm_load_txbuf 
+:      019626 process_rx_l2cap_pkt:
+0x4d79 019627 bpatchx patch20_7 ,mem_patch20 
+0x4d7a 019628 copy contr ,temp 
+0x4d7b 019631 copy temp ,contr 
+0x4d7c 019632 ifetch 2 ,contr 
+0x4d7d 019633 store 2 ,mem_l2cap_rx_pkt_length 
+0x4d7e 019634 ifetch 2 ,contr 
+0x4d7f 019635 store 2 ,mem_l2cap_rx_cid 
+0x4d80 019636 deposit contr 
+0x4d81 019637 store 2 ,mem_l2cap_payload_ptr 
+0x4d82 019638 fetch 1 ,memui_reconnect_mode 
+0x4d83 019639 beq no_reconnection ,l2cap_rx_multiplexing 
+0x4d84 019640 branch ml2cap_rx_multiplexing 
+:      019642 l2cap_rx_multiplexing:
+0x4d85 019643 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x4d86 019644 branch l2cap_rx_reset_state ,blank 
+0x4d87 019645 bpatchx patch21_0 ,mem_patch21 
+0x4d88 019646 fetch 1 ,mem_l2cap_rx_cid 
+0x4d89 019647 beq l2cap_signal_channel ,l2cap_call_proc_signal 
+:      019648 l2cap_rx_multiplexing0:
+0x4d8a 019649 beq l2cap_sdp_channel ,l2cap_call_proc_sdp 
+0x4d8b 019650 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
+0x4d8c 019651 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
+0x4d8d 019652 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
+0x4d8e 019653 branch l2cap_rx_reset_state 
+:      019655 l2cap_check_map:
+0x4d8f 019658 bpatchx patch21_1 ,mem_patch21 
+0x4d90 019659 call l2cap_malloc_get_full_map 
+0x4d91 019660 fetch 1 ,mem_used_map 
+0x4d92 019661 beq 0 ,set_pdata_0 
+0x4d93 019662 beq 1 ,set_pdata_0 
+0x4d94 019663 beq 2 ,set_pdata_0 
+0x4d95 019664 beq 3 ,set_pdata_0 
+0x4d96 019665 beq 0x81 ,set_pdata_0 
+0x4d97 019666 beq 0xc0 ,set_pdata_0 
+0x4d98 019667 beq 0x80 ,set_pdata_0 
+0x4d99 019668 beq 0x40 ,set_pdata_0 
+0x4d9a 019669 rtn 
+:      019671 set_pdata_0:
+0x4d9b 019672 setarg 0 
+0x4d9c 019673 rtn 
+:      019676 l2cap_call_proc_signal:
+0x4d9d 019677 call l2cap_check_map 
+0x4d9e 019678 nrtn blank 
+:      019679 l2cap_call_proc_signal0:
+0x4d9f 019680 call l2cap_malloc_signal_channel 
+0x4da0 019681 call l2cap_process_signal_pkt 
+0x4da1 019682 fetcht 2 ,mem_l2cap_signal_tx_length 
+0x4da2 019683 branch l2cap_call_proc_no_reply ,blank 
+0x4da3 019684 call l2cap_get_signal_tx_buff 
+0x4da4 019685 fetch 2 ,mem_l2cap_signal_tx_length 
+0x4da5 019686 istore 2 ,contw 
+0x4da6 019687 force l2cap_signal_channel ,pdata 
+0x4da7 019688 istore 2 ,contw 
+0x4da8 019689 branch l2cap_rx_reset_state 
+:      019691 l2cap_call_proc_sigal_pending:
+0x4da9 019692 fetch 1 ,mem_l2cap_pending_item 
+0x4daa 019693 rtn blank 
+0x4dab 019694 copy pdata ,rega 
+0x4dac 019695 bpatchx patch21_2 ,mem_patch21 
+0x4dad 019696 fetch 4 ,mem_l2cap_sdpres_delay_time 
+0x4dae 019697 arg 0x100 ,temp 
+0x4daf 019698 iadd temp ,temp 
+0x4db0 019699 copy clkn_bt ,pdata 
+0x4db1 019700 isub temp ,null 
+0x4db2 019701 nrtn positive 
+0x4db3 019702 jam 0 ,mem_l2cap_pending_item 
+0x4db4 019703 copy rega ,pdata 
+0x4db5 019704 beq l2cap_sdp_channel ,l2cap_sdp_conn_succ 
+0x4db6 019705 branch assert 
+:      019706 l2cap_sdp_conn_succ:
+0x4db7 019707 arg 0 ,debug 
+0x4db8 019708 call l2cap_malloc_signal_channel 
+0x4db9 019709 call restore_l2cap_req_param 
+0x4dba 019710 call l2cap_get_signal_tx_payload 
+0x4dbb 019711 call save_cont_pointers 
+0x4dbc 019712 call send_connection_sdp_res 
+0x4dbd 019713 call l2cap_get_signal_tx_buff 
+0x4dbe 019715 setarg 0x000c 
+0x4dbf 019716 istore 2 ,contw 
+0x4dc0 019717 force l2cap_signal_channel ,pdata 
+0x4dc1 019718 istore 2 ,contw 
+0x4dc2 019719 branch l2cap_rx_reset_state 
+:      019723 l2cap_reset_sdp_map:
+0x4dc3 019724 bpatchx patch21_3 ,mem_patch21 
+0x4dc4 019725 fetch 2 ,mem_sdp_tx_pkt_length 
+0x4dc5 019726 increase 4 ,pdata 
+0x4dc6 019727 rshift4 pdata ,pdata 
+0x4dc7 019728 rshift3 pdata ,pdata 
+0x4dc8 019729 add pdata ,1 ,temp 
+0x4dc9 019730 arg mem_tx_fifo3 ,contr 
+0x4dca 019731 ifetch 3 ,contr 
+0x4dcb 019732 rtn blank 
+0x4dcc 019733 store 3 ,mem_tx_fifo_map_temp 
+0x4dcd 019734 fetch 1 ,mem_tx_fifo_map_temp 
+0x4dce 019735 copy pdata ,rega 
+0x4dcf 019736 call check_l2cap_map 
+0x4dd0 019737 copy regb ,pdata 
+0x4dd1 019738 store 1 ,mem_tx_fifo3 
+0x4dd2 019739 rtn 
+:      019741 check_l2cap_map:
+0x4dd3 019742 arg 0 ,queue 
+0x4dd4 019743 arg 0 ,regb 
+:      019745 check_l2cap_map_loop:
+0x4dd5 019746 sub queue ,7 ,null 
+0x4dd6 019747 nrtn positive 
+0x4dd7 019748 qisolate1 rega 
+0x4dd8 019749 branch check_l2cap_map_used ,true 
+0x4dd9 019750 branch check_l2cap_map_used2 
+:      019752 check_l2cap_map_used:
+0x4dda 019753 copy temp ,pdata 
+0x4ddb 019754 branch check_l2cap_map_used2 ,blank 
+0x4ddc 019755 qset1 regb 
+0x4ddd 019756 increase -1 ,temp 
+:      019758 check_l2cap_map_used2:
+0x4dde 019759 increase 1 ,queue 
+0x4ddf 019760 branch check_l2cap_map_loop 
+:      019762 l2cap_call_proc_sdp:
+0x4de0 019763 call l2cap_malloc_is_fifo_empty 
+0x4de1 019764 nrtn blank 
+0x4de2 019765 call l2cap_check_map 
+0x4de3 019766 nrtn blank 
+0x4de4 019767 call l2cap_malloc_sdp_channel 
+0x4de5 019768 call sdp_process 
+0x4de6 019769 call l2cap_reset_sdp_map 
+0x4de7 019770 branch l2cap_call_proc_sdp_common 
+:      019773 ml2cap_call_proc_sdp:
+0x4de8 019774 call l2cap_malloc_is_fifo_empty 
+0x4de9 019775 nrtn blank 
+0x4dea 019776 call l2cap_malloc_sdp_channel 
+0x4deb 019777 call sdp_process 
+:      019778 l2cap_call_proc_sdp_common:
+0x4dec 019779 call l2cap_get_sdp_tx_buff 
+0x4ded 019780 fetch 2 ,mem_sdp_tx_pkt_length 
+0x4dee 019781 branch l2cap_call_proc_no_reply ,blank 
+0x4def 019782 istore 2 ,contw 
+0x4df0 019783 fetch 2 ,mem_sdp_remote_cid 
+0x4df1 019784 istore 2 ,contw 
+0x4df2 019785 branch l2cap_rx_reset_state 
+:      019787 l2cap_call_proc_hid:
+0x4df3 019788 call hid_rx_process 
+0x4df4 019789 branch l2cap_rx_reset_state 
+:      019791 l2cap_call_proc_rfcomm:
+0x4df5 019792 bpatchx patch21_4 ,mem_patch21 
+0x4df6 019793 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
+0x4df7 019794 call rfcomm_rx_process 
+0x4df8 019795 fetch 1 ,mem_rfcomm_malloc_fail_flag 
+0x4df9 019796 rtneq rfcomm_malloc_fail 
+0x4dfa 019797 branch l2cap_rx_reset_state 
+:      019798 l2cap_call_proc_no_reply:
+0x4dfb 019799 call l2cap_malloc_discard 
+:      019801 l2cap_rx_reset_state:
+0x4dfc 019802 setarg 0 
+0x4dfd 019803 store 2 ,mem_l2cap_rx_pkt_length 
+0x4dfe 019804 store 2 ,mem_l2cap_rx_cid 
+0x4dff 019805 jam l2cap_rx_done ,mem_l2cap_rx_done 
+0x4e00 019806 rtn 
+:      019808 l2cap_process_signal_pkt:
+0x4e01 019809 bpatchx patch21_5 ,mem_patch21 
+0x4e02 019810 call l2cap_get_signal_tx_payload 
+0x4e03 019811 force 0 ,regb 
+0x4e04 019812 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x4e05 019813 copy pdata ,regc 
+0x4e06 019814 fetch 2 ,mem_l2cap_payload_ptr 
+0x4e07 019815 iforce contr 
+:      019816 l2cap_process_signal_pkt_loop:
+0x4e08 019817 call l2cap_process_one_signal 
+0x4e09 019818 deposit regc 
+0x4e0a 019819 increase -4 ,regc 
+0x4e0b 019820 increase -4 ,pdata 
+0x4e0c 019821 nbranch l2cap_process_signal_pkt_loop ,blank 
+0x4e0d 019822 copy regb ,pdata 
+0x4e0e 019823 store 2 ,mem_l2cap_signal_tx_length 
+0x4e0f 019824 rtn 
+:      019826 l2cap_process_one_signal:
+0x4e10 019827 bpatchx patch21_6 ,mem_patch21 
+0x4e11 019828 ifetch 1 ,contr 
+0x4e12 019829 beq signal_cmd_reject ,l2cap_proc_signal_cmd_reject 
+0x4e13 019830 beq signal_connect_req ,l2cap_proc_signal_connect_req 
+0x4e14 019831 beq signal_connect_rsp ,l2cap_proc_signal_connect_rsp 
+0x4e15 019832 beq signal_config_req ,l2cap_proc_signal_config_req 
+0x4e16 019833 beq signal_config_rsp ,l2cap_proc_signal_config_rsp 
+0x4e17 019834 beq signal_disconnect_req ,l2cap_proc_signal_disconnect_req 
+0x4e18 019835 beq signal_disconnect_rsp ,l2cap_proc_signal_disconnect_rsp 
+0x4e19 019836 beq signal_echo_req ,l2cap_proc_signal_echo_req 
+0x4e1a 019837 beq signal_echo_rsp ,l2cap_proc_signal_echo_rsp 
+0x4e1b 019838 beq signal_info_req ,l2cap_proc_signal_info_req 
+0x4e1c 019839 beq signal_info_rsp ,l2cap_proc_signal_info_rsp 
+0x4e1d 019840 call l2cap_reject_command 
+:      019841 l2cap_process_one_signal_rtn:
+0x4e1e 019842 rtn 
+:      019844 l2cap_proc_signal_info_req:
+0x4e1f 019845 ifetch 1 ,contr 
+0x4e20 019846 copy pdata ,queue 
+0x4e21 019847 ifetch 2 ,contr 
+0x4e22 019848 copy pdata ,rega 
+0x4e23 019849 copy regc ,pdata 
+0x4e24 019850 isub rega ,regc 
+0x4e25 019851 setarg signal_info_rsp 
+0x4e26 019852 istore 1 ,contw 
+0x4e27 019853 copy queue ,pdata 
+0x4e28 019854 istore 1 ,contw 
+0x4e29 019855 ifetch 2 ,contr 
+:      019856 l2cap_proc_signal_info_req_reply:
+0x4e2a 019857 beq l2cap_sig_ext_featrue ,l2cap_proc_signal_info_req_ext 
+0x4e2b 019858 beq l2cap_sig_fix_featrue ,l2cap_proc_signal_info_req_fix 
+0x4e2c 019859 rtn 
+:      019860 l2cap_proc_signal_info_req_ext:
+0x4e2d 019861 setarg 0x020008 
+0x4e2e 019862 istore 6 ,contw 
+0x4e2f 019863 setarg 0x0280 
+0x4e30 019864 istore 4 ,contw 
+0x4e31 019865 force 12 ,pdata 
+0x4e32 019866 branch l2cap_proc_signal_info_req_common 
+:      019867 l2cap_proc_signal_info_req_fix:
+0x4e33 019868 setarg 0x3000c 
+0x4e34 019869 istore 6 ,contw 
+0x4e35 019870 setarg 0x0006 
+0x4e36 019871 istore 8 ,contw 
+0x4e37 019872 force 16 ,pdata 
+:      019873 l2cap_proc_signal_info_req_common:
+0x4e38 019874 iadd regb ,regb 
+0x4e39 019875 branch l2cap_process_one_signal_rtn 
+:      019877 ml2cap_proc_signal_info_req:
+0x4e3a 019878 ifetch 1 ,contr 
+0x4e3b 019879 copy pdata ,queue 
+0x4e3c 019880 ifetch 2 ,contr 
+0x4e3d 019881 copy pdata ,rega 
+0x4e3e 019882 ifetch 2 ,contr 
+0x4e3f 019883 store 2 ,mem_temp 
+0x4e40 019884 copy regc ,pdata 
+0x4e41 019885 isub rega ,regc 
+0x4e42 019886 call l2cap_get_signal_tx_payload 
+0x4e43 019887 setarg signal_info_rsp 
+0x4e44 019888 istore 1 ,contw 
+0x4e45 019889 copy queue ,pdata 
+0x4e46 019890 istore 1 ,contw 
+0x4e47 019891 fetch 2 ,mem_temp 
+0x4e48 019892 branch l2cap_proc_signal_info_req_reply 
+:      019896 l2cap_proc_signal_cmd_reject:
+0x4e49 019897 ifetch 1 ,contr 
+0x4e4a 019898 copy pdata ,queue 
+0x4e4b 019899 ifetch 2 ,contr 
+0x4e4c 019900 copy pdata ,rega 
+0x4e4d 019901 iadd contr ,contr 
+0x4e4e 019902 copy regc ,pdata 
+0x4e4f 019903 isub rega ,regc 
+:      019904 l2cap_proc_signal_cmd_reject_rtn:
+0x4e50 019905 branch l2cap_process_one_signal_rtn 
+:      019907 l2cap_proc_signal_connect_req:
+0x4e51 019908 call save_cont_pointers 
+0x4e52 019911 call load_cont_pointers 
+0x4e53 019912 arg 0 ,debug 
+0x4e54 019913 ifetch 1 ,contr 
+0x4e55 019914 copy pdata ,queue 
+0x4e56 019915 ifetch 2 ,contr 
+0x4e57 019916 copy pdata ,rega 
+0x4e58 019917 ifetch 2 ,contr 
+0x4e59 019918 copy pdata ,temp 
+0x4e5a 019919 ifetch 2 ,contr 
+0x4e5b 019920 copy pdata ,timeup 
+0x4e5c 019921 bpatchx patch21_7 ,mem_patch21 
+0x4e5d 019922 copy temp ,pdata 
+0x4e5e 019923 beq psm_sdp ,l2cap_proc_signal_connect_req_sdp 
+0x4e5f 019924 beq psm_rfcomm ,l2cap_proc_signal_connect_req_rfcomm 
+0x4e60 019925 beq psm_hid_control ,l2cap_proc_signal_connect_req_hid_ctrl 
+0x4e61 019926 beq psm_hid_interrupt ,l2cap_proc_signal_connect_req_hid_int 
+0x4e62 019927 call l2cap_reject_command 
+0x4e63 019928 branch l2cap_proc_signal_connect_req_rtn 
+:      019930 l2cap_proc_signal_connect_req_sdp:
+0x4e64 019931 call save_cont_pointers 
+0x4e65 019932 arg l2cap_sdp_channel ,temp 
+0x4e66 019933 fetch 2 ,mem_sdp_remote_cid 
+0x4e67 019934 nbranch already_connected ,blank 
+0x4e68 019935 copy timeup ,pdata 
+0x4e69 019936 store 2 ,mem_sdp_remote_cid 
+0x4e6a 019937 copy clkn_bt ,pdata 
+0x4e6b 019938 store 4 ,mem_l2cap_sdpres_delay_time 
+0x4e6c 019939 call store_l2cap_req_param 
+0x4e6d 019940 branch send_connection_pending 
+:      019942 store_l2cap_req_param:
+0x4e6e 019943 storet 2 ,mem_psm 
+0x4e6f 019944 deposit timeup 
+0x4e70 019945 store 2 ,mem_scid 
+0x4e71 019946 deposit rega 
+0x4e72 019947 store 2 ,mem_cmd_length 
+0x4e73 019948 deposit regb 
+0x4e74 019949 store 2 ,mem_tt2 
+0x4e75 019950 deposit regc 
+0x4e76 019951 store 2 ,mem_tt3 
+0x4e77 019952 deposit queue 
+0x4e78 019953 store 2 ,mem_id 
+0x4e79 019954 rtn 
+:      019956 restore_l2cap_req_param:
+0x4e7a 019957 fetcht 2 ,mem_psm 
+0x4e7b 019958 fetch 2 ,mem_scid 
+0x4e7c 019959 copy pdata ,timeup 
+0x4e7d 019960 fetch 2 ,mem_cmd_length 
+0x4e7e 019961 copy pdata ,rega 
+0x4e7f 019962 fetch 2 ,mem_tt2 
+0x4e80 019963 copy pdata ,regb 
+0x4e81 019964 fetch 2 ,mem_tt3 
+0x4e82 019965 copy pdata ,regc 
+0x4e83 019966 fetch 2 ,mem_id 
+0x4e84 019967 copy pdata ,queue 
+0x4e85 019968 rtn 
+:      019970 l2cap_proc_signal_connect_req_rfcomm:
+0x4e86 019971 call save_cont_pointers 
+0x4e87 019972 setarg l2cap_rfcomm_channel 
+0x4e88 019973 arg l2cap_rfcomm_channel ,temp 
+0x4e89 019974 fetch 2 ,mem_rfcomm_remote_cid 
+0x4e8a 019975 nbranch already_connected ,blank 
+0x4e8b 019976 copy timeup ,pdata 
+0x4e8c 019977 store 2 ,mem_rfcomm_remote_cid 
+0x4e8d 019978 fetch 1 ,mem_rfcomm_state 
+0x4e8e 019979 set1 l2cap_channel_state_conn_req ,pdata 
+0x4e8f 019980 set1 l2cap_channel_state_conn_res ,pdata 
+0x4e90 019981 store 1 ,mem_rfcomm_state 
+0x4e91 019982 branch send_connection_res 
+:      019983 l2cap_proc_signal_connect_req_hid_ctrl:
+0x4e92 019984 call save_cont_pointers 
+0x4e93 019985 arg l2cap_hid_control_channel ,temp 
+0x4e94 019986 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4e95 019987 nbranch already_connected ,blank 
+0x4e96 019988 copy timeup ,pdata 
+0x4e97 019989 store 2 ,mem_hid_ctrl_remote_cid 
+0x4e98 019990 fetch 1 ,mem_hid_control_state 
+0x4e99 019991 set1 l2cap_channel_state_conn_req ,pdata 
+0x4e9a 019992 set1 l2cap_channel_state_conn_res ,pdata 
+0x4e9b 019993 store 1 ,mem_hid_control_state 
+0x4e9c 019994 branch send_connection_res 
+:      019995 l2cap_proc_signal_connect_req_hid_int:
+0x4e9d 019996 call save_cont_pointers 
+0x4e9e 019997 deposit clke 
+0x4e9f 019998 arg l2cap_hid_interrupt_channel ,temp 
+0x4ea0 019999 fetch 2 ,mem_hid_int_remote_cid 
+0x4ea1 020000 nbranch already_connected ,blank 
+0x4ea2 020001 copy timeup ,pdata 
+0x4ea3 020002 store 2 ,mem_hid_int_remote_cid 
+0x4ea4 020003 fetch 1 ,mem_hid_interrupt_state 
+0x4ea5 020004 set1 l2cap_channel_state_conn_req ,pdata 
+0x4ea6 020005 set1 l2cap_channel_state_conn_res ,pdata 
+0x4ea7 020006 store 1 ,mem_hid_interrupt_state 
+0x4ea8 020007 branch send_connection_res 
+:      020009 send_connection_pending:
+0x4ea9 020010 setarg l2cap_connect_pending 
+0x4eaa 020011 store 2 ,meml2cap_t1 
+0x4eab 020012 jam l2cap_sdp_channel ,mem_l2cap_pending_item 
+0x4eac 020013 branch send_connection_res0 
+:      020014 send_connection_sdp_res:
+0x4ead 020015 fetch 1 ,mem_sdp_state 
+0x4eae 020016 set1 l2cap_channel_state_conn_req ,pdata 
+0x4eaf 020017 set1 l2cap_channel_state_conn_res ,pdata 
+0x4eb0 020018 store 1 ,mem_sdp_state 
+:      020019 send_connection_res:
+0x4eb1 020020 setarg l2cap_connect_successful 
+0x4eb2 020021 store 2 ,meml2cap_t1 
+:      020022 send_connection_res0:
+0x4eb3 020023 bpatchx patch22_0 ,mem_patch22 
+0x4eb4 020024 call load_cont_pointers 
+0x4eb5 020025 setarg signal_connect_rsp 
+0x4eb6 020026 istore 1 ,contw 
+0x4eb7 020027 copy queue ,pdata 
+0x4eb8 020028 istore 1 ,contw 
+0x4eb9 020029 setarg 0x0008 
+0x4eba 020030 istore 2 ,contw 
+0x4ebb 020031 copy temp ,pdata 
+0x4ebc 020032 istore 2 ,contw 
+0x4ebd 020033 copy timeup ,pdata 
+0x4ebe 020034 istore 2 ,contw 
+0x4ebf 020035 fetch 2 ,meml2cap_t1 
+0x4ec0 020036 beq l2cap_connect_pending ,connect_pending 
+0x4ec1 020037 isolate0 0 ,debug 
+0x4ec2 020038 branch connect_suc ,true 
+0x4ec3 020039 setarg l2cap_connect_refused_no_resources 
+:      020040 connect_suc:
+0x4ec4 020041 istore 2 ,contw 
+0x4ec5 020042 force 0x0000 ,pdata 
+0x4ec6 020043 istore 2 ,contw 
+0x4ec7 020044 setarg 12 
+0x4ec8 020045 branch connect_req_update_byte_counts 
+:      020046 connect_pending:
+0x4ec9 020047 istore 2 ,contw 
+0x4eca 020048 force 0x0002 ,pdata 
+0x4ecb 020049 istore 2 ,contw 
+0x4ecc 020050 setarg 12 
+0x4ecd 020051 branch connect_req_update_byte_counts 
+:      020053 already_connected:
+0x4ece 020054 set1 0 ,debug 
+0x4ecf 020055 branch send_connection_res 
+:      020056 connect_req_update_byte_counts:
+0x4ed0 020057 iadd regb ,regb 
+0x4ed1 020058 copy regc ,pdata 
+0x4ed2 020059 isub rega ,regc 
+0x4ed3 020060 branch l2cap_proc_signal_connect_req_rtn 
+:      020061 l2cap_proc_signal_connect_req_rtn:
+0x4ed4 020062 branch l2cap_process_one_signal_rtn 
+:      020064 l2cap_proc_signal_connect_rsp:
+0x4ed5 020065 ifetch 1 ,contr 
+0x4ed6 020066 copy pdata ,queue 
+0x4ed7 020067 ifetch 2 ,contr 
+0x4ed8 020068 copy pdata ,rega 
+0x4ed9 020069 copy regc ,pdata 
+0x4eda 020070 isub rega ,regc 
+0x4edb 020071 ifetch 2 ,contr 
+0x4edc 020072 copy pdata ,timeup 
+0x4edd 020073 ifetch 2 ,contr 
+0x4ede 020074 copy pdata ,temp 
+0x4edf 020075 bpatchx patch22_1 ,mem_patch22 
+0x4ee0 020076 setarg l2cap_sdp_channel 
+0x4ee1 020077 isub temp ,null 
+0x4ee2 020078 branch l2cap_proc_signal_connect_rsp_sdp ,zero 
+0x4ee3 020079 setarg l2cap_rfcomm_channel 
+0x4ee4 020080 isub temp ,null 
+0x4ee5 020081 branch l2cap_proc_signal_connect_rsp_rfcomm ,zero 
+0x4ee6 020082 setarg l2cap_hid_control_channel 
+0x4ee7 020083 isub temp ,null 
+0x4ee8 020084 branch l2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
+0x4ee9 020085 setarg l2cap_hid_interrupt_channel 
+0x4eea 020086 isub temp ,null 
+0x4eeb 020087 branch l2cap_proc_signal_connect_rsp_hid_int ,zero 
+0x4eec 020088 rtn 
+:      020090 l2cap_proc_signal_connect_rsp_sdp:
+0x4eed 020091 copy timeup ,pdata 
+0x4eee 020092 store 2 ,mem_sdp_remote_cid 
+0x4eef 020093 fetch 1 ,mem_sdp_state 
+0x4ef0 020094 set1 l2cap_channel_state_conn_res ,pdata 
+0x4ef1 020095 store 1 ,mem_sdp_state 
+0x4ef2 020096 branch l2cap_process_one_signal_rtn 
+:      020097 l2cap_proc_signal_connect_rsp_rfcomm:
+0x4ef3 020098 copy timeup ,pdata 
+0x4ef4 020099 store 2 ,mem_rfcomm_remote_cid 
+0x4ef5 020100 fetch 1 ,mem_rfcomm_state 
+0x4ef6 020101 set1 l2cap_channel_state_conn_res ,pdata 
+0x4ef7 020102 store 1 ,mem_rfcomm_state 
+0x4ef8 020103 rtn 
+:      020104 l2cap_proc_signal_connect_rsp_hid_int:
+0x4ef9 020105 copy timeup ,pdata 
+0x4efa 020106 store 2 ,mem_hid_ctrl_remote_cid 
+0x4efb 020107 fetch 1 ,mem_hid_interrupt_state 
+0x4efc 020108 set1 l2cap_channel_state_conn_res ,pdata 
+0x4efd 020109 store 1 ,mem_hid_interrupt_state 
+0x4efe 020110 rtn 
+:      020111 l2cap_proc_signal_connect_rsp_hid_ctrl:
+0x4eff 020112 copy timeup ,pdata 
+0x4f00 020113 store 2 ,mem_hid_int_remote_cid 
+0x4f01 020114 fetch 1 ,mem_hid_control_state 
+0x4f02 020115 set1 l2cap_channel_state_conn_res ,pdata 
+0x4f03 020116 store 1 ,mem_hid_control_state 
+0x4f04 020117 rtn 
+:      020119 l2cap_proc_signal_config_req:
+0x4f05 020120 ifetch 1 ,contr 
+0x4f06 020121 copy pdata ,queue 
+0x4f07 020122 ifetch 2 ,contr 
+0x4f08 020123 copy pdata ,rega 
+0x4f09 020124 copy regc ,pdata 
+0x4f0a 020125 isub rega ,regc 
+0x4f0b 020126 ifetch 2 ,contr 
+0x4f0c 020127 copy pdata ,temp 
+0x4f0d 020128 copy temp ,rega 
+0x4f0e 020129 bpatchx patch22_2 ,mem_patch22 
+0x4f0f 020130 setarg l2cap_sdp_channel 
+0x4f10 020131 isub temp ,null 
+0x4f11 020132 branch l2cap_proc_signal_config_req_sdp ,zero 
+0x4f12 020133 setarg l2cap_rfcomm_channel 
+0x4f13 020134 isub temp ,null 
+0x4f14 020135 branch l2cap_proc_signal_config_req_rfcomm ,zero 
+0x4f15 020136 setarg l2cap_hid_control_channel 
+0x4f16 020137 isub temp ,null 
+0x4f17 020138 branch l2cap_proc_signal_config_req_hid_ctrl ,zero 
+0x4f18 020139 setarg l2cap_hid_interrupt_channel 
+0x4f19 020140 isub temp ,null 
+0x4f1a 020141 branch l2cap_proc_signal_config_req_hid_int ,zero 
+0x4f1b 020142 branch l2cap_reject_command 
+:      020144 l2cap_proc_signal_config_req_sdp:
+0x4f1c 020145 copy contw ,timeup 
+0x4f1d 020146 fetch 1 ,mem_sdp_state 
+0x4f1e 020147 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f1f 020148 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f20 020150 store 1 ,mem_sdp_state 
+0x4f21 020151 copy timeup ,contw 
+0x4f22 020152 arg l2cap_sdp_channel ,timeup 
+0x4f23 020153 fetch 2 ,mem_sdp_remote_cid 
+0x4f24 020154 copy pdata ,temp 
+0x4f25 020155 branch l2cap_send_config_rsp 
+:      020156 l2cap_proc_signal_config_req_hid_ctrl:
+0x4f26 020157 copy contw ,timeup 
+0x4f27 020158 fetch 1 ,mem_hid_control_state 
+0x4f28 020159 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f29 020160 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f2a 020162 store 1 ,mem_hid_control_state 
+0x4f2b 020163 copy timeup ,contw 
+0x4f2c 020164 arg l2cap_hid_control_channel ,timeup 
+0x4f2d 020165 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4f2e 020166 copy pdata ,temp 
+0x4f2f 020167 branch l2cap_send_config_rsp 
+:      020168 l2cap_proc_signal_config_req_hid_int:
+0x4f30 020169 copy contw ,timeup 
+0x4f31 020170 fetch 1 ,mem_hid_interrupt_state 
+0x4f32 020171 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f33 020172 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f34 020174 store 1 ,mem_hid_interrupt_state 
+0x4f35 020175 copy timeup ,contw 
+0x4f36 020176 arg l2cap_hid_interrupt_channel ,timeup 
+0x4f37 020177 fetch 2 ,mem_hid_int_remote_cid 
+0x4f38 020178 copy pdata ,temp 
+0x4f39 020179 branch l2cap_send_config_rsp 
+:      020180 l2cap_proc_signal_config_req_rfcomm:
+0x4f3a 020181 copy contw ,timeup 
+0x4f3b 020182 fetch 1 ,mem_rfcomm_state 
+0x4f3c 020183 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x4f3d 020184 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x4f3e 020186 store 1 ,mem_rfcomm_state 
+0x4f3f 020188 copy timeup ,contw 
+0x4f40 020189 arg l2cap_rfcomm_channel ,timeup 
+0x4f41 020190 fetch 2 ,mem_rfcomm_remote_cid 
+0x4f42 020191 copy pdata ,temp 
+:      020192 l2cap_send_config_rsp:
+0x4f43 020193 bpatchx patch22_3 ,mem_patch22 
+0x4f44 020194 setarg signal_config_rsp 
+0x4f45 020195 istore 1 ,contw 
+0x4f46 020196 copy queue ,pdata 
+0x4f47 020197 istore 1 ,contw 
+0x4f48 020198 setarg 0x0006 
+0x4f49 020199 istore 2 ,contw 
+0x4f4a 020200 copy temp ,pdata 
+0x4f4b 020201 istore 2 ,contw 
+0x4f4c 020202 force 0x00 ,pdata 
+0x4f4d 020203 istore 2 ,contw 
+0x4f4e 020204 force l2cap_config_success ,pdata 
+0x4f4f 020205 istore 2 ,contw 
+0x4f50 020206 force 10 ,pdata 
+0x4f51 020207 iadd regb ,regb 
+0x4f52 020209 storet 2 ,mem_config_req_dest_cid 
+0x4f53 020210 copy queue ,pdata 
+0x4f54 020211 store 1 ,mem_config_identifier 
+0x4f55 020212 force l2cap_sdp_channel ,pdata 
+0x4f56 020213 icompare 0xff ,timeup 
+0x4f57 020214 branch l2cap_send_config_rsp_is_sdp ,true 
+0x4f58 020215 increase 1 ,pdata 
+:      020216 l2cap_send_config_rsp_is_sdp:
+0x4f59 020218 rtn 
+:      020219 l2cap_check_channel_state:
+0x4f5a 020220 disable user 
+0x4f5b 020221 rtnbit1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x4f5c 020222 rtnbit0 l2cap_channel_state_conn_req ,pdata 
+0x4f5d 020223 rtnbit0 l2cap_channel_state_conn_res ,pdata 
+0x4f5e 020224 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x4f5f 020225 copy contr ,contw 
+0x4f60 020226 increase -1 ,contw 
+0x4f61 020227 istore 1 ,contw 
+0x4f62 020228 enable user 
+0x4f63 020229 rtn 
+:      020230 l2cap_send_config_req:
+:      020231 l2cap_send_config_req_sdp:
+0x4f64 020232 fetch 1 ,mem_sdp_state 
+0x4f65 020233 call l2cap_check_channel_state 
+0x4f66 020234 nbranch l2cap_send_config_req_rfcomm ,user 
+0x4f67 020235 jam l2cap_sdp_channel ,mem_send_config_req 
+0x4f68 020236 fetch 2 ,mem_sdp_remote_cid 
+0x4f69 020237 store 2 ,mem_config_req_dest_cid 
+0x4f6a 020238 branch l2cap_generate_config_req 
+:      020239 l2cap_send_config_req_rfcomm:
+0x4f6b 020240 fetch 1 ,mem_rfcomm_state 
+0x4f6c 020241 call l2cap_check_channel_state 
+0x4f6d 020242 nbranch l2cap_send_config_req_hid_ctrl ,user 
+0x4f6e 020243 jam l2cap_rfcomm_channel ,mem_send_config_req 
+0x4f6f 020244 fetch 2 ,mem_rfcomm_remote_cid 
+0x4f70 020245 store 2 ,mem_config_req_dest_cid 
+0x4f71 020246 branch l2cap_generate_config_req 
+:      020247 l2cap_send_config_req_hid_ctrl:
+0x4f72 020248 fetch 1 ,mem_hid_control_state 
+0x4f73 020249 call l2cap_check_channel_state 
+0x4f74 020250 nbranch l2cap_send_config_req_hid_int ,user 
+0x4f75 020251 jam l2cap_hid_control_channel ,mem_send_config_req 
+0x4f76 020252 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4f77 020253 store 2 ,mem_config_req_dest_cid 
+0x4f78 020254 branch l2cap_generate_config_req 
+:      020255 l2cap_send_config_req_hid_int:
+0x4f79 020256 fetch 1 ,mem_hid_interrupt_state 
+0x4f7a 020257 call l2cap_check_channel_state 
+0x4f7b 020258 nrtn user 
+0x4f7c 020259 jam l2cap_hid_interrupt_channel ,mem_send_config_req 
+0x4f7d 020260 fetch 2 ,mem_hid_int_remote_cid 
+0x4f7e 020261 store 2 ,mem_config_req_dest_cid 
+:      020264 l2cap_generate_config_req:
+0x4f7f 020265 bpatchx patch22_4 ,mem_patch22 
+0x4f80 020266 call l2cap_get_req_id 
+0x4f81 020267 call l2cap_malloc_signal_channel 
+0x4f82 020268 force 0 ,regb 
+0x4f83 020269 call l2cap_get_signal_tx_payload 
+0x4f84 020270 force signal_config_req ,pdata 
+0x4f85 020271 istore 1 ,contw 
+0x4f86 020272 fetch 1 ,mem_ml2cap_comm_id 
+0x4f87 020273 istore 1 ,contw 
+0x4f88 020274 setarg 0x0008 
+0x4f89 020275 istore 2 ,contw 
+0x4f8a 020276 fetch 2 ,mem_config_req_dest_cid 
+0x4f8b 020277 istore 2 ,contw 
+0x4f8c 020278 setarg 0x0000 
+0x4f8d 020279 istore 2 ,contw 
+0x4f8e 020280 force 1 ,pdata 
+0x4f8f 020281 istore 1 ,contw 
+0x4f90 020282 force 2 ,pdata 
+0x4f91 020283 istore 1 ,contw 
+0x4f92 020284 fetch 1 ,mem_send_config_req 
+0x4f93 020285 beq l2cap_rfcomm_channel ,l2cap_generate_config_req_rfcomm 
+0x4f94 020286 setarg l2cap_config_mtu_sdp 
+0x4f95 020287 istore 2 ,contw 
+0x4f96 020288 branch l2cap_generate_config_req_done 
+:      020289 l2cap_generate_config_req_rfcomm:
+0x4f97 020290 setarg l2cap_config_mtu_rfcomm 
+0x4f98 020291 istore 2 ,contw 
+:      020292 l2cap_generate_config_req_done:
+0x4f99 020293 arg 0x0c ,temp 
+0x4f9a 020294 storet 2 ,mem_l2cap_signal_tx_length 
+0x4f9b 020295 call l2cap_get_signal_tx_buff 
+0x4f9c 020296 fetch 2 ,mem_l2cap_signal_tx_length 
+0x4f9d 020297 istore 2 ,contw 
+0x4f9e 020298 force l2cap_signal_channel ,pdata 
+0x4f9f 020299 istore 2 ,contw 
+0x4fa0 020300 jam 0 ,mem_send_config_req 
+:      020301 l2cap_proc_signal_config_req_rtn:
+0x4fa1 020302 branch l2cap_process_one_signal_rtn 
+:      020304 l2cap_proc_signal_config_rsp:
+0x4fa2 020305 increase 1 ,contr 
+0x4fa3 020306 ifetch 2 ,contr 
+0x4fa4 020307 copy pdata ,rega 
+0x4fa5 020308 copy regc ,pdata 
+0x4fa6 020309 isub rega ,regc 
+0x4fa7 020310 ifetch 2 ,contr 
+0x4fa8 020311 copy pdata ,rega 
+0x4fa9 020312 bpatchx patch22_5 ,mem_patch22 
+0x4faa 020313 setarg l2cap_sdp_channel 
+0x4fab 020314 isub rega ,null 
+0x4fac 020315 branch l2cap_proc_signal_config_rsp_sdp ,zero 
+0x4fad 020316 setarg l2cap_rfcomm_channel 
+0x4fae 020317 isub rega ,null 
+0x4faf 020318 branch l2cap_proc_signal_config_rsp_rfcomm ,zero 
+0x4fb0 020319 setarg l2cap_hid_control_channel 
+0x4fb1 020320 isub rega ,null 
+0x4fb2 020321 branch l2cap_proc_signal_config_rsp_hid_ctrl ,zero 
+0x4fb3 020322 setarg l2cap_hid_interrupt_channel 
+0x4fb4 020323 isub rega ,null 
+0x4fb5 020324 branch l2cap_proc_signal_config_rsp_hid_int ,zero 
+0x4fb6 020325 increase 2 ,contr 
+0x4fb7 020326 ifetch 2 ,contr 
+0x4fb8 020327 iforce null 
+0x4fb9 020328 branch l2cap_process_one_signal_rtn 
+:      020329 l2cap_proc_signal_config_rsp_sdp:
+0x4fba 020330 fetch 1 ,mem_sdp_state 
+0x4fbb 020331 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fbc 020332 store 1 ,mem_sdp_state 
+0x4fbd 020333 branch l2cap_process_one_signal_rtn 
+:      020334 l2cap_proc_signal_config_rsp_rfcomm:
+0x4fbe 020335 fetch 1 ,mem_rfcomm_state 
+0x4fbf 020336 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fc0 020337 store 1 ,mem_rfcomm_state 
+0x4fc1 020338 branch l2cap_process_one_signal_rtn 
+:      020339 l2cap_proc_signal_config_rsp_hid_ctrl:
+0x4fc2 020340 fetch 1 ,mem_hid_control_state 
+0x4fc3 020341 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fc4 020342 store 1 ,mem_hid_control_state 
+0x4fc5 020343 branch l2cap_process_one_signal_rtn 
+:      020344 l2cap_proc_signal_config_rsp_hid_int:
+0x4fc6 020345 fetch 1 ,mem_hid_interrupt_state 
+0x4fc7 020346 set1 l2cap_channel_state_rcv_cfg_res ,pdata 
+0x4fc8 020347 store 1 ,mem_hid_interrupt_state 
+0x4fc9 020348 jam bt_evt_hid_connected ,mem_fifo_temp 
+0x4fca 020349 branch ui_ipc_send_event 
+:      020353 l2cap_proc_signal_disconnect_req:
+0x4fcb 020354 ifetch 1 ,contr 
+0x4fcc 020355 copy pdata ,queue 
+0x4fcd 020356 ifetch 2 ,contr 
+0x4fce 020357 copy pdata ,rega 
+0x4fcf 020358 copy regc ,pdata 
+0x4fd0 020359 isub rega ,regc 
+0x4fd1 020360 ifetch 2 ,contr 
+0x4fd2 020361 copy pdata ,rega 
+0x4fd3 020362 ifetch 2 ,contr 
+0x4fd4 020363 copy pdata ,timeup 
+0x4fd5 020364 copy rega ,temp 
+0x4fd6 020365 call save_cont_pointers 
+0x4fd7 020366 bpatchx patch22_6 ,mem_patch22 
+0x4fd8 020367 setarg l2cap_sdp_channel 
+0x4fd9 020368 isub temp ,null 
+0x4fda 020369 branch l2cap_proc_signal_disconnect_req_sdp ,zero 
+0x4fdb 020370 setarg l2cap_rfcomm_channel 
+0x4fdc 020371 isub temp ,null 
+0x4fdd 020372 branch l2cap_proc_signal_disconnect_req_rfcomm ,zero 
+0x4fde 020373 setarg l2cap_hid_control_channel 
+0x4fdf 020374 isub temp ,null 
+0x4fe0 020375 branch l2cap_proc_signal_disconnect_req_hid_ctrl ,zero 
+0x4fe1 020376 setarg l2cap_hid_interrupt_channel 
+0x4fe2 020377 isub temp ,null 
+0x4fe3 020378 branch l2cap_proc_signal_disconnect_req_hid_int ,zero 
+0x4fe4 020379 call l2cap_reject_command 
+0x4fe5 020380 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020381 l2cap_proc_signal_disconnect_req_hid_ctrl:
+0x4fe6 020382 copy timeup ,temp 
+0x4fe7 020383 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4fe8 020384 isub temp ,null 
+0x4fe9 020385 branch l2cap_disconnect_hid_control_now ,zero 
+0x4fea 020386 call l2cap_reject_command 
+0x4feb 020387 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020388 l2cap_proc_signal_disconnect_req_hid_int:
+0x4fec 020389 copy timeup ,temp 
+0x4fed 020390 fetch 2 ,mem_hid_int_remote_cid 
+0x4fee 020391 isub temp ,null 
+0x4fef 020392 branch l2cap_disconnect_hid_interrupt_now ,zero 
+0x4ff0 020393 call l2cap_reject_command 
+0x4ff1 020394 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020396 l2cap_proc_signal_disconnect_req_sdp:
+0x4ff2 020397 copy timeup ,temp 
+0x4ff3 020398 fetch 2 ,mem_sdp_remote_cid 
+0x4ff4 020399 isub temp ,null 
+0x4ff5 020400 branch l2cap_disconnect_sdp_now ,zero 
+0x4ff6 020401 call l2cap_reject_command 
+0x4ff7 020402 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020403 l2cap_disconnect_hid_control_now:
+0x4ff8 020404 call l2cap_reset_hid_ctrl_state 
+0x4ff9 020405 branch l2cap_send_disconnect_rsp_pkt 
+:      020406 l2cap_disconnect_hid_interrupt_now:
+0x4ffa 020407 call l2cap_reset_hid_int_state 
+0x4ffb 020408 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x4ffc 020409 branch l2cap_send_disconnect_rsp_pkt ,blank 
+0x4ffd 020417 branch l2cap_send_disconnect_rsp_pkt 
+:      020419 l2cap_disconnect_sdp_now:
+0x4ffe 020420 call l2cap_reset_sdp_channel_state 
+0x4fff 020421 fetch 1 ,mem_upper_sm_ss 
+0x5000 020422 nbranch l2cap_send_disconnect_rsp_pkt ,blank 
+0x5001 020425 branch l2cap_send_disconnect_rsp_pkt 
+:      020426 l2cap_proc_signal_disconnect_req_rfcomm:
+0x5002 020427 copy timeup ,temp 
+0x5003 020428 fetch 2 ,mem_rfcomm_remote_cid 
+0x5004 020429 isub temp ,null 
+0x5005 020430 branch l2cap_disconnect_rfcomm_now ,zero 
+0x5006 020431 call l2cap_reject_command 
+0x5007 020432 branch l2cap_proc_signal_disconnect_req_err_rtn 
+:      020433 l2cap_disconnect_rfcomm_now:
+0x5008 020434 call l2cap_reset_rfcomm_channel_state 
+0x5009 020435 branch l2cap_send_disconnect_rsp_pkt 
+:      020436 l2cap_send_disconnect_rsp_pkt:
+0x500a 020437 call load_cont_pointers 
+0x500b 020438 setarg signal_disconnect_rsp 
+0x500c 020439 istore 1 ,contw 
+0x500d 020440 copy queue ,pdata 
+0x500e 020441 istore 1 ,contw 
+0x500f 020442 setarg 0x0004 
+0x5010 020443 istore 2 ,contw 
+0x5011 020444 copy rega ,pdata 
+0x5012 020445 istore 2 ,contw 
+0x5013 020446 copy timeup ,pdata 
+0x5014 020447 istore 2 ,contw 
+0x5015 020448 force 8 ,pdata 
+0x5016 020449 branch l2cap_proc_signal_disconnect_req_rtn 
+:      020450 l2cap_proc_signal_disconnect_req_err_rtn:
+0x5017 020451 call load_cont_pointers 
+0x5018 020452 branch l2cap_proc_signal_disconnect_req_rtn 
+:      020453 l2cap_proc_signal_disconnect_req_rtn:
+0x5019 020454 iadd regb ,regb 
+0x501a 020455 branch l2cap_process_one_signal_rtn 
+:      020456 l2cap_proc_signal_disconnect_rsp:
+0x501b 020457 ifetch 1 ,contr 
+0x501c 020458 copy pdata ,queue 
+0x501d 020459 ifetch 2 ,contr 
+0x501e 020460 copy pdata ,rega 
+0x501f 020461 copy regc ,pdata 
+0x5020 020462 isub rega ,regc 
+0x5021 020463 ifetch 2 ,contr 
+0x5022 020464 copy pdata ,timeup 
+0x5023 020465 ifetch 2 ,contr 
+0x5024 020466 copy pdata ,temp 
+0x5025 020467 call save_cont_pointers 
+0x5026 020468 bpatchx patch22_7 ,mem_patch22 
+0x5027 020469 setarg l2cap_sdp_channel 
+0x5028 020470 isub temp ,null 
+0x5029 020471 branch l2cap_proc_signal_disconnect_rsp_sdp ,zero 
+0x502a 020472 setarg l2cap_rfcomm_channel 
+0x502b 020473 isub temp ,null 
+0x502c 020474 branch l2cap_proc_signal_disconnect_rsp_rfcomm ,zero 
+0x502d 020475 setarg l2cap_hid_control_channel 
+0x502e 020476 isub temp ,null 
+0x502f 020477 branch l2cap_proc_signal_disconnect_rsp_hid_ctrl ,zero 
+0x5030 020478 setarg l2cap_hid_interrupt_channel 
+0x5031 020479 isub temp ,null 
+0x5032 020480 branch l2cap_proc_signal_disconnect_rsp_hid_int ,zero 
+0x5033 020481 call l2cap_reject_command 
+0x5034 020482 branch l2cap_proc_signal_disconnect_rsp_err_rtn 
+:      020483 l2cap_proc_signal_disconnect_rsp_sdp:
+0x5035 020484 copy temp ,rega 
+0x5036 020485 copy timeup ,temp 
+0x5037 020486 fetch 2 ,mem_sdp_remote_cid 
+0x5038 020487 isub temp ,null 
+0x5039 020488 call l2cap_reset_sdp_channel_state ,zero 
+0x503a 020489 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020490 l2cap_proc_signal_disconnect_rsp_rfcomm:
+0x503b 020491 copy temp ,rega 
+0x503c 020492 copy timeup ,temp 
+0x503d 020493 fetch 2 ,mem_rfcomm_remote_cid 
+0x503e 020494 isub temp ,null 
+0x503f 020495 call l2cap_reset_rfcomm_channel_state ,zero 
+0x5040 020496 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020497 l2cap_proc_signal_disconnect_rsp_hid_ctrl:
+0x5041 020498 copy temp ,rega 
+0x5042 020499 copy timeup ,temp 
+0x5043 020500 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x5044 020501 isub temp ,null 
+0x5045 020502 call l2cap_reset_hid_ctrl_state ,zero 
+0x5046 020503 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020504 l2cap_proc_signal_disconnect_rsp_hid_int:
+0x5047 020505 copy temp ,rega 
+0x5048 020506 copy timeup ,temp 
+0x5049 020507 fetch 2 ,mem_hid_int_remote_cid 
+0x504a 020508 isub temp ,null 
+0x504b 020509 call l2cap_reset_hid_int_state ,zero 
+0x504c 020510 branch l2cap_proc_signal_disconnect_rsp_rtn 
+:      020511 l2cap_proc_signal_disconnect_rsp_rtn:
+0x504d 020512 call load_cont_pointers 
+0x504e 020513 branch l2cap_process_one_signal_rtn 
+:      020514 l2cap_proc_signal_disconnect_rsp_err_rtn:
+0x504f 020515 branch l2cap_process_one_signal_rtn 
+:      020518 l2cap_proc_signal_echo_req:
+0x5050 020519 ifetch 1 ,contr 
+0x5051 020520 copy pdata ,queue 
+0x5052 020521 ifetch 2 ,contr 
+0x5053 020522 copy pdata ,rega 
+0x5054 020523 iadd contr ,contr 
+0x5055 020524 setarg 9 
+0x5056 020525 istore 1 ,contw 
+0x5057 020526 copy queue ,pdata 
+0x5058 020527 istore 1 ,contw 
+0x5059 020528 force 0x0000 ,pdata 
+0x505a 020529 istore 2 ,contw 
+0x505b 020530 force 4 ,pdata 
+0x505c 020531 iadd regb ,regb 
+0x505d 020532 copy regc ,pdata 
+0x505e 020533 isub rega ,regc 
+0x505f 020534 branch l2cap_process_one_signal_rtn 
+:      020535 l2cap_proc_signal_echo_rsp:
+0x5060 020536 branch l2cap_process_one_signal_rtn 
+:      020538 l2cap_proc_signal_info_rsp:
+0x5061 020539 branch l2cap_process_one_signal_rtn 
+:      020540 l2cap_reject_command:
+0x5062 020541 force 0 ,regb 
+0x5063 020542 call l2cap_get_signal_tx_payload 
+0x5064 020543 setarg signal_cmd_reject 
+0x5065 020544 istore 1 ,contw 
+0x5066 020545 copy queue ,pdata 
+0x5067 020546 istore 1 ,contw 
+0x5068 020547 setarg 2 
+0x5069 020548 istore 2 ,contw 
+0x506a 020549 setarg cmd_not_understood 
+0x506b 020550 istore 2 ,contw 
+0x506c 020551 increase 6 ,regb 
+0x506d 020552 arg 4 ,regc 
+0x506e 020553 branch l2cap_process_one_signal_rtn 
+:      020557 l2cap_reset_rfcomm_channel_state:
+0x506f 020558 setarg 0 
+0x5070 020559 store 2 ,mem_rfcomm_tx_pkt_length 
+0x5071 020560 store 2 ,mem_rfcomm_remote_cid 
+0x5072 020561 jam 0 ,mem_rfcomm_state 
+0x5073 020562 rtn 
+:      020563 l2cap_reset_sdp_channel_state:
+0x5074 020564 setarg 0 
+0x5075 020565 store 2 ,mem_sdp_tx_pkt_length 
+0x5076 020566 store 2 ,mem_sdp_remote_cid 
+0x5077 020567 jam 0 ,mem_sdp_state 
+0x5078 020568 rtn 
+:      020569 l2cap_reset_hid_ctrl_state:
+0x5079 020570 setarg 0 
+0x507a 020571 store 2 ,mem_hid_ctrl_remote_cid 
+0x507b 020572 jam 0 ,mem_hid_control_state 
+0x507c 020573 fetch 1 ,mem_hid_interrupt_state 
+0x507d 020574 beq 0 ,l2cap_reset_hid_disconnected 
+0x507e 020575 rtn 
+:      020577 l2cap_reset_hid_int_state:
+0x507f 020578 setarg 0 
+0x5080 020579 store 2 ,mem_hid_int_remote_cid 
+0x5081 020580 jam 0 ,mem_hid_interrupt_state 
+0x5082 020581 fetch 1 ,mem_hid_control_state 
+0x5083 020582 beq 0 ,l2cap_reset_hid_disconnected 
+0x5084 020583 rtn 
+:      020585 l2cap_reset_hid_disconnected:
+0x5085 020586 jam bt_evt_hid_disconnected ,mem_fifo_temp 
+0x5086 020587 branch ui_ipc_send_event 
+:      020589 l2cap_disconnect_interrupt_req:
+0x5087 020590 fetch 1 ,mem_control_tasks 
+0x5088 020591 set0 l2cap_disconnect_interrupt ,pdata 
+0x5089 020592 store 1 ,mem_control_tasks 
+0x508a 020593 fetch 2 ,mem_hid_int_remote_cid 
+0x508b 020594 rtn blank 
+0x508c 020595 call l2cap_malloc_signal_channel 
+0x508d 020596 fetch 2 ,mem_hid_int_remote_cid 
+0x508e 020597 copy pdata ,rega 
+0x508f 020598 force l2cap_hid_interrupt_channel ,regb 
+0x5090 020599 branch l2cap_generate_disconnect_req 
+:      020600 l2cap_disconnect_control_req:
+0x5091 020601 fetch 1 ,mem_control_tasks 
+0x5092 020602 set0 l2cap_disconnect_control ,pdata 
+0x5093 020603 store 1 ,mem_control_tasks 
+0x5094 020604 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x5095 020605 rtn blank 
+0x5096 020606 call l2cap_malloc_signal_channel 
+0x5097 020607 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x5098 020608 copy pdata ,rega 
+0x5099 020609 force l2cap_hid_control_channel ,regb 
+:      020610 l2cap_generate_disconnect_req:
+0x509a 020611 call l2cap_get_req_id 
+0x509b 020612 call l2cap_get_signal_tx_payload 
+0x509c 020613 force signal_disconnect_req ,pdata 
+0x509d 020614 istore 1 ,contw 
+0x509e 020615 fetch 1 ,mem_ml2cap_comm_id 
+0x509f 020616 istore 1 ,contw 
+0x50a0 020617 setarg 0x0004 
+0x50a1 020618 istore 2 ,contw 
+0x50a2 020619 copy rega ,pdata 
+0x50a3 020620 istore 2 ,contw 
+0x50a4 020621 copy regb ,pdata 
+0x50a5 020622 istore 2 ,contw 
+0x50a6 020623 force 0x08 ,temp 
+0x50a7 020624 branch ml2cap_send_signal 
+:      020626 ml2cap_send_signal_connect_req:
+0x50a8 020627 bpatchx patch23_0 ,mem_patch23 
+0x50a9 020628 call l2cap_get_req_id 
+0x50aa 020629 call l2cap_get_signal_tx_payload 
+0x50ab 020630 setarg signal_connect_req 
+0x50ac 020631 istore 1 ,contw 
+0x50ad 020632 fetch 1 ,mem_ml2cap_comm_id 
+0x50ae 020633 istore 1 ,contw 
+0x50af 020634 setarg 0x0004 
+0x50b0 020635 istore 2 ,contw 
+0x50b1 020636 copy temp ,pdata 
+0x50b2 020637 istore 2 ,contw 
+0x50b3 020638 copy timeup ,pdata 
+0x50b4 020639 istore 2 ,contw 
+0x50b5 020640 arg 8 ,temp 
+0x50b6 020641 branch ml2cap_send_signal 
+:      020642 ml2cap_send_signal_config_req:
+0x50b7 020643 bpatchx patch23_1 ,mem_patch23 
+0x50b8 020644 call l2cap_get_req_id 
+0x50b9 020645 call l2cap_get_signal_tx_payload 
+0x50ba 020646 setarg signal_config_req 
+0x50bb 020647 istore 1 ,contw 
+0x50bc 020648 fetch 1 ,mem_ml2cap_comm_id 
+0x50bd 020649 istore 1 ,contw 
+0x50be 020650 setarg 0x0008 
+0x50bf 020651 istore 2 ,contw 
+0x50c0 020653 copy temp ,pdata 
+0x50c1 020655 istore 2 ,contw 
+0x50c2 020656 setarg 0x0000 
+0x50c3 020657 istore 2 ,contw 
+0x50c4 020658 setarg 0x01 
+0x50c5 020659 istore 1 ,contw 
+0x50c6 020660 setarg 0x02 
+0x50c7 020661 istore 1 ,contw 
+0x50c8 020662 setarg l2cap_config_mtu_rfcomm 
+0x50c9 020663 istore 2 ,contw 
+0x50ca 020664 arg 0xc ,temp 
+0x50cb 020665 branch ml2cap_send_signal 
+:      020666 ml2cap_send_signal_disconn_req:
+0x50cc 020667 bpatchx patch23_2 ,mem_patch23 
+0x50cd 020668 call l2cap_get_req_id 
+0x50ce 020669 call l2cap_get_signal_tx_payload 
+0x50cf 020670 setarg signal_disconnect_req 
+0x50d0 020671 istore 1 ,contw 
+0x50d1 020672 fetch 1 ,mem_ml2cap_comm_id 
+0x50d2 020673 increase 1 ,pdata 
+0x50d3 020674 copy contw ,rega 
+0x50d4 020675 store 1 ,mem_ml2cap_comm_id 
+0x50d5 020676 copy rega ,contw 
+0x50d6 020677 istore 1 ,contw 
+0x50d7 020678 setarg 0x0004 
+0x50d8 020679 istore 2 ,contw 
+0x50d9 020680 copy temp ,pdata 
+0x50da 020681 istore 2 ,contw 
+0x50db 020682 copy timeup ,pdata 
+0x50dc 020683 istore 2 ,contw 
+0x50dd 020684 arg 0x8 ,temp 
+:      020687 ml2cap_send_signal:
+0x50de 020688 storet 2 ,mem_l2cap_signal_tx_length 
+0x50df 020689 copy temp ,pdata 
+0x50e0 020690 branch l2cap_malloc_discard ,blank 
+0x50e1 020691 call l2cap_get_signal_tx_buff 
+0x50e2 020692 fetch 2 ,mem_l2cap_signal_tx_length 
+0x50e3 020693 istore 2 ,contw 
+0x50e4 020694 force l2cap_signal_channel ,pdata 
+0x50e5 020695 istore 2 ,contw 
+0x50e6 020696 rtn 
+:      020698 msdp_send_req_done:
+0x50e7 020699 fetch 2 ,mem_sdp_tx_pkt_length 
+0x50e8 020700 branch assert ,blank 
+0x50e9 020701 call l2cap_get_sdp_tx_buff 
+0x50ea 020702 fetch 2 ,mem_sdp_tx_pkt_length 
+0x50eb 020703 istore 2 ,contw 
+0x50ec 020704 fetch 2 ,mem_sdp_remote_cid 
+0x50ed 020705 istore 2 ,contw 
+0x50ee 020706 rtn 
+:      020707 ml2cap_rx_multiplexing:
+0x50ef 020708 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x50f0 020709 branch l2cap_rx_reset_state ,blank 
+0x50f1 020710 bpatchx patch23_3 ,mem_patch23 
+0x50f2 020711 fetch 1 ,mem_l2cap_rx_cid 
+0x50f3 020712 beq l2cap_signal_channel ,ml2cap_call_proc_signal 
+0x50f4 020713 beq l2cap_sdp_channel ,ml2cap_call_proc_sdp 
+0x50f5 020714 beq l2cap_rfcomm_channel ,l2cap_call_proc_rfcomm 
+0x50f6 020715 beq l2cap_hid_control_channel ,l2cap_call_proc_hid 
+0x50f7 020716 beq l2cap_hid_interrupt_channel ,l2cap_call_proc_hid 
+0x50f8 020717 branch l2cap_rx_reset_state 
+:      020719 ml2cap_call_proc_signal:
+0x50f9 020720 bpatchx patch23_4 ,mem_patch23 
+0x50fa 020721 call l2cap_malloc_signal_channel 
+0x50fb 020722 force 0 ,regb 
+0x50fc 020723 call l2cap_get_signal_tx_payload 
+0x50fd 020724 copy pdata ,contw 
+0x50fe 020725 fetch 2 ,mem_l2cap_rx_pkt_length 
+0x50ff 020726 copy pdata ,regc 
+0x5100 020727 fetch 2 ,mem_l2cap_payload_ptr 
+0x5101 020728 iforce contr 
+:      020729 ml2cap_proc_one_comm_loop:
+0x5102 020730 call ml2cap_proc_one_comm 
+0x5103 020731 increase -4 ,regc 
+0x5104 020732 nbranch ml2cap_proc_one_comm_loop ,zero 
+0x5105 020733 copy regb ,temp 
+0x5106 020734 call ml2cap_send_signal 
+0x5107 020735 branch l2cap_rx_reset_state 
+:      020737 ml2cap_proc_one_comm:
+0x5108 020738 ifetch 1 ,contr 
+0x5109 020739 beq signal_connect_req ,ml2cap_proc_signal_connect_req 
+0x510a 020740 beq signal_cmd_reject ,ml2cap_proc_signal_cmd_reject 
+0x510b 020741 beq signal_connect_rsp ,ml2cap_proc_signal_connect_rsp 
+0x510c 020742 beq signal_config_rsp ,ml2cap_proc_signal_config_rsp 
+0x510d 020743 beq signal_config_req ,ml2cap_proc_signal_config_req 
+0x510e 020744 beq signal_disconnect_rsp ,ml2cap_proc_signal_disconn_rsp 
+0x510f 020745 beq signal_disconnect_req ,ml2cap_proc_signal_disconn_req 
+0x5110 020746 beq signal_echo_req ,l2cap_proc_signal_echo_req 
+0x5111 020747 beq signal_info_req ,ml2cap_proc_signal_info_req 
+0x5112 020748 branch ml2cap_proc_send_reject 
+:      020750 ml2cap_proc_signal_connect_req:
+0x5113 020751 call save_cont_pointers 
+0x5114 020753 call load_cont_pointers 
+0x5115 020754 branch l2cap_proc_signal_connect_req 
+:      020755 ml2cap_proc_signal_cmd_reject:
+0x5116 020756 ifetch 1 ,contr 
+0x5117 020757 copy pdata ,queue 
+0x5118 020758 ifetch 2 ,contr 
+0x5119 020759 copy pdata ,rega 
+0x511a 020760 copy regc ,pdata 
+0x511b 020761 isub rega ,regc 
+:      020762 mvptr:
+0x511c 020763 ifetch 1 ,contr 
+0x511d 020764 increase -1 ,rega 
+0x511e 020765 nbranch mvptr ,zero 
+0x511f 020766 rtn 
+:      020767 ml2cap_proc_signal_connect_rsp:
+0x5120 020768 ifetch 1 ,contr 
+0x5121 020769 copy pdata ,queue 
+0x5122 020770 ifetch 2 ,contr 
+0x5123 020771 copy pdata ,rega 
+0x5124 020772 ifetch 2 ,contr 
+0x5125 020773 copy pdata ,timeup 
+0x5126 020774 ifetch 2 ,contr 
+0x5127 020775 copy pdata ,temp 
+0x5128 020776 ifetch 2 ,contr 
+0x5129 020777 sub pdata ,0 ,null 
+0x512a 020778 branch ml2cap_proc_signal_connect_rsp_sucessful ,zero 
+0x512b 020779 beq l2cap_connect_refused_psm_unsupported ,ml2cap_proc_signal_connect_refused_result 
+0x512c 020780 beq l2cap_connect_refused_no_resources ,ml2cap_proc_signal_connect_refused_result 
+0x512d 020781 branch ml2cap_proc_signal_connect_rsp_mnosucc 
+:      020782 ml2cap_proc_signal_connect_refused_result:
+0x512e 020783 jam bt_evt_ml2cap_conn_refused ,mem_fifo_temp 
+0x512f 020784 call ui_ipc_send_event 
+:      020785 ml2cap_proc_signal_connect_rsp_mnosucc:
+0x5130 020786 ifetch 2 ,contr 
+0x5131 020787 branch mnosucc 
+:      020788 ml2cap_proc_signal_connect_rsp_sucessful:
+0x5132 020789 call save_cont_pointers 
+0x5133 020793 bpatchx patch23_5 ,mem_patch23 
+0x5134 020794 setarg l2cap_sdp_channel 
+0x5135 020795 isub temp ,null 
+0x5136 020796 branch ml2cap_proc_signal_connect_rsp_sdp ,zero 
+0x5137 020797 setarg l2cap_rfcomm_channel 
+0x5138 020798 isub temp ,null 
+0x5139 020799 branch ml2cap_proc_signal_connect_rsp_rfcomm ,zero 
+0x513a 020800 setarg l2cap_hid_interrupt_channel 
+0x513b 020801 isub temp ,null 
+0x513c 020802 branch ml2cap_proc_signal_connect_rsp_hid_int ,zero 
+0x513d 020803 setarg l2cap_hid_control_channel 
+0x513e 020804 isub temp ,null 
+0x513f 020805 branch ml2cap_proc_signal_connect_rsp_hid_ctrl ,zero 
+0x5140 020806 branch mnosucc 
+:      020807 ml2cap_proc_signal_connect_rsp_sdp:
+0x5141 020808 copy timeup ,pdata 
+0x5142 020809 store 2 ,mem_sdp_remote_cid 
+0x5143 020810 fetch 1 ,mem_sdp_state 
+0x5144 020811 set1 l2cap_channel_state_conn_res 
+0x5145 020812 store 1 ,mem_sdp_state 
+0x5146 020813 branch mnosucc1 
+:      020814 ml2cap_proc_signal_connect_rsp_rfcomm:
+0x5147 020815 copy timeup ,pdata 
+0x5148 020816 store 2 ,mem_rfcomm_remote_cid 
+0x5149 020817 fetch 1 ,mem_rfcomm_state 
+0x514a 020818 set1 l2cap_channel_state_conn_res 
+0x514b 020819 store 1 ,mem_rfcomm_state 
+0x514c 020820 branch mnosucc1 
+:      020821 ml2cap_proc_signal_connect_rsp_hid_ctrl:
+0x514d 020822 copy timeup ,pdata 
+0x514e 020823 store 2 ,mem_hid_ctrl_remote_cid 
+0x514f 020824 fetch 1 ,mem_hid_control_state 
+0x5150 020825 set1 l2cap_channel_state_conn_res 
+0x5151 020826 store 1 ,mem_hid_control_state 
+0x5152 020827 branch mnosucc1 
+:      020828 ml2cap_proc_signal_connect_rsp_hid_int:
+0x5153 020829 copy timeup ,pdata 
+0x5154 020830 store 2 ,mem_hid_int_remote_cid 
+0x5155 020831 fetch 1 ,mem_hid_interrupt_state 
+0x5156 020832 set1 l2cap_channel_state_conn_res 
+0x5157 020833 store 1 ,mem_hid_interrupt_state 
+:      020836 mnosucc1:
+0x5158 020837 call load_cont_pointers 
+:      020838 mnosucc:
+0x5159 020839 copy regc ,pdata 
+0x515a 020840 isub rega ,regc 
+0x515b 020841 rtn 
+:      020843 ml2cap_proc_signal_config_rsp:
+0x515c 020844 ifetch 1 ,contr 
+0x515d 020845 copy pdata ,queue 
+0x515e 020846 ifetch 2 ,contr 
+0x515f 020847 copy pdata ,rega 
+0x5160 020848 copy regc ,pdata 
+0x5161 020849 isub rega ,regc 
+0x5162 020850 ifetch 2 ,contr 
+0x5163 020851 copy pdata ,timeup 
+0x5164 020852 ifetch 2 ,contr 
+0x5165 020853 ifetch 2 ,contr 
+0x5166 020854 nbranch mcrsdone1 ,blank 
+0x5167 020855 call save_cont_pointers 
+0x5168 020859 copy timeup ,temp 
+0x5169 020860 bpatchx patch23_6 ,mem_patch23 
+0x516a 020861 setarg l2cap_sdp_channel 
+0x516b 020862 isub temp ,null 
+0x516c 020863 branch ml2cap_proc_signal_config_rsp_sdp ,zero 
+0x516d 020864 setarg l2cap_rfcomm_channel 
+0x516e 020865 isub temp ,null 
+0x516f 020866 branch ml2cap_proc_signal_config_rsp_rfcomm ,zero 
+0x5170 020867 setarg l2cap_hid_control_channel 
+0x5171 020868 isub temp ,null 
+0x5172 020869 branch ml2cap_proc_signal_config_rsp_hid_ctrl ,zero 
+0x5173 020870 setarg l2cap_hid_interrupt_channel 
+0x5174 020871 isub temp ,null 
+0x5175 020872 branch ml2cap_proc_signal_config_rsp_hid_int ,zero 
+:      020873 ml2cap_proc_signal_config_rsp_sdp:
+0x5176 020874 fetch 1 ,mem_sdp_state 
+0x5177 020875 set1 l2cap_channel_state_rcv_cfg_res 
+0x5178 020876 store 1 ,mem_sdp_state 
+0x5179 020877 rtn 
+:      020878 ml2cap_proc_signal_config_rsp_rfcomm:
+0x517a 020879 fetch 1 ,mem_rfcomm_state 
+0x517b 020880 set1 l2cap_channel_state_rcv_cfg_res 
+0x517c 020881 store 1 ,mem_rfcomm_state 
+0x517d 020882 rtn 
+:      020883 ml2cap_proc_signal_config_rsp_hid_ctrl:
+0x517e 020884 fetch 1 ,mem_hid_control_state 
+0x517f 020885 set1 l2cap_channel_state_rcv_cfg_res 
+0x5180 020886 store 1 ,mem_hid_control_state 
+0x5181 020887 rtn 
+:      020888 ml2cap_proc_signal_config_rsp_hid_int:
+0x5182 020889 fetch 1 ,mem_hid_interrupt_state 
+0x5183 020890 set1 l2cap_channel_state_rcv_cfg_res 
+0x5184 020891 store 1 ,mem_hid_interrupt_state 
+0x5185 020892 jam bt_evt_hid_connected ,mem_fifo_temp 
+0x5186 020893 branch ui_ipc_send_event 
+:      020896 mcfrsdone:
+0x5187 020897 call load_cont_pointers 
+:      020898 mcrsdone1:
+0x5188 020899 increase -6 ,rega 
+:      020900 mloop2:
+0x5189 020901 branch mcrsdone ,zero 
+0x518a 020902 increase 1 ,contr 
+0x518b 020903 increase -1 ,rega 
+0x518c 020904 branch mloop2 
+:      020905 mcrsdone:
+0x518d 020906 rtn 
+:      020907 ml2cap_proc_signal_config_req:
+0x518e 020908 ifetch 1 ,contr 
+0x518f 020909 copy pdata ,queue 
+0x5190 020910 ifetch 2 ,contr 
+0x5191 020911 copy pdata ,rega 
+0x5192 020912 copy regc ,pdata 
+0x5193 020913 isub rega ,regc 
+0x5194 020914 ifetch 2 ,contr 
+0x5195 020915 increase 2 ,contr 
+0x5196 020916 copy pdata ,temp 
+0x5197 020917 setarg signal_config_rsp 
+0x5198 020918 istore 1 ,contw 
+0x5199 020919 copy queue ,pdata 
+0x519a 020920 istore 1 ,contw 
+0x519b 020921 increase 2 ,rega 
+0x519c 020922 copy rega ,pdata 
+0x519d 020923 istore 2 ,contw 
+0x519e 020924 call save_cont_pointers 
+0x519f 020925 bpatchx patch23_7 ,mem_patch23 
+0x51a0 020926 setarg l2cap_sdp_channel 
+0x51a1 020927 isub temp ,null 
+0x51a2 020928 branch ml2cap_proc_signal_config_req_sdp ,zero 
+0x51a3 020929 setarg l2cap_rfcomm_channel 
+0x51a4 020930 isub temp ,null 
+0x51a5 020931 branch ml2cap_proc_signal_config_req_rfcomm ,zero 
+0x51a6 020932 setarg l2cap_hid_control_channel 
+0x51a7 020933 isub temp ,null 
+0x51a8 020934 branch ml2cap_proc_signal_config_req_hid_ctrl ,zero 
+0x51a9 020935 setarg l2cap_hid_interrupt_channel 
+0x51aa 020936 isub temp ,null 
+0x51ab 020937 branch ml2cap_proc_signal_config_req_hid_int ,zero 
+0x51ac 020938 branch mcfgrq_done 
+:      020939 ml2cap_proc_signal_config_req_sdp:
+0x51ad 020940 fetch 1 ,mem_sdp_state 
+0x51ae 020941 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51af 020942 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51b0 020943 store 1 ,mem_sdp_state 
+0x51b1 020944 bbit1 l2cap_channel_state_snd_cfg_req ,ml2cap_proc_signal_config_req_sdp_nsndreq 
+0x51b2 020945 fetcht 1 ,mem_control_tasks 
+0x51b3 020946 set1 l2cap_init_config_req ,temp 
+0x51b4 020947 storet 1 ,mem_control_tasks 
+0x51b5 020948 copy queue ,pdata 
+0x51b6 020949 increase 1 ,pdata 
+0x51b7 020950 store 1 ,mem_config_identifier 
+0x51b8 020951 fetch 1 ,mem_sdp_state 
+0x51b9 020952 set1 l2cap_channel_state_snd_cfg_req ,pdata 
+0x51ba 020953 store 1 ,mem_sdp_state 
+:      020954 ml2cap_proc_signal_config_req_sdp_nsndreq:
+0x51bb 020955 fetch 2 ,mem_sdp_remote_cid 
+0x51bc 020956 store 2 ,mem_config_req_dest_cid 
+0x51bd 020957 branch mcfgrq_done 
+:      020958 ml2cap_proc_signal_config_req_rfcomm:
+0x51be 020959 fetch 1 ,mem_rfcomm_state 
+0x51bf 020960 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51c0 020961 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51c1 020962 store 1 ,mem_rfcomm_state 
+0x51c2 020963 fetch 2 ,mem_rfcomm_remote_cid 
+0x51c3 020964 branch mcfgrq_done 
+:      020965 ml2cap_proc_signal_config_req_hid_ctrl:
+0x51c4 020966 fetch 1 ,mem_hid_control_state 
+0x51c5 020967 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51c6 020968 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51c7 020969 store 1 ,mem_hid_control_state 
+0x51c8 020970 fetch 2 ,mem_hid_ctrl_remote_cid 
+0x51c9 020971 branch mcfgrq_done 
+:      020972 ml2cap_proc_signal_config_req_hid_int:
+0x51ca 020973 fetch 1 ,mem_hid_interrupt_state 
+0x51cb 020974 set1 l2cap_channel_state_rcv_cfg_req ,pdata 
+0x51cc 020975 set1 l2cap_channel_state_snd_cfg_res ,pdata 
+0x51cd 020976 store 1 ,mem_hid_interrupt_state 
+0x51ce 020977 fetch 2 ,mem_hid_int_remote_cid 
+:      020980 mcfgrq_done:
+0x51cf 020981 copy pdata ,timeup 
+0x51d0 020982 call load_cont_pointers 
+0x51d1 020984 copy timeup ,pdata 
+0x51d2 020986 istore 2 ,contw 
+0x51d3 020987 force 0x0000 ,pdata 
+0x51d4 020988 istore 2 ,contw 
+0x51d5 020989 force 0x0000 ,pdata 
+0x51d6 020990 istore 2 ,contw 
+0x51d7 020991 force 10 ,pdata 
+0x51d8 020992 iadd regb ,regb 
+0x51d9 020993 increase -6 ,rega 
+:      020994 mloop1:
+0x51da 020995 branch mcrqdone ,zero 
+0x51db 020996 ifetch 1 ,contr 
+0x51dc 020997 istore 1 ,contw 
+0x51dd 020998 increase 1 ,regb 
+0x51de 020999 increase -1 ,rega 
+0x51df 021000 branch mloop1 
+:      021001 mcrqdone:
+0x51e0 021002 rtn 
+:      021003 ml2cap_proc_signal_disconn_req:
+0x51e1 021004 ifetch 1 ,contr 
+0x51e2 021005 copy pdata ,queue 
+0x51e3 021006 ifetch 2 ,contr 
+0x51e4 021007 copy pdata ,rega 
+0x51e5 021008 copy regc ,pdata 
+0x51e6 021009 isub rega ,regc 
+0x51e7 021011 ifetch 2 ,contr 
+0x51e8 021012 copy pdata ,rega 
+0x51e9 021013 ifetch 2 ,contr 
+0x51ea 021014 copy pdata ,timeup 
+0x51eb 021015 call save_cont_pointers 
+0x51ec 021016 bpatchx patch24_0 ,mem_patch24 
+0x51ed 021017 setarg l2cap_sdp_channel 
+0x51ee 021018 copy rega ,temp 
+0x51ef 021019 isub temp ,null 
+0x51f0 021020 branch ml2cap_proc_signal_disconn_sdp ,zero 
+0x51f1 021021 setarg l2cap_hid_control_channel 
+0x51f2 021022 copy rega ,temp 
+0x51f3 021023 isub temp ,null 
+0x51f4 021024 branch ml2cap_proc_signal_disconn_hid_ctrl ,zero 
+0x51f5 021025 setarg l2cap_hid_interrupt_channel 
+0x51f6 021026 copy rega ,temp 
+0x51f7 021027 isub temp ,null 
+0x51f8 021028 branch ml2cap_proc_signal_disconn_hid_int ,zero 
+0x51f9 021029 branch mclsrfc 
+:      021030 ml2cap_proc_signal_disconn_sdp:
+0x51fa 021031 setarg 0x0000 
+0x51fb 021032 store 2 ,mem_sdp_tx_pkt_length 
+0x51fc 021033 store 2 ,mem_sdp_remote_cid 
+0x51fd 021034 store 1 ,mem_sdp_state 
+0x51fe 021035 branch mclssdp 
+:      021036 ml2cap_proc_signal_disconn_hid_ctrl:
+0x51ff 021037 call l2cap_reset_hid_ctrl_state 
+0x5200 021038 branch mclssdp 
+:      021039 ml2cap_proc_signal_disconn_hid_int:
+0x5201 021040 call l2cap_reset_hid_int_state 
+0x5202 021046 branch mclssdp 
+:      021047 mclsrfc:
+0x5203 021048 setarg 0x0000 
+0x5204 021049 store 2 ,mem_rfcomm_tx_pkt_length 
+:      021050 mclssdp:
+0x5205 021051 call load_cont_pointers 
+0x5206 021052 setarg signal_disconnect_rsp 
+0x5207 021053 istore 1 ,contw 
+0x5208 021054 copy queue ,pdata 
+0x5209 021055 istore 1 ,contw 
+0x520a 021056 setarg 0x0004 
+0x520b 021057 istore 2 ,contw 
+0x520c 021058 copy rega ,pdata 
+0x520d 021059 istore 2 ,contw 
+0x520e 021060 copy timeup ,pdata 
+0x520f 021061 istore 2 ,contw 
+0x5210 021062 force 8 ,pdata 
+0x5211 021063 iadd regb ,regb 
+0x5212 021064 rtn 
+:      021066 ml2cap_proc_signal_disconn_rsp:
+0x5213 021067 ifetch 1 ,contr 
+0x5214 021068 copy pdata ,queue 
+0x5215 021069 ifetch 2 ,contr 
+0x5216 021070 copy pdata ,rega 
+0x5217 021071 ifetch 2 ,contr 
+0x5218 021072 copy pdata ,timeup 
+0x5219 021073 ifetch 2 ,contr 
+0x521a 021074 copy pdata ,temp 
+0x521b 021075 call save_cont_pointers 
+0x521c 021076 bpatchx patch24_1 ,mem_patch24 
+0x521d 021077 fetch 1 ,mem_ml2cap_comm_id 
+0x521e 021078 icompare 0xff ,queue 
+0x521f 021079 nbranch mdisdone ,true 
+0x5220 021080 setarg l2cap_sdp_channel 
+0x5221 021081 isub temp ,null 
+0x5222 021082 branch ml2cap_proc_signal_disconn_rsp_sdp ,zero 
+0x5223 021083 setarg l2cap_rfcomm_channel 
+0x5224 021084 isub temp ,null 
+0x5225 021085 branch ml2cap_proc_signal_disconn_rsp_rfcomm ,zero 
+0x5226 021086 branch mdisdone 
+:      021087 ml2cap_proc_signal_disconn_rsp_sdp:
+0x5227 021088 jam 0 ,mem_sdp_remote_cid 
+0x5228 021089 jam 0 ,mem_sdp_state 
+0x5229 021090 branch mdisdone 
+:      021091 ml2cap_proc_signal_disconn_rsp_rfcomm:
+:      021094 mdisdone:
+0x522a 021095 call load_cont_pointers 
+0x522b 021096 copy regc ,pdata 
+0x522c 021097 isub rega ,regc 
+0x522d 021098 rtn 
+:      021100 ml2cap_proc_send_reject:
+0x522e 021101 setarg signal_cmd_reject 
+0x522f 021102 istore 1 ,contw 
+0x5230 021103 ifetch 1 ,contr 
+0x5231 021104 istore 1 ,contw 
+0x5232 021105 setarg 0x0002 
+0x5233 021106 istore 2 ,contw 
+0x5234 021107 setarg 0x0000 
+0x5235 021108 istore 2 ,contw 
+0x5236 021109 setarg 0x0006 
+0x5237 021110 iadd regb ,regb 
+0x5238 021111 force 4 ,regc 
+0x5239 021112 rtn 
+:      021115 l2cap_get_req_id:
+0x523a 021116 fetch 1 ,mem_ml2cap_comm_id 
+0x523b 021117 increase 1 ,pdata 
+0x523c 021118 bne 0 ,l2cap_get_req_id_ok 
+0x523d 021119 increase 1 ,pdata 
+:      021120 l2cap_get_req_id_ok:
+0x523e 021121 store 1 ,mem_ml2cap_comm_id 
+0x523f 021122 rtn 
+:      021132 l2cap_malloc:
+0x5240 021133 bpatchx patch24_2 ,mem_patch24 
+0x5241 021134 arg 0 ,regb 
+0x5242 021135 call l2cap_malloc_is_fifo_full 
+0x5243 021136 nbranch assert ,blank 
+0x5244 021137 call l2cap_malloc_get_full_map 
+0x5245 021138 arg mem_tx_buff0 ,regb 
+0x5246 021139 arg 0 ,queue 
+:      021140 l2cap_malloc_loop:
+0x5247 021141 fetcht 1 ,mem_used_map 
+0x5248 021142 qisolate1 temp 
+0x5249 021143 branch l2cap_malloc_next ,true 
+0x524a 021144 call l2cap_malloc_enough 
+0x524b 021145 sub timeup ,0 ,null 
+0x524c 021146 branch l2cap_malloc_next ,positive 
+0x524d 021147 call l2cap_malloc_into_fifo 
+0x524e 021148 branch l2cap_malloc_rtn 
+:      021149 l2cap_malloc_next:
+0x524f 021150 increase 128 ,regb 
+0x5250 021151 increase 1 ,queue 
+0x5251 021152 setarg 8 
+0x5252 021153 isub queue ,null 
+0x5253 021154 branch l2cap_malloc_loop ,positive 
+0x5254 021155 arg 0 ,regb 
+:      021156 l2cap_malloc_rtn:
+0x5255 021157 copy regb ,pdata 
+0x5256 021158 branch assert ,blank 
+0x5257 021159 rtn 
+:      021167 l2cap_malloc_fifo_out:
+0x5258 021168 bpatchx patch24_3 ,mem_patch24 
+0x5259 021169 call l2cap_malloc_fifo_get_first_ptr 
+0x525a 021170 increase 1 ,contr 
+0x525b 021171 ifetch 2 ,contr 
+0x525c 021172 rtn 
+:      021178 l2cap_malloc_free:
+0x525d 021179 bpatchx patch24_4 ,mem_patch24 
+0x525e 021180 call l2cap_malloc_fifo_get_first_ptr 
+0x525f 021181 copy contr ,contw 
+0x5260 021182 copy contr ,temp 
+0x5261 021183 setarg 0 
+0x5262 021184 istore 3 ,contw 
+0x5263 021185 rtn 
+:      021190 l2cap_malloc_discard:
+0x5264 021191 bpatchx patch24_5 ,mem_patch24 
+0x5265 021192 call l2cap_malloc_is_fifo_empty 
+0x5266 021193 branch assert ,blank 
+0x5267 021194 fetch 3 ,mem_tx_fifo2 
+0x5268 021195 store 3 ,mem_tx_fifo3 
+0x5269 021196 fetch 3 ,mem_tx_fifo1 
+0x526a 021197 store 3 ,mem_tx_fifo2 
+0x526b 021198 fetch 3 ,mem_tx_fifo0 
+0x526c 021199 store 3 ,mem_tx_fifo1 
+0x526d 021200 rtn 
+:      021206 l2cap_malloc_is_fifo_full:
+0x526e 021207 bpatchx patch24_6 ,mem_patch24 
+0x526f 021208 fetch 3 ,mem_tx_fifo0 
+0x5270 021209 rtn 
+:      021215 l2cap_malloc_is_fifo_nearly_full:
+0x5271 021216 bpatchx patch24_7 ,mem_patch24 
+0x5272 021217 fetch 3 ,mem_tx_fifo1 
+0x5273 021218 rtn 
+:      021224 l2cap_malloc_is_fifo_empty:
+0x5274 021225 bpatchx patch25_0 ,mem_patch25 
+0x5275 021226 fetch 3 ,mem_tx_fifo3 
+0x5276 021227 rtn 
+:      021232 l2cap_malloc_fifo_get_first_ptr:
+0x5277 021233 call l2cap_malloc_is_fifo_empty 
+0x5278 021234 branch assert ,blank 
+0x5279 021235 arg mem_tx_fifo0 ,contr 
+:      021236 l2cap_malloc_free_loop:
+0x527a 021237 ifetch 3 ,contr 
+0x527b 021238 branch l2cap_malloc_free_loop ,blank 
+0x527c 021239 increase -3 ,contr 
+0x527d 021240 rtn 
+:      021247 l2cap_malloc_get_full_map:
+0x527e 021248 bpatchx patch25_1 ,mem_patch25 
+0x527f 021249 arg 4 ,loopcnt 
+0x5280 021250 arg mem_tx_fifo0_map ,contr 
+0x5281 021251 arg 0 ,temp 
+:      021252 l2cap_malloc_get_full_map_loop:
+0x5282 021253 ifetch 3 ,contr 
+0x5283 021254 and pdata ,0xff ,pdata 
+0x5284 021255 ior temp ,temp 
+0x5285 021256 loop l2cap_malloc_get_full_map_loop 
+0x5286 021257 storet 1 ,mem_used_map 
+0x5287 021258 rtn 
+:      021266 l2cap_malloc_into_fifo:
+0x5288 021267 bpatchx patch25_2 ,mem_patch25 
+0x5289 021268 call l2cap_malloc_is_fifo_full 
+0x528a 021269 nbranch assert ,blank 
+0x528b 021270 call l2cap_malloc_is_fifo_empty 
+0x528c 021271 branch l2cap_malloc_into_fifo_no_push ,blank 
+0x528d 021272 fetch 3 ,mem_tx_fifo1 
+0x528e 021273 store 3 ,mem_tx_fifo0 
+0x528f 021274 ifetch 3 ,contr 
+0x5290 021275 istore 3 ,contw 
+0x5291 021276 ifetch 3 ,contr 
+0x5292 021277 istore 3 ,contw 
+0x5293 021278 setarg 0 
+0x5294 021279 istore 3 ,contw 
+:      021280 l2cap_malloc_into_fifo_no_push:
+0x5295 021281 arg 0 ,temp 
+0x5296 021282 copy timeup ,pdata 
+0x5297 021283 iadd queue ,pdata 
+:      021284 l2cap_malloc_into_fifo_loop:
+0x5298 021285 qset1 temp 
+0x5299 021286 increase 1 ,queue 
+0x529a 021287 isub queue ,null 
+0x529b 021288 nbranch l2cap_malloc_into_fifo_loop ,zero 
+0x529c 021290 lshift8 regb ,pdata 
+0x529d 021291 ior temp ,pdata 
+0x529e 021292 store 3 ,mem_tx_fifo3 
+0x529f 021293 rtn 
+:      021303 l2cap_malloc_enough:
+0x52a0 021304 bpatchx patch25_3 ,mem_patch25 
+0x52a1 021305 call l2cap_malloc_get_full_map 
+0x52a2 021306 copy queue ,regc 
+0x52a3 021307 arg 0 ,temp 
+0x52a4 021308 arg 0 ,timeup 
+:      021310 l2cap_malloc_enough_loop:
+0x52a5 021311 copy queue ,pdata 
+0x52a6 021312 beq 8 ,l2cap_malloc_enough_end 
+0x52a7 021313 fetch 1 ,mem_used_map 
+0x52a8 021314 qisolate1 pdata 
+0x52a9 021315 branch l2cap_malloc_enough_end ,true 
+0x52aa 021316 increase 128 ,temp 
+0x52ab 021317 increase 1 ,queue 
+0x52ac 021318 copy rega ,pdata 
+0x52ad 021319 isub temp ,null 
+0x52ae 021320 branch l2cap_malloc_enough_end ,zero 
+0x52af 021321 branch l2cap_malloc_enough_loop ,positive 
+:      021322 l2cap_malloc_enough_end:
+0x52b0 021323 copy temp ,pdata 
+0x52b1 021324 isub rega ,null 
+0x52b2 021325 nbranch l2cap_malloc_enough_rtn ,positive 
+0x52b3 021326 copy queue ,pdata 
+0x52b4 021327 copy regc ,temp 
+0x52b5 021328 isub temp ,timeup 
+:      021329 l2cap_malloc_enough_rtn:
+0x52b6 021330 copy regc ,queue 
+0x52b7 021331 rtn 
+:      021334 l2cap_malloc_signal_channel:
+0x52b8 021335 bpatchx patch25_4 ,mem_patch25 
+0x52b9 021336 arg l2cap_signal_malloc_size ,rega 
+0x52ba 021337 call l2cap_malloc 
+0x52bb 021338 store 2 ,mem_l2cap_signal_tx_buff_ptr 
+0x52bc 021339 increase 4 ,pdata 
+0x52bd 021340 store 2 ,mem_l2cap_signal_tx_payload_ptr 
+0x52be 021341 setarg 0 
+0x52bf 021342 store 2 ,mem_l2cap_signal_tx_length 
+0x52c0 021343 rtn 
+:      021345 l2cap_get_signal_tx_buff:
+0x52c1 021346 fetch 2 ,mem_l2cap_signal_tx_buff_ptr 
+0x52c2 021347 branch l2cap_util_pdata_to_contw 
+:      021349 l2cap_get_signal_tx_payload:
+0x52c3 021350 fetch 2 ,mem_l2cap_signal_tx_payload_ptr 
+0x52c4 021351 branch l2cap_util_pdata_to_contw 
+:      021354 l2cap_malloc_sdp_channel:
+0x52c5 021355 bpatchx patch25_5 ,mem_patch25 
+0x52c6 021356 arg sdp_malloc_size ,rega 
+0x52c7 021357 call l2cap_malloc 
+0x52c8 021358 store 2 ,mem_sdp_tx_buff_ptr 
+0x52c9 021359 increase 4 ,pdata 
+0x52ca 021360 store 2 ,mem_sdp_tx_payload_ptr 
+0x52cb 021361 setarg 0 
+0x52cc 021362 store 2 ,mem_sdp_tx_pkt_length 
+0x52cd 021363 rtn 
+:      021365 l2cap_get_sdp_tx_buff:
+0x52ce 021366 fetch 2 ,mem_sdp_tx_buff_ptr 
+0x52cf 021367 branch l2cap_util_pdata_to_contw 
+:      021369 l2cap_get_sdp_tx_payload:
+0x52d0 021370 fetch 2 ,mem_sdp_tx_payload_ptr 
+0x52d1 021371 branch l2cap_util_pdata_to_contw 
+:      021374 l2cap_malloc_rfcomm_channel:
+0x52d2 021375 bpatchx patch25_6 ,mem_patch25 
+0x52d3 021376 call push_stack 
+0x52d4 021377 jam rfcomm_malloc_fail ,mem_rfcomm_malloc_fail_flag 
+0x52d5 021378 call l2cap_malloc_is_fifo_full 
+0x52d6 021379 nrtn blank 
+0x52d7 021380 arg rfcomm_malloc_size ,rega 
+0x52d8 021381 call l2cap_malloc 
+0x52d9 021382 store 2 ,mem_rfcomm_tx_buff_ptr 
+0x52da 021383 increase 4 ,pdata 
+0x52db 021384 store 2 ,mem_rfcomm_tx_payload_ptr 
+0x52dc 021385 setarg 0 
+0x52dd 021386 store 2 ,mem_rfcomm_tx_pkt_length 
+0x52de 021387 jam rfcomm_malloc_succeed ,mem_rfcomm_malloc_fail_flag 
+0x52df 021388 branch pop_stack 
+:      021390 l2cap_get_rfcomm_tx_buff:
+0x52e0 021391 fetch 2 ,mem_rfcomm_tx_buff_ptr 
+0x52e1 021392 branch l2cap_util_pdata_to_contw 
+:      021394 l2cap_util_pdata_to_contw:
+0x52e2 021395 branch assert ,blank 
+0x52e3 021396 copy pdata ,contw 
+0x52e4 021397 rtn 
+:      021400 l2cap_lpm_save_calc_len:
+0x52e5 021401 bpatchx patch25_7 ,mem_patch25 
+0x52e6 021402 arg 0 ,regb 
+0x52e7 021403 arg mem_tx_fifo0_map ,rega 
+0x52e8 021404 increase -2 ,rega 
+:      021405 l2cap_lpm_save_calc_len_loop:
+0x52e9 021406 increase 2 ,rega 
+0x52ea 021407 setarg mem_tx_fifo_end 
+0x52eb 021408 isub rega ,null 
+0x52ec 021409 branch l2cap_lpm_save_calc_len_end ,zero 
+0x52ed 021410 ifetch 1 ,rega 
+0x52ee 021411 increase 1 ,rega 
+0x52ef 021412 branch l2cap_lpm_save_calc_len_loop ,blank 
+0x52f0 021413 ifetcht 2 ,rega 
+0x52f1 021414 ifetch 2 ,temp 
+0x52f2 021415 iadd regb ,regb 
+0x52f3 021416 increase 4 ,regb 
+0x52f4 021417 branch l2cap_lpm_save_calc_len_loop 
+:      021418 l2cap_lpm_save_calc_len_end:
+0x52f5 021419 copy regb ,pdata 
+0x52f6 021420 rtn 
+:      021423 l2cap_lpm_get_wake_lock:
+0x52f7 021424 arg wake_lock_l2cap_tx ,queue 
+0x52f8 021425 branch lpm_get_wake_lock 
+:      021427 l2cap_lpm_put_wake_lock:
+0x52f9 021428 arg wake_lock_l2cap_tx ,queue 
+0x52fa 021429 branch lpm_put_wake_lock 
+:      021431 l2cap_lpm_save_txbuf:
+0x52fb 021432 bpatchx patch26_0 ,mem_patch26 
+0x52fc 021433 call l2cap_malloc_get_full_map 
+0x52fd 021434 fetch 1 ,mem_used_map 
+0x52fe 021435 rtn blank 
+0x52ff 021436 call l2cap_lpm_save_calc_len 
+0x5300 021437 arg l2cap_lpm_txbuf_len ,temp 
+0x5301 021438 isub temp ,null 
+0x5302 021439 branch l2cap_lpm_get_wake_lock ,positive 
+0x5303 021440 call l2cap_lpm_put_wake_lock 
+0x5304 021441 arg mem_l2cap_lpm_txbuf ,contw 
+0x5305 021442 arg mem_tx_fifo0 ,rega 
+:      021443 l2cap_lpm_save_txbuf_loop:
+0x5306 021444 setarg mem_tx_fifo_end 
+0x5307 021445 isub rega ,null 
+0x5308 021446 rtn zero 
+0x5309 021447 ifetch 1 ,rega 
+0x530a 021448 increase 1 ,rega 
+0x530b 021449 nbranch l2cap_lpm_save_txbuf_nempty ,blank 
+0x530c 021450 istore 2 ,contw 
+0x530d 021451 increase 2 ,rega 
+0x530e 021452 branch l2cap_lpm_save_txbuf_loop 
+:      021453 l2cap_lpm_save_txbuf_nempty:
+0x530f 021454 ifetch 2 ,rega 
+0x5310 021455 increase 2 ,rega 
+0x5311 021456 copy pdata ,contr 
+0x5312 021457 ifetch 2 ,contr 
+0x5313 021458 istore 2 ,contw 
+0x5314 021459 copy pdata ,loopcnt 
+0x5315 021460 increase 2 ,loopcnt 
+0x5316 021461 call memcpy 
+0x5317 021462 branch l2cap_lpm_save_txbuf_loop 
+:      021464 l2cap_lpm_load_txbuf:
+0x5318 021465 bpatchx patch26_1 ,mem_patch26 
+0x5319 021466 call l2cap_malloc_get_full_map 
+0x531a 021467 fetch 1 ,mem_used_map 
+0x531b 021468 rtn blank 
+0x531c 021469 arg mem_tx_fifo0_ptr ,rega 
+0x531d 021470 increase -3 ,rega 
+0x531e 021471 arg mem_l2cap_lpm_txbuf ,contr 
+:      021472 l2cap_lpm_load_txbuf_loop:
+0x531f 021473 increase 3 ,rega 
+0x5320 021474 setarg mem_tx_fifo_end + 1 
+0x5321 021475 isub rega ,null 
+0x5322 021476 rtn zero 
+0x5323 021477 ifetch 2 ,contr 
+0x5324 021478 branch l2cap_lpm_load_txbuf_loop ,blank 
+0x5325 021479 increase 4 ,pdata 
+0x5326 021480 copy pdata ,loopcnt 
+0x5327 021481 copy contr ,regb 
+0x5328 021482 ifetch 2 ,rega 
+0x5329 021483 copy pdata ,contw 
+0x532a 021484 copy regb ,contr 
+0x532b 021485 increase -2 ,contr 
+0x532c 021486 call memcpy 
+0x532d 021487 branch l2cap_lpm_load_txbuf_loop 
+:      021497 le_init_conn:
+0x532e 021498 bpatchx patch26_2 ,mem_patch26 
+0x532f 021499 disable wake 
+0x5330 021500 jam 1 ,mem_le_conn_handle 
+0x5331 021501 jam 3 ,mem_le_state 
+0x5332 021502 jam 1 ,mem_le_arq 
+0x5333 021503 setarg -1 
+0x5334 021504 store 2 ,mem_le_event_count 
+0x5335 021505 force 0 ,pdata 
+0x5336 021506 store 1 ,mem_le_ch 
+0x5337 021507 store 1 ,mem_le_op 
+0x5338 021508 store 3 ,mem_sniff_rcv 
+0x5339 021509 store 3 ,mem_sniff_lost 
+0x533a 021510 store 5 ,mem_le_pcnt_tx 
+0x533b 021511 set1 39 ,pdata 
+0x533c 021512 store 5 ,mem_le_pcnt_rx 
+0x533d 021513 jam 1 ,mem_le_txheader 
+0x533e 021514 jam 0 ,mem_le_txlen 
+0x533f 021515 branch le_supervision_flush 
+:      021517 le_init_master:
+0x5340 021518 bpatchx patch26_3 ,mem_patch26 
+0x5341 021519 enable master 
+0x5342 021520 jam lemode_master ,mem_le_mode 
+0x5343 021521 jam 1 ,mem_le_att_handle 
+0x5344 021522 jam 1 ,mem_le_search_handle_start 
+0x5345 021523 setarg 0xffff 
+0x5346 021524 store 2 ,mem_le_search_handle_end 
+0x5347 021525 force 0 ,pdata 
+0x5348 021526 store 5 ,mem_le_pcnt_rx 
+0x5349 021527 set1 39 ,pdata 
+0x534a 021528 store 5 ,mem_le_pcnt_tx 
+0x534b 021529 branch le_init_conn 
+:      021532 le_init_slave:
+0x534c 021533 bpatchx patch26_4 ,mem_patch26 
+0x534d 021534 disable master 
+0x534e 021535 setarg 0x17 
+0x534f 021536 store 2 ,mem_le_remote_mtu 
+0x5350 021537 jam lemode_slave ,mem_le_mode 
+0x5351 021538 jam 0 ,mem_le_adv_enable 
+0x5352 021539 jam 0 ,mem_lpm_current_mult 
+0x5353 021540 jam flag_le_pairing_null ,mem_le_pairing_state 
+0x5354 021541 jam flag_le_enc_null ,mem_le_enc_state 
+0x5355 021542 fetch 2 ,mem_le_superto 
+0x5356 021543 store 2 ,mem_le_init_superto 
+0x5357 021544 fetch 2 ,mem_le_tsniff 
+0x5358 021545 mul32 pdata ,5 ,pdata 
+0x5359 021546 rshift4 pdata ,pdata 
+0x535a 021547 store 2 ,mem_le_superto 
+0x535b 021548 branch le_init_conn 
+:      021554 le_dispatch:
+0x535c 021555 call le_enable 
+0x535d 021556 call le_scan 
+0x535e 021557 call le_adv 
+0x535f 021558 branch le_disable 
+:      021560 le_conn_dispatch:
+0x5360 021561 bpatchx patch26_5 ,mem_patch26 
+0x5361 021562 call le_enable 
+0x5362 021563 call app_process_ble 
+0x5363 021564 fetch 1 ,mem_le_mode 
+0x5364 021565 beq lemode_master ,le_master_dispatch 
+0x5365 021566 branch le_slave_dispatch 
+:      021572 le_master_dispatch:
+0x5366 021573 bpatchx patch26_6 ,mem_patch26 
+0x5367 021574 enable master 
+0x5368 021575 call le_supervision_update 
+0x5369 021576 branch le_master_disconn ,positive 
+0x536a 021577 call check_ble_disabled 
+0x536b 021578 call le_setup 
+0x536c 021579 call le_prepare_tx 
+0x536d 021580 disable match 
+0x536e 021581 call le_transmit_receive_sifs 
+0x536f 021582 nrtn match 
+0x5370 021583 bpatchx patch26_7 ,mem_patch26 
+0x5371 021584 fetch 1 ,mem_le_conn_rcv 
+0x5372 021585 increase 1 ,pdata 
+0x5373 021586 store 1 ,mem_le_conn_rcv 
+0x5374 021587 call le_acknowledge 
+0x5375 021588 disable master 
+0x5376 021589 rtn 
+:      021591 le_master_disconn:
+0x5377 021592 call le_disconnect 
+0x5378 021593 disable master 
+0x5379 021594 rtn 
+:      021599 le_slave_dispatch:
+0x537a 021600 bpatchx patch27_0 ,mem_patch27 
+0x537b 021601 jam 0 ,mem_le_md_count 
+0x537c 021602 call sp_calc_sequence_256 
+0x537d 021603 call le_secure_connect_sm 
+0x537e 021604 disable attempt 
+0x537f 021605 call le_supervision_update 
+0x5380 021606 branch le_slave_disconn ,positive 
+0x5381 021607 call check_ble_disabled 
+0x5382 021608 call le_setup 
+0x5383 021609 call le_receive_slave 
+0x5384 021610 nbranch le_slave_unsync ,sync 
+0x5385 021611 call le_got_first_packet 
+0x5386 021612 branch le_slave_match ,match 
+0x5387 021613 branch le_slave_cont 
+:      021616 le_slave_match:
+0x5388 021617 bpatchx patch27_1 ,mem_patch27 
+0x5389 021618 fetch 1 ,mem_le_md_count 
+0x538a 021619 pincrease 1 
+0x538b 021620 store 1 ,mem_le_md_count 
+0x538c 021621 beq le_md_max_count ,le_slave_cont 
+0x538d 021622 call le_acknowledge 
+0x538e 021623 call le_prepare_tx 
+0x538f 021624 call le_transmit_norx 
+0x5390 021625 call le_parse 
+0x5391 021626 fetch 2 ,mem_cb_ble_transmit 
+0x5392 021627 call callback_func 
+0x5393 021628 call le_check_md 
+0x5394 021629 branch le_slave_more_data ,user 
+:      021630 le_slave_cont:
+0x5395 021631 bpatchx patch27_2 ,mem_patch27 
+0x5396 021632 call le_pairing_sm 
+0x5397 021633 call le_check_paring_time 
+0x5398 021634 call check_51cmd 
+0x5399 021635 fetch 1 ,mem_le_op 
+0x539a 021636 bbit1 op_disconn ,le_slave_disconn 
+:      021637 le_slave_unsync:
+0x539b 021638 bpatchx patch27_3 ,mem_patch27 
+0x539c 021639 call le_lpm_set_mult 
+0x539d 021640 call le_update_channel_map 
+0x539e 021641 call le_update_param 
+0x539f 021642 branch calc_clke_offset 
+:      021645 le_check_md:
+0x53a0 021646 disable user 
+0x53a1 021647 bmark1 mark_ble_rx_md ,enable_user 
+0x53a2 021648 bmark1 mark_ble_tx_md ,enable_user 
+0x53a3 021649 rtn 
+:      021652 le_slave_more_data:
+0x53a4 021653 bpatchx patch27_4 ,mem_patch27 
+0x53a5 021654 enable attempt 
+0x53a6 021655 call le_transmit_receive_sifs_notx 
+0x53a7 021656 branch le_slave_match ,match 
+0x53a8 021657 branch le_slave_cont 
+:      021659 le_slave_disconn:
+:      021662 le_disconnect:
+0x53a9 021663 bpatchx patch27_5 ,mem_patch27 
+0x53aa 021664 call le_clear_connection_info 
+0x53ab 021665 call app_disconn_reason_collect_ble 
+0x53ac 021666 call sp_initialize_256 
+0x53ad 021667 jam bt_evt_le_disconnected ,mem_fifo_temp 
+0x53ae 021668 branch ui_ipc_send_event 
+:      021670 le_clear_connection_info:
+0x53af 021671 setarg 0 
+0x53b0 021672 store 9 ,mem_le_tx_buff_used 
+0x53b1 021673 jam 0 ,mem_le_conn_handle 
+0x53b2 021674 jam lemode_idle ,mem_le_mode 
+0x53b3 021675 jam 0 ,mem_le_state 
+0x53b4 021676 jam flag_le_enc_null ,mem_le_enc_state 
+0x53b5 021677 jam flag_le_pairing_null ,mem_le_pairing_state 
+0x53b6 021678 rtn 
+:      021680 le_got_first_packet:
+0x53b7 021681 bpatchx patch27_6 ,mem_patch27 
+0x53b8 021682 fetch 1 ,mem_le_conn_rcv 
+0x53b9 021683 increase 1 ,pdata 
+0x53ba 021684 store 1 ,mem_le_conn_rcv 
+0x53bb 021685 fetch 1 ,mem_le_state 
+0x53bc 021686 rtnbit1 lestate_got_first_packet 
+0x53bd 021687 set1 lestate_got_first_packet 
+0x53be 021688 store 1 ,mem_le_state 
+0x53bf 021689 fetch 2 ,mem_le_init_superto 
+0x53c0 021690 store 2 ,mem_le_superto 
+0x53c1 021691 setarg 0 
+0x53c2 021692 store 4 ,mem_le_transmit_window 
+0x53c3 021693 rtn 
+:      021696 le_enable:
+0x53c4 021697 bpatchx patch27_7 ,mem_patch27 
+0x53c5 021698 jam 0x36 ,rf_adc_goff 
+0x53c6 021699 jam 0x5f ,rf_agc_nsat 
+0x53c7 021700 enable le 
+0x53c8 021701 jam 7 ,rfen_ulp 
+0x53c9 021702 call check_ble_disabled 
+0x53ca 021703 fetch 1 ,mem_250k_freq_enable 
+0x53cb 021704 rtn blank 
+0x53cc 021705 jam 0xb8 ,rf_iq_gain 
+0x53cd 021706 rtn 
+:      021708 le_disable:
+0x53ce 021709 bpatchx patch28_0 ,mem_patch28 
+0x53cf 021710 jam 0x2e ,rf_adc_goff 
+0x53d0 021711 jam 0xff ,rf_agc_nsat 
+0x53d1 021712 disable le 
+0x53d2 021713 jam 3 ,rfen_ulp 
+0x53d3 021714 arg 0 ,stop_watch 
+0x53d4 021715 rtn 
+:      021717 le_prep:
+0x53d5 021718 disable enable_crc 
+0x53d6 021719 disable enable_white 
+0x53d7 021720 fetch 3 ,mem_le_crcinit 
+0x53d8 021721 iforce crc24_init 
+0x53d9 021722 fetch 1 ,mem_le_ch_mapped 
+0x53da 021723 reverse pdata ,temp 
+0x53db 021724 set1 1 ,temp 
+0x53dc 021725 rshift temp ,white_init 
+0x53dd 021726 rtn 
+:      021729 lerx_setfreq:
+0x53de 021730 call le_setfreq 
+0x53df 021731 call set_freq_rx 
+0x53e0 021732 setarg param_pll_setup 
+0x53e1 021733 call sleep 
+0x53e2 021734 branch rf_rx_enable 
+:      021736 letx_setfreq:
+0x53e3 021737 branch txon ,match 
+:      021738 letx_setfreq0:
+0x53e4 021739 call le_setfreq 
+0x53e5 021740 branch set_freq_tx 
+:      021741 le_setfreq:
+0x53e6 021742 bpatchx patch28_1 ,mem_patch28 
+0x53e7 021743 call set_sync_on 
+0x53e8 021744 fetch 1 ,mem_le_testtype 
+0x53e9 021745 nbranch le_ctf_test ,blank 
+0x53ea 021746 fetch 1 ,mem_le_ch_mapped 
+0x53eb 021747 sub pdata ,36 ,null 
+0x53ec 021748 branch le_ctf_normal ,positive 
+0x53ed 021749 force 0 ,temp 
+0x53ee 021750 rtneq 37 
+0x53ef 021751 force 24 ,temp 
+0x53f0 021752 rtneq 38 
+0x53f1 021753 force 78 ,temp 
+0x53f2 021754 rtn 
+:      021756 le_ctf_normal:
+0x53f3 021757 sub pdata ,10 ,null 
+0x53f4 021758 branch le_ctf_low ,positive 
+0x53f5 021759 increase 1 ,pdata 
+:      021761 le_ctf_low:
+0x53f6 021762 lshift pdata ,pdata 
+0x53f7 021763 add pdata ,2 ,temp 
+0x53f8 021764 rtn 
+:      021766 le_ctf_test:
+0x53f9 021767 fetch 1 ,mem_le_ch_mapped 
+0x53fa 021768 lshift pdata ,temp 
+0x53fb 021769 rtn 
+:      021771 le_sca_map:
+0x53fc 021772 arg 500 ,temp 
+0x53fd 021773 rtn blank 
+0x53fe 021774 arg 250 ,temp 
+0x53ff 021775 rtneq 1 
+0x5400 021776 arg 150 ,temp 
+0x5401 021777 rtneq 2 
+0x5402 021778 arg 100 ,temp 
+0x5403 021779 rtneq 3 
+0x5404 021780 arg 75 ,temp 
+0x5405 021781 rtneq 4 
+0x5406 021782 arg 50 ,temp 
+0x5407 021783 rtneq 5 
+0x5408 021784 arg 40 ,temp 
+0x5409 021785 rtneq 6 
+0x540a 021786 arg 20 ,temp 
+0x540b 021787 rtn 
+:      021791 le_adv_access:
+0x540c 021792 setarg 0x8e89be 
+0x540d 021793 lshift8 pdata ,pdata 
+0x540e 021794 or_into 0xd6 ,pdata 
+0x540f 021795 iforce access 
+0x5410 021796 setarg 0x555555 
+0x5411 021797 store 3 ,mem_le_crcinit 
+0x5412 021798 rtn 
+:      021800 le_setup:
+0x5413 021801 bpatchx patch28_2 ,mem_patch28 
+0x5414 021802 enable swfine 
+0x5415 021803 fetch 4 ,mem_le_access 
+0x5416 021804 iforce access 
+0x5417 021805 call le_map_channel 
+0x5418 021806 setarg 0x200 
+0x5419 021807 branch le_setup_master ,master 
+0x541a 021808 fetch 2 ,mem_le_receive_window 
+0x541b 021809 rshift pdata ,pdata 
+:      021810 le_setup_master:
+0x541c 021811 arg param_pll_setup ,temp 
+0x541d 021812 iadd temp ,pdata 
+0x541e 021813 call ahead_window 
+0x541f 021814 deposit clke 
+0x5420 021815 store 6 ,mem_le_rxon_ts 
+0x5421 021816 rtn 
+:      021818 le_next_adv_channel:
+0x5422 021819 bpatchx patch28_3 ,mem_patch28 
+0x5423 021820 fetch 1 ,mem_le_ch_mapped 
+0x5424 021821 beq 37 ,le_next_adv_channel_curr_channel_37 
+0x5425 021822 beq 38 ,le_next_adv_channel_curr_channel_38 
+0x5426 021823 beq 39 ,le_next_adv_channel_curr_channel_39 
+0x5427 021824 branch le_next_adv_channel_curr_channel_39 
+:      021826 le_next_adv_channel_curr_channel_37:
+0x5428 021827 fetcht 1 ,mem_le_adv_channel_map 
+0x5429 021828 isolate1 bit_adv_channel_map_38 ,temp 
+0x542a 021829 branch set_le_next_adv_channel_38 ,true 
+0x542b 021830 isolate1 bit_adv_channel_map_39 ,temp 
+0x542c 021831 branch set_le_next_adv_channel_39 ,true 
+0x542d 021832 branch set_le_next_adv_channel_37 
+:      021835 le_next_adv_channel_curr_channel_38:
+0x542e 021836 fetcht 1 ,mem_le_adv_channel_map 
+0x542f 021837 isolate1 bit_adv_channel_map_39 ,temp 
+0x5430 021838 branch set_le_next_adv_channel_39 ,true 
+0x5431 021839 isolate1 bit_adv_channel_map_37 ,temp 
+0x5432 021840 branch set_le_next_adv_channel_37 ,true 
+0x5433 021841 branch set_le_next_adv_channel_38 
+:      021844 le_next_adv_channel_curr_channel_39:
+0x5434 021845 fetcht 1 ,mem_le_adv_channel_map 
+0x5435 021846 isolate1 bit_adv_channel_map_37 ,temp 
+0x5436 021847 branch set_le_next_adv_channel_37 ,true 
+0x5437 021848 isolate1 bit_adv_channel_map_38 ,temp 
+0x5438 021849 branch set_le_next_adv_channel_38 ,true 
+0x5439 021850 branch set_le_next_adv_channel_39 
+:      021854 set_le_next_adv_channel_37:
+0x543a 021855 jam 37 ,mem_le_ch_mapped 
+0x543b 021856 fetch 1 ,mem_le_adv_channel_map_temp 
+0x543c 021857 set1 bit_adv_channel_map_37 ,pdata 
+0x543d 021858 store 1 ,mem_le_adv_channel_map_temp 
+0x543e 021859 rtn 
+:      021861 set_le_next_adv_channel_38:
+0x543f 021862 jam 38 ,mem_le_ch_mapped 
+0x5440 021863 fetch 1 ,mem_le_adv_channel_map_temp 
+0x5441 021864 set1 bit_adv_channel_map_38 ,pdata 
+0x5442 021865 store 1 ,mem_le_adv_channel_map_temp 
+0x5443 021866 rtn 
+:      021868 set_le_next_adv_channel_39:
+0x5444 021869 jam 39 ,mem_le_ch_mapped 
+0x5445 021870 fetch 1 ,mem_le_adv_channel_map_temp 
+0x5446 021871 set1 bit_adv_channel_map_39 ,pdata 
+0x5447 021872 store 1 ,mem_le_adv_channel_map_temp 
+0x5448 021873 rtn 
+:      021877 le_context_nexthop:
+0x5449 021878 bpatchx patch28_4 ,mem_patch28 
+0x544a 021879 add rega ,coffset_mode ,contr 
+0x544b 021880 ifetch 1 ,contr 
+0x544c 021881 rtnbit0 mode_le 
+0x544d 021882 add rega ,coffset_le_event_cnt ,contw 
+0x544e 021883 ifetch 2 ,contw 
+0x544f 021884 increase 1 ,pdata 
+0x5450 021885 istore 2 ,contw 
+0x5451 021886 add rega ,coffset_le_hop ,contr 
+0x5452 021887 ifetch 1 ,contr 
+0x5453 021888 add rega ,coffset_le_ch ,contw 
+0x5454 021889 ifetcht 1 ,contw 
+0x5455 021890 iadd temp ,pdata 
+0x5456 021891 sub pdata ,36 ,null 
+0x5457 021892 branch le_nexthop_nowrap ,positive 
+0x5458 021893 increase -37 ,pdata 
+:      021894 le_nexthop_nowrap:
+0x5459 021895 istore 1 ,contw 
+0x545a 021896 rtn 
+:      021899 le_calc_channel_map:
+0x545b 021900 bpatchx patch28_5 ,mem_patch28 
+0x545c 021901 fetch 5 ,mem_le_channel_map 
+0x545d 021902 force 0 ,temp 
+0x545e 021903 force 37 ,loopcnt 
+:      021904 le_count_channels_loop:
+0x545f 021905 bbit0 0 ,le_count_channels_notused 
+0x5460 021906 increase 1 ,temp 
+:      021907 le_count_channels_notused:
+0x5461 021908 rshift pdata ,pdata 
+0x5462 021909 loop le_count_channels_loop 
+0x5463 021910 add temp ,-1 ,pdata 
+0x5464 021911 store 1 ,mem_le_channels 
+0x5465 021912 rtn 
+:      021914 le_map_channel:
+0x5466 021915 bpatchx patch28_6 ,mem_patch28 
+0x5467 021916 fetch 1 ,mem_le_ch 
+0x5468 021917 iforce queue 
+0x5469 021918 fetcht 5 ,mem_le_channel_map 
+0x546a 021919 qisolate1 temp 
+0x546b 021920 branch le_map_channel_end ,true 
+:      021921 le_map_channel_next:
+0x546c 021922 bpatchx patch28_7 ,mem_patch28 
+0x546d 021923 fetch 1 ,mem_le_channels 
+0x546e 021924 isub queue ,pdata 
+0x546f 021925 branch le_map_channel_cont ,positive 
+0x5470 021926 sub pdata ,-1 ,queue 
+0x5471 021927 branch le_map_channel_next 
+:      021928 le_map_channel_cont:
+0x5472 021929 copy queue ,loopcnt 
+0x5473 021930 force 0 ,queue 
+:      021931 le_map_channel_loop:
+0x5474 021932 qisolate1 temp 
+0x5475 021933 branch le_map_channel_skip ,true 
+0x5476 021934 increase 1 ,loopcnt 
+:      021935 le_map_channel_skip:
+0x5477 021936 deposit loopcnt 
+0x5478 021937 branch le_map_channel_end ,blank 
+0x5479 021938 increase 1 ,queue 
+0x547a 021939 increase -1 ,loopcnt 
+0x547b 021940 branch le_map_channel_loop 
+:      021941 le_map_channel_end:
+0x547c 021942 deposit queue 
+0x547d 021943 store 1 ,mem_le_ch_mapped 
+0x547e 021944 rtn 
+:      021947 le_wait_tx:
+0x547f 021948 branch le_wait_master ,master 
+0x5480 021949 until null ,timeout 
+0x5481 021950 rtn 
+:      021952 le_wait_master:
+0x5482 021953 arg 0xea0 ,timeup 
+0x5483 021954 until clkn_rt ,meet 
+0x5484 021955 rtn 
+:      021957 le_receive_adv:
+0x5485 021958 disable swfine 
+0x5486 021959 fetch 2 ,mem_le_scan_window 
+0x5487 021960 copy pdata ,timeup 
+0x5488 021961 branch le_receive_packet 
+:      021964 le_receive_slave:
+0x5489 021965 bpatchx patch29_0 ,mem_patch29 
+0x548a 021966 enable swfine 
+0x548b 021967 fetch 2 ,mem_le_receive_window 
+0x548c 021968 fetcht 4 ,mem_le_transmit_window 
+0x548d 021969 iadd temp ,timeup 
+:      021970 le_receive_packet:
+0x548e 021971 call lerx_setfreq 
+:      021972 le_receive_rxon:
+0x548f 021973 bpatchx patch29_1 ,mem_patch29 
+0x5490 021974 call le_prep 
+0x5491 021975 disable match 
+0x5492 021976 enable decode_fec0 
+0x5493 021977 enable is_rx 
+0x5494 021978 disable is_tx 
+0x5495 021979 copy timeup ,stop_watch 
+0x5496 021980 correlate null ,timeout 
+0x5497 021981 branch le_receive_on_attempt ,attempt 
+0x5498 021982 copy clke ,temp 
+0x5499 021983 storet 6 ,mem_sync_clke 
+:      021984 le_receive_on_attempt:
+0x549a 021985 nbranch end_of_packet ,sync 
+0x549b 021986 branch le_receive_skip ,attempt 
+0x549c 021987 arg param_clke_cal_le ,clke_rt 
+0x549d 021988 copy bt_clk ,clke_bt 
+0x549e 021989 fetch 1 ,mem_le_state 
+0x549f 021990 bbit0 lestate_got_first_packet ,le_receive_skip 
+0x54a0 021991 call lpm_adjust_clk ,wake 
+:      021992 le_receive_skip:
+0x54a1 021993 bpatchx patch29_2 ,mem_patch29 
+0x54a2 021994 call save_rssi 
+0x54a3 021995 enable enable_white 
+0x54a4 021996 enable enable_crc 
+0x54a5 021997 parse demod ,bucket ,8 
+0x54a6 021998 rshift3 pwindow ,pdata 
+0x54a7 021999 store 1 ,mem_le_rxbuf 
+0x54a8 022000 parse demod ,bucket ,8 
+0x54a9 022001 rshift3 pwindow ,pdata 
+0x54aa 022002 istore 1 ,contw 
+0x54ab 022003 and pdata ,0x3f ,loopcnt 
+0x54ac 022004 branch lerx_nopayload ,zero 
+:      022006 lerx_loop:
+0x54ad 022007 parse demod ,bucket ,8 
+0x54ae 022008 rshift3 pwindow ,pdata 
+0x54af 022009 istore 1 ,contw 
+0x54b0 022010 loop lerx_loop 
+:      022012 lerx_nopayload:
+0x54b1 022013 bpatchx patch29_3 ,mem_patch29 
+0x54b2 022014 parse demod ,bucket ,24 
+0x54b3 022015 enable swfine 
+0x54b4 022016 arg param_sifs ,stop_watch 
+0x54b5 022017 rshift32 pdata ,pdata 
+0x54b6 022018 rshift16 pdata ,pdata 
+0x54b7 022019 istore 3 ,contw 
+0x54b8 022020 branch end_of_packet ,crc_failed 
+0x54b9 022021 enable match 
+0x54ba 022022 fetch 1 ,mem_last_freq 
+0x54bb 022023 add pdata ,0 ,rega 
+0x54bc 022024 call rf_write_freq 
+0x54bd 022025 disable decode_fec0 
+0x54be 022026 branch set_sync_on 
+:      022028 le_transmit_receive_sifs:
+0x54bf 022029 bpatchx patch29_4 ,mem_patch29 
+0x54c0 022030 call le_transmit 
+:      022031 le_transmit_receive_sifs_notx:
+0x54c1 022032 fetcht 1 ,mem_last_freq 
+0x54c2 022033 call set_freq_rx 
+0x54c3 022034 call rf_rx_enable 
+0x54c4 022035 enable swfine 
+0x54c5 022036 arg 5500 ,timeup 
+0x54c6 022037 branch le_receive_rxon 
+:      022039 le_transmit_norx:
+0x54c7 022040 call le_transmit 
+0x54c8 022041 branch end_of_packet 
+:      022043 le_transmit:
+0x54c9 022044 bpatchx patch29_5 ,mem_patch29 
+0x54ca 022045 call le_prep 
+0x54cb 022046 call letx_setfreq 
+0x54cc 022047 branch le_transmit0 
+:      022049 le_transmit0:
+0x54cd 022050 set1 txgfsk ,radio_ctrl 
+0x54ce 022051 enable encode_fec0 
+0x54cf 022052 enable is_tx 
+0x54d0 022053 disable is_rx 
+0x54d1 022054 call le_wait_tx 
+0x54d2 022055 rshift16 access ,pdata 
+0x54d3 022056 rshift8 pdata ,pdata 
+0x54d4 022057 rshift4 pdata ,pdata 
+0x54d5 022058 inject mod ,40 
+0x54d6 022059 enable enable_white 
+0x54d7 022060 enable enable_crc 
+0x54d8 022061 bpatchx patch29_6 ,mem_patch29 
+0x54d9 022062 fetch 1 ,mem_le_txheader 
+0x54da 022063 inject mod ,8 
+0x54db 022064 ifetch 1 ,contr 
+0x54dc 022065 and pdata ,0x3f ,loopcnt 
+0x54dd 022066 inject mod ,8 
+0x54de 022067 branch letr_nopayload ,zero 
+:      022068 letr_loop:
+0x54df 022069 ifetch 1 ,contr 
+0x54e0 022070 inject mod ,8 
+0x54e1 022071 loop letr_loop 
+:      022073 letr_nopayload:
+0x54e2 022074 enable enable_parity 
+0x54e3 022075 inject mod ,24 
+0x54e4 022076 disable enable_parity 
+0x54e5 022077 until null ,tx_clear 
+0x54e6 022078 nop 100 
+0x54e7 022079 disable encode_fec0 
+0x54e8 022080 rtn 
+:      022082 le_send_adv_ind:
+0x54e9 022083 bpatchx patch29_7 ,mem_patch29 
+0x54ea 022084 fetch 1 ,mem_le_adv_type 
+0x54eb 022085 beq adv_direct_ind ,le_send_adv_direct_ind 
+0x54ec 022086 fetch 1 ,mem_le_adv_own_addr_type 
+0x54ed 022087 lshift4 pdata ,pdata 
+0x54ee 022088 lshift2 pdata ,pdata 
+0x54ef 022089 store 1 ,mem_le_txheader 
+0x54f0 022090 fetcht 1 ,mem_le_adv_data_len 
+0x54f1 022091 add temp ,6 ,pdata 
+0x54f2 022092 store 1 ,mem_le_txlen 
+0x54f3 022093 fetch 6 ,mem_le_lap 
+0x54f4 022094 store 6 ,mem_le_txpayload 
+0x54f5 022095 copy temp ,loopcnt 
+0x54f6 022096 arg mem_le_adv_data ,contr 
+0x54f7 022097 call memcpy_fast 
+0x54f8 022098 branch le_send_adv_transmit 
+:      022099 le_send_adv_direct_ind:
+0x54f9 022100 fetch 1 ,mem_le_adv_direct_addr_type 
+0x54fa 022101 lshift4 pdata ,pdata 
+0x54fb 022102 lshift2 pdata ,pdata 
+0x54fc 022103 increase 1 ,pdata 
+0x54fd 022104 store 1 ,mem_le_txheader 
+0x54fe 022105 setarg 12 
+0x54ff 022106 store 1 ,mem_le_txlen 
+0x5500 022107 fetch 6 ,mem_le_lap 
+0x5501 022108 store 6 ,mem_le_txpayload 
+0x5502 022109 fetch 6 ,mem_hci_plap 
+0x5503 022110 istore 6 ,contw 
+:      022111 le_send_adv_transmit:
+0x5504 022112 bpatchx patch2a_0 ,mem_patch2a 
+0x5505 022113 fetch 1 ,mem_le_adv_transmit 
+0x5506 022114 increase 1 ,pdata 
+0x5507 022115 store 1 ,mem_le_adv_transmit 
+0x5508 022116 arg 1800 ,stop_watch 
+0x5509 022117 disable match 
+0x550a 022118 branch le_transmit_receive_sifs 
+:      022120 le_send_scan_request:
+0x550b 022121 bpatchx patch2a_1 ,mem_patch2a 
+0x550c 022122 fetch 1 ,mem_le_scan_type 
+0x550d 022123 rtnne le_scan_type_active 
+0x550e 022124 fetch 1 ,mem_le_adv_transmit 
+0x550f 022125 increase 1 ,pdata 
+0x5510 022126 store 1 ,mem_le_adv_transmit 
+0x5511 022127 arg 0x0c03 ,temp 
+0x5512 022128 fetch 1 ,mem_le_scan_own_addr_type 
+0x5513 022129 nsetflag blank ,le_sender_addr_bit ,temp 
+0x5514 022130 copy rega ,pdata 
+0x5515 022131 nsetflag blank ,le_receiver_addr_bit ,temp 
+0x5516 022132 storet 2 ,mem_le_txheader 
+0x5517 022133 fetch 6 ,mem_le_lap 
+0x5518 022134 istore 6 ,contw 
+0x5519 022135 fetch 6 ,mem_le_plap 
+0x551a 022136 istore 6 ,contw 
+0x551b 022137 branch le_transmit_receive_sifs 
+:      022140 le_send_scan_response:
+0x551c 022141 bpatchx patch2a_2 ,mem_patch2a 
+0x551d 022142 arg scan_rsp ,temp 
+0x551e 022143 fetch 1 ,mem_le_adv_own_addr_type 
+0x551f 022144 nsetflag blank ,le_sender_addr_bit ,temp 
+0x5520 022145 storet 1 ,mem_le_txheader 
+0x5521 022146 fetcht 1 ,mem_le_scan_data_len 
+0x5522 022147 add temp ,6 ,pdata 
+0x5523 022148 store 1 ,mem_le_txlen 
+0x5524 022149 fetch 6 ,mem_le_lap 
+0x5525 022150 store 6 ,mem_le_txpayload 
+0x5526 022151 arg mem_le_scan_data ,contr 
+0x5527 022152 copy temp ,loopcnt 
+0x5528 022153 call memcpy_fast 
+0x5529 022154 call le_transmit_norx 
+0x552a 022155 branch le_adv_not_match 
+:      022157 le_connect_request:
+0x552b 022158 bpatchx patch2a_3 ,mem_patch2a 
+0x552c 022159 force -1 ,pdata 
+0x552d 022160 setsect 2 ,1 
+0x552e 022161 store 5 ,mem_le_channel_map 
+0x552f 022162 call le_calc_channel_map 
+0x5530 022163 force 4 ,loopcnt 
+0x5531 022164 arg mem_le_access ,contw 
+0x5532 022165 call generate_random_loop 
+0x5533 022166 fetch 2 ,mem_le_timeout 
+0x5534 022167 store 2 ,mem_le_superto 
+:      022168 le_con_req_hop_retry:
+0x5535 022169 random pdata 
+0x5536 022170 and_into 0xf ,pdata 
+0x5537 022171 sub pdata ,4 ,null 
+0x5538 022172 branch le_con_req_hop_retry ,positive 
+0x5539 022173 store 1 ,mem_le_hop 
+0x553a 022174 store 1 ,mem_tmp1 
+0x553b 022175 bpatchx patch2a_4 ,mem_patch2a 
+0x553c 022176 fetcht 2 ,mem_le_conn_interval 
+0x553d 022177 storet 2 ,mem_le_tsniff 
+0x553e 022178 copy temp ,regc 
+0x553f 022179 add clkn_bt ,7 ,pdata 
+0x5540 022180 idiv regc 
+0x5541 022181 call wait_div_end 
+0x5542 022182 remainder rega 
+0x5543 022183 isub rega ,pdata 
+0x5544 022184 iadd regc ,pdata 
+0x5545 022185 fetcht 2 ,mem_le_dsniff 
+0x5546 022186 iadd temp ,pdata 
+0x5547 022187 store 4 ,mem_le_anchor 
+0x5548 022188 isub clkn_bt ,rega 
+0x5549 022189 increase -6 ,rega 
+0x554a 022190 arg 0x2205 ,regb 
+0x554b 022191 fetch 1 ,mem_le_conn_own_addr_type 
+0x554c 022192 nsetflag blank ,le_sender_addr_bit ,regb 
+0x554d 022193 fetch 1 ,mem_le_conn_peer_addr_type 
+0x554e 022194 nsetflag blank ,le_receiver_addr_bit ,regb 
+0x554f 022195 copy regb ,pdata 
+0x5550 022196 store 2 ,mem_le_txheader 
+0x5551 022197 fetch 6 ,mem_le_lap 
+0x5552 022198 istore 6 ,contw 
+0x5553 022199 fetch 6 ,mem_le_plap 
+0x5554 022200 istore 6 ,contw 
+0x5555 022201 fetch 4 ,mem_le_access 
+0x5556 022202 istore 4 ,contw 
+0x5557 022203 random pdata 
+0x5558 022204 istore 2 ,contw 
+0x5559 022205 random pdata 
+0x555a 022206 istore 1 ,contw 
+0x555b 022207 force 2 ,pdata 
+0x555c 022208 istore 1 ,contw 
+0x555d 022209 rshift2 rega ,pdata 
+0x555e 022210 istore 2 ,contw 
+0x555f 022211 rshift2 regc ,pdata 
+0x5560 022212 istore 2 ,contw 
+0x5561 022213 bpatchx patch2a_5 ,mem_patch2a 
+0x5562 022214 setarg 0 
+0x5563 022215 istore 2 ,contw 
+0x5564 022216 fetch 2 ,mem_le_timeout 
+0x5565 022217 istore 2 ,contw 
+0x5566 022218 fetch 5 ,mem_le_channel_map 
+0x5567 022219 istore 5 ,contw 
+0x5568 022220 fetch 1 ,mem_le_hop 
+0x5569 022221 arg param_le_sca ,temp 
+0x556a 022222 ior temp ,pdata 
+0x556b 022223 istore 1 ,contw 
+0x556c 022224 call le_transmit_norx 
+0x556d 022225 setarg mem_le_txheader 
+0x556e 022226 add pdata ,18 ,contr 
+0x556f 022227 ifetch 3 ,contr 
+0x5570 022228 store 3 ,mem_le_crcinit 
+0x5571 022229 rtn 
+:      022231 le_init_adv:
+0x5572 022232 bpatchx patch2a_6 ,mem_patch2a 
+0x5573 022233 disable master 
+0x5574 022234 branch le_adv_access 
+:      022238 le_update_param:
+0x5575 022239 fetch 1 ,mem_le_state 
+0x5576 022240 rtnbit0 lestate_update_param 
+0x5577 022241 fetch 2 ,mem_le_event_count 
+0x5578 022242 fetcht 2 ,mem_le_instant 
+0x5579 022243 isub temp ,pdata 
+0x557a 022244 nrtn positive 
+0x557b 022245 store 2 ,mem_pdatatemp 
+0x557c 022246 bpatchx patch2a_7 ,mem_patch2a 
+0x557d 022247 fetch 1 ,mem_le_state 
+0x557e 022248 set0 lestate_update_param ,pdata 
+0x557f 022249 set0 lestate_got_first_packet ,pdata 
+0x5580 022250 store 1 ,mem_le_state 
+0x5581 022251 fetch 4 ,mem_le_anchor 
+0x5582 022252 fetcht 2 ,mem_le_tsniff 
+0x5583 022253 storet 2 ,mem_temp 
+0x5584 022254 isub temp ,rega 
+0x5585 022255 bpatchx patch2b_0 ,mem_patch2b 
+0x5586 022256 fetch 1 ,mem_le_new_param 
+0x5587 022257 store 1 ,mem_le_window_size 
+0x5588 022258 ifetcht 2 ,contr 
+0x5589 022259 ifetch 2 ,contr 
+0x558a 022260 lshift2 pdata ,pdata 
+0x558b 022261 store 2 ,mem_le_tsniff 
+0x558c 022262 lshift2 temp ,temp 
+0x558d 022263 iadd temp ,pdata 
+0x558e 022264 ifetcht 4 ,contr 
+0x558f 022265 storet 4 ,mem_le_slave_latency 
+0x5590 022266 iadd rega ,pdata 
+0x5591 022267 copy pdata ,regab 
+0x5592 022268 fetch 2 ,mem_le_tsniff 
+0x5593 022269 fetcht 2 ,mem_temp 
+0x5594 022270 isub temp ,pdata 
+0x5595 022271 fetcht 2 ,mem_pdatatemp 
+0x5596 022272 imul32 temp ,pdata 
+0x5597 022273 iadd regab ,pdata 
+0x5598 022274 store 4 ,mem_le_anchor 
+0x5599 022275 call le_receive_window_size 
+0x559a 022276 fetch 2 ,mem_le_superto 
+0x559b 022277 store 2 ,mem_le_init_superto 
+0x559c 022278 rtn 
+:      022281 le_update_channel_map:
+0x559d 022282 bpatchx patch2b_1 ,mem_patch2b 
+0x559e 022283 fetch 1 ,mem_le_state 
+0x559f 022284 rtnbit0 lestate_update_map 
+0x55a0 022285 fetch 2 ,mem_le_event_count 
+0x55a1 022286 fetcht 2 ,mem_le_instant 
+0x55a2 022287 isub temp ,pdata 
+0x55a3 022288 nrtn positive 
+0x55a4 022289 fetch 1 ,mem_le_state 
+0x55a5 022290 set0 lestate_update_map ,pdata 
+0x55a6 022291 store 1 ,mem_le_state 
+0x55a7 022292 fetch 5 ,mem_le_new_map 
+0x55a8 022293 store 5 ,mem_le_channel_map 
+0x55a9 022294 branch le_calc_channel_map 
+:      022297 le_acknowledge:
+0x55aa 022298 bpatchx patch2b_2 ,mem_patch2b 
+0x55ab 022299 call le_supervision_flush 
+0x55ac 022300 call le_check_wak 
+0x55ad 022301 fetch 1 ,mem_le_rxbuf 
+0x55ae 022302 isolate1 md ,pdata 
+0x55af 022303 setflag true ,mark_ble_rx_md ,mark 
+0x55b0 022304 rshift pdata ,pdata 
+0x55b1 022305 ixor temp ,pdata 
+0x55b2 022306 isolate1 nesn ,pdata 
+0x55b3 022307 setflag true ,mark_old_packet ,mark 
+0x55b4 022308 rtnmark1 mark_old_packet 
+0x55b5 022309 fetch 1 ,mem_le_rxbuf + 1 
+0x55b6 022310 branch le_ack_unenc ,blank 
+0x55b7 022311 fetch 1 ,mem_le_state 
+0x55b8 022312 bbit0 lestate_encryption ,le_ack_unenc 
+0x55b9 022313 call load_sk 
+0x55ba 022314 call le_decrypt 
+0x55bb 022315 nrtn blank 
+:      022316 le_ack_unenc:
+0x55bc 022317 fetcht 1 ,mem_le_arq 
+0x55bd 022318 setflip nesn ,temp 
+0x55be 022319 storet 1 ,mem_le_arq 
+0x55bf 022320 rtn 
+:      022323 le_check_wak:
+0x55c0 022324 bpatchx patch2b_3 ,mem_patch2b 
+0x55c1 022325 fetcht 1 ,mem_le_arq 
+0x55c2 022326 isolate0 wak ,temp 
+0x55c3 022327 rtn true 
+0x55c4 022328 fetch 1 ,mem_le_rxbuf 
+0x55c5 022329 lshift pdata ,pdata 
+0x55c6 022330 ixor temp ,pdata 
+0x55c7 022331 rtnbit0 sn 
+0x55c8 022332 set0 wak ,temp 
+0x55c9 022333 setflip sn ,temp 
+0x55ca 022334 storet 1 ,mem_le_arq 
+0x55cb 022335 compare 3 ,temp ,3 
+0x55cc 022336 nrtn true 
+0x55cd 022337 fetch 1 ,mem_le_txpayload 
+0x55ce 022338 beq ll_start_enc_req ,le_set_enc 
+0x55cf 022339 fetch 1 ,mem_le_enc_state 
+0x55d0 022340 beq flag_le_enc_pause ,le_clear_enc 
+0x55d1 022341 rtn 
+:      022344 le_set_enc:
+0x55d2 022345 fetch 1 ,mem_le_state 
+0x55d3 022346 set1 lestate_encryption ,pdata 
+0x55d4 022347 store 1 ,mem_le_state 
+0x55d5 022348 rtn 
+:      022350 le_clear_enc:
+0x55d6 022351 bpatchx patch2b_4 ,mem_patch2b 
+0x55d7 022352 jam flag_le_enc_null ,mem_le_enc_state 
+0x55d8 022353 arg 0 ,pdata 
+0x55d9 022354 store 4 ,mem_le_last_mic 
+0x55da 022355 store 5 ,mem_le_pcnt_tx 
+0x55db 022356 set1 39 ,pdata 
+0x55dc 022357 store 5 ,mem_le_pcnt_rx 
+0x55dd 022358 fetch 1 ,mem_le_state 
+0x55de 022359 set0 lestate_encryption ,pdata 
+0x55df 022360 store 1 ,mem_le_state 
+0x55e0 022361 rtn 
+:      022364 le_wait_adv:
+0x55e1 022365 bpatchx patch2b_5 ,mem_patch2b 
+0x55e2 022366 call le_next_adv_channel 
+0x55e3 022367 call le_receive_adv 
+0x55e4 022368 fetch 1 ,mem_le_adv_waitcnt 
+0x55e5 022369 increase 1 ,pdata 
+0x55e6 022370 store 1 ,mem_le_adv_waitcnt 
+0x55e7 022371 rtn 
+:      022374 le_scan:
+0x55e8 022375 bpatchx patch2b_6 ,mem_patch2b 
+0x55e9 022376 fetch 1 ,mem_le_scan_enable 
+0x55ea 022377 rtnne le_scan_enable 
+0x55eb 022378 arg le_scan_interval_timer ,queue 
+0x55ec 022379 call timer_check 
+0x55ed 022380 nrtn blank 
+0x55ee 022381 fetch 2 ,mem_le_scan_interval 
+0x55ef 022382 fetcht 2 ,mem_le_scan_window 
+0x55f0 022383 isub temp ,pdata 
+0x55f1 022384 arg le_scan_interval_timer ,queue 
+0x55f2 022385 call timer_init 
+0x55f3 022386 disable master 
+0x55f4 022387 call le_init_adv 
+0x55f5 022388 call le_wait_adv 
+0x55f6 022389 nrtn match 
+0x55f7 022390 bpatchx patch2b_7 ,mem_patch2b 
+0x55f8 022391 fetch 6 ,mem_le_rxbuf + 2 
+0x55f9 022392 store 6 ,mem_le_plap 
+0x55fa 022395 fetch 1 ,mem_le_adv_rcv 
+0x55fb 022396 increase 1 ,pdata 
+0x55fc 022397 store 1 ,mem_le_adv_rcv 
+0x55fd 022398 call le_create_conn 
+0x55fe 022399 rtn master 
+0x55ff 022400 call le_send_scan_request 
+0x5600 022401 nrtn match 
+0x5601 022402 bpatchx patch2c_0 ,mem_patch2c 
+0x5602 022403 fetch 1 ,mem_le_scanrsp_rcv 
+0x5603 022404 increase 1 ,pdata 
+0x5604 022405 store 1 ,mem_le_scanrsp_rcv 
+0x5605 022406 fetch 9 ,mem_le_rxbuf + 8 
+0x5606 022407 store 9 ,mem_tmp_buffer 
+0x5607 022408 rtn 
+:      022410 le_create_conn:
+0x5608 022411 bpatchx patch2c_1 ,mem_patch2c 
+0x5609 022412 fetch 1 ,mem_cmd_le_create_conn 
+0x560a 022413 rtnne hci_cmd_le_create_conn 
+0x560b 022414 fetch 6 ,mem_le_plap 
+0x560c 022415 fetcht 6 ,mem_le_conn_peer_addr 
+0x560d 022416 isub temp ,null 
+0x560e 022417 nrtn zero 
+0x560f 022418 call context_new 
+0x5610 022419 nrtn zero 
+0x5611 022420 call le_connect_request 
+0x5612 022421 call le_init_master 
+0x5613 022422 bpatchx patch2c_2 ,mem_patch2c 
+0x5614 022423 jam 0 ,mem_hci_cmd 
+0x5615 022424 jam 0 ,mem_le_peer_sca 
+0x5616 022425 jam 0 ,mem_le_scan_enable 
+0x5617 022426 jam 0 ,mem_cmd_le_create_conn 
+0x5618 022427 branch context_save 
+:      022429 le_scan_check_sender_addr_type:
+0x5619 022430 arg 1 ,rega 
+0x561a 022431 fetch 1 ,mem_le_rxbuf 
+0x561b 022432 rtnbit1 le_sender_addr_bit 
+0x561c 022433 arg 0 ,rega 
+0x561d 022434 rtn 
+:      022438 le_prepare_tx:
+0x561e 022439 bpatchx patch2c_3 ,mem_patch2c 
+0x561f 022440 fetch 1 ,mem_le_arq 
+0x5620 022441 rtnbit1 wak 
+0x5621 022442 call le_check_tx_md 
+0x5622 022443 call le_fifo_get_first_tx_ptr 
+0x5623 022444 branch le_send_empty ,blank 
+0x5624 022445 ifetch 1 ,contr 
+0x5625 022446 ifetcht 1 ,contr 
+0x5626 022447 copy temp ,rega 
+0x5627 022448 isub rega ,pdata 
+0x5628 022449 arg le_max_paket_len ,temp 
+0x5629 022450 call not_greater_than 
+0x562a 022451 copy pdata ,temp 
+0x562b 022452 ifetch 1 ,contr 
+0x562c 022453 copy pdata ,type 
+0x562d 022454 copy rega ,pdata 
+0x562e 022455 iadd contr ,contr 
+0x562f 022456 arg mem_le_txpayload ,contw 
+0x5630 022457 copy temp ,loopcnt 
+0x5631 022458 call memcpy 
+0x5632 022459 call le_update_tx_type 
+0x5633 022460 call le_send_packet 
+0x5634 022462 call le_fifo_get_first_tx_ptr 
+0x5635 022463 ifetch 1 ,contr 
+0x5636 022464 copy pdata ,rega 
+0x5637 022465 copy contr ,regc 
+0x5638 022466 ifetcht 1 ,contr 
+0x5639 022467 copy temp ,regb 
+0x563a 022468 isub regb ,pdata 
+0x563b 022469 arg le_max_paket_len ,temp 
+0x563c 022470 call not_greater_than 
+0x563d 022471 iadd regb ,pdata 
+0x563e 022472 istore 1 ,regc 
+0x563f 022473 isub rega ,null 
+0x5640 022474 nrtn zero 
+0x5641 022475 branch le_fifo_release_first_node 
+:      022478 le_check_tx_md:
+0x5642 022479 call le_check_continue 
+0x5643 022480 rtnmark1 mark_ble_tx_md 
+0x5644 022481 fetch 1 ,mem_le_configuration 
+0x5645 022482 bbit0 bit_ble_transmit_packet_by_md ,le_clear_md 
+0x5646 022483 call le_fifo_get_second_tx_ptr 
+0x5647 022484 branch le_clear_md ,blank 
+0x5648 022485 branch le_set_md 
+:      022488 le_check_continue:
+0x5649 022489 call le_fifo_get_first_tx_ptr 
+0x564a 022490 branch le_clear_md ,blank 
+0x564b 022491 ifetch 1 ,contr 
+0x564c 022492 ifetcht 1 ,contr 
+0x564d 022493 isub temp ,pdata 
+0x564e 022494 sub pdata ,le_max_paket_len ,null 
+0x564f 022495 branch le_clear_md ,positive 
+:      022496 le_set_md:
+0x5650 022497 set1 mark_ble_tx_md ,mark 
+0x5651 022498 rtn 
+:      022500 le_clear_md:
+0x5652 022501 set0 mark_ble_tx_md ,mark 
+0x5653 022502 rtn 
+:      022504 le_update_tx_type:
+0x5654 022505 copy rega ,pdata 
+0x5655 022506 rtn blank 
+0x5656 022507 arg llid_continue ,type 
+0x5657 022508 rtn 
+:      022511 le_att_check_notification_enable:
+0x5658 022512 bpatchx patch2c_4 ,mem_patch2c 
+0x5659 022513 increase 1 ,temp 
+0x565a 022514 call le_att_get_handle_ptr 
+0x565b 022515 increase -2 ,contr 
+0x565c 022516 ifetch 2 ,contr 
+0x565d 022517 arg client_charactertic_configuration ,temp 
+0x565e 022518 isub temp ,null 
+0x565f 022519 nrtn zero 
+0x5660 022520 increase 1 ,contr 
+0x5661 022521 copy contr ,rega 
+0x5662 022522 ifetch 1 ,contr 
+0x5663 022523 rtn 
+:      022526 le_send_empty:
+0x5664 022527 force 0 ,temp 
+0x5665 022528 force 1 ,type 
+:      022530 le_send_packet:
+0x5666 022531 bpatchx patch2c_5 ,mem_patch2c 
+0x5667 022532 storet 1 ,mem_le_txlen 
+0x5668 022533 fetcht 1 ,mem_le_arq 
+0x5669 022534 set1 wak ,temp 
+0x566a 022535 and temp ,0xfc ,pdata 
+0x566b 022536 ior type ,pdata 
+0x566c 022537 store 1 ,mem_le_arq 
+0x566d 022538 and_into 0x1f ,pdata 
+0x566e 022539 isolate1 mark_ble_tx_md ,mark 
+0x566f 022540 setflag true ,md ,pdata 
+0x5670 022541 store 1 ,mem_le_txheader 
+0x5671 022543 fetch 1 ,mem_le_txheader 
+0x5672 022544 compare 1 ,type ,3 
+0x5673 022545 nbranch le_send_no_txlen ,true 
+0x5674 022546 fetch 1 ,mem_le_txlen 
+0x5675 022547 rtn blank 
+:      022548 le_send_no_txlen:
+0x5676 022549 fetch 1 ,mem_le_state 
+0x5677 022550 rtnbit0 lestate_encryption 
+0x5678 022551 call load_sk 
+0x5679 022552 branch le_encrypt 
+:      022555 get_lpm_wake_ble_rx_lock:
+0x567a 022556 arg wake_lock_ble_rx ,queue 
+0x567b 022557 branch lpm_get_wake_lock 
+:      022559 put_lpm_wake_ble_rx_lock:
+0x567c 022560 arg wake_lock_ble_rx ,queue 
+0x567d 022561 branch lpm_put_wake_lock 
+:      022564 le_parse:
+0x567e 022565 bpatchx patch2c_6 ,mem_patch2c 
+0x567f 022566 rtnmark1 mark_old_packet 
+0x5680 022567 call le_fifo_check_full 
+0x5681 022568 nrtn blank 
+0x5682 022569 fetch 1 ,mem_le_rxbuf 
+0x5683 022570 and pdata ,0x3 ,pdata 
+0x5684 022571 store 1 ,mem_le_packet_llid 
+0x5685 022572 ifetch 1 ,contr 
+0x5686 022573 and pdata ,0x1f ,pdata 
+0x5687 022574 store 1 ,mem_le_packet_size 
+0x5688 022575 rtn blank 
+0x5689 022576 copy contr ,pdata 
+0x568a 022577 store 2 ,mem_le_payload_ptr 
+0x568b 022578 fetch 1 ,mem_le_packet_llid 
+0x568c 022579 beq llid_le_ll ,le_parse_ll 
+:      022580 le_parse_l2cap:
+0x568d 022581 call le_check_l2cap_complete 
+0x568e 022582 nbranch get_lpm_wake_ble_rx_lock ,user 
+0x568f 022583 call put_lpm_wake_ble_rx_lock 
+0x5690 022584 fetch 2 ,mem_le_payload_ptr 
+0x5691 022585 copy pdata ,contr 
+0x5692 022586 ifetch 2 ,contr 
+0x5693 022587 store 2 ,mem_le_l2cap_size 
+0x5694 022588 bpatchx patch2c_7 ,mem_patch2c 
+0x5695 022589 ifetch 2 ,contr 
+0x5696 022590 beq le_l2cap_cid_att ,le_parse_att 
+0x5697 022591 beq le_l2cap_cid_smp ,le_parse_smp 
+0x5698 022592 beq le_l2cap_cid_signal ,le_parse_signaling 
+0x5699 022593 rtn 
+:      022596 le_check_l2cap_complete:
+0x569a 022597 fetch 1 ,mem_le_packet_llid 
+0x569b 022598 beq llid_start ,le_check_l2cap_llid_start 
+0x569c 022599 beq llid_continue ,le_check_l2cap_llid_continue 
+0x569d 022600 rtn 
+:      022605 le_check_l2cap_cid_legal:
+0x569e 022606 call enable_user 
+0x569f 022607 arg le_l2cap_cid_att ,temp 
+0x56a0 022608 isub pdata ,null 
+0x56a1 022609 rtn zero 
+0x56a2 022610 arg le_l2cap_cid_signal ,temp 
+0x56a3 022611 isub pdata ,null 
+0x56a4 022612 rtn zero 
+0x56a5 022613 arg le_l2cap_cid_smp ,temp 
+0x56a6 022614 isub pdata ,null 
+0x56a7 022615 rtn zero 
+0x56a8 022616 branch disable_user 
+:      022619 le_check_l2cap_llid_start:
+0x56a9 022620 fetch 2 ,mem_le_payload_ptr 
+0x56aa 022621 copy pdata ,contr 
+0x56ab 022622 ifetch 2 ,contr 
+0x56ac 022623 store 2 ,mem_le_l2cap_size 
+0x56ad 022624 ifetch 2 ,contr 
+0x56ae 022625 call le_check_l2cap_cid_legal 
+0x56af 022626 nrtn user 
+0x56b0 022627 fetcht 1 ,mem_le_packet_size 
+0x56b1 022628 storet 1 ,mem_le_packet_len_recved 
+0x56b2 022629 fetch 2 ,mem_le_l2cap_size 
+0x56b3 022630 increase 4 ,pdata 
+0x56b4 022631 isub temp ,null 
+0x56b5 022632 branch enable_user ,zero 
+0x56b6 022633 fetch 1 ,mem_le_packet_size 
+0x56b7 022634 copy pdata ,loopcnt 
+0x56b8 022635 arg mem_le_l2capbuf ,contw 
+0x56b9 022636 fetch 2 ,mem_le_payload_ptr 
+0x56ba 022637 copy pdata ,contr 
+0x56bb 022638 call memcpy 
+0x56bc 022639 branch disable_user 
+:      022644 le_check_l2cap_continue_legal:
+0x56bd 022645 call enable_user 
+0x56be 022646 fetch 1 ,mem_le_packet_len_recved 
+0x56bf 022647 nrtn blank 
+0x56c0 022648 branch disable_user 
+:      022650 le_check_l2cap_llid_continue:
+0x56c1 022651 call le_check_l2cap_continue_legal 
+0x56c2 022652 nrtn user 
+0x56c3 022653 fetch 1 ,mem_le_packet_len_recved 
+0x56c4 022654 arg mem_le_l2capbuf ,contw 
+0x56c5 022655 iadd contw ,rega 
+0x56c6 022656 fetcht 1 ,mem_le_packet_size 
+0x56c7 022657 iadd temp ,pdata 
+0x56c8 022658 store 1 ,mem_le_packet_len_recved 
+0x56c9 022659 fetch 1 ,mem_le_packet_size 
+0x56ca 022660 copy pdata ,loopcnt 
+0x56cb 022661 copy rega ,contw 
+0x56cc 022662 fetch 2 ,mem_le_payload_ptr 
+0x56cd 022663 copy pdata ,contr 
+0x56ce 022664 call memcpy_fast 
+0x56cf 022665 setarg mem_le_l2capbuf 
+0x56d0 022666 store 2 ,mem_le_payload_ptr 
+0x56d1 022667 fetch 2 ,mem_le_l2cap_size 
+0x56d2 022668 increase 4 ,pdata 
+0x56d3 022669 fetcht 1 ,mem_le_packet_len_recved 
+0x56d4 022670 isub temp ,null 
+0x56d5 022671 branch enable_user ,zero 
+0x56d6 022672 branch disable_user 
+:      022678 le_get_search_att_type:
+0x56d7 022679 call store_contr 
+0x56d8 022680 arg mem_le_search_att_type_length ,contw 
+:      022681 le_get_search_common:
+0x56d9 022682 fetch 2 ,mem_le_l2cap_size 
+0x56da 022683 increase -5 ,pdata 
+:      022684 le_get_search_common2:
+0x56db 022685 istore 1 ,contw 
+0x56dc 022686 copy pdata ,loopcnt 
+0x56dd 022687 call get_contr 
+0x56de 022688 branch memcpy_fast 
+:      022690 le_get_search_att_uuid:
+0x56df 022691 call store_contr 
+0x56e0 022692 arg mem_le_search_uuid_length ,contw 
+0x56e1 022693 branch le_get_search_common 
+:      022697 le_writeatt_cb:
+0x56e2 022698 fetch 2 ,mem_cb_att_write 
+0x56e3 022699 branch callback_func 
+:      022701 le_supervision_update:
+0x56e4 022702 fetcht 4 ,mem_le_supervision_timer 
+0x56e5 022703 call get_clkbt 
+0x56e6 022704 isub temp ,timeup 
+0x56e7 022705 deposit timeup 
+0x56e8 022706 fetcht 2 ,mem_le_superto 
+0x56e9 022707 lshift4 temp ,temp 
+0x56ea 022708 lshift temp ,temp 
+0x56eb 022709 isub temp ,pdata 
+0x56ec 022710 rtn 
+:      022712 le_supervision_flush:
+0x56ed 022713 call get_clkbt 
+0x56ee 022714 store 4 ,mem_le_supervision_timer 
+0x56ef 022715 rtn 
+:      022718 le_adv:
+0x56f0 022719 jam 36 ,mem_le_ch_mapped 
+0x56f1 022720 jam 0 ,mem_le_adv_channel_map_temp 
+:      022721 le_adv_loop:
+0x56f2 022722 bpatchx patch2d_0 ,mem_patch2d 
+0x56f3 022723 fetch 1 ,mem_le_adv_enable 
+0x56f4 022724 rtn blank 
+0x56f5 022725 arg le_adv_interval_timer ,queue 
+0x56f6 022726 call timer_check 
+0x56f7 022727 nrtn blank 
+0x56f8 022728 bpatchx patch2d_1 ,mem_patch2d 
+:      022729 le_adv_loop_tx:
+0x56f9 022730 disable master 
+0x56fa 022731 enable swfine 
+0x56fb 022732 call le_init_adv 
+0x56fc 022733 call le_next_adv_channel 
+0x56fd 022734 call le_send_adv_ind 
+0x56fe 022735 nbranch le_adv_not_match ,match 
+0x56ff 022736 fetch 1 ,mem_le_req_rcv 
+0x5700 022737 increase 1 ,pdata 
+0x5701 022738 store 1 ,mem_le_req_rcv 
+0x5702 022739 fetch 1 ,mem_le_rxbuf 
+0x5703 022740 and pdata ,0x0f ,pdata 
+0x5704 022741 beq scan_req ,le_send_scan_response 
+0x5705 022742 beq connect_req ,le_parse_connect_req 
+:      022743 le_adv_not_match:
+0x5706 022744 bpatchx patch2d_2 ,mem_patch2d 
+0x5707 022745 random pdata 
+0x5708 022746 arg 0x1ff ,temp 
+0x5709 022747 iand temp ,pdata 
+0x570a 022748 add pdata ,250 ,pdata 
+0x570b 022749 call delay 
+0x570c 022750 fetch 1 ,mem_le_adv_channel_map_temp 
+0x570d 022751 fetcht 1 ,mem_le_adv_channel_map 
+0x570e 022752 isub temp ,null 
+0x570f 022753 nbranch le_adv_loop ,zero 
+0x5710 022754 arg le_adv_interval_timer ,queue 
+0x5711 022755 fetch 2 ,mem_le_adv_interval 
+0x5712 022756 branch timer_init 
+:      022759 le_receive_window_size:
+0x5713 022760 bpatchx patch2d_3 ,mem_patch2d 
+0x5714 022761 fetch 1 ,mem_le_peer_sca 
+0x5715 022762 call le_sca_map 
+0x5716 022763 fetch 2 ,mem_le_tsniff 
+0x5717 022764 imul32 temp ,pdata 
+0x5718 022765 arg 375 ,temp 
+0x5719 022766 imul32 temp ,pdata 
+0x571a 022767 arg 100000 ,temp 
+0x571b 022768 idiv temp 
+0x571c 022769 fetch 1 ,mem_le_window_size 
+0x571d 022770 arg 20000 ,temp 
+0x571e 022771 imul32 temp ,pdata 
+0x571f 022772 iadd temp ,pdata 
+0x5720 022773 store 4 ,mem_le_transmit_window 
+0x5721 022774 bpatchx patch2d_4 ,mem_patch2d 
+0x5722 022775 fetch 2 ,mem_rx_window_sniff 
+0x5723 022776 call wait_div_end 
+0x5724 022777 quotient temp 
+0x5725 022778 iadd temp ,pdata 
+0x5726 022779 store 2 ,mem_le_receive_window 
+0x5727 022780 rtn 
+:      022782 le_parse_connect_req:
+0x5728 022783 bpatchx patch2d_5 ,mem_patch2d 
+0x5729 022784 fetch 6 ,mem_le_rxbuf + 8 
+0x572a 022785 fetcht 6 ,mem_le_lap 
+0x572b 022786 isub temp ,null 
+0x572c 022787 nrtn zero 
+0x572d 022788 call le_scan_check_sender_addr_type 
+0x572e 022789 copy rega ,pdata 
+0x572f 022790 store 1 ,mem_le_conn_peer_addr_type 
+0x5730 022791 fetch 7 ,mem_le_rxbuf + 21 
+0x5731 022792 store 7 ,mem_tmp_buffer 
+0x5732 022793 ifetch 8 ,contr 
+0x5733 022794 istore 8 ,contw 
+0x5734 022795 fetch 6 ,mem_le_rxbuf + 2 
+0x5735 022796 store 6 ,mem_le_plap 
+0x5736 022797 increase 6 ,contr 
+0x5737 022798 ifetch 8 ,contr 
+0x5738 022799 store 8 ,mem_le_access 
+0x5739 022800 ifetcht 2 ,contr 
+0x573a 022801 bpatchx patch2d_6 ,mem_patch2d 
+0x573b 022802 lshift2 temp ,temp 
+0x573c 022803 ifetch 2 ,contr 
+0x573d 022804 lshift2 pdata ,pdata 
+0x573e 022805 store 2 ,mem_le_tsniff 
+0x573f 022806 store 4 ,mem_le_anchor 
+0x5740 022807 isub temp ,pdata 
+0x5741 022808 add pdata ,-2 ,clke_bt 
+0x5742 022809 ifetch 9 ,contr 
+0x5743 022810 store 9 ,mem_le_slave_latency 
+0x5744 022811 bpatchx patch2d_7 ,mem_patch2d 
+0x5745 022812 ifetch 1 ,contr 
+0x5746 022813 rshift4 pdata ,temp 
+0x5747 022814 rshift temp ,temp 
+0x5748 022815 storet 1 ,mem_le_peer_sca 
+0x5749 022816 and_into 0x1f ,pdata 
+0x574a 022817 store 1 ,mem_le_hop 
+0x574b 022818 call le_receive_window_size 
+0x574c 022819 call le_calc_channel_map 
+0x574d 022820 call le_init_slave 
+0x574e 022821 call context_new 
+0x574f 022822 nrtn zero 
+0x5750 022823 bpatchx patch2e_0 ,mem_patch2e 
+0x5751 022824 call calc_clke_offset 
+0x5752 022825 call le_l2cap_reset_signaling_identifier 
+0x5753 022826 jam bt_evt_le_connected ,mem_fifo_temp 
+0x5754 022827 call ui_ipc_send_event 
+0x5755 022828 branch context_save 
+:      022831 le_init_attlist_search:
+0x5756 022832 bpatchx patch2e_1 ,mem_patch2e 
+0x5757 022833 fetch 2 ,mem_le_search_handle_start 
+0x5758 022834 iforce regb 
+0x5759 022835 fetch 2 ,mem_le_search_handle_end 
+0x575a 022836 iforce regc 
+0x575b 022837 fetch 2 ,mem_ui_le_uuid_table 
+0x575c 022838 iforce contr 
+0x575d 022839 enable user 
+0x575e 022840 rtn 
+:      022843 le_att_handle_inrange:
+0x575f 022844 ifetch 2 ,contr 
+0x5760 022845 rtn blank 
+0x5761 022846 isub regb ,null 
+0x5762 022847 nrtn positive 
+0x5763 022848 isub regc ,null 
+0x5764 022849 rtn zero 
+0x5765 022850 branch le_att_handle_blank ,positive 
+0x5766 022851 force 1 ,null 
+0x5767 022852 rtn 
+:      022853 le_att_handle_blank:
+0x5768 022854 force 0 ,pdata 
+0x5769 022855 rtn 
+:      022859 le_att_get_handle_ptr:
+0x576a 022860 call le_att_get_handle_ptr2 
+0x576b 022861 branch le_att_get_handle_ptr_found ,zero 
+0x576c 022862 rtn 
+:      022864 le_att_get_handle_ptr2:
+0x576d 022865 bpatchx patch2e_2 ,mem_patch2e 
+0x576e 022866 fetch 2 ,mem_ui_le_uuid_table 
+0x576f 022867 iforce contr 
+:      022868 le_att_get_handle_loop1:
+0x5770 022869 ifetch 2 ,contr 
+0x5771 022870 rtn blank 
+0x5772 022871 isub temp ,null 
+0x5773 022872 rtn zero 
+0x5774 022873 ifetch 1 ,contr 
+0x5775 022874 iadd contr ,contr 
+0x5776 022875 ifetch 1 ,contr 
+0x5777 022876 iadd contr ,contr 
+0x5778 022877 branch le_att_get_handle_loop1 
+:      022878 le_att_get_handle_ptr_found:
+0x5779 022879 ifetch 1 ,contr 
+0x577a 022880 iadd contr ,contr 
+0x577b 022881 rtn 
+:      022885 le_att_get_short_uuid_ptr:
+0x577c 022886 bpatchx patch2e_3 ,mem_patch2e 
+0x577d 022887 fetch 2 ,mem_ui_le_uuid_table 
+0x577e 022888 iforce contr 
+:      022889 le_att_get_short_uuid_loop:
+0x577f 022890 ifetch 2 ,contr 
+0x5780 022891 rtn blank 
+0x5781 022892 ifetch 1 ,contr 
+0x5782 022893 iadd contr ,contr 
+0x5783 022894 increase -2 ,contr 
+0x5784 022895 ifetch 2 ,contr 
+0x5785 022896 isub temp ,null 
+0x5786 022897 rtn zero 
+0x5787 022898 ifetch 1 ,contr 
+0x5788 022899 iadd contr ,contr 
+0x5789 022900 branch le_att_get_short_uuid_loop 
+:      022904 le_att_get_handle_info_from_ptr:
+0x578a 022905 fetch 2 ,mem_le_cur_attlist_start_ptr 
+0x578b 022906 branch le_att_get_handle_info_fast 
+:      022908 le_att_get_handle_info:
+0x578c 022909 bpatchx patch2e_4 ,mem_patch2e 
+0x578d 022910 fetch 2 ,mem_ui_le_uuid_table 
+:      022911 le_att_get_handle_info_fast:
+0x578e 022912 iforce contr 
+0x578f 022913 copy temp ,rega 
+:      022914 le_att_get_handle_loop:
+0x5790 022915 ifetch 2 ,contr 
+0x5791 022916 branch le_att_unfind_handle ,blank 
+0x5792 022917 isub rega ,null 
+0x5793 022918 branch le_att_finded_handle ,zero 
+0x5794 022919 ifetch 1 ,contr 
+0x5795 022920 iadd contr ,contr 
+0x5796 022921 ifetch 1 ,contr 
+0x5797 022922 iadd contr ,contr 
+0x5798 022923 branch le_att_get_handle_loop 
+:      022924 le_att_unfind_handle:
+0x5799 022925 branch disable_blank 
+:      022927 le_att_finded_handle:
+0x579a 022928 ifetch 1 ,contr 
+0x579b 022929 store 1 ,mem_le_cur_uuid_length 
+0x579c 022930 copy pdata ,loopcnt 
+0x579d 022931 arg mem_le_cur_uuid ,contw 
+0x579e 022932 call memcpy_fast 
+0x579f 022933 ifetch 1 ,contr 
+0x57a0 022934 store 1 ,mem_le_curr_att_len 
+0x57a1 022935 call store_contr 
+0x57a2 022936 branch enable_blank 
+:      022939 le_modified_name:
+0x57a3 022940 bpatchx patch2e_5 ,mem_patch2e 
+0x57a4 022941 call le_modified_name_att_list 
+0x57a5 022942 branch le_modified_name_adv 
+:      022944 le_modified_name_att_list:
+0x57a6 022945 arg uuid_chrctr_device_name ,temp 
+0x57a7 022946 call le_att_get_short_uuid_ptr 
+0x57a8 022947 rtn blank 
+0x57a9 022948 ifetch 1 ,contr 
+0x57aa 022949 copy contr ,contw 
+0x57ab 022950 fetcht 1 ,mem_le_name_len 
+0x57ac 022951 copy temp ,loopcnt 
+0x57ad 022952 isub temp ,null 
+0x57ae 022953 nbranch le_name_length_longer_than_att ,positive 
+0x57af 022954 isub temp ,temp 
+0x57b0 022955 arg mem_le_name ,contr 
+0x57b1 022956 call memcpy 
+0x57b2 022957 copy temp ,loopcnt 
+0x57b3 022958 ncall memcpy_empty ,zero 
+0x57b4 022959 rtn 
+:      022960 le_name_length_longer_than_att:
+0x57b5 022961 copy pdata ,loopcnt 
+0x57b6 022962 arg mem_le_name ,contr 
+0x57b7 022963 branch memcpy_fast 
+:      022966 le_modified_name_adv:
+0x57b8 022967 arg mem_le_adv_data_len + 32 ,regc 
+0x57b9 022968 arg mem_le_adv_data ,rega 
+0x57ba 022969 call le_modified_name_adv_and_scan 
+0x57bb 022970 setarg 0 
+0x57bc 022971 setflag user ,0 ,pdata 
+0x57bd 022972 store 1 ,mem_pdatatemp 
+0x57be 022973 arg mem_le_scan_data_len + 32 ,regc 
+0x57bf 022974 arg mem_le_scan_data ,rega 
+0x57c0 022975 call le_modified_name_adv_and_scan 
+0x57c1 022976 rtn user 
+0x57c2 022977 fetch 1 ,mem_pdatatemp 
+0x57c3 022978 branch assert ,blank 
+0x57c4 022979 rtn 
+:      022982 le_modified_name_adv_and_scan:
+0x57c5 022983 bpatchx patch2e_6 ,mem_patch2e 
+0x57c6 022984 call enable_user 
+0x57c7 022985 call clear_temp_block 
+0x57c8 022986 arg 0 ,regb 
+0x57c9 022987 arg mem_le_data_temp ,contw 
+0x57ca 022988 call le_modified_name_adv_loop 
+0x57cb 022989 fetch 1 ,mem_le_name_len 
+0x57cc 022990 add pdata ,1 ,temp 
+0x57cd 022991 iadd regb ,rega 
+0x57ce 022992 increase 2 ,rega 
+0x57cf 022993 sub rega ,0x1f ,null 
+0x57d0 022994 nbranch le_modified_name_adv_and_scan_name_overflow ,positive 
+0x57d1 022995 istoret 1 ,contw 
+0x57d2 022996 arg gap_adtype_local_name_complete ,temp 
+0x57d3 022997 istoret 1 ,contw 
+0x57d4 022998 iforce loopcnt 
+0x57d5 022999 call memcpy_fast 
+0x57d6 023000 copy rega ,regb 
+:      023001 le_modified_name_adv_and_scan_store_data:
+0x57d7 023002 deposit regb 
+0x57d8 023003 store 1 ,mem_le_data_len_temp 
+0x57d9 023004 arg mem_le_data_len_temp ,contr 
+0x57da 023005 setarg -32 
+0x57db 023006 iadd regc ,contw 
+0x57dc 023007 branch memcpy32 
+:      023009 le_modified_name_adv_and_scan_name_overflow:
+0x57dd 023010 call disable_user 
+0x57de 023011 branch le_modified_name_adv_and_scan_store_data 
+:      023013 le_modified_name_adv_loop:
+0x57df 023014 ifetch 1 ,rega 
+0x57e0 023015 rtn blank 
+0x57e1 023016 pincrease 1 
+0x57e2 023017 ifetcht 1 ,contr 
+0x57e3 023018 sub temp ,gap_adtype_local_name_complete ,null 
+0x57e4 023019 branch le_modified_name_adv_found_name ,zero 
+0x57e5 023020 iadd regb ,regb 
+0x57e6 023021 copy rega ,contr 
+0x57e7 023022 iforce loopcnt 
+0x57e8 023023 call memcpy_fast 
+0x57e9 023024 copy contr ,rega 
+:      023025 le_modified_name_adv_loop2:
+0x57ea 023026 deposit rega 
+0x57eb 023027 isub regc ,null 
+0x57ec 023028 rtn positive 
+0x57ed 023029 branch le_modified_name_adv_loop 
+:      023031 le_modified_name_adv_found_name:
+0x57ee 023032 iadd rega ,rega 
+0x57ef 023033 branch le_modified_name_adv_loop2 
+:      023036 memcpy_empty:
+0x57f0 023037 setarg space 
+0x57f1 023038 istore 1 ,contw 
+0x57f2 023039 loop memcpy_empty 
+0x57f3 023040 rtn 
+:      023043 le_lpm_set_mult:
+0x57f4 023044 bpatchx patch2e_7 ,mem_patch2e 
+0x57f5 023045 disable wake 
+0x57f6 023046 branch le_lpm_set_mult_attempt ,attempt 
+0x57f7 023047 nbranch le_lpm_lost ,match 
+:      023048 le_lpm_set_mult_attempt:
+0x57f8 023049 call lpm_match 
+0x57f9 023050 fetch 2 ,mem_rx_window_sniff 
+0x57fa 023051 store 2 ,mem_le_receive_window 
+0x57fb 023053 nbranch lpm_mult_short ,match 
+0x57fc 023054 bmark1 mark_old_packet ,lpm_mult_short 
+0x57fd 023056 fetch 1 ,mem_le_packet_size 
+0x57fe 023057 nbranch lpm_mult_short ,blank 
+0x57ff 023058 fetch 1 ,mem_le_txlen 
+0x5800 023059 nbranch lpm_mult_short ,blank 
+0x5801 023061 fetch 1 ,mem_le_configuration 
+0x5802 023062 bbit1 bit_ble_short_mult ,lpm_mult_short 
+0x5803 023064 fetch 1 ,mem_le_state 
+0x5804 023065 bbit1 lestate_update_param ,lpm_mult_short 
+0x5805 023066 branch lpm_mult_wait_timeout 
+:      023068 le_lpm_lost:
+0x5806 023069 fetcht 2 ,mem_rx_window_sniff 
+0x5807 023070 rshift temp ,temp 
+0x5808 023071 fetch 2 ,mem_le_receive_window 
+0x5809 023072 iadd temp ,pdata 
+0x580a 023073 store 2 ,mem_le_receive_window 
+0x580b 023074 branch lpm_lost 
+:      023077 le_set_config_fixed_tk:
+0x580c 023078 arg bit_ble_passkey_fixed_key ,queue 
+0x580d 023079 branch le_set_config 
+:      023081 le_clr_config_fixed_tk:
+0x580e 023082 arg bit_ble_passkey_fixed_key ,queue 
+0x580f 023083 branch le_clr_config 
+:      023085 le_set_config_fixed_ltk:
+0x5810 023086 arg bit_ble_pairing_fixed_ltk ,queue 
+0x5811 023087 branch le_set_config 
+:      023089 le_clr_config_fixed_ltk:
+0x5812 023090 arg bit_ble_pairing_fixed_ltk ,queue 
+0x5813 023091 branch le_clr_config 
+:      023093 le_set_config_more_data:
+0x5814 023094 arg bit_ble_transmit_packet_by_md ,queue 
+0x5815 023095 branch le_set_config 
+:      023097 le_clr_config_more_data:
+0x5816 023098 arg bit_ble_transmit_packet_by_md ,queue 
+0x5817 023099 branch le_clr_config 
+:      023101 le_set_config_read_authentication:
+0x5818 023102 arg bit_ble_read_auth ,queue 
+0x5819 023103 branch le_set_config 
+:      023105 le_clr_config_read_authentication:
+0x581a 023106 arg bit_ble_read_auth ,queue 
+0x581b 023107 branch le_clr_config 
+:      023109 le_set_config_write_authentication:
+0x581c 023110 arg bit_ble_write_auth ,queue 
+0x581d 023111 branch le_set_config 
+:      023113 le_clr_config_write_authentication:
+0x581e 023114 arg bit_ble_write_auth ,queue 
+0x581f 023115 branch le_clr_config 
+:      023117 le_set_config_short_mult:
+0x5820 023118 arg bit_ble_short_mult ,queue 
+0x5821 023119 branch le_set_config 
+:      023121 le_clr_config_short_mult:
+0x5822 023122 arg bit_ble_short_mult ,queue 
+0x5823 023123 branch le_clr_config 
+:      023126 le_set_config:
+0x5824 023127 fetch 1 ,mem_le_configuration 
+0x5825 023128 qset1 pdata 
+0x5826 023129 store 1 ,mem_le_configuration 
+0x5827 023130 rtn 
+:      023132 le_clr_config:
+0x5828 023133 fetch 1 ,mem_le_configuration 
+0x5829 023134 qset0 pdata 
+0x582a 023135 store 1 ,mem_le_configuration 
+0x582b 023136 rtn 
+:      023138 le_set_fixed_ltk:
+0x582c 023139 setarg 0x112233 
+0x582d 023140 store 3 ,mem_le_fixed_ltk 
+0x582e 023141 setarg 0x445566 
+0x582f 023142 istore 3 ,contw 
+0x5830 023143 setarg 0x778899 
+0x5831 023144 istore 3 ,contw 
+0x5832 023145 setarg 0x001122 
+0x5833 023146 istore 3 ,contw 
+0x5834 023147 setarg 0x334455 
+0x5835 023148 istore 3 ,contw 
+0x5836 023149 setarg 0x66 
+0x5837 023150 istore 1 ,contw 
+0x5838 023151 rtn 
+:      023154 le_set_justwork:
+0x5839 023155 setarg 0x01000302 
+0x583a 023156 store 4 ,mem_le_pres 
+0x583b 023157 setarg 0x010010 
+0x583c 023158 store 3 ,mem_le_pres_max_keysize 
+0x583d 023159 jam 1 ,mem_le_pairing_mode 
+0x583e 023160 rtn 
+:      023164 le_fifo_malloc_tx_empty:
+0x583f 023165 arg 0 ,rega 
+0x5840 023166 arg llid_empty ,type 
+0x5841 023167 branch le_fifo_malloc_tx 
+:      023171 le_fifo_malloc_tx_ll:
+0x5842 023172 arg llid_le_ll ,type 
+0x5843 023173 call le_fifo_malloc_tx 
+0x5844 023174 copy regb ,pdata 
+0x5845 023175 istore 1 ,contw 
+0x5846 023176 rtn 
+:      023180 le_fifo_malloc_tx_l2cap:
+0x5847 023181 force llid_l2cap_start ,type 
+0x5848 023182 increase 4 ,rega 
+0x5849 023183 call le_fifo_malloc_tx 
+0x584a 023184 increase -4 ,rega 
+0x584b 023185 copy rega ,pdata 
+0x584c 023186 istore 2 ,contw 
+0x584d 023187 copy regb ,pdata 
+0x584e 023188 istore 2 ,contw 
+0x584f 023189 rtn 
+:      023193 le_fifo_malloc_tx:
+0x5850 023194 sub rega ,240 ,null 
+0x5851 023195 nbranch assert ,positive 
+0x5852 023196 fetch 1 ,mem_le_tx_buff_used 
+0x5853 023197 arg 1 ,temp 
+0x5854 023198 arg le_tx_buff_count ,loopcnt 
+:      023199 le_fifo_malloc_tx_loop:
+0x5855 023200 iand temp ,null 
+0x5856 023201 branch le_fifo_malloc_tx_got_empty ,zero 
+0x5857 023202 lshift temp ,temp 
+0x5858 023203 loop le_fifo_malloc_tx_loop 
+0x5859 023204 branch assert 
+:      023205 le_fifo_malloc_tx_got_empty:
+0x585a 023206 ixor temp ,pdata 
+0x585b 023207 store 1 ,mem_le_tx_buff_used 
+0x585c 023208 sub loopcnt ,le_tx_buff_count ,pdata 
+0x585d 023209 lshift4 pdata ,pdata 
+0x585e 023210 lshift4 pdata ,pdata 
+0x585f 023211 arg mem_le_tx_buffer0 ,temp 
+0x5860 023212 iadd temp ,temp 
+:      023213 le_fifo_tx_find_empty_ptr:
+0x5861 023214 arg 0 ,loopcnt 
+0x5862 023215 arg mem_le_tx_ptr0 ,contr 
+:      023216 le_fifo_tx_find_empty_ptr_loop:
+0x5863 023217 ifetch 2 ,contr 
+0x5864 023218 branch le_fifo_tx_found_empty_ptr ,blank 
+0x5865 023219 copy loopcnt ,pdata 
+0x5866 023220 increase 1 ,loopcnt 
+0x5867 023221 bne le_tx_buff_count ,le_fifo_tx_find_empty_ptr_loop 
+0x5868 023222 branch assert 
+:      023225 le_fifo_tx_found_empty_ptr:
+0x5869 023226 increase -2 ,contr 
+0x586a 023227 istoret 2 ,contr 
+0x586b 023228 copy temp ,contw 
+0x586c 023229 copy rega ,pdata 
+0x586d 023230 istore 1 ,contw 
+0x586e 023231 setarg 0 
+0x586f 023232 istore 1 ,contw 
+0x5870 023233 copy type ,pdata 
+0x5871 023234 istore 1 ,contw 
+0x5872 023235 rtn 
+:      023239 le_fifo_get_first_tx_ptr:
+0x5873 023240 fetch 2 ,mem_le_tx_ptr0 
+0x5874 023241 copy pdata ,contr 
+0x5875 023242 rtn 
+:      023244 le_fifo_get_second_tx_ptr:
+0x5876 023245 fetch 2 ,mem_le_tx_ptr1 
+0x5877 023246 copy pdata ,contr 
+0x5878 023247 rtn 
+:      023249 le_fifo_get_last_tx_ptr:
+0x5879 023250 call le_fifo_get_last_tx_ptr0 
+0x587a 023251 copy pdata ,contr 
+0x587b 023252 rtn 
+:      023253 le_fifo_get_last_tx_ptr0:
+0x587c 023254 fetch 2 ,mem_le_tx_ptr3 
+0x587d 023255 nrtn blank 
+0x587e 023256 fetch 2 ,mem_le_tx_ptr2 
+0x587f 023257 nrtn blank 
+0x5880 023258 fetch 2 ,mem_le_tx_ptr1 
+0x5881 023259 nrtn blank 
+0x5882 023260 fetch 2 ,mem_le_tx_ptr0 
+0x5883 023261 rtn 
+:      023263 le_fifo_get_first_l2cap_ptr:
+0x5884 023264 call le_fifo_get_first_tx_ptr 
+0x5885 023265 increase 3 ,contr 
+0x5886 023266 rtn 
+:      023268 le_fifo_get_first_att_ptr:
+0x5887 023269 call le_fifo_get_first_tx_ptr 
+0x5888 023270 increase 7 ,contr 
+0x5889 023271 rtn 
+:      023273 le_fifo_get_last_att_ptr:
+0x588a 023274 call le_fifo_get_last_tx_ptr 
+0x588b 023275 increase 7 ,contr 
+0x588c 023276 rtn 
+:      023278 le_fifo_get_last_l2cap_ptr:
+0x588d 023279 call le_fifo_get_last_tx_ptr 
+0x588e 023280 increase 3 ,contr 
+0x588f 023281 rtn 
+:      023285 le_fifo_check_full:
+0x5890 023286 fetch 2 ,mem_le_tx_ptr3 
+0x5891 023287 rtn 
+:      023290 le_fifo_check_nearly_full:
+0x5892 023291 fetch 2 ,mem_le_tx_ptr2 
+0x5893 023292 rtn 
+:      023295 le_fifo_check_empty:
+0x5894 023296 fetch 2 ,mem_le_tx_ptr0 
+0x5895 023297 rtn 
+:      023300 le_fifo_release_first_node:
+0x5896 023301 fetch 2 ,mem_le_tx_ptr0 
+0x5897 023302 arg mem_le_tx_buffer0 ,temp 
+0x5898 023303 isub temp ,pdata 
+0x5899 023304 rshift4 pdata ,pdata 
+0x589a 023305 rshift4 pdata ,queue 
+0x589b 023306 fetch 1 ,mem_le_tx_buff_used 
+0x589c 023307 qset0 pdata 
+0x589d 023308 store 1 ,mem_le_tx_buff_used 
+0x589e 023309 arg 0 ,loopcnt 
+:      023310 le_fifo_release_first_node_loop:
+0x589f 023311 lshift loopcnt ,pdata 
+0x58a0 023312 arg mem_le_tx_ptr1 ,temp 
+0x58a1 023313 iadd temp ,temp 
+0x58a2 023314 ifetch 2 ,temp 
+0x58a3 023315 increase -2 ,temp 
+0x58a4 023316 istore 2 ,temp 
+0x58a5 023317 copy loopcnt ,pdata 
+0x58a6 023318 increase 1 ,loopcnt 
+0x58a7 023319 bne le_tx_buff_update_loopcnt ,le_fifo_release_first_node_loop 
+0x58a8 023320 setarg 0 
+0x58a9 023321 istore 2 ,temp 
+0x58aa 023322 rtn 
+:      023328 le_parse_att:
+0x58ab 023329 ifetch 3 ,contr 
+0x58ac 023330 store 3 ,mem_le_att_opcode 
+0x58ad 023331 beq attop_exchange_mtu_request ,le_parse_att_exchange_mtu_request 
+0x58ae 023332 beq attop_exchange_mtu_response ,le_parse_att_exchange_mtu_response 
+0x58af 023333 beq attop_find_information_request ,le_parse_att_find_information_request 
+0x58b0 023334 beq attop_find_by_type_value_request ,le_parse_att_find_by_type_value_request 
+0x58b1 023335 beq attop_read_by_type_request ,le_parse_att_read_by_type_request 
+0x58b2 023336 beq attop_read_request ,le_parse_att_read_request 
+0x58b3 023337 beq attop_read_blob_request ,le_parse_att_read_blob_request 
+0x58b4 023338 beq attop_read_by_group_type_request ,le_parse_att_read_by_group_type_request 
+0x58b5 023339 beq attop_write_request ,le_parse_att_write_request 
+0x58b6 023340 beq attop_prepare_write_request ,le_parse_att_prepare_write_request 
+0x58b7 023341 beq attop_execute_write_request ,le_parse_att_execute_write_request 
+0x58b8 023342 beq attop_write_command ,le_parse_att_write_command 
+0x58b9 023343 rtn 
+:      023346 le_send_att_exchange_mtu_requset:
+0x58ba 023347 force 3 ,rega 
+0x58bb 023348 call le_fifo_malloc_tx_l2cap_gatt 
+0x58bc 023349 setarg attop_exchange_mtu_request 
+0x58bd 023350 istore 1 ,contw 
+0x58be 023351 fetch 2 ,mem_le_local_mtu 
+0x58bf 023352 istore 2 ,contw 
+0x58c0 023353 rtn 
+:      023356 le_parse_att_exchange_mtu_request:
+0x58c1 023357 call le_parse_att_exchange_mtu_response 
+:      023358 le_send_att_exchange_mtu_response:
+0x58c2 023359 force 3 ,rega 
+0x58c3 023360 call le_fifo_malloc_tx_l2cap_gatt 
+0x58c4 023361 setarg attop_exchange_mtu_response 
+0x58c5 023362 istore 1 ,contw 
+0x58c6 023363 fetch 2 ,mem_le_local_mtu 
+0x58c7 023364 istore 2 ,contw 
+0x58c8 023365 rtn 
+:      023367 le_parse_att_exchange_mtu_response:
+0x58c9 023368 rshift8 pdata ,pdata 
+0x58ca 023369 store 2 ,mem_le_remote_mtu 
+0x58cb 023370 rtn 
+:      023372 le_parse_att_find_information_request:
+0x58cc 023373 call le_get_search_handle_start_end_common 
+0x58cd 023374 call enable_user 
+0x58ce 023375 branch le_send_att_find_information_response 
+:      023377 le_send_att_find_information_response:
+0x58cf 023378 arg 3 ,timeup 
+0x58d0 023379 call le_init_attlist_search 
+:      023380 le_send_att_find_information_res_loop:
+0x58d1 023381 call le_att_handle_inrange 
+0x58d2 023382 branch le_send_att_find_information_res_end ,blank 
+0x58d3 023383 nbranch le_send_att_find_information_res_next ,positive 
+0x58d4 023384 increase -2 ,contr 
+0x58d5 023385 call store_contr 
+0x58d6 023386 call get_contw 
+0x58d7 023387 nbranch le_send_att_find_information_res_store_info ,user 
+0x58d8 023388 call push_stack_rega_b_c 
+0x58d9 023389 call disable_user 
+0x58da 023390 force 20 ,rega 
+0x58db 023391 call le_fifo_malloc_tx_l2cap_gatt 
+0x58dc 023392 call pop_stack_rega_b_c 
+0x58dd 023393 setarg attop_find_information_response 
+0x58de 023394 istore 1 ,contw 
+0x58df 023395 setarg uuid_size_16bit 
+0x58e0 023396 istore 1 ,contw 
+:      023397 le_send_att_find_information_res_store_info:
+0x58e1 023398 call get_contr 
+0x58e2 023399 ifetch 2 ,contr 
+0x58e3 023400 istore 2 ,contw 
+0x58e4 023401 ifetch 1 ,contr 
+0x58e5 023402 copy pdata ,loopcnt 
+0x58e6 023403 call memcpy 
+0x58e7 023404 call store_contw 
+0x58e8 023405 increase -1 ,timeup 
+0x58e9 023406 branch le_send_att_find_information_res_end ,zero 
+:      023407 le_send_att_find_information_res_cont:
+0x58ea 023408 ifetch 1 ,contr 
+0x58eb 023409 iadd contr ,contr 
+0x58ec 023410 branch le_send_att_find_information_res_loop 
+:      023411 le_send_att_find_information_res_next:
+0x58ed 023412 ifetch 1 ,contr 
+0x58ee 023413 iadd contr ,contr 
+0x58ef 023414 branch le_send_att_find_information_res_cont 
+:      023415 le_send_att_find_information_res_end:
+0x58f0 023416 branch le_send_att_error_response_notfound ,user 
+0x58f1 023417 branch le_send_auto_len_by_mem 
+:      023420 le_parse_att_find_by_type_value_request:
+0x58f2 023421 call le_get_search_handle_start_end_common 
+0x58f3 023422 ifetch 2 ,contr 
+0x58f4 023423 store 2 ,mem_le_search_uuid 
+0x58f5 023424 call store_contr 
+0x58f6 023425 arg mem_le_search_att_type_length ,contw 
+0x58f7 023426 fetch 2 ,mem_le_l2cap_size 
+0x58f8 023427 increase -7 ,pdata 
+0x58f9 023428 call le_get_search_common2 
+0x58fa 023429 branch le_send_att_find_by_type_value_response 
+:      023432 le_start_end_handle_check_1:
+0x58fb 023433 disable user 
+0x58fc 023434 fetcht 2 ,mem_le_search_handle_start 
+0x58fd 023435 fetch 2 ,mem_le_search_handle_end 
+0x58fe 023436 isub temp ,null 
+0x58ff 023437 nbranch le_start_end_handle_check_1_fail ,positive 
+0x5900 023438 deposit temp 
+0x5901 023439 rtnne 0 
+:      023440 le_start_end_handle_check_1_fail:
+0x5902 023441 enable user 
+0x5903 023442 jam att_err_invalid_handle ,mem_le_err_code 
+0x5904 023443 branch le_send_att_error_response 
+:      023446 le_send_att_find_by_type_value_response:
+0x5905 023447 call le_start_end_handle_check_1 
+0x5906 023448 rtn user 
+0x5907 023449 fetcht 2 ,mem_le_search_uuid 
+0x5908 023450 setarg uuid_gatt_primary_service 
+0x5909 023451 isub temp ,null 
+0x590a 023452 branch le_send_att_find_by_type_value_res_primary ,zero 
+0x590b 023453 branch le_send_att_error_response_notfound 
+:      023456 le_send_att_find_by_type_value_res_primary:
+0x590c 023457 jam le_find_by_type_val_res_not_found ,mem_le_search_res 
+0x590d 023458 fetcht 2 ,mem_le_search_handle_start 
+0x590e 023459 storet 2 ,mem_temp 
+0x590f 023460 call le_att_get_handle_info 
+0x5910 023461 nbranch le_send_att_error_response_notfound ,blank 
+:      023462 le_send_att_find_primary_search_loop:
+0x5911 023463 fetcht 2 ,mem_temp 
+0x5912 023464 call le_att_get_handle_info 
+0x5913 023465 nbranch le_send_att_error_response_notfound2 ,blank 
+0x5914 023466 copy contr ,rega 
+0x5915 023467 fetch 1 ,mem_le_curr_att_len 
+0x5916 023468 copy pdata ,loopcnt 
+0x5917 023469 fetcht 1 ,mem_le_search_att_type_length 
+0x5918 023470 isub temp ,null 
+0x5919 023471 nbranch le_send_att_find_primary_search_loop1 ,zero 
+0x591a 023472 arg mem_le_search_att_type ,regb 
+0x591b 023473 call string_compare 
+0x591c 023475 branch le_send_att_find_primary_search_end_start_handle_found ,zero 
+0x591d 023477 fetch 2 ,mem_le_cur_uuid 
+0x591e 023478 fetcht 2 ,mem_le_search_uuid 
+0x591f 023479 isub temp ,null 
+0x5920 023480 branch le_send_att_find_primary_search_end_ending_handle_found ,zero 
+:      023481 le_send_att_find_primary_search_loop1:
+0x5921 023482 fetch 2 ,mem_temp 
+0x5922 023483 increase 1 ,pdata 
+0x5923 023484 store 2 ,mem_temp 
+0x5924 023485 branch le_send_att_find_primary_search_loop 
+:      023487 le_send_att_error_response_notfound2:
+0x5925 023488 fetch 1 ,mem_le_search_res 
+0x5926 023489 beq le_find_by_type_val_res_found_starting_handle ,le_send_att_find_primary_search_end_ending_handle_found 
+0x5927 023490 branch le_send_att_error_response_notfound 
+:      023493 le_send_att_find_primary_search_end_start_handle_found:
+0x5928 023494 fetch 2 ,mem_le_cur_uuid 
+0x5929 023495 fetcht 2 ,mem_le_search_uuid 
+0x592a 023496 isub temp ,null 
+0x592b 023497 nbranch le_send_att_find_primary_search_loop1 ,zero 
+0x592c 023498 jam le_find_by_type_val_res_found_starting_handle ,mem_le_search_res 
+0x592d 023500 fetcht 2 ,mem_temp 
+0x592e 023501 storet 2 ,mem_le_cur_handle_start 
+0x592f 023502 branch le_send_att_find_primary_search_loop1 
+:      023504 le_send_att_find_primary_search_end_ending_handle_found:
+0x5930 023505 fetch 1 ,mem_le_search_res 
+0x5931 023506 beq le_find_by_type_val_res_not_found ,le_send_att_find_primary_search_loop1 
+0x5932 023507 jam le_find_by_type_val_res_found_ending_handle ,mem_le_search_res 
+0x5933 023508 fetcht 2 ,mem_temp 
+0x5934 023509 increase -1 ,temp 
+0x5935 023510 storet 2 ,mem_le_cur_handle_end 
+:      023512 le_send_att_find_primary_search_end:
+0x5936 023513 arg 5 ,rega 
+0x5937 023514 call le_fifo_malloc_tx_l2cap_gatt 
+0x5938 023515 setarg attop_find_by_type_value_response 
+0x5939 023516 istore 1 ,contw 
+0x593a 023517 fetch 2 ,mem_le_cur_handle_start 
+0x593b 023518 istore 2 ,contw 
+0x593c 023519 fetch 2 ,mem_le_cur_handle_end 
+0x593d 023520 istore 2 ,contw 
+0x593e 023521 rtn 
+:      023525 le_parse_att_read_by_type_request:
+0x593f 023526 call le_get_search_handle_start_end_common 
+0x5940 023527 call le_get_search_att_uuid 
+0x5941 023528 branch le_send_att_read_by_type_response 
+:      023530 le_send_att_read_by_type_response:
+0x5942 023531 fetcht 2 ,mem_le_search_handle_start 
+0x5943 023532 storet 2 ,mem_temp 
+0x5944 023533 call le_init_attlist_search 
+0x5945 023534 call le_att_get_handle_ptr2 
+0x5946 023535 increase -2 ,contr 
+0x5947 023536 copy contr ,pdata 
+0x5948 023537 store 2 ,mem_le_cur_attlist_start_ptr 
+0x5949 023539 fetcht 2 ,mem_le_search_uuid 
+0x594a 023540 setarg uuid_chrctr_device_name 
+0x594b 023541 isub temp ,null 
+0x594c 023542 branch le_send_att_read_by_type_res_device_name ,zero 
+0x594d 023543 setarg uuid_gatt_characteristic 
+0x594e 023544 isub temp ,null 
+0x594f 023545 nbranch le_send_att_read_by_type_res_not_characteristic ,zero 
+0x5950 023546 arg 2 ,timeup 
+:      023547 le_send_att_read_by_type_response_loop:
+0x5951 023548 call le_att_check_handle_end 
+0x5952 023549 nbranch le_send_att_read_by_type_response_end ,positive 
+0x5953 023550 fetcht 2 ,mem_temp 
+0x5954 023551 call le_att_get_handle_info_from_ptr 
+0x5955 023552 beq 1 ,le_send_att_read_by_type_response_end 
+0x5956 023553 call le_att_same_uuid 
+0x5957 023554 nbranch le_send_att_read_by_type_response_next_handle ,zero 
+0x5958 023555 nbranch le_send_att_read_by_type_res_found_next ,user 
+0x5959 023556 disable user 
+0x595a 023557 arg 20 ,rega 
+0x595b 023558 call le_fifo_malloc_tx_l2cap_gatt 
+0x595c 023559 setarg attop_read_by_type_response 
+0x595d 023560 istore 1 ,contw 
+0x595e 023561 copy contw ,alarm 
+0x595f 023562 increase 1 ,contw 
+0x5960 023564 call le_send_att_read_by_type_write_properties 
+0x5961 023565 call le_att_next_handle 
+0x5962 023566 call le_att_get_handle_info_from_ptr 
+0x5963 023567 call le_send_att_read_by_type_write_uuid 
+0x5964 023568 fetch 1 ,mem_le_cur_uuid_length 
+0x5965 023569 increase 5 ,pdata 
+0x5966 023570 istore 1 ,alarm 
+0x5967 023571 fetch 1 ,mem_le_cur_uuid_length 
+0x5968 023572 beq 16 ,le_send_att_read_by_type_response_end 
+0x5969 023573 increase -1 ,timeup 
+0x596a 023574 branch le_send_att_read_by_type_response_end ,zero 
+:      023575 le_send_att_read_by_type_response_next_handle:
+0x596b 023576 call le_att_next_handle 
+0x596c 023577 branch le_send_att_read_by_type_response_loop 
+:      023578 le_send_att_read_by_type_response_end:
+0x596d 023579 branch le_send_att_error_response_notfound ,user 
+0x596e 023580 branch le_send_auto_len_by_mem 
+:      023582 le_send_att_read_by_type_res_found_next:
+0x596f 023583 call le_store_att_record 
+0x5970 023584 call le_att_next_handle 
+0x5971 023585 call le_att_get_handle_info_from_ptr 
+0x5972 023586 fetch 1 ,mem_le_cur_uuid_length 
+0x5973 023587 beq 16 ,le_send_att_read_by_type_response_end 
+0x5974 023589 call get_contw 
+0x5975 023590 fetch 2 ,mem_temp 
+0x5976 023591 increase -1 ,pdata 
+0x5977 023592 istore 2 ,contw 
+0x5978 023593 call le_write_att_record_common 
+0x5979 023594 call le_send_att_read_by_type_write_uuid 
+0x597a 023595 increase -1 ,timeup 
+0x597b 023596 branch le_send_att_read_by_type_response_end ,zero 
+0x597c 023597 branch le_send_att_read_by_type_response_next_handle 
+:      023600 le_send_att_read_by_type_write_properties:
+0x597d 023601 fetch 2 ,mem_temp 
+0x597e 023602 istore 2 ,contw 
+0x597f 023604 fetch 1 ,mem_le_curr_att_len 
+0x5980 023605 copy pdata ,loopcnt 
+0x5981 023606 call get_contr 
+0x5982 023607 call memcpy_fast 
+0x5983 023608 branch store_contw 
+:      023609 le_send_att_read_by_type_write_uuid:
+0x5984 023610 call get_contw 
+0x5985 023611 fetch 2 ,mem_temp 
+0x5986 023612 istore 2 ,contw 
+0x5987 023613 call store_contw 
+0x5988 023614 fetch 1 ,mem_le_cur_uuid_length 
+0x5989 023615 copy pdata ,loopcnt 
+0x598a 023616 call get_contw 
+0x598b 023617 call get_contr 
+0x598c 023618 isub loopcnt ,contr 
+0x598d 023619 increase -1 ,contr 
+0x598e 023620 call memcpy_fast 
+0x598f 023621 branch store_contw 
+:      023625 le_send_att_read_by_type_res_not_characteristic:
+0x5990 023626 fetcht 2 ,mem_le_search_handle_start 
+0x5991 023627 storet 2 ,mem_temp 
+:      023628 le_send_att_read_by_type_res_not_char_loop:
+0x5992 023629 call le_att_check_handle_end 
+0x5993 023630 nbranch le_send_att_error_response_notfound ,positive 
+0x5994 023631 call le_att_get_handle_info_from_ptr 
+0x5995 023632 beq 1 ,le_send_att_error_response_notfound 
+0x5996 023633 call le_att_same_uuid 
+0x5997 023634 nbranch le_send_att_read_by_type_res_not_char_next ,zero 
+:      023636 le_send_att_read_by_type_res_not_char_common:
+0x5998 023637 arg 20 ,rega 
+0x5999 023638 call le_fifo_malloc_tx_l2cap_gatt 
+0x599a 023639 setarg attop_read_by_type_response 
+0x599b 023640 istore 1 ,contw 
+0x599c 023641 fetch 1 ,mem_le_curr_att_len 
+0x599d 023642 copy pdata ,loopcnt 
+0x599e 023643 increase 2 ,pdata 
+0x599f 023644 istore 1 ,contw 
+0x59a0 023645 fetch 2 ,mem_temp 
+0x59a1 023646 istore 2 ,contw 
+0x59a2 023647 call get_contr 
+0x59a3 023648 call memcpy_fast 
+0x59a4 023649 call store_contw 
+0x59a5 023650 branch le_send_auto_len_by_mem 
+:      023652 le_send_att_read_by_type_res_not_char_next:
+0x59a6 023653 call le_att_next_handle 
+0x59a7 023654 branch le_send_att_read_by_type_res_not_char_loop 
+:      023657 le_send_att_read_by_type_res_device_name:
+0x59a8 023658 arg uuid_chrctr_device_name ,temp 
+0x59a9 023659 call le_att_get_short_uuid_ptr 
+0x59aa 023660 rtn blank 
+0x59ab 023661 increase -5 ,contr 
+0x59ac 023662 ifetch 2 ,contr 
+0x59ad 023663 store 2 ,mem_temp 
+0x59ae 023664 arg 20 ,rega 
+0x59af 023665 call le_fifo_malloc_tx_l2cap_gatt 
+0x59b0 023666 setarg attop_read_by_type_response 
+0x59b1 023667 istore 1 ,contw 
+0x59b2 023668 fetch 1 ,mem_le_name_len 
+0x59b3 023669 copy pdata ,loopcnt 
+0x59b4 023670 increase 2 ,pdata 
+0x59b5 023671 istore 1 ,contw 
+0x59b6 023672 fetch 2 ,mem_temp 
+0x59b7 023673 istore 2 ,contw 
+0x59b8 023674 arg mem_le_name ,contr 
+0x59b9 023675 call memcpy_fast 
+0x59ba 023676 call store_contw 
+0x59bb 023677 branch le_send_auto_len_by_mem 
+:      023681 le_parse_att_read_request:
+0x59bc 023682 fetcht 2 ,mem_le_att_handle 
+0x59bd 023683 fetch 1 ,mem_le_configuration 
+0x59be 023684 bbit1 bit_ble_read_auth ,le_send_att_read_response_check_auth 
+:      023686 le_send_att_read_response:
+0x59bf 023687 call le_att_get_handle_ptr 
+0x59c0 023688 branch le_send_att_error_response_notfound ,blank 
+0x59c1 023689 increase -2 ,contr 
+0x59c2 023690 ifetch 2 ,contr 
+0x59c3 023691 arg uuid_chrctr_device_name ,temp 
+0x59c4 023692 isub temp ,null 
+0x59c5 023693 branch le_send_device_name ,zero 
+0x59c6 023694 ifetch 1 ,contr 
+0x59c7 023695 sub pdata ,22 ,null 
+0x59c8 023696 branch le_send_att_read_response_less ,positive 
+0x59c9 023697 force 22 ,pdata 
+:      023698 le_send_att_read_response_less:
+0x59ca 023699 copy pdata ,regc 
+0x59cb 023700 call store_contr 
+0x59cc 023701 add regc ,1 ,rega 
+0x59cd 023702 call le_fifo_malloc_tx_l2cap_gatt 
+0x59ce 023703 setarg attop_read_response 
+0x59cf 023704 istore 1 ,contw 
+0x59d0 023705 copy regc ,loopcnt 
+0x59d1 023706 call get_contr 
+0x59d2 023707 branch memcpy 
+:      023709 le_send_device_name:
+0x59d3 023710 call store_contr 
+0x59d4 023711 fetch 1 ,mem_le_name_len 
+0x59d5 023712 add pdata ,1 ,rega 
+0x59d6 023713 call le_fifo_malloc_tx_l2cap_gatt 
+0x59d7 023714 setarg attop_read_response 
+0x59d8 023715 istore 1 ,contw 
+0x59d9 023716 fetch 1 ,mem_le_name_len 
+0x59da 023717 copy pdata ,loopcnt 
+0x59db 023718 arg mem_le_name ,contr 
+0x59dc 023719 branch memcpy 
+:      023722 le_send_att_read_response_check_auth:
+0x59dd 023723 fetch 2 ,mem_le_pairing_handle 
+0x59de 023724 isub temp ,null 
+0x59df 023725 nbranch le_send_att_read_response ,zero 
+0x59e0 023727 call le_check_encrypt_state 
+0x59e1 023728 nbranch le_send_att_read_response ,user 
+0x59e2 023729 jam att_err_insufficient_authentication ,mem_le_err_code 
+0x59e3 023730 branch le_send_att_error_response 
+:      023733 le_parse_att_read_blob_request:
+0x59e4 023734 ifetch 2 ,contr 
+0x59e5 023735 store 2 ,mem_le_att_offset 
+:      023736 le_send_att_read_blob_response:
+0x59e6 023737 arg 20 ,rega 
+0x59e7 023738 call le_fifo_malloc_tx_l2cap_gatt 
+0x59e8 023739 setarg attop_read_blob_response 
+0x59e9 023740 istore 1 ,contw 
+0x59ea 023741 fetch 2 ,mem_le_att_offset 
+0x59eb 023742 iforce rega 
+0x59ec 023743 fetcht 2 ,mem_le_att_handle 
+0x59ed 023744 call le_att_get_handle_ptr 
+0x59ee 023745 branch le_send_att_error_response_notfound ,blank 
+0x59ef 023746 ifetch 1 ,contr 
+0x59f0 023747 isub rega ,loopcnt 
+0x59f1 023748 nbranch le_send_att_error_response_notfound ,positive 
+0x59f2 023749 sub loopcnt ,22 ,null 
+0x59f3 023750 branch le_send_att_read_blob_response_less ,positive 
+0x59f4 023751 force 22 ,loopcnt 
+:      023752 le_send_att_read_blob_response_less:
+0x59f5 023753 deposit rega 
+0x59f6 023754 iadd contr ,contr 
+0x59f7 023755 call memcpy_fast 
+0x59f8 023756 call store_contw 
+0x59f9 023757 branch le_send_auto_len_by_mem 
+:      023760 le_parse_att_read_by_group_type_request:
+0x59fa 023761 call le_get_search_handle_start_end_common 
+0x59fb 023762 call le_get_search_att_type 
+0x59fc 023763 branch le_send_att_read_by_group_type_response 
+:      023768 le_send_att_read_by_group_type_response:
+0x59fd 023769 arg 2 ,timeup 
+0x59fe 023770 fetcht 2 ,mem_le_search_handle_start 
+0x59ff 023774 storet 2 ,mem_temp 
+0x5a00 023775 call le_init_attlist_search 
+0x5a01 023776 call le_att_get_handle_ptr2 
+0x5a02 023777 increase -2 ,contr 
+0x5a03 023778 copy contr ,pdata 
+0x5a04 023779 store 2 ,mem_le_cur_attlist_start_ptr 
+:      023780 le_send_att_read_by_group_type_response_loop:
+0x5a05 023781 call le_att_check_handle_end 
+0x5a06 023782 nbranch le_send_att_read_by_group_type_end0 ,positive 
+0x5a07 023783 fetcht 2 ,mem_temp 
+0x5a08 023784 call le_att_get_handle_info_from_ptr 
+0x5a09 023785 beq 1 ,le_send_att_read_by_group_type_end1 
+0x5a0a 023787 call le_att_same_type 
+0x5a0b 023788 nbranch le_send_att_read_by_group_type_next_handle ,zero 
+0x5a0c 023789 copy timeup ,pdata 
+0x5a0d 023790 beq 0 ,le_send_att_read_by_group_type_end1 
+0x5a0e 023791 nbranch le_send_att_read_by_group_type_store_write_record ,user 
+0x5a0f 023792 disable user 
+0x5a10 023794 arg 20 ,rega 
+0x5a11 023795 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a12 023796 setarg attop_read_by_group_type_response 
+0x5a13 023797 istore 1 ,contw 
+0x5a14 023798 fetch 1 ,mem_le_curr_att_len 
+0x5a15 023799 increase 4 ,pdata 
+0x5a16 023800 istore 1 ,contw 
+0x5a17 023801 call store_contw 
+0x5a18 023802 branch le_send_att_read_by_group_type_store_record 
+:      023803 le_send_att_read_by_group_type_store_write_record:
+0x5a19 023804 fetch 1 ,mem_le_curr_att_len 
+0x5a1a 023805 beq 16 ,le_send_att_read_by_group_type_end1 
+0x5a1b 023806 fetch 2 ,mem_temp 
+0x5a1c 023807 increase -1 ,pdata 
+0x5a1d 023808 store 2 ,mem_le_cur_handle_end 
+0x5a1e 023809 call le_write_att_record 
+:      023810 le_send_att_read_by_group_type_store_record:
+0x5a1f 023811 fetch 2 ,mem_temp 
+0x5a20 023812 store 2 ,mem_le_cur_handle_start 
+0x5a21 023813 call le_store_att_record 
+0x5a22 023814 increase -1 ,timeup 
+:      023816 le_send_att_read_by_group_type_next_handle:
+0x5a23 023817 call le_att_next_handle 
+0x5a24 023818 branch le_send_att_read_by_group_type_response_loop 
+:      023820 le_send_att_read_by_group_type_end0:
+0x5a25 023821 fetch 2 ,mem_temp 
+0x5a26 023822 store 2 ,mem_le_cur_handle_end 
+0x5a27 023823 branch le_send_att_read_by_group_type_end_common 
+:      023824 le_send_att_read_by_group_type_end1:
+0x5a28 023825 fetch 2 ,mem_temp 
+0x5a29 023826 increase -1 ,pdata 
+0x5a2a 023827 store 2 ,mem_le_cur_handle_end 
+0x5a2b 023828 branch le_send_att_read_by_group_type_end_common 
+:      023829 le_send_att_read_by_group_type_end_common:
+0x5a2c 023830 branch le_send_att_error_response_notfound ,user 
+0x5a2d 023831 call le_write_att_record 
+0x5a2e 023832 branch le_send_auto_len_by_mem 
+:      023837 le_parse_att_write_request:
+0x5a2f 023838 copy contr ,rega 
+0x5a30 023839 fetch 2 ,mem_le_l2cap_size 
+0x5a31 023840 add pdata ,-3 ,regb 
+0x5a32 023841 call le_writeatt_cb 
+:      023842 le_send_att_write_response_check_auth:
+0x5a33 023843 fetch 1 ,mem_le_configuration 
+0x5a34 023844 bbit0 bit_ble_write_auth ,le_send_att_write_response 
+0x5a35 023846 fetcht 2 ,mem_le_att_handle 
+0x5a36 023847 fetch 2 ,mem_le_pairing_handle 
+0x5a37 023848 isub temp ,null 
+0x5a38 023849 nbranch le_send_att_write_response ,zero 
+0x5a39 023850 call le_check_encrypt_state 
+0x5a3a 023851 nbranch le_send_att_write_response ,user 
+0x5a3b 023852 jam att_err_insufficient_authentication ,mem_le_err_code 
+0x5a3c 023853 branch le_send_att_error_response 
+:      023855 le_send_att_write_response:
+0x5a3d 023856 force 1 ,rega 
+0x5a3e 023857 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a3f 023858 setarg attop_write_response 
+0x5a40 023859 istore 1 ,contw 
+0x5a41 023860 rtn 
+:      023862 le_check_encrypt_state:
+0x5a42 023863 call disable_user 
+0x5a43 023864 fetch 1 ,mem_le_pairing_mode 
+0x5a44 023865 rtneq le_pairing_mode_none 
+0x5a45 023866 fetch 1 ,mem_context 
+0x5a46 023867 rtnbit1 lestate_encryption 
+0x5a47 023868 branch enable_user 
+:      023871 le_parse_att_prepare_write_request:
+0x5a48 023872 add contr ,2 ,rega 
+0x5a49 023873 fetch 2 ,mem_le_l2cap_size 
+0x5a4a 023874 add pdata ,-5 ,regb 
+0x5a4b 023875 call le_writeatt_cb 
+0x5a4c 023876 branch le_send_att_prepare_write_response 
+:      023879 le_send_att_prepare_write_response:
+0x5a4d 023880 fetch 2 ,mem_le_l2cap_size 
+0x5a4e 023881 copy pdata ,rega 
+0x5a4f 023882 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a50 023883 setarg attop_prepare_write_response 
+0x5a51 023884 istore 1 ,contw 
+0x5a52 023885 fetch 2 ,mem_le_att_handle 
+0x5a53 023886 istore 2 ,contw 
+0x5a54 023887 fetch 2 ,mem_le_l2cap_size 
+0x5a55 023888 add pdata ,-5 ,loopcnt 
+0x5a56 023889 fetch 2 ,mem_le_payload_ptr 
+0x5a57 023890 add pdata ,7 ,contr 
+0x5a58 023891 ifetch 2 ,contr 
+0x5a59 023892 istore 2 ,contw 
+0x5a5a 023893 branch memcpy_fast 
+:      023897 le_parse_att_execute_write_request:
+:      023899 le_send_att_execute_write_response:
+0x5a5b 023900 force 1 ,rega 
+0x5a5c 023901 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a5d 023902 setarg attop_execute_write_response 
+0x5a5e 023903 istore 1 ,contw 
+0x5a5f 023904 rtn 
+:      023908 le_parse_att_write_command:
+0x5a60 023909 copy contr ,rega 
+0x5a61 023910 fetch 2 ,mem_le_l2cap_size 
+0x5a62 023911 add pdata ,-3 ,regb 
+0x5a63 023912 branch le_writeatt_cb 
+:      023917 le_att_malloc_tx_notify:
+0x5a64 023918 copy temp ,regc 
+0x5a65 023919 increase 3 ,rega 
+0x5a66 023920 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a67 023921 increase -3 ,rega 
+0x5a68 023922 setarg attop_handle_value_notification 
+0x5a69 023923 istore 1 ,contw 
+0x5a6a 023924 copy regc ,temp 
+0x5a6b 023925 istoret 2 ,contw 
+0x5a6c 023926 rtn 
+:      023929 le_att_malloc_tx_indication:
+0x5a6d 023930 copy temp ,regc 
+0x5a6e 023931 increase 3 ,rega 
+0x5a6f 023932 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a70 023933 increase -3 ,rega 
+0x5a71 023934 setarg attop_handle_value_indication 
+0x5a72 023935 istore 1 ,contw 
+0x5a73 023936 copy regc ,temp 
+0x5a74 023937 istoret 2 ,contw 
+0x5a75 023938 rtn 
+:      023943 le_send_att_error_response_notfound:
+0x5a76 023944 jam att_err_attribute_not_found ,mem_le_err_code 
+:      023945 le_send_att_error_response:
+0x5a77 023946 force 5 ,rega 
+0x5a78 023947 call le_fifo_malloc_tx_l2cap_gatt 
+0x5a79 023948 setarg attop_error_response 
+0x5a7a 023949 istore 1 ,contw 
+0x5a7b 023950 fetch 1 ,mem_le_att_opcode 
+0x5a7c 023951 istore 1 ,contw 
+0x5a7d 023952 fetch 2 ,mem_le_att_handle 
+0x5a7e 023953 istore 2 ,contw 
+0x5a7f 023954 fetch 1 ,mem_le_err_code 
+0x5a80 023955 istore 1 ,contw 
+0x5a81 023956 rtn 
+:      023959 le_fifo_malloc_tx_l2cap_gatt:
+0x5a82 023960 force le_l2cap_cid_att ,regb 
+0x5a83 023961 branch le_fifo_malloc_tx_l2cap 
+:      023964 le_att_next_handle:
+0x5a84 023965 fetcht 2 ,mem_temp 
+0x5a85 023966 increase 1 ,temp 
+0x5a86 023967 storet 2 ,mem_temp 
+0x5a87 023968 rtn 
+:      023970 le_att_check_handle_end:
+0x5a88 023971 fetcht 2 ,mem_temp 
+0x5a89 023972 fetch 2 ,mem_le_search_handle_end 
+0x5a8a 023973 isub temp ,null 
+0x5a8b 023974 rtn 
+:      023977 le_att_same_type:
+0x5a8c 023978 fetcht 1 ,mem_le_search_att_type_length 
+0x5a8d 023979 arg mem_le_search_att_type ,rega 
+:      023980 le_att_check_same_common:
+0x5a8e 023981 fetch 1 ,mem_le_cur_uuid_length 
+0x5a8f 023982 copy pdata ,loopcnt 
+0x5a90 023983 isub temp ,null 
+0x5a91 023984 nrtn zero 
+0x5a92 023985 arg mem_le_cur_uuid ,regb 
+0x5a93 023986 branch string_compare 
+:      023988 le_att_same_uuid:
+0x5a94 023989 fetcht 1 ,mem_le_search_uuid_length 
+0x5a95 023990 arg mem_le_search_uuid ,rega 
+0x5a96 023991 branch le_att_check_same_common 
+:      023994 le_store_att_record:
+0x5a97 023995 fetch 1 ,mem_le_curr_att_len 
+0x5a98 023996 store 1 ,mem_tmp_buffer 
+0x5a99 023997 copy pdata ,loopcnt 
+0x5a9a 023998 call get_contr 
+0x5a9b 023999 branch memcpy_fast 
+:      024002 le_write_att_record:
+0x5a9c 024003 call get_contw 
+0x5a9d 024004 fetch 2 ,mem_le_cur_handle_start 
+0x5a9e 024005 istore 2 ,contw 
+0x5a9f 024006 fetch 2 ,mem_le_cur_handle_end 
+0x5aa0 024007 istore 2 ,contw 
+:      024008 le_write_att_record_common:
+0x5aa1 024009 fetch 1 ,mem_tmp_buffer 
+0x5aa2 024010 copy pdata ,loopcnt 
+0x5aa3 024011 call memcpy_fast 
+0x5aa4 024012 branch store_contw 
+:      024016 le_send_auto_len_by_mem:
+0x5aa5 024017 call get_contw 
+0x5aa6 024018 call le_fifo_get_last_att_ptr 
+0x5aa7 024019 copy contw ,pdata 
+0x5aa8 024020 isub contr ,rega 
+0x5aa9 024021 call le_fifo_get_last_l2cap_ptr 
+0x5aaa 024022 copy rega ,pdata 
+0x5aab 024023 istore 2 ,contr 
+0x5aac 024024 increase 4 ,rega 
+0x5aad 024025 call le_fifo_get_last_tx_ptr 
+0x5aae 024026 copy rega ,pdata 
+0x5aaf 024027 istore 1 ,contr 
+0x5ab0 024028 rtn 
+:      024031 le_get_search_handle_start_end_common:
+0x5ab1 024032 rshift8 pdata ,pdata 
+0x5ab2 024033 store 2 ,mem_le_search_handle_start 
+0x5ab3 024034 ifetch 2 ,contr 
+0x5ab4 024035 store 2 ,mem_le_search_handle_end 
+0x5ab5 024036 rtn 
+:      024041 le_parse_signaling:
+0x5ab6 024042 ifetch 1 ,contr 
+0x5ab7 024043 ifetcht 1 ,contr 
+0x5ab8 024044 ifetcht 2 ,contr 
+0x5ab9 024045 beq l2cap_connection_parameter_update_response ,le_l2cap_parse_conn_parameter_update_rsp 
+0x5aba 024046 rtn 
+:      024047 le_l2cap_parse_conn_parameter_update_rsp:
+0x5abb 024048 ifetch 2 ,contr 
+0x5abc 024049 store 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result 
+0x5abd 024050 jam bt_evt_le_parse_conn_papa_update_rsp ,mem_fifo_temp 
+0x5abe 024051 branch ui_ipc_send_event 
+:      024057 le_l2cap_tx_update_req:
+0x5abf 024058 arg 0x0c ,rega 
+0x5ac0 024059 arg l2cap_connection_parameter_update_request ,regc 
+0x5ac1 024060 call le_fifo_malloc_tx_l2cap_signaling 
+0x5ac2 024061 setarg 0x08 
+0x5ac3 024062 istore 2 ,contw 
+0x5ac4 024063 fetch 8 ,mem_le_interval_min 
+0x5ac5 024064 istore 8 ,contw 
+0x5ac6 024065 rtn 
+:      024069 le_fifo_malloc_tx_l2cap_signaling:
+0x5ac7 024070 call le_l2cap_update_signaling_identifier 
+0x5ac8 024071 arg le_l2cap_cid_signal ,regb 
+0x5ac9 024072 call le_fifo_malloc_tx_l2cap 
+0x5aca 024073 copy regc ,pdata 
+0x5acb 024074 istore 1 ,contw 
+0x5acc 024075 fetch 1 ,mem_le_signaling_identifier 
+0x5acd 024076 istore 1 ,contw 
+0x5ace 024077 rtn 
+:      024080 le_l2cap_update_signaling_identifier:
+0x5acf 024081 fetch 1 ,mem_le_signaling_identifier 
+0x5ad0 024083 pincrease 1 
+0x5ad1 024084 store 1 ,mem_le_signaling_identifier 
+0x5ad2 024085 rtnne 0 
+:      024087 le_l2cap_reset_signaling_identifier:
+0x5ad3 024088 jam 1 ,mem_le_signaling_identifier 
+0x5ad4 024089 rtn 
+:      024094 le_pairing_mode_init:
+0x5ad5 024095 fetch 1 ,mem_le_pairing_mode 
+0x5ad6 024096 beq le_pairing_mode_none ,le_set_no_pairing 
+0x5ad7 024097 beq le_pairing_mode_lagacy_justwork ,le_set_pairing_mode_lagacy_just_work 
+0x5ad8 024098 beq le_pairing_mode_lagacy_passkey ,le_set_pairing_mode_lagacy_passkey 
+0x5ad9 024099 beq le_pairing_mode_secure_connect_justwork ,le_set_pairing_mode_secure_justwork 
+0x5ada 024100 beq le_pairing_mode_secure_connect_numeric ,le_set_pairing_mode_secure_numeric 
+0x5adb 024101 beq le_pairing_mode_secure_connect_passkey ,le_set_pairing_mode_secure_passkey 
+0x5adc 024102 rtn 
+:      024104 le_set_pairing_mode_secure_justwork:
+0x5add 024105 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x5ade 024106 branch le_set_noinputnooutput 
+:      024107 le_set_pairing_mode_secure_numeric:
+0x5adf 024108 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x5ae0 024109 jam flag_iocap_displayyesno ,mem_le_pres_iocap 
+0x5ae1 024110 rtn 
+:      024111 le_set_pairing_mode_secure_passkey:
+0x5ae2 024112 jam flag_le_bonding_mitm_secure ,mem_le_pres_auth 
+0x5ae3 024113 branch le_set_displayonly 
+:      024114 le_set_no_pairing:
+0x5ae4 024115 jam flag_le_no_bonding_no_mitm ,mem_le_pres_auth 
+:      024116 le_set_noinputnooutput:
+0x5ae5 024117 jam flag_iocap_noinputnooutput ,mem_le_pres_iocap 
+0x5ae6 024118 rtn 
+:      024119 le_set_pairing_mode_lagacy_just_work:
+0x5ae7 024120 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+0x5ae8 024121 branch le_set_noinputnooutput 
+:      024122 le_set_pairing_mode_lagacy_passkey:
+0x5ae9 024123 jam flag_le_bonding_mitm ,mem_le_pres_auth 
+:      024124 le_set_displayonly:
+0x5aea 024125 jam flag_iocap_displayonly ,mem_le_pres_iocap 
+0x5aeb 024126 rtn 
+:      024129 le_secure_connection_enable:
+0x5aec 024130 fetch 1 ,mem_le_pres_auth 
+0x5aed 024131 set1 le_auth_secure_connection_pairing_bit ,pdata 
+0x5aee 024132 store 1 ,mem_le_pres_auth 
+0x5aef 024133 rtn 
+:      024134 le_secure_connection_disable:
+0x5af0 024135 fetch 1 ,mem_le_pres_auth 
+0x5af1 024136 set0 le_auth_secure_connection_pairing_bit ,pdata 
+0x5af2 024137 store 1 ,mem_le_pres_auth 
+0x5af3 024138 rtn 
+:      024140 le_parse_smp:
+0x5af4 024141 ifetch 1 ,contr 
+0x5af5 024142 beq smp_pairing_request ,le_parse_smp_pairing_request 
+0x5af6 024144 beq smp_pairing_confirm ,le_parse_smp_pairing_confirm 
+0x5af7 024145 beq smp_pairing_random ,le_parse_smp_pairing_random 
+0x5af8 024146 beq smp_pairing_failed ,le_parse_smp_pairing_failed 
+0x5af9 024147 beq smp_encryption_information ,le_parse_smp_encryption_information 
+0x5afa 024148 beq smp_master_identification ,le_parse_smp_master_identification 
+0x5afb 024149 beq smp_identity_information ,le_parse_smp_identity_information 
+0x5afc 024150 beq smp_identity_address_information ,le_parse_smp_identity_address_information 
+0x5afd 024151 beq smp_signing_information ,le_parse_smp_signing_information 
+0x5afe 024152 beq smp_security_request ,le_parse_smp_security_request 
+0x5aff 024153 beq smp_pairing_public_key ,le_parse_smp_public_key 
+0x5b00 024154 beq smp_pairing_dhkey_check ,le_parse_smp_dhkey_check 
+0x5b01 024155 rtn 
+:      024159 le_send_smp_security_request:
+0x5b02 024160 force 2 ,rega 
+0x5b03 024161 call le_fifo_malloc_tx_l2cap_smp 
+0x5b04 024162 setarg smp_security_request 
+0x5b05 024163 istore 1 ,contw 
+0x5b06 024164 fetch 1 ,mem_le_pres_auth 
+0x5b07 024165 istore 1 ,contw 
+0x5b08 024166 rtn 
+:      024168 le_parse_smp_pairing_request:
+0x5b09 024169 store 1 ,mem_le_preq 
+0x5b0a 024170 ifetch 6 ,contr 
+0x5b0b 024171 istore 6 ,contw 
+0x5b0c 024172 fetch 1 ,mem_le_pairing_mode 
+0x5b0d 024173 beq le_pairing_mode_none ,le_smp_pairing_fail_reason_not_support_pairing 
+0x5b0e 024174 call le_send_smp_pairing_response 
+0x5b0f 024175 call le_check_master_support_secure_connect 
+0x5b10 024176 jam flag_le_pairing_rcv_pairing_req ,mem_le_pairing_state 
+0x5b11 024177 fetch 1 ,mem_le_preq_iocap 
+0x5b12 024178 beq flag_iocap_displayonly ,le_set_tk_0 
+0x5b13 024179 beq flag_iocap_displayyesno ,le_set_tk_0 
+0x5b14 024180 beq flag_iocap_noinputnooutput ,le_set_tk_0 
+0x5b15 024181 fetch 1 ,mem_le_pairing_mode 
+0x5b16 024182 beq le_pairing_mode_lagacy_passkey ,le_parse_smp_pairing_req_passkey 
+0x5b17 024183 rtneq le_pairing_mode_secure_connect_passkey 
+:      024184 le_set_tk_0:
+0x5b18 024185 arg 0 ,pdata 
+0x5b19 024186 store 4 ,mem_le_tk 
+0x5b1a 024187 rtn 
+:      024189 le_parse_smp_pairing_req_passkey:
+0x5b1b 024190 fetch 1 ,mem_le_configuration 
+0x5b1c 024191 bbit1 bit_ble_passkey_fixed_key ,le_parse_smp_pairing_req_fixed_passkey 
+:      024192 le_genernate_tk:
+0x5b1d 024193 arg mem_le_tk ,rega 
+0x5b1e 024194 copy rega ,contw 
+0x5b1f 024195 arg 3 ,loopcnt 
+0x5b20 024196 call generate_random_loop 
+0x5b21 024197 fetch 2 ,mem_le_tk + 2 
+0x5b22 024198 and_into 0x7 ,pdata 
+0x5b23 024199 store 2 ,mem_le_tk + 2 
+:      024200 le_parse_smp_pairing_req_fixed_passkey:
+0x5b24 024201 jam bt_evt_le_tk_generate ,mem_fifo_temp 
+0x5b25 024202 branch ui_ipc_send_event 
+:      024204 le_check_master_support_secure_connect:
+0x5b26 024205 fetch 1 ,mem_le_preq_auth 
+0x5b27 024206 rtnbit1 le_auth_secure_connection_pairing_bit 
+0x5b28 024207 fetch 1 ,mem_le_pairing_mode 
+0x5b29 024208 rtnbit0 le_pairing_mode_secure_connect_bit 
+0x5b2a 024209 branch app_ble_disconnect 
+:      024211 le_send_smp_pairing_response:
+0x5b2b 024212 force 7 ,rega 
+0x5b2c 024213 call le_fifo_malloc_tx_l2cap_smp 
+0x5b2d 024214 fetch 7 ,mem_le_pres 
+0x5b2e 024215 istore 7 ,contw 
+0x5b2f 024216 rtn 
+:      024219 le_parse_smp_pairing_confirm:
+0x5b30 024220 copy contr ,rega 
+0x5b31 024221 fetch 1 ,mem_le_pairing_mode 
+0x5b32 024222 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_confirm_secure_passkey 
+0x5b33 024223 copy rega ,contr 
+0x5b34 024224 arg mem_le_rconfirm ,contw 
+0x5b35 024225 call memcpy16 
+0x5b36 024226 branch le_send_smp_pairing_confirm 
+:      024227 le_parse_smp_pairing_confirm_secure_passkey:
+0x5b37 024228 copy rega ,contr 
+0x5b38 024229 arg mem_le_rconfirm ,contw 
+0x5b39 024230 call memcpy16 
+0x5b3a 024231 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5b3b 024232 jam le_sc_stat_passkey_wait_confirm ,mem_le_secure_connect_state 
+0x5b3c 024233 rtn 
+:      024236 le_send_smp_pairing_confirm:
+0x5b3d 024237 fetch 1 ,mem_le_pairing_mode 
+0x5b3e 024238 bbit1 le_pairing_mode_secure_connect_bit ,le_send_smp_pairing_confirm_sc 
+0x5b3f 024239 call generate_confirm 
+0x5b40 024240 force 17 ,rega 
+0x5b41 024241 call le_fifo_malloc_tx_l2cap_smp 
+0x5b42 024242 setarg smp_pairing_confirm 
+0x5b43 024243 istore 1 ,contw 
+0x5b44 024244 branch store_aes_result 
+:      024247 le_send_smp_pairing_confirm_sc:
+0x5b45 024248 arg mem_le_srand ,contw 
+0x5b46 024249 call generate_random 
+0x5b47 024250 call function_f4_cb 
+0x5b48 024251 force 17 ,rega 
+0x5b49 024252 call le_fifo_malloc_tx_l2cap_smp 
+0x5b4a 024253 setarg smp_pairing_confirm 
+0x5b4b 024254 istore 1 ,contw 
+0x5b4c 024255 branch load_inverse_result 
+:      024259 le_parse_smp_pairing_random:
+0x5b4d 024260 copy contr ,rega 
+0x5b4e 024261 fetch 1 ,mem_le_pairing_mode 
+0x5b4f 024262 bbit1 le_pairing_mode_secure_connect_bit ,le_parse_smp_pairing_random_sc 
+0x5b50 024263 copy rega ,contr 
+0x5b51 024264 call authenticate_rconfirm 
+0x5b52 024265 branch le_parse_smp_pairing_random_success ,zero 
+:      024266 le_send_pairing_confirm_value_failed:
+0x5b53 024267 jam pairing_failed_confirm_value_failed ,mem_le_ll_pairing_fail_reason 
+:      024268 le_send_pairing_failed:
+0x5b54 024269 force 2 ,rega 
+0x5b55 024270 call le_fifo_malloc_tx_l2cap_smp 
+0x5b56 024271 setarg smp_pairing_failed 
+0x5b57 024272 istore 1 ,contw 
+0x5b58 024273 fetch 1 ,mem_le_ll_pairing_fail_reason 
+0x5b59 024274 istore 1 ,contw 
+:      024275 le_parse_smp_pairing_failed:
+0x5b5a 024276 force smp_pairing_timer ,queue 
+0x5b5b 024277 call timer_stop 
+0x5b5c 024278 jam flag_le_pairing_null ,mem_le_pairing_state 
+0x5b5d 024279 jam bt_evt_le_pairing_fail ,mem_fifo_temp 
+0x5b5e 024280 branch ui_ipc_send_event 
+:      024282 le_smp_pairing_fail_reason_not_support_pairing:
+0x5b5f 024283 jam pairing_failed_pairing_not_supported ,mem_le_ll_pairing_fail_reason 
+0x5b60 024284 branch le_send_pairing_failed 
+:      024287 le_parse_smp_pairing_random_sc:
+0x5b61 024288 arg mem_le_mrand ,contw 
+0x5b62 024289 copy rega ,contr 
+0x5b63 024290 call memcpy16 
+0x5b64 024291 fetch 1 ,mem_le_pairing_mode 
+0x5b65 024292 beq le_pairing_mode_secure_connect_passkey ,le_parse_smp_pairing_random_sc_passkey 
+0x5b66 024293 call function_g2 
+0x5b67 024296 call le_send_smp_pairing_random 
+0x5b68 024297 fetch 1 ,mem_le_pairing_mode 
+0x5b69 024298 rtnne le_pairing_mode_secure_connect_numeric 
+0x5b6a 024299 jam bt_evt_le_gkey_generate ,mem_fifo_temp 
+0x5b6b 024300 branch ui_ipc_send_event 
+:      024302 le_parse_smp_pairing_random_sc_passkey:
+0x5b6c 024303 call function_f4_ca 
+0x5b6d 024304 arg mem_aes_cmac_temp ,contw 
+0x5b6e 024305 call load_inverse_result 
+0x5b6f 024306 arg mem_aes_cmac_temp ,rega 
+0x5b70 024307 arg mem_le_rconfirm ,regb 
+0x5b71 024308 arg 16 ,loopcnt 
+0x5b72 024309 call string_compare 
+0x5b73 024310 nbranch le_send_pairing_confirm_value_failed ,zero 
+0x5b74 024311 branch le_send_smp_pairing_random 
+:      024313 le_parse_smp_pairing_random_success:
+0x5b75 024314 call generate_stk 
+0x5b76 024315 jam bt_evt_le_pairing_success ,mem_fifo_temp 
+0x5b77 024316 call ui_ipc_send_event 
+0x5b78 024317 jam 1 ,mem_ltk_exists 
+0x5b79 024318 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
+:      024320 le_send_smp_pairing_random:
+0x5b7a 024321 force 17 ,rega 
+0x5b7b 024322 call le_fifo_malloc_tx_l2cap_smp 
+0x5b7c 024323 setarg smp_pairing_random 
+0x5b7d 024324 istore 1 ,contw 
+0x5b7e 024325 arg mem_le_srand ,contr 
+0x5b7f 024326 branch memcpy16 
+:      024328 le_parse_smp_encryption_information:
+0x5b80 024329 arg mem_le_peer_ltk ,contw 
+0x5b81 024330 branch memcpy16 
+:      024332 le_send_smp_encryption_information:
+0x5b82 024333 force 17 ,rega 
+0x5b83 024334 call le_fifo_malloc_tx_l2cap_smp 
+0x5b84 024335 setarg smp_encryption_information 
+0x5b85 024336 istore 1 ,contw 
+0x5b86 024337 fetch 1 ,mem_le_configuration 
+0x5b87 024338 bbit1 bit_ble_pairing_fixed_ltk ,le_send_fixed_ltk 
+0x5b88 024339 arg mem_le_ltk ,contr 
+0x5b89 024340 branch memcpy16 
+:      024342 le_send_fixed_ltk:
+0x5b8a 024343 arg mem_le_fixed_ltk ,contr 
+0x5b8b 024344 branch memcpy16 
+:      024347 le_send_smp_master_identification:
+0x5b8c 024348 arg mem_le_ediv ,contw 
+0x5b8d 024349 force 10 ,loopcnt 
+0x5b8e 024350 call generate_random_loop 
+0x5b8f 024351 force 11 ,rega 
+0x5b90 024352 call le_fifo_malloc_tx_l2cap_smp 
+0x5b91 024353 setarg smp_master_identification 
+0x5b92 024354 istore 1 ,contw 
+0x5b93 024355 fetch 2 ,mem_le_ediv 
+0x5b94 024356 istore 2 ,contw 
+0x5b95 024357 fetch 8 ,mem_le_rand 
+0x5b96 024358 istore 8 ,contw 
+0x5b97 024359 rtn 
+:      024361 le_send_smp_identity_information:
+0x5b98 024362 force 17 ,rega 
+0x5b99 024363 call le_fifo_malloc_tx_l2cap_smp 
+0x5b9a 024364 setarg smp_identity_information 
+0x5b9b 024365 istore 1 ,contw 
+0x5b9c 024366 setarg 0 
+0x5b9d 024367 istore 8 ,contw 
+0x5b9e 024368 istore 8 ,contw 
+0x5b9f 024369 rtn 
+:      024372 le_send_smp_identity_address_information:
+0x5ba0 024373 force 8 ,rega 
+0x5ba1 024374 call le_fifo_malloc_tx_l2cap_smp 
+0x5ba2 024375 setarg smp_identity_address_information 
+0x5ba3 024376 istore 1 ,contw 
+0x5ba4 024377 fetch 1 ,mem_le_conn_own_addr_type 
+0x5ba5 024378 istore 1 ,contw 
+0x5ba6 024379 fetch 6 ,mem_le_lap 
+0x5ba7 024380 istore 6 ,contw 
+0x5ba8 024381 rtn 
+:      024384 le_send_pairing_fail_unspecified_reason:
+0x5ba9 024385 jam pairing_failed_unspecified_reason ,mem_le_ll_pairing_fail_reason 
+0x5baa 024386 branch le_send_pairing_failed 
+:      024388 le_check_init_key_distribution:
+0x5bab 024389 fetch 1 ,mem_le_pres_init_key_distribution 
+0x5bac 024390 fetcht 1 ,mem_le_pres_init_key_distribution 
+0x5bad 024391 iand temp ,pdata 
+0x5bae 024392 rtn 
+:      024394 le_parse_smp_identity_information:
+0x5baf 024395 arg mem_le_irk ,contw 
+0x5bb0 024396 call memcpy16 
+0x5bb1 024397 call le_check_init_key_distribution 
+0x5bb2 024398 isolate0 le_initator_irk_bit ,pdata 
+0x5bb3 024399 branch le_send_pairing_fail_unspecified_reason ,true 
+0x5bb4 024400 fetch 1 ,mem_device_option 
+0x5bb5 024401 rtnne dvc_op_module 
+0x5bb6 024402 call le_check_master_addr_type 
+0x5bb7 024403 nrtn user 
+0x5bb8 024404 branch app_ble_store_reconn_info 
+:      024407 le_check_master_addr_type:
+0x5bb9 024408 call disable_user 
+0x5bba 024409 fetch 1 ,mem_le_conn_peer_addr_type 
+0x5bbb 024410 rtneq master_public_addr 
+0x5bbc 024411 fetch 1 ,mem_le_plap + 5 
+0x5bbd 024412 compare 0xc0 ,pdata ,0xc0 
+0x5bbe 024413 rtn true 
+0x5bbf 024414 branch enable_user 
+:      024416 le_parse_smp_identity_address_information:
+0x5bc0 024417 call le_check_init_key_distribution 
+0x5bc1 024418 isolate0 le_initator_irk_bit ,pdata 
+0x5bc2 024419 branch le_send_pairing_fail_unspecified_reason ,true 
+0x5bc3 024420 rtn 
+:      024422 le_parse_smp_master_identification:
+:      024423 le_parse_smp_signing_information:
+:      024424 le_parse_smp_security_request:
+0x5bc4 024425 rtn 
+:      024427 le_parse_smp_public_key:
+0x5bc5 024428 arg mem_le_pubkey_remote_x_256 ,contw 
+0x5bc6 024429 call memcpy64 
+0x5bc7 024430 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5bc8 024431 jam le_sc_stat_receive_public_key ,mem_le_secure_connect_state 
+0x5bc9 024432 rtn 
+:      024434 le_parse_smp_dhkey_check:
+0x5bca 024435 arg mem_sp_confirm_remote ,contw 
+0x5bcb 024436 call memcpy16 
+0x5bcc 024437 jam le_sc_stat_receive_dhkey ,mem_le_secure_connect_state 
+0x5bcd 024438 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5bce 024439 rtn 
+:      024441 le_send_smp_pairing_public_key:
+0x5bcf 024442 force 65 ,rega 
+0x5bd0 024443 call le_fifo_malloc_tx_l2cap_smp 
+0x5bd1 024444 setarg smp_pairing_public_key 
+0x5bd2 024445 istore 1 ,contw 
+0x5bd3 024446 arg mem_le_pubkey_local_x_256 ,contr 
+0x5bd4 024447 branch memcpy64 
+:      024449 le_send_smp_pairing_dhkey_check:
+0x5bd5 024450 call function_f6_eb 
+0x5bd6 024451 force 17 ,rega 
+0x5bd7 024452 call le_fifo_malloc_tx_l2cap_smp 
+0x5bd8 024453 setarg smp_pairing_dhkey_check 
+0x5bd9 024454 istore 1 ,contw 
+0x5bda 024455 branch load_inverse_result 
+:      024458 le_check_paring_time:
+0x5bdb 024459 fetch 1 ,mem_le_pairing_state 
+0x5bdc 024460 rtneq flag_le_pairing_end 
+0x5bdd 024461 arg flag_le_pairing_rcv_pairing_req ,temp 
+0x5bde 024462 isub temp ,null 
+0x5bdf 024463 nrtn positive 
+0x5be0 024464 arg smp_pairing_timer ,queue 
+0x5be1 024465 call timer_check 
+0x5be2 024466 nrtn blank 
+0x5be3 024467 branch le_send_pairing_fail_unspecified_reason 
+:      024469 le_pairing_sm:
+0x5be4 024470 bpatchx patch2f_0 ,mem_patch2f 
+0x5be5 024471 fetch 1 ,mem_le_pairing_state 
+0x5be6 024472 beq flag_le_pairing_null ,le_pairing_sm_null 
+0x5be7 024473 beq flag_le_pairing_start ,le_pairing_sm_start 
+0x5be8 024474 beq flag_le_pairing_send_recurity_req ,le_pairing_sm_send_sec_req 
+0x5be9 024475 beq flag_le_pairing_rcv_pairing_req ,le_pairing_sm_rcv_pairing_req 
+0x5bea 024476 beq flag_le_pairing_after_auth ,le_pairing_sm_after_auth 
+0x5beb 024477 beq flag_le_paring_send_enc_information ,le_pairng_sm_send_enc_information 
+0x5bec 024478 beq flag_le_paring_send_master_identification ,le_pairng_sm_send_master_indentification 
+0x5bed 024479 beq flag_le_paring_send_indentity_information ,le_pairng_sm_send_indentity_information 
+0x5bee 024480 rtn 
+:      024482 le_pairing_sm_null:
+:      024483 le_pairing_sm_send_sec_req:
+0x5bef 024484 fetch 1 ,mem_le_enc_state 
+0x5bf0 024485 rtnne flag_le_send_start_enc_rsp 
+0x5bf1 024486 jam flag_le_enc_end ,mem_le_enc_state 
+0x5bf2 024487 jam flag_le_pairing_end ,mem_le_pairing_state 
+0x5bf3 024488 jam bt_evt_le_reconnect_complete ,mem_fifo_temp 
+0x5bf4 024489 branch ui_ipc_send_event 
+:      024492 le_pairing_sm_start:
+0x5bf5 024493 jam flag_le_pairing_send_recurity_req ,mem_le_pairing_state 
+0x5bf6 024494 branch le_send_smp_security_request 
+:      024496 le_pairing_sm_rcv_pairing_req:
+0x5bf7 024497 jam flag_le_pairing_auth ,mem_le_pairing_state 
+0x5bf8 024498 setarg timer_smp_pairing_timeout 
+0x5bf9 024499 arg smp_pairing_timer ,queue 
+0x5bfa 024500 branch timer_init 
+:      024502 le_pairing_sm_after_auth:
+0x5bfb 024503 fetch 1 ,mem_le_enc_state 
+0x5bfc 024504 beq flag_le_send_start_enc_rsp ,le_pairing_sm_after_auth_start_enc 
+0x5bfd 024505 rtn 
+:      024507 le_pairing_sm_after_auth_start_enc:
+0x5bfe 024508 jam flag_le_paring_send_enc_information ,mem_le_pairing_state 
+0x5bff 024509 jam bt_evt_le_enc_info ,mem_fifo_temp 
+0x5c00 024510 call ui_ipc_send_event 
+0x5c01 024511 call le_send_smp_encryption_information 
+0x5c02 024512 fetch 1 ,mem_device_option 
+0x5c03 024513 rtnne dvc_op_module 
+0x5c04 024514 call le_check_master_addr_type 
+0x5c05 024515 rtn user 
+0x5c06 024516 branch app_ble_store_reconn_info 
+:      024519 le_pairng_sm_send_enc_information:
+0x5c07 024520 jam flag_le_paring_send_master_identification ,mem_le_pairing_state 
+0x5c08 024521 branch le_send_smp_master_identification 
+:      024523 le_pairng_sm_send_master_indentification:
+0x5c09 024524 fetch 1 ,mem_le_preq_resp_key_distribution 
+0x5c0a 024525 fetcht 1 ,mem_le_pres_resp_key_distribution 
+0x5c0b 024526 iand temp ,pdata 
+0x5c0c 024527 isolate0 le_initator_irk_bit ,pdata 
+0x5c0d 024528 branch le_parse_start_enc_rsp_after_auth_end ,true 
+0x5c0e 024529 jam flag_le_paring_send_indentity_information ,mem_le_pairing_state 
+0x5c0f 024530 branch le_send_smp_identity_information 
+:      024532 le_pairng_sm_send_indentity_information:
+0x5c10 024533 call le_send_smp_identity_address_information 
+0x5c11 024534 branch le_parse_start_enc_rsp_after_auth_end 
+:      024537 le_parse_start_enc_rsp_after_auth_end:
+0x5c12 024538 force smp_pairing_timer ,queue 
+0x5c13 024539 call timer_stop 
+0x5c14 024540 jam flag_le_enc_end ,mem_le_enc_state 
+0x5c15 024541 jam flag_le_pairing_end ,mem_le_pairing_state 
+0x5c16 024542 jam bt_evt_le_pairing_complete ,mem_fifo_temp 
+0x5c17 024543 branch ui_ipc_send_event 
+:      024547 le_secure_connect_sm:
+0x5c18 024548 bpatchx patch2f_1 ,mem_patch2f 
+0x5c19 024549 fetch 1 ,mem_le_pairing_mode 
+0x5c1a 024550 rtnbit0 le_pairing_mode_secure_connect_bit 
+0x5c1b 024551 fetch 1 ,mem_le_secure_connect_flag 
+0x5c1c 024552 rtnne le_sp_flag_commit_256 
+0x5c1d 024553 jam sp_flag_standby ,mem_le_secure_connect_flag 
+0x5c1e 024554 fetch 1 ,mem_le_secure_connect_state 
+0x5c1f 024555 beq le_sc_stat_receive_public_key ,le_sc_sm_receive_public_key 
+0x5c20 024556 beq le_sc_stat_wait_send_public_key ,le_sc_sm_wait_send_public_key 
+0x5c21 024557 beq le_sc_stat_send_public_key ,le_sc_sm_send_public_key 
+0x5c22 024558 beq le_sc_stat_receive_dhkey ,le_sc_sm_receive_dhkey 
+0x5c23 024559 beq le_sc_stat_wait_confirm_gkey ,le_sc_sm_wait_confirm_gkey 
+0x5c24 024560 beq le_sc_stat_passkey_wait_confirm ,le_sc_sm_passkey_wait_confirm 
+0x5c25 024561 rtn 
+:      024564 le_sc_sm_passkey_wait_confirm:
+0x5c26 024565 fetch 1 ,mem_authentication_passkey_times 
+0x5c27 024566 copy pdata ,queue 
+0x5c28 024567 increase 1 ,pdata 
+0x5c29 024568 store 1 ,mem_authentication_passkey_times 
+0x5c2a 024569 fetch 4 ,mem_le_tk 
+0x5c2b 024570 qisolate1 pdata 
+0x5c2c 024571 setarg 0x80 
+0x5c2d 024572 setflag true ,0 ,pdata 
+0x5c2e 024573 store 1 ,mem_passkey_1bit 
+0x5c2f 024574 branch le_sc_sm_ready_send_pairing_confirm 
+:      024576 le_sc_sm_wait_confirm_gkey:
+0x5c30 024577 fetch 1 ,mem_le_sc_confirm_gkey_flag 
+0x5c31 024578 jam flag_le_sc_confrim_null ,mem_le_sc_confirm_gkey_flag 
+0x5c32 024579 beq flag_le_sc_confrim_gkey_ok ,le_sc_confirm_gkey_ok 
+0x5c33 024580 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c34 024581 rtn 
+:      024583 le_sc_confirm_gkey_ok:
+0x5c35 024584 jam bt_evt_le_pairing_success ,mem_fifo_temp 
+0x5c36 024585 call ui_ipc_send_event 
+0x5c37 024586 jam flag_le_pairing_after_auth ,mem_le_pairing_state 
+0x5c38 024587 branch le_send_smp_pairing_dhkey_check 
+:      024589 le_sc_sm_receive_dhkey:
+0x5c39 024590 fetch 1 ,mem_sp_dhkey_invalid 
+0x5c3a 024591 beq sp_key_valid_256 ,le_dhkey_ready 
+0x5c3b 024592 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c3c 024593 rtn 
+:      024595 le_dhkey_ready:
+0x5c3d 024596 call function_f5 
+0x5c3e 024600 fetch 1 ,mem_le_pairing_mode 
+0x5c3f 024601 beq le_pairing_mode_secure_connect_passkey ,le_dhkey_ready_common 
+0x5c40 024602 call le_set_tk_0 
+:      024603 le_dhkey_ready_common:
+0x5c41 024604 call function_f6_ea 
+0x5c42 024605 arg mem_aes_cmac_temp ,rega 
+0x5c43 024606 arg mem_sp_confirm_remote ,regb 
+0x5c44 024607 arg 16 ,loopcnt 
+0x5c45 024608 call string_compare 
+0x5c46 024609 branch le_dhkey_check_ok ,zero 
+:      024610 le_dhkey_check_fail:
+0x5c47 024611 jam pairing_failed_dhkey_check_failed ,mem_le_ll_pairing_fail_reason 
+0x5c48 024612 branch le_send_pairing_failed 
+:      024615 le_dhkey_check_ok:
+0x5c49 024616 call sp_calc_check_publickey_256 
+0x5c4a 024617 nbranch le_dhkey_check_fail ,zero 
+0x5c4b 024618 jam 1 ,mem_ltk_exists 
+0x5c4c 024619 fetch 1 ,mem_le_pairing_mode 
+0x5c4d 024620 beq le_pairing_mode_secure_connect_justwork ,le_sc_confirm_gkey_ok 
+0x5c4e 024621 beq le_pairing_mode_secure_connect_passkey ,le_sc_confirm_gkey_ok 
+0x5c4f 024622 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c50 024623 jam le_sc_stat_wait_confirm_gkey ,mem_le_secure_connect_state 
+0x5c51 024624 rtn 
+:      024626 le_sc_sm_send_public_key:
+0x5c52 024627 fetch 1 ,mem_le_pairing_mode 
+0x5c53 024628 beq le_pairing_mode_secure_connect_passkey ,le_sc_sm_send_public_key_passkey 
+0x5c54 024629 jam 0 ,mem_passkey_1bit 
+:      024630 le_sc_sm_ready_send_pairing_confirm:
+0x5c55 024631 branch le_send_smp_pairing_confirm 
+:      024633 le_sc_sm_send_public_key_passkey:
+0x5c56 024637 jam 0 ,mem_authentication_passkey_times 
+0x5c57 024638 branch le_parse_smp_pairing_req_passkey 
+:      024641 le_sc_sm_receive_public_key:
+0x5c58 024642 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c59 024643 fetch 1 ,mem_le_sc_local_key_invalid 
+0x5c5a 024644 beq sp_key_valid_256 ,le_public_key_ready 
+0x5c5b 024646 rtn 
+:      024648 le_public_key_ready:
+0x5c5c 024649 jam le_sc_stat_wait_send_public_key ,mem_le_secure_connect_state 
+0x5c5d 024650 jam sp_key_invalid ,mem_sp_dhkey_invalid 
+0x5c5e 024651 branch sp_dhkey_calc_256 
+:      024653 le_sc_sm_wait_send_public_key:
+0x5c5f 024654 jam le_sp_flag_commit_256 ,mem_le_secure_connect_flag 
+0x5c60 024655 jam le_sc_stat_send_public_key ,mem_le_secure_connect_state 
+0x5c61 024656 branch le_send_smp_pairing_public_key 
+:      024660 le_fifo_malloc_tx_l2cap_smp:
+0x5c62 024661 force le_l2cap_cid_smp ,regb 
+0x5c63 024662 branch le_fifo_malloc_tx_l2cap 
+:      024666 le_parse_ll:
+0x5c64 024667 fetch 1 ,mem_le_rxbuf + 2 
+0x5c65 024668 beq ll_connection_update_req ,le_parse_connection_update_req 
+0x5c66 024669 beq ll_channel_map_req ,le_parse_channel_map_req 
+0x5c67 024670 beq ll_terminate_ind ,le_parse_terminate_ind 
+0x5c68 024671 beq ll_enc_req ,le_parse_enc_req 
+0x5c69 024672 beq ll_enc_rsp ,le_parse_enc_rsp 
+0x5c6a 024673 beq ll_start_enc_req ,le_parse_start_enc_req 
+0x5c6b 024674 beq ll_start_enc_rsp ,le_parse_start_enc_rsp 
+0x5c6c 024675 beq ll_unknown_rsp ,le_parse_unknown_rsp 
+0x5c6d 024676 beq ll_feature_req ,le_parse_feature_req 
+0x5c6e 024677 beq ll_feature_rsp ,le_parse_feature_rsp 
+0x5c6f 024678 beq ll_pause_enc_req ,le_parse_pause_enc_req 
+0x5c70 024679 beq ll_pause_enc_rsp ,le_parse_pause_enc_rsp 
+0x5c71 024680 beq ll_version_ind ,le_parse_version_ind 
+0x5c72 024681 beq ll_reject_ind ,le_parse_reject_ind 
+0x5c73 024682 beq ll_ping_req ,le_parse_ping_req 
+0x5c74 024683 beq ll_ping_rsp ,le_parse_ping_rsp 
+0x5c75 024684 arg 2 ,rega 
+0x5c76 024685 arg ll_unknown_rsp ,regb 
+0x5c77 024686 call le_fifo_malloc_tx_ll 
+0x5c78 024687 fetch 1 ,mem_le_rxbuf + 2 
+0x5c79 024688 istore 1 ,contw 
+0x5c7a 024689 rtn 
+:      024692 le_parse_connection_update_req:
+0x5c7b 024693 ifetch 9 ,contr 
+0x5c7c 024694 store 9 ,mem_le_new_param 
+0x5c7d 024695 ifetch 2 ,contr 
+0x5c7e 024696 store 2 ,mem_le_instant 
+0x5c7f 024697 fetch 1 ,mem_le_state 
+0x5c80 024698 set1 lestate_update_param ,pdata 
+0x5c81 024699 store 1 ,mem_le_state 
+0x5c82 024700 rtn 
+:      024702 le_parse_channel_map_req:
+0x5c83 024703 ifetch 5 ,contr 
+0x5c84 024704 store 5 ,mem_le_new_map 
+0x5c85 024705 ifetch 2 ,contr 
+0x5c86 024706 store 2 ,mem_le_instant 
+0x5c87 024707 fetcht 2 ,mem_le_event_count 
+0x5c88 024708 isub temp ,null 
+0x5c89 024709 nbranch le_parse_terminate_ind ,positive 
+0x5c8a 024710 fetch 1 ,mem_le_state 
+0x5c8b 024711 set1 lestate_update_map ,pdata 
+0x5c8c 024712 store 1 ,mem_le_state 
+0x5c8d 024713 rtn 
+:      024716 le_parse_terminate_ind:
+0x5c8e 024717 setarg 20 
+0x5c8f 024718 store 2 ,mem_le_superto 
+0x5c90 024719 store 2 ,mem_le_init_superto 
+0x5c91 024720 rtn 
+:      024722 le_send_terminate_ind_user_terminated:
+0x5c92 024723 arg error_remote_user_terminated_connection ,regc 
+:      024726 le_send_terminate_ind:
+0x5c93 024727 arg 2 ,rega 
+0x5c94 024728 arg ll_terminate_ind ,regb 
+0x5c95 024729 call le_fifo_malloc_tx_ll 
+0x5c96 024730 copy regc ,pdata 
+0x5c97 024731 istore 1 ,contw 
+0x5c98 024732 rtn 
+:      024734 le_parse_feature_req:
+:      024736 le_send_feature_rsp:
+0x5c99 024737 arg 9 ,rega 
+0x5c9a 024738 arg ll_feature_rsp ,regb 
+0x5c9b 024739 call le_fifo_malloc_tx_ll 
+0x5c9c 024740 setarg param_le_features 
+0x5c9d 024741 istore 8 ,contw 
+0x5c9e 024742 rtn 
+:      024745 le_parse_version_ind:
+0x5c9f 024746 rtn master 
+:      024747 le_send_version_ind:
+0x5ca0 024748 arg 6 ,rega 
+0x5ca1 024749 arg ll_version_ind ,regb 
+0x5ca2 024750 call le_fifo_malloc_tx_ll 
+0x5ca3 024751 fetch 5 ,mem_lmp_version 
+0x5ca4 024752 istore 5 ,contw 
+0x5ca5 024753 rtn 
+:      024756 le_parse_ping_req:
+0x5ca6 024757 arg ll_ping_rsp ,regb 
+0x5ca7 024758 branch le_send_ll_one_lenth 
+:      024761 le_send_ll_one_lenth:
+0x5ca8 024762 arg 1 ,rega 
+0x5ca9 024763 branch le_fifo_malloc_tx_ll 
+:      024766 le_parse_enc_req:
+0x5caa 024767 ifetch 8 ,contr 
+0x5cab 024768 store 8 ,mem_le_rand 
+0x5cac 024769 ifetch 2 ,contr 
+0x5cad 024770 store 2 ,mem_le_ediv 
+0x5cae 024771 ifetch 8 ,contr 
+0x5caf 024772 store 8 ,mem_le_skdm 
+0x5cb0 024773 ifetch 4 ,contr 
+0x5cb1 024774 store 4 ,mem_le_ivm 
+0x5cb2 024775 call le_send_enc_rsp 
+0x5cb3 024776 bpatchx patch2f_2 ,mem_patch2f 
+0x5cb4 024777 fetch 1 ,mem_le_pairing_state 
+0x5cb5 024778 beq flag_le_pairing_after_auth ,le_parse_enc_req_after_auth 
+0x5cb6 024779 fetch 1 ,mem_le_configuration 
+0x5cb7 024780 bbit1 bit_ble_pairing_fixed_ltk ,le_parse_enc_req_fixed_ltk 
+0x5cb8 024781 fetch 1 ,mem_nv_data_number 
+0x5cb9 024782 ncall load_device_list_mode_4 ,blank 
+0x5cba 024783 fetch 1 ,mem_ltk_exists 
+0x5cbb 024784 beq 0 ,le_ltk_lost 
+:      024785 le_parse_enc_req_after_auth:
+0x5cbc 024786 jam flag_le_rcv_enc_start ,mem_le_enc_state 
+0x5cbd 024787 call le_send_start_enc_req 
+0x5cbe 024788 branch generate_sk 
+:      024790 le_parse_enc_req_fixed_ltk:
+0x5cbf 024791 jam 1 ,mem_ltk_exists 
+0x5cc0 024792 arg mem_le_fixed_ltk ,contr 
+0x5cc1 024793 arg mem_le_ltk ,contw 
+0x5cc2 024794 call memcpy16 
+0x5cc3 024795 branch le_parse_enc_req_after_auth 
+:      024798 le_ltk_lost:
+0x5cc4 024799 bpatchx patch2f_3 ,mem_patch2f 
+0x5cc5 024800 jam flag_le_enc_null ,mem_le_enc_state 
+0x5cc6 024801 jam flag_le_enc_null ,mem_le_pairing_state 
+0x5cc7 024802 jam bt_evt_le_ltk_lost ,mem_fifo_temp 
+0x5cc8 024803 branch ui_ipc_send_event 
+:      024805 le_send_reject_ind:
+0x5cc9 024806 arg 2 ,rega 
+0x5cca 024807 arg ll_reject_ind ,regb 
+0x5ccb 024808 call le_fifo_malloc_tx_ll 
+0x5ccc 024809 setarg le_err_pin_or_key_missing 
+0x5ccd 024810 istore 1 ,contw 
+0x5cce 024811 rtn 
+:      024813 le_send_enc_rsp:
+0x5ccf 024814 arg mem_le_skds ,contw 
+0x5cd0 024815 force 8 ,loopcnt 
+0x5cd1 024816 call generate_random_loop 
+0x5cd2 024817 arg mem_le_ivs ,contw 
+0x5cd3 024818 force 4 ,loopcnt 
+0x5cd4 024819 call generate_random_loop 
+0x5cd5 024820 arg 13 ,rega 
+0x5cd6 024821 arg ll_enc_rsp ,regb 
+0x5cd7 024822 call le_fifo_malloc_tx_ll 
+0x5cd8 024823 fetch 8 ,mem_le_skds 
+0x5cd9 024824 istore 8 ,contw 
+0x5cda 024825 fetch 4 ,mem_le_ivs 
+0x5cdb 024826 istore 4 ,contw 
+0x5cdc 024827 rtn 
+:      024829 le_send_start_enc_req:
+0x5cdd 024830 arg ll_start_enc_req ,regb 
+0x5cde 024831 branch le_send_ll_one_lenth 
+:      024833 le_send_start_enc_rsp:
+0x5cdf 024834 arg ll_start_enc_rsp ,regb 
+0x5ce0 024835 branch le_send_ll_one_lenth 
+:      024838 le_parse_enc_rsp:
+0x5ce1 024839 ifetch 8 ,contr 
+0x5ce2 024840 store 8 ,mem_le_skds 
+0x5ce3 024841 ifetch 4 ,contr 
+0x5ce4 024842 store 4 ,mem_le_ivs 
+0x5ce5 024843 branch generate_sk 
+:      024845 le_parse_start_enc_req:
+0x5ce6 024846 fetch 1 ,mem_le_state 
+0x5ce7 024847 set1 lestate_encryption ,pdata 
+0x5ce8 024848 store 1 ,mem_le_state 
+0x5ce9 024849 rtn 
+:      024851 le_parse_start_enc_rsp:
+0x5cea 024852 rtn master 
+0x5ceb 024853 jam bt_evt_le_start_enc ,mem_fifo_temp 
+0x5cec 024854 call ui_ipc_send_event 
+0x5ced 024855 jam flag_le_send_start_enc_rsp ,mem_le_enc_state 
+0x5cee 024856 branch le_send_start_enc_rsp 
+:      024858 le_parse_pause_enc_req:
+0x5cef 024859 jam flag_le_enc_pause ,mem_le_enc_state 
+0x5cf0 024860 call le_send_pause_enc_rsp 
+0x5cf1 024861 jam bt_evt_le_pause_enc ,mem_fifo_temp 
+0x5cf2 024862 branch ui_ipc_send_event 
+:      024864 le_send_pause_enc_rsp:
+0x5cf3 024865 arg ll_pause_enc_rsp ,regb 
+0x5cf4 024866 branch le_send_ll_one_lenth 
+:      024869 le_parse_feature_rsp:
+:      024870 le_parse_unknown_rsp:
+:      024871 le_parse_pause_enc_rsp:
+:      024872 le_parse_reject_ind:
+:      024873 le_parse_ping_rsp:
+0x5cf5 024874 rtn 
+:      024881 init_lmp:
+0x5cf6 024882 rtn wake 
+:      024883 init_lmp_work:
+0x5cf7 024884 bpatchx patch2f_4 ,mem_patch2f 
+0x5cf8 024885 setarg 0 
+0x5cf9 024886 store 1 ,mem_lmp_to_send 
+0x5cfa 024887 store 1 ,mem_conn_sm 
+0x5cfb 024888 store 1 ,mem_lmo_opcode1 
+0x5cfc 024889 store 1 ,mem_lmo_opcode2 
+0x5cfd 024890 store 1 ,mem_esco_addr 
+0x5cfe 024891 store 1 ,mem_auth_enable 
+0x5cff 024892 store 1 ,mem_connection_options 
+0x5d00 024893 store 1 ,mem_pairing_auth 
+0x5d01 024894 jam switch_flag_init ,mem_switch_flag 
+0x5d02 024895 jam 0 ,mem_switch_fail_master_count 
+0x5d03 024896 jam null_encryp ,mem_wait_encryption 
+:      024897 init_lmp_reinit:
+0x5d04 024898 jam 0 ,mem_pairing_auth 
+0x5d05 024899 jam 0 ,mem_sp_localsm 
+0x5d06 024900 jam 0 ,mem_lmp_conn_state 
+:      024902 parse_rx_done:
+0x5d07 024903 rtn 
+:      024905 parse_lmp:
+0x5d08 024906 bpatchx patch2f_5 ,mem_patch2f 
+0x5d09 024907 call setlocalsm_master ,master 
+0x5d0a 024908 ncall setlocalsm_slave ,master 
+0x5d0b 024909 call lmo_fifo_check 
+0x5d0c 024910 nrtn blank 
+0x5d0d 024911 fetch 1 ,mem_state_map 
+0x5d0e 024912 rtnbit0 smap_rxlmp 
+0x5d0f 024913 set0 smap_rxlmp ,pdata 
+0x5d10 024914 set0 mark_rxbuf_inuse ,mark 
+0x5d11 024915 store 1 ,mem_state_map 
+0x5d12 024916 fetch 1 ,mem_rxbuf 
+0x5d13 024917 fetcht 1 ,mem_state_map 
+0x5d14 024918 isolate1 smap_lmptidinit ,pdata 
+0x5d15 024919 setflag true ,smap_lmptid ,temp 
+0x5d16 024920 storet 1 ,mem_state_map 
+0x5d17 024921 and_into 0x2 ,temp 
+0x5d18 024922 storet 1 ,mem_lmo_tid2 
+0x5d19 024923 fetcht 1 ,mem_state_map 
+0x5d1a 024924 rshift pdata ,pdata 
+0x5d1b 024925 store 1 ,mem_lmi_opcode2 
+0x5d1c 024926 bpatchx patch2f_6 ,mem_patch2f 
+0x5d1d 024927 fetch 1 ,mem_lmi_opcode2 
+0x5d1e 024928 beq lmp_escape ,parse_lmp_escape 
+0x5d1f 024929 beq lmp_accepted ,parse_lmp_accepted 
+0x5d20 024930 beq lmp_not_accepted ,parse_lmp_not_accepted 
+0x5d21 024931 beq lmp_set_afh ,parse_lmp_set_afh 
+0x5d22 024932 beq lmp_clkoffset_req ,parse_lmp_clkoffset_req 
+0x5d23 024933 beq lmp_encryption_mode_req ,parse_lmp_encryption_mode_req 
+0x5d24 024934 beq lmp_encryption_key_size_req ,parse_lmp_crypt_key 
+0x5d25 024935 beq lmp_auto_rate ,parse_lmp_auto_rate 
+0x5d26 024936 beq lmp_test_control ,parse_lmp_test_control 
+0x5d27 024937 beq lmp_test_activate ,parse_lmp_test_activate 
+0x5d28 024938 beq lmp_setup_complete ,parse_lmp_setup_complete 
+0x5d29 024939 beq lmp_supervision_timeout ,parse_lmp_supervision_timeout 
+0x5d2a 024940 beq lmp_features_req ,parse_lmp_features_req 
+0x5d2b 024941 beq lmp_host_connection_req ,parse_lmp_conn_req 
+0x5d2c 024942 beq lmp_version_req ,parse_lmp_version_req 
+0x5d2d 024943 beq lmp_version_res ,parse_lmp_version_res 
+0x5d2e 024944 beq lmp_detach ,parse_lmp_detach 
+0x5d2f 024945 beq lmp_max_slot ,parse_lmp_max_slot 
+0x5d30 024946 beq lmp_max_slot_req ,parse_lmp_max_slot_req 
+0x5d31 024947 beq lmp_name_req ,parse_lmp_name_req 
+0x5d32 024948 beq lmp_name_res ,parse_lmp_name_res 
+0x5d33 024949 beq lmp_features_res ,parse_lmp_features_res 
+0x5d34 024950 beq lmp_comb_key ,parse_lmp_comb_key 
+0x5d35 024951 beq lmp_au_rand ,parse_lmp_au_rand 
+0x5d36 024952 beq lmp_in_rand ,parse_lmp_in_rand 
+0x5d37 024953 beq lmp_sres ,parse_lmp_sres 
+0x5d38 024954 beq lmp_incr_power_req ,parse_lmp_incr_power 
+0x5d39 024955 beq lmp_decr_power_req ,parse_lmp_decr_power 
+0x5d3a 024956 beq lmp_max_power ,parse_lmp_max_power 
+0x5d3b 024957 beq lmp_min_power ,parse_lmp_min_power 
+0x5d3c 024958 beq lmp_page_mode_req ,parse_lmp_page_mode_req 
+0x5d3d 024959 beq lmp_page_scan_mode_req ,parse_lmp_page_scan_mode_req 
+0x5d3e 024960 beq lmp_preferred_rate ,parse_lmp_preferred_rate 
+0x5d3f 024961 beq lmp_slot_offset ,parse_lmp_slot_offset 
+0x5d40 024962 beq lmp_sniff_req ,parse_lmp_sniff_req 
+0x5d41 024963 beq lmp_start_encryption_req ,parse_lmp_start_encryption_req 
+0x5d42 024964 beq lmp_stop_encryption_req ,parse_lmp_stop_encryption_req 
+0x5d43 024965 beq lmp_switch_req ,parse_lmp_switch_req 
+0x5d44 024966 beq lmp_temp_rand ,parse_lmp_temp_rand 
+0x5d45 024967 beq lmp_temp_key ,parse_lmp_temp_key 
+0x5d46 024968 beq lmp_timing_accuracy_req ,parse_lmp_timing_accuracy_req 
+0x5d47 024969 beq lmp_timing_accuracy_res ,parse_lmp_timing_accuracy_res 
+0x5d48 024970 beq lmp_unit_key ,parse_lmp_unit_key 
+0x5d49 024971 beq lmp_unsniff_req ,parse_lmp_unsniff_req 
+0x5d4a 024972 beq lmp_use_semi_permanent_key ,parse_lmp_use_semi_permanend_key 
+0x5d4b 024973 beq lmp_encapsulated_header ,parse_lmp_encapsulated_header 
+0x5d4c 024974 beq lmp_encapsulated_payload ,parse_lmp_encapsulated_payload 
+0x5d4d 024975 beq lmp_simple_pairing_confirm ,parse_simple_pairing_confirm 
+0x5d4e 024976 beq lmp_simple_pairing_number ,parse_lmp_simple_pairing_number 
+0x5d4f 024977 beq lmp_dhkey_check ,parse_dhkey_check 
+0x5d50 024978 beq lmp_clkoffset_res ,parse_lmp_clkoffset_res 
+0x5d51 024979 beq lmp_enc_key_size_mask_req ,parse_enc_key_size_mask_req 
+:      024982 reject_unknown_packet:
+0x5d52 024983 jam unknown_lmp_pdu ,mem_lmo_reason2 
+:      024984 reject_lmp_packet:
+0x5d53 024985 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5d54 024986 rtn 
+:      024988 parse_lmp_clkoffset_req:
+0x5d55 024989 jam lmp_clkoffset_res ,mem_lmo_opcode2 
+0x5d56 024990 rtn 
+:      024992 parse_enc_key_size_mask_req:
+0x5d57 024993 jam lmp_enc_key_size_mask_res ,mem_lmo_opcode2 
+0x5d58 024994 rtn 
+:      024996 parse_lmp_set_afh:
+0x5d59 024997 fetch 4 ,mem_rxbuf + 1 
+0x5d5a 024998 lshift pdata ,pdata 
+0x5d5b 024999 store 4 ,mem_afh_instant 
+0x5d5c 025000 fetch 1 ,mem_rxbuf + 5 
+0x5d5d 025001 store 1 ,mem_afh_new_mod 
+0x5d5e 025002 fetch 5 ,mem_rxbuf + 6 
+0x5d5f 025003 store 5 ,mem_afh_map_new 
+0x5d60 025004 fetch 5 ,mem_rxbuf + 11 
+0x5d61 025005 istore 5 ,contw 
+0x5d62 025006 fetch 1 ,mem_mode 
+0x5d63 025007 set1 afh_change ,pdata 
+0x5d64 025008 store 1 ,mem_mode 
+0x5d65 025009 rtn 
+:      025010 parse_lmp_escape:
+0x5d66 025011 bpatchx patch2f_7 ,mem_patch2f 
+0x5d67 025012 fetch 1 ,mem_rxbuf + 1 
+0x5d68 025013 set1 7 ,pdata 
+0x5d69 025014 store 1 ,mem_lmi_opcode2 
+0x5d6a 025015 beq lmp_ext_accepted ,parse_lmpext_accepted 
+0x5d6b 025016 beq lmp_not_accepted_ext ,parse_lmpext_not_accepted 
+0x5d6c 025017 beq lmp_sniff_subrating_req ,parse_lmp_sniff_subrating_req 
+0x5d6d 025018 beq lmp_sniff_subrating_res ,parse_lmp_sniff_subrating_res 
+0x5d6e 025019 beq lmp_packet_type_table_req ,parse_lmpext_packet_type_table_req 
+0x5d6f 025020 beq lmp_ext_features_req ,parse_lmpext_features_req 
+0x5d70 025021 beq lmp_ext_features_res ,parse_lmpext_features_res 
+0x5d71 025022 beq lmp_ext_chn_classification_req ,parse_lmpext_chn_classification_req 
+0x5d72 025023 beq lmp_pause_encryption_req ,parse_lmpext_pause_encrypt 
+0x5d73 025024 beq lmp_resume_encryption_req ,parse_lmpext_resume_encrypt 
+0x5d74 025025 beq lmp_io_cap_req ,parse_lmpext_iocap_req 
+0x5d75 025026 beq lmp_io_cap_res ,parse_lmpext_iocap_res 
+0x5d76 025027 rtneq lmp_ext_features_res 
+:      025030 reject_unknown_ext_packet:
+0x5d77 025031 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
+0x5d78 025032 jam unknown_lmp_pdu ,mem_lmo_reason2 
+0x5d79 025034 rtn 
+:      025035 parse_lmpext_chn_classification_req:
+0x5d7a 025036 jam lmp_not_accepted_ext ,mem_lmo_opcode2 
+0x5d7b 025037 jam not_support_chn_classification ,mem_lmo_reason2 
+0x5d7c 025038 rtn 
+:      025040 parse_lmpext_iocap_req:
+0x5d7d 025041 call iocap_lmpext_load 
+0x5d7e 025042 jam lmp_io_cap_res ,mem_lmo_opcode2 
+0x5d7f 025043 rtn 
+:      025045 parse_lmpext_iocap_res:
+0x5d80 025046 call iocap_lmpext_load 
+0x5d81 025047 branch iocap_lmpext_common 
+:      025049 iocap_lmpext_load:
+0x5d82 025050 arg mem_sp_iocap_remote ,contw 
+0x5d83 025051 fetch 3 ,mem_rxbuf + 2 
+0x5d84 025052 istore 3 ,contw 
+0x5d85 025053 rtn 
+:      025055 iocap_lmpext_common:
+0x5d86 025056 branch master_set_mem_master_sp_flag ,true 
+0x5d87 025057 rtn 
+:      025058 parse_lmpext_accepted:
+0x5d88 025059 fetch 1 ,mem_rxbuf + 3 
+0x5d89 025060 set1 7 ,pdata 
+0x5d8a 025061 store 1 ,mem_lmi_accepted_opcode 
+0x5d8b 025062 beq lmp_packet_type_table_req ,parse_lmpext_accepted_ptt 
+0x5d8c 025063 rtn 
+:      025066 parse_lmpext_not_accepted:
+0x5d8d 025067 fetch 1 ,mem_rxbuf + 3 
+0x5d8e 025068 set1 7 ,pdata 
+0x5d8f 025069 store 1 ,mem_lmi_accepted_opcode 
+0x5d90 025070 beq lmp_packet_type_table_req ,parse_lmpext_not_accepted_ptt 
+0x5d91 025071 rtn 
+:      025073 parse_lmpext_accepted_ptt:
+0x5d92 025074 fetch 1 ,mem_ptt 
+0x5d93 025075 fetcht 1 ,mem_state_map 
+0x5d94 025076 nsetflag blank ,smap_edr ,temp 
+0x5d95 025077 storet 1 ,mem_state_map 
+:      025078 parse_lmpext_not_accepted_ptt:
+0x5d96 025079 fetch 1 ,mem_state 
+0x5d97 025080 rtnbit0 state_init_seq 
+0x5d98 025081 set0 state_init_seq ,pdata 
+0x5d99 025082 store 1 ,mem_state 
+0x5d9a 025083 fetch 1 ,mem_auth_enable 
+0x5d9b 025084 nrtn blank 
+0x5d9c 025085 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x5d9d 025086 rtn 
+:      025088 parse_lmpext_pause_encrypt:
+0x5d9e 025089 nbranch parse_lmpext_pause_encrypt_slave ,master 
+0x5d9f 025090 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+0x5da0 025091 branch tid_reply 
+:      025093 parse_lmpext_pause_encrypt_slave:
+0x5da1 025094 jam lmp_pause_encryption_req ,mem_lmo_opcode2 
+0x5da2 025095 rtn 
+:      025097 parse_lmpext_resume_encrypt:
+0x5da3 025100 call tid_reply 
+0x5da4 025101 branch lmp_start_encryption 
+:      025103 parse_lmpext_features_req:
+0x5da5 025104 jam lmp_ext_features_res ,mem_lmo_opcode2 
+0x5da6 025105 rtn 
+:      025107 parse_lmpext_features_res:
+0x5da7 025108 fetcht 1 ,mem_rxbuf + 4 
+0x5da8 025109 and temp ,0x1 ,temp 
+0x5da9 025110 storet 1 ,mem_remote_sppcap 
+0x5daa 025111 fetch 1 ,mem_hci_cmd 
+0x5dab 025112 bne hci_cmd_wait_remote_ext_feature ,parse_lmpext_features_res_not_hci 
+0x5dac 025113 jam 0 ,mem_hci_cmd 
+:      025114 parse_lmpext_features_res_not_hci:
+0x5dad 025115 fetch 1 ,mem_conn_sm 
+0x5dae 025116 rtnne conn_sm_wait_features_ext 
+0x5daf 025117 jam conn_sm_send_conn_req ,mem_conn_sm 
+0x5db0 025118 branch process_conn_sm 
+:      025120 parse_lmp_accepted:
+0x5db1 025121 bpatchx patch30_0 ,mem_patch30 
+0x5db2 025122 fetch 1 ,mem_rxbuf + 1 
+0x5db3 025123 store 1 ,mem_lmi_accepted_opcode 
+0x5db4 025124 beq lmp_host_connection_req ,parse_lmp_accepted_hostconn 
+0x5db5 025125 beq lmp_in_rand ,parse_lmp_accepted_inrand 
+0x5db6 025126 beq lmp_encryption_mode_req ,parse_lmp_accepted_enc_mode 
+0x5db7 025127 beq lmp_encryption_key_size_req ,parse_lmp_accepted_enc_keysize 
+0x5db8 025128 beq lmp_start_encryption_req ,parse_lmp_accepted_start_enc 
+0x5db9 025129 beq lmp_stop_encryption_req ,parse_lmp_accepted_stop_enc 
+0x5dba 025130 beq lmp_unsniff_req ,parse_lmp_accepted_unsniff_req 
+0x5dbb 025131 beq lmp_sniff_req ,parse_lmp_accepted_sniff_req 
+0x5dbc 025132 beq lmp_switch_req ,parse_lmp_accepted_switch 
+0x5dbd 025134 beq lmp_encapsulated_header ,parse_lmp_accepted_encapsulated_header 
+0x5dbe 025135 beq lmp_encapsulated_payload ,parse_lmp_accepted_encapsulated_payload 
+0x5dbf 025136 beq lmp_simple_pairing_number ,parse_lmp_accepted_simple_pairing_number 
+0x5dc0 025137 beq lmp_dhkey_check ,parse_lmp_accepted_dhkey_check 
+0x5dc1 025138 rtn 
+:      025140 parse_lmp_not_accepted:
+0x5dc2 025141 bpatchx patch30_1 ,mem_patch30 
+0x5dc3 025142 fetch 1 ,mem_rxbuf + 1 
+0x5dc4 025143 store 1 ,mem_lmi_accepted_opcode 
+0x5dc5 025144 beq lmp_name_req ,parse_lmp_not_accepted_name_req 
+0x5dc6 025145 beq lmp_host_connection_req ,parse_lmp_not_accepted_hostconn 
+0x5dc7 025146 beq lmp_au_rand ,parse_lmp_not_accepted_aurand 
+0x5dc8 025147 beq lmp_in_rand ,parse_lmp_not_accepted_inrand 
+0x5dc9 025148 beq lmp_switch_req ,parse_lmp_not_accepted_switch 
+0x5dca 025150 beq lmp_simple_pairing_number ,parse_lmp_not_accepted_simple_pairing_number 
+0x5dcb 025151 beq lmp_dhkey_check ,parse_lmp_not_accepted_dhkey_check 
+0x5dcc 025152 beq lmp_unsniff_req ,parse_lmp_not_accepted_unsniff_req 
+0x5dcd 025153 beq lmp_sniff_req ,parse_lmp_not_acdcept_sniff_req 
+0x5dce 025154 rtn 
+:      025156 parse_lmp_accepted_switch:
+0x5dcf 025157 jam bt_evt_switch_accept ,mem_fifo_temp 
+0x5dd0 025158 call ui_ipc_send_event 
+0x5dd1 025159 branch role_switch_prepare0 
+:      025160 parse_lmp_not_accepted_switch:
+0x5dd2 025161 jam bt_evt_switch_not_accept ,mem_fifo_temp 
+0x5dd3 025162 call ui_ipc_send_event 
+0x5dd4 025163 jam switch_flag_not_accept ,mem_switch_flag 
+0x5dd5 025164 setarg timer_switch_waite 
+0x5dd6 025165 arg switch_wait_timer ,queue 
+0x5dd7 025166 branch timer_init 
+:      025169 parse_lmp_accepted_hostconn:
+0x5dd8 025172 fetch 1 ,mem_lmp_conn_state 
+0x5dd9 025173 set1 received_conn_req ,pdata 
+0x5dda 025174 store 1 ,mem_lmp_conn_state 
+0x5ddb 025175 jam bt_evt_bb_connected ,mem_fifo_temp 
+0x5ddc 025176 call ui_ipc_send_event 
+0x5ddd 025177 jam lmp_packet_type_table_req ,mem_lmo_opcode2 
+:      025179 parse_lmp_accepted_hostconn_ctn:
+0x5dde 025181 fetch 1 ,mem_conn_sm 
+0x5ddf 025182 bne conn_sm_wait_conn_accept ,parse_rx_done 
+0x5de0 025185 jam conn_sm_auth_pair ,mem_conn_sm 
+0x5de1 025186 rtn 
+:      025194 parse_lmp_not_accepted_hostconn:
+0x5de2 025195 jam acl_connection_already_exists ,mem_disconn_reason_send 
+0x5de3 025196 jam lmp_detach ,mem_lmo_opcode2 
+0x5de4 025198 jam conn_sm_standby ,mem_conn_sm 
+0x5de5 025200 branch parse_rx_done ,true 
+0x5de6 025201 rtn 
+:      025203 parse_lmp_accepted_inrand:
+0x5de7 025204 fetch 1 ,mem_link_key_exists 
+0x5de8 025205 nrtn blank 
+0x5de9 025206 call clear_linkkey 
+0x5dea 025207 call lmp_generate_key 
+0x5deb 025208 rtn master 
+0x5dec 025209 set1 mark_slave_in_rand_accepted ,mark 
+0x5ded 025210 rtn 
+:      025212 parse_lmp_accepted_enc_mode:
+0x5dee 025213 nrtn master 
+0x5def 025214 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
+0x5df0 025215 fetch 1 ,mem_state_map 
+0x5df1 025216 rtnbit0 smap_encryption 
+0x5df2 025217 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+0x5df3 025218 rtn 
+:      025220 parse_lmp_accepted_enc_keysize:
+0x5df4 025221 branch lmp_start_encryption 
+:      025223 parse_lmp_accepted_start_enc:
+0x5df5 025224 call send_create_conn_start_l2cap_timer_sm 
+0x5df6 025225 fetch 1 ,mem_state 
+0x5df7 025226 rtnbit1 state_conn_comp 
+0x5df8 025227 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x5df9 025228 fetch 1 ,mem_conn_sm 
+0x5dfa 025229 rtnne conn_sm_encrypt_wait 
+0x5dfb 025230 jam conn_sm_encrypt_wait_clear ,mem_conn_sm 
+0x5dfc 025231 rtn 
+:      025233 parse_lmp_accepted_stop_enc:
+0x5dfd 025241 rtn 
+:      025243 parse_lmp_not_accepted_aurand:
+:      025244 parse_lmp_not_accepted_aurand_send_detach:
+0x5dfe 025245 jam lmp_detach ,mem_lmo_opcode2 
+0x5dff 025246 jam other_end_terminated ,mem_disconn_reason_send 
+0x5e00 025247 rtn 
+:      025249 parse_lmp_not_accepted_inrand:
+0x5e01 025250 fetch 1 ,mem_rxbuf + 2 
+0x5e02 025251 beq key_missing ,parse_lmp_inrand_key_missing 
+0x5e03 025252 rtnne pairing_not_allowed 
+0x5e04 025253 jam pairing_not_allowed ,mem_disconn_reason_send 
+0x5e05 025254 jam lmp_detach ,mem_lmo_opcode2 
+0x5e06 025255 rtn 
+:      025256 parse_lmp_inrand_key_missing:
+0x5e07 025257 jam key_missing ,mem_disconn_reason_send 
+0x5e08 025258 jam lmp_detach ,mem_lmo_opcode2 
+0x5e09 025259 rtn 
+:      025261 parse_lmp_not_accepted_name_req:
+0x5e0a 025262 rtn 
+:      025264 parse_lmp_not_accepted_simple_pairing_number:
+0x5e0b 025265 jam sp_stat_null ,mem_sp_state 
+0x5e0c 025266 jam lmp_detach ,mem_lmo_opcode2 
+0x5e0d 025267 branch parse_rx_done 
+:      025269 parse_lmp_not_accepted_dhkey_check:
+0x5e0e 025270 jam sp_stat_null ,mem_sp_state 
+0x5e0f 025271 jam lmp_detach ,mem_lmo_opcode2 
+0x5e10 025272 branch parse_rx_done 
+:      025273 parse_lmp_not_accepted_unsniff_req:
+0x5e11 025274 jam bt_evt_unsniff_not_accept ,mem_fifo_temp 
+0x5e12 025275 branch ui_ipc_send_event 
+:      025277 parse_lmp_accepted_unsniff_req:
+0x5e13 025278 jam bt_evt_unsniff_accept ,mem_fifo_temp 
+0x5e14 025279 call ui_ipc_send_event 
+0x5e15 025280 branch sniff_exit 
+:      025282 parse_lmp_accepted_sniff_req:
+0x5e16 025283 jam bt_evt_sniff_accept ,mem_fifo_temp 
+0x5e17 025284 call ui_ipc_send_event 
+0x5e18 025285 setarg 0 
+0x5e19 025286 store 2 ,mem_dsniff 
+0x5e1a 025287 fetch 2 ,mem_sniff_param_interval 
+0x5e1b 025288 lshift pdata ,pdata 
+0x5e1c 025289 store 2 ,mem_tsniff 
+0x5e1d 025290 fetch 1 ,mem_sniff_param_attempt 
+0x5e1e 025291 store 1 ,mem_sniff_attempt 
+0x5e1f 025292 fetch 1 ,mem_sniff_param_timeout 
+0x5e20 025293 store 1 ,mem_sniff_timeout 
+0x5e21 025294 branch sniff_init 
+:      025296 parse_lmp_not_acdcept_sniff_req:
+0x5e22 025297 jam bt_evt_sniff_not_accept ,mem_fifo_temp 
+0x5e23 025298 branch ui_ipc_send_event 
+:      025300 parse_lmp_crypt_key:
+0x5e24 025301 fetcht 1 ,mem_rxbuf + 1 
+0x5e25 025302 storet 1 ,mem_key_size 
+0x5e26 025303 branch accept_lmp_msg 
+:      025305 parse_lmp_setup_complete:
+0x5e27 025306 fetch 1 ,mem_lmp_conn_state 
+0x5e28 025307 set1 received_setup_complete ,pdata 
+0x5e29 025308 store 1 ,mem_lmp_conn_state 
+0x5e2a 025309 rtnbit1 sent_setup_complete 
+0x5e2b 025310 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x5e2c 025311 branch parse_rx_done 
+:      025313 parse_lmp_max_slot:
+0x5e2d 025316 rtn 
+:      025318 parse_lmp_max_slot_req:
+0x5e2e 025319 fetch 1 ,mem_max_slot 
+0x5e2f 025320 fetcht 1 ,mem_rxbuf + 1 
+0x5e30 025321 isub temp ,null 
+0x5e31 025323 branch accept_lmp_msg ,positive 
+0x5e32 025324 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5e33 025325 jam unspecified_error ,mem_lmo_reason2 
+0x5e34 025326 jam lmp_max_slot_req ,mem_lmi_opcode2 
+0x5e35 025327 rtn 
+:      025329 parse_lmp_detach:
+0x5e36 025330 call prepare_disconnect 
+0x5e37 025331 branch accept_lmp_msg 
+:      025333 accept_lmp_msg:
+0x5e38 025334 jam lmp_accepted ,mem_lmo_opcode2 
+0x5e39 025335 rtn 
+:      025337 parse_lmp_incr_power:
+0x5e3a 025338 jam lmp_max_power ,mem_lmo_opcode2 
+0x5e3b 025339 rtn 
+:      025341 parse_lmp_decr_power:
+0x5e3c 025342 jam lmp_min_power ,mem_lmo_opcode2 
+0x5e3d 025343 rtn 
+:      025345 parse_lmp_version_res:
+0x5e3e 025346 fetch 1 ,mem_conn_sm 
+0x5e3f 025347 rtneq conn_sm_wait_version 
+0x5e40 025349 jam conn_sm_send_features ,mem_conn_sm 
+0x5e41 025351 rtn 
+:      025354 parse_lmp_auto_rate:
+0x5e42 025355 rtn 
+:      025357 parse_lmp_in_rand:
+0x5e43 025358 call lmp_copy_rand 
+0x5e44 025359 jam pincode_state_wait_pincode ,mem_pincode_state 
+0x5e45 025360 jam bt_evt_pincode_req ,mem_fifo_temp 
+0x5e46 025361 call ui_ipc_send_event 
+0x5e47 025363 call tid_check 
+0x5e48 025364 nbranch lmp_accept_inrand ,true 
+0x5e49 025366 nbranch parse_lmp_inrand_res ,master 
+0x5e4a 025367 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5e4b 025368 jam lmp_in_rand ,mem_lmi_opcode2 
+0x5e4c 025369 jam transaction_collision ,mem_lmo_reason2 
+0x5e4d 025370 rtn 
+:      025371 parse_lmp_inrand_res:
+0x5e4e 025372 fetch 1 ,mem_op 
+0x5e4f 025373 set1 op_inrand_req ,pdata 
+0x5e50 025374 store 1 ,mem_op 
+0x5e51 025375 rtn 
+:      025378 pop_tid_follow:
+0x5e52 025379 fetcht 1 ,mem_state_map 
+0x5e53 025380 nsetflag blank ,smap_lmptid ,temp 
+0x5e54 025381 storet 1 ,mem_state_map 
+0x5e55 025382 rtn 
+:      025385 push_tid_follow:
+0x5e56 025386 fetch 1 ,mem_lmo_tid2 
+0x5e57 025387 rshift pdata ,pdata 
+0x5e58 025388 and_into 1 ,pdata 
+0x5e59 025389 rtn 
+:      025391 parse_lmp_au_rand_moudle:
+0x5e5a 025392 fetch 1 ,mem_nv_data_number 
+0x5e5b 025393 rtn blank 
+0x5e5c 025394 fetch 1 ,mem_pairing_auth 
+0x5e5d 025395 call load_device_list ,blank 
+0x5e5e 025396 rtn 
+:      025398 parse_lmp_au_rand:
+0x5e5f 025399 call parse_lmp_au_rand_moudle 
+0x5e60 025400 call push_tid_follow 
+0x5e61 025401 store 1 ,mem_sres_tid 
+0x5e62 025402 call lmp_copy_rand 
+0x5e63 025403 jam lmp_sres ,mem_lmo_opcode2 
+0x5e64 025404 fetch 1 ,mem_link_key_exists 
+0x5e65 025405 nrtn blank 
+0x5e66 025406 fetch 1 ,mem_state 
+0x5e67 025407 rtnbit1 state_combkey 
+0x5e68 025408 jam key_missing ,mem_lmo_reason2 
+0x5e69 025409 branch reject_lmp_packet 
+:      025411 parse_lmp_sres:
+0x5e6a 025412 arg mem_plap ,rega 
+0x5e6b 025413 call function_e1 
+0x5e6c 025414 fetch 4 ,mem_rxbuf + 1 
+0x5e6d 025415 fetcht 4 ,mem_input_store 
+0x5e6e 025416 isub temp ,null 
+0x5e6f 025417 branch authentication_ok ,zero 
+0x5e70 025418 jam lmp_detach ,mem_lmo_opcode2 
+0x5e71 025419 jam authentication_failure_error ,mem_disconn_reason_send 
+0x5e72 025420 rtn 
+:      025421 authentication_ok:
+0x5e73 025422 call authentication_ok_common 
+0x5e74 025423 fetch 1 ,mem_ssp_enable 
+0x5e75 025424 branch pairing_success ,blank 
+0x5e76 025425 rtn 
+:      025428 authentication_ok_common:
+0x5e77 025429 call copy_aco 
+0x5e78 025430 call linkkey_ready 
+0x5e79 025431 fetch 1 ,mem_op 
+0x5e7a 025432 isolate1 op_auth_req ,pdata 
+0x5e7b 025433 set0 op_auth_req ,pdata 
+0x5e7c 025434 store 1 ,mem_op 
+0x5e7d 025435 fetch 1 ,mem_conn_sm 
+0x5e7e 025436 beq conn_sm_auth_wait ,authentication_ok_conn_sm 
+0x5e7f 025437 beq conn_sm_pairing_wait ,authentication_ok_conn_sm 
+0x5e80 025438 rtn 
+:      025439 authentication_ok_conn_sm:
+0x5e81 025440 fetch 1 ,mem_pairing_auth 
+0x5e82 025441 rtnne defalt_pairing_auth 
+0x5e83 025442 fetch 1 ,mem_state_map 
+0x5e84 025443 rtnbit1 smap_encryption 
+0x5e85 025444 branch host_create_conn_encrypt 
+:      025446 parse_lmp_comb_key:
+0x5e86 025447 arg mem_rxbuf + 1 ,rega 
+0x5e87 025448 arg mem_kinit ,regb 
+0x5e88 025449 arg mem_random_number ,contw 
+0x5e89 025450 call xor16 
+0x5e8a 025451 arg mem_plap ,rega 
+0x5e8b 025452 call generate_linkkey 
+0x5e8c 025453 jam lmp_au_rand ,mem_lmo_opcode2 
+0x5e8d 025454 fetch 1 ,mem_state 
+0x5e8e 025455 bbit0 state_combkey ,lmp_generate_key 
+0x5e8f 025456 rtn 
+:      025458 parse_lmp_name_res:
+0x5e90 025459 fetch 2 ,mem_len 
+0x5e91 025460 add pdata ,-3 ,loopcnt 
+0x5e92 025461 fetcht 1 ,mem_rxbuf + 1 
+0x5e93 025462 setarg mem_tmp_buffer 
+0x5e94 025463 iadd temp ,contw 
+0x5e95 025464 arg mem_rxbuf + 3 ,contr 
+0x5e96 025465 call memcpy 
+0x5e97 025466 fetcht 1 ,mem_name_offset 
+0x5e98 025467 fetch 1 ,mem_rxbuf + 2 
+0x5e99 025468 isub temp ,pdata 
+0x5e9a 025469 sub pdata ,14 ,null 
+0x5e9b 025470 branch parse_lmp_name_res_end ,positive 
+0x5e9c 025471 add temp ,14 ,pdata 
+0x5e9d 025472 store 1 ,mem_name_offset 
+0x5e9e 025473 jam lmp_name_req ,mem_lmo_opcode2 
+0x5e9f 025474 rtn 
+:      025475 parse_lmp_name_res_end:
+0x5ea0 025476 fetch 1 ,mem_state_map 
+0x5ea1 025477 set1 smap_name_res ,pdata 
+0x5ea2 025478 store 1 ,mem_state_map 
+0x5ea3 025479 bbit1 smap_name_req ,lmp_disconnect 
+0x5ea4 025480 rtn 
+:      025481 parse_lmp_name_req:
+0x5ea5 025482 fetch 1 ,mem_rxbuf + 1 
+0x5ea6 025483 store 1 ,mem_lmi_opcode2 
+0x5ea7 025484 jam lmp_name_res ,mem_lmo_opcode2 
+0x5ea8 025485 rtn 
+:      025487 parse_lmp_conn_req:
+0x5ea9 025488 branch accept_lmp_msg 
+:      025490 parse_lmp_timing_accuracy_req:
+0x5eaa 025491 jam lmp_timing_accuracy_res ,mem_lmo_opcode2 
+0x5eab 025492 rtn 
+:      025494 parse_lmp_features_req:
+0x5eac 025495 jam lmp_features_res ,mem_lmo_opcode2 
+0x5ead 025496 rtn 
+:      025498 parse_lmp_version_req:
+0x5eae 025499 jam lmp_version_res ,mem_lmo_opcode2 
+0x5eaf 025500 rtn 
+:      025502 parse_lmp_supervision_timeout:
+0x5eb0 025505 rtn 
+:      025509 parse_lmp_sniff_subrating_req:
+0x5eb1 025510 fetch 2 ,mem_tsniff 
+0x5eb2 025511 iforce temp 
+0x5eb3 025512 fetch 1 ,mem_rxbuf + 2 
+0x5eb4 025513 store 1 ,mem_subsniff_rate 
+0x5eb5 025514 imul32 temp ,temp 
+0x5eb6 025515 fetch 2 ,mem_rxbuf + 3 
+0x5eb7 025516 lshift pdata ,pdata 
+0x5eb8 025517 store 2 ,mem_subsniff_tcmax 
+0x5eb9 025518 fetch 4 ,mem_rxbuf + 5 
+0x5eba 025519 lshift pdata ,pdata 
+0x5ebb 025520 store 4 ,mem_subsniff_instant 
+0x5ebc 025522 deposit temp 
+0x5ebd 025523 store 2 ,mem_subsniff_tsniff 
+0x5ebe 025524 rtn 
+:      025525 parse_lmpext_packet_type_table_req:
+0x5ebf 025526 fetcht 1 ,mem_ptt 
+0x5ec0 025527 fetch 1 ,mem_rxbuf + 2 
+0x5ec1 025528 ixor temp ,null 
+0x5ec2 025529 nbranch reject_unknown_ext_packet ,zero 
+0x5ec3 025530 isolate1 0 ,pdata 
+0x5ec4 025531 fetch 1 ,mem_state_map 
+0x5ec5 025532 setflag true ,smap_edr ,pdata 
+0x5ec6 025533 store 1 ,mem_state_map 
+0x5ec7 025534 jam lmp_ext_accepted ,mem_lmo_opcode2 
+0x5ec8 025535 jam lmp_packet_type_table_req ,mem_lmi_opcode2 
+0x5ec9 025536 rtn 
+:      025539 parse_lmp_sniff_subrating_res:
+:      025540 parse_lmp_preferred_rate:
+:      025541 parse_lmp_max_power:
+:      025542 parse_lmp_min_power:
+0x5eca 025543 rtn 
+:      025544 parse_lmp_page_mode_req:
+0x5ecb 025546 branch accept_lmp_msg 
+:      025547 parse_lmp_page_scan_mode_req:
+0x5ecc 025550 branch accept_lmp_msg 
+:      025554 parse_lmp_slot_offset:
+0x5ecd 025555 fetch 2 ,mem_rxbuf + 1 
+0x5ece 025556 store 2 ,mem_slot_offset 
+0x5ecf 025557 rtn 
+:      025559 parse_lmp_sniff_req_check_sniff_para:
+0x5ed0 025560 fetch 2 ,mem_rxbuf + 4 
+0x5ed1 025561 fetcht 1 ,mem_lpm_mult 
+0x5ed2 025562 imul32 temp ,pdata 
+0x5ed3 025563 arg 0x640 ,temp 
+0x5ed4 025564 isub temp ,null 
+0x5ed5 025566 rtn 
+:      025568 parse_lmp_sniff_req:
+0x5ed6 025569 fetch 2 ,mem_rxbuf + 6 
+0x5ed7 025570 branch lmp_reject_sniff ,blank 
+0x5ed8 025571 call parse_lmp_sniff_req_check_sniff_para 
+0x5ed9 025572 branch lmp_reject_sniff ,positive 
+0x5eda 025573 fetch 1 ,mem_device_option 
+0x5edb 025574 sub pdata ,dvc_op_module ,null 
+0x5edc 025575 call module_set_lpm_mult_2 ,zero 
+0x5edd 025576 fetch 1 ,mem_state 
+0x5ede 025577 bbit1 state_insniff ,lmp_reject_sniff 
+0x5edf 025578 fetch 2 ,mem_rxbuf + 2 
+0x5ee0 025579 lshift pdata ,pdata 
+0x5ee1 025580 store 2 ,mem_dsniff 
+0x5ee2 025581 fetch 2 ,mem_rxbuf + 4 
+0x5ee3 025582 lshift pdata ,pdata 
+0x5ee4 025583 store 2 ,mem_tsniff 
+0x5ee5 025584 fetch 2 ,mem_rxbuf + 6 
+0x5ee6 025585 store 1 ,mem_sniff_attempt 
+0x5ee7 025586 iforce temp 
+0x5ee8 025587 fetch 2 ,mem_rxbuf + 8 
+0x5ee9 025588 store 1 ,mem_sniff_timeout 
+0x5eea 025589 isub temp ,null 
+0x5eeb 025590 nbranch set_big_value_to_attempt ,positive 
+0x5eec 025591 store 1 ,mem_sniff_attempt 
+:      025592 set_big_value_to_attempt:
+0x5eed 025594 jam lmp_accepted ,mem_lmo_opcode2 
+0x5eee 025595 jam lmp_sniff_req ,mem_lmi_opcode2 
+0x5eef 025596 rtn 
+:      025598 lmp_reject_sniff:
+0x5ef0 025599 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5ef1 025600 branch reject_lmp_packet 
+:      025602 parse_lmp_start_encryption_req:
+0x5ef2 025603 call accept_lmp_msg 
+0x5ef3 025604 call lmp_copy_rand 
+0x5ef4 025605 call function_e3 
+0x5ef5 025606 branch start_encryption 
+:      025608 parse_lmp_stop_encryption_req:
+0x5ef6 025609 call accept_lmp_msg 
+0x5ef7 025610 branch stop_encryption 
+:      025613 parse_lmp_switch_req:
+0x5ef8 025614 fetch 4 ,mem_rxbuf + 1 
+0x5ef9 025615 lshift pdata ,pdata 
+0x5efa 025617 branch parse_lmp_switch_accept ,master 
+0x5efb 025618 fetcht 1 ,mem_link_key_exists 
+0x5efc 025619 nbranch parse_lmp_switch_req_clear_mark ,blank 
+:      025620 parse_lmp_switch_req_not_accept:
+0x5efd 025621 jam lmp_not_accepted ,mem_lmo_opcode2 
+0x5efe 025622 jam lmp_switch_req ,mem_lmi_opcode2 
+0x5eff 025623 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f00 025624 rtn 
+:      025625 parse_lmp_switch_req_clear_mark:
+0x5f01 025626 jam lmp_slot_offset ,mem_lmo_opcode2 
+0x5f02 025627 jam 0 ,mem_conn_sm 
+0x5f03 025628 branch role_switch_prepare 
+:      025630 parse_lmp_switch_accept:
+0x5f04 025631 call role_switch_prepare 
+0x5f05 025632 set1 mark_reconn_recieve_switch ,mark 
+0x5f06 025633 fetch 1 ,mem_connection_options 
+0x5f07 025634 set0 connection_switch ,pdata 
+0x5f08 025635 store 1 ,mem_connection_options 
+0x5f09 025636 branch accept_lmp_msg 
+:      025640 parse_lmp_temp_rand:
+:      025641 parse_lmp_temp_key:
+:      025642 parse_lmp_timing_accuracy_res:
+:      025643 parse_lmp_unit_key:
+:      025644 parse_lmp_use_semi_permanend_key:
+0x5f0a 025645 rtn 
+:      025648 parse_lmp_unsniff_req:
+0x5f0b 025649 jam lmp_accepted ,mem_lmo_opcode2 
+0x5f0c 025650 jam lmp_unsniff_req ,mem_lmi_opcode2 
+0x5f0d 025651 jam bt_evt_remote_unsniff ,mem_fifo_temp 
+0x5f0e 025652 call ui_ipc_send_event 
+0x5f0f 025653 branch sniff_exit 
+:      025655 parse_lmp_encapsulated_header:
+0x5f10 025656 fetch 1 ,mem_rxbuf + 1 
+0x5f11 025657 bne encapsulated_major_type_p192 ,parse_lmp_encapsulated_header_reject 
+0x5f12 025658 fetch 1 ,mem_rxbuf + 2 
+0x5f13 025659 bne encapsulated_minor_type_p192 ,parse_lmp_encapsulated_header_reject 
+0x5f14 025660 fetch 1 ,mem_rxbuf + 3 
+0x5f15 025661 bne encapsulated_len_p192 ,parse_lmp_encapsulated_header_reject 
+0x5f16 025662 call check_localsm 
+0x5f17 025663 branch parse_lmp_encapsulated_header_master ,true 
+0x5f18 025664 jam sp_stat_key_recv ,mem_sp_state 
+:      025665 parse_lmp_encapsulated_header_master:
+0x5f19 025666 jam lmp_accepted ,mem_lmo_opcode2 
+0x5f1a 025667 jam lmp_encapsulated_header ,mem_lmi_opcode2 
+0x5f1b 025668 branch parse_rx_done 
+:      025670 parse_lmp_encapsulated_header_reject:
+0x5f1c 025671 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f1d 025672 branch reject_lmp_packet 
+:      025674 parse_lmp_accepted_encapsulated_header:
+0x5f1e 025677 jam lmp_encapsulated_payload ,mem_lmo_opcode2 
+0x5f1f 025679 rtn 
+:      025680 parse_lmp_accepted_simple_pairing_number:
+0x5f20 025681 fetch 1 ,mem_ssp_mode_flag 
+0x5f21 025682 beq ssp_mode_ssp_pin_flag ,parse_lmp_accepted_simple_pairing_number_ssp_pin 
+0x5f22 025683 beq ssp_mode_passkey_entry_flag ,parse_lmp_accepted_simple_pairing_number_passkey 
+:      025684 parse_lmp_accepted_simple_pairing_number_common:
+0x5f23 025685 call check_localsm 
+0x5f24 025686 rtn true 
+0x5f25 025687 jam sp_stat_confirm_recv ,mem_sp_state 
+0x5f26 025688 rtn 
+:      025690 parse_lmp_accepted_simple_pairing_number_ssp_pin:
+0x5f27 025691 call g_noninit_number_confirm 
+0x5f28 025692 jam bt_evt_bt_gkey_generate ,mem_fifo_temp 
+0x5f29 025693 call ui_ipc_send_event 
+0x5f2a 025694 branch parse_lmp_accepted_simple_pairing_number_common 
+:      025697 parse_lmp_accepted_simple_pairing_number_passkey:
+0x5f2b 025698 call check_localsm 
+0x5f2c 025699 rtn true 
+0x5f2d 025700 fetch 1 ,mem_authentication_passkey_times 
+0x5f2e 025701 beq 19 ,authentication_passkey_end 
+0x5f2f 025702 increase 1 ,pdata 
+0x5f30 025703 store 1 ,mem_authentication_passkey_times 
+:      025706 authentication_passkey:
+0x5f31 025707 jam sp_flag_commit ,mem_sp_flag 
+0x5f32 025708 jam sp_stat_commit_calc ,mem_sp_state 
+0x5f33 025709 fetch 1 ,mem_authentication_passkey_times 
+0x5f34 025710 copy pdata ,queue 
+0x5f35 025711 fetch 6 ,mem_pin 
+0x5f36 025712 qisolate1 pdata 
+0x5f37 025713 setarg 0x80 
+0x5f38 025714 setflag true ,0 ,pdata 
+0x5f39 025715 store 1 ,mem_passkey_1bit 
+0x5f3a 025716 rtn 
+:      025718 authentication_passkey_end:
+0x5f3b 025719 jam sp_stat_confirm_recv ,mem_sp_state 
+0x5f3c 025720 rtn 
+:      025722 parse_lmp_accepted_dhkey_check:
+0x5f3d 025723 call parse_lmp_accepted_dhkey_check_common 
+:      025724 pairing_success:
+0x5f3e 025725 fetch 1 ,mem_flag_pairing_state 
+0x5f3f 025726 rtn blank 
+0x5f40 025727 jam flag_pairing_state_not_pairing ,mem_flag_pairing_state 
+0x5f41 025728 jam bt_evt_bt_pairing_success ,mem_fifo_temp 
+0x5f42 025729 branch ui_ipc_send_event 
+:      025732 parse_lmp_accepted_dhkey_check_common:
+0x5f43 025734 call check_localsm 
+0x5f44 025735 ncall g_noninit ,true 
+0x5f45 025736 call g_init ,true 
+0x5f46 025737 call check_localsm 
+0x5f47 025738 rtn true 
+0x5f48 025739 jam sp_stat_link_key_calc ,mem_sp_state 
+0x5f49 025740 jam sp_flag_commit ,mem_sp_flag 
+0x5f4a 025741 rtn 
+:      025743 parse_simple_pairing_confirm:
+0x5f4b 025744 arg mem_sp_confirm_remote ,contw 
+0x5f4c 025745 arg mem_rxbuf + 1 ,contr 
+0x5f4d 025746 call memcpy16 
+0x5f4e 025747 fetch 1 ,mem_ssp_mode_flag 
+0x5f4f 025748 rtneq ssp_mode_passkey_entry_flag 
+0x5f50 025749 branch master_set_mem_master_sp_flag 
+:      025751 parse_lmp_encapsulated_payload:
+0x5f51 025752 fetch 1 ,mem_master_sp_state 
+0x5f52 025753 beq sp_stat_random_send ,parse_encapsulated_payload_master 
+0x5f53 025754 fetch 1 ,mem_sp_state 
+0x5f54 025755 bne sp_stat_key_recv ,parse_lmp_encapsulated_payload_reject 
+:      025756 parse_encapsulated_payload_master:
+0x5f55 025757 fetch 1 ,mem_sp_remote_key_recv_count 
+0x5f56 025758 sub pdata ,0x20 ,contw 
+0x5f57 025759 nbranch parse_lmp_encapsulated_payload_reject ,positive 
+0x5f58 025760 arg mem_sp_pubkey_remote ,contw 
+0x5f59 025761 iadd contw ,contw 
+0x5f5a 025762 fetch 8 ,mem_rxbuf + 1 
+0x5f5b 025763 istore 8 ,contw 
+0x5f5c 025764 fetch 8 ,mem_rxbuf + 9 
+0x5f5d 025765 istore 8 ,contw 
+0x5f5e 025766 fetch 1 ,mem_sp_remote_key_recv_count 
+0x5f5f 025767 increase 16 ,pdata 
+0x5f60 025768 store 1 ,mem_sp_remote_key_recv_count 
+0x5f61 025769 bne encapsulated_len_p192 ,accept_lmp_msg 
+:      025770 parse_lmp_encapsulated_payload_completed:
+0x5f62 025771 call check_localsm 
+0x5f63 025772 branch accept_lmp_msg ,true 
+0x5f64 025773 jam sp_key_valid ,mem_sp_remote_key_invalid 
+0x5f65 025774 jam sp_stat_key_generate ,mem_sp_state 
+0x5f66 025775 jam sp_flag_commit ,mem_sp_flag 
+0x5f67 025776 branch accept_lmp_msg 
+:      025777 parse_lmp_encapsulated_payload_reject:
+0x5f68 025778 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f69 025779 branch reject_lmp_packet 
+:      025780 parse_lmp_accepted_encapsulated_payload:
+0x5f6a 025781 fetch 1 ,mem_sp_local_key_send_count 
+0x5f6b 025782 beq encapsulated_len_p192 ,parse_lmp_encapsulated_payload_all_accepted 
+0x5f6c 025783 jam lmp_encapsulated_payload ,mem_lmo_opcode2 
+0x5f6d 025784 branch parse_rx_done 
+:      025786 parse_lmp_encapsulated_payload_all_accepted:
+0x5f6e 025787 call check_localsm 
+0x5f6f 025788 branch parse_lmp_encapsulated_payload_all_accepted_master ,true 
+0x5f70 025789 fetch 1 ,mem_ssp_mode_flag 
+0x5f71 025790 beq ssp_mode_passkey_entry_flag ,parse_lmp_encapsulated_payload_all_accepted_get_passkey 
+0x5f72 025791 jam sp_flag_commit ,mem_sp_flag 
+0x5f73 025792 jam sp_stat_commit_calc ,mem_sp_state 
+0x5f74 025793 branch parse_rx_done 
+:      025795 parse_lmp_encapsulated_payload_all_accepted_get_passkey:
+0x5f75 025796 jam bt_evt_bt_get_passkey ,mem_fifo_temp 
+0x5f76 025797 branch ui_ipc_send_event 
+:      025800 parse_lmp_encapsulated_payload_all_accepted_master:
+0x5f77 025802 branch parse_rx_done 
+:      025804 parse_lmp_simple_pairing_number:
+0x5f78 025805 fetch 1 ,mem_master_sp_state 
+0x5f79 025806 beq sp_stat_random_send ,parse_lmp_simple_pairing_number_master 
+0x5f7a 025807 fetch 1 ,mem_sp_state 
+0x5f7b 025808 bne sp_stat_random_recv ,parse_lmp_simple_pairing_number_reject 
+:      025809 parse_lmp_simple_pairing_number_master:
+0x5f7c 025810 arg mem_sp_random_remote ,contw 
+0x5f7d 025811 fetch 8 ,mem_rxbuf + 1 
+0x5f7e 025812 istore 8 ,contw 
+0x5f7f 025813 fetch 8 ,mem_rxbuf + 9 
+0x5f80 025814 istore 8 ,contw 
+0x5f81 025815 call check_localsm 
+0x5f82 025816 branch parse_lmp_simple_pairing_number_master0 ,true 
+0x5f83 025817 jam sp_stat_random_send ,mem_sp_state 
+0x5f84 025818 jam sp_flag_commit ,mem_sp_flag 
+0x5f85 025819 branch accept_lmp_msg 
+:      025820 parse_lmp_simple_pairing_number_master0:
+0x5f86 025821 jam sp_stat_commit_calc ,mem_master_sp_state 
+0x5f87 025822 branch master_set_mem_master_sp_flag 
+:      025825 parse_lmp_simple_pairing_number_reject:
+0x5f88 025826 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f89 025827 branch reject_lmp_packet 
+:      025829 parse_dhkey_check:
+0x5f8a 025830 fetch 1 ,mem_master_sp_state 
+0x5f8b 025831 beq sp_stat_confirm_send ,parse_dhkey_check_master 
+0x5f8c 025832 fetch 1 ,mem_sp_state 
+0x5f8d 025833 bne sp_stat_confirm_recv ,parse_lmp_dhkey_check_reject 
+:      025834 parse_dhkey_check_master:
+0x5f8e 025835 arg mem_sp_check_result ,contw 
+0x5f8f 025836 arg mem_rxbuf + 1 ,contr 
+0x5f90 025837 call memcpy16 
+0x5f91 025838 call check_localsm 
+0x5f92 025839 branch parse_dhkey_check_master0 ,true 
+0x5f93 025840 fetch 1 ,mem_ssp_mode_flag 
+0x5f94 025841 beq ssp_mode_ssp_pin_flag ,number_comparison_mode 
+:      025842 number_comparison_successed:
+0x5f95 025843 jam 0 ,mem_flag_mode_ssp_pin 
+0x5f96 025844 jam sp_stat_confirm_check ,mem_sp_state 
+0x5f97 025845 jam sp_flag_commit ,mem_sp_flag 
+0x5f98 025846 jam lmp_dhkey_check ,mem_lmi_opcode2 
+0x5f99 025847 branch parse_rx_done 
+:      025849 parse_dhkey_check_master0:
+0x5f9a 025850 jam sp_stat_confirm_check ,mem_master_sp_state 
+0x5f9b 025851 jam sp_flag_commit ,mem_master_sp_flag 
+0x5f9c 025852 branch parse_rx_done 
+:      025853 parse_lmp_dhkey_check_reject:
+0x5f9d 025854 jam pdu_not_allowed ,mem_lmo_reason2 
+0x5f9e 025855 branch reject_lmp_packet 
+:      025857 number_comparison_mode:
+0x5f9f 025858 fetch 1 ,mem_flag_mode_ssp_pin 
+0x5fa0 025859 bbit1 flag_mode_ssp_pin_reviceve_comparison_bit ,comparison_result 
+0x5fa1 025860 set1 flag_mode_ssp_pin_recieve_dhkey_bit ,pdata 
+0x5fa2 025861 store 1 ,mem_flag_mode_ssp_pin 
+0x5fa3 025862 rtn 
+:      025864 comparison_result:
+0x5fa4 025865 bbit1 flag_mode_ssp_pin_comparison_result_bit ,number_comparison_successed 
+0x5fa5 025866 jam 0 ,mem_flag_mode_ssp_pin 
+0x5fa6 025867 branch parse_lmp_dhkey_check_reject 
+:      025870 parse_lmp_clkoffset_res:
+0x5fa7 025871 branch parse_rx_done 
+:      025873 parse_lmp_encryption_mode_req:
+0x5fa8 025874 fetch 1 ,mem_connection_options 
+0x5fa9 025875 set0 connection_encrypt 
+0x5faa 025876 store 1 ,mem_connection_options 
+0x5fab 025877 call accept_lmp_msg 
+0x5fac 025878 nrtn master 
+0x5fad 025879 fetch 1 ,mem_rxbuf + 1 
+0x5fae 025880 fetcht 1 ,mem_op 
+0x5faf 025881 setflag blank ,op_stop_enc ,temp 
+0x5fb0 025882 nsetflag blank ,op_start_enc ,temp 
+0x5fb1 025883 storet 1 ,mem_op 
+0x5fb2 025884 rtn 
+:      025886 parse_lmp_features_res:
+0x5fb3 025887 fetcht 8 ,mem_rxbuf + 1 
+:      025888 parse_lmp_features_res_not_hci:
+0x5fb4 025889 fetch 1 ,mem_conn_sm 
+0x5fb5 025890 rtnne conn_sm_wait_features_res 
+0x5fb6 025892 fetch 1 ,mem_connection_options 
+0x5fb7 025893 bbit0 connection_feature_ext ,parse_lmp_send_conn 
+0x5fb8 025895 jam conn_sm_send_features_ext ,mem_conn_sm 
+0x5fb9 025896 rtn 
+:      025897 parse_lmp_send_conn:
+0x5fba 025898 jam conn_sm_send_conn_req ,mem_conn_sm 
+0x5fbb 025899 rtn 
+:      025900 parse_lmp_test_activate:
+0x5fbc 025901 fetch 1 ,mem_debug_config 
+0x5fbd 025902 store 1 ,mem_test_mode_old_debug_config 
+0x5fbe 025903 jam lmp_accepted ,mem_lmo_opcode2 
+0x5fbf 025904 jam lmp_test_activate ,mem_lmi_opcode2 
+0x5fc0 025905 rtn 
+:      025906 parse_lmp_test_control:
+0x5fc1 025909 jam lmp_accepted ,mem_lmo_opcode2 
+0x5fc2 025910 jam lmp_test_control ,mem_lmi_opcode2 
+0x5fc3 025911 force 9 ,loopcnt 
+0x5fc4 025912 arg mem_rxbuf + 1 ,contr 
+0x5fc5 025913 arg mem_temp_payload ,contw 
+:      025914 parse_lmp_test_xor:
+0x5fc6 025915 ifetch 1 ,contr 
+0x5fc7 025916 xor_into 0x55 ,pdata 
+0x5fc8 025917 istore 1 ,contw 
+0x5fc9 025918 loop parse_lmp_test_xor 
+0x5fca 025919 fetch 1 ,test_mode_scenario 
+0x5fcb 025920 fetcht 1 ,mem_tester_emulate 
+0x5fcc 025921 set0 tester_no_whitening ,temp 
+0x5fcd 025922 set0 tester_pattern_test ,temp 
+0x5fce 025923 beq exit_test_mode ,parse_lmp_test_control_exit 
+0x5fcf 025924 beq pause_test_mode ,parse_lmp_test_control_pause 
+0x5fd0 025925 beq closed_loop_back_acl ,parse_lmp_test_control_loopback 
+0x5fd1 025926 beq acl_without_whitening ,parse_lmp_test_control_loopback_nowhite 
+0x5fd2 025927 beq closed_loop_back_sco ,parse_lmp_test_control_loopback 
+0x5fd3 025928 beq sco_without_whitening ,parse_lmp_test_control_loopback_nowhite 
+0x5fd4 025929 beq zero_pattern ,parse_lmp_test_control_pattern 
+0x5fd5 025930 beq one_pattern ,parse_lmp_test_control_pattern 
+0x5fd6 025931 beq alt_pattern ,parse_lmp_test_control_pattern 
+0x5fd7 025932 beq alt2_pattern ,parse_lmp_test_control_pattern 
+0x5fd8 025933 beq pseudorandom ,parse_lmp_test_control_pattern 
+0x5fd9 025934 rtn 
+:      025935 parse_lmp_test_control_exit:
+0x5fda 025937 fetch 1 ,mem_tester_emulate 
+0x5fdb 025938 set1 tester_exit ,pdata 
+0x5fdc 025939 set1 tester_change ,pdata 
+0x5fdd 025940 store 1 ,mem_tester_emulate 
+0x5fde 025941 rtn 
+:      025942 parse_lmp_test_control_pattern:
+0x5fdf 025943 set1 tester_pattern_test ,temp 
+0x5fe0 025944 jam 5 ,mem_lch_code 
+0x5fe1 025945 fetch 2 ,test_mode_data_length 
+0x5fe2 025946 iforce loopcnt 
+0x5fe3 025947 store 2 ,mem_len 
+0x5fe4 025948 arg mem_rxbuf ,contw 
+0x5fe5 025949 call pn9 
+:      025950 parse_lmp_test_control_loopback_nowhite:
+0x5fe6 025951 set1 tester_no_whitening ,temp 
+:      025952 parse_lmp_test_control_loopback:
+0x5fe7 025953 set1 tester_change ,temp 
+0x5fe8 025954 force 0 ,pdata 
+0x5fe9 025955 store 1 ,mem_slave_rcvcnt 
+0x5fea 025956 store 2 ,mem_tst_pktcnt_crc 
+0x5feb 025957 store 2 ,mem_tst_pktcnt_dmh 
+0x5fec 025958 store 2 ,mem_tst_pktcnt_hec 
+0x5fed 025959 store 2 ,mem_tst_pktcnt_sync 
+0x5fee 025960 fetch 1 ,test_mode_hopping_mode 
+0x5fef 025961 compare fixed_freq ,pdata ,0xff 
+0x5ff0 025962 setflag true ,tester_fixed_freq ,temp 
+0x5ff1 025963 storet 1 ,mem_tester_emulate 
+0x5ff2 025964 rtn 
+:      025966 parse_lmp_test_control_pause:
+0x5ff3 025967 set0 mark_testmode ,mark 
+0x5ff4 025968 jam 0 ,mem_tester_emulate 
+0x5ff5 025969 fetch 1 ,mem_debug_config 
+0x5ff6 025970 set0 debug_tx_pattern ,pdata 
+0x5ff7 025971 store 1 ,mem_debug_config 
+0x5ff8 025972 rtn 
+:      025978 lmp_copy_rand:
+0x5ff9 025979 arg mem_rxbuf + 1 ,contr 
+0x5ffa 025980 arg mem_random_number ,contw 
+0x5ffb 025981 branch memcpy16 
+:      025983 lmp_generate_key:
+0x5ffc 025984 jam lmp_comb_key ,mem_lmo_opcode2 
+0x5ffd 025985 rtn 
+:      025987 lmp_start_encryption:
+0x5ffe 025988 nrtn master 
+0x5fff 025989 jam lmp_start_encryption_req ,mem_lmo_opcode2 
+0x6000 025990 rtn 
+:      025992 lmp_accept_inrand:
+0x6001 025993 arg mem_lap ,rega 
+0x6002 025994 call generate_kinit 
+0x6003 025995 jam lmp_accepted ,mem_lmo_opcode2 
+0x6004 025996 jam lmp_in_rand ,mem_lmi_opcode2 
+0x6005 025997 rtn 
+:      025999 lmp_disconnect:
+0x6006 026000 jam 10 ,mem_conn_timer 
+0x6007 026001 jam lmp_detach ,mem_lmo_opcode2 
+0x6008 026002 jam local_host ,mem_disconn_reason_send 
+0x6009 026003 rtn 
+:      026009 send_lmp:
+0x600a 026010 bpatchx patch30_2 ,mem_patch30 
+0x600b 026011 disable user 
+0x600c 026012 call lmo_fifo_process 
+0x600d 026013 fetch 1 ,mem_lmp_to_send 
+0x600e 026014 rtn blank 
+0x600f 026019 bbit1 7 ,send_lmp_escape 
+:      026020 send_lmp0:
+0x6010 026021 beq lmp_name_req ,send_lmp_name_req 
+0x6011 026022 beq lmp_name_res ,send_lmp_name_res 
+0x6012 026023 beq lmp_accepted ,send_lmp_accepted 
+0x6013 026024 beq lmp_not_accepted ,send_lmp_not_accepted 
+0x6014 026025 beq lmp_features_req ,send_lmp_features_req 
+0x6015 026026 beq lmp_features_res ,send_lmp_features_res 
+0x6016 026027 beq lmp_timing_accuracy_res ,send_lmp_timing_accuracy_res 
+0x6017 026028 beq lmp_version_req ,send_lmp_version_req 
+0x6018 026029 beq lmp_version_res ,send_lmp_version_res 
+0x6019 026030 beq lmp_setup_complete ,send_lmp_setup_complete 
+0x601a 026031 beq lmp_supervision_timeout ,send_lmp_superto 
+0x601b 026032 beq lmp_host_connection_req ,send_lmp_no_payload 
+0x601c 026033 beq lmp_in_rand ,send_lmp_inrand 
+0x601d 026034 beq lmp_comb_key ,send_lmp_comb_key 
+0x601e 026035 beq lmp_au_rand ,send_lmp_aurand 
+0x601f 026036 beq lmp_sres ,send_lmp_sres 
+0x6020 026037 beq lmp_encryption_mode_req ,send_lmp_encryption_mode_req 
+0x6021 026038 beq lmp_encryption_key_size_req ,send_lmp_encryption_key_size_req 
+0x6022 026039 beq lmp_start_encryption_req ,send_lmp_start_encryption 
+0x6023 026040 beq lmp_detach ,send_lmp_detach 
+0x6024 026041 beq lmp_quality_of_service_req ,send_lmp_quality_of_service_req 
+0x6025 026042 beq lmp_unit_key ,send_lmp_unit_key 
+0x6026 026044 beq lmp_incr_power_req ,send_lmp_inc_power 
+0x6027 026045 beq lmp_clkoffset_res ,send_lmp_clkoffset_res 
+0x6028 026046 beq lmp_max_power ,send_lmp_nopayload_reply 
+0x6029 026047 beq lmp_max_slot ,send_lmp_max_slot 
+0x602a 026048 beq lmp_max_slot_req ,send_lmp_max_slot_req 
+0x602b 026049 beq lmp_min_power ,send_lmp_nopayload_reply 
+0x602c 026050 beq lmp_slot_offset ,send_lmp_slot_offset 
+0x602d 026051 beq lmp_switch_req ,send_lmp_switch_req 
+0x602e 026052 beq lmp_sniff_req ,send_lmp_sniff_req 
+0x602f 026053 beq lmp_stop_encryption_req ,send_lmp_stop_encryption_req 
+0x6030 026054 beq lmp_timing_accuracy_req ,send_lmp_timing_accuracy_req 
+0x6031 026055 beq lmp_unsniff_req ,send_lmp_unsniff_req 
+0x6032 026056 beq lmp_encapsulated_header ,send_lmp_encapsulated_header 
+0x6033 026057 beq lmp_encapsulated_payload ,send_lmp_encapsulated_payload 
+0x6034 026058 beq lmp_simple_pairing_confirm ,send_lmp_simple_pairing_comfirm 
+0x6035 026059 beq lmp_simple_pairing_number ,send_lmp_simple_pairing_number 
+0x6036 026060 beq lmp_dhkey_check ,send_lmp_dhkey_check 
+0x6037 026061 beq lmp_auto_rate ,send_lmp_auto_rate 
+0x6038 026062 beq lmp_enc_key_size_mask_res ,send_lmp_enc_key_size_mask_res 
+0x6039 026064 beq lmp_clkoffset_req ,send_lmp_clkoffset_req 
+0x603a 026065 beq lmp_quality_of_service ,send_lmp_quality_of_service 
+0x603b 026066 beq lmp_test_activate ,send_lmp_test_activate 
+0x603c 026067 beq lmp_test_control ,send_lmp_test_control 
+:      026068 send_lmp_error:
+0x603d 026069 branch assert 
+0x603e 026070 rtn 
+:      026071 send_lmp_escape:
+0x603f 026072 beq lmp_ext_accepted ,send_lmpext_accepted 
+0x6040 026073 beq lmp_ext_features_res ,send_lmpext_features_res 
+0x6041 026074 beq lmp_not_accepted_ext ,send_lmpext_not_accepted 
+0x6042 026075 beq lmp_ext_features_req ,send_lmpext_features_req 
+0x6043 026076 beq lmp_packet_type_table_req ,send_lmpext_packet_type_table_req 
+0x6044 026077 beq lmp_pause_encryption_req ,send_lmpext_pause_encryption_req 
+0x6045 026078 beq lmp_io_cap_req ,send_lmp_io_cap_req 
+0x6046 026079 beq lmp_io_cap_res ,send_lmpext_io_cap_res 
+0x6047 026080 beq lmp_sniff_subrating_req ,send_lmpext_sniff_subrating_req 
+0x6048 026081 beq lmp_sniff_subrating_res ,send_lmpext_sniff_subrating_res 
+0x6049 026082 branch assert 
+:      026088 send_lmp_accepted:
+0x604a 026089 force 2 ,pdata 
+0x604b 026090 call msg_send_lmp 
+0x604c 026091 fetch 1 ,mem_lmi_opcode 
+0x604d 026092 istore 1 ,contw 
+0x604e 026093 call send_lmp_follow 
+0x604f 026094 bpatchx patch30_3 ,mem_patch30 
+0x6050 026095 fetch 1 ,mem_lmi_opcode 
+0x6051 026096 beq lmp_in_rand ,send_lmp_accepted_inrand 
+0x6052 026097 beq lmp_encryption_mode_req ,send_lmp_accepted_enc_mode 
+0x6053 026098 beq lmp_encryption_key_size_req ,send_lmp_accepted_enc_key 
+0x6054 026099 beq lmp_sniff_req ,send_lmp_accept_sniff_req 
+0x6055 026100 beq lmp_host_connection_req ,send_lmp_accepted_connection 
+0x6056 026101 beq lmp_dhkey_check ,send_lmp_accept_dhkey_check 
+0x6057 026102 beq lmp_start_encryption_req ,send_create_conn_start_l2cap_timer_sm 
+0x6058 026103 rtn 
+:      026105 send_create_conn_start_l2cap_timer_sm:
+0x6059 026106 fetch 1 ,mem_conn_sm 
+0x605a 026107 rtn blank 
+0x605b 026108 jam conn_sm_wait_done ,mem_conn_sm 
+0x605c 026109 setarg timer_enpt_waite 
+0x605d 026110 arg enpt_delay_timer ,queue 
+0x605e 026111 branch timer_init 
+:      026113 send_lmp_accept_sniff_req:
+0x605f 026114 branch sniff_init 
+:      026115 send_lmp_not_accepted:
+0x6060 026116 force 3 ,pdata 
+0x6061 026117 call msg_send_lmp 
+0x6062 026118 fetch 1 ,mem_lmi_opcode 
+0x6063 026119 beq lmp_au_rand ,send_not_accept_aurand 
+0x6064 026120 istore 1 ,contw 
+0x6065 026121 fetch 1 ,mem_lmo_reason 
+0x6066 026122 istore 1 ,contw 
+0x6067 026123 branch send_lmp_follow 
+:      026125 send_not_accept_aurand:
+0x6068 026126 istore 1 ,contw 
+0x6069 026127 fetch 1 ,mem_lmo_reason 
+0x606a 026128 istore 1 ,contw 
+0x606b 026129 arg mem_sres_tid ,temp 
+0x606c 026130 branch special_tid_store 
+:      026132 send_lmpext_accepted:
+0x606d 026133 force 4 ,queue 
+0x606e 026134 call send_lmpext 
+0x606f 026135 setarg lmp_escape 
+0x6070 026136 istore 1 ,contw 
+0x6071 026137 fetch 1 ,mem_lmi_opcode 
+0x6072 026138 set0 7 ,pdata 
+0x6073 026139 istore 1 ,contw 
+0x6074 026140 fetch 1 ,mem_lmi_opcode 
+0x6075 026141 branch send_lmp_follow 
+:      026143 send_lmpext_not_accepted:
+0x6076 026144 force 5 ,queue 
+0x6077 026145 call send_lmpext 
+0x6078 026146 setarg lmp_escape 
+0x6079 026147 istore 1 ,contw 
+0x607a 026148 fetch 1 ,mem_lmi_opcode 
+0x607b 026149 set0 7 ,pdata 
+0x607c 026150 istore 1 ,contw 
+0x607d 026151 fetch 1 ,mem_lmo_reason 
+0x607e 026152 istore 1 ,contw 
+0x607f 026153 branch send_lmp_follow 
+:      026156 send_lmp_accepted_inrand:
+0x6080 026157 call clear_linkkey 
+0x6081 026158 call tid_check 
+0x6082 026159 rtn true 
+0x6083 026160 branch lmp_generate_key 
+:      026162 send_lmp_accepted_enc_mode:
+0x6084 026163 fetch 1 ,mem_op 
+0x6085 026164 bbit1 op_start_enc ,send_lmp_accepted_enc_start 
+0x6086 026165 rtnbit0 op_stop_enc 
+0x6087 026166 jam lmp_stop_encryption_req ,mem_lmo_opcode2 
+0x6088 026167 set0 op_stop_enc ,pdata 
+0x6089 026168 call tid_reply 
+0x608a 026169 branch send_lmp_accepted_enc_exit 
+:      026170 send_lmp_accepted_enc_start:
+0x608b 026171 jam lmp_encryption_key_size_req ,mem_lmo_opcode2 
+0x608c 026172 set0 op_start_enc ,pdata 
+:      026173 send_lmp_accepted_enc_exit:
+0x608d 026174 store 1 ,mem_op 
+0x608e 026175 rtn 
+:      026177 send_lmp_accepted_enc_key:
+0x608f 026178 call check_localsm 
+0x6090 026179 branch lmp_start_encryption ,true 
+0x6091 026180 rtn 
+:      026182 send_lmp_accepted_connection:
+0x6092 026183 jam lmp_packet_type_table_req ,mem_lmo_opcode2 
+0x6093 026185 fetch 1 ,mem_lmp_conn_state 
+0x6094 026186 set1 received_conn_req ,pdata 
+0x6095 026187 store 1 ,mem_lmp_conn_state 
+0x6096 026188 jam bt_evt_bb_connected ,mem_fifo_temp 
+0x6097 026189 branch ui_ipc_send_event 
+:      026192 send_lmp_accept_dhkey_check:
+0x6098 026193 rtn 
+:      026197 send_lmpext_features_res:
+0x6099 026198 force 12 ,queue 
+0x609a 026199 call send_lmpext 
+0x609b 026200 setarg 0x01 
+0x609c 026201 istore 1 ,contw 
+0x609d 026202 fetch 2 ,mem_lmpext_ssp_enable 
+0x609e 026203 istore 2 ,contw 
+0x609f 026204 setarg 0 
+0x60a0 026205 istore 3 ,contw 
+0x60a1 026206 setarg 0x00 
+0x60a2 026207 istore 4 ,contw 
+0x60a3 026208 branch send_lmp_reply 
+:      026209 send_lmpext_io_cap_res:
+0x60a4 026210 force 5 ,queue 
+0x60a5 026211 call send_lmpext 
+0x60a6 026212 fetch 3 ,mem_sp_iocap_local 
+0x60a7 026213 istore 3 ,contw 
+0x60a8 026214 call send_lmp_reply 
+0x60a9 026215 jam flag_pairing_state_pairing ,mem_flag_pairing_state 
+0x60aa 026216 fetch 1 ,mem_sp_iocap_local 
+0x60ab 026217 beq display_yesno ,responder_iocap_display_yesno 
+0x60ac 026218 beq keyboard_only ,responder_iocap_keyboard_only 
+0x60ad 026219 beq no_input_no_output ,responder_iocap_no_input_no_output 
+0x60ae 026220 rtn 
+:      026222 responder_iocap_keyboard_only:
+0x60af 026223 fetch 1 ,mem_sp_iocap_remote 
+0x60b0 026224 beq display_only ,responder_iocap_keyboard_only_initiator_iocap_display_only 
+0x60b1 026225 beq display_yesno ,responder_iocap_keyboard_only_initiator_iocap_display_yesno 
+0x60b2 026226 beq keyboard_only ,responder_iocap_keyboard_only_initiator_iocap_keyboard_only 
+0x60b3 026227 beq no_input_no_output ,responder_iocap_keyboard_only_initiator_iocap_no_input_no_output 
+0x60b4 026228 rtn 
+:      026231 responder_iocap_display_yesno:
+0x60b5 026232 fetch 1 ,mem_sp_iocap_remote 
+0x60b6 026233 beq display_only ,responder_iocap_display_yesno_initiator_iocap_display_only 
+0x60b7 026234 beq display_yesno ,responder_iocap_display_yesno_initiator_iocap_display_yesno 
+0x60b8 026235 beq keyboard_only ,responder_iocap_display_yesno_initiator_iocap_keyboard_only 
+0x60b9 026236 beq no_input_no_output ,responder_iocap_display_yesno_initiator_iocap_no_input_no_output 
+0x60ba 026237 rtn 
+:      026240 responder_iocap_no_input_no_output:
+0x60bb 026241 fetch 1 ,mem_sp_iocap_remote 
+0x60bc 026242 beq display_only ,responder_iocap_no_input_no_output_initiator_iocap_display_only 
+0x60bd 026243 beq display_yesno ,responder_iocap_no_input_no_output_initiator_iocap_display_yesno 
+0x60be 026244 beq keyboard_only ,responder_iocap_no_input_no_output_initiator_iocap_keyboard_only 
+0x60bf 026245 beq no_input_no_output ,responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output 
+0x60c0 026246 rtn 
+:      026248 responder_iocap_keyboard_only_initiator_iocap_no_input_no_output:
+:      026249 responder_iocap_display_yesno_initiator_iocap_no_input_no_output:
+:      026250 responder_iocap_display_yesno_initiator_iocap_display_only:
+:      026251 responder_iocap_no_input_no_output_initiator_iocap_display_only:
+:      026252 responder_iocap_no_input_no_output_initiator_iocap_display_yesno:
+:      026253 responder_iocap_no_input_no_output_initiator_iocap_keyboard_only:
+:      026254 responder_iocap_no_input_no_output_initiator_iocap_no_input_no_output:
+:      026255 set_ssp_mode_justwork:
+0x60c1 026256 jam ssp_mode_just_work_flag ,mem_ssp_mode_flag 
+0x60c2 026257 fetch 1 ,mem_classic_bt_flag 
+0x60c3 026258 bbit1 flag_ssp_reject_justwork ,app_bt_disconnect 
+0x60c4 026259 rtn 
+:      026261 responder_iocap_display_yesno_initiator_iocap_display_yesno:
+:      026262 set_ssp_mode_numeric_comparison:
+0x60c5 026263 jam ssp_mode_ssp_pin_flag ,mem_ssp_mode_flag 
+0x60c6 026264 rtn 
+:      026266 responder_iocap_keyboard_only_initiator_iocap_display_yesno:
+:      026267 responder_iocap_keyboard_only_initiator_iocap_keyboard_only:
+:      026268 responder_iocap_keyboard_only_initiator_iocap_display_only:
+:      026269 responder_iocap_display_yesno_initiator_iocap_keyboard_only:
+:      026270 set_ssp_mode_passkey:
+0x60c7 026271 jam ssp_mode_passkey_entry_flag ,mem_ssp_mode_flag 
+0x60c8 026272 rtn 
+:      026275 classic_bt_set_reject_justwork_flag:
+0x60c9 026276 arg flag_ssp_reject_justwork ,queue 
+0x60ca 026277 branch classic_bluetooth_set_flag 
+:      026279 classic_bt_clr_reject_justwork_flag:
+0x60cb 026280 arg flag_ssp_reject_justwork ,queue 
+0x60cc 026281 branch classic_bluetooth_clr_flag 
+:      026283 classic_bluetooth_set_flag:
+0x60cd 026284 fetch 1 ,mem_classic_bt_flag 
+0x60ce 026285 qset1 pdata 
+0x60cf 026286 store 1 ,mem_classic_bt_flag 
+0x60d0 026287 rtn 
+:      026289 classic_bluetooth_clr_flag:
+0x60d1 026290 fetch 1 ,mem_classic_bt_flag 
+0x60d2 026291 qset0 pdata 
+0x60d3 026292 store 1 ,mem_classic_bt_flag 
+0x60d4 026293 rtn 
+:      026296 send_lmp_io_cap_req:
+0x60d5 026297 force 5 ,queue 
+0x60d6 026298 call send_lmpext 
+0x60d7 026299 fetch 3 ,mem_sp_iocap_local 
+0x60d8 026300 istore 3 ,contw 
+0x60d9 026301 branch send_lmp_request 
+:      026304 send_lmpext_sniff_subrating_req:
+0x60da 026306 rtn 
+:      026307 send_lmpext_sniff_subrating_res:
+0x60db 026308 force 9 ,queue 
+0x60dc 026309 call send_lmpext 
+0x60dd 026310 fetch 1 ,mem_subsniff_rate 
+0x60de 026311 istore 1 ,contw 
+0x60df 026312 fetch 2 ,mem_subsniff_tcmax 
+0x60e0 026313 istore 2 ,contw 
+0x60e1 026314 fetch 4 ,mem_subsniff_instant 
+0x60e2 026315 istore 4 ,contw 
+0x60e3 026316 branch send_lmp_reply 
+:      026318 send_lmp_name_res:
+0x60e4 026319 force 17 ,pdata 
+0x60e5 026320 call msg_send_lmp 
+0x60e6 026321 fetch 1 ,mem_lmi_opcode 
+0x60e7 026322 copy pdata ,temp 
+0x60e8 026323 beq 0x00 ,send_lmp_name_res_offset_ok 
+0x60e9 026324 beq 0x0e ,send_lmp_name_res_offset_ok 
+0x60ea 026325 beq 0x1c ,send_lmp_name_res_offset_ok 
+0x60eb 026326 rtn 
+:      026327 send_lmp_name_res_offset_ok:
+0x60ec 026328 istore 1 ,contw 
+0x60ed 026329 fetch 1 ,mem_local_name_length 
+0x60ee 026330 istore 1 ,contw 
+0x60ef 026331 arg 14 ,loopcnt 
+0x60f0 026332 setarg mem_local_name 
+0x60f1 026333 iadd temp ,contr 
+0x60f2 026334 call memcpy 
+0x60f3 026335 branch send_lmp_reply 
+:      026338 send_lmp_timing_accuracy_res:
+0x60f4 026339 force 3 ,pdata 
+0x60f5 026340 call msg_send_lmp 
+0x60f6 026341 setarg 0x0114 
+0x60f7 026342 istore 2 ,contw 
+0x60f8 026343 branch send_lmp_reply 
+:      026345 send_lmp_clkoffset_res:
+0x60f9 026347 force 3 ,pdata 
+0x60fa 026348 call msg_send_lmp 
+0x60fb 026349 fetch 4 ,mem_clke_bt 
+0x60fc 026350 isub clkn_bt ,pdata 
+0x60fd 026351 branch send_lmp_clkoffset_res_master ,master 
+0x60fe 026352 sub pdata ,0 ,pdata 
+:      026353 send_lmp_clkoffset_res_master:
+0x60ff 026355 rshift2 pdata ,pdata 
+0x6100 026356 set0 15 ,pdata 
+0x6101 026357 istore 2 ,contw 
+0x6102 026358 branch send_lmp_reply 
+:      026360 send_lmp_version_res:
+0x6103 026361 force 6 ,pdata 
+0x6104 026362 call msg_send_lmp 
+0x6105 026363 fetch 5 ,mem_lmp_version 
+0x6106 026364 istore 5 ,contw 
+0x6107 026365 branch send_lmp_reply 
+:      026367 send_lmp_features_res:
+0x6108 026368 force 9 ,pdata 
+0x6109 026369 call msg_send_lmp 
+0x610a 026370 fetch 8 ,mem_features 
+0x610b 026371 istore 8 ,contw 
+0x610c 026372 branch send_lmp_reply 
+:      026379 send_lmpext_features_req:
+0x610d 026380 force 12 ,queue 
+0x610e 026381 call send_lmpext 
+0x610f 026382 setarg 0x01 
+0x6110 026383 istore 1 ,contw 
+0x6111 026384 fetch 2 ,mem_lmpext_ssp_enable 
+0x6112 026385 istore 2 ,contw 
+0x6113 026386 setarg 0 
+0x6114 026387 istore 3 ,contw 
+0x6115 026388 setarg 0x00 
+0x6116 026389 istore 4 ,contw 
+0x6117 026390 branch send_lmp_request 
+:      026392 send_lmpext_packet_type_table_req:
+0x6118 026393 force 3 ,queue 
+0x6119 026394 call send_lmpext 
+0x611a 026395 fetch 1 ,mem_ptt 
+0x611b 026396 istore 1 ,contw 
+0x611c 026397 disable user 
+0x611d 026398 call send_lmp_request 
+0x611e 026399 nrtn user 
+0x611f 026400 nrtn master 
+0x6120 026401 fetch 1 ,mem_afh_cfg 
+0x6121 026402 rtnbit0 afh_cfg_on 
+0x6122 026403 call afh_init 
+0x6123 026404 branch afh_open_all_channels 
+:      026407 ssp_enable:
+0x6124 026408 bpatchx patch30_4 ,mem_patch30 
+0x6125 026409 fetch 1 ,mem_features + 6 
+0x6126 026410 set1 param_featrue_ssp ,pdata 
+0x6127 026411 store 1 ,mem_features + 6 
+0x6128 026412 setarg param_lmpext_ssp_enable 
+0x6129 026413 store 2 ,mem_lmpext_ssp_enable 
+0x612a 026414 rtn 
+:      026416 ssp_disable:
+0x612b 026417 bpatchx patch30_5 ,mem_patch30 
+0x612c 026418 fetch 1 ,mem_features + 6 
+0x612d 026419 set0 param_featrue_ssp ,pdata 
+0x612e 026420 store 1 ,mem_features + 6 
+0x612f 026421 setarg 0 
+0x6130 026422 store 2 ,mem_lmpext_ssp_enable 
+0x6131 026423 rtn 
+:      026425 afh_init:
+0x6132 026426 jam 0x3 ,mem_afh_cfg 
+0x6133 026427 setarg 0 
+0x6134 026428 store 4 ,mem_afh_timer 
+0x6135 026429 arg mem_afh_map_lo ,contw 
+0x6136 026430 call afh_reset_map 
+0x6137 026431 arg mem_afh_map_new ,contw 
+0x6138 026432 call afh_reset_map 
+0x6139 026433 arg mem_afh_classify_channel_map ,contw 
+0x613a 026434 call afh_reset_map 
+0x613b 026435 branch afh_clear_error_counter 
+:      026436 afh_open_all_channels:
+0x613c 026437 arg mem_afh_map_new ,contw 
+0x613d 026438 call afh_reset_map 
+0x613e 026439 call afh_clear_error_counter 
+0x613f 026440 branch afh_set_send_flag 
+:      026443 afh_reset_map:
+0x6140 026444 setarg 0xffffff 
+0x6141 026445 istore 3 ,contw 
+0x6142 026446 istore 3 ,contw 
+0x6143 026447 istore 3 ,contw 
+0x6144 026448 setarg 0x7f 
+0x6145 026449 istore 1 ,contw 
+0x6146 026450 rtn 
+:      026451 afh_clear_error_counter:
+0x6147 026452 setarg 0 
+0x6148 026453 store 2 ,mem_afh_error_total 
+0x6149 026454 rtn 
+:      026455 afh_set_send_flag:
+0x614a 026456 fetch 1 ,mem_afh_cfg 
+0x614b 026457 set1 send_lmp_set_afh ,pdata 
+0x614c 026458 store 1 ,mem_afh_cfg 
+0x614d 026459 rtn 
+:      026462 send_lmpext_pause_encryption_req:
+0x614e 026463 force 2 ,queue 
+0x614f 026464 call send_lmpext 
+0x6150 026465 nbranch send_lmp_reply ,master 
+0x6151 026467 branch send_lmp_request 
+:      026471 send_lmp_detach:
+0x6152 026472 force 2 ,pdata 
+0x6153 026473 call msg_send_lmp 
+0x6154 026474 fetch 1 ,mem_disconn_reason_send 
+0x6155 026475 istore 1 ,contw 
+0x6156 026476 call send_lmp_request 
+:      026477 prepare_disconnect:
+0x6157 026478 fetch 1 ,mem_op 
+0x6158 026479 set1 op_disconn ,pdata 
+0x6159 026480 store 1 ,mem_op 
+0x615a 026481 jam 50 ,mem_conn_timer 
+0x615b 026482 rtn 
+:      026485 send_lmp_no_payload:
+0x615c 026486 force 1 ,pdata 
+0x615d 026487 call msg_send_lmp 
+0x615e 026488 branch send_lmp_request 
+:      026489 send_lmp_nopayload_reply:
+0x615f 026490 force 1 ,pdata 
+0x6160 026491 call msg_send_lmp 
+0x6161 026492 branch send_lmp_reply 
+:      026495 send_lmp_encryption_mode_req:
+0x6162 026496 force 2 ,pdata 
+0x6163 026497 call msg_send_lmp 
+0x6164 026498 fetch 1 ,mem_state_map 
+0x6165 026499 isolate0 smap_encryption ,pdata 
+0x6166 026500 setflag true ,0 ,pdata 
+0x6167 026501 and_into 1 ,pdata 
+0x6168 026502 istore 1 ,contw 
+0x6169 026503 branch send_lmp_request 
+:      026506 send_lmp_superto:
+0x616a 026507 force 3 ,pdata 
+0x616b 026508 call msg_send_lmp 
+0x616c 026509 fetch 2 ,mem_supervision_to 
+0x616d 026510 istore 2 ,contw 
+0x616e 026511 branch send_lmp_request 
+:      026513 send_lmp_name_req:
+0x616f 026514 jam 250 ,mem_conn_timer 
+0x6170 026515 force 2 ,pdata 
+0x6171 026516 call msg_send_lmp 
+0x6172 026517 fetch 1 ,mem_name_offset 
+0x6173 026518 istore 1 ,contw 
+0x6174 026519 branch send_lmp_request 
+:      026521 send_lmp_test_control:
+0x6175 026522 force 10 ,pdata 
+0x6176 026523 call msg_send_lmp 
+0x6177 026524 arg mem_temp_payload ,contr 
+0x6178 026525 force 9 ,loopcnt 
+:      026526 send_lmp_test_control_loop:
+0x6179 026527 ifetch 1 ,contr 
+0x617a 026528 xor_into 0x55 ,pdata 
+0x617b 026529 istore 1 ,contw 
+0x617c 026530 loop send_lmp_test_control_loop 
+0x617d 026531 branch send_lmp_request 
+:      026533 send_lmp_quality_of_service_req:
+0x617e 026534 branch send_lmp_request 
+:      026535 send_lmp_unit_key:
+0x617f 026536 branch send_lmp_request 
+:      026538 send_lmp_slot_offset:
+0x6180 026539 rtn master 
+0x6181 026540 call calc_slot_offset 
+0x6182 026541 force 9 ,pdata 
+0x6183 026542 call msg_send_lmp 
+0x6184 026543 fetch 2 ,mem_slot_offset 
+0x6185 026544 istore 2 ,contw 
+0x6186 026545 fetch 3 ,mem_lap 
+0x6187 026546 istore 3 ,contw 
+0x6188 026547 fetch 1 ,mem_uap 
+0x6189 026548 istore 1 ,contw 
+0x618a 026549 fetch 2 ,mem_nap 
+0x618b 026550 istore 2 ,contw 
+0x618c 026551 bmark0 mark_switch_initiated ,send_lmp_slot_offset_reply 
+0x618d 026552 set0 mark_switch_initiated ,mark 
+0x618e 026553 call send_lmp_request 
+0x618f 026554 jam lmp_switch_req ,mem_lmo_opcode2 
+0x6190 026555 rtn 
+:      026556 send_lmp_slot_offset_reply:
+0x6191 026557 call send_lmp_reply 
+0x6192 026558 jam lmp_accepted ,mem_lmo_opcode2 
+0x6193 026559 jam lmp_switch_req ,mem_lmi_opcode2 
+0x6194 026560 rtn 
+:      026562 send_lmp_switch_req:
+0x6195 026563 arg 0x200 ,temp 
+0x6196 026564 branch switch_on_native ,master 
+0x6197 026565 deposit clke_bt 
+0x6198 026566 branch switch_slack 
+:      026567 switch_on_native:
+0x6199 026568 deposit clkn_bt 
+:      026569 switch_slack:
+0x619a 026570 deposit bt_clk 
+0x619b 026571 iadd temp ,pdata 
+0x619c 026572 and_into 0x1fc ,pdata 
+0x619d 026573 store 4 ,mem_sniff_anchor 
+0x619e 026574 force 5 ,pdata 
+0x619f 026575 call msg_send_lmp 
+0x61a0 026576 fetch 4 ,mem_sniff_anchor 
+0x61a1 026577 rshift pdata ,pdata 
+0x61a2 026578 istore 4 ,contw 
+0x61a3 026579 branch send_lmp_request 
+:      026581 send_lmp_sniff_req:
+0x61a4 026582 force 10 ,pdata 
+0x61a5 026583 call msg_send_lmp 
+0x61a6 026584 arg mem_sniff_payload ,contr 
+0x61a7 026585 ifetch 9 ,contr 
+0x61a8 026586 istore 9 ,contw 
+0x61a9 026587 branch send_lmp_request 
+:      026590 send_lmp_timing_accuracy_req:
+0x61aa 026592 force 3 ,pdata 
+0x61ab 026593 call msg_send_lmp 
+0x61ac 026594 setarg 0x0114 
+0x61ad 026595 istore 2 ,contw 
+0x61ae 026596 branch send_lmp_request 
+:      026598 send_lmp_unsniff_req:
+0x61af 026600 force 1 ,pdata 
+0x61b0 026601 call msg_send_lmp 
+0x61b1 026610 branch send_lmp_request 
+:      026613 send_lmp_max_slot:
+0x61b2 026614 force 2 ,pdata 
+0x61b3 026615 call msg_send_lmp 
+0x61b4 026616 fetch 1 ,mem_max_slot 
+0x61b5 026617 istore 1 ,contw 
+0x61b6 026618 branch send_lmp_request 
+:      026621 send_lmp_max_slot_req:
+0x61b7 026622 force 2 ,pdata 
+0x61b8 026623 call msg_send_lmp 
+0x61b9 026624 setarg 0x05 
+0x61ba 026625 istore 1 ,contw 
+0x61bb 026626 branch send_lmp_request 
+:      026629 send_lmp_inc_power:
+0x61bc 026630 force 2 ,pdata 
+0x61bd 026631 call msg_send_lmp 
+0x61be 026632 setarg 0x00 
+0x61bf 026633 istore 1 ,contw 
+0x61c0 026634 branch send_lmp_request 
+:      026637 send_lmp_setup_complete_by_module:
+0x61c1 026638 jam lmp_max_slot_req ,mem_lmo_opcode2 
+0x61c2 026639 rtn 
+:      026640 send_lmp_setup_complete:
+0x61c3 026641 fetch 1 ,mem_device_option 
+0x61c4 026642 sub pdata ,dvc_op_module ,null 
+0x61c5 026643 call send_lmp_setup_complete_by_module ,zero 
+0x61c6 026644 fetch 1 ,mem_state 
+0x61c7 026645 set1 state_conn_comp ,pdata 
+0x61c8 026646 store 1 ,mem_state 
+0x61c9 026647 copy clkn_bt ,pdata 
+0x61ca 026648 store 4 ,mem_aurand_send_delay_time 
+0x61cb 026649 fetch 1 ,mem_lmp_conn_state 
+0x61cc 026650 bbit1 sent_setup_complete ,send_lmp_setup_complete_has_sent 
+0x61cd 026651 set1 sent_setup_complete ,pdata 
+0x61ce 026652 store 1 ,mem_lmp_conn_state 
+0x61cf 026653 jam bt_evt_setup_complete ,mem_fifo_temp 
+0x61d0 026654 call ui_ipc_send_event 
+0x61d1 026655 force 1 ,pdata 
+0x61d2 026656 call msg_send_lmp 
+0x61d3 026657 branch send_lmp_request 
+:      026658 send_lmp_setup_complete_has_sent:
+0x61d4 026659 jam 0 ,mem_lmp_to_send 
+0x61d5 026660 rtn 
+:      026662 send_lmp_version_req:
+0x61d6 026663 force 6 ,pdata 
+0x61d7 026664 call msg_send_lmp 
+0x61d8 026665 fetch 5 ,mem_lmp_version 
+0x61d9 026666 istore 5 ,contw 
+0x61da 026667 branch send_lmp_request 
+:      026669 send_lmp_features_req:
+0x61db 026670 force 9 ,pdata 
+0x61dc 026671 call msg_send_lmp 
+0x61dd 026672 fetch 8 ,mem_features 
+0x61de 026673 istore 8 ,contw 
+0x61df 026674 branch send_lmp_request 
+:      026676 sp_master_send_io_cap_get:
+0x61e0 026677 jam sp_flag_commit ,mem_master_sp_flag 
+0x61e1 026678 fetch 1 ,mem_sp_local_key_invalid 
+0x61e2 026679 rtnne sp_key_valid 
+0x61e3 026680 jam sp_master_stat_start_done ,mem_master_sp_state 
+0x61e4 026681 rtn 
+:      026683 sp_master_send_io_cap_send:
+0x61e5 026684 call tid_initiate 
+0x61e6 026685 jam lmp_io_cap_req ,mem_lmo_opcode2 
+0x61e7 026686 jam sp_stat_key_send ,mem_master_sp_state 
+0x61e8 026687 rtn 
+:      026690 sp_master_send_lmp_encapsulated_header:
+0x61e9 026691 call tid_initiate 
+0x61ea 026692 jam lmp_encapsulated_header ,mem_lmo_opcode2 
+0x61eb 026693 jam sp_stat_random_send ,mem_master_sp_state 
+0x61ec 026694 rtn 
+:      026696 sp_master_commitment_compare:
+0x61ed 026697 arg mem_sp_calc_result_high ,rega 
+0x61ee 026698 arg mem_sp_confirm_remote ,regb 
+0x61ef 026699 arg 16 ,loopcnt 
+0x61f0 026700 call string_compare 
+0x61f1 026701 branch sp_master_commitment_compare_success ,zero 
+0x61f2 026702 jam sp_stat_null ,mem_master_sp_state 
+0x61f3 026703 call master_clear_mem_master_sp_flag 
+0x61f4 026704 jam pdu_not_allowed ,mem_lmo_reason2 
+0x61f5 026705 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
+0x61f6 026706 branch reject_lmp_packet 
+:      026707 sp_master_commitment_compare_success:
+0x61f7 026708 jam sp_stat_confirm_calc ,mem_master_sp_state 
+0x61f8 026709 call master_set_mem_master_sp_flag 
+0x61f9 026710 jam lmp_simple_pairing_number ,mem_lmi_opcode2 
+0x61fa 026711 branch accept_lmp_msg 
+:      026715 sp_master_send_lmp_simple_pairing_number:
+0x61fb 026716 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
+0x61fc 026717 rtn 
+:      026721 sp_send_lmp_encapsulated_header:
+0x61fd 026724 jam lmp_encapsulated_header ,mem_lmo_opcode2 
+0x61fe 026726 rtn 
+:      026732 send_lmp_encapsulated_header:
+0x61ff 026733 jam 0 ,mem_sp_local_key_send_count 
+0x6200 026734 force 4 ,pdata 
+0x6201 026735 call msg_send_lmp 
+0x6202 026736 force encapsulated_major_type_p192 ,pdata 
+0x6203 026737 istore 1 ,contw 
+0x6204 026738 force encapsulated_minor_type_p192 ,pdata 
+0x6205 026739 istore 1 ,contw 
+0x6206 026740 force encapsulated_len_p192 ,pdata 
+0x6207 026741 istore 1 ,contw 
+0x6208 026742 call check_localsm 
+0x6209 026743 branch send_lmp_request ,true 
+0x620a 026744 branch send_lmp_reply 
+:      026746 send_lmp_encapsulated_payload:
+0x620b 026748 force 17 ,pdata 
+0x620c 026749 call msg_send_lmp 
+0x620d 026750 fetch 1 ,mem_sp_local_key_send_count 
+0x620e 026751 arg mem_sp_pubkey_local ,contr 
+0x620f 026752 iadd contr ,contr 
+0x6210 026753 ifetch 8 ,contr 
+0x6211 026754 istore 8 ,contw 
+0x6212 026755 ifetch 8 ,contr 
+0x6213 026756 istore 8 ,contw 
+0x6214 026757 fetch 1 ,mem_sp_local_key_send_count 
+0x6215 026758 increase 16 ,pdata 
+0x6216 026759 store 1 ,mem_sp_local_key_send_count 
+0x6217 026760 call check_localsm 
+0x6218 026761 branch send_lmp_request ,true 
+0x6219 026762 branch send_lmp_reply 
+:      026765 sp_send_lmp_simple_pairing_comfirm:
+0x621a 026766 jam sp_stat_random_recv ,mem_sp_state 
+0x621b 026767 jam lmp_simple_pairing_confirm ,mem_lmo_opcode2 
+0x621c 026768 rtn 
+:      026769 send_lmp_simple_pairing_comfirm:
+0x621d 026772 force 17 ,pdata 
+0x621e 026773 call msg_send_lmp 
+0x621f 026774 arg mem_sp_calc_result_high ,contr 
+0x6220 026775 ifetch 8 ,contr 
+0x6221 026776 istore 8 ,contw 
+0x6222 026777 ifetch 8 ,contr 
+0x6223 026778 istore 8 ,contw 
+0x6224 026779 branch send_lmp_reply 
+:      026781 sp_send_lmp_simple_pairing_number:
+0x6225 026782 jam lmp_simple_pairing_number ,mem_lmo_opcode2 
+0x6226 026783 rtn 
+:      026785 send_lmp_simple_pairing_number:
+0x6227 026787 call check_localsm 
+0x6228 026788 call sp_local_random_key_generator ,true 
+0x6229 026789 force 17 ,pdata 
+0x622a 026790 call msg_send_lmp 
+0x622b 026791 arg mem_sp_random_local ,contr 
+0x622c 026792 ifetch 8 ,contr 
+0x622d 026793 istore 8 ,contw 
+0x622e 026794 ifetch 8 ,contr 
+0x622f 026795 istore 8 ,contw 
+0x6230 026796 call check_localsm 
+0x6231 026797 nbranch send_lmp_reply ,true 
+0x6232 026798 branch send_lmp_request ,true 
+:      026800 master_sp_sm_end:
+0x6233 026802 jam sp_stat_done ,mem_master_sp_state 
+:      026803 sp_aurand_send:
+0x6234 026804 call tid_initiate 
+0x6235 026805 jam lmp_au_rand ,mem_lmo_opcode2 
+0x6236 026806 call check_localsm_master 
+0x6237 026807 branch sp_master_key_prarm_push ,true 
+0x6238 026808 branch sp_link_key_prarm_push 
+:      026809 master_sp_send_lmp_dhkey_check:
+0x6239 026810 call tid_reply 
+:      026811 sp_send_lmp_dhkey_check:
+0x623a 026812 jam lmp_dhkey_check ,mem_lmo_opcode2 
+0x623b 026813 rtn 
+:      026814 send_lmp_dhkey_check:
+0x623c 026816 force 17 ,pdata 
+0x623d 026817 call msg_send_lmp 
+0x623e 026818 arg mem_sp_calc_result_high ,contr 
+0x623f 026819 ifetch 8 ,contr 
+0x6240 026820 istore 8 ,contw 
+0x6241 026821 ifetch 8 ,contr 
+0x6242 026822 istore 8 ,contw 
+0x6243 026823 call check_localsm 
+0x6244 026824 nbranch send_lmp_reply ,true 
+0x6245 026825 branch send_lmp_request ,true 
+:      026827 send_lmp_enc_key_size_mask_res:
+0x6246 026828 force 3 ,pdata 
+0x6247 026829 call msg_send_lmp 
+0x6248 026830 setarg 0xfffe 
+0x6249 026831 istore 2 ,contw 
+0x624a 026832 branch send_lmp_reply 
+:      026834 send_lmp_auto_rate:
+0x624b 026835 branch send_lmp_request 
+:      026836 send_lmp_clkoffset_req:
+0x624c 026837 branch send_lmp_request 
+:      026838 send_lmp_quality_of_service:
+0x624d 026839 branch send_lmp_request 
+:      026840 send_lmp_test_activate:
+0x624e 026841 branch send_lmp_request 
+:      026846 send_lmp_comb_key:
+0x624f 026847 call generate_random_number 
+0x6250 026848 arg mem_lap ,rega 
+0x6251 026849 call generate_linkkey 
+0x6252 026850 force 17 ,pdata 
+0x6253 026851 call msg_send_lmp 
+0x6254 026852 arg mem_kinit ,rega 
+0x6255 026853 arg mem_random_number ,regb 
+0x6256 026854 call xor16 
+0x6257 026855 nbranch send_lmp_follow ,master 
+0x6258 026856 branch send_lmp_tid 
+:      026858 send_lmp_inrand:
+0x6259 026859 call generate_random_number 
+0x625a 026860 arg mem_plap ,rega 
+0x625b 026861 call generate_kinit 
+:      026862 send_lmp_rand:
+0x625c 026863 force 17 ,pdata 
+0x625d 026864 call msg_send_lmp 
+0x625e 026865 arg mem_random_number ,contr 
+0x625f 026866 call memcpy16 
+0x6260 026867 fetch 1 ,mem_conn_sm 
+0x6261 026868 beq conn_sm_auth_wait ,send_lmp_request 
+0x6262 026869 beq conn_sm_pairing_wait ,send_lmp_request 
+0x6263 026870 branch send_lmp_tid 
+:      026872 send_lmp_aurand:
+0x6264 026873 fetch 1 ,mem_pairing_auth 
+0x6265 026874 branch send_lmp_aurand_notpairing ,blank 
+0x6266 026875 call check_localsm 
+0x6267 026876 call tid_initiate ,true 
+0x6268 026877 ncall tid_reply ,true 
+0x6269 026878 branch send_lmp_aurand_common 
+:      026879 send_lmp_aurand_notpairing:
+0x626a 026880 call tid_initiate 
+:      026881 send_lmp_aurand_common:
+0x626b 026882 call generate_random_number 
+0x626c 026883 branch send_lmp_rand 
+:      026885 send_lmp_sres:
+0x626d 026886 arg mem_lap ,rega 
+0x626e 026887 call function_e1 
+0x626f 026888 force 5 ,pdata 
+0x6270 026889 call msg_send_lmp 
+0x6271 026890 fetch 4 ,mem_input_store 
+0x6272 026891 istore 4 ,contw 
+0x6273 026892 arg mem_sres_tid ,temp 
+0x6274 026893 call special_tid_store 
+0x6275 026894 call copy_aco 
+0x6276 026895 call check_localsm 
+0x6277 026896 branch send_lmp_sres_master ,true 
+0x6278 026897 jam done_encryp ,mem_wait_encryption 
+0x6279 026898 fetch 1 ,mem_pairing_auth 
+0x627a 026899 rtn blank 
+0x627b 026900 jam lmp_au_rand ,mem_lmo_opcode2 
+:      026901 send_lmp_sres_master:
+0x627c 026902 fetch 1 ,mem_link_key_exists 
+0x627d 026903 rtn blank 
+:      026904 send_lmp_sres_startenc:
+0x627e 026905 call check_localsm 
+0x627f 026906 nbranch send_lmp_sres_startenc_slave ,true 
+0x6280 026907 fetch 1 ,mem_auth_enable 
+0x6281 026908 rtn blank 
+0x6282 026909 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+0x6283 026910 rtn 
+:      026911 send_lmp_sres_startenc_slave:
+0x6284 026912 rtnmark0 mark_slave_in_rand_accepted 
+0x6285 026913 set0 mark_slave_in_rand_accepted ,mark 
+0x6286 026914 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+0x6287 026915 rtn 
+:      026919 send_lmp_start_encryption:
+0x6288 026920 call generate_random_number 
+0x6289 026921 call function_e3 
+0x628a 026922 force 17 ,pdata 
+0x628b 026923 call msg_send_lmp 
+0x628c 026924 arg mem_random_number ,contr 
+0x628d 026925 call memcpy16 
+0x628e 026926 branch send_lmp_tid 
+:      026928 send_lmp_stop_encryption_req:
+0x628f 026929 force 1 ,pdata 
+0x6290 026930 call msg_send_lmp 
+0x6291 026931 branch send_lmp_tid 
+:      026933 send_lmp_encryption_key_size_req:
+0x6292 026934 force 2 ,pdata 
+0x6293 026935 call msg_send_lmp 
+0x6294 026936 force 16 ,pdata 
+0x6295 026937 istore 1 ,contw 
+0x6296 026938 store 1 ,mem_key_size 
+0x6297 026939 branch send_lmp_tid 
+:      026941 msg_send_lmp:
+0x6298 026943 lshift3 pdata ,pdata 
+0x6299 026944 or_into 0x07 ,pdata 
+0x629a 026945 store 1 ,mem_lmo_header_length 
+0x629b 026946 arg 17 ,loopcnt 
+0x629c 026947 arg mem_lmo_payload ,contw 
+0x629d 026948 call clear_mem 
+0x629e 026949 arg mem_lmo_payload ,contw 
+0x629f 026950 rtn 
+:      026952 send_lmpext:
+0x62a0 026953 and pdata ,0x7f ,rega 
+0x62a1 026954 jam lmp_escape ,mem_lmp_to_send 
+0x62a2 026955 deposit queue 
+0x62a3 026956 call msg_send_lmp 
+0x62a4 026957 deposit rega 
+0x62a5 026958 istore 1 ,contw 
+0x62a6 026959 rtn 
+:      026961 send_lmp_follow:
+0x62a7 026962 fetch 1 ,mem_lmp_to_send 
+0x62a8 026963 lshift pdata ,pdata 
+0x62a9 026964 fetcht 1 ,mem_state_map 
+0x62aa 026965 isolate1 smap_lmptid ,temp 
+0x62ab 026966 setflag true ,0 ,pdata 
+0x62ac 026967 branch send_lmp_exit 
+:      026970 send_lmp_tid:
+0x62ad 026971 fetcht 1 ,mem_state_map 
+0x62ae 026972 and_into 1 ,temp 
+0x62af 026973 branch send_lmp_end 
+:      026975 send_lmp_reply:
+0x62b0 026976 force 0 ,temp 
+0x62b1 026977 branch send_lmp_end 
+:      026979 send_lmp_request:
+0x62b2 026980 force 1 ,temp 
+:      026981 send_lmp_end:
+0x62b3 026982 fetch 1 ,mem_lmp_to_send 
+0x62b4 026983 lshift pdata ,pdata 
+0x62b5 026984 setflag master ,0 ,pdata 
+0x62b6 026985 ixor temp ,pdata 
+:      026986 send_lmp_exit:
+0x62b7 026987 store 1 ,mem_lmo_header_opcode 
+0x62b8 026988 jam 0 ,mem_lmp_to_send 
+0x62b9 026989 call lmo_fifo_process_lmo0empty 
+0x62ba 026990 enable user 
+0x62bb 026991 rtn 
+:      026994 lmo_fifo_check:
+0x62bc 026995 fetch 1 ,mem_lmo_opcode2 
+0x62bd 026996 rtn blank 
+0x62be 026997 call lmo_fifo_process 
+0x62bf 026998 fetch 1 ,mem_lmo_opcode2 
+0x62c0 026999 rtn 
+:      027001 lmo_fifo_process:
+0x62c1 027002 bpatchx patch30_6 ,mem_patch30 
+0x62c2 027003 fetch 1 ,mem_lmp_to_send 
+0x62c3 027004 branch lmo_fifo_process_lmo0empty ,blank 
+0x62c4 027005 fetch 1 ,mem_lmo_opcode1 
+0x62c5 027006 nrtn blank 
+0x62c6 027007 branch lmo_fifo_process_lmo2to1 
+:      027008 lmo_fifo_process_lmo0empty:
+0x62c7 027009 fetch 1 ,mem_lmo_opcode1 
+0x62c8 027010 branch lmo_fifo_process_lmo1_empty ,blank 
+0x62c9 027011 fetch 3 ,mem_lmo_opcode1 
+0x62ca 027012 store 3 ,mem_lmp_to_send 
+0x62cb 027013 fetcht 1 ,mem_lmo_tid1 
+0x62cc 027014 fetch 1 ,mem_state_map 
+0x62cd 027015 set0 smap_lmptid ,pdata 
+0x62ce 027016 ior temp ,pdata 
+0x62cf 027017 store 1 ,mem_state_map 
+0x62d0 027018 jam 0 ,mem_lmo_opcode1 
+:      027019 lmo_fifo_process_lmo2to1:
+0x62d1 027020 fetch 1 ,mem_lmo_opcode2 
+0x62d2 027021 rtn blank 
+0x62d3 027022 fetch 4 ,mem_lmo_opcode2 
+0x62d4 027023 store 4 ,mem_lmo_opcode1 
+0x62d5 027024 jam 0 ,mem_lmo_opcode2 
+0x62d6 027025 rtn 
+:      027026 lmo_fifo_process_lmo1_empty:
+0x62d7 027027 fetch 1 ,mem_lmo_opcode2 
+0x62d8 027028 rtn blank 
+0x62d9 027029 fetch 3 ,mem_lmo_opcode2 
+0x62da 027030 store 3 ,mem_lmp_to_send 
+0x62db 027031 fetcht 1 ,mem_lmo_tid2 
+0x62dc 027032 fetch 1 ,mem_state_map 
+0x62dd 027033 set0 smap_lmptid ,pdata 
+0x62de 027034 ior temp ,pdata 
+0x62df 027035 store 1 ,mem_state_map 
+0x62e0 027036 jam 0 ,mem_lmo_opcode2 
+0x62e1 027037 rtn 
+:      027040 special_tid_store:
+0x62e2 027041 bpatchx patch30_7 ,mem_patch30 
+0x62e3 027042 fetch 1 ,mem_state_map 
+0x62e4 027043 copy pdata ,regc 
+0x62e5 027044 ifetch 1 ,temp 
+0x62e6 027045 call pop_tid_follow 
+0x62e7 027046 call send_lmp_follow 
+0x62e8 027047 copy regc ,pdata 
+0x62e9 027048 store 1 ,mem_state_map 
+0x62ea 027049 rtn 
+:      027051 tid_reply:
+0x62eb 027052 fetcht 1 ,mem_state_map 
+0x62ec 027053 set0 smap_lmptidinit ,temp 
+0x62ed 027054 storet 1 ,mem_state_map 
+0x62ee 027055 rtn 
+:      027057 tid_initiate:
+0x62ef 027058 fetcht 1 ,mem_state_map 
+0x62f0 027059 set1 smap_lmptidinit ,temp 
+0x62f1 027060 storet 1 ,mem_state_map 
+0x62f2 027061 rtn 
+:      027064 tid_check:
+0x62f3 027065 nsetflag master ,smap_lmptid ,pdata 
+0x62f4 027066 fetcht 1 ,mem_state_map 
+0x62f5 027067 ixor temp ,pdata 
+0x62f6 027068 isolate1 smap_lmptid ,pdata 
+0x62f7 027069 rtn 
+:      027072 tid_set_reply:
+0x62f8 027073 fetch 1 ,mem_state_map 
+0x62f9 027074 setflag master ,smap_lmptid ,pdata 
+0x62fa 027075 store 1 ,mem_state_map 
+0x62fb 027076 rtn 
+:      027079 check_localsm:
+0x62fc 027080 fetch 1 ,mem_sp_localsm 
+0x62fd 027081 compare local_statemachine ,pdata ,0x7f 
+0x62fe 027082 rtn 
+:      027083 setlocalsm_master:
+0x62ff 027084 fetch 1 ,mem_sp_localsm 
+0x6300 027085 set1 7 ,pdata 
+0x6301 027086 store 1 ,mem_sp_localsm 
+0x6302 027087 rtn 
+:      027088 setlocalsm_slave:
+0x6303 027089 fetch 1 ,mem_sp_localsm 
+0x6304 027090 set0 7 ,pdata 
+0x6305 027091 store 1 ,mem_sp_localsm 
+0x6306 027092 rtn 
+:      027093 check_localsm_master:
+0x6307 027094 fetch 1 ,mem_sp_localsm 
+0x6308 027095 isolate1 7 ,pdata 
+0x6309 027096 store 1 ,mem_sp_localsm 
+0x630a 027097 rtn 
+:      027099 generate_random_number:
+0x630b 027101 arg mem_random_number ,contw 
+:      027102 generate_random:
+0x630c 027103 force 16 ,loopcnt 
+:      027104 generate_random_another:
+:      027105 generate_random_loop:
+0x630d 027106 random pdata 
+0x630e 027107 istore 1 ,contw 
+0x630f 027108 loop generate_random_another 
+0x6310 027109 rtn 
+:      027111 generate_linkkey:
+0x6311 027112 call function_e21 
+0x6312 027113 arg mem_link_key ,rega 
+0x6313 027114 arg mem_input_store ,regb 
+0x6314 027115 ifetch 8 ,rega 
+0x6315 027116 fetcht 1 ,mem_state 
+0x6316 027117 nsetflag blank ,state_combkey ,temp 
+0x6317 027118 storet 1 ,mem_state 
+0x6318 027119 copy rega ,contw 
+0x6319 027120 call xor16 
+0x631a 027121 branch generate_linkkey_continue 
+:      027127 process_conn_sm:
+0x631b 027129 bpatchx patch31_0 ,mem_patch31 
+0x631c 027131 call lmo_fifo_check 
+0x631d 027132 nrtn blank 
+:      027133 process_conn_sm_continue:
+0x631e 027134 fetch 1 ,mem_conn_sm 
+0x631f 027135 rtn blank 
+0x6320 027139 beq conn_sm_send_conn_req ,host_create_conn_send_conn_req 
+0x6321 027140 beq conn_sm_wait_conn_accept ,host_create_conn_wait_accept 
+0x6322 027141 beq conn_sm_send_features ,host_create_conn_send_features 
+0x6323 027142 beq conn_sm_wait_features_res ,host_create_conn_waiting 
+0x6324 027143 beq conn_sm_send_switch ,host_create_conn_send_switch 
+0x6325 027144 beq conn_sm_auth_pair ,host_create_conn_auth_pair 
+0x6326 027145 beq conn_sm_auth_pair_wait ,host_create_conn_auth_pair_wait 
+0x6327 027146 beq conn_sm_encrypt ,host_create_conn_encrypt 
+0x6328 027147 beq conn_sm_encrypt_wait ,host_create_conn_encrypt_wait 
+0x6329 027148 beq conn_sm_encrypt_wait_clear ,host_create_conn_encrypt_wait_clear 
+0x632a 027149 beq conn_sm_send_setup_complete ,host_create_conn_send_setup_complete 
+0x632b 027150 beq conn_sm_wait_setup_complete ,host_create_conn_wait_setup_complete 
+0x632c 027151 beq conn_sm_detach_delay ,host_create_conn_master_detach 
+0x632d 027152 beq conn_sm_send_version ,host_create_conn_send_version 
+0x632e 027153 beq conn_sm_wait_version ,host_create_conn_waiting 
+0x632f 027154 beq conn_sm_wait_switch_after_host_connection ,host_creat_conn_wait_switch 
+0x6330 027155 beq conn_sm_send_features_ext ,host_creat_conn_send_feat_ext 
+0x6331 027156 beq conn_sm_wait_features_ext ,host_create_conn_waiting 
+0x6332 027157 beq conn_sm_pairing ,host_create_conn_pairing 
+0x6333 027158 beq conn_sm_pairing_wait ,host_create_conn_pairing_wait 
+0x6334 027159 beq conn_sm_auth ,host_create_conn_auth 
+0x6335 027160 beq conn_sm_auth_wait ,host_create_conn_auth_wait 
+0x6336 027161 beq conn_sm_done ,host_create_conn_done 
+0x6337 027162 beq conn_sm_wait_done ,host_create_conn_done_wait 
+0x6338 027163 jam conn_sm_standby ,mem_conn_sm 
+0x6339 027165 rtn 
+:      027166 host_create_conn_done:
+0x633a 027167 fetch 1 ,mem_lmp_conn_state 
+0x633b 027168 rtnbit0 received_setup_complete 
+0x633c 027169 rtnbit0 sent_setup_complete 
+0x633d 027170 jam conn_sm_standby ,mem_conn_sm 
+0x633e 027171 call host_conn_judge_encrypt 
+0x633f 027172 branch scheduler_start_upper_sm 
+:      027174 host_conn_judge_encrypt:
+0x6340 027175 fetch 1 ,mem_connection_options 
+0x6341 027176 rtnbit0 connection_encrypt 
+0x6342 027177 jam conn_sm_encrypt_wait ,mem_conn_sm 
+0x6343 027178 rtn 
+:      027180 host_create_conn_done_wait:
+0x6344 027181 arg enpt_delay_timer ,queue 
+0x6345 027182 call timer_check 
+0x6346 027183 nrtn blank 
+0x6347 027184 jam conn_sm_done ,mem_conn_sm 
+0x6348 027185 rtn 
+:      027187 host_create_conn_auth:
+0x6349 027188 fetch 1 ,mem_connection_options 
+0x634a 027189 set0 connection_auth ,pdata 
+0x634b 027190 store 1 ,mem_connection_options 
+0x634c 027191 jam conn_sm_auth_wait ,mem_conn_sm 
+0x634d 027192 jam lmp_au_rand ,mem_lmo_opcode2 
+0x634e 027193 rtn 
+:      027194 host_create_conn_auth_wait:
+0x634f 027195 rtn 
+:      027196 host_create_conn_pairing:
+0x6350 027197 fetch 1 ,mem_pincode_state 
+0x6351 027198 rtnne pincode_state_pincode_ready 
+0x6352 027199 call host_auth 
+0x6353 027200 jam conn_sm_pairing_wait ,mem_conn_sm 
+0x6354 027201 rtn 
+:      027203 host_create_conn_pairing_wait:
+0x6355 027204 rtn 
+:      027205 host_creat_conn_send_feat_ext:
+0x6356 027206 jam conn_sm_wait_features_ext ,mem_conn_sm 
+0x6357 027207 jam lmp_ext_features_req ,mem_lmo_opcode2 
+0x6358 027208 rtn 
+:      027209 host_create_conn_send_version:
+0x6359 027210 jam conn_sm_wait_version ,mem_conn_sm 
+0x635a 027211 jam lmp_version_req ,mem_lmo_opcode2 
+0x635b 027212 rtn 
+:      027214 host_creat_conn_wait_switch:
+0x635c 027215 fetch 1 ,mem_switch_flag 
+0x635d 027216 rtneq switch_flag_init 
+0x635e 027217 beq switch_flag_accept ,host_create_conn_switch_accept 
+0x635f 027218 arg switch_wait_timer ,queue 
+0x6360 027219 call timer_check 
+0x6361 027220 nrtn blank 
+0x6362 027221 jam switch_flag_init ,mem_switch_flag 
+0x6363 027222 branch host_create_conn_switch 
+:      027223 host_create_conn_switch_accept:
+0x6364 027224 rtn master 
+0x6365 027225 branch host_create_conn_auth_pair 
+:      027227 host_create_conn_send_features:
+0x6366 027228 jam conn_sm_wait_features_res ,mem_conn_sm 
+0x6367 027229 jam lmp_features_req ,mem_lmo_opcode2 
+0x6368 027230 rtn 
+:      027231 host_create_conn_send_switch:
+0x6369 027232 jam lmp_switch_req ,mem_lmo_opcode2 
+0x636a 027233 set1 mark_switch_initiated ,mark 
+0x636b 027234 jam conn_sm_wait_conn_accept ,mem_conn_sm 
+0x636c 027235 setarg 0x1ff 
+0x636d 027236 store 2 ,mem_soft_timer 
+0x636e 027237 rtn 
+:      027238 host_create_conn_send_conn_req:
+0x636f 027239 jam conn_sm_wait_conn_accept ,mem_conn_sm 
+0x6370 027240 jam 0xff ,mem_soft_timer 
+0x6371 027241 set0 mark_reconn_recieve_switch ,mark 
+0x6372 027242 jam lmp_host_connection_req ,mem_lmo_opcode2 
+0x6373 027243 branch init_lmp_reinit 
+:      027244 host_create_conn_wait_accept:
+0x6374 027245 rtnmark1 mark_reconn_recieve_switch 
+0x6375 027246 fetch 2 ,mem_soft_timer 
+0x6376 027247 sub pdata ,1 ,pdata 
+0x6377 027248 branch host_create_conn_resend ,zero 
+0x6378 027249 store 2 ,mem_soft_timer 
+0x6379 027250 rtn 
+:      027251 host_create_conn_resend:
+0x637a 027252 jam conn_sm_send_switch ,mem_conn_sm 
+0x637b 027253 rtn 
+:      027254 host_create_conn_waiting:
+0x637c 027256 rtn 
+:      027258 host_create_conn_switch:
+0x637d 027259 fetch 1 ,mem_lmp_conn_state 
+0x637e 027260 rtnbit0 sent_setup_complete 
+0x637f 027261 rtnbit0 received_setup_complete 
+0x6380 027262 fetch 1 ,mem_connection_options 
+0x6381 027263 set0 connection_switch ,pdata 
+0x6382 027264 store 1 ,mem_connection_options 
+0x6383 027265 jam lmp_switch_req ,mem_lmo_opcode2 
+0x6384 027266 jam conn_sm_wait_switch_after_host_connection ,mem_conn_sm 
+0x6385 027267 rtn 
+:      027269 host_create_conn_send_setup_complete:
+0x6386 027270 jam conn_sm_wait_setup_complete ,mem_conn_sm 
+0x6387 027271 jam lmp_setup_complete ,mem_lmo_opcode2 
+0x6388 027272 rtn 
+:      027274 host_create_conn_wait_setup_complete:
+0x6389 027275 fetch 1 ,mem_lmp_conn_state 
+0x638a 027276 rtnbit0 received_setup_complete 
+0x638b 027277 jam conn_sm_standby ,mem_conn_sm 
+0x638c 027279 rtn 
+:      027280 host_create_conn_wait_setup_complete_rtn:
+0x638d 027281 jam conn_sm_auth_pair ,mem_conn_sm 
+0x638e 027282 rtn 
+:      027284 host_create_conn_master_detach:
+0x638f 027285 fetch 1 ,mem_soft_timer 
+0x6390 027286 increase -1 ,pdata 
+0x6391 027287 branch host_create_conn_send_detach ,blank 
+0x6392 027288 store 1 ,mem_soft_timer 
+0x6393 027289 rtn 
+:      027290 host_create_conn_send_detach:
+0x6394 027291 jam lmp_detach ,mem_lmo_opcode2 
+0x6395 027292 jam local_host ,mem_disconn_reason_send 
+0x6396 027293 jam 0 ,mem_conn_sm 
+0x6397 027294 rtn 
+:      027295 host_create_conn_auth_pair:
+0x6398 027297 fetch 1 ,mem_connection_options 
+0x6399 027298 bbit1 connection_switch ,host_create_conn_switch 
+0x639a 027299 bbit1 connection_auth ,host_create_conn_auth_pair_true 
+:      027300 host_create_conn_sm_done:
+0x639b 027301 jam conn_sm_done ,mem_conn_sm 
+0x639c 027302 rtn 
+:      027303 host_create_conn_auth_pair_true:
+0x639d 027304 fetch 1 ,mem_link_key_exists 
+0x639e 027305 branch host_create_conn_auth_pair_nokey ,blank 
+0x639f 027306 fetch 1 ,mem_lmp_conn_state 
+0x63a0 027307 rtnbit0 sent_setup_complete 
+0x63a1 027308 rtnbit0 received_setup_complete 
+0x63a2 027309 fetch 4 ,mem_aurand_send_delay_time 
+0x63a3 027310 arg 100 ,temp 
+0x63a4 027311 iadd temp ,temp 
+0x63a5 027312 copy clkn_bt ,pdata 
+0x63a6 027313 isub temp ,null 
+0x63a7 027314 nrtn positive 
+0x63a8 027315 branch host_create_conn_auth 
+:      027319 host_create_conn_auth_pair_nokey:
+0x63a9 027320 jam conn_sm_pairing ,mem_conn_sm 
+0x63aa 027321 jam 4 ,mem_pin_length 
+0x63ab 027322 setarg 0x3030 
+0x63ac 027323 store 2 ,mem_pin 
+0x63ad 027324 istore 2 ,contw 
+0x63ae 027325 jam pincode_state_pincode_ready ,mem_pincode_state 
+0x63af 027326 branch host_create_conn_pairing 
+:      027328 host_create_conn_auth_pair_wait:
+0x63b0 027329 rtn 
+:      027330 host_create_conn_encrypt:
+0x63b1 027331 fetch 1 ,mem_connection_options 
+0x63b2 027332 bbit1 connection_encrypt ,host_create_conn_encrypt_start 
+0x63b3 027333 jam conn_sm_done ,mem_conn_sm 
+0x63b4 027334 rtn 
+:      027336 host_create_conn_encrypt_start:
+0x63b5 027337 fetch 1 ,mem_connection_options 
+0x63b6 027338 set0 connection_encrypt ,pdata 
+0x63b7 027339 store 1 ,mem_connection_options 
+0x63b8 027340 jam lmp_encryption_mode_req ,mem_lmo_opcode2 
+0x63b9 027341 rtn 
+:      027343 host_create_conn_encrypt_wait:
+0x63ba 027344 fetch 1 ,mem_wait_encryption 
+0x63bb 027345 rtn blank 
+0x63bc 027346 jam conn_sm_standby ,mem_conn_sm 
+0x63bd 027347 branch host_create_conn_encrypt_start 
+:      027349 host_create_conn_encrypt_wait_clear:
+0x63be 027350 jam conn_sm_send_setup_complete ,mem_conn_sm 
+0x63bf 027351 rtn 
+:      027353 host_auth:
+0x63c0 027354 fetch 1 ,mem_op 
+0x63c1 027355 bbit1 op_inrand_req ,remote_auth 
+0x63c2 027356 call tid_initiate 
+0x63c3 027357 jam lmp_in_rand ,mem_lmo_opcode2 
+0x63c4 027358 branch cmd_exit 
+:      027359 remote_auth:
+0x63c5 027360 fetch 1 ,mem_op 
+0x63c6 027361 set0 op_inrand_req ,pdata 
+0x63c7 027362 store 1 ,mem_op 
+0x63c8 027363 call lmp_accept_inrand 
+0x63c9 027364 call tid_set_reply 
+0x63ca 027365 branch cmd_exit 
+:      027367 pincode_reinit:
+0x63cb 027368 setarg 4 
+0x63cc 027369 store 1 ,mem_pin_length 
+0x63cd 027370 setarg 0x3030 
+0x63ce 027371 istore 2 ,contw 
+0x63cf 027372 istore 2 ,contw 
+0x63d0 027373 rtn 
+:      027379 twspi_reset:
+0x63d1 027380 bpatchx patch31_4 ,mem_patch31 
+0x63d2 027381 hfetch 1 ,core_gpio_oe3 
+0x63d3 027382 arg 0x06 ,temp 
+0x63d4 027383 ior temp ,pdata 
+0x63d5 027384 hstore 1 ,core_gpio_oe3 
+0x63d6 027385 hfetch 1 ,core_gpio_out3 
+0x63d7 027386 ior temp ,pdata 
+0x63d8 027387 hstore 1 ,core_gpio_out3 
+0x63d9 027388 call twspi_disable 
+0x63da 027389 hfetch 1 ,core_gpio_out3 
+0x63db 027390 set0 1 ,pdata 
+0x63dc 027391 set0 2 ,pdata 
+0x63dd 027392 hstore 1 ,core_gpio_out3 
+0x63de 027393 nop 30 
+0x63df 027394 branch twspi_enable 
+:      027396 twspi_reset2:
+0x63e0 027397 hfetch 1 ,core_gpio_oe3 
+0x63e1 027398 arg 0xc0 ,temp 
+0x63e2 027399 ior temp ,pdata 
+0x63e3 027400 hstore 1 ,core_gpio_oe3 
+0x63e4 027401 hfetch 1 ,core_gpio_out3 
+0x63e5 027402 ior temp ,pdata 
+0x63e6 027403 hstore 1 ,core_gpio_out3 
+0x63e7 027404 call twspi_disable 
+0x63e8 027405 hfetch 1 ,core_gpio_out3 
+0x63e9 027406 set0 6 ,pdata 
+0x63ea 027407 set0 7 ,pdata 
+0x63eb 027408 hstore 1 ,core_gpio_out3 
+0x63ec 027409 nop 30 
+0x63ed 027410 branch twspi_enable2 
+:      027412 twspi_disable:
+0x63ee 027413 hfetch 1 ,core_gpio_sel1 
+0x63ef 027414 and pdata ,0xfc ,pdata 
+0x63f0 027415 hstore 1 ,core_gpio_sel1 
+0x63f1 027416 rtn 
+:      027417 twspi_enable:
+0x63f2 027418 hfetch 1 ,core_gpio_sel1 
+0x63f3 027419 or pdata ,0x01 ,pdata 
+0x63f4 027420 hstore 1 ,core_gpio_sel1 
+0x63f5 027421 rtn 
+:      027422 twspi_enable2:
+0x63f6 027423 hfetch 1 ,core_gpio_sel1 
+0x63f7 027424 or pdata ,0x03 ,pdata 
+0x63f8 027425 set0 4 ,pdata 
+0x63f9 027426 hstore 1 ,core_gpio_sel1 
+0x63fa 027427 rtn 
+:      027431 sensor_read:
+0x63fb 027432 copy pdata ,regb 
+0x63fc 027433 call spi_ncs_enable 
+0x63fd 027434 nop 100 
+0x63fe 027435 copy regb ,pdata 
+0x63ff 027436 call twspi_read 
+0x6400 027437 copy pdata ,regb 
+0x6401 027438 call spi_ncs_disable 
+0x6402 027439 nop 100 
+0x6403 027440 copy regb ,pdata 
+0x6404 027441 rtn 
+:      027443 sensor_write:
+0x6405 027444 copy pdata ,regb 
+0x6406 027445 call spi_ncs_enable 
+0x6407 027446 nop 100 
+0x6408 027447 copy regb ,pdata 
+0x6409 027448 call twspi_write 
+0x640a 027449 call spi_ncs_disable 
+0x640b 027450 nop 100 
+0x640c 027451 rtn 
+:      027454 spi_ncs_gpio_init:
+0x640d 027455 fetcht 1 ,mem_spi_ncs_gpio 
+0x640e 027456 branch gpio_config_output 
+:      027459 spi_ncs_enable:
+0x640f 027460 fetcht 1 ,mem_spi_ncs_gpio 
+0x6410 027461 branch gpio_out_active 
+:      027464 spi_ncs_disable:
+0x6411 027465 fetcht 1 ,mem_spi_ncs_gpio 
+0x6412 027466 branch gpio_out_inactive 
+:      027469 twspi_write:
+0x6413 027470 branch spid_write_reg 
+:      027472 twspi_read:
+0x6414 027473 branch spid_read_reg 
+:      027480 read_function_aes:
+0x6415 027481 nbranch read_function ,user 
+0x6416 027482 hfetch 1 ,core_gpio_key2 
+0x6417 027483 or_into 0x2 ,pdata 
+0x6418 027484 hstore 1 ,core_gpio_key2 
+:      027485 read_function:
+0x6419 027486 copy temp ,null 
+0x641a 027487 branch read_fuction_zero ,zero 
+0x641b 027488 copy regc ,pc 
+:      027489 read_fuction_zero:
+0x641c 027490 isolate0 0 ,null 
+0x641d 027491 branch set_ucode_status 
+:      027494 get_block_header:
+0x641e 027495 force 4 ,temp 
+:      027496 get_block_header0:
+0x641f 027497 arg mem_ucode_buf ,rega 
+0x6420 027498 hfetch 1 ,core_gpio_key2 
+0x6421 027499 and_into 0xfd ,pdata 
+0x6422 027500 hstore 1 ,core_gpio_key2 
+0x6423 027501 call read_function 
+0x6424 027502 arg 0x55aa ,rega 
+0x6425 027503 fetch 2 ,mem_ucode_buf 
+0x6426 027504 ifetcht 2 ,contr 
+0x6427 027505 isub rega ,null 
+0x6428 027506 rtn 
+:      027508 read_first_block:
+0x6429 027509 arg 2 ,temp 
+0x642a 027510 arg mem_ucode_ptr ,rega 
+0x642b 027511 call read_function 
+0x642c 027512 fetch 2 ,mem_ucode_ptr 
+0x642d 027513 store 2 ,mem_addr_mi 
+0x642e 027514 call get_iv ,user 
+0x642f 027515 rtn 
+:      027517 get_iv:
+0x6430 027518 arg 16 ,temp 
+0x6431 027519 arg mem_ucode_keybuf ,rega 
+0x6432 027520 hfetch 1 ,core_gpio_key2 
+0x6433 027521 and_into 0xfd ,pdata 
+0x6434 027522 hstore 1 ,core_gpio_key2 
+0x6435 027523 call read_function 
+0x6436 027524 arg mem_ucode_keybuf ,contr 
+0x6437 027525 arg 16 ,loopcnt 
+0x6438 027526 call aes_load_data 
+0x6439 027527 call aes_init 
+0x643a 027528 call aes_clear_data 
+0x643b 027529 branch do_aes_cbc 
+:      027531 load_storage:
+0x643c 027532 disable match 
+0x643d 027533 call get_block_header 
+0x643e 027534 nrtn zero 
+0x643f 027535 enable match 
+0x6440 027536 jam 0x80 ,core_ucode_ctrl 
+0x6441 027537 jam 0 ,core_ucode_hi 
+0x6442 027538 jam 0 ,core_ucode_low 
+0x6443 027539 arg core_ucode_data ,rega 
+0x6444 027540 call read_function_aes 
+0x6445 027541 jam 0x0 ,core_ucode_ctrl 
+:      027542 load_storage_loop:
+0x6446 027543 arg 6 ,temp 
+0x6447 027544 call get_block_header0 
+0x6448 027545 nrtn zero 
+0x6449 027546 ifetch 2 ,contr 
+0x644a 027547 iforce rega 
+0x644b 027548 call read_function 
+0x644c 027549 branch load_storage_loop 
+:      027553 reload_eeprom:
+0x644d 027554 call clean_mem 
+0x644e 027555 setarg 0x1000 
+0x644f 027556 store 2 ,mem_addr_mi 
+0x6450 027557 arg iicd_read_eep ,regc 
+0x6451 027558 arg 2 ,loopcnt 
+:      027559 reload_eeprom_loop:
+0x6452 027560 call get_block_header 
+0x6453 027561 nrtn zero 
+0x6454 027562 fetch 2 ,mem_addr_mi 
+0x6455 027563 byteswap pdata ,pdata 
+0x6456 027564 iadd temp ,pdata 
+0x6457 027565 byteswap pdata ,pdata 
+0x6458 027566 store 2 ,mem_addr_mi 
+0x6459 027567 loop reload_eeprom_loop 
+0x645a 027568 branch load_storage_loop 
+:      027570 loadcode:
+0x645b 027571 call clean_mem 
+0x645c 027572 disable user 
+0x645d 027573 call otp_enable_chgpump 
+0x645e 027574 setarg otp_ucode_flag 
+0x645f 027575 arg mem_otp_ucode_flag ,rega 
+0x6460 027576 arg 2 ,temp 
+0x6461 027577 call otpd_read_data 
+0x6462 027578 fetch 2 ,mem_otp_ucode_flag 
+0x6463 027579 bbit0 otp_uflag_aes ,loadcode_otp 
+0x6464 027580 jam 0x25 ,core_clkoff 
+0x6465 027581 setarg otp_ucode_aeskey 
+0x6466 027582 arg mem_ucode_keybuf ,rega 
+0x6467 027583 arg 16 ,temp 
+0x6468 027584 call otpd_read_data 
+0x6469 027585 jam lock_otp ,core_misc_ctrl 
+0x646a 027586 set1 mark_otp_encrypt ,mark 
+0x646b 027587 arg mem_ucode_keybuf ,contr 
+0x646c 027588 call load_key 
+0x646d 027589 enable user 
+:      027590 loadcode_otp:
+0x646e 027591 jam 0 ,mem_loadcode_times 
+:      027592 loadcode_otp_2:
+0x646f 027593 call loadcode_check_times 
+0x6470 027594 fetch 2 ,mem_otp_ucode_flag 
+0x6471 027595 byteswap pdata ,pdata 
+0x6472 027596 arg 0x7ff ,temp 
+0x6473 027597 iand temp ,pdata 
+0x6474 027598 branch loadcode_iic ,zero 
+0x6475 027599 call otp_set_addr 
+0x6476 027600 arg otpd_read_code ,regc 
+0x6477 027601 call get_iv ,user 
+0x6478 027602 call load_storage 
+0x6479 027603 fetch 1 ,mem_ucode_status 
+0x647a 027604 bbit0 0 ,loadcode_otp_2 
+:      027606 loadcode_iic:
+0x647b 027607 call otp_disable_chgpump 
+0x647c 027608 jam 0 ,mem_loadcode_times 
+:      027609 loadcode_iic_2:
+0x647d 027610 call loadcode_check_times 
+0x647e 027611 call clear_eeprom_size_2k 
+0x647f 027612 fetch 1 ,mem_otp_ucode_flag 
+0x6480 027613 bbit1 otp_uflag_skip_eep ,loadcode_spi 
+0x6481 027614 call loadcode_iic_by_eeprom 
+0x6482 027615 nbranch loadcode_iic_eeprom_2k ,match 
+0x6483 027616 fetch 1 ,mem_ucode_status 
+0x6484 027617 bbit0 0 ,loadcode_iic_2 
+0x6485 027618 branch loadcode_hci 
+:      027619 loadcode_iic_eeprom_2k:
+0x6486 027620 call set_eeprom_size_2k 
+0x6487 027621 fetch 1 ,mem_otp_ucode_flag 
+0x6488 027622 bbit1 otp_uflag_skip_eep ,loadcode_spi 
+0x6489 027623 call loadcode_iic_by_eeprom 
+0x648a 027624 nbranch loadcode_spi ,match 
+0x648b 027625 fetch 1 ,mem_ucode_status 
+0x648c 027626 bbit0 0 ,loadcode_iic_2 
+0x648d 027627 branch loadcode_hci 
+:      027629 loadcode_spi:
+0x648e 027630 jam 0 ,mem_loadcode_times 
+:      027631 loadcode_spi_2:
+0x648f 027632 call loadcode_check_times 
+0x6490 027633 fetch 1 ,mem_otp_ucode_flag 
+0x6491 027634 bbit1 otp_uflag_skip_flash ,loadcode_hci 
+0x6492 027635 setarg 0x0 
+0x6493 027636 store 3 ,mem_addr_hi 
+0x6494 027637 call spid_init_flash 
+0x6495 027638 arg spid_load_flash ,regc 
+0x6496 027639 call read_first_block 
+0x6497 027640 call load_storage 
+0x6498 027641 nbranch loadcode_hci ,match 
+0x6499 027642 fetch 1 ,mem_ucode_status 
+0x649a 027643 bbit0 0 ,loadcode_spi_2 
+:      027645 loadcode_hci:
+0x649b 027646 bmark1 mark_otp_encrypt ,loadcode_hci_enc 
+0x649c 027647 call clear_key_buf 
+:      027648 loadcode_hci_enc:
+0x649d 027649 fetch 1 ,mem_otp_ucode_flag 
+0x649e 027650 bbit0 otp_uflag_hci ,clear_key_buf 
+0x649f 027651 jam 0x21 ,core_clkoff 
+0x64a0 027652 call hci_init 
+:      027653 loadcode_hci_loop:
+0x64a1 027654 call hci_rx_packet 
+0x64a2 027655 branch loadcode_hci_loop 
+:      027657 clear_key_buf:
+0x64a3 027658 setarg 0 
+0x64a4 027659 store 8 ,mem_ucode_keybuf 
+0x64a5 027660 store 8 ,mem_ucode_keybuf + 8 
+0x64a6 027661 force regidx_key ,regext_index 
+0x64a7 027662 call aes_clear 
+0x64a8 027663 jam 0x21 ,core_clkoff 
+0x64a9 027664 rtn 
+:      027667 loadcode_iic_by_eeprom:
+0x64aa 027668 setarg 0x0 
+0x64ab 027669 store 2 ,mem_addr_mi 
+0x64ac 027670 arg iicd_read_eep ,regc 
+0x64ad 027671 call iicd_init_12m 
+0x64ae 027672 call read_first_block 
+0x64af 027673 branch load_storage 
+:      027676 loadcode_check_times:
+0x64b0 027677 fetch 1 ,mem_loadcode_times 
+0x64b1 027678 increase 1 ,pdata 
+0x64b2 027679 sub pdata ,3 ,null 
+0x64b3 027680 nbranch loadcode_error ,positive 
+0x64b4 027681 store 1 ,mem_loadcode_times 
+0x64b5 027682 rtn 
+:      027684 loadcode_error:
+0x64b6 027685 call clear_key_buf 
+0x64b7 027686 call ice_break 
+0x64b8 027687 rtn 
+:      027691 set_ucode_status:
+0x64b9 027692 fetch 1 ,mem_ucode_status 
+0x64ba 027693 lshift pdata ,pdata 
+0x64bb 027694 setflag true ,0 ,pdata 
+0x64bc 027695 isolate0 15 ,rega 
+0x64bd 027696 rtn true 
+0x64be 027697 store 1 ,mem_ucode_status 
+0x64bf 027698 rtn 
+:      027701 decrypt_code:
+0x64c0 027702 hfetch 1 ,core_gpio_key2 
+0x64c1 027703 rtnbit0 1 
+0x64c2 027704 branch decrypt_code_skip 
+:      027705 decrypt_code_loop:
+0x64c3 027706 hfetch 1 ,core_dma_status 
+0x64c4 027707 qisolate1 pdata 
+0x64c5 027708 rtn true 
+:      027709 decrypt_code_skip:
+0x64c6 027710 hfetch 1 ,core_misc_status 
+0x64c7 027711 bbit0 1 ,decrypt_code_loop 
+0x64c8 027712 call do_aes_cbc 
+0x64c9 027713 branch decrypt_code_loop 
+:      027717 load_ucode:
+0x64ca 027718 fetch 2 ,mem_patch_ptr 
+0x64cb 027719 rtn blank 
+0x64cc 027720 jam 0x80 ,core_ucode_ctrl 
+0x64cd 027721 jam 0 ,core_ucode_hi 
+0x64ce 027722 jam 0 ,core_ucode_low 
+0x64cf 027723 fetcht 2 ,mem_patch_len 
+0x64d0 027724 lshift2 temp ,loopcnt 
+0x64d1 027725 iforce contr 
+:      027726 load_ucode_loop:
+0x64d2 027727 ifetch 1 ,contr 
+0x64d3 027728 hstore 1 ,core_ucode_data 
+0x64d4 027729 loop load_ucode_loop 
+0x64d5 027730 jam 0x0 ,core_ucode_ctrl 
+0x64d6 027731 rtn 
+:      027736 spid_init:
+0x64d7 027737 bpatchx patch31_5 ,mem_patch31 
+0x64d8 027738 call spid_init_common 
+0x64d9 027739 branch twspi_enable 
+:      027741 spid_init2:
+0x64da 027742 call spid_init_common 
+0x64db 027743 call twspi_disable 
+0x64dc 027744 branch twspi_enable2 
+:      027746 spid_init_common:
+0x64dd 027747 fetch 1 ,mem_spi_init_clk 
+0x64de 027748 hstore 1 ,core_spid_ctrl 
+0x64df 027749 fetch 1 ,mem_spi_init_delay_time 
+0x64e0 027750 hstore 1 ,core_spid_delay 
+0x64e1 027751 setarg mem_spid_tbuf 
+0x64e2 027752 hstore 2 ,core_spid_txaddr 
+0x64e3 027753 setarg mem_spid_rbuf 
+0x64e4 027754 hstore 2 ,core_spid_rxaddr 
+0x64e5 027755 branch twspi_disable 
+:      027757 spid_reset:
+0x64e6 027758 hfetch 1 ,core_spid_ctrl 
+0x64e7 027759 set1 7 ,pdata 
+0x64e8 027760 hstore 1 ,core_spid_ctrl 
+0x64e9 027761 set0 7 ,pdata 
+0x64ea 027762 hstore 1 ,core_spid_ctrl 
+0x64eb 027763 rtn 
+:      027767 spid_write_reg:
+0x64ec 027768 set1 7 ,pdata 
+0x64ed 027769 store 2 ,mem_spid_tbuf 
+0x64ee 027770 bpatchx patch31_6 ,mem_patch31 
+0x64ef 027771 jam 2 ,core_spid_txlen 
+0x64f0 027772 jam 0 ,core_spid_rxlen 
+0x64f1 027773 jam spid_start ,core_misc_ctrl 
+0x64f2 027774 branch wait_spid_done 
+:      027777 spid_read_reg:
+0x64f3 027778 force 1 ,temp 
+:      027780 spid_read_regs:
+0x64f4 027782 store 1 ,mem_spid_tbuf 
+0x64f5 027783 bpatchx patch31_7 ,mem_patch31 
+0x64f6 027784 jam 1 ,core_spid_txlen 
+0x64f7 027785 hstoret 2 ,core_spid_rxlen 
+0x64f8 027786 jam spid_start ,core_misc_ctrl 
+0x64f9 027787 call wait_spid_done 
+0x64fa 027788 fetch 1 ,mem_spid_rbuf 
+0x64fb 027789 rtn 
+:      027791 wait_spid_done:
+0x64fc 027792 fetch 2 ,mem_afh_error_total 
+0x64fd 027793 increase 1 ,pdata 
+0x64fe 027794 store 2 ,mem_afh_error_total 
+0x64ff 027795 hfetch 1 ,core_dma_status 
+0x6500 027796 bbit0 spid_done ,wait_spid_done 
+0x6501 027797 rtn 
+:      027799 spid_init_flash:
+0x6502 027800 jam 0x40 ,core_spid_ctrl 
+0x6503 027801 jam 0x0 ,core_spid_delay 
+0x6504 027802 hfetch 1 ,core_gpio_sel1 
+0x6505 027803 set0 0 ,pdata 
+0x6506 027804 set1 1 ,pdata 
+0x6507 027805 hstore 1 ,core_gpio_sel1 
+0x6508 027806 setarg 0 
+0x6509 027807 store 4 ,mem_spid_tbuf 
+0x650a 027808 rtn 
+:      027811 spid_unlock_flash:
+0x650b 027812 setarg 0 
+0x650c 027813 hstore 2 ,core_spid_rxlen 
+0x650d 027814 setarg 1 
+0x650e 027815 hstore 2 ,core_spid_txlen 
+0x650f 027816 setarg mem_spid_tbuf 
+0x6510 027817 hstore 2 ,core_spid_txaddr 
+0x6511 027818 jam 6 ,mem_spid_tbuf 
+0x6512 027819 jam spid_start ,core_misc_ctrl 
+0x6513 027820 branch wait_spid_done 
+:      027835 flash_write:
+0x6514 027836 disable user 
+0x6515 027837 copy pdata ,regb 
+0x6516 027838 fetch 1 ,mem_spi_write_flash_sm 
+0x6517 027839 rtnne flash_sm_no_buys 
+0x6518 027840 enable user 
+0x6519 027841 copy regb ,pdata 
+0x651a 027842 branch flash_write_start 
+:      027845 flash_write_spi_sm_timer:
+0x651b 027846 fetch 1 ,mem_spi_write_flash_sm 
+0x651c 027847 beq flash_sm_start ,flash_write_start 
+0x651d 027848 beq flash_sm_erase_sector ,flash_erase_sector 
+0x651e 027849 beq flash_sm_wait_erase_sector ,flash_wait_erase_sector 
+0x651f 027850 beq flash_sm_write_data ,flash_write_data 
+0x6520 027851 beq flash_sm_wait_write_data ,flash_wait_write_data 
+0x6521 027852 rtn 
+:      027854 flash_write_start:
+0x6522 027855 store 3 ,mem_spi_write_addr 
+0x6523 027856 copy rega ,pdata 
+0x6524 027857 store 2 ,mem_spi_write_ptr 
+0x6525 027858 storet 2 ,mem_spi_write_len 
+0x6526 027859 jam flash_sm_erase_sector ,mem_spi_write_flash_sm 
+0x6527 027860 branch spid_init_flash 
+:      027861 flash_erase_sector:
+0x6528 027862 call spid_init_flash 
+0x6529 027863 jam flash_sm_wait_erase_sector ,mem_spi_write_flash_sm 
+0x652a 027864 call spid_unlock_flash 
+0x652b 027865 arg mem_spid_tbuf ,rega 
+0x652c 027866 fetch 3 ,mem_spi_write_addr 
+0x652d 027867 jam 4 ,core_spid_txlen 
+0x652e 027868 arg flash_command_sector_erase ,temp 
+0x652f 027869 branch spid_write_flash_common 
+:      027871 flash_wait_erase_sector:
+0x6530 027872 call spid_init_flash 
+0x6531 027873 call spid_unlock_flash 
+0x6532 027874 setarg flash_read_satus 
+0x6533 027875 call spid_read_reg 
+0x6534 027876 rtnbit1 flash_status_wip 
+0x6535 027877 jam flash_sm_write_data ,mem_spi_write_flash_sm 
+0x6536 027878 rtn 
+:      027879 flash_write_data:
+0x6537 027880 call spid_init_flash 
+0x6538 027881 jam flash_sm_wait_write_data ,mem_spi_write_flash_sm 
+0x6539 027882 call spid_unlock_flash 
+0x653a 027883 call flash_data_preserve 
+0x653b 027884 call spid_write_flash 
+0x653c 027885 branch flash_data_recover 
+:      027886 flash_wait_write_data:
+0x653d 027887 call spid_init_flash 
+0x653e 027888 call spid_unlock_flash 
+0x653f 027889 setarg flash_read_satus 
+0x6540 027890 call spid_read_reg 
+0x6541 027891 rtnbit1 flash_status_wip 
+0x6542 027892 jam flash_sm_no_buys ,mem_spi_write_flash_sm 
+0x6543 027893 fetch 2 ,mem_cb_spi_flash_write_complate 
+0x6544 027894 branch callback_func 
+:      027895 flash_data_recover:
+0x6545 027896 fetch 4 ,mem_temp 
+0x6546 027897 fetcht 2 ,mem_spi_write_ptr 
+0x6547 027898 increase -4 ,temp 
+0x6548 027899 istore 4 ,temp 
+0x6549 027900 rtn 
+:      027901 flash_data_preserve:
+0x654a 027902 fetcht 2 ,mem_spi_write_ptr 
+0x654b 027903 copy temp ,rega 
+0x654c 027904 increase -4 ,temp 
+0x654d 027905 ifetch 4 ,temp 
+0x654e 027906 store 4 ,mem_temp 
+0x654f 027907 fetcht 2 ,mem_spi_write_len 
+0x6550 027908 fetch 3 ,mem_spi_write_addr 
+0x6551 027909 rtn 
+:      027913 spid_write_flash:
+0x6552 027914 increase 4 ,temp 
+0x6553 027915 hstoret 2 ,core_spid_txlen 
+0x6554 027916 arg flash_command_write_data ,temp 
+0x6555 027917 increase -4 ,rega 
+:      027918 spid_write_flash_common:
+0x6556 027920 istoret 1 ,rega 
+0x6557 027921 rshift16 pdata ,temp 
+0x6558 027922 istoret 1 ,contw 
+0x6559 027923 rshift8 pdata ,temp 
+0x655a 027924 istoret 1 ,contw 
+0x655b 027925 istore 1 ,contw 
+0x655c 027926 deposit rega 
+0x655d 027927 hstore 2 ,core_spid_txaddr 
+0x655e 027928 setarg 0 
+0x655f 027929 hstore 2 ,core_spid_rxlen 
+0x6560 027930 jam spid_start ,core_misc_ctrl 
+0x6561 027931 branch wait_spid_done 
+:      027935 spid_read_flash:
+0x6562 027936 hstoret 2 ,core_spid_rxlen 
+0x6563 027937 rshift16 pdata ,temp 
+0x6564 027938 storet 1 ,mem_addr_hi 
+0x6565 027939 rshift8 pdata ,temp 
+0x6566 027940 storet 1 ,mem_addr_mi 
+0x6567 027941 store 1 ,mem_addr_lo 
+0x6568 027942 setarg 4 
+0x6569 027943 hstore 2 ,core_spid_txlen 
+0x656a 027944 jam flash_command_read_data ,mem_spid_tbuf 
+0x656b 027945 setarg mem_spid_tbuf 
+0x656c 027946 hstore 2 ,core_spid_txaddr 
+0x656d 027947 deposit rega 
+0x656e 027948 hstore 2 ,core_spid_rxaddr 
+0x656f 027949 hfetch 1 ,core_spid_ctrl 
+0x6570 027950 isolate0 15 ,rega 
+0x6571 027951 setflag true ,6 ,pdata 
+0x6572 027952 hstore 1 ,core_spid_ctrl 
+0x6573 027953 jam spid_start ,core_misc_ctrl 
+:      027954 spi_read_flash_wait:
+0x6574 027955 hfetch 1 ,core_dma_status 
+0x6575 027956 bbit1 7 ,spi_read_flash_wait 
+0x6576 027957 arg spid_done ,queue 
+0x6577 027958 branch wait_spid_done 
+:      027962 spid_load_flash:
+0x6578 027963 hstoret 2 ,core_spid_rxlen 
+0x6579 027964 setarg 4 
+0x657a 027965 hstore 2 ,core_spid_txlen 
+0x657b 027966 jam 3 ,mem_spid_tbuf 
+0x657c 027967 setarg mem_spid_tbuf 
+0x657d 027968 hstore 2 ,core_spid_txaddr 
+0x657e 027969 deposit rega 
+0x657f 027970 hstore 2 ,core_spid_rxaddr 
+0x6580 027971 hfetch 1 ,core_spid_ctrl 
+0x6581 027972 isolate0 15 ,rega 
+0x6582 027973 setflag true ,6 ,pdata 
+0x6583 027974 hstore 1 ,core_spid_ctrl 
+0x6584 027975 jam spid_start ,core_misc_ctrl 
+:      027976 spi_load_flash_wait:
+0x6585 027977 hfetch 1 ,core_dma_status 
+0x6586 027978 bbit1 7 ,spi_load_flash_wait 
+0x6587 027979 arg spid_done ,queue 
+0x6588 027980 call decrypt_code 
+0x6589 027981 call wait_spid_done 
+0x658a 027982 isolate1 spid_crcok ,pdata 
+0x658b 027983 call set_ucode_status 
+0x658c 027984 fetch 1 ,mem_addr_hi 
+0x658d 027985 lshift16 pdata ,regb 
+0x658e 027986 fetch 1 ,mem_addr_mi 
+0x658f 027987 lshift8 pdata ,pdata 
+0x6590 027988 ior regb ,regb 
+0x6591 027989 fetch 1 ,mem_addr_lo 
+0x6592 027990 ior regb ,pdata 
+0x6593 027991 iadd temp ,pdata 
+0x6594 027992 store 1 ,mem_addr_lo 
+0x6595 027993 rshift8 pdata ,pdata 
+0x6596 027994 store 1 ,mem_addr_mi 
+0x6597 027995 rshift8 pdata ,pdata 
+0x6598 027996 store 1 ,mem_addr_hi 
+0x6599 027997 rtn 
+:      028002 soft_reset_chip:
+0x659a 028003 jam 1 ,core_reset 
+0x659b 028004 rtn 
+:      028010 iic_init_390k:
+0x659c 028011 jam 12 ,core_iicd_scl_low 
+0x659d 028012 jam 13 ,core_iicd_scl_high 
+0x659e 028013 jam 13 ,core_iicd_start_setup 
+0x659f 028014 jam 13 ,core_iicd_start_hold 
+0x65a0 028015 jam 13 ,core_iicd_stop_setup 
+0x65a1 028016 jam 12 ,core_iicd_data_setup 
+0x65a2 028017 branch iicd_init_gpio 
+:      028020 iicd_init_12m:
+0x65a3 028021 jam 5 ,core_iicd_scl_low 
+0x65a4 028022 jam 7 ,core_iicd_scl_high 
+0x65a5 028023 jam 7 ,core_iicd_start_setup 
+0x65a6 028024 jam 7 ,core_iicd_start_hold 
+0x65a7 028025 jam 7 ,core_iicd_stop_setup 
+0x65a8 028026 jam 5 ,core_iicd_data_setup 
+:      028027 iicd_init_gpio:
+0x65a9 028028 hfetch 1 ,core_gpio_pu3 
+0x65aa 028029 or_into 0xc0 ,pdata 
+0x65ab 028030 hstore 1 ,core_gpio_pu3 
+0x65ac 028031 hfetch 1 ,core_gpio_sel1 
+0x65ad 028032 or_into 0x10 ,pdata 
+0x65ae 028033 hstore 1 ,core_gpio_sel1 
+0x65af 028034 rtn 
+:      028038 wait_iicd_done:
+0x65b0 028039 hfetch 1 ,core_dma_status 
+0x65b1 028040 bbit0 iicd_done ,wait_iicd_done 
+0x65b2 028041 rtn 
+:      028049 iicd_read_data:
+0x65b3 028050 hstore 2 ,core_iicd_txlen 
+0x65b4 028051 deposit rega 
+0x65b5 028052 hstore 2 ,core_iicd_txaddr 
+0x65b6 028053 deposit regb 
+0x65b7 028054 hstore 2 ,core_iicd_rxaddr 
+0x65b8 028055 deposit temp 
+0x65b9 028056 hstore 2 ,core_iicd_rxlen 
+0x65ba 028057 arg 1 ,temp 
+0x65bb 028058 nsetflag blank ,1 ,temp 
+0x65bc 028059 hstore 1 ,core_iicd_ctrl 
+0x65bd 028060 jam iicd_start ,core_misc_ctrl 
+0x65be 028061 branch wait_iicd_done 
+:      028064 set_eeprom_size_2k:
+0x65bf 028065 set1 mark_eeprom_size ,mark 
+0x65c0 028066 jam 0x08 ,mem_eeprom_block_size 
+0x65c1 028067 rtn 
+:      028069 clear_eeprom_size_2k:
+0x65c2 028070 set0 mark_eeprom_size ,mark 
+0x65c3 028071 jam 0x20 ,mem_eeprom_block_size 
+0x65c4 028072 rtn 
+:      028075 iicd_read_eep_data_size_2k:
+0x65c5 028076 fetch 1 ,mem_eeprom_base 
+0x65c6 028077 iadd regb ,pdata 
+0x65c7 028078 store 1 ,mem_addr_mi 
+0x65c8 028079 branch iicd_read_eep_size_2k 
+:      028081 iicd_read_eep_size_2k_lcadcode:
+0x65c9 028082 fetch 2 ,mem_addr_mi 
+0x65ca 028083 byteswap pdata ,pdata 
+0x65cb 028084 store 1 ,mem_addr_mi 
+:      028089 iicd_read_eep_size_2k:
+0x65cc 028090 setarg 3 
+0x65cd 028091 hstore 2 ,core_iicd_txlen 
+0x65ce 028092 jam 0xa0 ,mem_iicd_tbuf 
+0x65cf 028093 jam 0xa1 ,mem_iicd_tbuf + 2 
+0x65d0 028094 branch iicd_read_eep_common 
+:      028100 iicd_write_protect_eep_data:
+0x65d1 028101 storet 2 ,mem_temp 
+0x65d2 028102 call iicd_eeprom_write_enable 
+0x65d3 028103 fetcht 2 ,mem_temp 
+0x65d4 028104 call iicd_write_eep_data 
+0x65d5 028105 branch iicd_eeprom_write_disable 
+:      028107 iicd_eeprom_write_enable:
+0x65d6 028108 fetch 1 ,mem_eeprom_wp_gpio 
+0x65d7 028109 rtneq gpio_disable 
+0x65d8 028110 bbit0 6 ,iicd_wp_gpio_output_low 
+0x65d9 028111 setarg 150000 
+0x65da 028112 call sleep 
+:      028113 iicd_wp_gpio_output_low:
+0x65db 028114 fetcht 1 ,mem_eeprom_wp_gpio 
+0x65dc 028115 branch gpio_out_active 
+:      028117 iicd_eeprom_write_disable:
+0x65dd 028118 fetcht 1 ,mem_eeprom_wp_gpio 
+0x65de 028119 branch gpio_out_inactive 
+:      028124 iicd_read_eep_data:
+0x65df 028125 bpatchx patch32_0 ,mem_patch32 
+0x65e0 028126 bmark1 mark_eeprom_size ,iicd_read_eep_data_size_2k 
+0x65e1 028127 fetch 2 ,mem_eeprom_base 
+0x65e2 028128 iadd regb ,pdata 
+0x65e3 028129 byteswap pdata ,pdata 
+0x65e4 028130 store 2 ,mem_addr_mi 
+:      028133 iicd_read_eep:
+0x65e5 028134 bpatchx patch32_1 ,mem_patch32 
+0x65e6 028135 bmark1 mark_eeprom_size ,iicd_read_eep_size_2k_lcadcode 
+0x65e7 028136 setarg 4 
+0x65e8 028137 hstore 2 ,core_iicd_txlen 
+0x65e9 028138 jam 0xa0 ,mem_iicd_tbuf 
+0x65ea 028139 jam 0xa1 ,mem_iicd_tbuf + 3 
+:      028140 iicd_read_eep_common:
+0x65eb 028141 setarg mem_iicd_tbuf 
+0x65ec 028142 hstore 2 ,core_iicd_txaddr 
+0x65ed 028143 hstoret 2 ,core_iicd_rxlen 
+0x65ee 028144 deposit rega 
+0x65ef 028145 hstore 2 ,core_iicd_rxaddr 
+0x65f0 028146 setarg 2 
+0x65f1 028147 isolate0 15 ,rega 
+0x65f2 028148 setflag true ,0 ,pdata 
+0x65f3 028149 hstore 1 ,core_iicd_ctrl 
+0x65f4 028150 jam iicd_start ,core_misc_ctrl 
+0x65f5 028151 arg iicd_done ,queue 
+0x65f6 028152 call decrypt_code 
+0x65f7 028153 call wait_iicd_done 
+0x65f8 028154 isolate1 iicd_crcok ,pdata 
+0x65f9 028155 call set_ucode_status 
+0x65fa 028156 bmark1 mark_eeprom_size ,iicd_read_eep_load_code_size_2k 
+0x65fb 028157 fetch 2 ,mem_addr_mi 
+0x65fc 028158 byteswap pdata ,pdata 
+0x65fd 028159 iadd temp ,pdata 
+0x65fe 028160 byteswap pdata ,pdata 
+0x65ff 028161 store 2 ,mem_addr_mi 
+0x6600 028162 rtn 
+:      028164 iicd_read_eep_load_code_size_2k:
+0x6601 028165 fetch 1 ,mem_addr_mi 
+0x6602 028166 iadd temp ,pdata 
+0x6603 028167 byteswap pdata ,pdata 
+0x6604 028168 store 2 ,mem_addr_mi 
+0x6605 028169 rtn 
+:      028175 iicd_write_eep_data:
+0x6606 028176 fetch 2 ,mem_eeprom_base 
+0x6607 028177 iadd regb ,pdata 
+:      028180 iicd_write_ota_data:
+0x6608 028181 store 2 ,mem_pdatatemp 
+0x6609 028182 bpatchx patch32_2 ,mem_patch32 
+0x660a 028183 storet 2 ,mem_temp 
+0x660b 028184 copy rega ,pdata 
+0x660c 028185 store 2 ,mem_contr 
+:      028186 iicd_write_eep_loop:
+0x660d 028187 call iicd_eep_transparency 
+0x660e 028189 fetcht 2 ,mem_regb 
+0x660f 028190 fetch 2 ,mem_contr 
+0x6610 028191 copy pdata ,rega 
+0x6611 028192 fetch 2 ,mem_pdatatemp 
+0x6612 028194 call iicd_write_eep 
+0x6613 028196 fetch 2 ,mem_regb 
+0x6614 028197 fetcht 2 ,mem_contr 
+0x6615 028198 iadd temp ,temp 
+0x6616 028199 storet 2 ,mem_contr 
+0x6617 028200 fetcht 2 ,mem_pdatatemp 
+0x6618 028201 iadd temp ,temp 
+0x6619 028202 storet 2 ,mem_pdatatemp 
+0x661a 028203 fetch 2 ,mem_temp 
+0x661b 028204 nbranch iicd_write_eep_loop ,blank 
+0x661c 028205 rtn 
+:      028213 iicd_eep_transparency:
+0x661d 028214 bpatchx patch32_3 ,mem_patch32 
+0x661e 028215 fetch 1 ,mem_eeprom_block_size 
+0x661f 028216 increase -1 ,pdata 
+0x6620 028217 fetcht 2 ,mem_pdatatemp 
+0x6621 028218 ior temp ,pdata 
+0x6622 028219 increase 1 ,pdata 
+0x6623 028220 store 3 ,mem_regc 
+0x6624 028222 fetch 2 ,mem_temp 
+0x6625 028223 iadd temp ,pdata 
+0x6626 028225 fetcht 3 ,mem_regc 
+0x6627 028226 isub temp ,pdata 
+0x6628 028227 nbranch iicd_eep_deal_short_packet ,positive 
+0x6629 028228 store 2 ,mem_temp 
+0x662a 028229 fetch 3 ,mem_regc 
+0x662b 028230 fetcht 2 ,mem_pdatatemp 
+0x662c 028231 isub temp ,pdata 
+0x662d 028232 store 2 ,mem_regb 
+0x662e 028233 rtn 
+:      028234 iicd_eep_deal_short_packet:
+0x662f 028235 fetch 2 ,mem_temp 
+0x6630 028236 store 2 ,mem_regb 
+0x6631 028237 setarg 0 
+0x6632 028238 store 2 ,mem_temp 
+0x6633 028239 rtn 
+:      028241 iicd_write_eep_size_2k:
+0x6634 028242 increase 2 ,temp 
+0x6635 028243 hstoret 2 ,core_iicd_txlen 
+0x6636 028244 increase -2 ,rega 
+0x6637 028245 ifetcht 3 ,rega 
+0x6638 028246 copy temp ,regb 
+0x6639 028247 arg 0xa0 ,temp 
+0x663a 028248 istoret 1 ,rega 
+0x663b 028250 istore 1 ,contw 
+0x663c 028251 branch iicd_write_eep_common 
+:      028254 iicd_write_eep:
+0x663d 028255 copy pdata ,regb 
+0x663e 028256 bpatchx patch32_4 ,mem_patch32 
+0x663f 028257 bmark1 mark_eeprom_size ,iicd_write_eep_size_2k 
+0x6640 028258 copy regb ,pdata 
+0x6641 028259 increase 3 ,temp 
+0x6642 028260 hstoret 2 ,core_iicd_txlen 
+0x6643 028261 increase -3 ,rega 
+0x6644 028262 ifetcht 3 ,rega 
+0x6645 028263 copy temp ,regb 
+0x6646 028264 arg 0xa0 ,temp 
+0x6647 028265 istoret 1 ,rega 
+0x6648 028266 byteswap pdata ,pdata 
+0x6649 028267 istore 2 ,contw 
+:      028268 iicd_write_eep_common:
+0x664a 028269 deposit rega 
+0x664b 028270 hstore 2 ,core_iicd_txaddr 
+0x664c 028271 setarg 0 
+0x664d 028272 hstore 2 ,core_iicd_rxlen 
+0x664e 028273 jam 1 ,core_iicd_ctrl 
+0x664f 028274 jam iicd_start ,core_misc_ctrl 
+0x6650 028275 call wait_iicd_done 
+0x6651 028276 copy regb ,pdata 
+0x6652 028277 istore 3 ,rega 
+:      028279 iic_check_eeprom_standby:
+0x6653 028280 bpatchx patch32_5 ,mem_patch32 
+0x6654 028281 jam 0 ,mem_iicd_tbuf + 3 
+:      028282 iic_check_eeprom_standby_wait:
+0x6655 028283 setarg 1 
+0x6656 028284 hstore 2 ,core_iicd_txlen 
+0x6657 028285 jam 0xa0 ,mem_iicd_tbuf 
+0x6658 028286 setarg mem_iicd_tbuf 
+0x6659 028287 hstore 2 ,core_iicd_txaddr 
+0x665a 028288 setarg 0 
+0x665b 028289 hstore 2 ,core_iicd_rxlen 
+0x665c 028290 hstore 2 ,core_iicd_rxaddr 
+0x665d 028291 setarg 3 
+0x665e 028292 hstore 1 ,core_iicd_ctrl 
+0x665f 028293 jam iicd_start ,core_misc_ctrl 
+0x6660 028294 call wait_iicd_done 
+0x6661 028295 hfetch 1 ,core_dma_status 
+0x6662 028296 rtnbit0 iicd_ack 
+0x6663 028297 nop 1500 
+0x6664 028298 fetch 1 ,mem_iicd_tbuf + 3 
+0x6665 028299 increase 1 ,pdata 
+0x6666 028300 store 1 ,mem_iicd_tbuf + 3 
+0x6667 028301 sub pdata ,40 ,null 
+0x6668 028302 nrtn positive 
+0x6669 028303 branch iic_check_eeprom_standby_wait 
+:      028307 otp_enable_chgpump:
+0x666a 028308 jam 0x70 ,rfen_chgpump 
+0x666b 028309 nop param_chgpump_delay 
+0x666c 028310 rtn 
+:      028312 otp_disable_chgpump:
+0x666d 028313 jam 0x30 ,rfen_chgpump 
+0x666e 028314 rtn 
+:      028316 otp_set_addr:
+0x666f 028317 lshift3 pdata ,pdata 
+0x6670 028318 hstore 2 ,core_otp_addr 
+0x6671 028319 jam 0 ,core_otpd_ctrl 
+0x6672 028320 rtn 
+:      028323 otp_write:
+0x6673 028324 call otp_set_addr 
+0x6674 028325 call otp_ce 
+:      028326 otp_program:
+0x6675 028327 ifetcht 1 ,rega 
+0x6676 028328 increase 1 ,rega 
+0x6677 028329 force 0 ,queue 
+:      028330 otp_program_bit:
+0x6678 028331 qisolate0 temp 
+0x6679 028332 branch otp_skip_0 ,true 
+0x667a 028333 hfetch 1 ,core_otp_din 
+0x667b 028334 set1 6 ,pdata 
+0x667c 028335 set1 7 ,pdata 
+0x667d 028336 hstore 1 ,core_otp_din 
+0x667e 028337 jam 0x02 ,core_otp_ctrl 
+0x667f 028338 jam 0x82 ,core_otp_ctrl 
+0x6680 028339 set0 7 ,pdata 
+0x6681 028340 hstore 1 ,core_otp_din 
+0x6682 028341 jam 0x8a ,core_otp_ctrl 
+0x6683 028342 nop 11 
+0x6684 028343 jam 0xca ,core_otp_ctrl 
+0x6685 028344 nop 33 
+0x6686 028345 jam 0x4a ,core_otp_ctrl 
+0x6687 028346 nop 44 
+0x6688 028347 jam 0xca ,core_otp_ctrl 
+0x6689 028348 nop 22 
+0x668a 028349 jam 0x8a ,core_otp_ctrl 
+0x668b 028350 nop 33 
+0x668c 028351 jam 0x82 ,core_otp_ctrl 
+0x668d 028352 nop 1 
+0x668e 028353 jam 0x92 ,core_otp_ctrl 
+0x668f 028354 nop 10 
+0x6690 028355 jam 0xb2 ,core_otp_ctrl 
+0x6691 028356 hfetch 1 ,core_otp_rdata 
+0x6692 028357 jam 0x92 ,core_otp_ctrl 
+0x6693 028358 nop 1 
+0x6694 028359 jam 0x82 ,core_otp_ctrl 
+0x6695 028360 qisolate0 pdata 
+0x6696 028361 branch otp_program_bit ,true 
+:      028362 otp_skip_0:
+0x6697 028363 hfetch 2 ,core_otp_addr 
+0x6698 028364 increase 1 ,pdata 
+0x6699 028365 hstore 2 ,core_otp_addr 
+0x669a 028366 increase 1 ,queue 
+0x669b 028367 compare 8 ,queue ,0xf 
+0x669c 028368 nbranch otp_program_bit ,true 
+0x669d 028369 loop otp_program 
+0x669e 028370 jam 0x83 ,core_otp_ctrl 
+0x669f 028371 rtn 
+:      028373 otp_ce:
+0x66a0 028374 jam 0x82 ,core_otp_ctrl 
+0x66a1 028375 nop 12 
+0x66a2 028376 jam 0x80 ,core_otp_ctrl 
+0x66a3 028377 jam 0x82 ,core_otp_ctrl 
+0x66a4 028378 nop 150 
+0x66a5 028379 rtn 
+:      028382 otpd_read_init:
+0x66a6 028383 call otp_ce 
+0x66a7 028384 jam 0xa2 ,core_otp_ctrl 
+0x66a8 028385 deposit rega 
+0x66a9 028386 hstore 2 ,core_otpd_addr 
+0x66aa 028387 set1 11 ,temp 
+0x66ab 028388 isolate0 15 ,pdata 
+0x66ac 028389 setflag true ,15 ,temp 
+0x66ad 028390 hstoret 2 ,core_otpd_len 
+0x66ae 028391 jam otpd_start ,core_misc_ctrl 
+0x66af 028392 rtn 
+:      028394 otpd_wait_end:
+0x66b0 028395 hfetch 1 ,core_dma_status 
+0x66b1 028396 bbit0 otpd_done ,otpd_wait_end 
+0x66b2 028397 rtn 
+:      028400 otpd_read_data:
+0x66b3 028401 call otp_set_addr 
+0x66b4 028402 call otpd_read_init 
+0x66b5 028403 call otpd_wait_end 
+0x66b6 028404 jam 0x83 ,core_otp_ctrl 
+0x66b7 028405 rtn 
+:      028410 otpd_read_code:
+0x66b8 028411 hfetch 2 ,core_current_otp_addr 
+0x66b9 028412 hstore 2 ,core_otp_addr 
+0x66ba 028413 call otpd_read_init 
+0x66bb 028414 arg otpd_done ,queue 
+0x66bc 028415 call decrypt_code 
+0x66bd 028416 call otpd_wait_end 
+0x66be 028417 isolate1 otpd_crcok ,pdata 
+0x66bf 028418 call set_ucode_status 
+0x66c0 028419 jam 0x83 ,core_otp_ctrl 
+0x66c1 028420 rtn 
+:      028423 uartd_prepare_tx:
+0x66c2 028424 hfetch 2 ,core_uart_twptr 
+0x66c3 028425 iforce contwu 
+0x66c4 028426 rtn 
+:      028428 uartd_send:
+0x66c5 028429 deposit contwu 
+0x66c6 028430 hstore 2 ,core_uart_twptr 
+0x66c7 028431 rtn 
+:      028433 uartd_rxdone:
+0x66c8 028434 deposit contru 
+0x66c9 028435 hstore 2 ,core_uart_rrptr 
+0x66ca 028436 rtn 
+:      028438 uartd_prepare_rx:
+0x66cb 028439 hfetch 2 ,core_uart_rrptr 
+0x66cc 028440 copy pdata ,contru 
+0x66cd 028441 rtn 
+:      028443 uart_set_baud_by_mem:
+0x66ce 028444 fetch uart_baud_len ,mem_baud 
+0x66cf 028445 hstore uart_baud_len ,core_uart_baud 
+0x66d0 028446 rtn 
+:      028448 uart_copy_tx_bytes_fast:
+0x66d1 028449 deposit loopcnt 
+0x66d2 028450 rtn blank 
+:      028451 uart_copy_tx_bytes_fast_loop:
+0x66d3 028452 increase -8 ,loopcnt 
+0x66d4 028453 call uart_tx_8_bytes ,positive 
+0x66d5 028454 rtn zero 
+0x66d6 028455 branch uart_copy_tx_bytes_fast_loop ,positive 
+0x66d7 028456 increase 8 ,loopcnt 
+:      028457 uart_copy_tx_bytes_fast_loop_four:
+0x66d8 028458 increase -4 ,loopcnt 
+0x66d9 028459 call uart_tx_4_bytes ,positive 
+0x66da 028460 rtn zero 
+0x66db 028461 branch uart_copy_tx_bytes_fast_loop_four ,positive 
+0x66dc 028462 increase 4 ,loopcnt 
+0x66dd 028463 branch uart_copy_tx_bytes 
+:      028465 uart_tx_8_bytes:
+0x66de 028466 ifetch 8 ,contr 
+0x66df 028467 istore 8 ,contwu 
+0x66e0 028468 rtn 
+:      028470 uart_tx_4_bytes:
+0x66e1 028471 ifetch 4 ,contr 
+0x66e2 028472 istore 4 ,contwu 
+0x66e3 028473 rtn 
+:      028475 uart_copy_tx_bytes:
+0x66e4 028476 deposit loopcnt 
+0x66e5 028477 rtn blank 
+:      028478 uart_copy_tx_bytes_loop:
+0x66e6 028479 ifetch 1 ,contr 
+0x66e7 028480 istore 1 ,contwu 
+0x66e8 028481 loop uart_copy_tx_bytes_loop 
+0x66e9 028482 rtn 
+:      028484 uart_copy_rx_bytes_fast:
+0x66ea 028485 deposit loopcnt 
+0x66eb 028486 rtn blank 
+:      028487 uart_copy_rx_bytes_fast_loop:
+0x66ec 028488 increase -8 ,loopcnt 
+0x66ed 028489 call uart_rx_8_bytes ,positive 
+0x66ee 028490 rtn zero 
+0x66ef 028491 branch uart_copy_rx_bytes_fast_loop ,positive 
+0x66f0 028492 increase 8 ,loopcnt 
+:      028493 uart_copy_rx_bytes_fast_loop_four:
+0x66f1 028494 increase -4 ,loopcnt 
+0x66f2 028495 call uart_rx_4_bytes ,positive 
+0x66f3 028496 rtn zero 
+0x66f4 028497 branch uart_copy_rx_bytes_fast_loop_four ,positive 
+0x66f5 028498 increase 4 ,loopcnt 
+0x66f6 028499 branch uart_copy_rx_bytes 
+:      028501 uart_rx_8_bytes:
+0x66f7 028502 ifetch 8 ,contru 
+0x66f8 028503 istore 8 ,contw 
+0x66f9 028504 rtn 
+:      028506 uart_rx_4_bytes:
+0x66fa 028507 ifetch 4 ,contru 
+0x66fb 028508 istore 4 ,contw 
+0x66fc 028509 rtn 
+:      028512 uart_copy_rx_bytes:
+0x66fd 028513 deposit loopcnt 
+0x66fe 028514 rtn blank 
+:      028515 uart_copy_rx_bytes_loop:
+0x66ff 028516 ifetch 1 ,contru 
+0x6700 028517 istore 1 ,contw 
+0x6701 028518 loop uart_copy_rx_bytes_loop 
+0x6702 028519 rtn 
+:      028522 uart_copy_rx2tx:
+0x6703 028523 deposit loopcnt 
+0x6704 028524 rtn blank 
+:      028525 uart_copy_rx2tx_loop:
+0x6705 028526 ifetch 1 ,contru 
+0x6706 028527 istore 1 ,contwu 
+0x6707 028528 loop uart_copy_rx2tx_loop 
+0x6708 028529 rtn 
+:      028534 app_store_nvram_event:
+0x6709 028535 jam bt_evt_store_nvram ,mem_fifo_temp 
+0x670a 028536 branch ui_ipc_send_event 
+:      028538 check_51cmd_store_reconn_info:
+:      028539 check_51cmd_update_device_record:
+0x670b 028540 bpatchx patch32_6 ,mem_patch32 
+0x670c 028541 fetch 1 ,mem_nv_data_number 
+0x670d 028542 rtn blank 
+0x670e 028543 call check_nvram 
+0x670f 028544 call init_device_list ,zero 
+0x6710 028545 call nvram_find_addr_from_bd_list 
+:      028546 write_device_record:
+0x6711 028547 fetch 1 ,mem_nv_data_number 
+0x6712 028548 icopy regc 
+0x6713 028549 fetcht 2 ,mem_nv_data_ptr 
+0x6714 028550 storet 2 ,mem_list_item_ptr 
+:      028551 write_device_loop_find:
+0x6715 028552 copy regc ,pdata 
+0x6716 028553 branch app_store_nvram_event ,blank 
+0x6717 028554 increase -1 ,regc 
+0x6718 028555 copy temp ,rega 
+0x6719 028556 ifetch 1 ,rega 
+0x671a 028557 fetcht 1 ,mem_select_list_item 
+0x671b 028558 isub temp ,null 
+0x671c 028559 call set_index_finded_device ,zero 
+0x671d 028560 branch write_device_loop_find0 ,positive 
+0x671e 028561 ifetch 1 ,rega 
+0x671f 028562 increase 1 ,pdata 
+0x6720 028563 istore 1 ,rega 
+:      028564 write_device_loop_find0:
+0x6721 028565 fetcht 2 ,mem_list_item_ptr 
+0x6722 028566 increase nv_data_len ,temp 
+0x6723 028567 storet 2 ,mem_list_item_ptr 
+0x6724 028568 branch write_device_loop_find 
+:      028570 set_index_finded_device:
+0x6725 028571 setarg 0 
+0x6726 028572 istore 1 ,rega 
+0x6727 028573 fetch 1 ,mem_temp_reconn_record 
+0x6728 028574 istore 1 ,contw 
+0x6729 028575 bne rec_3_mode ,set_index_finded_device_ble_mode 
+0x672a 028576 arg mem_link_key ,regb 
+:      028577 set_index_find_device_master_addr:
+0x672b 028578 ifetch 6 ,contr 
+0x672c 028579 istore 8 ,contw 
+0x672d 028580 setarg 0 
+0x672e 028581 istore 8 ,contw 
+0x672f 028582 copy regb ,contr 
+:      028583 store_rec_data_common:
+0x6730 028584 call memcpy16 
+0x6731 028585 force 1 ,null 
+0x6732 028586 rtn 
+:      028588 set_index_finded_device_ble_mode:
+0x6733 028589 beq rec_4_mode_random_resolvable_private_address ,set_index_finded_device_irk 
+0x6734 028590 beq rec_4_mode_random_non_resolvable_private_address ,set_index_finded_device_ediv 
+0x6735 028591 arg mem_le_ltk ,regb 
+0x6736 028592 branch set_index_find_device_master_addr 
+:      028594 set_index_finded_device_irk:
+0x6737 028595 arg mem_le_irk ,contr 
+0x6738 028596 call memcpy16 
+:      028597 store_ble_rec_data_common:
+0x6739 028598 arg mem_le_ltk ,contr 
+0x673a 028599 branch store_rec_data_common 
+:      028601 set_index_finded_device_ediv:
+0x673b 028602 arg mem_le_rand ,contr 
+0x673c 028603 call memcpy16 
+0x673d 028604 branch store_ble_rec_data_common 
+:      028607 nvram_find_addr_from_bd_list:
+0x673e 028608 call disable_user 
+0x673f 028609 fetch 1 ,mem_nv_data_number 
+0x6740 028610 rtn blank 
+0x6741 028611 fetch 2 ,mem_ui_state_map 
+0x6742 028612 bbit1 ui_state_bt_connected ,find_addr_from_bd_list_spp_mode 
+:      028613 find_addr_from_bd_list_ble_mode:
+0x6743 028614 bpatchx patch32_7 ,mem_patch32 
+0x6744 028615 fetch 1 ,mem_le_conn_peer_addr_type 
+0x6745 028616 beq master_public_addr ,find_addr_from_bd_list_static_addr 
+0x6746 028617 fetch 1 ,mem_le_plap + 5 
+0x6747 028618 compare 0xc0 ,pdata ,0xc0 
+0x6748 028619 branch find_addr_from_bd_list_static_addr ,true 
+0x6749 028620 compare 0x40 ,pdata ,0xc0 
+0x674a 028621 branch find_addr_from_bd_list_random_addr ,true 
+0x674b 028622 compare 0x00 ,pdata ,0xc0 
+0x674c 028623 branch find_addr_from_bd_list_random_non_resolvable_private_address ,true 
+:      028624 find_addr_from_bd_list_static_addr:
+0x674d 028625 jam rec_4_mode_static_address ,mem_temp_reconn_record 
+0x674e 028626 fetch 6 ,mem_le_plap 
+0x674f 028627 branch find_addr_from_bd_list_common 
+:      028629 find_addr_from_bd_list_random_non_resolvable_private_address:
+0x6750 028630 jam rec_4_mode_random_non_resolvable_private_address ,mem_temp_reconn_record 
+0x6751 028631 branch find_addr_from_bd_list_common 
+:      028634 find_addr_from_bd_list_random_addr:
+0x6752 028635 jam rec_4_mode_random_resolvable_private_address ,mem_temp_reconn_record 
+0x6753 028636 branch find_addr_from_bd_list_common 
+:      028639 find_addr_from_bd_list_spp_mode:
+0x6754 028640 bpatchx patch33_0 ,mem_patch33 
+0x6755 028641 jam rec_3_mode ,mem_temp_reconn_record 
+0x6756 028642 fetch 6 ,mem_plap 
+:      028643 find_addr_from_bd_list_common:
+0x6757 028644 store 6 ,mem_temp_reconn_record + 1 
+0x6758 028645 fetch 2 ,mem_nv_data_ptr 
+0x6759 028646 ifetcht 1 ,pdata 
+0x675a 028647 pincrease 1 
+0x675b 028648 store 2 ,mem_list_item_ptr 
+0x675c 028649 storet 1 ,mem_select_list_item 
+0x675d 028650 fetch 1 ,mem_nv_data_number 
+0x675e 028651 icopy regc 
+:      028652 nvram_find_addr_from_list:
+0x675f 028653 fetch 2 ,mem_list_item_ptr 
+0x6760 028654 copy pdata ,rega 
+0x6761 028655 call nvram_find_addr_from_list_compare 
+0x6762 028656 rtn user 
+0x6763 028657 fetcht 2 ,mem_list_item_ptr 
+0x6764 028658 increase nv_data_len ,temp 
+0x6765 028659 storet 2 ,mem_list_item_ptr 
+0x6766 028660 increase -1 ,temp 
+0x6767 028661 ifetch 1 ,temp 
+0x6768 028662 store 1 ,mem_select_list_item 
+0x6769 028663 increase -1 ,regc 
+0x676a 028664 nbranch nvram_find_addr_from_list ,zero 
+0x676b 028665 fetch 1 ,mem_nv_data_number 
+0x676c 028666 pincrease decreased_one 
+0x676d 028667 store 1 ,mem_select_list_item 
+0x676e 028668 rtn 
+:      028669 nvram_find_addr_from_list_compare:
+0x676f 028670 fetch 1 ,mem_temp_reconn_record 
+0x6770 028671 bne rec_3_mode ,find_addr_from_list_compare_ble_mode 
+:      028672 find_master_addr_from_list_compare:
+0x6771 028673 arg mem_temp_reconn_record ,regb 
+0x6772 028674 arg 7 ,loopcnt 
+0x6773 028675 call string_compare 
+0x6774 028676 branch enable_user ,zero 
+0x6775 028677 rtn 
+:      028679 find_addr_from_list_compare_ble_mode:
+0x6776 028680 beq rec_4_mode_random_resolvable_private_address ,find_irk_form_list_compare 
+0x6777 028681 beq rec_4_mode_random_non_resolvable_private_address ,find_ediv_form_list_compare 
+0x6778 028682 branch find_master_addr_from_list_compare 
+:      028684 find_irk_form_list_compare:
+0x6779 028685 ifetcht 1 ,rega 
+0x677a 028686 isub temp ,null 
+0x677b 028687 nrtn zero 
+0x677c 028688 arg mem_le_prand ,contw 
+0x677d 028689 arg 16 ,loopcnt 
+0x677e 028690 call clear_mem 
+0x677f 028691 fetch 3 ,mem_le_plap + 3 
+0x6780 028692 store 3 ,mem_le_prand 
+0x6781 028693 call genernate_master_macaddress 
+0x6782 028694 fetch 2 ,mem_le_aes_128 + 13 
+0x6783 028695 byteswap pdata ,pdata 
+0x6784 028696 lshift8 pdata ,temp 
+0x6785 028697 ifetch 1 ,contr 
+0x6786 028698 iadd temp ,pdata 
+0x6787 028699 fetcht 3 ,mem_le_plap 
+0x6788 028700 isub temp ,null 
+0x6789 028701 branch enable_user ,zero 
+0x678a 028702 rtn 
+:      028705 genernate_master_macaddress:
+0x678b 028706 arg mem_le_prand ,contr 
+0x678c 028707 call load_data128 
+0x678d 028709 ifetch 1 ,rega 
+0x678e 028710 call load_regext 
+0x678f 028711 force 0x38 ,aes_ctrl 
+0x6790 028712 force 0x0 ,aes_ctrl 
+0x6791 028713 call wait_aes 
+0x6792 028714 arg mem_le_aes_128 ,contw 
+0x6793 028715 branch store_aes_result 
+:      028717 find_ediv_form_list_compare:
+0x6794 028718 ifetcht 1 ,rega 
+0x6795 028719 isub temp ,null 
+0x6796 028720 nrtn zero 
+0x6797 028721 copy contr ,rega 
+0x6798 028722 add contr ,8 ,regc 
+0x6799 028723 arg mem_le_rand ,regb 
+0x679a 028724 arg 8 ,loopcnt 
+0x679b 028725 call string_compare 
+0x679c 028726 branch enable_user ,zero 
+0x679d 028727 copy regc ,rega 
+0x679e 028728 arg mem_le_irk ,regb 
+0x679f 028729 arg 8 ,loopcnt 
+0x67a0 028730 call string_compare 
+0x67a1 028731 branch enable_user ,zero 
+0x67a2 028732 rtn 
+:      028734 check_nvram:
+0x67a3 028735 fetch 2 ,mem_nv_data_ptr 
+0x67a4 028736 ifetcht 1 ,pdata 
+0x67a5 028737 pincrease nv_data_len 
+0x67a6 028738 ifetch 1 ,pdata 
+0x67a7 028739 isub temp ,null 
+0x67a8 028740 rtn 
+:      028742 init_device_list:
+0x67a9 028743 fetch 1 ,mem_nv_data_number 
+0x67aa 028744 icopy loopcnt 
+0x67ab 028745 fetcht 2 ,mem_nv_data_ptr 
+0x67ac 028746 setarg 0 
+:      028747 init_device_list_loop:
+0x67ad 028748 istore 1 ,temp 
+0x67ae 028749 increase nv_data_len ,temp 
+0x67af 028750 pincrease 1 
+0x67b0 028751 loop init_device_list_loop 
+0x67b1 028752 rtn 
+:      028754 load_device_list:
+0x67b2 028755 bpatchx patch33_1 ,mem_patch33 
+0x67b3 028756 call nvram_find_addr_from_bd_list 
+0x67b4 028757 fetch 1 ,mem_state 
+0x67b5 028758 setflag user ,state_combkey ,pdata 
+0x67b6 028759 store 1 ,mem_state 
+0x67b7 028760 nbranch clear_key_exists ,user 
+0x67b8 028761 add rega ,10 ,contr 
+0x67b9 028763 arg mem_link_key ,contw 
+0x67ba 028764 call memcpy16 
+0x67bb 028765 branch check_link_key_load 
+:      028766 clear_key_exists:
+0x67bc 028767 jam 0 ,mem_link_key_exists 
+0x67bd 028768 rtn 
+:      028770 load_device_list_mode_4:
+0x67be 028771 fetch 9 ,mem_le_ediv 
+0x67bf 028772 branch clear_ltk_exists ,blank 
+0x67c0 028773 call nvram_find_addr_from_bd_list 
+0x67c1 028774 nbranch clear_ltk_exists ,user 
+0x67c2 028775 fetch 2 ,mem_list_item_ptr 
+0x67c3 028776 add pdata ,1 ,contr 
+0x67c4 028777 arg mem_le_irk ,contw 
+0x67c5 028778 call memcpy16 
+0x67c6 028779 arg mem_le_ltk ,contw 
+0x67c7 028780 call memcpy16 
+0x67c8 028781 jam 1 ,mem_ltk_exists 
+0x67c9 028782 rtn 
+:      028784 clear_ltk_exists:
+0x67ca 028785 jam 0 ,mem_ltk_exists 
+0x67cb 028786 rtn 
+:      028789 eeprom_store_le_reconn_info:
+0x67cc 028790 fetch 6 ,mem_le_plap 
+0x67cd 028791 store 6 ,mem_temp_lap 
+0x67ce 028792 jam rec_4_mode ,mem_record_bt_mode 
+0x67cf 028793 branch eeprom_store_reconn_info 
+:      028794 eeprom_store_bd_reconn_info:
+0x67d0 028795 fetch 6 ,mem_plap 
+0x67d1 028796 store 6 ,mem_temp_lap 
+0x67d2 028797 jam rec_3_mode ,mem_record_bt_mode 
+:      028798 eeprom_store_reconn_info:
+0x67d3 028799 fetch 1 ,mem_device_option 
+0x67d4 028800 beq dvc_op_module ,check_51cmd_update_device_record 
+0x67d5 028801 bbit1 dvc_op_mouse ,mouse_store_remote_bdaddr 
+0x67d6 028802 rtn 
+:      028805 check_link_key_load:
+0x67d7 028806 fetch 8 ,mem_link_key 
+0x67d8 028807 fetcht 8 ,mem_link_key + 8 
+0x67d9 028808 ior temp ,pdata 
+0x67da 028809 rtn blank 
+0x67db 028810 jam 1 ,mem_link_key_exists 
+0x67dc 028811 rtn 
+:      028818 gpio_set_wake_by_current_state:
+0x67dd 028819 bpatchx patch33_2 ,mem_patch33 
+0x67de 028820 set1 7 ,temp 
+0x67df 028821 call gpio_get_bit 
+0x67e0 028822 nsetflag true ,7 ,temp 
+:      028827 gpio_set_wake:
+0x67e1 028828 bpatchx patch33_3 ,mem_patch33 
+0x67e2 028829 sub temp ,ui_button_gpio_disable ,null 
+0x67e3 028830 rtn zero 
+0x67e4 028831 isolate0 7 ,temp 
+0x67e5 028832 and temp ,0x1f ,queue 
+0x67e6 028833 fetch 4 ,mem_gpio_wakeup_low 
+0x67e7 028834 qsetflag true ,pdata 
+0x67e8 028835 store 4 ,mem_gpio_wakeup_low 
+0x67e9 028836 fetch 4 ,mem_gpio_wakeup_high 
+0x67ea 028837 nqsetflag true ,pdata 
+0x67eb 028838 store 4 ,mem_gpio_wakeup_high 
+0x67ec 028839 rtn 
+:      028842 gpio_clr_wake:
+0x67ed 028843 bpatchx patch33_4 ,mem_patch33 
+0x67ee 028844 sub temp ,ui_button_gpio_disable ,null 
+0x67ef 028845 rtn zero 
+0x67f0 028846 isolate0 7 ,temp 
+0x67f1 028847 and temp ,0x1f ,queue 
+0x67f2 028848 fetch 4 ,mem_gpio_wakeup_low 
+0x67f3 028849 qset0 pdata 
+0x67f4 028850 store 4 ,mem_gpio_wakeup_low 
+0x67f5 028851 fetch 4 ,mem_gpio_wakeup_high 
+0x67f6 028852 qset0 pdata 
+0x67f7 028853 store 4 ,mem_gpio_wakeup_high 
+0x67f8 028854 rtn 
+:      028857 gpio_config_input_nowake:
+0x67f9 028858 call gpio_clr_wake 
+0x67fa 028859 branch gpio_config_input_without_wake 
+:      028862 gpio_config_input:
+0x67fb 028863 sub temp ,ui_button_gpio_disable ,null 
+0x67fc 028864 rtn zero 
+0x67fd 028865 ncall gpio_set_wake ,wake 
+:      028867 gpio_config_input_without_wake:
+0x67fe 028868 arg core_gpio_pd0 ,contw 
+0x67ff 028869 call gpio_set_bit 
+0x6800 028870 setflip gpio_active_bit ,temp 
+0x6801 028871 arg core_gpio_pu0 ,contw 
+0x6802 028872 call gpio_set_bit 
+0x6803 028873 set0 gpio_active_bit ,temp 
+0x6804 028874 arg core_gpio_oe0 ,contw 
+0x6805 028875 branch gpio_set_bit 
+:      028878 gpio_set_high_impedance:
+0x6806 028879 arg core_gpio_pd0 ,contw 
+0x6807 028880 call gpio_set_bit 
+0x6808 028881 set0 gpio_active_bit ,temp 
+0x6809 028882 arg core_gpio_pu0 ,contw 
+0x680a 028883 call gpio_set_bit 
+0x680b 028884 set0 gpio_active_bit ,temp 
+0x680c 028885 arg core_gpio_oe0 ,contw 
+0x680d 028886 branch gpio_set_bit 
+:      028890 gpio_config_output:
+0x680e 028891 sub temp ,ui_button_gpio_disable ,null 
+0x680f 028892 rtn zero 
+0x6810 028893 setflip gpio_active_bit ,temp 
+0x6811 028894 call gpio_out 
+:      028895 gpio_config_output0:
+0x6812 028896 set1 gpio_active_bit ,temp 
+0x6813 028897 arg core_gpio_oe0 ,contw 
+0x6814 028898 branch gpio_set_bit 
+:      028900 gpio_common:
+0x6815 028901 and temp ,0x07 ,queue 
+0x6816 028902 rshift3 temp ,pdata 
+0x6817 028903 and_into 3 ,pdata 
+0x6818 028904 iadd contw ,contw 
+0x6819 028905 ifetch 1 ,contw 
+0x681a 028906 rtn 
+:      028908 gpio_check_active:
+0x681b 028909 arg core_gpio_out0 ,contw 
+0x681c 028910 branch get_bit_common 
+:      028914 gpio_get_bit:
+0x681d 028915 arg core_gpio_in ,contw 
+:      028916 get_bit_common:
+0x681e 028917 call gpio_common 
+0x681f 028918 isolate1 gpio_active_bit ,temp 
+0x6820 028919 branch gpio_get_bit_reverse ,true 
+0x6821 028920 qisolate0 pdata 
+0x6822 028921 rtn 
+:      028922 gpio_get_bit_reverse:
+0x6823 028923 qisolate1 pdata 
+0x6824 028924 rtn 
+:      028926 gpio_out_inactive:
+0x6825 028927 sub temp ,ui_button_gpio_disable ,null 
+0x6826 028928 rtn zero 
+0x6827 028929 isolate1 7 ,null 
+0x6828 028930 branch gpio_out_flag 
+:      028932 gpio_out_active:
+0x6829 028933 sub temp ,ui_button_gpio_disable ,null 
+0x682a 028934 rtn zero 
+0x682b 028935 isolate0 7 ,null 
+:      028938 gpio_out_flag:
+0x682c 028939 setarg 0 
+0x682d 028940 nsetflag true ,gpio_active_bit ,pdata 
+0x682e 028941 ixor temp ,temp 
+:      028944 gpio_out:
+0x682f 028945 arg core_gpio_out0 ,contw 
+:      028948 gpio_set_bit:
+0x6830 028949 call gpio_common 
+0x6831 028950 isolate1 gpio_active_bit ,temp 
+0x6832 028951 qsetflag true ,pdata 
+0x6833 028952 istore 1 ,contw 
+0x6834 028953 rtn 
+:      028955 gpio_set_before_lpm_common:
+0x6835 028956 arg -1 ,rega 
+0x6836 028957 hfetch 1 ,core_gpio_sel1 
+0x6837 028958 compare 0x02 ,pdata ,0x03 
+0x6838 028959 call neglact4_from_23_pin ,true 
+0x6839 028961 compare 0x01 ,pdata ,0x03 
+0x683a 028962 call neglact2_form_25_pin ,true 
+0x683b 028964 compare 0x03 ,pdata ,0x03 
+0x683c 028965 call neglact2_form_25_pin ,true 
+0x683d 028967 isolate1 2 ,pdata 
+0x683e 028968 call neglect2_from_6_pin ,true 
+0x683f 028970 isolate1 3 ,pdata 
+0x6840 028971 call neglect4_from_9_pin ,true 
+0x6841 028973 isolate1 4 ,pdata 
+0x6842 028974 call neglact2_form_30_pin ,true 
+0x6843 028976 isolate1 6 ,pdata 
+0x6844 028977 nsetflag true ,04 ,rega 
+0x6845 028979 isolate1 7 ,pdata 
+0x6846 028980 nsetflag true ,05 ,rega 
+0x6847 028982 hfetch 1 ,core_gpio_sel2 
+0x6848 028983 isolate1 0 ,pdata 
+0x6849 028984 nsetflag true ,27 ,rega 
+0x684a 028985 isolate1 1 ,pdata 
+0x684b 028986 nsetflag true ,28 ,rega 
+0x684c 028987 isolate1 2 ,pdata 
+0x684d 028988 nsetflag true ,03 ,rega 
+0x684e 028989 isolate1 3 ,pdata 
+0x684f 028990 nsetflag true ,08 ,rega 
+0x6850 028991 isolate1 4 ,pdata 
+0x6851 028992 nsetflag true ,20 ,rega 
+0x6852 028993 isolate1 5 ,pdata 
+0x6853 028994 nsetflag true ,21 ,rega 
+0x6854 028995 isolate1 6 ,pdata 
+0x6855 028996 nsetflag true ,22 ,rega 
+0x6856 028997 isolate1 7 ,pdata 
+0x6857 028998 nsetflag true ,23 ,rega 
+0x6858 029000 hfetch 1 ,core_gpio_sel 
+0x6859 029001 isolate1 0 ,pdata 
+0x685a 029002 nsetflag true ,05 ,rega 
+0x685b 029003 isolate1 1 ,pdata 
+0x685c 029004 nsetflag true ,06 ,rega 
+0x685d 029005 isolate1 2 ,pdata 
+0x685e 029006 nsetflag true ,07 ,rega 
+0x685f 029007 isolate1 3 ,pdata 
+0x6860 029008 nsetflag true ,18 ,rega 
+0x6861 029009 isolate1 4 ,pdata 
+0x6862 029010 nsetflag true ,19 ,rega 
+0x6863 029011 isolate1 5 ,pdata 
+0x6864 029012 nsetflag true ,20 ,rega 
+0x6865 029013 isolate1 6 ,pdata 
+0x6866 029014 nsetflag true ,21 ,rega 
+0x6867 029015 isolate1 7 ,pdata 
+0x6868 029016 nsetflag true ,22 ,rega 
+0x6869 029018 hfetch 1 ,core_uart_ctrl 
+0x686a 029019 isolate1 4 ,pdata 
+0x686b 029020 call neglact2_form_2_pin ,true 
+0x686c 029021 bpatchx patch33_5 ,mem_patch33 
+0x686d 029023 hfetch 4 ,core_gpio_pu0 
+0x686e 029024 hfetcht 4 ,core_gpio_pd0 
+0x686f 029025 ior temp ,pdata 
+0x6870 029026 invert pdata ,pdata 
+0x6871 029027 iand rega ,pdata 
+0x6872 029029 hstore 4 ,core_gpio_oe0 
+0x6873 029030 rtn 
+:      029033 neglect2_from_6_pin:
+0x6874 029034 arg 6 ,queue 
+0x6875 029035 branch neglect_2_pin 
+:      029036 neglect4_from_9_pin:
+0x6876 029037 arg 9 ,queue 
+0x6877 029038 branch neglact_4_pin 
+:      029039 neglact4_from_23_pin:
+0x6878 029040 arg 23 ,queue 
+0x6879 029041 branch neglact_4_pin 
+:      029042 neglact2_form_25_pin:
+0x687a 029043 arg 25 ,queue 
+0x687b 029044 branch neglect_2_pin 
+:      029045 neglact2_form_30_pin:
+0x687c 029046 arg 30 ,queue 
+0x687d 029047 branch neglect_2_pin 
+:      029048 neglact2_form_2_pin:
+0x687e 029049 arg 2 ,queue 
+0x687f 029050 branch neglect_2_pin 
+:      029051 neglact_1_pin:
+0x6880 029052 arg 1 ,loopcnt 
+0x6881 029053 branch neglect_pin_loop 
+:      029054 neglact_4_pin:
+0x6882 029055 arg 4 ,loopcnt 
+0x6883 029056 branch neglect_pin_loop 
+:      029057 neglect_2_pin:
+0x6884 029058 arg 2 ,loopcnt 
+:      029059 neglect_pin_loop:
+0x6885 029060 qset0 rega 
+0x6886 029061 increase 1 ,queue 
+0x6887 029062 loop neglect_pin_loop 
+0x6888 029063 rtn 
+:      029071 gpio_cfg_uart_tx_output:
+0x6889 029072 call gpio_uart2gpio 
+0x688a 029073 arg uart_wakeup_tx ,temp 
+0x688b 029074 branch gpio_config_output 
+:      029076 gpio_pu_uart_tx:
+0x688c 029077 call gpio_cfg_uart_tx_output 
+0x688d 029078 arg uart_wakeup_tx ,temp 
+0x688e 029079 branch gpio_out_inactive 
+:      029083 gpio_rx_config_input_with_pu:
+0x688f 029084 call gpio_uart2gpio 
+0x6890 029085 hfetch 1 ,core_gpio_pu0 
+0x6891 029086 set1 uart_wakeup_rx ,pdata 
+0x6892 029087 hstore 1 ,core_gpio_pu0 
+0x6893 029088 arg uart_wakeup_rx ,temp 
+0x6894 029089 branch gpio_config_input 
+:      029091 gpio_uart2gpio:
+0x6895 029092 hfetch 1 ,core_gpio_sel1 
+0x6896 029093 and_into 0xfb ,pdata 
+0x6897 029094 hstore 1 ,core_gpio_sel1 
+0x6898 029095 rtn 
+:      029097 gpio_check_uart_state:
+0x6899 029098 hfetch 1 ,core_gpio_sel1 
+0x689a 029099 isolate1 2 ,pdata 
+0x689b 029100 rtn 
+:      029102 load_chip_option:
+0x689c 029103 call otp_enable_chgpump 
+0x689d 029104 setarg otp_chip_functions 
+0x689e 029105 arg mem_chip_functions ,rega 
+0x689f 029106 arg 0x02 ,temp 
+0x68a0 029107 call otpd_read_data 
+0x68a1 029108 branch otp_disable_chgpump 
+:      029111 load_adc_init:
+0x68a2 029112 call otp_enable_chgpump 
+0x68a3 029113 setarg otp_adc_io_0_5v_addr 
+0x68a4 029114 arg mem_0_5_adc_io_data ,rega 
+0x68a5 029115 arg 14 ,temp 
+0x68a6 029116 call otpd_read_data 
+0x68a7 029117 branch otp_disable_chgpump 
+:      029121 adc_init_data:
+0x68a8 029122 bpatchx patch33_6 ,mem_patch33 
+0x68a9 029124 call load_adc_init 
+0x68aa 029126 fetch 1 ,mem_adc_config_flag 
+0x68ab 029127 beq adc_config_vinlpm ,adc_init_data_vinlpm 
+0x68ac 029128 beq adc_config_hvin ,adc_init_data_hvin 
+0x68ad 029129 beq adc_config_gpio ,adc_init_data_io 
+0x68ae 029130 rtn 
+:      029132 adc_init_data_vinlpm:
+0x68af 029133 fetcht 2 ,mem_otp_adc_flag 
+0x68b0 029134 setarg otp_adc_flag 
+0x68b1 029135 isub temp ,null 
+0x68b2 029136 branch adc_check_data_vinlpm ,zero 
+0x68b3 029137 setarg 0x4dfa 
+0x68b4 029138 store 2 ,mem_3v_adc_vinlpm_data 
+0x68b5 029139 setarg 0x4894 
+0x68b6 029140 store 2 ,mem_2v_adc_vinlpm_data 
+0x68b7 029141 branch set_vdd_reference_voltage_1v 
+:      029143 adc_check_data_vinlpm:
+0x68b8 029144 fetch 2 ,mem_3v_adc_vinlpm_data 
+0x68b9 029145 nbranch adc_check_2v_vinlpm ,blank 
+0x68ba 029146 setarg 0x4dfa 
+0x68bb 029147 store 2 ,mem_3v_adc_vinlpm_data 
+:      029148 adc_check_2v_vinlpm:
+0x68bc 029149 fetch 2 ,mem_2v_adc_vinlpm_data 
+0x68bd 029150 nbranch set_vdd_reference_voltage_1v ,blank 
+0x68be 029151 setarg 0x4894 
+0x68bf 029152 store 2 ,mem_2v_adc_vinlpm_data 
+:      029153 set_vdd_reference_voltage_1v:
+0x68c0 029154 setarg 100 
+0x68c1 029155 store 2 ,mem_reference_voltage 
+0x68c2 029156 rtn 
+:      029158 adc_init_data_hvin:
+0x68c3 029159 fetcht 2 ,mem_otp_adc_flag 
+0x68c4 029160 setarg otp_adc_flag 
+0x68c5 029161 isub temp ,null 
+0x68c6 029162 branch adc_check_data_hvin ,zero 
+0x68c7 029163 setarg 0x5932 
+0x68c8 029164 store 2 ,mem_5v_adc_hvin_data 
+0x68c9 029165 setarg 0x4323 
+0x68ca 029166 store 2 ,mem_1v_adc_hvin_data 
+0x68cb 029167 branch set_vdd_reference_voltage_4v 
+:      029169 adc_check_data_hvin:
+0x68cc 029170 fetch 2 ,mem_5v_adc_hvin_data 
+0x68cd 029171 nbranch adc_check_1v_hvin ,blank 
+0x68ce 029172 setarg 0x5932 
+0x68cf 029173 store 2 ,mem_5v_adc_hvin_data 
+:      029174 adc_check_1v_hvin:
+0x68d0 029175 fetch 2 ,mem_1v_adc_hvin_data 
+0x68d1 029176 nbranch set_vdd_reference_voltage_4v ,blank 
+0x68d2 029177 setarg 0x4323 
+0x68d3 029178 store 2 ,mem_1v_adc_hvin_data 
+:      029179 set_vdd_reference_voltage_4v:
+0x68d4 029180 setarg 400 
+0x68d5 029181 store 2 ,mem_reference_voltage 
+0x68d6 029182 rtn 
+:      029184 adc_init_data_io:
+0x68d7 029185 fetcht 2 ,mem_otp_adc_flag 
+0x68d8 029186 setarg otp_adc_flag 
+0x68d9 029187 isub temp ,null 
+0x68da 029188 branch adc_check_data_io ,zero 
+0x68db 029189 setarg 0x6946 
+0x68dc 029190 store 2 ,mem_1v_adc_io_data 
+0x68dd 029191 setarg 0x5377 
+0x68de 029192 store 2 ,mem_0_5_adc_io_data 
+0x68df 029193 branch set_vdd_reference_voltage_0_5v 
+:      029195 adc_check_data_io:
+0x68e0 029196 fetch 2 ,mem_1v_adc_io_data 
+0x68e1 029197 nbranch adc_check_0_5v_io ,blank 
+0x68e2 029198 setarg 0x6946 
+0x68e3 029199 store 2 ,mem_1v_adc_io_data 
+:      029200 adc_check_0_5v_io:
+0x68e4 029201 fetch 2 ,mem_0_5_adc_io_data 
+0x68e5 029202 nbranch set_vdd_reference_voltage_0_5v ,blank 
+0x68e6 029203 setarg 0x5377 
+0x68e7 029204 store 2 ,mem_0_5_adc_io_data 
+:      029205 set_vdd_reference_voltage_0_5v:
+0x68e8 029206 setarg 50 
+0x68e9 029207 store 2 ,mem_reference_voltage 
+0x68ea 029208 rtn 
+:      029211 adc_set_mode:
+0x68eb 029212 fetch 1 ,mem_adc_config_flag 
+0x68ec 029213 beq adc_config_vinlpm ,adc_check_vinlpm 
+0x68ed 029214 beq adc_config_hvin ,adc_check_hvin 
+0x68ee 029215 beq adc_config_gpio ,adc_check_gpio 
+0x68ef 029216 rtn 
+:      029217 adc_check_vinlpm:
+0x68f0 029218 jam 0xbf ,rf_adc_mode 
+0x68f1 029219 branch read_adc 
+:      029220 adc_check_hvin:
+0x68f2 029221 jam 0xaf ,rf_adc_mode 
+0x68f3 029222 branch read_adc 
+:      029223 adc_check_gpio:
+0x68f4 029224 jam 0x8f ,rf_adc_mode 
+0x68f5 029225 fetch 1 ,mem_adc_channel 
+0x68f6 029226 hstore 1 ,rf_adc_ch 
+0x68f7 029227 branch read_adc 
+:      029228 read_adc:
+0x68f8 029229 bpatchx patch33_7 ,mem_patch33 
+0x68f9 029230 hfetch 1 ,core_uart_baud + 1 
+0x68fa 029231 set1 7 ,pdata 
+0x68fb 029232 hstore 1 ,core_uart_baud + 1 
+0x68fc 029233 hfetch 1 ,rf_adc_ch 
+0x68fd 029234 or_into 0x30 ,pdata 
+0x68fe 029235 hstore 1 ,rf_adc_ch 
+0x68ff 029236 jam 0x7c ,rfen_adc 
+0x6900 029237 jam 0xaa ,rf_adc_gc 
+0x6901 029238 nop 5000 
+0x6902 029239 hfetcht 2 ,core_adc_sum 
+0x6903 029240 hfetch 1 ,core_uart_baud + 1 
+0x6904 029241 set0 7 ,pdata 
+0x6905 029242 hstore 1 ,core_uart_baud + 1 
+0x6906 029243 storet 2 ,mem_adc_current_value 
+0x6907 029244 rtn 
+:      029246 vdd_calculate_by_mode:
+0x6908 029247 bpatchx patch34_0 ,mem_patch34 
+0x6909 029248 fetch 1 ,mem_adc_config_flag 
+0x690a 029249 beq adc_config_vinlpm ,vdd_calculate_vinlpm 
+0x690b 029250 beq adc_config_hvin ,vdd_calculate_hvin 
+0x690c 029251 beq adc_config_gpio ,vdd_calculate_io 
+0x690d 029252 rtn 
+:      029254 vdd_calculate_vinlpm:
+0x690e 029255 fetch 2 ,mem_3v_adc_vinlpm_data 
+0x690f 029256 fetcht 2 ,mem_2v_adc_vinlpm_data 
+0x6910 029257 arg 200 ,regc 
+0x6911 029258 branch vdd_calculate 
+:      029260 vdd_calculate_hvin:
+0x6912 029261 fetch 2 ,mem_5v_adc_hvin_data 
+0x6913 029262 fetcht 2 ,mem_1v_adc_hvin_data 
+0x6914 029263 arg 100 ,regc 
+0x6915 029264 branch vdd_calculate 
+:      029266 vdd_calculate_io:
+0x6916 029267 fetch 2 ,mem_1v_adc_io_data 
+0x6917 029268 fetcht 2 ,mem_0_5_adc_io_data 
+0x6918 029269 arg 50 ,regc 
+0x6919 029270 branch vdd_calculate 
+:      029272 vdd_calculate:
+0x691a 029273 isub temp ,rega 
+0x691b 029274 fetch 2 ,mem_adc_current_value 
+0x691c 029275 isub temp ,pdata 
+0x691d 029276 nbranch vdd_calculate1 ,positive 
+0x691e 029277 fetcht 2 ,mem_reference_voltage 
+0x691f 029278 imul32 temp ,regb 
+0x6920 029279 copy regc ,pdata 
+0x6921 029280 imul32 rega ,pdata 
+0x6922 029281 iadd regb ,pdata 
+:      029282 vdd_calculate2:
+0x6923 029283 idiv rega 
+0x6924 029284 call wait_div_end 
+0x6925 029285 quotient pdata 
+0x6926 029286 rtn 
+:      029288 vdd_calculate1:
+0x6927 029289 copy temp ,pdata 
+0x6928 029290 fetcht 2 ,mem_adc_current_value 
+0x6929 029291 isub temp ,pdata 
+0x692a 029292 fetcht 2 ,mem_reference_voltage 
+0x692b 029293 imul32 temp ,regb 
+0x692c 029294 copy regc ,pdata 
+0x692d 029295 imul32 rega ,pdata 
+0x692e 029296 isub regb ,pdata 
+0x692f 029297 branch vdd_calculate2 
+:      029308 adc_bat_percent_lowpower_out:
+0x6930 029309 ifetch 8 ,rega 
+0x6931 029310 store 8 ,mem_pdatatemp 
+0x6932 029311 fetch 2 ,mem_pdatatemp 
+0x6933 029312 fetcht 2 ,mem_pdatatemp + 2 
+0x6934 029313 isub temp ,rega 
+0x6935 029314 fetch 2 ,mem_pdatatemp + 6 
+0x6936 029315 isub temp ,regb 
+0x6937 029316 fetcht 2 ,mem_pdatatemp + 4 
+0x6938 029317 isub temp ,null 
+0x6939 029318 ncall adc_set_low_power_flag ,positive 
+0x693a 029319 mul32 regb ,100 ,pdata 
+0x693b 029320 idiv rega 
+0x693c 029321 call wait_div_end 
+0x693d 029322 quotient pdata 
+0x693e 029323 call adc_set_no_power_flag ,blank 
+0x693f 029324 rtn 
+:      029325 adc_set_low_power_flag:
+0x6940 029326 fetch 1 ,mem_adc_power_flag 
+0x6941 029327 set1 0 ,pdata 
+0x6942 029328 store 1 ,mem_adc_power_flag 
+0x6943 029329 rtn 
+:      029330 adc_set_no_power_flag:
+0x6944 029331 fetcht 1 ,mem_adc_power_flag 
+0x6945 029332 set1 1 ,temp 
+0x6946 029333 storet 1 ,mem_adc_power_flag 
+0x6947 029334 rtn 
+:      029339 keyscan_key_init:
+0x6948 029340 fetch 2 ,mem_key_num_ptr 
+0x6949 029341 ifetch 1 ,pdata 
+:      029342 keyscan_key_init_next:
+0x694a 029343 rtn blank 
+0x694b 029344 copy pdata ,loopcnt 
+0x694c 029346 fetch 2 ,mem_keyscan_ptr 
+0x694d 029347 increase 3 ,pdata 
+0x694e 029348 copy pdata ,rega 
+:      029349 keyscan_key_init_lp1:
+0x694f 029350 ifetcht 1 ,rega 
+0x6950 029351 call gpio_config_input 
+0x6951 029352 increase key_conf_struct_len ,rega 
+0x6952 029353 loop keyscan_key_init_lp1 
+:      029354 keyscan_key_init_end:
+0x6953 029355 rtn 
+:      029357 keyscan_scan_key:
+0x6954 029358 fetch 2 ,mem_keyscan_ptr 
+0x6955 029359 increase 3 ,pdata 
+0x6956 029360 copy pdata ,rega 
+0x6957 029362 force 0 ,regb 
+0x6958 029363 jam 0 ,mem_key_value_temp 
+:      029364 keyscan_scan_key_lp1:
+0x6959 029365 ifetcht 1 ,rega 
+0x695a 029366 call gpio_get_bit 
+0x695b 029367 bpatchx patch34_1 ,mem_patch34 
+0x695c 029368 fetch 2 ,mem_key_value_temp 
+0x695d 029369 copy regb ,queue 
+0x695e 029370 qsetflag true ,pdata 
+0x695f 029371 store 2 ,mem_key_value_temp 
+0x6960 029372 increase key_conf_struct_len ,rega 
+0x6961 029373 increase 1 ,regb 
+0x6962 029374 fetch 2 ,mem_key_num_ptr 
+0x6963 029375 ifetch 1 ,pdata 
+:      029376 keyscan_scan_key_lp1_next:
+0x6964 029377 ixor regb ,null 
+0x6965 029378 nbranch keyscan_scan_key_lp1 ,zero 
+0x6966 029379 fetch 2 ,mem_key_value_temp 
+0x6967 029380 fetcht 2 ,mem_key_value 
+0x6968 029381 ixor temp ,null 
+0x6969 029382 rtn zero 
+0x696a 029383 enable user 
+0x696b 029384 rtn 
+:      029386 keyscan_process_lpm_before:
+0x696c 029387 fetch 2 ,mem_key_num_ptr 
+0x696d 029388 ifetch 1 ,pdata 
+:      029389 keyscan_process_lpm_before_next:
+0x696e 029390 rtn blank 
+0x696f 029391 copy pdata ,loopcnt 
+0x6970 029392 fetch 2 ,mem_keyscan_ptr 
+0x6971 029393 increase 3 ,pdata 
+0x6972 029394 copy pdata ,rega 
+:      029395 keyscan_process_lpm_before_lp1:
+0x6973 029396 ifetcht 1 ,rega 
+0x6974 029397 call gpio_set_wake_by_current_state 
+0x6975 029398 increase key_conf_struct_len ,rega 
+0x6976 029399 loop keyscan_process_lpm_before_lp1 
+:      029400 keyscan_process_lpm_before_end:
+0x6977 029401 rtn 
+:      029403 keyscan_key_process:
+0x6978 029404 arg key_scan_timer ,queue 
+0x6979 029405 call timer_check 
+0x697a 029406 nrtn blank 
+0x697b 029407 setarg 0x20 
+0x697c 029408 arg key_scan_timer ,queue 
+0x697d 029409 call timer_init 
+0x697e 029410 disable user 
+0x697f 029411 call keyscan_process_lpm_before 
+0x6980 029412 bpatchx patch34_2 ,mem_patch34 
+0x6981 029413 fetch 2 ,mem_key_num_ptr 
+0x6982 029414 ifetch 1 ,pdata 
+:      029415 keyscan_key_process_next:
+0x6983 029416 rtn blank 
+0x6984 029417 call keyscan_scan_key 
+0x6985 029418 nbranch lpm_button_clean_wake_lock ,user 
+0x6986 029419 call lpm_button_get_wake_lock 
+0x6987 029420 disable user 
+0x6988 029421 fetch 2 ,mem_key_value_temp 
+0x6989 029422 store 2 ,mem_key_value_temp4 
+0x698a 029423 jam 0 ,mem_key_value_temp6 
+0x698b 029424 force 0 ,queue 
+:      029425 keyscan_key_lp1:
+0x698c 029426 fetch 2 ,mem_key_value 
+0x698d 029427 rshift pdata ,temp 
+0x698e 029428 storet 2 ,mem_key_value 
+0x698f 029429 and pdata ,0x01 ,pdata 
+0x6990 029430 fetcht 2 ,mem_key_value_temp4 
+0x6991 029431 and temp ,0x01 ,rega 
+0x6992 029432 rshift temp ,temp 
+0x6993 029433 storet 2 ,mem_key_value_temp4 
+0x6994 029434 ixor rega ,null 
+0x6995 029435 ncall keyscan_send_key_data ,zero 
+0x6996 029436 fetch 2 ,mem_key_num_ptr 
+0x6997 029437 ifetch 1 ,pdata 
+:      029438 keyscan_key_lp1_next:
+0x6998 029439 fetcht 1 ,mem_key_value_temp6 
+0x6999 029440 increase 1 ,temp 
+0x699a 029441 storet 1 ,mem_key_value_temp6 
+0x699b 029442 copy temp ,queue 
+0x699c 029443 ixor queue ,null 
+0x699d 029444 nbranch keyscan_key_lp1 ,zero 
+0x699e 029445 fetch 2 ,mem_key_value_temp 
+0x699f 029446 store 2 ,mem_key_value 
+0x69a0 029447 rtn 
+:      029448 keyscan_send_key_data:
+0x69a1 029449 bpatchx patch34_3 ,mem_patch34 
+0x69a2 029450 fetch 2 ,mem_keyscan_ptr 
+0x69a3 029451 increase 1 ,pdata 
+0x69a4 029452 ifetch 2 ,pdata 
+0x69a5 029453 branch callback_func 
+:      029464 pwm_init:
+0x69a6 029465 hfetch 1 ,core_clksel 
+0x69a7 029466 ior rega ,pdata 
+0x69a8 029467 hstore 1 ,core_clksel 
+0x69a9 029468 hfetch 2 ,core_clkoff 
+0x69aa 029469 set0 clock_off_pwm ,pdata 
+0x69ab 029470 hstore 2 ,core_clkoff 
+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 
+              org 0x10001
+:      037184 z_entrance0:
+0x10001 037185 beq zcode_00 ,z_page_wait_fhs_reply_ok
+0x10002 037186 rtn
+:      037188 z_page_wait_fhs_reply_ok:
+0x10003 037189 fetch 1 ,mem_page_rcv_fhs
+0x10004 037190 increase 1 ,pdata
+0x10005 037191 store 1 ,mem_page_rcv_fhs
+0x10006 037192 call prepare_newconn
+:      037193 z_master_newconn_loop:
+0x10007 037194 set1 mark_first_packet ,mark
+0x10008 037195 call master_newconn_once
+0x10009 037196 branch z_newconn_poll_responded ,sync
+0x1000a 037197 set0 mark_first_packet ,mark
+0x1000b 037198 call new_conn_timeout
+0x1000c 037199 nbranch z_master_newconn_loop ,blank
+0x1000d 037200 branch page_restart
+:      037201 z_newconn_poll_responded:
+0x1000e 037202 set0 mark_first_packet ,mark
+0x1000f 037203 branch newconn_poll_responded
+              org 0x20001
+:      037210 z_entrance1:
+0x20001 037211 beq zcode_10 ,z_mouse_bb_disconnected
+0x20002 037212 beq zcode_11 ,z_hid_rx_process
+0x20003 037213 rtn
+:      037215 z_mouse_bb_disconnected:
+0x20004 037216 jam 0 ,mem_mouse_enter_sniff_count
+0x20005 037217 jam 0x0e ,mem_sniff_param_interval
+0x20006 037218 call mouse_bb_discon_clear_stack
+0x20007 037219 fetch app_disc_rsn_size ,mem_app_disconn_reason
+0x20008 037220 bbit1 app_disc_ble ,z_mouse4_0_event_bb_disconn
+0x20009 037221 bbit1 app_disc_by_button ,app_disconn_reason_clear
+0x2000a 037222 bbit1 app_disc_after_pairing ,z_mouse_event_light_state_pairing
+0x2000b 037223 bbit1 app_disc_after_reconn ,z_mouse_event_light_state_hibernate
+0x2000c 037224 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
+0x2000d 037225 branch mouse_start_discovery
+:      037227 z_mouse4_0_event_bb_disconn:
+0x2000e 037228 call mouse_le_clean_connect_flag
+0x2000f 037229 fetch app_disc_rsn_size ,mem_app_disconn_reason
+0x20010 037230 bbit1 app_disc_pb_button ,p_mouse_select_device_button_up
+0x20011 037231 branch mouse4_0_event_bb_disconn + 2
+:      037233 z_mouse_event_light_state_pairing:
+0x20012 037234 bbit1 app_disc_after_handshake ,z_mouse_event_light_state_hibernate
+0x20013 037235 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate
+0x20014 037236 branch mouse_start_discovery
+:      037237 z_mouse_event_light_state_hibernate:
+0x20015 037238 fetch 2 ,mem_ui_state_map
+0x20016 037239 bbit1 ui_state_btn_down ,mouse_start_discovery
+0x20017 037240 call app_disconn_reason_clear
+0x20018 037241 call p_mouse_check_key_gpio
+0x20019 037242 beq mouse_lm_button ,p_mouse_null_enter_hibernate_enable
+0x2001a 037243 branch app_bb_hibernate
+:      037246 z_hid_rx_process:
+0x2001b 037247 fetch 2 ,mem_l2cap_payload_ptr
+0x2001c 037248 copy pdata ,contr
+0x2001d 037249 ifetch 1 ,contr
+0x2001e 037250 store 1 ,mem_l2cap_rcv
+0x2001f 037251 and pdata ,0x0f ,temp
+0x20020 037252 rshift4 pdata ,pdata
+0x20021 037253 beq hid_type_set_protocol ,z_hid_rx_set_protocol
+0x20022 037254 branch hid_rx_process + 6
+:      037255 z_hid_rx_set_protocol:
+0x20023 037256 call hid_rx_process_handshake
+0x20024 037257 jam 0 ,mem_mouse_bt_boot_mode
+0x20025 037258 fetch 1 ,mem_l2cap_rcv
+0x20026 037259 isolate1 0 ,pdata
+0x20027 037260 rtn true
+0x20028 037261 jam 1 ,mem_mouse_bt_boot_mode
+0x20029 037262 rtn
+              org 0x30001
+:      037266 z_entrance2:
+0x30001 037267 beq zcode_20 ,z_send_lmp
+0x30002 037268 rtn
+:      037270 z_send_lmp:
+0x30003 037271 disable user
+0x30004 037272 call lmo_fifo_process
+0x30005 037275 fetch 1 ,mem_lmp_to_send
+0x30006 037276 rtn blank
+0x30007 037277 bbit1 7 ,z_send_lmp_escape
+0x30008 037278 beq lmp_accepted ,z_send_lmp_accepted
+0x30009 037279 beq lmp_setup_complete ,z_send_lmp_setup_complete
+0x3000a 037280 beq lmp_sniff_req ,z_send_lmp_sniff_req
+0x3000b 037281 branch send_lmp0
+:      037282 z_send_lmp_escape:
+0x3000c 037283 beq lmp_ext_features_res ,z_send_lmpext_features_res
+0x3000d 037284 beq lmp_ext_features_req ,z_send_lmpext_features_req
+0x3000e 037285 branch send_lmp_escape
+:      037286 z_send_lmpext_features_res:
+0x3000f 037287 call z_check_ssp_enable
+0x30010 037288 fetch 1 ,mem_lmp_to_send
+0x30011 037289 branch send_lmpext_features_res
+:      037290 z_send_lmpext_features_req:
+0x30012 037291 call z_check_ssp_enable
+0x30013 037292 fetch 1 ,mem_lmp_to_send
+0x30014 037293 branch send_lmpext_features_req
+:      037294 z_check_ssp_enable:
+0x30015 037295 fetch 1 ,mem_ssp_enable
+0x30016 037296 branch ssp_disable ,blank
+0x30017 037297 branch ssp_enable
+:      037299 z_send_lmp_setup_complete:
+0x30018 037300 jam 1 ,mem_bt_send_lmp_setup_complete
+0x30019 037301 branch send_lmp_setup_complete
+:      037303 z_send_lmp_sniff_req:
+0x3001a 037304 jam 4 ,mem_mouse_bt_send_first_package_timer
+0x3001b 037305 branch send_lmp_sniff_req
+:      037308 z_send_lmp_accepted:
+0x3001c 037309 force 2 ,pdata
+0x3001d 037310 call msg_send_lmp
+0x3001e 037311 fetch 1 ,mem_lmi_opcode
+0x3001f 037312 istore 1 ,contw
+0x30020 037313 store 1 ,mem_lmi_opcode_temp
+0x30021 037314 call send_lmp_follow
+0x30022 037315 fetch 1 ,mem_lmi_opcode_temp
+0x30023 037316 beq lmp_max_slot_req ,z_send_lmp_accepted_max_slot_req
+0x30024 037317 branch send_lmp_accepted + 7
+:      037319 z_send_lmp_accepted_max_slot_req:
+0x30025 037320 fetch 1 ,mem_bt_rcvd_switch_req_accept
+0x30026 037321 rtn blank
+0x30027 037322 jam 0 ,mem_bt_rcvd_switch_req_accept
+0x30028 037323 fetch 1 ,mem_bt_send_lmp_setup_complete
+0x30029 037324 rtnne 2
+0x3002a 037325 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
+0x3002b 037326 copy clkn_bt ,pdata
+0x3002c 037327 store 4 ,mem_aurand_send_delay_time
+0x3002d 037328 rtn
+              org 0x40001
+:      037333 z_entrance3:
+0x40001 037334 beq zcode_30 ,z_process_conn_sm
+0x40002 037335 rtn
+:      037337 z_process_conn_sm:
+0x40003 037338 call lmo_fifo_check
+0x40004 037339 nrtn blank
+:      037340 z_process_conn_sm_continue:
+0x40005 037341 fetch 1 ,mem_conn_sm
+0x40006 037342 rtn blank
+0x40007 037343 beq conn_sm_send_conn_req ,z_host_create_conn_send_conn_req
+0x40008 037344 beq conn_sm_wait_switch_after_host_connection ,z_host_creat_conn_wait_switch
+0x40009 037345 branch process_conn_sm_continue + 2
+:      037348 z_host_creat_conn_wait_switch:
+0x4000a 037349 fetch 1 ,mem_switch_flag
+0x4000b 037350 rtneq switch_flag_init
+0x4000c 037351 beq switch_flag_accept ,z_host_create_conn_switch_accept
+0x4000d 037352 branch host_creat_conn_wait_switch + 3
+:      037353 z_host_create_conn_switch_accept:
+0x4000e 037354 rtn master
+:      037355 z_host_create_conn_auth_pair:
+0x4000f 037357 fetch 1 ,mem_connection_options
+0x40010 037358 bbit1 connection_auth ,z_host_create_conn_auth_pair_true
+0x40011 037359 branch host_create_conn_auth_pair + 1
+:      037360 z_host_create_conn_auth_pair_true:
+0x40012 037361 fetch 1 ,mem_bt_send_lmp_setup_complete
+0x40013 037362 beq 1 ,host_create_conn_auth_pair_true
+0x40014 037364 fetch 1 ,mem_link_key_exists
+0x40015 037365 branch host_create_conn_auth_pair_nokey ,blank
+0x40016 037366 fetch 1 ,mem_lmp_conn_state
+0x40017 037367 rtnbit0 sent_setup_complete
+0x40018 037368 rtnbit0 received_setup_complete
+0x40019 037369 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch
+0x4001a 037370 rtn blank
+0x4001b 037371 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch
+0x4001c 037372 fetch 4 ,mem_aurand_send_delay_time
+0x4001d 037373 arg 20 ,temp
+0x4001e 037374 iadd temp ,temp
+0x4001f 037375 copy clkn_bt ,pdata
+0x40020 037376 isub temp ,null
+0x40021 037377 nbranch z_bt_send_max_slot_req_accept_after_switch_wait ,positive
+0x40022 037378 branch host_create_conn_auth
+:      037380 z_bt_send_max_slot_req_accept_after_switch_wait:
+0x40023 037381 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
+0x40024 037382 rtn
+:      037384 z_host_create_conn_send_conn_req:
+0x40025 037385 jam 20 ,mem_mouse_send_switch_req_timer
+0x40026 037386 branch host_create_conn_send_conn_req
+              org 0x50001
+:      037394 z_entrance4:
+0x50001 037395 beq zcode_40 ,z_le_update_param
+0x50002 037396 beq zcode_41 ,z_le_update_channel_map
+0x50003 037397 beq zcode_42 ,z_le_mouse_bb_event_connect_complete
+0x50004 037398 beq zcode_43 ,z_quit_connection_cont
+0x50005 037399 rtn
+:      037401 z_le_update_param:
+0x50006 037402 call z_mouse_le_conn_param_check
+0x50007 037403 branch le_update_param + 8
+:      037404 z_mouse_le_lpm_mult_reinit:
+0x50008 037405 fetch 1 ,mem_lpm_mult_init
+0x50009 037406 store 1 ,mem_lpm_mult
+:      037407 z_mouse_le_conn_param_lpm_enable:
+0x5000a 037408 jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+0x5000b 037409 rtn
+:      037410 z_mouse_le_conn_param_lpm_disable:
+0x5000c 037411 jam le_lpm_disable ,mem_mouse_le_conn_param_reject
+0x5000d 037412 rtn
+:      037413 z_mouse_le_conn_param_check:
+0x5000e 037414 fetch 1 ,mem_le_new_conninterval
+0x5000f 037415 sub pdata ,le_interval_15ms ,null
+0x50010 037416 nbranch z_mouse_le_conn_param_lpm_disable ,positive
+0x50011 037417 fetch 1 ,mem_le_new_connslavelatency
+0x50012 037418 fetcht 1 ,mem_lpm_mult_init
+0x50013 037419 isub temp ,null
+0x50014 037420 branch z_mouse_le_lpm_mult_reinit ,positive
+0x50015 037421 fetch 1 ,mem_le_new_connslavelatency
+0x50016 037422 store 1 ,mem_lpm_mult
+0x50017 037423 branch z_mouse_le_conn_param_lpm_enable
+:      037425 z_le_update_channel_map:
+0x50018 037426 fetch 1 ,mem_le_state
+0x50019 037427 rtnbit0 lestate_update_map
+0x5001a 037428 call z_le_channel_map_overflow_check
+0x5001b 037429 nrtn user
+0x5001c 037430 branch le_update_channel_map + 3
+:      037431 z_le_channel_map_overflow_check:
+0x5001d 037432 enable user
+0x5001e 037433 fetch 1 ,mem_le_event_count + 1
+0x5001f 037434 rshift4 pdata ,pdata
+0x50020 037435 rtnne 0x0f
+0x50021 037436 fetch 1 ,mem_le_instant + 1
+0x50022 037437 rshift4 pdata ,pdata
+0x50023 037438 rtnne 0x00
+0x50024 037439 branch disable_user
+:      037441 z_le_mouse_bb_event_connect_complete:
+0x50025 037442 fetch 1 ,mem_mouse_le_reconnect_flag
+0x50026 037443 nrtn blank
+0x50027 037444 fetch 1 ,mem_le_att_handle
+0x50028 037445 sub pdata ,26 ,pdata
+0x50029 037446 nrtn zero
+0x5002a 037447 jam 0 ,mem_le_start_encrypt_timer
+0x5002b 037448 branch mouse_le_write_enable
+:      037450 z_quit_connection_cont:
+0x5002c 037451 call app_disconn_reason_collect_bt
+0x5002d 037452 call sniff_exit
+0x5002e 037453 jam bt_evt_bb_disconnected ,mem_fifo_temp
+0x5002f 037454 call ui_ipc_send_event
+0x50030 037455 call init_lmp_work
+0x50031 037456 call l2cap_init_work
+0x50032 037457 branch quit_connection_cont + 8
+              org 0x60001
+:      037462 z_entrance5:
+0x60001 037463 beq zcode_50 ,z_mouse_start_discovery
+0x60002 037464 rtn
+:      037467 z_mouse_start_discovery:
+0x60003 037468 jam 0 ,mem_le_send_security_request_flag
+0x60004 037469 jam 0x5a ,mem_mouse_fast_conn_flag
+0x60005 037470 call p_mouse_tx_power_init
+0x60006 037471 jam mode_bt_device1 ,mem_device_flag
+0x60007 037472 jam 0 ,mem_mouse_clear_sensor_data_flag
+0x60008 037473 fetch 2 ,mem_ui_state_map
+0x60009 037474 bbit1 ui_state_ble_adv ,z_mouse_start_discovery_norandom
+0x6000a 037475 fetch mouse_flag_len ,mem_mouse_flag
+0x6000b 037476 bbit0 mouse_enable_ble_random_addre ,z_mouse_start_discovery_norandom
+0x6000c 037477 call p_mouse_load_random_addr_increase_count
+0x6000d 037478 fetcht 2 ,mem_random_addr_increase_count
+0x6000e 037479 increase 1 ,temp
+0x6000f 037480 storet 2 ,mem_random_addr_increase_count
+0x60010 037481 storet 2 ,mem_le_lap + 1
+0x60011 037482 call p_mouse_store_random_addr_increase_count
+0x60012 037483 random pdata
+0x60013 037484 store 1 ,mem_le_lap
+:      037485 z_mouse_start_discovery_norandom:
+0x60014 037486 call app_lpm_mult_disable
+0x60015 037487 fetch 2 ,mem_discovery_timeout
+0x60016 037488 store 2 ,mem_mouse_discovery_timer
+0x60017 037489 jam 6 ,mem_connection_options
+0x60018 037490 setarg 0
+0x60019 037491 store 2 ,mem_mouse_no_data_timer
+0x6001a 037492 store 2 ,mem_mouse_direct_timer
+0x6001b 037493 arg mouse_store_eeprom_flag ,queue
+0x6001c 037494 call mouse_enable_function_flag
+0x6001d 037495 call mouse_bt_discovery_button_down_disable
+0x6001e 037499 fetch 1 ,mem_device_option
+0x6001f 037500 isolate1 mode_3_mouse ,pdata
+0x60020 037501 call check_51cmd_start_discovery ,true
+0x60021 037504 branch p_mouse_discovery_multi_led_blink
+:      037506 z_check_51cmd_adv:
+0x60022 037507 jam 0 ,mem_mouse_le_reconnect_flag
+0x60023 037508 call p_le_check_adv_flag
+0x60024 037509 setarg adv_flag_bredr_not_supported | adv_flag_limited_discoverable
+0x60025 037510 istore 1 ,contr
+0x60026 037511 arg mem_le_adv_swift_pair ,contr
+0x60027 037512 call p_le_adv_data_update
+0x60028 037513 branch check_51cmd_adv
+              org 0x70001
+:      037517 z_entrance6:
+0x70001 037518 beq zcode_60 ,z_g24_start_24g_mode
+0x70002 037519 beq zcode_61 ,z_mouse_24g_pairing_button
+0x70003 037520 rtn
+:      037522 z_g24_start_24g_mode:
+0x70004 037523 set0 mark_24g ,mark
+0x70005 037524 call p_g24_syncword_crc8
+0x70006 037525 call p_g24_ch
+0x70007 037526 fetch 1 ,mem_24g_pairing_sm
+0x70008 037527 rtnne state_24g_pairing_success
+0x70009 037528 call z_g24_tx_attemp_data_prep
+:      037529 z_g24_tx_attemp_dongle:
+0x7000a 037530 setarg 0
+0x7000b 037531 store 2 ,mem_24g_check_dongle_times
+:      037532 z_g24_tx_attemp_dongle_loop:
+0x7000c 037534 nop 2000
+0x7000d 037535 fetch 1 ,mem_24g_check_dongle_times
+0x7000e 037536 beq 0xff ,g24_stop_24g_mode
+0x7000f 037537 call p_g24_transmit_receive_ack
+0x70010 037538 nbranch z_g24_attemp_txdata_retry ,sync
+0x70011 037539 nbranch z_g24_attemp_txdata_retry ,user3
+:      037540 z_g24_tx_attemp_dongle_succ:
+0x70012 037541 set1 mark_24g ,mark
+0x70013 037542 setarg 0
+0x70014 037543 store 2 ,mem_24g_check_dongle_times
+0x70015 037544 call g24_app_tx_attempt_success
+0x70016 037545 call p_g24_txbuf_clear
+0x70017 037546 branch p_g24_transmit_by_interrupt_enable
+:      037548 z_g24_tx_attemp_data_prep:
+0x70018 037549 jam 0xff ,mem_24g_common_temp
+0x70019 037550 fetch 1 ,mem_24g_data_type
+0x7001a 037551 store 1 ,mem_24g_common_temp + 1
+0x7001b 037552 fetch 4 ,mem_24g_device_addr
+0x7001c 037553 store 4 ,mem_24g_common_temp + 2
+0x7001d 037554 arg 6 ,temp
+0x7001e 037555 arg mem_24g_common_temp ,rega
+0x7001f 037556 call p_g24_put_data_in_buff
+0x70020 037557 branch p_g24_transmit_prep
+:      037559 z_g24_attemp_txdata_retry:
+0x70021 037560 fetch 2 ,mem_24g_check_dongle_times
+0x70022 037561 increase 1 ,pdata
+0x70023 037562 store 2 ,mem_24g_check_dongle_times
+0x70024 037563 call p_g24_ch
+0x70025 037564 branch z_g24_tx_attemp_dongle_loop
+:      037567 z_mouse_24g_pairing_button:
+0x70026 037568 fetch 1 ,mem_device_flag
+0x70027 037569 rtneq mode_bt_device1
+0x70028 037573 rtnmark1 mark_24g
+0x70029 037575 arg mosue_24g_pairing_flag ,queue
+0x7002a 037576 call mouse_enable_function_flag
+0x7002b 037577 setarg 0
+0x7002c 037578 store 2 ,mem_mouse_direct_timer
+0x7002d 037579 store 1 ,mem_mouse_send_blank_timer
+0x7002e 037580 store 2 ,mem_24g_check_dongle_times
+0x7002f 037581 call mouse_stop_discovery
+0x70030 037582 branch z6_g24_start_pairing_sm1
+:      037584 z6_g24_start_pairing_sm1:
+0x70031 037585 set1 mark_24g ,mark
+0x70032 037586 call z6_g24_pair_init
+:      037587 z6_g24_set_pairing_sm_1:
+0x70033 037588 jam state_24g_pairing_1 ,mem_24g_pairing_sm
+0x70034 037589 rtn
+:      037591 z6_g24_pair_init:
+0x70035 037592 jam tx_power_pair ,mem_tx_power
+0x70036 037593 jam 0 ,mem_24g_pid
+0x70037 037594 jam g24_pair_ch ,mem_24g_ch
+0x70038 037595 fetch 4 ,mem_24g_paring_addr
+0x70039 037596 branch p_g24_update_addr_and_synccrc8
+              org 0x80001
+:      037600 z_entrance7:
+0x80001 037601 beq zcode_70 ,z_g24_auto_pair_start
+0x80002 037602 rtn
+:      037604 z_g24_auto_pair_start:
+0x80003 037605 set0 mark_24g ,mark
+0x80004 037606 call z_g24_auto_pair_all_powerful
+0x80005 037607 call z7_g24_tx_attemp_data_prep
+:      037608 z_g24_auto_pair_restart:
+0x80006 037609 jam 0 ,mem_24g_check_dongle_times
+0x80007 037610 call p_mouse_discovery_multi_led_blink
+:      037611 z_g24_auto_pair_start_loop:
+0x80008 037613 nop 2000
+0x80009 037614 fetch 2 ,mem_24g_check_dongle_times
+0x8000a 037615 beq 0x02ff ,g24_stop_24g_mode
+0x8000b 037616 call p_g24_transmit_receive_ack
+0x8000c 037617 nbranch z_g24_auto_pair_retry ,sync
+0x8000d 037618 nbranch z_g24_auto_pair_retry ,user3
+0x8000e 037619 call p_g24_ackpayload_parse
+0x8000f 037620 call p_mouse_tx_power_init
+0x80010 037621 fetch 4 ,mem_24g_addr
+0x80011 037622 fetcht 4 ,mem_24g_paring_addr
+0x80012 037623 isub temp ,null
+0x80013 037624 branch z_g24_start_pairing_sm1 ,zero
+0x80014 037625 set1 mark_24g ,mark
+0x80015 037626 setarg 0
+0x80016 037627 store 2 ,mem_24g_check_dongle_times
+0x80017 037628 call g24_app_tx_attempt_success
+0x80018 037629 call p_g24_txbuf_clear
+0x80019 037630 branch p_g24_transmit_by_interrupt_enable
+:      037632 z7_g24_tx_attemp_data_prep:
+0x8001a 037633 jam 0xff ,mem_24g_common_temp
+0x8001b 037634 fetch 1 ,mem_24g_data_type
+0x8001c 037635 store 1 ,mem_24g_common_temp + 1
+0x8001d 037636 fetch 4 ,mem_24g_device_addr
+0x8001e 037637 store 4 ,mem_24g_common_temp + 2
+0x8001f 037638 arg 6 ,temp
+0x80020 037639 arg mem_24g_common_temp ,rega
+0x80021 037640 call p_g24_put_data_in_buff
+0x80022 037641 branch p_g24_transmit_prep
+:      037643 z_g24_auto_pair_retry:
+0x80023 037644 fetch 1 ,mem_24g_check_dongle_times
+0x80024 037645 increase 1 ,pdata
+0x80025 037646 store 1 ,mem_24g_check_dongle_times
+0x80026 037647 fetch 1 ,mem_24g_auto_paring_switch
+0x80027 037648 increase 1 ,pdata
+0x80028 037649 and_into 1 ,pdata
+0x80029 037650 store 1 ,mem_24g_auto_paring_switch
+0x8002a 037651 beq 0 ,z_g24_auto_pair_device_attemp
+0x8002b 037652 beq 1 ,z_g24_auto_pair_pair_attemp
+0x8002c 037653 rtn
+:      037655 z_g24_auto_pair_all_powerful:
+0x8002d 037656 jam tx_power_pair ,mem_tx_power
+0x8002e 037657 setarg 0x0f0f
+0x8002f 037658 store 2 ,mem_24g_addr
+0x80030 037659 istore 2 ,contw
+:      037660 z_g24_ch_syncword_crc8_init:
+0x80031 037661 call p_g24_syncword_crc8
+0x80032 037662 branch p_g24_ch
+:      037664 z_g24_auto_pair_device_attemp:
+0x80033 037665 call z_g24_auto_pair_all_powerful
+0x80034 037666 branch z_g24_auto_pair_start_loop
+:      037668 z_g24_auto_pair_pair_attemp:
+0x80035 037669 call z_g24_pair_init
+0x80036 037670 branch z_g24_auto_pair_start_loop
+:      037672 z_g24_start_pairing_sm1:
+0x80037 037673 set1 mark_24g ,mark
+0x80038 037674 call z_g24_pair_init
+:      037675 z_g24_set_pairing_sm_1:
+0x80039 037676 jam state_24g_pairing_1 ,mem_24g_pairing_sm
+0x8003a 037677 rtn
+:      037679 z_g24_pair_init:
+0x8003b 037680 jam tx_power_pair ,mem_tx_power
+0x8003c 037681 jam 0 ,mem_24g_pid
+0x8003d 037682 jam g24_pair_ch ,mem_24g_ch
+0x8003e 037683 fetch 4 ,mem_24g_paring_addr
+0x8003f 037684 branch p_g24_update_addr_and_synccrc8
+              org 0x90001
+:      037692 z_entrance8:
+0x90001 037693 beq zcode_80 ,z_mouse_setting_config
+0x90002 037694 beq zcode_81 ,z_le_addr_random_config
+0x90003 037696 rtn
+:      037705 z_le_addr_random_config:
+0x90004 037706 call load_adc_init
+0x90005 037709 setarg 0x1122
+:      037710 z_le_otp_adc_empty:
+0x90006 037711 store 2 ,mem_random_addr_increase_count
+0x90007 037712 rtn
+:      037715 z_mouse_setting_config:
+0x90008 037716 call p_g24_set_device_addr
+0x90009 037721 call mouse_gpio_init
+0x9000a 037727 fetcht 1 ,mem_24g_sw_gpio
+0x9000b 037728 call gpio_config_output
+0x9000c 037729 fetcht 1 ,mem_flash_ncs_gpio
+0x9000d 037730 call gpio_config_output
+0x9000e 037732 call mouse_param_init
+0x9000f 037733 call z_mouse_bt_sdp_update
+0x90010 037734 setarg 0
+0x90011 037735 store 2 ,mem_lpm_interval
+0x90012 037736 call load_adc_init
+0x90013 037737 call mouse_adc_init
+0x90014 037738 call le_set_config_fixed_ltk
+0x90015 037739 call le_set_justwork
+0x90016 037740 call le_set_fixed_ltk
+0x90017 037741 call le_set_config_read_authentication
+0x90018 037742 call p_le_addr_random_config
+0x90019 037743 call p_flash_release_deep_power_down
+0x9001a 037744 call p_mouse_set_24g_addr_flash
+0x9001b 037745 fetch 3 ,mem_flash_base
+0x9001c 037746 iadd regb ,pdata
+0x9001d 037747 call spid_read_flash
+0x9001e 037749 call p_mouse_load_flash_info_check
+0x9001f 037750 rtn
+:      037753 z_mouse_bt_sdp_update:
+0x90020 037754 call enable_authrom
+0x90021 037755 arg 0x8c00 ,contr
+0x90022 037756 arg mem_mouse_uuid_list ,contw
+0x90023 037757 arg 369 ,loopcnt
+0x90024 037758 call memcpy
+0x90025 037760 setarg 0x0f0209
+0x90026 037761 istore 3 ,contw
+0x90027 037762 setarg 0x120009
+0x90028 037763 istore 3 ,contw
+0x90029 037765 setarg 0x100209
+0x9002a 037766 istore 3 ,contw
+0x9002b 037767 setarg 0x000009
+0x9002c 037768 istore 3 ,contw
+0x9002d 037769 arg 0x8d71 ,contr
+0x9002e 037770 arg 265 ,loopcnt
+0x9002f 037771 call memcpy
+0x90030 037773 jam 0 ,mem_mouse_uuid_list + 23
+0x90031 037774 jam 0x6d ,mem_mouse_uuid_list + 15
+0x90032 037775 setarg 0x401f
+0x90033 037776 store 2 ,mem_mouse_uuid_list + 357
+0x90034 037777 setarg 0x6d04
+0x90035 037778 store 2 ,mem_mouse_uuid_list + 462
+0x90036 037779 setarg 0x16b0
+0x90037 037780 store 2 ,mem_mouse_uuid_list + 468
+0x90038 037782 setarg mem_mouse_uuid_list
+0x90039 037783 store 2 ,mem_ui_uuid_table
+0x9003a 037784 rtn
+              org 0xa0001
+:      037790 z_entrance9:
+0xa0001 037791 beq zcode_90 ,z_g24_pairing_sm
+0xa0002 037792 beq zcode_91 ,z_g24_paring_mode
+0xa0003 037793 beq zcode_92 ,z_mouse_24g_pairing_complete
+0xa0004 037794 rtn
+:      037796 z_g24_pairing_sm:
+0xa0005 037797 fetch 1 ,mem_24g_ensure
+0xa0006 037798 beq ensure_on_24g ,enable_user
+0xa0007 037799 fetch 1 ,mem_24g_pairing_sm
+0xa0008 037800 beq state_24g_pairing_1 ,z_g24_pairing_sm_1
+0xa0009 037801 beq state_24g_pairing_2 ,z_g24_pairing_sm_2
+0xa000a 037802 beq state_24g_pairing_3 ,z_g24_pairing_sm_3
+0xa000b 037803 branch assert
+:      037805 z_g24_pairing_sm_1:
+0xa000c 037806 jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm
+0xa000d 037807 jam 0xaa ,mem_24g_common_temp
+0xa000e 037808 call p_mouse_discovery_multi_led_blink
+0xa000f 037809 branch z_g24_pairing_sm_common
+:      037810 z_g24_pairing_sm_2:
+0xa0010 037811 jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm
+0xa0011 037812 jam 0x55 ,mem_24g_common_temp
+0xa0012 037813 branch z_g24_pairing_sm_common
+:      037814 z_g24_pairing_sm_3:
+0xa0013 037815 jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm
+0xa0014 037816 jam 0x22 ,mem_24g_common_temp
+:      037817 z_g24_pairing_sm_common:
+0xa0015 037818 fetch 1 ,mem_24g_data_type
+0xa0016 037819 and_into bits_data ,pdata
+0xa0017 037820 store 1 ,mem_24g_common_temp + 1
+0xa0018 037821 fetch 4 ,mem_24g_device_addr
+0xa0019 037822 store 4 ,mem_24g_common_temp + 2
+:      037823 z_g24_put_pairing_data_in_buff:
+0xa001a 037824 jam 0 ,mem_24g_common_temp + 6
+0xa001b 037825 arg mem_24g_common_temp ,rega
+0xa001c 037826 arg 7 ,temp
+0xa001d 037827 call p_g24_put_data_in_buff
+0xa001e 037828 call p_g24_txdata_enable_tx
+0xa001f 037829 branch enable_user
+:      037831 z_g24_paring_mode:
+0xa0020 037832 fetch 1 ,mem_24g_pairing_sm
+0xa0021 037833 rtneq state_24g_pairing_success
+0xa0022 037834 beq state_24g_pairing_1_waiting_ack ,z_g24_pairing_sm_1_waiting_ack
+0xa0023 037835 beq state_24g_pairing_2_waiting_ack ,z_g24_pairing_sm_2_waiting_ack
+0xa0024 037836 beq state_24g_pairing_3_waiting_ack ,z_g24_pairing_sm_3_waiting_ack
+0xa0025 037837 rtn
+:      037839 z_g24_pairing_sm_1_waiting_ack:
+0xa0026 037840 jam state_24g_pairing_2 ,mem_24g_pairing_sm
+0xa0027 037841 branch p_g24_transmit_abandon
+:      037842 z_g24_pairing_sm_2_waiting_ack:
+0xa0028 037843 jam state_24g_pairing_3 ,mem_24g_pairing_sm
+0xa0029 037844 branch p_g24_transmit_abandon
+:      037845 z_g24_pairing_sm_3_waiting_ack:
+0xa002a 037846 jam state_24g_pairing_success ,mem_24g_pairing_sm
+0xa002b 037847 jam bt_evt_24g_pairing_complete ,mem_fifo_temp
+0xa002c 037848 call ui_ipc_send_event
+0xa002d 037849 fetch 4 ,mem_24g_rxpayload + 2
+0xa002e 037850 call p_g24_update_addr_and_synccrc8
+0xa002f 037851 branch p_g24_transmit_abandon
+:      037854 z_mouse_24g_pairing_complete:
+0xa0030 037855 jam 1 ,mem_mouse_24g_enter_lpm_enable
+0xa0031 037856 arg mosue_24g_pairing_flag ,queue
+0xa0032 037857 call mouse_disable_function_flag
+0xa0033 037858 setarg 0
+0xa0034 037859 store 2 ,mem_24g_pairing_timer_count
+0xa0035 037860 jam 0 ,mem_mouse_move_flag
+0xa0036 037862 call mouse_read_sensor_common
+0xa0037 037863 call p_mouse_null_enter_hibernate_disable
+0xa0038 037864 call p_mouse_tx_power_init
+0xa0039 037866 fetch 4 ,mem_24g_addr
+0xa003a 037867 store 4 ,mem_mouse_24g_addr
+0xa003b 037869 call mouse_cheak_select_24gdevice
+0xa003c 037870 branch p_mouse_store_flash_device_info
+              org 0xb0001
+:      037874 z_entrancea:
+0xb0001 037875 beq zcode_a0 ,z_mouse_24g_attempt_fail
+0xb0002 037876 beq zcode_a1 ,z_mouse_le_conn_param_update_rsp_recieved
+0xb0003 037877 beq zcode_a2 ,z_mouse_le_bb_disconnected
+0xb0004 037878 beq zcode_a3 ,z_mouse_bb_event_reconn_timeout
+0xb0005 037879 beq zcode_a4 ,z_mouse_before_hibernate
+0xb0006 037880 rtn
+:      037882 z_mouse_24g_attempt_fail:
+0xb0007 037883 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
+0xb0008 037884 call p_mouse_tx_power_init
+0xb0009 037885 call p_g24_check_51cmd_stop_24g
+0xb000a 037886 jam 0 ,mem_link_key_exists
+0xb000b 037887 call p_mouse_setgpio_hibernate
+0xb000c 037888 branch p_mouse_null_enter_hibernate_enable
+:      037890 z_mouse_le_conn_param_update_rsp_recieved:
+0xb000d 037891 fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result
+0xb000e 037892 rtneq ble_signaling_connect_parameter_update_accepted
+0xb000f 037893 fetch 1 ,mem_le_tsniff
+0xb0010 037894 rshift2 pdata ,pdata
+0xb0011 037895 sub pdata ,le_interval_15ms ,null
+0xb0012 037896 rtn positive
+0xb0013 037897 setarg le_interval_11_25ms
+0xb0014 037898 store 2 ,mem_le_interval_min
+0xb0015 037899 store 2 ,mem_le_interval_min + 2
+0xb0016 037900 call p_app_updata_le_param
+0xb0017 037901 jam le_lpm_disable ,mem_mouse_le_conn_param_reject
+0xb0018 037902 rtn
+:      037905 z_mouse_bb_event_reconn_timeout:
+:      037906 z_mouse_bb_event_reconn_failed:
+0xb0019 037907 fetch 2 ,mem_ui_state_map
+0xb001a 037908 rtnbit1 ui_state_btn_down
+0xb001b 037909 rtnbit1 ui_state_bt_discovery
+0xb001c 037910 rtnbit1 ui_state_ble_adv
+0xb001d 037911 fetch mouse_flag_len ,mem_mouse_flag
+0xb001e 037912 rtnbit1 mouse_bt_discovery_button_down_flag
+0xb001f 037913 branch app_bb_hibernate
+:      037915 z_mouse_le_bb_disconnected:
+0xb0020 037916 jam 0 ,mem_mouse_le_bb_connected_flag
+0xb0021 037917 setarg le_interval_8_75ms
+0xb0022 037918 store 2 ,mem_le_interval_min
+0xb0023 037919 store 2 ,mem_le_interval_min + 2
+0xb0024 037920 jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+0xb0025 037921 jam 0 ,mem_mouse_clear_sensor_data_flag
+0xb0026 037922 call p_mouse_data_init
+0xb0027 037923 call le_clr_config_more_data
+0xb0028 037924 branch mouse_bb_disconnected
+:      037927 z_mouse_before_hibernate:
+0xb0029 037928 enable user
+0xb002a 037929 hfetch 4 ,0x8138
+0xb002b 037930 setflag user ,26 ,pdata
+0xb002c 037931 hstore 4 ,core_lpm_reg
+0xb002d 037932 call lpm_write_ctrl
+0xb002e 037933 call disable_authrom
+0xb002f 037935 call mouse_before_hibernate_wheel_gpio_set
+0xb0030 037936 fetcht 1 ,mem_24g_sw_gpio
+0xb0031 037937 call gpio_out_active
+0xb0032 037938 call p_mouse_setgpio_hibernate
+0xb0033 037939 call p_flash_deep_power_down
+0xb0034 037940 hfetch 1 ,core_gpio_sel1
+0xb0035 037941 and pdata ,0xf7 ,pdata
+0xb0036 037942 hstore 1 ,core_gpio_sel1
+0xb0037 037943 rtn
+              org 0xc0001
+:      037948 z_entranceb:
+0xc0001 037949 beq zcode_b0 ,z_mouse_le_bb_event_connected
+0xc0002 037950 beq zcode_b1 ,z_mouse_sniff_not_accept
+0xc0003 037951 beq zcode_b2 ,z_mouse_enter_sniff_check
+0xc0004 037952 beq zcode_b3 ,z_mouse_le_ll_start_encryt
+0xc0005 037953 beq zcode_b4 ,z_mouse_bb_event_disconnected
+0xc0006 037954 rtn
+:      037956 z_mouse_le_bb_event_connected:
+0xc0007 037957 jam 1 ,mem_mouse_le_bb_connected_flag
+0xc0008 037958 fetch 1 ,mem_mouse_le_reconnect_flag
+0xc0009 037959 nbranch p_mouse_le_bb_event_connected_next ,blank
+0xc000a 037960 jam 0x14 ,mem_mouse_send_secutiry_request_timer
+:      037961 p_mouse_le_bb_event_connected_next:
+0xc000b 037962 call p_mouse_null_enter_hibernate_disable
+0xc000c 037963 call p_mouse_data_init
+0xc000d 037964 branch mouse_le_bb_event_connected
+:      037966 z_mouse_sniff_not_accept:
+0xc000e 037967 fetch 1 ,mem_mouse_enter_sniff_count
+0xc000f 037968 rtneq 2
+0xc0010 037969 increase 1 ,pdata
+0xc0011 037970 store 1 ,mem_mouse_enter_sniff_count
+0xc0012 037971 jam 0x12 ,mem_sniff_param_interval
+0xc0013 037972 branch app_bt_enter_sniff
+:      037974 z_mouse_enter_sniff_check:
+0xc0014 037975 fetch 1 ,mem_mouse_enter_sniff_count
+0xc0015 037976 rtnne 2
+0xc0016 037977 jam 0 ,mem_mouse_enter_sniff_count
+0xc0017 037978 jam 0x0e ,mem_sniff_param_interval
+0xc0018 037979 branch app_bt_enter_sniff
+:      037981 z_mouse_le_ll_start_encryt:
+0xc0019 037982 fetch 1 ,mem_mouse_le_reconnect_flag
+0xc001a 037983 beq 1 ,z_mouse_le_ll_reconn_start_encryt
+0xc001b 037984 branch z_mouse_le_ll_enable_start_enc_flag
+:      037985 z_mouse_le_ll_reconn_start_encryt:
+0xc001c 037986 call p_app_updata_le_param
+0xc001d 037987 jam 5 ,mem_le_start_encrypt_timer
+:      037988 z_mouse_le_ll_enable_start_enc_flag:
+0xc001e 037989 arg ll_start_enc_flag ,queue
+0xc001f 037990 branch mouse_le_enable_connect_flag
+:      037992 z_mouse_bb_event_disconnected:
+0xc0020 037993 jam 0 ,mem_bt_rcvd_switch_req_accept
+0xc0021 037994 jam 0 ,mem_bt_send_lmp_setup_complete
+0xc0022 037995 jam 0 ,mem_mouse_bt_send_first_package_flag
+0xc0023 037996 branch mouse_bb_disconnected
Index: YDN_1066_227D/output/bt_program23.meta
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/output/bt_program23.meta	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/output/bt_program23.meta	(working copy)
@@ -0,0 +1,37998 @@
+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_mouse_cb_fuction
+	call p_mouse_wakeup_from_power
+	call p_mouse_select_device_button_wakeup_check	//hibernate wakeup need 190ms
+	branch p_mouse_setting_config
+
+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_init_sunt
+	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
+	
+
+
+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 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_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
+
+p_mouse_select_device_button_wakeup_check:
+	jam 0,mem_mouse_select_device_button_wakeup_flag
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_config_input
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_get_bit
+	nrtn true
+	call delay_10ms
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_get_bit
+	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
+	call g24_long_sleep_shorter_param_update
+	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 60500
+	branch lpm_dispatch_sleep
+
+g24_long_sleep_shorter_param_update:
+//	fetch 1,mem_config_function_enable
+//	rtnbit1 ENABLE_SENSOR_MOTION_PIN
+	setarg G24_LONG_SLEEP_STEP1
+	store 3,mem_24g_enter_hibernate
+	jam 20,mem_24g_long_sleep_param_update_timer
+	rtn
+	
+p_g24_transmit_by_interrupt:
+	call p_g24_timer_check
+	nrtn user
+	call p_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 p_g24_transmit_by_interrupt_exit,zero
+	branch p_g24_transmit_process
+p_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
+p_g24_interval_min:
+	jam 0,mem_24g_pac_index
+	fetch 1,mem_24g_interval_min
+p_g24_current_interval_store:
+	store 1,mem_24g_interval
+	rtn
+p_g24_interval_max:
+	fetch 1,mem_24g_interval_max
+	branch p_g24_current_interval_store
+p_g24_interval_calibrate:
+	fetch 1,mem_24g_pac_index
+	increase 1,pdata
+	store 1,mem_24g_pac_index
+	beq 4,p_g24_interval_max
+	beq 5,p_g24_interval_min
+	rtn
+
+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
+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
+	branch p_mouse_setgpio_lpm
+
+p_g24_send_abort_packet:
+	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_set_device_addr:
+	fetch 4,mem_lap
+	store 4,mem_24g_device_addr
+	rtn
+
+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_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_transmit_hop_pac_fail:
+//	call power_ctrl_pac_succ_decrs
+//	fetch 1,mem_24g_rf_work_stage
+//	beq 1,p_g24_transmit_hop_pac_fail_wo_hop
+//	beq 2,p_g24_transmit_hop_pac_fail_hop_stage2
+//	rtn
+//p_g24_transmit_hop_pac_fail_wo_hop:
+//	jam 2,mem_24g_sync_cnt
+//p_g24_transmit_hop_pac_fail_stage1:	
+//	jam 0,mem_24g_hop_pac_retry
+//	jam 0,mem_24g_rf_last_sta
+//	branch p_g24_transmit_rf_ctrl_clear
+
+//p_g24_transmit_hop_pac_fail_hop_stage2:
+//	jam 0,mem_24g_rf_hop_ch
+//	branch p_g24_transmit_hop_pac_fail_stage1
+
+	
+//p_g24_transmit_pac_fail_hop_stage3:
+//	fetch 2,mem_24g_txfail_cnt
+//	increase 1,pdata
+//	store 2,mem_24g_txfail_cnt
+//	bbit1 10,p_g24_tx_attempt_fail	//1024ms * 8
+//	fetch 1,mem_24g_rf_hop_ch
+//	beq 1,p_g24_rf_hop_fastly
+//	jam 1,mem_24g_rf_hop_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
+	branch p_g24_transmit_packet
+
+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
+	branch p_g24_ch
+
+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:
+	call p_mouse_data_xy_release
+	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
+	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_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 2,mem_24g_txfail_cnt
+	store 1,mem_24g_get_ack_fail
+	store 1,mem_24g_hop_pac_retry
+	jam ENSURE_OFF_24G,mem_24g_ensure
+	rtn
+
+p_g24_txbuf_clear:
+	arg 4,loopcnt
+	arg mem_24g_txbuf,contw
+	branch memset0
+
+p_g24_hop_enable_packet:
+	fetch 1,mem_24g_data_type
+	bbit1 bit_hop,p_g24_hop_ch_disable
+	rtn	
+
+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,g24_stop_24g_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
+	branch g24_stop_24g_mode
+
+
+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_g24_start_24g_mode:
+	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_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
+	call p_g24_ch_map_size
+	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_sync_timeout,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
+	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
+	fetch 1,mem_rssi_hex_received
+	call p_rssi_signal
+	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:
+	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
+	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
+
+
+	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
+	arg RSSI_BUF_LEN_SIGNAL+1,loopcnt
+	copy rega,contr
+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
+	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_setgpio_lpm:
+	call p_mouse_set_sdio_high
+	call p_clear_wake
+p_mouse_setgpio_hibernate:	
+	call mouse_lpm_before_common
+	call p_flash_ncs_disable
+	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	
+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_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 app_lpm_mult_enable
+	call enable_authrom
+	branch p_device_wake_from_lpm,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
+	call p_mouse_check_key_gpio
+	beq MOUSE_LM_BUTTON,p_mouse_24g_pairing_button
+p_mouse_check_reconn_target:
+	call p_mouse_tx_power_init
+	fetch 1,mem_device_flag
+	fetcht 1,mem_24g_device_number
+	isub temp,null
+	branch p_mouse_connect_24g_mode,zero
+	beq 0xff,p_mouse_connect_24g_mode
+	call p_mouse_mode_bt_device1_multi_led_on
+	fetch 1,mem_xrecord_mode
+	beq REC_3_MODE,p_mouse3_0_check_reconn_target
+	beq REC_4_MODE,p_mouse4_0_check_reconn_target
+	branch p_mouse_null_enter_hibernate_enable	//enter hibernate if it is in its factory state
+
+p_device_wake_from_lpm:
+	branch p_mouse_spi_init
+
+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_connect_24g_mode:
+	jam MODE_24G_DEVICE,mem_device_flag
+	call p_mouse_mode_24g_device_multi_led_on
+	branch p_mouse_start_24g_mode
+
+p_mouse3_0_check_reconn_target:
+	fetch 6,mem_hci_plap
+	branch app_bt_start_discovery_short,blank
+	branch mouse3_0_check_reconn_target+3
+
+p_mouse4_0_check_reconn_target:
+	jam 1,mem_le_send_security_request_flag
+	jam 1,mem_mouse_le_reconnect_flag
+	fetch 2,mem_mouse_direct_timeout
+p_mouse4_0_check_reconn_target_next:
+	store 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
+
+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_24g_pairing_button:
+	jam 0,mem_mouse_long_button_select_device
+	jam ZCODE_61,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+//p_mouse_devce_led_off:
+//	call mouse_device1_led_on
+//	call mouse_device2_led_on
+//	fetch 1,mem_config_low_voltage_alarm_gpio
+//	store 1,mem_mouse_struct_led_gpio
+//	branch mouse_led_on
+
+p_mouse_spi_init:
+	jam 0x76,mem_spi_init_clk
+	branch mouse_spi_init
+	
+p_mouse_init_sunt:
+	call p_mouse_spi_init
+	call mouse_spi_sdio_gpio_pollup
+//	fetch 1,mem_config_sensor_type
+//	beq P3610,mouse_init_3610sensor
+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_sensor_reset:
+	jam 1,mem_mouse_init_sensor_reset_flag
+	call spi_ncs_enable
+	call p_mouse_init_sunt
+	branch spi_ncs_disable
+
+p_mouse_init_p32xx_id2_judge:
+	call p_mouse_sensor_poweron
+	fetch 1,mem_sensor_id2
+//	beq MA8650_ID2,p_mouse_ma8650_init_param
+//	beq P8009_ID2,p_mouse_8009_init_param
+	branch mouse_init_p32xx_id2_judge+1
+
+//p_mouse_ma8650_init_param:
+//	setarg 0x8006	// reset to factory settings
+//	call twspi_write
+//	call delay_10ms
+//	jam MA8650,mem_config_sensor_type
+//	call mouse_sensor_disable_wp
+//	setarg 0x220a
+//	call twspi_write
+//	branch mouse_sensor_enable_wp
+
+//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
+//	call mouse_sensor_disable_wp
+//	setarg 0x0206
+//	call twspi_write
+//	setarg 0x6909
+//	call twspi_write
+//	setarg 0x280d
+//	call twspi_write
+//	setarg 0x9f0e
+//	call twspi_write
+//	setarg 0xba0f
+//	call twspi_write
+//	branch mouse_sensor_enable_wp
+
+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_sensor_poweron:
+	call p_mouse_spi_init
+	setarg 0x8006	// reset to factory settings
+	call twspi_write
+	nop 12000
+	branch p_mouse_dpi_config
+//	fetch 1,mem_sensor_id2
+//	beq P8009_ID2,p_mouse_8009_init_param
+//	rtn
+
+p_mouse_dpi_config:
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	bbit0 MOUSE_ENABLE_EEPROM,mouse_dpi_config
+	fetch 1,mem_mouse_dpi
+	beq 0xff,p_mouse_dpi_config_default
+	branch 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
+
+p_mouse_sensor_powerdown:
+	call p_mouse_spi_init
+	setarg 0x06
+	call twspi_read
+	or pdata,0x08,pdata
+	lshift8 pdata,pdata
+	add pdata,0x06,pdata
+	branch twspi_write	//make sdio high
+
+p_mouse_setting_config:
+	jam ZCODE_80,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+//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
+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:
+	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
+	branch p_mouse_spi_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
+	branch p_wait_flash_done
+
+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_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_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_fast_conn_flag
+	call p_mouse_load_random_addr_increase_count
+//	call p_mouse_check_select_device_by_switch
+	call mouse_select_reconn_device
+	fetch 4,mem_mouse_24g_addr
+	store 4,mem_24g_addr
+	rtn
+
+p_flash_deep_power_down:
+	jam FLASH_COMMAND_DEEP_POWER_DOWN,mem_temp
+p_spid_write_flash_cmd:
+	call p_spid_init_flash
+	nop 100
+	call spid_unlock_flash
+	arg mem_write_flash_head_temp,rega
+	fetcht 1,mem_temp
+	call spid_write_flash_common
+	nop 100
+	rtn
+
+p_flash_release_deep_power_down:
+	jam FLASH_COMMAND_RELEASE_DEEP_POWER_DOWN,mem_temp
+	branch p_spid_write_flash_cmd
+	
+p_mouse_start_24g_mode:
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	rtnbit0 MOUSE_ENABLE_24G
+	call p_g24_factory_check
+//	branch p_g24_auto_pair_start,user
+	branch p_g24_start_24g_mode
+
+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_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
+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:
+//	fetch 1,mem_config_function_enable
+//	rtnbit1 ENABLE_SENSOR_MOTION_PIN
+	jam 0,mem_lpm_mult
+	jam 30,mem_mouse_le_current_mult_timer
+	rtn	
+
+p_mouse_data_xy_release:
+//	fetch 1,mem_config_function_enable
+//	rtnbit1 ENABLE_SENSOR_MOTION_PIN
+	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_sensor_poweron
+
+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_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
+	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_clear_sensor_data:
+	jam 1,mem_mouse_clear_sensor_data_flag
+	call le_set_config_more_data
+	branch p_mouse_init_sensor_reset
+
+//p_mouse_clear_sensor_data:
+//	call le_set_config_more_data
+//	jam 1,mem_mouse_clear_sensor_data_flag
+//	branch p_mouse_sensor_poweron
+
+p_mouse_idle:
+	call ui_check_paring_button
+	call p_mouse_dpi_check
+	branch mouse_wheel_check
+
+p_mouse_dpi_check:
+	fetcht 1,mem_24g_sw_gpio
+	call gpio_config_output
+	fetcht 1,mem_dpi_button_gpio
+	call p_gpio_set_input_pd
+	fetcht 1,mem_dpi_button_gpio
+	call gpio_get_bit
+	branch p_mouse_dpi_up,true
+	call p_gpio_set_input_pu
+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
+p_mouse_dpi_down_next:
+	fetch 1,mem_mouse_dpi
+	increase 1,pdata
+	and pdata,0x03,pdata
+	store 1,mem_mouse_dpi
+	mul32 pdata,2,pdata
+	increase 2,pdata
+	store 2,mem_mouse_multi_led_blink_count
+	call p_mouse_dpi_multi_led_blink
+	call mouse_seting_dpi
+	branch p_mouse_store_flash_device_info
+p_mouse_dpi_up:
+	call p_gpio_set_input_pu
+	branch mouse_dpi_up
+
+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_VIRTUAL_CABLE_UNPLUG,p_mouse_irtual_cable_unplug
+	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
+	jam ZCODE_B0,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+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:
+	call mouse_irtual_cable_unplug
+	branch app_bb_hibernate
+
+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
+	call p_mouse_discovey_led_blink_off
+	jam ZCODE_92,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_24g_attempt_fail:
+	call p_mouse_sensor_powerdown_check	//sensor power down
+	jam ZCODE_A0,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_24g_attempt_success:
+	jam 1,mem_mouse_24g_attempt_success_flag
+	call p_mouse_null_enter_hibernate_disable
+	call p_mouse_init_sensor_reset
+	call p_mouse_discovey_led_blink_off
+	call mouse_no_data_timer_init
+p_mouse_store_24g_device_2flash:
+	call mouse_cheak_select_24gdevice
+	branch p_mouse_store_flash_device_info
+
+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
+	branch p_mouse_sensor_powerdown
+
+
+p_mouse_bb_event_timer:
+	call p_mouse_adc_read
+//	call p_mouse_low_voltage_led_timer
+	call p_mouse_low_voltage_led_timer
+	call p_low_power_nodata_off_led_time_check
+	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_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:
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_get_bit
+	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
+
+	call mouse_select_device_enable
+	branch mouse_set_reconnection
+
+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_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_STEP2
+	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:
+//	call p_mouse_check_key_gpio
+//	beq MOUSE_LMR_BUTTON,p_mouse_24g_pairing_button_down
+p_mouse_bt_discovery_by_button:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_mouse_24g_pairing_button_down_first
+	
+	fetcht 1,mem_config_bt_button_gpio
+	call gpio_get_bit
+	branch p_mouse_bt_discovery_commbination_key_down,true
+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:
+	jam 40,mem_mouse_null_enter_hibernate_timer
+	call p_mouse_bt_discovery_timer
+	branch mouse_bt_discovery_commbination_key_down+1
+	
+p_mouse_24g_pairing_button_down:
+	jam 40,mem_mouse_null_enter_hibernate_timer
+	call p_mouse_24g_pairing_timer
+	branch p_mouse_24g_pairing_button_down2+1
+	
+p_mouse_24g_pairing_button_down_first:
+	fetcht 1,mem_config_bt_button_gpio
+	call gpio_get_bit
+	branch p_mouse_24g_pairing_button_down,true
+	branch mouse_bt_discovery_commbination_key_down+1 
+p_mouse_24g_pairing_timer:	
+	arg mem_combination_ui_button_count,regc
+//	arg p_mouse_24g_pairing_button,regb
+	arg p_mouse_24g_pairing_button_down2,regb
+	branch timer_single_step
+p_mouse_24g_pairing_button_down2:	
+	call p_g24_auto_pair_start
+	branch p_mouse_discovery_multi_led_blink
+
+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
+	fetch 1,mem_mouse_null_enter_hibernate_timer
+	branch p_mouse_null_enter_hibernate,blank
+	increase -1,pdata
+	store 1,mem_mouse_null_enter_hibernate_timer
+	rtn
+p_mouse_null_enter_hibernate:
+	jam 0,mem_mouse_null_enter_hibernate_flag
+	branch app_enter_hibernate
+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_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_null_enter_hibernate_check:
+//	fetch 2,mem_ui_state_map
+//	rtnbit1 UI_STATE_BLE_CONNECTED
+//	rtnbit1 UI_STATE_BT_CONNECTED
+//	rtnmark1 mark_24g
+//	branch p_mouse_null_enter_hibernate_enable
+
+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:
+	fetch 1,mem_mouse_multi_led_blink_timer
+	increase -1,pdata
+	store 1,mem_mouse_multi_led_blink_timer
+	nrtn blank
+	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_inactive
+p_mouse_multi_down_led_on:
+	fetcht 1,mem_mouse_multi_led_gpio
+	set1 7,temp 
+	call gpio_config_output 
+	fetcht 1,mem_mouse_multi_led_gpio 
+	branch gpio_out_active
+	
+
+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 3,mem_mouse_multi_led_blink_timer_init	//300ms
+//	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 5,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_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
+	branch p_mouse_multi_led_blink_off
+		
+p_mouse_dpi_multi_led_blink:
+	jam 3,mem_mouse_multi_led_blink_timer_init	//300ms
+	jam 1,mem_mouse_multi_led_blink_count_limited
+	branch p_mouse_multi_led_blink_enable
+	
+
+/*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
+	fetch 1,mem_adc_read_timer
+	increase 1,pdata
+	store 1,mem_adc_read_timer
+	sub pdata,10,null              //1s read adc
+	rtn positive
+	call adc_init_data
+	jam 0,mem_adc_read_timer
+	call adc_set_mode
+	call vdd_calculate_by_mode
+	add pdata,0x1c,pdata
+
+	arg 0x0122,temp			//compare to 2.9V
+	isub temp,null
+	ncall p_mouse_vlotage_sub,positive
+	
+	store 2,mem_mouse_vdd_now_vol
+	arg mem_mouse_vdd_calculate_set,rega
+	call p_adc_bat_percent_lowpower_out
+	fetch 1,mem_adc_power_flag
+//	bbit1 1,app_enter_hibernate
+	bbit0 0,p_mouse_adc_no_low_voltage
+	jam 1,mem_mouse_adc_last_low_voltage_flag
+	branch mouse_adc_low_voltage
+
+p_mouse_adc_no_low_voltage:
+	call mouse_adc_no_low_voltage
+	fetch 1,mem_mouse_adc_last_low_voltage_flag
+	rtn blank
+	jam 0,mem_mouse_adc_last_low_voltage_flag
+	branch p_mouse_multi_led_off
+
+p_mouse_vlotage_sub:
+	arg 0x0b,temp
+	isub temp,pdata
+	rtn
+
+//p_adc_set_mode:
+//	fetch 1,mem_adc_config_flag
+//	beq ADC_CONFIG_GPIO,p_adc_check_gpio
+//	branch adc_set_mode+1
+//p_adc_check_gpio:
+//	hfetch 1,core_gpio_pu0	//gpio5 pull up disable
+//	set0 5,pdata
+//	hstore 1,core_gpio_pu0
+//	call adc_check_gpio
+//	hfetch 1,core_gpio_pu0	//gpio5 pull up enable
+//	set1 5,pdata
+//	hstore 1,core_gpio_pu0
+//	rtn
+
+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 adc_set_no_power_flag,positive
+	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_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
+	
+	call adc_init_data
+	
+	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 p_adc_bat_percent_lowpower_out
+	fetch 1,mem_adc_power_flag
+	bbit1 1,app_enter_hibernate
+	bbit0 0,p_mouse_adc_no_low_voltage
+	jam 1,mem_mouse_adc_last_low_voltage_flag
+	branch mouse_adc_low_voltage
+
+p_mouse_adc_no_low_voltage:
+	call mouse_adc_no_low_voltage
+	fetch 1,mem_mouse_adc_last_low_voltage_flag
+	rtn blank
+	jam 0,mem_mouse_adc_last_low_voltage_flag
+p_mouse_adc_low_volatage_led_off:
+	fetch 1,mem_config_low_voltage_alarm_gpio
+	store 1,mem_mouse_struct_led_gpio
+//	branch mouse_led_on
+	branch p_mouse_multi_led_blink_off
+
+//p_adc_set_mode:
+//	fetch 1,mem_adc_config_flag
+//	beq ADC_CONFIG_GPIO,p_adc_check_gpio
+//	branch adc_set_mode+1
+//p_adc_check_gpio:
+//	hfetch 1,core_gpio_pu0	//gpio5 pull up disable
+//	set0 5,pdata
+//	hstore 1,core_gpio_pu0
+//	call adc_check_gpio
+//	hfetch 1,core_gpio_pu0	//gpio5 pull up enable
+//	set1 5,pdata
+//	hstore 1,core_gpio_pu0
+//	rtn
+
+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 adc_set_no_power_flag,positive
+	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 1,mem_low_power_led_blink_flag
+	nrtn blank	//15s no action
+	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 1,mem_config_low_voltage_alarm_gpio
+	store 1,mem_mouse_struct_led_gpio
+
+	setarg G24_LONG_SLEEP_STEP2
+	store 3,mem_24g_enter_hibernate
+	
+	fetch 1,mem_adc_low_volatage_led_timer_count
+	pincrease 1
+	store 1,mem_adc_low_volatage_led_timer_count
+//	beq 5,mouse_low_voltage_led_on
+	beq 5,p_mouse_multi_led_blink_off
+	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 mouse_low_voltage_led_off
+	branch p_mouse_multi_led_on
+
+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 P8009,p_mouse_seting_8009_dpi
+	beq KA8,p_mouse_seting_ka8_dpi
+	beq P3065_XY,p_mouse_seting_3065XY_dpi
+p_mouse_seting_3205_dpi:
+	fetch 1,mem_mouse_dpi
+	call p_mouse_3065xy_dpi_recount,blank
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL2,p_mouse_3205_set_cpi1			//800
+	beq MOUSE_DPI_LEVEL4,mouse_set_cpi3				//1600
+	branch mouse_set_cpi2								//1200
+p_mouse_3205_set_cpi1:
+	fetch 1,mem_320x_dpi_1
+	increase -1,pdata
+	branch mouse_p3205_dpi
+
+p_mouse_seting_3065XY_dpi:
+	fetch 1,mem_mouse_dpi
+	call p_mouse_3065xy_dpi_recount,blank
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL2,p_mouse_8009_set_cpi1			//800
+	beq MOUSE_DPI_LEVEL4,mouse_set_cpi3				//1600
+	branch mouse_set_cpi2								//1300
+p_mouse_3065xy_dpi_recount:
+	jam MOUSE_DPI_LEVEL2,mem_mouse_dpi
+	rtn
+
+//p_mouse_seting_8009_dpi::
+//	fetch 1,mem_mouse_dpi
+//	call p_mouse_3065xy_dpi_recount,blank
+//	fetch 1,mem_mouse_dpi
+//	beq MOUSE_DPI_LEVEL2,p_mouse_8009_set_cpi1			//800
+//	beq MOUSE_DPI_LEVEL4,mouse_set_cpi2				//1600
+//	branch mouse_set_cpi1								//1200
+p_mouse_8009_set_cpi1:	
+	jam 0,mem_mouse_cpi_count
+	branch mouse_p3205_dpi+3
+
+p_mouse_seting_ka8_dpi:
+//	fetch 1,mem_mouse_dpi
+//	call p_mouse_3065xy_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
+
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL2,mouse_set_cpi2			//800
+	beq MOUSE_DPI_LEVEL1,mouse_set_cpi1			//1200
+	beq MOUSE_DPI_LEVEL4,p_mouse_ka8_set_cpi3		//1600
+	branch mouse_set_cpi4	
+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
+	branch mouse_motion+9
+
+p_mouse_motion_nodata:	
+	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:
+	arg 0,rega
+	call p_mouse_check_lkey_gpio
+//	call p_mouse_check_rkey_gpio
+//	call p_mouse_check_mkey_gpio
+	call p_mouse_check_skey_gpio
+	branch mouse_check_key_gpio_output
+p_mouse_check_skey_gpio:
+//	fetch 1,mem_bk_button_gpio
+//	rtneq GPIO_DISABLE
+	call p_mouse_check_bk_key_gpio
+	branch p_mouse_check_fw_key_gpio
+	
+p_mouse_check_lkey_gpio:
+	fetcht 1,mem_lbutton_gpio
+	call p_gpio_set_input_pu
+	fetcht 1,mem_lbutton_gpio
+	call gpio_get_bit
+	setflag true,0,rega			//true = 1,input low level
+//	rtn
+p_mouse_check_rkey_gpio:
+	fetcht 1,mem_rbutton_gpio
+	call p_gpio_set_input_pu
+	fetcht 1,mem_rbutton_gpio
+	call gpio_get_bit
+	setflag true,1,rega			//true = 1,input low level
+//	rtn
+p_mouse_check_mkey_gpio:
+	fetcht 1,mem_mbutton_gpio
+	call p_gpio_set_input_pu
+	fetcht 1,mem_mbutton_gpio
+	call gpio_get_bit
+	setflag true,2,rega			//true = 1,input low level
+	rtn
+p_mouse_check_bk_key_gpio:
+	fetcht 1,mem_bk_button_gpio
+	call p_gpio_set_input_pd
+	fetcht 1,mem_bk_button_gpio
+	call gpio_get_bit
+	nsetflag true,3,rega
+	branch p_gpio_set_input_pu
+p_mouse_check_fw_key_gpio:
+	fetcht 1,mem_fw_button_gpio
+	call p_gpio_set_input_pd
+	fetcht 1,mem_fw_button_gpio
+	call gpio_get_bit
+	nsetflag true,4,rega
+	branch p_gpio_set_input_pu
+
+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
+	call gpio_set_bit
+	set0 gpio_active_bit,temp
+	arg core_gpio_oe0,contw
+	branch gpio_set_bit
+
+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_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 P8009,p_mouse_p8009_sensor_motion
+p_mouse_p32xx_sensor_motion:	
+	call mouse_clear_sensor_data
+	disable user
+//	fetch 1,mem_config_function_enable
+//	bbit0 ENABLE_SENSOR_MOTION_PIN,mouse_p32xx_sensor_motion_2
+//	fetcht 1,mem_sensor_data_gpio
+//	call gpio_get_bit
+//	nrtn true
+	branch mouse_p32xx_sensor_motion_2
+
+//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_mouse_load_fast_conn_flag:
+	call p_flash_release_deep_power_down
+	arg 1,temp
+	arg mem_mouse_fast_conn_flag,rega
+	arg MOUSE_FAST_CONN_FLAG_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
+
+
+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_prepare_tx_wak:
+	call p_le_check_tx_retransmit_setmd
+	branch p_le_power_ctrl_pac_succ_decrs
+
+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_power_ctrl_pac_succ_decrs:
+	branch power_ctrl_pac_succ_decrs
+
+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_CHANNEL_MAP_REQ,p_le_parse_channel_map_req
+	branch le_parse_ll+1
+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
+	ifetch 3,contr
+	store 3,mem_le_att_opcode
+	beq ATTOP_READ_BY_GROUP_TYPE_REQUEST,p_le_parse_att_read_by_group_type_request
+	rshift8 pdata,temp
+	sub temp,0x24,null
+	branch p_le_parse_att1,positive
+	arg mem_mouse_le_uuid_sup,temp
+	storet 2,mem_ui_le_uuid_table
+	call le_parse_att+2
+	setarg 0x8e7a
+	store 2,mem_ui_le_uuid_table
+	rtn
+
+p_le_parse_att_read_by_group_type_request:
+	call le_parse_att_read_by_group_type_request
+	call le_fifo_get_last_tx_ptr
+	increase 7,contr
+	ifetch 1,contr
+	rtnne ATTOP_READ_BY_GROUP_TYPE_RESPONSE
+	increase 5,contr
+	ifetch 2,contr
+	arg UUID_SERVICE_HIDS,temp
+	isub temp,null
+	nrtn zero
+	increase -4,contr
+	setarg 0x2b
+	istore 2,contr
+	rtn
+
+p_le_parse_att1:
+	beq ATTOP_READ_REQUEST,p_le_parse_att_read_request
+	branch le_parse_att+2
+p_le_parse_att_read_request:
+	fetcht 2,mem_le_att_handle
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_READ_AUTH,p_le_send_att_read_response_check_auth
+p_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_PNP_ID,temp
+//	isub temp,null
+//	branch p_le_send_att_pnp_id,zero
+	
+	fetch 2,mem_le_att_handle
+	beq 0x13,le_send_att_error_response_notfound
+
+	fetcht 2,mem_le_att_handle
+	branch le_send_att_read_response
+
+//p_le_send_att_pnp_id:
+//	call store_contr
+//	fetch 1,mem_le_att_pnp_id_len
+//	add pdata,1,rega
+//	call le_fifo_malloc_tx_l2cap_gatt
+//	setarg ATTOP_READ_RESPONSE
+//	istore 1,contw
+//	fetch 1,mem_le_att_pnp_id_len
+//	copy pdata,loopcnt
+//	arg mem_le_att_pnp_id,contr
+//	branch memcpy
+
+p_le_send_att_read_response_check_auth:
+	fetch 2,mem_le_pairing_handle
+	isub temp,null
+	nbranch p_le_send_att_read_response,zero
+	call le_check_encrypt_state
+	nbranch p_le_send_att_read_response,user
+	jam ATT_ERR_INSUFFICIENT_AUTHENTICATION,mem_le_err_code
+	branch le_send_att_error_response
+	
+
+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_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:
+	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
+
+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:
+	jam ZCODE_20,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+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_check_51cmd_ble_update_connect_param:
+	call le_fifo_check_full
+	nrtn blank
+	branch le_l2cap_tx_update_req
+
+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
+
+
+
+
+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_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
+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 32
+	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:
+	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_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_rx_high_sens:
+	jam 0xfb,0x894c 
+	jam 0xef,0x894d
+	jam 0xec,0x894e 
+	jam 0x5e,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
+
+
+// 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
+	branch p_zcode_read_loop,blank
+	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
+
+
+
+
+
+
+
+
+
+
+/******************************************/
+/***********   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
+	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
+	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
+	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
+	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
+	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
+	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
+
+org 0x30001
+
+z_entrance2:
+	beq ZCODE_20,z_send_lmp
+	rtn
+
+z_send_lmp:
+	disable user
+	call lmo_fifo_process
+
+	
+	fetch 1,mem_lmp_to_send
+	rtn blank
+	bbit1 7,z_send_lmp_escape
+	beq LMP_ACCEPTED,z_send_lmp_accepted
+	beq LMP_SETUP_COMPLETE,z_send_lmp_setup_complete
+	beq LMP_SNIFF_REQ, z_send_lmp_sniff_req
+	branch send_lmp0
+z_send_lmp_escape:
+	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_setup_complete:
+	jam 1,mem_bt_send_lmp_setup_complete
+	branch send_lmp_setup_complete
+
+z_send_lmp_sniff_req:
+	jam 4,mem_mouse_bt_send_first_package_timer
+	branch send_lmp_sniff_req
+	
+
+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
+	jam 0,mem_le_start_encrypt_timer
+	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
+	jam 0x5a,mem_mouse_fast_conn_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:
+	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_g24_start_24g_mode
+	beq ZCODE_61,z_mouse_24g_pairing_button
+	rtn
+	
+z_g24_start_24g_mode:
+	set0 mark_24g,mark
+	call p_g24_syncword_crc8
+	call p_g24_ch
+	fetch 1,mem_24g_pairing_sm
+	rtnne STATE_24G_PAIRING_SUCCESS
+	call z_g24_tx_attemp_data_prep
+z_g24_tx_attemp_dongle:
+	setarg 0
+	store 2,mem_24g_check_dongle_times
+z_g24_tx_attemp_dongle_loop:
+//	call lpo_calibration
+	nop 2000
+	fetch 1,mem_24g_check_dongle_times
+	beq 0xff,g24_stop_24g_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
+	call g24_app_tx_attempt_success
+	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_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_pairing_button:
+	fetch 1,mem_device_flag
+	rtneq MODE_BT_DEVICE1
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	rtnbit0 MOUSE_ENABLE_24G
+//	rtnbit1 MOSUE_24G_PAIRING_FLAG
+	rtnmark1 mark_24g
+	//call p_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
+	store 2,mem_24g_check_dongle_times
+	call mouse_stop_discovery
+	branch z6_g24_start_pairing_sm1
+
+z6_g24_start_pairing_sm1:
+	set1 mark_24g,mark
+	call z6_g24_pair_init
+z6_g24_set_pairing_sm_1:
+	jam STATE_24G_PAIRING_1,mem_24g_pairing_sm
+	rtn
+
+z6_g24_pair_init:
+	jam TX_POWER_PAIR,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	
+
+org 0x80001
+
+z_entrance7:
+	beq ZCODE_70,z_g24_auto_pair_start
+	rtn
+
+z_g24_auto_pair_start:
+	set0 mark_24g,mark
+	call z_g24_auto_pair_all_powerful
+	call z7_g24_tx_attemp_data_prep
+z_g24_auto_pair_restart:
+	jam 0,mem_24g_check_dongle_times
+	call p_mouse_discovery_multi_led_blink
+z_g24_auto_pair_start_loop:
+//	call lpo_calibration
+	nop 2000
+	fetch 2,mem_24g_check_dongle_times
+	beq 0x02ff,g24_stop_24g_mode
+	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
+	call g24_app_tx_attempt_success
+	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_check_dongle_times
+	increase 1,pdata
+	store 1,mem_24g_check_dongle_times
+	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_auto_pair_all_powerful:
+	jam TX_POWER_PAIR,mem_tx_power
+	setarg 0x0f0f
+	store 2,mem_24g_addr
+	istore 2,contw
+z_g24_ch_syncword_crc8_init:	
+	call p_g24_syncword_crc8
+	branch p_g24_ch
+
+z_g24_auto_pair_device_attemp:
+	call z_g24_auto_pair_all_powerful
+	branch z_g24_auto_pair_start_loop
+
+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_1,mem_24g_pairing_sm
+	rtn
+
+z_g24_pair_init:
+	jam TX_POWER_PAIR,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
+
+
+
+
+
+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_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
+z_le_otp_adc_empty:
+	store 2,mem_random_addr_increase_count
+	rtn
+
+
+z_mouse_setting_config:
+	call p_g24_set_device_addr
+//	//disable usb function
+//	hfetch 1,core_usb_config
+//	set0 4,pdata
+//	hstore 1,core_usb_config
+	call mouse_gpio_init
+
+//	call p_mouse_devce_led_off
+//	fetch 1,mem_config_low_voltage_alarm_gpio
+//	store 1,mem_mouse_struct_led_gpio
+//	call mouse_led_on
+	fetcht 1,mem_24g_sw_gpio
+	call gpio_config_output
+	fetcht 1,mem_flash_ncs_gpio
+	call gpio_config_output
+	
+	call mouse_param_init
+	call z_mouse_bt_sdp_update
+	setarg 0
+	store 2,mem_lpm_interval
+	call load_adc_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
+	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 369,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 0x8d71,contr
+	arg 265,loopcnt
+	call memcpy
+	
+	jam 0,mem_mouse_uuid_list+23	//Service Record Handle: 0x 00 01 00 00
+	jam 0x6d,mem_mouse_uuid_list+15	//total length
+	setarg 0x401f
+	store 2,mem_mouse_uuid_list+357	//timeout
+	setarg 0x6d04
+	store 2,mem_mouse_uuid_list+462	//VID
+	setarg 0x16b0
+	store 2,mem_mouse_uuid_list+468	//PID
+
+	setarg mem_mouse_uuid_list				//bt sdp start address
+	store 2,mem_ui_uuid_table
+	rtn
+
+
+
+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_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_1:
+	jam STATE_24G_PAIRING_1_WAITING_ACK,mem_24g_pairing_sm
+	jam 0xaa,mem_24g_common_temp
+	call p_mouse_discovery_multi_led_blink
+	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:
+	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
+	
+	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_A0,z_mouse_24g_attempt_fail
+	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_24g_attempt_fail:
+	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_mouse_null_enter_hibernate_enable
+
+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
+	rtn 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
+
+
+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
+	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 mouse_before_hibernate_wheel_gpio_set
+	fetcht 1,mem_24g_sw_gpio
+	call gpio_out_active
+	call p_mouse_setgpio_hibernate
+	call p_flash_deep_power_down
+	hfetch 1,core_gpio_sel1
+	and pdata,0xf7,pdata
+	hstore 1,core_gpio_sel1  //disable flash spi		
+	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
+	rtn
+
+z_mouse_le_bb_event_connected:
+	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
+
+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
+	branch mouse_bb_disconnected
+
+
Index: YDN_1066_227D/output/bt_program23.rom
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/output/bt_program23.rom	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/output/bt_program23.rom	(working copy)
@@ -0,0 +1,786468 @@
+00100000001000000000000001000000
+00100000010000000000001110111001
+01101000000000001100000111011110
+01100000000000001100110010100111
+00100000010000000000011101100111
+01101000000000001100011010000101
+01100000000000001100011011011010
+01101000000000001100101100110000
+01100000000000001100101100110001
+00100000010000000100001111001010
+00100000010000000000001011110000
+00100000010000000000000000001111
+00100000010000000000000000100010
+00100000010000000000000001110101
+00100000001000000000001100011000
+01011000000000000000001110000100
+01100000000000010100110100100001
+01011000000000000000001110011110
+01100000000000010100000111101111
+01011000000000000000011010101100
+01100000000000010100000111111001
+01011000000000000000001111010100
+01100000000000010100000111110001
+01011000000000000000001010011110
+01100000000000010100000111101101
+01011000000000000000010000010110
+01100000000000010100000111110101
+01011000000000000000001111111100
+01100000000000010100000111110011
+01011000000000000000010001010010
+01100000000000010100000111101011
+01011000000000000000010001011001
+01100000000000010100000111111101
+00100000011000000000000000000000
+01011000000000000000000000011001
+01100000000000010100110100110011
+00100100010101011000000000101010
+00100000010000000000001011110010
+00100000010000000000001100010001
+01101000000000001100011100011111
+01100000000000001100011100011110
+00100000011000000000000000000000
+01011000000000000000000101110111
+01100000000000010100110100110011
+00100000011000000000000000000000
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+00100000000000000000000000000001
+11000010100001000000000001011001
+11000000000000001000000010000101
+11000000000000010000000010001110
+11000000010000101000011111010011
+11000000010001001000011110100100
+11000000000011011000011011000001
+11000000000100110000011011000011
+11000000001001000000011011011111
+11000000001001010000011011100110
+11000000001010001000011011101111
+11000000001011001000011011011101
+11000000010100111000011011110100
+11000000010101101000011100001010
+11000000011001011011001111100100
+11000000011101001000011100011011
+11000000010100001000000010010111
+11000000010110001000000010011100
+11000000010110010000000010101010
+11000000011000100000001010111101
+11000000011100011000010110001001
+11000000011100110000010110100110
+11000000011101010000010111100111
+11000000011101011000010111101101
+11000000011101100000011000000001
+00100000001000000010101010001110
+11000000000111001000011000001000
+11000000001000011000011000010000
+11000000001001010000011000010110
+11000000001010111000011000011001
+11000000001011001000011000011011
+11000000001100011000011000011101
+11000000001100110000011001000111
+11000000001100111000011001011110
+11000000001101010000011010010111
+11000000001110111000011010100010
+11000000000000101000011100011101
+11000000010000000000011100011111
+11000000010000010000011100101001
+11000000010001000000011100101011
+11000000010001100000011010101110
+11000000010001101000011010111010
+11000000011111010000011101001111
+00100000001000000010101010001110
+00011111111000100010001000000000
+01101000000010001100110010101011
+01011000000000000100110010110010
+10011000010000001000101000000000
+00011010001000100111111000000000
+11100000101000001000000000000000
+00011000010000001000010000000001
+00011000010000010000010000000111
+01100000000010001100110010101011
+00100000011000000000000000000000
+01110000010010110110100100000000
+01101000000010001100011011101101
+00100000010000000110011111111011
+01101000000010001100011011101101
+00100000010000000110100000011101
+00100100011000001000000000000000
+00100000010000000111111011000001
+01101000000010001100011011101101
+00100000010000000110100000011101
+00100100011000001000000000000000
+01110000010010110110100100000001
+00100000011000000000000000000000
+01101000000000001100101101101001
+00100000011110100000000000000000
+00100000010000000000010001111011
+00100000001000000000001100110100
+11011000101000000000100110101110
+11011111001000000000000000001100
+00100000010000000111111011010100
+00100000010000000000001110010101
+00100000010000000110101000000011
+00100000010000000101110011110110
+00100100010101011010110001100101
+00100000010000000111110011001101
+00100000001000000010000000001100
+00100000010101011011001011100011
+00100000010000000111010101101010
+00100000010101011010101101000001
+00100000010000000111011011011100
+01101000000000001100011001011010
+00100000001110100010000000010010
+01101000000000001100010110110001
+00100000001110100000000010010001
+00100000001000000010000000010010
+01011000000000000000101000000110
+01100000000000011100010100010000
+01011000000000000001110110000111
+01100000000000010100010100010011
+00100000001000000010101010100010
+11000110000100110000000000000000
+01101000000000001100101100100110
+00100100001110100111111111101111
+01101000000000001100101100101011
+00100100001110100111111111101111
+01101000000000001100011110011100
+00100000001110100111111111101111
+01101000000000001100011111000100
+11000000000000001111111111101111
+01101000000000010100001001001000
+00100100001110100111111111101111
+01101000000000001100100000000110
+00100100001110100111111111101111
+00100000001000000111111111110001
+11000110100100110000000000000000
+01101000000000001100110100110000
+11000000000000001000000011000000
+00100000010000000000000101000100
+00100100001101000000000011011011
+00100000010000000000000100101011
+00100000010000000000000101100111
+01101000000000001100110000000000
+11000001111111111000000000000000
+00100000010000000000011101111000
+00100000010000000000000010111100
+01101000000000001100101100100110
+11000000000000001000001110000111
+00100000010000000000000011100111
+00100100011101000000000000000000
+00100000010000000000001010100101
+01011000000000001110110001010100
+00100000001000000010101110010011
+01011000000000010111011100000000
+01100000000000011100110000011111
+01110000010010110101101100010100
+00100000011000000000000000000000
+00100000010000000000001001111110
+00100100011101000000000000000000
+00100000010000000000000011010101
+01101000000000010100110100110001
+00011111111000001111111000000001
+01100000000000010100110100110001
+01101000000010010100110100110011
+10011000010001100111110000000000
+00100000010000101000000011001010
+00100000001000000000000010101101
+01110000010011010011000000000000
+01011000000000000000000000000000
+01100000000000010100110100110001
+01011000000000000000000000011001
+01100000000000010100110100110011
+01110000010011000010101100000000
+01101000000000001100110000010110
+01100000000000001100110000010101
+00100000011000000000000000000000
+01101000000000001100110000010111
+00100000001000000000000011010001
+01101000000000001100110000101011
+00011111111000001111111000000001
+01100000000000001100110000101011
+11000000000000100000000011010011
+11000000000000101000000011001111
+00100000011000000000000000000000
+01101000000000001100110000011100
+00100000010110100000000011110000
+01101000000000001100101100101011
+00100100011110100000000000000000
+01101000000000001100101100100110
+11000001000000001000000000000000
+00100000010000000000000011100111
+00100100011101000000000000000000
+01101000000000011100110000011111
+00100000010000000111111101001001
+01100000000010100100000101011011
+00100000001000000010101100101010
+01111000001101000111110000000000
+00100000010000000010101011111010
+01101000000000011100000101101111
+00100000001110100111111111101001
+01101000000000001100000010010001
+00100000001110100111111111101001
+01101000000000001100110100110000
+11000000000000001111111111101001
+00100000001000000000001010101000
+01110000010011000001110000000001
+01110000010011010010010100000000
+00100000010000000000000100000011
+01100000000000001100101110001100
+01011000000000000000000000000000
+01100000000000111100101110001101
+01101000000000100100110000100111
+01100000000000100100101110010100
+01110000010010111111000000001100
+01101000000000001100101111110001
+01111001001000000111111000000011
+01100000000000001100101111110001
+00100000010000000000000101000111
+00100000001000000000000010110000
+01101000000000100100000010100000
+01100000000000100100110000100111
+00100000011000000000000000000000
+01110000010011010010011000000001
+01110000010011010010100000000000
+01101000000000001100101111110001
+00011111111000010111111000000111
+01100000000000001100101111110001
+00100000011000000000000000000000
+01101000000000001100101111110001
+01111001001000000111111000000100
+01100000000000001100101111110001
+01100000000000001100101110101100
+00100000011000000000000000000000
+01101000000000001100101111110001
+01111001001111111111111000000100
+01100000000000001100101111110001
+01100000000000001100101110101100
+00100000010000000000011101101110
+00100000001000000000000111110110
+01101000000000001100110100100101
+11000000100000001000000100000011
+01101000000000001100110100100011
+00011111111000001111111000000001
+01100000000000001100110100100011
+11000000000000100000000100011011
+00100000010000000000000111110110
+01110000010011000011010100000010
+00100000001000000000000101100111
+00100000010000000000011101101110
+01110000010011010010001100000000
+00100000001000000000000100000011
+01110000010011010010100000000010
+01110000010011010010011000000001
+01110000010011010010010100000000
+00100000001000000000000100000011
+01101000000000001100110100100111
+11000000000000011000000100011111
+01101000000000001100101111110001
+00101111111011000000000000000100
+00100000001000001000000100000001
+01101000000000001100110100100111
+11000000000000001000000100011110
+11000000000000010000000100011111
+00100000011000000000000000000000
+01101000000000001100110000000000
+11000001111111111000000000000000
+00100000010000000000000100110000
+00100100010101100000000100111000
+00100000011000000000000000000000
+01111000010101100111110000000000
+01101000000000001100110100100110
+11000001100000001000000000000000
+01101000000000001100110100101000
+11000001100000000000000000000000
+01110000010011010010011100000001
+01110000010011000011010100000100
+00100000001000000111111111101011
+01101000000000001100110100101000
+00100000001110100000000100111111
+00011111111000001111111111111111
+01100000000000001100110100101000
+01110000010011010010011100000010
+01110000010011000011010100000100
+00100000001000000000000111110110
+01110000010011010010011100000011
+01101000000000001100110100100101
+00100100001110100000000100010010
+01110000010011000011010100000010
+00100000001000000000000111110110
+01101000000000001100110000000000
+11000000111111111000000110110110
+00100000010000000000000101001010
+00100000010000000000000111100100
+01110000010010111111010100000001
+00100000011000000000000000000000
+01101000000000010100110100100001
+00100000010000000111111110011100
+00100000001101000000000101010000
+01101000000000111100101110001101
+00100000011110100000000000000000
+00100000001000000111111111100111
+00100000010000000000001110110011
+01110000010011000001110000000000
+00011010001000001111111000000001
+01100000000000001100101111110000
+00100000010000000000000100000011
+01100000000000001100101110001100
+11101000101010001000000000000000
+11101010010000001000000000000000
+10011000010000011111111000000000
+11100000101000001000000000000000
+00011010010000001010010000000001
+11101010010000100000000000000000
+11100000101000100000000000000000
+00011010010000001010010000000100
+11011000101000000100101110010010
+11011111001000000000000000000010
+11101010010000001000000000000000
+11101000101010001000000000000000
+10011000010000001111111000000000
+11100000101000001000000000000000
+00011010010000001010010000000001
+11000010000000000000000101100000
+00100000011000000000000000000000
+01110000010010111111100100000000
+11011001011000000000110100000000
+00110100011100110000001000000000
+00100000010000000000000110000101
+01101000000000001100110000101100
+11000001000000001000000000000000
+00100100001011000000000110010100
+00100100001101111000000110010100
+00100000010000000000000101111111
+00100000010000000000000110101111
+00100000010000000000011101101010
+01101000000000001100101111101111
+00011111111000001111111000000001
+01100000000000001100101111101111
+00100000010000000000000110000010
+01101000000000001100110000000000
+11000000111111111000000110111000
+00100000010000000000000100100010
+01011000000000000000000000000000
+01100000000000010100101111110110
+01100000000000001100101111111000
+01100000000000001100110100100100
+01110000010010111111010100000000
+00100000011000000000000000000000
+11011111001000000000000000000100
+11011000101000000100101110001100
+00100000001000000111111011000110
+01101000000000001100101111110001
+11000010100000100000000100001100
+00100000011000000000000000000000
+01111000010101111111110000000000
+00100000010000000000001001011101
+01101000000000001100110000101100
+11000000000000001000000110010010
+00011000000000000010101000000000
+01101000000000100100110000011000
+10011000000000000001001000000000
+01101000000010001000000000010111
+00100000010000000010100100011111
+00100000010000000010100100100100
+00100000010000000000001000011001
+00100000010101111000001001010101
+00100000011000000000000000000000
+00100000010000000000001001010101
+00100000001000000000000101110010
+01101000000000010100101111110110
+00011111111000001111111000000001
+01100000000000010100101111110110
+01101000000000001100101111110111
+11000010100000100010110111010100
+01101000000000001100110000000000
+11000000111111111000000110011101
+00100000010000000000000110100101
+00100000001000000000000101101000
+01101000000000001100101111110110
+11000001111111111000000000000000
+01011000000000000000000000000000
+01100000000000010100101111110110
+00100000001000000010110111010100
+00100000010000000000011110011011
+00100000010000000000011101101110
+00100000001000000000000111110110
+01101000000000001100101111111001
+00011111111001100111110000001011
+00100100001000010000000110100010
+00011111111000001111111000000001
+01100000000000001100101111111001
+11000000000000010000000100000111
+11000000000000110000000100001100
+11000000000001000000000100000111
+11000000000001100000000100001100
+00100000011000000000000000000000
+00100000010000000000000111001001
+01101000000000001100101111101110
+00100000011110100000000000000000
+10011000000000000111001000000000
+11011000110000000100101101101100
+11011000101000000100101111001110
+00100000001000000111111100000001
+01110000000100011100010110010000
+00100000001000000000011111010101
+00100000010000000000011101100111
+01110000000100011100010110010001
+00100000001000000000011111010101
+01110000000100011100010101100000
+00100000001000000000011111010101
+01110000010010110110100000000000
+01110000000100011100010101110000
+00100000001000000000011111010101
+01111001001111111000000000100110
+00100000010000000101001111001110
+11011000111000000000000000000011
+00100000001000000100001111010010
+01100000000010001100101111110000
+00011000010000100111001000000000
+11011000101000000100101110001100
+00011010001000100000110000000000
+00100000001000000111111100000001
+01101000000000001100101101101011
+00011111111010010111111000000000
+01100000000000001100101111101110
+00011111111000001111111000000001
+11011000110000000100101101101011
+10011000110000001000110000000000
+11101000110000011000000000000000
+01100000000000011100110000101101
+01101000000000001100101101101011
+00011111111000110111111000000000
+00011111111000010111111000000011
+01100000000000001100110000110011
+00100000011000000000000000000000
+01100000000000100100110000011000
+11011010001000000000000000000000
+11011111001000000000000000000100
+11011000110000000100110000011000
+11101000110000001000000000000000
+10011010001000001010001000000000
+11000010000000000000000111011010
+00011010001000100111111000000000
+01100000000000010100110010100001
+01101000000000001100110010100001
+01101000000010001100110010100010
+10011000010000001111111000000000
+01100000000000001100110010100011
+00100000011000000000000000000000
+01101000000000001100101111110000
+00011111111000001111111000000010
+01100000000000001100101111110010
+01101000000000001100101111110001
+01100000000000001100101110101100
+01101000000000001100101111110000
+00011111111010011111111000000000
+01101000000010001100101111101111
+00011000010000010000010000000011
+00011000010000111000010000000000
+10011000010000011111111000000000
+01101000000010001100110000101100
+10011000010000001111111000000000
+11100000101000001000000000000000
+01101000000000001100101111110000
+10011000000000000111001000000000
+11011000110000000100101110001100
+00100000001000000111111100000001
+01101000000010001100101111111011
+00100000010000000000000111111010
+01100000000010001100101111111011
+00100000011000000000000000000000
+00100000010000000000000111111110
+00011000010000001000010000000001
+00011000010000010000010000000011
+00100000011000000000000000000000
+01101000000000001100110000011000
+00011111111000010111111000000011
+00011111111011111010001000000100
+01011000000000000100110000000001
+10011010001000001111111000000000
+10011000010000001000110000000000
+11101000110000001000000000000000
+01100000000000001100101111111010
+00100000011000000000000000000000
+01111000010001001111110000000000
+01111000010000111111110000000000
+01011000010101010101010101010101
+10011000000000000001111000000000
+01101000000000001100101111111010
+00011111111011011000010000000000
+01111001001000000000010000000001
+00011000010000110001110000000000
+00100000011000000000000000000000
+00100000010000000101001111000100
+01101000000000100100110000011000
+10011000000000000001001000000000
+00100000010000000010100100011000
+01101000000010001100101111111010
+00100000010000000010100100011111
+01011000000000000000010100000000
+00100000010000000010101010001111
+00100000010000000010100100100100
+00100000010000000000001000000111
+01111000010101111111110000000000
+01111000001001101111110000000000
+01111000001100001111110000000000
+01111000010100000111110000000000
+01111000001010000111110000000000
+01101000000000010100101111110011
+10011000000000000011011000000000
+00110111110000011000010000000000
+00100100001011000000001001011001
+01111000010001101111110000000000
+01111000001001011111110000000000
+01111000001000111111110000000000
+01111000001001001111110000000000
+00100000010000000000001001010010
+01100000000000001100110010100100
+01101000000010001100110010100011
+10011000010001100111110000000000
+00100100001000101000001001010101
+00100000010000000000001001010010
+01100000000000001100101101101010
+01101000000000001100110000110110
+00011111111001100111110000000010
+00100000001000101000001000110101
+01101000000000001100101101101010
+01101000000010001100101111110001
+10101000010000000000111000000000
+00100100001000001000001001010101
+00100000010000000000001001010010
+11100000101000001000000000000000
+00011111111010010111111000000000
+00011111111000010111001000011111
+00100000001000101000001000111101
+00100000010000000000001001010010
+11100000101000001000000000000000
+11000010000000000000001000111010
+00011000101000100010001000000000
+00100000010000000000001001010010
+01100000000000001100110100101011
+00011010001000100000101000000000
+00001001100000000000000000011000
+01111000001010000111110000000000
+11011011011000000000011001100100
+00011111111011110111111000000000
+00011111111100010111111000000000
+11100000101000011000000000000000
+01111000010001011111110000000000
+00100000001000110000001001010101
+01111000001101111111110000000000
+01101000000000001000000000010111
+00011111111000001010001000000000
+00100000010000000010100110000001
+01111000010001101111110000000000
+00100000010000000010100100011000
+01101000000000001100110100101011
+00100000010000000000000001101011
+00100000011000000000000000000000
+00001001100000000000000000001000
+00011001100010010111111000000000
+00100000011000000000000000000000
+01111000010011011111110000000000
+01111000010001011111110000000000
+00100000010000000010011001001101
+00100000011000000000000000000000
+00100000001000000000001001010101
+00100000010000000010100100011000
+01101000000010001100101111111010
+00100000001000000010100100110011
+00100000010000000101001111000100
+01101000000000100100110000011000
+10011000000000000001001000000000
+00100000010000000000001000000111
+00100000010000000000001001011010
+01111001001000000010101000000000
+01111000001011101111110000000000
+01111000001100000111110000000000
+01111000010100001111110000000000
+00011001001100010111111000000000
+00011111111011001111111000000000
+00011111111100011111111000000000
+00001000000000001000011000101000
+01111000010011101111110000000000
+01111000001011011111110000000000
+01111000001000111111110000000000
+01111000001001001111110000000000
+01101000000000001100110010100011
+00001000000000001000011000001000
+01101000000000001100101111110010
+10011000000000000111001000000000
+11011000110000000100101110101100
+11101000110000001000000000000000
+00001000000000001000011000001000
+11000010000000000000001001110011
+01111000001001000111110000000000
+00001000000000001000011000011000
+01111000010001000111110000000000
+00110111110100111000001000000000
+00100000000000000000000001100100
+01111000010011101111110000000000
+01111000010011011111110000000000
+00100000011000000000000000000000
+00100000010000000111111111101001
+01101000000010100100110000010001
+00011100010000100111111000000000
+10011000010001100111110000000000
+00100100010000010010110100011000
+00011111111000100010010000000000
+01101000000000100100110000010001
+01101000000010001100110000010101
+10011000010000001000010000000000
+00011010010000100111111000000000
+10011000010001100111110000000000
+00100100011000010000000000000000
+01111001001111111111111000011100
+01100000000000100100110000010001
+00100000001000000111111111100111
+11011000010000000000000000000000
+11011111001000000000000000001000
+00011010001000100000110000000000
+11101000110000001000000000000000
+10011000010000001000010000000000
+11000010000000000000001010010000
+00011000010010010111111000000000
+00011111111000100000010000000000
+11000110100100110000000000000000
+00011111111001101111110000001010
+00100000010000000111111110000110
+00011000000001111111111000000000
+00011111111100100111111000000000
+00011000000001110000010000000000
+10011000010000011000010000000000
+00100000011000000000000000000000
+00100000011000000000000000000000
+11000110000100110000000000000000
+00100000010000000000001110001011
+00100000010000000000001010101000
+01101000000000001100000001000000
+11000011000000000000001010100101
+01101000000000001000000010100000
+00100100011110100000000000000000
+01011000000000000000000000000000
+01100000000001000000000010100001
+00100000011000000000000000000000
+00100000010000000000001010111010
+00100000010000000000001010100101
+00100000010000000011111010111111
+00100000010000000000001100011010
+01101000000100100000000001110000
+01101000000110100000000001111000
+10011000010000011000010000000000
+00011000010001000000010000000000
+01100000000110100000000001111100
+01101000000100001000000001111101
+01111001001111111111111000000010
+01100000000100001000000001111101
+01101000000100001000000001111110
+01111001001111111111111000000110
+01100000000100001000000001111110
+01101000000010001100101100100101
+01111001001111111000010000000111
+00100000001000000110100000000110
+01101000000000001100101011111110
+00100000011110100000000000000000
+00100000001000000000010110001001
+00100000010000000011010000010110
+00100000010000000111010010111001
+00100000001101011000001011010001
+01101000000000011100010010100011
+01100000000000011100101101100011
+00100000010000000000000000000001
+00100000010000000000000010000001
+00100000010000000000010110110011
+11000000000000101000001011101101
+00100000010000000000001011010010
+01101000000000001100011100100000
+01101000000010001100011100000011
+10011000010001100111110000000000
+00100000001000101000001011010101
+11000000011111111000001011010101
+00100000010000000000010100101101
+01101000000000001100001000010000
+11000000000110011000001011011000
+11000000000110100000001011011011
+00100000001000000000010011110010
+00100000001000000000001011110000
+01101000000000001100110010100111
+01100000000000001100000111011110
+00100000011000000000000000000000
+01110000010001110010000000000010
+00100000010000000000010100101101
+00100000001000000000001101111001
+01101000000000110100000111010000
+00100000001110100011001111101011
+00100000001000000100001001110100
+01110000010010110110011100000001
+01110000010001111001111100000001
+01101000000000010100011010101000
+01100000000000010100011010101110
+00100000010000000011010000011000
+00100000010000000000001011100110
+01011000000000000000000000000100
+11100000110000001000000000000000
+11011000110000000100001110010000
+00100000010000000000010111111101
+00100000001000000111110111110100
+11011010001000000100001101110000
+11101010001000001000000000000000
+00100000011110100000000000000000
+10011000110000001010001000000000
+11101000110000001000000000000000
+11000001000000001000000000000000
+00100000001000000000001011100111
+01110000010010110110100000000000
+01110000000100011100010101100001
+00100000001000000000011111010101
+01110000010000100001001001110110
+00100000001000000011110100110110
+00100000010000000000001011110000
+00100000010000000100000011000000
+00100000010000000100000011011001
+11000000000110000000001011111110
+11000000000110001000001100000001
+00100000010000000100000011010001
+00100000000000000000001111101000
+00100000001000000000001011110100
+01110000010010101111111000000001
+00100000010000000110010000001111
+00100000010000000000001011110010
+00100000001000000110010000010001
+00100000010000000000001100000110
+01101000000000001100011011011110
+00100000001000000100000011100001
+00100000010000000000001100000110
+01101000000000001100011011011110
+11000000001110000100000011101000
+01110000010001101110000000000001
+00100000011000000000000000000000
+00100000010000000000001011110000
+01011000000000001000000000000110
+00100000010000000110010000010011
+00100000000000000010111011100000
+00100000001000000000001100001011
+01101000000000001100011101111010
+11000000011111111000001100001110
+00100000001000000000010110001001
+01101000000000001100011011100001
+01100000000000001100011101111010
+00100000001000000000010110001001
+00100000010000000000001011110000
+01011000000000000000000000000110
+00100000010000000110010000010100
+00011111111000011111111000001000
+00011111111011010111111000000000
+00011111111000001111111000000110
+00100000001000000110010000010011
+01110000000100011100010110000000
+00100000001000000000011111010101
+01101000000010001100101101000100
+00100000001000000110100000100101
+01110000100000001000011001000000
+01110000100000001000011100000000
+01101000000100001000000010000001
+01111001001111111111111000000000
+01111001001111111111111000000001
+01111001001000000111111000000011
+01111001001111111111111000000100
+01100000000100001000000010000001
+01011000000000000000000000000000
+01100000000000100000000111110101
+01101000000100001000000001111111
+01111001001111111111111000000000
+01100000000100001000000001111111
+00100000011000000000000000000000
+00100000010000000000001101110111
+00100000010000000100010000100011
+01101000000000010100011101111000
+11011000010000001010101001010101
+10011000010001100111110000000000
+00100000001000101000001101100111
+01100000000010010100011101111000
+00100000010000000100010000011100
+01101000000000001100011011100001
+01100000000000001100011101111010
+00100000010000000000001101110111
+00100000010000000000001101000110
+00100000010000000000001101011110
+00100000010000000000001101001010
+00100000010000000000001101010101
+11011000010000000000000000000010
+11011010001000000100011111000010
+11011010010000000000000001011111
+01101000000000011100011100000000
+10011010010000001111111000000000
+00100000010000000000001101001010
+00100000010000000000001101010101
+00100000010000000000001101101110
+00100000001000000000001011110000
+11011000010000000000000000000100
+11011010001000000100110000011000
+11011010010000000000000001011011
+00100000011000000000000000000000
+01101000000000011100011100000000
+01100000000000011100001000110010
+00100000010000000110010100101010
+00100000001000000000001101010101
+00011111111000100010011000000000
+00011010001000100111111000000000
+00011111111000001111111111111100
+00011111111000100010010000000000
+11101010010000100000000000000000
+01100000000000100100101101000110
+00011010011000100111111000000000
+00100000010000000110010101010010
+01101000000000100100101101000110
+11100010010000100000000000000000
+00100000011000000000000000000000
+01011000000000011000011010100000
+00100000010000000010101010001111
+00100000010000000110010100001011
+01011000000000000000000111111010
+01100000000100010000000010001100
+01011000000000000000000000000101
+00100000010000000110010011110011
+11000010100000000000001101010101
+00100000011000000000000000000000
+01011000000000000100011101111111
+11011000010000000100011100100000
+10011000010001100000010000000000
+01101000000000011100011100000000
+11011010001000000100011100100000
+00100000011000000000000000000000
+00100000010000000000001101110111
+00100000010000000000001101011110
+00100000001000000110010101100010
+00100000010000000000001101100100
+00100000010000000000010111110110
+00100000010000000000010111101111
+00100000010000000100001100011010
+01101000000000100100011101111011
+01100000000000100100110000011000
+00100000011000000000000000000000
+01110000000010101010001010111001
+00100000010000000000001100011100
+00100000000000000000000001100100
+00100000010000000110010100001011
+11011010001000000100101101000110
+01101000000010001000101010100010
+00100000010000000110010101010110
+00100000000000000000000001100100
+00100000011000000000000000000000
+01110000000010101010001010101011
+00100000001000000000001101101111
+00100000010000000000001101111011
+00100000001000000000000110111011
+11011111001000000000000000000010
+11011000110000000100110000011000
+00100000010000000111111111100111
+01011000000000001111111111111111
+11101000110010010000000000000000
+10011000010001100111110000000000
+00100100010000101111111111101001
+11000010000000000000001101111111
+00100000011000000000000000000000
+00100000010000000100010000000001
+01101000000000010100011010011111
+00100000011110100000000000000000
+01110000010011010011000000000001
+01011000000000000000000000000000
+01100000000000010100110100110001
+00100000011000000000000000000000
+11011000110000000001100000000000
+11011000101000000100100000001010
+00100000010000000000001110010011
+11011000110000000001100100000000
+00100000010000000000001110010011
+11011000110000000001101000000000
+00100000010000000000001110010011
+11011000110000000001101100000000
+11011111001000000000000000011011
+00100000001000000111111100000001
+11011000110000000100100000001010
+11011000101000000001100000000000
+00100000010000000000001110010011
+11011000101000000001100100000000
+00100000010000000000001110010011
+11011000101000000001101000000000
+00100000010000000000001110010011
+11011000101000000001101100000000
+00100000001000000000001110010011
+00100000010000000101100010010010
+00100100011110100000000000000000
+01101000000000001100011011000101
+00011111111000010111111000000011
+11000001100000011000000000000000
+01101000000000001100011110011100
+00100000010110100000001111111001
+01101000000000100100011011010011
+11000010100000101100000101111001
+00100000010000000011111110010111
+00100100011101000000000000000000
+00100000010000000000001110110000
+00100000010000000000001110110011
+00100000010000000000001111001111
+11011010001000000100011010011010
+00100000010000000111111000111101
+00100000010101000000001110111110
+00100000011000000000000000000000
+01110000010000010111001000000000
+01110000010010110101101000011110
+00100000011000000000000000000000
+01101000000000001100101101011001
+11000001100000001000000000000000
+01011000000000000000000000000000
+01100000000000001100101101011001
+01100000000000100100011010011011
+00100000001000000000001100000110
+01110000010001111010000000000111
+01110000010001111010000100000100
+01011000000000000100011110100000
+01100000000000010100001000011000
+00100000001000000111111000111000
+01101000000000001100011111000001
+00011111111000001111111000000001
+01100000000000001100011111000001
+00100000011000000000000000000000
+11011010001000000100011010011010
+00100000010000000111111001010100
+00100000001101000000001111000110
+00100000011000000000000000000000
+00100000010000000101011001010010
+01101000000000001100011111000001
+00011111111001100111110000000001
+00100100010000010101011001010000
+01101000000000001100011111000001
+00100000011110100000000000000000
+00011111111000001111111111111111
+01100000000000001100011111000001
+00100000001000000011111110010000
+01101000000000010100011010011111
+00100000011110100000000000000000
+01110000010010000000011000000001
+01110000010010000000011100000010
+00100000011000000000000000000000
+00100000011101110000000000000000
+01101000000000001100000111100010
+00100000011110100000000000000000
+00100000010000000101001001110001
+00100100011110100000000000000000
+01101000000000001100011110011100
+00100000010110100000001111111001
+01101000000000100100011011010011
+11000010100000101011111110001010
+11000010100001001011111110001010
+00100000010000000011111110010111
+00100100011101000000000000000000
+00100000010000000000001110110000
+00100000010000000000001110110011
+00100000010000000000001111001111
+01101000000000001100101100000011
+11000000000000001000001111101000
+01101000000000001100101100001010
+00100000011110100000000000000000
+00100000001000000011111110000001
+01101000000000001100011010011010
+01100000000000001100101100000100
+01101000000000001100011010011011
+11100000101000001000000000000000
+01101000000000001100011010011101
+11100000101000001000000000000000
+01101000000000010100011010011111
+11100000101000010000000000000000
+11011010001000000000000000000111
+00100000010000000100110101100011
+01101000000000010100001001001110
+11100000101000010000000000000000
+01011000000000000000001010100001
+11100000101000010000000000000000
+01101000000000101100101100000100
+11100000101000101000000000000000
+00100000011000000000000000000000
+01110000010001111001110000000001
+00100000010000000101100000010100
+00100000001000000000001011111010
+00100000010000000111111000110100
+00100000010000000000001111111111
+00100000001000000011111011100000
+01101000000010001100101100100011
+00100000010000000110100000001110
+01101000000010001100011011100111
+00100000010000000000010111010101
+01101000000010001100011011100111
+00100000010000000110100000011101
+00100000001000001000010000010100
+00100000010000000000010111011110
+01101000000000001100011010110110
+11000001000000000000000000000000
+01110000010001101011011000000000
+01101000000000001100011101111010
+00011111111000001111111000000001
+00011111111000010111111000000011
+01100000000000001100011101111010
+00011111111011111111111000000010
+00011111111000001111111000000010
+01100000000000010100101100101011
+00100000010000000000010100111110
+00100000010000000011110101111110
+00100000001000000000001100110100
+00100000010000000000010111011110
+00100000001000000011110101100010
+00011010011000100111111000000000
+11000000000010100000010000101000
+11000000000010101000010000101011
+11000000000101001000010000101110
+11000000000110010000010000110000
+11000000001000000000010000110010
+11000000000000100000010000110100
+11000000000010011000010000110100
+11000000000100111000010000110110
+11000000000011001011001111011111
+11000000000100001000010000111000
+11000000000000001000010000111010
+11000000000000010000010000111111
+11000000000101011000010001000010
+11000000000111001000010001000100
+11000000000111010000010001001000
+11000000000111100000010001001011
+00100000001000000100000101111101
+00100000010000000000001011111010
+01110000000100011100010110110000
+00100000001000000000011111010101
+00100000010000000000010001010101
+01110000000100011100010110100010
+00100000001000000000011111010101
+01110000000010101001100100010010
+00100000001000000111110110001111
+01110000000100011100010110110011
+00100000001000000000011111010101
+01110000000100011100010110100001
+00100000001000000000011111010101
+01110000000100011100010110100011
+00100000001000000000011111010101
+00100000010000000100001110001110
+00100000001000000011001110100111
+01110000000100011100010110110001
+00100000001000000000011111010101
+00100000010000000000001011111010
+00100000010000000000010011110101
+00100000010000000000010100111001
+01110000010010000000100100000000
+00100000001000000100001011001010
+00100000010000000000010001010101
+01110000000100011100010110110100
+00100000001000000000011111010101
+01110000000100011100010110110010
+00100000001000000000011111010101
+00100000010000000000001011111010
+00100000010000000000010100111001
+01110000000100011100010110010010
+00100000001000000000011111010101
+00100000010000000000010001010101
+01110000000100011100010110100000
+00100000001000000000011111010101
+01110000010010110110000000000001
+00100000010000000000010011110101
+00100000010000000000001011111010
+00100000010000000000010100111001
+00100000010000000011111110001101
+00100000010000000100001101100110
+00100000001000000000001100110100
+00100000010000000000010001010101
+01110000000100011100010110100100
+00100000001000000000011111010101
+01101000000000001100101011111110
+00100000011110100000000000000000
+01110000010010101111111000000000
+00100000001000000000001100010001
+00100000010000000000010101000001
+00100000010000000000010101100110
+00100000010000000000010110000010
+00100000010000000000010011111000
+00100000010000000000010010111100
+00100000010000000000010011100111
+00100000010000000000010011000001
+00100000010000000100001000110100
+00100000010000000000010001101011
+00100000010000000000010010110101
+00100000010000000000010010100001
+00100000010000000000010010011110
+00100000010000000000010010100111
+00100000010000000000010010101101
+00100000010000000000010010010110
+00100000010000000100001000110001
+00100000010000000000010010011001
+00100000001000000100001000111010
+01101000000010001100011011101101
+00100000010000000110100000011101
+00100000001000001000010010001000
+01101000000000001100101101101001
+00100100001110100000010010000100
+01101000000000001100011011011001
+11000001000000001000000000000000
+01110000010001101101100100000001
+01110000010010110010010000000001
+01101000000000001100101101101000
+00100000001110100000010010000010
+00100000010000000000010001111011
+01110000010000011011110100000000
+00100000010000000000001100110100
+00100000010000000100001111000000
+00100000001000000100001101111110
+01101000000010001100011100100000
+00011000010000001000010000000001
+01101000000000001100011011010010
+10011000010001100111110000000000
+00100100010000010100001111001100
+01100000000010001100011100100000
+00100000011000000000000000000000
+01110000010010110110100011111111
+00100000011000000000000000000000
+01110000010010110110100100000000
+01110000010001101101100100000001
+01110000010010110010010000000001
+00100000011000000000000000000000
+01101000000000010100011010000010
+11000010100001011000010010001011
+01110000010010110010010000000000
+01101000000000001100011011011001
+11000001000000000000000000000000
+01110000010001101101100100000000
+01101000000000010100001000001000
+11000011100001010000000000000000
+01101000000000001100011100100000
+11000001100000001000000000000000
+01101000000000010100001000001010
+01111001001000000111111000001010
+01100000000000010100001000001010
+00100000001000000100001110000110
+11011010011000000100100000001001
+11011010010000000110001101111010
+00100000001000000011001101101101
+11011010011000000100101100001001
+11011010010000000000010010011100
+00100000001000000011001101101101
+01110000010010110000101000000001
+00100000011000000000000000000000
+11011010011000000100011011000110
+11011010010000000011110101100000
+00100000001000000011001101101101
+11011010011000000100011010101110
+11011010010000000000010010100100
+00100000001000000011001101110100
+01101000000000001100101100101110
+00100100011110100000000000000000
+00100000001000000100001001100110
+11011010011000000100101101011010
+11011010010000000000010010101010
+00100000001000000011001101101101
+01101000000000001100011111000101
+01100000000000001100000101110010
+00100000001000000000010010111010
+01101000000000001100101101100001
+00100000011110100000000000000000
+11011010011000000100101101100110
+11011010010000000000010010110010
+00100000001000000011001101101101
+01101000000000001100101101100111
+00100100011110100000000000000000
+00100000001000000101101111110101
+11011010011000000100101101011011
+11011010010000000000010010111000
+00100000001000000011001101101101
+01011000001001001001111100000000
+01100000000000011100110000011111
+01110000010010110101100100000001
+00100000011000000000000000000000
+11011010011000000100100000000111
+11011010010000000000010010111111
+00100000001000000011001101101101
+01110000010010000000011000000000
+00100000011000000000000000000000
+01101000000000001100011100100000
+11000000000000010000010011001111
+01101000000010001100011011101100
+00100000010000000110100000011101
+00100000001000001000010011001001
+00100000010000000100001110101001
+11011000111000000000000000001001
+00100000001000000100001111010010
+01110000010001111001111000101000
+00100000010000000000010011011000
+00100000001000000100001110110000
+01110000010001111001111000101000
+00100000010000000000010011010011
+00100000001000000000010011010111
+01101000000010001100011011101100
+00100000010000000110100000011101
+00100000001000001000010011001100
+00100000001000000100001110110000
+11011010011000000100011011011010
+11011010010000000000010011010110
+00100000001000000011001101101101
+00100000010000000000000110111101
+00100000001000000000010100110010
+11011010011000000100011011011010
+11011010010000000000010011011011
+00100000001000000011001101101101
+01101000000000100100011011010011
+11000011100001001000000000000000
+01110000010010110110100000000000
+01101000000000010100011010000010
+00101111111011111111111000001011
+00100000010000001100001011010100
+01101000000000010100011010000010
+00101111111011111111111000000111
+00100000010000001100001110010010
+11011000111000000000000000001001
+00100000010000000100001111001110
+00100000001000000100001110111000
+01101000000000001100101100101110
+00100100011110100000000000000000
+01101000000000001100011110011101
+00100000011110100000000000000000
+01101000000000001100011110011110
+00100000001110100000010011110000
+00011111111000001111111111111111
+01100000000000001100011110011110
+00100000011000000000000000000000
+01110000010001111001110100000000
+00100000001000000011010000001010
+01110000010001111001110100000001
+01110000010001111001111000101000
+00100000011000000000000000000000
+01110000010001111001110100000000
+01110000010001111001111000000000
+00100000011000000000000000000000
+01101000000000001100101100100100
+00100000011110100000000000000000
+01101000000000001100101100100111
+11000000000000000000010011111110
+11000000000000001000010100001000
+00100000011000000000000000000000
+00100000010000000000010100011000
+01101000000000001100101100101100
+00011111111000001111111000000001
+01100000000000001100101100101100
+01101000000010001100101100101000
+10011000010001100111110000000000
+00100000010000101000010100000110
+00100000011000000000000000000000
+01110000010010110010111000000000
+00100000001000000000010100100110
+01101000000000001100101100101010
+00011111111000001111111111111111
+01100000000000001100101100101010
+00100100011110100000000000000000
+01101000000000001100101100101001
+01100000000000001100101100101010
+01101000000000001100101100101101
+00100000001110100000010100010100
+01101000000000001100101100101011
+00100000001110100000010100100100
+00011111111000001111111111111111
+01100000000000001100101100101011
+01101000000000001100101100100110
+11000000000000001000010100100110
+11000000000000000000010100011000
+00100000011000000000000000000000
+01110000010010110010011000000001
+01101000000000001100011100100000
+11000000000000010000010100011111
+01101000000010001100101100100101
+00100000010000000110100000001110
+01101000000010001100101100100101
+00100000001000000110100000100101
+01101000000010001100101100100101
+01111001001000000000010000000111
+00100000010000000110100000001110
+01101000000010001100101100100101
+00100000001000000110100000101001
+01011000000000000000000000000000
+01100000000000011100101100101010
+01101000000000001100101100101011
+00100100001110100000010100101010
+01110000010010110010010000000000
+01110000010010110010011100000000
+01110000010010110010110000000000
+01110000010010110010011000000000
+00100000001000000000001010110111
+01110000010010110010111000000001
+01110000010010110010010000000001
+01110000010010110010011100000000
+01110000010010110010110000000000
+00100000011000000000000000000000
+01110000010010110010111000000000
+01110000010010110010100100000011
+01110000010010110010101100000001
+01110000010010110010101000000101
+01110000010010110010010000000001
+01110000010010110010011100000001
+00100000011000000000000000000000
+01101000000000001100101100101100
+00100100011110100000000000000000
+01101000000000001100101100101110
+00100100011110100000000000000000
+00100000001000000000010100100100
+01110000010010110010100100000011
+01110000010010110010110100000001
+00100000001000000000010100110101
+01101000000000001100011011001110
+00011111111000001111111000000001
+01100000000000001100011011001110
+00011111111001100111110000001010
+00100000011000010000000000000000
+00100000010000000110100010101000
+01110000010001101100111000000000
+00100000010000000110100011101011
+00100000010000000110100100001000
+01100000000000010100011100001111
+11011010001000000100011100001001
+00100000010000000000010101011001
+01101000000000001100001000110001
+11000010100000001011010000001010
+11000011000000000000010101010010
+01110000010010101111110100000001
+00100000001000000100001111100111
+00100000010000000100001111101001
+01101000000000001100101011111101
+00100000011110100000000000000000
+01110000010010101111110100000000
+01101000000000001100011011101111
+01100000000000001100011100010101
+00100000001000000000010100100100
+11101010001001000000000000000000
+01100000000001000000101010011010
+01101000000010010000101010011100
+01101000000000010000101010100000
+10011000010001100111110000000000
+00100100001000010110100101000100
+01101000000010010000101010011110
+10011000010001100111110000000000
+00100100001000010110100101000000
+01101000000000001100001000110001
+01111001001111111111111000000000
+01100000000000001100001000110001
+00100000011000000000000000000000
+01101000000000001100101100110111
+00100100011110100000000000000000
+01101000000000100100011011010011
+11000100000000100000000000000000
+01101000000000010100011010000010
+11000011100001011000000000000000
+11000011100000110000000000000000
+01101000000000001100011011101111
+01100000000000001100011100010101
+01011000001001001001111100000000
+01100000000000011100110000011111
+01101000000000001100011011001111
+00011111111000001111111000000001
+01100000000000001100011011001111
+11000000000000101000010100100100
+00011111111001100111110000001010
+00100100001000010000010101111000
+00100000011000000000000000000000
+01110000010001101100111100000001
+00100000001000000000010100011000
+01101000000000001100101100110110
+00011111111000001111111000000001
+01100000000000001100101100110110
+00011111111001100111110000001000
+00100000011000010000000000000000
+01110000010010110011011100000000
+01110000010010110011010110010110
+00100000011000000000000000000000
+11011010011000000100101100110101
+11011010010000000000010110000101
+00100000001000000011001101101101
+01011000011000000100100000000000
+01100000000000011100110000011111
+01110000010010110011011100000001
+00100000001000000000010101010110
+01101000000000001100011011100000
+11000000000000010000010110011111
+11000000000000110000010110010101
+01101000000000001100011101111010
+00100000010110100000010110011011
+01101000000000001100011101111010
+11000000000000001000010110010010
+11000000000000011011110110001100
+00100000001000000011110110001000
+01101000000000001100011101111111
+00011111111000001111111111111111
+00100000001000000011110110111110
+01101000000000001100011101111010
+00100000010110100000010110011011
+01101000000000001100011101111010
+11000000000000001000010110011101
+11000000000000011011110110001100
+00100000001000000011110110001000
+01110000010001110111101000000001
+00100000011000000000000000000000
+01110000010001101011010100000000
+00100000001000000011110111000001
+01101000000000001100011101111010
+11000000000000001011110110001000
+11000000000000000011110110001010
+11000000000000011000010110100100
+00100000001000000011110110001110
+01011000000000000000000000000101
+00100000001000000011110110111110
+01111000010101000111110000000000
+01011000000000000000000000000000
+01100000000000110100011010011011
+00100000010000000000010111100011
+00100000010000000100000001111001
+00100000010000000100000001111110
+00100000010000000000010110110001
+00100100001101000000010110101111
+00100000001000000011111110100000
+01110000010010110011011000000000
+00100000011000000000000000000000
+00100000010000000000010110110011
+00100000001000000100000010011010
+11011010001000000000000000000000
+00100000010000000000010110111001
+00100000010000000000010110110111
+00100000001000000100000010001110
+00100000010000000000010111001001
+00100000001000000000010111001111
+01101000000010001100011011100010
+00100000010000000000010111011110
+01101000000010001100011011100010
+00100000010000000110100000011101
+01111001001000001010001000000000
+01101000000010001100011011100011
+00100000010000000000010111011110
+01101000000010001100011011100011
+00100000010000000110100000011101
+01111001001000001010001000000001
+01101000000010001100011011100100
+00100000010000000000010111011110
+01101000000010001100011011100100
+00100000010000000110100000011101
+01111001001000001010001000000010
+00100000011000000000000000000000
+01101000000010001100011011100101
+00100000010000000000010111010101
+01101000000010001100011011100101
+00100000010000000110100000011101
+01111101001000001010001000000011
+00100000001000000000010111011110
+01101000000010001100011011100110
+00100000010000000000010111010101
+01101000000010001100011011100110
+00100000010000000110100000011101
+01111101001000001010001000000100
+00100000001000000000010111011110
+01111001001111111000010000000111
+11011000101000001000000001111000
+00100000010000000110100000110000
+01111001001000000000010000000111
+11011000101000001000000001111100
+00100000010000000110100000110000
+01111001001111111000010000000111
+11011000101000001000000001110000
+00100000001000000110100000110000
+01111001001000000000010000000111
+11011000101000001000000001111000
+00100000010000000110100000110000
+01111001001111111000010000000111
+00100000001000000000010111011001
+01101000000000001100011011100000
+00100000010000000011111111000000
+01111000010101000111110000000000
+00100000001000000011111111100111
+00100000010000000000010011110101
+00101000000011111111111000100110
+00100000010000001000000111000000
+00100000001000000100001001101101
+01110000000100011100010110000001
+00100000001000000000011111010101
+01110000000100011100010101010000
+00100000001000000000011111010101
+00100000010000000000001101110111
+11011000010000000000000000000010
+11011010001000000100011111000010
+11011010010000000000000001011111
+01101000000000011100011100000000
+10011010010000001111111000000000
+00100000001000000110010101100010
+00100000010000000000001101110111
+11011000010000000000000000000001
+11011010001000000100101101100010
+11011010010000000000000001100100
+01101000000000011100011100000000
+10011010010000001111111000000000
+00100000001000000110010101100010
+11011000101000000100001101111011
+11011111001000000000000000010011
+00100000010000000111111100000001
+00100000001000000101011110111000
+01011000000000000000000000000000
+01100000000000010100011010101100
+00100000010000000000001100000110
+01101000000000001100000010010010
+00101111111011111111111000000000
+00100000010000001100001011010111
+00100000001000000000010100111001
+01101000000000001100010100001111
+00011111111000001111111000000001
+01100000000000001100010100001111
+11000000000001100101001110010101
+00100000010000000101010110101010
+00100000010000000101011000011110
+00100000010000000000011101111000
+00100000001000000101001110001111
+01101000000000001000000000010110
+00011111111000001111111000000001
+01100000000000001000000000010110
+11000001100101000000000000000000
+01110000000000000001011000100101
+00100000011000000000000000000000
+00100000010000000010100110111011
+00100000010000000000000001101011
+00100000001000000101010010100011
+01110000000100011100010101000000
+00100000001000000000011111010101
+01110000000100011100010101000001
+00100000001000000000011111010101
+01101000000000001000010001010110
+11000010100000101000011000110001
+00100000010000000000011101101010
+01101000000000001100011110001110
+00100100001110100000011000100111
+01101000000000001000010000111111
+11000011000000100000011000101011
+01101000000000001000001011011010
+00100000001110100000011000101011
+00100000001000000101011001100100
+01101000000000001100011110001110
+00011111111000001111111111111111
+01100000000000001100011110001110
+00100000001000000101011001100100
+01101000000000001100010011000100
+11000000100000101000011000101110
+01110000010001111000111000000011
+00100000010000000101100010010010
+00100000010110100000001111000010
+00100000001000000101011000100010
+00100000010000000000011000110011
+00100000001000000000011000111111
+01101000000000001100011011000101
+00011111111000010111111000000011
+11000001100000011000000000000000
+01101000000000001100011111000001
+00100000011110100000000000000000
+01101000000000001100001111011101
+00100000011110100000000000000000
+01101000000000001100001111011100
+01111001001000000111111000000100
+01100000000000001100001111011100
+00100000010000000101011001010000
+00100000011000000000000000000000
+00100000001000000000011101101110
+01101000000000001100011110011111
+00100000011110100000000000000000
+01101000000000001100011011000101
+00011111111000010111111000000011
+11000001000000011000000000000000
+01110000010001101100011000000001
+00100000011000000000000000000000
+11000110000001111000000000000000
+00100000010000000101100010010000
+00100100011110100000000000000000
+01101000000000001000001011011001
+00011111111000010111111000000011
+01100000000000001100010100001100
+11101000110000001000000000000000
+00011111111000010111111000011111
+01100000000000001100010100001011
+00100000011110100000000000000000
+00011000110000100111111000000000
+01100000000000010100010100001101
+01101000000000001100010100001100
+11000000000000011000011001010110
+00100000001000000101011010001101
+01101000000000001000001011011011
+11000000000000001000011001011001
+00100000001000000101110001100101
+11101000110000101000000000000000
+01100000000000101100001111001110
+11101000110000010000000000000000
+01100000000000010000010001011111
+00100000001000000101110010001010
+11101000110000010000000000000000
+11000000000000100000011001100010
+11000000000000110000011010001111
+00100000001000000101011010011000
+00100000010000000111111010100101
+00100000010000000000011001000000
+00100000010000000111111010011111
+11101000110000011000000000000000
+01100000000000011000010001110111
+11000000000010000000011001110001
+00011111111011001000010000000000
+00011000010001100111110000100100
+00100000001000010000011001111111
+11011000010000000100011111000110
+01100000000010010100010010111100
+00100000010000000101100010101101
+01011000000000001000111001111010
+01100000000000010100010010111100
+00100000011000000000000000000000
+00100000010000000101100111111010
+00100000010000000101100001111001
+00011000110000001000110000000111
+11101000110000001000000000000000
+11000001100010001000000000000000
+00011000110000001000110000000101
+11101000110000010000000000000000
+11011000010000000001100000010010
+10011000010001100111110000000000
+00100100011000101000000000000000
+00011000110000001000110111111100
+01011000000000000000000000101011
+11100000110000010000000000000000
+00100000011000000000000000000000
+11000000000001010000011010000001
+00100000001000000101100010101101
+01101000000010010000010001111000
+01101000000000001100010011101001
+11000010100000011000011010001000
+01101000000000010000010001111000
+11000000000010011101101001110110
+01101000000010010000010001111000
+00100000001000000101100110111111
+01101000000000010100010011111010
+10011000010001100111110000000000
+00100100001000101000011010000100
+00100000010000000101101001000010
+00100100001101000000011010000100
+01110000000001000111101000000101
+00100000001000000101101001110111
+11101000110000001000000000000000
+11000000000000001000011010010011
+11000000000000101000011010010101
+00100000001000000101101011110110
+01110000010010110110011100000001
+00100000001000000101101100001001
+01110000000100011100010110000010
+00100000001000000000011111010101
+01101000000000001000000000010110
+11000000100100111101011011110010
+00100000010000000000011010011101
+11011000111000000000000000000000
+01101000000000010100010010000010
+00100000001000000111111100001000
+00011000000010100111111000000000
+11011000010000000000000111111111
+10011000010000010111111000000000
+00011111111000001111111011111010
+00100000001000000011110010111110
+01111000010101011111110000000000
+00100000001101110000011010100101
+00100100001101101101100000000110
+00100000010000000010101111001011
+01101000000000010100000011000001
+01100000000000010000010001001101
+01101000000000001100011011000101
+00101111111000000000011000000011
+00100100001000001010101111011110
+00100000001000000101011111111011
+01110000000100011100010101000010
+00100000001000000000011111010101
+01101000000100001000000001110111
+00011111111000010111111011111101
+01100000000100001000000001110111
+01101000000110001000000001110011
+00011000010000011000010000000010
+01100000000110001000000001110011
+00100000010000000110001111101110
+00011000010000010000010011111101
+00100000000000000000000000001101
+00100000010000000000011010111011
+01100000000110001000000001110011
+00100000011000000000000000000000
+00100000010000000110010011011101
+01101000000100001000000010000001
+01111001001000000111111000000000
+01111001001111111111111000000001
+01111001001111111111111000000011
+01100000000100001000000010000001
+00100000011000000000000000000000
+01110000000100011100010100000000
+00100000001000000000011111010101
+00100000010000000010000111001001
+00100100011101000000000000000000
+01111000010101000111110000000000
+01110000000000000001000100100000
+01111001001111111000000000001011
+01111001001111111000000000101101
+00100000010000000010101001001111
+00100000010000000010001011100110
+11000101000001011000011011010000
+00100000010000000010010001010101
+00100100001110100000011011001001
+11000101000101101000011011011001
+00100000001000000010000111101100
+00100000010000000010101001001101
+11011000001000000000000000010000
+00100000010000000010001011011100
+01111001001000000000000000101101
+01111001001111111000000000001011
+01101000000000001000000001110111
+10011000000000000000100000000000
+01110000000000000001000100000010
+00100000001000000000011011001001
+01101000000000100000000101100101
+00011111111000001111111000001000
+01100000000000100000000101100101
+00100000001000000010000111111000
+11000101000101100010011001001101
+00100000001000000010010110001111
+00100000010000000011001110101111
+00100000010000000010011011101001
+01110000000010101001100100000010
+00100000010000000111110110000110
+00100000010000000101110011110111
+00100000010000000100110101101011
+00100000001000000010010001101110
+01101000000000001000000000110000
+00101111111011111111111000000000
+00100000010000001000011011101010
+00100000001000000010010010001010
+01101000000000001000000001000111
+00101111111011111111111000000011
+00100000010000001000011101101110
+00100100010000001000011101101010
+00100000001000000000011101111000
+00100000010000000010010011110000
+00100100001011000010100011111001
+00100000010000000010100110111011
+00100000010000000000000001101011
+00100000001000000010010100011000
+11000110000100110000000000000000
+00100000010000000010101011111010
+01101000000000011100000101101111
+00100000011110100000000000000000
+01101000000000001100000010010001
+00100000011110100000000000000000
+01101000000000001100011001011010
+00100000001110100000011011111110
+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
+00100000010110100000011100011000
+00100000001000000010101110111110
+01110000000000001000101000000001
+01110000000000001000101100000000
+00100000011000000000000000000000
+01110000000100011100010100010000
+00100000001000000000011111010101
+01110000000100011100010100010001
+00100000001000000000011111010101
+01101000000000001000010101010010
+01100000000000001000010011001001
+11000000000010011000011100100011
+00100000001000000101110110110100
+00100000010000000101110111001111
+01110000010010101111111100000001
+01101000000000001100101100000001
+00100000011110100000000000000000
+01110000010010110000000100000010
+00100000011000000000000000000000
+01110000000100011100010100100000
+00100000001000000000011111010101
+00100000010000000110001010111100
+00100100011110100000000000000000
+01101000000000001000000001010101
+00100000011110100000000000000000
+11000000000000100000011101001101
+11000000000010000000011100110010
+00100000001000000110001100100000
+01101000000000001100010101011011
+11000001000000000000000000000000
+11000000000000001000011100110110
+00100000001000000110001101011111
+00100000011101001000000000000000
+01101000000000001000000101101101
+11000010100000000000011100111010
+00100000001000000110001110011001
+01101000000000001100101100000001
+11000000000000001110001110011101
+01101000000000001100000110111101
+00100000001110100110001110101001
+01101000000000001000010011010001
+11000100000000011000000000000000
+11000100000000010000000000000000
+01101000000000001100101100000000
+00100000011110100000000000000000
+01110000010010110000000000000000
+01101000000000100000010011101001
+11011000010000000000000000010100
+10011000010000001000010000000000
+00011100010000100111111000000000
+10011000010001100111110000000000
+00100100001000010000011101001011
+00100000001000000110001101001001
+01110000010010110000000000000001
+00100000011000000000000000000000
+01110000010010000000100100010100
+00100000001000000110001101101111
+00100000010000000110001010111100
+00100100001110100111110111011011
+01101000000000001000101010011001
+11000101100001001111110111010110
+11000000000011111000011101011010
+11000000000100000000011101011101
+11000000000010010000011101010111
+00100000001000000111110111001010
+00100000010000000101100010010000
+00100100011110100000000000000000
+00100000001000000101101010111111
+01110000000000011000010100110100
+01101000000000110000010001001111
+00100000001000000000011101011111
+01110000000000011000010100110011
+01101000000000110000000001000000
+01100000000000110000000110000110
+01101000000000100100011011010011
+11000100000000111000000000000000
+11011000111000000000000000000111
+00100000010000000100001111010010
+00100000010000000100001011101000
+00100000010000000100001011111011
+00100000001000000000001100110100
+01110000010011010010110000000001
+01110000010011010010100100000000
+00100000011000000000000000000000
+01101000000000001100110100101001
+00011111111000001111111000000001
+01100000000000001100110100101001
+00100000011000000000000000000000
+01101000000000001100110100101001
+00011111111001100111110000000010
+00100100010000010000011101110110
+01101000000000001100110100101001
+11000001000000000000000000000000
+00011111111000001111111111111111
+01100000000000001100110100101001
+00100000011000000000000000000000
+01110000010011010010100100000011
+00100000011000000000000000000000
+01101000000000010100011010000010
+11000011100001011000000000000000
+11000011100000111000000000000000
+11000011100000110000000000000000
+11011010001000000100110010110010
+00100000010000000000001010001101
+01100000000010001100110100101010
+01011000000000000000000010000010
+11000101000100110000011110000010
+01011000000000000000000010000000
+10011000010001100111110000000000
+00100100001000010000011110011010
+01101000000000001100110100101001
+00011111111001100111110000000010
+00100100001000010000011110001010
+01101000000000001100110100101001
+11000000000000000000011110011011
+00100000011000000000000000000000
+01101000000000001100110100101001
+11000001100100000000000000000000
+01110000010011010010100100000000
+01101000000010001100110100101010
+01011000000000000000000001110111
+11000101000100110000011110010001
+01011000000000000000000001110101
+10011000010001100111110000000000
+00100100011000010000000000000000
+01101000000000001100110100101100
+11000000000000000000011110100010
+00011111111000001111111111111111
+01100000000000001100110100101100
+11000000000000000000011110100010
+01110000010000011101111000000000
+00100000011000000000000000000000
+01110000010011010010100100000000
+01101000000000001100110100101100
+11000000000000010000011110100000
+00011111111000001111111000000001
+01100000000000001100110100101100
+11000000000000001000011110011000
+01110000010000011101111000000010
+00100000011000000000000000000000
+01110000010000011101111000000100
+00100000011000000000000000000000
+01100000000010001000000000010111
+00011000010000001010001000000000
+00100000010000000010100110000001
+01011000000000000000010100000000
+00100000010000000010101010001111
+01110000100010010000011000000001
+01110000100010010000000000111100
+01110000100010010000000111100000
+00100000000000000000000000001010
+01110000100010010000001000000001
+01110000100010010000001000111101
+00100000000000000000000000001010
+01110000100010010000001110110111
+00100000000000000000000000001010
+01110000100010010000001001111101
+01101000000000001100000111011110
+11000000000000010000011110111100
+11000000000000100000011111000001
+11000000000100000000011111010000
+00100000010000000000011111000110
+01110000100010010101010111010000
+01110000100010010101011011100000
+01110000100010010101100001101100
+00100000001000000010100101001011
+00100000010000000000011111001011
+01110000100010010101010111010000
+01110000100010010101011011100000
+01110000100010010101100000111100
+00100000001000000010100101010011
+00100000010000000000011111000110
+01110000100010010101010111010000
+01110000100010010101011011000000
+01110000100010010101100001101100
+00100000001000000010100101011011
+01110000100010010100110001011011
+01110000100010010100110110010110
+01110000100010010100111000101100
+01110000100010010100111101000110
+00100000011000000000000000000000
+01110000100010010100110011111011
+01110000100010010100110111101111
+01110000100010010100111011101100
+01110000100010010100111101011110
+00100000011000000000000000000000
+01110000100010010101011011000010
+01110000100010010101010111010000
+00100000011000000000000000000000
+00011000000000000010101000001000
+00100000001000000010100011111010
+01101000000010001001000111000101
+00011000010100011000010000000000
+01101000000000001100101101001111
+10011000010001100111110000000000
+00100000001000101000011111110010
+01100000000010001100101101001111
+00011000010000001000010000000001
+01011000000000000000000100000000
+10011000010011111000010000000000
+01101000000000011100101101010000
+10011000010001100111111000000000
+01101000000010011100101101010011
+10011000010000001111111000000000
+00011111111000001111111111111011
+01100000000000011100101101010110
+00100000010000000000001101110111
+01101000000000011100101101010110
+11011000010000000000000100000000
+11011010001000000001111100000000
+00100000010000000110010101100010
+01101000000000100001111100000000
+00100000001110100000011111100101
+00100000010000000000001011110000
+01011000000000000001111100000000
+01100000000000010100000110011001
+01110000010000011001101101000000
+00100000010000000110010011001010
+01011000000000000000000000000000
+01100000000000100100000110011001
+01101000000000001001000111000101
+00100000001000000000000000000001
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+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
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000000000000000000000000011
+00100000011000000000000000000000
+01101000000000001000000000001110
+00011111111000001111111000000001
+01100000000000001000000000001110
+00100000010000000010010000110101
+01111001001000000000000000101100
+00100000010000000010001011110010
+00100000001011000000000000001110
+01111001001111111000000000101100
+00100000010000000010010001010101
+00100100001110100000000000000111
+00100000001000000010000011111100
+01111001001111111000000000101100
+00100000001000000010000101011111
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000000010000000000000000100
+11000000000010001000000000011011
+00100000011000000000000000000000
+01110000010010000000100000000000
+01110000010000011110001100001110
+00100000010000000100000111100111
+01101000000000010100001000001000
+11000010100000111000000000001110
+11000010100000000011001110101001
+11000010100000001000000000010010
+11000010100000010000000000010101
+11000010100000011000000000010101
+00100000001000000100001010110000
+00100000010000000100000111000001
+01101000000000010100001000001000
+11000010100001010000010001101110
+00100000001000000100000111110111
+11000010100000101000000000010101
+11000010100000011000000000010101
+00100000001000000100001010110000
+01101000000000010100011010000010
+11000010100001100100001010110000
+00100000010000000011001110101001
+00100000010000000000010110110011
+11000000000000101000010011110010
+00100000001000000011001110100111
+01101000000000010000001001100100
+00011111111000100000110000000000
+11101000110000001000000000000000
+01100000000000001100101100000010
+00011111111000010000010000001111
+00011111111100011111111000000000
+11000000000000111000000000100011
+00100000001000000100110100111001
+00100000010000000100110101010011
+01110000010010110000001100000000
+01101000000000001100101100000010
+00101111111011111111111000000000
+00100000011000001000000000000000
+01110000010010110000001100000001
+00100000011000000000000000000000
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000000100000000000000000011
+00100000011000000000000000000000
+01111000010101000111110000000000
+00100000010000000110001011000001
+01101000000000001000000001001000
+00100000011110100000000000000000
+11000010100000111000000000001100
+11000000000000011000000000011100
+11000000000110001000000000011000
+11000000000010111000000000011010
+00100000001000000110000000010000
+11000000010000100000000000001111
+11000000010000011000000000010010
+00100000001000000110000000111111
+00100000010000000000000000010101
+01101000000000001000000001001000
+00100000001000000110000010011001
+00100000010000000000000000010101
+01101000000000001000000001001000
+00100000001000000110000100001101
+01101000000000001100011001011010
+00100000001110100110000100101011
+00100000001000000110000100100100
+01110000010010110000000100000001
+00100000001000000110000111000011
+01110000010010110000100100000100
+00100000001000000110000110100100
+00011000000000000111111000000010
+00100000010000000110001010011000
+01101000000000001000000001001001
+11100000101000001000000000000000
+01100000000000001100101011111100
+00100000010000000110001010100111
+01101000000000001100101011111100
+11000000000101110000000000100101
+00100000001000000110000001010001
+01101000000000001100101011111111
+00100000011110100000000000000000
+01110000010010101111111100000000
+01101000000000001100101100000001
+11000001100000010000000000000000
+01110000010010110000000000000001
+00011100010000100111111000000000
+01100000000000100000010011101001
+00100000011000000000000000000000
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000000110000000000000000011
+00100000011000000000000000000000
+00100000010000000110001010111100
+00100100011110100000000000000000
+01101000000000001000000001010101
+00100000011110100000000000000000
+11000000000000100000000000100101
+11000000000010000000000000001010
+00100000001000000110001100100000
+01101000000000001100010101011011
+11000001000000000000000000000000
+11000000000000001000000000001110
+00100000001000000110001101011111
+00100000011101001000000000000000
+01101000000000001000000101101101
+11000010100000000000000000010010
+00100000001000000110001110011001
+01101000000000001100101100000001
+11000000000000001110001110011101
+01101000000000001100000110111101
+00100000001110100110001110101001
+01101000000000001000010011010001
+11000100000000011000000000000000
+11000100000000010000000000000000
+01101000000000001100101100000000
+00100000011110100000000000000000
+01110000010010110000000000000000
+01101000000000100000010011101001
+11011000010000000000000000010100
+10011000010000001000010000000000
+00011100010000100111111000000000
+10011000010001100111110000000000
+00100100001000010000000000100011
+00100000001000000110001101001001
+01110000010010110000000000000001
+00100000011000000000000000000000
+01110000010010000000100100010100
+00100000001000000110001101101111
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000001000000000000000000110
+11000000001000001000000000011000
+11000000001000010000000000100101
+11000000001000011000000000101100
+00100000011000000000000000000000
+00100000010000000000000000001110
+00100000001000000101010101111101
+01101000000000001100011111000101
+01100000000000001100000101110010
+01110000010001111100010000000000
+00100000011000000000000000000000
+01110000010001111100010000000001
+00100000011000000000000000000000
+01101000000000001100001111010110
+00011111111001100111110000001100
+00100100001000010000000000001100
+01101000000000001100001111011000
+01101000000010001100011111000101
+10011000010001100111110000000000
+00100000001000010000000000001000
+01101000000000001100001111011000
+01100000000000001100000101110010
+00100000001000000000000000001010
+01101000000000001000010000111111
+11000100000000110000000000000000
+00100000010000000000000000011101
+00100100011101000000000000000000
+00100000001000000101010110100000
+01111000001101000111110000000000
+01101000000000001000010001011010
+00011111111100011111111000000000
+11000001100001111000000000000000
+01101000000000001000010001100000
+00011111111100011111111000000000
+11000001100000000000000000000000
+00100000001000000111111111101001
+01101000000000001100011110011111
+00100100011110100000000000000000
+01101000000000001000010001111000
+00011111111001100111111000011010
+00100100011000101000000000000000
+01110000010001101100011000000000
+00100000001000000011110101100000
+00100000010000000011001110101111
+00100000010000000010011011101001
+01110000000010101001100100000010
+00100000010000000111110110000110
+00100000010000000101110011110111
+00100000010000000100110101101011
+00100000001000000010010001101110
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000001010000000000000000011
+00100000011000000000000000000000
+01110000010010110110011100000000
+01110000010010110110001001011010
+00100000010000000000001011010010
+01110000010001110010000000000001
+01110000010001111001110000000000
+01101000000000010100011010000010
+11000010100001011000000000010100
+01101000000000100100011011010011
+11000011000011000000000000010100
+00100000010000000000010111101111
+01101000000010010100011111000010
+00011000010000001000010000000001
+01100000000010010100011111000010
+01100000000010010100010010100001
+00100000010000000000001100111001
+00011000000010100111111000000000
+01100000000000001100010010100000
+00100000010000000011010000011000
+01101000000000010100011010000111
+01100000000000010100011010101100
+01110000000000010110110100000110
+01011000000000000000000000000000
+01100000000000010100011010110000
+01100000000000010100011010101110
+11011000111000000000000000000111
+00100000010000000100001111001110
+00100000010000000100001111001010
+01101000000000001100000010010010
+00101111111011111111111000000000
+00100000010000001111110111011101
+00100000001000000000010100110010
+01110000010001111001111100000000
+00100000010000000000001011100110
+01011000000000000000000000000101
+11100000110000001000000000000000
+11011000110000000100101100010000
+00100000010000000000010111111101
+00100000001000000111110111110100
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000001100000000000000000100
+11000000001100001000000000100110
+00100000011000000000000000000000
+01111001001111111000000000100110
+00100000010000000000000111010111
+00100000010000000000000111110110
+01101000000000001100110000000000
+11000001111111111000000000000000
+00100000010000000000000000011000
+01011000000000000000000000000000
+01100000000000010100110000011101
+00100000000000000000011111010000
+01101000000000001100110000011101
+11000000011111111010110111010100
+00100000010000000000000110000101
+00100100001011000000000000100001
+00100100001101111000000000100001
+01111001001000000000000000100110
+01011000000000000000000000000000
+01100000000000010100110000011101
+00100000010000000010111100100000
+00100000010000000000000101111111
+00100000001000000000001110000111
+01110000000100011001111011111111
+01101000000000001100101111110001
+01100000000000001001000110011111
+01101000000000100100110000100111
+01100000000000100001000110100000
+11011000010000000000000000000110
+11011010001000000001000110011110
+00100000010000000000000111000100
+00100000001000000000000111100100
+01101000000000010100110000011101
+00011111111000001111111000000001
+01100000000000010100110000011101
+00100000010000000000000111110110
+00100000001000000000000000001100
+01101000000000001100011100100000
+11000001000000001000000000000000
+11000110000100110000000000000000
+11011000111000000000000000000011
+00100000010000000100001111001110
+01011000000000000000000000000000
+01100000000000010100011010101110
+01100000000000001100011010110100
+01100000000000010100110000011101
+00100000010000000100001011001010
+00100000001000000000000000110001
+01111001001000000000000000100110
+00100000010000000000000000110101
+01110000010011000000000000000001
+00100000011000000000000000000000
+01110000010000011101111000100000
+01110000010010111110111100000000
+01110000010010111111101001001110
+01101000000000100100101111111100
+00100000001000000000000111010110
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000001110000000000000000011
+00100000011000000000000000000000
+01111001001111111000000000100110
+00100000010000000000000000101101
+00100000010000000000000000011010
+01110000010011000001110100000000
+00100000010000000000010100110010
+00100000000000000000011111010000
+01101000000000010100110000011101
+11000000011111111010110111010100
+00100000010000000000000110000101
+00100100001011000000000000100011
+00100100001101111000000000100011
+00100000010000000000000110101111
+00100000010000000000001011010010
+01101000000000100100110000011000
+01101000000010100100101111111100
+10011000010001100111110000000000
+00100000001000101000000000110111
+01111001001000000000000000100110
+01011000000000000000000000000000
+01100000000000010100110000011101
+00100000010000000010111100100000
+00100000010000000000000101111111
+00100000001000000000001110000111
+01110000000100011001111011111111
+01101000000000001100101111110001
+01100000000000001001000110011111
+01101000000000100100110000100111
+01100000000000100001000110100000
+11011000010000000000000000000110
+11011010001000000001000110011110
+00100000010000000000000111000100
+00100000001000000000000111100100
+01101000000000001100110000011101
+00011111111000001111111000000001
+01100000000000001100110000011101
+01101000000000001100110100101110
+00011111111000001111111000000001
+00011111111000010111111000000001
+01100000000000001100110100101110
+11000000000000000000000000110011
+11000000000000001000000000110101
+00100000011000000000000000000000
+01110000010000011101111000100000
+01011000000000000000111100001111
+01100000000000010100110000011000
+11100000101000010000000000000000
+00100000010000000000000111010111
+00100000001000000000000111110110
+00100000010000000000000000101101
+00100000001000000000000000001000
+00100000010000000000000000111011
+00100000001000000000000000001000
+01111001001000000000000000100110
+00100000010000000000000000111011
+01110000010011000000000000000001
+00100000011000000000000000000000
+01110000010000011101111000100000
+01110000010010111110111100000000
+01110000010010111111101001001110
+01101000000000100100101111111100
+00100000001000000000000111010110
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000010000000000000000001000
+11000000010000001000000000000100
+00100000011000000000000000000000
+00100000010000000110100010100010
+01011000000000000001000100100010
+01100000000000010100011111000010
+00100000011000000000000000000000
+00100000010000000000000011111110
+00100000010000000011111001101110
+01101000000010001100101100100011
+00100000010000000110100000001110
+01101000000010001100101101000100
+00100000010000000110100000001110
+00100000010000000011111000011110
+00100000010000000000000000100000
+01011000000000000000000000000000
+01100000000000010100000101010100
+00100000010000000110100010100010
+00100000010000000011111001010100
+00100000010000000101100000010000
+00100000010000000101100000111001
+00100000010000000101100000101100
+00100000010000000101100000011000
+00100000010000000000010111101011
+00100000010000000000001101110111
+00100000010000000000001101000010
+01101000000000011100011100000000
+10011010010000001111111000000000
+00100000010000000110010101100010
+00100000010000000000001100101010
+00100000011000000000000000000000
+00100000010000000111010010111001
+11011000110000001000110000000000
+11011000101000000100100001110110
+11011111001000000000000101110001
+00100000010000000111111100000001
+01011000000011110000001000001001
+11100000101000011000000000000000
+01011000000100100000000000001001
+11100000101000011000000000000000
+01011000000100000000001000001001
+11100000101000011000000000000000
+01011000000000000000000000001001
+11100000101000011000000000000000
+11011000110000001000110101110001
+11011111001000000000000100001001
+00100000010000000111111100000001
+01110000010010001000110100000000
+01110000010010001000010101101101
+01011000000000000100000000011111
+01100000000000010100100111011011
+01011000000000000110110100000100
+01100000000000010100101001000100
+01011000000000000001011010110000
+01100000000000010100101001001010
+01011000000000000100100001110110
+01100000000000010100010101110101
+00100000011000000000000000000000
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000010010000000000000000101
+11000000010010001000000000100000
+11000000010010010000000000110000
+00100000011000000000000000000000
+01101000000000001100101111110101
+11000000000000001111111111100111
+01101000000000001100110000000000
+11000000000000001000000000001100
+11000000000000010000000000010000
+11000000000000011000000000010011
+00100000001000000010101010001100
+01110000010011000000000000010001
+01110000000100011001111010101010
+00100000010000000000010100110010
+00100000001000000000000000010101
+01110000010011000000000000010010
+01110000000100011001111001010101
+00100000001000000000000000010101
+01110000010011000000000000010011
+01110000000100011001111000100010
+01101000000000001100101111110001
+00011111111000010111111000000111
+01100000000000001001000110011111
+01101000000000100100110000100111
+01100000000000100001000110100000
+01110000000100011010010000000000
+11011010001000000001000110011110
+11011000010000000000000000000111
+00100000010000000000000111000100
+00100000010000000000000101000111
+00100000001000000111111111100111
+01101000000000001100110000000000
+11000001011111111000000000000000
+11000000000010001000000000100110
+11000000000010010000000000101000
+11000000000010011000000000101010
+00100000011000000000000000000000
+01110000010011000000000000000010
+00100000001000000000000101111001
+01110000010011000000000000000011
+00100000001000000000000101111001
+01110000010011000000000011111111
+01110000000010101001100100111001
+00100000010000000111110110000110
+01101000000000100100101111010000
+00100000010000000000000111010110
+00100000001000000000000101111001
+01110000010001111000101100000001
+11011000111000000000000000000011
+00100000010000000100001111010010
+01011000000000000000000000000000
+01100000000000010100011100000111
+01110000010001101010011100000000
+00100000010000000100000001011101
+00100000010000000000010011110101
+00100000010000000000001011010010
+01101000000000100100110000011000
+01100000000000100100011101111011
+00100000010000000100001101100110
+00100000001000000000001100110100
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000010100000000000000000111
+11000000010100001000000000001101
+11000000010100010000000000100000
+11000000010100011000000000011001
+11000000010100100000000000101001
+00100000011000000000000000000000
+01110000010011010011000000000000
+00100000010000000000001011010010
+00100000010000000000000111000000
+01110000010000011011110100000000
+00100000010000000000001010101010
+00100000001000000000010011110010
+01101000000000010100010100001001
+11000001000000000000000000000000
+01101000000000001000010001000001
+00011111111010110111111000000000
+00011111111001100111110000001100
+00100000011000010000000000000000
+01011000000000000000000000001001
+01100000000000010100010010010110
+01100000000000010100010010011000
+00100000010000000000010000101110
+01110000010001111100010000000001
+00100000011000000000000000000000
+01101000000000010100011010000010
+11000011100001100000000000000000
+11000011100000110000000000000000
+11000011100001011000000000000000
+01101000000000100100011011010011
+11000011100000101000000000000000
+00100000001000000011001110100111
+01110000010010110110000100000000
+01011000000000000000000000000111
+01100000000000010100010010010110
+01100000000000010100010010011000
+01110000010001111100010000000000
+01110000010001111001110000000000
+00100000010000000000001110111001
+00100000010000000101100000010110
+00100000001000000100000111011001
+01111000001101000111110000000000
+01101000000100100000000100111000
+01111001001101000111111000011010
+01100000000100100000000001001100
+00100000010000000010110000100001
+00100000010000000111010010111101
+00100000010000000011111010011111
+01101000000010001100101100100011
+00100000010000000110100000101001
+00100000010000000000001010101010
+00100000010000000000001101101110
+01101000000100001000000010000001
+00011111111000010111111011110111
+01100000000100001000000010000001
+00100000011000000000000000000000
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+                                
+11000000010110000000000000000111
+11000000010110001000000000001110
+11000000010110010000000000010100
+11000000010110011000000000011001
+11000000010110100000000000100000
+00100000011000000000000000000000
+01110000010010110110000100000001
+01101000000000001100011110011111
+00100100001110100000000000001011
+01110000010010110110011000010100
+00100000010000000000010011110101
+00100000010000000000001110111001
+00100000001000000100000111000011
+01101000000000001100100000001000
+11000001000000010000000000000000
+00011111111000001111111000000001
+01100000000000001100100000001000
+01110000010000011110001100010010
+00100000001000000011010000001110
+01101000000000001100100000001000
+11000001100000010000000000000000
+01110000010010000000100000000000
+01110000010000011110001100001110
+00100000001000000011010000001110
+01101000000000001100011110011111
+11000000000000001000000000011100
+00100000001000000000000000011110
+00100000010000000000010000101110
+01110000010001101100011000000101
+11011000111000000000000000000001
+00100000001000000100000110111001
+01110000010010101111111100000000
+01110000010010110000000100000000
+01110000010010110000101000000000
+00100000001000000100000111011001
Index: YDN_1066_227D/output/flash.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/output/flash.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/output/flash.dat	(working copy)
@@ -0,0 +1,12233 @@
+00
+02
+aa
+55
+d2
+1f
+20
+20
+00
+40
+20
+40
+03
+b9
+68
+00
+c1
+de
+60
+00
+cc
+a7
+20
+40
+07
+67
+68
+00
+c6
+85
+60
+00
+c6
+da
+68
+00
+cb
+30
+60
+00
+cb
+31
+20
+40
+43
+ca
+20
+40
+02
+f0
+20
+40
+00
+0f
+20
+40
+00
+22
+20
+40
+00
+75
+20
+20
+03
+18
+58
+00
+03
+84
+60
+01
+4d
+21
+58
+00
+03
+9e
+60
+01
+41
+ef
+58
+00
+06
+ac
+60
+01
+41
+f9
+58
+00
+03
+d4
+60
+01
+41
+f1
+58
+00
+02
+9e
+60
+01
+41
+ed
+58
+00
+04
+16
+60
+01
+41
+f5
+58
+00
+03
+fc
+60
+01
+41
+f3
+58
+00
+04
+52
+60
+01
+41
+eb
+58
+00
+04
+59
+60
+01
+41
+fd
+20
+60
+00
+00
+58
+00
+00
+19
+60
+01
+4d
+33
+24
+55
+80
+2a
+20
+40
+02
+f2
+20
+40
+03
+11
+68
+00
+c7
+1f
+60
+00
+c7
+1e
+20
+60
+00
+00
+58
+00
+01
+77
+60
+01
+4d
+33
+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
+20
+00
+00
+01
+c2
+84
+00
+59
+c0
+00
+80
+85
+c0
+01
+00
+8e
+c0
+42
+87
+d3
+c0
+44
+87
+a4
+c0
+0d
+86
+c1
+c0
+13
+06
+c3
+c0
+24
+06
+df
+c0
+25
+06
+e6
+c0
+28
+86
+ef
+c0
+2c
+86
+dd
+c0
+53
+86
+f4
+c0
+56
+87
+0a
+c0
+65
+b3
+e4
+c0
+74
+87
+1b
+c0
+50
+80
+97
+c0
+58
+80
+9c
+c0
+59
+00
+aa
+c0
+62
+02
+bd
+c0
+71
+85
+89
+c0
+73
+05
+a6
+c0
+75
+05
+e7
+c0
+75
+85
+ed
+c0
+76
+06
+01
+20
+20
+2a
+8e
+c0
+1c
+86
+08
+c0
+21
+86
+10
+c0
+25
+06
+16
+c0
+2b
+86
+19
+c0
+2c
+86
+1b
+c0
+31
+86
+1d
+c0
+33
+06
+47
+c0
+33
+86
+5e
+c0
+35
+06
+97
+c0
+3b
+86
+a2
+c0
+02
+87
+1d
+c0
+40
+07
+1f
+c0
+41
+07
+29
+c0
+44
+07
+2b
+c0
+46
+06
+ae
+c0
+46
+86
+ba
+c0
+7d
+07
+4f
+20
+20
+2a
+8e
+1f
+e2
+22
+00
+68
+08
+cc
+ab
+58
+00
+4c
+b2
+98
+40
+8a
+00
+1a
+22
+7e
+00
+e0
+a0
+80
+00
+18
+40
+84
+01
+18
+41
+04
+07
+60
+08
+cc
+ab
+20
+60
+00
+00
+70
+4b
+69
+00
+68
+08
+c6
+ed
+20
+40
+67
+fb
+68
+08
+c6
+ed
+20
+40
+68
+1d
+24
+60
+80
+00
+20
+40
+7e
+c1
+68
+08
+c6
+ed
+20
+40
+68
+1d
+24
+60
+80
+00
+70
+4b
+69
+01
+20
+60
+00
+00
+68
+00
+cb
+69
+20
+7a
+00
+00
+20
+40
+04
+7b
+20
+20
+03
+34
+d8
+a0
+09
+ae
+df
+20
+00
+0c
+20
+40
+7e
+d4
+20
+40
+03
+95
+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
+91
+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
+cb
+26
+24
+3a
+7f
+ef
+68
+00
+cb
+2b
+24
+3a
+7f
+ef
+68
+00
+c7
+9c
+20
+3a
+7f
+ef
+68
+00
+c7
+c4
+c0
+00
+ff
+ef
+68
+01
+42
+48
+24
+3a
+7f
+ef
+68
+00
+c8
+06
+24
+3a
+7f
+ef
+20
+20
+7f
+f1
+c6
+93
+00
+00
+68
+00
+cd
+30
+c0
+00
+80
+c0
+20
+40
+01
+44
+24
+34
+00
+db
+20
+40
+01
+2b
+20
+40
+01
+67
+68
+00
+cc
+00
+c1
+ff
+80
+00
+20
+40
+07
+78
+20
+40
+00
+bc
+68
+00
+cb
+26
+c0
+00
+83
+87
+20
+40
+00
+e7
+24
+74
+00
+00
+20
+40
+02
+a5
+58
+00
+ec
+54
+20
+20
+2b
+93
+58
+01
+77
+00
+60
+01
+cc
+1f
+70
+4b
+5b
+14
+20
+60
+00
+00
+20
+40
+02
+7e
+24
+74
+00
+00
+20
+40
+00
+d5
+68
+01
+4d
+31
+1f
+e0
+fe
+01
+60
+01
+4d
+31
+68
+09
+4d
+33
+98
+46
+7c
+00
+20
+42
+80
+ca
+20
+20
+00
+ad
+70
+4d
+30
+00
+58
+00
+00
+00
+60
+01
+4d
+31
+58
+00
+00
+19
+60
+01
+4d
+33
+70
+4c
+2b
+00
+68
+00
+cc
+16
+60
+00
+cc
+15
+20
+60
+00
+00
+68
+00
+cc
+17
+20
+20
+00
+d1
+68
+00
+cc
+2b
+1f
+e0
+fe
+01
+60
+00
+cc
+2b
+c0
+02
+00
+d3
+c0
+02
+80
+cf
+20
+60
+00
+00
+68
+00
+cc
+1c
+20
+5a
+00
+f0
+68
+00
+cb
+2b
+24
+7a
+00
+00
+68
+00
+cb
+26
+c1
+00
+80
+00
+20
+40
+00
+e7
+24
+74
+00
+00
+68
+01
+cc
+1f
+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
+cd
+30
+c0
+00
+ff
+e9
+20
+20
+02
+a8
+70
+4c
+1c
+01
+70
+4d
+25
+00
+20
+40
+01
+03
+60
+00
+cb
+8c
+58
+00
+00
+00
+60
+03
+cb
+8d
+68
+02
+4c
+27
+60
+02
+4b
+94
+70
+4b
+f0
+0c
+68
+00
+cb
+f1
+79
+20
+7e
+03
+60
+00
+cb
+f1
+20
+40
+01
+47
+20
+20
+00
+b0
+68
+02
+40
+a0
+60
+02
+4c
+27
+20
+60
+00
+00
+70
+4d
+26
+01
+70
+4d
+28
+00
+68
+00
+cb
+f1
+1f
+e1
+7e
+07
+60
+00
+cb
+f1
+20
+60
+00
+00
+68
+00
+cb
+f1
+79
+20
+7e
+04
+60
+00
+cb
+f1
+60
+00
+cb
+ac
+20
+60
+00
+00
+68
+00
+cb
+f1
+79
+3f
+fe
+04
+60
+00
+cb
+f1
+60
+00
+cb
+ac
+20
+40
+07
+6e
+20
+20
+01
+f6
+68
+00
+cd
+25
+c0
+80
+81
+03
+68
+00
+cd
+23
+1f
+e0
+fe
+01
+60
+00
+cd
+23
+c0
+02
+01
+1b
+20
+40
+01
+f6
+70
+4c
+35
+02
+20
+20
+01
+67
+20
+40
+07
+6e
+70
+4d
+23
+00
+20
+20
+01
+03
+70
+4d
+28
+02
+70
+4d
+26
+01
+70
+4d
+25
+00
+20
+20
+01
+03
+68
+00
+cd
+27
+c0
+01
+81
+1f
+68
+00
+cb
+f1
+2f
+ec
+00
+04
+20
+20
+81
+01
+68
+00
+cd
+27
+c0
+00
+81
+1e
+c0
+01
+01
+1f
+20
+60
+00
+00
+68
+00
+cc
+00
+c1
+ff
+80
+00
+20
+40
+01
+30
+24
+56
+01
+38
+20
+60
+00
+00
+78
+56
+7c
+00
+68
+00
+cd
+26
+c1
+80
+80
+00
+68
+00
+cd
+28
+c1
+80
+00
+00
+70
+4d
+27
+01
+70
+4c
+35
+04
+20
+20
+7f
+eb
+68
+00
+cd
+28
+20
+3a
+01
+3f
+1f
+e0
+ff
+ff
+60
+00
+cd
+28
+70
+4d
+27
+02
+70
+4c
+35
+04
+20
+20
+01
+f6
+70
+4d
+27
+03
+68
+00
+cd
+25
+24
+3a
+01
+12
+70
+4c
+35
+02
+20
+20
+01
+f6
+68
+00
+cc
+00
+c0
+ff
+81
+b6
+20
+40
+01
+4a
+20
+40
+01
+e4
+70
+4b
+f5
+01
+20
+60
+00
+00
+68
+01
+4d
+21
+20
+40
+7f
+9c
+20
+34
+01
+50
+68
+03
+cb
+8d
+20
+7a
+00
+00
+20
+20
+7f
+e7
+20
+40
+03
+b3
+70
+4c
+1c
+00
+1a
+20
+fe
+01
+60
+00
+cb
+f0
+20
+40
+01
+03
+60
+00
+cb
+8c
+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
+4b
+92
+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
+60
+20
+60
+00
+00
+70
+4b
+f9
+00
+d9
+60
+0d
+00
+34
+73
+02
+00
+20
+40
+01
+85
+68
+00
+cc
+2c
+c1
+00
+80
+00
+24
+2c
+01
+94
+24
+37
+81
+94
+20
+40
+01
+7f
+20
+40
+01
+af
+20
+40
+07
+6a
+68
+00
+cb
+ef
+1f
+e0
+fe
+01
+60
+00
+cb
+ef
+20
+40
+01
+82
+68
+00
+cc
+00
+c0
+ff
+81
+b8
+20
+40
+01
+22
+58
+00
+00
+00
+60
+01
+4b
+f6
+60
+00
+cb
+f8
+60
+00
+cd
+24
+70
+4b
+f5
+00
+20
+60
+00
+00
+df
+20
+00
+04
+d8
+a0
+4b
+8c
+20
+20
+7e
+c6
+68
+00
+cb
+f1
+c2
+82
+01
+0c
+20
+60
+00
+00
+78
+57
+fc
+00
+20
+40
+02
+5d
+68
+00
+cc
+2c
+c0
+00
+81
+92
+18
+00
+2a
+00
+68
+02
+4c
+18
+98
+00
+12
+00
+68
+08
+80
+17
+20
+40
+29
+1f
+20
+40
+29
+24
+20
+40
+02
+19
+20
+57
+82
+55
+20
+60
+00
+00
+20
+40
+02
+55
+20
+20
+01
+72
+68
+01
+4b
+f6
+1f
+e0
+fe
+01
+60
+01
+4b
+f6
+68
+00
+cb
+f7
+c2
+82
+2d
+d4
+68
+00
+cc
+00
+c0
+ff
+81
+9d
+20
+40
+01
+a5
+20
+20
+01
+68
+68
+00
+cb
+f6
+c1
+ff
+80
+00
+58
+00
+00
+00
+60
+01
+4b
+f6
+20
+20
+2d
+d4
+20
+40
+07
+9b
+20
+40
+07
+6e
+20
+20
+01
+f6
+68
+00
+cb
+f9
+1f
+e6
+7c
+0b
+24
+21
+01
+a2
+1f
+e0
+fe
+01
+60
+00
+cb
+f9
+c0
+01
+01
+07
+c0
+03
+01
+0c
+c0
+04
+01
+07
+c0
+06
+01
+0c
+20
+60
+00
+00
+20
+40
+01
+c9
+68
+00
+cb
+ee
+20
+7a
+00
+00
+98
+00
+72
+00
+d8
+c0
+4b
+6c
+d8
+a0
+4b
+ce
+20
+20
+7f
+01
+70
+11
+c5
+90
+20
+20
+07
+d5
+20
+40
+07
+67
+70
+11
+c5
+91
+20
+20
+07
+d5
+70
+11
+c5
+60
+20
+20
+07
+d5
+70
+4b
+68
+00
+70
+11
+c5
+70
+20
+20
+07
+d5
+79
+3f
+80
+26
+20
+40
+53
+ce
+d8
+e0
+00
+03
+20
+20
+43
+d2
+60
+08
+cb
+f0
+18
+42
+72
+00
+d8
+a0
+4b
+8c
+1a
+22
+0c
+00
+20
+20
+7f
+01
+68
+00
+cb
+6b
+1f
+e9
+7e
+00
+60
+00
+cb
+ee
+1f
+e0
+fe
+01
+d8
+c0
+4b
+6b
+98
+c0
+8c
+00
+e8
+c1
+80
+00
+60
+01
+cc
+2d
+68
+00
+cb
+6b
+1f
+e3
+7e
+00
+1f
+e1
+7e
+03
+60
+00
+cc
+33
+20
+60
+00
+00
+60
+02
+4c
+18
+da
+20
+00
+00
+df
+20
+00
+04
+d8
+c0
+4c
+18
+e8
+c0
+80
+00
+9a
+20
+a2
+00
+c2
+00
+01
+da
+1a
+22
+7e
+00
+60
+01
+4c
+a1
+68
+00
+cc
+a1
+68
+08
+cc
+a2
+98
+40
+fe
+00
+60
+00
+cc
+a3
+20
+60
+00
+00
+68
+00
+cb
+f0
+1f
+e0
+fe
+02
+60
+00
+cb
+f2
+68
+00
+cb
+f1
+60
+00
+cb
+ac
+68
+00
+cb
+f0
+1f
+e9
+fe
+00
+68
+08
+cb
+ef
+18
+41
+04
+03
+18
+43
+84
+00
+98
+41
+fe
+00
+68
+08
+cc
+2c
+98
+40
+fe
+00
+e0
+a0
+80
+00
+68
+00
+cb
+f0
+98
+00
+72
+00
+d8
+c0
+4b
+8c
+20
+20
+7f
+01
+68
+08
+cb
+fb
+20
+40
+01
+fa
+60
+08
+cb
+fb
+20
+60
+00
+00
+20
+40
+01
+fe
+18
+40
+84
+01
+18
+41
+04
+03
+20
+60
+00
+00
+68
+00
+cc
+18
+1f
+e1
+7e
+03
+1f
+ef
+a2
+04
+58
+00
+4c
+01
+9a
+20
+fe
+00
+98
+40
+8c
+00
+e8
+c0
+80
+00
+60
+00
+cb
+fa
+20
+60
+00
+00
+78
+44
+fc
+00
+78
+43
+fc
+00
+58
+55
+55
+55
+98
+00
+1e
+00
+68
+00
+cb
+fa
+1f
+ed
+84
+00
+79
+20
+04
+01
+18
+43
+1c
+00
+20
+60
+00
+00
+20
+40
+53
+c4
+68
+02
+4c
+18
+98
+00
+12
+00
+20
+40
+29
+18
+68
+08
+cb
+fa
+20
+40
+29
+1f
+58
+00
+05
+00
+20
+40
+2a
+8f
+20
+40
+29
+24
+20
+40
+02
+07
+78
+57
+fc
+00
+78
+26
+fc
+00
+78
+30
+fc
+00
+78
+50
+7c
+00
+78
+28
+7c
+00
+68
+01
+4b
+f3
+98
+00
+36
+00
+37
+c1
+84
+00
+24
+2c
+02
+59
+78
+46
+fc
+00
+78
+25
+fc
+00
+78
+23
+fc
+00
+78
+24
+fc
+00
+20
+40
+02
+52
+60
+00
+cc
+a4
+68
+08
+cc
+a3
+98
+46
+7c
+00
+24
+22
+82
+55
+20
+40
+02
+52
+60
+00
+cb
+6a
+68
+00
+cc
+36
+1f
+e6
+7c
+02
+20
+22
+82
+35
+68
+00
+cb
+6a
+68
+08
+cb
+f1
+a8
+40
+0e
+00
+24
+20
+82
+55
+20
+40
+02
+52
+e0
+a0
+80
+00
+1f
+e9
+7e
+00
+1f
+e1
+72
+1f
+20
+22
+82
+3d
+20
+40
+02
+52
+e0
+a0
+80
+00
+c2
+00
+02
+3a
+18
+a2
+22
+00
+20
+40
+02
+52
+60
+00
+cd
+2b
+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
+55
+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
+cd
+2b
+20
+40
+00
+6b
+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
+20
+02
+55
+20
+40
+29
+18
+68
+08
+cb
+fa
+20
+20
+29
+33
+20
+40
+53
+c4
+68
+02
+4c
+18
+98
+00
+12
+00
+20
+40
+02
+07
+20
+40
+02
+5a
+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
+cc
+a3
+08
+00
+86
+08
+68
+00
+cb
+f2
+98
+00
+72
+00
+d8
+c0
+4b
+ac
+e8
+c0
+80
+00
+08
+00
+86
+08
+c2
+00
+02
+73
+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
+4c
+11
+1c
+42
+7e
+00
+98
+46
+7c
+00
+24
+41
+2d
+18
+1f
+e2
+24
+00
+68
+02
+4c
+11
+68
+08
+cc
+15
+98
+40
+84
+00
+1a
+42
+7e
+00
+98
+46
+7c
+00
+24
+61
+00
+00
+79
+3f
+fe
+1c
+60
+02
+4c
+11
+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
+90
+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
+20
+60
+00
+00
+c6
+13
+00
+00
+20
+40
+03
+8b
+20
+40
+02
+a8
+68
+00
+c0
+40
+c3
+00
+02
+a5
+68
+00
+80
+a0
+24
+7a
+00
+00
+58
+00
+00
+00
+60
+04
+00
+a1
+20
+60
+00
+00
+20
+40
+02
+ba
+20
+40
+02
+a5
+20
+40
+3e
+bf
+20
+40
+03
+1a
+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
+08
+cb
+25
+79
+3f
+84
+07
+20
+20
+68
+06
+68
+00
+ca
+fe
+20
+7a
+00
+00
+20
+20
+05
+89
+20
+40
+34
+16
+20
+40
+74
+b9
+20
+35
+82
+d1
+68
+01
+c4
+a3
+60
+01
+cb
+63
+20
+40
+00
+01
+20
+40
+00
+81
+20
+40
+05
+b3
+c0
+02
+82
+ed
+20
+40
+02
+d2
+68
+00
+c7
+20
+68
+08
+c7
+03
+98
+46
+7c
+00
+20
+22
+82
+d5
+c0
+7f
+82
+d5
+20
+40
+05
+2d
+68
+00
+c2
+10
+c0
+19
+82
+d8
+c0
+1a
+02
+db
+20
+20
+04
+f2
+20
+20
+02
+f0
+68
+00
+cc
+a7
+60
+00
+c1
+de
+20
+60
+00
+00
+70
+47
+20
+02
+20
+40
+05
+2d
+20
+20
+03
+79
+68
+03
+41
+d0
+20
+3a
+33
+eb
+20
+20
+42
+74
+70
+4b
+67
+01
+70
+47
+9f
+01
+68
+01
+46
+a8
+60
+01
+46
+ae
+20
+40
+34
+18
+20
+40
+02
+e6
+58
+00
+00
+04
+e0
+c0
+80
+00
+d8
+c0
+43
+90
+20
+40
+05
+fd
+20
+20
+7d
+f4
+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
+e7
+70
+4b
+68
+00
+70
+11
+c5
+61
+20
+20
+07
+d5
+70
+42
+12
+76
+20
+20
+3d
+36
+20
+40
+02
+f0
+20
+40
+40
+c0
+20
+40
+40
+d9
+c0
+18
+02
+fe
+c0
+18
+83
+01
+20
+40
+40
+d1
+20
+00
+03
+e8
+20
+20
+02
+f4
+70
+4a
+fe
+01
+20
+40
+64
+0f
+20
+40
+02
+f2
+20
+20
+64
+11
+20
+40
+03
+06
+68
+00
+c6
+de
+20
+20
+40
+e1
+20
+40
+03
+06
+68
+00
+c6
+de
+c0
+38
+40
+e8
+70
+46
+e0
+01
+20
+60
+00
+00
+20
+40
+02
+f0
+58
+00
+80
+06
+20
+40
+64
+13
+20
+00
+2e
+e0
+20
+20
+03
+0b
+68
+00
+c7
+7a
+c0
+7f
+83
+0e
+20
+20
+05
+89
+68
+00
+c6
+e1
+60
+00
+c7
+7a
+20
+20
+05
+89
+20
+40
+02
+f0
+58
+00
+00
+06
+20
+40
+64
+14
+1f
+e1
+fe
+08
+1f
+ed
+7e
+00
+1f
+e0
+fe
+06
+20
+20
+64
+13
+70
+11
+c5
+80
+20
+20
+07
+d5
+68
+08
+cb
+44
+20
+20
+68
+25
+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
+77
+20
+40
+44
+23
+68
+01
+47
+78
+d8
+40
+aa
+55
+98
+46
+7c
+00
+20
+22
+83
+67
+60
+09
+47
+78
+20
+40
+44
+1c
+68
+00
+c6
+e1
+60
+00
+c7
+7a
+20
+40
+03
+77
+20
+40
+03
+46
+20
+40
+03
+5e
+20
+40
+03
+4a
+20
+40
+03
+55
+d8
+40
+00
+02
+da
+20
+47
+c2
+da
+40
+00
+5f
+68
+01
+c7
+00
+9a
+40
+fe
+00
+20
+40
+03
+4a
+20
+40
+03
+55
+20
+40
+03
+6e
+20
+20
+02
+f0
+d8
+40
+00
+04
+da
+20
+4c
+18
+da
+40
+00
+5b
+20
+60
+00
+00
+68
+01
+c7
+00
+60
+01
+c2
+32
+20
+40
+65
+2a
+20
+20
+03
+55
+1f
+e2
+26
+00
+1a
+22
+7e
+00
+1f
+e0
+ff
+fc
+1f
+e2
+24
+00
+ea
+42
+00
+00
+60
+02
+4b
+46
+1a
+62
+7e
+00
+20
+40
+65
+52
+68
+02
+4b
+46
+e2
+42
+00
+00
+20
+60
+00
+00
+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
+03
+55
+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
+77
+20
+40
+03
+5e
+20
+20
+65
+62
+20
+40
+03
+64
+20
+40
+05
+f6
+20
+40
+05
+ef
+20
+40
+43
+1a
+68
+02
+47
+7b
+60
+02
+4c
+18
+20
+60
+00
+00
+70
+0a
+a2
+b9
+20
+40
+03
+1c
+20
+00
+00
+64
+20
+40
+65
+0b
+da
+20
+4b
+46
+68
+08
+8a
+a2
+20
+40
+65
+56
+20
+00
+00
+64
+20
+60
+00
+00
+70
+0a
+a2
+ab
+20
+20
+03
+6f
+20
+40
+03
+7b
+20
+20
+01
+bb
+df
+20
+00
+02
+d8
+c0
+4c
+18
+20
+40
+7f
+e7
+58
+00
+ff
+ff
+e8
+c9
+00
+00
+98
+46
+7c
+00
+24
+42
+ff
+e9
+c2
+00
+03
+7f
+20
+60
+00
+00
+20
+40
+44
+01
+68
+01
+46
+9f
+20
+7a
+00
+00
+70
+4d
+30
+01
+58
+00
+00
+00
+60
+01
+4d
+31
+20
+60
+00
+00
+d8
+c0
+18
+00
+d8
+a0
+48
+0a
+20
+40
+03
+93
+d8
+c0
+19
+00
+20
+40
+03
+93
+d8
+c0
+1a
+00
+20
+40
+03
+93
+d8
+c0
+1b
+00
+df
+20
+00
+1b
+20
+20
+7f
+01
+d8
+c0
+48
+0a
+d8
+a0
+18
+00
+20
+40
+03
+93
+d8
+a0
+19
+00
+20
+40
+03
+93
+d8
+a0
+1a
+00
+20
+40
+03
+93
+d8
+a0
+1b
+00
+20
+20
+03
+93
+20
+40
+58
+92
+24
+7a
+00
+00
+68
+00
+c6
+c5
+1f
+e1
+7e
+03
+c1
+81
+80
+00
+68
+00
+c7
+9c
+20
+5a
+03
+f9
+68
+02
+46
+d3
+c2
+82
+c1
+79
+20
+40
+3f
+97
+24
+74
+00
+00
+20
+40
+03
+b0
+20
+40
+03
+b3
+20
+40
+03
+cf
+da
+20
+46
+9a
+20
+40
+7e
+3d
+20
+54
+03
+be
+20
+60
+00
+00
+70
+41
+72
+00
+70
+4b
+5a
+1e
+20
+60
+00
+00
+68
+00
+cb
+59
+c1
+80
+80
+00
+58
+00
+00
+00
+60
+00
+cb
+59
+60
+02
+46
+9b
+20
+20
+03
+06
+70
+47
+a0
+07
+70
+47
+a1
+04
+58
+00
+47
+a0
+60
+01
+42
+18
+20
+20
+7e
+38
+68
+00
+c7
+c1
+1f
+e0
+fe
+01
+60
+00
+c7
+c1
+20
+60
+00
+00
+da
+20
+46
+9a
+20
+40
+7e
+54
+20
+34
+03
+c6
+20
+60
+00
+00
+20
+40
+56
+52
+68
+00
+c7
+c1
+1f
+e6
+7c
+01
+24
+41
+56
+50
+68
+00
+c7
+c1
+20
+7a
+00
+00
+1f
+e0
+ff
+ff
+60
+00
+c7
+c1
+20
+20
+3f
+90
+68
+01
+46
+9f
+20
+7a
+00
+00
+70
+48
+06
+01
+70
+48
+07
+02
+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
+9c
+20
+5a
+03
+f9
+68
+02
+46
+d3
+c2
+82
+bf
+8a
+c2
+84
+bf
+8a
+20
+40
+3f
+97
+24
+74
+00
+00
+20
+40
+03
+b0
+20
+40
+03
+b3
+20
+40
+03
+cf
+68
+00
+cb
+03
+c0
+00
+83
+e8
+68
+00
+cb
+0a
+20
+7a
+00
+00
+20
+20
+3f
+81
+68
+00
+c6
+9a
+60
+00
+cb
+04
+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
+cb
+04
+e0
+a2
+80
+00
+20
+60
+00
+00
+70
+47
+9c
+01
+20
+40
+58
+14
+20
+20
+02
+fa
+20
+40
+7e
+34
+20
+40
+03
+ff
+20
+20
+3e
+e0
+68
+08
+cb
+23
+20
+40
+68
+0e
+68
+08
+c6
+e7
+20
+40
+05
+d5
+68
+08
+c6
+e7
+20
+40
+68
+1d
+20
+20
+84
+14
+20
+40
+05
+de
+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
+1f
+ef
+fe
+02
+1f
+e0
+fe
+02
+60
+01
+4b
+2b
+20
+40
+05
+3e
+20
+40
+3d
+7e
+20
+20
+03
+34
+20
+40
+05
+de
+20
+20
+3d
+62
+1a
+62
+7e
+00
+c0
+0a
+04
+28
+c0
+0a
+84
+2b
+c0
+14
+84
+2e
+c0
+19
+04
+30
+c0
+20
+04
+32
+c0
+02
+04
+34
+c0
+09
+84
+34
+c0
+13
+84
+36
+c0
+0c
+b3
+df
+c0
+10
+84
+38
+c0
+00
+84
+3a
+c0
+01
+04
+3f
+c0
+15
+84
+42
+c0
+1c
+84
+44
+c0
+1d
+04
+48
+c0
+1e
+04
+4b
+20
+20
+41
+7d
+20
+40
+02
+fa
+70
+11
+c5
+b0
+20
+20
+07
+d5
+20
+40
+04
+55
+70
+11
+c5
+a2
+20
+20
+07
+d5
+70
+0a
+99
+12
+20
+20
+7d
+8f
+70
+11
+c5
+b3
+20
+20
+07
+d5
+70
+11
+c5
+a1
+20
+20
+07
+d5
+70
+11
+c5
+a3
+20
+20
+07
+d5
+20
+40
+43
+8e
+20
+20
+33
+a7
+70
+11
+c5
+b1
+20
+20
+07
+d5
+20
+40
+02
+fa
+20
+40
+04
+f5
+20
+40
+05
+39
+70
+48
+09
+00
+20
+20
+42
+ca
+20
+40
+04
+55
+70
+11
+c5
+b4
+20
+20
+07
+d5
+70
+11
+c5
+b2
+20
+20
+07
+d5
+20
+40
+02
+fa
+20
+40
+05
+39
+70
+11
+c5
+92
+20
+20
+07
+d5
+20
+40
+04
+55
+70
+11
+c5
+a0
+20
+20
+07
+d5
+70
+4b
+60
+01
+20
+40
+04
+f5
+20
+40
+02
+fa
+20
+40
+05
+39
+20
+40
+3f
+8d
+20
+40
+43
+66
+20
+20
+03
+34
+20
+40
+04
+55
+70
+11
+c5
+a4
+20
+20
+07
+d5
+68
+00
+ca
+fe
+20
+7a
+00
+00
+70
+4a
+fe
+00
+20
+20
+03
+11
+20
+40
+05
+41
+20
+40
+05
+66
+20
+40
+05
+82
+20
+40
+04
+f8
+20
+40
+04
+bc
+20
+40
+04
+e7
+20
+40
+04
+c1
+20
+40
+42
+34
+20
+40
+04
+6b
+20
+40
+04
+b5
+20
+40
+04
+a1
+20
+40
+04
+9e
+20
+40
+04
+a7
+20
+40
+04
+ad
+20
+40
+04
+96
+20
+40
+42
+31
+20
+40
+04
+99
+20
+20
+42
+3a
+68
+08
+c6
+ed
+20
+40
+68
+1d
+20
+20
+84
+88
+68
+00
+cb
+69
+24
+3a
+04
+84
+68
+00
+c6
+d9
+c1
+00
+80
+00
+70
+46
+d9
+01
+70
+4b
+24
+01
+68
+00
+cb
+68
+20
+3a
+04
+82
+20
+40
+04
+7b
+70
+41
+bd
+00
+20
+40
+03
+34
+20
+40
+43
+c0
+20
+20
+43
+7e
+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
+4b
+68
+ff
+20
+60
+00
+00
+70
+4b
+69
+00
+70
+46
+d9
+01
+70
+4b
+24
+01
+20
+60
+00
+00
+68
+01
+46
+82
+c2
+85
+84
+8b
+70
+4b
+24
+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
+48
+09
+da
+40
+63
+7a
+20
+20
+33
+6d
+da
+60
+4b
+09
+da
+40
+04
+9c
+20
+20
+33
+6d
+70
+4b
+0a
+01
+20
+60
+00
+00
+da
+60
+46
+c6
+da
+40
+3d
+60
+20
+20
+33
+6d
+da
+60
+46
+ae
+da
+40
+04
+a4
+20
+20
+33
+74
+68
+00
+cb
+2e
+24
+7a
+00
+00
+20
+20
+42
+66
+da
+60
+4b
+5a
+da
+40
+04
+aa
+20
+20
+33
+6d
+68
+00
+c7
+c5
+60
+00
+c1
+72
+20
+20
+04
+ba
+68
+00
+cb
+61
+20
+7a
+00
+00
+da
+60
+4b
+66
+da
+40
+04
+b2
+20
+20
+33
+6d
+68
+00
+cb
+67
+24
+7a
+00
+00
+20
+20
+5b
+f5
+da
+60
+4b
+5b
+da
+40
+04
+b8
+20
+20
+33
+6d
+58
+24
+9f
+00
+60
+01
+cc
+1f
+70
+4b
+59
+01
+20
+60
+00
+00
+da
+60
+48
+07
+da
+40
+04
+bf
+20
+20
+33
+6d
+70
+48
+06
+00
+20
+60
+00
+00
+68
+00
+c7
+20
+c0
+01
+04
+cf
+68
+08
+c6
+ec
+20
+40
+68
+1d
+20
+20
+84
+c9
+20
+40
+43
+a9
+d8
+e0
+00
+09
+20
+20
+43
+d2
+70
+47
+9e
+28
+20
+40
+04
+d8
+20
+20
+43
+b0
+70
+47
+9e
+28
+20
+40
+04
+d3
+20
+20
+04
+d7
+68
+08
+c6
+ec
+20
+40
+68
+1d
+20
+20
+84
+cc
+20
+20
+43
+b0
+da
+60
+46
+da
+da
+40
+04
+d6
+20
+20
+33
+6d
+20
+40
+01
+bd
+20
+20
+05
+32
+da
+60
+46
+da
+da
+40
+04
+db
+20
+20
+33
+6d
+68
+02
+46
+d3
+c3
+84
+80
+00
+70
+4b
+68
+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
+cb
+2e
+24
+7a
+00
+00
+68
+00
+c7
+9d
+20
+7a
+00
+00
+68
+00
+c7
+9e
+20
+3a
+04
+f0
+1f
+e0
+ff
+ff
+60
+00
+c7
+9e
+20
+60
+00
+00
+70
+47
+9d
+00
+20
+20
+34
+0a
+70
+47
+9d
+01
+70
+47
+9e
+28
+20
+60
+00
+00
+70
+47
+9d
+00
+70
+47
+9e
+00
+20
+60
+00
+00
+68
+00
+cb
+24
+20
+7a
+00
+00
+68
+00
+cb
+27
+c0
+00
+04
+fe
+c0
+00
+85
+08
+20
+60
+00
+00
+20
+40
+05
+18
+68
+00
+cb
+2c
+1f
+e0
+fe
+01
+60
+00
+cb
+2c
+68
+08
+cb
+28
+98
+46
+7c
+00
+20
+42
+85
+06
+20
+60
+00
+00
+70
+4b
+2e
+00
+20
+20
+05
+26
+68
+00
+cb
+2a
+1f
+e0
+ff
+ff
+60
+00
+cb
+2a
+24
+7a
+00
+00
+68
+00
+cb
+29
+60
+00
+cb
+2a
+68
+00
+cb
+2d
+20
+3a
+05
+14
+68
+00
+cb
+2b
+20
+3a
+05
+24
+1f
+e0
+ff
+ff
+60
+00
+cb
+2b
+68
+00
+cb
+26
+c0
+00
+85
+26
+c0
+00
+05
+18
+20
+60
+00
+00
+70
+4b
+26
+01
+68
+00
+c7
+20
+c0
+01
+05
+1f
+68
+08
+cb
+25
+20
+40
+68
+0e
+68
+08
+cb
+25
+20
+20
+68
+25
+68
+08
+cb
+25
+79
+20
+04
+07
+20
+40
+68
+0e
+68
+08
+cb
+25
+20
+20
+68
+29
+58
+00
+00
+00
+60
+01
+cb
+2a
+68
+00
+cb
+2b
+24
+3a
+05
+2a
+70
+4b
+24
+00
+70
+4b
+27
+00
+70
+4b
+2c
+00
+70
+4b
+26
+00
+20
+20
+02
+b7
+70
+4b
+2e
+01
+70
+4b
+24
+01
+70
+4b
+27
+00
+70
+4b
+2c
+00
+20
+60
+00
+00
+70
+4b
+2e
+00
+70
+4b
+29
+03
+70
+4b
+2b
+01
+70
+4b
+2a
+05
+70
+4b
+24
+01
+70
+4b
+27
+01
+20
+60
+00
+00
+68
+00
+cb
+2c
+24
+7a
+00
+00
+68
+00
+cb
+2e
+24
+7a
+00
+00
+20
+20
+05
+24
+70
+4b
+29
+03
+70
+4b
+2d
+01
+20
+20
+05
+35
+68
+00
+c6
+ce
+1f
+e0
+fe
+01
+60
+00
+c6
+ce
+1f
+e6
+7c
+0a
+20
+61
+00
+00
+20
+40
+68
+a8
+70
+46
+ce
+00
+20
+40
+68
+eb
+20
+40
+69
+08
+60
+01
+47
+0f
+da
+20
+47
+09
+20
+40
+05
+59
+68
+00
+c2
+31
+c2
+80
+b4
+0a
+c3
+00
+05
+52
+70
+4a
+fd
+01
+20
+20
+43
+e7
+20
+40
+43
+e9
+68
+00
+ca
+fd
+20
+7a
+00
+00
+70
+4a
+fd
+00
+68
+00
+c6
+ef
+60
+00
+c7
+15
+20
+20
+05
+24
+ea
+24
+00
+00
+60
+04
+0a
+9a
+68
+09
+0a
+9c
+68
+01
+0a
+a0
+98
+46
+7c
+00
+24
+21
+69
+44
+68
+09
+0a
+9e
+98
+46
+7c
+00
+24
+21
+69
+40
+68
+00
+c2
+31
+79
+3f
+fe
+00
+60
+00
+c2
+31
+20
+60
+00
+00
+68
+00
+cb
+37
+24
+7a
+00
+00
+68
+02
+46
+d3
+c4
+02
+00
+00
+68
+01
+46
+82
+c3
+85
+80
+00
+c3
+83
+00
+00
+68
+00
+c6
+ef
+60
+00
+c7
+15
+58
+24
+9f
+00
+60
+01
+cc
+1f
+68
+00
+c6
+cf
+1f
+e0
+fe
+01
+60
+00
+c6
+cf
+c0
+02
+85
+24
+1f
+e6
+7c
+0a
+24
+21
+05
+78
+20
+60
+00
+00
+70
+46
+cf
+01
+20
+20
+05
+18
+68
+00
+cb
+36
+1f
+e0
+fe
+01
+60
+00
+cb
+36
+1f
+e6
+7c
+08
+20
+61
+00
+00
+70
+4b
+37
+00
+70
+4b
+35
+96
+20
+60
+00
+00
+da
+60
+4b
+35
+da
+40
+05
+85
+20
+20
+33
+6d
+58
+60
+48
+00
+60
+01
+cc
+1f
+70
+4b
+37
+01
+20
+20
+05
+56
+68
+00
+c6
+e0
+c0
+01
+05
+9f
+c0
+03
+05
+95
+68
+00
+c7
+7a
+20
+5a
+05
+9b
+68
+00
+c7
+7a
+c0
+00
+85
+92
+c0
+01
+bd
+8c
+20
+20
+3d
+88
+68
+00
+c7
+7f
+1f
+e0
+ff
+ff
+20
+20
+3d
+be
+68
+00
+c7
+7a
+20
+5a
+05
+9b
+68
+00
+c7
+7a
+c0
+00
+85
+9d
+c0
+01
+bd
+8c
+20
+20
+3d
+88
+70
+47
+7a
+01
+20
+60
+00
+00
+70
+46
+b5
+00
+20
+20
+3d
+c1
+68
+00
+c7
+7a
+c0
+00
+bd
+88
+c0
+00
+3d
+8a
+c0
+01
+85
+a4
+20
+20
+3d
+8e
+58
+00
+00
+05
+20
+20
+3d
+be
+78
+54
+7c
+00
+58
+00
+00
+00
+60
+03
+46
+9b
+20
+40
+05
+e3
+20
+40
+40
+79
+20
+40
+40
+7e
+20
+40
+05
+b1
+24
+34
+05
+af
+20
+20
+3f
+a0
+70
+4b
+36
+00
+20
+60
+00
+00
+20
+40
+05
+b3
+20
+20
+40
+9a
+da
+20
+00
+00
+20
+40
+05
+b9
+20
+40
+05
+b7
+20
+20
+40
+8e
+20
+40
+05
+c9
+20
+20
+05
+cf
+68
+08
+c6
+e2
+20
+40
+05
+de
+68
+08
+c6
+e2
+20
+40
+68
+1d
+79
+20
+a2
+00
+68
+08
+c6
+e3
+20
+40
+05
+de
+68
+08
+c6
+e3
+20
+40
+68
+1d
+79
+20
+a2
+01
+68
+08
+c6
+e4
+20
+40
+05
+de
+68
+08
+c6
+e4
+20
+40
+68
+1d
+79
+20
+a2
+02
+20
+60
+00
+00
+68
+08
+c6
+e5
+20
+40
+05
+d5
+68
+08
+c6
+e5
+20
+40
+68
+1d
+7d
+20
+a2
+03
+20
+20
+05
+de
+68
+08
+c6
+e6
+20
+40
+05
+d5
+68
+08
+c6
+e6
+20
+40
+68
+1d
+7d
+20
+a2
+04
+20
+20
+05
+de
+79
+3f
+84
+07
+d8
+a0
+80
+78
+20
+40
+68
+30
+79
+20
+04
+07
+d8
+a0
+80
+7c
+20
+40
+68
+30
+79
+3f
+84
+07
+d8
+a0
+80
+70
+20
+20
+68
+30
+79
+20
+04
+07
+d8
+a0
+80
+78
+20
+40
+68
+30
+79
+3f
+84
+07
+20
+20
+05
+d9
+68
+00
+c6
+e0
+20
+40
+3f
+c0
+78
+54
+7c
+00
+20
+20
+3f
+e7
+20
+40
+04
+f5
+28
+0f
+fe
+26
+20
+40
+81
+c0
+20
+20
+42
+6d
+70
+11
+c5
+81
+20
+20
+07
+d5
+70
+11
+c5
+50
+20
+20
+07
+d5
+20
+40
+03
+77
+d8
+40
+00
+02
+da
+20
+47
+c2
+da
+40
+00
+5f
+68
+01
+c7
+00
+9a
+40
+fe
+00
+20
+20
+65
+62
+20
+40
+03
+77
+d8
+40
+00
+01
+da
+20
+4b
+62
+da
+40
+00
+64
+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
+58
+00
+00
+00
+60
+01
+46
+ac
+20
+40
+03
+06
+68
+00
+c0
+92
+2f
+ef
+fe
+00
+20
+40
+c2
+d7
+20
+20
+05
+39
+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
+78
+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
+00
+6b
+20
+20
+54
+a3
+70
+11
+c5
+40
+20
+20
+07
+d5
+70
+11
+c5
+41
+20
+20
+07
+d5
+68
+00
+84
+56
+c2
+82
+86
+31
+20
+40
+07
+6a
+68
+00
+c7
+8e
+24
+3a
+06
+27
+68
+00
+84
+3f
+c3
+02
+06
+2b
+68
+00
+82
+da
+20
+3a
+06
+2b
+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
+86
+2e
+70
+47
+8e
+03
+20
+40
+58
+92
+20
+5a
+03
+c2
+20
+20
+56
+22
+20
+40
+06
+33
+20
+20
+06
+3f
+68
+00
+c6
+c5
+1f
+e1
+7e
+03
+c1
+81
+80
+00
+68
+00
+c7
+c1
+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
+20
+07
+6e
+68
+00
+c7
+9f
+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
+56
+20
+20
+56
+8d
+68
+00
+82
+db
+c0
+00
+86
+59
+20
+20
+5c
+65
+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
+62
+c0
+03
+06
+8f
+20
+20
+56
+98
+20
+40
+7e
+a5
+20
+40
+06
+40
+20
+40
+7e
+9f
+e8
+c1
+80
+00
+60
+01
+84
+77
+c0
+08
+06
+71
+1f
+ec
+84
+00
+18
+46
+7c
+24
+20
+21
+06
+7f
+d8
+40
+47
+c6
+60
+09
+44
+bc
+20
+40
+58
+ad
+58
+00
+8e
+7a
+60
+01
+44
+bc
+20
+60
+00
+00
+20
+40
+59
+fa
+20
+40
+58
+79
+18
+c0
+8c
+07
+e8
+c0
+80
+00
+c1
+88
+80
+00
+18
+c0
+8c
+05
+e8
+c1
+00
+00
+d8
+40
+18
+12
+98
+46
+7c
+00
+24
+62
+80
+00
+18
+c0
+8d
+fc
+58
+00
+00
+2b
+e0
+c1
+00
+00
+20
+60
+00
+00
+c0
+05
+06
+81
+20
+20
+58
+ad
+68
+09
+04
+78
+68
+00
+c4
+e9
+c2
+81
+86
+88
+68
+01
+04
+78
+c0
+09
+da
+76
+68
+09
+04
+78
+20
+20
+59
+bf
+68
+01
+44
+fa
+98
+46
+7c
+00
+24
+22
+86
+84
+20
+40
+5a
+42
+24
+34
+06
+84
+70
+04
+7a
+05
+20
+20
+5a
+77
+e8
+c0
+80
+00
+c0
+00
+86
+93
+c0
+02
+86
+95
+20
+20
+5a
+f6
+70
+4b
+67
+01
+20
+20
+5b
+09
+70
+11
+c5
+82
+20
+20
+07
+d5
+68
+00
+80
+16
+c0
+93
+d6
+f2
+20
+40
+06
+9d
+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
+a5
+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
+c5
+42
+20
+20
+07
+d5
+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
+bb
+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
+70
+11
+c5
+00
+20
+20
+07
+d5
+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
+d0
+20
+40
+24
+55
+24
+3a
+06
+c9
+c5
+16
+86
+d9
+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
+c9
+68
+02
+01
+65
+1f
+e0
+fe
+08
+60
+02
+01
+65
+20
+20
+21
+f8
+c5
+16
+26
+4d
+20
+20
+25
+8f
+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
+68
+00
+80
+30
+2f
+ef
+fe
+00
+20
+40
+86
+ea
+20
+20
+24
+8a
+68
+00
+80
+47
+2f
+ef
+fe
+03
+20
+40
+87
+6e
+24
+40
+87
+6a
+20
+20
+07
+78
+20
+40
+24
+f0
+24
+2c
+28
+f9
+20
+40
+29
+bb
+20
+40
+00
+6b
+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
+fe
+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
+07
+18
+20
+20
+2b
+be
+70
+00
+8a
+01
+70
+00
+8b
+00
+20
+60
+00
+00
+70
+11
+c5
+10
+20
+20
+07
+d5
+70
+11
+c5
+11
+20
+20
+07
+d5
+68
+00
+85
+52
+60
+00
+84
+c9
+c0
+09
+87
+23
+20
+20
+5d
+b4
+20
+40
+5d
+cf
+70
+4a
+ff
+01
+68
+00
+cb
+01
+20
+7a
+00
+00
+70
+4b
+01
+02
+20
+60
+00
+00
+70
+11
+c5
+20
+20
+20
+07
+d5
+20
+40
+62
+bc
+24
+7a
+00
+00
+68
+00
+80
+55
+20
+7a
+00
+00
+c0
+02
+07
+4d
+c0
+08
+07
+32
+20
+20
+63
+20
+68
+00
+c5
+5b
+c1
+00
+00
+00
+c0
+00
+87
+36
+20
+20
+63
+5f
+20
+74
+80
+00
+68
+00
+81
+6d
+c2
+80
+07
+3a
+20
+20
+63
+99
+68
+00
+cb
+01
+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
+cb
+00
+20
+7a
+00
+00
+70
+4b
+00
+00
+68
+02
+04
+e9
+d8
+40
+00
+14
+98
+40
+84
+00
+1c
+42
+7e
+00
+98
+46
+7c
+00
+24
+21
+07
+4b
+20
+20
+63
+49
+70
+4b
+00
+01
+20
+60
+00
+00
+70
+48
+09
+14
+20
+20
+63
+6f
+20
+40
+62
+bc
+24
+3a
+7d
+db
+68
+00
+8a
+99
+c5
+84
+fd
+d6
+c0
+0f
+87
+5a
+c0
+10
+07
+5d
+c0
+09
+07
+57
+20
+20
+7d
+ca
+20
+40
+58
+90
+24
+7a
+00
+00
+20
+20
+5a
+bf
+70
+01
+85
+34
+68
+03
+04
+4f
+20
+20
+07
+5f
+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
+34
+70
+4d
+2c
+01
+70
+4d
+29
+00
+20
+60
+00
+00
+68
+00
+cd
+29
+1f
+e0
+fe
+01
+60
+00
+cd
+29
+20
+60
+00
+00
+68
+00
+cd
+29
+1f
+e6
+7c
+02
+24
+41
+07
+76
+68
+00
+cd
+29
+c1
+00
+00
+00
+1f
+e0
+ff
+ff
+60
+00
+cd
+29
+20
+60
+00
+00
+70
+4d
+29
+03
+20
+60
+00
+00
+68
+01
+46
+82
+c3
+85
+80
+00
+c3
+83
+80
+00
+c3
+83
+00
+00
+da
+20
+4c
+b2
+20
+40
+02
+8d
+60
+08
+cd
+2a
+58
+00
+00
+82
+c5
+13
+07
+82
+58
+00
+00
+80
+98
+46
+7c
+00
+24
+21
+07
+9a
+68
+00
+cd
+29
+1f
+e6
+7c
+02
+24
+21
+07
+8a
+68
+00
+cd
+29
+c0
+00
+07
+9b
+20
+60
+00
+00
+68
+00
+cd
+29
+c1
+90
+00
+00
+70
+4d
+29
+00
+68
+08
+cd
+2a
+58
+00
+00
+77
+c5
+13
+07
+91
+58
+00
+00
+75
+98
+46
+7c
+00
+24
+61
+00
+00
+68
+00
+cd
+2c
+c0
+00
+07
+a2
+1f
+e0
+ff
+ff
+60
+00
+cd
+2c
+c0
+00
+07
+a2
+70
+41
+de
+00
+20
+60
+00
+00
+70
+4d
+29
+00
+68
+00
+cd
+2c
+c0
+01
+07
+a0
+1f
+e0
+fe
+01
+60
+00
+cd
+2c
+c0
+00
+87
+98
+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
+bc
+c0
+02
+07
+c1
+c0
+10
+07
+d0
+20
+40
+07
+c6
+70
+89
+55
+d0
+70
+89
+56
+e0
+70
+89
+58
+6c
+20
+20
+29
+4b
+20
+40
+07
+cb
+70
+89
+55
+d0
+70
+89
+56
+e0
+70
+89
+58
+3c
+20
+20
+29
+53
+20
+40
+07
+c6
+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
+4c
+fb
+70
+89
+4d
+ef
+70
+89
+4e
+ec
+70
+89
+4f
+5e
+20
+60
+00
+00
+70
+89
+56
+c2
+70
+89
+55
+d0
+20
+60
+00
+00
+18
+00
+2a
+08
+20
+20
+28
+fa
+68
+08
+91
+c5
+18
+51
+84
+00
+68
+00
+cb
+4f
+98
+46
+7c
+00
+20
+22
+87
+f2
+60
+08
+cb
+4f
+18
+40
+84
+01
+58
+00
+01
+00
+98
+4f
+84
+00
+68
+01
+cb
+50
+98
+46
+7e
+00
+68
+09
+cb
+53
+98
+40
+fe
+00
+1f
+e0
+ff
+fb
+60
+01
+cb
+56
+20
+40
+03
+77
+68
+01
+cb
+56
+d8
+40
+01
+00
+da
+20
+1f
+00
+20
+40
+65
+62
+68
+02
+1f
+00
+20
+3a
+07
+e5
+20
+40
+02
+f0
+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
+c5
+20
+20
+00
+01
+46
+dd
+aa
+55
+08
+00
+75
+41
+8f
+1a
+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
+2d
+4d
+00
+aa
+55
+01
+00
+de
+41
+00
+aa
+55
+0d
+00
+8f
+47
+4b
+ba
+55
+d0
+56
+e0
+57
+88
+58
+6c
+59
+10
+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
+02
+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
+00
+aa
+55
+01
+00
+72
+41
+20
+aa
+55
+01
+00
+c5
+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
+16
+00
+15
+45
+15
+54
+72
+75
+73
+74
+20
+42
+6c
+75
+65
+74
+6f
+6f
+74
+68
+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
+10
+4b
+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
+22
+00
+aa
+55
+02
+00
+87
+46
+08
+07
+aa
+55
+04
+00
+a8
+46
+50
+00
+70
+17
+aa
+55
+01
+00
+44
+4b
+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
+30
+4b
+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
+29
+01
+12
+01
+1e
+01
+aa
+55
+19
+00
+e0
+46
+00
+02
+04
+07
+17
+ff
+ff
+07
+03
+02
+ff
+ff
+05
+05
+ff
+06
+ff
+ff
+ff
+ff
+ff
+b0
+02
+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
+0c
+00
+7f
+47
+00
+01
+02
+03
+15
+1f
+2a
+3f
+04
+05
+07
+08
+aa
+55
+02
+00
+1b
+42
+13
+47
+aa
+55
+01
+00
+1a
+42
+01
+aa
+55
+40
+00
+c6
+47
+25
+00
+02
+03
+28
+01
+12
+26
+00
+02
+4d
+2a
+07
+00
+00
+00
+00
+00
+00
+00
+27
+00
+02
+02
+29
+02
+00
+00
+28
+00
+02
+08
+29
+02
+11
+01
+29
+00
+02
+03
+28
+01
+0e
+2a
+00
+02
+4d
+2a
+07
+00
+00
+00
+00
+00
+00
+00
+2b
+00
+02
+08
+29
+02
+11
+02
+aa
+55
+08
+00
+3c
+4b
+07
+02
+35
+12
+22
+aa
+01
+00
+aa
+55
+01
+00
+36
+4c
+01
+aa
+55
+01
+00
+f1
+4b
+01
+aa
+55
+01
+00
+35
+4c
+04
+aa
+55
+01
+00
+2c
+4c
+00
+aa
+55
+02
+00
+f3
+4b
+c0
+12
+aa
+55
+03
+00
+15
+4c
+19
+19
+1c
+aa
+55
+10
+00
+01
+4c
+00
+13
+2c
+42
+06
+15
+36
+48
+0f
+1a
+3a
+4c
+11
+23
+31
+4d
+aa
+55
+01
+00
+00
+4c
+ff
+aa
+55
+04
+00
+fc
+4b
+20
+15
+10
+05
+aa
+55
+0a
+00
+9e
+11
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
+03
+00
+1f
+4c
+00
+48
+60
+aa
+55
+08
+00
+20
+47
+02
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+aa
+55
+03
+00
+00
+47
+00
+50
+00
+aa
+55
+02
+00
+03
+42
+90
+1f
+aa
+55
+01
+00
+11
+42
+80
+aa
+55
+01
+00
+1f
+47
+00
+aa
+55
+01
+00
+db
+46
+01
+aa
+55
+01
+00
+8e
+47
+03
+aa
+55
+06
+00
+4b
+4b
+ff
+ff
+ff
+ff
+ff
+ff
+aa
+55
+01
+00
+23
+4b
+18
+aa
+55
+01
+00
+25
+4b
+1b
+aa
+55
+02
+00
+28
+4b
+14
+03
+aa
+55
+04
+00
+4f
+4b
+ff
+00
+00
+00
+aa
+55
+01
+00
+68
+4b
+ff
+aa
+55
+03
+00
+50
+4b
+c8
+2f
+00
+ff
+20
+20
+00
+40
+c0
+58
+00
+07
+c0
+58
+80
+0e
+c0
+59
+00
+14
+c0
+59
+80
+19
+c0
+5a
+00
+20
+20
+60
+00
+00
+70
+4b
+61
+01
+68
+00
+c7
+9f
+24
+3a
+00
+0b
+70
+4b
+66
+14
+20
+40
+04
+f5
+20
+40
+03
+b9
+20
+20
+41
+c3
+68
+00
+c8
+08
+c1
+01
+00
+00
+1f
+e0
+fe
+01
+60
+00
+c8
+08
+70
+41
+e3
+12
+20
+20
+34
+0e
+68
+00
+c8
+08
+c1
+81
+00
+00
+70
+48
+08
+00
+70
+41
+e3
+0e
+20
+20
+34
+0e
+68
+00
+c7
+9f
+c0
+00
+80
+1c
+20
+20
+00
+1e
+20
+40
+04
+2e
+70
+46
+c6
+05
+d8
+e0
+00
+01
+20
+20
+41
+b9
+70
+4a
+ff
+00
+70
+4b
+01
+00
+70
+4b
+0a
+00
+20
+20
+41
+d9
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+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
+00
+07
+c0
+50
+80
+0d
+c0
+51
+00
+20
+c0
+51
+80
+19
+c0
+52
+00
+29
+20
+60
+00
+00
+70
+4d
+30
+00
+20
+40
+02
+d2
+20
+40
+01
+c0
+70
+41
+bd
+00
+20
+40
+02
+aa
+20
+20
+04
+f2
+68
+01
+45
+09
+c1
+00
+00
+00
+68
+00
+84
+41
+1f
+eb
+7e
+00
+1f
+e6
+7c
+0c
+20
+61
+00
+00
+58
+00
+00
+09
+60
+01
+44
+96
+60
+01
+44
+98
+20
+40
+04
+2e
+70
+47
+c4
+01
+20
+60
+00
+00
+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
+4b
+61
+00
+58
+00
+00
+07
+60
+01
+44
+96
+60
+01
+44
+98
+70
+47
+c4
+00
+70
+47
+9c
+00
+20
+40
+03
+b9
+20
+40
+58
+16
+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
+3e
+9f
+68
+08
+cb
+23
+20
+40
+68
+29
+20
+40
+02
+aa
+20
+40
+03
+6e
+68
+10
+80
+81
+1f
+e1
+7e
+f7
+60
+10
+80
+81
+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
+00
+00
+00
+00
+20
+20
+00
+40
+c0
+48
+00
+05
+c0
+48
+80
+20
+c0
+49
+00
+30
+20
+60
+00
+00
+68
+00
+cb
+f5
+c0
+00
+ff
+e7
+68
+00
+cc
+00
+c0
+00
+80
+0c
+c0
+01
+00
+10
+c0
+01
+80
+13
+20
+20
+2a
+8c
+70
+4c
+00
+11
+70
+11
+9e
+aa
+20
+40
+05
+32
+20
+20
+00
+15
+70
+4c
+00
+12
+70
+11
+9e
+55
+20
+20
+00
+15
+70
+4c
+00
+13
+70
+11
+9e
+22
+68
+00
+cb
+f1
+1f
+e1
+7e
+07
+60
+00
+91
+9f
+68
+02
+4c
+27
+60
+02
+11
+a0
+70
+11
+a4
+00
+da
+20
+11
+9e
+d8
+40
+00
+07
+20
+40
+01
+c4
+20
+40
+01
+47
+20
+20
+7f
+e7
+68
+00
+cc
+00
+c1
+7f
+80
+00
+c0
+08
+80
+26
+c0
+09
+00
+28
+c0
+09
+80
+2a
+20
+60
+00
+00
+70
+4c
+00
+02
+20
+20
+01
+79
+70
+4c
+00
+03
+20
+20
+01
+79
+70
+4c
+00
+ff
+70
+0a
+99
+39
+20
+40
+7d
+86
+68
+02
+4b
+d0
+20
+40
+01
+d6
+20
+20
+01
+79
+70
+47
+8b
+01
+d8
+e0
+00
+03
+20
+40
+43
+d2
+58
+00
+00
+00
+60
+01
+47
+07
+70
+46
+a7
+00
+20
+40
+40
+5d
+20
+40
+04
+f5
+20
+40
+02
+d2
+68
+02
+4c
+18
+60
+02
+47
+7b
+20
+40
+43
+66
+20
+20
+03
+34
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+20
+20
+00
+40
+c0
+40
+00
+08
+c0
+40
+80
+04
+20
+60
+00
+00
+20
+40
+68
+a2
+58
+00
+11
+22
+60
+01
+47
+c2
+20
+60
+00
+00
+20
+40
+00
+fe
+20
+40
+3e
+6e
+68
+08
+cb
+23
+20
+40
+68
+0e
+68
+08
+cb
+44
+20
+40
+68
+0e
+20
+40
+3e
+1e
+20
+40
+00
+20
+58
+00
+00
+00
+60
+01
+41
+54
+20
+40
+68
+a2
+20
+40
+3e
+54
+20
+40
+58
+10
+20
+40
+58
+39
+20
+40
+58
+2c
+20
+40
+58
+18
+20
+40
+05
+eb
+20
+40
+03
+77
+20
+40
+03
+42
+68
+01
+c7
+00
+9a
+40
+fe
+00
+20
+40
+65
+62
+20
+40
+03
+2a
+20
+60
+00
+00
+20
+40
+74
+b9
+d8
+c0
+8c
+00
+d8
+a0
+48
+76
+df
+20
+01
+71
+20
+40
+7f
+01
+58
+0f
+02
+09
+e0
+a1
+80
+00
+58
+12
+00
+09
+e0
+a1
+80
+00
+58
+10
+02
+09
+e0
+a1
+80
+00
+58
+00
+00
+09
+e0
+a1
+80
+00
+d8
+c0
+8d
+71
+df
+20
+01
+09
+20
+40
+7f
+01
+70
+48
+8d
+00
+70
+48
+85
+6d
+58
+00
+40
+1f
+60
+01
+49
+db
+58
+00
+6d
+04
+60
+01
+4a
+44
+58
+00
+16
+b0
+60
+01
+4a
+4a
+58
+00
+48
+76
+60
+01
+45
+75
+20
+60
+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
+38
+00
+03
+20
+60
+00
+00
+79
+3f
+80
+26
+20
+40
+00
+2d
+20
+40
+00
+1a
+70
+4c
+1d
+00
+20
+40
+05
+32
+20
+00
+07
+d0
+68
+01
+4c
+1d
+c0
+7f
+ad
+d4
+20
+40
+01
+85
+24
+2c
+00
+23
+24
+37
+80
+23
+20
+40
+01
+af
+20
+40
+02
+d2
+68
+02
+4c
+18
+68
+0a
+4b
+fc
+98
+46
+7c
+00
+20
+22
+80
+37
+79
+20
+00
+26
+58
+00
+00
+00
+60
+01
+4c
+1d
+20
+40
+2f
+20
+20
+40
+01
+7f
+20
+20
+03
+87
+70
+11
+9e
+ff
+68
+00
+cb
+f1
+60
+00
+91
+9f
+68
+02
+4c
+27
+60
+02
+11
+a0
+d8
+40
+00
+06
+da
+20
+11
+9e
+20
+40
+01
+c4
+20
+20
+01
+e4
+68
+00
+cc
+1d
+1f
+e0
+fe
+01
+60
+00
+cc
+1d
+68
+00
+cd
+2e
+1f
+e0
+fe
+01
+1f
+e1
+7e
+01
+60
+00
+cd
+2e
+c0
+00
+00
+33
+c0
+00
+80
+35
+20
+60
+00
+00
+70
+41
+de
+20
+58
+00
+0f
+0f
+60
+01
+4c
+18
+e0
+a1
+00
+00
+20
+40
+01
+d7
+20
+20
+01
+f6
+20
+40
+00
+2d
+20
+20
+00
+08
+20
+40
+00
+3b
+20
+20
+00
+08
+79
+20
+00
+26
+20
+40
+00
+3b
+70
+4c
+00
+01
+20
+60
+00
+00
+70
+41
+de
+20
+70
+4b
+ef
+00
+70
+4b
+fa
+4e
+68
+02
+4b
+fc
+20
+20
+01
+d6
+20
+20
+00
+40
+c0
+30
+00
+04
+c0
+30
+80
+26
+20
+60
+00
+00
+79
+3f
+80
+26
+20
+40
+01
+d7
+20
+40
+01
+f6
+68
+00
+cc
+00
+c1
+ff
+80
+00
+20
+40
+00
+18
+58
+00
+00
+00
+60
+01
+4c
+1d
+20
+00
+07
+d0
+68
+00
+cc
+1d
+c0
+7f
+ad
+d4
+20
+40
+01
+85
+24
+2c
+00
+21
+24
+37
+80
+21
+79
+20
+00
+26
+58
+00
+00
+00
+60
+01
+4c
+1d
+20
+40
+2f
+20
+20
+40
+01
+7f
+20
+20
+03
+87
+70
+11
+9e
+ff
+68
+00
+cb
+f1
+60
+00
+91
+9f
+68
+02
+4c
+27
+60
+02
+11
+a0
+d8
+40
+00
+06
+da
+20
+11
+9e
+20
+40
+01
+c4
+20
+20
+01
+e4
+68
+01
+4c
+1d
+1f
+e0
+fe
+01
+60
+01
+4c
+1d
+20
+40
+01
+f6
+20
+20
+00
+0c
+68
+00
+c7
+20
+c1
+00
+80
+00
+c6
+13
+00
+00
+d8
+e0
+00
+03
+20
+40
+43
+ce
+58
+00
+00
+00
+60
+01
+46
+ae
+60
+00
+c6
+b4
+60
+01
+4c
+1d
+20
+40
+42
+ca
+20
+20
+00
+31
+79
+20
+00
+26
+20
+40
+00
+35
+70
+4c
+00
+01
+20
+60
+00
+00
+70
+41
+de
+20
+70
+4b
+ef
+00
+70
+4b
+fa
+4e
+68
+02
+4b
+fc
+20
+20
+01
+d6
+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
+28
+00
+03
+20
+60
+00
+00
+70
+4b
+67
+00
+70
+4b
+62
+5a
+20
+40
+02
+d2
+70
+47
+20
+01
+70
+47
+9c
+00
+68
+01
+46
+82
+c2
+85
+80
+14
+68
+02
+46
+d3
+c3
+0c
+00
+14
+20
+40
+05
+ef
+68
+09
+47
+c2
+18
+40
+84
+01
+60
+09
+47
+c2
+60
+09
+44
+a1
+20
+40
+03
+39
+18
+0a
+7e
+00
+60
+00
+c4
+a0
+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
+00
+20
+40
+fd
+dd
+20
+20
+05
+32
+70
+47
+9f
+00
+20
+40
+02
+e6
+58
+00
+00
+05
+e0
+c0
+80
+00
+d8
+c0
+4b
+10
+20
+40
+05
+fd
+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
+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
+2c
+20
+60
+00
+00
+20
+40
+00
+0e
+20
+20
+55
+7d
+68
+00
+c7
+c5
+60
+00
+c1
+72
+70
+47
+c4
+00
+20
+60
+00
+00
+70
+47
+c4
+01
+20
+60
+00
+00
+68
+00
+c3
+d6
+1f
+e6
+7c
+0c
+24
+21
+00
+0c
+68
+00
+c3
+d8
+68
+08
+c7
+c5
+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
+9f
+24
+7a
+00
+00
+68
+00
+84
+78
+1f
+e6
+7e
+1a
+24
+62
+80
+00
+70
+46
+c6
+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
+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
+cb
+01
+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
+cb
+00
+20
+7a
+00
+00
+70
+4b
+00
+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
+4b
+00
+01
+20
+60
+00
+00
+70
+48
+09
+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
+03
+20
+60
+00
+00
+78
+54
+7c
+00
+20
+40
+62
+c1
+68
+00
+80
+48
+20
+7a
+00
+00
+c2
+83
+80
+0c
+c0
+01
+80
+1c
+c0
+18
+80
+18
+c0
+0b
+80
+1a
+20
+20
+60
+10
+c0
+42
+00
+0f
+c0
+41
+80
+12
+20
+20
+60
+3f
+20
+40
+00
+15
+68
+00
+80
+48
+20
+20
+60
+99
+20
+40
+00
+15
+68
+00
+80
+48
+20
+20
+61
+0d
+68
+00
+c6
+5a
+20
+3a
+61
+2b
+20
+20
+61
+24
+70
+4b
+01
+01
+20
+20
+61
+c3
+70
+4b
+09
+04
+20
+20
+61
+a4
+18
+00
+7e
+02
+20
+40
+62
+98
+68
+00
+80
+49
+e0
+a0
+80
+00
+60
+00
+ca
+fc
+20
+40
+62
+a7
+68
+00
+ca
+fc
+c0
+17
+00
+25
+20
+20
+60
+51
+68
+00
+ca
+ff
+20
+7a
+00
+00
+70
+4a
+ff
+00
+68
+00
+cb
+01
+c1
+81
+00
+00
+70
+4b
+00
+01
+1c
+42
+7e
+00
+60
+02
+04
+e9
+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
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+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
+08
+00
+04
+c0
+08
+80
+1b
+20
+60
+00
+00
+70
+48
+08
+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
+6e
+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
+40
+05
+b3
+c0
+02
+84
+f2
+20
+20
+33
+a7
+68
+01
+02
+64
+1f
+e2
+0c
+00
+e8
+c0
+80
+00
+60
+00
+cb
+02
+1f
+e1
+04
+0f
+1f
+f1
+fe
+00
+c0
+03
+80
+23
+20
+20
+4d
+39
+20
+40
+4d
+53
+70
+4b
+03
+00
+68
+00
+cb
+02
+2f
+ef
+fe
+00
+20
+60
+80
+00
+70
+4b
+03
+01
+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
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+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
+03
+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
+0e
+79
+3f
+80
+2c
+20
+40
+24
+55
+24
+3a
+00
+07
+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
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+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
+ac
+08
Index: YDN_1066_227D/output/memmap.format
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/output/memmap.format	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/output/memmap.format	(working copy)
@@ -0,0 +1,1941 @@
+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_zcode_temp_param0//zcode num
+0x11c6 mem_zcode_temp_param1//patch ram func addr
+0x11c8 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
+0x479c mem_mouse_clear_sensor_data_flag
+0x479d mem_mouse_null_enter_hibernate_flag
+0x479e mem_mouse_null_enter_hibernate_timer
+0x479f mem_mouse_le_reconnect_flag
+0x47a0 mem_mouse_data_queue
+0x47c1 mem_mouse_data_queue_num
+0x47c2 mem_random_addr_increase_count
+0x47c4 mem_mouse_le_conn_param_reject
+0x47c5 mem_lpm_mult_init
+0x47c6 mem_mouse_le_uuid_sup
+0x4806 mem_mouse_wheel_trigger
+0x4807 mem_mouse_wheel_trigger_timer
+0x4808 mem_mouse_enter_sniff_count
+0x4809 mem_mouse_send_switch_req_timer
+0x480a mem_le_tx_buffer0_omemalloc
+0x4825 mem_le_tx_buffer1_omemalloc
+0x4840 mem_le_tx_buffer2_omemalloc
+0x485b mem_le_tx_buffer3_omemalloc
+0x4876 mem_mouse_uuid_list
+0x4afc mem_lmi_opcode_temp
+0x4afd mem_mouse_adc_last_low_voltage_flag
+0x4afe mem_mouse_init_sensor_reset_flag
+0x4aff mem_bt_rcvd_switch_req_accept
+0x4b00 mem_bt_send_max_slot_req_accept_after_switch
+0x4b01 mem_bt_send_lmp_setup_complete
+0x4b02 mem_l2cap_rcv
+0x4b03 mem_mouse_bt_boot_mode
+0x4b04 mem_mouse_bt_boot_data
+0x4b09 mem_mouse_bt_send_first_package_timer
+0x4b0a mem_mouse_bt_send_first_package_flag
+0x4b0b mem_mouse_asm_flag
+0x4b0c mem_mouse_x_pre
+0x4b0e mem_mouse_y_pre
+0x4b10 mem_le_adv_swift_pair
+0x4b23 mem_24g_sw_gpio
+0x4b24 mem_mouse_multi_led_blink_enable
+0x4b25 mem_mouse_multi_led_gpio
+0x4b26 mem_mouse_multi_led_state
+0x4b27 mem_mouse_multi_led_type
+0x4b28 mem_mouse_multi_led_on_timer_init
+0x4b29 mem_mouse_multi_led_blink_timer_init
+0x4b2a mem_mouse_multi_led_blink_timer
+0x4b2b mem_mouse_multi_led_blink_count
+0x4b2c mem_mouse_multi_led_on_timer
+0x4b2d mem_mouse_multi_led_blink_count_limited
+0x4b2e mem_mouse_multi_led_on_poweron2s_flag
+0x4b2f mem_discovery_on_flag
+0x4b30 mem_bt_ui_button_timeout
+0x4b31 mem_bt_ui_button_count
+0x4b32 mem_mouse_priority_bb_event
+0x4b33 mem_mouse_le_parse_l2cap_ptr
+0x4b35 mem_low_power_no_data_off_led_time
+0x4b36 mem_low_power_check_count
+0x4b37 mem_low_power_led_blink_flag
+0x4b38 mem_mouse_3065xy_dpi_seting
+0x4b38 mem_3065xy_dpi_1
+0x4b39 mem_3065xy_dpi_2
+0x4b3a mem_3065xy_dpi_3
+0x4b3b mem_3065xy_dpi_4
+0x4b3c mem_le_att_pnp_id_len
+0x4b3d mem_le_att_pnp_id
+0x4b44 mem_flash_ncs_gpio
+0x4b45 mem_select_ui_button_count
+0x4b46 mem_write_flash_head_temp
+0x4b4a mem_mouse_poweron_led_timer
+0x4b4b mem_mouse_24g_addr_init
+0x4b4f mem_zcode_current_number
+0x4b50 mem_xip_flash_offset
+0x4b53 mem_flash_start_addr
+0x4b56 mem_flash_address
+0x4b59 mem_mouse_long_mult_flag
+0x4b5a mem_mouse_le_current_mult_timer
+0x4b5b mem_24g_long_sleep_param_update_timer
+0x4b5c mem_mouse_bt_led_gpio
+0x4b5d mem_mouse_button_select_device_timer_init
+0x4b5e mem_mouse_button_select_device_count
+0x4b5f mem_mouse_multi_led_on_timer_init1
+0x4b60 mem_mouse_24g_attempt_success_flag
+0x4b61 mem_mouse_le_bb_connected_flag
+0x4b62 mem_mouse_fast_conn_flag
+0x4b63 mem_le_lap_high_3B
+0x4b66 mem_mouse_send_secutiry_request_timer
+0x4b67 mem_le_send_security_request_flag
+0x4b68 mem_mouse_long_button_select_device
+0x4b69 mem_mouse_select_device_button_wakeup_flag
+0x4b6a mem_24g_rxbuf
+0x4b8c mem_24g_txbuf
+0x4bac mem_24g_txpayload
+0x4bce mem_24g_rxpayload
+0x4bee mem_24g_rxdata_length
+0x4bef mem_24g_pid
+0x4bf0 mem_24g_datalen
+0x4bf1 mem_24g_data_type
+0x4bf2 mem_24g_txlen
+0x4bf3 mem_24g_rx_window
+0x4bf5 mem_24g_ensure
+0x4bf6 mem_24g_txfail_cnt
+0x4bf8 mem_24g_get_ack_fail
+0x4bf9 mem_24g_retry
+0x4bfa mem_24g_ch
+0x4bfb mem_24g_current_ch_number
+0x4bfc mem_24g_paring_addr
+0x4c00 mem_24g_pairing_sm
+0x4c01 mem_24g_ch_map1
+0x4c05 mem_24g_ch_map2
+0x4c09 mem_24g_ch_map3
+0x4c0d mem_24g_ch_map4
+0x4c11 mem_24g_tx_btclk
+0x4c15 mem_24g_interval
+0x4c16 mem_24g_interval_min
+0x4c17 mem_24g_interval_max
+0x4c18 mem_24g_addr
+0x4c1c mem_24g_abort_pac
+0x4c1d mem_24g_check_dongle_times
+0x4c1f mem_24g_enter_hibernate
+0x4c27 mem_24g_device_addr
+0x4c2b mem_24g_pac_index
+0x4c2c mem_24g_no_ack
+0x4c2d mem_24g_sta_crc
+0x4c30 mem_24g_last_crc
+0x4c33 mem_24g_sta_pid
+0x4c34 mem_24g_last_pid
+0x4c35 mem_24g_max_retry
+0x4c36 mem_24g_mode
+0x4c37 mem_24g_rxdata_temp
+0x4c59 mem_24g_rx_addr
+0x4c5d mem_dongle_mode_init
+0x4c5e mem_dongle_work_mode
+0x4c5f mem_dongle_ms_bind_step
+0x4c60 mem_dongle_kb_bind_step
+0x4c61 mem_dongle_bind_device_status
+0x4c62 mem_24g_bind_payload
+0x4c6a mem_24g_abort_packet
+0x4c6b mem_24g_rf_laststa
+0x4c6c mem_24g_hop_btclk
+0x4c70 mem_24g_hop_interval
+0x4c71 mem_24g_mode_switch
+0x4c72 mem_24g_ackpayload_enable
+0x4c73 mem_24g_hop_packet
+0x4c74 mem_24g_pair_mode
+0x4c75 mem_24g_nodata_timer_enable
+0x4c76 mem_24g_time_slice
+0x4c77 mem_24g_kb_data_sta_data
+0x4c7f mem_24g_kb_data_last_data
+0x4c87 mem_24g_kb_multikey_sta_data
+0x4c8a mem_24g_kb_multikey_last_data
+0x4c8d mem_24g_kb_blank_data_enable
+0x4c8e mem_24g_kb_mul_blank_data_enable
+0x4c8f mem_24g_ms_blank_data_enable
+0x4c90 mem_24g_kb_addr
+0x4c94 mem_24g_ms_addr
+0x4c98 mem_24g_dg_last_ch
+0x4c99 mem_24g_dg_ch_number
+0x4c9a mem_24g_dg_config_ch_once
+0x4c9b mem_24g_kb_last_ch
+0x4c9c mem_24g_kb_ch_number
+0x4c9d mem_24g_kb_config_ch_once
+0x4c9e mem_24g_ms_last_ch
+0x4c9f mem_24g_ms_ch_number
+0x4ca0 mem_24g_ms_config_ch_once
+0x4ca1 mem_24g_syncword
+0x4ca3 mem_24g_syncword_crc8
+0x4ca4 mem_24g_get_syncword_crc8
+0x4ca5 mem_24g_ota_sta_pid
+0x4ca7 mem_tx_power_temp
+0x4ca8 mem_rssi_hex
+0x4ca9 mem_rssi_noise_avg
+0x4caa mem_rssi_noise_index
+0x4cab mem_rssi_signal_index
+0x4cac mem_rssi_noise_dg_avg
+0x4cad mem_rssi_noise_kb_avg
+0x4cae mem_rssi_noise_ms_avg
+0x4caf mem_rssi_noise_dg_index
+0x4cb0 mem_rssi_noise_kb_index
+0x4cb1 mem_rssi_noise_ms_index
+0x4cb2 mem_rssi_signal_buf
+0x4cba mem_queue_ele_num
+0x4cbb mem_queue_read
+0x4cbd mem_queue_write
+0x4cbf mem_queue_start
+0x4cbf mem_data_ele0
+0x4cdf mem_data_ele1
+0x4cff mem_data_ele2
+0x4d1f mem_queue_end
+0x4d1f mem_queue_temp
+0x4d21 mem_cb_24g_data
+0x4d23 mem_24g_hop_fastly_cnt
+0x4d24 mem_24g_hop_pac_retry
+0x4d25 mem_24g_rf_hop_ch
+0x4d26 mem_24g_rf_last_sta
+0x4d27 mem_24g_rf_work_stage
+0x4d28 mem_24g_sync_cnt
+0x4d29 mem_power_ctrl_pac_succ_cnt
+0x4d2a mem_rssi_avg_received
+0x4d2b mem_rssi_hex_received
+0x4d2c mem_power_ctrl_level
+0x4d2d mem_seqi
+0x4d2e mem_24g_auto_paring_switch
+0x4d2f mem_24g_paccnt
+0x4d30 mem_24g_transmit_by_interrupt
+0x4d31 mem_24g_transmit_by_interrupt_exit_count
+0x4d33 mem_24g_transmit_by_interrupt_exit_count_init
Index: YDN_1066_227D/output/otp.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/output/otp.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/output/otp.dat	(working copy)
@@ -0,0 +1,8 @@
+00
+02
+aa
+55
+00
+00
+b3
+23
Index: YDN_1066_227D/output/program.lis
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/output/program.lis	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/output/program.lis	(working copy)
@@ -0,0 +1,36189 @@
+include "bt_format "
+org 0x0000
+
+p_start:
+0000 20200040 branch p_patch_array 
+
+p_zcode:
+
+p_wake_from_power:
+0001 204003b9 call p_mouse_data_init 
+0002 6800c1de fetch 1 ,mem_tx_power 
+0003 6000cca7 store 1 ,mem_tx_power_temp 
+0004 20400767 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 6800cb30 fetch 1 ,mem_bt_ui_button_timeout 
+0008 6000cb31 store 1 ,mem_bt_ui_button_count 
+0009 204043ca call mouse_bt_discovery_button_down_disable 
+000a 204002f0 call p_mouse_spi_init 
+000b 2040000f call p_mouse_cb_fuction 
+000c 20400022 call p_mouse_wakeup_from_power 
+000d 20400075 call p_mouse_select_device_button_wakeup_check 
+000e 20200318 branch p_mouse_setting_config 
+
+p_mouse_cb_fuction:
+000f 58000384 setarg p_mouse_g24_package_data 
+0010 60014d21 store 2 ,mem_cb_24g_data 
+0011 5800039e setarg p_mouse_le 
+0012 600141ef store 2 ,mem_cb_le_process 
+0013 580006ac setarg p_le_mouse_bb_event_connect_complete 
+0014 600141f9 store 2 ,mem_cb_att_write 
+0015 580003d4 setarg p_mouse_bt 
+0016 600141f1 store 2 ,mem_cb_bt_process 
+0017 5800029e setarg p_mouse_before_lpm 
+0018 600141ed store 2 ,mem_cb_before_lpm 
+0019 58000416 setarg p_mouse_priority_bb_event 
+001a 600141f5 store 2 ,mem_cb_bb_event_process 
+001b 580003fc setarg p_mouse_idle 
+001c 600141f3 store 2 ,mem_cb_idle_process 
+001d 58000452 setarg p_mouse_before_hibernate 
+001e 600141eb store 2 ,mem_cb_before_hibernate 
+001f 58000459 setarg p_mouse_bb_event_timer 
+0020 600141fd store 2 ,mem_cb_event_timer 
+0021 20600000 rtn 
+
+p_mouse_wakeup_from_power:
+0022 58000019 setarg 25 
+0023 60014d33 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+0024 2455802a ncall p_mouse_24g_transmit_by_interrupt_exit_count_max ,wake 
+0025 204002f2 call p_mouse_init_sunt 
+0026 20400311 call p_mouse_sensor_powerdown 
+
+p_mouse_wakeup_no_from_power:
+0027 6800c71f fetch 1 ,mem_reconn_times_init 
+0028 6000c71e store 1 ,mem_reconn_times 
+0029 20600000 rtn 
+
+p_mouse_24g_transmit_by_interrupt_exit_count_max:
+002a 58000177 setarg 375 
+002b 60014d33 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+002c 20600000 rtn 
+002d 20000001 nop 1 
+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 c2840059 bbit1 8 ,pf_patch_ext 
+0041 c0008085 beq patch00_1 ,p_soft_reset_1 
+0042 c001008e beq patch00_2 ,p_soft_reset_2 
+0043 c04287d3 beq patch10_5 ,p_shutdown_radio 
+0044 c04487a4 beq patch11_1 ,p_set_freq_tx 
+0045 c00d86c1 beq patch03_3 ,p_page_wait_fhs_reply_ok 
+0046 c01306c3 beq patch04_6 ,p_role_switch_master 
+0047 c02406df beq patch09_0 ,p_quit_connection_cont 
+0048 c02506e6 beq patch09_2 ,p_prepare_tx 
+0049 c02886ef beq patch0a_1 ,p_slave_conn_recv_packet 
+004a c02c86dd beq patch0b_1 ,p_process_dmh 
+004b c05386f4 beq patch14_7 ,p_lpm_dispatch 
+004c c056870a beq patch15_5 ,p_lpm_set_mult 
+004d c065b3e4 beq patch19_3 ,app_bt_start_reconnect + 3 
+004e c074871b beq patch1d_1 ,p_mouse_bb_disconnected 
+004f c0508097 beq patch14_1 ,p_init_param 
+0050 c058809c beq patch16_1 ,p_lpm_check_wake_lock 
+0051 c05900aa beq patch16_2 ,p_g24_dispatch 
+0052 c06202bd beq patch18_4 ,p_device_init 
+0053 c0718589 beq patch1c_3 ,p_mouse_seting_dpi 
+0054 c07305a6 beq patch1c_6 ,p_mouse_motion 
+0055 c07505e7 beq patch1d_2 ,p_mouse_bb_event_discovery_btn 
+0056 c07585ed beq patch1d_3 ,p_mouse_start_discovery 
+0057 c0760601 beq patch1d_4 ,p_mouse_stop_discovery 
+0058 20202a8e branch loop 
+
+pf_patch_ext:
+0059 c01c8608 beq patch27_1 ,p_le_slave_match 
+005a c0218610 beq patch28_3 ,p_le_next_adv_channel 
+005b c0250616 beq patch29_2 ,p_le_receive_skip 
+005c c02b8619 beq patch2a_7 ,p_le_update_param 
+005d c02c861b beq patch2b_1 ,p_le_update_channel_map 
+005e c031861d beq patch2c_3 ,p_le_prepare_tx 
+005f c0330647 beq patch2c_6 ,p_le_parse 
+0060 c033865e beq patch2c_7 ,p_le_parse_l2cap 
+0061 c0350697 beq patch2d_2 ,p_le_adv_not_match 
+0062 c03b86a2 beq patch2e_7 ,p_le_lpm_setmult 
+0063 c002871d beq patch20_5 ,p_hid_rx_process 
+0064 c040071f beq patch30_0 ,p_parse_lmp_accepted 
+0065 c0410729 beq patch30_2 ,p_send_lmp 
+0066 c044072b beq patch31_0 ,p_process_conn_sm 
+0067 c04606ae beq patch31_4 ,p_twspi_reset 
+0068 c04686ba beq patch31_5 ,p_spid_init 
+0069 c07d074f beq patch3f_2 ,p_check_51cmd_once_continue 
+006a 20202a8e branch loop 
+
+p_rssi_signal:
+006b 1fe22200 copy pdata ,rega 
+006c 6808ccab fetcht 1 ,mem_rssi_signal_index 
+006d 58004cb2 setarg mem_rssi_signal_buf 
+006e 98408a00 iadd temp ,contw 
+006f 1a227e00 copy rega ,pdata 
+0070 e0a08000 istore 1 ,contw 
+0071 18408401 increase 1 ,temp 
+0072 18410407 and_into rssi_buf_len_signal ,temp 
+0073 6008ccab storet 1 ,mem_rssi_signal_index 
+0074 20600000 rtn 
+
+p_mouse_select_device_button_wakeup_check:
+0075 704b6900 jam 0 ,mem_mouse_select_device_button_wakeup_flag 
+0076 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+0077 204067fb call gpio_config_input 
+0078 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+0079 2040681d call gpio_get_bit 
+007a 24608000 nrtn true 
+007b 20407ec1 call delay_10ms 
+007c 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+007d 2040681d call gpio_get_bit 
+007e 24608000 nrtn true 
+007f 704b6901 jam 1 ,mem_mouse_select_device_button_wakeup_flag 
+0080 20600000 rtn 
+
+p_mouse_switch_hwakeup_bypb:
+0081 6800cb69 fetch 1 ,mem_mouse_select_device_button_wakeup_flag 
+0082 207a0000 rtn blank 
+0083 2040047b call p_mouse_switch_device_flag 
+0084 20200334 branch p_mouse_store_flash_device_info 
+
+p_soft_reset_1:
+0085 d8a009ae arg mem_sp_state ,contw 
+0086 df20000c arg 12 ,loopcnt 
+0087 20407ed4 call clear_mem 
+0088 20400395 call p_mouse_le_txbuff_load 
+0089 20406a03 call rfcomm_init 
+008a 20405cf6 call init_lmp 
+008b 2455ac65 ncall lpm_disable_exen_output ,wake 
+008c 20407ccd call ui_init + 1 
+008d 2020200c branch soft_reset + 11 
+
+p_soft_reset_2:
+008e 2055b2e3 call app_lpm_init ,wake 
+008f 2040756a call publickey_init 
+0090 2055ab41 call lpm_recover_clk ,wake 
+
+p_sp_cal_loop:
+0091 204076dc call sp_calc_sequence 
+0092 6800c65a fetch 1 ,mem_ssp_enable 
+0093 203a2012 branch main_loop ,blank 
+0094 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+0095 203a0091 branch p_sp_cal_loop ,blank 
+0096 20202012 branch main_loop 
+
+p_init_param:
+0097 58000a06 setarg param_le_version 
+0098 6001c510 store 3 ,mem_lmp_version 
+0099 58001d87 setarg param_le_subversion 
+009a 60014513 store 2 ,mem_lmp_version + 3 
+009b 20202aa2 branch init_param + 12 
+
+p_lpm_check_wake_lock:
+009c c6130000 rtnmark1 mark_24g 
+009d 6800cb26 fetch 1 ,mem_mouse_multi_led_state 
+009e 243a7fef nbranch disable_blank ,blank 
+009f 6800cb2b fetch 1 ,mem_mouse_multi_led_blink_count 
+00a0 243a7fef nbranch disable_blank ,blank 
+00a1 6800c79c fetch 1 ,mem_mouse_clear_sensor_data_flag 
+00a2 203a7fef branch disable_blank ,blank 
+00a3 6800c7c4 fetch 1 ,mem_mouse_le_conn_param_reject 
+00a4 c000ffef beq le_lpm_disable ,disable_blank 
+00a5 68014248 fetch 2 ,mem_sdp_remote_cid 
+00a6 243a7fef nbranch disable_blank ,blank 
+00a7 6800c806 fetch 1 ,mem_mouse_wheel_trigger 
+00a8 243a7fef nbranch disable_blank ,blank 
+00a9 20207ff1 branch enable_blank 
+
+p_g24_dispatch:
+00aa c6930000 rtnmark0 mark_24g 
+00ab 6800cd30 fetch 1 ,mem_24g_transmit_by_interrupt 
+00ac c00080c0 beq g24_tx_timer_int_enable ,p_g24_transmit_by_interrupt 
+
+p_g24_transmit_process:
+00ad 20400144 call p_g24_txdata_prep 
+00ae 243400db nbranch p_g24_nodata_transmit ,user 
+00af 2040012b call p_g24_rf_sta_check 
+
+p_g24_transmit_start:
+00b0 20400167 call p_g24_transmit_packet 
+00b1 6800cc00 fetch 1 ,mem_24g_pairing_sm 
+00b2 c1ff8000 rtnne state_24g_pairing_success 
+00b3 20400778 call power_ctrl_start 
+00b4 204000bc call g24_long_sleep_shorter_param_update 
+00b5 6800cb26 fetch 1 ,mem_mouse_multi_led_state 
+00b6 c0008387 beq on ,p_g24_transmit_by_interrupt_enable 
+
+p_g24_short_sleep:
+00b7 204000e7 call p_g24_lpm_wait 
+00b8 24740000 nrtn user 
+00b9 204002a5 call p_clear_wake 
+00ba 5800ec54 setarg 60500 
+00bb 20202b93 branch lpm_dispatch_sleep 
+
+g24_long_sleep_shorter_param_update:
+00bc 58017700 setarg g24_long_sleep_step1 
+00bd 6001cc1f store 3 ,mem_24g_enter_hibernate 
+00be 704b5b14 jam 20 ,mem_24g_long_sleep_param_update_timer 
+00bf 20600000 rtn 
+
+p_g24_transmit_by_interrupt:
+00c0 2040027e call p_g24_timer_check 
+00c1 24740000 nrtn user 
+00c2 204000d5 call p_g24_interval_calibrate 
+00c3 68014d31 fetch 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00c4 1fe0fe01 increase 1 ,pdata 
+00c5 60014d31 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00c6 68094d33 fetcht 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+00c7 98467c00 isub temp ,null 
+00c8 204280ca call p_g24_transmit_by_interrupt_exit ,zero 
+00c9 202000ad branch p_g24_transmit_process 
+
+p_g24_transmit_by_interrupt_exit:
+00ca 704d3000 jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt 
+00cb 58000000 setarg 0 
+00cc 60014d31 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+00cd 58000019 setarg 25 
+00ce 60014d33 store 2 ,mem_24g_transmit_by_interrupt_exit_count_init 
+
+p_g24_interval_min:
+00cf 704c2b00 jam 0 ,mem_24g_pac_index 
+00d0 6800cc16 fetch 1 ,mem_24g_interval_min 
+
+p_g24_current_interval_store:
+00d1 6000cc15 store 1 ,mem_24g_interval 
+00d2 20600000 rtn 
+
+p_g24_interval_max:
+00d3 6800cc17 fetch 1 ,mem_24g_interval_max 
+00d4 202000d1 branch p_g24_current_interval_store 
+
+p_g24_interval_calibrate:
+00d5 6800cc2b fetch 1 ,mem_24g_pac_index 
+00d6 1fe0fe01 increase 1 ,pdata 
+00d7 6000cc2b store 1 ,mem_24g_pac_index 
+00d8 c00200d3 beq 4 ,p_g24_interval_max 
+00d9 c00280cf beq 5 ,p_g24_interval_min 
+00da 20600000 rtn 
+
+p_g24_nodata_transmit:
+00db 6800cc1c fetch 1 ,mem_24g_abort_pac 
+00dc 205a00f0 call p_g24_send_abort_packet ,blank 
+00dd 6800cb2b fetch 1 ,mem_mouse_multi_led_blink_count 
+00de 247a0000 nrtn blank 
+00df 6800cb26 fetch 1 ,mem_mouse_multi_led_state 
+00e0 c1008000 rtneq on 
+
+p_g24_long_sleep:
+00e1 204000e7 call p_g24_lpm_wait 
+00e2 24740000 nrtn user 
+00e3 6801cc1f fetch 3 ,mem_24g_enter_hibernate 
+00e4 20407f49 call clk2lpo 
+00e5 600a415b storet 4 ,mem_sleep_counter 
+00e6 20202b2a branch lpm_sleep 
+
+p_g24_lpm_wait:
+00e7 78347c00 enable user 
+00e8 20402afa call lpo_calibration 
+00e9 6801c16f fetch 3 ,mem_clks_per_lpo 
+00ea 203a7fe9 branch disable_user ,blank 
+00eb 6800c091 fetch 1 ,mem_lpm_mode 
+00ec 203a7fe9 branch disable_user ,blank 
+00ed 6800cd30 fetch 1 ,mem_24g_transmit_by_interrupt 
+00ee c000ffe9 beq g24_tx_timer_int_enable ,disable_user 
+00ef 202002a8 branch p_mouse_setgpio_lpm 
+
+p_g24_send_abort_packet:
+00f0 704c1c01 jam 1 ,mem_24g_abort_pac 
+00f1 704d2500 jam 0 ,mem_24g_rf_hop_ch 
+00f2 20400103 call p_g24_transmit_rf_ctrl_clear 
+00f3 6000cb8c store 1 ,mem_24g_txbuf 
+00f4 58000000 setarg 0 
+00f5 6003cb8d store 7 ,mem_24g_txbuf + 1 
+00f6 68024c27 fetch 4 ,mem_24g_device_addr 
+00f7 60024b94 store 4 ,mem_24g_txbuf + 8 
+00f8 704bf00c jam 12 ,mem_24g_datalen 
+00f9 6800cbf1 fetch 1 ,mem_24g_data_type 
+00fa 79207e03 set1 bit_abort ,pdata 
+00fb 6000cbf1 store 1 ,mem_24g_data_type 
+00fc 20400147 call p_g24_txdata_enable_tx 
+00fd 202000b0 branch p_g24_transmit_start 
+
+p_g24_set_device_addr:
+00fe 680240a0 fetch 4 ,mem_lap 
+00ff 60024c27 store 4 ,mem_24g_device_addr 
+0100 20600000 rtn 
+
+p_g24_transmit_rf_sta_init:
+0101 704d2601 jam 1 ,mem_24g_rf_last_sta 
+0102 704d2800 jam 0 ,mem_24g_sync_cnt 
+
+p_g24_transmit_rf_ctrl_clear:
+0103 6800cbf1 fetch 1 ,mem_24g_data_type 
+0104 1fe17e07 and_into bits_data ,pdata 
+0105 6000cbf1 store 1 ,mem_24g_data_type 
+0106 20600000 rtn 
+
+p_g24_hop_ch_enable:
+0107 6800cbf1 fetch 1 ,mem_24g_data_type 
+0108 79207e04 set1 bit_hop ,pdata 
+0109 6000cbf1 store 1 ,mem_24g_data_type 
+010a 6000cbac store 1 ,mem_24g_txpayload 
+010b 20600000 rtn 
+
+p_g24_hop_ch_disable:
+010c 6800cbf1 fetch 1 ,mem_24g_data_type 
+010d 793ffe04 set0 bit_hop ,pdata 
+010e 6000cbf1 store 1 ,mem_24g_data_type 
+010f 6000cbac store 1 ,mem_24g_txpayload 
+0110 2040076e call power_ctrl_pac_succ_decrs 
+0111 202001f6 branch p_g24_ch 
+
+p_g24_rf_hop_attemp_again:
+0112 6800cd25 fetch 1 ,mem_24g_rf_hop_ch 
+0113 c0808103 bne 1 ,p_g24_transmit_rf_ctrl_clear 
+
+p_g24_rf_hop_fastly:
+0114 6800cd23 fetch 1 ,mem_24g_hop_fastly_cnt 
+0115 1fe0fe01 increase 1 ,pdata 
+0116 6000cd23 store 1 ,mem_24g_hop_fastly_cnt 
+0117 c002011b beq 4 ,p_g24_rf_hop_fastly_exit 
+0118 204001f6 call p_g24_ch 
+0119 704c3502 jam 2 ,mem_24g_max_retry 
+011a 20200167 branch p_g24_transmit_packet 
+
+p_g24_rf_hop_fastly_exit:
+011b 2040076e call power_ctrl_pac_succ_decrs 
+011c 704d2300 jam 0 ,mem_24g_hop_fastly_cnt 
+011d 20200103 branch p_g24_transmit_rf_ctrl_clear 
+
+p_g24_transmit_hop_pac_succ_wo_hop:
+011e 704d2802 jam 2 ,mem_24g_sync_cnt 
+
+p_g24_transmit_hop_pac_succ:
+011f 704d2601 jam 1 ,mem_24g_rf_last_sta 
+0120 704d2500 jam 0 ,mem_24g_rf_hop_ch 
+0121 20200103 branch p_g24_transmit_rf_ctrl_clear 
+
+p_g24_transmit_succ_rf_config:
+0122 6800cd27 fetch 1 ,mem_24g_rf_work_stage 
+0123 c001811f beq 3 ,p_g24_transmit_hop_pac_succ 
+0124 6800cbf1 fetch 1 ,mem_24g_data_type 
+0125 2fec0004 isolate0 bit_hop ,pdata 
+0126 20208101 branch p_g24_transmit_rf_sta_init ,true 
+0127 6800cd27 fetch 1 ,mem_24g_rf_work_stage 
+0128 c000811e beq 1 ,p_g24_transmit_hop_pac_succ_wo_hop 
+0129 c001011f beq 2 ,p_g24_transmit_hop_pac_succ 
+012a 20600000 rtn 
+
+p_g24_rf_sta_check:
+012b 6800cc00 fetch 1 ,mem_24g_pairing_sm 
+012c c1ff8000 rtnne state_24g_pairing_success 
+012d 20400130 call p_g24_rf_laststa_synccnt_check 
+012e 24560138 ncall p_g24_rf_sync_cnt_check ,user2 
+012f 20600000 rtn 
+
+p_g24_rf_laststa_synccnt_check:
+0130 78567c00 disable user2 
+0131 6800cd26 fetch 1 ,mem_24g_rf_last_sta 
+0132 c1808000 rtnne 1 
+0133 6800cd28 fetch 1 ,mem_24g_sync_cnt 
+0134 c1800000 rtnne 0 
+0135 704d2701 jam 1 ,mem_24g_rf_work_stage 
+0136 704c3504 jam 4 ,mem_24g_max_retry 
+0137 20207feb branch enable_user2 
+
+p_g24_rf_sync_cnt_check:
+0138 6800cd28 fetch 1 ,mem_24g_sync_cnt 
+0139 203a013f branch p_g24_rf_hop_attemp ,blank 
+013a 1fe0ffff increase -1 ,pdata 
+013b 6000cd28 store 1 ,mem_24g_sync_cnt 
+013c 704d2702 jam 2 ,mem_24g_rf_work_stage 
+013d 704c3504 jam 4 ,mem_24g_max_retry 
+013e 202001f6 branch p_g24_ch 
+
+p_g24_rf_hop_attemp:
+013f 704d2703 jam 3 ,mem_24g_rf_work_stage 
+0140 6800cd25 fetch 1 ,mem_24g_rf_hop_ch 
+0141 243a0112 nbranch p_g24_rf_hop_attemp_again ,blank 
+0142 704c3502 jam 2 ,mem_24g_max_retry 
+0143 202001f6 branch p_g24_ch 
+
+p_g24_txdata_prep:
+0144 6800cc00 fetch 1 ,mem_24g_pairing_sm 
+0145 c0ff81b6 bne state_24g_pairing_success ,p_g24_pairing_sm 
+
+p_g24_txdata_prep_packeage_data:
+0146 2040014a call p_g24_package_data 
+
+p_g24_txdata_enable_tx:
+0147 204001e4 call p_g24_transmit_prep 
+0148 704bf501 jam ensure_on_24g ,mem_24g_ensure 
+0149 20600000 rtn 
+
+p_g24_package_data:
+014a 68014d21 fetch 2 ,mem_cb_24g_data 
+014b 20407f9c call callback_func 
+014c 20340150 branch p_g24_accumulate_mouse_data ,user 
+014d 6803cb8d fetch 7 ,mem_24g_txbuf + 1 
+014e 207a0000 rtn blank 
+014f 20207fe7 branch enable_user 
+
+p_g24_accumulate_mouse_data:
+0150 204003b3 call p_mouse_data_xy_release 
+0151 704c1c00 jam 0 ,mem_24g_abort_pac 
+0152 1a20fe01 add rega ,1 ,pdata 
+0153 6000cbf0 store 1 ,mem_24g_datalen 
+0154 20400103 call p_g24_transmit_rf_ctrl_clear 
+0155 6000cb8c store 1 ,mem_24g_txbuf 
+0156 e8a88000 ifetcht 1 ,contw 
+0157 ea408000 ifetch 1 ,regb 
+0158 9841fe00 ior temp ,pdata 
+0159 e0a08000 istore 1 ,contw 
+015a 1a40a401 increase 1 ,regb 
+015b ea420000 ifetch 4 ,regb 
+015c e0a20000 istore 4 ,contw 
+015d 1a40a404 increase 4 ,regb 
+015e d8a04b92 arg mem_24g_txbuf + 6 ,contw 
+015f df200002 arg 2 ,loopcnt 
+
+p_g24_accumulation_loop:
+0160 ea408000 ifetch 1 ,regb 
+0161 e8a88000 ifetcht 1 ,contw 
+0162 9840fe00 iadd temp ,pdata 
+0163 e0a08000 istore 1 ,contw 
+0164 1a40a401 increase 1 ,regb 
+0165 c2000160 loop p_g24_accumulation_loop 
+0166 20600000 rtn 
+
+p_g24_transmit_packet:
+0167 704bf900 jam 0 ,mem_24g_retry 
+
+p_g24_transmit_loop:
+0168 d9600d00 arg param_rx_setup ,timeup 
+0169 34730200 until clkn_rt ,meet 
+016a 20400185 call p_g24_transmit_receive_ack 
+016b 6800cc2c fetch 1 ,mem_24g_no_ack 
+016c c1008000 rtneq no_ack_24g 
+016d 242c0194 nbranch p_g24_retransmit ,sync 
+016e 24378194 nbranch p_g24_retransmit ,user3 
+016f 2040017f call p_g24_txbuf_clear 
+0170 204001af call p_g24_ackpayload_parse 
+0171 2040076a call power_ctrl_pac_succ_incrs 
+
+p_g24_transmit_next_packet:
+0172 6800cbef fetch 1 ,mem_24g_pid 
+0173 1fe0fe01 increase 1 ,pdata 
+0174 6000cbef store 1 ,mem_24g_pid 
+0175 20400182 call p_g24_hop_enable_packet 
+0176 6800cc00 fetch 1 ,mem_24g_pairing_sm 
+0177 c0ff81b8 bne state_24g_pairing_success ,p_g24_paring_mode_start 
+0178 20400122 call p_g24_transmit_succ_rf_config 
+
+p_g24_transmit_abandon:
+0179 58000000 setarg 0 
+017a 60014bf6 store 2 ,mem_24g_txfail_cnt 
+017b 6000cbf8 store 1 ,mem_24g_get_ack_fail 
+017c 6000cd24 store 1 ,mem_24g_hop_pac_retry 
+017d 704bf500 jam ensure_off_24g ,mem_24g_ensure 
+017e 20600000 rtn 
+
+p_g24_txbuf_clear:
+017f df200004 arg 4 ,loopcnt 
+0180 d8a04b8c arg mem_24g_txbuf ,contw 
+0181 20207ec6 branch memset0 
+
+p_g24_hop_enable_packet:
+0182 6800cbf1 fetch 1 ,mem_24g_data_type 
+0183 c282010c bbit1 bit_hop ,p_g24_hop_ch_disable 
+0184 20600000 rtn 
+
+p_g24_transmit_receive_ack:
+0185 7857fc00 disable user3 
+0186 2040025d call p_g24_transmit 
+0187 6800cc2c fetch 1 ,mem_24g_no_ack 
+0188 c0008192 beq no_ack_24g ,p_g24_transmit_no_ack 
+0189 18002a00 force 0 ,radio_ctrl 
+018a 68024c18 fetch 4 ,mem_24g_addr 
+018b 98001200 iforce access 
+018c 68088017 fetcht 1 ,mem_last_freq 
+018d 2040291f call set_freq_rx 
+018e 20402924 call rf_rx_enable 
+018f 20400219 call p_g24_receive_rxon 
+0190 20578255 call p_g24_end_of_packet ,user3 
+0191 20600000 rtn 
+
+p_g24_transmit_no_ack:
+0192 20400255 call p_g24_end_of_packet 
+0193 20200172 branch p_g24_transmit_next_packet 
+
+p_g24_retransmit:
+0194 68014bf6 fetch 2 ,mem_24g_txfail_cnt 
+0195 1fe0fe01 increase 1 ,pdata 
+0196 60014bf6 store 2 ,mem_24g_txfail_cnt 
+0197 6800cbf7 fetch 1 ,mem_24g_txfail_cnt + 1 
+0198 c2822dd4 bbit1 4 ,g24_stop_24g_mode 
+0199 6800cc00 fetch 1 ,mem_24g_pairing_sm 
+019a c0ff819d bne state_24g_pairing_success ,p_g24_tx_paring_retry 
+019b 204001a5 call p_g24_tx_hop_ch_process 
+019c 20200168 branch p_g24_transmit_loop 
+
+p_g24_tx_paring_retry:
+019d 6800cbf6 fetch 1 ,mem_24g_txfail_cnt 
+019e c1ff8000 rtnne 0xff 
+
+p_g24_tx_attempt_fail:
+019f 58000000 setarg 0 
+01a0 60014bf6 store 2 ,mem_24g_txfail_cnt 
+01a1 20202dd4 branch g24_stop_24g_mode 
+
+p_g24_tx_fast_hop:
+01a2 2040079b call power_ctrl_txpower_incrs 
+01a3 2040076e call power_ctrl_pac_succ_decrs 
+01a4 202001f6 branch p_g24_ch 
+
+p_g24_tx_hop_ch_process:
+01a5 6800cbf9 fetch 1 ,mem_24g_retry 
+01a6 1fe67c0b sub pdata ,11 ,null 
+01a7 242101a2 nbranch p_g24_tx_fast_hop ,positive 
+01a8 1fe0fe01 increase 1 ,pdata 
+01a9 6000cbf9 store 1 ,mem_24g_retry 
+01aa c0010107 beq 2 ,p_g24_hop_ch_enable 
+01ab c003010c beq 6 ,p_g24_hop_ch_disable 
+01ac c0040107 beq 8 ,p_g24_hop_ch_enable 
+01ad c006010c beq 12 ,p_g24_hop_ch_disable 
+01ae 20600000 rtn 
+
+p_g24_ackpayload_parse:
+01af 204001c9 call p_g24_read_len_pid_crc 
+01b0 6800cbee fetch 1 ,mem_24g_rxdata_length 
+01b1 207a0000 rtn blank 
+01b2 98007200 iforce loopcnt 
+01b3 d8c04b6c arg mem_24g_rxbuf + 2 ,contr 
+01b4 d8a04bce arg mem_24g_rxpayload ,contw 
+01b5 20207f01 branch memcpy 
+
+p_g24_pairing_sm:
+01b6 7011c590 jam zcode_90 ,mem_zcode_temp_param0 
+01b7 202007d5 branch p_zcode_entrance 
+
+p_g24_paring_mode_start:
+01b8 20400767 call power_ctrl_pac_succ_cnt_init 
+
+p_g24_paring_mode:
+01b9 7011c591 jam zcode_91 ,mem_zcode_temp_param0 
+01ba 202007d5 branch p_zcode_entrance 
+
+p_g24_start_24g_mode:
+01bb 7011c560 jam zcode_60 ,mem_zcode_temp_param0 
+01bc 202007d5 branch p_zcode_entrance 
+
+p_g24_auto_pair_start:
+01bd 704b6800 jam 0 ,mem_mouse_long_button_select_device 
+01be 7011c570 jam zcode_70 ,mem_zcode_temp_param0 
+01bf 202007d5 branch p_zcode_entrance 
+
+p_g24_check_51cmd_stop_24g:
+01c0 793f8026 set0 mark_24g ,mark 
+01c1 204053ce call le_disable 
+
+p_mouse_disable_g24_pairing_flag:
+01c2 d8e00003 arg mosue_24g_pairing_flag ,queue 
+01c3 202043d2 branch mouse_disable_function_flag 
+
+p_g24_put_data_in_buff:
+01c4 6008cbf0 storet 1 ,mem_24g_datalen 
+01c5 18427200 copy temp ,loopcnt 
+01c6 d8a04b8c arg mem_24g_txbuf ,contw 
+01c7 1a220c00 copy rega ,contr 
+01c8 20207f01 branch memcpy 
+
+p_g24_read_len_pid_crc:
+01c9 6800cb6b fetch 1 ,mem_24g_rxbuf + 1 
+01ca 1fe97e00 rshift3 pdata ,pdata 
+01cb 6000cbee store 1 ,mem_24g_rxdata_length 
+01cc 1fe0fe01 increase 1 ,pdata 
+01cd d8c04b6b arg mem_24g_rxbuf + 1 ,contr 
+01ce 98c08c00 iadd contr ,contr 
+01cf e8c18000 ifetch 3 ,contr 
+01d0 6001cc2d store 3 ,mem_24g_sta_crc 
+01d1 6800cb6b fetch 1 ,mem_24g_rxbuf + 1 
+01d2 1fe37e00 rshift pdata ,pdata 
+01d3 1fe17e03 and pdata ,0x03 ,pdata 
+01d4 6000cc33 store 1 ,mem_24g_sta_pid 
+01d5 20600000 rtn 
+
+p_g24_update_addr_and_synccrc8:
+01d6 60024c18 store 4 ,mem_24g_addr 
+
+p_g24_syncword_crc8:
+01d7 da200000 arg 0 ,rega 
+01d8 df200004 arg 4 ,loopcnt 
+01d9 d8c04c18 arg mem_24g_addr ,contr 
+
+p_g24_syncword_crc8_loop:
+01da e8c08000 ifetch 1 ,contr 
+01db 9a20a200 iadd rega ,rega 
+01dc c20001da loop p_g24_syncword_crc8_loop 
+01dd 1a227e00 copy rega ,pdata 
+01de 60014ca1 store 2 ,mem_24g_syncword 
+01df 6800cca1 fetch 1 ,mem_24g_syncword 
+01e0 6808cca2 fetcht 1 ,mem_24g_syncword + 1 
+01e1 9840fe00 iadd temp ,pdata 
+01e2 6000cca3 store 1 ,mem_24g_syncword_crc8 
+01e3 20600000 rtn 
+
+p_g24_transmit_prep:
+01e4 6800cbf0 fetch 1 ,mem_24g_datalen 
+01e5 1fe0fe02 increase 2 ,pdata 
+01e6 6000cbf2 store 1 ,mem_24g_txlen 
+01e7 6800cbf1 fetch 1 ,mem_24g_data_type 
+01e8 6000cbac store 1 ,mem_24g_txpayload 
+01e9 6800cbf0 fetch 1 ,mem_24g_datalen 
+01ea 1fe9fe00 lshift3 pdata ,pdata 
+01eb 6808cbef fetcht 1 ,mem_24g_pid 
+01ec 18410403 and temp ,0x03 ,temp 
+01ed 18438400 lshift temp ,temp 
+01ee 9841fe00 ior temp ,pdata 
+01ef 6808cc2c fetcht 1 ,mem_24g_no_ack 
+01f0 9840fe00 iadd temp ,pdata 
+01f1 e0a08000 istore 1 ,contw 
+01f2 6800cbf0 fetch 1 ,mem_24g_datalen 
+01f3 98007200 iforce loopcnt 
+01f4 d8c04b8c arg mem_24g_txbuf ,contr 
+01f5 20207f01 branch memcpy 
+
+p_g24_ch:
+01f6 6808cbfb fetcht 1 ,mem_24g_current_ch_number 
+01f7 204001fa call p_g24_ch_map_size 
+01f8 6008cbfb storet 1 ,mem_24g_current_ch_number 
+01f9 20600000 rtn 
+
+p_g24_ch_map_size:
+01fa 204001fe call p_g24_ch_calc 
+01fb 18408401 increase 1 ,temp 
+01fc 18410403 and_into 3 ,temp 
+01fd 20600000 rtn 
+
+p_g24_ch_calc:
+01fe 6800cc18 fetch 1 ,mem_24g_addr 
+01ff 1fe17e03 and_into 0x03 ,pdata 
+0200 1fefa204 mul32 pdata ,4 ,rega 
+0201 58004c01 setarg mem_24g_ch_map1 
+0202 9a20fe00 iadd rega ,pdata 
+0203 98408c00 iadd temp ,contr 
+0204 e8c08000 ifetch 1 ,contr 
+0205 6000cbfa store 1 ,mem_24g_ch 
+0206 20600000 rtn 
+
+p_g24_prep:
+0207 7844fc00 disable enable_crc 
+0208 7843fc00 disable enable_white 
+0209 58555555 setarg 0x555555 
+020a 98001e00 iforce crc24_init 
+020b 6800cbfa fetch 1 ,mem_24g_ch 
+020c 1fed8400 reverse pdata ,temp 
+020d 79200401 set1 1 ,temp 
+020e 18431c00 rshift temp ,white_init 
+020f 20600000 rtn 
+
+p_g24_receive_packet:
+0210 204053c4 call le_enable 
+0211 68024c18 fetch 4 ,mem_24g_addr 
+0212 98001200 iforce access 
+0213 20402918 call set_sync_on 
+0214 6808cbfa fetcht 1 ,mem_24g_ch 
+0215 2040291f call set_freq_rx 
+0216 58000500 setarg param_pll_setup 
+0217 20402a8f call sleep 
+0218 20402924 call rf_rx_enable 
+
+p_g24_receive_rxon:
+0219 20400207 call p_g24_prep 
+021a 7857fc00 disable user3 
+021b 7826fc00 enable decode_fec0 
+021c 7830fc00 enable is_rx 
+021d 78507c00 disable is_tx 
+021e 78287c00 enable swfine 
+021f 68014bf3 fetch 2 ,mem_24g_rx_window 
+0220 98003600 iforce stop_watch 
+0221 37c18400 correlate null ,timeout 
+0222 242c0259 nbranch p_g24_sync_timeout ,sync 
+0223 7846fc00 disable decode_fec0 
+0224 7825fc00 enable decode_fec1 
+0225 7823fc00 enable enable_white 
+0226 7824fc00 enable enable_crc 
+0227 20400252 call p_g24_receive_byte 
+0228 6000cca4 store 1 ,mem_24g_get_syncword_crc8 
+0229 6808cca3 fetcht 1 ,mem_24g_syncword_crc8 
+022a 98467c00 isub temp ,null 
+022b 24228255 nbranch p_g24_end_of_packet ,zero 
+022c 20400252 call p_g24_receive_byte 
+022d 6000cb6a store 1 ,mem_24g_rxbuf 
+022e 6800cc36 fetch 1 ,mem_24g_mode 
+022f 1fe67c02 sub pdata ,rx_24g ,null 
+0230 20228235 branch p_g24_receive_skip ,zero 
+0231 6800cb6a fetch 1 ,mem_24g_rxbuf 
+0232 6808cbf1 fetcht 1 ,mem_24g_data_type 
+0233 a8400e00 icompare bits_data ,temp 
+0234 24208255 nbranch p_g24_end_of_packet ,true 
+
+p_g24_receive_skip:
+0235 20400252 call p_g24_receive_byte 
+0236 e0a08000 istore 1 ,contw 
+0237 1fe97e00 rshift3 pdata ,pdata 
+0238 1fe1721f and pdata ,0x1f ,loopcnt 
+0239 2022823d branch p_g24rx_nopayload ,zero 
+
+p_g24rx_loop:
+023a 20400252 call p_g24_receive_byte 
+023b e0a08000 istore 1 ,contw 
+023c c200023a loop p_g24rx_loop 
+
+p_g24rx_nopayload:
+023d 18a22200 copy contw ,rega 
+023e 20400252 call p_g24_receive_byte 
+023f 6000cd2b store 1 ,mem_rssi_hex_received 
+0240 1a220a00 copy rega ,contw 
+0241 09800018 parse demod ,bucket ,24 
+0242 78287c00 enable swfine 
+0243 db600664 arg param_sifs ,stop_watch 
+0244 1fef7e00 rshift32 pdata ,pdata 
+0245 1ff17e00 rshift16 pdata ,pdata 
+0246 e0a18000 istore 3 ,contw 
+0247 7845fc00 disable decode_fec1 
+0248 20230255 branch p_g24_end_of_packet ,crc_failed 
+0249 7837fc00 enable user3 
+024a 68008017 fetch 1 ,mem_last_freq 
+024b 1fe0a200 add pdata ,0 ,rega 
+024c 20402981 call rf_write_freq 
+024d 7846fc00 disable decode_fec0 
+024e 20402918 call set_sync_on 
+024f 6800cd2b fetch 1 ,mem_rssi_hex_received 
+0250 2040006b call p_rssi_signal 
+0251 20600000 rtn 
+
+p_g24_receive_byte:
+0252 09800008 parse demod ,bucket ,8 
+0253 19897e00 rshift3 pwindow ,pdata 
+0254 20600000 rtn 
+
+p_g24_end_of_packet:
+0255 784dfc00 disable encode_fec1 
+0256 7845fc00 disable decode_fec1 
+0257 2040264d call end_of_packet 
+0258 20600000 rtn 
+
+p_g24_sync_timeout:
+0259 20200255 branch p_g24_end_of_packet 
+
+p_g24_set_freq_tx:
+025a 20402918 call set_sync_on 
+025b 6808cbfa fetcht 1 ,mem_24g_ch 
+025c 20202933 branch set_freq_tx 
+
+p_g24_transmit:
+025d 204053c4 call le_enable 
+025e 68024c18 fetch 4 ,mem_24g_addr 
+025f 98001200 iforce access 
+0260 20400207 call p_g24_prep 
+0261 2040025a call p_g24_set_freq_tx 
+0262 79202a00 set1 txgfsk ,radio_ctrl 
+0263 782efc00 enable encode_fec0 
+0264 78307c00 enable is_tx 
+0265 7850fc00 disable is_rx 
+0266 19317e00 rshift16 access ,pdata 
+0267 1fecfe00 rshift8 pdata ,pdata 
+0268 1ff1fe00 rshift4 pdata ,pdata 
+0269 08008628 inject mod ,40 
+026a 784efc00 disable encode_fec0 
+026b 782dfc00 enable encode_fec1 
+026c 7823fc00 enable enable_white 
+026d 7824fc00 enable enable_crc 
+026e 6800cca3 fetch 1 ,mem_24g_syncword_crc8 
+026f 08008608 inject mod ,8 
+0270 6800cbf2 fetch 1 ,mem_24g_txlen 
+0271 98007200 iforce loopcnt 
+0272 d8c04bac arg mem_24g_txpayload ,contr 
+
+p_g24tr_loop:
+0273 e8c08000 ifetch 1 ,contr 
+0274 08008608 inject mod ,8 
+0275 c2000273 loop p_g24tr_loop 
+0276 78247c00 enable enable_parity 
+0277 08008618 inject mod ,24 
+0278 78447c00 disable enable_parity 
+0279 37d38200 until null ,tx_clear 
+027a 20000064 nop 100 
+027b 784efc00 disable encode_fec0 
+027c 784dfc00 disable encode_fec1 
+027d 20600000 rtn 
+
+p_g24_timer_check:
+027e 20407fe9 call disable_user 
+027f 680a4c11 fetcht 4 ,mem_24g_tx_btclk 
+0280 1c427e00 copy clkn_bt ,pdata 
+0281 98467c00 isub temp ,null 
+0282 24412d18 ncall g24_timer_timeout ,positive 
+0283 1fe22400 copy pdata ,regb 
+0284 68024c11 fetch 4 ,mem_24g_tx_btclk 
+0285 6808cc15 fetcht 1 ,mem_24g_interval 
+0286 98408400 iadd temp ,temp 
+0287 1a427e00 copy regb ,pdata 
+0288 98467c00 isub temp ,null 
+0289 24610000 nrtn positive 
+028a 793ffe1c set0 28 ,pdata 
+028b 60024c11 store 4 ,mem_24g_tx_btclk 
+028c 20207fe7 branch enable_user 
+
+p_rssi_average:
+028d d8400000 arg 0 ,temp 
+028e df200008 arg rssi_buf_len_signal + 1 ,loopcnt 
+028f 1a220c00 copy rega ,contr 
+
+p_rssi_average_loop:
+0290 e8c08000 ifetch 1 ,contr 
+0291 98408400 iadd temp ,temp 
+0292 c2000290 loop p_rssi_average_loop 
+0293 18497e00 rshift3 temp ,pdata 
+0294 1fe20400 copy pdata ,temp 
+0295 c6930000 rtnmark0 mark_24g 
+0296 1fe6fc0a div pdata ,10 
+0297 20407f86 call wait_div_end 
+0298 1807fe00 quotient pdata 
+0299 1ff27e00 lshift4 pdata ,pdata 
+029a 18070400 remainder temp 
+029b 98418400 ior temp ,temp 
+029c 20600000 rtn 
+029d 20600000 rtn 
+
+p_mouse_before_lpm:
+029e c6130000 rtnmark1 mark_24g 
+029f 2040038b call p_mouse_le_txbuff_save 
+02a0 204002a8 call p_mouse_setgpio_lpm 
+02a1 6800c040 fetch 1 ,mem_context 
+02a2 c30002a5 bbit0 state_inconn ,p_clear_wake 
+02a3 680080a0 fetch 1 ,mem_lpm_current_mult 
+02a4 247a0000 nrtn blank 
+
+p_clear_wake:
+02a5 58000000 setarg 0 
+02a6 600400a1 store 8 ,mem_gpio_wakeup_low 
+02a7 20600000 rtn 
+
+p_mouse_setgpio_lpm:
+02a8 204002ba call p_mouse_set_sdio_high 
+02a9 204002a5 call p_clear_wake 
+
+p_mouse_setgpio_hibernate:
+02aa 20403ebf call mouse_lpm_before_common 
+02ab 2040031a call p_flash_ncs_disable 
+02ac 68120070 hfetch 4 ,core_gpio_oe0 
+02ad 681a0078 hfetcht 4 ,core_gpio_pu0 
+02ae 98418400 ior temp ,temp 
+02af 18440400 invert temp ,temp 
+02b0 601a007c hstoret 4 ,core_gpio_pd0 
+02b1 6810807d hfetch 1 ,core_gpio_pd1 
+02b2 793ffe02 set0 2 ,pdata 
+02b3 6010807d hstore 1 ,core_gpio_pd1 
+02b4 6810807e hfetch 1 ,core_gpio_pd2 
+02b5 793ffe06 set0 6 ,pdata 
+02b6 6010807e hstore 1 ,core_gpio_pd2 
+
+p_mouse_multi_led_gpio_set_float:
+02b7 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+02b8 793f8407 set0 gpio_active_bit ,temp 
+02b9 20206806 branch gpio_set_high_impedance 
+
+p_mouse_set_sdio_high:
+02ba 6800cafe fetch 1 ,mem_mouse_init_sensor_reset_flag 
+02bb 207a0000 rtn blank 
+02bc 20200589 branch p_mouse_seting_sensor_type 
+
+p_device_init:
+02bd 20403416 call app_lpm_mult_enable 
+02be 204074b9 call enable_authrom 
+02bf 203582d1 branch p_device_wake_from_lpm ,wake 
+
+p_device_wake_from_power:
+02c0 6801c4a3 fetch 3 ,mem_le_lap + 3 
+02c1 6001cb63 store 3 ,mem_le_lap_high_3b 
+02c2 20400001 call p_wake_from_power 
+02c3 20400081 call p_mouse_switch_hwakeup_bypb 
+02c4 204005b3 call p_mouse_check_key_gpio 
+02c5 c00282ed beq mouse_lm_button ,p_mouse_24g_pairing_button 
+
+p_mouse_check_reconn_target:
+02c6 204002d2 call p_mouse_tx_power_init 
+02c7 6800c720 fetch 1 ,mem_device_flag 
+02c8 6808c703 fetcht 1 ,mem_24g_device_number 
+02c9 98467c00 isub temp ,null 
+02ca 202282d5 branch p_mouse_connect_24g_mode ,zero 
+02cb c07f82d5 beq 0xff ,p_mouse_connect_24g_mode 
+02cc 2040052d call p_mouse_mode_bt_device1_multi_led_on 
+02cd 6800c210 fetch 1 ,mem_xrecord_mode 
+02ce c01982d8 beq rec_3_mode ,p_mouse3_0_check_reconn_target 
+02cf c01a02db beq rec_4_mode ,p_mouse4_0_check_reconn_target 
+02d0 202004f2 branch p_mouse_null_enter_hibernate_enable 
+
+p_device_wake_from_lpm:
+02d1 202002f0 branch p_mouse_spi_init 
+
+p_mouse_tx_power_init:
+02d2 6800cca7 fetch 1 ,mem_tx_power_temp 
+02d3 6000c1de store 1 ,mem_tx_power 
+02d4 20600000 rtn 
+
+p_mouse_connect_24g_mode:
+02d5 70472002 jam mode_24g_device ,mem_device_flag 
+02d6 2040052d call p_mouse_mode_24g_device_multi_led_on 
+02d7 20200379 branch p_mouse_start_24g_mode 
+
+p_mouse3_0_check_reconn_target:
+02d8 680341d0 fetch 6 ,mem_hci_plap 
+02d9 203a33eb branch app_bt_start_discovery_short ,blank 
+02da 20204274 branch mouse3_0_check_reconn_target + 3 
+
+p_mouse4_0_check_reconn_target:
+02db 704b6701 jam 1 ,mem_le_send_security_request_flag 
+02dc 70479f01 jam 1 ,mem_mouse_le_reconnect_flag 
+02dd 680146a8 fetch 2 ,mem_mouse_direct_timeout 
+
+p_mouse4_0_check_reconn_target_next:
+02de 600146ae store 2 ,mem_mouse_direct_timer 
+02df 20403418 call app_lpm_mult_disable 
+02e0 204002e6 call p_le_check_adv_flag 
+02e1 58000004 setarg adv_flag_bredr_not_supported 
+02e2 e0c08000 istore 1 ,contr 
+02e3 d8c04390 arg mem_le_scan_data ,contr 
+02e4 204005fd call p_le_adv_data_update 
+02e5 20207df4 branch check_51cmd_adv 
+
+p_le_check_adv_flag:
+02e6 da204370 arg mem_le_adv_data ,rega 
+
+p_le_check_adv_flag_loop:
+02e7 ea208000 ifetch 1 ,rega 
+02e8 207a0000 rtn blank 
+02e9 98c0a200 iadd contr ,rega 
+02ea e8c08000 ifetch 1 ,contr 
+02eb c1008000 rtneq 0x01 
+02ec 202002e7 branch p_le_check_adv_flag_loop 
+
+p_mouse_24g_pairing_button:
+02ed 704b6800 jam 0 ,mem_mouse_long_button_select_device 
+02ee 7011c561 jam zcode_61 ,mem_zcode_temp_param0 
+02ef 202007d5 branch p_zcode_entrance 
+
+p_mouse_spi_init:
+02f0 70421276 jam 0x76 ,mem_spi_init_clk 
+02f1 20203d36 branch mouse_spi_init 
+
+p_mouse_init_sunt:
+02f2 204002f0 call p_mouse_spi_init 
+02f3 204040c0 call mouse_spi_sdio_gpio_pollup 
+
+p_mouse_init_sensor:
+02f4 204040d9 call mouse_read_sensor_id 
+02f5 c01802fe beq p32xx_id1 ,p_mouse_init_p32xx_id2_judge 
+02f6 c0188301 beq p3065_id1 ,p_mouse_p3065_init_param 
+02f7 204040d1 call mouse_twspi_reset 
+02f8 200003e8 nop 1000 
+02f9 202002f4 branch p_mouse_init_sensor 
+
+p_mouse_init_sensor_reset:
+02fa 704afe01 jam 1 ,mem_mouse_init_sensor_reset_flag 
+02fb 2040640f call spi_ncs_enable 
+02fc 204002f2 call p_mouse_init_sunt 
+02fd 20206411 branch spi_ncs_disable 
+
+p_mouse_init_p32xx_id2_judge:
+02fe 20400306 call p_mouse_sensor_poweron 
+02ff 6800c6de fetch 1 ,mem_sensor_id2 
+0300 202040e1 branch mouse_init_p32xx_id2_judge + 1 
+
+p_mouse_p3065_init_param:
+0301 20400306 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 
+
+p_mouse_sensor_poweron:
+0306 204002f0 call p_mouse_spi_init 
+0307 58008006 setarg 0x8006 
+0308 20406413 call twspi_write 
+0309 20002ee0 nop 12000 
+030a 2020030b branch p_mouse_dpi_config 
+
+p_mouse_dpi_config:
+030b 6800c77a fetch 1 ,mem_mouse_dpi 
+030c c07f830e beq 0xff ,p_mouse_dpi_config_default 
+030d 20200589 branch p_mouse_seting_dpi 
+
+p_mouse_dpi_config_default:
+030e 6800c6e1 fetch 1 ,mem_config_sensor_motion 
+030f 6000c77a store 1 ,mem_mouse_dpi 
+0310 20200589 branch p_mouse_seting_dpi 
+
+p_mouse_sensor_powerdown:
+0311 204002f0 call p_mouse_spi_init 
+0312 58000006 setarg 0x06 
+0313 20406414 call twspi_read 
+0314 1fe1fe08 or pdata ,0x08 ,pdata 
+0315 1fed7e00 lshift8 pdata ,pdata 
+0316 1fe0fe06 add pdata ,0x06 ,pdata 
+0317 20206413 branch twspi_write 
+
+p_mouse_setting_config:
+0318 7011c580 jam zcode_80 ,mem_zcode_temp_param0 
+0319 202007d5 branch p_zcode_entrance 
+
+p_flash_ncs_disable:
+031a 6808cb44 fetcht 1 ,mem_flash_ncs_gpio 
+031b 20206825 branch gpio_out_inactive 
+
+p_spid_init_flash:
+031c 70808640 jam 0x40 ,core_spid_ctrl 
+031d 70808700 jam 0x0 ,core_spid_delay 
+031e 68108081 hfetch 1 ,core_gpio_sel1 
+031f 793ffe00 set0 0 ,pdata 
+0320 793ffe01 set0 1 ,pdata 
+0321 79207e03 set1 3 ,pdata 
+0322 793ffe04 set0 4 ,pdata 
+0323 60108081 hstore 1 ,core_gpio_sel1 
+0324 58000000 setarg 0 
+0325 600201f5 store 4 ,mem_spid_tbuf 
+0326 6810807f hfetch 1 ,core_gpio_pd3 
+0327 793ffe00 set0 0 ,pdata 
+0328 6010807f hstore 1 ,core_gpio_pd3 
+0329 20600000 rtn 
+
+p_mouse_load_flash_info_check:
+032a 20400377 call p_flash_release_deep_power_down 
+032b 20404423 call mouse_load_flash_flag 
+032c 68014778 fetch 2 ,mem_store_flag 
+032d d840aa55 arg eeprom_init_flag ,temp 
+032e 98467c00 isub temp ,null 
+032f 20228367 branch p_mouse_load_flash_device_info ,zero 
+0330 60094778 storet 2 ,mem_store_flag 
+0331 2040441c call mouse_ble_init_address 
+0332 6800c6e1 fetch 1 ,mem_config_sensor_motion 
+0333 6000c77a store 1 ,mem_mouse_dpi 
+
+p_mouse_store_flash_device_info:
+0334 20400377 call p_flash_release_deep_power_down 
+0335 20400346 call p_flash_erase_sector 
+0336 2040035e call p_mouse_information_flash_parameters 
+0337 2040034a call p_spid_write_flash 
+0338 20400355 call p_wait_flash_done 
+
+p_mouse_store_random_addr_increase_count:
+0339 d8400002 arg 2 ,temp 
+033a da2047c2 arg mem_random_addr_increase_count ,rega 
+033b da40005f arg mouse_random_addr_count_eeprom_offset ,regb 
+033c 6801c700 fetch 3 ,mem_flash_base 
+033d 9a40fe00 iadd regb ,pdata 
+033e 2040034a call p_spid_write_flash 
+033f 20400355 call p_wait_flash_done 
+0340 2040036e call p_flash_deep_power_down 
+0341 202002f0 branch p_mouse_spi_init 
+
+p_mouse_set_24g_addr_flash:
+0342 d8400004 arg 4 ,temp 
+0343 da204c18 arg mem_24g_addr ,rega 
+0344 da40005b arg mouse_g24_addr_eeprom_offect ,regb 
+0345 20600000 rtn 
+
+p_flash_erase_sector:
+0346 6801c700 fetch 3 ,mem_flash_base 
+0347 6001c232 store 3 ,mem_spi_write_addr 
+0348 2040652a call flash_erase_sector + 2 
+0349 20200355 branch p_wait_flash_done 
+
+p_spid_write_flash:
+034a 1fe22600 copy pdata ,regc 
+034b 1a227e00 copy rega ,pdata 
+034c 1fe0fffc increase -4 ,pdata 
+034d 1fe22400 copy pdata ,regb 
+034e ea420000 ifetch 4 ,regb 
+034f 60024b46 store 4 ,mem_write_flash_head_temp 
+0350 1a627e00 copy regc ,pdata 
+0351 20406552 call spid_write_flash 
+0352 68024b46 fetch 4 ,mem_write_flash_head_temp 
+0353 e2420000 istore 4 ,regb 
+0354 20600000 rtn 
+
+p_wait_flash_done:
+0355 580186a0 setarg 100000 
+0356 20402a8f call sleep 
+0357 2040650b call spid_unlock_flash 
+0358 580001fa setarg mem_spid_rbuf 
+0359 6011008c hstore 2 ,core_spid_rxaddr 
+035a 58000005 setarg flash_read_satus 
+035b 204064f3 call spid_read_reg 
+035c c2800355 bbit1 flash_status_wip ,p_wait_flash_done 
+035d 20600000 rtn 
+
+p_mouse_information_flash_parameters:
+035e 5800477f setarg mem_mouse_information_end 
+035f d8404720 arg mem_mouse_information_start ,temp 
+0360 98460400 isub temp ,temp 
+0361 6801c700 fetch 3 ,mem_flash_base 
+0362 da204720 arg mem_mouse_information_start ,rega 
+0363 20600000 rtn 
+
+p_mouse_read_flash:
+0364 20400377 call p_flash_release_deep_power_down 
+0365 2040035e call p_mouse_information_flash_parameters 
+0366 20206562 branch spid_read_flash 
+
+p_mouse_load_flash_device_info:
+0367 20400364 call p_mouse_read_flash 
+0368 204005f6 call p_mouse_load_fast_conn_flag 
+0369 204005ef call p_mouse_load_random_addr_increase_count 
+036a 2040431a call mouse_select_reconn_device 
+036b 6802477b fetch 4 ,mem_mouse_24g_addr 
+036c 60024c18 store 4 ,mem_24g_addr 
+036d 20600000 rtn 
+
+p_flash_deep_power_down:
+036e 700aa2b9 jam flash_command_deep_power_down ,mem_temp 
+
+p_spid_write_flash_cmd:
+036f 2040031c call p_spid_init_flash 
+0370 20000064 nop 100 
+0371 2040650b call spid_unlock_flash 
+0372 da204b46 arg mem_write_flash_head_temp ,rega 
+0373 68088aa2 fetcht 1 ,mem_temp 
+0374 20406556 call spid_write_flash_common 
+0375 20000064 nop 100 
+0376 20600000 rtn 
+
+p_flash_release_deep_power_down:
+0377 700aa2ab jam flash_command_release_deep_power_down ,mem_temp 
+0378 2020036f branch p_spid_write_flash_cmd 
+
+p_mouse_start_24g_mode:
+0379 2040037b call p_g24_factory_check 
+037a 202001bb branch p_g24_start_24g_mode 
+
+p_g24_factory_check:
+037b df200002 arg 2 ,loopcnt 
+037c d8c04c18 arg mem_24g_addr ,contr 
+
+p_pdata_0xff_check:
+037d 20407fe7 call enable_user 
+037e 5800ffff setarg 0xffff 
+
+p_pdata_0xff_check_loop:
+037f e8c90000 ifetcht 2 ,contr 
+0380 98467c00 isub temp ,null 
+0381 2442ffe9 ncall disable_user ,zero 
+0382 c200037f loop p_pdata_0xff_check_loop 
+0383 20600000 rtn 
+
+p_mouse_g24_package_data:
+0384 20404401 call mouse_g24_package_data 
+0385 6801469f fetch 2 ,mem_mouse_z 
+0386 207a0000 rtn blank 
+
+p_g24_transmit_by_interrupt_enable:
+0387 704d3001 jam g24_tx_timer_int_enable ,mem_24g_transmit_by_interrupt 
+0388 58000000 setarg 0 
+0389 60014d31 store 2 ,mem_24g_transmit_by_interrupt_exit_count 
+038a 20600000 rtn 
+
+p_mouse_le_txbuff_save:
+038b d8c01800 arg mem_le_tx_buffer0 ,contr 
+038c d8a0480a arg mem_le_tx_buffer0_omemalloc ,contw 
+038d 20400393 call p_mouse_le_txbuff_copy 
+038e d8c01900 arg mem_le_tx_buffer1 ,contr 
+038f 20400393 call p_mouse_le_txbuff_copy 
+0390 d8c01a00 arg mem_le_tx_buffer2 ,contr 
+0391 20400393 call p_mouse_le_txbuff_copy 
+0392 d8c01b00 arg mem_le_tx_buffer3 ,contr 
+
+p_mouse_le_txbuff_copy:
+0393 df20001b arg 27 ,loopcnt 
+0394 20207f01 branch memcpy 
+
+p_mouse_le_txbuff_load:
+0395 d8c0480a arg mem_le_tx_buffer0_omemalloc ,contr 
+0396 d8a01800 arg mem_le_tx_buffer0 ,contw 
+0397 20400393 call p_mouse_le_txbuff_copy 
+0398 d8a01900 arg mem_le_tx_buffer1 ,contw 
+0399 20400393 call p_mouse_le_txbuff_copy 
+039a d8a01a00 arg mem_le_tx_buffer2 ,contw 
+039b 20400393 call p_mouse_le_txbuff_copy 
+039c d8a01b00 arg mem_le_tx_buffer3 ,contw 
+039d 20200393 branch p_mouse_le_txbuff_copy 
+
+p_mouse_le:
+039e 20405892 call le_fifo_check_nearly_full 
+039f 247a0000 nrtn blank 
+03a0 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+03a1 1fe17e03 and pdata ,0x03 ,pdata 
+03a2 c1818000 rtnne 0x03 
+
+p_mouse_le_next:
+03a3 6800c79c fetch 1 ,mem_mouse_clear_sensor_data_flag 
+03a4 205a03f9 call p_mouse_clear_sensor_data ,blank 
+03a5 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+03a6 c282c179 bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+03a7 20403f97 call mouse_motion 
+03a8 24740000 nrtn user 
+03a9 204003b0 call p_mouse_le_current_mult_update 
+03aa 204003b3 call p_mouse_data_xy_release 
+03ab 204003cf call p_mouse_wheel_trigger 
+
+p_mouse_data_push:
+03ac da20469a arg mem_mouse_key ,rega 
+03ad 20407e3d call queue_push 
+03ae 205403be call p_mouse_queue_increase ,user 
+03af 20600000 rtn 
+
+p_mouse_le_current_mult_update:
+03b0 70417200 jam 0 ,mem_lpm_mult 
+03b1 704b5a1e jam 30 ,mem_mouse_le_current_mult_timer 
+03b2 20600000 rtn 
+
+p_mouse_data_xy_release:
+03b3 6800cb59 fetch 1 ,mem_mouse_long_mult_flag 
+03b4 c1808000 rtnne 1 
+03b5 58000000 setarg 0 
+03b6 6000cb59 store 1 ,mem_mouse_long_mult_flag 
+03b7 6002469b store 4 ,mem_mouse_x 
+03b8 20200306 branch p_mouse_sensor_poweron 
+
+p_mouse_data_init:
+03b9 7047a007 jam 7 ,mem_mouse_data_queue 
+03ba 7047a104 jam 4 ,mem_mouse_data_queue + 1 
+03bb 580047a0 setarg mem_mouse_data_queue 
+03bc 60014218 store 2 ,mem_queue_ptr 
+03bd 20207e38 branch queue_init 
+
+p_mouse_queue_increase:
+03be 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
+03bf 1fe0fe01 increase 1 ,pdata 
+03c0 6000c7c1 store 1 ,mem_mouse_data_queue_num 
+03c1 20600000 rtn 
+
+p_mouse_data_pull:
+03c2 da20469a arg mem_mouse_key ,rega 
+03c3 20407e54 call queue_pop 
+03c4 203403c6 branch p_mouse_fill_data_le ,user 
+03c5 20600000 rtn 
+
+p_mouse_fill_data_le:
+03c6 20405652 call le_clear_md 
+03c7 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
+03c8 1fe67c01 sub pdata ,1 ,null 
+03c9 24415650 ncall le_set_md ,positive 
+03ca 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
+03cb 207a0000 rtn blank 
+03cc 1fe0ffff increase -1 ,pdata 
+03cd 6000c7c1 store 1 ,mem_mouse_data_queue_num 
+03ce 20203f90 branch mouse_fill_data_le 
+
+p_mouse_wheel_trigger:
+03cf 6801469f fetch 2 ,mem_mouse_z 
+03d0 207a0000 rtn blank 
+03d1 70480601 jam 1 ,mem_mouse_wheel_trigger 
+03d2 70480702 jam 2 ,mem_mouse_wheel_trigger_timer 
+03d3 20600000 rtn 
+
+p_mouse_bt:
+03d4 20770000 rtn attempt 
+03d5 6800c1e2 fetch 1 ,mem_app_handshake_flag 
+03d6 207a0000 rtn blank 
+03d7 20405271 call l2cap_malloc_is_fifo_nearly_full 
+03d8 247a0000 nrtn blank 
+03d9 6800c79c fetch 1 ,mem_mouse_clear_sensor_data_flag 
+03da 205a03f9 call p_mouse_clear_sensor_data ,blank 
+03db 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+03dc c282bf8a bbit1 mouse_bt_discovery_button_down_flag ,mouse_send_empty_data 
+03dd c284bf8a bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_send_empty_data 
+03de 20403f97 call mouse_motion 
+03df 24740000 nrtn user 
+03e0 204003b0 call p_mouse_le_current_mult_update 
+03e1 204003b3 call p_mouse_data_xy_release 
+03e2 204003cf call p_mouse_wheel_trigger 
+03e3 6800cb03 fetch 1 ,mem_mouse_bt_boot_mode 
+03e4 c00083e8 beq 1 ,p_mouse_send_data_boot_mode 
+03e5 6800cb0a fetch 1 ,mem_mouse_bt_send_first_package_flag 
+03e6 207a0000 rtn blank 
+03e7 20203f81 branch mouse_send_data 
+
+p_mouse_send_data_boot_mode:
+03e8 6800c69a fetch 1 ,mem_mouse_key 
+03e9 6000cb04 store 1 ,mem_mouse_bt_boot_data 
+03ea 6800c69b fetch 1 ,mem_mouse_x 
+03eb e0a08000 istore 1 ,contw 
+03ec 6800c69d fetch 1 ,mem_mouse_y 
+03ed e0a08000 istore 1 ,contw 
+03ee 6801469f fetch 2 ,mem_mouse_z 
+03ef e0a10000 istore 2 ,contw 
+03f0 da200007 arg 7 ,rega 
+03f1 20404d63 call hid_malloc_tx_buff 
+03f2 6801424e fetch 2 ,mem_hid_int_remote_cid 
+03f3 e0a10000 istore 2 ,contw 
+03f4 580002a1 setarg 0x02a1 
+03f5 e0a10000 istore 2 ,contw 
+03f6 6802cb04 fetch 5 ,mem_mouse_bt_boot_data 
+03f7 e0a28000 istore 5 ,contw 
+03f8 20600000 rtn 
+
+p_mouse_clear_sensor_data:
+03f9 70479c01 jam 1 ,mem_mouse_clear_sensor_data_flag 
+03fa 20405814 call le_set_config_more_data 
+03fb 202002fa branch p_mouse_init_sensor_reset 
+
+p_mouse_idle:
+03fc 20407e34 call ui_check_paring_button 
+03fd 204003ff call p_mouse_dpi_check 
+03fe 20203ee0 branch mouse_wheel_check 
+
+p_mouse_dpi_check:
+03ff 6808cb23 fetcht 1 ,mem_24g_sw_gpio 
+0400 2040680e call gpio_config_output 
+0401 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
+0402 204005d5 call p_gpio_set_input_pd 
+0403 6808c6e7 fetcht 1 ,mem_dpi_button_gpio 
+0404 2040681d call gpio_get_bit 
+0405 20208414 branch p_mouse_dpi_up ,true 
+0406 204005de call p_gpio_set_input_pu 
+
+p_mouse_dpi_down:
+0407 6800c6b6 fetch 1 ,mem_mouse_dpi_button_state 
+0408 c1000000 rtneq dpi_button_state_down 
+0409 7046b600 jam dpi_button_state_down ,mem_mouse_dpi_button_state 
+
+p_mouse_dpi_down_next:
+040a 6800c77a fetch 1 ,mem_mouse_dpi 
+040b 1fe0fe01 increase 1 ,pdata 
+040c 1fe17e03 and pdata ,0x03 ,pdata 
+040d 6000c77a store 1 ,mem_mouse_dpi 
+040e 1feffe02 mul32 pdata ,2 ,pdata 
+040f 1fe0fe02 increase 2 ,pdata 
+0410 60014b2b store 2 ,mem_mouse_multi_led_blink_count 
+0411 2040053e call p_mouse_dpi_multi_led_blink 
+0412 20403d7e call mouse_seting_dpi 
+0413 20200334 branch p_mouse_store_flash_device_info 
+
+p_mouse_dpi_up:
+0414 204005de call p_gpio_set_input_pu 
+0415 20203d62 branch mouse_dpi_up 
+
+p_mouse_priority_bb_event:
+0416 1a627e00 copy regc ,pdata 
+0417 c00a0428 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+0418 c00a842b beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+0419 c014842e beq bt_evt_le_enc_info ,p_mouse_le_enc_info 
+041a c0190430 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+041b c0200432 beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
+041c c0020434 beq bt_evt_reconn_failed ,p_mouse_bb_event_reconn_failed 
+041d c0098434 beq bt_evt_reconn_page_timeout ,p_mouse_bb_event_reconn_timeout 
+041e c0138436 beq bt_evt_virtual_cable_unplug ,p_mouse_irtual_cable_unplug 
+041f c00cb3df beq bt_evt_switch_not_accept ,app_bt_role_switch 
+0420 c0108438 beq bt_evt_sniff_not_accept ,p_mouse_sniff_not_accept 
+0421 c000843a beq bt_evt_bb_connected ,p_mouse_bb_event_connected 
+0422 c001043f beq bt_evt_bb_disconnected ,p_mouse_bb_event_disconnected 
+0423 c0158442 beq bt_evt_switch_success_master ,p_mouse_enter_sniff_check 
+0424 c01c8444 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+0425 c01d0448 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+0426 c01e044b beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+0427 2020417d branch mouse_priority_bb_event + 1 
+
+p_mouse_le_bb_event_connected:
+0428 204002fa call p_mouse_init_sensor_reset 
+0429 7011c5b0 jam zcode_b0 ,mem_zcode_temp_param0 
+042a 202007d5 branch p_zcode_entrance 
+
+p_mouse_le_bb_disconnected:
+042b 20400455 call p_mouse_sensor_powerdown_check 
+042c 7011c5a2 jam zcode_a2 ,mem_zcode_temp_param0 
+042d 202007d5 branch p_zcode_entrance 
+
+p_mouse_le_enc_info:
+
+p_app_updata_le_param:
+042e 700a9912 jam bt_cmd_le_update_conn ,mem_fifo_temp 
+042f 20207d8f branch ui_ipc_send_cmd 
+
+p_mouse_le_ll_start_encryt:
+0430 7011c5b3 jam zcode_b3 ,mem_zcode_temp_param0 
+0431 202007d5 branch p_zcode_entrance 
+
+p_mouse_le_conn_param_update_rsp_recieved:
+0432 7011c5a1 jam zcode_a1 ,mem_zcode_temp_param0 
+0433 202007d5 branch p_zcode_entrance 
+
+p_mouse_bb_event_reconn_timeout:
+
+p_mouse_bb_event_reconn_failed:
+0434 7011c5a3 jam zcode_a3 ,mem_zcode_temp_param0 
+0435 202007d5 branch p_zcode_entrance 
+
+p_mouse_irtual_cable_unplug:
+0436 2040438e call mouse_irtual_cable_unplug 
+0437 202033a7 branch app_bb_hibernate 
+
+p_mouse_sniff_not_accept:
+0438 7011c5b1 jam zcode_b1 ,mem_zcode_temp_param0 
+0439 202007d5 branch p_zcode_entrance 
+
+p_mouse_bb_event_connected:
+043a 204002fa call p_mouse_init_sensor_reset 
+043b 204004f5 call p_mouse_null_enter_hibernate_disable 
+043c 20400539 call p_mouse_discovey_led_blink_off 
+043d 70480900 jam 0 ,mem_mouse_send_switch_req_timer 
+043e 202042ca branch mouse_stop_discovery 
+
+p_mouse_bb_event_disconnected:
+043f 20400455 call p_mouse_sensor_powerdown_check 
+0440 7011c5b4 jam zcode_b4 ,mem_zcode_temp_param0 
+0441 202007d5 branch p_zcode_entrance 
+
+p_mouse_enter_sniff_check:
+0442 7011c5b2 jam zcode_b2 ,mem_zcode_temp_param0 
+0443 202007d5 branch p_zcode_entrance 
+
+p_mouse_24g_pairing_complete:
+0444 204002fa call p_mouse_init_sensor_reset 
+0445 20400539 call p_mouse_discovey_led_blink_off 
+0446 7011c592 jam zcode_92 ,mem_zcode_temp_param0 
+0447 202007d5 branch p_zcode_entrance 
+
+p_mouse_24g_attempt_fail:
+0448 20400455 call p_mouse_sensor_powerdown_check 
+0449 7011c5a0 jam zcode_a0 ,mem_zcode_temp_param0 
+044a 202007d5 branch p_zcode_entrance 
+
+p_mouse_24g_attempt_success:
+044b 704b6001 jam 1 ,mem_mouse_24g_attempt_success_flag 
+044c 204004f5 call p_mouse_null_enter_hibernate_disable 
+044d 204002fa call p_mouse_init_sensor_reset 
+044e 20400539 call p_mouse_discovey_led_blink_off 
+044f 20403f8d call mouse_no_data_timer_init 
+
+p_mouse_store_24g_device_2flash:
+0450 20404366 call mouse_cheak_select_24gdevice 
+0451 20200334 branch p_mouse_store_flash_device_info 
+
+p_mouse_before_hibernate:
+0452 20400455 call p_mouse_sensor_powerdown_check 
+0453 7011c5a4 jam zcode_a4 ,mem_zcode_temp_param0 
+0454 202007d5 branch p_zcode_entrance 
+
+p_mouse_sensor_powerdown_check:
+0455 6800cafe fetch 1 ,mem_mouse_init_sensor_reset_flag 
+0456 207a0000 rtn blank 
+0457 704afe00 jam 0 ,mem_mouse_init_sensor_reset_flag 
+0458 20200311 branch p_mouse_sensor_powerdown 
+
+p_mouse_bb_event_timer:
+0459 20400541 call p_mouse_adc_read 
+045a 20400566 call p_mouse_low_voltage_led_timer 
+045b 20400582 call p_low_power_nodata_off_led_time_check 
+045c 204004f8 call p_mouse_multi_led_blink_timer 
+045d 204004bc call p_mouse_wheel_trigger_timer 
+045e 204004e7 call p_mouse_null_enter_hibernate_timer 
+045f 204004c1 call p_mouse_bt_discovery_check 
+0460 20404234 call mouse_check_discovery_timeout_timer 
+0461 2040046b call p_mouse_select_device 
+0462 204004b5 call p_mouse_g24_long_sleep_param_update_timer 
+0463 204004a1 call p_mouse_check_direct_timeout_timer 
+0464 2040049e call p_mouse_le_enable_att_list_timer 
+0465 204004a7 call p_mouse_le_current_mult_update_timer 
+0466 204004ad call p_le_send_smp_security_request_timer 
+0467 20400496 call p_mouse_send_switch_req_timer 
+0468 20404231 call mouse_check_hid_handshake_timer 
+0469 20400499 call p_mouse_bt_check_sniff_req_timeout_timer 
+046a 2020423a branch mouse_check_no_data_timeout_timer 
+
+p_mouse_select_device:
+
+p_mouse_select_device_by_button:
+046b 6808c6ed fetcht 1 ,mem_config_select_device_button_gpio 
+046c 2040681d call gpio_get_bit 
+046d 20208488 branch p_mouse_select_device_button_down ,true 
+
+p_mouse_select_device_button_up:
+046e 6800cb69 fetch 1 ,mem_mouse_select_device_button_wakeup_flag 
+046f 243a0484 nbranch p_mouse_select_button_wakeup_firstup ,blank 
+0470 6800c6d9 fetch 1 ,mem_select_device_button_statue 
+0471 c1008000 rtneq dpi_button_state_up 
+0472 7046d901 jam dpi_button_state_up ,mem_select_device_button_statue 
+0473 704b2401 jam on ,mem_mouse_multi_led_blink_enable 
+0474 6800cb68 fetch 1 ,mem_mouse_long_button_select_device 
+0475 203a0482 branch p_mouse_long_button_state_clear ,blank 
+
+p_mouse_ready_reconnection_by_button:
+0476 2040047b call p_mouse_switch_device_flag 
+0477 7041bd00 jam 0 ,mem_link_key_exists 
+0478 20400334 call p_mouse_store_flash_device_info 
+0479 204043c0 call mouse_select_device_enable 
+047a 2020437e branch mouse_set_reconnection 
+
+p_mouse_switch_device_flag:
+047b 6808c720 fetcht 1 ,mem_device_flag 
+047c 18408401 increase 1 ,temp 
+047d 6800c6d2 fetch 1 ,mem_device_number 
+047e 98467c00 isub temp ,null 
+047f 244143cc ncall mouse_select_device_count_clean ,positive 
+0480 6008c720 storet 1 ,mem_device_flag 
+0481 20600000 rtn 
+
+p_mouse_long_button_state_clear:
+0482 704b68ff jam 0xff ,mem_mouse_long_button_select_device 
+0483 20600000 rtn 
+
+p_mouse_select_button_wakeup_firstup:
+0484 704b6900 jam 0 ,mem_mouse_select_device_button_wakeup_flag 
+0485 7046d901 jam dpi_button_state_up ,mem_select_device_button_statue 
+0486 704b2401 jam on ,mem_mouse_multi_led_blink_enable 
+0487 20600000 rtn 
+
+p_mouse_select_device_button_down:
+0488 68014682 fetch 2 ,mem_ui_state_map 
+0489 c285848b bbit1 ui_state_ble_adv ,p_mouse_select_device_button_down_next 
+048a 704b2400 jam off ,mem_mouse_multi_led_blink_enable 
+
+p_mouse_select_device_button_down_next:
+048b 6800c6d9 fetch 1 ,mem_select_device_button_statue 
+048c c1000000 rtneq dpi_button_state_down 
+048d 7046d900 jam dpi_button_state_down ,mem_select_device_button_statue 
+048e 68014208 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+048f c3850000 rtnbit1 app_disc_pb_button 
+0490 6800c720 fetch 1 ,mem_device_flag 
+0491 c1808000 rtnne mode_bt_device1 
+
+p_mouse_pb_button_2ble_disconnect:
+0492 6801420a fetch app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0493 79207e0a set1 app_disc_pb_button ,pdata 
+0494 6001420a store app_disc_rsn_size ,mem_app_disconn_reason_flag 
+0495 20204386 branch mouse_disconnect 
+
+p_mouse_send_switch_req_timer:
+0496 da604809 arg mem_mouse_send_switch_req_timer ,regc 
+0497 da40637a arg host_create_conn_resend ,regb 
+0498 2020336d branch timer_single_step 
+
+p_mouse_bt_check_sniff_req_timeout_timer:
+0499 da604b09 arg mem_mouse_bt_send_first_package_timer ,regc 
+049a da40049c arg p_mouse_bt_send_first_package ,regb 
+049b 2020336d branch timer_single_step 
+
+p_mouse_bt_send_first_package:
+049c 704b0a01 jam 1 ,mem_mouse_bt_send_first_package_flag 
+049d 20600000 rtn 
+
+p_mouse_le_enable_att_list_timer:
+049e da6046c6 arg mem_le_start_encrypt_timer ,regc 
+049f da403d60 arg mouse_le_write_enable ,regb 
+04a0 2020336d branch timer_single_step 
+
+p_mouse_check_direct_timeout_timer:
+04a1 da6046ae arg mem_mouse_direct_timer ,regc 
+04a2 da4004a4 arg p_mouse_check_direct_timeout ,regb 
+04a3 20203374 branch timer_single_step_2b 
+
+p_mouse_check_direct_timeout:
+04a4 6800cb2e fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+04a5 247a0000 nrtn blank 
+04a6 20204266 branch mouse_check_direct_timeout 
+
+p_mouse_le_current_mult_update_timer:
+04a7 da604b5a arg mem_mouse_le_current_mult_timer ,regc 
+04a8 da4004aa arg p_mouse_le_current_mult_reinit ,regb 
+04a9 2020336d branch timer_single_step 
+
+p_mouse_le_current_mult_reinit:
+04aa 6800c7c5 fetch 1 ,mem_lpm_mult_init 
+04ab 6000c172 store 1 ,mem_lpm_mult 
+04ac 202004ba branch p_mouse_long_mult_flag_enable 
+
+p_le_send_smp_security_request_timer:
+04ad 6800cb61 fetch 1 ,mem_mouse_le_bb_connected_flag 
+04ae 207a0000 rtn blank 
+04af da604b66 arg mem_mouse_send_secutiry_request_timer ,regc 
+04b0 da4004b2 arg p_le_pairing_sm_start_check ,regb 
+04b1 2020336d branch timer_single_step 
+
+p_le_pairing_sm_start_check:
+04b2 6800cb67 fetch 1 ,mem_le_send_security_request_flag 
+04b3 247a0000 nrtn blank 
+04b4 20205bf5 branch le_pairing_sm_start 
+
+p_mouse_g24_long_sleep_param_update_timer:
+04b5 da604b5b arg mem_24g_long_sleep_param_update_timer ,regc 
+04b6 da4004b8 arg p_mouse_g24_long_sleep_normal_param ,regb 
+04b7 2020336d branch timer_single_step 
+
+p_mouse_g24_long_sleep_normal_param:
+04b8 58249f00 setarg g24_long_sleep_step2 
+04b9 6001cc1f store 3 ,mem_24g_enter_hibernate 
+
+p_mouse_long_mult_flag_enable:
+04ba 704b5901 jam 1 ,mem_mouse_long_mult_flag 
+04bb 20600000 rtn 
+
+p_mouse_wheel_trigger_timer:
+04bc da604807 arg mem_mouse_wheel_trigger_timer ,regc 
+04bd da4004bf arg p_mouse_wheel_trigger_disable ,regb 
+04be 2020336d branch timer_single_step 
+
+p_mouse_wheel_trigger_disable:
+04bf 70480600 jam 0 ,mem_mouse_wheel_trigger 
+04c0 20600000 rtn 
+
+p_mouse_bt_discovery_check:
+
+p_mouse_bt_discovery_by_button:
+04c1 6800c720 fetch 1 ,mem_device_flag 
+04c2 c00104cf beq mode_24g_device ,p_mouse_24g_pairing_button_down_first 
+04c3 6808c6ec fetcht 1 ,mem_config_bt_button_gpio 
+04c4 2040681d call gpio_get_bit 
+04c5 202084c9 branch p_mouse_bt_discovery_commbination_key_down ,true 
+
+p_mouse_bt_discovery_commbination_key_up:
+04c6 204043a9 call mouse_bt_discovery_commbination_key_up 
+04c7 d8e00009 arg mouse_bt_discovery_button_long_down_flag ,queue 
+04c8 202043d2 branch mouse_disable_function_flag 
+
+p_mouse_bt_discovery_commbination_key_down:
+04c9 70479e28 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+04ca 204004d8 call p_mouse_bt_discovery_timer 
+04cb 202043b0 branch mouse_bt_discovery_commbination_key_down + 1 
+
+p_mouse_24g_pairing_button_down:
+04cc 70479e28 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+04cd 204004d3 call p_mouse_24g_pairing_timer 
+04ce 202004d7 branch p_mouse_24g_pairing_button_down2 + 1 
+
+p_mouse_24g_pairing_button_down_first:
+04cf 6808c6ec fetcht 1 ,mem_config_bt_button_gpio 
+04d0 2040681d call gpio_get_bit 
+04d1 202084cc branch p_mouse_24g_pairing_button_down ,true 
+04d2 202043b0 branch mouse_bt_discovery_commbination_key_down + 1 
+
+p_mouse_24g_pairing_timer:
+04d3 da6046da arg mem_combination_ui_button_count ,regc 
+04d4 da4004d6 arg p_mouse_24g_pairing_button_down2 ,regb 
+04d5 2020336d branch timer_single_step 
+
+p_mouse_24g_pairing_button_down2:
+04d6 204001bd call p_g24_auto_pair_start 
+04d7 20200532 branch p_mouse_discovery_multi_led_blink 
+
+p_mouse_bt_discovery_timer:
+04d8 da6046da arg mem_combination_ui_button_count ,regc 
+04d9 da4004db arg p_mouse_long_button_bt_discovery ,regb 
+04da 2020336d branch timer_single_step 
+
+p_mouse_long_button_bt_discovery:
+04db 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+04dc c3848000 rtnbit1 mouse_bt_discovery_button_long_down_flag 
+04dd 704b6800 jam 0 ,mem_mouse_long_button_select_device 
+04de 68014682 fetch 2 ,mem_ui_state_map 
+04df 2feffe0b isolate1 ui_state_ble_adv ,pdata 
+04e0 2040c2d4 call mouse_stop_le_adv ,true 
+04e1 68014682 fetch 2 ,mem_ui_state_map 
+04e2 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
+04e3 2040c392 call mouse_cancel_reconnect ,true 
+04e4 d8e00009 arg mouse_bt_discovery_button_long_down_flag ,queue 
+04e5 204043ce call mouse_enable_function_flag 
+04e6 202043b8 branch mouse_long_button_bt_discovry 
+
+p_mouse_null_enter_hibernate_timer:
+04e7 6800cb2e fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+04e8 247a0000 nrtn blank 
+04e9 6800c79d fetch 1 ,mem_mouse_null_enter_hibernate_flag 
+04ea 207a0000 rtn blank 
+04eb 6800c79e fetch 1 ,mem_mouse_null_enter_hibernate_timer 
+04ec 203a04f0 branch p_mouse_null_enter_hibernate ,blank 
+04ed 1fe0ffff increase -1 ,pdata 
+04ee 6000c79e store 1 ,mem_mouse_null_enter_hibernate_timer 
+04ef 20600000 rtn 
+
+p_mouse_null_enter_hibernate:
+04f0 70479d00 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+04f1 2020340a branch app_enter_hibernate 
+
+p_mouse_null_enter_hibernate_enable:
+04f2 70479d01 jam 1 ,mem_mouse_null_enter_hibernate_flag 
+04f3 70479e28 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+04f4 20600000 rtn 
+
+p_mouse_null_enter_hibernate_disable:
+04f5 70479d00 jam 0 ,mem_mouse_null_enter_hibernate_flag 
+04f6 70479e00 jam 0 ,mem_mouse_null_enter_hibernate_timer 
+04f7 20600000 rtn 
+
+p_mouse_multi_led_blink_timer:
+04f8 6800cb24 fetch 1 ,mem_mouse_multi_led_blink_enable 
+04f9 207a0000 rtn blank 
+04fa 6800cb27 fetch 1 ,mem_mouse_multi_led_type 
+04fb c00004fe beq multi_led_on ,p_mouse_multi_led_type_on 
+04fc c0008508 beq multi_led_blink ,p_mouse_multi_led_type_blink 
+04fd 20600000 rtn 
+
+p_mouse_multi_led_type_on:
+04fe 20400518 call p_mouse_multi_led_on 
+04ff 6800cb2c fetch 1 ,mem_mouse_multi_led_on_timer 
+0500 1fe0fe01 increase 1 ,pdata 
+0501 6000cb2c store 1 ,mem_mouse_multi_led_on_timer 
+0502 6808cb28 fetcht 1 ,mem_mouse_multi_led_on_timer_init 
+0503 98467c00 isub temp ,null 
+0504 20428506 call p_mouse_multi_led_off_poweron2s ,zero 
+0505 20600000 rtn 
+
+p_mouse_multi_led_off_poweron2s:
+0506 704b2e00 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
+0507 20200526 branch p_mouse_multi_led_off 
+
+p_mouse_multi_led_type_blink:
+0508 6800cb2a fetch 1 ,mem_mouse_multi_led_blink_timer 
+0509 1fe0ffff increase -1 ,pdata 
+050a 6000cb2a store 1 ,mem_mouse_multi_led_blink_timer 
+050b 247a0000 nrtn blank 
+050c 6800cb29 fetch 1 ,mem_mouse_multi_led_blink_timer_init 
+050d 6000cb2a store 1 ,mem_mouse_multi_led_blink_timer 
+050e 6800cb2d fetch 1 ,mem_mouse_multi_led_blink_count_limited 
+050f 203a0514 branch p_mouse_multi_led_blink_count_no_limited ,blank 
+0510 6800cb2b fetch 1 ,mem_mouse_multi_led_blink_count 
+0511 203a0524 branch p_mouse_multi_led_blink_off ,blank 
+0512 1fe0ffff increase -1 ,pdata 
+0513 6000cb2b store 1 ,mem_mouse_multi_led_blink_count 
+
+p_mouse_multi_led_blink_count_no_limited:
+0514 6800cb26 fetch 1 ,mem_mouse_multi_led_state 
+0515 c0008526 beq on ,p_mouse_multi_led_off 
+0516 c0000518 beq off ,p_mouse_multi_led_on 
+0517 20600000 rtn 
+
+p_mouse_multi_led_on:
+0518 704b2601 jam on ,mem_mouse_multi_led_state 
+0519 6800c720 fetch 1 ,mem_device_flag 
+051a c001051f beq mode_24g_device ,p_mouse_multi_down_led_on 
+
+p_mouse_multi_up_led_on:
+051b 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+051c 2040680e call gpio_config_output 
+051d 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+051e 20206825 branch gpio_out_inactive 
+
+p_mouse_multi_down_led_on:
+051f 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+0520 79200407 set1 7 ,temp 
+0521 2040680e call gpio_config_output 
+0522 6808cb25 fetcht 1 ,mem_mouse_multi_led_gpio 
+0523 20206829 branch gpio_out_active 
+
+p_mouse_multi_led_blink_off:
+0524 58000000 setarg 0 
+0525 6001cb2a store 3 ,mem_mouse_multi_led_blink_timer 
+
+p_mouse_multi_led_off:
+0526 6800cb2b fetch 1 ,mem_mouse_multi_led_blink_count 
+0527 243a052a nbranch p_mouse_multi_led_off_wait_blink_over ,blank 
+0528 704b2400 jam 0 ,mem_mouse_multi_led_blink_enable 
+0529 704b2700 jam 0 ,mem_mouse_multi_led_type 
+
+p_mouse_multi_led_off_wait_blink_over:
+052a 704b2c00 jam 0 ,mem_mouse_multi_led_on_timer 
+052b 704b2600 jam off ,mem_mouse_multi_led_state 
+052c 202002b7 branch p_mouse_multi_led_gpio_set_float 
+
+p_mouse_mode_bt_device1_multi_led_on:
+
+p_mouse_mode_24g_device_multi_led_on:
+052d 704b2e01 jam 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+052e 704b2401 jam on ,mem_mouse_multi_led_blink_enable 
+052f 704b2700 jam multi_led_on ,mem_mouse_multi_led_type 
+0530 704b2c00 jam 0 ,mem_mouse_multi_led_on_timer 
+0531 20600000 rtn 
+
+p_mouse_discovery_multi_led_blink:
+0532 704b2e00 jam 0 ,mem_mouse_multi_led_on_poweron2s_flag 
+0533 704b2903 jam 3 ,mem_mouse_multi_led_blink_timer_init 
+0534 704b2b01 jam 1 ,mem_mouse_multi_led_blink_count 
+
+p_mouse_multi_led_blink_enable:
+0535 704b2a05 jam 5 ,mem_mouse_multi_led_blink_timer 
+0536 704b2401 jam on ,mem_mouse_multi_led_blink_enable 
+0537 704b2701 jam multi_led_blink ,mem_mouse_multi_led_type 
+0538 20600000 rtn 
+
+p_mouse_discovey_led_blink_off:
+0539 6800cb2c fetch 1 ,mem_mouse_multi_led_on_timer 
+053a 247a0000 nrtn blank 
+053b 6800cb2e fetch 1 ,mem_mouse_multi_led_on_poweron2s_flag 
+053c 247a0000 nrtn blank 
+053d 20200524 branch p_mouse_multi_led_blink_off 
+
+p_mouse_dpi_multi_led_blink:
+053e 704b2903 jam 3 ,mem_mouse_multi_led_blink_timer_init 
+053f 704b2d01 jam 1 ,mem_mouse_multi_led_blink_count_limited 
+0540 20200535 branch p_mouse_multi_led_blink_enable 
+
+p_mouse_adc_read:
+0541 6800c6ce fetch 1 ,mem_adc_read_timer 
+0542 1fe0fe01 increase 1 ,pdata 
+0543 6000c6ce store 1 ,mem_adc_read_timer 
+0544 1fe67c0a sub pdata ,10 ,null 
+0545 20610000 rtn positive 
+0546 204068a8 call adc_init_data 
+0547 7046ce00 jam 0 ,mem_adc_read_timer 
+0548 204068eb call adc_set_mode 
+0549 20406908 call vdd_calculate_by_mode 
+054a 6001470f store 2 ,mem_mouse_vdd_now_vol 
+054b da204709 arg mem_mouse_vdd_calculate_set ,rega 
+054c 20400559 call p_adc_bat_percent_lowpower_out 
+054d 6800c231 fetch 1 ,mem_adc_power_flag 
+054e c280b40a bbit1 1 ,app_enter_hibernate 
+054f c3000552 bbit0 0 ,p_mouse_adc_no_low_voltage 
+0550 704afd01 jam 1 ,mem_mouse_adc_last_low_voltage_flag 
+0551 202043e7 branch mouse_adc_low_voltage 
+
+p_mouse_adc_no_low_voltage:
+0552 204043e9 call mouse_adc_no_low_voltage 
+0553 6800cafd fetch 1 ,mem_mouse_adc_last_low_voltage_flag 
+0554 207a0000 rtn blank 
+0555 704afd00 jam 0 ,mem_mouse_adc_last_low_voltage_flag 
+
+p_mouse_adc_low_volatage_led_off:
+0556 6800c6ef fetch 1 ,mem_config_low_voltage_alarm_gpio 
+0557 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+0558 20200524 branch p_mouse_multi_led_blink_off 
+
+p_adc_bat_percent_lowpower_out:
+0559 ea240000 ifetch 8 ,rega 
+055a 60040a9a store 8 ,mem_pdatatemp 
+055b 68090a9c fetcht 2 ,mem_pdatatemp + 2 
+055c 68010aa0 fetch 2 ,mem_pdatatemp + 6 
+055d 98467c00 isub temp ,null 
+055e 24216944 nbranch adc_set_no_power_flag ,positive 
+055f 68090a9e fetcht 2 ,mem_pdatatemp + 4 
+0560 98467c00 isub temp ,null 
+0561 24216940 nbranch adc_set_low_power_flag ,positive 
+
+p_adc_clear_low_power_flag:
+0562 6800c231 fetch 1 ,mem_adc_power_flag 
+0563 793ffe00 set0 0 ,pdata 
+0564 6000c231 store 1 ,mem_adc_power_flag 
+0565 20600000 rtn 
+
+p_mouse_low_voltage_led_timer:
+0566 6800cb37 fetch 1 ,mem_low_power_led_blink_flag 
+0567 247a0000 nrtn blank 
+0568 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+0569 c4020000 rtnbit0 mouse_low_voltage_flag 
+056a 68014682 fetch 2 ,mem_ui_state_map 
+056b c3858000 rtnbit1 ui_state_ble_adv 
+056c c3830000 rtnbit1 ui_state_bt_discovery 
+056d 6800c6ef fetch 1 ,mem_config_low_voltage_alarm_gpio 
+056e 6000c715 store 1 ,mem_mouse_struct_led_gpio 
+056f 58249f00 setarg g24_long_sleep_step2 
+0570 6001cc1f store 3 ,mem_24g_enter_hibernate 
+0571 6800c6cf fetch 1 ,mem_adc_low_volatage_led_timer_count 
+0572 1fe0fe01 pincrease 1 
+0573 6000c6cf store 1 ,mem_adc_low_volatage_led_timer_count 
+0574 c0028524 beq 5 ,p_mouse_multi_led_blink_off 
+0575 1fe67c0a sub pdata ,10 ,null 
+0576 24210578 nbranch p_mouse_adc_low_volatage_led_timer_count_clean ,positive 
+0577 20600000 rtn 
+
+p_mouse_adc_low_volatage_led_timer_count_clean:
+0578 7046cf01 jam 1 ,mem_adc_low_volatage_led_timer_count 
+0579 20200518 branch p_mouse_multi_led_on 
+
+p_low_power_no_data_off_led_time:
+057a 6800cb36 fetch 1 ,mem_low_power_check_count 
+057b 1fe0fe01 increase 1 ,pdata 
+057c 6000cb36 store 1 ,mem_low_power_check_count 
+057d 1fe67c08 sub pdata ,low_voltage_led_count ,null 
+057e 20610000 rtn positive 
+
+p_low_power_no_data_off_led_time_nolimited:
+057f 704b3700 jam 0 ,mem_low_power_led_blink_flag 
+0580 704b3596 jam 0x96 ,mem_low_power_no_data_off_led_time 
+0581 20600000 rtn 
+
+p_low_power_nodata_off_led_time_check:
+0582 da604b35 arg mem_low_power_no_data_off_led_time ,regc 
+0583 da400585 arg p_mouse_check_low_power_nodata_timeout ,regb 
+0584 2020336d branch timer_single_step 
+
+p_mouse_check_low_power_nodata_timeout:
+0585 58604800 setarg g24_long_sleep_step3 
+0586 6001cc1f store 3 ,mem_24g_enter_hibernate 
+0587 704b3701 jam 1 ,mem_low_power_led_blink_flag 
+0588 20200556 branch p_mouse_adc_low_volatage_led_off 
+
+p_mouse_seting_dpi:
+
+p_mouse_seting_sensor_type:
+0589 6800c6e0 fetch 1 ,mem_config_sensor_type 
+058a c001059f beq ka8 ,p_mouse_seting_ka8_dpi 
+058b c0030595 beq p3065_xy ,p_mouse_seting_3065xy_dpi 
+
+p_mouse_seting_3205_dpi:
+058c 6800c77a fetch 1 ,mem_mouse_dpi 
+058d 205a059b call p_mouse_3065xy_dpi_recount ,blank 
+058e 6800c77a fetch 1 ,mem_mouse_dpi 
+058f c0008592 beq mouse_dpi_level2 ,p_mouse_3205_set_cpi1 
+0590 c001bd8c beq mouse_dpi_level4 ,mouse_set_cpi3 
+0591 20203d88 branch mouse_set_cpi2 
+
+p_mouse_3205_set_cpi1:
+0592 6800c77f fetch 1 ,mem_320x_dpi_1 
+0593 1fe0ffff increase -1 ,pdata 
+0594 20203dbe branch mouse_p3205_dpi 
+
+p_mouse_seting_3065xy_dpi:
+0595 6800c77a fetch 1 ,mem_mouse_dpi 
+0596 205a059b call p_mouse_3065xy_dpi_recount ,blank 
+0597 6800c77a fetch 1 ,mem_mouse_dpi 
+0598 c000859d beq mouse_dpi_level2 ,p_mouse_8009_set_cpi1 
+0599 c001bd8c beq mouse_dpi_level4 ,mouse_set_cpi3 
+059a 20203d88 branch mouse_set_cpi2 
+
+p_mouse_3065xy_dpi_recount:
+059b 70477a01 jam mouse_dpi_level2 ,mem_mouse_dpi 
+059c 20600000 rtn 
+
+p_mouse_8009_set_cpi1:
+059d 7046b500 jam 0 ,mem_mouse_cpi_count 
+059e 20203dc1 branch mouse_p3205_dpi + 3 
+
+p_mouse_seting_ka8_dpi:
+059f 6800c77a fetch 1 ,mem_mouse_dpi 
+05a0 c000bd88 beq mouse_dpi_level2 ,mouse_set_cpi2 
+05a1 c0003d8a beq mouse_dpi_level1 ,mouse_set_cpi1 
+05a2 c00185a4 beq mouse_dpi_level4 ,p_mouse_ka8_set_cpi3 
+05a3 20203d8e branch mouse_set_cpi4 
+
+p_mouse_ka8_set_cpi3:
+05a4 58000005 setarg 5 
+05a5 20203dbe branch mouse_p3205_dpi 
+
+p_mouse_motion:
+05a6 78547c00 disable user 
+05a7 58000000 setarg 0 
+05a8 6003469b store 6 ,mem_mouse_x 
+05a9 204005e3 call p_mouse_cheak_sensor_data 
+05aa 20404079 call mouse_zwheel 
+05ab 2040407e call mouse_t_zwheel 
+05ac 204005b1 call p_mouse_key 
+05ad 243405af nbranch p_mouse_motion_nodata ,user 
+05ae 20203fa0 branch mouse_motion + 9 
+
+p_mouse_motion_nodata:
+05af 704b3600 jam 0 ,mem_low_power_check_count 
+05b0 20600000 rtn 
+
+p_mouse_key:
+05b1 204005b3 call p_mouse_check_key_gpio 
+05b2 2020409a branch mouse_key + 1 
+
+p_mouse_check_key_gpio:
+05b3 da200000 arg 0 ,rega 
+05b4 204005b9 call p_mouse_check_lkey_gpio 
+05b5 204005b7 call p_mouse_check_skey_gpio 
+05b6 2020408e branch mouse_check_key_gpio_output 
+
+p_mouse_check_skey_gpio:
+05b7 204005c9 call p_mouse_check_bk_key_gpio 
+05b8 202005cf branch p_mouse_check_fw_key_gpio 
+
+p_mouse_check_lkey_gpio:
+05b9 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
+05ba 204005de call p_gpio_set_input_pu 
+05bb 6808c6e2 fetcht 1 ,mem_lbutton_gpio 
+05bc 2040681d call gpio_get_bit 
+05bd 7920a200 setflag true ,0 ,rega 
+
+p_mouse_check_rkey_gpio:
+05be 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
+05bf 204005de call p_gpio_set_input_pu 
+05c0 6808c6e3 fetcht 1 ,mem_rbutton_gpio 
+05c1 2040681d call gpio_get_bit 
+05c2 7920a201 setflag true ,1 ,rega 
+
+p_mouse_check_mkey_gpio:
+05c3 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
+05c4 204005de call p_gpio_set_input_pu 
+05c5 6808c6e4 fetcht 1 ,mem_mbutton_gpio 
+05c6 2040681d call gpio_get_bit 
+05c7 7920a202 setflag true ,2 ,rega 
+05c8 20600000 rtn 
+
+p_mouse_check_bk_key_gpio:
+05c9 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
+05ca 204005d5 call p_gpio_set_input_pd 
+05cb 6808c6e5 fetcht 1 ,mem_bk_button_gpio 
+05cc 2040681d call gpio_get_bit 
+05cd 7d20a203 nsetflag true ,3 ,rega 
+05ce 202005de branch p_gpio_set_input_pu 
+
+p_mouse_check_fw_key_gpio:
+05cf 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
+05d0 204005d5 call p_gpio_set_input_pd 
+05d1 6808c6e6 fetcht 1 ,mem_fw_button_gpio 
+05d2 2040681d call gpio_get_bit 
+05d3 7d20a204 nsetflag true ,4 ,rega 
+05d4 202005de branch p_gpio_set_input_pu 
+
+p_gpio_set_input_pd:
+05d5 793f8407 set0 gpio_active_bit ,temp 
+05d6 d8a08078 arg core_gpio_pu0 ,contw 
+05d7 20406830 call gpio_set_bit 
+05d8 79200407 set1 gpio_active_bit ,temp 
+
+p_gpio_set_input_pd4:
+05d9 d8a0807c arg core_gpio_pd0 ,contw 
+05da 20406830 call gpio_set_bit 
+05db 793f8407 set0 gpio_active_bit ,temp 
+05dc d8a08070 arg core_gpio_oe0 ,contw 
+05dd 20206830 branch gpio_set_bit 
+
+p_gpio_set_input_pu:
+05de 79200407 set1 gpio_active_bit ,temp 
+
+p_gpio_set_input_pu1:
+05df d8a08078 arg core_gpio_pu0 ,contw 
+05e0 20406830 call gpio_set_bit 
+05e1 793f8407 set0 gpio_active_bit ,temp 
+05e2 202005d9 branch p_gpio_set_input_pd4 
+
+p_mouse_cheak_sensor_data:
+05e3 6800c6e0 fetch 1 ,mem_config_sensor_type 
+
+p_mouse_p32xx_sensor_motion:
+05e4 20403fc0 call mouse_clear_sensor_data 
+05e5 78547c00 disable user 
+05e6 20203fe7 branch mouse_p32xx_sensor_motion_2 
+
+p_mouse_bb_event_discovery_btn:
+05e7 204004f5 call p_mouse_null_enter_hibernate_disable 
+05e8 280ffe26 isolate1 mark_24g ,mark 
+05e9 204081c0 call p_g24_check_51cmd_stop_24g ,true 
+05ea 2020426d branch mouse_bb_event_discovery_btn + 1 
+
+p_le_addr_random_config:
+05eb 7011c581 jam zcode_81 ,mem_zcode_temp_param0 
+05ec 202007d5 branch p_zcode_entrance 
+
+p_mouse_start_discovery:
+05ed 7011c550 jam zcode_50 ,mem_zcode_temp_param0 
+05ee 202007d5 branch p_zcode_entrance 
+
+p_mouse_load_random_addr_increase_count:
+05ef 20400377 call p_flash_release_deep_power_down 
+05f0 d8400002 arg 2 ,temp 
+05f1 da2047c2 arg mem_random_addr_increase_count ,rega 
+05f2 da40005f arg mouse_random_addr_count_eeprom_offset ,regb 
+05f3 6801c700 fetch 3 ,mem_flash_base 
+05f4 9a40fe00 iadd regb ,pdata 
+05f5 20206562 branch spid_read_flash 
+
+p_mouse_load_fast_conn_flag:
+05f6 20400377 call p_flash_release_deep_power_down 
+05f7 d8400001 arg 1 ,temp 
+05f8 da204b62 arg mem_mouse_fast_conn_flag ,rega 
+05f9 da400064 arg mouse_fast_conn_flag_offset ,regb 
+05fa 6801c700 fetch 3 ,mem_flash_base 
+05fb 9a40fe00 iadd regb ,pdata 
+05fc 20206562 branch spid_read_flash 
+
+p_le_adv_data_update:
+05fd d8a0437b arg mem_le_adv_data + 11 ,contw 
+05fe df200013 arg 19 ,loopcnt 
+05ff 20407f01 call memcpy 
+0600 202057b8 branch le_modified_name_adv 
+
+p_mouse_stop_discovery:
+0601 58000000 setarg 0 
+0602 600146ac store 2 ,mem_mouse_discovery_timer 
+0603 20400306 call p_mouse_sensor_poweron 
+0604 6800c092 fetch 1 ,mem_device_option 
+0605 2feffe00 isolate1 mode_3_mouse ,pdata 
+0606 2040c2d7 call mouse_stop_bt3_discovery ,true 
+0607 20200539 branch p_mouse_discovey_led_blink_off 
+
+p_le_slave_match:
+0608 6800c50f fetch 1 ,mem_le_md_count 
+0609 1fe0fe01 pincrease 1 
+060a 6000c50f store 1 ,mem_le_md_count 
+060b c0065395 beq le_md_max_count ,le_slave_cont 
+060c 204055aa call le_acknowledge 
+060d 2040561e call le_prepare_tx 
+060e 20400778 call power_ctrl_start 
+060f 2020538f branch le_slave_match + 7 
+
+p_le_next_adv_channel:
+0610 68008016 fetch 1 ,mem_le_ch_mapped 
+0611 1fe0fe01 increase 1 ,pdata 
+0612 60008016 store 1 ,mem_le_ch_mapped 
+0613 c1940000 rtnne 40 
+0614 70001625 jam 37 ,mem_le_ch_mapped 
+0615 20600000 rtn 
+
+p_le_receive_skip:
+0616 204029bb call save_rssi 
+0617 2040006b call p_rssi_signal 
+0618 202054a3 branch le_receive_skip + 2 
+
+p_le_update_param:
+0619 7011c540 jam zcode_40 ,mem_zcode_temp_param0 
+061a 202007d5 branch p_zcode_entrance 
+
+p_le_update_channel_map:
+061b 7011c541 jam zcode_41 ,mem_zcode_temp_param0 
+061c 202007d5 branch p_zcode_entrance 
+
+p_le_prepare_tx:
+061d 68008456 fetch 1 ,mem_le_arq 
+061e c2828631 bbit1 wak ,p_le_prepare_tx_wak 
+061f 2040076a call power_ctrl_pac_succ_incrs 
+0620 6800c78e fetch 1 ,mem_empty_count 
+0621 243a0627 nbranch p_le_send_empyt ,blank 
+0622 6800843f fetch 1 ,mem_le_state 
+0623 c302062b bbit0 lestate_encryption ,p_le_tx_4 
+0624 680082da fetch 1 ,mem_le_rxbuf + 1 
+0625 203a062b branch p_le_tx_4 ,blank 
+0626 20205664 branch le_send_empty 
+
+p_le_send_empyt:
+0627 6800c78e fetch 1 ,mem_empty_count 
+0628 1fe0ffff increase -1 ,pdata 
+0629 6000c78e store 1 ,mem_empty_count 
+062a 20205664 branch le_send_empty 
+
+p_le_tx_4:
+062b 6800c4c4 fetch 1 ,mem_le_pairing_state 
+062c c082862e bne flag_le_pairing_after_auth ,p_in_le_tx_4 
+062d 70478e03 jam 3 ,mem_empty_count 
+
+p_in_le_tx_4:
+062e 20405892 call le_fifo_check_nearly_full 
+062f 205a03c2 call p_mouse_data_pull ,blank 
+0630 20205622 branch le_prepare_tx + 4 
+
+p_le_prepare_tx_wak:
+0631 20400633 call p_le_check_tx_retransmit_setmd 
+0632 2020063f branch p_le_power_ctrl_pac_succ_decrs 
+
+p_le_check_tx_retransmit_setmd:
+0633 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0634 1fe17e03 and pdata ,0x03 ,pdata 
+0635 c1818000 rtnne 0x03 
+0636 6800c7c1 fetch 1 ,mem_mouse_data_queue_num 
+0637 207a0000 rtn blank 
+0638 6800c3dd fetch 1 ,mem_le_txlen 
+0639 207a0000 rtn blank 
+063a 6800c3dc fetch 1 ,mem_le_txheader 
+063b 79207e04 set1 md ,pdata 
+063c 6000c3dc store 1 ,mem_le_txheader 
+063d 20405650 call le_set_md 
+063e 20600000 rtn 
+
+p_le_power_ctrl_pac_succ_decrs:
+063f 2020076e branch power_ctrl_pac_succ_decrs 
+
+p_mouse_le_reconn_write_enable_timer_reinit:
+0640 6800c79f fetch 1 ,mem_mouse_le_reconnect_flag 
+0641 207a0000 rtn blank 
+0642 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+0643 1fe17e03 and pdata ,0x03 ,pdata 
+0644 c1018000 rtneq 0x03 
+0645 7046c601 jam 1 ,mem_le_start_encrypt_timer 
+0646 20600000 rtn 
+
+p_le_parse:
+0647 c6078000 rtnmark1 mark_old_packet 
+0648 20405890 call le_fifo_check_full 
+0649 247a0000 nrtn blank 
+064a 680082d9 fetch 1 ,mem_le_rxbuf 
+064b 1fe17e03 and pdata ,0x3 ,pdata 
+064c 6000c50c store 1 ,mem_le_packet_llid 
+064d e8c08000 ifetch 1 ,contr 
+064e 1fe17e1f and pdata ,0x1f ,pdata 
+064f 6000c50b store 1 ,mem_le_packet_size 
+0650 207a0000 rtn blank 
+0651 18c27e00 copy contr ,pdata 
+0652 6001450d store 2 ,mem_le_payload_ptr 
+0653 6800c50c fetch 1 ,mem_le_packet_llid 
+0654 c0018656 beq llid_le_ll ,p_le_parse_ll 
+0655 2020568d branch le_parse_l2cap 
+
+p_le_parse_ll:
+0656 680082db fetch 1 ,mem_le_rxbuf + 2 
+0657 c0008659 beq ll_channel_map_req ,p_le_parse_channel_map_req 
+0658 20205c65 branch le_parse_ll + 1 
+
+p_le_parse_channel_map_req:
+0659 e8c28000 ifetch 5 ,contr 
+065a 6002c3ce store 5 ,mem_le_new_map 
+065b e8c10000 ifetch 2 ,contr 
+065c 6001045f store 2 ,mem_le_instant 
+065d 20205c8a branch le_parse_channel_map_req + 7 
+
+p_le_parse_l2cap:
+065e e8c10000 ifetch 2 ,contr 
+065f c0020662 beq le_l2cap_cid_att ,p_le_parse_att 
+0660 c003068f beq le_l2cap_cid_smp ,p_le_parse_smp 
+0661 20205698 branch le_parse_l2cap + 11 
+
+p_le_parse_att:
+0662 20407ea5 call store_contr 
+0663 20400640 call p_mouse_le_reconn_write_enable_timer_reinit 
+0664 20407e9f call get_contr 
+0665 e8c18000 ifetch 3 ,contr 
+0666 60018477 store 3 ,mem_le_att_opcode 
+0667 c0080671 beq attop_read_by_group_type_request ,p_le_parse_att_read_by_group_type_request 
+0668 1fec8400 rshift8 pdata ,temp 
+0669 18467c24 sub temp ,0x24 ,null 
+066a 2021067f branch p_le_parse_att1 ,positive 
+066b d84047c6 arg mem_mouse_le_uuid_sup ,temp 
+066c 600944bc storet 2 ,mem_ui_le_uuid_table 
+066d 204058ad call le_parse_att + 2 
+066e 58008e7a setarg 0x8e7a 
+066f 600144bc store 2 ,mem_ui_le_uuid_table 
+0670 20600000 rtn 
+
+p_le_parse_att_read_by_group_type_request:
+0671 204059fa call le_parse_att_read_by_group_type_request 
+0672 20405879 call le_fifo_get_last_tx_ptr 
+0673 18c08c07 increase 7 ,contr 
+0674 e8c08000 ifetch 1 ,contr 
+0675 c1888000 rtnne attop_read_by_group_type_response 
+0676 18c08c05 increase 5 ,contr 
+0677 e8c10000 ifetch 2 ,contr 
+0678 d8401812 arg uuid_service_hids ,temp 
+0679 98467c00 isub temp ,null 
+067a 24628000 nrtn zero 
+067b 18c08dfc increase -4 ,contr 
+067c 5800002b setarg 0x2b 
+067d e0c10000 istore 2 ,contr 
+067e 20600000 rtn 
+
+p_le_parse_att1:
+067f c0050681 beq attop_read_request ,p_le_parse_att_read_request 
+0680 202058ad branch le_parse_att + 2 
+
+p_le_parse_att_read_request:
+0681 68090478 fetcht 2 ,mem_le_att_handle 
+0682 6800c4e9 fetch 1 ,mem_le_configuration 
+0683 c2818688 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+
+p_le_send_att_read_response:
+0684 68010478 fetch 2 ,mem_le_att_handle 
+0685 c009da76 beq 0x13 ,le_send_att_error_response_notfound 
+0686 68090478 fetcht 2 ,mem_le_att_handle 
+0687 202059bf branch le_send_att_read_response 
+
+p_le_send_att_read_response_check_auth:
+0688 680144fa fetch 2 ,mem_le_pairing_handle 
+0689 98467c00 isub temp ,null 
+068a 24228684 nbranch p_le_send_att_read_response ,zero 
+068b 20405a42 call le_check_encrypt_state 
+068c 24340684 nbranch p_le_send_att_read_response ,user 
+068d 70047a05 jam att_err_insufficient_authentication ,mem_le_err_code 
+068e 20205a77 branch le_send_att_error_response 
+
+p_le_parse_smp:
+068f e8c08000 ifetch 1 ,contr 
+0690 c0008693 beq smp_pairing_request ,p_le_parse_smp_pairing_request 
+0691 c0028695 beq smp_pairing_failed ,p_le_parse_smp_pairing_failed 
+0692 20205af6 branch le_parse_smp + 2 
+
+p_le_parse_smp_pairing_request:
+0693 704b6701 jam 1 ,mem_le_send_security_request_flag 
+0694 20205b09 branch le_parse_smp_pairing_request 
+
+p_le_parse_smp_pairing_failed:
+0695 7011c582 jam zcode_82 ,mem_zcode_temp_param0 
+0696 202007d5 branch p_zcode_entrance 
+
+p_le_adv_not_match:
+0697 68008016 fetch 1 ,mem_le_ch_mapped 
+0698 c093d6f2 bne 39 ,le_adv_loop 
+0699 2040069d call p_le_adv_random_delay 
+069a d8e00000 arg le_adv_interval_timer ,queue 
+069b 68014482 fetch 2 ,mem_le_adv_interval 
+069c 20207f08 branch timer_init 
+
+p_le_adv_random_delay:
+069d 180a7e00 random pdata 
+069e d84001ff arg 0x1ff ,temp 
+069f 98417e00 iand temp ,pdata 
+06a0 1fe0fefa add pdata ,250 ,pdata 
+06a1 20203cbe branch delay 
+
+p_le_lpm_setmult:
+06a2 7855fc00 disable wake 
+06a3 203706a5 branch p_le_lpm_set_mult_attempt ,attempt 
+06a4 2436d806 nbranch le_lpm_lost ,match 
+
+p_le_lpm_set_mult_attempt:
+06a5 20402bcb call lpm_match 
+06a6 680140c1 fetch 2 ,mem_rx_window_sniff 
+06a7 6001044d store 2 ,mem_le_receive_window 
+06a8 6800c6c5 fetch 1 ,mem_le_connect_status_flag 
+06a9 2fe00603 compare 3 ,pdata ,3 
+06aa 2420abde nbranch lpm_mult_short ,true 
+06ab 202057fb branch le_lpm_set_mult_attempt + 3 
+
+p_le_mouse_bb_event_connect_complete:
+06ac 7011c542 jam zcode_42 ,mem_zcode_temp_param0 
+06ad 202007d5 branch p_zcode_entrance 
+
+p_twspi_reset:
+06ae 68108077 hfetch 1 ,core_gpio_out3 
+06af 1fe17efd and_into 0xfd ,pdata 
+06b0 60108077 hstore 1 ,core_gpio_out3 
+06b1 68188073 hfetcht 1 ,core_gpio_oe3 
+06b2 18418402 or_into 0x2 ,temp 
+06b3 60188073 hstoret 1 ,core_gpio_oe3 
+06b4 204063ee call twspi_disable 
+06b5 184104fd and_into 0xfd ,temp 
+06b6 2000000d nop 13 
+06b7 204006bb call p_twspi_enable 
+06b8 60188073 hstoret 1 ,core_gpio_oe3 
+06b9 20600000 rtn 
+
+p_spid_init:
+06ba 204064dd call spid_init_common 
+
+p_twspi_enable:
+06bb 68108081 hfetch 1 ,core_gpio_sel1 
+06bc 79207e00 set1 0 ,pdata 
+06bd 793ffe01 set0 1 ,pdata 
+06be 793ffe03 set0 3 ,pdata 
+06bf 60108081 hstore 1 ,core_gpio_sel1 
+06c0 20600000 rtn 
+
+p_page_wait_fhs_reply_ok:
+06c1 7011c500 jam zcode_00 ,mem_zcode_temp_param0 
+06c2 202007d5 branch p_zcode_entrance 
+
+p_role_switch_master:
+06c3 204021c9 call role_switch_check 
+06c4 24740000 nrtn user 
+
+p_wait_role_switch_anchor:
+06c5 78547c00 disable user 
+06c6 70001120 jam param_newconnto ,mem_newconnto_counter 
+06c7 793f800b set0 mark_fhs_already_good ,mark 
+06c8 793f802d set0 mark_role_switch_receive_fhs ,mark 
+
+p_roles_waitfhs_loop:
+06c9 20402a4f call rf_setup_time_master_slot 
+06ca 204022e6 call master_recv_packet 
+06cb c50586d0 bmark1 mark_fhs_already_good ,p_roles_replyto_fhs 
+06cc 20402455 call new_conn_timeout 
+06cd 243a06c9 nbranch p_roles_waitfhs_loop ,blank 
+06ce c51686d9 bmark1 mark_role_switch_receive_fhs ,p_roles_replyto_fhs1 
+06cf 202021ec branch role_switch_fail_master 
+
+p_roles_replyto_fhs:
+06d0 20402a4d call rf_setup_time_slave_slot 
+06d1 d8200010 arg type_id ,type 
+06d2 204022dc call master_send_packet 
+06d3 7920002d set1 mark_role_switch_receive_fhs ,mark 
+06d4 793f800b set0 mark_fhs_already_good ,mark 
+06d5 68008077 fetch 1 ,mem_amaddr 
+06d6 98000800 iforce am_addr 
+06d7 70001102 jam 2 ,mem_newconnto_counter 
+06d8 202006c9 branch p_roles_waitfhs_loop 
+
+p_roles_replyto_fhs1:
+06d9 68020165 fetch 4 ,mem_clke_bt 
+06da 1fe0fe08 pincrease 8 
+06db 60020165 store 4 ,mem_clke_bt 
+06dc 202021f8 branch roles_replyto_fhs + 4 
+
+p_process_dmh:
+06dd c516264d bmark1 mark_first_packet ,end_of_packet 
+06de 2020258f branch process_dmh + 1 
+
+p_quit_connection_cont:
+06df 204033af call app_disconn_reason_collect_bt 
+06e0 204026e9 call sniff_exit 
+06e1 700a9902 jam bt_evt_bb_disconnected ,mem_fifo_temp 
+06e2 20407d86 call ui_ipc_send_event 
+06e3 20405cf7 call init_lmp_work 
+06e4 20404d6b call l2cap_init_work 
+06e5 2020246e branch quit_connection_cont + 8 
+
+p_prepare_tx:
+06e6 68008030 fetch 1 ,mem_state 
+06e7 2feffe00 isolate1 state_inconn ,pdata 
+06e8 204086ea call p_bt_power_ctrl ,true 
+06e9 2020248a branch prepare_tx + 1 
+
+p_bt_power_ctrl:
+06ea 68008047 fetch 1 ,mem_arq 
+06eb 2feffe03 isolate1 wack ,pdata 
+06ec 2040876e call power_ctrl_pac_succ_decrs ,true 
+06ed 2440876a ncall power_ctrl_pac_succ_incrs ,true 
+06ee 20200778 branch power_ctrl_start 
+
+p_slave_conn_recv_packet:
+06ef 204024f0 call slave_receive_master_slot 
+06f0 242c28f9 nbranch shutdown_radio ,sync 
+06f1 204029bb call save_rssi 
+06f2 2040006b call p_rssi_signal 
+06f3 20202518 branch slave_conn_recv_packet + 4 
+
+p_lpm_dispatch:
+06f4 c6130000 rtnmark1 mark_24g 
+06f5 20402afa call lpo_calibration 
+06f6 6801c16f fetch 3 ,mem_clks_per_lpo 
+06f7 207a0000 rtn blank 
+06f8 6800c091 fetch 1 ,mem_lpm_mode 
+06f9 207a0000 rtn blank 
+06fa 6800c65a fetch 1 ,mem_ssp_enable 
+06fb 203a06fe branch p_lpm_dispatch_next ,blank 
+06fc 6800c5b1 fetch 1 ,mem_sp_local_key_invalid 
+06fd 207a0000 rtn blank 
+
+p_lpm_dispatch_next:
+06fe 6800c4c0 fetch 1 ,mem_le_sc_calc 
+06ff 247a0000 nrtn blank 
+0700 20402c3a call lpm_check_wake_lock 
+0701 247a0000 nrtn blank 
+0702 6800c040 fetch 1 ,mem_context 
+0703 2fe00e03 compare 3 ,pdata ,0x7 
+0704 2420ab9d nbranch lpm_dispatch_unconn ,true 
+0705 68014042 fetch 2 ,mem_context + coffset_tsniff 
+0706 d840ffff arg 0xffff ,temp 
+0707 98467c00 isub temp ,null 
+0708 20628000 rtn zero 
+0709 20202b7d branch lpm_dispatch_next + 9 
+
+p_lpm_set_mult:
+070a 7855fc00 disable wake 
+070b 68008030 fetch 1 ,mem_state 
+070c c4008000 rtnbit0 state_insniff 
+070d 2436abd0 nbranch lpm_not_match ,match 
+070e 20402bcb call lpm_match 
+070f 680140c1 fetch 2 ,mem_rx_window_sniff 
+0710 6001003e store 2 ,mem_rx_window 
+0711 68008047 fetch 1 ,mem_arq 
+0712 c281abde bbit1 wack ,lpm_mult_short 
+0713 c586abde bmark0 mark_lpm_mult_enable ,lpm_mult_short 
+0714 20405274 call l2cap_malloc_is_fifo_empty 
+0715 243a2bde nbranch lpm_mult_short ,blank 
+0716 205a0718 call p_lpm_set_attemp_timeout ,blank 
+0717 20202bbe branch lpm_set_mult + 13 
+
+p_lpm_set_attemp_timeout:
+0718 70008a01 jam 1 ,mem_current_sniff_attempt 
+0719 70008b00 jam 0 ,mem_current_sniff_timeout 
+071a 20600000 rtn 
+
+p_mouse_bb_disconnected:
+071b 7011c510 jam zcode_10 ,mem_zcode_temp_param0 
+071c 202007d5 branch p_zcode_entrance 
+
+p_hid_rx_process:
+071d 7011c511 jam zcode_11 ,mem_zcode_temp_param0 
+071e 202007d5 branch p_zcode_entrance 
+
+p_parse_lmp_accepted:
+071f 68008552 fetch 1 ,mem_rxbuf + 1 
+0720 600084c9 store 1 ,mem_lmi_accepted_opcode 
+0721 c0098723 beq lmp_switch_req ,p_parse_lmp_accepted_switch 
+0722 20205db4 branch parse_lmp_accepted + 3 
+
+p_parse_lmp_accepted_switch:
+0723 20405dcf call parse_lmp_accepted_switch 
+0724 704aff01 jam 1 ,mem_bt_rcvd_switch_req_accept 
+0725 6800cb01 fetch 1 ,mem_bt_send_lmp_setup_complete 
+0726 207a0000 rtn blank 
+0727 704b0102 jam 2 ,mem_bt_send_lmp_setup_complete 
+0728 20600000 rtn 
+
+p_send_lmp:
+0729 7011c520 jam zcode_20 ,mem_zcode_temp_param0 
+072a 202007d5 branch p_zcode_entrance 
+
+p_process_conn_sm:
+072b 204062bc call lmo_fifo_check 
+072c 247a0000 nrtn blank 
+
+p_process_conn_sm_continue:
+072d 68008055 fetch 1 ,mem_conn_sm 
+072e 207a0000 rtn blank 
+072f c002074d beq conn_sm_send_conn_req ,p_host_create_conn_send_conn_req 
+0730 c0080732 beq conn_sm_wait_switch_after_host_connection ,p_host_creat_conn_wait_switch 
+0731 20206320 branch process_conn_sm_continue + 2 
+
+p_host_creat_conn_wait_switch:
+0732 6800c55b fetch 1 ,mem_switch_flag 
+0733 c1000000 rtneq switch_flag_init 
+0734 c0008736 beq switch_flag_accept ,p_host_create_conn_switch_accept 
+0735 2020635f branch host_creat_conn_wait_switch + 3 
+
+p_host_create_conn_switch_accept:
+0736 20748000 rtn master 
+
+p_host_create_conn_auth_pair:
+0737 6800816d fetch 1 ,mem_connection_options 
+0738 c280073a bbit1 connection_auth ,p_host_create_conn_auth_pair_true 
+0739 20206399 branch host_create_conn_auth_pair + 1 
+
+p_host_create_conn_auth_pair_true:
+073a 6800cb01 fetch 1 ,mem_bt_send_lmp_setup_complete 
+073b c000e39d beq 1 ,host_create_conn_auth_pair_true 
+073c 6800c1bd fetch 1 ,mem_link_key_exists 
+073d 203a63a9 branch host_create_conn_auth_pair_nokey ,blank 
+073e 680084d1 fetch 1 ,mem_lmp_conn_state 
+073f c4018000 rtnbit0 sent_setup_complete 
+0740 c4010000 rtnbit0 received_setup_complete 
+0741 6800cb00 fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+0742 207a0000 rtn blank 
+0743 704b0000 jam 0 ,mem_bt_send_max_slot_req_accept_after_switch 
+0744 680204e9 fetch 4 ,mem_aurand_send_delay_time 
+0745 d8400014 arg 20 ,temp 
+0746 98408400 iadd temp ,temp 
+0747 1c427e00 copy clkn_bt ,pdata 
+0748 98467c00 isub temp ,null 
+0749 2421074b nbranch p_bt_send_max_slot_req_accept_after_switch_wait ,positive 
+074a 20206349 branch host_create_conn_auth 
+
+p_bt_send_max_slot_req_accept_after_switch_wait:
+074b 704b0001 jam 1 ,mem_bt_send_max_slot_req_accept_after_switch 
+074c 20600000 rtn 
+
+p_host_create_conn_send_conn_req:
+074d 70480914 jam 20 ,mem_mouse_send_switch_req_timer 
+074e 2020636f branch host_create_conn_send_conn_req 
+
+p_check_51cmd_once_continue:
+074f 204062bc call lmo_fifo_check 
+0750 243a7ddb nbranch check_51cmd_restore ,blank 
+0751 68008a99 fetch 1 ,mem_fifo_temp 
+0752 c584fdd6 bmark0 mark_context ,check_51cmd_check_idle 
+0753 c00f875a beq bt_cmd_store_reconn_info_le ,p_flash_store_le_reconn_info 
+0754 c010075d beq bt_cmd_store_reconn_info_bt ,p_flash_store_bd_reconn_info 
+0755 c0090757 beq bt_cmd_le_update_conn ,p_check_51cmd_ble_update_connect_param 
+0756 20207dca branch check_51cmd_once_continue + 2 
+
+p_check_51cmd_ble_update_connect_param:
+0757 20405890 call le_fifo_check_full 
+0758 247a0000 nrtn blank 
+0759 20205abf branch le_l2cap_tx_update_req 
+
+p_flash_store_le_reconn_info:
+075a 70018534 jam rec_4_mode ,mem_record_bt_mode 
+075b 6803044f fetch 6 ,mem_le_plap 
+075c 2020075f branch p_flash_store_reconn_info 
+
+p_flash_store_bd_reconn_info:
+075d 70018533 jam rec_3_mode ,mem_record_bt_mode 
+075e 68030040 fetch 6 ,mem_plap 
+
+p_flash_store_reconn_info:
+075f 60030186 store 6 ,mem_temp_lap 
+
+p_mouse_store_remote_bdaddr:
+0760 680246d3 fetch mouse_flag_len ,mem_mouse_flag 
+0761 c4038000 rtnbit0 mouse_store_eeprom_flag 
+0762 d8e00007 arg mouse_store_eeprom_flag ,queue 
+0763 204043d2 call mouse_disable_function_flag 
+0764 204042e8 call mouse_check_device_addr 
+
+p_mouse_unplug_clean_bdaddr:
+0765 204042fb call mouse_before_store_reconn_info 
+0766 20200334 branch p_mouse_store_flash_device_info 
+
+power_ctrl_pac_succ_cnt_init:
+0767 704d2c01 jam 1 ,mem_power_ctrl_level 
+0768 704d2900 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+0769 20600000 rtn 
+
+power_ctrl_pac_succ_incrs:
+076a 6800cd29 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+076b 1fe0fe01 increase 1 ,pdata 
+076c 6000cd29 store 1 ,mem_power_ctrl_pac_succ_cnt 
+076d 20600000 rtn 
+
+power_ctrl_pac_succ_decrs:
+076e 6800cd29 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+076f 1fe67c02 sub pdata ,2 ,null 
+0770 24410776 ncall power_ctrl_pac_succ_cnt_reinit ,positive 
+0771 6800cd29 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0772 c1000000 rtneq 0 
+0773 1fe0ffff increase -1 ,pdata 
+0774 6000cd29 store 1 ,mem_power_ctrl_pac_succ_cnt 
+0775 20600000 rtn 
+
+power_ctrl_pac_succ_cnt_reinit:
+0776 704d2903 jam 3 ,mem_power_ctrl_pac_succ_cnt 
+0777 20600000 rtn 
+
+power_ctrl_start:
+0778 68014682 fetch 2 ,mem_ui_state_map 
+0779 c3858000 rtnbit1 ui_state_ble_adv 
+077a c3838000 rtnbit1 ui_state_bt_reconnect 
+077b c3830000 rtnbit1 ui_state_bt_discovery 
+077c da204cb2 arg mem_rssi_signal_buf ,rega 
+077d 2040028d call p_rssi_average 
+077e 6008cd2a storet 1 ,mem_rssi_avg_received 
+077f 58000082 setarg rssi_dis_max_24g 
+0780 c5130782 bmark1 mark_24g ,power_ctrl_start_next 
+0781 58000080 setarg rssi_dis_max_ble 
+
+power_ctrl_start_next:
+0782 98467c00 isub temp ,null 
+0783 2421079a nbranch power_ctrl_txpower_incrs_force ,positive 
+0784 6800cd29 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0785 1fe67c02 sub pdata ,2 ,null 
+0786 2421078a nbranch power_ctrl_txpower_decrs_check ,positive 
+0787 6800cd29 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+0788 c000079b beq 0 ,power_ctrl_txpower_incrs 
+0789 20600000 rtn 
+
+power_ctrl_txpower_decrs_check:
+078a 6800cd29 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+078b c1900000 rtnne 32 
+078c 704d2900 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+
+power_ctrl_txpower_decrs:
+078d 6808cd2a fetcht 1 ,mem_rssi_avg_received 
+078e 58000077 setarg rssi_dis_min_24g 
+078f c5130791 bmark1 mark_24g ,power_ctrl_txpower_decrs_next 
+0790 58000075 setarg rssi_dis_min_ble 
+
+power_ctrl_txpower_decrs_next:
+0791 98467c00 isub temp ,null 
+0792 24610000 nrtn positive 
+0793 6800cd2c fetch 1 ,mem_power_ctrl_level 
+0794 c00007a2 beq 0 ,power_ctrl_decrs_level0 
+0795 1fe0ffff increase -1 ,pdata 
+0796 6000cd2c store 1 ,mem_power_ctrl_level 
+0797 c00007a2 beq 0 ,power_ctrl_decrs_level0 
+
+power_ctrl_decrs_level1:
+
+power_ctrl_incrs_level1:
+0798 7041de00 jam tx_power_0db ,mem_tx_power 
+0799 20600000 rtn 
+
+power_ctrl_txpower_incrs_force:
+079a 704d2900 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+
+power_ctrl_txpower_incrs:
+079b 6800cd2c fetch 1 ,mem_power_ctrl_level 
+079c c00107a0 beq 2 ,power_ctrl_incrs_level2 
+079d 1fe0fe01 increase 1 ,pdata 
+079e 6000cd2c store 1 ,mem_power_ctrl_level 
+079f c0008798 beq 1 ,power_ctrl_incrs_level1 
+
+power_ctrl_incrs_level2:
+07a0 7041de02 jam tx_power_5db ,mem_tx_power 
+07a1 20600000 rtn 
+
+power_ctrl_decrs_level0:
+07a2 7041de04 jam tx_power_f5db ,mem_tx_power 
+07a3 20600000 rtn 
+
+p_set_freq_tx:
+07a4 60088017 storet 1 ,mem_last_freq 
+07a5 1840a200 add temp ,0 ,rega 
+07a6 20402981 call rf_write_freq 
+07a7 58000500 setarg param_pll_setup 
+07a8 20402a8f call sleep 
+
+p_rf_tx_enable:
+07a9 70890601 jam 0x1 ,rfen_adc 
+07aa 7089003c jam 0x3c ,rfen_rx 
+07ab 708901e0 jam 0xe0 ,rfen_tx 
+07ac 2000000a nop 10 
+07ad 70890201 jam 0x01 ,rfen_mdm 
+07ae 7089023d jam 0x3d ,rfen_mdm 
+07af 2000000a nop 10 
+07b0 708903b7 jam 0xb7 ,rfen_sn 
+07b1 2000000a nop 10 
+07b2 7089027d jam 0x7d ,rfen_mdm 
+07b3 6800c1de fetch 1 ,mem_tx_power 
+07b4 c00107bc beq tx_power_5db ,p_set_tx_power_5db 
+07b5 c00207c1 beq tx_power_f5db ,p_set_tx_power_f5db 
+07b6 c01007d0 beq tx_power_pair ,p_set_tx_power_pair 
+
+p_set_tx_power_0db:
+07b7 204007c6 call p_rx_low_sens 
+07b8 708955d0 jam 0xd0 ,0x8955 
+07b9 708956e0 jam 0xe0 ,0x8956 
+07ba 7089586c jam 0x6c ,0x8958 
+07bb 2020294b branch set_tx_power_0db 
+
+p_set_tx_power_5db:
+07bc 204007cb call p_rx_high_sens 
+07bd 708955d0 jam 0xd0 ,0x8955 
+07be 708956e0 jam 0xe0 ,0x8956 
+07bf 7089583c jam 0x3c ,0x8958 
+07c0 20202953 branch set_tx_power_5db 
+
+p_set_tx_power_f5db:
+07c1 204007c6 call p_rx_low_sens 
+07c2 708955d0 jam 0xd0 ,0x8955 
+07c3 708956c0 jam 0xc0 ,0x8956 
+07c4 7089586c jam 0x6c ,0x8958 
+07c5 2020295b branch set_tx_power_f5db 
+
+p_rx_low_sens:
+07c6 70894c5b jam 0x5b ,0x894c 
+07c7 70894d96 jam 0x96 ,0x894d 
+07c8 70894e2c jam 0x2c ,0x894e 
+07c9 70894f46 jam 0x46 ,0x894f 
+07ca 20600000 rtn 
+
+p_rx_high_sens:
+07cb 70894cfb jam 0xfb ,0x894c 
+07cc 70894def jam 0xef ,0x894d 
+07cd 70894eec jam 0xec ,0x894e 
+07ce 70894f5e jam 0x5e ,0x894f 
+07cf 20600000 rtn 
+
+p_set_tx_power_pair:
+07d0 708956c2 jam 0xc2 ,0x8956 
+07d1 708955d0 jam 0xd0 ,0x8955 
+07d2 20600000 rtn 
+
+p_shutdown_radio:
+07d3 18002a08 force 8 ,radio_ctrl 
+07d4 202028fa branch shutdown_radio + 1 
+
+p_zcode_entrance:
+07d5 680891c5 fetcht 1 ,mem_zcode_temp_param0 
+07d6 18518400 rshift4 temp ,temp 
+07d7 6800cb4f fetch 1 ,mem_zcode_current_number 
+07d8 98467c00 isub temp ,null 
+07d9 202287f2 branch p_zcode_run ,zero 
+07da 6008cb4f storet 1 ,mem_zcode_current_number 
+07db 18408401 increase 1 ,temp 
+07dc 58000100 setarg zcode_buff_size 
+07dd 984f8400 imul32 temp ,temp 
+07de 6801cb50 fetch 3 ,mem_xip_flash_offset 
+07df 98467e00 isub temp ,pdata 
+07e0 6809cb53 fetcht 3 ,mem_flash_start_addr 
+07e1 9840fe00 iadd temp ,pdata 
+07e2 1fe0fffb increase -5 ,pdata 
+07e3 6001cb56 store 3 ,mem_flash_address 
+07e4 20400377 call p_flash_release_deep_power_down 
+
+p_zcode_read_loop:
+07e5 6801cb56 fetch 3 ,mem_flash_address 
+07e6 d8400100 arg zcode_buff_size ,temp 
+07e7 da201f00 arg mem_zcode_buff ,rega 
+07e8 20406562 call spid_read_flash 
+07e9 68021f00 fetch 4 ,mem_zcode_buff 
+07ea 203a07e5 branch p_zcode_read_loop ,blank 
+07eb 204002f0 call p_mouse_spi_init 
+07ec 58001f00 setarg mem_zcode_buff 
+07ed 60014199 store 2 ,mem_patch_ptr 
+07ee 70419b40 jam zcode_code_size ,mem_patch_len 
+07ef 204064ca call load_ucode 
+07f0 58000000 setarg 0 
+07f1 60024199 store 4 ,mem_patch_ptr 
+
+p_zcode_run:
+07f2 680091c5 fetch 1 ,mem_zcode_temp_param0 
+07f3 20200001 branch p_zcode 
+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 
+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 
+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 
+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 c0000003  beq zcode_00 ,z_page_wait_fhs_reply_ok
+10002 20600000  rtn
+
+z_page_wait_fhs_reply_ok:
+10003 6800800e  fetch 1 ,mem_page_rcv_fhs
+10004 1fe0fe01  increase 1 ,pdata
+10005 6000800e  store 1 ,mem_page_rcv_fhs
+10006 20402435  call prepare_newconn
+
+z_master_newconn_loop:
+10007 7920002c  set1 mark_first_packet ,mark
+10008 204022f2  call master_newconn_once
+10009 202c000e  branch z_newconn_poll_responded ,sync
+1000a 793f802c  set0 mark_first_packet ,mark
+1000b 20402455  call new_conn_timeout
+1000c 243a0007  nbranch z_master_newconn_loop ,blank
+1000d 202020fc  branch page_restart
+
+z_newconn_poll_responded:
+1000e 793f802c  set0 mark_first_packet ,mark
+1000f 2020215f  branch newconn_poll_responded
+org 0x20001
+
+z_entrance1:
+20001 c0080004  beq zcode_10 ,z_mouse_bb_disconnected
+20002 c008801b  beq zcode_11 ,z_hid_rx_process
+20003 20600000  rtn
+
+z_mouse_bb_disconnected:
+20004 70480800  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 c285046e  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 204005b3  call p_mouse_check_key_gpio
+20019 c00284f2  beq mouse_lm_button ,p_mouse_null_enter_hibernate_enable
+2001a 202033a7  branch app_bb_hibernate
+
+z_hid_rx_process:
+2001b 68010264  fetch 2 ,mem_l2cap_payload_ptr
+2001c 1fe20c00  copy pdata ,contr
+2001d e8c08000  ifetch 1 ,contr
+2001e 6000cb02  store 1 ,mem_l2cap_rcv
+2001f 1fe1040f  and pdata ,0x0f ,temp
+20020 1ff1fe00  rshift4 pdata ,pdata
+20021 c0038023  beq hid_type_set_protocol ,z_hid_rx_set_protocol
+20022 20204d39  branch hid_rx_process + 6
+
+z_hid_rx_set_protocol:
+20023 20404d53  call hid_rx_process_handshake
+20024 704b0300  jam 0 ,mem_mouse_bt_boot_mode
+20025 6800cb02  fetch 1 ,mem_l2cap_rcv
+20026 2feffe00  isolate1 0 ,pdata
+20027 20608000  rtn true
+20028 704b0301  jam 1 ,mem_mouse_bt_boot_mode
+20029 20600000  rtn
+org 0x30001
+
+z_entrance2:
+30001 c0100003  beq zcode_20 ,z_send_lmp
+30002 20600000  rtn
+
+z_send_lmp:
+30003 78547c00  disable user
+30004 204062c1  call lmo_fifo_process
+30005 68008048  fetch 1 ,mem_lmp_to_send
+30006 207a0000  rtn blank
+30007 c283800c  bbit1 7 ,z_send_lmp_escape
+30008 c001801c  beq lmp_accepted ,z_send_lmp_accepted
+30009 c0188018  beq lmp_setup_complete ,z_send_lmp_setup_complete
+3000a c00b801a  beq lmp_sniff_req ,z_send_lmp_sniff_req
+3000b 20206010  branch send_lmp0
+
+z_send_lmp_escape:
+3000c c042000f  beq lmp_ext_features_res ,z_send_lmpext_features_res
+3000d c0418012  beq lmp_ext_features_req ,z_send_lmpext_features_req
+3000e 2020603f  branch send_lmp_escape
+
+z_send_lmpext_features_res:
+3000f 20400015  call z_check_ssp_enable
+30010 68008048  fetch 1 ,mem_lmp_to_send
+30011 20206099  branch send_lmpext_features_res
+
+z_send_lmpext_features_req:
+30012 20400015  call z_check_ssp_enable
+30013 68008048  fetch 1 ,mem_lmp_to_send
+30014 2020610d  branch send_lmpext_features_req
+
+z_check_ssp_enable:
+30015 6800c65a  fetch 1 ,mem_ssp_enable
+30016 203a612b  branch ssp_disable ,blank
+30017 20206124  branch ssp_enable
+
+z_send_lmp_setup_complete:
+30018 704b0101  jam 1 ,mem_bt_send_lmp_setup_complete
+30019 202061c3  branch send_lmp_setup_complete
+
+z_send_lmp_sniff_req:
+3001a 704b0904  jam 4 ,mem_mouse_bt_send_first_package_timer
+3001b 202061a4  branch send_lmp_sniff_req
+
+z_send_lmp_accepted:
+3001c 18007e02  force 2 ,pdata
+3001d 20406298  call msg_send_lmp
+3001e 68008049  fetch 1 ,mem_lmi_opcode
+3001f e0a08000  istore 1 ,contw
+30020 6000cafc  store 1 ,mem_lmi_opcode_temp
+30021 204062a7  call send_lmp_follow
+30022 6800cafc  fetch 1 ,mem_lmi_opcode_temp
+30023 c0170025  beq lmp_max_slot_req ,z_send_lmp_accepted_max_slot_req
+30024 20206051  branch send_lmp_accepted + 7
+
+z_send_lmp_accepted_max_slot_req:
+30025 6800caff  fetch 1 ,mem_bt_rcvd_switch_req_accept
+30026 207a0000  rtn blank
+30027 704aff00  jam 0 ,mem_bt_rcvd_switch_req_accept
+30028 6800cb01  fetch 1 ,mem_bt_send_lmp_setup_complete
+30029 c1810000  rtnne 2
+3002a 704b0001  jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
+3002b 1c427e00  copy clkn_bt ,pdata
+3002c 600204e9  store 4 ,mem_aurand_send_delay_time
+3002d 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 6800cb01  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 6800cb00  fetch 1 ,mem_bt_send_max_slot_req_accept_after_switch
+4001a 207a0000  rtn blank
+4001b 704b0000  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 704b0001  jam 1 ,mem_bt_send_max_slot_req_accept_after_switch
+40024 20600000  rtn
+
+z_host_create_conn_send_conn_req:
+40025 70480914  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 c021802c  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 6800c7c5  fetch 1 ,mem_lpm_mult_init
+50009 6000c172  store 1 ,mem_lpm_mult
+
+z_mouse_le_conn_param_lpm_enable:
+5000a 7047c400  jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+5000b 20600000  rtn
+
+z_mouse_le_conn_param_lpm_disable:
+5000c 7047c401  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 6808c7c5  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 6800c79f  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 7046c600  jam 0 ,mem_le_start_encrypt_timer
+5002b 20203d60  branch mouse_le_write_enable
+
+z_quit_connection_cont:
+5002c 204033af  call app_disconn_reason_collect_bt
+5002d 204026e9  call sniff_exit
+5002e 700a9902  jam bt_evt_bb_disconnected ,mem_fifo_temp
+5002f 20407d86  call ui_ipc_send_event
+50030 20405cf7  call init_lmp_work
+50031 20404d6b  call l2cap_init_work
+50032 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 704b6700  jam 0 ,mem_le_send_security_request_flag
+60004 704b625a  jam 0x5a ,mem_mouse_fast_conn_flag
+60005 204002d2  call p_mouse_tx_power_init
+60006 70472001  jam mode_bt_device1 ,mem_device_flag
+60007 70479c00  jam 0 ,mem_mouse_clear_sensor_data_flag
+60008 68014682  fetch 2 ,mem_ui_state_map
+60009 c2858014  bbit1 ui_state_ble_adv ,z_mouse_start_discovery_norandom
+6000a 680246d3  fetch mouse_flag_len ,mem_mouse_flag
+6000b c30c0014  bbit0 mouse_enable_ble_random_addre ,z_mouse_start_discovery_norandom
+6000c 204005ef  call p_mouse_load_random_addr_increase_count
+6000d 680947c2  fetcht 2 ,mem_random_addr_increase_count
+6000e 18408401  increase 1 ,temp
+6000f 600947c2  storet 2 ,mem_random_addr_increase_count
+60010 600944a1  storet 2 ,mem_le_lap + 1
+60011 20400339  call p_mouse_store_random_addr_increase_count
+60012 180a7e00  random pdata
+60013 6000c4a0  store 1 ,mem_le_lap
+
+z_mouse_start_discovery_norandom:
+60014 20403418  call app_lpm_mult_disable
+60015 68014687  fetch 2 ,mem_discovery_timeout
+60016 600146ac  store 2 ,mem_mouse_discovery_timer
+60017 70016d06  jam 6 ,mem_connection_options
+60018 58000000  setarg 0
+60019 600146b0  store 2 ,mem_mouse_no_data_timer
+6001a 600146ae  store 2 ,mem_mouse_direct_timer
+6001b d8e00007  arg mouse_store_eeprom_flag ,queue
+6001c 204043ce  call mouse_enable_function_flag
+6001d 204043ca  call mouse_bt_discovery_button_down_disable
+6001e 6800c092  fetch 1 ,mem_device_option
+6001f 2feffe00  isolate1 mode_3_mouse ,pdata
+60020 2040fddd  call check_51cmd_start_discovery ,true
+60021 20200532  branch p_mouse_discovery_multi_led_blink
+
+z_check_51cmd_adv:
+60022 70479f00  jam 0 ,mem_mouse_le_reconnect_flag
+60023 204002e6  call p_le_check_adv_flag
+60024 58000005  setarg adv_flag_bredr_not_supported | adv_flag_limited_discoverable
+60025 e0c08000  istore 1 ,contr
+60026 d8c04b10  arg mem_le_adv_swift_pair ,contr
+60027 204005fd  call p_le_adv_data_update
+60028 20207df4  branch check_51cmd_adv
+org 0x70001
+
+z_entrance6:
+70001 c0300004  beq zcode_60 ,z_g24_start_24g_mode
+70002 c0308026  beq zcode_61 ,z_mouse_24g_pairing_button
+70003 20600000  rtn
+
+z_g24_start_24g_mode:
+70004 793f8026  set0 mark_24g ,mark
+70005 204001d7  call p_g24_syncword_crc8
+70006 204001f6  call p_g24_ch
+70007 6800cc00  fetch 1 ,mem_24g_pairing_sm
+70008 c1ff8000  rtnne state_24g_pairing_success
+70009 20400018  call z_g24_tx_attemp_data_prep
+
+z_g24_tx_attemp_dongle:
+7000a 58000000  setarg 0
+7000b 60014c1d  store 2 ,mem_24g_check_dongle_times
+
+z_g24_tx_attemp_dongle_loop:
+7000c 200007d0  nop 2000
+7000d 6800cc1d  fetch 1 ,mem_24g_check_dongle_times
+7000e c07fadd4  beq 0xff ,g24_stop_24g_mode
+7000f 20400185  call p_g24_transmit_receive_ack
+70010 242c0021  nbranch z_g24_attemp_txdata_retry ,sync
+70011 24378021  nbranch z_g24_attemp_txdata_retry ,user3
+
+z_g24_tx_attemp_dongle_succ:
+70012 79200026  set1 mark_24g ,mark
+70013 58000000  setarg 0
+70014 60014c1d  store 2 ,mem_24g_check_dongle_times
+70015 20402f20  call g24_app_tx_attempt_success
+70016 2040017f  call p_g24_txbuf_clear
+70017 20200387  branch p_g24_transmit_by_interrupt_enable
+
+z_g24_tx_attemp_data_prep:
+70018 70119eff  jam 0xff ,mem_24g_common_temp
+70019 6800cbf1  fetch 1 ,mem_24g_data_type
+7001a 6000919f  store 1 ,mem_24g_common_temp + 1
+7001b 68024c27  fetch 4 ,mem_24g_device_addr
+7001c 600211a0  store 4 ,mem_24g_common_temp + 2
+7001d d8400006  arg 6 ,temp
+7001e da20119e  arg mem_24g_common_temp ,rega
+7001f 204001c4  call p_g24_put_data_in_buff
+70020 202001e4  branch p_g24_transmit_prep
+
+z_g24_attemp_txdata_retry:
+70021 68014c1d  fetch 2 ,mem_24g_check_dongle_times
+70022 1fe0fe01  increase 1 ,pdata
+70023 60014c1d  store 2 ,mem_24g_check_dongle_times
+70024 204001f6  call p_g24_ch
+70025 2020000c  branch z_g24_tx_attemp_dongle_loop
+
+z_mouse_24g_pairing_button:
+70026 6800c720  fetch 1 ,mem_device_flag
+70027 c1008000  rtneq mode_bt_device1
+70028 c6130000  rtnmark1 mark_24g
+70029 d8e00003  arg mosue_24g_pairing_flag ,queue
+7002a 204043ce  call mouse_enable_function_flag
+7002b 58000000  setarg 0
+7002c 600146ae  store 2 ,mem_mouse_direct_timer
+7002d 6000c6b4  store 1 ,mem_mouse_send_blank_timer
+7002e 60014c1d  store 2 ,mem_24g_check_dongle_times
+7002f 204042ca  call mouse_stop_discovery
+70030 20200031  branch z6_g24_start_pairing_sm1
+
+z6_g24_start_pairing_sm1:
+70031 79200026  set1 mark_24g ,mark
+70032 20400035  call z6_g24_pair_init
+
+z6_g24_set_pairing_sm_1:
+70033 704c0001  jam state_24g_pairing_1 ,mem_24g_pairing_sm
+70034 20600000  rtn
+
+z6_g24_pair_init:
+70035 7041de20  jam tx_power_pair ,mem_tx_power
+70036 704bef00  jam 0 ,mem_24g_pid
+70037 704bfa4e  jam g24_pair_ch ,mem_24g_ch
+70038 68024bfc  fetch 4 ,mem_24g_paring_addr
+70039 202001d6  branch p_g24_update_addr_and_synccrc8
+org 0x80001
+
+z_entrance7:
+80001 c0380003  beq zcode_70 ,z_g24_auto_pair_start
+80002 20600000  rtn
+
+z_g24_auto_pair_start:
+80003 793f8026  set0 mark_24g ,mark
+80004 2040002d  call z_g24_auto_pair_all_powerful
+80005 2040001a  call z7_g24_tx_attemp_data_prep
+
+z_g24_auto_pair_restart:
+80006 704c1d00  jam 0 ,mem_24g_check_dongle_times
+80007 20400532  call p_mouse_discovery_multi_led_blink
+
+z_g24_auto_pair_start_loop:
+80008 200007d0  nop 2000
+80009 68014c1d  fetch 2 ,mem_24g_check_dongle_times
+8000a c07fadd4  beq 0x02ff ,g24_stop_24g_mode
+8000b 20400185  call p_g24_transmit_receive_ack
+8000c 242c0023  nbranch z_g24_auto_pair_retry ,sync
+8000d 24378023  nbranch z_g24_auto_pair_retry ,user3
+8000e 204001af  call p_g24_ackpayload_parse
+8000f 204002d2  call p_mouse_tx_power_init
+80010 68024c18  fetch 4 ,mem_24g_addr
+80011 680a4bfc  fetcht 4 ,mem_24g_paring_addr
+80012 98467c00  isub temp ,null
+80013 20228037  branch z_g24_start_pairing_sm1 ,zero
+80014 79200026  set1 mark_24g ,mark
+80015 58000000  setarg 0
+80016 60014c1d  store 2 ,mem_24g_check_dongle_times
+80017 20402f20  call g24_app_tx_attempt_success
+80018 2040017f  call p_g24_txbuf_clear
+80019 20200387  branch p_g24_transmit_by_interrupt_enable
+
+z7_g24_tx_attemp_data_prep:
+8001a 70119eff  jam 0xff ,mem_24g_common_temp
+8001b 6800cbf1  fetch 1 ,mem_24g_data_type
+8001c 6000919f  store 1 ,mem_24g_common_temp + 1
+8001d 68024c27  fetch 4 ,mem_24g_device_addr
+8001e 600211a0  store 4 ,mem_24g_common_temp + 2
+8001f d8400006  arg 6 ,temp
+80020 da20119e  arg mem_24g_common_temp ,rega
+80021 204001c4  call p_g24_put_data_in_buff
+80022 202001e4  branch p_g24_transmit_prep
+
+z_g24_auto_pair_retry:
+80023 6800cc1d  fetch 1 ,mem_24g_check_dongle_times
+80024 1fe0fe01  increase 1 ,pdata
+80025 6000cc1d  store 1 ,mem_24g_check_dongle_times
+80026 6800cd2e  fetch 1 ,mem_24g_auto_paring_switch
+80027 1fe0fe01  increase 1 ,pdata
+80028 1fe17e01  and_into 1 ,pdata
+80029 6000cd2e  store 1 ,mem_24g_auto_paring_switch
+8002a c0000033  beq 0 ,z_g24_auto_pair_device_attemp
+8002b c0008035  beq 1 ,z_g24_auto_pair_pair_attemp
+8002c 20600000  rtn
+
+z_g24_auto_pair_all_powerful:
+8002d 7041de20  jam tx_power_pair ,mem_tx_power
+8002e 58000f0f  setarg 0x0f0f
+8002f 60014c18  store 2 ,mem_24g_addr
+80030 e0a10000  istore 2 ,contw
+
+z_g24_ch_syncword_crc8_init:
+80031 204001d7  call p_g24_syncword_crc8
+80032 202001f6  branch p_g24_ch
+
+z_g24_auto_pair_device_attemp:
+80033 2040002d  call z_g24_auto_pair_all_powerful
+80034 20200008  branch z_g24_auto_pair_start_loop
+
+z_g24_auto_pair_pair_attemp:
+80035 2040003b  call z_g24_pair_init
+80036 20200008  branch z_g24_auto_pair_start_loop
+
+z_g24_start_pairing_sm1:
+80037 79200026  set1 mark_24g ,mark
+80038 2040003b  call z_g24_pair_init
+
+z_g24_set_pairing_sm_1:
+80039 704c0001  jam state_24g_pairing_1 ,mem_24g_pairing_sm
+8003a 20600000  rtn
+
+z_g24_pair_init:
+8003b 7041de20  jam tx_power_pair ,mem_tx_power
+8003c 704bef00  jam 0 ,mem_24g_pid
+8003d 704bfa4e  jam g24_pair_ch ,mem_24g_ch
+8003e 68024bfc  fetch 4 ,mem_24g_paring_addr
+8003f 202001d6  branch p_g24_update_addr_and_synccrc8
+org 0x90001
+
+z_entrance8:
+90001 c0400008  beq zcode_80 ,z_mouse_setting_config
+90002 c0408004  beq zcode_81 ,z_le_addr_random_config
+90003 20600000  rtn
+
+z_le_addr_random_config:
+90004 204068a2  call load_adc_init
+90005 58001122  setarg 0x1122
+
+z_le_otp_adc_empty:
+90006 600147c2  store 2 ,mem_random_addr_increase_count
+90007 20600000  rtn
+
+z_mouse_setting_config:
+90008 204000fe  call p_g24_set_device_addr
+90009 20403e6e  call mouse_gpio_init
+9000a 6808cb23  fetcht 1 ,mem_24g_sw_gpio
+9000b 2040680e  call gpio_config_output
+9000c 6808cb44  fetcht 1 ,mem_flash_ncs_gpio
+9000d 2040680e  call gpio_config_output
+9000e 20403e1e  call mouse_param_init
+9000f 20400020  call z_mouse_bt_sdp_update
+90010 58000000  setarg 0
+90011 60014154  store 2 ,mem_lpm_interval
+90012 204068a2  call load_adc_init
+90013 20403e54  call mouse_adc_init
+90014 20405810  call le_set_config_fixed_ltk
+90015 20405839  call le_set_justwork
+90016 2040582c  call le_set_fixed_ltk
+90017 20405818  call le_set_config_read_authentication
+90018 204005eb  call p_le_addr_random_config
+90019 20400377  call p_flash_release_deep_power_down
+9001a 20400342  call p_mouse_set_24g_addr_flash
+9001b 6801c700  fetch 3 ,mem_flash_base
+9001c 9a40fe00  iadd regb ,pdata
+9001d 20406562  call spid_read_flash
+9001e 2040032a  call p_mouse_load_flash_info_check
+9001f 20600000  rtn
+
+z_mouse_bt_sdp_update:
+90020 204074b9  call enable_authrom
+90021 d8c08c00  arg 0x8c00 ,contr
+90022 d8a04876  arg mem_mouse_uuid_list ,contw
+90023 df200171  arg 369 ,loopcnt
+90024 20407f01  call memcpy
+90025 580f0209  setarg 0x0f0209
+90026 e0a18000  istore 3 ,contw
+90027 58120009  setarg 0x120009
+90028 e0a18000  istore 3 ,contw
+90029 58100209  setarg 0x100209
+9002a e0a18000  istore 3 ,contw
+9002b 58000009  setarg 0x000009
+9002c e0a18000  istore 3 ,contw
+9002d d8c08d71  arg 0x8d71 ,contr
+9002e df200109  arg 265 ,loopcnt
+9002f 20407f01  call memcpy
+90030 70488d00  jam 0 ,mem_mouse_uuid_list + 23
+90031 7048856d  jam 0x6d ,mem_mouse_uuid_list + 15
+90032 5800401f  setarg 0x401f
+90033 600149db  store 2 ,mem_mouse_uuid_list + 357
+90034 58006d04  setarg 0x6d04
+90035 60014a44  store 2 ,mem_mouse_uuid_list + 462
+90036 580016b0  setarg 0x16b0
+90037 60014a4a  store 2 ,mem_mouse_uuid_list + 468
+90038 58004876  setarg mem_mouse_uuid_list
+90039 60014575  store 2 ,mem_ui_uuid_table
+9003a 20600000  rtn
+org 0xa0001
+
+z_entrance9:
+a0001 c0480005  beq zcode_90 ,z_g24_pairing_sm
+a0002 c0488020  beq zcode_91 ,z_g24_paring_mode
+a0003 c0490030  beq zcode_92 ,z_mouse_24g_pairing_complete
+a0004 20600000  rtn
+
+z_g24_pairing_sm:
+a0005 6800cbf5  fetch 1 ,mem_24g_ensure
+a0006 c000ffe7  beq ensure_on_24g ,enable_user
+a0007 6800cc00  fetch 1 ,mem_24g_pairing_sm
+a0008 c000800c  beq state_24g_pairing_1 ,z_g24_pairing_sm_1
+a0009 c0010010  beq state_24g_pairing_2 ,z_g24_pairing_sm_2
+a000a c0018013  beq state_24g_pairing_3 ,z_g24_pairing_sm_3
+a000b 20202a8c  branch assert
+
+z_g24_pairing_sm_1:
+a000c 704c0011  jam state_24g_pairing_1_waiting_ack ,mem_24g_pairing_sm
+a000d 70119eaa  jam 0xaa ,mem_24g_common_temp
+a000e 20400532  call p_mouse_discovery_multi_led_blink
+a000f 20200015  branch z_g24_pairing_sm_common
+
+z_g24_pairing_sm_2:
+a0010 704c0012  jam state_24g_pairing_2_waiting_ack ,mem_24g_pairing_sm
+a0011 70119e55  jam 0x55 ,mem_24g_common_temp
+a0012 20200015  branch z_g24_pairing_sm_common
+
+z_g24_pairing_sm_3:
+a0013 704c0013  jam state_24g_pairing_3_waiting_ack ,mem_24g_pairing_sm
+a0014 70119e22  jam 0x22 ,mem_24g_common_temp
+
+z_g24_pairing_sm_common:
+a0015 6800cbf1  fetch 1 ,mem_24g_data_type
+a0016 1fe17e07  and_into bits_data ,pdata
+a0017 6000919f  store 1 ,mem_24g_common_temp + 1
+a0018 68024c27  fetch 4 ,mem_24g_device_addr
+a0019 600211a0  store 4 ,mem_24g_common_temp + 2
+
+z_g24_put_pairing_data_in_buff:
+a001a 7011a400  jam 0 ,mem_24g_common_temp + 6
+a001b da20119e  arg mem_24g_common_temp ,rega
+a001c d8400007  arg 7 ,temp
+a001d 204001c4  call p_g24_put_data_in_buff
+a001e 20400147  call p_g24_txdata_enable_tx
+a001f 20207fe7  branch enable_user
+
+z_g24_paring_mode:
+a0020 6800cc00  fetch 1 ,mem_24g_pairing_sm
+a0021 c17f8000  rtneq state_24g_pairing_success
+a0022 c0088026  beq state_24g_pairing_1_waiting_ack ,z_g24_pairing_sm_1_waiting_ack
+a0023 c0090028  beq state_24g_pairing_2_waiting_ack ,z_g24_pairing_sm_2_waiting_ack
+a0024 c009802a  beq state_24g_pairing_3_waiting_ack ,z_g24_pairing_sm_3_waiting_ack
+a0025 20600000  rtn
+
+z_g24_pairing_sm_1_waiting_ack:
+a0026 704c0002  jam state_24g_pairing_2 ,mem_24g_pairing_sm
+a0027 20200179  branch p_g24_transmit_abandon
+
+z_g24_pairing_sm_2_waiting_ack:
+a0028 704c0003  jam state_24g_pairing_3 ,mem_24g_pairing_sm
+a0029 20200179  branch p_g24_transmit_abandon
+
+z_g24_pairing_sm_3_waiting_ack:
+a002a 704c00ff  jam state_24g_pairing_success ,mem_24g_pairing_sm
+a002b 700a9939  jam bt_evt_24g_pairing_complete ,mem_fifo_temp
+a002c 20407d86  call ui_ipc_send_event
+a002d 68024bd0  fetch 4 ,mem_24g_rxpayload + 2
+a002e 204001d6  call p_g24_update_addr_and_synccrc8
+a002f 20200179  branch p_g24_transmit_abandon
+
+z_mouse_24g_pairing_complete:
+a0030 70478b01  jam 1 ,mem_mouse_24g_enter_lpm_enable
+a0031 d8e00003  arg mosue_24g_pairing_flag ,queue
+a0032 204043d2  call mouse_disable_function_flag
+a0033 58000000  setarg 0
+a0034 60014707  store 2 ,mem_24g_pairing_timer_count
+a0035 7046a700  jam 0 ,mem_mouse_move_flag
+a0036 2040405d  call mouse_read_sensor_common
+a0037 204004f5  call p_mouse_null_enter_hibernate_disable
+a0038 204002d2  call p_mouse_tx_power_init
+a0039 68024c18  fetch 4 ,mem_24g_addr
+a003a 6002477b  store 4 ,mem_mouse_24g_addr
+a003b 20404366  call mouse_cheak_select_24gdevice
+a003c 20200334  branch p_mouse_store_flash_device_info
+org 0xb0001
+
+z_entrancea:
+b0001 c0500007  beq zcode_a0 ,z_mouse_24g_attempt_fail
+b0002 c050800d  beq zcode_a1 ,z_mouse_le_conn_param_update_rsp_recieved
+b0003 c0510020  beq zcode_a2 ,z_mouse_le_bb_disconnected
+b0004 c0518019  beq zcode_a3 ,z_mouse_bb_event_reconn_timeout
+b0005 c0520029  beq zcode_a4 ,z_mouse_before_hibernate
+b0006 20600000  rtn
+
+z_mouse_24g_attempt_fail:
+b0007 704d3000  jam g24_tx_timer_int_disable ,mem_24g_transmit_by_interrupt
+b0008 204002d2  call p_mouse_tx_power_init
+b0009 204001c0  call p_g24_check_51cmd_stop_24g
+b000a 7041bd00  jam 0 ,mem_link_key_exists
+b000b 204002aa  call p_mouse_setgpio_hibernate
+b000c 202004f2  branch p_mouse_null_enter_hibernate_enable
+
+z_mouse_le_conn_param_update_rsp_recieved:
+b000d 68014509  fetch 2 ,mem_le_l2cap_signaling_conn_param_update_rsp_result
+b000e c1000000  rtneq ble_signaling_connect_parameter_update_accepted
+b000f 68008441  fetch 1 ,mem_le_tsniff
+b0010 1feb7e00  rshift2 pdata ,pdata
+b0011 1fe67c0c  sub pdata ,le_interval_15ms ,null
+b0012 20610000  rtn positive
+b0013 58000009  setarg le_interval_11_25ms
+b0014 60014496  store 2 ,mem_le_interval_min
+b0015 60014498  store 2 ,mem_le_interval_min + 2
+b0016 2040042e  call p_app_updata_le_param
+b0017 7047c401  jam le_lpm_disable ,mem_mouse_le_conn_param_reject
+b0018 20600000  rtn
+
+z_mouse_bb_event_reconn_timeout:
+
+z_mouse_bb_event_reconn_failed:
+b0019 68014682  fetch 2 ,mem_ui_state_map
+b001a c3860000  rtnbit1 ui_state_btn_down
+b001b c3830000  rtnbit1 ui_state_bt_discovery
+b001c c3858000  rtnbit1 ui_state_ble_adv
+b001d 680246d3  fetch mouse_flag_len ,mem_mouse_flag
+b001e c3828000  rtnbit1 mouse_bt_discovery_button_down_flag
+b001f 202033a7  branch app_bb_hibernate
+
+z_mouse_le_bb_disconnected:
+b0020 704b6100  jam 0 ,mem_mouse_le_bb_connected_flag
+b0021 58000007  setarg le_interval_8_75ms
+b0022 60014496  store 2 ,mem_le_interval_min
+b0023 60014498  store 2 ,mem_le_interval_min + 2
+b0024 7047c400  jam le_lpm_enable ,mem_mouse_le_conn_param_reject
+b0025 70479c00  jam 0 ,mem_mouse_clear_sensor_data_flag
+b0026 204003b9  call p_mouse_data_init
+b0027 20405816  call le_clr_config_more_data
+b0028 202041d9  branch mouse_bb_disconnected
+
+z_mouse_before_hibernate:
+b0029 78347c00  enable user
+b002a 68120138  hfetch 4 ,0x8138
+b002b 79347e1a  setflag user ,26 ,pdata
+b002c 6012004c  hstore 4 ,core_lpm_reg
+b002d 20402c21  call lpm_write_ctrl
+b002e 204074bd  call disable_authrom
+b002f 20403e9f  call mouse_before_hibernate_wheel_gpio_set
+b0030 6808cb23  fetcht 1 ,mem_24g_sw_gpio
+b0031 20406829  call gpio_out_active
+b0032 204002aa  call p_mouse_setgpio_hibernate
+b0033 2040036e  call p_flash_deep_power_down
+b0034 68108081  hfetch 1 ,core_gpio_sel1
+b0035 1fe17ef7  and pdata ,0xf7 ,pdata
+b0036 60108081  hstore 1 ,core_gpio_sel1
+b0037 20600000  rtn
+org 0xc0001
+
+z_entranceb:
+c0001 c0580007  beq zcode_b0 ,z_mouse_le_bb_event_connected
+c0002 c058800e  beq zcode_b1 ,z_mouse_sniff_not_accept
+c0003 c0590014  beq zcode_b2 ,z_mouse_enter_sniff_check
+c0004 c0598019  beq zcode_b3 ,z_mouse_le_ll_start_encryt
+c0005 c05a0020  beq zcode_b4 ,z_mouse_bb_event_disconnected
+c0006 20600000  rtn
+
+z_mouse_le_bb_event_connected:
+c0007 704b6101  jam 1 ,mem_mouse_le_bb_connected_flag
+c0008 6800c79f  fetch 1 ,mem_mouse_le_reconnect_flag
+c0009 243a000b  nbranch p_mouse_le_bb_event_connected_next ,blank
+c000a 704b6614  jam 0x14 ,mem_mouse_send_secutiry_request_timer
+
+p_mouse_le_bb_event_connected_next:
+c000b 204004f5  call p_mouse_null_enter_hibernate_disable
+c000c 204003b9  call p_mouse_data_init
+c000d 202041c3  branch mouse_le_bb_event_connected
+
+z_mouse_sniff_not_accept:
+c000e 6800c808  fetch 1 ,mem_mouse_enter_sniff_count
+c000f c1010000  rtneq 2
+c0010 1fe0fe01  increase 1 ,pdata
+c0011 6000c808  store 1 ,mem_mouse_enter_sniff_count
+c0012 7041e312  jam 0x12 ,mem_sniff_param_interval
+c0013 2020340e  branch app_bt_enter_sniff
+
+z_mouse_enter_sniff_check:
+c0014 6800c808  fetch 1 ,mem_mouse_enter_sniff_count
+c0015 c1810000  rtnne 2
+c0016 70480800  jam 0 ,mem_mouse_enter_sniff_count
+c0017 7041e30e  jam 0x0e ,mem_sniff_param_interval
+c0018 2020340e  branch app_bt_enter_sniff
+
+z_mouse_le_ll_start_encryt:
+c0019 6800c79f  fetch 1 ,mem_mouse_le_reconnect_flag
+c001a c000801c  beq 1 ,z_mouse_le_ll_reconn_start_encryt
+c001b 2020001e  branch z_mouse_le_ll_enable_start_enc_flag
+
+z_mouse_le_ll_reconn_start_encryt:
+c001c 2040042e  call p_app_updata_le_param
+c001d 7046c605  jam 5 ,mem_le_start_encrypt_timer
+
+z_mouse_le_ll_enable_start_enc_flag:
+c001e d8e00001  arg ll_start_enc_flag ,queue
+c001f 202041b9  branch mouse_le_enable_connect_flag
+
+z_mouse_bb_event_disconnected:
+c0020 704aff00  jam 0 ,mem_bt_rcvd_switch_req_accept
+c0021 704b0100  jam 0 ,mem_bt_send_lmp_setup_complete
+c0022 704b0a00  jam 0 ,mem_mouse_bt_send_first_package_flag
+c0023 202041d9  branch mouse_bb_disconnected
+ branch mouse_bb_disconnected
Index: YDN_1066_227D/output/ramcode.rom
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/output/ramcode.rom	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/output/ramcode.rom	(working copy)
@@ -0,0 +1,2036 @@
+20200040
+204003b9
+6800c1de
+6000cca7
+20400767
+6800c685
+6000c6da
+6800cb30
+6000cb31
+204043ca
+204002f0
+2040000f
+20400022
+20400075
+20200318
+58000384
+60014d21
+5800039e
+600141ef
+580006ac
+600141f9
+580003d4
+600141f1
+5800029e
+600141ed
+58000416
+600141f5
+580003fc
+600141f3
+58000452
+600141eb
+58000459
+600141fd
+20600000
+58000019
+60014d33
+2455802a
+204002f2
+20400311
+6800c71f
+6000c71e
+20600000
+58000177
+60014d33
+20600000
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+20000001
+c2840059
+c0008085
+c001008e
+c04287d3
+c04487a4
+c00d86c1
+c01306c3
+c02406df
+c02506e6
+c02886ef
+c02c86dd
+c05386f4
+c056870a
+c065b3e4
+c074871b
+c0508097
+c058809c
+c05900aa
+c06202bd
+c0718589
+c07305a6
+c07505e7
+c07585ed
+c0760601
+20202a8e
+c01c8608
+c0218610
+c0250616
+c02b8619
+c02c861b
+c031861d
+c0330647
+c033865e
+c0350697
+c03b86a2
+c002871d
+c040071f
+c0410729
+c044072b
+c04606ae
+c04686ba
+c07d074f
+20202a8e
+1fe22200
+6808ccab
+58004cb2
+98408a00
+1a227e00
+e0a08000
+18408401
+18410407
+6008ccab
+20600000
+704b6900
+6808c6ed
+204067fb
+6808c6ed
+2040681d
+24608000
+20407ec1
+6808c6ed
+2040681d
+24608000
+704b6901
+20600000
+6800cb69
+207a0000
+2040047b
+20200334
+d8a009ae
+df20000c
+20407ed4
+20400395
+20406a03
+20405cf6
+2455ac65
+20407ccd
+2020200c
+2055b2e3
+2040756a
+2055ab41
+204076dc
+6800c65a
+203a2012
+6800c5b1
+203a0091
+20202012
+58000a06
+6001c510
+58001d87
+60014513
+20202aa2
+c6130000
+6800cb26
+243a7fef
+6800cb2b
+243a7fef
+6800c79c
+203a7fef
+6800c7c4
+c000ffef
+68014248
+243a7fef
+6800c806
+243a7fef
+20207ff1
+c6930000
+6800cd30
+c00080c0
+20400144
+243400db
+2040012b
+20400167
+6800cc00
+c1ff8000
+20400778
+204000bc
+6800cb26
+c0008387
+204000e7
+24740000
+204002a5
+5800ec54
+20202b93
+58017700
+6001cc1f
+704b5b14
+20600000
+2040027e
+24740000
+204000d5
+68014d31
+1fe0fe01
+60014d31
+68094d33
+98467c00
+204280ca
+202000ad
+704d3000
+58000000
+60014d31
+58000019
+60014d33
+704c2b00
+6800cc16
+6000cc15
+20600000
+6800cc17
+202000d1
+6800cc2b
+1fe0fe01
+6000cc2b
+c00200d3
+c00280cf
+20600000
+6800cc1c
+205a00f0
+6800cb2b
+247a0000
+6800cb26
+c1008000
+204000e7
+24740000
+6801cc1f
+20407f49
+600a415b
+20202b2a
+78347c00
+20402afa
+6801c16f
+203a7fe9
+6800c091
+203a7fe9
+6800cd30
+c000ffe9
+202002a8
+704c1c01
+704d2500
+20400103
+6000cb8c
+58000000
+6003cb8d
+68024c27
+60024b94
+704bf00c
+6800cbf1
+79207e03
+6000cbf1
+20400147
+202000b0
+680240a0
+60024c27
+20600000
+704d2601
+704d2800
+6800cbf1
+1fe17e07
+6000cbf1
+20600000
+6800cbf1
+79207e04
+6000cbf1
+6000cbac
+20600000
+6800cbf1
+793ffe04
+6000cbf1
+6000cbac
+2040076e
+202001f6
+6800cd25
+c0808103
+6800cd23
+1fe0fe01
+6000cd23
+c002011b
+204001f6
+704c3502
+20200167
+2040076e
+704d2300
+20200103
+704d2802
+704d2601
+704d2500
+20200103
+6800cd27
+c001811f
+6800cbf1
+2fec0004
+20208101
+6800cd27
+c000811e
+c001011f
+20600000
+6800cc00
+c1ff8000
+20400130
+24560138
+20600000
+78567c00
+6800cd26
+c1808000
+6800cd28
+c1800000
+704d2701
+704c3504
+20207feb
+6800cd28
+203a013f
+1fe0ffff
+6000cd28
+704d2702
+704c3504
+202001f6
+704d2703
+6800cd25
+243a0112
+704c3502
+202001f6
+6800cc00
+c0ff81b6
+2040014a
+204001e4
+704bf501
+20600000
+68014d21
+20407f9c
+20340150
+6803cb8d
+207a0000
+20207fe7
+204003b3
+704c1c00
+1a20fe01
+6000cbf0
+20400103
+6000cb8c
+e8a88000
+ea408000
+9841fe00
+e0a08000
+1a40a401
+ea420000
+e0a20000
+1a40a404
+d8a04b92
+df200002
+ea408000
+e8a88000
+9840fe00
+e0a08000
+1a40a401
+c2000160
+20600000
+704bf900
+d9600d00
+34730200
+20400185
+6800cc2c
+c1008000
+242c0194
+24378194
+2040017f
+204001af
+2040076a
+6800cbef
+1fe0fe01
+6000cbef
+20400182
+6800cc00
+c0ff81b8
+20400122
+58000000
+60014bf6
+6000cbf8
+6000cd24
+704bf500
+20600000
+df200004
+d8a04b8c
+20207ec6
+6800cbf1
+c282010c
+20600000
+7857fc00
+2040025d
+6800cc2c
+c0008192
+18002a00
+68024c18
+98001200
+68088017
+2040291f
+20402924
+20400219
+20578255
+20600000
+20400255
+20200172
+68014bf6
+1fe0fe01
+60014bf6
+6800cbf7
+c2822dd4
+6800cc00
+c0ff819d
+204001a5
+20200168
+6800cbf6
+c1ff8000
+58000000
+60014bf6
+20202dd4
+2040079b
+2040076e
+202001f6
+6800cbf9
+1fe67c0b
+242101a2
+1fe0fe01
+6000cbf9
+c0010107
+c003010c
+c0040107
+c006010c
+20600000
+204001c9
+6800cbee
+207a0000
+98007200
+d8c04b6c
+d8a04bce
+20207f01
+7011c590
+202007d5
+20400767
+7011c591
+202007d5
+7011c560
+202007d5
+704b6800
+7011c570
+202007d5
+793f8026
+204053ce
+d8e00003
+202043d2
+6008cbf0
+18427200
+d8a04b8c
+1a220c00
+20207f01
+6800cb6b
+1fe97e00
+6000cbee
+1fe0fe01
+d8c04b6b
+98c08c00
+e8c18000
+6001cc2d
+6800cb6b
+1fe37e00
+1fe17e03
+6000cc33
+20600000
+60024c18
+da200000
+df200004
+d8c04c18
+e8c08000
+9a20a200
+c20001da
+1a227e00
+60014ca1
+6800cca1
+6808cca2
+9840fe00
+6000cca3
+20600000
+6800cbf0
+1fe0fe02
+6000cbf2
+6800cbf1
+6000cbac
+6800cbf0
+1fe9fe00
+6808cbef
+18410403
+18438400
+9841fe00
+6808cc2c
+9840fe00
+e0a08000
+6800cbf0
+98007200
+d8c04b8c
+20207f01
+6808cbfb
+204001fa
+6008cbfb
+20600000
+204001fe
+18408401
+18410403
+20600000
+6800cc18
+1fe17e03
+1fefa204
+58004c01
+9a20fe00
+98408c00
+e8c08000
+6000cbfa
+20600000
+7844fc00
+7843fc00
+58555555
+98001e00
+6800cbfa
+1fed8400
+79200401
+18431c00
+20600000
+204053c4
+68024c18
+98001200
+20402918
+6808cbfa
+2040291f
+58000500
+20402a8f
+20402924
+20400207
+7857fc00
+7826fc00
+7830fc00
+78507c00
+78287c00
+68014bf3
+98003600
+37c18400
+242c0259
+7846fc00
+7825fc00
+7823fc00
+7824fc00
+20400252
+6000cca4
+6808cca3
+98467c00
+24228255
+20400252
+6000cb6a
+6800cc36
+1fe67c02
+20228235
+6800cb6a
+6808cbf1
+a8400e00
+24208255
+20400252
+e0a08000
+1fe97e00
+1fe1721f
+2022823d
+20400252
+e0a08000
+c200023a
+18a22200
+20400252
+6000cd2b
+1a220a00
+09800018
+78287c00
+db600664
+1fef7e00
+1ff17e00
+e0a18000
+7845fc00
+20230255
+7837fc00
+68008017
+1fe0a200
+20402981
+7846fc00
+20402918
+6800cd2b
+2040006b
+20600000
+09800008
+19897e00
+20600000
+784dfc00
+7845fc00
+2040264d
+20600000
+20200255
+20402918
+6808cbfa
+20202933
+204053c4
+68024c18
+98001200
+20400207
+2040025a
+79202a00
+782efc00
+78307c00
+7850fc00
+19317e00
+1fecfe00
+1ff1fe00
+08008628
+784efc00
+782dfc00
+7823fc00
+7824fc00
+6800cca3
+08008608
+6800cbf2
+98007200
+d8c04bac
+e8c08000
+08008608
+c2000273
+78247c00
+08008618
+78447c00
+37d38200
+20000064
+784efc00
+784dfc00
+20600000
+20407fe9
+680a4c11
+1c427e00
+98467c00
+24412d18
+1fe22400
+68024c11
+6808cc15
+98408400
+1a427e00
+98467c00
+24610000
+793ffe1c
+60024c11
+20207fe7
+d8400000
+df200008
+1a220c00
+e8c08000
+98408400
+c2000290
+18497e00
+1fe20400
+c6930000
+1fe6fc0a
+20407f86
+1807fe00
+1ff27e00
+18070400
+98418400
+20600000
+20600000
+c6130000
+2040038b
+204002a8
+6800c040
+c30002a5
+680080a0
+247a0000
+58000000
+600400a1
+20600000
+204002ba
+204002a5
+20403ebf
+2040031a
+68120070
+681a0078
+98418400
+18440400
+601a007c
+6810807d
+793ffe02
+6010807d
+6810807e
+793ffe06
+6010807e
+6808cb25
+793f8407
+20206806
+6800cafe
+207a0000
+20200589
+20403416
+204074b9
+203582d1
+6801c4a3
+6001cb63
+20400001
+20400081
+204005b3
+c00282ed
+204002d2
+6800c720
+6808c703
+98467c00
+202282d5
+c07f82d5
+2040052d
+6800c210
+c01982d8
+c01a02db
+202004f2
+202002f0
+6800cca7
+6000c1de
+20600000
+70472002
+2040052d
+20200379
+680341d0
+203a33eb
+20204274
+704b6701
+70479f01
+680146a8
+600146ae
+20403418
+204002e6
+58000004
+e0c08000
+d8c04390
+204005fd
+20207df4
+da204370
+ea208000
+207a0000
+98c0a200
+e8c08000
+c1008000
+202002e7
+704b6800
+7011c561
+202007d5
+70421276
+20203d36
+204002f0
+204040c0
+204040d9
+c01802fe
+c0188301
+204040d1
+200003e8
+202002f4
+704afe01
+2040640f
+204002f2
+20206411
+20400306
+6800c6de
+202040e1
+20400306
+6800c6de
+c03840e8
+7046e001
+20600000
+204002f0
+58008006
+20406413
+20002ee0
+2020030b
+6800c77a
+c07f830e
+20200589
+6800c6e1
+6000c77a
+20200589
+204002f0
+58000006
+20406414
+1fe1fe08
+1fed7e00
+1fe0fe06
+20206413
+7011c580
+202007d5
+6808cb44
+20206825
+70808640
+70808700
+68108081
+793ffe00
+793ffe01
+79207e03
+793ffe04
+60108081
+58000000
+600201f5
+6810807f
+793ffe00
+6010807f
+20600000
+20400377
+20404423
+68014778
+d840aa55
+98467c00
+20228367
+60094778
+2040441c
+6800c6e1
+6000c77a
+20400377
+20400346
+2040035e
+2040034a
+20400355
+d8400002
+da2047c2
+da40005f
+6801c700
+9a40fe00
+2040034a
+20400355
+2040036e
+202002f0
+d8400004
+da204c18
+da40005b
+20600000
+6801c700
+6001c232
+2040652a
+20200355
+1fe22600
+1a227e00
+1fe0fffc
+1fe22400
+ea420000
+60024b46
+1a627e00
+20406552
+68024b46
+e2420000
+20600000
+580186a0
+20402a8f
+2040650b
+580001fa
+6011008c
+58000005
+204064f3
+c2800355
+20600000
+5800477f
+d8404720
+98460400
+6801c700
+da204720
+20600000
+20400377
+2040035e
+20206562
+20400364
+204005f6
+204005ef
+2040431a
+6802477b
+60024c18
+20600000
+700aa2b9
+2040031c
+20000064
+2040650b
+da204b46
+68088aa2
+20406556
+20000064
+20600000
+700aa2ab
+2020036f
+2040037b
+202001bb
+df200002
+d8c04c18
+20407fe7
+5800ffff
+e8c90000
+98467c00
+2442ffe9
+c200037f
+20600000
+20404401
+6801469f
+207a0000
+704d3001
+58000000
+60014d31
+20600000
+d8c01800
+d8a0480a
+20400393
+d8c01900
+20400393
+d8c01a00
+20400393
+d8c01b00
+df20001b
+20207f01
+d8c0480a
+d8a01800
+20400393
+d8a01900
+20400393
+d8a01a00
+20400393
+d8a01b00
+20200393
+20405892
+247a0000
+6800c6c5
+1fe17e03
+c1818000
+6800c79c
+205a03f9
+680246d3
+c282c179
+20403f97
+24740000
+204003b0
+204003b3
+204003cf
+da20469a
+20407e3d
+205403be
+20600000
+70417200
+704b5a1e
+20600000
+6800cb59
+c1808000
+58000000
+6000cb59
+6002469b
+20200306
+7047a007
+7047a104
+580047a0
+60014218
+20207e38
+6800c7c1
+1fe0fe01
+6000c7c1
+20600000
+da20469a
+20407e54
+203403c6
+20600000
+20405652
+6800c7c1
+1fe67c01
+24415650
+6800c7c1
+207a0000
+1fe0ffff
+6000c7c1
+20203f90
+6801469f
+207a0000
+70480601
+70480702
+20600000
+20770000
+6800c1e2
+207a0000
+20405271
+247a0000
+6800c79c
+205a03f9
+680246d3
+c282bf8a
+c284bf8a
+20403f97
+24740000
+204003b0
+204003b3
+204003cf
+6800cb03
+c00083e8
+6800cb0a
+207a0000
+20203f81
+6800c69a
+6000cb04
+6800c69b
+e0a08000
+6800c69d
+e0a08000
+6801469f
+e0a10000
+da200007
+20404d63
+6801424e
+e0a10000
+580002a1
+e0a10000
+6802cb04
+e0a28000
+20600000
+70479c01
+20405814
+202002fa
+20407e34
+204003ff
+20203ee0
+6808cb23
+2040680e
+6808c6e7
+204005d5
+6808c6e7
+2040681d
+20208414
+204005de
+6800c6b6
+c1000000
+7046b600
+6800c77a
+1fe0fe01
+1fe17e03
+6000c77a
+1feffe02
+1fe0fe02
+60014b2b
+2040053e
+20403d7e
+20200334
+204005de
+20203d62
+1a627e00
+c00a0428
+c00a842b
+c014842e
+c0190430
+c0200432
+c0020434
+c0098434
+c0138436
+c00cb3df
+c0108438
+c000843a
+c001043f
+c0158442
+c01c8444
+c01d0448
+c01e044b
+2020417d
+204002fa
+7011c5b0
+202007d5
+20400455
+7011c5a2
+202007d5
+700a9912
+20207d8f
+7011c5b3
+202007d5
+7011c5a1
+202007d5
+7011c5a3
+202007d5
+2040438e
+202033a7
+7011c5b1
+202007d5
+204002fa
+204004f5
+20400539
+70480900
+202042ca
+20400455
+7011c5b4
+202007d5
+7011c5b2
+202007d5
+204002fa
+20400539
+7011c592
+202007d5
+20400455
+7011c5a0
+202007d5
+704b6001
+204004f5
+204002fa
+20400539
+20403f8d
+20404366
+20200334
+20400455
+7011c5a4
+202007d5
+6800cafe
+207a0000
+704afe00
+20200311
+20400541
+20400566
+20400582
+204004f8
+204004bc
+204004e7
+204004c1
+20404234
+2040046b
+204004b5
+204004a1
+2040049e
+204004a7
+204004ad
+20400496
+20404231
+20400499
+2020423a
+6808c6ed
+2040681d
+20208488
+6800cb69
+243a0484
+6800c6d9
+c1008000
+7046d901
+704b2401
+6800cb68
+203a0482
+2040047b
+7041bd00
+20400334
+204043c0
+2020437e
+6808c720
+18408401
+6800c6d2
+98467c00
+244143cc
+6008c720
+20600000
+704b68ff
+20600000
+704b6900
+7046d901
+704b2401
+20600000
+68014682
+c285848b
+704b2400
+6800c6d9
+c1000000
+7046d900
+68014208
+c3850000
+6800c720
+c1808000
+6801420a
+79207e0a
+6001420a
+20204386
+da604809
+da40637a
+2020336d
+da604b09
+da40049c
+2020336d
+704b0a01
+20600000
+da6046c6
+da403d60
+2020336d
+da6046ae
+da4004a4
+20203374
+6800cb2e
+247a0000
+20204266
+da604b5a
+da4004aa
+2020336d
+6800c7c5
+6000c172
+202004ba
+6800cb61
+207a0000
+da604b66
+da4004b2
+2020336d
+6800cb67
+247a0000
+20205bf5
+da604b5b
+da4004b8
+2020336d
+58249f00
+6001cc1f
+704b5901
+20600000
+da604807
+da4004bf
+2020336d
+70480600
+20600000
+6800c720
+c00104cf
+6808c6ec
+2040681d
+202084c9
+204043a9
+d8e00009
+202043d2
+70479e28
+204004d8
+202043b0
+70479e28
+204004d3
+202004d7
+6808c6ec
+2040681d
+202084cc
+202043b0
+da6046da
+da4004d6
+2020336d
+204001bd
+20200532
+da6046da
+da4004db
+2020336d
+680246d3
+c3848000
+704b6800
+68014682
+2feffe0b
+2040c2d4
+68014682
+2feffe07
+2040c392
+d8e00009
+204043ce
+202043b8
+6800cb2e
+247a0000
+6800c79d
+207a0000
+6800c79e
+203a04f0
+1fe0ffff
+6000c79e
+20600000
+70479d00
+2020340a
+70479d01
+70479e28
+20600000
+70479d00
+70479e00
+20600000
+6800cb24
+207a0000
+6800cb27
+c00004fe
+c0008508
+20600000
+20400518
+6800cb2c
+1fe0fe01
+6000cb2c
+6808cb28
+98467c00
+20428506
+20600000
+704b2e00
+20200526
+6800cb2a
+1fe0ffff
+6000cb2a
+247a0000
+6800cb29
+6000cb2a
+6800cb2d
+203a0514
+6800cb2b
+203a0524
+1fe0ffff
+6000cb2b
+6800cb26
+c0008526
+c0000518
+20600000
+704b2601
+6800c720
+c001051f
+6808cb25
+2040680e
+6808cb25
+20206825
+6808cb25
+79200407
+2040680e
+6808cb25
+20206829
+58000000
+6001cb2a
+6800cb2b
+243a052a
+704b2400
+704b2700
+704b2c00
+704b2600
+202002b7
+704b2e01
+704b2401
+704b2700
+704b2c00
+20600000
+704b2e00
+704b2903
+704b2b01
+704b2a05
+704b2401
+704b2701
+20600000
+6800cb2c
+247a0000
+6800cb2e
+247a0000
+20200524
+704b2903
+704b2d01
+20200535
+6800c6ce
+1fe0fe01
+6000c6ce
+1fe67c0a
+20610000
+204068a8
+7046ce00
+204068eb
+20406908
+6001470f
+da204709
+20400559
+6800c231
+c280b40a
+c3000552
+704afd01
+202043e7
+204043e9
+6800cafd
+207a0000
+704afd00
+6800c6ef
+6000c715
+20200524
+ea240000
+60040a9a
+68090a9c
+68010aa0
+98467c00
+24216944
+68090a9e
+98467c00
+24216940
+6800c231
+793ffe00
+6000c231
+20600000
+6800cb37
+247a0000
+680246d3
+c4020000
+68014682
+c3858000
+c3830000
+6800c6ef
+6000c715
+58249f00
+6001cc1f
+6800c6cf
+1fe0fe01
+6000c6cf
+c0028524
+1fe67c0a
+24210578
+20600000
+7046cf01
+20200518
+6800cb36
+1fe0fe01
+6000cb36
+1fe67c08
+20610000
+704b3700
+704b3596
+20600000
+da604b35
+da400585
+2020336d
+58604800
+6001cc1f
+704b3701
+20200556
+6800c6e0
+c001059f
+c0030595
+6800c77a
+205a059b
+6800c77a
+c0008592
+c001bd8c
+20203d88
+6800c77f
+1fe0ffff
+20203dbe
+6800c77a
+205a059b
+6800c77a
+c000859d
+c001bd8c
+20203d88
+70477a01
+20600000
+7046b500
+20203dc1
+6800c77a
+c000bd88
+c0003d8a
+c00185a4
+20203d8e
+58000005
+20203dbe
+78547c00
+58000000
+6003469b
+204005e3
+20404079
+2040407e
+204005b1
+243405af
+20203fa0
+704b3600
+20600000
+204005b3
+2020409a
+da200000
+204005b9
+204005b7
+2020408e
+204005c9
+202005cf
+6808c6e2
+204005de
+6808c6e2
+2040681d
+7920a200
+6808c6e3
+204005de
+6808c6e3
+2040681d
+7920a201
+6808c6e4
+204005de
+6808c6e4
+2040681d
+7920a202
+20600000
+6808c6e5
+204005d5
+6808c6e5
+2040681d
+7d20a203
+202005de
+6808c6e6
+204005d5
+6808c6e6
+2040681d
+7d20a204
+202005de
+793f8407
+d8a08078
+20406830
+79200407
+d8a0807c
+20406830
+793f8407
+d8a08070
+20206830
+79200407
+d8a08078
+20406830
+793f8407
+202005d9
+6800c6e0
+20403fc0
+78547c00
+20203fe7
+204004f5
+280ffe26
+204081c0
+2020426d
+7011c581
+202007d5
+7011c550
+202007d5
+20400377
+d8400002
+da2047c2
+da40005f
+6801c700
+9a40fe00
+20206562
+20400377
+d8400001
+da204b62
+da400064
+6801c700
+9a40fe00
+20206562
+d8a0437b
+df200013
+20407f01
+202057b8
+58000000
+600146ac
+20400306
+6800c092
+2feffe00
+2040c2d7
+20200539
+6800c50f
+1fe0fe01
+6000c50f
+c0065395
+204055aa
+2040561e
+20400778
+2020538f
+68008016
+1fe0fe01
+60008016
+c1940000
+70001625
+20600000
+204029bb
+2040006b
+202054a3
+7011c540
+202007d5
+7011c541
+202007d5
+68008456
+c2828631
+2040076a
+6800c78e
+243a0627
+6800843f
+c302062b
+680082da
+203a062b
+20205664
+6800c78e
+1fe0ffff
+6000c78e
+20205664
+6800c4c4
+c082862e
+70478e03
+20405892
+205a03c2
+20205622
+20400633
+2020063f
+6800c6c5
+1fe17e03
+c1818000
+6800c7c1
+207a0000
+6800c3dd
+207a0000
+6800c3dc
+79207e04
+6000c3dc
+20405650
+20600000
+2020076e
+6800c79f
+207a0000
+6800c6c5
+1fe17e03
+c1018000
+7046c601
+20600000
+c6078000
+20405890
+247a0000
+680082d9
+1fe17e03
+6000c50c
+e8c08000
+1fe17e1f
+6000c50b
+207a0000
+18c27e00
+6001450d
+6800c50c
+c0018656
+2020568d
+680082db
+c0008659
+20205c65
+e8c28000
+6002c3ce
+e8c10000
+6001045f
+20205c8a
+e8c10000
+c0020662
+c003068f
+20205698
+20407ea5
+20400640
+20407e9f
+e8c18000
+60018477
+c0080671
+1fec8400
+18467c24
+2021067f
+d84047c6
+600944bc
+204058ad
+58008e7a
+600144bc
+20600000
+204059fa
+20405879
+18c08c07
+e8c08000
+c1888000
+18c08c05
+e8c10000
+d8401812
+98467c00
+24628000
+18c08dfc
+5800002b
+e0c10000
+20600000
+c0050681
+202058ad
+68090478
+6800c4e9
+c2818688
+68010478
+c009da76
+68090478
+202059bf
+680144fa
+98467c00
+24228684
+20405a42
+24340684
+70047a05
+20205a77
+e8c08000
+c0008693
+c0028695
+20205af6
+704b6701
+20205b09
+7011c582
+202007d5
+68008016
+c093d6f2
+2040069d
+d8e00000
+68014482
+20207f08
+180a7e00
+d84001ff
+98417e00
+1fe0fefa
+20203cbe
+7855fc00
+203706a5
+2436d806
+20402bcb
+680140c1
+6001044d
+6800c6c5
+2fe00603
+2420abde
+202057fb
+7011c542
+202007d5
+68108077
+1fe17efd
+60108077
+68188073
+18418402
+60188073
+204063ee
+184104fd
+2000000d
+204006bb
+60188073
+20600000
+204064dd
+68108081
+79207e00
+793ffe01
+793ffe03
+60108081
+20600000
+7011c500
+202007d5
+204021c9
+24740000
+78547c00
+70001120
+793f800b
+793f802d
+20402a4f
+204022e6
+c50586d0
+20402455
+243a06c9
+c51686d9
+202021ec
+20402a4d
+d8200010
+204022dc
+7920002d
+793f800b
+68008077
+98000800
+70001102
+202006c9
+68020165
+1fe0fe08
+60020165
+202021f8
+c516264d
+2020258f
+204033af
+204026e9
+700a9902
+20407d86
+20405cf7
+20404d6b
+2020246e
+68008030
+2feffe00
+204086ea
+2020248a
+68008047
+2feffe03
+2040876e
+2440876a
+20200778
+204024f0
+242c28f9
+204029bb
+2040006b
+20202518
+c6130000
+20402afa
+6801c16f
+207a0000
+6800c091
+207a0000
+6800c65a
+203a06fe
+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
+205a0718
+20202bbe
+70008a01
+70008b00
+20600000
+7011c510
+202007d5
+7011c511
+202007d5
+68008552
+600084c9
+c0098723
+20205db4
+20405dcf
+704aff01
+6800cb01
+207a0000
+704b0102
+20600000
+7011c520
+202007d5
+204062bc
+247a0000
+68008055
+207a0000
+c002074d
+c0080732
+20206320
+6800c55b
+c1000000
+c0008736
+2020635f
+20748000
+6800816d
+c280073a
+20206399
+6800cb01
+c000e39d
+6800c1bd
+203a63a9
+680084d1
+c4018000
+c4010000
+6800cb00
+207a0000
+704b0000
+680204e9
+d8400014
+98408400
+1c427e00
+98467c00
+2421074b
+20206349
+704b0001
+20600000
+70480914
+2020636f
+204062bc
+243a7ddb
+68008a99
+c584fdd6
+c00f875a
+c010075d
+c0090757
+20207dca
+20405890
+247a0000
+20205abf
+70018534
+6803044f
+2020075f
+70018533
+68030040
+60030186
+680246d3
+c4038000
+d8e00007
+204043d2
+204042e8
+204042fb
+20200334
+704d2c01
+704d2900
+20600000
+6800cd29
+1fe0fe01
+6000cd29
+20600000
+6800cd29
+1fe67c02
+24410776
+6800cd29
+c1000000
+1fe0ffff
+6000cd29
+20600000
+704d2903
+20600000
+68014682
+c3858000
+c3838000
+c3830000
+da204cb2
+2040028d
+6008cd2a
+58000082
+c5130782
+58000080
+98467c00
+2421079a
+6800cd29
+1fe67c02
+2421078a
+6800cd29
+c000079b
+20600000
+6800cd29
+c1900000
+704d2900
+6808cd2a
+58000077
+c5130791
+58000075
+98467c00
+24610000
+6800cd2c
+c00007a2
+1fe0ffff
+6000cd2c
+c00007a2
+7041de00
+20600000
+704d2900
+6800cd2c
+c00107a0
+1fe0fe01
+6000cd2c
+c0008798
+7041de02
+20600000
+7041de04
+20600000
+60088017
+1840a200
+20402981
+58000500
+20402a8f
+70890601
+7089003c
+708901e0
+2000000a
+70890201
+7089023d
+2000000a
+708903b7
+2000000a
+7089027d
+6800c1de
+c00107bc
+c00207c1
+c01007d0
+204007c6
+708955d0
+708956e0
+7089586c
+2020294b
+204007cb
+708955d0
+708956e0
+7089583c
+20202953
+204007c6
+708955d0
+708956c0
+7089586c
+2020295b
+70894c5b
+70894d96
+70894e2c
+70894f46
+20600000
+70894cfb
+70894def
+70894eec
+70894f5e
+20600000
+708956c2
+708955d0
+20600000
+18002a08
+202028fa
+680891c5
+18518400
+6800cb4f
+98467c00
+202287f2
+6008cb4f
+18408401
+58000100
+984f8400
+6801cb50
+98467e00
+6809cb53
+9840fe00
+1fe0fffb
+6001cb56
+20400377
+6801cb56
+d8400100
+da201f00
+20406562
+68021f00
+203a07e5
+204002f0
+58001f00
+60014199
+70419b40
+204064ca
+58000000
+60024199
+680091c5
+20200001
Index: YDN_1066_227D/output/romcode.rom
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/output/romcode.rom	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/output/romcode.rom	(working copy)
@@ -0,0 +1,25132 @@
+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
+c0000003
+20600000
+6800800e
+1fe0fe01
+6000800e
+20402435
+7920002c
+204022f2
+202c000e
+793f802c
+20402455
+243a0007
+202020fc
+793f802c
+2020215f
+c0080004
+c008801b
+20600000
+70480800
+7041e30e
+204041e7
+68014208
+c283800e
+c28033a9
+c2808012
+c2810015
+c2818015
+202042b0
+204041c1
+68014208
+c285046e
+202041f7
+c2828015
+c2818015
+202042b0
+68014682
+c28642b0
+204033a9
+204005b3
+c00284f2
+202033a7
+68010264
+1fe20c00
+e8c08000
+6000cb02
+1fe1040f
+1ff1fe00
+c0038023
+20204d39
+20404d53
+704b0300
+6800cb02
+2feffe00
+20608000
+704b0301
+20600000
+c0100003
+20600000
+78547c00
+204062c1
+68008048
+207a0000
+c283800c
+c001801c
+c0188018
+c00b801a
+20206010
+c042000f
+c0418012
+2020603f
+20400015
+68008048
+20206099
+20400015
+68008048
+2020610d
+6800c65a
+203a612b
+20206124
+704b0101
+202061c3
+704b0904
+202061a4
+18007e02
+20406298
+68008049
+e0a08000
+6000cafc
+204062a7
+6800cafc
+c0170025
+20206051
+6800caff
+207a0000
+704aff00
+6800cb01
+c1810000
+704b0001
+1c427e00
+600204e9
+20600000
+c0180003
+20600000
+204062bc
+247a0000
+68008055
+207a0000
+c0020025
+c008000a
+20206320
+6800c55b
+c1000000
+c000800e
+2020635f
+20748000
+6800816d
+c2800012
+20206399
+6800cb01
+c000e39d
+6800c1bd
+203a63a9
+680084d1
+c4018000
+c4010000
+6800cb00
+207a0000
+704b0000
+680204e9
+d8400014
+98408400
+1c427e00
+98467c00
+24210023
+20206349
+704b0001
+20600000
+70480914
+2020636f
+c0200006
+c0208018
+c0210025
+c021802c
+20600000
+2040000e
+2020557d
+6800c7c5
+6000c172
+7047c400
+20600000
+7047c401
+20600000
+6800c3d6
+1fe67c0c
+2421000c
+6800c3d8
+6808c7c5
+98467c00
+20210008
+6800c3d8
+6000c172
+2020000a
+6800843f
+c4030000
+2040001d
+24740000
+202055a0
+78347c00
+6800845a
+1ff1fe00
+c1878000
+68008460
+1ff1fe00
+c1800000
+20207fe9
+6800c79f
+247a0000
+68008478
+1fe67e1a
+24628000
+7046c600
+20203d60
+204033af
+204026e9
+700a9902
+20407d86
+20405cf7
+20404d6b
+2020246e
+c0280003
+20600000
+704b6700
+704b625a
+204002d2
+70472001
+70479c00
+68014682
+c2858014
+680246d3
+c30c0014
+204005ef
+680947c2
+18408401
+600947c2
+600944a1
+20400339
+180a7e00
+6000c4a0
+20403418
+68014687
+600146ac
+70016d06
+58000000
+600146b0
+600146ae
+d8e00007
+204043ce
+204043ca
+6800c092
+2feffe00
+2040fddd
+20200532
+70479f00
+204002e6
+58000005
+e0c08000
+d8c04b10
+204005fd
+20207df4
+c0300004
+c0308026
+20600000
+793f8026
+204001d7
+204001f6
+6800cc00
+c1ff8000
+20400018
+58000000
+60014c1d
+200007d0
+6800cc1d
+c07fadd4
+20400185
+242c0021
+24378021
+79200026
+58000000
+60014c1d
+20402f20
+2040017f
+20200387
+70119eff
+6800cbf1
+6000919f
+68024c27
+600211a0
+d8400006
+da20119e
+204001c4
+202001e4
+68014c1d
+1fe0fe01
+60014c1d
+204001f6
+2020000c
+6800c720
+c1008000
+c6130000
+d8e00003
+204043ce
+58000000
+600146ae
+6000c6b4
+60014c1d
+204042ca
+20200031
+79200026
+20400035
+704c0001
+20600000
+7041de20
+704bef00
+704bfa4e
+68024bfc
+202001d6
+c0380003
+20600000
+793f8026
+2040002d
+2040001a
+704c1d00
+20400532
+200007d0
+68014c1d
+c07fadd4
+20400185
+242c0023
+24378023
+204001af
+204002d2
+68024c18
+680a4bfc
+98467c00
+20228037
+79200026
+58000000
+60014c1d
+20402f20
+2040017f
+20200387
+70119eff
+6800cbf1
+6000919f
+68024c27
+600211a0
+d8400006
+da20119e
+204001c4
+202001e4
+6800cc1d
+1fe0fe01
+6000cc1d
+6800cd2e
+1fe0fe01
+1fe17e01
+6000cd2e
+c0000033
+c0008035
+20600000
+7041de20
+58000f0f
+60014c18
+e0a10000
+204001d7
+202001f6
+2040002d
+20200008
+2040003b
+20200008
+79200026
+2040003b
+704c0001
+20600000
+7041de20
+704bef00
+704bfa4e
+68024bfc
+202001d6
+c0400008
+c0408004
+20600000
+204068a2
+58001122
+600147c2
+20600000
+204000fe
+20403e6e
+6808cb23
+2040680e
+6808cb44
+2040680e
+20403e1e
+20400020
+58000000
+60014154
+204068a2
+20403e54
+20405810
+20405839
+2040582c
+20405818
+204005eb
+20400377
+20400342
+6801c700
+9a40fe00
+20406562
+2040032a
+20600000
+204074b9
+d8c08c00
+d8a04876
+df200171
+20407f01
+580f0209
+e0a18000
+58120009
+e0a18000
+58100209
+e0a18000
+58000009
+e0a18000
+d8c08d71
+df200109
+20407f01
+70488d00
+7048856d
+5800401f
+600149db
+58006d04
+60014a44
+580016b0
+60014a4a
+58004876
+60014575
+20600000
+c0480005
+c0488020
+c0490030
+20600000
+6800cbf5
+c000ffe7
+6800cc00
+c000800c
+c0010010
+c0018013
+20202a8c
+704c0011
+70119eaa
+20400532
+20200015
+704c0012
+70119e55
+20200015
+704c0013
+70119e22
+6800cbf1
+1fe17e07
+6000919f
+68024c27
+600211a0
+7011a400
+da20119e
+d8400007
+204001c4
+20400147
+20207fe7
+6800cc00
+c17f8000
+c0088026
+c0090028
+c009802a
+20600000
+704c0002
+20200179
+704c0003
+20200179
+704c00ff
+700a9939
+20407d86
+68024bd0
+204001d6
+20200179
+70478b01
+d8e00003
+204043d2
+58000000
+60014707
+7046a700
+2040405d
+204004f5
+204002d2
+68024c18
+6002477b
+20404366
+20200334
+c0500007
+c050800d
+c0510020
+c0518019
+c0520029
+20600000
+704d3000
+204002d2
+204001c0
+7041bd00
+204002aa
+202004f2
+68014509
+c1000000
+68008441
+1feb7e00
+1fe67c0c
+20610000
+58000009
+60014496
+60014498
+2040042e
+7047c401
+20600000
+68014682
+c3860000
+c3830000
+c3858000
+680246d3
+c3828000
+202033a7
+704b6100
+58000007
+60014496
+60014498
+7047c400
+70479c00
+204003b9
+20405816
+202041d9
+78347c00
+68120138
+79347e1a
+6012004c
+20402c21
+204074bd
+20403e9f
+6808cb23
+20406829
+204002aa
+2040036e
+68108081
+1fe17ef7
+60108081
+20600000
+c0580007
+c058800e
+c0590014
+c0598019
+c05a0020
+20600000
+704b6101
+6800c79f
+243a000b
+704b6614
+204004f5
+204003b9
+202041c3
+6800c808
+c1010000
+1fe0fe01
+6000c808
+7041e312
+2020340e
+6800c808
+c1810000
+70480800
+7041e30e
+2020340e
+6800c79f
+c000801c
+2020001e
+2040042e
+7046c605
+d8e00001
+202041b9
+704aff00
+704b0100
+704b0a00
+202041d9
+00003ddf
Index: YDN_1066_227D/output/sched.rom
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/output/sched.rom	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/output/sched.rom	(working copy)
@@ -0,0 +1,977 @@
+
+mem_lpm_config:8f 1a 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
+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:02
+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:00
+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:
+'Trust Bluetooth 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:22 00
+
+
+mem_discovery_timeout:08 07#3min
+mem_mouse_direct_timeout:50 00#8s
+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 #vinlpm 1 hvin 2 gpio
+mem_adc_channel:32 #gpio5
+mem_mouse_vdd_full_vol:29 01#4.2V
+12 01#mem_mouse_vdd_empty_vol:5a 00# 2.8V
+1e 01#mem_mouse_vdd_low_vol:64 00  #3.2v
+
+mem_config_sensor_type:00
+02 #mem_config_sensor_motion:02
+04#mem_lbutton_gpio:04
+07 #mem_rbutton_gpio:1b
+17 #mem_mbutton_gpio:17
+ff #mem_bk_button_gpio:ff
+ff #mem_fw_button_gpio:ff
+07 #mem_dpi_button_gpio:06
+03 #mem_whee_a_data_gpio:02
+02 #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
+06 #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
+b0 #mem_config_function_enable:04
+02 #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
+#b0
+
+mem_mouse_dpi_seting:
+00##mem_320x_dpi_1
+01##mem_320x_dpi_2
+02##mem_320x_dpi_3
+03##mem_320x_dpi_4
+
+15##mem_3212_dpi_1#800
+1f##mem_3212_dpi_2#1200
+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_ui_led_struct_ptr:mem_mouse_led_type
+mem_ui_led_struct_num:01
+
+
+mem_mouse_le_uuid_sup:
+25 00 02 03 28 01 12 
+26 00 02 4d 2a 07 00 00 00 00 00 00 00 
+27 00 02 02 29 02 00 00
+28 00 02 08 29 02 11 01
+29 00 02 03 28 01 0e 
+2a 00 02 4d 2a 07 00 00 00 00 00 00 00
+2b 00 02 08 29 02 11 02
+
+
+mem_le_att_pnp_id_len:07
+mem_le_att_pnp_id:
+02		#verdor ID source
+35 12	#usb verdor ID
+22 aa 	#product ID
+01 00	#product version
+
+  
+#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_common_temp:00 00 00 00 00 00 00 00 00 00
+mem_24g_enter_hibernate:00 48 60
+
+mem_device_flag:
+02
+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_24g_sw_gpio:18
+
+mem_mouse_multi_led_gpio:1b
+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_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
+
+
+
+#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: YDN_1066_227D/program/24g.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/24g.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/app.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/app.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/app_antiLost.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/app_antiLost.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/app_car.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/app_car.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/app_light.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/app_light.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/app_lightC.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/app_lightC.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/app_module.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/app_module.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/app_mouse.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/app_mouse.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/program/app_mouse.prog	(working copy)
@@ -0,0 +1,2660 @@
+
+
+//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
+	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
+	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: YDN_1066_227D/program/app_remote_car.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/app_remote_car.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/app_shutter.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/app_shutter.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/app_usb.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/app_usb.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/bt.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/bt.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/hci_h4.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/hci_h4.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/hci_main.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/hci_main.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/hid.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/hid.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/kscan_peipherals.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/kscan_peipherals.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/l2cap.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/l2cap.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/le.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/le.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/le_l2cap_att.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/le_l2cap_att.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/le_l2cap_signalling.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/le_l2cap_signalling.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/le_l2cap_smp.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/le_l2cap_smp.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/le_ll.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/le_ll.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/lmp.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/lmp.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/patch.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/patch.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/program/patch.prog	(working copy)
@@ -0,0 +1,3886 @@
+//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
+	branch p_mouse_setting_config
+
+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_init_sunt
+	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
+	
+
+
+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
+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_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
+
+p_mouse_select_device_button_wakeup_check:
+	jam 0,mem_mouse_select_device_button_wakeup_flag
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_config_input
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_get_bit
+	nrtn true
+	call delay_10ms
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_get_bit
+	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
+	call g24_long_sleep_shorter_param_update
+	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 60500
+	branch lpm_dispatch_sleep
+
+g24_long_sleep_shorter_param_update:
+//	fetch 1,mem_config_function_enable
+//	rtnbit1 ENABLE_SENSOR_MOTION_PIN
+	setarg G24_LONG_SLEEP_STEP1
+	store 3,mem_24g_enter_hibernate
+	jam 20,mem_24g_long_sleep_param_update_timer
+	rtn
+	
+p_g24_transmit_by_interrupt:
+	call p_g24_timer_check
+	nrtn user
+	call p_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 p_g24_transmit_by_interrupt_exit,zero
+	branch p_g24_transmit_process
+p_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
+p_g24_interval_min:
+	jam 0,mem_24g_pac_index
+	fetch 1,mem_24g_interval_min
+p_g24_current_interval_store:
+	store 1,mem_24g_interval
+	rtn
+p_g24_interval_max:
+	fetch 1,mem_24g_interval_max
+	branch p_g24_current_interval_store
+p_g24_interval_calibrate:
+	fetch 1,mem_24g_pac_index
+	increase 1,pdata
+	store 1,mem_24g_pac_index
+	beq 4,p_g24_interval_max
+	beq 5,p_g24_interval_min
+	rtn
+
+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
+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
+	branch p_mouse_setgpio_lpm
+
+p_g24_send_abort_packet:
+	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_set_device_addr:
+	fetch 4,mem_lap
+	store 4,mem_24g_device_addr
+	rtn
+
+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_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_transmit_hop_pac_fail:
+//	call power_ctrl_pac_succ_decrs
+//	fetch 1,mem_24g_rf_work_stage
+//	beq 1,p_g24_transmit_hop_pac_fail_wo_hop
+//	beq 2,p_g24_transmit_hop_pac_fail_hop_stage2
+//	rtn
+//p_g24_transmit_hop_pac_fail_wo_hop:
+//	jam 2,mem_24g_sync_cnt
+//p_g24_transmit_hop_pac_fail_stage1:	
+//	jam 0,mem_24g_hop_pac_retry
+//	jam 0,mem_24g_rf_last_sta
+//	branch p_g24_transmit_rf_ctrl_clear
+
+//p_g24_transmit_hop_pac_fail_hop_stage2:
+//	jam 0,mem_24g_rf_hop_ch
+//	branch p_g24_transmit_hop_pac_fail_stage1
+
+	
+//p_g24_transmit_pac_fail_hop_stage3:
+//	fetch 2,mem_24g_txfail_cnt
+//	increase 1,pdata
+//	store 2,mem_24g_txfail_cnt
+//	bbit1 10,p_g24_tx_attempt_fail	//1024ms * 8
+//	fetch 1,mem_24g_rf_hop_ch
+//	beq 1,p_g24_rf_hop_fastly
+//	jam 1,mem_24g_rf_hop_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
+	branch p_g24_transmit_packet
+
+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
+	branch p_g24_ch
+
+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:
+	call p_mouse_data_xy_release
+	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
+	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_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 2,mem_24g_txfail_cnt
+	store 1,mem_24g_get_ack_fail
+	store 1,mem_24g_hop_pac_retry
+	jam ENSURE_OFF_24G,mem_24g_ensure
+	rtn
+
+p_g24_txbuf_clear:
+	arg 4,loopcnt
+	arg mem_24g_txbuf,contw
+	branch memset0
+
+p_g24_hop_enable_packet:
+	fetch 1,mem_24g_data_type
+	bbit1 bit_hop,p_g24_hop_ch_disable
+	rtn	
+
+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,g24_stop_24g_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
+	branch g24_stop_24g_mode
+
+
+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_g24_start_24g_mode:
+	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_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
+	call p_g24_ch_map_size
+	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_sync_timeout,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
+	call p_rssi_signal
+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
+	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_setgpio_lpm:
+	call p_mouse_set_sdio_high
+	call p_clear_wake
+p_mouse_setgpio_hibernate:	
+	call mouse_lpm_before_common
+	call p_flash_ncs_disable
+	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	
+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_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:
+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_device_wake_from_lpm,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
+	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:
+	call p_mouse_tx_power_init
+	fetch 1,mem_device_flag
+	fetcht 1,mem_24g_device_number
+	isub temp,null
+	branch p_mouse_connect_24g_mode,zero
+	beq 0xff,p_mouse_connect_24g_mode
+	call p_mouse_mode_bt_device1_multi_led_on
+	fetch 1,mem_xrecord_mode
+ifdef CLASSIC_BT
+	beq REC_3_MODE,p_mouse3_0_check_reconn_target
+endif
+ifdef BLE
+	beq REC_4_MODE,p_mouse4_0_check_reconn_target
+endif	
+	branch p_mouse_null_enter_hibernate_enable	//enter hibernate if it is in its factory state
+
+p_device_wake_from_lpm:
+	branch p_mouse_spi_init
+
+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_connect_24g_mode:
+	jam MODE_24G_DEVICE,mem_device_flag
+	call p_mouse_mode_24g_device_multi_led_on
+	branch p_mouse_start_24g_mode
+
+ifdef CLASSIC_BT
+p_mouse3_0_check_reconn_target:
+	fetch 6,mem_hci_plap
+	branch app_bt_start_discovery_short,blank
+	branch mouse3_0_check_reconn_target+3
+endif	
+
+ifdef BLE
+p_mouse4_0_check_reconn_target:
+	jam 1,mem_le_send_security_request_flag
+	jam 1,mem_mouse_le_reconnect_flag
+	fetch 2,mem_mouse_direct_timeout
+ifdef BLE_FAST_CONN_ENABLE
+	fetcht 1,mem_mouse_fast_conn_flag
+	sub temp,0xff,null
+	nbranch p_mouse4_0_check_reconn_target_next,zero
+	setarg 0x0258								//ble fast conn time 1min
+endif
+p_mouse4_0_check_reconn_target_next:
+	store 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
+
+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
+	arg 1,temp
+	arg mem_mouse_fast_conn_flag,rega
+	arg MOUSE_FAST_CONN_FLAG_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
+	branch p_mouse_spi_init
+	
+p_mouse_fast_conn_init:
+	jam 0x34,mem_xrecord_mode
+	setarg 0
+	invert pdata,pdata
+	store 6,mem_le_lap
+	rtn	
+endif
+	
+endif
+
+ifdef G24
+p_mouse_24g_pairing_button:
+	jam 0,mem_mouse_long_button_select_device
+	jam ZCODE_61,mem_zcode_temp_param0
+	branch p_zcode_entrance
+endif
+
+//p_mouse_devce_led_off:
+//	call mouse_device1_led_on
+//	call mouse_device2_led_on
+//	fetch 1,mem_config_low_voltage_alarm_gpio
+//	store 1,mem_mouse_struct_led_gpio
+//	branch mouse_led_on
+
+p_mouse_spi_init:
+	jam 0x76,mem_spi_init_clk
+	branch mouse_spi_init
+	
+p_mouse_init_sunt:
+	call p_mouse_spi_init
+	call mouse_spi_sdio_gpio_pollup
+//	fetch 1,mem_config_sensor_type
+//	beq P3610,mouse_init_3610sensor
+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_sensor_reset:
+	jam 1,mem_mouse_init_sensor_reset_flag
+	call spi_ncs_enable
+	call p_mouse_init_sunt
+	branch spi_ncs_disable
+
+p_mouse_init_p32xx_id2_judge:
+	call p_mouse_sensor_poweron
+	fetch 1,mem_sensor_id2
+//	beq MA8650_ID2,p_mouse_ma8650_init_param
+//	beq P8009_ID2,p_mouse_8009_init_param
+	branch mouse_init_p32xx_id2_judge+1
+
+//p_mouse_ma8650_init_param:
+//	setarg 0x8006	// reset to factory settings
+//	call twspi_write
+//	call delay_10ms
+//	jam MA8650,mem_config_sensor_type
+//	call mouse_sensor_disable_wp
+//	setarg 0x220a
+//	call twspi_write
+//	branch mouse_sensor_enable_wp
+
+//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
+//	call mouse_sensor_disable_wp
+//	setarg 0x0206
+//	call twspi_write
+//	setarg 0x6909
+//	call twspi_write
+//	setarg 0x280d
+//	call twspi_write
+//	setarg 0x9f0e
+//	call twspi_write
+//	setarg 0xba0f
+//	call twspi_write
+//	branch mouse_sensor_enable_wp
+
+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_sensor_poweron:
+	call p_mouse_spi_init
+	setarg 0x8006	// reset to factory settings
+	call twspi_write
+	nop 12000
+	branch p_mouse_dpi_config
+//	fetch 1,mem_sensor_id2
+//	beq P8009_ID2,p_mouse_8009_init_param
+//	rtn
+
+p_mouse_dpi_config:
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	bbit0 MOUSE_ENABLE_EEPROM,mouse_dpi_config
+	fetch 1,mem_mouse_dpi
+	beq 0xff,p_mouse_dpi_config_default
+	branch 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
+
+p_mouse_sensor_powerdown:
+	call p_mouse_spi_init
+	setarg 0x06
+	call twspi_read
+	or pdata,0x08,pdata
+	lshift8 pdata,pdata
+	add pdata,0x06,pdata
+	branch twspi_write	//make sdio high
+
+p_mouse_setting_config:
+	jam ZCODE_80,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+//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
+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:
+	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
+	branch p_mouse_spi_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
+	branch p_wait_flash_done
+
+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_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_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_fast_conn_flag
+	call p_mouse_load_random_addr_increase_count
+//	call p_mouse_check_select_device_by_switch
+	call mouse_select_reconn_device
+	fetch 4,mem_mouse_24g_addr
+	store 4,mem_24g_addr
+	rtn
+
+p_flash_deep_power_down:
+	jam FLASH_COMMAND_DEEP_POWER_DOWN,mem_temp
+p_spid_write_flash_cmd:
+	call p_spid_init_flash
+	nop 100
+	call spid_unlock_flash
+	arg mem_write_flash_head_temp,rega
+	fetcht 1,mem_temp
+	call spid_write_flash_common
+	nop 100
+	rtn
+
+p_flash_release_deep_power_down:
+	jam FLASH_COMMAND_RELEASE_DEEP_POWER_DOWN,mem_temp
+	branch p_spid_write_flash_cmd
+	
+p_mouse_start_24g_mode:
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	rtnbit0 MOUSE_ENABLE_24G
+	call p_g24_factory_check
+//	branch p_g24_auto_pair_start,user
+	branch p_g24_start_24g_mode
+
+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
+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:
+//	fetch 1,mem_config_function_enable
+//	rtnbit1 ENABLE_SENSOR_MOTION_PIN
+	jam 0,mem_lpm_mult
+	jam 30,mem_mouse_le_current_mult_timer
+	rtn	
+
+p_mouse_data_xy_release:
+//	fetch 1,mem_config_function_enable
+//	rtnbit1 ENABLE_SENSOR_MOTION_PIN
+	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_sensor_poweron
+
+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
+
+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
+	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_clear_sensor_data:
+	jam 1,mem_mouse_clear_sensor_data_flag
+	call le_set_config_more_data
+	branch p_mouse_init_sensor_reset
+endif
+
+//p_mouse_clear_sensor_data:
+//	call le_set_config_more_data
+//	jam 1,mem_mouse_clear_sensor_data_flag
+//	branch p_mouse_sensor_poweron
+
+p_mouse_idle:
+	call ui_check_paring_button
+	call p_mouse_dpi_check
+	branch mouse_wheel_check
+
+p_mouse_dpi_check:
+	fetcht 1,mem_24g_sw_gpio
+	call gpio_config_output
+	fetcht 1,mem_dpi_button_gpio
+	call p_gpio_set_input_pd
+	fetcht 1,mem_dpi_button_gpio
+	call gpio_get_bit
+	branch p_mouse_dpi_up,true
+	call p_gpio_set_input_pu
+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
+p_mouse_dpi_down_next:
+	fetch 1,mem_mouse_dpi
+	increase 1,pdata
+	and pdata,0x03,pdata
+	store 1,mem_mouse_dpi
+	mul32 pdata,2,pdata
+	increase 2,pdata
+	store 2,mem_mouse_multi_led_blink_count
+	call p_mouse_dpi_multi_led_blink
+	call mouse_seting_dpi
+	branch p_mouse_store_flash_device_info
+p_mouse_dpi_up:
+	call p_gpio_set_input_pu
+	branch mouse_dpi_up
+
+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_VIRTUAL_CABLE_UNPLUG,p_mouse_irtual_cable_unplug
+	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
+	jam ZCODE_B0,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+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:
+	call mouse_irtual_cable_unplug
+	branch app_bb_hibernate
+
+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
+	call p_mouse_discovey_led_blink_off
+	jam ZCODE_92,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_24g_attempt_fail:
+	call p_mouse_sensor_powerdown_check	//sensor power down
+	jam ZCODE_A0,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+p_mouse_24g_attempt_success:
+	jam 1,mem_mouse_24g_attempt_success_flag
+	call p_mouse_null_enter_hibernate_disable
+	call p_mouse_init_sensor_reset
+	call p_mouse_discovey_led_blink_off
+	call mouse_no_data_timer_init
+p_mouse_store_24g_device_2flash:
+	call mouse_cheak_select_24gdevice
+	branch p_mouse_store_flash_device_info
+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
+	branch p_mouse_sensor_powerdown
+
+
+p_mouse_bb_event_timer:
+ifdef ADC_ENABLE
+	call p_mouse_adc_read
+//	call p_mouse_low_voltage_led_timer
+	call p_mouse_low_voltage_led_timer
+	call p_low_power_nodata_off_led_time_check
+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
+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:
+	fetcht 1,mem_config_select_device_button_gpio
+	call gpio_get_bit
+	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
+
+	call mouse_select_device_enable
+	branch mouse_set_reconnection
+
+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:
+	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_STEP2
+	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:
+//	call p_mouse_check_key_gpio
+//	beq MOUSE_LMR_BUTTON,p_mouse_24g_pairing_button_down
+p_mouse_bt_discovery_by_button:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_mouse_24g_pairing_button_down_first
+	
+	fetcht 1,mem_config_bt_button_gpio
+	call gpio_get_bit
+	branch p_mouse_bt_discovery_commbination_key_down,true
+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:
+	jam 40,mem_mouse_null_enter_hibernate_timer
+	call p_mouse_bt_discovery_timer
+	branch mouse_bt_discovery_commbination_key_down+1
+	
+p_mouse_24g_pairing_button_down:
+	jam 40,mem_mouse_null_enter_hibernate_timer
+	call p_mouse_24g_pairing_timer
+	branch p_mouse_24g_pairing_button_down2+1
+	
+p_mouse_24g_pairing_button_down_first:
+	fetcht 1,mem_config_bt_button_gpio
+	call gpio_get_bit
+	branch p_mouse_24g_pairing_button_down,true
+	branch mouse_bt_discovery_commbination_key_down+1 
+p_mouse_24g_pairing_timer:	
+	arg mem_combination_ui_button_count,regc
+//	arg p_mouse_24g_pairing_button,regb
+	arg p_mouse_24g_pairing_button_down2,regb
+	branch timer_single_step
+p_mouse_24g_pairing_button_down2:	
+	call p_g24_auto_pair_start
+	branch p_mouse_discovery_multi_led_blink
+
+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
+	fetch 1,mem_mouse_null_enter_hibernate_timer
+	branch p_mouse_null_enter_hibernate,blank
+	increase -1,pdata
+	store 1,mem_mouse_null_enter_hibernate_timer
+	rtn
+p_mouse_null_enter_hibernate:
+	jam 0,mem_mouse_null_enter_hibernate_flag
+	branch app_enter_hibernate
+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_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_null_enter_hibernate_check:
+//	fetch 2,mem_ui_state_map
+//	rtnbit1 UI_STATE_BLE_CONNECTED
+//	rtnbit1 UI_STATE_BT_CONNECTED
+//	rtnmark1 mark_24g
+//	branch p_mouse_null_enter_hibernate_enable
+
+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:
+	fetch 1,mem_mouse_multi_led_blink_timer
+	increase -1,pdata
+	store 1,mem_mouse_multi_led_blink_timer
+	nrtn blank
+	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_inactive
+p_mouse_multi_down_led_on:
+	fetcht 1,mem_mouse_multi_led_gpio
+	set1 7,temp 
+	call gpio_config_output 
+	fetcht 1,mem_mouse_multi_led_gpio 
+	branch gpio_out_active
+	
+
+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 3,mem_mouse_multi_led_blink_timer_init	//300ms
+//	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 5,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_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
+	branch p_mouse_multi_led_blink_off
+		
+p_mouse_dpi_multi_led_blink:
+	jam 3,mem_mouse_multi_led_blink_timer_init	//300ms
+	jam 1,mem_mouse_multi_led_blink_count_limited
+	branch p_mouse_multi_led_blink_enable
+	
+
+/*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
+	fetch 1,mem_adc_read_timer
+	increase 1,pdata
+	store 1,mem_adc_read_timer
+	sub pdata,10,null              //1s read adc
+	rtn positive
+	call adc_init_data
+	jam 0,mem_adc_read_timer
+	call adc_set_mode
+	call vdd_calculate_by_mode
+	add pdata,0x1c,pdata
+
+	arg 0x0122,temp			//compare to 2.9V
+	isub temp,null
+	ncall p_mouse_vlotage_sub,positive
+	
+	store 2,mem_mouse_vdd_now_vol
+	arg mem_mouse_vdd_calculate_set,rega
+	call p_adc_bat_percent_lowpower_out
+	fetch 1,mem_adc_power_flag
+//	bbit1 1,app_enter_hibernate
+	bbit0 0,p_mouse_adc_no_low_voltage
+	jam 1,mem_mouse_adc_last_low_voltage_flag
+	branch mouse_adc_low_voltage
+
+p_mouse_adc_no_low_voltage:
+	call mouse_adc_no_low_voltage
+	fetch 1,mem_mouse_adc_last_low_voltage_flag
+	rtn blank
+	jam 0,mem_mouse_adc_last_low_voltage_flag
+	branch p_mouse_multi_led_off
+
+p_mouse_vlotage_sub:
+	arg 0x0b,temp
+	isub temp,pdata
+	rtn
+
+//p_adc_set_mode:
+//	fetch 1,mem_adc_config_flag
+//	beq ADC_CONFIG_GPIO,p_adc_check_gpio
+//	branch adc_set_mode+1
+//p_adc_check_gpio:
+//	hfetch 1,core_gpio_pu0	//gpio5 pull up disable
+//	set0 5,pdata
+//	hstore 1,core_gpio_pu0
+//	call adc_check_gpio
+//	hfetch 1,core_gpio_pu0	//gpio5 pull up enable
+//	set1 5,pdata
+//	hstore 1,core_gpio_pu0
+//	rtn
+
+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 adc_set_no_power_flag,positive
+	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
+*/
+ifdef ADC_ENABLE
+p_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
+	
+	call adc_init_data
+	
+	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 p_adc_bat_percent_lowpower_out
+	fetch 1,mem_adc_power_flag
+	bbit1 1,app_enter_hibernate
+	bbit0 0,p_mouse_adc_no_low_voltage
+	jam 1,mem_mouse_adc_last_low_voltage_flag
+	branch mouse_adc_low_voltage
+
+p_mouse_adc_no_low_voltage:
+	call mouse_adc_no_low_voltage
+	fetch 1,mem_mouse_adc_last_low_voltage_flag
+	rtn blank
+	jam 0,mem_mouse_adc_last_low_voltage_flag
+p_mouse_adc_low_volatage_led_off:
+	fetch 1,mem_config_low_voltage_alarm_gpio
+	store 1,mem_mouse_struct_led_gpio
+//	branch mouse_led_on
+	branch p_mouse_multi_led_blink_off
+
+//p_adc_set_mode:
+//	fetch 1,mem_adc_config_flag
+//	beq ADC_CONFIG_GPIO,p_adc_check_gpio
+//	branch adc_set_mode+1
+//p_adc_check_gpio:
+//	hfetch 1,core_gpio_pu0	//gpio5 pull up disable
+//	set0 5,pdata
+//	hstore 1,core_gpio_pu0
+//	call adc_check_gpio
+//	hfetch 1,core_gpio_pu0	//gpio5 pull up enable
+//	set1 5,pdata
+//	hstore 1,core_gpio_pu0
+//	rtn
+
+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 adc_set_no_power_flag,positive
+	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 1,mem_low_power_led_blink_flag
+	nrtn blank	//15s no action
+	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 1,mem_config_low_voltage_alarm_gpio
+	store 1,mem_mouse_struct_led_gpio
+
+	setarg G24_LONG_SLEEP_STEP2
+	store 3,mem_24g_enter_hibernate
+	
+	fetch 1,mem_adc_low_volatage_led_timer_count
+	pincrease 1
+	store 1,mem_adc_low_volatage_led_timer_count
+//	beq 5,mouse_low_voltage_led_on
+	beq 5,p_mouse_multi_led_blink_off
+	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 mouse_low_voltage_led_off
+	branch p_mouse_multi_led_on
+
+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 P8009,p_mouse_seting_8009_dpi
+	beq KA8,p_mouse_seting_ka8_dpi
+	beq P3065_XY,p_mouse_seting_3065XY_dpi
+p_mouse_seting_3205_dpi:
+	fetch 1,mem_mouse_dpi
+	call p_mouse_3065xy_dpi_recount,blank
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL2,p_mouse_3205_set_cpi1			//800
+	beq MOUSE_DPI_LEVEL4,mouse_set_cpi3				//1600
+	branch mouse_set_cpi2								//1200
+p_mouse_3205_set_cpi1:
+	fetch 1,mem_320x_dpi_1
+	increase -1,pdata
+	branch mouse_p3205_dpi
+
+p_mouse_seting_3065XY_dpi:
+	fetch 1,mem_mouse_dpi
+	call p_mouse_3065xy_dpi_recount,blank
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL2,p_mouse_8009_set_cpi1			//800
+	beq MOUSE_DPI_LEVEL4,mouse_set_cpi3				//1600
+	branch mouse_set_cpi2								//1300
+p_mouse_3065xy_dpi_recount:
+	jam MOUSE_DPI_LEVEL2,mem_mouse_dpi
+	rtn
+
+//p_mouse_seting_8009_dpi::
+//	fetch 1,mem_mouse_dpi
+//	call p_mouse_3065xy_dpi_recount,blank
+//	fetch 1,mem_mouse_dpi
+//	beq MOUSE_DPI_LEVEL2,p_mouse_8009_set_cpi1			//800
+//	beq MOUSE_DPI_LEVEL4,mouse_set_cpi2				//1600
+//	branch mouse_set_cpi1								//1200
+p_mouse_8009_set_cpi1:	
+	jam 0,mem_mouse_cpi_count
+	branch mouse_p3205_dpi+3
+
+p_mouse_seting_ka8_dpi:
+//	fetch 1,mem_mouse_dpi
+//	call p_mouse_3065xy_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
+
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL2,mouse_set_cpi2			//800
+	beq MOUSE_DPI_LEVEL1,mouse_set_cpi1			//1200
+	beq MOUSE_DPI_LEVEL4,p_mouse_ka8_set_cpi3		//1600
+	branch mouse_set_cpi4	
+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:
+	arg 0,rega
+	call p_mouse_check_lkey_gpio
+//	call p_mouse_check_rkey_gpio
+//	call p_mouse_check_mkey_gpio
+	call p_mouse_check_skey_gpio
+	branch mouse_check_key_gpio_output
+p_mouse_check_skey_gpio:
+//	fetch 1,mem_bk_button_gpio
+//	rtneq GPIO_DISABLE
+	call p_mouse_check_bk_key_gpio
+	branch p_mouse_check_fw_key_gpio
+	
+p_mouse_check_lkey_gpio:
+	fetcht 1,mem_lbutton_gpio
+	call p_gpio_set_input_pu
+	fetcht 1,mem_lbutton_gpio
+	call gpio_get_bit
+	setflag true,0,rega			//true = 1,input low level
+//	rtn
+p_mouse_check_rkey_gpio:
+	fetcht 1,mem_rbutton_gpio
+	call p_gpio_set_input_pu
+	fetcht 1,mem_rbutton_gpio
+	call gpio_get_bit
+	setflag true,1,rega			//true = 1,input low level
+//	rtn
+p_mouse_check_mkey_gpio:
+	fetcht 1,mem_mbutton_gpio
+	call p_gpio_set_input_pu
+	fetcht 1,mem_mbutton_gpio
+	call gpio_get_bit
+	setflag true,2,rega			//true = 1,input low level
+	rtn
+p_mouse_check_bk_key_gpio:
+	fetcht 1,mem_bk_button_gpio
+	call p_gpio_set_input_pd
+	fetcht 1,mem_bk_button_gpio
+	call gpio_get_bit
+	nsetflag true,3,rega
+	branch p_gpio_set_input_pu
+p_mouse_check_fw_key_gpio:
+	fetcht 1,mem_fw_button_gpio
+	call p_gpio_set_input_pd
+	fetcht 1,mem_fw_button_gpio
+	call gpio_get_bit
+	nsetflag true,4,rega
+	branch p_gpio_set_input_pu
+
+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
+	call gpio_set_bit
+	set0 gpio_active_bit,temp
+	arg core_gpio_oe0,contw
+	branch gpio_set_bit
+
+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_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 P8009,p_mouse_p8009_sensor_motion
+p_mouse_p32xx_sensor_motion:	
+	call mouse_clear_sensor_data
+	disable user
+//	fetch 1,mem_config_function_enable
+//	bbit0 ENABLE_SENSOR_MOTION_PIN,mouse_p32xx_sensor_motion_2
+//	fetcht 1,mem_sensor_data_gpio
+//	call gpio_get_bit
+//	nrtn true
+	branch mouse_p32xx_sensor_motion_2
+
+//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_mouse_load_fast_conn_flag:
+	call p_flash_release_deep_power_down
+	arg 1,temp
+	arg mem_mouse_fast_conn_flag,rega
+	arg MOUSE_FAST_CONN_FLAG_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
+
+
+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_prepare_tx_wak:
+	call p_le_check_tx_retransmit_setmd
+	branch p_le_power_ctrl_pac_succ_decrs
+
+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_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
+	branch power_ctrl_pac_succ_decrs
+
+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_CHANNEL_MAP_REQ,p_le_parse_channel_map_req
+	branch le_parse_ll+1
+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
+	ifetch 3,contr
+	store 3,mem_le_att_opcode
+	beq ATTOP_READ_BY_GROUP_TYPE_REQUEST,p_le_parse_att_read_by_group_type_request
+	rshift8 pdata,temp
+	sub temp,0x24,null
+	branch p_le_parse_att1,positive
+	arg mem_mouse_le_uuid_sup,temp
+	storet 2,mem_ui_le_uuid_table
+	call le_parse_att+2
+	setarg 0x8e7a
+	store 2,mem_ui_le_uuid_table
+	rtn
+
+p_le_parse_att_read_by_group_type_request:
+	call le_parse_att_read_by_group_type_request
+	call le_fifo_get_last_tx_ptr
+	increase 7,contr
+	ifetch 1,contr
+	rtnne ATTOP_READ_BY_GROUP_TYPE_RESPONSE
+	increase 5,contr
+	ifetch 2,contr
+	arg UUID_SERVICE_HIDS,temp
+	isub temp,null
+	nrtn zero
+	increase -4,contr
+	setarg 0x2b
+	istore 2,contr
+	rtn
+
+p_le_parse_att1:
+	beq ATTOP_READ_REQUEST,p_le_parse_att_read_request
+	branch le_parse_att+2
+p_le_parse_att_read_request:
+	fetcht 2,mem_le_att_handle
+	fetch 1,mem_le_configuration
+	bbit1 BIT_BLE_READ_AUTH,p_le_send_att_read_response_check_auth
+p_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_PNP_ID,temp
+//	isub temp,null
+//	branch p_le_send_att_pnp_id,zero
+	
+	fetch 2,mem_le_att_handle
+	beq 0x13,le_send_att_error_response_notfound
+
+	fetcht 2,mem_le_att_handle
+	branch le_send_att_read_response
+
+//p_le_send_att_pnp_id:
+//	call store_contr
+//	fetch 1,mem_le_att_pnp_id_len
+//	add pdata,1,rega
+//	call le_fifo_malloc_tx_l2cap_gatt
+//	setarg ATTOP_READ_RESPONSE
+//	istore 1,contw
+//	fetch 1,mem_le_att_pnp_id_len
+//	copy pdata,loopcnt
+//	arg mem_le_att_pnp_id,contr
+//	branch memcpy
+
+p_le_send_att_read_response_check_auth:
+	fetch 2,mem_le_pairing_handle
+	isub temp,null
+	nbranch p_le_send_att_read_response,zero
+	call le_check_encrypt_state
+	nbranch p_le_send_att_read_response,user
+	jam ATT_ERR_INSUFFICIENT_AUTHENTICATION,mem_le_err_code
+	branch le_send_att_error_response
+	
+
+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_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:
+	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
+
+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:
+	jam ZCODE_20,mem_zcode_temp_param0
+	branch p_zcode_entrance
+
+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_check_51cmd_ble_update_connect_param:
+	call le_fifo_check_full
+	nrtn blank
+	branch le_l2cap_tx_update_req
+
+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
+
+
+
+
+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_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
+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 32
+	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:
+	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_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_rx_high_sens:
+	jam 0xfb,0x894c 
+	jam 0xef,0x894d
+	jam 0xec,0x894e 
+	jam 0x5e,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
+
+
+// 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
+	branch p_zcode_read_loop,blank
+	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_init:
+	arg 5,loopcnt
+	arg mem_mouse_asm_flag,contw
+	branch clear_mem
+
+p_drawing_optima:
+	fetch 4,mem_mouse_x
+	rtn blank
+	call p_data_abs_check
+	setarg 0x06	//asm_flag enable condition
+	call p_data_greater_than_check
+	setarg 0x03	//asm_flag disable condition
+	call p_data_less_than_check
+	fetch 1,mem_mouse_asm_flag
+	beq 1,p_drawing_optima_modify
+	branch p_drawing_optima_init
+
+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:
+	sub pdata,0,pdata
+	store 1,mem_rega
+	fetch 1,mem_rega
+	rshift pdata,pdata
+	store 1,mem_rega
+	fetch 1,mem_rega
+	sub pdata,0,pdata
+	rtn
+
+//rega mouse_x, regb mouse_y, pdata refer
+p_data_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
+	store 2,mem_data_current
+	call p_data_abs
+	copy pdata,rega
+	fetch 2,mem_mouse_y
+	store 2,mem_data_current
+	call p_data_abs
+	copy pdata,regb
+	rtn
+
+/***********
+input: data_current
+output:pdata,abs
+************/
+p_data_abs:
+	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: YDN_1066_227D/program/peripherals.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/peripherals.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/program/peripherals.prog	(working copy)
@@ -0,0 +1,2440 @@
+
+/* ===================== 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
+	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: YDN_1066_227D/program/rfcomm.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/rfcomm.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/scheduler.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/scheduler.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/sdp.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/sdp.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/security.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/security.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/sim.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/sim.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/simple_pairing.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/simple_pairing.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/ui.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/ui.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/utility.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/utility.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/program/z.prog
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/program/z.prog	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/program/z.prog	(working copy)
@@ -0,0 +1,874 @@
+
+org 0x10001
+z_entrance0:
+	beq ZCODE_00,z_page_wait_fhs_reply_ok
+	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
+	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
+	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
+
+org 0x30001
+
+z_entrance2:
+	beq ZCODE_20,z_send_lmp
+	rtn
+
+z_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,z_send_lmp_escape
+	beq LMP_ACCEPTED,z_send_lmp_accepted
+	beq LMP_SETUP_COMPLETE,z_send_lmp_setup_complete
+	beq LMP_SNIFF_REQ, z_send_lmp_sniff_req
+	branch send_lmp0
+z_send_lmp_escape:
+	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_setup_complete:
+	jam 1,mem_bt_send_lmp_setup_complete
+	branch send_lmp_setup_complete
+
+z_send_lmp_sniff_req:
+	jam 4,mem_mouse_bt_send_first_package_timer
+	branch send_lmp_sniff_req
+	
+
+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
+	jam 0,mem_le_start_encrypt_timer
+	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
+	jam 0x5a,mem_mouse_fast_conn_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
+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_g24_start_24g_mode
+	beq ZCODE_61,z_mouse_24g_pairing_button
+	rtn
+	
+z_g24_start_24g_mode:
+	set0 mark_24g,mark
+	call p_g24_syncword_crc8
+	call p_g24_ch
+	fetch 1,mem_24g_pairing_sm
+	rtnne STATE_24G_PAIRING_SUCCESS
+	call z_g24_tx_attemp_data_prep
+z_g24_tx_attemp_dongle:
+	setarg 0
+	store 2,mem_24g_check_dongle_times
+z_g24_tx_attemp_dongle_loop:
+//	call lpo_calibration
+	nop 2000
+	fetch 1,mem_24g_check_dongle_times
+	beq 0xff,g24_stop_24g_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
+	call g24_app_tx_attempt_success
+	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_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_pairing_button:
+	fetch 1,mem_device_flag
+	rtneq MODE_BT_DEVICE1
+//	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+//	rtnbit0 MOUSE_ENABLE_24G
+//	rtnbit1 MOSUE_24G_PAIRING_FLAG
+	rtnmark1 mark_24g
+	//call p_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
+	store 2,mem_24g_check_dongle_times
+	call mouse_stop_discovery
+	branch z6_g24_start_pairing_sm1
+
+z6_g24_start_pairing_sm1:
+	set1 mark_24g,mark
+	call z6_g24_pair_init
+z6_g24_set_pairing_sm_1:
+	jam STATE_24G_PAIRING_1,mem_24g_pairing_sm
+	rtn
+
+z6_g24_pair_init:
+	jam TX_POWER_PAIR,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	
+
+org 0x80001
+
+z_entrance7:
+	beq ZCODE_70,z_g24_auto_pair_start
+	rtn
+
+z_g24_auto_pair_start:
+	set0 mark_24g,mark
+	call z_g24_auto_pair_all_powerful
+	call z7_g24_tx_attemp_data_prep
+z_g24_auto_pair_restart:
+	jam 0,mem_24g_check_dongle_times
+	call p_mouse_discovery_multi_led_blink
+z_g24_auto_pair_start_loop:
+//	call lpo_calibration
+	nop 2000
+	fetch 2,mem_24g_check_dongle_times
+	beq 0x02ff,g24_stop_24g_mode
+	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
+	call g24_app_tx_attempt_success
+	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_check_dongle_times
+	increase 1,pdata
+	store 1,mem_24g_check_dongle_times
+	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_auto_pair_all_powerful:
+	jam TX_POWER_PAIR,mem_tx_power
+	setarg 0x0f0f
+	store 2,mem_24g_addr
+	istore 2,contw
+z_g24_ch_syncword_crc8_init:	
+	call p_g24_syncword_crc8
+	branch p_g24_ch
+
+z_g24_auto_pair_device_attemp:
+	call z_g24_auto_pair_all_powerful
+	branch z_g24_auto_pair_start_loop
+
+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_1,mem_24g_pairing_sm
+	rtn
+
+z_g24_pair_init:
+	jam TX_POWER_PAIR,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
+
+
+
+
+
+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
+
+
+ifdef BLE	
+z_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
+z_le_otp_adc_empty:
+	store 2,mem_random_addr_increase_count
+	rtn
+endif
+
+
+z_mouse_setting_config:
+ifdef G24
+	call p_g24_set_device_addr
+endif
+//	//disable usb function
+//	hfetch 1,core_usb_config
+//	set0 4,pdata
+//	hstore 1,core_usb_config
+	call mouse_gpio_init
+
+//	call p_mouse_devce_led_off
+//	fetch 1,mem_config_low_voltage_alarm_gpio
+//	store 1,mem_mouse_struct_led_gpio
+//	call mouse_led_on
+	fetcht 1,mem_24g_sw_gpio
+	call gpio_config_output
+	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 0
+	store 2,mem_lpm_interval
+	call load_adc_init
+	call mouse_adc_init
+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
+ifdef BLE_FAST_CONN_ENABLE
+	arg 3,loopcnt
+	arg mem_device1_addr,contr
+	call p_pdata_0xff_check
+	nbranch p_mouse_le_fast_conn_disable,user
+	fetch 1,mem_mouse_fast_conn_flag
+	beq 0xff,p_mouse_fast_conn_init
+endif	
+	rtn
+
+
+ifdef CLASSIC_BT
+z_mouse_bt_sdp_update:
+	call enable_authrom
+	arg 0x8c00,contr
+	arg mem_mouse_uuid_list,contw
+	arg 369,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 0x8d71,contr
+	arg 265,loopcnt
+	call memcpy
+	
+	jam 0,mem_mouse_uuid_list+23	//Service Record Handle: 0x 00 01 00 00
+	jam 0x6d,mem_mouse_uuid_list+15	//total length
+	setarg 0x401f
+	store 2,mem_mouse_uuid_list+357	//timeout
+	setarg 0x6d04
+	store 2,mem_mouse_uuid_list+462	//VID
+	setarg 0x16b0
+	store 2,mem_mouse_uuid_list+468	//PID
+
+	setarg mem_mouse_uuid_list				//bt sdp start address
+	store 2,mem_ui_uuid_table
+	rtn
+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_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_1:
+	jam STATE_24G_PAIRING_1_WAITING_ACK,mem_24g_pairing_sm
+	jam 0xaa,mem_24g_common_temp
+	call p_mouse_discovery_multi_led_blink
+	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:
+	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
+	
+	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_A0,z_mouse_24g_attempt_fail
+	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_24g_attempt_fail:
+	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_mouse_null_enter_hibernate_enable
+
+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
+	rtn 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
+
+
+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
+	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 mouse_before_hibernate_wheel_gpio_set
+	fetcht 1,mem_24g_sw_gpio
+	call gpio_out_active
+	call p_mouse_setgpio_hibernate
+	call p_flash_deep_power_down
+	hfetch 1,core_gpio_sel1
+	and pdata,0xf7,pdata
+	hstore 1,core_gpio_sel1  //disable flash spi		
+	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
+	rtn
+
+z_mouse_le_bb_event_connected:
+	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
+
+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
+	branch mouse_bb_disconnected
+
+
Index: YDN_1066_227D/sched/109x.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/109x.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/109x.dat	(working copy)
@@ -0,0 +1,35 @@
+
+mem_lpm_config:8f 1a 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
+ff
+mem_rf_init_ptr:mem_rf_init_data_new
+
+
+
Index: YDN_1066_227D/sched/AntiLost.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/AntiLost.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/DM_module.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/DM_module.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/car.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/car.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/fpga.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/fpga.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/gatt.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/gatt.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/hci.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/hci.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/hci_boot.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/hci_boot.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/le_prcp.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/le_prcp.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/le_transmit_uuid.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/le_transmit_uuid.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/light.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/light.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/mouse.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/mouse.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/mouse.dat	(working copy)
@@ -0,0 +1,942 @@
+mem_patch00:06
+mem_patch03:08
+mem_patch04:40
+mem_patch09:05
+mem_patch0a:02
+mem_patch0b:02
+mem_patch10:20
+mem_patch11:02
+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:00
+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:
+'Trust Bluetooth 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:22 00
+
+
+mem_discovery_timeout:08 07#3min
+mem_mouse_direct_timeout:50 00#8s
+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 #vinlpm 1 hvin 2 gpio
+mem_adc_channel:32 #gpio5
+mem_mouse_vdd_full_vol:29 01#4.2V
+12 01#mem_mouse_vdd_empty_vol:5a 00# 2.8V
+1e 01#mem_mouse_vdd_low_vol:64 00  #3.2v
+
+mem_config_sensor_type:00
+02 #mem_config_sensor_motion:02
+04#mem_lbutton_gpio:04
+07 #mem_rbutton_gpio:1b
+17 #mem_mbutton_gpio:17
+ff #mem_bk_button_gpio:ff
+ff #mem_fw_button_gpio:ff
+07 #mem_dpi_button_gpio:06
+03 #mem_whee_a_data_gpio:02
+02 #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
+06 #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
+b0 #mem_config_function_enable:04
+02 #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
+#b0
+
+mem_mouse_dpi_seting:
+00##mem_320x_dpi_1
+01##mem_320x_dpi_2
+02##mem_320x_dpi_3
+03##mem_320x_dpi_4
+
+15##mem_3212_dpi_1#800
+1f##mem_3212_dpi_2#1200
+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_ui_led_struct_ptr:mem_mouse_led_type
+mem_ui_led_struct_num:01
+
+
+mem_mouse_le_uuid_sup:
+25 00 02 03 28 01 12 
+26 00 02 4d 2a 07 00 00 00 00 00 00 00 
+27 00 02 02 29 02 00 00
+28 00 02 08 29 02 11 01
+29 00 02 03 28 01 0e 
+2a 00 02 4d 2a 07 00 00 00 00 00 00 00
+2b 00 02 08 29 02 11 02
+
+
+mem_le_att_pnp_id_len:07
+mem_le_att_pnp_id:
+02		#verdor ID source
+35 12	#usb verdor ID
+22 aa 	#product ID
+01 00	#product version
+
+  
+#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_common_temp:00 00 00 00 00 00 00 00 00 00
+mem_24g_enter_hibernate:00 48 60
+
+mem_device_flag:
+02
+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_24g_sw_gpio:18
+
+mem_mouse_multi_led_gpio:1b
+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_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
+
+
+
+#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: YDN_1066_227D/sched/remote_car.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/remote_car.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/rtrivr_uuid.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/rtrivr_uuid.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/shutter.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/shutter.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/sim.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/sim.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/spp.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/spp.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/ssp.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/ssp.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/test.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/test.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/sched/usb.dat
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/sched/usb.dat	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/util/crc16.exe
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: YDN_1066_227D/util/crc16.exe
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: YDN_1066_227D/util/crc16.pl
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/util/crc16.pl	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/util/eeprom2fulleeprom.exe
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream

Property changes on: YDN_1066_227D/util/eeprom2fulleeprom.exe
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Index: YDN_1066_227D/util/eeprom2fulleeprom.pl
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/util/eeprom2fulleeprom.pl	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/util/flash_dat2eeprom_dat.pl
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/util/flash_dat2eeprom_dat.pl	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/util/genotp.pl
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/util/genotp.pl	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/util/memalloc.pl
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/util/memalloc.pl	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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: YDN_1066_227D/util/mergepatch.pl
===================================================================
--- /branch/mouse_project/YDN_Project/YDN_1066_227D/util/mergepatch.pl	(nonexistent)
+++ /branch/mouse_project/YDN_Project/YDN_1066_227D/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");
+
+
